Generating 360° Video is What You Need For a 3D Scene
Yale University; Adobe Research
一句话总结
WorldPrompter 提出以 360° 全景视频作为 3D 场景的中间表示,用文本条件的全景视频扩散模型一次性生成一段”人在场景中行走拍摄”的全景视频,再经前馈式 3DGS 重建得到可自由漫游的 3D 场景,从而绕开 3D 场景数据稀缺、逐视角外扩导致全局失真的难题。
研究背景
场景级 3D 生成近年受到广泛关注,但直接生成 3D 场景受限于高质量 3D 场景数据的稀缺,难以泛化到真实场景。现有主流做法多依赖图像扩散模型逐视角生成:
- 单视角方法(如 LucidDreamer、RealmDreamer)用单视角扩散加单目深度估计,从一个视角向另一个视角逐步以 2D 补绘(inpainting)扩展场景,但生成的 3D 场景可视范围有限、不可自由漫游。
- 全景方法(如 DreamScene360、LayerPano3D)借助全景图扩大视角覆盖,但仍依赖外扩补绘(outpainting)填补缺失区域,可漫游范围受限,且视角切换时常产生扭曲。
作者观察到,逐视角外扩范式的根本问题在于它假设新内容可以基于已生成内容独立地顺序合成,而视觉内容实际上是全局互相关联的,因此这类方法虽然局部看似合理,却存在明显的全局失真。为此,本文主张一次性生成一个最大可漫游的场景以保证全局一致,并借鉴传统 3D 采集与视频生成的进展,采用视频作为可扩展的中间表示。进一步地,相比透视相机,全景相机能直接捕获环境的整个周围,天然适合场景重建。
方法
整体框架
WorldPrompter 是一个两阶段流水线:生成阶段用文本条件的 360° 全景视频扩散模型,从文本提示生成一段 10.6 秒(128 帧、12 fps)的全景行走视频;重建阶段先对全景帧做透视裁剪并用 COLMAP 估计相机位姿,再用前馈式重建模型 Long-LRM 构建可漫游的 3D 高斯泼溅(3DGS)场景。
flowchart LR
A[文本提示] --> B[360度全景视频扩散模型 DiT]
B --> C[128帧全景行走视频]
C --> D[每帧随机透视裁剪 120度视场]
D --> E[COLMAP 估计相机位姿]
E --> F[转换为 Plücker 射线]
F --> G[Long-LRM 前馈重建]
G --> H[可漫游 3DGS 场景]
关键设计 1:全景视频作为 3D 场景代理
不同于逐视角外扩,作者将”人手持全景相机走过场景”的 360° 视频作为显式的 3D 场景代理。全景相机一次性捕获全部周围环境,配合视频的时序连续性,天然携带跨视角、跨位置的全局一致信息;同时视频数据比网格、点云等 3D 格式更易规模化采集,为生成模型提供了强泛化所需的训练数据基础。
关键设计 2:混合图像与视频数据训练
从零训练全景视频生成器困难,作者以预训练的文本到视频扩散变换器(DiT)为骨干做微调。骨干将视频或图像经 3D VAE 编码为隐序列 \(x \in \mathbb{R}^{T \times 3 \times H \times W}\)(图像时 \(T=1\)),切分为视觉 token,与文本 token 拼接后由变换器 \(f_\theta(\hat{x}_t; c, t)\) 在每个时间步去噪。训练数据混合两部分:
- 约 1,700 段室内近静态全景视频(Ricoh Theta Z1 拍摄,用 LLaVA 生成描述),保证重建所需的几何一致性;
- 约 200,000 张野外全景图像(三脚架拍摄、无拍摄者,用 BLIP-2 描述),弥补视频以室内为主的偏差,提升对室外等多样场景的泛化。
图像被当作单帧视频,最终按 1/3 图像、2/3 视频的比例混合训练。
关键设计 3:掩码扩散损失
全景视频里拍摄者常出现在画面中,若直接训练会让模型在输出中生成”拍摄者”,妨碍后续重建。作者用预训练分割模型逐帧掩掉拍摄者,并合并 128 帧的掩码以减小分割误差,同时保守地掩掉全景等距柱状帧底部(相机设备与手)。掩码扩散损失只在有效区域计算:
\[\mathbb{E}_{x \sim p_{\text{data}},\, t \sim U(0,1)}\left[\lVert M \odot (\epsilon_t - f_\theta(\hat{x}_t; c, t)) \rVert^2\right]\]
其中 \(M[i,j]=1\) 表示该区域计入损失,\(M[i,j]=0\) 表示排除(即可见的人)。由于底部像素缺乏监督,混合的图像数据可让模型智能地自动补绘底部,得到自然干净、可直接裁剪重建的全景视频。
关键设计 4:从生成视频到 3DGS 重建
对生成的 128 帧全景视频,每帧随机做 3 次视场 120°、分辨率 \(512 \times 512\) 的透视裁剪,得到 384 张透视图用于位姿估计。用 COLMAP 标定位姿(平均匹配率 94.6%,印证视角高度一致),随后沿相机路径随机取 32 个视角,将标定位姿转为 Plücker 射线输入 Long-LRM,前馈重建最终 3DGS 场景。生成视频还经 GAN 视频上采样 4 倍,从 \(352 \times 704\) 提升到 \(1416 \times 2832\)。
实验结果
在 ChatGPT 生成的 320 条场景描述测试集上,作者用 CLIP 距离(提示对齐)、Q-Align(图像质量)、VBench(美学/成像质量)以及 COLMAP 失败率(FR)与匹配率(MR,衡量多视角一致性)与 SOTA 全景视频生成模型 360DVD 对比。本文方法在各维度全面领先,尤其 COLMAP 匹配率达 94.6% 且零失败,说明生成视频可可靠用于 3D 重建。
| 方法 | CLIP↓ | Q-Align↑ | VBench↑ | COLMAP-FR↓ | COLMAP-MR↑ |
|---|---|---|---|---|---|
| 360DVD | 0.7643 | 0.6704 | 0.538/0.661 | 89.7% | 41.8% |
| Ours | 0.7387 | 0.8334 | 0.615/0.717 | 0% | 94.6% |
在文本到场景任务上,与 LucidDreamer、DreamScene360、LayerPano3D 对比(CLIP、Q-Align 以及 4AFC 用户研究的真实感/完整性/漫游一致性投票占比),本文在完整性(59%)与漫游一致性(55%)上优势尤为明显。消融显示:去掉图像数据会使视频质量下降、底部区域出现混乱内容;去掉掩码扩散损失则会在画面中暴露拍摄者与设备,阻碍完整重建。整个流水线约 15 分钟生成一个 GS 场景(视频生成约 10 分钟、重建约 5 分钟),微调在 32 张 A100 上进行 20,000 步、约 200 小时。
亮点与局限
亮点:
- 提出以 360° 全景视频作为可规模化的 3D 场景中间表示,一次性生成全局一致的场景,避免逐视角外扩带来的全局失真。
- 混合图像与视频数据训练,兼顾室内几何一致性与室外泛化能力,并让底部缺监督区域被自动补绘。
- 掩码扩散损失有效剔除拍摄者与相机设备,产出可直接用于透视裁剪与重建的干净全景视频。
- 端到端流水线约 15 分钟即可生成可自由漫游的 3DGS 场景,漫游范围与全局连贯性优于此前方法。
局限:
- 质量受全景视频生成器的长度与分辨率双重制约:更长的分钟级一致视频才能扩展到更大更精细的场景。
- 全景视频将像素分摊到整个 360° 内容以保证空间一致,同分辨率下细节不如透视视频,目前只能靠上采样缓解,更根本的方案是高分辨率视频生成器。
- 视频数据主要为室内近静态采集,对动态物体与更复杂室外场景的适应性仍受限。
延伸思考
- “用生成视频替代真实采集视频作为 3D 代理”这一思路,把 3D 生成难题转化为更成熟、数据更充裕的视频生成难题,是否可推广到动态 4D 场景生成,值得探索。
- 掩码扩散损失本质是”选择性监督”,在缺失真值区域依赖同分布图像数据补偿,这种”跨模态互补监督”或许可用于更多存在系统性遮挡或缺失的生成任务。
- 全局一致性目前靠全景视频的时序连续性隐式保证,且重建依赖 COLMAP 位姿与 Long-LRM 输入视角上限(32 个),若引入更强的几何先验或位姿无关重建,能否进一步扩大可漫游范围。
- 分辨率与序列长度的权衡是全景生成的共性瓶颈,探索分层或稀疏的全景表示以在有限算力下兼顾全局一致与局部细节,是该方向的关键。