Homogeneous Coordinates

This section introduces homogeneous coordinates, a mathematical tool that proves very useful for discussing the problem of projective geometry as well as various formalisms addressed in different chapters of this book.

Homogeneous coordinates of a point on the plane $\mathbf{p} = ( x, y ) \in \mathbb{R}^{2}$ will be any ordered triplet $\mathbf{\tilde{p}} =(x', y', w') \in \mathbb{R}^{3}$ of real numbers such that $w' \neq 0$, $\frac{x'}{w'} = x$, and $\frac{y'}{w'} = y$. Similarly, homogeneous coordinates of a point $\mathbf{p} = ( x, y, z ) \in \mathbb{R}^{3}$ will be a quadruplet of numbers $\mathbf{\tilde{p}} =(x', y', z', w') \in \mathbb{R}^{4}$ such that $w' \neq 0$ and $\frac{x'}{w'} = x$, $\frac{y'}{w'} = y$, and $\frac{z'}{w'} = z$.

The point $\mathbf{\tilde{p}}$ expressed in homogeneous coordinates corresponds to the real point $\mathbf {p}$ (inhomogeneous):

\begin{displaymath}
\mathbf{\tilde{p}} = ( x',y',w' ) = w' \left(\frac{x'}{w'},\frac{y'}{w'},1\right) = w' (x,y,1) = w' \mathbf{p}
\end{displaymath}

The vector $(x,y,1)$ is called the augmented vector.

Homogeneous coordinates have the following properties:

In homogeneous coordinates, there is a distinction between a vector ($w=0$) and a point ($w \neq 0$), which is not the case with Euclidean coordinates. The set composed of all non-zero triplets/quadrupoles forms a two-dimensional/three-dimensional projective space.

Homogeneous coordinates allow for the representation of points at infinity and enable the expression of all geometric coordinate transformations used in computer vision in matrix form. The use of homogeneous coordinates is prevalent in computer graphics due to their ability to represent, just like in the Cartesian case, affine transformations through the use of matrices and also allows representing perspective projections with the same formalism.

Paolo medici
2025-10-22