OpenCVでArUcoのCharucoBoardを作る

ARタグとチェスボードを組み合わせたCharucoBoardを作ってみます。
A4用紙に350dpiでちょうど入るようにします。

コード全体


import cv2
import subprocess

aruco = cv2.aruco
dictionary = aruco.getPredefinedDictionary(aruco.DICT_6X6_250)

squares_x = 5
squares_y = 7
square_length = 0.04
marker_length = 0.02
charucoBoard = aruco.CharucoBoard_create(squares_x, squares_y, square_length, marker_length, dictionary)

image_x = round(5 * 40 / 25.4 * 350)
image_y = round(7 * 40 / 25.4 * 350)
image = charucoBoard.draw((image_x, image_y))
cv2.imwrite("charuco_board.png", image)
# dpiを350dpiに変更
subprocess.run(['convert', '-density', '350', '-units', 'pixelsperinch', 'charuco_board.png', 'charuco_board.png'])

完成

出来上がった画像をPhotoShopなどでA4に印刷すれば完成です。

CharucoBoard
ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。