ArticlePDF Available

Abstract and Figures

In this paper, we introduce a new skeleton pruning method based on contour partitioning. Any contour partition can be used, but the partitions obtained by Discrete Curve Evolution (DCE) yield excellent results. The theoretical properties and the experiments presented demonstrate that obtained skeletons are in accord with human visual perception and stable, even in the presence of significant noise and shape variations, and have the same topology as the original skeletons. In particular, we have proven that the proposed approach never produces spurious branches, which are common when using the known skeleton pruning methods. Moreover, the proposed pruning method does not displace the skeleton points. Consequently, all skeleton points are centers of maximal disks. Again, many existing methods displace skeleton points in order to produces pruned skeletons.
Content may be subject to copyright.
Skeleton Pruning by Contour Partitioning
with Discrete Curve Evolution
Xiang Bai, Longin Jan Latecki, Member,IEEE Computer Society, and Wen-Yu Liu
Abstract—In this paper, we introduce a new skeleton pruning method based on contour partitioning. Any contour partition can be
used, but the partitions obtained by Discrete Curve Evolution (DCE) yield excellent results. The theoretical properties and the
experiments presented demonstrate that obtained skeletons are in accord with human visual perception and stable, even in the
presence of significant noise and shape variations, and have the same topology as the original skeletons. In particular, we have proven
that the proposed approach never produces spurious branches, which are common when using the known skeleton pruning methods.
Moreover, the proposed pruning method does not displace the skeleton points. Consequently, all skeleton points are centers of
maximal disks. Again, many existing methods displace skeleton points in order to produces pruned skeletons.
Index Terms—Skeleton, skeleton pruning, contour partition, discrete curve evolution.
Ç
1INTRODUCTION
THE skeleton is important for object representation and
recognition in different areas, such as image retrieval
and computer graphics, character recognition, image
processing, and the analysis of biomedical images [1].
Skeleton-based representations are the abstraction of ob-
jects, which contain both shape features and topological
structures of original objects. Because of the skeleton’s
importance, many skeletonization algorithms have been
developed to represent and measure different shapes. Many
researchers have made great efforts to recognize the generic
shape by matching skeleton structures represented by
graphs or trees [2], [3], [4], [29], [30], [31], [36]. Unfortu-
nately, these approaches have only demonstrated an
applicability to objects with simple and distinctive shapes
and, therefore, cannot be applied to more complex shapes
like shapes in the MPEG-7 data set [37]. The most
significant factor constraining the matching of skeletons is
the skeleton’s sensitivity to an object’s boundary deforma-
tion: little noise or a variation of the boundary often
generates redundant skeleton branches that may seriously
disturb the topology of the skeleton’s graph. For example,
the skeleton in Fig. 1a has many redundant skeleton
branches generated by boundary noise.
To overcome a skeleton’s instability of boundary
deformation, a variety of techniques have been suggested
for matching and recognizing shapes. Zhu and Yuille [29]
generate more than one possible skeleton graph to over-
come unreliability. A similar shape descriptor based on the
self-similarity of a smooth outline is presented in [30]. Aslan
and Tari [31] posit an unconventional approach to shape
recognition using unconnected skeletons in the course level.
While their approach leads to stable skeletons in the
presence of boundary deformations, only rough shape
classification can be performed since the obtained skeletons
do not represent any shape details.
The most common approaches to overcome skeleton
instability are based on skeleton pruning, (i.e., eliminating
redundant skeleton branches). Pruning can either be
performed implicitly as a post processing step or implicitly
integrated in the skeleton computation. However, none of
the existing skeleton pruning methods yields satisfactory
results without user interaction. Before describing the
existing skeleton pruning approaches, we characterize the
desirable properties of skeletons. The skeleton of a single
connected shape that is useful for skeleton-based recogni-
tion should have the following properties:
1. it should preserve the topological information of the
original object,
2. the position of the skeleton should be accurate,
3. it should be stable under small deformations,
4. it should contain the centers of maximal disks, which
can be used for reconstruction of original object,
5. it should be invariant under Euclidean transforma-
tions such as rotations and translations, and
6. it should represent significant visual parts of objects.
The main goal of this paper is to present a method that
extracts the exact skeleton with a new skeleton-pruning
method and which will achieve all the above properties. No
existing method can provide a skeleton with all these
properties. Our proposed method is easy to implement and
can be computed efficiently.
The following is a brief overview of skeletonization and
skeleton-pruning approaches. The skeletonization algo-
rithms can broadly be classified into four types:
.The first type is thinning algorithms, such as those
with shape thinning and the wave front/grassfire
transform[8],[9],[10],[34].Thesealgorithms
IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007 449
.X. Bai and W.-Y. Liu are with the Department of Electronics and
Information, Engineering, Huazhong University of Science and Technol-
ogy, N1 Hall, D425, HUST, Luoyu Road 1043, Wuhan, Hubei, China,
430074. E-mail: baihouxiang@hotmail.com, liuwy@hust.edu.cn.
.L.J. Latecki is with the Department of Computer and Information Sciences,
Temple University, 1805 North Broad Street, Philadelphia, PA 19122.
E-mail: latecki@temple.edu.
Manuscript received 25 Oct. 2005; revised 20 Apr. 2006; accepted 5 July 2006;
published online 15 Jan. 2007.
Recommended for acceptance by R. Basri.
For information on obtaining reprints of this article, please send e-mail to:
tpami@computer.org, and reference IEEECS Log Number TPAMI-0573-1005.
0162-8828/07/$25.00 ß2007 IEEE Published by the IEEE Computer Society
iteratively remove border points, or move to the
inner parts of an object in determining an object’s
skeleton. These methods usually preserve the
topology of the original object with many redun-
dant branches, but they are quite sensitive to noise
and often fail to localize the accurate skeletal
position. In addition, it is important to determine
a good stop criterion of this iterative process.
.The second type is the category of discrete domain
algorithmsbased on theVoronoi diagram [5],[12], [27],
[28]. These methods search the locus of centers of the
maximal disks contained in the polygons with vertices
sampled from the boundary. The exact skeleton can be
extracted as the sampling rate increases, but the time
of computation is usually prohibitive. The obtained
skeleton is extremely sensitive to local variance
and boundary noise, so that complicated skeleton
bunches need to be pruned [5], [28].
.The third type of algorithms is to detect ridges in a
distance map of the boundary points [7], [10], [11],
[13], [19], [33], [35]. Approaches based on distance
maps usually ensure accurate localization but neither
guarantees connectivity nor completeness [7], [13].
Under the completeness, the skeleton branches
representing all significant visual parts are present (6).
.The fourth type of algorithms is based on mathe-
matical morphology [22], [24], [25], [26]. Usually,
these methods can localize the accurate skeleton
[24], but may not guarantee the connectivity of the
skeleton [22].
All of the obtained skeletons are subjected to the
skeleton’s sensitivity and many of them also include
pruning methods along with the skeletonization. As an
essential part of skeletonization algorithms, skeleton
pruning algorithms usually appear in a variety of
application-dependent formulations [20]. There are two
main pruning methods: 1) based on significance measures
assigned to skeleton points [5], [6], [7], [20], [28] and
2) based on boundary smoothing before extracting the
skeletons [20], [38], [39]. In particular, curvature flow
smoothing still has some significant problems that makes
the position of skeletons shift and have difficulty in
distinguishing noise from low frequency shape informa-
tion on boundaries [20]. A different kind of smoothing is
proposed in [14]. Great progress has been made in the
type 1) of pruning approaches that define a significance
measure for skeleton points and remove points whose
significance is low. Shaked and Bruckstein [20] give a
complete analysis and compare such pruning methods.
Propagation velocity, maximal thickness, radius function,
axis arc length, and the length of the boundary unfolded
belong to the common significance measures of skeleton
points. Ogniewicz and Ku
¨bler [5] present a few signifi-
cance measures for pruning complex Voronoi skeletons
without disconnecting the skeletons. Siddiqi et al. combine
a flux measurement with the thinning process to extract a
robust and accurate connected skeleton [25].
All presented methods have several drawbacks. First,
many of them are not guaranteed to preserve the topology
of a complexly connected shape (e.g., a shape with holes).
This is illustrated in Fig. 2, where the skeleton in Fig. 2d
violates the topology of the input skeleton in Fig. 2c. This
skeleton was obtained by the method in [7]. However, many
methods described above would lead to topology violation,
particularly all methods presented in [20] (including the
method of Ogniewicz and Ku
¨bler [5]). These methods are
guaranteed to preserve topology for simply connected
objects (objects with a single contour), but not for objects
with more than one contour like the can in Fig. 2. The
topology preserving skeleton obtained by the proposed
pruning method is illustrated in Fig. 2e. We will prove in
the Appendix, which can be found at http://computer.org/
tpami/archives.htm, that our method is guaranteed to
preserve topology. Even if the input shape is simply
connected, some of methods described above are not
guaranteed to preserve the original topology (e.g., see in
Fig. 1b, generated by the pruning method in [7]).
The second drawback of the methods described above is
that main skeleton branches are shortened and short
skeleton branches are not removed completely. This may
lose important shape information and seriously compro-
mise the structure of the skeletons. These effects are
illustrated in Figs. 1b and 3a, e.g., the horse legs in Fig. 1b
are shortened too much, although, at the same time, some
spurious skeleton branches remained. Thus, shortening of
branches may cause branches of significant visual parts to
be indistinguishable form branches resulting from noise.
The third drawback is that usually only the local
significance of the skeleton points is considered, and the
global information of the shape is discarded. However, the
450 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 1. The skeleton in (a) has many redundant branches. To remove them, usually skeleton pruning is applied. (b) Illustrates the problems of actual
pruning approaches (it is generated by a method in [7]). In particular, observe that pruning may change the topology of the original skeleton.
(c) Illustrates the pruning result of the proposed method that is guaranteed to preserve topology.
same part may represent an important shape feature for one
shape while it may represent noise for a different shape.
This is illustrated in Fig. 4. Clearly, the spike in Fig. 4b is
less relevant for the overall shape than in Fig. 4a, and
consequently, it is more likely to be a result of noise. The
proposed pruning method is able to recognize this fact,
which leads to the removal of the skeleton branch induced
by the spike in Fig. 4d. In contrast, the relevance of skeleton
points in the existing pruning methods is computed based
only on local contour information, which means that they
cannot differentiate the two spike induced skeleton
branches in Figs. 4a and 4b. Consequently, their pruning
result is very similar to the skeletons shown in Figs. 4a and
4b. The fourth drawback is that pruning results may be
different for different scales as pointed out in [40].
An interesting idea, called a fixed topology skeleton, is
presented by Golland and Grimson [11]: The process of
pruning is skipped and the skeletonization uses a snake-like
algorithm for estimating the positions of the skeleton with
respect to the fixed skeleton endpoints. Since the fixed
endpoints are not changed in the iteration process, a
skeleton with the global topology can be extracted.
However, the topology of the global shapes must be known
before skeletonization for the fixed topology skeleton and
the position of the obtained skeleton is not accurate.
To summarize, although the existing skeleton pruning
methods have many drawbacks, they are definitely needed
to remove inaccurate or redundant skeleton branches. The
skeleton generating approaches suffer from the fact that a
small protrusion on the boundary may result in a large
skeleton branch, which is an intrinsic problem of the
definition of the skeleton, since the mapping of boundary
points to the skeleton points is not continuous. An obvious
solution to this problem is to first remove the protrusions on
the boundary and then compute the skeleton. As stated
above, various smoothing approaches are either applied to
the contour or to the distance map before the skeleton is
computed. The problem is that isotropic (e.g., Gaussian) as
well as anisotropic smoothing only reduces, but does not
remove the protrusions [4]. A common characteristic of the
above approaches is that they displace the boundary points
and, consequently, displace the location of skeleton points.
2MAIN IDEAS OF THE PROPOSED APPROACH
We propose an approach that completely removes protru-
sions without displacing the boundary points and, there-
fore, without displacing the remaining skeleton points.
Thus, inaccurate or redundant branches are completely
removed while the main branches are not shortened. As
illustrated above, the proposed method also does not have
the other three drawbacks listed above. The main observa-
tion of our approach is that it is possible to perform a
topology preserving skeleton pruning based on a contour
partition into curve segments. Returning to Blum’s defini-
tion of the skeleton, every skeleton point is linked to
boundary points that are tangential to its maximal circle.
These are called generating points. The main idea is to
remove all skeleton points whose generating points all lie
on the same contour segment. This works for any contour
partition in segments, but some partitions yield better
results than other. Fig. 5 illustrated three different pruned
skeletons in Figs. 5b, 5c, and 5d) obtained for the same input
skeleton in Fig. 5a. The pruned skeletons are based on three
different partitions of contour segments whose endpoints
are marked with dots. For example, removing all skeleton
points all of whose generating points lie on the contour
segment CD in Fig. 5c leads to the removal of the entire
lower part of the skeleton. Clearly, the contour partition in
Fig. 5d leads to a significantly better pruning result than the
partitions in Figs. 5b and 5c. Thus, in our framework, the
question of skeleton pruning is reduced to finding a good
partition of the contour into segments. We obtain such
partitions with the process of Discrete Curve Evolution
(DCE) [15], [16], [17], which we briefly introduce as follows.
First, observe that every object boundary in a digital image
can be represented without the loss of information as a finite
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 451
Fig. 2. (a) The input object. (b) Binary object mask. (c) The initial skeleton. (d) A pruned skeleton obtained by the method in [7]. (e) A pruned skeleton
obtained by the proposed method. While the skeleton in (d) violates the topology, the proposed method is guaranteed to preserve the topology.
Fig. 3. Comparison on between the result in [7] (a) and our result in (b).
polygon, due to finite image resolution. Let us assume that the
vertices of this polygon result from sampling the boundary of
the underlying continuous object with some sampling error.
There then exists a subset of the sample points that lie on the
boundary of the underlying continuous object (modulo some
measurement accuracy). The number of such points depends
on the standard deviation of the sampling error. The larger
the sampling error, the smaller the number of points will lie
on the boundary of the continuous object, and subsequently,
the less accurately we can recover from the original boundary
[15]. The question arises as to how to identify the points that
lie on (or very close to) the boundary of the original object or
equivalently how to identify the noisy points (that lie far away
from the original boundary). The process of DCE is proven
experimentally and theoretically to eliminate the noisy points
[15], [16], [17]. This process eliminates such points by
recursively removing polygon vertices with the smallest
shape contribution (which are the most likely to result from
noise). As a result of DCE, we obtain a subset of vertices that
best represents the shape of a given contour. This subset can
also be viewed as a partitioning of the original contour
polygon into contour segments defined by consecutive
vertices of the simplified polygon. A hierarchical skeleton
structure obtained by the proposed approach is illustrated in
Fig. 6, where the (red) bounding polygons represent the
contours simplified by DCE. Because DCE can reduce the
boundary noise without displacing the remaining boundary
points, the accuracy of the skeleton position is guaranteed.
The continuity, which implies stability in the presence of
noise, of the proposed pruning methods follows from the
continuity of the DCE. This means that if a given contour and
its noisy versions are close (measured by Hausdorff distance),
the obtained pruned skeletons will also be close. A formal
proof of DCE continuity with respect to the Hausdorff
452 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 4. (a) and (b) show pruned skeletons obtained by the method in [7]. The proposed pruning method can distinguish that shape contribution of the
spike in (b) is smaller than in (a) and, therefore, it is possible to prune the branch resulting form the spike in (d).
Fig. 5. Pruning the input skeleton (a) with respect to contour partition induced by five random points on the boundary in (b) and (c). The five points in
(d) are selected with DCE.
distance of polygonal curves is given in [23]. Thus, our
approach provides a solution to the instability of the classical
skeleton pruning algorithms.
All pruning methods based on a significance measure for
skeleton points use local criteria to compute this measure
[21], [29], [5], [6], (e.g., the measure in [5] is base on the
shortest contour arc between the generating points). Also,
all contour smoothing methods are based on local contour
information only. In contrast, DCE evaluates global contour
information in order to generate the simplified contour.
This property is illustrated in Fig. 4. The same spike is on
the boundary of Fig. 4a and Fig. 4b, but it has different
shape contribution for both objects. While it is more likely to
be a shape feature in Fig. 4a, it is more likely to be regarded
as noise in the object Fig. 4b. DCE can effectively quantify
this difference in shape contribution. Consequently, we
obtain the skeletons as shown in Fig. 4c and Fig. 4d.
The proposed pruning method can be applied to any
input skeleton. We only require that each skeleton point is
the center of a maximal disk and that the boundary points
tangent to the disk (generating points) are given. We also
present a skeleton growing algorithm that includes an
efficient implementation of the proposed pruning method.
The main idea is that the pruning is not done in
postprocessing (after the skeleton is computed) but is
integrated into the skeleton growing process. To implement
this idea, we extended the skeleton growing algorithm in [7]
based on the Euclidean distance map. First, we selected a
skeleton seed point as a global maximum of the Euclidean
distance map. Then, the remainder of the skeleton points is
decided by a growing scheme. In this scheme, the new
skeleton points are added using a simple test that examines
their eight connected points. During this process, the
redundant skeleton branches are eliminated by the DCE.
3BACKGROUND DEFINITIONS
Before we define a skeleton, we need to characterize planar
sets for which we can determine the skeleton. Following
[32], we assume that a planer set Dis the closure of a
connected bounded open subset of R2whose boundary @D
is composed of a finite number of mutually disjoint simple
closed curves. Each simple closed curve in @D consists of a
finite number of pieces of real analytic curves. We further
assume in this paper that each simple closed curve is a
polygonal curve, (i.e., the pieces they consist of are line
segments). We make this assumption only to simplify some
definitions and we stress that all of our results also hold for
simple closed curves that consist of a finite number of real
analytic curves. This assumption does not introduce any
restriction on object contours in digital images since each
boundary curve in a digital image can be regarded as
polygonal curve with vertices being the boundary pixels.
According to Blum’s definition of the medial axis [1], the
skeleton SSðDÞof a set Dis the locus of the centers of maximal
disks. A maximal disk of Dis a closed disk contained in Dthat
is interiorly tangent to the boundary @D and that is not
contained in any other disk in D. Each maximal disc must be
tangent to the boundary in at least two different points. We
denote as TTanðsÞthe set of the boundary points tangent to the
maximal closed disk BBðsÞcentered at s2SðDÞ. The points in
TanðsÞare called generating points of the skeleton point s.
Due to our assumption that, each boundary curve is a simple
closed polygonal curve, TanðsÞis composed of a finite
number of isolated boundary points, since BðsÞcan intersect
each boundary line segment in at most one point. (Without
this assumption, TanðsÞwould be composed of a finite
number of isolated contour subarcs.) The degree degðsÞof
s2SðDÞis defined as the cardinality of TanðsÞ, (i.e., as the
number of boundary points tangent to the maximal circle
centered at s). Let the boundary @D of Dbe composed of
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 453
Fig. 6. Hierarchical skeleton of leaf obtained by pruning the input skeleton (top left) with respect to contour segments obtained by the Discrete Curve
Evolution (DCE). The outer (red) polylines show the corresponding DCE simplified contours.
ksimple closed curve polygonal curves C1;...;C
k. Then the
degree with respect to Cjdegðs; CjÞis equal to the cardinality
of TanðsÞ\Cj.
For a given boundary point x2@D, we define SðxÞas
the center of the maximal disk that is tangent to @D at x. The
function S:@D !SðDÞis a strong deformation retraction
by Theorem 8.1 in [32]. Moreover, by Theorem 8.2 in [32],
the skeleton SðDÞis a geometric graph, which means that
SðDÞcan be decomposed into a finite number of connected
arcs, called skeleton branches, composed of points of
degree two, and the branches meet at skeleton joints (or
bifurcation points) that are points of degree three or higher.
We also summarize some of the consequences of
Theorem 5.1 in [32], called Domain Decomposition lemma,
that will be particularly useful here. For an illustration, see
Fig. 7. Given a skeleton point p2SðDÞ, the maximal closed
disk BðpÞdecomposes DBðpÞinto a finite number of
connected components D1ðpÞ;...;D
kðpÞ; also @D BðpÞis
decomposed into a finite number of open contour curves
C1ðpÞ;...;C
kðpÞ, and the skeleton SðDÞfpgis decomposed
into finite number of skeleton curves S1ðpÞ;...;S
kðpÞ,
such that CiðpÞ¼DiðpÞ\@D and SiðpÞ¼DiðpÞ\SðDÞ.A
very important consequence of this theorem is that, for
two different skeleton points p; q 2SðDÞ, we must have
one of the following three cases CiðpÞ\CjðqÞ¼;or CiðpÞ
CjðqÞor CjðqÞCiðpÞ. For example, in Fig. 7, C1ðpÞ¼ðx; yÞ,
which is an open contour segment, C1ðqÞ¼ðu; vÞ, and we
have C1ðqÞC1ðpÞ, while C2ðpÞ\C1ðqÞ¼; and C3ðpÞ\
C1ðqÞ¼;, since C2ðpÞ¼ðy; zÞand C3ðpÞ¼ðz; xÞ.
4SKELETON PRUNING WITH CONTOUR PARTITION
In this section, we introduce the contour partition into
contour segments and skeleton pruning based on it.
Definition 1. Let the boundary @D of a set Dbe composed of k
simple closed curves C1;...;C
k. Let xand ybe two contour
points lying on the same simple closed curve Ci. With ½x; y,
we denote the shortest closed contour segment (subarc) of Ci
that connects xand y. For simplicity, we assume that xand y
are positioned on Ciso that ½x; yis uniquely determined. With
ðx; yÞ, we denote the segment ½x; ywithout the endpoints x
and y(i.e., the open subarc). (A distinction between open and
closed contour segments is unimportant in the digital images,
but we need to establish some formal properties on the
continuous plane.) A sequence of points x0;...;x
n1on a
simple closed curve Ciforms a partition of Ciif two
consecutive segments ½xi;x
iþ1,½xiþ1;x
iþ2intersect in
fxiþ1g(the indices are modulo n), nonconsecutive segments
have empty intersection, and Ciis the union of these segments.
The partition of the boundary @D is a sequence of sequences
that are partitions of the simple closed curves C1;...;C
k.
Definition 2. Let ½x; ybe a contour segment that belongs to some
contour partition . In particular, ½x; yis a subsegment of one
of the contour curves Cof @D. For a skeleton point swhose all
generating points TanðsÞlie in ½x; y, let arcarcðss; ½xx; yyÞ be the
smallest subarc of ½x; ythat contains TanðsÞ. Observe that
arcðs; ½x; yÞ is a contour segment of C(i.e., arcðs; ½x; yÞ ¼
½a; bfor some a,b2C, since arcðs; ½x; yÞ is an arc connected
subset of ½x; y.) As a consequence of Theorem 5.1 in [32], we
also obtain that SðaÞ¼SðbÞ¼s(Fig. 8).
Let CSð½x; yÞ ¼ fzx; y:S1ðSðzÞÞ  ½x; yg be the set
of all points z in ½x; ysuch all generating points of SðzÞare
contained in ½x; y. For example, in Fig. 8, CSð½x; yÞ ¼ ½a; b.
Similarly, we can define CSððx; yÞÞ for an open segment ðx; yÞ.
Definition 3. Given a partition of the boundary @D of a
simply connected set D(i.e., @D consist of one simple closed
curve), the skeleton pruning is defined as the removal of all
skeleton points s2SðDÞwhose generating points lie in the
same open segment of the partition. More precisely, the pruned
skeleton is composed of all points s2SðDÞsuch that TanðsÞ
is not contained in the same open segment of the partition .
This is a very simple definition of skeleton pruning, and it
works with any contour partition. The key issue is to get
reasonable partitions. As we will show, DCE provides a very
good partition for the pruning. We show in Theorem 1 (in the
Appendix which can be found at http://computer.org/
tpami/archives.htm) that the topology of a pruned skeleton is
preserved for a pruned skeleton generated by any partition of
the contour. We illustrate the meaning of Theorem 1 in Fig. 8.
The CSððx; yÞÞ ¼ ða; bÞis a subsegment of ðx; yÞ. Therefore,
the thick dashed part of the skeleton SðCSððx; yÞÞÞ generated
by contour segment ðx; yÞcan be removed and the pruned
skeleton has the same topology. Observe that the only point in
SðCSð½x; yÞÞ that connects SðCSð½x; yÞÞ to the rest of the
skeleton is point s.
The situation is a bit more complicated if Dis not simply
connected (i.e., @D consist of more than one simple closed
curve). For example, CSð½x; yÞ ¼ ½a; c[½d; bshown in Fig. 9
is not a subsegment of ½x; y, due to the interior simple closed
curve. Therefore, SðCSð½x; yÞÞ ¼ ½u; scannot be removed
without violating the topology. Observe that it suffices to
additionally check for every partition segment ½x; ywhether
CSð½x; yÞ is arc connected. When CSððx; yÞÞ is arc connected,
then we can remove part SðCSððx; yÞÞÞ of the skeleton
without violating the skeleton topology as proven in
Theorem 2 (in the Appendix which can be found at http://
computer.org/tpami/archives.htm).
454 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 7. This figure illustrates Theorem 5.1 in [32], called the Domain
Decomposition Lemma.
Fig. 8. The initial contour segment [x,y] is marked with a thick continuous
line. CSð½x;yÞ ¼ ½a;b¼arcðs;½x;yÞ, where SðaÞ¼SðbÞ¼s. The corre-
sponding skeleton part Sð½a; bÞ is marked with a thick dashed line.
5SKELETON PRUNING WITH DISCRETE CURVE
EVOLUTION
In this section, we introduce the contour segmentation
process based on Discrete Curve Evolution (DCE). The
hierarchical decomposition of the boundary of the set D
obtained by DCE is the key component in the proposed
skeleton pruning method.
5.1 Discrete Curve Evolution
The Discrete Curve Evolution (DCE) method was intro-
duced in [16], [17], [18]. Contours of objects in digital
images are distorted by digitization noise and segmentation
errors; it is desirable to eliminate the distortions while at the
same time preserving the perceptual appearances sufficient
for object recognition. DCE accomplishes this goal by
simplifying the shape. For example, a few stages of DCE
are illustrated in Fig. 6 for the outer (red) polylines. The
shape of the leaf becomes more and more simplified by
DCE, while preserving the main visual parts.
Since any digital curve can be regarded as a polygon
without the loss of information (but, with the possibility of a
large number of vertices), it is sufficient to study evolutions
of polygonal shapes. The basic idea of the proposed
evolution of polygons is simple:
.In every evolutional step, a pair of consecutive line
segments s1,s2is replaced by a single line segment
joining the endpoints of s1[s2.
The key property of this evolution is the order of
the substitution. The substitution is achieved accord-
ing to a relevance measure Kgiven by:
KðS1;S
2Þ¼ðS1;S
2ÞlðS1ÞlðS2Þ
lðS1ÞþlðS2Þ;
where line segments s1,s2are the polygon sides
incident to a vertex v,ðs1;s
2Þis the turn angle at the
common vertex of segments s1,s2,lis the length
function normalized with respect to the total length
of a polygonal curve C. The main property of this
relevance measurement is [16], [18]:
.The higher value of Kðs1;s
2Þ, the larger is the
contribution of the arc s1[s2to the shape.
Given the input boundary polygon Pwith
nvertices, DCE produces a sequence of simpler
polygons P¼Pn;Pn1;...;P3such that Pnðkþ1Þis
obtained by removing a single vertex vfrom Pnk
whose shape contribution measured by Kis the
smallest.
Definition 4. An important property of DCE is that it introduces
a hierarchical partition of the input polygon P. Let fv1;...;v
ng
be vertices of Pand let fu1;...;u
mgfv1;...;v
ngbe the
convex vertices of Pnkfor mnk. On the level nkof
the partition hierarchy HnkðPÞ,Pis decomposed into
msubarcs of P:HnkðPÞ¼f½u1;u
2;½u2;u
3;...;½um;u
1g.
We call these arcs DCE (contour) partition (on DCE level
nk). The reason that our partition is based only on convex
vertices of Pwill be explained in the next section, in which
skeleton pruning is defined.
If vertex uiis deleted in the next evolution step, (i.e.,
ui2PnkPnðkþ1Þ), or becomes concave (due to the
deletion of one of its neighbors), then the arc ½ui1;u
iþ1
replaces arcs ½ui1;u
i,½ui;u
iþ1in the partition level
Hnðkþ1ÞðPÞ.
Observe that DCE and the hierarchical partition can be
also defined for a finite set of polygonal curves. The only
difference is that in each DCE step a single vertex is
removed from one of the polygons whose actual relevance
measure is the smallest. This observation is particularly
important for our approach, since the proposed pruning can
be applied to a planar set Dsuch that its boundary @D is
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 455
Fig. 9. The initial contour segment ½x; yis marked with a continuous
thick line. Observe that CSð½x; yÞ ¼ ½a; c[½d; bis not a subsegment of
½x; ysince it is not arc connected. Therefore, CSð½x; yÞ is not equal to
arcðs; ½x; yÞ, where SðaÞ¼SðbÞ¼s. Since CSð½x; yÞ is not a subseg-
ment of ½x; y,SðCSð½x; yÞÞ cannot be removed by Theorem 2. The
skeleton part SðCSð½x; yÞÞ represented by the segment ½u; sis marked
with a thick dashed line. Observe that removing ½u; sdisconnects the
skeleton.
Fig. 10. (a) A simplified polygon with seven vertices (in red) and the skeleton obtained based on this polygon. The green skeleton branch (ending at
C) remained, since each of its points has generating points on two different arcs BC and CD of the original contour. A skeleton branch shown in
green in (b) does not belong to the skeleton determined by the DCE polygon, since it ends at a concave vertex P. As shown in (c), it would have been
removed anyway, but at a later stage of DCE simplification.
composed of a finite number of simple closed polygons.
Thus, the connected set Dmay have holes. In other words,
Ddoes not need to be simply connected.
Though the DCE procedure can effectively remove the
noise and visually unimportant portions of the image, a
proper stop parameter is still necessary. In other words, we
seek such a kso that the simplified polygon Pnkrepresents
the input contours on the adequate level of detail. In order
to quantify the level of detail, we define the average
distance DavðPnkÞbetween original points of Pand their
corresponding line segments in Pnk.
Given a threshold T, we can stop DCE if DavðPnkÞ>T
for some k. Given a sequence of Tvalues, we can obtain a
hierarchical sequence of DCE simplified boundary poly-
gons, which leads to a hierarchical sequence of correspond-
ing skeletons. In general, an adequate stop condition
depends on the particular application. A stop condition
that is adequate for shape similarity is given for DCE in [18].
It is based on the difference of the DCE simplified contour
to the original input contour. When the pruned skeletons
are input into a shape similarity measure, this stop
condition is recommended.
DCE can be viewed as a greedy approach to simplify the
contour so that the length difference between the original
and the simplified contour is minimal. It is easy to
implement a simplification method (using dynamic pro-
gramming) which is optimal with respect to the length
difference. DCE yields very similar results.
5.2 Skeleton Pruning with Discrete Curve Evolution
Given a skeleton SðDÞof a planar shape Dand given a DCE
simplified polygon Pk, we perform skeleton pruning by
removing all points s2SðDÞsuch that the generating points
TanðsÞof sare contained in the same open DCE segment.
Each pruned point sresults from a local contour part with
respect to the DCE partition and, therefore, scan be
considered as an unimportant skeleton point and can be
removed. The simplification of the boundary contour with
DCE corresponds to pruning complete branches of the
skeleton. In particular, a removal of a single convex vertex v
from Pnkto obtain Pnðkþ1Þby DCE implies a complete
removal of the skeleton branch that ends at v. We give an
example illustrating this fact in Fig. 10a. This figure shows a
polygon with seven vertices obtained from a DCE leaf
contour and the skeleton is obtained by pruning based on
this polygon. There are only five skeleton branches ending in
the five convex vertices of the simplified polygon. The pruned
skeleton was computed with respect to the DCE segments
(A, C), (C, D), (D, E), (E, F), and (F, A). The pruning was
applied to the leaf skeleton shown in the first image in Fig. 6.
(The skeleton in Fig. 10a is the same as in the last image in
Fig. 6.) We can illustrate the main idea of our approach by
explaining why the green skeleton branch in Fig. 10a that ends
at point C remained. It remained because each of its points has
maximal disks tangent to points on two different DCE
segments, which are contour arcs (A, C) and (C, D).
We perform contour decomposition into DCE segments
based only on convex vertices of the DCE simplification. This
means that not only when a given vertex is removed by DCE
but also when a convex vertex becomes concave in the process
of DCE, the skeleton branch ending in this vertex is removed.
This approach allows us to remove minor (small) branches in
the earlier stages of the DCE evolution. Fig. 10b illustrates
why we only use convex vertices to define DCE segments. The
green branch in Fig. 10b that ends at vertex Pwould be part of
456 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 11. The same convex vertices may generate different skeleton
branches with different importance.
Fig. 12. Removal of unimportant convex vertices for generating an optimal visual skeleton.
the skeleton if we also used concave vertices of the simplified
polygon (shown in red) to define DCE segments. This branch
would have been removed anyway, since vertex P was
removed from the further simplified polygon shown in
Fig. 10c. Thus, the fact that DCE segments are defined using
only convex vertices of the simplified polygon allows for
faster pruning of irrelevant branches.
A very important property of DCE induced contour
partition, and every partition that is restricted to vertices of
the boundary polygon, is that fact that there is a skeleton
branch ending at every partition point. As stated above, if a
partition point that is also a polygon vertex uiis deleted in a
DCE evolution step, (i.e., ui2PnkPnðkþ1Þ), or becomes
concave (due to the deletion of one of its neighbors), then
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 457
Fig. 13. Our results on Mpeg 7 shape database illustrate the extraordinary stability of pruned skeletons in the presence of significant shape variations
and deformations.
the arc ½ui1;u
iþ1replaces arcs ½ui1;u
i,½ui;u
iþ1in the
contour partition. Therefore, the whole skeleton branch that
ends at vertex uiis eliminated with skeleton pruning. This
fact is proven in Theorem 3 in the Appendix, which can be
found at http://computer.org/tpami/archives.htm.
Although convex vertices from DCE can prune skeletons
to get clear structures, they may also generate unimportant
skeleton branches. We illustrated this problem with Fig. 11.
The vertices A, B, C, and D have the same DCE relevance
measure K, since Kis restricted to directed neighbors of a
given vertex. However, the four green skeleton branches
ending at them are of differing importance. The branch
ending at D has especially and significantly lower im-
portance, and should be removed. Due to the concave
vertices inside the shapes with vertices C and D, the
importance of the skeleton branches ending at the convex
vertices C and D is significantly reduced. Such cases occur
in limb shaped parts of visual forms as defined in [41].
To overcome the problem, we introduce an additional
relevance measure. For each convex polygon vertex v,we
compute the distance DlðvÞbetween vand the nearest
concave vertex usuch that the line segment vu is inside the
shape if such a vertex uexists. We then remove vertices
with low value of the new relevance measure DlðvÞ.
Fig. 12 illustrates the effect of removing the convex vertices
vwith low relevance DlðvÞ. There are five short skeleton
branches (in green) that end at A, B, C, D, E in Fig. 12a that
have been removed in Fig. 12b. This leads to a contour
partition with only seven convex vertices numbered 1-7 in
Fig. 12b.
To summarize, the vertices Vfthat are used for contour
partitioning induced by DCE are computed as: Vf¼Vs
ðVconcave [VlÞ,whereVsdenotes all the vertices of the
simplified polygon Pobtained by DCE, Vconcave denotes all
of the concave vertices of Vsand Vldenotes vertices of Vswith
low value of the measure Dl.
5.3 Time Complexity
The contour partition by DCE has a complexity of OðNlog NÞ
[18], where Nis the number of the vertices on the original
polygon. We can traverse the contour in linear time, OðNÞ,
and assign to each contour vertex the label of its partition
segment. During skeleton computation, the labels can be
passed to each skeleton point as features of generating points.
Therefore, the complexity of the proposed pruning is
OðNlog NÞif DCE is computed, and linear if DCE has been
precomputed.
6GROWING A PRUNED SKELETON FROM A
DISTANCE TRANSFORM
The main goal of this section is to show that it is not necessary
to have a separate post-processing step in skeleton pruning,
as we can grow a pruned skeleton directly form the distance
transform. In this section, we work in the discrete domain of
2D digital images, in which the object contour is still
represented with polygons. To achieve our goal, we extend
the fast skeleton growing algorithm presented by Choi et al.
[7]. We briefly review the skeleton growing algorithm in [7].
First, the Euclidean Distance Transform DT of the binary
image of a given shape Dis computed. Then the point with
the maximal value of DT ðDÞis selected as a seed skeleton
point. Finally, the skeleton is grown recursively by adding
points that satisfy a certain criterion, which intuitively means
that the added points lie on ridges of the DT ðDÞ. The grow
process is based on examining every eight-connected point of
the current skeleton points. The skeleton continues growing
in this way until it reaches an endpoint of a skeleton branch.
Next, other skeleton branches starting at other skeleton
points are considered.
The proposed extension of the algorithm in [7] is very
simple, and it can also be applied to other skeleton growing
algorithms. For a point to be added, it must additionally
have its generating point on at least two different contour
segments of a given contour partition.
7EXPERIMENTAL RESULTS AND COMPARISON
In this section, we show the performance of the proposed
method in three parts: 1) stability in relation to noises and
variance, 2) an analysis of our skeletons and comparison to
other skeletons, and 3) a discussion of the potential for
skeleton matching.
7.1 Stability of Pruning with DCE
Some results on shapes from MPEG-7 Core Experiment CE-
Shape-1 database [37] are shown in Fig. 13. For each shape
class, we show pruned skeletons for several objects from the
same class. Although the objects differ significantly from each
other, the obtained pruned skeletons have the same struc-
tures. The final DCE simplified polygons are also shown
458 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 14. Hierarchical skeleton of a walking human. The input image is similar to a walking human in [11].
overlaid on the shapes with red segments. The skeleton
pruning is performed with respect to contour partition
induced by the vertices of these polygons. In the first row in
Fig. 13, the skeletons of the thin and long tails of rats remained
complete. This cannot be achieved by other pruning methods
since these may shorten or disconnect the skeleton. Although
the camels differ significantly in their shapes, all obtained
skeletons have a clear global structure. The extraordinary
stability of the skeletons obtained by the proposed pruning
method in the presence of significant shape variations and
distortions is illustrated for “star” and “plus” shaped objects.
These results are possible due to the contour partition
stability of DCE. The last row of Fig. 13 shows the DCE’s
stability to the same shapes in different scales.
7.2 Analysis and Comparison
In this part, we describe our test results with the
proposed approach on several binary shape images with
the size 500 500. All the images that were tested have
significant boundary distortions.
A hierarchy of pruned skeletons is shown for the walking
human in Fig. 14. The pruning is preformed with respect to
DCE simplified contours with N¼200, 100, 50, 30, and
12 vertices. We have also shown a hierarchy of pruned
skeletons in Fig. 6. We can see that the results of our algorithm
are in accord with human visual perception. Besides
hierarchical and visual property, our skeleton has a unique
property: As proven in Theorem 3 (in the Appendix, which
can be found at http://computer.org/tpami/archives.htm),
in the cause of the DCE evolution process, the pruned
branches are eliminated completely, (i.e., the obtained
skeletons are without the presence of remaining half-
shortened small, short branches). For example, in Fig. 14,
each skeleton branch is removed, and no remaining fractions
are left.
The skeleton in Fig. 15a illustrates a common problem
with the existing skeleton pruning approaches [5], which is
the problem of inaccurate, half-shortened braches that are
not related to any obvious boundary features. It is also
shown in Fig. 1b and Fig. 3a. Figs. 15b, 1c, and 3b show that
the proposed approach is able to completely eliminate all
the unimportant branches and still preserve all main
structure. Our method does not suffer from shortening
main skeleton branches and it preserves the topology of the
skeleton. Moreover, the obtained skeletons seem to be in
accord with human perception. Figs. 1 and 3 show a
comparison of our method and the method in [7]. The result
obtained using the method in [7] also exhibits problems
with the skeleton topology in Fig. 1b. Fig. 15 shows a
comparison of our method with the method by Ogniewicz
and Ku
¨bler [5]. It also illustrates that our pruning method
can be used in pruning branches of the Voronoi skeleton. As
the Voronoi skeleton points are symmetrical to the
boundary sample points, the generating boundary points
of each skeleton point are known.
Fig. 15c shows an application of our method to generate a
fixed topology skeleton introduced in Golland and Grimson
[11]. The proposed pruning is not limited to the DCE
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 459
Fig. 15. Comparison between pruning result in [5] in (a) and our results
in (b), and (c) is the result of fixed topology skeleton.
Fig. 16. Comparison between the fixed topology skeleton in [11] in (a)
and our skeleton in (b).
Fig. 17. (a) The input skeleton. (b) A pruned skeleton obtained by the
method in [7] violates the topology. (c) and (d) Pruned skeletons
obtained by the proposed method, which is guaranteed to preserve the
induced contour partitioning. Once the positions of the
skeleton’s endpoints are estimated along the boundary as in
the method in [11], the endpoints induce a partition of the
boundary curve, and the fixed topology skeleton can be
generated by pruning any skeleton with our method with
respect to this partition.
The comparison between a result in [11] and our result is
shown in Fig. 16. Fig. 16a shows a skeleton obtained by the
method in [11], and Fig. 16b shows our result induced by the
contour partition (A, B), (B, C), (C, D), (D, E), and (E, F)
marked with the red points, which represent the estimated
skeleton endpoints. We can see that the position of our
skeleton is more accurate than in Fig. 16a since all of our
skeleton points are the centers of maximal disks, which are
exactly symmetrical to the shape boundary, and which is not
the case for the fix topology method in [11]. Moreover,
compared with [11], only the endpoints need to be estimated;
we do not need to estimate the junction points of the skeleton.
Theorems 1 and 2 (in the Appendix which can be found
at http://computer.org/tpami/archives.htm) prove that
our method is guaranteed to preserve topology. We
illustrate this fact in Fig. 2e above. Fig. 17 shows another
example for a shape with three holes that has a total of four
contour curves. The result of the method in [7] is shown in
Fig. 17b. Fig. 17c shows that the proposed approach can
preserves the original topology. In Fig. 17d, the contour
partition is only composed of the four boundary curves,
(i.e., there are no segments on any of these curves), so that
the skeleton points must have their tangent points on the
different boundary curves in order to remain.
7.3 The Potential in Shape Similarity
Our skeletons have strong potential for shape similarity,
since, in addition to the above stated properties, they have
two special properties: 1) Every skeleton branch is generated
by contour parts divided by the vertices of the DCE simplified
polygon. 2) The convex vertices of the DCE simplified
polygon are the endpoints of the skeletons. Therefore, a
contour-based shape similarity measure introduced in [17]
can be used to match the obtained skeletons. Given a contour
partition induced by DCE, the method in [17] establishes the
optimal correspondence of the partition segments. Clearly,
this also yields a correspondence of skeleton branches. This
fact is illustrated in Fig. 18, where the corresponding skeleton
branches are linked with lines. The correspondence in
Fig. 18d is inspired by an example in Liu at al. example in
[30], where complex graph matching algorithms are used to
establish correspondences of skeleton braches. The quality of
the skeletons obtained by the proposed pruning makes it
460 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
Fig. 18. The high quality of the pruned skeletons obtained by our method makes it possible to match the skeleton structure using existing shape
similarity approaches.
possible to apply existing contour similarity measures to
problems with the structural similarity of skeletons.
8CONCLUSIONS AND FUTURE WORK
In this paper, we establish a unique correspondence between
skeleton branches and subarcs of object contours. Based on
these connections, a skeleton is pruned by removing skeleton
branches whose generating points are on the same contour
subarc. This has an effect of removing redundant skeleton
branches and retaining all the necessary visual branches. We
prove that this approach is guaranteed to preserve skeleton
topology, does not shift the skeleton, and does not shrink the
remaining branches. We use a discrete curve evolution to
obtain a hierarchical partitioning of an object contour into
subarcs that yields a hierarchical skeleton structure. We
provide experimental results that demonstrate the high
stability of the obtained skeletons even for objects with
extremely complex shapes. The stability of skeletons is the
key property required to measure the shape similarity of
objects using their skeletons. The proposed definition of the
skeleton pruning easily extends to higher dimensions, (e.g., in
3D it only requires a surface partition into patches), but
further research on surface partitions is needed.
ACKNOWLEDGMENTS
This work received support from the National Natural
Science Foundation of China (grant No. 60273099) and was
in part supported by the US National Science Foundation
under Grant No. IIS-0534929. The authors would like to thank
Liu Hairong and Yang Xingwei for their advice and useful
discussions.
REFERENCES
[1] H. Blum, “Biological Shape and Visual Science (Part I),” J. Theoretical
Biology, vol. 38, pp. 205-287, 1973.
[2] K. Siddiqi, A. Shkoufandeh, S. Dickinson, and S. Zucker, “Shock
Graphs and Shape Matching,” Proc. Int’l Conf. Computer Vision,
pp. 222-229, 1998.
[3] C. Di Ruberto, “Recognition of Shapes by Attributed Skeletal
Graphs,” Pattern Recognition, vol. 37, pp. 21-31, 2004.
[4] T.E.R. Hancock, “A Skeletal Measure of 2D Shape Similarity,”
Computer Vision and Image Understanding, vol. 95, pp. 1-29, 2004.
[5] R.L. Ogniewicz and O. Ku
¨bler, “Hierarchic Voronoi Skeletons,”
Pattern Recognition, vol. 28, no. 3, pp. 343-359, 1995.
[6] G. Malandain and S. Fernandez-Vidal, “Euclidean Skeletons,”
Image and Vision Computing, vol. 16, pp. 317-327, 1998.
[7] W.-P. Choi, K.-M. Lam, and W.-C. Siu, “Extraction of the
Euclidean Skeleton Based on a Connectivity Criterion,” Pattern
Recognition, vol. 36, pp. 721-729, 2003.
[8] C. Pudney, “Distance-Ordered Homotopic Thinning: A Skeleto-
nization Algorithm for 3D Digital Images,” Computer Vision and
Image Understanding, vol. 72, no. 3, pp. 404-413, 1998.
[9] W. Xie, R.P. Thompson, and R. Perucchio, “A Topology-Preser-
ving Parallel 3D Thinning Algorithm for Extracting the Curve
Skeleton,” Pattern Recognition, vol. 36, pp. 1529-1544, 2003.
[10] F. Leymarie and M. Levine, “Simulating the Grassfire Transaction
Form Using an Active Contour Model,” IEEE Trans. Pattern
Analysis and Machine Intelligence, vol. 14, no. 1, pp. 56-75, Jan. 1992.
[11] P. Golland and E. Grimson, “Fixed Topology Skeletons,” Proc.
IEEE Conf. Computer Vision and Pattern Recognition, vol. 1, pp. 10-
17, 2000.
[12] N. Mayya and V.T. Rajan, “Voronoi Diagrams of Polygons: A
Framework for Shape Representation,” Proc. IEEE Conf. Computer
Vision and Pattern Recognition, pp. 638-643, 1994.
[13] Y. Ge and J.M. Fitzpatrick, “On the Generation of Skeletons from
Discrete Euclidean Distance Maps,” IEEE Trans. Pattern Analysis
and Machine Intelligence, vol. 18, no. 11, pp. 1055-1066, Nov. 1996.
[14] C.M. Gold, D. Thibault, and Z. Liu, “Map Generalization by
Skeleton Retraction,” Proc. ICA Workshop Map Generalization, Aug.
1999.
[15] L.J. Latecki and R. Laka
¨mper, “Convexity Rule for Shape
Decomposition Based on Discrete Contour Evolution,” Computer
Vision and Image Understanding, vol. 73, pp. 441-454, 1999.
[16] L.J. Latecki and R. Lakamper, “Polygon Evolution by Vertex
Deletion,” Proc. Int’l Conf. Scale-Space ’99, 1999.
[17] L.J. Latecki and R. Lakamper, “Shape Similarity Measure Based on
Correspondence of Visual Parts,” IEEE Trans. Pattern Analysis and
Machine Intelligence, vol. 22, no. 10, pp. 1185-1190, Oct. 2000.
[18] L.J. Latecki and R. Lakamper, “Application of Planar Shape
Comparison to Object Retrieval in Image Databases,” Pattern
Recognition, vol. 35, no. 1, pp. 15-29, 2002.
[19] G. Borgefors, “Distance Transformations in Digital Images,”
Computer Vision, Graphics, and Image Processing, vol. 34, no. 3,
pp. 344-371, 1986.
[20] D. Shaken and A.M. Bruckstein, “Pruning Medial Axes,” Computer
Vision and Image Understanding, vol. 69, no. 2, pp. 156-169, 1998.
[21] K. Siddiqi, A. Tannenbaum, and S.W. Zucker, “Hyperbolic
‘Smoothing’ of Shapes,” Proc. Int’l Conf. Computer Vision,
pp. 215-221, 1998.
[22] P. Dimitrov, J.N. Damon, and K. Siddiqi, “Flux Invariants for
Shape,” Proc. Int’l Conf. Computer Vision and Pattern Recognition,
2003.
[23] L.J. Latecki, R.-R. Ghadially, R. Laka
¨mper, and U. Eckhardt,
“Continuity of the Discrete Curve Evolution,” J. Electronic Imaging,
vol. 9, no. 3, pp. 317-326, July 2000.
[24] P. Dimitrov, C. Phillips, and K. Siddiqi, “Robust and Efficient
Skeletal Graphs,” Proc. IEEE Conf. Computer Vision and Pattern
Recognition, pp. 1417-1423, 2000.
[25] K.Siddiqi,S.Bouix,A.R.Tannenbaum,andS.W.Zucker,
“Hamilton-Jacobi Skeletons,” Int’l J. Computer Vision, vol. 48,
no. 3, pp. 215-231, 2002.
[26] A. Vasilevskiy and K. Siddiqi, “Flux Maximizing Geometric
Flows,” IEEE Trans. Pattern Analysis Machine Intelligence, vol. 24,
no. 12, pp. 1565-1578, Dec. 2002.
[27] F.Y.L. Chin, J. Snoeyink, and C. An Wang, “Finding the Medial
Axis of a Simple Polygon in Linear Time,” Proc. Sixth Int’l Symp.
Algorithms and Computation, pp. 382-391, 1995.
[28] J.W. Brandt and V.R. Algazi, “Continuous Skeleton Computation
by Voronoi Diagram,” Computer Vision, Graphics, and Image Process,
vol. 55, pp. 329-338, 1992.
[29] S.C. Zhu and A. Yuille, “FORMS: A Flexible Object Recognition
and Modeling System,” Proc. Int’l Conf. Computer Vision, 1995.
[30] T. Liu, D. Geiger, and R.V. Kohn, “Representation and Self-
Similarity of Shapes,” Proc. Int’l Conf. Computer Vision, Jan. 1998.
[31] C. Aslan and S. Tari, “An Axis Based Representation for
Recognition,” Proc. Int’l Conf. Computer Vision, 2005.
[32] H.I. Choi, S.W. Choi, and H.P. Moon, “Mathematical Theory of
Medial Axis Transform,” Pacific J. Math., vol. 181, no. 1, pp. 57-88,
1997.
[33] C. Arcelli and G. Sanniti di Baja, “Euclidean Skeleton via Center of
Maximal Disk Extraction,” Image and Vision Computing, vol. 11,
pp. 163-173, 1993.
[34] C. Arcelli and G. Sanniti di Baja, “A Width Independent Fast
Thinning Algorithm,” IEEE Trans. Pattern Analysis and Machine
Intelligence, vol. 7, pp. 463-474, 1985.
[35] R. Kimmel et al. “Skeletonization via Distance Maps and Level
Sets,” CVIU: Computer Vision and Image Understanding, vol. 62,
no. 3, pp. 382-391, 1995.
[36] T.B. Sebastian, P.N. Klein, and B.B. Kimia, “Recognition of Shapes
by Editing Their Shock Graphs,” IEEE Trans. Pattern Analysis and
Machine Intelligence, vol. 26, no. 5, pp. 550-571, May 2004.
[37] L.J. Latecki, R. Lakamper, and U. Eckhardt, “Shape Descriptors for
Non-Rigid Shapes with a Single Closed Contour,” Proc. Conf.
Computer Vision and Pattern Recognition, 2000.
[38] F. Mokhtarian and A.K. Mackworth, “A Theory of Multiscale,
Curvature-Based Shape Representation for Planar Curves,” IEEE
Trans. Pattern Analysis and Machine Intelligence, vol. 14, pp. 789-805,
1992.
BAI ET AL.: SKELETON PRUNING BY CONTOUR PARTITIONING WITH DISCRETE CURVE EVOLUTION 461
[39] S.M. Pizer, W.R. Oliver, and S.H. Bloomberg, “Hierarchial Shape
Description via the Multiresolution Symmetric Axis Transform,”
IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 9,
pp. 505-511, 1987.
[40] G. Borgefors, G. Ramella, and G. Sanniti di Baja, “Hierarchical
Decomposition of Multiscale Skeletons,” IEEE Trans. Pattern
Analysis and Machine Intelligence, vol. 13, no. 11, pp. 1296-1312,
Nov. 2001.
[41] K. Siddiqi and B.B. Kimia, “Parts of Visual Form: Computational
Aspects,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol.
17, no. 3, pp. 239-251, Mar. 1995.
Xiang Bai received the BS degree in electronics
and information engineering from Huazhong
University of Science & Technology (HUST),
Wuhan, China, in 2003 and the MS degree in
electronics and information engineering from
HUST in 2005. He is now an exchange student
at Temple University. His research interests
include computer graphics, computer vision,
and pattern recognition. Currently, he is a PhD
candidate at HUST.
Longin Jan Latecki received the master’s
degree in mathematics from the University of
Gdansk, Poland, in 1985, and the PhD degree in
computer science from the Hamburg University,
Germany, in 1992. He is the winner of the
Pattern Recognition Society Award together with
Azriel Rosenfeld for “the most original manu-
script from all 1998 Pattern Recognition issues.”
He received the main annual award from
the German Society for Pattern Recognition
(DAGM), the 2000 Olympus Prize. He cochairs the IS&T/SPIE annual
conference series on vision geometry. He has published more than
100 research papers and books. He is an associate professor for
computer science at Temple University in Philadelphia. His main
research areas are shape representation and similarity, robot mapping,
digital geometry and topology, data mining, and video analysis. He is a
member of the IEEE Computer Society.
Wen-Yu Liu received the BS degree in computer
science from Tsinghua University, Beijing, China,
in 1986, and the Diploma and Doctoral degrees,
both in electronics and information engineering,
from Huazhong University of Science & Technol-
ogy (HUST), Wuhan, China, in 1991 and 2001,
respectively. He is now a professor and associate
chairman of the Department of Electronics &
Information Engineering, HUST. His current
research areas include computer graphics, multi-
media information processing, and computer vision.
.For more information on this or any other computing topic,
please visit our Digital Library at www.computer.org/publications/dlib.
462 IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 29, NO. 3, MARCH 2007
... Skeletonization is used to quantify neurite/axonal/dendritic length, number of processes, number of branching points, and number of terminal tips from the binary masks. While there are many different skeletonization algorithms available [70], a common problem is the skeleton's sensitivity to an object's boundary deformation [70], and thresholding often results in imperfect object boundaries, which then introduce artificial branches within the skeleton. One solution is to limit the number of allowed vertices of endpoints [70]. ...
... Skeletonization is used to quantify neurite/axonal/dendritic length, number of processes, number of branching points, and number of terminal tips from the binary masks. While there are many different skeletonization algorithms available [70], a common problem is the skeleton's sensitivity to an object's boundary deformation [70], and thresholding often results in imperfect object boundaries, which then introduce artificial branches within the skeleton. One solution is to limit the number of allowed vertices of endpoints [70]. ...
... While there are many different skeletonization algorithms available [70], a common problem is the skeleton's sensitivity to an object's boundary deformation [70], and thresholding often results in imperfect object boundaries, which then introduce artificial branches within the skeleton. One solution is to limit the number of allowed vertices of endpoints [70]. However, this relies on a good characterization of the in vitro/in vivo system because information on maximal number of end tips is required. ...
Chapter
Chemical perturbation of the temporal or spatial aspects of axonal or dendritic growth is associated with neurobehavioral deficits in animal models, and structural changes in axons and dendrites are thought to contribute to clinical symptoms associated with diverse neurologic diseases. Consequently, axonal and dendritic morphology are often quantified as functionally relevant endpoints of neurotoxicity. Here, we discuss methods for visualizing and quantifying axonal and dendritic morphology of neurons from the peripheral or central nervous systems in in vitro and ex vivo preparations. These methods include visualization of neuronal cytoarchitecture by immunostaining axon- or dendrite-selective antigens, transfecting cells with cDNA encoding fluorescent proteins, or labeling cells using membrane permeable small molecules that distribute throughout the cytoplasm, Golgi staining or Diolistics, as well as quantifying axonal and dendritic morphology using semi-automated or fully automated image analysis.
... Nevertheless, certain 'unimportant' feature point groups may still exist. In this situation, the DCE method can be used to deal with these 'unimportant' feature point groups, because it can eliminate noise and obtain the best feature points from contours (Bai et al. 2007). The decision to reserve the joint point of line segments S i and S iþ1 is dependent on the important indices, which can be calculated as follows: ...
... Other skeletonization and pruning methods have to deal with certain drawbacks: They may not preserve the original topology, cannot distinguish between noise and small significant details or rely on unintuitive parameters [36]. The algorithm of Bai et al. [53] was previously used in other bioimaging applications [28,46,54]. However, the approach by Bai et al. relies on a parameter that is mathematically less rigorously defined than the pruning parameter of the skeleton approach by Durix et al. ...
Article
Full-text available
Neuronal models of neurodegenerative diseases such as Parkinson’s Disease (PD) are extensively studied in pathological and therapeutical research with neurite outgrowth being a core feature. Screening of neurite outgrowth enables characterization of various stimuli and therapeutic effects after lesion. In this study, we describe an autonomous computational assay for a high throughput skeletonization approach allowing for quantification of neurite outgrowth in large data sets from fluorescence microscopic imaging. Development and validation of the assay was conducted with differentiated SH-SY5Y cells and primary mesencephalic dopaminergic neurons (MDN) treated with the neurotoxic lesioning compound Rotenone. Results of manual annotation using NeuronJ and automated data were shown to correlate strongly (R2-value 0.9077 for SH-SY5Y cells and R2-value 0.9297 for MDN). Pooled linear regressions of results from SH-SY5Y cell image data could be integrated into an equation formula (y=0.5410·x+1792; y=0.8789·x+0.09191 for normalized results) with y depicting automated and x depicting manual data. This automated neurite length algorithm constitutes a valuable tool for modelling of neurite outgrowth that can be easily applied to evaluate therapeutic compounds with high throughput approaches.
Preprint
Full-text available
This paper concerns the research problem of point cloud registration to find the rigid transformation to optimally align the source point set with the target one. Learning robust point cloud registration models with deep neural networks has emerged as a powerful paradigm, offering promising performance in predicting the global geometric transformation for a pair of point sets. Existing methods firstly leverage an encoder to regress a latent shape embedding, which is then decoded into a shape-conditioned transformation via concatenation-based conditioning. However, different regions of a 3D shape vary in their geometric structures which makes it more sense that we have a region-conditioned transformation instead of the shape-conditioned one. In this paper we present a \underline{R}egion-\underline{A}ware point cloud \underline{R}egistration, denoted as RAR, to predict transformation for pairwise point sets in the self-supervised learning fashion. More specifically, we develop a novel region-aware decoder (RAD) module that is formed with an implicit neural region representation parameterized by neural networks. The implicit neural region representation is learned with a self-supervised 3D shape reconstruction loss without the need for region labels. Consequently, the region-aware decoder (RAD) module guides the training of the region-aware transformation (RAT) module and region-aware weight (RAW) module, which predict the transforms and weights for different regions respectively. The global geometric transformation from source point set to target one is then formed by the weighted fusion of region-aware transforms. Compared to the state-of-the-art approaches, our experiments show that our RAR achieves superior registration performance over various benchmark datasets (e.g. ModelNet40).
Article
3D keypoint detection is an essential problem in computer graphics and computer vision, especially for 3D shape analysis and model matching. In this paper, we propose a novel multi-task joint learning network architecture for 3D keypoint saliency estimation and correspondence estimation. To better capture the local and global features of the 3D model, we design a spatial multi-scale perception module that concatenates feature maps at different scales during the extraction of point cloud features. In the multi-task joint learning process, we obtain the offset vector of each point to the keypoint in the 3D model through a voting mechanism. This mechanism predicts the confidence value of each point in the 3D model and then filters out low-confidence points to generate a reliable voting result. Afterwards, keypoint saliency estimation is achieved through clustering. In parallel, keypoint correspondence estimation is learned by predicting the semantic label of the selected high-confidence points. In extensive evaluations, ablation studies and comparisons, we demonstrate that the proposed architecture can both efficiently and accurately detect the position and semantic labels of the 3D keypoints, which enables it to outperform state-of-the-art approaches for 3D keypoint detection.
Article
Full-text available
Background In the context of biomarker discovery and molecular characterization of diseases, laser capture microdissection is a highly effective approach to extract disease-specific regions from complex, heterogeneous tissue samples. For the extraction to be successful, these regions have to satisfy certain constraints in size and shape and thus have to be decomposed into feasible fragments. Results We model this problem of constrained shape decomposition as the computation of optimal feasible decompositions of simple polygons. We use a skeleton-based approach and present an algorithmic framework that allows the implementation of various feasibility criteria as well as optimization goals. Motivated by our application, we consider different constraints and examine the resulting fragmentations. We evaluate our algorithm on lung tissue samples in comparison to a heuristic decomposition approach. Our method achieved a success rate of over 95% in the microdissection and tissue yield was increased by 10–30%. Conclusion We present a novel approach for constrained shape decomposition by demonstrating its advantages for the application in the microdissection of tissue samples. In comparison to the previous decomposition approach, the proposed method considerably increases the amount of successfully dissected tissue.
Article
Full-text available
We present the CPMA, a new method for medial axis pruning with noise robustness and equivariance to isometric transformations. The CPMA leverages the discrete cosine transform to create smooth versions of a shape Ω. We use the smooth shapes to compute a score function FΩ that filters out spurious branches from the medial axis of the original shape Ω. Our method generalizes to n-dimensional shapes given the properties of the Discrete Cosine Transform. We extensively compare with state-of-the-art pruning methods to highlight the CPMA’s noise robustness and isometric equivariance. We conducted experiments using two 2D datasets — Kimia216 and Animal2000 — and one 3D dataset — the Groningen benchmark. We found that our pruning approach achieves competitive results and yields stable medial axes even in scenarios with significant contour perturbations.
Chapter
Full-text available
This paper presents a geometric measure that can be used to gauge the similarity of 2D shapes by comparing their skeletons. The measure is defined to be the rate of change of boundary length with distance along the skeleton. We demonstrate that this measure varies continuously when the shape undergoes deformations. Moreover, we show that ligatures are associated with low values of the shape-measure. The measure provides a natural way of overcoming a number of problems associated with the structural representation of skeletons. The first of these is that it allows us to distinguish between perceptually distinct shapes whose skeletons are ambiguous. Second, it allows us to distinguish between the main skeletal structure and its ligatures, which may be the result of local shape irregularities or noise.
Article
Full-text available
We describe a flexible object recognition and modelling system (FORMS) which represents and recognizes animate objects from their silhouettes. This consists of a model for generating the shapes of animate objects which gives a formalism for solving the inverse problem of object recognition. We model all objects at three levels of complexity: (i) the primitives, (ii) the mid-grained shapes, which are deformations of the primitives, and (iii) objects constructed by using a grammar to join mid-grained shapes together. The deformations of the primitives can be characterized by principal component analysis or modal analysis. When doing recognition the representations of these objects are obtained in a bottom-up manner from their silhouettes by a novel method for skeleton extraction and part segmentation based on deformable circles. These representations are then matched to a database of prototypical objects to obtain a set of candidate interpretations. These interpretations are verified in a top-down process. The system is demonstrated to be stable in the presence of noise, the absence of parts, the presence of additional parts, and considerable variations in articulation and viewpoint. Finally, we describe how such a representation scheme can be automatically learnt from examples.
Article
We describe a flexible object recognition and modeling system (FORMS) which represents and recognizes animate objects from their silhouettes. This consists of a model for generating the shapes of animate objects which gives a formalism for solving the inverse problem of object recognition. We model all objects at three levels of complexity: (i) the primitives, (ii) the mid-grained shapes, which are deformations of the primitives, and (iii) objects constructed by using a grammar to join mid-grained shapes together. The deformations of the primitives can be characterized by principal component analysis or modal analysis. When doing recognition the representations of these objects are obtained in a bottom-up manner from their silhouettes by a novel method for skeleton extraction and part segmentation based on deformable circles. These representations are then matched to a database of prototypical objects to obtain a set of candidate interpretations. These interpretations are verified in a...
Conference Paper
We have been developing a theory of generic 2-D shape based on a reaction-diffusion model from mathematical physics. The description of a shape is derived from the singularities of a curve evolution process driven by the reaction (hyperbolic) term. The diffusion (parabolic) term is related to smoothing and shape simplification. However, the unification of the two is problematic, because the slightest amount of diffusion dominates and prevents the formation of generic first-order shocks. The technical issue is whether it is possible to smooth a shape, in any sense, without destroying the shocks. We now report a constructive solution to this problem, by embedding the smoothing term in a global metric against which a purely hyperbolic evolution is performed from the initial curve. This is a new flow for shape, that extends the advantages of the original one. Specific metrics are developed, which lead to a natural hierarchy of shape features, analogous to the simplification one might perceive when viewing an object from increasing distances. We illustrate our new flow with a variety of examples.
Article
We give a linear-time algorithm for computing the medial axis of a simple polygon P . This answers a long-standing open question—previously, the best deterministic algorithm ran in O(n log n) time. We decompose P into pseudonormal histograms, then influence histograms, then xy monotone histograms. We can compute the medial axes for xy monotone histograms and merge to obtain the medial axis for P .
Article
A method is proposed that produces a shape description in the form of a hierarchy by scale of simple symmetric axis sequences. An axis segment that is a child of another has smaller scale and is seen as a branch of its parent. The scale value and parent-child relationship are induced by following the symmetric axis under successive reduction of resolution. The result, in two or three dimensions, is a figure¿rather than boundary¿oriented shape description that has natural segments and is insensitive to noise in the object description. The general approach of hierarchy production by following a feature through successive resolution reduction will be presented, as will methods of resolution reduction and computer implementation. Also, the relation of this figure-based shape description to those based on boundary curvature will be briefly discussed.
Article
The skeleton of a digital figure can often be regarded as a convenient alternative to the figure itself. It is useful both to diminish drastically the amount of data to be handled, and to simplify the computational procedures required for description and classification purposes. Thinning a digital figure down to its skeleton is a time-consuming process when conventional sequential computers are employed. The procedure we propose allows one to speed up the thinning transformation, and to get a well-shaped skeleton. After cleaning of the input picture has been performed, the pixels of the figure are labeled according to their distance from the background, and a set, whose pixels are symmetrically placed with respect to distinct contour parts of the figure, is found. This set is then given a linear structure by applying topology preserving removal operations. Finally, a pruning step, regarding branches not relevant in the framework of the problem domain, completes the process. The resulting skeleton is a labeled set of pixels which is shown to possess all the required properties, particularly those concerning connectedness, topology, and shape. Moreover, the original figure can almost completely be recovered by means of a reverse distance transformation. Only a fixed and small number of sequential passes through the picture is necessary to achieve the goal. The computational effort is rather modest, and the use of the proposed algorithm turns out to be more advantageous the greater the width of the figure to be thinned.
Conference Paper
Representing shapes is a significant problem for vision systems that must recognize or classify objects. We derive a representation for a given shape by investigating its self-similarities, and constructing its shape axis (SA) and shape axis tree (SA-tree). We start with a shape, its boundary contour, and two different parameterizations for the contour. To measure its self-similarity we consider matching pairs of points (and their tangents) along the boundary contour, i.e., matching the two parameterizations. The matching, of self-similarity criteria may vary, e.g., co-circularity, parallelism, distance, region homogeneity. The loci of middle points of the pairing contour points are the shape axis and they can be grouped into a unique tree graph, the SA-tree. The shape axis for the co-circularity criteria is compared to the symmetry axis. An interpretation in terms of object parts is also presented
Article
We introduce a new topology-preserving 3D thinning procedure for deriving the curve voxel skeleton from 3D binary digital images. Based on a rigorously defined classification procedure, the algorithm consists of sequential thinning iterations each characterized by six parallel directional sub-iterations followed by a set of sequential sub-iterations. The algorithm is shown to produce concise and geometrically accurate 3D curve skeletons. The thinning algorithm is also insensitive to object rotation and only moderately sensitive to noise. Although this thinning procedure is valid for curve skeleton extraction of general elongated objects, in this paper, we specifically discuss its application to the orientation modeling of trabecular biological tissues.