图 1: LightGaussian 将大规模 3D 高斯溅射场景从 782 MB 压缩到 45 MB,同时将渲染速度从 144 FPS 提升至 237 FPS,视觉保真度损失几乎不可察觉。
想象一下,创建一个令人惊叹、照片般逼真的真实场景 3D 复制品,并可以实时探索。这正是*新视角合成 *(novel view synthesis) 的魅力——利用一组输入图像生成场景中未曾见过的视角。在该领域的最新突破中,**3D 高斯溅射 **(3D Gaussian Splatting, 3D-GS) 重新定义了速度与质量的平衡,使交互帧率下的场景逼真度达到令人惊叹的水平。
但问题在于: 模型体积巨大。一个复杂场景的存储可以轻松超过 1GB。这种数据膨胀让存储、分享和部署变得困难——尤其是在容量或带宽有限的设备上。而管理数百万个高斯点也会拖慢渲染速度。
问题是: 能否在不牺牲美感或速度的情况下为这些庞大的 3D 场景“瘦身”?来自德克萨斯大学奥斯汀分校和厦门大学的研究人员用 LightGaussian 给出了答案——这个压缩框架平均将 3D-GS 模型缩小 15 倍,同时渲染速度提升超过 60%,且质量损失几乎无法察觉。
本文将剖析 LightGaussian 的奥秘: 一个巧妙的三阶段流程——剪枝、知识蒸馏和自适应量化,将臃肿的 3D 资产转化为轻量高效的强力引擎。
背景: 3D 高斯溅射的兴起与“重量”
在了解 LightGaussian 之前,先看看它的基石——3D 高斯溅射。
多年来,**神经辐射场 **(NeRFs) 在新视角合成上设立了标杆,借助神经网络来建模场景,画质无与伦比——但渲染速度极慢 (每帧耗时数秒) ,限制了实时应用。
3D-GS 则走了另一条路: 不在网络中隐式建模,而是用数百万个微小的 3D “高斯点”显式表示。每个高斯点相当于一个半透明的彩色 3D 斑点,其属性包括:
- **位置 **(\(X\)) : 在 3D 空间中的坐标。
- **缩放 **(\(S\)) : 沿三个轴的尺寸。
- **旋转 **(\(R\)) : 取向。
- **不透明度 **(\(\alpha\)) : 透明程度。
- 颜色 (SH) : 由球谐函数系数决定,可随视角变换。
渲染时,系统将这些高斯点“溅射”到 2D 图像平面,并根据以下公式混合重叠高斯的贡献:
\[ C = \sum_{i \in N} c_i\, \alpha_i \prod_{j=1}^{i-1} (1 - \alpha_j) \]这种方法能在实时条件下生成高保真图像。然而,为了捕捉细节,3D-GS 会将最初的稀疏点云 (来自运动恢复结构)* 致密化*成数百万个高斯点——引入冗余,磁盘占用飙升。例如,Mip-NeRF 360 的 Bicycle 场景可达 1.4 GB。
LightGaussian 旨在保留 3D-GS 的视觉魔力,同时剔除冗余。
LightGaussian 方法: 精简 3D 的三阶段流程
图 2: LightGaussian 从训练完成的 3D-GS 模型开始,先 (1) 剪掉冗余高斯点,(2) 将高阶 SH 蒸馏成紧凑的低阶 SH,(3) 对低重要性高斯进行向量量化以更高效存储。
LightGaussian 的压缩分为三个协同步骤:
- 高斯剪枝与恢复: 剔除最不重要的高斯点而不丢失细节。
- 球谐函数蒸馏: 简化颜色模型同时保留复杂光照信息。
- 高斯向量量化 (VQ): 用紧凑码本存储部分高斯属性,最大程度节省空间。
步骤 1: 基于全局重要性分数的智能剪枝
缩小模型最简单的方式是直接删高斯点——但哪些该删呢?一种朴素方法是按不透明度低就剪,假设接近透明的重要性低。
图 3: 简单依赖不透明度的剪枝会误删包含重要精细细节的高斯点,导致画质下降。
仅凭不透明度并不可靠: 很多透明度低的高斯也蕴含关键几何信息。为此,研究团队设计了全局重要性 (GS) 分数:
\[ GS_{j} = \sum_{i=1}^{MHW} \mathbb{1}\!\big(G(X_j), r_i\big) \cdot \sigma_j \cdot T \cdot \gamma(\Sigma_j) \]其中:
- \(\mathbb{1}\!\big(\cdot\big)\): 判断高斯 \(j\) 是否在所有训练图像中对光线 \(r_i\) 有贡献 (命中次数) 。
- \(\sigma_j\): 高斯的不透明度。
- \(T\): 透射率,考虑光线上被其他点遮挡的影响。
- \(\gamma(\Sigma_j)\): 高斯的归一化体积,防止大背景高斯主导。
按 GS 分数排序,删掉分数最低的高斯。为填补剪枝留下的“空洞”,通过恢复 (协同适应) 过程,对剩余高斯进行约 5000 次迭代的微调,重建场景保真度。
图 5: 剪枝后的高斯点可视化,即使移除了数百万个点,压缩场景仍保持较高 SSIM。
步骤 2: 低阶球谐函数蒸馏颜色信息
即便剪枝后,每个高斯的大部分数据——81.3%——仍来自 SH 系数 (如三阶 SH 需 48 个浮点数) 。降阶 (如三阶降到二阶) 可大幅节省存储,但可能丢失镜面高光等效果。
LightGaussian 用知识蒸馏解决:
- 将原高阶 SH 模型作为教师;
- 训练低阶 SH 模型为学生;
- 在师生输出间用 L2 像素级损失。
为提高学习质量,作者加入伪视角增强: 基于训练视角轻微扰动生成合成相机位姿,让学生在多角度下捕捉复杂光照。
\[ \mathcal{L}_{\text{distill}} = \frac{1}{HW} \sum_{i=1}^{HW} \left\| C_{\text{teacher}}(r_i) - C_{\text{student}}(r_i) \right\|_2^2 \]步骤 3: 重要性感知向量量化
最后一步用向量量化压缩剩余 SH 数据——用小型**码本 **(聚类中心) 的索引表示向量,降低存储。
LightGaussian 仅对 SH 应用 VQ,且仅针对按 GS 分数衡量的重要性最低的 60% 高斯点。关键高斯保留全精度 float16 SH;其他属性 (位置、缩放、旋转、不透明度) 直接存储,以防损精。
这种重要性感知 VQ能显著压缩,同时几乎不影响视觉效果。
结果: 轻量且快速
表 1: 在大规模数据集上,LightGaussian 在速度、体积和质量间取得最佳平衡。
在 Mip-NeRF 360:
- 体积从 **782 MB → 45 MB **(缩小 17 倍) ;
- FPS 从 144 → 237;
- SSIM 几乎不变 (0.813 → 0.806) 。
在 Tanks & Temples:
- 体积从 433 MB → 25 MB;
- FPS 提升超过两倍。
图 4: LightGaussian 与原 3D-GS 的残差图显示差异几乎可忽略。
从视觉效果看,镜面反射和精细几何依旧保留。即便是像素级残差图也仅有极微小差异。
消融研究洞见: 三阶段缺一不可
表 2: 移除任一阶段都会降低压缩效果或画质。
主要结论:
- 剪枝 + 恢复可弥补单剪枝的质量损失。
- 蒸馏 + 伪视角在降低 SH 阶数下仍能保持高画质。
- 选择性 VQ在保持高保真的同时产生最小模型。
图 6: 质量在剪枝率超过约 70% 或 VQ 覆盖超过 65% 高斯前保持较高水平。
更广泛的影响
LightGaussian 将结构化剪枝、逐视角蒸馏与针对性量化结合,实现:
- 高保真 3D 场景的极小体积化;
- 大型环境的实时渲染速度;
- 在资源有限平台上推广照片级 3D 内容。
其剪枝技术也可应用于其他基于高斯的方法 (如 Scaffold-GS) ,成为点云类 3D 格式的通用优化工具。
结论
LightGaussian 是高效 3D 内容创作的重要里程碑:
- 平均压缩 15 倍;
- 速度提升 1.6 倍;
- 质量损失可忽略。
通过多层次地深思冗余优化,LightGaussian 重塑了大规模新视角合成的可行性。它为便携、互动、照片级逼真的 3D 世界——从 AR 应用到数字孪生——打开了大门,这些世界不仅惊艳,还轻快高效。