All Supported Targets
SUMMARY
A target describes the physical calibration board. Define it once and pass it to any Axon calibrator, target-specific detection is handled internally.
The Skill
python
from telekinesis.axon.targets import ChessboardTarget, CharucoTarget, ArucoTargetAt a Glance

Target
ChessboardTarget
Simplest option. Requires the whole inner-corner grid to stay in view.
View target →
Target
CharucoTarget
Default choice for eye-in-hand and multi-camera calibration.
View target →
Target
ArucoTarget
Grid of independent markers, no shared chessboard backing.
View target →| Target | Key Parameters |
|---|---|
| ChessboardTarget | size, square_size |
| CharucoTarget | squares_x, squares_y, square_length, marker_length, aruco_dict_id |
| ArucoTarget | board_size, marker_length, marker_separation, aruco_dict_id |
ArUco Dictionaries
aruco_dict_id on CharucoTarget and ArucoTarget accepts either a dictionary name or its raw OpenCV enum value. Names follow DICT_<grid>_<count>, where grid is the marker's bit resolution and count is how many unique ids the dictionary holds.
It selects the marker dictionary the detector matches against. The target's markers and the detector must use the same dictionary, or detection fails.
The Skill
python
from telekinesis.axon.targets import ARUCO_DICT_ID_MAP
print(list(ARUCO_DICT_ID_MAP))| Marker grid | Available dictionaries |
|---|---|
4X4 | DICT_4X4_50 · DICT_4X4_100 · DICT_4X4_250 · DICT_4X4_1000 |
5X5 | DICT_5X5_50 · DICT_5X5_100 · DICT_5X5_250 · DICT_5X5_1000 |
6X6 | DICT_6X6_50 · DICT_6X6_100 · DICT_6X6_250 · DICT_6X6_1000 |
Best Practices
| Do this | Why |
|---|---|
| Fill a good fraction of the frame, with margin on every side | Too small starves the solver; edge-to-edge clips out of view on tilt |
Prefer CharucoTarget for eye-in-hand and multi-camera work | Per-corner ids recover a pose from a partial view; a chessboard needs every corner |
| Mount rigidly and flat | A bowed print reads as distortion the solver can't separate from the lens |
| Size squares to working distance, not printing convenience | Too small loses corner precision; too large wastes usable frame area |
| Match dictionary size to marker count | Oversized is safe but larger bit-grids detect worse at distance or under blur |
