Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Single Camera Calibration App

Camera Calibrator Overview

You can use the camera calibrator to estimate camera intrinsics, extrinsics, and lens distortion parameters. You can use these camera parameters for various computer vision applications. These applications include removing the effects of lens distortion from an image, measuring planar objects, or reconstructing 3-D scenes from multiple cameras.

Note

You can use the Camera Calibrator app with cameras up to a field of view (FOV) of 95 degrees.

Single Camera Calibration

Follow this workflow to calibrate your camera using the app:

  1. Prepare images, camera, and calibration pattern.

  2. Load images.

  3. Calibrate the camera.

  4. Evaluate calibration accuracy.

  5. Adjust parameters to improve accuracy (if necessary).

  6. Export the parameters object.

In some cases, the default values work well, and you do not need to make any improvements before exporting parameters. If you do need to make improvements, you can use the camera calibration functions in MATLAB®. For a list of functions, see Single Camera Calibration.

Open the Camera Calibrator

  • MATLAB Toolstrip: Open the Apps tab, under Image Processing and Computer Vision, click the app icon.

  • MATLAB command prompt: Enter cameraCalibrator

Prepare the Pattern, Camera, and Images

For best results, use between 10 and 20 images of the calibration pattern. The calibrator requires at least three images. Use uncompressed images or lossless compression formats such as PNG. The calibration pattern and the camera setup must satisfy a set of requirements to work with the calibrator. For greater calibration accuracy, follow these instructions for preparing the pattern, setting up the camera, and capturing the images.

Note

The Camera Calibrator app only supports checkerboard patterns. If you are using a different type of calibration pattern, you can still calibrate your camera using the estimateCameraParameters function. Using a different type of pattern requires that you supply your own code to detect the pattern points in the image.

 Prepare the Checkerboard Pattern

 Camera Setup

 Capture Images

Add Images

To begin calibration, you must add images. You can add saved images from a folder or add images directly from a camera. The calibrator analyzes the images to ensure they meet the calibrator requirements and then detects the points.

 Add Images from File

 Acquire Live Images

Analyze Images

After you select the images, in the Checkerboard Square Size dialog box, enter the length of one side of a square from the checkerboard pattern.

The calibrator attempts to detect a checkerboard in each of the added images. An Analyzing Images progress bar window appears, indicating detection progress.

If any of the images are rejected, the Detection Results window appears, which contains diagnostic information. The results indicate how many total images were processed, and how many were accepted, rejected, or skipped The calibrator skips duplicate images.

To view the rejected images, click view images. The calibrator rejects duplicate images. It also rejects images where the entire checkerboard could not be detected. Possible reasons for no detection are a blurry image or an extreme angle of the pattern. Detection takes longer with larger images and with patterns that contain a large number of squares.

View Images and Detected Points

The Data Browser pane displays a list of images with IDs. These images contain a detected pattern. To view an image, select it from the Data Browser pane.

The Image pane displays the checkerboard image with green circles to indicate detected points. You can verify the corners were detected correctly using the zoom controls. The yellow square indicates the (0,0) origin. The X and Y arrows indicate the checkerboard axes orientation.

Calibrate

Once you are satisfied with the accepted images, click Calibrate. The default calibration settings assume the minimum set of camera parameters. Start by running the calibration with the default settings. After evaluating the results, you can try to improve calibration accuracy by adjusting the settings and adding or removing images, and then calibrate again.

 Set Initial Guesses for Camera Intrinsic and Radial Distortion

 Calibration Algorithm

Evaluate Calibration Results

You can evaluate calibration accuracy by examining the reprojection errors and the camera extrinsics, and by viewing the undistorted image. For best calibration results, use all three methods of evaluation.

 Examine Reprojection Errors

 Examine Extrinsic Parameter Visualization

 View Undistorted Image

Improve Calibration

To improve the calibration, you can remove high-error images, add more images, or modify the calibrator settings.

 Add or Remove Images

 Change the Number of Radial Distortion Coefficients

 Compute Skew

 Compute Tangential Distortion

Export Camera Parameters

When you are satisfied with calibration accuracy, click Export Camera Parameters. You can save and export the camera parameters to an object or generate the camera parameters as a MATLAB script.

Export Camera Parameters

Click Export Camera Parameters to create a cameraParameters object in your workspace. The object contains the intrinsic and extrinsic parameters of the camera, and the distortion coefficients. You can use this object for various computer vision tasks, such as image undistortion, measuring planar objects, and 3-D reconstruction. See Measuring Planar Objects with a Calibrated Camera. You can optionally export the cameraCalibrationErrors object, which contains the standard errors of estimated camera parameters.

Generate MATLAB Script

Click Generate MATLAB script to save your camera parameters to a MATLAB script, enabling you to reproduce the steps from your calibration session.

References

[1] Zhang, Z. “A Flexible New Technique for Camera Calibration”. IEEE Transactions on Pattern Analysis and Machine Intelligence.Vol. 22, No. 11, 2000, pp. 1330–1334.

[2] Heikkila, J, and O. Silven. “A Four-step Camera Calibration Procedure with Implicit Image Correction.” IEEE International Conference on Computer Vision and Pattern Recognition. 1997.

See Also

| | | | | | | | |

Related Examples

More About

External Websites