MiLA:自动驾驶中多视角高保真长时视频生成世界模型
25年3月来自南京大学、小米EV和西湖大学的论文“MiLA: Multi-view Intensive-fidelity Long-term Video Generation World Model for Autonomous Driving”。近年来,数据驱动技术极大地推动自动驾驶系统的发展,但对稀有且多样化的训练数据的需求仍然是一个挑战,需要大量的设备和人力投入。世界模型可以预测和生成未来的
25年3月来自南京大学、小米EV和西湖大学的论文“MiLA: Multi-view Intensive-fidelity Long-term Video Generation World Model for Autonomous Driving”。
近年来,数据驱动技术极大地推动自动驾驶系统的发展,但对稀有且多样化的训练数据的需求仍然是一个挑战,需要大量的设备和人力投入。世界模型可以预测和生成未来的环境状态,通过合成带注释的视频数据进行训练,它提供了一种很有前景的解决方案。然而,现有的方法很难生成长而一致的视频而不累积错误,尤其是在动态场景中。为了解决这个问题,MiLA框架,用于生成长达一分钟的高保真长时视频。MiLA 采用一种由粗到细的方法来稳定视频生成并校正动态目标的失真。此外,引入时间渐进式去噪调度器和联合去噪-校正流模块来提高生成的视频的质量。
近年来,世界模型框架取得了显著进展,能够生成具有规划信号的高质量视频[24, 39, 40, 52]。然而,生成一致的长时数据仍面临两个重大挑战。
第一个挑战是累积误差问题。虽然同时生成所有帧是理想的,但它需要不切实际的计算资源和内存需求。因此,大多数方法采用逐批策略生成长视频[12, 27, 29, 33],根据先前生成帧递归地预测新帧。不幸的是,这种方法会导致整个生成过程中的误差累积,从而降低长时间视频中静态背景和动态目标的质量。
第二个挑战在于如何在扩展序列中保持场景一致性。当仅以包含初始时间戳的信息(包括条件帧和场景描述)作为条件时,第一帧的控制影响会在后续帧中逐渐减弱,这通常会导致场景质量下降,并导致序列后续部分失去连贯性。现有的方法尝试通过引入额外的控制信号 [1, 11, 30, 48](例如高清地图和预测帧的 3D 边框)来解决这个问题。如何在不引入这些信号的情况下学习出一种能够保持时空一致性的表征,目前仍未得到广泛的探索。
如图(a)显示本文基于潜扩散模型的方法 MiLA 与利用现有循环框架 Vista 的方法的比较,以及(b)路径点可控性的演示。其探索一种分而治之的视频生成框架 [3, 13, 22, 26, 49],首先在粗略过程中计算低 FPS 锚帧,然后使用插值模型用高 FPS 视频完成视频。

现有的长期视频生成方法可以分为两种不同的范式,如图所示。具体来说,大多数自动驾驶世界模型遵循循环生成范式 [12, 27, 29, 33],也称为自回归框架。在此框架中,通过用条件token替换初始 token,每个新批次都是以前一个批次为条件所生成。为了确保该框架的质量,最近的工作 [43] 提出一种异步扩散过程,并将批次生成分为帧生成。批次中的第一个帧首先扩散并弹出。同时,在批次末尾放置一个新的噪声token以维持批次大小。然而,累积误差问题没有得到妥善解决。

另一方面,一些研究人员[3, 19, 22]致力于采用分治范式,通过两个不同的过程生成锚帧和插值帧。Nuwa-Xl[49]进一步改进模型结构以获得更好的性能。为了进一步挖掘其潜力,一些研究[4]利用该范式进行分辨率增强任务。最近的研究[42]探索用于视频生成的异步时间采样策略,但内部片段的一致性问题仍未得到解决。然而,至关重要的是,人们对预测锚帧中固有的伪影关注甚少,导致对其对整体视频质量的影响缺乏了解。
如图介绍 MiLA 框架的概述,该框架能够基于用户定义的参考帧和输入(包括航点、相机参数、时间帧索引和场景描述)生成长期视频。

