MVSGaussian: Fast Generalizable Gaussian Splatting Reconstruction from Multi-View Stereo¶
会议: ECCV 2024
arXiv: 2405.12218
代码: https://github.com/TQTQliu/MVSGaussian
领域: 3D视觉 / 新视角合成
关键词: Gaussian Splatting, MVS, 泛化重建, 混合渲染, per-scene优化
一句话总结¶
将MVS的代价体深度估计与3D高斯溅射结合,通过混合渲染(splatting+volume rendering)提升泛化性,并提出基于多视图几何一致性的点云聚合策略,使per-scene优化仅需45秒就超越3D-GS的10分钟效果。
背景与动机¶
3D-GS虽然实现了实时高质量渲染,但依赖耗时的per-scene优化。现有前馈式泛化方法(PixelSplat等)要么限于图像对输入、要么计算开销大、要么仅适用于物体级重建。核心矛盾:3D-GS的参数化显式表示在不同场景间差异巨大,如何设计一个可泛化的表示来适配3D-GS?此外,splatting中高斯与像素的多对多映射关系比NeRF的体渲染更难泛化。
核心问题¶
如何构建一个高效的泛化式高斯溅射框架,既能在未见场景上前馈推理得到合理结果,又能在45秒内快速微调达到甚至超越3D-GS长时间优化的效果?
方法详解¶
整体框架¶
多视图输入 → FPN提取多尺度特征 → 可微单应性投影构建代价体 → 3D CNN正则化 → 深度估计 → 像素对齐3D点反投影 → 多视图特征聚合+2D UNet空间增强 → 解码高斯参数 → 混合渲染(splatting+depth-aware volume rendering取平均) → Cascade粗到细结构。
关键设计¶
- MVS驱动的像素对齐高斯表示: 用传统MVS的代价体流程估计深度,每个像素反投影到3D作为高斯中心。多视图特征通过pooling网络聚合,再用2D UNet增强空间感知(因为splatting中每个高斯影响多个像素的区域)。
- 混合高斯渲染: 纯splatting的多对多映射(一个高斯贡献多个像素,一个像素被多个高斯影响)难以泛化。创新性地加入一个简单的depth-aware volume rendering分支(每条射线只采一个点),形成一对一映射作为补充。两个渲染结果取平均。消融显示此设计提升显著(比纯splatting或纯VR都好)。
- 几何一致性点云聚合: 泛化模型生成的多视角高斯点云作为per-scene优化的初始化。但直接拼接会引入大量噪点,体素下采样又会丢失有效点。通过计算不同视角间的深度重投影误差,动态检查几何一致性,只保留在多个视角都consistent的点。
- 直接回归RGB而非SH: 发现泛化场景下学习球谐系数反而退化,直接用MLP解码RGB效果更好。
损失函数 / 训练策略¶
- 泛化模型: MSE + λs×SSIM + λp×Perceptual loss (Cascade各阶段加权求和)
- Per-scene优化: L1 + D-SSIM (与原版3D-GS一致)
- 训练时随机采样2/3/4个源视图(概率0.1/0.8/0.1),增强视图数量的泛化性
实验关键数据¶
| 数据集 | 指标 | MVSGaussian | 3D-GS(10min) | ENeRF | 提升 |
|---|---|---|---|---|---|
| DTU(泛化) | PSNR | 28.21 | - | 27.61 | +0.60 |
| LLFF(泛化) | PSNR | 24.07 | - | 23.63 | +0.44 |
| LLFF(45s优化) | PSNR | 26.98 | 23.92(10min) | 24.89(1h) | +3.06 |
| NeRF Syn(50s优化) | PSNR | 32.20 | 31.87(7min) | 27.57(1h) | +0.33 |
| 渲染速度 | FPS | 350+ | 350 | 14 | 实时 |
| 优化时间 | 秒 | 45 | 600 | 3600 | 13.3x |
消融实验要点¶
- Cascade结构: 去掉后DTU掉1.5dB
- 混合渲染是关键: gs+vr(28.21) > 纯gs(27.48) > 纯vr(27.39)
- RGB vs SH: 直接回归RGB在NeRF Synthetic上比SH好2dB+
- 一致性检查聚合: PSNR 26.98 > 体素下采样 26.72 > 直接拼接 26.18,且优化更快(45s vs 90s)
亮点¶
- 混合渲染的洞察: splatting的多对多映射是泛化的瓶颈——用简单的一对一volume rendering补充,两者互补效果出色
- 45秒超越3D-GS: 高质量初始化+几何一致性筛选是关键——证明"好的初始化值千步优化"
- 视图数量无关设计: 训练时混用2/3/4视角,测试时任意数量都能用
局限性 / 可改进方向¶
- 继承MVS的局限:弱纹理和高反射区域深度估计不准
- 泛化模型仅在DTU训练,场景多样性有限
- 可探索将混合渲染insight迁移到更大规模场景(如城市级)
与相关工作的对比¶
- vs MVSplat: 都用MVS的代价体做深度估计,但MVSGaussian额外用混合渲染提升泛化+提供per-scene优化支持;MVSplat更轻量但不支持per-scene优化
- vs PixelSplat: MVSGaussian支持多视图输入(不限于双视图)、计算开销更小、DTU上PSNR好14dB
- vs 3D-GS: MVSGaussian通过前馈泛化提供优质初始化,45秒优化就超越3D-GS的10分钟结果
启发与关联¶
- 混合渲染(splatting+VR)的思路可迁移到其他需要泛化的3D任务
- 几何一致性点云筛选策略对任何基于点云的3D重建都有参考价值
- 与MVSplat形成ECCV2024的"MVS+3DGS"双子星,说明这个方向很有价值
评分¶
- 新颖性: ⭐⭐⭐⭐ 混合渲染设计巧妙,但整体框架是MVS+3DGS的组合
- 实验充分度: ⭐⭐⭐⭐⭐ 四个数据集、详尽消融、per-scene breakdown
- 写作质量: ⭐⭐⭐⭐ 条理清晰,消融分析充分
- 价值: ⭐⭐⭐⭐⭐ 实用性极强,45秒快速优化对实际应用非常有价值