Vous êtes sur la page 1sur 14

Bases de Traitement du Signal Filtrage

Filtrage lin
eaire
On consid`ere le syst`eme dont lentree x(n) et la sortie y(n) verifient lequation
recurrente :
y(n) + a1 y(n 1) + + ap y(n p) = b0 x(n) + b1 x(n 1) + + bq x(n q) (1)
On pose :
B(z) = b0 + b1 z 1 + + bq z q
A(z) = 1 + a1 z 1 + + ap z p
Les racines de B(z) sappellent les zeros de la FT et les racines de A(z)
sappellent les poles de la FT.

ENST/BTS/1A February 1, 2003

p.1

Bases de Traitement du Signal Filtrage

Stabilit
e
On dit quun syst`eme est stable si `a tout entree bornee correspond une sortie
bornee.
Lequation (1) definit un filtre lineaire stable ssi le polynome :
A(z) 6= 0

ENST/BTS/1A February 1, 2003

pour

|z| = 1

p.2

Bases de Traitement du Signal Filtrage

R
eponse impulsionnelle
On montre que la sortie du filtre stable secrit :
y(n) =

+
X

h(k)x(n k)

k=

o`
u h(k) est la suite des coefficients du developpement en serie de Fourier de :
H(e2jf ) o`
u H(z) =

B(z)
A(z)

qui secrit :
H(e2jf ) =

+
X

h(k)e2jf k

k=

On montre que h(k) de module sommable.

ENST/BTS/1A February 1, 2003

p.3

Bases de Traitement du Signal Filtrage

Terminologie
h(k) sappelle la reponse impulsionnelle,
H(z) sappelle la fonction de transfert,
H(e2jf ) sappelle la reponse en frequence,
H(e2jf ) sappelle le gain en frequence,
arg(H(e2jf )) sappelle la phase.
La reponse impulsionnelle est finie (RIF) ssi A(z) = 1. Dans le cas contraire le
filtre est `a reponse impulsionnelle infinie (RII).

ENST/BTS/1A February 1, 2003

p.4

Bases de Traitement du Signal Filtrage

Causalit
e
Trois cas se presentent :
H(z) a tous ses poles strictement `
a lint
erieur du cercle unit
e, alors
h(k) = 0 pour k < 0. La reponse est causale.
H(z) a tous ses poles strictement `a lexterieur du cercle unite, alors
h(k) = 0 pour k 0. La reponse est anti-causale.
H(z) a des poles `a lexterieur et `a linterieur du cercle unite, alors la
reponse est bi-laterale.
Un filtre (stable) est causal ssi tous ses poles sont `a linterieur du cercle unite.

ENST/BTS/1A February 1, 2003

p.5

Bases de Traitement du Signal Filtrage

Fonction de transfert
La fonction :
X(z) =

+
X

x(n)z n

o`
u

z C = {z C : R1 < |z| < R2 }

n=

avec C =
6 , sappelle la transformee en Z de x(n). En supposant que X(z) et
P
H(z) existent, lequation y(n) = k h(k)x(n k) donne :
Y (z) = H(z)X(z)
Si les coefficients ai , bj de lequation recurrente (1) sont reels, les racines de
A(z) et B(z) sont soit reelles soit vont par paires de complexes conjuguees et
H(z) = H (1/z ).

ENST/BTS/1A February 1, 2003

p.6

Bases de Traitement du Signal Filtrage

R
eponse en fr
equence
La fonction periodique de periode 1 definie par :
H(e2jf )
sappelle la reponse en frequence. Comme h(k) est de module sommable,
H(e2jf ) est continue.
si les coefficients ai , bj de lequation (1) sont reels, la suite h(k) est reelle
et H(e2jf ) = H (e2jf ) (module pair et phase impaire).
si X(e2jf ) existe, Y (e2jf ) = H(e2jf )X(e2jf ).
si x(n) = e2jf0 n alors y(n) = H(e2jf0 )e2jf0 n .

ENST/BTS/1A February 1, 2003

p.7

Bases de Traitement du Signal Filtrage

Fonction filter
Sous Matlab loperation de filtrage sobtient avec la fonction filter. Comme
Matlab met en uvre la solution causale il faut imperativement que les poles
soient `a linterieur du cercle unite. Taper :
b=[1 0.95 1];
a=[1 -1.8 0.9];
w=randn(1000,1);
x=filter(b,a,w);
subplot(211), plot(w)
subplot(212), plot(x)

ENST/BTS/1A February 1, 2003

p.8

Bases de Traitement du Signal Filtrage

R
eponse dune second ordre purement r
ecursif

H(z) =

1
1 + a1 z 1 + a2 z 2

z2
=
(z p)(z p )

Sur le cercle unite on a :


H(e

ENST/BTS/1A February 1, 2003

2jf

1
)=
MP MP

p.9

Bases de Traitement du Signal Filtrage

f=1/4
P

f=1/2

f=0

f=1/2

P
f=1/4
Figure 1: Position des poles et des zeros/Reponse en frequence.

ENST/BTS/1A February 1, 2003

p.10

Bases de Traitement du Signal Filtrage

3.5
3
1

0.5

2.5
2

0
1.5

0.5
1

1
1

1
0.5
0

0.5

Figure 2: Position des poles et des zeros/Reponse en frequence.


ENST/BTS/1A February 1, 2003

p.11

Bases de Traitement du Signal Filtrage

R
eponse en fr
equence versus p
oles et z
eros
1 + 0.7z 1 + z 2
H(z) =
1 1.2z 1 + 0.7z 2

1
1

0 0.1162

0.5

Figure 3: Position des poles et des zeros/Reponse en frequence.


ENST/BTS/1A February 1, 2003

p.12

Bases de Traitement du Signal Filtrage

De facon generale, les poles sont associes `a la bande passante et les zeros `a la
bande attenuee.
[b,a]=ellip(4,0.5,20,2*[0.1 0.3])

1
1

0.5

Figure 4: Position des poles et des zeros/Reponse en frequence.


ENST/BTS/1A February 1, 2003

p.13

Bases de Traitement du Signal Filtrage

Exemple
Soit le filtre defini par lequation recurrente :
y(n)2 cos()y(n1)+2 y(n2) = H0 (x(n)2 cos()x(n1)+x(n2)) (2)
1. determiner la condition sur pour que le filtre soit stable et causal.
2. ecrire, sous Matlab, un programme qui trace |H(e2jf )| en fonction de f .
3. On consid`ere le signal provenant du fichier desgensSIN500.wav qui
contient un signal de parole echantillonne `a Fe = 8000 Hz et perturbe par
une sinusode de frequence 500Hz. Comment peut-on utiliser le filtre
precedent pour supprimer ce brouillage ?

ENST/BTS/1A February 1, 2003

p.14