Inverser une image à l'aide du module OpenCV en Python

Vaibhav Vaibhav 10 octobre 2023
  1. Inverser des images
  2. Inverser les images à l’aide de la méthode bitwise_not() en Python
  3. Inverser les images à l’aide de la méthode numpy.invert() en Python
Inverser une image à l'aide du module OpenCV 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:

inverser l’image en python opencv - original

Image inversée :

inverser l’image en python opencv - original

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

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Article connexe - Python OpenCV