Python3 – Bilder zusammenfügen mit PIL

In diesem Beitrag zeige ich dir wie du mithilfe von der Bibliothek PIL in Python3 recht einfach Bilder zusammenfügen kannst.

Dieser Beitrag ist aus einem laufenden Projekt entstanden und wird durch weitere Beiträge ergänzt.

Bilder für einen Test

Für einen Test habe ich mir ein Bild von einem Rahmen von der Plattform https://pixabay.com/ kostenfrei geladen.

In diese weiße Fläche möchte ich nun ein Bild von der DIY Modellbaurakete einfügen.

zusammenfügen der Bilder mit PIL in Python3

Hier nun das kleine Programm, welches die beiden Bilder zusammenfügt.

Da ich in diesem Beispiel einen Rahmen um das zweite Bild erzeugen möchte, muss ich das zweite Bild mit einem Offset platzieren, damit dieses innerhalb des Rahmens steht.

from PIL import Image  # Bibliothek zum be-/verarbeiten von Bilder

background = 'data/rahmen.jpg'  # Bild für den Hintergrund
foreground = 'data/rakete.jpg'  # Bild für den Vordergrund

# erzeugen eines neuen Bildes
# Breite 576 , Höhe 640 Pixel
new_im = Image.new('RGB', (576, 640))


# Funktion zum kopieren von Bilddaten mit ggf. einem Offset
def copy_image(image, offset_x=0, offset_y=0):
    # kopieren der einzelnen Pixelinformationen in das neue Bild
    for i in range(0, 576, 640):
        im = Image.open(image)
        new_im.paste(im, (i + offset_x, offset_y))

# kopieren des Hintergrundbildes
copy_image(background)
# kopieren des Vordergrundbildes mit einem Offset
# damit diesen in den Rahmen passt.
copy_image(foreground, 103, 110)

# Speichern des erzeugten Bildes in eine Datei
new_im.save('output.jpg')
Ausgabe der beiden zusammengeführten Bilder

Download

Hier die Sourcen zum Download:

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.