引言
MOT(Multi-Object Tracking):目标是估计视频中显示的感兴趣对象的轨迹。
先前的工作大多采用两个模型:
检测模型首先通过每个帧中的边界框检测感兴趣的目标,然后关联模型从每个边界框对应的图像区域中提取re-ID特征,将检测链接到现有轨迹之一,或根据特征上定义的某些指标创建新轨迹。
缺点:存在可扩展性问题。当有大量目标时无法达到实时推理速度,因为两模型不共享特征,它们需要为视频中的每个边界框独立应用re-ID模型。
作者分析了先前的一次性(one-shot)跟踪器效果不好的原因:
- 锚(anchor)。锚不适合提取re-ID特征,因为
- 忽略了re-ID任务。先用锚检测目标,然后才基于检测结果来提取re-ID特征。所以当检测错误时,re-ID特征也就没用了(即re-ID特征的质量严重依赖于训练时proposal的质量)。导致模型往往偏向于提高检测目标的结果,这对re-ID网络的学习不公平(fair)。
- 在训练re-ID特征时存在不确定性。因为一个锚可能对应多个身份,多个锚也可能对应一个身份,特别是在拥挤人群场景中。
- 两个任务之间的特征共享。现有方法中,大多数特征在目标检测和re-ID任务之间共享。但目标检测需要深层特征来估计目标类别和位置,但re-ID需要低级外观特征来区分同一类别的不同实例。所以共享特征会降低每个任务的性能。所以要多层特征融合。
- 特征维度。re-ID特征的维度通常高达512,远高于目标检测。维度之间的巨大差异会影响两个任务的性能。此外,作者实验表明,对于one-shot方法,低维re-ID特征能达到更高的跟踪精度和效率。
作者基于CenterNet提出FairMOT,将detection和re-ID任务同等对待。两个分支是完全相同的。
FairMOT在多个数据集(如2DMOT15、MOT16、MOT17和MOT20)上大大优于以前的SOTA方法。
相关工作
作者将相关的MOT工作分为两类:1. 单一模型; 2. 将模型分为目标检测和提取关联特征。作者讨论了两类工作的优缺点,并将作者的方法与之作了比较。
对于先检测再跟踪的方法:
- 好处是可以分别为每个任务开发最合适的模型;此外,可以根据检测到的边界框裁剪图像,并在估计re-ID特征之前将其调整为相同大小,有利于不同尺度目标的处理。
- 缺点是慢。因为两项子任务需要单独完成,而不共享。
对于检测和跟踪在一个网络中的方法:
- 好处是快。
- 缺点是精度不够。
FairMOT
骨干网络
采用ResNet-34作为骨干网络,将增强的DLA加入骨干网络来融合多层特征,所有上采样模块中的卷积层都被可变形卷积所取代,因此它们可以根据目标的比例和姿势动态调整感受野。
结果模型命名为DLA-34。输入图片是$C\times H_{image}\times W_{image}$,输出特征图为$C\times H\times W$,其中$H=H_{image} / 4$,$W=W_{image} / 4$。
检测分支
检测分支建立在CenterNet之上(其他一些无锚的方法也可以)。DLA-34后加三个并行的头,分别用于估计热图、目标中心偏移和边界框大小。每个头对DLA-34的输出特征使用3×3卷积(256个通道)来实现,然后是生成最终目标的1×1卷积层。
热图头(Heatmap Head)
负责估计物体中心的位置。采用了基于热图的表示法。热图的大小是$1\times H\times W$。如果热图中的某个位置随GT目标中心下降,则预计其响应为1。响应随着热图位置和目标中心之间的距离呈指数衰减。
设$\left(c_{x}^{i}, c_{y}^{i}\right)$是GT box $b^i$ 的中心点,那么$\left(\widetilde{c}_{x}^{i},{\widetilde{c_{y}^{i}}}_{i}^{i}\right)=\left(\left\lfloor\frac{c_{x}^{i}}{4}\right\rfloor,\left\lfloor\frac{c_{y}^{i}}{4}\right\rfloor\right)$表示特征图上的中心点。则热图响应值的计算公式为:
其中$N$是图象中目标的个数,$\sigma_c$是标准差。
损失函数focal loss:
框偏移和大小头(Box Offset and Size Heads)
框偏移头估计每个像素相对于对象中心的连续偏移,以减轻下采样的影响。
框大小头估计每个位置目标框的高度和宽度。
记GT box为$\left(x_{1}^{i}, y_{1}^{i}, x_{2}^{i}, y_{2}^{i}\right)$ ,box size为$s^i$,则$\mathbf{s}^{i}=\left(x_{2}^{i}-x_{1}^{i}, y_{2}^{i}-y_{1}^{i}\right)$,box offset为$o^i$,则$\mathbf{o}^{i}=\left(\frac{c_{x}^{i}}{4}, \frac{c_{y}^{2}}{4}\right)-\left(\left\lfloor\frac{c_{x}^{i}}{4}\right\rfloor,\left\lfloor\frac{c_{y}^{i}}{4}\right\rfloor\right)$
两个头的$l_1$损失:
re-ID分支
re ID分支旨在生成能够区分目标的特征。理想情况下,不同目标之间的关系(affinity)应小于相同目标之间的关系。为了实现这一目标,我们在主干特征之上应用了128个卷积核的卷积层来提取每个位置的re-ID特征。
作者通过分类任务来学习re-ID特征。训练集中具有相同身份的所有目标实例被视为同一类。
首先在热图上获取目标中心,提取re-ID特征向量,并通过全连接层和softmax操作映射到类别分布向量P。
re-ID损失:
其中K是训练集中所有身份的数量。
在网络训练过程中,只使用位于目标中心的身份嵌入向量进行训练,因为我们可以在测试时从目标热图中获得目标中心。
训练
总的损失:
其中$\omega_1$和$\omega_2$是学习参数,用于平衡两个任务。
具体来说,给定一个包含几个目标及其对应身份的图像,我们生成热图、框偏移和大小图以及目标的一个独热(one-hot)类别表示。将其与估计结果进行比较,以获得整个网络的训练损失。
除了以上标准训练方式,作者还给出了一种单一图像训练方法,从而在图像目标检测数据集(如COCO和CrowdHuman)上训练FairMOT。这种方法仅将单个图像作为输入,并为每个边界框指定一个唯一的标识(id),从而将数据集中的每个对象实例视为一个单独的类。
推理
主要是如何将检测和re-ID关联起来。
网络推理
输入帧大小为1088×608,和JDE一样。在预测的热图之上,基于热图分数执行非极大值抑制(NMS),以提取峰值关键点。保留热图分数大于阈值的关键点的位置。然后根据估计的偏移量和框大小计算相应的边界框。
在线关联(Online Association)
和MOTDT方法一样,使用多层在线数据关联方法。首先根据第一帧中检测到的box初始化一些tracklets。然后在随后的帧中,使用两阶段匹配策略将检测到的box链接到现有的轨迹。
- 在第一阶段,使用卡尔曼滤波和re-ID特征来获得初始跟踪结果。作者将马氏距离Dm与根据re-ID特征计算的余弦距离融合:D = λDr + (1 − λ)Dm,其中λ=0.98是权重参数。和JDE一样,如果马氏距离大于阈值,就将其设置为无穷大,以避免获得过大的运动轨迹。使用匹配阈值τ1=0.4的匈牙利算法完成第一阶段匹配。
- 在第二阶段,对于不匹配的检测和轨迹,我们尝试根据其框之间的重叠来匹配它们。特别是,我们将匹配阈值τ2设为0.5。最后,将不匹配检测初始化为新轨迹,并将不匹配的轨迹保存30帧,以备将来再次出现。
实验
数据集和指标
ETH和CityPerson只提供框标注,所以只能用来训练检测分支。
CalTech、 MOT17、CUHK-SYSU和PRW提供了框和身份标注,可以用来训练两个分支。
衡量标准(benchmark):2DMOT15、MOT16、MOT17和MOT20。
用平均精度(AP)来评估检测结果,用错误接受率(FAR)为0.1的真正例率(TPR)来评估re-ID特征。提取对应于GT框的re-ID特征,并使用每个特征检索N个最相似的候选。
评价指标:CLEAR和IDF1