on-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/cgartigos/skeleblob_eg.pdf ·...

7
On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF 1 , THOMAS LEWINER 1,2 , ARIEL SHAMIR 3 AND LEIF KOBBELT 4 1 School of Computer Science — Tel Aviv University — Israel 2 Departament of Matematics — Pontif´ ıcia Universidade Cat´ olica — Rio de Janeiro — Brazil 3 Efi Arazi School of Computer Science — The Interdisciplinary Center — Herzliya — Israel 4 Computer Graphics Group — RWTH — Aachen — Germany www.cs.tau.ac.il/˜asharf. www.mat.puc--rio.br/˜tomlew. www.faculty.idc.ac.il/arik. www--i8.informatik.rwth--aachen.de. Abstract. The curve-skeleton of a 3D object is an abstract geometrical and topological representation of its 3D shape. It maps the spatial relation of geometrically meaningful parts to a graph structure. Each arc of this graph represents a part of the object with roughly constant diameter or thickness, and approximates its centerline. This makes the curve-skeleton suitable to describe and handle articulated objects such as characters for animation. We present an algorithm to extract such a skeleton on-the-fly, both from point clouds and polygonal meshes. The algorithm is based on a deformable model evolution that captures the object’s volumetric shape. The deformable model involves multiple competing fronts which evolve inside the object in a coarse-to-fine manner. We first track these fronts’ centers, and then merge and filter the resulting arcs to obtain a curve-skeleton of the object. The process inherits the robustness of the reconstruction technique, being able to cope with noisy input, intricate geometry and complex topology. It creates a natural segmentation of the object and computes a center curve for each segment while maintaining a full correspondence between the skeleton and the boundary of the object. Keywords: 3D curve-skeleton. deformable models. skinning. Figure 1: On-the-fly curve-skeleton computation for a real scan of a woman model. Even in the presence large missing data (left), the deformable model accurately interprets the shape to generate a thin curve skeleton with a meaningful segmentation. 1 Introduction Computer graphics applications handle huge models representing complex 3D objects. The most common rep- Preprint MAT. 03/07, communicated on February 10 th , 2007 to the De- partment of Mathematics, Pontif´ ıcia Universidade Cat´ olica — Rio de Janeiro, Brazil. resentations for such objects are boundary meshes or point- sets. However, applications such as editing, animation, mor- phing or shape matching often need a higher level under- standing of the shape and its structure. Such an understand- ing can be conveyed through the use of an inner curve- skeleton for the object. This geometrical and topological

Upload: others

Post on 06-Mar-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

On-the-fly curve-skeleton computation for 3d shapes

ANDREI SHARF1 , THOMAS LEWINER1,2 , ARIEL SHAMIR3 AND LEIF KOBBELT4

1 School of Computer Science — Tel Aviv University — Israel2 Departament of Matematics — Pontifıcia Universidade Catolica — Rio de Janeiro — Brazil3 Efi Arazi School of Computer Science — The Interdisciplinary Center — Herzliya — Israel

4 Computer Graphics Group — RWTH — Aachen — Germanywww.cs.tau.ac.il/˜asharf. www.mat.puc--rio.br/˜tomlew. www.faculty.idc.ac.il/arik.

www--i8.informatik.rwth--aachen.de.

Abstract. The curve-skeleton of a 3D object is an abstract geometrical and topological representation of its 3Dshape. It maps the spatial relation of geometrically meaningful parts to a graph structure. Each arc of this graphrepresents a part of the object with roughly constant diameter or thickness, and approximates its centerline. Thismakes the curve-skeleton suitable to describe and handle articulated objects such as characters for animation. Wepresent an algorithm to extract such a skeleton on-the-fly, both from point clouds and polygonal meshes. Thealgorithm is based on a deformable model evolution that captures the object’s volumetric shape. The deformablemodel involves multiple competing fronts which evolve inside the object in a coarse-to-fine manner. We firsttrack these fronts’ centers, and then merge and filter the resulting arcs to obtain a curve-skeleton of the object.The process inherits the robustness of the reconstruction technique, being able to cope with noisy input, intricategeometry and complex topology. It creates a natural segmentation of the object and computes a center curve foreach segment while maintaining a full correspondence between the skeleton and the boundary of the object.Keywords: 3D curve-skeleton. deformable models. skinning.

