APP下载

运动目标检测的三帧差法算法研究

2011-09-04王孝艳张艳珠董慧颖李小娟

沈阳理工大学学报 2011年6期
关键词:差法二值形态学

王孝艳,张艳珠,董慧颖,李 媛,李小娟

(沈阳理工大学信息科学与工程学院,辽宁沈阳110159)

随着信息技术的发展,人类对数字视频的应用越来越广泛[1]。运动目标检测与跟踪是一个很重要的应用方向[2]。运动目标检测技术是从数字视频中将运动目标和背景区分开,并从中提取出运动的目标,从而应用到银行、高速公路、小区等智能监控系统中。运动目标检测效果的好坏直接影响到以后关于运动目标跟踪的结果。

目前,运动目标检测的方法较多,常用的有背景减除法(background subtraction)、光流法(optical flow)[2]和帧差法(temporal difference)[3-4]。背景减除法首先要通过视频建立背景图像的像素模型,然后通过对每帧图像和背景图像进行对比,得到运动目标。这种方法需要考虑背景模型的表示及初始化和背景更新的方法等。光流法的主要任务是计算光流场,即在适应的平滑约束性条件下,根据图像序列的时空梯度估算运动场,通过分析运动场的变化对运动目标和场景进行分割。但这种方法计算相当复杂,且抗噪性能差,不能很好地应用于实时监控中。帧差法则是对相邻两帧的图像进行差分,并设定一个阈值,认为差分结果大于阈值的像素点就是运动目标。这种方法因其计算量小、实时性高,在目标检测中比较常用[5-6]。不过,大部分方法的检测结果都会伴有大量的噪声。在此,使用三帧差法检测运动目标,采用运动图像形态学的方法对得到的结果进行优化处理,利用MATLAB实现,验证文中提出的方法。

1 帧差法检测运动目标

对于摄像机静止时拍摄的视频序列,首先对第k帧及k-1帧图片进行平滑去噪,再做帧差法处理,用第k帧图片减去第k-1帧图片,得到二值图像。公式表示为

式中,T为预先设定的阈值,可根据经验选取。若T选取过大,则检测的目标则可能出现较大的空洞甚至漏检,若T选取过小,将会出现大量噪声。

从帧差法的公式可以看出,如果运动目标匀速运动,帧差法得到的运动目标会比较一致,但当目标加速或减速运动时,检测到的运动目标会存在多检或者少检。其次,帧差法检测出的运动目标中包含两帧中的运动信息,这样会检测出较多的目标点。为了改进帧差法的不足,提出了三帧差法[5]。

三帧差法首先对连续的三帧图片进行平滑去噪,再分别做帧差法处理,用第k帧图片减去第k-1帧图片,得到二值图像D1(x,y),再用第k+1帧图片减去第k帧图片,得到二值图像D2(x,y),最后用D1(x,y)和D2(x,y)进行“与”运算,便可得到三帧差图像D(x,y)。公式表示为

帧差法的原理如图1所示。其中,图1a、图1b和图1c是连续的三帧图片,两帧差法的结果如图1d和图1e所示,三帧差法的结果如图1f所示。从图中可以看出,三帧差法检测的结果更加完整,比两帧差法检测的结果更接近实际的运动目标。

图1 帧差法原理图

Grzegorz M.Wojcik 等人[6]采用三帧差法,即分别对连续三帧图像中前帧与中间帧,中间帧与后帧进行两帧差分运算,定义连续三帧序列图像前后灰度帧差重合的部分,作为中间帧运动目标的边缘,这样可有效遮挡前后帧的遮挡问题。李秋林等人[7]采用三帧差法和二维交叉熵阈值法相结合的方法对运动车辆进行检测。三帧差法充分考虑了运动像素的时间相关性,对动态检测比较灵敏,对随机噪声也有很好的抑制作用,但也存在一定缺陷,即差分图像的检测阈值需手动设定,大多数情况下只能依据实践经验。

2 数学形态学原理

数学形态学在图像处理中的主要作用是对图像中目标的几何参数或者灰度值进行变换。常用的方法有腐蚀、膨胀、开运算、闭运算和形态学重构等。本文主要使用腐蚀和膨胀两种最基本的形态学运算。膨胀具有扩大图像的作用,即将图像的边缘扩大些,将目标的边缘或者是内部的坑填掉。图2简单说明了膨胀运算的作用。图2a显示包含一个简单的二值图像;图2b为一个结构元素,在此例中它是一条8个像素长的曲线,并用方框表明结构元素的原点;图2c所示的是图2a被图2b膨胀的结果。

图2 膨胀示例

腐蚀具有收缩图像的作用,即去除图像中的噪声,将目标边缘的“毛刺”踢除掉。图3简单说明了腐蚀运算的作用。图3a显示包含一个简单的二值图像;图3b为一个结构元素,在此例中它是一条3个像素长的直线,并用方框表明结构元素的原点;图3c所示的是图3a被图3b腐蚀的结果[8-9]。

图3 腐蚀示例

在数学上,膨胀和腐蚀的定义都是集合运算。A被B膨胀,记为A⊕B,定义为A⊕B={z|(^B)z∩A≠φ};A被B腐蚀,记为AΘB,定义为:AΘB={z|(B)z∩AC≠φ}。其中φ为空集,B为结构元素。

3 基于数学形态学的帧差法

