Contour polygonal approximation using shortest path in networks

Contour polygonal approximation is a simplified representation of a contour by line segments, so that the main characteristics of the contour remain in a small number of line segments. This paper presents a novel method for polygonal approximation based on the Complex Networks theory. We convert each point of the contour into a vertex, so that we model a regular network. Then we transform this network into a Small-World Complex Network by applying some transformations over its edges. By analyzing of network properties, especially the geodesic path, we compute the polygonal approximation. The paper presents the main characteristics of the method, as well as its functionality. We evaluate the proposed method using benchmark contours, and compare its results with other polygonal approximation methods.


page 1

page 2

page 3

page 4


Numerical Evaluation of Mittag-Leffler Functions

The Mittag-Leffler function is computed via a quadrature approximation o...

Contour Completion Around a Fixation Point

The paper presents two edge grouping algorithms for finding a closed con...

Contour Integration using Graph-Cut and Non-Classical Receptive Field

Many edge and contour detection algorithms give a soft-value as an outpu...

Rectangular mesh contour generation algorithm for finite differences calculus

In this work, a 2D contour generation algorithm is proposed for irregula...

SCALP: Superpixels with Contour Adherence using Linear Path

Superpixel decomposition methods are generally used as a pre-processing ...

Resolving Overlapping Convex Objects in Silhouette Images by Concavity Analysis and Gaussian Process

Segmentation of overlapping convex objects has various applications, for...

ProAlignNet : Unsupervised Learning for Progressively Aligning Noisy Contours

Contour shape alignment is a fundamental but challenging problem in comp...

I Introduction

A boundary curve performs an important role in shape analysis and representation. It is one of the most important visual attributes in image processing and computer vision. A large amount of information of the contour is redundant and it can be simplified without damaging the representation of the original shape. In biological vision systems, this evidence was demonstrated by Atteneave

Attneave-1954 . He did experiments in psychophysics observing whether man would be capable of recognising shapes containing only part of their outline. The experiments of Atteneave demonstrated that points of high curvature observed in objects consist of the most important information about shape, and that the human visual system is capable of recognising the original shape by just observing the higher curvature segments of the contour. This evidence motivated the development of methods to reduce the information of the contour, without losing information from the original shape.

Among these methods of contour curves reduction, there are algorithms for polygonal approximation. These methods preserve the main characteristics of the curve of a contour using as few line segments as possible. The polygonal approximation presents various advantages over other curve representation schemes (various techniques can be seen in bb16963

) due to its computational simplicity, coding efficient, preservation of local properties and the low complexity of feature extraction. Moreover, an important aspect of curve polygonal approximation is the preservation of shape perception.

Shapes can be represented easily by a set of straight line segments that interconnect high curvature points of an outline. Usually, a human observer can recognise this type of representation. This fact has motivated researches in high curvature points detection and their polygonal approximation.

In this paper, we present a novel method for polygonal approximation of digital curves. The authors have been worked in this problem using the Complex Networks theory. In a previous work journals/isci/BackesB13 we proposed an algorithm based on vertex betweenness. Here, we focus on the study of the evolution of its shortest path as we convert a regular network into a Small-World network. The vertex betweenness and the shortest path, using different networks properties and characteristics. Although, these approaches are different, they achieved similar general performance. As can be noticed, there are special situations of the problem in which one or other approach is more appropriate.

We present experiments with contours and their respective results. We also compared the method with other polygonal approximation methods. Results demonstrate the great ability of the complex networks techniques to remove redundant point of a digital curve, thus contributing to the problem of the polygonal approximation.

Ii Proposed Method

In this section, we present the definition of the polygonal approximation problem, followed by the description of how we model the problem as a Complex Network (here referred to as SP).

ii.1 Problem definition

Consider a clockwise ordered set of points describing a curve or object contour. The aim of polygonal approximation is to find out , with and , where is a set of points, , arranged in ascending order which configures a set of line segments that preserve the main characteristics of . This set of line segments must describe the original shape as accurated as possible and using the minimum of information. This accuracy is given by the approximation error that exists between and . Whereas the original set has an error equal to zero, once that in a discreet case, it owns all shape information, the resulting error from the polygonal approximation formed by can be calculated by the methodology used in journals/prl/KolesnikovF03 ; journals/pr/Yin03 . In this work, we compute the polygonal approximation error as the square sum of the perpendicular distance from each point to the line segment formed by . In journals/pr/Yin03 the error is defined as


where and is the approximation error between arc and the line segment . denotes the set of line segments formed by the points in :


The value of is given by the equation defined by journals/pr/Yin03 , also used in the work of journals/prl/KolesnikovF03 and bb16649 ,


where is the perpendicular distance from point to its corresponding segment, . Figure 1 shows an arc as a collection of six points, and we compute the error of as the sum of .

Figure 1: Example of arc and computation of e. Adapted from journals/pr/Yin03 .

ii.2 Complex Network model

In order to apply the Complex Network theory to the problem, a representation of the problem should be built like a graph . We consider each point of the curve as a vertex in the graph, i.e., . This first approach is similar to Yin’s Ant Colony Search method (ACS) for polygonal approximation journals/pr/Yin03 . The difference remains in the fact that ACS method computes the polygonal approximation as an optimization problem, while in this paper, properties from Complex Network theory are used in order to solve the polygonal approximation problem.

We compute the set of edges E that composes the network in the following way: for each vertex , we examine the remaining vertices, , in clockwise order. We add a directed edge binding those vertices, , and the weight of that edge is the error of existing approximation between the arch and the segment of line , .

The initial network is composed by a set of edges E binding each pair of vertices of the network. This means that the network has regular behavior, once all vertices have the same number of connections. However, a regular network is not considered a Complex Network. It does not present any relevant property for the proposed application. So, it is necessary to transform this regular network into a Complex Network which owns relevant properties for the application.

Analyzing the Complex Network models existing in the literature, we noticed that the Small-World model proposed by Watts and Strongatz watts98 is the one which better fits into the polygonal approximation problem. This model is characterized by the existence of two basic properties in the network: (i) high clustering coefficient and (ii) small-world property. The clustering coefficient of a network is a measure of how interconnected its vertices are. It is defined as


where is the number of existing triangles in the network and the number of connected triples. We consider a connected triple when a vertex is connected to a vertex , and this vertex is connected to vertex . A triangle occurs when vertices and are also connected. This is an interesting property, once the more the vertices are interconnected, the more paths between a pair of vertices are possible. The small-world property is a consequence of a high clustering coefficient. It is characterized by the existence of a small average geodesic path in the network. Literature describes a geodesic path as the shortest path connecting two vertices and , where . Therefore, these properties guarantee the existence of short paths among network vertices, and these short paths represent possible polygonal approximation of the curve.

The existence of these properties in the network is essential for attaining good results in polygonal approximation, and it is necessary to model the digital curve as a Small-World network. To construct a small-word network, we start with a regular lattice of vertices, where each vertex is connected to vertices, and

. We randomly rearrange each edge with a probability

. When , we have an ordered lattice with high number of loops but large distances. When , the network becomes a random graph with short distances but no loops. Watts and Strogatz have shown that, in an intermediate regime, both short distances and large number of loops are present.

Therefore, for graph , a regular lattice can be attained by selecting the closest vertices of each vertex. Considering that the probability is straightly related to the approximation error between the arc and the line segment , we built a Small-World network where the arcs with small error have prevailed. The probability of a vertex to be connected to a vertex is defined as:


where, is the weight of the edge that connects the vertex to .

For a high value of and a maximum error , the rearrangement of edges occurs in a small interval and only whether . This edge rearrangement is similar to apply a threshold to the edge set .

In the light of this, the proposed idea of this work is: given a contour modeled as a regular network , we transform into a Small-World network by applying a transformation over , using different values of . We apply this operation, henceforth represented as , to each edge , , yielding a subset of edges , . So:


We perform various transformations using different threshold , which we increase in a regular interval. In this case, works as a visibility control of the network vertices, i.e., it limits the number of vertices that a vertex can reach to compose the approximation of an arc. Figure 2 shows how the vertex visibility changes for different values of . As a consequence, it is possible to convert a regular network into a Complex Network that fits in the Small-World model proposed by Watts and Strongatz watts98 .

Figure 2: vertex visibility for several : (a) Network vertices and zoom in area; (b) ; (c) ; (d) .

Once we model the contour as a Small-World network, a possible solution for the polygonal approximation problem is the set of vertices throughout a path formed by a set of edges E*, which starts and ends in the same vertice, and that respects an error attributed to the polygonal approximation. Therefore, we restricted the polygonal approximation problem to find the geodesic path (between i and i) existing inside the network, respecting error . For a better representation of the problem, some notations were defined. Consider , the shortest cycle present in the network that begins and ends in vertex v, the number of vertices in as , and the error between the original curve S and the corresponding approximation as .

ii.3 Shortest cycle calculation

In a Complex Network, given two vertices s and v the geodesic path problem (or shortest path) consists of minimising the cost of crossing the graph between those two vertices. We define this cost as the sum of the weights of each edge traveled or just the number of traveled edges. The geodesic path between two vertices is an important rule of characterization of the internal structure of a network Boccaletti+2006 .

Specialized algorithms are well known in the literature for solving the shortest path problem. One of the most used methods is the Bellman-Ford algorithm, an iterative algorithm that uses the technique of edge relaxation cherkassky94shortest to find minimum paths between an origin s and a destiny v in a network. For the yielded shortest path to be considered as a valid polygonal approximation, it is necessary to compute also the polygonal error of this. Therefore, we developed an adapted version of the Bellman-Ford algorithm which computes the shortest path in a network, minimizing also its polygonal error. In this work, we opted for using the Bellman-Ford algorithm due to its simplicity, easy implementation and generality.

Given a weighed and directed graph , an origin s and a weight function w, the algorithm returns the shortest path existing in the network, whose origin is the vertex s, as well as the respective number of vertices and polygonal error of this way. For each vertex , the attribute d[v] corresponds to the number of vertices in the shortest path between s and v. The attribute r[v] specifies the vertex predecessor to vertex v. We also introduced an attribute er[v], which specifies the error in the polygonal approximation computed from s to v. The process of initialization of the minimum path occurs according to the following algorithm:

procedure Initialize(,s)
For each

In the process of relaxation of edge (u, v) we check whether the minimum path of a vertex v and its respective error can be reduced by using a predecessor vertex u

. This stage consists of trying to decrement the error and the cost of the path estimated for

v, er[v] and d[v] respectively, and update its predecessor, r[v]. This stage is done through the algorithm:

procedure relax(u,v,w)
IF d[v] d[u] + 1
  d[v] = d[u] + 1
  r[v] = u
  er[v] = er[u] + w(u, v)
  IF (d[v] d[u] + 1) AND (er[v] er[u] + w(u, v))
    er[v] = er[u] + w(u, v)
    r[v] = u

Finally, we describe the adapted algorithm of Bellman-Ford as the following set of steps:

For each
For each

In the polygonal approximation case, it is necessary to achieve the geodesic path in a Complex Network that starts in a vertex s and ends in a vertex v, where . We consider this geodesic path as the shortest cycle of the network starting in vertex s.

ii.4 Hybrid strategy

An algorithm of shortest path calculation often lead the local minimums before reaching the global optima. Some researchers suggest that using a hybrid strategy between the iterations of the global search method as a way to minimize the possibility of convergence of the search into local minimums Goldberg1989

. This assures the possibility of obtaining excellent results. In the light of this, we decided to use a heuristic of local search in SP (referred to as Hybrid SP or HSP).

In polygonal approximation done for peng2004 , heuristics of split-and-merge are adopted. The method is based on the use of the hierarchical segment-merging method Leu1988 , where it is assumed that adjacent segments and have been tested and if the distance between the furthest point of and the line segment is smaller than error tolerance, the two segments can be merged yielding the new segment . The algorithm proceeds analogously by observing whether the newly defined segment and the subsequent segment can be merged. These steps proceed iteratively until the last two segments have been tested. Then, the last and first segments can finally be tested. In addition, peng2004 adopts another local optimizer called the segment-adjusting-and-merging technique where it examines each vertex of the polygon in turn and, if possible, it is adjusted to a new data point on the arc between the two adjacent vertices, so that the approximation error is reduced as much as possible. The execution stops when the dominant point stack has not changed (i.e. new dominant points and segments have not been merged).

ii.5 Algorithm

In order to get a polygonal approximation which better characterizes a curve, we proposed the algorithm described in Table 1. The basic idea is to select a set of edges from the network, where the weight of each edge is not larger than a threshold . This new set of edges transforms a regular network in a Small-World Complex Network, changing its behavior and properties. From this new network, the shortest cycle calculation takes place using the algorithm described in Section II.3. Once the initial vertex can carry out some influence on the calculated cycle, we consider each network vertex as a possible starting vertex for the cycle.

: set of points of curve in clockwise order.
: maximum value that can be attributed to .
1. Initialize
 Build the directed graph , as described in II.2.
 Be .
 Set .
2. While
 Select .
 For each
  Calculates the shortest cycle beginning in v, .
 Be the shortest cycle calculated with error smaller than .
3. Improve the solution quality in using the local optimizer.
4. Display .
Table 1: Proposed procedure

Iii Experiments and discussion

In order to observe the efficiency of the proposed method for curve polygonal approximation, we performed an experiment. For this experiment, we used two curves achieved from shape contour (Figure 3). We also used three synthesized benchmark curves (Figure 4), which are broadly used in the literature held-1994 ; ray1995 ; teh-1989 ; peng2004 . These curves had their respective polygonal approximation calculated using the proposed method with different values for the parameter . This was performed in order to observe the influence of on the approximation results, as well as the characteristics and particularities this proposed method presents.

iii.1 Parameters evaluation

As previously described, parameter is able to convert the initial network (which presents a regular behavior) into a Small-World Complex Network (Figure 5). However, we need to observe if this network really owns the same properties that characterize a Small-World network. Figure 6 shows that the modeled network presents a high clustering coefficient, regardless of the value of parameter . This shows a high level of transitivity between the network vertices, i.e., it is possible to find more than a path from vertex i to vertex j. The other property of Small-World networks refers to the existence of a small average geodesic path, i.e., every vertex can be attained from any other vertex through a small number of edges. This is an important property to the polygonal approximation problem, as the polygonal approximation is a geodesic path that starts and ends at the same vertice. Figure 7 shows the length variation of the average geodesic path and shortest cycle of the network against the value of parameter . We notice that the shortest cycle length is roughly the double of the length of the average geodesic path. In fact, a cycle can be considered as the concatenation of two average geodesic paths: the path between vertices i and k, and the path between vertices k and j, where .

Figure 3: Real curves used to validate the proposed method: (a)Fish () and (b)Guitar ().
Figure 4: Benchmark curves used to validate the proposed method: (a)Leaf (), (b)Chromosome () and (c) Semicircle ().
Figure 5: (a) Guitar figure modeled as a Complex Network, using and its shortest cycle. (b) Zoom in on a small part of the network.
Figure 6: Clustering coefficient of the Fish Figure against value.
Figure 7: Variation of shortest cycle and average geodesic path length against value for the Fish Figure.
Figure 8: Network transitivity and best polygonal approximation for several : (a) ; (b) ; (c) .
Figure 9: Maximum threshold () used for a specific and a possible function for it.

An important aspect to be considered is the stop criterion. As we increase the threshold, the network transitivity changes, as well as the maximum error allowed for a line segment . This makes possible to find out new paths in the network, and most of them using a smaller number of vertices (Figure 8). In this sense, the parameter acts as a limit of the maximum error that a polygonal approximation can achieve. It prevents us to build polygonal approximations with an inadequate number of vertices and, as a result, it avoids the deformation of the original curve.

From a specific value of , the solution found by the method does not change, i.e., it remains the same independent of how much the value of increases (Figure 7). We define this limit value for , , as the maximum threshold that can be applied to the network in order to achieve a polygonal approximation which respects the maximum error .

When we analyze the network behavior for different values, we realize that the value of depends on the chosen . In general, the value of can be assumed, roughly, as being . In some cases, like , value can be decreased to . On the other hand, is also dependent of curve aspect, and in some few case, a is necessary (Figure 9).

As the value of changes, other characteristics of the network also change. An interesting characteristic is the degree presented for each vertex in the network. The degree is the number of connections that a vertex owns in the network, i.e., the number of neighbor vertices connected to it. It is a characteristic that exists in all networks, regardless of its model, and it is related to network transitivity. Figure LABEL:fig:rede_grau shows how the vertex degree changes as we increase . This figure also shows the vertices selected to compose a polygonal approximation. We notice that most of the selected vertices remain close to local maximum points of the curve, i.e., these vertices exist in a high transitivity region of the network. They correspond to the points, in the original contour, where the higher changes in curve orientation occur. The connection that exists between the original contour and the modelled network is clear, where the curvature point in the original contour is directly related to the vertex degree.

An important detail about the method is the initial vertex used in the shortest cycle calculation. By analysing the shortest paths achieved when we consider each network vertex as a possible initial vertice, we realize that the initial vertex has no influence on the approximation result. Indeed, regardless of the initial vertex, the network presents some vertices with a higher probability to be chosen to compose the shortest cycle (Figure 10). This indicates that there is a set of vertices in the network where the cost to cross the network is minimum. Parameter is responsible for the existence of this set of vertices, as it limits the visibility of the network vertices and it prevents the construction of line segments with a high approximation error. Another consequence of this network behaviour is the small variation of the calculated cycle, regardless of the initial vertex.

Figure 10: (a)Probability of a vertex to be chosen to compose a shortest cycle of the Fish Figure, using . (b) Approximation composed by the vertex with higher a probability.

Figures 11 and 12 present some results for polygonal approximation according to the value of parameter . As the value of increases, the number of vertices used to compose the polygonal approximation decreases and, consequently, the error for this polygonal approximation increases.

Figure 11: Examples of polygonal approximation for the Fish Figure, with respective approximation error () and number of vertices (m): (a) Original Curve; (b) , ; (c) , ; (d) ,
Figure 12: Examples of polygonal approximation for the Guitar Figure, with respective approximation error () and number of vertices(m): (a) Original Curve; (b) , ; (c) , ; (d) ,

iii.2 Comparison with other methods

In order to improve the evaluation of our method, we compared our approach with other polygonal approximation method from literature. For this experiment we used many sophisticated polygonal approximation methods: the Discrete Particle Swarm Optimization (DPSO)

peng2004 , the Yin’s Ant Colony Search method (ACS) journals/pr/Yin03 , the Dominant Point Deletion (DPD) bb21110 , the Break Point Suppression (BPS) bb21121 , vertex Betweeness journals/isci/BackesB13 and using adaptive optimizations of the sub-set of dominant points of the curve (AO) journals/prl/ParvezM10 . It is important to emphasize that we implemented and run the methods used in this experiment according to the proposed specifications in their respective papers. Taking this into account, we can make a fair analysis and we avoid making a bias of the results of a specific method.

Table 2 shows the comparative performances among the various methods used in this experiment. For this experiment, we used our Shortest Path Complex Network method (SP) and a hybrid version (HSP). For the DPSO method Kennedy_Eberhart97 , we also compared its hybrid versions (referred to as HDPSO1 and HDPSO2) peng2004 . We evaluated each method by using different maximum errors per curve in order to test its efficiency to build polygons. We also conducted the methods to minimize the number of polygonal points, .

For some curves and error tolerances, the Hybrid SP version is superior to the SP method. The hybrid strategy helps the SP method to explore regions which were despised in the execution. As we increase the threshold value (which is related to vertice visibility), the SP method privileges vertices which are more distant to compose the polygonal approximation, despising nearby vertices. The optimization used on HSP re-evaluate some despised vertices and it improves the results achieved by the method. We notice that the SP and HSP methods overcome other methods. However, evaluating an method only based on and does not provide enough information about its performance. Rosin bb16661 proposes to evaluate the performance of a method using an analysis of both characteristics. This measure is called Merit and it is defined as:






The merit is based on the fidelity and efficiency measures, which are computed from the results of the evaluated and an optimal algorithms. Fidelity measures how well the approximating polygon fits the curve in terms of the approximation error, while Efficiency measures how compact the approximating polygon is. Parameters and are, respectively, the approximation error produced by optimal and tested algorithms when we produce a polygon with the same number of vertices, while and are the number of vertices from the polygon produced by, respectively, optimal and evaluated algorithms for the same approximation error. Since it is difficult to compute a polygon for a specific approximation error,

is estimated by linear interpolation of the two closest values of

. We computed the optimal polygons using the dynamic programming approach journals/pr/Sato92 . Table 2 shows the merit of the approximating polygons produced by various algorithms. According to the merit analysis, both SP and HSP algorithms present higher values of merits according to our previous analysis.

Method Merit Merit Merit Merit Merit
Leaf () DPSO 11.9(147.7) 58.9 14.6(98.9) 51.0 15.2(89.5) 50.4 20.1(29.4) 54.5 24.5(14.7) 60.6
HDPSO1 10.0(126.5) 75.0 12.5(97.1) 74.2 13.0(88.0) 70.4 16.7(26.4) 82.0 20.0(15.0) 87.1
HDPSO2 10.0(126.5) 75.0 12.0(93.3) 83.5 12.5(82.6) 80.4 16.0(26.6) 92.9 20.0(15.0) 87.1
ACS 11.2(149.5) 55.6 13.0(88.6) 81.1 13.2(81.8) 65.2 17.2(21.3) 86.2 22.2(15.0) 81.4
BPS 16.0(44.5) 71.7 16.0(44.5) 71.7 16.0(44.5) 71.7 20.0(15.4) 90.2 23.0(14.2) 75.1
DPD 10.0(127.2) 87.0 12.0(85.9) 80.3 12.0(85.9) 80.3 16.0(27.0) 98.8 20.0(14.1) 96.1
AO 18.0(33.1) 64.2 18.0(33.1) 64.2 18.0(33.1) 64.2 19.0(23.9) 74.0 21.0(14.5) 87.9
Betweenness 9.0(136.2) 98.4 11.0(99.7) 91.4 12.0(70.5) 90.8 16.0(27.5) 97.8 20.0(14.1) 96.4
SP 9.0(147.2) 82.1 11.0(100.0) 96.8 12.0(65.38) 93.1 16.0(27.09) 98.9 20.0(14.84) 95.3
HSP 9.0(147.2) 82.1 11.0(100.0) 96.8 12.0(65.38) 93.1 16.0(27.09) 98.9 20.0(14.84) 95.3
Method Merit Merit Merit Merit Merit
Chromosome () DPSO 6.7(29.4) 75.1 8.6(17.5) 65.3 11.6(9.5) 65.0 12.4(7.7) 71.7 14.4(5.9) 72.7
HDPSO1 6.0(29.7) 87.1 7.0(17.7) 95.0 10.0(9.8) 81.6 11.0(7.8) 85.0 12.7(5.8) 87.2
HDPSO2 6.0(29.7) 87.1 7.0(17.7) 95.0 10.0(9.8) 81.6 11.0(7.8) 85.0 12.0(5.8) 92.9
ACS 6.0(27.8) 70.4 8.0(19.8) 87.3 10.0(9.5) 87.2 11.0(7.8) 91.2 12.8(5.7) 87.5
BPS 9.0(18.8) 69.7 9.0(18.8) 69.7 13.0(8.5) 65.6 15.0(6.1) 69.2 17.0(3.8) 85.7
DPD 6.0(23.7) 100.0 7.0(17.7) 100.0 10.0(8.0) 100.0 11.0(7.6) 93.8 12.0(5.8) 100.0
AO 7.0(29.8) 65.1 8.0(19.7) 75.4 11.0(7.8) 92.1 11.0(7.8) 92.1 12.0(5.8) 100.0
Betweenness 6.0(23.7) 100.0 7.0(19.9) 91.7 10.0(8.1) 99.9 11.0(7.8) 92.0 12.0(5.8) 100.0
SP 6.0(25.98) 88.1 7.0(19.76) 99.7 10.0(8.79) 98.5 11.0(7.46) 100.0 12.0(5.97) 98.8
HSP 6.0(25.98) 88.1 7.0(19.76) 99.7 10.0(8.79) 98.5 11.0(7.46) 100.0 12.0(5.97) 98.8
Method Merit Merit Merit Merit Merit
Semicircle () DPSO 12.0(58.0) 52.4 14.8(29.7) 60.5 16.4(23.4) 60.0 18.4(19.8) 60.2 20.0(15.0) 65.5
HDPSO1 10.0(38.9) 71.9 12.4(29.1) 80.9 13.3(24.0) 81.0 14.8(17.9) 81.5 15.8(13.5) 92.0
HDPSO2 10.1(58.5) 70.8 12.0(29.5) 86.7 13.0(22.4) 82.9 14.2(19.8) 85.9 15.2(14.4) 97.0
ACS 10.0(58.6) 59.0 12.6(27.9) 80.3 13.4(23.6) 81.3 16.4(19.9) 72.6 18.0(14.1) 81.9
BPS 20.0(16.6) 62.2 20.0(16.6) 62.2 20.0(16.6) 62.2 20.0(16.6) 62.2 24.0(8.5) 73.2
DPD 10.0(38.9) 100.0 12.0(27.3) 96.7 13.0(21.4) 97.9 14.0(18.0) 97.3 15.0(14.4) 100.0
AO 12.0(45.3) 65.7 15.0(20.3) 78.9 15.0(20.3) 78.9 19.0(18.3) 63.0 21.0(13.2) 68.2
Betweenness 10.0(38.9) 100.0 12.0(28.9) 93.0 13.0(24.8) 88.6 14.0(19.8) 91.2 15.0(14.3) 100.0
SP 10.0(43.69) 85.5 12.0(26.38) 98.8 13.0(21.41) 100.0 14.0(18.46) 97.2 17.0(14.97) 87.0
HSP 10.0(43.69) 85.5 12.0(26.38) 98.8 13.0(21.41) 100.0 14.0(18.46) 97.2 15.0(14.40) 100.0
Table 2: Comparison with other methods using the three benchmark curves.

Considering the same error tolerance , results show that the DPSO approach produces an approximating polygon with a relatively larger number of vertices than other approaches. On the other hand, the two hybrid DPSO versions, namely the HDPSO1 and the HDPSO2, perform better than the DPSO, both in terms of the number of polygon vertices and merit. The performance of HDPSO2 is better than that of HDPSO1, as the HDPSO2 uses a more sophisticated optimizer peng2004 . Our approach has proven to be efficient to compute polygonal approximations with smaller number of vertices for different error . Moreover, our results are better than methods such as the ACS in both numbers of vertices and merit.

The BPS method presents a poor performance as it does not consider different levels of details in the curve, i.e., the algorithm computes the redundant points by considering the entire curve information. This reduces the efficiency of the algorithm. The performance of AO method is extremely dependent on the objective function. For the experiments, we considered as the the approximation error as the objective function, as in the experiments we always aimed to find a polygonal approximation that respects the maximum approximation error .

