我第一次学图象处理,正在做对一24位的BMP图象处理,现要求从BMP的RGB转为HSI,由H再继续下去。我先读取BMP图片,再做RGB转HSI。这里的H是不是为一均值,即由每一象素的RGB值求得H,再平均。我下面的一段取RGB再求H,是不是有问题(我感觉求出的q值有问题),请帮忙指教,谢谢!
。。
for(j=0;j<lHeight;j++)
{
for(i=0;i<3*lWidth;i++)
{double R=(unsigned char)lpDIBBits + lLineBytes *j + i+2;//lpDIBBits为象素数据区起始指针
double G=(unsigned char)lpDIBBits + lLineBytes * j+ i+1;
double B=(unsigned char)lpDIBBits + lLineBytes *j + i;
h=acos(0.5*(2*R-G-B)/sqrt((R-G)*(R-G)+(R-B)*(G-B)));q=(q+h)/2; }
}
解决方案 »
- windump如何抓取从无线网卡接受和发送的数据包?
- RPC编程,注册接口函数RpcServerRegisterIfEx中的第四个参数问题
- 这个函数写在这里不和没有写一个样吗?
- 在那些情况下需要重写windowproc
- SCPI编程的问题
- 鼠标问题???
- 急!ADO在WIN NT下,直接执行文件一切正常,但采用桌面快捷方式打开却无法连接数据库!!!
- 如何在多文档视图中获取子框架的个数?
- 有没有人试过在Group Box里建工具栏`我应该再写点什么?
- web编程的问题!
- 有没有办法使键盘钩子钩住的消息不起作用?就是将消息截获!
- 在线等,请问可以调用wininet.h里面什么函数实现POP3协议?
先求总和再除
而不是(q+h)/2