1 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Iterative closest point algorithms Tutorial 4 Maks
Ovsjanikov tosca.cs.technion.ac.il/book Numerical geometry of
non-rigid shapes Stanford University, Winter 2009
Slide 2
2 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Outline Closed-form solution of absolute
orientation using unit quaternions. Horn, B. K. P., Journal of the
Optical Society of America, Vol. 4 1987 1.Problem Formulation.
2.Intuition. 3.Some Math. Robust Global Registration Gelfand N.,
Mitra N., Guibas L., Pottmann H., Proceedings of SGP, 2005
Formulation. 1.Problem and Motivation. 2.Multi-Scale point
descriptors. 3.Global Matching Branch and Bound. 4.Results.
Slide 3
3 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Closed-form solution of absolute orientation using
unit quaternions. Horn, B. K. P., Journal of the Optical Society of
America, Vol. 4 1987 Problem Formulation: 1.Given two sets points:
in. Find the rigid transform: and that minimizes:
Slide 4
4 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Closed-form solution of absolute orientation using
unit quaternions. Horn, B. K. P., Journal of the Optical Society of
America, Vol. 4 1987 Problem Formulation: 1.Given two sets points:
in. Find the rigid transform: and that minimizes:
Slide 5
5 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Closed-form solution of absolute orientation using
unit quaternions. Horn, B. K. P., Journal of the Optical Society of
America, Vol. 4 1987 Problem Formulation: 1.Given two sets points:
in. Find the rigid transform: and that minimizes: 2.In practice,
have many points. Perform this step many times. Want a fast way to
get an exact solution. Representation is important.
Slide 6
6 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Given two sets points: in. Find the rigid
transform: and that minimizes: Finding the translation part. 1. Let
and : the centroids of and and let and. Then. 2. where: minimized
if
Slide 7
7 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Given two sets points: in. Find the rigid
transform: and that minimizes: Need to find the rotation. 1.
Several ways to represent rotation: Orthonormal matrix, Euler
angle, Gibbs vector, quaternions, etc. Which one is most useful in
this case? 2. Plan of action: Want to minimize Since rotation
preserves lengths. Need to maximize: Question: What unit vector
maximizes if is symmetric? Answer: Eigenvector corresponding to the
maximum eigenvalue of.
Slide 8
8 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Given two sets points: in. Find the rigid
transform: and that minimizes: Need to find the rotation. 2. Plan
of action: Need to maximize: 3. If represent using orthonormal
matrices, then get: Would prefer:, where is a vector and - matrices
Quaternions allow us to express rotation in such form.
Slide 9
9 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Quaternions (two slides intro). 1. Vectors with 4
components, 3 of which are imaginary: 2. Multiplication is defined
using the rules: from which follows: In matrix form: 3. Dot
product: Matrices associated with unit quaternions are
orthonormal.
Slide 10
10 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Quaternions (two slides intro). 4. Conjugation:.
Matrix corresponding to the conjugate is the transpose of the
original. 5. Regular vectors can be represented with purely
imaginary quaternions: 6. Rotation can be represented with
composite product by a unit quaternion : where. Conversely, every
unit quaternion corresponds to a rotation.
Slide 11
11 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Back to Alignment. 1. Want to maximize: 2. In
quaternion form: 3. The optimal rotation quaternion is the
eigenvector corresponding to the maximum eigenvalue of:
Slide 12
12 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Summary Efficient algorithm to find the optimal
translation and rotation in the rigid alignment, provided that the
correspondences are known. Uniform scaling can be found similarly:
Quaternions provide a simple and efficient way to represent
rotations. Other methods: SVD, Orthogonal Matrices, Dual
Quaternions Closed-form solution of absolute orientation using unit
quaternions. Horn, B. K. P., Journal of the Optical Society of
America, Vol. 4 1987 Estimating 3-D rigid body transformations: a
comparison of four major algorithms. Eggert et al., Machine Vision
and Applications, Vol. 9 1997
Slide 13
13 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Outline Closed-form solution of absolute
orientation using unit quaternions. Horn, B. K. P., Journal of the
Optical Society of America, Vol. 4 1987 1.Problem Formulation.
2.Intuition. 3.Some Math. Robust Global Registration Gelfand N.,
Mitra N., Guibas L., Pottmann H., Proceedings of SGP, 2005
Formulation. 1.Problem and Motivation. 2.Multi-Scale point
descriptors. 3.Global Matching Branch and Bound. 4.Results. Images
by N. Gelfand
Slide 14
14 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Robust Global Registration Gelfand, Mitra, Guibas,
Pottmann, Proceedings of SGP, 2005 Problem: Given: Two shapes P and
Q which partially overlap. Using only rigid transforms, register Q
against P by minimizing the squared distance between them. Goal: No
assumptions about initial positions!
Slide 15
15 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Approaches Rigid transform can be specified with
small number of parameters Try all possible transform bases Find
the one that aligns the most points Guaranteed to find the correct
transform But can be costly
Slide 16
16 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Approaches Use neighborhood geometric information
Descriptors should be Invariant under transform Local Cheap
Improves correspondence search or used for feature extraction [Mokh
01, Huber 03, Li 05]
Slide 17
17 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Registration Problem Why its hard Unknown areas of
overlap Have to solve the correspondence problem Why its easy Rigid
transform is specified by small number of points Prominent features
are easy to identify We only need to align a few points
correctly.
Slide 18
18 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Method Overview 1.Use descriptors to identify
features Integral volume descriptor 2.Build correspondence search
space Few correspondences for each feature 3.Efficiently explore
search space Distance error metric Pruning algorithms
Slide 19
19 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Integral Descriptors Multiscale Inherent smoothing
f(x) p B r (p) [Manay 04]
Slide 20
20 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Integral Volume Descriptor Related to mean
curvature. Provably robust to noise. 0.20
Slide 21
21 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Descriptor Computation Approximate using a voxel
grid Convolution of occupancy grid with ball
Slide 22
22 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Feature Identification Pick as features points
with rare descriptor values Rare in the data rare in the model few
correspondences Works for any descriptor Features
Slide 23
23 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Multiscale Algorithm Features should be persistent
over scale change r=0.5r=1r=2r=4r=8 YYYNN NNYYY NNYNN
Slide 24
24 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Search the whole model for correspondences Range
query for descriptor values Cluster and pick representatives
Correspondence Space P Q
Slide 25
25 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Evaluating Correspondences Coordinate root mean
squared distance Requires best aligning transform Looks at
correspondences individually
Slide 26
26 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Rigidity Constraint Pair-wise distances between
features and correspondences should be the same P Q
Slide 27
27 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Rigidity Constraint Pair-wise distances between
features and correspondences should be the same P Q
Slide 28
28 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Evaluating Correspondences Distance root mean
squared distance Depends only on internal distances
Slide 29
29 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Search Algorithm Few features, each with few
potential correspondences Minimize dRMS Exhaustive search still too
expensive P Q
Slide 30
30 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Branch and Bound. Find global minimum of a
function. Search Space:
Slide 31
31 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Branch and Bound. Find global minimum of a
function. Search Space: 1.Split (Branch). 2.Bound. 3.Prune: If min
2 > max 1, can remove branch 2. min 1 max 1 min 2 max 2
Slide 32
32 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Branch and bound Initial bound using greedy
assignment Discard partial correspondences that fail thresholding
test Prune if partial correspondence exceeds bound Spaced out
features make incorrect correspondences fail quickly Since we
explore the entire search space, we are guaranteed to find optimal
alignment Up to cluster size Search Algorithm pipi pjpj qjqj qiqi
RcRc
Slide 33
33 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Search Algorithm Branch and bound Initial bound
using greedy assignment Discard partial correspondences that fail
thresholding test Prune if partial correspondence exceeds bound
Spaced out features make incorrect correspondences fail quickly
Since we explore the entire search space, we are guaranteed to find
optimal alignment Up to cluster size
Slide 34
34 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Greedy Initialization Good initial bound is
essential Build up correspondence set hierarchically
Slide 35
35 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Greedy Initialization Good initial bound is
essential Build up correspondence set hierarchically
Slide 36
36 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Greedy Initialization Good initial bound is
essential Build up correspondence set hierarchically
Slide 37
37 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Partial Alignment Allow null correspondences,
while maximizing the number of matches points
Slide 38
38 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Alignment Results Input: 2 scansAlignmentRefined
by ICP
Slide 39
39 Numerical geometry of non-rigid shapes Iterative closest
point algorithms Alignment Results Input: 10 scans AlignmentRefined
by ICP