3d gaussian splatting

**3D Gaussian Splatting** is a **novel 3D scene representation using anisotropic 3D Gaussians** — representing scenes as collections of oriented ellipsoids that can be rendered extremely fast through rasterization, achieving real-time rendering speeds (100+ FPS) while maintaining quality comparable to NeRF, revolutionizing real-time photorealistic rendering. **What Is 3D Gaussian Splatting?** - **Definition**: Represent 3D scenes as sets of 3D Gaussian primitives. - **Primitive**: Each Gaussian is an oriented ellipsoid with position, covariance, color, opacity. - **Rendering**: Fast rasterization-based rendering (not ray marching). - **Speed**: 100-200 FPS real-time rendering on consumer GPUs. - **Quality**: Comparable to NeRF, often better for fine details. **Why Gaussian Splatting?** **Speed**: - **Real-Time**: 100+ FPS rendering (vs. 1-30 FPS for NeRF variants). - **Rasterization**: Leverages GPU rasterization pipeline. - **No Ray Marching**: Avoids expensive volumetric integration. **Quality**: - **High Fidelity**: Photorealistic rendering quality. - **Fine Details**: Captures thin structures better than NeRF. - **View-Dependent**: Supports view-dependent effects. **Flexibility**: - **Explicit**: Gaussians can be edited, moved, deleted. - **Interpretable**: Each Gaussian has clear geometric meaning. **3D Gaussian Representation** **Gaussian Primitive**: - **Position**: μ = (x, y, z) — center of Gaussian. - **Covariance**: Σ — 3x3 matrix defining shape and orientation. - **Color**: c = (r, g, b) or spherical harmonics for view-dependence. - **Opacity**: α — transparency. **Gaussian Function**: ``` G(x) = exp(-1/2 (x - μ)^T Σ^-1 (x - μ)) Where: - x: 3D point - μ: Gaussian center - Σ: Covariance matrix (defines ellipsoid shape) ``` **Anisotropic**: - Gaussians are ellipsoids, not spheres. - Can be stretched and oriented to match scene geometry. - More efficient representation than isotropic Gaussians. **How Gaussian Splatting Works** **Training**: 1. **Initialization**: Start with sparse point cloud (from SfM). 2. **Optimization**: Optimize Gaussian parameters to match training images. - Position, covariance, color, opacity. 3. **Adaptive Density Control**: Add/remove Gaussians as needed. - Split large Gaussians in high-detail areas. - Remove low-opacity Gaussians. 4. **Convergence**: Train for 7k-30k iterations (minutes). **Rendering**: 1. **Projection**: Project 3D Gaussians to 2D screen space. 2. **Sorting**: Sort Gaussians by depth (front to back). 3. **Rasterization**: Rasterize each Gaussian as 2D splat. 4. **Alpha Blending**: Blend Gaussians using alpha compositing. 5. **Output**: Final rendered image. **Rendering Equation**: ``` C = Σ c_i α_i Π (1 - α_j) i j

Go deeper with CFSGPT

Get AI-powered deep-dives, save terms, and run advanced simulations — free account.

Create Free Account