Content uploaded by Kathryn Leonard

Author content

All content in this area was uploaded by Kathryn Leonard on Mar 11, 2019

Content may be subject to copyright.

The propagated skeleton:

a robust detail-preserving approach

B. Durix1, S. Chambon1, K. Leonard2, J.-L. Mari3, and G. Morin1

1IRIT-University of Toulouse, CNRS, France

2Occidental College, Los Angeles, CA, USA

3Aix Marseille Univ, Universite de Toulon, CNRS, LIS, Marseille, France

Abstract. A skeleton is a centered geometric representation of a shape

that describes the shape in a simple and intuitive way, typically reducing

the dimension by at least one. Skeletons are useful in shape analysis and

recognition since they provide a framework for part decomposition, are

stable under topology preserving deformation, and supply information

about the topology and connectivity of the shape. The main drawback

to skeletonization algorithms is their sensitivity to small boundary per-

turbations: noise on a shape boundary, such as pixelation, will produce

many spurious branches within a skeleton. As a result, skeletonizations

often require a second pruning step. In this article, we propose a new

2D skeletonization algorithm that directly produces a clean skeleton for

a shape, avoiding the creation of noisy branches. The approach propa-

gates a circle inside the shape, maintaining neighborhood-based contact

with the boundary and bypassing boundary oscillations below a chosen

threshold. By explicitly modeling the scale of noise via two parame-

ters that are shape-independent, the algorithm is robust to noise while

preserving important shape details. Neither preprocessing of the shape

boundary nor pruning of the skeleton is required. Our method produces

skeletons with fewer spurious branches than other state-of-the-art meth-

ods, while outperforming them visually and according to error measures

such as Hausdorﬀ distance and symmetric diﬀerence, as evaluated on the

MPEG-7 database (1033 images).

1 Introduction

A skeleton is an internal structure that describes a shape, deﬁned by the centers

of the maximally inscribed balls enclosed within the shape. The set of circle

centers and radii gives the medial axis, which completely describes the shape [5].

Because the skeleton can be represented by a graph where each edge represents

a feature of the shape, it is useful in applications such as shape analysis and

pattern recognition [18, 20, 4,22, 12]. To be useful in such applications, the skele-

ton should possess certain properties: centeredness within the shape, thinness,

topological equivalence with the shape, and completeness. It should also be ro-

bust to noise. The noise property is one of most diﬃcult to respect, requiring a

distinction between noise and details of the shape. We propose a skeletonization

2 B. Durix et al.

method that possesses the above properties, and that is robust to noise on the

shape boundary.

Many skeletonization methods have been proposed [16]. Three common cat-

egories of computing a skeleton from a discrete structure are:

–Thinning methods that use a morphological operator on a binary shape,

–Distance map methods that consider the distance to the boundary,

–Methods based on the Vorono¨ı diagram of points on the shape boundary.

Thinning methods erode shape pixels in 2D [9] or voxels in 3D [6] according

to speciﬁc rules and criteria. The resulting skeleton is a 1-pixel-wide structure.

We refer to [21] for a survey of these methods. Unfortunately, the resulting

skeleton lies on a 1-pixel-wide grid centered only up to a pixel size, thereby

inducing a loss of precision. Furthermore, the radius is not directly computed.

In contrast, our proposed skeletonization produces a structure not constrained

by the grid, and gives the radius for each skeletal point.

Distance maps are deﬁned as the minimal distance between a point and

the shape boundary . The singularities of the distance map generate a skeleton.

One distance map skeleton uses an active contour evolving inside the shape, fol-

lowing the gradients of the distance transform [13] until the fronts from opposite

sides of the shape meet at the skeleton. One drawback to this method is that the

structure of the skeleton depends on the local speed of the active contour, which

is a function of the local curvature. Another distance map approach computes

singularities of the distance transform using image based-methods, then esti-

mates connectivity of the medial axis [15]. Because the distance map is discrete

on a discrete image, its singularities can only be computed up to a convolution

operator. The choice of this operator is crucial, and can create arbitrarily large

branches due to noise. Although our method also uses a distance map, its main

principle is to follow the boundary of the shape, which, consequently, makes it

more robust to noise.

Vorono¨ı skeletonization is the most popular method for computing a skele-