Figure 1: On-the-fly curve-skeleton computation for a real scan of a woman model. Even in the presence large missing data (left),the deformable model accurately interprets the shape to generate a thin curve skeleton with a meaningful segmentation.

1 IntroductionComputer graphics applications handle huge models

representing complex 3D objects. The most common rep-

Preprint MAT. 03/07, communicated on February 10th, 2007 to the De-partment of Mathematics, Pontifıcia Universidade Catolica — Rio deJaneiro, Brazil.

resentations for such objects are boundary meshes or point-sets. However, applications such as editing, animation, mor-phing or shape matching often need a higher level under-standing of the shape and its structure. Such an understand-ing can be conveyed through the use of an inner curve-skeleton for the object. This geometrical and topological

Page 2: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

Andrei Sharf, Thomas Lewiner, Ariel Shamir and Leif Kobbelt 2

abstraction represents the 3D shape on an object, by map-ping the relation of geometrically meaningful parts to agraph structure with univariate arcs. Each arc represents oneof these meaningful parts by its centerline, assuming it hasroughly constant diameter around it. The curve-skeleton isboth concise and expressive enough to represent an abstrac-tion of the 3D object. Moreover, it is easier to handle thanthe medial axis since it avoids surface elements, while itstopological structure still represents the shape efficiently.

The main difficulty in computing curve-skeletons forcomplex objects is to correctly interpret their shape. Ob-jects may include complex local topology, large missingparts and noise, and this requires a robust and accurate inter-pretation mechanism. In this work we present an algorithmto extract the curve skeleton from 3D objects represented asboundary meshes as well as point-sets. The algorithm relieson a surface reconstruction technique that can handle bothmeshes and point-sets surfaces, while robustly interpretingtheir shape.

The key idea is to track the reconstruction of a given ob-ject using a deformable model similar to [Sharf et al. 2006].It uses competing fronts that evolve inside the object untilthey achieve a sufficient approximation of the shape. Sincethe deformable model reconstructs the original object, wecompute the center curve of this model to define the centerskeleton of the object itself. To do so, during the model de-formation we follow the fronts’ centers, generating a firstapproximation for the curves of the skeleton. These are fil-tered on-the-fly according to their geometry, their branch-ing structure and the front competition performance, ob-taining the final curve-skeleton (see Figure 1).

Furthermore, using the reconstructed model we canmaintain a full correspondence between the curve-skeletonand the object boundary. For curve-skeleton of point sets,this mapping is explicit on the reconstructed mesh, whilefor 3D meshes it is defined by a simple closest-point projec-tion. Such curve-skeleton computation inherits the robust-ness of the deformable model technique, while performingon-the-fly during the reconstruction process.

2 Related WorksTechniques to compute curve-skeletons of 3D mod-

els can be classified into three categories, accordingto [Cornea et al. 2005]: voxel topology, computational ge-ometry and continuous implicit. Some of the most relevantworks of each category are summarized next. We refer thereader to [Cornea et al. 2005] for a more complete survey.

Voxel topology. The computation of the curve-skeletoncan be derived from computer vision techniques,such as topological thinning [Borgefors et al. 1999,Gagvani and Silver 1999]. These methods iteratively re-move simple points from the boundary of a voxel set. Theydiffer mainly by the definition of these simple points.

Geometry. Curve-skeleton is a natural structure for2D shapes, where it is usually computed as a sub-set of the medial axis [Shaked and Bruckstein 1998].For discrete shapes, this medial axis can be extractedfrom the Voronoı diagram of some points on or nearthe shape [Dey and Zhao 2004, Attali et al. 2007].However, for 3D shapes, the medial axis may con-tain surface elements. The curve skeleton can be ex-tracted from these 2D elements using their own medialaxis [Attali and Montanvert 1997, Amenta et al. 2001], adistance field [Wu et al. 2003] or a more refined geodesicfield [Dey and Sun 2006]. This set of techniques allows adefinition of a curve-skeleton, but requires some delicatesampling condition to reach the correct interpretation. Ourtechnique correctly interprets the data in various situationsincluding both noise and large missing pieces.

