陈茂林, 侯志强, 余旺盛, 马素刚, 蒲 磊
(1.西安邮电大学计算机学院,西安,710121;2.西安邮电大学陕西省网络数据分析与智能处理重点实验室,西安,710121;3.空军工程大学信息与导航学院,西安,710077;4.火箭军工程大学作战保障学院,西安,710025)
目标跟踪是计算机视觉领域中最重要的研究方向之一[1],是指在视频初始帧中给出目标,在后续帧中对目标进行状态估计和精准定位的过程[3],在安防、监控和巡检等领域有着广泛的应用[4-5]。
目前,要实现鲁棒的目标跟踪器依然面临着诸多困难,主要包括相似背景、尺度变化和目标遮挡等[6]。Wang等[7]通过实验表明:良好的特征表达是实现鲁棒的目标跟踪系统的关键因素之一。众多学者也先后设计了灰度、颜色和方向梯度直方图等手工特征,在简单场景中具有良好的性能表现,但是在复杂场景中性能不佳。近年来,卷积神经网络(convolutional neural networks, CNN)[8]在计算机视觉领域中得到了广泛应用,并在图像分类、目标检测和图像分割等任务中获得大幅度的性能提升。Bertinetto等[9]提出全卷积的孪生网络目标跟踪算法SiamFC,将目标跟踪问题转化为相似性匹配问题,取得了良好的跟踪性能。Li等人[10]提出SiamRPN算法,将孪生网络与区域建议网络结合,实现了灵活应对目标尺度的变化。Zhu等[11]提出DaSiamRPN算法,通过引入干扰感知模块,增加训练时的负样本,使模型有效地捕捉更多上下文信息以适应目标外观变化。
但是,孪生网络对同类目标中特定目标的特征表达能力不足,不能很好地将特定目标从同类目标中区分出来,同时,由于基于孪生网络的目标跟踪算法大多数都只使用了一阶图像信息表示,这严重限制了孪生网络的非线性建模能力,因此需要学习高阶统计信息表示来增强非线性建模能力[12]。高阶统计信息能够很好地描述同类目标中特定目标的信息,并在图像分类和细粒度图像分类等任务中得到应用。
本文针对基于孪生网络目标跟踪算法对相似目标表达能力不足的问题,提出一种轻量级的基于二阶池化特征融合的孪生网络目标跟踪算法。
本文算法框架见图1。该算法使用了结构相同并且权值共享的孪生网络结构,其主干网络是AlextNet,该算法将视频序列的第1帧作为模板帧,后续帧作为搜索帧[13]。首先,使用孪生网络结构获取模板帧目标的特征和搜索帧中候选样本的深度特征;然后,在孪生网络结构末端并行添加二阶池化网络和轻量级通道注意力,获取目标的二阶池化特征和通道注意力特征,其中二阶池化特征是对深度特征的细化和增强,可以提高对相似目标的判别能力;通道注意力特征更关注目标的语义信息,最后,将目标的深度特征、二阶池化特征和通道注意力特征以Add方式进行融合,使用融合后的特征进行互相关操作,得到的响应图能很好地区分目标和背景,提高模型的判别能力,改善目标定位的精度,从而提升跟踪性能。
图1 算法框架图
SiamFC[9]分为离线训练和在线评估两个阶段。
1)离线训练阶段:首先,对训练集中的视频帧进行裁剪缩放,得到以目标为中心,大小为127×127的模板图像z和255×255的搜索图像x;然后,使用AlexNet端到端的训练相似度匹配函数f(z,x):
f(z,x)=φ(z)*φ(x)+b1
(1)
式中:φ表示卷积嵌入函数;*表示卷积互相关操作;b1表示得分图中各个位置的不同偏置项。
Gao等人[14]指出二阶池化网络能够显著增强卷积神经网络模型的非线性拟合能力,受此工作启发,本文将二阶池化网络应用到SiamFC算法中,所使用的二阶池化网络如图2所示,包括挤压模块(squeeze module)和激励模块(excitation module)。
图2 SoP模型
挤压模块的目的是在通道维度上对输入张量的信息进行二阶统计建模,获取具有通道相关性的协方差矩阵。假设特征提取网络最后一层的输出张量X″∈Rw×h×d,其中d代表特征通道数,w和h为特征图的宽和高。为了降低后续计算开销,采用卷积进行降维处理,得到张量X′∈Rw×h×d′,并进行二阶池化操作,其过程如图3所示。
图3 二阶池化操作
首先将X′进行两次Reshape操作,得到X∈Rd′×(w×h)和XT∈R(w×h)×d′的特征矩阵,然后计算特征图X′的协方差矩阵:
(2)
P=UΛUT
(3)
式中:Λ=diag(λ1,λ2,…,λn)为对角矩阵;λi为特征值;U=[u1,u2,…,un],为对应的特征向量。通过上述的特征值分解可以将对矩阵的幂运算转换为对特征值的幂运算进行求解:
P≜UF(Λ)UT
(4)
在本文中α=0.5,F(Λ)=diag(f(λ1),f(λ2),…,f(λn)),其中f(λi)表示对特征值进行幂运算:
据云南陆军讲武堂历史博物馆编辑的官方资料,这26年中,讲武堂培养学员8300人,其中有300多人先后被北洋政府、广州民国政府、南京国民政府、中华人民共和国以及韩国、朝鲜等授衔为将军、元帅。其比例之高,世所罕见,真可谓“将帅摇篮”。
(5)
协方差矩阵是为获得各通道中像素间的相关性,描述如下:
(6)
式中:Xi表示第i个通道的特征图,i∈[1,d′]。
激励模块的目的是在通道维度上对输入张量的信息进行重新标定,获取具有通道相关性的输出张量。为保持输入张量的原始结构信息,首先对d′×d′协方差矩阵进行逐行卷积操作,得到一个d′×1的向量;然后使用卷积和非线性激活函数Sigmoid,得到一个d×1的权重向量;最后执行权重向量和通道之间的点积操作,得到具有通道相关性的输出张量,该张量是对原始深度特征的细化,对相似目标具有良好的判别能力。
本文算法使用的实验平台为Ubuntu 16.04,GPU为1080 Ti,采用PyTorch1.6实现。所提算法仅使用Got-10k[15]数据集进行端到端的训练,在训练过程中,batch_size设置为8,学习率从0.01衰减到0.000 01,动量设置为0.9,使用平衡损失函数提高跟踪精度,使用随机梯度下降优化器拟合收敛速度,测练周期为50个批次。在两个具有代表性的目标跟踪测试集OTB100[16]和VOT2018[17]来验证本文算法的有效性。
在OTB100上对本文算法进行消融实验来验证所提算法各个模块的有效性和对目标跟踪的实时性影响。实验结果如表1所示(最优性能加粗表示),首先,复现基准算法SiamFC,精确度和成功率分别为0.777和0.580,速度为37FPS;然后,在SiamFC中添加ECA模块,精确度和成功率分别为0.807和0.604,速度为35FPS,表明ECA模块在增加少量运算的同时可以获取更多目标的语义信息,优化跟踪模型,使跟踪性能得到一定的提升;其次,在SiamFC中添加SoP模块,精确度和成功率分别为0.828和0.616,速度为32FPS,表明SoP模块在增加一定运算的基础上可以获取目标的二阶信息,能够更好地优化跟踪模型增强对目标的判别能力,使跟踪性能得到显著的提升;最后,在SiamFC中添加ECA模块和SoP模块,精确度和成功率分别为0.852和0.632,速度为31FPS,表明融合目标的原始特征、二阶池化特征和通道注意力特征可以更好地优化跟踪模型,提高目标定位的精确性,从而获得良好的跟踪性能。
表1 ECA模块和SoP模块在OTB100上的消融实验
OTB100[16]由100个视频序列组成,是目标跟踪领域中最流行的数据集之一,该数据集的两个重要评价指标是精确度(Precision)和成功率(Success)。将本文算法与KCF[18]、SRDCF[19]、SiamFC[9]、Staple[20]、BACF[21]、SiamRPN[10]、SiamDW-FC[22]、ATOM[23]、UniTrack[24]、SiamSE[25]等具有代表性的目标跟踪算法进行比较,其中SiamFC作为所提算法的基准算法。在OTB100数据集上进行定性和定量分析。
2.2.1 定性分析
为了定性分析本文算法的性能,在OTB100数据集中挑选6组视频进行比较。图4给出了本文算法和另外5种对比算法的部分跟踪结果,下面对跟踪中存在的3个挑战属性进行定性分析。
图4 选定视频序列跟踪效果(注:第1行为Bird1,第2行为Box,第3行为Girl2,第4行为Jump,第5行为Motor Rolling,第6行为Skilling)
1)快速运动:以视频Bird1和Skilling为例,快速运动导致目标表观信息发生变化。由于KCF和SRDCF等相关滤波类算法训练模型的判别性不足,导致跟踪漂移;快速运动对互相关类跟踪算法也会产生较大的影响,SiamFC在快速运动后丢失目标,后续过程不能恢复跟踪;而本文算法使用二阶池化网络和轻量级通道注意力可以提高模型的判别能力,在快速运动过程中能够持续稳定地进行跟踪。
2) 目标遮挡:以视频Box和Girl2为例,在目标被遮挡时,AlexNet提取特征的能力有限,导致SiamFC跟踪漂移;虽然Staple结合了HOG和CN特征能很好地解决目标尺度变化问题, 但是由于没有采用CNN提取深度特征,在目标被遮挡时,提取的特征能力有限,导致跟踪漂移;而本文算法使用二阶池化网络和通道注意力,在目标特征提取上更能关注到目标的显著特征,提取的特征更具有鲁棒性。
3) 目标形变:以视频MotorRolling和Jump为例,目标视角和姿态的变换,导致目标发生形变和旋转,从而会引入一定的背景干扰信息。由于SiamFC判别能力不足,导致跟踪漂移;然而BACF没有考虑目标形变问题,导致提取的特征不能完全表示目标整体特征信息;而本文算法使用二阶池化网络和通道注意力可以提高表观模型的抗干扰能力,提取的特征更具有泛化性。
2.2.2 定量分析
图5给出了本文算法与其它10种对比算法在OTB100数据集上的整体精确曲线和成功曲线,本文算法的精确度和成功率分别为85.2%和63.2%。精确度高于现主流算法UniTrack、SiamDW-FC和SiamRPN;成功率高于UniTrack,与SiamDW-FC和SiamRPN相当。由于ATOM和SiamSE算法比较复杂,都使用了性能更优的网络和更复杂的优化策略,故本文算法的性能略低于ATOM和SiamSE,但本文算法性能相较于现主流算法依然有一定的竞争力。与基准算法SiamFC相比,跟踪性能取得了显著提升,精确度提升了7.5%,成功率提升了5.2%。
图5 OTB100的定量对比结果
为进一步分析本文算法的优缺点,提供了基于属性的性能分析来说明本文算法在关键属性上的优势。OTB100中的视频序列标注了11个具有挑战性的属性,包括:光照变化(illumination variation, IV)、尺度变化(scale variation, SV)、遮挡(occlusion, OCC)、形变(deformation, DEF)、运动模糊(motion blu, MB)、快速移动(fast motion, FM)、平面内旋转(in-plane rotation, IPR)、平面外旋转(out-of-plane rotation, OPR)、离开视野(out-of-view, OV)、相似背景(background clutters, BC)、低分辨率(low resolution, LR)。
表2列出了11种属性下的本文算法和对比算法的精确度(结果最优加粗表示,次优加下划线表示,第三优加点式下划线表示)。通过分析表2,本文算法在多个跟踪场景中均取得了较好的跟踪效果,尤其是在相似背景(BC)、尺度变化(SV)、快速运动(FM)等挑战属性下精确度处于次优和较优位置,同时,在其它属性下精确度均处于较优位置。这是因为本文算法在相似背景、尺度变化、快速运动等属性下,通过二阶池化网络获取目标特征信息的全局依赖关系,通过通道注意力分配网络中的权重参数,更好地关注目标特征中的重要信息,改善了特征提取网络的表达能力,提高了跟踪模型的判别能力,从而取得了良好的跟踪性能。
表2 不同属性下算法的跟踪精确度结果
VOT2018[17]数据集包含60个具有挑战性的彩色视频序列,是目标跟踪领域中最流行的数据集之一,该数据集的主要评价指标是预期平均重叠率(expected average overlap, EAO)、准确率(accuracy)和鲁棒性(robustness)。
表3展示了本文算法与具有影响力的跟踪器SiamFC[9]、DCFNet[26]、DSiam[27]、DensSiam[28]、SiamRPN[10]、SiamDW-FC[22]、SiamSE[25]的各项指标结果(性能最优结果加粗表示,次优结果加下划线表示,第三优结果加点式下划线表示),本文算法的预期平均重叠率为0.231,准确度为0.516,鲁棒性为0.503。在预期平均重叠率指标上略高于主流跟踪器SiamDW-FC,在准确度指标上高于主流跟踪器SiamDW-FC和SiamRPN,在鲁棒性指标上比SiamDW-FC、SiamPRN、SiamSE略低。相较于基准算法SiamFC,预期平均重叠率提高了4.3%,准确度提升了1.6%,鲁棒性提升了5.6%,其原因是本文算法使用二阶池化网络和通道注意力可以提高跟踪模型的判别能力,在目标特征提取上更能关注到目标的显著特征,提取的特征具有鲁棒性和泛化性。
表3 VOT2018实验结果
本文提出一种轻量级的基于二阶池化特征融合的孪生网络目标跟踪算法。首先,使用孪生网络结构获取目标的深度特征;然后,在孪生网络结构的末端并行添加二阶池化网络和轻量级通道注意力,获取目标的二阶池化特征和通道注意力特征;最后,将目标的深度特征、二阶池化特征和通道注意力特征进行融合,使用融合后的特征进行互相关,得到的响应图能很好地区分目标和背景,提高模型的判别能力,改善目标定位的精度,从而提升跟踪性能。
在未来的研究中,将进一步挖掘二阶池化网络的潜力,使用性能更优的主干网络,获取中间层特征与图像全局的依赖关系,充分利用中间层特征潜在的信息,增强特征提取网络的表达能力,提高模型的判别能力,从而更有效地提升目标跟踪的性能。