mirror of
https://github.com/nerfstudio-project/nerfstudio.git
synced 2026-11-14 03:44:02 +08:00
More renaming (#590)
This commit is contained in:
1 parent
1f83ad03db
commit
1bb0c88fb5
9 files changed
+115
-101
No files matched your search
@@ -60,13 +60,11 @@ We hope nerfstudio enables you to build faster :hammer: learn together :books: a
|
||||
The quickstart will help you get started with the default vanilla nerf trained on the classic blender lego scene.
|
||||
For more complex changes (e.g. running with your own data/ setting up a new NeRF graph, please refer to our [references](#learn-more).
|
||||
|
||||
#### 1. Installation: Setup the environment
|
||||
## 1. Installation: Setup the environment
|
||||
|
||||
This repository is tested with CUDA 11.3. Make sure to install [Conda](https://docs.conda.io/en/latest/miniconda.html#linux-installers) before preceding.
|
||||
### Create environment
|
||||
|
||||
</details>
|
||||
|
||||
Create the python environment
|
||||
We reccomend using conda to manage dependencies. Make sure to install [Conda](https://docs.conda.io/en/latest/miniconda.html) before preceding.
|
||||
|
||||
```
|
||||
conda create --name nerfstudio python=3.8.13
|
||||
@@ -74,36 +72,46 @@ conda activate nerfstudio
|
||||
python -m pip install --upgrade pip
|
||||
```
|
||||
|
||||
Clone the repo
|
||||
### Dependencies
|
||||
|
||||
```
|
||||
git clone git@github.com:plenoptix/nerfstudio.git
|
||||
```
|
||||
|
||||
Install dependencies and nerfstudio as a library
|
||||
|
||||
```
|
||||
cd nerfstudio
|
||||
pip install -e .
|
||||
```
|
||||
|
||||
Install tiny-cuda-nn (tcnn) to run instant_ngp
|
||||
Install pytorch with CUDA (this repo has been tested with CUDA 11.3) and [tiny-cuda-nn](https://github.com/NVlabs/tiny-cuda-nn)
|
||||
|
||||
```
|
||||
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 -f https://download.pytorch.org/whl/torch_stable.html
|
||||
pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
|
||||
```
|
||||
|
||||
Install tab completion for nerfstudio (bash & zsh)
|
||||
### Installing nerfstudio
|
||||
|
||||
Easy option:
|
||||
|
||||
```
|
||||
nf-install-cli
|
||||
pip install nerfstudio
|
||||
```
|
||||
|
||||
Run the test cases
|
||||
If you would want the latest and greatest:
|
||||
|
||||
```
|
||||
pytest tests
|
||||
git clone git@github.com:plenoptix/nerfstudio.git
|
||||
cd nerfstudio
|
||||
pip install -e .
|
||||
```
|
||||
|
||||
### Optional Installs
|
||||
|
||||
**Tab completion (bash & zsh)**
|
||||
|
||||
This needs to be rerun when the CLI changes, for example if nerfstudio is updated.
|
||||
|
||||
```bash
|
||||
ns-install-cli
|
||||
```
|
||||
|
||||
**Development packages**
|
||||
|
||||
```bash
|
||||
pip install -e.[dev]
|
||||
pip install -e.[docs]
|
||||
```
|
||||
|
||||
#### 2. Getting the data
|
||||
@@ -111,7 +119,7 @@ pytest tests
|
||||
Download the original NeRF Blender dataset. We support the major datasets and allow users to create their own dataset, described in detail [here](https://plenoptix-nerfstudio.readthedocs-hosted.com/en/latest/tutorials/data/index.html).
|
||||
|
||||
```
|
||||
python scripts/downloads/download_data.py --dataset=blender
|
||||
ns-download-data --dataset=blender
|
||||
```
|
||||
|
||||
Use `--help` to view all currently available datasets. The resulting script should download and unpack the dataset as follows:
|
||||
@@ -128,40 +136,34 @@ Use `--help` to view all currently available datasets. The resulting script shou
|
||||
...
|
||||
```
|
||||
|
||||
#### 3. Training a model
|
||||
## 3. Training a model
|
||||
|
||||
To run with all the defaults, e.g. vanilla nerf method with the blender lego image
|
||||
|
||||
```
|
||||
# To see what models are available.
|
||||
python scripts/train.py --help
|
||||
ns-train --help
|
||||
|
||||
# Run a vanilla nerf model.
|
||||
python scripts/train.py vanilla_nerf
|
||||
ns-train vanilla-nerf
|
||||
|
||||
# Run a faster version with instant ngp using tcnn (without the viewer).
|
||||
python scripts/train.py instant_ngp
|
||||
#
|
||||
ns-train nerfacto
|
||||
```
|
||||
|
||||
#### 3.x Training a model with the viewer
|
||||
### 3.x Training a model with the viewer
|
||||
|
||||
Make sure to forward a port for the websocket to localhost. The default port is 7007, which you should be expose to localhost:7007.
|
||||
|
||||
```bash
|
||||
# with the default port
|
||||
python scripts/train.py instant_ngp --viewer.enable
|
||||
ns-train nerfacto --vis viewer
|
||||
|
||||
# with a specified websocket port
|
||||
python scripts/train.py instant_ngp --viewer.enable --viewer.websocket-port=7008
|
||||
|
||||
# with the viewer bridge server as a separate process
|
||||
# in one terminal, start the bridge server:
|
||||
viewer-bridge-server # or equivalently, python scripts/run_viewer_bridge_server.py
|
||||
# in another terminal, start training:
|
||||
python scripts/train.py instant_ngp --viewer.enable --viewer.no-launch-bridge-server
|
||||
ns-train nerfacto --vis viewer --viewer.websocket-port=7008
|
||||
```
|
||||
|
||||
#### 4. Visualizing training runs
|
||||
### 4. Visualizing training runs
|
||||
|
||||
We support multiple methods to visualize training, the default configuration uses Tensorboard. More information on logging can be found [here](https://plenoptix-nerfactory.readthedocs-hosted.com/en/latest/tooling/logging_profiling.html).
|
||||
|
||||
@@ -170,7 +172,7 @@ We support multiple methods to visualize training, the default configuration use
|
||||
|
||||
We have developed our own Real-time web viewer, more information can be found [here](https://plenoptix-nerfactory.readthedocs-hosted.com/en/latest/tutorials/viewer/index.html). This viewer runs during training and is designed to work with models that have fast rendering pipelines.
|
||||
|
||||
To turn on the viewer, simply add the flag `--viewer.enable`.
|
||||
To turn on the viewer, simply add the flag `--vis viewer`.
|
||||
|
||||
</details>
|
||||
|
||||
@@ -192,13 +194,13 @@ We support logging to weights and biases. To enable wandb logging, add the flag
|
||||
|
||||
</details>
|
||||
|
||||
#### 5. Rendering a trajectories during inference
|
||||
## 5. Rendering a trajectories during inference
|
||||
|
||||
```
|
||||
python scripts/eval.py render-trajectory --load-config=outputs/blender_lego/instant_ngp/2022-07-07_230905/config.yml--traj=spiral --output-path=output.mp4
|
||||
ns-eval render-trajectory --load-config=outputs/blender_lego/instant_ngp/2022-07-07_230905/config.yml--traj=spiral --output-path=output.mp4
|
||||
```
|
||||
|
||||
#### 6. In-depth guide
|
||||
## 6. In-depth guide
|
||||
|
||||
For a more in-depth tutorial on how to modify/implement your own NeRF Graph, please see our [walk-through](https://plenoptix-nerfactory.readthedocs-hosted.com/en/latest/tutorials/pipelines/index.html).
|
||||
|
||||
|
||||
Reference in new issue
Block a user