ton. Introduced by Ogniewicz [14] et al., the interior edges of the Vorono¨ı diagram

of a discrete boundary represent the skeleton. This method is popular because

it is eﬃcient and precise. Unfortunately, the resulting skeleton usually includes

many uninformative branches and is therefore unnecessarily complex (cf. Fig-

ure 1(a)). For more on stability, see [3]. In 3D, the complexity is compounded,

which has led to methods such as the power crust [2] to extract a simpler struc-

ture. Once a skeleton is computed, most approaches require a second step to

prune noise. We next present pruning methods, and then describe approaches

to generate a clean skeleton without pruning.

Pruning methods remove noisy portions of a skeleton after computation.

Usually, a criterion is evaluated at each skeletal point to determine if that point

should be removed. We present three popular pruning approaches. The λ-medial

axis [7], with parameter λ, removes a skeletal point if the point’s circle intersects

the boundary at tangency points that are contained in a circle of radius λ. The

θ-homotopy medial axis [19], with parameter θ, evaluates the angle between the

center of the skeletal circle and the tangency points on the boundary. If the angle

The propagated skeleton: a robust detail-preserving approach 3

is less than θ, then the associated skeletal point is removed. Finally, the scale-

axis-transform (SAT) [8] grows each skeletal circle by a multiplicative factor

s, then computes a skeleton from the new shape. The circles generating the

new skeleton are then reduced using the multiplicative factor 1/s. A variant of

SAT that ensures homotopy equivalence with the boundary grows all circles by

the factor sand removes grown circles that are contained inside another grown

circle. These three methods have the similar drawbacks. First, the homotopy

of the pruned skeleton can not be guaranteed, except for SAT variant and the

λ-medial axis, for which the connectivity of the skeleton is ensured only if λis

lower than the smallest radius of its skeleton. Second, the choice of the parameter

is diﬃcult and often must be tuned to each shape. Finally, no distinction can be

made between noise and small shape details, which means that desirable features

of the shape may be pruned away (cf. Figures 1(c) and 1(d)).

Directly computing a clean skeleton is an appealing alternative, with two

main approaches. The ﬁrst approach includes a pruning criterion within the

skeletonization. For example, Digital Euclidean Connected Skeleton (DECS) [11]

combines the ridges of the distance map and the centers of the maximal balls to

obtain a skeleton on a grid of pixels (cf. Figure 1(e)). As with thinning methods,

the resulting skeleton has the width of one pixel. Furthermore, this method

returns a skeleton that tends to be irregular. The second approach modiﬁes the

boundary itself, as in the circular boundary representation [1]. The resulting

skeleton avoids many noisy branches, but the construction is complicated: the

conversion of the boundary into arcs requires that the boundary be represented

by polynomial splines which are then converted into circular arcs based on a

chosen parameter. In contrast, our method uses the information of the discrete

boundary directly without preprocessing.

We propose a new skeletonization method that directly produces a clean

skeleton (cf. Figure 1(f)) from boundaries aﬀected by noise. Two common types

of noise are pixelation noise resulting from the rasterization of the shape, and

Gaussian noise on the boundary. In 2D, because most shapes are extracted from

binary shape images, we focus here on rasterization noise. Our method propa-

gates a circle inside the shape, ensuring continuous contact along the boundary.

This ”growing approach” has previously been applied only for grid-constrained

skeletons [17]. By taking into account the scale of the rasterization noise, we can

avoid creating noisy branches. Our method draws from distance map skeletons,

searching for singularities of a distance map, and Vorono¨ı skeletons, computing

the connectivity of the skeleton directly from the boundary. The method gener-

ates a clean skeleton a priori and does not require a pruning step. Contributions

of our method are twofold: we explicitly avoid noise on the boundary, and we

capture salient geometric information with fewer branches.

Section 2 describes our method, and Section 3 compares our method with the

most common skeletonization approach, the Vorono¨ı skeletonization [14], pruned

by scale-axis-transform [8], λ-medial axis [7] and θ-homotopy medial axis [19].

We also compare with DECS [11].

4 B. Durix et al.

(a) Skeletons com-

puted by a Vorono¨ı

method

(b) s= 1.7 (c) λ= 9

(d) θ= 90o(e) Skeletons computed with

DECS

