Intrinsic Maps April 15, 2014 Inter-surface Map f : M 1 M 2 M 1 M - - PowerPoint PPT Presentation

intrinsic maps
SMART_READER_LITE
LIVE PREVIEW

Intrinsic Maps April 15, 2014 Inter-surface Map f : M 1 M 2 M 1 M - - PowerPoint PPT Presentation

CS 468 Data-driven Shape Analysis Intrinsic Maps April 15, 2014 Inter-surface Map f : M 1 M 2 M 1 M 2 Applications Kraevoy and Sheffer 2004 Applications Kraevoy and Sheffer 2004 Desired Properties Given two (or more) shapes find a map


slide-1
SLIDE 1

CS 468 Data-driven Shape Analysis

April 15, 2014

Intrinsic Maps

slide-2
SLIDE 2

Inter-surface Map

f : M1 → M2

M1

M2

slide-3
SLIDE 3

Applications

Kraevoy and Sheffer 2004

slide-4
SLIDE 4

Applications

Kraevoy and Sheffer 2004

slide-5
SLIDE 5

Desired Properties

Given two (or more) shapes find a map f, that is:

  • Automatic
  • Fast to compute
  • Bijective (if we expect to have a global correspondence)
  • Low-distortion
slide-6
SLIDE 6

Desired Properties

Given two (or more) shapes find a map f, that is:

✘ Automatic

  • Fast to compute
  • Bijective (if we expect to have a global correspondence)
  • Low-distortion

Consider a simple case…

slide-7
SLIDE 7

Desired Properties

Given two (or more) shapes find a map f, that is:

✘ Automatic ✘ Fast to compute

✓ Bijective (if we expect to have a global correspondence)

✘ Low-distortion

Consider a simple case…

slide-8
SLIDE 8

Consistent Re-meshing

landmark correspondences

Kraevoy 2004

slide-9
SLIDE 9

Consistent Re-meshing

Kraevoy 2004

landmark correspondences consistent parameterization

slide-10
SLIDE 10

Consistent Re-meshing

Kraevoy 2004

landmark correspondences consistent parameterization

How do we choose these paths?

slide-11
SLIDE 11

Distortion Metrics

Compare triangles T and f(T)

  • Angles (conformal map)
  • Areas
  • Stretch
  • Schreiner et al. 2004

E.g. small conformal distortion, large area distortion: T f(T)

slide-12
SLIDE 12

Distortion Metrics

Compare triangles T and f(T)

  • Angles (conformal map)
  • Areas
  • Stretch
  • Schreiner et al. 2004

E.g. small conformal distortion, large area distortion: T f(T) NOTE: isometry preserves all

slide-13
SLIDE 13

Pros and Cons

Pros:

  • Apps!

Cons:

  • Need many manual landmark points
  • Hard to minimize the distortion

Praun et al. 2001

slide-14
SLIDE 14

Automatic Landmarks

Consider an algorithm:

  • Set landmark correspondences
  • Measure energy
  • Repeat and return minimal energy
slide-15
SLIDE 15

Automatic Landmarks

Consider an algorithm:

  • Set landmark correspondences
  • Measure energy
  • Repeat and return minimal energy

Problems?

slide-16
SLIDE 16

Automatic Landmarks

Consider an algorithm:

  • Set landmark correspondences

➡ Measure energy

  • Repeat and return minimal energy

Choice of energy greatly affects the results and the

  • ptimization
slide-17
SLIDE 17

Gromov-Hausdorff Distance

slide-18
SLIDE 18

Gromov-Hausdorff

Compare shapes as metric spaces

Invariance = isometry w.r.t. Shape = metric space

Bronstein

dY

slide-19
SLIDE 19

Gromov-Hausdorff

Compare shapes as metric spaces

Bronstein

dY φ : X → Y ψ : Y → X

Invariance = isometry w.r.t. Shape = metric space

slide-20
SLIDE 20

Gromov-Hausdorff

Compare shapes as metric spaces

where:

Bronstein

slide-21
SLIDE 21

Generalized MDS

Search for a permutation

Bronstein

  • A. Bronstein, M. Bronstein, R. Kimmel, PNAS 2006, SIAM JSC 2006

Generalized multidimensional scaling (GMDS)

