(南京工程学院自动化学院,江苏南京,211167)
摘要:基于图像处理技术的交通监控系统能实时反应道路状况和车流信息,系统使用和维护费用相对较低,可广泛应用于路况复杂区域和交叉道口的监控。本文提出了一种基于卡尔曼滤波的多特征匹配的运动目标跟踪。该方法首先基于高斯差分图像金字塔提取出目标的SIFT 特征点,根据该特征点在图像中进行目标检测, 获取目标中心, 再根据目标在下一帧的卡尔曼位置设置预测区域 ,在该搜索区域内结合目标中心和SIFT 特征选取最匹配的目标进行跟踪, 同时以该位置作为观测值, 对卡尔曼滤波参数进行优化。实验结果表明, 该算法在目标发生大尺度旋转和缩放、部分遮挡时能够稳定跟踪,并且具有较好的实时性和鲁棒性。
关键词:监控视频;SIFT 特征;卡尔曼滤波;目标跟踪;颜色直方图
0 引言
智能视频监控技术是融合了计算机视觉、智能视频分析、网络技术等的综合性技术,在交通监测等诸多公共场所发挥着重要作用。对车辆等运动目标跟踪的基本类型包括对车辆轮廓、车辆特征或者车辆模型的跟踪。目前常用的跟踪方法有基于均值漂移(Mean Shift)、粒子滤波以及卡尔曼滤波等。Mean Shift 算法,利用加权颜色直方图描述目标并寻求Bhattacharyya 系数局部极大值位置以实现跟踪,它能一定程度地解决部分遮挡或者视角的变化问题。粒子滤波器算法是基于递推计算的序列蒙特卡罗算法,它通过寻找一组随机样本对概率密度函数进行近似,来获取状态最小方差分布的过程。但是该类方法中表征目标的特征是人为经验的总结,不具有自适应性,不能满足复杂环境下跟踪的稳定性要求;同时跟踪精度及有效性的提高都会增加算法的复杂度,相应地带来算法实时性较差等问题。因此好的跟踪算法要求具备鲁棒性强和实时性好两大重要特征。
本文所提出的基于卡尔曼滤波的目标跟踪融合算法,该算法是基于高斯差分图像金字塔提取出目标的SIFT 特征点,根据该特征点在图像中进行目标检测, 获取目标中心, 再根据目标在下一帧的卡尔曼位置设置预测区域 ,在该搜索区域内结合目标中心和SIFT 特征选取最匹配的目标进行跟踪, 同时以该位置作为观测值, 对卡尔曼滤波参数进行优化。将两种算法所得到的跟踪结果进行融合。
1 SIFT 特征点描述
在目标进行匹配之前,首先需要找出目标在不同的状态时的局部共性特征,SIFT(Scale Invariant Feature Transform)特征就是这样一种统计目标局部特征的算子。传统的特征点提取往往是直接提取角点或者边缘像素点SIFT 是D.lowe 提出的具有尺度和旋转不变性的特征点,本质上是基于高斯差分图像金字塔的多尺度极值点检测和梯度方向的表达,在图像发生旋转、缩放或者反射变换时仍能保持特征点提取的高匹配准度和强鲁棒性。交通视频监控中,存在较多车辆之间的遮挡及车辆由远及近的缩放变化情况,同时也有对目标跟踪精度的高要求而SIFT 的特征非常适合应用于目标跟踪中。
SIFT 特征提取匹配的过程如图1 所示
2 颜色直方图
颜色直方图是一种经常被使用的颜色统计特征,相比其他统计特征,它对物体的旋转、尺度缩放不敏感,鲁棒性强且计算简单。颜色直方图表是目标的颜色特征,因此,两目标的相似性就转化成两个颜色直方图的相似性判断。HSV 颜色空间的色调H、饱和度S 和亮度V 分量之间相互独立,符合人眼观察彩色的方式, 而且从RGB 空间到HSV 空间的转化只是简单的非线性转换,所以对颜色特征的分析常常在HSV 空间里进行。由于人眼对色调的感知能力最强,所以对H、S、V 三个分量进行非均匀量化。本文首先将RGB转化为HSV空间,再采用 Euler距离来计算颜色直方图。
(1)
其中 f ,h 分别表示两个物体在HSV 空间的颜色直方图。考虑到人眼对不同分量的感知能力差别,将色调H 量化为8 个等级, 饱和度和亮度分别量化为3 个等级。由于在亮度过低时,饱和度和亮度等变得不可靠,因此文中将亮度V 小于0.15 量化为0(黑色),即令h=0,s=0,v=0 ;将亮度大于0.8 且饱和度小于0.1 的部分像素量化为1(白色),即令h=0,s=0,v=1,色彩空间的量化h[0,360] ,s[0,1],v[0,1]。依据HSV 空间的非均匀量化方式, 将色调、饱和度、亮度用一维特征向量表示为:
G = H Qs Qv + S Qv + V (2)
其中, Qs 和Qv 分别是分量s 和v 的量化级数3,G 的取值范围为[0,71]。
3 卡尔曼滤波
维纳滤波是最早的线性滤波理论,由于需要无限过去的数据,难以保证实时性。为了克服这一缺点,Kalman 提出了卡尔曼滤波理论。要使的最后真实结果和滤波结果完全相等是不可能, 只能做到近似,Kalman 选择最小均方误差为准则,并引入了状态空间模型来进行递推估计。在涉及目标跟踪的导航、雷达、监控等领域中经常使用卡尔曼滤波器。其基本过程是:采用信号与噪声的状态空间模型,以“预测- 实测- 修正”顺序递推,利用前一时刻地信息对现时刻的状态变量进行估计,并以现时刻的真实观测值对前一时刻的模型进行调整。将目标状态方程作为状态函数,将实测的目标位置作为测量方程,其过程可以表示为:
系统的状态方程为:
(3)
系统的观测方程为:
(4)
其中,X(k) 为k 时刻的系统状态,包含位置坐标及其速度和加速度;u(k) 为k 时刻的控制量;Z(k) 是k 时刻的实际观测值;H 是观测系统的参数;w(k) 和v(k) 分别表示状态过程噪声和观测的噪声,方差分别为Q,R。
状态的预测方程(先验估计)
(5)
(6)
其中是利用k-1 时刻的状态预测的结果, 是上一状态的最优结果, 值是对应的协方差,A´ 是A 的转置, Q 是系统协方差。在获得实际观测值后,我们可获得现在状态的最优估计值:
(7)
(8)
其中是k 时刻的先验估计;是k 时刻的后验估计;K(k) 为卡尔曼增益;是估计值和实测值的误差; H´ 为H 的转置矩阵。此外为了连续地对最优值进行估计,需要更新的方差:
(9)
卡尔曼滤波器的使用基于重要的假设:被建模的系统是线性的,事实上大多数应用中的模型都是非线性的情况。这时候仅仅使用Kalman 滤波器是不够的,因此Kalman 滤波器被扩展,称为扩展卡尔曼滤波器。扩展卡尔曼滤波器其实是通过相关过程线性化的特殊卡尔曼滤波器。
4 车辆跟踪
4.1 多特征的择优匹配
仅依靠提取的SIFT 特征点进行车辆的匹配会造成误匹配, 且SIFT 特征的提取都是在灰度图内。人眼在识别目标时,车辆的颜色、轮廓、亮度、角点等都是关键的区别特征点,是多维的特征向量,所以,如果想更高精度的实现车辆之间的匹配,就需要综合多种特征。
由于SIFT 特征具有尺度不变性和旋转不变性,它是在灰度域内利用兴趣点来表述目标。颜色直方图在色调、饱和度和灰度进行了非均匀量化,突出了色调的量化,弱化了饱和度和灰度,颜色直方图从颜色信息上对目标进行了统计性的描述。因此,SIFT 特征和颜色直方图在对目标特征的表征具有一定的互补性,综合两种特征的匹配算法能够较大提高目标的匹配精确性。在基于监控视频的目标跟踪中,如果光照条件较好,纹理信息较为丰富时,综合颜色直方图具有更强的可信度,而如果在光照条件差的情况下,SIFT 特征会比颜色信息有更高的可信度。
4.2 卡尔曼滤波的目标跟踪
卡尔曼滤波的一个典型应用就是从有限的包含目标位置、噪声的观测值中预测出目标的下一时刻的状态。在监控视频中,目标跟踪就是在从当前帧检测出的多个前景块中选出与已确定目标相对应的目标,从而得到目标车辆的运动轨迹的过程。在此过程中利用卡尔曼滤波器来预测位置和目标中心的变化,再通过多特征的匹配对目标进行精确定位。需要考虑的主要问题有如何提取选取的特征;如何在下一帧中搜索目标;匹配相似度如何测量;匹配之后如何对卡尔曼进行优化?
在视频中车辆在相邻帧间运动近似为匀速运动,则目标的状态变量为目标的位置坐标和速度,系统为线性状态模型:
(10)
t) 表示估计误差。目标状态的状态向量如式11、12 所示:
(11)
(12)
其中(x,y) 表示目标中心的位置坐标,Vx、Vy 表示x、y 方向上的速度,状态转移矩阵如下式所示:
(13)
上式中t 为两帧相差的时间。
车辆在下一帧的预测位置是通过过去的观测值来预测的,且目标状态和观测值之间是线性关系,则
y(t)=H(t)x(t)+v(t) (14)
(15)
这里y(t)、H(t)、v(t) 分别代表观测向量、观测矩阵、观测误差。这样就定义了运动车辆的状态方程和观测方程,根据卡尔曼的预测位置在下一帧的预测区域内搜索,节省了搜索时间。
本文在使用卡尔曼滤波器实现目标跟踪时,首先对卡尔曼滤波器的参数初始化,用x(t) 赋予车辆的位置和速度信息,然后对目标车辆所预测的区域内设置搜索区域,寻找最佳匹配目标,最后根据目标的不同状态对Kalman 滤波器进行参数优化。
总的来说,用卡尔曼滤波器实现对目标车辆的跟踪主要分为四步走:
第一步根据目标检测的结果,计算目标的中心、SIFT 特征、颜色直方图等特征点;
第二步根据目标在下一帧的卡尔曼预测位置设置预测区域, 在此区域内选取符合条件的候选目标逐个进行匹配;
第三步分别对SIFT 特征、颜色直方图、目标中心等特征定义相似性函数,选取最佳匹配目标。
第四部根据目标的状态(如正常跟踪、跟踪丢失、融合分裂、目标进入退出)对Kalman 滤波器参数进行优化。基于卡尔曼滤波的跟踪如图2 所示:
图 2 基于Kalman 滤波的跟踪流程
5 试验结果与讨论
实验是基于Windows 平台,在VC6.0 结合Opencv 1.0 视觉库的环境下,视频图像大小为320×240,实验选取不同车型、不同颜色、不同纹理丰富度的车辆,分别对目标的跟踪性能进行测试。实验显示了对多个目标的跟踪结果,A、B、C 三个区分别对应目标进入区、目标跟踪区和目标退出区。其进入区和退出区的设置是为了辅助判别是新目标出现还是目标即将退出。感兴趣区域用红色线框标明。图(a) 的车辆满足要求的特征点数较多,因此在目标进行匹配时选取该兴趣点,图(a)和图(b)显示了仅用SIFT 特征就能对目标车辆进行稳定准确的跟踪。图(c)和(e)中的目标车辆提取的SIFT 点数较少,仅选用该特征匹配时可靠度较差,这时选用综合颜色直方图作为特征描述,图(c)和(f)都显示出了对目标的准确跟踪。可见,根据不同目标动态选择其匹配特征的算法对不同车辆都有较好的跟踪效果,如仅选用SIFT 特征会导致目标跟踪失败。
在实验过程中,对确定目标都能准确跟踪,没有出现目标丢失的情况。由于不同目标选用特征点不相同,每帧的处理时间均不同,平均每帧的处理时间约73ms。在车辆较多、且纹理复杂的情况下,由于有大量的SIFT 特征点提取匹配,因此,帧处理时间会偏长。
6 结论
本文假设在交通视频中的车辆做匀速运动,并根据这一特点结合卡尔曼滤波器的基本原理建立卡尔曼滤波器模型。以目标车辆的中心位置以及速度组成状态向量,建立状态转移方程,对目标检测部分检测出的车辆进行跟踪。首先,在目标的特征上选取SIFT 特征和对颜色和轮廓进行综合描述综合颜色直方图作为目标特征,分别给出两种特征的匹配算法,并对不同类型的车辆选择可信度较高的特征进行匹配。然后,对多个目标进行算法设计,经过实验验证,基于卡尔曼滤波的多特征跟踪算法能可靠地跟踪目标。因此本文提出的方法实用、可行,为提高智能交通监控系统的可靠性进行了有益的探索。
参考文献
[1] 万琴,王耀南. 基于卡尔曼滤波器的运动目标检测与跟踪[J]. 湖南人学学报,2007,34(3):36-40
[2] 侯志强,韩崇昭.基于像素灰度归类的背景重构算法[J].软件学报,2005,16(09),1568 ~ 1575].
[3] 任臣,张覃平. 基于Kalman 滤波理论的运动目标检测新方法[J]. 光电工程,2007,34(4):7-11
[4] Cheng F H,Chen Y L.Real time multiple objects tracking and identification based on discrete wavelet transform[J],Pattern Recognition, 2006, 39, 1126 ~ 1139.
[5] 钟琨,路小波,一种基于YUV 彩色空间的运动车辆阴影消除方法[J]. 交通与计算,2007,3,Page(s):110-113
[ 6 ] S a l v a d o r E , C a v a l l a r o A . E b r a h i m i T . S h a d o w indentification and classification using invariant c o l o r m o d e l s [ A ] . P r o c e e d i n g s o f 2 0 0 1 I E E E International Conference on Acoustics, Speech,and Signal Processing [C],Salt Lake City, USA:IEEE Computer Society, 2001,3:1545 ~ 1548.
[7] 张洁. 基于颜色特征的图像检索的研究与实现[D]. 吉林大学,2006
[8] Kornprobst P,Deriche R,Aubert G.Image sequence analysis via partial difference equations[J]. Journal of Mathematical Imaging and Vision,1999, 11(1), 5 ~ 26.
[9] Gonzalez R C,Woods R E. 阮秋琦等译.Digital Image Processing.Second Edition[M].北京:电子工业出版社, 2003.3.
[9] 钟小品,薛建儒,郑南宁,平林江. 基于融合策略自适应的多线索跟踪方法[J]. 电子与信息学报,2007,29(5):1017- 1022.
[10] 徐波. 智能交通系统中车辆提取与计数算法研究[D]. 大连海事大学,2006