Post Job Free
Sign in

Engineering Mechanical

Location:
South Korea
Posted:
November 20, 2012

Contact this candidate

Resume:

Int J Adv Manuf Technol (****) **: *** ***

DOI **.1007/s00170-003-1695-x

O R I GI N A L A R T IC L E

Y. Lee S. Park Y. Jun W. C. Choi

A robust approach to edge detection of scanned point data

Received: 21 October 2002 / Accepted: 24 February 2003 / Published online: 16 December 2003

Springer-Verlag London Limited 2003

Abstract In reverse engineering, segmentation is used to Keywords Reverse engineering Edge detection

divide a point data set into subsequent regions according Cost criteria Region-growing

to its shape. It is vital for interpretation of discrete

scanned data since surface reconstruction can be

accomplished one-by-one on a given region. Edge

detection is crucial to the segmentation process. The 1 Introduction

level of edge detection depends on the complexity of the

part, and it determines the eventual success or failure of Many products, from household appliances to auto-

the reverse engineering (RE) process. This paper pro- mobiles, contain separate and distinct regions. In reverse

poses a novel approach to the edge detection of 3D engineering, segmentation is a step to divide a point data

points based on a region growing technique. The pro- set into subsequent regions according to its shape. It is

posed algorithm consists of two parts. First, polygonal vital for interpretation of discrete scanned data since

meshes are generated to the scanned point data using the surface reconstruction can be accomplished one-by-one

Delaunay triangulation algorithm. Second, the normal on a given region. Edge detection is crucial for the seg-

vector and the area of a polygonal mesh are checked to mentation process.

nd boundary meshes using cost criteria (angle criterion Edges can be classi ed into two basic types: a sharp

and area criterion) based upon a region growing tech- edge and a smooth edge. The former corresponds to

nique. The region growing technique aggregates meshes points or meshes where a normal vector changes its

into a region until the area of aggregated meshes reaches direction abruptly, while the latter corresponds to points

an area threshold from a series of seed meshes. The where a normal vector direction changes gradually, as

proposed edge detection method is found to be e ective shown in Fig. 1.

when compared with other methods. Approaches to edge detection fall into two main

categories: edge-based [1, 2, 3, 4, 5, 6, 7, 8] and face-

based approaches [9, 10]. In the edge-based method,

Y. Lee discontinuous edge points are rst detected from the raw

Department of Mechanical Engineering,

scanned points and then used to guide the segmentation

Korea University, 1, 5-ka Anam-dong,

process. Sarkar and Meng [3] used traditional image

Sungbuk-ku, Seoul 136-701, Korea

processing techniques for edge detection. Canny [1]

S. Park proposed an edge detector by computing the derivative

Systems Technology Division,

in the estimated gradient direction at each datum. The

Korea Institute of Science and Technology (KIST),

surface edges were detected by a zero-crossing edge

PO Box 131, Cheongryang, Seoul, Korea

E-mail: *******@****.**.** detection method [4] that is based on the Laplacian

Tel.: +822-***-****

operator. However, this method may not be e ective

Fax: +822-***-****

with noisy data. A principal curvature method [8] was

Y. Jun widely used in edge detection. This method assumes that

Department of Mechanical Engineering,

a triangle mesh approximates a smooth surface with the

Sejong University, 98 Gunja-dong,

vertices as sampled surface points. It yields a good result

Gwangjin-gu, Seoul 143-747, Korea

for regular meshes, but it may not be e ective in large,

W. C. Choi

rounded meshes or irregular meshes. In this research, the

Department of Mechanical Engineering,

comparison between the principal curvature method and

Korea University, 1, 5-ka Anam-dong,

the proposed method is given in Sect. 4.

Sungbuk-ku, Seoul 136-701, Korea

264

Fig. 2 Region growing

Fig. 1 Two types of edges: a Sharp edge. b Smooth edge

The face-based method divides point data into con- This paper is composed as follows. Section 2 sum-

nected regions of points according to geometric prop- marizes overall research methodology on the poly-

erties such as normals, curvatures, etc. Typically, the gon-based RE procedure. In Sect. 3, detailed steps of

regions are enlarged around seed points. Besl and Jain the proposed edge-detection algorithm are described.

[9] used a polynomial-based region growing approach. Examples are given and discussed in Sect. 4. Finally,

The approach is suitable for surfaces with sharp edges Sect. 5 presents conclusions and some suggestions for

and curvature discontinuity regions, but it is not good future research.

for free-form surfaces. In general, face-based approaches

are more robust to noise than edge-based approaches.

However, the determination of an appropriate criterion

2 Polygon-based RE techniques

is not straightforward since the edge detection resulting

from region growing could be sensitive to the chosen

In this section, the overall procedure of the polygon-

threshold value.

based RE is brie y reviewed. As shown in Fig. 3, the

In order to complement the two methods, a hybrid

rst step is to obtain geometric information about a part

approach adopts a combination of face- and edge-based

shape. Over the years, many 3D scanners have been

considerations. Park and Jun [11] proposed segmenta-

developed to scan the surfaces of a target part, pro-

tion for primitive analytic surfaces based upon the hy-

ducing a point cloud, which as a whole de ne the surface

brid method.

shapes. In general, an initially scanned point set is very

The edge detection method proposed in this paper

large and normally contains many redundant points.

uses the hybrid approach described by Park and Jun

For RE e ciency, the redundant points need to be re-

[12]. The region growing technique and boundary-mesh

moved by sampling. The second step of the polygon-

detection are typical characteristics of the face-based

based RE process is a triangulation process. A Delaunay

and edge-based approach, respectively. In the rst step

of edge detection, in order to determine the boundaries

of subsequent regions, the system generates polygonal

meshes from the scanned input points and computes a

cost value for each edge from the generated meshes as a

reference value. The cost value of each polygonal mesh is

calculated by the area and the normal vector. Obviously,

it makes sense to use a high cost value to detect

boundary meshes. The basic concept behind detecting

them is to select all the meshes whose cost value is higher

than a certain threshold (cost criterion). The next step in

edge detection is the region growing process. A polyg-

onal mesh is aggregated into a sub-region until the area

of the sub-region reaches the user-de ned area thresh-

old, as shown in Fig. 2.

In this paper, proper cost values for prismatic parts

and free-form surfaces are proposed. Furthermore, the

e ciency of the proposed method is compared with that

of the principal curvature method. Finally, the rela-

tionship between the threshold value for the cost crite-

rion for edge detection and the polygon mesh size is

analysed. Fig. 3 Flowchart of polygon-based RE

265

triangulation [13] method is applied to construct

polygonal meshes from the scanned point set. The basic

concept of the triangulation algorithm is to ll the

convex hull of the scanned points with triangles, such

that: 1. the vertices of the triangles are those of the

scanned points, and 2. the circumscribing circle of any

triangle does not contain any other points inside the

circle. The point data set may contain several separate

and distinct regions. In order to make the surface

reconstruction process more e cient, the data set needs

to be divided into regions. Hence, the next step is to

detect the boundary meshes from the geometric infor-

mation of the generated polygonal meshes, because the Fig. 4 Disjointed edge curves in the corner

detected boundary meshes can be used as a bridge be-

tween the scanned point data and the corresponding

surface. Then, region growing is performed on the me-

shes by comparing the normal of the seed mesh and the

normal of the last mesh. A detailed polygon-based edge-

detection algorithm is discussed in depth in Sect. 3.

Finally, the segmentation process with the result of the

edge detection divides the point set into several con-

stituent regions. Each segmented mesh is reconstructed

into an appropriate surface according to geometric

algorithms.

3 Edge-detection algorithm

The basic idea of the proposed mesh detection is based

on the computation of an angle di erence between two

normal vectors of two neighbouring meshes. All the

meshes where the angle change in the normal vector is

Fig. 5 Boundary polygonal meshes (shaded)

beyond a certain tolerance are regarded as boundary

meshes. In a traditional point-oriented approach, dis-

The cost value of each polygonal mesh needs to be

crete boundary points are detected and attached to each

computed to determine the boundaries of distinctive

other to form a continuous loop. However, in practise,

regions. In practise, if the scanned model contains only

they are unlikely to be closed at the corner where several

several prismatic shapes rather than free-formed shapes,

edge curves meet as shown in Fig. 4, so that edge points

the boundary-mesh detection can be accomplished by

cannot be used for the boundary perimeter of regions.

just comparing the normal vectors of two neighbouring

However, in this approach, polygonal meshes are used

polygonal meshes, as shown in Fig. 6.

to connect disjointed boundary curves in order to close

From the given set of polygonal meshes, the angle

the boundaries at the corner. The boundary meshes are

di erence between the normal vectors of two consecu-

de ned, as all the meshes that contain edge points. All of

tive meshes is calculated. Then, by examining the set of

the boundary meshes are detected and then marked as

di erence angles, mesh boundaries can be readily sear-

the boundaries as shown in Fig. 5.

ched by comparison with a user-de ned angle threshold.

In order to perform boundary-mesh detection, a cost

However, the main limitation of the above method is

value needs to be de ned for the polygon model. The

that it can hardly detect smooth edges in rounded areas

cost value is de ned as a certain tolerance that deter-

because the normal vectors of the adjacent meshes

mines whether or not the meshes are boundary meshes.

Fig. 6 Prismatic part edge

detection. a Model with

polygonal mesh. b Normal

computation. c Mesh

boundaries based upon normals

266

Fig. 7 Rounded boundary meshes

change gradually (Fig. 7). It is assumed that h is the

angle di erence between two consecutive normal vectors

in the rounded area. If there are too many polygonal

meshes, h can be less than the angle threshold in the

rounded area. Hence, the rounded boundary is unlikely

to be detected because the angle di erence between

normal vectors of two neighbouring meshes may be very

small. In order to overcome this problem, the area of

polygonal meshes is also considered. Polygonal meshes

are aggregated until the sum reaches an area threshold

which is de ned by the user. Therefore, the angle dif-

ference is computed from the normal vectors of each

seed mesh and last mesh, which is then merged into an

aggregation. The seed meshes with region aggregation

are iteratively selected from the whole meshes until no

more meshes join. Then a new aggregation starts using

the next available seed mesh.

The cost criteria is de ned as

hc Angle difference between the normal vectors of the

seed mesh and the last mesh in an aggregation.

Area of aggregated meshes so far. This value is the

Sc

relative value of the average area of the whole

meshes (Savg).

Two typical characteristics of the angle and area

thresholds are possible as follows (Fig. 8). One case is if

the area (S2) of the mesh neighbouring a seed mesh is

larger than Savg, then only the angle threshold is con-

sidered, as shown in Fig. 8a. The di erence angle h is

computed from two normals, N1 and N2. Then, the angle

di erence is compared with the angle threshold (hc)

to determine whether or not the mesh is on the boundary.

The other case occurs if S2 is smaller than Savg, the

region growing process starts from a seed mesh, as in

step 1, shown in Fig. 8b. The next mesh is searched

for by comparing the normal vectors of the current

mesh and its adjacent meshes. Then the mesh to be

aggregated is a neighbouring mesh which has a max-

Fig. 8 Two cases of edge detection. a Case 1: angle threshold.

imum angle di erence. The mesh is aggregated into a

b Case 2: angle and area threshold

region until the sum of the mesh areas exceeds a user-

de ned area threshold (Sc). When the cumulative area

of meshes is larger than Sc, the angle di erence be- di erence between these two normal vectors exceeds a

tween the normal vectors of the seed mesh and the user-de ned angle threshold (hc), all the aggregated

current mesh is compared (step 2 in Fig. 8b). If the meshes become boundary meshes. Then, the line of

267

the boundary meshes is regarded as the boundary

edge. The process continues until no more mesh is

available. The algorithm of edge detection is shown in

Fig. 9.

4 Examples and analysis

The proposed edge-detection algorithm was imple-

mented using Visual C++ 6.0 and OpenGL. To vali-

date the edge detection methodology, three parts were

selected as shown in Table 1.

EzScan [14], a scanning device by Solutionix, Inc.,

was used to scan the part. The scanned point sets are

shown in Figs. 10a, 11a, 12a, and 13a. Fig. 10a shows

the point clouds of the transmission model. The model is

250 mm wide, 282 mm high and 288 mm deep. Fig. 10b

shows the detected meshes for area threshold

(Sc)=0.5 average area (Savg) and the angle threshold

(hc)=20, while Sc=2 Savg, hc=20 and Sc=2 Savg,

hc=45 in Figs. 10c and 10d, respectively.

Figs. 10b and 10c show the e ect of the area

threshold. It can be seen that the rounded boundary

meshes are detected and that the area threshold has in-

creased. The e ect of the angle di erence threshold is

shown in Figs. 10c and 10d. When the angle threshold

increases, the number of boundary meshes on the

rounded area is reduced.

In this section, a comparison between the proposed

edge detection method and the principal curvature

method [8] is performed. In the principal curvature

method, if the sampling density of the polygon model is

very high, the underlying surface can be approximated

accurately by meshes of circular arcs. The tolerance of

the principal curvature method does not represent a

curvature value but a ratio of total edge points. It ranges

from zero to one. If it is close to one, the number of edge

points is increased. Details of the principal curvature

method can be found in reference [8].

Figures 11a and b show the point clouds and gen-

erated meshes for a mouse, respectively. Figure 11c

shows edge detection results using the principal cur-

vature method. It can be seen that the smooth edges

are not detected well. On the other hand, the edge

detection of the smooth areas yields a good result,

obtained using the proposed method as shown in

Fig. 11d. This example shows that edge detection of the

smooth areas represents better performance for the

proposed edge detection method than for the principal

curvature method.

Table 1 Characteristics of the examples

Transmission Mouse Plate Plate

(Fig. 12) (Fig. 13)

Number of points 155***-***** 521**-*****

Fig. 9 Algorithm of edge detection

Number of faces 306***-***** 102***-*****

Average area (mm) 1.264 0.311 0.116 0.231

268

Fig. 10 Edge detection of

di erent area threshold (Sc) and

angle threshold (hc). a Point

clouds. b Sc=0.5 Savg and

hc=20 . c Sc=2 Savg

and hc=20 . d Sc=2 Savg and

hc=45

Fig. 11 Comparison of two

methods. a Point clouds.

b Triangular mesh. c Principal

curvature (tolerance=0.85).

d Sc=2.5 Savg and hc=10

Figure 12a shows the point clouds of a plate model. proposed method and the principal curvature method.

The size of the model is approximately 86 104 42 mm. They show that the edge detection results are similar to

Figures 12b and c show the detected edges using the each other, since the mesh size is uniform.

269

Fig. 12 Edge detection for a

plate. a Point clouds.

b Principal curvature

(tolerance=0.8). c Sc=2.5 Savg

and hc=10

Fig. 13 Edge detection for a

plate (50% reduction of

Fig. 12). a Point clouds.

b Principal curvature

(tolerance=0.85).

c Sc=2.5 Savg and hc=20

270

the area threshold, but mesh size variation does relate

to the angle threshold.

Table 2 represents proper cost values for prismatic

models and free-form models. These values were deter-

mined empirically through several experiments. The

angle threshold for the transmission model indicates that

a higher value than that of free-form models is desirable.

This means that the number of sharp edges on the

prismatic model is larger than that of free-form models.

Also, the area threshold of the free-form models has a

higher value than that of the prismatic model. Due to a

number of rounding areas, the aggregated mesh area is

large. As a consequence, when comparing edge detection

of the free-form model with that of the prismatic model,

one notes that the area threshold (Sc) is increased and

the angle threshold (hc) is decreased.

Fig. 14 Relationship between the angle threshold and the mesh size 5 Conclusions

of the model

In this paper, a polygon-based edge-detection algo-

rithm for segmentation was proposed. The algorithm

Table 2 Proper cost values of the examples detects part boundaries using angle and area criteria.

Several examples were presented to validate the e -

Prismatic model Free-form model

ciency of the proposed method. Proper cost values for

Transmission Plate Mouse prismatic and free-formed parts are presented. More-

over, the relationship between cost criteria and mesh

hc (degree) 20 10 10

size of the polygon model was analysed. This algorithm

