Calibration Object

The hand-eye calibration process requires using an object of known geometry that can be detected and localized from the camera image. 2D patterns are most commonly used as calibration objects. OpenCV libraries use a checkerboard, while HALCON software uses a dot pattern. Having a 3D camera enables using a 3D calibration object; an example is spheres.

../../../_images/hand-eye-common-calibration-objects.png

Zivid Calibration Objects

Zivid supports the following calibration objects:

  • ArUco markers

  • Zivid calibration boards

Zivid calibration boards

The main Zivid calibration boards can be purchased at the Zivid WebShop. These boards are also used for camera maintenance with infield correction. To use the board in hand-eye calibration, both the checkerboard and marker need to be detectable in each capture.

Camera Model

Recommended Board

Zivid 2 M70

7x8 - 30 mm

Zivid 2 L100

7x8 - 30 mm

Zivid 2+ MR130

7x8 - 30 mm

Zivid 2+ LR110

7x8 - 30 mm

Zivid 2+ MR60

5x6 - 20 mm

../../../_images/infield-calibration-boards.png

ArUco markers

Zivid hand-eye calibration also works with one or several ArUco markers as calibration objects. In general, the more markers are used, the better. You can generate and print ArUco markers at https://chev.me/arucogen/. Make sure that the markers are printed on a flat surface. The OpenCV dictionaries that we support are 4x4, 5x5, 6x6, and 7x7. One benefit of using ArUco markers for hand-eye calibration is that they are small. Another is that not all markers need to be detectable in each capture.

ArUco marker example
How large does the ArUco marker need to be?

We recommend having at least 7 pixels per ArUco bit side at the furthest imaging distance. The image below shows a zoomed-in image of an ArUco marker where each ArUco bit is represented by 8 pixels. How you can figure out the minimum needed size in mm is explained in the following example.

../../../_images/aruco_bit_8_pixels.png

For a 4x4 ArUco dictionary, there are 6 bits (4 inner bits and 2 outer bits), so you should aim for a minimum of 42 pixels per marker side.

Let us assume that you are using the Zivid 2+ M130 camera at a maximum imaging distance of 2 meters. The spatial resolution for this camera and distance is 0.5 mm (see Calculate FOV and Imaging Distance). Multiplying 0.5 mm by 42 pixels gives us 21 mm.

Therefore, to use the Zivid 2+ M130 at a distance of up to 2 meters, your ArUco marker should be at least 21 mm in size.

Note

You should leave some white space around your ArUco marker, with at least 1 bit of border. For the example above, this means 3.5 mm on each side (7 pixels multiplied by 0.5 mm).

Continue reading about How To Get Good Quality Data On Zivid Calibration Object.

Version History

SDK

Changes

2.16.0

Added support for a smaller calibration board, ZVDA-CB02 (5x6 20 mm).

2.14.0

Removed support for 9x6 grey-white checkerboards.

2.13.0

Added support for ArUco markers.