Calibration Results Check and Analysis
For the calibrated extrinsic parameters, you need to check whether the calibration accuracy meets the requirements. If the error falls outside the normal range, you should diagnose and solve the problems that are responsible for the error before recalibrating to obtain qualified extrinsic parameters.
Validate Calibration Results
This section provides methods for quickly validating calibration results.
Validation Method | Scenarios with Low Accuracy Requirements | Scenarios with High Accuracy Requirements | Description |
---|---|---|---|
Required |
Required |
Rough validation |
|
Roughly Check Coincidence Degree between the Point Cloud of the Robot and the Robot Model |
Required |
Required |
Rough validation |
Check the Shift of the Calibration Board’s Point Cloud in Reference to a Fixed Point |
Required |
Required |
Rough validation (in EIH scenarios where the camera cannot capture images of the robot base) |
Use the Extrinsic Parameter Accuracy Validation Tool to Validate Extrinsic Parameters |
Not required |
Required |
Comprehensive and quantitative validation |
View Error Point Cloud in Point Cloud Viewer
After calculating the camera extrinsic parameters, please perform the following operation:
-
In the Calculate extrinsic parameters step, view the error point cloud in the right Point cloud viewer panel after the calibration calculation is complete.
The error point cloud shows the deviation between the calculated value and the actual value of the circles on the calibration board. For the detailed description, please refer to Error Point Cloud Description. -
Confirm that the calibration accuracy meets the project’s requirements. Find the error value with the 100% percentage to get the rough calibration accuracy.
For example, the calibration accuracy in the image below is within ±2.5 mm (using the method of multiple random calibration board poses to collect calibration data).
For example, the calibration accuracy in the image below is within ±1 mm (using the method of TCP touch to collect calibration data).
In general, the standards for acceptable calibration error in the point cloud are as follows:
-
For common projects, all data points should have errors within ±3 mm (< 3 mm: 100%).
-
For high-precision projects, all data points should have errors within ±2 mm (< 2 mm: 100%).
-
For palletizing and depalletizing projects, all data points should have errors within ±5 mm (< 5 mm: 100%).
The above standards are just for reference. Please follow the specific accuracy requirement of the real application.
Roughly Check Coincidence Degree between the Point Cloud of the Robot and the Robot Model in Scene Viewer
This validation method applies to the calibration scenarios in ETH setup and EIH setup. For calibration in the ETH setup, the camera needs to capture the point cloud of the robot arm; for calibration in the EIH setup, the camera needs to capture the point cloud of the robot base. In the EIH scenario, the robot’s degrees of freedom as well as the robot’s workspace need to ensure that the robot’s end can reach the vicinity of the base so that the camera can capture the image of the robot base. |
Hand-eye calibration in the ETH setup:
After calculating the camera extrinsic parameters, please perform the following operation:
-
After calibration, move the robot arms into the field of view of the camera.
-
In the Calculate extrinsic parameters step, click the Capture by camera button in the 2 Auxiliary tool area. This operation triggers the camera to capture images.
-
In the right Scene viewer panel, visually check coincidence degree between the point cloud of the real robot and the robot model.
If the point cloud of the robot roughly coincides with the robot model, the calibration is successful.
Hand-eye calibration in the EIH setup:
After calculating the camera extrinsic parameters, please perform the following operation:
-
Move the robot end effector to a position where the camera can capture the base.
-
In the Calculate extrinsic parameters step, click the Capture by camera button in the 2 Auxiliary tool area. This operation triggers the camera to capture images.
-
In the right Scene viewer panel, visually check coincidence degree between the point cloud of the real robot and the robot model.
If the point cloud of the robot roughly coincides with the robot model, the calibration is successful.
|
Check the Shift of the Calibration Board’s Point Cloud in Reference to a Fixed Point in Scene Viewer
If the camera cannot capture the base due to robot degrees of freedom or workspace limitations in the EIH setup, you can use this method to roughly validate the calibration results. |
After calculating the camera extrinsic parameters, perform the following operations:
-
Place the calibration board on a fixed position.
-
Open Mech-Viz, add a fixed point, and make sure that this point coincides with the crosshair of a calibration circle on the calibration board.
-
Find the “Fixed-Point Move” Step from the Step Library and then drag it to the graphical programming workspace.
-
Select this Step, set the Waypoint type parameter to “Target object pose” on the parameter panel, adjust the X, Y and Z values of the pose to make this point coincide with the crosshair of a calibration circle on the calibration board.
-
-
Control the robot to change the pose of the camera for several times, and click the Recalculate extrinsic parameters button in the Calculate camera parameters step of the calibration process. This operation will trigger the camera to capture images.
-
Check whether the calibration board’s point cloud has a significant shift in reference to the fixed point in Scene viewer.
If the calibration board’s point cloud does not have a significant shift, the calibration is successful.
|
Use the Extrinsic Parameter Accuracy Validation Tool to Validate Extrinsic Parameters
Mech-Vision has provided the extrinsic parameter accuracy validation tool to analyze extrinsic parameter errors in the eye-to-hand setup and eye-in-hand setup. The error analysis covers the check of the extrinsic parameter errors and the robot absolute accuracy errors.
In the Calculate extrinsic parameters step, click Extrinsic parameter accuracy to open the tool. Please refer to the tool’s guidance to validate the extrinsic parameter accuracy and generate the final evaluation report.
Alternatively, you can open the tool by selecting
in the menu bar.For details, please refer to the section Analyze extrinsic parameter errors.
Analyze Calibration Results
Check Extrinsic Parameter Calibration Report
For the automatic calibration and the manual calibration using the multiple random calibration board poses method for six-axis robots, Mech-Vision’s camera calibration tool has provided the “extrinsic parameter calibration report” function.
In the Calculate extrinsic parameters step of the calibration process, after you have got the extrinsic parameters by clicking the Calculate extrinsic parameters button, you can click the View extrinsic parameter calibration report button.
The Mech-Vision’s camera calibration tool will check the extrinsic parameter calibration results based on the collected calibration data, and generate the extrinsic parameter calibration report.
This report displays the results of the following checks and improvement recommendations:
-
Euler angle convention check
-
Camera accuracy check
-
Robot absolute accuracy check
If the camera accuracy in the report does not meet the requirements, please follow the recommendation to troubleshoot the camera accuracy errors.
Improve the Accuracy of Extrinsic Parameters
If the calibration accuracy is below standard, you need to follow the following instructions to inspect the calibration data and find the root cause for the errors.
Inspect Calibration Data
Please check the calibration data in the following order to locate the root cause.
Calibration data refers to the calibration point data generated during the calibration process and is stored in calib_data.json. This file records data such as the flange poses at calibration points and calibration circle data.
To inspect calibration data, follow these steps:
-
Open Mech-Vision, and click the Camera Calibration button in the toolbar. The Configuration before Calibration window will be prompted.
-
In the Select how to calibrate window, select the Load calibration parameters radio button, choose the calibration parameter file, and then click the Next button.
-
In the Select parameter usage window, select the Continue working on the calibrated camera radio button, and then click the Next button.
-
In the Select calibration task window, select the Re-calculate extrinsic parameters radio button, select the Load the calibration data checkbox, and then click the Calibrate button.
-
In the Calibrate extrinsic parameters step of the calibration process, click a calibration point in the Calibration image and pose list panel (such as pose_000), and click the Calibration circle info tab to view the robot flange pose and the calibration circle data at this calibration point.
In the figure, X (pixel) and Y (pixel) columns represent the pixel coordinates of the center points of the calibration circles in the current 2D image; Camera frame: X(m)/Y(m)/Z(m) columns represent the coordinates of the center points relative to the camera reference frame in the current depth image. |
Please inspect the calibration data from the following aspects:
-
Check if the flange poses change between different sets of calibration points in the pyramid calibration path.
Only calibration points in the pyramid calibration path are checked, excluding the rotating sets of calibration points. This inspection is applied to calibration scenarios using the multiple random calibration board poses method to collect calibration data. In the Calibration image and pose list panel, select the calibration points one by one (such as pose_000), and then click the Calibration circle info tab to view the robot flange pose at the calibration point. When the robot moves along the pyramid calibration path, it will move along its base coordinate or flange without rotating. Therefore, the Euler angles will keep consistent throughout the entire procedure.
Depending on the precision level of the robot, the Euler angles might fluctuate differently. If the fluctuation exceeds 1 degree, the robot might have lost its zero position or have bad precision.
Solution: in this case, hand-eye calibration should not be continued. You should check the robot’s zero position and fix the precision issue before continuing to calibrate.
-
Check if the “Error of measured average calibration circle interval” of the calibration points exceeds the standard value.
In the Calibration image and pose list panel, select the calibration point, and view Error of measured average calibration circle interval in the Messages panel.
If it exceeds the standard value, the calibration point will turn to yellow for a warning. As part of the intrinsic parameters check result, Error of measured average calibration circle interval can partly reflect the current error in the camera intrinsic parameters.
Solution: for projects with low precision requirements, intrinsic parameters with errors that slightly exceed the standard may still be used. For situations where high precision is required or the errors greatly exceed the standard, it is recommended to re-calibrate the intrinsic parameters or replace the camera.
Errors in intrinsic parameters will affect the calibration result, but if it is within the normal range, it is generally acceptable.
-
Check if the max value of the “Calibration circle point cloud fluctuation” exceeds 3 mm.
In the Calibration image and pose list panel, select the calibration point, and view Calibration circle point cloud fluctuation in the Messages panel. Calibration circle point cloud fluctuation represents the overall fluctuation of the plane containing the coordinates of all the circles' center points. This value directly influences the accuracy of the extrinsic parameters.
The higher a project’s precision requirements are, the lower the fluctuation value should be. Generally, the max acceptable value for the fluctuation is 3 mm. If more than three calibration points have point cloud fluctuation greater than 3 mm, the whole accuracy is not acceptable. You should troubleshoot the issue and perform re-calibration.
Potential factors that might cause point cloud fluctuation are as follows:
Reason 1: The 3D camera exposure parameters are not optimized. It is likely that the Surface Smoothing and Outliers Removal options are disabled or that Gain is enabled.
Solution: Change Surface Smoothing and Outliers Removal to “Normal”, set Gain to zero, and adjust the 3D exposure parameters accordingly. If the point cloud of the calibration circles is still fragmented, on-site shading is required.
Reason 2: When automatic calibration is performed in the ETH setup, the calibration board is not securely mounted on the robot flange. When the robot is too fast, the calibration board might vibrate during the calibration process, thus causing excessive point cloud fluctuation.
Solution: Lower the speed limit on the robot, install the calibration board firmly, and extend the wait time before capturing a new image at each waypoint.
Calculate Hand-Eye System Compensation
This function can be used when the camera mounting method is eye to hand (ETH) and the error of the current extrinsic parameter calibration result is greater than the project’s requirement for accuracy.
Principle introduction
The robot moves with the calibration board, and the software collects data in the working area and calculates the hand-eye system compensation. The software divides the working area into several regions for regional compensation of accuracy.
Usage
This function can be used only in the Developer mode. |
-
According to the on-site situation and the camera's field of view, increase the number of calibration points. The higher the accuracy requirement, the denser the calibration points needed. Usually, you need to add more than 10 layers of calibration points (15 layers are recommended) in the Z-direction of the workspace and ensure that each layer has 3 x 3 or 5 x 5 calibration points.
-
In the Calculate Extrinsic Parameters step of the calibration procedure, select the Calculate Hand-Eye System Compensation checkbox, and then click the Recalculate extrinsic parameters button.
|
|