2 Savg 2.5 Savg 2.5 Savg

Sc

is capable of detecting both sharp edges and rounded

edges. The proposed algorithm is superior to the

principal curvature method, especially when mesh size

Figure 13a indicates that the number of points in the

is irregular.

point clouds is reduced by 50% of the original plate

The proposed edge-detection algorithm can be used

model. Due to mesh decimation [15], the mesh size is

not only for segmentation, but also for feature line

irregular and the average mesh size is increased (Ta-

extraction. Further work is needed to analyse the cost

ble 1). The result of the principal curvature method is

criteria for polygon models of noisy data.

poor, as shown in Fig. 13b, but the proposed method

yields a good result as shown in Fig. 13c. This method is

more robust for the mesh size and irregularity. In

References

Fig. 13c, it is apparent that the angle threshold is in-

creased two times as compared to the one in Fig. 12c.

This means that the angle threshold is increased due to 1. Canny J (1986) A computational approach to edge detection.

IEEE Trans Pattern Anal 8(6):679 698

the large mesh size. This example con rms the robust-

2. Ho man R, Jain AK (1987) Segmentation and classi cation of

ness of the method for mesh size and irregularity when range images. IEEE Trans Pattern Anal 9(5):608 620

the proper angle and area thresholds are found. 3. Sarkar B, Meng CH (1991) Smooth-surface approximation and

When the area threshold (Sc=2 Savg) is xed, the reverse engineering. Comput Aided Des 23(9):623 628

4. Chen LC, Lin GCI (1997) A vision-aided reverse engineering

relationship between the variation of the angle thresh-

approach to reconstructing free-from surfaces. Robot Comput

old and the mesh size of the polygon model is shown in Integr Manuf 13(4):323 336

Fig. 14. The reduction ratio means a decrease ratio 5. Milroy MJ, Bradley C, Vickers GW (1997) Segmentation of a

from the original model, as shown in Fig. 14. Thus, as wrap-around model using an active contour. Comput Aided

Des 29(4):299 320

the reduction ratio of the mesh is increased, the num-

6. Yang M, Lee E (1999) Segmentation of measured point data

ber of faces for the original model is reduced and the

using a parametric quadric surface approximation. Comput

mesh size is increased. Due to the large mesh size, the Aided Des 31(7):449 457

di erence on the normal vector is increased. Therefore, 7. Dickinson SJ, Metaxas D, Pentland A (2000) Constrained

the angle threshold is increased. While the reduction recovery of deformable models from range data. In: Proceed-

ings of international workshop visual form, Capri, Italy

ratio of mesh size is increased, the average area (Savg)

8. Girod B, Greiner G, Niemann H (2000) Principles of 3D image

of the total meshes is increased. Therefore, since the analysis and synthesis. Kluwer, Dordrecht, pp 166 180

area threshold is a multiple of Savg, it is not change- 9. Besl PJ, Jain RC (1988) Segmentation through variable-order

able. As a result, variation of mesh size is irrelevant to surface tting. IEEE Trans Pattern Anal 10(2):167 192

271

10. Checchin P, Trassoudaine L, Alizon J (1997) Segmentation of 13. Cignoni P, Montani C, Scopigno R (1998) DeWall: a fast di-

vide and conquer Delaunay triangulation algorithm in Ed.

range images into planar regions. In: Proceedings of interna-

tional conference on recent advances in 3D digital imaging and Comput Aided Des 30(5):333 341

modeling, pp 156 163 14. http://www.solutionix.com/eng/engineering/3dscanners_stan.asp

11. Park S, Jun Y (2000) Face-based reverse engineering approach 15. Schroeder WJ, Zerge JA, Lorensen WE (1992) Decimation of

to primitive analytic surfaces. In: 2000 international CIRP triangle meshes. In: Proceedings of SIGGRAPH 92 computer

design seminar. Haifa, Israel, May 2000, pp 423 428 graphics conference, pp 65 70

12. Park S, Jun Y (2002) Automated segmentation of point data in

a feature-based reverse engineering system. In: Proceedings of

the institution of mechanical engineers, part B, J Eng Manuf

216:445 451



Contact this candidate