Joint Calibration Method for Robot Measurement Systems

Robot measurement systems with a binocular planar structured light camera (3D camera) installed on a robot end-effector are often used to measure workpieces’ shapes and positions. However, the measurement accuracy is jointly influenced by the robot kinematics, camera-to-robot installation, and 3D camera measurement errors. Incomplete calibration of these errors can result in inaccurate measurements. This paper proposes a joint calibration method considering these three error types to achieve overall calibration. In this method, error models of the robot kinematics and camera-to-robot installation are formulated using Lie algebra. Then, a pillow error model is proposed for the 3D camera based on its error distribution and measurement principle. These error models are combined to construct a joint model based on homogeneous transformation. Finally, the calibration problem is transformed into a stepwise optimization problem that minimizes the sum of the relative position error between the calibrator and robot, and analytical solutions for the calibration parameters are derived. Simulation and experiment results demonstrate that the joint calibration method effectively improves the measurement accuracy, reducing the mean positioning error from over 2.5228 mm to 0.2629 mm and the mean distance error from over 0.1488 mm to 0.1232 mm.


Introduction
Industrial robots are preferred for their high flexibility, low cost, and wide working range, and they have started to gradually replace manual labor in many scenarios, such as welding, shot peening, and palletizing [1][2][3].A 3D camera utilizes the parallax principle to measure 3D coordinates, providing benefits such as high stability and measurement accuracy [4].This type of camera is commonly mounted at the robot end-effector to form a measurement system for various applications, including reverse engineering and in-line inspection [5].
The working process of a robot measurement system is illustrated in Figure 1.Due to the workpiece size often exceeding the camera's field of view (FOV), local point clouds of the workpiece are captured from multiple sampled poses, and these point clouds are then transformed into the robot base coordinate system to generate a complete point cloud of the workpiece.The accuracy of the measurement system is jointly determined by the robot kinematics, camera-to-robot pose installation, and 3D camera measurement errors.Robot kinematic error is deviations in geometric parameters such as rod length and torsion angle, which causes errors in poses fed back by the robot controller [6].Camera measurement error is influenced by the accuracy of the camera's internal and external parameters, which are typically calibrated by the camera manufacturer [7].However, secondary calibration of the camera can improve its measurement accuracy [8].The relative pose between the camera and robot is typically achieved through hand-eye calibration, and its accuracy is impacted by both robot kinematic error and camera measurement error [9].A large measurement error can result in inaccurate measurement models and low-quality products, making it crucial to calibrate these errors before using the measurement system.These three types of errors are referred to simply as robot error, hand-eye matrix error, and camera error in this paper.Some achievements have been made in the separate calibration of each error.The D-H method, screw method, and Lie algebra method are often used to model robot error [10][11][12].The D-H method is known to have singularities and discontinuity in its parameters, whereas the screw method has a systematic associated error [13].These problems are not present in the Lie algebra method.In addition, external equipment or calibrators are often used to provide high-accuracy raw data, and constraint equations are established to solve for kinematic errors [14,15].Calibration methods that rely on calibrators tend to be simpler.Hand-eye calibration for 3D cameras has not been sufficiently studied.Due to their limited precision for measuring jumping edges and vertices [16], calibration methods often favor the use of calibrators featuring circular elements such as spheres, discs, and holes [17][18][19][20].However, most hand-eye calibration methods do not consider robot and camera errors, which influence calibration accuracy.For camera error, many studies have investigated the relationship between camera parameters and measurement error [21][22][23].However, these methods are not suitable for users who lack knowledge of the camera parameters.Other studies have focused on establishing the relationship between the measurement value and measurement error [8,24,25].However, these error models are proposed entirely based on observations and experience, without considering the measurement principle of 3D cameras.

