Filtrer la règle d'or


8

Existe-t-il une règle de base pour calculer l'ordre de filtrage approximatif d'un FIR / IIR en fonction de la bande passante par rapport à la fréquence d'échantillonnage? Je crois me souvenir d'avoir lu à ce sujet une fois au premier cycle. Je pense que vous pourriez faire une estimation grossière comme le scaler * passband / stopband.

J'ai travaillé sur la mise en œuvre de différents filtres FIR / IIR et je voudrais une formule approximative qui dit que si une variable est modifiée, c'est approximativement combien de taps supplémentaires vous auriez besoin pour obtenir des performances similaires.


Pour les filtres FIR, une réponse est donnée dans cette réponse .
Matt L.

Réponses:


11

Ma "règle d'or" préférée pour l'ordre d'un filtre FIR passe-bas est la "règle d'or fred harris":

N=[Fs/eltune(F)][unetten(B)/22]

où delta (f) est la bande de transition, dans les mêmes unités de est la fréquence d'échantillonnage du filtre atten (dB) est la réjection cible en dBFs Fs

Par exemple, si vous avez une bande de transition de 100 Hz dans un système échantillonné à 1 KHz et que votre exigence de rejet est de 50 dB dans la bande d'arrêt, l'ordre peut être approximé par:

N = 1 KHz / 100 Hz * 50/22 = 23 prises (arrondi)

Merci Fred Harris!

Notez une autre formule plus détaillée qui prend en compte l'ondulation de la bande passante est la formule de Kaiser grâce à James Kaiser de Bell Labs, que j'ai inclus dans mon graphique ci-dessous.

