How wujh2001/swift4d works
Swift4D reconstructs dynamic multi-view scenes as compact, time-varying Gaussian splats. Users prepare DyNeRF or other multi-view data, train a scene model, render selected views and times, then evaluate rendered results. Training combines camera/image loading, Gaussian parameters and temporal deformation; rendering turns that representation into images and auxiliary depth/dynamics maps through a differentiable rasterizer. The README documents the dataset variants, staged training, rendering, and metric evaluation. The source excerpts are partial, so uncertain internal wiring is omitted.
Main entry points: train.py Training · render.py Render command · metrics.py Metric evaluation · dataset.py Scene datasets
Components 19
Data ingestion
- DyNeRF prep
scripts/preprocess_dynerf.py - Multi-view prep
scripts/multiview_data_process - Dataset loaders
scene/dataset_readers.py - Scene datasets
scene/dataset.py - Camera views
scene/cameras.py
Scene reconstruction
- Scene configs
arguments - Training
train.py - Gaussian model
scene/gaussian_model.py - Temporal deformation
scene/hash_deform.py - Model regularization
scene/regulation.py - Trained model
Rendering
- Render command
render.py - Gaussian renderer
gaussian_renderer/__init__.py - Differentiable rasterizer
submodules/diff-gaussian-rasterization/diff_gaussian_rasterization/__init__.py - Rendered outputs
Evaluation
- Metric evaluation
metrics.py - LPIPS metric
lpipsPyTorch/__init__.py - Evaluation results
Other components
- Researcher
Connections 23
- Researcher → DyNeRF prep: prepares data
- Researcher → Multi-view prep: prepares data
- DyNeRF prep → Dataset loaders: produces frames
- Multi-view prep → Dataset loaders: produces views
- Researcher → Training: starts training
- Training → Scene configs: loads settings
- Training → Scene datasets: loads scene
- Scene datasets → Dataset loaders: loads records
- Scene datasets → Camera views: provides views
- Training → Gaussian model: optimizes
- Training → Temporal deformation: trains dynamics
- Training → Model regularization: applies constraints
- Training → Trained model: saves model
- Researcher → Render command: requests render
- Render command → Trained model: loads model
- Render command → Gaussian renderer: renders views
- Gaussian renderer → Gaussian model: reads parameters
- Gaussian renderer → Differentiable rasterizer: rasterizes splats
- Render command → Rendered outputs: writes images
- Researcher → Metric evaluation: requests evaluation
- Metric evaluation → Rendered outputs: evaluates images
- Metric evaluation → LPIPS metric: computes perceptual score
- Metric evaluation → Evaluation results: writes scores