简体   繁体   中英

OpenCV Radon Checkerboard

Are there any OpenCV camera calibration methods where the target can be larger than the current camera's FoV?

In particular, I use cv2.findChessboardCornersSB with the Radon Checkerboard ( openCV calib pattern ). I thought it uses the three points in center of the board to determining the board's center. So you the center has to be in the image and not all squares. Therefore we have patterns at the edge of the image resulting in a better distortion model at the boundaries.

Please, tell me if I am right, or if that should not work at all, because I get the checkerboard corner if the full calibration target is in the image, but no corner detection the only the three points are in the image.

Edit: I use the function find corners as follows:\

img = cv2.imread(path)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
ret, corners = cv2.findChessboardCornersSB(gray, (3,3), cv2.CALIB_CB_LARGER + cv2.CALIB_CB_MARKER)

Edit2:
Full pattern - works. 在此处输入图像描述

Not full pattern - doesn't work在此处输入图像描述

Thanks

Try adding CALIB_CB_LARGER and CALIB_CB_MARKER to flags when calling findChessboardCornersSB() .

According to the doc , CALIB_CB_MARKER means that the pattern must have a marker, and makes calibration more accurate. CALIB_CB_LARGER means the detected pattern is allowed to be larger than patternSize .

Then, you can set the parameter patternSize to the minimum visible size, like 5x6, even if the true size is 10x10 or larger. The pattern will be detected if the marker and 5x6 corners are visible, while corners exceeding the 5x6 zone will also be detected.

As an alternative solution, you can have a look at ChArUco Boards .


Edit: I tested with your image, flags set to CALIB_CB_MARKER|CALIB_CB_LARGER , patternSize set to 3x3, color inverted , then 78 corners are detected: 在此处输入图像描述 It seems that the color of marker is the problem.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM