https://github.com/pfnet/pynif3d
https://github.com/pfnet/pynif3d
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pfnet/pynif3d
- Owner: pfnet
- License: mit
- Created: 2021-08-17T06:53:45.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-08-18T07:26:53.000Z (almost 5 years ago)
- Last Synced: 2025-04-09T09:11:53.994Z (about 1 year ago)
- Language: Python
- Size: 2.68 MB
- Stars: 97
- Watchers: 83
- Forks: 4
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# PyNIF3D
[](https://github.com/pfnet/pynif3d/blob/master/LICENSE)
[](https://pynif3d.readthedocs.io/en/latest/)
PyNIF3D is an open-source PyTorch-based library for research on neural implicit
functions (NIF)-based 3D geometry representation. It aims to accelerate research by
providing a modular design that allows for easy extension and combination of NIF-related
components, as well as readily available paper implementations and dataset loaders.
As of August 2021, the following implementations are supported:
- [NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis (Mildenhall et al., 2020)](https://arxiv.org/abs/2003.08934)
- [Convolutional Occupancy Networks (Peng et al., 2020)](https://arxiv.org/abs/2003.04618)
- [Multiview Neural Surface Reconstruction by Disentangling Geometry and Appearance (Yariv et al., 2020)](https://arxiv.org/abs/2003.09852)
## Installation
To get started with PyNIF3D, you can use `pip` to install a copy of this repository on
your local machine or build the provided Dockerfile.
### Local Installation
```
pip install --user "https://github.com/pfnet/pynif3d.git"
```
The following packages need to be installed in order to ensure the proper functioning of
all the PyNIF3D features:
- torch_scatter>=1.3.0
- torchsearchsorted>=1.0
A [script](https://github.com/pfnet/pynif3d/blob/main/post_install.bash) has been
provided to take care of the installation steps for you. Please download it to a
directory of choice and run:
```
bash post_install.bash
```
### Docker Build
#### Enabling CUDA Support
Please make sure the following dependencies are installed in order to build the Docker
image with CUDA support:
- nvidia-docker
- nvidia-container-runtime
Then register the `nvidia` runtime by adding the following to `/etc/docker/daemon.json`:
```
{
"runtimes": {
"nvidia": {
[...]
}
},
"default-runtime": "nvidia"
}
```
Restart the Docker daemon:
```
sudo systemctl restart docker
```
You should now be able to build a Docker image with CUDA support.
#### Building Dockerfile
```
git clone https://github.com/pfnet/pynif3d.git
cd pynif3d && nvidia-docker build -t pynif3d .
```
#### Running the Container
```
nvidia-docker run -it pynif3d bash
```
## Tutorials
Get started with PyNIF3D using the examples provided below:
NeRF Tutorial
CON Tutorial
IDR Tutorial
In addition to the tutorials, pretrained models are also provided and ready to be used.
Please consult [this page](https://github.com/pfnet/pynif3d/blob/master/examples/pretrained_models.md) for more information.
## License
PyNIF3D is released under the MIT license. Please refer to [this document](https://github.com/pfnet/pynif3d/blob/master/LICENSE) for more information.
## Contributing
We welcome any new contributions to PyNIF3D. Please make sure to read
the [contributing guidelines](https://github.com/pfnet/pynif3d/blob/master/CONTRIBUTING.md)
before submitting a pull request.
## Documentation
Learn more about PyNIF3D by reading
the [API documentation](http://pynif3d.readthedocs.io/en/latest/).