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 board

Zivid calibration board

The main Zivid calibration board can be purchased at the Zivid WebShop. This board is also used for camera maintenance with infield correction. The Zivid calibration board has a 7x8 checkerboard made of 30 mm checkers and an ArUco marker in the corner. To use the board in hand-eye calibration, both the checkerboard and marker need to be detectable in each capture.

Picture of tilted calibration board.

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.14.0

Removed support for 9x6 grey-white checkerboards

2.13.0

Added support for ArUco markers.