spectral-based mesh...
TRANSCRIPT
International Journal on Interactive Design and Manufacturing (IJIDeM) manuscript No.(will be inserted by the editor)
Spectral-based Mesh Segmentation
Daniel Mejia · Oscar Ruiz-Salguero · Carlos A. Cadavid
Received: date / Accepted: date
Abstract In Design and Manufacturing, mesh segmen-tation is required for FACE construction in BoundaryRepresentation (B-Rep), which in turn is central forfeature - based design, machining, parametric CAD andreverse engineering, among others. Although mesh seg-mentation is dictated by geometry and topology, thisarticle focuses on the topological aspect (graph spec-trum), as we consider that this tool has not been fullyexploited. We pre-process the mesh to obtain a edge -length homogeneous triangle set and its Graph Lapla-cian is calculated. We then produce a monotonicallyincreasing permutation of the Fiedler vector (2nd eigen-vector of Graph Laplacian) for encoding the connectiv-ity among part feature sub-meshes. Within the mutatedvector, discontinuities larger than a threshold (interac-tively set by a human) determine the partition of theoriginal mesh. We present tests of our method on largecomplex meshes, which show results which mostly ad-just to B-Rep FACE partition. The achieved segmen-tations properly locate most manufacturing features,although it requires human interaction to avoid oversegmentation. Future work includes an iterative appli-cation of this algorithm to progressively sever featuresof the mesh left from previous sub-mesh removals.
Keywords Fiedler Vector · Mesh Laplacian · MeshSegmentation · Spectral Analysis
D. Mejia · O. Ruiz (B) · C. CadavidLaboratorio de CAD CAM CAE, Universidad EAFIT, K49#7 Sur-50, Medellın (Colombia)Tel: +57-4-261-9500 ext 9521Fax: +57-4-266-2484E-mail: [email protected]
Glossary
M : Triangular mesh of a connected 2-manifoldembedded in R3 composed by the set ofpoints X = {x1, x2, · · · , xn} and the set oftriangles T = {τ1, τ2, · · · , τp}.
E: Set of the edges {e1, e2, . . . , en} of all thetriangles T describing the connectivity ofM .
G: Graph representation of M consisting of thepair (X,E).
W : Weighted adjacency matrix ofG of size n×n.D: n× n diagonal matrix where Dii is equal to
the degree (weighted neighborhood size) ofthe vertex xi.
L: Laplacian matrix ofG defined as L = D−W .
λi: ith eigenvalue of the matrix L (sorted in as-cending order).
ui: Corresponding eigenvector of λi.u′2: Second eigenvector of L sorted in ascending
order.V : Indices of the vertices of G in concordance
with u′2 (re-labeling).
d: Second differences of u′2 with respect to V .
d′: Filtered version of d.
ti: ith local maximum of the set of all localmaxima of d′ sorted in descending order.
M: A connected and oriented Riemannian 2-manifold embedded in R3.
∂∂yi : Tangent vectors defining a local coordinate
system at a point p ∈ M.g: Metric tensor which defines an inner product
on M where gij is the local inner productbetween the coordinates ∂
∂yi and ∂∂yj at a
point p ∈ M.
DRAFT tively set by a human) determine the partition of the
DRAFT tively set by a human) determine the partition of theoriginal mesh. We present tests of our method on large
DRAFT original mesh. We present tests of our method on largecomplex meshes, which show results which mostly ad-
DRAFT complex meshes, which show results which mostly ad-just to B-Rep FACE partition. The achieved segmen-
DRAFT just to B-Rep FACE partition. The achieved segmen-tations properly locate most manufacturing features,
DRAFT tations properly locate most manufacturing features,although it requires human interaction to avoid over
DRAFT although it requires human interaction to avoid oversegmentation. Future work includes an iterative appli-
DRAFT segmentation. Future work includes an iterative appli-cation of this algorithm to progressively sever features
DRAFT cation of this algorithm to progressively sever featuresof the mesh left from previous sub-mesh removals.
DRAFT of the mesh left from previous sub-mesh removals.
Keywords
DRAFT Keywords Fiedler Vector
DRAFT Fiedler Vector
Segmentation
DRAFT Segmentation
DRAFT
D. MejiaDRAFT
D. Mejia
DRAFT trum), as we consider that this tool has not been fully
DRAFT trum), as we consider that this tool has not been fullyexploited. We pre-process the mesh to obtain a edge -
DRAFT exploited. We pre-process the mesh to obtain a edge -
length homogeneous triangle set and its Graph Lapla-
DRAFT length homogeneous triangle set and its Graph Lapla-cian is calculated. We then produce a monotonically
DRAFT cian is calculated. We then produce a monotonicallyincreasing permutation of the Fiedler vector (2nd eigen-
DRAFT increasing permutation of the Fiedler vector (2nd eigen-
vector of Graph Laplacian) for encoding the connectiv-
DRAFT vector of Graph Laplacian) for encoding the connectiv-ity among part feature sub-meshes. Within the mutatedDRAFT
ity among part feature sub-meshes. Within the mutatedvector, discontinuities larger than a threshold (interac-DRAFT
vector, discontinuities larger than a threshold (interac-
tively set by a human) determine the partition of theDRAFT
tively set by a human) determine the partition of theoriginal mesh. We present tests of our method on largeDRAFT
original mesh. We present tests of our method on large
: Triangular mesh of a connected 2-manifold
DRAFT : Triangular mesh of a connected 2-manifoldembedded in
DRAFT embedded inpoints
DRAFT points X
DRAFT X =
DRAFT =
triangles
DRAFT triangles
E
DRAFT E: Set of the edges
DRAFT : Set of the edges
triangles
DRAFT triangles
G
DRAFT G: Graph representation of
DRAFT : Graph representation of
W
DRAFT W
DRAFT
2 D. Mejia et al.
∇: Gradient operator acting on the surface de-fined by M.
div: Divergence operator acting on the surfacedefined by M.
∆: Laplace-Beltrami operator on manifolds de-fined as ∆ = −(div ◦ ∇).
1 Introduction
Mesh segmentation has become an important task inmany CAD CAM CAE areas. Its applications rangewidely in topics such as mesh animation [1,2], surfaceparameterization [3,4], mesh compression [5,6] and shapeprocessing [7,8].
The problem is as follows: given the mesh of a (con-nected) surface, break it up into a set of smaller sub-meshes which together compose the initial mesh. Solv-ing this problem becomes crucial when some proceduremust be carried on surfaces with particular properties,such as developability for parameterization or decom-position into primitive shapes for shape processing ormesh animation.
Usually a geometric approach is followed to face thisproblem as geometric constraints can be easily definedon the surface based on the user desired result. How-ever, there are cases in which geometry transitions arenot strong enough to trigger a mesh partition, whilethe topology of the mesh indicates a clear discontinu-ity, that should result in a mesh partition.
Since a mesh can be seen as an undirected graph,study of graph topology and methods of graph par-titioning can be almost immediately extrapolated tomesh segmentation. Graph and mesh Laplacians havebeen a topic of extensive research and their spectra haveshown to be a powerful tool for segmentation [9–12].
Finally, mixed approaches have also been proposed.Mixed approaches define schemes based on graph the-ory, but including geometric data. For example, finiteelements schemes of the Laplace-Beltrami operator leadto the cotangent weights method [13]. These schemesare strong in terms of both geometric and topologic in-formation which makes them so reliable for mesh pro-cessing.
Despite the advantages that mixed schemes mayhave, we believe that there should be first a deep under-standing of relevant topological information for meshsegmentation.
Since there are voids in the understanding of Topo-logical and Geometrical mesh properties, human in-teraction is still required to supervise these automaticmesh segmentation methods. In this article we illustratehow the second eigenvector of the Laplacian (Fiedler
!
! !
Triangular Mesh M
Mesh Partition SM = {M1, M2,…, Mn}
Graphic User
Interface (GUI)
Finish Segmentation ?
Triangular Mesh M
Mesh Partition SM = {M1, M2,…, Mn}
Finish Segmentation ?
Spectral Mesh Segmentation
Spectral Mesh Segmentation
Triangular Mesh M
Mesh Partition SM = {M1, M2,…, Mn}
Finish Segmentation ?
Spectral Mesh Segmentation
N
N
N
Y
Y
Y
(a)
(b)
(c)
Fig. 1 Scenarios of Mesh Segmentation.
vector) carries important features for graph and meshsegmentation. We use the monotonically increasing per-mutation of the Fiedler vector to re-label the meshnodes. This re-labeling reflects strength of connectiv-ity among graph components and therefore determinesa partition of the mesh.
Fig. 1 shows 3 scenarios of application of our meshpartition algorithm. Fig 1.(a) presents a fully automaticscenario. Fig 1.(b) displays our algorithm steered by ahuman operator, via direct setting of the mesh sepa-ration parameters. Fig 1.(c) depicts our algorithm pa-rameters being controlled via a Graphic User Interface(GUI) which would set the mesh separation parame-ters. In all 3 cases, some sub-meshes are removed fromthe source mesh in iteration i. The remaining mesh be-comes the source mesh for iteration i+1. The iterationsproceed until the input mesh is null or should not besplit further.
The remainder of this article is organized as fol-lows: Section 2 reviews the relevant literature. Section3 presents our segmentation approach. Section 4 dis-cusses results for many datasets. Section 5 concludesthe article and introduces what remains for future work.
2 Literature Review
Mesh segmentation has been an important research topicfor computer design. Different algorithms have beenproposed for segmentation based on different founda-tions of many areas such as statistics, optimization,
DRAFT titioning can be almost immediately extrapolated to
DRAFT titioning can be almost immediately extrapolated tomesh segmentation. Graph and mesh Laplacians have
DRAFT mesh segmentation. Graph and mesh Laplacians havebeen a topic of extensive research and their spectra have
DRAFT been a topic of extensive research and their spectra haveshown to be a powerful tool for segmentation [9–12].
DRAFT shown to be a powerful tool for segmentation [9–12].Finally, mixed approaches have also been proposed.
DRAFT Finally, mixed approaches have also been proposed.
Mixed approaches define schemes based on graph the-
DRAFT Mixed approaches define schemes based on graph the-
ory, but including geometric data. For example, finite
DRAFT ory, but including geometric data. For example, finiteelements schemes of the Laplace-Beltrami operator lead
DRAFT elements schemes of the Laplace-Beltrami operator leadto the cotangent weights method [13]. These schemes
DRAFT to the cotangent weights method [13]. These schemesare strong in terms of both geometric and topologic in-
DRAFT are strong in terms of both geometric and topologic in-formation which makes them so reliable for mesh pro-
DRAFT formation which makes them so reliable for mesh pro-cessing.
DRAFT cessing.
Despite the advantages that mixed schemes may
DRAFT Despite the advantages that mixed schemes may
have, we believe that there should be first a deep under-DRAFT
have, we believe that there should be first a deep under-standing of relevant topological information for meshDRAFT
standing of relevant topological information for meshsegmentation.DRAFT
segmentation.
DRAFT
DRAFT N
DRAFT N
DRAFT problem as geometric constraints can be easily defined
DRAFT problem as geometric constraints can be easily definedon the surface based on the user desired result. How-
DRAFT on the surface based on the user desired result. How-ever, there are cases in which geometry transitions are
DRAFT ever, there are cases in which geometry transitions arenot strong enough to trigger a mesh partition, while
DRAFT not strong enough to trigger a mesh partition, while
the topology of the mesh indicates a clear discontinu-
DRAFT the topology of the mesh indicates a clear discontinu-ity, that should result in a mesh partition.
DRAFT ity, that should result in a mesh partition.
Since a mesh can be seen as an undirected graph,DRAFT
Since a mesh can be seen as an undirected graph,study of graph topology and methods of graph par-DRAFT
study of graph topology and methods of graph par-titioning can be almost immediately extrapolated toDRAFT
titioning can be almost immediately extrapolated tomesh segmentation. Graph and mesh Laplacians haveDRAFT
mesh segmentation. Graph and mesh Laplacians have
Scenarios of Mesh Segmentation.
DRAFT Scenarios of Mesh Segmentation.
vector) carries important features for graph and mesh
DRAFT vector) carries important features for graph and meshsegmentation. We use the monotonically increasing per-
DRAFT segmentation. We use the monotonically increasing per-
mutation of the Fiedler vector to re-label the mesh
DRAFT mutation of the Fiedler vector to re-label the meshnodes. This re-labeling reflects strength of connectiv-
DRAFT nodes. This re-labeling reflects strength of connectiv-ity among graph components and therefore determines
DRAFT ity among graph components and therefore determinesa partition of the mesh.
DRAFT a partition of the mesh.
DRAFT
DRAFT Graphic
DRAFT Graphic
User
DRAFT User
Interface
DRAFT Interface
(GUI) DRAFT
(GUI) DRAFT
DRAFT
DRAFT
DRAFT
DRAFT
DRAFT
Partition DRAFT
Partition ,…, M DRAFT
,…, Mn DRAFT
n,…, Mn,…, M DRAFT
,…, Mn,…, M } DRAFT
} DRAFT
Finish DRAFT
Finish Segmentation ?DRAFT
Segmentation ?Segmentation ?DRAFT
Segmentation ?DRAFT Spectral Mesh
DRAFT Spectral Mesh Segmentation
DRAFT
Segmentation Segmentation
DRAFT
Segmentation
Spectral-based Mesh Segmentation 3
graph theory and many others. An algorithm lies inone of the following classes depending on which data isrelevant for segmentation: i) geometry-based segmen-tation, ii) topology-based segmentation and iii) mixed-approach segmentation. A brief discussion of currentstate of the art methods is presented below followingthe proposed classification.
2.1 Geometry-based Segmentation
Geometry-based methods extract geometric data fromthe mesh such as euclidean and geodesic distances orcurvatures. Then, a clustering algorithm is usually ap-plied assuming that geometrically similar points likelybelong to the same cluster. In [6] a k-means algorithmis directly applied to the geometry data of the mesh andtherefore needs a post-processing algorithm (which theycall multiple principal plane analysis) for smooth defi-nition of boundaries between sub-meshes. In [4] tangentcurvatures are computed by curve fitting before cluster-ing. In [14] curvatures and normals are computed andthen a Student-t mixture model is used for the parti-tion.
Region-growing methods are expansive clusteringtechniques that define seed points or faces on the meshand as their name suggest, expand until some geometricconstraint is violated. In [15] an angle variation thresh-old between faces is defined for the algorithm and in [16]a variational formulation is proposed for segmentationby fitting quadric surfaces.
Other statistical techniques have been applied formesh segmentation. By generating some random fieldon a mesh, the distribution of some objective functioncan be used for partitioning. In [17] several segmenta-tion algorithms generate random fields on the surfacewhich are later evaluated by their cost function. In [18]an energy function is first defined and random fieldsare applied to the mesh. The distribution of the energyfield in terms of the random fields is then used to dividethe surface.
For these algorithms, we remark two potential draw-backs: i) most of them are not fully deterministic whichdoes not guarantee the same results for the same surfaceand ii) as we mentioned before, topology information isusually discarded which might be important in severalcases.
Learning approaches try to replicate shapes frompreviously learned geometries. This in fact requires thealgorithm to be calibrated first using already segmentedmeshes as can be seen in [19–21]. However, these meth-ods require lots of datasets for training that must besimilar to the mesh which limits the algorithm and as
can be noted, training meshes must be segmented some-how.
2.2 Topology-based Segmentation
Topology-based algorithms on the other hand, rely onthe features lying on the structure of the mesh withoutconsidering geometric features. Recall that a mesh hasa graph representation and the topologic properties ofthis graph can be used for segmentation. However, someassumptions must be first made on the mesh samplingsince the same surface may be represented by differentconnectivities.
The motorcycle algorithm first proposed by Epp-stein et. al. [22] consists of following a particle acrossstraight paths that start at what they define an ex-traordinary vertex and end at vertices visited by otherparticles. Gunpinar et. al. [23,24] have presented sev-eral approaches based on this idea though, this methodis currently limited to quadrilateral meshes.
In [17] segmentation is achieved by simultaneousclustering of similar meshes. However, this task requiresmaximum correspondence between faces which is notusual in CAD models due to meshing procedures andrefinements. In [8] the authors propose a segmentationby labeling vertices based on convexity flags.
Graph cuts have been successfully used for meshsegmentation as seen in [25], where an interactive ap-proach is followed by letting the user to draw strokeson areas where he wants the partition.
Reeb graphs have been also explored for mesh seg-mentation. After a field is defined on the mesh graph,the reeb graph is computed. Correct choice of the fieldis critical for an adequate segmentation. For example, in[26,27] the authors propose geodesic-based fields, whilein [28] eigenvectors are used instead.
Algorithms that rely solely on the mesh topologyare less common in the literature due to the samplingconstraints and the lack of geometric features whichmight be important in many applications leading to thenext class of algorithms.
2.3 Mixed-approach Segmentation
A mixed approach can be followed by extracting fea-tures from both topology and geometry. For example, in[29] an improvement of the motorcycle algorithm is pre-sented. By assigning different velocities to particles thegeometry of the surface is taken into account however,the limitation of quadrilateral meshes is still present.
In [7] slippage analysis is used for mesh segmen-tation. Localities of points are used to compute some
DRAFT mesh segmentation. By generating some random field
DRAFT mesh segmentation. By generating some random fieldon a mesh, the distribution of some objective function
DRAFT on a mesh, the distribution of some objective functioncan be used for partitioning. In [17] several segmenta-
DRAFT can be used for partitioning. In [17] several segmenta-tion algorithms generate random fields on the surface
DRAFT tion algorithms generate random fields on the surfacewhich are later evaluated by their cost function. In [18]
DRAFT which are later evaluated by their cost function. In [18]an energy function is first defined and random fields
DRAFT an energy function is first defined and random fieldsare applied to the mesh. The distribution of the energy
DRAFT are applied to the mesh. The distribution of the energyfield in terms of the random fields is then used to divide
DRAFT field in terms of the random fields is then used to dividethe surface.
DRAFT the surface.
For these algorithms, we remark two potential draw-
DRAFT For these algorithms, we remark two potential draw-
backs: i) most of them are not fully deterministic which
DRAFT backs: i) most of them are not fully deterministic whichdoes not guarantee the same results for the same surface
DRAFT does not guarantee the same results for the same surfaceand ii) as we mentioned before, topology information is
DRAFT and ii) as we mentioned before, topology information isusually discarded which might be important in severalDRAFT
usually discarded which might be important in severalcases.DRAFT
cases.
Learning approaches try to replicate shapes fromDRAFT
Learning approaches try to replicate shapes frompreviously learned geometries. This in fact requires theDRAFT
previously learned geometries. This in fact requires the
DRAFT Region-growing methods are expansive clustering
DRAFT Region-growing methods are expansive clustering
techniques that define seed points or faces on the mesh
DRAFT techniques that define seed points or faces on the meshand as their name suggest, expand until some geometric
DRAFT and as their name suggest, expand until some geometricconstraint is violated. In [15] an angle variation thresh-
DRAFT constraint is violated. In [15] an angle variation thresh-old between faces is defined for the algorithm and in [16]
DRAFT old between faces is defined for the algorithm and in [16]a variational formulation is proposed for segmentation
DRAFT a variational formulation is proposed for segmentation
Other statistical techniques have been applied forDRAFT
Other statistical techniques have been applied formesh segmentation. By generating some random fieldDRAFT
mesh segmentation. By generating some random fieldon a mesh, the distribution of some objective functionDRAFT
on a mesh, the distribution of some objective function
. Gunpinar et. al. [23,24] have presented sev-
DRAFT . Gunpinar et. al. [23,24] have presented sev-eral approaches based on this idea though, this method
DRAFT eral approaches based on this idea though, this methodis currently limited to quadrilateral meshes.
DRAFT is currently limited to quadrilateral meshes.
In [17] segmentation is achieved by simultaneous
DRAFT In [17] segmentation is achieved by simultaneous
clustering of similar meshes. However, this task requires
DRAFT clustering of similar meshes. However, this task requiresmaximum correspondence between faces which is not
DRAFT maximum correspondence between faces which is notusual in CAD models due to meshing procedures and
DRAFT usual in CAD models due to meshing procedures andrefinements. In [8] the authors propose a segmentation
DRAFT refinements. In [8] the authors propose a segmentationby labeling vertices based on convexity flags.
DRAFT by labeling vertices based on convexity flags.
Graph cuts have been successfully used for mesh
DRAFT Graph cuts have been successfully used for mesh
segmentation as seen in [25], where an interactive ap-
DRAFT segmentation as seen in [25], where an interactive ap-proach is followed by letting the user to draw strokes
DRAFT proach is followed by letting the user to draw strokes
DRAFT Topology-based algorithms on the other hand, rely on
DRAFT Topology-based algorithms on the other hand, rely onthe features lying on the structure of the mesh without
DRAFT the features lying on the structure of the mesh withoutconsidering geometric features. Recall that a mesh has
DRAFT considering geometric features. Recall that a mesh hasa graph representation and the topologic properties of
DRAFT a graph representation and the topologic properties ofthis graph can be used for segmentation. However, some
DRAFT this graph can be used for segmentation. However, someassumptions must be first made on the mesh sampling
DRAFT assumptions must be first made on the mesh samplingsince the same surface may be represented by different
DRAFT since the same surface may be represented by different
The motorcycle algorithm first proposed by Epp-
DRAFT The motorcycle algorithm first proposed by Epp-
DRAFT stein et. al. [22] consists of following a
DRAFT stein et. al. [22] consists of following a particle
DRAFT particle
straight paths that start at what they define anDRAFT
straight paths that start at what they define anand end at vertices visited by otherDRAFT
and end at vertices visited by other. Gunpinar et. al. [23,24] have presented sev-DRAFT
. Gunpinar et. al. [23,24] have presented sev-eral approaches based on this idea though, this methodDRAFT
eral approaches based on this idea though, this method
4 D. Mejia et al.
measures such as slippage and curvature. Depending onthe measured features, primitive shapes such as planes,spheres and cylinders are recognized. The problem withthis method is that some surfaces may present complexshapes not recognized by the algorithm. Additionally,since the method is presented for clouds of points, thealgorithm is very sensitive to neighbor sizes.
An important operator has been widely used formesh segmentation: the Laplacian operator. The defini-tion of most mesh Laplacian follow classic graph Lapla-cian definitions naturally which strongly encodes topo-logic features. Geometric features are also considered byweighting schemes defined on the graph of the mesh. In[30] and [12] interactive approaches are presented whereeigenvectors of the Laplacian are chosen for the segmen-tation and in [9] eigenvectors are automatically chosenby an empirical criteria and a k-means algorithm is thenapplied on the selected subset of eigenvectors.
Harmonic functions of the Laplacian operator havebeen also used. After some region is selected, dirichletconditions are introduced to the operator and a linearsystem of equations arises. In [31] an interactive algo-rithm is presented where the user draws strokes acrossdesired boundaries and in [32] a similar algorithm ispresented for segmentation of dental meshes. Heat ker-nels have been also explored for mesh segmentation [33,34] where dirac delta initial conditions are imposed.
2.4 Conclusions of the Literature Review
We believe that there is still a lot of uncertainty abouthow the topology of the mesh encodes relevant featuresfor segmentation. This uncertainty usually leads mostresearchers to tackle the mesh segmentation problemfrom the geometry-based approach. We also considerthat spectral analysis is an area with high potential forsegmentation as have been shown in previous literature[12,9]. However, work shows that uncertainty still pre-vails at this level given the fact that user-interactivityis required or that parameterizations of the algorithmsare based on empirical results.
In this article we illustrate how the Fiedler parame-ters encode connectedness properties of the graph mesh.Based on these results, an intuitive method is presentedfor exploiting these properties. A topology-based algo-rithm is introduced by constructing the classic graphLaplacian with constant weights and successful segmen-tation of homogeneous meshes is achieved. The limi-tation to homogeneous meshes can be partially over-come by extending the scheme to a mixed approachbut the pure topologic nature of the algorithm givesfaster and computationally stable results. Also, sincethe method follows an intuitive result from spectral
analysis, a deeper understanding of topology-based im-plicitly arises and opens the doors for further research.
Our proposed algorithm produces segmentations thatobey the connectivity of a homogeneously connectedmesh (i.e. with quasi - uniform triangle edge length).Notice that such an algorithm requires a human steer-ing (likely to be interactive), to reject over - fragmenta-tion, or to set the threshold of Fiedler vector disconti-nuity, that triggers split of a sub-mesh from the sourcemesh.
3 Methodology
We consider triangular meshes M which are connected,2-manifolds embedded in R3. M is defined by a setpoints X = {x1, x2, · · · , xn} which together describethe geometry ofM and a set of triangles T = {τ1, τ2, . . . , τp}.Each triangle is a sequence of edges τi = (ea, eb, ec)where each ej belongs to a set of edges E = {e1, e2, · · · , em}.This structure describes the connectivity on M .
G = (X,E) is therefore the (undirected) graph rep-resentation of M where X is seen as the set of verticesof the graph and E is the set of edges. Since M is con-nected, so is G.
The problem of mesh segmentation consists of di-viding M into k disconnected components. For solvingthis problem we propose an algorithm that re-labels thevertices of the graph based on the Fiedler vector. Figure2 presents the steps of the algorithm. Some preliminarykey results of spectral theory are briefly discussed first.
3.1 Graph Laplacian
In spectral graph theory, the adjacency matrix W of Gis defined as:
Wij =
{wij if (xi, xj) ∈ E
0 otherwise(1)
where wij is the adjacency weight between xi and xj .For our algorithm we take wij = 1 guaranteeing thatonly the topology of the graph mesh is considered.
If D is a diagonal matrix with entries Dii =∑
j wij ,then D is the degree matrix of G. The Laplacian matrixof G is therefore defined as L = D−W . Let f : X → Rwith f(xi) = fi be a field defined on the vertices ofthe graph, then Lf acts locally on each vertex in thefollowing manner:
(Lf)i =∑j
wij(fi − fj) (2)
DRAFT for segmentation. This uncertainty usually leads most
DRAFT for segmentation. This uncertainty usually leads mostresearchers to tackle the mesh segmentation problem
DRAFT researchers to tackle the mesh segmentation problemfrom the geometry-based approach. We also consider
DRAFT from the geometry-based approach. We also considerthat spectral analysis is an area with high potential for
DRAFT that spectral analysis is an area with high potential forsegmentation as have been shown in previous literature
DRAFT segmentation as have been shown in previous literature[12,9]. However, work shows that uncertainty still pre-
DRAFT [12,9]. However, work shows that uncertainty still pre-vails at this level given the fact that user-interactivity
DRAFT vails at this level given the fact that user-interactivityis required or that parameterizations of the algorithms
DRAFT is required or that parameterizations of the algorithmsare based on empirical results.
DRAFT are based on empirical results.
In this article we illustrate how the Fiedler parame-
DRAFT In this article we illustrate how the Fiedler parame-
ters encode connectedness properties of the graph mesh.
DRAFT ters encode connectedness properties of the graph mesh.Based on these results, an intuitive method is presented
DRAFT Based on these results, an intuitive method is presentedfor exploiting these properties. A topology-based algo-
DRAFT for exploiting these properties. A topology-based algo-rithm is introduced by constructing the classic graphDRAFT
rithm is introduced by constructing the classic graphLaplacian with constant weights and successful segmen-DRAFT
Laplacian with constant weights and successful segmen-tation of homogeneous meshes is achieved. The limi-DRAFT
tation of homogeneous meshes is achieved. The limi-
tation to homogeneous meshes can be partially over-DRAFT
tation to homogeneous meshes can be partially over-
DRAFT nels have been also explored for mesh segmentation [33,
DRAFT nels have been also explored for mesh segmentation [33,34] where dirac delta initial conditions are imposed.
DRAFT 34] where dirac delta initial conditions are imposed.
We believe that there is still a lot of uncertainty aboutDRAFT
We believe that there is still a lot of uncertainty abouthow the topology of the mesh encodes relevant featuresDRAFT
how the topology of the mesh encodes relevant featuresfor segmentation. This uncertainty usually leads mostDRAFT
for segmentation. This uncertainty usually leads mostresearchers to tackle the mesh segmentation problemDRAFT
researchers to tackle the mesh segmentation problem
Each triangle is a sequence of edges
DRAFT Each triangle is a sequence of edgese
DRAFT ej
DRAFT j belongs to a set of edges
DRAFT belongs to a set of edgesThis structure describes the connectivity on
DRAFT This structure describes the connectivity on
= (
DRAFT = (X,E
DRAFT X,E) is therefore the (undirected) graph rep-
DRAFT ) is therefore the (undirected) graph rep-resentation of
DRAFT resentation of M
DRAFT M where
DRAFT where
of the graph and
DRAFT of the graph and E
DRAFT E
nected, so is
DRAFT nected, so is G
DRAFT G
The problem of mesh segmentation consists of di-
DRAFT The problem of mesh segmentation consists of di-
viding
DRAFT viding M
DRAFT M
this problem we propose an algorithm that re-labels the
DRAFT this problem we propose an algorithm that re-labels thevertices of the graph based on the Fiedler vector. Figure
DRAFT vertices of the graph based on the Fiedler vector. Figure
2 presents the steps of the algorithm. Some preliminary
DRAFT 2 presents the steps of the algorithm. Some preliminary
DRAFT mesh (i.e. with quasi - uniform triangle edge length).
DRAFT mesh (i.e. with quasi - uniform triangle edge length).Notice that such an algorithm requires a human steer-
DRAFT Notice that such an algorithm requires a human steer-ing (likely to be interactive), to reject over - fragmenta-
DRAFT ing (likely to be interactive), to reject over - fragmenta-
tion, or to set the threshold of Fiedler vector disconti-
DRAFT tion, or to set the threshold of Fiedler vector disconti-nuity, that triggers split of a sub-mesh from the source
DRAFT nuity, that triggers split of a sub-mesh from the source
We consider triangular meshes
DRAFT We consider triangular meshes M
DRAFT M which are connected,
DRAFT which are connected,
2-manifolds embedded in
DRAFT 2-manifolds embedded in R
DRAFT R3
DRAFT 3.
DRAFT . M
DRAFT M is defined by a set
DRAFT is defined by a set
2 DRAFT
2, DRAFT
, · · · DRAFT
· · · , xDRAFT
, xnDRAFT
n}DRAFT
} which together describeDRAFT
which together describe
and a set of trianglesDRAFT
and a set of trianglesEach triangle is a sequence of edgesDRAFT
Each triangle is a sequence of edgesbelongs to a set of edgesDRAFT
belongs to a set of edges
Spectral-based Mesh Segmentation 5
Construction of the Laplacian Matrix
Laplacian matrix 𝐿
Graph 𝐺 of the mesh 𝑀
Computation of the Fiedler vector
Second eigenvector 𝑢2 of 𝐿
Sorting of the Fiedler vector
Sorted Fiedler vector 𝑢2′
Re-labeling of the vertices of the mesh graph
The re-labeled set 𝑉′ of the graph vertices
Computation of the Fiedler second differences
Absolute second differences 𝑑 of 𝑢2′ with respect to 𝑉′
Application of a filter
Filtered second differences 𝑑′
Finding local maxima
𝑡1, 𝑡2, … , 𝑡𝑘−1 local maxima of 𝑑′
Setting the segmentation thresholds
A partitition of the mesh 𝑀
Fig. 2 Diagram of the algorithm.
Equation (2) defines another field Lf on the verticesof the graph where each xi gets assigned the weighteddifferences between fi and its neighboring field i.e. allfj such that xj ∈ N(xi).
3.2 Fiedler Vector
We consider the set of eigenvalues λ1 ≤ λ2 ≤ · · · ≤ λn
of L and their corresponding eigenvectors u1,u2, · · · ,un.
There are some important results from graph theory onthese eigenvalues and eigenvectors [35,36]:
1. The first eigenvalue λ1 is equal to 0 and its corre-sponding eigenvector u1 is the constant vector i.e.u1(xi) = 1.
2. The second eigenvalue λ2 is known as the Fiedlervalue (or algebraic connectivity) and its correspond-ing eigenvector u2 is known as the Fiedler vector.
3. Since G is connected, λ2 > 0 and therefore u2 isorthogonal to the constant vector i.e. 〈u1,1〉 = 0.
4. The Fiedler vector solves the following optimizationproblem:
u2 = argminu⊥1
uTLu
uTu(3)
The algebraic connectivity is highly related to theconnectedness of the graph. Figure 3 illustrates how thesecond eigenvalue of the Laplacian matrix can give usan idea of such connectedness. The loop graph presentsless algebraic connectivity than the full graph since itrequires less cuts to divide the graph. However, the twofull graphs connected by a single edge show the smallestalgebraic connectivity since cutting that edge is enoughto split the graph despite the high connectedness ofboth graphs.
Figure 4 shows the Fiedler vector for the connectedfull graphs (figure 3(c)). Here the Fiedler vector is a pos-itive function in terms of the current vertex labeling.Also, low connectivity regions (edge (v10, v11)) showhigh changes in the Fiedler vector compared with highconnectivity regions (other vertices). This behaviour isexpected since equation (3) will see less penalization inlow connectivity regions, and motivates our algorithm:by re-labeling the vertices of the graph such that theFiedler vector becomes a positive function in terms ofthe re-labeled vertices, we can find low and high con-nectivity regions based on this intuition and set a seg-mentation criterion.
3.3 Laplace-Beltrami Operator
Let M be an oriented Riemannian 2-manifold embed-ded in R3. M is connected. The Laplace-Beltrami op-erator ∆ : L2(M) → L2(M) on M is defined as [37]:
∆φ = −(div ◦ ∇)φ (4)
where φ ∈ L2(M), ∇ is the gradient operator on Mdefined as:
∇φ =∑i
gij∂φ
∂yi
∂
∂yj(5)
DRAFT
DRAFT
DRAFT
DRAFT Setting the segmentation thresholds
DRAFT Setting the segmentation thresholds
DRAFT
DRAFT A partitition of the
DRAFT A partitition of the mesh
DRAFT mesh 𝑀
DRAFT 𝑀
Diagram of the algorithm.
DRAFT Diagram of the algorithm.
Equation (2) defines another field
DRAFT Equation (2) defines another field
of the graph where each
DRAFT of the graph where eachdifferences between
DRAFT
differences between
fDRAFT
fjDRAFT
jfjfDRAFT
fjf such thatDRAFT
such that
DRAFT connectedness of the graph. Figure 3 illustrates how the
DRAFT connectedness of the graph. Figure 3 illustrates how thesecond eigenvalue of the Laplacian matrix can give us
DRAFT second eigenvalue of the Laplacian matrix can give usan idea of such connectedness. The loop graph presents
DRAFT an idea of such connectedness. The loop graph presentsless algebraic connectivity than the full graph since it
DRAFT less algebraic connectivity than the full graph since itrequires less cuts to divide the graph. However, the two
DRAFT requires less cuts to divide the graph. However, the two
DRAFT
DRAFT
DRAFT
DRAFT
1 DRAFT
1 local DRAFT
local DRAFT
DRAFT
Setting the segmentation thresholdsDRAFT
Setting the segmentation thresholds
full graphs connected by a single edge show the smallest
DRAFT full graphs connected by a single edge show the smallest
algebraic connectivity since cutting that edge is enough
DRAFT algebraic connectivity since cutting that edge is enoughto split the graph despite the high connectedness of
DRAFT to split the graph despite the high connectedness ofboth graphs.
DRAFT both graphs.
Figure 4 shows the Fiedler vector for the connected
DRAFT Figure 4 shows the Fiedler vector for the connected
full graphs (figure 3(c)). Here the Fiedler vector is a pos-
DRAFT full graphs (figure 3(c)). Here the Fiedler vector is a pos-itive function in terms of the current vertex labeling.
DRAFT itive function in terms of the current vertex labeling.
DRAFT is known as the Fiedler
DRAFT is known as the Fiedlervalue (or algebraic connectivity) and its correspond-
DRAFT value (or algebraic connectivity) and its correspond-
is known as the Fiedler vector.
DRAFT is known as the Fiedler vector.
0 and therefore
DRAFT 0 and therefore u
DRAFT u2
DRAFT 2 is
DRAFT is
orthogonal to the constant vector i.e.
DRAFT orthogonal to the constant vector i.e. 〈
DRAFT 〈u
DRAFT u1
DRAFT 1,
DRAFT ,1
DRAFT 1〉
DRAFT 〉 = 0.
DRAFT = 0.
4. The Fiedler vector solves the following optimization
DRAFT 4. The Fiedler vector solves the following optimization
The algebraic connectivity is highly related to theDRAFT
The algebraic connectivity is highly related to theconnectedness of the graph. Figure 3 illustrates how theDRAFT
connectedness of the graph. Figure 3 illustrates how thesecond eigenvalue of the Laplacian matrix can give usDRAFT
second eigenvalue of the Laplacian matrix can give usan idea of such connectedness. The loop graph presentsDRAFT
an idea of such connectedness. The loop graph presents
6 D. Mejia et al.
(a) λ2 = 0.382.
(b) λ2 = 10.
(c) λ2 = 0.169.
Fig. 3 Some graphs and their algebraic connectivity: a) loopgraph with ten vertices, b) full graph with ten vertices andc) two full graphs of ten vertices connected by an edge.
Fig. 4 Fiedler vector for the two full graphs (figure 3(c)).Vertices labeled from 1 to 10 belong to the first full graphand vertices labeled from 11 to 20 belong to the second fullgraph. The vertices 10 and 11 connect the graphs.
Fig. 5 Homogeneous triangular mesh of the iron model.
and div is the divergence operator defined as:
divY =1
det(g)
∑i
∂
∂yi(Y i
√det(g)) (6)
g is the metric tensor of M, gij = (gij)−1 are the
components of the inverse of the metric tensor, Y ∈TM is a vectorial field defined on the manifold (localtangent planes) and Y i are its corresponding compo-nents in local coordinates ∂
∂yi .The Laplace-Beltrami operator is a generalization
of the standard Laplacian taken to manifolds. Fromthis point of view, the differential equation ∆φ = λφon the manifold can be seen as an analogue of theHelmhotz equation. The Helmhotz equation models thetime-independent component of the wave equation on agiven domain. Schemes for discretization of such oper-ator on triangular surfaces have been presented in the
DRAFT
DRAFT
Fig. 3DRAFT
Fig. 3graph with ten vertices, b) full graph with ten vertices andDRAFT
graph with ten vertices, b) full graph with ten vertices and
DRAFT
DRAFT
DRAFT
DRAFT DRAFT
DRAFT Fiedler vector for the two full graphs (figure 3(c)).
DRAFT Fiedler vector for the two full graphs (figure 3(c)).
Vertices labeled from 1 to 10 belong to the first full graph
DRAFT
Vertices labeled from 1 to 10 belong to the first full graphand vertices labeled from 11 to 20 belong to the second fullDRAFT
and vertices labeled from 11 to 20 belong to the second fullDRAFT
graph. The vertices 10 and 11 connect the graphs.DRAFT
graph. The vertices 10 and 11 connect the graphs.DRAFT
Spectral-based Mesh Segmentation 7
(a) Fiedler vector.
(b) Fiedler isolines.
Fig. 6 Fiedler vector on the iron mesh: a) the field goes fromblue (lower values) to red (higher values) and b) isolines ofsuch of field are drawn in blue.
literature [13,38] resulting in weighted Laplacians of thegiven mesh graphs. This result motivates our work sincethe consideration of an homogeneous mesh leads to ascaled solution of equation (3).
3.4 Algorithm Description
The idea of our approach consists in dividing the meshinto components with uniform connectivity. As we illus-trated in figure 4, low connectivity areas present higherchanges of the Fiedler vector with respect to some la-beling of the vertices of the graph. These changes canbe described by discrete differences on the Fiedler vec-tor. Also, components with uniform connectivity haveuniform differences and high changes in the discrete dif-ferences imply relevant topologic changes in the mesh
(a) Sorted Fiedler vector.
(b) Fiedler second differences.
(c) Filtered differences.
Fig. 7 Re-labeling of the vertices (x axis) and correspondingfunction on the iron mesh: a) Fiedler vector, b) second dif-ferences and c) filtered second differences. Lines in red showthe cut points for segmentation.
DRAFT Fiedler vector on the iron mesh: a) the field goes from
DRAFT Fiedler vector on the iron mesh: a) the field goes fromblue (lower values) to red (higher values) and b) isolines of
DRAFT blue (lower values) to red (higher values) and b) isolines ofsuch of field are drawn in blue.
DRAFT such of field are drawn in blue.
literature [13,38] resulting in weighted Laplacians of the
DRAFT literature [13,38] resulting in weighted Laplacians of thegiven mesh graphs. This result motivates our work since
DRAFT given mesh graphs. This result motivates our work sincethe consideration of an homogeneous mesh leads to a
DRAFT the consideration of an homogeneous mesh leads to ascaled solution of equation (3).
DRAFT scaled solution of equation (3).
3.4 Algorithm Description
DRAFT 3.4 Algorithm Description
The idea of our approach consists in dividing the mesh
DRAFT The idea of our approach consists in dividing the meshinto components with uniform connectivity. As we illus-DRAFT
into components with uniform connectivity. As we illus-trated in figure 4, low connectivity areas present higherDRAFT
trated in figure 4, low connectivity areas present higherchanges of the Fiedler vector with respect to some la-DRAFT
changes of the Fiedler vector with respect to some la-
beling of the vertices of the graph. These changes canDRAFT
beling of the vertices of the graph. These changes can
DRAFT
DRAFT
(b) Fiedler isolines. DRAFT
(b) Fiedler isolines.
Fiedler vector on the iron mesh: a) the field goes fromDRAFT
Fiedler vector on the iron mesh: a) the field goes fromblue (lower values) to red (higher values) and b) isolines ofDRAFT
blue (lower values) to red (higher values) and b) isolines ofDRAFT DRAFT
DRAFT (a) Sorted Fiedler vector.
DRAFT (a) Sorted Fiedler vector.
DRAFT
8 D. Mejia et al.
Fig. 8 Segmentation of the iron mesh.
graph. Therefore, high absolute differences of secondorder on the Fiedler vector with respect to a specificlabeling of the vertices define good cut points for seg-mentation.
The vertices of the mesh must be re-labeled suchthat the Fiedler vector is an increasing function in termsof the re-labeling since the segmentation will be definedby cutting thresholds on the Fiedler vector. Below theproposed algorithm (figure 2) is described:
1. Construction of the Laplacian matrix: Buildthe sparse Laplacian matrix L of the graph repre-sentation G of the connected mesh M as defined insection 3.1.
2. Computation of the Fiedler vector: Computethe Fiedler vector u2 of L by using some eigensolver.
3. Sorting of the Fiedler vector: Compute u′2 as a
sorting of u2 in ascending order.4. Re-labeling of the vertices of the mesh: Com-
pute V where V = {v1, v2, · · · , vn} is a re-labelingof X such that vi = xk, u′
2(vi) ≤ u′2(vi+1) and
vi �= vj , ∀i �= j.5. Computation of the Fiedler second differences:
Compute the absolute second differences d(v′) of u′2
with respect to v′. This is equivalent to computedi = |2u′
2(v′i)− u′
2(v′i−1)− u′
2(v′i+1)|.
6. Application of a filter: A low-pass filter must beapplied to d since the sampling of the mesh canlead to noise in the computed second differences.Compute the filtered second differences d′.
7. Finding local maxima: Compute t1, t2, · · · , tk−1
where t1 is the global maximum of d′(v′) and eachti is a subsequent (local) maximum (recall that k isthe desired number of components to partition themesh).
(a) Mesh.
(b) Fiedler isolines.
(c) Segmentation.
Fig. 9 Segmentation of a non-homogeneous mesh of the ironmodel.
DRAFT Computation of the Fiedler vector:
DRAFT Computation of the Fiedler vector:L
DRAFT L by using some eigensolver.
DRAFT by using some eigensolver.
Sorting of the Fiedler vector:
DRAFT Sorting of the Fiedler vector: Compute
DRAFT Computein ascending order.
DRAFT in ascending order.Re-labeling of the vertices of the mesh:
DRAFT Re-labeling of the vertices of the mesh:
where
DRAFT where V
DRAFT V =
DRAFT = {
DRAFT {v
DRAFT v1
DRAFT 1, v
DRAFT , v2
DRAFT 2,
DRAFT , · · ·
DRAFT · · ·
such that
DRAFT such that v
DRAFT vi
DRAFT i =
DRAFT = x
DRAFT xk
DRAFT k,
DRAFT , u
DRAFT u
,
DRAFT , ∀
DRAFT ∀i
DRAFT i �
DRAFT �=
DRAFT =�=�
DRAFT �=� j
DRAFT j.
DRAFT .
Computation of the Fiedler second differences:
DRAFT Computation of the Fiedler second differences:Compute the absolute second differences
DRAFT Compute the absolute second differenceswith respect to
DRAFT with respect tod
DRAFT di
DRAFT i =
DRAFT = |
DRAFT |2
DRAFT 2u
DRAFT u′
DRAFT ′2
DRAFT 2(
DRAFT (v
DRAFT v′
DRAFT ′i
DRAFT i)
DRAFT )
6.
DRAFT 6. Application of a filter:
DRAFT Application of a filter:applied toDRAFT
applied tolead to noise in the computed second differences.DRAFT
lead to noise in the computed second differences.Compute the filtered second differencesDRAFT
Compute the filtered second differences
7.DRAFT
7.
DRAFT by cutting thresholds on the Fiedler vector. Below the
DRAFT by cutting thresholds on the Fiedler vector. Below the
Construction of the Laplacian matrix:
DRAFT Construction of the Laplacian matrix: Build
DRAFT Build
of the graph repre-
DRAFT of the graph repre-
of the connected mesh DRAFT
of the connected mesh M DRAFT
M as defined inDRAFT
as defined in
Computation of the Fiedler vector:DRAFT
Computation of the Fiedler vector: ComputeDRAFT
Computeby using some eigensolver.DRAFT
by using some eigensolver.DRAFT DRAFT
DRAFT (a) Mesh.
DRAFT (a) Mesh.
DRAFT
Spectral-based Mesh Segmentation 9
8. Setting the segmentation thresholds: The seg-mentation of the mesh is achieved by setting thethresholds u′
2((d′)−1(ti)) on the Fiedler vector.
4 Results
We now present some results of our algorithm appliedto several datasets. In each case the Fiedler vector wascomputed by the Implicitly Restarted Arnoldi Iterationalgorithm which comes implemented in the ARPACKpackage [39]. Also, a moving average was implementedfor the filtering of the second order differences with win-dow sizes ranging between 1%-10%.
Figure 5 shows the triangular mesh of the iron model.This mesh consists of 35582 points and 71164 triangles.Figure 6 shows the Fiedler vector of the iron mesh.Topology of the graph of such (homogeneous) meshstill preserves many geometric properties of the sur-face. Isolines of the Fiedler vector (figure 6(b)) showhow the highly connected areas present low changes inthe Fiedler vector with respect to geometry while thelower ones present high changes.
The Fiedler vector is then sorted as described insection 3.4 and re-labeling of the vertices is made. Fig-ure 7 shows the re-labeling results for the iron. As wepointed in section 3 the sorted Fiedler vector showshigher changes in specific regions (figure 7(a)) whichcorrespond to relative changes of the Fiedler isolinesin figure 6(b). The second differences plot (figure 7(b))shows a concentration of several peaks near desired cutpoints. Selecting thresholds from this signal would leadto several disconnected components near the same iso-line which is not desired. Therefore this signal mustbe filtered first as described in section 3.4. The filteredsignal is presented in figure 7(c). Such filtering allowsthe algorithm to automatically detect good cutting iso-lines. By setting k = 3, global maxima are computed inthe filtered differences resulting in two thresholds (redlines) for the Fiedler vector which will divide the surfaceby the corresponding isolines. These thresholds coincidewith high changes in the slope of the sorted Fiedler vec-tor as seen in figure 7(a). The resulting segmentationis presented in figure 8. Notice how the resulting parti-tion divided the mesh into two high connectivity regions(blue and red) and a low connectivity region (green).
In contrast with the segmentation of a homogeneousmesh, figure 9 presents results for a non-homogeneousmesh of the same model. The Fiedler vector of the graphmesh does not follow adequately the geometry of thesurface (figure 9(a)) due to the non-homogeneous sam-pling as seen in figure 9(a) and as a consequence, theconnectivity of the graph does not follow correctly our
intuition of the geometry of the mesh anymore. Ad-ditionally, isolines present undesired behaviours alongthe surface which would result into components withmore irregular boundaries. The segmentation of thismesh under our approach is presented in figure 9(c).Notice that the segmentation is less intuitive since thetopology of the mesh graph is more discordant with thegeometry of the iron model and boundaries of discon-nected components are located at more geometricallyrandom places. These results illustrate the importanceof the homogeneity of the mesh for adequate results ofthe proposed algorithm.
Table 1 presents the results of our algorithm appliedto several datasets usually used in CAD applications orComputer Graphics. Since the algorithm only takes intoaccount the topology of the mesh, it is not expected topartition the mesh by its sharp edges. However, theachieved segmentation agrees with some of these sharpedges as can be seen in the gears and crankshaft datasetsshowing the importance of the topology even in thesecases. It is important to emphasize the importance ofthe user interaction since different results can arise de-pending on the selection of the parameter k as seen inthe flange yoke dataset. The segmentation of the restof the meshes presents intuitive results which illustratesthe fact that high changes in the Fiedler vector can beused as boundaries between different shapes.
5 Conclusions
We illustrated how the Fiedler vector encodes some fea-tures of the surface concerning to the connectivity ofthe mesh graph. These features allowed us to develop asimple algorithm for automatic segmentation of homo-geneous meshes. Keeping the discussion at the topologiclevel allowed us to intuitively show several importantcharacteristics of the second eigenvector of the meshgraph Laplacian.
For the segmentation a re-labeling of the vertices ofthe mesh is made in such a way the vector Fiedler isincreasing in terms of the re-labeled vertices. The al-gorithm is still applicable to general graphs given thefact that geometry is not taken into account while usingconstant weights makes the algorithm faster and morestable computationally. However, this advantage comeswith a cost requiring the mesh to be homogeneous as weillustrated in section 4. Adequate results were presentedfor many complex datasets usually used in the contextof CAD CAM CAE and Computer Graphics applica-tions. These results proved to be in concordance withuser intuitive partitions which is very important sinceonly topologic aspects are considered. Possible future
DRAFT to several disconnected components near the same iso-
DRAFT to several disconnected components near the same iso-line which is not desired. Therefore this signal must
DRAFT line which is not desired. Therefore this signal mustbe filtered first as described in section 3.4. The filtered
DRAFT be filtered first as described in section 3.4. The filteredsignal is presented in figure 7(c). Such filtering allows
DRAFT signal is presented in figure 7(c). Such filtering allowsthe algorithm to automatically detect good cutting iso-
DRAFT the algorithm to automatically detect good cutting iso-
k
DRAFT k = 3, global maxima are computed in
DRAFT = 3, global maxima are computed in
the filtered differences resulting in two thresholds (red
DRAFT the filtered differences resulting in two thresholds (redlines) for the Fiedler vector which will divide the surface
DRAFT lines) for the Fiedler vector which will divide the surfaceby the corresponding isolines. These thresholds coincide
DRAFT by the corresponding isolines. These thresholds coincidewith high changes in the slope of the sorted Fiedler vec-
DRAFT with high changes in the slope of the sorted Fiedler vec-tor as seen in figure 7(a). The resulting segmentation
DRAFT tor as seen in figure 7(a). The resulting segmentationis presented in figure 8. Notice how the resulting parti-
DRAFT is presented in figure 8. Notice how the resulting parti-tion divided the mesh into two high connectivity regions
DRAFT tion divided the mesh into two high connectivity regions(blue and red) and a low connectivity region (green).DRAFT
(blue and red) and a low connectivity region (green).
In contrast with the segmentation of a homogeneousDRAFT
In contrast with the segmentation of a homogeneousmesh, figure 9 presents results for a non-homogeneousDRAFT
mesh, figure 9 presents results for a non-homogeneous
mesh of the same model. The Fiedler vector of the graphDRAFT
mesh of the same model. The Fiedler vector of the graph
DRAFT section 3.4 and re-labeling of the vertices is made. Fig-
DRAFT section 3.4 and re-labeling of the vertices is made. Fig-ure 7 shows the re-labeling results for the iron. As we
DRAFT ure 7 shows the re-labeling results for the iron. As wepointed in section 3 the sorted Fiedler vector shows
DRAFT pointed in section 3 the sorted Fiedler vector showshigher changes in specific regions (figure 7(a)) which
DRAFT higher changes in specific regions (figure 7(a)) whichcorrespond to relative changes of the Fiedler isolines
DRAFT correspond to relative changes of the Fiedler isolinesin figure 6(b). The second differences plot (figure 7(b))
DRAFT in figure 6(b). The second differences plot (figure 7(b))shows a concentration of several peaks near desired cutDRAFT
shows a concentration of several peaks near desired cut
points. Selecting thresholds from this signal would leadDRAFT
points. Selecting thresholds from this signal would leadto several disconnected components near the same iso-DRAFT
to several disconnected components near the same iso-line which is not desired. Therefore this signal mustDRAFT
line which is not desired. Therefore this signal must
edges as can be seen in the gears and crankshaft datasets
DRAFT edges as can be seen in the gears and crankshaft datasetsshowing the importance of the topology even in these
DRAFT showing the importance of the topology even in thesecases. It is important to emphasize the importance of
DRAFT cases. It is important to emphasize the importance of
the user interaction since different results can arise de-
DRAFT the user interaction since different results can arise de-pending on the selection of the parameter
DRAFT pending on the selection of the parameterthe flange yoke dataset. The segmentation of the rest
DRAFT the flange yoke dataset. The segmentation of the rest
of the meshes presents intuitive results which illustrates
DRAFT of the meshes presents intuitive results which illustratesthe fact that high changes in the Fiedler vector can be
DRAFT the fact that high changes in the Fiedler vector can beused as boundaries between different shapes.
DRAFT used as boundaries between different shapes.
DRAFT mesh under our approach is presented in figure 9(c).
DRAFT mesh under our approach is presented in figure 9(c).Notice that the segmentation is less intuitive since the
DRAFT Notice that the segmentation is less intuitive since thetopology of the mesh graph is more discordant with the
DRAFT topology of the mesh graph is more discordant with thegeometry of the iron model and boundaries of discon-
DRAFT geometry of the iron model and boundaries of discon-nected components are located at more geometrically
DRAFT nected components are located at more geometrically
DRAFT random places. These results illustrate the importance
DRAFT random places. These results illustrate the importanceof the homogeneity of the mesh for adequate results of
DRAFT of the homogeneity of the mesh for adequate results of
Table 1 presents the results of our algorithm applied
DRAFT Table 1 presents the results of our algorithm applied
to several datasets usually used in CAD applications or
DRAFT to several datasets usually used in CAD applications orComputer Graphics. Since the algorithm only takes into
DRAFT Computer Graphics. Since the algorithm only takes intoaccount the topology of the mesh, it is not expected to
DRAFT account the topology of the mesh, it is not expected topartition the mesh by its sharp edges. However, theDRAFT
partition the mesh by its sharp edges. However, the
achieved segmentation agrees with some of these sharpDRAFT
achieved segmentation agrees with some of these sharpedges as can be seen in the gears and crankshaft datasetsDRAFT
edges as can be seen in the gears and crankshaft datasetsshowing the importance of the topology even in theseDRAFT
showing the importance of the topology even in these
10 D. Mejia et al.
Table 1 Appraisal of the results of the segmentation algorithm applied to several datasets.
Figure Dataset # of points Commentary
Fig. 10(a). Box. 31945 The segmentation correctly finds high topological changes but segmentationboundaries are not aligned with sharp edges.
Fig. 10(b). Gears. 24624 The algorithm achieves an intuitive segmentation given the fact that hightopological changes happen at sharp edges.
Fig. 10(c). Pliers. 14250 The segmentation separates the grip from the jaws. Each jaw is also sepa-rated as well as the grip.
Figs. 10(d),10(e).
Flange yoke. 16522 A segmentation of the mesh into four sub-meshes is enough to capture thetopological changes. Segmenting into more sub-meshes may present irrele-vant information.
Fig. 10(f). Crankshaft. 45185 Some of the segmentation boundaries are not aligned with the sharp edgesof the surface given the fact that only topological information is taken intoaccount.
Fig. 10(g). Sheep. 68741 The base and the head are separated from the rest of the body.
Fig. 10(h). Horse. 99463 The body is separated into two pieces and the head is separated from thewhole body. A leg is separated from the rest of the body since it representsa high topological change in the direction of the Fiedler vector.
Fig. 10(i). Elephant. 32707 Alike the horse dataset, a leg is separated as well as the head from the body.Additionally, The algorithm separates the ears from the rest of the head.
work could be the adaptation of the method to non-homogeneous meshes. Also, future consideration of thegeometry could lead to better results.
The algorithm presented by us would typically workwithin a Divide - and - Conquer or Iterative scheme. Inthis manner, each run would subtract some sub-meshesof the source mesh, gradually reducing the size of theproblem. Each iteration would take the input of a hu-man user to steer each removal iteration and/or to setthe values of discontinuities in the Fiedler vector per-mutation, which would in turn cause mesh - fragmen-tation.
Acknowledgements The box, gears and pliers datasets weretaken from the Princeton benchmark [40]. The iron, sheep,horse and elephant datasets were scanned at Laboratorio deCAD CAM CAE at Universidad EAFIT (Colombia).
References
1. Vasilakis, A.A., Fudos, I.: Pose partitioning for multi-resolution segmentation of arbitrary mesh animations.Computer Graphics Forum 33(2), 293–302 (2014). DOI10.1111/cgf.12327
2. Arcila, R., Cagniart, C., Hetroy, F., Boyer, E., Dupont,F.: Segmentation of temporal mesh sequences into rigidlymoving components. Graphical Models 75(1), 10–22(2013). DOI 10.1016/j.gmod.2012.10.004
3. Pal, P.: Fast freeform hybrid reconstruction with manualmesh segmentation. The International Journal of Ad-
vanced Manufacturing Technology 63(9-12), 1205–1215(2012). DOI 10.1007/s00170-012-3986-6
4. Miao, Y.W., Feng, J.Q., Xiao, C.X., Peng, Q.S., Forrest,A.: Differentials-based segmentation and parameteriza-tion for point-sampled surfaces. Journal of ComputerScience and Technology 22(5), 749–760 (2007). DOI10.1007/s11390-007-9088-5
5. Luo, G., Cordier, F., Seo, H.: Compression of 3d meshsequences by temporal segmentation. Computer Anima-tion and Virtual Worlds 24(3-4), 365–375 (2013). DOI10.1002/cav.1522
6. Cheng, S.C., Kuo, C.T., Wu, D.C.: A novel3d mesh compression using mesh segmentationwith multiple principal plane analysis. Pat-tern Recognition 43(1), 267–279 (2010). DOIhttp://dx.doi.org/10.1016/j.patcog.2009.05.016
7. Yi, B., Liu, Z., Tan, J., Cheng, F., Duan, G., Liu, L.:Shape recognition of cad models via iterative slippageanalysis. Computer-Aided Design 55(0), 13–25 (2014).DOI http://dx.doi.org/10.1016/j.cad.2014.04.008
8. Tao, S., Huang, Z., Ma, L., Guo, S., Wang, S., Xie, Y.:Partial retrieval of cad models based on local surfaceregion decomposition. Computer-Aided Design 45(11),1239–1252 (2013). DOI 10.1016/j.cad.2013.05.008
9. Wang, H., Lu, T., Au, O.K.C., Tai, C.L.: Spectral 3dmesh segmentation with a novel single segmentationfield. Graphical Models 76(5), 440–456 (2014). DOI10.1016/j.gmod.2014.04.009
10. Wang, L., Dong, M.: Multi-level low-rank approximation-based spectral clustering for image segmentation. Pat-tern Recognition Letters 33(16), 2206–2215 (2012). DOI10.1016/j.patrec.2012.07.024
11. Wang, X., Wu, Z., Luo, P., Wu, H.: An image segmen-tation method combining l1-sparse reconstruction withspectral clustering. Procedia Engineering 29(0), 1387 –1391 (2012). DOI 10.1016/j.proeng.2012.01.145. 2012
DRAFT man user to steer each removal iteration and/or to set
DRAFT man user to steer each removal iteration and/or to setthe values of discontinuities in the Fiedler vector per-
DRAFT the values of discontinuities in the Fiedler vector per-mutation, which would in turn cause mesh - fragmen-
DRAFT mutation, which would in turn cause mesh - fragmen-
Acknowledgements
DRAFT Acknowledgements The box, gears and pliers datasets were
DRAFT The box, gears and pliers datasets were
taken from the Princeton benchmark [40]. The iron, sheep,
DRAFT taken from the Princeton benchmark [40]. The iron, sheep,horse and elephant datasets were scanned at Laboratorio de
DRAFT horse and elephant datasets were scanned at Laboratorio deCAD CAM CAE at Universidad EAFIT (Colombia).
DRAFT CAD CAM CAE at Universidad EAFIT (Colombia).
References
DRAFT References
1. Vasilakis, A.A., Fudos, I.: Pose partitioning for multi-DRAFT
1. Vasilakis, A.A., Fudos, I.: Pose partitioning for multi-resolution segmentation of arbitrary mesh animations.DRAFT
resolution segmentation of arbitrary mesh animations.Computer Graphics ForumDRAFT
Computer Graphics Forum10.1111/cgf.12327DRAFT
10.1111/cgf.12327
2. Arcila, R., Cagniart, C., Hetroy, F., Boyer, E., Dupont,DRAFT
2. Arcila, R., Cagniart, C., Hetroy, F., Boyer, E., Dupont,
DRAFT whole body. A leg is separated from the rest of the body since it represents
DRAFT whole body. A leg is separated from the rest of the body since it representsa high topological change in the direction of the Fiedler vector.
DRAFT a high topological change in the direction of the Fiedler vector.
Fig. 10(i). Elephant. 32707 Alike the horse dataset, a leg is separated as well as the head from the body.
DRAFT Fig. 10(i). Elephant. 32707 Alike the horse dataset, a leg is separated as well as the head from the body.Additionally, The algorithm separates the ears from the rest of the head.
DRAFT Additionally, The algorithm separates the ears from the rest of the head.
DRAFT work could be the adaptation of the method to non-
DRAFT work could be the adaptation of the method to non-homogeneous meshes. Also, future consideration of the
DRAFT homogeneous meshes. Also, future consideration of the
The algorithm presented by us would typically work
DRAFT The algorithm presented by us would typically work
within a Divide - and - Conquer or Iterative scheme. In
DRAFT within a Divide - and - Conquer or Iterative scheme. Inthis manner, each run would subtract some sub-meshes
DRAFT this manner, each run would subtract some sub-meshes
of the source mesh, gradually reducing the size of theDRAFT
of the source mesh, gradually reducing the size of theproblem. Each iteration would take the input of a hu-DRAFT
problem. Each iteration would take the input of a hu-man user to steer each removal iteration and/or to setDRAFT
man user to steer each removal iteration and/or to setthe values of discontinuities in the Fiedler vector per-DRAFT
the values of discontinuities in the Fiedler vector per-
vanced Manufacturing Technology
DRAFT vanced Manufacturing Technology(2012). DOI 10.1007/s00170-012-3986-6
DRAFT (2012). DOI 10.1007/s00170-012-3986-6
4. Miao, Y.W., Feng, J.Q., Xiao, C.X., Peng, Q.S., Forrest,
DRAFT 4. Miao, Y.W., Feng, J.Q., Xiao, C.X., Peng, Q.S., Forrest,
A.: Differentials-based segmentation and parameteriza-
DRAFT A.: Differentials-based segmentation and parameteriza-tion for point-sampled surfaces. Journal of Computer
DRAFT tion for point-sampled surfaces. Journal of Computer
DRAFT Fig. 10(b). Gears. 24624 The algorithm achieves an intuitive segmentation given the fact that high
DRAFT Fig. 10(b). Gears. 24624 The algorithm achieves an intuitive segmentation given the fact that high
Fig. 10(c). Pliers. 14250 The segmentation separates the grip from the jaws. Each jaw is also sepa-
DRAFT Fig. 10(c). Pliers. 14250 The segmentation separates the grip from the jaws. Each jaw is also sepa-
Flange yoke. 16522 A segmentation of the mesh into four sub-meshes is enough to capture the
DRAFT Flange yoke. 16522 A segmentation of the mesh into four sub-meshes is enough to capture the
topological changes. Segmenting into more sub-meshes may present irrele-
DRAFT topological changes. Segmenting into more sub-meshes may present irrele-
Fig. 10(f). Crankshaft. 45185 Some of the segmentation boundaries are not aligned with the sharp edges
DRAFT Fig. 10(f). Crankshaft. 45185 Some of the segmentation boundaries are not aligned with the sharp edges
of the surface given the fact that only topological information is taken into
DRAFT of the surface given the fact that only topological information is taken into
Fig. 10(g). Sheep. 68741 The base and the head are separated from the rest of the body.DRAFT
Fig. 10(g). Sheep. 68741 The base and the head are separated from the rest of the body.
Fig. 10(h). Horse. 99463 The body is separated into two pieces and the head is separated from theDRAFT
Fig. 10(h). Horse. 99463 The body is separated into two pieces and the head is separated from thewhole body. A leg is separated from the rest of the body since it representsDRAFT
whole body. A leg is separated from the rest of the body since it representsa high topological change in the direction of the Fiedler vector.DRAFT
a high topological change in the direction of the Fiedler vector.
Spectral-based Mesh Segmentation 11
(a) Box (k = 4). (b) Gears (k = 3). (c) Pliers (k = 4).
(d) Flange yoke (k = 4). (e) Flange yoke (k = 6). (f) Crankshaft (k = 6).
(g) Sheep (k = 3). (h) Horse (k = 4). (i) Elephant (k = 4).
Fig. 10 Results of our algorithm for several datasets. Princeton datasets (10(a),10(b),10(c)). Laboratorio de CAD CAM CAEU. EAFIT datasets (10(g),10(h),10(i)).
International Workshop on Information and ElectronicsEngineering
12. Miao, Y., Feng, J., Wang, J., Jin, X.: User-controllablemesh segmentation using shape harmonic signature.Progress in Natural Science 19(4), 471–478 (2009). DOIhttp://dx.doi.org/10.1016/j.pnsc.2008.06.024
13. Reuter, M., Biasotti, S., Giorgi, D., Patane, G., Spag-nuolo, M.: Discrete laplace-beltrami operators for shapeanalysis and segmentation. Computers & Graphics 33(3),381–390 (2009). DOI 10.1016/j.cag.2009.03.005. IEEEInternational Conference on Shape Modelling and Appli-cations 2009
14. Tsuchie, S., Hosino, T., Higashi, M.: High-quality vertexclustering for surface mesh segmentation using student-t mixture model. Computer-Aided Design 46(0), 69–78(2014). DOI 10.1016/j.cad.2013.08.019. 2013 SIAM Con-ference on Geometric and Physical Modeling
15. Wang, J., Yu, Z.: Surface feature based mesh segmen-tation. Computers & Graphics 35(3), 661–667 (2011).DOI 10.1016/j.cag.2011.03.016. Shape Modeling Inter-national (SMI) Conference 2011
16. Yan, D.M., Wang, W., Liu, Y., Yang, Z.: Varia-tional mesh segmentation via quadric surface fitting.
Computer-Aided Design 44(11), 1072–1082 (2012). DOI10.1016/j.cad.2012.04.005
17. Golovinskiy, A., Funkhouser, T.: Randomized cuts for 3dmesh analysis. ACM Trans. Graph. 27(5), 145:1–145:12(2008). DOI 10.1145/1409060.1409098
18. de Castro, P.M.M., de Lima, L.A.P., Lucena, F.L.A.:Invariances of single curved manifolds applied to meshsegmentation. Computers & Graphics 38(0), 399–409(2014). DOI 10.1016/j.cag.2013.12.002
19. Liu, X., Zhang, J., Liu, R., Li, B., Wang, J., Cao, J.: Low-rank 3d mesh segmentation and labeling with structureguiding. Computers & Graphics 46(0), 99–109 (2015).DOI 10.1016/j.cag.2014.09.019
20. Lv, J., Chen, X., Huang, J., Bao, H.: Semi-supervisedmesh segmentation and labeling. Computer GraphicsForum 31(7), 2241–2248 (2012). DOI 10.1111/j.1467-8659.2012.03217.x
21. Kalogerakis, E., Hertzmann, A., Singh, K.: Learn-ing 3d mesh segmentation and labeling. ACMTrans. Graph. 29(4), 102:1–102:12 (2010). DOI10.1145/1778765.1778839
22. Eppstein, D., Goodrich, M.T., Kim, E., Tamstorf, R.:Motorcycle graphs: Canonical quad mesh partitioning.
DRAFT U. EAFIT datasets (10(g),10(h),10(i)).
DRAFT U. EAFIT datasets (10(g),10(h),10(i)).
International Workshop on Information and Electronics
DRAFT International Workshop on Information and Electronics
12. Miao, Y., Feng, J., Wang, J., Jin, X.: User-controllable
DRAFT 12. Miao, Y., Feng, J., Wang, J., Jin, X.: User-controllable
mesh segmentation using shape harmonic signature.
DRAFT mesh segmentation using shape harmonic signature.Progress in Natural Science
DRAFT Progress in Natural Science 19
DRAFT 19
DRAFT (4), 471–478 (2009). DOI
DRAFT (4), 471–478 (2009). DOI
http://dx.doi.org/10.1016/j.pnsc.2008.06.024
DRAFT http://dx.doi.org/10.1016/j.pnsc.2008.06.024
13. Reuter, M., Biasotti, S., Giorgi, D., Patane, G., Spag-
DRAFT 13. Reuter, M., Biasotti, S., Giorgi, D., Patane, G., Spag-
nuolo, M.: Discrete laplace-beltrami operators for shape
DRAFT nuolo, M.: Discrete laplace-beltrami operators for shapeanalysis and segmentation. Computers & Graphics
DRAFT analysis and segmentation. Computers & Graphics381–390 (2009). DOI 10.1016/j.cag.2009.03.005. IEEE
DRAFT 381–390 (2009). DOI 10.1016/j.cag.2009.03.005. IEEEInternational Conference on Shape Modelling and Appli-
DRAFT International Conference on Shape Modelling and Appli-cations 2009
DRAFT cations 2009
14. Tsuchie, S., Hosino, T., Higashi, M.: High-quality vertex
DRAFT 14. Tsuchie, S., Hosino, T., Higashi, M.: High-quality vertex
clustering for surface mesh segmentation using student-DRAFT
clustering for surface mesh segmentation using student-t mixture model. Computer-Aided DesignDRAFT
t mixture model. Computer-Aided Design(2014). DOI 10.1016/j.cad.2013.08.019. 2013 SIAM Con-DRAFT
(2014). DOI 10.1016/j.cad.2013.08.019. 2013 SIAM Con-ference on Geometric and Physical ModelingDRAFT
ference on Geometric and Physical Modeling15. Wang, J., Yu, Z.: Surface feature based mesh segmen-DRAFT
15. Wang, J., Yu, Z.: Surface feature based mesh segmen-
DRAFT
DRAFT = 6).
DRAFT = 6).
DRAFT
DRAFT
(h) Horse (
DRAFT
(h) Horse (
DRAFT
Results of our algorithm for several datasets. Princeton datasets (10(a),10(b),10(c)). Laboratorio de CAD CAM CAEDRAFT
Results of our algorithm for several datasets. Princeton datasets (10(a),10(b),10(c)). Laboratorio de CAD CAM CAE
DRAFT
DRAFT = 4).
DRAFT = 4).
DRAFT
12 D. Mejia et al.
In: Proceedings of the Symposium on Geometry Process-ing, SGP ’08, pp. 1477–1486. Eurographics Association,Aire-la-Ville, Switzerland, Switzerland (2008)
23. Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.: Mo-torcycle graph enumeration from quadrilateral meshes forreverse engineering. Computer-Aided Design 55(0), 64–80 (2014). DOI 10.1016/j.cad.2014.05.007
24. Gunpinar, E., Suzuki, H., Ohtake, Y., Moriguchi, M.:Generation of bi-monotone patches from quadrilateralmesh for reverse engineering. Computer-Aided Design45(2), 440–450 (2013). DOI 10.1016/j.cad.2012.10.027.Solid and Physical Modeling 2012
25. Brown, S., Morse, B., Barrett, W.: Interactive part selec-tion for mesh and point models using hierarchical graph-cut partitioning. In: Proceedings of Graphics Interface2009, GI ’09, pp. 23–30. Canadian Information Process-ing Society, Toronto, Ont., Canada, Canada (2009)
26. Berretti, S., Bimbo, A.D., Pala, P.: 3d mesh de-composition using reeb graphs. Image and Vi-sion Computing 27(10), 1540–1554 (2009). DOI10.1016/j.imavis.2009.02.004. Special Section: ComputerVision Methods for Ambient Intelligence
27. Tierny, J., Vandeborre, J.P., Daoudi, M.: Topology driven3d mesh hierarchical segmentation. In: Shape Mod-eling and Applications, 2007. SMI ’07. IEEE Inter-national Conference on, pp. 215–220 (2007). DOI10.1109/SMI.2007.38
28. Patane, G., Spagnuolo, M., Falcidieno, B.: Reeb graphcomputation based on a minimal contouring. In: ShapeModeling and Applications, 2008. SMI 2008. IEEE In-ternational Conference on, pp. 73–82 (2008). DOI10.1109/SMI.2008.4547953
29. Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.:Feature-aware partitions from the motorcycle graph.Computer-Aided Design 47(0), 85–95 (2014). DOI10.1016/j.cad.2013.09.003
30. Zhang, J., Zheng, J., Wu, C., Cai, J.: Variational meshdecomposition. ACM Trans. Graph. 31(3), 21:1–21:14(2012). DOI 10.1145/2167076.2167079
31. Zheng, Y., Tai, C.L.: Mesh decomposition with cross-boundary brushes. Computer Graphics Forum 29(2),527–535 (2010). DOI 10.1111/j.1467-8659.2009.01622.x
32. Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang,Y.: Interactive tooth partition of dental mesh baseon tooth-target harmonic field. Computers in Bi-ology and Medicine 56(0), 132–144 (2015). DOI10.1016/j.compbiomed.2014.10.013
33. Fang, Y., Sun, M., Kim, M., Ramani, K.: Heat-mapping:A robust approach toward perceptually consistent meshsegmentation. In: Computer Vision and Pattern Recogni-tion (CVPR), 2011 IEEE Conference on, pp. 2145–2152(2011). DOI 10.1109/CVPR.2011.5995695
34. Gebal, K., Bærentzen, J.A., Aanæs, H., Larsen, R.: Shapeanalysis using the auto diffusion function. In: Proceed-ings of the Symposium on Geometry Processing, SGP ’09,pp. 1405–1413. Eurographics Association, Aire-la-Ville,Switzerland, Switzerland (2009)
35. de Abreu, N.M.M.: Old and new results on algebraic con-nectivity of graphs. Linear Algebra and its Applications423(1), 53–73 (2007). DOI 10.1016/j.laa.2006.08.017
36. Spielman, D.A., Teng, S.H.: Spectral partitioning works:Planar graphs and finite element meshes. Linear Al-gebra and its Applications 421(2-3), 284–305 (2007).DOI 10.1016/j.laa.2006.07.020. Special Issue in honor ofMiroslav Fiedler
37. Rosenberg, S.: The Laplacian on a Riemannian Manifold.Cambridge University Press (1997). Cambridge BooksOnline
38. Dziuk, G.: Finite elements for the beltrami operator onarbitrary surfaces. In: S. Hildebrandt, R. Leis (eds.)Partial Differential Equations and Calculus of Varia-tions, Lecture Notes in Mathematics, vol. 1357, pp.142–155. Springer Berlin Heidelberg (1988). DOI10.1007/BFb0082865
39. Lehoucq, R., Sorensen, D., Yang, C.: ARPACK Users’Guide. Society for Industrial and Applied Mathematics(1998). DOI 10.1137/1.9780898719628
40. Chen, X., Golovinskiy, A., Funkhouser, T.: A benchmarkfor 3d mesh segmentation. ACM Trans. Graph. 28(3),73:1–73:12 (2009). DOI 10.1145/1531326.1531379
DRAFT 527–535 (2010). DOI 10.1111/j.1467-8659.2009.01622.x
DRAFT 527–535 (2010). DOI 10.1111/j.1467-8659.2009.01622.x32. Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang,
DRAFT 32. Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang,Y.: Interactive tooth partition of dental mesh base
DRAFT Y.: Interactive tooth partition of dental mesh baseon tooth-target harmonic field. Computers in Bi-
DRAFT on tooth-target harmonic field. Computers in Bi-ology and Medicine
DRAFT ology and Medicine 56
DRAFT 56(0), 132–144 (2015). DOI
DRAFT (0), 132–144 (2015). DOI10.1016/j.compbiomed.2014.10.013
DRAFT 10.1016/j.compbiomed.2014.10.013
33. Fang, Y., Sun, M., Kim, M., Ramani, K.: Heat-mapping:
DRAFT 33. Fang, Y., Sun, M., Kim, M., Ramani, K.: Heat-mapping:
A robust approach toward perceptually consistent mesh
DRAFT A robust approach toward perceptually consistent meshsegmentation. In: Computer Vision and Pattern Recogni-
DRAFT segmentation. In: Computer Vision and Pattern Recogni-tion (CVPR), 2011 IEEE Conference on, pp. 2145–2152
DRAFT tion (CVPR), 2011 IEEE Conference on, pp. 2145–2152(2011). DOI 10.1109/CVPR.2011.5995695
DRAFT (2011). DOI 10.1109/CVPR.2011.5995695
34. Gebal, K., Bærentzen, J.A., Aanæs, H., Larsen, R.: Shape
DRAFT 34. Gebal, K., Bærentzen, J.A., Aanæs, H., Larsen, R.: Shape
analysis using the auto diffusion function. In: Proceed-
DRAFT analysis using the auto diffusion function. In: Proceed-ings of the Symposium on Geometry Processing, SGP ’09,
DRAFT ings of the Symposium on Geometry Processing, SGP ’09,pp. 1405–1413. Eurographics Association, Aire-la-Ville,
DRAFT pp. 1405–1413. Eurographics Association, Aire-la-Ville,Switzerland, Switzerland (2009)
DRAFT Switzerland, Switzerland (2009)
35. de Abreu, N.M.M.: Old and new results on algebraic con-
DRAFT 35. de Abreu, N.M.M.: Old and new results on algebraic con-
nectivity of graphs. Linear Algebra and its ApplicationsDRAFT
nectivity of graphs. Linear Algebra and its Applications423DRAFT
423(1), 53–73 (2007). DOI 10.1016/j.laa.2006.08.017DRAFT
(1), 53–73 (2007). DOI 10.1016/j.laa.2006.08.01736. Spielman, D.A., Teng, S.H.: Spectral partitioning works:DRAFT
36. Spielman, D.A., Teng, S.H.: Spectral partitioning works:Planar graphs and finite element meshes. Linear Al-DRAFT
Planar graphs and finite element meshes. Linear Al-
DRAFT 29. Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.:
DRAFT 29. Gunpinar, E., Moriguchi, M., Suzuki, H., Ohtake, Y.:
Feature-aware partitions from the motorcycle graph.
DRAFT Feature-aware partitions from the motorcycle graph.
(0), 85–95 (2014). DOI
DRAFT (0), 85–95 (2014). DOI
30. Zhang, J., Zheng, J., Wu, C., Cai, J.: Variational mesh
DRAFT 30. Zhang, J., Zheng, J., Wu, C., Cai, J.: Variational mesh
31
DRAFT 31(3), 21:1–21:14
DRAFT (3), 21:1–21:14
(2012). DOI 10.1145/2167076.2167079
DRAFT (2012). DOI 10.1145/2167076.2167079
31. Zheng, Y., Tai, C.L.: Mesh decomposition with cross-DRAFT
31. Zheng, Y., Tai, C.L.: Mesh decomposition with cross-boundary brushes. Computer Graphics ForumDRAFT
boundary brushes. Computer Graphics Forum 29DRAFT
29(2),DRAFT
(2),527–535 (2010). DOI 10.1111/j.1467-8659.2009.01622.xDRAFT
527–535 (2010). DOI 10.1111/j.1467-8659.2009.01622.x32. Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang,DRAFT
32. Zou, B.J., Liu, S.J., Liao, S.H., Ding, X., Liang,Y.: Interactive tooth partition of dental mesh baseDRAFT
Y.: Interactive tooth partition of dental mesh base
DRAFT 39. Lehoucq, R., Sorensen, D., Yang, C.: ARPACK Users’
DRAFT 39. Lehoucq, R., Sorensen, D., Yang, C.: ARPACK Users’Guide. Society for Industrial and Applied Mathematics
DRAFT Guide. Society for Industrial and Applied Mathematics
40. Chen, X., Golovinskiy, A., Funkhouser, T.: A benchmark
DRAFT 40. Chen, X., Golovinskiy, A., Funkhouser, T.: A benchmark
for 3d mesh segmentation. ACM Trans. Graph.
DRAFT for 3d mesh segmentation. ACM Trans. Graph. 28
DRAFT 28(3),
DRAFT (3),
73:1–73:12 (2009). DOI 10.1145/1531326.1531379
DRAFT 73:1–73:12 (2009). DOI 10.1145/1531326.1531379