NVIDIAGameWorks / kaolin-wisp

NVIDIA Kaolin Wisp is a PyTorch library powered by NVIDIA Kaolin Core to work with neural fields (including NeRFs, NGLOD, instant-ngp and VQAD).
Other
1.46k stars 132 forks source link

Introduce WispModule and add support for most modules #100

Closed orperel closed 1 year ago

orperel commented 1 year ago

This change set introduces the WispModule interface. All important base building blocks should subclass this interface: acceleration structures, grids (and their internal components like feature volume for triplane), decoders, position embedders, neural fields, bottom level renderers and so on.

The WispModule interface is fairly thin, it assumes a module:

  1. Is a torch nn.Module
  2. Knows how to return a dict of useful properties, this is useful for logging / gui purposes.
  3. Optional: Knows how to return a human readable name (default is to take the class name, where this makes sense)

Signed-off-by: operel operel@nvidia.com