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.
ich versuch das mal grafisch darzustellen:
spektrum: x
nullen: 0
x1 x2 x3 x4
x1 x2 0 0 x3 x4
weil das spektrum ja periodisch ist. was fensterung angeht keine ahnung.
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
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.
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
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
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.
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.