Skip to main content

3D Gaussian Splatting as Markov Chain Monte Carlo (Packaged Python Version)

PyPI version Downloads Total downloads CI CI

This repository contains the refactored Python code for 3dgs-mcmc. It is forked from commit 7b4fc9f76a1c7b775f69603cb96e70f80c7e6d13. The original code has been refactored to follow the standard Python package structure, while maintaining the same algorithms as the original version.

Features

  • Code organized as a standard Python package
  • Markov Chain Monte Carlo trainer for 3D Gaussian Splatting
  • Integration with reduced-3dgs

Prerequisites

  • Pytorch (v2.4 or higher recommended)
  • CUDA Toolkit (12.4 recommended, should match with PyTorch version)
  • (Optional) cuML for faster vector quantization

(Optional) If you have trouble with gaussian-splatting and reduced-3dgs, try to install it from source:

pip install wheel setuptools
pip install --upgrade git+https://github.com/yindaheng98/gaussian-splatting.git@master --no-build-isolation
pip install --upgrade git+https://github.com/yindaheng98/reduced-3dgs.git@main --no-build-isolation

PyPI Install

pip install --upgrade gaussian-splatting-mcmc

or build latest from source:

pip install wheel setuptools
pip install --upgrade git+https://github.com/yindaheng98/3dgs-mcmc.git@main --no-build-isolation

Development Install

git clone --recursive https://github.com/yindaheng98/reduced-3dgs
cd 3dgs-mcmc
pip install --target . --upgrade --no-deps .

Quick Start

  1. Download dataset (T&T+DB COLMAP dataset, size 650MB):
wget https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/datasets/input/tandt_db.zip -P ./data
unzip data/tandt_db.zip -d data/
  1. Train 3DGS-MCMC:
python -m gaussian_splatting_mcmc.train -s data/truck -d output/truck -i 30000 --mode base
  1. Render:
python -m gaussian_splatting.render -s data/truck -d output/truck -i 30000 --load_camera output/truck/cameras.json

** NeurIPS 2024 SPOTLIGHT **

3D Gaussian Splatting as Markov Chain Monte Carlo

button button button

Shakiba Kheradmand, Daniel Rebain, Gopal Sharma, Weiwei Sun, Yang-Che Tseng, Hossam Isack, Abhishek Kar, Andrea Tagliasacchi, Kwang Moo Yi

BibTeX

@inproceedings{kheradmand20243d,
    title = {3D Gaussian Splatting as Markov Chain Monte Carlo},
    author = {Kheradmand, Shakiba and Rebain, Daniel and Sharma, Gopal and Sun, Weiwei and Tseng, Yang-Che and Isack, Hossam and Kar, Abhishek and Tagliasacchi, Andrea and Yi, Kwang Moo},
    booktitle = {Advances in Neural Information Processing Systems (NeurIPS)},
    year = {2024},
    note = {Spotlight Presentation},
   }

Release files for gaussian-splatting-mcmc 1.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gaussian-splatting-mcmc 1.3.2
File Size Uploaded
gaussian_splatting_mcmc-1.3.2.tar.gz 15.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for gaussian-splatting-mcmc 1.3.2
File
gaussian_splatting_mcmc-1.3.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
gaussian_splatting_mcmc-1.3.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
gaussian_splatting_mcmc-1.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
gaussian_splatting_mcmc-1.3.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
gaussian_splatting_mcmc-1.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details

Total release size: 7.7 MB

Release files / gaussian_splatting_mcmc-1.3.2.tar.gz

Download URL gaussian_splatting_mcmc-1.3.2.tar.gz
Size 15.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4824918558eb84107bd83827f3b2236fc7f14258f11fe9b1598058eec59c438d
BLAKE2b-256 checksum
How to use checksums
bdca6c997b46194646c73ae7c11c9c8942ef4158201481f21d25b1a6274942e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.11

Release files / gaussian_splatting_mcmc-1.3.2-cp312-cp312-win_amd64.whl

Download URL gaussian_splatting_mcmc-1.3.2-cp312-cp312-win_amd64.whl
Size 123.0 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
07d5139e09a242830892cab38eca09daa4e894c13f2bc8b09d17434cce953aa6
BLAKE2b-256 checksum
How to use checksums
e0ecb2a4bd2429881a70b1663b6ccbda48b674cd555f601686da957dfb149695
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / gaussian_splatting_mcmc-1.3.2-cp311-cp311-win_amd64.whl

Download URL gaussian_splatting_mcmc-1.3.2-cp311-cp311-win_amd64.whl
Size 122.3 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
9d9c03b50ea92a9cc07ce684d5c4103ffbed7480cb45472755fdece069a05cd0
BLAKE2b-256 checksum
How to use checksums
ec558394ab4b3f0b1ce9d969968d80db53b704b810424663162363740ef670b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / gaussian_splatting_mcmc-1.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL gaussian_splatting_mcmc-1.3.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.7 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
49b589b600d927ebe3b4a958d67990c25f2c34c41eaaa978d355bd45aec35489
BLAKE2b-256 checksum
How to use checksums
f1e22eee475484e2aa015e8e281113c51f4e7fb45322f56407b430b28ccb3848
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release files / gaussian_splatting_mcmc-1.3.2-cp310-cp310-win_amd64.whl

Download URL gaussian_splatting_mcmc-1.3.2-cp310-cp310-win_amd64.whl
Size 121.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a07e1eb08e78ec1ea1d1982ac3b67ac1ef0ef79136c0c68edadecb34e086bef8
BLAKE2b-256 checksum
How to use checksums
b052a605ee8c7005f7d9ee8ed1c331f88388688886f02fd5f4b974f0a1175010
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.11

Release files / gaussian_splatting_mcmc-1.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL gaussian_splatting_mcmc-1.3.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.7 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
0ae8f4bf42b4c51bf49293440dfc4005705984793163e0881e89bc3ae292bd4d
BLAKE2b-256 checksum
How to use checksums
4db880e3aa2e1d9cd10b78395e387a68350fc6d93df58807a4a6718150f5009a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.20

Release history Release notifications | RSS feed

This release

1.3.2 This release

6 release files

1.3.1

4 release files

1.3.0

4 release files

1.2.1

4 release files

1.2.0

6 release files

1.1.10

6 release files

1.1.9

6 release files

1.1.8

6 release files

1.1.7

6 release files

1.1.6

6 release files

1.1.5

6 release files

1.1.4

5 release files

1.1.3

6 release files

1.1.2

6 release files

1.1.1

6 release files

1.1.0

6 release files

1.0.0

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page