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

Required steps for rendering a point cloud #1147

Open
ur10 opened this issue Jan 29, 2025 · 6 comments
Open

Required steps for rendering a point cloud #1147

ur10 opened this issue Jan 29, 2025 · 6 comments

Comments

@ur10
Copy link

ur10 commented Jan 29, 2025

Hi I am trying to render point clouds but I have some confusion. Here are the steps that I have followed.

  • Used the standard Playroom dataset with the required directory structure for colmap generation.
  • Ran python convert.py --camera PINHOLE -s tandt_db/db/playroom to generate sfm based sparse data.
  • Then I run the training script - python train.py -s /home/ur10/gaussian-splatting/tandt_db/db/playroom.
  • Finally I run the render script - python render.py -m /home/ur10/models/playroom -s /home/ur10/gaussian-splatting/tandt_db/db/playroom/ --data_device cuda

I have the following questions -

  • I can locate the rendered images however I am not sure where the rendered point clouds are located/how do I render them.
  • Moreover I believe running the training script every time is an overkill but is it valid to generate a random point cloud with the scale of my scene and place it in the required directory. As currently I get the following error when I do this - "ValueError: no field of name opacity"
@jaco001
Copy link

jaco001 commented Jan 30, 2025

Output models are in gaussian-splatting software folder in the output. Each folder have unique number, but I suggest you to change it for nice_model_name after training. At defoult in this folder you get point_cloud\iteration_7000 and point_cloud\iteration_30000 folders contains point_cloud_.ply

For 'rendering' I sugest you use SIBR_viewer . For my windows it is like
SIBR_gaussianViewer_app.exe -m "C:\tools\gaussian-splatting\output\szpilki_29012025_b1" --iteration 30000

@ur10
Copy link
Author

ur10 commented Jan 30, 2025

Thanks for clarifying this, just a quick follow-up, I wanted to know does a point cloud file get generated during the rendering phase as well? If so where is it generated, I can only locate the newly rendered images after I run the last command.

@jaco001
Copy link

jaco001 commented Jan 30, 2025

From main page ;)
render.py -m path to pre-trained model -s path to COLMAP dataset
metrics.py -m path to pre-trained model

path to pre-trained model --> you must already have a model...

@ur10
Copy link
Author

ur10 commented Jan 30, 2025

Okay, I get that, and maybe I am just being dumb here. But what is the 'path' of the saved point cloud, I just went through the entire render.py script but I don't see anywhere a point cloud being generated while rendering.

@jaco001
Copy link

jaco001 commented Jan 30, 2025

Look at this step by step

E:\splat\gaussian-splatting>python render.py -m "E:\splat\gaussian-splatting\output\beczka" -s "E:
splat\gaussian-splatting\datasets\beczka"
Looking for config file in E:\splat\gaussian-splatting\output\beczka\cfg_args
Config file found: E:\splat\gaussian-splatting\output\beczka\cfg_args
Rendering E:\splat\gaussian-splatting\output\beczka
Loading trained model at iteration 30000 [30/01 19:52:53]
Reading camera 56/56 [30/01 19:52:53]
Loading Training Cameras [30/01 19:52:53]
[ INFO ] Encountered quite large input images (>1.6K pixels width), rescaling to 1.6K.
If this is not desired, please explicitly specify '--resolution/-r' as 1 [30/01 19:52:53]
Loading Test Cameras [30/01 19:53:05]
Rendering progress: 100%|██████████████████████████████████████████████████████████████| 56/56 [01:08<00:00, 1.22s/it]
Rendering progress: 0it [00:00, ?it/s]

This example from my works...
Model 'physicaly' is in e:\splat\gaussian-splatting\output\beczka\point_cloud\iteration_30000\point_cloud.ply
But you provide path to the 'top' like "E:\splat\gaussian-splatting\output\beczka"
There is only rendered pic for GT (ground truth) and 'same' pictures from model
All this going to
"E:\splat\gaussian-splatting\output\beczka\train"
and
"E:\splat\gaussian-splatting\output\beczka\test"

@ur10
Copy link
Author

ur10 commented Jan 30, 2025

Oh, okay. I get it now. Thanks for your patient explanation.

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

2 participants