Homogeneous Coordinates

This section introduces homogeneous coordinates, a mathematical device that is very useful for discussing projective geometry, as well as several formalisms addressed in different chapters of this book.

We will call homogeneous coordinates (homogeneous coordinates) of a point in the plane $\mathbf{p} = ( x, y ) \in \mathbb{R}^{2}$ any ordered triple $\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}$ are a quadruple of numbers $\mathbf{\tilde{p}} =(x', y', z', w') \in \mathbb{R}^{4}$ such that $w' \neq 0$, $\frac{x'}{w'} = x$, $\frac{y'}{w'} = y$, and $\frac{z'}{w'} = z$.

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

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

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

Homogeneous coordinates have the following properties:

In homogeneous coordinates, a distinction is therefore made between a vector ($w=0$) and a point ($w \neq 0$), unlike in Euclidean coordinates. The set consisting of all nonzero triples/quadruples forms a two-dimensional/three-dimensional projective space.

Homogeneous coordinates make it possible to represent points at infinity and to express all geometric coordinate transformations used in computer vision in matrix form. Homogeneous coordinates are used in computer graphics because they represent affine transformations, exactly as in the Cartesian case, through matrices; moreover, they make it possible to represent perspective projections using the same formalism.

Paolo medici
2026-10-01