Professional Documents
Culture Documents
www.elsevier.com/locate/cad
Abstract
Precision inspection has been widely used in manufacturing to measure the dimensional accuracy of parts and products to meet the quality
requirements. For regular geometric features, coordinate-measuring machines (CMM) can be used effectively to assess the accuracy and
tolerances. For parts with free-form surfaces, the inspection becomes complex. Therefore, numerous researches have been carried out to
tackle both fundamental and application issues concerning free-form surface inspection. In addition to academic research, some commercial
packages have also been developed.
This paper provides a comprehensive literature review of methodologies, techniques and various processes of inspections of parts with
free-form surfaces. The specific topics cover: measurement data acquiring methods including contact and non-contact measurement
approaches; inspection planning; geometric description methods of design models or measurement data; and, the free-form surface
localization and comparison techniques, which are emphasized in this paper and mainly include the establishment of corresponding
relationship, 3D transformation solving, measurement data to design model comparison or surface to surface distance calculations. Other
issues, such as the influence factors to the localization/registration process, definition and inspection of free-form surface tolerance, and
discussions on the functions of some commercial inspection packages available on market, are also discussed.
q 2004 Elsevier Ltd. All rights reserved.
Keywords: Free-form surface; Inspection; Comparison and localization
1. Introduction
Free-form surfaces are widely used in many fields
ranging from design and manufacturing of die/mold,
patterns and models, and products in plastics, automotive
and aerospace industries to biomedical, entertainment and
geographical data processing applications. In the last several
decades, significant research and development efforts have
been made for the design and manufacturing of products/
objects consisting partially or solely of free-form surfaces.
Almost all CAD systems have the capability of designing
and modeling of free-form surfaces. Modern CNC machines
can be used to manufacture free-form surfaces. To ensure
manufacturing quality, free-form surfaces should be
inspected after they are produced.
It is a fundamental issue in product manufacturing to
determine if a manufactured object meets the design
requirements from which this object was made. For products
with regular features, such as plane and cylinder,
* Corresponding author. Tel.: 1-403-220-5770; fax: 1-403-282-8406.
E-mail address: gu@enme.ucalgary.ca (P. Gu).
0010-4485/$ - see front matter q 2004 Elsevier Ltd. All rights reserved.
doi:10.1016/j.cad.2004.02.009
1396
and NURBS surfaces) [61]. The characterization of freeform surfaces is given by P. J. Besla free-form surface has
a well-defined surface normal that is continuous almost
everywhere except at vertices, edges and cusps [69]. Despite
its wide applications in many fields, Campbell stated [76]
that definitions of free-form surfaces and objects are often
intuitive rather than formal.
Inspection is the process of determining if a product
(also referred to as a part, object or item) deviates from a
given set of specifications [85,71]. To carry out an
inspection of surfaces, the surface of an inspected part
can be measured by various methods such as laser/optical
scanner and CMM. The acquired data is then compared
with the design model to determine whether the surface
is out of tolerance. For a regular shaped feature such as
cylinder, its dimensions include length and diameter that
can be measured directly by instruments. The measurement values are then compared with the design
specifications, which, in this case, are the diameter and
length specifications. For a free-form surface, such
comparison does not exist. The comparison of two
free-form surfaces is done by putting these two surfaces
together in the reference position and orientation so that
the point to point comparison can be carried out.
However, the design part is in the design coordinate
system (DCS) and the real part (manufactured part) is in
the measurement coordinate system (MCS). The first step
in conducting such inspection and comparison is to bring
these two surfaces together.
Fig. 1 shows a CMM machine in (a) and the
inspection of a simple shaped part by CMM in (b). For
inspection of parts with free-form surfaces, the
relationship between DCS and MCS is complex. Fig. 2
shows the inspection of a part with complex surfaces by
Fig. 1. MCS, DCS and a part under inspection (picture modified from Ref. [7]). (a) Measurement Coordinate System (MCS); (b) Part and Design Coordinate
System (DCS).
1397
1398
1399
1400
1401
4. Localization techniques
Traditionally, localization is achieved by presenting the
part at a desired position and orientation, using special tools,
1402
IX
21 JX
21
d2 rij min
i0 j0
1403
m
X
fi
i1
m
X
T 21 rip 2 ri T T 21 rip 2 ri
i1
lT 21 pij 2 qin l2
i1 j1
1404
1405
the minimization of the covariance-weighted sum of leastsquare of the differences between corresponding points.
The visual inspection introduced in Ref. [80] dealt with
the robotic surface inspection of a space platform. In the
space environment, there are larger repeatability problems
due to robotic arm flexibility and object location changes
caused by thermal expansion and structural flexibility. The
reference image and inspected image were registered by
using a Gauss-Newton iterative method. The objective was
to find a suitable transformation of the reference image so
that the residual between the inspection data and transformed reference image was minimized. The Gauss-Newton
algorithm solved this non-linear least-squares problem via
an iterative process, stopping when the least-squares
residual dropped below a pre-defined threshold.
Delingette et al. [25] reported the comparison between
reconstructed surface mesh with the design mesh. The
correspondence and registration between these two meshes
were based on an ICP approach that iteratively selected the
closest points as the corresponding points and estimated the
best transformation, until a displacement threshold was
reached. To take into account the outliners, an algorithm
was implemented to remove the vertices that were located
too far away.
Similar to those approaches handling contact measurement point data, most of the methods for the localization of
non-contact measurement point data discussed above also
decided corresponding points by searching closest point.
ICP and/or modified ICP were commonly applied in these
approaches. The same limitation discussed in previous
Section 4.1 also exists to these approaches in processing
non-contact measurement points.
Different from above approaches that used points directly
for deciding the correspondence, some methods selected
surface primitives or features and used these items to create
the corresponding relationship. Faugeras [17] represented
the surface in primitives and carried out localization in two
tasks: a recognition task to produce a list of corresponding
primitives from measurement range image and design
model; and, a locating task to calculate the transformation
to bring the design model to acquired range image. The first
task was implemented by using the tree search method. The
transformation was decided by using quaternion. In
selecting the primitives for localization, the authors
recommended that line primitives should not be parallel
and planes should be independent. The minimum number of
primitives required for localization was listed in the
following Table 1. The localization mainly depended on
the existence of planar regions in the object being matched.
Based on the similar localization algorithms of [17], a
vision-based inspection approach presented in Ref. [1]
decided the correspondence by matching the segmented
primitives from the design model and measured image data.
In this research, the objects contained planar, cylindrical or
spherical faces, but only planar faces were used for
localization. The estimation of transformation was treated
1406
Table 1
Minimum number of primitives needed to establish the transformation [17]
Points
Lines
Planes
Translation
Rotation
3
2
3
3
2
2
D
x
y
z
x2xmi y2ymi z2zmi 0
u
u
u
u
D
x
y
z
x2xmi y2ymi z2zmi 0
v
v
v
v
10
r i
0
u
r
T 21 rip 2 ri T i 0
v
T 21 rip 2 ri T
11
12
L lk01 2 k1 k02 2 k2 l
13
1407
1408
data points. Ainsworth [2] decided to choose the measurement point based on adaptive subdivision sampling of the
design model. Several surface sampling criteria were
identified and implemented, including: uniform sampling
in the u and v parameter directions; chord height criterion;
minimum sample density criterion; and, parameterizationbased sampling criterion. These criteria can be used
individually or in combination. Research has also been
carried out regarding measurement point selection and
quantity, and their influences on the accuracy, efficiency and
robustness of the localization process. In Ref. [13], a
statistical analysis was used to determine the number of
measurement points for a surface profile based on the
tolerance specification and manufacturing accuracy. The
authors demonstrated that the number of measurement
points depended not only on the design specifications but
also on various factors in design and manufacturing. Design
specifications and manufacturing information can be
brought together to determine the desired inspection
strategy via statistical analysis. For localization based on
the iterative techniques, accuracy has a direct relationship
with the quantity of measurement points. As observed in
Refs. [13,96,81], the more the measurement points, the
more accurately the localization can be reached, or the more
the registration accuracy can be greatly increased [2]. It was
also indicated in Ref. [4] that the average transformation
error would be reduced as the number of points increased.
For dense data, the transformation error would be very small
compared to the average orthogonal error. Based on the
experimental results, Huang et al. [91] concluded that
increasing the number of measurement points could
improve the accuracy in localization.
It should be noted that increasing the point quantity
might not always give positive influence to the localization
process. More points results heaver distance calculation
between measurement point to design model, this is obvious
for many of the localization process that the corresponding
searching and transformation solving is solved in an
iterative process. Besides, noise contained in the points
always cause negative influence to the accuracy of the
correspondence, while for most of the localization
approaches, the transformation information is obtained
based on the corresponding point sets from both measurement and design surfaces. Adding more points with higher
lever of noise will worsen the localization accuracy instead
of improving. Therefore, judgement measures need to be
considered, such as what kind of points helps improve the
localization accuracy and what kind of points should be
avoided.
The accuracy, efficiency and robustness of the localization process are also influenced by many other factors
besides the point quantity. Some of the researchers
provided suggestions and comments based on their
experiments. Gunnarson and Prinz [24] expected, based
on the localization of objects represented in polyhedra, that
localization inaccuracy was on the same order as
1409
1410
Syz 2 Szy
Szx 2 Sxz
Sxy 2 Syx
Syz 2 Szy
Sxy Syx
Szx Sxz
Szx 2 Sxz
Sxy Syx
Syz Szy
Sxy 2 Syx
Szx Sxz
Syz Szy
3
7
7
7
7
7
7
5
14
P
P
where Sxx ni1 x0l;i x0r;i ; Sxy ni1 x0l;i y0r;i and so on; and,
x0l;i ; y0l;i ; z0l;i and x0r;i ; y0r;i ; z0r;i are the coordinates of the
corresponding point pair from those two set of points. To
find the eigen-values, a quartic equation has to be solved
whose coefficients are sums of products of the elements of
the matrix. The minimum number of the corresponding
point pairs required to determine the transformation is three,
and the points should be non-collinear.
Arun [53] introduced a closed-form solution to leastsquare minimization in order to estimate the transformation
between two corresponding point sets. The transformation
was represented by an orthonormal rotation matrix and a
translation vector. The rotation parameters were estimated
by a procedure based on the Singular Value Decomposition
(SVD) of a 3 3 matrix. Horn et al. [6] proposed another
closed-form solution to solve the least-square problem in
estimating the transformation based on the use of an
orthonormal matrix. The translation was represented as the
difference between the centroid of the coordinates in one
system and the rotated centroid of the coordinates in another
system; and, the rotation was represented by using
orthonormal matrices. This method depended on eigenvalue eigenvector decomposition of a 3 3 matrix and so
required the solution of a cubic equation. Upon comparing
the methods introduced in Refs. [5,6], the method based on
unit quaternions was more elegant, according to the authors.
Walker [87] presented an algorithm for estimating the
3D transformation using dual quaternions. The problem
was formulated as a dual number quaternion optimization
problem about a single cost function associated with
the sum of the orientation and position errors. There
d=2cosu=2n sinu=2p n
r
; s
:
cosu=2
2d=2sinu=2
Based on the experiments, Lorusso [57] made a
comparative analysis on the four closed-form solutions
listed above, from Refs. [87,53,5,6], respectively. The
comparison was based on three issues. The first issue was
the accuracy of the algorithms for solving the transformation using coordinates of the corresponding points with an
increasing amount of noise. The second issue was about the
stability of the algorithms when the original 3D point sets
degenerated into planes, lines and simple points. The third
issue was the relative efficiency in terms of actual
processing time by each algorithm. The comparison result
was summarized in Table 2.
A closed-form solution for the least-square estimation of
transformation was also introduced in Ref. [86]. This
method was based on SVD and could be regarded as the
extension or refinement of the SVD approach introduced in
Ref. [53]. This new SVD method could provide a solution of
the transformation even if the input data was corrupted. The
method was applicable to any dimension. In application,
Kanatani [51] applied the SVD method from Ref. [53], the
unit quaternion approach introduced in Ref. [5] and the
orthonormal matrix method presented in Ref. [6] in a refined
manner. The author tried to solve the 3D transformation
based on available correspondence in a concise way based
on the so-called optimal resolution of degenerate rotation. A
covariance matrix of rotation fitting was defined, and the
statistical analysis for the fitting error based on the
covariance matrixes was conducted.
Least-square minimization was used by all the solutions
listed above to estimate the transformation. It has become
the basic and main stream in solving this type of problem.
However, this may not be true in some researches. In
Ref. [64], an optimal rotation estimation algorithm was
proposed. This method was different from other approaches,
which was not based on least squares minimization. This
method first created a theoretical accuracy bound, and then
estimated the rotation by using an optimal solution that
attained that accuracy bound. This optimal solution was
non-linear and it was processed by using quaternions and
renormalization techniques. No translation was handled in
this research. The noise considered by this approach
included anisotropic and inhomogeneous noises. Based on
1411
Table 2
Comparison of four closed-form solutions for solving 3D transformation [58]
SVD
Unit quaternion
Orthonomal matrix
Dual quaternion
Accuracy
Stability
Efficiency
Comments
Reference
Almost same
Almost same
Almost same
Almost same
Stable
Stable
Less stable
Poor
[53]
[5]
[6]
[87]
1412
1413
15
1414
1415
References
Acknowledgements
The authors wish to thank the Natural Sciences and
Engineering Research Council of Canada (NSERC) for
providing this research with financial support.
1416
1417
[92] Huang X, Gu P, Zernicke R. Localization and comparison of two freeform surfaces. Comput-Aided Des 1996;28(12):101722.
[93] Huang X, Gu P. CAD-model based inspection of sculptured surfaces.
Proc ASME Comput Engng Conf; 1995. [pp. 795804].
[94] Chen Y, Medioni G. Object modeling by registration of multiple range
images. Image Vis Comput 1992;10:14555.
[95] Li Y, Gu P. Geometric estimation of 3D machined parts for internetbased manufacturing system. Proc CIRP Conf Workshop, Hong
Kong, May; 2002.
[96] Li Z, Gou J, Chu Y. Geometric algorithms for workpiece localization.
IEEE Trans Robotics Automation 1998;14(6):86478.