Warum nimmt die DFT an, dass das transformierte Signal periodisch ist?

10

In vielen Signalverarbeitungsbüchern wird behauptet, dass die DFT das transformierte Signal als periodisch annimmt (und dass dies der Grund ist, warum beispielsweise eine spektrale Leckage auftreten kann).

Wenn Sie sich nun die Definition der DFT ansehen, gibt es einfach keine solche Annahme. In dem Wikipedia-Artikel über die zeitdiskrete Fourier-Transformation (DTFT) heißt es jedoch, dass

Wenn die Eingangsdatensequenz ist -periodischen, kann Gleichung 2 rechnerisch auf eine diskrete Fourier reduziert werden Transformation (DFT)N.x[n]N

  • Entspringt diese Annahme der DTFT?
  • Berechne ich bei der Berechnung der DFT tatsächlich die DTFT unter der Annahme, dass das Signal periodisch ist?
user10839
quelle
Weil DFT X [k] von x [n] die erste Periode der diskreten Fourier-Reihe (DFS) des periodischen Signals xp [n] ist, dessen erste Periode als x [n] angenommen wird
Fat32
1
Es sieht so aus, als müsste ich eine abweichende Antwort darauf schreiben. Die DFT nimmt an, dass das transformierte Signal periodisch ist, da sie eine Reihe von Basisfunktionen an das transformierte Signal anpasst, die alle periodisch sind.
Robert Bristow-Johnson
1
Die DFT ist nur der vereinfachte Ausdruck der DFS, daher besteht die periodische Annahme inhärent.
lxg

Antworten:

12

Es gibt bereits einige gute Antworten, aber ich möchte noch eine weitere Erklärung hinzufügen, da ich dieses Thema für das Verständnis vieler Aspekte der digitalen Signalverarbeitung als äußerst wichtig erachte.

Zunächst ist es wichtig zu verstehen, dass die DFT keine Periodizität des zu transformierenden Signals "annimmt". Die DFT wird einfach auf ein endliches Signal der Länge angewendet und die entsprechenden DFT-Koeffizienten werden durch definiertN

(1)X[k]=n=0N1x[n]ej2πnk/N,k=0,1,,N1

Aus (1) ist ersichtlich, dass nur Abtastwerte von im Intervall berücksichtigt werden, so dass keine Periodizität angenommen wird. Andererseits können die Koeffizienten als Fourier-Koeffizienten der periodischen Fortsetzung des Signals interpretiert werden . Dies ist aus der inversen Transformation ersichtlich[ 0 , N - 1 ] X [ k ] x [ n ]x[n][0,N1]X[k]x[n]

(2)x[n]=k=0N1X[k]ej2πnk/N

welches berechnetx[n] korrekt im Intervall , berechnet aber auch seine periodische Fortsetzung außerhalb dieses Intervalls, da die rechte Seite von (2) mit der Periode N periodisch ist . Diese Eigenschaft ist in der Definition der DFT enthalten, muss uns aber nicht stören, da wir normalerweise nur am Intervall [ 0 , N - 1 ] interessiert sind .[0,N1]N[0,N1]

Betrachtet man die DTFT von x[n]

(3)X(ω)=n=x[n]ejnω

wir können durch Vergleichen von (3) mit (1) sehen, dass, wenn eine endliche Folge im Intervall [ 0 , N - 1 ] ist , die DFT-Koeffizienten X [ k ] Abtastwerte der DTFT X ( ω ) sind ::x[n][0,N1]X[k]X(ω)

(4)X[k]=X(2πk/N)

Eine Verwendung der DFT (aber sicherlich nicht die einzige) ist die Berechnung von Stichproben der DTFT. Dies funktioniert jedoch nur, wenn das zu analysierende Signal eine endliche Länge hat . Normalerweise wird dieses Signal endlicher Länge durch Fensterung eines längeren Signals konstruiert. Und es ist diese Fensterung, die eine spektrale Leckage verursacht.

Als letzte Bemerkung ist zu beachten, dass die DTFT der periodischen Fortsetzung der endlichen Folge x [ n ] als DFT-Koeffizienten von x [ n ] ausgedrückt werden kann :x~[n]x[n]x[n]

