On the discrete symmetric localization problem - Semantic Scholar

Report 0 Downloads 14 Views
International Journal of Machine Tools & Manufacture 43 (2003) 863–870

On the discrete symmetric localization problem Zhenhua Xiong a,∗, Zexiang Li b b

a Robotics Institute, Shanghai Jiaotong University, 1954 Hua Shan Road, Shanghai 200030, China Department of EEE, Hong Kong University of Science and Technology, Clear Water Bay, Kowloon, Hong Kong

Received 21 January 2003; accepted 4 March 2003

Abstract Workpiece localization has many applications in manufacturing automation. Symmetric localization plays an important role in it, since many commonly used features in engineering design are symmetric. In this paper, we discuss some new problems in symmetric localization. We find that multiple solutions exist even for localizing a cube, while it was known that a unique solution should be found. Then, we re-explore the symmetry subspaces for symmetric features. After that, we find that some symmetric features have different configuration spaces from those known before. This is actually the cause of the problem. A symmetric localization algorithm and simulation results are given to fix the existing problems.  2003 Elsevier Science Ltd. All rights reserved. Keywords: Workpiece localization; Symmetric localization; Discrete group

1. Introduction In many manufacturing processes and robotic applications, accurately localizing geometric features is very important and useful. For example, in order to machine an arbitrarily fixed workpiece with CNC technology, we need to get the position and orientation of the workpiece on the machine table. When doing robot calibration, we need to get the position and orientation of the end-effector. With the availability of on-machine probing sensors or CMM (coordinate measuring machine), a touch-trigger probe is used to sample a number of points on the geometric features. Then, using the measured points data, the actual position and orientation of the geometric features are computed. In manufacturing literature, workpiece localization is a problem as follows: assuming a rigid workpiece is arbitrarily fixed to a machine table, determine the position and orientation of the workpiece frame relative to some known machine frame [1]. Localization of general workpieces has been studied in many papers [1–6]. The general procedure to solve this problem is to identify the configuration space of the



Corresponding author. Fax: +86-21-6293-2674. E-mail address: [email protected] (Z. Xiong).

workpiece with the Euclidean group SE(3). Then, a unified least squares objective function can be used for different workpieces. Several geometric algorithms are available to solve the minimization problem as described in [1]. However, the above algorithms cannot be applied directly to localize a symmetric workpiece. For example, linear equations will be found degenerate when localizing a plane or a cylinder with these algorithms [7]. In [7], the configuration space of symmetric localization was identified with the homogeneous space SE(3) / G0, where G0 is the symmetry subspace of the symmetric feature. Geometric algorithms based on the canonical coordinates of the homogeneous space SE(3) / G0, which are known as TSL (tangent symmetric localization) and FSL (fast symmetric localization), were proposed. In this paper, we will first present a new problem found in the localization algorithms, specifically, discrete multiple localization solutions. Then, we will show that the problem is caused by some missing parts of the symmetric group G0 in [7]. We will re-explore the symmetric groups G0 of symmetric features. Finally, a symmetric localization algorithm based on the homogeneous space will be given to fix the problem. We will present simulation results to show the efficiency of the algorithm. The remainder of this paper is organized as follows: in

0890-6955/03/$ - see front matter  2003 Elsevier Science Ltd. All rights reserved. doi:10.1016/S0890-6955(03)00079-8

864

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

Section 2, we will give a brief introduction of workpiece localization and symmetric localization. Then, we will show the problem of discrete multiple solutions for localization algorithms. A surprising result is that there exist multiple solutions even for localizing a cube with three orthogonal planes. In Section 3, we will re-explore the symmetric groups or the isotropy groups of symmetric features. This will show the cause of discrete multiple solutions. Then, we will have a clear look at the problem shown in Section 2. In Section 4, the symmetric localization algorithm and simulation results will be given. Finally, we will conclude this paper in Section 5.

2. Workpiece localization and discrete multiple localization solutions

