1Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Non-Euclidean Embedding
Out of nothing I have created a strange new universe.
J. Bolyai, on the creation of non-Euclidean geometry.
Alexander Bronstein, Michael Bronstein© 2008 All rights reserved. Web: tosca.cs.technion.ac.il
2Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Non-rigid shape similarity
3Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Why non-Euclidean?
Reminder: prototype MDS problem with Lp stress
Minimizer is the canonical form of the shape .
Minimum is the embedding distortion (in the Lp sense).
Practically, distortion is non-zero.
Sets a data-dependent limit to the discriminative power of the canonical
form-based shape similarity.
Can the distortion be reduced?
Yes, by finding a better embedding space.
4Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Non-Euclidean MDS
Prototype non-Euclidean MDS problem with Lp stress
Desired properties of :
Convenient representation of points .
Preferably global system of coordinates.
Efficient computation of the metric .
Preferably closed-form expression.
Simple isometry group .
Practical algorithm for “rigid” shape matching in .
5Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Spherical geometry
-dimensional unit sphere: geometric location of the unit vectors
Sphere of radius obtained by scaling by .
circle, parametrized by
sphere, parametrized by
6Numerical geometry of non-rigid shapes Non-Euclidean Embedding
parametrized by
parametrized by
where corresponding to parameters .
Parametrization domain:
Spherical geometry
7Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Spherical geometry
Minimal geodesics on the sphere are great circles.
Section of the sphere with the plane passing through origin.
Geodesic distance: length of the arc
Geodesic distance on sphere
of radius
Great circle
8Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Spherical embedding
Spherical MDS problem:
Embedding into a sphere of radius :
In the limit , we obtain Euclidean embedding into .
9Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Spherical embedding
Richer geometry than Euclidean (asymptotically Euclidean).
Minimum embedding distortion obtained for shape-dependent radius.
10Numerical geometry of non-rigid shapes Non-Euclidean Embedding
What we found?
Global system of coordinates for representing points on the sphere.
Closed-form expression for the metric
Simple isometry group
Orthogonal group.
Origin-preserving rotations in
Smaller embedding distortion.
Complexity similar to Euclidean MDS.
11Numerical geometry of non-rigid shapes Non-Euclidean Embedding
What we are still missing?
Embedding distortion still non-zero and depends on data.
No straightforward (ICP-like) algorithm for comparing canonical forms.
Way out:
Embed directly into !
12Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Generalized multidimensional scaling
Multidimensional scaling (MDS)Generalized multidimensional scaling (GMDS)
13Numerical geometry of non-rigid shapes Non-Euclidean Embedding
GMDS: croce e delizia
Delizia:
Embedding distortion is no more our enemy
Before, it limited the sensitivity of our method.
Now, it quantifies intrinsic dissimilarity of and .
Measures how much needs to be changed to fit into .
If and are isometric, embedding is distortionless.
No more need to compare canonical forms
Dissimilarity is obtained directly from the embedding distortion.
14Numerical geometry of non-rigid shapes Non-Euclidean Embedding
GMDS: croce e delizia
Croce:
How to represent points on ?
Global parametrization is not always available.
Some local representation is required in general case.
No more closed-form expression for .
Metric needs to be approximated.
Minimization algorithm.
15Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Local representation
is sampled at and represented as a
triangular mesh .
Any point falls into one of the triangles .
Within the triangle, it can be represented as convex combination
of triangle vertices ,
Barycentric coordinates .
We will need to handle discrete indices in minimization algorithm.
16Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Geodesic distances
Distance terms can be precomputed, since are fixed.
How to compute distance terms ?
No more closed-form expression.
Cannot be precomputed, since are minimization variables.
can fall anywhere on the mesh.
Precompute for all .
Approximate
for any .
17Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Geodesic distance approximation
Approximation from .
First order accurate:
Consistent with data:
Symmetric:
Smoothness: is and a closed-form expression
for its derivatives is available to minimization algorithm.
Might be only at some points or along some lines.
Efficiently computed: constant complexity independent of .
18Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Geodesic distance approximation
Compute for .
falls into triangle and is represented as
Particular case:
Hence, we can precompute distances
How to compute from ?
19Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Geodesic distance approximation
We have already encountered this problem in fast marching.
Wavefront arrives at triangle vertex at time .
When does it arrive to ?
Adopt planar wavefront model.
Distance map is linear in the triangle (hence, linear in )
Solve for coefficients and obtain a linear interpolant
20Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Geodesic distance approximation
General case: falls into triangle and is
represented
as
Apply previous steps in triangle to obtain
Apply once again in triangle to obtain
21Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Un ballo a quattro passi
22Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Minimization algorithm
How to minimize the generalized stress?
Particular case: L2 stress
Fix all and all except for some .
Stress as a function of only becomes quadratic
23Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Quadratic stress
Quadratic stress
is positive semi-definite.
is convex in (but not necessarily in together).
24Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Quadratic stress
Closed-form solution for minimizer of
Problem: solution might be outside the triangle.
Solution: find constrained minimizer
Closed-form solution still exists.
25Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Minimization algorithm
Initialize
For each
Fix and compute gradient
Select corresponding to maximum .
Compute minimizer
If constraints are active
translate to adjacent triangle.
Iterate until convergence…
26Numerical geometry of non-rigid shapes Non-Euclidean Embedding
How to move to adjacent triangles?
Three cases
All : inside triangle.
: on edge opposite to .
: on vertex .
inside on edge on vertex
27Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Point on edge
on edge opposite to .
If edge is not shared by any other triangle
we are on the boundary – no translation.
Otherwise, express the point as in triangle .
contains same values as .
May be permuted due to different vertex
ordering in .
Complication: is not on the edge.
Evaluate gradient in .
If points inside triangle, update to .
28Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Point on vertex
on vertex .
For each triangle sharing vertex
Express point as in .
Evaluate gradient in .
Reject triangles with pointing
outside.
Select triangle with maximum
.
Update to .
29Numerical geometry of non-rigid shapes Non-Euclidean Embedding
MDS vs GMDS
Stress
Generalized MDSMDS
Generalized stress
Analytic expression for
Nonconvex problem
Variables: Euclidean
coordinates
of the points
must be interpolated
Nonconvex problem
Variables: points on in
barycentric coordinates
30Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Multiresolution
Stress is non convex – many small local minima.
Straightforward minimization gives poor results.
How to initialize GMDS?
Multiresolution:
Create a hierarchy of grids in ,
Each grid comprises
Sampling:
Geodesic distance matrix:
31Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Multiresolution
Initialize at the coarsest resolution in .
For
Starting at initialization , solve the GMDS problem
Interpolate solution to next resolution level
Return .
32Numerical geometry of non-rigid shapes Non-Euclidean Embedding
GMDS
Interpolation
GMDS
33Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Multiresolution encore
So far, we created a hierarchy of embedded spaces .
One step further: create a hierarchy of embedding spaces
.
34Numerical geometry of non-rigid shapes Non-Euclidean Embedding
MATLAB® intermezzoGMDS
35Numerical geometry of non-rigid shapes Non-Euclidean Embedding
Summary and suggested reading
Spherical embedding
T. F. Cox and M. A. A. Cox, Multidimensional scaling on a sphere, Communications in Statistics: Theory and Methods 20 (1991), 2943–2953.
T. F. Cox and M. A. A. Cox, Multidimensional scaling, Chapman and Hall, 1994.
Generalized multidimensional scaling
A.M. Bronstein, M.M. Bronstein, and R. Kimmel, Efficient computation ofisometry-invariant distances between surfaces, SIAM J. Scientific Computing 28 (2006), no. 5, 1812–1836.
A.M. Bronstein, M.M. Bronstein, and R. Kimmel, Generalized multidimensionalscaling: a framework for isometry-invariant partial surface matching, PNAS 103(2006), no. 5, 1168–1172.
Initialization issues
D. Raviv, A. M. Bronstein, M. M. Bronstein, and R. Kimmel, Symmetries of non-rigid shapes, Proc. NRTL, 2007.