Hand-Eye Calibration in the Eye-to-Eye Setup

This how-to guide introduces how to complete the hand-eye calibration in the eye-to-eye (ETE) setup.

For more information about calibration in the ETE setup, please refer to Hand-Eye Calibration in the ETE Setup.

Preparation before Calibration

Before hand-eye calibration, you need to finish the following preparations:

  • Construct the Mech-Mind Vision System.

  • Prepare the materials required for calibration.

  • Adjust the effect of calibration board’s point cloud.

  • Complete the robot communication configuration.

Construct the Vision System

Construct the Mech-Mind Vision System by referring to the section Vision System Hardware Setup.

You need to use Mech-Eye Viewer, Mech-Vision and Mech-Viz during hand-eye calibration. Please ensure that they have been installed and are running the latest versions.

Prepare the Materials Required for Calibration

The hand-eye calibration in the ETE setup needs to use the calibration board. Please prepare the calibration board according to the following requirements:

  • Ensure that the circles of the calibration board are clearly visible and without obvious scratches, and the board does not suffer from deformations.

  • In the ETE setup, mount the robot-specific bracket for calibration board onto the robot flange, and then mount the calibration board onto the bracket. Make sure that the calibration board is attached securely, and that the board is parallel to the XY plane of the robot flange frame.

    If an undetachable gripper is connected to the robot flange, you can attach the calibration board directly to the gripper.

In addition, before calibration, move the robot to the starting point for calibration, that is, the bottom middle of the overlapped area of the two cameras’ field of view.

Adjust the Effect of Calibration Board’s Point Cloud

  1. Open Mech-Eye Viewer to adjust camera parameters.

  2. Adjust the 2D parameters to make sure that the 2D image of the calibration board is clear and neither overexposed nor underexposed.

  3. Adjust 3D parameters to make sure that the point clouds of the circles on the calibration board are complete and have clear contours. It is recommended to set Surface Smoothing and Outlier Removal to Normal in the Point Cloud Processing section to reduce the point cloud fluctuation range.

    If the on-site ambient lights are not ideal and affect the quality of 2D images and point clouds, you can use shading or supplemental light to improve the lighting conditions.

  4. Make sure that the images and point cloud of the calibration board are up to standard after completing the preceding steps.

    Normal Overexposed Underexposed

    2D image

    normal-2d

    overexposure-2d

    underexposure-2d

    Point cloud

    normal-3d

    overexposure-3d

    underexposure-3d

Pre-calibration Configuration

If the robot supports the Standard Interface or Master-Control communication mode, please complete pre-calibration configuration according to the section Pre-calibration Configuration for automatic calibration in the ETH setup.

Compared with the automatic calibration in the ETH setup, the following operation is different. During the pre-calibration configuration in the ETE setup, you need to select the Eye to eye radio button in the Select camera setup window.

calibration ete calib preset ete

If the robot does not support the Standard Interface or Master-Control communication mode, please complete pre-calibration configuration according to the section Pre-calibration Configuration for manual calibration using the multiple random calibration board poses method in the ETH setup.

Compared with the preceding calibration process, the following operations are different during the pre-calibration configuration in the ETE setup:

  1. In the Select camera setup window, select the Eye to eye radio button.

    calibration ete calib preset ete
  2. In the Select how to collect data window, select the Multiple random calibration board poses radio button.

    calibration ete calib preset ete random

Calibration Procedure

Connect to the Camera

  1. In the Connect to camera step, select the sub-camera to connect in the Camera ID list, and then click the connect camera icon button or double-click the camera entry to connect to it.

    calibration ete connect camera ete
  2. Repeat the preceding step to connect to the main camera. After the main camera is connected, the calibration ete master camera icon will be displayed before the camera ID.

    To switch the main camera, select a camera, and then click the Set as main button.

  3. After the camera is connected, click the Capture once or Capture live button.

    calibration ete image capture ete
  4. In the Image viewer panel, ensure that the camera can capture images normally and click the Next button on the bottom bar.

    In this step, the 2D image and depth map are captured only for the main camera. To confirm the effects of the images captured by the sub-camera, you can switch it to the main camera, and switch the original main camera back to the main camera after confirming.

Other Steps

If the robot supports the Standard Interface or Master-Control communication mode, please complete remaining steps of the calibration procedure according to the section Calibration Procedure for automatic calibration in the ETH setup.

