Image Processing mit Python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sublist
User
Beiträge: 33
Registriert: Donnerstag 11. Dezember 2008, 16:04

Hi Leute.

Ich möchte gerne Bilder mit Python bearbeiten.
Im konkreten Fall möchte ich z.b. von einem *.dds file den Rot Kanal von einem Bild in den Blau Kanal eines anderen Bildes kopieren.
Ich spiele gerade mit PythonMagick rum. Ist ja der Klassiker für solche Aufgaben, aber iwie ist die Doku in bezug auf Python eher spärlich.
https://imagemagick.org/index.php
https://imagemagick.org/Usage/

Code: Alles auswählen

import PythonMagick
myPath 	= r'c:\Users\XXX\Desktop'
myImage = r'\Zwischenablage-1.png'

image 	= PythonMagick.Image(myPath + myImage)

#Get all functions from Image Class
allAttrs4ImageClass = dir(PythonMagick.Image())
for each in allAttrs4ImageClass:
	print(each)

print(image.fileName())
print(image.size().width())
print(image.size().height())

image.sample('!200x200')
image.sample('200x200')
image.blur()
image.sharpen()
image.write(r'c:\Users\XXX\Desktop\Zwischenablage-1.dds')
Vielleicht gibts ja noch andere Module die dafür geeignet sind?

Danke und Grüße
Guido
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich wuerde ja eher Pillow nehmen, und ggf. OpenCV dazu, mit dem du eine grosse Menge an Tools hast. Sowas wie den Kanal umzutauschen ist dann einfach eine Frage der numpy-Array-Behandlung.
sublist
User
Beiträge: 33
Registriert: Donnerstag 11. Dezember 2008, 16:04

pillow kann leider keine dds files schreiben
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Nicht? Ich las es kann sie lesen, aber vielleicht geht das nur in eine Richtung. Letztlich sollte alles, was ein solches Bild lesen und schreiben kann die Daten in RGB-Kanaele oder aehnliches ueberfuehren koennen. Und bearbeiten kannst du es dann mit numpy, OpenCV.
Antworten