【端到端】华科X地平线:VAD, 基于矢量场景表征的端到端自动驾驶
category
type
status
slug
date
summary
tags
password
icon
github: https://github.com/hustvl/VAD
VAD (Vectorized Autonomous Driving) 是一种端到端的自动驾驶范式,它通过将驾驶场景建模为完全向量化的表示来提高规划的效率和安全性。这种方法避免了传统密集栅格化表示的计算密集型问题,并能捕捉到关键的实例级结构信息。VAD利用矢量化的场景信息隐式和显式地指导规划,通过查询交互和矢量化规划约束来提高安全性。在nuScenes数据集上,VAD实现了超越之前最佳方法的端到端规划性能,同时大幅提高了推理速度。VAD-Base模型将平均碰撞率降低了29.0%,运行速度提高了2.5倍。轻量级变体VAD-Tiny在保持相当的规划性能的同时,推理速度提高了9.3倍。该研究展示了VAD在实际部署自动驾驶系统中的潜力,并提供了开源代码和模型以促进未来研究。
1. 研究背景与动机
1.1 自动驾驶的挑战
自动驾驶技术的发展目标是实现车辆在复杂环境中的安全可靠运行。为了达到这一目标,自动驾驶系统必须准确理解周围环境,并基于环境信息进行有效的轨迹规划。然而,自动驾驶面临的挑战包括但不限于:
- 复杂多变的交通环境:包括各种交通参与者的动态行为、多变的天气条件和不同的道路状况。
- 高精度的环境感知:自动驾驶系统需要精确地识别和理解周围的物体、道路标志和交通信号。
- 实时可靠的决策制定:系统必须能够快速做出决策并规划出安全、高效的行驶轨迹。
1.2 现有方法的局限性
尽管已有多种自动驾驶环境感知和规划方法,但它们通常存在以下局限性:
- 计算密集型:许多现有方法依赖于密集的栅格化场景表示(例如占用网格和语义地图),这些表示在计算上非常密集,难以实时处理。
- 缺乏实例级信息:传统的栅格化表示通常缺乏实例级别的结构信息,这限制了规划的安全性和准确性。
- 后处理步骤繁琐:许多方法需要复杂的后处理步骤来优化规划结果,这增加了计算负担并可能引入额外的错误。
1.3 VAD方法的提出动因
为了克服现有方法的局限性,VAD(Vectorized Scene Representation for Efficient Autonomous Driving)方法被提出。VAD方法的核心动机在于:
- 提升计算效率:通过采用矢量化的场景表示,VAD方法避免了计算密集型的栅格化表示,从而提高了规划的速度和效率。
- 利用实例级信息:VAD方法通过矢量化的代理运动和地图元素,提供了明确的实例级规划约束,有效提升了规划的安全性。
- 简化规划流程:VAD方法省去了繁琐的手设计后处理步骤,通过端到端的学习直接从传感器数据到规划结果,简化了整个规划流程。
VAD方法的提出,旨在实现一种高效、可靠且能够实际部署的自动驾驶轨迹规划范式。通过矢量化的场景表示,VAD不仅提高了规划性能,还显著提升了推理速度,这对于自动驾驶系统的实际应用至关重要。
2. 相关工作
2.1 感知方法
在自动驾驶领域,感知方法负责对车辆周围的环境进行理解和识别。传统的感知方法通常依赖于摄像机、雷达和激光雷达等传感器的数据融合。这些方法在处理大量数据时往往计算成本高昂,并且难以捕捉到场景中的实例级结构信息。
为了提高感知的效率和准确性,研究人员开始探索基于深度学习的方法。例如,DETR3D[47]利用3D查询来采样对应的图像特征,并在无需非极大值抑制的情况下完成检测任务。PETR[31]引入了3D位置编码到图像特征中,并使用检测查询通过注意力机制学习对象特征。此外,鸟瞰图(BEV)表示已经成为感知领域的一种流行方法,如BEVFormer[26]提出的时空注意力机制,显著提高了仅使用摄像机输入的检测性能。
2.2 运动预测方法
运动预测是自动驾驶系统中的另一个关键组成部分,它需要预测交通参与者在未来一段时间内的运动轨迹。传统方法通常将驾驶场景渲染为BEV图像,并采用基于CNN的网络来预测未来的运动。还有一些方法使用矢量化表示,并采用图神经网络(GNN)或Transformer来完成学习和预测任务。
近年来,端到端的运动预测方法开始受到关注,这些方法联合执行感知和运动预测。例如,FIERY[17]和BEVerse[51]使用BEV特征图来预测密集的地图分割,而HDMapNet[25]则将车道线分割转换为矢量化地图。这些方法通过提供丰富的实例级信息,显著提高了运动预测的准确性。
2.3 规划方法
在自动驾驶系统中,规划方法负责根据感知和预测的结果来生成安全、高效的行驶轨迹。然而,传统的规划方法往往依赖于栅格化的表示,这些表示在计算上非常密集,并且缺乏实例级的结构信息。
为了解决这些问题,VAD方法提出了一种基于矢量化场景表示的端到端规划范式。VAD方法通过矢量化的代理运动和地图元素,提供了明确的实例级规划约束,有效提升了规划的安全性。具体来说,VAD方法提出了三个基于矢量化场景表示的实例级规划约束:
- 自车-他车碰撞约束:通过保持自车与其他动态代理之间的安全距离,避免了潜在的碰撞。
- 自车-边界越界约束:确保自车的规划轨迹始终在可行驶区域内,避免越出道路边界。
- 自车-道路方向约束:使自车的规划轨迹与道路前进方向保持一致,提高了行驶的合理性。
通过这些矢量化规划约束,VAD方法在不增加额外计算开销的情况下,显著提高了规划的安全性和准确性。此外,VAD方法还通过简化模型设计,显著提高了推理速度,这对于自动驾驶系统的实际部署至关重要。
3. VAD方法
3.1 矢量化场景表示
VAD方法通过矢量化场景表示,有效地对驾驶场景进行了建模。这种表示方法将场景中的代理运动和地图元素转化为向量形式,提供了丰富的实例级结构信息,从而增强了规划的安全性和准确性。
在VAD方法中,场景被建模为完全向量化的表示,包括边界向量、车道向量、运动向量以及自我向量。这种向量化的场景表示不仅提供了道路结构信息,如交通流向、可行驶边界和车道方向,而且有助于缩小轨迹搜索空间,从而规划出合理的未来轨迹。
具体来说,VAD方法利用以下矢量化元素来表示场景:
- 边界向量:表示道路边界和车道线,为自动驾驶车辆提供可行驶区域的信息。
- 车道向量:提供车道方向信息,帮助车辆保持在正确的车道内行驶。
- 运动向量:表示交通参与者的运动趋势,为碰撞避免提供实例级限制。
此外,VAD方法的矢量化场景表示在计算上更加高效,避免了传统栅格化表示所带来的计算负担。这一点在nuScenes数据集上得到了验证,VAD方法在该数据集上实现了最先进的端到端规划性能,同时大幅提高了推理速度。
3.2 规划约束
VAD方法提出了三个基于矢量化场景表示的实例级规划约束,这些约束在训练阶段对规划轨迹进行正则化,从而提高了规划的安全性和准确性。
- 自车-他车碰撞约束:该约束确保自车与其他动态代理(如其他车辆或行人)保持安全距离。通过计算自车规划轨迹与他车预测轨迹之间的距离,当距离小于预设的阈值时,该约束将产生损失,促使模型调整轨迹以避免潜在的碰撞。
$$ L_{\text{col}} = \sum_{i \in \{X, Y\}} \max(0, \delta_i - d_{i,a}) $$
- 自车-边界越界约束:该约束确保自车的规划轨迹不会越过道路边界。通过计算规划轨迹与道路边界的距离,约束规划轨迹保持在可行驶区域内。
$$ L_{\text{bd}} = \sum_{t} \max(0, d_{t,\text{bd}}) $$
- 自车-道路方向约束:该约束使自车的规划轨迹与道路前进方向保持一致。通过计算自车轨迹的方向与车道方向向量之间的夹角,约束轨迹遵循道路的自然流向。
$$ L_{\text{dir}} = \sum_{t} \left| \theta_{t,\text{lane}} - \theta_{t,\text{ego}} \right| $$
这些约束在训练过程中通过最小化损失函数来实现,从而在不增加额外计算开销的情况下,提高了规划的安全性和准确性。
3.3 端到端学习框架
VAD方法采用了端到端的学习框架,该框架从原始传感器数据直接输出规划轨迹,省去了繁琐的手设计后处理步骤。这一框架的优势在于能够直接利用传感器数据中的丰富信息,避免了因中间表示转换而造成的信息损失。
VAD的端到端学习框架包括以下关键组件:
- 特征提取器:从多帧和多视角图像中提取特征。
- BEV编码器:将图像特征投影到鸟瞰图(BEV)特征空间。
- 矢量化场景学习:通过agent查询和map查询学习矢量化场景表示,包括矢量化地图和矢量化运动。
- 规划头:基于学习到的场景表示和自车状态,输出规划轨迹。
VAD方法的端到端学习框架不仅提高了规划性能,而且通过简化模型设计,显著提高了推理速度。这一框架的成功实施,展示了VAD方法在自动驾驶轨迹规划领域的潜力和优势。
4. 实验
4.1 nuScenes数据集
nuScenes数据集是一个大规模的自动驾驶数据集,包含了从多个城市收集的1000个场景,每个场景持续20秒,涵盖了1.4百万个3D边界框标注。此数据集因其多样性和复杂性,成为了评估自动驾驶算法性能的重要平台。
数据集特点
- 多城市场景:数据集包含了波士顿和新加坡两个城市的场景,反映了不同文化背景下的驾驶行为和交通规则。
- 多传感器数据:每个场景都配备了1个激光雷达、5个毫米波雷达、6个摄像头、IMU和GPS,为多模态感知提供了丰富的数据源。
- 详细的标注:数据集中的每个场景都有详细的3D边界框标注,包括23种不同的物体类别,如车辆、行人、自行车等。
4.2 性能评估指标
为了全面评估VAD方法的性能,我们采用了以下指标进行评估:
- 平均碰撞率:衡量规划轨迹与其他代理发生碰撞的频率。
- 平均计划位移误差:衡量规划轨迹与实际行驶轨迹之间的平均距离误差。
- 推理速度:衡量模型处理单个场景所需的时间,反映了算法的实时性。
4.3 实验结果与分析
碰撞率和计划位移误差
在nuScenes数据集上,VAD方法的基线模型(VAD-Base)平均碰撞率降低了29.0%,从0.31%降至0.22%,同时将平均计划位移误差从1.03米降低到0.72米,降幅达30.1%。
推理速度
VAD方法在推理速度上也有显著提升,VAD-Base模型的推理速度为1.8 FPS,是之前最佳方法的2.5倍。此外,轻量级变体VAD-Tiny在保持相当的规划性能的同时,推理速度可达16.8 FPS,是之前最佳方法的9.3倍。
损失函数分析
VAD方法的损失函数由三部分组成:碰撞损失($L_{\text{col}}$)、边界越界损失($L_{\text{bd}}$)和道路方向损失($L_{\text{dir}}$)。实验结果表明,通过最小化这些损失,VAD方法能够有效地提升规划的安全性和准确性。
Ablation Study
为了验证VAD方法中不同组件的有效性,我们进行了消融研究。结果显示,矢量化场景表示和实例级规划约束对于提升规划性能至关重要。此外,端到端学习框架的简化也有助于提高推理速度。
结果讨论
VAD方法在nuScenes数据集上的表现证明了其在自动驾驶轨迹规划领域的潜力。通过矢量化场景表示和实例级规划约束,VAD方法不仅提升了规划的安全性和准确性,还显著提高了推理速度,这对于自动驾驶系统的实际部署至关重要。未来的工作将探索VAD方法在更多场景和更复杂交通情况下的应用,以及进一步优化模型结构以提高性能。
5. 讨论与未来工作
5.1 VAD方法的优势
VAD方法在自动驾驶轨迹规划领域展现出显著的优势,这些优势主要体现在以下几个方面:
- 计算效率:VAD方法通过矢量化的场景表示避免了传统栅格化表示所带来的巨大计算负担。在nuScenes数据集上的实验结果表明,VAD-Base模型的平均推理速度为1.8 FPS,是之前最佳方法的2.5倍,而轻量级变体VAD-Tiny的推理速度可达16.8 FPS,是之前最佳方法的9.3倍。这一速度的提升对于自动驾驶系统的实际部署至关重要,因为它允许系统在动态变化的环境中实时做出决策。
- 安全性提升:VAD方法通过引入实例级规划约束显著提高了规划的安全性。这些约束包括自车-他车碰撞约束、自车-边界越界约束和自车-道路方向约束,它们确保了自车在规划轨迹时能够避免与其他代理发生碰撞,保持在可行驶区域内,并遵循道路的自然流向。实验结果表明,VAD-Base模型的平均碰撞率降低了29.0%,从0.31%降至0.22%,同时将平均计划位移误差从1.03米降低到0.72米,降幅达30.1%。
- 简化的规划流程:VAD方法的端到端学习框架省去了繁琐的手设计后处理步骤,直接从传感器数据到规划结果。这一简化的规划流程不仅提高了规划的效率,还减少了因中间表示转换而造成的信息损失。
5.2 多模态运动预测的探讨
尽管VAD方法在运动预测方面已经取得了显著的性能,但未来的工作可以进一步探索多模态运动预测的可能性。多模态运动预测旨在捕捉交通参与者在不同情境下的各种可能运动轨迹,这对于提高自动驾驶系统在复杂环境中的适应性和鲁棒性至关重要。
- 融合多源信息:未来的研究可以考虑融合多源信息,如车辆的传感器数据、交通信号、天气条件等,以提高运动预测的准确性和鲁棒性。例如,通过引入天气条件信息,系统可以更好地预测行人和车辆在雨雪天气中的行为变化。
- 增强模型的可解释性:虽然深度学习模型在运动预测方面取得了成功,但它们的“黑箱”特性限制了模型的可解释性。未来的工作可以探索如何提高模型的可解释性,例如通过引入注意力机制来解释模型的预测决策过程。
5.3 整合更多交通信息的可能性
VAD方法目前主要依赖于车辆的传感器数据和矢量化的场景表示。未来的工作可以考虑整合更多的交通信息,以进一步提高规划的准确性和鲁棒性。
- 交通规则和习惯:不同地区的交通规则和驾驶习惯可能有所不同。未来的工作可以探索如何将这些规则和习惯整合到VAD方法中,使系统能够更好地适应不同地区的交通环境。
- 实时交通信息:实时交通信息,如路况、交通事故和施工信息,对于自动驾驶系统的决策至关重要。未来的工作可以探索如何有效地融合这些实时信息,以提高系统的适应性和鲁棒性。
- 车联网(V2X)技术:车联网技术允许车辆与其他车辆、基础设施和行人进行通信,共享位置、速度和意图信息。未来的工作可以探索如何利用V2X技术来提高VAD方法的性能,特别是在复杂交通场景中的协同决策和规划。
6. 总结
本章节旨在对VAD(Vectorized Scene Representation for Efficient Autonomous Driving)方法进行全面的解读和总结。VAD方法针对自动驾驶领域中的轨迹规划问题,提出了一种创新的矢量化场景表示范式,有效克服了现有方法在计算效率、安全性和规划流程上的局限性。
6.1 核心贡献
VAD方法的核心贡献在于其矢量化的场景表示和实例级规划约束,这使得VAD在nuScenes数据集上实现了突破性的端到端规划性能。VAD方法通过以下关键技术和策略,实现了自动驾驶轨迹规划的高效性和安全性:
- 矢量化场景表示:VAD方法通过将场景中的代理运动和地图元素转化为向量形式,提供了丰富的实例级结构信息,从而增强了规划的安全性和准确性。
- 实例级规划约束:VAD方法提出了三个基于矢量化场景表示的实例级规划约束,有效提升了规划的安全性。
- 端到端学习框架:VAD方法采用端到端的学习框架,直接从传感器数据到规划结果,简化了规划流程,提高了推理速度。
6.2 实验验证
在nuScenes数据集上的实验结果表明,VAD方法在平均碰撞率和平均计划位移误差这两个关键指标上,均优于现有的最佳方法。具体来说,VAD-Base模型将平均碰撞率降低了29.0%,并将平均计划位移误差降低了30.1%。此外,VAD方法在推理速度上的提升尤为显著,VAD-Base模型的推理速度为1.8 FPS,是之前最佳方法的2.5倍,而轻量级变体VAD-Tiny的推理速度可达16.8 FPS,是之前最佳方法的9.3倍。
6.3 未来展望
尽管VAD方法已经展现出显著的优势和潜力,但仍有进一步改进和扩展的空间。未来的工作可以从以下几个方向进行探索:
- 多模态运动预测:探索融合多源信息,如车辆的传感器数据、交通信号、天气条件等,以提高运动预测的准确性和鲁棒性。
- 增强模型的可解释性:提高模型的可解释性,例如通过引入注意力机制来解释模型的预测决策过程。
- 整合更多交通信息:考虑整合更多的交通信息,如交通规则和习惯、实时交通信息、车联网(V2X)技术,以进一步提高规划的准确性和鲁棒性。
综上所述,VAD方法为自动驾驶轨迹规划领域提供了一种新的高效、可靠且实际可行的解决方案。通过矢量化的场景表示和实例级规划约束,VAD方法不仅提高了规划的安全性和准确性,还显著提高了推理速度,这对于自动驾驶系统的实际部署至关重要。未来的研究和开发将进一步扩展VAD方法的应用范围,并探索其在更复杂交通场景中的性能表现。
上一篇
动手学控制理论
下一篇
端到端-理论与实战视频课程
Loading...