Back to FabImage Library website
You are here: Start » Function Reference » Computer Vision » Camera Calibration » CalibrateWorldPlane_Multigrid_Deprecated

CalibrateWorldPlane_Multigrid_Deprecated
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | Calibration |
Finds the image to world plane transformation matrix using multiple grids.
Applications: Image to world coordinates transformations.
Syntax
void fil::CalibrateWorldPlane_Multigrid_Deprecated ( const ftl::Array<ftl::Array<fil::Point2D> >& inGridImagePoints, const ftl::Array<ftl::Array<fil::Point2D> >& inGridIds, const ftl::Array<ftl::Array<fil::Point2D> >& inLabeledWorldPoints, const ftl::Array<ftl::Array<fil::Point2D> >& inLabeledGridIds, const ftl::Optional<const fil::AnyCameraModel&>& inCameraModel, const ftl::Optional<float>& inGridSpacing, bool inInvertedWorldY, fil::RectificationTransform& outTransform, ftl::Optional< ftl::Array<ftl::Array<fil::Point2D> >& > outGridWorldPoints = ftl::NIL, ftl::Optional< ftl::Conditional<float>& > outComputedGridSpacing = ftl::NIL, ftl::Optional< float& > outRmsImageError = ftl::NIL, ftl::Optional< float& > outRmsWorldError = ftl::NIL, ftl::Optional< ftl::Array<float>& > outMaxReprojectionErrors = ftl::NIL, ftl::Optional< ftl::Array<ftl::Array<fil::Segment2D> >& > outReprojectionErrorSegments = ftl::NIL, ftl::Optional< ftl::Array<float>& > outGridRotations = ftl::NIL, ftl::Optional< ftl::Array<fil::Vector2D>& > outGridTranslations = ftl::NIL )
Parameters
Name | Type | Default | Description | |
---|---|---|---|---|
![]() |
inGridImagePoints | const Array<Array<Point2D> >& | For each grid: Array of 2D points of the calibration pattern, in the picture. | |
![]() |
inGridIds | const Array<Array<Point2D> >& | For each grid: Array of 2D indices of the calibration pattern, corresponding to the inGridImagePoints. | |
![]() |
inLabeledWorldPoints | const Array<Array<Point2D> >& | For each grid: Sparse array of world coordinate points. | |
![]() |
inLabeledGridIds | const Array<Array<Point2D> >& | For each grid: Array of 2D indices of the calibration pattern, corresponding to the inLabeledWorldPoints. | |
![]() |
inCameraModel | const Optional<const AnyCameraModel&>& | NIL | For undistortion of inGridImagePoints. If not supplied, the filter will assume undistorted inGridImagePoints. |
![]() |
inGridSpacing | const Optional<float>& | NIL | World distance between grid indices. Used when spacing cannot be computed from supplied inLabeledWorldPoints. |
![]() |
inInvertedWorldY | bool | False | Set to true if the world coordinate system has inverted y axis. |
![]() |
outTransform | RectificationTransform& | ||
![]() |
outGridWorldPoints | Optional< Array<Array<Point2D> >& > | NIL | For each grid: Array of 2D points of the calibration pattern, in the world coordinate plane. |
![]() |
outComputedGridSpacing | Optional< Conditional<float>& > | NIL | World distance between grid indices. NIL when there is no enough information to compute the spacing. |
![]() |
outRmsImageError | Optional< float& > | NIL | RMS reprojection error of inGridIds onto the image plane, in pixels. This is a partial error characterizing inaccuracies in perspective estimation, excluding the influence of world point labeling. |
![]() |
outRmsWorldError | Optional< float& > | NIL | RMS reprojection error of inLabeledGridIds onto the world plane, in world units. This is a partial error characterizing inaccuracies with labeling of world coordinate system, excluding perspective estimation. |
![]() |
outMaxReprojectionErrors | Optional< Array<float>& > | NIL | For each grid: Maximum reprojection error of inGridIds onto the image plane, in pixels. This is a partial error characterizing inaccuracies in perspective estimation, excluding the influence of world point labeling. |
![]() |
outReprojectionErrorSegments | Optional< Array<Array<Segment2D> >& > | NIL | For each grid: Array of segments connecting inGridImagePoints to reprojected inGridIds. Note that these segments depict only inaccuracies in perspective estimation, excluding inaccuracies due to the world point labeling. |
![]() |
outGridRotations | Optional< Array<float>& > | NIL | Grids' rotations on the world plane. |
![]() |
outGridTranslations | Optional< Array<Vector2D>& > | NIL | Grids' positions on the world plane. |
Optional Outputs
The computation of following outputs can be switched off by passing value ftl::NIL
to these parameters: outGridWorldPoints, outComputedGridSpacing, outRmsImageError, outRmsWorldError, outMaxReprojectionErrors, outReprojectionErrorSegments, outGridRotations, outGridTranslations.
Read more about Optional Outputs.
Errors
List of possible exceptions:
Error type | Description |
---|---|
DomainError | Array inGridImagePoints and inGridIds sizes differ |
DomainError | Array inGridImagePoints and inLabeledGridIds sizes differ |
DomainError | Array inGridImagePoints and inLabeledWorldPoints sizes differ |
DomainError | size at index 0 |
DomainError | size at index 0 |