Diskrete Fourier-Transform

Die DFT (Diskrete Fourier-Transform) gilt für diskrete Signale und ergibt ein diskretes Spektrum (die Frequenzen innerhalb des Signals).

Hier ist die magische Formel, um ein digitales Signal in Frequenzen umzuwandeln (wir erklären sie weiter unten):

$$ X(n) = \sum_{k=0}^{N-1}{x[k]e^{-j(2 \pi kn/N)}} $$

Erklären wir die Elemente dieser Formel:

  • N ist die Größe des Fensters: Die Anzahl der Samples, aus denen das Signal besteht (wir werden im nächsten Kapitel über Fenster sprechen).
  • X(n) steht für das n-te Band der Frequenzen ("frequency bins")
  • x(k) ist das k-te Sample des Audiosignals

Zum Beispiel muss diese Formel für ein Audiosignal mit einem 4096-Sample-Fenster 4096 mal angewendet werden:

  • 1 Mal für n = 0, um das 0. Band der Frequenzen zu berechnen
  • 1 Mal für n = 1, um das 1. Band der Frequenzen zu berechnen
  • 1 Mal für n = 2, um das 2. Band der Frequenzen zu berechnen

Wie du vielleicht bemerkt hast, sagen wir „Band von Frequenzen“ und nicht „Frequenz“. Der Grund hierfür ist, dass die DFT ein diskretes Spektrum ergibt. Ein Band von Frequenzen ist die kleinste Frequenz-Einheit, die die DFT berechnen kann. Die Größe des Bandes (Spektral-/Spektrumauflösung oder Frequenzauflösung genannt) ist gleich der Abtastrate des Signals geteilt durch die Größe des Fensters (N). In unserem Beispiel beträgt die Frequenzauflösung bei einem 4096-Sample-Fenster und einer Standard-Audio-Abtastrate von 44,1 kHz 10,77 Hz (außer dem 0. Band, das speziell ist):

  • das 0. Band repräsentiert die Frequenzen zwischen 0 Hz bis 5,38 Hz
  • das 1. Band repräsentiert die Frequenzen zwischen 5,38 Hz bis 16,15 Hz
  • das 2. Band repräsentiert die Frequenzen zwischen 16,15 Hz bis 26,92 Hz
  • das 3. Band repräsentiert die Frequenzen zwischen 26,92 Hz bis 37,68 Hz

Das bedeutet, dass die DFT zwei Frequenzen, die näher als 10,77 Hz beieinander sind, nicht trennen kann. Zum Beispiel landen Noten mit 27 Hz, 32 Hz und 37 Hz im selben Band. Wenn die Note bei 37 Hz sehr stark ist, weiß man nur, dass das 3. Band stark ist. Dies ist problematisch für die Trennung (Dissoziation) von Noten in den untersten Oktaven. Zum Beispiel:

  • eine A1 (oder La -1) ist bei 55 Hz wohingegen eine B1 (oder Si -1) bei 58,27 Hz ist sowie eine G1 (oder Sol -1) bei 49 Hz.
  • die erste Note eines Standard-88-Tasten-Klaviers ist eine A0 bei 27,5 Hz, gefolgt von einer A#0 bei 29,14 Hz.

Man kann die Frequenzauflösung verbessern, indem man die Fenstergröße erhöht, aber das bedeutet, dass man die schnellen Frequenz-/Notenänderungen in der Musik verliert:

  • Ein Audiosignal hat eine Abtastrate von 44,1 kHz
  • Das Fenster zu vergrößern bedeutet, mehr Samples zu nehmen und somit die Zeit zu erhöhen, die das Fenster benötigt.
  • Bei 4 096 Samples beträgt die Fensterdauer 0,1 Sekunden und die Frequenzauflösung 10,7 Hz: Man kann eine Änderung alle 0,1 Sekunden feststellen.
  • Bei 16 384 Samples beträgt die Fensterdauer 0,37 Sekunden und die Frequenzauflösung liegt bei 2,7 Hz: Man kann alle 0,37 Sekunden eine Änderung feststellen.

Eine weitere Besonderheit für ein Audiosignal ist, dass wir nur die Hälfte der von der DFT berechneten Bänder benötigen. Im vorherigen Beispiel ist die Band-Definition 10,7 Hz, das bedeutet, dass das 2047. Band die Frequenzen von 21902,9 Hz bis 21913,6 Hz wiedergibt. Aber:

  • Das 2048. Band gibt die gleiche Information wie das 0. Band
  • Das 2049. Band gibt die gleiche Information wie das 1. Band
  • Das X+2048. Band gibt die gleiche Information wie das X. Band

Wenn du wissen möchtest, warum die Band-Auflösung der Abtastrate (Sampling Rate) dividiert durch die Fenstergröße entspricht oder warum diese Formel so bizarr ist, kannst du auf dieser sehr guten Webseite einen 5-teiligen Artikel über die Fourier-Transform lesen (speziell Teil 4 und Teil 5), der Artikel ist für Anfänger geeignet.