65
1 TNS 2En Corinne Mailhes dernière modification 2010 De la Théorie du Signal à la pratique du Traitement du Signal

De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

1TNS – 2En – Corinne Mailhes – dernière modification 2010

De la Théorie du Signalà la pratique du Traitement du Signal

Page 2: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

2

I.Du TS au TNS

Bases du TS

Le Traitement Numérique du Signal démarre ici

TNS de base :

1. Comment calculer une Densité Spectrale de Puissance (DSP) ? (analyse)

2. Comment faire un filtre numérique ?

(traitement, élimination de composantes indésirables)

Page 3: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

3

Transcrire numériquement la T.F. : intégrale continue sur R ???

Avec

signal connu sur horizon fini (durée L)

signal échantillonné : N échantillons espacés de Te (L=NTe)

Définition de la T.F.D. (Transformée de Fourier Discrète)

calcul pour les fréquences normalisées : f = k/N

Algorithme réversible : N points de signal, N points de fréquence

Relation T.F. / T.F.D. : seul pb vient de la troncature

Exemple sur un sinus de fréquence commensurable ou non avec Fe

~

f ~

f ~

f0 = k0/N ~

II. De la TF à la TFD

Page 4: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

4

T.F.D. et T.F.D. inverse

http://asi.insa-rouen.fr/enseignement/siteUV/tds/cours7.pdf

Page 5: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

5

D(f) : noyau de Dirichlet

Fréquences normalisées

N=46

0 0.5 1 1.5 2 2.5 3 3.5-50

-40

-30

-20

-10

0

10

20

30

40

50

La troncature liée à la fenêtre d’observation provoqueune convolution par le noyau de Dirichlet

Page 6: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

6

Comparaison noyau de Dirichlet et sinus cardinal

Fréquences normalisées

ZOOM

0.34 0.5

1

-10.34 0.36 0.38 0.4 0.42 0.44 0.46 0.48 0.5

-1

-0.5

0

0.5

1

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5-20

-10

0

10

20

30

40

50

Page 7: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

7

III. Propriétés de la TFD Les mêmes

que celles

de la TF ?

P1 – Périodicité

P2 – Linéarité

P3 – Décalage temporel / fréquentiel

P4 – Symétrie hermitienne

P5 – Théorème de Parseval

P6 – Produit et convolution… circulaire !!!

convolution circulaire convolution linéaire

convolution circulaire = convolution linéaire entre

entre signaux prolongés périodiquement,

avec périodicité N

Page 8: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

8

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …*

x(n)*y(n) = x(k) y(n-k) k

… 0 0 1 2 3 2 1 0 0 …0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …… 0 0 1 1 1 1 1 0 0 …

0

13

68

98

63

1

0

x(n) y(n) = x(k) y([n-k]mod N) k

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …

… 0 0 1 2 3 2 1 0 0 …1 1 1 1 1 1 1 1 1 1 1 1 1 1…

… 1 1 1 1 1 1 1 1 1 1 1 1 1…… 1 1 1 1 1 1 1 1 1 1 1 1…

9

99

N=5

Mais on peut s’arranger

pour que

= *

Page 9: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

9

… 0 0 1 2 3 2 1 0 0 …

… 0 0 1 1 1 1 1 0 0 …

Au lieu de faire On prolonge x(n) et y(n) avec des zéros

Et on fait la convolution sur N=10 points

… 0 0 1 2 3 2 1 0 0 0 0 0 0 0 …0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0… 0

13

0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…

0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…0 0 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 0…

68

Moralité

TFD (x(n)) . TFD(y(n)) x(n) y(n)

TFD (x(n) 0…0) . TFD(y(n) 0….0) x(n)*y(n)

N zéros N zéros

Page 10: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

10

Meilleure représentation spectrale

et convolution circulaire évitée :

le zero-paddingAvant T.F.D., signal « paddé » par 0

