Mit Python kann man viele alltägliche Aufgaben automatisieren. Mit dem hier vorgestellten Skript fügen wir ein Logo zu Bildern hinzu. Dabei werden die Bilder nicht überschrieben sondern die Bilder mit Logo in einem extra Ordner gespeichert.
Dabei ist es egal ob das Logo zu 2 oder 10.000 Bildern hinzugefügt werden soll.
Folgende Bibliotheken werden benötigt:
os: eine große Bibliothek mit vielen nützlichen Werkzeugen.
image: Bibliothek, die das Zuschneiden, Ändern der Größe, Miniaturisieren, Überlagern und Maskieren von Bildern und Videos ermöglicht.
Skript:
import os
from PIL import Image
LOGO_FILENAME = input('Eingabe des Logonamens mit Dateierweiterung: ')
NEW_FOLDER_NAME = input("Enter The New Folder Name : ")
logoIm = Image.open(LOGO_FILENAME)
logoWidth, logoHeight = logoIm.size
os.makedirs(NEW_FOLDER_NAME, exist_ok=True)
# Schleife über alle Dateien im Verzeichnis
for filename in os.listdir('.'):
if not (filename.endswith('.png') or filename.endswith('.jpg')) \
or filename == LOGO_FILENAME:
continue #Überspringen von Nicht-Bilddateien und der Logodatei selbst
im = Image.open(filename)
width, height = im.size
# Fügt Logo hinzu
print('Logo hinzufügen zu %s...' % (filename))
im.paste(logoIm, (width - logoWidth, height - logoHeight), logoIm)
# Speichert die neuen Bilder
im.save(os.path.join(NEW_FOLDER_NAME, filename))
print("Fertig")
Weitere Python-Pakete für die Bildverarbeitung
Scikit-Image
- Beschreibung: Scikit-image ist eine umfangreiche Bibliothek, die auf NumPy und SciPy aufbaut und diverse Algorithmen und Dienstprogramme für die Bildverarbeitung und -analyse bietet.
- Einsatzgebiete: Umfasst Bildverarbeitungsfilter, geometrische Bildfilter, Bildanalyseroutinen und Unterstützung für mehrdimensionale Bilder.
- Installation:
pip install scikit-image
Keras
- Beschreibung: Keras ist eine High-Level-API für neuronale Netze, die auf TensorFlow, CNTK oder Theano aufsetzt und schnelle Experimente ermöglicht.
- Einsatzgebiete: Erstellung und Training von Netzwerkmodellen, insbesondere in tiefen Lernanwendungen.
- Installation:
pip install keras
Pillow (PIL)
- Beschreibung: Pillow, ein Fork der Python Imaging Library (PIL), ist eine der bekanntesten Bibliotheken für die Bearbeitung und Manipulation von Bildern in Python.
- Einsatzgebiete: Breites Spektrum von Bildbearbeitungsmöglichkeiten, einschließlich Text hinzufügen, Größe ändern und Bildformatkonvertierungen.
- Installation:
pip install Pillow
Mahotas
- Beschreibung: Mahotas ist eine Computer-Vision-Bibliothek für Python, die es ermöglicht, fortschrittliche Bildverarbeitungsalgorithmen ohne tiefergehende Programmierung der Algorithmen selbst zu nutzen.
- Einsatzgebiete: Enthält vorgefertigte Module für gängige Bildverarbeitungsaufgaben.
- Installation:
pip install mahotas
SimpleITK
- Beschreibung: SimpleITK ist eine fortschrittliche Open-Source-Bibliothek für Computer Vision, die eine Vielzahl von Werkzeugen für die Bild- und Videoverarbeitung bietet.
- Einsatzgebiete: Hochgradig optimiert und nutzt Multithreading-Techniken für die Bildverarbeitung.
- Installation:
pip install SimpleITK
NumPy
- Beschreibung: NumPy ist eine grundlegende Bibliothek für wissenschaftliche Berechnungen in Python und ermöglicht die effiziente Arbeit mit großen Datenmengen und Arrays.
- Einsatzgebiete: Manipulation von Bilddaten durch numerische Berechnungen und Transformationen.
- Installation:
pip install numpy