Grundlegende Transformationen
Einlesen und Anzeigen eines Bildes
Bevor Transformationen durchgeführt werden, zunächst ein Bild mit OpenCV laden und anzeigen. Das Foto wurde bereits importiert. Auf Ihrem lokalen Computer verwenden Sie zum einfachen Einlesen und Anzeigen des Fotos:
Größenänderung eines Bildes
Größenänderung dient dazu, Bilder unter Beibehaltung des Seitenverhältnisses zu vergrößern oder zu verkleinern (Verhältnis-Parameter fx
und fy
),
wobei fx
und fy
den Skalierungsfaktor für Breite und Höhe definieren.
Es können auch exakte Pixelabmessungen angegeben werden (Parameter dsize
),
wobei dsize
die Ausgabedimensionen (new_y, new_x)
festlegt.
Drehen eines Bildes
Um ein Bild um einen bestimmten Winkel zu drehen, verwenden wir cv2.getRotationMatrix2D()
und cv2.warpAffine()
.
cv2.getRotationMatrix2D(center, angle, scale)
definiert die Rotationsmatrix;cv2.warpAffine(image, matrix, output_size)
wendet die Transformation an.
Zuschneiden eines Bildes
Das Zuschneiden extrahiert einen bestimmten Bereich aus einem Bild. Dies erfolgt mit NumPy-Slicing.
Die Syntax image[start_y:end_y, start_x:end_x]
wählt einen interessierenden Bereich aus.
Swipe to start coding
Gegeben ist ein image
:
- Bild auf die Größe
(100, 100)
skalieren und in der Variableresized
speichern; height
undwidth
aus dem Bild extrahieren;center
vonheight
undwidth
berechnen;- Rotationsmatrix erstellen und in der Variable
rotation_matrix
speichern; - Bild um 90 Grad im Uhrzeigersinn drehen und in der Variable
rotated
speichern; - Den Bereich X: 250-600 und Y: 100-450 aus dem Bild ausschneiden und in der Variable
cropped
speichern.
Lösung
Danke für Ihr Feedback!