# L08_MDS

Document Sample

```					Computer Science
Department              Technion-Israel Institute of Technology

Flattening via Multi-
Dimensional Scaling
Ron Kimmel

www.cs.technion.ac.il/~ron

Geometric Image Processing Lab
Outline

 On isometric surfaces and bending invariant
signatures.
 Multi-dimensional scaling techniques:
Classical.
Least squares.
Fast.
 Surface classification: experimental results.
Matching Surfaces
 Problem:
Given 2D surfaces, define a measure of their similarity.
 Classical techniques:
Find a rigid transformation that maximizes some
measure.
Match key points on the surface.
Compare local or semi-differential invariants, e.g.
matching graphs.
Bending Invariant Signatures

 Isometric surface matching via bending invariant signatures:
 Map the surface into a small Euclidean space, in which
isometric surfaces transform to similar (rigid) surfaces.
 Handle (somewhat) non-rigid objects.
 A global operation, does not rely on selected
key points or local invariants.
Bending invariant signatures
Basic Concept
Input – a surface in 3D

Compute geodesic distance matrix [D]
between each pair of vertices
δ ij= geodesic_distance(vertex i ,vertex j )
[D] ij = δ ij

Extract from [D] coordinates in an m
dimensional Euclidean space via
Multi-Dimensional Scaling (MDS).

Output – A 2D surface embedded in
m
in R (for some small m)
Geodesic
Fast Marching on Surfaces
Distance
Euclidean
Distance

Source point
Multi-Dimensional Scaling
 MDS is a family of methods that map similarity
measurements among objects, to points in a small
dimensional Euclidean space.
 The graphic display of the similarity measurements
provided by MDS enables to explore the geometric
structure of the data.      x
i

Dissimilarity          MDS           coordinates in m-dimensional
measures                                  Euclidean Space

2
Σ(δ ij - dij )
Stress
Function     Stress =
Σδ ij
A simple example
1       2         3          4           5          6         7   8          9           10
Y                                                                               Stockholm
1. London               0
Dublin
2. Stockholm        569         0

3. Lisbon           667     1212
Amsterdam
0                                                                           Rotation
Berlin
530 1043           201           0

5. Paris            141     617        596       431             0Prague                                          Reflection
Paris
6. Amsterdam        140     446        768       608          177           0
7. Berlin           357     325        923       740          340       218           0
8. Prague           396
Madrid     423        882       690         Rome 272
337                 114       0
9. Rome
Lisbon              569     787        714       516          436       519       472      364       0
10. Dublin          190     648        714       622          320       302       514      573   755          x
0

1        2          3       4           5            6        7              8         9         10
12.7         0      32.8    29.4          14.6       8.8          4.5           6.4       16.4   13.8
4.1    13.9     13.2    14.9          9.0        8.2         16.6           19.6      25.4           0
Flattening via MDS
 Compute geodesic distances between pairs
of points.
 Construct a square distance matrix of
geodesic distances^2.
0
 Find the coordinates in the plane via multi-           0
dimensional scaling.                                       0
The simplest is `classical scaling’.
 Use the flattened coordinates for
 texturing the surface, while preserving
the texture features.
Zigelman, Kimmel, Kiryati,
IEEE TVCG 2002
Grossmann, Kiryati, Kimmel, IEEE TPAMI 2002

 Bending invariant surface matching
Flattening
Flattening
Distances - comparison
Texture Mapping
Texture Mapping
Fattening via MDS: 3D

Original                   Original
Fast                       Fast

Least       Classical        Least     Classical
Squares                      Squares
Fattening via MDS: 3D

Original                    Original
Fast                       Fast

Least     Classical       Least       Classical
Squares                   Squares
Input Surfaces
Bending Invariant Signatures

?

Bending Invariant Signatures

?

Bending Invariant Signatures

?

Bending Invariant Signatures

Bending Invariant Signatures

Bending Invariant Signatures
Original surfaces                 Canonical surfaces in R3

Bending Invariant Clustering

 2nd moments based MDS for clustering
Original surfaces                                                                                 Canonical forms
D
D     D
0.8                           A                                                           0.8
A                                            E
E
0.7                                                                 A                     0.7
D                                                           E
0.6                                                                 E B                   0.6                              EE
C
0.5                                                                   C                   0.5
C                                                                                              C
D                 C
0.4                                                         B             C               0.4                                                        DD
E                                                                                D
0.3                                                                                       0.3                                                  BB
F                                          A                                                                                     B B
0.2          F                              B                                             0.2
B       C                                                                                               A A
AA
0.1                     F                                                                 0.1
F
1                                                                              1
0                                                                              0.8        0                                                                   0.8
1                                                                                         1
0.8
0.6
0.6
*A=human body
0.8
0.6         FFF                                0.6
0.4                                            F                          0.4
0.4
0.2                       0.2                 *B=hand                     0.4
0.2                0.2
0   0                           *C=paper                                        0   0
*D=hat
*E=dog
*F=giraffe

