一句话定位
DriveDreamer 是首个完全从真实道路视频与人类驾驶行为里学出来的驾驶世界模型:以扩散模型(基于 Stable Diffusion v1.4)为主干,用 HDMap + 3D 框 + 文本这套结构化交通条件做可控视频生成,再靠 ActionFormer 用驾驶动作在特征层迭代预测未来交通结构,从而联合产出未来驾驶视频与未来驾驶策略(ECCV 2024,nuScenes 上验证)。
背景与定位
世界模型此前的成功几乎都落在游戏或仿真环境里(Dreamer 系列、dreamer-v3、DayDreamer、ISO-Dream;MILE、SEM2 也是在 CARLA 仿真 / BEV 分割空间里学),核心限制是缺少真实道路场景的表征。DriveDreamer 主张:真实驾驶场景的像素搜索空间过大,直接在像素空间建模难以收敛(behavior cloning 的老问题),因此要借扩散模型的强表征力,并用结构化交通条件把搜索空间压下来。
这属于”driving world model”范式。同期与后续的坐标:
- DriveGAN:把驾驶动作和像素关联起来、按未来策略预测未来视频,但是 GAN 路线、无结构化交通约束。DriveDreamer 用它做对比基线。
- BEVGen / BEVControl / MagicDrive / DrivingDiffusion:多视角图像布局生成,无时序视频或无动作交互。
- gaia-1-wayve(GAIA-1,Wayve):同期的自回归驾驶世界模型。
- drive-wm-driving-into-the-future(Drive-WM,CVPR 2024):紧随其后把单视角推进到多视角一致视频并接真实端到端规划器,论文里把 DriveDreamer 列为单视角视频对比对象(FVD 452.0)。
- 本模型的后续:drivedreamer-2(2024-03,多视角 + LLM 生成结构化条件)、drivedreamer4d(2024-10,4D 重建 / 复杂机动渲染)。
DriveDreamer 补的空白是”真实道路 + 扩散视频 + 动作可交互 + 联合出策略”四者合一,作者自陈这是第一个从真实驾驶场景建立的世界模型。
模型架构
整体框架(论文 Fig. 3):给定初始参考帧 I₀ 及其道路结构信息(HDMap H₀、3D 框 B₀),ActionFormer 在潜空间预测未来的道路结构特征,作为条件送进 Auto-DM 生成未来驾驶视频;文本 prompt 动态调风格(天气 / 时段);同时把历史动作与从 Auto-DM 抽的多尺度潜特征合起来生成未来驾驶动作。
Auto-DM(Autonomous-driving Diffusion Model) 是核心生成器,建在 Stable Diffusion v1.4 上、原始参数冻结,只训新增的门控自注意力、时序注意力、交叉注意力三类层。三类控制条件的接入方式各不相同:
- 空间对齐条件(HDMap):3 通道(车道边界 lane boundary、车道分隔 lane divider、人行横道 pedestrian crossing),投影到像面得 {Hᵢ} ∈ ℝ^{N×H×W×3},用卷积编码后直接与前向扩散得到的噪声潜特征 Z_t 拼接。
- 位置条件(3D 框):八角点投影,{Bᵢ} ∈ ℝ^{N×N_B×16}(N_B 为预设最大框数、零填充),框类别 {Cᵢ} 经 CLIP 编成 C_e。先聚合位置嵌入 H^p = F_α([C_e, Fourier(B)])(F_α 为 MLP、Fourier 为 NeRF 式嵌入),再用 GLIGEN 式门控自注意力把 H^p 融进 UNet 视觉信号:v = v + tanh(η)·TS(F_s([v, H^p])),η 可学、TS 是只保留视觉 token 的 token selection。
- 文本条件:CLIP 编码后走交叉注意力,控制天气、时段等风格属性。
- 时序一致性:新增时序注意力层 F_t,把视觉信号从 ℝ^{N×C×H×W} reshape 成 ℝ^{C×NHW} 做逐帧自注意力学帧间动态,配正弦时序位置嵌入 T_pos,再还原维度。
- 多视角扩展:把帧间注意力替换成视角间注意力(只关注相邻视角)即得多视角图像;帧间 + 视角间注意力堆叠即得视角一致且帧一致的多视角视频(Fig. 7 / Fig. 8)。
ActionFormer(Fig. 5)解决”视频预测时未来交通结构不可得”的问题:把初始 H₀、B₀ 编码并展平进 1D 潜空间 → 自注意力 + MLP 聚合出隐状态 h₀ → 交叉注意力 F_ca 建立隐状态与驾驶动作的关联 → 潜变量 s_t 参数化为高斯 N(μ_θ(F_ca(h_t,A_t)), σ_θ(·)I) → GRU 迭代更新 h_{t+1} = F_GRU(h_t, s_t)。隐状态与动作特征拼接后解码回未来交通结构条件。关键设计是在特征层而非像素层预测未来条件,规避像素噪声、预测更稳。参考图像条件 I₀ 的处理沿用 VideoLDM(Align-your-Latents)的做法。
条件编码器细节(Table 4,逐层输出尺寸):
| 条件 | 层 | 输出尺寸 |
|---|---|---|
| 参考图 / HDMap(3 步下采样) | Conv2D 4×4 stride4 ×3 | H/4×W/4×4 → H/16×W/16×4 → H/64×W/64×8 |
| 3D 框 | FourierEmbedder + MLP | N×N_B×256 → 512 → 768 |
| 动作 | MLP | N×32 → N×128 |
每个卷积 / MLP 层后接 SiLU(Sigmoid Linear Unit)。动作预测头:对 Auto-DM 的多尺度 UNet 特征 U₀..U₃ 做平均池化,与编码后的动作特征 A_f(速度 + 偏航角)拼接,MLP 解码出未来动作;做轨迹评测时按 AD-MLP 的设定,A_f 额外从高层指令、加速度、历史轨迹抽取。
数据
- 数据集 nuScenes:700 训练视频 + 150 验证视频,每段约 20 秒、6 路环视相机、帧率 12 Hz,合计约 1M 视频帧可训。
- HDMap 条件:用 nuScenes-devkit 取 12 Hz 帧对应的 HDMap 标注(车道边界 / 车道分隔 / 人行横道 3 类),投影到像面。
- 3D 框条件:nuScenes 原生只有 2 Hz 3D 框标注,作者用 ASAP benchmark(Wang et al., CVPR 2023,引用 [68])补到 12 Hz;八角点投影到像面。HDMap 与 3D 框既可来自人工标注,也可来自预训练感知方法(LAV / BEVerse / UniAD)。
- 动作与文本:第二阶段用自车的偏航角 + 速度作为驾驶动作输入;从 nuScenes 标注抽场景描述(天气、时段)作文本条件。
- 合成数据增强(用于 3D 检测):把 DriveDreamer 用更高分辨率微调,可生成 768×448 高保真图,再 resize 回 nuScenes 原生 1600×900;从训练集随机取 4000 个样本(3D 框 + HDMap)生成多视角图像,与原训练集混合训检测器。
- 数据完全来自真实道路(区别于 Dreamer 系列的仿真 / 游戏数据),这是本文的立身之本。
训练方法
目标函数:与底层图像模型(SD)相同的噪声调度,前向逐步加噪 ε 到潜特征、训 ε_φ 预测噪声(Eq. 4,标准 DDPM L2);可训参数 φ 仅限门控自注意力 + 时序注意力 + 交叉注意力层。
两阶段流水线(Fig. 2):
- 第一阶段 · Step 1(图像):只喂单帧结构化条件、单帧图像监督,去掉时序注意力,让网络专注学交通结构约束、加速收敛。训 40 epochs,batch size 16。
- 第一阶段 · Step 2(视频):喂多帧结构化条件、视频监督,在 Step 1 权重上加入时序注意力层学时序动态。训 10 epochs,batch size 1,帧长 N=32,分辨率 448×256。
- 第二阶段(视频预测):输入初始观测 I₀,H₀,B₀ 与序列驾驶动作,期望产出未来驾驶视频 + 未来驾驶动作。具体预测 16 帧视频 I₁:₁₆ + 16 个未来动作(第 17–32 帧),训 10 epochs,batch size 1。
- 变分推断:把过程写成生成式概率模型(Eq. 7–10),因 h_t 的更新是确定性的,只需推断潜变量 s_t。沿用 MILE 推出变分下界,但未纳入 posterior/prior matching(作者实验发现简化版效果相当)。视频预测项建成高斯分布 → 用 MSE 优化;动作预测项建成 Laplace 分布 → 用 L1 优化。可学层分布在 ActionFormer、Auto-DM、VAE 视频解码器、动作解码器上。
- 合成数据 3D 检测:每个基线(FCOS3D、BEVFusion)训 12 epochs。
关键超参:全部实验在 A800 GPU 上;AdamW 优化器,学习率 5×10⁻⁵。
Infra(训练 / 推理工程)
- GPU:A800。GPU 数量、GPU-hours、并行策略、训练精度(fp16/bf16)均未披露。
- 推理:扩散多步去噪;推理 FPS / 控制频率 / 端上延迟 / 边缘硬件均未披露。世界模型此处定位偏离线(可控视频生成、数据增强、开环规划评测),论文未给实时性指标。
- 代码:官方研究代码于 2024-11-02 才放出(README News),后续维护迁到 GigaAI-research 组织;基础训练 / 测试 / 可视化文档见仓库 DOCS/。
评测 benchmark
全部为论文一手结果(nuScenes)。
① 合成数据增强 3D 检测(Table 1,训练时混入 4K 合成图)
| 方法 | 分辨率 | 数据 | mAP↑ | NDS↑ |
|---|---|---|---|---|
| FCOS3D | 1600×900 | 无合成 | 30.2 | 38.1 |
| FCOS3D | 1600×900 | +4K 合成 | 30.9 (+0.7) | 38.3 (+0.2) |
| BEVFusion | 704×256 | 无合成 | 32.8 | 37.6 |
| BEVFusion | 704×256 | +4K 合成 | 35.8 (+3.0) | 39.5 (+1.9) |
② 生成质量(Table 2,nuScenes 验证集,FID↓ / FVD↓)
| 方法 | 第一阶段(Auto-DM) | 第二阶段(ActionFormer) | FID↓ | FVD↓ |
|---|---|---|---|---|
| DriveGAN | - | - | 27.8 | 390.8 |
| DriveDreamer | ✗ | ✗ | 15.9 | 363.3 |
| DriveDreamer | ✓ | ✗(拼接基线) | 15.3 | 349.6 |
| DriveDreamer | ✓ | ✓ | 14.9 | 340.8 |
解读:即便不做第一阶段训练,DriveDreamer 的 FID/FVD 已远优于 DriveGAN(证明扩散主干的视觉理解力);加第一阶段(学结构信息)质量再升;ActionFormer 相比”动作特征直接与零填充结构条件拼接”的基线进一步提质(迭代更新未来结构比一次性拼接好)。
③ 开环规划(Table 3,nuScenes 验证集,沿用 ST-P3 设定,未来 3 秒轨迹)
| 方法 | 视觉 | 动作 | L2 Avg (m)↓ | Col Avg (%)↓ |
|---|---|---|---|---|
| ST-P3 | ✓ | 2.11 | 0.71 | |
| UniAD | ✓ | 1.65 | 0.31 | |
| AD-MLP | ✓ | 0.29 | 0.19 | |
| VAD | ✓ | ✓ | 0.37 | 0.14 |
| DriveDreamer | ✓ | ✓ | 0.29 | 0.15 |
DriveDreamer 平均 L2 轨迹误差仅 0.29 m,超过多模态方法 VAD;相对 AD-MLP [75] 报告的平均碰撞率下降 21%,说明学到的视觉特征对端到端安全驾驶有贡献。(注:nuScenes 开环 L2/碰撞率评测本身对 ego-status 敏感、AD-MLP 一路已把该榜刷到饱和,此处数值应作参考而非强因果结论。)
多视角一致性:Fig. 6 / Fig. 8 定性展示生成的多视角图像 / 视频在重叠区与真值条件对齐、视角一致且帧一致(无量化指标)。
创新点与影响
- 首个真实道路驱动的世界模型:把世界模型从游戏 / 仿真拉进真实驾驶场景,且联合产出高质量视频与合理驾驶策略,成为”driving world model”这条线的开山之作之一。
- Auto-DM + 两阶段流水线:用冻结的 SD 主干 + 结构化交通条件压搜索空间,先学结构、再学时序、最后学预测,显著加速世界模型收敛(消融见 Table 2)。
- 结构化交通条件接入:HDMap 走空间拼接、3D 框走门控自注意力、文本走交叉注意力、时序走时序注意力,这套”多异构条件分路接入扩散”的模板被后续大量驾驶生成工作沿用。
- ActionFormer 特征层预测:用 GRU 在特征层迭代预测未来交通结构,把”动作 → 未来场景”的可交互性引入扩散世界模型,避开像素层预测噪声。
- 落地价值:合成数据把 BEVFusion 的 mAP 抬 +3.0;开环规划与 VAD 持平。ECCV 2024 收录(Most Influential ECCV’24 榜第 15),直接催生 DriveDreamer-2、DriveDreamer4D 两代后续。
- 实际局限(据论文可推):正文主体是单视角视频(多视角仅在附录展开、且无量化一致性指标);规划为 nuScenes 开环评测而非闭环仿真;生成强依赖 HDMap / 3D 框这类结构化条件(需人工标注或预训练感知提供);未报任何实时性 / 推理成本指标,定位偏离线数据引擎与仿真。论文 Discussion 未显式列 limitation 章节。
原始链接
- arXiv abstract:https://arxiv.org/abs/2309.09777
- arXiv PDF:https://arxiv.org/pdf/2309.09777
- 项目主页(含全部演示视频):https://drivedreamer.github.io/
- 代码:https://github.com/JeffWang987/DriveDreamer (后续维护:https://github.com/GigaAI-research/DriveDreamer )
- HF 论文页:https://huggingface.co/papers/2309.09777
一手源存档(sources/)
- drivedreamer—project-page — 项目主页快照(作者 / 摘要 / 方法 / 演示视频清单 / BibTeX),来源 https://drivedreamer.github.io/
- drivedreamer—github-readme — GitHub README(News 时间线含 ECCV’24 收录与后续项目、Getting Started、BibTeX),来源 https://github.com/JeffWang987/DriveDreamer
- 论文全文:arXiv:2309.09777(arXiv 原文 PDF,不入 git;正文数字均取自此)