◆李红江
(辽宁大学信息学院 辽宁 110000)
视觉跟踪在无人机、无人驾驶汽车等领域有着广泛的应用。但视觉跟踪需要处理的问题也相当复杂,如运动目标快速运动、物体的遮挡等都是重要的干扰因素。
随着神经网络的出现,跟踪的算法变得更加完善,使用卷积神经网络(CNN)对样本特征进行提取[1][4],充分利用样本特征,使跟踪过程中目标匹配的准确率得到很大的改善,但对于目标遮挡情况,线神经网络跟踪模型则略显无力。
本文提出了一种基于局部特征的自适应加权的目标跟踪算法,将跟踪目标进行网格化,利用CNN充分提取每一块的特征,引入距离转化池化层估计输入特征的可靠性,增加一个全连接层得到局部自适应加权的CNN跟踪模型;选用OTB-100数据集进行试验,选取当前比较有影响力的算法进行比较。
本文主要重点如下:
(1)将目标进行网格化。
(2)使用神经网络提取目标局部的深度特征,并训练局部自适应加权的目标跟踪模型。
(3)对于局部遮挡和快速运动,使用卡尔曼滤波对目标进行预测[2][3]。
本文采用M=m×m的网格方式对目标网格化,并且给网格建立对应的索引
本文使用具有空间正则核的CNN框架,该框架包含两个卷积层、ReLu层、池化层和响应函数。输入W×H×C图像块,其中,W和H分别为宽和高,C是信道数。卷积层1的卷积核大小为5×5,输出大小为W×H×C1的特征图。卷积层2的卷积核大小为3×3,输出W×H×C1响应图。在ReLu层,将响应图划分为C1/4组,并对每个通道的每个组的特征图进行对应求和,每组输出为W×H×1的特征图。最后,将得到的特征图输入到距离变换池化层,并将最终得到的特征通过响应函数确定目标的位置。
本文使用网格化目标充分利用目标的局部特征来协助目标的跟踪。由2.1部分得出跟踪目标的局部响应函数目标的不同部位在跟踪过程中有不同的影响。因此,在神经网络最后一层增加一个连接层,训练出一个自适应的权重向量具体设计如下:
图 1 局部自适应加权结构图
则局部特征自适应加权的目标函数模型为:
本文使用的优化算法是随机梯度下降算法,并且使用Kalman滤波预测结合模型匹配处理目标的快速运动以及目标完全遮挡问题。快速运动的目标导致两帧之间距离变化较大,因此,Kalman滤波根据目标初始状态的初始位置参照目标的运动速度、加速度以及外界干扰因素,预测出目标在t+1帧中的位置并在宽为高为的范围内,使用跟踪模型进行目标搜索匹配,大大减小匹配时间。
本文采用OTB-100数据集进行试验。在数据集上,将本文跟踪算法与其他性能比较好的近两年的四种跟踪算法进行比较。
跟踪结果用不同数字框标注:ours:1、LSART:2、ECO:3、SRDCF:4、KCF:5。
图2 局部遮挡效果图
图2展示了跟踪算法之间在局部遮挡问题上的对比结果。结果表明了本文的跟踪算法在跟踪过程中效果更准确。在目标大部分区域被遮挡后,而LSART能继续跟踪,但是跟踪结果会慢慢漂移,并且准确度没有本文算法高。针对跟踪的全局遮挡问题,图3展示了本文跟踪算法能很好地处理遮挡问题。目标在受到物体遮挡时,其他四种算法将会跟丢,最终停留在遮挡物体上。而本文结合Kalman滤波,在预测范围内进行滑动窗口搜索,并与本结合的跟踪模型进行匹配,以确定目标位置。
实验表明,本文改进的跟踪算法有着较好的跟踪效果。
图3 全部遮挡效果图
本文提出的一种基于局部自适应加权的目标跟踪模型,对目标进行网格化利用局部特征,训练成局部的CNN模型,增加连接层训练出局部自适应权重模型,实验表明该模型可以很好地处理局部遮挡问题。本文使用Kalman滤波跟踪算法处理全局遮挡,再结合跟踪模型在一定范围内进行搜索匹配。实验表明,该算法能很好地处理快速运动与全部遮挡问题。