Invertieren eines Bildes mit dem OpenCV-Modul in Python

Vaibhav Vaibhav 10 Oktober 2023
  1. Invertieren von Bildern
  2. Bilder mit der Methode bitwise_not() in Python invertieren
  3. Bilder mit der Methode numpy.invert() in Python invertieren
Invertieren eines Bildes mit dem OpenCV-Modul in Python

OpenCV oder Open Source Computer Vision Library ist eine Echtzeit-Computer Vision-Bibliothek, die für Bildverarbeitung und maschinelles Lernen verwendet wird. Es ist in C/C++ geschrieben und für viele Programmiersprachen wie C++, Python und Java verfügbar. In Python wird OpenCV im Allgemeinen zusammen mit NumPy verwendet, einer Python-basierten Bibliothek für Matrizen, mehrdimensionale Arrays und mathematische Berechnungen.

Bilder werden mit mehrdimensionalen NumPy-Arrays dargestellt und mit OpenCV verarbeitet. Mit dem OpenCV-Modul können Sie viele Operationen an Bildern durchführen, wie zum Beispiel Spiegeln, Skalieren, Drehen, Spiegeln, Farben ändern, Farben invertieren usw. In diesem Artikel erfahren wir, wie Sie Bilder mit dem OpenCV-Modul invertieren.

Invertieren von Bildern

Bilder werden mit RGB- oder Rot-Grün-Blau-Werten dargestellt. Jeder kann einen ganzzahligen Wert zwischen 0 und 255 annehmen (beide enthalten). Zum Beispiel wird eine rote Farbe mit (255, 0, 0) dargestellt, weiss mit (255, 255, 255), schwarz mit (0, 0, 0) usw.

Das Invertieren eines Bildes bedeutet das Umkehren der Farben auf dem Bild. Zum Beispiel ist die invertierte Farbe für rote Farbe (0, 255, 255). Beachten Sie, dass aus 0 255 und aus 255 0 wurde. Das bedeutet, dass das Invertieren eines Bildes im Wesentlichen die alten RGB-Werte von 255 subtrahiert.

New_Value = 255 - Old_Value

Original Bild:

Bild in Python opencv invertieren - Original

Invertiertes Bild:

Bild in Python opencv invertieren - Original

Bilder mit der Methode bitwise_not() in Python invertieren

OpenCV hat eine Methode bitwise_not(), die eine bitweise NOT-Operation ausführt. Wir können diese Funktion verwenden, um ein Bild zu invertieren. Siehe den folgenden Code. Es geht davon aus, dass Sie ein Bild mit dem Namen image.png in Ihrem Arbeitsverzeichnis haben.

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)

Dieses Programm lädt zuerst ein Bild, invertiert es und speichert es im Arbeitsverzeichnis. Danach werden sowohl das Original als auch die invertierten Bilder angezeigt.

Bilder mit der Methode numpy.invert() in Python invertieren

NumPy hat eine Methode invert(), die eine bitweise Inversion oder eine bitweise NOT-Operation durchführt. Der folgende Code zeigt, wie wir diese Methode verwenden können, um die Inversion durchzuführen.

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)

Um mehr über die Methode invert() zu erfahren, lesen Sie hier

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.

Verwandter Artikel - Python OpenCV