如何判断屏幕上指定区域内是否存在某种颜色??

kingnew 2006-08-30 01:44:23
如题。有什么最效率的方法呢。
...全文
561 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
littlepboy 2006-09-14
  • 打赏
  • 举报
回复
up
e_feeling 2006-09-13
  • 打赏
  • 举报
回复
截取屏幕位图,在位图数据中再遍历查找。
hhyytt 2006-09-10
  • 打赏
  • 举报
回复
拷屏到BMP,然后复制到BYTE数组里查找所要颜色。
Jun_ 2006-09-09
  • 打赏
  • 举报
回复
纠正一下,16位当然占16位了..汉一个, 看着好海东,想着李金羽,说的却是欧楚良..
Jun_ 2006-09-09
  • 打赏
  • 举报
回复
如果是pc上面,可以构建一个memBitmap,用BitBlt,把屏幕考出来,得到一个Bitbmp ,然后从数据位开始做比较,以16位真彩色为例,每一个象素站24位,做一个循环,判断象素的RGB值

非pc机先取得显卡的内存映射地址,然后直接根据色彩模式,判断内存中的RGB值
流梓 2006-09-08
  • 打赏
  • 举报
回复
大哥、大姐们帮帮帮帮帮帮啊。。
流梓 2006-09-07
  • 打赏
  • 举报
回复
版主们,帮帮忙啊。这问题困惑很久了。。
流梓 2006-09-07
  • 打赏
  • 举报
回复
LZ 学习啊,怎么实现?
goodboyws 2006-08-31
  • 打赏
  • 举报
回复
这个例子可以参考
http://www.codeguru.com/cpp/g-m/bitmap/usingregions/article.php/c1751/
lixiaosan 2006-08-31
  • 打赏
  • 举报
回复
getpixel确实效率很低。。

你可以得到该区域的bitmap后,根据bitmap的文件结构直接读取该bitmap的数据。
Elysium 2006-08-31
  • 打赏
  • 举报
回复
sorry GetClipRgn
Elysium 2006-08-31
  • 打赏
  • 举报
回复
GetClipRect
DentistryDoctor 2006-08-31
  • 打赏
  • 举报
回复
截取需要判断的那部分的位图,然后在内存中判断?
kingnew 2006-08-31
  • 打赏
  • 举报
回复
up
littlepboy 2006-08-30
  • 打赏
  • 举报
回复
哎,这个方法谁都知道,可是如何才能高效呢?
做了个试验,一般配置机器,这样遍历:

100x100pix 32ms
1000x1000pix 1032ms

显然太低效了。。
折腾_苏州 2006-08-30
  • 打赏
  • 举报
回复
可以二维循环判断:
::GetPixel(::GetDC(NULL),x,y); 获取某点

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