SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks

SiamRPN++: Evolution of Siamese Visual Tracking with Very Deep Networks
文章下载:https://arxiv.org/abs/1812.11703
代码地址:可参考pysot. https://github.com/STVIR/pysot

Abstract

动机:以往的Siamese tracking在精度上还有较大的提升空间,他们不能利用深度网络(如Resnet-50及更深的网络)的特征。

本文:验证了其核心原因在于缺乏严格的translation invariance。做法:1)提出spatial aware sampling strategy (空间感知采样策略),成功将Resnet嵌入Siamese网络中;2)提出一个新的模型架构进行了layer-wise和depth-wise的聚合,不仅进一步提升了追踪精度也减少了模型规模。

实验:在OTB2015, VOT2018, UAV123, LaSOT, TrackingNet 五个数据集上进行了性能验证。

1. Introduction

跟踪背景:视觉目标跟踪已经广受关注,在视觉监控、人机交互、增强现实等方面有广泛应用。但因为光影变化、遮挡、背景杂乱等问题,目标跟踪仍然是一个很有挑战性的问题。

Siamese定义:将视觉目标跟踪问题表述为通过互相关学习一个通用的相似度图,这些互相关关系来自于目标模板和搜索区域的特征表示。

历史工作:CFNet通过平均模板更新追踪模型;DSiam通过一个快速转换模块更新追踪模型;SiamRPN在孪生网络后引入RPN并将追踪问题建模为回归和分类问题;DaSiamRPN进一步引入干扰鉴别模块提升模型的鉴别能力。

提出问题:当前Siamese追踪器的性能仍然不能让人满意。

原因分析:这些Siamese追踪器都是将类AlexNet网络作为backbone,本文尝试将更深的网络(Resnet)作为backbone去训练,但性能没有提升。本文发现其核心原因在于严格translation invariance被破坏(只有AlexNet的0-padding变体满足空间不变性限制)。

本文贡献

做法 意义
提出空间感知采样策略 打破Siamese追踪器对空间不变性的限制,继而使用Resnet作为backbone
提出逐层特征聚合结构用户互相关操作 帮助跟踪器从多层次学习的特征中预测相似度图。
提出深度可分离相关结构 (两个分支的参数量非常不平衡)减少目标模板的参数量并稳定训练阶段

————————————————————————————————
Q: 什么是空间不变性?
简而言之,可以理解为:目标在搜索区域内平移后和平移前的相似性结果应保持不变
对SiamFC的训练方式而言,若将其backbone替换为带有padding的ResNet,其就违背了空间不变性。这样训练好的网络只关注图像的中心区域,当目标出现在搜索区域的角落时,网络不能对这些位置进行有效响应。也就是下图中,训练样本中目标的位置总是在图像中央,使得训练好的网络对边界的响应为0。(在3.1节中有更具体的介绍)
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第1张图片
————————————————————————————————

2. Related Work

SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第2张图片

3. Siamese Tracking with Very Deep Networks

直接将backbone由AlexNet替换为ResNet,性能没有提升。因此本文先做了以下的理论分析和实验。

3.1. Analysis on Siamese Networks for Tracking

回顾基于孪生网络的追踪器:目标patch记为z, 搜索区域记为x,追踪器的目标是从搜索区域x中找到和目标最相似的patch,其公式可表示为:
在这里插入图片描述
其中b表示相似度值的偏移量。

设计追踪器时有2个隐含的约束
1)严格的平移不变性:目标在搜索区域内平移后和平移前的相似性结果应保持不变。
2)结构对称性:如果将搜索区域图像和模板区域图像互换,相似性结果应保持不变。

理论分析:为什么更深的bockbone不能提升追踪器的性能?1. 深度网络中的padding破坏了平移不变性;2. RPN需要对称特征用于分类和回归。

实验分析:1. 将目标放置在中心,然后将目标进行3种幅度(偏移量为0,16,32)的移动;2. 用这些样本分别对更深的网络训练到收敛,可视化其特征图,见下图。

SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第3张图片
可以发现,若偏移量为0时,网络只关注图像的中心位置;增加偏移量,使得边缘区域位置也受到关注。另外,将SiamRPN+ResNet50的网络通过以上偏移试验发现,当偏移量为64像素时,追踪性能EAO的结果是最好的。