˜ X (ω)=2π

(5)x~[n]=k=x[nkN]
(6)X~(ω)=2πNk=X[k]δ(ω2πk/N)

BEARBEITEN: Die oben angegebene Tatsache, dass und ˜ X ( ω ) ein DTFT-Transformationspaar sind, kann wie folgt gezeigt werden. Beachten Sie zunächst, dass die DTFT eines zeitdiskreten Impulskamms ein Dirac-Kamm ist:x~[n]X~(ω)

(7)k=δ[nkN]2πNk=δ(ω2πk/N)

Die Folge kann als Faltung von x [ n ] mit einem Impulskamm geschrieben werden:x~[n]x[n]

(8)x~[n]=x[n]k=δ[nkN]

Da die Faltung der Multiplikation in der DTFT-Domäne entspricht, ist die DTFT von ˜ x [ n ] durch die Multiplikation von X ( ω ) mit einem Dirac-Kamm gegeben:X~(ω)x~[n]X(ω)

(9)X~(ω)=X(ω)2πNk=δ(ω2πk/N)=2πNk=X(2πk/N)δ(ω2πk/N)

Die Kombination von mit ( 4 ) ergibt das Ergebnis ( 6 ) .(9)(4)(6)

Matt L.
quelle
Pfeil nach unten diese Antwort aus dem gleichen Grund, aus dem ich die aktuellere Antwort von @ hotpaw2 habe. in dieser Aussage: "Aus (1) ist ersichtlich, dass nur Abtastwerte von im Intervall [ 0 , N - 1 ] berücksichtigt werden, so dass keine Periodizität angenommen wird." x[n][0,N1]Die Schlussfolgerung folgt nicht aus der Prämisse.
Robert Bristow-Johnson
4
@ Robertbristow-Johnson: Das tut es. Gib mir aufeinanderfolgende Proben und ich gebe dir die DFT. Ich muss nichts über das Signal außerhalb des Bereichs [ 0 , N - 1 ] annehmen , nicht einmal seine Existenz. Dies ist das einzige, was ich in diesem Satz behaupte, und es ist offensichtlich wahr. Für die Berechnung der DFT muss ich nur die Werte im Intervall [ 0 , N - 1 ] kennen . Ich bin mir nicht sicher, wie Sie meine Aussage missverstehen oder falsch verstehen könnten. Wenn es sich um ein Formulierungsproblem handelt, würde ich gerne meinen Satz klarstellen, aber inhaltlich ist es eigentlich trivial. N[0,N1][0,N1]
Matt L.
4
Lies die andere Antwort unten und meine Antwort im anderen Thread. Es geht nicht darum, was Sie über außerhalb von 0 n N - 1 annehmen . Es geht darum, was die Transformation über x [ n ] außerhalb von 0 n N - 1 "annimmt" (wenn wir ein wenig anthropomorphisieren dürfen) . Wir können herausfinden, was die Transformation annimmt, wenn wir eine Operation in einer Domäne aufrufen, die die andere Domäne um einen ganzzahligen Betrag verschiebt. x[n]0nN1x[n]0nN1
Robert Bristow-Johnson
@ MattL. (9) sollte = 2 π lautenanstelle von=2π
=2πNk=X[k]δ(ω2πk/N)
=2πNk=X(2πk/N)δ(ω2πk/N)
jomegaA
@ JomegaA: Nein in beiden Fällen. Wie im letzten Satz meiner Antwort angegeben, wird das Endergebnis (6) aus der Kombination von (9) mit (4) geschlossen, also natürlich , aber in (9) es wird aus der DTFT X ( ω ) abgeleitet . Und was den Skalierungsfaktor 2 π / N betrifft , muss er unbedingt vorhanden sein. Verwechseln Sie Ausdrücke nicht mit ω und f , sie haben unterschiedliche Skalierungsfaktoren. X[k]=X(2πk/N)X(ω)2π/Nωf
Matt L.
8

Es ergibt sich aus der Definition des Zeitbereichssignals:

x[n]=k=0N1X[k]e2πinkN

Sie können per Definition sehen, dass x[n]=x[n+N] .
Andererseits rekonstruiert die DFT die N Abtastwerte des Signals perfekt.
Daraus können Sie schließen, dass es eine periodische Fortsetzung davon voraussetzt.

Ein anderer Gesichtspunkt wäre, die DFT als eine endliche diskrete Fourier-Reihe zu betrachten (es ist tatsächlich ein Blick auf die diskrete Fourier-Reihe - DFS ), was natürlich darauf hinweist, dass das Signal periodisch ist (endliche Summierung von Signalen mit der Periode T ist ein Signal mit einer Periode T ).

Royi
quelle
2
Ich sehe nicht, wie es aus der Definition kommt.
user10839
1
@ user10839: Bewerten Sie einfach und Sie werden sehen, dass es gleich x [ n ] ist . Wie in der Antwort ausgeführt, ist die DFT nur eine Fourier-Reihe des Zeitbereichssignals. Die endliche Länge des Zeitbereichssignals wird als Grundperiode betrachtet. x[n+N]x[n]
Matt L.
@ user10839, Stecke es einfach in die Gleichung. Der Exponent kann mit den Cosinus- und Sinusfunktionen definiert werden, die, wie zu sehen ist, eine Periode von . nkN
Royi
1
DFT ist nicht die DFS. Dies ist pedantisch, aber DFT gibt Ihnen die Fourierreihenkoeffizienten. Es ist wichtig zu beachten, dass DFT genau wie alle anderen linearen Transformationen ist. Es ist eine Matrixmultiplikation. Die Matrix ist orthonormal, was es schön macht. Es kann auch gezeigt werden, dass die Ausgabe gleiche Koeffizienten der entsprechenden Fourierreihenerweiterung der Daten sind, die Fouriertransformation jedoch nicht die Fourierreihe ist (Typfehlanpassung: p).
Thang
@ Thang, ich habe keine Ahnung, was du meinst. Die DFT ist die DFS. Sie sind gleich. Das ist leicht zu sehen. Achten Sie darauf, dass dies die diskrete Fourier-Reihe und nicht die Fourier-Reihe (mit Integralen) ist. Schauen Sie hier en.wikipedia.org/wiki/Discrete_Fourier_series und sehen Sie, dass es sich um DFT handelt.
Royi
5

Es ist eine unnötige (und oft falsche) Annahme. Die DFT ist nur eine Basistransformation eines endlichen Vektors.

Die Basisvektoren der DFT sind zufällig Ausschnitte von unendlich erweiterbaren periodischen Funktionen. Die DFT-Eingabe oder die Ergebnisse sind jedoch nicht von Natur aus periodisch, es sei denn, Sie erweitern die Basisvektoren außerhalb der DFT-Apertur. Viele Formen der Signalanalyse erfordern keine Erweiterung oder Annahmen außerhalb des abgetasteten Fensters oder des endlichen Datenvektors.

Es kann auch angenommen werden, dass "Leck" -Artefakte aus einer Faltung des rechteckigen Standardfensters mit einem Signal stammen, das nicht periodisch ist oder eine unbekannte Periodizität oder Stationarität aufweist. Dies ist viel sinnvoller bei der Analyse überlappender FFT-Fenster, bei denen jede Annahme einer Periodizität außerhalb eines DFT- oder FFT-Fensters mit den Daten in anderen Fenstern inkonsistent sein kann.

Die Periodizität kann die Mathematik, die die DFT mit der DTFT in Beziehung setzt, leichter nachvollziehbar machen. Eine Beziehung zur DTFT kann jedoch erforderlich sein oder auch nicht, wenn tatsächlich eine FFT für die Signalverarbeitung verwendet wird (abhängig davon, welche Fourier-Transformationseigenschaften für die weitere Analyse des Verarbeitungsverfahrens genau benötigt werden).

hotpaw2
quelle
Pfeil aus dem gleichen Grund nach unten Pfeil Ich habe Ihre neuere Antwort dazu nach unten Pfeil.
Robert Bristow-Johnson
5