Robot
It is crucial to highlight that separate error calibration is inadequate in ensuring the accuracy of the measurement system.Instead, a joint calibration method that considers robot, hand-eye matrix, and camera errors is necessary.Few researchers have paid attention to this aspect.Some studies established joint error models based on the D-H method and used geometric constraints to calibrate robot and hand-eye matrix errors simultaneously [26,27].However, the calibration results of these methods are unstable due to the drawbacks of the D-H method.To address this issue, Lie algebra has been used to establish a joint error model, resulting in improved stability [13].However, the absolute position data were used for calibration in the study, which requires the use of high-precision external equipment.In addition, none of these studies account for camera error, which can affect the accuracy of the joint calibration.
We thoroughly consider the advantages and limitations of previous studies and propose a joint calibration approach that takes into account three types of error.A standard sphere is used as the calibrator considering the features of the 3D camera, and the sphere center is captured as the raw data for calibration.Separate models are established for each type of error.The error models for the robot and hand-eye matrix are established using Lie algebra, whereas a pillow model is created for the camera based on its error distribution and measurement principles.These error models are then integrated to construct the joint error model, which is used to establish a stepwise optimization problem for joint error calibration.Our contribution can be concluded as follows.
(1) The camera error, which is proved to influence the calibration accuracy in the simulation, is taken into account during joint calibration for the first time.
(2) A camera error model is established based on the measurement principle and error distribution, whereas a joint error model is established for joint calibration.
(3) The calibration problem is transformed into an optimization problem that minimizes the sum of the relative position error between the calibrator and robot, avoiding reliance on external equipment.

Problem Statement
The typical robot measurement system is shown in Figure 1, with a 3D camera installed at the robot end-effector.In this system, several coordinate systems are defined.The robot base coordinate system is denoted as {B}, the robot end coordinate system as {E}, the camera coordinate system as {C}, and the workpiece coordinate system as {W}, which has the same pose as {B}, as shown in Figure 1.The transformation relationships between these coordinate systems are represented by homogeneous matrices.For example, B E T represents the pose of {E} in {B}, or the transformation from {B} to {E}.During the measurement procedure, the point cloud C P in {C} needs to be transformed into {B} using B P = B E T E C T C P. The errors in B E T, E C T, and C P are the robot, hand-eye matrix, and camera errors mentioned in Section 1.According to B P = B E T E C T C P, there are also error in B P, which is referred to as compensative error in this paper, and the accuracy of B P determines the accuracy of the measurement system.
This paper focuses on a joint calibration method for the robot, hand-eye matrix, and camera errors.Separate error models and the joint error model are first proposed.Then, the calibration problem is transformed into a stepwise optimization problem, and analytical solutions for each calibration parameter are derived.

Joint Calibration Method
The principle of the joint calibration method is depicted in Figure 2. A ceramic standard sphere is utilized as the calibrator and fixed at an appropriate position.The calibrator coordinate system is also donated as {W}, and the sphere center as W. Local point clouds of the sphere are collected from various sampling poses, and then spherical fitting is performed to obtain C W P, which represents the position of the sphere center W in {C}.As the relative position between the calibrator and robot is fixed, B W P should always be equal to its ideal value B W P 0 .However, B W P = B E T E C T C W P = B W P 0 occurs due to errors in B E T, E C T, and The joint calibration method is achieved by calibrating B W P, and the specific principle is as follows.
Firstly, the robot error is modeled.B E T can be represented as B E T = ∏ n i=1 i−1 i T using the modified Denavit-Hartenberg (MDH) method [28], where i−1 i T is the transformation matrix from the (i − 1)th joint coordinate system to the ith joint coordinate system.The transformation matrix i−1 i T is calibrated by right-multiplying the calibration matrix E i .E i can be represented by Lie algebra ξ i as E i = e ξ ∧ i , where . The symbol ∧ denotes the skew-symmetric matrix, as shown in Equation (1), and the expression for . Then, the calibration value B E T of B E T can be obtained as shown in Equation (2).
The hand-eye matrix E C T is likewise calibrated using the calibration matrix E CE and Lie algebra ξ CE , as shown in Equation (3).
Finally, the camera error is modeled.The measurement principle of the 3D camera is illustrated in Figure 3.The structured light is projected onto the object, and two cameras simultaneously capture patterns on the object's surface.Then, x-axis and z-axis coordinates are obtained based on the similar triangle relationship in the XOZ plane, followed by the computation of the y-axis coordinate through the geometric relationship.The coordinate accuracy depends on the accuracy of the baseline B, tilt angles α 1 , α 2 , focal lengths f 1 , f 2 , and image resolutions X 1 , X 2 , Y 1 , Y 2 .However, these parameters are coupled, leading to a complex error form that is difficult to model and identify.To simplify, we will establish an error model that relates the error to the measurement value.In addition, the error model should consider the following characteristics based on the measurement principle and existing studies [21,22,29,30].(1) The error increases as the measurement point moves away from point S, which is the intersection point of the two cameras' lines of sight.This indicates the presence of a distortion field around S, as illustrated in Figure 3. (2) The error in the z-axis coordinate is generally larger than those of the x-axis and y-axis coordinates.
(3) Different cameras may exhibit various forms of error.