(f) Skeletons computed by our method, without chang-

ing the parameters

Fig. 1. Illustration of the limits of Vorono¨ı skeletonization (a), the pruning methods

(scale-axis-transform (b), λ-medial axis (c), θ-homotopy medial axis (d)), and DECS

(e), and the advantages of ours (f ). Green parts correspond to the reconstructed shape,

and red parts show what has been lost. Vorono¨ı (a) skeletons are noisy, requiring prun-

ing. Some pruning methods struggle to diﬀerentiate between noise and shape details,

and parts can be lost while noisy branches are preserved (b),(c). Others have shape

dependent parameters (d). The DECS method returns a skeleton that is simple, but

it tends to miss some parts, and be irregular. Our method (f ) distinguishes between

noise and details with parameters depending only on the scale of the noise.

2 Propagating skeletons

We consider a shape characterized by a matrix of pixels (from a binary image, for

example), S∈ Mh,l({0; 1}), with hthe height of the image, and lits width. We

extract a piecewise linear contour Bfrom the shape pixels. From the boundary

contour, we construct a skeleton represented by a graph whose vertices corre-

spond to centers of skeletal balls and whose edges give connectivity information,

consistent with boundary connectivity, without branches generated by pixela-

The propagated skeleton: a robust detail-preserving approach 5

tion noise. Following the philosophy of the Vorono¨ı skeleton, where vertices are

centers of maximally inscribed bitangent balls, we propagate circles inside the

shape ensuring continuous contact with the boundary on at least two sides.

Before describing the complete algorithm in Section 2.4, we present some

necessary tools. Section 2.1 deﬁnes a smooth distance estimation (SDE), used

to compute a smoothed radius of skeletal circles. Section 2.2 explains the notion

of a contact set, a key construction for robustness to noise. Finally, Section 2.3

describes the circle propagation principle that determines neighbors of a circle

given its contact sets and the SDE.

2.1 Smooth distance estimation (SDE)

In this section, we consider a rasterized boundary. Typically, radius estimation

measures the minimal Euclidean distance to a point on the contour for each point

in the interior of the shape. This leads to poor radius estimates for rasterized

boundaries, as shown in Figure 2(a).

(a) (b) (c)

Fig. 2. The limitations of the Euclidean distance function compared to our proposed

distance function. (a) The black circle, with center represented by a cross, is rasterized,

giving the blue boundary: each pixel is considered inside the binary shape if its center

is in the black circle.. The red circle has same center as the black circle with radius

given by the minimum Euclidean distance to a point of the contour. As the radius of

the blue circle is less than that of the black circle, the Euclidean estimation of the

radius is incorrect. (b) Estimated circle from the SDE, for several values of σ. In (c),

the arrows indicate from top to bottom: •the original circle (r= 10), •the circle

associated with σ= 1 (r= 9.89), •the circle associated with σ= 0.5 (r= 9.55), •the

circle associated with the classic distance function (r= 9.51). When σapproaches 0,

the radius of the circle converges to the radius from the Euclidean distance function.

To improve radius estimation, we consider more than one boundary point to

construct a smoothed version of the Euclidean distance:

dB(P) = min

B∈B kP−Bk.

6 B. Durix et al.

The proposed distance adds a weight to points on the boundary to capture their

relative importance to the particular circle being computed:

fB,σ(P) = X

B∈B

pB,σ(P , B)kP−Bk

X

B∈B

pB,σ(P , B),

where pB,σ(P , B) is a weight assigned to the point Bof the boundary. To deter-

mine the weight, we consider the distance between Band the circle C(P, ρ) with

ρ=dB(P). The larger the distance, the less inﬂuential the point should be. In

other words, the weight function should decrease rapidly as distance to the circle

increases. A semi-normal distribution with parameter σﬁts these requirements:

Pσ(t0≥0) = 2

σ√2πZ+∞

t0

e−t2

2σ2dt .

The inﬂuence of each boundary point Bon Pis then given by:

pB,σ(P , B) = Pσ(dC(P, B)),withdC(P , B) = kP−Bk − dB(p).

The behavior of the function, illustrated in Figure 2, is related to the values

of the parameter σ. For σ= 0, fB,σ is equal to the Euclidean distance. This

