Checkerboard corner crosshairs not at corners

Issue #221 wontfix
Aaron Olsen created an issue

I’m performing a checkerboard light camera calibration with three views, using XMALab 1.5.5 on MacOS Mojave 10.14.6. When I click on the top left internal corner of the checkerboard in the left camera view on the first frame, XMALab adds numbers and crosshairs (as if the corners have been detected) but many of the crosshairs (not all) are not actually at the corners (see attached file and screenshot). I don’t know whether the corners have not been properly detected or whether the crosshairs are not being properly projected. But when I proceed with detecting corners for at least 15 frames per camera and run the optimization for 50,000 iterations XMALab takes approx. 12 hours to finish the optimization and fails to calibrate properly (reprojection errors of ~16 pixels, which is 2x higher than the error when I only run the optimization for 1000 iterations).

The crosshairs bug happens with several frames but I’ve uploaded an XMA file with just three frames to reduce the file size, since the error occurs in the first frame. The bug only occurs with the left camera view, not the middle and right. In some instances (once a calibration has been calculated I think) the crosshairs and numbers are projected way off of where the corners are and at odd angles, which makes it seem like XMALab is projecting where the corners should be based on the current calibration rather than where the actual detected corners are. But it’s possible that fixing this bug will fix that problem so I’d rather start with just this easily reproducible bug. I can create a separate issue for that if you think that it’s unrelated.

Comments (3)

  1. Benjamin Knorlein

    Hi Aaron,

    The checkerboard detection algorithm comes directly from OpenCV and sometimes, especially if it is seen from the side, it does not work. As a workaround you can disable the automatic detection in the settings dialog and use the 4 corners of the checkerboard to set the initial corners. After that you can use the ALT key to move the corners to the right position.

    Ben

  2. Benjamin Knorlein

    I am closing this issue as it is related to OpenCVs checkerboard detection and there is little i can do.

  3. Log in to comment