FFT - BA17-loma-1/Audio_Signal_Processing_Toolbox GitHub Wiki
Discrete Fourier Transform
- DFT

- Inverse DFT

Signal in x[n] und Spektralwerte in X[m].
Die Werte in X[m] sind im Allgemeinen komplex.
Wichtigste Eigenschaft der DFT: Aus N Abtastwerten x[n] einer Zeitfenstersequenz der Länge T_DFT werden N komplexe Spektralwerte im Frequenzbereich [0,fs] berechnet. N ist die Blocklänge (Anzahl Abtastwerte).
Frequenzauflösung: Die DFT teilt die Abtastfrequenz fs in Frequenzbins der Länge df = fs/N auf.
Aus Symmetriegründen ist nur die erste Hälfte des DFT-Spektrums in X[m] relevant.
Leakage
Mit der DFT wird das Spektrum der periodisch fortgesetzten Zeitfenstersequenz berechnet. Wählt man eine unpassende Fensterlänge, kann es zu Sprungstellen kommen, welche im Signal nicht enthalten waren. Das resultierende Spektrum weist dann zusätzliche, auslaufende Spektrallinien auf (Leakage).

Die unerwünschten Spektrallinien des Leakage-Effekts werden dabei vor allem durch die abrupten Übergänge in der periodischen Fortsetzung verursacht. Abrupte Übergänge können durch die Verwendung von glatten, d.h. kontinuierlichen Fensterfunktionen vermieden werden [1].
Fensterung

Mathematisch gesehen ist die Fensterung eine Multiplikation des zeitdiskreten Signals x[n] mit einer Fensterfunktion w[n]. Fensterfunktionen wie z.B. Hamming, Hann und Blackman sind Cosinusfunktionen (Visualisierung in MATLAB mit wvtool).
-
Hann window

-
Hamming window

-
Blackman window

Fast Fourier Transform
Effizientere Implementierung der DFT. Die Komplexität der FFT sinkt auf O(n*log(n)) und findet deshalb Anwendung in Echtzeitapplikationen bei vernünftiger Fensterlänge.
[1] Daniel Ch. von Grünigen, Digital Signalverarbeitung, 5. Auflage, 2014, Hanser