y(n)= x(n) pour n = 0,…,N-1

y(n)= 0 pour n = N,…,M.N-1

MN points en entrée de l ’algorithme

et donc MN points en sortie :

MN points de TF au lieu de N

la T.F.D. est calculée sur plus de points, mieux représentée

entre deux points du calcul sur N points, M-1 points supplémentaires0 1

f ~

N points

MN points

Ne change rien au pouvoir séparateur, permet seulement une

meilleure représentation… mais absolument nécessaire !!!

IV. Intérêt du zero-padding Lao-Tzeu l’a dit : il faut faire du zero-padding !

Toujours

Page 11: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

11

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.450

0.5

1

1.5

2

2.5

3

3.5

416 points de signal, 16 points de TF

0 0.1 0.2 0.3 0.4 0.50

1

2

3

4

5

6

7

816 points de signal, 32 points de TF

0 0.1 0.2 0.3 0.4 0.50

2

4

6

8

1016 points de signal, 64 points de TF 16 points de signal, 1024 points de TF

0 0.1 0.2 0.3 0.4 0.50

2

4

6

8

10

ZERO PADDING POUR « VOIR » LE SINUS CARDINAL…

Page 12: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

12

X[k]

n 0

(N/ 2) 1

x[2r]WN /2rk WN

k

n 0

(N/ 2) 1

x[2r 1]WN / 2rk

r=0 r=0

En 1967,

TFD de 8192 points :

30 min sans FFT

5 sec avec FFT !

V. De la TFD à la FFT (Fast Fourier Transform)

Page 13: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

13

On continue…

Page 14: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

14

Au final N log2(N) opérations élémentaires…

Page 15: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

15

FFT Discrete Fourier transform.

FFT(X) is the discrete Fourier transform (DFT) of vector X. For

matrices, the FFT operation is applied to each column. For N-D

arrays, the FFT operation operates on the first non-singleton

dimension.

FFT(X,N) is the N-point FFT, padded with zeros if X has less

than N points and truncated if it has more.

IFFT Inverse discrete Fourier transform.

IFFT(X) is the inverse discrete Fourier transform of X.

IFFT(X,N) is the N-point inverse transform.

FFTSHIFT Shift zero-frequency component to center of spectrum.

For vectors, FFTSHIFT(X) swaps the left and right halves of

X. For matrices, FFTSHIFT(X) swaps the first and third

quadrants and the second and fourth quadrants. For N-D

arrays, FFTSHIFT(X) swaps "half-spaces" of X along each

dimension.

FFTSHIFT(X,DIM) applies the FFTSHIFT operation along the

dimension DIM.

FFTSHIFT is useful for visualizing the Fourier transform with

the zero-frequency component in the middle of the spectrum.

Page 16: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

16

I.Problème de l’estimation spectrale

Rappels :

DSP : 2 définitions équivalentes si la fonction

d’autocorrélation décroît suffisamment.

1

2

Estimation de la DSP :

• méthodes non paramétriques, basées sur la TF et sur ces

deux définitions (corrélogramme et périodogramme)

• méthodes paramétriques

Page 17: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

17

II. Méthodes du périodogramme et corrélogramme

1. Périodogramme

2. Corrélogramme

3. Propriétés

Corrélogramme avec estimateur biaisé de la corrélation = périodogramme

Biais convolutif avec noyau de Fejer

Variance pour un bruit blanc Gaussien

Page 18: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

18

Noyau de Fejer

-0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.50

5

10

15

20

25

30

35

-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5

-50

-40

-30

-20

-10

0

10

20

N=32

~1/N

Fréquences

Fréquences

Page 19: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

19

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

1

2

3

4

5

6

7

8

N = 30 points de signal, FFT sur 2048 points (zero-padding)

Analyse spectrale par périodogramme :problème de résolution spectrale (« smearing »)

Composition du signal : un sinus ?????

Fréquences

