130 likes | 259 Views
CSC 480 Computer Graphics K. Kirby Spring 2006. Characteristics of Linear Transformations A qualitative review. Linear maps R 2 R 2 and R 3 R 3. It's all about what happens to the basis. Definition of linearity. Linear algebra review. Maps R 2 R 2 and R 3 R 3.
E N D
CSC 480 Computer Graphics K. Kirby Spring 2006 Characteristics of Linear Transformations A qualitative review
Linear maps R2R2 and R3R3 It's all about what happens to the basis. Definition of linearity. Linear algebra review Maps R2R2 and R3R3
Properties Determinant Inverse Rank Image Kernel Singular values & vectors Condition number Eigenvalues & eigenvectors Some Kinds of 2D Linear Operators Identity Uniform scale Non-uniform scale Simple reflection Rotation Shear Singular operators Symmetric operators General operators
det M = 1 det M = -1/2 det M = 0 Determinants | det M | = the factor by which M changes measure sign det M = the change in orientation caused by M Q: Why does det AB = det A det B ?
“invertible” det 0 rank 3 rank 2 “singular” det = 0 rank 1 rank 0 Rank The rank of M is the dimension of its image. Four different 3D operators M with different ranks.
The conditionof M is the ratio of the largest to smallest nonzero singular value. It measures the “squash” of M. 1. = 6 Singular Values The singular values of M are the principle radii of the image of the unit sphere under M. This image is an ellipse in 2D, an ellipsoid in 3D, etc. 1 = 4 2 = 2/3 M If is large, then Mx=b is hard to solve numerically for x. Why?
Eigenvalues and Eigenvectors If a M leaves a the direction of a vector x unchanged, x is called a real eigenvector of M. The factor by which the length of x changes is called the eigenvalue of M for x. different direction- y not a real eigenvector y My M x Mx = 2x same direction- x is a real eigenvector with eigenvalue 2
m1 m2 m3 m2 m1 m3 Orthogonal Operators An operator is orthogonal if it maps the standard basis (e1, e2, e3) to an orthonormal set (one-to-one). e2 M = e1 e3 This means m1•m1 = 1, m1• m2 = 0, etc. In short: MTM = I So for an orthogonal matrix, the inverse is merely the transpose. A rotation is an orthogonal operator with det = 1.
Translations in N dimensions can be represented by shears in N+1 dimensions. d z=1 plane M = 1 0 d1 0 1 d2 0 0 1 y x Affine Transformations An affine transformation is a linear transformation followed by a translation: A(x) = Mx + d. d
Affine Transformations: Practice • Give 4x4 matrices for the following affine transformations of three dimensional space. • You may leave the matrices in factored form if you like, but each entry must be in rational radical form. • A translation that takes the point (6,7,8) to the point (2,2,2). • A rotation by 45 degrees about the line from (1,1,1) to (2,1,1). • A reflection through the plane y= 2. • A transformation that takes the shape “A>” on the xy-plane centered at (1,1,0) to the shape “>” centered at the origin, still lying in the xy plane, scaled uniformly to half its size. (The z dimension is not affected.) • The inverse of the transformation in #4.
Representation of Spatial Rotations Angle-axis representation x Matrix representation Rx
Representation of Spatial Rotations : Example Angle-axis representation [ 1 1 1 ]T 60o You can confirm this in OpenGL: double m[16] ; glMatrixMode( GL_MODELVIEW ) ; glLoadIdentity() ; glRotated( 60.0, 1,1,1 ) ; glGetDoublev( GL_MODELVIEW_MATRIX, m ); print(m) ; we will show this in class Matrix representation 0.667 -0.333 0.667 0 0.667 0.667 -0.333 0 -0.333 0.667 0.667 0 0 0 0 1