kcheng1021 / GaussianPro

[ICML2024] Official code for GaussianPro: 3D Gaussian Splatting with Progressive Propagation
https://kcheng1021.github.io/gaussianpro.github.io/
MIT License
551 stars 36 forks source link

Waymo scene test #13

Closed FAM-vive closed 3 months ago

FAM-vive commented 3 months ago

Thanks for your excellent work! I follow the README to train gaussianpro on the Waymo dataset you provided, and I don't change any parameters, but i can't get same results as your paper showed, especially the rendered normal result, do you know why?

what i run: ours what you show:

paper
kcheng1021 commented 3 months ago

Thank you for your recognition. Your results do seem similar to the baseline. I suspect there might be an issue with the line breaks in your bash file, i.e. \ in each line, causing the parameters in the following lines to not be properly inputted.

merriaux commented 3 months ago

Hi @kcheng1021, Many for this very interesting works. I reached the same issue as @FAM-vive. I ran it a second time with the train command on an unique line: python train.py -s my-data-path -m my-output-path --eval --flatten_loss --position_lr_init 0.000016 --scaling_lr 0.001 --percent_dense 0.0005 --port 1021 --dataset waymo --sky_seg --normal_loss --depth_loss --propagation_interval 30 --depth_error_min_threshold 0.8 --depth_error_max_threshold 1.0 --propagated_iteration_begin 1000 --propagated_iteration_after 12000 --patch_size 20 --lambda_l1_normal 0.001 --lambda_cos_normal 0.001

image image image

the metric are lower than what you published: "SSIM": 0.9529152512550354, "PSNR": 35.29518127441406, "LPIPS": 0.226970374584198

For information the metric of baseline: python train.py -s my-data-path -m my-output-path --eval --position_lr_init 0.000016 --scaling_lr 0.001 --percent_dense 0.0005 --port 1021 --dataset waymo are very close to ours: SSIM : 0.9498498 PSNR : 35.0038567 LPIPS: 0.2342816

Clearly the normals rendering is really worst than ours. Do you have any idea of I am doing wrong ? thanks

kcheng1021 commented 3 months ago

Based on the current findings, it seems that the propagation process might not have been properly executed in your results. To better understand the situation and identify the underlying causes, it would greatly benefit the analysis if you could share the complete scene results from your training. BTW, is the Waymo data you used sourced from the download link I provided? Or any warning during your training.

Additionally, I would like to offer my assistance in other two ways: either by remotely connecting to your machine or by providing my contact information via email. (drop your email or other contact info to me) This will allow us to establish direct communication and solve the issue in the quickest possible manner. @FAM-vive @merriaux

merriaux commented 3 months ago

Hi @kcheng1021 and @KizzySama Yes I used waymo sequence from your google drive link. I didn't notice any warning during training. I will write you an email, and start upload of training results.

@KizzySama, could share with us the train cmd you use ? or have a look to the cmd I used in my first message ? thanks

KizzySama commented 3 months ago

Hi @kcheng1021 and @KizzySama Yes I used waymo sequence from your google drive link. I didn't notice any warning during training. I will write you an email, and start upload of training results.

@KizzySama, could share with us the train cmd you use ? or have a look to the cmd I used in my first message ? thanks

Your training command looks correct, maybe you need to check whether your propagation is up and running. My result looks like: 96be43ae99f29e1604c2db9b45896d04

Here is the complete result if it will help: https://drive.google.com/file/d/1NG1RRT_LY8oEbTAKbj0l5Nu_tJbJMIoP/view?usp=sharing

kcheng1021 commented 3 months ago

Hi, @merriaux @FAM-vive. Perphas I found the reason. I specified the GPU architecture as sm86 in the CMakeLists.txt, but your GPUs may have a lower compute capability, which is why the propagation was not successful. Please replace it with a version that is suitable for your GPU.

FAM-vive commented 3 months ago

Hi, @merriaux @FAM-vive. Perphas I found the reason. I specified the GPU architecture as sm86 in the CMakeLists.txt, but your GPUs may have a lower compute capability, which is why the propagation was not successful. Please replace it with a version that is suitable for your GPU.

@kcheng1021 , thanks so much! I have solved the problem by what you said, and then the propagation process executed successfully, and finally i get same results as your paper showed.