Page 20: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

20

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

2

4

6

8

10

12

14

16

Fréquences

N = 50 points de signal, FFT sur 2048 points (zero-padding)

Et non ! 2 sinus de fréquences très proches !!!

(1/50 de différence)

Page 21: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

21

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

1

2

3

4

5

6

7

8

N = 30 points de signal, FFT sur 2048 points (zero-padding)

Composition du signal : un sinus ?????

Fréquences

Analyse spectrale par périodogramme :problème de « leakage » (fuite des lobes secondaires)

Page 22: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

22

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-35

-30

-25

-20

-15

-10

-5

0

5

10

Fréquences

Et non ! 2 sinus d’amplitudes très différentes !!!

N = 30 points de signal, FFT sur 2048 points (zero-padding)

AFFICHAGE EN ECHELLE LOG

Page 23: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

23

III. Méthodes de Blackman-Tuckeyet périodogramme modifié

Estimateur biaiséFenêtre de pondération

sur la corrélation

ou

sur le signal

Moyennage « local » pondéré du périodogramme

Lissage des variations importantes du périodogramme

Diminution de la résolution

Compromis à faire entre RESOLUTION et VARIANCE.

Blackman-Tuckey

Périodogramme modifié

Page 24: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

24

0 0.1 0.2 0.3 0.4 0.510

-10

10-8

10-6

10-4

10-2

100

102

fréquences normalisées

rectangulaire

triangulaire

Effet des fenêtres

0 0.1 0.2 0.3 0.4 0.510

-12

10-10

10-8

10-6

10-4

10-2

100

102

fréquences normalisées

Hamming

Hanning

On the use of windows for

harmonic analysis

with the discrete Fourier transform

Harris, F.J.

Proceedings of the IEEE

Volume 66, Issue 1,

Jan. 1978 Page(s): 51 - 83

Effet spectral

des fenêtres

d’apodisation

Lancer window

Page 25: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

25

http://opus.grenet.fr/dokeos/inpg/courses/ENSE3A24EMAAAL0/document/CoursAspect-Grandeurs_Spectrales.pdf?cidReq=ENSE3A24EMAAAL0

Page 26: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

26

IV. Méthode de Bartlett

1.04 1.045 1.05 1.055 1.06 1.065 1.07

x 104

-3

-2

-1

0

1

2

M échant.

N échantillons

M échant. M échant. M échant.

Page 27: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

2727

IV. Méthode de Welch

1.04 1.045 1.05 1.055 1.06 1.065 1.07

x 104

-3

-2

-1

0

1

2

M échant.

N échantillons

M échant.

M échant.

M échant.

M échant.

M échant.

Recouvrement possible des tranches

Introduction d’une fenêtre de pondération avant de faire le périodogramme

Sur chaque tranche

Page 28: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

28

Taille des segments : 4096, recouvrement de 30%, 44 segments

Fenêtre de Hanning

Signal d’engrenage (EDF) Voir SPtool

Page 29: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

29

Taille des segments : 16384, recouvrement de 30%, 10 segments

Fenêtre de Hanning

Page 30: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

30

Taille des segments : 65536, 1 segment, fenêtre de Hanning

Page 31: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

31

L’autre application des plus courantes en T.S.,

après l’analyse spectrale

Filtrage linéaire invariant dans le temps

Relations numériques inspirées de l’analogique

h(n)x(n) y(n)

y(n)= x(n) h(n) = h(k)x(n-k)

= x(k)h(n-k)

h(n) réponse impulsionnelle

H(f) = T.F.D. {h(n)} réponse fréquentielle

h(t)x(t) y(t)

y(t)= x(t) h(t) = h(u)x(t-u)du

= x(u)h(t-u)du

h(t) réponse impulsionnelle

H(f) = T.F. {h(t)} réponse fréquentielle

~

Page 32: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

32

0 20 40 60 80 100-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

Te

L’échantillonnage idéal : x(t) x(nTe) n=0,…,N-1

xe(n) = x(nTe) (t-nTe)

L’échantillonnage idéal

provoque une périodisation

du spectre autour des multiples

de la fréquence d’échantillonnage

Fe=1/Te

Xe(f)=Fe X(f - nFe)

À temps continu :

Transformée de Laplace,

Transformée de Fourier

À temps discret :

Transformée en Z,

Transformée de Fourier Discrète

I. La transformée en Z: l’outil du filtrage numérique

Page 33: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

33

Définition de la transformée en Z

{x(n)} X(z) = x(n) z-n

n = 0, 1,…,+ : TZ unilatérale

n = - ,…,-1,0,1,…,+ : TZ bilatérale

Les relations entre ces transformées

Laplace : X(p) = x(t) e–pt dt

Fourier : X(f) = x(t) e–i2 ft dt

z=e i2 f TZ=TFD~

p = i2 f TL = TF

T.Z : X(z) = x(n) z–n

TFD : X(k) = x(n) e–i2 kn/N

n=0

N-1

Page 34: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

34

Propriétés de la Transformée en Z

x(n) y(n) X(z).Y(z)

x(n-k) X(z) z-k z-1 retard d’échantillonnage

Dans un filtre linéaire :

y(n)= x(n) h(n) Y(z) = X(z).H(z)

h(t)(t) h(t)

Réponse impulsionnelle d’un filtre :

Impulsion

De Dirac

h(n)(n) h(n)

Symbole

De Kronecker

Page 35: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

35

Par analogie avec filtres analogiques, réponse fréquentielle rationnelle

H(z) = a0=1 h(n) = T.Z.-1{H(z)}bk z

-k

ak z-k

k=0

k=0

M

M

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

Des filtres analogiques aux filtres numériques

Remarque : on note « M » dans les deux sommes par simplicité.

Nombre de coefficients dans les deux sommes pas forcément égaux.

| H(f) |² = H(z) H(z-1 ) | z = e i2 fTe

Suppose coefs réels

Page 36: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

36

Spécifications des filtres numériques

Page 37: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

37

Spécifications des filtres numériques

Page 38: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

38

Cas particulier de filtres non récursifs :

y(n) = bk x(n-k)

d’où

H(z) = bk z-k h(n) = bn pour n=0,…,M

filtre à Réponse Impulsionnelle Finie (R.I.F.)

tout zéro, pas de pb de stabilité, faible sensibilité numérique

non récursif

à mémoire finie, défini par M+1 coefficients

phase linéaire possible

k=0

k=0

M

M

RIFx(n) y(n)

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

II. Filtres RIF (FIR) : 1) Définition

Page 39: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

39

H(f) = bk e-i2 kfTe = R(f) e-i (f)

k=0

M

Temps de Propagation de Groupe (TPG) = évaluation du temps

de propagation des paquets d’onde dans le système linéaire

(f) = - 1/(2 ) ’(f)

Ex : une sinusoïde de fréquence f0 retardée de (f0) en sortie du filtre.

Phase linéaire = TPG constant (f) = 0 + 2 f

• si 0 = 0, on obtient un RIF à coefficients réels et symétriques

• si 0 = /2, on obtient un RIF à coefficients réels et antisymétriques

• sinon, RIF à coefficients complexes

h(n) h(n)

II. Filtres RIF (FIR) : 2) Phase linéaire

Page 40: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

40

H(f)

f

0 0.5

n

H(f)

f

0 0.5M+1 coefficients

II. Filtres RIF (FIR) : 3) Synthèse

Page 41: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

41

À partir d’un filtre idéal et troncature de la réponse impulsionnelle

hRIF(n)=hI(n).w(n) soit HRIF(f)=HI(f) W(f)

w(n) : fenêtre d’apodisation de support : n=-p,…,p