function is also used to identify an initial point of the skeleton. To estimate a

ﬁrst point P0, we randomly choose a point Q0inside the shape, then maximize

the function fB,σ(P , Q0). Any local maximum is a singular point of the function

fB,σ and will therefore be a skeletal point. Once P0is estimated, we identify its

contact set and begin propagation. We deﬁne contact set in the next section.

2.2 Contact between the circle and the shape

We now deﬁne the contact set between a circle C(P, ρ), with center Pand radius

ρ=fB,σ(P), and the contour B. We consider the parameter σfrom fB,σ, and

introduce a new parameter, α, which deﬁnes the maximal distance from a point

to its associated circle. The contact set is the topological closure of boundary

points at a distance less than σto the circle together with points at a distance

less than αto the circle, as illustrated in Figure 3. A contact set corresponds to

consecutive boundary points where the ﬁrst and last points are at most σ, and

all points are at most α, from the skeleton point. The points in the contact set

are analogous to the bitangent contact points in the continuous model, denoting

a set of points “closest” to the skeletal point. The contact sets also determine

the directions in which the circle C(P, ρ) can propagate. The parameter αallows

us to avoid noise on the boundary while simultaneously maintaining topological

consistency of the skeleton with the boundary (cf. Figure 3).

The deﬁnition of contact sets in our algorithm serves two purposes: reducing

noise and maintaining topological equivalence to the shape. First, the contact

The propagated skeleton: a robust detail-preserving approach 7

α

σ

(a) (b)

Fig. 3. Contact sets for a skeletal point. In (a), we divide the area around the estimated

SDE circle into three parts, see (b) for details: the thick green part r+σ(where ris

the radius of the original circle), the thick orange part α−σ, and the outer part. If

only the green is taken into account, we ﬁnd 6 contact sets (in green, 3 at the top, 3

at the bottom). Adding the uncertainty zone using αmerges these into 2 contact sets

(blue lines), which prevents the creation of four noisy branches.

sets for a point designate the suitable directions for propagation without noise.

The value of α, chosen to distinguish between noise on the contour and details

of the shape, deﬁnes the maximum distance between a point of the contour and

the closest skeletal circle, which deﬁnes the Hausdorﬀ distance between the true

boundary and the approximated boundary produced by the skeleton. Second, as

two neighboring circles must have overlapping contact sets, we are guaranteed to

consider all points of the boundary, which guarantees the topological equivalence

between skeleton and boundary.

2.3 Circle propagation

After estimating contact sets associated to a point Pof the skeleton, we prop-

agate the circle between successive pairs of contact sets. To propagate between

two successive contact sets, T1and T2, we search for the farthest circle that main-

tains contact with points of T1and T2(cf. Figure 4). This produces a nested

loop, with one loop searching for the distance, i.e. the circular arc on which there

is the next circle, and the other searching for the angle, i.e. the position of the

center on the given circular arc.

The search region for the next point of the skeleton is the portion of the

circle between the last point A1of T1and the ﬁrst point A2of T2. For a given

distance d, less than the radius ρ=fB,σ(P) of the circle, we search for an angle

θdwhere fB,σ(Qd) is local maxima (with Qd=P+ (dcos(θd), d sin(θd))t). Not

every value of dcan describe a valid neighbor of P, since contact sets of the

neighbors must contain A1and A2. Using this property, we can validate, for

each d, the possibility of Qdas a neighbor of P. We select the highest value of

dso that Qdis a valid neighbor of P.

To estimate the value of θd, we take an initial interval θ1

0, θ2

0, where θi

0

designates the angle of Aion the circle, and, then, we decrease it with search by

8 B. Durix et al.

dichotomy. We compute the middle angle θibetween θ1

iand θ2

i. If the derivative

of gd(θ) = fB,σ(P+ (dcos(θ), d sin(θ))t) is positive on θi, we update the interval

to θi, θ2

i, otherwise we update to θ0

i, θi. The search stops when (θ2

i−θ1

i) is

less than a given threshold θ=0,01σ

ρ. The search for the distance dis done in a

similar way, up to a threshold d= 0,01σ. These thresholds could be chosen as

machine precision, but because the scale of noise on the boundary is σ, we can

stop the search when the distance given by each interval has less inﬂuence than

the noise.

