Rigid Geometric Transformations COMPSCI 527 — Computer Vision COMPSCI 527 — Computer Vision Rigid Geometric Transformations 1 / 12
Outline 1 Motivation 2 Cross Product 3 Triple Product 4 Rotations 5 Rigid Transformations COMPSCI 527 — Computer Vision Rigid Geometric Transformations 2 / 12
Motivation Motivation • The relative motion between a camera and an otherwise static scene is a rigid transformation • It underlies 3D reconstruction • A rigid transformation is rotation + translation • All vectors in R 3 • Reconstruction techniques also require knowing about cross product and triple product • Read notes for details COMPSCI 527 — Computer Vision Rigid Geometric Transformations 3 / 12
Cross Product The Cross Product • Geometry: The cross product of two three-dimensional vectors a and b is a vector c orthogonal to both a and b , oriented so that the triple a , b , c is right-handed, and with magnitude � c � = � a × b � = � a � � b � sin θ where θ is the smaller angle between a and b • The magnitude of a × b is the area of a rectangle with sides a and b � � a x a y a z • Algebra: c = a × b = � � � � b x b y b z � � = ( a y b z − a z b y , a z b x − a x b z , a x b y − a y b x ) T • Easy to check that a × b = − b × a COMPSCI 527 — Computer Vision Rigid Geometric Transformations 4 / 12
Cross Product The Cross-Product Matrix • c = ( a y b z − a z b y , a z b x − a x b z , a x b y − a y b x ) T is linear in b • Therefore, there exists a 3 × 3 matrix [ a ] × such that c = a × b = [ a ] × b c x b x = c = c y b y c z b z • The matrix [ a ] × is skew-symmetric: [ a ] T × = − [ a ] × COMPSCI 527 — Computer Vision Rigid Geometric Transformations 5 / 12
Triple Product The Triple Product • Definition: det([ a , b , c ]) = a T ( b × c ) = a x ( b y c z − b z c y ) − a y ( b x c z − b z c x ) + a z ( b x c y − b y c x ) • Easy to check: a T ( b × c ) = b T ( c × a ) = c T ( a × b ) = − a T ( c × b ) = − c T ( b × a ) = − b T ( a × c ) • Signed volume of parallelepiped θ a c b COMPSCI 527 — Computer Vision Rigid Geometric Transformations 6 / 12
Rotations Multiple Reference Frames • If we associate a reference system to a camera and the camera moves, or we consider multiple cameras, or we consider one camera and the world, we have multiple reference systems • Point coordinates are x , y , z • Left superscript denotes which reference system coordinates are expressed in: 1 y • Subscripts denote which point or reference system we are talking about: x 2 • 2 y 3 is the y coordinate of point 3 in reference system 2 COMPSCI 527 — Computer Vision Rigid Geometric Transformations 7 / 12
Rotations Multiple Reference Frames • A zero left superscript can be omitted: 0 z = z • The origin of a reference system is t (for “translation”) 0 • We always have i t i = 0 0 • If i , j , k are the unit points of a reference system, we always � i i i i j i i k i � = I , the 3 × 3 identity matrix have COMPSCI 527 — Computer Vision Rigid Geometric Transformations 8 / 12
Rotations z 1 z Rotations 1 y j k 1 1 y i 1 x 1 x 0 • No translation: 0 t 1 = t 1 = 0 0 • Both systems right-handed • i 1 , j 1 , k 1 are the unit vectors of reference system 1 expressed in reference system 0 • Given p = 0 p , what is 1 p ? COMPSCI 527 — Computer Vision Rigid Geometric Transformations 9 / 12
Rotations z Rotations p 1 z k 1 y 1 y j 1 x i 1 1 x p = 1 x i 1 + 1 y j 1 + 1 z k 1 1 x = i T 1 y = j T 1 z = k T 1 p , 1 p , 1 p 1 x i T 1 p = = R 1 p 1 y 1 p = j T 1 p 1 z k T 1 p i T 1 where R 1 = 0 R 1 = j T (unit vectors are the rows ) 1 k T 1 COMPSCI 527 — Computer Vision Rigid Geometric Transformations 10 / 12
Rotations Rotations in General a i T b • More generally, a j T b p = a R ba p a R b = where b a k T b • Rotations are reversible, so there exists b R a = a R − 1 b • b R a = a R T b because a R b is orthogonal • Cross-product is covariant with rotations: ( R a ) × ( R b ) = R ( a × b ) COMPSCI 527 — Computer Vision Rigid Geometric Transformations 11 / 12
Rigid Transformations Coordinate Transformation p − t 1 p k 1 j 1 k 0 t 1 i 1 i 0 j 0 • A.k.a. rigid transformation • First translate, then rotate: 1 p = R 1 ( p − t 1 ) • Inverse: p = R T 1 p + t 1 1 • Generally, if b p = a R b ( a p − a t b ) then a p = b R a ( b p − b t a ) where b R a = a R T b and b t a = − a R ba t b COMPSCI 527 — Computer Vision Rigid Geometric Transformations 12 / 12
Recommend
More recommend