NVlabs / tiny-cuda-nn

Lightning fast C++/CUDA neural network framework
Other
3.77k stars 459 forks source link

Will "nerf_network.h" become a default header file in tiny-cuda-nn? #75

Closed MarvinChung closed 2 years ago

MarvinChung commented 2 years ago

Hi, thanks for your great work and make it open source for others.

I was trying to implement the Nerf network from c++ and using this library by watching your great paper "Instant Neural Graphics Primitives using a Multiresolution Hash Encoding". Then I saw the nerf_network.h in instant-ngp repo contains the Nerf network using tiny-cuda-nn.

Is it possible to let nerf_network.h become a default header file in tiny-cuda-nn? It contains most implementations for building a Nerf model. However, I saw that the license in instant-ngp repo is different from tiny-cuda-nn repo and I afraid that copying the source code in nerf_network.h will violate the license.

Tom94 commented 2 years ago

Hi there,

instant-ngp and tiny-cuda-nn functionality is split the way it is for semantic reasons and we don't plan to work around these to sidestep potential license issues.

Given the relative simplicity of the NeRF neural network architecture (ours is only marginally different from the original NeRF paper), I recommend stitching it together manually from tiny-cuda-nn primitives if the instant-ngp license is incompatible with your use case.

Cheers!

MarvinChung commented 2 years ago

I see. Thanks for your kindly response.

quan5609 commented 1 year ago

Hi @MarvinChung, I am trying to implement nerf-like architecture using tcnn API. Can you share your experience in building the network? Especially for the viewdirs concatenation part similar to here https://github.com/yenchenlin/nerf-pytorch/blob/63a5a630c9abd62b0f21c08703d0ac2ea7d4b9dd/run_nerf_helpers.py#L108?