0x01 打印标定板
我们选用 ChArUco标定板,它结合了 棋盘标定板亚像素准确的角点检测特性和ArUco标记板快速检测和多用途能性,相机内外参标定一块板子解决。
更多相机标定和标定板知识 见 Camera Calibration Pattern Generator – calib.io
我们统一使用 200mm* 280mm 10X14的标定板,方便a4打印
可打印pdf文件 https://cloud.scumaker.org/s/mAZ9qrnYpraimYa
点阵图像 https://cloud.scumaker.org/s/WrAQANNfoZSgPtC
具体打印规格参数和打印文件创建方法如下
创建标定板点阵图像
(opencv 4.7 跟之前ChArUco图案和检测接口有些许不向前兼容的差异?
什么sb操作,暂时使用4.5.5.62版
pip install opencv-contrib-python==4.5.5.62 -i Simple Index
)
https://docs.opencv.org/3.4/d0/d3c/classcv_1_1aruco_1_1CharucoBoard.html
import cv2
aruco_dict = cv2.aruco.Dictionary_get(cv2.aruco.DICT_ARUCO_ORIGINAL)
board = cv2.aruco.CharucoBoard_create(10, 14, 0.02, 0.014, aruco_dict)
img_board = board.draw((2000, 2800))
cv2.imwrite(‘charuco.png’, img_board)
创建标定板pdf文件
python MarkerPrinter.py --charuco --file “./charuco.pdf” --dictionary DICT_ARUCO_ORIGINAL --size_x 10 --size_y 14 --square_length 0.02 --marker_length 0.014 --border_bits 1
打印时记得选择实际大小避免放缩
打印后大概测量一下
总尺寸200mm*280mm
棋盘 10 * 14 边长20mm
内部二维码 边长14mm 居中
有条件的定制一块高精度的标定板 (maker是不是应该安排上)