In Euclidean geometry, an affine transformation or affinity (from the Latin, ''affinis'', "connected with") is a geometric transformation that preserves lines and parallelism, but not necessarily Euclidean distances and

Geometric Operations: Affine Transform

R. Fisher, S. Perkins, A. Walker and E. Wolfart. * *

Affine Transform

' by Bernard Vuilleumier, Wolfram Demonstrations Project.

Affine Transformation with MATLAB

{{Authority control Affine geometry Transformation (function) Articles containing video clips

angle
In Euclidean geometry, an angle is the figure formed by two Ray (geometry), rays, called the ''Side (plane geometry), sides'' of the angle, sharing a common endpoint, called the ''vertex (geometry), vertex'' of the angle.
Angles formed by two ...

s.
More generally, an affine transformation is an automorphism of an affine space (Euclidean spaces are specific affine spaces), that is, a function which maps an affine space onto itself while preserving both the dimension of any affine subspaces (meaning that it sends points to points, lines to lines, planes to planes, and so on) and the ratios of the lengths of parallel line segments. Consequently, sets of parallel affine subspaces remain parallel after an affine transformation. An affine transformation does not necessarily preserve angles between lines or distances between points, though it does preserve ratios of distances between points lying on a straight line.
If is the point set of an affine space, then every affine transformation on can be represented as the composition of a linear transformation on and a translation of . Unlike a purely linear transformation, an affine transformation need not preserve the origin of the affine space. Thus, every linear transformation is affine, but not every affine transformation is linear.
Examples of affine transformations include translation, scaling, homothety, similarity, reflection, rotation, shear mapping, and compositions of them in any combination and sequence.
Viewing an affine space as the complement of a hyperplane at infinity of a projective space, the affine transformations are the projective transformations of that projective space that leave the hyperplane at infinity invariant, restricted to the complement of that hyperplane.
A generalization of an affine transformation is an affine map (or affine homomorphism or affine mapping) between two (potentially different) affine spaces over the same field . Let and be two affine spaces with and the point sets and and the respective associated vector spaces over the field . A map is an affine map if there exists a linear map such that for all in .
Definition

Let be an affine space over a field , and be its associated vector space. An affine transformation is a bijection from onto itself that is an affine map; this means that $g(y-x)\; =f(y)-f(x)$ well defines a linear map from to ; here, as usual, the subtraction of two points denotes the free vector from the second one to the first one, and " well-defined" means that $y-x=\; y\text{'}-x\text{'}$ implies that $f(y)-f(x)=f(y\text{'})-f(x\text{'}.)$ If the dimension of is at least two, a ''semiaffine transformation'' of is a bijection from onto itself satisfying: #For every -dimensional affine subspace of , then is also a -dimensional affine subspace of . #If and are parallel affine subspaces of , then and are parallel. These two conditions are satisfied by affine transformations, and express what is precisely meant by the expression that " preserves parallelism". These conditions are not independent as the second follows from the first. Furthermore, if the field has at least three elements, the first condition can be simplified to: is a collineation, that is, it maps lines to lines.Structure

By the definition of an affine space, acts on , so that, for every pair in there is associated a point in . We can denote this action by . Here we use the convention that are two interchangeable notations for an element of . By fixing a point in one can define a function by . For any , this function is one-to-one, and so, has an inverse function given by . These functions can be used to turn into a vector space (with respect to the point ) by defining: :* $x\; +\; y\; =\; m\_c^\backslash left(m\_c(x)\; +\; m\_c(y)\backslash right),\backslash text\; x,y\; \backslash text\; X,$ and :* $rx\; =\; m\_c^\backslash left(r\; m\_c(x)\backslash right),\; \backslash text\; r\; \backslash text\; k\; \backslash text\; x\; \backslash text\; X.$ This vector space has origin and formally needs to be distinguished from the affine space , but common practice is to denote it by the same symbol and mention that it is a vector space ''after'' an origin has been specified. This identification permits points to be viewed as vectors and vice versa. For any linear transformation of , we can define the function by :$L(c,\; \backslash lambda)(x)\; =\; m\_c^\backslash left(\backslash lambda\; (m\_c\; (x))\backslash right)\; =\; c\; +\; \backslash lambda\; (\backslash vec).$ Then is an affine transformation of which leaves the point fixed. It is a linear transformation of , viewed as a vector space with origin . Let be any affine transformation of . Pick a point in and consider the translation of by the vector $\backslash bold\; =\; \backslash overrightarrow$, denoted by . Translations are affine transformations and the composition of affine transformations is an affine transformation. For this choice of , there exists a unique linear transformation of such that :$\backslash sigma\; (x)\; =\; T\_\; \backslash left(\; L(c,\; \backslash lambda)(x)\; \backslash right).$ That is, an arbitrary affine transformation of is the composition of a linear transformation of (viewed as a vector space) and a translation of . This representation of affine transformations is often taken as the definition of an affine transformation (with the choice of origin being implicit).Representation

As shown above, an affine map is the composition of two functions: a translation and a linear map. Ordinary vector algebra uses matrix multiplication to represent linear maps, and vector addition to represent translations. Formally, in the finite-dimensional case, if the linear map is represented as a multiplication by an invertible matrix $A$ and the translation as the addition of a vector $\backslash mathbf$, an affine map $f$ acting on a vector $\backslash mathbf$ can be represented as :$\backslash mathbf\; =\; f(\backslash mathbf)\; =\; A\; \backslash mathbf\; +\; \backslash mathbf.$Augmented matrix

Using an augmented matrix and an augmented vector, it is possible to represent both the translation and the linear map using a single matrix multiplication. The technique requires that all vectors be augmented with a "1" at the end, and all matrices be augmented with an extra row of zeros at the bottom, an extra column—the translation vector—to the right, and a "1" in the lower right corner. If $A$ is a matrix, :$\backslash begin\; \backslash mathbf\; \backslash \backslash \; 1\; \backslash end\; =\; \backslash left;\; href="/html/ALL/s/\backslash begin\_\_A\_\_\_\backslash mathbf\_\backslash \backslash \_0\_\_\backslash cdots\_\_0\_\_1\_\backslash end\_\backslash right.html"\; ;"title="\backslash begin\; A\; \backslash mathbf\; \backslash \backslash \; 0\; \backslash cdots\; 0\; 1\; \backslash end\; \backslash right">\backslash begin\; A\; \backslash mathbf\; \backslash \backslash \; 0\; \backslash cdots\; 0\; 1\; \backslash end\; \backslash right$ is equivalent to the following :$\backslash mathbf\; =\; A\; \backslash mathbf\; +\; \backslash mathbf.$ The above-mentioned augmented matrix is called an '' affine transformation matrix''. In the general case, when the last row vector is not restricted to be $\backslash left;\; href="/html/ALL/s/\backslash begin\_0\_\_\backslash cdots\_\_0\_\_1\_\backslash end\_\backslash right.html"\; ;"title="\backslash begin\; 0\; \backslash cdots\; 0\; 1\; \backslash end\; \backslash right">\backslash begin\; 0\; \backslash cdots\; 0\; 1\; \backslash end\; \backslash right$computer graphics
Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great deal ...

, computer vision and robotics
Robotics is an interdisciplinarity, interdisciplinary branch of computer science and engineering. Robotics involves design, construction, operation, and use of robots. The goal of robotics is to design machines that can help and assist human ...

.
Example augmented matrix

If the vectors $\backslash mathbf\_1,\; \backslash dotsc,\; \backslash mathbf\_$ are a basis of the domain's projective vector space and if $\backslash mathbf\_1,\; \backslash dotsc,\; \backslash mathbf\_$ are the corresponding vectors in the codomain vector space then the augmented matrix $M$ that achieves this affine transformation :$\backslash begin\backslash mathbf\backslash \backslash 1\backslash end\; =\; M\; \backslash begin\backslash mathbf\backslash \backslash 1\backslash end$ is :$M\; =\; \backslash begin\backslash mathbf\_1\&\backslash cdots\&\backslash mathbf\_\backslash \backslash 1\&\backslash cdots\&1\backslash end\; \backslash begin\backslash mathbf\_1\&\backslash cdots\&\backslash mathbf\_\backslash \backslash 1\&\backslash cdots\&1\backslash end^.$ This formulation works irrespective of whether any of the domain, codomain and image vector spaces have the same number of dimensions. For example, the affine transformation of a vector plane is uniquely determined from the knowledge of where the three vertices ($\backslash mathbf\_1,\; \backslash mathbf\_2,\; \backslash mathbf\_3$) of a non-degenerate triangle are mapped to ($\backslash mathbf\_1,\; \backslash mathbf\_2,\; \backslash mathbf\_3$), regardless of the number of dimensions of the codomain and regardless of whether the triangle is non-degenerate in the codomain.Properties

Properties preserved

An affine transformation preserves: # collinearity between points: three or more points which lie on the same line (called collinear points) continue to be collinear after the transformation. # parallelism: two or more lines which are parallel, continue to be parallel after the transformation. # convexity of sets: a convex set continues to be convex after the transformation. Moreover, the extreme points of the original set are mapped to the extreme points of the transformed set. # ratios of lengths of parallel line segments: for distinct parallel segments defined by points $p\_1$ and $p\_2$, $p\_3$ and $p\_4$, the ratio of $\backslash overrightarrow$ and $\backslash overrightarrow$ is the same as that of $\backslash overrightarrow$ and $\backslash overrightarrow$. #barycenter
In astronomy, the barycenter (or barycentre; ) is the center of mass of two or more bodies that orbit one another and is the point about which the bodies orbit. A barycenter is a dynamical point, not a physical object. It is an important c ...

s of weighted collections of points.
Groups

As an affine transformation is invertible, the square matrix $A$ appearing in its matrix representation is invertible. The matrix representation of the inverse transformation is thus :$\backslash left;\; href="/html/ALL/s/\backslash begin\_\_A^\_\_\_-A^\backslash vec\_\backslash \_\backslash \backslash \_0\_\_\backslash ldots\_\_0\_\_1\_\backslash end\_\backslash right.html"\; ;"title="\backslash begin\; A^\; -A^\backslash vec\; \backslash \; \backslash \backslash \; 0\; \backslash ldots\; 0\; 1\; \backslash end\; \backslash right">\backslash begin\; A^\; -A^\backslash vec\; \backslash \; \backslash \backslash \; 0\; \backslash ldots\; 0\; 1\; \backslash end\; \backslash right$ The invertible affine transformations (of an affine space onto itself) form the affine group, which has the general linear group of degree $n$ as subgroup and is itself a subgroup of the general linear group of degree $n\; +\; 1$. The similarity transformations form the subgroup where $A$ is a scalar times an orthogonal matrix. For example, if the affine transformation acts on the plane and if the determinant of $A$ is 1 or −1 then the transformation is an equiareal mapping. Such transformations form a subgroup called the ''equi-affine group''. A transformation that is both equi-affine and a similarity is an isometry of the plane taken with Euclidean distance. Each of these groups has a subgroup of '' orientation-preserving'' or ''positive'' affine transformations: those where the determinant of $A$ is positive. In the last case this is in 3D the group of rigid transformations ( proper rotations and pure translations). If there is a fixed point, we can take that as the origin, and the affine transformation reduces to a linear transformation. This may make it easier to classify and understand the transformation. For example, describing a transformation as a rotation by a certain angle with respect to a certain axis may give a clearer idea of the overall behavior of the transformation than describing it as a combination of a translation and a rotation. However, this depends on application and context.Affine maps

An affine map $f\backslash colon\backslash mathcal\; \backslash to\; \backslash mathcal$ between two affine spaces is a map on the points that acts linearly on the vectors (that is, the vectors between points of the space). In symbols, ''$f$'' determines a linear transformation ''$\backslash varphi$'' such that, for any pair of points $P,\; Q\; \backslash in\; \backslash mathcal$: :$\backslash overrightarrow\; =\; \backslash varphi(\backslash overrightarrow)$ or :$f(Q)-f(P)\; =\; \backslash varphi(Q-P)$. We can interpret this definition in a few other ways, as follows. If an origin $O\; \backslash in\; \backslash mathcal$ is chosen, and $B$ denotes its image $f(O)\; \backslash in\; \backslash mathcal$, then this means that for any vector $\backslash vec$: :$f\backslash colon\; (O+\backslash vec)\; \backslash mapsto\; (B+\backslash varphi(\backslash vec))$. If an origin $O\text{'}\; \backslash in\; \backslash mathcal$ is also chosen, this can be decomposed as an affine transformation $g\backslash colon\; \backslash mathcal\; \backslash to\; \backslash mathcal$ that sends $O\; \backslash mapsto\; O\text{'}$, namely :$g\backslash colon\; (O+\backslash vec)\; \backslash mapsto\; (O\text{'}+\backslash varphi(\backslash vec))$, followed by the translation by a vector $\backslash vec\; =\; \backslash overrightarrow$. The conclusion is that, intuitively, $f$ consists of a translation and a linear map.Alternative definition

Given two affine spaces $\backslash mathcal$ and $\backslash mathcal$, over the same field, a function $f\backslash colon\; \backslash mathcal\; \backslash to\; \backslash mathcal$ is an affine map if and only if for every family $\backslash \_$ of weighted points in $\backslash mathcal$ such that : $\backslash sum\_\backslash lambda\_i\; =\; 1$, we have : $f\backslash left(\backslash sum\_\backslash lambda\_i\; a\_i\backslash right)=\backslash sum\_\backslash lambda\_i\; f(a\_i)$. In other words, $f$ preservesbarycenter
In astronomy, the barycenter (or barycentre; ) is the center of mass of two or more bodies that orbit one another and is the point about which the bodies orbit. A barycenter is a dynamical point, not a physical object. It is an important c ...

s.
History

The word "affine" as a mathematical term is defined in connection with tangents to curves in Euler's 1748 Introductio in analysin infinitorum. Book II, sect. XVIII, art. 442 Felix Klein attributes the term "affine transformation" to Möbius and Gauss.Image transformation

In their applications to digital image processing, the affine transformations are analogous to printing on a sheet of rubber and stretching the sheet's edges parallel to the plane. This transform relocates pixels requiring intensity interpolation to approximate the value of moved pixels, bicubic interpolation is the standard for image transformations in image processing applications. Affine transformations scale, rotate, translate, mirror and shear images as shown in the following examples: The affine transforms are applicable to the registration process where two or more images are aligned (registered). An example of image registration is the generation of panoramic images that are the product of multiple images stitched together.Affine warping

The affine transform preserves parallel lines. However, the stretching and shearing transformations warp shapes, as the following example shows: This is an example of image warping. However, the affine transformations do not facilitate projection onto a curved surface or radial distortions.In the plane

Affine transformations in two real dimensions include: * pure translations, * scaling in a given direction, with respect to a line in another direction (not necessarily perpendicular), combined with translation that is not purely in the direction of scaling; taking "scaling" in a generalized sense it includes the cases that the scale factor is zero ( projection) or negative; the latter includes reflection, and combined with translation it includes glide reflection, * rotation combined with a homothety and a translation, * shear mapping combined with a homothety and a translation, or * squeeze mapping combined with a homothety and a translation. To visualise the general affine transformation of the Euclidean plane, take labelled parallelograms ''ABCD'' and ''A′B′C′D′''. Whatever the choices of points, there is an affine transformation ''T'' of the plane taking ''A'' to ''A′'', and each vertex similarly. Supposing we exclude the degenerate case where ''ABCD'' has zeroarea
Area is the quantity that expresses the extent of a region on the plane or on a curved surface. The area of a plane region or ''plane area'' refers to the area of a shape or planar lamina, while ''surface area'' refers to the area of an o ...

, there is a unique such affine transformation ''T''. Drawing out a whole grid of parallelograms based on ''ABCD'', the image ''T''(''P'') of any point ''P'' is determined by noting that ''T''(''A'') = ''A′'', ''T'' applied to the line segment ''AB'' is ''A′B′'', ''T'' applied to the line segment ''AC'' is ''A′C′'', and ''T'' respects scalar multiples of vectors based at ''A''. f ''A'', ''E'', ''F'' are collinear then the ratio length(''AF'')/length(''AE'') is equal to length(''A''′''F''′)/length(''A''′''E''′).Geometrically ''T'' transforms the grid based on ''ABCD'' to that based in ''A′B′C′D′''.
Affine transformations do not respect lengths or angles; they multiply area by a constant factor
:area of ''A′B′C′D′'' / area of ''ABCD''.
A given ''T'' may either be ''direct'' (respect orientation), or ''indirect'' (reverse orientation), and this may be determined by its effect on ''signed'' areas (as defined, for example, by the cross product of vectors).
Examples

Over the real numbers

The functions $f\backslash colon\; \backslash R\; \backslash to\; \backslash R,\backslash ;\; f(x)\; =\; mx\; +\; c$ with $m$ and $c$ in $\backslash R$ and $m\backslash ne\; 0$, are precisely the affine transformations of the real line.In plane geometry

In $\backslash mathbb^2$, the transformation shown at left is accomplished using the map given by: :$\backslash begin\; x\; \backslash \backslash \; y\backslash end\; \backslash mapsto\; \backslash begin\; 0\&1\backslash \backslash \; 2\&1\; \backslash end\backslash begin\; x\; \backslash \backslash \; y\backslash end\; +\; \backslash begin\; -100\; \backslash \backslash \; -100\backslash end$ Transforming the three corner points of the original triangle (in red) gives three new points which form the new triangle (in blue). This transformation skews and translates the original triangle. In fact, all triangles are related to one another by affine transformations. This is also true for all parallelograms, but not for all quadrilaterals.See also

* Anamorphosis – artistic applications of affine transformations * Affine geometry * 3D projection * Homography * Flat (geometry) * Bent functionNotes

References

* * * * * * * *External links

* *Geometric Operations: Affine Transform

R. Fisher, S. Perkins, A. Walker and E. Wolfart. * *

Affine Transform

' by Bernard Vuilleumier, Wolfram Demonstrations Project.

Affine Transformation with MATLAB

{{Authority control Affine geometry Transformation (function) Articles containing video clips