Implicit. Another set of techniques compute thecurve-skeleton from the ridge points of a 3Dfield [Schirmacher et al. 1998, Palagyi and Kuba 1999,Bitter et al. 2001]. These techniques generally de-tect and track the ridge points using an implicitmethod such as fast marching [Zhou and Toga 1999,Hassouna and Farag 2005, Cornea et al. 2005*] or activecontours [Golland and Grimson 2000]. This uniform inte-gration and the complex geometry tracking used in thesework typically assume that the shape thickness and com-plexity decreases during tracking, which may lead to shapemisinterpretation in complex topology and noisy case.Moreover, this implicit process does not maintain the cor-respondence between the curve-skeleton and the shape. Ourtechnique shares some similarity with these approaches.However, we do not extract the curve skeleton directly froma field, but rather interpret it in a coarse-to-fine mannerusing explicit evolving fronts.

Figure 2: The deformable model with competing fronts. Thefronts move in a coarse to fine manner, and may split to formsub-fronts, inducing the branching structure of our skeleton.

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.

Page 3: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

3 On-the-fly curve-skeletons

Figure 3: Tracking the center of fronts during reconstruction defines the inner curve-skeleton of a multi-torus object. Thetopological events on the deformable model are mapped as loops in the curve-skeleton.

3 Curve-skeleton by ReconstructionComplex local topology and large missing parts of an

object require a robust and accurate interpretation of itsshape. Following this observation, our technique for curve-skeleton extraction uses strategies similar to the reconstruc-tion method of [Sharf et al. 2006]. In particular, we utilizea deformable model to interpret the shape. We first extractfrom the deformation of the model a set of center curves.We filter this set during the evolution to generate a cleanskeleton, while maintaining a full mapping between themodel and the skeleton. This whole process is performedon-the-fly using inexpensive operations (see Algorithm 1for pseudo-code of the whole process). In particular, thefront center’s tracking relies on an inexpensive markingtechnique, avoiding delicate geometry calculus or discreteintegration.

Algorithm 1 On-the-fly curve-skeleton.1: while evolving fronts do2: counter + +3: for all evolving front f do4: create skeleton node sf from f5: sf .arcid← (counter, f)6: for all vertex v in front f do7: (old c, old f)← v.arcid8: NewArcs+ ←

Arc[(old c, old f) , (counter, f)]9: v.arcid← (counter, f)

10: end for11: end for12: filter(NewArcs)13: remap vertices to skeleton nodes14: end while

The deformable model. Similarly to [Sharf et al. 2006],our deformable model includes multiple evolving frontsthat reconstruct the fine features of the shape only after thecoarse ones are done. This coarse-to-fine interpretation of

the shape is achieved through a competition mechanism be-tween the fronts on an explicit, dynamic mesh representa-tion. Each front is a connected set of mesh vertices, whichmoves in outward normal direction of the mesh (see Fig-ure 2). This movement is proportional to the distance tothe surface, and constrained by a Laplacian system that en-forces the smoothness of the mesh. This system is weightedin order to control the tension of the mesh. A small weightprovides more elasticity, allowing it to evolve fast, while alarge tension slows its evolution. The competition mecha-nism sets the tension of a front according to its geometryand previous evolutions.

The vertices move while active, and are deactivatedwhen they are close enough to the target shape. Deactivat-ing vertices eventually disconnects a front. In such case, thefront is split into connected sub-fronts, and each sub-frontcontinues to evolve separately. Collisions between frontsare prevented during the evolution. At the end of the de-formation, fronts collisions are interpreted as topologicalevents and are applied as handle attachments by connect-ing the fronts that still collide. Even for complex topology(see Figure 3), this reconstruction strategy leads to a robusthigh level interpretation of the shape which we utilize forour skeleton extraction

Skeleton nodes computation. We use the same techniquefor both point-sets and meshes. The evolving fronts re-construction algorithm is used to interpret the shape fromcoarse to fine, while we follow the centers of the fronts todefine the centerline of the shape. Each front evolution istracked separately. At each iteration we insert a new skele-ton node for every front at the barycenter of its mesh ver-tices. For instance in Figure 5, the whole palm is conqueredwith a single front, whose center does not move away fromthe hand’s center.