Ok, meine Antwort wird etwas anders sein als die anderen Antworten. Meine Antwort akzeptiert die Prämisse der Frage und leugnet nicht die Prämisse der Frage.

Der Grund, warum die DFT das Eingangssignal "annimmt" (das zu transformierende Signal, was ich als "transformiertes Signal" bezeichne), ist periodisch, weil die DFT eine Sammlung von Basisfunktionen an dieses Eingangssignal anpasst, die alle sind periodisch.

Betrachten Sie einen anderen Satz von Basisfunktionen:

gk(u)uk0k<N

N

x[n]0n<N

gk(n)

x[n]=k=0N1X[k]gk(n)=k=0N1X[k]nk

X[k]X[k]NN

NX[k]0kN1(N1)x[n]n0nN1

0nN1 n(N1)nx[n]

Mit der DFT passen wir nun einen anderen Satz von Basisfunktionen an unsere Eingabesequenz an:

gk(u)1Ne+j2πku/N0k<N

x[n]=k=0N1X[k]gk(n)=1Nk=0N1X[k]e+j2πnk/N

X[k]

X[k]=n=0N1x[n] ej2πnk/N

1N1Nx[n]X[k]1N

Nx[n]x[n]x[n]N

robert bristow-johnson
quelle
Für ein bisschen mehr Polemik, wo ich die Vorstellung bestreite, dass die DFT die an sie übergebenen Daten nicht unbedingt regelmäßig erweitert, schauen Sie sich bitte diese vorherige Antwort von mir an . Ich würde es hier lieber nicht wiederholen.
Robert Bristow-Johnson
1

DFT ist diskret. DTFT ist kontinuierlich. Wir können DFT von DTFT erhalten, indem wir es mit der Impulsfolge der richtigen Periode abtasten, was tatsächlich gleich der Multiplikation mit der Impulsfolge ist. Die Multiplikation in der Transformationsdomäne ist gleich der Faltung in der zeitdiskreten Domäne, dies impliziert eine Periodizität des Signals.

Lerner
quelle
DTFT ist kontinuierlich? Woher?
Jojek
2
Das Ergebnis der DTFT ist kontinuierlich (in der Frequenz).
Deve
In der Tat - daher sollten Sie es klar formulieren, um Missverständnisse zu vermeiden und angemessene Gleichungen zu liefern.
Jojek
@jojek Das stimmt, ich denke auch, dass diese Antwort durch einige Gleichungen verbessert werden könnte
Deve
1
Ich werde sehr bald weitere Details hinzufügen.
Lerner
0

In der diskreten digitalen Welt ist nur DFT aufgrund der periodischen Annahme in beiden Bereichen praktisch. (Wenn Sie es so nennen.) Da nicht periodische Signale in einer Domäne ein kontinuierliches Signal in der anderen verursachen und Sie nur diskrete Signale im digitalen Speicher speichern können. Sie müssen also davon ausgehen, dass die Signale in beiden Domänen periodisch sind, um sie in beiden Domänen diskret zu machen.

Wenn Sie die DTFT berechnen, erhalten Sie als Ausgang ein kontinuierliches Signal im Frequenzbereich.
Ich glaube nicht, dass Sie das gleiche Verfahren anwenden werden, wenn Sie die DFT in der Praxis berechnen. Wenn Sie sowohl DTFT als auch DFT berechnet haben, werden Sie verstehen, dass beide Transformationsberechnungen unterschiedliche Geschichten sind.

Neugieriger Sam
quelle
0

Da das Signal periodisch ist, ändert das zeitversetzte Signal nicht die absolute Größe des Frequenzbereichs.

X[k]=k=0N1x[n]e2πinkN

e2πiDkNX[k]=k=0N1x[nD]e2πinkNe2πiDkN

Übrigens hindert Sie nichts daran, die FFT eines nichtperiodischen Signals zu nehmen, aber es ist wenig praktisch, wenn keine der Transformationen funktioniert.

FreedomToWin
quelle