![]() |
Classes | |
struct | mrpt::vision::TImageCalibData |
Data associated to each image in the calibration process mrpt::vision::checkerBoardCameraCalibration (All the information can be left empty and will be filled up in the calibration method). More... | |
struct | mrpt::vision::TImageStereoCalibData |
Data associated to each stereo image in the calibration process mrpt::vision::checkerBoardCameraCalibration (All the information can be left empty and will be filled up in the calibration method). More... | |
struct | mrpt::vision::TImageStereoCallbackData |
Params of the optional callback provided by the user. More... | |
struct | mrpt::vision::TStereoCalibParams |
Input parameters for mrpt::vision::checkerBoardStereoCalibration. More... | |
struct | mrpt::vision::TStereoCalibResults |
Output results for mrpt::vision::checkerBoardStereoCalibration. More... | |
Typedefs | |
typedef std::map< std::string, TImageCalibData > | mrpt::vision::TCalibrationImageList |
A list of images, used in checkerBoardCameraCalibration. More... | |
typedef void(* | mrpt::vision::TSteroCalibCallbackFunctor) (const TImageStereoCallbackData &d, void *user_data) |
Prototype of optional user callback function. More... | |
typedef std::vector< TImageStereoCalibData > | mrpt::vision::TCalibrationStereoImageList |
A list of images, used in checkerBoardStereoCalibration. More... | |
Functions | |
bool VISION_IMPEXP | mrpt::vision::checkerBoardCameraCalibration (TCalibrationImageList &images, unsigned int check_size_x, unsigned int check_size_y, double check_squares_length_X_meters, double check_squares_length_Y_meters, mrpt::utils::TCamera &out_camera_params, bool normalize_image=true, double *out_MSE=NULL, bool skipDrawDetectedImgs=false, bool useScaramuzzaAlternativeDetector=false) |
Performs a camera calibration (computation of projection and distortion parameters) from a sequence of captured images of a checkerboard. More... | |
bool VISION_IMPEXP | mrpt::vision::checkerBoardCameraCalibration (TCalibrationImageList &images, unsigned int check_size_x, unsigned int check_size_y, double check_squares_length_X_meters, double check_squares_length_Y_meters, mrpt::math::CMatrixDouble33 &intrinsicParams, std::vector< double > &distortionParams, bool normalize_image=true, double *out_MSE=NULL, bool skipDrawDetectedImgs=false, bool useScaramuzzaAlternativeDetector=false) |
Performs a camera calibration (computation of projection and distortion parameters) from a sequence of captured images of a checkerboard. More... | |
bool VISION_IMPEXP | mrpt::vision::findChessboardCorners (const mrpt::utils::CImage &img, std::vector< mrpt::utils::TPixelCoordf > &cornerCoords, unsigned int check_size_x, unsigned int check_size_y, bool normalize_image=true, bool useScaramuzzaMethod=false) |
Look for the corners of a chessboard in the image using one of two different methods. More... | |
void VISION_IMPEXP | mrpt::vision::findMultipleChessboardsCorners (const mrpt::utils::CImage &img, std::vector< std::vector< mrpt::utils::TPixelCoordf > > &cornerCoords, unsigned int check_size_x, unsigned int check_size_y) |
Look for the corners of one or more chessboard/checkerboards in the image. More... | |
bool VISION_IMPEXP | mrpt::vision::checkerBoardStereoCalibration (TCalibrationStereoImageList &images, const TStereoCalibParams ¶ms, TStereoCalibResults &out_results) |
Optimize the calibration parameters of a stereo camera or a RGB+D (Kinect) camera. More... | |
typedef std::map<std::string,TImageCalibData> mrpt::vision::TCalibrationImageList |
A list of images, used in checkerBoardCameraCalibration.
Definition at line 46 of file chessboard_camera_calib.h.
typedef std::vector<TImageStereoCalibData> mrpt::vision::TCalibrationStereoImageList |
A list of images, used in checkerBoardStereoCalibration.
Definition at line 104 of file chessboard_stereo_camera_calib.h.
typedef void(* mrpt::vision::TSteroCalibCallbackFunctor) (const TImageStereoCallbackData &d, void *user_data) |
Prototype of optional user callback function.
Definition at line 47 of file chessboard_stereo_camera_calib.h.
bool VISION_IMPEXP mrpt::vision::checkerBoardCameraCalibration | ( | TCalibrationImageList & | images, |
unsigned int | check_size_x, | ||
unsigned int | check_size_y, | ||
double | check_squares_length_X_meters, | ||
double | check_squares_length_Y_meters, | ||
mrpt::utils::TCamera & | out_camera_params, | ||
bool | normalize_image = true , |
||
double * | out_MSE = NULL , |
||
bool | skipDrawDetectedImgs = false , |
||
bool | useScaramuzzaAlternativeDetector = false |
||
) |
Performs a camera calibration (computation of projection and distortion parameters) from a sequence of captured images of a checkerboard.
input_images | [IN/OUT] At input, this list must have one entry for each image to process. At output the original, detected checkboard and rectified images can be found here. See TImageCalibData. |
check_size_x | [IN] The number of squares in the checkerboard in the X direction. |
check_size_y | [IN] The number of squares in the checkerboard in the Y direction. |
check_squares_length_X_meters | [IN] The size of each square in the checkerboard, in meters, in the X axis. |
check_squares_length_Y_meters | [IN] This will typically be equal to check_squares_length_X_meters. |
intrinsicParams | [OUT] The 3x3 intrinsic parameters matrix. See http://www.mrpt.org/Camera_Parameters |
distortionParams | [OUT] The 1x4 vector of distortion parameters: k1 k2 p1 p2. See http://www.mrpt.org/Camera_Parameters |
normalize_image | [IN] Select OpenCV flag |
out_MSE | [OUT] If set to !=NULL, the mean square error of the reprojection will be stored here (in pixel units). |
skipDrawDetectedImgs | [IN] Whether to skip the generation of the undistorted and detected images in each TImageCalibData |
useScaramuzzaAlternativeDetector | [IN] Whether to use an alternative detector. See CImage::findChessboardCorners for more deatails and references. |
bool VISION_IMPEXP mrpt::vision::checkerBoardCameraCalibration | ( | TCalibrationImageList & | images, |
unsigned int | check_size_x, | ||
unsigned int | check_size_y, | ||
double | check_squares_length_X_meters, | ||
double | check_squares_length_Y_meters, | ||
mrpt::math::CMatrixDouble33 & | intrinsicParams, | ||
std::vector< double > & | distortionParams, | ||
bool | normalize_image = true , |
||
double * | out_MSE = NULL , |
||
bool | skipDrawDetectedImgs = false , |
||
bool | useScaramuzzaAlternativeDetector = false |
||
) |
Performs a camera calibration (computation of projection and distortion parameters) from a sequence of captured images of a checkerboard.
input_images | [IN/OUT] At input, this list must have one entry for each image to process. At output the original, detected checkboard and rectified images can be found here. See TImageCalibData. |
check_size_x | [IN] The number of squares in the checkerboard in the X direction. |
check_size_y | [IN] The number of squares in the checkerboard in the Y direction. |
check_squares_length_X_meters | [IN] The size of each square in the checkerboard, in meters, in the X axis. |
check_squares_length_Y_meters | [IN] This will typically be equal to check_squares_length_X_meters. |
intrinsicParams | [OUT] The 3x3 intrinsic parameters matrix. See http://www.mrpt.org/Camera_Parameters |
distortionParams | [OUT] The 1x4 vector of distortion parameters: k1 k2 p1 p2. See http://www.mrpt.org/Camera_Parameters |
normalize_image | [IN] Select OpenCV flag |
out_MSE | [OUT] If set to !=NULL, the mean square error of the reprojection will be stored here (in pixel units). |
skipDrawDetectedImgs | [IN] Whether to skip the generation of the undistorted and detected images in each TImageCalibData |
useScaramuzzaAlternativeDetector | [IN] Whether to use an alternative detector. See CImage::findChessboardCorners for more deatails and references. |
bool VISION_IMPEXP mrpt::vision::checkerBoardStereoCalibration | ( | TCalibrationStereoImageList & | images, |
const TStereoCalibParams & | params, | ||
TStereoCalibResults & | out_results | ||
) |
Optimize the calibration parameters of a stereo camera or a RGB+D (Kinect) camera.
This computes the projection and distortion parameters of each camera, and their relative spatial pose, from a sequence of pairs of captured images of a checkerboard. A custom implementation of an optimizer (Levenberg-Marquartd) seeks for the set of selected parameters to estimate that minimize the reprojection errors.
input_images | [IN/OUT] At input, this list must have one entry for each image to process. At output the original, detected checkboard and rectified images can be found here. See TImageCalibData. |
params | [IN] Mandatory: the user must provide the size of the checkerboard, which parameters to optimize and which to leave fixed to zero, etc. |
out_results | [OUT] The results of the calibration, and its uncertainty measure, will be found here upon return. |
bool VISION_IMPEXP mrpt::vision::findChessboardCorners | ( | const mrpt::utils::CImage & | img, |
std::vector< mrpt::utils::TPixelCoordf > & | cornerCoords, | ||
unsigned int | check_size_x, | ||
unsigned int | check_size_y, | ||
bool | normalize_image = true , |
||
bool | useScaramuzzaMethod = false |
||
) |
Look for the corners of a chessboard in the image using one of two different methods.
The search algorithm will be OpenCV's function cvFindChessboardCorners or its improved version published by M. Rufli, D. Scaramuzza, and R. Siegwart. See: http://robotics.ethz.ch/~scaramuzza/Davide_Scaramuzza_files/Research/OcamCalib_Tutorial.htm and the papers:
After detecting the corners with either method, it's called "cvFindCornerSubPix" to achieve subpixel accuracy.
cornerCoords | [OUT] The pixel coordinates of all the corners. |
check_size_x | [IN] The number of squares, in the X direction |
check_size_y | [IN] The number of squares, in the Y direction |
normalize_image | [IN] Whether to normalize the image before detection |
useScaramuzzaMethod | [IN] Whether to use the alternative, more robust method by M. Rufli, D. Scaramuzza, and R. Siegwart. |
void VISION_IMPEXP mrpt::vision::findMultipleChessboardsCorners | ( | const mrpt::utils::CImage & | img, |
std::vector< std::vector< mrpt::utils::TPixelCoordf > > & | cornerCoords, | ||
unsigned int | check_size_x, | ||
unsigned int | check_size_y | ||
) |
Look for the corners of one or more chessboard/checkerboards in the image.
This method uses an improved version of OpenCV's cvFindChessboardCorners published by M. Rufli, D. Scaramuzza, and R. Siegwart. See: http://robotics.ethz.ch/~scaramuzza/Davide_Scaramuzza_files/Research/OcamCalib_Tutorial.htm and the papers:
That method has been extended in this MRPT implementation to automatically detect a number of different checkerboards in the same image.
cornerCoords | [OUT] A vector of N vectors of pixel coordinates, for each of the N chessboards detected. |
check_size_x | [IN] The number of squares, in the X direction |
check_size_y | [IN] The number of squares, in the Y direction |
Page generated by Doxygen 1.8.11 for MRPT 1.3.2 SVN: at Mon May 9 06:50:38 UTC 2016 |