pillow ist eine Bibliothek zur Bildverarbeitung. pillow ist ein Abkömmling (engl. fork) der veralteten pil-Bibliothek (python image library).
Installation
Damit pillow verwendet werden kann, muss die Bibliothek installiert werden. Dies funktioniert in Thonny wie in hier beschrieben (nach pillow suchen).
Bibliothek importieren
Die Bibliothek kann mit dem bekannten import-Befehl importiert werden:
from PIL import ImageAchtung
Obwohl die Bibliothek pillow heisst, muss beim Import der Name PIL verwendet werden. Die Bibliothek ist sehr umfangreich. Wir importieren für unser Projekt nur das Image-Modul, das vereinfacht unser Programm.
Wichtige Funktionen
open()
Diese Funktion öffnet die angegebene JPG- oder PNG-Datei.
Image.open(filename)- Parameter
filename
Der Name der zu öffnenden Datei als String.- Rückgabewert
- Die Funktion liefert als Resultat ein
Image-Objekt. Es soll in einer Variablen (z.B.bild) gespeichert werden, damit die Pixelwerte geladen werden können.
Image-Objekte
Für Image-Objekte können die folgenden Funktionen aufgerufen oder auf die folgenden Variablen zugegriffen werden:
load()
Diese Funktion lädt die Pixel-Daten eines Bildes.
bild.load()- Rückgabewert
- Die Funktion liefert als Resultat ein
PixelAccess-Objekt. Es soll in einer Variablen (z.B.pixel) gespeichert werden, damit auf die Pixelwerte zugegriffen werden kann (siehe unten).
save()
Diese Funktion speichert die im Image-Objekt bild vorhandenen Pixel-Daten in einer Datei.
bild.save(filename)- Parameter
filename
Der Name der Datei, in die das Bild gespeichert wird, als String.
show()
Diese Funktion zeigt ein Bild in einem neuen Fenster an.
bild.show(title=None)- Parameter
title
Der zu verwendende Fenstertitel (optional).
size
Die Bildgrösse als Tupel (width, height). Die Bildgrösse kann also so in zwei separaten Variablen gespeichern werden: (breite, hoehe) = bild.size.
bild.sizePixelAccess-Objekte
Mit PixelAccess-Objekten kann wie folgt auf die Farbwerte der Pixel zugegriffen werden:
(rot, gruen, blau) = pixel[x, y]Der Farbwert eines bestimmten Pixels kann durch die Angabe dessen x- und y-Koordinate ausgelesen werden. Der Farbwert ist ein Tupel, das aus den einzelnen Werten für den rot-, grün- und blau-Anteil besteht.
Die erlaubten Farbanteile sind ganze Zahlen und befinden sich im Interval [0, 255].
pixel[x, y] = (rot, gruen, blau)Umgekehrt kann die Farbe eines Pixels an der angegebenen x- und y-Koordinate auch auf einen bestimmten Wert (wiederum als Tupel aus rot-, grün- und blau-Anteil) gesetzt werden.
Offizielle Dokumentation
Die offizielle Dokumentation findet sich unter folgender Adresse: https://pillow.readthedocs.io/en/stable/
Wir benötigen aber nur die Funktionen des Image-Moduls: https://pillow.readthedocs.io/en/stable/reference/Image.html