当前位置: 首页 > news >正文

FastGS学习1——论文整体学习

1.论文总体总结

1.1. Abstract

① 作者指出,现有 3DGS 加速方法的核心问题在于:
训练过程中无法有效控制高斯数量,导致大量冗余计算开销

② 作者提出FastGS,通过基于多视角一致性的高斯增殖与剪枝策略,在不牺牲渲染质量的前提下,大幅缩短训练时间。

③ FastGS 的关键贡献是:

  • 不依赖 budget 机制

  • 训练静态场景可压缩到100 秒以内

  • 在多个任务(动态重建、表面重建、SLAM)中具有良好泛化性

1.2. Introduction

① 作者回顾了 NeRF 与 3DGS 的发展,指出 3DGS 已经在渲染速度上占优,但训练仍然需要数十分钟

② 通过分析 vanilla 3DGS,作者认为瓶颈主要来自Adaptive Density Control(ADC)

  • densification:根据梯度复制 / 分裂高斯

  • pruning:根据 opacity / scale 删除高斯

③ 作者认为现有方法的问题在于:

  • densify 过度 → 高斯数量失控

  • prune 不精准 → 要么删不干净,要么质量下降

④ 核心观察:

一个有价值的高斯,应该在多个视角下都能改善重建质量

这与传统多视角几何中的Bundle Adjustment思想一致。

1.3. Method (FastGS)

1.3.1. Overview

① FastGS 不改变 3DGS 的整体训练流程,仅重新设计 ADC(densify + prune)。

② 核心思想是:
用多视角重建误差,衡量每一个高斯对整体重建质量的真实贡献

③ FastGS 包含三大模块:

  • VCD:Multi-view Consistent Densification

  • VCP:Multi-view Consistent Pruning

  • Compact Box:减少 rasterization 中的冗余 tile-Gaussian 对

1.3.2. Multi-view Consistent Densification (VCD)

① 传统 3DGS 的 densify 只看单视角梯度,容易生成只对单一视角有用的高斯。

② FastGS 的做法是:

  • 从训练集中随机采样 KKK 个视角(默认 10)

  • 对每个视角计算逐像素 L1 误差

  • 归一化后得到高误差区域 mask

③ 对每一个高斯 GiG_iGi​,统计:

  • 在多少视角中

  • 它的 2D footprint 覆盖了高误差像素

④ 定义 densification score:

si+=1K∑j=1K∑p∈ΩiI(Mjmask(p)=1)s_i^+ = \frac{1}{K} \sum_{j=1}^{K} \sum_{p \in \Omega_i} \mathbb{I}(M_j^{mask}(p)=1)si+​=K1​j=1∑K​p∈Ωi​∑​I(Mjmask​(p)=1)

⑤ 当 si+s_i^+si+​ 大于阈值时,才允许该高斯被 clone / split。

👉 这保证了:只有在多个视角下 consistently 处于高误差区域的高斯,才会被增殖

1.3.3. Multi-view Consistent Pruning (VCP)

① vanilla 3DGS 的 prune 主要依据 opacity / size,无法识别“多视角冗余高斯”。

② FastGS 在 VCD 的基础上,引入加权光度误差

Ejphoto=(1−λ)L1+λ(1−SSIM)E^{photo}_j = (1-\lambda)L_1 + \lambda(1-\text{SSIM})Ejphoto​=(1−λ)L1​+λ(1−SSIM)

③ 定义 pruning score:

si−=N(∑j=1K(∑p∈ΩiI(Mjmask(p)=1))⋅Ejphoto)s_i^- = \mathcal{N}\left( \sum_{j=1}^{K} \left( \sum_{p \in \Omega_i} \mathbb{I}(M_j^{mask}(p)=1) \right) \cdot E^{photo}_j \right)si−​=N​j=1∑K​​p∈Ωi​∑​I(Mjmask​(p)=1)​⋅Ejphoto​​

④ 含义:

  • 如果一个高斯在很多视角中

  • 覆盖了大量高误差像素

  • 且整体光度误差仍然很高

→ 说明它并没有有效改善重建质量,应当被删除

1.3.4. Compact Box

① vanilla 3DGS 使用 3-sigma rule 生成 2D 椭圆,容易产生大量无效 tile-Gaussian 对。

② FastGS 引入Compact Box

  • 基于 Mahalanobis distance

  • 剪掉对 tile 几乎没有贡献的 Gaussian–tile pair

③ 该模块仅影响 rasterization 阶段,不影响重建质量。

1.3.5. Optimization

① 优化目标与 vanilla 3DGS 相同:

L=(1−λ)L1+λ(1−SSIM)\mathcal{L} = (1-\lambda)L_1 + \lambda(1-\text{SSIM})L=(1−λ)L1​+λ(1−SSIM)