Using this algorithm, we ﬁnd an approximation of a local skeleton around

the point P. The number of contact sets gives the degree of connectivity of the

skeleton at P. By construction, only the variations of the boundary more than

αfrom the circle are considered as new propagation directions. Finally, forcing

contact sets of any two successive circles to intersect guarantees that all the

points of the boundary are associated with at least one circle, and we produce a

connected skeleton. We summarize the complete algorithm in the next section.

(a) (b) (c)

Fig. 4. Propagation of a circle, for 2 contact sets in (a) and 3 contact sets in (b). In

(a), as the propagated circle comes from the left, we can propagate the red circle to

the right. The blue circle is validated when its contact sets (blue rectangles) intersect

the contact sets of the red circle (red rectangles). In the case of 3 contact sets (b), we

have two possible directions for the propagation, and both are explored. If there is a

small hole in the shape (c) that is completely covered by a contact set, the algorithm

still considers that the contact set has a beginning and end and will execute correctly.

2.4 Main algorithm

Algorithm 1 summarizes our approach, which uses two parameters, σand α

where σmodels the noise on the boundary and αgives a threshold on the

Hausdorﬀ distance between the shape modeled by the skeleton and the input

shape, in order to discriminate between noise and details on the shape. We have

chosen σ=√2/2'0.7 and α= 3√2/2'2.1 and these choices are explained in

Figure 5.

The algorithm ends when the list lcis empty. The algorithm can account

for loops in the skeleton: For each Qithat results from propagation of P, we

The propagated skeleton: a robust detail-preserving approach 9

α

σ

Fig. 5. Justiﬁcation of the choices of σand α.σmodels the rasterization of the bound-

ary, so it can vary from −√2/2 to +√2/2. Thus σ=√2/2. αmodels random noise:

if there is a 1-pixel error on the boundary (like for the red line), the maximal distance

between the boundary and the rasterized boundary is 3√2/2. Thus α= 3√2/2.

Algorithm 1: Propagating skeleton algorithm

Parameters: σ: Noise on the boundary

α>σ: Maximum distance to the shape generated by the skeleton

Data: S: Binary grid representing the shape

B: Boundary of the shape (with 4-adjacency connectivity)

Result: S: Shape skeleton

1Estimation of the point P0, local maxima of fB,σ (cf. Section 2.1)

2lc← {P0}

3while lc6=∅do

4Removing the ﬁrst element Pof lc

5Construction of C(P, fB,σ (P)), maximal circle with center Pand radius

fB,σ(P)

6Estimation of the tangency points between C(P, fB,σ(P)) and B, with noise

parameter σand maximal distance to the skeleton α(cf. Section 2.2)

7Estimation by propagation of Q1,...,Qnthe neighbor circles of

C(P, fB,σ (P)) (cf. Section 2.3)

8Checking for junctions between Q1,...,Qnand lc

9Adding Q1,...,Qn(not used in junction) in lc

10 end

check if there is a neighbor in the current center list lc. If so, we interrupt the

propagation from Qiand add a loop-closing edge.

The complexity is on the order of N2log2(S/d) log2(2π/θ), where Nis the

number of boundary points and Stheir maximum pairwise distance. Note that

the number of skeletal points is of the same order as the boundary points, and

that the cost of propagation is the cost of the nested loop and the distance

function. The complexity of the loop to search for the distance to the next

center is log2(dm/d), where dmis the maximal radius of a skeletal ball which

is bounded above by S. The complexity of the loop searching for the angle is

log2(θm/θ), where θmis the maximal angle between the extremities of two

contact sets, bounded above by 2π. The complexity of the SDE is of order N.

10 B. Durix et al.

We have described a skeletonization algorithm obtained by propagating cen-

ters of skeletal balls under the constraint that each circle maintains contact with

the boundary. The resulting skeleton is centered, thin, topologically equivalent

to the original shape, and complete. It is also robust to noise. In the next section,

we show skeletonization results and quantify the strengths of this method.

3 Results and evaluation

To evaluate our algorithm, we compare it to DECS [11], a grid-based method,

and to pruned versions of the classical Vorono¨ı skeletonization algorithm [14].

For pruning, we choose the three most common methods: scale-axis-transform

[8], λ-medial axis [7] and θ-homotopy medial axis [19].

