Delphi:更适合端到端模型的 world model,更长更真更可控!(理想汽车&西湖大学)

汽车   2024-06-17 11:28   上海  
来源:自动驾驶之心
全文 3500+ 字,预计阅 20-25 分钟
进群交流:点此处

导读:

理想汽车智驾团队联合西湖大学等提出了一种新的基于扩散模型的可控长视频生成的方法--Delphi,来释放端到端模型的泛化性能。该方法可以在公开的nuScenes数据集上生成长达 40 帧的具备时空一致性的长视频,该时长大约是目前最优方法可生成时长的 5 倍。以Delphi为数据引擎,该文进一步地提出了一个 failure-case driven framework,该框架能有效地提升数据采样的效率,从而用最小的数据成本提升端到端模型在复杂场景上的泛化性能。在大规模的nuSenes数据集上的实验表明,以Delphi为数据引擎的的failure-case driven framework, 仅需生成4% 的训练数据集大小,就能够将端到端自动驾驶模型的规划性能提高 25%。

论文信息

  • 论文题目:Unleashing Generalization of End-to-End Autonomous Driving with Controllable Long Video Generation
  • 论文发表单位:西湖大学,理想汽车,天津大学中山大学,东南大学,哈尔滨工程大学,哈尔滨工业大学
  • 论文地址:https://arxiv.org/abs/2406.01349
  • 项目主页:https://westlake-autolab.github.io/delphi.github.io/

写在前面|为什么提出?

使用生成模型来合成新数据已经成为自动驾驶领域解决数据稀缺问题的事实标准。虽然现有方法能够提升感知模型的性能,但我们发现这些方法未能改善端到端自动驾驶模型的规划性能,因为生成的视频通常少于8帧,且空间和时间的一致性问题不可忽视。为此,我们提出了Delphi,一种基于扩散模型的长视频生成方法,通过跨多视角的共享噪声建模机制来增加空间一致性,并通过特征对齐模块实现精确的可控性和时间一致性。我们的方法能够生成多达40帧的视频而不失去一致性,约为现有最先进方法的5倍。不同于随机生成新数据的策略,我们进一步设计了一个采样策略,使Delphi生成与失败案例相似的新数据,以提高采样效率。这是通过借助预训练视觉语言模型建立一个failure-case driven framework实现的。我们的广泛实验表明,Delphi生成的长视频质量更高,超越了现有最先进的方法。因此,尽管只生成了训练数据集大小的4%,我们的框架首次超越了感知和预测任务,将端到端自动驾驶模型的规划性能提升了25%。请参考项目主页:https://westlake-autolab.github.io/delphi.github.io/

Demo示例

在nuScenes数据集上的长视频生成(40帧)

精准的控制能力

该文从两方面来展示了Delphi的精准控制能力。

首先,对于instance-level即物体级别的时序一致性,与现有最优方法相比,Delphi可以在前后帧上保持同一车辆实例的外观一致性:

除此之外,Delphi展示了优秀的multi-level编辑能力。如下图所示,通过编辑instance caption / scene caption, Delphi可以精准地改变场景中实例的颜色属性/整体的天气属性:

Scaleing up

除此之外,为了验证训练数据规模的影响,该文又做了一个额外的实验(注意:只有该处用了extra training data)。即通过在私有的多视角驾驶数据集 © 上进行额外训练(训练数据大约比 nuScenes 大 50 倍),Delphi 展示了生成多达 120 帧具有时空一致性的长视频的有趣功能。这充分体现了Delphi的可扩展性。

© 理想汽车股份有限公司 版权所有。

应用:可用于闭环评估的视觉渲染器

Delphi 可以用作具有逼真图像生成能力的数据引擎,并进一步支持端到端模型(如 UniAD)的闭环评估。下面我们展示了在 nuNcenes 上进行闭环评估的视频demo:

上面一排展示的是 nuNcenes 数据集采集到的一段开环评估场景:“自车以恒定速度行驶”,其中自车不能与真实环境交互。下排展示了我们使用 Delphi 在 nuNcenes 上的一段闭环评估场景:“自车加速,与前车的距离不断减小,最终撞上前车”。以Delphi作为数据引擎,端到端算法可以自由地与真实环境交互,从而在仿真环境中就可实现上路实测的效果。

方法框架介绍

我们首先介绍Delphi,一种用于生成自动驾驶长多视角视频的创新方法。然后介绍了一个failure-case driven framework,展示了如何利用长视频生成能力,仅通过训练数据集中的数据,来自动增强端到端模型的泛化能力。

Delphi: A Controllable Long Video Generation Method

Delphi的整体框架如上图所示。现有方法往往忽略了时间和空间维度上的噪声处理,导致长视频生成质量较差。相比之下,我们提出了两个关键组件来解决这些问题:Noise Reinitialization Module(NRM)和 Feature-aligned Temporal Consistency(FTCM)。

  1. Noise Reinitialization Module

多视角视频自然在时间和视角维度上表现出相似性。然而,现有方法分为两类:一类是并行单视角视频生成方法,无法直接应用于户外多视角场景;另一类是多视角生成模型,它们添加的独立噪声未考虑视角间的一致性。我们通过引入跨这两个维度的共享噪声来解决这个问题。具体而言,如上图(b)所示,我们在时间维度上引入共享运动噪声 m,在视角维度上引入共享全景噪声 p。最终输出的多视角视频的噪声版本在时间和视角维度上都具有相关性。其中引入共享噪声的过程可以表示如下:

  1. Feature-aligned Temporal Consistency

