Si j'ai un signal qui est limité dans le temps, disons une sinusoïde qui ne dure que secondes, et je prends la FFT de ce signal, je vois la réponse en fréquence. Dans l'exemple, ce serait un pic à la fréquence principale de la sinusoïde.
Maintenant, disons que je prends ce même signal temporel et que je le retarde d'une constante de temps, puis que je prends la FFT, comment les choses changent-elles? La FFT est-elle en mesure de représenter ce délai?
Je reconnais qu'un délai représente un changement de dans le domaine fréquentiel, mais j'ai du mal à déterminer ce que cela signifie réellement .
En pratique, le domaine fréquentiel est-il un endroit approprié pour déterminer le délai entre différents signaux?
fft
fourier-transform
delay
gallamine
la source
la source
Réponses:
La transformée de Fourier discrète (DFT) , généralement mise en œuvre par la transformée de Fourier rapide (FFT) , mappe une séquence de longueur finie d'échantillons de domaine temporel discrets en une séquence de longueur égale d'échantillons de domaine de fréquence. Les échantillons dans le domaine fréquentiel sont en général des nombres complexes; ils représentent des coefficients qui peuvent être utilisés dans une somme pondérée de fonctions exponentielles complexes dans le domaine temporel pour reconstruire le signal d'origine dans le domaine temporel.
Ces nombres complexes représentent une amplitude et une phase associées à chaque fonction exponentielle. Ainsi, chaque nombre dans la séquence de sortie FFT peut être interprété comme:
Vous pouvez l'interpréter comme suit: si vous voulez reconstruire x [n], le signal avec lequel vous avez commencé, vous pouvez prendre un tas de fonctions exponentielles complexes , pondérez chacun parX[k]=Akejϕk, et additionnez-les. Le résultat est exactement égal (avec une précision numérique) àx[n]. Ceci est juste une définition mot de la DFT inverse.ej 2 πn kN, k = 0 , 1 , … , N- 1 X[ k ] = Akej ϕk x [ n ]
Donc, en réponse à votre question, les différentes saveurs de la transformée de Fourier ont la propriété qu'un retard dans le domaine temporel correspond à un déphasage dans le domaine fréquentiel. Pour la DFT, cette propriété est:
x [ n - D ] ↔ e - j 2 π k D
Autrement dit, si vous retardez votre signal d'entrée de échantillons, alors chaque valeur complexe dans la FFT du signal est multipliée par la constante e - j 2 π k Dré . Il est courant que les gens ne réalisent pas que les sorties de la DFT / FFT sont des valeurs complexes, car elles sont souvent visualisées uniquement en magnitudes (ou parfois en magnitude et en phase).e- j 2 πk DN
Edit: Je tiens à souligner qu'il existe certaines subtilités à cette règle pour la DFT en raison de sa finesse dans la couverture temporelle. Plus précisément, le décalage de votre signal doit être circulaire pour que la relation soit maintenue; c'est-à-dire que lorsque vous retardez de D échantillons, vous devez envelopper les derniers échantillons D qui se trouvaient à la fin de x [ n ] à l'avant du signal retardé. Cela ne correspondrait pas vraiment à ce que vous verriez dans une situation réelle où le signal ne démarre juste qu'après le début de l'ouverture DFT (et est précédé de zéros, par exemple). Vous pouvez toujours contourner ce problème en remplissant à zéro le signal d'origine x [ nx [ n ] ré ré x [ n ] sorte que lorsque vous retardez de D échantillons, vous enveloppez simplement les zéros vers l'avant de toute façon. Cette relation ne s'applique qu'à la DFT car elle est finie dans le temps; cela ne s'applique pas à la transformée de Fourier classique ou àla transformée de Fourier à temps discret.x [ n ] ré
la source
Gallamine,
Cela signifie simplement qu'il y aura un décalage de phase dans votre vecteur FFT. Lorsque vous FFT votre signal (réel), votre réponse sera complexe, vous aurez donc une partie réelle et imaginaire. Si vous avez pris leur phase, (inverse_tangent (imag / real)), cela affichera toutes les phases des fréquences. La façon dont leurs phases diffèrent si vous n'aviez pas de retard est directement liée au retard que vous avez dans le temps.
(Dans matlab, vous pouvez également obtenir la phase simplement en "angle (fft_result)").
Soit dit en passant, si vous effectuez une corrélation de votre signal avec retard et sans retard et choisissez le pic, vous pouvez obtenir le retard de cette façon. Dans le domaine freq, il soustrait toutes les phases de votre signal sans retard, de tout le signal avec retard, et prend la moyenne.
la source
la source