rs_gsplat_wsl
Science Score: 36.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.8%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: JTStephens18
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 30.8 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
gsplat
gsplat is an open-source library for CUDA accelerated rasterization of gaussians with python bindings. It is inspired by the SIGGRAPH paper 3D Gaussian Splatting for Real-Time Rendering of Radiance Fields, but we’ve made gsplat even faster, more memory efficient, and with a growing list of new features!
News
[May 2025] Arbitrary batching (over multiple scenes and multiple viewpoints) is supported now!! Checkout here for more details! Kudos to Junchen Liu.
[May 2025] Jonathan Stephens makes a great tutorial video for Windows users on how to install gsplat and get start with 3DGUT.
[April 2025] NVIDIA 3DGUT is now integrated in gsplat! Checkout here for more details. [NVIDIA Tech Blog] [NVIDIA Sweepstakes]
Installation
GSplat WSL2 CUDA Setup Guide
This guide will help you set up a development environment for the gsplat repository inside WSL2 with CUDA support.
✅ Prerequisites
- WSL2 Installed: Ensure WSL2 is installed with a distro like Ubuntu 22.04.
- NVIDIA GPU with CUDA Support on Windows: You must have a compatible NVIDIA GPU and CUDA drivers installed on Windows.
- CUDA for WSL: Follow NVIDIA's guide to install CUDA in WSL.
- Anaconda/Miniconda (Optional but Recommended): Conda makes it easier to manage isolated Python environments.
⚙️ Installation Instructions (WSL2 Developer Mode)
🔹 Step 1: Install CUDA Toolkit in WSL
Follow NVIDIA's instructions to install the WSL-compatible CUDA toolkit:
```bash
Add NVIDIA's package repositories
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
Add the NVIDIA CUDA repository key
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/3bf863cc.pub
Add the repository to your sources list
sudo add-apt-repository 'deb https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/ /'
Update and install
sudo apt update sudo apt install -y cuda ```
Add CUDA to your PATH by appending the following to your ~/.bashrc:
bash
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
Apply changes:
bash
source ~/.bashrc
Verify Installation:
bash
nvcc --version
🔹 Step 2: Create a Conda Environment (Recommended)
bash
conda create -n gsplat python=3.10 -y
conda activate gsplat
🔹 Step 3: Install PyTorch with CUDA Support
Install PyTorch matching your CUDA version (e.g., CUDA 12.6):
bash
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
🔹 Step 4: Install Build Tools & Dependencies
bash
sudo apt update
sudo apt install build-essential ninja-build libglm-dev
🔹 Step 5: Clone the Repository
bash
git clone --recursive https://github.com/RescueSight/Indoor-GS-Pipeline.git
cd Indoor-GS-Pipeline
🔹 Step 6: Install in Editable (Developer) Mode
bash
pip install -e .
⚠️ This will build CUDA components during installation. This is expected and required for development.
🔹 Step 7: Install Example Dependencies
bash
cd examples
pip install -r requirements.txt
Step 8. Running an example
bash
python simple_trainer.py default --data_dir ~/js-hackweek-virginia/RS_gsplat_wsl/datasets/office_0_1 --data_factor 1 --result_dir ~/js-hackweek-virginia/RS_gsplat_wsl/datasets/office_0_1/gsplat_sdf_base_mcmc
Evaluation
This repo comes with a standalone script that reproduces the official Gaussian Splatting with exactly the same performance on PSNR, SSIM, LPIPS, and converged number of Gaussians. Powered by gsplat’s efficient CUDA implementation, the training takes up to 4x less GPU memory with up to 15% less time to finish than the official implementation. Full report can be found here.
```bash cd examples pip install -r requirements.txt
download mipnerf_360 benchmark data
python datasets/download_dataset.py
run batch evaluation
bash benchmarks/basic.sh ```
Examples
We provide a set of examples to get you started! Below you can find the details about
the examples (requires to install some exta dependencies via pip install -r examples/requirements.txt)
- Train a 3D Gaussian splatting model on a COLMAP capture.
- Fit a 2D image with 3D Gaussians.
- Render a large scene in real-time.
Development and Contribution
This repository was born from the curiosity of people on the Nerfstudio team trying to understand a new rendering technique. We welcome contributions of any kind and are open to feedback, bug-reports, and improvements to help expand the capabilities of this software.
This project is developed by the following wonderful contributors (unordered):
- Angjoo Kanazawa (UC Berkeley): Mentor of the project.
- Matthew Tancik (Luma AI): Mentor of the project.
- Vickie Ye (UC Berkeley): Project lead. v0.1 lead.
- Matias Turkulainen (Aalto University): Core developer.
- Ruilong Li (UC Berkeley): Core developer. v1.0 lead.
- Justin Kerr (UC Berkeley): Core developer.
- Brent Yi (UC Berkeley): Core developer.
- Zhuoyang Pan (ShanghaiTech University): Core developer.
- Jianbo Ye (Amazon): Core developer.
We also have a white paper with about the project with benchmarking and mathematical supplement with conventions and derivations, available here. If you find this library useful in your projects or papers, please consider citing:
@article{ye2025gsplat,
title={gsplat: An open-source library for Gaussian splatting},
author={Ye, Vickie and Li, Ruilong and Kerr, Justin and Turkulainen, Matias and Yi, Brent and Pan, Zhuoyang and Seiskari, Otto and Ye, Jianbo and Hu, Jeffrey and Tancik, Matthew and Angjoo Kanazawa},
journal={Journal of Machine Learning Research},
volume={26},
number={34},
pages={1--17},
year={2025}
}
We welcome contributions of any kind and are open to feedback, bug-reports, and improvements to help expand the capabilities of this software. Please check docs/DEV.md for more info about development.
Owner
- Login: JTStephens18
- Kind: user
- Website: https://www.justintstephens.com/
- Repositories: 1
- Profile: https://github.com/JTStephens18
GitHub Events
Total
- Push event: 266
- Create event: 3
Last Year
- Push event: 266
- Create event: 3
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- actions/upload-artifact v4 composite
- actions/checkout v3 composite
- actions/setup-python v5 composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- peaceiris/actions-gh-pages v4 composite
- actions/checkout v3 composite
- actions/setup-python v5 composite
- peaceiris/actions-gh-pages v3 composite
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- actions/setup-python v4 composite
- peaceiris/actions-gh-pages v3 composite
- PyMCubes ==0.1.2
- icecream ==2.1.0
- lpips *
- numba *
- numpy ==1.19.2
- open3d *
- opencv_python ==4.5.2.52
- pycuda *
- pyhocon ==0.3.57
- pyrender *
- scikit-image *
- scipy ==1.7.0
- setuptools ==59.5.0
- tensorboard *
- torch ==1.8.0
- tqdm ==4.50.2
- trimesh ==3.9.8
- furo *
- sphinx *
- sphinx-copybutton *
- sphinx-design *
- sphinxcontrib-bibtex *
- sphinxcontrib-video *
- Pillow *
- imageio *
- matplotlib *
- numpy <2.0.0
- opencv-python *
- pyyaml *
- scikit-learn *
- splines *
- tensorboard *
- tensorly *
- torchmetrics *
- tqdm *
- tyro >=0.8.8
- viser *
- jaxtyping *
- ninja *
- numpy *
- rich >=12
- torch *
- typing_extensions *