2012-04-02 8 views
0

Bonjour mes collègues processeurs de signal!Traitement du signal: Le signal de fenêtrage améliore le rejet de la bande d'arrêt, pourquoi?

Lorsque je filtre un signal de bande passante, le rejet de la bande d'arrêt est beaucoup mieux après avoir également fenêtré le signal avec une fenêtre de Hanning. Le rejet a été évalué en regardant la DFT. Sur la Fig. 1, vous pouvez clairement voir que le contenu de la fréquence dans la bande d'arrêt est beaucoup plus faible après fenêtrage.

Est-ce que quelqu'un a une idée de pourquoi cela se produit? Je vous remercie!

(désolé, je ne peux pas poster des photos apparemment, la figure 1 est en pdf.)

http://people.ee.ethz.ch/~jrichner/effect_of_windowing.pdf Figure 1. En haut:. DFT du bruit blanc gaussien. milieu: DFT de bruit blanc gaussien, filtré par bande. en bas: DFT de bruit blanc gaussien, filtré par bande et fenêtré

EDIT: Je suis maintenant assez sûr que l'effet que nous observons est dû à spectral leakage. Le fait de faire passer le signal filtré par bande avec une fenêtre de Hanning réduit la fuite dans la bande d'arrêt, ce qui améliore les performances du filtre. Merci d'avoir commenté et lu!

+0

Bonne question et très bien demandé! J'ai un peu de mal à interpréter les spectres que je regarde - pourriez-vous poster le code qui les a générés? En particulier, il serait bon de savoir quel filtre de bande passante vous utilisez, et quelle méthode de fenêtrage. –

+0

Merci d'avoir pris le temps de lire et de répondre!
1) Le filtre coupe-bande est un filtre elliptique IIR conçu avec fdatool.
2) Une fenêtre de Hanning a été utilisée.
Code: % créer fenêtre de levage vent = hanning (1024) '; % créent du bruit blanc gaussien x = randn (1, 1024); specx = abs (fft (x)); % filtrer le bruit avec bande elliptique xf = filtre (bandstop_elliptic_60db, x); specxf = abs (fft (xf)); DFT de calcul du bruit fenêtré et filtré: specxfw = abs (fft (xf. * Vent)); % de tracé [nombre de caractères insuffisant.] – jrichner

+0

Comme vous pouvez le voir, StackOverflow n'autorise pas beaucoup de mise en forme dans les commentaires. Au lieu d'essayer de fournir des informations substantielles dans les commentaires, éditez votre question originale pour inclure tout ce que vous venez d'écrire (utilisez la syntaxe de formatage du code le cas échéant.) –

Répondre

0

Le fenêtrage d'un signal temporel correspond à une convolution dans le domaine fréquentiel. Dans votre cas, vous affichez la sortie du filtre, qui a de faibles valeurs spectrales autour de votre fréquence de bande passante. Par conséquent, quand vous convolvez un tel spectre avec votre spectre de fenêtre, les valeurs spectrales qui sont déjà grandes deviennent plus grandes et les valeurs qui sont plus petites deviennent plus petites. En outre, cela fonctionne en raison du fait que le bruit blanc a un spectre plat, donc vous ne modifiez pas les fréquences autres que votre fréquence de bande.

+0

Merci pour votre réponse! Je suis d'accord avec la première phrase.La deuxième phrase je ne comprends pas.Pourquoi est-ce arrivé? Ma compréhension de la fenêtre est que cela équivaut à un lissage dans le domaine fréquentiel. Je me suis trompé. – jrichner