Skip to content
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

Exported nerfacto point cloud has huge skybox surrounding it #3379

Open
gradeeterna opened this issue Aug 23, 2024 · 6 comments
Open

Exported nerfacto point cloud has huge skybox surrounding it #3379

gradeeterna opened this issue Aug 23, 2024 · 6 comments

Comments

@gradeeterna
Copy link

Not sure if this is a bug, but has something changed with nerfacto point cloud export recently? The point clouds now have this enormous skybox surrounding it which is about 10 million points in this example. Same with world frame and remove outliers enabled and disabled.

https://www.youtube.com/watch?v=wP69fZ_taUE

@ichsan2895
Copy link

please tell your specific version of all library, related with nerfstudio (example: tiny-cuda-nn, nerfstudio, gsplat, torch, python, open3D, etc). 👍

please tell your command to reproduce that bug, then run & compare the command with old version of nerfstudio vs your current version

I am not too advance with coding. But, I hope it helps other developers for understanding the problem.

Good luck 💯

@brentyi
Copy link
Collaborator

brentyi commented Aug 24, 2024

Hi @gradeeterna are you able to share the command you get and/or are running for export?

In particular I'm wondering if any of the --obb-* arguments are set:

image

If you're using the viewer to generate the command this should happen if you've cropped the scene.

@brentyi
Copy link
Collaborator

brentyi commented Aug 24, 2024

This change might've happened in #2086; previously if you didn't pass any bounding box-related arguments it would crop to min=[-1, -1, -1], max=[1, 1, 1]. But this change would've been a long time ago, so maybe it's something else?

@gradeeterna
Copy link
Author

gradeeterna commented Aug 24, 2024

Hey, here is the export command and nerfstudio version I was using here:

ns-export pointcloud --load-config outputs/unnamed/nerfacto/2024-08-22_095045/config.yml --output-dir exports/pcd/ --num-points 40000000 --remove-outliers True --normal-method open3d --save-world-frame True

nerfstudio - 1.1.2, gsplat - 1.0.0, tiny-cuda-nn - 1.7, torchvision - 0.17.2, python - 3.10.14, open3d - 0.18.0

I didn't set any of the --obb arguments, but I'm pretty sure I have just used the default export command since that commit #2086 and haven't had the huge skybox. Tbh I haven't been using nerfacto a lot since splatfacto came along, so it could be that long ago! I do remember using the bounding box min max arguments in the old default command.

@brentyi
Copy link
Collaborator

brentyi commented Aug 24, 2024

Huh, interesting!

It's possible there are other commits where the behavior for this has changed, but with that command the code does look set up to export all points, even if they're super far away. I'd expect passing in --bounding-box-min -1 -1 -1 --bounding-box-max 1 1 1 to fix it.

@gradeeterna
Copy link
Author

Just tested with a slightly older version used in NeRFtoGSandBack, nerfstudio 1.0.1 / gsplat 0.1.3 etc, and the default export point cloud command has these --obb arguments which work fine:

ns-export pointcloud --load-config outputs\unnamed\nerfsh\2024-08-20_105834\config.yml --output-dir exports/pcd/ --num-points 3000000 --remove-outliers True --normal-method open3d --use_bounding_box False --save-world-frame False --obb_center 0.0000000000 0.0000000000 0.0000000000 --obb_rotation 0.0000000000 0.0000000000 0.0000000000 --obb_scale 1.0000000000 1.0000000000 1.0000000000

So it just seems like the --obb stuff was removed from the default export command at some point since then?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants