Comment appliquer une fenêtre de fonction à un signal?

9

Comment puis-je appliquer une fonction de fenêtre comme Hamming ou Lanczos à un signal, en utilisant ses coefficients?

Je veux dire, quelle méthode puis-je utiliser pour ce faire? FFT? Convolution? Quelle méthode a les meilleures performances?

walteram
la source
4
On fait généralement une multiplication vectorielle d'une fonction de fenêtre, mise à l'échelle à la même longueur de vecteur que les données et le vecteur de données, avant une FFT.
hotpaw2
Veuillez décrire votre candidature plus en détail.
nibot

Réponses:

3

J'ai écrit cette longue réponse pour quelqu'un hier sur stackoverflow.com. .

/programming/9694297/matlab-fft-xaxis-limits-messing-up-and-fftshift/9699983#9699983

Il s'agit d'un exemple basé sur matlab montrant comment utiliser la FFT pour l'analyse, mais il pourrait vous donner quelques idées À mi-chemin du deuxième bloc de code, j'applique une fonction de fenêtre à un signal tamponné. Il s'agit en fait d'une multiplication vectorielle de la fonction de fenêtre avec chaque bloc tamponné de données de série chronologique. J'utilise simplement une astuce de matrice diagonale sournoise pour le faire efficacement.

learnvst
la source
15

Comment puis-je appliquer une fonction de fenêtre comme Hamming ou Lanczos à un signal, en utilisant ses coefficients?

Multipliez simplement, point par point.

nibot
la source