Pour la plupart des applications que j'ai faites, l'approche de fred harris a été très bien, étant donné un certain rejet, les filtres résultants utilisant des algorithmes de conception de filtres traditionnels tels que Parks-McClellan et Remez ont dépassé mes exigences d'ondulation de bande passante après avoir satisfait à l'exigence de rejet. (Ce que je fais habituellement, c'est estimer l'ordre, concevoir le filtre avec cet ordre, inspecter le résultat et augmenter ou diminuer l'ordre à partir de là pour affiner). Les résultats des estimations ne sont que des estimations et peuvent varier considérablement en fonction des paramètres de conception globaux et ne doivent pas être considérés comme une solution exacte.

entrez la description de l'image ici

Pour ceux qui sont familiers avec la conception de filtres utilisant des approches de fenêtre, l'examen du wagon couvert ou de la fenêtre rectangulaire (qui est une troncature simple) révèle pourquoi il faut taps (ce qui équivaut à si les unités pour la fréquence normalisée sont des radians / échantillon comme cela est souvent fait) pour compléter la bande de transition. Voir les images ci-dessous qui expliquent cela.Fs/ΔF2π/Δω

La première image ci-dessous montre le Sinc attendu en fréquence pour une fenêtre rectangulaire dans le temps, puis sous forme discrète, où il s'agit d'une fonction Sinc aliasée, avec le point clé que pour N échantillons dans le temps de la fonction rectangulaire, la réponse en fréquence sera ont son premier nul à f = 1 / N (où f est la fréquence normalisée avec 1 étant la fréquence d'échantillonnage).

Fréq et temps pour fenêtre rectangulaire

Cette image suivante montre l'approche de la fenêtre rectangulaire pour la conception du filtre (que je ne recommanderais jamais mais qui est informative). Le premier tracé dans le coin supérieur gauche montre la réponse en fréquence cible pour notre filtre comme une réponse idéale de "mur de briques". Veuillez ne pas confondre cela avec la "fenêtre du wagon couvert" (ou "fenêtre rectangulaire") qui est également une forme rectangulaire - la fenêtre est dans le domaine temporel!

Afin de réaliser un tel filtre, nous utiliserions la réponse impulsionnelle de la réponse en fréquence souhaitée comme coefficients dans notre filtre FIR (les coefficients du filtre sont la réponse impulsionnelle --- mettez une impulsion dans et sortez tous les coefficients! ). La réponse impulsionnelle pour une réponse en fréquence rectangulaire (brickwall) est l'inverse FT qui est une fonction Sinc, dans le domaine temporel, indiquée dans le coin inférieur gauche comme la "réponse impulsionnelle requise". Une fonction Sinc s'étend à l'infini plus et moins, donc pour réaliser réellement un tel filtre, nous aurions besoin d'un filtre infiniment long et il aurait un retard infiniment long. Évidemment, nous ne pouvons pas le faire, nous tronquons donc les coefficients à quelque chose de réalisable. Plus le filtre est long, plus nous nous rapprochons de la réponse idéale du mur de briques,

La troncature de la réponse impulsionnelle dans le domaine temporel est mathématiquement identique à la multiplication par une fenêtre rectangulaire dans le domaine temporel. (Notez que la réponse impulsionnelle est également retardée de la moitié de la durée de la fenêtre pour que le système soit causal). La multiplication dans le domaine temporel équivaut à la convolution dans le domaine fréquentiel. Le domaine de fréquence (FT) de la réponse impulsionnelle avant la troncature est notre réponse en fréquence de brickwall souhaitée d'origine. La réponse en fréquence pour la fenêtre rectangulaire est une fonction Sinc dans le domaine fréquentiel.

Ainsi, lorsque nous tronquons la réponse impulsionnelle souhaitée (multipliée dans le temps par une fenêtre rectangulaire), nous convolutons la réponse en fréquence souhaitée avec une fonction Sinc, ce qui donne une approximation de notre réponse en fréquence cible, comme indiqué dans le coin supérieur droit de l'image au dessous de.

Réponse en fréquence après fenêtrage

Une clé à retenir pour les fonctions Sinc en général est que le premier nul est 1 / T où T est la durée de la fonction rectangulaire. Pour un système échantillonné, le premier nul serait à où N représente le nombre d'échantillons pour la durée de la fonction rectangulaire. Dans les images, une fréquence de radian normalisée est utilisée pour l'axe des fréquences - (si cela prête à confusion, vous savez simplement que est la fréquence de radian pour la fréquence d'échantillonnage). Ainsi, dans le processus de convolution, la transition nette de brickwall se propage et dans ce cas passe à 0 (notre ) sur une fréquence de ! Voici donc2π/N2πΔω2π/N

N=2π/Δω
et bien sûr, le filtre est médiocre avec les lobes latéraux, etc. Notez ceci: Cette transition de la fonction Sinc est la plus nette disponible pour un nombre donné de prises; il a la meilleure résolution en fréquence mais la plage dynamique la plus faible (réjection). D'autres typologies de fenêtres (Blackman, Blackman-harris, Kaiser (mon préféré), etc.) amélioreront considérablement la plage dynamique mais toujours au détriment de la transition.

N touches pour terminer la transition

Donc, d'après ce qui précède, nous voyons l'origine de l' qui est utilisé dans les formules d'approximation, et nous voyons également pourquoi il existe un facteur de multiplication supplémentaire augmentant le nombre de prises au-dessus de cela pour les conceptions de filtres typiques; la fenêtre rectangulaire nous donnerait la meilleure transition possible avec N prises où mais avec un très mauvais rejet. Plus de prises sont utilisées pour lisser la transition temporelle au-delà de la transition nette de la fenêtre rectangulaire, offrant une plus grande réjection au détriment de la bande passante de transition.2π/ΔωN=2π/Δω


1
Juste pour éviter toute confusion, la formule que vous appelez «formule de Kaiser» est en fait la formule pour les filtres optimaux de Parks McClellan (en effet trouvée par Kaiser), mais pas pour la méthode de fenêtre de Kaiser. Ce dernier n'a pas deux valeurs différentes mais une seule. δ
Matt L.

En effet, bonne clarification Matt puisqu'il existe une méthode de fenêtre Kaiser. Cette formule est cependant appelée et connue sous le nom de «formule de Kaiser» dans la littérature, juste pour que les lecteurs ne pensent pas que c'était ma propre utilisation de ce terme. engold.ui.ac.ir/~sabahi/Advanced%20digital%20communication/…
Dan Boschen

Impressionnant! On dirait que cela vient de la page 48 du livre de Fred Harris: "Traitement du signal multi-débit pour les systèmes de communication"?
jeremy

La règle d'or ou les photos? Les photos sont les miennes pour un cours que je fais. Je n'ai pas le livre de Fred mais je suis un grand fan et j'ai été initié à sa "règle d'or" par lui lors d'une présentation DSP World qu'il a faite vers 1996. (Notez qu'il insiste pour que son nom soit orthographié en minuscules) ).
Dan Boschen

@DanBoschen La formule de Parks McClellan est-elle également valable lors de la conception de filtres FIR passe-bande? Sinon, existe-t-il une autre "règle d'or" qui pourrait être appliquée?
lR8n6i

3

La longueur d'un filtre FIR ou l'ordre d'un filtre IIR est très approximativement inversement proportionnelle au rapport de la largeur de la bande de transition (la plus étroite, s'il y en a plusieurs) à la fréquence d'échantillonnage, d'autres choses étant quelque peu équivalentes, sauf pour très courte ou très filtres d'ordre inférieur.


ne sais pas pourquoi quelqu'un a voté contre. je l'ai remis à zéro.
robert bristow-johnson

d'autres choses étant quelque peu équivalentes?
Ben
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.