HashNeRF-pytorch  by yashbhalgat

PyTorch implementation of Instant-NGP for AI research

created 3 years ago
1,016 stars

Top 37.5% on sourcepulse

GitHubView on GitHub
Project Summary

This repository provides a pure PyTorch implementation of NVIDIA's Instant Neural Graphics Primitives (Instant-NGP), specifically focusing on the multi-resolution hash encoding technique for faster Neural Radiance Field (NeRF) training. It aims to enable AI researchers to experiment with and build upon this accelerated NeRF method.

How It Works

The project leverages a multi-resolution hash encoding scheme, inspired by Instant-NGP, to represent scene geometry and appearance. This approach uses hash tables to efficiently map spatial coordinates to neural network weights, allowing for rapid convergence and high-quality renderings. The implementation is built upon an existing NeRF-pytorch codebase, integrating the hash encoding for performance gains.

Quick Start & Requirements

  • Install: pip install -r requirements.txt (after cloning)
  • Prerequisites: Python 3.x, PyTorch, CUDA-enabled GPU (tested on 1050Ti), nerf-synthetic dataset.
  • Training: python run_nerf.py --config configs/chair.txt --finest_res 512 --log2_hashmap_size 19 --lrate 0.01 --lrate_decay 10
  • Dataset: Download nerf-synthetic from Google Drive.
  • Docs: https://nvlabs.github.io/instant-ngp/

Highlighted Details

  • Claims up to 100x faster NeRF training compared to vanilla NeRF.
  • Supports Total Variation Loss for smoother embeddings and sparsity-inducing loss on ray weights.
  • Includes support for training on the ScanNet dataset.

Maintenance & Community

  • The project is maintained by Yash Bhalgat.
  • No specific community links (Discord/Slack) or roadmap are provided in the README.

Licensing & Compatibility

  • The repository does not explicitly state a license. The underlying NeRF-pytorch is MIT licensed. The NVIDIA paper is available under a permissive license.

Limitations & Caveats

The project is a pure PyTorch implementation and may not achieve the same performance as the C++/CUDA-based original. TODO items include voxel pruning and accelerated ray tracing, indicating ongoing development.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
27 stars in the last 90 days

Explore Similar Projects

Starred by Aravind Srinivas Aravind Srinivas(Cofounder of Perplexity), Ross Taylor Ross Taylor(Cofounder of General Reasoning; Creator of Papers with Code), and
3 more.

pixel-cnn by openai

0.1%
2k
TensorFlow implementation for PixelCNN++ research paper
created 9 years ago
updated 5 years ago
Starred by Aravind Srinivas Aravind Srinivas(Cofounder of Perplexity), Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), and
6 more.

pytorch3d by facebookresearch

0.2%
9k
PyTorch3D is a PyTorch library for 3D deep learning research
created 5 years ago
updated 1 week ago
Feedback? Help us improve.