特征融合的尺度自适应核相关跟踪算法
2022-03-01叶秋笛
叶秋笛,袁 亮,吕 凯
(新疆大学 机械工程学院,新疆 乌鲁木齐 830047)
0 引 言
目标跟踪是计算机视觉中非常具有挑战性的研究课题[1,2],近年来,以准确性和实用性并称的相关滤波器的跟踪方法[3-7]迅速发展。相关滤波器跟踪的思想是对当前帧目标及其周围一定区域进行特征提取,并采用循环矩阵对训练样本增广,将提取到的特征通过傅里叶变换从时域转化到频域,带入岭回归方程来训练滤波器[8],最后将滤波器与下一帧的待预测区域做相关运算,用最大响应位置来更新目标位置。相关滤波器在跟踪速度和准确率上比粒子滤波器有了显著的提升,但是依然没有很好解决目标尺变化、目标周围存在复杂干扰等问题;很多主流相关滤波跟踪器[8-10]均采用单一(histogram of oriented gradient,HOG)特征作为提取到的特征来进行跟踪,HOG特征在对于目标发生旋转,形态变化等情况时,跟踪鲁棒性明显降低。
为了提升相关滤波器在面对上述问题的鲁棒性,在KCF算法上提出一种具有良好抵抗尺度变化、复杂干扰能力的跟踪算法。对HOG与CH(color histogram)特征[11]进行加权融合,通过融合CH特征光照鲁棒性与HOG特征的形变鲁棒性,增强跟踪器在复杂跟踪场景下的泛化能力。在解决尺度变化的问题时,采用一个含有7个尺度因子的尺度池,在尺度池里寻找响应最大的尺度作为当下尺度;最后在模板更新策略上,采用APCE,average peak-to-correlation energy[12]作为评判标准,一定程度上防止了模板错误更新而导致的跟踪飘移、丢失等问题。
1 相关滤波跟踪器
1.1 KCF跟踪器原理
KCF算法中采用岭回归来训练分类器,通过核函数将线性空间的岭回归映射到高维的非线性回归,最后求解映射后的岭回归函数,得到所求最高响应位置;在傅里叶变换的过程中,运用循环矩阵在傅里叶空间可对角化的性质将矩阵的运算转化为元素之间的点乘,从而加速了运算的过程。
1.2 KCF相关计算
在岭回归的训练过程中,定义训练样本集为(xi,yi),那么线性回归函数f(x)=wTx, 式中:w是x的权重;定义损失函数为
(1)
w=(XTX+λI)-1XTY
(2)
式中:X,Y分别是样本与标签的矩阵。这里通过使用核函数,将低维的线性问题映射为核空间的非线性问题,使得样本在新的空间里线性可分;定义核相关
k(x,x′)=〈φ(x),φ(x′)〉
(3)
式中:φ(x)为w的线性组合,即
(4)
式中: 〈·,·〉 表示内积,将式(4)带入式(2),求解w的问题转化为求解x的问题
a=(Kxx+λI)-1y
(5)
式中:Kxx为相关矩阵XTX的核空间表示,训练相关滤波器需要大量的样本作为数据支撑,而大量的训练样本又会减缓滤波器的运算,这对于样本的生成与滤波器训练提出了新的要求。循环矩阵的使用比较好地解决了这个问题;对于一对样本与其真实标签 (x,y|x,y∈Rn×1), 如果x=(a1,a2,…,an)T的循环仍是样本,定义由样本循环位移产生的循环矩阵
(6)
对于一个新的样本x′=(a′1,a′2,…,a′n)T, 那么x与x′所有循环样本的内积可以表示为
(7)
式中:⊙表示矩阵的Hadamard积,F,F-1分别表示离散傅里叶变换与逆离散傅里叶变换,符号*表示共轭复数。利用循环矩阵的酉矩阵性质,在频域计算式(5)中的核参数a
(8)
式中:kxx是核函数矩阵Kxx中第一行元素组成的向量。同样的,我们构建关于待测样本的核函数,计算所有待测样本的响应
(9)
式中:kxz是核函数矩阵Kxz中第一行元素组成的向量。使用高斯核作为滤波器的核函数,最终得到样本的核相关表示为
(10)
式中:L表示特征的通道数。
2 改进算法
2.1 特征融合
在多种跟踪问题同时存在的跟踪场景下,配置单一特征的跟踪器往往会出现跟踪失败的情况,这对特征提取提出了新的要求。通过在KCF跟踪器下加入CH特征,利用HOG与CH的互补特性,提取到更加丰富的特征信息。
CH特征定义为一个平均特征像素的线性函数
(11)
式中:βT表示权重,H是全局像素数量,ψ[u]表示颜色特征像素。参考VOT13挑战中PLT方法,设定一种特殊形式的特征索引方式ψ[u]=ek[u], 索引向量ei在索引i方向为1,其余方向都为0;如此,只需查找所有满足βTψ[u]=βk[u]的情况并计算单一稀疏内积,而非全局内积。为了更好的与HOG特征融合,对跟踪目标和背景区域独立计算损失,并线性相加
(12)
式中:x为样本,p为真实目标框位置,O为目标区域像素,B为背景区域像素;将目标在每个特征维度分解为独立的项
(13)
(14)
(15)
式中:γ∈[0,1] 是权值超参数,最后由融合后的最大置信值yi确定当前帧的目标位置。
2.2 多尺度估计
针对跟踪过程中目标尺度发生变化的问题,提出了通过设定一个不同尺度的尺度池,将池内不同尺度大小的目标与真实值做相关计算,最后将响应最大的尺度更新为当前尺度。设原始图像空间中的目标窗口大小为st,通过双线性差值将模板大小固定为ST=(Sx,Sy), 并定义一个线性变尺度的尺度池S=[t1,t2,…,tk]。 式中:k为设定尺度的数量。对于当前帧,在 {tist|ti∈S} 中以预先设定好的尺度池采样k个不同尺度的目标,分别计算k次响应
(16)
式中:zti表示归一为ST大小的ti尺度样本;所得最大响应的ti即为当前帧的目标尺度。
在改进算法中,采用k=7,S=[0.985, 0.990, 0.995, 1, 1.005, 1.010, 1.015]。
2.3 模板更新策略
目标跟踪的过程中,会根据响应值的变化来更新模板,在复杂的跟踪场景下,目标如果过于频繁的更新模板,会将背景的干扰信息更新到模板里,进而使得跟踪器错误将背景信息理解为目标信息,最终导致目标跟丢。针对这个问题,提出了利用APCE作为检测置信度的评价指标
(17)
式中:Fmax表示全局最高响应,Fmin表示全局最低响应,Fw,h表示在位置 (w,h) 时的响应。这个判断依据反映了响应的震荡程度,当APCE突然减小时,说明目标出现了被遮挡的情况,这时模板会停止更新,防止跟踪失败或目标框漂移;通过设定两个阈值参数η1,η2,在当前帧t时,只有同时满足式(18)和式(19)时,目标模板才会继续更新,否则模板停止更新,默认为上一帧的模板
(18)
(19)
2.4 改进算法流程
改进的算法流程详见表1。
表1 改进算法流程
3 实验和结果分析
首先,将提出的改进算法在OTB100测试集上进行部件分析,OTB100一共有100个视频序列,其中有彩色序列也有灰度序列;这些序列包含了11种跟踪问题,它们分别是快速运动(FM)、背景干扰(BC)、动态模糊(MB)、形变(DEF)、光照变化(IV)、平面内旋转(IPR)、平面外旋转(OPR)、低分辨率(LR)、遮挡(OCC)、出视野(OV)和尺度变化(SV)。随后将改进算法与4种流行的相关滤波目标跟踪算法进行比较,这4种算法分别是KCF、DSST、Staple、SAMF。在分析实验结果上,采用OPE(one pass evaluation)模式,使用的评价指标为精准度和成功率。精确度指的是中心位置误差小于20像素的帧数占视频序列总帧数的比例
(20)
式中: (xt,yt) 为跟踪算法在跟踪过程中获得的目标中心位置, (xg,yg) 为真实目标中心位置。成功率指的是算法的成功率曲线与坐标轴所围成的面积,成功率曲线由式(21)确定
(21)
式中:rt为跟踪算法跟踪过程的回归边框,r0为真实边框。
3.1 实验环境与参数设置
实验平台的硬件配置为I5-4460 3.20 GHz 4核CPU,8 GB RAM的计算机,算法的开发平台为MATLAB 2018b。在参数设置上,除非特殊说明,参数配置均参照原始论文中配置的默认参数。
3.2 定性分析
如表2所示,从OTB100中选取10个具有特点的视频集,将改进算法及4种对比算法在视频集中的回归框同时放在视频集的每一帧图片上。
表2 视频集信息
通过图1结果表明,提出的改进算法在解决背景干扰、光照变化、尺度变化及旋转变化问题时具有更优秀的表现。
3.2.1 背景干扰
在跟踪的过程中,复杂的背景会为跟踪任务增加困难,多元的背景信息会迷惑跟踪器,使得跟踪器错误将模板更新到背景信息上,从而发生目标框的丢失和漂移,最终导致跟踪失败。这里以“Couple”、“Bolt2”、“Football1”3个视频集的跟踪效果为例,在这3个视频集中,目标周围都存在一定程度的背景干扰。从图1(a)中可以看出,情侣走斑马线过马路的过程中,背景存在车辆、路灯等干扰,在第36帧时,KCF算法的目标框开始漂移,而此时DSST算法已经跟踪失败;随着二人行走,背景变得愈发复杂,出现了交通警示牌,远处的行人以及更多的车辆,在第115帧可以看到,除了改进算法外,其余对比算法均跟踪失败。接下来看图1(b),在跟踪博尔特的赛跑过程时,其余一同参赛的运动员,站在一旁的裁判都成为跟踪的背景干扰,在第11帧时,DSST算法、KCF算法和SAMF算法都错误将博尔特旁边的运动员当作跟踪的目标,在第85帧可以看出,之前错误跟踪博尔特旁边运动员的3种算法均跟踪失败;最后如图1(c)所示,跟踪一名橄榄球运动员拼抢的过程中,其余运动员均成为干扰目标,在第73帧时,所有对比算法的回归框都出现了一定程度的漂移。改进算法在特征上采用了HOG+CN的特征组合,在性能上互相补足,再配合APCE评判标准,在复杂背景干扰情况下使模板的更新适当停止,极大程度缓解了目标框的漂移,增加了算法在复杂背景干扰下的鲁棒性。
图1 5种算法在所选序列上的跟踪效果
3.2.2 光照变化
在一些视频集中,存在着光照强度的改变,一些跟踪器在模板更新时不能正确处理目标和背景上改变的亮度信息,从而出现跟踪发生偏差或失败。这里以“Shaking”、“Tiger2”两个视频集为例;如图1(d)所示,吉他手演奏的过程中,身后聚光灯的光照变化十分明显,在第63帧时的光照变化尤为突出,KCF算法、SAMF算法和Staple算法均出现了漂移。接下来看图1(e),在第126帧中跟踪目标会闪过强烈的光源,这时KCF算法、DSST算法和SAMF算法均发生了偏移。改进算法中,光照变化对于CH特征的影响较小,通过融合CH特征的响应,从而增加了算法的抗光照变化影响的能力。
3.2.3 尺度变化
在跟踪的过程中,目标所占整张图片的比例随着镜头与目标的变化而发生变化,跟踪目标在表现上就发生了尺度的改变。一些跟踪算法不能或不能正确适应跟踪目标的尺度变化而调整回归框的大小,使得回归框不能正确获得跟踪目标的信息,最终导致跟踪尺度不匹配或跟踪失败。这里选择“Trellis”、“Human9”、“Vase”3个视频集为例;从图1(f)中看出,在目标行走的过程中,目标的头部发生了一定的尺度变化,在第406帧中,KCF算法由于不具备尺度自适应的能力,从而造成目标框过大,DSST算法与Staple算法没有准确框选目标尺度。接着看图1(g),第72帧-第105帧的过程中,目标是一个先远离后接近摄像头的状态,这时KCF算法回归框保持不变,而DSST算法错误估计了尺度,从而使回归框过大;最后从图1(h)可以看出,从第17帧到第246帧,摄像头逐渐接近跟踪目标,在第116帧中,KCF算法的回归框和跟踪开始时一样,其它算法逐渐适应目标的尺度变化;在第246帧中,SAMF算法和DSST算法的回归框无法与目标尺度匹配,而Staple算法与改进算法的跟踪效果发生了分歧,因为前者认为跟踪目标是笔筒整体,而后者认为跟踪目标是初始状态时笔筒正视图的图案。加入了尺度池的改进算法可以随着目标尺度的改变而自适应的随之改变目标框,使得算法在变尺度的情况下可以更加稳定跟踪目标。
3.2.4 旋转变化
旋转变化分为平面内旋转和平面外旋转,旋转的目标是一个综合问题的叠加,其尺度和形态均发生了不同程度的改变,不能有效获取识别目标形态信息的跟踪器在跟踪旋转目标时通常效果欠佳。这里选择“Bird2”、“Freeman4”这两个视频集为例;如图1(i)所示,在第49帧、第94帧中,目标先后两次发生平面外旋转180度,SAMF算法、DSST算法、KCF算法在过程中先后发生回归框漂移。接着看图1(j),在第94帧、第177帧、第258帧时,目标一共发生3次平面外的90度旋转,在频繁旋转的过程中,除了改进算法,其它对比算法的回归框都出现了不同程度的漂移。这是因为CH特征对形变有较高的敏感程度,通过融合HOG+CH特征,可以使跟踪器从CH特征的响应中获得较丰富的形态信息,从而在目标发生旋转时,更加准确进行目标跟踪。
3.3 定量分析
将10个序列分别在5种算法下进行OPE测试,结果见表3、表4。从两张表中可以看出,改进的算法在所选择的10个视频序列中的平均中心误差及平均成功率分别达到8.1%和75.41%,在5种算法中排名第一,与KCF相比平均中心误差及平均成功率分别降低了40.53%和提升了40.77%;实验结果表明了改进算法在具有复杂干扰(背景及光照),尺度变化,旋转变化的跟踪场景下可以更加稳定、准确地跟踪到目标。
表3 中心度误差对比/%
表4 重叠度精度对比/%
3.4 综合分析
5种算法在CPU加速的运行情况下,其精度和成功率曲线对比和如图2所示,从图2可以看出,通过改进的算法在精度和成功率分别在KCF算法上提高了10.3%和16.3%,相较于SAMF算法,分别提高了4.2%和3.1%。从表5可以得出,改进算法在5个问题的成功率比较中排名第一,5个问题排名第二,一个问题排名第三。所有的问题相较于KCF算法都有一定程度的提升,其中在背景干扰上比第二名的Staple算法高出了9.8%。从运行速度上来分析,可以看出改进算法在跟踪速率上要慢于其它改进算法,主要原因在于尺度池在估计尺度时需要进行多次响应运算,这个过程大大增加了算法的运算量,从而提升了算法的时间复杂性。
图2 OTB-100的精度曲线和成功率曲线
4 结束语
针对KCF算法在复杂场景,尺度变化等情况下跟踪稳定性欠佳的问题,提出了一种尺度自适应的特征融合跟踪算法。算法在原始HOG特征的基础上加入了CH特征,实现了两个特征的互相补足,增强跟踪器的泛化能力;次之,在尺度自适应上增加了一个具有7个尺度的尺度池,使得算法在变尺度情况下可以更加稳定跟踪目标;最后,在模板更新上采用平均相关峰值能量作为判断依据,设定阈值,提高跟踪器在复杂场景下的鲁棒性。通过实验得出,经过改进的算法相较于KCF算法在复杂场景,多尺度变化,目标旋转等跟踪问题上的表现更为出色,并且通过跟踪评价曲线的对比,表明了改进算法在整体的跟踪效果上具有更好的鲁棒性。算法在抗遮挡上仍有提升的空间,后续的工作可以针对于抗遮挡再展开进一步的研究。