MDH及误差传递作图
The Surface HD50 camera is used in this study, with a repeatability accuracy of ±0.15 mm, an optimal working distance of 500 ± 250 mm, and an FOV of H55°× V36°.To observe the camera's error distribution, a ceramic standard sphere with a diameter of 38.1 mm and a diameter deviation of no more than 1 µm is placed within the camera's 250-400 mm working distance.The fitted diameter is compared with the theoretical diameter to observe the camera's error.This process is illustrated in Figure 4.
Figure 5 displays the fitted diameter of the measurement points, where the horizontal coordinate represents the positions of the measurement points and the vertical coordinate represents the fitted diameter.Several patterns can be observed in Figure 5. (1) The fitted diameter of all measurement points is larger than the theoretical diameter.(2) The fitted diameter decreases obviously as the z-axis coordinate increases.(3) The fitted diameter tends to decrease as the x-axis coordinate increases, followed by a slight increase.(4) The fitted diameter is not related to the y-axis coordinate.These patterns suggest the existence of a pillow error at point S, causing the fitted diameter to increase as the measurement point moves away from S, as illustrated in Figure 3. Referring to the pillow distortion of color cameras, the error model of the 3D camera is defined as Equation ( 4).This expression takes into account the measurement principle of the camera, which states that the x-axis and z-axis coordinates are independent of the y-axis coordinate.In Equation ( 4), (∆x, ∆y, ∆z), (x, y, z), and (x s , y s , z s ) represent the calibration value, the measurement value, and the coordinate of point S, respectively.k i , k j , and k l are the calibration parameters, whereas i, j, l, and m are positive integers.The coordinate of point S for the used camera is theoretically (60 mm, 0 mm, 500 mm).Based on the second error characteristic of the camera, the errors in the x-axis and y-axis coordinates can be neglected.Furthermore, m = 3 is set to simplify the expression, and thus, the error model can be expressed as Equation (5), where The calibration value B W P , as shown in Equation ( 6), can be obtained by combining these separate error models.Theoretically, B W P should be equal to B W P 0 .
can be obtained from m sampling poses, and Equation ( 7) is obtained by taking pairwise differences between Since the relative position of the calibrator and robot is fixed, the equations in Equation ( 7) should theoretically be equal to 0. Equation ( 7) is then transformed into an optimization problem, as shown in Equation ( 8), where ), ξ EC , and ξ CW are independent of each other, allowing them to be solved step by step.The process of solving ξ k is as follows.
, and define δξ k to update ξ k in each iteration, with the update expression given by e ξ k ∧ = e δξ k ∧ e ξ k ∧ .Then, Equation ( 8) can be transformed into Equation (9). min Since δξ k is small, g j−1 (δξ k ) can be simplified using the first-order Taylor expansion around δξ k = 0, yielding Equation ( 10) is obtained by substituting the simplified g j−1 (δξ k ) into Equation (9). Define δξ k can be obtained as Equation ( 11) by solving the partial derivative can be derived using the definition of the derivative, as shown in Equations ( 12) and ( 13), where the symbol ∧ denotes the skew-symmetric matrix.R and t represent the rotation matrix and translation vector of e ξ k ∧ .
Then, the hand-eye matrix calibration parameter ξ EC is derived.By defining C T and F = C W P + ξ CW , and using δξ EC to update ξ EC , the optimization problem min formulated.δξ EC can be obtained following the similar derivation as Equations ( 9)- (13).
δξ CW can be obtained as Equation ( 15) by solving the partial derivative In each iteration, the calibration parameter x is calculated, and the objective function value f (x) is updated by substituting x into Equation (8).The iterative process continues until f (x) no longer decreases or the maximum number of iterations L has been reached.Algorithm 1 presents the pseudo-code for the iterative process.The initial E C T is obtained using a calibration method described in Reference [26].

