天天看点

多目标跟踪的简单理解

Multi-Object Tracking

多目标跟踪的问题是这样的:有一段视频,视频是由 N 个 连续帧构成的。从第一帧到最后一帧,里面有多个目标,不断地有出有进,不断地运动。我们的目的是对每个目标,能跟其他目标区分开,能跟踪它在不同帧中的轨迹。

1 Input: detection responses。现在拿来一段视频,我们先用 state-of-art detectors 把各帧中的人检测出来,包括位置、大小。当然,这个检测是有 noise 的,否则也就没必要用各种 MOT 方法来处理了。每个 detection 产生的结果就是 response,它还有一个可信度,比如80%可信,20%可信。

2 Output: Tracklets. 就是最终得到每个 target 的轨迹。

Challenges: Occlusions,similar appearance,complex motion,false alarms.这些问题基本上是每篇论文都在努力解决的。

3 Occlusions:有三种,被场景中的物体遮挡,被其他 target 遮挡,被自己遮挡(如变形,无法检测到),遮挡之后,本来应该检测到的 target 就检测不到了。解决的方法如根据 temporal 信息,估计出某一帧的某个位置有 target 被遮挡了。

4 Appearance:一是怎么把 target 与背景分开;二是怎么把不同的 target 分开。一般需要设计一个很好的外观模型,比如用 HOG、color histogram 等等。

5 Motion: 最简单的情况是匀速直线运动,这样我们很好预测下一帧中这个 target 在哪,但实际情况往往并不如此。比如可能来了个急转弯,可能突然转身往回走。解决之道,一般要设计更灵活、更复杂的运动模型。

6 False Alarms: detector 给出了 response,但实际上那个地方并没有 target,误检。这就要根据可信度,以及多种 refinement 方法来甄别。

Approaches

目前比较有代表性的有两种:

1 Detection-based data association. 

多目标跟踪,可以看作一个数据关联问题,连续两帧之间的tracklets or detections 做 link,形成 Longer tracklets。最经典的框架是Nevatia 他们在2008年 ECCV 发表的论文 Robust Object Tracking by Hierarchical Association of Detection Responses 中提出的多层跟踪框架。low-level: 把连续帧中的 detection responses 连起来成为 short tracklets,并用阈值去掉 unsafe 的,剩下 reliable tracklets。mid-level: 对 low-level 得到的 tracklets,对每对tracklet 计算一算一个 link probability 或 affinity score,然后用 Hungarian 算法做 global optimal assignment,得到 longer tracklets.high-level:这里就是对 mid-level 得到的 tracklets 做 refine 了,比如做一个 entry-exit map,估计tracklets 的 start 和 end,对于没有 reach entry-exit points 的,做一个 completion;又如,寻找 moving group,并据此完善 group 中的 targets 的 tracklets。这是一个基础性的、开放的框架,人们可以在每个层次中不断添加使用新的方法,可以看到,此后的许多论文都是构建在这个框架上的。

2 Energy minimization. 

很多问题都可以转化为一个能量最小化的问题:在解空间中,每个解都对应一个 cost或者说是 energy,我们要做的就是把这个 cost function 表示出来,并找到一个合适的方法求最优解。MOT 大神 Anton Milan 在2014年 PAMI 发表的 Continuous Energy Minimization for Multi-Target Tracking 就是一个典型。已知的是所有 detection responses,解空间就是这些个 responses 构成的所有可能的 tracklets 组合。每个组合都有一个 cost ,寻找一个最优的组合。本文清晰的阐述了 cost function 的构成,以及 minimization。它的牛掰之处是构造了一个连续的 cost function,这样容易求解;它用了 jump move,跳出局部最优,寻找全局最优。

Overview

目前,MOT 的研究中,大家都是直接使用目前最好用的 HOG or DPM detector,或者直接使用带有 detection 标记的 dataset,在 detection 方面不下功夫。

low-level 方面,可用的特征就那些,没什么改进的余地。

因此,目前的研究重点放在 mid-level, high-level 上,比如 ICIP14 的 AN ONLINE LEARNED HOUGH FOREST MODEL FOR MULTI-TARGET TRACKING 就是用 Hough Forest 来计算 tracklets 的 affinity score。又如,CVPR 12年的 Multi-Target Tracking by Online Learning of Non-linear Motion Patterns and Robust Appearance Models ,在 motion model、entry/exit map、moving groups 方面给出了很好的方法。