/cNeRF

A concise C++ implementation of Neural Radiance Fields (NeRF) using LibTorch.

Primary LanguageC++MIT LicenseMIT


Logo

cNeRF

A concise C++ implementation of Neural Radiance Fields (NeRF) using LibTorch.


Overview

This project provides a minimal implementation of Neural Radiance Fields (NERF), a method for synthesizing novel views of complex scenes using neural inverse modelling. The code is written in C++ and utilizes LibTorch for automatic differentiation.

Dependencies

  • LibTorch (>= 2.0.0)
  • CUDA (>= 11.7, optional)

Installation

  1. Download and install LibTorch (>= 2.0.0)
  2. If you place LibTorch in the project root directory, no additional configuration is required. Alternatively, you can install LibTorch locally and update the CMakeLists.txt file with the appropriate path.
  3. Build the project using CMake:
mkdir build
cd build
cmake ..
make

Usage

After building the project, run the executable with the appropriate command-line arguments to specify the data and output directories:

./cNeRF /path/to/data /path/to/output

Acknowledgements

This implementation is based on the original NeRF repository by Mildenhall et al. We thank the authors for their valuable research and open-source code.

License

This project is licensed under the MIT License.