Giter VIP home page Giter VIP logo

radiance-fields's Introduction

Radiance-Fields

NPM3D MVA project, coded from (almost) scratch, inspired by Space carving and Plenoxels. Requires the NeRF dataset.

Space carving, plenoxels and spherical harmonics

Composed of two steps: space carving and opaque voxels optimization. Running main_carve_sph.py takes approximately 4 minutes on a single GPU.

gif loading gif loading gif loading

gif loading gif loading gif loading

Spherical harmonics of degree 9 are used to render the shading of each voxel:

img img img img img img img img img

Space carving and point cloud extraction

Running main_carve.py takes approximately 1 minute on a single GPU.

img img img img

Our implementation of plenoxels

gif loading gif loading gif loading

gif loading gif loading gif loading

Training

Run main.py to start the training. It takes approximately 30 minutes on a single GPU and saves the final 128x128x128 voxel grid in ./saved_grids/.

gif loading

radiance-fields's People

Contributors

nissmar avatar

Stargazers

Xusy2333 avatar Jian HUANG avatar  avatar Beat magic with code avatar Jiahao Ma avatar Gennaro Schiano avatar Yongjia Ma avatar gcleo avatar jamesgzl avatar

Watchers

 avatar

radiance-fields's Issues

[Question] PSNR Experiment

Have you ever tried the result of svox2 of your implementation with offical svox2? I try with grid size=16 and downsample lego with scale=8, however... I dont reach the result as good as offical svox2. Have u ever try it?

A question about render ray in VoxGrid code!

Hi:
I I am very interested in your simple implementation of Plenoxels, although the speed and quality are not as good as the original project, it is good for getting started quickly.
But I have a problem in your code, in VoxelGrid.py file, there is a class method:def render_rays(self, ordir_tuple, N_points, inv_depth=1.2):
distances = 10 *
torch.sqrt((ordir_tuple[1]**2).sum(1,
keepdim=True))/inv_depth/(N_points-1)
This code is supposed to set the distance between each sample point on the ray, but why are you multiplying by 10, and what does inv_depth mean?
Looking forward to your answer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.