在考虑数字化监控系统的基本要求和CMOS摄像头的价值、性能、功耗、体积和发展趋势的基础上,在普通PC机上运用VC++和VB编程实现了“基于低成本CMOS摄像头的数字图像智能监控系统”。当监控场景发生变化时,系统自动拍照和录像,并提供3个报警级别,同时实施相应的处理机制,并进行声音报警,必要时还可以进入人工干预。
1 系统功能
本系统由微机、CMOS摄像头和软件等组成,其基本功能如下:
(1)能够克服廉价CMOS摄像头的不稳定性和低象素低分辨率的缺陷,对监控场景进行可靠、稳定的监控。
(2)能够实现智能化、自动化。在发现异常情况时,可以根据异常情况的危险等级而实施不同的处理机制。
(3)具有拍照和录像功能,当出现异常情况时将有关场景记录在案,为日后分析提供影像证据,同时系统还提供时间信息。
(4)具有完善的后处理能力,在本系统内可以查看所拍摄的照片和录像,方便用户浏览查看,并且可以编辑、打印等。
(5)可灵活实现由自动监控到人工操作的切换。
2 硬件设计
系统硬件构成框图如图1所示。
3 软件设计
3.1 主程序框图
监控软件主程序框图如图2所示。
3.2 监控程序框图
监控程序框图如图3所示。
系统将警报定为3个级别,分别是绿色警报、黄色警报和红色警报。由低到高分别表示监控场景安全、系统进入警备状态和系统进入报警状态。
当系统处于绿色报警状态时,位于屏幕中心的视频回放窗口中实现地回放CMOS摄像头捕捉的视频图像,位于屏幕下方的状态栏则显示系统运行时间以及当前时间等信息。同时,内部监控程序进行运动检测,一旦场景有变化就触发高一级别的警报,并驱动附属设备工作。
4 对低成本CMOS摄像头的研究
4.1 图像的获取
在摄像头图像的获取上,系统采用了Logitech Quick-Cam SDK。这是一个COM接口驱动程序,通过对他的设定编程,就可以获取摄像头捕捉的图像,图4显示了程序设计者和摄像头低层驱动之间的工作原理。
通过调用WDM驱动程序,应用程序就可以和CMOS摄像头进行数据通信。
4.2 预处理方法
图像在生成和传输过程中受噪声干扰会使质量下降。为了抑制噪声和改善图像质量,必须对图像进行平滑处理。
为了滤除图像中的噪声,系统设计时采用平滑技术,本系统中采用的平滑技术是对噪声图像使用局部算子,即仅对他的局部小领域内的一些象素加以运算。该方法也称作非加权领域平均法,他均等地对待领域中的每个象素。设图像中某象素的灰度值为f(x,y),他的领域S为N×N,点集总数为M,则平滑后该点的灰度值为整个区域的平均值。
领域运算(Neighborhood Operation)实质上就是进行模板操作,即某个象素点的值不仅和本象素灰度有关,而且和其领域点的值有关,平滑模板的思想是通过某一点和其周围8个点的象素值平均来滤除噪声。
系统中采用的图像模板操作函数如下:
利用该通用模板,就可以轻松地实现局部平滑操作。
4.3 成像规律的研究
基于廉价的CMOS摄像头最严重的问题就是稳定性差。也就是说如果对同一静态场景进行连续拍摄时,其图像也存在很大差别。为此,首先进行对静态图像连续拍摄的稳定性的实验,对图像进行三原色分离,比较各象素点的差值,统计不同的象素点的个数。
假设某一特定点在相邻t1,t2时刻所对应的三原色值分别为(R1,G1,B1)和(R2,G2,B2)。实验发现,R1≠R2,G1≠G2,B1≠B2,但其存在关系R1-R2△G1-G2△B1-B2。
三原色分离是分离前背景图像的基础,为此,构建函数f(1),f(2)分别表示t1,t2时刻某一点所对应的三原色函数值。通过对三原色分离后的误差域值的研究发现,当|f(1)-f(2)|=a=45时(a称为域值),可准确实现t1,t2时刻前背景图像的分离,且系统反映速度较快,属于非常合适的“折衷点”。因此,当a≤45时,可以认为图像中t1,t2时刻的三原色差值是由于摄像头的误差造成的,否则判断有物体进入了监控区域。
实现前背景分离的核心程序如下:
图5所示即为程序运行后的前背景分离结果。
5 结语
在系统的研究过程中,课题组投入了大量经历致力于低成本CMOS摄像头的研究,成功地克服了摄像头稳定性差、精度低等问题。探索出了一条低成本多媒体监控系统开发之路。
通过在不同场所的系统测试,本系统完全达到了高精度、高稳定性的实时监控功能。但随着对监控系统的进一步要求,为适应新的形势,该系统在以下方面有待优化。
(1)视频信号的自动切换,每间隔一定时间自动切换摄像头监控区域。
(2)增加网络功能,报警时可将照片和录像传输到远端主机。
(3)增加电话报警功能,报警使可拨打报警电话。
(4)对系统稳定性进行深入研究。
(5)改进图像和视频压缩算法,采用MPEG4压缩技术。
出处:现代电子技术