If the robot does not support Standard Interface or Master-Control communication mode, please complete remaining steps of the calibration procedure according to the section Calibration Procedure for manual calibration using the multiple random calibration board poses method in the ETH setup.

  • In the Collect images and poses step, the software will capture calibration images for the two cameras at the same time and collect the pose data. You can switch the camera in the Calibration image and pose list panel to view the calibration board images and calibration circle data collected for each camera.

  • In the Calculate extrinsic parameters step, the software will calculate the extrinsic parameters for both cameras, and the pose relationship between the two cameras.

Till now, the calibration process is completed.

Calculate Pose Relationship between Cameras from the Calibrated Extrinsic Parameters Directly

After calibrating the extrinsic parameters of the two cameras separately, you can use the ETE calibration procedure to directly calculate the pose relationship between the two cameras.

To do so, follow these steps:

  1. Open Mech-Vision, and click the Camera Calibration (Standard) button in the toolbar. The Configuration before Calibration window will be prompted.

  2. In the Select how to calibrate window, select the New calibration radio button, and then click the Next button.

    calibration calib preset new
  3. In the Select calibration task window, select Hand-eye calibration for custom robot from the drop-down list box, specify the Robot Euler angle convention parameter, select the robot coordinate system type, and then click the Next button.

    calibration calib preset select robot other
  4. In Select a robot type for calibration window, select a robot type among 6-axis robot, 4-axis robot (SCARA, Palletizer) or 5-axis robot or other types radio button, and then click the Next button.

    calibration ete calib preset select robot type
  5. In the Select camera setup window, select the Eye to eye radio button, and then click the Next button.

    calibration ete calib preset ete
  6. In the Select how to collect data window, select the Use calibrated extrinsic parameters for calculation, choose two camera’s extrinsic parameter files, and then click the Calibrate button. The Calibration (Eye to Eye) window will be prompted.

    calibration ete calib preset ete calculate
  7. In the Connect to camera step, select the camera to connect in the Camera ID list, and then click the connect camera icon button to connect to it.

  8. Repeat the preceding step to connect to the second camera, and then click the Next button on the bottom bar.

  9. In the Calculate extrinsic parameters step, click the Calculate extrinsic parameters button.

    calibration ete calcualte extri param ete quick

After the camera extrinsic parameters have been calculated, you can view the fused point cloud in the Point cloud viewer panel.

Change the Extrinsic Parameter File

If the camera’s extrinsic parameter file has been used by a Mech-Vision project, you need to change the extrinsic parameter file used by the Mech-Vision project to a new one after you finish the hand-eye calibration.

  1. Select the Capture Images from Camera Step.

    change calibration parameter group
  2. In the Step Parameters panel, click change calibration parameter group icon of the Camera Calibration Parameters parameter, and select the newly calibrated extrinsic parameter file.

Calibration-Related Status Codes

If the robot uses the Standard Interface to communicate with the Vision System during hand-eye calibration, the Vision System will return status codes in response data to indicate the execution status of the commands. The status codes indicate both the normal execution results and execution failures. You can perform further troubleshooting according to the status codes.

Calibration Error Codes

Error code Description

7001

Calibration: Parameter error

7002

Calibration: Calibration flange pose not provided by Mech-Vision

7003

Calibration: Calibration joint positions not provided by Mech-Vision

7004

Calibration: Robot failed to reach calibration point

Calibration Normal Status Codes

Normal Status Code Description

7100

Calibration: Robot reaches calibration point successfully

7101

Calibration: Pose received from Mech-Vision successfully

Check the Fusion Effect of the Calibration in the ETE Setup Using a Mech-Vision Project

You can build a project as shown in the following figure. Note that the "Trigger Control Flow Given No Output" and "Trigger Control Flow Given Output" options in Execution Flags area should be selected.

calibration ete ete project

Execute the single Step "Merge Point Clouds" to display the fused point cloud. The point cloud output after merging is the fused whole point cloud, as shown in the figure below. You can click the upper left corner View as Whole| 1 | 2 to switch point clouds.

calibration ete converged poin cloud

We Value Your Privacy

We use cookies to provide you with the best possible experience on our website. By continuing to use the site, you acknowledge that you agree to the use of cookies. If you decline, a single cookie will be used to ensure you're not tracked or remembered when you visit this website.