Fully-Convolutional Siamese Networks for Object Tracking论文笔记

Abstract.

传统上,任意目标跟踪的问题是通过在线学习目标的外观模型来解决的,使用视频本身作为唯一的训练数据。尽管这些方法取得了成功,但它们只在线学习的方法从本质上限制了它们可以学习的模型的丰富程度。近来,人们多次尝试开发挖掘深度卷积网络的表达能力。但是,当跟踪的目标事先未知时,需要在线进行随机梯度下降(SGD)来调整网络的权值,严重影响了系统的速度。本文在ILSVRC15视频对象检测数据集上,采用端到端训练的全卷积Siamese网络,实现了一种基本的跟踪算法。我们的跟踪器以超越实时的帧速率运行,尽管它非常简单,但在VOT2015基准测试中却实现了最先进的性能。

Introduction

我们考虑在视频中跟踪任意对象的问题,其中对象仅由第一帧中的矩形框标识。由于该算法可能被要求跟踪任意对象,因此不可能已经收集了数据并训练了检测器。

多年来,对于这个问题解决的最成功的范例是使用从视频本身[1]中提取的样本示例以在线方式学习对象的外观模型。这种方式的成功在很大程度上归功于MILTrack[2]、Struck [3]、TLD[4]和KCF[5]的能力。然而,使用当前视频数据的一个明显缺陷是,只能学习相对简单的模型。虽然计算机视觉的其他问题已经看到越来越普遍地采用从大型监督数据集训练的深度卷积网络(conv -nets),但监督数据的稀缺性和实时操作的约束阻止了深度学习在这种每个视频学习一个检测器的范例中的应用。

近来的工作试图去克服这一限制,尝试应用从其他不同的但是相关的任务中训练好的深度卷积网络。这些方法要么使用浅层的网络(如相关滤波器),利用网络的内部表示作为特征[6,7],要么使用SGD(随机梯度下降)对多层网络进行微调[8,9]。使用浅层网络的方法不能充分利用端到端学习的好处,而在跟踪过程中应用SGD来实现较高水准的结果并不能满足实时性的要求。

我们提出另一种方法,即在初始离线阶段对深度卷积网络进行训练以解决更通用的相似度学习问题,然后在跟踪过程中对相似度进行简单评估。本文的主要贡献在于证明该方法在远超过实时要求的速度下,在现代跟踪基准中获得了具有竞争力的性能。特别地说,我们训练了一个孪生网络来在更大的搜索图像中定位模板图像。进一步的贡献是提供了全一个全新的关于搜索图像的全卷积孪生网络结构:通过计算两个输入的互相关的双线性层,实现了密集高效的滑动窗口评价。

我们假设相似学习方法已经相对地被忽视了,因为跟踪社区没有大量的标记数据集。直到最近,可用的数据集还只有几百个带注释的视频。然而,我们认为,ImageNet 大尺度视觉识别挑战( ImageNet Large Scale Visual Recognition Challenge,ILSVRC) 视频目标检测数据集( 后简称为 ImageNet Video)的出现使得训练这样一个模型成为可能。此外,训练和测试使用来自同一领域的视频跟踪视频对的深度模型的公平性是一个争议点。我们展示了我们的模型从ImageNet Video扩展到ALOV/VOT,使得跟踪基准的数据集可以保留用于测试目的。

2 Deep similarity learning for tracking

跟踪任意目标可以使用相似度学习来解决。我们建议学习一个函数 f(z,x) 将一个模板图像z与一个大小相同的候选图像x进行比较,如果两个图像描述的是同一个对象,则返回高分,否则返回低分。为了找到物体在新图像中的位置,我们可以详尽地测试所有可能的位置,并选择与物体过去外观最相似的候选位置。在实验中,我们将简单地使用对象的初始外观作为模板。函数f将从标记了目标轨迹的视频数据集中学习。

考虑到它们在计算机视觉方面的广泛成功[11,12,13,14],我们将使用深度卷积网络作为函数f。深度卷积网络的相似学习通常使用孪生架构来解决[15,16,17]。孪生网络对两个输入做同样的变换( φ),最后将变换结果通过函数g结合
函数g是一个简单的距离或相似度度量,函数φ可看为是一个嵌入函数。深度Siamese卷积神经网络此前已经被应用于人脸验证[16,18,12]、关键点描述符学习[17,19]和一次性字符识别[20]等任务中

