threestudio-project / threestudio

A unified framework for 3D content generation.
Apache License 2.0
6.17k stars 475 forks source link

Fantasia3D Example Gives Poor Result #384

Open tommycwh opened 9 months ago

tommycwh commented 9 months ago

I tried to run the "hulk" example with fantasia3d from the README, but the result is not good.

# or you can initialize from a mesh
# here shape_init_params is the scale of the shape
# also make sure to input the correct up and front axis (in +x, +y, +z, -x, -y, -z)
python launch.py --config configs/fantasia3d.yaml --train --gpu 0 system.prompt_processor.prompt="hulk" system.geometry.shape_init=mesh:load/shapes/human.obj system.geometry.shape_init_params=0.9 system.geometry.shape_init_mesh_up=+y system.geometry.shape_init_mesh_front=+z

I run the example and initialize with the human mesh. At the beginning of the optimization process, e.g., <= 1500 iterations, the human shape seems to be transforming to be the Hulk, but still lacks of details. When the optimization progresses, the upper half of the body is refined, but the lower half of the body seems to disappear.

At iteration 0:

image

At iteration 1500:

image

At iteration 10000:

image

I tried to lower the learning rate, and tried to increase the number of iterations, but these did not help.

Besides, I tried with the other example about the Pisa tower, and the result seems reasonable. It gave me a complete tower.

Is this behavior observed before? Is there anything that I should test with to improve the performance? Thank you very much.