Learning Attribute-Specific Representations for Visual Tracking 论文地址
写在前面
这篇文章是大牛Ming-Hsuan Yang 2019AAAI的工作,主要是将跟踪中会遇到的遮挡、形变之类的问题作为每一帧的属性,通过对这个属性分branch学习,每个branch学到对应属性的特征,然后再整合来做分类和定位。感觉有点像人家人脸识别中,会做各种属性的识别(识别?验证?),他们这样做的好处就是可以不过分依赖训练数据,不要求网络一次性学到能处理所有属性的特征,一个branch只要学自己的属性,训练所需的数据也比较少,其实这篇文章就只用了VOT训练,性能就超过了MDNet。个人认为他们只用VOT训练的原因还有一点是其他的数据集没有VOT那样每帧标记特有属性。
Motivation
- 现在已有的很多tracker都是数据驱动的,高度依赖于训练数据,但是目前的训练数据太少,很难在一个网络里学到对所有的变化都鲁棒的特征,为了解放网络,解放数据,就只能在网络中编码变化。
Contribution
- 提出了一个基于属性的CNN,来挖掘视频中的属性信息去克服缺少训练代码的问题;
- 提出了一个two-stage的训练方式,使得每个分支都能学到一个独立的属性表示,并且在第二阶段结合每个分支的特征来预测;
- 在OTB和UAV上效果都很好。
Algorithm
这篇文章的算法比较简单,第一阶段训练的时候,先是根据VOT中的不同属性把VOT分成不同组的训练数据,然后使用预训练的VGG-M来提特征,每个特征过自己的branch,这里的branch使用Inception来提取特征的,然后再在最后的FC层做分类就行了,Inception的结构:
这个说是性能很好,这边我不做解析神经网络,不是很理解了,不过这里人家应该是实验出来的。
第二阶段的训练,就是在branch后面加一个链接层,将所有的特征concate一下,然后再做分类,值得注意的是,这个时候,五个分支的参数是固定的,不能训练,不然会破坏这几个分支自身的能力。
跟踪的时候就是先根据上一帧检测出来的位置来取M个proposal,然后找出置信度最高的proposal就行了,每20帧更新一次模型。
Experiment
因为用VOT训练了,所以只在OTB和UVA上测试,结果还超过了很多tracker,感觉这个tracker确实很强了,只需要一点数据就能训成这个样子。
总结
他们是第一个引入属性的,如果他们能出一个标注这么细的数据集,后期可能会有更好的结果。这样解放了训练数据,但是网络参数却多了很多,计算复杂度也很高,这两点确实需要权衡。