Visual Object Tracking with Siamese Learning Paradigm

简单总结一下SiamFC以来孪生网路架构用于单目标跟踪的主要进展

目标跟踪问题

通用的目标跟踪是在视频序列的每一帧中估计任意目标的状态。在最一般的设置中,目标仅由其在序列中的初始状态定义(通常由矩形框标注)。如下图示意:

单目标跟踪领域算法发展历程图 单目标跟踪指标_目标跟踪


单目标视觉追踪问题是计算机视觉领域相对基础的问题之一,基于视频的目标跟踪技术在军事、监控安防、自动驾驶、机器人、无人机相关领域有着广泛的应用和发展前景。多变的情景和应用方向带来了诸多要求,例如对精确度和鲁棒性的要求,对跟踪器实时性的要求等。精确度要求跟踪器的预测边框是尽可能精确的,鲁棒性体现在跟踪器可以稳定的追踪感兴趣的目标并且应对场景和物体变化。跟踪器能够运行在25FPS的速度以上,能够即时地提供跟踪数据,我们就称它是实时的,实时跟踪器对于工业和生活中有着更大的应用空间。

基于检测的跟踪

早期跟踪方法经过了基于稀疏矩阵的方法等一系列生成式方法之后,判别式方法展现出巨大的潜力。相比早期的生成式方法,判别式方法基于区分前景和背景的思想建模,学习一个区分目标和背景判别器。判别式方法摆脱了关于跟踪场景的僵硬概率分布假设,对各种复杂多变有着更好的表现和更高的可泛化性。

Tracking by detection,这是目前最主流的思路。也是一定程度上符合人眼在跟踪物体时候的思路。首先我们看到一个物体,记下它的样子,而后在距离上个位置不太远的地方寻找它,如果这个物体会变形那么可能还要在判定他们是同一个物体后记下所有的样子,这就是最简单的思路:

单目标跟踪领域算法发展历程图 单目标跟踪指标_目标跟踪_02


MOSSE方法提出后,其快速的特性让相关滤波方法登上历史舞台,经过KCF引入核技巧,将问题映射到非线性作对偶问题求解,同时利用循环矩阵能够快速傅里叶对角化的特性加速求解,能够达到160+FPS的效果,KCF真正将单目标跟踪带入了滤波器时代。随后SRDCF引入空间感知正则化解决周期假设的缺陷,DSST、fDSST等解决多尺度问题,以及C-COT和ECO方法引入连续卷积算子的概念,将相关滤波跟踪做到了极致。此时,卷积神经网络虽然在图像分类等问题上展现出极大的力量,但是CNN特征并没有在目标跟踪领域得到广泛的使用。HOG特征和颜色直方图特征、Color Name等特征由于出色的速度表现仍然是相关滤波方法所青睐的选项。

主要难点

单目标跟踪的应用场景一般为手持摄像机,拍摄的物体各式各样,主要难点有:

单目标跟踪领域算法发展历程图 单目标跟踪指标_目标跟踪_03

从SiamFC开始

ECCV2016后SiameseFC方法提出,SiameseFC方法架构简洁,可以进行端到端的大规模离线训练,同时不依赖在线模型的更新迭代。且取得了实时的表现,是Siam架构下几乎所有跟踪器的基础性工作。

单目标跟踪领域算法发展历程图 单目标跟踪指标_稀疏矩阵_04


为什么Siam FC有效?

具体说法可以参考王强大佬在知乎上的回答,在此我只是概括说说。

SiamFC通过引入CNN,相当于经过CNN后将原始图像映射到了复杂的高维空间,CNN在此的作用类似核。而通常来说对判别式方法所需要的判别训练并没有明显给出,这种判别更像是通过模型内嵌实现的,所以说在特征足够强大的情况下这种嵌入能够达到判别法的效果。SiamFC的一些细节如下:

训练细节也可以看:

单目标跟踪领域算法发展历程图 单目标跟踪指标_生成式_05


网络细节:

下图标注了网络上的细节,整个网络没有padding,模板分支只运行一次(inital frame)。最终获得的score map是1717的,需要进行双三次插值到272272以保证跟踪任务的定位准确性。

单目标跟踪领域算法发展历程图 单目标跟踪指标_目标跟踪_06