38
1 MIC4220, Traitement numérique des signaux Mounir Boukadoum, Michaël Ménard et sources sur Internet 1 Filtres à réponse impulsionnelle finie (RIF) MIC4220, Traitement numérique des signaux Mounir Boukadoum, Michaël Ménard et sources sur Internet 2 Objectifs d’apprentissage Après ce cours vous serez en mesure: D’expliquer les conditions pour obtenir un filtre RIF avec une réponse linéaire. Faire la conception de filtre RIF en utilisant deux méthodes: La méthode des fenêtres L’échantillonnage en fréquence

Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

  • Upload
    voquynh

  • View
    236

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

1

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet1

Filtres à réponse impulsionnelle finie (RIF)

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet2

Objectifs d’apprentissage

Après ce cours vous serez en mesure:

• D’expliquer les conditions pour obtenir un filtre RIF avec une réponse linéaire.

• Faire la conception de filtre RIF en utilisant deux méthodes:

– La méthode des fenêtres

– L’échantillonnage en fréquence

Page 2: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

2

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet3

Introduction• Les filtres RIF sont caractérisés par une fonction de

transfert exprimée par un polynôme en z-1 :

(donc, pas de dénominateur => pas de pôles)

• Propriétés :– Réponse stable par défaut

– Réponse en phase linéaire pour un filtre réalisable

– Peuvent demander un temps de calcul excessif

1