Classical Scaling                                   Young et al. 1930

Given n points in        R   k
, denote            pi  [ xi1 , xi2 ,..., xik ]T

Define coordinates vector                          P  [p1 , p 2 ,..., p n ]                 T

The Euclidean distance between 2 points:

  x            x    x                             x 
k                       k
2                       l 2                l 2                    l 2
d  pi  p j
2
ij
l
i      j                  i      2x x
l
i
l
j       j
l 1                    l 1
2
 p i  2p i p  p j
2           T
j
Classical Scaling

Define the `centering’ matrix J  I  n 11T
1

where 1  [1,1,...,1]T     p1 2 p1 2 ... p1 2 

n           2        2          2

Let the n  n matrix Q  
 p2   p2      ... p 2 
.     .     ...   . 
 2        2          2
 pn
      pn      ... p n 

We have that QJ  0 and also    QJ T    JQT  0

Thus,    JDJ  J(Q  Q T  2PP T )J
~~ T
 JQJ  JQ J  2JPP J  0  0  2PP
T          T
Classical Scaling
~                              1 n l
The coordinates P are related to P by ~i  xi   xm
x l   l
~~ T              n m1
Thus the operation  2 JDJ  PP
1

is also called `double centering’.
Applying SVD, we can compute  1 JDJ  UU
T
2
where UU T  I
~
and the coordinates can be extracted as P  U
12

If we choose to take only part of the eignstructure,
then, our approximation minimizes the Frobenius
norm
 ˆ
U  U    T
F
MDS

Matlab code for 2D flattening

J  eye ( n )  ones ( n ). / n;
B  0.5 * J * D * J ;
[Q , L]  eigs ( B,2, ' LM ' );
newy  sqrt ( L(1,1)). * Q (:,1);
newx  sqrt ( L( 2,2)). * Q (:, 2);

Zigelman, Kimmel, Kiryati IEEE TVCG 2002
Classical Scaling

The eigenvalues are the 2nd order moments of the
flattened surface, since by definition

~i 2  U[i, :]1 2 U[i, :] 1 2 T   U[i, :] U[i, :] T  
 xm
n

i             i         i                       i
m 1

all the cross 2nd order moments vanish by the unitarity
of U, thus `flattening’.
Conclusions
 A method for bending invariant signatures
 Based on:
 Fast marching on surfaces
 MDS LS/Classical/Fast
 Results:
 Texture mapping
 Bending invariant signatures
 Classification of isometric surfaces.
D
D     D                                                              0.8
0.8               A         A
E
E                                       0.7
0.7                                                         A                                                                      E
D                                   0.6                             EE
0.6                                                         E B                                                                                                     C
0.5
0.5                                                           C                                                                                                      C
C
C                                                                                      DD
0.4                                                   D
0.4                                                 B          C                                                                                          D
E                                0.3                                             BB
0.3                                             A                                                                                              B B
F
0.2
0.2         F                             B
B    C                                                                                                      AA A
A
0.1                    F                                                                        0.1
F                                                                                                                             1
0                                                                            1                  0
1                                                                      0.8                      1                                                            0.8
0.8                                                         0.6                                 0.8
0.6         FFF
F                     0.4
0.6
0.6                                             0.4                                                   0.4
0.4                           0.2                                                                   0.2            0.2
0.2
0 0                                                                                  0 0
Least Squares MDS

 Standard optimization approach to solve the
minimization problem of the stress cost function.
 Solved via ‘scaling by maximizing convex function’
(SAMCOF) algorithm.
 Starting with a random solution and iteratively
minimizing another stress function, which satisfies.

ƒ (x,z) ≥ ƒ (x) for x ≠ z
and ƒ (z,z) = ƒ (z)

 The complexity is O(n 2 ).
 Converges to the optimal solution.
Fast MDS

 The fast MDS: heuristic efficient technique O(mn).
 Works recursively by generating a new dimension at each step,
Providing m-dimensional coordinates after m recursion steps.
 Project the vertices on a selected ‘line’.
 First, the algorithm selects the
Farthest two vertices.
 Next, all other vertices are projected
On that line using the cosine law.
 Next step is to project all items to
An (n-1) hyper plane (H) that is
Perpendicular to the line that
Connects those vertices.
 Generate a new distance matrix.
 Repeat the last three steps m times.

```
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
 views: 13 posted: 3/31/2012 language: English pages: 32