卢盼成 丁 勇 黄鑫城
(南京航空航天大学自动化学院 江苏 南京 211106)
目标跟踪是计算机视觉领域的核心问题,在智能交通[1]、医学辅助诊断[2]、军事制导、航空视觉导航等各方面都发挥着重要的作用。近年来随着人工智能技术的飞速发展,基于卷积神经网络的深度学习方法在目标跟踪领域展现出巨大潜力。
近20年来,涌现出了大量的目标跟踪算法,根据其工作原理主要分为生成式模型和判别式模型两类。早期的目标跟踪算法研究主要集中在生成式模型上,如光流法[3]、粒子滤波[4]、Mean-shift算法、Cam-shift算法等。此类方法首先建立目标模型或者提取目标特征,然后对后续帧进行相似特征搜索实现对目标的定位。但此类方法也存在明显的缺点,如图像的背景信息没有得到全面的利用且目标本身的外观变化有随机性和多样性的特点。判别式模型则是同时考虑目标模型和背景信息,通过比较两者的差异,将目标模型提取出来,从而得到当前帧的目标位置。由于判别式模型将背景信息引入跟踪模型,可以很好地实现背景区分,因此具有很大的优势。2000年以来,人们逐渐尝试采用经典的机器学习方法训练分类器,例如MIL(Matrox Imaging Library)、TLD(Tracking Learning Detection)、支持向量机(Support Vector Machine,SVM)[5]等。尽管这些分类器种类繁多并具有一定的学习能力,但分类效果存在不确定性。2010年,文献[6]首次将通信领域的相关滤波(Correlation Filtering)方法引入到目标跟踪中,提高了目标跟踪的速度和精度,但对于多尺度的目标跟踪效果并不理想。2015年以后,随着卷积神经网络在图像领域的广泛应用,人们开始将深度学习的方法应用于目标跟踪[7]。由于该方法缺乏正样本训练数据,同时,随着神经网络规模的增加跟踪实时性很低。因此深度学习的方法难以训练出性能优良的分类器,不能满足快速运动目标的实时跟踪。
针对深度学习方法在目标跟踪中的问题,孪生全卷积网络的目标跟踪方法由于其端到端的训练能力和跟踪的实时性备受关注[8-11]。虽然孪生全卷积网络通过相似性学习的方法解决了深度学习在目标跟踪领域的实时性问题,但它的一个关键限制是缺少有效的模型更新策略,无法将来自背景区域或先前跟踪帧的信息融合到模型预测中。近年来相关文献的研究旨在解决这个问题。Valmadre等[9]将相关滤波器整合到深层网络中,但由于滤波器判别能力有限,难以有效区分跟踪目标与相似目标。Yao等[12]在训练阶段,通过特征提取器去学习跟踪参数,但参数本身不能应用于多个样本,需要特殊的线性滤波器组合来适应模型。Park等[13]从初始帧出发,通过独立的学习框架优化梯度下降过程和学习的步长,然而这种策略只适用于模型的初始自适应,并不能改善迭代时的模型本身。此外,Guo等[14]通过学习变化特征来处理目标外观变化带来的影响,从而抑制周围相似目标的干扰;Zhu等[15]在目标跟踪期间,从目标模板中减去相似目标图像特征达到排除相似目标干扰的目的。以上两种方法为在线更新,定位精度高但模型学习效果较差。综上可见,孪生全卷积网络在进行目标跟踪时,仍然无法有效解决跟踪目标易受相似目标干扰的问题。
针对上述问题,本文提出一种基于预判式学习更新策略孪生全卷积网络(Pre-judgment Learning Update Strategy Full-Convolutional Siamese Networks,Prl-SiamFC)的目标跟踪算法。由目标模板和搜索区域模型建立置信度估计,将模型更新策略加入到端到端的跟踪架构中,解决了孪生全卷积网络在目标跟踪时相似目标干扰的问题。
传统孪生全卷积网络(Full-Convolutional Siamese Networks,SiamFC)的结构如图1所示。在进行目标跟踪时,首先构建目标模板和搜索区域,然后采用两个相同的卷积神经网络,分别获取目标模板和搜索区域的卷积特征。最后对特征再进行卷积操作得到预测分数矩阵,从而定位到原始图片的目标跟踪区域。
图1 传统孪生全卷积网络结构
本文所提出的预判式学习更新策略的孪生全卷积网络在孪生全卷积网络基础上加入了置信度估计模块和预判式学习模块,如图2所示。从输入端到输出端,总体框架包括卷积网络模块、置信度估计模块和预判式学习模块三个部分。卷积网络模块的网络构架采用孪生全卷积网络的AlexNet;置信度估计模块对目标模板和搜索区域建立颜色直方图密度估计;预判式学习模块包括初始化模块和优化器模块两个部分。
图2 预判式学习更新策略孪生全卷积网络总体框架
图2中,视频序列输入后,根据给定序列坐标中心建立目标模板及搜索区域;卷积网络模块用来提取目标模板和搜索区域的卷积特征;置信度估计模块用来对目标模板与搜索区域进行置信度估计,作为卷积权重滤波器f更新的参考标准;在预判式学习模块中,将视频序列的初始正确标注数据(Ground Truth,GT)平均分布在数据集s上,获得初始模型f(0),同时根据置信度估计判别跟踪序列中是否存在相似目标干扰,从而决定是否更新f(i)。
预判式学习更新策略孪生全卷积网络的置信度估计模块,对跟踪算法的精度、成功率和速度具有至关重要的影响。目标模板与搜索区域的卷积特征具有良好的鲁棒性,但不能从中有效地得到相似目标干扰的相关特征。若要实现对跟踪目标和相似目标的有效区分,则需要在原卷积网络模块中附加用于相似目标提取的卷积模块,这种方法在提高跟踪成功率的同时会降低跟踪速度。
本文选取具有较高判别精度且计算量小的颜色直方图密度估计[16]的方法,在保证目标跟踪速度的基础上,建立目标模板与搜索区域的置信度估计,作为模型更新的参考标准,可以最大限度在不降低目标跟踪速度的基础上提高模型跟踪的成功率。
(1)
(2)
式中:h是核函数的带宽;Ch是基于h的归一化系数函数。
(3)
式中:y0为搜索区域初始中心坐标。wi计算如下:
(4)
由式(3)可知,置信度值Csiam∈[0,1]。Csiam越接近1,表示目标模板与搜索区域相似度越高;Csiam越接近0,表示搜索区域中越可能存在相似目标,则需要进行预判式学习模块更新。为保证跟踪实时性,间隔20帧进行置信度估计及预判式学习模块更新。
在目标跟踪过程中,影响跟踪的三个重要因素是特征、分类器和模型更新策略[17]。孪生全卷积网络中特征采用的是卷积神经网络CNN提取到的图像特征,分类器根据目标模板与搜索区域的相似性进行学习,而整个网络缺乏有效的模型更新策略。本文给出预判式学习模块D,在整个模型更新过程中,S为数据集,f是具有卷积层权重的滤波器,预判式学习模块的作用是给出预测函数f=D(S),用于在特征空间中区分跟踪目标和背景外观。
为保证预判式学习更新策略孪生全卷积网络的稳健性,定义预判式学习的损失函数L(f)为:
(5)
在实际的样本训练中,如果单纯以图片的方式进行训练,传统的岭回归问题只会让网络过分注意于优化负样本的影响,而忽略正样本特征本身的判别能力。为此引入空间权重系数vc,通过权重系数使得前景和背景之间具有一定的距离,改善分类结果。定义残差函数r(s,c)为:
r(s,c)=vc(mcs+(1-mc)max(0,s)-yc)
(6)
式中:mc为目标分割系数,具体参数选择通过网络学习得到[18],若目标中心在跟踪目标区域,则mc=1;若目标中心在跟踪背景区域,则mc=0;s为目标置信度得分;yc是以c=(x0,y0)为中心的二阶高斯函数,表示每个位置的目标期望得分。yc具体计算如下:
(7)
式中:σ为高斯函数分布方差。
在用预判式学习更新策略孪生全卷积网络进行目标跟踪的过程中,将固定学习率η设为自重启式学习率ηt,对Ti次已经完成数据集训练的学习率采用余弦退火,即:
(8)
上述的自重启随机梯度下降算法通过给定Ti和Tcur,使得学习率ηt出现衰减变化,当学习率ηt下降到最小值后,再次变为初始值,模拟出现自重启现象。这种优化策略避免了神经网络使用固定学习率易于陷入到鞍点中,收敛于局部最优,有效解决了孪生全卷积网络训练中的损失误差和病态函数问题。
传统的目标跟踪算法通常在确定跟踪目标后,再来衡量模型的可靠性,进而采取相应的更新策略。然而这种更新策略存在滞后性,并不能进行动态调整实现提前更新,以应对复杂的目标跟踪。针对此问题,本文对卷积层权值滤波器f进行了预判式更新。
在预判式学习模块中,我们引入初始化模块,该模块由一个卷积层和一个精确的池化层组成,用来生成初始模型f(0)。初始模型f(0)只提供一个合理的初始估计,用来进一步减少预判式学习模块的优化递归次数,然后由优化器模块进行处理,以提供最终的识别模型。初始化模块完成初始化后,对式(5)预判式学习损失函数L(f)求偏导得:
(9)
(10)
令qc=vcmc+(1-mc)·ls,对于qc仅使用点操作,对于正样本,ls>0,对于负样本,ls=0。由此得到:
(11)
最终,由式(9)和式(11)推导出卷积权重滤波器f的梯度下降表达式为:
(12)
在得到上述梯度下降值的基础上,采用3.1节中的自重启学习率ηt,则滤波器f的更新表达式为:
(13)
综上,本文算法在卷积网络获取目标模板和搜索区域的卷积特征时,每隔20帧同时对目标模板和搜索区域进行了置信度估计,由置信度值Csiam提前预判序列帧中是否存在相似目标。当置信度值Csiam小于给定阈值时,则跟踪目标周围可能存在相似目标,进而考虑卷积层权值滤波器f的更新。这种更新策略在确定跟踪目标区域前进行预判确定是否更新,实现了卷积层权值滤波器f的实时更新,在保证跟踪的准确性和稳定性的同时,有效解决了相似目标干扰的问题。
本文算法流程描述如下:
步骤2由数据集的给定GT进行模块初始化,即f(0)←S,得到初始模型f(0)。
步骤3卷积网络模块提取目标模板和搜索区域卷积特征。
步骤4间隔20帧计算目标模板及搜索区域置信度值Csiam为:
步骤5判断置信度值Csiam是否大于阈值,若大于阈值则执行步骤9,否则执行步骤6-步骤8,对滤波器f进行更新。
步骤7采用步骤6中的学习率,计算卷积权重滤波器f的梯度下降值:
▽L(f(i))←(f(i),S)
步骤8卷积层权值滤波器f进行预判式更新:
步骤9对搜索区域和经过滤波器f过滤掉相似目标的目标模板进行卷积操作。
步骤10卷积操作输出预测分数矩阵,矩阵经线性插值定位到原始图片的目标位置,实现目标跟踪。
本文实验所使用的测试基准是OTB 2013,包含50个长短时序列,视频序列影响因素包括相似目标干扰、平面内旋转、光照变化、快速运动等11种类型。预判式学习更新策略孪生全卷积网络构架采用AlexNet,如表1所示,其中前两层卷积层后均接有池化层,除了最后一层,每一层均使用ReLU激活函数。
表1 预判式学习更新策略孪生全卷积网络构架
在实验中,预判式学习更新策略孪生全卷积网络初始化参数设置如表2所示。
表2 预判式学习更新策略孪生全卷积网络初始化参数
为了有效地评估本文所提算法的性能,实验中的对比算法均来自相应作者的公开代码。所有实验都在Inter(R)Core(TM)i5-2450M CPU@ 2.50 GHz、4 GB内存、NVIDIA GeForce GTX 750 Ti台式机上进行,算法通过MATLAB 2018a、Visual Studio 2015、CUDA 9.0、CUDNN 7.0实现。
实验从预判式学习更新策略孪生全卷积网络不同模块消融对比、数据集训练识别精度、对比孪生全卷积网络和跟踪算法整体性能四个方面进行验证。
本文采用一次通过测试(One-pass Evaluation,OPE)对预判式学习更新策略孪生全卷积网络Prl-SiamFC的置信度估计模块和预判式学习模块分别进行了测试实验,结果如表3所示。可以看出,与孪生全卷积网络SiamFC相对比,预判式学习模块提高了4.05%的跟踪成功率。与无置信度估计模块的Prl-SiamFC相比,置信度估计模块提高了7.41%的跟踪精度,置信度估计模块和预判式学习对跟踪精度和成功率均有较大提升效果;与孪生全卷积网络SiamFC的跟踪速度相比,采用置信度模块和预判式学习模块基本上对跟踪速度没有太多影响。
表3 预判式学习更新策略孪生全卷积网络不同模块消融对比
采用Minist手写数字数据集进行10 000次迭代,Prl-SiamFC和SiamFC的数据集训练识别精度效果如图3所示,(a)为原始识别误差散点分布情况,(b)为识别误差拟合曲线。
图3 Prl-SiamFC与SiamFC数据集训练识别精度比较
可以看出,与SiamFC相比,采用自重启式学习率的Prl-SiamFC初始收敛速度更快,收敛过程更加平稳,数据集训练识别误差精度平均减少93%且不存在较大波动。因此,Prl-SiamFC比SiamFC学习效果更好。
为了验证本文所提的Prl-SiamFC在存在相似目标干扰情况下跟踪性能的优越性,本文将其与SiamFC和三种尺度孪生全卷积网络(简称:SiamFC_3S)对具体帧的跟踪情况进行比较。如图4所示,选取4组视频序列,视频图中左上角数字为当前图像帧数,黑框为Prl-SiamFC,白框为SiamFC和SiamFC_3S。
图4 相似目标干扰下跟踪性能比较
可以看出,4组视频的第10帧均能确定跟踪目标且跟踪精度较高,但序列Matrix第50帧、序列Liquor第1 500帧和序列Soccer第350帧以后,SiamFC和SiamFC_3S均出现跟踪丢失的情况,而Prl-SiamFC始终跟踪目标,具有较好的跟踪效果。
对上述4组视频序列,如图5所示,采用中心位置误差进行对比分析,这里的中心位置误差是指视频跟踪结果中心点与真值中心点之间的欧氏距离。
图5 不同算法在相似目标干扰下中心位置误差比较
可以看到,Prl-SiamFC的中心位置误差除了在视频序列Football中最后帧数出现波动外,序列Matrix、Liquor和Soccer的中心误差始终保持在较低水平,序列Matrix和Soccer的中心位置误差平均小于20,在跟踪过程中有效解决了跟踪目标周围存在相似目标干扰问题。
在OTB 2013测试下,采用OPE、空间鲁棒性测试(Spatial Robustness Evaluation,SRE)、时间鲁棒性测试(Temporal Robustness Evaluation,TRE)三种标准,分别测试Prl-SiamFC与SiamFC的跟踪效果,如图6所示。各标准下的整体跟踪效果提升等于跟踪精度和成功率提升的平均值。在OPE、SRE、TRE三种标准测试下,Prl-SiamFC与SiamFC相比,整体跟踪效果分别提升了7.75%、10.14%、8.98%。
图6 Prl-SiamFC改善SiamFC跟踪效果曲线
除了整体跟踪精度和成功率的提升,与SiamFC、SiamFC_3S相比,Prl-SiamFC对于跟踪目标的变形、遮挡、尺度变化、平面内外旋转等问题,均有跟踪效果的明显提升,如表4所示。特别是对跟踪目标出现运动模糊和视野外的问题,Prl-SiamFC相比较于SiamFC、SiamFC_3S,跟踪效果的平均提升效果在20%以上。
表4 Prl-SiamFC在其他方面跟踪效果的提升 %
除了与SiamFC对比外,本文在OTB 2013上还测试了18种经典的跟踪算法,其中,前10名算法的跟踪精度和成功率曲线,如图7所示。图中括号里数字表示中心位置误差取值为20时对应的跟踪精度和覆盖阈值取值为0.5时对应的跟踪成功率。
图7 不同算法跟踪性能比较
可以看出,本文的跟踪算法精度和成功率明显高于其他算法。在图7(a)、(c)和(e)中,跟踪精确度在中心位置误差阈值为20像素时,在OPE、SRE、TRE下,本文跟踪精确度高于CF2 0.90%、2.47%、3.76%;当中心误差阈值小于20像素时,本文算法的精确度值更明显高于其他算法,这说明在高精度约束下,本文算法的跟踪效果更好。在图7(b)、(d)和(f)中,本文算法的跟踪成功率比深度学习跟踪算法SRDCFdecon提高了2.21%、4.34%、3.44%;当覆盖阈值处于0.2~0.8位置时,本文算法的成功率明显高于其他对比算法;当覆盖阈值大于0.8时,本文算法也能保证最优性能。
综上所述,本文所提的预判式学习更新策略孪生全卷积网络满足了目标跟踪的各项性能要求,具有训练识别误差小、跟踪精度高和成功率高的特点,算法整体具有良好的跟踪性能。
本文提出预判式学习更新策略孪生全卷积网络目标跟踪算法,将模型更新策略加入到孪生全卷积网络的端到端跟踪架构中,由目标模板和搜索区域模型确定置信度并判别是否进行预判式学习模块更新,解决了孪生全卷积网络在目标跟踪过程中相似目标干扰的问题。预判式学习更新策略孪生全卷积网络与孪生全卷积网络相比,数据集识别训练精度更高,采用Minist数书写数字据集测试,数据集训练识别精度误差平均减少93%。在OTB 2013 的OPE、SRE、TRE标准测试下,目标跟踪精度提高了10.31%、12.55%、10.42%,成功率提高了5.18%、7.73%、7.53%,整体跟踪精度和成功率与其他经典算法相比更优,性能表现优异。