|
In mathematics, homogeneous coordinates, introduced by August Ferdinand Möbius in his 1827 work Der barycentrische Calcul[1], allow affine transformations to be easily represented by a matrix. Also they make calculations possible in projective space just as Cartesian coordinates do in Euclidean space. The homogeneous coordinates of a point of projective space of dimension n are usually written as (x : y : z : ... : w), a row vector of length n + 1, other than (0 : 0 : 0 : ... : 0). Two sets of coordinates that are proportional denote the same point of projective space: for any non-zero scalar c from the underlying field K, (cx : cy : cz : ... : cw) denotes the same point. Therefore this system of coordinates can be explained as follows: if the projective space is constructed from a vector space V of dimension n + 1, introduce coordinates in V by choosing a basis, and use these in P(V), the equivalence classes of proportional non-zero vectors in V. Taking the example of projective space of dimension three, there will be homogeneous coordinates (x : y : z : w). The plane at infinity is usually identified with the set of points with w = 0. Away from this plane we can use (x/w, y/w, z/w) as an ordinary Cartesian system; therefore the affine space complementary to the plane at infinity is coordinatised in a familiar way, with a basis corresponding to (1 : 0 : 0 : 1), (0 : 1 : 0 : 1), (0 : 0 : 1 : 1). If we try to intersect the two planes defined by equations x = w and x = 2w then we clearly will derive first w = 0 and then x = 0. That tells us that the intersection is contained in the plane at infinity, and consists of all points with coordinates (0 : y : z : 0). It is a line, and in fact the line joining (0 : 1 : 0 : 0) and (0 : 0 : 1 : 0). The line is given by the equation
where μ is a scaling factor. The scaling factor can be adjusted to normalize the coordinates (0 : y : z : 0), thereby eliminating one of the two degrees of freedom. The result is a set of points with only one degree of freedom, as is expected for a line.
[edit] Brackets versus parenthesesConsider projective 2-space: points in the projective plane are projections of points in 3-space ("3-D points"). Let the notation
refer to one of these 3-D points. Let
refer to another 3-D point. Then On the other hand, let the notation
refer to the projection of 3-D point (x : y : z) onto the projective plane. The point [x : y : z] can be considered to be equal to an equivalence class of 3-D points which belong to the 3-D line passing through the points (x : y : z) and (0 : 0 : 0). If
is another projective point, then Two 3-D points are equivalent if their projections onto the projective plane are equal: Thus, Remark: In some European countries (x:y:z) is customarily represented by (x,y,z); and [u:v:w] as [u,v,w]. [edit] Addition of homogeneous coordinatesThis distinction between brackets and parentheses means that addition of points in homogeneous coordinates will be defined in two different ways, depending on whether the coordinates are enclosed with brackets or parentheses. Consider once again the case of the projective plane. Addition of a pair of 2-D points is the same as for ordinary coordinates:
On the other hand, addition of a pair of projected points can be defined thus:
For projective 3-space, similar considerations apply. Addition of a pair of unprojected points is
whereas addition of a pair of projected points is
[edit] Scalar multiplication of homogeneous coordinatesThere are two kinds of scalar multiplication: one for unprojected points and another one for projected points. Consider a scalar a and an unprojected point (x : y : z). Then even though
Now consider the scalar a and a projected point [x : y : z]. Then but [edit] Linear combinations of points described with homogeneous coordinatesLet there be a pair of points A and B in projective 3-space, whose homogeneous coordinates are It is desired to find their linear combination
The X, Y, and Z coordinates can be considered as numerators, whereas the W coordinate can be considered as a denominator. To add homogeneous coordinates it is necessary that the denominator be common. Otherwise it is necessary to rescale the coordinates until all the denominators are common. Homogeneous coordinates are equivalent up to any uniform rescaling. [edit] Both points are affineIf both points are in affine 3-space, then
[edit] Both points are at infinityIf both points are on the plane at infinity, then WA = 0 and WB = 0. Their linear combination is
[edit] One point is affine and the other at infinityLet the first point be affine, so that
which means that the point at infinity is "dominant". [edit] General caseThe calculation can also be carried over without distinguishing between cases, similarly to the addition of two points:
Starting from this, you can re-obtain the formulas for above cases. In particular, applying this formula in the degenerate cases gives us that summing [0:0:0:0] with anything else produces [0:0:0:0] again. [edit] Use in computer graphicsHomogeneous coordinates are ubiquitous in computer graphics because they solve the problem of representing a translation and projection as a matrix operation. Homogeneous coordinates allow all affine transformations to be represented by a matrix operation. A translation in where column vectors are the homogeneous coordinates of the two points. All the linear transformations such as rotation and reflection about the origin can also be represented, by matrices of the form Furthermore all projective transformations can be represented by other matrices. This representation simplifies calculation in computer graphics as all necessary transformations can be performed by matrix multiplications. As a result, a series of affine transformations can be combined simply by multiplying successive matrices together. This is at the heart of real-time graphics systems such as OpenGL and DirectX which can use modern graphics cards to perform operations with homogeneous coordinates. [edit] Equivalence of transformationsHow does one go about proving that a sequence of projective transformations on an objects (more precisely on the geometric primitives that form the object) does really have the intended effect in the real-world ? One can prove this by induction on the number of projective transformations. The base case is the application of a single projective transformation, which we know to be true from the discussions above. Let us assume that the statements holds for a sequence of N transformations. Let P' (in homogeneous co-ordinates) be the output after application of N transformations. Let P be obtained projecting the point P' in to real space. Let T' be the (N + 1)th projective transform that we want to apply and let T be the corresponding the real-world operation. (Note that T may not necessarily be representable as a matrix, as translations can not be expressed as matrix transformations on real-world co-ordinates). Let Q' the output of applying T' on P', and let Q be the output of applying T on P. By comparing the projected co-ordinates of Q' and the co-ordinates of Q one can conclude that applying T' on P' is equivalent to applying T on P. Thus the statement holds for a sequence of (N+1) transformations. [edit] Referenceshttp://www.unchainedgeometry.com/jbloom/pdf/homog-coords.pdf [edit] See alsoPágina espejo de la WikipediaDirectorio de Enlaces Directorio dmoz Directorio espejo dmoz Pedro Bernardo |