nerfstudio-pixel-nerf
Unofficial pixelNeRF integration for Nerfstudio. A framework for training and rendering few-shot Neural Radiance Fields using image-conditioned feature extraction.
Install
uv pip install -e .
Verify method registration
ns-train --help | grep -i pixel-nerf
Dataset Format
This integration uses a custom pipeline to inject source views dynamically into the RayBundle metadata. It is compatible with the standard NerfstudioDataParserConfig. Point the dataparser to a scene root containing a valid transforms.json.
Configure PixelNeRF
Basic Training (Full Network Training - Default)
By default, the entire network (both ResNet encoder and NeRF MLPs) is trainable (freeze_mode = "none"):
ns-train pixel-nerf --data /path/to/scene_root
Transfer Learning & Freezing Strategies
When using pretrained weights (or transferring priors across distinct image domains such as histology datasets), you can choose how to freeze the encoder via --pipeline.model.freeze_mode:
-
Full Training (
none- Default):ns-train pixel-nerf \ --data /path/to/scene_root \ --pipeline.model.transfer_learning True \ --pipeline.model.pretrained_ckpt_path /path/to/pretrained.pth \ --pipeline.model.freeze_mode none
-
Freeze Late Layers (
late): Keeps low-level stem and early layers (conv1,bn1,layer1,layer2) trainable to adapt to distinct low-level image distributions (e.g. histopathology, microscopy), while freezing high-level semantic layers (layer3,layer4):ns-train pixel-nerf \ --data /path/to/scene_root \ --pipeline.model.transfer_learning True \ --pipeline.model.pretrained_ckpt_path /path/to/pretrained.pth \ --pipeline.model.freeze_mode late
-
Freeze Early Layers (
early): Freezes low-level feature extractors (conv1,bn1,layer1,layer2) and trains only high-level layers (layer3,layer4):ns-train pixel-nerf \ --data /path/to/scene_root \ --pipeline.model.transfer_learning True \ --pipeline.model.pretrained_ckpt_path /path/to/pretrained.pth \ --pipeline.model.freeze_mode early
-
Freeze All Encoder Weights (
all): Freezes the entire feature extractor ResNet:ns-train pixel-nerf \ --data /path/to/scene_root \ --pipeline.model.transfer_learning True \ --pipeline.model.pretrained_ckpt_path /path/to/pretrained.pth \ --pipeline.model.freeze_mode all
Differential Learning Rates
You can configure different learning rates for the image encoder and NeRF MLPs directly via CLI optimizer flags:
ns-train pixel-nerf \
--data /path/to/scene_root \
--pipeline.model.transfer_learning True \
--optimizers.encoder.optimizer.lr 1e-5 \
--optimizers.nerf.optimizer.lr 1e-4
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nerfstudio_pixelnerf-0.0.21.tar.gz.
File metadata
- Download URL: nerfstudio_pixelnerf-0.0.21.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
892ffbb2a317e9293cd8f06200b71cb4e04fb7be0ea4c60be6000d62c03ddfd0
|
|
| MD5 |
c4e0ed09facceb3e14350edc4fe8a896
|
|
| BLAKE2b-256 |
072fa9e0b0840fa74046119079112d21a2c1c78ac385162794680fb38d9e6483
|
File details
Details for the file nerfstudio_pixelnerf-0.0.21-py3-none-any.whl.
File metadata
- Download URL: nerfstudio_pixelnerf-0.0.21-py3-none-any.whl
- Upload date:
- Size: 1.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4640d933a7edaedaed9add14379613614fd21b2278af368ab4a77d0da1b02a31
|
|
| MD5 |
9c8d159330249aa631aec50c9234012f
|
|
| BLAKE2b-256 |
e19231baa6b86127603d7f8b8be670f5e098e4f67efd42f06f25409e6c98b108
|