vicur: a human-vision-based algorithm for curve...

11
VICUR: A human-vision-based algorithm for curve reconstruction Thanh An Nguyen, Yong Zeng Faculty of Engineering and Computer Science, Concordia Institute for Information Systems Engineering, Concordia University,1455 de Maisonneuve Blvd. West, EV07.633, Montreal, Quebec, Canada H3G 1M8 article info Keywords: Curve reconstruction Human vision system Proximity Continuation Gestalt law abstract In this paper, a new algorithm, named VICUR, is presented for curve reconstruction problem. From a set of unorganized points, the proposed algorithm can construct curves that look natural to human vision. The VICUR algorithm is based on two connectivity criteria: proximity and good continuation from the prominent Gestalt principles of perception. Experimental results are presented to show the effectiveness of VICUR. & 2008 Elsevier Ltd. All rights reserved. 1. Introduction 1.1. Background The main problem of curve reconstruction is constructing a polygonal representation of an unknown curve from a set of sample points, as shown in Fig. 1 . Curve reconstruction has many applications in manufacturing engineering, biomedical engineer- ing, computer vision, and pattern recognition. One example can be found in the reconstruction of 3D image that models a real object. In general, the process is divided into three main steps. In the first step, technologies such as Magnetic Resonance Imaging (MRI), X-ray Computed Tomography (CT) or laser scanner takes digitized image slices from the object. Boundary points of each slice are then extracted. Fig. 2 shows the point cloud produced by a 3D digitizer. At this step, each slice is represented by a set of points, called sampled points. In the second step, the sampled points on each slice will be connected to reconstruct curves as illustrated in Fig. 3. Each slice may include multiple curves with various features such as sharp corners or boundaries. The sampled points may be distributed uniformly or non-uniformly. In the last step, constructed curves are assembled to form a 3D image. Fig. 4 shows an example where the constructed slices from Fig. 3 are put together. Because of its importance in various application domains, curve reconstruction has been attracting numerous research attentions over the last three decades. In general, existing algorithms construct only simple curves. A simple curve is a curve without self-intersection. There are mainly two kinds of simple curves: open and closed curves. A simple curve may contain sharp corner. A simple curve without sharp corner is called smooth curve. All these curves can be sampled either uniformly or non-uniformly. There are a few algorithms working for uniformly sampled curves such as alpha-shape [1], r-regular shape [2], and EMST [3]. There are other algorithms that work for non-uniformly sampled curves such as Crust [4,5], Nearest Neighbor [6], Conservative Crust [7], Traveling Salesman Path [8,9], and Gathan [10,11]. Non-uniform sampling allows sparser sampling at less detailed section of the curve while uniform sampling unnecessarily requires dense sampling in areas where sparse sampling should be enough. Most of the existing algorithms work for non-uniform sample requires the sampling points to be an e-sample. A point set P is called an e-sample of a curve T if any point p on T has a sample within distance gf(p) where g is a constant factor and f(p) is the local feature size at p defined as the minimum Euclidean distance from p to the medial axis [12]. In the curve reconstruction problem, the original curve is not known and the sample set is taken arbitrarily. Most of the existing algorithms provide a sampling condition with respect to geo- metric properties, which may result in a sample set not natural to human vision. When some connections go wrong, it is not easy or intuitive to find a sample to produce the right reconstruction. This is an inspiration to develop an algorithm that is able to connect a set of unorganized points to form a pattern that is consistent with human visual system. 1.2. Literature reviews The first provable curve reconstruction algorithm for simple close smooth curves is given by Amenta–Bern–Eppstein named Crust [4]. The paper proves that for gp0.252 the polygonal reconstruction of a curve is the crust. The crust is constructed by computing Delaunay triangulation on the set of sampling points ARTICLE IN PRESS Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/rcim Robotics and Computer-Integrated Manufacturing 0736-5845/$ - see front matter & 2008 Elsevier Ltd. All rights reserved. doi:10.1016/j.rcim.2008.03.007 Corresponding author. Tel.: +15148482424x5801; fax: +15148483171. E-mail address: [email protected] (Y. Zeng). Robotics and Computer-Integrated Manufacturing 24 (2008) 824– 834

Upload: others

Post on 21-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Robotics and Computer-Integrated Manufacturing 24 (2008) 824– 834

Contents lists available at ScienceDirect

Robotics and Computer-Integrated Manufacturing

0736-58

doi:10.1

� Corr

E-m

journal homepage: www.elsevier.com/locate/rcim

VICUR: A human-vision-based algorithm for curve reconstruction

Thanh An Nguyen, Yong Zeng �

Faculty of Engineering and Computer Science, Concordia Institute for Information Systems Engineering, Concordia University, 1455 de Maisonneuve Blvd. West, EV07.633, Montreal,

Quebec, Canada H3G 1M8

a r t i c l e i n f o

Keywords:

Curve reconstruction

Human vision system

Proximity

Continuation

Gestalt law

45/$ - see front matter & 2008 Elsevier Ltd. A

016/j.rcim.2008.03.007

esponding author. Tel.: +1514 8482424x5801

ail address: [email protected] (Y. Zeng)

a b s t r a c t

In this paper, a new algorithm, named VICUR, is presented for curve reconstruction problem. From a set

of unorganized points, the proposed algorithm can construct curves that look natural to human vision.

The VICUR algorithm is based on two connectivity criteria: proximity and good continuation from the

prominent Gestalt principles of perception. Experimental results are presented to show the

effectiveness of VICUR.

& 2008 Elsevier Ltd. All rights reserved.

1. Introduction

1.1. Background

The main problem of curve reconstruction is constructing apolygonal representation of an unknown curve from a set ofsample points, as shown in Fig. 1. Curve reconstruction has manyapplications in manufacturing engineering, biomedical engineer-ing, computer vision, and pattern recognition. One example can befound in the reconstruction of 3D image that models a real object.In general, the process is divided into three main steps. In the firststep, technologies such as Magnetic Resonance Imaging (MRI),X-ray Computed Tomography (CT) or laser scanner takes digitizedimage slices from the object. Boundary points of each slice arethen extracted. Fig. 2 shows the point cloud produced by a 3Ddigitizer. At this step, each slice is represented by a set of points,called sampled points.

In the second step, the sampled points on each slice will beconnected to reconstruct curves as illustrated in Fig. 3. Each slicemay include multiple curves with various features such as sharpcorners or boundaries. The sampled points may be distributeduniformly or non-uniformly.

In the last step, constructed curves are assembled to form a 3Dimage. Fig. 4 shows an example where the constructed slices fromFig. 3 are put together.

Because of its importance in various application domains,curve reconstruction has been attracting numerous researchattentions over the last three decades. In general, existingalgorithms construct only simple curves. A simple curve is acurve without self-intersection. There are mainly two kinds ofsimple curves: open and closed curves. A simple curve may

ll rights reserved.

; fax: +1514 8483171.

.

contain sharp corner. A simple curve without sharp corner iscalled smooth curve. All these curves can be sampled eitheruniformly or non-uniformly. There are a few algorithms workingfor uniformly sampled curves such as alpha-shape [1], r-regularshape [2], and EMST [3]. There are other algorithms that work fornon-uniformly sampled curves such as Crust [4,5], NearestNeighbor [6], Conservative Crust [7], Traveling Salesman Path[8,9], and Gathan [10,11]. Non-uniform sampling allows sparsersampling at less detailed section of the curve while uniformsampling unnecessarily requires dense sampling in areas wheresparse sampling should be enough. Most of the existingalgorithms work for non-uniform sample requires the samplingpoints to be an e-sample. A point set P is called an e-sample of acurve T if any point p on T has a sample within distance gf(p)where g is a constant factor and f(p) is the local feature size at p

defined as the minimum Euclidean distance from p to the medialaxis [12].

In the curve reconstruction problem, the original curve is notknown and the sample set is taken arbitrarily. Most of the existingalgorithms provide a sampling condition with respect to geo-metric properties, which may result in a sample set not natural tohuman vision. When some connections go wrong, it is not easy orintuitive to find a sample to produce the right reconstruction. Thisis an inspiration to develop an algorithm that is able to connect aset of unorganized points to form a pattern that is consistent withhuman visual system.

1.2. Literature reviews

The first provable curve reconstruction algorithm for simpleclose smooth curves is given by Amenta–Bern–Eppstein namedCrust [4]. The paper proves that for gp0.252 the polygonalreconstruction of a curve is the crust. The crust is constructed bycomputing Delaunay triangulation on the set of sampling points

Page 2: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834 825

and Voronoi vertices, and choosing only Delaunay edges whichhave the endpoints belonging to the set of sampling points. Later,Dey–Kumar presented Nearest Neighbor (NN-Crust) algorithm [6]which is based on Crust. The algorithm constructs simple close

Fig. 1. Curve reconstruction problem.

Fig. 2. A set of 3D points.

Fig. 3. Each slice is constructed.

Fig. 4. Constructed curve

smooth curves by connecting each point to its nearest neighbor;then, for each point p that is incident to only one edge e, thealgorithm connects p to its nearest neighbor in the other halfspaceorthogonal to e. In fact, NN-Crust is based on Crust but with bettersampling density. To deal with open curves, Dey–Mehlhorn–Ramos proposed Conservative Crust [7]. The algorithm constructsthe curve by computing Delaunay triangulation on the samplingpoints and choosing only Delaunay edge e which has an emptyball of Voronoi vertices centering at the midpoint of e with radiusl(e)/p where p is a parameter for the algorithm and l(e) is thelength of edge e. Then it filters all chosen edges e that have a largeenough ball centering at the midpoint of e containing a 01 or 11vertices. Conservative Crust presents g as a constant c multipliedby parameter p. Later, Funke–Ramos used Conservative Crustwith different sampling condition near corner points to guaranteeconstruction of open non-smooth curves [13]. In 1999, Dey–Wenger proposed an algorithm, named Gathan, which canconstruct curves with sharp corners [10]. The algorithm requiresdifferent sampling conditions near non-smooth region andsmooth region of the curve. The sampling density near non-smooth region is dependent on the angle of the sharp corner.Nevertheless, Dey–Wenger does not guarantee the reconstructionresult of their algorithm. In 2002, a guarantee version of Gathan isintroduced called GathanG [11]. Another algorithm can recon-struct non-smooth curve is based on traveling salesman problem(TSP). TSP-based algorithm defines a modified cost function to setthe sampling condition for every two adjacent sample points on acurve [8]. This condition results in a sparser sampling densitycompared to Crust, NN-Crust, and Conservative-Crust [14].According to Althaus–Mehlhorn, the TSP algorithm also worksfor the same sampling condition in the algorithms Crust, NN-Crustand Conservative-Crust [14]. However, TSP only handles closesingle curve. Recently, a parameter-free, distance-based algorithmDISCUR proposed in Ref. [15] requires neither parameters in thealgorithm nor parameters in the sampling condition. Based on avision function defined in terms of distances, the algorithm aimsto construct curves that agree with human vision system.

According to proximity and continuity rules of Gestalt laws,human visual system tends to group nearest points given thatthey are close enough and human eyes tend to connect points toform a smooth curve [16]. Algorithm DISCUR connects the samplepoints based merely on proximity. This means constructing curvesbased on proximity property also guarantees continuity propertyof the curves.

Guaranteed reconstruction of DISCUR algorithm is based ontwo theorems. The first theorem provides sampling condition forsampling interior points while the second theorem ensures thatboundaries are detected correctly. DISCUR is proved to correctlyreconstruct non-smooth open curves. However, since the algo-rithm uses only nearness to quantify human visual perception,

s and surfaces in 3D.

Page 3: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Fig. 5. Wrong construction by DISCUR [15]. (a) Sampling point and (b) reconstructed result by DISCUR.

Fig. 6. Desired result [15].

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834826

wrong construction may occur when a sample has more than onenearest neighbors. The shortcoming of DISCUR is demonstrated inFig. 5 where there are two neighbors with equal distance, DISCURwill arbitrarily choose one of them to make a connection andwrong construction occurs as is shown in Fig. 5(b). The desiredreconstruction should be as shown in Fig. 6.

Another issue with DISCUR is that although it can constructnon-smooth curve, a very dense sampling is required near thesharp corner area as shown in Fig. 7(c). If smoothness property isconsidered, sparser sampling density can be sufficient becausehuman eyes are capable of recognizing the curve in Fig. 7(b) fromthe sample in Fig. 7(a).

To overcome the problems implied in the algorithm DISCUR, apreliminary effort of applying the experimental method was madein the author’s research group in an attempt to include thecontinuity property in the vision function [17]. A group ofexperiments were conducted to find out the relation betweenthe connectivity of a point to a reconstructed curve segment. Theexperiments were focused on factors such as point size, thenumber of points that should be considered from the recon-structed curve segment, and statistical properties of the con-cerned curve segment. The algorithm developed in Ref. [17] cangenerate comparable results to those from existing ones undersome circumstances, which shows that it is possible to obtain thevision function through experiments. However, its advantages arenot obvious. By redesigning the experiments, vision function, andthe connection rules, a robust human-vision-based curve recon-struction algorithm, named VICUR, is proposed in this paper.Numerical experiments show that the algorithm VICUR’s perfor-mance conforms well to human visual system.

The rest of this paper is organized as follows. Section 2introduces the structure of the algorithm VICUR. VICUR canconstruct the sample points to form a pattern that looks natural tohuman visual system. Section 3 presents experimental results toshow the effectiveness of the algorithm; limit of VICUR is alsodiscussed in this section. Finally, conclusion is given in Section 4.

2. VICUR algorithm

2.1. Notations and definitions

2.1.1. Characteristics of curves

The distance between any two points p and q in a point set istheir Euclidean distance, denoted by d(p, q) ¼ ||p�q||. A polyline T

is a piecewise linear curve and is denoted as T ¼ ½p1; p2; . . . ; pm�

where p1, p2, y, pm are vertices on the polyline and piapiþ1 for alli ¼ 1, 2, y, m�1. If p1 6¼pm, then T is open; otherwise, T is closed.

An open polyline T ¼ ½p1; p2; . . . ;pm� is called a-smooth if:

p� apffðpi�1pipiþ1Þppþ a; i ¼ 2;3; . . . ;m� 1, (1)

where ffðpi�1pipiþ1Þ is the angle at vertex pi. How the angle at avertex is computed is decided by the candidate angle which isdefined in next section. Value a determines the smoothness of thecurve. The smaller the value a is, the smoother the curve is. In thispaper, we set a ¼ 451 for all the experiments.

2.1.2. Connectivity area

We observe that human eyes tend to connect a point to anexisting curve when the point lies within a certain areadetermined by the characteristics of the curve. We name thisarea connectivity area, which is illustrated in Fig. 8.

The connectivity area at an endpoint p1, denoted as Aðp1;Rp1Þ, is

a set of points having the probability of connection to p1 greaterthan 0 and is defined as a sector of a circle centering at p1 withcenter angle y and radius Rp1

¼ bd where b is a parameter and d isthe average distance of the a-smooth curve defined in Eq. (1). Allpoints within connectivity area are called candidate points. Thesegment between candidate point and curve endpoint is called acandidate segment. The line segment incident to a curve endpointis called ending segment. Points fall outside the bounded area areconsidered as outliers.

In Fig. 8, p is a reference point, p0 is an outlier with respect top1, pp1 is a candidate segment, and p1p2 and p4p5 are curve-endingsegments. The edge p1p2 is the bisector of +(Mp1N). The anglebetween candidate segment pp1 and curve ending segment p1p2 iscalled candidate angle and is defined as a clockwise rotation fromcandidate segment to curve ending segment. The choice of angleat each vertex is determined by the candidate angle. It is obviousthat a curve divides the plane into two parts so the angle at eachvertex is chosen to be in the part which contains the candidateangle. In Fig. 8(b), a is the candidate angle and a1 is the angle atvertex p2.

2.1.3. Vision function

When there are two or more than two sampling points in aconnectivity area, all these samples are candidates to beconsidered for connection to the corresponding curve endpoint.Thus, it is necessary to define a criterion to evaluate the possibilityof the connectivity for each sample in the connectivity area.

We express this criterion as a dynamic function:

E½p; Tp1� ¼ f ðp;VÞ, (2)

where E½p; Tp1� is the connectivity value between sample p and

curve endpoint p1, Tp1is an a-smooth segment of the curve and V

is a vector that comprises statistical properties of the curvesegment Tp1

, such as the distance mean, distance standarddeviation, angle mean, and angle standard deviation. We haveconducted several experiments on how human connect points toconstruct a curve. From the collected data, we derived five factorswhich have the most impact on the construction process. Thesefactors include candidate angle, length of candidate segment,average angle, average distance of the curve, and standarddeviation of the distance. Based on these elements, a concrete

Page 4: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Fig. 8. Connectivity area is a bounded area. (a) Connectivity area and (b) candidate

angle, candidate segment.

Fig. 9. Relationship between candidate angle and parameter, ds ¼ d and a ¼ 180� .

Fig. 7. Human vision can virtually construct a curve from a set of points when the points are well distributed. (a)Sample, (b) constructed curve and (c) DISCUR.

Fig. 10. Relationship between candidate distance and parameter, as ¼ a ¼ 180�.

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834 827

form of the function obtained through observation and experi-ment is given as follows:

E½p; Tp1� ¼ c

as

a� 1

� �2þ

1� c

4

� �ds

dþ s

� �2

þ 1

" #�1

, (3)

where as is the candidate angle, c is the user-defined parameter, ais the average angle, ds is the length of candidate segment; d and sare defined in Eqs. (4) and (5) as follows:

d ¼

Pm�1i¼1 jjpi � piþ1jj

m� 1, (4)

s ¼

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiPm�1i¼1 ðjjpi � piþ1jj � dÞ2

m� 2

s. (5)

We assume that if p and p1 have the highest value E½p; Tp1�, then

they can be connected.Fig. 9 illustrates the relationship among candidate angle as,

parameter c and the connectivity value. Given ds ¼ d anda ¼ 180�, for any parameter c connectivity value is largest whenthe value of candidate angle as reaches the value of average anglea. The effect of candidate angle as on connectivity value increaseswhen parameter c approaches 1. When parameter c equals to 0,connectivity value remains unchanged regardless of the value of

candidate angle because at this time connectivity value isdetermined by candidate distance ds only.

Fig. 10 shows the effect of candidate distance ds and parameterc on the connectivity value. When parameter c approaches 1,connectivity value is determined by candidate angle as. Whencandidate distance ds approaches 0 which means that candidatepoint is very near curve endpoint, the connectivity value rises

Page 5: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Fig. 11. Relationship between candidate distance and candidate angle, c ¼ 0.8.

Fig. 12. Connectivity rule for two free points.

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834828

substantially. When parameters c approaches 0, the impact ofcandidate distance ds on the connectivity value increases.

In Fig. 11, given parameter c ¼ 0.8, the largest connectivityvalue occurs when candidate angle as reaches the mean anglevalue a and candidate distance ds approaches 0. This means pointswhich are very near to the constructed curve endpoint and alsoform the smoothest path with the constructed curve have the highpossibility to connect to the curve. When the candidate angle as

deviates from the angle mean a, the connectivity value decreases.Similarly, when candidate distance ds is far from curve endpoint,connectivity value decreases.

In summary, when connecting a point to a curve, two factorsshould be considered: distance from the point to the curveendpoint and the smoothness of the curve after the point isconnected. If the nearest point to the curve endpoint also formswith the constructed curve the smoothest path, connection iseasily determined. However, conflict arises when the nearestpoint does not form with the constructed curve a smooth path andwhen a point connects to the constructed curve resulting in thesmoothest path is not the nearest point. To solve this difficulty,parameter c is introduced. When parameter c approaches 0, thenearness property becomes more important than the smoothnessproperty. In this case, the algorithm tries to connect the nearestneighbor rather than constructing a smooth curve. On the otherhand, when parameter c approaches 1, the algorithm tries tomaintain the smoothness of the curve.

2.2. Connectivity rules

Curve reconstruction can be considered as the combination ofthree problems: connecting two points, connecting a point to acurve and connecting two curves. To deal with these threeproblems, the two Gestalt principles of perception are adopted:proximity and continuity. Firstly, Gestalt theory indicates thathuman eyes perceive close elements as group. In the context ofcurve reconstruction, this means human tend to connect nearestpoints to form a curve. However, in some cases two closestneighbors are not necessarily two adjacent points on a curve. Forexample, in the case of sharp corner illustrated in Fig. 12 samplep2 and p3 are the nearest neighbors to each other but human eyesdo not see them being adjacent on the curve. Therefore, anattempt to connect any two nearest free points may result inwrong connection. In this case, we observe that the shortest edgep2p3 forms with p3p5 (or p3p4) an angle smaller than +(p1p3p5).Therefore, before trying to connect p2 to p3, it should be checked ifthere is an angle g at p3 (or p2) formed by p2p3 and other incident

edges such that g is larger than other angle at p3 (or p2) formed byedges other than p2p3. For any angle formed by two edges, weconsider interior angle.

However, there is a case where the edge between two freepoints forms with other edge a largest angle but these twopoints should not be connected. The situation is illustrated inFig. 12 where +(p2p3p6) is the largest angle but p2 should notconnect to p3. This leads to another observation: there is athreshold for which all the points can be considered as ‘a group’.Beyond this value, a point is seen as outlier or belongs to anothergroup. This observation can be considered as an attempt toquantify proximity law of Gestalt theory. Based on our experimentresults, we compute the threshold as the average distance of theshortest and second shortest Delaunay edges multiplied by aconstant.

Secondly, Gestalt law of continuity states that human eyesconnect points into the smoothest path. This property ofperception suggests that after a point is connected to a curve, itshould not introduce abrupt change to the statistical properties ofthe curve [15]. To achieve this objective, a vision functionintroduced in Section 2.1.3 should be used. Based on the aboveassumptions, we propose the following rules to determineconnection between two samples.

Rule 1. (Point–point connectivity). For any shortest edge e ¼ [q1,q2] where q1 and q2 are both free points. Let B(q1, r) be a ballcentered at q1 with radius r ¼ 1=2fðq1qk1

þ q1qk2Þ where q1qk1

and q1qk2are the shortest and second shortest Delaunay edge to

q1. If there exists a qi such that ffðqtq1qjÞoffðqiq1q2Þ for allqi; qj; qt 2 B and q2efqi; qj; qtg where +(qtq1qj) and +(qiq1q2) arethe interior angles at q1, then q1 and q2 can be connected.

Rule 2. (Point–curve connectivity). For an a-smooth curveT ¼ ½p1; p2; . . . ;pm�; m41, which is partially reconstructed from asample set S, if there exists a sampling point pi 2 Aðp1;Rp1

Þ (orAðpm;Rpm

Þ) such that E½pi; Tp1�4E½pj; Tp1

� (or E½pi; Tpm�4E½pj; Tpm

�) forall pj 2 Aðp1;Rp1

Þ (or Aðpm;RpmÞ), then pi and p1 (or pm) can be

connected.

Rule 3. (Curve–curve connectivity). For two a-smooth curves T ¼

½p1; p2; . . . ;pm�; T0¼ ½q1; q2; . . . ; qn�; m;n41 which is partially re-

constructed from a sample set S, if p1 (or pm) can connect to T0 byRule 1 or q1 (or qn) can connect to T by Rule 1, then these twocurves can be connected.

2.3. Algorithm

Algorithm (input: sample S)Step 1: Compute Delaunay triangulation. Let D be a set of

Delaunay edges and R be a set of temporarily removed edges.Initially, R’0.