2.1 Fully-convolutional Siamese architecture

全卷积网络的优点是,我们可以提供一个大得多的搜索图像作为网络的输入,而不是一个大小相同的候选图像。全卷积网络将在一次评估中计算密集网格上所有平移子窗口的相似度。为了实现这一点,我们使用了一个卷积的嵌入函数,并使用一个互相关层来组合得到的特征图在这里插入图片描述
其中b是实数,表示在每个位置再加一个信号。最后的结果不是一个单一的得分,而是一个在有限的网格上得出的得分图,如图一所示。φ(z)不是一个向量,而是一个带有空间结构的特征图。全卷积孪生网络结构:输出是一个标量值的分数图,其大小取决于搜索图像的大小。这使得在一次评估中可以计算搜索图像中所有平移子窗口的相似度函数。在本例中,分数图中的红色和蓝色像素包含对应子窗口的相似度。彩色效果最佳。全卷积孪生网络结构:输出是一个标量值的分数图,其大小取决于搜索图像的大小。这使得在一次评估中可以计算搜索图像中所有平移子窗口的相似度函数。在本例中,分数图中的红色和蓝色像素包含对应子窗口的相似度。彩色效果最佳。

在跟踪中,我们使用以目标的前一位置为中心的搜索图像。最大相似度得分的位置相对于分数图中心的位置,乘以网络的步长,就可以得到目标从一帧到另一帧的位移。为了应对尺度变化,在进行跟踪的时候也同时使用了多种尺寸来进行搜索。在较大的搜索图像上,利用互相关融合特征图对网络进行一次性评价,在数学上等价于利用内积融合特征图对每个平移子窗口分别进行评价。

2.2 Training with large search images

本文采用一种判别式的方法,用正负样本对来训练网络。逻辑损失为:

在这里插入图片描述
v是一对模板-候选图像的相似度真实得分,y∈{-1,1}是真值标签。在训练过程中,我们使用模板图像和更大的搜索图像(搜索图像中包含多个候选子图), 利用网络的全卷积特性,来高效的一次性生成多对模板-候选图像的相似度得分。最后生成一个得分图。将整个得分图的损失定为单个样本对损失的均值:
在这里插入图片描述
在得分图网格D上的每一个位置u,真值标签y[u]∈{-1,1}。

对损失函使用随机梯度下降算法,可以得到卷积网络的参数θ:
在这里插入图片描述
从带注释的视频数据集中提取以目标为中心的搜索图像和模板图像作为样本对,如图2所示。当子窗口扩展到图像范围之外时,缺失的部分用RGB均值填充。
在这里插入图片描述

每对模板图像和搜索图像是从同一视频的某两帧中提取出来的,这两帧都包含了目标,并且最多只间隔了T帧。目标的类别在训练中被完全忽略。在不破坏图像长宽比的情况下,对每幅图像中目标的尺寸进行归一化。最终的得分图中,距离中心不超过半径R的位置均属于正样本(即真值为1),其余则属于负样本(真值为-1)。对正负样本的损失函数加权,以消除类别的不平衡。R的取值决定于步长:
在这里插入图片描述
搜索图像以目标为中心提高了搜索效率,因为对跟踪器性能影响最大的区域就是离目标近的子窗口。

2.3 ImageNet Video for tracking

2015年的ImageNet Large Scale Visual Recognition Challenge
(ILSVRC) [10]引入了ImageNet Video 数据集作为新的视频目标检测挑战
。参与者需要对30种不同种类的动物和车辆的物体进行分类和定位。仅训练集就包含了近4000个视频,总共有超过100万个带注释的帧。如果与VOT[22]、ALOV[1]和OTB[23]中总共不到500个视频的标记序列相比,这个数字尤其令人印象深刻。我们认为,这个数据集应该引起跟踪社区的极大兴趣,不仅因为它的巨大规模,还因为它描述的场景和对象与标准跟踪基准中的不同。由于这个原因,它可以安全地用于训练深度跟踪模型,而不必担心会过度拟合这些基准中使用的视频域。

