ProjectGaussians
===================================
.. currentmodule:: gsplat
Given 3D gaussians parametrized by means :math:`μ`, covariances :math:`Σ`, colors :math:`c`, and opacities :math:`o`, the
:func:`gsplat.project_gaussians` function computes the projected 2D gaussians in the camera frame with means :math:`μ'`, covariances :math:`Σ'`, and depths :math:`z`
as well as their maximum radii in screen space and conic parameters.
Note, covariances are reparametrized by the eigen decomposition:
.. math::
Σ = RSS^{T}R^{T}
Where rotation matrices :math:`R` are obtained from four dimensional quaternions.
The projection of 3D Gaussians is approximated with the Jacobian of the perspective projection equation
as shown in :cite:p:`zwicker2002ewa`:
.. math::
J = \begin{bmatrix}
f_{x}/t_{z} & 0 & -f_{x} t_{x}/t_{z}^{2} \\
0 & f_{y}/t_{z} & -f_{y} t_{y}/t_{z}^{2} \\
0 & 0 & 0
\end{bmatrix}
Where :math:`t` is the center of a gaussian in camera frame :math:`t = Wμ+p`. The projected 2D covarience is then given by:
.. math::
Σ' = J W Σ W^{⊤} J^{⊤}
Citations
-------------
.. bibliography::
:style: unsrt
:filter: docname in docnames
.. autofunction:: project_gaussians