Composing Driving Worlds through Disentangled Control for Adversarial Scenario Generation¶
会议: CVPR 2026
arXiv: 2603.12864
代码: GitHub
领域: 自动驾驶
关键词: 驾驶世界模型, 解耦控制, 对抗场景生成, 噪声级身份注入, Flow Matching
一句话总结¶
提出 CompoSIA,一个组合式驾驶视频模拟器,将场景结构、物体身份和自车动作三个控制因素通过独立路径解耦注入 Flow Matching DiT,支持独立与组合编辑,实现系统性对抗场景合成,身份编辑 FVD 提升 17%,动作控制旋转/平移误差降低 30%/47%,下游规划器碰撞率平均提升 173%。
研究背景与动机¶
自动驾驶系统面临"长尾"安全关键场景的核心挑战:危险边缘案例通常来自常见交通元素的不常见组合(如卡车突然变道迫使急刹车),在 nuScenes、Waymo 等数据集中严重不足。为了有意构造此类对抗场景,生成模型需要对场景布局(哪些元素在哪里)、物体身份(元素长什么样)和自车行为(自车怎么运动)实现细粒度独立控制。
然而现有方法存在根本性缺陷: - DriveEditor 支持结构和身份编辑,但无法生成新视角或控制动作 - ReCamMaster 仅控制相机动作,无元素级结构/身份控制 - MagicDrive-V2 通过共享路径注入多条件,导致信号耦合和生成质量下降 - Vista 动作跟随精度不足,旋转和平移误差显著偏高
作者论证:解耦控制的关键在于将不同因素的信号注入到 diffusion 过程的不同层级,而非共享单一路径。
方法详解¶
整体框架¶
CompoSIA 基于 Wan2.1-T2V-1.3B 初始化的 Flow Matching DiT,为三类控制信号设计了独立的注入路径:
- 结构信号:3D bbox 序列投影到图像平面后经 VAE 编码,通过零初始化投影加法注入 latent tokens
- 身份信号:单张参考图在噪声空间中按 2D bbox 对齐后替换目标区域 latent,在高噪声阶段硬绑定
- 动作信号:帧级相机轨迹通过分层双分支机制——局部 AdaLN 残差调制 + 全局 PRoPE 注意力——注入
中间状态构造为 \(z_{(t)} = \sigma_t z_{(0)} + (1-\sigma_t) \epsilon\),监督目标为 v-prediction 损失 \(\mathcal{L}_{CFM} = \mathbb{E}_{\epsilon} \| v_\Theta(z_{(t)}, t) - (z_{(0)} - \epsilon) \|_2^2\)。训练模态比例为 0.6:0.3:0.1(仅动作 / 结构+身份+动作 / 无条件)。
关键设计¶
-
结构条件(Spatiotemporal Layouts):
- 功能:提供元素级空间位置和运动轨迹的显式约束
- 核心思路:每个场景元素用 3D bbox 序列 \(\bm{b} \in \mathbb{R}^{F \times 7}\)(位置、尺寸、朝向)表示,通过针孔投影转换到图像平面得到 \(\bm{b}_f\),经 VAE 编码和轻量卷积适配器处理为 layout tokens \(\bm{h}_{\bm{b}_f}\),通过零初始化投影加到 latent tokens:\(\bm{h}_{(t)} \leftarrow \bm{h}_{(t)} + f_{\text{zero}}(\bm{h}_{\bm{b}_f})\)
- 设计动机:3D 框投影到 2D 保证与 latent 空间对齐;零初始化确保训练初期不破坏预训练先验
-
噪声级身份注入(Noise-Level Identity Injection):
- 功能:从单张参考图精确注入元素身份外观,无需姿态对齐
- 核心思路:训练时随机选择一帧裁剪参考图,按 2D bbox 对齐贴回所有帧构造 identity cue \(\bm{r}_f\),在高噪声阶段(\(t > T_{id}=0.2\))将目标区域 latent 硬替换为参考图 latent:\(z_{(t)} \leftarrow \bm{m} \odot z_{\bm{r}_f(t)} + (1-\bm{m}) \odot z_{(t)}\),掩码 \(\bm{m} = \bm{m}_{\bm{r}_f} \cdot \mathbb{I}(t > T_{id})\)。采样时通过停止步 \(T_{id}=0.4\) 控制身份保真度与生成自由度的平衡
- 设计动机:注意力机制中身份约束越强运动表现力越差,噪声级注入在恢复过程中自然融合身份信息,同时避免低噪声阶段破坏去噪路径
-
分层双分支动作控制(Hierarchical Dual-Branch Action):
- 功能:精确控制自车运动轨迹,兼顾收敛速度和长程精度
- 核心思路:
- 局部分支:提取相邻帧相对位姿 \(\bm{a} = (\Delta x, \Delta y, \Delta \text{yaw}) \in \mathbb{R}^{F \times 3}\),经正弦频率编码后通过零初始化投影得到 6 通道 AdaLN 参数(self-attention 和 FFN 各 3 个:shift/scale/gate),实现帧级残差调制
- 全局分支:基于 PRoPE(Projective Positional Encoding)在 1/8 维度子空间中计算相机注意力,通过零卷积安全注入主注意力分支。\(D^{proj}\) 由相机内外参推导
- 设计动机:局部残差信号加速早期训练收敛但损失精确相机内参信息;全局 PRoPE 提供精确长程轨迹引导但收敛慢。两者互补,1/8 低维投影降低计算开销
损失函数 / 训练策略¶
- 损失:v-prediction CFM loss
- 训练配置:16× A100 (80GB),学习率动作投影器 \(2 \times 10^{-4}\),其他组件 \(1 \times 10^{-5}\),权重衰减 \(5 \times 10^{-2}\),约 20,000 步
- VAE 微调:去除时间下采样(stride 1 替代原始 4×),在 100h 自采数据上微调 7 天
- 训练数据:nuScenes 700 个多视角 20s 视频 + 100h 内部多视角自驾数据,10 Hz
- 混合分辨率:\(33 \times 256 \times 512\) 和 \(33 \times 480 \times 960\)
- 第一帧处理:背景区域替换为干净 latent 锚定场景身份;前景区域用参考图填充;中间区域作为 inpainting 区域
- 条件解耦:结构条件可泄漏动作信息(如周围车后移暗示自车前进),因此结构条件始终与动作配对训练
实验关键数据¶
主实验¶
视频生成质量与条件对齐(Tab. 2):
| 任务 | 方法 | FVD ↓ | VBench Score ↑ |
|---|---|---|---|
| 场景跟随 | MagicDrive-V2 | 152.80 | 77.23% |
| 场景跟随 | CompoSIA | 133.66 | 81.05% |
| 身份控制 | TTM | 231.17 | 75.16% |
| 身份控制 | LoRA-Edit | 161.32 | 79.83% |
| 身份控制 | DriveEditor | 179.57 | 79.13% |
| 身份控制 | CompoSIA | 149.15 | 80.30% |
| 动作控制 | ReCamMaster | 190.52 | 74.29% |
| 动作控制 | Vista | 171.49 | 75.35% |
| 动作控制 | MagicDrive-V2 | 279.61 | 73.44% |
| 动作控制 | CompoSIA | 137.21 | 80.79% |
动作控制精度(Tab. 3,TransErr ×1000):
| 方法 | RotErr ↓ (Following) | TransErr ↓ (Following) | RotErr ↓ (Editing) | TransErr ↓ (Editing) |
|---|---|---|---|---|
| ReCamMaster | 1.12 | 20.35 | 2.17 | 25.45 |
| Vista | 0.81 | 14.25 | 2.33 | 28.12 |
| MagicDrive-V2 | 0.76 | 13.66 | 2.21 | 22.86 |
| CompoSIA | 0.55 | 7.37 | 1.54 | 12.15 |
规划鲁棒性评估(Tab. 5,Epona 开环):
| 编辑类型 | L2 Avg ↓ | 碰撞率 1s | 碰撞率 2s | 碰撞率 3s | 碰撞率 Avg | 变化 |
|---|---|---|---|---|---|---|
| Following GT | 1.42 | 0.04% | 0.24% | 0.76% | 0.35% | — |
| Following Generation | 1.65 | 0.08% | 0.36% | 1.32% | 0.59% | — |
| Editing Structure | — | 0.72% | 2.68% | 5.28% | 2.89% | +390% |
| Editing Identity | 2.19 | 0.12% | 0.48% | 1.64% | 0.75% | +27% |
| Editing Action | 2.32 | 0.16% | 0.76% | 2.64% | 1.19% | +102% |
消融实验¶
动作条件分支消融(Tab. 4):
| 配置 | RotErr ↓ | TransErr ↓ |
|---|---|---|
| w/o 局部残差调制 (r.m.) | 2.84 | 15.80 |
| w/o 全局 PRoPE 注意力 (p.a.) | 0.62 | 11.24 |
| Full | 0.55 | 7.37 |
去掉局部残差调制后 RotErr 从 0.55 飙升至 2.84(+416%),说明局部分支对旋转控制至关重要;去掉全局 PRoPE 后 TransErr 从 7.37 升至 11.24(+53%),验证全局分支对平移精度的贡献。
关键发现¶
- 结构消融:去掉结构条件后周围车辆运动和空间对齐完全失效
- 动作消融:仅保留结构条件无法推断出自车运动,证明动作信号不会从结构中泄漏
- 身份停止步 \(T_{id}\):\(T_{id}=0.6\) 生成自由度高但身份偏离;\(T_{id}=0.2\) 身份保持强但过度锚定参考图;\(T_{id}=0.4\) 取最佳折中,且无需逐案例调整
- 身份注入附加收益:在复杂光照变化场景(如隧道穿行)中,噪声级身份注入显著减轻跨帧身份漂移
亮点与洞察¶
- 将驾驶场景生成建模为结构-身份-动作三因素组合问题,三类信号在 diffusion 过程的不同层级独立注入,是真正意义上的解耦而非共享路径
- 噪声级身份注入巧妙地将身份控制转化为扩散恢复问题,规避了注意力机制中身份与运动的天然冲突
- 下游规划器压力测试将世界模型从"数据合成器"提升为"可控模拟器",结构编辑使碰撞率飙升 390%,揭示了标准基准无法暴露的隐藏失败模式
- 分层双分支设计体现了局部快速收敛 vs 全局精确控制的优雅互补
局限与展望¶
- 身份编辑泛化受限于训练数据(主要为驾驶场景),对完全 OOD 类别(如动物)效果差,需要更多样化视频数据扩展
- 身份编辑管线需手动指定参考目标的近似 3D bbox 尺寸(目前通过 Gemini 辅助估计),仍为半自动流程
- 仅在 nuScenes 上评估规划鲁棒性,缺少 Waymo 等更大规模数据集的验证
- 未探索多智能体交互的联合编辑(如同时控制多辆车的协调行为)
相关工作与启发¶
- vs DriveEditor:仅支持结构+身份编辑,无法生成新视角或控制动作,身份转移偏离原始参考
- vs MagicDrive-V2:结构和动作通过共享路径注入导致耦合,场景跟随 FVD 152.80 vs 133.66,动作跟随 TransErr 13.66 vs 7.37
- vs ReCamMaster:仅控制相机动作,FVD 190.52,无元素级结构/身份控制
- vs Vista:动作跟随精度差(RotErr 0.81 vs 0.55,TransErr 14.25 vs 7.37)
- vs TTM:训练无关的采样策略难以在精确运动下保持身份控制,FVD 231.17
- 解耦控制的设计范式可推广到其他多条件可控生成任务(如室内场景、机器人操作视频)
- 噪声级注入 vs 注意力级注入的权衡是可控生成领域的关键设计选择
评分¶
- 新颖性: ⭐⭐⭐⭐ 三因素解耦注入 + 噪声级身份控制 + 分层动作调制,系统性强
- 实验充分度: ⭐⭐⭐⭐ 三任务定量比较 + 多维消融 + 下游规划器压力测试
- 写作质量: ⭐⭐⭐⭐ 动机清晰,技术陈述精确,图表丰富
- 价值: ⭐⭐⭐⭐ 对自动驾驶安全评估和场景多样性有实际意义