求助:有一彩色图象,可读到其RGB颜色值,现我需要将其转换成单色的黑白图象,请问如何根据RGB值得到黑白的象素值呢? 转换成黑白图像很简单,你根据自己的要求判断每个彩色像素点的rgb值在哪些范围内的变成黑点,其他变成白点,重新拼成一个单色位图就行了。细致一点,你可以先将彩色位图先转换成单色灰度图像,再用单色纹样点阵代替不同灰度的像素点,这样就比较形象一些。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果要做简单的图像识别,直接设定并判断像素的rgb值的范围最简单。用单色点阵抖动来代替灰度像素可以得到较逼真的效果。当然抖动还有很多优化方法。 用了公式int final = (int)(.299 * (double)r) + (.587 * (double)g) + (.114 * (double)b));但是结果出来后模糊的很,不知所谓的阀值设多少才好,我已试过n个了 从一幅图中,按一定规则划分出感兴趣的部分或区域称为分割。基本思想是使像素值小于指定阈值的像素转换成黑(白)像素[2]。像素值等于或大于指定阈值的像素换成白(黑)像素,在这里,我们对上面放大后的图像进行分割,就是要得到血管和背景的二值图像。图像二值化的方法很多,有阈值法[3]、FCM2D法[4]等,本文根据文献中有关广义模糊集的定义,提出了一种快速高效的分割方法。其过程如下: 一个灰度级为 L的 M×N的二维灰度图像,可以看作是一个广义模糊单敦构成的阵列,其中每个元素的广义隶属函数的绝对值表示相对于最大亮度L-1的亮度程度[5],故可记为: 其广义性质域的值P={Pij}为: 其中Xmax为最大灰度级,i=1,2,...,M ,j=1,2,...,N, D为可调参数,应用下面公式,经多次循环操作(10次左右),将P′={P′ij}映射为普通性质集P'={P'ij}: 你的灰度转换公式中的系数一般的图像处理书很容易找到,是根据r,g,b分量对人眼感受的亮度的贡献来的标准处理方式。但是肯定有信息损失,一个亮度为(1/.299)的红色点与一个亮度为(1/.587)的绿色点转换出来就是相同的灰度。彩色图像中太多这样的点可以看,转换出来就没什么信息了。这时只有不按人的习惯系数去转换了。 to z_sky:其实我的图象中只有黑白文字,我试过直接将r=0、g=0、b=0转成黑色,将r=255、g=255、b=255转成白色,但好象形成的图象还是看不出原来的文字! to z_sky:图象是白底黑字,没有其他颜色。转换的结果很模糊,有一些笔画变形了。 已经搞定,原来是我把RGB值取错了 VC开发activex ocx控件,调用客户端USB摄像头问题求助 英文系统下如何将一段汉字显示在richedit中 老是运行到这儿,为什么? 简单指针地址问题,谢谢 昨日某时,两小偷破二重门,搬走两台主机。多年积累的资料一下全无。郁闷,散分销灾。 高手帮帮忙 在线等待,关于ACCESS的问题? Window环境下如何判断一个文件是否正在被进程读或写(为了程序同步) 如何创建目录和修改目录名 200分呀,绝对不难.(谁都有可能得呀) 紧急!共有200分奉送!中文输入法的软键盘是如何实现的? 怎样获得网上的域名和用户组
int final = (int)(.299 * (double)r) + (.587 * (double)g) + (.114 * (double)b));
但是结果出来后模糊的很,不知所谓的阀值设多少才好,我已试过n个了
一个灰度级为 L的 M×N的二维灰度图像,可以看作是一个广义模糊单敦构成的阵列,其中每个元素的广义隶属函数的绝对值表示相对于最大亮度L-1的亮度程度[5],故可记为:
其广义性质域的值P={Pij}为:
其中Xmax为最大灰度级,i=1,2,...,M ,j=1,2,...,N, D为可调参数,
应用下面公式,经多次循环操作(10次左右),将P′={P′ij}映射为普通性质集P'={P'ij}:
其实我的图象中只有黑白文字,我试过直接将r=0、g=0、b=0转成黑色,将r=255、g=255、b=255转成白色,但好象形成的图象还是看不出原来的文字!
图象是白底黑字,没有其他颜色。
转换的结果很模糊,有一些笔画变形了。