② FastGS 采用分阶段优化策略,减少不必要的参数更新频率。

1.4. Experiments

1.4.1. Dataset

① 静态场景数据集:

  • Mip-NeRF 360

  • Tanks & Temples

  • Deep Blending

② 扩展任务:

  • 动态场景重建

  • 表面重建

  • 稀疏视角

  • 大规模场景

  • SLAM

1.4.2. Implementation Details

① 训练统一 30k iterations
② 采样视角数 K=10K=10K=10
③ densify 默认到 15k iteration
④ GPU:RTX 4090

1.4.3. Baselines

① 对比方法包括:

  • 3DGS

  • Taming-3DGS

  • DashGaussian

  • Speedy-Splat

  • Mini-Splatting

1.4.4. Main Results

① 在多个数据集上,FastGS 达到:

  • 100 秒级训练时间

  • 高斯数量显著减少(最多减少 7×)

  • PSNR / SSIM 基本持平甚至更优

② FastGS-Big 版本在质量和速度上同时超过 DashGaussian。

1.4.5. Ablation Study

① 仅加 VCD:

  • 高斯数 ↓ 80%

  • 训练时间 ↓ 3×

② 仅加 VCP:

  • 冗余高斯显著减少

  • 质量几乎不变

③ Compact Box:

  • 训练再提速约 8%

1.4.6. Discussion

① FastGS 当前的瓶颈不在 ADC,而在训练迭代步数固定为 30k

② 作者认为未来可以:

  • 设计更快收敛的优化器

  • 使用 feed-forward 初始化模型

1.5. Related Work

① 高斯 densification 控制
② 高斯剪枝与压缩
③ 光栅化优化
④ 二阶 / 近二阶优化方法

1.6. Conclusions

FastGS 提出了一种简单、通用、有效的 3DGS 加速框架,核心在于:

用多视角一致性,严格约束每一个高斯的“存在合理性”。

该方法在多个任务中均表现出强泛化能力,为后续 3DGS 系列工作提供了一个非常稳健的加速范式。

2.心得:

Fast GS通过多视图一致的密度化(VCD)和多视图一致的剪枝(VCP)实现了达到和SOTA方法相似的指标的同时显著减少高斯数量,从而快速实现某一个场景的重建。并且测试了在动态场景重建,表面重建,稀疏图重建,大规模重建和SLAM等方法的通用性。实现了平均2-7倍的渲染速度。

http://www.cnnetsun.cn/news/107414.html

相关文章:

  • DTLN实时降噪技术:用AI算法打造纯净语音体验的完整指南
  • 移动端视频录制技术革新:基于MediaRecorder的高性能解决方案
  • EmotiVoice与RVC的区别是什么?一文讲清两者定位差异
  • EmotiVoice语音合成中断怎么办?常见错误排查
  • ComfyUI-SeedVR2视频超分插件完整安装与配置指南
  • 开源TTS新星崛起:EmotiVoice为何备受开发者青睐?
  • 记录Kibana多实例竞争导致的迁移锁
  • PySlowFast混合精度训练终极技巧:快速突破视频模型性能瓶颈的完整解决方案
  • 多肽合成丨HNGS14G CAS号: 330936-70-4
  • 43、Linux 网络安全:防火墙与认证机制深度解析(上)
  • 44、一次性密码与安全外壳:保障系统安全登录的有效手段
  • PostgreSQL pgvector扩展:向量相似性搜索的终极实践指南
  • 50、Linux系统安装与磁盘分区全攻略
  • 27、Linux 路由软件配置指南
  • KISS FFT轻量级信号处理终极指南:从入门到精通
  • 快速掌握X-AnyLabeling:GeCO模型在目标计数中的完整实践指南
  • Mac M1芯片运行EmotiVoice性能表现如何?
  • 如何快速构建Next.js多租户认证系统:终极完整指南
  • 计算机Java毕设实战-基于JAVA的北京市公交管理系统基于Java的城市公交查询管理系统的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 计算机Java毕设实战-基于SpringBoot的景点门票销售管理系统基于JAVA白云山景点门票销售管理系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 价值投资中的智能化精准癌症治疗系统分析
  • 前端一把梭,后端火葬场:别再让你的 Node.js 服务“裸奔”了
  • NVIDIA显卡配置实用手册:从日常应用到专业调校
  • 30、Shell脚本编写与Bash安装指南
  • 31、Bash使用与相关Shell比较全解析
  • 33、Bash 环境变量、操作符及选项全解析
  • 前端环境配置(nvm、nodejs、npm)
  • RK3588语音AI部署终极指南:算子兼容性深度优化与实战解决方案
  • EmotiVoice语音好奇感模拟促进知识探索
  • Abaqus轮轨瞬态动力学分析:从模型搭建到inp文件生成