13-MCTrack:面向自动驾驶领域的统一三维多目标跟踪框架 摘要本文介绍了MCTrack——一种全新的三维多目标跟踪方法,该方法在 KITTI 、nuScenes及Waymo数据集上均实现了业界领先(SOTA 级)的性能表现。针对现有跟踪方法存在的局限性(这些方法虽在特定数据集上表现优异但缺乏通用性),MCTrack提供了统一的解决方案。此外,我们统一了各数据集感知结果的格式(命名为BaseVersion),使多目标跟踪领域的研究人员无需承担过重的数据预处理负担,即可专注于核心算法开发。最后,鉴于现有评估指标的局限性, 我们提出了一套新型评估指标体系,用于衡量速度、加速度等对下游任务至关重要的运动信息输出参数。1、数据集合代码1.1 论文代码https://github.com/megvii-research/MCTrack1.2 数据集KITTI 、nuScenes及Waymo数据集2、要解决的问题TBD范式方法在性能和计算资源效率上均优于TBA和JDT范式方法。常用的数据集包括KITTI Waymo 和nuScenes 它们在采集场景、区域、天气和时间等方面表现出显著的差异。 此外不同数据集的难度和格式差异较大。 此外在性能评估方面现有的指标如CLEAR AMOTA HOTA IDF1 等主要判断轨迹是否正确连接。然而它们在评估后续运动信息- -速度、加速度和角速度等关键信息- -的精度方面存在不足这对于满足下游预测和规划任务的要求至关重要。2.1 三维数剧集存在的问题三维跟踪方法通常使用KITTI 、nu Scenes 、Waymo 等数据集这些数据集提供了丰富的传感器信息来捕获现实世界中物体的三维信息。 遗憾的是这3个数据集之间存在显著的格式差异研究人员往往需要执行各种预处理步骤来适应它们的流水线特别是对于TBD方法不同的检测格式对研究人员提出了相当大的挑战。为了解决这个问题本文从三个数据集中规范了感知结果(检测)的格式使研究人员能够更好地专注于跟踪算法的研究。2.2 MOT范式存在的问题JDT、TBA和RMOT范式通常依赖于图像特征信息需要GPU资源进行处理。然而对于目前自动驾驶车辆中可用的计算能力支持MOT任务所需的GPU资源是不切实际的。而且这些范式的表现往往不如TBD方法有效。因此本文重点研究基于TBD的跟踪方法旨在设计一个统一的三维多目标跟踪框架以适应自动驾驶车辆的计算约束。2.3 数据关联在目前的2D和3D多目标跟踪方法中常用的代价函数有IoU、GIoU、DIoU、欧氏距离、外观相似度等。这些代价函数有的只考虑两个包围盒之间的相似性有的只关注包围盒中心之间的距离。它们都不能保证在每个数据集中每个类别都具有良好的性能。本文提出的RoGDIoU同时考虑了形状相似性和中心距离有效地解决了这些问题。此外在匹配策略方面大多数方法采用两阶段方法第一阶段使用一组阈值进行匹配第二阶段放宽这些阈值进行另一轮匹配。 虽然该方法有一定的改进但当感知深度存在较大波动时该方法仍会失效。因此本文引入了一种基于BEV平面和Range View ( RV )平面的二次匹配策略通过从不同角度进行匹配有效地解决了这一问题。2.4 MOT评价指标多目标跟踪评价指标包括MOTA和MOTP、IDF1、HOTA 、AMOTA 等。这些度量主要评估轨迹连接的正确性即轨迹是否连续和一致以及是否存在断点或ID开关。然而它们没有考虑到在多目标跟踪任务中一条轨迹被正确连接后必须输出的运动信息如速度、加速度和角速度。这些运动信息对于轨迹预测和规划等下游任务至关重要。 鉴于此本文引入了一组新的评价指标该指标主要关注MOT任务输出的运动信息我们称之为运动指标。我们鼓励MOT领域的研究人员不仅关注轨迹的准确关联而且关注轨迹输出的质量和适用性以满足下游任务的要求。3、提出的创新点针对上述挑战我们首先引入BaseVersion格式对不同数据集的感知结果(即,检测)进行标准化处理。其次本文提出了一个统一的多目标跟踪框架MCTrack。最后本文介绍了一套评估MOT系统输出运动信息的指标包括速度、加速度和角速度。我们希望研究人员不仅要关注轨迹的正确链接还要考虑如何在正确匹配后准确地提供下游预测和规划所需的运动信息如速度、加速度等。我们推出MCTrack——一种专为自动驾驶设计的、精简高效且统一的三维多目标跟踪方法。其整体框架如图2所示,各组件的具体描述如下所述。3.1. 数据预处理为验证统一数据处理流程(PPL)在不同数据集中的性能并便于研究人员使用,我们对来自各数据集的检测数据格式进行了标准化处理,并将其命名为BaseVersion格式。该格式完整记录了障碍物在全球坐标系中的位置信息,按场景ID、帧序列及其他相关参数进行组织。如图3所示,其结构包含涵盖所有关联帧的完整场景索引;每帧数据均详细记录了帧编号、时间戳、唯一标识符、检测框、变换矩阵及其他相关参数。针对每个检测框,我们记录以下详细信息:检测分数、类别、 global__xyz 、最小宽度(lwh)、全局方向(以四元数表示)、 global__yaw(弧度值)、全局速度及全局加速度。3.2 MTCTrack数据处理流程3.2.1 卡尔曼滤波器目前大多数3DMOT方法将位置、大小、航向和得分纳入到卡尔曼滤波建模中从而产生一个状态向量S { xyzlwhθscore}可以有多达11个维度使用统一的运动方程表示例如常速度或常加速度模型。值得注意的是在本文中θ具体表示航向角。然而这种建模方法存在以下问题首先不同的状态变量可能具有不同的单位( e.g. ,米,度)和数量级(例如,位置可能在米的范围内,而分数可能在0到1之间)这可能导致数值稳定性问题。 其次一些状态变量表现出非线性关系(例如角度的周期性)而另一些状态变量则是线性(如维度等)使得用统一的运动方程来表示它们具有挑战性。此外将所有状态变量合并到单一模型中增加了状态向量的维度从而增加了计算复杂度。这可能会降低滤波器的效率特别是在实时应用中。因此我们将位置、大小和航向角解耦对每个组件应用不同的卡尔曼滤波器。对于位置参数,我们仅需使用恒定加速度运动模型来建模BEV平面中的中心点x,y。状态向量与观测向量定义如下:在尺寸方面,我们仅使用长度和宽度l,w 并采用恒速运动模型。状态向量与观测向量表示如下:需注意的是,从理论上讲,同一物体的尺寸应保持恒定。然而,由于感知过程中可能存在误差,我们需借 助滤波器来确保尺寸的稳定性和连续性。对于航向角,我们采用恒速运动模型。状态向量与观测向量表示如下:其中,表示由感知系统提供的航向角,而表示根 据速度计算得出的航向角,即。3.2.2 成本函数正如文献[ 73 ]所指出的那样当两个盒子包含在一起时GIoU不能区分它们之间的相对位置关系从而有效地简化为IoU。同样对于DIoU问题也同样存在如图4所示。当两个盒子的Io U为0且中心距离相等时也很难判断两个盒子之间的相似度。我们的大量实验表明仅仅使用欧氏距离或IoU及其变体作为代价度量不足以捕获所有类别之间的相似性。然而结合距离和IoU可以得到更好的结果。为了解决这些局限性我们提出了Ro_GDIoU一种基于BEV平面的IoU变体通过集成GIoU和DIoU来纳入检测框的航向角。见图2 5给出了Ro_GDIoU计算的示意图并在算法1中给出了相应的伪代码。其中和分别表示IoU和欧氏距离的权重且 2。当两个包围盒完美匹配时Ro_IoU 1即Ro_GDIoU 1。当两个盒子相距较远时Ro_IoU 0即Ro_GDIo U - 2。在计算检测框和轨迹框之间的Ro GDIoU时我们将使用卡尔曼滤波的前向轨迹预测与基于检测的后向预测相结合。假设在时刻 τ 的检测框表示为并且在时间 τ - 1处的轨迹表示为前向预测可以计算如下其中F ( · )表示运动方程在这种情况下我们采用常速度模型。变量τ 表示当前帧与前一帧之间的时间差。后向预测可以计算如下最终检测框和轨迹框之间的代价函数通过以下公式计算其中α∈[ 0、1 ]C表示Ro_GDIoU 。3.2.3 两阶段匹配与大多数方法类似我们的流水线也采用了两阶段匹配过程具体流程如伪代码2所示。然而关键的区别在于我们的两阶段匹配是从不同的角度进行的而不是通过在同一角度内调整阈值。和的计算如式( 7 )所示。对于SDIoU的计算请参考中的方法。我们将检测或轨迹框的坐标信息定义为X [x , y , z , l , w , h , θ]。根据方程7可以确定对应的8个角点记为C []。在这些角点中我们选择具有指标的点来表示BEV平面上的4个点3.3 新的MOT评价指标3.3.1 静态指标传统的MOT评估主要依赖于CLEAR [ 4 ]AMOTA [ 61 ]HOTA [ 35 ]和IDF1 [ 43 ]等度量。这些指标侧重于评估轨迹连接的正确性和一致性。在本文中我们将这些指标称为静态指标。然而静态度量指标没有考虑轨迹连接后的运动信息如速度、加速度、角速度等。在自动驾驶、机器人等领域准确的运动信息对于下游的预测、规划和控制任务至关重要。因此仅仅依靠静态指标可能无法全面反映跟踪系统的实际性能和应用价值。将运动度量引入到MOT评估中以评估轨迹的运动特性和准确性变得尤为重要。这不仅为跟踪系统的性能提供了更全面的评估而且增强了其在自动驾驶和机器人技术中的实际应用确保系统满足现实世界的需求并在复杂环境中有效地执行。3.2.2 动态指标将运动度量引入到MOT评估中以评估轨迹的运动特性和准确性变得尤为重要。这不仅为跟踪系统的性能提供了更全面的评估而且增强了其在自动驾驶和机器人技术中的实际应用确保系统满足现实世界的需求并在复杂环境中有效地执行。针对目前MOT评价指标没有充分考虑运动属性的问题本文提出了一系列新的运动指标包括速度角度误差( Velocity Angle ErrorVAE )、速度范数误差( Velocity Norm ErrorVNE )、速度角度逆误差( Velocity Angle Inverse ErrorVAIE )、速度反转率( Velocity Inversion RatioVIR )、速度平滑误差( Velocity Smoothness ErrorVSE )和速度延迟误差( Velocity Delay ErrorVDE )。 这些运动度量旨在全面评估跟踪系统处理运动特征的性能涵盖了速度、角度、速度平滑度等运动信息的准确性和稳定性。VAE表示跟踪合作得到的速度角与地面真实角之间的误差计算为其中表示由目标速度计算得到的角度表示由跟踪速度计算得到的角度两个角度的取值范围均为0 ~ 360 °。考虑到角度的不连续性一个1 °与359 °的差值有效地对应一个2 °的分离。当速度角度误差超过预先定义的的阈值时VAIE对角度误差进行量化。超过这个阈值通常表明跟踪系统对目标速度方向的估计与实际方向正好相反。相应的VIR代表速度反比代表速度角度误差超过阈值的比例。式中N表示轨迹的序列长度。VNE表示跟踪系统得到的速度大小与真实速度大小之间的误差计算为其中和分别表示实际和预测的速度大小。VSE表示从滤波器得到的速度的平滑误差。使用Savitzky - Golay ( SG ) 滤波器计算平滑后的速度。其中 w 和 p 分别表示滤波器的窗口大小和多项式阶数。表示经SG滤波器平滑后的速度值。较小的VSE值表明原始速度曲线较为平滑。VDE表示跟踪系统得到的速度信号相对于真实速度信号的时间延迟。它是通过寻找给定时间窗口内的偏移量进行计算使得真实速度与跟踪系统得到的速度之差的均值和标准差之和最小。首先我们使用峰值检测算法来识别速度真值序列中局部极大值的集合。式中F ( · )表示峰值检测函数其中峰值点必须满足条件[ t-1 ][ t ][ t1 ]。随后我们计算给定时间窗口内真实速度与跟踪速度的差值。其中t表示峰值点对应的时间w 表示窗口长度τ 表示从跟踪系统施加到速度窗口的移位长度表示真实速度和跟踪速度之间的差集。接下来我们计算了集合的均值和标准差。最后均值和标准差之和最小所对应的时间偏移量 τ 即为VDE。其中 τ 是速度向量对应的时间戳n 是所考虑的时间窗口。需要注意的是对于一条轨迹的真实轨迹其时间序列中可能存在多个峰值点。上述计算方法仅针对单个峰值点的滞后。如果存在多个峰值点则取其平均值来表示整个轨迹的滞后情况。为了更好地说明VDE度量的意义我们在图6中提供了一个示意图。该图显示了两辆车以每小时100公里的速度行驶红色代表自动驾驶车辆白色代表前方障碍物。两车之间的初始安全距离设定为100米。假设在时间点tm前方车辆开始紧急减速并在时间点tn将其速度降低到每小时60公里。如果无人驾驶车辆对前车速度的感知存在延迟可能会误认为前车仍以每小时100公里的速度行驶。这会导致两辆车之间的安全距离在不知不觉中减小。 直到时间点tn自动驾驶车辆才最终感知到前车的减速此时安全距离可能非常接近极限。因此优化多目标跟踪模块输出的运动信息在自动驾驶中也至关重要。4、结论与不足在这项工作中我们开发了一种专门为自动驾驶领域量身定制的简洁统一的3D多目标跟踪方法。我们的方法在各种数据集上都取得了SOTA的性能。此外我们对不同数据集的感知格式进行了标准化处理使得研究人员可以专注于多目标跟踪算法的研究而无需处理数据集之间格式差异带来的繁琐预处理工作。最后我们引入了一套新的评价指标旨在衡量多目标跟踪的性能鼓励研究人员不仅关注轨迹的正确匹配而且关注对下游应用至关重要的运动属性的性能。