“DiffusionDrive: Truncated Diffusion Model for End-to-End Autonomous Driving”
作者来自华中科技大学和地平线。
论文地址:[2411.15139] DiffusionDrive: Truncated Diffusion Model for End-to-End Autonomous Driving
代码已开源:https://github.com/hustvl/DiffusionDrive
论文提出DiffusionDrive模型,通过截断扩散策略(truncated diffusion policy)和高效级联扩散解码器,解决端到端自动驾驶中传统方法的问题,在多个数据集上验证了其在规划质量、运行效率和模式多样性方面的优势。
研究动机
传统单模态规划的局限性:主流端到端规划器通常回归单模态轨迹,无法考虑驾驶行为的不确定性和多模态特性,难以应对复杂的现实驾驶场景。
基于固定词汇表采样的不足:引入大量固定锚点轨迹离散化动作空间的方法,受限于锚点轨迹的数量和质量,在词汇表外场景易失效,且计算成本高。
传统扩散策略的问题:虽然扩散模型在机器人领域展现出强大的决策能力,但直接应用于端到端自动驾驶时,存在去噪步骤多、计算消耗大,以及生成轨迹重叠严重等问题,无法满足实时性和多模态轨迹生成的需求。
主要贡献
-创新策略:首次将扩散模型引入端到端自动驾驶领域,提出截断扩散策略,解决了传统扩散策略在交通场景中应用时的模式崩溃和计算量过大问题。
-高效解码器:设计了基于Transformer的高效扩散解码器,通过级联方式与条件信息交互,实现更好的轨迹重建。
-性能卓越:DiffusionDrive在NAVSIM数据集上取得88.1 PDMS的成绩,显著超越先前方法,且在NVIDIA 4090上能以45 FPS的速度实时运行。
-轨迹多样合理:定性证明DiffusionDrive能生成更多样、合理的轨迹,在各种具有挑战性的场景中表现出高质量的多模态驾驶动作。
方法
-任务公式化与条件扩散模型基础:端到端自动驾驶任务是根据原始传感器数据预测自车未来轨迹。条件扩散模型通过正向扩散过程给数据样本逐步添加噪声,训练反向过程模型在条件信息指导下从含噪样本恢复原始样本。
-问题探究:将Transfuser转换为条件扩散模型TransfuserDP后发现,其规划质量虽有提升,但存在模式崩溃问题,不同随机噪声去噪后轨迹相似;且去噪步骤多,计算开销大,难以满足实时应用需求。
-截断扩散策略:基于人类驾驶遵循固定模式的观察,提出截断扩散策略。训练时,对通过 K-Means 聚类得到的锚点添加少量高斯噪声构建扩散过程,使模型学习从锚定高斯分布去噪到期望的驾驶策略;推理时,从锚定高斯分布采样含噪轨迹,经截断的去噪过程得到最终预测,且推理过程可根据资源和需求灵活调整采样轨迹数量。
图3主要展示了截断扩散策略(truncated diffusion policy)与普通扩散策略(vanilla diffusion policy)的对比。以说明截断扩散策略的原理。
扩散过程对比:普通扩散策略在整个扩散过程(从i = 1到T)中逐步对数据样本添加噪声。而截断扩散策略对扩散过程进行了截断,只在从i = 1到T_trunc(T_trunc<<T) )的步骤内进行操作,并且仅对锚点轨迹添加一小部分高斯噪声,使锚点轨迹扩散到锚定高斯分布(anchored Gaussian distribution)。
训练过程:在训练阶段,利用截断扩散策略得到锚定高斯分布后,训练扩散模型。该模型利用条件场景上下文(conditional scene context),学习如何从锚定高斯分布重建真实轨迹(ground-truth trajectory)。这意味着模型在训练时,是基于具有先验驾驶模式(以锚点表示)的分布来学习生成准确的驾驶轨迹,而非像普通扩散策略那样从随机的高斯噪声开始学习。
推理过程:在推理时,普通扩散策略从纯高斯噪声开始去噪,逐步生成最终结果。截断扩散策略则从锚定高斯分布中采样得到更好的样本开始去噪过程,同样进行截断的去噪步骤(与训练时的截断步骤对应)。由于从锚定高斯分布采样的样本更接近真实的驾驶轨迹分布,所以能够在较少的去噪步骤内得到合理的结果,提高了推理效率,同时也满足了自动驾驶实时性的要求。
-DiffusionDrive架构:能集成现有感知模块并接受不同传感器输入。扩散解码器先通过可变形空间交叉注意力机制与BEV或PV特征交互,再与感知模块的智能体/地图查询进行交叉注意力操作,经前馈网络和时间步调制层等预测置信度分数和轨迹偏移,通过级联解码器迭代去噪,选择置信度最高的轨迹作为输出。
图4展示了DiffusionDrive的整体架构,分为两个部分进行说明:
图4a:DiffusionDrive整体架构概述:DiffusionDrive具有良好的兼容性,能够集成各种现有的感知模块。在端到端自动驾驶中,不同的感知模块负责从传感器数据中提取关键信息,比如检测目标物体、构建地图等。同时,它可以接受不同类型的传感器输入,像常见的摄像头图像数据、激光雷达点云数据等。这种特性使得DiffusionDrive能灵活适配多种自动驾驶系统配置,充分利用已有技术组件,提高了模型的通用性和实用性。
图4b:扩散解码器工作流程:设计的扩散解码器是DiffusionDrive的核心组件之一。它以从锚定高斯分布中采样得到的含噪轨迹作为输入。在处理过程中,扩散解码器通过级联方式与条件场景上下文进行增强交互。这一过程具体通过一系列操作实现,首先利用可变形空间交叉注意力机制,依据轨迹坐标与鸟瞰图(BEV)或透视视图(PV)特征进行交互,捕捉场景的空间信息;接着,在轨迹特征和感知模块导出的智能体/地图查询之间执行交叉注意力操作,进一步融合场景语义信息;之后,经过前馈网络(FFN)处理,并通过时间步调制层(Timestep Modulation layer)编码扩散时间步信息,再由多层感知器(MLP)预测置信度分数和相对于初始含噪轨迹坐标的偏移量。经过这样多次的信息交互和处理,逐步对含噪轨迹进行去噪,最终生成高质量的最终预测轨迹。这种设计使得扩散解码器能够充分利用场景信息,提升轨迹预测的准确性和多样性 。
实验
-对比实验:
NAVSIM数据集定量评估:在规划导向的NAVSIM数据集navtest分割上,DiffusionDrive 使用对齐的ResNet34骨干网络,取得了88.1的PDMS分数 。与先前的学习方法相比,性能显著提升。相比VADv2,DiffusionDrive的PDMS分数高出 7.2,同时将锚点数量从8192个减少到20个,锚点数量减少了400倍;比遵循VADv2采样范式的HydraMDP的PDMS分数提高了5.1 。与经过额外训练和后处理的Hydra-MDP-V8192-W-EP相比,DiffusionDrive在无后处理的情况下,整体PDMS分数仍高出1.6,且在EP指标上高出3.5 。相较于仅规划模块不同的Transfuser基线,DiffusionDrive的PDMS分数提升了 4.1,在所有子分数上均更优。
nuScenes数据集定量评估:在nuScenes数据集上,DiffusionDrive基于SparseDrive进行实现,使用开放环指标评估。结果显示,DiffusionDrive使SparseDrive的平均L2误差降低了0.04m,与先前的方法相比,实现了最低的L2误差和平均碰撞率 。同时,DiffusionDrive比VAD运行速度快1.8 倍,L2误差降低20.8%,碰撞率降低63.6%。
NAVSIM数据集定性评估:在NAVSIM navtest分割的具有挑战性的场景中,DiffusionDrive 生成的多模态轨迹不仅多样,而且质量高。如在图2a中,其top-1 得分轨迹与真实轨迹高度相似,top-10得分轨迹能进行高质量的换道操作;图 2b中,top-10得分轨迹同样进行了换道,且相邻低得分轨迹能与周围车辆有效交互以避免碰撞。
图2展示了在NAVSIM navtest分割的具有挑战性的场景中Transfuser TransfuserDP和DiffusionDrive的定性比较结果。在使用相同的前视摄像头和激光雷达输入的情况下,DiffusionDrive在最高得分(top-1)轨迹的规划质量方面表现最优。图中以正视图的形式呈现了DiffusionDrive预测的具有代表性的多样轨迹。
图2(a)和2(b)表明,无论是直线行驶还是左转的场景,DiffusionDrive的top-1得分轨迹都与真实轨迹高度吻合。这意味着DiffusionDrive在基础的行驶路径规划上准确性极高,能够精准地预测出符合实际驾驶需求的主要行驶轨迹。
此外,DiffusionDrive的top-10得分轨迹展现出高质量的变道能力。这种能力在多模态的Transfuser DP中并未观察到,而单模态的Transfuser更是无法实现。变道是复杂交通场景中常见且重要的驾驶行为,DiffusionDrive能够在多个得分较高的轨迹中展现出合理的变道规划,说明其不仅能规划出准确的主要轨迹,还能生成多样化且符合实际驾驶逻辑的其他候选轨迹,充分体现了该模型在处理复杂驾驶场景时的优势,能为自动驾驶车辆提供更丰富、更合理的行驶决策选择。
-消融实验:
NAVSIM 数据集消融实验。
扩散解码器设计效果:通过对比不同设计的模型,发现DiffusionDrive的扩散解码器在减少39%参数的同时,能将规划质量显著提高2.4 PDMS。其中,空间交叉注意力对准确规划至关重要,级联机制可有效提升性能。
去噪步骤数量影响:由于DiffusionDrive从合理的起点开始去噪,仅1步就能实现良好的规划质量。增加去噪步骤可进一步提升规划质量,且能根据环境复杂性实现灵活推理。
级联阶段数量影响:增加级联阶段数量可提升规划质量,但在4个阶段时达到饱和,且会增加参数和推理时间。
采样噪声数量影响:10个采样噪声就能达到不错的规划质量,更多的采样噪声可覆盖潜在规划动作空间,提高规划质量。
仅供学习交流参考,感谢阅读!
可微信搜索公众号【AI启智汇】获取更多AI干货分享。