Voyager: Long-Range and World-Consistent Video Diffusion for Explorable 3D Scene Generation
Harbin Institute of Technology; Southeast University; Tencent Hunyuan; City University of Hong Kong
一句话总结
Voyager 是一个世界一致的视频扩散框架,从单张图像和用户指定的相机轨迹出发,联合生成对齐的 RGB 与深度视频序列,配合可扩展的世界缓存与自回归采样,实现长程、几何一致、可端到端重建的可探索 3D 场景生成。
研究背景
游戏、影视、机器人仿真等应用都需要用户可以沿自定义相机轨迹自由探索的高保真 3D 场景。传统流程依赖手工布局、资产制作与场景组合,成本高;而近年基于数据驱动的方法虽然能生成物体或简单场景,却受限于高质量 3D 场景数据稀缺,难以扩展到复杂大场景。
一批工作转向用新视角合成(NVS)与视频生成来做世界建模,但仍存在三个核心挑战:
- 长程空间不一致:缺乏显式 3D 结构约束,在长相机轨迹下难以维持空间一致与连贯的视角切换。
- 视觉幻觉:部分方法用点云渲染的部分 RGB 图作为条件,但在复杂遮挡场景中会产生错误遮挡等伪影,给训练引入错误监督。
- 事后 3D 重建:即便生成的画面好看,仍要额外跑 structure-from-motion 或多视角立体等重建步骤,耗时且引入几何误差。
Voyager 针对这三点,提出一个能直接产出带相机参数的 RGB-深度帧、支持长程世界探索的世界一致视频扩散框架。
方法
给定一张输入图像 \(I_0 \in \mathbb{R}^{3\times H\times W}\),目标是依据用户定义的相机轨迹构建可探索世界。方法基于 Hunyuan-Video 的全注意力 DiT(双流到单流混合结构),围绕四个部分展开。
几何注入的帧条件
单纯用相机参数作隐式条件对视频模型训练不友好;用点云渲染的部分 RGB 图 \(\hat{I}_v\) 作显式条件又会在复杂遮挡下产生视觉幻觉。作者引入与部分 RGB 对齐的部分深度图作为额外几何条件:先估计每帧深度 \(D_k\) 与相机参数 \(c_k\),把首帧深度 \(D_0\) 用 \(c_0\) 投影为点云 \(p_0\);对第 \(k\) 帧,用渲染掩码 \(M_k = \mathrm{render}(p_0, c_k)\) 遮挡不可见区域,得到部分图像 \(\hat{I}_k\) 与部分深度 \(\hat{D}_k\)。相比部分 RGB,部分深度能更准确地表达遮挡关系。
世界一致视频扩散
常规做法是把条件隐变量 \(z_{rgb}\)、\(z_{depth}\) 与噪声隐变量 \(z_t\) 沿通道拼接后投回 Transformer 维度:
\[z'_{t,0} = f_{emb}(\mathrm{concat}(z_t, z_{rgb}, z_{depth}))\]
再依次送入双流块与单流块:
\[z'_{t,i}, z'_{y,i} = f^i_D(z'_{t,i-1}, z'_{y,i-1}, t),\quad i = 1,\dots,N_D\]
\[z''_{t,i} = f^i_S(z''_{t,i-1}, t),\quad i = 1,\dots,N_S\]
但这种仅在通道维注入的方式对缺失区域大小变化(从小裂缝到大片空白)适应力弱。
深度融合生成:作者不只把部分深度当输入,而是让模型同时生成完整的 RGB 与深度帧,从而利用 DiT 全注意力让视觉与几何信息在像素级交互。把 RGB 与深度沿高度轴拼接 \(I_k = [I_k, \Phi, D_k]_h\)(中间加占位行 \(\Phi\) 帮助模型分离两类内容),条件图 \(\hat{I}_k = [\hat{I}_k, \Phi, \hat{D}_k]_h\)、掩码 \(M_k = [M_k, \Phi, M_k]_h\) 同理,新的隐变量为 \(z'_{t,0} = f_{emb}(\mathrm{concat}(z_t, \hat{z}_0, m))\),其中 \(m\) 是掩码经最大池化下采样的结果。
基于上下文的控制增强:仅在输入端拼接条件会导致几何约束偏弱、生成帧与条件错位。作者复制双流与单流的首个块作为控制块 \(\hat{f}_D\)、\(\hat{f}_S\),用早期富含上下文的隐特征逐块注入:
\[z_D = \hat{f}_D(z'_{t,0}),\quad z_S = \hat{f}_S(z_D)\]
\[z'_{t,i} = z'_{t,i} + l_D(z_D),\quad z''_{t,i} = z''_{t,i} + l_S(z_S)\]
其中 \(l_D\)、\(l_S\) 是零初始化线性层,从而在每个块强化像素级可控性。
长程世界探索
自回归天然适合长程甚至无限视频生成,但视频扩散模型记忆有限,只能条件于少数前置帧,导致信息丢失。Voyager 用点云条件作为可扩展的历史存储:
- 世界缓存与点剔除:把生成的 RGB-D 帧按相机参数投影到 3D 得到点云 \(\hat{p} \in \mathbb{R}^{(T\times H\times W)\times 3}\)。随视频延长点数可达百万级。作者逐帧增量维护世界缓存:从当前视角渲染可见性掩码 \(M = \mathrm{render}(\hat{p}, c_i)\),把不可见区域的新点先加入缓存;对可见区域,若已有点的表面法线与当前视线夹角超过 90 度(说明该点在当前视角其实看不到),也把新点更新进缓存。该策略约减少 40% 存点,同时避免多帧聚合引入噪声。
- 平滑视频采样:世界缓存让模型能访问完整历史空间信息,但各段独立生成时仍可能有色差,不能直接拼接。作者把输入视频切成有重叠的片段(重叠区为半段长),用上一段生成结果初始化当前段重叠区的噪声;相邻两段推理完后,对重叠区做平均并注入轻量噪声,再做一轮去噪细化过渡,从而在高效多段生成的同时保持连续帧视觉一致。
可扩展视频数据引擎
训练需要大规模带相机参数与深度的视频,但现有数据集缺这些标注。作者构建自动标注引擎:
- 数据整理:选用 RealEstate(74,766 段,室内为主)与 DL3DV(从 10K 中筛 3,000 段高质量视频,切成约 18,000 段),另收集 1,500 个 Unreal Engine 场景模型渲染出 10,000+ 样本,最终汇总超过 100,000 段视频。
- 数据标注:先用 VGGT 估计所有帧的相机参数与深度(与位姿对齐但精度不足),再用 MoGE 作鲁棒深度估计并以最小二乘对齐两套深度;最后用 Metric3D 估计场景度量深度范围,把深度映射到该范围以统一尺度。这样可对任意来源视频自动标注相机与深度。
实验结果
新视角合成(RealEstate10K,150 段测试):Voyager 在 PSNR/SSIM/LPIPS 上均优于 SEVA、ViewCrafter、See3D、FlexWorld。
| 方法 | PSNR↑ | SSIM↑ | LPIPS↓ |
|---|---|---|---|
| SEVA | 16.648 | 0.613 | 0.349 |
| ViewCrafter | 16.512 | 0.636 | 0.332 |
| See3D | 18.189 | 0.694 | 0.290 |
| FlexWorld | 18.278 | 0.693 | 0.281 |
| Voyager | 18.751 | 0.715 | 0.277 |
高斯泼溅重建(RealEstate10K):基线需额外用 VGGT 做事后重建,而 Voyager 直接生成的深度可用于重建且效果更好。
| 方法 | 事后重建 | PSNR↑ | SSIM↑ | LPIPS↓ |
|---|---|---|---|---|
| SEVA | VGGT | 15.581 | 0.602 | 0.452 |
| ViewCrafter | VGGT | 16.161 | 0.628 | 0.440 |
| See3D | VGGT | 16.764 | 0.633 | 0.440 |
| FlexWorld | VGGT | 17.623 | 0.659 | 0.425 |
| Voyager | VGGT | 17.742 | 0.712 | 0.404 |
| Voyager | 无 | 18.035 | 0.714 | 0.381 |
世界生成(WorldScore 静态基准,2,000 例):Voyager 取得最高综合分 77.62,主观质量最高(71.09),并且因为条件用度量深度,其相机运动幅度比其他方法更大(更难生成)。
| 方法 | 综合 | 相机控制 | 内容对齐 | 3D 一致 | 主观质量 |
|---|---|---|---|---|---|
| WonderJourney | 63.75 | 84.6 | 35.54 | 80.6 | 66.56 |
| WonderWorld | 72.69 | 92.98 | 71.25 | 86.87 | 49.81 |
| EasyAnimate | 52.85 | 26.72 | 50.76 | 67.29 | 50.31 |
| Gen-3 | 60.71 | 29.47 | 50.49 | 68.31 | 63.85 |
| CogVideoX-I2V | 62.15 | 38.27 | 36.73 | 86.21 | 62.44 |
| Voyager | 77.62 | 85.95 | 68.92 | 81.56 | 71.09 |
消融:在 WorldScore 上,RGB-only → RGB-D 使相机控制从 74.98 提升到 85.04、内容对齐从 48.92 到 65.72、3D 一致从 68.86 到 78.58;加控制块后进一步到 85.95 / 68.92 / 81.56。长程部分,点剔除加法线检查在几乎不损画质的前提下省约 40% 存储;平滑采样让相邻片段过渡无缝。
应用包括:长视频生成(三段不同轨迹拼接)、图生 3D(多物体组合的空间关系比 Trellis、Rodin、Hunyuan-3D 更准确)、深度一致的视频风格迁移(只换参考图保留深度条件即可改风格或改成夜景)、视频深度估计。
亮点与局限
亮点:
- 首个联合生成 RGB 与深度序列、且带相机轨迹条件的视频扩散模型,端到端产出可直接重建的世界,省去事后 SfM/MVS。
- 用部分深度图替代部分 RGB 作几何条件,天然规避复杂遮挡下的视觉幻觉;深度融合让 RGB 与几何在 DiT 全注意力中像素级交互。
- 世界缓存加点剔除(法线检查)把历史信息用可扩展点云表达,支持自回归无限扩展并省约 40% 存储;平滑采样解决片段拼接色差。
- 可扩展数据引擎用 VGGT + MoGE + Metric3D 自动标注相机与统一尺度的度量深度,无需人工 3D 标注就凑出 10 万级训练数据。
局限:
- 依赖多个现成模型(VGGT、MoGE、Metric3D)级联标注,深度尺度与位姿的误差可能传播到训练与生成。
- 长程生成仍是分段自回归 + 平滑采样,非真正端到端长程建模,重叠段与多轮去噪带来额外开销。
- 训练数据以室内房产与合成场景为主,对更开放、多样的室外复杂场景泛化能力有待验证。
- 生成质量依赖首帧深度估计与世界缓存的准确性,累积误差在超长轨迹下的表现文中未充分展开。
延伸思考
- 深度融合的思路可推广到更多几何量(法线、语义、材质)的联合生成,是否存在比沿高度轴拼接更优的多模态排布方式值得探索。
- 世界缓存本质是显式点云记忆,若与隐式神经场或 3DGS 表达结合,可能在存储效率与渲染一致性上进一步平衡。
- 用度量深度作条件让相机运动幅度更大,说明几何先验的强度直接影响可控范围;如何在缺乏可靠度量深度的野外数据上保持这一优势是关键。
- 分段平滑采样是当前长程一致性的工程折中,能否用滑窗稀疏注意力或状态空间模型统一处理,减少人工分段与重复去噪,是长视频世界模型的共性方向。