Home >
Documents >
Robust 3D Shape Correspondence in the Spectral Domainhaoz/pubs/jain_zhang_smi06.pdfthe well known...

Share this document with a friend

12

Transcript

Robust 3D Shape Correspondence in the Spectral Domain

Varun Jain Hao ZhangGraphics, Usability and Visualization (GrUVi) Lab

School of Computing ScienceSimon Fraser University, Burnaby, BC, Canada

vjain,[email protected]

Abstract

We present an algorithm for finding a meaningful vertex-to-vertex correspondence between two 3D shapes given astriangle meshes. Our algorithm operates on embeddings ofthe two shapes in the spectral domain so as to normalizethem with respect to uniform scaling and rigid-body trans-formation. Invariance to shape bending is achieved by re-lying on geodesic point proximities on a mesh to capture itsshape. To deal with stretching, we propose to use non-rigidalignment via thin-plate splines in the spectral domain. Thisis combined with a refinement step based on the geodesicproximities to improve dense correspondence. We show em-pirically that our algorithm outperforms previous spectralmethods, as well as schemes that compute correspondencein the spatial domain via non-rigid iterative closest pointsor the use of local shape descriptors, e.g., 3D shape context.

1. Introduction

Given two 3D shapes represented as 2-manifold trian-gle meshes, the correspondence problem seeks to establisha meaningful mapping between them. The mapping can bebetween the two sets of mesh vertices, between two coarsesets of feature points selected on the meshes, or a continu-ous one between all points on the two manifolds. This is afundamental problem in computer graphics and shape mod-eling, with such applications as texture mapping [20], meshmorphing [1], shape registration, and object recognition.

A recent trend in research into the mesh parameteriza-tion problem, which essentially computes a dense surfacecorrespondence, is to look for effective techniques to con-struct across parameterizationbetween two meshes di-rectly [21, 29], i.e., without relying on an simple commonparameter domain. Such a parameterization allows one toobtain compatible connectivity among a set of models in afeature-sensitive way [21, 27], greatly facilitating tasks such

as shape blending and various forms of attribute transfer. Acrucial first step for constructing a cross parameterization isthe identification of a sparse set of matching feature pointson the two shapes. Most methods [27, 20, 21, 29] rely on theuser to specify the initial feature correspondence manually.It is well known that even if the sets of feature points havebeen given, finding a meaningful correspondence automati-cally with robustness to both rigid and non-rigid geometrictransformations is notoriously difficult. This is the problemwe wish to address in this paper.

Given two 2-manifold triangle meshes, possibly with dif-ferent vertex counts, we compute a correspondence betweenthe mesh vertices. The spatial coordinates of the mesh ver-tices are first converted into two affinity matrices, whichare obtained by applying aGaussian kernelto the pair-wise geodesic distancematrices for the two meshes. Thisway, each vertex of a mesh is represented using intrinsicstructural information. The correspondence is obtained bymatching points based on this information and this is car-ried out in ak-dimensionalspectraldomain via eigenspaceprojections. Typically,k is much smaller than the size of theaffinity matrices. Thus the dimensionality of the structuralinformation has been effectively reduced.

Appropriate choice of the Gaussian kernel width andthe use of spectral embeddings described above ensure thatour matching procedure is invariant to rigid body transfor-mations, uniform scaling, and shape bending. This is be-cause the affinities we use are invariant to precisely thesetransformations. We also propose to scale the eigenvectorsby the square root of the eigenvalues in forming the spec-tral embeddings so as to achieve robustness against differ-ence in mesh vertex counts and choice of the dimension-ality of the embeddings. However, our experiments showthat matching based solely on such embeddings, e.g., us-ing theL2 metric [31], can be non-robust to stretching inthe shapes. To this end, we perform a non-rigid alignmentin the spectral domain using thin-plate splines. A refine-ment step using the original geodesic proximity data en-hances the performances of the algorithm in the case of

dense correspondence. Through formal arguments and nu-merous experiments, we demonstrate that our approach out-performs previous methods which operate on spectral em-beddings [7, 8, 31, 33], as well as schemes that find corre-spondence in the spatial domain via non-rigid iterative clos-est points [6] or the use of local shape descriptors, such asshape contexts [3] and curvature maps [13].

The rest of the paper is organized as follows. Section 2gives a brief survey of previous work. Section 3 gives anoverview of the problem in question and our algorithm; italso establishes some notations used in subsequent sections.In Section 4, we describe the construction of the spectralembeddings in more details, argue for its various proper-ties, and demonstrate its non-robustness to stretching. Wealso explain our eigenvalue scaling scheme and its effect onthe spectral embeddings. In Section 5, we present the majorcomponents of our correspondence algorithm. This is fol-lowed by experimental results in Section 6, where we alsopoint out some limitations of our current approach. Finally,we conclude in Section 7 and comment on future work.

2. Previous work

Point correspondence may be computed based on ei-ther absolute coordinates or relative information, e.g., us-ing weighted graphs. Two main classes of methods exist forspatial correspondence: those using local shape descriptorsand those relying on iterative alignment schemes. The firstclass of techniques describe every point on a shape by en-coding shape information from the perspective of that point.Point matching is then based on appropriate distances be-tween the descriptors. Well-known descriptors for imagesinclude shape contexts [3] and spin images [17], both uti-lizing a histogram obtained by binning the space around apoint according to the Euclidean metric and collecting pointcounts. These methods have subsequently been generalizedin a straightforward manner to handle 3D point sets [18].

Neither shape contexts nor spin images are invariant toshape bending. A promising remedy is the curvature mapsof Gatzke et al. [13]. Local shape descriptors are con-structed on a mesh by dividing the geodesic neighborhoodof a vertex into bins. Although geodesic binning is invari-ant to bending (not stretching), the histograms computed arebased on curvature distributions, which, even if estimatedrobustly, are not invariant to bending.

More recent shape signature based methods includethose by Gelfand et al. [14] and Li et al. [23]. Both meth-ods are robust under only rigid transformations. The par-tial matching scheme of the former do provide a way to de-tect articulated subparts of a shape and subsequently matchthem to the subparts of the second shape. However, theirwork lacks a discussion and analysis of the performance androbustness of the matching method when there are multiple

0 0.2 0.4 0.6 0.8 1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

Original V and X

Two 2D shapesapproximately aligned.

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7

−0.4

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

Transformed V + X

Correct matching isobtained.

−0.5 0 0.5 1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

1.2

Original V and X

One of the shapes is rotated.−0.5 −0.4 −0.3 −0.2 −0.1 0 0.1 0.2

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Transformed V + X

Incorrect matching.

Figure 1. TPS-RPM [6] failed by rotation.

pose changes in the models or when the models consist of alarge number of articulated subparts.

Iterative alignment schemes compute a correspondenceand a transformation which would transform one shape intoanother at each step. The correspondence is usually basedon a “closest point” criteria and the transformation is ob-tained by optimizing an energy. Such techniques includethe well known iterative closest point (ICP) algorithm ofBesl and Mckay [4] and its variants [28], which can han-dle affine transformations. Recent works, most notably theTPS-RPM method of Chui and Rangarajan [6], attempt toincorporate non-rigid deformations into the ICP framework,using thin-plate splines to model the deformation. However,these methods can easily get trapped in bad local minima ifthe shapes are not approximately aligned initially, since thecorrespondence, which dictates the optimization, is com-puted using an Euclidean closest point method. Thus rota-tion alone can cause a bad matching, as shown in Figure 1.

Sumner et al. [32] and Zayer et al. [34] attempt to allevi-ate this problem by fixing a small number of feature pointson the shapes to be matched. Sumner et al. rely on thesefeature points as guidance to ICP in order to escape localminima, whereas Zayer et al. use interpolation, based onbarycentric coordinates, of the correspondence between thefeature points to compute the remaining point correspon-dences. In both methods, it is imperative that the featurepoints selected on the two meshes be corresponding in ameaningful way. This can only be done with user assistanceas automatic selection and matching of the feature points isequivalent to the correspondence problem we are trying tosolve in the first place.

Spectral shape correspondence involves first construct-ing intrinsic (relative) point representations of the twoshapes, in the form of weighted graph adjacency or affin-ity matrices. Elad and Kimmel [10] make use of geodesic

proximities to construct bending-invariant surface signa-tures through multi-dimensional scaling. Application toobject classification has been considered, but they do notsolve the harder correspondence problem. Given a proxim-ity matrix, ak-dimensional spectral embedding can be com-puted via principal component analysis (PCA). Shapiro andBrady [31] useL2 distances between the embedded pointsto compute a correspondence, while Umeyema [33] choosesthe correlation between the embedding coordinates. BothCaelli and Kosinov [5] and Carcassoni and Hancock [8] relyon spectral clustering and cluster correspondence to guidepoint correspondence. The use of spectral embeddings hastraditionally been exploited in the computer vision and ma-chine learning literature. Recently, they have found severalapplications in geometry processing as well, including meshsegmentation [22], spherical parameterization [16], and sur-face reconstruction [19].

Common to all the existing spectral correspondencetechniques is the premise that the eigenmodes from twosimilar shapes should match up, according to the magnitudeof their corresponding eigenvalues. One of our main obser-vations is that this ordering of the eigenmodes is not alwaysreliable. As the eigenvalues characterize data variance inthe direction of the corresponding eigenvectors, eigenmodeordering based on eigenvalues implies ordering by data vari-ance. This may not be appropriate since variance only cap-tures global information and does not reflect the way spe-cific data points would vary. We observe that under shapestretching, certain eigenmodes may be “switched”. Failureto resolve such reflections or other non-rigid discrepanciesbetween spectral embeddings will lead to poor matching re-sults. In this paper, we propose heuristics to handle suchswitchings in the spectral domain, where the spectral em-beddings will be corresponded after alignment using non-rigid ICP based on thin-plate splines.

3. Overview

Let us first give a brief overview of the problem we ad-dress and the algorithm we propose. Given two 3D shapesM1 andM2, in the form of triangular meshes and withnM1

andnM2 vertices, respectively, we wish to compute a cor-respondenceC between the two sets of vertices inM1 andM2. That is,C(i) is the vertex inM2 that best correspondsto vertexi in M1. Note that the correspondence computedis not required to be bijective. However, in the case wherenM1 = nM2 and a one-to-one correspondence is sought, wecan easily modify our method to meet the goal.

Our method of computingC is as follows: first, we es-tablish annM1 × nM1 affinity matrix A whereAij is theaffinity between verticesi andj of M1. Similarly, we com-pute annM2 × nM2 matrix B, the affinity matrix forM2.The affinities that we use in our implementation are based

on geodesic distances in order to attain invariance to bend-ing. Next we find the spectral embeddingsAk andBk of thematricesA andB, respectively. These embeddings givek-dimensional coordinates of all the vertices ofM1 andM2.The embeddings are based on the eigenvectors ofA andB,properly processed as we describe in Section 4. The pur-pose of transforming the 3D mesh from the spacial domainto thek-D spectral domain is to attain invariance to bend-ing, rigid transformations, and uniform scaling, as well asrobustness to difference in mesh sizes, for example.

Once we have the twok-D meshes that are already prop-erly normalized, we use iterative alignment to robustly alignthem and then obtain a correspondence via best matchingbased on theL2 distance. As we shall explain in Section 4,rigid alignment is insufficient to deal with moderate stretch-ings in the shapes to be matched. Hence, we modify thewell-known iterative closest point (ICP) algorithm to in-clude non-rigid transformations. Specifically, we use thinplate splines to model non-rigid transformations and com-pute a registration between the meshes in the spectral do-main. As mentioned earlier, this registration is not requiredto be one-to-one, but can be forced to be bijective by usingthe Hungarian algorithm for bipartite matching.

4. Spectral embedding

In general, intrinsic point representations can be ob-tained via pairwise point proximities, specified by a sym-metric affinity matrixA = {aij}, whereaij ≥ 0 charac-terizes the similarity or simply the graph adjacency [5, 33]between pointsi andj. One may view the affinity matrixA as a data vector whosen columns (or rows) representn-dimensional data points.

The most common proximity measure used to define re-lationship between points for shape matching is the Eu-clidean distance [7, 8, 30, 31], which implies invariance torotation and translation. For mesh correspondence, we usegeodesic distances between the mesh vertices, computed viafast marching [10], to include invariance to bending as well.Invariance to uniform scaling is achieved by mapping thegeodesic proximities into the interval[0, 1] using ascale-dependent, positive semi-definitekernel function. In thispaper, we use Gaussian kernels which is a common choicefor spectral correspondence [7, 8, 30, 31].

Although the point proximities contain a great deal ofshape information, without a proper point mapping, onecannot compare such representations for two data sets di-rectly. Also, the size of the data sets, or the dimensionalityof the point representations, may not be the same. Last butnot the least, the high dimensional representations may con-tain a great deal of redundancy, resulting in unnecessarilyhigh computational cost. These observations naturally leadus to consider transforming two data sets, respectively, into

Figure 2. A human mesh (left) and its 3Dspectral embedding, constructed using thesecond, third, and fourth eigenvectors. Thisparticular choice of the eigenvectors is ex-plained in Section 5.

some information-preserving subspaces that share the samelow dimensionality. This can be accomplished through prin-cipal component analysis (PCA) on the affinity data.

4.1. Principal component analysis

Given the data (affinity) matrixA ∈ Rn×n, we firstcompute its principal componentse1, . . . , en, which arethe normalizedeigenvectors of the autocorrelation matrixR = AAT . SinceA is symmetric,R = A2 ande1, . . . , en

are simply the eigenvectors of the affinity matrixA. Letλ1, . . . , λn be the corresponding eigenvalues ofA and sup-pose thatλ1 ≥ . . . ≥ λn. Projecting the data matrix ontothe firstk principal components yield

Ak = ETk A = ΛkET

K , (1)

whereEk = [e1| . . . |ek], Λk = diag(λ1, . . . , λk), and thecolumns ofAk represent ak-dimensionalspectral embed-ding of the data points. Note that a point permutation in-duces the same permutation of the embedded coordinatesbut leaves the spectrum invariant.

In the case of mesh spectral embeddings, the data pointsare mesh vertices. A spectral embedding associates witheach mesh vertex ak-dimensional coordinate. In the 3Dspectral domain, one can visualize the embedding of a meshM by rendering a mesh whose connectivity is the same asM and whose vertices are given by the embedding coordi-nates, as shown in Figure 2.

Although Ak gives a provably bestk-dimensional ap-proximation ofA (in terms of the Frobenius norm), it maynot be suitable for matching. The more important require-ment is for the projection axes, derived from the principalcomponents, to be compatible between two data sets.

4.2. Eigenvalue scaling

Given two affinity matricesA andB characterizing twoshapes, possibly in different scales, a scale-dependent ker-nel can normalize the affinity values inA and B. If the

0 200 400 600 800 1000 1200 14000

2

4

6

8x 105

Difference in the number of vertices

Err

or

in c

orr

esp

on

den

ce

Without scalingWith eigenvalue scaling

Figure 3. Effect of eigevalue scaling on cor-respondence, based on the correspondenceerror plots.

number of vertices,nA andnB , in the two (mesh) shapesdiffer however, we first need to truncate both spectral em-beddings to the same dimensionk ≤ min{nA, nB}. Inaddition, since we normalize each eigenvector, the cardi-nality of a data set affects the magnitude of the entries in itseigenvectors, which in turn affects the embeddings.

Correspondence algorithms that use unscaled eigen-modes [7, 8, 31] as spectral embeddings are common.Shapiro and Brady [31] first suggest a scaling of the theeigenmodes by eigenvalues, as in (1), but did not elaborate.Caelli and Kosinov [5] scale the eigenmodes usingsquaredeigenvalues and then project the resulting embeddings ontothe unit k-sphere for matching graphs of different vertexcounts. Evidently, proper scaling of the eigenmodes is acrucial normalization step. None of these approaches ade-quately resolves the discrepancies in the scales of the prin-cipal components (or embeddings) due to difference in thecardinality of the data sets. In this paper, we propose toscale the principal components by thesquare rootof theeigenvalues, yielding projections

Ak = Λ12k UT

k and Bk = Γ12k V T

k , (2)

whereA = UΛUT andB = V ΓV T are the eigenvalue de-compositions ofA andB, respectively, withUk, Vk,Λk, Γk

defined as in (1). Spectral embeddings of this form are wellknown in the spectral clustering literature [26].

Justifications: Consider the vector of projectionsai fromsetA. We can estimate the scale of these projections bysA,i = ||ai||2/nA. From (2), we have

ai =√

λiui and bi =√

γivi.

It follows thatsA,i = λi/nA andsB,i = γi/nB . With theaffinity matrices having unit diagonal elements, signaling

that a point has maximal affinity to itself, we have

sA,i =λi

trace(A)=

λi∑nA

j=1 λjand sB,i =

γi∑nB

j=1 γj.

We do not normalize these scales to some constant, sincethey represent data variations along the projection axes andthus contain shape information. We only wish to remove theeffect of different data size; this is achieved by normalizingthe eigenvalues, which represent data variations.

Another justification for (2) is that the dot-product ma-tricesAT

k Ak andBTk Bk are respectively the best rank-k ap-

proximations, in Frobenius norms, ofA andB [9], whichare already normalized to scale. Using the same argu-ment, we see that the dot product matrices resulting fromeigenmode scaling with eigenvalues themselves [31] be-come best rank-k approximations of the autocorrelation ma-tricesAAT = A2 andB2, respectively, whose entries dodepend on the size of the data sets.

Experimental results: The effectiveness of our eigenvaluescaling scheme is shown in Figure 3, where we plot thecorrespondence errors in the case of scaled versus unscaledspectral embeddings. The correspondence error is measuredas the total geodesic distance

∑ni=1 g(vi, v

′i), wheren is the

number of vertices to be matched,vi is the vertex corre-sponding toi that is computed by an algorithm, andv′i isthe ground-truth match fori. The plots are against the dif-ference in the number of vertices of the two meshes to bematched. The correspondence algorithm used is our ownand it is described in Section 5. In producing the two plots,the only difference is whether the eigenmodes are scaled.

Measuring error for dense correspondence is not easysince the ground-truth correspondence is impractical to es-tablish manually. In our evaluation, we first construct suc-cessively decimated copies of the same 3D mesh using theQSlim mesh decimation program of Garland [12]. Next weuse our algorithm to find correspondences between the deci-mated copies and the original mesh and measure correspon-dence errors. The ground-truth can be trivially establishedsince QSlim retains the positions of undecimated vertices.

4.3. Non-robustness of eigenmodes

Eigenmode switching: Perturbation theory predicts thatwhen eigenvalues move close to each other, the correspond-ing eigenvectors may switch order [15]. We have observedthat such switching can occur early in the eigenvalue or-der, e.g., between 4 and 8, even when the two shapes be-ing matched are perceptually similar. But there is no gen-eral pattern of eigenvalue clustering that is sufficiently reli-able to detect the switchings. As switching of two coordi-nates, the eigenvectors, induces a reflection in the spectraldomain, spectral correspondence based on theL2 distance

measure or correlations [31, 33], even with the aid of clus-tering [5, 8], can fail.

For a visual illustration of eigenmode switching, wecolor-plot the eigenvectors in MATLAB, where the entriesin an eigenvector are used as indices into the color map. Toenhance our illustration, we nonlinearly warp the color map.As shown in Figure 6, given in the color plate, two simi-lar shapes have compatible eigenmodes, reflected by con-sistent color plots, only up to the4th eigenvalue. The5th

and6th eigenmodes are switched and color patterns for thenext a few eigenvectors, those exhibiting higher-frequencycolor variations, do not exhibit any discernible patterns. Ev-idently, correspondence analysis using eigenvalue orderingsto pair up eigenmodes beyond the4th one would be hard tojustify in this case.

Relevance to eigenvalue scaling:One interesting pointto note is that as the magnitude of the eigenvalues of thegeodesic affinity matrices exhibit rapid decay, as shown inthe caption of Figure 6, eigenvalue scaling has the effectof rapidly attenuating the effects of higher-frequency eigen-vectors. This would be quite appropriate since these eigen-vectors are less reliable to use for correspondence analysis.As a side effect, the resulting correspondence algorithm willbe less sensitive to the number of eigenmodes chosen. Inprevious works, e.g., [8], some heuristic has to be adoptedto determine the proper dimensionality to use.

Sign flips: Besides reflections induced by switching, othertransformations in the spectral domain also need to be han-dled to achieve robust spectral correspondence. One suchtransformation is due to the arbitrary determination of thesigns of the eigenvectors by the numerical eigenvalue pro-gram, as already noted in previous works [5, 31]. Note thatthis is another form of reflection. Caelli and Kosinov [5]propose to use a dominant sign correction, always ensuringthat there are more positive entries in each eigenvector. Thisis highly unreliable however since in practice, most eigen-vectors have about the same number of positive and nega-tive entries. Shapiro and Brady [31] use a greedy approachto correct one sign at a time by optimizing for a correspon-dence cost. In the presence of eigenmode switchings, thisapproach is not robust either.

Other transformations: Consider the spectral embeddingsof two similar human meshes using the2nd, 3rd and4th

eigenvectors (this particular choice of the eigenvectors isexplained in Section 5), as shown in Figure 4(a). Ideally,the embeddings would be perfectly aligned. However, a ro-tational difference in the embeddings is clearly visible. Inaddition, there are also other discrepancies of a non-rigidnature. Another example is given in Figure 4(b), wherethe second (light gray) mesh is merely a scaled version(scaled along thex direction) of the first (dark gray) mesh.But there again is a rotation in the embedding. We be-

(a) Two similar human meshes with their spectralembeddings differ by a rotation and some stretching.

(b) A human mesh and its stretched version. Their spectralembeddings differ by a rotation.

Figure 4. Stretching in spatial domain in-duces rotation and non-rigid transformationsin the spectral domain.

lieve that such transformations in the spectral domain, aswell as eigenmode switchings, are the result of non-uniformstretching in the shapes. Obviously, a matching algorithmmust be able to deal with all these transformations in orderto operate robustly.

5. Our algorithm

Observe that iterative alignment techniques, e.g., [6],can work quite well when the initial shapes are approx-imately aligned, while spectral embedding can automati-cally remove the effects of rigid-body transformations, uni-form scaling, and shape bending. Hence, a natural approachwould be to perform non-rigid alignment in the spectral do-main before computing the matching. The only obstaclenow is to handle reflections caused by eigenvector switch-ing and sign flips, as they can introduce large discrepanciesinto the initial configurations of the shapes to be matched.An exhaustive solution would be to consider all possibleeigenvector orderings and sign flips and choose the one thatgives the best matching. However, ifk eigenvectors areused for embedding, there arek! × 2k possibilities to ex-haust; this is quite expensive even for small values ofk.

We can use a simple, greedy heuristic. Let us first con-sider a very low dimensional embedding, e.g., with only two

eigenvectors. We exhaustively find the best possible order-ing and signs of these few eigenvectors. Now we incremen-tally add one eigenvector at a time and at each step, com-pute the best possible position and sign of the new eigenvec-tor. This results inO(k2) possibilities to compare, greatlyreducing the time complexity. Due to the rapid decay ofeigenvalues and eigenvalue scaling, we never find it nec-essary to use more thank = 6 eigenvectors to arrive at asatisfactory mesh correspondence. Sok is always small.

Once we have aligned the two spectral embeddings prop-erly, we attempt to transform one embedding into another.Due to the presence of non-rigid deformations in the spec-tral domain, we modify the original rigid ICP algorithm[4] by replacing its transformation model with the use ofthin-plate splines. Thin-plate splines are well-known andhave been applied to model non-rigid transformations be-fore [3, 6] in the context of 2D shape registration. A briefoverview of this technique is given in the Appendix.

Now consider two 3D meshesM1 andM2 with nM1 andnM2 vertices, respectively. Without loss of generality, as-sume thatnM1 ≤ nM2 . Let us describe each step of ourspectral correspondence algorithm in details below.

1. Geodesic affinities: Construct Gaussian affinity ma-trix A where

Aij = e

−d2ij

2σ2M1

wheredij is the geodesic distance between vertexi andj in M1. The Gaussian kernel widthσM1 is set to bethe maximum geodesic distance between any two ver-tices inM1. The performance of our method is rela-tively invariant to the choice ofσM1 as long as it is setto a sufficiently large value. Similarly, we constructB,the Gaussian affinity matrix for meshM2.

2. Spectral embeddings:The affinity matricesA andBare eigenvalue decomposed and the resulting spectrumare truncated tok. Each of thek eigenvectors is scaledwith the square root of its corresponding eigenvalue.These steps have already been described in details inSection 4.1 and 4.2.

Note that if the Gaussian width is sufficiently large,the row-sums of the affinity matrix are almost con-stant. As a result, the first eigenvector of the matrixwill be close to a constant vector and can be safely ig-nored. From now on, we denote byA ∈ RnM1×(k−1)