现有方法在生成当前帧时,利用简单的交叉注意力机制将前一帧的信息融合到当前视角中。然而,它们往往忽略了不同网络深度处的特征具有不同的感受野。结果是,这种粗略的特征交互方法未能捕捉到前一帧中不同层次的所有信息,导致视频生成性能不理想。

为了解决这个问题,我们提出了一种更有效的结构,旨在完全建立相邻帧中相同网络深度下的对齐特征之间的特征交互,如上图(c)所示。我们的做法是确保全局一致性并优化局部一致性,其中包含两个主要设计:Scene-aware Attention 和 Instance-aware Attention。

  • Scene-aware Attention

为了充分利用前一帧中不同网络深度的丰富信息,我们提出了一种场景级跨帧注意力机制。具体来说,该模块在相邻帧中相同网络深度的特征上执行注意力计算。其计算过程可以表示如下:

  • Instance-aware Attention

为了增强场景中移动物体的一致性,我们提出了一种实例感知跨帧注意力机制。与场景级注意力相比,该模块使用前景边界框作为注意力掩码,在相邻帧的局部区域中计算特征交互。其计算过程可以表示如下:

Failure-case Driven Framework

为了利用生成的数据,常见的方法是随机抽取训练数据集的一个子集,然后应用视频生成模型来增强这些数据,从而提升下游任务的性能。我们假设这种随机抽样并未考虑现有的长尾案例分布,还有进一步优化的空间。因此,我们提出了一个简单但有效的 failure-case driven framework,通过四个步骤来降低计算成本。如上图所示,我们首先评估现有的失败案例,然后采用一种 visual language-based 的方法来分析这些数据中的模式,并检索相似的场景以更深入地理解上下文。接着,我们多样化场景和实例的描述,以生成具有不同外观的新数据。最后,我们用这些额外的数据对下游任务进行训练,以提高泛化能力。

请注意,所有这些操作都是在训练集上进行的,以避免任何验证信息的潜在泄漏。每个组件的详细实现请参见补充材料。

实验结果

本文在大规模真实场景的nuScenes进行实验,以评估生成模型的性能,实验结果如下。我们的评估指标包括FID、FVD 和下游模型在新生成数据上的性能来评估 image、video和sim-to-real gap。

主要实验

  1. 将 Delphi 与最先进的视频生成方法进行比较

如表1所示,Delphi 在短视频生成任务上以明显优势超越了现有的最先进方法,并且可以生成长达40帧的视频。

  1. 本文的 failure-case driven framework 增强了端到端规划模型的泛化性能

为了证明我们框架的有效性,我们在表2中比较了三个因素:生成案例数量、数据引擎(视频生成方法)和数据源选择。总的来说,我们发现,通过仅生成训练集大小的4%数据,我们的方法可以将碰撞率从0.33降低到0.27,降低了25%。然而,在相同的设置下,如果我们使用其他数据引擎(如 Panacea)对 UniAD 进行微调,碰撞率会增加。尽管如此,我们还是利用随机抽样对两种数据引擎进行了比较,我们的方法始终优于基线。

我们在下图中展示了我们的框架如何修复失败案例:

如果我们从验证集中对layout进行采样,会发生什么?

由于 Delphi 只看到 nuScenes 的训练集,一个自然的问题是,我们是否可以包含验证集,看看是否可以进一步提升下游任务的性能?在这里,我们收集了来自训练集和验证集的失败案例。请注意,由于我们的框架只使用layout和caption,因此验证集中的原始视频片段在任何训练过程中都不会被暴露。我们注意到,仅生成429个cases,仅占训练集大小的1.5%,碰撞率就从0.33降低到0.26。这个结果可能对工业从业者很有趣,即仅看到训练集视频的diffusion-based方法可以通过layout和caption,来有效地提升验证集的性能。

消融实验

sim-to-real gap 的消融实验

为了进一步评估 sim-to-real gap,我们使用不同比例的合成数据训练 UniAD。在表3 的第二行,我们用纯生成的视频片段训练 UniAD,碰撞率从0.34增加到0.50。这表明合成数据尚不能完全替代真实数据。相比之下,如果我们考虑增量学习的设置,即使用额外数据训练 UniAD 时,使用合成数据能够显著提升性能,而使用额外的真实数据则会使性能从0.34恶化到0.38。

场景和实例编辑的消融实验

表4 展示了数据多样性对端到端模型的有效性。具体来说,我们通过两种方法编辑现有场景:scene-level editing 和 instance-level editing。这一高级功能使我们能够从有限的现有数据中生成大量的新数据。如表4所示,同时编辑场景和实例能取得最佳性能。利用强大的精确可控性,Delphi 通过生成更丰富和多样的数据,最大化端到端模型的性能。

NRM 和 FTCM的消融实验

在表5 中,我们验证了两个模块NRM和FTCM。我们看到所有指标均显著提高,从而验证了我们提出方法的有效性。特别是,FTCM 结构将 FID 从 22.85 提高到 19.81,而 NRM 则进一步提升了这一指标。

总结

本文提出了一种用于自动驾驶场景的新型视频生成方法,可以在 nuScenes 数据集上合成多达40帧的视频。令人惊讶的是,本文展示了以仅使用训练数据集训练的扩散模型为数据引擎,并通过一个样本高效的 failure-case driven framework,就能够提升端到端规划模型的planning性能。我们希望能为该领域的研究人员和实践者在解决数据稀缺问题上提供一些启示,并向确保自动驾驶车辆道路安全迈出坚实的一步。


ADS智库
聚焦 ADAS \x26amp; ADS 相关内容,公号发消息『我来了』免费领取 10G+ 自动驾驶资料
 最新文章