基于响应正则化的孪生网络目标跟踪算法
2022-12-03周益飞徐文卓
周益飞 徐文卓
1(武汉大学信息中心 湖北 武汉 430072)2(北京电子工程总体研究所 北京 100854)
0 引 言
随着计算机硬件水平、视频图像处理技术以及人工智能技术的迅猛发展,目标跟踪[1-2]在视觉监控、增强现实、人机交互、自动驾驶等领域[3]应用也越来越广泛。目标跟踪是在连续的视频序列中,根据给定的第一帧图像的目标坐标位置来计算目标在下一帧图像中的确切位置。目前视觉跟踪已经取得了非常大的进展,有许多优秀的跟踪算法用于解决跟踪问题,但在目标运动的过程中,由于尺度变化、形变、遮挡和复杂背景等众多因素的影响,开发一个鲁棒的跟踪算法仍非常具有挑战性。
为了解决上述难题,实现鲁棒的跟踪算法,研究者们提出了很多解决办法。基于相关滤波的跟踪算法KCF[17]通过循环移位来扩充样本集数量,提高了跟踪速度和跟踪效率。SRDCF[12]使用空间正则化来增大特征学习的区域,Staple[18]提出颜色直方图的方法,ACFN[13]提出注意力机制相关滤波网络,使用注意力网络从多个特征提取器中选择最优的模块用于跟踪目标。CSR-DCF[14]利用颜色直方图约束相关滤波学习,构建前景空间可靠性图。还有更多的基于深度学习的相关滤波跟踪算法如DeepSRDCF[11]、CCOT[19]等。近年来,孪生网络被广泛应用于视觉跟踪。SiamFC[4]第一个提出用全卷积孪生网络结构来解决跟踪问题。CFNet[5]将相关滤波(CF)整合为一个网络层,并将其嵌入到基于孪生网络的框架中。Dsiam[6]使用动态孪生网络快速变换学习目标外观变化,并处理来自先前帧的背景抑制。SiamRPN/DASiamRPN[7-8]使用区域推荐网络将目标分类和目标状态估计进行结合。
然而,基于孪生网络的目标跟踪算法通过目标与搜索区域的相似性学习得到响应图,通过响应图最大值来计算目标状态。在目标发生尺度变化或复杂运动等情况下,目标周围出现干扰因素,响应图的最大值可能由次峰值逐渐增大形成,此时使用不准确的响应最大值进行计算目标可能的位置,会导致跟踪模型漂移。
基于上述分析,本文提出了一种简单有效的基于响应正则化的孪生网络目标跟踪算法,用于鲁棒目标跟踪。本文从跟踪响应正则化的角度出发,在SiamRPN网络的基础上,抑制潜在的子峰,同时聚合最大峰值响应,通过在分类模块中使用更准确的响应值来计算目标的状态,更准确地判断目标的前景和背景,降低模型漂移的风险。本文在OTB2013、OTB100和VOT2016上进行了大量的实验,同时与当前主流的目标跟踪算法进行了详细对比分析。实验结果表明,本文的算法在尺度变化和快速运动时具有更好的鲁棒性。
1 孪生区域推荐网络
孪生网络将目标图片与待搜索图片进行逐块区域对比,从左往右,从上至下。孪生网络跟踪算法提出了用一个函数f(z,x)定义z(模板帧)和x(检测帧)的相似度,最终得到相似度分值表(响应图),相似度较高的地方分值较高,反之相似度较低的地方分值较低。
在孪生区域推荐网络跟踪算法中,模板帧和检测帧的相似度匹配过程分为分类分支和回归分支两个分支。分类分支用来判读锚点框是前景或是背景,回归分支用来得到锚点框的位置偏移量。核心公式如下:
式中:z是第一帧所给出的目标框,x可以看为当前帧的搜索区域。“*”表示互相关层,可以看成是φ(z)在φ(x)上滑动搜索,最后得到一个响应图,图上最大值对应的点就是算法认为的目标中心所在位置。cls表示分类分支,reg表示回归分支。
2 本文目标跟踪算法
在孪生网络的模板帧与检测帧的相似度匹配结果中可能存在具有干扰性的最大值,尤其在孪生区域推荐网络中,分类分支决定着候选框为前景或是背景,这些具有干扰性的响应图最大值可能会影响候选框的判断,进而带来跟踪算法的漂移。因此需要计算出更可靠的响应值最大值,减少分类分支的错误判断概率,以提高跟踪算法的鲁棒性。
为了解决此问题,本文基于孪生区域推荐网络的基础之上,在分类分支部分增加响应正则化模块将峰值集中到目标几何中心,并与原响应值进行融合得到新的响应图。算法如图1所示。
我们直接操作预测的目标响应图,并重新公式化为:
[φ(x)]cls*[φ(z)]cls
(2)
图1 算法框架图
式中:M表示应用于每个响应图的响应正则化模块,通过使用响应正则化确保响应图有以目标为中心的单个最大值。M([φ(x)]cls*[φ(z)]cls)表示响应值经过响应正则化之后的结果,[φ(x)]cls*[φ(z)]cls表示分类分支中模板帧与检测帧的原响应图。
2.1 响应正则化
响应正则化模块对每个通道分别提取响应图的水平和垂直方向的最大值,然后求和将跟踪响应图上的最大值集中到目标几何中心[9-10]。本文在孪生网络的分类分支输出的目标响应图上,在水平方向找到每一行的最大值并为该行的所有像素分配最大响应值,在垂直方向找到每一列的最大值并为该列的所有像素分配最大响应值。响应正则化模块之后响应图的元素值计算如下:
2.2 训 练
本文通过离线训练的方式训练模型,并通过最小化损失函数来获取最优模型。使用反向传播BPTT和随机梯度下降SGD进行梯度传播和参数更新。如下:
loss=Lcls+Lreg
(5)
式中:Lcls分类损失;Lreg表示回归损失。
分类损失函数如下:
l(y,v)=log(1+exp(-yv))
(6)
回归损失函数为:
2.3 算法实现
算法流程:
输入:视频序列[t],和第一帧的真值框,坐标位置p1。
输出:目标坐标p2,p3,…,pn。
1 Fort=1:ndo
2 ift==1 then
3 根据p1学习模板帧目标的特征,分为分类特征和回归特征
4 else
5 提取检测帧的特征,分为分类特征和回归特征
7 对模板帧和检测帧的分类特征和回归特征分别进行相关匹配
8 对于分类分支得到的响应图进行响应正则化操作
9 融合分类分支经过响应正则化后的响应图和原响应图得到新的响应图
10 根据响应图得到综合的分类结果和回归结果,进而得到排行前k的候选框
11 根据候选框选择策略得到第t帧目标的位置pt
12 end if
13 end for
3 实验结果和分析
为了验证本文算法的性能,本文将在3个标准数据集上运行实验,包括OTB2013[15]、OTB100[16]和VOT[20]等,对比算法包括SiamRPN[7]、DeepSRDCF[11]、SRDCF[12]、CFNet[5]、SiamFC[4]、ACFN[13]、CSRDCF[14]、Staple[18]、CCOT[19]和KCF[17]等。
3.1 实验细节
在本文的实验中,计算机的配置为一台带有Intel i7 3.6 GHz CPU和GeForce GTX 1060 Ti GPU的PC机。
本文的网络与SiamRPN具有相同的结构,使用AlexNet的网络作为基础网络。本文网络结构在ILSVRC15视频对象检测数据集上进行离线预训练,使用动量为0.9的随机梯度下降(SGD)从零开始训练网络,并将权值衰减设置为0.000 5。学习速率的指数从10-2至10-5衰减。训练周期为50个周期,最小批量为32。
3.2 评价方法
对于上述方法,我们在OTB2013和OTB100上用跟踪精度和跟踪成功率来评估所有的算法。
OTB的两个标准评价指标是成功率(AUC)和精度(Precision)。精度是指跟踪框和真值框的欧氏距离在给定阈值以内条件下的帧数占总帧数的百分比。采用阈值dis=20像素作为评价和对比标准。成功率表示跟踪框和真值框之间的重叠率大于阈值时,帧数占总帧数的百分比。通常取阈值为0.5。
在VOT2016数据集上,算法的性能通过准确率(Accuracy)、鲁棒性(Robustness)和平均重叠期望(EAO)来进行评估。
3.3 定量分析
3.3.1在OTB2013与OTB100上对比结果
通过与SiamRPN[7]、DeepSRDCF[11]、SRDCF[12]、CFNet[5]、SiamFC[4]、ACFN[13]和CSRDCF[14]等众多主流的跟踪器在OTB 2013/100数据集上进行比较,我们对所提出的算法进行了评估。SiamRPN、CFNet和SiamFC是最新的基于孪生网络的跟踪器,CSR-DCF和SRDCF使用注意机制,SiamRPN和DeepSRDCF是深度跟踪器。在第一帧中,所有跟踪器都初始化为真值状态,并报告平均成功率。单路径评价(OPE)的精度图和成功率图如图2所示。表1总结了更多的结果。比较表明,我们的算法在这两种OTB基准上的实时跟踪性能都是最优的。
(a) OTB2013精度图
(b) OTB2013成功率图
(c) OTB100精度图
(d) OTB100成功率图图2 OTB2013和OTB100数据集上成功率和精度对比
表1 OTB成功率、精度和平均运行速度的对比结果
(1) 在OTB2013上对比结果。OTB-2013的结果显示,我们提出的算法成功率和精度达到66.3%和88.9%,排名第一。在使用Siamese网络的跟踪器中,我们的性能优于SiamRPN、CFNet和SiamFC,在成功率评分中分别相对提高了0.5%、5.2%和5.6%,在精度方面分别提高了0.5%、8.2%和8%。与使用其他方法的跟踪器相比,我们的性能优于CSR-DCF和ACFN,在成功率评分中分别相对提高了7%和5.6%,在精度方面分别提高了8.6%和2.9%。
(2) 在OTB100上对比结果。在OTB-100的结果中,我们提出的方法达到了最优,在成功率评分和精度上比排名第二的跟踪器SiamRPN提高0.4%和0.7%。在使用孪生网络的跟踪算法中,本文的算法性能优于SiamRPN、CFNet和SiamFC。与SiamFC、CFNet和SiamRPN相比,将响应正则化整合到我们的跟踪器中,使得我们的成功率得分和精度值提高到64.1%和85.8%,说明了响应正则化在实际跟踪中的有效性。而与其他方法的CSR-DCF和ACFN相比,本文的算法不仅在AUC评分和精度上得分更高,在速度上也更快。
(3) 运行速度。在表1中的平均速度上,前三名是SiamRPN算法、SiamFC算法和本文的算法,每秒传输帧数分别达到了160、86以及80。这三个算法中,本文算法的速度为80帧/s,低于前两个算法,这是因为本文算法采用响应正则化策略增加了计算负载。尽管如此,本文的算法在速度上接近于SiamFC算法,但是本文的算法在跟踪的精度和成功率得分上相比SiamFC有更大的优势。
3.3.2在VOT2016上对比结果
图3和表2展示了在VOT2016中我们的算法与SiamRPN[7]、CSRDCF[14]、CCOT[19]、Staple[18]、DeepSRDCF[11]、SRDCF[12]、SiamFC[4]和KCF[17]的对比结果。本文算法的EAO值为0.348 4,排名第一。SiamRPN虽然速度比我们的跟踪器快了很多,但是在EAO和Failure方面低了很多,这表明引入的响应正则化提高了跟踪的性能。此外我们的跟踪器较CCOT、DeepSRDCF和CSRDCF速度上快了很多。这验证了我们的算法具有较快的处理速度和优异的性能,显示出了实际跟踪应用的潜力。
图3 VOT2016数据集上对比结果
表2 VOT2016对比结果
3.4 定性分析
(1) 快速运动(FM):图4(a)展示了4个算法在目标经历了快速运动的视频序列Tiger1中的跟踪结果截图。在Tiger1视频序列中,由于目标的快速走动和摄像机抖动等因素影响,SiamRPN、CFNet和SiamFC均一定程度的丢失目标,本文的算法能很好地跟踪目标。
(2) 尺度变化(SV):图4(b)展示了4个算法在目标经历了尺度变化的视频序列Lemming中的跟踪结果截图。在Lemming视频序列中,由于尺度变化和光照影响,CFNet和SiamFC丢失目标,而本文的算法和SiamRPN能保持对目标的稳定定位。
在这2个视频序列中,本文的算法均能准确地定位目标,而SiamRPN、CFNet和SiamFC均有一定程度的丢失。本文提出的算法性能良好的原因主要是我们关注目标的干扰响应,对于目标响应进行适当调整,以减少这些特征对于变形、旋转和背景杂波引起的外观变化的干扰影响。
(a)
(b)
图4 定性分析结果
4 结 语
在跟踪方法中,响应图的选择对最终的跟踪算法结果影响至关重要。本文提出的基于响应正则化的孪生网络目标跟踪算法是一种简单且具有较强鲁棒性的目标跟踪算法。本文使用了响应正则化减少孪生网络分类分支中干扰信息的影响,增强算法对尺度变化和快速运动时差异的鲁棒性。最后在OTB2013、OTB100以及VOT2016上的全面评估证实了本文提出的算法相比目前主流的一些跟踪算法取得了较好的效果。为了获得更好的准确率和时效性,未来我们将着手使用深层网络来解决目标跟踪问题。