Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementations of MLPTexture3D #5

Closed
bennyguo opened this issue Mar 27, 2022 · 2 comments
Closed

Implementations of MLPTexture3D #5

bennyguo opened this issue Mar 27, 2022 · 2 comments

Comments

@bennyguo
Copy link

Hello,

Thanks for releasing the code for this amazing work!

I've been going through the code and find some implementations in TextureMLP3D confusing:

  1. What's the meaning of scaling the gradient? I set gradient_scaling=1.0 and did not find much difference in the output.
  2. Why not use the tcnn MLP but only the tcnn Encoding?

Thanks!

@jmunkberg
Copy link
Collaborator

Thanks!

  1. The gradient scaling makes the hash grid encoder train to a sharper result in the first pass, most notably on models with high frequency textures. It is not a crucial optimization however, as the second pass, when we switch to standard 2D textures, usually increases the sharpness regardless.

  2. We use only the encoder from tcnn for compatibility reasons. The cutlass MLP:s were not compatible with some older servers we used in the development, so with a vanilla PyTorch MLP, we could deploy the code on more machines. It is very easy to switch back to the tcnn MLP (or preferably, the combined encoder+MLP from tcnn) if you want.

@bennyguo
Copy link
Author

Thanks for the reply! Closing the issue now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants