Extreme Views 的3DGS!
论文来源:arXiv 2025.10
标题:Extreme Views: 3DGS Filter for Novel View Synthesis from Out-of-Distribution Camera Poses
作者:Damian Bowness, Charalambos Poullis(Concordia University, 加拿大)
原文链接:arXiv:2510.20027
代码与结果:项目主页
摘要
在训练3DGS时(后),当相机移动到一个训练时从未见过的极端位置的时候,往往会出现漂浮、闪烁、拉丝、伪影等奇怪的画面,这当然是因为3DGS overfitting于训练视角导致的,这篇文章提出了一种纯渲染-侧实时滤波器,无需重训模型,只用两步梯度分析就能“掐掉”方向不稳定的3D高斯,从而显著提升极端视角下的视觉一致性。
到底解决了什么问题?
| 场景 | 痛点 |
| VR 漫游、无人机巡检、自动驾驶 | 用户常会跑到训练数据采集区域之外(OOD) |
| 传统 3DGS | 在这些区域出现大量“悬浮高斯”、颜色溢散、几何断层 |
| 现有后处理 | 要么要重训(BayesRays 1k 迭代),要么只能处理各向同性噪声,对“细长/歪”高斯无效 |
| 工业落地 | 不能接受每次换新轨迹就重训模型,必须“即插即用“ |
核心贡献
-
旋转对齐的梯度敏感度度量
把高斯协方差里的 R 与 S 解耦,只在旋转空间算梯度,精准捕捉“方向一点点歪就导致颜色剧变”的高斯。 -
两步过滤管线(Two-Pass Filter)
-
Pass-1:逐 ray 计算像素颜色对高斯位置/方向的梯度,超过阈值 τ_grad 的交集标记为“可疑”。
-
Pass-2:统计每个高斯“可疑交集/总交集”的比例,超过 τ_ratio 直接踢掉。
整个流程跑在 实时渲染管线里,单张 RTX 2080Ti 1500×700 分辨率无压力。
-
-
零重训、零额外数据
滤波器作为可微渲染的后处理算子,与任何 3DGS 框架(Splatfacto, Nerfstudio…)直接拼积木。 -
实验碾压
在 Deep Blending、NeRF-On-the-Go 上对比 BayesRays 三种置信度阈值,NIQE↓62%、BRISQUE↓25%、PIQE↓30%,且不会过平滑。
方法
1. 旋转--only 梯度敏感度
-
对每条射线 r,先把它变换到高斯 k 的旋转对齐坐标系:
此时只保留旋转
,把尺度
扔掉,避免“细长”高斯被误判为各向同性。
-
在该坐标系下,颜色 C 对位置 x 的梯度退化.
-
梯度模长越大 ⇒ 该高斯方向稍有扰动,像素颜色就剧烈变化 ⇒ 标记为“不稳定”。
2. Two-Pass 过滤
Pass-1:逐交集打分
对每条 ray-高斯交集计算上述梯度模长,大于 τ_grad 的记为 rejected,否则 accepted。
Pass-2:逐高斯投票
rejection_ratio = rejected / (accepted + rejected)
若 rejection_ratio > τ_ratio,则该高斯在当前视角下被完全剔除;否则保留。
两步均在 CUDA / OpenGL 片段着色器里并行完成,零 CPU 回读,维持 60 FPS+。
3. 参数选择
-
τ_grad:控制“多敏感算可疑”,默认 1e-4(越大越宽松)。
-
τ_ratio:控制“多可疑才枪毙”,默认 0.5(>50% 交集可疑才剔除)。
文中给出单场景 heuristic 调参表,实际产品可再做自动搜索或 Bayesian Optimization。
结果
| 场景 | BayesRays 最佳 | Ours | 降幅 |
| Playroom NIQE | 9.18 | 3.41 | -63 % |
| Creepy Attic BRISQUE | 45.26 | 42.30 | -7 % |
| Dr. Johnson PIQE | 59.58 | 51.60 | -13 % |


单从论文中给出的图来说,这个效果无疑是让人惊喜的。
六、总结 & 个人碎碎念
-
学术价值:首次把“旋转--only 梯度”引入 3DGS 不确定性分析,补上了“各向异性方向不稳定”这一空白。
-
工程价值:代码量小(核心 CUDA Kernel <200 行),推理零开销,适合直接塞进商业级渲染引擎。
