Learning Attribute-Specific Representations for Visual Tracking
AAAI-2019
Paper:http://faculty.ucmerced.edu/mhyang/papers/aaai2019_tracking.pdf
本文提出一种新的学习思路,即:属性信息 (e.g., illumination changes, occlusion and motion) ,来进行 CNN 特征的学习,以得到更加鲁棒的 tracker。具体来说,就是设计一种基于属性的 CNN,并且带有多个分支,每一个分支用于分类特定属性的目标。这种设计的优势在于:在每一种挑战下,降低了目标外观的多样性,用更少的训练数据就可以训练模型(reduces the appearance diversity of the target under each attribute and thus requires less data to train the model)。我们将所有的特定属性feature,通过集成层(ensemble layer)进行聚合,得到更加具有判别力的特征来进行分类。其实这个思路,类似于 MDNet,但是又跟 MDNet 不同。
具体流程(ANT Tracker):
1. Attribute-based Neural Network:
如上图所示,该网络的前几层是从 VGG-M 模型得到的几层卷积层,用于提取底层信息,如边缘和纹理信息等。然后,用五个属性分支来学习对应属性的表达。文章作者用了 VOT 数据集提供的五个属性:target motions, camera motions, illumination variations, occlusions, and scale change, 这些挑战性因素可以涵盖 OTB100 数据集的 11 种属性。此外,VOT数据集属性的标注是每一帧都进行了标注,这就允许作者可以将训练数据集划分为不同的属性组(attribute groups)来训练对应的分支。
紧跟着这些属性分支的是 ensemble layer 和 fc layer。在测试阶段,属性组是未知的,一个视频帧可能也包含多种属性。所以,仅仅将视频帧传送到每一个分支也是不合理的。所以,作者这里将输入图像区域传递到所有的属性分支,并且训练一个 ensemble layer 来自适应的组合所有的特征,得到一个充分并且具有判别性的表达。ensemble layer 的输出被传送到 FC layer 进行最终前景和背景的分类。
对于每一分支的结构,我们采用 Inception 的结构,如下图所示,以得到更好的feature。
2. Two-Stage Training:
作者这里提到 end-to-end learning 的方式,无法确保每个分支可以学会分类对应属性的数据(can not guarantee each branch to learn to classify data of the corresponding attribute),因为任何训练样本的分类损失都可以反向传递到所有的五个分支。为了解决这个问题,作者采用了两个阶段的训练策略。
Stage-I:training attribute branches.
这个五个分支是依次训练的。特别的,作者将 ensemble layer 和 last FC layer 移除,然后对每一种属性,添加一个 new FC layer,进行训练。
Stage-II:training ensemble layers.
一旦上述属性分支训练完毕,就开始训练 ensemble layer,以得到这些特征的最终集成特征,用于分类。首先将 FC 层给 remove 掉,然后,接上 ensemble layer 和 FC layer,继续训练。这里采用 softmax-loss 进行训练,大约 150 次迭代后,开始收敛。
3. Tracking:
在实际跟踪的时候,就直接通过采样,然后打分的方式进行:
4. 实验结果:
==