Search code examples
matlabcomputer-visionmatlab-cvstcamera-calibration

Change checkboard size in Matlab Stereo Calibration App


Matlab Stereo Calibration App only ask the square size once, when adding the first image.

Is there a way I can:

  • Change the checkerboard square size?
  • Set different values to X and Y size (rectangles instead of a square)?

I hope that the Matlab Computer Vision System Toolbox is not that limited, since Bouguetj's Matlab Camera Calibration Toolbox allows to set value to X, Y and even different rectangles sizes for the checkerboard rectangles.


Solution

  • The app assumes that checkerboards in all calibration images have the same size (same square size, and the same number of squares). You have to set the square size once, in the beginning of the sessions. If you want to change it, you would have to start a new calibration session, and add the images again.

    Under the hood, the app calls the detectCheckerboardPoints function to detect the checkerboard in an image. It may work with "rectangular squares", but I am not sure. You can certainly try it, and if it works you would need to generate the world coordinates of your points yourself, because generateCheckerboardPoints assumes squares, and not rectangles. Then you can do the calibration programmatically using the estimateCameraParameters function.