# Bilder vergleichen durch Frequenzanalyse?



## Sabi (19. November 2009)

Hallo Ihr Lieben,

ich sitze gerade an meiner Diplomarbeit und komme bei der Bildbearbeitung nicht weiter.

Folgendes Problem:
Ich habe mehrere Bilder, die unterschiedliche Objekte auf unterschiedlichen Hintergründen zeigen. Die möcht ich z.B. weichzeichnen.
Wenn ich jetzt z.B. den Gauss'schen Weichzeichner auf ein Bild anwende, das ein dunkles Objekt auf einem hellen Hintergrund zeigt, so kann ich da viel mehr an Schärfe rausnehmen als aus einem Bild mit einem hellen Objekt auf einem hellen Hintergrund. Die Bilder sollen aber vergleichbar sein (weil ich mit Reaktionszeiten arbeite: wie schnell wird ein Bild erkannt) und nur mit Augenmaß zu arbeiten wäre unprofessionell. Deshalb suche ich eine Methode, durch die ich verschiedene Bilder miteinander vergleichen kann. Eine Methode wäre die Frequenzanalyse, jedoch weiß ich nicht, wie ich das realisieren kann. Bin kein Mathematiker. 
Wenn die Methode zur Bildanalyse (welche das auch immer wäre) ein Ergebnis liefert, könnte ich das in Beziehung setzen mit der Stärke des Weichzeichnens.

Habt Ihr eine Idee, wie man das realisieren könnte? Bin wirklich am Ende mit meinem Latein.


----------



## chmee (19. November 2009)

Du könntest mit dem Highpassfilter oder dem Edgedetecting (da gibt es mehrere Filter) natürlich auf hochfrequente Anteile ansprechen. Starke Kanten bedeuten doch eine hohe Frequenz, umso stärker der Unterschied zwischen zwei Pixeln, desto schwärzer das Ergebnis in der Edgedetection. Ich würd auch sagen, dass Du vor der Frequenzanalyse das Bild in Graustufen umwandeln solltest.

Die Frage ist natürlich, soll das Ergebnis ein Zahlenwert sein oder ein bearbeitetes Bild?

*Nachtrag:
Es gibt ein FFT-Plugin. Leider muss ich sagen, ich kann mit dem FFT-Ergebnis wenig anfangen. Interessanter wäre wohl ein Diagramm Frequenz(min/max) zu Vorkommen, ähnlich einem Histogramm.

mfg chmee


----------



## Sabi (19. November 2009)

Danke für Deine schnelle Antwort!

Mit den Filtern kann ich leider nicht viel anfangen (oder ich hab das Prinzip noch nicht verstanden - ich arbeite erst seit paar Wochen mit Photoshop). 
Die Filter zeigen mir zwar z.B. die Kanten auf, aber ich brauche kein bearbeitetes Bild, sondern am besten einen Zahlenwert, den ich, wenn alle Bilder analysiert sind, auf einer Skala vom Bild mit dem niedrigsten Wert bis zum Bild mit dem höchsten Wert einordnen kann. Und anhand dieser Skala sollte ich dann abschätzen können, wie stark ich z.B. ein Bild weichzeichne. Also quasi Bilder mit hoher räumlicher Frequenz bzw. mit starken Kontrasten stark weichzeichnen und Bilder mit niedrigerer Frequenz entsprechend weniger stark weichzeichnen.
Ich weiß nicht, ob es da irgendeine automatisierte Variante gibt. Hab mir das nur theoretisch überlegt...


----------



## chmee (19. November 2009)

Hmm, ich komm leider noch nicht dahinter, wie Du es genau meinst. Ist Deine Idee eine rein bildanalytische (mathematisch) oder ist das letztendliche Ergebnis (eine gewisse Erkenntnis) - worauf Du hinauszielst - abhängig von menschlichen Betrachtern?

mfg chmee


----------



## Sabi (20. November 2009)

Die Analyse der Bilder ist nur eine "Vorarbeit". Ich brauche sie für ein psychologisches Experiment. Es geht mir u.a. darum, die Reaktionszeit zu messen, wie lang ein Betrachter braucht, um ein Bild zu erkennen. Dabei soll die Reaktionszeit ALLEIN vom z.B. Schärfegrad des Bildes abhängen (und natürlich vom Bildinhalt selbst), aber NICHT von Bildeigenschaften, die ich nicht kontrollieren kann. 

Ein Betrachter soll ein Bild nicht deswegen schneller erkennen können, nur weil das Bild ein dunkles Objekt auf hellem Hintergrund zeigt, während ein anderer Betrachter ein helles Objekt auf hellem Hintergrund identifizieren soll (was von Natur aus länger dauert). Diesen Effekt will ich beseitigen, indem ich ABHÄNGIG von z.B. der Frequenz das Bild bearbeite (z.B. mit dem Weichzeichner).

Ich hoffe, das war jetzt verständlich.  Schwer zu erklären, wenn man sich selbst noch nicht so ganz im Klaren ist.


----------



## chmee (20. November 2009)

Uh.. Ehrlicherweise würd ich dann eher darauf achten, dass die Bildkontraste sich ähneln, denn Du holst Dir -meines Erachtens- eine nicht nachvollziehbare Komponente ins Boot, wenn Du eine Konstante aufstellen möchtest, die eine gewisse Gleichheit von Bildern verschiedener Erkennungseinfachheit  darstellt.

Hast Du denn schon zwei Bilder gefunden, die die Gegensätze aufzeigen? Jene auch mal über den Gausschen Weichzeichner bearbeitet und für Dich erkannt, wann die Nichterkennbarkeit/Unschärfung Deinen (noch subjektiven) Kriterien entspricht? Daraus könnte man dann nen Schuh machen und zB aufstellen : Differenz Vordergrund/Hintergrund ist der Multiplikator für den Weichzeichner..

zB
Vordergrund Weiß = 255
Hintergrund Schwarz = 0
Differenz D = 255
-> Gausscher Blur = Konstantwert + Kontrast 
-> 2 + D/4 = 2 + 64 = *66px*

EDIT: 
Hohe Frequenzen sind gar nicht das Problem, der Weichzeichner ist quasi ein Lowpass-Filter, der abhängig von der Stärke den Einsteigspunkt der Filterung bestimmt. Umso höher die Weichzeichnung, desto niedriger der wiedererkennbare Frequenzbereich.

mfg chmee


----------

