nv-tlabs / GET3D

Other
4.17k stars 374 forks source link

Questions on losses #140

Closed DianCh closed 10 months ago

DianCh commented 11 months ago

Hi authors, thank you for releasing this wonderful work! I have a few questions when trying to understand the paper:

  1. It looks like the regularization loss encourages the two ends of edges to have the same sign (both positive or both negative); why do we need this, and why does having a different sign mean the face is an "internal floating face"?
  2. How much does this reg loss affect/help the performance?
  3. Instead of using GAN adversarial loss, does it make sense to use L1 loss to penalize incorrect renderings?

Thank you very much!

SteveJunGao commented 10 months ago

Thank you for the questions!

  1. You can look at the Nvdiffrec paper. In the supplement, Fig 28, we have an ablation study to evaluate such regularization loss. Basically, a surface after DMTet means there's a different sign on the edge, and we don't want the internal floating faces, so to remove those faces, we only need to make the sign to be the same.

  2. That's a good point. We didn't do too much ablation on it. I think it won't affect the performance too much if we only care about the outer surface (because the internal surface won't be visible). It would affect when we care about the internal surfaces, e.g. when we export the uv mapping)

  3. It doesn't make sense in our setting, because we're in a generative setting where we don't have one-one correspondences between the input (the sampled latent code) and the output (the generated assets). If your setting have the one-one correspondences (e.g. single image 3D reconstruction), then it makes sense to have L1 loss