Inverser une image à l'aide du module OpenCV en Python
- Inverser des images
-
Inverser les images à l’aide de la méthode
bitwise_not()
en Python -
Inverser les images à l’aide de la méthode
numpy.invert()
en Python
OpenCV ou Open Source Computer Vision Library est une bibliothèque de vision par ordinateur en temps réel utilisée pour le traitement d’images et l’apprentissage automatique. Il est écrit en C/C++ et est disponible pour de nombreux langages de programmation tels que C++, Python et Java. En Python, OpenCV est généralement utilisé avec NumPy, une bibliothèque basée sur Python pour les matrices, les tableaux multidimensionnels et le calcul mathématique.
Les images sont représentées à l’aide de tableaux multidimensionnels NumPy et sont traitées à l’aide d’OpenCV. En utilisant le module OpenCV, on peut effectuer de nombreuses opérations sur des images telles que le retournement, la mise à l’échelle, la rotation, la mise en miroir, le changement de couleurs, l’inversion des couleurs, etc. Dans cet article, nous allons apprendre à inverser des images à l’aide du module OpenCV.
Inverser des images
Les images sont représentées à l’aide de valeurs RVB ou Rouge Vert Bleu. Chacun peut prendre une valeur entière comprise entre 0
et 255
(tous deux inclus). Par exemple, une couleur rouge est représentée en utilisant (255, 0, 0)
, blanc avec (255, 255, 255)
, noir avec (0, 0, 0)
, etc.
Inverser une image signifie inverser les couleurs de l’image. Par exemple, la couleur inversée pour la couleur rouge sera (0, 255, 255)
. Notez que 0
est devenu 255
et 255
est devenu 0
. Cela signifie que l’inversion d’une image soustrait essentiellement les anciennes valeurs RVB de 255
.
New_Value = 255 - Old_Value
Image originale:
Image inversée :
Inverser les images à l’aide de la méthode bitwise_not()
en Python
OpenCV a une méthode bitwise_not()
qui effectue une opération NOT au niveau du bit. Nous pouvons utiliser cette fonction pour inverser une image. Référez-vous au code suivant. Il considère que vous avez une image du nom de image.png
dans votre répertoire de travail.
import cv2
image = cv2.imread("image.png", 0)
inverted_image = cv2.bitwise_not(image)
cv2.imwrite("inverted.jpg", inverted)
cv2.imshow("Original Image", image)
cv2.imshow("Inverted Image", inverted_image)
Ce programme va d’abord charger une image, l’inverser et l’enregistrer dans le répertoire de travail. Après cela, il affichera à la fois les images originales et inversées.
Inverser les images à l’aide de la méthode numpy.invert()
en Python
NumPy a une méthode invert()
, qui effectue une inversion au niveau du bit ou une opération NOT au niveau du bit. Le code suivant montre comment nous pouvons utiliser cette méthode pour effectuer l’inversion.
import cv2
import numpy as np
image = cv2.imread("image.png", 0)
inverted_image = np.invert(image)
cv2.imwrite("inverted.jpg", inverted)
cv2.imshow("Original Image", image)
cv2.imshow("Inverted Image", inverted_image)
Pour en savoir plus sur la méthode
invert()
, référez-vous ici