VC MFC怎么对一个BMP格式的图片的一个RGB值进行搜索 只留下这个RGB值的像素点。。
VCMFC怎么对一个BMP格式的图片的一个RGB值进行搜索只留下这个RGB值的像素点。。要具体的代码。。。弹出一个窗口输入对应的RGB值然后对这个RGB值进行搜索只留下这...
VC MFC怎么对一个BMP格式的图片的一个RGB值进行搜索 只留下这个RGB值的像素点。。
要具体的代码。。。 弹出一个窗口输入对应的RGB值 然后对这个RGB值进行搜索 只留下这个RGB值的像素点。。 展开
要具体的代码。。。 弹出一个窗口输入对应的RGB值 然后对这个RGB值进行搜索 只留下这个RGB值的像素点。。 展开
2个回答
展开全部
首先创建一个位图句柄,类型为CBitmap,把图片加载到资源中,用LoadBitMap函数,参数是资源号。(另一种方法是先把图片文件加载,然后在载入到一个位图类中,用LoadImage函数,较上面种繁琐些。)
然后通过上面创建的位图,得到位图数据,用到GetBitmapBits(x*y*4, (LPVOID)data)函数,其中x,y为位图的长宽,data为保存位图数据的数组,类型为byte。完了之后,data数组中就包含着位图的所有RGB值,一个数据占四个字节(R、G、B、NULL)。剩下的事就好办了,要寻找某点,逐一排查是否和数组中的数据相同即可。
今天太晚了,明天给你附代码。
然后通过上面创建的位图,得到位图数据,用到GetBitmapBits(x*y*4, (LPVOID)data)函数,其中x,y为位图的长宽,data为保存位图数据的数组,类型为byte。完了之后,data数组中就包含着位图的所有RGB值,一个数据占四个字节(R、G、B、NULL)。剩下的事就好办了,要寻找某点,逐一排查是否和数组中的数据相同即可。
今天太晚了,明天给你附代码。
追问
额 MFC初学 还不会写代码 软件主要是对一个图片进行处理,把颜色一样的线条提取出来,可以输入RGB值 然后让BMP图片把这个RGB值的线条提取出来。。能帮忙写个代码么 现在软件可以打开BMP图片 对图片进行灰度化什么的。。
展开全部
技巧型办法:用TransparentBlt将图片放到指定取反颜色的背板上,得到的DC再通过BitBlt的光栅位操作与原图进行位异或操作,可以得到一个纯黑白图,再次与原图进行BitBlt的光栅位于操作,即可得到黑色背景的单色图了。
高效多代码办法:对读取到的BMP图像进行进行指针操作,每个像素的RGB是一个DWORD的4字节内存宽度,只要对这个DWORD进行对比并赋值即可。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |