谢青松,刘晓庆,安志勇,李 博
(1.山东工商学院计算机科学与技术学院,山东烟台 264000;2.山东工商学院信息与电子工程学院,山东烟台 264000)
目标跟踪是根据初始帧目标计算其在后续帧的位置,该技术在智能视频监控[1,2]、人机交互[3]、虚拟现实[4]和视觉导航[5]等领域得到广泛应用,成为计算机视觉领域的重要分支[6~8].目前的跟踪方法主要分为生成式和判别式两大类.早期方法主要以生成式为主,如光流法[9,10],粒子滤波[11],Meanshift[12],Camshift[13],但是该类方法只依赖目标信息进行跟踪,而目标变化存在多样性和复杂性,因此很容易跟丢目标.与生成式不同,判别式方法通过训练分类器来区分目标和背景,在精度上存在较大优势,目前主要以相关滤波和深度学习为主.相关滤波中,Bolme 等[14]提出了最小平方和滤波器算法,但该方法存在不稳定性,同时缺乏目标尺度估计和多通道等问题.Danelljan 等[15]提出了DSST 跟踪算法,利用岭回归算法对相关滤波进行改进,同时增加了尺度滤波器估计目标尺度,然而该方法仅在尺度窗口增加和降低的趋势估计上容易产生漂移,导致小尺度的震荡,检测性能有待提高.目前,更多的是基于深度学习的方法[16,17],DLT 算法[18]将深度学习方法应用到目标跟踪中.它针对在线训练时正样本缺失的问题,提出了一种离线训练与在线调整相结合的方法.
然而,目前的跟踪方法大都使用轴对齐的水平框跟踪目标,相比水平框,旋转框能够更紧凑的包围目标,并且可提供目标的运动方向,方向信息可以进一步解决如动作分类等诸多计算机视觉问题.虽然旋转框存在较大的优势,但对其角度和尺度的准确估计却是一个难题,相关文献[19,20]对此进行了研究,然而这些算法在跟踪速度和精度方面都有局限性.孪生网络中的SiamMask[21]算法将目标分割[22,23]引入了跟踪领域兼顾了这些问题,该算法能够预测目标的分割掩码,并且实时适应最小外接矩形作为跟踪框.尽管该网络在跟踪性能上取得了很大进展,但是当非刚性目标运动时,实时生成的最小外接矩形的准确度较低,框内包含较多背景.而本文认为,这些背景主要是由于跟踪框尺度和角度的不准确引入的.因此本文将SiamMask 作为基准算法,提出了一种基于前景优化的视觉目标跟踪算法,设计了尺度优化和角度优化两个模块,来提升跟踪性能.本文主要贡献总结如下:
(1)针对分割导致的跟踪框尺度不准确,提出了尺度优化策略.该策略不仅保证了目标运动时尺度的稳定性,并且在不丢失目标信息的前提下,较大的提升了跟踪框内的前景比例.
(2)针对分割导致的跟踪框角度不准确,提出了角度优化策略.优化后的跟踪框可适应目标不同程度的旋转且与目标角度保持一致,进一步提升了跟踪框内的前景比例.
(3)在VOT2016[24]、VOT2018[25]和VOT2019[26]三个旋转框标记的数据集上进行大量实验证明,本文提出的前景优化策略具有较高的精度,在一定程度上改进了分割与跟踪结合存在的缺陷.
近年来,基于深度学习的孪生网络系列跟踪算法[27~33]取得了优异的成绩.其中,SiamFC[27]是早期孪生网络的代表,受到广泛关注,运行速度可达到58 fps,然而该网络在跟踪时需要进行多尺度测试,跟踪精度很不理想.SiamRPN[28]在此基础上借鉴了Faster RCNN[34]的区域建议网络,使用边框回归替代多尺度测试,得到最大响应的回归框,准确度显著超于SiamFC.Li等提出SiamRPN++[29]解决了孪生网络中的平移不变性问题,并提出了一种新的模型来执行分层和深度聚合,提高精度的同时降低了模型的尺度规模.
SiamMask[21]算法与他们不同,该算法与分割技术相结合,跟踪框可旋转.但是由于SiamMask 直接对分割掩码拟合最小外接矩形作为跟踪框,在目标发生运动时跟踪框精度往往较低.之后,Chen 等提出SiamMask-E[35]算法优化了SiamMask 的跟踪框拟合过程,该算法首先采用最小二乘法对分割掩码的轮廓进行椭圆拟合,再进一步得到椭圆的最小外接矩形.该方式在一定程度上提升了跟踪框的准确性,但是在目标运动幅度较大时,该方法的跟踪框稳定性较差,精度并不高.
因此,本文在第三节针对SiamMask 跟踪框存在的问题,在尺度和角度上分别进行了优化,来提升跟踪框内的前景比例,抑制背景的干扰.
本文的整体流程如图1 所示,共分为三个部分.第一部分为SiamMask 网络工作,fθ为孪生网络,分支网络中包含回归网络rσ、分割网络hφ、分类网络cφ.其中,分类损失使用交叉熵损失,记为Lcls;回归损失采用归一化坐标的smoothL1损失,记为Lreg;分割部分的损失函数记为Lmask,具体计算在3.1 节.第二部分为尺度优化模块,在优化之前先对SiamMask输出的跟踪框内前景比例进行计算,从而判断是否需要优化,不需要直接输出原跟踪框,否则进行尺度优化,包含两种优化情形(M∩R′,AS/MS).第三部分为角度优化模块,该模块针对跟踪框的原始角度设定了多个偏移,依次与前景计算IoU(Intersection over Union),选择最高的进行输出.具体实施细节在3.3和3.4节.
图1 基于前景优化的视觉目标跟踪算法整体流程框架.图中的R 为回归分支输出的回归框,R′为旋转后的回归框,F 为目标分割掩码,M 为掩码的最小外接矩形,T 为尺度优化后输出的跟踪框,为角度优化后输出的最终跟踪框,AS(Adaptive Strategy)为自适应策略,MS(Mean Strategy)为均值策略,AOS(Angle Offset Strategy)为角度偏移策略.
特征提取时,模板帧z和搜索帧x两个分支经过相同的卷积神经网络fθ,分别生成特征图,两个特征图进行深度互相关确定目标位置:
在三个分支中,分类损失[28]为交叉熵损失,记为Lcls.回归分支中,由神经网络rσ进行回归,损失函数采用归一化坐标的损失,因此回归损失[28]Lreg为
δ[0]~δ[3]分别表示为锚框与真实框回归后得到的平移量(δ[0],δ[1])和尺度缩放(δ[2],δ[3]).分割网络中,由神经网络hφ对响应图g中的每个RoW 预测成w×h的二元掩码,损失函数[21]为
每个RoW 标记为一个二元标签yn,如果RoW 的一个锚框与真实框的IoU 值≥0.6,则yn=1;否则yn=-1.mn表示第n个RoW 预测的二元掩码为mn中位置(i,j)处所对应的二元标签,前景值为1,背景值为-1.因此,本文主干网络损失函数为
损失函数Lloss中,分别使用参数λ1、λ2、λ3对三个分支进行加权.网络训练完成后,在跟踪阶段会输出当前帧的回归框,目标的分割掩码及其最小外接矩形作为跟踪框.在3.3 节和3.4 节分别对该跟踪框进行尺度和角度的优化.
前景即为目标的分割掩码部分,表示为F;跟踪框即为分割掩码的最小外接矩形,表示为M,旋转角度记为θ.M的顶点坐标表示为
最小外接矩形即采用面积最小的旋转矩形对前景进行包围,因此前景属于最小外接矩形内.在跟踪框M内,将前景F所占的比例记为MF:
F_area 和M_area 分别为前景F的面积和跟踪框M的面积.M_area可通过勾股定理得到,前景是一个二值矩阵,记为AFPI∈{0,1},矩阵面积为
X,Y为矩阵的行和列,H(x,y)为矩阵中坐标(x,y)处的值.本文发现当MF>ρ时,跟踪框M内前景所占的比例较高,因此直接输出跟踪框M不需要进行优化.否则,对跟踪框的尺度和角度分别进行优化.
尺度优化策略是一种基于前景的紧凑跟踪框优化方法,即通过优化跟踪框的尺度使它更加紧凑的包围目标,避免引入过多背景.经过观察,边框回归得到的回归框在目标发生运动时,尺度更加稳定.因此在本节中,本文结合了回归框来进行尺度优化.首先,需要对回归框进行旋转预处理,成为与跟踪框M一致的角度:
该操作将回归框R围绕中心点(x0,y0)旋转了θ度,旋转后记为为R的顶点坐标,对应的为R′的顶点坐标,记为:
此时,两者旋转角度一致,通过条件概率计算两者的相似性与差异性,根据结果分为两种优化情形.在这里,将目标搜索区域{(x1,y1),(x2,y2),…,(xn,yn)}记为样本空间S.当某个样本点出现在矩形M内即为跟踪框A发生,出现在矩形R′内即为跟踪框B发生.
首先,通过条件概率公式计算在跟踪框A发生的条件下,跟踪框B也发生的概率,记为P1:
其次,计算在跟踪框B发生的条件下,跟踪框A不发生的概率,记为P0:
其中,P(A)、P(B)、P(A∩B)、P(Aˉ∩B)分别为跟踪框A发生的概率、跟踪框B发生的概率、跟踪框A和B同时发生的概率、跟踪框B发生但A不发生的概率,任意概率计算公式为:
条件概率P1 反映了M和R′两框在位置和尺度的相似性,P0反映了两者的差异性.当P1越大同时P0越小时,表明两者相似性越大,说明跟踪框M的准确性较高;相反,当P1越小或者P0越大时,此时跟踪框M的可靠性较低.定义阈值α,β分别评估条件概率P0 和P1,将尺度优化分为两种情形.
情形1:当同时满足P1>β和P0<α时,此时M的可靠性较高,尺度优化为:
此时M的准确性较高,框内的背景像素较少,目标通常为刚性物体或者运动幅度不大的非刚性物体,取两者交集部分作为尺度优化后的跟踪框T,跟踪框T相较M向目标的中心位置处进行了缩小,过滤掉了目标四周的干扰背景,因此跟踪框内前景比例得到了提高.
情形2:当P1≤β或者P0≥α时,该情形的两框差异较大,若采用式(13)进行优化,可能会发生局部标记或者偏移标记的情况,从而丢失目标信息.因此针对情形2,本文提出了两种优化策略:均值策略(Mean Strategy,MS)和自适应策略(Adaptive Strategy,AS),在消融实验中本文会对两种策略的性能进行比较分析.
(1)均值策略(Mean Strategy,MS)
均值策略即不考虑目标的运动方向,对两框在高度和宽度方向均采用平均策略,即:
其中,R′_w和R′_h分别为R′的宽高,M_w和M_h分别为M的宽高(在任意矩形中,宽≤高).为了避免计算的复杂以及主观的倾向性,均值策略直接对M和R′两个框的宽度和高度分别取均值,作为优化后跟踪框T的宽和高,记为T_w和T_h,中心坐标和旋转角度不变.
(2)自适应策略(Adaptive Strategy,AS)
经过分析,情形2 中跟踪框M包含的干扰背景较多,这些背景一般是由目标的剧烈运动引入,这种目标以人物等非刚体为主,因为四肢的变化很容易引入背景.当人物在水平方向运动时,由于四肢的摆动在目标宽度方向引入背景的可能性极大;而在垂直方向运动时,在目标的高度方向引入背景的可能性较小.
由于目标运动方向的不同,引入背景的可能性也不一样.然而均值策略并没有考虑到该问题,因此本文通过判断目标的运动方向提出了自适应策略,根据目标中心位置变化判断垂直方向和水平方向是否有快速移动状态,然后分别设置不同的优化方式.
首先,根据SiamMask算法计算目标中心位置,将前一帧的目标中心记为(x1,y1),当前帧中心记为(x2,y2).因此,通过目标中心的移动路径与x轴形成的角度来判断目标运动方向,角度计算如下:
|y2-y1|>ε代表了目标在y轴上的移动距离大于阈值ε,因此当角度δ≥γ°时,判断为目标在垂直方向快速运动.而如果在y 轴上移动距离小于阈值,则无需计算角度,将δ记为0°.由于水平方向引入背景的可能性更大,所以垂直方向快速运动还需要限制M和R′两框的宽度差w小于阈值ε,即|M_w-R′_w|=w<ε.反之,判断为目标在水平方向的快速运动.因此,自适应策略的优化公式为:
在该策略中,当目标移动与x轴形成的角度δ≥γ°且w小于阈值ε,即满足目标在高度上快速运动,并且水平方向变化不大,此时跟踪框在高度和宽度引入背景的可能性相同,从而对跟踪框M和回归框R′两者的宽度和高度分别取均值作为新跟踪框的宽和高,宽记为T_w,高记为T_h,中心坐标和旋转角度不变.
若角度δ<γ°或者宽度差w≥ε,即说明了目标在水平方向发生显著运动.此时,跟踪框在水平方向的边往往会被运动的四肢拉伸,导致了跟踪框M的宽度与目标宽度差距较大,而高度与目标不会产生太大的偏差.因此,在不丢失目标信息并且保证更高前景比例的基础上,对稳定性较差的宽度设置两者最小值,记为T_w,而高度设置两者均值,记为T_h,中心坐标和旋转角度不变.
总之,均值策略MS 相对保守,直接对两框宽高取均值避免了计算的复杂性,而自适应策略AS 则根据目标快速移动方向选择不同的优化方式,得到的跟踪框更准确.
最终,跟踪器在情形1 和2 中选择最符合当前帧情形的策略进行优化,然后输出优化后的跟踪框T,坐标记为:
本节的尺度优化是一种基于前景的紧凑跟踪框优化方法,即通过优化跟踪框的尺度提升其前景比例.该策略在目标剧烈运动时依然能够保证跟踪框的准确性与稳定性,消融实验表明,该策略提升了跟踪的精度以及整体性能.在3.4 节将尺度优化后的跟踪框T进行角度优化.
本节在尺度优化基础上,对角度存在缺陷进行改进,进一步提升了跟踪框内前景所占的比例.具体为:(1)对尺度优化后的跟踪框T角度设定多个偏移,包含顺时针和逆时针.(2)将各角度的旋转框处理成二值矩阵,与前景矩阵进行点乘.(3)根据结果计算两的交集与并集比,即IoU.最终,选择IoU 值最高的旋转框输出.
跟踪框T的原始角度为θ,对其顺时针和逆时针分别设置n个偏移阈值,间隔为μ.即生成了不同角度的旋转框集合表示任意一个角度的旋转框.
前景F为二值矩阵AFPI,因此需要将旋转框Ti部分处理为二值矩阵才能得到两者的交集,记为ATiPI∈{0,1}.交集矩阵为
其中,⊗为矩阵中对应元素点乘,AIPI即为两者的交集矩阵.矩阵面积计算方式如式(7)得到,记为I_area.因此,两者的IoU为
Ti_area为Ti面积与T相等,F_area为前景面积.IoU(T)i即为Ti与前景的IoU,跟踪器输出令IoU 最大的旋转框Ti.因此,角度偏移策略表示为:
角度优化策略通过调整跟踪框的角度来避免角度不准确带来的损失.IoU 常被用在目标检测中衡量预测框与真实框的差异,本节采用IoU 策略准确的评估了前景与不同角度旋转框之间的差异,因此当IoU 最大时,该角度相对其他角度更准确.消融实验表明,本文的角度优化策略增强了跟踪的鲁棒性以及整体性能.
本文的实验是在单目标跟踪的测试平台VOT(Visual Object Tracking)数据集上进行的,分别是VOT2016、VOT2018 和VOT2019,均是旋转框标记.评价指标包含精度A,鲁棒性R,EAO(Expected Average Overlap).精度采用预测框与真实框的IoU 值进行评估,值越大精度越高;鲁棒性根据跟踪失败次数来计算(当前帧精度为零时判定为跟踪失败),失败的次数越多鲁棒性越差;EAO 是评估跟踪性能的综合性指标,被认为是VOT数据集中最重要的评价参数.
实验环境:64 位的Windows 10 操作系统,CPU:Inte(lR)Xeon(R)Gold 5218,GPU:GeForce RTX 2080 Ti.Python 3.7 实验,Matlab R2018b 绘图.实验参数:3.1 节中,设置损失函数的权重参数λ1=32,λ2=λ3=1.3.3节中,2016 数据集设定阈值β=0.85;2018 和2019 数据集设定阈值β=0.8;在三个数据集中设定共同参数:ρ=0.9,α=0.2,ε=8,γ=50.3.4节中,n=1,μ=20°.
为了测试每个模块的有效性,本文对3.3 节的尺度优化和3.4 节的角度优化两模块进行了消融实验,结果如表1 所示.这里,SO(Scale Optimization)为本文尺度优化模块,SO(MS)为均值策略优化尺度,SO(AS)为自适应策略优化尺度.AO(Angle Optimization)为本文角度优化模块.
首先,表1 分析了SiamMask+SO(MS)和SiamMask+SO(AS)两种策略的性能,实验表明两种策略在精度和EAO 上均优于基准算法SiamMask,特别是SiamMask+SO(AS)优于SiamMask+SO(MS)的结果.同时,表1 分析了SiamMask+SO(MS)+AO 和SiamMask+SO(AS)+AO的结果,显然SiamMask +SO(AS)+AO 算法在精度和EAO 上具有更高的性能.因此,自适应策略(AS)比均值策略(MS)的准确度更高,整体性能更佳.在三个数据集上,SiamMask+SO(AS)+AO 算法相比SiamMask 算法精度上分别提升约3.2%、3.7%、3.6%,EAO 分别提升了1.8%,1.9%和1.6%.另外,本文提出的SiamMask+SO(AS)+AO 在三个数据集的精度方面均优于Siam-Mask_E算法,同时EAO指标在VOT2016和VOT2019上均优于SiamMask_E算法.
表1 三个数据集下消融实验结果(粗体为最佳性能)
其次,本文对比了使用自适应策略的SiamMask+SO(AS)以及SiamMask+SO(AS)+AO 的结果,在Siam-Mask+SO(AS)基础上进行角度优化AO 后,在VOT2016、VOT2018 和VOT2019 数据集上,EAO 分别提升1.5%、0.8%、0.1%,同时鲁棒性在三个数据集上得到普遍得到增强,因此角度优化AO 具有一定的有效性.
另外,表1 分析发现本文的优化策略会降低鲁棒性的性能,主要原因是优化后的跟踪框更加紧凑的包围目标,某些情况下跟踪框变小会导致目标丢失,使得重启次数增加,从而整体鲁棒性相比基准算法变差.在运行速度方面,表1 统计了三个数据集上的平均速度,SiamMask 算法速度为88 fps,SiamMask+SO(MS)和SiamMask+SO(AS)也均为88 fps,即尺度优化策略对速度没有影响;但增加角度优化后的Siam-Mask+SO(MS)+AO 和SiamMask+SO(AS)+AO 的速度为75 fps,由于角度优化需要计算多个角度与前景的IoU 值,速度有所降低,但仍然能够保持跟踪的实时性.
在尺度优化中本文采用了自适应策略(AS),因此图2~图4 中标注的Ours 均为SiamMask+SO(AS)+AO 的跟踪结果.本文在VOT2016,VOT2018,VOT2019 三个数据集中共与12个国际前沿算法进行了整体性能的比较.分别是SiamMask[21],Siam-RPN[28],SiamRPN++[29],DaSiamRPN[36],SPM[37],Siam R-CNN[38],SiamDW[39],TADT[40],ASRCF[41],Meta-Tracker[42],UpdateNet[43],ROAM++[44].Siam-Mask 的结果数据是在本文的机器测试得到的,其余各算法的结果文件均来自文献[24~26]或者原作者的项目网页中.
图2为六个跟踪器在VOT2016的EAO 得分图,图3为VOT2018 得分图.左侧为跟踪器EAO 得分排序,如图所示,本文的EAO 得分最高.在VOT2018 数据集中,采用本文优化策略后的SiamMask 算法超过了Siam-RPN++和Siam R-CNN两个前沿的算法.
图2 VOT2016 EAO得分图
图3 VOT2018 EAO得分图
本文在相机移动、丢失、光照、运动、遮挡、尺度变化六个干扰属性下分别进行了测试.结果表示,本文算法在相机移动、运动和尺度变化三个属性下,相比SiamMask 算法精度得到很大的提升,并且远高于其他国际前沿算法.在其他属性下,也依然可以保持较高的精度与稳定的性能.
图4 为部分帧的跟踪效果,四个目标均为非刚性物体,都发生了不同程度的运动、旋转和尺度变化.如图所示,SiamMask 网络的跟踪框偏大并且旋转角度与目标不一致,引入了过多的干扰背景.相比之下,本文跟踪框的尺度和角度都更加接近真实框,框内的前景比例更高.因此,本文的优化策略在目标运动,尺度变化,旋转等复杂场景时有较好的稳定性和准确性.
图4 部分视频跟踪效果
针对基于分割的跟踪方法得到的跟踪框不准确的问题,本文提出了一种基于前景优化的视觉目标跟踪算法.设计了尺度和角度两个优化模块,来分别提升跟踪框内的前景比例,抑制背景干扰.本文在一定程度上融合和优化了目标分割与跟踪技术,在VOT2016,VOT2018 和VOT2019 三个数据集上,与SiamMask 算法相比,精度平均提升约3.5%,EAO 平均提升约1.76%,与其他国际前沿的算法相比具有较好的跟踪性能,特别是在相机移动、尺度变化和运动变化等复杂场景下都保持较高的精度.然而本文算法的鲁棒性会有所下降,针对基于分割的跟踪算法鲁棒性优化将是我们的进一步研究方向.