李建,蓝金辉,李杰
(1. 北京科技大学 自动化学院,北京,100083;2. 北京理工大学 机电工程学院,北京,100081)
一种新型快速运动目标检测算法
李建1,蓝金辉1,李杰2
(1. 北京科技大学 自动化学院,北京,100083;2. 北京理工大学 机电工程学院,北京,100081)
为了克服光流法计算量大和亮度不连续性引起的运动估计误差,提出一种基于改进帧差法和改进光流法相结合的快速运动目标检测算法。通过改进帧差法,精确获取运动目标区域。利用改进的光流法,在光亮度不连续的情况下,准确地提取运动目标区域特征点的光流,并对光流矢量采用阈值标注,进而检测出运动目标。实验结果表明:该目标检测算法鲁棒性强,计算量小。
改进帧差法;改进光流法;运动目标检测;帧差偏移
运动对象检测是数字图像处理技术的一个重要组成部分,它是计算机视觉、模式识别、目标识别与跟踪、运动图像编码、安全监控等研究领域的重点和难点,在军事、国防和工业等领域有着广阔的应用前景。图像序列运动分析因其巨大的应用价值而受到广泛的重视。它的基本任务是从图像序列中检测出运动信息,简化图像处理过程,得到所需的运动矢量,从而能够识别与跟踪物体[1−2]。在运动检测中,以视频图像中运动目标检测为主。图像序列运动可以分为4种模式:摄像机和目标都静止、摄像机静止但目标运动、摄像机运动且目标也运动以及摄像机运动但目标静止。其中,摄像机静止物体运动是一类非常重要的场景分析,包括运动目标检测、目标运动特性估计。本文主要研究摄像机静止目标运动的情况[2]。现有的图像序列的运动目标检测可以归纳为背景减法、帧差法和光流法等几种。背景减法[3]实现简单,并且能够完整地分割出运动对象,是对背景已知情况下的应用,但该方法在背景变化或复杂的情况下,检测结果很不完善。帧差法[4−7]利用了时空图像的灰度和梯度信息,通过逐像素点灰度的比较,直接求取前后两帧图像之间的差,进而提取运动信息。假设照明条件在多帧图像间基本不变化,那么,帧差图像不为0表明该处的像素发生了移动,即可以将图像中目标的位置和形状的变化表现出来。文献[7]提出一种基于背景减法和帧差法的目标检测方法,该方法在一定程度上减少了计算量,但它不能够完整地分割出运动对象,不利于进行对象分析与识别。光流法[8−12]的优点在于光流不仅携带了运动目标的运动信息,而且携带了有关景物三维结构的丰富信息,它能够在不知道场景任何信息的情况下,检测出运动对象。还有诸多其他算法可以有效提取运动目标[11−16]。文献[11]提出一种基于角点检测的块匹配光流法目标检测方法,该方法可以改善检测效果,但是计算耗时,并且光照变化对效果影响较大。文献[12]提出一种基于光流法和颜色概率分布的特征点匹配方法,该方法误匹配少,精度高,但是效果受到金字塔参数和特征区域大小设置的影响,并且计算耗时,实时性和实用性都较差。文献[13]采用模板匹配检测目标, 但是当目标外形变化较快时, 存在检测精度问题。文献[14]采用基于特征融合的点特征检测目标, 也可用于移动背景下的情况, 但是算法速度较慢。为了克服帧差法和光流法的缺点,并使其优点互补,本文作者给出一种基于这2种方法的适用于序列图像的快速运动目标检测算法,即先用改进帧差法检测出运动物体的运动区域,然后利用改进光流法,提取运动区域中的目标。
帧差法又叫阈值帧间差分法(TIFD),是运动目标检测中使用最多的算法。它的突出特点是实现简单、运算速度快,在大多数情况下检测效果较好。
两帧帧差法基本原理就是将前后两帧图像对应像素点的灰度相减,在环境亮度变化不大的情况下,若对应像素灰度相差很小,则可以认为此处景物是静止的,若图像区域某处的灰度变化很大,则可以认为这是由于图像中运动物体引起的。将这些区域标记,利用这些标记的像素区域就可以求出运动目标在图像中的位置。其效果图如图1所示。
图1 两帧帧差法效果示意图Fig.1 Diagram of two-frame difference algorithm
从图1可知:虽然该方法能检测出动态目标轮廓,但是2幅图像产生的目标轮廓出现了较大的重叠区域(图中灰色区域所示)。相对于真实目标,检测到的目标轮廓范围太大,无法获得准确的目标位置与目标形态信息。
为了获得好的目标轮廓效果,人们提出三帧帧差法[7],其原理如式(1)~(3)所示,效果图如图 2所示,图中边框为目标轮廓。
其中:It(x,y)和It−1(x,y)分别表示第t帧和第t−1帧图像中(x, y)像素的灰度;T为阈值;p(x, y)表示差分操作后图像中坐标为(x, y)的点的像素的灰度。
从图2可知:三帧帧差法检测到的目标轮廓出现部分区域重叠,检测到的目标位置与目标形态信息也会出现偏差。当运动目标的速度比较快的时候,重叠区域更大,检测出的轮廓与目标误差更大。
由于两帧帧差法得到的目标轮廓出现重叠区域,
图2 三帧帧差法效果示意图Fig.2 Diagram of three-frame difference algorithm
相对于真实目标而言,轮廓范围太大,无法获得准确的目标位置与目标形态信息;三帧帧差法检测到的目标轮廓,出现部分区域重叠,因此,提出一种改进的三帧帧差法(ITIFD)。该算法是在三帧帧差法的原理基础上,利用连续三帧图像,通过图像间的“差分”,“与”以及“异或”操作,实现运动目标的准确检测,获得准确的运动目标形态信息。改进帧差法的算法步骤如下。
(1) 第1帧与第2帧做“差分”操作,得到差分图像p1:
(2) 第2帧与第3帧进行“差分”操作,得到差分图像p2:
(3) p1与p2进行“与”操作,得到新图像p3:
(4) p2与p3进行“异或”操作,得到检测结果图像:
(5) p3与p4进行“与”操作,得到检测结果图像:
图3所示为改进算法的效果图。从图3可知:该算法可以准确地获取目标的轮廓。为了验证改进三帧帧差法的性能,采用运动车辆图像进行试验。图4所示为基于改进三帧帧差法进行动态目标检测结果。从图4可以看到:经过第40帧、第41帧、第42帧连续3帧图像的运算,检测到的动态目标是目标的轮廓,没有出现重叠区域。所以,相对于帧差法,该算法具有很好的检测效果。
改进三帧差分法检测运动目标效果好,且易于实现。对于多目标的运动检测,仍可采用此方法作为初始分割,然后,用基于光流场的检测方法,对运动物体进行检测。
图3 改进三帧差分法效果示意图Fig.3 Diagram of improved three-frame difference algorithm
图4 改进帧差法效果图Fig.4 Image of improved algorithm
光流场表达了图像的变化,它包含运动目标的信息,可以用来确定观察者相对目标的运动情况。一般光流场是指图像灰度模式的表面运动,它是一种二维瞬时速度场,其二维速度矢量是可见的三维速度矢量在成像平面上的投影,它包含的信息即是各像点的瞬时运动速度矢量信息。
给图像中的每一个像素点赋予1个速度矢量,这就形成了1个图像运动场。在运动的某特定时刻,图像上的点与三维物体上的点一一对应,这种对应关系可由投影关系得到。根据各个像素点的速度矢量特征,可以对图像进行动态分析。若图像中没有运动目标,则光流矢量在整个图像区域是连续变化的,当物体和图像背景存在相对运动时,运动物体所形成的速度矢量必然和邻域背景速度矢量不同,从而检测出运动物体的位置和形状,对于背景与目标均运动的情形,可以利用光流很好地区分前进的目标和后退的背景,得到它们各自的三维运动信息[8]。
光流的计算是基于物体移动的光学特性的2个假设:(1) 运动物体的灰度在很短的间隔时间内保持不变,给定邻域内的速度向量场变化是缓慢的;(2) 对同一个运动目标,可以认为它有刚体特性,即同一物体每个像素任意时刻其运动速度是一致的。根据这个特性可以检测出目标的轮廓[1−2,17]。
假定时刻t处于图像坐标(x, y)位置的点由于物体的运动在(t+dt)时刻出现在图像坐标(x+dx, y+dy)处,在t时刻该像素的灰度为I(x, y, t),在(t+dt)时刻的灰度为I(x+dx, y+dy, t+dt),dt很小,根据假设认为此点在移动过程中像素灰度不变。即
在实际应用中,光流场的基本方程的灰度不变假设条件往往不能满足,如遮挡性、多光源和透明性等原因。根据 GDIM 模型(generalized dynamic image mode),灰度不是保持恒定,而是变化的,改进的光流场方程可以表示为:
为了准确地求出光流场的分布,在改进光流场方程基础上提出了很多约束条件和计算方法,如微分法、匹配法、频域法和马尔可夫随机场方法等。在实际计算中,基于微分的Horn & Schunck方法用得较多[1−2,18]。
Horn&Schunck根据同一个运动物体引起的光流场应是连续的、平滑的,提出了加在光流场(u, v)上的附加的平滑约束[17−18],即要求式(15)尽可能小;另一方面,根据改进光流场误差约束,要求式(16)尽量小:
式中:Eg为偏离光滑性要求的误差;Ec为基本光流误差。于是,光流场(u, v)的计算归结为求如下的变分问题的解:
式中: 为参数,它决定了Es和Ec这2种误差之间的相对权重。当图像的灰度较精确,则Ec应给以更大的重视,这时 可以取大一些;反之,若图像灰度的测量中含有很多的噪声,Ec反映基本等式的实际偏离情况,则可取较小的值(小于1)。
在实际应用中,由于光流场具有不连续性以及其假设条件的光流场分布是不成立的,若仅针对差值图像中不为0处的像素来计算其光流,则其光流场分布结果比计算整个运动物体的光流场分布结果可靠得多。因为它们这时往往对应于灰度梯度较大的点,而这些点的光流场基本方程近似成立,采用这种方法以后,可使得计算出的光流场分布更为可靠和精确,同时也减少了计算量。
在计算光流值时,存在外部环境的干扰,如阴影、风动、树叶动等造成的背景以及光流矢量的干扰。为消除干扰,根据经验设定光流值的阈值f,P点的光流fP为:
当 fP≥f时,P为目标点,进行光流标注,当fP<f时,P为背景点,不进行光流标注。可以得到比较好的光流矢量。
为了比较该算法,采用了序列图像,图像均为320像素×240像素。该方法运行于OpenCV平台,处理器为intel双核、主频2.0G Hz、内存1 G的笔记本。
当已知光流场的分布时,采用统计误差参数即运动目标的平均光流场分布,但对于实际图像序列,由于不知道光流场的具体分布,采用统计误差参数(displaced frame difference, DFD)简化计算,其定义为:
本文采用平均 DFD(ADFD)作为统计误差参数,即对运动目标的每个像素点的DFD取平均值。对于运动序列图像,提出的算法采用了光流场的基本方程和改进的光流场基本方程来求解运动物体的光流场分布。为了比较方法的优劣,与三帧帧差法与基本光流法结合的检测方法、Horn&Schunck光流法和Lucas&Kanade光流法进行了比较。设改进光流法的阈值T=10,Y=1,光流值的阈值f=40。实验效果图如图5所示,同时也采用了峰值信噪比(PSNR)、统计误差参数DFD和每帧图像的计算时间t来对不同的算法进行比较,计算结果见表 1,检测出的运动目标如图 6所示。
图5 各种算法的实验效果Fig.5 Results of different algorithms
表1 光流场分布计算统计误差和帧图像处理时间比较Table 1 Comparison of calculated statistic error parameters for optical flow field distribution and consume time per frame
图6 改进帧差法和改进光流法的检测结果Fig.6 Detection result of ITIFD+IBOFE
由表1可知:采用本文算法(即ITIFD+IBOFE)的光流场的ADFD参数比基本光流法的要小,并且运算速度最快,信噪比最小,故本文提出的算法优于其他计算方法。
(1) 基于OPENCV提出的快速运动目标检测算法具有运算速度快、计算出的光流场更为可靠的特点,能快速准确地检测出运动目标。结合帧差法和光流场方法的优点,该方法为运动参数和结构参数的估计提供了可靠的基础。
(2) 下一步研究将针对运动目标在重叠或者紧挨着的情况,从光流场的不同分布将运动物体分开。
[1] 郭义江. 基于视频的运动目标检测与跟踪[D]. 上海: 华东师范大学软件学院, 2009: 7−26.
GUO Yijiang. Motion detecting and tracking based on video[D].Shanghai: East China Normal University. School of Software Engineering, 2009: 7−26
[2] 董颖. 基于光流场的视频运动检测[D]. 济南: 山东大学信息科学与工程学院, 2008: 5−35.
DONG Ying. Video motion detection based on optical flow field[D]. Jinan: Shandong University. School of Information Science and Engineering, 2008: 5−35.
[3] Mittal A, Paragios N. Motion-based background subtraction using adaptive kernel density estimation[C]// Proceedings of the 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Anchorage, 2008: 302−309.
[4] Ilea D E, Whelan P F. Image segmentation based on the integration of colour-texture descriptors: A review[J]. Pattern Recognition, 2011, 44(10): 2479−2501.
[5] Fernández-Caballero A, Gómez F J, López-López J. Road-traffic monitoring by knowledge-driven static and dynamic image analysis[J]. Expert Syst Appl, 2008, 35(3): 701−719.
[6] Porro-Munoz D O, Duin R P W, Talavera I. Classification of three-way data by the dissimilarity representation[J]. Signal Processing, 2011, 91(11): 2520−2529.
[7] WENG Muyun, HUANG Guoce, DA Xinyu. A new interframe difference algorithm for moving target detection[C]//Proc International Congress on Image and Signal Processing. Yantai,China, 2010: 285−289.
[8] Radgui A, Demonceaux C, Mouaddib E. Optical flow estimation from multichannel spherical image decomposition[J]. Computer Vision and Image Understanding, 2011, 115(9): 1263−1272.
[9] Alvarze L, Weickert J. Reliable estimation of dense optical flow fields with large displacements[J]. Computer Vision, 2009, 39(1):41−56.
[10] Javier D, Eduardo R, Rodrigo A. Super pipelined highperformance optical-flow computation architecture[J]. Computer Vision and Image Understanding, 2008, 112(3): 262−273.
[11] SHEN Meili, SONG Huajun. Optical flow target tracking method based on corner detection[J]. Chinese Journal of Electron Devices, 2007, 30(4): 1397−1399.
[12] 杨艳, 康戈文. 基于光流法和颜色概率分布的特征点匹配[J].现代电子技术, 2009, 33(16): 129−131.
YANG Yan, KANG Gewen. Optical flow and color distribution based feature point matching[J]. Modern Electronics Technique,2009, 33(16): 129−131.
[13] 逯新华, 史忠科. 基于动态模板匹配的空中运动目标检测与跟踪控制[J]. 电子测量与仪器学报, 2010, 25(10): 935−941.
LU Xinhua, SHI Zhongke. Detection and tracking control for air moving target based on dynamic template matching[J]. Journal of Electronic Measurement and Instrument, 2010, 25(10):935−941.
[14] 王进花, 曹洁. 一种基于特征融合的点特征目标跟踪算法[J].电子测量与仪器, 2010, 24(6): 537−541.
WANG Jinhua, CAO Jie. Object tracking algorithm based on the feature fusion points[J]. Journal of Electronic Measurement and Instrument, 2010, 24(6): 537−541.
[15] 齐美彬, 汪巍, 蒋建国. 动态场景下的快速目标检测算法[J].电子测量与仪器学报, 2011, 25(9): 756−761.
QI Meibin, WANG Wei, JIANG Jianguo. Rapid moving object detection under a dynamic scene[J]. Journal of Electronic Measurement and Instrument, 2011, 25(9): 756−761.
[16] 李劲菊, 朱青, 王耀南. 一种复杂背景下运动目标检测与跟踪算法[J]. 仪器仪表学报, 2010, 31(10): 84−89.
LI Jinju, ZHU Qing, WANG Yaonan. Detecting and tracking method of moving target in complex environment[J]. Chinese Journal of Scientific Instrument, 2010, 31(10): 84−89
[17] Horn B K P, Schunck B G. Determining optical flow[J]. Artificial Intelligence, 1981, 17: 185−203.
[18] Cucchiara R, Grana C, Piccardi M, et al. Detecting moving objects, ghosts, and shadows in video streams[J]. IEEE Trans Pattern Anal Mach Intell, 2003, 25(10): 1337−1342
(编辑 赵俊)
A novel fast moving target detection method
LI Jian1, LAN Jinhui1, LI Jie2
(1. School of Automation and Electrical Engineering, University of Science & Technology Beijing,Beijing 100083, China;2. School of Mechatronical Engineering, Beijing Institute of Technology, Beijing 100081, China)
In order to overcome the large amount of computation and the inaccuracy of motion parameter estimation due to lightness discontinuity by optical flow algorithm, a fast moving target detection method on the basis of the improved interframe difference algorithm and the improved optical flow algorithm was proposed. According to the improved three-frame difference algorithm, the region of the moving target was extracted accurately. By the improved optical flow algorithm, the optical flow value of the moving target in the region was extracted exactly under the condition of the lightness discontinuity, and the moving target can be detected precisely by the threshold value of optical flow vector. The experiment results show that the method has good robust and small computation.
improved frame difference algorithm; improved optical flow algorithm; moving target detection; displaced frame difference
TP391
A
1672−7207(2013)03−0978−07
2012−03−12;
2012−06−18
国家自然科学基金资助项目(61174181);北京市自然基金资助项目(4102038);国家“十二五”计划项目(B2220110011);北京科技大学钢铁流程先进控制教育部重点实验室项目(2011);中央高校基本科研业务费专项资金资助(FRF-AS-11-004B)
蓝金辉(1967−),女,吉林长春人,教授,从事视频图像处理、目标识别、智能交通研究;电话:010-62334961;E-mail: jh.lan@263.net