spectral-based mesh...

12
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 Boundary Representation (B-Rep), which in turn is central for feature - based design, machining, parametric CAD and reverse engineering, among others. Although mesh seg- mentation is dictated by geometry and topology, this article focuses on the topological aspect (graph spec- trum), as we consider that this tool has not been fully exploited. We pre-process the mesh to obtain a edge - length homogeneous triangle set and its Graph Lapla- cian is calculated. We then produce a monotonically increasing permutation of the Fiedler vector (2nd eigen- vector of Graph Laplacian) for encoding the connectiv- ity among part feature sub-meshes. Within the mutated vector, discontinuities larger than a threshold (interac- tively set by a human) determine the partition of the original mesh. We present tests of our method on large complex 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 over segmentation. Future work includes an iterative appli- cation of this algorithm to progressively sever features of the mesh left from previous sub-mesh removals. Keywords Fiedler Vector · Mesh Laplacian · Mesh Segmentation · Spectral Analysis D. Mejia · O. Ruiz (B) · C. Cadavid Laboratorio de CAD CAM CAE, Universidad EAFIT, K49 #7 Sur-50, Medell´ ın (Colombia) Tel: +57-4-261-9500 ext 9521 Fax: +57-4-266-2484 E-mail: oruiz@eafit.edu.co Glossary M: Triangular mesh of a connected 2-manifold embedded in R 3 composed by the set of points X = {x 1 ,x 2 , ··· ,x n } and the set of triangles T = {τ 1 2 , ··· p }. E: Set of the edges {e 1 ,e 2 ,...,e n } of all the triangles T describing the connectivity of M . G: Graph representation of M consisting of the pair (X, E). W : Weighted adjacency matrix of G of size n×n. D: n × n diagonal matrix where D ii is equal to the degree (weighted neighborhood size) of the vertex x i . L: Laplacian matrix of G defined as L = D-W . λ i : i th eigenvalue of the matrix L (sorted in as- cending order). u i : 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. t i : i th local maximum of the set of all local maxima of d sorted in descending order. M: A connected and oriented Riemannian 2- manifold embedded in R 3 . ∂y i : Tangent vectors defining a local coordinate system at a point p ∈M. g: Metric tensor which defines an inner product on M where g ij is the local inner product between the coordinates ∂y i and ∂y j at a point p ∈M. DRAFT min min ests of o ests of o how results w how results w partition. The ach partition. The ach cate most manufac cate most manufac uires human interac uires human interac . Future work inclu . Future work inclu his algorithm to pro his algorithm to pro mesh left from previo mesh left from previo Keywords Keywords Fiedle Fiedle Segmentation Segmentation D D. M D. M DRAFT y y ge - ge - Lapla- Lapla- otonically otonically or (2nd eigen- or (2nd eigen- g the connectiv- g the connectiv- Within the mutated Within the mutated threshold (intera threshold (intera partition o partition o ethod o ethod o Triangular mes Triangular mes embedded in embedded in points points X X = = triangles triangles E E: Set of : Set of tria tria G G: : W W DRAFT

Upload: others

Post on 12-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

administrador
Rectangle
Page 2: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

administrador
Rectangle
administrador
Rectangle
Page 3: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 4: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

administrador
Rectangle
Page 5: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 6: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 7: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 8: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 9: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 10: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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.

administrador
Rectangle
Page 11: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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

Page 12: Spectral-based Mesh Segmentationcadcamcae.eafit.edu.co/documents/early_version_SpectralMeshSeg… · 2 D. Mejia et al. ∇: Gradient operator acting on the surface de- fined by M

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