Projective Geometry/Classic/Projective Transformations/Transformations of projective 3-space

From Wikibooks, open books for an open world
< Projective Geometry‎ | Classic/Projective Transformations
Jump to: navigation, search

Three-dimensional transformations can be defined synthetically as follows: point X on a "subjective" 3-space must be transformed to a point T also on the subjective space. The transformations uses these elements: a pair of "observation points" P and Q, and an "objective" 3-space. The subjective and objective spaces and the two points all lie in four-dimensional space, and the two 3-spaces can intersect at some plane.

Draw line l1 through points X and P. This line intersects the objective space at point R. Draw line l2 through points R and Q. Line l2 intersects the projective plane at point T. Then T is the transform of X.

Analysis[edit]

Let

 X : (x,y,z,0),
 T : (T_x,T_y,T_z,0),
 P : (P_x,P_y,P_z,P_t),
 Q : (Q_x,Q_y,Q_z,Q_t).

Let there be an "objective" 3-space described by

 t = f(x,y,z) = m x + n y + k z + b

Draw line l1 through points P and X. This line intersects the objective plane at R. This intersection can be described parametrically as follows:

 (1 - \lambda_1) X + \lambda_1 P = (R_x,R_y,R_z,m R_x + n R_y + k R_z + b).

This implies the following four equations:

 R_x = x + \lambda_1 (P_x - x)
 R_y = y + \lambda_1 (P_y - y)
 R_z = z + \lambda_1 (P_z - z)
 R_t = \lambda_1 P_t = m R_x + n R_y + k R_z + b

Substitute the first three equations into the last one:

 (m x + n y + k z) + \lambda_1 (m P_x + n P_y + k P_z - m x - n y - k z - P_t) + b = 0

Solve for λ1,

 \lambda_1 = {-(b + m x + n y + k z) \over m (P_x - x) + n (P_y - y) + k (P_z - z) - P_t} = {\lambda_{1N} \over \lambda_{1D}}.

Draw line l2 through points R and Q. This line intersects the subjective 3-space at T. This intersection can be represented parametrically as follows:

 (1 - \lambda_2) R + \lambda_2 Q = (T_x,T_y,T_z,0)

This implies the following four equations:

 T_x = R_x + \lambda_2 (Q_x - R_x),
 T_y = R_y + \lambda_2 (Q_y - R_y),
 T_z = R_z + \lambda_2 (Q_z - R_z),
 R_t + \lambda_2 (Q_t - R_t) = 0.

The last equation can be solved for λ2,

 \lambda_2 = {R_t \over R_t - Q_t}

which can then be substituted into the other three equations:

 T_x = R_x + R_t {Q_x - R_x \over R_t - Q_t} = {R_t Q_x - R_x Q_t \over R_t - Q_t},
 T_y = R_y + R_t {Q_y - R_y \over R_t - Q_t} = {R_t Q_y - R_y Q_t \over R_t - Q_t},
 T_z = R_z + R_t {Q_z - R_z \over R_t - Q_t} = {R_t Q_z - R_z Q_t \over R_t - Q_t}.

Substitute the values for Rx, Ry, Rz, and Rt obtained from the first intersection into the above equations for Tx, Ty, and Tz,

 T_x = {\lambda_1 P_t Q_x - [x + \lambda_1 (P_x - x)] Q_t \over \lambda_1 P_t - Q_t} = {\lambda_1 [P_t Q_x - Q_t (P_x - x)] - x Q_t \over \lambda_1 P_t - Q_t},
 T_y = {\lambda_1 P_t Q_y - [y + \lambda_1 (P_y - y)] Q_t \over \lambda_1 P_t - Q_t} = {\lambda_1 [P_t Q_y - Q_t (P_y - y)] - y Q_t \over \lambda_1 P_t - Q_t},
 T_z = {\lambda_1 P_t Q_z - [z + \lambda_1 (P_z - z)] Q_t \over \lambda_1 P_t - Q_t} = {\lambda_1 [P_t Q_z - Q_t (P_z - z)] - z Q_t \over \lambda_1 P_t - Q_t}.