Model to skeleton correspondence. During the evolution,both the skeleton node (front barycenter) and the meshvertices of the fronts are assigned an arc identifier, whichis a pair composed of an iteration counter and the front

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.

Page 4: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

Andrei Sharf, Thomas Lewiner, Ariel Shamir and Leif Kobbelt 4

Figure 4: Filtering of the curve-skeleton of a dragon mesh (left) from an initial curve set (center left). Filtering with loose (centerright) or tight (right) threshold removes the skeleton’s noise (in the dragon’s front leg) and fine details (spine’s bumps), whilepreserving the main shape elements.

identifier (see Algorithm 1: lines 5 and 9). This identifierlinks the vertex directly to the curve-skeleton nodes havingthe same arc identifier. When a vertex is deactivated duringthe model deformation, it keeps its last valid arc identifier.Since the model guarantees a close reconstruction of theoriginal shape, we simply project the model onto the shapeto obtain the shape-to-skeleton correspondence (Figure 5).

Curve-skeleton structure. The skeleton nodes are con-nected according to the fronts’ evolution that generates aninitial curve set (see Figure 4). We compute these connec-tions based on an inexpensive marking technique using arcidentifiers in a union-find structure. At each iteration, thearc identifiers of some front vertices are updated. Skele-ton nodes corresponding to the old and new arc identifiersare connected (see Algorithm 1: lines 7-9). Straight connec-tions without branches belong to the same curve. Note thatthe front identifier does not need to be coherent from oneiteration to the next one, since the vertices of the mesh bothdefine the movement and the skeleton connections.

Figure 5: Color mapping of the evolution tension parame-ter (left). The initial skeleton structure (left) is filtered us-ing the evolution tension parameter (center left), simplifyingthe skeleton (center right) while preserving the skeleton/modelcorrespondence and segmentation (right).

Branching and topological events. During the evolution,fronts eventually split and merge. Whenever a front splits,we generate a branching node for the corresponding arcand continue to track the different sub-fronts separately. Forexample on the hand of Figure 5, the splitting of the initialfront at entering the fingers generates a branch for eachfinger and separates a sub-front for the wrist. Fronts canmerge either due to topological events or to the dynamicremeshing of the deformable model. When fronts mergedue to a topological events, we connect the two arcs toclose a loop in the curve graph which ensures that theskeleton has the same homotopy as the deformable model(see Figure 3). However, for local merging of close frontswe do not link the two curve branches together, preservingthe correct topology of the skeleton. Instead, we merge thetwo branches into the branch of smallest curvature.

Filtering. The final curve-skeleton is a subset of the ini-tial curve set. Nevertheless, very similar to the medial axis,it can become very noisy and contain spurious branchingespecially near the object’s boundary. Hence, we allow tosimplify the initial curve graph connectivity by pruning andmerging; Depending on a user specified parameter, we re-move from the curve skeleton arcs whose length or corre-sponding front tension are smaller than the given threshold.Removing end arcs is a simple pruning operation, while re-moving intermediate arcs merge branchings. In both cases,we remap corresponding vertices to the new nodes usingthe union-find structure. Next, the tree (or graph with thetopological event’s loop) geometry can be further smoothedto produce our curve-skeleton (see Figure 5) using a splinefilter but keeping the branching nodes fixed. Note that boththe filtered curve-skeleton and the model-skeleton mappingcan be computed on-the-fly during the evolution or eventu-ally at the end of the process, without complex geometricalcalculii.

4 ResultsWe have tested our algorithms on various inputs ranging

from manifold meshes (Figures 7 and 6) to noisy points-

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.

Page 5: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

5 On-the-fly curve-skeletons

Figure 6: Comparing our technique on a horse model. From left to right: The horse mesh. The curve-skeleton computed usingthe distance field of [Gagvani and Silver 1999] (16 seconds). Using the topological thinning method of [Palagyi and Kuba 1999] (92seconds). Using the potential field method of [Cornea et al. 2005*] (16 minutes). Our result, computed in 3.1 seconds.

