首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 平面设计 > 图形图像 >

关于彩色图像转为灰度图像的有关问题

2013-06-25 
关于彩色图像转为灰度图像的问题此为原图:此为原图在Photoshop中得到的灰度图片:第一幅和第三幅的差距很大

关于彩色图像转为灰度图像的问题

此为原图:
关于彩色图像转为灰度图像的有关问题
此为原图在Photoshop中得到的灰度图片:
关于彩色图像转为灰度图像的有关问题
第一幅和第三幅的差距很大。

我的问题是:我把imageGray的数据写入到txt文件中,查看数据,发现计算得到的数据和第三幅图片的像素数据相差不大,但是和第一幅的像素数据相差很大(第一幅图片明显偏暗)。为什么计算得到的数据与写入图片的数据不符?求解答。 图片 CImage
[解决办法]
试试OpenCV的cvtColot、threshold函数
[解决办法]
图像正确,说明像素间的明暗对比无误
图像偏黑,说明直方图整体偏左,也就是像素的值整体向0移动了
注意看下转换后的数据,重新归一化到0-255之间.
[解决办法]
转换公式错了 应该是temp=0.11*(image0[n+2])+0.59*(image0[n+1])+0.30*(image0[n])+0.5;
[解决办法]
亲,必须是系数问题啊,结果不可能一样的,RGB分量的权重不一样,产生的灰度图像自然也就明暗不同了,PS用的是最常见的,适合人眼的公式,nGray=0.299*R+0.587*G+0.114*B 
[解决办法]

引用:
我发现,原因应该是在这句上gray.SetPixel(i,j,temp);
temp的值是对的,写进去后就不对了。

你把temp类型改为unsigned char应该就OK了~

热点排行