SwisTrack includes several calibration components. The purpose of all these components is the same: they convert image positions (expressed in pixels) to real-world positions (usually expressed in meters). What differs is the geometrical model that they use to do this transformation.
All calibration components implemented so far use a list of points to fit such a model. I.e. you provide the component with a list of points of which you know the image position and the real-world position:
(i_x1, i_y1) => (w_x1, w_y1) (i_x2, i_y2) => (w_x2, w_y2) (i_x3, i_y3) => (w_x3, w_y3) ...
The component then finds the model parameters that minimize the error when converting your image points to the corresponding real-world points, and subsequently uses these parameters to map image coordinates to world coordinates.
Hence, all you need to do is to come up with a list of such points. This is fairly simple and can be done in several ways:
- Semi-Automatic Calibration: This is the simplest approach and consists of placing markers at known position in your arena. On the image, you manually click on each marker.
- Automatic Calibration with a Known Pattern: This is similar to the semi-automatic calibration, except that the markers are found automatically.
- Automatic Calibration in a Sequential Fashion: Use this method if you have the possibility to move a marker to specific (precisely known) places in the arena.
For each of the methods, we provide you with a detailed description and the necessary scripts.