Multiply both numerators and denominators of the above three equations by the denominator of lambda1: λ1D,

 T_x = {\lambda_{1N} [P_t Q_x - Q_t (P_x - x)] - x Q_t \lambda_{1D} \over P_t \lambda_{1N} - Q_t \lambda_{1D} },
 T_y = {\lambda_{1N} [P_t Q_y - Q_t (P_y - y)] - y Q_t \lambda_{1D} \over P_t \lambda_{1N} - Q_t \lambda_{1D} },
 T_z = {\lambda_{1N} [P_t Q_z - Q_t (P_z - z)] - z Q_t \lambda_{1D} \over P_t \lambda_{1N} - Q_t \lambda_{1D} },

Plug in the values of the numerator and denominator of lambda1:

 \lambda_{1N} = b + m x + n y + k z
 \lambda_{1D} = P_t + m (x - P_x) + n (y - P_y) + k (z - P_z)

to obtain

 T_x = {T_{xN} \over T_{xD}} = {(b + m x + n y + k z) [P_t Q_x - Q_t (P_x - x)] - x Q_t [P_t + m (x - P_x) + n (y - P_y) + k (z - P_z)] \over P_t (b + m x + n y + k z) - Q_t [P_t + m (x - P_x) + n (y - P_y) + k (z - P_z)]}.
 T_y = {T_{yN} \over T_{xD}} ,
 T_{yN} = (b + m x + n y + k z) [P_t Q_y - Q_t (P_y - y)] - y Q_t [P_t + m (x - P_x) + n (y - P_y) + k (z - P_z)],
 T_z = {T_{zN} \over T_{xD}} .

The numerator TxN can be expanded. It will be found that second-degree terms of x, y, and z will cancel each other out. Then collecting terms with common x, y, and z yields

 T_{xN} = x (m P_t Q_x + n P_y Q_t + k P_z Q_t + Q_t (b - P_t)) + y n (P_t Q_x - P_x Q_t) + z k (P_t Q_x - P_x Q_t) + b (P_t Q_x - P_x Q_t)

Likewise, the denominator becomes

 T_{xD} = (m x + n y + k z) (P_t - Q_t) + (m P_x + n P_y + k P_z) Q_t + P_t (b - Q_t).

The numerator TyN, when expanded and then simplified, becomes

 T_{yN} = x m (P_t Q_y - P_y Q_t) + y (m P_x Q_t + n P_t Q_y + k P_z Q_t + Q_t (b - P_t)) + z k (P_t Q_y - P_y Q_t) + b (P_t Q_y - P_y Q_t).

Likewise, the numerator TzN becomes

 T_{zN} = x m (P_t Q_z - P_z Q_t) + y n (P_t Q_z - P_z Q_t) + z (m P_x Q_t + n P_y Q_t + k P_t Q_z + Q_t (b - P_t)) + b (P_t Q_z - P_z Q_t).

Quadrilinear fractional transformations[edit]

Let

 \alpha = m P_t Q_x + n P_y Q_t + k P_z Q_t + Q_t (b - P_t),
 \beta = n (P_t Q_x - P_x Q_t),
 \gamma = k (P_t Q_x - P_x Q_t),
 \delta = b (P_t Q_x - P_x Q_t),
 \epsilon = m (P_t - Q_t),
 \zeta = n (P_t - Q_t),
 \eta = k (P_t - Q_t),
 \theta = (m P_x + n P_y + k P_z) Q_t + P_t (b - Q_t),
 \iota = m (P_t Q_y - P_y Q_t),
 \kappa = m P_x Q_t + n P_t Q_y + k P_z Q_t + Q_t (b - P_t),
 \lambda = k (P_t Q_y - P_y Q_t),
 \mu = b (P_t Q_y - P_y Q_t),
 \nu = m (P_t Q_z - P_z Q_t),
 \xi = n (P_t Q_z - P_z Q_t),
 o = m P_x Q_t + n P_y Q_t + k P_t Q_z + Q_t (b - P_t),
 \rho = b (P_t Q_z - P_z Q_t).