Algorithm 1:
The pseudo-code of calibration process Set the number of iterations l = 1; Calculate the objective function value f 1 and

Simulation
The simulation is designed to verify the joint calibration method.Firstly, the simulation data are generated.The robot is modeled using the MDH method with parameter errors to generate B E T, and the pillow error model, as shown in Equation ( 5), is introduced to generate C W P. Furthermore, random noise is added to B E T and C W P. Then, B E T, E C T and C W P are substituted into Algorithm 1 to obtain x, and calibrated values B W P calibrated , B E T calibrated , E C T calibrated , and C W P calibrated are calculated according to x.Finally, the performance of the joint calibration method is evaluated by comparing the calibrated values with ideal values B W P 0 , B E T 0 , E C T 0 , and C W P 0 .Rotational random noise is added to B E T according to the expression T ij + e rot , i, j = 1 • • • 3, e rot ∼ N(0, σ rot ), where e rot obeys a Gaussian distribution N(0, σ rot ).Similarly, translational random noise is added to both B E T and C W P according to expressions T i4 + e tran and P i1 + e tran , i = 1 • • • 3, e tran ∼ N(0, σ tran ), respectively.During the simulation, σ rot and σ tran are set to 0.0001 and 0.01, respectively.The ABB IRB1410 robot model is used, and Table 1 presents the MDH parameters along with their errors (enclosed in parentheses).The camera error parameter is set to [1 × 10 −9 , 7 × 10 −15 , 5 × 10 −18 ].

Calibration Accuracy
One hundred training data sets and one hundred testing data sets are generated.The initial E C T is obtained as below.We can observe that E C T deviates from E C T 0 , which can be attributed to robot and camera errors.It has been observed that E C T calibrated is close to E C T 0 , and ξ CW is close to the negative of the preset value.These results demonstrate that the joint calibration method can accurately calibrate the hand-eye matrix and camera errors.However, since ξ i (i = 1, 2, • • • , 6) do not have true values, it is difficult to determine whether the robot error has been accurately identified.This problem will be addressed by observing the calibration result of B E T. To illustrate the importance of joint calibration, the methods are classified into methods 1-4 based on whether robot, hand-eye matrix, or camera errors are taken into account, as shown in Table 3, where indicates that this type of error is considered and × indicates that it is not.Methods 1 and 2 utilize the error model and calibration method proposed in this paper.Method 4, proposed in Reference [26], uses the D-H method to model robot error and establishes a linearized equation for calibration.The positioning accuracy and repeatability accuracy in {B} are chosen as the evaluation criteria to evaluate these methods.The mean value (emean) and the maximum value (emax) of B W P calibrated − B W P 0 calculated from 100 testing data sets are used as the evaluation criteria for positioning accuracy.The standard deviation of B W P calibrated , denoted as std, is used as the evaluation criteria for repeatability accuracy.
The results are presented in Table 3. Method 3, without calibration, exhibits a large emean, emax, and std, whereas method 1 shows significantly smaller values, indicating that the proposed joint calibration method improves both the positioning accuracy and repeatability accuracy.Method 2 shows a larger emean and emax compared to method 3 but a smaller std, suggesting that method 2 improves the repeatability accuracy while reducing positioning accuracy.Method 4 fails to effectively calibrate the compensative error.Notably, the proposed method's optimization objective is to minimize the relative error in B W P, as shown in Equation ( 8).It does not guarantee the individual correct calibration of the robot, hand-eye matrix, and camera errors.B E T calibrated , E C T calibrated , and C W P calibrated are compared with their ideal values to observe the calibration results of the robot, hand-eye matrix, and camera errors separately.P calibrated − P 0 and T calibrated(1:4,4) − T 0(1:4,4) are chosen as the evaluation criteria.Figure 6 displays the calibration results of each testing data.Method 1 achieves great calibration for all three types of error.Method 2 only calibrates partly the hand-eye matrix error, whereas method 4 is less effective in calibrating each error.

The Impact of Random Noise
To investigate the impact of random noise on each method, we gradually increase the random noise by multiplying a coefficient "noise level" to σ rot and σ tran , while setting ξ CW to 0. The variation in emean is observed and presented in Figure 7.Even though emean increases with the noise level, method 1 consistently produces smaller emean than method 3.This indicates that method 1 is able to resist noise and maintain accuracy.Method 2 also achieves a similar result since the camera error is set to 0. Method 4 can calibrate the comprehensive error only when the random noise is small, indicating its high sensitivity to random noise.

