Camera Registration

The algorithm performs registration between two cameras based on two sets of 2D images of marker boards taken by these cameras.

Input

Two 2D sets of images with a valid camera calibration showing a camera calibration target. Only 8-bit grayscale and RGB images are supported.

Output

The image sets’ Camera Calibration Data Components are updated to include the registration matrix. Additionally (and optionally) copies of the two input image sets with burned-in target detections can be generated.

Description

The algorithm needs a given calibration for the two cameras (i.e. intrinsics and distortion parameters). Those are taken from the respective image set’s Camera Calibration Data Component which can be set via :ref:`Edit Camera Calibration algorithm <editcameracalibration>.

Several typical calibration targets are supported. For an overview refer to marker configuration.

The checkbox Export detection images can be activated to export annotated images with the detected marker points.

The Register button computes the transformation matrix between the first and the second camera and updates the Camera Calibration Data Component for each camera with it such that the registration for camera 1 is identity (making its coordinate system the world coordinates) and the registration for camera 2 is the inverse of the registration matrix, bringing points from camera coordinates of camera 2 to camera coordinates of camera 1 and thus world coordinates. The computed matrix and its root mean square reprojection error (RMSE) is shown in the log window.

Finally the algorithm can be used to recompute the RMSE of a given registration using the Compute Reprojection Error button. For this the algorithm needs to have a registration matrix, either by computing it (see above) or by using an existing one from the Camera Calibration Data Component. (Re-)computing the RMSE will output the error in the log window, but will not modify the respective Camera Calibration Data Components.