# nerfstudio-project/gsplat

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nerfstudio-project-gsplat).**

4,528 stars · 717 forks · Python · apache-2.0

## Links

- GitHub: https://github.com/nerfstudio-project/gsplat
- Homepage: https://docs.gsplat.studio/
- awesome-repositories: https://awesome-repositories.com/repository/nerfstudio-project-gsplat.md

## Topics

`gaussian-splatting`

## Description

gsplat is a high-performance differentiable rasterization engine for 3D Gaussian splatting, designed for real-time novel view synthesis from 2D images. It provides a complete pipeline for reconstructing 3D scenes by optimizing differentiable Gaussian representations, training models from COLMAP-processed captures or proprietary device files, and generating new viewpoints through a CUDA-accelerated rendering backend.

The framework distinguishes itself through memory-optimized CUDA kernels that reduce training memory usage by up to 4x compared to standard implementations while matching published quality metrics. It supports large-scale scene reconstruction with millions of Gaussians through gradient-based densification and pruning strategies, multi-GPU distributed rendering for handling massive scenes, and antialiased rendering to minimize visual artifacts. Additional capabilities include rendering arbitrary-dimensional feature vectors beyond RGB, compressing scene representations for reduced storage, and providing a browser-based interactive viewer for real-time exploration of trained models.

The project covers the full workflow from scene optimization and rendering to performance profiling and quality evaluation, with automated benchmark execution for reproducing standard metrics on common datasets.

## Tags

### Graphics & Multimedia

