Initial commit with project files
This commit is contained in:
51
0_Einführung/ü3/README.md
Normal file
51
0_Einführung/ü3/README.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# OpenCV in Python
|
||||
Die beliebte Bildverarbeitungs-Software OpenCV existiert auch in Python. In dieser Übung sollen Sie einige Befehle
|
||||
erlernen, um grundlegende Funktionen mit OpenCV zu schreiben.
|
||||
|
||||
Um OpenCV zu nutzen, müssen Sie zuerst das Paker *cv2* installieren. Wenn Sie dieses Repository installiert haben,
|
||||
ist das bereits geschehen. Es wird für die folgenden Schritte davon ausgegangen, das *cv2* bereits installiert ist.
|
||||
Importieren Sie zu Beginn Ihres Skriptes das OpenCV Paket mit dem Befehl
|
||||
|
||||
````python
|
||||
import cv2
|
||||
````
|
||||
|
||||
Nun können Sie alle Funktionen von OpenCV mit dem vorangestellten Kürzel ``cv2.EIN_BEFEHL()`` nutzen.
|
||||
|
||||
## Bild laden
|
||||
Bilder werden als MxN Matrizen (Grau- und Binärbilder) oder als MxNx3 Arrays (RGB-Farbbilder)
|
||||
gespeichert und interpretiert. Um ein Bild einzulesen, wird die Funktion ``cv2.imread(PFAD_ZUM_BID)`` aufgerufen
|
||||
und der Dateiname als Parameter in den Klammern übergeben.
|
||||
````python
|
||||
I = cv2.imread('myimage.bmp') # Farbbild einlesen
|
||||
````
|
||||
Mit dem Befehl ``Ì.shape`` kann die Größe einer Matrix bestimmt werden.
|
||||
````python
|
||||
m, n, k = I.shape # Größe ansehen
|
||||
````
|
||||
Bei einer Bildmatrix: Der erste Index ist der Zeilenindex (Bildkoordinaten: y-Achse), der zweite
|
||||
Index ist der Spaltenindex (Bildkoordinaten: x-Achse), wobei der Punkt (0,0) dem linken oberen
|
||||
Bildpunkt entspricht. Der dritte Index ist der Farbkanal.
|
||||
|
||||
## Bild anzeigen
|
||||
Zum Anzeigen eines Bildes steht die Funktion ``cv2.imshow()`` zur Verfügung. Der Name des Fensters und die Bildvariable wird als
|
||||
Parameter übergeben. Ein neues Fenster öffnet sich und zeigt das Bild an.
|
||||
|
||||
````python
|
||||
cv2.imshow("Fenstername", I) #Bild anzeigen
|
||||
cv2.waitKey(0) # Auf Tastendruck warten
|
||||
````
|
||||
Der Befehl ``cv2.waitKey(TIME)`` wird benötigt, damit das Programm auf eine Aktion des Benutzers wartet. Wenn der Parameter
|
||||
dabei 0 ist, wartet das Programm unendlich lange auf den nächsten Tastendruck des Nutzers.
|
||||
|
||||
## Bild speichern
|
||||
Zum Abspeichern der Bilddaten steht die Funktion ``cv2.imwrite(SPEICHER_PFAD, BILD)`` zur Verfügung. Die Bildvariable wird
|
||||
als zweite Parameter und der Dateiname in Hochkommata als erster Parameter übergeben.
|
||||
````python
|
||||
cv2.imwrite('newimage.bmp', I) # Bilddaten abpeichern
|
||||
````
|
||||
Wenn die Verzeichnisstruktur nicht angegeben wird, speichert Python die Datei im aktuellen
|
||||
Arbeitsverzeichnis.
|
||||
|
||||
# Aufgabe a)
|
||||
Implementieren und testen Sie alle Funktion in einem neuen Skript [a.py](a.py)!
|
||||
Reference in New Issue
Block a user