Fensterung und Padding bei FFTs

Gast #2484204
Angeregt durch einen anderen aktuellen thread habe ich eine Frage:

Wenn ich eine binäre FFT mit nicht binären Daten auffüllen möchte, z.B. 
1000 Wert in einer 2h10=1024, dann kann ich nach meinem Wissen mit 
Nullen auffüllen. Die Frage ist, wie man das tun muss?

Soll das einseitig erfolgen oder Symmetrisch? Oder ist das egal?

Was tut man mit der Fensterung? Muss diese nicht genau über der Werten 
liegen und damit linksseit / symmetrisch , je nachdem wie man paddet?

Müssen die gepaddeten Werte auch genullt werden, sodass das Fenster 
verengt werden muss oder lässt es es bei der 1024er Breite und riskiert 
die Knickstellen, die durch die Nullen entstehen?

Vom Gefühl her, würde ich die Glocke des Fensters erhalten wollen und 
damit ein relativ breiteres Fenster mit steilerem Abstieg haben wollen, 
das aber an den gepaddeten Nullen endet, also zu den Nullen hin sanft 
ausläuft.
Gast
Die Nullen müssen in die Mitte? Seit wann denn das?

Am Beispiel einer single-DFT (kontinuierliche Multiplikation mit COS 
entlang der Frequenz) hätte ich nun gesagt, dass die Kohärenz dadurch 
hergestellt wird, dass alle Werte stetig mit dem COS (phi) verarbeitet 
werden, also:

Wert 1 x Cos (phi(0))
Wert 2 x Cos (phi(1))
Wert 3 x Cos (phi(2))
...
Wert k x Cos (phi(k))
...
0!     x Cos (phi(k+1))
...
0!     x Cos (phi(n-1))
0!     x Cos (phi(n))

mit phi(n) = 2 * PI
Persönliche Seite
Intuitiv würde ich auch sagen erst fenstern dann zero-padden, sonst 
verlierst du ein wenig den Sinn des Fensters (zumindest an einer stelle, 
je nach wo du die nullen anhängst). Meiner Meinung nach ist es egal wo 
die nullen angehängt werden, ob vorne oder hinten oder beides. Ich hab 
sie bis jetzt einfach immer hinten angehängt.
Persönliche Seite
Hauke Radtki schrieb:
> Intuitiv würde ich auch sagen erst fenstern dann zero-padden, sonst
> verlierst du ein wenig den Sinn des Fensters (zumindest an einer stelle,
> je nach wo du die nullen anhängst). Meiner Meinung nach ist es egal wo
> die nullen angehängt werden, ob vorne oder hinten oder beides. Ich hab
> sie bis jetzt einfach immer hinten angehängt.

Es ist tatsächlich fast egal, denn die Position im Zeitbereichsvektor 
ist ja nichts anderes als die Phase. Wenn am Schluss nur sie spektrale 
Leistungsdichte interessiert, ist es tatsächlich egal.

Standardmäßig hängt man sie m.W. hinten an, ist in der Implementierung 
meistens auch am einfachsten.

Weil die FFT ein periodisches Signal annimmt, müsste es eigentlich auch 
möglich sein, die Nullen in die Mitte zu setzen. Ein kurzer Test mit 
Matlab hat das allerdings nicht bestätigt, kann mir mal jemand meinen 
Denkfehler aufzeigen?

Grüße,

Max
Gast
Hallo,

setzt du die Nullen in die mitte, fügst neben Anfang und Ende einen 
zusätzlichen Sprung in die Daten ein. Das wirkt sich natürlich auf das
Spektrum aus. Es ist ja auch nicht mehr Periodisch über alles....

Gruß

 Stephan
Persönliche Seite
Max G. schrieb:
> Weil die FFT ein periodisches Signal annimmt, müsste es eigentlich auch
> möglich sein, die Nullen in die Mitte zu setzen. Ein kurzer Test mit
> Matlab hat das allerdings nicht bestätigt, kann mir mal jemand meinen
> Denkfehler aufzeigen?

Wenn Du Dir mal ansiehst, wie die Definition der FT lautet, bzw. wie der 
Eingangsdatenstrom mit SIN/COS jeder beteiligten Frequenz zu 
multiplizieren ist/wäre, wird doch klar, dass das nicht mehr aufgeht.

Das Anfügen der Nullen muss vorne oder hinten erfolgen, wobei man damit 
aber die Phaseninformation der Ausgabe modifiziert.

Auf beiden Seiten gleichmäßig Anfügen wäre z.B. dann von Nöten, wenn die 
Daten nicht selbst gefenstert werden können, sondern das Fenster z.B. in 
eine DFT eingebacken ist und nicht verschoben werden kann.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 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.