Cargando…
CameraTransform: A Python package for perspective corrections and image mapping
Camera images and video recordings are simple and non-invasive tools to investigate animals in their natural habitat. Quantitative evaluations, however, often require an exact reconstruction of object positions, sizes, and distances in the image. Here, we provide an open source software package to p...
Autores principales: | , , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
2019
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7453838/ https://www.ncbi.nlm.nih.gov/pubmed/32864407 http://dx.doi.org/10.1016/j.softx.2019.100333 |
_version_ | 1783575427849125888 |
---|---|
author | Gerum, Richard C. Richter, Sebastian Winterl, Alexander Mark, Christoph Fabry, Ben Bohec, Céline Le Zitterbart, Daniel P. |
author_facet | Gerum, Richard C. Richter, Sebastian Winterl, Alexander Mark, Christoph Fabry, Ben Bohec, Céline Le Zitterbart, Daniel P. |
author_sort | Gerum, Richard C. |
collection | PubMed |
description | Camera images and video recordings are simple and non-invasive tools to investigate animals in their natural habitat. Quantitative evaluations, however, often require an exact reconstruction of object positions, sizes, and distances in the image. Here, we provide an open source software package to perform such calculations. Our approach allows the user to correct for perspective distortion, transform images to “bird’s-eye" view projections, or transform image-coordinates to real-world coordinates and vice versa. The extrinsic camera parameters that are necessary to perform such image corrections and transformations (elevation, tilt/roll angle, and heading of the camera) are obtained from the image using contextual information such as a visible horizon, GPS coordinates of landmarks, known object sizes, or images of the same object obtained from different viewing angles. All mathematical operations are implemented in the Python package CameraTransform. The performance of the implementation is evaluated using computer-generated synthetic images with known camera parameters. Moreover, we test our algorithm on images of emperor penguin colonies, and demonstrate that the camera tilt and roll angles can be estimated with an error of less than one degree, and the camera elevation with an error of less than 5%. The CameraTransform software package simplifies camera matrix-based image transformations and the extraction of quantitative image information. An extensive documentation and usage examples in an ecological context are provided at http://cameratransform.readthedocs.io. |
format | Online Article Text |
id | pubmed-7453838 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2019 |
record_format | MEDLINE/PubMed |
spelling | pubmed-74538382020-08-28 CameraTransform: A Python package for perspective corrections and image mapping Gerum, Richard C. Richter, Sebastian Winterl, Alexander Mark, Christoph Fabry, Ben Bohec, Céline Le Zitterbart, Daniel P. SoftwareX Article Camera images and video recordings are simple and non-invasive tools to investigate animals in their natural habitat. Quantitative evaluations, however, often require an exact reconstruction of object positions, sizes, and distances in the image. Here, we provide an open source software package to perform such calculations. Our approach allows the user to correct for perspective distortion, transform images to “bird’s-eye" view projections, or transform image-coordinates to real-world coordinates and vice versa. The extrinsic camera parameters that are necessary to perform such image corrections and transformations (elevation, tilt/roll angle, and heading of the camera) are obtained from the image using contextual information such as a visible horizon, GPS coordinates of landmarks, known object sizes, or images of the same object obtained from different viewing angles. All mathematical operations are implemented in the Python package CameraTransform. The performance of the implementation is evaluated using computer-generated synthetic images with known camera parameters. Moreover, we test our algorithm on images of emperor penguin colonies, and demonstrate that the camera tilt and roll angles can be estimated with an error of less than one degree, and the camera elevation with an error of less than 5%. The CameraTransform software package simplifies camera matrix-based image transformations and the extraction of quantitative image information. An extensive documentation and usage examples in an ecological context are provided at http://cameratransform.readthedocs.io. 2019-10-03 2019 /pmc/articles/PMC7453838/ /pubmed/32864407 http://dx.doi.org/10.1016/j.softx.2019.100333 Text en This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/4.0/). |
spellingShingle | Article Gerum, Richard C. Richter, Sebastian Winterl, Alexander Mark, Christoph Fabry, Ben Bohec, Céline Le Zitterbart, Daniel P. CameraTransform: A Python package for perspective corrections and image mapping |
title | CameraTransform: A Python package for perspective corrections and image mapping |
title_full | CameraTransform: A Python package for perspective corrections and image mapping |
title_fullStr | CameraTransform: A Python package for perspective corrections and image mapping |
title_full_unstemmed | CameraTransform: A Python package for perspective corrections and image mapping |
title_short | CameraTransform: A Python package for perspective corrections and image mapping |
title_sort | cameratransform: a python package for perspective corrections and image mapping |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7453838/ https://www.ncbi.nlm.nih.gov/pubmed/32864407 http://dx.doi.org/10.1016/j.softx.2019.100333 |
work_keys_str_mv | AT gerumrichardc cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT richtersebastian cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT winterlalexander cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT markchristoph cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT fabryben cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT boheccelinele cameratransformapythonpackageforperspectivecorrectionsandimagemapping AT zitterbartdanielp cameratransformapythonpackageforperspectivecorrectionsandimagemapping |