Lecture 13 Operations in Graphics and Geometric Modeling I: Projection, Rotation, and Reflection Shang-Hua Teng
Projection Projection onto an axis (a,b) x axis is a vector subspace
Projection onto an Arbitrary Line Passing through 0 (a,b)
Projection on to a Plane
Projection on to a Line b a q p
Projection Matrix: on to a Line b What matrix P has the property p = Pb a q p
Properties of Projection on to a Line b a q p p is the points in Span(a) that is the closest to b
Projection onto a Subspace Input: Given a vector subspace V in Rm A vector b in Rm… Desirable Output: A vector in p in V that is closest to b The projection p of b in V A vector p in V such that (b-p) is orthogonal to V
How to Describe a Vector Subspace V in Rm If dim(V) = n, then V has n basis vectors a1, a2, …, an They are independent V = C(A) where A = [a1, a2, …, an]
Projection onto a Subspace Input: Given n independent vectors a1, a2, …, an in Rm A vector b in Rm… Desirable Output: A vector in p in C([a1, a2, …, an]) that is closest to b The projection p of b in C([a1, a2, …, an]) A vector p in V such that (b-p) is orthogonal to C([a1, a2, …, an])
Using Orthogonal Condition
Think about this Picture dim r dim r xr C(A) C(AT) p b Rn Rm xn b-p dim n- r N(A) N(AT) dim m- r
Connection to Least Square Approximation
Rotation q
Properties of The Rotation Matrix
Properties of The Rotation Matrix Q is an orthonormal matrix: QT Q = I
Rotation Matrix in High Dimensions Q is an orthonormal matrix: QT Q = I
Rotation Matrix in High Dimensions Q is an orthonormal matrix: QT Q = I
Reflection b u mirror
Reflection b u
Reflection b u mirror
Reflection is Symmetric and Orthonormal b u mirror
Orthonormal Vectors are orthonormal if
Orthonormal Matrices Q is orthonormal if QT Q = I The columns of Q are orthonormal vectors Theorem: For any vectors x and y,
Products of Orthonormal Matrices Theorem: If Q and P are both orthonormal matrices then QP is also an orthonormal matrix. Proof:
Orthonormal Basis and Gram-Schmidt Input: an m by n matrix A Desirable output: Q such that C(A) = C(Q), and Q is orthonormal
Basic Idea Suppose A = [a1 … an] If n = 1, then Q = [a1 /|| a1 ||] Start with a2 and subtract its projection along a1 Normalize
Gram-Schmidt Suppose A = [a1 … an] What is the complexity? O(mn2) q1 = a1 /|| a1 || For i = 2 to n What is the complexity? O(mn2)
Theorem: QR-Decomposition Suppose A = [a1 … an] There exist an upper triangular matrix R such that A = QR
Using QR to Find Least Square Approximation Can be solved by back substitution