多目标跟踪 MOTDT 学习笔记

多目标跟踪 MOTDT 学习笔记
论文地址:https://arxiv.org/pdf/1809.04427.pdf
代码地址:https://github.com/longcw/MOTDT


多目标跟踪 MOTDT 学习笔记
图片来源

  本文整体框架和DeepSort很相似,不同之处在于扩大了关联候选者的范围,使卡尔曼滤波预测结果也作为候选者,为了统一度量检测框和预测框的置信度,前者采用了R-FCN结构,后者设计了轨迹置信度函数,分别得到检测框和预测框的置信度,从而可以对检测和跟踪互补利用起来。
 

1.驱动本文的核心思路:

  一般流行的Tracking by Detection方式的主要挑战:如何将检测结果与现有跟踪关联,然而检测结果受遮挡,形变,色差等因素的影响导致未必可靠。
  在本文中,作者将检测和跟踪预测进行互补。高置信度的检测结果可以预防跟踪漂移,而跟踪的预测可以处理短期遮挡引起的检测噪声。
  因此,本文使用的与现有跟踪轨迹相关联的候选集不再仅仅只包含检测结果,还包括跟踪预测的(即卡尔曼滤波预测出来的框),从而可以在检测不再可靠时也能较好的跟踪对象。
  为了从大量的候选对象(检测+预测)中实时应用最佳选择,作者提出了一个基于全卷积神经网络的新颖评分函数,该函数在整个图像上共享大多数计算。
  此外,本文也用了ReID特征来提高跟踪器性能。本方法是online MOT方法。


多目标跟踪 MOTDT 学习笔记

  上图是基于统一分数的候选人选择示意图。来自检测和轨迹的候选对象分别显示为蓝色立体矩形和红色虚线矩形。检测和跟踪可以相互补充以进行数据关联。该示意图较好的展示了本文的核心思想。
 

2.本文的主要贡献:

1)通过组合检测和跟踪结果作为候选对象,并基于深度神经网络选择最佳候选者,来处理在线跟踪中的不可靠检测。
2)提出一种分层数据关联策略,该策略利用空间信息和ReID特征。
3)在广泛使用的人员跟踪数据集上,我们的跟踪器的达到了实时性和SOTA性能。
 

3.架构综述:

  在这项工作中,我们通过从检测和跟踪的输出中收集候选项来扩展传统的TBD。我们的框架包括两个连续的任务,即候选人选择和数据关联。
1) 首先使用统一的评分功能来衡量所有候选人。将经过区分训练的对象分类器和设计良好的轨迹置信度融合在一起,以制定评分函数。
2) 随后使用估计分数执行非极大值抑制(NMS)。
3) 在获得没有冗余的候选者之后,我们同时使用外观表示和空间信息将现有轨道与所选候选者分层关联。
 

4.实时目标分类:

  将检测和跟踪的输出结合在一起会导致过多的候选对象。我们的分类器通过使用R-FCN在整个图像上共享大多数计算。因此,与从高度重叠的候选区域裁剪出来的图像补丁分类相比,它的效率要高得多。


多目标跟踪 MOTDT 学习笔记

  R-FCN体系结构可实现有效分类。来自编码器网络的功能与解码器部分中的上采样功能相结合,以捕获语义信息和底层信息。最后一块中的每种颜色代表一个特定的分数图。
  在给定图像帧的情况下,使用具有编码器-解码器体系结构的全卷积神经网络预测整个图像的得分图。编码器部分是实现实时性能的轻量级卷积backbone,我们为解码器部分引入了上采样,以增加输出得分图的空间分辨率,以供之后的分类。每个要分类的候选对象定义为感兴趣区域(RoI),其中x=(x_0,y_0,w,h),其中(x_0,y_0)表示左上角点,w,h表示该区域的宽度和高度。为了提高效率,我们希望每个RoI的分类概率由共享分数图直接投票。一种直接的投票方法是构造图像上所有点的前景概率,然后计算RoI内点的平均概率。但是,这种简单的策略会丢失对象的空间信息。例如,即使RoI仅覆盖对象的一部分,仍然可以获得较高的置信度得分。
为了将空间信息明确编码为得分图,作者采用了position-sensitive RoI pooling 层,并从k^2 个position-sensitive score maps z估计分类概率。特别地,我们通过规则网格将RoI 分割成 k×k 的小格子。 每个格子具有相同的大小[w/k×h/k],并表示对象的特定空间位置。我们从k^2个score maps中提取k×k 格子的响应。每个分数图仅对应一个格子。RoI x的最终分类概率公式为:


