杜 丰,王万良,李思远,张 智,刘子瑜
1(浙江工业大学 计算机学院,杭州 310023) 2(南京大学 计算机科学与技术系,南京 210023) 3(浙江工业大学 之江学院 信息工程学院,浙江 绍兴 312030)
随着计算机视觉技术的成熟度不断提高,其应用领域逐渐拓宽.其中目标追踪是热门的研究方向之一,近年来广泛应用于面部识别、智能监控、目标检测、智慧城市等领域[1,2].
判别式追踪算法是目标追踪算法分类之一,判别相关滤波器(Discriminative Correlation Filter,DCF)在其中具有较快的发展速度.Bolme等[3]在2010年提出的基于最小平方误差和输出(Minimum Output Sum of Squared Error,MOSSE)滤波器追踪速度快,且相对其他追踪算法具有较高精准性,但由于只能运行单通道灰度特征,很难适应目标运动尺度变化等复杂情况.2014年Danelljan等[4]提出判别尺度空间追踪器(Discriminative Scale Space Tracker,DSST)算法改进了MOSSE的不足,但是追踪速度慢,难以在大幅度形变和遮挡等复杂情况下追踪.2015年Henriques等提出了一种新的具有与线性相关算法同等复杂度的高速核相关滤波器(Kernelized Correlation Filter,KCF)[5],但是KCF对尺度变化的目标追踪效果不佳,其采用的HOG特征无法应对快速变形等复杂情形,鲁棒性不佳.
为了解决追踪算法在复杂的情形(如遮挡、快速运动、较大尺寸变化等)下的挑战和难题,诸多学者引入了深度学习方法[6].由于各类卷积神经网络(Convolutional Neural Network,CNN)用作图像特征提取时具有比传统手工提取的特征更好的性质,因此融合了CNN特征的目标追踪算法[7-9]皆获得了高于传统追踪算法的性能.Ma Chao等[10]基于DCF框架提出HCF(Hierarchical Convolutional Features)追踪算法,用深度卷积特征更替HOG特征,可以解决目标大幅度变化,但是追踪过程容易受背景颜色影响.Danelljan等人为改进DCF提出了解决边界效应的SRDCF(Spatially Regularized DCF)[11]和引入深度特征的DeepSRDCF[12],前者引入空间正则化,后者对不同深度特征进行研究,结果表明在处理追踪问题时效果更佳的是采用CNN特征,而后来STRCF(Spatial-Temporal Regularized Correlation Filters)[13]对SRDCF的改进,虽然在抗遮挡方面具有在重大贡献,但仍然是使用HOG.2016年Danelljan等[14]提出C-COT(Continuous Convolution Operators),得到一个连续空间域卷积方程,原作者基于C-COT在2017年提出ECO(Efficient Convolution Operators)[15],该算法解决了算法中模型过大、运行速度较慢的问题.Ma Chao等[16]于2018年强化了HCF,得到HCFT(HCF Tracker)进一步解决了具有挑战性的尺度估计和目标再检测问题.2019年Danelljan等又提出ATOM(Accurate Tracking by Overlap Maximization)[17],提供了准确的目标状态估计,弥补了视觉追踪中目标分类和状态估计之间的性能差距.
虽然上述基于相关滤波器改进的算法具有追踪速度的优势,但是改进的侧重点仍在目标尺度和位置的估计,追踪精准度会因为目标快速运动或被遮挡而降低,也会因为目标后期的位置、尺度或姿势变化过于频繁而在追踪识别过程中产生较大误差.
本文提出一种动态权重融合层次化卷积特征的自适应目标追踪算法(Adaptive Dynamic Convolution Feature Fusion,ADCF).于KCF框架上,通过层次化手段提取CNN特征,通过动态权重提高了对不同特征场景的适应性,从而提升了相关滤波目标追踪算法的精度.通过在基准(Benchmark)视频数据集上的实验结果,验证了新算法的有效性,并在目标物体尺度或姿势频繁变化的场景下优于现有算法.
Henriques等人[5]为提高追踪性能和速度,于2015年使用更简单的对角化技术重新推导了公式,得到新的KCF和一个计算复杂度非常低的线性多通道对偶滤波器,提出了一个用于不同平移提取图像的斑块并计算出对线性回归算法的影响的分析模型.给定当前帧目标的感兴趣区域(Region of Interest,ROI),经由特征提取后得到一张大小为M×N的输入特征图x进行训练,对其采用循环采样可得样本矩阵X=C(x),根据循环位移程度采用二维高斯函数作为各个采样样本x(m,n)∈{0,1,…,M-1}×{0,1,…,N-1}的软标签,如公式(1)所示,其中σ为高斯核宽度,求解滤波器w可由岭回归表示,如公式(2)所示.
(1)
(2)
(3)
(4)
(5)
其中kxx′核相关的多通道计算公式如下,此处采用高斯核函数,如公式(6)所示:
(6)
Tt+1=ηTt+1+(1-η)Tt
(7)
通过核函数的计算,KCF融合了多通道的HOG特征,追踪性能总体得到提升,但当目标快速运动时其追踪效果不佳,于是许多学者开始研究如何利用深度特征提高追踪算法的鲁棒性.
基于分类的卷积神经网络模型通过大量的标注数据训练获得,在不同应用场景可以进行很好的泛化和迁移.不同深度的卷积特征具有不同目标信息.较低层卷积特征保留了更多的细粒度的空间特征,随着网络加深,较深层卷积特征图的分辨率不断降低、基于分类的语义信息逐渐增多.在目标追踪中,较好的目标特征需要同时具有能很好地适应目标表观变化的语义特征和便于目标定位的空间特征.
基于DCF引入深度特征的追踪算法以DeepSRDCF[12]、C-COT[14]、HCFT[16]为代表.DeepSRDCF直接取用不同CNN的单层卷积深度特征,证明追踪效果最佳的是包含较多空间细节信息的第一层卷积特征.C-COT于连续域中以融合的方式对不同分辨率的特征训练了多个滤波器,最终输出单个响应结果.HCFT基于VGGNet[19]层次化的提取了conv3-4、conv4-4、conv5-4的输出层作为特征训练多个滤波器,按3个置信图的定位精度赋以固定权重来确定最终目标位置.由文献[12]、[14]和[16]可知,层次化的深度神经网络的中高层卷积层含有利于追踪高级特征,其低层则便于空间定位.但采用固定权重融合多种不同的特征所训练的滤波器对复杂场景的自适应能力较低,融合后往往无法达到各特征中最佳追踪效果.2018-MCCT[20]采用动态权重融合各层次卷积特征来增强对不同场景的适应性.
已有的基于深度特征改进KCF的研究大多数测试的卷积神经网络类型单一,大部分文献如[17]、[21]和[22]等都只研究了经典层次化的VGGNet,也有部分文献如[23]测试了经典残差ResNet,相较于深层次结构的卷积神经网络,残差结构的或者是轻量级的卷积神经网络也可以有更佳的表现.针对这一问题,本文算法使用目标尺度估计,并对不同类别的CNN都进行测试,指出哪种CNN特征最有效、速度最佳并且精度更佳,并采用动态权重融合不同层次卷积特征,达到自适应追踪的效果.
如图1所示为本文算法的流程图,实验中对输入的单个多通道特征图的各通道分别训练一个滤波器,最终输出单个响应图,对不同分辨率的多通道特征分开训练而融合各个响应图.本文以KCF为框架,将CNN根据卷积层深度划分为低层级、中层级和高层级卷积特征,于不同层级提取深度卷积特征以训练核相关滤波器,对各层次的输出结果采用动态评估权重进行融合,对模型采用动态学习率更新.其中具体的特征提取手段见3.1节,层次化响应图融合方式见3.2节,模型更新方式见3.3节,代码详见脚注(1)https://github.com/Lupin1998/ADCF_2019/.
图1 动态权重层次化卷积特征追踪算法流程图Fig.1 Flowchart of the tracking algorithm with dynamic weighted fusion hierarchical convolution feature
表1 各CNN采用卷积层Table 1 Convolution layers of each CNN
(8)
(9)
(10)
定位准确性采用峰瓣比(Peak Sidelobe Ratio,PSR)评估,由[3]可知第t帧第i层次的追踪结果PSR计算为式(11),均值为式(12).
(11)
(12)
(13)
第i层次输出结果的评估得分越高则定位性能越好.最终,对第t帧各层次输出结果以评估得分归一化后得到的动态权重结合各层次原有的静态权重WL1,WL2,WL3,,加权得到当前帧追踪结果(定位中心位置),如公式(14)所示:
(14)
由[35]可知模型的学习率需考虑追踪准确度、目标表观变化程度、相邻两帧间图像帧差均值和预测位置的位移量、追踪器稳定性等因素,故本文中采用动态学习率更新模型,实验中结合了PSR、输出追踪器稳定性、相邻两帧间图像帧差均值(公式(15))和预测位置的位移量来动态调整学习率.
(15)
其中第t帧中截取的ROI图像大小为M×N,(m,n)位置的像素表示为pm,n.第i层次输出结果的相邻两帧间预测位置的位移量计算如公式(16)所示:
(16)
学习率求解如公式(17)所示:
(17)
本文所提滤波算法基于Python 3.6和PyTorch深度学习框架(2)https://pytorch.org/docs/stable/torchvision/models.html实现,PyTorch版本为PyTorch1.0、torchvision 0.4.0,硬件配置为Intel I7-8700K 3.70GHz CPU和16GB内存,Nvidia GeForce GTX 1070显卡,Nvidia依赖为CUDA10.0、cuDNN7.5.1.
图2 CNN性能对比图Fig.2 Comparison of CNN performance
实验中对经典层次化CNN、残差结构CNN和轻量级CNN进行统一实验.如图2所示为本文实验涉及的各类CNN的性能对比散点图,横轴表示CPU前向传播速度,纵轴表示精确度,散点大小表示CNN模型大小.其中,CNN的前向传播速度,会直接影响所提算法的跟踪速度.
本实验中采用时间鲁棒性估计(Temporal robustness evaluation,TRE)作为模型精度的评估指标,对各层次卷积特征分别做单独测试和组合测试评估.按表1中特征的层次提取方式,分别提取各CNN中低、中、高层卷积特征做单独测试.为了权衡计算量和精度,实验中对低、中、高层特征分别采用0.8、0.65、0.5的随机失活率.采用PyTorch官方预训练权重,使用具有尺度变化、快速运动、运动模糊和形变等干扰因素的数据集,包含Matrix、Deer、Boy、Basketball、Liquor和Soccer,得到包含3类CNN的TRE精度图和成功率图,如图3所示.
由图3可见高层次卷积特征相比中低层次普遍表现出较高的追踪鲁棒性,轻量级CNN特征的追踪精度较高且稳定,而残差结构CNN特征追踪效果较差.整体上看,卷积特征的追踪失败率较低,且由同一数据集预训练的卷积神经网络,其卷积特征的追踪效果与CNN本身的分类精度、参数量大小无直接关系.但在分析追踪失败情况时发现,追踪效果较差时的卷积特征模版的PSR较低而不利于区分目标和背景.同时,实验中根据算法稳定性和精度,从3类CNN中的选出性能较优的GoogLeNet、ResNeXt、SqueezeNet,分别进行从低层特征到高层特征的线性组合测试[17],仍标注为L1,L2,L3,结果如图4所示.
图3 3类CNN的TRE精度图和成功率图Fig.3 Precision and success rate of three types of CNN
由图可比较出对于相同CNN,L3层次的精确度和成功率是最高的,不同层次的卷积特征具有一定互补性,但追踪效果未必好于单独采用高层次特征,而是趋于平均.进一步分析测试结果可知各层次卷积特征对应的响应输出所占的固有静态权重可由追踪效果确定.本文所提ADCF算法对各类CNN直接动态加权融合各层次特征,可以适应不同特征环境,由此可在一定程度提高了追踪效率.
图4 组合测试结果Fig.4 Combined test results
基于实验4.2,在对比实验中分别选用经典层次化GoogLeNet、残差结构ResNeXt和轻量级SqueezeNet作为卷积特征的3个版本,其中低、中、高层分别采用0.8、0.6、0.4的随机失活率.同时,实验中对连续50帧处于低学习率的追踪器由当前帧目标框进行重新初始化以提高鲁棒性.为了消除不同的CNN预训练权重带来的追踪效果偏差,对比实验中所用的CNN预训练模型皆来自Caffe框架[38].本文所选取进行对比的算法有KCF、ECO和STRCF.在测试数据集上整体性能对比如表2所示,展示了本文ADCF算法和比较算法的精确率、成功率和速度.各算法在遮挡、运动模糊、快速运动干扰下的性能对比如表3所示.
表2 测试数据集上整体性能对比结果Table 2 Comparison results on the dataset
分析实验结果可知,本文算法在对不同CNN进行测试时,轻量级的CNN效果比经典层次化或残差结构的CNN更好.所提算法在所用测试环境中整体上的成功率和精确率远高于经典KCF和ECO,在GoogLeNet和SqueezeNet的测试中效果也比STRCF更佳,并且在抗遮挡方面ADCF整体优于STRCF.但由于算法要对各层次特征图训练核相关滤波器,所以计算量较大,且计算量与所用CNN的深度和各层次选用的特征图通道数成正比.综合对比表2、表3结果可知,本文算法不仅在所用数据集包含的所有干扰项的测试下性能较佳,而且在遮挡、运动模糊和快速运动的干扰下性能比其他对比算法更好,因此更加适用于目标在快速运动时发生大规模的位置、尺度或姿势变化的情形中.
本文提出的动态权重层次化卷积特征追踪算法可以在目标快速运动过程中进行精准追踪,且相比同类型的主流滤波追踪算法,受追踪过程中目标被遮挡、运动模糊及快速运动影响更小,体现出较好的鲁棒性.层次化提取不同类型CNN特征改进了传统KCF使用HOG特征对于形变、运动模糊等鲁棒性较低的缺点,并验证了高层次卷积特征追踪鲁棒性较高、轻量级CNN不易发生漂移的特点.动态加权方式提高了追踪算法对不同特征的适应能力,并且本文所用的动态评估方式能较好的发挥不同层次卷积特征于不同情形下的优势,使整体性能得到显著提升.后续工作将进一步优化追踪的实时性和各层次特征的融合方式.