andB ∈ RnM2×(k−1), as first defined in Equation 2,the (k − 1)-dimensional embeddings ofM1 andM2,respectively, where the first eigenvector is disregarded.A andB are essentiallynM1×(k−1) andnM2×(k−1)matrices where theith rows ofA andB are the(k−1)-dimensional spectral embedding coordinates of theith

vertices of meshesM1 andM2 respectively. In all our

experiments, we have usedk = 5 or 6 hence giving a4 or 5-dimensional spectral embedding after disregard-ing the first eigenvector.

3. Eigenvector reordering and sign correction: Wekeep the ordering and signs of the eigenvectors ofone mesh, e.g.,M1, fixed. With either the exhaustivesearch or the greedy heuristic, we need to compute thecost of a correspondence, which we describe below.First, we obtain a best matchingC based simply ontheL2 metric; other metric, such as the Chi-square orMahalanobis distance is also possible. Specifically, fora vertexvM1

i of meshM1, vM2C(i) is the corresponding

vertex ofM2, where

C(i) = argminj‖Ai − Bj‖. (3)

HereAi andBj denote the spectral embedding coordi-nates of vertexi in meshM1 and vertexj in meshM2

respectively (i.e. theith and thejth row of the matricesA andB respectively). The cost of the correspondenceC is given by the sum:

cost(C) =nM1∑

i=1

‖Ai − BC(i)‖

We choose the ordering and signs of the eigenvectorsfor meshM2 which give the minimumcost(C).

4. Non-rigid alignment: Once the eigenvectors for twoshapes have consistent ordering and signs, we performa non-rigid alignment using ICP modified by thin-platesplines (Refer to the Appendix). The pseudo-code forthis alignment procedure is given below.

Given two spectral embeddingsA andB,

(a) Initialize parametersd, w, λ.

(b) TransformB into ˆB using the transformation pa-

rametersd andw.

(c) Update correspondenceC using Equation (3) af-

ter replacingBj with ˆBj .

(d) Given the correspondenceC, update transforma-tion parameters using Equation (5).

(e) Update the regularization parameterλ.

(f) Repeat from Step 2 until convergence.

We have found experimentally that 5 to 10 iterationsof the iterative alignment are sufficient to align the em-beddings. The value of the regularization parameterλis set to be the mean distance between all embeddedpoint pairs. As shown in [3], this scale-dependent as-signment ofλ is robust to scaling of the point sets.

5. Proximity-aided matching: For dense correspon-dence it is hard to distinguish between near-by pointsusing an alignment and correspondence procedurebased on optimizing a global energy, which is the casein our approach. In order to improve correspondencelocally, we perform matching using a heuristic basedon point proximity. Specifically, we first select a smallnumber ofanchor pointpairs. These are point pairsthat are best matched (that is, pairs contributing leastto the correspondence cost), but that are also not tooclose to each other. Now for finding the correspon-dence cost between two points, we not only considerthe L2 distance between their (non-rigidly aligned)spectral embeddings, but also the difference betweentheir geodesic proximities to these anchor points.

The anchor point pairs are computed as follows. Con-sider the(nM1 × nM2) matrix Z of correspondencecosts between all points ofM1 andM2. That is,

Zij = ‖Ai − Bj‖.

The first anchor point pair(a(1)1 , a

(1)2 ), wherea

(1)1 is a

vertex ofM1 anda(1)2 is a vertex ofM2, is selected as

the pair with least correspondence cost. That is,

(a(1)1 , a

(1)2 ) = argmin(i,j)(Zij).

The second anchor point pair is calculated in the sameway. However, we would need the anchor points tobe far from each other over the mesh. Hence, beforefinding the second pair, we modify the matrixZ so thatpoints close to the first anchor point are penalized. Thenew correspondence cost matrix is given by:

Z(1)ij = Zij − 1

2[distM1(i, a(1)

1 ) + distM2(j, a(1)2 )]

wheredistM (i, j) is the geodesic distance between theith andjth vertex of meshM . Now, the second anchorpoint pair is given by:

(a(2)1 , a

(2)2 ) = argmin(i,j)(Z

(1)ij ).

This process can be repeated to obtain more anchorpoint pairs. With the anchor points, we modify Equa-tion (3) for finding the best correspondenceC to incor-porate the proximity cost:

C(i) = argminj[‖Ai − Bj‖

h∑

l=1

αl · ‖distM1(i, a(l)1 )− distM2(j, a(l)

2 )‖]

whereh is the number of anchor point pairs chosenand theαl’s are free parameters set by the user.

The success of the proximity heuristic depends on twofactors: quality of the anchor point pairs and geodesicdistances. Since the meshes are already well aligned,choosing the anchor point pairs to be the most trustedmatches are expected to be robust. However, the de-pendence on geodesic distances may cause sensitivityof the heuristic to stretching in the shapes. Hence, fix-ing a large number of anchor point pairs can render thematching non-robust. Thus we restrict to fixing onlythree anchor pairs and setα1 = α2 = α3 = 1 for allour experiments.

6. Experimental results

To evaluate a mesh correspondence algorithm, we hand-pick a small number (17 to 20) of feature points on both ofthe meshes to be matched, where the number of vertices inthese meshes vary between 100 to 300. The ground-truthcorrespondence between the features is determined by hu-man. Now we compute a correspondence using the algo-rithm and record the percentage of correct correspondencesobtained. Figure 6 shows a comparison between our algo-rithm and other well-known schemes, on eight test cases.The shapes to be matched in the test cases are shown in Fig-ure 7; each pair of shapes exhibit some degree of non-rigiddeformations. We now describe briefly the other schemeswe have experimented with and our experimental setup.

• TPS-RPM [6] in spatial domain: This is one of themost successful non-rigid ICP algorithms. It combinesthin-plate splines, soft assign, and deterministic an-nealing to achieve robust correspondence. But as wehave shown in Figure 1, it is susceptible to poor initialalignment, such as a difference in rotation.

To improve its performance, wemanuallyand rigidlyalign the two shapes to be matched, attempting to neu-tralize any rotation or translation between them; this isdone for all the three spatial-domain schemes we haveexperimented with. However, bending in the shapesstill cause the algorithm to perform poorly.

• Robust ICP [35] in spatial domain: This method is arecent variant of the original ICP [4] algorithm. It usesa hierarchical approach to achieve robust registrationof 3D point sets. We use it as a representative of therigid iterative alignment schemes.

• Shape context [3] in spatial domain:We use a triv-ial 3D extension of the original 2D shape context ofBelongie et al. [3] as a representative correspondencescheme based on local shape descriptors. Shape con-text is one of the most successful local descriptors forimage analysis [25].

• Shapiro and Brady [31]: This is one of the early andbest-known spectral point correspondence algorithms.It usesL2 distance to compute a best matching, usingtheir greedy sign correction but with no eigenvectorreordering or eigenvalue scaling of eigenvectors.

• Improved Shapiro and Brady: Only eigenvalue scal-ing is incorporated into the original algorithm.

In each test case,k = 6 eigenvectors are used. Us-ing more eigenvectors does not change the result due toeigenvalue scaling. Three out of the eight cases, Armadillo-Human, the Hands-1, and the Hands-3, have eigenvectorswitching occurring. In six of the eight cases, the greedyheuristic for eigenvector reordering and sign correction issuccessful; we shall provide a remark on this issue in thenext section. The results shown are obtained by the ex-pensive exhaustive search. Hence all results are limited tomeshes with a few hundred vertices. In all test cases, nomore than 10 iterations of our non-rigid ICP procedure areneeded. In several cases, the procedure converges in lessthan 5 iterations. In terms of results, as can be seen fromFigure 6, our algorithm clearly outperforms the state-of-the-art correspondence schemes mentioned above.

In Figure 7, we show some matching results obtainedfrom our algorithm. The matching is shown by coloring thevertices of the meshes in an appropriate way. We first as-sign colors to the vertices of one of the two meshes, e.g.,M2. Then the color for theith vertex of meshM1 is setto be the color of theC(i)th vertex ofM2, whereC is thecorrespondence found by our algorithm. This way, a goodcorrespondence will induce a coloring that is consistent onboth meshes. To show the meaningfulness of the correspon-dence obtained, we carefully assign different colors to dif-ferent parts of the meshM2. Clearly, our algorithm matchesbent shapes well, as well, it behaves robustly against mod-erate stretching in the shapes, e.g., the Armadillo vs. thehuman and the lion vs. the horse.

Note that in the Human:Human and Lion:Horse pairs,in Figure 7, which are of symmetric shapes, the correspon-dence is symmetrically switched. Namely, the right hand ofone human is matched to the left hand of the other, etc. Sim-ilarly, the right leg of the lion is matched to the left leg of thehorse, etc. This occurs since we define affinities based ongeodesic distance, which is an intrinsic measure that can-not distinguish between symmetric points. As such, theleft hand and the right hand of the human are equally goodmatches for the right hand of the other human. By chance,the Armadillo:Human, Cow:Lion, and Airplanes pairs re-turn the right correspondences.

One solution to the above symmetry problem would beto carefully select the right sign of the eigenvectors. Forshapes where there is one plane of symmetry, there willbe two possible sign configurations of the eigenvectors that

HumanArmadillo CowLion Hands−1 Hands−2 Hands−3 Airplanes Humans LionHorse0

10

20

30

40

50

60

70

80

90

100

Per

cen

tag

e o

f co

rrec

t co

rres

po

nd

ence

s

HumanArmadillo CowLion Hands−1050100

Chui et al’s TPS−RPM (in spacial domain)

Robust ICP (in spacial domain)

3D shape context (in spatial domain)

Improved Shapiro & Brady

Shapiro & Brady

Our algorithm

Legends

Figure 5. A comparison between several correspondence algorithms, including ours. The percent-age of correct correspondences is plotted.

would give the minimum correspondence cost. These canbe detected and the right configuration can be picked byinspecting it visually. As the number of symmetry planesincrease, more sign configurations will give the minimumcorrespondence cost. A more analytical solution would beto define affinities in a symmetry-distinguishing way.

Figure 8 gives additional correspondence results ob-tained using our algorithm on numerous articulated shapes.In each of shape class, one per row, all the shapes arematched to a single reference shape (the first shape in eachrow of 8) and correspondence obtained is color coded in ac-cordance with the colors on the reference shape. Apart fromshowing the effectiveness of our method, e.g., see the sec-ond row of Figure 8, these examples also reveal some of itslimitations which we discuss below:

1. Effect of intrinsic shape symmetry: As explainedearlier, due to the intrinsic nature of the affinity ma-trix, our method is not guaranteed to match symmetricshapes correctly, as shown in Figure 8(1-c) and Fig-ure 8(4-c) and (4-d). In all three cases, the sign con-figuration of the eigenvectors that gives the lowest cor-respondence cost leads to counterintuitive correspon-dence results. Our method succeeds in all the remain-ing cases in row 1, 2, and 4, although in each case, thenext best eigenvector sign configuration, which has acorrespondence cost extremely close to the lowest cost,would give a symmetrically flipped matching. Thisshows that the correspondence might very well havebeen symmetrically flipped in these cases too. Notethat the correspondence may be symmetrically flipped,but it is nevertheless still consistent across the shape.

2. Effect of topological changes: Since our methodlargely depends on geodesic distances, topological

changes can seriously harm the correspondence com-putation. This effect is visible in Figure 8(3-e) and(3-f), where the fingers of the hands are connected tothe palm which would change the connectivity of themesh, as well as the geodesic distances, drastically, re-sulting in unnatural correspondence results. Correctrecovery of the correspondence between the fingers inthis case appears to be a rather difficult problem, with-out some level ofa prior knowledge.

3. Unreliable geodesic distances:Figure 8(4-e) showsa bird shape that is very similar to the reference fig-ure for this group, Figure 8(4-a). However, the corre-spondence obtained is incorrect. We suspect that this ismainly due to the unreliability of geodesic distances onthe wings of the bird that contains many “cuts”. Hence,even though the shapes look similar in the spatial do-main, their embeddings are rather different.

4. Non-robustness ofL2 cost for exhaustive search:Close inspection of Figure 8(1-b) reveals that the cor-respondence obtained is inconsistent: the left arm iscolored orange which means that the left leg must becolored blue which is not the case (note that this isdifferent from the symmetry issue discussed above).This should not have been the case as the shapes aretopologically sound and the geodesic distances arecomputed robustly. The problem becomes clear whenwe examine the result of the exhaustive reordering ofeigenvectors. It turns out that for this shape, the ex-haustive reordering does not give the right ordering ofthe eigenvectors, as shown in Figure 9. After furtherinvestigation we find that that the problem lies with thecrudeL2 cost measure used in arriving at the reorder-ing. A more robust cost measure should be sought.

