李 丽,李均利,田竟民
(四川师范大学 计算机科学学院,成都610101)
目标跟踪的主要任务是根据目标在当前帧的位置信息去预测目标在后续帧中的位置[1].目标跟踪技术在人与机器交互领域[2]、监控领域[3]、机器人技术领域[4]、医学诊查领域[5]等展现出了优异的性能.在实际应用时,要想准确的对目标进行跟踪仍旧会遇到许多挑战.如光照变化、遮挡、形体变换等因素都会对目标跟踪的准确性有影响.
相关滤波跟踪算法为跟踪领域的热点[6].2010年,Bolme等[7]在目标跟踪算法中引入相关滤波思想,提出MOSSE(Minimum Output Sum of Squared Error Filter)算法,该算法利用灰度特征来表示跟踪的目标.2012年,Henriques等[8]在MOSSE算法中加入核方法,提出具有循环结构的检测跟踪CSK(Circulant Structure of Tracking-by-detection with Kernel)算法,解决了样本不足的问题.但由于CSK算法中为单通道灰度特征,所以当目标遇到各种复杂情况时,比较容易出现跟踪漂移的情况.为提升算法的跟踪鲁棒性,Henriques等将CSK算法的灰度特征改为梯度方向直方图(Histogram Oriented Gradients,HOG)特征,提出KCF(Kernelized Correlation Filters)目标跟踪算法[9],极大提高了跟踪精确度.2014年,Danelljan等[10]提出CN(Color Name)跟踪算法,提取目标的CN特征,利用主成成分分析的方法将CN特征的维度降为2维,提高了算法的鲁棒性;Li等[11]将梯度直方图HOG和颜色属性CN特征融合,提出SAMF(Scale Adaptive Multiple Feature)跟踪算法,SAMF算法通过构建尺度池获得多尺度样本,求解目标位置并对目标进行尺度估计.2015年,Danelljan等[12]加入空间正则项提出了SRDCF(Spatially Regularized Discriminative Correlation Filter)跟踪算法,解决了边界效应问题,且使算法的跟踪精确度得到提高.2017年,Galoogahi等[13]提出BACF(Background-Aware Correlation,BACF)跟踪算法.BACF算法为了解决边界效应且提升跟踪精确度,将跟踪滤波器裁剪为目标大小.2018年,Li等[14]通过引入时间正则项,提出了STRCF算法(Learning Spattial-Temporal Regularized Correlation Filter,STRCF),提升了算法的跟踪成功率.
为解决使用目标当前帧样本训练跟踪器时,以上算法在跟踪目标的过程中遇到跟踪目标被大面积遮挡,这时获取的训练样本会被污染,从而导致跟踪模型漂移,致使跟踪算法不能够准确跟踪目标的问题.本文利用通道可靠性系数和经验选择方法评估各个特征通道响应图,以此提高跟踪器对跟踪目标的描述能力,从而提高目标跟踪的成功率.
核相关滤波KCF(KernelCorrelation Filters)跟踪算法[9]在目标视频序列的第一帧中,初始化目标的中心位置,之后使用目标的位置信息去预测下一帧目标的最佳位置,最后用检测结果更新训练样本和目标检测器.KCF方法利用岭回归训练检测器,检测器在包含目标的周围选择跟踪窗口,得到大小m×n的样本图像块x.再对xi进行循环移位,i∈{0,…,m-1}×{0,…,n-1},每一个yi都对应一个样本xi的高斯标签,构成的训练样本集为(xi,yi).第t帧中构建训练器的函数为:
(1)
式(1)中,f为分类函数,f(x)=wTx;x为样本;w为权重系数;yi为样本标签;λ为正则化参数,防止过拟合;‖·‖为范数运算;λ‖w‖2为惩罚项.由岭回归得:
w=(XTX+λI)-1XTy
(2)
式(2)中,w为权重系数;X为样本循环矩阵;λ为正则化参数;y为高斯标签函数;I为单位矩阵.在傅里叶域,式(2)写为:
(3)
在跟踪算法中引入核函数,其核函数表示为k(x,x′)=φT(x)φ(x′),φT(x)和φ(x′)表示映射函数.高维空间的样本权重组合为:
w=∑iαiφ(xi)
(4)
式(4)中,φ(x)为映射函数;αi为样本xi的分量.利用岭回归与核函数理论得到分类器(4)的闭式解为:
α=(k+λI)-1y
(5)
式(5)中,k为核矩阵,其元素kij=k(xi,xj)=〈φ(xi),φ(xj)〉;I为单位矩阵;yi为向量y的元素;α在对偶空间的解为:
(6)
(7)
式(7)中,F-1表示IFFT变换;σ为高斯函数带宽.第t+1帧时,设输入图像为z,分类器响应表示如式(4)所示.
f(z)=wTz=∑iαik(z,xi)
(8)
式(8)中,xi为训练样本;z为检测区域.第t+1帧响应为:
(9)
本文使用的局部秩变换(Local Rank Transformation,LRT)特征,具有光照不敏感性,突出图像边缘信息的特点[15].首先将跟踪目标的原始图像映射到CIELab颜色空间,在CIELab颜色空间L通道上应用局部变换方法获取跟踪目标的特征图谱[16].图1为提取局部秩变换特征的示例图,从左至右分别为跟踪目标的原始图、L通道图和局部秩变换特征图.由局部秩变换特征图可以看出目标的边缘信息比较突出,这有利于跟踪器对目标的跟踪.
图1 LRT特征示例
本文结合LRT特征的特点对LRT特征和Lab三通道目标特征进行融合,得到目标融合特征图.使用映射函数使特征向量近似于交叉核函数的效果[17].交叉核定义如式(10)所示,映射函数如式(11)所示.
(10)
(11)
式(10)中x,z为样本,n为样本数量;式(11)中N为离散化层数,U(x)为一元函数,R(·)为舍入函数.样本映射之后交叉核如式(12)所示.
(12)
从式(12)可分析出,特征映射相近于交叉核关系,这种逐一比较的操作可用矩阵运算替代,且符合图像处理的方式.本文使用的16通道特征图是对4通道特征图(LRT+Lab)中每个元素逐一应用特征映射方法进行扩展得到.这样能通过特征提取区域的大小来保留多少特征信息.
在跟踪过程中,用当前帧的跟踪目标作为训练样本对目标模型进行更新.算法模型更新时,对滤波器各参数进行更新的方法为线性差值.
(13)
(14)
本文基于KCF将HOG特征[18]替换为LRT特征,提出通道可靠局部秩变换的目标跟踪算法(Object Tracking Algorithm Based OnReliable Channel Local Rank Transform,RCLRT).通过考虑干扰目标的影响,利用经验选择的特征通道和根据通道可靠性系数选择的特征通道进行实验比较,选择能够准确反映目标的特征通道,从而更加突出目标的特征,提高跟踪精确度.
算法流程如下:
输入:第1帧图像并初始化目标
输出:所有序列每帧中目标的中心位置
1)提取局部秩变换特征,通过式(3)求解滤波器
2)利用式(4)计算各通道响应图,选择可靠的通道响应图
3)将选择的响应图进行融合得到融合响应图,寻找融合响应图中响应值最大的位置即为目标的位置.
RCLRT中采用LRT特征,共16维特征通道,16维的特征通道中有些特征通道不能清晰地描述目标,如图2所示.
图2 原始目标图和特征通道图
可以看出,特征通道中有很多干扰目标的背景信息或相似目标,使得特征通道不能真实地反映目标.在进行响应图计算时,如果将全部特征通道的权重相加,那么会影响对目标定位的精确性.因此本文将测试通道响应图的可靠性,通过可靠性系数,选择最大的两个值所对应的特征通道的响应图,使其融合得到融合响应图.与经验选择的两个特征通道的融合响应图进行实验比较,选择响应最好的融合响应图为最终的响应图.以此估计目标的位置,提高跟踪精确度.
由于不相同的可靠性系数指标对不相同的模型评价效果存在差异,因此本文选择次峰与主峰比、响应最大值、峰值旁瓣值,3个可靠性系数指标对RCLRT进行评价.在OTB50[19]数据集中,选择20个视频测试的结果如图3所示.
图3 可靠性指标测试结果图
图3中RCLRT1、RCLRT2和RCLRT3分别为次主峰与主峰比、响应最大值和峰值旁瓣值作为可靠性系数的跟踪结果.可以看出峰值旁瓣值更能准确评估RCLRT模型.次主峰与主峰比见式(15).
(15)
式(15)中,Pmax1为主峰峰值;Pmax2为次峰峰值.RSFMP反映了跟踪目标的突出性,值越大,响应图越干净,跟踪效果越好,那么可靠性越高.
计算各通道RSFMP后,选取特征通道中RSFMP值最大的两个所对应的特征通道响应图,将这两个响应图作为可靠性响应图并融合得融合响应图:
S=RSFMPmax1+RSFMPmax2
(16)
本文用到的峰值旁瓣比作为可靠性系数时,其计算公式如式(17)所示.
(17)
式(17)中,gmax表示响应输出矩阵的最大值峰值,峰值附近11×11之外的区域定义为旁瓣;us1表示为“旁瓣”区域的均值;σs1表示“旁瓣”区域的标准差,PSR衡量相关性峰值.利用融合响应图寻找响应最大值位置,作为目标估计位置.
本文提出的跟踪算法,使用的电脑CPU型号为Intel i7-9750H(2.60GHz),内存为16G,Matlab版本为R2016a,Opencv版本为3.4.2.采用Matlab+C语言(Open CV)编写.
本文算法评估方式采用OPE(one-pass evaluation),即用经验标注(ground-truth)的位置初始化第1帧中目标的位置,然后利用跟踪器持续跟踪目标,最终计算出跟踪目标的精确度和成功率.
1)精确度.指追踪算法估计的目标位置(bounding box)的中心点与经验标注的目标的中心点之间的距离小于给定阈值的视频帧的百分比.
为了更好地比较利用可靠性系数选择的特征通道响应图和经验选择的特征通道响应图对估计目标位置的性能.先将经验选择的16种特征通道响应图组合进行比较,根据实验结果,选择最好的组合再与利用可靠性系数选择的3种组合进行对比实验.采用的数据集为上文选取的20个视频序列.
图4是16种特定特征通道组合算法测试排在前10的结果.结合表1可以看出,局部秩变换特征的特征通道2和特征通道7进行组合,无论在精确度还是成功率上,其性能表现都是最好的.因此本文利用RCLRT27算法与RCLRT1、RCLRT2和RCLRT3进行对比实验.
图4 经验选择测试结果
表1 10种算法的精确度、成功率
为分析算法在遮挡、背景杂乱和快速运动等方面的表现性能,本文在OTB50的数据集上选择了4个视频序列进行特定场景测试,选择的视频序列如表2所示,视频序列属性有形变(DEF)、背景杂乱(BC)、平面外旋转(OPR)、遮挡(OCC)、尺度变化(SV)、平面内旋转(IPR)、光照变化(IV).
表2 视频序列属性
图5为本文算法与比较算法在特定视频序列的结果.视频从上至下、从左至右分别是Bolt2(第1,7,16,117,292帧)、Jogging1(第1,65,81,121,252帧)、Dancer(第1,15,90,151,215帧)、Faceocc2(第1,264,389,562,812帧),通过分析跟踪结果可知RCLRT27算法的跟踪成功率和精确度较好.
图5 4种算法跟踪结果
在Bolt2序列中,目标为短跑运动员,背景比较杂乱,目标有快速运动和形变等特点.7帧时所有算法均可跟踪目标,但在16帧及16帧之后,目标发生较大形变时只有RCLRT27能够准确估计目标位置,在跟踪过程中,其他的跟踪器多次出现跟踪漂移或者跟踪失败.
在Jogging1序列中,在65帧时所有算法均可跟踪目标;在81帧目标离开遮挡物之后,只有RCLRT27能够实现目标的准确定位;在121帧,目标彻底离开遮挡物时,仅有RCLRT27与RCLRT3能够准确估计目标位置.
在Dancer序列中,目标在运动过程中出现了大幅度旋转、光照变化和形变.在15帧时,目标旋转幅度较小,所有算法均可跟踪目标但只有RCLRT27能够准确的估计目标的位置;在90帧时,目标的形变和旋转较大时,仅有RCLRT27与RCLRT1能预测目标位置,其余跟踪器出现了严重的漂移.在151帧时,RCLRT2彻底跟踪失败;从总体来说,RCLRT27始终都能够准确的估计目标的位置.
在Faceocc2序列中,所有算法均可跟踪目标,在389帧时,目标发生了旋转,仅有RCLRT27能够实现目标的准确定位,其他算法在跟踪目标过程中跟踪框都发生了偏移.
RCLRT27通过经验选择的特征通道2和特征通道7进行组合,形成最终的响应图,突出目标在响应图中的位置,当目标有多种属性变化时也能够准确跟踪目标.
本文经验选择的特征通道算法RCLRT27和3个可靠性指标算法RCLRT1、RCLRT2和RCLRT3在OTB50数据集上进行测试,结果如图6所示.曲线下面积越大则对应的算法性能越好,结果表明在在成功率曲线与精确度曲线中RCLRT27均优于其他算法.
图6 OTB50数据集测试结果
选择使用梯度方向直方图(HOG)特征的KCF算法和使用颜色特征的CN算法与本文使用LRT特征的RCLRT27算法在4个具有挑战性的序列上进行比较.视频从上至下、从左至右分别是Bolt2(第1,12,30,41帧)、Jogging1(第1,74,85,130帧)、Dancer(第1,50,128,222帧)、Faceocc2(第1,520,600,808帧),通过对3个算法在不同视频序列的跟踪结果进对比分析如图7所示,可以发现在目标快速运动,短时完全遮挡时,RCLRT27算法的跟踪质量和鲁棒性都较KCF和CN算法更好.3种算法在4个挑战性视频序列的精确度、成功率和速率如表3所示,可知本文算法RCLRT27在精确度和成功率上都有最好的结果,其平均速率为56.7fps,满足实时性要求.
表3 精确度、成功率值和速率
图7 3种算法跟踪结果
为对比算法在遮挡、光照变化及背景杂乱时的表现,本文使用中心位置误差和重叠率评价算法的跟踪结果.
1)中心位置误差
(18)
式(18)中,O表示目标中心位置;Ot为人工标定的实际中心位置.误差用像素来表示,即两个中心点之间像素点的个数,中心位置误差越小表示算法越好,如图8所示,RCLRT27的中心位置误差最低,在发生遮挡或形变或背景杂乱时变化较小.为进一步比较,列出平均中心位置误差,见表4.可以看出,RCLRT27平均中心位置误差均是最小的,RCLRT27更加突出跟踪目标,受干扰因素的影响较小,提高了目标跟踪精度.
图8 中心位置误差跟踪结果
表4 平均中心位置误差对比表
2)重叠率
(19)
图9 重叠率跟踪结果图
表5 平均重叠率对比表
本文提出通道可靠局部秩变换的目标跟踪算法,通过经验选择的特征通道2和特征通道7进行融合得到RCLRT27,更加准确的表征目标,突出目标在响应图中的位置,提升了目标跟踪精确度和成功率.实验结果表明,RCLRT27在目标出现遮挡、快速旋转、背景杂乱时,定位精度都有提高;在短暂遮挡后重新出现时,跟踪器也能精准定位目标.本文算法只对目标进行了位置估计,未做尺度估计,后续工作将引入尺度估计,考虑将本文的LRT特征与其他手工特征或者深度特征进行融合来进一步提高目标的跟踪精确度.