sets with holes (Figure 1) including objects with complextopology (Figures 3 and 9) and geometry (Figure 4). Ta-ble 1 gives some timing results for the computation. We alsodemonstrate how using our method, the skeleton can assistin interpreting the shape and structure of an object. Fig-ures 5 and 8 show a mapping of the skeleton curves to theboundary mesh using the skeleton mapping to the boundary.They also show how the skeleton segments the shape intomeaningful parts. This method can also support a hierarchi-cal decomposition following major and minor skeleton arcsFigure 4. In the illustrations of this work, the curve-skeletonis drawn using cylinders for visualization purposes.

We compare our method with implicit techniquesusing the code provided in [Cornea et al. 2005]. InFigure 6, we use the same volumetric field for guid-ing our model and for the other technique. The dis-tance field of [Gagvani and Silver 1999] performsin 16 seconds, the topological thinning methodof [Palagyi and Kuba 1999] in 92 seconds and the po-tential field method of [Cornea et al. 2005*] in 16 minutes,while our method last 3.1 seconds.

Figure 7: The result of our algorithm is a thin, 1D curve-skeleton even in degenerated cases such as a 3D box. When theinitial model is not exactly centered (left), the skeleton quicklyrecovers the symmetry of the input (center). The filteringpreserves the symmetry (right).

Our method guarantees the following properties (statedin [Cornea et al. 2005] as curve-skeleton qualitative crite-ria); Homotopic: Since we close a loop in the skeleton for

each topological event of the deformable model, the curve-skeleton has the same homotopy as the deformable model(Figures 3 and 9). Thin: As opposed to many topologicalthinning and distance transform methods, our skeleton iscomputed directly as a set of 1D curves, leading to a thinskeleton (Figure 7). Robust component-wise differentiat-ing: The deformable model performs a robust shape inter-pretation of the data (Figures 3 and 9), which generatesa meaningful decomposition of both the surface and thecurve-skeleton (Figures 5 and 8). Efficient: Our techniqueperforms on-the-fly in only a few seconds and is among thefastest curve-skeleton extraction algorithms (see Table 1).Hierarchic: As many of the distance field techniques, weuse a filter to remove spurious branches. This filter can betuned to generate a hierarchical skeleton (Figure 4).

Nevertheless our method does not fully guarantee thefollowing two criteria: direct visibility of the shape fromthe skeleton and centeredness. The centeredness property isobserved but not guaranteed in our method since we merelyuse a tracking heuristic for the centers.

Conclusions

We propose an efficient and robust method to extracta curve-skeleton from either meshes or point-set objects.This work illustrates the similarity of shape interpreta-tion for surface reconstruction and curve-skeleton computa-tion. In both problems, correct interpretation and segmen-tation must be performed to achieve high quality results.Our method uses a deformable model borrowed from re-construction techniques to robustly interpret the shape andtopology of the target object. The curve skeleton is thencomputed on-the-fly during the model deformation. Its ro-bustness and speed make it attractive for many applicationssuch as animation and matching, and we plan to utilize it tosuch problems in the future.

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.

Page 6: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

Andrei Sharf, Thomas Lewiner, Ariel Shamir and Leif Kobbelt 6

Figure 8: The front tension parameter from the skeleton to the boundary can distinguish between coarse and fine parts of theobject (color-mapped on left figures). The curve skeleton can also be used to interpret the shape: the different branches of theskeleton impose a meaningful segmentation (color-mapped on right figures).

References[Amenta et al. 2001] N. Amenta, S. Choi and R. Kolluri.

The Power Crust, unions of balls, and the medial axistransform. Computational Geometry: Theory and Appli-cations, 19(2–3):127–153, 2001.

[Attali et al. 2007] D. Attali, J.-D. Boissonnat andH. Edelsbrunner. Stability and computation of medialaxes. to appear.

[Attali and Montanvert 1997] D. Attali and A. Montanvert.Computing and simplifying 2D and 3D skeletons. Comp.Vision and Image Understanding, 67(3):156–169, 1997.

[Bitter et al. 2001] I. Bitter, A. Kaufman and M. Sato.Penalized-distance volumetric skeleton algorithm.Transactions on Visualization and Computer Graphics,7(3):195–206, 2001.

