项目:VB视频采集一个画面,在一定条件下这个画面会发生改变,要求当画面改变时自动判断出已改变
当前思路:开始采集的时候,保存一幅画面(基准图片BMP文件),然后定时器里每隔一定时间采集一次视频画面做成比较图片(实时图片BMP文件),这时候就相当于是判断两幅图片是否完全相同,逐像素比较也好,XOR也好。应该就OK了
问题:可能是由于摄像头精度问题,即使视频采集图像没有变化,但是采集出来的实时图片也和基准图片不一样(人眼看是没有变化),有什么好的思路可以解决这个问题么?

解决方案 »

  1.   

    还有个不是办法的方法:截取两张画面进行对比……我记得电脑报2006的一篇文章中有个监控代码。不过是BCB的,lz可以的话去找找,翻译过来用用看一下。
      

  2.   

    问题就是消除微小色差的问题。
    一般可以转成256色的彩色或灰度图片,不过这都要分别提取 RGB 分量进行计算,其实仅作比较可以用更简单的方法——用与操作将 RGB 分量的低位直接去除:
    Dim lColor As Long
    lColor = 取像素颜色()
    lColor = lColor And &HF0F0F0