Back to Adaptive Vision Library website

You are here: Start » Function Reference » Camera Calibration » DetectChessboardGrid

DetectChessboardGrid


Detects a chessboard on the image, and returns the points where 4 chessboard squares meet.

Syntax

C++
C#
 
void avl::DetectChessboardGrid
(
	const avl::Image& inImage,
	int inChessboardWidth,
	int inChessboardHeight,
	const avl::Point3D& inGridOrigin,
	float inSquareDimension,
	bool inAdaptiveThresholding,
	bool inImageNormalization,
	bool inAdditionalFiltering,
	bool inPresenceCheck,
	bool inSubpixelRefinement,
	atl::Conditional<atl::Array<avl::Point2D> >& outImageGridPoints,
	atl::Conditional<atl::Array<avl::Point3D> >& outWorldGridPoints
)

Parameters

Name Type Range Default Description
inImage const Image& Input image
inChessboardWidth int 4 - Number of ranks (columns) of the chessboard
inChessboardHeight int 4 - Number of files (rows) of the chessboard
inGridOrigin const Point3D& Real-world coordinates of top-left grid point
inSquareDimension float 0.0 - 1.0f Real-world length of a single chessboard square (mm)
inAdaptiveThresholding bool Use adaptive thresholding instead of a global threshold of average
inImageNormalization bool Normalize input image using histogram equalization prior to detection
inAdditionalFiltering bool Use more criteria for eliminating false chessboards
inPresenceCheck bool Perform a fast approximate test of chessboard presence before locating it
inSubpixelRefinement bool If corners are found, post-process them to improve precision
outImageGridPoints Conditional<Array<Point2D> >&
outWorldGridPoints Conditional<Array<Point3D> >& Corresponding 3D (World) points, generated from grid origin and square dimension

Examples

DetectChessboardGrid executed with inChessboardWidth = 10, inChessboardHeight = 7.

Errors

Error type Description
DomainError Empty inImage in DetectChessboardGrid.
DomainError Error in DetectChessboardGrid:Error message
DomainError Error in DetectChessboardGrid: Error message