多目标跟踪 MOTDT 学习笔记

  在训练过程中,我们随机抽取GT边界框附近的RoI作为正例,并从背景中获得相同数量的RoI作为负例。通过端到端训练网络,解码器部分顶部的输出(即k^2 score map)将学习对目标特定空间位置的响应。例如,如果k = 3,则有9个得分图响应到顶部 -分别位于对象的左,上中心,右上,…,右下。这样,RoI池层对空间位置敏感,并且在不使用可学习参数的情况下,具有很强的区分对象的能力。请注意,提出的神经网络仅针对候选分类进行训练,而不针对边界框回归进行训练。

 

5.轨迹置信度和评分函数

  对于下一帧,我们使用卡尔曼滤波器估计每个现有轨道的新位置。这些预测用于处理由于目标的视觉属性变化和拥挤场景中的遮挡而导致的检测失败。但是它们不适合长期跟踪。如果长时间未通过检测更新卡尔曼滤波器,则其精度可能会降低。Tracklet置信度旨在使用时间信息来测量滤波器预测的准确性
  通过从连续帧中对候选者的时间关联来生成Tracklet。在其生命周期内,由于轨道可以中断和找回,因此我们可以将轨道拆分为一组Tracklet。每次从丢失状态中找回轨道时,都会重新初始化卡尔曼滤波器因此,仅使用最后一个轨迹的信息来形成轨迹的置信度。在这里,我们定义L_det为与小轨迹相关联的检测结果的数量,L_trk为在最后一次检测相关联后的轨道预测的数量。Tracklet置信度定义为:


多目标跟踪 MOTDT 学习笔记

其中1(.)是指示符函数,如果输入为true,则等于1,否则等于0。我们要求L_det≥2,以便在使用轨迹作为候选之前,使用观察到的检测来构建合理的运动模型。通过融合分类概率和Tracklet置信度:

多目标跟踪 MOTDT 学习笔记

  在这里,我们使用C_det表示检测到的候选者,使用C_trk表示跟踪的候选者,而s_trk∈[0,1]用来惩罚不确定轨迹的候选者。最终,使用NMS,基于统一分数,选择数据关联的候选人。 我们通过阈值τ_nms定义了最大的IoU,同时也有最小得分阈值τ_s。

 

6.用ReID特征表示外观

  候选者之间的相似性特征是数据关联的关键要素
  作者利用了别人中提出的ReID网络体系结构,并在几个大规模的每人重新识别数据集的组合上训练网络。给定一张人的RGB图像I,外观表示写为 f = H_reid (I)。我们直接使用特征向量之间的欧式距离来测量两个图像I_i和I_j的距离d_ij。在训练过程中,训练数据集中的身份图像形成为一组三元组T=<I_i,I_j,I_k>,其中〖<I〗_i,I_j>是同一个人的正对,而〖<I〗_i,I_k> 是来自两个不同人的负对。给定N个三元组,将要最小化的损失函数公式为:


多目标跟踪 MOTDT 学习笔记

  其中,m> 0是预定义的边距。我们忽略了易于处理的三元组,即d_ik-d_ij> m,以增强学习的特征表示的判别能力。

 

7.分层数据关联

  利用轨迹的预测来处理在拥挤的场景中发生的丢失检测。受类内遮挡的影响,这些预测可能与其他对象有关。为了避免将其他不需要的对象和背景用于外观表示,我们使用不同的特征将轨道与不同的候选对象进行了层次化关联。


多目标跟踪 MOTDT 学习笔记

  我们首先对检测的候选者使用外观表示来进行数据关联,外观表示的阈值为τ_d。然后,我们基于候选者和轨迹之间的IOU来关联剩余的候选者和未匹配的轨迹,IOU阈值为τ_iou。只当轨迹关联到检测时我们才对轨迹的外观表示进行更新。通过从关联的检测中保存ReID特征来进行更新。最后,根据剩余的检测结果对新轨道进行初始化。所提出的在线跟踪算法的详细信息在算法1中进行了说明。通过分层数据关联,我们只需要为每帧从检测中提取候选的ReID特征即可。将其与以前有效的评分函数和小轨迹置信度相结合,我们的框架可以实时运行。