Download presentation
2
Assume correspondence has been determined…
Motivation (Horn87) Assume correspondence has been determined… Registration of 3D Shapes Any other better solutions for this least-square problem?
3
Exercise Configuration A Configuration B p1 = (3,0,0) p2 = (0,3,0)
q1 = (3,3,-3) q2 = (3,0,0) q3 = (6,0,-3) Find the rotation and translation that takes configuration A to configuration B
4
This is a badly chosen example, where the three points are linearly independent.
If this is not so (such as three coplanar points), this simple approach cannot be used. Solution
5
Recap in CG Course (link)
New algebra defined (addition, multiplication) Length; unit quaternion as rotation Perform rotations Converting to/from rotation matrices slerp q r
6
History Quaternions were introduced by Irish mathematician Sir William Rowan Hamilton in Hamilton was looking for ways of extending complex numbers to higher spatial dimensions. He could not do so for 3 dimensions, but 4 dimensions produce quaternions. According to the story Hamilton told, on October 16, he was out walking along the Royal Canal in Dublin with his wife when the solution in the form of the equation suddenly occurred to him; Hamilton then promptly carved this equation into the side of the nearby Brougham Bridge
7
Definitions1 Addition Multiplication
8
Definitions2 Complex conjugate Norm (of quaternion)
9
Alternative Formulation
A quaternion can be conveniently thought of as either: A vector with four components; A scalar plus a vector with three components; or A complex number with three different “imaginary” parts
10
Product in Matrix Form (Horn)
Notation: we use to denote quaternion Treat quaternion as a vector in R4 Product in Matrix Form (Horn) Expand first quaternion Expand second quaternion Note the matrices are different! This is the “matrix way” to compute quaternion product “R is orthogonal”!
11
Details
12
Dot Product of Quaternions
This is new! Dot Product of Quaternions Def: 4D vector viewpoint p.9
13
Unit Quaternion as Rotation1
Observations: (why Lq(v) is a rotation…) 1. Length preserved after operation 2. If v is along q, it is left unchanged. [Horn] dot product and triple product preserved …
14
Unit Quaternion as Rotation2
Lq is linear over R3 Lq(v) = Lq(n+a) = Lq(n) + Lq(a) = Lq(n) + a v a n q u v=Lp(u) , w=Lq(v) w= Lq(v)=qvq*=q(pup*)q*=(qp)u(qp)*=Lqp(u)
15
Application: Data Registration
Find the most appropriate rotation R and translation b Iterative (least square) solution or Closed form solution
16
Convert global coordinates to local coordinate (from centroid)
17
Objective function (minimization)
First, determine the rotation R, then the optimal translation by: 2 Optimal rotation R:
18
This correspond to R and R in p.8
Convert to quaternion: This correspond to R and R in p.8 is symmetric, with real eigenvalues l1, l2, l3, l4 and corresponding orthogonal unit eigenvectors v1, v2, v3, v4 in R4
19
Represent q in eigen basis
Simplified to: Represent q in eigen basis Therefore, l1: largest eigenvalue The optimum rotation is the eigenvector with largest eigenvalue. (It is already normalize).
20
Details
21
The Real Exercise Configuration A Configuration B p1 = (3,0,0)
q1 = (1,4,1) q2 = (1,1,4) q3 = (1,4,4) Find the rotation and translation that takes configuration A to configuration B
22
Quaternion in SVL
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.