3d mesh decomposition using reeb graphs

15
3D Mesh decomposition using Reeb graphs Stefano Berretti * , Alberto Del Bimbo, Pietro Pala Dipartimento di Sistemi e Informatica, University of Firenze, via S. Marta 3, 50139 Firenze, Italy article info Article history: Received 29 August 2006 Received in revised form 22 January 2009 Accepted 13 February 2009 Keywords: 3D Mesh decomposition Reeb graph Geodesic distance abstract Decomposition of complex 3D objects into simpler sub-parts is a challenging research subject with relevant outcomes for several application contexts. In this paper, an approach is proposed for decompo- sition of 3D objects based on Reeb graphs. The approach is motivated by perceptual principles and sup- ports identification of salient object protrusions. Experimental results are presented to demonstrate the effectiveness of the proposed approach with respect to different solutions appeared in the literature, and with reference to ground-truth data obtained by manual decomposition of 3D objects. Ó 2009 Elsevier B.V. All rights reserved. 1. Introduction In recent years, a growing number of solutions have been pro- posed to generate 3D digital models of real objects. These solutions differ in terms of costs, resolution and type of acquired information (the un-textured external surface of the object, the textured exter- nal surface or even the interior composition of the object) and in- clude CAD, tomography, magnetic resonance, 3D laser scanners, structured light systems and photogrammetry. As a result, 3D models are nowadays used in many application domains, including manufacturing industries (to support design and rapid prototyping), medicine (to support disease study and diagno- sis), video production (to boost construction of special effects by reusing parts of available high quality 3D models) and cultural her- itage (to enable accurate detection of geometric deformation of art- pieces due to inadequate preservation conditions). Several of these applications can benefit from the possibility to cut a 3D object model into simpler parts, a process that in the literature is referred to as 3D object decomposition. This can be useful in areas as diverse as modeling [1], metamorphosis [2,3], compression [4], re-meshing and simplification [5,6], 3D shape retrieval [7,8], collision detection [9], texture mapping [10] and skeleton extraction [11]. Psychological studies have evidenced that human perception of 3D shapes is partially based on objects decomposition and that any complex object can be regarded as an arrangement of simple prim- itives or components [12]. Depending on the application context, 3D object decomposition can target different objectives and thus yield the identification of different parts. Accordingly, solutions proposed so far are application specific, differing in terms of opti- mization criteria and partitioning objectives. For instance, in appli- cations dealing with object compression or simplification, object decomposition may target the identification of parts with some uniform geometric property so as to maximize the effectiveness of the compression/simplification algorithm on each individual part. Differently, in applications dealing with object modeling and retrieval, object decomposition may target the identification of parts with a clear semantics or parts that are perceptually mean- ingful, so as to enable reuse of object components in the develop- ment of new models or support searching by parts in content based retrieval of 3D objects. Following the previous considerations, approaches for 3D object decomposition can be distinguished into geometry based and semantic oriented [13,14]. In the former, the goal is to identify parts of the object that are homogeneous with respect to a criterion based on geometric properties (e.g., local curvature or distance to a reference point). In the latter, the goal is to identify parts of the object that are meaningful under some semantic or perceptive cri- teria (e.g., protrusions or articulated parts). An up to-date review of the state of the art on 3D mesh decomposition can be derived from the recent survey of Shamir [13], and the comparative study of some representative techniques given by Attene et al. [14]. 1.1. Previous work Geometry based approaches aim at partitioning the object sur- face into patches of homogeneous geometric properties and are typically used as pre-process for other geometry processing tasks. Curvature information is exploited by many of the works in this category. Developing on surface curvature, in [15] a watershed ap- proach to 3D mesh decomposition is presented that generalizes the 0262-8856/$ - see front matter Ó 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.imavis.2009.02.004 * Corresponding author. Tel.: +39 055 4796415; fax: +39 055 4796363. E-mail addresses: [email protected]fi.it (S. Berretti), [email protected]fi.it (A. Del Bimbo), [email protected]fi.it (P. Pala). Image and Vision Computing 27 (2009) 1540–1554 Contents lists available at ScienceDirect Image and Vision Computing journal homepage: www.elsevier.com/locate/imavis

Upload: stefano-berretti

Post on 26-Jun-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 3D Mesh decomposition using Reeb graphs

Image and Vision Computing 27 (2009) 1540–1554

Contents lists available at ScienceDirect

Image and Vision Computing

journal homepage: www.elsevier .com/locate / imavis

3D Mesh decomposition using Reeb graphs

Stefano Berretti *, Alberto Del Bimbo, Pietro PalaDipartimento di Sistemi e Informatica, University of Firenze, via S. Marta 3, 50139 Firenze, Italy

a r t i c l e i n f o

Article history:Received 29 August 2006Received in revised form 22 January 2009Accepted 13 February 2009

Keywords:3D Mesh decompositionReeb graphGeodesic distance

0262-8856/$ - see front matter � 2009 Elsevier B.V. Adoi:10.1016/j.imavis.2009.02.004

* Corresponding author. Tel.: +39 055 4796415; faxE-mail addresses: [email protected] (S. Berretti),

Bimbo), [email protected] (P. Pala).

a b s t r a c t

Decomposition of complex 3D objects into simpler sub-parts is a challenging research subject withrelevant outcomes for several application contexts. In this paper, an approach is proposed for decompo-sition of 3D objects based on Reeb graphs. The approach is motivated by perceptual principles and sup-ports identification of salient object protrusions. Experimental results are presented to demonstrate theeffectiveness of the proposed approach with respect to different solutions appeared in the literature, andwith reference to ground-truth data obtained by manual decomposition of 3D objects.

� 2009 Elsevier B.V. All rights reserved.

1. Introduction

In recent years, a growing number of solutions have been pro-posed to generate 3D digital models of real objects. These solutionsdiffer in terms of costs, resolution and type of acquired information(the un-textured external surface of the object, the textured exter-nal surface or even the interior composition of the object) and in-clude CAD, tomography, magnetic resonance, 3D laser scanners,structured light systems and photogrammetry.

As a result, 3D models are nowadays used in many applicationdomains, including manufacturing industries (to support design andrapid prototyping), medicine (to support disease study and diagno-sis), video production (to boost construction of special effects byreusing parts of available high quality 3D models) and cultural her-itage (to enable accurate detection of geometric deformation of art-pieces due to inadequate preservation conditions). Several of theseapplications can benefit from the possibility to cut a 3D objectmodel into simpler parts, a process that in the literature is referredto as 3D object decomposition. This can be useful in areas as diverseas modeling [1], metamorphosis [2,3], compression [4], re-meshingand simplification [5,6], 3D shape retrieval [7,8], collision detection[9], texture mapping [10] and skeleton extraction [11].

Psychological studies have evidenced that human perception of3D shapes is partially based on objects decomposition and that anycomplex object can be regarded as an arrangement of simple prim-itives or components [12]. Depending on the application context,3D object decomposition can target different objectives and thusyield the identification of different parts. Accordingly, solutions

ll rights reserved.

: +39 055 [email protected] (A. Del

proposed so far are application specific, differing in terms of opti-mization criteria and partitioning objectives. For instance, in appli-cations dealing with object compression or simplification, objectdecomposition may target the identification of parts with someuniform geometric property so as to maximize the effectivenessof the compression/simplification algorithm on each individualpart. Differently, in applications dealing with object modelingand retrieval, object decomposition may target the identificationof parts with a clear semantics or parts that are perceptually mean-ingful, so as to enable reuse of object components in the develop-ment of new models or support searching by parts in content basedretrieval of 3D objects.

Following the previous considerations, approaches for 3D objectdecomposition can be distinguished into geometry based andsemantic oriented [13,14]. In the former, the goal is to identify partsof the object that are homogeneous with respect to a criterionbased on geometric properties (e.g., local curvature or distance toa reference point). In the latter, the goal is to identify parts of theobject that are meaningful under some semantic or perceptive cri-teria (e.g., protrusions or articulated parts). An up to-date review ofthe state of the art on 3D mesh decomposition can be derived fromthe recent survey of Shamir [13], and the comparative study ofsome representative techniques given by Attene et al. [14].

1.1. Previous work

Geometry based approaches aim at partitioning the object sur-face into patches of homogeneous geometric properties and aretypically used as pre-process for other geometry processing tasks.

Curvature information is exploited by many of the works in thiscategory. Developing on surface curvature, in [15] a watershed ap-proach to 3D mesh decomposition is presented that generalizes the

Page 2: 3D Mesh decomposition using Reeb graphs

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1541

morphological watersheds originally proposed for image segmen-tation. The curvature of the surface defined at each vertex is usedas an indication of region boundaries which partition the mesh intopatches of relatively homogeneous curvature. One problem of thisalgorithm is its dependency on the exact triangulation of the mod-el. In addition, even planar components can be undesirably parti-tioned. Developing on this approach, a fast marching watershedsolution is reported in [16]. While results in [15] are negativelyaffected by the use of pseudo-curvatures, the actual principal cur-vatures and directions (computed according to [17]) are used in[16] to improve the partitioning results. Principal curvature infor-mation for mesh decomposition is also exploited in [18]. In thiscase, decomposition of 3D objects is achieved by way of a stochas-tic relaxation process determined by the mutual synchronizationof a network of pulse-and-fire oscillators. Curvatures at mesh verti-ces are used as inputs to drive synchronization of the oscillatornetwork. Although grounding on perceptually motivated princi-ples, decomposition results are biased by typical drawbacks ofrelaxation processes including dependence on variable initializa-tion and premature truncation of the relaxation period.

Several geometry based methods identify homogeneous patchesby using clustering techniques, such as region growing [19], iterativeclustering [6,20] or hierarchical clustering [5].

In [19], mesh decomposition is accomplished by extracting val-ues of principal curvatures k-min and k-max, and clustering themusing standard k-means. Once clustering is complete, each meshvertex is labeled according to the cluster it belongs to. Analysisof connected components and region growing are performed to re-move small regions and identify relevant object parts. However,there is no evidence that perceptually salient regions correspondto regions of uniform curvature. A further drawback is that thenumber of regions ultimately depends on the final number of clus-ters, which is assumed to be known a priori.

In [6], a variant of the k-means algorithm is presented for thecreation of planar shape proxies. For any given partition of a surfacein k regions, a set of shape proxies, represented by their averagepoint and surface normal, is associated that approximates thewhole geometry. In [20], an algorithm is proposed to partition amesh into developable parts. First each segment is approximatedby a developable surface element. During this step an iterative re-gion growing approach, using a variant of the k-means algorithm isapplied. Segments are then modified so as to guarantee that neigh-boring surface elements intersect at their boundaries, thus prohib-iting stretching. Finally, the algorithm extracts the analyticalboundaries between the surface elements, making the boundariesintuitive and easy to cut and glue.

Clustering has been also used according to a hierarchical ap-proach that initializes each face with its own separate cluster. Dur-ing clustering, each pair of clusters is assigned a cost for mergingthem into one cluster and the lowest cost pair is merged. In [5],hierarchical face clustering uses L2 distance and orientation normsfrom representative planes as a measure of planarity, but formu-lates them using quadratic error metric for efficient computation.This algorithm also uses a bias term to create circular compactclusters by using the perimeter and the area of the cluster to mea-sure its compactness.

The spectral graph theory, which states the relationship betweenthe combinatorial characteristics of a graph and the algebraic prop-erties of its Laplacian [21], is also used by some geometry basedsolutions. For example, in [22] the spectral analysis is exploitedby constructing the symmetric matrix of squared geodesic dis-tances between surface vertices, and then using the IsoMap dimen-sionality reduction method. Given a set of high-dimensionalpoints, IsoMap computes the geodesic distances along a manifoldas sequences of hops between neighboring points. It then appliesMulti Dimensional Scaling (MDS) to these geodesic distances to find

a set of points embedded in low-dimensional space with similarpairwise distances. This results in the identification of a set of sur-face patches on the original 3D model. Boundaries of patches areoptimized so as to satisfy two objectives: they should cut throughareas of high curvature without being too jaggy; and they shouldminimize the embedding distortions of the charts they border.

The recent and increasing interest in mesh decomposition ap-proaches in the semantic oriented category is motivated by theircapability in supporting parametrization or re-meshing schemes,metamorphosis, 3D shape retrieval, skeleton extraction as well asthe modeling by a composition paradigm that is based on naturalshape decompositions.

Early studies in this category developed on the minima rule, atheory of human perception of 3D shapes which states that partboundaries occur along lines of negative minima curvature [12].For example, in [23] an object is viewed as a charged perfect con-ductor, and the physical property which tends to accumulatecharges on the surface of a conductor at points of sharp convexityand vanish at points of sharp concavity is used to guide the decom-position process: boundaries of object parts are detected by locat-ing surface points exhibiting minima of the local charge density.This approach leads to meaningful decompositions, although appli-cable to a limited range of object types: genus-one topology, nodents on the surface of the object and presence of at least one partboundary. The minima rule is also exploited in [24], where first lociof minimum curvature are identified on the object surface, thenthe most relevant ones are used to partition the object by findingcandidate contours. However, the approach is complicated by thedifficulty in finding stable relevant contours and in closing themin order to determine salient partitioning profiles. Eventually, apart saliency test is used to discard irrelevant parts. Though a com-pletely automatic scissoring is possible, manual intervention is re-quired to select relevant contours in difficult situations.

Developing on the idea that, in addition to curvature, also prox-imity information is relevant in determining salient object parts, in[25] clustering has been applied to a function accounting for boththe proximity and angular distance between surface elements.Though meaningful components of 3D objects are found with thisapproach, boundaries between regions are often jagged and notaccurately identified. More recently, in [11] this idea has been ex-tended through a hierarchical mesh decomposition algorithmbased on fuzzy clustering. The basic idea of this approach is firstto find the meaningful components of the mesh and only after-wards focus on generating the exact boundaries between compo-nents. This is obtained by defining pairwise geodesic distancesbetween mesh faces, and then iteratively refining a set of k repre-sentative faces through a fuzzy clustering algorithm. In this pro-cess, each face is assigned the probability of belonging to each ofthe representative sets so that faces are clustered into patches.The decomposition is iteratively applied to each part so as to yielda hierarchy of decomposed regions. A recursion stop condition isconsidered to identify the level of the hierarchy, but it is difficultto relate it with a perceptually salient object decomposition.

Many of the semantic oriented approaches introduce a biaswhich is assumed to help the partitioning algorithm to provide sig-nificant decompositions. Examples of bias are feature points[26,27], symmetry transformations [28], shape diameter [29], skele-tons [30] and Reeb graph defined with respect to the integral geo-desic function [31].

In [26], the outer contour of the 2D spectral embedding of themesh (or sub-mesh) is used as feature to guide the partitioning.The main idea lies in utilizing appropriately defined projectionoperators to retain and enhance structural and geometric informa-tion in a 1D or 2D space. In the low-dimensional space, a segment-ability analysis, sampling and cut extraction are performed moreefficiently and effectively. When the object being segmented is

Page 3: 3D Mesh decomposition using Reeb graphs

1542 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

flexible or dynamic, such as a human or animal models, it canmaintain various poses. In such cases it is important that the ob-jects partitioning remains consistent despite the pose changes. Toconstruct a pose-invariant decomposition, in [27] multidimensionalscaling (MDS) to 3D is used on a coarse approximation of the mesh.MDS finds an embedding of higher dimensional distances (geode-sic distances from each point to all other points) into a lowerdimension Euclidean space, where Euclidean distances approxi-mate well the higher dimensional distances. Often this maps differ-ent poses of the same object to similar poses. Later, feature pointsare extracted, namely points that reside on tips of prominent com-ponents of a given model. Each prominent component (or seg-ment) of the object is defined by one or more of these featurepoints. Using spherical mirroring, the core of the object is extractedand then the other segments. A final refinement stage uses graphcut to finalize the boundaries of the segments.

In [28], the symmetry analysis is used to segment a mesh intocomponents. First the m major symmetry planes of an object arefound based on sampling. Next, for each face and for every symme-try plane, a score is computed so as to capture the degree to whichthe face contributes to the symmetry with respect to that plane.Each face is thus described using the m score values and objectdecomposition is obtained by clustering faces based on their scorevalues.

The shape diameter function (SDF) is applied in [29] to measurethe local diameter of the object at points on its boundary instead ofthe local radius (distance to the medial axis). The function valueson a point laying on the mesh surface are averaged from samplingthe length of rays sent from the point inward to the other side ofthe objects mesh. The SDF gives a good distinction between thickand thin parts of the object and thus has been used for part-typepartitioning. Another advantage of the SDF is its pose-obliviousnature: the SDF values of points on the mesh remain largely invari-ant under pose changes of the object. Hence, it has been used toconsistently partition meshes representing dynamically movingobjects. Other methods which use the connection from the meshto the volume of the object include [32], in which geometric prim-itives are fitted to the mesh to partition the object, and [33] inwhich the partitioning is based on blowing a spherical bubble ateach vertex and studying how the intersection of that bubble withthe surface evolves.

Some semantic oriented approaches are based on the notion ofobject skeleton. This is a lower dimensional object that captures theshape of the original object. Since the skeleton is simpler than theoriginal object, many operations, e.g., shape recognition and defor-mation, can be performed more efficiently on the skeleton than onthe full object. An interesting approach based on skeletonization isproposed in [9]. In this solution, a skeleton is extracted from theoriginal mesh and critical points (i.e., points capturing changes ingeometry, topology or both) are identified by sweeping a planeperpendicular to mesh branches. Each critical skeleton point isused to define cuts using the sweep planes which segment themesh into different parts. Appealing results are obtained with thisalgorithm, though the smoothing operation used for skeletonextraction is associated with potential loss of mesh details. In[30], a framework that simultaneously generates shape decompo-sitions and skeletons is proposed. It extracts the skeleton fromthe components in a decomposition and evaluates the skeletonby comparing it to the components. The process of simultaneousshape decomposition and skeletonization iterates until the qualityof the skeleton becomes satisfactory.

Recently, based upon ideas from Morse theory [34] and Reebgraphs [35], topological analysis of smooth functions defined onthe mesh surface has been used to perform mesh decomposition.In so doing, the Reeb graph is the bias used to drive the decompo-sition algorithm. The possibility to define global functions that

smooth the effect of noise and local perturbations, makes thesesolutions appealing especially in applications that require the iden-tification of relevant protrusions of 3D objects. In [31], the local ex-trema of the average geodesic distance (AGD) function [36] definethe critical points. Rather than computing geodesic distances fromall the surface points, distances are computed from a small numberof evenly spaced points on the surface. A Reeb graph is constructedby performing region growing in increasing order of AGD andtracking the topological changes in the wavefront. However, theembedded Reeb graph can contain an excessive number of localmaxima and saddle points, thus requiring a filtering scheme toweed out extra local maxima and split saddle points. In [37] a hier-archical partitioning approach is proposed that uses enhanced topo-logical skeletons [38]. First, mesh feature points (i.e., mesh verticeslocated on extremities of prominent components) are extracted byusing two geodesic based mapping functions—whose origins arethe mesh most distant vertices—and intersecting the sets of theirlocal extrema. Then, for each vertex in the mesh a mapping func-tion is defined as the geodesic distance to the closest feature point.The analysis of the number of connected subsets as the functionevolves, enables the construction of a Reeb graph. Each connectedcomponent of the Reeb graph is modeled with an ordered collec-tion of closed curves and a curvature estimation is computed foreach of its curves. Curves that locally minimize the curvature esti-mation are identified as constrictions. In particular, the alignmentof the mapping function level lines with surface bottlenecks is ob-tained by integrating surface curvature into the geodesic distancecomputation. The effect is to increase the distance between twovertices when a concave region separate them.

1.2. Overview and paper organization

In this paper, we propose an approach for perceptually consis-tent decomposition of 3D objects based on Reeb graph. Our solu-tion falls in the semantic oriented category and is motivated bythe need to overcome limitations of geometry based solutionswhich mainly rely on the sole curvature information to performmesh decomposition. In particular, we propose the use of Reebgraph to extract structural and topological information of a meshsurface and to drive the decomposition process. Curvature infor-mation is used to refine boundaries between object parts in accor-dance to the minima rule. Thus, object decomposition is achievedby a two steps approach accounting for Reeb graph constructionand refinement. In the construction step, topological as well as met-ric properties of the object surface are used to build the Reebgraph. Due to the metric properties of the object that are consid-ered for building the Reeb graph (i.e., the AGD is used), the struc-ture of this graph captures the object protrusions. In therefinement step, the Reeb graph is subject to an editing processby which deep concavity and adjacency are used to support finelocalization of part boundaries. In doing so, the main goal of ourcontribution is to provide and experiment a model to support per-ceptually consistent decomposition of 3D objects to enable reuseand retrieval of parts of 3D models archived in large model repos-itories. To demonstrate the effectiveness of the proposed solution,a comparison with two different approaches to object decomposi-tion is reported. Furthermore, in order to estimate the extent towhich an object decomposition matches perceptually salient ob-ject parts, a test is carried out using a ground-truth archive of man-ually partitioned objects.

This work has some relations with our previous studies on 3Dobject decomposition using Reeb graphs. In particular, preliminaryideas and results appeared in [39,40]. Other works used Reebgraphs for the purpose of 3D mesh partitioning. Among these,the more related to our proposal are [31,37]. With respect to thework of Zhang et al. [31], our solution differs in some aspects. First,

Page 4: 3D Mesh decomposition using Reeb graphs

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1543

in our approach the AGD undergoes to an equalization process thatemphasizes differences in the AGD distribution. In addition, wepropose a new and original approach for the adjustment of regionboundaries based on curvature information that improves thecapability of the approach to produce significant mesh decomposi-tion. Differently from the work of Tierny et al. [37], where geodesicdistances are computed with respect to features points of a mesh,the AGD is used in our approach as the function that induces theReeb graph. Furthermore, in [37] geodesic distances from the fea-ture points are computed by weighting the length of mesh edgeswith a term which depends on the curvature index [41], and Gauss-ian curvature is computed for each curve delimiting a node of theReeb graph. In our solution, a different approach is proposed forthe refinement of region boundaries which is performed indepen-dently from the geodesic distance computation using principalcurvatures.

A distinctive aspect of the proposed solution is the non-uniformquantization of the AGD that induces the Reeb graph (see Section3.1). This aims to adaptively derive topological variations of Reebgraph—and consequently of the 3D object—without any discretequantization that implicitly determines the resolution at whichthe object is analyzed. Doing so, our approach is directly relatedto the work of Attene et al. [42]. In particular, in [42] the idea todensely quantize values of the function that induces the Reebgraph so as to maximize the resolution at which a 3D shape is ana-lyzed was proposed. However, Reeb graphs reported in their workare induced by the height function using a set of slicing planes. Thedensity of the sweeping planes is conditioned by a slicing parame-ter and ultimately determines the scale at which the shape featuresare detected. Detection of all critical points is obtained by slicingthe mesh at each value assumed by the height function, for everyvertex. The solution we propose develops on this idea, but is notconstrained to uniform quantization, by using the non-uniformquantization induced by the values of AGD on mesh vertices.

The remainder of the paper is organized as follows: In Section 2,the theoretical foundation of Reeb graph and its relationship tosurface topology are discussed. In Section 3, the proposed approachto mesh decomposition using Reeb graph is expounded. In partic-ular, we first describe the process of Reeb-graph constructionbased on surface topology, then we discuss how to refine the Reebgraph based on surface curvature analysis. The effectiveness of theproposed approach is experimented in Section 4, both presentingdecomposition results in comparison to different approaches (Sec-tion 4.1), and measuring the perceptual saliency of object decom-positions (Section 4.2). Properties of the approach are alsodiscussed with respect to several criteria that are commonly usedin the analysis of approaches to 3D object decomposition (Section4.3). Finally, conclusions and future research directions are drawnin Section 5.

Fig. 1. Critical points of an eight-shaped object using the elevation of surface pointsas Morse’s function.

2. Surface topology and Reeb graphs

Topology is the study of the properties of a shape that do notchange under deformation. In this context, the deformation of ashape A into a shape B should be intended as a transformationobeying four basic rules: (i) onto, i.e., every point of A is used andevery point of B is used; (ii) one-to-one, i.e., each point of A mapsto a single point on B; (iii) no overlap, i.e., two distinct points onA cannot be mapped onto the same point on B; (iv) continuous,i.e., the transformation cannot tear A, join sections of A together,poke holes into A, or seal up holes in A. If all these rules hold, Ais said to be homeomorphic to B, which means that A and B aretopologically equivalent.

Morse theory [34] draws a connection between the differentialproperties of a certain class of smooth functions (the Morse func-

tions) defined on a manifold and the topological properties of thatmanifold. Given an object surface S, and a smooth real valued func-tion f defined on it, Morse theory provides the relationship be-tween the critical points of f and the topology of S. In particular,the critical points of f are defined as points on the surface wherethe partial derivatives of f are zero (i.e., the gradient no longerhas a specific direction).

As an example, consider the eight-shaped object shown in Fig. 1and assume that the function f is the elevation (for a generic pointðx; y; zÞ on the object surface f ¼ z). Dark lines shown on the surfaceof the object highlight some level sets induced by f. Level sets cor-respond to loci of points ðx; y; zÞ on the surface with the same val-ues of f. In the example of Fig. 1, the magnitude of the derivative off at a generic point ðx; y; zÞ on the object surface is the slope of thesurface at ðx; y; zÞ. The direction of the derivative of f at ðx; y; zÞ isthe direction of steepest ascent.

In Fig. 1, arrows highlight six critical points on the object sur-face where there is no single direction of steepest ascent. The localproperties of the surface at these critical points can be describedthrough an index v ¼ vðx; y; zÞ representing the number of negativeeigenvalues of the Hessian (i.e., the number of independent direc-tions in which f decreases):

Hðf Þjðx; y; zÞ ¼

@2f@a2

����ðx; y; zÞ @2f@a@b

����ðx; y; zÞ@2f@b@a

����ðx; y; zÞ @2f@b2

����ðx; y; zÞ

0BBBB@

1CCCCA ð1Þ

being a and b variables of a local parametrization of the object sur-face at ðx; y; zÞ.

Value of the index is zero for minima points (point ‘a’ in Fig. 1),one for saddle points (points ‘b’, ‘c’, ‘d’ and ‘e’ in Fig. 1) and two formaxima points (point ‘f’ in Fig. 1).

It can be noticed that critical points identify structural changesof the topology of level sets. For instance, level sets identified byvalues of f slightly above the elevation of point ‘d’ in Fig. 1 arehomeomorphic (topologically equivalent) to pairs of disjoint cir-cles. Differently, level sets identified by values of f slightly belowthe elevation of point ‘d’ are homeomorphic to a single circle.

A Reeb graph is a schematic way to encode the behavior of aMorse function f on a surface. Nodes of the graph represent con-nected components of the level sets of f, contracted to points. For-mally, given a surface S, the Reeb graph is the quotient space of f inS�R formed by the equivalence relation ðv1; f ðv1ÞÞ � ðv2; f ðv2ÞÞ,being v1 and v2 two points on S. According to this, given two pointsv1 and v2 on the model surface, the equivalence relation’�’ holds ifand only if both the following conditions are fulfilled:

Page 5: 3D Mesh decomposition using Reeb graphs

1544 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

1. f ðv1Þ ¼ f ðv2Þ,2. v1 and v2 are in the same connected component of f�1ðf ðv1ÞÞ.

For each set of equivalent surface points, one node in theReeb graph is defined. Arcs of the graph are used to representadjacent sets of equivalent surface points. An example of Reeb-graph construction is shown in Fig. 2. Values of function f repre-sent points elevation and are quantized into four and eight levelsto yield the level sets shown in Fig. 2(a) and (c), respectively(different level sets are highlighted with different gray levels).Each connected component of a level set identifies a set ofequivalent surface points and is represented with a node inthe graph. The gray level of a graph node is the same as the graylevel of the corresponding level set. Two disconnected compo-nents of the same level set are represented by two distinctnodes in the graph, both nodes with the same gray level. Itcan be noticed that a different quantization of values of f affectsboth the number of graph nodes as well as the topology of thegraph. Generally, the number of quantization levels identifiesthe scale at which the topology of the surface is analyzed.

3. Mesh decomposition

Choice of the f function is a key element determining the topol-ogy of level sets, the structure of the Reeb graph and its propertieswith respect to the original object. These properties include invari-ance or robustness of the graph structure with respect to modelrotation, noise or slight irregularities of the model surface. Exam-ples of different choices of the function f range from the simple ele-vation of model points (this choice is particularly common forterrain modeling), to the distance measured from each point ofthe model to other reference points of the model, such as the mod-el center of mass, curvature extrema or generic fiducial points[36,37].

The proposed model for mesh decomposition develops on theassumption that distinguishing perceptual features of a 3D objectrelate to its protrusions. For a generic surface, a protrusion can bedefined as a portion of the surface that sticks out of the remainingsurface. Accordingly, a distinctive feature of points belonging to aprotrusion is their distance to the other surface points: the higherthe average distance of a point v to all the other points of the sur-face, the higher the probability for v to belong to a protrusion of thesurface. To capture the above idea, the value of function f on a pointv of the model surface is defined as the average geodesic distance(AGD) of v to all the other points on the model surface [36].

In particular, assuming that the surface S is approximatedthrough a discrete mesh M of n vertices v1; . . . ; vn, the value of ffor a generic vertex vi of the mesh is computed as:

a bFig. 2. Construction of the Reeb graph encoding topological features of a surface with relevation values into four levels. (b) The Reeb graph of (a). (c) Level sets induced by qu

f ðviÞ ¼1n

Xn

j¼1

lðvi; vjÞ; ð2Þ

being lðvi; vjÞ an estimate of the geodesic distance between verticesvi and vj of the mesh M.

In order to provide for invariance of f values with respect tomesh scale, values of f are normalized so as to span in the range[0,1]:

fNðviÞ ¼f ðviÞ�fminfmax�fmin

if f max– f min

0 otherwise

(ð3Þ

being fmin and fmax the minimum and maximum values of f on meshvertices, respectively. To simplify the notation, in the following weuse f to refer to fN .

Computation of the geodesic distance on the piecewise lineardecomposition of the manifold mesh M is accomplished throughthe Dijkstra’s algorithm and approximates the actual geodesic dis-tance with the length of the shortest piecewise linear path on meshvertices. Formally, given two vertices vi and vj on the mesh, a pathRðvi; vjÞ from vi to vj is defined as an ordered sequence of verticesðvrð1Þ; . . . ; vrðkÞÞ obeying the following constraints:

vrð1Þ � vi

vrðkÞ � vj

vrðhÞ is adjacent to vrðhþ1Þ; 8h 2 f1; . . . ; k� 1g:

8><>: ð4Þ

For a generic path Rðvi; vjÞ, its length LðRðvi; vjÞÞ is measured as thesum of the Euclidean distances ðdEÞ between adjacent vertex pairs:

LðRðvi; vjÞÞ ¼Xk�1

h¼1

dEðvrðhÞ; vrðhþ1ÞÞ: ð5Þ

Based on the above assumptions, the geodesic distance betweentwo vertices is approximated by the following expression:

lðvi; vjÞ ¼minR

LðRðvi; vjÞÞ: ð6Þ

Accordingly, for each vertex of the mesh the value of the AGD to allthe other mesh vertices is computed.

Values of the AGD undergo to equalization so as to maximizediscrimination among distance values. In image processing andanalysis equalization is a normalization operation applied to imagehistograms to improve the local contrast of the image [43]. This isaccomplished by effectively spreading out the most frequent inten-sity values, and can be generally applied to any histogram basedrepresentation. In our particular case, equalization enhances thedifference between values of the AGD, so that the distribution ofthe equalized values is approximately uniform (at least ideally).For a mesh with n vertices, function f can assume up to n different

c despect to the elevation of surface points. (a) Level sets induced by quantization of

antization of elevation values into eight levels. (d) The Reeb graph of (c).

Page 6: 3D Mesh decomposition using Reeb graphs

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1545

values each corresponding to a different vertex. In the following,we indicate with pi the m 6 n distinct values of f sorted in ascend-ing order (i.e., p0 ¼minif ðviÞ; pm�1 ¼ maxif ðviÞ, and 8i < j)pi < pj), and with qi their equalized counterparts, that isqi ¼ sðpiÞ, for i ¼ 1; . . . ;m. In practice, the number of vertices withpi value is often reduced to just one or a few, so we actually con-sider ½pi; pi þ �� as approximation of pi, with � equal to 0.01.

Since the equalization function sðpiÞmust be monotonic, for anyk the sum of the number of vertices with AGD between p0 and pk

must be equal to the sum of the number of vertices with equalizedAGD between sðp0Þ and sðpkÞ. If GðqiÞ and HðpiÞ are the histogramsover qi and pi, respectively, since GðqiÞ must approximate an uni-form distribution it should have constant value GðsðpiÞÞ ¼ m=ðsðpm�1Þ � sðp0ÞÞ. According to this, it is easy to show that theequalized value qk of a generic pk is given by:

qk ¼ sðpkÞ ¼sðpm�1Þ � sðp0Þ

m

Xpk

i¼p0

HðpiÞ þ sðp0Þ; ð7Þ

where the maximum and minimum of the equalized values aresðpm�1Þ ¼ 1 and sðp0Þ ¼ 0, respectively.

As an example, Fig. 3 shows a model where vertices are coloredbased on the value of their AGD (original as well as equalized) to allthe other vertices of the model. Lowest values of the distance arecolored with red, highest values with blue. As expected, prominentprotruding parts, corresponding to hands and legs, are colored withcyan-blue hue. Histograms of AGD values are also shown to high-light the effect of equalization.

It is worth noting that computation of geodesic distances may de-pend on the regularity of the mesh. In particular, since the Djikstra’salgorithm approximates the actual geodesic distance with a sum ofEuclidean distances between adjacent vertex pairs, in presence ofnon-triangular meshes (i.e., meshes with generic polygonal faces)or non-regular meshes (i.e., meshes with triangles of different sizes)approximation of the actual geodesic distance may be inaccurate. Toavoid such drawback, meshes undergo to a pre-processing stepaccounting for triangularization and regularization before beingprocessed for decomposition. Further, exact computation of theAGD would be quite costly, resulting in a time complexity ofOðn2 log nÞ. To quickly compute a satisfactory approximation ofAGD, we follow the algorithm of Hilaga et al. [36]. Accordingly, thegeodesic distances are not calculated from all the surface vertices,

0 0.2 0.4 0.6 0.8 10

20

40

60

80

100

120

140

160

180

200

a bFig. 3. Values of the original (a) and equalized (c) AGD for model vertices. Values of thehighest values to blue. In (b) and (d) histograms of the AGD are shown for the original,

but rather from a small number of evenly spaced vertices (base ver-tices) of the surface. The number of base vertices varies depending onthe mesh area (i.e., base vertices are separated by a distance2 �

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi0:005 � Sp

, being S the area of the mesh).Finally, it should be noticed that, from a theoretical point of

view, the AGD function is not guaranteed to be a Morse function.A function is called Morse if all of its critical points are non-degenerate (i.e., if the Hessian matrix H of the second derivativeof the function is non-singular at those points). In particular, tobe non-degenerate critical points should be isolated. For in-stance, the AGD is a constant function on a sphere, in which caseevery point is a degenerate critical point. However, in [44] it isshown that a function can be perturbed into a Morse functionwith surface wave traversal, provided that the mesh is properlysubdivided.

In the remaining parts of this section, we present the construc-tion and editing of the Reeb graph induced by the normalized andequalized AGD (Section 3.1), and the refinement of the borders ofthe decomposed parts determined by a curvature analysis (Section3.2). We point out that, to keep the discussion general, in the fol-lowing we refer to the values of function f, though in our case weactually work on its equalized values q.

3.1. Reeb-graph construction by non-uniform f quantization

Many of the previous approaches to the computation of Reebgraphs for mesh analysis rely on uniform quantization of f values(see [36,39]). However, the uniform quantization scheme mayprove inadequate to capture distinguishing topological propertiesof a mesh. In fact, this is equivalent to performing the analysis ofthe mesh at a single scale. As it can be noticed in Fig. 2, dependingon the quantization level, surface vertices belonging to perceptu-ally different parts are melted together into the same connected le-vel set component (e.g., the lowest part of the vase handle). Thiseffect could be reduced by progressively increasing the numberof quantization levels. However, if increasing the number of quan-tization levels supports more accurate identification of part bound-aries, it may also produce an over-decomposition of most of theobject surface. Actually, a different solution is required to quantizef values in order to preserve the accuracy of part identificationwithout incurring in over-decomposition. For this purpose, a novelapproach is proposed, that exploits non-uniform quantization of f

0 0.2 0.4 0.6 0.8 10

20

40

60

80

100

120

140

160

180

200

c ddistance are displayed in red–blue color scale: lowest values correspond to red andand equalized models, respectively.

Page 7: 3D Mesh decomposition using Reeb graphs

Fig. 4. Construction of the Reeb graph for the model shown in Fig. 3(c): (a) and (b)dynamics of vertex labeling for two steps of the iterative merging process; (c) finalvertex labeling based on connectedness analysis.

1546 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

values and information about curvature of level sets to yield accu-rate identification of parts as well as of their boundaries.

Instead of back-projecting on the object surface an uniformquantization of f values, we analyze values of the f function so asto identify its critical points, that is, those values that correspondto a discontinuity of the number of connected components of thelevel sets. For this purpose, value of the f function is computed atevery mesh vertex and each f value is associated with a measureNðf Þ : R#@, representing the number of connected componentsof the corresponding level set on the object surface. Nðf Þ is notcontinuous and values of f which determine discontinuities ofNðf Þ correspond to critical points of f, and detect topologicallysalient region boundaries on the object surface.

Detection of discontinuities of function Nðf Þ is accomplishedthrough an iterative merging approach based on adjacency andcardinality of connected components of level sets. At the first iter-ation step, values of f ðviÞ and Nðf ðviÞÞ are computed for each meshvertex vi. Each f ðviÞ value defines a degenerate intervalIk ¼ ½f ðviÞ; f ðviÞ� in R, i.e., an interval for which the left and rightextremity values coincide. Intervals Ik defined at every vertex areordered based on increasing f values and for each interval the cor-responding Nðf Þ value is considered. In this way, each interval isassociated with a data structure DðIkÞ � ðf ðviÞ; f ðviÞ;Nðf ðviÞÞÞ stor-ing its bounds (both bounds are f ðviÞ at the beginning of the itera-tive merging process) and the number of its connectedcomponents. At the next iteration steps, contiguous intervals withthe same number of connected components are merged.

Formally, given an ordered collection of n disjoint intervalsfIk ¼ ½ak; bk�gn

k¼1 with bk 6 akþ18k, two intervals Il and Im are contig-uous iff 9= kjðbl 6 ak 6 amÞ _ ðbl 6 bk 6 amÞ. Fusion of two contiguousintervals Il ¼ ½al; bl� and Im ¼ ½am; bm� associated with the same num-ber of connected components NðalÞ ¼NðblÞ ¼NðamÞ ¼NðbmÞyields a new interval with new bounds ½al; bm�. The number of con-nected components of the new interval ½al; bm� is recomputed as itgenerally depends on the topology of the surface. Operatively, sincethe back-projection of ½f ðviÞ; f ðviÞ� is often reduced to vi itself or just afew vertices, the value ½f ðviÞ; f ðviÞ þ �� should be actually estimated.As reported in Section 3, in our solution this is performed during theequalization process.

This procedure is iterated until all contiguous intervals are asso-ciated with different values of the number of connected compo-nents. When the iterative process is complete, each vertex of themesh is labeled based on the interval it maps to. However, setsof vertices with the same label are not necessarily connected, inthat vertices located in several different parts of the surface canmap into the same interval. As a consequence, connected compo-nents (regions) are identified by running a flood-fill algorithmadapted to the 3D case, which labels in the same way sets of adja-cent vertices whose values of f fall in the same interval Ik. These re-gions Ri are approximations of the equivalence classes of the Reebgraph.

Each region is associated with an adjacency index, representingthe number of its adjacent regions. Regions are merged based ontheir adjacency index: pairs of adjacent regions with the sameadjacency index are iteratively merged.

According to this, the Reeb graph of the model is derived byassigning nodes to regions, while edges of the graph connect nodescorresponding to adjacent regions. An editing operation is finallyperformed on the graph in order to remove small regions whichcan result at the end of the iterative merging process [45]. Theseregions usually correspond to parts that are not relevant for theobject identification. In particular, a region on the object surfaceis considered a small one if the ratio of its area, computed by sum-ming the areas of triangles in the region, and the area of the largestregion of the object is less than a predefined threshold (set to 0.05in our experiments).

Fig. 4 shows some representative steps of the Reeb-graph con-struction process. Fig. 4(a) and (b) shows the status of vertex label-ing at two steps of the iterative merging process based onadjacency and cardinality of level sets. Fig. 4(c) shows the final sta-tus of vertex labeling based on connectedness analysis. It can beobserved that disconnected regions (e.g., the two legs) associatedwith the same interval of f values are marked with different labels.Note that protrusions of small area, like the fingers, are removed inthe processing step which edits the Reeb graph by merging smallregions to their neighbors.

3.2. Curvature based adjustment of region boundaries

Due to the discrete nature of the mesh, values of f are sampledon a lattice thus preventing, in the general case, accurate identifi-cation of critical point values and consequently of part boundaries.Therefore, for accurate identification of part boundaries a differentclue is exploited, relying on the evidence of the role played by deepsurface concavities (i.e., loci of negative minima of each principalcurvature) in perceptual surface decomposition [12]. In particular,accurate identification of object parts requires a process of refine-ment of region boundaries that should follow as much as possibledeep concavities of the object surface.

As described in the previous section, each region boundary is alevel set and is thus associated with a value f � of the f function thatcorresponds to a critical point fc. A perturbation of the f � valueyields a new configuration of the boundary that moves to a new le-vel set (see Fig. 5). Thus, profiles of region boundaries can be ad-justed by changing the value of f � they are associated with. Inthis adjustment step, two independent and sometimes oppositerequirements should be targeted: locality and concavity. The local-ity requirement demands that in order to comply to the topologicalcharacteristics of the object surface the optimal value f opt should beclose to fc (the closest critical point of f). Differently, the concavityrequirement demands that in order to identify a perceptually sali-ent decomposition, the optimal value f opt should determine aboundary that matches a deep concavity profile on the objectsurface.

In the proposed solution, boundary adjustment is modeled as anoptimization process by which the optimal value f opt that deter-mines the boundary profile is found as the solution to a minimiza-

Page 8: 3D Mesh decomposition using Reeb graphs

c

optf = f

f = f = f*

Fig. 5. In order to conform to perceptually salient boundaries, region contoursshould match deep surface concavities.

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1547

tion problem. The objective function Cðf �; fcÞ includes two differentterms accounting for locality and concavity requirements:

Cðf �; fcÞ ¼ ð1� aÞElocalðf �; fcÞ þ aEconcaveðf �Þ; ð8Þ

being Elocalðf �; fcÞ ¼ kf � � fck;a a weighting coefficient (in our tests, ithas been set experimentally to 0.5), and Econcaveðf �Þ a measure of theconcavity of the region boundary determined by f �. Minimization ofCðf �; fcÞ is obtained using a plain gradient descent algorithm.

For the Econcaveðf �Þ term, the sequence of kmin curvature valuesalong the boundary profile is considered (principal curvatures havebeen computed according to the method proposed in [17]). In par-ticular, let cf � ;RðtÞ be the curve—parameterized with respect to thenormalized arc-length t—representing the portion of the f-valuedlevel set corresponding to the boundary of region R. Econcaveðf �Þ isdefined as follows:

Econcaveðf �Þ ¼minf �

kminðcf � ;RðtÞÞ GrðtÞ� �

; ð9Þ

being kminð�Þ a function returning the k-min curvature value at sur-face points, the convolution operator and Grð�Þ the normalizedGaussian smoothing kernel of variance r2. In this equation, convo-lution with a Gaussian kernel permits to smooth the values of thek-min principal curvature along the boundaries of the region, thusmaking more stable and reliable the identification of the minimum.

4. Experimental results

In the following, we present and discuss experimental resultsthat show the potential of the proposed solution for decompositionof 3D objects. First, we evaluate the effectiveness of decompositionconsidering two different points of view: subjective and objective.For both the evaluations we compare results of the proposed ap-proach against results obtained using two state of the art solutionsfor 3D objects decomposition. Detailed descriptions of the subjec-tive and objective evaluations are reported in Sections 4.1 and 4.2,respectively. Then, in Section 4.3 we discuss our approach with re-spect to the seven criteria for evaluating mesh decomposition algo-rithms enumerated in [14], and provide further decompositionexamples for specific object classes.

The subjective evaluation is accomplished by reporting decom-position results for a set of reference 3D models covering a varietyof objects with different structural complexity and resolution. Thisevaluation is referred to as subjective because we do not provideobjective performance measures of the decomposition approachesunder analysis. Rather, performance of each approach is evaluatedsubjectively by comparing decomposition results on the set of ref-erence 3D models. This approach to the evaluation of decomposi-tion results conforms to the approach followed in other works[11,19,24,26,27].

Differently, the objective evaluation is accomplished by defininga measure of the perceptual saliency of decompositions. For thispurpose, a ground-truth set of annotated 3D objects has been con-structed through a user-based experiment. In the experiment,some people were asked to identify relevant parts of 3D modelsrepresenting real objects of different structural complexity. An-swers were used to assess the degree by which decomposition pro-vided by the approaches under comparison matched relevant partsidentified by users.

In particular, we compared the proposed solution based on Reebgraph (RG), to a geometric based solution, the curvature clustering(CC) [19], and to the semantic oriented method based on spectralembedding and contour analysis (SE) [26]. The use of these ap-proaches is motivated by the fact that methods in the geometricbased category exploit different characteristics of the object surfacethan RG (basically CC uses the sole curvature information to pro-duce object decomposition), while the SE method belongs to thesemantic oriented category, as RG, thus permitting a comparisonbetween methods that pursuit the same objectives and exploitsimilar characteristics of 3D models. The two approaches areshortly summarized in the following.

Mesh decomposition based on CC is performed by extractingvalues of principal curvatures k-min and k-max [46], and clusteringthem using standard k-means (the number of clusters is set man-ually based on the structural complexity of 3D objects). Once clus-tering is complete, each mesh vertex is labeled according to thecluster it belongs to. Connected component analysis and regiongrowing are performed to remove small regions and identify rele-vant object parts. Since the region labeling tends to produce over-partitioning, a merging phase eventually combines together adja-cent regions based on their curvature and boundary information.

SE performs mesh decomposition via recursive bisection, whereat each step a sub-mesh embedded in 3D is first spectrally pro-jected into the plane and then a contour is extracted from the pla-nar embedding. The graph Laplacian and a geometric operatordesigned to emphasize concavity are used to compute the projec-tion. The two embeddings reveal distinctive shape semantics ofthe 3D model and complement each other in capturing the struc-tural or geometrical aspect of a partitioning.

4.1. Decomposition of sample 3D objects

Fig. 6 presents decomposition results for some reference modelsusing RG (leftmost column), CC (central column) and SE (rightmostcolumn) approaches. Reference models include 3D objects that arecommonly used to compare partitioning methods (like the Stan-ford horse and bunny), and other models of different structuralcomplexity in terms of local surface variations and presence oflarge protrusions.

These examples confirm the main drawbacks of CC approachthat were evidenced in Section 1.1. In fact, it can be noticed thatperceptually salient parts do not always correspond to parts withhomogeneous curvature. Rather, identification of regions withhomogeneous curvature is often associated with over-decomposi-tion of perceptually salient parts (e.g., the body of the rabbit, thelegs of the horse, the arms, legs and head of the human body).Using CC, better results are obtained with the decomposition ofmechanical components (see, for example, the oil-pump inFig. 6(d)), where the presence of large areas of uniform curvaturebetter fits the requirements of the approach.

Regarding SE, it provides nice partitioning in all the cases re-ported in Fig. 6. However, for some models (like the horse inFig. 6(a), and the human model in Fig. 6(c)) a non-intuitive decom-position of the body is evidenced (e.g., in the horse model theshoulder region is identified as a separate part). The RG approachproduces satisfactory results for all the reference models. Some

Page 9: 3D Mesh decomposition using Reeb graphs

Fig. 6. Decomposition of sample objects using the proposed approach (RG, leftmost column), the curvature clustering (CC, central column) and the spectral embedding (SE,rightmost column). Different colors are used to evidence regions identified by the decomposition. The vertex count is also reported for every model.

1548 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

criticality are shown in separating the back legs from the body ofthe rabbit in Fig. 6(b), or in identifying some minor details of theoil-pump model in Fig. 6(d).

Results obtained from these sample models and tests performedon a larger data set permit to derive some general considerationsabout the behavior of the RG approach. As expected, RG performsvery well on objects with manifest protrusions, proving to be bet-ter than the experimented geometry based solution in decompos-ing objects into their salient parts, and having similar performanceto a state of the art semantic oriented solution. Under this perspec-

tive, it is relevant to observe that since geodesic distances basicallydo not change under pose variations, decompositions of articulatedobjects are largely invariant with respect to pose of object parts.The RG approach also tends to ignore small curvature variations,thus avoiding over-decomposition problems. Moreover, theapproach performs quite well also in the case of low resolutionobjects (i.e., the mesh approximating a 3D object is representedby a small number of vertices and triangles). In contrast, solutionsbased on curvature estimation feature a loss of performance indecomposing low resolution objects due to the difficulties to ob-

Page 10: 3D Mesh decomposition using Reeb graphs

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1549

tain a reliable estimation of curvature values (which requires highresolution meshes).

4.2. Perceptual saliency of decomposed objects

A key aspect of mesh decomposition approaches relates to theability to yield object decomposition into perceptually salientparts. In order to quantitatively measure the saliency of 3D objectdecompositions, a test has been carried out aiming to compare re-sults of manual versus automatic objects decomposition. The com-parison has been carried out on a ground-truth archive comprising17 reference 3D models (shown in Fig. 7) which represent real ob-jects of different structural complexity. In particular, models be-long to five categories: surfaces of revolution (SOR), vases,miscellaneous, mechanical (CAD) and medical. These five categories

Fig. 7. The ground-truth archive including 17 objects w

aim to provide a not-biased reference archive, capable to evidencethe strength and weakness of different approaches for meshdecomposition. This is obtained by including objects of differentcomplexities and surface characteristics.

The SOR category comprises objects that can be generatedthrough the revolution of a generative profile. As a consequence,these objects have regular shapes with large parts of the surfacepresenting homogeneous differential properties. In particular,these models present a few and large discontinuities in the surfacecurvature, that occur along precise and well defined circular lines.These models are expected to favor decomposition methods basedon curvature information of objects surface. Objects in the vasescategory are slightly more complex than SOR, still representingsimple man made objects with minor protrusions. The third cate-gory comprises miscellaneous models representing animals and

ith different structural and surface complexities.

Page 11: 3D Mesh decomposition using Reeb graphs

SOR vases miscellaneous CAD medical0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

over

lap

inde

x

RGCCSE

1550 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

compound objects with complex shape and major protrusions.With this latter category of objects, detection of perceptually sali-ent parts is most challenging. The fourth category includes modelsof mechanical components that show small protrusions and largeareas with uniform curvature. Finally, the medical category in-cludes models of different complexities both in terms of curvaturevariations, number and relevance of protrusions.

To obtain the ground-truth decomposition of reference objects,we asked 30 users to identify the relevant parts of the 17 reference3D models. In order to make the evaluation reproducible, we out-lined the following experimental protocol. The users were selectedamong university students and academic personnel with sufficientskill in the use of software applications. The 3D Studio Max1 soft-ware was used to allow users to easily identify relevant parts of3D shapes. The application interface supports basic 3D navigationfunctionalities plus a specific tool which permits interaction with3D objects and to colorize their parts or regions. In this way, differ-ent colors are used to evidence different parts. During each test ses-sion, the user is first shortly trained with the interface and thenasked to identify ‘perceptually relevant parts of an object’.

The limited size of the database is mainly motivated by the timerequested by users to complete objects decomposition. In particu-lar, we observed that the testing session took an average timeranging between 19 and 23 min, with an average of 21.3. This ap-peared to be a realistic limit for the user capability and willingnessin maintaining attention throughout the test.

Thus, the ground-truth archive includes 510 decomposed mod-els, the decomposition of the ith reference model by the jth subjectbeing referenced as mj

i and corresponding to NðmjiÞ regions

fR1ðmjiÞ;R2ðmj

iÞ; . . . ;RNðmjiÞðm

jiÞg. This ground-truth archive is used

to score the decomposition of reference 3D models operated byany automatic decomposition approach. To clarify how a genericdecomposition is scored, the degree of overlap and the best overlapare defined.

Given two regions Ra and Rb on the surface of a 3D model m,their degree of overlap OðRa;RbÞ amounts to the number of modelvertices that belong to both Ra and Rb, normalized to the maximumnumber of vertices of Ra and Rb:

OðRa;RbÞ ¼#ðRa \ RbÞ

max #ðRaÞ;#ðRbÞf g : ð10Þ

Given a region Ra on the surface of a 3D model m, and a decompo-sition of m, e.g., mj ¼ fR1ðmjÞ;R2ðmjÞ; . . . ;RNðmjÞðmjÞg, the best over-lap of Ra onto mj amounts to the highest value of the degree ofoverlap between Ra and any region of the decomposition, that is:

boðRa;mjÞ ¼maxk

OðRa;RkðmjÞÞ: ð11Þ

The best overlap can be used to quantify the agreement of twodecompositions. Let mS be the decomposition of model m using thesolution S (S can be RG or CC or SE). The agreement A between mS

and mj is evaluated as the average value of the best overlap of re-gions of mS onto regions of mj, that is:

AðmS;mjÞ ¼ 1NðmSÞ

XNðmSÞ

k¼1

boðRkðmSÞ;mjÞ: ð12Þ

The agreement value is maximum, that is 1, when two decomposi-tions are exactly the same. The lower the agreement value, the moredifferent the two decompositions.

Fig. 8 shows ranges of the agreement for the three approaches(RG, CC and SE) on the five categories of objects included in theground-truth archive.

1 � Copyright by Autodesk.

Results show different behaviors for the five categories, the RGand SE approaches featuring the best performance on average. Forthe SOR category, on average, the three approaches score the bestresults in terms of average values (75.48%, 75.77% and 78.44% forRG, CC and SE, respectively). As expected, a curvature basedapproach like CC performs well in this case, but it is relevant thatalso RG and SE are capable to score results comparable to CC. Sim-ilar results are shown for the CAD models, where the CC approachis competitive with the semantic oriented solutions under test.

For the vases category, the agreement for CC is consistently low-er (decreasing to 60.86%), while the mean value of the agreementfor RG and SE keeps almost constant (76.08% and 77.65% for RGand SE, respectively) with respect to the results scored for theSOR category.

As expected, for the miscellaneous category including complexobjects, the agreement is much lower especially for CC (45.84%),with RG outperforming the other approaches. This can be ac-counted to the fact that topological information is more suited tocapture object protrusions as that appearing in complex objects.It should be noticed that the higher the object complexity, the low-er is the agreement between the automatic and manual decompo-sition. In general, the difficulty to decompose complex objects isconfirmed by the fact that whereas almost all subjects providethe same decomposition of simple objects, complex objects aredecomposed in a variety of different ways, even by humansubjects.

Finally, for the class of medical models, the RG performed thebest with an agreement of 62.34% with respect to the 60.03% ofSE and the 50.80% of CC.

4.3. Evaluation of the approach

In a recent comparative study, Attene et al. [14] enumerated se-ven criteria for evaluating algorithms for mesh decomposition. Inthe following, we discuss the proposed approach with respect tothese criteria.

Type of decomposition: The approach belongs to the class ofsemantic oriented solutions for mesh decomposition. Fig. 6 showsthe capability of the approach to partition complex objects (includ-ing animals, human and mechanical objects) into meaningful parts.

Extracting the ‘correct’ parts: To overcome the difficulty in defin-ing which the correct parts are, the user-based test reported in Sec-

object categories

Fig. 8. Mean and variance spread of the agreement for the RG, CC and SEapproaches on the five categories of objects included in the ground-truth archive.

Page 12: 3D Mesh decomposition using Reeb graphs

Table 1Number of vertices, regions of the decomposed model and running times for meshesof different complexities.

Model Vertices Regions Time (s)

Man (Fig. 6(c)) 23,280 6 71Hand (Fig. 11(a)) 36,653 7 142Hand (Fig. 11(d)) 3665 7 7Feline (Fig. 12(b)) 36,000 9 139Horse (Fig. 15(a)) 9207 7 40Bird (Fig. 15(b)) 101 4 <1Cow (Fig. 15(c)) 17,438 7 54Jug (Fig. 15(d)) 504 3 1Dinopet (Fig. 15(e)) 13,209 8 40

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1551

tion 4.2 has been defined and carried out. It aims to provide anevaluation of the decomposition results based on the viewers’ per-spective. Results of the evaluation show the proposed solution iscompetitive with state of the art semantic oriented methods andcan outperform geometry based approaches.

Boundaries: Minimization of a functional that accounts for prox-imity and surface curvature has been proposed in Section 3.2 to re-fine the position of the boundaries between objects parts.

Hierarchical/multi-scale decomposition: In the proposed solution,mesh decomposition is performed at a single scale. Multi-scaleextension of the approach could be obtained by modifying the edit-ing criteria of the Reeb graph and the rule that eliminates small re-gions. Multi-resolution could improve results particularly indifficult cases where the scale at which to partition an object de-pends from the application (e.g., the hand/fingers of the humanmodel of Fig. 6(c)). The viability of a multi-scale extension is notaddressed in this paper and will be part of future work.

Sensitivity to pose: The proposed approach is almost pose invari-ant (i.e., same models in different poses are decomposed in thesame way). An example is reported in Fig. 9. Though the eight styl-ized hand models have different number of vertices and are not allderived from the same hand model, it can be noted they aredecomposed in very similar ways, with slight differences in thelocations of the boundaries between the fingers and the palm ofthe hand.

Asymptotic complexity: In the construction of the Reeb graph,the Dijkstra’s algorithm takes Oðn log nÞ, with n number of verticesof the mesh. Application to every mesh vertex induces a Oðn2 log nÞcomplexity. Merging of the intervals in the worst case has com-plexity Oðn2Þ. Finally, complexity in boundary refinement dependson the number of contours and on the plain gradient descent algo-rithm used to optimize Eq. (8). Thus, the overall complexity isdominated by Oðn2 log nÞ. Table 1 reports the running times re-quired for decomposing meshes with different number of vertices.

Control parameters: Low level parameters used by our approachare the threshold for removing small regions and the parameter awhich controls the adjustment of region boundaries according toEq. (8). As an example, Fig. 10 reports the effect of changing thethreshold that regulates the pruning of small regions during thepost-processing of the Reeb graph (see Section 3.1). In Fig. 10(a)and (b), the decompositions obtained with this threshold set to

Fig. 9. Decompositions of eight raw hand models in different pos

0.05 (i.e., the default value) and 0.01 for two different models arereported. It can be observed that acting on this parameter, thosedetails corresponding to smaller protrusions of the models canbe identified.

In addition to the above evaluation, tests have been performedto evidence the robustness of the proposed approach with respectto modifications of 3D models induced by surface noise, smoothingand simplification, and with respect to 3D models with varyingtopology (e.g., surfaces with different genus).

In particular: Model in Fig. 11(b) is obtained from the model inFig. 11(a) by adding Gaussian noise over the vertices in the normaldirection (80% of the model’s bounding ball radius); Model inFig. 11(c) is obtained from the model in Fig. 11(a) by iterating 10steps of Laplacian smoothing; Model in Fig. 11(d) is a simplifiedversion with 10% of the vertices of the model in Fig. 11(a) (the ori-ginal model has 36,653 vertices). It can be observed the decompo-sitions are almost invariant with respect to these variations.

Fig. 12 shows the decomposition of objects with genus-1 andgenus-2. A limitation in decomposing the genus-2 object can be ob-served. Basically, the correct parts of the feline model were found,but the tail is fused with the back leg.

Further decompositions are reported in Figs. 13 and 14. Fig. 13shows decompositions of CAD models of mechanical components.In general, decompositions of mechanical objects using RG can benot accurate, in that surfaces that are perceived as individual com-ponents can be split into different parts (see, for example, the rock-

es ((a)–(g) are right-hand models, (h) is a left-hand model).

Page 13: 3D Mesh decomposition using Reeb graphs

Fig. 10. Decompositions of two objects for different settings of the threshold that regulates the pruning of small regions of the Reeb graph. The threshold is equal to 0.05 forthe models on the left in (a) and (b), and to 0.01 for the models on the right in (a) and (b).

Fig. 11. Decomposition of a sample hand model (a) and of its variations obtained by: (b) adding Gaussian noise; (c) iterating Laplacian smoothing; (d) simplification.

Fig. 12. Decomposition of a genus-1 (on the left) and a genus-2 model (on the right).

Fig. 13. Decompositions of CAD models.

Fig. 14. Decompositions of medical models.

1552 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

Page 14: 3D Mesh decomposition using Reeb graphs

Fig. 15. Decomposition of objects that are commonly used as reference.

S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554 1553

er arm in Fig. 13(a)). In Fig. 14, decompositions of medical modelsare reported.

Fig. 15 reports decompositions of a set of objects that are com-monly used in the evaluation of algorithms for 3D mesh decompo-sition. Using these models, decompositions produced by theproposed approach can be easily compared with those of differentmethods (for example, compare the decomposition of the dinopetin Fig. 15(e) with that reported in [26,27]).

In the large part of applications, decomposition approaches runoff-line. As a consequence, their computational complexity typicallyis not a stringent constraint. For comparison purposes, Table 1 re-ports the number of regions in the final decomposition of some sam-ple models and the running times on a 2.2-GHz Centrino Duo PC with2 GB memory (complexities of the objects are reported in number ofvertices). A non-optimized Java implementation was used.

5. Conclusions and future work

In this paper, we have presented and discussed the develop-ment and experimentation of a technique for automatic decompo-sition of 3D models. This can be relevant in many practicalapplications, such as modeling, metamorphosis, compression, sim-plification, 3D shape retrieval, collision detection, texture mappingand skeleton extraction. The proposed solution relies on Reebgraphs to accomplish a structural based decomposition of an objectinto parts. In addition to mesh topology, curvature information isexploited to refine object decomposition and adjust region bound-aries so as to match deep surface concavities and to yield percep-tually salient decomposition of objects. Comparative evaluationsare presented both in terms of sample object decompositions andin terms of a test measuring the agreement of the decompositionto perceptually relevant parts of objects. Critical discussion of theapproach to the light of seven evaluation criteria commonly usedby the object decomposition community is also presented.

Future work will investigate a multi-resolution extension of theproposed approach and its inclusion into a scheme for retrieval bycontent of 3D objects based on similarity between object parts.

Acknowledgments

This work is partially supported by the Information SocietyTechnologies (IST) Program of the European Commission as partof the DELOS Network of Excellence on Digital Libraries (ContractG038-507618).

Very preliminary versions of this work appeared in [39,40].

References

[1] T. Funkhouser, M. Kazhdam, P. Shilane, P. Min, W. Kiefer, A. Tal, S.Rusinkiewicz, D. Dobkin, Modeling by example, ACM Transactions onGraphics (SIGGRAPH) 23 (3) (2004) 652–663.

[2] A. Gregory, A. State, M. Lin, D. Manocha, M. Livingstone, Interactive surfacedecomposition for polyhedral morphing, The Visual Computer 15 (1999) 453–470.

[3] M. Zockler, D. Stalling, H.C. Hege, Fast and intuitive generation of geometricshape transitions, The Visual Computer 16 (5) (2000) 241–253.

[4] Z. Karni, C. Gotsman, Spectral compression of mesh geometry, in: Proceedingsof SIGGRAPH, New Orleans, LA, 2000, pp. 279–286.

[5] M. Garland, A. Willmott, P. Heckbert, Hierarchical face clustering on polygonalsurfaces, in: Proceedings of the ACM Symposium on Interactive 3D Graphics,Research Triangle Park, NC, 2001, pp. 49–58.

[6] D. Cohen-Steiner, P. Alliez, M. Desbrun, Variational shape approximation, ACMTransactions on Graphics 23 (3) (2004) 905–914.

[7] E. Zuckerberger, A. Tal, S. Shlafman, Polyhedral surface decomposition withapplications, Computer Graphics 26 (5) (2002) 733–743.

[8] J. Tierny, J.-P. Vandeborre, M. Daoudi, Partial 3D shape retrieval by Reebpattern unfolding, Computer Graphics Forum 28 (1) (2009) 41–55.

[9] X. Li, T. Woon, T.S. Tan, Z. Huang, Decomposing polygon meshes for interactiveapplications, in: Proceedings of the ACM Symposium on Interactive 3DGraphics, Venice, Italy, 2001, pp. 35–42.

[10] B. Levy, S. Petitjean, N. Ray, J. Maillot, Least squares conformal maps forautomatic texture atlas generation, in: Proceedings of SIGGRAPH, San Antonio,TX, 2002, pp. 362–371.

[11] S. Katz, A. Tal, Hierarchical mesh decomposition using fuzzy clustering andcuts, ACM Transactions on Graphics 22 (3) (2003) 954–961.

[12] D. Hoffman, W. Richards, Parts of recognition, Cognition 18 (1984) 65–96.[13] A. Shamir, A survey on mesh segmentation techniques, Computer Graphics

Forum 27 (6) (2008) 1539–1556.[14] M. Attene, S. Kats, M. Mortara, G. Patanè, M. Spagnuolo, A. Tal, Mesh

segmentation—a comparative study, in: Proceedings of the InternationalConference on Shape Modeling and Applications, Matsushima, Japan, 2006,pp. 14–25.

[15] A.P. Mangan, R.T. Whitaker, Partitioning 3D surface meshes using watershedsegmentation, IEEE Transactions on Visualization and Computer Graphics 5 (4)(1999) 308–321.

[16] D.L. Page, A.F. Koschan, M.A. Abidi, Perception-based 3D triangle meshsegmentation using fast marching watershed, in: Proceedings of the IEEEInternational Conference on Computer Vision and Pattern Recognition,Madison, WI, 2003, pp. 27–32.

[17] G. Taubin, Estimating the tensor of curvature of a surface from a polyhedralapproximation, in: Proceedings of the International Conference on ComputerVision, Boston, MA, 1995, pp. 902–907.

[18] E. Ceccarelli, A. Del Bimbo, P. Pala, Segmentation of 3D objects usingpulse-coupled oscillator networks, in: Proceedings of the InternationalConference on Multimedia & Expo, Amsterdam, The Netherlands, 2005,pp. 153–156.

[19] G. Lavoué, F. Dupont, A. Baskurt, A new CAD mesh segmentation method,based on curvature tensor analysis, Computer Aided Design 37 (2005) 975–987.

[20] I. Shatz, A. Tal, G. Leifman, Paper craft models from meshes, The VisualComputer: International Journal of Computer Graphics 22 (9) (2006)825–834.

[21] F.R.K. Chung, Spectral graph theory, in: CBMS Regional Conference Series inMathematics, vol. 92, American Mathematical Society, 1997.

[22] K. Zhou, J. Synder, B. Guo, H.-Y. Shum, Iso-charts: stretch-driven meshparameterization using spectral analysis, in: Proceedings of Eurographics/ACM SIGGRAPH Symposium on Geometry Processing, Nice, France, 2004,pp. 45–54.

[23] K. Wu, M. Levine, 3D part segmentation using simulated electrical chargedistributions, IEEE Transactions on Pattern Analysis and Machine Intelligence19 (11) (1997) 1223–1235.

[24] Y. Lee, S. Lee, A. Shamir, D. Cohen-Or, H.-P. Seidel, Mesh scissoring withminima rule and part salience, Computer Aided Geometric Design 22 (2005)444–465.

[25] S. Shlafman, A. Tal, S. Katz, Metamorphosis of polyhedral surfaces usingdecomposition, in: Proceedings of Eurographics, Saarbrücken, Germany, 2002,pp. 219–228.

Page 15: 3D Mesh decomposition using Reeb graphs

1554 S. Berretti et al. / Image and Vision Computing 27 (2009) 1540–1554

[26] R. Liu, H. Zhang, Mesh segmentation via spectral embedding and contouranalysis, Computer Graphics Forum (Proceedings of Eurographics) 26 (3)(2007) 385–394.

[27] S. Katz, G. Leifman, A. Tal, Mesh segmentation using feature point and coreextraction, The Visual Computer 21 (8–10) (2005) 649–658.

[28] J. Podolak, P. Shilane, A. Golovinskiy, S. Rusinkiewicz, T.A. Funkhouser, Aplanar-reflective symmetry transform for 3D shapes, ACM Transactions onGraphics (Proceedings of SIGGRAPH) 25 (3) (2006) 549–559.

[29] L. Shapira, A. Shamir, D. Cohen-Or, Consistent mesh partitioning andskeletonisation using the shape diameter function, The Visual Computer:International Journal of Computer Graphics 24 (4) (2008) 249–259.

[30] J.-M. Lien, J. Keyser, N.M. Amato, Simultaneous shape decomposition andskeletonization, in: Proceedings of the ACM Symposium on Solid and PhysicalModeling, Cardiff, United Kingdom, 2006, pp. 219–228.

[31] E. Zhang, K. Mischaikow, G. Turk, Feature-based surface parameterization andtexture mapping, ACM Transactions on Graphics 24 (1) (2005) 1–27.

[32] M. Attene, B. Falcidieno, M. Spagnuolo, Hierarchical mesh segmentation basedon fitting primitives, The Visual Computer 22 (3) (2003) 181–193.

[33] M. Mortara, G. Patanè, M. Spagnuolo, B. Falcidieno, J. Rossignac, Blowingbubbles for multi-scale analysis and decomposition of triangle meshes,Algorithmica 38 (1) (2003) 227–248.

[34] J.W. Milnor, Morse Theory, Princeton University Press, Princeton, NJ, 1963.[35] G. Reeb, Sur les points singuliers d’une forme de pfaff complètement

intégrable ou d’une fonction numérique, Comptes-rendus de l’Académie desSciences 222 (1946) 847–849.

[36] M. Hilaga, Y. Shinagawa, T. Kohmura, T.L. Kunii, Topology matching for fullyautomatic similarity estimation of 3D shapes, in: Proceedings of SIGGRAPH,Los Angeles, CA, 2001, pp. 203–212.

[37] J. Tierny, J.-P. Vandeborre, M. Daoudi, Topology driven 3D mesh hierarchicalsegmentation, in: Proceedings of the International Conference on ShapeModeling and Applications, Lyon, France, 2007, pp. 215–220.

[38] J. Tierny, J.-P. Vandeborre, M. Daoudi, 3D Mesh skeleton extractionusing topological and geometrical analysis, in: Proceedings of the PacificConference on Computer Graphics and Applications, Taipei, Taiwan,2006, pp. 85–94.

[39] G. Antini, S. Berretti, A. Del Bimbo, P. Pala, 3D Mesh partitioning forretrieval by parts applications, in: Proceedings of the InternationalConference on Multimedia & Expo, Amsterdam, The Netherlands, 2005,pp. 1210–1213.

[40] S. Berretti, A. Del Bimbo, P. Pala, Partitioning of 3D meshes using Reeb-graphs,in: Proceedings of the International Conference on Pattern Recognition, vol. 1,Hong-Kong, China, 2006, pp. 19–22.

[41] J.J. Koenderink, A.J. Van Doorn, Surface shape and curvature scales, Image andVision Computing 10 (8) (1992) 557–565.

[42] M. Attene, S. Biasotti, M. Spagnuolo, Shape understanding by contour-drivenretiling, The Visual Computer 19 (2–3) (2003) 127–138.

[43] T. Acharya, A.K. Ray, Image Processing: Principles and Applications, Wiley-Interscience, 2005.

[44] U. Axen, H. Edelsbrunner, Auditory morse analysis of triangulated manifold, in:Mathematical Visualization, 1998, pp. 223–236.

[45] H. Carr, J. Snoeyink, M. Van de Panne, Simplifying flexible isosurfaces usinglocal geometric measures, in: Proceedings of the IEEE Conference onVisualization, Austin, TX, 2004, pp. 497–504.

[46] D. Cohen-Steiner, J. Morvan, Restricted delaunay triangulations and normalcycle, in: Proceedings of the ACM Symposium on Computational Geometry,San Diego, CA, 2003, pp. 237–246.