
confidence - confidence rate (default: 0.995).max_num_retries - maximum number of sampling tries in the case of a solver failure (default: 50).max_trial_count - maximum number of iterations (default: 50).min_trial_count - minimum number of iterations (default: 20).
final_complexity - a degree of the polynomial if the final model is polynomial, otherwise ignored (default: 4).
final_model - the selected camera model (default: 'kb'). The parameter descriptions are grouped by which component of BabelCalib they change. The varargin format is 'param_1', value_1, 'param_2', value_2. Parameters values passed in by varargin take precedence. These values can be changed by using the varargin parameter. Default values for the optional parameters are loaded from parse_cfg.m. Residual info corresponding to the minimal solutionĬfg contains the optional configurations. Model corresponding to the minimal solution Re-projection difference vectors: dx = x - x_hatĬonsensus set indicators ( 1 if inlier, 0 otherwise) Root mean square weighted reprojection error (Huber weights)Ĭontains additional information about the residuals, loss and initialization (minimal solution). Here, we let K be the total number of corners in all the images. Parameters of the projection/back-projection functionĬamera calibration matrix (relating to A in the paper: K = inv(A))Ĭamera poses stacked along the array depthĬontains the information about the residuals, loss and initialization (minimal solution). The number of parameters of the back-projection or projection model, denoted C, depends on the chosen camera model and model complexity. The coordinates are specified with respect to the 2D coordinate system attached to each boardĬontains the intrinsics and extrinsics of the regressed camera model. fieldĪbsolute orientation of each pose is encoded in the 3x4 pose matrixĢD coordinates of the fiducials on board b of the target. Also specifies the coordinates of the fiducials on each of the calibration boards. fieldĢD coordinates specifying the detected cornersĬorrespondences, where each column is a correspondence and the first row contains the indices to points and the second row contains indices to calibration board fiducialsĬontains the set of absolute poses for each of the B calibration boards of the target, where (b=1.,B) indexes the calibration boards. Here, we let N be the number of images Kn be the number of detected corners in the n-th image, where (n=1.,N) and B be the number of planar calibration boards. Type Defintions corners : 1xN struct arrayĬontains the set of 2D3D correspondences of the calibration board fiducials to the detected corners in each image. Specifies the height and width of the images all the images are assumed to have the same dimensions Please clone the repository with submodules:įunction = get_poses( intrinsics, corners, boards, imgsize, varargin) The required library Visual Geometry Toolkit is added as a submodule. It is robust to inaccurately localized corners, outlying detections and occluded targets. The method is agnostic to the pattern type on the calibration boards. BabelCalib supports calibration targets made of a collection of calibration boards, i.e., multiple planar targets. The supported camera models are listed under the solvers directory. BabelCalib provides models for pinhole cameras with additive distortion as well as omni-directional cameras and catadioptric rigs.
Calibration is robust and fully automatic. DescriptionīabelCalib is a calibration framework that can estimate camera models for all types of central projection cameras. Detected corners are red crosses, target projected using initial calibration are blue squares and using the final calibration are cyan circles. Projection of calibration target from estimated calibration. (left) BabelCalib pipeline: the camera model proposal step ensures a good initialization (right) example result showing residuals of reprojected corners of test images. This repository contains the MATLAB implementation of the BabelCalib calibration framework.