7. Conclusion and future work

In this paper, we present a hybrid approach to findinga one-to-one correspondence between the vertices of two3D meshes. We first transform the meshes into the spectraldomain, based on geodesic affinities, and then match thespectral embeddings after taking appropriate steps to ensurea consistent ordering and sign assignment of the eigenvec-tors. Eigenvalue scaling of the eigenvectors renders our al-gorithm robust against difference in mesh sizes and choiceof the dimensionality of the embeddings. Our method doesnot need a pre-selected set of feature vertices and can becompletely automated. It is invariant against rigid transfor-mations, uniform scaling, and shape bending. Experimen-tally, we find it to be robust against moderate stretching inthe shapes as well, relying on thin-plate splines for non-rigid alignment in the spectral domain, and it outperformswell-known existing shape correspondence schemes.

The time complexity for computing the spectral embed-dings and the correspondence cost, provided that an order-ing and signs of the eigenvectors have been determined, isO(n2 log n), wheren is the number of vertices in the largermesh. Note that this is inherent to the spectral approach,since the first step, which computes the pair-wise affinities,already requiresO(n2 log n) time. One effective remedyis to use sub-sampling techniques and extrapolation, e.g.,Nystrom method [11], to obtain approximate spectral em-beddings. This reduces the cost of computing the spectralembeddings toO(pn log n), wherep is the number of sam-ples chosen. In our subsequent work [24], we demonstratethat excellent correspondence results can be obtained withonly p = 10 samples for meshes with hundreds of vertices.To reduce the cost of extracting correspondences, wherethe naıve best matching would requireO(n2) time, we cantake advantage of the accurate alignments that have alreadybeen obtained and apply spatial partitioning to speed up thesearch for correspondence pairs.

The other limitation of our current approach, in terms ofcomputational cost, is its reliance on an exhaustive searchto find a consistent eigenvector ordering and sign assign-ment. The greedy reordering approach is fast but it does notalways give the correct result. Analytically, the problem offinding a reordering and sign assignment which would leadto the best correspondence, e.g., according to the simpleL2

distance, is as hard as the graph isomorphism problem. Wewould like to look into fast approximation algorithms forthis problem and adopt it for our purpose.

Quality-wise, an important issue is related to the qualityof the correspondence cost used in determining the eigen-vector ordering and sign assignment. Currently, we are us-ing L2 and in some rare cases as shown earlier, even theexhaustive search would return a poor eigenvector orderingor sign assignment. This shows that a better cost function

is still required. In addition, we plan to address the otherlimitations of our current method, including the handling ofshape symmetry and non-manifold meshes.

Finally, we would like to investigate possible definitionsof the point affinities that are robust, if not invariant, tostretching within perceptually salient parts of a shape. Thiswould offer an alternative to using non-rigid alignment inthe spectral domain and avoid having to find a consistenteigenvector ordering or sign assignment.

References

[1] M. Alexa, “Recent Advances in Mesh Morphing,”ComputerGraphics Forum,Vol. 21, No. 2, pp. 173-196, 2002.

[2] D. Anguelov, P. Srinivasan, D. Koller, S. Thrun, H. Pangand J. Davis, “The Correlated Correspondence Algorithmfor Unsupervised Registration of Nonrigid Surfaces,”NIPS,2004.

[3] S. Belongie, J. Malik, and J. Puzicha, “Shape Matching andObject Recognition Using Shape Contexts,”IEEE Trans. onPAMI, Vol. 24, No. 24, pp. 509-523, 2002.

[4] P. J. Besl and N. D. Mckay, “A Method for Registration of3-D Shapes,”IEEE Trans. on PAMI,Vol. 14, No. 2, pp. 239-256, 1992.

[5] T. Caelli and S. Kosinov, “An Eigenspace Projection Clus-tering Method for Inexact Graph Matching,”IEEE Trans. onPAMI, Vol. 26, No. 4, pp. 515-519, 2004.

[6] H. Chui and A. Rangarajan, “A new point matching algo-rithm for non-rigid registration,”Computer Vision and Im-age Understanding,89:114-141, 2003

[7] M. Carcassoni and E. R. Hancock, “Spectral Correspondencefor Point Pattern Matching,”Pattern Recognition,Vol. 36,pp. 193-204, 2003.

[8] M. Carcassoni and E. R. Hancock, “Correspondence Match-ing with Modal Clusters,”IEEE Trans. on PAMI,Vol. 25,No. 12, pp. 1609-1615, 2003.

[9] C. Eckart and G. Young, “The Approximation of One Matrixby Another of Lower Rank,”Psychometrika,Vol. 1, pp. 211-218, 1936.

[10] A. Elad and R. Kimmel, “On Bending Invariant Signa-tures for Surfaces,”IEEE Trans. on PAMI,Vol. 25, No. 10,pp. 1285-1295, 2003.

[11] C. Fowlkes, S. Belongie, F. Chung, and J. Malik, “Spec-tral Grouping Using the Nystrom Method,”IEEE Trans. onPAMI, Vol. 26, No. 2, pp. 214-225, 2004.

[12] M. Garland,QSlim Simplification Software — qslim 2.1,http://graphics.cs.uiuc.edu/ garland/software/qslim.html.

[13] T. Gatzke, C. Grimm, M. Garland and S. Zelinka, “CurvatureMaps for Local Shape Comparison,” inProc. Shape Model-ing International, 2005.

[14] N. Gelfand, N. Mitra, L. Guibas, H. Pottmann, “RobustGlobal Registration,”SGP,2005.

[15] G. H. Golub and C. F. Van Loan,Matrix Computations,JohnHopkins University Press, 1996.

[16] C. Gotsman, X. Gu, and A. Sheffer, “Fundamentals of Spher-ical Parameterization for 3D meshes,”ACM Transaction onGraphics,Vol. 22, No. 3, pp. 358-363, 2003.

[17] A. Johnson and M. Hebert, “Using Spin-Images for EfficientMultiple Model Recognition in Cluttered 3-D Scenes,”IEEETrans. on PAMI, pp. 433-449, 1999.

[18] M. Kortgen, G-J. Park, M. Novotni, R. Klein, “3D ShapeMatching with 3D Shape Contexts,”Seventh Central Euro-pean Seminar on Computer Graphics,2003.

[19] R. Kolluri, J. R. Shewchuk, and J. F. O’Brien, “Spectral sur-face reconstruction from noisy point clouds,”Proc. of the2004 Eurographics/ACM SIGGRAPH symposium on Ge-ometry processing,pp. 11-21, 2004.

[20] V. Kraevoy, A. Sheffer, and C. Gotsman, “Matchmaker:Constructing Constrained Texture Maps,”ACM SIG-GRAPH,pp. 326-333, 2003.

[21] V. Kraevoy and A. Sheffer, “Cross-Parameterization andCompatible Remeshing of 3D Models,”ACM SIGGRAPH,2004.

[22] R. Liu and H. Zhang, “Segmentation of 3D Meshes throughSpectral Clustering,”Proc. of Pacific Graphics,pp. 298-305,2004.

[23] X. Li, I. Guskov, “Multiscale Features for ApproximateAlignment of Point-based Surfaces,”SGP,2005.

[24] R. Liu, V. Jain, and H. Zhang, “Subsampling for Effi-cient Spectral Mesh Processing,”Computer Graphics Inter-nationalJune, 2006 (to appear).

[25] K. Mikolajczyk and C. Schimid, “A Performance Evaluationof Local Descriptors,”IEEE Transactions on Pattern Anal-ysis and Machine Intelligence,Vol. 27, No. 10, pp. 1615-1630, 2005.

[26] A. Y. Ng, M. I. Jordan, Y. Weiss, “On Spectral Clustering:Analysis and An Algorithm,” inAdvances in Neural Infor-mation Processing Systems14, pp. 857-864, 2002.

[27] E. Praun, W. Sweldens, and P. Schroder, “Consistent MeshParameterizations,”ACM SIGGRAPH,pp. 179-184, 2001.

[28] S. Rusinkiewicz and M. Levoy, “Efficient Variants of the ICPAlgorithm,” In The Third International Conference on 3-DDigital Imaging and Modeling,pp. 145-152, 2001.

[29] J. Schreiner, A. Asirvatham, E. Praun, and H. Hoppe, “Inter-Surface mapping,”ACM Trans. Graph.,, Vol. 23, No. 3,pp. 870-877, 2004.

[30] G. Scott and H. Longuet-Higgins, “An Algorithm for Asso-ciating the Features of Two Patterns,”Proc. Royal Soc. Lon-don,Vol. B244, 1991.

[31] L. S. Shapiro and J. M. Brady, “Feature Based Correspon-dence: An Eigenvector Approach,”Image and Vision Com-puting,Vol. 10, No. 5, pp. 283-288, 1992.

[32] R. Sumner and J. Popovic, “Deformation Transfer for Tri-angle Meshes,”ACM Transactions on Graphics,Vol. 23(3),2004.

[33] S. Umeyama, “An Eigen Decomposition Approach toWeighted Graph Matching Problems,”IEEE Trans. onPAMI, Vol. 10, pp. 695-703, 1988.

[34] R. Zayer, C. Rossl, Z. Karni and H.-P. Seidel, “HarmonicGuidance for Surface Deformation,”Computer Graphics Fo-rum (Proceedings of Eurographics),Vol. 24(3), pages 601-609, 2005.

[35] T. Zinber, J. Schmidt and H. Niemann, “A Refined ICP Algo-rithm For Robust 3D Correspondence Estimation,” inProc.of International Conference on Image Processing, 2003.

Appendix: Thin-plate splines

The thin plate spline is a generalization of cubic splines tohigher dimensions and it contains affine transformations as a spe-cial case. With non-rigid transformations, there are infinitelymany ways of transforming a point set into another. Thin platesplines are effective because of their smoothness constraints whichdiscourage arbitrary mappings. In the limit of this smoothnessconstraint the thin plate spline model reduces to an affine trans-formation model. The thin plate spline transformation functionf : x ∈ Rk → y ∈ Rk maps a point setX = {x1, x2, . . . , xn}in k (say k = 2) dimensional space to another point setY ={y1, y2, . . . , yn} by minimizing the following energy function:

E(f) =

nXi=1

‖yi − f(xi)‖+

λ

Z Z »(∂2f

∂x2)2 + 2(

∂2f

∂x∂y)2 + (

∂2f

∂y2)2–

dxdy

(4)

whereλ is the regularization (smoothing) parameter. Note that thecorrespondence betweenX andY is assumed to be given. Hence,pointyi is the matching point forxi. The uniquef that minimizesthe above energy function has the form:

f(xi, d, w) = xi · d + φ(xi) · w,

wherexi is now in(k+1)-dimensional homogeneous coordinates,d is a (k + 1) × (k + 1) affine transformation matrix,w is ann × (k + 1) warping coefficients matrix andΦ(xi) is a vector oflengthn such thatφj(xi) = −‖xj − xi‖.

As shown in [3], the transformation(d, w) that minimizes theenergy can be calculated by solving the following system:

»K XT

X 0

– »wd

–=

»Y0

–(5)

Here,K is the matrix(Φ − λI) where,I is an identity matrixof appropriate size andΦ is an(n × n) matrix whoseith row isφ(xi), that is,Φij = −‖xj − xi‖.

Using these transformation parameters, we transform the pointsetX to point setY and then recompute the correspondence. Thisprocess is iterated until convergence.

Figure 6. Eigenvector plots for two shapes, both with 252 vertices. The first 8 eigenvalues are [205.6,11.4, 4.7, 3.8, 1.8, 0.4, 0.26, 0.1] and [201.9, 10.9, 6.3, 3.4, 1.8, 1.2, 0.31, 0.25], respectively.

Armadillo:Human Human:Human Hands-1 Hands-2

Hands-3 Airplanes Cow:Lion Lion:Horse

Figure 7. Correspondence results obtained from our algorithm, shown with color plots.

(1-a) (1-b) (1-c) (1-d) (1-e) (1-f) (1-g) (1-h)

(2-a) (2-b) (2-c) (2-d) (2-e) (2-f) (2-g) (2-h)

(3-a) (3-b) (3-c) (3-d) (3-e) (3-f) (3-g) (3-h)

(4-a) (4-b) (4-c) (4-d) (4-e) (4-f) (4-g) (4-h)

Figure 8. Row 1: correspondence results for human shapes. Row 2: for animal shapes. Row 3: forhand shapes. Row 4: for bird shapes.

Figure 9. Incorrect eigenvector ordering is obtained even after exhaustively reordering the eigenvec-tors for shapes in Figure 8(1-a) and (1-b).

Recommended