Calibr

Checkerboard, print-ready.

calibrx.io · 9×6 squares · 8×5 inner corners · 20 mm

Checkerboard generator

Checkerboard pattern generator for camera calibration

Generate a black-and-white checkerboard (chessboard) calibration target with exact rows, columns and square size, preview it live and download a PDF, SVG or PNG that prints at true scale. It works with OpenCV’s findChessboardCorners, with MATLAB’s Camera Calibrator and with CalibrX.

When to use it

When to use a checkerboard

The checkerboard is the classic calibration target: its inner corners refine to sub-pixel accuracy and every calibration tool supports it.

The trade-off is that the whole board has to be visible in every photo. Detection fails if a single row is cut off, so it suits controlled captures where the board stays in frame. For views that reach into the image corners, a ChArUco board is the safer choice.

Recommended Checkerboard settings and why they work.
SettingRecommendedWhy
Squares9 × 6 or 10 × 7One side even, the other odd, makes the board’s orientation unambiguous. MATLAB requires it and OpenCV benefits from it.
Inner cornersSquares minus one on each sideOpenCV and MATLAB count inner corners: a 9 × 6 board has 8 × 5 = 40.
Square size20–30 mm on A4Large enough to detect at your working distance. Measure the printed square and use that value.
White borderKeep the margin around the boardThe quiet white edge helps the detector find the board. Do not trim it off.

Detect it

Detect a checkerboard with OpenCV

python
import cv2

# a 9 x 6 board has 8 x 5 inner corners
pattern = (8, 5)
gray = cv2.imread("view.jpg", cv2.IMREAD_GRAYSCALE)
found, corners = cv2.findChessboardCornersSB(gray, pattern)
print("found" if found else "not found")

findChessboardCornersSB is the more robust detector in OpenCV 4; pass the inner-corner count, not the squares. Or skip the code: upload your photos to CalibrX and it detects the board and calibrates the camera for you.

FAQ

Checkerboard — common questions

What is the difference between squares and inner corners?

Generators count squares; OpenCV and MATLAB count the inner corners where four squares meet. A board with 9 × 6 squares has 8 × 5 inner corners, so you pass (8, 5) to findChessboardCorners.

Why is my checkerboard not detected?

Usually part of the board is outside the frame, the photo is blurred, or glare hides some corners — every inner corner has to be visible. Keep the white border, print on matte paper and try findChessboardCornersSB, which copes better with blur and lighting.

Checkerboard or ChArUco board?

Checkerboard corners are marginally the most precise, but only when the whole board is in view. Views reaching into the image corners matter most for lens distortion, and there a ChArUco board keeps working when a checkerboard would be cut off.

More targets

Other calibration boards

ChArUco

ChArUco board generator

Checkerboard corners with ArUco IDs: the most forgiving target for calibrating any lens.

ArUco

ArUco marker generator

Single markers or grid boards from the real OpenCV dictionaries, for tracking and pose estimation.

Circle grid

Circle grid generator

Asymmetric or symmetric dot patterns whose centres stay accurate in slightly soft images.

These targets follow the pattern geometry used by OpenCV. Read the official OpenCV calibration-pattern guide or continue with the CalibrX online calibration workflow.

Reviewed by the CalibrX engineering team · Updated September 2026.