CERTH Calibration Stack

The stack contains software for automatic and manual handeye calibration of both moving and static cameras.

Manual calibration of xtion3 camera.

This provides a node that performs easy but less accurate calibration of the static camera. It works by moving r2 arm randomly in the workspace of
the robot in front of the camera. The node uses a camera viewer window where the user should click on the tip of the gripper after each movement. After
repeating the procedure for 20 times, calibration data are computed and saved. Since the 3D coordinates of the tip are required, we should place a cardboard or piece of carton on the gripper so
that the depth image will contain correct depth values near the tip. The launch sequence is as follows:

roslaunch clopema_launch start_robot.launch
roslaunch camera_helpers xtion3.launch
roslaunch camera_helpers xtion3service.launch
roslaunch certh_calibration calibrate_xtion3.launch
rosrun certh_calibration handeye_calibration_manual

Automatic hand-eye calibration of xtion3 camera.

To do this you should create a "chessboard" calibration pattern and stick on a hard flat surface. The r2 gripper should hold the board (without occluding the pattern), like the image shown below.

When the node is run it will move the robot around to capture images and do the calibration. The launch sequence is as follows:

roslaunch clopema_launch start_robot.launch
roslaunch camera_helpers xtion3.launch
roslaunch camera_helpers xtion3service.launch
rosrun certh_calibration handeye_calibration --camera xtion3 --arm r2 --fixed --bbox -0.25 -0.8 0.9 0.25 -0.3 1.5 --orient -1 0 0 --board 5 3 --cell 0.04

Automatic hand-eye calibration of xtion1 or xtion2 camera

Now we use a larger calibration pattern placed on the floor in front of the robot. The arm with the camera that is to be calibrated will move around to capture images of the board.
The launch sequence is as follows:

roslaunch clopema_launch start_robot.launch
roslaunch camera_helpers xtion2.launch
roslaunch camera_helpers xtion2service.launch
rosrun certh_calibration handeye_calibration --camera xtion2 --arm r2 --bbox -0.2 -1.4 0.0 0.2 -1.2 0.4 --orient 0 0 -1 --board 7 5 --cell 0.04

Calibration output

The location of the calibration files may be specified by the "/calibration_folder" parameter. If none specified data will be written to ~/.ros/calibration/<camera_id>_handeye.calib

pattern.svg - Small calibration pattern (4.15 KB) Sotiris Malasiotis, 11/20/2013 10:36

pattern-large.svg - Large calibration pattern (12.9 KB) Sotiris Malasiotis, 11/20/2013 10:36

pattern.png (62.5 KB) Andreas Kargakos, 12/03/2013 10:43