-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support MCMC Strategy in Splatfacto #3436
base: main
Are you sure you want to change the base?
Conversation
Hello, I just tried this and it seems to work. I am however wondering about the huge splats being created and large splats going straight through the model, which creates the illusion of hue artifacts inside the area of interest. See image below; Is that an inherent problem with mcmc in general? Another example with depth map to show how huge splats are just "going through" the model They are several magnitudes larger than sparse cloud itself. |
Thanks for the PR! I believe this is missing the opacity + scale regularization in the original MCMC paper, do you think you could add those? that might be a reason for these large gaussians during training |
Does |
@yufengzh they are not part of gsplat, there is an example here for how to implement: https://github.com/nerfstudio-project/gsplat/blob/main/examples/simple_trainer.py#L661
|
@kerrj I see there is a use_scale_regularization config here: https://github.com/nerfstudio-project/nerfstudio/blob/main/nerfstudio/models/splatfacto.py#L195 and then there is a scale_reg loss calculated here: https://github.com/nerfstudio-project/nerfstudio/blob/main/nerfstudio/models/splatfacto.py#L720 but doesn't this need to be applied to the main loss like in gsplat? or does that happen elsewhere? |
The existing @yufengzh gsplat only provides the rasterization interface/splitting strategy, since the loss calculation is done inside splatfacto it'll have to be added here. The loss is pretty straightforward if i recall, it's just penalizing the mean of all scales, and the mean of all opacities (theres an equation in the paper describing it) |
@yufengzh are you still working on this PR? excited to see it get merged. Do you need any help with the regularization terms? |
@liruilong940607 @jb-ye Can you give some review to this PR? Are there some thing needed to do before merge? |
@Ben-Mack the PR is not complete, the regularlization terms need to be added |
This PR adds the
MCMC
strategy for Splatfacto. To use, specify the following in the CLI argument: