OCamCalib: Omnidirectional Camera Calibration Toolbox for Matlab

Author: Davide Scaramuzza  For catadioptric and fisheye cameras up to 195 degrees.

The OcamCalib Toolbox for Matlab allows the user (also inexpert users) to calibrate any central omnidirectional camera, that is, any panoramic camera having a single effective viewpoint (see section 17). The Toolbox implements the procedure initially described in the paper [1] and later extended in [2] and [3]. A detailed introduction to this model is in section 19 of this Tutorial. Furthermore, you can also see a demo of how the toolbox works here.

The Toolbox permits the user to easily and quickly calibrate the omnidirectional camera through two steps. First, it requires the user collect a few pictures of a checkerboard shown at different positions and orientations. Then, the user is asked to extract the corner points. With the new version of the toolbox this operation is done completely automatically. Therefore, no manual extraction is needed. After these two steps, the calibration is completely automatically performed.

After the calibration, the toolbox provides two functions (CAM2WORLD and WORLD2CAM) which express the relation between a given pixel point and its projection onto the unit sphere (this is a 3D vector emanating from the single effective view point) (see section 17). This relation clearly depends on the mirror shape and on the intrinsic parameters of the camera. The novel aspects of the OCamCalib Toolbox with respect to other toolboxes are the following:

  • The toolbox is the only one with Automatic Corner Extraction (no manual extraction is required).
  • The toolbox does not require a priori knowledge about the mirror shape.
  • It does not require calibrating the perspective camera  separately: the system camera-mirror is treated as a unique compact system that encapsulates both the intrinsic parameters of the camera and the parameters of the mirror.
  • The detection of the image center is performed automatically. It does not require the visibility of the circular external boundary of the mirror. Unlike other toolboxess, which require the visibility of the external boundary of the mirror to determine the image center, the OCamCalib Toolbox automatically identifies the center without any user interaction!

The calibration performed by the OCamCalib Toolbox is based on the following hypotheses:

  • The camera-mirror system possesses a single effective viewpoint (see section 18 for a definition), or also a “quasi” single viewpoint. In fact, the Toolbox is able to provide an optimal solution even when the “single view point property” is not perfectly verified (for instance when the camera optical center is not exactly in the focus of the hyperbola or also for spherical mirrors). The Toolbox showed to give very good calibration results even in the latter case (reprojection error < 0.5 pixels!).

Read more info on the site OCamCalib: Omnidirectional Camera Calibration Toolbox for Matlab  by Prof. Dr. Davide Scaramuzza