- [Gaussian Splatting](https://awesome-repositories.com/f/graphics-multimedia/media-production-suites/animation-tools/mathematical-visualization-engines/3d-surface-visualizations/3d-reconstruction-pipelines/gaussian-splatting.md) — Provides a high-performance differentiable rasterization engine for real-time novel view synthesis from 3D Gaussian splats. ([source](https://cdn.jsdelivr.net/gh/nerfstudio-project/gsplat@main/README.md))
- [Differentiable Geometry Renderers](https://awesome-repositories.com/f/graphics-multimedia/differentiable-geometry-renderers.md) — Renders 3D Gaussian splats into 2D images using a differentiable pipeline for gradient-based optimization. ([source](https://docs.gsplat.studio/))
- [3D Scene Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers.md) — Renders large 3D scenes in real time using CUDA-accelerated differentiable rasterization of Gaussians. ([source](https://cdn.jsdelivr.net/gh/nerfstudio-project/gsplat@main/README.md))
- [Gaussian Splatting Tile Sorters](https://awesome-repositories.com/f/graphics-multimedia/tiled-image-renderers/tiled-rasterization/gaussian-splatting-tile-sorters.md) — Implements tile-based sorting of 3D Gaussians for efficient real-time rasterization in depth order.
- [Antialiasing](https://awesome-repositories.com/f/graphics-multimedia/2d-spatial-rendering/antialiasing.md) — Applies a low-pass filter during rasterization to minimize aliasing artifacts in novel view synthesis.
- [Feature Vector Renderers](https://awesome-repositories.com/f/graphics-multimedia/3d-rendering-engines/feature-vector-renderers.md) — Renders arbitrary-dimensional feature vectors attached to 3D Gaussians beyond standard RGB. ([source](https://docs.gsplat.studio/))
- [Anti-Aliasing Techniques](https://awesome-repositories.com/f/graphics-multimedia/anti-aliasing-techniques.md) — Applies antialiasing techniques during rendering to minimize visual artifacts in novel view synthesis. ([source](https://docs.gsplat.studio/main/tests/eval.html))
- [Multi-GPU Gaussian Splatting Renderers](https://awesome-repositories.com/f/graphics-multimedia/distributed-rendering-systems/multi-gpu-gaussian-splatting-renderers.md) — Provides multi-GPU distributed rendering to handle massive 3D Gaussian scenes and increase throughput.
- [Gradient-Based Cloning](https://awesome-repositories.com/f/graphics-multimedia/gaussian-splatting-reconstruction/gradient-based-cloning.md) — Duplicates Gaussians in high-gradient regions to focus computational capacity on under-reconstructed scene areas. ([source](https://docs.gsplat.studio/apis/strategy.html))
- [Opacity Reset](https://awesome-repositories.com/f/graphics-multimedia/gaussian-splatting-reconstruction/opacity-reset.md) — Periodically resets Gaussian opacity values to prevent permanent transparency during scene optimization. ([source](https://docs.gsplat.studio/apis/strategy.html))
- [Extremely Large Gaussian Scene Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers/extremely-large-gaussian-scene-renderers.md) — Processes extremely large 3D Gaussian scenes faster than standard CUDA backends. ([source](https://docs.gsplat.studio/))
- [Pruned Gaussian Scene Renderers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/systems/gpu-accelerated-ui-rendering/3d-scene-renderers/pruned-gaussian-scene-renderers.md) — Renders millions of Gaussians in real time by discarding distant ones based on projected radius. ([source](https://docs.gsplat.studio/examples/large_scale.html))
- [Gaussian Splatting Viewers](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/scene-management-systems/3d-rendering-engines/browser-based-3d-visualizations/gaussian-splatting-viewers.md) — Ships a browser-based interactive viewer for real-time exploration of trained 3D Gaussian models.
- [Gaussian Splatting Viewers](https://awesome-repositories.com/f/graphics-multimedia/real-time-neural-renderers/real-time-3d-rendering-engines/gaussian-splatting-viewers.md) — Ships a browser-based viewer for real-time exploration of trained 3D Gaussian models. ([source](https://docs.gsplat.studio/main/examples/colmap.html))
- [Gaussian Pruning](https://awesome-repositories.com/f/graphics-multimedia/scene-graphs/scene-hierarchy-pruning/gaussian-pruning.md) — Prunes redundant Gaussians that contribute negligibly to rendered images, reducing memory and computation. ([source](https://docs.gsplat.studio/apis/strategy.html))
- [Single-Image 3D Reconstructions](https://awesome-repositories.com/f/graphics-multimedia/single-image-3d-reconstructions.md) — Optimizes 3D Gaussians to reconstruct a full 3D scene from a single 2D input view. ([source](https://docs.gsplat.studio/examples/image.html))
- [Gaussian Fitting Reconstructions](https://awesome-repositories.com/f/graphics-multimedia/single-image-3d-reconstructions/gaussian-fitting-reconstructions.md) — Ships a single-image reconstruction demo that fits 3D Gaussians to a single training image. ([source](https://cdn.jsdelivr.net/gh/nerfstudio-project/gsplat@main/README.md))

### Artificial Intelligence & ML

- [Gaussian Splatting Optimizers](https://awesome-repositories.com/f/artificial-intelligence-ml/audio-transcription/end-to-end-pipelines/differentiable-3d-reconstruction-pipelines/gaussian-splatting-optimizers.md) — Optimizes 3D Gaussian scene parameters by backpropagating gradients from rendered 2D images through a differentiable pipeline.
- [Differentiable 2D Projections](https://awesome-repositories.com/f/artificial-intelligence-ml/audio-transcription/end-to-end-pipelines/differentiable-3d-reconstruction-pipelines/gaussian-splatting-optimizers/differentiable-2d-projections.md) — Projects 3D Gaussian primitives onto a 2D image plane using a differentiable rasterization pipeline for real-time novel view synthesis. ([source](https://docs.gsplat.studio/apis/rasterization.html))
- [Rasterization Accelerators](https://awesome-repositories.com/f/artificial-intelligence-ml/distributed-acceleration-layers/cuda-accelerated-vision/rasterization-accelerators.md) — Renders 3D Gaussian splats into 2D images using custom CUDA kernels with automatic gradient computation.
- [Gaussian Splatting Rasterizers](https://awesome-repositories.com/f/artificial-intelligence-ml/distributed-acceleration-layers/cuda-accelerated-vision/rasterization-accelerators/gaussian-splatting-rasterizers.md) — Provides a CUDA-accelerated rasterization pipeline that processes millions of 3D Gaussian primitives in real time.
- [Novel View Synthesis Engines](https://awesome-repositories.com/f/artificial-intelligence-ml/image-synthesis-optimizers/novel-view-synthesis-engines.md) — Generates novel viewpoints from sparse 2D images using optimized 3D Gaussian representations. ([source](https://docs.gsplat.studio/_sources/index.rst.txt))
- [Gaussian Splatting View Synthesizers](https://awesome-repositories.com/f/artificial-intelligence-ml/image-synthesis-optimizers/novel-view-synthesis-engines/gaussian-splatting-view-synthesizers.md) — Generates novel viewpoints from 2D images by optimizing and rendering a 3D Gaussian representation through differentiable rasterization.
- [Gaussian Scene Optimizers](https://awesome-repositories.com/f/artificial-intelligence-ml/neural-scene-optimizers/gaussian-scene-optimizers.md) — Optimizes 3D Gaussian parameters by backpropagating gradients through a differentiable rasterization pipeline. ([source](https://docs.gsplat.studio/conventions/data_conventions.html))
- [Gaussian Splatting Optimizers](https://awesome-repositories.com/f/artificial-intelligence-ml/neural-scene-optimizers/gaussian-splatting-optimizers.md) — Provides a training pipeline that backpropagates gradients from rendered images to refine 3D Gaussian parameters.
- [CUDA Kernel Optimizations](https://awesome-repositories.com/f/artificial-intelligence-ml/training-memory-management/cuda-kernel-optimizations.md) — Ships custom CUDA kernels that cut training memory usage by up to 4x for 3D Gaussian splatting models. ([source](https://docs.gsplat.studio/))
- [Gaussian Splatting Multi-GPU Distributions](https://awesome-repositories.com/f/artificial-intelligence-ml/model-optimization/inference-deployment/model-deployment-toolkits/distributed-deployment-utilities/multi-gpu-distribution/gaussian-splatting-multi-gpu-distributions.md) — Splits 3D Gaussian rasterization across multiple GPUs for larger scenes and faster throughput. ([source](https://docs.gsplat.studio/))

### Part of an Awesome List

- [Accelerated Gaussian Splatting Trainers](https://awesome-repositories.com/f/awesome-lists/ai/gaussian-splatting/accelerated-gaussian-splatting-trainers.md) — Trains 3D Gaussian splatting models using up to 4x less GPU memory and 15% less time than the official implementation. ([source](https://docs.gsplat.studio/main/tests/eval.html))
- [Gaussian Splatting Reconstructors](https://awesome-repositories.com/f/awesome-lists/ai/scene-reconstruction/large-scale-reconstruction/gaussian-splatting-reconstructors.md) — Reconstructs scenes with millions of 3D Gaussian primitives using gradient-based densification and pruning strategies.
- [Gaussian Splatting](https://awesome-repositories.com/f/awesome-lists/ai/gaussian-splatting.md) — CUDA-accelerated rasterization library for Gaussian splatting.

### Programming Languages & Runtimes

- [Memory-Optimized CUDA Kernels](https://awesome-repositories.com/f/programming-languages-runtimes/compiler-interpreter-internals/compiler-infrastructure/jit-kernel-compilers/cuda-kernel-compilers/memory-optimized-cuda-kernels.md) — Ships memory-optimized CUDA kernels that cut training memory usage by up to 4x versus standard implementations.

### Software Engineering & Architecture

- [Gaussian Densification](https://awesome-repositories.com/f/software-engineering-architecture/gaussian-grid-mapping/gaussian-point-representations/point-densification/gaussian-densification.md) — Implements gradient-based densification that adds Gaussians in under-reconstructed regions during scene optimization. ([source](https://docs.gsplat.studio/apis/strategy.html))
- [Gradient-Based Densification Strategies](https://awesome-repositories.com/f/software-engineering-architecture/gaussian-grid-mapping/gaussian-point-representations/point-densification/gradient-based-densification-strategies.md) — Implements gradient-based densification to add and prune Gaussians in under-reconstructed regions during training.
- [Gaussian Splitting](https://awesome-repositories.com/f/software-engineering-architecture/gaussian-grid-mapping/gaussian-point-representations/gaussian-splitting.md) — Splits oversized Gaussians into smaller ones to capture fine details during scene optimization. ([source](https://docs.gsplat.studio/apis/strategy.html))
- [Densification Strategy Application](https://awesome-repositories.com/f/software-engineering-architecture/gaussian-grid-mapping/gaussian-point-representations/point-densification/densification-strategy-application.md) — Applies absgrad and MCMC-based densification strategies to manage Gaussian count during scene optimization. ([source](https://docs.gsplat.studio/main/tests/eval.html))

### Scientific & Mathematical Computing

- [Gaussian Feature Vector Renderers](https://awesome-repositories.com/f/scientific-mathematical-computing/vector-mathematics/n-dimensional-vector-representations/gaussian-feature-vector-renderers.md) — Renders multi-dimensional feature vectors attached to 3D Gaussians beyond standard RGB.
