duval l 2009 lecture-supelec-tns rif · l’impulsion unité définie par : ... sous matlab, on...
TRANSCRIPT
-
1
Filtrage numériqueFiltrage numériqueFiltrage numériqueFiltrage numérique
� Le traitement (numérique) du signal apparaît :
� transmettre de l’information
� manipuler de l’information : amélioration, détection, prédiction
� stocker de l ’information
� Applications :
� audio-visuelles :
� TV numérique (DVB), radio
� codage numérique : CD,DVD,codage MP3,WAV…
� communications en fixe ou en mobile (réseau internet, modems fixes,
téléphonie mobile...)
-
2
Exemple 1 : amélioration (d.) d'images (g.)Exemple 1 : amélioration (d.) d'images (g.)
-
3
Exemple 2 : filtrage Exemple 2 : filtrage nonnon--déterministedéterministe
Original
Bruité Débruité
100 200 300 400 500
100
200
300
400
500
100 200 300 400 500
100
200
300
400
500
100 200 300 400 500
100
200
300
400
500
-
4
Exemple 3 : filtrage déterministeExemple 3 : filtrage déterministe
-
5
Exemple 4 : filtrage déterministeExemple 4 : filtrage déterministe
-
6
Exemple 5 : opérateurs de lissageExemple 5 : opérateurs de lissage
-
7
Exemple 6 : lissage et dérivationExemple 6 : lissage et dérivation
1200 1400 1600 1800 2000 2200 2400 2600 2800
0
10
20
30
40
50
60
70
80
90
Robust Recursive Pressure
Pressure
Rob. Rec.
1200 1400 1600 1800 2000 2200 2400 2600 2800
-2
0
2
4
6
8
10
12
14
16
Robust Recursive Gradient
Gradient
Rob. Rec.
5 0 1 0 0 1 5 0 2 0 0 2 5 0
0 . 2
0 . 4
0 . 6
5 0 1 0 0 1 5 0 2 0 0 2 5 0
- 1
0
1
5 0 1 0 0 1 5 0 2 0 0 2 5 0
- 1
0
1
-
8
Plan de coursPlan de cours
� Première partie : Filtres linéaires invariants dans le temps
Concepts de base (rappels, rejoint le cours de systèmes linéaires)
Filtres à réponse impulsionnelle finie (RIF-FIR)
Filtres non-linéaires à support fini
Filtres à réponse impulsionnelle infinie (RII-IIR), récursifs
Signaux analytiques
Systèmes multicadences, bancs de filtres
� Deuxième partie, E. Florian : filtrage adaptatif, filtrage adapté,
égalisation, synchronisation...
-
9
BibliographieBibliographie
� Bellanger M., Traitement Numérique du Signal – Dunod 1995.
� Shenoi K., Digital signal processing in Telecommunications -
Prentice-Hall 1995.
� Proakis J. G., Digital Communications, Mc Graw-Hill, 1995.
� Oppenheim & Schafer, Digital Signal Processing
� J. O. Smith :
� http://ccrma.stanford.edu/~jos/filters/
-
10
Première partie : fPremière partie : filtresiltres linéaireslinéaires invariants invariants dansdans le tempsle temps
� Concepts de base (notions à maîtriser)
� 1.1. Les signaux à temps continu (analogiques)
� Transformée de Laplace
� Transformée de Fourier
� Développement en série de Fourier
� Produit de convolution
-
11
1.2. Rappel sur les signaux à temps discret (numériques)
� La numérisation :
x(t) => x(nT) ses valeurs à des instants multiples de T
notation : x(n) = x(nT)
T est la période d ’échantillonnage. Par def. :
T = 1/ Fe Fe fréquence d ’échantillonnage
La TF du signal échantillonné s ’écrit :
∑+∞
−∞=
−=n
e TnfXT
fX )/(1)(
La TF du signal échantillonné est périodique de période 1/T
-
12
Exemple :
-
13
� La TF d ’un signal numérique est :
∑+∞
−∞=
−=
n
njenxX
νπν 2)()(
ν est la une grandeur sans dimension, appelée fréquence réduite :
ν = f T = f / Fe
On défini aussi une pulsation réduite ω = 2πν
� La TF inverse est :
� La Transformée en z :
Soit x(n), n entier, un signal discret.
νν ω deXnxnj∫
−
=21
21
)()(
X(z) = ∑+∞
−∞=
−
n
nznx )( où z est un nombre complexe.
-
14
On note que avec z = e(jω) obtient la TF
Propriétés de la Tz :
1. Linéaire Z (a x(n) + b y(n)) = a X(z) + bY(z)
2. Un retard de k échantillons se traduit par une multiplication de z -k
3. Tz ( an x(n)) = X(a-1 z)
Tz ( n x(n)) = - z dX(z)/dz
Tz (x(-n)) = X(z-1)
4. x z X zz
( ) lim( ) ( )+∞ = −→1
1 , c’est le théorème de la valeur finale.
5. x X zz
( ) lim ( )0 =→+∞
, c’est le théorème de la valeur initiale.
-
15
1.3. Notion de système numérique linéaire invariant 1.3. Notion de système numérique linéaire invariant
(dans le temps)(dans le temps)
� Un système LIT est un système qui convertit une suite x(n) en une
suite y(n).
� Linéaire si ax1(n) + bx2(n) est convertie en ay1(n) + by2(n)
� invariant dans le temps si x(n-k) => y(n-k)
� Dans l’étude des LIT, on utilise :
� l’impulsion unité définie par :
δ(n)= 1 si n = 0 et δ(n)= 0 sinon
� l’échelon unité défini par :
Γ(n) = 1 si n ≥ 0 et Γ(n) = 0 si n < 0
-
16
� L ’impulsion retardée de k échantillons et de poids x(k) :
x(k) δ(n - k)
=> un signal peut s ’écrit comme ∑+∞
−∞=
−=k
knkxnx )()()( δ
� Un système LIT peut se définir par h(n) sa réponse impulsionnelle
(réponse à δ(n))
Soit un LIT h(n) :
la réponse à x(k) δ(n - k) est x(k)h(n-k) (invariance)
la réponse au signal x(n) est :
On note aussi y(n) = h(n) ∗ x(n) , produit de convolution
∑+∞
−∞=
−=k
knhkxny )()( )(
-
17
� Un système LIT causal est tel que h(n) = 0 pour n < 0
Dans ce cas :
∑+∞
=
−=0
)()( )(k
knxkhny
� Les TF et les Tz vérifient :
Y(ν) = H(ν) X(ν) et Y(z) = H(z) X(z)
Propriété : Pour qu’un LIT soit stable, il faut et il suffit que ∑+∞
−∞=n
nh )( soit fini.
-
18
2. Les filtres à réponse 2. Les filtres à réponse impulsionnelleimpulsionnelle finiefinie
� Les filtres à réponse impulsionnelle finie (RIF) sont des LIT.
� Ils sont définis par une équation selon laquelle la sortie du système
(ou filtre) est obtenue par sommation pondérée des échantillons
d ’entrée :
� Les filtres réalisables sont causaux et de dimension finie
� Filtre, ou système à mémoire finie (fonction d ’un nombre limité
d ’échantillon d ’entrée)
� les h(k) sont appelés les « coefficients » du filtre
filtredu dimension laest K )()( )(1
0∑
−
=
−=K
k
knxkhny
∑+∞
−∞=
−=k
knxkhny )()( )(
-
19
� Premier exemple : y(n) = 0.5 ( x(n) + x(n-1) )
� h(0) = 0.5 et h(1) = 0.5 h(k) = 0 ailleurs
� La Tz : H(z) = 0.5 (1 + z-1)
� La TF : H(ν) = 0.5 (1 + e-jω) = 0.5 e-jω/2(ejω/2+e-jω/2) = e-jω/2 cos(ω/2)
Généralement, on représente H(ν) sous la forme :
eRenhHjnj
n
)()( )( )( ωϕω ων −− ==∑
+∞
−∞=
où R(ω) est réel
R(ω) est appelé « réponse en amplitude », et ϕ(ω) la réponse en phase
Dans cet exemple, il est clair que :
R(ω) = cos(ω/2) et ϕ(ω) = ω/2
-
20
-1.0 -0.5 0 0.5 1.00
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
|R(ω)|
ν
� Représentation graphique :
Sous Matlab, on utilise la fonction freqz pour représenter
directement la réponse en fréquence
-
21
2.2. Les filtres à phase linéaires2.2. Les filtres à phase linéaires
� Un des principaux intérêts des RIF est de pouvoir réaliser des filtres
à phase linéaire = 1 filtre dont le temps de propagation est
indépendant de la fréquence
eRenhHjnj
n
)()( )( )( ωϕω ων −− ==∑
+∞
−∞=
filtre à phase linéaire : ϕ(ω) = ϕ0 + ωττ est le temps de propagation de groupe
Pour déterminer la structure des filtres à phase
linéaire, on calcule la TF inverse
-
22
� On pose ϕ0 = 0
� R(ω) est une fonction réelle, elle se décompose en :
R(ω) = P (ω) + I (ω)
� On fait le changement de variable n -> n + τ
νωνν ωωτϕω deeeRdeHnhnjjjnj ∫∫
−
−−
−
==21
21
21
21
0)( )( )(
νω τωϕ deRenhnjj )(
21
21
)( )( 0 −
−
− ∫=
( ) ( ) ντωτωωω dnjnIPnh ))(sin())(cos( )()( )(21
21
−+−+= ∫−
-
23
� Si l ’on ne s ’intéresse qu ’aux filtres réels :
νωωτ dnPnh )cos()(2 )(21
0∫=+
� Il est clair que :
h(n+τ ) = h(-n+τ )
=> symétrie de h(n) par rapport à τ
� 2 cas de figure si K = 2N + 1 ou K = 2N
� K = 2N + 1 :
H(ν) = e- jωN
++ ∑
=
N
k
kkNhNh1
)cos()( 2)( ω
Si K = 2N :
H(ν) = 2 e- jω(N-1/2) ( )
++∑
−
=
1
0
)2/1(cos)( N
k
kkNh ω
-
24
� Un raisonnement identique avec ϕ0 = π/2
H(ν) = - 2j e- jωN
+∑
=
N
k
kkNh1
)sin()( ω
H(ν) = - 2j e- jω(N-1/2) ( )
++∑
−
=
1
0
)2/1(sin)( N
k
kkNh ω
-
25
2.3. Synthèse des filtres RIF2.3. Synthèse des filtres RIF
� Les RIF sont utilisés souvent pour mettre en forme 1 signal :
Amplifier certains fréquences, en atténuer d ’autres
=> généralement, un filtre satisfait à des conditions imposées dans
le domaine fréquentiel.
=> on défini un « gabarit »
-
26
� Pour calculer les coefficients, plusieurs méthodes souvent
implantées dans des logiciels de calcul (Matlab, Cossap, SPW, …)
0
1
1 + δ1
1 − δ1
ν1
δ2
ν11/2
filtre idéal
filtre réel
gabarit
|H|
ν2
On défini :
• une bande passante, une bande atténuée
• une bande de transition ∆ν = ν2 - ν1
-
27
� Pour calculer les coefficients du filtre satisfaisant au gabarit,
plusieurs techniques :
� Synthèse par fenêtrage
� Méthode des moindres carrés
� Autres (technique itérative, …)
� Le fenêtrage permet de réaliser des RIF à phase linéaire à partir
d ’une réponse en fréquence idéale
� Technique simple : TF inverse de Hi(ν) (filtre idéal), puis troncature à un nombre fini de coefficients
-
28
� Exemple : Hi(ν) = 1 pour -νc< ν < νc et 0 ailleurs
1
11 -
Hi
c c
υ
υυυ
( )
� On a :
� La séquence obtenue est infinie, mais "décroissante" lorsque n ->+/- ∝
)( )(21
21
νν ω deHnhnj
ii ∫−
= ( ) ( )nn
nh ci πνπ
2sin1
=
-
29
� La première idée : tronquer la réponse impulsionnelle obtenue
Exemple pour νc = 0.25, et pour un nombre de coefficients impair,
de n= - 10 à n = 10 (21 coefficients)
-10 -8 -6 -4 -2 0 2 4 6 8 10-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
-
30
� Le fait de tronquer la réponse impulsionnelle = multiplier par une
fenêtre temporelle rectangulaire
=> On a : hr(n) = hi(n) × fe(t)
Dans le domaine fréquentiel, produit de convolution par la FT de la
fenêtre,
( ) ( )ffkT
fFEππ2sin
=
fe(t) = 1 pour ≤t kT, fe(t) = 0 sinon
-
31
� On obtient :
-1.5/kT -1/kT -0.5/kT 0 0.5/kT 1/kT 1.5/kT0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
Lobe principal
Lobes secondairesLobes secondaires
-
32
� On obtient pour la TF du filtre :
ν0 1/4-1/4
-
33
� => une fenêtre temporelle rectangulaire crée des ondulations
� pour essayer de les réduire ces ondulations, on utilise des fenêtres de
pondération :
Fenêtre de Hamming : ( )
+=
kT
ttfe
πcos46,054,0 pour ≤t kT
En numérique : ( )
+=
k
nnfeT
πcos46,054,0 pour -k ≤ n ≤ k
Fenêtre de Blackmann : ( )
+
+=
k
n
k
nnfeT
ππ 2cos08,0cos5,042,0 pour -k ≤ n ≤ k.
Les performances sont les suivantes :
fenêtre amplitude du lobe secondaire largeur du lobe principal
rectangulaire -13dB 1/kT
Hamming -41dB 2/kT
Blackmann -57dB 3/kT
-
34
� Dans la plupart des applications du TNS (grand public, militaires ou
autres), intervient la notion de coût
� Généralement, on recherche un compromis entre performances et
coût
=> De quoi a-t ’on réellement besoin ?
� Parmi les paramètres essentiels du coût sont :
� la complexité calculatoire (= nombre d ’ops / unité de temps)
� la précision nécessaire (= nombre de bits)
� Pour un RIF, la complexité calculatoire est donnée principalement
par le nombre de coefficients des filtres
2.4. Paramètres de réalisation2.4. Paramètres de réalisation
-
35
� En analysant 1 grand nombre de filtres, on obtient l ’estimation
pour un filtre passe-bas :
Exemple : δ1 = 0.017 ; δ2 = 0.034 ; f1 = 0.10375 ; f2 = 0.14375 ;
∆f = 0.04 et Fe = 1
( )21
1010
1ln3
2δδν∆
≈Ne
0
1
1 + δ1
1 − δ1
ν1
δ2
ν11/2
filtre idéal
filtre réel
gabarit
|H|
ν2
-
36
� Un autre paramètre de réalisation est le nombre de bits que
demande l ’implantation d ’un filtre
En effet, la complexité (le coût) dépend du nombre de bits du
calculateur (DSP, FPGA, …)
� De même que pour Ne, une formule semi-empirique donne :
{ }
+
∆−
∆
++≈
21
21
,min
1
1
2
1
2 3
δδνν
ννlblblbbc
� La mise en œuvre d ’un RIF se fait par des circuits qui réalisent des
opérations d ’addition, de multiplication et de mise en mémoire.
� Aucune opération réelle n ’étant instantanée, l ’opération de filtrage:
y(n) = ∑=
−−k
i
inxih2
0
)1()(
-
37
� On obtient la structure :
� Pour réaliser le filtrage, il faut 2k + 1 mémoires, 2k + 1
multiplications et 2k additions
+ + + +
+ + + +
z z z z z
h(0) h(1) h(2) h(2k-1) h(2k)
y(n)
x(n)x(n-2k-1)
-1 -1-1 -1-1
-
38
Direct form 2Direct form 2ndnd orderorder
-
39
Transposed direct form 2Transposed direct form 2ndnd orderorder
-
40
Cascade direct formCascade direct form
-
41
Direct form (Tapped delay line)Direct form (Tapped delay line)
-
42
Transposed direct formTransposed direct form
-
43
LinearLinear--phase type 1phase type 1
-
44
LinearLinear--phase type 2phase type 2
-
45
Symmetric FIR type ISymmetric FIR type I
-
46
Symmetric FIR type IISymmetric FIR type II
-
47
Autres filtres spécifiques Autres filtres spécifiques
� Respects des pics d'un signal
� famille de filtres lissants et dérivateurs : Savitsky-Golay (1964)
� approximations polynomiales d'ordre K, sur des fenêtres L