首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

监控摄像头视频判断镜头是否改变

2013-01-01 
监控摄像头视频判断画面是否改变项目:VB视频采集一个画面,在一定条件下这个画面会发生改变,要求当画面改变

监控摄像头视频判断画面是否改变
项目:VB视频采集一个画面,在一定条件下这个画面会发生改变,要求当画面改变时自动判断出已改变
当前思路:开始采集的时候,保存一幅画面(基准图片BMP文件),然后定时器里每隔一定时间采集一次视频画面做成比较图片(实时图片BMP文件),这时候就相当于是判断两幅图片是否完全相同,逐像素比较也好,XOR也好。应该就OK了
问题:可能是由于摄像头精度问题,即使视频采集图像没有变化,但是采集出来的实时图片也和基准图片不一样(人眼看是没有变化),有什么好的思路可以解决这个问题么?
[解决办法]
先将图像二值化(转换成黑白),然后比较两个时刻的像素值,再根据一定比例判断是否真的发生了变化。
[解决办法]
还有个不是办法的方法:截取两张画面进行对比……我记得电脑报2006的一篇文章中有个监控代码。不过是BCB的,lz可以的话去找找,翻译过来用用看一下。
[解决办法]
利用小波变换算法进行采样,通过对比波形相似度来判定画面变动情况
[解决办法]
问题就是消除微小色差的问题。
一般可以转成256色的彩色或灰度图片,不过这都要分别提取 RGB 分量进行计算,其实仅作比较可以用更简单的方法——用与操作将 RGB 分量的低位直接去除:

Dim lColor As Long
lColor = 取像素颜色()
lColor = lColor And &HF0F0F0

热点排行