The MRT Camera Calibration Toolbox is an application, developed in Python using OpenCV and tkinter, which determines the parameters of a camera's perspective projection by performing an intrinsic and extrinsic geometric calibration.
The application provides intrinsics, extrinsics and lens distortion parameters for each camera (two for stereo mode). For the stereo mode, the transformations between the individual camera coordinate systems are given as well. The information for each camera pose can be loaded using images or text files with the 2D points of the pattern. The calibration can be also made by using random subgroups from the total set of images. The computed parameters are the averaged over all iterations, and both the final results and the results per calibration can be exported to text files.
- Calibration of multispectral stereo camera systems
- Calibration of camera systems with different resolutions
- Visualization of the reprojection error
- Image Cover Visibility
- Statistical validation by means of calibration with subsets
- Import and export of data
- It's free!
To use the toolbox, the modules listed below have to be installed on your computer.
- Python3 (Tested for Python 3.4, Python 3.6 Python 3.7, Python 3.11)
- OpenCV 4.7.0
- tkinter 8.6
- PIL 6.1.0
- numpy 1.22.0
- matplotlib 3.1.1
You can download the source code and execute the toolbox main.py directly on your computer through the Linux or Windows terminal:
cd path/to/your/toolbox
python3 main.py
Check this animation of a running example of the MRT Camera Calibration Toolbox.
Further information on the use of the Toolbox and the underlying calculations can be found in this pdf.
Contributions are very welcome. Open a fresh issue to start a discussion around a feature idea or a bug.
For quaternions.py code based on: Christoph Hagen. "averaging quaternions". Available here: https://github.com/christophhagen/averaging-quaternions
Toolbar icons obtain from: https://www.iconfinder.com
Please cite the following paper when using our toolbox it in your research project:
@INPROCEEDINGS{Schramm2021,
author = {Schramm, Sebastian and Rangel, Johannes and Aguirre Salazar, Daniela and Schmoll, Robert and Kroll, Andreas},
title = {Multispectral Geometric Calibration of Cameras in Visual and Infrared Spectral Range},
journal = {IEEE Sensors},
year = {2021},
volume = {21},
number = {2},
pages = {2159-2168},
doi = {10.1109/JSEN.2020.3019959},
url = {https://ieeexplore.ieee.org/document/9178752},
}
If you have any questions, please email Daniela Aguirre Salazar at [email protected] or Robert Schmoll at [email protected].