摘 要: 针对传统的混合高斯模型不能很好地处理突变的情况,提出了一种新的运动目标检测算法。该算法在时间域上对混合高斯模型的更新机制进行了改进,并对模型加入了帧间处理,提取出初步的运动目标;在空间域上,通过Canny边缘检测算子获得初步的运动目标边缘轮廓,利用图像金字塔的多分辨特性排除背景噪声,经过一定运算再次得到运动目标。将两次得到的运动目标作“与运算”,提取出最终的运动目标。实验结果表明,本算法可以较好地处理突变情况,提取的运动目标图像完整、轮廓清晰。
关键词: 边缘检测; 混合高斯模型; 运动目标检测;背景减除
在智能视频监控和运动分析应用中,一个基础而又关键的任务是从视频序列中实时地检测出运动目标。视频运动目标检测的主要目的是从视频序列中提取出运动目标并获得其特征信息,如颜色和轮廓等[1]。目前运动目标检测算法主要有光流法、背景差分法和帧差分法等。其中,背景差分法是目前研究最多、应用最广泛的一种方法[2]。混合高斯模型鲁棒性比较高,能够较好地处理规律变化的动态背景,但是它对突发事件(如光照突变)的响应速度比较慢,容易受到背景噪声干扰的影响,从而造成无法正确地提取运动目标。近年来,一些研究人员对高斯模型法提出了改进方法,效果仍不理想。本文提出了一种融合混合高斯模型和边缘检测的运动目标检测算法。该算法首先对混合高斯背景模型的更新机制进行了改进,并对模型加入了帧间处理使其可以适应突变,得到初步的运动目标;再结合Canny边缘检测算子和金字塔运算得到运动目标轮廓,经过填充、形态学处理后再次得到运动目标图像,将两次得到的运动目标作“与运算”,提取出最终的运动目标。实验结果表明,本文提出的算法可以较好地提取运动目标轮廓,有效抑制阴影与噪声的影响,并能适应突变情况。
1 混合高斯模型
基于高斯混合模型的背景建模方法最初由STAUFFER和GRIMSON于1999年提出[6-7]。对于图像序列中的像素点的历史观测值集合为{X1,X2,…,Xt},可以得到该像素值在当前帧的概率密度函数:
对于没有匹配的高斯分布,其参数皆保持不变。前景检测的过程在模型更新之前进行。如果在当前根据ω/σ值排序后的背景描述的B个高斯分布中,至少有一个高斯分布与当前像素值匹配,则当前像素为一个背景像素,否则,判定其为前景像素。
通过改进的混合高斯模型算法可以得到一个初步的运动目标,并标记为运动目标a,以备与基于边缘检测所得运动目标相结合,得到更精确的运动目标。
2.2 Canny边缘检测算法
由于阴影及背景噪声的影响,单纯使用混合高斯模型所提取出的运动目标轮廓不准确。为了在运动物体分割中得到精确的对象轮廓,本文结合空间分割结果来优化物体区域。一个好的边缘检测算子应具有3个指标:好的边缘检测结果、好的定位特性和单边缘响应。基于这3个指标,Canny提出了一种最优逼近算子—— Canny边缘检测算子。该算法描述如下:
(1)用高斯滤波模板进行卷积以消除噪声,平滑图像。
(2)用一阶偏导计算梯度的幅值和方向。
(3)对梯度幅值进行非极大值抑制,在梯度方向上获取梯度幅值最大的边缘点。如果某个像素的灰度值与其梯度方向上前后两个像素的灰度值相比不是最大的,则认为该点不是边缘点。
(4)迟滞处理,用双阈值算法检测和连接边缘。认为所有梯度大于高阈值的一定是边缘点,凡是小于低阈值的一定不是边缘点;如果梯度值大于低阈值而小于高阈值,则根据该像素的邻域像素进行判断,如果邻域中存在梯度大于高阈值的像素,就认为该点是边缘点,否则不是边缘点。采用这种方法可以更好地抑制孤立噪声。
2.3 本文算法描述
图1所示为本文提出的边缘检测与混合高斯模型相融合的运动目标检测算法流程图。在时间域上,对GMM(混合高斯算法)进行改进之后,提取到初步运动目标a。在空间域上,利用Canny边缘检测算子获得当前帧图像和背景图像的边缘轮廓,相减得到粗糙的运动目标边缘轮廓,对其进行金字塔运算得到精确的运动目标轮廓,经形态学处理后可针对同一帧图像再次提取到运动目标b。将两次得到的运动目标a和b作“与运算”,提取出最终的运动目标。
下面给出运动目标b的提取方法。
边缘是由图像的局部变化决定的,因此边缘检测结果对图像噪声相当敏感。为了减少物体边缘图像中的噪声,在边缘检测之前应尽量排除那些与运动物体无关的背景区域。可以在对图像进行Canny边缘检测之前先平滑图像,以减少图像中的噪声污染。但是,这样做并不能较好地消除噪声污染,因此,本文引入了金字塔运算。
在金字塔图像中,不同尺度的图像提供不同的特征信息,在细尺度下的图像主要显示细节信息,粗尺度图像主要提供图像的全局信息。将当前帧边缘轮廓与背景边缘轮廓相减所得的运动目标边缘轮廓进行多级金字塔分解后,得到了边缘轮廓的多尺度表达。噪声主要表现为不规则的点,因此在粗尺度下,噪声污染将基本清除。再将粗尺度的边缘轮廓向上采样,由于所得到的图像轮廓会存在间断,因此应使用闭运算进行边缘连接,这样可以得到精确的运动目标边缘轮廓。然后填充运动目标轮廓,将面积小于一定阈值的连通成分当作噪声去除。经形态学处理之后就得到初步运动目标b。
将运动目标b与前面改进的GMM算法得到的运动目标a作与运算,提取出最终的运动目标。
3 实验结果与分析
实验在Intel(R)双核Duo CPU2 T5870@2.00 GHz CPU、2 GB内存、Windows XP操作系统、VC++6.0的环境下,基于Intel开源库OpenCV编程实现。
为了验证本文算法的有效性和适应性,本实验选取了室外和室内两组视频序列,实验结果如图2和图3所示。图2(a)是室外视频序列的第576帧,图2(b)为使用传统混合高斯模型提取的运动目标图像,图2(c)为本文算法得到的目标图像。从图2可以看出,由于光照变化、户外噪声以及阴影因素的影响,使用混合高斯模型提取的运动目标并不理想,本文算法可以很好地处理噪声,得到的运动目标完整、轮廓清晰。
图3(a)为室内视频序列的第250帧,图3(b)为使用传统混合高斯模型提取的运动目标图像,图3(c)为本文算法得到的目标图像。由于室内存在反光镜,当人走进时,会导致光线变化,使用混合高斯模型并不能很好地处理突变,造成大量误检。应用本文算法后,能够提取出准确、完整的运动目标。
本文提出了一种融合边缘检测和混合高斯模型的运动目标检测算法。针对传统的混和高斯模型不能很好地适应突变的情况,在时间域上,对混合高斯模型参数进行重新选择,对更新机制进行改进,并加入帧间处理,得到初步的运动目标(标记为a)。由于阴影、噪声等的影响,运动目标a的轮廓仍然不够清晰。因此,在空间域上,结合Canny边缘检测算子和金字塔运算得到运动目标轮廓,经形态学处理后再次得到运动目标图像(标记为b)。将两次得到的运动目标a和b作“与运算”,提取出最终的运动目标。实验表明,本文算法能适应突变情况,并能有效抑制阴影和噪声的影响,提高了运动目标检测的精确度。
参考文献
[1] 赵文哲,秦世引.视频运动目标检测方法的对比分析[J].科技导报,2009,27(10):65-70.
[2] 甘新胜,赵书斌.基于背景差的运动目标检测方法对比分析[J].指挥控制与仿真,2008,30(3):45-50.
[3] LEE D S. On line adaptive Gaussian mixture learning for video applications[C]. Statistical Methods in Video Processing, LNCS3247, 2004,3247:105-116.
[4] Arandjelovic O, CIPOLLA R. Incremental learning of temporally-coherent Gaussian mixture models[C]. Proceedings of British Machine Vision Conference, Oxford, UK,2005:759-768.
[5] 陈祖爵,陈潇君,何鸿.基于改进的混合高斯模型的运动目标检测[J].中国图象图形学报,2007,12(9):1586-1589.
[6] STAUFFER C, GRIMSON W E L. Adaptive background mixture models for real-time tracking[C]. Proceedings of IEEE International Conference on Computer Vision and Pattern Recognition. Fort Collins: IEEE Press, 1999: 246-252.
[7] STAUFFER C, GRIMSON W E L. Learning patterns of activity using real-time tracking[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2000, 22(8):747-757.
[8] SCHINDLER K, Wang Hanzi. Smooth forground-background segmentation for video processing [J]. Lecture Notes in Computer Science, 2006, 3852:581-590.
[9] 李亚玲,徐荣青,聂桂军,等. 适应场景光照变化的运动目标检测算法[J].计算机技术与发展,2011.21(2):140-142.