0

][N

n

nznhzH

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet4

Introduction

• Utilité d’un système stable par défaut :– Pas besoin de s’assurer de la position des pôles aux bons

endroits

• Avantage d’une réponse en phase linéaire :– L’équation d’entrée/sortie d’un filtre idéal est, dans sa

bande passante :

ou, dans le domaine de Fourier :

Ceci implique une fonction de transfert avec

)t(x)t(y

)(Xe)(Y j

H1)(H

Page 3: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

3

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet5

L’équation d’un filtre RIF

• Équation d’entré/sortie:

1

0

N

kk knxbny

x[n] Valeurs successives du signal d’entréebk Coefficients de la fonction de transfert du filtrey[n] Valeurs successives du signal de sortieN Nombre de coefficients du filtre (détermine l’ordre)

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet6

Représentation d’un filtre RIF

• Diagramme de flux

• Deux filtres RIF se distinguent uniquement par leur coefficients!

x[n]

Page 4: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

4

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet7

Origine du nom RIF

1N

0kk knxbny

• Si on remplace l’entrée x[n] par une impulsion [n], la sortie est y[n]=h[n] :

1

0

][N

kk knbnh

)1(1 110 Nnbnbnb N

kn 0

kn 1kn

for

for

• Et puisque : • On en déduit :

ou

1

0

1

0

bh

bh

autrement

Nksibkh k

0

1

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet8

Observations

• La réponse impulsionnelle du filtre est égale aux valeurs successives de ses coefficients.

• Pour un filtre d’ordre N :

• Conséquences:

La connaissance des valeurs de h[n] donne automatiquement les coefficients du filtre, et vice-versa

La réponse du filtre est de durée finie et égale à NTe

Nki 0

Nki b kh k

s

s

Page 5: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

5

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet9

Réponse en fréquence

• La transformée z de

où bk=h[k] donne:

• La réponse en fréquence du filtre est obtenue en remplaçant z by ejTe :

• La similarité de forme de H() avec une série de Fourier suggère une méthode pour trouver h[n] !

1

0

N

kk knbnh

1

0

N

k

kzkhzH

1

0

N

k

Tjk

eze

eTj enhHzH

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet10

Périodicité de la réponse en fréquence

• Puisque e-j2k = 1, on a:

• Par conséquent, à l’instar de tout système à temps échantillonné, on a :

• En particulier, si on normalise Te à 1, on a:

et la période est simplement 2

HT

k2H

e

1N

0n

Tjn1N

0n

TT

2jn

e

ee

e enhenhT

2H

HkH 2

Page 6: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

6

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet11

Nécessité d’un filtre anti-alias

• Conséquences de

• Il faut respecter le critère de Nyquist: (ou si on utilise une période d’échantillonnage normalisée)

=> Utiliser un filtre anti-alias à l’entrée du convertisseur A-N

HT

2H

e

fe/2fe/2fréqfréq

x[n]

y[n]

ee

max fT

FIR y[n]x[n]

CANFiltre anti-alias

x(t)

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet12

Réponse en phase

• Un filtre réalisable possède une réponse en fréquences symétrique (sinon h[n] aurait des valeurs complexes).– Pour un filtre d’ordre N, cela implique :

ou |h[n]| = |h[N-1-n]|

0n

h(n)

1 n n+1 2n+12n

N = 2n + 2

0n

h(n)

1 n n+1 2n2n-1n-1

N = 2n + 1

Symétrie paire Symétrie impaire

ee TnNjTjn enNhenh 11

Page 7: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

7

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet13

Réponse en phase

• Si on suppose une symétrie impaire avec N=2n+1:

• Pour un symétrie paire, avec N=2n+2

0111

)1(110

20

)12(1

)1(11

00

2

0

...

......

zhzzhzzhzzhz

zhzhzhzhzhzh

zihzH

nnnnnnn

nnnn

nn

nN

i

i

nn

nn

n

nnnnn

nnnn

nn

nN

i

i

zzhzzhzzhz

zhzhzhzhzhzh

zihzH

2

12

2

121

2

121

2

12

12

12

2

12

02

12

)12(0

21

)1(11

00

12

0

...

......0

n

h(n)

1 n n+1 2n+12n

N = 2n + 2

0n

h(n)

1 n n+1 2n2n-1n-1

N = 2n + 1

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet14

Réponse en phase

• Dans les deux cas, on obtient une expression ou le terme entre crochets est réel (sommes de nombres complexes conjugués) et où l’argument du z hors-crochets donne la réponse en phase du filtre lorsque z=ejTe

– Dans les deux cas de symétrie, la réponse en phase est (ω) ωTe,

c.-à-d. de la forme kω

Condition Phase

2

1Nk Propriété Type de filtre

1 nNhnh

Symétrie positive k Phase linéaire

Symétrie impaire – Type 1

Symétrie paire – Type 2

Page 8: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

8

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet15

Réponse en phase• En utilisant le même type de dérivation, on peut montrer

que les filtres antisymétriques ont eux aussi une réponse en phase linéaire

Centre de symétrie

Centre de symétrie

Centre de symétrie

Centre de symétrie

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet16

Conception d’un filtre RIF

• L’approche est similaire à la conception d’un filtre analogique.

• Cinq étapes :1. Spécification du filtre

2. Calcul des coefficients

3. Choix d’une architecture de mise en œuvre.

4. Simulation (option).

5. Implémentation.

Page 9: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

9

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet17

Étape 1: Spécification du filtre

(a)

1

f(norm)fc : cut-off frequency

pass-band stop-band

pass-band stop-bandtransition band

1

s

pass-bandripple

stop-bandripple

fpb : pass-band frequency

fsb : stop-band frequency

f(norm)

(b)

p1

s

p0

-3

p1

fs/2

fc : cut-off frequency

fs/2

|H(f)|(dB)

|H(f)|(linear)

|H(f)|

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet18

Étape 1: exemple• Créer un filtre pour accentuer la sonorité d’un

trombone.– Passe-bande

– Transmission: 150-3000 Hz

– Transition: 100 Hz

– Échantillonnage:44 000 Hz

Page 10: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

10

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet19

Spécification• Souvent, on ramène le design à la spécification d’un

filtre passe-bas normalisé – L’échelle des fréquences est modifiée de manière à ce que

la fréquence de coupure devienne 1 ( k); une fois le filtre conçu, on revient à l’échelle des fréquences originale( /k).

• Les filtre filtres passe haut, passe bande et coupe bande peuvent être spécifiés en termes d’un filtre passe bas normalisé équivalent.– On effectue un changement de variable pour obtenir le

filtre passe bas équivalent et on défait le changement à la fin.

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet20

Étape 2: calcul des coefficients de h[n]

• Il existe plusieurs méthodes dont :– L’approximation par série de Fourier inverse

tronquée du spectre d’amplitude (méthode des fenêtres ).

– La série de Fourier inverse du spectre d’amplitude échantillonné en fréquence

– La méthode de Parks-McClellan

– Etc…

Page 11: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

11

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet21

La méthode des fenêtres• Comme bk=h[k], le calcul des coefficients revient à

trouver la réponse impulsionnelle du filtre

• On part de l’amplitude de la réponse en fréquence d’un filtre idéal et on prend sa transformée de Fourier inverse.

• Pour un filtre passe bas avec Te normalisé à 1:

Séquence infinie! On la tronque en pratique.

2... 0,1, ,

sin2

12

1

2

1

nn

nf

de

deHnh

c

cc

nj

njd

c

c

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet22

La méthode des fenêtres

Type de filtre

Passe-bas

Passe-haut

Passe-bande

Coupe-bande pour

pour

pour

pour

Réponse impulsionnelle idéaleh[n] (coefficients non causals)

• définitlepoint de troncation et est relié à l ordre dufiltre

Page 12: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

12

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet23

La méthode des fenêtres

• Si on limite la progression de n à N, cela revient à multiplier hd[n] par une fenêtre rectangulaire de même largeur, modifiant ainsi hd[n].– L’effet est la convolution de H(ω) par la transformée de

Fourier de la fenêtre rectangulaire, ce qui affecte aussi la réponse en fréquence du filtre.

• On peut minimiser l’effet en utilisant des fenêtres non rectangulaire.– L’ordre du filtre, N, dépendra du type de fenêtre et de la

largeur de la bande de transition.

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet24

La méthode des fenêtres

• Calcul des coefficients du filtre tronqué:

• Par exemple, fenêtre de Hamming (avec Te=1) :

pair pour

impair pour

22

2

1

2

1

N

NN

nN

Nn

N

133

2cos46.054.0

2

cos46.054.0][

n

N

nnW

N=133 et -66 ≤ n ≤ 66 dans l’exemple

nWnhnh d

Page 13: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

13

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet25

Exemple• Exemple de réponse passe bas à fenêtre de

Hamming (fe=8kHz, fc=1.3 kHz, Δf=200 Hz)

0 5 10 15 20 25-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

Coefficient number

Val

ueTruncated Impulse Response

0.002680185144672

-0.001175459081146

-0.007352762361627

0.000674199916282

-0.011061614566310

0.004884445218787

0.053381802959437

-0.003877229761413

0.028520376706076

-0.008868219888928

-0.296393895946737

0.008172485670763

0.462500000000000

0.008172485670763

-0.296393895946737

-0.008868219888928

0.028520376706076

-0.003877229761413

0.053381802959437

0.004884445218787

-0.011061614566310

0.000674199916282

-0.007352762361627

-0.001175459081146

0.002680185144672

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet26

La méthode des fenêtres

• Fenêtres communes (-M ≤ n ≤ M)

– Rectangulaire: w 1

– Hanning: w 0,5 0,5 cos

– Hamming: w 0,54 0,46 cos

– Blackman:

w 0,42 0,5 cos 0,08cos

Page 14: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

14

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet27

La méthode des fenêtres

-40 -30 -20 -10 0 10 20 30 400

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Number of samples

Mag

nitu

de

O: triangulaire (Bartlett)+: Hanning─: Hamming--:Blackman

• Grandes ressemblances, mais effets différent sur la réponse du filtre!

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet28

Fenêtre de Kaiser

• La plus efficace à priori :

1

0

, 0

où α=M/2 et I0(x) est la fonction de Bessel modifiée d’ordre zéro.

• La forme de la fenêtre peut être ajustée en changeant M et/ou β.

autrement

Page 15: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

15

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet29

La méthode des fenêtres

• Kaiser a démontré de façon empirique que β est relié à δ , l’ondulation dans la bande passante, par:

0,1102 8,7 , 500,584 21 , 0,07886 21 21 50

0 2120 log

et M suit la relation :

28

2,285

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet30

La méthode des fenêtres

β = 6

M = 20

Page 16: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

16

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet31

La méthode des fenêtres• On trouve l’ordre du filtre selon la largeur de la bande de transition,

une fois choisie l’atténuation dans la bande d’arrêt.

Fenêtre Bande de transition normalisée (f(Hz))

Ondulation dans la bande passante (dB)

Atténuation dans la bande d’arrêt (dB)

Amplitude du lobe secondaire

(dB)

β de la fenêtre de Kaiser

équivalente

Rectangulaire N

9.0 0.7416 -21 -13 0

Hanning N

1.3 0.0546 -44 -31 3.86

Hamming N

3.3 0.0194 -53 -41 4.86

Blackman N

5.5 0.0017 -74 -57 7.04

Kaiser

54.493.2

N

96.871.5

N

0.0274

0.000275

-50

-90

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet32

Exemple

0 500 1000 1500 2000 2500 3000 3500 4000-5000

-4000

-3000

-2000

-1000

0

1000

Frequency (Hz)

Pha

se (

deg

ree

s)

0 500 1000 1500 2000 2500 3000 3500 4000-70

-60

-50

-40

-30

-20

-10

0

10

Frequency (Hz)

Mag

nitu

de (

dB

)

Hamming, N=25 et N=101

Page 17: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

17

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet33

Exemple: Trombone

• Bande de transmission: 150-3000 Hz

• Bande de transition: 100 Hz

• Fréquence d’échantillonnage: 44 000 Hz

• Filtre avec M=5 (N=2)

• Fenêtre de Blackman

1. Normalisation des fréquences

Ω 2 215044000

3440

Ω 2 2300044000

322

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet34

Exemple: Trombone

2. Calcul les coefficients selon les formules

0Ω Ω 3

223440 0,1295

1sin Ω sin Ω

0,1254

2sin 2Ω

2sin 2Ω

20,1135

Page 18: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

18

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet35

Exemple: Trombone

3. Ajustement des coefficients avec la fenêtre de Blackman

w 0,42 0,5 cos 0,08cos2

w 0 0,42 0,5 0,08 1w 1 0,42 0,08 0,34w 2 0,42 0,5 0,08 0

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet36

Exemple: Trombone

4. La fonction de transfert est:

0,0426 0,1295 0,0426

5. L’équation aux différences est:

0,0426 0,1295 1 0,0426 2

Page 19: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

19

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet37

Exemple: Trombone

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet38

Exemple: Trombone• N=201

Page 20: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

20

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet39

Exemple: Trombone

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet40

Exemple: Passe-haut• On veut un filtre passe-haut avec 5 coefficients avec une

fréquence de coupure de 250 Hz fonctionnant avec une fréquence d’échantillonnage de 1 kHz basé sur la fenêtre de Hamming.

1. Normalisation des fréquences

Ω 2 22501000

12

Page 21: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

21

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet41

Exemple: Passe-haut

2. Calcul des coefficients en utilisant les formules

0Ω 1

2 0,5

1sin Ω

0,318

2sin 2Ω

20

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet42

Exemple: Passe-haut3. Ajustement des coefficients avec la fenêtre:

w 0,54 0,46 cos

w 0 0,54 0,46 1w 1 0,54 0 0,54

4. La fonction de transfert est:

0,1719 0,5 0,1719

Page 22: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

22

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet43

Exemple: Passe-haut

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet44

Exemple: Nombre de coefficients• Filtre coupe-bande:

– Bande-passante basse: 0-1.2 kHz

– Bande d’arrêt: 1.6-2.0 kHz

– Bande-passante haute: 2.4-4.0 kHz

– Ondulation dans la bande-passante: 0.05 dB

– Atténuation dans la bande d’arrêt: 60 dB

– Fréquence d’échantillonnage: 8.0 kHz

• Trouver la fenêtre et le nombre de coefficients.

Page 23: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

23

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet45

Exemple: Nombre de coefficients• À partir du tableau des fenêtres :

– Ondulation de 0.05 dB Fenêtre de Blackman

• Longueur du filtre:

∆5.5

→5.5

1.6 1.28.0

110

5.52.4 2.0

8.0

110 →

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet46

La méthode des fenêtres• Code MATLAB pour calculer les coefficients:% filtre passe bas : fc = 8000 Hz, fe = 44100 Hz, N=133 (|M|=66), fenetre de Blackman

close all;clear all;

fc = 8000/44100; % frequence de coupureN = 133; % nombre de valeurs (“taps”)n = -((N-1)/2):((N-1)/2);n = n+(n==0)*eps; % seulement pour prevenir la division par 0

[h] = sin(n*2*pi*fc)./(n*pi); % generation de la sequence de coefficients ideaux[w] = 0.54 + 0.46*cos(2*pi*n/N); % generation de la fenetred = h.*w; % filter ideal modifiéfigure(1);stem(d); % Tracé des valeurs de coefficients obtenuesxlabel('Coefficient number');ylabel ('Value');title('Truncated Impulse Response');

figure(2)freqz(d,1,512,44100); % freqz trace les reponses en amplitude et en phase axis([0 2*10^4 -70 10]);

Page 24: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

24

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet47

La méthode des fenêtres

0 0.5 1 1.5 2

x 104

-6000

-4000

-2000

0

Frequency (Hz)

Pha

se (

degr

ees)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 104

-60

-40

-20

0

Frequency (Hz)

Mag

nitu

de (

dB)

0 20 40 60 80 100 120 140-0.1

0

0.1

0.2

0.3

0.4

Coefficient number

Val

ue

Truncated Impulse Response

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet48

Conception de filtre RIF par échantillonnage en fréquence

• Au lieu de tronquer la transformée inverse de la réponse en fréquence idéale désirée, on l’échantillonne uniformément.– Utilise aussi la TFD inverse pour trouver les coefficients.

• On obtient un système causal en délayant la réponse

• On assume la symétrie des coefficients pour obtenir une réponse en phase linéaire.

• Approche très flexible.

Page 25: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

25

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet49

Échantillonnage en fréquence

1

cos2

sin2

Équivalent à:

12 1

2 cos22 1

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet50

Exemple• Transmission: 150-3000 Hz

• Transition: 100 Hz

• Échantillonnage: 44 000 Hz

• Échantillonnage de la réponse en fréquence: 220 Hz

1. La valeur des échantillons en fréquence H(k) est:

H(0) = 0

H(1-14) = 1

H(18-200) = 0

1201

2 cos2 100

201

Page 26: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

26

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet51

Exemple

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet52

Exemple

Page 27: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

27

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet53

Exemple

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet54

Comparaison• Fenêtre vs. Fréquence

Page 28: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

28

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet55

• Motivation

– La fenêtre rectangulaire devrait minimiser l’erreur quadratique moyenne entre le filtre idéal et celui obtenu après troncation de la réponse impulsionnelle

12

– Mais la discontinuité lors de la transition de la bande passante à celle d’arrêt créé des ondulations indésirables de grande amplitude (phénomène de Gibbs)

– Les autres fenêtres établissent un compromis entre le niveau d’ondulation et l’erreur de représentation.

Filtres à ondulations également reparties

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet56

• On aimerait pouvoir réduire l’effet du phénomène de Gibbs afin d’obtenir l’ordre N le plus bas pour un niveau d’erreur donné

• La méthode des fenêtres et l’échantillonnage en fréquence n’offrent pas de contrôle sur la distribution de l’erreur

Filtres à ondulations également reparties

Page 29: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

29

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet57

Filtres à ondulations également reparties• But:

– Réduire l’ordre de l’équation de transfert du filtre pour un niveau d’erreur donné.

• Autrement dit, trouver l’équation optimale pour un ordre donné.

• Approche:– Distribuer l’erreur sur toute la bande passante

(equiripple filter)

– Permettre d’obtenir un niveau d’erreur différent dans la bande passante et la bande d’arrêt.

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet58

Filtres à ondulations également reparties

Page 30: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

30

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet59

• Principe :– Transformer la conception du filtre en

l’optimisation d’une approximation polynomiale

∑ ∑ cos

• Définir la forme de l’équation optimale en termes de l’erreur de l’erreur maximale tolérée (utilisation du théorème d’alternance)

• Appliquer l’algorithme de Parks-McClellan pour trouver les coefficients de l’équation (lui-même basé sur d’autre algorithmes dont l’algorithme d’échange de Remez)

• Procédure complexe et non intuitive!

Filtres à ondulations également reparties

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet60

Algorithme Parks-McClellanEstimation de (M+2) fréquences d’extrême

Calcule du δ sur l’ensemble de fréquence d’extrême

Interpolation sur (M+1) pour obtenir A(ejω)

Calcule l’erreur E(ω) et recherche de les maximums locaux

Meilleur approximation

Vérifie si les fréquences d’extrême ont changé

Plus de (M+2) extrêmes?

Garde les (M+2) plus

grand extrêmeNon

Oui

Changé

Inchangé

Page 31: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

31

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet61

Conception avec Parks-McClellan1. Normaliser les fréquences définissant les extrémités des bandes par

rapport à la fréquence de pliure (féchantillonnage/2).

2. Calculer les valeurs absolues des ondulations tolérées dans la bande passante et l’atténuation dans la bande d’arrêt.

10

1

10

3. Trouve les poids (W).

é

é

3. Utilise l’algorithme de Remez pour trouver les coefficients.

4. Si les spécifications ne sont pas respectées, on augmente l’ordre et recommence.

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet62

Exemple• Filtre passe-bas, spécifications:

– Fréquence d’échantillonnage: 8 000 Hz

– Bande de passage: 0-800 Hz

– Bande d’arrêt: 1 000 – 4 000 Hz

– Ondulation dans la bande passante: 1 dB

– Atténuation dans la bande d’arrêt: 40 dB

– Ordre du filtre: 53

Page 32: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

32

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet63

Exemple• Fréquences normalisées:

– 0 Hz: 0/4000 = 0 magnitude:1

– 800 Hz: 800/4000= 0,2 magnitude:1

– 1000 Hz: 1000/4000= 0,25 magnitude:0

– 4000 Hz: 4000/4000= 1 magnitude:0

• Les poids:

10

1 0,122 10

0,01

12,2121

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet64

Code Matlab fs=8000; %Fréquence d'échantillonnage

N=53; %Ordre du filtre

f=[0 0.2 0.25 1]; %Fréquences de coupures

m=[1 1 0 0]; %Amplitude optimales

w=[1 12]; %Poids

b=remez(N,f,m,w); %Algorithme de Remez

freqz(b,1,512,fs) %Affichage des résultats

axis([0 fs/2 -80 10]); %Ajustement des axes

Page 33: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

33

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet65

Exemple

0 500 1000 1500 2000 2500 3000 3500 4000-80

-70

-60

-50

-40

-30

-20

-10

0

10

Frequency (Hz)

Mag

nitu

de (

dB)

0 500 1000 1500 2000 2500 3000 3500 4000-1400

-1200

-1000

-800

-600

-400

-200

0

Frequency (Hz)

Pha

se (

degr

ees)

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet66

Exemple

• Passe-bande

• Transmission: 2 500-4 000 Hz

• Transition: 200 Hz

• Échantillonnage: 10 000 Hz

• Ondulation: 2 dB

• Atténuation: 20 dB

Page 34: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

34

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet67

Exemple• Fréquences normalisées:

– 0 Hz: 0/5000 = 0 mag.:0

– 1300 Hz: 1300/5000 = 0,26 mag.:0

– 1500 Hz: 1500/5000= 0,3 mag.:1

– 3000 Hz: 3000/5000= 0,6 mag.:1

– 3200 Hz: 3200/5000 = 0,64 mag.:0

– 5000 Hz: 5000/5000= 1 mag.:0

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet68

Exemple• Les poids:

10

1 0, 26 10

0,1

2,6135

Page 35: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

35

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet69

Exemple

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet70

Mise en œuvre• On peut utiliser toutes les formes discutées

précédemment et leur transposées– Direct

– Cascade

– Parallèlez

-1z

-1z

-1

+ + +

b0

b2

bN-1

y(n)

x(n)

b1

Page 36: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

36

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet71

Mise en œuvre

• La symétrie des filtres linéaires en phase permet de réduire les multiplications.

+

b0+

+

+

+b

1

+b

2

+b

N/2-1

y(n)

z-1

z-1

z-1

z-1

z-1

+

b0

+

+

+

+b

1

+b

2

+b(N-3)/2

y(n)

x(n)

b(N-1)/2

+

z-1

z-1

z-1

z-1

z-1

z-1

N pair

N impair

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet72

FDATool de matlab

Page 37: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

37

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet73

Sommaire• Les filtres FIR sont stables par défaut.

• Lorsque les coefficients de la réponse impulsionnelle sont réels et symétriques ou antisymétriques, la réponse en phase est linéaire.

• Deux méthodes possibles pour la conception de filtres RIF:– Méthode des fenêtres

– Échantillonnage en fréquence

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet74

Sommaire• L’algorithme Parks-McClellan permet d’obtenir l’équation

optimale définissant un filtre où l’erreur d’ondulation est distribuée (equiripple) pour un ordre donné.

• L’optimisation est garantie par le théorème d’alternance.

• Procédure de conception:– Normalise les fréquences (avec fe/2)

– Trouve les poids

– Algorithme de Remez

– Inverse TFD

• La symétrie de la réponse impulsionnelle permet de réduire le nombre de multiplication lors de la mise en œuvre.

Page 38: Filtres à réponse impulsionnelle finie (RIF)boukadoum_m/MIC4220/Notes/6-MIC4220_RIF.pdf · Filtres à réponse impulsionnelle finie (RIF) MIC4220, ... FIR y[n] x[n] CAN Filtre anti-alias

38

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet75

SommaireMéthode Fenêtre Échantillonnage Parks-McClellan

Type de filtre 1. Passe-bas, passe-haut,passe-bande, Coupe-bande

2. Équations pas valide pour des réponses arbitraires

1. Tous types de filtre2. Équations valide

pour des réponses arbitraires

1. Tous types de filtre2. Équations valide

pour des réponses arbitraires

Phase linéaire Oui Oui Oui

Spécification des ondulations et de l’atténuation

Utilisé pour déterminer l’ordre du filtre et les fréquences de coupure

Doit être vérifié après chaque itération

Nécessaire pour l’algorithme mais doit

être vérifié après chaque itération

Complexité de l’algorithme

Modéré Simple Compliqué

Outils de conception requis

Calculatrice Calculatrice Logiciel

MIC4220, Traitement numérique des signaux

Mounir Boukadoum, Michaël Ménard et sources sur Internet76

Prochain cours• Problèmes

– 7.1, 7.3, 7.5, 7.7, 7.9, 7.11, 7.13, 7.17, 7.34, 7.35

• Lecture– Chapitres 7 et 8 de Tan