SuGaR icon indicating copy to clipboard operation
SuGaR copied to clipboard

Detail optimization

Open jiangyixing opened this issue 2 years ago • 2 comments

Thank you very much for the author's efforts. I have successfully generated the scene, and it is indeed the best project to date. But can you provide me with some advice on the roughness of the character's surface?The quality of bumpy and uneven areas is not good Is my image resolution too low? Is there not enough time for training? `python gaussian_splatting/train.py -s /D/LAY/projects/SuGaR/input/jiang --iterations 7000 -m /D/LAY/projects/SuGaR/gaussian_splatting/output/jiang -r 4

python train.py -s /D/LAY/projects/SuGaR/input/jiang/ -c /D/LAY/projects/SuGaR/gaussian_splatting/output/jiang/ -r density --refinement_time short --square_size 10 -i 7000` 1705386381015

jiangyixing avatar Jan 16 '24 06:01 jiangyixing

Hello @jiangyixing,

Thank you for your nice words!

Indeed, the surface has a lot of irregularities, even though the overall geometry seems correct. Let's investigate! May I ask you the following questions:

  1. Did you use the convert.py script to generate camera data with COLMAP?
  2. You may have too many vertices to reconstruct your scene, which would explain why the surface of the Gaussians become visible (i.e., the meshing is probably too fine for the smooth surfaces of your scene). Have you tried to use the --low_poly True argument for running train.py? Contrary to the default config (which uses high_poly), the low_poly option removes unneccessary vertices and smoothes the surface. Even though it results in less vertices, it can look better than using too many vertices sometimes. For instance, I used low_poly in the demo scene with the white and red Knight. On the contrary, I used high_poly for reconstructing the white and blue robot, because this character has much finer details.
  3. Ultimately, you could also try to use the -r sdf regularization instead of -r density. Even though the density regularization is generally better for single object-centered scenes, the SDF regularization is stronger and, sometimes, it may result in better reconstructions, even in this setup.

Also, I see that you resized the images when running the initial gaussian splatting script. What size are your images? I agree it shouldn't change the results, but who knows, since I never tried that before, maybe it could have an impact. I should definitely investigate this.

Anttwo avatar Jan 16 '24 20:01 Anttwo

Hello @jiangyixing,

Thank you for your nice words!

Indeed, the surface has a lot of irregularities, even though the overall geometry seems correct. Let's investigate! May I ask you the following questions:

  1. Did you use the convert.py script to generate camera data with COLMAP?
  2. You may have too many vertices to reconstruct your scene, which would explain why the surface of the Gaussians become visible (i.e., the meshing is probably too fine for the smooth surfaces of your scene). Have you tried to use the --low_poly True argument for running train.py? Contrary to the default config (which uses high_poly), the low_poly option removes unneccessary vertices and smoothes the surface. Even though it results in less vertices, it can look better than using too many vertices sometimes. For instance, I used low_poly in the demo scene with the white and red Knight. On the contrary, I used high_poly for reconstructing the white and blue robot, because this character has much finer details.
  3. Ultimately, you could also try to use the -r sdf regularization instead of -r density. Even though the density regularization is generally better for single object-centered scenes, the SDF regularization is stronger and, sometimes, it may result in better reconstructions, even in this setup.

Also, I see that you resized the images when running the initial gaussian splatting script. What size are your images? I agree it shouldn't change the results, but who knows, since I never tried that before, maybe it could have an impact. I should definitely investigate this.

Okay, thank you very much. I will listen to your suggestions and conduct the experiment again!

jiangyixing avatar Jan 17 '24 02:01 jiangyixing