VITA-Group / LightGaussian

"LightGaussian: Unbounded 3D Gaussian Compression with 15x Reduction and 200+ FPS", Zhiwen Fan, Kevin Wang, Kairun Wen, Zehao Zhu, Dejia Xu, Zhangyang Wang
https://lightgaussian.github.io/
Other
506 stars 41 forks source link

Question about importance score calculation #2

Closed XuyangBai closed 6 months ago

XuyangBai commented 7 months ago

Hi, thanks for sharing your great work. I have a question regarding the calculation of gaussian importance score. In your paper Eq4, what's sigma_j ? from your code I found it is the opacity of the gaussian

gaussian_count[collected_id[j]]++;
important_score[collected_id[j]] += con_o.w; //opacity

But may I ask why did you only use opacity instead of using alpha (opacity * probability from splatted gaussian) since the latter is the real contribution of the gaussian to a specific pixel?

BTW, there might be a mistake in paper at the begining of page 4:

Here, ci, αi represents the color and opacity of this point computed by a Gaussian with covariance Σ multiplied by an optimizable per-point opacity and SH color coefficients.

This sentense sounds weird because αi is not the opacity but the weight in alpha blending, and it's not related to SH

Kevin-2017 commented 7 months ago

Thank you for the correction and for emphasizing this particular aspect:

1) As you pointed out, \sigma_j is the opacity in Eq4

2) We use opacity instead of alpha because of empirical results. The following is an early-stage experiment on the garden scene: Screenshot from 2023-12-05 08-28-33 We ran another experiment on a few more scenes, most showing using opacity has better results than using alpha, with or without finetune: Screenshot from 2023-12-05 09-07-36

3) We would correct this mistake on page 4. It should be \sigma_j.

Again thank you for your interest in our work :)

XuyangBai commented 7 months ago

Hi @Kevin-2017 Thank you for the prompt reply and detailed experimental results. Just another question out of curiosity, have you tried to prune the gaussian in a purely random way? I guess that may also be a good baseline because all the heuristic ways we design might have some bias that causes irreversible harm to 3DGS even with your co-adaption?

Kevin-2017 commented 6 months ago

Hi @XuyangBai, thank you for the idea!! I think we could try this after the Distillation module is updated (Which I think should be within 3 days).