本文是
IROS 2020 论文 3D Multi-Object Tracking: A Baseline and New Evaluation Metrics 的论文解读。
摘要
- 提出了一个简单、实时的
3D MOT系统,该系统首先从Lidar点云中获取3D检测的结果,随后利用3D卡尔曼滤波做状态估计,再使用匈牙利算法做数据关联。 - 由于当时缺少对
3D MOT的评估准则,本文提出了一个全新的3D MOT评估工具和3个新的评估指标。
介绍
尽管 2D MOT 在准确度上取得了极大的提升,但现有 MOT 系统往往有着较高的计算和系统复杂度,不适合实时应用。并且各种花样的系统采用不同的 pipeline 却得到相似的跟踪精度,让研究人员难以捉摸到底是系统的哪些模块决定了追踪的 performance。本文的目标就是提供一个清晰、简洁且高效的 3D MOT baseline。
文章采用 PointRCNN 作为点云 3D 目标检测器,结合 3D 卡尔曼滤波(恒速模型)和匈牙利算法构成了一个 filter-based MOT system。和其它基于滤波的多目标跟踪系统相比,本文的特点是将物体的 state space 扩展到三维,包括 3D location/size/velocity/ heading orientation。
本文提出的系统结构清晰、简单,不仅取得了 3D MOT SOTA,与其它 2D MOT 系统相比,如下图所示,在有着系统最快速度表现的同时,在精度上也有着将近 SOTA 的表现。
作者分析了现有 3D MOT 存在的两个问题:一是像 KITTI 这样的数据集,只提供了 2D MOT 的评估方法。二是 MOT 的评价指标没有考虑到被追踪目标的置信度。因此,针对性的提出了 3D MOT 的评估方法和 3 个与阈值有关的积分评价指标。
相关工作
2D MOT
基于数据关联,2D MOT 方法可以分为基于 batch 和基于 online 的方法。基于 batch 的方法利用全部序列数据寻找全局最优关联。online 的方法则不利用未来帧,适合实时应用,这类方法将数据关联当作二分图匹配来做,利用匈牙利算法或者深度关联网络求解匹配问题。
本文的出发点是 simple and real-time,因此本文采用匈牙利算法做匹配,用最简单的 constant velocity 运动模型做 cost functions,不引入任何的外观特征。
3D MOT
本文使用 3D 卡尔曼滤波做状态估计,将状态空间扩展到三维,涉及到物体的定位、尺寸、速度和朝向信息。
方法
本文提出的系统是标准的基于滤波的 MOT 系统,主要由 3D 目标检测器、3D 卡尔曼滤波器和数据关联模块组成,包含目标检测、状态估计、数据关联、状态更新和生死记忆(航迹开始和结束)五个动作。除了目标检测器需要训练外,其余模块和动作均能够直接用于推理。
3D 检测
作者使用 PointRCNN 和 Mono3D_PLiDAR 作为 KITTI 数据集上的 3D 检测器,在 nuScenes 上使用 CBGS 作为检测器。检测器负责提取出点云某帧中的所有目标,每个目标 由 8 个参数表示,分别是位置 x,y,z,尺寸 l,w,h,朝向 θ 和置信度 s。
3D 卡尔曼滤波 - 状态预测
使用一个恒速模型适应自我运动和其它目标的运动,对于每条历史轨迹,使用 来表示,利用恒速模型估计出的当前帧的位置为 ,则对于每条历史轨迹预测出的当前帧状态可用 表示。
数据关联
对每个预测的状态和 3D 检测结果两两计算 3D IOU 或者负中心距离,作为相似度矩阵(代价矩阵),再使用匈牙利算法做匹配,得到检测结果和历史轨迹的匹配结果。对 IOU 或距离设定一个阈值,过滤掉 IOU 低于阈值或中心距离大于阈值的匹配。最终得到关联成功的轨迹 和检测结果 ,以及关联失败的轨迹 和检测结果 。
3D 卡尔曼滤波 - 状态更新
根据匹配上的状态预测结果和 3D 检测结果,根据状态的不确定性(具体参考卡尔曼滤波原理)对它们做加权处理,得到最终的状态更新结果,代表根据历史轨迹和当前观测得到的最终状态表示。
由于目标朝向的状态预测和检测结果之间可能出现反向的错误,文中提出了一个朝向修正,当夹角大于 90 度时,对状态预测的 θ 加 做修正,保证最终夹角小于 90 度。
轨迹开始和结束
我们可以认为 是潜在的新目标,如果它在之后几帧被匹配,就可以根据其最近的一次检测结果创建一个新的轨迹,速度初始化为 0。
我们可以认为 是潜在的消失的目标,如果它在接下来几帧仍未被匹配,就可以删除该轨迹。
新的 3D MOT 评估工具
就是把 2D IOU 提升到 3D IOU,惩罚深度预测不准确导致的 3D IOU 低但 2D IOU 高的情况。
新的 MOT 评价指标
本文将目标轨迹的置信度定义为该目标在所有帧置信度的均值
以往评价指标的缺陷
以往的评价指标没有考虑到目标的置信度,导致在刷榜时往往需要人力选取一个合适的置信度,但是这样会导致更换数据集后,该 MOT 系统仍需要重新调整阈值。我们的目标应该是实现一个能够在不同阈值下均保持高精度的 MOT 系统。
如上图 a 所示,FP 指被误报为正样本的负样本,在阈值设置的很小时,即 Recall 很高的时候,会有许多误报的目标轨迹,因为阈值小就把许多置信度不高的轨迹看成了正样本。图 b 则反映了较高的阈值会带来许多 FN,即本该是正样本却漏报为负样本。图 c 表示通过设置一个合理的阈值可以实现最佳的 MOT 精度。
新指标
AMOTA 和 AMOTP 分别是 MOTA - Recall 和 MOTP - Recall 曲线的积分,这两个指标更适用于高召回率的系统。还有一个 sAMOTA 用到了再学习。
实验
实验设置
涉及到评价指标、数据集、baseline、实现细节等,具体在实验时参考原文。
实验结果
涉及到在 KITTI 和 nuScenes 两个数据集上对多类目标的定量对比以及推理速度和定性比较。
以下是定量比较:
下图是定性比较:
消融实验
证明了 3D 检测器、3D 卡尔曼滤波、角度修正的正向效果,证实了角速度未产生作用,以及对比了交并比、航迹开始和结束对应的超参调节效果,具体实验结果参考原文。
下表是消融实验结果:
总结
本文建立了一个简单高效的 3D MOT baseline,整体架构是 tracking by detection,利用卡尔曼滤波做状态估计,结合检测结果做数据关联,对数据关联结果分别进行状态更新、航迹开始和结束处理。
针对缺少 3D MOT 评价工具的问题,本文利用 3D IOU 替代 2D IOU 用于评估,并提出了 3 个适用于高召回率系统的评价指标。