We notice that our approach performed similarly to the DPD method. For some test cases, the DPD method presented a smaller approximation error , thus leading to a higher merit (as for the semicircle contour). However, for the leaf contour, our approach presented a smaller number of points, thus leading to a higher merit value. For the same number of points , we notice a smaller approximation error for the DPD method. Such result occurs as DPD method uses a more sophisticated local optimization.

Iv Conclusion

In this paper, we proposed a novel polygonal approximation method using the networks shortest path. The method represents a contour as a Small-World network, where we represent the points of the curve as network vertices. We represent the network edges by the line segments that compose a possible polygonal approximation of the curve. Then, we compute the contour polygonal approximation as the shortest cycle that exists in this network.

The experiments illustrated that parameter acts as a visibility control in the network vertices, which limits the number of vertices that another vertex can reach to compose an approximation of the arc. We also observed that the initial vertex of the cycle does not interfere in the results, a problem that exists in sequential methods. The method is also deterministic, once it presents the same result over different runs. We also demonstrated that the proposed method is an excellent solution for the problem of polygonal approximation, performing better than traditional and more sophisticated methods. An important feature of the proposed method is its flexibility, as the visibility of enables us to compute different approximations for the same curve. Concerning the Complex Network theory, this work demonstrates a good potential of application of this approach in problems of computer vision and digital imaging processing.

V acknowledgements

