+ All Categories
Home > Documents > 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes...

1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes...

Date post: 20-Jan-2016
Category:
View: 227 times
Download: 2 times
Share this document with a friend
47
1 l geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein
Transcript
Page 1: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

1Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Numerical geometryof shapes

Lecture II – Numerical Tools

non-rigid

Alex Bronstein

Page 2: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of 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

Page 3: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 4: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 5: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

5Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Discrete Geodesics andShortest Path ProblemsDiscrete Geodesics andShortest Path Problems

Page 6: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

6Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Shapes as graphs

Cloud of points Edges Undirected graph=+

Page 7: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

7Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Discrete geodesic problem

Local length function

Path length

Length metric in graph

Page 8: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 9: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

9Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Troubles with the metric

Inconsistent metric approximation!

Page 10: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 11: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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.

Page 12: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

12Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Eikonal equation

Source

Equidistant contour

Steepest distance

growth direction

Eikonal equation

Page 13: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 14: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 15: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 16: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 17: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

18Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Page 18: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

19Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Uses of fast marching

Geodesic distances

Minimal geodesics

Voronoi tessellation &

sampling

Offset curves

Page 19: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 20: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 21: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 22: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 23: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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!

Page 24: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

25Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Embedding ProblemsEmbedding Problems

Page 25: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

26Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Isometric embedding

Page 26: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

27Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Mapmaker’s problem

Page 27: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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)

Page 28: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

29Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Minimum distortion embedding

A. Elad & R. Kimmel, 2003

Page 29: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 30: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

31Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Discrete embedding problem

Multidimensional scaling (MDS)

Page 31: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 32: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 33: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

34Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Examples of canonical forms

Canonical forms

Near-isometric deformations of a shape

Page 34: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 35: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

36Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Non-Euclidean Embedding

Non-Euclidean Embedding

Page 36: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

37Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Euclidean embedding

Page 37: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

38Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Non-Euclidean embedding

Page 38: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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.

Page 39: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 40: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

41Numerical geometry of non-rigid shapes Lecture II – Numerical Tools

Generalized embedding problem

A. Bronstein, M. Bronstein & R. Kimmel, 2006

Page 41: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 42: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 43: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 44: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 45: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 46: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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

Page 47: 1 Numerical geometry of non-rigid shapes Lecture II – Numerical Tools Numerical geometry of shapes Lecture II – Numerical Tools non-rigid Alex Bronstein.

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


Recommended