NVS2COLMAP
Utilities for converting novel view synthesis datasets to COLMAP format.
Supported Formats
- Neural 3D Video Dataset: scenes with
poses_bounds.npyand onemp4file per camera. Seenvs2colmap/n3dv/README.md. - Dynamic 3D Gaussians: scenes with
train_meta.json,test_meta.json, images inims/, and masks inseg/. Seenvs2colmap/dynamic3dgs/README.md.
Supported Datasets
- Neural 3D Video Dataset: dataset facebookresearch/Neural_3D_Video, paper Neural 3D Video Synthesis from Multi-view Video.
- StreamRF / Meet Room Dataset: dataset AlgoHunt/StreamRF, paper Streaming Radiance Fields for 3D Video Synthesis.
- Robo360: dataset liuyubian/Robo360, paper Robo360: A 3D Omnispective Multi-Material Robotic Manipulation Dataset.
- Dynamic 3D Gaussians: dataset JonathonLuiten/Dynamic3DGaussians, paper Dynamic 3D Gaussians: Tracking by Persistent Dynamic View Synthesis.
Quick Start
Install the Python runtime dependencies:
pip install numpy torch
For Neural 3D Video scenes, the command also needs ffmpeg and ffprobe on
PATH, or explicit paths via --ffmpeg and --ffprobe. If you want to run
the full COLMAP pipeline, also provide a COLMAP executable via
--colmap-executable.
Extract a Neural 3D Video scene and write per-frame COLMAP text models:
python -m nvs2colmap.n3dv \
--path data/coffee_martini \
--ffmpeg ffmpeg \
--ffprobe ffprobe \
--n-frames 300
Start from source frame 10 and keep output frame numbering aligned with it:
python -m nvs2colmap.n3dv \
--path data/coffee_martini \
--ffmpeg ffmpeg \
--ffprobe ffprobe \
--start-number 10 \
--n-frames 300
Run the full COLMAP pipeline for each frame:
python -m nvs2colmap.n3dv \
--path data/Robo360/xarm6_gold_rope_in_basket_2 \
--ffmpeg ffmpeg \
--ffprobe ffprobe \
--video-extension MP4 \
--n-frames 1 \
--use-colmap \
--colmap-executable colmap \
--colmap-use-gpu 1
Link a Dynamic 3D Gaussians scene, including its masks, and write per-frame COLMAP text models:
python -m nvs2colmap.dynamic3dgs \
--path data/basketball \
--n-frames 150
For Neural 3D Video scenes, decoded frames are written to frame*/images by
default, and the command also writes frame*/sparse/0 text models. With
--use-colmap, decoded frames are written to frame*/input, and each frame
additionally gets the standard COLMAP outputs such as distorted/, images/,
sparse/, and stereo/. When --start-number N is provided, decoding starts
from source video frame N, and the generated folders/images are also numbered
from N.
For Dynamic 3D Gaussians scenes, images from both train_meta.json and
test_meta.json are hardlinked into frame*/images, and included masks are
hardlinked into frame*/image_masks (cam01.jpg pairs with cam01.jpg.png).
--no-train-camera and --no-test-camera drop one split. The same
--use-colmap switch writes images to frame*/input and runs COLMAP.
--start-number uses the same 1-based output numbering; source file
000000.jpg is frame 1.
Metadata
Release files for nvs2colmap 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nvs2colmap-0.3.0.tar.gz | 14.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nvs2colmap-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.1 kB
Release files / nvs2colmap-0.3.0.tar.gz
| Download URL | nvs2colmap-0.3.0.tar.gz |
|---|---|
| Size | 14.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95319a9fac673ffab6c9df49d4ff570c491c5efab3e60c400f28367b8b6182bc
|
|
BLAKE2b-256 checksum How to use checksums |
5f2dcbf62acb8f42b55bce375cc3b11c8e3ad72d2cb45fbb7a577fdc97c1e897
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / nvs2colmap-0.3.0-py3-none-any.whl
| Download URL | nvs2colmap-0.3.0-py3-none-any.whl |
|---|---|
| Size | 18.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2e965324d9281fe019177f7c82eda7a35fc1c2a3a103fdd58a7e25d5d906c176
|
|
BLAKE2b-256 checksum How to use checksums |
279e51389dbd085acec73c1f011d64a8d98fa1094380d54fa25f847f7acd0ff3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|