Kennt sich jemand mit der 2D-FFT aus

OP #1303533
Hallo,

ich teste zur Zeit in Matlab einige Algorithmen zur Bildtransformation.
Weiß jemand, wie ich aus dem Frequenzbild (nach Transformation eines 
Grauwertebildes) die charakteristischen Frequenzen (=Abstände) numerisch 
ermitteln kann.

Das Grauwertbild hat eine Gitterstrukur.
Nach der FFT2 und SHIFTFFT gibts 2 charakteristische Frequenzenspots in 
X und Y Richtung im Abstand zur Mitte des Bildes. Der Gitterabstand 
steht ja irgendwie im Verhältnis zur FFT2-Fenstergröße und dem Abstand 
zur Mitte des Frequenzbildes.
Ich steh irgendwie grad auf dem Schlauh. Ich möchte am Ende jedenfalls 
die Gittergröße in Pixel raus haben (X und Y Richtung).

Weiß jemand Rat?
also du hast eine 2 D Matrix die eine Gitterstruktur hat. Daraus willst 
du dann den Abstand des Gitters durch die FFT berechnen?

Ich denke die FFT ist da suboptimal weil sie ja erwartet, dass es 
periodisch ändernde Signal enthält und du hast da Diracs drin. Also 
prinzipiell Überlagerungen von Exponentialfunktionen die dann die FFT 
liefert.

Was spricht gegen ein aufsummieren in X Richtung?
Dann kannst du einen threshold TH berechnen: (Punkte < TH)/(Punkte > TH) 
= Anzahl Gitterwiederholungen
oder ist das zu naiv?
Gast
Hallo,
zeig doch einmal dein Bild her.

Ich kann mis schon voestellen, dass das mit dem Muster gehen kann. Vor 
allem kann man erkennen, ob das Muster verdreht ist oder hoizonzal 
ausgerichtet ist.
Gast
Hallo Mario,

das ist sicher nicht anders als bei der "normalen" FFT:

N  = Anzahl der Gitterpunkte in eine Richtung
fs = 1;                 % Abtastfrequenz in Pixeln/Abtastwert
f  = 0:fs/N:(N-1)/N*fs; % Frequenzvektor in x-Richtung

Plotte das Bild und suche den Index mit dem Maximum heraus.
1/f(index) ist die Anzahl der Pixel, die eine Struktur aufweist.

Wenn es sehr genau sein soll, mußt du das Betragsspektrum interpolieren, 
beispielsweise mit einem Polynom 2. Grades.

Gruß,
  Michael

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.