Start with physical coordinates

A planar circle grid supplies known object points. Detected image features and their corresponding physical coordinates are used to estimate camera intrinsics, distortion and board poses. The projection model must suit the optics: perspective, fisheye and telecentric systems are not interchangeable.

A camera model maps physical geometry to pixels. Recovering lengths from image points also requires a measurement plane, depth or other geometric constraint. Uniformly changing object-coordinate units rescales translations; mixing millimetres and metres later introduces a scale error.

Rectangular and staggered coordinate conventions

For a rectangular grid with C columns and R rows, use (i Px, j Py, 0), where i = 0…C − 1 and j = 0…R − 1. The centre span is (C − 1)Px by (R − 1)Py; the dot diameter and blank border are additional dimensions.

A staggered drawing is not sufficient to establish the software coordinate model. Verify the row-offset sequence, origin, handedness and ordering against the detector output, including rotated views.

OpenCV: point count, flags and detector

findCirclesGrid uses patternSize = (points per row, points per column), meaning (columns, rows). A 5-column, 4-row grid therefore uses (5, 4) and contains 20 points. This order is the same as the internal-corner column/row convention for chessboards.

  • Use CALIB_CB_SYMMETRIC_GRID or CALIB_CB_ASYMMETRIC_GRID to match the actual geometry. Object points must follow the returned centre order.
  • Tune blob area, polarity and shape filters for the actual image scale. Strongly tilted circles can fail an overly strict circularity or inertia filter.
  • CALIB_CB_CLUSTERING can help with perspective deformation but can be sensitive to background clutter. Retain the clear border required by the detector.

HALCON: use the matching plate description

HALCON supports different calibration plate definitions. Match the actual description file, generation method and software version, including coordinates, units, border and orientation features. A 7 × 7 pattern or a familiar frame alone does not establish compatibility.

Use the coordinate frame defined by the selected plate description. Do not silently replace its origin with a corner or mirror the plate definition when viewing the film through the glass.

Size dots for the camera image

For an approximately front-facing board at magnification M and sensor pixel pitch s, the imaged diameter is approximately |M|D/s pixels. The clear gap along a row is approximately |M|(P − D)/s. D, P and s must use consistent units.

Reducing pitch increases point density but does not enlarge undersampled dots. Increasing diameter can improve sampling while reducing separation and changing perspective bias. Select both dimensions together with magnification, blur and lighting.

Separate three meanings of centre

A segmented blob centroid, the centre of a fitted ellipse and the projection of the physical circle centre are different quantities. Under ideal perspective projection, the last two generally do not coincide for a tilted circle. Lens distortion can also make the boundary depart from a true ellipse.

Undistorting an image removes the modelled lens distortion; it does not by itself remove perspective centre eccentricity. Geometry-aware estimation or rectification must use an appropriate camera and plane model. Check whether the chosen method explicitly handles this effect rather than assuming a subpixel detector does.

Thresholding, glare and asymmetric blur can move a blob centroid even at a fixed pose. Compare repeated images, lighting changes and different tilts; distinguish random scatter from systematic displacement before choosing the error budget.

Preserve point identity across views

A symmetric array can be used in stereo or pose estimation when a reliable method resolves correspondence. Supported origin features, board geometry or known orientation can provide the required identities. Staggered grids may help, but some layouts retain symmetries; inspect the actual coordinate ordering.

Overlay point numbers on both camera images. A visually plausible grid with reversed identities can give an incorrect relative pose. For hand-eye calibration, the board coordinate frame must also remain consistent with the recorded robot poses.

Diagnose detection before changing the plate

Acquire varied positions and tilts while keeping focus, zoom and image mode stable. Inspect every accepted detection before camera fitting. There is no universal dot pixel diameter, tilt limit or image count that guarantees calibration quality.

Circle-grid troubleshooting
ObservationWhat to inspect
No complete gridPoint counts and flags; blob polarity and size filters; border visibility and background clutter.
Missing or merged dotsSampling, focus, projected gaps, saturation and reflection; review segmented blobs rather than only the final point overlay.
Failure only when tiltedEllipse minor-axis sampling, depth of field, shape filters and perspective centre bias.
Stereo or pose flipsConsistent physical point identities, origin marks, coordinate order and film-side orientation.
Low residual, inaccurate lengthsCoordinate units and scale, board deformation, working plane, model suitability and independent measurements.

Validate the measurement, not only the fit

Inspect per-view residuals and their spatial pattern, then validate using images excluded from the intrinsic fit. Where possible, measure independent known lengths at the intended working distance and plane. A low reprojection RMS cannot reveal every systematic error shared by the board and fitted model.

Record the board coordinate revision, units, physical inspection results, camera settings and detector configuration alongside calibration results. Evaluate flatness in the working mount and dimensional change with temperature. Recheck after optical or mechanical changes that affect the measurement.

Explore the related product ranges

Dot Array Calibration TargetsCheckerboard Calibration Targets

Related technical guides

Inspection and Acceptance of Patterned GlassDot Array or Checkerboard: Choosing a Camera Calibration TargetPattern Polarity, Film Side and Viewing DirectionCheckerboard Camera Calibration: Corners, Capture and Validation