Kornia is a differentiable computer vision library for PyTorch.
It consists of a set of routines and differentiable modules to solve
generic computer vision problems. At its core, the package uses PyTorch
as its main backend both for efficiency and to take advantage of the
reverse-mode auto-differentiation to define and compute the gradient of
complex functions.
Overview
Inspired by OpenCV, this library is composed by a subset of
packages containing operators that can be inserted within neural
networks to train models to perform image transformations, epipolar
geometry, depth estimation, and low-level image processing such as
filtering and edge detection that operate directly on tensors.
At a granular level, Kornia is a library that consists of the following components:
Run our Jupyter notebooks examples to learn to use the library.
Cite
If you are using kornia in your research-related documents, it is recommended that you cite the paper.
@inproceedings{eriba2019kornia,
author = {E. Riba, D. Mishkin, D. Ponsa, E. Rublee and G. Bradski}
title = {Kornia: an Open Source Differentiable Computer Vision Library for PyTorch},
booktitle = {Winter Conference on Applications of Computer Vision},
year = {2019},
url = {https://arxiv.org/pdf/1910.02190.pdf}
}
@misc{Arraiy2018,
author = {E. Riba, M. Fathollahi, W. Chaney, E. Rublee and G. Bradski}
title = {torchgeometry: when PyTorch meets geometry},
booktitle = {PyTorch Developer Conference},
year = {2018},
url = {https://drive.google.com/file/d/1xiao1Xj9WzjJ08YY_nYwsthE-wxfyfhG/view?usp=sharing}
}
Contributing
We appreciate all contributions. If you are planning to contribute
back bug-fixes, please do so without any further discussion. If you plan
to contribute new features, utility functions or extensions, please
first open an issue and discuss the feature with us. Please, consider
reading the CONTRIBUTING notes. The participation in this open source project is subject to Code of Conduct.