SOGS: Second-Order Anchor for Advanced 3D Gaussian Splatting¶
会议: CVPR 2025
arXiv: 2503.07476
代码: 无
领域: 3D视觉
关键词: 3D高斯泼溅, 锚点特征增强, 二阶统计, 模型压缩, 选择性梯度损失
一句话总结¶
提出 SOGS,在基于锚点的 3D-GS 中引入二阶锚点(利用协方差矩阵捕获特征维度间相关性进行特征增强)和选择性梯度损失,在将锚点特征维度从 32 降至 12-16 的同时实现了超越 Scaffold-GS 的渲染质量。
研究背景与动机¶
基于锚点的 3D-GS(如 Scaffold-GS)利用锚点特征通过 MLP 预测高斯属性,有效减少了高斯冗余。但面临一个核心困境:
- 特征维度与模型大小的矛盾:大锚点特征(如 32 维)提升渲染质量但显著增大模型(因锚点数量庞大);缩小特征维度则降低高斯属性预测质量,导致纹理和几何伪影
- HAC 等压缩方法的局限:它们压缩的是存储大小而非训练/渲染时的实际模型大小
- 像素级损失对纹理不敏感:L1 损失难以引导模型关注细节纹理和结构
本文的核心思路:特征维度间的相关性(二阶统计量)可以增强每个锚点的表征能力,用更少的特征维度实现更高质量的渲染。
方法详解¶
整体框架¶
SOGS 基于 Scaffold-GS,每个锚点存储特征 \(\mathbf{f}^a \in \mathbb{R}^D\)(\(D\) 从 32 降至 12-16)。通过计算所有锚点特征的协方差矩阵和相关矩阵,提取 top-\(M\) 个主成分(特征协变模式),与每个锚点的原始特征结合,产生增强的二阶特征用于高斯属性预测。加上选择性梯度损失聚焦难渲染区域。
关键设计¶
1. 二阶锚点(Second-Order Anchor)
- 功能:通过特征维度间的协变关系增强锚点表征,补偿缩小特征维度带来的信息损失
- 核心思路:将所有 \(N\) 个锚点的 \(D\) 维特征视为 \(N\) 个样本、\(D\) 个变量,计算协方差矩阵 \(\Sigma \in \mathbb{R}^{D \times D}\),再标准化为相关矩阵 \(\mathbf{R}\)(消除尺度影响)。对 \(\mathbf{R}\) 做特征分解,选取 top-\(M\)(\(M=2\))个特征向量 \(\mathbf{P}\) 作为全局共享的主要协变模式。对每个锚点:\(\mathbf{f}^t_i = F_i([\mathbf{P}_i, \mathbf{f}^a])\),将增强特征与原始特征拼接预测高斯属性
- 设计动机:纹理和结构不仅由单个特征定义,还由特征间的相互依赖关系决定。二阶统计量捕获这些依赖,实现特征增强而不增加锚点的存储维度
2. 选择性梯度损失(Selective Gradient Loss)
- 功能:引导模型自适应地关注难渲染的纹理和结构区域
- 核心思路:用 Sobel 算子提取渲染图和 GT 的梯度图,计算梯度差异 \(l_x, l_y\) 作为损失。关键创新是引入动态区域选择——用梯度差异的绝对值 \(w_x = |G'_x - G_x|\) 作为权重图,使损失 \(\mathcal{L}_s = w_x \cdot l_x + w_y \cdot l_y\) 聚焦于渲染误差最大的区域
- 设计动机:梯度图的大部分区域是平坦低梯度区,朴素梯度损失会被这些无信息区域主导。加权机制确保模型持续聚焦于关键纹理区域,并随训练动态调整关注区域
3. 协方差计算与相关矩阵构建
- 功能:将原始协方差标准化,消除不同特征维度尺度差异的影响
- 核心思路:\(R_{uv} = \frac{\Sigma_{uv}}{\sigma_u \sigma_v}\),确保主成分反映的是真实的特征间相关性而非方差大小
- 设计动机:两个方差大的变量即使关系弱也会产生大协方差,标准化后的相关矩阵能更准确地捕获特征间的协变模式
损失函数¶
\[\mathcal{L} = \lambda_1 \mathcal{L}_1 + \lambda_{SSIM} \mathcal{L}_{SSIM} + \lambda_{vol} \mathcal{L}_{vol} + \lambda_s \mathcal{L}_s\]
其中 \(\lambda_1 = 0.8\),\(\lambda_{SSIM} = 0.2\),\(\lambda_{vol} = 0.01\),\(\lambda_s = 0.01\)。
实验关键数据¶
主实验:与 Scaffold-GS 对比¶
| 数据集 | 方法 | SSIM↑ | PSNR↑ | LPIPS↓ | 锚点维度 |
|---|---|---|---|---|---|
| Mip-NeRF360 | Scaffold-GS | 0.806 | 27.50 | 0.252 | 32 dim |
| Mip-NeRF360 | SOGS | 0.815 | 27.85 | 0.221 | 16 dim |
| T&T | Scaffold-GS | 0.853 | 23.96 | 0.177 | 32 dim |
| T&T | SOGS | 0.855 | 24.14 | 0.176 | 12 dim |
| Deep Blending | Scaffold-GS | 0.906 | 30.21 | 0.254 | 32 dim |
| Deep Blending | SOGS | 0.907 | 30.29 | 0.252 | 12 dim |
| BungeeNeRF | Scaffold-GS | 0.865 | 26.62 | 0.241 | 32 dim |
| BungeeNeRF | SOGS | 0.880 | 27.06 | 0.171 | 16 dim |
消融实验(BungeeNeRF,锚点维度 32)¶
| 模型 | PSNR↑ | SSIM↑ | LPIPS↓ |
|---|---|---|---|
| Base (Scaffold-GS) | 26.62 | 0.865 | 0.241 |
| Base + SOA | 27.25 | 0.879 | 0.208 |
| Base + SOA + SGL (SOGS) | 27.39 | 0.887 | 0.161 |
关键发现¶
- 锚点维度从 32 降至 12-16,渲染质量反而提升(PSNR +0.35, LPIPS -0.031)
- 二阶锚点贡献最大(PSNR +0.63, LPIPS -0.033),选择性梯度损失进一步提升 LPIPS
- 特征维度 >16 后收益递减,12-16 是模型大小与性能的最佳平衡点
- 在大规模场景 BungeeNeRF 上提升更显著(LPIPS 从 0.241 降至 0.171)
亮点与洞察¶
- 统计学思路引入 3D-GS:用 PCA/协方差的经典统计方法增强神经场特征,思路新颖且理论基础扎实
- 模型更小质量更好:打破了"大特征=高质量"的惯性认知,证明特征间的相关性可以补偿维度缩减
- 选择性梯度损失实用性强:基于 Sobel 的简单方案有效提升纹理渲染质量
局限与展望¶
- PCA 分解带来额外计算开销,虽然仍保持实时渲染但训练时间略增
- top-\(M\) 的选择需要调参(论文中 \(M=2\))
- 特征增强的 MLP 引入了额外参数
- 未来可探索自适应确定 \(M\) 和特征维度 \(D\)
相关工作与启发¶
- Scaffold-GS:基础方法,SOGS 在其锚点特征上进行二阶增强
- HAC/ContextGS:压缩 Scaffold-GS 的存储大小,但不减少实际模型大小
- 3D-GS:原始方法,高斯冗余严重
评分¶
⭐⭐⭐⭐ — 用经典统计学方法解决 3D-GS 的特征效率问题,思路清晰优雅。在多个基准上以更小模型取得更好性能,消融实验充分验证了每个组件的贡献。