OpenCV
Développé par | Intel et Willow Garage |
---|---|
Première version | |
Dernière version | 4.10.0 ()[1] |
Version avancée | 2.4.12[2] et 3.0.1[3] () |
Dépôt | github.com/opencv/opencv |
Écrit en | C++, Python, Java |
Environnement | Windows, Android[4] Maemo[5], FreeBSD, OpenBSD, iOS[6] Linux et Mac OS |
Type |
Bibliothèque logicielle Bibliothèque C (d) Bibliothèque logicielle Python (d) |
Licence | BSD |
Site web | opencv.org |
OpenCV (pour Open Computer Vision) est une bibliothèque libre, initialement développée par Intel, spécialisée dans le traitement d'images en temps réel. La société de robotique Willow Garage, puis la société ItSeez se sont succédé au support de cette bibliothèque. Depuis 2016 et le rachat de ItSeez par Intel, le support est de nouveau assuré par Intel.
Cette bibliothèque est distribuée sous licence BSD.
NVidia a annoncé en septembre 2010 qu'il développerait des fonctions utilisant CUDA pour OpenCV[7].
Fonctionnalités
[modifier | modifier le code]La bibliothèque OpenCV met à disposition de nombreuses fonctionnalités très diversifiées permettant de créer des programmes en partant des données brutes pour aller jusqu'à la création d'interfaces graphiques basiques.
Traitement d'images
[modifier | modifier le code]Elle propose la plupart des opérations classiques en traitement bas niveau des images [8]:
- lecture, écriture et affichage d’une image ;
- calcul de l'histogramme des niveaux de gris ou d'histogrammes couleurs ;
- lissage, filtrage ;
- seuillage d'image (méthode d'Otsu, seuillage adaptatif)
- segmentation (composantes connexes, GrabCut) ;
- morphologie mathématique.
Traitement vidéos
[modifier | modifier le code]Cette bibliothèque s'est imposée comme un standard dans le domaine de la recherche parce qu'elle propose un nombre important d'outils issus de l'état de l'art en vision des ordinateurs tels que :
- lecture, écriture et affichage d’une vidéo (depuis un fichier ou une caméra)
- détection de droites, de segment et de cercles par Transformée de Hough
- détection de visages par la méthode de Viola et Jones
- cascade de classifieurs boostés
- détection de mouvement, historique du mouvement
- poursuite d'objets par mean-shift ou Camshift
- détection de points d'intérêts
- estimation de flux optique (Méthode de Lucas–Kanade)
- triangulation de Delaunay
- diagramme de Voronoi
- enveloppe convexe
- ajustement d'une ellipse à un ensemble de points par la méthode des moindres carrés
Algorithmes d'apprentissages
[modifier | modifier le code]Certains algorithmes classiques dans le domaine de l'apprentissage artificiel sont aussi disponibles :
- K-means
- AdaBoost et divers algorithmes de boosting
- Réseau de neurones artificiels
- Séparateur à vaste marge
- Estimateur (statistique)
- Les arbres de décision et les forêts aléatoires
Calculs Matriciels
[modifier | modifier le code]Depuis la version 2.1 d'OpenCV l'accent a été mis sur les matrices et les opérations sur celles-ci. En effet, la structure de base est la matrice. Une image peut être considérée comme une matrice de pixels. Ainsi, toutes les opérations de base des matrices sont disponibles, notamment :
- transposée
- calcul du déterminant
- inversion
- multiplication (par une matrice ou un scalaire)
- calcul des valeurs propres
Autres fonctionnalités
[modifier | modifier le code]Elle met également à disposition quelques fonctions d'interfaces graphiques, comme les curseurs à glissière, les contrôles associés aux événements souris, ou bien l'incrustation de texte dans une image.
Notes et références
[modifier | modifier le code]- « OpenCV 4.10.0 Is Now Available! », (consulté le )
- http://code.opencv.org/projects/opencv/versions/26
- http://code.opencv.org/projects/opencv/versions/25
- Android port: http://opencv.willowgarage.com/wiki/AndroidExperimental
- Maemo port: https://garage.maemo.org/projects/opencv
- iPhone port: http://www.eosgarden.com/en/opensource/opencv-ios/overview/
- (en) « EDN - Voice of the Engineer », sur EDN (consulté le ).
- Traitement de l’image et de la vidéo Editions : Ellipses - Technosup (2010)
Liens externes
[modifier | modifier le code]- (en) Site officiel
- (en) « Accueil du projet OpenCV », sur SourceForge.net.