MOT算法、度量标准、数据集
1、算法
已经知道,MOT的算法按初始化方分为:DBT和DFT。其中DBT即基于检测的多目标追踪是最主流,最常用的办法。由于基于检测做跟踪,检测器的性能严重影响跟踪器的性能。
大部分的MOT算法的步骤为:
- 检测阶段(Detection):分析输入帧,用边界框标识目标对象
- 特征提取或运动预测阶段(Feature extraction/motion prediction):提取外观、运动或交互特征,运动预测可以预测被跟踪目标的下一个位置
- 亲和计算(Affinit):特征和运动预测用于计算检测和轨迹的相似性或者距离
- 数据关联(Association):相似性和距离度量用于关联属于同一个目标的检测和轨迹,为同一目标的检测分配相同的ID
2.度量标准
Classical metrics
- MT(Mostly Tracked trajectories):至少80%的帧中被正确跟踪的真实轨迹数。
- fragments:轨迹假设至多80%的真实轨迹被覆盖。一个真实轨迹可以被多个碎片覆盖
- ML(Mostly Lost trajectories):少于20%的帧中被正确跟踪的真实轨迹数。
- false trajectories:与真实轨迹不对应的预测轨迹
- ID switches:正确跟踪对象的次数,但错误关联了ID(ID被改变)
CLEAR MOT metrics
- (false positives)FP:假阳性:不能与真实边界框关联的假设。整个视频中假阳性的数量
- (false negatives)FN:假阴性:不能与假设关联的真实边界框。整个视频中假阴性的数量
- (fragmentation)Fragm:每次ground truth对象跟踪被中断并随后恢复时,都被视为碎片。碎片的总数。
- (ID switch)IDSW:每次被跟踪的真实对象ID在跟踪持续时间内被错误地更改时,将被视为一个ID switch。IDswitch 的总数。
MOTA的定义:
M
O
T
A
=
1
−
F
N
+
F
P
+
I
D
S
W
G
T
∈
(
−
∞
,
1
)
MOTA = 1 - \frac{FN + FP + IDSW}{GT} \in (- \infty, 1)
MOTA=1−GTFN+FP+IDSW∈(−∞,1)
GT是真实边界框的数量。
MOTA的百分比:MOTP:
M
O
T
P
=
∑
t
,
i
d
t
,
i
∑
t
c
t
MOTP = \frac{\sum_{t,i}d_{t,i}}{\sum_tc_t}
MOTP=∑tct∑t,idt,i
c t c_t ct为第t帧匹配的次数, d t , i d_{t,i} dt,i为假设 i i i与其指定的ground truth对象之间的边界框重叠。值得注意的是,这个指标只考虑了很少的跟踪信息,而更关注于检测的质量。
ID scores
二分图: V T , V C V_T,V_C VT,VC.
V T V_T VT:对于每个真实轨迹都有一个所谓的规则节点,对于每个计算轨迹都有一个假阳性节点。
V C V_C VC:每个计算轨迹都有一个规则节点,每个真轨迹都有一个假阴性节点。
边的代价是为了在选择边的情况下计算假阴性帧和假阳性帧的数量。
于是有四种组合:
结果 | V T V_T VT | V C V_C VC |
---|---|---|
true positive ID | 规则 | 规则 |
false positive ID | 假阳性 | 规则 |
false negative ID | 规则 | 假阴性 |
true negative ID | 假阳性 | 假阴性 |
计算三个分数:
缩写 | 含义 |
---|---|
IDTP | the sum of the weights of the edges selected as true positive ID matches |
IDFP | the sum of weights from the selected false positive ID edges |
IDFN | the sum of weights from the selected false negative ID edges |
依据这三个分数又可以计算:
Identification precision: I D P = I D T P I D T P + I D F P IDP = \frac{IDTP}{IDTP + IDFP} IDP=IDTP+IDFPIDTP
Identification recall: I D R = I D T P I D T P + I D F N IDR = \frac{IDTP}{IDTP + IDFN} IDR=IDTP+IDFNIDTP
Identification F1: I D F 1 = 2 1 I D P + 1 I D R = 2 I D T P 2 I D T P + I D F P + I D F N IDF1=\frac{2}{\frac{1}{IDP} + \frac{1}{IDR}}=\frac{2IDTP}{2IDTP + IDFP + IDFN} IDF1=IDP1+IDR12=2IDTP+IDFP+IDFN2IDTP
FPS:跟踪器每秒处理的帧数。
3.基本常用数据集
MOTChallenge(MOT15、MOT16/17、MOT19),KITTI。
MOTChallenge专注行人跟踪,而KITTI允许追踪行人和车辆。
还有许多其他数据集,待日后完善。