Matrix Camera Calibration

Matrix Camera Calibration

Calculates intrinsic calibration parameters (principal point, focal length and radial distortion) of a matrix camera.

The tool can be used in two separate modes. If focal length and principal point are not known, calibrationMode should be set to 'CalibrateEverything'. In this case the focal length, principal point and non-linear distortion coefficients will be calculated using at least three input images of the standard VisionAppster calibration plate. Each image should be taken from a different angle and as large portion of the calibration plate as possible should be visible.

If the focal length is known and the principal point is in the middle of the sensor, calibrationMode can be set to 'CalibrateDistortion'. In this case only the distortion coefficients will be calculated using either one or several images. If only one image is used, the calibration plate should cover nearly the entire field of view. However, if the calibration plate covers only part of the field of view, you typically get an accurate result by taking four images such that the calibration plate is visible at a different corner of the field of view in each image. Unlike in 'CalibrateEverything' mode, each of these four images can be taken from the same angle, typically placing the camera directly above the calibration plate.

Once the calibration factors have been calculated, they can be copied to the image source connected to the camera.

Inputs

sync
An optional synchronization input. This input makes it possible to feed multiple independent images to the calibration procedure. If sync is connected, the tool will collect input images related to the object received in it. This makes it possible to use an iteration to collect multiple calibration images.
image
An image of the calibration plate. The image must be such that either the center marker or at least one of the corners is visible. The more markers are visible the better.
markerSpacing
The spacing (distance between centers) of calibration markers on the calibration plate in world units.
markerRows
Number of marker rows on the calibration plate. A row is a sequence of markers along the long edge of the plate. The number must be odd.
markerColumns
Number of marker columns on the calibration plate A columns is a sequence of markers along the short edge of the plate. The number must be odd.
calibrationMode
This flag can be set to 'CalibrateDistortion' if the focal length and the pixel size are known and the principal point is in the middle of the sensor. In this case only non-linear distortion needs to be calibrated.
focalLength
Focal length in world units, typically in millimeters. Applicable only if calibrationMode = 'CalibrateDistortion'.
pixelSize
Width of pixels on the image sensor, in world units. The tool assumes that pixels are square. Typical pixel sizes of area scan sensors range from 0.001 to 0.01 millimeters. Applicable only if calibrationMode = 'CalibrateDistortion'.

Outputs

focalLength
The focal length of the camera in pixels
principalPoint
The location of the principal point in pixel coordinates (cx, cy). The principal point is the point where the optical axis hits the image sensor.
distortionFactors
The radial and tangential distortion factors (k1, k2, p1, p2). Tangential factors aren't actually estimated and will always be zeros.
detectedMarkerCount
A N-by-1 matrix containing the number of detected markers for every image. If the number is zero, no markers have been detected so the image is not usable. Ideally every marker on the plate should be visible.
errorMeasure
A measure of how successful the calibration procedure was. The smaller the value, the better. A value between 0 and 1 is good, between 1 and 2 is fair and larger than 2 is poor. If the calibration fails completely, the value is infinite.

Mode of operation

Enumerator
CalibrateEverything 

Calibrate everything (focal length, principal point and distortion coefficients.)

CalibrateDistortion 

Calibrate only distortion coefficients.