Multiprocessing und ImageFilter

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
Loonix
User
Beiträge: 2
Registriert: Donnerstag 18. April 2013, 15:24

Hallo,

ich habe da ein paar kleine Fragen und hoffe ihr könnte mir helfen.
Ich bin auf der Suche nach einer Programmiersprache, mit der ich Bilder bearbeiten oder ganze Aktionen ausführen kann auf Python gestoßen.
Jetzt nach den ersten paar Schritten stoße ich schon auf das erste Problem und zwar die Performance.
Ich öffne ein Bild und wende dort einen Image.Filter an "GaussianBlur" an. Dieser dauert leider ganz schön lange, jetzt hab ich im Internet etwas über Multiprocessing gefunden und frage mich ob ich das auch auf die Image.Filter anwenden kann? Das z.B 4 Kerne den GaussianBlur berechnen, ist das möglich?

Gruß
Norman
BlackJack

@Loonix: Das ist nicht so ohne weiteres möglich, da das ja schon in dem C-Code vorgesehen sein müsste, der diesen Effekt berechnet. Falls Du mehrere Bilder verarbeitest, könnte man *das* vielleicht parallelisieren.
Loonix
User
Beiträge: 2
Registriert: Donnerstag 18. April 2013, 15:24

Erstmal vielen Dank für die Antwort, sowas hab ich mir schon fast gedacht :-(.
Ich versuche den Performancenachteil von PIL jetzt mit PythonMagick zu umgehen, da dort manche Filter um einiges schneller arbeiten.
Ich habe mir jetzt zwei Funktionen geschrieben, eine die reine PIL Effekte ausführt und das fertige Ergebnis dann zurück gibt.
Die zweite Funktion bekommt dann den Rückgabewert von der ersten Funktion und arbeitet mit PythonMagick. Das funktioniert auch.
Was ich jetzt nicht hinbekomme ist, dass ich Daten die, mit PythonMagick erstellt wurden wieder an PIL übergebe um damit weiter zu arbeiten.
Ich habe gesucht und immer wieder was PythonMagick.Blob oder nur Blob gefunden. Bin ich da auch der richtigen Spur? Leider finde ich da keine gute Erklärung.
schaeffkoch
User
Beiträge: 38
Registriert: Dienstag 21. August 2012, 10:59

vielleicht noch als idee für das filtern scipy oder opencv verwenden?
http://scipy-lectures.github.io/advance ... rocessing/

gaussian-blur ist mit beiden moeglich.
Antworten