说起多目标跟踪领域,Daimler公司研发组在2017年曾发布一篇极具分量的综述,核心内容是将当时深度学习技术应用于多目标跟踪的工作进行了系统梳理。今天借此机会深入探讨这一话题,串联起当时的思路与近年来的进展。
大多数多目标跟踪系统的整体框架可谓大同小异。具体到系统架构,业界普遍认可的结构主要包括以下几个模块:数据关联(data association)、状态预测(state prediction)、状态更新(state update)以及跟踪管理(track management)。

下图展示的即为这种通用的多目标跟踪系统框架。

深度学习在其中具体能发挥哪些作用?大致可归纳为四种途径(参考上图):
1) 特征学习(主要聚焦于表观模型),经典的CNN便是典型代表;
2) 数据关联部分,例如采用Siamese网络配合Hungarian算法或LSTM来实施;
3) 端到端学习方法,这一路线挑战较大,主力为RNN/LSTM;
4) 状态预测(运动/轨迹),如Behavior-CNN、Social-LSTM、Occupancy Grid Map等方法。
下面针对每种途径,各以一两个具体实例进行说明。
Feature Learning

L. Wang, W. Ouyang, X. Wang, and H. Lu, “Visual Tracking with Fully Convolutional Networks,” in ICCV, 2015

2. Data Association

L. Leal-Taixe, C. Canton-Ferrer, and K. Schindler, “Learning by Tracking: Siamese CNN for Robust target association,” in CVPRW, 2016

3. Prediction

A. Alahi, K. Goel, V. Ramanathan, A. Robicquet, L. Fei-Fei, and S. Savarese, “Social LSTM: Human Trajectory Prediction in Crowded Spaces,” in CVPR, 2016

S. Yi, H. Li, and X. Wang, “Pedestrian Behavior Understanding and Prediction with Deep Neural Networks” in ECCV, 2016

S. Hoermann, M. Bach, and K. Dietmayer, “Dynamic Occupancy Grid Prediction for Urban Autonomous Driving: A Deep Learning Approach with Fully Automatic Labeling ” in IV, 2017

4. E2E

I. Posner and P. Ondruska, “Deep Tracking: Seeing Beyond Seeing Using Recurrent Neural Networks” in AAAI, 2016

A. Milan, S. H. Rezatofighi, A. Dick, K. Schindler, and I. Reid, “Online Multi-target Tracking using Recurrent Neural Networks” in AAAI, 2017

“ DEEP LEARNING IN VIDEO MULTI-OBJECT TRACKING: A SURVEY “,7,2019
这是近期一篇MOT综述文章,重点聚焦于2D单目摄像头数据的方法。
MOT算法普遍采用的标准做法是“通过检测进行跟踪”:先从视频帧中提取一系列检测结果(即标识出图像中目标物体的边框),然后利用这些结果引导跟踪过程——将相同的ID分配给包含同一目标的边界框。由此可见,许多MOT算法本质上就是一个分配问题。
现代检测框架,如SSD、YOLO和RCNN系列,已经具备较高的检测质量,因此大多数MOT方法(少数例外)致力于改进关联性。在实际应用中,许多MOT数据集都提供了标准检测方法,算法可直接使用这些检测结果,从而能够专门比较关联算法本身的性能差异——因为检测器的质量对跟踪结果影响极大。下图展示的是MOT算法的一种典型表现。

MOT算法还可划分为批处理与在线两类。批处理跟踪算法在确定某一帧的目标个体时,允许利用未来信息(即未来帧的数据),通常借助全局信息提升跟踪质量。而在线跟踪算法只能依赖当前和过去的信息推断当前帧,这在某些场景下是必须的,例如自动驾驶和机器人导航。与批处理方法相比,在线方法的表现往往稍逊一筹——因为它们无法“后悔”,不能用未来信息修复之前的错误。此外需要特别指出:尽管实时算法要求在线运行,但并非所有在线方法都能真正做到实时。实际情况是,除了少数例外,许多在线算法对于实时环境而言仍然速度过慢,尤其是深度学习算法,计算资源消耗通常相当可观。
尽管方法多种多样,但大多数MOT算法都会包含以下步骤中的一部分或全部(如图所示):
检测阶段:目标检测算法通过边框分析每一帧输入,识别出属于特定类别的目标,在MOT中称为“检测”;
特征提取/运动预测阶段:一种或多种特征提取算法分析检测结果和/或轨迹,提取外观、运动和/或交互特征。作为可选项,运动预测器会预测每个跟踪目标接下来的位置;
近似(Affinity)阶段:利用特征和运动预测,计算成对的检测和/或小轨迹(tracklet)之间的相似度或距离得分;
关联(Association)阶段:通过将相同ID分配给对应同一目标的检测结果,利用上一步计算出的相似度或距离度量,将属于同一目标的检测和小轨迹关联起来。