slide-22
SLIDE 22

Pros and Cons

Pros:

  • Good distance for non-isometric metric spaces

Cons:

  • Non-convex
  • HUGE search space (i.e. permutations)
slide-23
SLIDE 23

Practice

Heuristics to explore the permutations

➡ Solve at a very coarse scale => interpolate

  • Coarse-to-fine
  • Partial Matching

Bronstein’08

slide-24
SLIDE 24

Practice

Heuristics to explore the permutations

  • Solve at a very coarse scale => interpolate

➡ Coarse-to-fine

  • Partial Matching

Sahillioglu’12 Bronstein’08

slide-25
SLIDE 25

Heuristics to explore the permutations

  • Solve at a very coarse scale => interpolate
  • Coarse-to-fine

➡ Partial Matching

Practice

Bronstein

! Find correspondence minimizing distortion between current parts ! Select parts minimizing the distortion with current correspondence subject to

  • A. Bronstein, M. Bronstein, A. Bruckstein, R. Kimmel, IJCV 2008
slide-26
SLIDE 26

Properties

Given two (or more) shapes find a map f, that is:

✓ Automatic

✘ Fast to compute ✘ Bijective (if we expect to have a global correspondence)

✓ Low-distortion

Unless failed to find an optima

slide-27
SLIDE 27

Proper non-isometry is HARD!

  • How hard is it to match

Isometric Shapes?

slide-28
SLIDE 28

Proper non-isometry is HARD!

  • How hard is it to match

Isometric Shapes?

E.g. how many point-to-point correspondences do we need to define a map between two isometric shapes?

slide-29
SLIDE 29

Heat Kernel Map

Ovsjanikov’10

HKMp(x, t) = kt(p, x)

Only need to match one point!

slide-30
SLIDE 30

Heat Kernel Map

Ovsjanikov’10

HKMp(x, t) = kt(p, x)

Only need to match one point!

slide-31
SLIDE 31

Heat Kernel Map

Pros:

➡ The search space is TINY

  • Naturally works in partial case

Cons:

  • Sensitive to deviations from isometry

Ovsjanikov’10

slide-32
SLIDE 32

Heat Kernel Map

Pros:

  • The search space is TINY

➡ Naturally works in partial case

Cons:

  • Sensitive to deviations from isometry

Ovsjanikov’10

slide-33
SLIDE 33

Heat Kernel Map

Pros:

  • The search space is TINY
  • Naturally works in partial case

Cons:

➡ Sensitive to deviations from isometry

Ovsjanikov’10

slide-34
SLIDE 34

Heat Kernel Map

Pros:

  • The search space is TINY
  • Naturally works in partial case

Cons:

➡ Sensitive to deviations from isometry

Ovsjanikov’10

slide-35
SLIDE 35

Conformal Geometry

slide-36
SLIDE 36

Isometry Revisited

Another definition of isometry:

  • Angle-preserving (conformal)
  • Area-preserving
slide-37
SLIDE 37

Isometry Revisited

Another definition of isometry:

  • Angle-preserving (conformal)
  • Area-preserving
slide-38
SLIDE 38

Conformal Maps

Lipman’10

Two easy subproblems

  • Conformal map to a sphere
  • Conformal map between spheres
slide-39
SLIDE 39

Conformal Mapping

Two easy subproblems

➡ Conformal map to a sphere

  • Conformal map between spheres

Lipman’10

“unwarped” sphere: mid-edge uniformization

slide-40
SLIDE 40

Conformal Mapping

Two easy subproblems

  • Conformal map to a sphere

➡ Conformal map between spheres

Lipman’10

Conformal Map is uniquely defined by 3 correspondences (Moebius Transformation)

slide-41
SLIDE 41

Moebeius Transformations

Arnold and Rogness

http://www.ima.umn.edu/~arnold/moebius/

slide-42
SLIDE 42

Moebius Voting

Algorithm for Isometric Shapes:

  • Repeat for many triplets:
  • Propose 3 correspondences
  • Compute a conformal map
  • Pick the one that has the smallest area distortion

Lipman’10

slide-43
SLIDE 43

Moebius Voting

Algorithm for Non-Isometric Shapes:

  • Repeat for many triplets:
  • Propose 3 correspondences
  • Compute a conformal map