2.4 Practical considerations

Dataset curation

  • 为了使ImageNet视频更适合于目标跟踪问题,我们做了以下修改。我们放弃了蛇,火车,鲸鱼和蜥蜴,因为这些对象往往占据其矩形的一小部分或延伸到图像的边缘。
  • 我们排除了面积大于0.752或小于0.12的物体。
  • 我们排除了物体到图像边缘的距离小于其平均尺寸的5%的帧。这是为了消除目标被图像边界截断的例子。

该数据集由2820个视频中的843,371个目标组成。

Scale normalization

  • 在训练中,我们使用的是模板图像大小为127×127像素,搜索图像为255×255像素。如果边界框的尺寸为(w,h),而背景填充的尺寸为p,则缩放因子s应该使得缩放后的图像尺寸为一个常数:
    在这里插入图片描述
    对于模板图像,A=1272,对于搜索图像,A=2552。设置背景填充的尺寸p=(w+h)/4。模板和搜索图像都将先经过预处理,在训练过程中避免了尺寸变动。

Network architecture
本文采用的嵌入函数φ的网络结构采用2012年Krizhevsky等人提出的Alexnet,各层的参数与尺寸如表。其中Chan.map表示每个卷积层输出和输入的通道数。
在这里插入图片描述
对于这里的池化层,我们选择最大池化(Max pooling)。在每个卷积层之后使用ReLU非线性激活函数,除了第五层也就是最后一层。训练过程中,在每一个线性层后面紧随着块归一化(batch-normalization)。最终的步长为8。重要的一点是,本文并不考虑边界填充(padding)。

Tracking algorithm
与更复杂的跟踪器不同,我们不更新模型或保持对过去外观的记忆,我们不合并其他线索,如光流或颜色直方图,我们也不使用边界盒回归来完善我们的预测。然而,尽管跟踪算法很简单,但当使用我们学习过的相似度度量函数时,它获得了令人惊讶的好结果。我们加入了一些基本的时间限制:我们只在大约四倍于先前大小的区域内搜索对象,并且在分数图中添加一个余弦窗口来降低较大的位移带来的影响。 (这一部分没有完全理解等看完代码再来更新)通过处理多个缩放版本的搜索图像来实现对缩放空间的跟踪。任何规模的变化都会受到惩罚,当前规模的更新也会受到影响。

3 Experiments

3.1 The VOT 2015 benchmark

在我们所有的实验中,我们使用了最新稳定版本Visual Object
Tracking (VOT) benchmark。VOT将在60个序列上对跟踪器进行评估。被选择的序列使七个具有挑战性的场景很好地代表。许多序列最初出现在其他数据集中(如ALOV[1]和OTB[23])。

在VOT基准测试集中,当预估的边界框和真值的交并比intersection-over-union(IoU)为0时视为失败,在失败后的五帧,跟踪器将自动初始化。跟踪器是根据两个性能指标进行评估的:准确性和鲁棒性accuracy and robustness 。前者以平均IoU计算得到,后者以失败总次数表示。这两个指标可以很好地反应跟踪器的性能。然而,为了获得一个单独的指标来比较跟踪器,使用了期望平均交并比expected average overlap measure ,这个指标计算平均IoU,并在失败后不重新初始化。

3.2 Implementation details

Training孪生网络的参数是通过对2.2中的损失函数进行SGD优化得来的,参数的初始值服从高斯分布,按改进的Xavier方法[25]进行缩放。训练进行了五十次迭代,每次包含50000个样本对。以0.25的概率选择负样本对。负样本对中的模板图像和搜索图像来自不同的视频,所以最终的得分图中所有的位置将都属于负样本(即真值为-1)。每一代的迭代中,小批量处理(mini-batches)的大小为8。学习率以几何退火的方式从10-2降低到105。最后我们在每一个线性层后面紧跟着使用块归一化处理(batch normalization)加速收敛。

Tracking 目标的最初外观只被嵌入函数φ计算一次,然后以卷积的形式分别与后续帧的子窗口作比较。通过双三次插值,可以将得分图从17×17扩大到257×257,以得到更精确的目标定位。为了应对尺度的变化,本文在 1:03{−1;0;1}的范围内搜索目标,并通过线性插值(系数为0.65)来来适应尺度变化

