AAA-Gaussians: Anti-Aliased and Artifact-Free 3D Gaussian Rendering¶
会议: ICCV 2025
arXiv: 2504.12811
代码: GitHub (有)
领域: 3D视觉 / 新视角合成 / 实时渲染
关键词: 3D Gaussian Splatting, 抗锯齿, 无伪影渲染, 视锥剔除, 视角一致性
一句话总结¶
通过在3DGS渲染管线的所有环节中融入完整的3D评估(而非2D splat近似),提出自适应3D平滑滤波器、视空间边界计算和基于视锥的tile剔除,统一解决了3DGS中的锯齿、投影伪影和弹出伪影(popping),在OOD视角下大幅优于现有方法,同时保持实时渲染(>100 FPS)。
背景与动机¶
3DGS通过将3D Gaussian投影为2D splat实现高效渲染,但这个近似引入了多种伪影:(1)仿射投影近似导致广角/边缘处的畸变伪影;(2)缩放变化时缺乏抗锯齿导致的锯齿伪影;(3)Gaussian延伸到视锥外时的弹出伪影;(4)全局排序导致的视图不一致。现有方法各自只解决其中一两个问题,且在OOD视角下仍会失败。
核心问题¶
如何在保持光栅化效率的同时,通过完整的3D Gaussian评估统一解决所有类型的渲染伪影?核心挑战:2D抗锯齿方法(如Mip-Splatting的屏幕空间Mip滤波器)无法直接用于3D评估。
方法详解¶
整体框架¶
基于StopThePop的层级光栅化器,将bounding、culling、深度评估、贡献估计和抗锯齿全部替换为3D感知的实现。使用MCMC密化策略。渲染流程:3D bounding(视空间角度)→ 3D frustum culling → 逐像素3D Gaussian评估 → 层级排序混合。
关键设计¶
-
自适应3D平滑滤波器(Adaptive 3D Smoothing Filter): 替代Mip-Splatting的2D屏幕空间Mip滤波器。关键发现:直接用3D体积变化作为振幅缩放会导致高度各向异性Gaussian过度透明。创新地只考虑垂直于观察光线方向的面积变化来调整振幅(而非体积变化)。通过Schur补和Hartley分析推导出高效的封闭形式解(Eq.10-12),避免矩阵求逆。结合训练时最大采样频率\(\hat{v}_{train}\)和当前渲染频率\(\hat{v}\)的自适应切换。
-
视空间透视正确边界(View-Space Bounding): 不在屏幕空间而在视空间计算Gaussian的边界。通过对椭球体进行平面拟合,求解角度\(\theta_{1,2}\)和\(\phi_{1,2}\)(Eq.14-15)。当Gaussian延伸到图像平面后方时,屏幕空间方法会失败(导致弹出),而视空间角度计算天然稳定。计算后再通过角度到屏幕坐标的转换得到tile分配。
-
基于视锥的3D Tile剔除(Frustum-Based Culling): 将StopThePop的2D tile剔除提升到3D。对每个tile构建4平面视锥\(\mathcal{F}\),在Gaussian标准化空间中寻找视锥内的最大贡献点,判断\(\rho(\mathbf{x})^2 < \tau_\rho\)。优化实现:只投影最近的2个平面+3条边(而非4个平面+4条边),关键性能优化。
损失函数 / 训练策略¶
- 标准3DGS训练目标(L1 + SSIM),使用MCMC密化
- 滤波器参数\(k=0.3\)(与Mip-Splatting一致)
- 截断阈值\(\tau_\rho\)用于边界和剔除计算
实验关键数据¶
标准数据集(分布内视角)¶
| 方法 | Mip-NeRF360 PSNR | T&T PSNR | Deep Blending PSNR |
|---|---|---|---|
| 3DGS | 27.443 | 23.734 | 29.510 |
| StopThePop | 27.304 | 23.226 | 29.929 |
| Mip-Splatting | 27.540 | 23.821 | 29.660 |
| MCMC | 28.027 | 24.642 | 29.727 |
| 本文 | 27.835 | 23.582 | 30.485 |
大视场评估(3×FOV,OOD)¶
| 方法 | Mip-NeRF360 PSNR | T&T PSNR |
|---|---|---|
| 3DGS | 17.112 | - |
| MCMC | 14.369 | - |
| Taming 3DGS | 11.545 | - |
| 本文 | 23.583 | - |
OOD场景质量提升极其显著:3×FOV下PSNR从MCMC的14.369到本文的23.583(+9.2 dB)
多分辨率评估(Bicycle场景)¶
| 分辨率 | MCMC PSNR | 本文 PSNR | 本文w/o AA PSNR |
|---|---|---|---|
| 1/2× | 21.15 | 26.73 | 20.99 |
| 1× | 28.98 | 32.12 | 28.54 |
| 2× | 25.69 | 25.74 | 25.65 |
渲染性能(RTX 4090, ms/帧)¶
| 方法 | Mip-NeRF360 | T&T |
|---|---|---|
| 本文 | 7.72 | 5.81 |
| MCMC | 6.79 | 4.43 |
| 本文 w/o culling | 14.40 | 8.88 |
消融实验要点¶
- 去掉层级排序:分布内PSNR略微提升(过拟合),但产生严重的popping伪影
- 去掉AA:分布内影响小,但低/高分辨率下质量大幅下降
- 去掉3D评估:产生FOV增大时的投影畸变
- 去掉frustum culling:性能大幅下降(7.72→14.40 ms),但不影响质量
- 各组件互补:只有全部结合才能实现无伪影渲染
亮点¶
- 垂直面积 vs 体积的振幅缩放: 3D滤波器的关键洞察——沿光线方向的尺度变化不应影响振幅,只有垂直于光线的面积变化才重要。数学推导优雅(Schur补)
- 视空间角度代替屏幕空间坐标: 从根本上避免了Gaussian跨越近平面时的不稳定性,是正确处理边界的方式
- 统一解决所有伪影: 首个在单一框架中解决锯齿+投影畸变+popping+剔除的光栅化方法
- OOD场景的价值: 分布内指标差异不大,但OOD场景(大FOV、分辨率变化)才能真正体现方法的鲁棒性
局限性 / 可改进方向¶
- 分布内评估指标改进有限(标准benchmark上与MCMC接近)
- 视空间边界仍绑定针孔相机模型,不支持鱼眼等其他相机
- 层级排序带来额外性能开销(vs 不排序快近2×,但有popping)
- 视图一致性更强意味着更少的过拟合空间,可能需要更强的视角依赖编码(如更高阶SH)
与相关工作的对比¶
- vs Mip-Splatting: 共同关注抗锯齿,但Mip-Splatting在2D屏幕空间操作,无法支持3D评估;本文的3D滤波器在OOD视角下鲁棒性大幅提升
- vs StopThePop: 共享层级排序框架,但StopThePop仍用2D边界和2D剔除,本文将所有操作提升到3D
- vs Hybrid Transparency(Hahlbohm et al.): 都做3D评估和精确边界,但HT在边缘处仍有pop-in(丢弃越界Gaussian),本文通过视空间边界彻底解决
启发与关联¶
- 与多尺度光照场idea的关联(ideas/3d_vision/20260317_multiscale_illumination_field_3dgs.md):本文发现更强的视角一致性约束下view-dependent效果表达不足,恰好印证了更强视角依赖编码(如张量分解光照场)的必要性——AAA-Gaussians提供无伪影的几何基座,多尺度光照场可作为外观增强模块
- 对3DGS编辑/安全工作的启示(ideas/3d_vision/20260317_graph_autoregressive_3dgs_edit.md):无伪影的渲染基座是3DGS下游应用(编辑、安全、压缩)的基础需求,本文可直接作为底层renderer
- 3DGS渲染质量改进是3D视觉基础设施级贡献,视空间操作思路对VR/大FOV场景重要
- 潜在方向:将自适应3D滤波器的"垂直于射线的正交分解"思想迁移到其他3D表示的LOD/anti-aliasing
评分¶
- 新颖性: ⭐⭐⭐⭐ 3D AA滤波器的振幅缩放推导新颖,视空间边界计算巧妙
- 实验充分度: ⭐⭐⭐⭐⭐ 全面的分布内/OOD评估、详尽消融、多数据集多场景、性能计时
- 写作质量: ⭐⭐⭐⭐⭐ 数学推导严谨,问题分析透彻,图示清晰
- 价值: ⭐⭐⭐⭐ 对3DGS渲染质量和鲁棒性的实质性提升,代码开源,是3DGS渲染管线的重要参考实现