➡ VOTE based on the area distortion

Lipman’10

slide-44
SLIDE 44

Conformal Mapping

Pros:

  • Efficient
  • Can handle some non-isometry

Cons:

  • Does not provide a smooth or continuous map
  • Does not optimize global distortion
  • Works for genus 0 manifold surfaces

Lipman’10

slide-45
SLIDE 45

Blended Intrinsic Maps

Blend conformal maps into a smooth map

Kim’11

M1

M2

Distortion of m1 Distortion of m2 Distortion of m3

These conformal maps introduce area distortions in different regions

slide-46
SLIDE 46

Blended Intrinsic Maps

Blend conformal maps into a smooth map

Kim’11

M1

M2

Distortion of m1 Distortion of m2 Distortion of m3 Blending Weights for m1, m2, and m3 Distortion of the Blended Map

slide-47
SLIDE 47

Blended Intrinsic Maps

Algorithm:

  • Generate consistent maps
  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

slide-48
SLIDE 48

Blended Intrinsic Maps

Algorithm:

➡ Generate consistent maps

  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

M1 M2

… Set of consistent candidate maps

slide-49
SLIDE 49

Blended Intrinsic Maps

Algorithm:

➡ Generate consistent maps

  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

Candidate Maps Candidate Maps

Bi,j = Z

M1

ci(p)cj(p)Si,j(p)dA(p)

mi

mj

Map similarity matrix

slide-50
SLIDE 50

Blended Intrinsic Maps

Algorithm:

➡ Generate consistent maps

  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

Eigen-analysis to find “blocks”

  • f mutually-similar maps

Candidate Maps Candidate Maps

First Eigenvalue

slide-51
SLIDE 51

Blended Intrinsic Maps

Algorithm:

➡ Generate consistent maps

  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

Eigen-analysis to find “blocks”

  • f mutually-similar maps

Candidate Maps Candidate Maps

First Eigenvalue

What is the second block?

slide-52
SLIDE 52

Blended Intrinsic Maps

Algorithm:

➡ Generate consistent maps

  • Find blending weights (per-point weight for each map)
  • Blend maps

Kim’11

Eigen-analysis to find “blocks”

  • f mutually-similar maps

Candidate Maps Candidate Maps

Second Eigenvalue Symmetric Flip

slide-53
SLIDE 53

Blended Intrinsic Maps

Algorithm:

  • Generate consistent maps

➡ Find blending weights (per-point weight for each map)

  • Blend maps

Kim’11

Candidate Map Blending Weight

ci(p) Area-distortion

slide-54
SLIDE 54

Blended Intrinsic Maps

Algorithm:

  • Generate consistent maps
  • Find blending weights (per-point weight for each map)

➡ Blend maps

Kim’11

Blending Weights Blended Map

centroid

slide-55
SLIDE 55

Some Examples

Kim’11

Symmetric flip

Stretched

slide-56
SLIDE 56

Evaluation

Kim’11

0 ≤ d < 0.05 0.2 ≤ d < ∞ 0.05 ≤ d < 0.1 0.1 ≤ d < 0.15 0.15 ≤ d < 0.2

slide-57
SLIDE 57

Blended Intrinsic Maps

Pros

  • Highly non-isometric shapes
  • Efficient

Cons

  • Still has a lot of area distortion for some shapes
  • Genus 0 manifold surfaces

Kim’11

slide-58
SLIDE 58

Functional Maps

slide-59
SLIDE 59

What is a map?

slide-60
SLIDE 60

Functional Maps

Map functions rather than points

Ovsjanikov’12 Slides by Solomon

Á : M ! N

N M

slide-61
SLIDE 61

Functional Maps

Map functions rather than points

Ovsjanikov’12 Slides by Solomon

N M

TÁ : L2(N) ! L2(M)

slide-62
SLIDE 62

Functional Maps

How to represent functions on surfaces?

Ovsjanikov’12 Slides by Solomon

slide-63
SLIDE 63

Functional Maps

How to represent functions on surfaces?

Ovsjanikov’12 Slides by Solomon

f(x) = a1¢ +a2¢ +a3¢

+¢¢¢

!

Laplace-Beltrami

slide-64
SLIDE 64

