ADAS Laboratory
最近,扩散模型作为一种强大的生成技术,在机器人策略学习中脱颖而出,能够模拟多模态动作分布。利用其在端到端自动驾驶方面的能力是一个有前景的方向。
然而,机器人扩散策略中的众多去噪步骤以及交通场景的动态性和开放性,对实时生成多样化驾驶动作构成了巨大的挑战。
为了应对这些挑战,作者提出了一种新颖的截断扩散策略,该策略结合了先验多模态 Anchor 点,并截断扩散时间表,使模型能够从 Anchor 定高斯分布学习去噪,最终到达多模态驾驶动作分布。
此外,作者还设计了一种高效的级联扩散解码器,以增强与条件场景上下文的交互。所提出的模型DiffusionDrive,与基础扩散策略相比,去噪步骤减少了10倍,仅需2步就能实现优越的多样性和质量。
在规划导向的NAV-Sim数据集上,配备对齐的ResNet-34 Backbone ,DiffusionDrive实现了88.1 PDMS,无需附加功能,创造了新的记录,同时在NVIDIA 4090上以实时速度45 FPS运行。
在具有挑战性的场景上的定性结果进一步证实,DiffusionDrive可以健壮地生成多样化的可行驾驶动作。
1 Introduction
近年来,由于感知模型(检测,跟踪,在线地图,等)的进步,端到端自动驾驶已经引起了广泛关注。这种数据驱动的方法直接从原始传感器输入中学习驾驶策略,为传统基于规则的运动规划提供了可扩展和强大的替代方案。然而,这种方法在复杂真实世界驾驶场景中的泛化能力往往较差。
为了有效地学习数据,主流端到端规划器(例如,Transfuser [6],UniAD [13],VAD [17])通常从自车的 Query 中回归单一模式轨迹,如图1(a)所示。然而,这种范式并未考虑驾驶行为固有的不确定性和多模式性质。最近,VADv2 [17]引入了一个大的固定词汇量(4096 Anchor 点)的 Anchor 点轨迹(4096 anchors),以离散化连续的动作空间并捕获更广泛的驾驶行为,如图1(b)所示。然而,这种大的固定词汇范式从根本上受到 Anchor 点轨迹的数量和质量的限制,在超出词汇范围的场景中往往失败。此外,管理大量 Anchor 点对于实时应用也提出了巨大的计算挑战。与其离散动作空间,扩散模型 [5] 已被证明在机器人领域是一种强大的生成决策策略,可以通过迭代去噪过程直接从高斯分布中采样多模式物理上可行的动作。
欢迎加入自动驾驶实战群
这激励作者将扩散模型在机器人领域的成功推广到端到端的自动驾驶。作者将标准的机器人扩散策略应用于知名的单模式回归方法,Transfuser [6],并提出了一种变体,Transfuser DP,用条件扩散模型 [28] 替换确定性的MLP回归 Head 。尽管Transfuser DP改进了规划性能,但出现了两个主要问题:
1) 原始DDIM扩散策略中的许多20个去噪步骤在推理过程中引入了沉重的计算消耗,如表2所示,这阻碍了自动驾驶的实时应用。
2) 从不同高斯噪声中采样到的轨迹严重重叠在一起,如图2所示。这强调了在动态和开放世界交通场景驯服扩散模型的非平凡挑战。
与普通的扩散策略不同,人类驾驶员遵循他们根据实时交通状况动态调整的既定驾驶模式。这一洞见促使作者将这些先验驾驶模式嵌入扩散策略,通过将高斯分布划分为多个围绕先验 Anchor 点的多个子高斯分布,称为 Anchor 定高斯分布。如图3所示,通过截断扩散时间表,在先验 Anchor 点周围引入一小部分高斯噪声。得益于扩散模型的多模分布表达能力,所提出的截断扩散策略在不需要大量固定 Anchor 点的情况下,有效地覆盖了潜在的动作空间,就像VADv2一样。通过从 Anchor 定高斯分布中使用更合理的初始噪声样本,作者可以减少去噪过程所需的步骤,从20步减少到仅仅2步——这是一个显著的速度提升,满足了自动驾驶的实时需求。
为了增强与条件场景上下文的交互,作者提出了一种高效的基于 Transformer 的扩散解码器,该解码器不仅与感知模块的结构性 Query 进行交互,还与Bird's Eye View (BEV)和视角视图(PV)特征通过稀疏可变形注意力机制[51]进行交互。此外,作者引入了一种级联机制,用于在扩散解码器中的每个去噪步骤迭代地优化轨迹重建。
基于这些创新,作者提出了 DiffusionDrive,一种用于实时端到端自主驾驶的分扩散模型。作者在以规划为导向的NAVSIM数据集[9]上使用非反应式模拟和闭环评估来衡量作者的方法。无花哨的DiffusionDrive,在NAVSIM navtest拆分上达到了88.1 PDMS,使用对齐的ResNet-34 Backbone ,显著优于先前的最先进方法。即使与遵循VADv2的NAVSIM挑战获胜解决方案Hydra-MDP--W-EP[22]进行比较(该解决方案具有8192个 Anchor 点轨迹,并进一步集成后处理和额外监督),DiffusionDrive仍通过直接学习人类示范并无需后处理而超越它1.6 PDMS,同时以45 FPS的速度在NVIDIA 4090上运行。
作者在流行的nuScenes数据集[2]上进一步验证了DiffusionDrive的优越性,进行开环评估,DiffusionDrive比VAD快1.8倍,且在相同ResNet-50 Backbone 下,将L2误差降低20.8%,将碰撞率降低63.6%,展示了最先进的规划性能。
作者的贡献可以总结如下:
首先,作者将扩散模型引入到端到端自动驾驶领域,并提出一种新颖的截断扩散策略,以解决在将纯扩散策略直接适应到交通场景时所遇到的模式崩溃和计算开销大的问题。
作者设计了一种基于 Transformer 的扩散解码器,它以级联方式与条件信息交互,以实现更好的轨迹重建。
没有花哨的功能,DiffusionDrive在保持相同 Backbone 的情况下,实现了突破性的88.1 PDMS记录,同时在NVIDIA 4090上保持实时性能,达到45 FPS。
作者定性地展示了DiffusionDrive可以生成更丰富和更合理的路程,在各种具有挑战性的场景中展现出高质量的多模态驾驶行为。
2 Related Work
端到端自动驾驶。UniAD [13]作为一项开创性工作,通过集成多个感知任务来增强规划性能,展示了端到端自动驾驶的潜力。VAD [17]进一步探索了使用紧凑的向量化场景表示来提高效率。随后,一系列工作采用了单一轨迹规划范式,以进一步提高规划性能。近年来,VADv2 [3]将范式转向多模式规划,通过从大量固定词汇的 Anchor 轨迹轨迹评分和采样。Hydra-MDP [22]通过引入基于规则的评分器来改进VADv2的评分机制。SparseDrive [32]探索了一个与现有多模式规划方法不同的BEV-free解决方案。不同于现有的多模式规划方法,作者提出了一种利用强大的生成扩散模型实现端到端自动驾驶的新范式。
交通模拟的扩散模型
仅利用抽象感知真实值探索了扩散驾驶策略在交通模拟中的应用。MotionDiffuser [18] 和 CTG [50] 是关于扩散模型在多智能体运动预测方面的先驱应用,使用条件扩散模型从高斯噪声中采样目标轨迹。CTG++ [49] 进一步引入了一个大型语言模型(LLM)用于语言驱动,提高了可用性,并实现了真实的交通模拟。Diffusion-ES [41] 用进化搜索替代了奖励梯度引导的去噪。VBD [15] 引入了一个使用条件扩散模型和博弈理论指导的场景一致性场景优化器,用于生成抽象的安全关键驾驶场景。
超越仅限于感知真实值的扩散模型,作者的方法通过提出的截断扩散策略和高效的扩散解码器,解锁了扩散模型在实时端到端自动驾驶的潜力。
扩散模型在机器人策略学习中的作用越来越受到重视,它能够有效地捕捉多模态动作分布和高维动作空间。扩散器 [16] 提出了一种无条件的扩散模型用于轨迹采样,通过使用诸如分类器无关的指导和图像修复等技术实现引导采样。随后,许多研究将扩散模型应用于各种机器人任务,包括静态操作 [1, 44],移动操作 [40],自主导航 [30, 42],四足行走 [31],以及灵巧操作 [39]。然而,将简单的扩散策略直接应用于端到端的自驾驶面临着独特的挑战,因为它需要实时效率,并在动态和开放世界交通场景中生成合理的多模态轨迹。在这项工作中,作者提出了一种新颖的截断扩散策略来解决这些挑战,引入了机器人领域尚未探索的概念。
3 Method
Preliminary
端到端自动驾驶以原始传感器数据为输入,预测 ego-vehicle 的未来轨迹。轨迹被表示为一系列路点 ,其中 表示规划范围, 和 分别表示在当前 ego-vehicle 坐标系中每个路点在时间 处的位置。
条件扩散模型提出了一个前向扩散过程,该过程通过逐步向数据样本中添加噪声来定义:
是干净的数据样本,而是在时间具有噪声的数据样本(注意:作者使用上标来表示扩散时间步)。常数,而是噪声计划。作者训练逆过程模型来自预测,在条件信息的指导下,其中是可训练的模型参数。在推理过程中,训练好的扩散模型逐步从高斯分布中采样随机噪声到预测的干净数据样本,在条件信息的指导下,这是定义为:
Investigation
作者从代表性确定性端到端规划器Transfuser [6]开始,通过将回归MLP层替换为遵循常规扩散策略[5]的条件扩散模型UNet,将其转变为生成模型TransfuserDP。在评估过程中,作者随机采样噪声,并逐步通过20个步骤进行细化。表2表明,TransfuserDP在规划质量上优于确定性Transfuser。
模式塌陷。 为了进一步研究驱动中常规扩散政策的多模式属性,作者从高斯分布中采样了20个随机噪声,并使用20步进行去噪。如图2所示,去噪后的不同随机噪声在塌陷过程中收敛到相似的轨迹。为了定量分析模式塌陷的现象,作者定义了一个基于每个去噪轨迹与所有去噪轨迹的并集之间的平均交点(mIoU)的归一化模式多样性评分:
表示第 个去噪轨迹, 是采样轨迹的总数, 是所有去噪轨迹的并集。更高的 mIoU 表示去噪轨迹的多样性较小。定量模式多样性结果进一步验证了图2 中呈现的观察结果。请参阅表2。
重去噪开销大。 DDIM [29] 扩散策略需要20个去噪步骤将随机噪声转换为可行轨迹,这引入了巨大的计算开销,将FPS从60降低到7,如表2所示,使其在实时在线驾驶应用中变得不切实际。
Truncated Diffusion
人类驾驶遵循固定模式,这与纯扩散策略中的随机噪声去噪不同。因此,作者提出了一种截断的扩散策略,该策略从 Anchor 定高斯分布开始去噪过程,而不是标准高斯分布。为了使模型能够从 Anchor 定高斯分布学到期望的驾驶策略,作者在训练过程中进一步截断扩散时间表,仅在 Anchor 点中添加少量高斯噪声。
训练。 作者首先通过在训练集中对K均值聚类得到的 Anchor 点添加高斯噪声来构建扩散过程,其中。作者将扩散噪声计划截断为将 Anchor 点扩散到 Anchor 定高斯分布:
其中, 属于 [1, ], 是截断扩散步长,且 远小于 。
其中 表示条件信息。作者将围绕最接近的 Anchor 点噪声轨迹 分配为正样本(),其他则作为负样本()。训练目标将轨迹重建和分类相结合:
λ在平衡简单L1重构损失 和二进制交叉熵(BCE)分类损失之间进行平衡。
推理。 作者使用一种截断去噪过程,该过程从 Anchor 定高斯分布中采样噪声轨迹,并逐步去噪以获得最终预测。在每个去噪时间步中,前一时间步的估计轨迹被传递给扩散解码器 ,该解码器预测分类得分 和坐标 。在获得当前时间步的预测后,作者应用DDIM [29]更新规则来为下一时间步采样轨迹。
推理灵活性。 作者方法的关键优势在于其推理灵活性。虽然模型是使用 条轨迹进行训练的,但推理过程可以容纳任意数量的轨迹样本 ,其中 可以根据计算资源或应用需求动态调整。
Architecture
作者的提出的方法DiffusionDrive的整体架构如图4所示。DiffusionDrive可以集成以前端到后端规划中使用的各种感知模块,并接受不同的传感器输入。设计有专门的扩散解码器,适用于复杂且具有挑战性的驾驶应用,增强了与条件场景上下文之间的交互。
扩散解码器。给定来自 Anchor 定高斯分布的采样噪声轨迹集合{},作者首先应用可变形空间交叉注意力[26, 35, 51]与基于轨迹坐标的方向有关联的鸟瞰视图(BEV)或透视视图(PV)特征进行交互。然后,在轨迹特征与感知模块派生的 Agent /地图 Query 之间进行交叉注意力,然后是 FFN (FFN)。为了编码扩散时间步信息,作者使用一个时间步调制层,其后面跟着一个多层感知机(MLP),用于预测置信度得分和相对于初始噪声轨迹坐标的偏移量。这个扩散解码器层的输出作为后续级联扩散解码器层的输入。DiffusionDrive进一步重用级联扩散解码器在推理过程中迭代去噪轨迹,不同去噪时间步共享参数。最后,选择具有最高置信度的轨迹作为输出。
4 Experiment
Dataset
NAVSIM数据集[9]是一个以规划为导向的真实世界数据集,基于OpenScene[8],这是nuPlan[19]的紧凑重新分布,nuPlan是最大的公开标注驾驶数据集。NAVSIM利用八个摄像头实现360°的全景视野,并从五个传感器合并得到LiDAR点云。标注以2Hz的频率提供,包括高程图和物体边界框。该数据集旨在强调涉及驾驶意图动态变化的困难驾驶场景,同时故意排除诸如静止场景或恒速驾驶等简单情况。
利用非反应性仿真和闭环指标进行NAVSIM基准测试的规划性能评估。在本文中,作者采用了提出的PDM评分(PDMS)[9],它是由多个子评分加权组合而成:无故障碰撞(NC),可行驶区域合规性(DAC),碰撞时间(TTC),舒适性(Comf.),以及自车进步(EP)。
Implementation Detail
作者采用与Transfuser相同的感知模块和ResNet-34 Backbone [11]进行公平比较。在扩散解码层中,作者采用空间交叉注意力,仅与Transfuser基于BEV的设置后的BEV特征进行交互。作者只执行 Agent 交叉注意力,因为Transfuser的感知模块不包含向量化的地图构建。作者堆叠了2个级联扩散解码层,并应用了具有20个聚类的 Anchor 点。训练扩散时间表被缩短到50/1000,以扩散 Anchor 点,而在推理时,作者只使用2个去噪步骤,并选择最佳得分预测轨迹进行评估。训练和推理配方直接遵循Transfuser:作者使用三个裁剪和缩小的正面相机图像,拼接成1024×256图像,并作为输入;DiffusionDrive在navtrain拆分中从零开始训练100个周期,使用AdamW优化器在8个NVIDIA 4090 GPU上运行,总批量大小为512,将学习率设置为6×10^-4。没有测试时的数据增强,最终在navtest拆分上的评估结果是4秒内的8个关键点轨迹。更多信息请参见附录。
Quantitative Comparison
Roadmap
在表2中,将Transfuser转换为生成TransfuserDP使用原始扩散策略,提高了PDMS得分0.6,模式多样性得分的11%。然而,它也显著增加了规划模块的开销,需要20倍更多的去噪步骤和32倍的时间步长,导致总的运行时开销增加了650倍。使用提出的截断扩散策略,TransfuserTD将去噪步骤从20减少到2,同时实现了PDMS的1.1增加和模式多样性59%的改进。通过进一步集成提出的扩散解码器,最终模型DiffusionDrive达到了88.1 PDMS和74%的模式多样性得分。与Transfuser相比,DiffusionDrive在3.5 PDMS和模式多样性64%方面有所改进,去噪步骤减少了10倍,导致FPS提高了6倍。这使得实时、高质量、多模式规划成为可能。
Ablation Study
扩散解码器中设计的影响。表3显示了在扩散解码器中作者的设计选择的有效性。ID-1是表2中的Transfuser。通过比较ID-6和ID-1,作者可以看到,提出的扩散解码器将参数减少了39%,并显著提高了规划质量2.4 PDMS。ID-2由于与环境缺乏丰富的、分级的交互而出现了严重的性能退化。通过比较ID-2和ID-3,作者可以看到空间交叉注意力对精确规划至关重要。ID-5表明,所提出的级联机制是有效的,并且可以进一步提高性能。
去噪步骤数。 表4显示,由于合理的起始点,DiffusionDrive仅需1步即可实现良好的规划质量。进一步增加去噪步骤数可以提高规划质量,使其在环境复杂性的允许下享受到灵活的推理。
级联阶段。 表5消除了级联阶段数量的影响。增加级联阶段数量可以提高规划质量,但当达到4个阶段时会饱和,并且在每个步骤上的参数和推理时间成本更高。
采样噪声数量N_{\text{infer}}. 如3.3节所述,DiffusionDrive可以通过从 Anchor 定高斯分布中简单地采样不同数量的噪声来生成各种轨迹。表6显示,10个采样噪声已经可以实现较好的规划质量。通过采样更多的噪声,DiffusionDrive可以覆盖潜在的规划动作空间,从而提高规划质量。
Qualitative Comparison
由于PDMS规划度量是基于顶-1得分轨迹计算的,而作者的提出的分数评估模式多样性,这些度量 alone 并不能完全捕捉到多样轨迹的质量。为了进一步验证多模式轨迹的质量,作者在图2中展示了Transfuser、Transfuser和DiffusionDrive在NAVSIM navtest分段中的挑战场景下的规划结果。结果表明,由DiffusionDrive生成的多模式轨迹不仅多样,而且质量高。在图2a中,DiffusionDrive生成的顶-1得分轨迹与 GT 轨迹非常接近,而高亮的顶-10得分轨迹竟然试图执行高质量的变道。在图2b中,高亮的顶-10得分轨迹也执行了一个变道,而相邻的低得分轨迹进一步与周围 Agent 互动,有效地避免碰撞。
Quantitative Comparison on nuScenes dataset
nuScenes数据集是以前流行的端到端规划基准。由于nuScenes的主要场景都是简单和微不足道的情况,所以作者只在一个表(表7)中进行比较。作者在SparseDrive [32]之上实现了DiffusionDrive,并使用ST-P3 [12]中提出的开环指标进行其训练和推理。作者堆叠了2个级联扩散解码器层,并应用了具有18个聚类 Anchor 点的截断扩散策略。
如图7所示,DiffusionDrive将SparseDrive的平均L2误差降低了0.04m,实现了与以前最先进方法相比最低的L2误差和平均碰撞率。尽管DiffusionDrive同样高效,运行速度比VAD快1.8倍,L2误差降低20.8%,碰撞率降低63.6%。
5 Conclusion
在本工作中,作者提出了一种名为DiffusionDrive的新颖生成式驾驶决策模型,用于端到端自动驾驶,该模型结合了提出的截断扩散策略和高效的级联扩散解码器。
DiffusionDrive可以从 Anchor 定高斯分布中噪声较少地生成一定数量的样本,以实时速度生成多种规划轨迹。
通过全面的实验和定性比较,验证了DiffusionDrive在规划质量、运行效率和模式多样性方面的优越性。
Acknowledgement
参考文献
[0]. DiffusionDrive: Truncated Diffusion Model for End-to-End Autonomous Driving.
最后别忘了,帮忙点“在看”。
您的点赞,在看,是我创作的动力。
AiFighing是全网第一且唯一以代码、项目的形式讲解自动驾驶感知方向的关键技术。
长按扫描下面二维码,加入知识星球。