Jump to content

Draft:PuzzleBoard calibration pattern

From Wikipedia, the free encyclopedia

The PuzzleBoard calibration pattern[1] is a modification of the chessboard calibration pattern. Unlike the chessboard pattern, it incorporates unique position encoding and error correction mechanisms to achieve high accuracy even under difficult conditions such as occlusion and off-nadir angles.

An example of a PuzzleBoard pattern with 8x11 chessboard corners.
An example of a PuzzleBoard pattern with 8x11 chessboard corners. Each 3x3 tile pattern is unique.

Key features

[edit]

Position encoding

[edit]

The PuzzleBoard pattern includes position encoding that provides unique positional information for each element within the pattern. This ensures accurate calibration by making it easier to identify and track specific points. The position encoding is based on De Bruijn tori[1][2], i.e. large patterns where each sub-pattern of a certain size is unique.

Error correction

[edit]

Built-in error correction algorithms are a core feature of the PuzzleBoard pattern. These algorithms help to improve the accuracy of the calibration process by correcting any misreadings. The amount of error correction scales with the size of the visible pattern.

Efficiency

[edit]

Despite its advanced features, the PuzzleBoard pattern maintains efficient decoding performance. This is due to the fact that reading the code bits just requires to compare the image brightness at the center point between two neighboring chessboard corners with their average brightness. The efficiency is beneficial for applications requiring high precision without excessive computational resources.

Applications

[edit]

The PuzzleBoard pattern is particularly useful in scenarios where high precision and robustness are critical. Applications include:

  • Industrial vision systems
  • Robotics
  • Augmented reality (AR) applications

Comparison with other patterns

[edit]

Unlike traditional checkerboard patterns, the PuzzleBoard pattern offers superior robustness due to its position encoding and error correction mechanisms while achieving almost the same accuracy. Compared to ArUco[3] and ChArUco[4] boards the pattern allows a higher number of reference points at a given image resolution. This makes it a preferred choice for complex and high-precision tasks.

A disadvantage of the PuzzleBoard pattern is that it is not yet supported in the standard image processing libraries, as it was first introduced in 2024. However, a tool for creating[5] and the source code for decoding[6] PuzzleBoards is available on an open source basis.

References

[edit]
  1. ^ a b P. Stelldinger, et al. "PuzzleBoard: A New Camera Calibration Pattern with Position Encoding." German Conference on Pattern Recognition. (2024). https://users.informatik.haw-hamburg.de/~stelldinger/pub/PuzzleBoard/.
  2. ^ P. Stelldinger. "On de Bruijn Rings and Families of Almost Perfect Maps". (2024) https://arxiv.org/abs/2405.03309
  3. ^ S. Garrido-Jurado et al. "Automatic generation and detection of highly reliable fiducial markers under occlusion." Pattern Recognition, vol. 47(6), pp. 2280-2292. https://dl.acm.org/doi/abs/10.1016/J.PATCOG.2014.01.005. (2014).
  4. ^ OpenCV. https://docs.opencv.org/3.4/df/d4a/tutorial_charuco_detection.html.
  5. ^ "PuzzleBoard: A Checkerboard Target with Lightweight Position Encoding".
  6. ^ "PStelldinger/PuzzleBoard". GitHub.