We use three evaluation criteria. The ﬁrst is the Hausdorﬀ distance between

the initial shape and the shape reconstructed by the skeleton. This measures

the inﬂuence of the parameter α, which sets a maximum distance to the origi-

nal boundary. The second criterion measures the diﬀerence between the initial

surface Sand the reconstructed surface S0:

A(S∆S0)

A(S),

where A(S∆S0) is the area of the symmetric shape diﬀerence, and A(S) is the

area of the original shape. These criteria do not assess noise reduction, so our

third criterion counts the number of branches of the skeleton. Taken together,

we evaluate the simplicity of the considered skeleton in providing a given level of

shape ﬁdelity. We perform tests on 1033 images from the MPEG-7 images [10].

See Table 1 for the averages obtained for each of the criteria and methods.

3.1 Analysis of the results

Our method produces a simpler skeleton than the Vorono¨ı skeleton while main-

taining good shape ﬁdelity. The scale-axis-transform pruning and λ-medial axis,

in comparison, require many more branches to maintain a similar or lower ﬁ-

delity. The θ-homotopy medial axis maintains ﬁdelity with a reasonable number

of branches, but our method outperforms it in the Hausdorﬀ distance and pro-

duces a similar area diﬀerence with comparable number of branches. This shows

that our method prioritizes the most informative branches both globally and lo-

cally when compared to other Vorono¨ı-based methods. For certain shapes, such

as the stingray, this results in a signiﬁcant diﬀerence in shape quality. With simi-

lar numbers of branches, DECS gives better precision in terms of area diﬀerence,

but ours is better for Hausdorﬀ distance.

Computation time of our algorithm averages 982ms for the MPEG-7 dataset

on a i7-4800MQ CPU at 2.70GHz. By comparison, the mean computation for

the full Vorono¨ı is 47ms and ﬁltering with the scale-axis-transform takes between

451ms and 1118ms. The λ-medial axis takes around 86ms, and θ-medial axis

The propagated skeleton: a robust detail-preserving approach 11

Vorono¨ı skeletonization

All s λ θ DECS Ours

1.1 1.2 1.5 1 2 4 60o80o90o

Mean Hausdorﬀ (px) 02.2 3.3 8.31.02.1 6.8 2.5 4.9 7.5 8.12.0

Median Hausdorﬀ (px) 0 1.92.7 6.31.0 1.53.12.13.9 6.0 4.62.1

Mean Area (%) 3.0 3.1 3.44.43.0 2.9 3.7 3.3 3.94.72.6 4.1

Median Area (%) 2.2 2.5 2.84.12.1 2.1 2.5 2.73.5 4.22.1 3.2

Mean Branches 655 196 96 26 432 192 60 36 16 10 9 16

Median Branches 537 115 49 17 355 157 49 19 11 7 7 12

Table 1. Comparison between propagation skeletonization (with σ= 0.7 and α= 2.1),

Vorono¨ı skeletonization with three diﬀerent pruning methods and DECS [11] on 1033

images from [10]. Evaluation is done with three criteria: the Hausdorﬀ distance in

pixels, the area diﬀerence in percentages, and the number of branches. Red scores

indicate where our algorithm is better, and blue where others are, showing the relation

between the number of kept branches and the information lost.

takes between 788ms and 1171ms, depending on choices for their respective

parameters. The execution time of the DECS is 16ms.

We note the inﬂuence of the parameters σand α. Lower values for these

parameters produce more spurious branches, while higher values produce simpler

skeletons that are less accurate. These values can then be tuned appropriately

to image resolution or application.

4 Conclusion

We present a new skeletonization method that avoids creating uninformative

branches by explicitly modeling boundary noise. The method relies on two pa-

rameters that are straightforward to choose and do not require hand-tuning for

each shape: σ, the scale of noise on the boundary, and α, distinguishing between

noise and detail on the shape. We compare our method with the Vorono¨ı skele-

tonization pruned with three popular methods, and DECS. We provide quan-

titative evaluation showing that our method models the shape better in fewer

branches in terms of Hausdorﬀ distance.

This work could be extended quite naturally. We focus here on rasterized

shapes, but we can generalize our approach to boundary representations with

other types of noise. We can also accommodate lack of connectivity on the bound-

