Skip to content

ubc-vision/stochasticsplats

Repository files navigation

StochasticSplats

Welcome to the StochasticSplats project repository!

StochasticSplats: Stochastic Rasterization for Sorting-Free 3D Gaussian Splatting

Accepted to ICCV 2025

Project Page arXiv

Shakiba Kheradmand1,2,*, Delio Vicini3,*, George Kopanas3,4,†, Dmitry Lagun1, Kwang Moo Yi2, Mark Matthews1, Andrea Tagliasacchi1,5,6

1Google DeepMind, 2University of British Columbia, 3Google, 4Runway ML, 5Simon Fraser University, 6University of Toronto

Overview

This repository builds upon and extends the capabilities of Splatapult, a 3D Gaussian splats viewer written by Anthony J. Thibault. StochasticSplats introduces stochastic rasterization methods enabling sorting-free 3D Gaussian splatting. You can run the app on desktop or in VR mode.

For a detailed explanation of controls and features, please refer to the original README.

🤝 Contributing

Found a bug or have an idea to improve this project?
I’d love your input! Please open a pull request.
Thank you for helping make this project better.

🚀 How to Run

To run StochasticSplats, follow these steps:

1. Prepare Your Scene

Ensure your scene is in the standard 3D Gaussian Splatting format, which consists of a directory containing:

  • cameras.json
  • input.ply
  • A pointcloud/ subdirectory with the point cloud data.

2. Run the Viewer

Execute the viewer from your build directory, providing the path to your scene.

Command Syntax:

splatapult.exe [options] [path/to/scene] [options]
./build/splatapult [path/to/scene] [options]

Example on Desktop:

splatapult.exe path/to/my/scene --render_mode [AB | ST | ST-popfree] --width 1920 --height 1080

Example on VR:

splatapult.exe -v path/to/my/scene --render_mode [AB | ST | ST-popfree] --width 1692 --height 1824

Command-Line Options

The following table details the command-line arguments added in this code base. For the complete options, please refere to original README.

Option Description Default
--width Sets the width of the application window. 1296
--height Sets the height of the application window. 840
--render_mode Specifies the rendering mode.
  • AB: Alpha Blending
  • ST: Stochastic Rendering (for original 3DGS scenes)
  • ST-popfree: Pop-free Stochastic Rendering (for scenes trained/finetuned using our method)
AB
--samples Defines the number of samples for stochastic modes. The maximum value depends on your hardware. 1
--no-taa Disables Temporal Anti-Aliasing (TAA). By default, TAA is enabled but automatically turns off when samples > 1. false

Citation

If you utilize StochasticSplats in your research, please cite our ICCV 2025 paper:

@inproceedings{kv2025stochasticsplats,
  title={StochasticSplats: Stochastic Rasterization for Sorting-Free 3D Gaussian Splatting},
  author={Kheradmand, Shakiba and Vicini, Delio and Kopanas, George and Lagun, Dmitry and Yi, Kwang Moo and Matthews, Mark and Tagliasacchi, Andrea},
  booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
  year={2025}
}

About

[ICCV 2025] Implementation of the paper: "StochasticSplats: Stochastic Rasterization for Sorting-Free 3D Gaussian Splatting"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published