更深更宽的孪生网络,有效提升目标跟踪精度,代码开源
通过大量的试验对比,作者发现了几个因素对深层网络的跟踪性能影响很大:感受野 the receptive field、网络步长network stride、有无padding 以及最后输出层的尺寸 output feature size。
作者进一步分析实验结果,从网络结构的角度总结了Siamese 网路设计时应该遵循的原则。依据设计原则,在传统深层网络的基础上引入了CIR模块以及CIR-D模块,提高了模型跟踪的鲁棒性和精度,在VOT-15、VOT-16上取得了SOTA的效果。
背景&动机
这是为什么?这与我们认知的深层网络有着更强大的拟合以及抽象能力,背道而驰。
开展的工作
作者对影响backbone network跟踪精度的因素做了系统的研究,并提出了Siamese 系列跟踪器设计原则。 基于 no-padding残差单元,作者实现了深度更深、分支更多的Siamese trackers,并在实验中取得了不错的效果。
理论&方法
作者修改了 AlexNet, VGG,Inception 和ResNet的网络模型,通过对比找到了影响网络性能的相关因子。如下表1所示,其中0表示原始的RF尺寸,+和-代表在原始尺寸(87)基础上增加或者减少对应的value,Max(127)表示最大的effective RF尺寸为127。对于Inception来说RF size是一个动态范围。
对于一个包含padding操作的network原始图像的特征是从原始图像加上额外零填充区域中提取的。不同的是,对于搜索图像的特征,有些特征可能只从图像本身提取,而有些特征则是图像本身加上额外零填充的区域(例如目标在图像的边缘,则会提取到边界附近填充区域的特征)。
Guidelines
最适合的stride是4或者8。 最后一层感受野size应该参考exemplar image大小,effective ratio 应该是exemplar image 尺寸的60%~80%最合适。尤其是要注意最大的RF不能大于exemplar image 本身的尺寸,否则性能会有所下降。 对于输出特征尺寸(OFS),可以观察到较小的尺寸(OFS 3)不利于跟踪。这是因为小的特征图缺乏对目标的空间结构描述,因此在图像相似度计算中鲁棒性较差。 在设计网络体系结构时,应将网络步长、感受野和输出特征图尺寸当作为一个整体来考虑,如果一个因素改变了其他的因素也应该有相应的变化。 在backbone networks上移除掉padding操作,或者扩大 exemplar and search images尺寸,然后裁剪掉受padding操作影响的那部分。
Deeper and Wider Siamese Networks
作者设计了新的 cropping Inside residual (CIR)模块,来减少潜在的位置估计偏差。通过堆叠残差模块建立一个更深更宽的网络,关于步长以及感受野的大小按照上文提到的准则来设计。
Cropping-Inside Residual (CIR) Units
残差单元是该网络结构优化的关键部分,它由3个堆叠的卷积层以及一个绕过它们的 shortcut connection连接组成,如图3所示:
(a)和(b)是原始的残差单元以及下采样单元,(a')和(b')是作者提出的CIR和CIR-D单元。(c)和(d)是加宽的CIR unit,值得注意的是CIR-Inception用1*1的卷积代替addition操作融合了两个分支的特征。
而CIR-Next中将瓶颈层划分成了32个分支,并通过addition操作将他们融合。图3中蓝色模块是不同于original部分。字母'p'和's'表示padding和stride的尺寸。
Network Architectures
通过叠加图3的CIR单元,可以构建一个深度更深,分支更多的新型网络结构。设计网络模型需要遵循相关的原则,以保证性能的改善。
首先,确定网络stride,可以以8为步长构建三级网络,或者以4为步长构建二级网络(如表3的CIResNet-22以及CIResNet-43 )。
然后堆叠CIR unit。作者提出需要控制每一级的CIR unit数量以及下采样unit的位置。目的是确保最后一层感受野的大小在可接受范围内,即原始图像的60%-80%。
另外,随着网络深度增加,感受野的尺寸可能会超过这个范围,我们需要进一步缩小步长来控制RF在合理的范围内。
其中Deeper networks结构类似于ResNet,但具有不同的网络步长、感受野以及building blocks数量。在表3中,作者提出了四个deep cropping-inside残差网络。
包括 CIResNet-16,19, 22(stride=8) 和43,除了CIResNet-43(stride=4)外,其他都是 3 stages网络。
同时,作者使用 CIR-Inception和CIR-NeXt units构建了两种不同类型的wider network,表示为CIResInception-22 和CIResNeXt-22。
实验
作者将设计的backbone networks应用于SiamFC以及SiamRPN 两个有代表性的模型中。
Training:
作者通过ImageNet的预训练模型来初始化网络参数。在训练期间首先固定前7*7卷积层的网络权值,从后到前逐步微调其他层的网络参数。5个训练回合后,开始unfreeze每个block中固定的权重,
Testing:
在训练后的SiamFC和SiamRPN模型上开展测试。计算第一帧目标的编码,对后续的视频序列 进行匹配。针对跟踪目标的scales变换,SiamFC在每个候选目标位置处设置了三个不同的scales 的矩形框,分别是 {1/1.0482 , 1, 1.0482}。
Comparison with Baselines:
作者在 OTB-13, OTB-15 和VOT-17数据集上,对不同的backbone network 的SiamFC和SiamRPN做了对比,如表4所示:
可以看出作者提出的基于CIR模块改进的backbone network在跟踪精度上都要优于原始的浅层AlexNet,特别的以CIResNet-22为backbone的SiamFC模型比AlexNet在OTB-2015及VOT-17上分别提高了9.8%(AUC)以及24.4%的(EAO)。同时基于CIResNet-22的 SiamRPN也分别取得了4.4%和23.3%的性能提高。
为了控制感受野size在合理的范围内,对于层数更深的网络(43层),stride调整为4然而,步长缩小会使得相邻两个两个特征区域的感受野有较大部分重叠。因此,在目标定位方面并不如stride为8的网络精确。
由于CIResNet-43只采用了2阶的网络结构,在模型总体的参数数量以及特征通道数都比CIResNet-22的更少。如上表3所示。
另一个值得一提的是虽然CIResNeXt-22模型更宽,但是相比CIRResIncep-22,和CIResNet-22来说模型的规模更小,如表3所示,效果并不占优。
Comparison to State-of-the-Art Trackers
作者将SiamFC+ 和 SiamRPN+在VOT-15、VOT-16、VOT-17数据集上分别与State-of-the-Art Trackers进行了对比,如图4所示:
总结
目标跟踪交流群