3.3 Dataset size

表2说明了用于训练孪生网络的数据集的大小如何极大地影响性能。这一发现表明,使用更大的视频数据集可以进一步提高性能

3.4 The VOT15 benchmark results

我们将第2节(SiameseFC for Siamese FullyConvolutional)中描述的方法与2015年版VOT challenge[22]中62个最优秀的追踪器进行比较。图3按期望平均重叠EAO对跟踪器进行了排序。尽管它很简单,但我们的方法比大多数竞争对手的跟踪器都要好,名列前茅。结果表明,我们的全卷积Siamese网络仅在大数据集上训练的相似性度量的表达能力就足以达到最好的结果。我们相信,通过使用跟踪社区经常采用的方法(例如模型更新、边界盒回归、微调、内存)来扩展在线跟踪管道,可以获得更高的性能。

在这里插入图片描述
表3报告了挑战的15个最佳跟踪器的原始分数和速度。我们的方法复杂度低,执行速度快:仅该网络就可以在130赫兹进行评估,而整个跟踪器的运行速度为65帧/秒,使其成为迄今为止速度最快且唯一实现实时性能的跟踪器。我们的系统的性能是特别有趣的,特别是如果与其他利用卷积网络功能,如MDNet和SO-DLT的跟踪器对比。事实上,他们需要在线执行SGD以使网络适应当前的视频,这严重限制了他们的适用性。

在这里插入图片描述
除了表1中描述的架构外,我们还测量了配备了ResNet架构[33]的相同简单跟踪器的性能。在这个实验中,我们从一个在Image Net上预先训练好的模型开始,然后对参数进行微调。通过七个“瓶颈”块和一个初始卷积,该网络在从输入到互相关的最长路径上有22个线性层。更深层次的模型改进了性能:与我们的基线SiameseFC相比,期望平均重叠增加了14%。尽管如此,整个系统仍然可以实时跟踪目标(25帧/秒)。

4 Related work

最近的几项研究试图训练递归神经网络(RNNs)来解决目标跟踪问题。Gan等人通过[34]训练RNN来预测目标在每一帧中的绝对位置,Kahou等人通过[35]训练RNN使用可微注意机制进行跟踪。

Denil et al.[36]使用粒子滤波器跟踪对象,该滤波器使用一个已学习的距离度量来比较当前外观和第一帧的外观。然而,它们的距离度量与我们的有很大的不同。他们不是比较整个物体的图像,而是计算定点之间的距离(在物体的边界框中隐约可见的小区域)。
………………

其他作者也建议使用在孪生网络的背景下进行跟踪。Tao等人提出了SINT (Siamese实例搜索跟踪 Siamese INstance search for Tracking),训练一个Siamese网络来识别与初始对象外观匹配的候选图像位置。与我们的方法相比,他们没有采用一个对于搜索图像完全卷积的架构。Instead, at test time, they sample bounding boxes uniformly on circles of varying radius as in Struck [3]. Moreover, they incorporate optical flow and bounding box regression to improve the results. In order to improve the computational speed of their system, they must employ Region of Interest (RoI) pooling to efficiently examine many overlapping subwindows. Despite this optimization, the overall system speed is still far from being real-time.

5.conclusion

在这项工作中,我们脱离了传统的在线学习方法,并展示了一种互补的方法,在离线阶段专注于学习强大的嵌入函数。不同于它们在分类问题中的使用,我们证明了对于跟踪应用程序,全卷积深度网络能够更有效地使用可用数据。这既反映在测试时(通过执行有效的空间搜索),也反映在培训时(在培训时,每个子窗口有效地表示一个有用的样本,几乎没有额外的成本)。实验表明,深度嵌入为在线跟踪器提供了自然丰富的特性,并非常简单的实现了较好的测试结果。我们认为,这种方法是对更复杂的在线跟踪方法的补充,并期待未来的工作更深入地探索这种关系。

在这里插入图片描述

发布了2 篇原创文章 · 获赞 9 · 访问量 166

猜你喜欢

转载自blog.csdn.net/qq_45171138/article/details/104315472