Bemerkung
Hallo, willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Community auf Facebook! Tauchen Sie mit anderen Enthusiasten tiefer in Raspberry Pi, Arduino und ESP32 ein.
Warum beitreten?
Expertenunterstützung: Lösen Sie Probleme nach dem Kauf und technische Herausforderungen mit Hilfe unserer Community und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Tutorials aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und Sneak Peeks.
Sonderrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Bereit, mit uns zu entdecken und zu gestalten? Klicken Sie auf [here] und treten Sie noch heute bei!
1. Bild anzeigen
In diesem Kapitel betrachten wir ein einfaches Beispiel, mit dem Sie schnell die grundlegende Verwendung von OpenCV kennenlernen: Ein Bild lesen und anzeigen.
Im Beispielprojektordner haben wir bereits ein Beispielbild mit dem Namen my_photo.jpg vorbereitet.
Sie können auch das Beispiel 3.1 Fotomodul verwenden, um ein Foto aufzunehmen und im aktuellen Ordner zu speichern.
1. Projektübersicht
In diesem Abschnitt führen wir folgende Aufgaben aus:
Verwenden von
cv2.imread, um ein lokales Bild zu ladenVerwenden von
cv2.imshow, um das Bild anzuzeigenVerwenden von
cv2.waitKey, um das Verhalten des Fensters zu steuernVerwenden von
cv2.destroyAllWindows, um das Fenster zu schließen
Nachdem dieser Code erfolgreich ausgeführt wurde, erscheint ein Bildfenster auf Ihrem Bildschirm.
2. Code ausführen
Wichtig
Stellen Sie vor dem Start sicher, dass:
das Pan-Tilt-Modul montiert ist
Sie Zugriff auf den Raspberry-Pi-Desktop haben
das Codepaket installiert ist
das Fusion HAT+ installiert und konfiguriert ist
OpenCV installiert ist
Detaillierte Anweisungen finden Sie unter 0. OpenCV einrichten.
Öffnen Sie das Terminal und geben Sie den folgenden Befehl ein:
cd ~/ai-lab-kit/opencv_python python3 cv_1_imgshow.py
Nach dem Ausführen des Skripts öffnet OpenCV ein Fenster mit dem Titel
Pictureund zeigt das ausmy_photo.jpggeladene Bild an.Das Fenster bleibt geöffnet, bis der Benutzer das Programm beendet.
Um das Programm zu beenden, können Sie:
q auf der Tastatur drücken
das Fenster über die Schaltfläche zum Schließen schließen
Sobald das Fenster geschlossen wird, werden alle OpenCV-Ressourcen freigegeben und das Programm beendet.
3. Vollständiger Code
# Python code to read and display an image using OpenCV
import cv2
from pathlib import Path
# Get the directory of the current Python file
BASE_DIR = Path(__file__).resolve().parent
# Read image from disk
# cv2.imread loads the image as a NumPy array
img = cv2.imread(str(BASE_DIR / "my_photo.jpg"), cv2.IMREAD_COLOR)
# Create a GUI window to display the image
# First parameter: window title
# Second parameter: image array
cv2.imshow("Picture", img)
# Keep the window open until the user closes it or presses 'q'
# cv2.waitKey only listens for keyboard events, not the close button
# Therefore, we use a loop to detect both window close and key press
while True:
# Check if the window has been closed
if cv2.getWindowProperty("Picture", cv2.WND_PROP_VISIBLE) < 1:
break
# Wait for 1 ms and check for key press
# Press 'q' to exit the program
if cv2.waitKey(1) & 0xFF == ord("q"):
break
# Destroy all OpenCV windows and release memory
cv2.destroyAllWindows()
4. Code-Erklärung
cv2.imread("my_photo.jpg", cv2.IMREAD_COLOR)Liest das Bild mit dem Namen
my_photo.jpgein und lädt es im Farbmodus.cv2.imshow("Picture", img)Erstellt ein Fenster mit dem Titel „Picture“ und zeigt das Bild an.
cv2.waitKey(0)Wenn der Parameter
0ist, wartet das Programm unbegrenzt, bis Sie das Fenster schließen oder eine beliebige Taste drücken.cv2.getWindowProperty()Ruft einen Eigenschaftswert des angegebenen Fensters ab (zum Beispiel, ob das Fenster noch sichtbar ist).
cv2.destroyAllWindows()Schließt alle OpenCV-Fenster und gibt die Ressourcen frei.
5. Weitere Übungen
Versuchen Sie, den Fenstertitel in
imshowauf „My First OpenCV Window“ zu ändern.Ersetzen Sie das Bild durch ein anderes und beobachten Sie das Ergebnis.
Ändern Sie den
waitKey-Parameter auf3000, sodass das Programm das Fenster nach 3 Sekunden automatisch schließt.