Åbo universitet

Capstone

Goal

F.I.S.H or Fisheye Image Software Handling is a software approach to calibrating fisheye-cameras. FISH is particularly aimed for use with low-end hardware, where manufacturing processes do not allow for the level of precision required for high quality calibration. By re-calibrating low-end cameras using FISH, data- and quality-intensive applications such as photogrammetry and intercomparable drone footage are made possible at a lower price point.

Implementation

The calibration is calculated in the following way: First, a video of a checkerboard, taken by the camera which is being calibrated, is passed to the calibration program. The program takes few frames from the video and calculates the difference between the input frame (real image) and an image that would have been taken with a mathematically optimal fisheye lens. The program creates a vector field (a filter) based on the difference. The vector field can be applied to all frames of the input video in order to correct errors caused by miscalibration.

We also created a checkerboard for getting a good video for calibration. We took couple of videos from it and used those videos as initial input videos to create the filter. Therefore, our deliverables are the checkerboard for initial calibration and a working Python code of the fisheye camera calibration.

The most relevant packages in this software are NumPy, SciPy, Matplotlib, Scikit-Learn and Open-CV.
Projekt