Then the transformation in 3-space can be expressed as follows,

 T_x = {\alpha x + \beta y + \gamma z + \delta \over \epsilon x + \zeta y + \eta z + \theta},
 T_y = {\iota x + \kappa y + \lambda z + \mu \over \epsilon x + \zeta y + \eta z + \theta},
 T_z = {\nu x + \xi y + o z + \rho \over \epsilon x + \zeta y + \eta z + \theta}.

The sixteen coefficients of this transformation can be arranged in a coefficient matrix

 M_T = \begin{bmatrix} \alpha & \beta & \gamma & \delta \\
\iota & \kappa & \lambda & \mu \\
\nu & \xi & o & \rho \\
\epsilon & \zeta & \eta & \theta \end{bmatrix}.

Whenever this matrix is invertible, its coefficients will describe a quadrilinear fractional transformation.

Transformation T in 3-space can also be represented in terms of homogeneous coordinates as

 T : [x : y : z : 1] \rightarrow [\alpha x + \beta y + \gamma z + \delta : \iota x + \kappa y + \lambda z + \mu : \nu x + \xi y + o z + \rho : \epsilon x + \zeta y + \eta z + \theta ].

This means that the coefficient matrix of T can operate directly on 4-component vectors of homogeneous coordinates. Transformation of a point can be effected simply by multiplying the coefficient matrix with the position vector of the point in homogeneous coordinates. Therefore, if T transforms a point on the plane at infinity, the result will be

 T : [x : y : z : 0] \rightarrow [\alpha x + \beta y + \gamma z : \iota x + \kappa y + \lambda z : \nu x + \xi y + o z : \epsilon x + \zeta y + \eta z ].

If ε, ζ, and η are not all equal to zero, then T will transform the plane at infinity into a locus of points which lie mostly in affine space. If ε, ζ, and η are all zero, then T will be a special kind of projective transformation called an affine transformation, which transforms affine points into affine points and ideal points (i.e. points at infinity) into ideal points.

The group of affine transformations has a subgroup of affine rotations whose matrices have the form

 M_{AR} = \begin{bmatrix} \alpha & \beta & \gamma & 0 \\
\iota & \kappa & \lambda & 0 \\
\nu & \xi & o & 0 \\
0 & 0 & 0 & 1 \end{bmatrix}

such that the submatrix

 \begin{bmatrix} \alpha & \beta & \gamma \\
\iota & \kappa & \lambda \\
\nu & \xi & o \end{bmatrix}

is orthogonal.

Properties of quadrilinear fractional transformations[edit]

Given a pair of quadrilinear fractional transformations T1 and T2, whose coefficient matrices are  M_{T_1} and  M_{T_2} , then the composition of these pair of transformations is another quadrilinear transformation T3 whose coefficient matrix  M_{T_3} is equal to the product of the first and second coefficient matrices,

 (T_3 = T_2 \circ T_1) \leftrightarrow (M_{T_3} = M_{T_2} M_{T_1}).

The identity quadrilinear fractional transformation TI is the transformation whose coefficient matrix is the identity matrix.

Given a spatial projectivity T1 whose coefficient matrix is  M_{T_1} , the inverse of this projectivity is another projectivity T−1 whose coefficient matrix  M_{T_{-1}} is the inverse of T1′s coefficient matrix,

 (T_{-1} \circ T_1 = T_I) \leftrightarrow (M_{T_{-1}} M_{T_1} = I) .

Composition of quadrilinear transformations is associative, therefore the set of all quadrilinear transformations, together with the operation of composition, form a group.

This group of quadrilinear transformations contains subgroups of trilinear transformations. For example, the subgroup of all quadrilinear transformations whose coefficient matrices have the form

 \begin{bmatrix} \alpha & \beta & 0 & \delta \\
\iota & \kappa & 0 & \mu \\
0 & 0 & 0 & 0 \\
\epsilon & \zeta & 0 & \theta \end{bmatrix}