When we talk about CNC manufacturing, there are at least two working frames with the workpiece. One is the (CAD) model frame CM of the workpiece and the other is the machine reference frame CW. Let Si be the ith surface of the workpiece described in model frame CM. Let yi苸R3, i = 1,…,n, be a set of points sampled from the surfaces of the workpiece in machine reference frame CW. Workpiece localization is to find the transformation g = (R,p)苸SE(3) between the model frame CM and the machine reference frame CW by minimizing the following objective function:

冘 n

|yi⫺gxi|2.

冦冧 冤

n1x n1y n1z ⫺(n1 ⫻ r1)T

e1

e2 ⯗

2 x

n



n

2 y

n

2 z

⫺(n ⫻ r2) 2

T

% % % % nmx nmy nmz ⫺(nm ⫻ rm)T

em

冥 冦冧 δt1



(1)

i⫽1

Here, xi苸R3 is the home surface point corresponding to yi and lies on the home surface Si [1]. Many geometric algorithms based on the iterative technique are available now. In [5,6], performance evaluations and convergence ranges of these algorithms are given. Initial errors in orientation can be as large as 30° for these algorithms. 2.2. Symmetric localization Many workpieces are symmetric in manufacturing applications, in other words, the sampled points on the surfaces cannot fully constrain the workpiece in the Euclidean group SE(3). Symmetric problems or similar problems in workpiece localization or image registration have been reported by many researchers. In [8], research on robustness against singularity of workpiece localization showed a way of measuring the sensitivity of the objective function, like (1), to a small variation of the six transformation variables. This measure depends on the local attributes of the selected measurement points and is defined to relate the trans-

δt2 ⯗

,

(2)

δt6

where ri is the ith measurement point, ni is the normal vector at the ith point, ei is its dimensional error, m is the number of measurement points, and δt1 to δt6 are infinitesimal translation and rotation about three base axes. In a compact form, this becomes e˜ ⫽ A δt˜,

2.1. Workpiece localization

e(g,x1,…,xn) ⫽

formation errors to dimensional errors of the measurement points:

(3)

where A is the m × 6 matrix, which is referred to as the sensitivity matrix. Singular values l1 to l6 of the matrix A are used to study the relationship between the dimensional error e˜ and the transformation error δt˜. When all the singular values are greater than zero, a unique transformation can be determined. When some lis equal zero, multiple solutions are expected. The authors call it singularity. In [9], a similar case is studied for medical image registration. In this case, EP(e˜ ) ⫽ |e˜ |2 ⫽ δt˜TATA δt˜,

(4)

where EP is the sum of squared dimensional errors. Performing principal component analysis [10] upon ATA results in ATA ⫽ Q⌳QT ⫽ [q1 q2 q3 q4 q5 q6]

冤 冥冤 冥 qT1

l1



l2

qT2 qT3

l3

T 4

l4



q

(5) ,

qT5

l5

l6 qT6

where l1ⱖl2ⱖl3ⱖl4ⱖl5ⱖl6 are eigenvalues of ATA, and the qis are the corresponding unit eigenvalues. Then,

冘 6

EP(e˜ ) ⫽

li(δt˜Tqi)2.

(6)

i⫽1

If some of the lis are close to or equal to zero, for each such eigenvalue, a singularity exists such that perturbing the points in the direction specified by the corresponding eigenvector will result in no change in EP. In such a case, it becomes impossible to localize an object in the direction corresponding to the singularity.

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

We find that when the points ri in (2) come from symmetric surfaces, the cases are corresponding to singularities. Although singularities have been pointed out, no method is proposed by the authors to solve the singularity problem. For symmetric workpieces, the localization algorithms in [1] cannot be applied directly. In [7], from a geometric point of view, the following results are given. A symmetric workpiece has a symmetric subgroup G0苸SE(3). Transformations from the subgroup G0 will not change the configuration of the workpiece. Two Euclidean transformations g1 and g2 are said to be equivalent, g1 苲 g2, if g1g⫺1 2 苸G0. For example, the configuration of a plane will not change when the plane is rotating about its normal or translating along the plane. With knowledge of the symmetric subgroups G0 of a feature, the configuration space of the feature is then identified with a homogeneous space SE(3) / G0, which is defined by SE(3) / G0 ⫽ {gG0兩g苸SE(3)}.

