论文《Planning-oriented Autonomous Driving》详细解析
摘要
现代自动驾驶系统被描述为顺序执行的模块化任务,即感知、预测和规划。为了执行各种任务并实现高级别智能,当前的方法要么为每个任务部署独立的模型,要么设计带有独立头的多任务范式。然而,这些方法可能会受到累积错误或任务协调不足的影响。本文提出了一种理想的框架,即应当设计和优化以实现自动驾驶汽车的最终目标,即规划。为此,我们重新审视了感知和预测中的关键组件,并优先考虑这些任务,使它们有助于规划。我们介绍了一种名为Unified Autonomous Driving (UniAD)的最新综合框架,该框架将全栈驾驶任务整合到一个网络中。它巧妙地利用每个模块的优势,并从全局视角为代理交互提供互补的特征抽象。任务通过统一的查询接口进行通信,互相促进,以实现规划。我们在具有挑战性的nuScenes基准上实例化了UniAD。通过广泛的消融实验,证明了这种方法在所有方面大大优于以前的最新技术。代码和模型公开。
1. 引言
随着深度学习的成功发展,自动驾驶算法由一系列任务组成,包括检测、跟踪、映射在感知中;在预测中进行运动和占用预测。大多数工业解决方案为不同任务部署独立模型,只要车载芯片的资源带宽允许。虽然这种设计简化了跨团队的研发难度,但由于模块间的优化目标隔离,可能导致信息丢失、错误累积和特征对齐问题。
一种更优雅的设计是将广泛的任务整合到多任务学习(MTL)范式中,通过在共享特征提取器中插入几个特定任务头。这样的方法在许多领域,包括通用视觉和自动驾驶中广泛应用。尽管如此,这种方案可能导致不理想的“负迁移”。
相比之下,端到端自动驾驶的出现将感知、预测和规划中的所有节点作为一个整体统一起来。前序任务的选择和优先级应有利于规划。系统应以规划为导向,精心设计某些组件,以避免独立选项中的累积错误或MTL方案中的负迁移。
2. 方法论
UniAD包含四个基于Transformer解码器的感知和预测模块,以及一个位于末端的规划模块。查询Q在连接管道中发挥作用,建模驾驶场景中实体的不同交互。具体来说,一系列多摄像头图像被输入特征提取器,得到的视角特征通过BEV编码器转换为统一的鸟瞰图(BEV)特征B。TrackFormer用于检测和跟踪代理;MapFormer表示道路元素并执行全景分割;MotionFormer捕捉代理和地图之间的交互并预测未来轨迹;OccFormer预测多步未来占用情况。最终,Planner利用来自MotionFormer的表达式强大的ego-vehicle查询进行规划预测,并避免碰撞。
2.1 感知:跟踪和映射
- TrackFormer:联合执行检测和多目标跟踪(MOT),避免了不可微的后处理。
- MapFormer:基于2D全景分割方法Panoptic SegFormer设计,稀疏表示道路元素,帮助下游运动预测。
2.2 预测:运动预测
- MotionFormer:利用来自TrackFormer和MapFormer的高抽象查询,预测所有代理的多模态未来轨迹,以场景为中心的方式产生多代理轨迹,节省了对齐整个场景到每个代理坐标的计算成本。
2.3 预测:占用预测
- OccFormer:将场景级和代理级语义结合起来,预测未来的占用格网图。通过交叉注意力模块统一场景和代理级理解。
2.4 规划
- 规划通常需要高层命令来指示前进方向。本文将原始导航信号转换为可学习的嵌入,称为命令嵌入。通过BEV特征,计划查询被解码为未来的路径点。
3. 实验
我们在具有挑战性的nuScenes数据集上进行实验,验证了我们设计在任务协调和规划效果方面的有效性。
4. 结论
本文讨论了自动驾驶算法框架的系统级设计。提出了一种规划导向的管道,即UniAD,提供了详细的分析和实验验证其在各方面的优越性。