StereoSplat
Model weights for StereoSplat: Metric-Scale Novel View Synthesis via Stereo-Grounded Gaussian Splatting (NeurIPS 2026).
Paper | Project Page | Code
StereoSplat predicts metric-scale 3D Gaussians from calibrated stereo pairs in a single feed-forward pass, and renders novel views and depth.
Files
| File | Content | SHA-256 |
|---|---|---|
stereosplat_v1.safetensors |
Weights; the model config is in the file metadata | e84556050f65b28367a6bab67606d742db7b4881aa202582d687ad560260184f |
stereosplat_v1.json |
Same config as plain JSON | 8c8c57468beafb55fabbea5cd2a72efff9b994a986839f891b27033a8fdff1cb |
FoundationStereo dependency
StereoSplat uses a frozen FoundationStereo backbone, which is not included here and is subject to NVIDIA's license. Get it separately:
git clone https://github.com/NVlabs/FoundationStereo third_party/FoundationStereo
git -C third_party/FoundationStereo checkout 6e8806816b533e4d13ddbb95ffa907b797060a62
Download the ViT-S model 11-33-40 from the FoundationStereo README and place it as:
checkpoints/foundation_stereo/11-33-40/
cfg.yaml
model_best_bp2.pth # sha256 8d7850b9dc68d1366722a02a39745704b1db41471211be6abd93ef463727e6be
Usage
Install the code following the GitHub repository, then:
hf download facebook/stereo-splat stereosplat_v1.safetensors --local-dir checkpoints
python scripts/demo.py \
--left path/to/left.png --right path/to/right.png \
--intrinsics FX FY CX CY --baseline 0.25 \
--checkpoint checkpoints/stereosplat_v1.safetensors \
--fs-checkpoint-dir checkpoints/foundation_stereo/11-33-40 \
--output-dir outputs/demo
The demo writes the Gaussians (.ply, standard 3DGS layout), the input-view depth, and rendered
RGB and depth for novel cameras. Rendering needs a CUDA GPU.
In Python:
from huggingface_hub import hf_hub_download
from stereosplat.models.build import build_model, load_checkpoint, read_checkpoint
path = hf_hub_download("facebook/stereo-splat", "stereosplat_v1.safetensors")
config = dict(read_checkpoint(path)["config"], fs_checkpoint_path="checkpoints/foundation_stereo/11-33-40")
model = build_model(config) # loads FoundationStereo
load_checkpoint(model, path) # loads StereoSplat
model = model.cuda().eval()
Results
Novel view synthesis at 320 x 640 with MAC-VO poses (paper protocol: 3 consecutive stereo pairs, first and last as input, middle rendered).
| Benchmark | PSNR | SSIM | LPIPS | AbsRel | delta1 (%) |
|---|---|---|---|---|---|
| Infinigen | 29.41 | 0.954 | 0.116 | 0.033 | 98.56 |
| TartanAir v2 | 26.25 | 0.944 | 0.101 | 0.058 | 94.95 |
| KITTI (zero-shot) | 25.20 | 0.941 | 0.101 | 0.044 | 95.98 |
Trained on TartanAir, Infinigen and XRStereo.
License
CC BY-NC 4.0, see LICENSE. Non-commercial use only. FoundationStereo is subject to NVIDIA's license.
Citation
@inproceedings{yugay2026stereosplat,
title = {StereoSplat: Metric-Scale Novel View Synthesis via Stereo-Grounded Gaussian Splatting},
author = {Yugay, Vladimir and Rozumny, Denis and Gevers, Theo and Vansteenkiste, Elias and Oswald, Martin R. and Luvizon, Diogo C.},
booktitle = {Advances in Neural Information Processing Systems (NeurIPS)},
year = {2026}
}