模型概述
采用基于 DiT 的视频生成模型 Open-Sora [55] 的框架作为 MiLA 的主干架构。MiLA 预测以 x^0:N −1^_0:V−1 为条件的多视角帧xN:N+S−1_0:V−1,其中 V、N、S 分别代表视角数量、条件帧数量和总噪声帧数量,如上图所示。可省略 0:V −1 这个表示多视角的符号。
灵活的条件嵌入。为了引导航点和摄像机视角引导生成,用傅里叶嵌入,然后使用多层感知器 (MLP) 层将输入条件参数编码到嵌入中。形式上,将所有摄像机参数和航点 c = {c0, c1, …, cN+S−1} 与帧嵌入 h_f 融合。
多视角增强空间注意机制。扩展DiT模块的空间感受野,使其包含所有视角的图像块,从而实现多视角良好对齐的生成。
预备知识:整流(rectified flow)。整流[28]是一种基于常微分方程(ODE)的方法,用于在两个分布 x_0 ∼ π_0 和 x_1 ∼ π_1 之间进行迁移。在整流中,插值的中间阶段结果可以表示为 x_t = (1 − t)x_0 + tx_1,其中 t ∈ [0, 1] 是分布迁移的时间戳。具体而言,在扩散模型中,x_0 通常是标准高斯分布,即 x_0 ∼ N (0, 1)。
长期视频生成框架
上图展示从粗到细(重新)的流程。粗略处理采用分而治之的方法,首先使用低帧率嵌入预测锚帧作为参考。如上图所示,其(重新)细化处理采用循环策略,而不是从单个起始帧和尾帧进行插值。更具体地说,循环利用多个条件帧,将前一个(重新)细化处理中的高 FPS 帧和粗略处理中的低 FPS 锚帧结合起来。这种方法使模型能够更好地捕捉运动动态,同时理解更广泛的环境。
此外,在(重新)细化处理中加入一个校正模块,用于调整锚帧中任何不切实际的运动。其采用独特的加噪和去噪方法来增强锚帧之间的平滑过渡。
联合去噪与校正流程
分而治之的框架通过依赖锚帧实现长期视频生成的保真度,然而这种优势也带来一个关键的权衡:帧间时间连贯性的降低,如图所示(粗到细和分而治之的比较)。虽然锚帧在扩展序列上保持结构一致性,但其稀疏的时间分布削弱了帧间依赖性,通常表现为诸如物体运动不稳定和视频流畅度降低等伪影。为了解决保真度和流畅度之间的这种固有矛盾,提出联合去噪与校正流程,该模块旨在充分利用锚帧的优势,同时主动缓解其局限性。该方法同步优化低 FPS 锚帧(以增强结构保真度)和高 FPS 插值帧(以恢复时间连续性),从而解决运动不一致问题。

首先建立与潜扩散模型 (LDM) 原理的理论联系,假设锚框固有的噪声可以分解为结构化和随机成分,
z = (1−α_1) x_0 +α_1 n_1, n_1 ∼ N(0, 1)
其中 z 和 x_0 分别表示预测锚框和真实锚框。α_1 表示噪声尺度。基于上述假设,希望开发一个带噪声的预测锚框,其由预测锚框和高斯噪声混合而成,其中 α_2 和 σ 分别表示噪声尺度和标准差,它们是噪声添加过程的关键值。
x_n = (1−α_2) z + α_2 n_2, n_2 ∼ N(0, σ2)
根据标准 LDM,添加到带噪声的预测锚框中的噪声应服从正态分布。这样得到:
x_n = (1−α_2)(1−α_1)x + α_2 n_2 + α_1(1−α_2)n_1
为此,计算标准差 σ 为:
σ2 = (α_2 −2 α_1 α_2 + 2α_1) /α_2
换句话说,添加到预测锚框中的噪声满足 n_2 ∼ N(0, (α_2 − 2 α_1 α_2 + 2 α_1)/α_2)。为此,将给定原始时间戳 t 来推导锚帧噪声时间戳的函数表示为 g(t),如下计算:
g(t) = 1−(1−α_1)(1−α_2), α_2 = (g(t)−α_1)/(1−α_1)
为了简化整体噪声添加过程,定义噪声尺度α_1为常数,g(t)为α_0的线性函数,从而可以计算α_2。接下来,可以推导出标准差σ。最后,利用噪声尺度α_2和噪声方差σ_2,可以确定预测锚帧的噪声添加过程。
时间渐进式去噪调度器
为了提高整体视频的保真度,设计一个特定的去噪调度器。更接近条件帧的帧往往在单个去噪步骤中具有更好的保真度。这一现象引出一个有趣的假设:是否有可能用更少的步骤来预测更早的帧?基于这个假设,可以很容易地提出另一个假设:更快地揭示前一帧是否能为后续帧提供更详细的信息,从而提高后续帧的生成质量。
为了合理利用这些观察结果,设计一个函数,以所有噪声帧集合的噪声时间帧索引 s 和去噪时间戳 t 作为变量,并计算去噪调度器系数。该函数应满足以下要求:
一个去噪批次中的所有帧必须同时达到最终去噪状态。
前几帧在最初几步以较大尺度进行去噪,从而迅速达到近乎完全去噪的状态。
后几帧的去噪调度器应遵循先慢后快的模式,在最后几步显著提高去噪尺度。
为此,推导出一个函数来转换原始时间戳 t,其中 φ_s 由归一化的 s 计算得出。尺度系数的计算基于一个简单的余弦函数,其所有值均被限制在 0 和 π 之间。采用一个单调递减函数,0 到 π 之间的不同初始化值会产生不同的递减趋势。然后,引入一个归一化项来约束这些趋势。
如图所示:(a):两个不同视角的预测帧按时间递增顺序生成,其中正面视角的帧位于第一行,左后视角的帧位于第二行。所有帧均使用单个扩散步骤生成。越接近条件帧的帧,其退化程度越低。(b):基于噪声帧索引和去噪时间戳作为变量,用于计算噪声尺度的函数示例。

