Filtrage Numérique
RIF & RII
Contenu du cours
Introduction
Caractérisations des filtres numériques
Réponse impulsionnelle,
Equation aux différences,
Fonction de transfert en z
Etude des filtres RIF
Caractéristiques et propriétés
Synthèse des filtres RIF
Synthèse des filtres RII
Méthode de l'invariance impulsionnelle
Transformation bilinéaire
2
Pourquoi des filtres numériques ?
2 critères pour comparer :
nombre de poles et de zéros
rapidité
Avantages du numérique:
Reproductibilité
Souplesse (chgt de coefficients)
Mise en série de filtres
Insensibilité au bruit
Stabilité des caractéristiques avec le temps, la T°, etc.
3
Caractérisations d'un filtre numérique
Filtre = système, => Réponse impulsionnelle h(n)
∞
x(n) Filtre h(n) y (n) avec y n=hn∗x n= ∑ h m x n−m
m=−∞
Remarque : h(n) peut être infini => calculs délicats
Equation aux différences (relation entrée-sortie)
N M
∑ ak y (n − k ) = ∑ br x(n − r ) Calculs finis !
k= 0 r= 0
Fonction de transfert en z
N M
y ( n) = h( n) ∗ x ( n) ∑ ak y (n − k ) = ∑ br x(n − r )
k= 0 r= 0
ou bM z − M + + b1z − 1 + b0
Y ( z ) = X ( z ).H ( z ) H ( z) =
a N z − N + + a1z − 1 + a0
4
Filtres numériques : problématique
|H( f )|
Synthèse de filtres : étant donné un gabarit, 1+δ1
1-δ1
comment trouver les coefficients de h(n) ou H(z) ?
δ2
f
fc f s
Avec les contraintes suivantes sur h(n) :
Causalité du filtre
Le filtre est causal ssi la réponse impulsionnelle est causale h( n) = 0 ∀n< 0
Stabilité +∞
Le filtre est stable ssi la réponse impulsionnelle est absolument sommable ∑ h( n) < ∞
n= − ∞
Pour H(z), les contraintes sont :
Un filtre numérique linéaire et causal est stable ssi tous
les pôles λi ∈ ℂ
de H(z) sont à l'intérieur du cercle unité
ℂ / z > ma x( λ i )
En considérant un filtre causal, la RDC est donnée par RDC = z ∈
i
Comment réaliser le filtre ?
La méthodologie dépend du type de filtre : RIF ou RII
5
Caractérisations d'un filtre numérique
∞
x(n) Filtre h(n) y (n) avec y n=hn∗x n= ∑ h k x n−k
k=−∞
Problème : h(n) potentiellement infini !
Deux solutions = deux types de filtres
Réponse impulsionnelle finie (RIF) : limitation à M du nombre d'échantillons
∞
Réponse impulsionnelle : Filtre causal => yn=hn∗xn= ∑ hkxn−k Toujours stables
k=−∞
M
Equation aux différences : N=0 => y (n) = ∑ br x(n − r ) réponse non récursive
r= 0
Réponse impulsionnelle infinie (RII) : mémorisation des sorties
∞
Réponse impulsionnelle infinie : Filtre causal => y n=∑ h k x n−k stabilité à vérifier
k =0
Mémorisation du signal de sortie => la réponse impulsionnelle infinie peut se calculer en un
temps fini
N M
Équation aux différences : N≥1 => y (n) = − ∑ ak y ( n − k ) + ∑ br x(n − r ) réponse récursive
k= 1 r= 0
6
Filtre à réponse impulsionnelle finie (RIF)
Propriétés
Stabilité inconditionnelle
N−1
Les filtres à réponse impulsionnelle finie sont
H ( z) = ∑ bn z − n
toujours stables car ils n'admettent pas de pôles.
n= 0
Approximation
Toute fonction de filtrage numérique stable et causale peut être approchée
par la fonction de transfert d'un filtre RIF
Phase linéaire
Les filtres RIF peuvent générer des filtres à phase linéaire
Si un filtre est à phase linéaire, sa réponse fréquentielle est de la forme
H ( f ) = R ( f )e − jϕ ( f ) ϕ ( f ) = ϕ 0 + 2π fτ τ : constante
x(n) = a cos(2π fn) Filtre à phase linéaire y (n) = aR( f ) cos(2π fn + ϕ 0 + 2π fτ )
On montre qu'un filtre FIR est à phase linéaire si ses coefficients sont symétriques
h( n) = h( N − 1 − n )
7
Filtre à réponse impulsionnelle finie (RIF)
Exemple
1
Soit le filtre défini par la relation entrée-sortie suivante : y ( n) =
4
( x(n) + 2 x(n − 1) + x(n − 2) )
Réponse impulsionnelle Réponse fréquentielle
1
h( n) =
4
( δ (n) + 2δ (n − 1) + δ (n − 2) ) (Voir TD)
H ( f ) = e− j 2π f cos 2 (π f )
• Module H ( f ) = cos 2 (π f ) • Phase arg( H ( f ) ) = − 2π f
Filtre passe-bas On remarque que la phase est linéaire par rapport à f
8
Méthodes de synthèse d'un filtre numérique RIF
Il existe de nombreuses méthodes
Méthode de la fenêtre
Optimisation par moindres carrés
Calcul des coefficients par approximation de tchebycheff
Par TFD récursive
etc.
9
Synthèse de filtre RIF
Méthode de la fenêtre
Problématique
A partir du gabarit fréquentiel, effectuer la synthèse d'un filtre RIF réalisable (causalité) à
phase linéaire contrainte de symétrie des coefficients
h( n) = h( N − 1 − n) N−1
avec 0≤ n≤
2
Gabarit réel continu
Filtre caractérisé par :
|H( f )| la bande passante BP
1+δ1
la bande atténuée (ou coupée)
1-δ1
la largeur ∆F de la zone de transition
δ2
l'amplitude des oscillations en bande
passante δ1
f
fc fs l'amplitude des ondulations en bande
atténuée δ2
∆ F = f s − f c : largeur de la bande de transition
10
Synthèse de filtre RIF
Méthode de la fenêtre : méthodologie
2 1 F
A partir du gabarit réel du filtre, déterminer la longueur de la RIF : N≈
M log10 ( ) e
(rmq : bande de transition + importante que les oscillations) 3 10δ 1δ 2 ∆ f
A partir du gabarit idéal du filtre, on peut déterminer les coefficients du filtre par TFTD-1.
1/ 2
h(n) symétrique car H(f) réel -> linéaire
h( n) = ∫ H ( f )e j 2π fn df
en revanche, h(n) est potentiellement infini
− 1/ 2
Limitation de la réponse impulsionnelle à N échantillons (troncature)
Pondération de la réponse impulsionnelle idéale h(n) par une suite discrète w(n) : hN ( n) = h( n).w( n)
Exemple : w(n) est la fenêtre rectangulaire.
En fréquence, on a donc :
sin( Nπ f )
HN ( f ) = H( f )∗ W( f ) avec W( f ) =
sin(π f )
|H( f )| Fe / 2 B/2
f1 + f 2
h( n ) = ∫ H ( f )e j 2π fn df h( n ) = ∫ H ( f )e j 2π fn df avec B =
2
Avec H(f) : − Fe / 2 − B/2
sin(π Bn)
h( n) =
f1 f2 f πn
11
Synthèse de filtre RIF
Méthode de la fenêtre : méthodologie
On a trouvé la réponse hN(n), mais celle ci est centrée sur 0
Donc elle n'est pas causale !
Solution :
En la retardant de N/2
échantillons, la réponse
impulsionnelle devient causale !
Facile à implémenter car numérique.
(mémoires à décalage)
Mathématiquement, cela revient à multiplier HN(f) par un exponentiel complexe
=> déphasage, mais déphasage linéaire 2pi f
12
Synthèse de filtre RIF : exemple
Méthode de la fenêtre : effets de la limitation du nombre d'échantillons à N
hN (n) = h(n).w(n) Allure de W( f ) pour une fenêtre rectangulaire
HN ( f ) = H( f )∗ W( f )
A
Fenêtre de pondération
Réponse idéale f
Réponse obtenue par limitation du nb d'échantillon à N l
•La pondération temporelle introduit des ondulations et
H( f ) HN ( f ) limite la raideur de coupure du filtre. Un compromis est à
faire entre la raideur et l'amplitudes des ondulations.
• Cette méthode donne des ondulations de même amplitude
dans la bande passante et dans la bande atténuée.
13
Synthèse de filtre RIF : méthode de la fenêtre
Choix de la fenêtre de pondération
|W( f )|
Critères de qualité :
l : largeur du lobe principal
A A : amplitude des lobes secondaires
f
l
Remarque AdB l ∆F δ2 (dB)
Relation entre la longueur N
Rectangulaire -13 4/N 0.9/N -21
de la fenêtre et la bande de N .∆ F = c ste Hanning -31 8/N 3.1/N -44
transition ∆F du filtre obtenu Hamming -41 8/N 3.3/N -53
Blackman -57 12/N 5.5/N -74
Qq propriétés des fenêtres
Réglages
Si N croit, l décroît bande de transition ∆F faible
δ2 désirée choix type de fenêtre
A est indépendant de la longueur de la fenêtre
On ne peut pas réduire simultanément A et l ∆F désirée choix de N
14
Synthèse de filtre RIF : méthode de fenêtre
Choix de la fenêtre
Types de fenêtre utilisée de longueur N ou d'ordre N-1
Bartlett
Hanning Hamming N − 1
2 n −
w( n) = 0.5 − 0.5 cos
2π n
w(n) = 0.54 − 0.46 cos
2π n
2
N − 1 N − 1 w(n) = 1 −
N−1
15
Synthèse de filtre RIF
Il existe d'autres méthodes :
Méthode itérative par TFD :
Initialiser h(n) sur N points au hasard
1) Calculer la TFD sur N0 points avec N0>N, et forcer les valeurs de H(k)
n'étant pas dans le gabarit
-1
2) Faire une TFD sur N0 points et ne conserver que N points autour de
l'origine
3) recommencer en 1) jusqu'à ce qu'un critère d'erreur soit satisfait
Moindres carrés
Idée : calculer les coefficients de h(n) de manière à ce que la fonction de
transfert approche la fonction voulue par un critère de moindres carrés.
Calcul des coefficients par approximation de tchebycheff
Approximation de la fonction de transfert par un polynôme au sens de
tchebycheff, ce qui permet d'obtenir des ondulations d'amplitude constante
...
16
Réalisation des filtres numériques
Réalisation de filtres RIF
N−1
Filtre causal à réponse impulsionnelle finie de longueur N : y ( n) = ∑ x ( n − k ) h( k )
k= 0
3 opérations élémentaires :
Retard (registre à décalage)
Opérateurs arithmétiques + et *
Registres pour la pondération
Réalisation non-récursive
x(n) z-1 z-1 z-1
h(0) h(1) h(2) h(N−2) h(N−1)
+ + + + + y(n)
17
Filtre à réponse impulsionnelle infinie (RII)
Synthèse des filtres RII
Principe
• Calculer un filtre analogique H(s)
• Transformer le filtre analogique en un filtre numérique équivalent H(z)
Contraintes Plan des s
• Transformer une fonction rationnelle H(s) Plan des z
r=1
en une fonction rationnelle H(z)
• Conserver la stabilité du filtre analogique
Transformer le demi-plan complexe gauche en l'intérieur du cercle unité
Transformer l'axes des imaginaires en cercle unité
Méthodes
• Conservation de la réponse impulsionnelle du filtre analogique ("numérisation")
• Transformation bilinéaire
18
Filtre RII : synthèse
Méthode de l'invariance impulsionnelle
Principe : On échantillonne la réponse impulsionnelle d'un filtre analogique connu
−1 Echantillonnage
H a ( s ) TL
→ ha (t ) → hd (nTe ) = ha (t ) t = nT
e
Réponse en fréquence
+∞
1 k
L'échantillonnage de ha(t) entraîne une périodisation du spectre H d ( f ) =
Te ∑ Ha f +
Te
k= − ∞
Condition de Shannon à respecter par conséquent
Pôles : Correspondance entre les pôles de H(s) et les pôles de H(z) : b e bT e
Exemple : soit le filtre analogique défini par :
TL-1 échantillonnage TZ
1 bnT e 1 z
H s = h t=e bt h nT e =e H z= bT e
= bT
s−b 1−e z−1 z −e e
Si Re(b)<0, alors |exp(b)|<1 : le pôle du filtre numérique appartient au cercle unité
On a donc bien une conservation de la stabilité
Précautions
La réponse du filtre numérique sera proche de celle du filtre analogique dans la bande [−Fe/2, Fe/2]
si le filtre analogique a une réponse fréquentielle nulle en dehors de cette bande. Cette méthode
est utile seulement dans le cas de filtres analogiques à bande limitée. 19
Filtre RII : synthèse
Transformation bilinéaire
2 1− z− 1
Passer de H ( s ) → H ( z ) avec s= . (1) Te : fréquence d'échantillonnage
Te 1 + z − 1
Pôles z=
2 / Te + s Plan des s
2 / Te − s Plan des z
Si s a une partie réelle négative, z est de module r=1
inférieur à 1 conservation de la stabilité
Déformation des fréquences
La transformation entraîne une relation non linéaire 1
entre les fréquences fa du domaine analogique et les π fa = tan(π f d Te) (2)
Te
fréquences fd du domaine numérique
Distortion harmonique 1
fd = tan − 1 (π f aTe ) (3)
π Te
Méthodologie
- Définir le gabarit du filtre numérique
- Convertir ce gabarit en un gabarit correspondant au filtre analogique par la relation (2)
- Faire la synthèse du filtre analogique (Butterworth, Tchebychev …) Ha(s)
- Transformer Ha(s) en Hd(z) en utilisant (1)
20
Transformation bilinéaire
Exemple
On utilise des fonctions modèles classiques de types filtres de Butterworth, Tchebychev….
ω c2
Soit un filtre de Butterworth analogique H ( s) = 2
s + 2ω c s + ω c2
2 1− z− 1
On applique la transformation bilinéaire s= .
Te 1 + z− 1
Après calcul et en prenant ωc= 2 Te = 2 0.0302( z 2 + 2 z + 1)
H ( z) = 2
z − 1.4514 z + 0.5724
H( f ) Fréquence de coupure du filtre analogique
Fc =0.318 Hz
Fréquence de coupure du filtre numérique
1
F c= tan−1 0.318∗2 Fc=0.176 Hz
2
21
Classification des filtres numériques
Réalisation des filtres
Réalisation récursive
N M
Filtre causal à réponse impulsionnelle infinie : y ( n) = − ∑ ak y (n − k ) + ∑ br x(n − r )
k= 1 r= 0
b0
x(n) + + y(n)
z-1 z-1
b1 + -a1
+
z-1 z-1
b2 -a2
+
+
bM−1 + -aN-1
+
z-1 z-1
bM + -aN
+
22
Comparaison RIF - RII
• Conclusion sur les filtres
RIF RII
Toujours stable. Peuvent être instables.
Phase linéaire. Phase non linéaire.
Facile à concevoir. Nécessitent moins d ’opérations et de
La durée des transitoires = longueur du places mémoires.
filtre. Plus efficaces que RIF
• Bibliographie
1. S. Mitra, "Digital Signal Processing : A computer based approach", McGraw Hill Edt, 1998.
2. Y. Thomas, "Signaux et Systèmes Linéaires", Edition Masson, 1994.
3. M. Bellanger, " Traitement numérique du signal", Edition Dunod, 1993.
4. G. Blanchet, M. Charbit "Traitement numérique du signal", Edition Hermès, 1998
5. A. Quinquis "Le traitement du signal sous Matlab", Edition Hermès, 2000
23
Table de la TZ
24