Table of Contents
Fetching ...

Revising Densification in Gaussian Splatting

Samuel Rota Bulò, Lorenzo Porzi, Peter Kontschieder

TL;DR

This work identifies deficiencies in Adaptive Density Control for 3D Gaussian Splatting, particularly how densification is triggered and the lack of explicit budgeting. It introduces a pixel-error-driven densification framework that redistributes per-pixel errors to Gaussian primitives and uses a max-view error as a robust densification score, along with correcting a cloning opacity bias and implementing growth budgets. Through extensive experiments on Mip-NeRF 360, Tanks and Temples, and Deep Blending, the approach yields consistent perceptual improvements (notably LPIPS) while maintaining efficiency, and ablations confirm the contribution of each component. The method advances practical 3DGS deployment by improving high-frequency region reconstruction and training stability, with potential for combination with other refinements like Spec-Gaussian or GS++.

Abstract

In this paper, we address the limitations of Adaptive Density Control (ADC) in 3D Gaussian Splatting (3DGS), a scene representation method achieving high-quality, photorealistic results for novel view synthesis. ADC has been introduced for automatic 3D point primitive management, controlling densification and pruning, however, with certain limitations in the densification logic. Our main contribution is a more principled, pixel-error driven formulation for density control in 3DGS, leveraging an auxiliary, per-pixel error function as the criterion for densification. We further introduce a mechanism to control the total number of primitives generated per scene and correct a bias in the current opacity handling strategy of ADC during cloning operations. Our approach leads to consistent quality improvements across a variety of benchmark scenes, without sacrificing the method's efficiency.

Revising Densification in Gaussian Splatting

TL;DR

This work identifies deficiencies in Adaptive Density Control for 3D Gaussian Splatting, particularly how densification is triggered and the lack of explicit budgeting. It introduces a pixel-error-driven densification framework that redistributes per-pixel errors to Gaussian primitives and uses a max-view error as a robust densification score, along with correcting a cloning opacity bias and implementing growth budgets. Through extensive experiments on Mip-NeRF 360, Tanks and Temples, and Deep Blending, the approach yields consistent perceptual improvements (notably LPIPS) while maintaining efficiency, and ablations confirm the contribution of each component. The method advances practical 3DGS deployment by improving high-frequency region reconstruction and training stability, with potential for combination with other refinements like Spec-Gaussian or GS++.

Abstract

In this paper, we address the limitations of Adaptive Density Control (ADC) in 3D Gaussian Splatting (3DGS), a scene representation method achieving high-quality, photorealistic results for novel view synthesis. ADC has been introduced for automatic 3D point primitive management, controlling densification and pruning, however, with certain limitations in the densification logic. Our main contribution is a more principled, pixel-error driven formulation for density control in 3DGS, leveraging an auxiliary, per-pixel error function as the criterion for densification. We further introduce a mechanism to control the total number of primitives generated per scene and correct a bias in the current opacity handling strategy of ADC during cloning operations. Our approach leads to consistent quality improvements across a variety of benchmark scenes, without sacrificing the method's efficiency.
Paper Structure (28 sections, 8 equations, 7 figures, 7 tables)

This paper contains 28 sections, 8 equations, 7 figures, 7 tables.

Figures (7)

  • Figure 1: Densification is a critical component of 3D Gaussian Splatting (3DGS), and a common failure point. In this example (ground truth on the left) we show how 3DGS can fail (center) to add primitives to high-texture areas, like the grass in the bottom part of the pictures, producing large and blurry artifacts. Our approach (right) solves this issue by comprehensively revising densification in 3DGS.
  • Figure 2: Consider rendering a single splatted Gaussian in its center pixel with opacity $\alpha$ before and after cloning. Before we clone, the rendered color depends with weight $1-\alpha$ on what comes next. After we clone, since we preserve the opacity, the rendered color depends with weight $(1-\alpha)^2$ on what comes next. Since $(1-\alpha)\geq(1-\alpha)^2$ we have a bias towards weighting more Gaussian primitives that get cloned. The proposed correction changes the opacity post clone to $\hat{\alpha}$ so that the bias is removed.
  • Figure 3: Evolution of the number of Gaussians in 3DGS, and in our method with upper limit set to the number reached by 3DGS (on the garden scene from the Mip-NeRF 360 dataset). Note that, while 3DGS' ADC process stops after 15k iterations, ours remains active for 27k. This is not immediately visible from the plot, since pruned primitives are immediately replaced by newly spawned ones, keeping the overall number stable once the maximum is reached.
  • Figure 4: Qualitative results on the Mip-NeRF 360, Tanks and Temples and Deep Blending validation sets. Note that 3DGS and Ours use the same number of primitives. Best viewed on screen at high magnification.
  • Figure 5: Qualitative results with highlights from Tanks and Temples and MipNeRF360 datasets. We compare ground-truth, standard Gaussian splatting (GS) and our proposed method (Ours).
  • ...and 2 more figures