视频目标检测与跟踪算法综述(可编辑修改word版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⎩ 视频目标检测与跟踪算法综述
1、引言
运动目标的检测与跟踪是机器视觉领域的核心课题之一,目前被广泛应用在视频编码、智能交通、监控、图像检测等众多领域中。
本文针对视频监控图像的运动目标检测与跟踪方法,分析了近些年来国内外的研究工作及最新进展。
2、视频监控图像的运动目标检测方法
运动目标检测的目的是把运动目标从背景图像中分割出来。
运动目标的有效分割对于目标分类、跟踪和行为理解等后期处理非常重要。
目前运动目标检测算法的难点主要体现在背景的复杂性和目标的复杂性两方面。
背景的复杂性主要体现在背景中一些噪声对目标的干扰,目标的复杂性主要体现在目标的运动性、突变性以及所提取目标的非单一性等等。
所有这些特点使得运动目标的检测成为一项相当困难的事情。
目前常用的运动目标检测算法主要有光流法、帧差法、背景相减法,其中背景减除法是目前最常用的方法。
2.1 帧差法
帧差法主要是利用视频序列中连续两帧间的变化来检测静态场景下的运动目标,假设 f k (x , y ) 和 f (k +1) (x , y ) 分别为图像序列中的第 k 帧和第 k+1 帧中象素点 (x ,y)的象素值,则这两帧图像的差值图像就如公式 2-1 所示:
Diff k +1 = f k (x , y ) - f (k +1) (x , y )
(2-1)
2-1 式中差值不为 0 的图像区域代表了由运动目标的运动所经过的区域(背景象素值不变),又因为相邻视频帧间时间间隔很小,目标位置变化也很小,所以运动目标的运动所经过的区域也就代表了当前帧中运动目标所在的区域。
利用此原理便可以提取出目标。
下图给出了帧差法的基本流程:1、首先利用 2-1 式得到 第 k 帧和第 k+1 帧的差值图像 Diff k +1 ;2、对所得到的差值图像 Diff k +1 二值化
(如式子 2-2 示)得到 Qk+1;3、为消除微小噪声的干扰,使得到的运动目标更准确,对Q k +1 进行必要的滤波和去噪处理,后处理结果为M k +1 。
Q = ⎧255, i f , Diff k +1(x , y ) > T (T 为阈值) (2-2)
k +1 ⎨0, i f , Diff k +1 (x , y ) ≤ T
帧差流程图
从结果看在简单背景下帧差法基本可检测到运动目标所在的位置,而且计算简单,复杂度低。
当图像采样间隔较小时,帧差法对图像场景变化不敏感,这是帧差法的优点,但同时目标部分漏检的可能性增大了,容易使检测到的目标出现空洞。
在实际应用中,由于帧差法的简易性,帧差法经常作为某些改进算法的基础。
2.2 光流法
光流的概念[30,31]是由 Gibson 在 1950 年首先提出的,光流理论在计算机视觉,三维运动分析中有着非常广泛的作用。
外界物体由于运动在人的视网膜上产生一系列连续变化的信息,这些信息就如同是光的流一样不断从眼中流过,故此称之为光流。
1981 年 Horn 和 Schunck 创造性的将二维速度场和我们通常所说的图像的灰度联系在一起,提出了光流约束方程,从而使得光流的计算有了最 基本的方法。
随后光流法不断发展,按照理论基础分为:微分法,快匹配法,基于能量的方法,基于相位的方法,其中尤以微分法最为常用,该方法主要是基于下面两种假设:
1、强度不变假设,即在一组连续的二维图像序列中,某个目标的运动轨迹在各帧中对应的像素点具有相同的灰度值。
2、全局平滑假设,即物体的运动矢量是局部平滑的或只有缓慢变化。
特别是刚体运动,各相邻像素点具有相同的运动速度,即速度平滑。
这时,光流矢量梯度的模值的平方应该最小,用 x 和 y 分量的拉普拉斯算子的平方和来表征光流场的平滑程度。
假如给定一个图像上 m 点坐标为(x ,y),且它在 t 时刻的象素值为 I (x , y , t ) 在
t + d t 时刻该点运动到(x + d x , y + d y ) ,象素值为: I (x + d x , y + d y , t + d t ) 则在强度不变的假设下:
I (x + d x , y + d y , t + d t ) = I (x , y , t ) (2-
⎩
y x y x y 3)
公式2-3即为光流约束方程,将式2-3泰勒展开,并令d t 趋于0,我们可以得到:
I x u + I y v + I t = 0
4) (2-
其中 I x = ∂I ∂x , I y = ∂I ∂y , I t = ∂I ∂t , u = d x d t , v = d y d t , (u , v ) 即为
像素点在图像平面运动产生的瞬时速度场也即光流场。
光流法的主要任务就是通过求解光流约束方程求出 u 、v ,但是由于只有一个方程,并不能唯一确定 u 和 v , 这就用到了第二个假设,在该假设下就是要使得: E = ((I u + I v + I )2 + a 2 (( ∂u )2 + ( ∂u )2 + ( ∂v )2 + ( ∂v )2 ))d d = min ( 2- ⎰⎰
x y t ∂x ∂ y ∂x ∂ y 5) 其中 α 是个权重系数,一般取 0.5,这样联合(2-4)式和(2-5)式即可得到:
⎧u n +1 = u -n - I [I u -n + I v -n + I t ] [a 2 + I 2 + I 2 ] ⎪
x x y x y ⎨⎪v n +1 = v - n - I 6)
[I u -n + I v -n + I t ] [a 2 + I 2 + I 2 ] (3-
从推导的过程看,光流法的计算非常复杂,难于满足实时性的要求,且在目标提取时对噪声很敏感,所以此算法还难以直接在实际中推广使用。
2.3 背景减除法
背景减除法是将视频帧与背景模型进行比较,通过判定灰度等特征的变化, 或用直方图等统计信息的变化来判断异常情况的发生和分割出运动目标。
基于背景差的方法,概念非常清晰。
该方法与帧差法相比,可以检测出短时间静止的目标,如短时间静止的车辆(长时间静止的车辆可以归为背景),且不受车速快慢的限制;与光流法相比,背景差法可以通过简化算法,降低计算量,满足视频检测的实时性要求。
但随着研究的不断深人,算法的复杂性也在不断提高, 特别是对较复杂场景下的前景(运动目标)检测,如针对光照变化场景下的目标检测(室外的环境光、室内的灯光等),针对含有高噪声场景区域的目标检测(场景中含有树木、水面、旗帜等物体的反复运动),针对场景频繁发生改变(车辆停止、背景中物体搬动等)情况下的目标检测等问题,使得算法的复杂性大大提高。
用背景减除法进行运动目标检测的主要过程包括预处理、背景建模、前景检 x y
测和运动区域后处理等。
背景建模是背景减除法的核心环节,目前主要方法有:基于背景的时间差分法、中值滤波法、W4 方法、线性预测法、非参数模型法(又称内核密度估计法)、混合Gauss 法、隐马尔科夫模型法(HMM)、本征法、基于均值替换的背景估计法、码本方法等。
目前用无参的核密度估计方法对复杂场景的背景建模正成为背景差方法研究的热点,该方法特别针对具有微小重复运动的场合,如含有摇动的树叶、晃动的灌木丛、旋转的风扇、海面波涛、雨雪天气、光线反射等运动的场合。
由于基于无参的核密度估计的背景建模是对一段视频的统计分析,在对视频图像中的背景进行建模时,计算量很大,这势必会影响算法的实时性,因此需要在提高背景建模的速度与准确率上做大量的研究工作,同时改进模型的适应性。
另外,背景更新策略方面,如何判断是否需要更新背景模型,如何及时的更新背景模型都是现阶段困扰研究人员的问题。
基于无参方法的背景差法主要分为四个步骤:1、利用无参法对背景进行建模,2、核函数带宽选择,3.对背景模型进行更新,4、运动目标的提取。
对于以上三种运动目标的检测方法,帧差法实现最为简单,但目标提取效果较差,该方法通常可以作为某种改进算法的基础。
光流法相对准确,但计算复杂,实时性很差,且对多目标提取困难。
背景差法可以较好的提取目标轮廓,但该方法涉及对背景的建模,建模过程比较复杂。
这些早期提出的移动目标检测方法大都单独地处理各个像素的灰度值或颜色而没有考虑较大尺度上的特征,故可称它们为基于像素的方法。
典型的方法包括均值-阈限方法、高斯混合模型、非参数模型等。
由于这些方法没有充分利用局部像素之间的关系信息,很多有效的图像特征无法得到表示,从而导致移动目标检测精度及效度都受到影响。
后期大量的检测方法都不同程度地利用了局部区域层次的信息,称为基于区域的方法。
典型的基于区域的方法包括纹理方法直方图方法等。
针对移动目标检测的各种像素级、区域级特征不断被提出,它们各有各的优缺点。
如何能够设计一种特征将这些特征统一地结合在一起,从而充分利用各自的优势显得非常有意义。
一种简单的思路是用几种特征组成特征向量,并利用该向量作为各个像素的特征:
f k [x, y, LBP(x, y), I
x
(x, y) , I
y
(x, y) , ..... ]
3、视频目标跟踪算法
运动目标跟踪是在目标检测的基础上,对检测到的目标进行有效跟踪。
目前,在视频监控、人机交互及某些高级的视频系统中,对感兴趣目标的跟踪是其中必不可少的重要环节,它为后面更高级的视觉应用提供有价值的信息。
通常影响跟踪的因素主要有四个:目标模板的表示,候选目标的表示,相似度的衡量和搜索的策略。
衡量跟踪算法优劣的条件有两个,即实时性和鲁棒性,所以一个好的跟踪算法应满足:
1.实时性好:算法要费时少,至少要比视频采集系统的采集速率快,否则将无法实现对目标的正常跟踪。
如果跟踪系统还涉及到其他的图像处理环节,那么就要预留较多的时间给图像处理部分,所以实时性至关重要。
2.鲁棒性强:实际的观测环境,图像的背景可能很复杂。
光照、图像噪音及随时可能出现的目标遮挡,均使目标的跟踪变得非常困难。
因此算法的鲁棒性对跟踪效果的好坏起着重要的作用。
以上提到的两条很难在系统中同时得以满足,往往需要某种折中,以期得到较好的综合性能。
通常运动目标的跟踪可以分为运动目标检测、运动目标的特征选取和目标的后续跟踪三个阶段。
由此可见跟踪算法远比单纯的目标检测算法复杂的多。
根据被跟踪目标信息使用情况的不同,可将视觉跟踪算法分为:基于对比度分析的目标跟踪、基于匹配的目标跟踪和基于运动检测的目标跟踪。
基于对比度分析的跟踪算法主要利用目标和背景的对比度差异,实现目标的检测和跟踪。
基于匹配的跟踪主要通过前后帧之间的特征匹配实现目标的定位。
基于运动检测的跟踪主要根据目标运动和背景运动之间的差异实现目标的检测和跟踪。
前两类方法都是对单帧图像进行处理。
基于匹配的跟踪方法需要在帧与帧之间传递目标信息。
对比度跟踪不需要在帧与帧之间传递目标信息。
基于运动检测的跟踪需要对多帧图像进行处理。
除此之外,还有一些算法不易归类到以上3 类,如多目标跟踪算法或其他一些综合算法。
3.1基于对比度分析的目标跟踪算法
基于对比度分析的目标跟踪算法利用目标与背景在对比度上的差异来提取、
识别和跟踪目标。
这类算法按照跟踪参考点的不同可以分为边缘跟踪、形心跟踪和
质心跟踪等。
这类算法不适合复杂背景中的目标跟踪,但在空中背景下的目标跟踪
中非常有效。
边缘跟踪的优点是脱靶量计算简单、响应快,在某些场合(如要求跟踪
目标的左上角或右下角等)有其独到之处。
缺点是跟踪点易受干扰,跟踪随机误差大。
重心跟踪算法计算简便,精度较高,但容易受到目标的剧烈运动或目标被遮挡的影响。
重心的计算不需要清楚的轮廓.在均匀背景下可以对整个跟踪窗口进行计算,不影响
测量精度。
重心跟踪特别适合背景均匀、对比度小的弱小目标跟踪等一些特殊场合。
图像二值化后,按重心公式计算出的是目标图像的形心。
一般来说形心与重心略有差别。
3.2基于匹配的目标跟踪算法
3.2.1特征匹配
特征是目标可区别与其他事物的属性,具有可区分性、可靠性、独立性和稀
疏性。
基于匹配的目标跟踪算法需要提取目标的特征,并在每一帧中寻找该特征。
寻
找的过程就是特征匹配过程。
特征提取是一种变换或者编码,将数据从高维的原始特征空间通过映射,变
换到低维空间的表示根据Marr 的特征分析理论,有4 种典型的特征计算理论:
神经还原论、结构分解理论、特征空间论和特征空间的近似。
神经还原论直接源于
神经学和解剖学的特征计算理论,它与生物视觉的特征提取过程最接近,其主要技术
是Gabor 滤波器、小波滤波器等。
结构分解理论是到目前为止唯一能够为新样本进
行增量学习提供原则的计算理论,目前从事该理论研究的有麻省理T 学院实验
组的视觉机器项目组等。
特征空间论主要采用主分量分析(PCA)、独立分量分析(ICA)、稀疏分量分析(SCA)和非负矩阵分解(NMF)等技术抽取目标的子空间特征。
特征空间的近似属于非线性方法,适合于解决高维空间上复杂的分类问题,主要采
用流形、李代数、微分几何等技术。
目标跟踪中用到的特征主要有几何形状、子空间特征、外形轮廓和特征点等。
其中,特征点是匹配算法中常用的特征。
特征点的提取算法很多,如Kanade LucasTomasi(KLT)算法、Harris 算法、SIFT 算法以及SURF 算法等。
特征点一般
是稀疏的,携带的信息较少,可以通过集成前几帧的信息进行补偿。
目标在运动
过程中,其特征(如姿态、几何形状、灰度或颜色分布等)也随之变化。
目标特征的变化具有随机性,这种随机变化可以采用统计数学的方法来描述。
直方图是图像处理中天然的统计量,因此彩色和边缘方向直方图在跟踪算法中被广泛采用。
3.2.2贝叶斯跟踪
目标的运动往往是随机的。
这样的运动过程可以采用随机过程来描述。
很多
跟踪算法往往建立在随机过程的基础之上,如随机游走过程、马尔科夫过程、自
回归(AR)过程等。
随机过程的处理在信号分析领域较成熟,其理论和技术(如贝
叶斯滤波)可以借鉴到目标跟踪中。
贝叶斯滤波中,最有名的是Kalman 滤波(KF)。
KF 可以比较准确地预测平
稳运动目标在下一时刻的位置,在弹道目标跟踪中具有非常成功的应用。
一般而言,KF 可以用作跟踪方法的框架,用于估计目标的位置,减少特征匹配中的区
域搜索范围,提高跟踪算法的运行速度KF 只能处理线性高斯模型,KF 算法的
两种变形EKF 和UKF 可以处理非线性高斯模型。
两种变形扩展了KF 的应用范围,但是不能处理非高斯非线性模型,这个时候就需要用粒子滤波(PF)。
由于运动变化,目标的形变、非刚体、缩放等问题,定义一个可靠的分布函数是非常困难的,所以在PF 中存在例子退化问题,于是引进了重采样技术。
事实上,贝叶斯框架
下视觉跟踪的很多工作都是在PF 框架下寻找更为有效的采样方法和建议概率分布。
这些工作得到了许多不同的算法。
如马尔可夫链蒙特卡洛(MCMC)方法、Unscented 粒子滤波器(UPF)、Rao—Blackwellised 粒子滤波器(RBPF)等等文献【5】引入了一种新的自适应采样方法——序贯粒子生成方法.在该方法中粒子通过
重要性建议概率密度分布的动态调整顺序产生。
文献【6】根据率失真理论推导了确定粒子分配最优数目的方法,该方法可以最小化视觉跟踪中粒子滤波的整体失真。
文献【7】计算最优重要性采样密度分布和一些重要密度分布之间的KL 距离,分
析了这些重要密度分布的性能。
文献【8】在粒子滤波框架下,采用概率分类器
对目标观测量进行分类,确定观测量的可靠性,通过加强相关观测量和抑制不相
关观测量的方法提高跟踪性能。
除了KF 和PF 之外,隐马尔科夫模型(HMMs)和动态贝叶斯模型(DBNs)
也是贝叶斯框架下重要的视觉跟踪方法。
HMMs 和DBNs 将运动目标的内部状
态和观测量用状态变量(向量)表示,DBNs 使用状态随机变量(向量)集,并在它
们之间建立概率关联。
HMMs 将系统建模为马尔科夫过程。
这些算法的主要区
别
如表1 所示。
表1 贝叶斯跟踪算法
表1 中每个简单的算法都可以看成是下一行复杂算法的特例。
反之,每个复杂算法都可以看成是简单算法的扩展。
其中.DBNs 具有最佳的灵活性,可以处理不同的运动模型和不同的状态变量组合。
DBNs 又可以看作概率图模型(PGMs)的一个例子。
PGMs 的基本思想是用图形的方式将多变量概率分布分解.统计变量用图的节点表示,变量间的条件关系用图的连接或边表示。
PGMs 可以分为有向图(DAGs)和无向图(Ugs)。
前者能够处理时间模式,适合目标跟踪和场景理解等任务。
后者能很好地描述图像像素之间的空间依赖性.适合图像分割和图像分析等任务。
通过组合图理论和概率理论,PGMs 可以用来处理问题描述中的不确定性。
不确定性恰好符合人类视觉系统中天然的概率性和视觉模糊性(如遮挡从3D 到2D 投影的信息损失)。
通过规定概率模型元素之间的关系,PGMs 可以有效地表示、学习和计算复杂的概率模型。
PGMs 能够有效地组合目标的动态信息和外观信息,有效解决目标的运动估计问题,为目标跟踪提供了很好的理论框架。
表1 中算法都可以看成是PGMs 的特殊形式。
3.2.3核方法
核方法的基本思想是对相似度概率密度函数或者后验概率密度函数采用直接的连续估计。
这样处理一方面可以简化采样,另一方面可以采用估计的函数梯度有效定位采样粒子。
采用连续概率密度函数可以减少高维状态空间引起的计算量问题,还可以保证例子接近分布模式,避免粒子退化问题。
核方法一般都采用彩色直方图作为匹配特征。
Mean ShiftI 是核方法中最有代表性的算法,其含义正如其名。
是“偏移的均值向量”。
直观上看,如果样本点从一个概率密度函数中采样得到,由于非零
的概率密度梯度指向概率密度增加最大的方向,从平均上来说,采样区域内的样
本点更多的落在沿着概率密度梯度增加的方向。
因此,对应的Mean Shift 向量应
该指向概率密度梯度的负方向。
Mean Shift 跟踪算法反复不断地把数据点朝向MeanShift 矢量方向进行移动,最终收敛到某个概率密度函数的极值点。
在Mean Shift 跟踪算法中。
相似度函数
用于刻画目标模板和候选区域所对应的两个核函数直方图的相似性,采用的是Bhattacharyya 系数。
因此。
这种方法将跟踪问题转化为Mean Shift 模式匹配问题。
核函数是Mean Shift 算法的核心,可以通过尺度空间差的局部最大化来选择核尺度,若采用高斯差分计算尺度空间差,则得到高斯差分Mean Shift 算法。
Mean Shift 算法假设特征直方图足够确定目标的位置,并且足够稳健,对其
他运动不敏感。
该方法可以避免目标形状、外观或运动的复杂建模,建立相似度的
统计测量和连续优化之间的联系。
但是,Mean Shift 算法不能用于旋转和尺度运
动的估计。
为克服以上问题,人们提出了许多改进算法,如多核跟踪算法、多核
协作跟踪算法和有效的最优核平移算法等。
文献[11]则针对可以获得目标多视角
信息的情况,提出了一种从目标不同视角获得多个参考直方图,增强Mean Shift 跟踪性能的算法。
3.3基于运动检测的目标跟踪算法
基于运动检测的目标跟踪算法通过检测序列图像中目标和背景的不同运动来发现目标存在的区域。
实现跟踪。
这类算法不需要帧之间的模式匹配,不需要在帧间传递目标的运动参数,只需要突出目标和非目标在时域或者空域的区别即可。
这类算法具有检测多个目标的能力,可用于多目标检测和跟踪。
这类运动目标检测方法主要有帧间图像差分法、背景估计法、能量积累法、运动场估计法等。
光流算法是基于运动检测的目标跟踪的代表性算法。
光流是空间运动物体在
成像面上的像素运动的瞬时速度,光流矢量是图像平面坐标点上的灰度瞬时变化率。
光流的计算利用图像序列中的像素灰度分布的时域变化和相关性来确定各自像素位
置的运动,研究图像灰度在时间上的变化与景象中物体结构及其运动的关系。
将二维
速度场与灰度相联系,引入光流约束方程,得到光流计算的基本算法。
根据计算方法
的不同,可以将光流算法分为基于梯度的方法、基于匹配的方法、基于能量的方法、基于相位的方法和基于神经动力学的方法。
文献【12】提出了
一种基于摄像机光流反向相关的无标记跟踪算法,该算法利用反向摄像机消除光
流中的相同成分,得到有效的跟踪效果。
文献【13】将光流算法的亮度约束转化
为上下文约束.把上下文信息集成到目标跟踪的运动估计里,仿照光流算法,提
出了上下文流算法。
文献【14】引入了几何流的概念,用于同时描述目标在空间
上和时间上的运动,并基于李代数推导了它的矢量空间表示。
几何流在几何约束
条件下,将复杂运动建模为多个流的组合,形成一个随机流模型。
该算法在运动估
计中集成了点对和帧差信息。
文献【15】介绍了使用互相关的对光照稳健的可变
光流算法。
文献【l6】提出了基于三角化高阶相似度函数的光流算法――三角流
算法。
该算法采用高阶条件随机场进行光流建模,使之包含标准的光流约束条件和
仿射运动先验信息,对运动估计参数和配准则进行联合推理。
局部仿射形变的相
似度能量函数可以直接计算,形成高阶相似度函数,用三角形网格求解,形成三
角流算法。
3.4其它跟踪方法
视觉跟踪从不同的角度和应用场合出发,会遇到很多不同的问题,比如多模
跟踪、多特征跟踪、上下文跟踪、多目标跟踪、多摄像机跟踪、3D 跟踪和特定
应用的跟踪等。
3.5研究热点及趋势
目前,目标跟踪领域的研究非常活跃,研究的热点主要体现在以下几个方面:1,无参数跟踪系统。
即无论是目标及背景建模、模型更新,还是跟踪算法的定位输出,均不依靠或者少依靠输入参数。
现在许多基于无参的跟踪系统都是在特定环境
中具有良好的性能,因此对此类系统的环境自适应性进行研究具有很大的现实意义。
2,有效组合各种数据的跟踪系统。
组合各种图像数据,如基于颜色分割的图像
数据,基于帧间变化的运动数据,基于减背景的轮廓数据等,可有效提高跟踪系统
的健壮性。
文献[16,19,20]将目标的图像信息和目标的运动信息相结合,能有效
跟踪低速条件下运动状态多变的目标。
3,基于机器学习理论和统计理论的跟踪系统。
跟踪涉及到很多学科,如模式识别,
神经网络等,机器学习理论和统计理论在这些学科中均具有广泛的应用空间,由
此通过这些理论对目标跟踪进行研究也成为一个热点。