O.M.B. gratefully acknowledges the financial support of CNPq (National Council for Scientific and Technological Development, Brazil) (Grant #308449/2010-0 and #473893/2010-0) and FAPESP (The State of São Paulo Research Foundation) (Grant # 2011/01523-1).


  • (1) F. Attneave. Some informational aspects of visual perception. Psychological Review, 61(2):183–193, 1954.
  • (2) A. R. Backes, D. Casanova, and O. M. Bruno. A complex network-based approach for boundary shape analysis. Pattern Recognition, 42(1):54–67, 2009.
  • (3) André Ricardo Backes and Odemir Martinez Bruno. Polygonal approximation of digital planar curves through vertex betweenness. Inf. Sci, 222:795–804, 2013.
  • (4) André Ricardo Backes, Dalcimar Casanova, and Odemir Martinez Bruno. A complex network-based approach for texture analysis. In Isabelle Bloch and Roberto M. Cesar, editors, CIARP, volume 6419 of Lecture Notes in Computer Science, pages 354–361. Springer, 2010.
  • (5) André Ricardo Backes, Dalcimar Casanova, and Odemir Martinez Bruno. Texture analysis and classification: A complex network-based approach. Information Sciences, 219(0):168 – 180, 2013.
  • (6) A. L. Barabási and R. Albert. Emergence of scaling in random networks. Science, 286(5439):509–512, 1999.
  • (7) S. Boccaletti, V. Latora, Y. Moreno, M. Chavez, and D. U. Hwang. Complex networks: Structure and dynamics. Physics Reports, 424(4–5):175–308, 2006.
  • (8) Thomas Chalumeau, Luciano daF. Costa, Olivier Laligant, and Fabrice Meriaudeau. Texture discrimination using hierarchical complex networks. In Ernesto Damiani, Kokou Yetongnon, Peter Schelkens, Albert Dipanda, Louis Legrand, and Richard Chbeir, editors, Signal Processing for Image Enhancement and Multimedia Processing, volume 31 of Multimedia Systems and Applications Series, pages 95–102. Springer US, 2008.
  • (9) B. V. Cherkassky, A. V. Goldberg, and T. Radzik. Shortest paths algorithms: Theory and experimental evaluation. In SODA: ACM-SIAM Symposium on Discrete Algorithms (A Conference on Theoretical and Experimental Analysis of Discrete Algorithms), 1994.
  • (10) L. F. Costa, O. N. Oliveira Jr., G. Travieso, F. A. Rodrigues, P. R. Villas Boas, L. Antiqueira, M. P. Viana, and L. E. C. Rocha. Analyzing and modeling real-world phenomena with complex networks: a survey of applications. Advances in Physics, 60(3):329–412, 2011.
  • (11) L. da F. Costa. Complex networks, simple vision. arXiv:cond-mat/0403346, 2004.
  • (12) L. da F. Costa and R. M. Cesar, Jr. Shape Analysis and Classification: Theory and Practice. CRC Press, 2000.
  • (13) L. da F. Costa, F. A. Rodrigues, G. Travieso, and P. R. Villas Boas. Characterization of complex networks: A survey of measurements. Advances in Physics, 56(1):167–242, 2007.
  • (14) S. N. Dorogovtsev and J. F. F Mendes. Evolution of Networks: from Biological nets to the Internet and WWW. Oxford University Press, 1 edition edition, 2003.
  • (15) P. Erdös and A. Rényi. On random graphs. Publicationes Mathematicae, 6:290–297, 1959.
  • (16) P. Erdös and A. Rényi. On the evolution of random graphs. Publ. Math. Inst. Hung. Acad. Sci, 5:17–61, 1960.
  • (17) P. J. Flory. Molecular size distribution in three-dimensional polymers. Journal of the American Chemical Society, 63:3083–3090, 1941.
  • (18) D. E. Goldberg. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley Professional, 1989.
  • (19) Wesley Nunes Gonçalves, Jonathan Andrade Silva, and Odemir Martinez Bruno.

    A rotation invariant face recognition method based on complex network.

    In Isabelle Bloch and Jr. Cesar, RobertoM., editors, Progress in Pattern Recognition, Image Analysis, Computer Vision, and Applications, volume 6419 of Lecture Notes in Computer Science, pages 426–433. Springer Berlin Heidelberg, 2010.
  • (20) A. Held, K. Abe, and C. Arcelli. Towards a hierarchical contour description via dominant point detection. IEEE Trans. System Man Cybernet, 24:942–949, 1994.
  • (21) J. Kennedy and R.C. Eberhart. A discrete binary version of the particle swarm algorithm. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics, pages 4104–4108, 1997.
  • (22) A. Kolesnikov and P. Franti. Polygonal approximation of closed contours. In Scandinavian Conference on Image Analysis, pages 778–785, 2003.
  • (23) Alexander Kolesnikov.

    Efficient algorithms for vectorization and polygonal approximation

    PhD thesis, University of Joensuu, 2003.
  • (24) Alexander Kolesnikov and Pasi Fränti. Reduced-search dynamic programming for approximation of polygonal curves. Pattern Recognition Letters, 24(14):2243–2254, 2003.
  • (25) Jia-Guu Leu and Limin Chen. Polygonal approximation of 2-d shapes through boundary merging. Pattern Recognition Letters, 7(4):231–238, 1988.
  • (26) D. J. Marchette. Random Graphs for Statistical Pattern Recognition. 1 edition edition, 2005.
  • (27) A. Masood. Optimized polygonal approximation by dominant point deletion. Pattern Recognition, 41(1):227–239, 2008.
  • (28) M. E. J. Newman. The Structure and Function of Complex Networks. SIAM Review, 45(2):167–256, 2003.
  • (29) Mohammad Tanvir Parvez and Sabri A. Mahmoud. Polygonal approximation of digital planar curves through adaptive optimizations. Pattern Recognition Letters, 31(13):1997–2005, 2010.
  • (30) A. Carmona Poyato, F. J. Madrid Cuevas, R. Medina Carnicer, and R. Munoz Salinas. Polygonal approximation of digital planar curves through break point suppression. Pattern Recognition, 43(1):14–25,, 2010.
  • (31) A. Rapoport. Nets with distance bias. Bulletin of Mathematical Biophysics, 13:85–91, 1951.
  • (32) A. Rapoport. Contribution to the theory of random and biased nets. Bulletin of Mathematical Biophysics, 19:257–277, 1957.
  • (33) B. K. Ray and K. S. Ray. A new split-and-merge technique for polygonal approximation of chain coded curves. Pattern Recognition, 16:161–169, 1995.
  • (34) P.L. Rosin. Techniques for assessing polygonal approximations of curves. PAMI, 19(6):659–666, June 1997.
  • (35) Yukio Sato. Piecewise linear approximation of plane curves by perimeter optimization. Pattern Recognition, 25(12):1535–1543, 1992.
  • (36) Jin Tang, Bo Jiang, Chin-Chen Chang, and Bin Luo. Graph structure analysis based on complex network. Digital Signal Processing, 22(5):713 – 725, 2012.
  • (37) C. H. Teh and R. T. Chin. On the detection of dominant points on digital curves. IEEE Trans Anal, 1:859–872, 1989.
  • (38) D. J. Watts and S. H. Strogatz. Collective dynamics of ‘small-world’ networks. Nature, 393:440–442, 1998.
  • (39) Peng-Yeng Yin. Ant colony search algorithms for optimal polygonal approximation of plane curves. Pattern Recognition, 36(8):1783–1797, 2003.
  • (40) Peng-Yeng Yin. Discrete particle swarm algorithm for optimal polygonal approximation of digital curves. Journal of Visual Communication and Image Representations, 15(2):241–260, 2004.