conditionne l’ordre du filtre : filtre RIF d ’ordre 2p+1 = M+1

filtre causal : décalage de la réponse impulsionnelle :

hRIF(n)= hRIF(n-p)

influence des paramètres : ordre du filtre, fenêtre d’apodisation

Ondulations en bande passante et affaiblie égales

Amplitude des ondulations non constante

existe algorithmes d’optimisation pour égaliser les ondulations

dans la bande et hors bande : REMEZ

II. Filtres RIF (FIR) : 3) Synthèse

Page 42: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

42

Voir fdatoolFonctions Matlab pour synthèse de filtres RIF• fir1 : FIR filter design using the window method.

B = FIR1(N,Wn) designs an N'th order lowpass FIR digital filter

and returns the filter coefficients in length N+1 vector B.

B = FIR1(N,Wn,'high') designs an N'th order highpass filter.

You can also use B = FIR1(N,Wn,'low') to design a lowpass filter.

If Wn is a multi-element vector, Wn = [W1 W2 W3 W4 W5 ... WN],

FIR1 returns an order N multiband filter with bands

• fir2 : FIR2 FIR arbitrary shape filter design using the frequency sampling method.

B = FIR2(N,F,A) designs an N'th order FIR digital filter with the

frequency response specified by vectors F and A, and returns the

filter coefficients in length N+1 vector B. Vectors F and A specify

the frequency and magnitude breakpoints for the filter such that

PLOT(F,A) would show a plot of the desired frequency response.

• voir aussi firls, firpm (optimisations moindres carrés et norme Lsup)

• autre fonction utile, FREQZ Digital filter frequency response.

[H,W] = FREQZ(B,A,N) returns the N-point complex frequency response

vector H and the N-point frequency vector W in radians/sample of

the filter, given numerator and denominator coefficients in vectors B and A. The

frequency response is evaluated at N points equally spaced around the

upper half of the unit circle. If N isn't specified, it defaults to 512.

Page 43: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

43

RIF : Choix de l’ordre (échelle linéaire)

0 100 200 300 400 500 600 700 800 900 10000

0.5

1

1.5

Fréquence (Hz)

Am

plit

ude

Ordre 20

Ordre 50Ordre 200

Synthèse par fenêtre naturelle (rectangulaire)

Page 44: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

44

RIF : Choix de l’ordre (échelle logarithmique)

0 100 200 300 400 500 600 700 800 900 1000-45

-40

-35

-30

-25

-20

-15

-10

-5

0

Fréquence (Hz)

Am

plit

ude

(dB

)

Ordre 20Ordre 50

Ordre 200

Synthèse par fenêtre naturelle (rectangulaire)

Page 45: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

45

RIF : Choix de la fenêtre (échelle logarithmique)

0 100 200 300 400 500 600 700 800 900 1000-45

-40

-35

-30

-25

-20

-15

-10

-5

0

Fréquence (Hz)

Am

plit

ud

e (

dB

)

RIF d’ordre 50

Fenêtre naturelle (rectangulaire)

Fenêtre de Kaiser

Fenêtre de Hamming

Page 46: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

46

RIF : Choix de la fenêtre

Voir : « On the Use of Windows for Harmonic Analysiswith the Discrete Fourier Transform »,

F.J.Harris, Proc. Of the IEEE, vol 66, n1, Jan. 1978.

Choix entre largeur du lobe principal (pente du filtre)et les ondulations (ondulations dans les bandes)

0 10 20 30 40 50 60 70 80 90 1000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Hamming

Hanning

Bartlett (triangulaire)

Blackman

… diverses façons

d’arrondir la coupure

Page 47: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

47

RIIx(n) y(n)

y(n) = - ak y(n-k) + bk x(n-k)

M M

k=1 k=0

Filtres récursifs, propriétés proches des filtres analogiques

Fonction de transfert :

H(z) = bk z

-k

ak z-k

k=0

k=1

M

M