(7)

A useful property of symmetric localization is as follows. Let P1 and P2 be two planes such that gP1 = P2, where g苸SE(3). Then, their symmetric subgroups are related by conjugate, such that GP2 ⫽ gGP1g⫺1.

(8)

This allows us to study the x–y plane for any other plane. With the definition of canonical coordinates of the homogeneous space SE(3) / G0, we can seek the localization result within the homogeneous space SE(3) / G0, other than the Euclidean space SE(3). A unique solution is expected in the homogeneous SE(3) / G0 with a given initial transformation. So we will not be faced with algorithm degeneration. It is useful to note that the objective function as in Eq. (1) is invariant under the symmetry subgroup G0. This also helps us to understand why we cannot recover a unique transformation in G0 for a symmetric workpiece.

ˆ

ˆ

865

ˆ

GB ⫽ {em1x2+m2x3+m3x4兩m1,m2,m3苸R}, m1xˆ 1+m2xˆ 2+m3xˆ 6

GC ⫽ {e

(10)

兩m1,m2,m3苸R},

(11)

where for i = 1,…,3, xi = (ei,0)苸R6, x4 ⫽

冋册 0

e1

, x5 ⫽

冋册 0

e2

, x6 ⫽

冋册 0

e3

,

and xˆ i is the 4 × 4 matrix associated with the vector xi苸R6 [12]. Then, the symmetry subgroup of the cube is given by GABC ⫽ GA傽GB傽GC ⫽ I.

(12)

This means the planes A, B, and C completely constrain rigid motions of the cube [7,13]. So we will find only one localization result for the cube. However, we find that there are as many as four optimal results to localize a cube. An example is as follows. A cuboid is shown in Fig. 1. We call the x–z, y–z, and x–y plane as plane A, B, and C, respectively. First, we generate nine points on plane A, 16 points on plane B, and 25 points on plane C in the CAD model frame CM. Then, we apply a transformation g∗ to these points and obtain a set of 50 points, which is the point set {yi} in the machine reference frame Cw. Finally, we apply the workpiece localization algorithms to compute the transformation between the two frames. The given transformation is g∗

(13)





0.750000

⫺0.216506 0.625000

0.433013

0.875000

50.000000

⫺0.216506 ⫺50.000000

⫺0.500000 0.433013

0.750000

50.000000

0.000000

0.000000

1.000000

0.000000

The cube is often used in localization tests, since the plane is one of the simplest geometric features. In robotics literature, one of the conventional registration techniques, called the 3–2–1 method, is to register a cube with six points (3, 2, and 1 on each plane, respectively) [11]. A previous result is known that three orthogonal planes are enough constraints to locate a cube. For convenience, we consider that the three orthogonal planes A, B, and C are the x–z, y–z, and x–y plane, respectively. The symmetry subgroups GA, GB, and GC are ˆ

ˆ

ˆ

(9)

.

Since localization algorithms do not know the given

2.3. Discrete multiple localization solutions

GA ⫽ {em1x1+m2x3+m3x5兩m1,m2,m3苸R},



Fig. 1.

A cuboid in the CAD model frame.

866

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

transformation in advance, we get our optimal transformations based on different initial transformations. Of course, the algorithms may diverge with some poor initial transformations [5]. The computational results show that we have four optimal transformations from g∗1 to g∗4 : g∗1

(14)





0.750000

⫺0.216506 0.625000

0.433013

0.875000

49.999999

⫺0.216506 ⫺50.000000

⫺0.500000 0.433013