损失函数
在训练阶段,每次迭代随机采样一个时间戳,并定义 MiLA 对预测流 v 的总体最小化目标,其中 y = (x_1 − x_0) 表示起始噪声与真实帧潜嵌入之间的流向量,v(x_t, t) 是模型预测的流,m_s 是表示噪声锚框的二值掩码。
实验设置
数据集和评估指标。所有实验均在 nuScenes [6] 数据集上进行,该数据集包含 700 个训练场景和 150 个验证场景,分别在波士顿和新加坡收集,每个场景时长约 20 秒,包含高清 360 度全景图像。此外,Fre ́chet 初始距离 (FID) [17] 和 Fre ́chet 视频距离 (FVD) [37] 用于评估整体生成质量。具体而言,FID 和 FVD 得分越低,分别表示图像和视频的相似度越高。为了全面评估生成不同视角视频的各种方法,将 FID 和 FVD 扩展为以下指标。其中 FID_front 和 FVD_front 用于评估正面视频的生成质量,FID_t_0 −t_1 s 和 FVD_t_0 −t_1 s 用于评估从 t_0 到 t_1 秒的正面视频生成质量。此外,为了计算 FID 和 FVD,分别使用预训练的 Inception-v3 网络 [36](将图像编码为 2048 维特征)和 I3D 网络 [7](用于特征提取)。
实现细节
训练。MiLA 的输入为 16 × N(N ∈ [1, 2, 3])帧的视频,其中初始 1 或 4 帧用于视觉条件(在某些情况下也包括最后一帧),其余帧用于预测。
所有图像均调整为 360 × 640 以训练 MiLA,其总共约有 7 亿个参数(不包括 VAE 和文本编码器 T5 [34])。加载 Open-Sora 1.1 [55] 的预置权重。具体来说,MiLA 在 64 块 NVIDIA A100 GPU 上分 3 个阶段进行训练,总批次大小为 64。
第一阶段:在第一阶段,对模型进行微调,以预测片段中 FPS 一致的接下来 12 帧(FPS 从 {1,2,12} 中随机采样)。在此阶段,冻结大多数参数,仅训练新添加的模块(多视图增强空间注意模块、灵活条件嵌入模块)、最后一个 DiT 块以及输出层。此阶段大约需要 2000 个训练步。
第二阶段:在第二阶段,将条件帧(21)的FPS固定为12,并分别使用不同的生成帧FPS训练短期和长期MiLA。除少数嵌入层外,大多数参数均可训练。短期和长期模型在第二阶段均训练约2万次迭代。
第三阶段:在第三阶段,训练与前一阶段相同的参数,并进行额外的锚框校正训练。具体而言,将尾部锚框设置为噪声锚框,并训练模型以75%的校正率校正伪影。MiLA在此阶段训练约8千步。
在所有阶段,将学习率设置为1×10−4,并进行1000次迭代的线性预热。在推理阶段,文本描述和航点分别以15%的比例被丢弃,以实现无分类器指导[18]。
推理。用于评估模型的数据是从 nuScenes 验证数据集中采样的。为了进行评估,采样两个评估子集,它们均由以 nuScenes 关键帧开始的剪辑组成。第一个数据集对所有有效剪辑进行采样,总共涉及 5369 个样本,其中“有效”表示剪辑具有足够的帧作为条件并充当生成真值(帧数至少为 32)。第二个数据集从所有 150 个场景中为每个场景采样 4 个剪辑,间隔为 59 帧,剪辑的格式与第一个数据集一致。用时间渐进式去噪调度程序生成 50 个步骤的视频token,并使用固定的无分类器指导尺度 [18] 3.0。
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)