| H(f) |² = H(z) H(z-1 ) | z = e i2 fTe

Présence de pôles

!!! Risque d’instabilité !!!

III. Filtres RII (IIR) : 1) Définition

Page 48: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

48

Réponse impulsionnelle et stabilité

Si dénominateur n’a que des pôles simples, h(n) = Ak pkn n>0

avec H(z) décomposé en éléments simples

H(z) =

alors la condition de stabilité : entrée bornée - sortie bornée :

|h(n)| < Bh pour tout n |pk| < 1 pour tout k

k=1

M

1-pkz-1

Ak

k=1

M

1

1

-1

-1

III. Filtres RII (IIR) : 2) Propriétés

P1

Page 49: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

49

Réponse en phase : systèmes à minimum de phaseDéfinition :tous les zéros du numérateur du filtres sont dans le cercle unité

(tous en dehors : système à maximum de phase)

(en dehors et en dedans : système à phase mixte)

Intérêt du minimum de phase : système inverse stable

Propriété recherchée dans beaucoup d’applications

Réponse en phase : TPGOn démontre :

filtres rationnels ne peuvent pas avoir de phase linéaire (sauf RIF)

P2

P3

Page 50: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

50

1. Synthèse d’un filtre analogique HA(p)

2. Transformation HA(p) HN(z)

conservant certaines propriétés de HA(p) à HN(z).

Conservation

d’une réponse

temporelle

Conservation

d’une réponse

harmonique

III. Filtres RII (IIR) : 3) Synthèse

Synthèse par invariance

à une entrée (peu utilisée)

Ne garantit rien sur comportement fréquentiel

(peut avoir pbs d’aliasing)

Page 51: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

51

p

HA(p)

z

HN(Z) = HA(T(z))

Principe : changement de variable

1

1

-1

-1

Fraction

rationnelle

Conservation

d’une réponse

harmonique

Page 52: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

52

Transformer une droite en cercle : transformation homographique,

appelée Transformée bilinéaire

1- z-1

1+z-1p = c Souvent c = 2/Te

fA=Fe/ tan( fN ) : préserve les basses fréquences~

Page 53: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

53

fN

Gabarit numérique

fC1 fC2

A=2Fe tan( fN ) ~

AC1 C2

Gabarit analogique

Choix d’un modèle

analogique,

Calcul de HA(p)

1- z-1

1+z-1p =

2Te

HN(z)

changer p en z par la bilinéaire

à partir du gabarit numérique,

construire gabarit analogique

synthétiser un filtre

analogique satisfaisant (modèle ?)

Page 54: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

54

Prototypes de filtres analogiques

Butterworth

Pas d’ondulation |H( )|² = 1/ [1+( / c )2n ] n ordre du filtre,

c pulsation de coupure à –3 dB, pôles sur le cercle unité

Tchebychef

|H(f )|² = 1/ [1+ 2 T²n(f)] avec Tn(cos(x)) = cos(nx)

Relation de récurrence sur Tn : Tn+1 = 2x Tn(x) – Tn-1(x)

Passent + facilement dans le gabarit que Butterworth pour même ordre

Elliptiques (Cauer)

|H(f )|² = 1/ [1+ Sn(f,k)] k : sélectivité du filtre

À gabarit donné, ordre du filtre le moins élevé

Bessel : Phase à peu près linéaire, TPG constant mais mauvaise

caractéristique de module

Page 55: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

55

Voir fdatoolFonctions Matlab pour synthèse de filtres RII• butter : BUTTER Butterworth digital and analog filter design.

[B,A] = BUTTER(N,Wn) designs an Nth order lowpass digital Butterworth filter.

• buttord : BUTTORD Butterworth filter order selection.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Butterworth filter that

loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• cheby1 : CHEBY1 Chebyshev Type I digital and analog filter design.

[B,A] = CHEBY1(N,R,Wp) designs an Nth order lowpass digital Chebyshev filter with R decibels of

