You are here: Start » Function Reference » Camera Calibration » CalibrateCamera_Telecentric
CalibrateCamera_Telecentric
Finds the telecentric camera intrinsic parameters from the input arrays of image and real-world coordinates. Uses telecentric camera model (affine camera).
Header: | AVL.h |
---|
Syntax
void avl::CalibrateCamera_Telecentric ( const atl::Array<atl::Array<avl::Point3D> >& inObjectPoints, const atl::Array<atl::Array<avl::Point2D> >& inImagePoints, int inImageWidth, int inImageHeight, bool inUseRationalModel, bool inUseTangentialModel, bool inUseThinPrismModel, avl::Matrix& outCameraMatrix, avl::LensDistortion& outDistortion, atl::Optional<float&> outError = atl::NIL )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
inObjectPoints | const Array<Array<Point3D> >& | Array, for each view: array of 3D points of the calibration pattern. | |||
inImagePoints | const Array<Array<Point2D> >& | Array, for each view: array of corresponding 2D points in the picture. | |||
inImageWidth | int | 1 - | Image width, only used to initialize camera matrix, not used when inInitialCameraMatrix present. | ||
inImageHeight | int | 1 - | Image height, only used to initialize camera matrix, not used when inInitialCameraMatrix present. | ||
inUseRationalModel | bool | False | Estimate radial denominator coefficients k4, k5, k6 | ||
inUseTangentialModel | bool | True | Estimate tangential distortion coefficients p1, p2 | ||
inUseThinPrismModel | bool | True | Estimate thin prism distortion coefficients s1, s2, s3, s4 | ||
outCameraMatrix | Matrix& | ||||
outDistortion | LensDistortion& | ||||
outError | Optional<float&> | NIL | Final reprojection RMS error |
Description
The coordinates of 3D object points and their corresponding 2D projections in each view must be specified. That may be achieved by using an object with a known geometry and easily detectable feature points. Such an object is called a calibration rig or calibration pattern. One example is a chessboard (see DetectChessboardGrid).
When camera matrix and distortion coefficients are calculated, one can create undistortion maps using CreateUndistortionMap function. These maps can be applied to images using RemapImage.
Performance of calibration can be measured by outError, which is a RMS of reprojection errors of all calibration points.
Errors
Error type | Description |
---|---|
DomainError | Empty input array |
DomainError | Input array sizes differ |
See Also
- AnnotateGridPoints – Select a subset of the given points that forms a grid and assign world plane coordinates to them.
- CreateUndistortionMap – Computes a spatial transform map for undistorting images from a calibrated camera.
- DetectChessboardGrid – Detects a chessboard on the image, and returns the points where 4 chessboard squares meet.