跳转至

Bolt3D: Generating 3D Scenes in Seconds

会议: ICCV 2025
arXiv: 2503.14445
代码: szymanowiczs.github.io/bolt3d (项目主页,代码未开源)
领域: 3D视觉 / 3D场景生成 / 新视角合成
关键词: 潜在扩散模型, 3D高斯表示, 前馈式生成, 几何VAE, Splatter Image
作者: Stanislaw Szymanowicz, Jason Y. Zhang, Pratul Srinivasan, Ruiqi Gao, Arthur Brussee, Aleksander Hołyński, Ricardo Martin-Brualla, Jonathan T. Barron, Philipp Henzler (Google Research / Oxford)

一句话总结

提出一种基于潜在扩散模型的前馈式3D场景生成方法,通过将3D场景表示为多组Splatter Image并使用专门训练的几何VAE,在单GPU上7秒内生成完整3D场景,推理成本比优化式方法(CAT3D)降低300倍。

背景与动机

  1. 2D生成模型无法直接输出3D场景:现有图像/视频生成模型产出2D内容,无法用于交互式可视化和编辑
  2. 3D数据极度稀缺:相比海量2D图像数据,"真实3D场景"数据非常有限,直接训练3D生成模型困难
  3. 现有3D生成方法效率低下
  4. 基于多视角扩散+逐场景优化的方法(如CAT3D):生成800张图 → 再优化3DGS/NeRF,需分钟级甚至小时级
  5. 前馈回归方法(Flash3D, DepthSplat):速度快但无法处理歧义性(unseen区域模糊)
  6. 前馈生成方法(LatentSplat, Wonderland):要么限于单类别,要么依赖视频模型速度慢(5分钟/场景)
  7. 核心矛盾:如何在保持高质量3D生成的同时实现秒级推理?

核心问题

如何设计一个直接输出可渲染3D场景表示的扩散模型,同时:(1) 利用成熟的2D扩散架构保持可扩展性和泛化能力;(2) 准确建模3D几何而非仅生成2D图像;(3) 处理未观测区域的歧义性?

方法详解

整体框架

Bolt3D 采用两阶段前馈管线: 1. 多视角潜在扩散模型:接收1-4张带位姿的输入图像 + 目标相机位姿 → 联合去噪生成16个视角的外观潜码 + 几何潜码 2. VAE解码:外观潜码用预训练图像VAE解码为RGB图像,几何潜码用专门训练的几何VAE解码为pointmap(逐像素3D坐标) 3. Gaussian Head:接收解码后的图像、pointmap和相机位姿 → 前馈预测每个像素对应3D Gaussian的不透明度、协方差矩阵和精修颜色 → 形成Splatter Image 4. 所有Splatter Image合并为完整的3D Gaussian场景

关键设计

  1. 分解采样策略(Factorized Sampling)
  2. 将3D Gaussian参数分解为两部分:颜色+3D位置由扩散模型生成(可直接从图像+SfM获取监督),不透明度+协方差由确定性Gaussian Head预测(用渲染损失监督)
  3. 动机:颜色和3D位置可从密集SfM获取伪真值,而不透明度和协方差的直接监督难以获得;但给定颜色和位置后,后者的歧义性大幅降低

  4. 几何变分自编码器(Geometry VAE)

  5. 编码器:卷积结构,输入pointmap(3D坐标图)+ camera raymap(6D射线图),编码为64×64×8的潜码
  6. 解码器:采用Transformer架构(ViT-B, 12层, 768维, patch size 2, 序列长度1024),而非传统卷积解码器
  7. 关键发现:预训练图像VAE完全不适用于几何数据——在unbounded真实场景上灾难性失败(AbsRel从0.67%暴涨到15-18%)
  8. 训练损失:重建损失(带距离加权)+ KL散度 + 梯度损失(提升边界清晰度)
  9. 分辨率:256×256训练3M iterations → 512×512微调250k iterations

  10. 多视角几何潜在扩散模型

  11. 从预训练的多视角图像扩散模型(CAT3D)初始化,扩展输入通道以接受几何潜码(8D图像潜码 + 8D几何潜码 + 6D相机raymap + 1D条件掩码 = 23D输入)
  12. 使用v-参数化和v-prediction损失
  13. U-Net架构,在32×32及以下特征图上使用全3D注意力
  14. 先在8视角上训练700k iterations,再在16视角上微调70k iterations

  15. Gaussian Head(高斯头网络)

  16. 多视角设计:使用U-ViT架构,8个视角作为输入,通过cross-attention实现跨视角信息交互(决定可见性→调节不透明度)
  17. 4× patchification → Transformer块(3层, 128维, 8头)→ unpatchify
  18. 输出:3通道颜色 + 3通道尺寸 + 4通道旋转 + 1通道不透明度
  19. 训练:L2光度损失 + LPIPS感知损失(权重0.05)

