自动驾驶核心算法盘点|目标跟踪与轨迹预测篇 目录01 目标跟踪篇从 3D 极简基线到多模态融合1. AB3DMOT3D 空间中的极简基线2. CenterPoint基于中心点的检测与跟踪一体化3. EagerMOT相机与激光雷达的“急切”融合02 轨迹预测篇从单体推演到意图驱动1. Social LSTM开启交互建模时代2. Social GAN显式生成多模态未来3. VectorNet高精地图的结构化表达4. TNT以目标终点为驱动的预测03 构建连续的时空理解能力在之前的《自动驾驶核心算法盘点》系列中我们盘点了自动驾驶如何通过感知算法“看见”世界以及如何通过 SLAM 与高精地图“记住”世界。但对于一个成熟的自动驾驶系统来说仅仅“看见”这一帧画面里有几辆车、几个行人是远远不够的。本文是该系列的第5篇聚焦目标跟踪与轨迹预测。前者负责把每一帧独立的检测结果串联起来给每个目标发一张“身份证”后者则负责基于历史轨迹和环境地图预测目标未来的运动走向。接下来我们将为您盘点这两个领域中最具代表性的经典算法看看自动驾驶是如何从“识别当前状态”走向“理解连续行为”的。01 目标跟踪篇从 3D 极简基线到多模态融合在自动驾驶中最主流的跟踪框架被称为 Tracking-by-Detection基于检测的跟踪。简单来说就是先用 3D 检测算法找出每一帧里的所有目标然后再用跟踪算法把前后两帧里属于同一个目标的结果连起线来。1. AB3DMOT3D 空间中的极简基线早期的 3D 跟踪算法往往极其复杂试图将 2D 图像特征与 3D 点云特征进行繁琐的匹配。2020 年卡内基梅隆大学CMU的研究团队提出了 AB3DMOTA Baseline for 3D Multi-Object Tracking用极简的思路打破了这一局面。图1 | AB3DMOT 在 KITTI 数据集上的 3D 目标跟踪结果可视化。图中使用不同颜色的 3D 边界框和 ID 标识了连续帧中被稳定跟踪的车辆目标。核心思路AB3DMOT 的哲学是“大道至简”。作者发现只要 3D 检测器的质量足够好跟踪算法完全可以非常简单。它摒弃了所有复杂的 2D/3D 特征融合仅仅使用了两个极其经典的数学工具3D 卡尔曼滤波3D Kalman Filter用来根据目标上一秒的 3D 速度和位置预测它这一秒应该出现在哪里。匈牙利算法Hungarian Algorithm用来计算 3D 检测框和预测框之间的 3D 交并比3D IoU并找出最优的匹配方案。代表意义AB3DMOT 证明了在高质量 3D 检测器的加持下仅靠极其简单的 3D 运动学模型就能实现优秀的在线跟踪且在 KITTI 数据集上速度高达惊人的 207.4 FPS。它确立了现代自动驾驶实时 3D 多目标跟踪的基础工程范式。2. CenterPoint基于中心点的检测与跟踪一体化传统的 3D 检测与跟踪算法通常把目标表示为一个个 3D 边界框Bounding Box。但 3D 边界框有朝向角度在匹配时计算 3D IoU 非常复杂且容易因为角度预测的微小偏差导致匹配失败。2021 年发表在 CVPR 上的 CenterPoint 提出了一个极其优雅的视角。图2 | CenterPoint 的两阶段架构。第一阶段将点云转化为鸟瞰图BEV特征通过中心点热力图Center Heatmap检测目标并回归出速度和 3D 尺寸第二阶段提取目标特征进行进一步的评分和边界框精修。图3 | 传统 Anchor-based 边界框与 Center-based 中心点表示的对比。将目标简化为中心点后不仅避开了复杂的朝向角匹配问题还使得跟踪过程变得极其简单。核心思路CenterPoint 认为“万物皆可为点”。它不再直接预测 3D 边界框而是先在鸟瞰图BEV上预测目标的“中心点”同时附带预测目标的速度。在跟踪阶段由于目标变成了点系统只需要拿上一帧的中心点加上预测速度得到当前帧的预期中心点然后与当前帧检测到的中心点进行贪心最近邻匹配Greedy Closest-Point Matching。完全抛弃了复杂的 3D IoU 计算。代表意义CenterPoint 将 3D 检测与跟踪完美统一在了一个框架下凭借其简洁高效的设计在 nuScenes 和 Waymo 等大规模自动驾驶基准测试中取得了统治级的 SOTAState-of-the-Art表现。3. EagerMOT相机与激光雷达的“急切”融合在真实道路上激光雷达LiDAR对远距离目标的点云极其稀疏容易导致跟踪断裂而相机虽然能看清远处却缺乏准确的深度信息。2021 年发表在 ICRA 上的 EagerMOT 提出了一种巧妙的多传感器融合跟踪策略。图4 | nuScenes 数据集中的自动驾驶多模态传感器视角。上方为激光雷达点云与 3D 跟踪框的鸟瞰图BEV下方为多相机环视图像中的 2D 投影框。EagerMOT 等算法正是利用了这种多模态互补性来提升跟踪的鲁棒性。核心思路EagerMOT 的名字来源于它的“急切Eager”策略只要有任何传感器捕捉到了目标就立刻将其用于跟踪。它设计了两次匹配流程第一次用高精度的 3D 激光雷达检测框去匹配 3D 轨迹第二次把剩下没匹配上的轨迹投影到 2D 图像平面拿去和相机的 2D 检测框再匹配一次。代表意义EagerMOT 证明了在自动驾驶中合理利用多模态传感器的互补特性可以大幅提升跟踪的鲁棒性。它使得系统能够在目标距离极远、激光雷达失效时依然依靠相机保持对其身份的稳定跟踪。02 轨迹预测篇从单体推演到意图驱动跟踪解决了“过去和现在”而预测要解决“未来”。与跟踪不同轨迹预测天然面临着多模态Multi-modality的挑战——在同一个路口同一辆车完全可能合法地做出左转、直行或右转等多种不同的选择。1. Social LSTM开启交互建模时代早期的轨迹预测往往把每个目标孤立看待但现实中行人和车辆的运动是相互影响的。2016 年发表在 CVPR 的 Social LSTM 是解决这一问题的先驱性工作。核心思路该方法虽然最初针对人群轨迹预测设计但其核心思想深刻影响了自动驾驶。它为每个目标分配一个长短期记忆网络LSTM来处理历史轨迹同时创新性地提出了“Social Pooling社交池化”机制。在每一个时间步系统不仅看目标自己的状态还会把周围邻居的隐藏状态聚合过来。代表意义它标志着轨迹预测从“单体运动学外推”正式迈入了“考虑群体交互约束”的深度学习时代。自动驾驶系统开始明白预测一辆车的轨迹必须同时考虑它旁边车辆的动向。2. Social GAN显式生成多模态未来既然未来是不确定的我们为什么一定要预测出一条“最准”的轨迹呢2018 年的 Social GAN 引入了生成对抗网络GAN试图直接生成多种可能的未来。图5 | Social LSTM 提出的 Social Pooling 机制示意图。在拥挤场景下系统为每个目标分配一个 LSTM并在每个时间步将邻近目标的隐藏状态Hidden states通过空间网格进行池化聚合从而捕捉复杂的群体交互。图6 | 基于生成式对抗网络GAN的轨迹预测结果。面对前方路口的多种可能性模型能够一次性输出多条符合物理约束的预测轨迹图中不同颜色的线条显式覆盖了目标的多种未来意图。核心思路通过在网络中引入随机噪声并使用判别器来“挑刺”Social GAN 能够一次性输出多条不同的预测轨迹。作者还设计了一种特殊的损失函数Variety Loss鼓励网络生成的轨迹尽量分散覆盖左转、直行等各种可能性。代表意义它将轨迹预测从“回归一个单一答案”推进到了“生成一组符合常理的未来解”这与自动驾驶规控模块需要评估多种潜在风险的需求不谋而合。3. VectorNet高精地图的结构化表达自动驾驶的轨迹预测不仅要考虑其他车还要考虑道路结构高精地图。在 2020 年之前很多方法把高精地图和历史轨迹画成一张“鸟瞰图BEV”然后用卷积神经网络CNN去提取特征这既耗时又容易丢失精度。Waymo 团队在 2020 年提出了标志性的 VectorNet。图7 | 栅格化表示左与向量化表示右的对比。传统方法将地图渲染成像素图像而 VectorNet 直接将车道线、斑马线和历史轨迹建模为由关键点连接而成的向量Vectors。图8 | VectorNet 的分层图神经网络架构。系统首先在每个局部元素如单条车道线或单辆车轨迹内部构建子图Polyline subgraphs提取局部特征然后再构建一个全局交互图Global interaction graph对所有地图元素和交通参与者之间的关系进行高阶建模。核心思路VectorNet 彻底抛弃了图像渲染。它把高精地图里的车道线、停止线以及车辆的历史轨迹全部看作是一段段由点连成的折线Polylines。然后利用图神经网络GNN直接在这些几何向量上进行计算。代表意义这种向量化表示不仅大幅降低了计算量参数量和运算量显著下降还保留了极其精确的道路拓扑结构。VectorNet 几乎成为了后来所有主流自动驾驶轨迹预测算法的底层特征提取标配。4. TNT以目标终点为驱动的预测同样在 2020 年Waymo 团队在 VectorNet 的基础上进一步提出了 TNTTarget-driveN Trajectory Prediction为多模态轨迹预测提供了一个极其优雅的工程解法。图9 | TNT 算法三个阶段的可视化示意。左图展示了在路口预测出的多个潜在目标终点星号中图展示了基于终点生成的候选轨迹右图展示了最终打分筛选出的高概率预测轨迹。核心思路TNT 的核心洞见是车辆未来的轨迹很大程度上取决于它想去哪个“终点”。因此TNT 将预测拆成了三步预测意图终点在地图上撒下一堆候选点预测车辆最可能到达的几个终点比如左转车道的尽头、直行车道的尽头。补全中间轨迹既然知道了起点和终点就把中间的行驶路径连起来。轨迹打分筛选对这些生成的轨迹进行合理性打分选出最可能的几条输出。代表意义TNT 将原本极难收敛的长时间轨迹回归问题巧妙地转化为了“终点分类 短期路径规划”问题。这种“先猜意图再画轨迹”的思路极大地提升了预测的准确性和可解释性成为工业界广泛借鉴的经典范式。03 构建连续的时空理解能力从目标跟踪到轨迹预测自动驾驶算法完成了一次认知维度的跨越目标跟踪如 AB3DMOT、CenterPoint、EagerMOT让系统拥有了“短期记忆”能够在 3D 空间和多模态传感器中把离散的检测框变成连续的物理实体。轨迹预测如 Social LSTM、VectorNet、TNT让系统拥有了“未来想象力”能够结合道路拓扑和群体交互推演出交通参与者接下来的意图。随着端到端大模型的兴起感知、跟踪、预测和规控的边界正在逐渐模糊。但无论架构如何演进上述经典算法所沉淀下来的核心思想——3D 极简状态估计、点特征表达、多模态融合、向量化地图约束以及意图驱动的多模态生成依然是构建自动驾驶“时空理解能力”的基石。参考文献论文1.Weng, X., et al. (2020). 3D Multi-Object Tracking: A Baseline and New Evaluation Metrics. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).2.Yin, T., et al. (2021). Center-based 3D Object Detection and Tracking. IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).3.Kim, A., et al. (2021). EagerMOT: 3D Multi-Object Tracking via Sensor Fusion. IEEE International Conference on Robotics and Automation (ICRA).4.Alahi, A., et al. (2016). Social LSTM: Human Trajectory Prediction in Crowded Spaces. IEEE Conference on Computer Vision and Pattern Recognition (CVPR).5.Gupta, A., et al. (2018). Social GAN: Socially Acceptable Trajectories with Generative Adversarial Networks. IEEE Conference on Computer Vision and Pattern Recognition (CVPR).6.Gao, J., et al. (2020). VectorNet: Encoding HD Maps and Agent Dynamics from Vectorized Representation. IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).7.Zhao, H., et al. (2020). TNT: Target-driveN Trajectory Prediction. Conference on Robot Learning (CoRL).