Gaussian Mathematics: Attributes, Covariance, and Spherical Harmonics
- List the 59 parameters of a single 3D Gaussian by category (position, rotation, scale, opacity, SH coefficients) and identify which category dominates the storage budget
- Derive the covariance factorization Σ = RSS⊤R⊤ and explain why this parameterization guarantees positive semi-definiteness throughout gradient-based optimization
- Explain how spherical harmonics decompose view-dependent color into basis functions, identify which SH orders encode the DC color vs. view-dependent highlights, and state why the AC coefficients dominate the parameter budget
- Compute the total uncompressed scene size in MB given a Gaussian count and float32 parameter budget, and identify which attribute categories offer the most leverage for reduction
The 59-Parameter Gaussian
Every 3D Gaussian splat carries a fixed set of attributes. Understanding what each encodes and how many parameters it contributes is essential for any compression discussion.
The full parameter budget per Gaussian:
| Attribute | Parameters | Purpose |
|---|---|---|
| Position | 3 | Location in world space |
| Scale | 3 | Anisotropic extent along each axis |
| Rotation | 4 | Quaternion encoding orientation |
| Opacity | 1 | Base transparency (pre-sigmoid) |
| DC color (SH order 0) | 3 | View-independent RGB color |
| SH coefficients (orders 1–3) | 45 | View-dependent color variation |
| Total | 59 |
At float32 precision: 59 × 4 = 236 bytes per Gaussian. A typical scene with 5 million Gaussians is ~1.2 GB.
Covariance Factorization: Why
A covariance matrix must be positive semi-definite (PSD) — this is a mathematical requirement for a valid Gaussian. Storing and optimizing a full 3×3 symmetric matrix is possible, but gradient descent will almost certainly produce non-PSD matrices at intermediate steps, breaking the Gaussian interpretation.
3DGS avoids this by factoring:
where:
- is a rotation matrix (encoded as a quaternion , )
- is a diagonal scale matrix with
Why is always PSD? For any vector :
This is always non-negative by construction. The optimization landscape is unconstrained — you can apply gradient descent to and (log to keep scale positive) without special projection steps.
The geometric interpretation: stretches a unit sphere along three principal axes, and rotates the result. The Gaussian ellipsoid is the image of this transformation.
Spherical Harmonics for View-Dependent Color
Real surfaces exhibit view-dependent appearance: specular highlights, reflections, refractions, and subsurface scattering all change color based on the viewing direction. A single RGB color per Gaussian is insufficient.
Spherical harmonics (SH) are an orthonormal basis of functions on the unit sphere. They decompose a directional function into frequency bands:
where are the SH basis functions and are learnable coefficients.
The number of coefficients per band:
- Order 0 (DC): coefficient → view-independent color
- Order 1: total → 3 new coefficients (linear variation)
- Order 2: 9 total → 5 new coefficients
- Order 3: total → 7 new coefficients
Since 3DGS uses order 3 and stores one SH expansion per color channel, that's SH parameters. Subtracting the DC term (already counted under "DC color"): 45 SH AC coefficients.
Why SH Dominates the Bit Budget
The 45 SH coefficients represent of all parameters per Gaussian. This immediately suggests SH degree reduction as the highest-leverage compaction strategy — a topic we will explore in Module 3.
The trade-off: dropping from order 3 to order 0 (DC only) halves the parameter count but eliminates all view-dependent effects. Intermediate degrees offer a smooth quality–size curve.
The Gaussian Density Function in Context
Putting it together, the full density contribution of Gaussian at point (a multivariate Gaussian density):
The color seen along direction is then:
The sigmoid maps the linear SH sum into for each of the three RGB channels.