Int J Adv Manuf Technol (****) **:*** ***
DOI **.1007/s00170-009-1951-9
ORIGINAL ARTICLE
Planar segmentation of data from a laser pro le scanner
mounted on an industrial robot
J. A. P. Kjellander Mohamed Rahayem
Received: 29 October 2008 / Accepted: 27 January 2009 / Published online: 24 February 2009
Springer-Verlag London Limited 2009
Abstract In industrial applications like rapid prototyp- cover the entire object the pro le scanner is moved
ing, robot vision, and geometric reverse engineering, along the surface and new images are captured. The
where speed and automatic operation are important, result is a series of pro les, each captured with the
an industrial robot and a laser pro le scanner can scanner in a different pose. The pro le scanner is usu-
be used as a 3D measurement system. This paper is ally mounted on a mechanical device that controls the
concerned with the problem of segmenting the data scanner movement, or at least records the scanner pose
from such a system into regions that can be tted with of each pro le in 3D. This makes it possible to map the
planar surfaces. We have developed a new algorithm 2D points in the pro les to a common 3D coordinate
for planar segmentation based on laser scan pro les and system and the result is then often referred to as a
robot poses. Compared to a traditional algorithm that point cloud. Point clouds may be used in applications
operates on a point cloud, the new algorithm is shown like inspection, geometric reverse engineering, object
to be more effective and faster. recognition or navigation. In such applications the point
cloud is often processed by a segmentation algorithm
Keywords 3D measurement system that uses a geometrical constraint to group points into
Laser pro le scanner Industrial robot regions representing planes, cylinders or higher order
Segmentation Planar regions surfaces. Planar segmentation is thus de ned as the
problem of identifying points that belong to the same
plane. We believe that the industrial robot, although
1 Introduction not widely used for this purpose, is an interesting al-
ternative as a carrier of a laser pro le scanner. A robot
Optical measurement systems can be used to rapidly is fast, exible, robust and relatively cheap compared
acquire the coordinates of dense sets of 3D points from with a coordinate measuring machine (CMM). To test
the surfaces of real world objects. One such system is the idea, we have mounted a laser pro le scanner on
the laser pro le scanner, see Fig. 1, which projects a an industrial robot with a turntable, see Fig. 2 and see
straight line on the object while a digital camera cap- [17 19] for details on motion control, image processing,
tures the image of the projection. Pixels representing and noise ltering. It is important to note that the
the projected line are then joined into a 2D pro le. To absolute accuracy of an industrial robot is much lower
than the accuracy of a laser pro le scanner. In [27],
we show that the accuracy of our robot is in the range
J. A. P. Kjellander M. Rahayem (B) of 400 m, while the accuracy of the laser pro le
School of Science and Technology, rebro University, scanner is approx. 10 times better ( 50 m). Individual
SE-701 82 rebro, Sweden
pro les will thus be relatively accurate, but accuracy is
e-mail: abpxte@r.postjobfree.com
lost when they are mapped to the point cloud. In the
URL: www.oru.se/nt/cad
scope of planar segmentation, it should therefore be of
J. A. P. Kjellander
interest to investigate if segmentation algorithms can
e-mail: abpxte@r.postjobfree.com
182 Int J Adv Manuf Technol (2009) 45:181 190
Fig. 1 The laser pro le scanner mounted on an industrial robot
take advantage of the relatively high accuracy of the 2D
pro les. It is also likely that an algorithm operating on
2D data would be faster than an algorithm based on 3D
point clouds. This has been shown for range images but
not for data from pro le scanners as far as we know. A
range image scanner is similar to a pro le scanner but
is not moved relative to the object. The scanner itself
Fig. 2 A laser pro le scanner mounted on an industrial robot
moves the line over the surface of the object, usually by
with a turntable
rotating the laser source around a xed axis. The range
camera thus creates a series of pro les, each related to a
speci c angle of rotation but all in the same coordinate
is described in [20]. A motorized rotary table with two
system.
degrees of freedom and a laser scanner mounted on a
This paper includes a literature review covering laser
computer numerical control (CNC) machine with four
scanning and segmentation. In Section 3, the implemen-
degrees of freedom is described in [33]. Callieri et al.
tations of two segmentation algorithms under consider-
[3] present a system based on a range laser scanner
ation are presented. Section 4 presents the results of
mounted on the arm of an industrial robot in combina-
three different experiments. Finally, in Section 5, we
tion with a turntable. For details on view planning and
conclude the paper and propose future work.
automated 3D object reconstruction and inspection, see
[31].
2 Literature review
2.2 Segmentation
2.1 Laser scanning
Segmentation is a wide and complex task, both in terms
of problem formulation and solution approach in differ-
Laser scanning represents a wide range of related tech-
ent applications. Approaches described in the literature
nologies. In [2], Blais presents a review of 3D digitizing
are usually classi ed in one of the following categories.
techniques with a focus on commercial systems. Pito
and Bajcsy [25] present a simple system by combining a
xed range camera with a turntable. Two more exible 2.2.1 Edge-based approaches
systems are described in [4, 22], where a CMM is used
in combination with a laser pro le scanner. A laser Edge-based approaches attempt to detect discontinu-
pro le scanner with two charge-coupled device (CCD) ities in the surface represented by the point data.
cameras mounted on a three-axis transport mechanism Fan et al. [8] used local surface curvature properties
Int J Adv Manuf Technol (2009) 45:181 190 183
Jain [12] segmented range images into surface patches
Capture profile
and classi ed them as planar, convex, or concave based
data
on a nonparametric statistical test. Besl and Jain [1]
developed a segmentation method based on variable
order surface tting. A region-growing algorithm based
Split profiles and fit on numerical curvature estimation of mesh triangles
line segments was published by Sacchi et al. [28, 29]. Miguel and
Shimada [35] automatically segmented a dense mesh
into regions approximated by single surfaces. The al-
gorithm iterates between region growing and surface
Find the longest line
tting to maximize the number of connected vertices
and use its neighbours
approximated by a single surface. Rabbani et al. [26]
to define a seed plane
segmented a point cloud by using local surface normals
and point connectivity.
Grow the region
2.2.3 Hybrid approaches
around the seed
Hybrid segmentation approaches have been developed
No Seed Found
where the edge-based and region growing-based ap-
Find Next Seed
proaches are combined. The approach proposed by
Yokoya and Levine in [38] divided a point cloud into
surface primitives using biquadratic surface tting. The
Remove over
segmented data were homogeneous in differential geo-
segmented planes
metric properties and did not contain discontinuities.
The Gaussian and mean curvatures were computed
and used to perform the initial region-based segmen-
tation. Then, after employing two additional edge-
Fit planes
based segmentations from the partial derivatives and
depth values, the nal segmentation was applied to
Fig. 3 Main steps of planar segmentation using 2D pro les
the initially segmented data. Checchin et al. [5] used a
hybrid approach that combined edge detection based
to identify signi cant boundaries in range image data.
Chen and Liu [6] segmented data from a CMM by
slicing and tting them with 2D NURBS curves. The
boundary points were detected by calculating the max-
imum curvature of the tted curve. Milroy et al. [23]
used a semiautomatic edge-based approach for orthog-
onal cross section (OCS) models. Yang and Lee in
[37] identify edge points as the curvature extremes
by estimating the surface curvature. Sappa and Devy
[30] propose an algorithm that very quickly processes
large-range images. The proposed algorithm consists
of two steps. First, a binary edge map is generated.
Then, a contour detection strategy is responsible for
the extraction of the different boundaries. Demarsin
et al. [7] presented an algorithm to extract closed sharp
feature lines, which is necessary to create a closed curve
network.
2.2.2 Region growing-based approaches
Approaches based on region growing use local surface
properties to detect continuous surfaces. Hoffman and Fig. 4 Photograph of object 1
184 Int J Adv Manuf Technol (2009) 45:181 190
on the surface normals and region growing to merge
over segmented regions. Zhao et al. [39] employed a
method based on triangulation and region grouping
that uses edges, critical points, and surface normals.
Gotardo et al. [11] used and improved an estimator
in an iterative process to extract planar and quadric
surfaces from range images. Additionally, a genetic
algorithm was speci cally designed to accelerate the
process of surface extraction. Finally, general overviews
and surveys of segmentation methods are provided by
[1] and [24, 32, 36]. In addition, Hoover et al. [13]
present a comprehensive experimental comparison of
techniques for range image segmentation into planar
patches. Fig. 6 Object 1 after planar segmentation using method 1
source or the camera. Since 2D operations are usually
3 Methodology
faster than 3D ones, we want to investigate if P j,i can
be used to speed up computations compared to existing
3.1 Problem formulation
methods operating on S, where all data are 3D. We
will show that this is possible and also compare the
An organized point cloud S is de ned as a set of points
new algorithm with an existing method based on point
in 3D spatially sorted in a topologically triangular or
clouds in three experiments.
rectangular grid. Planar segmentation of S is the par-
titioning of S into planar regions { R1, R2, R3, Rn },
where n is the number of planar regions in S, and 3.2 Planar segmentation using 2D pro les
Ri R j =, i = j, and R S. See Section 2 for ref-
erences to such methods. This paper is concerned with Planar segmentation using 2D pro les is based on the
planar segmentation of data from a laser pro le scan- fact that the image of a straight line projected on a
ner. If such a scanner is moved along a path, it will out- planar surface is also a straight line. Similar algorithms
put a sequence of M pro les F j, where j = 1, 2, 3 M. applied to range images are described in [14, 16]. A
Each pro le F j is de ned in its own coordinate system recursive splitting and line tting algorithm, based on
C j, in 3D, as a sequence of 2D points P j,i = (x j,i, y j,i ), scalar thresholds Dmax and Lmin, is therefore applied as
where i = 1, 2, 3 N j and x j,i 1 Dmax, split the pro le at P j,dmax and apply the test
recursively on the new point sets until all D