"Deep Visual Tracking: review and experimental comparison", 2018
国内一篇基于单摄像头进行单目标跟踪的综述。根据网络结构、网络特征和网络训练这几个维度,将现有的基于深度学习的跟踪器划分为三类。
文章总结了几条富有洞察力的结论:
(1)卷积神经网络(CNN)模型能够显著提升跟踪性能;
(2)使用CNN模型将被跟踪目标从周围背景中区分出来的跟踪器,结果更准确,而CNN模型的模板匹配通常速度更快;
(3)采用更深层特征的跟踪器,性能远优于依赖低级手工特征的跟踪器;
(4)不同卷积层提取到的深层特征性质各异,有效组合它们通常能使跟踪器更鲁棒;
(5)采用端到端网络的深度视觉跟踪器,性能往往优于仅使用特征提取网络的跟踪器;
(6)对于视觉跟踪而言,最合适的网络训练方法是对每个带有视频信息的网络进行训练,并通过后续观测量对其进行在线微调。
“Deep learning for multiple object tracking: a survey“,8,2019
同样是一篇国内新近的MOT综述文章。
这篇文章进行了整理,将基于DL的MOT方法大致归为三大类:
第一类是多目标跟踪的增强,核心是使用从相关任务设计的深层神经网络中提取的语义特征,替换原有跟踪框架中的常规手工特征。大多数情况下,这些深度网络提取的特征确实能有效提高跟踪性能。
第二类是具有深度网络嵌入的多目标跟踪,跟踪框架的核心部分直接由深度神经网络设计。例如,深度网络的输出被设计为对不同轨迹检测的多分类得分,二值深度分类器则用于判断是否属于同一目标。
第三类是通过端到端深度神经网络学习进行多目标跟踪,目标是直接设计深度网络得到跟踪结果。不过这一路线挑战较大,因为MOT跟踪中包含许多相互交织的子模块,仅靠单一网络往往难以直接输出结果。因此,部分工作借助一些假设(如马尔可夫性、固定分布等)来使该目标可行。
下图展示的是基于深度学习的MOT方法的整体图景:

下面这个表格详细对比了所列MOT方法的各种细节。

Wojke, N., Bewley, A., Paulus, D.: ‘Simple online and realtime tracking with a deep association metric’. Proc. Int. Conf. on Image Processing, Beijing, China, 2017
下图是深度SORT(Simple Online and Realtime Tracking)算法的示意图:从wide residual network (WRN) 中提取用于分类的深层特征,用以强化检测与轨迹之间的匹配(WRN中的WRB即为残差块)。

Chu, Q., Ouyang, W., Li, H., et al.: ‘Online multi-object tracking using CNN- based single object tracker with spatial-temporal attention mechanism’. Proc. IEEE Int. Conf. Computer Vision, Venice, Italy, 2017
下面是STAM(spatial-temporal attention mechanism)-MOT的框架:(a)构造深度CNN学习空间注意力和特定目标的分类器,(b)使用基于采样的搜索方法寻找最佳候选。

Milan, A., Rezatofighi, S.H., Dick, A.R., et al.: ‘Online multi-target tracking using recurrent neural networks’. Proc. AAAI, San Francisco, CA, USA, 2017
下图是RNN(recurrent neural networks)-LSTM跟踪框架:构建一个基于RNN的网络来学习预测、更新状态和终止概率。基于LSTM的网络则用于在检测和目标之间找到最优关联关系。

整体来看,这几篇综述的梳理非常清晰。作者们基于现有方法,系统分析了深度特征迁移、神经网络嵌入和端到端网络训练的底层机制。随后讨论了深度网络在跟踪框架中的作用,以及训练这些网络时会遇到的实际问题。最后,根据常见数据集和评估指标,重新对各类多目标跟踪方法进行了对比,并重点强调了各自方法的优点与局限性。
一个较为现实的问题是:目前远没有足够多的标记数据集来训练出满意的模型,使其在任何条件下都能胜任跟踪任务。生成网络的出现,有可能为深度学习模型的泛化能力铺平道路。另一方面,为了应对复杂环境(如移动平台)下跟踪结果可能明显下降的情况,需要集成网络模型来学习这些动态场景的特征。此外,为进一步适应变化的条件,学习跟踪目标的高阶特征或在线迁移特征,也是值得持续深挖的方向。