is isomorphic to the group of all trilinear transformations whose coefficient matrices are

 \begin{bmatrix} \alpha & \beta & \delta \\
\iota & \kappa & \mu \\
\epsilon & \zeta & \theta \end{bmatrix}.

This subgroup of quadrilinear transformations all have the form

 T : (x, y, z) \rightarrow \left( {\alpha x + \beta y + \delta \over \epsilon x + \zeta y + \theta} , {\iota x + \kappa y + \mu \over \epsilon x + \zeta y + \theta}, 0 \right).

This means that this subgroup of transformations will act on the plane z = 0 just like a group of trilinear transformations.

Spatial transformations of planes[edit]

Projective transformations in 3-space transform planes into planes. This can be demonstrated more easily using homogeneous coordinates.

Let

 z = m x + n y + b

be the equation of a plane. This is equivalent to

 m x + n y - z + b = 0. \qquad \qquad (21)

Equation (21) can be expressed as a matrix product:

 [m \ n \ -1 \ b] \begin{bmatrix} x \\
. \ . \\
y \\
. \ . \\
z \\
. \ . \\
1 \end{bmatrix} = 0.

A permutation matrix can be interposed between the two vectors, in order to make the plane vector have homogeneous coordinates:

 [ m : n : b : 1 ] \begin{bmatrix} 1 & 0 & 0 & 0 \\
\ & \ & \ & \ \\
0 & 1 & 0 & 0 \\
\ & \ & \ & \ \\
0 & 0 & 0 & 1 \\
\ & \ & \ & \ \\
0 & 0 & -1 & 0 \end{bmatrix} \begin{bmatrix} x \\
. \ . \\
y \\
. \ . \\
z \\
. \ . \\
1 \end{bmatrix} = 0. \qquad \qquad (22)

A quadrilinear transformation should convert this to

 [ T_m : T_n : T_b : 1 ] \begin{bmatrix} 1 & 0 & 0 & 0 \\
\ & \ & \ & \ \\
0 & 1 & 0 & 0 \\
\ & \ & \ & \ \\
0 & 0 & 0 & 1 \\
\ & \ & \ & \ \\
0 & 0 & -1 & 0 \end{bmatrix} \begin{bmatrix} T_x \\
. \ . \\
T_y \\
. \ . \\
T_z \\
. \ . \\
1 \end{bmatrix} = 0 \qquad \qquad (23)

where

 \begin{bmatrix} T_x \\
. \ . \\
T_y \\
. \ . \\
T_z \\
. \ . \\
1 \end{bmatrix} = \begin{bmatrix} \alpha & \beta & \gamma & \delta \\
\ & \ & \ & \ \\
\iota & \kappa & \lambda & \mu \\
\ & \ & \ & \ \\
\nu & \xi & o & \rho \\
\ & \ & \ & \ \\
\epsilon & \zeta & \eta & \theta \end{bmatrix} \begin{bmatrix} x \\
. \ . \\
y \\
. \ . \\
z \\
. \ . \\
1 \end{bmatrix}. \qquad \qquad (24)

Equation (22) is equivalent to  [ m : n : b : 1 ] \begin{bmatrix} 1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 1 \\
0 & 0 & -1 & 0 \end{bmatrix}
\begin{bmatrix} \bar{\alpha} & \bar{\iota} & \bar{\nu} & \bar{\epsilon} \\
\bar{\beta} & \bar{\kappa} & \bar{\xi} & \bar{\zeta} \\
\bar{\gamma} & \bar{\lambda} & \bar{o} & \bar{\eta} \\
\bar{\delta} & \bar{\mu} & \bar{\rho} & \bar{\theta} \end{bmatrix}
\begin{bmatrix} \alpha & \beta & \gamma & \delta \\
\iota & \kappa & \lambda & \mu \\
\nu & \xi & o & \rho \\
\epsilon & \zeta & \eta & \theta \end{bmatrix}  
\begin{bmatrix} x \\
. \ . \\
y \\
. \ . \\
z \\
. \ . \\
1 \end{bmatrix} = 0 \qquad \qquad (25) where

 \bar{\alpha} = \left| \begin{matrix} \kappa & \lambda & \mu \\