损失函数 / 训练策略

三阶段训练

阶段 内容 训练量
Stage 1: Geometry VAE 256×256训练 → 512×512微调 3M + 250k iter
Stage 2: Gaussian Head 给定GT颜色和自编码几何 → 渲染损失 100k iter
Stage 3: 潜在扩散模型 从CAT3D初始化 → 8视角 → 16视角 700k + 70k iter

数据: - 对CO3D、MVImg、RealEstate10K、DL3DV-7K共约30万场景运行MASt3R获取稠密3D伪真值 - 额外使用合成数据(Objaverse + 内部物体数据集),合成:真实 = 1:2 - 几何VAE损失加权方案:远离场景中心的点赋予更低权重(\(w = \max(1, d^2)\)

实验关键数据

对比前馈回归方法

数据集 设置 方法 PSNR↑ SSIM↑ LPIPS↓ FID↓
RE10K 1-view Flash3D 17.40 0.699 0.419 96.9
RE10K 1-view Bolt3D 21.03 0.805 0.257 55.5
CO3D 1-view Flash3D 14.43 0.552 0.608 174.8
CO3D 1-view Bolt3D 16.78 0.562 0.505 97.5
DL3DV 2-view DepthSplat 16.25 0.515 0.465 95.9
DL3DV 2-view Bolt3D 17.75 0.551 0.392 64.5
DL3DV 4-view DepthSplat 19.48 0.638 0.327 58.8
DL3DV 4-view Bolt3D 20.64 0.653 0.310 48.2

→ 在1-view设置上提升最大(PSNR +3.63 dB),验证了生成式方法在歧义性建模上的优势。

对比前馈3D生成方法

数据集 设置 方法 PSNR↑ SSIM↑ LPIPS↓
RE10K 1-view Wonderland 17.15 0.550 0.292
RE10K 1-view Bolt3D 21.54 0.747 0.234
RE10K 2-view LatentSplat 22.62 0.777 0.196
RE10K 2-view Bolt3D 23.13 0.806 0.166

→ Wonderland使用视频模型需5分钟/场景,Bolt3D仅需6秒。

对比优化式方法(速度-质量权衡)

数据集 方法 PSNR↑ SSIM↑ LPIPS↓ FID↓ gpu-min↓
RE10K CAT3D 29.56 0.937 0.134 13.75 77.28
RE10K Bolt3D 27.00 0.905 0.154 27.40 0.25
LLFF CAT3D 22.06 0.745 0.194 37.54 80.00
LLFF Bolt3D 18.75 0.562 0.341 96.61 0.25
DTU CAT3D 19.97 0.809 0.202 41.76 72.00
DTU Bolt3D 18.59 0.738 0.312 67.49 0.25

→ 质量略低于CAT3D(PSNR差1-3 dB),但推理成本降低约300×(0.25 vs 72-80 gpu-min)。

消融实验要点

  1. 几何VAE消融
  2. 移除编码器训练 → AbsRel从0.67%升至1.63%
  3. 移除距离加权 → δ₁.₀₁从81.5%降至56.7%
  4. 移除梯度损失 → 重投影误差升至2.96

  5. Gaussian Head消融

  6. 移除cross-attention → PSNR从24.88降至23.80
  7. 完全移除Gaussian Head → PSNR降至21.94
  8. 从渲染损失学习XYZ → PSNR降至21.88(不如显式几何监督)
  9. 移除射线裁剪 → PSNR降至20.78

  10. 图像VAE vs 几何VAE

  11. 预训练图像VAE + 均值深度缩放 → 真实数据AbsRel=17.9%
  12. 专用几何VAE(本文)→ 真实数据AbsRel=0.67%(提升26×)
  13. 关键结论:图像VAE对bounded合成数据"凑合能用",但对unbounded真实场景彻底失败

亮点

  1. 极致的速度-质量权衡:H100上6.25秒(A100上15秒)即可生成完整3D场景,比CAT3D快300×,质量差距可接受
  2. 几何VAE的开创性分析:首次系统研究了3D几何数据的VAE设计,发现Transformer解码器比卷积解码器更适合几何数据(卷积产生弯曲伪影),且图像预训练VAE无法迁移到无界几何
  3. 分解采样的巧妙设计:把"可直接监督的"(颜色+位置)和"需要渲染损失的"(不透明度+协方差)分开处理,既利用了大规模SfM数据,又避免了不透明度/协方差的标注难题
  4. 2D扩散架构复用:将3D生成问题转化为多个2D Splatter Image的联合生成问题,复用了高度成熟的2D扩散架构和预训练权重
  5. 大规模伪真值数据构建:对30万场景运行MASt3R建立大规模几何数据集,解决了3D数据稀缺的瓶颈

局限性 / 可改进方向

  1. 薄结构处理困难:宽度小于8像素的结构(因几何VAE 8×下采样)难以重建
  2. 透明/高光表面失效:SfM在非朗伯表面上几何重建不准,影响训练数据质量
  3. 相机路径敏感:对目标相机的上方向和场景尺度敏感,需要更好的数据增强
  4. 视角数量受限:仅生成16个Splatter Image(vs CAT3D的800个),场景覆盖不完整 → 质量瓶颈
  5. 仅支持静态场景:未来可结合多视角视频扩散模型生成动态3D
  6. 深度 vs pointmap:本文选择压缩pointmap,但并发工作显示深度可能更优,值得探索
  7. FID指标较弱:在RE10K上FID为27.40(CAT3D为13.75),分布级别的视觉质量仍有差距

与相关工作的对比

方法 类型 3D表示 推理时间 输入 质量
Flash3D 前馈回归 3DGS ~秒 1-view 未见区域模糊
DepthSplat 前馈回归 3DGS ~秒 2-4 view 需特征匹配
LatentSplat 前馈生成(VAE-GAN) 3DGS ~秒 2-view 限于单类别/低分辨
Wonderland 视频模型+3DGS 3DGS ~5分钟 1-view 无显式几何模型
CAT3D 多视角扩散+优化 3DGS/NeRF ~5分钟(16GPU) 1-3 view 高质量但超慢
Bolt3D 潜在扩散(前馈) 3DGS ~7秒(1GPU) 1-4 view 接近CAT3D

核心区别:Bolt3D首次实现了"扩散模型直接输出3DGS"的端到端前馈范式,不需要后续优化。

启发与关联

  • 与"扩散增强稀疏视角3DGS"idea的关联:本文的Geometry VAE + 扩散采样 → 直接输出pointmap的范式,可以与开放词汇语义结合(参考 20260317_diffusion_view_augment_3dgs),在生成3D外观+几何的同时生成语义特征
  • 几何VAE的通用价值:本文证明了专用几何VAE(特别是Transformer解码器)对无界场景的必要性。这一组件可以迁移到其他需要潜在空间编码几何的任务(如3D补全、4D生成、机器人操作中的场景重建)
  • 分解采样的思想可推广:将"可直接监督的量"和"需渲染监督的量"分开建模的思路,适用于任何需要从不完美监督中学习的3D生成任务
  • 数据角度的启示:通过对已有多视角数据集运行SfM构建30万场景规模的几何数据集,这种"用计算换数据"的策略对3D领域意义重大

评分

  • 新颖性: ⭐⭐⭐⭐ 首次将潜在扩散模型与专用几何VAE结合实现秒级3D场景生成,分解采样策略巧妙;但核心组件(Splatter Image、多视角扩散)均为已有工作
  • 实验充分度: ⭐⭐⭐⭐⭐ 三类方法的全面对比(回归/前馈生成/优化式),5个数据集,详细的VAE消融和Gaussian Head消融,低分辨率公平对比
  • 写作质量: ⭐⭐⭐⭐⭐ 结构清晰,动机明确,图表丰富(交互式viewer),补充材料详尽
  • 价值: ⭐⭐⭐⭐⭐ 将3D场景生成从分钟级推向秒级,300×加速具有重大实用价值;几何VAE的分析为后续工作提供了重要指导