The Impact of Camera Error
To investigate the impact of camera error on each method, we gradually increase the preset value of ξ CW while setting the noise level to 0, and obtain the variation in emean for each method.The results are presented in Figure 8, where the horizontal axis represents the mean error in C W P. We observe that as the camera error increases, the emean of method 1 gradually increases but remains smaller than that of method 3. Similarly, the emean of method 2 also increases with the camera error.However, method 2 exhibits a negative effect when the camera error exceeds 0.2 mm, indicating the need to consider camera error.Method 4 can yield a small emean only when the camera error is small, indicating its high sensitivity to camera error.

Experiment
The calibration system, as shown in Figure 9a, utilizes an ABB IRB1410 robot with a repeatability accuracy of ±0.05 mm.The parameters of the camera and ceramic standard sphere are detailed in Section 2.2.

Calibration Accuracy
The initial E C T is obtained as follows.To evaluate the performance of methods 1-4, distance accuracy is used instead of positioning accuracy, since B W P 0 is unknown in the experiment.The distance accuracy is tested as follows.After obtaining the calibration parameters using each method, the standard sphere is fixed on a linear slide table with a distance accuracy of ±0.03 mm, as shown in Figure 8b.C W P 1 is obtained from 25 different poses and then converted to B W P 1 using the calibration parameters.The linear slide is then moved by 50 mm, and the process is repeated to obtain B W P 2 .The mean value (demean) and the maximum value (demax) of abs B W P 1 − B W P 2 2 − 50 calculated from 25 data sets are used as evaluation criteria for the distance accuracy, and std abs B W P 1 − B W P 2 2 − 50 (dstd) is used as the evaluation criterion for repeatability accuracy.The results obtained are shown in Table 5. Method 3 exhibits the largest demean, demax, and dstd compared to other methods, whereas method 1 yields the smallest.This result suggests that the proposed joint calibration method performs exceptionally well in practical situations.Although method 2 shows slightly larger values than method 1, it still clearly outperforms method 3.In addition, method 2 could partially calibrate comprehensive error, indicating that camera error is insignificant.Method 4 also performs calibration successfully, unlike the result in Table 3. Method 4 disregards the camera error and relies on the D-H method, making it sensitive to the camera error.When the camera error is significant, method 4 will fail to calibrate the measurement system.To show this case, a significant camera error is set in the simulation to exhibit the necessity of considering the camera error and modeling using Lie algebra.As shown in Figure 6d, a maximum of 1.6 mm camera error is added in the simulation, and method 4 fails to achieve calibration.Figure 8b demonstrates that method 4 can also perform high-precision calibration with a small camera error.The maximum fitted diameter error is less than 0.4 mm in the experiment, as shown in Figure 5.The error is small enough that method 4 can successfully calibrate the measurement system.The experimental results actually align with the simulation results.While the proposed method's advantage may not be as pronounced as in the simulations, the results in Table 5 indicate a notable improvement over other methods.
The individual compensation values for the robot, hand-eye matrix, and camera errors are shown in Figure 10.It is important to note that the compensation value can only be used as a reference for each error.We can infer from Figure 10 that robot error is the main The ξ CW obtained from method 1 is used to calibrate the point clouds in Figure 5, and the results are shown in Figure 11.The fitted diameter after calibration is closer to the theoretical diameter, indicating that the joint calibration method successfully calibrates part of the camera error.However, the diameter deviation is not completely eliminated, which could be attributed to two reasons.Firstly, during the joint calibration method, only the sphere center and not all point clouds of the sphere are used, which can lead to the deviation in ξ CW .Secondly, the camera may have other error forms that are not accounted for.

