Homogeneous coordinates

In projective geometry, homogeneous coordinates are used to represent points in a projective space by numerical values ​​and thus make it accessible to geometric problems of computational processing. Homogeneous coordinates have been introduced in the special case of barycentric coordinates ( or triangular coordinates ) by August Ferdinand Möbius in 1827.

So the points of real projective three-dimensional space can be represented (the usual three-dimensional Euclidean space, including the points at infinity ) by four homogeneous coordinates (i = 1,2,3). The coordinates correspond to the points at infinity. All homogeneous coordinates with nonzero represent the same point

Representation by homogeneous coordinates

Points in the projective -dimensional space can be constructed in -dimensional space by identifying the points on the straight line through the origin. It ( usually the real numbers ) and the corresponding line through 0 and is denoted by. Resulting homogeneous coordinates for the dimensional projective space, wherein the equivalent ratio applies if there, allowing for. → In more detail, the use of homogeneous coordinates in the main article " projective coordinate system " shown.

In general, for homogeneous coordinates that corresponding points are identified ( a ).

Homogeneous matrices

Rotation, scaling and shearing of a three-dimensional spatial object can vary by a matrix describing a translation of the object, however, by a vector. Hinders the translation is that the first three of these operations require a matrix multiplication, while a vector addition.

In order to calculate a translation also as a matrix operation, the space around a further dimension is added. A translation in three-dimensional space can now be described by a matrix multiplication with a matrix.

The transformation of cartesian coordinates into homogeneous coordinates is performed by:

The imaging of a point of a coordinate system to another is performed by multiplication with the homogeneous matrix:

Due to the associativity of matrix multiplication several successive multiplications can be combined into a single overall matrix.

Due the lack of commutativity, that the order of object manipulation is important. This can be graphically interpret that it makes a difference, whether in a local reference system an object is moved first along one axis and then rotates the new local coordinate system, or if an object rotates first and then the object in the same direction of the now is shifted mitrotierten local reference system in a new direction with respect to the world coordinate.

Back-transformation of homogeneous coordinates to Cartesian coordinates makes it possible to describe the perspective image by a matrix:

The coordinates, and can already be used as screen coordinates. is the distance of the transformed point from the virtual screen and ( depth buffer ) is stored in the Z-buffer. Is a perspective illustration means that the total matrix becomes singular and can not be inverted.

Important elementary homogeneous transformation


Rotation around a point, and a perspective illustration with the distance between the viewer's eye and the projection plane can be described by a single matrix. First, the origin of the local coordinate system is moved to the point by means of. Then the rotation occurs. Then, the coordinate system is moved back to the initial source means. The perspective illustration done by. The combined matrix, which matrices operate on the left from right is formed to be applied sequentially to a rightmost position vector to the left.


Homogeneous coordinates allow the display of affine transformations by multiplying the coordinate vector with matrix in a simple manner. For example, can a scaling and subsequent displacement of all the points of a 2D plane

In homogeneous coordinates

Express linear ( contains here ) by the problem is transformed into a one dimension higher space (such as also in the projective geometry). Inhomogeneous equations are homogeneous and can be solved using other methods or more efficient algorithms.

Homogeneous coordinates are often used for the conversion of coordinate systems. In order to avoid rounding errors, and to reduce calculation complexity solid, a plurality of successive matrix transformation ( translation, rotation, stretching, shearing), it is advantageous to combine in a single transformation matrix.

The page description language PostScript, for example, makes it possible to move the coordinate system and rotate. Such transformations can be handled by a PostScript interpreter such as Ghostscript or the printer software The easiest way to homogeneous coordinates.

Also in the 3D computer graphics, this example is used to quickly convert the coordinates of the points ( vertices ) of triangle meshes from the coordinate system of a virtual object depends on the movement of a virtual camera in actual screen coordinates. Computer graphics interfaces such as OpenGL and DirectX work with homogeneous coordinates and perform the calculations largely in the graphics card if it supports it.

In robotics can be consecutive axes described by concatenation of its associated homogeneous matrices. For this, the Denavit -Hartenberg transformation is applied as a standard procedure.