李晓东, 刘 畅, 刘 鹏
(哈尔滨工业大学 计算机科学与技术学院, 哈尔滨 150001)
近年来,随着人民生活水平提高,汽车数量快速增长,城市道路负担加重,交通拥堵等问题也不容忽视,国内外对交通事件检测、交通状态判别及交通状态预测的相关理论研究也日益关注。如果能预测未来时刻的道路交通状态,道路状况则能得到大幅度改善。目前,随着计算机技术和人工智能的发展,利用机器学习方法可以预测交通状态,却需要实时采集交通要道的视频、再加以分析处理。在交通预测问题中,目标跟踪是研究热点之一。运用目标跟踪方法可以测量汽车速度、汽车数量以及预测车辆状态变化。目标跟踪问题根据视频第一帧的目标状态预测后面帧中的目标情况。目标跟踪面临的主要挑战有:光照变化、尺度变化、遮挡、形变、运动模糊、快速运动、目标出视场、背景干扰和低分辨率等[1]。
目前,在目标跟踪研究中,经常用到的方法有2种,即:产生式方法和判别式方法。其中,产生式方法主要研究目标外观,在下一帧候选目标中挑选与目标外观相似度最大的候选目标作为新一帧中的目标,代表性方法有增量子空间方法[2]。判别式方法把目标跟踪视为分类问题,即训练分类器区分目标与背景,在下一帧候选目标中,属于目标概率最大的一个被视为新的目标,代表性方法为多示例学习方法[3]。
对于车辆跟踪,国内外研究者进行了大量的研究,并取得了一定的成果。刘悦[4]使用传统方法,用Harr 特征和SVM分类器对车辆进行跟踪。刘国辉等人[5]使用VGG-M网络提取特征,并使用深度神经网络进行二分类来实现车辆跟踪,与传统的车辆跟踪方法的性能相比有明显的改善。徐乐等人[6]使用YOLOv2网络,改善了候选搜索区域的生成质量,并提出加强目标特征信息降低跟踪错误率。
车辆跟踪的研究难点有多个方面。对此可做阐释表述如下。
(1)实时性。道路交通瞬息万变,车辆跟踪算法必须足够快才能满足实际应用需求。
(2)天气因素。在雨雪沙尘等恶劣天气时,可见度低,视频质量较差,跟踪车辆比较难。
(3)干扰目标。车辆之间相似度很高,跟踪车辆时容易发生漂移,转而跟踪干扰物体。
(4)快速运动。车辆运行速度较快,普通运动模型不适合车辆跟踪,且快速运动中目标易丢失。
最新的速度较快、同时精度较高的跟踪方法有相关性滤波,代表性方法为核化相关滤波算法(Kernelized Correlation Filter,KCF)[7]。但是KCF方法跟踪区域较小,不适应快速运动的物体,且抗背景干扰能力较差。Liu 等人[8]提出利用背景信息,建立目标与背景的联系,提高跟踪精度。在跟踪车辆时,同样可以在使用KCF的基础上,既保持较高的运行速度,又利用背景信息,扩大跟踪区域,区分不同车辆,对抗恶劣天气。
在车辆跟踪中,车辆与车辆周围背景对车辆的定位作用是不同的。车辆自身特征用于精确定位,但抗干扰能力差;车辆周围背景能够用来推测车辆位置,不能精确定位,但是抗干扰能力强。分析可知,若能同时利用车辆信息和车辆周围背景信息,就可达到既精确定位又有较强抗干扰能力的跟踪效果。这里为了满足实时性要求,还使用了KCF作为基线跟踪器。
Henriques 等人[7]提出了核化相关滤波算法(KCF),将目标与周围背景一起作为一个样本进行训练,利用循环移位方法构造大量的潜在样本,再使用循环矩阵的特性,用快速傅里叶变换高速训练与跟踪。
KCF是一种判别式方法,使用样本集X=[x1,x2,…,xn]T,和对应标签y=[y1,y2,…,yn]T,训练一个岭回归分类器y=f(x)。样本集X是由一个基础样本x循环移位产生的,岭回归模型参数可以由式(1)进行计算:
(1)
在跟踪时,新样本z可以由式(2)跟踪:
(2)
KCF将目标与背景作为整体来进行训练,容易混淆目标与背景之间的关系,提出用目标特征训练跟踪器KCF1,用背景特征训练跟踪器KCF2,再估计融合参数。当新一帧到来时,使用2个KCF跟踪器分别进行跟踪,使用训练得到的融合参数进行融合,得到跟踪结果。基于背景建模的车辆跟踪框架如图1所示。
图1 基于背景建模的车辆跟踪框架
Fig. 1 Framework of vehicle tracking based on background modeling
为了能利用车辆以及车辆背景的不同作用,研究中需要将车辆与车辆背景分离。对于跟踪区域矩形R,构造一个与R尺寸相同的全零矩阵,然后将其中目标对应的部分填充1,得到目标背景分离矩阵o。在得到上一帧目标位置后,以该位置为中心采样与R尺寸相同的训练区域,提取特征后得到x,于是有:
(3)
其中,xT和xB分别表示车辆目标与车辆背景部分的特征。利用公式(1)可以分别得到KCF1和KCF2的跟踪器参数αT和αB。
2个KCF跟踪器分别使用2个遗忘因子ηT和ηB进行在线更新以适应车辆和车辆背景变化,此时需用到如下数学公式:
(4)
其中,0:t表示从第0帧到第t帧累积的模型参数,t表示第t帧训练得到的模型参数。
车辆模型和车辆背景模型是预测车辆运动的重要线索。在新一帧图像中跟踪目标时,先在上一帧目标位置提取跟踪区域特征z,利用公式(2)可以得到2个KCF跟踪器的跟踪结果yT和yB。令T为车辆目标模型,B为车辆背景模型,不考虑跟踪区域外的信息对车辆定位的影响,根据前面对目标背景的分离方有T∩B=φ和T∪B=U,使用贝叶斯框架融合目标和背景信息,跟踪区域中任一点x是目标位置的概率为:
P(x)=P(x,T)+P(x,B)=P(x|T)P(T)+P(x|B)p(B),
(5)
(6)
对于模型预测可靠度,参考KCF跟踪器的最大响应,即令:
(7)
融合跟踪时目标被定位在P(x)值最大处,即:
xp=arg maxP(x),
(8)
跟踪时使用上一帧的dxt-1,跟踪后,更新dx,则有:
(9)
在车辆目标模型可靠时,目标特征会在跟踪预测中发挥更大作用;在车辆目标模型不可靠时,车辆背景特征会发挥作用,协助定位目标。当获取车辆位置后,使用SAMF方法[9]估计目标尺度。
OTB数据集[1]中共有10个汽车视频,对提出的方法、SAMF方法和KCF方法进行了对比实验。使用的评价指标为距离精度(Distance Precision,DP),重叠成功率(Overlap Success Rate,OS)和平均中心位置误差(Center Location Error,CLE)。
图2给出了在不同阈值下的距离精度曲线和重叠成功率曲线,图例处的数值分别表示阈值为20像素的距离精度,以及重叠成功率曲线下面积。提出的方法取得了0.988的距离精度以及0.821的重叠成功率曲线下面积,使用基于背景建模的方法,相对不使用背景建模的SAMF方法提高了0.021的距离精度和0.107的重叠成功率曲线下面积。
(b) 不同阈值下的重叠成功率曲线
3个跟踪器在10个汽车视频中对应的平均中心位置误差详见表1。提出的方法在10个视频中的7个都降低了平均中心位置误差,在Car2视频中与SAMF相同,在BlurCar3和Car4视频中与SAMF接近。
表1 3个跟踪器在10个汽车视频中对应的平均中心位置误差
Tab. 1 Average center location errors of the three trackers in ten vehicle videos像素
视频提出的方法SAMFKCFBlurCar14.304.605.10BlurCar23.864.266.81BlurCar33.933.604.14BlurCar46.396.809.91Car11.241.5242.43Car21.751.753.97Car42.662.219.47Car242.4312.034.10CarDark1.432.765.76CarScale7.118.4116.14
为了更好地可视化跟踪器的跟踪效果,将3个跟踪器在Car1、Car24和CarScale视频中的跟踪结果展示在图3中。由图3可知,在Car1视频中,KCF由于未估计汽车尺度,当汽车尺度变化时,目标框中背景变多,逐渐发生了漂移;提出的方法将目标与背景分离跟踪再融合,比SAMF方法对目标建模更精准,估计的目标框中包含了少量背景。在Car24视频中,汽车发生尺度变化的同时,周围背景变化也较大,KCF和SAMF方法都转而跟踪汽车的局部,而提出的方法始终准确地跟踪了目标。在CarScale视频中,汽车变形比较快,且汽车尺寸的长宽比发生了较大变化,目标模型难以适应汽车的变化,3个方法都未能准确估计汽车尺寸,但提出的方法利用了背景信息,给出了最准确的定位结果。
图3 在Car1、Car24和CarScale视频中的跟踪结果
基于背景建模的车辆跟踪方法对车辆目标和车辆背景分别跟踪,协同建模,融合预测得到鲁棒的跟踪结果。实验结果表明,提出的方法能提高车辆跟踪的距离精度和重叠成功率,降低跟踪结果的平均中心位置误差,在复杂环境下,对车辆变形、车辆干扰、运动模糊和快速运动等因素具有鲁棒性。