\xi & o & \rho \\
\zeta & \eta & \theta \end{matrix} \right| ; \qquad
\bar{\beta} = \left| \begin{matrix} \lambda & \mu & \iota \\
o & \rho & \nu \\
\eta & \theta & \epsilon \end{matrix} \right|, etc.

Applying equation (24) to equation (25) yields

 [ m : n : b : 1 ] \begin{bmatrix} 1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 1 \\
0 & 0 & -1 & 0 \end{bmatrix}
\begin{bmatrix} \bar{\alpha} & \bar{\iota} & \bar{\nu} & \bar{\epsilon} \\
\bar{\beta} & \bar{\kappa} & \bar{\xi} & \bar{\zeta} \\
\bar{\gamma} & \bar{\lambda} & \bar{o} & \bar{\eta} \\
\bar{\delta} & \bar{\mu} & \bar{\rho} & \bar{\theta} \end{bmatrix}
\begin{bmatrix} T_x \\
. \ . \\
T_y \\
. \ . \\
T_z \\
. \ . \\
1 \end{bmatrix} = 0. \qquad \qquad (26)

Combining equations (26) and (23) produces

 \begin{bmatrix} \bar{\alpha} & \bar{\beta} & \bar{\gamma} & \bar{\delta} \\
\bar{\iota} & \bar{\kappa} & \bar{\lambda} & \bar{\mu} \\
\bar{\nu} & \bar{\xi} & \bar{o} & \bar{\rho} \\
\bar{\epsilon} & \bar{\zeta} & \bar{\eta} & \bar{\theta} \end{bmatrix}
\begin{bmatrix} 1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & -1 \\
0 & 0 & 1 & 0 \end{bmatrix}
\begin{bmatrix} m \\
. \ . \\
n \\
. \ . \\
b \\
. \ . \\
1 \end{bmatrix} = \begin{bmatrix} 1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & -1 \\
0 & 0 & 1 & 0 \end{bmatrix} \begin{bmatrix} T_m \\
. \ . \\
T_n \\
. \ . \\
T_b \\
. \ . \\
1 \end{bmatrix}.

Solve for  [ T_m : T_n : T_b : 1 ]^T ,

 \begin{bmatrix} T_m \\
. \ . \\
T_n \\
. \ . \\
T_b \\
. \ . \\
1 \end{bmatrix} = \begin{bmatrix} \bar{\alpha} & \bar{\beta} & \bar{\delta} & -\bar{\gamma} \\
\bar{\iota} & \bar{\kappa} & \bar{\mu} & -\bar{\lambda} \\
\bar{\epsilon} & \bar{\zeta} & \bar{\theta} & -\bar{\eta} \\
-\bar{\nu} & -\bar{\xi} & -\bar{\rho} & \bar{o} \end{bmatrix}
\begin{bmatrix} m \\
. \ . \\
n \\
. \ . \\
b \\
. \ . \\
1 \end{bmatrix}.  \qquad \qquad (27)

Equation (27) describes how 3-space transformations convert a plane (m, n, b) into another plane (Tm, Tn, Tb) where

 T_m = {\bar{\alpha} m + \bar{\beta} n + \bar{\delta} b - \bar{\gamma} \over - \bar{\nu} m - \bar{\xi} n - \bar{\rho} b + \bar{o}},
 T_n = {\bar{\iota} m + \bar{\kappa} n + \bar{\mu} b - \bar{\lambda} \over - \bar{\nu} m - \bar{\xi} n - \bar{\rho} b + \bar{o}},
 T_b = {\bar{\epsilon} m + \bar{\zeta} n + \bar{\theta} b - \bar{\eta} \over - \bar{\nu} m - \bar{\xi} n - \bar{\rho} b + \bar{o}}.