0.750000

50.000000

0.000000

0.000000

1.000000

0.000000



q0: SE(3) ⫻ R3→R3 ((R,q),x)哫Rx ⫹ q,

,

g∗2

(15)





⫺0.625000 50.000000

0.750000

0.216506

0.433012

⫺0.875000 0.216506

⫺50.000000

⫺0.500000 ⫺0.433012 ⫺0.750000 50.000000 0.000000

0.000000

0.000000

1.000000



,

g∗3

(16)





⫺0.750000 ⫺0.216506 ⫺0.625000 49.999997 ⫺0.433013 0.875000

0.216506

⫺49.999998

0.500000

0.433013

⫺0.750000 49.999999

0.000000

0.000000

0.000000

1.000000



,

g∗4

(17)





⫺0.750000 0.216506

0.625000

49.999999

⫺0.433013 ⫺0.875000 ⫺0.216506 ⫺50.000000 0.500000

⫺0.433013 0.750000

50.000000

0.000000

0.000000

1.000000

0.000000



explore the configuration spaces of symmetric features. As we said before, the configuration space of a symmetric feature is identified with a homogeneous space SE(3) / G0 of the Euclidean group. So we need first to identify the symmetric subgroups G0 for symmetric features. We denote all planes in R3 as P . We know that the action of the Euclidean group SE(3) on R3, given by

.

The corresponding fitting results of the four solutions are shown in Fig. 2. The nine points of plane A are marked with asterisks. The 16 points of plane B are marked with circles and the 25 points of plane C are marked with plus signs. From the figure, we can see that only the fitting result in (a) is correct. The other three results are all mis-aligned. The wrong transformations will cause totally wrong results for other applications like hybrid localization [14] and auto-probing [15].

3. Configuration spaces of symmetric features 3.1. Configuration space of the cube In the previous section, we have seen that multiple localization solutions exist for a cube, although a unique solution is expected. To solve this problem, we will re-

(18)

induces an action on P , which is transitive. This is also to say that every plane in R3 can be obtained from another plane through a rigid transformation. In [7], the isotropy subgroup of a plane is identified with SE(2). It means that rotation about the normal of the plane and translation in the plane will not change the plane in P . But we find that the isotropy subgroup of a plane is not SE(2). It is noted that any rotation of 180° about a line in the plane will not change the plane in P . For convenience, we call the motion reflection in a line ([16], p. 24). If we restrict ourselves to the plane, which is a twodimensional space, a reflection sm in a line m is represented by a 2 × 2 transformation matrix. But it is not a proper rotation, since det(sm) = ⫺1. For example, if we consider a reflection in axis x in the x–y plane, the transformation is sx ⫽

冋 册 1 0

0 ⫺1

,

where we can see that sx苸O(2). From [17], we know that a reflection in a plane can be extended to a proper rotation in R3. For the reflection sx, we find it is equivalent to a rotation

冤 冥 1 0

0

s ⫽ 0 ⫺1 0

,

⫺1

0 0

which is in SO(3). It is also noted that for the x–y plane, reflections in axis x and axis y are geometrically indistinguishable. A plane in our workpiece localization study is represented by sampled points in the plane. The plane is not oriented! So the rigid motion of flipping will not change the plane in P . Now, the symmetry subgroups of plane A, B, and C are ˆ

ˆ

ˆ

ˆ

ˆ

GA ⫽ {em1x1+m2x3+m3x5兩m1,m2,m3苸R} ˆ

