论文笔记GradNet: Gradient-Guided Network for Visual Object Tracking
1. 标题及来源
GradNet: Gradient-Guided Network for Visual Object Tracking
2. 阅读目的
1. 了解如何从梯度的角度更新模板
3. 领域
Object Trackinig
4. 拟解决的问题
1. 测试时模板固定,效果依赖于网络的通用匹配能力
2. 未利用目标或者背景簇的时序变化信息
5. 提出的方法
5.1 方法流程
该网络结构分为两个分支,上面一个分支用来生成和更新target,下面一个分支用来提取search region的特征
- 在模板帧中截取target,当前帧中截取search region
- 将target和search region输入到相同的网络的提取特征,分别记为 f z ( Z ) f_z(Z) fz(Z)和 f x ( X ) f_x(X) fx(X)
- 将target输出的特征图 f z ( Z ) f_z(Z) fz(Z)输入到子网U1(紫色块)得到初始模板,记为 β \beta β并计算loss
- 将 β 和 f x ( X ) \beta和f_x(X) β和fx(X)进行卷积操作,得到响应图
模板更新:
- 使用 β \beta β和真实标签Y计算loss,
- 将loss输入到子网络U2(橙色块)中执行一次反向传播,计算梯度,
- 将计算出来的梯度与
f
z
(
Z
)
f_z(Z)
fz(Z)求和,从而更新模板,记更新后的模板为
β
∗
\beta^*
β∗
5.2 通用模板(template generation)
5.2.1 目的
训练时update branch会偏向于学习模板的外貌信息而不是梯度信息,所以提出template generation,使update branch学习梯度并且避免过拟合
5.2.2 方法详情
- 从不同的视频中(论文中是4)获取搜索区域(X),模板(Z),真实标签(Y)
- 使用update branch获取Z1(默认使用第一个图片对中的模板)的 β 1 \beta_1 β1和 β 1 ∗ \beta_1^* β1∗
- 通过最小化loss更新update branch得到一个通用模板使其每次训练时都能在所有搜索区域上表现良好
详细流程参考下图
5.3.3 结果
Ours表示训练的时候使用模板泛化,Ours-T表示训练的时候不使用模板泛化(template generation)。
直方图中值越大,则会更偏向于学习梯度。
6. 实验结果
注:该算法的实验结果与小于19年同期论文,例如SiamCasRPN,SiamRPN++,在性能方法只能与CVPR2018的SiamRPN相当,略高于SiamRPN
6.1 OTB2015实验结果
6.2 TC128实验结果
6.3 VOT2017实验结果
6.4 LaSOT实验结果
6.5 消融分析
Ours:w/o M:训练时不使用通用模板
Ours w/o MG:训练时不使用通用模板和梯度应用
Ours w/o U:没有模板更新
Ours w 2U:子网U1(紫色块)不共享参数
Ours-baseline:SiameseFC
第一行是搜索区域,第二行是使用了template generation后的score map,从图中可以发现,在其中会存在很多噪声,第三行是基于梯度更新后的模板,从图中可以发现在目标位置的响应值最高,第四行是没有使用template generation的score map,从图中可以发现在目标位置的响应值最高,但是会存在一些干扰,第五行是基于梯度更新后的模板,但是没有使用template generation,从图中可以发现,它的干扰明显减少,而且在物体附近的响应值也会很大。
7. 改进&存在的问题
- 从响应图中可以发现,算法的性能还是比较好的,但是和CVPR2019同期论文相比,它的性能远落后于它们,它的一些性能甚至只能和CVPR2018的SiameseRPN相当,这很奇怪
8. 可借鉴的点
- 基于梯度进行模板的更新
- template generation
9. 知识补充
无