文中首先采用改进的帧差法,即三帧差法对运动目标进行检测,在得到二值图像后,运用数学形态学腐蚀和膨胀的方法对二值图像进行处理。如用数学形态学的方法,大都是运用开闭运算或更复杂的形态学方法对检测结果进行改进,文中只采用腐蚀和膨胀的方法。因为无论是开运算还是闭运算,都是由一对腐蚀和膨胀运算组成的,但腐蚀和膨胀的结构元素是相同的。如果用腐蚀和膨胀的方法对图像进行处理,就可以随意变换结构元素,即将腐蚀的结构元素设置成背景扰动噪声的形态;将膨胀的结构元素设置成目标空洞的形态。和其它形态学方法比较,这两种方法既可以降低计算量,又可以灵活控制结构元素,这样便可以去除噪声,填充目标的空洞,用最快的时间获得最理想的效果。

实验中所用的视频是用Cannon相机在室外拍摄的一组视频,将该视频转化为图片后,共有256帧240×320×3的unit8图片。图4为分别采用三帧差法和文中方法对室外运动的小车进行检测的结果对比图。图4a、图4b、图4c为连续的三帧图片,图4d为三帧差法检测出的运动目标,图4e为本文方法检测结果。文中采用的方法比传统的三帧差法效果好很多,它不仅排除了外界光线强烈变化下对运动目标检测带来的影响,有效去除噪声,并且可以清晰地检测出运动的目标,使得运动目标的轮廓清晰可见。从图4d和图4e的对比可以发现,文中采用的方法增强了检测系统的实时性和准确性。

实验算法如下:

Step1:将连续的三帧图片 fk-1(x,y),fk(x,y),fk+1(x,y)转化为灰度图片(x,y),'(x,y)(x,y);

Step2:利用帧差法求出差分图像,并将图像二值化为 Dk,k-1(x,y)和 Dk+1,k(x,y);

Step3:对 Dk,k-1(x,y)和 Dk+1,k(x,y)进行“与”运算,得到含有运动目标的图像;

Step4:对图像进行图像形态学的处理,得到待检测的运动目标。

图4 检测方法对比图

4 结论

文中采用一种运动目标检测的新方法,即采用改进的帧差法-三帧差法对运动目标进行检测,在得到二值图像后,运用数学形态学中腐蚀和膨胀的方法对二值图像进行处理,与传统方法不同的是,这里每次用的结构元素是根据图像的实际需要选取的。该方法对运动物体所在的环境没有任何约束,所以,这种方法可以应用到很多视频场所中。该算法的特点是计算量小,实时性强,准确性高。大量实验的结果表明,文中的算法有很强的应用性。

对于运动物体的检测,虽然能检测出运动物体大概的轮廓,还会有一些地方被漏检,对其分析原因。原因一,有可能是被漏检的区域像素值变化不是很大,恰好小于帧差法公式中设定的阈值,如果是这种原因,可以考虑改变阈值设定的方法,即不采用传统的根据经验给值,可考虑根据统计理论获得阈值或者设置动态阈值;原因二,可能是成像和光强变化导致黑色小车上一些部分被漏检。这一不足有待改进,将是下一步研究的重点。

[1]Lin Rui,Du Zhijiang,Sun Lining.Moving Object Tracking based on Mobile Robot Vision[C].China:International Conference on Mechatronies and Automation,2009:3625-3630.

[2]Yuqiang Fang,Bin Dai.An Improved Moving Target Detecting and Tracking Based On Optical Flow Technique and Kalman Filter[C].Proceedings of 2009 4th International Conference on Computer Science& Education,2009:1197-1202.

[3]Robert T.Collins,Alan J.Lipton,Takeo Kanade,et al.A system for video surveillance and monitoring:VSAM final report[R].The Robotics Institute,Carnegie Mellon University,Pittsburgh PA,2000.

[4]张 玮,王 平.基于动态背景的视频图像运动检测[J].科技广场,2007,(11):127-130.

[5]何卫华,李平,文玉梅,等.复杂背景下基于图像融合的运动目标轮廓提取算法[J].计算机应用,2006,2(1):123-126.

[6]Grzegorz M.Wojcik,Wieslaw A.Kaminski.Liquid state machine built of Hodgkin-Huxley neurons and pattern recognition[J].Neurocomputing,2004,58-60:245-251.

[7]李秋林,何加峰.基于三帧差法和交叉熵阈值法的车辆检测[J]. 计算机工程.2011,37(4):172-174.

[8]Claudio Rosito Jung.Unsupervised Multiscale Segmentation of Color Images[J].Pattern Recognition Letters ,2007 ,28:523-533.

[9]Rafael C.Gonzalez,Richard E.Woods,Steven L.Eddins.Digital Image Processing Using MATLAB[M].阮秋琦等译.北京:电子工业出版社,2009.

猜你喜欢

差法二值形态学
例谈“定比点差法”在解几问题中的应用
支持CNN与LSTM的二值权重神经网络芯片
基于二值形态学算子的轨道图像分割新算法
基于动态差法的交通量监测技术应用
基于稀疏表示的二值图像超分辨率重建算法
基于曲率局部二值模式的深度图像手势特征提取
关于用逐差法计算纸带加速度合理性的讨论
医学微观形态学在教学改革中的应用分析
“闹”中取静点差法
数学形态学滤波器在转子失衡识别中的应用