[Borgefors et al. 1999] G. Borgefors, I. Nystrom andG. DiBaja. Computing skeletons in three dimensions.Pattern Recognition, 32(7):1225–1236, 1999.

[Cornea et al. 2005] N. Cornea, D. Silver, X. Yuan andR. Balasubramanian. Curve-skeleton applications. InVisualization, pages 95–102. IEEE, 2005.

[Cornea et al. 2005*] N. Cornea, D. Silver, X. Yuan andR. Balasubramanian. Computing hierarchical curve-skeletons of 3d objects. The Visual Computer,21(11):945–955, 2005.

[Dey and Zhao 2004] T. K. Dey and W. Zhao. Approxi-mate medial axis as a Voronoı subcomplex. Computer-Aided Design, 36(2):195–202, 2004. Solid Modelingand Applications ’04.

[Dey and Sun 2006] T. K. Dey and J. Sun. Defining andcomputing curve-skeletons with medial geodesic func-

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.

Page 7: On-the-fly curve-skeleton computation for 3d shapescin.ufpe.br/~sbm/CGartigos/skeleblob_eg.pdf · 2007. 10. 1. · On-the-fly curve-skeleton computation for 3d shapes ANDREI SHARF1,

7 On-the-fly curve-skeletons

tion. In Symposium on Geometry Processing, pages 143–152. ACM/Eurographics, 2006.

[Gagvani and Silver 1999] N. Gagvani and D. Silver.Parameter-controlled volume thinning. Graph. Modelsand Image Proc., 61(3):149–164, 1999.

[Golland and Grimson 2000] P. Golland and W. Grimson.Fixed topology skeleton. In Comp. Vision and PatternRecog., pages 1010–1017. IEEE, 2000.

[Hassouna and Farag 2005] M. Hassouna and A. A. Farag.Robust centerline extraction framework using level sets.In Comp. Vision and Pattern Recog., pages 458–465.IEEE, 2005.

[Palagyi and Kuba 1999] K. Palagyi and A. Kuba. A paral-lel 3D 12-subiteration thinning algorithm. Graph. Mod-els and Image Proc., 61(4):199–221, 1999.

[Schirmacher et al. 1998] H. Schirmacher, M. Zockler,D. Stalling and H.-C. Hege. Boundary surface shrink-ing: a continuous approach to 3D center line extraction.In Image and Multidimensional Digital Signal Process-ing, pages 25–28. IEEE, 1998.

[Shaked and Bruckstein 1998] D. Shaked and A. Bruck-stein. Pruning medial axis. Comp. Vision and ImageUnderstanding, 69(2):156–169, 1998.

[Sharf et al. 2006] A. Sharf, T. Lewiner, A. Shamir,L. Kobbelt and D. Cohen-Or. Competing fronts forcoarse-to-fine surface reconstruction. Computer Graph-ics Forum, 25(3):389–398, 2006.

[Wu et al. 2003] F.-C. Wu, W.-C. Ma, P.-C. Liou, R.-H.Laing and M. Ouhyoung. Skeleton extraction of 3Dobjects with visible repulsive force. In Pacific Graphics,pages 409–413. IEEE, 2003.

[Zhou and Toga 1999] Y. Zhou and A. Toga. Efficientskeletonization of volumetric objects. Transactions onVisualization and Computer Graphics, 5(3):196–209,1999.

Deformation Skeleton Filteringfoot 0.7 secs. 0.4 secs. 0.1 secs.woman 4.9 secs. 3.5 secs. 0.4 secs.horse 1.7 secs. 1.2 secs. 0.2 secs.multi-torus 1.0 secs. 0.6 secs. 0.3 secs.hand 0.5 secs. 0.1 secs. 0.2 secs.CAD 1.9 secs. 1.2 secs. 0.1 secs.dragon 8.6 secs. 6.1 secs. 2.3 secs.

Table 1: Computation time on a Pentium IV 1GHz / 1Gb.

Figure 9: Skeleton extraction for a complex CAD mesh.

Preprint MAT. 03/07, communicated on February 10th, 2007 to the Department of Mathematics, Pontifıcia Universidade Catolica — Rio de Janeiro, Brazil.