Functional Maps

How to represent functional maps?

Ovsjanikov’12 Slides by Solomon

slide-65
SLIDE 65

Functional Maps

How to represent functional maps?

Ovsjanikov’12 Slides by Solomon

B B B @ ¤ ¤ ¤ ¢ ¢ ¢ ¤ ¤ ¤ ¢ ¢ ¢ ¤ ¤ ¤ ¢ ¢ ¢ . . . . . . . . . ... 1 C C C A

Functional Map Matrix, change of basis

slide-66
SLIDE 66

Example Maps

Ovsjanikov’12

slide-67
SLIDE 67

Example Maps

Ovsjanikov’12

slide-68
SLIDE 68

Example Maps

Ovsjanikov’12

The reason it looks like identity is not by chance!

slide-69
SLIDE 69

Functional Maps

Simple Algorithm

  • Compute some geometric functions to be preserved: A, B
  • Solve in least-squares sense for C, B = C A

Additional Considerations

  • Favor commutativity
  • Favor orthonormality (if shapes are isometric)
  • Efficiently getting point-to-point correspondences

Ovsjanikov’12

slide-70
SLIDE 70

Functional Maps

Pros

  • Sparse representation
  • Linear
  • New way of thinking about maps

Cons

  • More work is needed for non-isometric surfaces

Ovsjanikov’12

slide-71
SLIDE 71

Choice of Basis

Coupled quasi-harmonic basis

Bronstein’12

slide-72
SLIDE 72

Soft/Fuzzy Maps

Points mapping to probability distributions to cope with mapping ambiguity

Kim’12, Solomon’12, Solomon’13

slide-73
SLIDE 73

Mapping Symmetric Shapes

Separate basis into symmetric and anti-symmetric part

Ovsjanikov’13

slide-74
SLIDE 74

Map Visualization

Find high-distortion areas in multi-scale fashion

Ovsjanikov’13

slide-75
SLIDE 75

Homework

Notes

  • Due Apr 20
  • Include some info on how to use your program
  • Include relevant sourcecode files and brief description
  • Send a link to a zip file to vk2@stanford.edu 


(or e-mail directly if size < 5Mb)

  • ALWAYS mark axes in ALL plots / figures!
  • Questions?
slide-76
SLIDE 76

References

➡ Cross-Parameterization and Compatible Remeshing of 3D Models. 


  • V. Kraevoy and A. Sheffer. SIGGRAPH 2004

➡ Consistent Mesh Parameterizations. E. Praun, W. Sweldens, P. Schröder. SIGGRAPH 2001 ➡ Inter-Surface Mapping. J. Schreiner, A. P. Asirvatham, E. Praun, H. Hoppe. SIGGRAPH 2004 ➡ Generalized multidimensional scaling: a framework for isometry-invariant partial surface matching. 


  • A. M. Bronstein, M. M. Bronstein, R. Kimmel. PNAS 2006

➡ One Point Isometric Matching with the Heat Kernel. 


  • M. Ovsjanikov, Q. Mérigot, F. Mémoli and L. Guibas. SGP 2010

➡ Moebius Voting for Surface Correspondence. Y. Lipman, T. Funkhouser. SIGGRAPH 2009 ➡ Blended Intrinsic Maps. V. Kim, Y. Lipman, T. Funkhouser. SIGGRAPH 2011 ➡ Functional Maps: A Flexible Representation of Maps Between Shapes. 


  • M. Ovsjanikov, M. Ben-Chen, J. Solomon, A. Butscher and L. Guibas. SIGGRAPH 2012

➡ Coupled quasi-harmonic bases. 


  • A. Kovnatsky, M. M. Bronstein, A. M. Bronstein, K. Glashoff, R. Kimmel. Eurographics 2012.

➡ Dirichlet Energy for Analysis and Synthesis of Soft Maps. J. Solomon, L. Guibas, and A. Butscher. SGP 2013 ➡ Shape Matching via Quotient Spaces.


  • M. Ovsjanikov, Q. Mérigot, V. Pătrăucean, L. Guibas. SGP 2013

➡ Analysis and Visualization of Maps Between Shapes. 


  • M. Ovsjanikov, M. Ben-Chen, F. Chazal and L. Guibas. CGF 2013