Python

Bildverarbeitung in Python mit Pillow

Bildverarbeitung in Python mit Pillow

Bilder werden in vielen Anwendungen für verschiedene Zwecke benötigt. Einer der wesentlichen Bestandteile von Webanwendungen ist das Bild. In Python gibt es viele Bibliotheken für Bildverarbeitungsaufgaben wie PIL, Pillow, OpenCV usw. PIL ist eine beliebte Bildverarbeitungsbibliothek, aber Python 3 nicht. Pillow ist für Python 3 implementiert, um eine ähnliche PIL-Aufgabe zu erledigen und wird als Fork von PIL bezeichnet. Pillow unterstützt mehrere Bildformate und verschiedene Arten von Bildverarbeitungsaufgaben wie Größenänderung, Drehen, Zuschneiden, Hinzufügen von Bildtext usw., kann einfach mit dieser Bibliothek durchgeführt werden. Die Kissenbibliothek kann installiert und für verschiedene Bildverarbeitungsaufgaben verwendet werden, die in diesem Tutorial gezeigt werden.

Installieren des Bildverarbeitungsmoduls

Das Bildverarbeitungsmodul wird benötigt, wenn Sie den Würfelrollsimulator mit GUI erstellen möchten. Führen Sie die folgenden Befehle vom Terminal aus, um das Pip zu aktualisieren und das Pillow-Modul zu installieren.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --upgrade Kissen

Beispiel-1: Ein Bild anzeigen

Wie ein Bild mit Python-Skript angezeigt werden kann, hat das folgende Skript gezeigt. Das Bildmodul wurde importiert, um die öffnen() Funktion zum Öffnen der Bilddatei. Als nächstes die Show() Die Funktion wird aufgerufen, indem ein Bildobjekt verwendet wird, um das Bild anzuzeigen.

# Bildmodul von PIL importieren
aus PIL-Import Bild
# Öffnen Sie die Bilddatei
img = Bild.öffnen('vogel1.png')
# Bild anzeigen
img.Show()

Ausgabe

Das Bild wird in einem Dialogfeld angezeigt, wenn die Bilddatei am aktuellen Speicherort vorhanden ist.

Beispiel-2: Zeigen Sie das Bild mit verschiedenen Attributen an

Das folgende Skript zeigt das Bild in einem Dialogfeld an und druckt verschiedene Arten von Bildattributen. das os Modul wurde importiert mit dem Bild Modul in diesem Skript, um zu prüfen, ob die Bilddatei vorhanden ist. Wenn die Datei vorhanden ist, wird die Bilddatei geöffnet und in der Dialogbox angezeigt. Als nächstes werden die Bildgröße und das Bildformat mit dem . gedruckt Größe und Format Eigenschaften des Bildobjekts.

# Bildmodul von PIL importieren
aus PIL-Import Bild
# OS-Modul importieren
Importieren von OS
# Legen Sie den Dateinamen des Bildes fest
imageName = 'bird2.png'
wenn os.Pfad.existiert(imageName) :
# Öffnen Sie die Bilddatei
img = Bild.öffnen('vogel2.png')
# Bild anzeigen
img.Show()
# Drucken Sie die Breite und Höhe des Bildes in Pixel
print('Die Größe des Bildes ist: '.format(img.Größe))
# Drucken Sie das Format der Bilddatei.
print('Das Bildformat ist: '.format(img.Format))
sonst:
# Fehlermeldung drucken
print('Bilddatei existiert nicht.')

Ausgabe

Das Bild wird in einem Dialogfeld angezeigt, wenn die Bilddatei am aktuellen Speicherort vorhanden ist. Die folgende Ausgabe zeigt die Größe und das Format des Bildes. Die Breite des Bildes beträgt 286 Pixel und die Höhe des Bildes beträgt 176 Pixel. Das Bildformat ist JPEG.

Beispiel-3: Erstellen Sie ein neues Bild, indem Sie die Größe und das Format des Bildes ändern

Das folgende Skript zeigt das Originalbild an und ein neues Bild wird erstellt, indem die Größe und das Format des Originalbilds geändert werden. Das Skript des vorherigen Beispiels hat verwendet, um das Bild in einem Dialog anzuzeigen Box. Größe ändern () -Methode wird mit den neuen Breiten- und Höhenwerten verwendet, um die Größe des neuen Bild. speichern() -Methode wird mit dem Namen des neuen Images verwendet, um das neue Image zu erstellen. Die Größe des Original- und des neuen Bildes wird später gedruckt.

