Les filtres passe-bas de Butterworth, Bessel, Chebychev et sinc sont utilisés dans divers cas où il existe des compromis différents entre une réponse en fréquence uniformément décroissante, une réponse en phase uniforme, une coupure abrupte ou une réponse de "mur de briques". Je crois que tous ces filtres peuvent, dans certains cas, avoir un dépassement de leur réponse de pas, ce qui signifie que leur réponse d'impulsion est à certains endroits négative.
Quelle serait la réponse en fréquence optimale ou quels types de réponses en fréquence seraient disponibles dans un filtre dont la seule contrainte était que la réponse impulsionnelle ne pouvait être nulle part négative? Il est certainement possible d'avoir un filtre passe-bas répondant à une telle contrainte, car un filtre RC de base le fera (bien que la réponse d'un tel filtre soit un peu minable). La réponse impulsionnelle optimale serait-elle une courbe de distribution normale, ou autre chose?
Réponses:
Je vais énumérer un tas de "filtres qui ne dépassent pas". J'espère que vous trouverez cette réponse partielle meilleure que pas de réponse du tout. J'espère que les personnes qui recherchent "un filtre qui ne dépasse pas" trouveront cette liste de ces filtres utile. Peut-être que l'un de ces filtres fonctionnera correctement dans votre application, même si nous n'avons pas encore trouvé le filtre mathématiquement optimal.
filtres causaux LTI de premier et deuxième ordre
La réponse pas à pas d'un filtre de premier ordre ("filtre RC") ne dépasse jamais.
La réponse pas à pas d'un filtre de second ordre ("biquad") peut être conçue de telle sorte qu'elle ne dépasse jamais. Il existe plusieurs façons équivalentes de décrire cette classe de filtre de second ordre qui ne dépasse pas une entrée d'étape:
En particulier, une topologie de filtre Sallen – Key à gain unitaire avec des condensateurs égaux et des résistances égales est amortie de façon critique: Q = 1/2, et ne dépasse donc pas une entrée pas à pas.
Un filtre de Bessel de second ordre est légèrement sous-amorti: Q = 1 / sqrt (3), donc il a un petit dépassement.
Un filtre Butterworth de second ordre est plus sous-amorti: Q = 1 / sqrt (2), donc il a plus de dépassement.
Parmi tous les filtres LTI de premier ordre et de second ordre possibles qui sont causaux et ne dépassent pas, celui avec la "meilleure" réponse en fréquence (la plus raide) sont les filtres de second ordre "à amortissement critique".
filtres causaux LTI d'ordre supérieur
Le filtre causal d'ordre supérieur le plus couramment utilisé qui a une réponse impulsionnelle qui n'est jamais négative (et donc ne dépasse jamais sur une entrée de pas) est le «filtre de moyenne courante», également appelé «filtre de wagon plat» ou « filtre de moyenne mobile ".
Certaines personnes aiment exécuter les données à travers un filtre boxcar et la sortie de ce filtre dans un autre filtre boxcar. Après quelques filtres de ce type, le résultat est une bonne approximation du filtre gaussien. (Plus vous filtrez en cascade, plus la sortie finale se rapproche d'une gaussienne, quel que soit le filtre avec lequel vous commencez - boxcar, triangle, RC de premier ordre ou tout autre - en raison du théorème de la limite centrale).
Pratiquement toutes les fonctions de fenêtre ont une réponse impulsionnelle qui n'est jamais négative, et peuvent donc en principe être utilisées comme des filtres FIR qui ne dépassent jamais une entrée pas à pas. En particulier, j'entends de bonnes choses à propos de la fenêtre de Lanczos , qui est le lobe central (positif) de la fonction sinc () (et zéro à l'extérieur de ce lobe). Quelques filtres de mise en forme d'impulsion ont une réponse impulsionnelle qui n'est jamais négative et peuvent donc être utilisés comme des filtres qui ne dépassent jamais une entrée pas à pas.
Je ne sais pas lequel de ces filtres est le meilleur pour votre application, et je soupçonne que le filtre mathématiquement optimal peut être légèrement meilleur que n'importe lequel d'entre eux.
filtres causaux non linéaires
Le filtre médian est un filtre non linéaire populaire qui ne dépasse jamais une entrée de fonction pas à pas.
EDIT: filtres non causals LTI
La fonction sech (t) = 2 / (e ^ (- t) + e ^ t) est sa propre transformée de Fourier, et je suppose qu'elle pourrait être utilisée comme une sorte de filtre LTI passe-bas non causal qui ne dépasse jamais entrée pas à pas.
Le filtre LTI non causal qui a la réponse impulsionnelle (sinc (t / k)) ^ 2 a une réponse en fréquence "abs (k) * triangle (k * w)". Lorsqu'une entrée de pas est donnée, elle a beaucoup d'ondulations dans le domaine temporel, mais elle ne dépasse jamais le point de stabilisation final. Au-dessus du coin haute fréquence de ce triangle, il donne une réjection parfaite de la bande d'arrêt (atténuation infinie). Ainsi, dans la région de la bande d'arrêt, il a une meilleure réponse en fréquence qu'un filtre gaussien.
Je doute donc que le filtre gaussien donne la "réponse en fréquence optimale".
Dans l'ensemble de tous les "filtres qui ne dépassent pas", je soupçonne qu'il n'y a pas une seule "réponse en fréquence optimale" - certains ont une meilleure réjection de la bande d'arrêt, tandis que d'autres ont des bandes de transition plus étroites, etc.
la source
La plupart des filtres utilisés dans le monde numérique ne sont que des versions échantillonnées de l'homologue analogique. Une grande raison à cela est qu'il y avait beaucoup de travail effectué dans le filtrage analogique avant l'arrivée du numérique, donc plutôt que de réinventer la roue, la plupart des modèles antérieurs utilisés. L'avantage du numérique est cependant qu'un filtre d'ordre supérieur peut être obtenu beaucoup plus facilement que dans le monde analogique. Imaginez simplement un circuit complexe à chaque fois que vous ajoutez un autre ordre à la conception.
Si vous optez pour un filtre de type mur de briques, la courbe gaussienne est un très bon point de départ. Si vous connaissez le domaine temporel <-> domaine fréquentiel; un gaussien se transforme en gaussien dans l'autre domaine. À mesure qu'il s'enroule dans l'un, il se rétrécit dans l'autre. Donc, pour obtenir un pic parfait dans le domaine fréquentiel, vous auriez besoin d'une quantité infinie d'échantillons.
S'il vous arrive d'avoir Matlab disponible pour utilisation, vous devriez vérifier certains des outils de conception de filtres intégrés. Voici un lien qui parle de Butterworth et Bessel . Les outils de conception vous permettent de spécifier certains aspects du filtre. Ces aspects changent pour chaque type de filtre, mais certains exemples sont la bande passante, la bande d'arrêt, l'ondulation, etc. ) ou il vous donnera un filtre avec la commande minimum requise pour répondre aux spécifications.
la source