diff --git a/README.md b/README.md index ae3c973e1..1ddc9cfa4 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,23 @@ -# pyRad :metal: +

pyRad🤘

-[![Documentation Status](https://readthedocs.com/projects/plenoptix-pyrad/badge/?version=latest)](https://plenoptix-pyrad.readthedocs-hosted.com/en/latest/?badge=latest) +

The all-in-one repo for NeRFs

-The all-in-one repo for NeRFs +

+ + Documentation Status + + + + Documentation Status + + +

+ + +* [Quickstart](#quickstart) +* [Walk-through tour](#walk-through-tour) +* [Feature List](#feature-list) +* [Benchmarked Model Architectures](#benchmarked-model-architectures) # Quickstart @@ -79,12 +94,7 @@ The actual NeRF graph definitions can be found in `nerf/graph/`. For instance, t class NeRFGraph(Graph): """Vanilla NeRF graph""" - def __init__( - self, - intrinsics=None, - camera_to_world=None, - **kwargs, - ) -> None: + def __init__(self, intrinsics=None, camera_to_world=None, **kwargs) -> None: super().__init__(intrinsics=intrinsics, camera_to_world=camera_to_world, **kwargs) def populate_fields(self): @@ -118,7 +128,11 @@ class NeRFGraph(Graph): """ ``` -Note that the graph is composed of fields and modules. Fields (`nerf/fields/`) represents the actual radiance field of the NeRF and is composed of field modules (`nerf/field_modules/`). Here, we define the field as the part of the network that takes in point samples and any other conditioning, and outputs any of the `FieldHeadNames` (`nerf/field_modules/field_heads.py`). The misc. modules can be any module outside of the field that are needed by the NeRF (e.g. losses, samplers, renderers). To get started on a new NeRF implementation, you simply have to define all relevant modules and populate them in the graph. +Note that the graph is composed of fields and modules. + +**Fields** (`nerf/fields/`) represents the actual radiance field of the NeRF and is composed of field modules (`nerf/field_modules/`). Here, we define the field as the part of the network that takes in point samples and any other conditioning, and outputs any of the `FieldHeadNames` (`nerf/field_modules/field_heads.py`). The **misc. modules** can be any module outside of the field that are needed by the NeRF (e.g. losses, samplers, renderers). + +To get started on a new NeRF implementation, you simply have to define all relevant modules and populate them in the graph. #### Dataset population TODO(ethan) @@ -194,8 +208,8 @@ bash environments/run_jupyter.sh ``` # Benchmarked Model Architectures -| Method | PSNR | -| --------------------------------------------------------------------------------- | ---- | -| [NeRF](https://arxiv.org/abs/2003.08934) | | -| [instant NGP](https://nvlabs.github.io/instant-ngp/assets/mueller2022instant.pdf) | | -| [Mip NeRF](https://arxiv.org/abs/2103.13415) | | +| Method | PSNR | +| --------------------------------------------------------------------------------- | ------------------------ | +| [NeRF](https://arxiv.org/abs/2003.08934) | :hourglass_flowing_sand: | +| [instant NGP](https://nvlabs.github.io/instant-ngp/assets/mueller2022instant.pdf) | :hourglass_flowing_sand: | +| [Mip NeRF](https://arxiv.org/abs/2103.13415) | :hourglass_flowing_sand: |