Page 6: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834 829

Step 2: Let e ¼ ½pi; pj� 2 D be a shortest Delaunay edge. Thereare three possibilities for e:

(1)

Both pi and pj are free points.Apply Rule 1 with f ¼ 1.849. If pi and pj cannot be connected,then R R [ ½pi; pj�. Otherwise, connect pi to pj.

(2)

Fig. 13. Input sample and Delaunay triangulation.

Point pi is an endpoint of curve T and pj is a free point.Consider only a-smooth Tpi

of curve T. Construct connectivityarea Aðpi;Rpi

Þ with b ¼ 1.849 and y ¼ 2701� If there does not exist a point q 2 Aðpi;Rpi

Þ such thatpiq 2 D [ R, then R R [ ½pi; pj�.� If there exists only one point q 2 Aðpi;Rpi

Þ such thatpiq 2 D [ R, then connect pi to q.� If there exists more than one point q 2 Aðpi;Rpi

Þ such thatpiq 2 D [ R, then compute the connectivity value E½q; Tpi

for each q. Choose the point q with the largest correspond-ing connectivity value to connect to pi.

(3)

Both pi and pj are endpoints.For each pi, pj where pi is an endpoint of curve T and pj is anendpoint of curve T0, consider only the a-smooth Tpi

, T0

piof

curve T and T0, respectively. Construct connectivity areaAðpi;Rpi

Þ and Aðpj;RpjÞ

� If there does not exist a point q 2 Aðpi;RpiÞ such that piq 2

D [ R and there does not exist a point q0 2 Aðpj;RpjÞ such

that pjq0 2 D [ R then R R [ ½pi; pj�.

� If there exists a point q 2 Aðpi;RpiÞ such that piq 2 D [ R and

there does not exist a point q0 2 Aðpj;RpjÞ such that pjq

0 2

D [ R then connect pi to q.� If there exists point(s) q 2 Aðpi;Rpi

Þ such that piq 2 D [ R

and there exists point(s) q0 2 Aðpj;RpjÞ such that

pjq0 2 D [ R, then compute connectivity value E½q; Tpi

� andE½q0; Tpj

�. Choose the point with the largest connectivityvalue to connect to corresponding endpoint.

Remove [pi, pj] from D. Repeat Step 2 until D becomes empty set.Step 3: As long as D becomes empty, remove all edges in set R

and put them in set D. Apply (1), (2) and (3) in Step 2. However,this time when pi is connected to pj to form a curve T00, examine T00

for potential extension by exploring all edges e 2 fD [ Rg adjacentto T00, and apply (1), (2) and (3) in Step 2 for each edge e found. Theexploration stops when curve T00 can no longer be extended atboth endpoints. Step 3 terminates when D becomes empty.

The main idea of the algorithm above is that we first findthe closest pair of sampling points. If two samples are free, applyRule 1 in Section 2.2. If one of the samples is not free or both ofthe samples are not free, construct connectivity area and applyRules 2 or 3. Currently, value b and f are set to 1.849 because ofmany successful experiments.

Fig. 14. Construction in step two of VICUR algorithm.

3. Experimental results and discussions

3.1. Results of the algorithm

In this section, procedure of VICUR algorithm will be demon-strated. Fig. 13 shows input sample and corresponding Delaunaytriangulation.

Fig. 14 shows that three situations may occur in Step 2 of thealgorithm. The three situations are described as follows:

Fig. 14(a)) shows that p1p2 is the shortest Delaunay edge andboth p1 and p2 are free points. The algorithm checks ifconnection between p1 and p2 may result in potentially wrongconnection by drawing a ball Bðp1;Rp1

Þ as shown in Fig. 14(b)where Rp1

¼ 1=2fðp1p2 þ p1p5Þ. There are six samples in the

ball B : p1; p2; p3; p4; p5; p8. We find that ffp4p1p54ffp2p1p8 sop1 and p2 fails the checking test and is temporarily removed.

� Fig. 14(c)) shows p7p8 is the shortest Delaunay edge where p7

is an endpoint of Tp7¼ ½p7; p6� and p8 is endpoint of Tp8

¼

½p8; p9; p10; p11; p12; p13�. Construct connectivity area Aðp7;Rp7Þ at

p7 for Tp7and construct Aðp8;Rp8

Þ at p8 for T0

p8because T

0

p8¼

½p8;p9; p10� is an a-smooth segment of curve Tp8. Fig. 14(d)

shows p7 2 Aðp8;Rp8Þ and p8 2 Aðp7;Rp7

Þ. Thus, p7 and p8 isconnected and p7p8 is removed from Delaunay set.

� Segment p5p1 is the shortest Delaunay edge, p1 is an endpoint

of Tp1¼ ½p1; p4; p3; p2� and p5 is free point. We have [p1, p4]

which is an edge of the a-smooth curve Tp1¼ ½p1; p4; p3; p2�.

Construct the connectivity area Aðp1;Rp1Þ as shown in Fig. 14(f).

Page 7: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834830

Vertex p2 is the only sample in Aðp1;Rp1Þ available forconnection so p1 and p2 are connected and removed fromDelaunay set.

Step 2 repeats until Delaunay set becomes empty.Fig. 15 shows Step 3 of the algorithm. In Step 3, all the

temporarily removed edges in Step 2 are reconsidered becauseduring construction process, the curve may be updated whichmakes connectivity value and connectivity area changed. Fig. 15shows that all the temporarily removed edges are converted toDelaunay edges for reconsideration. Repeat Step 2 on newDelaunay edge set. The reconstructed result is depicted in Fig. 16.

To highlight the effectiveness of VICUR, Fig. 17 shows anintuitive sample set including multiple single open and closedcurves. Reconstructed curves from VICUR algorithm conforms tohuman vision. Also, constructed results from other algorithms arepresented in Fig. 18.

Fig. 15. Step three of VICUR algorithm.

Fig. 16. Final result.

Fig. 17. Reconstructed curves by VIC

3.2. Sampling condition

Most of the current algorithms use medial axis or local featuresize to determine sampling condition. As a result, the sample setsfor those algorithms are not intuitive. In contrast, VICUR algorithmaims to work for intuitive sampling condition, which implies thatthe samples are connected to form curves that look natural tohuman eyes. Intuitive sampling condition helps users to have bettercontrol over the sample set. For instance, when construction goeswrong, users just need to use their perception to adjust the sampleset and construction should be correct. Fig. 19 shows an examplewhere connection between points from the new algorithm agreeswith human perception compared with other algorithms.

3.3. Boundary and sharp corner

Most of the current algorithms can construct closed smoothcurves correctly. To reconstruct non-smooth curve, Giesen devel-oped TSP but the algorithm can construct only single closedcurves [9]. Dey–Wenger introduced another algorithm namedGathan which can detect corner point and endpoint well inpractice but with no guarantees [10]. Later, they proposedGathanG algorithm based on Gathan [11]. GathanG guaranteescorrect construction on closed curves but not on open curves.Fig. 20 shows a situation where GathanG fails. The algorithmDISCUR presented in Ref. [15] can also handle sharp corners butsampling is very dense near the corner compared to our newalgorithm as shown in Fig. 21. Our algorithm correctly constructcurve with the sample given in Fig. 21(a) while DISCUR needs adenser sampling, Fig. 21(d). Ramos–Funke also proposed anotheralgorithm that can construct open non-smooth curves withguarantees [13]. However, due to limited resources we did not doany experiment with their algorithm. The only comparison we did isthe MPI data set taken from the article as shown in Fig. 22 [13].

3.4. Discussion

Despite the fact that VICUR can handle well many examples,we are aware of the limit of our algorithm. Firstly, VICUR issensitive to vertex position. Fig. 23 illustrates such a situationwhere human eyes hardly realize a difference between 461 and431. Construction result of Fig. 23(a) and (c) should be similar.However, given y ¼ 2701, from the algorithm perspective, p3 inFig. 23(a) is considered within connectivity area boundarywhereas in Fig. 23(c) p3 is considered out of the range. As a

UR. (a) Sample and (b) VICUR.

Page 8: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Fig. 18. Reconstructed curves by other algorithms. (a) NN-Crust, (b)Crust, (c) conservative Crust and (d) GathanG.

Fig. 19. Result from VICUR is consistent with human visual system. (a) Sample set, (b) Crust, (c) NN-Crust, (d) GathanG, (e) DISCUR and (f) VICUR.

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834 831

Page 9: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

Fig. 20. GathanG fails to construct open curves. (a) Sample set, (b) GathanG and (c) our algorithm.

Fig. 21. DICUR requires dense sampling around corner point. (a) Sample set, (b) our algorithm, (c) DISCUR and (d) Sample set for DISCUR.

Fig. 22. Result of MPI data set from Funke–Ramos’s article. (a) Funke–Ramos’s algorithm and (b) VICUR.

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834832

result, sample p3 cannot be connected to p1, causing constructionresult Fig. 23(b) and (d) to be different.

Secondly, although checking between two free points prior toconnection helps avoid wrong connection in case of sharp corner,sometimes it may create a problem as shown in Fig. 24(b). In this

case, VICUR detects +(p1p2p3) as a sharp corner with p2 as acorner point. Consequently, the algorithm does not connect p1 top3 and construction result becomes unnatural to human vision.However, this problem can be fixed easily by increasing thesampling density, as is shown in Fig. 24.

Page 10: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834 833

Additionally, we will try to find more accurate parameters tobetter evaluate connectivity value and to better identify con-nectivity area. Currently, based on numbers of experiments y areset at 2701, b and f are set at 1.849. In the future, we aim to findoptimal value that correctly constructs all sample sets. Most of theexamples work best with c ¼ 0.8. However, in some cases, the

Fig. 23. VICUR is sensitive to vertex position. (a) +(p2p1p3) ¼ 461, (b) construction

result (c) +(p2p1p3) ¼ 431 and (d) construction result.

Fig. 24. Wrong construction. (a) Sample set (b) wron

Fig. 25. Different parameters yield different resul

curve is constructed correctly with c ¼ 0.7 or c ¼ 0.9 as illustratedin Fig. 25.

4. Conclusion

We proposed a new algorithm for curve reconstructionnamed VICUR. Foundation of VICUR algorithm is establishedfrom two laws of Gestalt theories of perceptual organization:law of proximity and law of continuity. VICUR can constructopen, non-smooth curve and the result is agreeable with humanperception. Our algorithm is developed based on statisticaldata obtained from experiments. Motivation for our algorithm isnot only to provide a new approach to curve reconstructionproblem but also to attempt to quantify some properties of humanvisual perception. Although our algorithm does not havea mathematical proof to guarantee its correctness, the com-plexity of our successful experiments shows the effectivenessof our algorithm. The future work will include the developmentof a better vision function based on more comprehensiveexperiments.

Acknowledgments

We would like to thank Mr. Guangqing He for his discussionsabout the vision function during the research. Without data fromhis experiment, we can hardly find the appropriate parametervalue for our algorithm within a short period of time. In addition,we would like to express sincere thanks to Mr. Shuren Li forbuilding a basic curve-reconstruction application which facilitatesour task for implementing and testing our algorithm.

g connection and (c) Sampling density increased.

ts. (a) Sample set (b) c ¼ 0.8 and (c) c ¼ 0.9.

Page 11: VICUR: A human-vision-based algorithm for curve reconstructionusers.encs.concordia.ca/~design/reference/VICUR.pdf · 2008. 9. 4. · single curve. Recently, a parameter-free, distance-based

ARTICLE IN PRESS

T. An Nguyen, Y. Zeng / Robotics and Computer-Integrated Manufacturing 24 (2008) 824–834834

References

[1] Edelsbrunner H, Kirkpatrick D, Seidel R. On the shape of a set of points in theplane. IEEE Trans Inf Theory 1983;29:71–8.

[2] Attali D. r-Regular shape reconstruction from unorganized points. In:Proceedings of the 13th annual ACM symposium on computational geometry,1997. p. 248–53.

[3] Henrique de Figueiredo L, Gomes J. Computational morphology of curves. VisComput 1995;11:105–12.

[4] Amenta N, Bern M, Eppstein D. The crust and the beta-skeleton: combinator-ial curve reconstruction. Graph Models Image Process: GMIP 1998;60:125–35.

[5] Gold C. Crust and anti-crust: a one-step boundary and skeleton extractionalgorithm. In: Proceedings of the 15th annual ACM symposium on computa-tional geometry, 1999. p. 189–96.

[6] Dey TK, Kumar P. A simple provable algorithm for curve reconstruction. In:Proceedings of the 10th annual ACM-SIAM symposium on discrete algo-rithms, 1999. p. 893–4.

[7] Dey TK, Mehlhorn K, Ramos E. Curve reconstruction: connecting dots withgood reason. In: Proceedings of the 15th annual ACM symposium oncomputational geometry, 1999. p. 197–206.

[8] Althaus E, Mehlhorn K. TSP-based curve reconstruction in polynomial time.In: Symposium on discrete algorithms, 2000. p. 686–95.

[9] Giesen J. Curve reconstruction, the TSP, and Menger’s theorem on length. In:Proceedings of the 15th annual ACM symposium on computational geometry,1999. p. 207–16.

[10] Dey TK, Wenger R. Reconstructing curves with sharp corners. Comput GeomTheory Appl 2001;19:89–99.

[11] Dey TK, Wenger R. Fast reconstruction of curves with sharp corners. Int JComput Geom Appl 2002:353–400.

[12] Dey TK. Curve and surface reconstruction. Cambridge University Press; 2006.[13] Funke S, Ramos EA. Reconstructing a collection of curves with corners and

endpoints. In: Symposium on discrete algorithms, 2001. p. 344–53.[14] Althaus E, Mehlhorn K, Naher S, Schirra S. Experiments on curve reconstruc-

tion. In: Proceedings of the 2nd workshop algorithm eng. exper., 2000.p. 103–14.

[15] Zeng Y, Nguyen TA, Yan BQ, Li SR. A distance-based parameter free algorithmfor curve reconstruction. Comput Aided Des 2008, in press.

[16] Mather G. Foundations of perception. Comput Aided Des 2008;40:210–22.[17] Li SR. Vision based curve reconstruction. Master thesis, Concordia University,

Canada, 2007.