Simple 3D Gaussian Splatting
February 19, 2026 · View on GitHub
A minimal 3DGS implementation built on gsplat.
Dependencies
- PyTorch
- gsplat
- torchvision
- omegaconf
- tqdm
- PyYAML
Installation
conda env create -f environment.yml
conda activate gsplat
Project Structure
3DRR_codebase/
├── config/ # Training configs (YAML)
├── core/
│ ├── data/ # Dataset loaders (Blender format)
│ ├── libs/ # Utilities (SSIM, config, etc.)
│ └── model/ # 3DGS model
├── train.py # Training + validation + test rendering
├── eval.py # Load checkpoint and render test set
└── outputs/ # Training outputs
Data Format
Expects datasets in Blender/NeRF-synthetic JSON format with calibrated intrinsics.
Training
python train.py -c config/cupcake.yaml
Outputs are saved to outputs/<experiment>/<timestamp>/:
latest.pt— model checkpointconfig.yaml— copy of training configexamples/— validation render grids (val_step*.jpg) and augmented training samples (train_aug.jpg)test/— rendered test images
Evaluation (Render Only)
Load a checkpoint and render the test set (no metrics, no GT images needed):
python eval.py -w outputs/.../latest.pt
Config is automatically loaded from the checkpoint directory. Rendered images are saved to {checkpoint_dir}/test/.