ary, such as for point clouds, by redeﬁning contact sets to recognize the directions

in which we can propagate. Finally, we can use a similar method to compute 3D

skeletons by propagation.

References

1. Aichholzer, O. and Aigner, W. and Aurenhammer, F. and Hackl, T. and J¨uttler,

12 B. Durix et al.

B. and Rabl, M. Medial axis computation for planar free-form shapes. Computer

Aided Design, 41(5):339–349, 2009.

2. Amenta, N. and Choi, S. and Kolluri, R. K. The Power Crust, Unions of Balls,

and the Medial Axis Transform. Computational Geometry, 19(2-3):127–153, 2001.

3. Attali, D. and Montanvert, A. Computing and Simplifying 2D and 3D Continuous

Skeletons. Computer Vision and Image Understanding, 67(3):261–273, 1997.

4. Bai, X. and Latecki, L. J. Path Similarity Skeleton Graph Matching. IEEE

Transactions on PAMI, 30(7):1282–1292, 2008.

5. Blum, H. A Transformation for Extracting New Descriptors of Shape. In

Symposium on Models for the Perception of Speech and Visual Form, 1967.

6. Borgefors, G. and Nystr¨om, I. and Sanniti di Baja, G. Computing skeletons in

three dimensions. Pattern Recognition, 32(7):1225–1236, 1999.

7. Chazal, F. and Lieutier, A. The λ-medial Axis. Graphical Models, 67(4):304–331,

2005.

8. Giesen, J. and Miklos, B. and Pauly, M. and Wormser, C. The Scale Axis Trans-

form. In Annual Symposium on Computational Geometry, 2009.

9. Lam, L. and Lee, S.-W. and Suen, C.Y. Thinning Methodologies - A Comprehen-

sive Survey. IEEE Transactions on PAMI, 14(9):869–885, 1992.

10. Latecki, L. J. and Lakamper, R. and Eckhardt, T. Shape descriptors for non-rigid

shapes with a single closed contour. In IEEE Conference on CVPR, 2000.

11. A. Leborgne, J. Mille, and L. Tougne. Noise-resistant digital euclidean connected

skeleton for graph-based shape matching. Journal of Visual Communication and

Image Representation, 31:165–176, 2015.

12. Leonard, K. and Morin, G. and Hahmann, S. and Carlier, A. A 2D shape structure

for decomposition and part similarity. In ICPR, 2016.

13. Leymarie, F. and Levine, M.D. Simulating the grassﬁre transform using an active

contour model. IEEE Transactions on PAMI, 14(1):56–75, 1992.

14. Ogniewicz, R. and Ilg, M. Voronoi skeletons: Theory and applications. In IEEE

CVPR, 1992.

15. M. Rumpf and A. Telea. A continuous skeletonization method based on level sets.

In Proceedings of the symposium on Data Visualisation, 2002.

16. Saha, P. K. and Borgefors, G. and Sanniti di Baja, G. A survey on skeletonization

algorithms and their applications. Pattern Recognition Letters, 76(Supplement

C):3–12, 2015.

17. Shen, W. and Bai, X. and Hu, R. and Wang, H. and Latecki, L. J. Skeleton growing

and pruning with bending potential ratio. Pattern Recognition, 44(2):196 – 209,

2011.

18. Siddiqi, K. and Shokoufandeh, A. and Dickinson, S. J. and Zucker, S. W. Shock

Graphs and Shape Matching. International Journal of Computer Vision, 35(1):13–

32, 1999.

19. Sud, A. and Foskey, M. and Manocha, D. Homotopy-preserving Medial Axis Sim-

pliﬁcation. In ACM Symposium on Solid and Physical Modeling, 2005.

20. Sundar, H. and Silver, D. and Gagvani, N. and Dickinson, S. Skeleton based shape

matching and retrieval. In Shape Modeling International, 2003.

21. Vincze, M. and K˝ov´ari, B. A. Comparative survey of thinning algorithms. In

International Symposium of Hungarian Researchers on Computational Intelligence

and Informatics, 2009.

22. Y. Xu, B. Wang, W. Liu, & Bai, X. Skeleton Graph Matching Based on Critical

Points Using Path Similarity. In Asian Conference on Computer Vision, 2010.