4+sinqx6)兩m ,m ,m ,q苸R} 傼{em1x1+m2x3+m3x5+π(cosqxX 1 2 3

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

Fig. 2.

ˆ

ˆ

ˆ

ˆ

ˆ

ˆ

ˆ

ˆ

Fitting results of the four solutions.

ˆ

GB ⫽ {em1x2+m2x3+m3x4兩m1,m2,m3苸R} ˆ

3.2. Configuration spaces of symmetric features

5+sinqx6)兩m ,m ,m ,q苸R} 傼{em1x2+m2x3+m3x5+π(cosqxX 1 2 3

ˆ

GC ⫽ {em1x1+m2x2+m3x6兩m1,m2,m3苸R} ˆ

4+sinqx5)兩m ,m ,m ,q苸R} . 傼{em1x1+m2x2+m3x6+π(cosqxX 1 2 3

The symmetry subgroup of the cuboid in the CAD model frame CM is ˆ

ˆ

ˆ

GABC ⫽ GA傽GB傽GC ⫽ {I,eπx4,eπx5,eπx6}.

From the previous section, we know that the symmetry subgroup G0 of a plane is not SE(2), but SE(2) × D, where D = {1,⫺1} is a discrete group under multiplication. Then, the configuration space of the plane is SE(3) / G 0. For the x–y plane, the symmetry subgroup is actually two SE(2) subspaces spanned at I and I⬘, where I is the identity element of SE(3), and I⬘ is represented in homogeneous representation [12] as

(20)

The configuration space of the cuboid is SE(3) / G 0, which is not the Euclidean group SE(3). This is the reason why we can get multiple solutions in SE(3) for the cuboid. It is also noted that the objective function in Eq. (1) is invariant under the symmetry subgroup GABC. Thereˆ ˆ fore, the four transformations, g∗, g∗eπx4, g∗eπx5, and ∗ πxˆ 6 g e , are all optimal solutions to the objective function in Eq. (1). In Fig. 2(a), the solution is g∗. The transformed points and the model are matched. In Fig. 2(b), the ˆ solution is g∗eπx4. The transformed points are rotated about the x-axis by 180° with respect to the model. In Fig. 2(c) and (d), the transformed points are rotated about the y- and z-axis by 180° with respect to the model, respectively.

冤 冥 冤 冥 1 0

(19)

Then, the symmetry subgroup of the cuboid in the machine reference frame CW is G0 ⫽ g∗GABCg∗⫺1.

867

I⬘ ⫽

0

0

0 ⫺1 0

0

0 0

⫺1 0

0 0

0

1

or

⫺1 0 0

0

0

1 0

0

0

0 ⫺1 0

0

0 0

.

(21)

1

Since G0 is a subgroup of dimension 3 of the Euclidean group SE(3), the quotient space SE(3) / G 0 is also a subspace of dimension 3. In [7], the configuration space M ⬘0 of the x–y plane is M ⬘0 ⫽ span(x3,x4,x5).

(22)

Since the symmetry subgroup is SE(2) × D now, we do not expect the whole space M ⬘0 as our configuration space. We can find one differential structure for the configuration space M 0 of the x–y plane as M 0 ⫽ m1x3 ⫹ m2x4 ⫹ m3x5,

(23)

where m1苸R, m2苸[0,π), and m3苸[0,π). Remark: We also can choose m2,m3苸[π,2π). We have

868

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

different choices for the parameters of the differential structure. Transforming the x–y plane into a new configuration by g0苸SE(3), the resulting configuration space will be M ⫽ m1Adg0x3 ⫹ m2Adg0x4 ⫹ m3Adg0x5,

(24)

where m1, m2, and m3 are the same as above, and Ad is the adjoint action of the Euclidean group SE(3) on its Lie algebra se(3) [12]. Similar to the plane, the straight line and the cylinder also have different symmetry subgroups as in [7]. A cylinder is invariant under translation along its axis, rotation about its axis, and rotation by 180° about a line which is perpendicular with and intersects its axis. We call the motion reflection along its axis. So the symmetry subgroup G0 of a cylinder is SO(2) × T(1) × D, where D = {1,⫺1}. A straight line has the same symmetry subgroup as a cylinder. In this regard, they are the same features. We consider a cylinder of radius R and with the zaxis as its axis. Since the symmetry subgroup is of dimension 2, the configuration space is identified with a space of dimension 4. We can find a differential structure of its configuration space M 0 as M 0 ⫽ m1x1 ⫹ m2x2 ⫹ m3x4 ⫹ m4x5,

(25)

where m1,m2苸R, m3,m4苸[0,π). We show the modified symmetry subgroups in Fig. 3.

4. Localization algorithm and simulation results 4.1. Symmetric localization algorithm With the configuration spaces of symmetric features, the symmetric localization algorithm is used to find the position and orientation of the CAD model frame CM relative to the machine reference frame CW. The least squares formulation of the symmetric localization problem is also of the form given in Eq. (1). Now, a unique solution is expected in the configuration space.

Fig. 3.

We use the symmetric localization algorithm in [7]. Given measurement data {yi} and CAD description of the geometric feature, we seek the optimal solution g苸SE(3) / G0 and {xi} which minimize the objective function. The brief iterative procedure is: (1) Set k = 0, given initial solution g0, and find the symmetry subgroup G0 of the geometric feature at g0; choose a complementary subspace M 0 with a basis {x1,...,xk}; (2) Solve for {xi}0 with Newton’s algorithm; (3) Calculate the objective function in Eq. (1) for e0; (4) Using {yi} and {xi}k, update transformation by ˆ 苸Adgk(M 0); gk + 1 = emˆ gk, where m (5) Solve for {xi}k + 1 with Newton’s algorithm; (6) Calculate the objective function in Eq. (1) for ek = 1; (7) If the result meets our requirement, exit with gk + 1 and {xi}k, else return to step (4). Remark: When the symmetric feature is a plane or a cylinder, the complementary subspace is of the form in Eq. (24) or (25). Another problem is how we can ensure that we will get the right answer we expect, although we can find only one solution in the configuration space of the workpiece. For the cube, the solution we want to get is as in Fig. 2(a). Since the cube is a symmetric feature with discrete symmetry subgroup in our view, all the four solutions in Fig. 2 are possible. It is determined by how we choose the differential structure of the configuration space. In our algorithm, this problem is fixed by some modifications in steps (2) and (5) above. In workpiece localization applications, the surfaces of the model are finite. They have boundaries. So we restrict the home positions {xi} within the surfaces or on the boundaries [4]. Then, mis-aligned solutions will be filtered out.

The modified symmetry subgroups.

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

4.2. Simulation results In this section, we will use the model shown in Fig. 4. We generate points on the cylinder surface A and the plane B, then apply a given transformation g∗ and get the point set {yi}. The generated points are also shown in Fig. 4. We can see that the combined feature of surface A and B is symmetric. Rotation about the cylinder’s axis cannot be recovered. The given transformation g∗ and the optimal solution g1 and g2 we get from different initial transformations are shown below:

g∗ ⫽

g1 ⫽

g2 ⫽

冤 冤 冤

0.969846

⫺0.141314 0.198566

0.171010

0.975082



20.000000

⫺0.141314 20.000000

⫺0.173648 0.171010

0.969846

⫺20.000000

0.000000

0.000000

0.000000

1.000000

0.969846

⫺0.179615 0.164732 11.361395

0.171010

0.983115

0.065125 44.050717

⫺0.173648 ⫺0.034991 0.984186 ⫺44.562333 0.000000

0.000000

0.000000 1.000000

0.969846

⫺0.096800 0.223669

0.171010

0.924177

冥 冥

⫺0.341545 ⫺8.802843

⫺1.149423

0.000000

1.000000

0.000000

0.000000

are shown in Fig. 5. It can be seen that there is just a difference of rotation about the cylinder axis between the transformed points and the model. The convergence times of these two cases are 0.160 and 0.170 s on a PII 400M PC, with 15 and 16 iterations, respectively. It is also noted that mis-aligned results like that shown in Fig. 6 will not be found any more. 5. Conclusion In this paper, we reported a new problem in workpiece localization. By further study on symmetry subgroups

,

,

28.453877

⫺0.173648 ⫺0.369496 0.912863

.

We can see that the first columns of the three transformation matrices are the same. The localization results

Fig. 4.

Simulation model and generated points on the surfaces.

869

Fig. 5.

Fitting results with the model.

870

Z. Xiong, Z. Li / International Journal of Machine Tools & Manufacture 43 (2003) 863–870

References

Fig. 6.

One mis-aligned result of the model.

and configuration spaces of symmetric features, we found that the problem is caused by some missing parts in the symmetry subgroups. Thus, we modified the symmetry subgroups of some symmetric features and the symmetric localization algorithm. Simulation results were given to show that the problem is fixed.

Acknowledgements This research is supported in part by RGC Grant No. HKUST 6220/98E, CRC 98/01.EG02 and the Natural Science Foundation of China (Grant No 50290103, 50205018).

[1] Z.X. Li, J.B. Gou, Y.X. Chou, Geometric algorithms for workpiece localization, IEEE Trans. Robotics Autom. 14 (6) (1998) 864–878. [2] J. Hong, X. Tan, Method and apparatus for determining position and orientation of mechanical objects, US Patent No. 5208763, 1990. [3] H.T. Yau, C.H. Menq, A unified least-squares approach to the evaluation of geometric errors using discrete measurement data, Int. J. Mach. Tools Manufact. 36 (11) (1996) 1269–1290. [4] M.O. Jastram, S.L. Abrams, T. Maekwa, N.M. Patrikalakis, A. Clement, Computer-aided inspection of sculptured objects, Design Laboratory Memorandum 97-6, Massachussets Institute of Technology, May 1997. [5] Y.X. Chu, J.B. Gou, Z.X. Li, Performance analysis of localization algorithms, in: IEEE International Conference on Robotics and Automation, vol. 2, 1997, pp. 1247–1252. [6] Y.X. Chu, J.B. Gou, Z.X. Li, Localization algorithms: performance evaluation and reliability analysis, in: International Conference on Robotics and Automation, vol. 4, 1998, pp. 3652–3657. [7] J.B. Gou, Y.X. Chu, Z.X. Li, On the symmetric localization problem, IEEE Trans. Robotics Autom. 14 (4) (1998) 533–540. [8] C.H. Menq, H. Yau, G. Lai, Automated precision measurement of surface profile in CAD-directed inspection, IEEE Trans. Robotics Autom. 8 (2) (1992) 268–278. [9] D.A. Simon, Fast and accurate shape-based registration, Ph.D. Thesis, Carnegie Mellon University, December 1996. [10] M.G. Kendall, A. Stuart, Canonical Variables, 4th ed., Griffin, London, 1977. [11] I. Ainsworth, M. Ristic, D. Brujic, CAD-based measurement path planning for free-form shapes using contact probes, Int. J. Adv. Manufact. Technol. 16 (2000) 23–31. [12] R. Murray, Z.X. Li, S. Sastry, A Mathematical Introduction to Robotic Manipulation, CRC Press, 1994. [13] J.B. Gou, Y.X. Chu, Z.H. Xiong, Z.X. Li, A geometric method for computation of datum reference frames, IEEE Trans. Robotics Autom. 16 (6) (2000) 797–806. [14] Y.X. Chu, J.B. Gou, Z.X. Li, On the hybrid/envelopment problem, Int. J. Robotics Res. 18 (5) (1999) 491–501. [15] Z.H. Xiong, Y.X. Chu, G.F. Liu, Z.X. Li, Workpiece localization and computer aided setup system, in: International Conference on Intelligent Robots and Systems, 2001, pp. 1141–1146. [16] G.E. Martin, Transformation Geometry—An Introduction to Symmetry, first ed., Springer-Verlag, 1994. [17] L.C. Grove, C.T. Benson, Finite Reflection Groups, second ed., Springer Verlag, 1985.