0% ont trouvé ce document utile (0 vote)
70 vues56 pages

Introduction aux filtres numériques et RIF

Ce document décrit les principes de base des filtres numériques, notamment les filtres à réponse impulsionnelle infinie et finie, les structures d'implémentation canoniques et en treillis, et les méthodes de synthèse de filtres.

Transféré par

Amine Alaoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
70 vues56 pages

Introduction aux filtres numériques et RIF

Ce document décrit les principes de base des filtres numériques, notamment les filtres à réponse impulsionnelle infinie et finie, les structures d'implémentation canoniques et en treillis, et les méthodes de synthèse de filtres.

Transféré par

Amine Alaoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Filtrage Numérique

Filtre numérique causal


• Réponse impulsionnelle hn = {h0 h1 h2... hn...}

• Transformée en z : H ( z ) = Â hn z - n
n =0

1 + b1 z1 + b2 z 2 + .. + bm z m
• Fonction de transfert H ( z) =
1 + a1 z1 + a2 z 2 + .. + an z n
• Convolution numérique •
yn = Â hi xn -i
i =0
• Réponse harmonique •
H (e jw ) = Â hn e - jnw
n =0
Filtre numérique non causal
• Réponse impulsionnelle
» hn = {…h-p .. h-1 h0, h1 h2... hn...}

• Transformée en z : •
-n
H ( z) = h
 n z
n = -•

• Convolution numérique yn = Âh x
i = -•
i n -i


• Réponse harmonique H (e ) =jw
h
 n e - jnw

n = -•
Typologie
• Filtre à Réponse Impulsionnelle Infinie
– Filtre 1 : 1 + b1 z1 + b2 z 2 + .. + bm z m
H ( z) =
1 + a1 z1 + a2 z 2 + .. + an z n

• Equation récurrente (ou récursive)

yk + a1 yk -1 + .. + an yk - n = xk + b1 xk -1 + ... + bm xk - m

• Filtre ARMA dans un contexte stochastique


Typologie
• Filtre à Réponse Impulsionnelle Infinie
– Filtre 2 : 1
H ( z) =
1 + a1 z1 + a2 z 2 + .. + an z n
– Equation récurrente (ou récursive)
yk + a1 yk -1 + .. + an yk - n = xk

• Filtre AR
Typologie
• Filtre à Réponse Impulsionnelle finie

H ( z ) = 1 + b1 z -1 + b2 z -2 + .. + bm z - m

• Equation récurrente (ou récursive)

yk = xk + b1 xk -1 + ... + bm xk - m

• Filtre MA
Gabarit d’un filtre
Gain

Ondulation

Largeur de la bande de coupure


Bande passante

Atténuation f
bande de coupure
« sptool »
Typologie
– Tchebyshev type 1
2
[
H ( f ) = 1 + e 2Tn2 ( f ) ]
-1

Ï cos(n arccos( x)) x <1


Tn ( x) = Ì
Ócosh(n arg cosh( x) x > 1
– Butterworth
1
H ( p) = n

’( p - p )
k =1
k

– Elliptique (Cauer)
Filtre de Chebyshev 1
Tchebyshev 2
Filtre elliptique
Butterworth
Filtre RIF/RII
Structures d’implantation
Canonique Filtre RII
yk + a1 yk -1 + .. + an yk - n = xk + b1 xk -1 + ... + bm xk - m
ek-1
ek ek-M
-1 -1
b0
z z z-1
* * *
b1 bM

S + sk
S
S -

* aN * a2 * a1

-1 -1 -1
sk-2 sk-1 z
sk-N
Structures d’implantation
Canonique Filtre RIf

snenh0*h1*hN*en-Nz-1z-1z-1

S
Masque de convolution
N
yn = Â hi xn -i = h0 xn + h1 xn -1 + h2 xn - 2 + .... + hN xn - N
i =0

[ xn - N . xn - 2 xn -1 xn xn +1 xn + 2 . .]
[hN . h2 h1 h0 ]
M

M = [hN . h2 h1 h0 ]
M est égal à la séquence de h retournée
Structure en Treillis
xn
+ en yn = k1en + en -1
en = xn - k1en -1
- k1
E ( z ) = X ( z ) - k1 z -1 E ( z )
k1 X ( z)
fi E ( z ) =
yn 1 + k1 z -1
Z -1
+

( )
Y ( z ) = k1 E ( z ) + z -1 E ( z ) fi Y ( z ) = k1 + z -1 E ( z )
Y ( z ) k1 + z -1
A( z ) =
k1 £ 1
=
X ( z ) 1 + k1 z -1 Stabilité :
+ + È k1 + z -1 ˘
-1
xn wn en k2 + z Í -1 ˙
Y ( z) Î1 + k1 z ˚
- =
k2 - k1
X ( z) È k1 + z -1 ˘
-1
1 + k2 z Í -1 ˙
k2 k1 Î1 + k1 z ˚
yn vn
Z -1 Z -1
+ + V ( z ) k1 + z -1
=
W ( z ) 1 + k1 z -1

Y ( z ) k 2 + k 2 k1 z -1 + z -1k1 + z -2
=
X ( z ) 1 + k1 z -1 + k1k 2 z -1 + k 2 z - 2

En appliquant un critère algébrique,


on montre que la stabilité est obtenue si :
k1 < 1
k2 < 1
Structure FFT

x(t) y(t)
FFT * IFFT

H(f)
Synthèse de filtres RII
• Invariant impulsionnel pT
z=e
– Méthode des résidus pour le calcul de H (z)
– inconvénient : les caractéristiques fréquentielles ne sont
pas conservées

• Transformation bilinéaire z -1
p=k
z +1
– Bonnes caractéristiques dans une bande de fréquence
que l’on ajuste avec k
Synthèse de filtres RII
• Transformation bilinéaire
– On sélectionne un filtre continu soit H(jw)
– On détermine les paramètres de H(jw)
– Utilisation de la transformation bilinéaire

z -1
p=k
z +1
Exemple
k0 k0
H ( p) = H (0) =
(p + wc )2 wc2

k0 k0
H ( z) = 2 H ( z = 1) =
È z -1 ˘ [wc ]2
k
ÍÎ z + 1 + wc˙
˚

2
Ajustement des fréquences de coupure k=
Te
Equation aux différences
-1 2
H ( z) =
k0
=
(
Y ( z) K ' 1 + z
=
)
2 2
È z -1 ˘ (
X ( z ) 1 + z0 z -1 )
ÍÎk z +1
+ wc ˙
˚

Avec K ' = k0 / (k + wc )
wc - k
z0 =
wc + k
yn + z0 yn -1 + z02 yn - 2 = K ' (xn + 2 xn -1 + xn - 2 )

yn = K ' xn + K ' (2 xn -1 + xn - 2 )- z0 yn -1 - z02 yn - 2


yn = K ' xn + vn -1
Synthèse de filtres RIF
• Méthode de la fenêtre
– On choisit un gabarit idéal à phase nulle
(périodique)
– On choisit le nombre d’échantillons retenus N
– On calcule la transformée de fourier inverse
pour ces N coefficients
– On pondère les coefficients par une fenêtre
– On décale le filtre pour le rendre causal
Exemple
1
Choix de 7 échantillons

-1/2 -1/4 1/4 1/2

1/ 2
hn = H ( e j 2pf
) e j 2pfn
df hn = 0.5 sin c(np / 2)
Ú
-1 / 2

ÏÔn : - 3 - 2 -1 0 1 2 3
Ìh - 1 0
1 1 1
0 -
1
ÔÓ n 3p p 2 p 3p
Exemple
1
Pondération par une
fenêtre

-1/2 -1/4 1/4 1/2


ÏÔn : - 3 - 2 - 1 0 1 2 3
Ìh - 1 0
1 1 1
0 -
1
ÔÓ n 3p p 2 p 3p
f n = [0.08 0.31 0.77 1 0.77 0.31 0.08]
g n = [- 0.0085 0 0.2451 0.5 0.2451 0 - 0.0085]
Exemple
1
Décalage de 3 périodes
d’échantillonnage

-1/2 -1/4 1/4 1/2

n = [0 1 2 3 4 5 6]
g n = [- 0.0085 0 0.2451 0.5 0.2451 0 - 0.0085]

Introduction d ’un déphasage linéaire


Typologie des filtres RIF
• RIF non causal pair h-n = hn
N -1 N N N
- jnw - jnw - jnw jmw
 hne =  hne +  hn e =  h- m e +  hn e - jnw
n=- N n=- N n =0 m =1 n =0
N N N
= Â hm e jmw
+ Â hn e - jnw
(
= Â hn e jnw + e - jnw - h0 )
m =1 n =0 n =0
N
jw
= Â 2hn cos(nw) - h0
n =0
arg( H (e )) = 0

• RIF causal : phase linéaire et symétrie de h'n


Typologie des filtres RIF
• RIF non causal impair h-n = -hn
N -1 N N N
- jnw - jnw - jnw jmw
 hne =  hne +  hn e =  h- m e +  hn e - jnw
n=- N n=- N n =0 m =1 n =0
N N N
= -Â hm e jmw
+ Â hn e - jnw
(
= Â hn - e jnw + e - jnw - h0 )
m =1 n =0 n =0
N
p
jw
= -2 j  hn sin( nw) - h0 arg( H (e )) = -
n =0
2
• RIF causal : phase linéaire et antisymétrie h'n
Algorithme de Remez
La méthode des fenêtres est paramétrée
paramètres d’entrée : type de filtre
gabarit soit Hd ( f )
nombre de points
type de fenêtre
fréquence échantillonnage
paramètres à déterminer ordre du filtre
Minimisation au sens des moindres carrés:
2
Hd ( f ) - Hc ( f )
Pour f = [f - N ... f -1 f 0 f1... f N ]
Transformation 2D
Soit xij un signal 2D

Sa Transformée X mn = ÂÂ aklmn xkl


k l

Les éléments aklmn forment un tableau A(k,l,m,n)


Ce tableau est appelé noyau de la transformation
Si A(k,l,m,n) se met sous la forme :
A(k,l,m,n) =A1(k,m) A2(l,n)
avec A1(k,m) = [a1km] et A2(l,n) = [a2lm]
Alors A(k,l,m,n) est dit séparable
La séparabilité permet d'effectuer le calcul en 2 étapes :

On calcule un signal intermédiaire

X 1ml = Â a1km xkl


k
On calcule le signal final :
X mn = Â a2 ln X ml
l
Convolution 2D
m+ K n+ K
X mn = xmn * g mn = Â Â xkl g m-k ,n-l
k =m- K l =n- K

Avec g i , j = g 1i g 2j

m+ K n+ K m+ K n+ K
X mn =   xkl g 1m - k g n2-l =  g 1m - k  xkl g n2-l
k =m- K l =n- K k =m- K l =n- K

m+ K
X mn = Â g 1m - k X k , n
k =m- K
Conclusion

( )( )( )
X mn = xmn * g mn = xmn * g 1m g n2 = xmn * g 1m * g n2

Quand la transformation 2D est séparable,


elle est équivalente à la mise en série
de 2 transformations 1D

Symétrie : Si A(k,l,m,n) =A0(k,m) A0(l,n)


Masque de convolution 1D
N -1
yk = Â g l x k -l
l =0

y k = xk g 0 + xk -1 g1 + xk - 2 g 2 + ... + xk - N +1 g N -1

È xk ˘ È g0 ˘
Vecteur Í x ˙ Í g ˙
Í k -1 ˙ Í 1 ˙
Xk = Í . ˙ G =Í . ˙ yk = G T X k
Í ˙ Í ˙
Í . ˙ Í . ˙
Í xk - N +1 ˙ Í g N -1 ˙
Î ˚ Î ˚
yk = G T X k È yk ˘
y k +1 = G T X k +1 Íy ˙
Í k +1 ˙
yk + 2 = G T X k + 2 Notation Y =Í . ˙
Í ˙
.. Í . ˙
Í yk + P ˙
yk + P = G T X k + P Î ˚

È yk ˘
Íy ˙
Í k +1 ˙
Y = Í . ˙ = G T [X k X k +1 . . X k + P ]
Í ˙
Í . ˙
Í yk + P ˙
Î ˚
x
n-2 n-1 n
g2 g1 g0 yn

g2 g1 g0 Yn+1

g2 g1 g0 Yn+2
Masque 2D
Exemple filtre 3 3
m +1 n +1
X mn = Â Â xkl g m-k ,n-l
k = m -1 l = n -1
m +1
X mn = Â {xkn-1 g m-k ,1 + xkn g m-k ,0 + ... + xkn+1 g m-k ,-1}
k = m -1
X mn = xm -1n -1 g1,1 + xm -1n g1,0 + ... + xm -1n +1 g1, -1
+ xmn -1 g 0,1 + xmn g 0,0 + ... + xmn +1 g 0, -1
+ xm +1n -1 g -1,1 + xm +1n g -1,0 + ... + xm +1n +1 g -1, -1

È g1,1 g1,0 g1, -1 ˘ È xm -1, n -1 xm -1, n xm -1n +1 ˘


Í ˙Í ˙
X mn = Í g 0,1 g 0, 0 g 0, -1 ˙ Í xm, n -1 xm, n xm, n +1 ˙
Í g -1,1 g -1,0 g -1, -1 ˙˚ ÍÎ xm +1, n -1 xm +1, n xm +1n +1 ˙˚
Î
Séparabilité 1 2
g kl = g k gl

È g1,1 g1,0 g1, -1 ˘ È g11 g12 g11 g 02 g11 g -21 ˘


Í ˙ Í 1 2 1 2 1 2 ˙
Í g 0,1 g 0, 0 g 0, -1 ˙ Í g 0 g1 g0 g0 g 0 g -1 ˙
Í g -1,1 g -1,0 g -1, -1 ˙˚ Íg1 g 2 g 1-1 g 02 g 1-1 g -21 ˙
Î Î -1 1 ˚

È g11 g12 g11 g 02 g11 g -21 ˘ È g11 ˘


Í 1 2 1 2 ˙ Í 1˙ 2
Í g 0 g1 g 10 g 02 [
g 0 g -1 ˙ = Í g 0 ˙ g1 g 02 g -21 ]
Íg1 g 2 1 2
g -1 g 0 1 2 ˙
g -1 g -1 Í g 1 ˙
Î -1 1 ˚ Î -1 ˚
Lissage
È1˘
1 1Í ˙
Moyenne normalisée [1 1 1] 1˙
3 3 Í
ÍÎ1˙˚

È1 ˘
Moyenne pyramide 1 1Í ˙
[1 2 1] 2˙
4 4 Í
ÍÎ1 ˙˚
Mise en série de filtres
Sans effet de bord
È1 1 1˘ È1 1 1˘ È4 6 4˘
Í1 1 1˙ * Í1 1 1˙ = Í6 9 6˙
Í ˙ Í ˙ Í ˙
ÍÎ1 1 1˙˚ ÍÎ1 1 1˙˚ ÍÎ4 6 4˙˚

Sans effet de bord È1 2 3 1˘2


1 1 1 1 1 1 Í2 4 6 2˙˙
4
È ˘ È ˘ Í
Í1 1 1˙ * Í1 1 1˙ = Í
Í ˙ Í ˙ Í3 6 9 3˙6
˙
ÍÎ1 1 1˙˚ ÍÎ1 1 1˙˚ Í2 4 6 2˙4
Í1 2 3 2 1 ˙˚
Î
Dérivation
f ( x + h) - f ( x )
Différences finies f ' ( x) = lim h Æ0
h
En numérique on pose h=1

f ' (n) = f (n + 1) - f (n)

D ’où le masque [0 - 1 1]
Dérivation symétrique
Développement limité f (n + 1) = f (n - 1) + 2 f ' (n)

1
f ' (n) = [f (n + 1) - f (n - 1)]
2

D ’où le masque [- 1 0 1]
Dérivée seconde
1
f (n + 1) = f (n) + f ' (n) + f ' ' (n)
2
1
f ' (n) = [f (n + 1) - f (n - 1)]
2
1
f ' (n) = [f (n + 1) - f (n - 1)]
2
f ' ' (n) = f (n + 1) - 2 f (n) + f (n - 1)

[1 - 2 1]
Laplacien

È0 1 0 ˘
Í1 - 4 1˙
Í ˙
ÍÎ0 1 0˙˚
Dérivateur directionnel
È 0 0 0˘ È - 1 0 0˘ È0 - 1 0 ˘ È0 0 - 1˘
Í- 1 0 1˙ Í 0 0 0˙ Í0 0 0 ˙ Í0 0 0 ˙
Í ˙ Í ˙ Í ˙ Í ˙
ÍÎ 0 0 0˙˚ ÍÎ 0 0 1˙˚ ÍÎ0 1 0˙˚ ÍÎ1 0 0 ˙˚

È0 0 0 ˘ È1 0 0 ˘ È0 1 0 ˘ È 0 0 1˘
Í1 0 - 1˙ Í0 0 0 ˙ Í0 0 0 ˙ Í 0 0 0˙
Í ˙ Í ˙ Í ˙ Í ˙
ÍÎ0 0 0 ˙˚ ÍÎ0 0 -1˙˚ ÍÎ0 - 1 0˙˚ ÍÎ- 1 0 0˙˚
Lissage et dérivation

e s
Lissage L Dérivation D

S=D*(L*e)= (D*L)*e

Donc l ’opération est équivalente à la convolution de l ’entrée


par la dérivée du filtre de lissage
Prewitt

È1 1 1˘ È 1 1 1 ˘
Í ˙ Í
[- 1 0 1]Í1 1 1˙ = Í 0 0 0 ˙ ˙
ÍÎ1 1 1˙˚ ÍÎ- 1 - 1 - 1˙˚
Sobel

Dérivation du lissage pyramide

È1 2 1 ˘ È 1 2 1˘
Í ˙ Í
[- 1 0 1]Í2 4 2˙ = Í 0 0 0 ˙ ˙
ÍÎ1 2 1 ˙˚ ÍÎ- 1 - 2 - 1˙˚
Transformée en Z bilatère
• -1 •
X ( z ) = Â xn z - n = Â xn z - n + Â xn z - n = X - ( z ) + X + ( z )
-• -• 0

• •
X ( z ) = Â x- n z n + Â xn z - n
n =1 0

Convergence : condition de Cauchy



m 1/ m
Âx -n z n
Converge ssi lim mƕ x- m z <1
n =0

1/ m 1
lim mƕ x- m z <1 z< 1/ m
= Rc -
lim mƕ x- m
Signal pair
• •
X + ( z ) = Â xn z - n X + ( z -1 ) = Â xn z n
0 0
Or
• • • •
X ( z ) = Â x- n z n + Â xn z - n = Â xn z n + Â xn z - n
n =1 0 n =1 0

On en déduit

X - ( z ) = X + ( z -1 )
Exemple h(t ) = e
-a t


1 -1 1
H + ( z) = Â e - anT
z -n
= H - ( z) = H + ( z ) =
0 1 - e - aT z -1 1 - e - aT z

1 z -1 2 z -1 - e - aT - e - aT z -2
H ( z) = - aT -1
+ -1 - aT = -1 - aT
1- e z z -e z - e - e - aT z - 2 + e - 2 aT z -1

z -2 - 2e aT z -1 + 1
H ( z ) = -2
(
z - e aT + e aT z -1 + 1 )
Equation du filtre récursif

( )
yn = xn - 2e aT xn -1 + xn - 2 + e aT + e aT y n -1- yn - 2
Transformée en Z 2D
• •
-n -m
X ( z1 z 2 ) = Â Â nm 1 z2
x z
n = -• m = -•

Exemple xnm = 1 pour n ≥1


m ≥1
• •
-n -m -n

-m 1 1
X ( z1 z 2 ) = ÂÂ z z 1 2 =Â z 1 Âz 2 =
n =0 m =0 m =0 1 - z1-1 1 - z 2-1
1
X ( z1 z 2 ) =
1 - z 2-1 - z1-1 + z1-1 z 2-1
- an -bm
Exemple f (n, m) = e
• •
- an -bm - n - m - an - n -bm - m
X ( z1 z 2 ) = Â Â e z1 z 2 = Â 1 Â z2
e z e
n = -• m = -•

• •
- an -bm - n - m - an - n -bm - m
X ( z1 z 2 ) = Â Â e z1 z 2 = Â 1 Â z2
e z e
n = -• m = -•

1 1
1-e-a z1-1 1-e-b z2-1

Vous aimerez peut-être aussi