Performance in Practical Applications
The robot measurement system is mainly calibrated to measure workpieces precisely.To evaluate each method in practical measurements, the calibrated robot measurement system is used to measure the standard sphere, which is placed at another position, different from that during the calibration process.Multiple point clouds of the standard sphere are collected from different poses and stitched together, and the performance of each method is assessed based on the stitching quality.For better visualization, only three point clouds are stitched first, and the stitching process and results are presented in the upper parts of Figure 12 and Figure 13, respectively.Method 1 produces the best stitching result, whereas methods 2 and 4 exhibit more mistakes than method 1. Method 3 yields the worst stitching result, with misaligned point clouds.These results suggest that the joint calibration method significantly improves measurement accuracy in practice.After that, point clouds from more sampled poses are stitched together and fitted to spheres, as shown in the bottom part of Figure 12.The stitching and spherical fitting results of multiple point clouds are shown in Figure 14.Method 1 also yields the highest-quality stitching result.Methods 2 and 4 exhibit noticeable mistakes, with method 4 failing to stitch the point clouds.In terms of fitting results, method 1 outperforms the other methods, whereas methods 2 and 4 feature numerous outlier points.The error between the fitted diameter and theoretical value is used to evaluate each method quantitatively.The fitted diameter errors of methods 1, 2, and 4 are 0.23 mm, 0.61 mm, and 0.57 mm, respectively, whereas method 4 fails to achieve a proper spherical fitting.The result also demonstrates that method 1 exhibits the highest calibration accuracy.

Conclusions
This paper proposes a joint calibration method for a robot measurement system, which considers robot kinematic, camera-to-robot installation, and 3D camera measurement errors.This method establishes separate error models for each type of error and constructs a joint error model based on homogeneous transformation.Based on the joint error model, the calibration problem is formulated as a stepwise optimization problem, and analytical solutions are derived.The superiority of the proposed method is validated through simulation and experiment.In the simulation, the proposed method can reduce the mean positioning error from over 2.5228 mm to 0.2629 mm and the mean repeatability error from over 0.1831 mm to 0.0112 mm, compared to methods without considering all error types.In addition, the anti-noise simulation results demonstrate that the proposed method can achieve reliable high-precision calibration, even in increasing random noise.In the experiment, the proposed method can reduce the mean distance error from over 0.1488 mm to 0.1232 mm and the mean repeatability error from over 0.1045 mm to 0.0957 mm compared to other methods.When applied to actual measurements, the proposed method outperforms other methods in stitching and fitting point clouds, reducing the fitted diameter error from over 0.57 mm to 0.23 mm.However, based on the experimental results, the proposed method can only partially calibrate the 3D camera measurement error.Other forms of 3D camera measurement error, except for that proposed in Section 2.2, may exist and require further investigation.

Figure 3 .Figure 4 .
Figure 3.The measurement principle and error model of the 3D camera.

Figure 5 .
Figure 5.The camera error distribution (a) along the x-axis direction, (b) along the y-axis direction, and (c) along the z-axis direction.

Figure 6 .
Figure 6.The residual error in each part: (a) the residual robot error in methods 1-3, (b) the residual robot error in method 4, (c) the residual error in the hand-eye matrix, (d) the residual error of the camera.

Figure 9 .
Figure 9. Experimental equipment: (a) the calibration system, (b) the standard sphere installed on a linear slide.
and C W P are substituted into Algorithm 1 to solve for x, and the results are presented in Table4.The calibrated hand-eye matrix is obtained as follows.E C T calibrated =     −0.0023 −0.9999 −0.0010 −57.2041 1.0000 −0.0023 −0.0032 60.9219 0.0032 −0.0010 1.0000 86

Figure 10 .
Figure 10.The compensation value of each part: (a) robot, (b) hand-eye matrix, and (c) camera.

Figure 11 .
Figure 11.The calibration results of the camera (a) along the x-axis direction, (b) along the y-axis direction, (c) along the z-axis direction.

Figure 12 .
Figure 12.The point clouds stitching and spherical fitting process.

Figure 14 .
Figure 14.Stitching results and fitting results of each method: (a) the stitching result of method 1, (b) the fitting result of (a), (c) the stitching result of method 2, (d) the fitting result of (c), (e) the stitching result of method 3, (f) the stitching result of method 4, (g) the fitting result of (f).

Table 1 .
The parameters and errors of the robot.
are substituted into Algorithm 1 to obtain the calibration parameter x, and the results are presented in Table2.The calibrated hand-eye matrix E C T calibrated is obtained as follows.

Table 2 .
The simulation results of calibration parameters.

Table 3 .
Positioning and repeatability errors of methods.

Table 4 .
The experimental results of the calibration parameters.

Table 5 .
Distance and repeatability errors of methods.