Upload
buibao
View
224
Download
2
Embed Size (px)
Citation preview
Traitement du SignalFiltrage numérique - Transformée en Z
13 octobre 2014
Nancy Bertin - [email protected]
Filtrage numérique Transformée en Z Filtres récursifs Application
Filtrage numérique
1 Filtrage numériqueIntroductionFiltres linéaires invariantsVocabulaire et propriétés des filtresRéponse impulsionnelle et réponse en fréquence
2 Transformée en Z
3 Filtres récursifs
4 Application d’un filtre
2 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Introduction
En traitement du signal, on appelle filtre un système destiné àmodifier la distribution fréquentielle d’un signal.Cf. filtres colorés en optique (action sur le spectre lumineux)Exemples d’application :
supprimer un brouilleur (réjecteur de bande)éviter le repliement avant sous-échantillonnage (passe-bas)améliorer le RSB avant transmission (préaccentuation)modifier l’équilibre des différentes fréquences (égalisation)
Les filtres numériques prennent un signal discret en entrée etproduisent un signal discret à la sortie.On pourrait finalement aussi bien parler de système discret.
Filtre Hx[n] y[n]
3 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
But des deux ou trois prochains cours
1 Comment décrire et caractériser un filtre H ?⇒ Réponse impulsionnelle⇒ Réponse en fréquence⇒ Transformée en Z (un peu de maths, désolée)
2 Comment concevoir un filtre H (qui fasse ce qu’on veut et quisoit réalisable en pratique, par nous dans Scilab ou par nosamis électroniciens) ?⇒ Synthèse de filtre⇒ Méthode de la fenêtre⇒ Méthode de Remez⇒ Filtres à phase linéaire
4 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Filtres linéaires invariants
Comme en continu, on s’intéresse plus particulièrement à dessystèmes qui remplissent deux conditions agréables :
Linéarité : H(x+ λy) = H(x) + λH(y)
Invariance par translation :n0-translatée de la fonction f : fn0
: n→ f [n− n0]Invariance du système : [H(fn0)] = [H(f)]n0
Attention ! La translation s’entend ici pour des signaux discretsinfinis (pas de circularité). Elle modélise bien un retard, unetranslation dans le temps physique.
5 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemples
Ligne à retard : ∃n0 ∀n, y[n] = x[n− n0]Amplificateur (gain) : ∃G0 ∀n, y[n] = G0x[n]
Moyenne glissante : ∃M ∀n, y[n] = 1M
∑M−1m=0 x[n−m]
Exemple : température journalière et moyenne sur les 30derniers joursÀ votre avis, quel est l’effet sur la forme du signal ? Sur sonspectre ? Comment qualifieriez-vous le filtre correspondant ?
Illustration de Saïd Ladjal.
6 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Systèmes linéaires et signaux à supports finis
Systèmes linéaires invariants et signaux à support finiSoit H est un système linéaire invariant.Si, pour tout signal d’entrée x[n] à support fini, le signal de sortiey[n] est à support fini, alors il existe une suite à support fini h telleque :
∀n ∈ Z y[n] =∑m∈Z
x[m]h[n−m] =∑`∈Z
h[`]x[n− `]
La suite h est appelée la réponse impulsionnelle du filtre H.Remarques :
En fait, si on accepte l’axiome du choix, on peut construire des SLI pathologiques pour lesquellescette propriété est fausse, mais de tels SLI n’ont aucune réalité physique. Cf. “Banach limit”.
Cf. signal continu et convolution. Là on le prend par l’autre bout pour changer, mais c’est pareil.
7 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Démonstration
Comme on ne l’avait pas faite en continu...
Soit δ l’impulsion de Dirac. C’est bien une suite à support fini.On note h = H(δ). h est une suite à support fini (que l’onappelle “réponse impulsionnelle” pour des raisons évidentes).H est invariant par translation donc H(δm) = hm.On sait que x[n] =
∑m∈Z x[m]δm[n].
H est linéaire donc H(x) =∑
m∈Z x[m]H(δm).On déduit y[n] = (H(x)) [n] =
∑m∈Z x[m]h[n−m].
La deuxième partie se déduit par changement de variable` = n−m.
8 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Généralisation
Filtrage et produit de convolution.Si x[n] et y[n] sont deux signaux discrets quelconques, on définit leurproduit de convolution par la suite x ? y[n] :
(x ? y) [n] =∑m∈Z
x[m]y[n−m] =∑`∈Z
x[`]y[n− `]
Si H est un système linéaire invariant, alors il existe une suite h telle que :
∀n ∈ Z y[n] =∑m∈Z
x[m]h[n−m] =∑`∈Z
h[`]x[n− `]
La suite h est appelée la réponse impulsionnelle du filtre H.Réciproquement, toute suite h définit un filtre linéaire invariant dontl’effet est décrit par le produit de convolution avec h.
Remarque : la preuve est un peu plus subtile car il faut tenir compte de l’existence de différentesquantités, qu’on cache sous le tapis ici.
9 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Propriétés du produit de convolution
Commutativité : x ? y = y ? x
Associativité : (x ? y) ? w = x ? (y ? w)
Linéarité : x ? (y + λw) = (x ? y) + λ(x ? w)
Invariance par translation : x ? yn0 = (x ? y)n0
10 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Causalité
Définition : causalité.Un filtre est dit causal si ∀n < 0, h[n] = 0.Dans ce cas, la relation entrée-sortie de filtrage s’écrit :
y[n] =
n∑m=−∞
x[m]h[n−m]
Cela signifie que la sortie du filtre à l’instant n ne dépend quedu passé, d’où le terme causal (les causes précèdent leseffets).
Remarques :
Les systèmes physiques sont causaux.
Les signaux physiques sont causaux.
La sortie doit exister.
11 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Stabilité
Définition : stabilité.Un filtre est dit stable si h ∈ `1(Z).On parle aussi de stabilité EBSB (entrée bornée, sortiebornée) si, à tout signal borné x, le filtre H fait correspondreune sortie h ? x bornée.Les deux propriétés précédentes sont équivalentes.
Remarques :
Les systèmes physiques feraient mieux d’être stables...
Dans le cas contraire, ils risquent surtout de perdre leur linéarité (exemple :clipping).
12 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Réponse impulsionnelle
Définitions. Filtres RIF et RII.La réponse impulsionnelle d’un filtre H est la sortie de cefiltre quand on lui applique une impulsion en entrée :h[n] =
∑h[n]δ[n−m].
Pour toute entrée x, la sortie y du filtre s’écrit : y = h ? x.Si h est de support fini, on dit que H est un filtre à réponseimpulsionnelle finie, en abrégé “filtre RIF”.Dans le cas contraire, on dit que H est un filtre à réponseimpulsionnelle infinie, en abrégé “filtre RII”.
13 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Réponse en fréquence
Exactement comme en continu (cf. cours 2) :
Les ondes de Fourier étant les signaux discrets wν [n] = e2πiνn,les ondes de Fourier sont des fonctions propres des filtreslinéaires invariants :
∀ν, ∃H,H(wν) = Hwν .
La constante C dépend de la fréquence. On appelle réponseen fréquence la donnée de la fonction H de la variable ν telleque ∀ν,H(wν) = H(ν)wν
H est la TFtd de h.
14 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Transformée en Z
1 Filtrage numérique
2 Transformée en ZMotivationsDéfinitionsPropriétésFonction de transfertReprésentations
3 Filtres récursifs
4 Application d’un filtre
15 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Motivations
La réponse impulsionnelle d’un filtre n’est pas forcément trèsparlante...
5 10 15
−2−1
12
⇒ besoin d’outils pour caractériser les filtres, et savoir construire laréponse impulsionnelle d’un filtre en fonction des caractéristiquesque l’on désire pour lui.
16 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Définition de la transformée en Z
Définition. Transformée en ZSoit x[n] un signal à temps discret quelconque. La transformée enz de x est la fonction de la variable complexe z définie par :
X(z) =
+∞∑n=−∞
x[n]z−n
pour tout z dans le domaine de convergence : R1 < |z| < R2.
Remarques :
La transformée en Z est une série entière.
La TFtd est la transformée en Z restreinte au cercle unité (z = e2iπf ), àcondition qu’il appartienne à la couronne de convergence.
(La TZ est à la TFtd ce que la transformée de Laplace est à la TF.)
17 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemple : porte
La transformée en Z de la porte 1[0;N−1] est :
X(z) =
N−1∑n=0
z−n = 1 + z−1 + . . .+ z−(N−1)
et converge pour tout z 6= 0. X(1) = N et pour tout z 6= 1,
X(z) =1− z−N
1− z−1.
18 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemple : exponentielle
La transformée en Z de la suite causale x[n] = an est :
X(z) =
+∞∑n=0
anz−n =1
1− az−1
converge pour tout |z| > |a|.x étant nulle à gauche, Dx s’étend à l’infini.si |a| < 1, Dx contient le cercle unité.
19 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exercice
Calculer la transformée en Z des signaux suivants :
x[n] =
{23
(12
)n+1 − 232n+1 pour n 6 −2
0 pour n > 2
x[n] = −13
(12
)|n|x[n] =
{−2
3
(12
)n+1 − 232n+1 pour n > 0
0 pour n < 0
(Rappel :∑+∞
n=0 un = 1
1−upour |u| < 1.)
Conclusion ?
20 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Transformée en Z inverse
La TZ inverse n’est définie que si on donne le domaine deconvergence associé.Il existe une formule générique mais elle est concrètementinutile (intégrale circulaire sur un contour de Cauchy).En pratique, pour les TZ qui sont des fractions rationnelles(les seules qu’on rencontrera), on utilise une décomposition enéléments simples et la formule
+∞∑n=0
un =1
1− upour |u| < 1.
Ou alors, on choisit un contour de Cauchy particulier : lecercle-unité, et on applique la TFtd inverse :
h[n] =
∫ 1/2
−1/2H(e2iπν)e2iπνndν
21 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Premières propriétés
Si x[n] est de durée finie, Dx est le plan complexe entier, saufpeut-être en z = 0.Si x[n] est causal, X(z) est finie à l’infini etx[0] = limz→+∞X(z).Si x[n] est nulle à gauche (x[n] = 0 pour n < N), Dx s’étendà l’infini.Si x[n] est nulle à droite (x[n] = 0 pour n > N), Dx contientl’origine.Dans le cas contraire, x[n] est bilatérale et Dx est unecouronne.
22 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
D’autres propriétés
Propriété t[n] T (z) Dy
Linéarité x[n] + λy[n] X(z) + λY (z) Dx ∩DyRetournement temporel x[−n] X(1/z) 1/DxRetard (ou avance) x[n− n0] X(z)z−n0 Dx
Convolution x ? y[n] X(z)Y (z) Dx ∩DyProduit x[n]y[n] X ? Y (z) Dx ×Dy
Parité-conjugaison x̄[n] X̄(z̄) Dxx[n] réel X(z) = X̄(z̄)
23 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Fonction de transfert
Soit un filtre H de réponse impulsionnelle h.Quelle que soit l’entrée x, la sortie y est y = h ? x
Donc en Z, Y (z) = H(z)X(z)
On appelle fonction de transfert de H:
H(z) =Y (z)
X(z)
24 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemples
Retard : y[n] = x[n− 1]⇒ H(z) = z−1
z−1x[n] y[n]
Gain : y[n] = G0x[n]⇒ H(z) = G0
G0x[n] y[n]
Addition :+x[n]
b[n]
y[n]
25 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Fonction de transfert rationnelle
Muni de ces trois opérations on peut construire une vastecatégorie de filtres :
y[n] + a1y[n− 1] + a2y[n− 2] + . . .+ apy[n− p]= b0x[n] + b1x[n− 1] + . . .+ bqx[n− q]
La fonction de transfert de ces filtres est une fractionrationnelle :
H(z) =b0 + b1z
−1 + . . .+ bqz−q
1 + a1z−1 + . . .+ apz−p
26 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Pôles et zéros de la fonction de transfert
Les points du domaine de convergence où H(z) = 0 sontappelés les zéros de la fonction de transfert.Les points isolés du domaine de convergence où H(z) = +∞sont appellés les pôles de la fonction de transfert.Dans le cas d’une fonction de transfert rationnelleH(z) = N(z)/D(z) :
Les zéros sont les racines du numérateur N(z)Les pôles sont les racines du dénominateur D(z)
Si D(z) 6= 1 on parle de filtre récursif.
27 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemple
Le filtre de fonction de transfert :
H(z) =1− bz−1
1− az−1
possède un pôle en z = a et un zéro en z = b.Il est causal et stable pour |a| < 1.
28 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Représentations des filtres
On possède maintenant de multiples représentations d’un filtre :Par sa réponse impulsionnelle (finie ou infinie)Sous formes d’un diagramme en blocs (vision système)Par sa réponse en fréquence (diagramme de Bode)Par les pôles et les zéros de sa fonction de transfert dans leplan complexe
29 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Représentation système
Un exemple de diagramme bloc (filtre RIF, non récursif) :
Illustration Wikipedia.
30 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Représentation de la réponse en fréquence
On représente le gain (module) et la phase (argument) de la TZéchantillonnée sur le cercle unité.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−80
−60
−40
−20
0
Normalized Frequency (×π rad/sample)
Pha
se (
degr
ees)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−10
0
10
20
Normalized Frequency (×π rad/sample)
Mag
nitu
de (
dB)
31 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Représentation en diagramme pôles-zéros
On représente les pôles et les zéros dans le plan complexe, enmatérialisant le cercle unité.
Illustration de Maurice Charbit.
32 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Filtres récursifs
1 Filtrage numérique
2 Transformée en Z
3 Filtres récursifsDéfinition d’un filtre récursifPropriétés des filtres récursifs
4 Application d’un filtre
33 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Définition d’un filtre récursif
Un filtre est récursif si le dénominateur de sa fonction detransfert est différent de 1.Cela signifie que la sortie à un instant dépend des étatsantérieurs de la sortie.Le diagramme bloc contient une ou des boucles fermées.Un filtre est dit purement récursif si N(z) = 1.Dans ce cas, p est appelé l’ordre du filtre.
34 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemples
Le système répondant à l’équation aux différences :
y[n]− ay[n− 1] = x[n]
est un filtre purement récursif d’ordre 1.En appliquant la transformée en Z, on obtient sa fonction detransfert :
H(z) =1
1− az−1
Ce filtre est stable pour |z| > a.Dans ce cas, on peut développer H(z) en série entière etidentifier sa réponse impulsionnelle sous condition de causalité :
h[n] = an1R+
35 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Propriétés des filtres récursifs
Le domaine de convergence de la TZ d’un filtre récursif est lacouronne du plan ne contenant aucun pôle.Le filtre convolutionnel h correspondant est stable si sondomaine de convergence contient le cercle unité.Par conséquent, un filtre récursif est causal et stable si etseulement si tous ses pôles sont contenus à l’intérieur ducercle unité.
36 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemple
Filtre récursif d’ordre 2 :
H(z) =1
(1− az−1)(1− bz−1)
On décompose H(z) en éléments simples :
H(z) =1
a− b
(a
1− az−1− b
1− bz−1
)Causalité : h est nulle à gauche donc Dh s’étend à l’infini.Stabilité : |a| < 1 et |b| < 1 donc Dh contient le cercle unité.
37 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Récursivité et réponse impulsionnelle
Les filtres récursifs sont à réponse impulsionnelle infinie.(Évidemment, les filtres non-récursifs sont RIF).
38 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Bande passante et bande atténuée
Intuitivement :|H(z)| est petit pour les fréquences à proximité de ses zéros(bande atténuée).|H(z)| est grand pour les fréquences à proximité de ses pôles(bande passante).
On précisera ses notions et le moyen dans les contrôler dans leprochain cours.
39 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Application d’un filtre
1 Filtrage numérique
2 Transformée en Z
3 Filtres récursifs
4 Application d’un filtreConvolution rapideDans Matlab / ScilabExemple (exercice)
40 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Application d’un filtre RIF
Pour les filtres RIF, on peut calculer numériquement la sortieen calculant directement la convolution h ? x.Mais le nombre d’opérations à réaliser est en O(N2)...... ce qui est quand même dommage puisqu’on a l’algorithmede FFT !Problème : la propriété de FFT concerne la convolutioncirculaire, mais notre filtrage est une convolution “normale” !Astuce : zero-padding + overlap-add.
41 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Convolution rapide
Illustration de Rémi Gribonval.
42 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Convolution rapide
Illustration de Rémi Gribonval.
43 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Convolution rapide
Illustration de Rémi Gribonval.
44 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Application de filtres RII
Il n’est évidemment pas question d’utiliser la formule deconvolution pour un filtre à réponse impulsionnelle infinie(somme infinie !).Si le filtre est causal, il suffit d’utiliser la relation :
y[n] = b0x[n]+b1x[n−1]+. . .+bqx[n−q]−a1y[n−1]−a2y[n−2]−. . .−apy[n−p]
Attention, si le filtre n’est pas causal, cette relation peut violerla stabilité.
45 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Dans Matlab / Scilab
Dans Matlab on peut spécifier un filtre dont la fonction de transfert est unefraction rationnelle en z−1 par les coefficients des polynômes du numérateur etdu dénominateur, rangés dans des vecteurs.
Dans Scilab on peut presque faire la même chose (mais il faut ranger lescoefficients dans un objet polynôme créé avec la fonction poly, et construire lafonction de transfert avec syslin) et il y a moins de fonctions intégrées.
Fonctionnalité Matlab Scilab
Appliquer un filtre filter(B,A,X) filter(num,den,x)
Voir la réponse en fréquence freqz(B,A,X) bode(sl)*
Voir la réponse impulsionnelle impz(B,A) csim*
Racines d’un polynôme roots(B) roots(P)
Diagramme pôles-zéros zplane(B,A) plzr(sl)
* C’est moins pratique, vous aurez besoin de Google !
46 M1 RI Traitement du Signal 13/10/2014
Filtrage numérique Transformée en Z Filtres récursifs Application
Exemple : le filtre passe-tout
H(z) =z−1 − b̄1− bz−1
Justifiez par le calcul l’appellation “passe-tout” de ce filtre.Choisir une valeur b et le vérifier avec Scilab en observant saréponse en fréquence.Appliquer le filtre passe-tout au signal phrase.wav et écouterle résultat.À quoi peut bien servir un filtre passe-tout ?
47 M1 RI Traitement du Signal 13/10/2014