# Bildmodul von PIL importieren
aus PIL-Import Bild
# OS-Modul importieren
Importieren von OS
# Legen Sie den Dateinamen des Bildes fest
imageName = 'bird2.png'
# Öffnen Sie eine PNG-Datei
wenn os.Pfad.existiert(imageName):
# Öffnen Sie die Bilddatei
img = Bild.öffnen('vogel2.png')
# Bild anzeigen
img.Show()
# Drucken Sie die Breite und Höhe des Originalbildes in Pixel
print('Die Größe des Originalbildes ist: '.format(img.Größe))
# Bildgröße ändern
resized_img = img.Größe ändern ((400, 300))
# Speichern Sie das verkleinerte Bild unter einem neuen Namen
resized_img.speichern('newImg.jpg')
# Drucken Sie die Breite und Höhe des neuen Bildes in Pixel
print('Die Größe des neuen Bildes ist: '.format(resized_img.Größe))
sonst:
# Fehlermeldung drucken
print('Bilddatei existiert nicht.')

Ausgabe

Das Bild wird in einem Dialogfeld angezeigt, wenn die Bilddatei am aktuellen Speicherort vorhanden ist. Die folgende Ausgabe zeigt die Größe des ursprünglichen und des neuen Bildes. Die Breite des Originalbildes beträgt 278 Pixel und die Höhe des Originalbildes beträgt 182 Pixel. Die Breite des neuen Bildes beträgt 400 Pixel und die Höhe des neuen Bildes beträgt 300 Pixel.

Beispiel-4: Erstellen Sie ein zugeschnittenes Bild eines Bildes

Das folgende Skript zeigt das zugeschnittene Bild eines vorhandenen Bildes an. Ernte() Methode wird verwendet, um das Bild basierend auf den gegebenen Box-Werten zu beschneiden. Als nächstes die speichern() Methode wird verwendet, um das neue zugeschnittene Bild zu erstellen. Das neue Bild wird in einer Dialogbox wie in den vorherigen Beispielen angezeigt.

# Bildmodul von PIL importieren
aus PIL-Import Bild
# OS-Modul importieren
Importieren von OS
# Legen Sie den Dateinamen des Bildes fest
imageName = 'bird2.png'
# Öffnen Sie die PNG-Datei
wenn os.Pfad.existiert(imageName):
# Öffnen Sie die Bilddatei
img = Bild.öffnen('vogel2.png')
# Bild zuschneiden
cropped_img = img.Ernte((100, 150, 300, 450))
# Speichern Sie das zugeschnittene Bild in einer anderen Datei
cropped_img.speichern('cropped_img.jpg')
# Öffnen Sie das zugeschnittene Bild
img2 = Bild.open('cropped_img.jpg')
# Zeigen Sie das zugeschnittene Bild an
img2.Show()
# Drucken Sie die Breite und Höhe des zugeschnittenen Bildes in Pixel
print('Die Größe des zugeschnittenen Bildes ist: '.format(img2.Größe))
sonst:
# Fehlermeldung drucken
print('Bilddatei existiert nicht.')

Ausgabe

Das folgende zugeschnittene Bild wird in einem Dialogfeld angezeigt, wenn die Originalbilddatei am aktuellen Speicherort vorhanden ist.

Beispiel-5: Erstellen Sie eine Miniaturansicht einer Datei

Das folgende Skript erstellt eine Miniaturansicht eines Bildes. Die Methode thumbnail() wurde im Skript verwendet, um die Miniaturansicht eines Bildes zu erstellen. Das erstellte Miniaturbild wird später in einer Dialogbox angezeigt.

# Bildmodul von PIL importieren
aus PIL-Import Bild
# Öffnen Sie die Bilddatei
img = Bild.öffnen('vogel1.png')
# Stellen Sie die Thumbnail-Werte ein
img.Miniaturansicht((200, 200))
# Speichern Sie das Miniaturbild in einer Bilddatei
img.Thumbnail speichern.png')
# Öffnen Sie die Thumbnail-Datei
thumbnail_img = Bild.öffnen('Miniaturansicht.png')
# Zeigen Sie das Miniaturbild an
thumbnail_img.Show()

Ausgabe

Das folgende Miniaturbild wird in einem Dialogfeld angezeigt, wenn die Originalbilddatei am aktuellen Speicherort vorhanden ist.

Fazit

Das Bildmodul enthält viele Funktionen, um verschiedene Arten von bildbezogenen Operationen durchzuführen. Die Verwendung einiger meistgenutzter Funktionen wurde in diesem Tutorial anhand mehrerer Beispiele erklärt.

So zeigen Sie den FPS-Zähler in Linux-Spielen an
Linux-Gaming bekam einen großen Schub, als Valve 2012 die Linux-Unterstützung für den Steam-Client und seine Spiele ankündigte. Seitdem haben viele AA...
Herunterladen und Spielen von Sid Meier's Civilization VI unter Linux and
Einführung in das Spiel Civilization 6 ist eine moderne Version des klassischen Konzepts, das in der Reihe der Age of Empires-Spiele eingeführt wurde....
So installieren und spielen Sie Doom unter Linux
Einführung in Doom Die Doom-Serie entstand in den 90er Jahren nach der Veröffentlichung des ursprünglichen Doom. Es war sofort ein Hit und seitdem hat...