ADAS Laboratory
点击上方蓝字关注 智驾实验室
扫描上方二维码,加入【 智驾实验室 】交流群,
获取更多内容和资料
直接从原始传感器产生规划结果一直是自动驾驶长期追求的解决方案,并且最近受到了越来越多的关注。大多数现有的端到端自动驾驶方法将这个问题分解为感知、运动预测和规划。然而,作者认为传统的逐步式 Pipeline 仍然不能全面模拟整个交通演变过程,例如,未来自车辆与其他交通参与者之间的交互以及结构化轨迹先验。
在本文中,作者探讨了一种新的端到端自动驾驶范式,其关键在于预测给定过去场景时自车辆和周围环境如何演变。作者提出了GenAD,一个生成式框架,将自动驾驶转化为一个生成式建模问题。作者提出了一种以实例为中心的场景标记器,首先将周围场景转换为地图感知的实例标记。然后,作者使用变分自编码器在结构化潜在空间中学习未来轨迹分布,用于轨迹先验建模。作者进一步采用时间模型来在潜在空间中捕捉代理和自车运动,以生成更有效的未来轨迹。GenAD最终通过在学习的结构化潜在空间中根据实例标记条件采样分布,并使用学习到的时间模型生成未来,同时进行运动预测和规划。
在广泛使用的nuScenes基准上的大量实验表明,所提出的GenAD在以视觉为中心的端到端自动驾驶方面取得了最先进的性能,并且具有高效率。
1 Introduction
以视觉为中心的自动驾驶近年来因其实用经济性而被广泛研究。虽然研究行人已经在包括3D目标检测、地图分割和3D语义占用预测在内的多项任务中推进了以视觉为中心的自动驾驶的极限,但最近在以视觉为中心的端到端自动驾驶方面的进展揭示了直接从原始传感器生成规划结果的潜在而优雅的途径。
大多数现有的端到端自动驾驶模型由几个模块组成,并遵循感知、运动预测和规划的流程。例如,UniAD 进一步逐步执行地图感知、检测、跟踪、运动预测、占用预测和规划模块,以提高系统的鲁棒性。还观察到,使用规划目标可以提升中间任务的性能。然而,现有流水线的预测和规划的串行设计忽视了自动驾驶车辆与其他交通参与者之间可能发生的未来交互。
作者认为这种类型的交互对于准确规划至关重要。例如,自动驾驶车辆的车道变换会影响后车的行为,进而影响自动驾驶车辆自身的规划。这种高阶交互在目前的规划之前的运动预测设计中无法有效建模。此外,未来轨迹具有高度的结构性,并共享一个共同的先验(例如,大多数轨迹是连续且直线的)。然而,大多数现有方法未能考虑这种结构性的先验,导致预测和规划不准确。
在本文中,作者提出了一种生成端到端自动驾驶(GenAD)框架(如图1所示),将自动驾驶建模为轨迹生成问题,以充分发挥端到端方法的优势。作者提出了一个场景标记器来获取以实例为中心的场景表示,这些表示关注实例同时整合地图信息。
为实现这一点,作者使用一个 Backbone 网络提取每个周围摄像头的图像特征,然后将它们转换到3D鸟瞰视图(BEV)空间。作者进一步使用交叉注意力来精化来自BEV特征的高层地图和代理标记。然后,作者添加一个自车标记,并使用自车代理的注意力来捕捉它们的高阶交互。作者进一步通过交叉注意力注入地图信息以获得地图感知的实例标记。
为了建模未来轨迹的结构先验,作者学习了一个变分自编码器,将 GT 轨迹映射到高斯分布,考虑到运动预测和驾驶规划的不确定性本质。然后,作者使用一个简单而有效的门控循环单元(GRU)执行自回归以在潜在结构空间中建模实例移动。在推理过程中,作者在以实例为中心的场景表示条件下从学习到的分布中采样,从而可以预测不同的可能未来。
GenAD可以同时使用统一的未来轨迹生成模型进行运动预测和规划。作者在广泛使用的nuScenes基准上进行了大量实验,以评估所提出的GenAD框架的性能。基于生成建模,GenAD在高效性方面取得了基于视觉的规划性能的最新成果。
2 Related Work
感知。 感知是自动驾驶的基本步骤,旨在从原始传感器输入中提取有意义的信息。尽管基于激光雷达的方法表现出色,但由于RGB摄像头的低成本,以视觉为中心的方法已成为一种具有竞争力的替代方案。配备了大型2D图像 Backbone 网络,以视觉为中心的方法在主要的感知任务中表现出巨大的潜力,包括3D目标检测,高清地图重建,以及3D语义占用预测。
为了准确完成这些3D任务,关键步骤是将图像特征转换为3D空间。一项工作是为图像特征预测明确的深度,然后使用相机参数将它们投影到3D空间。其他方法在3D空间中初始化 Query ,并利用可变形交叉注意力从2D图像中自适应地聚合信息。一些研究进一步设计了更好的位置嵌入策略,3D表示或任务头,以提高感知性能或效率。
在本文中,作者采用了传统的简单设计用于3D感知,并专注于运动预测和规划。
预测。 对交通参与者的准确运动预测是自车辆后续运动规划的关键。传统方法使用真实的代理历史和 HD 地图信息作为输入,并专注于预测未来代理轨迹。一种直接的方法是在 BEV 图像上绘制代理路径和 HD 地图,并使用卷积神经网络处理它们并输出运动预测结果。进一步的方法使用向量或标记来表示单独的代理或地图元素。然后,它们利用图神经网络和 Transformer 的推理能力来推理未来的运动,同时考虑代理与地图元素之间的交互。
硬件能力的提升促进了端到端运动预测方法的出现,这些方法联合执行感知和预测,以摆脱离线 HD 地图。尽管挑战非常艰巨,但最近的端到端方法在这种更实际的设置中已经展示了有希望的性能。它们通常采用注意力机制来整合代理和地图信息,并利用时间网络(例如,门控循环单元)来预测未来状态。然而,大多数现有方法直接从潜在特征解码轨迹,并忽略了真实轨迹的结构性质(例如,它们大多数是直线)。与之不同,作者从真实轨迹中学习一个变分自编码器,以在潜在结构空间中建模轨迹先验,并在该空间中采样实例进行推理。
规划。 规划是自动驾驶第一阶段最终的目标。尽管基于规则的规划器发展成熟,基于学习的规划器因其能够从大规模驾驶数据中受益并兼容端到端自动驾驶方法而受到越来越多的关注。大多数现有的端到端规划方法遵循一个感知、预测和规划的流程。
例如,ST-P3逐步使用地图感知、鸟瞰图占用预测和轨迹规划模块从周围摄像头获取未来自车运动。UniAD进一步扩展了ST-P3,增加了检测、跟踪和运动预测模块以提高系统的鲁棒性。VAD简化了UniAD,采用向量化的场景表示,仅为端到端驾驶提供地图、运动和规划模块,以更高的效率实现了最先进的规划性能。然而,预测和规划的串行设计忽略了未来自车运动对代理运动预测的影响。在运动预测和规划的不确定性自然特性方面也缺乏建模。
为了解决这个问题,GenAD在一个生成式框架中建模自动驾驶,并在学习的概率潜在空间中同时生成自车辆和其他代理的未来轨迹。
3 Proposed Approach
本节展示了作者的基于视觉的端到端自动驾驶生成框架,如图2所示。
- 首先,作者引入了一种以实例为中心的场景表示,它融合了高阶地图-自车-代理互动,以实现全面且紧凑的场景描述(第3.1节)。
- 接着,详细阐述了学习潜在嵌入空间以建模真实轨迹作为先验(第3.2节),并在该学习的潜在空间中生成未来的运动(第3.3节)。
- 最后,作者详细介绍了生成端到端自动驾驶(GenAD)框架的训练和推理(第3.4节)。
Instance-Centric Scene Representation
自动驾驶端到端的目标可以表述为:在给定当前和过去帧传感器输入以及轨迹的情况下,为自车辆获取一个计划好的帧未来轨迹。
其中 表示从第 帧开始的 帧轨迹, 表示第 帧的航点,而 表示第 帧的传感器输入。
实现端到端自动驾驶的第一步是对传感器输入进行感知,以获得对周围场景的高级描述。这些描述通常包括语义地图和实例边界框。
为了达到这个目的,作者遵循一个传统的以视觉为中心的感知流程,首先提取鸟瞰图(BEV)特征 ,然后在此基础上改进地图和边界框特征。
图像到鸟瞰图(BEV) 。作者基本遵循BEVFormer的方法来获取鸟瞰图(BEV)特征。具体来说,作者使用卷积神经网络和特征金字塔网络从相机输入 中获取多尺度图像特征 。然后,作者将 的BEV Token 初始化为 Query ,并使用可变形交叉注意力来从多尺度图像特征 中转移信息:
其中 表示由交错的自车关注和可变形交叉关注层组成的可变形注意力块,分别使用 , 和 作为 Query 、Key和Value。然后作者将来自过去 帧的鸟瞰图(BEV)特征对齐到当前的坐标系统中,并将它们连接起来作为最终的鸟瞰图特征 。
鸟瞰图到地图。 由于在鸟瞰图空间中语义地图元素通常是稀疏的,作者遵循类似的概念,并使用地图标记 来表示语义地图。每个地图标记 可以通过一个地图解码器 解码成鸟瞰图空间中的一组点,这些点代表了一类地图元素及其对应的位置。
跟随 VAD,作者考虑了三种类型的地图元素(即车道分隔线、道路边界和行人横道)。作者使用全局交叉注意力机制来更新从鸟瞰图标记 中学习初始化的 Query 。
其中 表示由交替自注意力层和交叉注意力层组成的交叉注意力块,分别使用 , , 和 作为 Query 、Key和Value。
鸟瞰图到智能体。 类似于语义地图的表示方法,作者采用一组智能体标记 来表示周围环境中每个实例的3D位置。作者使用可变形交叉注意力机制从BEV标记 获取更新后的智能体标记 :
其中 是作为初始化的可学习标记。
在获得了代理标识符 之后,作者使用一个3D目标检测 Head 来解码每个代理标识符 中的位置、方向和类别信息。
以实例为中心的场景表示。 由于预测和规划主要关注代理实例和自车辆实例,作者提出了一种以实例为中心的场景表示方法,以全面高效地表示自动驾驶场景。首先,作者在学习的代理标记集 中添加一个自车标记 ,以构建一个实例标记集合 。
现有方法通常以串行方式执行运动预测和规划,这忽略了未来自身运动对其他代理的影响。例如,自身车辆的变道可能会影响后车的行为,使得运动预测结果不准确。
与之不同,作者通过对实例标记执行自注意力来启用自身车辆与其他代理之间的高阶交互:
其中 表示由使用 , , 和 分别作为 Query 、Key和Value的自注意力层组成的自注意力模块。
此外,为了进行准确的预测和规划,代理和自车辆都需要了解语义地图信息。因此,作者采用更新后的实例标记和学习到的地图标记之间的跨注意力机制,以获得以实例为中心的、对地图敏感的场景表示:
学习的实例标记 结合了高阶的代理-自车交互,并意识到所学习的语义地图,这些地图紧凑但包含了执行运动预测和轨迹规划所需的所有地图和实例信息。
Trajectory Prior Modeling
作者发现其他代理的运动预测目标和自车辆的规划目标共享相同的输出空间,并且在本质上是一样的。它们都旨在给定语义地图和其他代理的交互情况下,生成关注实例的高质量真实轨迹。
因此,所提出的GenAD的目标可以表述为:给定地图感知的以实例为中心的场景表示,推理未来的轨迹。
与现有直接使用简单解码器输出轨迹的方法不同,作者将轨迹生成视为一个问题 ,考虑到其具有不确定性。
自车辆和其他代理的轨迹具有高度的结构化(例如,连续性)且遵循一定的模式。例如,大多数轨迹是直线,因为车辆以恒定速度行驶,而有些则是当车辆左右转弯时具有近常数曲率的曲线。只有在非常罕见的情况下,轨迹才会呈现之字形。考虑到这一点,作者采用了变分自编码器(VAE)架构来学习潜在空间以建模这种轨迹先验。
具体来说,使用一个真实轨迹编码器来建模,它将未来轨迹映射到潜在空间上的对角高斯分布。编码器输出两个向量和,分别表示高斯分布的均值和方差:
其中 表示均值为 、标准差为 的高斯分布。
学习到的分布 包含了真实轨迹的先验信息,这可以被用来提高交通代理和自车辆在运动预测和规划方面的真实性。
Latent Future Trajectory Generation
在获得了未来轨迹的潜在分布作为先验之后,作者需要明确地将它们从潜在轨迹空间 中解码出来。
尽管一种直接的方法是直接使用基于MLP的解码器在BEV空间中输出轨迹点来建模,但这未能模拟交通代理和自车辆的时间演变。
为了考虑不同时间戳实例之间的时间关系,作者将联合分布分解如下:
作者从分布中采样一个向量作为当前时间戳的潜在状态。不同于一次性解码整个轨迹,作者采用一个基于简单MLP的解码器从潜在空间中解码一个航点,即作者实例化为。
作者接着采用一个门控循环单元(GRU)作为未来轨迹生成器,来模拟实例的时间演化。
具体来说,GRU模型 以当前的潜在表示 作为输入,并将其转换成下一个状态 。然后,可以使用航点解码器解码在 时刻的航点 ,即 ,也就是说,作者用 来建模 。
与直接输出整个轨迹的单个解码器相比,航点解码器执行的任务更简单,它只解码BEV空间中的一个位置,而GRU模块在潜在空间中建模智能体的移动。
因此,在考虑这种学习到的结构化潜在空间中的先验知识时,生成的轨迹更加真实和可信。作者在图3中展示了所提出的轨迹先验建模和潜在未来轨迹生成方法。
Generative End-to-End Autonomous Driving
在本小节中,作者介绍了所提出的以视觉为中心的端到端自动驾驶GenAD框架的整体架构。给定周边摄像头信号 作为输入,作者首先使用图像 Backbone 网络提取多尺度图像特征 ,然后使用可变形注意力将它们转换到BEV空间。作者将过去 帧的BEV特征与当前的自车坐标系对齐,以获得最终的BEV特征 。作者对一组地图标记 和代理标记 分别执行全局交叉注意力和可变形注意力进行细化。
为了建模交通代理与自车辆之间的高阶交互,作者将代理标记与自车标记相结合,并在它们之间执行自注意力以构建一组实例标记 。作者还使用交叉注意力将语义地图信息注入到实例标记 中,以促进进一步的预测和规划。
由于真实轨迹高度结构化,作者学习了一个VAE模块来建模轨迹先验,并采用生成框架进行运动预测和规划。
- 作者学习了一个编码器 ,将真实轨迹映射到结构化空间 作为高斯分布。
- 然后,作者使用基于GRU的未来轨迹生成器 来在潜在空间 中建模实例的时间演化,并使用基于简单MLP的解码器 从潜在表示中解码航点。
- 最终,作者可以通过整合每个时间戳的解码航点来重构交通代理和自车辆的轨迹 和 。
在训练过程中,作者还使用了一个类别解码器 来预测每个代理的类别 。为了学习未来轨迹编码器 、未来轨迹生成器 、航点解码器 和类别解码器 ,作者遵循VAD 对重构的轨迹和交通代理及自车辆的真实轨迹施加轨迹损失:
其中 表示L1范数, 是智能体的数量, 代表用于约束预测智能体类别的Focal Loss。 表示轨迹损失,包括L1差异、自车智能体碰撞约束、自车边界越界约束以及自车车道方向约束。 和 分别代表所有智能体的预测类别和真实类别。
为了从实例 tokens 推理交通代理和自车辆的未来轨迹,作者使用一个实例编码器 将每个实例 token 映射到潜在空间 。编码器 类似地输出一个均值向量 和方差向量 以参数化一个对角高斯分布:
通过学习到的潜在轨迹空间来模拟真实的轨迹先验,运动预测和规划可以被统一并表述为一个实例分布 与 GT 分布 之间的分布匹配问题。
作者采用Kullback-Leibler散度损失来强制分布匹配:
其中 表示Kullback-Leibler散度。
另外,作者使用了两个辅助任务来训练所提出的GenAD模型:地图分割和3D目标检测。作者在地图标记上使用一个地图解码器,在智能体标记上使用一个目标解码器,以获得预测的地图和3D目标检测结果。
作者遵循VAD的任务解码器设计,并采用双边匹配进行真值匹配。然后,作者对它们施加语义地图损失和3D目标检测损失来训练网络。
GenAD框架的整体训练目标可以表述为:
其中 , 和 是平衡因子。所提出的GenAD可以有效地以端到端的方式进行训练。对于推理,作者丢弃未来的轨迹编码器 并根据实例分布 对潜在状态进行采样,作为轨迹生成器 和航点解码器 的输入。
GenAD模型将端到端的自动驾驶视为一个生成问题,在结构化的潜在空间中进行未来预测和规划,这考虑了真实轨迹的先验知识,以生成高质量的轨迹预测和规划。
4 Experiments
Datasets
作者在广泛采用的nuScenes 数据集上进行了大量实验,以评估所提出的自动驾驶GenAD框架。nuScenes数据集由1000个驾驶场景组成,每个场景提供20秒的RGB和激光雷达视频。 自车辆配备了6个具有水平视场角的周围摄像头和一个32线激光雷达传感器。nuScenes为关键帧提供语义地图和3D目标检测标注,频率为2Hz。它包含了来自23个类别的1.4M个3D边界框。作者按照官方说明,将数据集划分为700、150和150个场景用于训练、验证和测试。
Evaluation Metrics
遵循现有的端到端自动驾驶方法,作者使用L2位移误差和碰撞率来衡量规划结果的质量。L2位移误差衡量的是计划轨迹与真实轨迹之间的L2距离。碰撞率衡量的是自动驾驶车辆在沿着计划轨迹行驶时与其他交通参与者发生碰撞的频率。默认情况下,作者将2秒的历史数据(即5帧)作为输入,并在1秒、2秒和3秒的未来时间内评估规划性能。
Implementation Details
作者采用了ResNet50 作为基础网络来提取图像特征。输入的图像分辨率为640 × 360,并使用200 × 200的鸟瞰图(BEV)表示来感知周围场景。
为了进行公平的比较,作者基本上使用了与VAD-tiny相同的超参数。作者将BEV标记、地图标记和代理标记的数量分别固定为100 × 100、100和300。每个地图标记包含20个点标记,以在BEV空间中表示一个地图点。作者将每个BEV、点、代理、自车和实例标记的隐藏维度设置为256。作者使用了一个512维的潜在空间来建模轨迹先验,并将GRU的隐藏维度也设置为512。作者在每个注意力块中使用了3层。
在训练过程中,作者将损失平衡因子设置为1,并使用AdamW 优化器和余弦学习率调度器。作者将初始学习率设置为,权重衰减为0.01。默认情况下,作者使用8个NVIDIA RTX 3090 GPU训练了GenAD模型60个周期,并采用了总批处理大小为8。
Results and Analysis
主要结果。 作者在表1中比较了GenAD与最先进的端到端自动驾驶方法。作者使用粗体和下划线数字分别代表最佳和次佳结果。作者看到,GenAD在所有方法中取得了最佳的L2误差,并且具有高效的推理速度。尽管UniAD 在碰撞率方面优于GenAD,但它训练时采用了额外的监督信号,如跟踪和占用信息,这已被证明对避免碰撞至关重要。然而,这些3D空间中的标签难以标注,使得使用较少标签来实现具有竞争力的性能并不容易。GenAD也比UniAD更高效,显示出性能与速度之间的强大权衡。
感知和预测性能。 作者进一步评估了所提出的GenAD模型的感知和预测性能,并与具有相似模型大小的VAD-tiny 进行了比较,结果如表2所示。
作者使用平均精度(mAP)来衡量3D目标检测性能,并使用mAP@0.5、mAP@1.0和mAP@1.5来评估预测图的品质。对于运动预测,作者报告了汽车和行人的端到端预测准确性(EPA),这对于端到端方法来说是一个更公平的指标,以避免错误检测的代理的影响。对于运动规划,作者报告了在1秒、2秒和3秒内的平均L2误差和碰撞率(CR)。
作者观察到,GenAD在所有任务上的表现都优于VAD,且具有相似的推理速度。具体来说,GenAD通过考虑自车辆对其他代理的影响,实现了更优的运动预测性能。同时,GenAD在3D检测和地图分割方面也表现出更优越的性能,展现了感知、预测和规划之间更好的连贯性。
实例中心场景表示的效果。 作者进行了一项消融研究,以分析实例中心场景表示的有效性,如表3所示。
首先,作者将所提出的GenAD方法中的自车到代理交互添加到VAD-tiny中,观察到L2误差和碰撞率都有显著改善。作者还通过 Mask 自注意力矩阵来移除作者GenAD模型中的自车到代理交互,以此来剖析其效果。作者发现,碰撞率性能大幅下降。作者认为这是因为在不考虑 自车与其他代理之间的高阶交互的情况下,学习轨迹的真实潜在分布变得非常困难。
自动驾驶生成框架的影响。 作者还分析了所提出的未来轨迹生成模型的设计,该模型由两个模块组成:轨迹先验建模(TPM)和潜在未来轨迹生成(LFTG)。当单独使用TPM时,作者直接从潜在空间解码整个轨迹。仅使用LFTG模块时,作者使用门控循环单元根据以实例为中心的场景表示逐渐生成航点。作者看到这两个模块都是有效的,并提高了规划性能。将这两个模块结合使用,进一步大幅提高了性能。这证实了将联合分布因式分解如(8)式所示,以释放潜在轨迹先验建模的充分潜力的重要性。
可视化。 作者展示了与具有相似模型大小的VAD-tiny 进行比较的GenAD模型的可视化,如图4所示。作者在单张图像上对地图分割、检测、运动预测和规划结果进行可视化,并提供周围摄像头输入作为参考。
作者观察到,在各种场景中,包括直行、超车和转弯,GenAD产生的轨迹都比VAD更好、更安全。在涉及复杂交通场景中多个代理人的挑战性情境下,GenAD仍然展现出良好的结果,而VAD则无法安全通过。
5 Conclusion
在本文中,作者提出了一种生成式的端到端自动驾驶(GenAD)框架,以改善从视觉输入中的规划。作者研究了自动驾驶中感知、预测和规划的常规串行设计,并提出了一个生成式框架,以实现高级自主体交互并生成具有学习到的结构先验的更准确的未来轨迹。
作者在广泛采用的nuScenes数据集上进行了大量实验,并展示了所提出的GenAD的领先规划性能。将来,探索其他生成建模方法,例如生成对抗网络或扩散模型,用于端到端自动驾驶将非常有趣。
参考
[1].GenAD: Generative End-to-End Autonomous Driving.
扫描下方二维码,添加 AI驾驶员
获取更多的 大模型 与 多模态 等信息