computing and processing correspondences with functional maps · 8.5∈ 6 / 30. back to vector...
TRANSCRIPT
![Page 1: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/1.jpg)
Computing and Processing Correspondences with Functional Maps
Maks Ovsjanikov, Etienne Corman, Michael Bronstein, Emanuele Rodolà, Mirela Ben‐Chen, Leonidas Guibas, Frederic Chazal, Alex Bronstein
SIGGRAPH 2017 course
![Page 2: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/2.jpg)
Functional Vector Fields
Mirela Ben‐ChenTechnion, Israel Institute of Technology
ERC Project 714776 (OPREP)
![Page 3: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/3.jpg)
So far
Computing and analyzing FMAPs Using FMAPs for function transfer
3[Ovsjanikov, BC, Solomon, Butscher, Guibas, SIGGRAPH 2012]
![Page 4: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/4.jpg)
This part
Computing FMAPs using vector fields Using FMAPs for vector field transfer
4[Azencot, BC, Chazal, Ovsjanikov, SGP 2013]
![Page 5: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/5.jpg)
What are vector fields?
• Smooth assignment of “arrow” per point
• Only tangent vector fields
• Visualize with texture• Can see direction but not length
5
![Page 6: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/6.jpg)
Vector fields and maps – symbiosis
Fluid SimulationQuad remeshing Map ImprovementAzencot, Corman, BC, Ovsjanikov, SIGGRAPH 2017 Corman, Ovsjanikov, Chambolle, SGP 2015 Azencot, Vantzos, Wardetzky, Rumpf, BC, SCA 2015
![Page 7: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/7.jpg)
Transporting data with point‐to‐point maps
Mapping scalars Mapping vectors
7
∈∈ ∈∈∈ ∈?
Tangent plane of at
![Page 8: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/8.jpg)
The Map Differential
• Start a curve from with tangent
• Map the curve to
• is the tangent of the mapped curve at
8
∈∈
∈∈
![Page 9: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/9.jpg)
Transporting data with point‐to‐point maps
Mapping scalars Mapping vectors
9
∈∈ ∈∈∈ ∈
Tangent plane of at
![Page 10: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/10.jpg)
Transporting data with functional maps
Mapping functions Mapping vector fields
10
: → : →
![Page 11: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/11.jpg)
The Map Differential
11
0
: 0,1 →
0
: 0,1 →
.5
1
.5
1
![Page 12: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/12.jpg)
The functional Map Differential
12
0
: 0,1 →
0
: 0,1 →
.5
1
.5
1
![Page 13: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/13.jpg)
The functional Map Differential
13
![Page 14: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/14.jpg)
The functional Map Differential
14
: →
![Page 15: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/15.jpg)
The functional Map Differential
15
: →: →
![Page 16: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/16.jpg)
The functional Map Differential
16
: →: →
0 0′ 0 ⟨ , ⟩′ 0 ⟨ , ⟩
, ⟨ , ⟩
![Page 17: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/17.jpg)
The functional Map Differential
![Page 18: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/18.jpg)
Corresponding vector fields
18
For all
![Page 19: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/19.jpg)
Corresponding vector fields
19
For all
![Page 20: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/20.jpg)
Functional Vector Fields
20
LinearComplete*
![Page 21: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/21.jpg)
Corresponding FVFs
21
, ⟨ , ⟩
![Page 22: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/22.jpg)
Corresponding FVFs commute with FMap
22
![Page 23: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/23.jpg)
Application – Joint vector field design
23constraints
smoothness
map consistency
![Page 24: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/24.jpg)
Application – Joint vector field design
24constraints + smoothness + consistency
![Page 25: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/25.jpg)
Application ‐ Joint Quad‐remeshing
25
Wed 9am, Room 152
[Azencot, Corman, BC, Ovsjanikov, SIGGRAPH 2017]
![Page 26: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/26.jpg)
Map “animation”
27
∈∈
One map Map sequence
∈∈
1.5
0
![Page 27: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/27.jpg)
A 1‐parameter family of maps
28
![Page 28: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/28.jpg)
Back to vector fields
29
![Page 29: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/29.jpg)
Back to vector fields, self maps
30.5 ∈
![Page 30: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/30.jpg)
Back to vector fields, self maps
31∈
![Page 31: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/31.jpg)
From maps to vector fields
32∈
,
![Page 32: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/32.jpg)
From vector fields to trajectories
• We know: map → vector fields
• How to do: vector fields →map?
• Given solve for such that
33
The flow PDE
![Page 33: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/33.jpg)
From vector fields to functional trajectories
• Given (stationary) , solve for such that
34
0 ∘
The flow:
The functional flow:
![Page 34: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/34.jpg)
The functional flow
35
![Page 35: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/35.jpg)
The functional flow
36
⟨ , ⟩
![Page 36: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/36.jpg)
The discrete functional flow
• The surface is a triangle mesh
• The function is represented using a linear basis , e.g. hat basis
• is a vector, is a matrix
• A matrix ODE
37
![Page 37: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/37.jpg)
The discrete functional flow
• A matrix ODE
• Closed form solution
38
![Page 38: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/38.jpg)
Implementation
• Mesh : vertices, faces.• Represent in the hat basis ‐ ∈• Represent in the hat basis – a sparse matrix ∈
• Compute t expmv , ,
expmv: https://www.mathworks.com/matlabcentral/fileexchange/29576‐matrix‐exponential‐times‐a‐vector?focused=5172371&tab=function
Interpolate to vertices vector per face gradient operator
![Page 39: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/39.jpg)
ApplicationsMaps from vector fields
40[Azencot, Vantzos, BC, SGP 2016]
![Page 40: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/40.jpg)
ApplicationsIncompressible flow on surfaces• Numerically simulate the equation
• Vector field changes, more complicated• Total vorticity conserved by construction
41[Azencot, Weißmann, Ovsjanikov, Wardetzky, BC, SGP 2014]
![Page 41: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/41.jpg)
ApplicationsIncompressible flow on surfaces
42
![Page 42: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/42.jpg)
ApplicationsViscous thin films on surfaces
Total volume of fluid conserved by construction
43[Azencot, Vantzos, Wardetzky, Rumpf, BC, SCA 2015]
![Page 43: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/43.jpg)
ApplicationsInferring vector fields
44
is distance preserving commutes with Δ
, , || Δ Δ ||
commutes with Δ
|| Δ Δ ||
[Azencot, BC, Chazal, Ovsjanikov, SGP 2013]
![Page 44: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/44.jpg)
ApplicationsInferring vector fieldsis area preserving is orthogonal
is a rotation in functional space
is anti‐symmetric
is divergence free
![Page 45: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/45.jpg)
(some) conclusions
• Vector fields and maps relate through tangents to trajectories
• Can be used to transport vector fields with maps orto compute maps from vector fields
• The functional approach allows to use linear algebra instead of geometric tracing for trajectory related problems
46
![Page 46: Computing and Processing Correspondences with Functional Maps · 8.5∈ 6 / 30. Back to vector fields, self maps ... •Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function](https://reader033.vdocuments.site/reader033/viewer/2022042416/5f31aac026a5a271637ccb60/html5/thumbnails/46.jpg)
References
• Ovsjanikov, BC, Solomon, Butscher, Guibas, SIGGRAPH 2012, “Functional Maps: A Flexible Representation of Maps Between Shapes”
• Azencot, BC, Chazal, Ovsjanikov, SGP 2013, “An Operator Approach to Tangent Vector Field Processing”
• Azencot*, Weißmann*, Ovsjanikov, Wardetzky, BC, SGP 2014, “Functional Fluids on Surfaces”
• Corman, Ovsjanikov, Chambolle, SGP 2015, “Continuous Matching via Vector Field Flow”
• Azencot, Vantzos, Wardetzky, Rumpf, BC, SCA 2015, “Functional Thin Films on Surfaces”
• Azencot, Vantzos, BC, SGP 2016, “Advection‐Based Function Matching on Surfaces”
• Azencot, Corman, BC, Ovsjanikov, SIGGRAPH 2017, “Consistent Functional Cross Field Design for Mesh Quadrangulation”
47