mfxox / ILCC

Intensity-based_Lidar_Camera_Calibration

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Is it essential that the chessboard Doesn't have white border?

extr15 opened this issue · comments

Hi, thanks for your contribution!
From your paper, I thinks it is essential that the chessboard doesn't have a white border, am I right?
Since from opencv's chessboard detection, it's good to have a white border around the chess grid.
I have also tried your ILCC_sample_perspective_data, but I can not extract image corners by OpenCV, is it right?

commented

Saying the conclusion, it's possible for ILCC to process the chessboard with some white border. Check #3 for example.

The process of 3D corner detection can be broke into two steps: 1. detect the chessboard from the scene point cloud, 2. fit the chessboard model to the detected chessboard point cloud for 3D corner detection.
The white border affects the size of chessboard and further affect step 1. However, the tolerance range in this step is 0.8~1.6 times of the value pattern_side_size*pattern_number. It means that if the width of the white border is less than (1.6-1)*pattern_side_size*pattern_number/2, step 1 should be done well. (Check Line 484-485 in pcd_corners_est.py for details).

Thanks for your detailed reply.
What you said is the affect of detect chessboard, that's fine. I wonder it also affect the cost function. In your paper, Figure 8b, when a real chessboard point falls out of the current optimized chessboard region, there will be a cost. However, when there is a white border around the chessboard, points on the white border will be assumed to be real chessboard points, which introduce error.
Correct me if I am wrong, Thanks!

commented

Your concern is right, the points on the white border would introduce error during the optimization of the chessboard model.

However, if the white border is symmetrically assigned, which means the center of the board coincides with the center of the chessboard, loosely speaking,the optimized pose of the chessboard should not change (just the absolute value of the loss is increased due to the white margin). Furthermore, after the process in Fig.6, the initial pose is supposed to be very near to the optimal pose. So, I think ILCC should also work with white margins, especially if the white boarder area is not that large.

Of course, a strict mathematical proof is necessary to give a detailed boarder of the noise and accuracy. By the way, only checking the points that fall in the chessboard region for loss calculation maybe another approach for the chessboards with white margins. If you are interested, you are appreciated to give a contribution.

Thanks for your reply!