that cause topology difference are set to gluing point, and become a feature point. After this process, the topology is unity between every symmetry path. The connected edge which causes gluing is weak connecter.
Genus reduction. Since the topology noise causing by self-overlap will create genus holes, we can use this property to diagnose gluing point. The genus hole is represented in curve skeleton as a loop. A loop contain core node are called core loop, for each core loop, we choose a feature node to be a gluing point by estimating the length to core path and the shape breadth on gluing point. The connected edge which causes gluing is weak connecter.
3.4 Correspondence search
We present an algorithm which statistically analyze the rationality of local correspondence, and adjust the global correspondence by simulated annealing. This method find the correspondence with large different between two shapes, such as topological difference, structural difference, and enhance the symmetry consistence. Furthermore, it obtains a better correspondence with group similar. We build the combinatorial tree for correspondence search, each tree node repre-sents a matching between feature nodes and each path from root to leaf reprerepre-sents a local cor-respondence and use the branch-and-bound technique to reduce the number of tree node. After the correspondence search, we find many candidate local correspondences. Using intersection configuration to estimate the rationality for each local correspondences, and accumulate corre-spondence score for the matching between source and target. Then, we obtain a correcorre-spondence score from every reasonable local correspondence. Finally, utilize the correspondence score, we execute the SA iteration to compute the final correspondence.
3.4.1 Combinatorial search
The combinatorial tree search we used is similar to Au et al. [ATCO+10]. However, unlike [ATCO+10] which expanding tree node by a predefined ordering that all junction feature nodes preceding non-junction nodes, we predefine the ordering by considering the structure of shape.
3.4 Correspondence search 24
Furthermore, we adjust the pruning test to overcome the structural difference and enhance the symmetry consistency.
We expand the tree in a depth-first search manner, the predefined ordering defined by the cluster of sub-skeleton, for each cluster, all junction nodes preceding non-junction nodes. This accelerate the combinatorial search process, since the irrational feature matching between dif-ferent sub-skeleton are pruned early. Each path from the root to any leaf represents a corre-spondence between two shapes, and the correcorre-spondence is uniquely represented in a search tree.
Node-Centricity. We define the centricity Cp of feature node p as the average geodesic distance form p to all other skeleton nodes which is connected without weak connecter : Cp =
1 P
P
pi∈Pgeo(p, pi), which con(p) denotes a set of feature nodes that connected to p without us-ing weak connecter and geo(·, ·) is the geodesic distance between p and pialong skeletal paths.
The centricity are normalized by dividing it by the maximum centricity value of connected node without weak connecter. If the centricity are large than the threshold εC, we reject the feature pair (pk, qk).
|Cpk − Cqk|
(Cpk + Cqk)/2 > εC (3.1)
Trunk-Distance. We define a property are similar to centricity, called trunk-distance. It represent the distance between the feature and its core path: T Dp = minti∈T (p)geo(p, ti). T (p) denote the core nodes which dominate p (The dominate process describe in subsection 3.3.1).
If the trunk-distance are large than the threshold εT, we reject the feature pair (pk, qk). The trunk-distance are normalized by dividing it by the maximum trunk-distance of its core path.
The significance of trunk-distance are very different to centricity, since it consider the structure of shape. Figure 3.8 show the difference between centricity and trunk-distance.
|T Dpk − T Dqk|
(T Dpk+ T Dqk)/2 > εT (3.2)
Path-Length and Path-Radius. As the reasonable corresponding skeleton have similar
3.4 Correspondence search 25
(a) Centricity on dog model. (b) Trunk-distance on dog model.
Figure 3.8: The difference between centricity and trunk-distance. Warm colors denote longer distance, Cool colors denote shorter distance
3.4 Correspondence search 26
lengths and average path radius, we reject (pk, qk) if equation 3.3 or equation 3.4 is true.
|geo(pk, pj) − geo(qk, qj)|
(geo(pk, pj) + geo(qk, qj))/2 > εC, ∀(pj, qj) ∈ Ω (3.3)
|rad(pk, pj) − rad(qk, qj)|
(rad(pk, pj) + rad(qk, qj))/2 > εC, ∀(pj, qj) ∈ Ω (3.4)
The geo(·, ·) and rad(·, ·) is the geodesic distance and the average path radius of two feature nodes along skeletal paths, which don’t contain weak connecter.
Topology Consistency. It’s a local topological test for subgraph of the final correspondence.
Let pi and qj denote the closest node junction node of pk and qk. If pi and qj are both exist in Ω, but pkis not matched with qk(i.e., i 6= j), we reject (pk, qk).
Symmetry Consistency. If pk and qk are both symmetry node, then we applied symmetry pair and symmetry core testing. symmetry pair testing: Let pidenote the symmetry pair of pk, qj denote the symmetry pair of qk. If piand qj are both exist in Ω, but they are not matched(i.e., i 6= j), we reject (pk,qk). symmetry core testing: Let pi denote the symmetry core of pk, qj denote the symmetry pair of qk. If pi and qj are both exist in Ω , but they are not matched(i.e., i 6= j), we reject (pk,qk).
Spatial Configuration. A semantic correspondence is a ill-pose problem, we rely on in-trinsic similar between two shapes. The spatial information usually is considered as exin-trinsic information, which is sensitive to the pose of shape. But it’s hard to identify local flips, without considering any spatial information of skeletons. Oscar Au et al. present a effective approach in [ATCO+10] to utilize spatial information by performing least-squares multidimensional scal-ing (MDS) on skeleton and use rotation distortion to estimate difference. We use the symmetry and structure information to improve this approach for higher correspondence quality. Least-squares MDS is a spatial embedding [EK03], which can span out the branches of the skeletons,
3.4 Correspondence search 27
Figure 3.9 show the pose-normalized results of Least-squares MDS. However, MDS is sen-sitive to topology difference, and work terrible on composite object. Figure 3.10 and Figure 3.11 show the bad results of least-squares MDS. We solve this problem by breaking weak con-necters during the least-squares MDS process. First, we build a duplicate skeleton and break every weak connecter. Then the duplicate skeleton are break into several sub skeletons for ev-ery connected components. Final, we apply least-squares MDS to each sub skeleton. After least-squares MDS, the spatial configuration test performs on pose-normalization sub skeleton.
We use a 3 × 3 matrix Apq as a linear transformation matrix, to represent the non-translational transformation between two matching feature node sets pkand qk. Different form [ATCO+10], the Apq maps the vectors {p0s − p0k, p0c− p0k, p0k−1 − p0k} to {qs0 − qk0, q0c− q0k, q0k−1 − qk0}, where p0 and q0 are pose-normalized positions of the feature nodes, ps is the symmetry pair of pk, qs is the symmetry pair of qk, and pc, qc are core nodes. This way improve the accuracy of spatial configuration, since the vectors intersect on core of shape are much representative.
Especially on the small branch of skeleton, since it usually become very close to other branch after MDS process. As [ATCO+10], we use polar decomposition to find the rotation compo-nent Rpq. For the effect of global flipping, we multiply Rpq with -1 when det(Rpq) = −1 The rotation distortion is defined as RDpq = kApq− RpqkF, where k · k is the Frobenius norm. Let RDΩ = max{Rpq, Rqp}, which represents the rotation distortion. If RDΩ > εRD, we reject this correspondence.
3.4.2 Weighted voting
A path from the root to any leaf represents a partial correspondence between two shapes. First, we estimate the rationality of every path. Gromov-Hausdorff distance is useful property to measure intrinsic similarity. The base idea is to compute the Hausdorff distance in canonical form, which is isometric embedding. [SCF10] present a concept called fuzzy geodesics, which are stable with respect to the Gromov-Hausdorff distance. The pairwise fuzzy geodesics be-tween feature points form a set of fuzzy ropes, as Figure 3.12 showed. The crossing pattern
3.4 Correspondence search 28
Figure 3.9: The shape are pose-normalized by performing least-square MDS. [ATCO+10]
(a) Origin. (b) After MDS.
Figure 3.10: Shape with topology noise.
3.4 Correspondence search 29
(a) Origin. (b) After MDS.
Figure 3.11: Composite object.
of the ropes called intersection configuration (ICD)[SCF10]. We use intersection configuration distance between two shapes to measure the consistency of correspondence. We compute the reciprocal of intersection configuration distance as a consistent score for each terminal node of tree paths. Then compute the matching score for arbitrary feature pair by weighted voting. The tree path is called candidate correspondence, if the path is length and consistent score reach the threshold. Use the consistent score as weight, each candidate correspondence vote for its matching pairs. The weighted voting enhance topology consistence of local correspondence.
Furthermore, intersection configuration on mesh surface obtains more information, which can’t be conscious on curve skeleton, such as the starfish. In order to understand how to compute ICD between two shapes, we brief the definition of [SCF10] in this paragraph.
Definition 3.1 Given a parameterσ > 0, the f uzzy geodesic between any two points p
3.4 Correspondence search 30
Definition 3.2 F or any two pairs (p, q) and (u, v) on a Riemannian manif old M, the intersection of the f uzzy geodesics Gp,q and Gu,v, denoted Ip,qu,v, is their point − wise multiplication, namely Ip,qu,v : M → < :
Ip,qu,v = Gp,q(x) · Gu,v(x)
Definition 3.3 Given a set of points S = {si}mi=1in X, its intersection conf iguration, denoted ICS, is a f our dimensional square matrix of size m here the entry (i, j, k, l) is the p − norm of the intersection of the f uzzy geodesics Gsi,sj andGsk,sl, namely ICS(i, j, k, l) = kISSk,Sl
i,Sjkp
Definition 3.4 Given sparse correspondence h : S = {si}mi=1 → Y f rom X to Y, def ine the intersection conf iguration distance as
ICD(h) = X
i,j,k,l
|ICS(si, sj, sk, sl) − ICh(s)(h(si), h(sj), h(sk), h(sl))|
Figure 3.12: The sum of the fuzzy geodesics between all pairs of marked points [SCF10].
3.4 Correspondence search 31
3.4.3 SA iteration
After the weighted voting, we obtain a correspondence score for each feature pair. The cor-respondence score represent the rationality of matching, therefore a corcor-respondence that have the highest total score are a good correspondence. However, the correspondence which highest have total score may not preserve topology consistence, since the correspondence score only consider the partial matching, is lack for global information. Based on this consideration, we estimate the rationality for global correspondence by ICD. Since we can’t estimate the quality before the global correspondence is determined, we find a correspondence solution, and re-fine it, like simulated annealing. The idea came from [CG99], which called this process FT iteration, since the iteration alternates between finding an optimal flow and an optimal transfor-mation. We call the process SA iteration, which alternates between supplanting and attempting.
Supplanting establish a structure and attempting find the optimal of this structure. We add tree paths to a initial correspondence by greedy strategy, until the paths contain every feature node.
This process have to comply with 1-1 mapping rule, every feature node only match to one node. We calculate the correspondence score for initial correspondence. Then, execute sup-plant and attempting iteratively until reaching the iteration threshold. Specifically, the process is described in below. Supplanting: Supplant the path which contributed least. We estimate the rationality on final correspondence by ICD. Attempting: Calculate the correspondence score, if the score are higher, substitute this path for the supplanting path, else set this path as a fail-ure, and attempt for the next path. The attempting step test all tree paths in the order of total correspondence score.
C H A P T E R 4
Results
In this chapter, we present the experiment results of the correspondence, and comparison with related works. We also list the processing time of our algorithm, including symmetry detection, structure diagnosing, and correspondence search.
4.1 Results
In this section, we demonstrate some correspondence results. We have tested our symmetry-aware partial shape correspondence algorithm on various models, such as the four-legged an-imals, composite model, the shape with topology noise and the shape with group similarity.
By using symmetry information, we avoid to confuse small branch of curve skeleton. The cor-respondence score is obtained by statistical method, naturally support partial corcor-respondence.
Since the SA iteration and structure diagnosing enhance the capability of partial correspon-dence, we can compute a meaningful partial correspondence on composite object. We can see the result between four-legged animals in Figure 4.1, the correspondence accuracy is reliable, especially at hear and mouth. For instance, the horse and cow turn their head to the right side,
32
4.1 Results 33
hear and mouth are easy to confuse, since it’s similar in spatial configuration after the MDS process.
Figure 4.1: The correspondence results on four-legged animals, matching wolf to dog, cat, triceratops, horse, pig, dragon and cow.
By structure diagnosing, we have more information of shape composition. Therefore, our algorithm can work on composite objects and match sub-part statistically to find a partial corre-spondence. Figure 4.2 demonstrates an example for partial correspondence, the Neptune match to the man correctly, even if they have large topology difference. Figure shows another exam-ple, the two shapes both composite objects. The shape on the left is composite by three women step on their neighbors. The shape on the right is composite by three men lead by the hands.
The two shapes are semantically similar but topologically different, and the connected points between human are not even a feature point before structure diagnosing. Our algorithm created
4.1 Results 34
four new feature nodes for each shape and computed a meaningful correspondence. There are two feature points on each connected point and the feature nodes match to the correct side, even they are almost in same position.
(a) Neptune. (b) Man.
Figure 4.2: The correspondence between Neptune and a man. (a) Neptune is a composite objects, which composited by a trident, a human and a stage. (b) A simple man model.
4.1 Results 35
(a) The correspondence result.
(b) The correspondence on left part. (c) The correspondence on right part.
(d) The correspondence on middle part.
Figure 4.3: The correspondence between two composite objects. (a) The correspondence be-tween two shapes. (b)(c)(d) The correspondence on each sub skeleton.
4.1 Results 36
Our correspondence algorithm is insensitive to topology noise, since we can diagnose the topology noise through the help of symmetric information, such as unity adjusting and genus reduction. Figure 4.4 demonstrate an example for the capability of our method. Although the two shapes are very similar and it exist a full correspondence between them, it’s still a challenge case for non-rigid correspondence. Because of the non-rigid correspondence is sensitive to topological difference.
(a) Woman. (b) Man.
Figure 4.4: The correspondence result between two semantically similar shapes. (a) A woman model which have topology noise between hands and legs. (b) A man model without topology noise. The two shapes are semantically similar but topologically very different.
Generally speaking, most correspondence algorithm uses the geometrical information or
4.1 Results 37
topological information of shapes to estimate a meaningful correspondence. It will be a chal-lenge if the two shapes are semantically similar but geometrically and topologically very differ-ent, as Figure 4.5 showed. Neptune and armadillo have different pose, different surface detail and different sub-part. Furthermore they are topologically very different, Neptune is genus 2 and armadillo is genus 0. Even so, our algorithm computed a partial correspondence between Neptune and armadillo effectively. There are 7 matched feature nodes, Neptune has 13 feature nodes and armadillo has 22 feature nodes.
(a) Neptune. (b) Armadillo.
Figure 4.5: The partial correspondence between Neptune and armadillo. (a) Neptune have 13 feature nodes. (b) Armadillo model have 22 feature nodes.
The similarity-based correspondence estimates the similarity between pairs of feature nodes
4.1 Results 38
and derives a correspondence. But in some situation, many feature points are very similar.
We can’t differentiate them by shape volume, surface characteristic, centricity, path-length or topology information. We called this group similarity, even symmetric configuration and spatial configuration are not effective in the case. Figure 4.6 demonstrate the effectiveness of our method on two shapes with group similarity, we have both advantages of intersection configuration[SCF10] and spatial configuration[ATCO+10].
4.1 Results 39
(a) Our approach.
(b) Without spatial configuration.
(c) Without intersection configuration.
Figure 4.6: The correspondence between two octopuses.
4.2 Comparison 40
4.2 Comparison
In this section, we compare our result to other related literature. Au et al. present a fast and fully automatic correspondence algorithm. [ATCO+10], it was effective in a wide variety of shapes.
Since [ATCO+10] use curve skeleton as shape descriptor, it’s very suitable to compare with our approach. Our algorithm is effective in variety of composite objects and insensitive to topology noise. In addition to this, the symmetry information increased the accuracy of correspondence.
Figure 4.7 shows the advantage of symmetry consistency. The small branch on curve skeleton is easy to confuse after MDS. For instance, The horse turn its head causing error in [ATCO+10], our algorithm are more accurate on small branch, as Figure 4.8 showed. Furthermore, our algorithm can differentiate small topological difference, as Figure 4.9 showed. Because of we checked the core-node of symmetric pair, to achieve topology consistence.
4.2 Comparison 41
(a) [ATCO+10]
(b) Our approach.
Figure 4.7: The comparison with [ATCO+10] on pig and dragon.
4.2 Comparison 42
(a) [ATCO+10]
(b) Our approach. (c) Curve skeleton after MDS.
Figure 4.8: The comparison with [ATCO+10] on dog and horse.
4.3 Processing Time 43
(a) [ATCO+10]
(b) Our approach.
Figure 4.9: The comparison with [ATCO+10] on ants. (a) [ATCO+10] produce semantically incorrect correspondence when two shapes have different semantics but similar geometry. (b) Our algorithm is conscious of small topological difference by using symmetry information.
4.3 Processing Time
In this section, we list the processing time of our algorithm. The processing can classify to shape process and correspondence process. Shape process compute for each shape, and
corre-4.3 Processing Time 44
spondence process are compute for each pair of shapes. There are three shape processes in our algorithm, shape analysis, least-square MDS and intersection configuration. The shape analysis includes symmetry detection and structure diagnosing. Table 4.3 shows the computation time for each shape. Building the IC table cost most time, because the process have to compute geodesic distance between all pairs of mesh vertex. The process time of least-square MDS are depend on the iteration times of SAMCOF algorithm [BG97], we set the iteration times to 20 in the table. Since computing least-square MDS and calculating intersection configuration table take more processing time, we precomputed it for each shape. We only have to save the result of MDS and IC, not for the geodesic distance table on skeleton node and mesh vertex. The time cost of correspondence process are short, it take less than 2 seconds for all demonstration in this chapter. All experiments are performed on an Intel Core2 Duo E6750(2.66GHz) machine with 3G ram, using a single thread implementation.
Model face num. Shape Analysis(sec.) MDS(sec.) IC(sec.)
Wolf 9420 0.7 8.8 22.4
Table 4.1: The processing time for shape process step.
C H A P T E R 5
Conclusions
We give a brief summary of our correspondence algorithm in this chapter. We also discuss the limitations of our system, and propose several directions of the future work.
5.1 Summary
We propose a fully automatic partial correspondence algorithm that allows matching of a wide variety of shapes with semantically similar structures but different geometric details and differ-ent topology. From the structure diagnosing, we have enough information to compute a high quality correspondence with the large structural difference or topology noise causing by gluing.
And we use not only curve skeleton but also surface information to enhance correspondence, by this way, we can recognize the relative position between group similarity (e.g. tentacles of octopus). By the symmetry pairs, correspondence is more accurate with small topological dif-ference, since we check the consistent between core nodes of symmetry pairs. Though using symmetry information, we have great progress in correspondence. We have a better way to deal with global flipping, through spatial configuration along the core path. And the topology
45
5.2 Limitations 46
consistence are estimated particularity in our SA iterative, even can handle group-wise corre-spondences, which have large topologically different.
consistence are estimated particularity in our SA iterative, even can handle group-wise corre-spondences, which have large topologically different.