Non-Euclidean Embedding Out of nothing I have created a strange new universe. J. Bolyai, on the creation of non-Euclidean geometry. Non-Euclidean Embedding Alexander Bronstein, Michael Bronstein © 2008 All rights reserved. Web: tosca.cs.technion.ac.il
Non-rigid shape similarity ?
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.
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 .
Spherical geometry -dimensional unit sphere: geometric location of the unit vectors Sphere of radius obtained by scaling by . circle, parametrized by sphere, parametrized by
Spherical geometry parametrized by where corresponding to parameters . Parametrization domain:
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
Spherical embedding Spherical MDS problem: Embedding into a sphere of radius : In the limit , we obtain Euclidean embedding into .
Spherical embedding Richer geometry than Euclidean (asymptotically Euclidean). Minimum embedding distortion obtained for shape-dependent radius.
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.
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 !
Generalized multidimensional scaling Generalized multidimensional scaling (GMDS) Multidimensional scaling (MDS)
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.
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.
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.
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 .
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 .
Geodesic distance approximation Compute for . falls into triangle and is represented as Particular case: Hence, we can precompute distances How to compute from ?
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
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
Un ballo a quattro passi
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
Quadratic stress Quadratic stress is positive semi-definite. is convex in (but not necessarily in together).
Quadratic stress Closed-form solution for minimizer of Problem: solution might be outside the triangle. Solution: find constrained minimizer Closed-form solution still exists.
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…
How to move to adjacent triangles? inside on edge on vertex Three cases All : inside triangle. : on edge opposite to . : on vertex .
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 .
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 .
MDS vs GMDS MDS Generalized MDS Stress Generalized stress Analytic expression for Nonconvex problem Variables: Euclidean coordinates of the points must be interpolated Nonconvex problem Variables: points on in barycentric coordinates
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:
Multiresolution Initialize at the coarsest resolution in . For Starting at initialization , solve the GMDS problem Interpolate solution to next resolution level Return .
GMDS Interpolation GMDS
Multiresolution encore So far, we created a hierarchy of embedded spaces . One step further: create a hierarchy of embedding spaces .
MATLAB® intermezzo GMDS
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 of isometry-invariant distances between surfaces, SIAM J. Scientific Computing 28 (2006), no. 5, 1812–1836. A.M. Bronstein, M.M. Bronstein, and R. Kimmel, Generalized multidimensional scaling: 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.