nv-tlabs / GET3D

Other
4.17k stars 374 forks source link

Flipped Normal #150

Open EJShim opened 8 months ago

EJShim commented 8 months ago

Hello,

I tried to visualize SDF values from car pretrained model, and discovered that the SDF values are inverted

image

As I know, the inside part of an object should have negative values, and outside parts have positive values, but in the car model it is the opposite.

I am trying to implement normal field and add normal discriminator for better geometry, but my model keep flipping normal during training, and never converges.

Do you think sdf_reg_loss can prevent this kind of output? or do I have to add some other regularization that add constraints that center_indices to have negative and boundary_indices to have positive values?

SteveJunGao commented 6 months ago

Hi @EJShim,

Yes, I also observed the normals could be flipped during training. This is because the isosurfacing (DMTet part) in GET3D only focuses on the extracted surface, and the SDF flipped sign, it won't affect the extracted surface.

The sdf_reg_loss might be hard to prevent this kind of output. I feel the regularization to constrain the center_indices to have negative and boundary_indices to have positive values might be better as it gives the sign of SDF