Deep Meta Learning for Real-Time Target-Aware Visual Tracking 论文
写在前面
这篇文章是韩国的一个组做的, 17年就挂载arXiv上了, 一直没中, 直到今年中了ICCV, 很不容易了. 用了最近很火的Meta-learning的概念, 然后Siamese的结构, 这篇和Meta-tracker不一样的地方就是, Meta-tracker中Meta-learning只是用来做模型的初始化, 这篇是在在线更新的时候也用了Meta-learning来做, 在线update的时候文中也说只要一个epoch就可以更新完了, 文章是17年的了, performance不是很好, 主要是概念比较厉害吧. 但是文章写的还算比较好懂, 感觉没有太多Meta-learning中的东西, 就是把概念迁移过来用了? 用的比较简单, 然后也像MEMTracker那样维持了一个template的栈来做更新.
Motivation
- 很多的tracker只是把深度特征拿过来用, 没有很好的把深度网络和tracking任务相结合, 一般只是用预训练的网络用来提特征, 然后finetune一下全连接层, 这样使得网络频繁更新, 然而正样本是很少的;
- 在线更新的时候由于样本数量的限制, 很容易overfitting, 并且更新的会使得跟踪速度变慢.
Contribution
- 提出了一个Siamese匹配网络来定位target, 提出了一个Meta-learner网络来自适应得更新tracking model;
- 使用了一个novel训练策略在让Meta-learner在保持网络的generalization 能力的同时避免网络overfitting;
- …
(不知道自己在说啥, 翻译了论文中的一些句子, 论文写的也比较奇怪把)
Algorithm
文章的网络结构如下:
蓝色的就是SiamFC的结构, 文章是提特征, 然后用conv5的特征算一个loss, 然后把梯度给Meta-learner这个网络, 去算一个权重出来, 还算了一个attention, 再把权重concate到原始conv5的weight上面, 然后用这个新的weight来计算最终的features, 在这两个feature上做互相关.
1. Overview
图片先过蓝色的网络来提特征, 然后做互相关:
其中
ϕ
w
(
⋅
)
\phi_w(\cdot)
ϕw(⋅) 表示整个网络权重为 w 时的conv5的特征, 梯度计算如下:
这里
δ
\delta
δ 表示梯度,
z
i
z_i
zi 代表维护的template池中的第
i
i
i 个template,
y
i
~
\tilde{y_i}
yi~ 表示高斯处理后的ground-truth的response map,
w
N
w_N
wN 其实就是conv5的权重, 就是求最后一个conv层的梯度, 然后输入到Meta-learner中计算一个target-specific的权重
w
t
a
r
g
e
t
w^{target}
wtarget:
其中
g
θ
(
⋅
)
g_{\theta}(\cdot)
gθ(⋅) 指的是参数为
θ
\theta
θ 的Meta-learner网络. 最终网络conv5层的权重变为:
[
w
N
,
w
t
a
r
g
e
t
]
[w_N, w^{target}]
[wN,wtarget], 是两个的结合, 所以最后的response map为:
2. Tracking Algorithm
这里值得说的是这个网络如何去更新的, 当在每一帧找出target之后, 会判断当前这个target的响应是否大于一个阈值
τ
\tau
τ , 若是大于
τ
\tau
τ , 便把这个patch加入到template的池中, 每次从template池中选择熵最小的, 为什么这么选是根据另一篇文章, 感兴趣的可以去看看, 大概其实就是找响应比较大, 比较靠谱那 M 个template:
然后用找出来的response map去算一个梯度
δ
\delta
δ , 用来更新网络.总体的算法如下:
其他的细节网络细节都可以在文中找到了.
Experiment
精度不是很高了, 也没放特别多的结果, 速度比较块, 48FPS, 主要结果如下:
总结
总的来说, 想法比较吸引人, 也比较简单的用了Meta-learning的概念, 应该是比Meta-tracker比较好上手一些, 我自己看的Meta-learning的论文看的比较少, 但是这篇文章应该是我目前看的用的比较简单的, 感觉是它的优点, performance若是放在17年可能还是比较能打把. 缺点的话我感觉还是精度不够高, 或许是可以有更好的迁移方式, 毕竟用concate的方式有点奇怪了, 而且文中也提了它们弄了一个attention, 但是也没讲这个attention怎么搞的, 代码目前还没开源.