OpenCV

OpenCV (Open Source Computer Vision Libraryhttp://opencv.org) est un ensemble de méthodes open-source pour la vision par ordinateur. Cette bibliothèque est portée sur un grand nombre de langages de programmation : C/C++, Python…

Une bibliothèque pour le traitement d’images

La bibliothèque OpenCV pour Python permet l’analyse et la traitement des images en temps réel.

Cet ensemble de tutoriels a pour objectif de découvrir les fonctionnalités de base permettant d’ouvrir une image  et de réaliser des algorithmes de base de traitement d’images (érosion, dilatation, seuillage, ouverture, fermeture…).

Des tutoriels officiels sont également disponibles : https://docs.opencv.org/4.x/d6/d00/tutorial_py_root.html

Installation sous Python

OpenCV peut être installé sur Python (à partir de la version 3) par l’une des commandes suivantes (dépendant de votre distribution) :

pip install opencv-python
conda install opencv

Premiers pas

Afin de pouvoir utiliser la bibliothèque OpenCV dans vos scripts sous Python, il est indispensable de l’importer dans votre programme :

import cv2

Charger une image

Pour pouvoir ouvrir une image, il faut utiliser la fonction imread() de la bibliothèque OpenCV. Cette fonction prend au moins deux paramètres par défaut : le chemin du fichier à ouvrir (avec l’extension) et le mode d’ouverture : échelle de gris (0) ou couleur (1) :

img = cv2.imread('my_image.jpg', 0)

Sauvegarder une image

Il est également possible de sauvegarder une nouvelle image (après un traitement par exemple) par l’intermédiaire de la fonction imwrite(). Cette fonction prend au moins deux paramètres par défaut : le chemin du fichier à sauvegarder (avec l’extension) et la matrice contenant l’image :

cv2.imwrite('my_new_image_png.png', img)

Afficher les propriétés d’une image

Il est possible d’accéder à certaines propriétés d’une image : sa hauteur, sa largeur…

Pour afficher la hauteur, la largeur et la quantité de canaux utilisés par l’image, on peut utiliser la commande suivante :

print(img.shape)

qui donne le résultat suivant :

(415, 612, 3)

415 correspond à la hauteur en nombre de pixels, 612 à la largeur et 3 au nombre de canaux (ici rouge, vert et bleu) de l’image ouverte précédemment.

Python / OpenCV