基于变参数混合高斯模型的动态目标检测算法
2014-04-10黄应清闫兴鹏
黄应清, 赵 哲, 闫兴鹏, 赵 锴, 裴 闯
(1. 装甲兵工程学院控制工程系,北京 100072; 2. 装甲兵工程学院信息工程系,北京 100072)
自动目标检测与跟踪作为机器视觉的一个重要研究方向,在战场侦察和银行、机场等重要地域的监测中有着广泛的应用。其中动态目标检测作为计算机视觉的一种主要应用技术,在近十年来获得了极大的发展,并与工程应用紧密联系在一起[1-3]。
动态目标检测的任务就是在纷繁复杂的背景中,把感兴趣的运动目标尽可能完整地提取出来。检测算法主要有光流分析法、帧间差分法和背景差分法3种[4-7]。背景差分法是目前应用最广泛、实时性良好的一种方法,其效果直接由背景模型决定。背景模型根据其生成方式,可分为参数型和非参数型,二者相比较,采用参数建模更能适应变化的场景,运算效率高且资源消耗少。就目标检测所处理的图像而言,其直方图大多以双峰形式存在,适于采用Otsu算法进行分割[8]。但传统Otsu算法计算量大,实时效果不佳,需加以改进。为此,本文基于混合高斯模型和改进的Otsu分割算法,提出了一种动态目标检测算法,对复杂背景干扰的动态目标检测问题进行研究。
1 改进的混合高斯背景模型
近年来,在复杂背景建模中,混合高斯模型[2,9-10]的应用越来越广泛。与只适用于室内场景、背景相对稳定的单高斯模型不同,混合高斯模型考虑了背景运动的多模性,可以更好地应用在部分区域震荡变化,如背景扰动(树叶)、闪烁(水面)等检测易出错的动态背景环境。
高斯背景模型是将每一个像素点都看成是一个高斯分布,混合高斯模型则对每个像素都维护K个背景模型,模型个数越多,处理波动能力就越强,所需处理时间也会越长。若每个像素点取值用变量Xt表示,其概率密度函数f(Xt)为
(1)
将每一个新获得的像素与当前背景模型的K个分布进行匹配,匹配值为
(2)
式中:λ为匹配阈值参数,经典混合高斯模型取λ=2.5。采用λ=2.5以内的样本来估计各高斯分布的标准差,将使分布尾部被截断,标准差的估计值会偏小,导致检测结果出现偏差。
图1 准确度与参数λ和真实标准差σ的关系
λ=2.5是传统高斯模型的阈值,由图1可见其准确度在99.5%上下浮动,但实际数据不可能完全匹配高斯分布,实际准确度会更低。从背景更新准确度来说,λ取值越大越好,但是过大阈值会导致目标像素漏检率增高,因此,λ的选取需在目标准确度和漏检率之间做权衡。笔者提出在算法中采用双阈值,即在背景更新中采用λb=3.0,在目标检测中采用λo=2.5。双阈值的选取不仅更能保证参数估计具有较高的准确度和较低的漏检率,而且能舍弃不确定像素的灰度信息,降低目标虚警率。
获取匹配值Mi,t的目的是将可能性大的分布置于序列前列。如果该像素被频繁击中,则它会成为背景的一部分,可能性小的分布逐渐会被可能性更大的分布代替。高斯分布参数更新公式如下:
wi,t+1=(1-α)wi,t+αMi,t,
(3)
(4)
式(3)为权重的更新公式,式(4)为归一化权重系数,其中α是模型学习率,按经验可取0.02。常规混合高斯模型对大面积背景扰动和运动目标的停留及再次移动的检测效果不佳,为提高算法对此类问题的适应性,需改进模型参数权值更新:
(5)
式中:γu为模型更新参数;γr为模型替代参数。在目标检测过程中,γu、γr分别表示当前帧目标像素、背景像素成为背景的速度控制参数。结合式(3)可知:改进后的模型参数权值上升速度将减缓,下降速度将加快,即客观上延长了像素点被判为目标像素的时间,有利于对背景干扰和运动目标停留问题的检测。
均值和方差的更新公式如下:
μi,t+1=(1-ρ)μi,t+ρXt,
(6)
(7)
常规高斯模型将排除在高斯分布之外的像素点灰度值直接确定为前景点,并二值化前景背景点,这样的结果无疑增加了对目标像素的错检率。为此,本文采用改进的混合高斯模型获取背景点分布,生成背景模型,并与当前帧进行差分运算,采用Otsu分割算法生成二值化图。
2 改进的Otsu分割算法
Otsu算法又称最大类间方差法,是在灰度直方图基础上采用最小二乘法原理推导出的,以最佳阈值将图像的灰度值分割成方差最大的2部分,即具有最大的分离性[11]。其原理如下。
(8)
式中:t的取值为0~l-1,使δ2(t)最大时对应的t值为最佳分割阈值。
现对该算法改进如下。令μ0≤μ≤μ1,则
|μ-μ0|-|μ-μ1|=μ-μ0+μ-μ1=
(9)
当图像对比度较低时,灰度差异在直方图上显示不明显,但在局部区域内,目标灰度值仍然有别于背景灰度值,如图2所示。通过Top-hat变换,可使图像的背景亮度变得均匀,采用统一阈值分割图像,无用信息也会降低。图像的形态学Top-hat变换为
图2 原始差分结果局部直方图
(10)
对不均匀的灰度行阈值处理很困难,与图像背景底色相近的前景目标很难被检测出来。如果对图像进行开运算,就可产生对整个图像背景的合理估计,只需保证结构元素大到不能完全匹配目标即可。经开运算处理的差分结果局部直方图如图3所示,可见:Top-hat变换使差分图的灰度级l相应地降低,Otsu算法搜索范围进一步缩小,提升了运算速度。由原图减去经开运算后的图像,即可产生一幅具有合适且均匀背景的图像。
图3 改进的差分结果局部直方图
3 目标检测算法设计
根据以上结论,本文提出了一种改进的目标检测算法,其流程如图4所示。
采用的背景更新模块建模主要分为3个步骤:1)利用读取连续帧图像信息,生成高斯分布模型;2)检测新像素点属于该模型的概率,选取λb=2.5作为判决背景点阈值,选取λo=3.0作为判决目标点阈值;3)利用式(5)更新模型参数各分布权值。
改进的Otsu分割算法步骤如下:1)系统从模型获取背景图,对新获取图像进行背景差分运算;2)对差分结果进行Top-hat变换;3)为减少搜索次数,第1帧差分结果选取总方差灰度值μ,进行分割二值化;4)第2帧及以后的差分结果选取[μ,l-1]区间作为Otsu法的搜索阈值范围。由于去除了大量的背景干扰信息,此时背景C0与目标C1所占比例相当,可以更有效地分割出目标信息。
对于改进的Ostu算法分割结果,需进行形态学处理,腐蚀以删除小面积,膨胀以填充部分目标内部空洞,寻找连通区域以标志目标。
图4 改进目标检测算法流程
4 测试和试验结果分析
4.1 不同模型的背景效果
试验利用Matlab软件进行数据测试分析,并结合Visual Studio2010实验平台,采用OpenCV2图像函数库进行设计实现,并且对常规中值背景模型[12]和本文所提出的方法进行比较。图像帧整体尺寸为1 280×720像素,截取主要局部图为489×720像素,如图5所示。
由图5可见:图5(b)中值背景阴影较重,效果不好,这与中值模型采用的数据帧数量有关,而且只能选择中间灰度值,如果目标较长时间出现在检测区域,会使生成背景混杂有目标信息;图5(c)上方树叶长时间细微的抖动影响了背景的生成;采用本文方法生成的背景(图5(d))相对纯净,这是因为双阈值的选取降低了背景扰动,改进的权值更新方法延长了判别背景时间。
2种建模方法生成的背景灰度直方图对比如图6所示。经计算,采用常规中值背景模型生成的背景图对比度为8.824 8,而采用本文方法生成的背景图对比度为11.577 1。
由图6及对比度计算结果可知:由于常规中值背景模型混杂了部分目标信息,因此在灰度值较低区域,像素个数更多,这些灰度值覆盖了原本在200~250区间内的背景像素灰度值;而采用本文方法得到的背景图对比度较大,效果较好。这是由于背景差分运算结果会保留更多的目标信息,以免漏检目标。
图5 背景模型生成对比
图6 2种建模方法生成的背景灰度直方图对比
4.2 不同分割算法的试验对比
分别采用迭代阈值二值化方法、Otsu算法和改进的Otsu算法,对当前帧与背景的差分图进行阈值分割,结果对比如图7-10所示。可以看出:采用改进的Otsu分割算法,图像上存在的大量无用信息(树叶扰动)被排除,运动目标更加显著,更易于进行后期的图像形态学处理,以标定目标。
图7 不同阈值分割算法效果图对比
图8 不同阈值分割算法灰度直方图对比
图9 不同阈值分割算法处理速度对比
图10 不同阈值分割算法某点像素的灰度值变化
采用本文方法生成的背景差分图需进行形态学处理,先进行腐蚀处理,再进行膨胀处理,继而标定目标图,检测目标结果如图11所示。
由于Matlab的处理速度有限,因而采用高效且可移植的基于OpenCV2图像库的C++语言编写程序,运行结果如图12所示。每帧处理时间统计如图13所示,可见:视频处理的前期是多建模过程,耗时不稳定,待模型实时更新后,平均速率为48 ms/帧,处理速度稳定,基本满足对实时目标检测的要求。
图11 检测目标结果
图12 基于OpenCV2库的C++程序运行结果
图13 每帧处理时间统计
5 结论
本文针对运动目标检测中的实时性及目标虚警问题,提出了一种基于变参数混合高斯模型的动态目标检测算法。该算法能够较好地抑制突变环境,并降低背景中小的抖动对检测结果的干扰, 有效地解决了重影、目标虚警等问题。下一步,要研究更高效的混合模型与分割算法相结合的策略,综合利用已获得信息自动变更参数,以达到自适应的结果。
参考文献:
[1] Haritaoglu I,Harwood D,Davis L S. W4:Real-time Surveillance of People and Their Activities [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(8):809-830.
[2] Stauffer C, Grimson W E L. Adaptive Background Mixture Models for Real- time Tracking[C]∥Proceedings of IEEE Computer Socitety Conference on Computer Vision and Pattern Recognition.Fort Collins,CO:IEEE,1999:2241-2246.
[3] 吕复强,王慧,刘泓,等.基于改进混合高斯模型的交通流背景检测算法[J].上海交通大学学报,2012,46(12):1920-1925.
[4] Horn B K, Schunch B G. Determining Optical Flow [J] . Artificial Intelligent,1981,17: 185-203.
[5] Chalidabhongse T H, Kim K, Harwood D, et al. A Perturbation Method for Evaluating Background Subtraction Algorithms [C]∥Proceedings of Joint IEEE International Workshop on Visual Surveillance and Performance Evaluation of Tracking and Surveillance (VS-PETS).Nice,France:IEEE, 2003,10:11-12.
[6] 朱明旱,罗大庸,曹倩霞. 帧间差分与背景差分相融合的运动目标检测算法[J]. 计算机测量与控制,2005,25(2): 2-3.
[7] 代科学,李国辉,涂丹,等. 监控视频运动目标检测减背景技术的研究现状和展望[J].中国图像图形学报,2006,11(7) : 921-927.
[8] Otsu N. A Threshold Selection Method from Gray-level Histogram [J].IEEE Transactions on Systems, Man and Cybernetics,1979,9(1):62-66.
[9] Gao X,Boult T E,Coetzee F, et al.Error Analysis of Background Adaption [EB/OL].(2011-09-02)[2014-01-01].http://wenku.baidu.com/view/1c83a8ec5ef7baod4a733b16.html
[10] Stauffer C, Grimson W E L.Learning Patterns of Activity Using Real-time Tracking[J].IEEE Trans PAMI,2000,20(8):747-757.
[11] 何志勇,孙立宁,黄伟国,等. 基于Otsu准则和直线截距直方图的阈值分割[J]. 光学精密工程,2012,20(10):2315-2323.
[12] Gupte S, Masound O, Martin R F K, et al.Detection and Classification for Vehicles[J]. IEEE Transactions on Intelligent Transportation Systems, 2002,3(1): 37- 47.