融合背景减法和帧差法的运动目标检测
2015-05-06王奎奎玉振明
王奎奎,玉振明
(1.桂林电子科技大学 信息与通信工程学院,广西 桂林 541000;2.梧州学院,广西 梧州 543000)
融合背景减法和帧差法的运动目标检测
王奎奎1,玉振明2
(1.桂林电子科技大学 信息与通信工程学院,广西 桂林 541000;2.梧州学院,广西 梧州 543000)
针对背景减法前景目标检测前期存在的“鬼影”,通过统计图像序列中各像素点处像素值的频次,高频次的像素值为背景像素,获得了无运动目标的背景,消除了“鬼影”;对于帧差法检测结果内部易产生“空洞”,在前景判断时增加了新的判决条件,改善了“空洞”问题;对于传统背景减法检测结果存在“拖影”问题,通过背景减法和改进帧差法的检测结果进行逻辑与操作,并将“与”结果作为背景图像更新判决条件。实验结果表明,该算法可以获得精确的背景图像,并且解决了“拖影”、“鬼影”及“空洞”问题,满足实时检测的需求。
背景初始化;背景减法;帧差法;背景更新
随着智慧城市[1]在我国的兴起,智能视频监控将发挥巨大作用,其具有广泛的应用领域,如对超市、街市、住房小区和银行等公共场所的监控,对车辆、行人等交通场景的监控。运动目标检测技术是智能视频监控的一个重要环节,它为智能视频监控的实现奠定了良好的基础,为机器人实现捕捉和跟踪目标提供了便利[2-3],因此运动目标检测依然是一个重要研究课题。
背景减法[4]、帧差法[5-6]、光流法[7]是运动目标检测常用方法。背景减法[8]和帧差法[9]均利用帧间像素差异性检测运动目标,算法实现简单,实时性好。传统的背景减法在背建模和更新阶段,对于某些情况如视频初始帧存在运动目标、目标移动缓慢等,检测结果易产生“鬼影”和“拖影”。帧差法对运动目标的移动速度和帧间像素差异性小较为敏感,在检测结果中易产生“双影”和“空洞”。光流法[10]由于遮挡和孔径的问题计算复杂度高,难以满足实时检测的要求。文献[11-12]提出一种车辆检测算法,在背景建模阶段均采用高斯混合模型,利用视频第一帧设置高斯模型的参数,对于第一帧存在运动目标的情况,在前景判断初期第一帧中的目标会被当成背景,在处理后续帧时第一帧中的运动目标长期被当作前景目标检测出,造成前景图像中的“鬼影”,导致错检率增加,最终影响算法的精确度。文献[13]提出一种融合光流法和帧间差分的目标检测新算法,该算法首先利用两帧差分获得运动区域,其次计算运动区域中不为零的光流,利用光流场目标跟踪得以实现,但是光流法计算量较大,不满足视频监控实时性的要求。文献[14]提出基于背景减法与三帧间差分相融合的运动检测方法,利用改进的时间平均模型背景建模,获取背景图像,但是在监控区域目标密集移动时,建立的背景图像存在“虚影”,导致目标检测前期形成“鬼影”,同时三帧差分法虽然解决了“双影”,但对“空洞”问题并没有克服。
本文针对以上算法存在的缺陷,提出一种融合背景减法和八邻域帧差法的运动目标检测方法,该方法能够在前景检测前建立无运动目标的初始化背景,消除传统背景减法在目标检测前期存在的“鬼影”,减少了帧差法检测结果中的“空洞”,满足视频监控实时性的要求。
1 目标检测算法
1.1 背景初始化
通过分析前景图像中的“鬼影”,其出现的主要原因是初始化背景选取不当。若初始化背景中无运动目标,则无“鬼影”。然而针对目标检测前期“鬼影”问题,传统方法通常在背景更新过程中设置不同的背景更新速率,在消除“鬼影”阶段采用较大的速率加快背景更新;“鬼影”消除后速率变小以适应缓慢变化的环境,这样无疑增加了算法的复杂度。所以本文在目标检测前通过初始化背景的方法,获得无运动目标的背景,所以在前景检测过程“鬼影”就会消失。
运动目标检测中背景初始化方法主要有:视频初始帧作为初始背景、基于时间平均模型背景建模。如果视频序列中第一帧没有运动目标,选取第一帧作为初始化背景,效果好、占用内存少。然而大多数视频序列第一帧均存在运动目标,若选取第一帧初始化背景,后续的背景更新、运动目标判断,将出现误判。此时可以利用时间平均模型获得背景,然而若选取几帧图像平均并不能获得精确的背景,若选取多帧图像则会占用大量的内存空间,影响算法的实时性,同时在监控区域运动目标密集移动时,时间平均获得的背景存在“虚影”,影响后续的操作。
所以本文提出一种即使存在运动目标密集移动的情况,依然可以提取可靠背景的方法。主要步骤如下:
1)连续获取N帧图像序列{X1,X2,…,XN},并分别转化为灰度图。
2)定义一个矩阵MaxTimes,用于存储图像序列Xi(1≤i≤N)在像素点(x,y)处出现概率最大的像素值Pmax(x,y)。具体步骤为:依次获得图像序列每一个像素点(x,y)处的像素值Xi(x,y),并统计Xi(x,y)中出现次数最多的像素值Pmax(x,y)。若出现多个次数相等其为最大次数的像素值,则取像素的平均值。将Pmax(x,y)依次存储在矩阵MaxTimes中。
3)定义背景图像B(x,y),将MaxTimes每一个矩阵元素赋予背景图像,即B(x,y)=MaxTimes(x,y)。
利用本文方法获取的背景图像,在获得准确背景图像的前提下需要视频帧远远少于时间平均背景模型需要的帧数。利用PETS2009_sample_1视频进行实验,该视频第一帧存在运动目标,结果如图1。
a 视频初始帧
b 时间平均背景建模
c 本文背景初始化图1 初始化背景图
在实验中,图1a为原始视频初始帧;图1b利用时间平均背景模型采用18帧图像背景建模,结果可以看到存在大量“虚影”,其会被当作前景目标检测出来,影响算法的精确度。图1c同样使用18帧图像,利用本文方法建立背景图像,实验结果看出获得了真实可靠的背景。
利用简单背景差分法测试时间平均和提出方法提取的背景对检测结果的影响程度,使用PETS2009_sample_1和highwayI_raw进行测试,结果如图2所示。
a 视频帧 b 时间平均差分结果
c 本文方法差分结果 d 视频帧
e 时间平均差分结果 f 本文方法差分结果图2 简单背景差分检测结果
图2在保证检测的运动感目标轮廓清晰的前提下,背景减法中选择阈值T=30,对差分图像进行二值操作。图2a和图2d为原始视频某一帧;图2b和图2e采用时间平均获得初始化背景检测结果;图2c和图2f采用本文方法初始化背景检测结果。从图2可以看出:时间平均得到的初始化背景由于“虚影”存在,检测结果存在”鬼影”和噪音如图2b和图2e;采用本文方法虽然存在少量孤立噪声点,但前景目标更加精确。
1.2 背景减法获取运动目标
在获得可靠的初始化背景B(x,y)后,获取当前帧I(x,y),两者进行绝对值差分运算获得差分图像f(x,y)
(1)
(2)
(3)
根据式(2)和(3)确定差分图像f(x,y)阈值T,这样解决了阈值预先设定的缺点,阈值选取实现自适应,因此可以更加准确地分割出运动目标D(x,y),如公式(4)和(5)
T=μ+β×δ
(4)
(5)
式中:β为微调系数,可以根据不同情况设定不同的值,本文取β=0.95;H为图像高度;W为图像宽度。
1.3 八邻域帧差法
传统两帧差分法进行运动目标检测是从视频序列中连续采集两帧图像进行差分运算,有时计算结果为负值,通常为负值的像素值将被赋值为零,导致差分结果不准确,所以将连续两帧图像绝对值差分运算,这样使计算结果更加合理,如式(6)
(6)
式中:dk,k-1(x,y)为连续两帧绝对值差分图像;Ik(x,y)为当前帧;Ik-1(x,y)为前一帧;按照式(2)、(3)、(4)确定差分图像dk,k-1(x,y)的阈值T,利用阈值T分割运动目标,如式(7)
(7)
但是两帧差分法在进行目标检测时,对于目标内部灰度值分布比较均匀或者前景与背景灰度值近似的情况,在两帧之间目标重叠部分,检测的运动目标内部存在“空洞”,同时伴随噪声。所以本文通过研究帧差分图像,分析“空洞”的来由。对差分图像中像素点分为4类:背景点、背景与前景近似点、前景与前景近似点、前景与背景差异性较大的点,分别用A、B、C、D代替如图3。
注:按水稻价格(2.8 元 /公斤)、肥料中化(23∶10∶15)价格 3700 元 /吨、中化(21∶15∶16)2980 元 /吨计算。化肥片生产力=产量/化肥纯量
图3 像素点分类图
根据图3所示,传统帧差法利用阈值T对差分图像进行分割时,大于T即D部分分割为前景点,小于T即A、B、C部分为背景点,B、C部分像素点在目标内部形成了“空洞”。然而真实情况B、C部分依然属于前景点,对于这些丢失的前景点,采用增加分割前景时的判断条件。 由于丢失的前景点相邻像素具有相似性,所以其八邻域中存在像素差异性较大的像素点。
所以本文在进行阈值操作获得二值图像时Dk,k-1(x,y),增加一个判决条件如式(8)
(8)式中:sum(x,y)为像素点(x,y)的8个领域在式(6)的差分值的总和。如果sum(x,y)大于取定的阈值M或满足公式(7)判断为1的条件时,则判断该像素点为运动目标像素点,即式(9)
(9)
同时对检测结果Dk,k-1(x,y)进行形态学膨胀和腐蚀运算,可以进一步填充检测目标内的“空洞”。分别定义一个7×7的膨胀算子element1和3×3的腐蚀算子element2利用公式(10)对八邻域帧差法的检测结果先做膨胀处理,进一步填充空洞,其次进行腐蚀操作消除孤立的噪声点。
Dk,k-1(x,y)=Dk,k-1(x,y)⊕elementl
(10)
Dk,k-1(x,y)=Dk,k-1(x,y)Θelement2
(11)
本文从定量和定性两种角度测试八邻域帧差法对目标“空洞”的改善。利用帧差法和八邻域帧差法定量测试SampleVideo视频序列第29帧、38帧矩形方框内检测前景点的个数,如图4所示。
图4 原视频帧
采用相同的阈值T,利用帧差法在第29帧前景点个数为1 792,八邻域帧差法统计的前景点个数为3 924;利用帧差法在第38帧统计前景点个数为3 824,八邻域帧差法统计前景点个数为4 633。从结果中可以看到本文所提方法确实对“空洞”进行了填充。
从定性的角度,利用视频序列Sample Video对帧差法和八邻域帧差法进行实验,验证算法的有效性,如图5所示。
图5a为视频序列SampleVideo的第29和38帧;图5b为帧差法得到的运动目标;图5c为本文八邻域帧差法得到的运动目标;从实验结果看出采用八邻域帧差法得到的运动目标内部“空洞”更少,目标更加精确,但同时在图中地面会有少量噪声。所以在算法中加入形态学膨胀和腐蚀操作,膨胀操作进一步填充目标内部空洞,腐蚀消除孤立的噪声点,如图5d。
a 视频帧 b 帧差法 c 八邻域帧差法 d 腐蚀膨胀结果图5 帧差法与八邻域帧差法对比
1.4 精确提取目标信息
虽然采用八邻域帧差法减少了噪声和物体内部“空洞”,但同时带来另外一个问题。由于对结果进行了膨胀处理,导致运动目标变大,对于单个目标对后续处理影响不大,当监控区域存在多个目标且多个目标之间相邻比较近,膨胀处理后,目标将会完全靠拢在一起,导致运动目标轮廓信息不精确,给后续处理如流量统计和追踪带来致命影响。
所以本文把背景差分法和八邻域帧差法的检测结果进行逻辑与操作,其表达式如下
Result(x,y)=d(x,y)⊗Dk,k-1(x,y)
(12)
这样解决了八邻域帧差法产生的目标变大,轮廓不清晰的缺点,同时为背景选择性更新提供更加准确的判决条件。
由于监控区域的环境是变化的,比如物体的移入或者移出、一天之内光照的变化等。所以建立的初始化背景不是一成不变的,需要背景图像自适应跟随真实场景而调整。背景更新的实质是使用当前帧图像不断地修正背景图像,使其更加接近真实场景。常用的背景更新方法为
B(x,y)=(1-α)×B(x,y)+α×I(x,y)
(13)
式中:x为背景的更新速度,其取值范围[0,1],α越大表示对当前背景忘记速度越快,背景更加接近于当前帧;B(x,y)为背景图像;I(x,y)为当前帧。
但是常用背景更新方式对于缓慢移动的目标在背景更新时当前帧与背景不断地加权叠加,会产生一条长长的“拖影”。在进行前景目标判断时,“拖影”将被当作运动目标检测出,影响算法的精确度。所以为提高算法的精确程度,算法使用背景差分和八邻域帧差检测结果进行逻辑与操作,并将结果作为对背景更新的先验条件,即若“与”结果判断为运动目标则不更新,若为背景则更新背景图。其表达式为
(14)
2 实验结果分析
算法以Visual Studio 2010、OpenCV 2.4.9为软件开发工具,利用视频序列PEST2009_sample_1和SampleVideo进行测试,并将本文算法与传统背景减法、帧差法、混合高斯实验结果进行对比,验证本文算法的有效性,如图6所示。从PEETS2009_sample_1采集4帧图像,为别为165帧、180帧、316帧和368帧,SampleVideo分别采集第20帧、28帧、36帧和56帧。
从图6中可以看到,传统背景减法在进行背景建模和更新时存在“鬼影”和“拖影”,导致检测结果存在虚假的目标和“拖影”,如图6c中第3列图片五角星标注部分,图6d中检测目标伴随长长的“拖影”;帧差法检测的结果内部存在大量“空洞”,如图6g显示;图6e,图6f为本文算法检测结果,解决了传统背景减法“鬼影”和“拖影”现象以及帧差法“空洞”问题。图6h为GMM算法检测结果,由于采用第一帧初始化高斯模型,故56帧之前检测结果一直存在“鬼影”问题。GMM在视频序列SampleVideo中需要56帧获得精确的背景,然而本文算法完成背景建模只需要20帧,即可得到可靠的背景图像。
分别利用多个视频序列测试各个算法执行一次消耗的时间,如表1所示。
表1为以上算法执行一次时间消耗,本文算法消耗时间高于背景减法和帧差法,但检测精确度要比背景减法和帧差法高,同时本文算法时间消耗比GMM平均时间减少了6.406 ms。
3 小结
本文提出了背景初始化方法,即使视频初始帧存在运动
a PETS2009_sample_1原始序列
b SampleVideo原始序列
c PETS2009_sample_1 背景减法
d SampleVideo 背景减法
e PETS2009_sample_1本文算法
f SampleVideo本文算法
g SampleVideo帧差法
h SampleVideo GMM
目标,也能获得可靠背景,消除“鬼影”;同时,对帧差法进行改进,减少了目标内部“空洞”和噪声;最后将背景减法和八邻域帧差法相融合,并把结果作为反馈对背景图像选择性更新,消除传统背景减法的“拖影”。但是本文是在默认背景像素点是处于稳定状态最长的灰度值或者运动目标停留在监控区域较为短暂的前提下,本文提出的背景初始化方法才会更加有效。下一步的研究工作重心将放在背景初始化,进一步提高其适用范围,提高目标检测的精确度。
[1] 郭玲.智能视频监控中运动目标检测的算法研究[D].广州:华南理工大学,2013.
[2] CHEUNG S C S, KAMATH C. Robust background subtraction with foreground validation for urban video[J]. Eurasip Journal on Applied Signal Processing,2005(14):2330-2340.
[3] CARRANZA J,THEOBALT C,MAGNOR M A,et al. Free-viewpoint video of human actors[J]. ACM Transactions on Graphics (TOG), 2003, 22(3):569-577.
[4] 丁磊,宫宁生.基于改进的三帧差分法运动目标检测[J].电视技术,2013,37(1):151-153.
[5] 任克强,张盼华,谢斌.自适应学习的混合高斯模型运动目标检测算法[J].计算机工程与设计,2014,35(3):968-974.
[6] 屈晶晶,辛云宏. 连续帧间差分与背景差分相融合的运动目标检测方法[J].光子学报,2014,43(7):219-226.
[7] 屠礼芬,仲思东,彭祺,等.基于高斯金字塔的运动目标检测[J].中南大学学报:自然科学版,2013,35(8):2778-2786.
[8] 苏延召,李艾华,姜柯,等.改进视觉背景提取模型的运动目标检测算法[J].计算机辅助设计与图形学学报,2014,26(2):232-240.
[9] 严金果,徐蔚鸿.基于新的帧间差分运动目标检测算法[J].计算机工程与设计,2013,34(12):4331-4335.
[11] ZHANG H,WU K. A vehicle detection algorithm based on three-frame differencing and background subtraction[C]//Proc. 2012 5th International Symposium on Computational Intelligence and Design (ISCID). Hangzhou:IEEE Press,2012:148-151.
[12] 卢清华,吴志伟,范彦斌,等.基于混合高斯模型的运动车辆检测方法[J].光电子·激光,2013,24(4):751-757.
[13] 袁国武,陈志强,龚健,等.一种结合光流法与三帧差分法的运动目标检测算法[J].小型微型计算机系统,2013,34(3):668-671.
[14] 邱联奎,刘启亮,雷文龙.基于背景减除与三帧差分相融合的运动检测[J].合肥工业大学学报:自然科学版,2014,37(5):572-577.
2016年“CCBN年度创新奖”评选活动正式启动
以“云聚全媒体,智汇新视听”为主题的第二十四届中国国际广播电视信息网络展览会(CCBN2016)将于2016年3月24日至26日在北京中国国际展览中心举行, “CCBN年度创新奖”也将于2016年3月23日揭晓并举行隆重的颁奖典礼。
日前,CCBN年度创新奖组委会已正式启动2016年奖项评选工作,诚征优秀企业、产品、个人积极报名参与。“CCBN年度创新奖”评选活动以彰显广播影视行业优秀产品和技术为宗旨,表彰对推动我国广播影视行业创新发展和科技进步做出杰出贡献的机构和个人。2016年“CCBN年度创新奖”共设立“CCBN2016产品创新奖”、“CCBN2016创意设计奖”、“CCBN杰出贡献奖”、“CCBN组织贡献奖”四大类奖项,评选内容涵盖节目制作与播出,有线、无线、卫星网络传输与覆盖,业务平台与终端设备,融合媒体等多个广播电视通信领域。评奖活动面向全体CCBN参展企业及广电行业中技术领先的企业及个人,以及各级广播电影电视业务运行机构。
Moving Object Detection Combining Background Subtraction and Frame Difference
WANF Kuikui1,YU Zhenming2
(1.SchoolofInformationandCommunication,GuilinUniversityofElectronicScienceandTechnology,GuangxiGuilin541000,China;2.WuzhouUniversity,GuangxiWuzhou543000,China)
To eliminate "ghost" before foreground target detection of background subtraction method, no-moving target background is obtained according to count the frequency of pixel values at each pixel point within image sequence. High-frequency pixel is considered as background pixel. Then the "ghost" is eliminated.To eliminate "holes" inside of detecting result got by frame difference, a new decision criterion is added when judging foreground. The problem of "holes" is improved. For the problem of "image tail" of detected result got by traditional background subtraction, a logic "and" operation is done according to the detection results of the background subtraction and improved frame difference, and the results is regarded as the decision criterion of background update. Experimental results show that the algorithm can obtain accurate background and solve "image tail", "ghost" and "holes", and it fits for the real-time detection.
background initialization;background subtraction;frame difference;background update
国家自然科学基金项目(61562074);广西自然科学基金项目(2013XNSFAA019323)
1.73
A
10.16280/j.videoe.2015.24.023
2015-05-27
【本文献信息】王奎奎,玉振明.融合背景减法和帧差法的运动目标检测[J].电视技术,2015,39(24).
王奎奎(1990— ),硕士生,主要研究运动目标检测,模糊检测;
玉振明(1963— ),博士,主要研究图像融合。
责任编辑:时 雯