Circle Grid, print-ready.
calibrx.io · 4×11 asymmetric · 18 mm spacing
Printed it?
Start calibratingFreeCircle grid generator
Circle grid pattern generator
Generate an asymmetric or symmetric circle grid with exact spacing in millimetres, preview it live and download a print-accurate PDF, SVG or PNG. It opens on a 4 × 11 asymmetric grid, the layout of OpenCV’s own sample pattern; the symmetric grid is one setting away.
When to use it
When to use a circle grid
Circle grids replace corners with circle centres. A centre is averaged over many edge pixels, so it stays accurate in slightly soft or noisy images, which is why circle grids are popular in machine-vision and industrial setups.
Like a checkerboard, the whole grid must be visible in each photo. The asymmetric layout is usually preferred: its staggered rows make the orientation unambiguous and pack more points into the same area.
| Setting | Recommended | Why |
|---|---|---|
| Layout | Asymmetric, 4 × 11 (the default) | OpenCV’s standard calibration grid, with an unambiguous orientation. |
| Spacing | 15–25 mm on A4 | Wider spacing reads from farther away. Check the printed spacing with a ruler. |
| Background | Dark circles on white | The detector looks for dark blobs on a light background; avoid glossy paper. |
| Viewing angle | Moderate tilts | Under strong perspective a circle’s image centre drifts from its true centre, so avoid extreme angles. |
Detect it
Detect a circle grid with OpenCV
import cv2
gray = cv2.imread("view.jpg", cv2.IMREAD_GRAYSCALE)
# 4 x 11 asymmetric grid: 4 circles per row, 11 rows
found, centers = cv2.findCirclesGrid(
gray, (4, 11), flags=cv2.CALIB_CB_ASYMMETRIC_GRID
)
print("found" if found else "not found")For a symmetric grid pass its columns and rows with cv2.CALIB_CB_SYMMETRIC_GRID. Or skip the code: upload your photos to CalibrX and it detects the board and calibrates the camera for you.
FAQ
Circle grid — common questions
Asymmetric or symmetric circle grid?
Asymmetric in most cases: the staggered rows fix the grid’s orientation and fit more points on a page. A symmetric grid is simpler to reason about, but it can be read upside down.
Why is findCirclesGrid not detecting my grid?
Check the pattern size first: for an asymmetric grid OpenCV expects (circles per row, rows), for example (4, 11). Then keep the whole grid in frame, avoid glare and make sure the circles are dark on a light background.
Circle grid or checkerboard?
Circle centres tolerate mild blur and noise; checkerboard corners hold up better under strong perspective. For general-purpose calibration with views near the image edges, a ChArUco board is the most forgiving.
More targets
Other calibration boards
ChArUco
ChArUco board generator
Checkerboard corners with ArUco IDs: the most forgiving target for calibrating any lens.
Checkerboard
Checkerboard generator
The classic chessboard target, with exact rows, columns and square size for OpenCV and MATLAB.
ArUco
ArUco marker generator
Single markers or grid boards from the real OpenCV dictionaries, for tracking and pose estimation.
All in one
Calibration pattern generator
Every target in one tool, with a side-by-side comparison of when to use each.
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.