Einstieg in die Arbeit mit Bildern

OpenCVOpenCVAdvanced
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Dieses Tutorial vermittelt Ihnen die Grundlagen der Arbeit mit Bildern mithilfe der OpenCV-Python-Bibliothek. Am Ende dieses Tutorials können Sie Bilder lesen, anzeigen und speichern.

Dies ist ein Guided Lab, das schrittweise Anweisungen bietet, um Ihnen beim Lernen und Üben zu helfen. Befolgen Sie die Anweisungen sorgfältig, um jeden Schritt abzuschließen und praktische Erfahrungen zu sammeln. Historische Daten zeigen, dass dies ein Labor der Stufe Experte mit einer Abschlussquote von 45% ist. Es hat eine positive Bewertungsrate von 95% von den Lernenden erhalten.

Importieren der erforderlichen Bibliotheken

Zunächst importieren wir die erforderlichen Bibliotheken. Sie werden die cv2-Bibliothek für die Bildverarbeitung verwenden. Verwenden Sie import, um sie zu importieren.

Vorbereitung

Öffnen Sie die Python-Shell, indem Sie den folgenden Befehl im Terminal auf dem VM-Desktop eingeben.

python3

Details

Geben Sie python3 ein, um den Python-Interpreter zu starten. Geben Sie dann den folgenden Code ein.

import cv2

Danach können Sie die cv2-Bibliothek in Ihrem Code verwenden.

Einlesen eines Bildes

Um ein Bild aus einer Datei zu lesen, verwenden wir die Funktion cv2.imread(). Die Funktion nimmt den Dateipfad als Argument und gibt das Bild als NumPy-Array zurück.

Der Bildpfad lautet /home/labex/Desktop/Image.jpg

Details

Geben Sie python ein, um den Python-Interpreter zu starten. Geben Sie dann den folgenden Code ein.

## Read the image
image = cv2.imread('/home/labex/Desktop/Image.jpg')

## Check if the image is loaded correctly
if image is None:
    print('Error: Image not found.')
else:
    print('Image loaded successfully.')

Hinweis

Die Funktion cv2.imread() gibt None zurück, wenn das Bild nicht gefunden wird. In diesem Fall geben wir eine Fehlermeldung aus. Andernfalls geben wir eine Erfolgsmeldung aus.

Anzeigen des Bildes

Um das Bild anzuzeigen, verwenden wir die Funktion cv2.imshow(). Die Funktion nimmt zwei Argumente entgegen: den Fenstername und das anzuzeigende Bild.

Außerdem verwenden wir die Funktion cv2.waitKey(), um auf eine Tastatureingabe zu warten. Dies ist erforderlich, um das Fenster geöffnet zu halten, bis der Benutzer eine Taste drückt. Die Funktion cv2.waitKey() nimmt ein einzelnes Argument entgegen, nämlich die Anzahl der Millisekunden, die auf eine Tastatureingabe gewartet werden soll. Wenn der Benutzer innerhalb der angegebenen Zeit eine Taste drückt, gibt die Funktion den Tastencode zurück. Andernfalls gibt sie -1 zurück. In diesem Fall übergeben wir 0, um unbegrenzt auf eine Tastatureingabe zu warten.
Schließlich verwenden wir die Funktion cv2.destroyAllWindows(), um alle Fenster zu schließen. Dies ist optional, aber es ist eine gute Praxis, alle Fenster zu schließen, bevor das Python-Interpreter -Programm beendet wird.

Details

Geben Sie python ein, um den Python-Interpreter zu starten. Geben Sie dann den folgenden Code ein.

window_name = 'Image'
## Display the image, image has been loaded in the previous steps
cv2.imshow(window_name, image)

## Wait for a key press and close the window
cv2.waitKey(0)

## destroy the window after you showing the image
cv2.destroyAllWindows()

HINWEIS

  1. Sie können den window_name in Ihrem Code ändern und das Ergebnis betrachten.
  2. Sie können den Parameter von waitKey in Ihrem Code ändern und das Ergebnis betrachten.
  3. Der Einfachheit halber haben wir in diesem Schritt die Prüfung auf die korrekte Bildladung entfernt.
  4. Beachten Sie, dass Sie einen Python-Interpreter verwenden, daher endet das Programm nicht unmittelbar nach imshow. Wenn Sie jedoch eine Python-Datei ausführen, müssen Sie waitKey verwenden, um sicherzustellen, dass das Fenster nach imshow nicht schließt.

Speichern eines Bildes in einer Datei

Um ein Bild in einem anderen Format zu speichern, verwenden wir die Funktion cv2.imwrite(). Die Funktion nimmt zwei Argumente entgegen: den Dateipfad und das zu speichernde Bild.

Details

Geben Sie python ein, um den Python-Interpreter zu starten. Geben Sie dann den folgenden Code ein.

## Save the image in a different format, image has been loaded in the previous steps
cv2.imwrite('/home/labex/Desktop/Image.png', image)

Hinweis

  1. In diesem Fall speichern wir das Bild im PNG-Format (Image.png). Das Bild wird im gleichen Verzeichnis (/home/labex/Desktop/) wie das Python-Skript gespeichert.
  2. Der Einfachheit halber haben wir in diesem Schritt die Prüfung auf die korrekte Bildladung entfernt.

Zusammenfassung

Jetzt kennen Sie die Grundlagen der Arbeit mit Bildern mithilfe der OpenCV-Python-Bibliothek. Sie können mit verschiedenen Bildformaten experimentieren und fortgeschrittenere Operationen wie Größenänderung, Zuschneiden und Filtern erkunden. Viel Spaß beim Programmieren!