您的位置:首页 > 编程语言 > MATLAB

摄像机标定matlab工具包 Camera Calibration Toolbox for Matlab

2016-05-27 20:30 806 查看
Camera Calibration Toolbox for Matlab



 

   
This is a release of a Camera Calibration Toolbox for Matlab® with a complete documentation.
This document may also be used as a tutorial on camera calibration since it includes general information about calibration, references and related links. 
Please report bugs/questions/suggestions to Jean-Yves Bouguet at "jbouguet at gmail dot com". 

The C implementation of this toolbox is included in OpenCV,
an open source computer vision library freely available online

Content: 
System requirements
Getting started
Calibration examples
Description of the calibration parameters
Description of the functions in the calibration toolbox
Doing your own calibration
Undocumented features of the toolbox
References
A few links related to camera calibration



 System requirements

This toolbox works on Matlab 5.x to Matlab 8.x on Windows, Unix and Linux systems and does not require any specific Matlab toolbox (for example, the optimization toolbox is not required). 
Note: Please help me maintaining this toolbox by reporting them to me. Include in the email subject the type of the bug, and copy in the body the complete
error message. Thank you!



 Getting started

Go to the download page, and retrieve the latest version of the complete camera calibration toolbox for Matlab.
Store the individual matlab files (.m files) into a unique folder TOOLBOX_calib (default folder name).
Run Matlab and add the location of the folder TOOLBOX_calib to the main matlab path. This procedure will let you call any of the matlab toolbox functions from anywhere. Under Windows, this may be easily done by using the path editing menu.
Under Unix or Linux, you may use the command path or addpath (use the helpcommand for function description).
Run the main matlab calibration function calib_gui (or calib). 

A mode selection window appears on the screen: 



This selection window lets you choose between two modes of operation of the toolbox: standard or memory efficient. In standard mode, all the images used for calibration are loaded into memory once and never read again from disk. This minimizes the overall number
of disk access, and speeds up all image processing and image display functions. However, if the images are large, or there are a lot of them, then the OUT OF MEMORY error message may be encountered. If this is the case, the new memory efficient
version of the toolbox may be used. In this mode, every image is loaded one by one and never stored permanently in memory. 

If you choose to run the standard version of the toolbox now, you can always switch to the other memory efficient mode later in case the OUT OF MEMORY error message is encountered. The two modes of operation are totally compatible (for input
and output) and interchangeable.

Since both modes have the exact same user interface, in the context of this documentation, let us select the standard mode by clicking on the top button of the window. The main calibration toolbox window appears on the screen (replacing the mode selection window): 



Note that the mode selection step can be bypassed altogether by directly running calib_gui(0) for the normal mode or calib_gui(1) for the memory efficient mode (try help calib_gui for more information).

You are now ready to use the toolbox for calibration.



 Calibration examples

First calibration example - Corner extraction, calibration, additional tools

This section takes you through a complete calibration example based on a total of 20 (and 25) images of a planar checkerboard. This example lets you learn how to use all the features of the toolbox: loading calibration images, extracting image corners, running
the main calibration engine, displaying the results, controlling accuracies, adding and suppressing images, undistorting images, exporting calibration data to different formats... This example is highly recommended for someone who is just starting using the
toolbox.

Second calibration example - Calibration using Zhengyou Zhang's data

This section shows you how to use the main calibration engine on Zhengyou Zhang's data in a scripting mode. After going through that example, you will also know how to change the intrinsic camera model by choosing which parameters to optimize. This example
is highly recommended for someone who intends to use the main calibration engine in their own matlab script files.

Third calibration example - Calibration using Heikkil�'s data (planar and non-planar calibration rigs)

Another calibration example on Heikkil�'s data that demonstrates that the main optimization engine also works when the calibration rig is non-planar. Try it, it takes only 30 seconds to run!

Fourth calibration example - Calibration using Bakstein and Halir's data

Another similar calibration example that runs the main optimization engine on Bakstein and Halir's data. Try it!

Fifth calibration example - Calibrating a stereo system, stereo image rectification and 3D stereo triangulation

This example shows how to use the toolbox for calibrating a stereo system (intrinsically and extrinsically), rectifying stereo images, and performing 3D stereo triangulation. A new stereo toolbox called by stereo_gui is demonstrated. 



Sixth calibration example - Combining two independent calibrations of the same camera

This example gives a quick demonstration of the script merge_two_datasets.m that lets you easily combine two calibration datasets of the same camera created independently. 



 Description of the calibration parameters

After calibration, the list of parameters may be stored in the matlab data file Calib_Results.mat by
clicking on Save. This section gives a detailed description of all the calibration parameters (Intrinsic and Extrinsic) and their corresponding
matlab variable names. In addition, one to one correspondences between our notation and Heikkil�'s and Willson's notations
are given. 



 Description of the functions in the calibration
toolbox

This sections gives a short description of all the main functions in the calibration toolbox. 



 Doing your own calibration

This section contains some information regarding the initial steps of calibration: designing the calibration rig, naming the calibration images, image formats to use,... Very useful to get started. For the lazy
ones, a calibration pattern is even provided! 



 Undocumented features of the toolbox

This section contains a list of features that have been added to the toolbox since the first release of the documentation. 



 References

A list of reference papers that were used to design that toolbox. 



 A few links related to camera calibration

A short list of links related to camera calibration. 

Jean-Yves Bouguet
Last updated October 14th, 2015
Back to main page

from: http://www.vision.caltech.edu/bouguetj/calib_doc/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息