Uncertainty-Aware 3D Gaussian Splatting

Tarun Gangadhar Vadaparthi

Demo


Abstract

We estimate per-splat uncertainty directly on a pretrained 3D Gaussian Splatting (3DGS) scene without retraining. For a short azimuth orbit of camera views, we compute a per-view visibility score for each splat and take the cross-view dispersion (standard deviation) as uncertainty. Stable geometry stays low; depth-unstable, peripheral, or flickery regions score high. We visualize RGB and an uncertainty-colored view and optionally export short orbit GIFs. The pipeline is Colab-friendly and runs on modest hardware.


Method (brief)

For splat \(i\) and view \(v\), we define a visibility proxy \( s_i^{(v)} = \alpha_i \cdot \frac{r_i^2}{z_i^2} \), where \(\alpha_i\) is opacity, \(r_i\) the projected screen-space radius, and \(z_i\) the depth. The uncertainty is \( u_i = \mathrm{std}_v\big(s_i^{(v)}\big) \). We percentile-normalize \(u_i\) to \([0,1]\) and colorize for visualization.


RGB ↔ Uncertainty (drag the arrow)

RGB Uncertainty
RGB
Uncertainty