Open SYSUykLin opened 10 months ago
Hello @SYSUykLin,
This is an interesting question! It's true that the density regularization is quite hidden in the paper. Please take a look at page 5, just under Equation 5, for more details.
The density regularization consists in a direct comparison between the real density function $d$ and the "ideal" density function $\bar{d}$:
$$ \cal{R}_{\text{density}} = \frac{1}{\cal{P}} \sum_p | d(p) - \bar{d}(p) | $$
The $\cal{R}_{\text{Norm}}$ term is actually the same than for SDF, as the gradient of density and SDF are colinear anyway.
Thanks for your reply. I see. Another question, How many GS points are there during the Refine stage? 6 points per triangle, that is a huge number.
Vanilla Gaussian Splatting generally ends up with 1M to 5M Gaussians after optimization. Similarly, during the refinement stage of SuGaR, we aim for approximately 2M Gaussians on the surface, as it is generally enough to get a good looking representation of real scenes.
Therefore, we increase the number of surface-aligned Gaussians per triangle when we decrease the number of triangles. Also, we always use a triangular number for the number of Gaussians per triangle (1, 3, 6, 10, 15...)
For example, when using 1M vertices (this corresponds to the --high_poly
config), the mesh generally has approximately 2M triangles, so we use only 1 Gaussian per triangle.
When using only 200k vertices (this corresponds to the --low_poly
config), the mesh generally has approximately 400k triangles, so we use 6 Gaussians per triangle.
In the end, SuGaR always has a similar number of Gaussians than vanilla 3DGS.
If I choose the density regularization,what regularization will be used in this code? I did not find this part on your paper. Thanks