视频目标检测与跟踪算法综述1、引言运动目标的检测与跟踪是机器视觉领域的核心课题之一,目前被广泛应用在 视频编码、智能交通、监控、图像检测等众多领域中。
本文针对视频监控图像的运动目标检测与跟踪方法,分析了近些年来国内外的研究工作及最新进展。
2、视频监控图像的运动目标检测方法运动目标检测的目的是把运动目标从背景图像中分割出来。
运动目标的有效分割对于目标分类、跟踪和行为理解等后期处理非常重要。
目前运动目标检测算法的难点主要体现在背景的复杂性和目标的复杂性两方面。
背景的复杂性主要体现在背景中一些噪声对目标的干扰,目标的复杂性主要体现在目标的运动性、突变性以及所提取目标的非单一性等等。
所有这些特点使得运动目标的检测成为一项相当困难的事情。
目前常用的运动目标检测算法主要有光流法、帧差法、背景相减法,其中背景减除法是目前最常用的方法。
2.1 帧差法帧差法主要是利用视频序列中连续两帧间的变化来检测静态场景下的运动目标,假设(,)k f x y 和(1)(,)k f x y +分别为图像序列中的第k 帧和第k+1帧中象素点(x ,y)的象素值,则这两帧图像的差值图像就如公式2-1 所示:1(1)(,)(,)k k k Diff f x y f x y ++=- (2-1)2-1式中差值不为0的图像区域代表了由运动目标的运动所经过的区域(背景象素值不变),又因为相邻视频帧间时间间隔很小,目标位置变化也很小,所以运动目标的运动所经过的区域也就代表了当前帧中运动目标所在的区域。
利用此原理便可以提取出目标。
下图给出了帧差法的基本流程:1、首先利用2-1 式得到第k 帧和第k+1帧的差值图像1k Diff +;2、对所得到的差值图像1k Diff +二值化(如式子2-2 示)得到Qk+1;3、为消除微小噪声的干扰,使得到的运动目标更准确,对1k Q +进行必要的滤波和去噪处理,后处理结果为1k M +。
111255,,(,)0,,(,)k k k if Diff x y T Q if Diff x y T+++>⎧=⎨≤⎩ (T 为阈值) (2-2)帧差流程图从结果看在简单背景下帧差法基本可检测到运动目标所在的位置,而且计算简单,复杂度低。
当图像采样间隔较小时,帧差法对图像场景变化不敏感,这是帧差法的优点,但同时目标部分漏检的可能性增大了,容易使检测到的目标出现空洞。
在实际应用中,由于帧差法的简易性,帧差法经常作为某些改进算法的基础。
2.2 光流法光流的概念[30,31]是由Gibson 在1950 年首先提出的,光流理论在计算机视觉,三维运动分析中有着非常广泛的作用。
外界物体由于运动在人的视网膜上产生一系列连续变化的信息,这些信息就如同是光的流一样不断从眼中流过,故此称之为光流。
1981 年Horn 和Schunck 创造性的将二维速度场和我们通常所说的图像的灰度联系在一起,提出了光流约束方程,从而使得光流的计算有了最基本的方法。
随后光流法不断发展,按照理论基础分为:微分法,快匹配法,基于能量的方法,基于相位的方法,其中尤以微分法最为常用,该方法主要是基于下面两种假设:1、强度不变假设,即在一组连续的二维图像序列中,某个目标的运动轨迹在各帧中对应的像素点具有相同的灰度值。
2、全局平滑假设,即物体的运动矢量是局部平滑的或只有缓慢变化。
特别是刚体运动,各相邻像素点具有相同的运动速度,即速度平滑。
这时,光流矢量梯度的模值的平方应该最小,用x 和y 分量的拉普拉斯算子的平方和来表征光流场的平滑程度。
假如给定一个图像上m 点坐标为(x ,y),且它在t 时刻的象素值为(,,)I x y t 在t t d +时刻该点运动到(,)x y x d y d ++,象素值为:(,,)x y t I x d y d t d +++则在强度不变的假设下:(,,)(,,)x y t I x d y d t d I x y t +++= (2-3)公式2-3即为光流约束方程,将式2-3泰勒展开,并令t d 趋于0,我们可以得到:0x y t I u I v I ++= (2-4)其中x I I x =∂∂,y I I y =∂∂,t I I t =∂∂,x t u d d =,y t v d d =,(,)u v 即为像素点在图像平面运动产生的瞬时速度场也即光流场。
光流法的主要任务就是通过求解光流约束方程求出u 、v ,但是由于只有一个方程,并不能唯一确定u 和v ,这就用到了第二个假设,在该假设下就是要使得:222222(()(()()()()))min u u v v x y t x y x y x yE I u I v I a d d ∂∂∂∂=++++++=∂∂∂∂⎰⎰ (2-5) 其中α 是个权重系数,一般取0.5,这样联合(2-4)式和(2-5)式即可得到:12221222[][][][]n n n n t x x y x y n n n n t y x y x y u u I I u I v I a I I v v I I u I v I a I I +---+---⎧=-++++⎪⎨=-++++⎪⎩ (3-6) 从推导的过程看,光流法的计算非常复杂,难于满足实时性的要求,且在目 标提取时对噪声很敏感,所以此算法还难以直接在实际中推广使用。
2.3 背景减除法背景减除法是将视频帧与背景模型进行比较,通过判定灰度等特征的变化,或用直方图等统计信息的变化来判断异常情况的发生和分割出运动目标。
基于背景差的方法,概念非常清晰。
该方法与帧差法相比,可以检测出短时间静止的目标,如短时间静止的车辆(长时间静止的车辆可以归为背景),且不受车速快慢的限制;与光流法相比,背景差法可以通过简化算法,降低计算量,满足视频检测的实时性要求。
但随着研究的不断深人,算法的复杂性也在不断提高,特别是对较复杂场景下的前景(运动目标)检测,如针对光照变化场景下的目标检测(室外的环境光、室内的灯光等),针对含有高噪声场景区域的目标检测(场景中含有树木、水面、旗帜等物体的反复运动),针对场景频繁发生改变(车辆停止、背景中物体搬动等)情况下的目标检测等问题,使得算法的复杂性大大提高。
用背景减除法进行运动目标检测的主要过程包括预处理、背景建模、前景检测和运动区域后处理等。
背景建模是背景减除法的核心环节,目前主要方法有:基于背景的时间差分法、中值滤波法、W4方法、线性预测法、非参数模型法(又称内核密度估计法)、混合Gauss 法、隐马尔科夫模型法(HMM)、本征法、基于均值替换的背景估计法、码本方法等。
目前用无参的核密度估计方法对复杂场景的背景建模正成为背景差方法研究的热点,该方法特别针对具有微小重复运动的场合,如含有摇动的树叶、晃动的灌木丛、旋转的风扇、海面波涛、雨雪天气、光线反射等运动的场合。
由于基于无参的核密度估计的背景建模是对一段视频的统计分析,在对视频图像中的背景进行建模时,计算量很大,这势必会影响算法的实时性,因此需要在提高背景建模的速度与准确率上做大量的研究工作,同时改进模型的适应性。
另外,背景更新策略方面,如何判断是否需要更新背景模型,如何及时的更新背景模型都是现阶段困扰研究人员的问题。
基于无参方法的背景差法主要分为四个步骤:1、利用无参法对背景进行建模,2、核函数带宽选择,3.对背景模型进行更新,4、运动目标的提取。
对于以上三种运动目标的检测方法,帧差法实现最为简单,但目标提取效果较差,该方法通常可以作为某种改进算法的基础。
光流法相对准确,但计算复杂,实时性很差,且对多目标提取困难。
背景差法可以较好的提取目标轮廓,但该方法涉及对背景的建模,建模过程比较复杂。
这些早期提出的移动目标检测方法大都单独地处理各个像素的灰度值或颜色而没有考虑较大尺度上的特征,故可称它们为基于像素的方法。
典型的方法包括均值-阈限方法、高斯混合模型、非参数模型等。
由于这些方法没有充分利用局部像素之间的关系信息,很多有效的图像特征无法得到表示,从而导致移动目标检测精度及效度都受到影响。
后期大量的检测方法都不同程度地利用了局部区域层次的信息,称为基于区域的方法。
典型的基于区域的方法包括纹理方法直方图方法等。
针对移动目标检测的各种像素级、区域级特征不断被提出,它们各有各的优缺点。
如何能够设计一种特征将这些特征统一地结合在一起,从而充分利用各自的优势显得非常有意义。
一种简单的思路是用几种特征组成特征向量,并利用该向量作为各个像素的特征:[,,(,),(,),(,),......]k x y f x y LBP x y I x y I x y3、视频目标跟踪算法运动目标跟踪是在目标检测的基础上,对检测到的目标进行有效跟踪。
目前,在视频监控、人机交互及某些高级的视频系统中,对感兴趣目标的跟踪是其中必不可少的重要环节,它为后面更高级的视觉应用提供有价值的信息。
通常影响跟踪的因素主要有四个:目标模板的表示,候选目标的表示,相似度的衡量和搜索的策略。
衡量跟踪算法优劣的条件有两个,即实时性和鲁棒性,所以一个好的跟踪算法应满足:1. 实时性好:算法要费时少,至少要比视频采集系统的采集速率快,否则将无法实现对目标的正常跟踪。
如果跟踪系统还涉及到其他的图像处理环节,那么就要预留较多的时间给图像处理部分,所以实时性至关重要。
2. 鲁棒性强:实际的观测环境,图像的背景可能很复杂。
光照、图像噪音及随时可能出现的目标遮挡,均使目标的跟踪变得非常困难。
因此算法的鲁棒性对跟踪效果的好坏起着重要的作用。
以上提到的两条很难在系统中同时得以满足,往往需要某种折中,以期得到较好的综合性能。
通常运动目标的跟踪可以分为运动目标检测、运动目标的特征选取和目标的后续跟踪三个阶段。
由此可见跟踪算法远比单纯的目标检测算法复杂的多。
根据被跟踪目标信息使用情况的不同,可将视觉跟踪算法分为:基于对比度分析的目标跟踪、基于匹配的目标跟踪和基于运动检测的目标跟踪。
基于对比度分析的跟踪算法主要利用目标和背景的对比度差异,实现目标的检测和跟踪。
基于匹配的跟踪主要通过前后帧之间的特征匹配实现目标的定位。
基于运动检测的跟踪主要根据目标运动和背景运动之间的差异实现目标的检测和跟踪。
前两类方法都是对单帧图像进行处理。
基于匹配的跟踪方法需要在帧与帧之间传递目标信息。
对比度跟踪不需要在帧与帧之间传递目标信息。
基于运动检测的跟踪需要对多帧图像进行处理。
除此之外,还有一些算法不易归类到以上3类,如多目标跟踪算法或其他一些综合算法。
3.1 基于对比度分析的目标跟踪算法基于对比度分析的目标跟踪算法利用目标与背景在对比度上的差异来提取、识别和跟踪目标。
这类算法按照跟踪参考点的不同可以分为边缘跟踪、形心跟踪和质心跟踪等。