Skip to content

superdianuj/simple_nerf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Simple NeRF Experimentation

This is a basic exploratory tensorflow implementation of the paper "NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis". It comprises of two exploration parts. One part consists of only startified sampling (coarse grained sampling) and the other part consists of bother startified as well as hierarchical sampling (fine-grained sampling).

The dataset utilizied is: http://cseweb.ucsd.edu/~viscomp/projects/LF/papers/ECCV20/nerf/tiny_nerf_data.npz

Startified Sampling

I used following code as reference: https://github.com/bmild/nerf/blob/master/tiny_nerf.ipynb

I only perform uniform random sampling for getting 3D points along rays. I compare the function approximation between coordinate space to RGB-density space, as MLP, CNN and Attention Architecture. In following 360 degree view rendering comparison, MLP's overfitting capability serves to make it suitable for the rendering task.

output_video

Startified and Hiearchical Sampling

I used following pytorch based code for reference: https://github.com/yenchenlin/nerf-pytorch/blob/master/run_nerf.py.

I perform first uniform sampling, and then hiearchical sampling to sample additional points around these uniform random points. I compare the function approximation between coordinate space to RGB-density space, as MLP, CNN and Attention Architecture. In following 360 degree view rendering comparison, the results are not great, and requires further work. But MLP seems to be best architecture for NeRF task.

output_video (1)

About

Simple NeRF implementation exploration from the paper "NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published