3.2. ResNet-driven Siamese Tracking

除了以上对训练样本的采样策略改进后,要将深度网络嵌入追踪器中,还需要做出以下几点改进:
1). 将conv4, conv5的stride由16,32减少至8pixels, 增加空洞卷积提升感受野,在每个block后加入一个1*1卷积减少通道数至256;
2). 将模板特征裁剪至7乘7以减少互相关的计算代价;
3). 将ResNet的学习率调整为RPN学习率的1/10,可以使得整个孪生网络端到端地训练。

SiamRPN++的整体网络架构如下图所示:
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第4张图片

为了便于理解,下图展示了SiamRPN++前馈过程中张量变换的细节:
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第5张图片
前馈过程的流程
Step1: 提取模板分支的特征(得到3组中间特征图);
Step2: 提取待检测分支的特征(得到3组中间特征图);
Step3: 将3组中间特征图对应地进行加权求和,得到所有框的分类分数和回归系数(共25x25x5=3125个,每个像素点对应5个框);
Step4:求得3125个框的归一化得分score;
Step5:还原框的实际位置,计算尺度+比例惩罚值,将惩罚值和score加权求和。再进行窗口惩罚,选择得分最高的框作为该帧的检测结果。

3.3. Layer-wise Aggregation逐层特征聚合结构

该模块的动机:聚合不同层次的特征可以有效改善识别和定位。ResNet中不同层次有丰富的意义。浅层特征聚焦于颜色,形状,但缺乏语义信息;深层特征具有丰富的语义信息,有助于在移动模糊,形变上提升追踪性能。

具体做法:将ResNet50的第3,4,5个block的特征图进行加权求和。具体公式如下:
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第6张图片

其中权重作为可训练的参数。

3.4. Depthwise Cross Correlation深度可分离相关结构

该模块的动机:SiamFC中,用互相关层以滑窗方式得到不同位置的单通道响应图;
SiamRPN中用UP-Xcorr,在互相关前加了2个卷积层用于提升通道数(2k->4k),这里分类分支有接近6M参数,回归分支有12M参数,参数量巨大且不平衡。

具体做法:提出深度可分离互相关DW-XCorr,比SiamRPN少了10倍的参数。1. 模板分支和搜索分支分别通过2个不共享的卷积层得到2个具有相同通道的特征图;2. 将这2个特征图做逐通道相关操作;3. 加入一个卷积层混合不同通道的输出;4. 再加一个卷积层用于输出分类/回归结果。

意义:极大减少计算代价和内存使用。模板分支和搜索分支的参数量被平衡,更易训练。

一个有趣的小现象:同一类模板在同一通道的响应是几乎相同的。不同通道代表不同的语言信息。见下图:
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第7张图片

4. Experimental Results

4.1.Training Dataset and Evaluation

4.2. Implementation Details

Network architecture: 3个随机初始化的1x1卷积用在ResNet50的conv3, conv4, conv5的后面用于减少特征维度到256.
Optimization: 用SGD算法训练, 在8个GPU上用了12天,lr=0.001在前5个epoches,最后15个epoches中lr指数衰减从0.005到0.0005, weight decay=0.0005, momentum=0.9。训练损失是分类损失+平滑l1损失。

4.3. Ablation Experiments

Backbone Architecture: 对Backbone的分析结果
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第8张图片

Layer-wise Feature AggregationDepthwise Correlation: 消融结果见下表
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第9张图片

4.4. Comparison with the state-of-the-art

1. OTB-2015: SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第10张图片
2. VOT2018: 60个序列
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第11张图片还在VOT2018上比较了速度,在NVIDIA Titan Xp上SiamRPN++是35fps, SiamRPN++的两个变体和SiamRPN++性能相近,但速度是70fps.
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第12张图片
3. VOT2018 Long-term: 30个长序列
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第13张图片
4. UAV123: 123个序列,平均长为915帧
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第14张图片
5. LaSOT: 提供了大规模高质量的稠密注释,共1400个视频
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第15张图片
6. TrackingNet:测试集有511个视频
SiamRPN++论文记录: Evolution of Siamese Visual Tracking with Very Deep Networks_第16张图片

你可能感兴趣的:(目标跟踪,机器学习,python,目标跟踪)