Hand-Eye Calibration
Introduction
Hand-eye calibration is used to relate what the camera (“eye”) sees to where the robot arm (“hand”) moves.
Eye-in-hand calibration
A process for determining the position and orientation of a statically mounted camera with respect to the robot’s base frame. It is usually done by placing an object of known geometry in the robot’s gripper, followed by taking a series of images of it in a set of different positions and orientations.
Eye-to-hand calibration
A process for determining the relative position and orientation of a robot-mounted camera with respect to the robot’s end-effector. It is usually done by capturing a set of images of a static object of known geometry with the robot arm located in a set of different positions and orientations.
Articles & Tutorials
- Hand-Eye Calibration Concept and Theory
- Zivid Calibration Object
- How to run and integrate Zivid Hand-Eye Calibration
- How to get Good Dataset for Hand-Eye Calibration
- Cautions and Recommendations for Hand-Eye Calibration
- How to Verify Hand-Eye Calibration
- How to troubleshoot Hand-Eye Calibration
- How To Use the Result of Hand-Eye Calibration
Where to Start?
Learning
Hand-Eye Calibration Concept and Theory
Covers the concept and theory of hand-eye calibration without going into the details of the Zivid hand-eye calibration software. If you already have the theoretical background and are looking for a practical guide on how to perform hand-eye calibration with Zivid software, skip to the following tutorials.
Doing
How to select Zivid Calibration Object
Outlines the available Zivid Hand-Eye calibration object options and provides advice on choosing and preparing the calibration object for accurate calibration.
How to run and integrate Zivid Hand-Eye Calibration
Provides an overview of the Zivid tools and code samples available to perform the calibration and helps to select the best one for your use case.
How to get Good Dataset for Hand-Eye Calibration
Explains the process and provides tips to prepare the robot and camera and collect high-quality point clouds and robot pose data to ensure satisfactory hand-eye calibration results.
Cautions and Recommendations for Hand-Eye Calibration
Thoroughly covers common pitfalls, best practices, and recommendations to avoid mistakes during calibration and get a satisfactory result.
How to Verify Hand-Eye Calibration
Covers and explains available methods for checking that the computed hand-eye transform is accurate and recommends the best verification method.
How to troubleshoot Hand-Eye Calibration
Guidance on diagnosing and fixing problems if hand-eye calibration fails or if the results are unsatisfactory.
How To Use the Result of Hand-Eye Calibration
Explains how to apply the calculated hand-eye transform in robotics applications by computing a pose for a robot guidance task, e.g., picking an object.
Version History
SDK |
Changes |
|---|---|
2.16.0 |
Support is added for a smaller Zivid calibration board, ZVDA-CB02 (5x6 20 mm). |
2.15.0 |
Hand-eye GUI is added. |
2.13.0 |
Added support for ArUco markers. |
2.6.0 |
Improved robustness of the checkerboard detection with regards to Blooming - Bright Spots in the Point Cloud. |
2.4.0 |
The hand-eye calibration method is updated to improve accuracy, leading to roughly 50% improvement in translational residuals at a cost of slightly increased rotational residual. |
2.3.0 |
Improved robustness of the checkerboard detection. |
2.2.0 |
Support is added for the new line of official Zivid calibration boards, the first of which is the ZVDA-CB01 (7x8 30 mm). |
2.0.0 |
Hand-eye API is changed, part of the |
1.6.0 |
Hand-eye calibration API is added. |