[ATCO+10] performed multidimensional scaling on skeleton to achieve pose- normalizing and used a statistical correspondence algorithm called electors voting to find the correspondence ef-ficiently. These papers have in common is that correspondence result relies on skeleton quality.
The important problem is whether shape skeleton represents shape appropriately.
2.1.5 Partial correspondence
Computing a partial correspondence is an important specialization of shape correspondence, it is a more difficult problem than computing a full correspondence, since searching for the correct assignment for subset increases the complexity. One approach estimates the objective function, and search for sharp difference. The sharp difference becomes watershed between outlier points and matched points [GMGP05, ZSCO+08]. Alternatively, the other approach es-timates the number of outlier feature as an optimization problem first. This process decrease the number of feature nodes, and only the remained feature nodes appear in the computed corre-spondence [MC03, BBM05, OEK08]. The voting methods naturally have the ability to perform partial matching. The voting methods compute many candidates correspondence and cast a vote on the assignment of candidate [LF09, ATCO+10]. The heuristic algorithms for skeleton matching also perform partial matching [SKK04, BMSF06], which is inherent intuitiveness.
However, when two 3D shapes are very semantically different in whole shape, only sub parts are semantic similar, this current approaches may lead to large errors. The situation often occurs at composite object, as Figure 1.2 showed. Partial correspondence performs well in image re-search area, [BBM05, OEK08] matched two image which outlier feature are more than matched feature. It’s difficult to compute a partial correspondence between 3D shapes when they are very semantically different, since large semantic difference often lead to large topological difference.
2.2 Symmetry detection
It’s hard to obtain a high-quality sematic correspondence only using pure geometric informa-tion. If the parts of source and target have different semantics but similar geometry, the
corre-2.2 Symmetry detection 10
spondence could have large errors (e.g.2.1). So we use the symmetry information as a high-level shape signature to enhance the quality of correspondence.
Figure 2.1: The correspondence that computed by[ATCO+10] are semantically incorrect, since components have different semantics but similar geometry.
The symmetry detection algorithm can classify to compute extrinsic and intrinsic symme-try. Extrinsic symmetry are symmetric to a line or a plane, it’s a rigid symmesymme-try. Intrinsic symmetry is symmetric to an axis or a surface, it’s a nonrigid symmetry. Some algorithms find one sole symmetry axis for a shape , which is called global symmetry, and the others may find several symmetry axes for each part of shape, which is called partial symmetry. According to Kai Xu et al. published in 2009 [XZT+09], we classify the symmetry detection algorithm into four categories, global extrinsic symmetry, partial extrinsic symmetry, global intrinsic symme-tryand partial intrinsic symmetry. Global extrinsic symmetry. [ZW97] detected approximate symmetry by defining a symmetry measure for a given transformation as distance of a shape to the closest symmetric shape. [KFR04] represents a 3D model as a collection of spherical func-tions by signal processing techniques, called symmetry descriptor. Partial extrinsic symmetry.
2.2 Symmetry detection 11
[PSG+06] developed a transform that measures the reflective symmetries of a 3D shape with respect to all possible lines in the plane. [SS06] proposed an approach is capable of detecting local approximate planar symmetries, defining a shape as a hierarchical union of planar sym-metric parts. [MP06] proposed to detect approximate partial symmetries for shapes based on transform-space voting and clustering, while a similar approach. Global intrinsic symmetry.
[MS06] proposed a method for recovering global symmetry of 3D shapes based on generalized moments, analyzing the extrema and spherical harmonic coefficients. [RK07] measures the re-flective symmetries of a 3D shape to all possible lines in the plane and spatial distribution of the object’s asymmetry. [OSG08] presented a purely algebraic algorithm for detecting global in-trinsic symmetries of shapes and classifying symmetries into discrete classes. Partial inin-trinsic symmetry. [XZT+09] developed a voting scheme to obtain an intrinsic reflectional symmetry axis transform, which is a scalar field over the mesh that accentuates prominent symmetry axis of the shape.
Sematic correspondence is an ill-posed problem, it compare intrinsically similar for corre-spondence. And the input models usually are non-rigid shape, so we have to use intrinsic sym-metry information of shape. Furthermore, the shape may be composited by several components, and each component have a symmetry axis. Therefore we need apply a partial intrinsic symme-try detection algorithm, and [XZT+09] is suit for our requirement. Unfortunately, it’s very slow to compute the partial intrinsic symmetry in current approaches. Therefore we purposed a fast approximation for partial intrinsic symmetry detection, the specific will be discussed in section 3.3.
C H A P T E R 3
Algorithm
We develop a fully automatic correspondence algorithm that allows matching of a wide variety of shapes with semantically similar, which can solve the topological noise causing by complex shape. The algorithm uses symmetry information to enhance the accuracy of correspondence search and diagnose the structure of shape, estimates both local and global information during the correspondence process. This chapter introduces our symmetry-aware partial shape cor-respondence algorithm in detail, included overview(section 3.1), symmetry detection(section 3.2), structure diagnosing(section 3.3) and correspondence search(section 3.4).
12
3.1 Overview 13
3.1 Overview
Figure 3.1: System overview
We give an overview of our method in this section, the main steps show in Figure 3.1. We take non-manifold mesh and curve skeleton as the input. First, we applied symmetry detec-tion and estimated structure of shape. Then we build the combinatorial tree for correspondence search, each tree node represent a matching between feature nodes and each path from root to leaf represents a local correspondence and use the branch-and-bound technique to reduce the number of tree node. After the correspondence search, we find many candidate local spondences. Using intersection configuration to estimate the rationality for each local corre-spondences, and accumulate correspondence score for the matching between source and target.
Then, we obtain a correspondence score from every reasonable local correspondence. Finally, utilizing the correspondence score, we execute the SA iteration to compute the final correspon-dence.
3.2 Symmetry detection 14
3.2 Symmetry detection
In order to obtain the corresponding results with higher quality, we need the high-level shape signature. Symmetry is ubiquitous in nature and man-made artifacts, and it’s helpful to compare different shape. Furthermore, symmetry is useful to diagnose structure of shape. Therefore, we perform symmetry detection for both source shape and target shape. Since the semantic cor-respondence is an ill-posed problem, we must attain intrinsic symmetry rather than extrinsic symmetry. The shape often don’t have a meaningful global symmetry, some shapes even have many symmetry axes, so the partial symmetry algorithm is necessary for our correspondence algorithm. The current papers that support partial intrinsic symmetry are rare. [XZT+09] did excellent work to estimate partial intrinsic symmetry, which conformed to our needs. Unfor-tunately, the time cost of partial intrinsic symmetry algorithm is high. The worst-case time complexity of [XZT+09] is O(n4), a mesh with 10K vertices and with 3K samples, the process takes about 2 hours on an Intel Core 2 Duo 6300, 1.86 GHz machine with 1GB memory. Since we use the symmetry information only for the shape correspondence, we seek for efficient al-gorithm for the approximation of partial intrinsic symmetry. We propose an efficient alal-gorithm to estimate partial intrinsic symmetry on curve skeleton.
3.2 Symmetry detection 15
Algorithm 1 Voting for intrinsic symmetry axis Give a set J to represent junction nodes on S
for j ∈ J do Given a set L to represent links of j
for x ∈ L for a ∈ x
T(a) = T(a) + symmetryScore end for
end for
Similarity-Filter(a,b).This filter ensure the skeleton node a and b are similar geometrically.
We use the skeleton node radius value as a similar property, which denote the radius of insphere.
Radius of skeleton node roughly represents the breadth of shape.
3.2 Symmetry detection 16
Distance-Filter(a,b). This filter reject skeleton node a and b, if their geodesic distance difference on curve skeleton exceed threshold. By this filter, we find the a and b which is isometric to skeleton junction node.
Locality-Filter(a, b, x, y). We reject skeleton node a and b, if the link x and y are not continuously symmetric. We estimate the density of symmetric node to determine whether the symmetry is continuous, the idea is similar to [EKSX96].
Symmetry axes finding. After the voting process, we obtain a symmetry axis score on each skeleton node. We use symmetry score to find symmetry axes on skeleton. The link between junction nodes called central link. In accordance with symmetry score of central links, order of the link is set to symmetry axis. During the process, check if the central link cause symmetry axis branch, if so, we pass this link. Until all the central links processed or the score of the rest central links are lower than the threshold.
Symmetry pair finding. After the symmetry axes finding, we search the symmetry pair on the skeleton of shape. For every link that connects to symmetry axes, we estimate symmetry score that contribute to the symmetry axes. For every link that connect to symmetry axes, traverse the node of the link from the side connected to the symmetry axis, estimate whether the node contribute symmetry score to the symmetry axes, until all the node are estimated or the contribution node compose more than two clusters. The end of the first cluster is the symmetry node, and we can find a node as symmetry pair on the other link. We use density-based clustering which is similar to DBSCAN [EKSX96]. Since the clustering is on a skeleton, the process can simplify to just measure the continuity of symmetric density.
Group similarity. The phenomenon is similar to intrinsic symmetry, called group similar-ity, such as Figure 3.2. There are many sub-part are intrinsically symmetric to each other, we can’t assign a symmetry pair for it, we label it to group similarity. The two shapes both with group similarity is hard for most correspondence algorithm. This information is meaningful to our algorithm, since we use it to enhance correspondence. The specific method will introduce in 3.4.1 and 3.4.2.