peak-to-peak ripple in the passband.

• cheb1ord : CHEB1ORD Chebyshev Type I filter order selection.

[N, Wp] = CHEB1ORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Chebyshev Type I

filter that loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• cheby2 : CHEBY2 Chebyshev Type II digital and analog filter design.

[B,A] = CHEBY2(N,R,Wst) designs an Nth order lowpass digital Chebyshev filter with the stopband ripple R

decibels down and stopband-edge frequency Wst.

• cheb2ord : CHEB2ORD Chebyshev Type II filter order selection.

[N, Ws] = CHEB2ORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital Chebyshev Type II

filter that loses no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband.

• ellip : ELLIP Elliptic or Cauer digital and analog filter design.

[B,A] = ELLIP(N,Rp,Rs,Wp) designs an Nth order lowpass digital elliptic filter with Rp decibels of

peak-to-peak ripple and a minimum stopband attenuation of Rs decibels.

• ellipord : ELLIPORD Elliptic filter order selection.

[N, Wp] = ELLIPORD(Wp, Ws, Rp, Rs) returns the order N of the lowest order digital elliptic filter that loses

no more than Rp dB in the passband and has at least Rs dB of attenuation in the stopband

Page 56: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

56

Structures de réalisation canonique :Décomposition du système

comme la mise en série de 2 systèmes numériques

H1(z) H2(z)x(n) w(n) y(n)

N(z) 1/D(z)x(n) w(n) y(n)

1/D(z) N(z)x(n) w(n) y(n)

Soit : forme directe I : partie non récursive, suivie de la partie récursive

ou forme directe II : partie récursive, suivie de la partie non récursive

IV. Implantation des filtres RII (IIR)

Forme directe I

Forme directe II

Page 57: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

57

Forme directe I

1) Partie non récursive :

2) Partie récursive :

Complexité :M+N mémoires

(2 files d’attente)

M+N additions,

M+N+1 mult.

Page 58: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

58

Forme directe II

1) Partie récursive :

2) Partie non récursive :

Complexité :Max(M,N) mémoires

(1 file d’attente !)

M+N additions,

M+N+1 multiplications

1 seule file d’attentemais sensibilité numériqueaugmente avec la taille

Page 59: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

59

Nécessité de fractionner en structures plus petites

Formes décomposées

Série (cascade)

H(z) = C Hi(z)

propagation des erreurs

Parallèle

H(z) = C + Hi(z)

Éléments simples du 1er ou 2nd ordre

1+b1 z-1 + b2 z-2

1+a1 z-1 + a2 z-2

Décomposition

en série ou parallèle ?

Page 60: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

60

Décomposition

en série

Obtenue en factorisant numérateur et dénominateur de H(z)

et en mettant sous forme de produits de FT élémentaires

FT du 1er ordre FT du 2ème ordre

Page 61: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

61

Décomposition

en parallèle

Obtenue en décomposant H(z) en éléments simples

FT du 1er ordreFT du 2ème ordre

Page 62: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

62

Sources d’erreur dans l’implémentation des filtres

Page 63: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

63

-1.5 -1 -0.5 0 0.5 1 1.5 2

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

-

2

3 bits après la virgule

(+/-)xx,xxx

2 bits après la virgule

(+/-)xx,xx

arrondi :

coin le plus proche

troncature :

coin en bas, à gauche

a1

a2 a2

a1

Dans le plan (a1,a2), intérieur du triangle

Pôles C

Pôles R

Stabilité de la cellule du second ordre : le triangle de stabilité

Page 64: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

64

Page 65: De la Théorie du Signal à la pratique du Traitement du Signaldobigeon.perso.enseeiht.fr/teaching/TNS/Cours_TNS... · 2011. 2. 28. · En 1967, TFD de 8192 points : 30 min sans FFT

65

alors RIF ou RII ?