IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 33, NO. 8, PAGE 1502-1517, AUGUST 2011 10Fig. 17. The <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams <str<strong>on</strong>g>of</str<strong>on</strong>g> 30 r<str<strong>on</strong>g>and</str<strong>on</strong>g>omly generated points <strong>on</strong> different models <str<strong>on</strong>g>of</str<strong>on</strong>g> genus-r, r ≥ 1. The statisticaldata is summarized in Table 1.5.4 ExperimentsWe test the proposed algorithms <strong>on</strong> diverse triangulatedsurfaces which are chosen from two classes. The firstclass c<strong>on</strong>tains shapes with simple topological types (Figure16) <str<strong>on</strong>g>and</str<strong>on</strong>g> the sec<strong>on</strong>d c<strong>on</strong>tains topologically complexshapes (Figure 17). All the shapes in two classes havethe triangle numbers ranging from 3, 000 to 10, 000. Foreach shape, using the r<str<strong>on</strong>g>and</str<strong>on</strong>g>om point sampling methodpresented in Secti<strong>on</strong> 6.3, thirty points are sampled <str<strong>on</strong>g>and</str<strong>on</strong>g>used as the point set P to generate the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagramV D(P ). The <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams <str<strong>on</strong>g>of</str<strong>on</strong>g> different numbers <str<strong>on</strong>g>of</str<strong>on</strong>g>samples <strong>on</strong> a genus-1 cat model, are shown in Figure18. The performance data <str<strong>on</strong>g>of</str<strong>on</strong>g> output <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagramsare summarized in Tables 1 <str<strong>on</strong>g>and</str<strong>on</strong>g> 2. The running timeis measured <strong>on</strong> a laptop with Intel Core 2 Duo CPUrunning at 2.13GHz.Our first observati<strong>on</strong> is drawn from the sphere modelin Figure 16. Although the exact bisector <str<strong>on</strong>g>of</str<strong>on</strong>g> two sphericalpoints is a great circle <strong>on</strong> an ideal sphere, triangulatedspherical surfaces <strong>on</strong>ly provide a linear approximati<strong>on</strong>:induced from Definiti<strong>on</strong> 5, each bisector <strong>on</strong> a triangulatedsurface c<strong>on</strong>sists <str<strong>on</strong>g>of</str<strong>on</strong>g> hyperbolic <str<strong>on</strong>g>and</str<strong>on</strong>g> line segments, <str<strong>on</strong>g>and</str<strong>on</strong>g>it may not be tangent c<strong>on</strong>tinuous at break points.Define the combinatorial complexity <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g>diagram to be the total number <str<strong>on</strong>g>of</str<strong>on</strong>g> point sites, bisectors<str<strong>on</strong>g>and</str<strong>on</strong>g> branch points. If a sufficiently dense sampling P dense<strong>on</strong> S is used, the V D(P dense ) will behave locally as forthe Euclidean plane case in which the complexity is Θ(n)(See [52] for a detailed discussi<strong>on</strong> <strong>on</strong> dense sampling <str<strong>on</strong>g>and</str<strong>on</strong>g>the linear complexity). If a mild sampling is used, Tables1 <str<strong>on</strong>g>and</str<strong>on</strong>g> 2 empirically reveal that the V D(P ) complexity islinear: this can be explained by (1) each bisector can haveat most r + 1 distinct circles <strong>on</strong> a genus-r model 2 ; (2) theboundary <str<strong>on</strong>g>of</str<strong>on</strong>g> a <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> cell may not c<strong>on</strong>tain a branchpoint (see Definiti<strong>on</strong> 6).We measure the time complexity <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagramV D(P ) in an output-sensitive manner. The termcplx in Tables 1 <str<strong>on</strong>g>and</str<strong>on</strong>g> 2 is defined as 1000 × time secnum ptri,2. When using different graphics models, r could be different <str<strong>on</strong>g>and</str<strong>on</strong>g>we assume that r is small <str<strong>on</strong>g>and</str<strong>on</strong>g> less than a fixed integer.Fig. 18. The fr<strong>on</strong>t <str<strong>on</strong>g>and</str<strong>on</strong>g> side views <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams<strong>on</strong> the cat model with 60, 75 <str<strong>on</strong>g>and</str<strong>on</strong>g> 90 r<str<strong>on</strong>g>and</str<strong>on</strong>g>om samples,respectively. The statistic data is summarized in Table 2.where time sec is the running time measured in sec<strong>on</strong>d<str<strong>on</strong>g>and</str<strong>on</strong>g> num ptri is the number <str<strong>on</strong>g>of</str<strong>on</strong>g> <str<strong>on</strong>g>of</str<strong>on</strong>g> triangles passed by theV D(P ) boundaries. In Table 2, exp is defined as 8 × cplx √ s,where s is the number <str<strong>on</strong>g>of</str<strong>on</strong>g> r<str<strong>on</strong>g>and</str<strong>on</strong>g>om sample points. Theresults show√that our marching algorithm is empiricallyO(num ptri s) for preprocessed meshes, i.e., linear to thenumber <str<strong>on</strong>g>of</str<strong>on</strong>g> triangles passed by bisectors <str<strong>on</strong>g>and</str<strong>on</strong>g> increasewith the number <str<strong>on</strong>g>of</str<strong>on</strong>g> samples with exp<strong>on</strong>ential rate 0.5.6 APPLICATIONSGeodesic-metric-based <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams reveal an intrinsicstructure <str<strong>on</strong>g>of</str<strong>on</strong>g> point sites <strong>on</strong> triangulated surfaces
IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 33, NO. 8, PAGE 1502-1517, AUGUST 2011 11model tri no bh pt bs no bk pt time(sec) cplxsphere 4,074 54 81 558 11.9 + 0.55 0.574shark 3,412 53 81 523 14.47 + 0.98 0.592tooth 5,036 50 75 648 20.31 + 0.57 0.604penguin 4,416 56 84 613 17.6 + 0.61 0.596dinosaur 3,433 48 74 570 11.68 + 0.48 0.556horse 3,212 52 80 497 9.89 + 0.48 0.606sharp 4,680 50 78 642 20.11 + 0.54 0.548tri-dome 7,824 72 108 1,141 42.25 + 1.17 0.679cat 10,960 58 87 1,117 55.67 + 0.98 0.611cup 8,400 62 93 1,034 52.37 + 0.95 0.632part 4,272 68 102 626 14.73 + 0.70 0.651TABLE 1The complexity (number <str<strong>on</strong>g>of</str<strong>on</strong>g> triangles, branch points,bisectors, break points <str<strong>on</strong>g>and</str<strong>on</strong>g> time in sec<strong>on</strong>ds) <str<strong>on</strong>g>of</str<strong>on</strong>g> the<str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams <strong>on</strong> diverse shapes, shown in Figures16 <str<strong>on</strong>g>and</str<strong>on</strong>g> 17. The time is measured in two parts, fordistance field c<strong>on</strong>structi<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagramc<strong>on</strong>structi<strong>on</strong>, respectively. See Sec. 5.4 for cplx.samples branch pt bisector no break pt cplx exp15 28 42 851 0.436 0.90130 58 87 1,117 0.614 0.89745 90 135 1,265 0.793 0.94560 118 177 1,449 0.96 0.99175 148 222 1,576 1.117 1.03290 174 261 1,705 1.196 1.009TABLE 2The complexity <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams <strong>on</strong> the cat modelshown in Figure 18, with different sample points. SeeSec. 5.4 for exp.M. Below we present three applicati<strong>on</strong>s that show thepower <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagrams <strong>on</strong> M as a basic tool inpattern analysis.6.1 Geodesic RemeshingNowadays 3D rec<strong>on</strong>structi<strong>on</strong> from range data <str<strong>on</strong>g>of</str<strong>on</strong>g>ten producesdense triangle meshes with n<strong>on</strong>-uniform triangleaspect ratio [16]. For many applicati<strong>on</strong>s, partial differentialequati<strong>on</strong>s need to be solved <strong>on</strong> these triangulatedsurfaces M [57]. To achieve better numerical precisi<strong>on</strong>,it is <str<strong>on</strong>g>of</str<strong>on</strong>g>ten required to remesh M into M ′ such that thetriangles in M ′ are as close as possible to equilateraltriangles.To uniformly sample the surface M, farthest pointsamples are used [15], [47]. Given a set <str<strong>on</strong>g>of</str<strong>on</strong>g> samplesP = {p 1 , p 2 , · · · , p m } <strong>on</strong> M, we define the dispersi<strong>on</strong> inP byδ(P ) = sup{minD p(x)}x∈S p∈Pwhere D p (x) is the geodesic distance between p <str<strong>on</strong>g>and</str<strong>on</strong>g> x. T<str<strong>on</strong>g>of</str<strong>on</strong>g>ind a new sample p m+1 that minimizes the dispersi<strong>on</strong>δ(P ∪ p m+1 ), the positi<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> p m+1 must be at <strong>on</strong>e <str<strong>on</strong>g>of</str<strong>on</strong>g> thebranch points <str<strong>on</strong>g>of</str<strong>on</strong>g> V D(P ) or lie <strong>on</strong> the bisector whichdoes not end at branch points. This property dramaticallyreduces the search space in M. Starting from anarbitrary sample, more samples are added <strong>on</strong>e by <strong>on</strong>eFig. 19. Geodesic remesh <str<strong>on</strong>g>of</str<strong>on</strong>g> a tooth model. The first rowshows two views <str<strong>on</strong>g>of</str<strong>on</strong>g> uniform samplings (red points) <strong>on</strong> anoriginal mesh. The sec<strong>on</strong>d row shows the remesh withthe uniform samples.by incrementally updating the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagram. Leib<strong>on</strong><str<strong>on</strong>g>and</str<strong>on</strong>g> Letscher [36] show that if the samples are sufficientlydense, the dual triangulati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> the <str<strong>on</strong>g>Vor<strong>on</strong>oi</str<strong>on</strong>g> diagram <strong>on</strong>M exists <str<strong>on</strong>g>and</str<strong>on</strong>g> thus <str<strong>on</strong>g>of</str<strong>on</strong>g>fers us a soluti<strong>on</strong> to the geodesicremeshing problem. An example is shown in Figure 19.Peyre <str<strong>on</strong>g>and</str<strong>on</strong>g> Cohen [54] presented an approach similar toours, but used an approximate geodesic metric which iscomputed by Kimmel <str<strong>on</strong>g>and</str<strong>on</strong>g> Sethian’s fast marching algorithm[29]. Since the original meshes can have extremelyslivered triangles before remeshing, the numerical fastmarching methods might be c<strong>on</strong>taminated by numericalerrors, while our method is more accurate <str<strong>on</strong>g>and</str<strong>on</strong>g> robust 3since we use the exact geodesic metric.6.2 Tree Skelet<strong>on</strong> Extracti<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> Classificati<strong>on</strong>Skelet<strong>on</strong>s <str<strong>on</strong>g>of</str<strong>on</strong>g> 3D articulated models reveal rich topologicalinformati<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> play an important role in patternrecogniti<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> computer animati<strong>on</strong>. Many elegantmathematical tools have been investigated for extractingskelet<strong>on</strong>s from 3D models, including medial axis, shockgraphs, Reeb graphs with Morse functi<strong>on</strong>s, etc [17], [58].Despite the novelties in these tools, the resulting skelet<strong>on</strong>sdo not take the full advantage <str<strong>on</strong>g>of</str<strong>on</strong>g> visi<strong>on</strong> percepti<strong>on</strong><str<strong>on</strong>g>and</str<strong>on</strong>g> are not visually simple. E.g., mixed 1D <str<strong>on</strong>g>and</str<strong>on</strong>g> 2D celltypes appear in the medial axis/surface <str<strong>on</strong>g>of</str<strong>on</strong>g> 3D objects<str<strong>on</strong>g>and</str<strong>on</strong>g> are sensitive to tiny noises <strong>on</strong> surfaces [20].Observing that the human visi<strong>on</strong> system is able toinfer visually simple skelet<strong>on</strong>s with full functi<strong>on</strong>ality,3. To robustly h<str<strong>on</strong>g>and</str<strong>on</strong>g>le the degenerate cases arisen in numericalcomputati<strong>on</strong> <str<strong>on</strong>g>of</str<strong>on</strong>g> our c<strong>on</strong>structive algorithms, we use the toolkit proposedin [39], which classifies <str<strong>on</strong>g>and</str<strong>on</strong>g> h<str<strong>on</strong>g>and</str<strong>on</strong>g>les degeneracies in two types:degeneracies <strong>on</strong> geometric intersecti<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> degeneracies <strong>on</strong> geodesicdisc<strong>on</strong>tinuities.