Ask Your Question

Revision history [back]

Actually, camera matrix and distortion coefficients don't depend on square size. It makes sense: they are intrinsic parameters of a camera and they don't depend on particular images which you show to the camera. However, poses of the camera do depend on square size. Again it make sense: if a chessboard filled the whole image but square size is very small then it means the camera is very close to the pattern. But if square size is large then it means the camera is farther from the pattern.

You can check it yourself by adding

print tvecs

to the end of the calibrate.py, which will print translational component of the poses.

So, if you want to get just intrinsics (camera matrix and distortion) it doesn't matter which square size you specify (you can use just the default value). If you want to get extrinsics (rvecs and tvecs, that is poses of a camera) then you should specify accurate square size to get valid results.

Actually, camera matrix and distortion coefficients don't depend on square size. It makes sense: they are intrinsic parameters of a camera and they don't depend on particular images which you show to the camera. However, poses of the camera do depend on square size. Again it make makes sense: if a chessboard filled the whole image but square size is very small then it means the camera is very close to the pattern. But if square size is large then it means the camera is farther from the pattern.

You can check it yourself by adding

print tvecs

to the end of the calibrate.py, which will print translational component of the poses.

So, if you want to get just intrinsics (camera matrix and distortion) it doesn't matter which square size you specify (you can use just the default value). If you want to get extrinsics (rvecs and tvecs, that is poses of a camera) then you should specify accurate square size to get valid results.