nuScenes最新SOTA | SparseAD:稀疏查询助力高效端到端自动驾驶!

人工智能 智能汽车
自动驾驶系统需要在复杂的驾驶场景中做出正确的决策,以确保驾驶的安全性和舒适性。

本文经自动驾驶之心公众号授权转载,转载请联系出处。

写在前面&出发点

端到端的范式使用统一的框架在自动驾驶系统中实现多任务。尽管这种范式具有简单性和清晰性,但端到端的自动驾驶方法在子任务上的性能仍然远远落后于单任务方法。同时,先前端到端方法中广泛使用的密集鸟瞰图(BEV)特征使得扩展到更多模态或任务变得成本高昂。这里提出了一种稀疏查询为中心的端到端自动驾驶范式(SparseAD),其中稀疏查询完全代表整个驾驶场景,包括空间、时间和任务,无需任何密集的BEV表示。具体来说,设计了一个统一的稀疏架构,用于包括检测、跟踪和在线地图绘制在内的感知任务。此外,重新审视了运动预测和规划,并设计了一个更合理的运动规划框架。在具有挑战性的nuScenes数据集上,SparseAD在端到端方法中实现了最先进的全任务性能,并显著缩小了端到端范式与单任务方法之间的性能差距。

领域背景

自动驾驶系统需要在复杂的驾驶场景中做出正确的决策,以确保驾驶的安全性和舒适性。通常,自动驾驶系统集成了多个任务,如检测、跟踪、在线地图、运动预测和规划。如图1a所示,传统的模块化范式将复杂的系统拆分为多个单独的任务,每个任务都独立优化。在这种范式中,独立的单任务模块之间需要手工进行后处理,这使得整个流程变得更为繁琐。另一方面,由于堆叠任务之间的场景信息损失压缩,整个系统的误差会逐渐累积,这可能导致潜在的安全问题。

关于上述问题,端到端自动驾驶系统以原始传感器数据作为输入,并以更简洁的方式返回规划结果。早期的工作提出跳过中间任务,直接从原始传感器数据预测规划结果。尽管这种方法更为直接,但在模型优化、可解释性和规划性能方面并不令人满意。另一种具有更好可解释性的多面范式是将自动驾驶的多个部分集成到一个模块化的端到端模型中,其中引入了多维度的监督,以提高对复杂驾驶场景的理解能力,并带来多任务处理的能力。

如图1b所示,在大多数先前的模块化端到端方法中,整个驾驶场景通过密集的鸟瞰图(BEV)特征进行表示,这些特征包括多传感器和时间信息,并作为全栈驾驶任务(包括感知、预测和规划)的源输入。尽管密集的BEV特征在跨空间和时间的多模态和多任务中确实发挥了关键作用,将之前使用BEV表示的端到端方法总结为Dense BEV-Centric范式。然而,尽管这些方法具有简洁性和可解释性,它们在自动驾驶的每个子任务上的性能仍然远远落后于相应的单任务方法。此外,在Dense BEV-Centric范式下,长期时间融合和多模态融合主要是通过多个BEV特征图来实现的,这导致了计算成本、内存占用显著增加,给实际部署带来了更大的负担。

这里提出了一种新颖的以稀疏查询为中心的端到端自动驾驶范式(SparseAD)。在该范式中,整个驾驶场景中的空间和时间元素均由稀疏查询表示,摒弃了传统的密集鸟瞰图(BEV)特征,如图1c所示。这种稀疏表示使得端到端模型能够更高效地利用更长的历史信息,并扩展到更多模态和任务,同时显著降低了计算成本和内存占用。

