computing and processing correspondences with functional
play

Computing and Processing Correspondences with Functional Maps - PowerPoint PPT Presentation

Computing and Processing Correspondences with Functional Maps SIGGRAPH 2017 course Maks Ovsjanikov, Etienne Corman, Michael Bronstein, Emanuele Rodol, Mirela Ben-Chen, Leonidas Guibas, Frederic Chazal, Alex Bronstein General Overview Overall


  1. Computing and Processing Correspondences with Functional Maps SIGGRAPH 2017 course Maks Ovsjanikov, Etienne Corman, Michael Bronstein, Emanuele Rodolà, Mirela Ben-Chen, Leonidas Guibas, Frederic Chazal, Alex Bronstein

  2. General Overview Overall Objective : Create tools for computing and analyzing mappings between geometric objects. 2

  3. General Overview Overall Objective : Create tools for computing and analyzing mappings between geometric objects. Rather than comparing points on objects it is often easier to compare real-valued functions defined on them. Such maps can be represented as matrices. 3

  4. Course Overview Course Website: http://www.lix.polytechnique.fr/~maks/fmaps_SIG17_course/ or http://bit.do/fmaps2017 Course Notes: Linked from the website. Or use http://bit.do/fmaps2017_notes Attention: (significantly) more material than in the lectures Sample Code: See Sample Code link on the website. New: demo code for basic operations. 4

  5. Course Schedule 2:00pm – 2:45pm Introduction (Maks) • Introduction to the functional maps framework. 2:50pm – 3:35pm Computing Functional Maps (Etienne) • Optimization methods for functional map estimation. 3:40pm - 4:25pm Functional Vector Fields (Miri) • From functional maps to tangent vector fields and back. 4:30pm - 5:15pm Maps in Shape Collections (Leo) • Networks of maps, shape variability, learning. 5:15pm - Wrapup, Q&A (all) 5

  6. What is a Shape? Continuous: a surface embedded in 3D. Discrete: a graph embedded in 3D (triangle mesh). Common assumptions: • Connected. • Manifold. • Without Boundary. 6

  7. What is a Shape? Continuous: a surface embedded in 3D. Discrete: a graph embedded in 3D (triangle mesh). 5k – 200k triangles 7 Shapes from the FAUST, SCAPE, and TOSCA datasets

  8. Overall Goal Given two shapes, find correspondences between them. Finding the best map between a pair of shapes. 8

  9. Why Shape Matching? Given a correspondence, we can transfer: texture and parametrization segmentation and labels deformation Sumner et al. ‘04. Other applications: shape interpolation, reconstruction ... 9

  10. Rigid Shape Matching Given a pair of shapes, find the optimal Rigid Alignment between them. The unknowns are the rotation/translation parameters of the source onto the target shape. 10

  11. Iterative Closest Point (ICP) Classical approach: iterate between finding correspondences and finding the transformation: example in 2D N M Given a pair of shapes, and , iterate: N M 1. For each find nearest neighbor . y i ∈ N x i ∈ M 2. Find optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 11 2 R,t i

  12. Iterative Closest Point Classical approach: iterate between finding correspondences and finding the transformation: N M Given a pair of shapes, and , iterate: N M 1. For each find nearest neighbor . y i ∈ N x i ∈ M 2. Find optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 12 2 R,t i

  13. Iterative Closest Point Classical approach: iterate between finding correspondences and finding the transformation: N M Given a pair of shapes, and , iterate: N M 1. For each find nearest neighbor . y i ∈ N x i ∈ M 2. Find optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 13 2 R,t i

  14. Iterative Closest Point Classical approach: iterate between finding correspondences and finding the transformation: N M Given a pair of shapes, and , iterate: N M 1. For each find nearest neighbor . y i ∈ N x i ∈ M 2. Find optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 14 2 R,t i

  15. Iterative Closest Point Classical approach: iterate between finding correspondences and finding the transformation: N M Given a pair of shapes, and , iterate: N M 1. For each find nearest neighbor . y i ∈ N x i ∈ M 2. Find optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 15 2 R,t i

  16. Iterative Closest Point Classical approach: iterate between finding correspondences and finding the transformation: N M 1. Finding nearest neighbors: can be done with space- partitioning data structures (e.g., KD-tree). 2. Finding the optimal transformation minimizing: R, t X k Rx i + t − y i k 2 arg min 2 R ∈ SO(3) , t ∈ R 3 i Arun et al., Least- Can be done efficiently via SVD decomposition. Squares Fitting of Two 3-D Point Sets

  17. Non-Rigid Shape Matching Unlike rigid matching with rotation/translation, there is no compact representation to optimize for in non-rigid matching. 17

  18. Non-Rigid Shape Matching Main Questions: What does it mean for a correspondence to be “good”? How to compute it efficiently in practice? 18

  19. Isometric Shape Matching Deformation Model: Good maps must preserve geodesic distances. N d N ( T ( x ) , T ( y )) d M ( x, y ) M Geodesic: length of shortest path lying entirely on the surface. 19

  20. Isometric Shape Matching Approach: N d N ( T ( x ) , T ( y )) d M ( x, y ) M Find the point mapping by minimizing the distance distortion: k d M ( x, y ) − d N ( T ( x ) , T ( y )) k X T opt = arg min T x,y The unknowns are point correspondences. 20

  21. Isometric Shape Matching Approach: N d N ( T ( x ) , T ( y )) d M ( x, y ) M Find the point mapping by minimizing the distance distortion: k d M ( x, y ) − d N ( T ( x ) , T ( y )) k X T opt = arg min T x,y Problem: The space of possible solutions is highly non-linear, non-convex.

  22. Functional Map Representation We would like to define a representation of shape maps that is more amenable to direct optimization. 1. A compact representation for “natural” maps. 2. Inherently global and multi-scale. 3. Handles uncertainty and ambiguity gracefully. 4. Allows efficient manipulations (averaging, composition). 5. Leads to simple (linear) optimization problems. 22

  23. Functional Approach to Mappings Given two shapes and a pointwise map T : N → M N T M The map induces a functional correspondence: T T F ( f ) = g, where g = f ◦ T 23 Functional maps: a flexible representation of maps between shapes, O., Ben-Chen, Solomon, Butscher, Guibas , SIGGRAPH 2012

  24. Functional Approach to Mappings Given two shapes and a pointwise map T : N → M T F ( f ) = g : N → R T F f : M → R The map induces a functional correspondence: T T F ( f ) = g, where g = f ◦ T 24 Functional maps: a flexible representation of maps between shapes, O., Ben-Chen, Solomon, Butscher, Guibas , SIGGRAPH 2012

  25. Functional Approach to Mappings Given two shapes and a pointwise map T : N → M T F ( f ) = g : N → R T F f : M → R The map induces a functional correspondence: T T F ( f ) = g, where g = f ◦ T 25 Functional maps: a flexible representation of maps between shapes, O., Ben-Chen, Solomon, Butscher, Guibas , SIGGRAPH 2012

  26. Functional Approach to Mappings Given two shapes and a pointwise map T : N → M T F ( f ) = g : N → R T F f : M → R The induced functional correspondence is linear: T F ( α 1 f 1 + α 2 f 2 ) = α 1 T F ( f 1 ) + α 2 T F ( f 2 ) 26

  27. Functional Map Representation Given two shapes and a pointwise map T : N → M T F ( f ) = g : N → R T F f : M → R The induced functional correspondence is complete. 27

  28. Observation Assume that both: f ∈ L 2 ( M ) , g ∈ L 2 ( N ) g : N → R T F f : M → R N M Express both and in terms of basis functions: f T F ( f ) X a i φ M X b j φ N f = g = T F ( f ) = i j i j { a i } { b j } Since is linear, there is a linear transformation from to . T F

  29. Functional Map Representation Choice of Basis: Eigenfunctions of the Laplace-Beltrami operator: ∆ φ i = λ i φ i ∆( f ) = − div r ( f ) Generalization of Fourier bases to surfaces. Ordered by eigenvalues and provide a natural notion of scale . 29 λ 0 = 0 λ 1 = 2 . 6 λ 2 = 3 . 4 λ 3 = 5 . 1 λ 4 = 7 . 6

  30. Functional Map Representation Choice of Basis: Eigenfunctions of the Laplace-Beltrami operator: ∆ φ i = λ i φ i Generalization of Fourier bases to surfaces. Ordered by eigenvalues and provide a natural notion of scale . Can be computed efficiently, with a sparse matrix eigensolver. 30

  31. Functional Map Representation Since the functional mapping T F is linear: T F ( α 1 f 1 + α 2 f 2 ) = α 1 T F ( f 1 ) + α 2 T F ( f 2 ) T F = T F can be represented as a matrix C , given a choice of basis for function spaces. Functional maps: a flexible representation of maps between shapes, O., Ben-Chen, Solomon, 31 Butscher, Guibas , SIGGRAPH 2012

  32. Functional Map Definition Functional map: matrix C that translates coefficients from to . Φ N Φ M 32

  33. Example 1 N T M Given two shapes with points and a map: T : N → M n M , n N T : n N × n M matrix encoding the map T , one 1 per column with zeros everywhere else. If functions are represented as vectors (in the hat basis), the functional map is given by matrix-vector product: g = T T f C = T T 33

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend