Date post: | 20-Jan-2016 |
Category: |
Documents |
View: | 227 times |
Download: | 2 times |
1Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Numerical geometryof shapes
Lecture II – Numerical Tools
non-rigid
Alex Bronstein
2Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Shape matching blueprints
Isometric embedding
A. Elad & R. Kimmel, 2003
3Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Shape matching blueprints
Compute canonical formsEXTRINSIC SIMILARITY OF CANONICAL FORMS
INTRINSIC SIMILARITY
= INTRINSIC SIMILARITY
A. Elad & R. Kimmel, 2003
4Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Numerical ingredients
Shape discretization
Metric discretization
How to compute geodesic distances?
Discrete embedding problem
How to compute the canonical forms?
Can we do better?
EMBEDDING
EMBEDDING
MATCHING
5Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Discrete Geodesics andShortest Path ProblemsDiscrete Geodesics andShortest Path Problems
6Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Shapes as graphs
Cloud of points Edges Undirected graph=+
7Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Discrete geodesic problem
Local length function
Path length
Length metric in graph
8Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Dijkstra’s algorithm
INPUT: source point
Initialize and for the rest of the graph;
Initialize queue of unprocessed vertices .
While
Find vertex with smallest value of ,
For each unprocessed adjacent vertex ,
Remove from .
OUTPUT: distance map .E.W. Dijkstra, 1959
9Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Troubles with the metric
Inconsistent metric approximation!
10Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Metrication error
Graph induces
inconsistent metric
SOLUTION 1
Change the graph
Both sampling & connectivity
Sampling theorems guaranteeconsistency for some conditions
SOLUTION 2
Change the algorithm
Stick to same sampling
Discrete surface rather than
graph
New shortest path algorithm
SOLUTION 1
Discretized shapeDiscrete metric
SOLUTION 2
Discretized metric
11Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Forest fire
Fermat’s Principle (of Least Action):
Fire chooses the quickest path to travel.
Pierre de Fermat (1601-1665)
Fermat’s Principle (of Least Action):
Fire chooses the shortest path to travel.
12Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Eikonal equation
Source
Equidistant contour
Steepest distance
growth direction
Eikonal equation
13Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Fast marching methods (FMM)
A family of numerical methods for
solving eikonal equation
Simulates wavefront propagation
from a source set
A continuous variant of Dijkstra’s
algorithm
Consistently discretized metric
J.N. Tsitsiklis, 1995; J. Sethian, 1996, R. Kimmel & J. Sethian, 1998; A. Spira & R. Kimmel, 2004
15Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Fast marching
Dijkstra’s update
Vertex updated from
adjacent vertex
Distance computed
from
Path restricted to graph edges
Fast marching update
Vertex updated from
triangle
Distance computed
from and
Path can pass on mesh faces
16Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Fast marching update step
Update from triangle
Compute from
and
Model wave front propagating from
planar source
unit propagation direction
source offset
Front hits at time
Hits at time
When does the front arrive to ?
Planar source
17Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Fast marching update step
is given by the point-to-plane distance
Solve for parameters and using the point-to-plane distance
…after some algebra
where
18Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
19Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Uses of fast marching
Geodesic distances
Minimal geodesics
Voronoi tessellation &
sampling
Offset curves
20Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Marching even faster
Heap-based update
Unknown grid visiting
order
Inefficient use of cache
Inherently sequential
Raster scan update
Regular access to
memory
Can be parallelized
Suitable only for regular
grid
21Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Raster scan fast marching
Parametric surface
Parametrization domain sampled on Cartesian grid
Four alternating scans
22Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Raster scan fast marching
4 scans=1 iteration 2 iterations 3 iterations
4 iterations 5 iterations 6 iterations
Several iterations requiredfor non-Euclidean geometries
23Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Marching even faster
Heap-based update
Irregular use of memory
Sequential
Any grid
Single pass,
Raster scan update
Regular access to
memory
Can be parallelized
Only regular grids
Data-dependent
complexity
24Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
O. Weber, Y. Devir, A. Bronstein, M. Bronstein & R. Kimmel, 2008
Parallellization
Rotate by 450
On NVIDIA GPU 50msec per distance map on 10M vertices
200M distances per second!
25Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Embedding ProblemsEmbedding Problems
26Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Isometric embedding
27Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Mapmaker’s problem
28Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Mapmaker’s problem
A sphere has non-zero curvature,
therefore, it is not isometric to the plane
(a consequence of Theorema egregium)
Karl Friedrich Gauss (1777-1855)
29Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Minimum distortion embedding
A. Elad & R. Kimmel, 2003
30Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Discrete embedding problem
Ingredients:
Discretized shape
Discretized metric
Euclidean embedding space
Embedding is a configuration of points in represented
as a matrix with the Euclidean metric
Embedding distortion (stress) function
e.g., quadratic
Numerical procedure to minimize
31Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Discrete embedding problem
Multidimensional scaling (MDS)
32Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Minimization of quadratic stress
Quadratic stress
where
Its gradient
Non-linear non-convex function of variables
33Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Minimization of quadratic stess
Start with some
Repeat for
Steepest descent step
Until convergence
OUTPUT: canonical form
Can converge to local minimum
Minimum defined modulo congruence
34Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Examples of canonical forms
Canonical forms
Near-isometric deformations of a shape
35Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Examples of canonical forms
Embedding distortion limitsdiscriminative power!
J.N. Tsitsiklis, 1995; J. Sethian, 1996, R. Kimmel & J. Sethian, 1998; A. Spira & R. Kimmel, 2004
36Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Non-Euclidean Embedding
Non-Euclidean Embedding
37Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Euclidean embedding
38Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Non-Euclidean embedding
39Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Spherical embedding
Richer geometry than Euclidean (asymptotically Euclidean).
Minimum embedding distortion obtained for shape-dependent radius.
40Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
The ultimate embedding space
Embed one shape directly into the other
If shapes are isometric, embedding is distortionless
Otherwise, distortion is the measure of dissimilarity
41Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Generalized embedding problem
A. Bronstein, M. Bronstein & R. Kimmel, 2006
42Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Generalized multidimensional scaling
Representation
How to represent arbitrary points on ?
Metric approximation
How to compute distance terms between arbitrary
points on ?
Numerical procedure
How to minimize stress?
A. Bronstein, M. Bronstein & R. Kimmel, 2006
43Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Representation
Triangle
index
Convex
combination
Barycentric
coordinates=+
Triangular mesh
How to represent an arbitrary point on ?
A. Bronstein, M. Bronstein & R. Kimmel, 2006
44Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Metric approximation
How to approximate distance between arbitrary
points?
Precompute distances between all pairs of vertices on
A. Bronstein, M. Bronstein & R. Kimmel, 2006
45Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Generalized stress
Fix all variables except for
Quadratic in
Convex in
A. Bronstein, M. Bronstein & R. Kimmel, 2006
46Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Minimization algorithm
Initialize
Select corresponding to maximum gradient
Compute minimizer
If constraints are active
translate to adjacent triangle
Iterate until convergence…
A. Bronstein, M. Bronstein & R. Kimmel, 2006
47Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
GMDS in action
CANONICAL FORMS (MDS, 500 points)
MINIMUM DISTORTION EMBEDDING(GMDS, 50 points)
A. Bronstein, M. Bronstein & R. Kimmel, 2006
48Numerical geometry of non-rigid shapes Lecture II – Numerical Tools
Summary
Discrete geodesic problem
Dijkstra – inconsistent discrete metric
Fast marching – consistentlydiscretized metric
Discrete embedding problem
MDS – embedding distortion is an enemy
Non-Euclidean embedding
Generalized embedding
GMDS – embed one surface into the other
Embedding distortion is the measure ofdissimilarity