具体来说,重新设计了模块化端到端架构,并将其简化为一个由稀疏感知和运动规划器组成的简洁结构。在稀疏感知模块中,利用通用的时间解码器[将包括检测、跟踪和在线地图绘制在内的感知任务统一起来。在这个过程中,多传感器特征和历史记忆被视为tokens,而物体查询和地图查询则分别代表驾驶场景中的障碍物和道路元素。在运动规划器中,以稀疏感知查询作为环境表示,同时对自车和周围代理进行多模态运动预测,以获取自车的多种初始规划方案。随后,充分考虑多维度的驾驶约束,生成最终的规划结果。

主要贡献:

  • 提出了一种新颖的以稀疏查询为中心的端到端自动驾驶范式(SparseAD),该范式摒弃了传统的密集鸟瞰图(BEV)表示方法,因此具有巨大的潜力,能够高效地扩展到更多模态和任务。
  • 将模块化的端到端架构简化为稀疏感知和运动规划两部分。在稀疏感知部分,以完全稀疏的方式统一了检测、跟踪和在线地图绘制等感知任务;而在运动规划部分,则在更合理的框架下进行了运动预测和规划。
  • 在具有挑战性的nuScenes数据集上,SparseAD在端到端方法中取得了最先进的性能,并显著缩小了端到端范式与单任务方法之间的性能差距。这充分证明了所提出的稀疏端到端范式具有巨大的潜力。SparseAD不仅提高了自动驾驶系统的性能和效率,还为未来的研究和应用提供了新的方向和可能性。

SparseAD网络结构

如图1c所示,在提出的以稀疏查询为中心的范式中,不同的稀疏查询完全代表了整个驾驶场景,不仅负责模块之间的信息传递和交互,还以端到端的方式在多任务中传播反向梯度以进行优化。与以往以密集鸟瞰图(BEV)为中心的方法不同,SparseAD中没有使用任何视图投影和密集BEV特征,从而避免了沉重的计算和内存负担,SparseAD的详细架构如图2所示。

从架构示意图上看,SparseAD主要由三部分组成,包括传感器编码器、稀疏感知和运动规划器。具体来说,传感器编码器将多视图相机图像、雷达或激光雷达点作为输入,并将其编码成高维特征。这些特征随后与位置嵌入(PE)一起作为传感器tokens输入到稀疏感知模块中。在稀疏感知模块中,来自传感器的原始数据将被聚合成多种稀疏感知查询,如检测查询、跟踪查询和地图查询,它们分别代表驾驶场景中的不同元素,并将进一步传播到下游任务中。在运动规划器中,感知查询被视为驾驶场景的稀疏表示,并被充分利用于所有周围agent和自车。同时,考虑了多方面的驾驶约束以生成既安全又符合动力学要求的最终规划。

此外,架构中引入了端到端多任务记忆库,用于统一存储整个驾驶场景的时序信息,这使得系统能够受益于长时间历史信息的聚合,从而完成全栈驾驶任务。

如图3所示,SparseAD的稀疏感知模块以稀疏的方式统一了多个感知任务,包括检测、跟踪和在线地图绘制。具体来说,这里有两个结构完全相同的时序解码器,它们利用来自记忆库的长期历史信息。其中一个解码器用于障碍物感知,另一个用于在线地图绘制。

通过不同任务对应的感知查询进行信息聚合后,检测和跟踪头以及地图部分别被用于解码和输出障碍物和地图元素。之后,进行更新过程,该过程会过滤并保存当前帧的高置信度感知查询,并相应地更新记忆库,这将有利于下一帧的感知过程。

通过这种方式,SparseAD的稀疏感知模块实现了对驾驶场景的高效、准确的感知,为后续的运动规划提供了重要的信息基础。同时,通过利用记忆库中的历史信息,模块能够进一步提高感知的准确性和稳定性,确保自动驾驶系统的可靠运行。

稀疏感知

在障碍物感知方面,在统一的解码器内采用联合检测和跟踪的方式,无需任何额外的手工后处理。检测和跟踪查询之间存在明显的不平衡,这可能导致检测性能的显著下降。为了缓解上述问题,从多个角度改进了障碍物感知的性能。首先,引入了两级记忆机制来跨帧传播时序信息。其中,场景级记忆维持没有跨帧关联的查询信息,而实例级记忆则保持跟踪障碍物相邻帧之间的对应关系。其次,考虑到两者起源和任务的不同,对场景级和实例级记忆采用了不同的更新策略。具体来说,通过MLN来更新场景级记忆,而实例级记忆则通过每个障碍物的未来预测进行更新。此外,在训练过程中,还对跟踪查询采用了增强策略,以平衡两级记忆之间的监督,从而增强检测和跟踪性能。之后,通过检测和跟踪头部,可以从检测或跟踪查询中解码出具有属性和唯一ID的3D边界框,然后进一步用于下游任务。

在线地图构建是一个复杂而重要的任务。根据目前所了解的知识,现有的在线地图构建方法大多依赖于密集的鸟瞰视图(BEV)特征来表示驾驶环境。这种方法在扩展感知范围或利用历史信息方面存在困难,因为需要大量的内存和计算资源。我们坚信所有的地图元素都可以以稀疏的方式表示,因此,尝试在稀疏范式下完成在线地图构建。具体来说,采用了与障碍物感知任务中相同的时序解码器结构。最初,带有先验类别的地图查询被初始化为在驾驶平面上均匀分布。在时序解码器中,地图查询与传感器标记和历史记忆标记进行交互。这些历史记忆标记实际上是由之前帧中高度可信的地图查询组成的。然后,更新后的地图查询携带了当前帧地图元素的有效信息,可以被推送到记忆库中,以便在未来的帧或下游任务中使用。

显然,在线地图构建的流程与障碍物感知大致相同。也就是说,统一了包括检测、跟踪和在线地图构建在内的感知任务,采用了一种通用的稀疏方式,这种方式在扩展到更大范围(例如100m × 100m)或长期融合时更加高效,而且不需要任何复杂的操作(如可变形注意力或多点注意力)。据我们所知,这是第一个在稀疏方式下在统一感知架构中实现在线地图构建的。随后,利用分段贝塞尔地图Head来回归每个稀疏地图元素的分段贝塞尔控制点,这些控制点可以方便地转换以满足下游任务的要求。

Motion Planner

我们重新审视了自动驾驶系统中的运动预测与规划问题,并发现许多先前的方法在预测周围车辆运动时忽略了本车(ego-vehicle)的动态。虽然这在大多数情况下可能不会显现出来,但在诸如交叉口等场景中,当近处车辆与本车之间交互紧密时,这可能会带来潜在风险。受此启发,设计了一个更加合理的运动规划框架。在这个框架中,运动预测器同时预测周围车辆和本车的运动。随后,本车的预测结果作为运动先验被用于后续的规划优化器。在规划过程中,我们考虑了不同方面的约束,以产生既满足安全性又符合动力学要求的最终规划结果。

如图4所示,SparseAD中的运动规划器将感知查询(包括轨迹查询和地图查询)作为当前驾驶场景的稀疏表示。多模态运动查询被用作媒介,以实现对驾驶场景的理解、对所有车辆(包括本车)之间交互的感知,以及对不同未来可能性的博弈。随后,本车的多模态运动查询被送入规划优化器,其中充分考虑了包括高级指令、安全性和动力学在内的多个方面的驾驶约束。

运动预测器。遵循先前的方法,通过标准的transformer层实现了运动查询与当前驾驶场景表示(包括轨迹查询和地图查询)之间的感知和整合。此外,应用自车agent和跨模态交互来共同建模未来时空场景中周围agent和本车之间的交互。通过多层堆叠结构内部和之间的模块协同作用,运动查询能够聚合来自静态和动态环境的丰富语义信息。

除了上述内容外,还引入了两种策略来进一步提高运动预测器的性能。首先,利用轨迹查询的实例级时间记忆进行简单直接的预测,并将其作为周围agent运动查询初始化的一部分。通过这种方式,运动预测器能够从上游任务中获得的先验知识中受益。其次,得益于端到端记忆库,能够以几乎可忽略的成本、以流式方式通过代理记忆聚合器从保存的历史运动查询中同化有用信息。

需要注意的是,本车的多模态运动查询是同时更新的。通过这种方式,可以获得本车的运动先验,这可以进一步促进规划的学习过程。

规划优化器。借助运动预测器提供的运动先验,获得了更好的初始化,从而在训练过程中减少了绕行。作为运动规划器的关键组成部分,成本函数的设计至关重要,因为它将极大地影响甚至决定最终性能的质量。在提出的SparseAD运动规划器中,主要考虑安全和动力学两大方面的约束,旨在生成令人满意的规划结果。具体来说,除了VAD中确定的约束外,还重点关注本车与附近agent之间的动态安全关系,并考虑它们在未来时刻的相对位置。例如,如果agent i相对于本车持续保持在前方左侧区域,从而阻止本车向左变道,那么agent i将获得一个左标签,表示agent i对本车施加了向左的约束。因此,约束在纵向方向上被分为前、后或无,在横向方向上被分为左、右或无。在规划器中,我们从相应的查询中解码其他agent与本车在横向和纵向方向上的关系。这个过程涉及确定这些方向上其他代理与本车之间所有约束关系的概率。然后,我们利用focal loss作为Ego-Agent关系(EAR)的成本函数,有效地捕获附近agent带来的潜在风险:

由于规划轨迹必须遵循控制系统执行的动力学规律,在运动规划器中嵌入了辅助任务,以促进本车动力学状态的学习。从本车查询Qego中解码速度、加速度和偏航角等状态,并使用动力学损失对这些状态进行监督:

实验结果

在nuScenes数据集上进行了大量实验,以证明方法的有效性和优越性。公正地说,将对每个完整任务的性能进行评估,并与之前的方法进行比较。本节实验使用了SparseAD的三种不同配置,分别是仅使用图像输入的SparseAD-B和SparseAD-L,以及使用雷达点云和图像多模态输入的SparseAD-BR。SparseAD-B和SparseAD-BR都使用V2-99作为图像骨干网络,输入图像分辨率为1600 × 640。SparseAD-L则进一步利用ViTLarge作为图像骨干网络,输入图像分辨率为1600×800。

在nuScenes验证数据集上的3D检测和3D多目标跟踪结果如下。“仅跟踪方法”指的是通过后期处理关联进行跟踪的方法。“端到端自动驾驶方法”指的是具备自动驾驶全栈任务能力的方法。表中的所有方法都是在全分辨率图像输入下进行评估的。†:结果是通过官方开源代码复现的。-R:表示使用了雷达点云输入。

与在线建图方法的性能比较如下,结果是在[1.0m, 1.5m, 2.0m]的阈值下进行评估的。‡:通过官方开源代码复现的结果。†:根据SparseAD中规划模块的需求,我们进一步将边界细分为路段和车道,并分别进行评估。∗:骨干网络和稀疏感知模块的成本。-R:表示使用了雷达点云输入。

Multi-Task结果

障碍感知。在Tab. 2中将SparseAD的检测和跟踪性能与nuScenes验证集上的其他方法进行了比较。显然,SparseAD-B在大多数流行的仅检测、仅跟踪和端到端多目标跟踪方法中表现出色,同时与SOTA方法如StreamPETR、QTrack在相应任务上的性能相当。通过采用更先进的骨干网络进行扩展,SparseAD-Large实现了整体更好的性能,其mAP为53.6%,NDS为62.5%,AMOTA为60.6%,整体上优于之前的最佳方法Sparse4Dv3。

在线建图。在Tab. 3中展示了SparseAD与其他先前方法在nuScenes验证集上的在线建图性能比较结果。需要指出的是,根据规划的需求,我们将边界细分为路段和车道,并分别进行评估,同时将范围从通常的60m × 30m扩展到102.4m × 102.4m,以与障碍感知保持一致。在不失公平性的前提下,SparseAD以稀疏的端到端方式实现了34.2%的mAP,无需任何密集的BEV表示,这优于大多数之前流行的方法,如HDMapNet、VectorMapNet和MapTR,在性能和训练成本方面都具有明显优势。尽管性能略逊于StreamMapNet,但我们的方法证明了在线建图可以在统一的稀疏方式下完成,无需任何密集的BEV表示,这对于以显著较低成本实现端到端自动驾驶的实际部署具有重要意义。诚然,如何有效利用其他模态(如雷达)的有用信息仍是一个值得进一步探索的任务。我们相信在稀疏方式下仍有很大的探索空间。

运动预测。在Tab. 4a中展示了运动预测的比较结果,其中指标与VIP3D保持一致。SparseAD在所有端到端方法中实现了最佳性能,具有最低的0.83m minADE、1.58m minFDE、18.7%的遗漏率以及最高的0.308 EPA,优势巨大。此外,得益于稀疏查询中心范式的效率和可扩展性,SparseAD可以有效地扩展到更多模态,并从先进的骨干网络中受益,从而进一步显著提高预测性能。

规划。规划的结果呈现在Tab. 4b中。得益于上游感知模块和运动规划器的卓越设计,SparseAD的所有版本在nuScenes验证数据集上都达到了最先进水平。具体来说,与包括UniAD和VAD在内的所有其他方法相比,SparseAD-B实现了最低的平均L2误差和碰撞率,这证明了我们的方法和架构的优越性。与上游任务(包括障碍感知和运动预测)类似,SparseAD通过雷达或更强大的骨干网络进一步提升了性能。

责任编辑:张燕妮 来源: 自动驾驶之心
相关推荐

2023-10-30 09:47:00

自动驾驶技术

2024-04-15 11:40:37

自动驾驶端到端

2023-12-08 09:50:44

自动驾驶机器学习数据

2023-08-24 09:52:44

自动驾驶设计

2024-02-21 09:14:32

端到端自动驾驶

2021-06-01 12:47:51

自动驾驶数据人工智能

2024-01-04 09:35:41

自动驾驶端到端

2023-09-07 10:20:38

自动驾驶技术

2024-03-13 09:39:45

端到端自动驾驶

2023-10-18 09:40:25

自动驾驶技术

2023-08-05 13:08:54

2023-12-18 10:15:30

自动驾驶自然语言

2023-12-11 10:29:11

自动驾驶系统

2023-01-04 09:59:48

自动驾驶技术

2023-10-10 09:31:35

自动驾驶技术

2024-03-15 10:20:14

自动驾驶模型

2024-01-23 13:32:53

地平线自动驾驶

2023-10-13 09:43:36

自动驾驶数据

2024-03-07 10:29:43

端到端自动驾驶

2023-11-02 09:22:13

自动驾驶框架
点赞
收藏

51CTO技术栈公众号