Vous êtes sur la page 1sur 264

Haute Ecole d'Ingnierie et de Gestion

du Canton de Vaud

Dpartement TIN
Techniques Industrielles

Unit TSA

Traitement
des Signaux
Quelques
applications

i nstitut d'
A utomatisation
i ndustrielle

Prof. Freddy Mudry

(C) freddy.mudry@hieg-vd.ch

"La science, son got est amer au dbut


mais la fin, plus doux que le miel"

(Plat dcor pigraphique


XI-XIIme sicle, Iran ou Transoxiane
Le Louvre - Arts de l'Islam)

Table des matires


I. Synthse des ltres

1. lments de ltrage analogique

1.1.

1.2.

1.3.

1.4.

1.5.

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.1.

Filtre idal . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.2.

Formes canoniques

. . . . . . . . . . . . . . . . . . . . . . . .

1.1.3.

Formes normalises . . . . . . . . . . . . . . . . . . . . . . . .

1.1.4.

Filtres d'ordre 2 . . . . . . . . . . . . . . . . . . . . . . . . . .

Filtres optimums

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.1.

Gabarit

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.2.

Approximations . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.3.

Temps de propagation

1.2.4.

Illustration des rponses frquentielles et temporelles

. . . . . . . . . . . . . . . . . . . . . .
. . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . .

13

1.3.1.

Tableau des polynmes de Butterworth . . . . . . . . . . . . .

14

1.3.2.

Ordre et pulsation caractristique d'un ltre . . . . . . . . . .

14

1.3.3.

Synthse d'un ltre de Butterworth . . . . . . . . . . . . . . .

17

Filtres de Butterworth

Filtres de Tchebyche

. . . . . . . . . . . . . . . . . . . . . . . . . .

20

1.4.1.

Caractristique des ltres de Tchebyche . . . . . . . . . . . .

20

1.4.2.

Calcul de l'ordre d'un ltre de Tchebyche . . . . . . . . . . .

20

1.4.3.

Tableau des polynmes de Tchebyche

. . . . . . . . . . . . .

21

1.4.4.

Synthse d'un ltre de Tchebyche

. . . . . . . . . . . . . . .

21

Filtres de Bessel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

1.5.1.

Phase linaire et temps de propagation . . . . . . . . . . . . .

26

1.5.2.

Temps de propagation des ltres passe-bas . . . . . . . . . . .

26

1.5.3.

Fonctions de transfert

27

1.5.4.

Synthse d'un ltre de Bessel

. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .

28

1.6.

Largeur de bande et dure de la rponse temporelle . . . . . . . . . .

29

1.7.

Ralisations des ltres analogiques

. . . . . . . . . . . . . . . . . . .

32

1.7.1.

Filtres normaliss . . . . . . . . . . . . . . . . . . . . . . . . .

32

1.7.2.

Transformations d'un ltre normalis . . . . . . . . . . . . . .

32

1.7.3.

Circuits de Sallen et Key gain xe . . . . . . . . . . . . . . .

32

1.7.4.

Circuits de Sallen et Key gain variable

. . . . . . . . . . . .

37

1.7.5.

Ralisation d'un ltre passe-bande

. . . . . . . . . . . . . . .

38

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

43

1.8.

Table des matires

2. Synthse des ltres rcursifs

45

2.1.

Rponse frquentielle d'un ltre numrique . . . . . . . . . . . . . . .

45

2.2.

Le problme de l'approximation . . . . . . . . . . . . . . . . . . . . .

46

2.3.

La transformation associe . . . . . . . . . . . . . . . . . . . . . . . .

47

2.3.1.

Exemple de transformation associe . . . . . . . . . . . . . . .

49

2.3.2.

Modication de la transformation associe

. . . . . . . . . . .

52

. . . . . . . . . . . . . . . . . . . . . . .

52

2.4.

La transformation bilinaire
2.4.1.

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

2.4.2.

Transformation bilinaire d'une fonction de transfert

. . . . .

53

2.4.3.

Exemple de transformation bilinaire . . . . . . . . . . . . . .

54

2.5.

Compensation de la distorsion des frquences . . . . . . . . . . . . . .

55

2.6.

Synthse d'un ltre numrique rcursif

. . . . . . . . . . . . . . . . .

56

2.7.

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

60

3. Synthse des ltres non rcursifs

63

3.1.

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

63

3.2.

Spcications

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

63

3.3.

Proprits des ltres RIF phase linaire . . . . . . . . . . . . . . . .

64

3.3.1.
3.4.

3.5.

3.6.

3.7.

3.8.

3.9.

Rponses impulsionnelle et frquentielle . . . . . . . . . . . . .

Synthse par fentrage

68

3.4.1.

Principe du fentrage . . . . . . . . . . . . . . . . . . . . . . .

68

3.4.2.

Eet de la troncation . . . . . . . . . . . . . . . . . . . . . . .

69

Rponses frquentielles et impulsionnelles idales

. . . . . . . . . . .

71

3.5.1.

Filtre passe-bas . . . . . . . . . . . . . . . . . . . . . . . . . .

71

3.5.2.

Filtre passe-haut

74

3.5.3.

Filtre passe-bande et rjecteur de bande

. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .

74

. . . . . . . . . . . . . . . . . .

76

. . . . . . . . . . . . . . . . . . . . . . .

76

Caractristiques de quelques fentres


3.6.1.

Fentres analytiques

3.6.2.

Fentre de Kaiser-Bessel

. . . . . . . . . . . . . . . . . . . . .

79

Conclusions sur l'usage des fentres . . . . . . . . . . . . . . . . . . .

82

3.7.1.

Proprits et utilisation des fentres . . . . . . . . . . . . . . .

82

3.7.2.

Dmarche pour calculer un ltre . . . . . . . . . . . . . . . . .

84

Ralisation d'un ltre passe-bas . . . . . . . . . . . . . . . . . . . . .

84

3.8.1.

84

Prliminaires

. . . . . . . . . . . . . . . . . . . . . . . . . . .

3.8.2.

Fentrage de Hamming . . . . . . . . . . . . . . . . . . . . . .

85

3.8.3.

Fentrage de Kaiser . . . . . . . . . . . . . . . . . . . . . . . .

87

Ralisation d'un ltre passe-bande

. . . . . . . . . . . . . . . . . . .

88

3.10. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

90

II. Analyse des signaux

97

4. Analyse et comparaison des signaux


4.1.

ii

64

. . . . . . . . . . . . . . . . . . . . . . . . . .

Transformation de Fourier

99

. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .

99

4.1.1.

Dnition de la transformation de Fourier

99

4.1.2.

Puissance et nergie d'un signal . . . . . . . . . . . . . . . . . 100

Table des matires


4.1.3.
4.2.

Proprits de la transformation de Fourier

4.2.1.

Spectre d'une impulsion rectangulaire . . . . . . . . . . . . . . 102

4.2.2.

Spectre d'un sinus amorti

4.2.3.

Spectre d'une impulsion sinusodale . . . . . . . . . . . . . . . 105

. . . . . . . . . . . . . . . . . . . . 104

4.2.4.

Spectres de deux impulsions . . . . . . . . . . . . . . . . . . . 106

4.3.

Extension de la transformation de Fourier

4.4.

Classication et types de signaux

4.5.

4.7.

4.8.

4.9.

. . . . . . . . . . . . . . . 107

. . . . . . . . . . . . . . . . . . . . 108

4.4.1.

Classication phnomnologique . . . . . . . . . . . . . . . . . 110

4.4.2.

Classication nergtique . . . . . . . . . . . . . . . . . . . . . 110

4.4.3.

Signaux types . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

Comparaison des signaux . . . . . . . . . . . . . . . . . . . . . . . . . 115


4.5.1.

4.6.

. . . . . . . . . . . 100

Exemples de spectres continus . . . . . . . . . . . . . . . . . . . . . . 100

Corrlation de signaux nergie nie . . . . . . . . . . . . . . 117

4.5.2.

Corrlation de signaux puissance nie . . . . . . . . . . . . . 118

4.5.3.

Proprits de l'autocorrlation . . . . . . . . . . . . . . . . . . 118

4.5.4.

Proprits de l'intercorrlation . . . . . . . . . . . . . . . . . . 121

4.5.5.

Calcul numrique de la corrlation

Exemples de corrlation

. . . . . . . . . . . . . . . 121

. . . . . . . . . . . . . . . . . . . . . . . . . 122

4.6.1.

Fonction de corrlation d'un signal chirp

4.6.2.

Fonction de corrlation d'une SBPA . . . . . . . . . . . . . . . 124

Deux applications de la corrlation

. . . . . . . . . . . . 122

. . . . . . . . . . . . . . . . . . . 124

4.7.1.

Le radar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

4.7.2.

La mesure d'un dbit . . . . . . . . . . . . . . . . . . . . . . . 125

Description des signaux alatoires

. . . . . . . . . . . . . . . . . . . 127

4.8.1.

Le bruit blanc densit spectrale constante et bande innie

. 130

4.8.2.

Le bruit densit spectrale constante et bande limite

4.8.3.

Le bruit color puissance nie . . . . . . . . . . . . . . . . . 131

. . . . 130

Systmes linaires et densits spectrales . . . . . . . . . . . . . . . . . 131

4.10. nergie et puissance des signaux . . . . . . . . . . . . . . . . . . . . . 132


4.10.1. Domaine temporel

. . . . . . . . . . . . . . . . . . . . . . . . 132

4.10.2. Domaine frquentiel

. . . . . . . . . . . . . . . . . . . . . . . 133

4.11. Signaux, spectres et statistique


4.12. Quelques exemples

. . . . . . . . . . . . . . . . . . . . . 134

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

4.13. Table illustre de quelques transformes de Fourier [2] . . . . . . . . . 140


4.14. Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

5. lments d'analyse spectrale numrique


5.1.

5.1.1.

5.2.

Signaux continus non-priodiques . . . . . . . . . . . . . . . . 154

5.1.2.

Signaux discrets de dure innie . . . . . . . . . . . . . . . . . 154

5.1.3.

Signaux discrets de dure nie

5.1.4.

Discrtisation de la frquence

Relations temps-frquence
5.2.1.

5.3.

153

Passage de la TF la TFD . . . . . . . . . . . . . . . . . . . . . . . . 153

. . . . . . . . . . . . . . . . . . 157

. . . . . . . . . . . . . . . . . . . . . . . . 158

Pulsation normalise

. . . . . . . . . . . . . . . . . . . . . . . 160

Transformation de Fourier discrte


5.3.1.

. . . . . . . . . . . . . . . . . 156

Dnition de la TFD

. . . . . . . . . . . . . . . . . . . 160

. . . . . . . . . . . . . . . . . . . . . . 160

iii

Table des matires

5.4.

5.5.

5.3.2.

TFD d'un signal priodique

. . . . . . . . . . . . . . . . . . . 162

5.3.3.

Relations entre les domaines analogique et numrique . . . . . 162

5.3.4.

TFD et FFT

. . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Spectre d'une sinusode . . . . . . . . . . . . . . . . . . . . . . . . . . 163


5.4.1.

Le nombre de priodes enregistres est un entier . . . . . . . . 163

5.4.2.

Le nombre de priodes enregistres n'est pas un entier

Fentres d'observation

. . . . . . . . . . . . . . . . . . . . . . . . . . 164

5.5.1.

Quatre fentres usuelles

. . . . . . . . . . . . . . . . . . . . . 164

5.5.2.

Eet d'une fentre

5.5.3.

Choix d'une fentre . . . . . . . . . . . . . . . . . . . . . . . . 168

. . . . . . . . . . . . . . . . . . . . . . . . 165

5.6.

Exemple 1 : analyse spectrale lmentaire . . . . . . . . . . . . . . . . 168

5.7.

Exemple 2 : reconstruction d'un signal

. . . . . . . . . . . . . . . . . 171

5.8.

Exemple 3 : analyse spectrale dtaille

. . . . . . . . . . . . . . . . . 173

5.9.

5.8.1.

Donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

5.8.2.

Signal temporel . . . . . . . . . . . . . . . . . . . . . . . . . . 173

5.8.3.

Paramtres d'acquisition . . . . . . . . . . . . . . . . . . . . . 174

5.8.4.

Analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . . 175

5.8.5.

Estimation des amplitudes . . . . . . . . . . . . . . . . . . . . 176

5.8.6.

Dtail du calcul des signaux et des spectres . . . . . . . . . . . 178

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

III. Travaux pratiques avancs

189

6. Analyse de la parole

191

6.1.

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

6.2.

Analyse de la parole

6.3.

6.4.

6.5.

6.6.

iv

. . . . 164

. . . . . . . . . . . . . . . . . . . . . . . . . . . 191

6.2.1.

Classication des phonmes

. . . . . . . . . . . . . . . . . . . 191

6.2.2.

Priode des sons voiss . . . . . . . . . . . . . . . . . . . . . . 192

Acquisition et analyse avec CoolEdit

. . . . . . . . . . . . . . . . . . 192

6.3.1.

Paramtres pour l'enregistrement

6.3.2.

Visualisation des signaux et de leur spectre . . . . . . . . . . . 193

Analyse du signal acoustique avec Matlab

. . . . . . . . . . . . . . . . 192

. . . . . . . . . . . . . . . 193

6.4.1.

Lecture du chier de donnes

. . . . . . . . . . . . . . . . . . 193

6.4.2.

Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

6.4.3.

Valeur ecace . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

6.4.4.

Taux de passages par zro

6.4.5.

Spectre

. . . . . . . . . . . . . . . . . . . . 195

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195

Recherche du pitch

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 196

6.5.1.

Filtrage du signal . . . . . . . . . . . . . . . . . . . . . . . . . 196

6.5.2.

Autocorrlation . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Travail pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198


6.6.1.

Avec CoolEdit : . . . . . . . . . . . . . . . . . . . . . . . . . . 198

6.6.2.

Avec Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

Table des matires

7. Codage et dcodage LPC de la parole

203

7.1.

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

7.2.

Prdiction linaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

7.3.
7.4.

7.5.

7.6.

7.7.

7.8.

7.9.

7.2.1.

Mesure de l'erreur de prdiction

7.2.2.

Calcul des coecients de prdiction linaire

. . . . . . . . . . . . . . . . 203

7.2.3.

Interprtation de la prdiction linaire

. . . . . . . . . . 204

. . . . . . . . . . . . . 206

Modle du conduit vocal . . . . . . . . . . . . . . . . . . . . . . . . . 206


Analyse du signal

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

7.4.1.

Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

7.4.2.

Spectre

Analyse LPC

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

7.5.1.

Valeur ecace et gain

7.5.2.

Fonction de transfert

7.5.3.

Rponse frquentielle du conduit vocal

Recherche du pitch

. . . . . . . . . . . . . . . . . . . . . . 209

H(z)

du conduit vocal . . . . . . . . . . 210


. . . . . . . . . . . . . 211

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.6.1.

Filtrage du signal . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.6.2.

Recherche du signal d'excitation

7.6.3.

Autocorrlation de

7.6.4.

Critres de dcision . . . . . . . . . . . . . . . . . . . . . . . . 214

e[n]

e[n]

. . . . . . . . . . . . . . 212

. . . . . . . . . . . . . . . . . . . . . . 212

Synthse d'un son . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215


7.7.1.

Signaux rel et synthtique . . . . . . . . . . . . . . . . . . . . 215

7.7.2.

Mise en valeur des rsultats

. . . . . . . . . . . . . . . . . . . 216

Travail pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218


7.8.1.

Codage et dcodage d'une phrase

7.8.2.

Analyse des rsultats . . . . . . . . . . . . . . . . . . . . . . . 219

7.8.3.

Analyse et amlioration de la synthse

Minimisation de l'cart quadratique

. . . . . . . . . . . . . . . . 218
. . . . . . . . . . . . . 219

. . . . . . . . . . . . . . . . . . 220

8. Introduction au ltrage adaptatif


8.1.

8.2.

Notions de probabilits . . . . . . . . . . . . . . . . . . . . . . . . . . 225


8.1.1.

Dnitions de quelques estimateurs statistiques

8.1.2.

Remarques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

8.1.3.

Fonction de rpartition et densit de probabilits

8.1.4.

Modles statistiques

Rgression linaire
8.2.1.

8.3.

8.4.

225
. . . . . . . . 225
. . . . . . . 226

. . . . . . . . . . . . . . . . . . . . . . . 227

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 228

Mesure, modle et cart

. . . . . . . . . . . . . . . . . . . . . 229

8.2.2.

Minimisation de l'cart quadratique . . . . . . . . . . . . . . . 230

8.2.3.

quations de la rgression linaire

Filtrage de Wiener

. . . . . . . . . . . . . . . 231

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

8.3.1.

Dnition du problme . . . . . . . . . . . . . . . . . . . . . . 231

8.3.2.

Rsolution au sens des moindres carrs . . . . . . . . . . . . . 233

8.3.3.

Description matricielle

8.3.4.

Applications du ltrage de Wiener

Suppression d'une perturbation

. . . . . . . . . . . . . . . . . . . . . . 234
. . . . . . . . . . . . . . . 235

. . . . . . . . . . . . . . . . . . . . . 236

8.4.1.

Filtrage de Wiener classique . . . . . . . . . . . . . . . . . . . 237

8.4.2.

Remarque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

Table des matires


8.5.

8.6.

vi

Filtrage adaptatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238


8.5.1.

Algorithme rcursif des moindres carrs (RLMS) . . . . . . . . 238

8.5.2.

Algorithme rcursif normalis (NLMS)

. . . . . . . . . . . . . 242

Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246

Premire partie .
Synthse des ltres

1. lments de ltrage analogique


1.1. Introduction
Le ltrage est l'opration qui consiste modier les composantes spectrales d'un
signal. Le ltre est un circuit qui ralise cette opration. Les intervalles de frquence
o les composants du signal sont transmises sont appeles bandes passantes ; les
intervalles o les signaux sont bloqus sont dsigns sous le nom de bandes d'arrt
ou d'attnuation.

1.1.1. Filtre idal


Un ltre idal est caractris par :
1. une rponse frquentielle dont le module vaut 1 dans les bandes passantes ;
2. une rponse frquentielle dont le module vaut 0 dans les bandes d'arrt ;
3. un temps de propagation

tp

qui est le mme pour toutes les composantes

spectrales. Ce temps de propagation constant est quivalent une rponse


frquentielle phase linaire.
Ce type de ltres, purement thorique et bien entendu impossible raliser pratiquement, est celui vers lequel on tend avec un ltre rel. Les rponse frquentielles
des 4 ltres idaux de base sont reprsents la gure 1.1.

1.1.2. Formes canoniques


Les ltres rels sont gnralement reprsents par des fonctions de transfert
dont les numrateurs et dnominateurs sont des polynmes en

s.

H(s)

Ces polynmes

sont ordonns de manire croissante (forme de Bode) ou dans l'ordre dcroissant


(forme de Laplace). Dans chaque cas, le premier coecient de ces polynmes doit
tre gal un.
An de faciliter l'analyse, le trac des rponses frquentielles et la ralisation des
ltres, ces polynmes sont gnralement dcomposs en facteurs simples d'ordre 1
ou 2. Ces facteurs simples font intervenir une pulsation caractristique et, pour ceux
d'ordre 2, un facteur de qualit

Q0

ou, son inverse, le coecient d'amortissement

= 1/2Q0 .

1.

lments de filtrage analogique

H()

H()

Passe-Bas

Passe-Haut

-c

-c

+c

+c

H()

H()

PasseBande

CoupeBande

2 1

2 1

Fig. 1.1.: Rponses frquentielles des ltres idaux

L'ensemble des possibilits de description des ltres se rduit donc aux facteurs
simples suivants reprsents sous la forme de Bode :

s
1

1+

1+
s
1

1 s
Q 0 0

1 + 2 s0 +

 2
s
0

(1.1)

 2
s
0

On y trouve :
 les pulsations caractristiques
 le facteur de qualit

et

0 ;

Q0 ;

 le coecient d'amortissement

= 1/(2Q0 ).

Voici un exemple d'criture de fonctions de transfert dans les formes de Bode et de


Laplace :

H(s) =

1 + s/1
1 + 2 (s/0 ) + (s/0 )2

H(s) =

02
(s + 1 )
1 s2 + 20 s + 02

1.1.3. Formes normalises


Il est d'usage de dcrire ces fonctions de transfert l'aide de polynmes normaliss
dans lesquels les pulsations caractristiques sont unitaires. Les polynmes normaliss

1.1. Introduction
d'ordre 1 s'crivent alors sous la forme :

P1 (s) = s + 1

(1.2)

et il est sous-entendu qu'ils correspondent l'un des deux polynmes suivants :

P1 (s) =

s + 1

1+

(1.3)

s
1

Les polynmes normaliss d'ordre 2 s'crivent sous la forme :

P2 (s) = s2 + 2 s + 1

(1.4)

et il est sous-entendu qu'ils correspondent l'un des deux polynmes suivants :

P2 (s) =

2
2
s + 20 s + 0

1.1.4. Filtres d'ordre 2

1 + 2

s
0

(1.5)

s2
02

Les ltres fondamentaux sont du type passe-bas, passe-haut, passe-bande et coupebande. A ceux-ci, on peut en ajouter beaucoup d'autres tels que, par exemple, les
ltres correcteurs d'amplitude et les ltres dphaseurs.

u(t)

PasseBande

PasseHaut
CoupeBande

PasseBas

Fig. 1.2.: Filtres d'ordre 2 ralis avec un circuit srie RLC

La gure 1.2 montre comment le circuit RLC permet de raliser les 4 ltres de base.
Suivant l'endroit o l'on recueille la tension de sortie, on trouve en eet :
 le ltre passe-bas aux bornes de la capacit

HP B (s) =

1
1 + 2 (s/0 ) + (s/0 )2

(1.6)

1.

lments de filtrage analogique

 le ltre passe-bande aux bornes de la rsistance

HP (s) =

2 (s/0 )
1 + 2 (s/0 ) + (s/0 )2

(1.7)

 le ltre passe-haut aux bornes de l'inductance

(s/0 )2
HP H (s) =
1 + 2 (s/0 ) + (s/0 )2

(1.8)

 le rjecteur de bande aux bornes de l'inductance et de la capacit

1 + (s/0)2
HR (s) =
1 + 2 (s/0 ) + (s/0 )2

(1.9)

Dans le cas du ltre passe-bande d'ordre 2, on n'oubliera pas les relations importantes suivantes :

s i =
o

i , s ,

0
,
Q0

02 = s i

(1.10)

sont, respectivement, les pulsations de coupure infrieure, suprieure

et la bande passante du ltre.

1.2. Filtres optimums


1.2.1. Gabarit
Contrairement au ltre idal, un ltre rel possde une bande de transition entre les
bandes passantes et d'arrt et les spcications du ltre sont gnralement donnes
l'aide d'un gabarit (gure 3.1). Celui-ci prcise les bandes passantes, bandes de
transition et bandes d'arrt souhaites.
A la donne du gabarit, on peut ajouter des spcications telles que
 l'amplitude de l'ondulation accepte dans les bandes passantes et/ou d'arrt
 l'uniformit du temps de propagation dans la bande passante (phase linaire).
Il est important de relever ici que les gabarits ne sont pas toujours aussi simples
que celui de la gure 3.1. Pour exemple, vous trouverez la gure 1.4 le gabarit que
doivent respecter les transmissions tlphoniques aux USA.

1.2.2. Approximations
Suivant le cahier des charges donn, la ralisation d'un ltre passe-bas conduit des
fonctions de transfert dont les dnominateurs sont des polynmes qui optimisent au
mieux les contraintes demandes. Ces polynmes, appels polynmes d'approximation, ralisent des ltres caractriss par l'une ou l'autre des proprits suivantes :
 une bande passante plate au maximum pour les

ltres de Butterworth ;

1.2. Filtres optimums


H

1
Hp

Bandes:

de transition
passante

d'arrt

Ha

fp

fa

Fig. 1.3.: Gabarit pour un ltre passe-bas

Fig. 1.4.: Gabarit de transmission tlphonique (Copyright 1975, ATT Company)

1.

lments de filtrage analogique

 un temps de propagation uniforme (ou une phase linaire) dans la bande passante
pour les

ltres de Bessel ;

 une bande de transition troite obtenue au dpend d'une ondulation de la rponse


frquentielle dans la bande passante pour les

ltres de Tchebyche de type I.

Les ltres ci-dessus sont des ltres dits tout ples pour lesquels le numrateur est
d'ordre 0. Leurs fonctions de transfert s'crivent alors sous la forme :

H(s) =

1
A(s)

(1.11)

D'autres approximations de ltres rels existent comme par exemple :


 les

ltres de Tchebyche de type II qui n'ont pas d'ondulations dans la bande

passante mais en possdent dans la bande d'arrt ;


 les

ltres elliptiques pour lesquels on accepte des ondulations dans les bandes

passantes et d'arrt.
Les fonctions de transfert de ces ltres sont alors dcrites par un rapport de deux
polynmes ;

H(s) =

B(s)
A(s)

(1.12)

Suivant la nature du ltre les performances sont sensiblement direntes ; elles sont
prsentes dans le tableau 1.1.

Butterworth

Bessel

Tchebyche I

Tchebyche II

excellente

satisfaisante

ondulations

bonne

Raideur de la transition

faible

mdiocre

bonne

moyenne

Rgularit du temps de propagation

faible

excellente

mdiocre

faible

satisfaisante

excellente

mauvaise

bonne

moyens

faibles

levs

moyens

faible

trs faible

forte

faible

Rgularit de la courbe d'amplitude

Qualit de la rponse temporelle

Facteurs de qualit
Disparit des composants

Tab. 1.1.: Caractristiques selon le type de ltres [4]

1.2. Filtres optimums

1.2.3. Temps de propagation


On sait que le dphasage est une mesure du dcalage temporel td entre deux signaux
priodiques de mme nature et que l'on a la relation suivante :

td

=
2
T
De manire quivalente, cela s'crit

() =

2
td = td
T

Lorsque l'on s'intresse au

td =

()
()
=T

temps de propagation tp d'un ltre rel, celui-ci est ngatif

et on le dnit comme suit

tp () =

()

(1.13)

Sa valeur est gnralement donne pour les basses frquences


()
tp =
0

(1.14)

Dans le cas o le temps de propagation est constant, toutes les composantes spectrales d'un signal sont retardes du mme temps

tp

et le signal temporel est ainsi

peu dform.

1.2.4. Illustration des rponses frquentielles et temporelles


Pour cette illustration, on considre quatre ltres d'ordre 5 et de nature dirente.
Les gures 1.5 1.8 illustrent le comportement temporel et frquentiel des ltres de
Butterworth, Bessel et Tchebyche I en utilisant des chelles logarithmiques (diagrammes de Bode).
Dans un but de comparaison, on y a ajout un ltre passe-bas compos de 5 cellules
identiques d'ordre 1. An que les comparaisons se fassent sur une base commune,
tous les ltres ont la mme pulsation de coupure, savoir,

c = 1 [rad/sec].

La gure 1.9 permet de comparer les rponses de l'ensemble des ltres. La gure 1.10
utilise des axes linaires an de mettre en vidence le comportement de la phase et
celui du temps de propagation des 4 ltres.

1.

lments de filtrage analogique

Rponse indicielle

Diagrammes de Bode
0

Module [dB]

10
1

20
30
40

0.8

60
1
10

10

10

Amplitude

50

0.6

0
0.4

Phase [deg]

100
200

0.2

300
400
500
1
10

10
pulsation [rad/sec]

10

10
15
temps [sec]

20

25

20

25

Fig. 1.5.: Filtre de Butterworth (n=5)

Rponse indicielle

Diagrammes de Bode
0

Module [dB]

10
1

20
30
40

0.8

60
1
10

10

10

Amplitude

50

0.6

0
0.4

Phase [deg]

100
200

0.2

300
400
500
1
10

10
pulsation [rad/sec]

10

10
15
temps [sec]

Fig. 1.6.: Filtre de Bessel (n=5)

10

1.2. Filtres optimums

Rponse indicielle

Diagrammes de Bode
0

Module [dB]

10
1

20
30
40

0.8

60
1
10

10

10

Amplitude

50

0.6

0
0.4

Phase [deg]

100
200

0.2

300
400
500
1
10

10
pulsation [rad/sec]

10

10
15
temps [sec]

20

25

20

25

Fig. 1.7.: Filtre de Tchebyche (n=5)

Rponse indicielle

Diagrammes de Bode
0

Module [dB]

10
1

20
30
40

0.8

60
1
10

10

10

Amplitude

50

0.6

0
0.4

Phase [deg]

100
200

0.2

300
400
500
1
10

10
pulsation [rad/sec]

10

10
15
temps [sec]

Fig. 1.8.: Filtre compos de 5 cellules d'ordre 1

11

1.

lments de filtrage analogique

Rponses indicielles

Diagrammes de Bode

Module [dB]

0
5
o
x
+
v

10

Btw
Bsl
Tchb
5xRC

0.8

20
1
10

10

10

Amplitude

15

0.6

0
0.4

Phase [deg]

100
200

0.2

300
400

500
1
10

10
pulsation [rad/sec]

10

10
15
temps [sec]

20

25

Fig. 1.9.: Comparaison des rponses frquentielles et indicielles

Phase

Amplitude
0
1
2

0.6

o
x
+
v

0.4
0.2
0

Phase [rad]

Amplitude[/]

0.8
Btw
Bsl
Tchb
5xRC

0.5
1
1.5
pulsation [rad/sec]

0.5
1
1.5
pulsation [rad/sec]

Temps de propagation
8

tp [sec]

0.5
1
1.5
pulsation [rad/sec]

Fig. 1.10.: Diagrammes linaires et temps de propagation

12

1.3. Filtres de Butterworth

1.3. Filtres de Butterworth


Les ltres de Butterworth sont caractriss par une rponse en amplitude extrmement plate dans la bande passante. Le carr du module de cette rponse frquentielle
est dcrite par :

|H(j)|2 = H(j)H(j) =

1
1 + (/c)2n

(1.15)

On notera que cette rponse est normalise par rapport la pulsation de coupure

pour laquelle le ltre possde une attnuation de

2 = 3 dB .

En crivant la fonction de transfert avec la variable de Laplace et en choisissant

c = 1,

on obtient une description quivalente :

H(s)H(s) =

1
1 + (s2 )n

(1.16)

On voit ainsi que le dnominateur de cette description est un polynme d'ordre

D(s) = 1 + s2

n

=0

2n

(1.17)

dont les racines sont uniformment rparties sur un cercle de rayon unit. L'angle
entre chaque racine vaut

/n

et, suivant que l'ordre est pair ou impair, on aura les

situations illustres par la gure 1.11.


On notera que les ples parties relles positives sont instables. Ils sont dus

H(s),

la partie non ralisable de la fonction de transfert utilise pour dcrire le module de


la rponse frquentielle. Les ples restant reprsentent la fonction de transfert

H(s)

du ltre que l'on dsire raliser.


/c

/c

n = 4

n = 5

/4
/c

/5

/c

Fig. 1.11.: Position des ples pour un ltre de Butterworth

13

1.

lments de filtrage analogique

Comme on l'a dit plus haut, les ltres passe-bas tudis ici sont des ltres tout ples
dcrits de manire gnrale par :

H(s) =

Pour calculer le polynme

1
1
=
A(s)
1 + a1 s + a2 s2 + + an sn
A(s),

(1.18)

il sut de connatre les coordonnes de chacun

des ples correspondant aux trinmes constitutifs du polynme. En eet, si l'on a

p1,2 = a jb,

avec

il vient :

a2 + b2 = 1 car

(s + a + jb) (s + a jb)

s2 + 2a s + a2 + b2
A(s) =

s2 + 2a s + 1

les racines normalises par rapport

(1.19)

se situent sur un cercle

de rayon unit.
Dans le cas d'un polynme d'ordre 5, ce dernier sera dcompos en 3 polynmes de
base provenant du ple rel et des 2 paires de ples complexes :

Ples

p2,3
p4,5

Polynmes

p1 = 1
= 0.809 j0.588
= 0.309 j0.951

P1 (s) = 1 + s
P2 (s) = 1 + 1.618 s + s2
P3 (s) = 1 + 0.618 s + s2

On notera que pour chaque cellule d'ordre 2, le facteur de qualit correspondant

Q0k

est donn par l'inverse du deuxime coecient. Ainsi, pour le polynme d'ordre 5,
on aura

Q02 = 1/1.618

et

Q03 = 1/0.618.

1.3.1. Tableau des polynmes de Butterworth


Connaissant la position des ples d'un polynme d'ordre

quelconque, il est ais

d'en calculer les trinmes constitutifs. Ceux-ci sont donns dans le tableau 1.2.

1.3.2. Ordre et pulsation caractristique d'un ltre


Dans l'analyse des ltres, il est frquent d'exprimer la rponse frquentielle l'aide
de l'attnuation

A(j)

dnie comme l'inverse de

A(j)

14

1
H(j)

H(j)

(1.20)

1.3. Filtres de Butterworth

P (s)

1
2
3
4
5
6
7
8
9
10

(1 + s)
1 + 1.414s + s2

(1 + s) 1 + 1.000s + s2
1 + 1.848s + s2

1 + 0.765s + s2

1 + 1.414s + s2

1 + 1.663s + s2

1 + 1.782s + s2

(1 + s) 1 + 1.618s + s2
1 + 1.932s + s2

(1 + s) 1 + 1.802s + s2
1 + 1.962s + s2

(1 + s) 1 + 1.879s + s2
1 + 1.975s + s2

1 + 0.618s + s2

1 + 1.247s + s2

1 + 1.532s + s2

1 + 0.518s + s2

1 + 1.111s + s2

1 + 1.414s + s2

1 + 0.445s + s2

1 + 1.000s + s2

1 + 0.390s + s2

1 + 0.908s + s2

1 + 0347s + s2


1 + 0.313s + s2

Tab. 1.2.: Quelques polynmes de Butterworth

15

1.

lments de filtrage analogique

L'attnuation d'un ltre de Butterworth est alors dcrite par

|A(j)| = 1 +

Comme la connaissance des 2 paramtres

2n

et

(1.21)

sut caractriser la rponse

frquentielle d'un ltre de Butterworth, la donne d'un gabarit passe-bas l'aide de


2 coordonnes sut pour dterminer compltement le ltre (gure 1.12).

1
Hp

1
Hp

Ha

Ha
fp

fa

fp

fa

Fig. 1.12.: Gabarit et ralisation d'un ltre de Butterworth

En eet, sachant que les attnuations aux points

(n de la bande passante) et

(dbut de la bande d'arrt) s'crivent :

A2p

A2a

|A(jp )|
|A(ja )|

=1+

p
c

2n

(1.22)

=1+

a
c

2n

(1.23)

On rsout aisment ce systme de 2 quations 2 inconnues en eectuant le rapport


des deux quations aprs avoir pass la valeur 1 dans le membre de gauche. Prenant
le logarithme des deux membres de l'quation, on obtient nalement :

1 log
n
2



A2p 1 / (A2a 1)
log (p /a )

(1.24)

Une fois l'ordre connu, on peut calculer la pulsation de coupure partir d'une des
deux quations d'attnuation. Ce qui donne

c =

m
(A2 (

m)

avec

1)1/2n

(1.25)

m = p ou a
Comme la valeur trouve pour l'ordre

du ltre n'est gnralement pas un entier,

on l'arrondit une valeur entire suprieure. On peut ainsi calculer deux valeurs
direntes pour

16

: l'une avec la pulsation

et l'autre avec la pulsation

a .

1.3. Filtres de Butterworth


En choisissant l'une ou l'autre de ces deux pulsations caractristiques, la courbe de
rponse frquentielle touchera l'une ou l'autre partie du gabarit (gure 1.12a) ; ce
qui n'est pas satisfaisant. Par contre, en prenant pour

la moyenne gomtrique

des deux valeurs ainsi trouves, on permettra la courbe de rponse frquentielle


de ne pas toucher le gabarit (gure 1.12b).

1.3.3. Synthse d'un ltre de Butterworth


Dans l'exemple qui suit, on souhaite raliser un ltre passe-bas de gain unit ne
comportant pas d'oscillations dans la bande passante et satisfaisant au gabarit suivant :

Hp = 1 dB

fp = 1 kHz

Ha = 40 dB

fa = 3 kHz

Pour ce faire on demande de :


1. trouver l'ordre

et la frquence de coupure

fc

du ltre ;

2. calculer les facteurs de qualit et le polynme de ralisation ;


3. tracer les rponses frquentielle et temporelle.

Solution

1. On a :

Ap = 1/Hp = +1 dB = 1.122

A2p 1 = 0.2589

Aa = 1/Ha = +40 dB = 100

A2a 1 ' 104

d'o l'on tire :

1 log s
n
2



A2p 1 / (A2a 1)
1 log (0.2589/104)
=
= 4.80 ' 5
log (p /a )
2
log (1/3)

fc,p =

fp
A2p 1

fc,a =

1/2n =

fa
1/2n

(A2a 1)

1 kHz
= 1.145 kHz
0.25891/10

3 kHz
= 1.194 kHz
104/10

On peut ainsi calculer la frquence de coupure

fc =

p
fc,p fc,a = 1.17 kHz
17

1.

lments de filtrage analogique

2. D'aprs le tableau 1.2, le polynme normalis d'ordre 5 vaut :

P5,n (s) = (1 + s) 1 + 1.618s + s2

1 + 0.618s + s2

On en dduit immdiatement les facteurs de qualit en prenant l'inverse des


coecients d'ordre 1 des deux trinmes :

Q02 =

1
= 0.618 = 5.7 dB
1.618

1
= 1.618 = +5.7 dB
0.618
4
En remplaant la variable s par s/(2 fc ) = 1.3610
s, on obtient le polynme
Q03 =

de ralisation :

P5 (s) =

3. Partant du polynme


1 + 1.36 104 s

1 + 2.20 104 s + 1.85 108 s2

1 + 0.84 104 s + 1.85 108 s2

P5 (s),

on en dduit

H(s) = 1/P5 (s)

et on peut calcu-

ler puis tracer les rponses frquentielles de chaque cellule (gure 1.13). La
somme (en dB) de ces 3 rponses donne la rponse frquentielle du ltre de
Butterworth d'ordre 5 (gure 1.14). Les rponses impulsionnelle et indicielle
sont galement prsentes dans la gure 1.15.

amplitude [dB]

Cellule No.1

Cellule No.2

Cellule No.3

10

10

10

15

15

15

20

20

20

25

25

25

30

30

30

35

35

35

40
2
10

10

10

40
2
10

10
frquence [Hz]

10

40
2
10

10

Fig. 1.13.: Rponses frquentielles de chaque cellule

18

10

1.3. Filtres de Butterworth

Bode dun Btw PBas dordre 5

Btw PBas dordre 5

0.9
10
0.8
0.7
amplitude [/]

amplitude [dB]

20

30

0.6
0.5
0.4

40
0.3
0.2
50
0.1
60
2
10

10
frquence [Hz]

10

1000
2000
frquence [Hz]

3000

Fig. 1.14.: Rponse frquentielle d'un ltre de Butterworth d'ordre 5

Rponse impulsionnelle
3000

amplitude [/]

2000

1000

1000

0.5

1.5

2.5

3
3

x 10
Rponse indicielle
1.4

amplitude [/]

1.2
1
0.8
0.6
0.4
0.2
0

0.5

1.5
temps [sec]

2.5

3
3

x 10

Fig. 1.15.: Rponses temporelles d'un ltre de Butterworth d'ordre 5

19

1.

lments de filtrage analogique

1.4. Filtres de Tchebyche


Lorsque les spcications du gabarit permettent une ondulation dans la bande passante du ltre, on utilise frquemment un ltre de Tchebyche de type I dont la
rponse frquentielle est dcrite par :

|H(j)|2 = H(j)H(j) =
avec

1
1 + 2 Cn2 (/r )2n

dlimitant la bande dans laquelle on accepte une ondulation

(1.26)

gnralement

exprime en dB. On voit donc que pour les ltres de Tchebyche, la pulsation de
normalisation n'est plus la pulsation de coupure mais la pulsation d'ondulation
La fonction

r .

Cn dcrivant la rponse frquentielle du ltre est oscillante dans la bande

passante et croissante dans la bande d'arrt. Elle est dcrite par :

Cn (/r ) =
L'amplitude

cos (n arccos (/r )) si /r 1

de la fonction

(1.27)

cosh (n acosh (/r )) si /r > 1

Cn

est lie l'ondulation

accepte dans la bande

passante au travers de la relation suivante :

1 + 2 = r 2

2 = 10 rdB /10 1

(1.28)

1.4.1. Caractristique des ltres de Tchebyche


La rponse frquentielle des ltres de Tchebyche est illustre par la gure 1.16 pour
laquelle on a pris

r = 1 dB .

On constate que le nombre d'extrmas prsents dans

la bande d'ondulation est gal l'ordre du ltre et que les ondulations se situent
au-dessus ou au-dessous de 1 suivant que le ltre est d'ordre pair ou impair.
On se souviendra que la pulsation de la bande d'ondulation
normalisation et qu'elle est relie la pulsation de coupure

c = r cosh

1
acosh(1/)
n

r sert de pulsation
c par la relation :

de

(1.29)

1.4.2. Calcul de l'ordre d'un ltre de Tchebyche


Comme la donne de la largeur de la bande d'ondulation xe la pulsation de normalisation

r ,

il sut de connatre un point de la bande d'arrt et l'amplitude

l'ondulation admise pour dterminer l'ordre

log
n

20

p

de

du ltre [1] :


p
A2a 1 + A2a 1 2 log()


q
2
log (a /r ) + (a /r ) 1

(1.30)

1.4. Filtres de Tchebyche

Amplitude

1.2

r = 1.12 = + 1 dB
n=6
1

n=5
1/r = 0.89 = - 1 dB

0.8

0.707 = - 3 dB
0.6

bande d'ondulation
0.4

bande passante
c

0.2

r
0

0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

Pulsation normalise /r
Fig. 1.16.: Rponse frquentielle des ltres Tchebyche

Dans la situation frquente o l'attnuation

Aa

est plus grande que 10, cette expres-

sion peut tre simplie pour donner :

log (2 Aa /)


q
2
log (a /r ) + (a /r ) 1

(1.31)

1.4.3. Tableau des polynmes de Tchebyche


On peut montrer que les racines des polynmes ralisant la rponse frquentielle
dcrite par l'quation (1.26) se situent sur une ellipse dont le petit diamtre dpend de l'ondulation

r.

A partir de cette ellipse, on peut calculer les polynmes de

Tchebyche dont quelques uns sont donnes dans le tableau 1.3 pour

r = 0.5

et

1.0 dB .

1.4.4. Synthse d'un ltre de Tchebyche


Dans l'exemple qui suit, on souhaite raliser un ltre passe-bas de gain unit pour
lequel on accepte une ondulation de 1 dB dans la bande passante et satisfaisant au
gabarit suivant :

Hr = 1 dB

fr = 1 kHz

21

1.

lments de filtrage analogique

P (s) pour r = 0.5 dB = 1.059 ou  = 0.3493

1
2
3
4
5
6
7
8

(1 + 0.349s)
1 + 0.940s + 0.659s2

(1 + 1.596s) 1 + 0.548s + 0.875s2


1 + 2.376s + 2.806s2

1 + 0.330s + 0.940s2

1 + 0.719s + 1.695s2

1 + 1.037s + 2.788s2

(1 + 2.760s) 1 + 1.230s + 2.097s2


1 + 3.692s + 6.370s2

(1 + 3.904s) 1 + 1.818s + 3.939s2


1 + 4.981s + 11.36s2

n
1
2
3
4
5
6
7
8

1 + 0.216s + 0.965s2

1 + 0.472s + 1.477s2

1 + 0.152s + 0.977s2

1 + 0.335s + 1.349s2

1 + 0.112s0.984 + s2


1 + 0.086s + 0.988s2

P (s) pour r = 1.0 dB = 1.122 ou  = 0.5089

(1 + 0.509s)
1 + 0.996s + 0.907s2

(1 + 2.024s) 1 + 0.497s + 1.006s2


1 + 2.411s + 3.579s2

1 + 0.283s + 1.014s2

1 + 0.609s + 1.793s2

1 + 0.876s + 2.934s2

(1 + 3.454s) 1 + 1.091s + 2.329s2


1 + 3.722s + 8.019s2

(1 + 4.868s) 1 + 1.606s + 4.339s2


1 + 5.010s + 14.23s2

1 + 0.181s + 1.012s2

1 + 0.392s + 1.530s2

1 + 0.126s + 1.009s2

1 + 0.276s + 1.382s2

1 + 0.092s + 1.007s2


1 + 0.070s + 1.006s2

Tab. 1.3.: Quelques polynmes de Tchebyche

22

1.4. Filtres de Tchebyche


Ha = 40 dB

fa = 3 kHz

Pour ce faire on demande de :


1. calculer l'ordre

fc ;

du ltre et sa frquence de coupure

2. calculer les frquence caractristique et facteur de qualit de chaque cellule ;


3. calculer le polynme de ralisation ;
4. tracer les rponses frquentielle et temporelle.

Solution

1. On a :

Ap = 1/Hr = r = 1 dB = 1.122

Aa = 1/Ha = +40 dB = 100

=

et

r 2 1 = 0.5089

ua = fa /fr = 3

d'o l'on tire :

fc

log (2 Aa /)

q
2
log (a /r ) + (a /r ) 1


log (200/0.5089)

 = 3.39
log 3 + 32 1

'4


1
acosh(1/)
= fr cosh
n


1
= 1 kHz cosh
acosh(1/0.5089) = 1053 Hz
4


2. Du tableau 1.3, on tire le polynme normalis pour une ondulation de 1 dB

P4,n (s) = 1 + 2.411s + 3.579s2

1 + 0.283s + 1.014s2

On en dduit immdiatement les 2 facteurs de qualit

Q01

3.579
= 0.785 = 2 dB
=
2.411

Q02 =

1.014
= 3.56 = +11 dB
0.283

et les 2 frquences caractristiques

f01 =

fr
= 528 Hz
3.579

f02 =

fr
= 993 Hz
1.014

3. Eectuant le changement de variable

s
= 1.59 104 s
2 fr

23

1.

lments de filtrage analogique

sur le polynme normalis

P4n (s) = 1 + 2.411s + 3.579s2


on obtient le polynme de ralisation :

P4 (s) = 1 + 3.84 104 s + 9.066 108 s2

1 + 0.283s + 1.014s2

1 + 0.45 104 s + 2.568 108s2

ce polynme correspond la fonction de transfert suivante :

H4 (s) =

1
(1 + 3.84

104 s

+ 9.066

108 s2 ) (1

+ 0.45 104 s + 2.568 108 s2 )

dont les pulsations caractristiques, facteurs d'amortissement et de qualit


valent :

9.066108

01 =

f01 =
1 =

01
2

3.84104 01
2

Q01 =

1
21

= 3321 rad/sec

02 =

= 528 Hz
= 0.637

= 0.785 = 2 dB

1
2.568108

f02 =
2 =

02
2

0.45104 02
2

Q02 =

1
22

= 6240 rad/sec
= 993 Hz
= 0.1405

= 3.56 = 11 dB

Les rponses frquentielles des deux cellules sont traces la gure 1.17. La somme
(en dB) de ces 2 rponses donne la rponse frquentielle du ltre de Tchebyche
d'ordre 4 (gure 1.18). Les rponses impulsionnelle et indicielle sont prsentes dans
la gure 1.19.

1.5. Filtres de Bessel


Comme on vient de le voir, les ltres de Butterworth et Tchebyche conduisent
des rponses indicielles ayant un fort dpassement malgr le fait que les amplitudes
des composantes spectrales soient pratiquement maintenues leurs valeurs dans la
bande passante. Ce phnomne provient du fait que le dphasage de chacune de ces
composantes n'est pas proportionnel sa frquence.
Avec les ltres de Bessel (dits galement de Thomson), on obtient des rponses
indicielles presque sans dpassement grce au temps de propagation qui, dans la
bande passante, est pratiquement indpendant de la frquence. Cela se paye naturellement par une rponse frquentielle en amplitude moins abrupte dans la bande
de transition que les ltres prcdents (le ltre idal n'existe pas encore !).
Un temps de propagation constant (indpendant de la frquence) signie que toutes
les composantes spectrales d'un signal sont transmises avec le mme dcalage temporel. L'intgrit de la forme du signal est ainsi respecte sauf pour les composantes
spectrales que l'on dsire supprimer par ltrage des amplitudes.

24

1.5. Filtres de Bessel

amplitude [dB]

Cellule No.1

Cellule No.2

15

15

10

10

10

10

15

15

20

20

25

25

30

30

35

35

40
2
10

10

40
2
10

10

10
frquence [Hz]

10

Fig. 1.17.: Rponses frquentielles des 2 cellules

Bode dun Tchb PBas dordre 4

Tchb PBas dordre 4

10

20

amplitude [/]

amplitude [dB]

0.8

30

0.6

0.4
40

0.2
50

60
2
10

10
frquence [Hz]

10

1000
2000
frquence [Hz]

3000

Fig. 1.18.: Rponse frquentielle d'un ltre de Tchebyche d'ordre 4

25

1.

lments de filtrage analogique

Rponse impulsionnelle
2500

amplitude [/]

2000
1500
1000
500
0
500
1000

0.5

1.5

2.5

3
3

x 10
Rponse indicielle
1.4

amplitude [/]

1.2
1
0.8
0.6
0.4
0.2
0

0.5

1.5
temps [sec]

2.5

3
3

x 10

Fig. 1.19.: Rponses temporelles d'un ltre de Tchebyche d'ordre 4

1.5.1. Phase linaire et temps de propagation


On a vu au paragraphe 1.2.3 que le temps de propagation tp est dni comme suit

tp () =

()

(1.32)

et que sa valeur est gnralement donne pour les basses frquences


()
tp =
0

(1.33)

Dans le cas o le temps de propagation est constant (indpendant de la frquence


du signal), on dit que l'on a aaire des ltres phase linaire car, dans ce cas, on
a bien videmment

() = tp

(1.34)

C'est la proprit essentielle des ltres de Bessel.

1.5.2. Temps de propagation des ltres passe-bas


On montre aisment que la phase de cellules d'ordre 1 ou 2

1
1 + j/1

(1.35)

1
1 + 1/Q0 j/0 + (j/0 )2

(1.36)

H1 (j) =
H2 (j) =

26

1.5. Filtres de Bessel


valent respectivement

1 () = atan (/1)


/ (Q0 0 )
2 () = atan
1 (/0 )2

(1.37)

(1.38)

Les temps de propagation valent alors

tp,1 ()

tp,2 ()

1 ()
=

2 ()
=

atan (/1 )

atan

/(Q0 0 )
1(/0 )2

La valeur du temps de propagation est gnralement donne pour les basses-frquences


(

0) ;

on obtient alors pour les cellules d'ordre 1 et 2, respectivement

tp,1 =

1
,
1

tp,2 =

1
Q0 0

(1.39)

Comme un ltre d'ordre quelconque est constitu de cellules d'ordre 1 et 2, les temps
de propagation s'ajoutent pour donner

tp =

X
k

avec

Q0,k = 1

1
Q0,k 0,k

(1.40)

pour les cellules d'ordre 1.

1.5.3. Fonctions de transfert


Les fonctions de transfert conduisant un temps de propagation constant dans la
bande passante possdent un dnominateur dcrit par des polynmes de Bessel

P (s) =

1
= 1 + b1 s + b2 s2 + bn sn
H(s)

(1.41)

dont les coecients se calculent de manire itrative

bk =

2 (n k + 1)
bk1
k (2n k + 1)

avec

b1 = 1

(1.42)

Le tableau 1.4 donne quelques polynmes de Bessel dcomposs en produits de


binmes et trinmes normaliss par rapport la pulsation de coupure du ltre. Le
tableau a t construit en recherchant numriquement les racines des polynmes
originaux et les pulsations de coupure.

27

1.

lments de filtrage analogique

P (s)

1
2
3
4
5
6
7
8

(1 + s)
1 + 1.3614s + 0.6178s2

(1 + 1.3225s) 1 + 0.9998s + 0.4773s2


1 + 1.3389s + 0.4883s2

1 + 0.7738s + 0.3885s2

1 + 0.9691s + 0.3509s2

(1 + 1.5015s) 1 + 1.1408s + 0.4133s2


1 + 1.2224s + 0.3891s2

(1 + 1.6840s) 1 + 1.0946s + 0.3396s2


1 + 1.112s + 0.3166s2

1 + 0.6219s + 0.3249s2

1 + 0.8305s + 0.3012s2

1 + 0.976s + 0.2984s2

1 + 0.5133s + 0.2759s2


1 + 0.4333s + 0.2382s2

1 + 0.721s + 0.2625s2

1 + 0.373s + 0.209s2

Tab. 1.4.: Quelques polynmes de Bessel-Thomson

1.5.4. Synthse d'un ltre de Bessel


D'un point de vue analytique, il n'existe malheureusement pas d'approche simple
pour trouver les ples de

H(s).

On ne peut donc pas dterminer analytiquement la

valeur de la pulsation de coupure et trouver l'ordre du ltre partir d'un gabarit.


On se contente alors d'une approche itrative conduisant vrier si un ltre donn
(ordre et pulsation de coupure) entre bien dans le gabarit requis. La synthse se
rsume donc dnir la bande passante (-3 dB) dsire et choisir un ordre du
ltre susamment lev pour atteindre l'attnuation souhaite.
titre illustratif, considrons le cas d'un ltre de Bessel d'ordre 6 et de pulsation de

c = 1 [rad/sec]. Du tableau 1.4, on tire le polynme normalis par rapport


la pulsation de coupure c . Comme nous avons choisi de prendre c = 1 [rad/sec],

coupure

ce polynme n'a pas besoin d'tre modi et l'on a

H(s) =

(1 + 1.2224s +

0.3891s2) (1

1
+ 0.9691s + 0.3509s2) (1 + 0.5133s + 0.2759s2)

De cette fonction de transfert, nous dduisons que le ltre est ralis l'aide de trois
cellules d'ordre 2 caractrises par :

28

01



1
rad
=
= 1.60
sec
0.3891

Q01 =

1
= 0.51
1.2224 01

02



rad
1
= 1.69
=
sec
0.3509

Q02 =

1
= 0.61
0.9691 02

1.6. Largeur de bande et dure de la rponse temporelle


03



1
rad
=
= 1.90
sec
0.2759

Q03 =

1
= 1.02
0.5133 03

Comme le temps de propagation total est gal la somme des temps de propagation
de chaque cellule, on a

tp =

3
X
k=1

1
= 1.22 + 0.97 + 0.51 = 2.70 [sec]
Q0k 0k

La gure 1.20 montre la rponse frquentielle de ce ltre d'ordre 6 dont la pulsation


de coupure vaut 1 rad/sec. La gure 1.21 illustre la rponse indicielle du ltre. Il est
intressant de relever que le temps ncessaire pour atteindre le 50% de la rponse
indicielle correspond au temps de propagation du ltre. Enn, la gure 1.22 montre
comment la phase et le temps de propagation changent avec la pulsation. On voit
bien que, dans la bande passante, la phase varie linairement et que le temps de
propagation est pratiquement indpendant de la pulsation.

Rponse frquentielle
10

10

30

dB

H ()

20

40

50

60

70

80
1
10

10
/

10
c

Fig. 1.20.: Rponse frquentielle d'un ltre de Bessel d'ordre 6

1.6. Largeur de bande et dure de la rponse


temporelle
Lors de l'utilisation des ltres, on souhaite souvent avoir simultanment une bande
passante troite et un rgime transitoire rapide. Or, cela est inconciliable. Pour le

29

1.

lments de filtrage analogique

Rponse indicielle

0.8

y(t)

0.6

0.4

0.2

5
t

10

Fig. 1.21.: Rponse indicielle d'un ltre de Bessel d'ordre 6

Phase et temps de propagation


4

H(j)

0.2

0.4

0.6

0.8

0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

1.2

1.4

1.6

1.8

2.74
2.72

tp ()

2.7
2.68
2.66
2.64
2.62

1
/

Fig. 1.22.: Phase et temps de propagation d'un ltre de Bessel d'ordre 6

30

1.6. Largeur de bande et dure de la rponse temporelle


voir, considrons un ltre passe-bande dont la fonction de transfert est dcrite par
sa pulsation caractristique

et son facteur de qualit

H(s) =

Q0

1/Q0 (s/0 )
1 + 1/Q0 (s/0 ) + (s/0 )2

(1.43)

Sachant que le facteur de qualit et la largeur de bande sont relis entre eux par

0
Q0

(1.44)

la fonction de transfert du ltre passe-bande peut galement s'crire sous la forme

H(s) =

s2

s
+ s + 02

(1.45)

Les ples de cette fonction de transfert valent :

p1,2

s

2

02
=
2
2


q

2
1 1 4 Q0
=
2

Si le ltre passe-bande est slectif, le facteur de qualit est lev et l'expression des
ples se simplient pour donner :

p1,2 '

j0
2

(1.46)

La rponse transitoire du ltre est alors dcrite par :

p1 t

yh (t) = A1 e

p2 t

+ A2 e

t cos (0 t + )
= A exp
2


Ceci est une rponse oscillante amortie dont la constante de temps

1/f .

(1.47)

vaut

2/ =

Considrant que la dure du rgime transitoire vaut environ 3 constantes

de temps, on en tire la relation importante suivante :

t ' 3 =

3
1
'
f
f

(1.48)

Cette relation montre que l'on ne peut pas avoir simultanment une grande slectivit (f petit) et un rgime transitoire court (t petit). Une conclusion similaire
est vrie pour les ltres autres que passe-bande pour lesquels on ne peut pas avoir
simultanment une bande de transition troite et un temps d'tablissement rapide.

31

1.

lments de filtrage analogique

1.7. Ralisations des ltres analogiques


1.7.1. Filtres normaliss
Comme on l'a dj dit, les ltres sont reprsents par des fonctions de transfert dont
les numrateurs et dnominateurs sont des polynmes

P (s)

dcomposs en facteurs

simples d'ordre 1 ou 2 :

P1 (s) = 1 + s/1
P2 (s) = 1 +

(1.49)

1 s
+
Q0 0

s
0

2

(1.50)

Aussi, pour caractriser un ltre d'ordre quelconque, sut-il de donner les pulsations
caractristiques et les facteurs de qualit de chaque cellule. C'est ce qui est fait pour
les ltres passe-bas dans le tableau 1.5.
On notera que pour les ltres de Butterworth et Bessel, la pulsation de normalisation
est la pulsation de coupure

(3 dB d'attnuation). Alors que, pour les ltres de

Tchebyche, la pulsation de normalisation est celle correspondant la bande dans


laquelle on accepte une ondulation. L'amplitude

de l'ondulation admise s'exprime

gnralement en dB et les valeurs les plus souvent proposes sont 0.5 dB (5.9%
d'ondulation) et 1.0 dB (12.2% d'ondulation).

1.7.2. Transformations d'un ltre normalis


L'tude des ltres est base sur la connaissance approfondie des ltres passe-bas.
C'est donc partir des caractristiques des ltres passe-bas que l'on construit celles
des ltres de type passe-haut, passe-bande ou rjecteur de bande.
On vrie aisment que le passage d'une cellule passe-bas d'ordre 1 une cellule de
nature dirente se fait par les changements de variable donns dans le tableau 1.6.
La transformation passe-bas vers passe-haut est aise alors que les deux autres sont
fastidieuses et source d'erreurs. Aussi, dans le cas de ltres passe-bande et coupebande, vaut-il mieux utiliser un outil tel que Matlab qui permet d'obtenir directement les polynmes de ralisation.
Il est important de noter que, partant d'un passe-bas d'ordre
passe-bande ou coupe-bande sera d'ordre

2 n.

n,

le ltre quivalent

La dmarche permettant de passer

d'un ltre un autre est prsente en dtail dans [3].

1.7.3. Circuits de Sallen et Key gain xe


Comme tout ltre peut tre ralis partir de cellules d'ordre 1 ou 2 dcrites par
leur facteur de qualit et pulsation caractristique, on voit qu'il sut de connatre
les circuits de base d'ordre 1 ou 2 pour raliser n'importe quel ltre d'ordre

n.

Ces circuits utilisent un amplicateur suiveur ( gain unit) et une raction positive.
Ils permettent ainsi de raliser des ltres gain xe de type passe-bas, passe-haut
et passe-bande. Leurs schmas sont prsents dans la gure 1.23.

32

Ordre

Cellules

1.7. Ralisations des ltres analogiques

Btw

(1)

Qk
1

0.7071

(1)

1.2723

k
0.5dB

Qk

2.8628
0.5774

1.3225

1.2313

Tchb. 1 dB

k
1dB

Qk

1.9652
0.8637

1.0500

0.6265

0.9565

0.4942

1.0000

1.4474

0.6910

1.0689

1.7062

0.9971

2.0177

0.5412

1.4310

0.5219

0.5970

0.7051

0.5286

0.7845

1.3066

1.6043

0.8055

1.0313

2.9406

0.9932

3.5590

1.5015

0.3623

0.2895

0.6180

1.5555

0.5635

0.6905

1.1778

0.6552

1.3988

1.6180

1.7545

0.9165

1.0177

4.5450

0.9941

5.5564

0.5176

1.6030

0.5103

0.3962

0.6836

0.3531

0.7609

0.7071

1.6882

0.6112

0.7681

1.8104

0.7468

2.1980

1.9319

1.9037

1.0233

1.0114

6.5128

0.9954

8.0037

1.6840

0.2562

0.2054

0.5550

1.7160

0.5324

0.5039

1.0916

0.4801

1.2969

0.8019

1.8221

0.6608

0.8227

2.5755

0.8084

3.1559

2.2470

2.0491

1.1263

1.0080

8.8418

0.9963

10.8987

0.5098

1.7772

0.5060

0.2967

0.6766

0.2651

0.7530

0.6013

1.8308

0.5596

0.5989

1.6107

0.5828

1.9565

0.8999

1.9518

0.7109

0.8610

3.4657

0.8506

4.2661

2.5629

2.1872

1.2257

1.0059

11.5308

0.9971

14.2405

10

Qk

Tchb. 0.5 dB

k
c
1.000

Bessel

1.8570

0.1984

0.1593

0.5321

1.8788

0.5197

0.3954

1.0664

0.3773

1.2600

0.6527

1.9483

0.5895

0.6727

2.2131

0.6622

2.7129

1.000

2.0808

0.7606

0.8885

4.4780

0.8806

5.5266

2.8794

2.3228

1.3219

1.0046

14.5793

0.9976

18.0286

0.5062

1.9412

0.5039

0.2372

0.6734

0.2121

0.7495

0.5612

1.9790

0.5376

0.4878

1.5347

0.4761

1.8645

0.7071

2.0606

0.6205

0.7293

2.8913

0.7215

3.5605

1.1013

2.2021

0.8098

0.9087

5.6114

0.9025

6.9367

3.1962

2.4487

1.4153

1.0037

17.9871

0.9980

22.2630

Pour toutes les cellules des ltres de Butterworth, on a

k /c = 1

Tab. 1.5.: Pulsations et facteurs de qualit des ltres normaliss

33

1.

lments de filtrage analogique

C1
R1

R2

U1

C2

U2

Filtre passe-bas

C1

R1

C2

U1

R2

U2

R3

U2

Filtre passe-haut

R2
C2

R1

U1

C1

Filtre passe-bande
Fig. 1.23.: Circuits de Sallen et Key gain xe

34

1.7. Ralisations des ltres analogiques


Filtre dsir

Caractristiques

Variable

passe-bas

s/k

passe-haut

k /s

passe-bande

0 =

i s

B0 =

s i
0

s/0 +0 /s
B0

coupe-bande

0 =

i s

B0 =

s i
0

B0
s/0 +0 /s

Tab. 1.6.: Transformations d'un ltre normalis

Filtres passe-bas et passe-haut


Les fonctions de transfert des ltres passe-bas et passe-haut sont dcrites par :

HP B (s) =

1
1 + C2 (R1 + R2 ) s + C1 C2 R1 R2 s2

(1.51)

HP H (s) =

C1 C2 R1 R2 s2
1 + R1 (C1 + C2 ) s + C1 C2 R1 R2 s2

(1.52)

Par identication des termes de la forme canonique avec ceux des fonctions de transfert, on montre aisment les rsultats suivants :

02 =

1
C1 C2 R1 R2

(1.53)

Q0,P B =

C1 R1 R2
C2 (R1 + R2 )2

(1.54)

Q0,P H =

R2 C1 C2
R1 (C1 + C2 )2

(1.55)

Comme le nombre d'lments indtermins (4) est plus grand que le nombre d'quations (2), on doit en choisir 2 au pralable. An que le facteur de qualit puisse tre
suprieur 0.5, on prendra :
1. pour le ltre passe-bas :

R1 = R2 = R

(1.56)

35

1.

lments de filtrage analogique

d'o

r
1 C1
1
Q0 =
0 =
CR
2 C2
1
C2 =
C1 = 4 Q20 C2
2Q0 0 R

(1.57)

(1.58)

2. pour le ltre passe-haut :

C1 = C2 = C
d'o

(1.59)

r
1 R2
1
Q0 =
0 =
CR
2 R1
1
R1 =
R2 = 4Q20 R1
2Q0 0 C

(1.60)

(1.61)

Filtre passe-bande
La fonction de transfert du ltre passe-bande de la gure 1.23 est dcrite par :

HP (s) =

R2
R1 + R2 1 +

R2
R1 +R2

C2 R3 s
(R1 (C1 + C2 ) + R3 C2 ) s +

R2
CCRR
R1 +R2 1 2 1 3

s2
(1.62)

En choisissant

C1 = C2 = C
HP (s) =

et

R1 = R3 = R,

on obtient

CR s
R2
R2
R2
R + R2 1 + 3 R+R2 CR s + R+R
C 2 R 2 s2
2

En identiant les termes de

HP (s)

(1.63)

avec ceux de la forme canonique

HP (s) = A0

1+

1
Q 0 0
1
s
Q 0 0

s
+

1
02

s2

on montre aisment les rsultats suivants :

1
A0 HP (j0 ) =
3


R
1
02 = 1 +
2
R2 C R2
r
1
R
Q0 =
1+
3
R2
Aprs avoir librement choisi la valeur de

(1.64)

(1.65)

(1.66)

R2 , on voit que les quations ci-dessus nous

permettent de calculer la valeur des lments ncessaires la ralisation d'un ltre


passe-bande :


R = R2 9 Q20 1
r
3 Q0
R 1
=
C = 1+
R2 0 R
0 R

(1.67)
(1.68)

On notera qu' la pulsation caractristique du ltre, le gain vaut 1/3 et que, si


ncessaire, il faudra corriger le gain global.

36

1.7. Ralisations des ltres analogiques

Remarque
Les circuits gain xe orent un moyen simple de raliser des ltres d'ordre 2.
Cependant, si l'on observe les quations donnant la pulsation caractristique
le facteur de qualit

et

Q0 , on voit que l'on ne peut pas varier l'un sans changer l'autre.
R ou C n'est pas

De plus, le choix des valeurs normalises pour les composants

possible. On prfre donc parfois, lorsqu'il s'agit de ltres passe-bas ou passe-haut,


utiliser les circuits gain variable.

1.7.4. Circuits de Sallen et Key gain variable


Leurs schmas sont prsents dans la gure 1.24. On voit qu'ils ont la mme structure que les circuits prcdents sauf que l'amplicateur suiveur est remplac par un
amplicateur gain variable valant

K=

R4
R3 + R4
=1+
R3
R3

On montre aisment que les fonctions de transfert de ces ltres sont dcrites par :

HP B (s) = K

1
1 + (3 K) sRC + (sRC)2

(1.69)

HP H (s) = K

(sRC)2
1 + (3 K) sRC + (sRC)2

(1.70)

HP (s) =

(3 K) sRC
K
3 K 1 + (3 K) sRC + (sRC)2

(1.71)

L'identication des coecients des dnominateurs avec ceux de la forme canonique

1 s
D(s) = 1 +
+
Q0 0

s
0

2

(1.72)

permet de voir que l'on a les relations suivantes :

0 =

1
RC

(1.73)

1
R4
=3K =2
Q0
R3

(1.74)

Comme le nombre d'lments indtermins (4) est plus grand que le nombre d'quations (2), on doit en choisir 2 au pralable. Si, par exemple, on se donne
on a alors

1
R=
0 C


1
R4 = R3 2
Q0

et

R3 ,

(1.75)

(1.76)

37

1.

lments de filtrage analogique

Remarque

On notera que le gain en tension des cellules passe-bas et passe-haut

vaut

AU, P B = AU, P H = K = 3

1
'3
Q0

(1.77)

alors que celui du ltre passe-bande

AU, P =

K
= 3 Q0 1 ' 3 Q0
3K

(1.78)

est proportionnel au facteur de qualit ; il peut ainsi atteindre des valeurs trs importantes. On prfre alors, pour ce type de ltre, utiliser la cellule gain xe.

1.7.5. Ralisation d'un ltre passe-bande


Donne
n = 6 pour lequel on accepte une
1 = 500 [rad/sec] et 2 = 2000 [rad/sec].

On souhaite raliser un ltre passe-bande d'ordre


ondulation

r = 1 dB

entre les pulsations

Solution
Ce ltre sera ralis par 3 cellules d'ordre 2 provenant chacune de la transformation
d'une cellule passe-bas d'ordre 1 en une cellule passe-bande. Cette transformation
se fait par le changement de variable suivant (tableau 1.6) :

s
avec

0k =

s/0k + 0k /s
Bk

i s

Bk =

(1.79)

1
s i
=
0
Q0k

(1.80)

On comprend bien que le calcul de cette transformation partir du tableau des


polynmes normaliss n'est pas aise et qu'il vaut mieux utiliser un programme permettant d'obtenir directement les paramtres de chaque cellule. Le logiciel Matlab
se prte particulirement bien cela.
Le contenu du chier permettant de calculer le ltre dsir est donn dans la section 1.7.5. On y trouve en particulier la fonction

zpk (zero-pole-gain) de Matlab qui

ache les rsultats dans la forme de Laplace :

1658160052.054 s^3
----------------------------------------------------------------------(s^2 + 151.6s + 2.57e005)(s^2 + 741.3s + 1e006)(s^2 + 589.7s +3.891e006)
Dans la forme de Bode, la fonction de transfert du ltre passe-bande gain unit
s'crit alors :

H(s) = 
1+
38

1
s
Q01 01
s
1
Q01 01

 2  
+ s01
1+

1
s
Q02 02
s
1
Q02 02

 2  
+ s02
1+

1
s
Q03 03
s
1
Q03 03

s
03

2 

1.7. Ralisations des ltres analogiques


C

U1

U2

C
R4
R3

Filtre passe-bas
R

U1

R4

U2

R3

Filtre passe-haut
R

U1

U2

2R

R4
R3

Filtre passe-bande
Fig. 1.24.: Cellules gain variable

39

1.

lments de filtrage analogique

Les paramtres de chaque cellule se calculent aisment avec la fonction

damp

qui

fournit les pulsations caractristiques et facteur d'amortissement de chaque cellule


(voir chier Matlab). On obtient alors :

01 = 507 [rad/sec]
02 = 1000 [rad/sec]
03 = 1972 [rad/sec]

Q01 = 3.35
Q02 = 1.35
Q03 = 3.35

partir de ces paramtres et du choix du schma de ralisation, on calcule aisment les valeurs des composants. Adoptant le schma de Sallen et Key gain
xe (gure

??), et, aprs avoir choisi R2

= 1 [k],

on peut calculer les valeurs des

rsistances et capacits de chaque cellule passe-bande (qu. (1.67) et (1.68)) :

99.7 [k]
2
15.4 [k]
R = R2 9 Q0 1 =

99.7 [k]

198 [nF ]
3 Q0
263 [nF ]
C=
=
0 R
51 [nF ]


Filtre PasseBande dordre 6

10

H [dB]

20

30

40

50

60
2
10

10
pulsation [rad/sec]

10

Fig. 1.25.: Rponse frquentielle d'un ltre passe-bande de Tchebyche

40

1.7. Ralisations des ltres analogiques

Fichier Matlab
% calcul d'un filtre passe-bande
% fmy / novembre 2003
close all; clear all; format compact; format short g;
% initialisation
wdeb = 100; wfin = 10e3;
w = logspace(log10(wdeb),log10(wfin),500); % 500 points repartis logar.
wdf = [wdeb wfin];
% calcul du filtre passe-bande Tchb
w1 = 500; w2 = 2000; r = 1; n = 6;
[num den] = cheby1 (n/2, r, [w1 w2], 's');
% fonction de transfert du filtre
Gw = tf (num, den);
% calcul des facteurs de qualit et pulsation caractristiques
zpk(Gw)
% affichage de G(jw)
[wk zk] = damp(Gw);
% pulsation caract. et coeff. d'amortissement
Qk = 1./(2*zk);
% calcul des facteurs de qualite
Qk_wk = [Qk, wk]
Q0 = Qk(1:2:n);
w0 = wk(1:2:n);
Q0_w0 = [Q0, w0]
% Q0 et w0 de chaque cellule
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%
%

affichage des resultats


Zero/pole/gain:

1658160052.054 s^3
--------------------------------------------------------------------------(s^2 + 151.6s + 2.57e005) (s^2 + 741.3s + 1e006) (s^2 + 589.7s + 3.891e006)
Qk_wk =

3.3449
3.3449
1.3491
1.3491
3.3449
3.3449

506.98
506.98
1000
1000
1972.4
1972.4

3.3449
1.3491
3.3449

506.98
1000
1972.4

Q0_w0 =

% fonctions de transfert
G1 = tf([1/Q0(1)/w0(1)
G2 = tf([1/Q0(2)/w0(2)
G3 = tf([1/Q0(3)/w0(3)
Gw = G1 * G2 * G3;
% calcul
[ampl1
[ampl2
[ampl3
[ampl

gain unit
0], [1/w0(1)^2 1/Q0(1)/w0(1) 1]);
0], [1/w0(2)^2 1/Q0(2)/w0(2) 1]);
0], [1/w0(3)^2 1/Q0(3)/w0(3) 1]);

des reponses frequentielles de chaque cellule


phi1] = bode(G1,w);
phi2] = bode(G2,w);
phi3] = bode(G3,w);
phi] = bode(Gw,w);

41

1.

lments de filtrage analogique

% transformation de l'objet ampl en un vecteur


ampl1 = ampl1(:);
ampl2 = ampl2(:);
ampl3 = ampl3(:);
ampl = ampl(:);
% normalisation pour avoir un gain unit du filtre global
ampl = ampl/max(ampl);
% tracage
figure;
h = semilogx(w,20*log10(ampl));
% tracage de G(jw)
set(h,'LineWidth',2);
% ligne plus epaisse
hold on;
% maintien de la figure courante
semilogx(wdf,-[r, r],':');
% ligne en -r [dB]
semilogx(w,20*log10(ampl1),':');
% tracage de G1(jw)
semilogx(w,20*log10(ampl2),'--');
% tracage de G2(jw)
semilogx(w,20*log10(ampl3),':');
% tracage de G3(jw)
axis([wdeb, wfin,-60, 5]); grid;
% definition des axes
title('Filtre Passe-Bande d''ordre 6'); % titre du graphe
xlabel('pulsation [rad/sec]');
% information pour l'abscisse
ylabel('H [dB]'); grid on;
% information pour l'ordonnee
hold off;
% liberation de la figure courante
print pbande_tch6.eps -deps
% sauvegarde dans un fichier .eps
% calcul des composants avec ampli gain unit
% R1 = R3 = R et C1 = C2 = C, R2 libre
R2 = 1000
R = R2*(9*Q0.^2 - 1);
C = 3*Q0./R./w0;
Rk_Ck = [R, C]
% affichage des
% R2 =
%
1000
% Rk_Ck =
%
99696
%
15380
%
99696

42

valeurs des composants

1.9853e-007
2.6315e-007
5.103e-008

Bibliographie
Digital Signal Processing,

[1] J.G. Proakis, D.G. Manolakis,

Maxwell MacMillan,

1992

Analog Filter Design, Saunders College Publishing, 1982


Signal Processing and Linear Systems, Berkeley Cambridge Press,

[2] M.E. van Valkenburg,


[3] B.P. Lathi,
1998
[4] P. Bildstein,

Filtres actifs, Editions Radio, 1976.

1.8. Exercices
FA 1

On souhaite connatre la rponse frquentielle d'un ltre passe-bas de But-

terworth satisfaisant au gabarit suivant :

0 dB Hp (3 kHz) 0.2 dB
Ha (10 kHz) 40 dB
Pour ce faire :
1. calculez l'ordre du ltre et la frquence de coupure du ltre ;
2. que valent le facteur de qualit et la frquence de coupure de chaque cellule ;
3. calculez la fonction de transfert
4. pour chaque cellule, esquissez

H(s)

HdB (f )

du ltre ;
puis, justiez l'allure de

Htot ;

5. pourquoi recommande-t-on de placer les cellules dans l'ordre croissant des


facteurs de qualit ?

FA 2

Ralisez le ltre que vous venez de calculer. Pour ce faire :

1. choisissez le schma de ralisation du ltre permettant d'utiliser des valeurs


normalises pour les capacits ;
2. calculez les lments constitutifs du ltre ;
3. que faites-vous pour obtenir un gain global unit ?

FA 3

Vriez que pour les ltres de Butterworth le produit des facteurs de qualit

vaut 1 si l'ordre est impair et

si l'ordre est impair. Comment justiez-vous ce

rsultat ?

43

Bibliographie

FA 4

Calculez le temps de propagation d'un ltre de Bessel d'ordre 5 dont la

frquence de coupure vaut

FA 5

fc = 1 [kHz].

Rponse :

tp = 386 s

On veut raliser un ltre passe-bas de Tchebiche satisfaisant au gabarit

suivant :

Hr (1 kHz) = 0.5 dB
Ha (2 kHz) 50 dB
1. calculez l'ordre du ltre et sa frquence de coupure ;
2. calculez le facteur de qualit et la frquence caractristique de chaque cellule ;
3. l'ondulation de la rponse frquentielle du ltre sera-t-elle au-dessus ou audessous du niveau 0 dB ?
4. pour chaque cellule, esquissez

FA 6

HdB (f ) ;

justiez l'allure de

Htot .

On vous remet le schma d'un ltre passe-bas constitu de trois cellules de

Sallen et Key gain unit dans lequel toutes les rsistances valent 10 k alors que
les capacits des 3 cellules valent respectivement

C11 = 0.41 F

C12 = 0.38 F

C21 = 0.56 F

C22 = 0.28 F

C31 = 1.54 F

C32 = 0.10 F

Trouvez le type de ltre ainsi ralis et sa frquence de coupure.

FA 7
1. Considrant un ltre passe-bas d'ordre 2

1
Hb (s) =
1 + 2 (s/0 ) + (s/0 )2

avec

calculez son quivalent passe-haut ;

0.1

0 = 103 [rad/sec]

2. tracez les diagrammes de Bode asymptotiques des deux ltres ;


3. rptez les points 1) et 2) pour un ltre passe-bande ;
4. vriez vos rsultats avec Matlab.

FA 8

Partant d'un polynme normalis d'ordre 1, utilisez les transformations cor-

respondantes pour trouver les fonctions de transfert

c = 103 [rad/sec] ;
Q0 = 1 et 0 = 103 [rad/sec] ;

1. d'un ltre passe-haut de pulsation


2. d'un ltre passe-bande tel que

que vaudra la

largeur de bande d'un tel ltre ?

0 = 103 [rad/sec] ;

que

vaudront la largeur de bande d'un tel ltre et l'attnuation obtenue pour

3. d'un ltre rjecteur de bande tel que

0 ?

44

Q0 = 10

et

2. Synthse des ltres rcursifs


2.1. Rponse frquentielle d'un ltre numrique
Avant de considrer la synthse d'un ltre numrique, rappelons que celui-ci est
dcrit par sa fonction de transfert en

z qui peut s'crire sous deux formes quivalentes

H(z) =

b0 z n + b1 z n1 + + bn
z n + a1 z n1 + + an

(2.1)

H(z) =

b0 + b1 z 1 + + bn z n
1 + a1 z 1 + + an z n

(2.2)

La premire forme sert essentiellement l'analyse des performances du ltre (recherche des ples et zros), alors que de la deuxime on tire immdiatement l'quation aux dirences qui servira raliser le ltre :

y[n] = b0 x[n] + b1 x[n 1] + b2 x[n 2] +


a1 y[n 1] a2 y[n 2]
Si l'on souhaite connatre la rponse frquentielle d'un ltre, il sut de remplacer
1
par sa transforme de Fourier
l'oprateur de retard z

z 1
o

exp(jTe ) exp(j)

(2.3)

est la pulsation numrique ou normalise qui se mesure en [rad/chantillon].

On obtient alors

H(j) =

b0 + b1 exp(j) + + bn exp(jn)
1 + a1 exp(j) + + an exp(jn)

(2.4)

Comme l'exponentielle imaginaire est priodique, la rponse frquentielle d'un ltre

fe et sa reprsentation se fait dans


le domaine de frquences allant de 0 fe /2 (ou fe ). Si l'on considre la pulsation
numrique , la reprsentation se fait alors de 0 (ou 2 ) .
numrique est galement priodique de priode

On notera que les valeurs particulires de


de Nyquist

fN = fe /2)

H(0) (composante DC) ou H() (frquence

se calculent aisment et qu'elles valent :

H(j0) =

b0 + b1 + b2 + b3 + + bn
1 + a1 + a2 + a3 + + an

H(j) =

b0 b1 + b2 b3 + + bn
1 a1 + a2 a3 + + an

45

2.

Synthse des filtres rcursifs

Exemple

Considrons un ltre passe-bas rsonant d'ordre 2 dcrit par

H(z) =

z 1
z
= 2
1
2
1 1.7 z + 0.81 z
z 1.7 z + 0.81

On en tire immdiatement deux valeurs particulires de la rponse frquentielle : la


composante DC (z

= 1)

et celle la frquence de Nyquist

H(j0) =

1
= +9.091
1 1.7 + +0.81

H(j) =

1
= 0.285
1 + 1.7 + +0.81

En remplaant l'oprateur de retard

z 1

par son quivalent frquentiel

on peut calculer la rponse frquentielle du ltre

H(j) =
H(j) =

fe /2 (z = 1)

H(j)

exp(j),

qui s'crit

exp(j)
1 1.7 exp(j) + 0.81 exp(j2)

cos() j sin()
1 1.7 cos() + j 1.7 sin() + 0.81 cos(2) j 0.81 sin(2)

De cette fonction complexe, on tire facilement le module et l'argument de

|H(j)| = q

H(j)

1
(1 1.7 cos() + 0.81 cos(2))2 + (1.7 sin() 0.81 sin(2))2

H(j) = arctan

1.7 sin() 0.81 sin(2)


1 1.7 cos() + 0.81 cos(2)

La gure 2.1 prsente les rponses temporelles (impulsionnelle et indicielle) et frquentielles (module et argument) de ce ltre.

2.2. Le problme de l'approximation


La synthse des ltres numriques consiste rechercher les coecients
la fonction de transfert

H(z)

ak

et

bk

de

de manire ce que la rponse harmonique du ltre

satisfasse au cahier des charges x au pralable. Cette synthse peut tre base sur
les connaissances que l'on a de la rponse des ltres analogiques ou sur des mthodes
spciques aux ltres numriques. Dans ce qui suit, on se contentera, partant des
ltres analogiques, de rechercher des ltres numriques au comportement similaire.
Sachant que le comportement frquentiel des ltres analogiques est compltement
dtermin par la donne de la fonction de transfert

H(s) =

46

H(s),

d 0 + d 1 s + d 2 s2 + + d n sn
c0 + c1 s + c2 s2 + + cn sn

(2.5)

2.3. La transformation associe


2.5

20

2
15

1.5
|H(jf)|

h(n)

1
0.5
0

10

0.5
0

10

20

30

40

50

14

12

10

2
H(jf)

g(n)

8
6

6
10

20

30

40

50

0.4

0.2

0.4

0.6

0.8

0.6

0.8

4
5

0.2

f [Hz]

Fig. 2.1.: Rponses temporelles et frquentielles d'un ltre numrique passe-bas

on cherche obtenir le mme type de rponse frquentielle avec des ltres numriques
dcrits par

H(z) =

b0 + b1 z 1 + b2 z 2 + + bn z n
a0 + a1 z 1 + a2 z 2 + + an z n

Comme les correspondances que l'on tablira entre

et

(2.6)

conduisent toutes des

approximations des rponses temporelle et frquentielle analogiques, on peut imaginer un grand nombre de transformations possibles. Parmi celles-ci, il en est deux
que l'on rencontre frquemment et qui seules sont prsentes ici : la

associe

et la

transformation bilinaire.

transformation

2.3. La transformation associe


Cette transformation associe les ples et zros de

H(z)

ceux de

H(s).

Autrement

dit, connaissant la position des ples et zros du ltre analogique situs dans le
demi-plan complexe, on construit un ltre numrique ayant les ples et zros correspondants situs dans un cercle de rayon unit (gure 2.2).
Sachant que la variable
tillonnage

Te ,

reprsente un dcalage temporel d'une priode d'chan-

on a

z = exp(s Te )

(2.7)

47

2.

Synthse des filtres rcursifs

Im(z)

Im(s)

+j
Te
e-Te

Re(s)

Re(z)

-
-j

Fig. 2.2.: Position des ples analogiques et des ples numriques

On en dduit alors que la variable

peut simplement tre remplace par la fonction

s=
qui, une racine analogique

ra ,

1
ln(z)
Te

(2.8)

fait correspondre une racine numrique

rn

telle que

rn = exp(ra Te )

(2.9)

De manire quivalente, cette approche revient relier les polynmes analogiques

Pa (s)

aux polynmes numriques

Pn (z).

Considrant que tout ltre est reprsent fondamentalement par des polynmes
d'ordre 1 et 2, on peut se contenter d'analyser les deux situations suivantes.
1. un polynme analogique d'ordre 1 et sa racine

Pa1 (s) = 1 + s/c

ra

ra = c

(2.10)

correspond un polynme numrique d'ordre 1

Pn1 (z) = 1 + a1 z 1

avec

a1 = exp(c Te )
2. un polynme analogique d'ordre 2 et ses racines

Pc2 (s) = 1 + a1 s + a2 s2

(2.11)
(2.12)

ra1,2

ra1,2 = j0

(2.13)

correspond un polynme numrique d'ordre 2

Pn2 (z) = 1 2R cos(0 )z 1 + R2 z 2


R = exp( Te )

0 = 0 Te

avec

(2.14)
(2.15)

Une fois les correspondances polynomiales obtenues, il reste ajuster le gain de

H(z)

an que, pour une frquence donne, on ait la mme amplitude de la rponse

frquentielle en numrique qu'en analogique.

48

2.3. La transformation associe

2.3.1. Exemple de transformation associe


Considrant un ltre analogique passe-bas de Butterworth d'ordre 3 ayant sa frquence de coupure en

fc = 1 kHz

(gure 2.3), on dsire raliser un ltre numrique

au comportement similaire sachant que l'on a choisi une frquence d'chantillonnage

fe = 1/Te

de 10 kHz.

0.3

10

0.25

h(t)

0.2

0.15
0.1
10

0.05

0.05

0.5

1.5

2.5

1.4

|H(jf)| [dB]

0
20

30

1.2

g(t)

40

0.8
0.6
50

0.4
0.2
0

0.5

1.5
t [ms]

2.5

60
2
10

10
f [Hz]

10

Fig. 2.3.: Rponses d'un ltre analogique passe-bas de Butterworth

Solution

On sait qu'un ltre passe-bas de Butterworth d'ordre 3 est dcrit par

une cellule d'ordre 1 suivie d'une cellule d'ordre 2 telles que

H(s) =

1

(1 + s/c ) 1 + s/c + (s/c )2

(2.16)

On en dduit que les ples de ce ltre analogique valent

pa1 = c = 2000




pa2,3 = c 1 j 3 /2 = 1000 1 j 3 j0

Tenant compte des quations (2.12) et (2.15), il vient :


1. un polynme numrique d'ordre 1 :

P1 (z) = 1 + a1 z 1

avec

49

2.

Synthse des filtres rcursifs

a1 = exp(c Te ) = 0.5335
d'o

P1 (z) = 1 0.5335 z 1

(2.17)

2. un polynme numrique d'ordre 2 :

P2 (z) = 1 2R cos(0 )z 1 + R2 z 2
R = exp( Te ) = exp(/10) = 0.730

avec

0 = 0 Te = 3/10 = 0.544

d'o

P2 (z) = 1 1.25 z 1 + 0.5335 z 2

(2.18)

Ces deux polynmes dcrivent la fonction de transfert du ltre passe-bas numrique


dont les gains

G1

et

G2

H(z) =

sont inconnus :

G1
G2
(1 0.5335 z 1 ) (1 1.25 z 1 + 0.5335 z 2 )

Il reste donc adapter les gains de chaque cellule du ltre de manire ce que
l'amplitude du ltre numrique soit la mme que celle du ltre analogique pour une
frquence donne. Comme il s'agit ici d'un ltre passe-bas, c'est le comportement
DC des ltres qui doit tre identique. Sachant que les valeurs DC des rponses
analogique et numrique sont obtenues pour

s = 0

et, respectivement,

z = 1,

il

vient :

H(s 0) = 1
G2
G1
G2
G1
=
= H(s 0) = 1
H(z 1) =
(1 0.5335) (1 1.25 + 0.5335)
0.4665 0.2835
En choisissant

G1 = 0.4665

et

G2 = 0.2835,

on obtient la fonction de transfert

recherche qui s'crit dans l'une des deux formes suivantes

H(z) =

0.2835
0.4665
1
(1 0.5335 z ) (1 1.25 z 1 + 0.5335 z 2 )

H(z) =

Remarque

0.2835 z 2
0.4665 z
(z 0.5335) (z 2 1.25 z + 0.5335)

On notera que l'galit des ordres du numrateur et dnominateur

conduit le ltre rpondre instantanment l'excitation. Cette situation peu raliste, en particulier pour un ltre passe-bas, nous incite ajouter un retard unitaire
z 1 H(z). Les fonctions de transfert s'crivent alors dans l'une ou l'autre des deux
formes suivantes :

H(z) =

0.4665
0.2835
z 1
1
1
2
(1 0.5335 z ) (1 1.25 z + 0.5335 z )

H(z) =

0.2835 z
0.4665 z
2
(z 0.5335) (z 1.25 z + 0.5335)

(2.19)

(2.20)

Les rponses temporelle et frquentielle de ce ltre sont reprsentes dans la gure


2.4 o on les compare avec celles du ltre analogique.

50

2.3. La transformation associe


0.3

10

0.25

h(n)

0.2

0.15
0.1
10

0.05

0.05

10

15

20

25

|H(jf)| [dB]

1.4

20

30

1.2

g(n)

40

0.8
0.6
50

0.4
0.2
0

10

15

20

60
2
10

25

10
f [Hz]

10

Fig. 2.4.: Rponses d'un ltre numrique obtenu par transformation associe

0.3

10

0.25

h(n)

0.2

0.15
0.1
10

0.05

10

15

20

25

1.4

|H(jf)| [dB]

0
0.05

20

30

1.2

g(n)

40

0.8
0.6
50

0.4
0.2
0

10

15
n

20

25

60
2
10

10
f [Hz]

10

Fig. 2.5.: Rponses d'un ltre numrique obtenu par modication de la transforma-

tion associe

51

2.

Synthse des filtres rcursifs

2.3.2. Modication de la transformation associe


En observant la rponse frquentielle du ltre numrique, on remarquera que son
attnuation la frquence de Nyquist ne dpasse pas 30 dB environ. Ceci reprsente
un des inconvnients majeurs de la mthode. On peut pallier ce dfaut en remplaant
les zros de la fonction de transfert qui se situent en

z = 1.

z=0

par des zros situs en

Comme le gain introduit par chaque nouveau zro est gal deux, il ne

faut pas oublier de rduire d'autant le gain global. La nouvelle fonction de transfert
s'crit alors

H(z) =
H(z) =

1 0.4665 (z + 1)
0.2835 (z + 1)
2
4 (z 0.5335) (z 1.25 z + 0.5335)

(2.21)

1 0.4665 (1 + z 1 )
0.2835 (1 + z 1 )
z 1
1
1
2
4 (1 0.5335 z ) (1 1.25 z + 0.5335 z )

(2.22)

Les rponses temporelle et frquentielle du ltre obtenu par la modication de la


transformation associe sont reprsentes dans la gure 2.5 o on les compare avec
celles du ltre analogique.

2.4. La transformation bilinaire


2.4.1. Introduction
Le but de la transformation bilinaire est de trouver une quation aux dirences
du ltre

H(z) dont la solution est proche de celle de l'quation direntielle du ltre


H(s), solution que l'on obtient par intgration. Parmi les direntes

analogique

mthodes numriques d'intgration, il en est une qui ore un bon compromis entre
la qualit des rsultats et la facilit de mise en oeuvre ; il s'agit de l'intgration
trapzodale. Celle-ci revient remplacer l'intgrale

y(t) =

x(t)dt =

tTe

x(t)dt +

x(t)dt

tTe

par l'opration suivante

y[n] = y[n 1] +

(x[n] + x[n 1])


Te
2

On montre alors aisment que cela revient remplacer la variable


bilinaire en

z
s=

Remarque

2 1 z 1
2 z1
=
1
Te 1 + z
Te z + 1

Si l'on se souvient que l'on a

z = e+sTe

52

s=

1
ln(z)
Te

s par une fonction


(2.23)

2.4. La transformation bilinaire


il est intressant de relever que la transformation bilinaire revient ne conserver
que le premier terme du dveloppement en srie de la fonction logarithme naturel

ln(z) = 2

z1
z+1

z1
z+1

2

2.4.2. Transformation bilinaire d'une fonction de transfert


Comme tout ltre est reprsent par des produits de polynmes d'ordre 1 et 2, on
se contente d'analyser les deux situations suivantes dans lesquelles on remplacera la
variable

par la fonction

Polynme d'ordre 1

1 z 1
1 + z 1

avec

2
Te

(2.24)

Dans ce cas, le polynme

Pa1 (s) = a0 + a1 s

(2.25)

est remplac par une fraction d'ordre 1

1 z 1
1 + z 1
(a0 + a1 ) + (a0 a1 ) z 1
=
1 + z 1

F1 (z) = a0 + a1

d'o
(2.26)

q0
q1

(2.27)

avec

Polynme d'ordre 2

q0 + q1 z 1
1 + z 1
= a0 + a1
= a0 a1

F1 (z) =

(2.28)

Dans ce cas, le polynme

Pa2 (s) = a0 + a1 s + a2 s2

(2.29)

est remplac par une fraction d'ordre 2

2

1 z 1
1 z 1
+ a2
F2 (z) = a0 + a1
1 + z 1
1 + z 1
(a0 + a1 + a2 2 ) + 2 (a0 a2 2 ) z 1 + (a0 a1 + a2 2 ) z 2
=
1 + 2z 1 + z 2
d'o

q0 + q1 z 1 + q2 z 2
1 + 2z 1 + z 2
= a0 + a1 + a2 2

= 2 a0 a2 2
= a0 a1 + a2 2

F2 (z) =

(2.30)

q0
q1
q2

(2.31)

avec

(2.32)
(2.33)

53

2.

Synthse des filtres rcursifs

2.4.3. Exemple de transformation bilinaire


Reprenons l'exemple du ltre de Butterworth d'ordre 3 vu prcdemment

H(s) =
avec

1

(1 + s/c ) 1 + s/c + (s/c )2

c = 2 fc = 2000 rad/sec

Solution

et

fe = 10 kHz .

Prenant en compte les valeurs numriques, on a

= 2/Te = 2104 [sec1 ].

La transformation des polynmes donne alors les rsultats suivants :


1. Polynme d'ordre 1 :

Pa1 (s) = 1 + 1.5915 104 s

q0 =
=
q1 =
=

a0 + a1 = 1 + 1.5915 104 2 104


+4.1831
a0 a1 = 1 1.5915 104 2 104
2.1831

d'o

1 + z 1
1 + z 1
1
=
=
H1 (z) =
F1 (z)
q0 + q1 z 1
4.1831 2.1831 z 1
=
2. Polynme d'ordre 2 :

q0 =
=
q1 =
=
q2 =
=

0.239 (1 + z 1 )
1 0.5219 z 1
Pa2 (s) = 1 + 1.5915 104 s + 2.533 108 s2

a0 + a1 + a2 2 = 1 + 1.5915 104 2 104 + 2.533 108 4 108


+14.315


2 a0 a2 2 = 2 1 2.533 108 4 108
18.264
a0 a1 + a2 2 = 1 1.5915 104 2 104 + 2.533 108 4 108
+7.949

d'o

H2 (z) =

54

1 + 2z 1 + z 2
1
=
Fn2 (z)
q0 + q1 z 1 + q2 z 2

1 + 2z 1 + z 2
14.315 18.264 z 1 + 7.949 z 2

0.06986 (1 + 2z 1 + z 2 )
1 1.2759 z 1 + 0.5553 z 2

2.5. Compensation de la distorsion des frquences


La fonction de transfert globale est ainsi gale au produit de ces deux fonctions de
transfert partielles qui correspondent deux cellules passe-bas bas gain unit. La
fonction de transfert globale s'crit alors sous l'une des deux formes suivantes

H(z) =

0.239 (1 + z 1 ) 0.06986 (1 + 2z 1 + z 2 )
1 0.5219 z 1 1 1.2759 z 1 + 0.5553 z 2

H(z) =

(2.34)

0.239 (z + 1) 0.06986 (z 2 + 2z + 1)
z 0.5219 z 2 1.2759 z + 0.5553

(2.35)

Les rponses temporelle et frquentielle de ce ltre sont reprsentes dans la gure


2.6 o elles sont compares avec celles du ltre analogique.
0.3

10

0.25

h(n)

0.2

0.15
0.1
10

0.05

0.05

10

15

20

25

1.4

|H(jf)| [dB]

0
20

30

1.2

g(n)

40

0.8
0.6
50

0.4
0.2
0

10

15

20

25

60
2
10

10
f [Hz]

10

Fig. 2.6.: Rponses d'un ltre numrique obtenu par transformation bilinaire

2.5. Compensation de la distorsion des frquences


Si l'on analyse plus en dtail les eets de la transformation bilinaire, on remarque
que celle-ci entrane une relation non-linaire entre les pulsations analogique
numrique

et

En eet, partant de la dnition de la transformation bilinaire

s=

2 1 z 1
Te 1 + z 1

(2.36)

on obtient dans le domaine frquentiel

j =

2 1 exp(jTe )
Te 1 + exp(jTe )

(2.37)

55

2.

Synthse des filtres rcursifs

Sachant que

Te

reprsente la pulsation numrique

on a

2 1 exp(j)
Te 1 + exp(j)

j =

En multipliant numrateur et dnominateur par

j =

exp(+j/2),

il vient

2 exp(+j/2) exp(j/2)
2 2j sin(/2)
=
Te exp(+j/2) + exp(j/2)
Te 2 cos(/2)

On en dduit alors que les pulsations analogique

et numrique

sont relies entre

elles par la relation

 
 

= 2fe tan
2
2

2
=
tan
Te

(2.38)

On voit ainsi que le domaine des frquences analogiques variant de 0


report sur un domaine de pulsation numrique allant de 0
notera que c'est seulement pour les basses frquences (
tre assimil

/2.

 1)

est

(gure 2.7). On

que

tan(/2)

peut

Ce qui fait que l'eet de la distorsion est particulirement

marqu lorsque la frquence d'chantillonnage n'est pas beaucoup plus leve que la
frquence caractristique du ltre.
Cette distorsion des frquences peut tre corrige en remplaant la pulsation caractristique

par une pulsation

prenant en compte l'eet de la distorsion avant

d'entreprendre le calcul des coecients du ltre numrique.

2.6. Synthse d'un ltre numrique rcursif


Considrons comme exemple la ralisation d'un ltre numrique de Tchebiche

r = 1 dB ,
fe = 10 kHz .

d'ordre 2, d'ondulation
d'chantillonnage

de bande passante

fr = 3 kHz

et de frquence

On notera que, dans un but illustratif, on a choisi la frquence de Nyquist

fe /2 = 5 kHz

trs proche de la frquence caractristique du ltre

fr = 3 kHz

fN =
et que

cela conduira une forte distorsion frquentielle si l'on n'eectue pas sa compensation.
La synthse d'un ltre numrique rcursif se fait en quatre tapes :
1.

Calcul de la pulsation caractristique r et celle de prdistorsion d


r = 2
d = 2 fe tan

r
2

3 kHz
fr
= 2
= 0.6
fe
10 kHz

= 20 103 tan(0.3 ) = 27 103 [rad/sec]

On notera que l'on a toujours

56

d > r = 2 fr = 18.8 103 [rad/sec].

2.6. Synthse d'un ltre numrique rcursif

H()

= 2 fe tan (/2)

H()

Fig. 2.7.: Relation entre pulsations analogique et numrique

57

2.

Synthse des filtres rcursifs

2.

Recherche du ltre analogique normalis satisfaisant au gabarit

Dans cet exemple, le ltre est un passe-bas de Tchebiche d'ordre 2 et d'ondulation 1 dB. Les tables nous fournissent le polynme normalis qui vaut

Pn,2 (s) =
3.

1
= 1 + 0.996 s + 0.907 s2
Hn (s)

Calcul du polynme de ralisation avec prdistorsion

On eectue le changement de variable

s
= 3.63 105 s
d

et on obtient le polynme de ralisation avec prdistorsion

P2,d (s) = 1 + 3.617 105 s + 1.197 109 s2

4.

Calcul de la fonction de transfert du ltre numrique

En appliquant la transformation bilinaire au polynome de ralisation


4
1
avec = 2 fe = 2 10 [sec ], on obtient les coecients

P2,d (s)

q0 = a0 + a1 + a2 2 = +2.202

q1 = 2 a0 a2 2 = +1.043
q2 = a0 a1 + a2 2 = +0.755

permettant d'crire la fonction de transfert numrique suivante

H(z) =

1 + 2 z 1 + z 2
2.202 + 1.043 z 1 + 0.755 z 2

= 0.454

(1 + 2 z 1 + z 2 )
1 + 0.473 z 1 + 0.343 z 2

Les rponses frquentielles des ltres analogique et numrique sont prsentes dans
la gure 2.8a. Dans un but de comparaison, on a galement calcul la fonction de
transfert sans prdistorsion en eectuant directement la transformation bilinaire de

H(s).

Ce qui a donn

Hspd (z) = 0.325

(1 + 2 z 1 + z 2 )
1 0.0137 z 1 + 0.313 z 2

Sa rponse frquentielle est prsente dans la gure 2.8b. On remarquera combien


la correction de distorsion est ncessaire pour avoir, comme demand, un gain unit
la frquence caractristique

Remarque

fr = 3 kHz .

Tout le travail eectu dans les points 1) 4) ci-dessus pour obtenir la

fonction de transfert

H(z)

se fait beaucoup plus simplement dans Matlab avec les

commandes suivantes :

n = 2 ; r = 1 ; fr = 3e3 ;
fe = 10e3 ; fn = fe/2 ;
[num,den] = cheby1(n,r,fr/fn) ;
num = num/sum(num)*sum(den) ; % gain DC = 1

58

2.6. Synthse d'un ltre numrique rcursif

Rponses frquentielles
1.4
1.2

|H(jf)|

1
0.8
0.6
0.4
0.2
0

fr
0

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

4000

5000
f [Hz]

6000

7000

8000

9000

10000

1.4
1.2

|Hd(jf)|

1
0.8
0.6
0.4
0.2
0

fr
0

1000

2000

3000

Fig. 2.8.: Rponses frquentielles des ltres analogiques et numriques avec et sans

prdistorsion

59

2.

Synthse des filtres rcursifs

2.7. Exercices
RII 1

Partant d'un ltre passe-bas RC, trouvez son quivalent numrique

H(z).

Pour ce faire :
1. crivez l'quation direntielle du circuit RC ;
2. discrtisez cette quation ;
3. crivez l'quation aux dirences du ltre et dessinez son schma fonctionnel ;
4. calculez sa fonction de transfert

RII 2

H(z) ;

Dans l'exercice prcdent, on choisit pour le ltre numrique une priode

d'chantillonnage gale au dixime de la constante de temps


1. calculez numriquement sa fonction de transfert
2. que vaut l'instant caractristique

Kc ?

RC

du ltre analogique.

H(z) ;

quelle sera la dure du rgime transi-

toire ?
3. si

x[n] = [n],

calculez

Y (z) ;

que valent

4. que vaut la rponse frquentielle


5. calculez

H(j)

y[0]

et

y[] ?

esquissez

y[n] ;

du ltre numrique ;

H(j) lorsque la frquence du signal d'entre vaut f = 0, 1/(2 RC), fe /2 ?


H(j) ;

esquissez le module de

6. comparez la rponse frquentielle du ltre analogique.

RII 3

Calculez les quivalents numriques

Ha (z)

par les transformations associe et bilinaire

Hb (z) d'un ltre RC obtenus


lorsque Te = RC/10. Comparez ces
et

deux rsultats entre eux et avec celui de l'exercice prcdent.

RII 4

H(z) d'un ltre analogique passehaut de type Butterworth devant travailler jusqu' 10 kHz dont la fonction de transOn souhaite raliser l'quivalent numrique

fert est dcrite par

H(s) =

(s/c )2
1 + 1.414 (s/c ) + (s/c )2

avec

fc = 1 kHz

Pour ce faire :
1. esquissez le Bode d'amplitude du ltre analogique ;
2. choisissez la frquence d'chantillonnage ;
3. calculez son quivalent
4. calculez son quivalent

Ha (z) partir de la transformation associe ;


Hb (z) partir de la transformation bilinaire ;

5. crivez les quations aux dirences correspondantes permettant ces deux ralisations ;
6. dessinez leur schma fonctionnel ;
7. que valent

60

H( = 0)

et

H( = )

pour les 2 ltres ?

2.7. Exercices

RII 5

On dsire raliser un ltre numrique partir du ltre analogique dcrit par

H(s) =
1. dessinez les ples et zros de

5 103 s
1 + 5 103 s + s2

H(s)

dans le plan complexe ; esquissez son dia-

gramme de Bode ; de quel type de ltre s'agit-il ?


2. aprs avoir choisi une frquence d'chantillonnage qui vous parat raisonnable,
calculez son quivalent numrique
3. dessinez les ples et zros de

H(z) l'aide de la transformation bilinaire ;

H(z) dans le plan complexe ; o se

situent-ils par

rapport au cercle de rayon unit ?

RII 6

Considrant une cellule analogique biquadratique dcrite par

H(s) =

a2 s2 + a1 s + a0
b2 s2 + b1 s + b0

crivez un programme (en pseudo-langage) permettant de passer du ltre analogique


sa ralisation numrique. Pour cela :

H(s) en
H(z) l'aide de la transformation bilinaire ; prcisez quels sont ses paramtres

1. crivez une procdure ou une fonction permettant de transformer


d'entre-sortie ;
2. crivez une procdure ou une fonction calculant

y[n]

de la cellule biquadratique et de son signal d'entre

partir des paramtres

x[n] ;

prcisez quels sont

ses paramtres d'entre-sortie ;


3. tenant compte de ce qui vient d'tre fait, crivez un programme permettant
de raliser le ltre suivant

H(s) =

1
2
s + 1 s2 + 22 s + 22

avec

1 = 1000 rad/sec
2 = 1000 rad/sec

=
0.5

Pour relier votre ltre au monde extrieur, utilisez les procdures

(var Value : real)

et

AnalogOut (Value : real)

AnalogIn

4. votre programme peut tre test de manire simple partir des instants caractristiques et des valeurs initiale et nale de la rponse indicielle du ltre ;
calculez ces valeurs.

N.B. :

Les entres (AnalogIn) se font sur la base d'interruptions commandes par

l'horloge interne ; les sorties (AnalogOut) sont restitues immdiatement aprs les
calculs.

61

2.

62

Synthse des filtres rcursifs

3. Synthse des ltres non


rcursifs
3.1. Introduction
Les ltres non rcursifs que l'on appelle galement ltres rponse impulsionnelle
nie (RIF) se distinguent des ltres rcursifs tudis dans le chapitre prcdent par
les points suivants :
 ils sont toujours stables ;
 ils peuvent tre conus pour avoir une phase linaire exacte ;
 ils ncessitent gnralement plus de matriel et de temps de calcul.
Un ltre non rcursif d'ordre

comporte

N +1

coecients et peut tre dcrit de

manire quivalente par :


1. sa rponse impulsionnelle de longueur

L=N +1

h[n] = {h[0], h[1], h[2], , h[N]} =

N
X
k=0

h[k] [n k]

(3.1)

2. son quation aux dirences

y[n] =

N
X
k=0

3. sa fonction de transfert d'ordre

h[k] x[n k]

(3.2)

N
N

Y (z) X
H(z) =
h[n] z n
=
X(z) n=0
4. sa rponse frquentielle que l'on value en remplaant

(3.3)

z 1

par

ej

Y (j) X
=
h[n] ejn
H(j) =
X(j) n=0

(3.4)

3.2. Spcications
Les spcications d'un ltre se donnent sous la forme d'un gabarit en valeurs relles
ou relatives (dB). Un exemple de gabarit pour un ltre passe-bas est illustr dans
la gure 3.1. On y trouve :

63

3.

Synthse des filtres non rcursifs

1. la bande passante

[0, p ] ;

2. les bandes de transition

(p , a )

et d'arrt[a , ] ;

3. l'ondulation accepte dans la bande passante, exprime par

ou

Rp [dB] ;

4. l'attnuation souhaite dans la bande d'arrt, exprime par

ou

Aa [dB].

|H(j)|

1+1
1

0
Rp

1-1

Aa

AdB
0

Fig. 3.1.: Gabarit d'un ltre

Le gain du ltre passe-bas valant 1 lorsque

0,

les relations entre les valeurs

relles ou relatives du gabarit sont alors dnies comme suit :

Rp = |20 log (1 1 )| > 0

(3.5)

Aa = 20 log(2 ) > 0

(3.6)

1 = 10+Rp /20 1

(3.7)

ou inversment :

2 = 10Aa /20

(3.8)

3.3. Proprits des ltres RIF phase linaire


De manire gnrale, un ltre RIF ne possde aucune proprit particulire concernant le module ou la phase de la rponse frquentielle mis part que c'est le seul
type de ltres pouvant orir une phase linaire exacte (qui est une des proprits
du ltre idal). C'est donc essentiellement pour cette proprit que l'on utilise les
ltres rponse impulsionnelle nie.

3.3.1. Rponses impulsionnelle et frquentielle


Dans le cas o on dsire avoir une phase linaire, la rponse impulsionnelle doit
possder une symtrie paire ou une symtrie impaire ou, de manire quivalente,
une symtrie axiale ou ponctuelle. La justication en est donne ci-dessous.

64

3.3. Proprits des ltres RIF phase linaire

Symtrie paire
N = 6 reprsent par une squence h[n] symtrie
Ns = 3 (gure 3.2a). Cette squence provient d'une rponse
hp [n] non causale dont la rponse frquentielle est relle.

Considrons un ltre RIF d'ordre


paire par rapport
impulsionnelle paire

Le dcalage temporel (ici, un retard) ncessaire pour rendre le ltre causal entrane
le dphasage linaire souhait. On a donc

H(j) = exp (jNs ) Hp (j)


Le module de

H(j)

|H| =

|Hp |

(3.9)

H = {0, } Ns

est gal celui du ltre non causal

Hp (j)

et la phase varie


Hp (j).

linairement avec la pulsation. Le cas chant, on devra, ajouter


linaire pour tenir compte de la valeur ngative ventuelle de
5

5
a)

^
N =3
s

10

1
5

^ N = 3.5
s

10

3
c)

d)

^
N = 3.5

N =3
s

2
3
5

b)

1
5

cette phase

2
0

10

3
5

10

Fig. 3.2.: Rponses impulsionnelles symtrie paire ou impaire

Symtrie impaire
Considrons un ltre RIF d'ordre
impaire par rapport
impulsionnelle impaire

N = 6 reprsent par une squence h[n] symtrie

Ns = 3 (gure 3.2b). Cette squence provient d'une rponse


hi [n] non causale dont la rponse frquentielle est purement

imaginaire.
Le dcalage temporel ncessaire pour rendre le ltre causal entrane le dphasage
linaire souhait. On a donc

65

3.

Synthse des filtres non rcursifs

H(j) = exp (jNs ) Hi (j)


Le module de

H(j)

|H| =

|Hi |

H = /2 Ns

est gal celui du ltre non causal

rie linairement avec la pulsation partir de


imaginaire.

(3.10)

/2

Hi (j)

et sa phase va-

suivant le signe de la valeur

Remarque
On peut bien sr considrer des ltres d'ordre

impair (gures 3.2c et 3.2d).

Dans ce cas, l'axe ou le point de symtrie se situe entre 2 valeurs de la rponse



1
impulsionnelle h[n] et le dphasage linaire s'crira Ns +
. Dans le cadre
2
de ce cours, on n'analysera que des ltres d'ordre N pair (c'est--dire de longueur

L = N +1

impaire) dont le point ou axe de symtrie se situe obligatoirement sur

une valeur entire de l'axe

n.

Exemple
Considrons comme exemple un ltre causal dont la rponse impulsionnelle nie
(gure 3.3a) est dcrite par une squence non-nulle de longueur

L=9

symtrie

paire

h[n] = {+1, +2, +3, +4, +5, +4, +3, +2, +1, 0, 0, }
Par transformation en

avec

n = 0, 1, 2,

de cette rponse impulsionnelle, on obtient la fonction de

transfert du ltre RIF :

H(z) =

N
X

h[n] z n

n=0

= 1 + 2z 1 + 3z 2 + 4z 3 + 5z 4 + 4z 5 + 3z 6 + 2z 7 + 1z 8

= z 8 1 + 2z + 3z 2 + 4z 3 + 5z 4 + 4z 5 + 3z 6 + 2z 7 + 1z 8

On en conclut que ce ltre RIF, dcrit par un polynme d'ordre


8 ples situs en

z = 0

N = 8,

possde

et 8 zros dont les positions dans le plan complexe sont

prsentes dans la gure 3.3b.


En remplaant l'oprateur de retard

z 1

par sa transforme de Fourier

ej ,

on

obtient la rponse frquentielle du ltre

H(j) =

N
X

h[k] ej

k=0

= 1 + 2ej + 3ej2 + 4ej3 + 5ej4 + 4ej5 + 3ej6 + 2ej7 + 1ej8


En mettant en vidence le phaseur central

ej4 ,

on obtient une forme illustrant

clairement la symtrie paire du ltre

H(j) = ej4 1e+j4 + 2ej3 + 3ej2 + 4ej + 5 + 4ej + 3ej2 + 2ej3 + 1ej4

66

3.3. Proprits des ltres RIF phase linaire


6

25

a)

c)

5
20
|H(j)|

h[n]

4
3
2

15
10

1
5
0
1

0
1

10

0.5

b)

d)
10

2
0.5

5
H(j)

Im(z)

0.5

15

0
/

0
0.5

10

2
1
1

0.5

0
Re(z)

0.5

15
1

0.5

0
/

0.5

Fig. 3.3.: Rponse impulsionnelle, ples et zros, amplitude et phase d'un ltre RIF

symtrie paire

Utilisant la formule d'Euler

2 cos = exp(+j) + exp(j),

on obtient nalement

H(j) = ej4 (5 + 8 cos() + 6 cos(2) + 4 cos(3) + 2 cos(4))


Ce rsultat montre l'vidence que l'on a aaire un ltre phase linaire puisque
j4
le seul terme complexe de l'expression est le phaseur e
. Ce ltre RIF possde
donc une rponse frquentielle en amplitude (gure 3.3c) qui vaut

|H(j)| = |5 + 8 cos() + 6 cos(2) + 4 cos(3) + 2 cos(4)|


et une phase (gure 3.3d) dcrite par

H(j) = 4
titre de comparaison, il est intressant de tracer les mmes graphes (gure 3.4)
pour un ltre ralis avec une rponse impulsionnelle similaire la prcdente mais
avec une symtrie impaire cette fois-ci :

h[n] = {+1, +2, +3, +4, 0, 4, 3, 2, 1, 0, 0, }

avec

n = 0, 1, 2,

dont la rponse frquentielle vaut

H(j) = ej4 1e+j4 + 2ej3 + 3ej2 + 4ej + 0 4ej 3ej2 2ej3 1ej4
= 2j ej4 (4 sin() + 3 sin(2) + 2 sin(3) + sin(4))
= 2 | (4 sin() + 3 sin(2) + 2 sin(3) + sin(4)) | + /2 4

On peut relever que la symtrie paire conduit un ltre passe-bas alors que la
symtrie impaire fournit un ltre passe-haut ou passe-bande.

67

3.

Synthse des filtres non rcursifs

25

a)

c)

|H(j)|

h[n]

20

15
10
5

0
1

10

0.5

0
/

0.5

15
1.5

d)
b)

5
3

H(j)

0.5
Im(z)

10

0.5

0
5

10

1.5
2

0
Re(z)

15
1

0.5

0
/

0.5

Fig. 3.4.: Rponse impulsionnelle, ples et zros, amplitude et phase d'un ltre RIF

symtrie impaire

3.4. Synthse par fentrage


3.4.1. Principe du fentrage
Le point de dpart de la synthse des ltres RIF est donn par la considration des
rponses impulsionnelles des ltres idaux. Comme celles-ci sont inniment longues
et non causales, on voit immdiatement que les ltres idaux ne sont pas ralisables.
On doit donc manifestement se contenter d'une approximation de leurs rponses en
les tronquant avant de les rendre causales.
Pour voir plus prcisment comment cela se passe, considrons la rponse frquentielle

Hd (j) d'un ltre analogique passe-bas idal (gure 3.5a). Sa rponse impulhd (t) se calcule par transformation de Fourier inverse. On obtient ainsi une

sionnelle

rponse temporelle en forme de sinus cardinal et de longueur innie (gure 3.5b).


De manire ce que ce ltre soit ralisable, il faut tronquer cette rponse en respectant sa symtrie paire (gure 3.5d). On obtient alors un ltre rponse impulsionnelle de dure nie, mais non causale puisque

h(t)

n'est pas nulle pour

t < 0.

Un dcalage de cette rponse symtrie paire sut rendre le ltre causal (gure
3.5f ), donc phase linaire (gure 3.5e). Bien entendu, le module de sa rponse
frquentielle ne sera plus qu'une approximation de l'idal (gure 3.5c).
D'un point de vue mathmatique, le fait de tronquer la rponse impulsionnelle
revient multiplier celle-ci par une fentre rectangulaire

68

wr (t)

hd (t)

et la rponse impul-

3.4. Synthse par fentrage


sionnelle s'crit alors :

h(t) = hd (t) wr (t)

(3.11)

Pour un ltre numrique, on aura de manire quivalente :

h[n] = hd [n] wr [n]

(3.12)

3.4.2. Eet de la troncation


L'opration de troncation qui, dans une premire approche peut sembler anodine,
modie sensiblement la rponse frquentielle et entrane des ondulations dans les
bandes passantes et d'arrt. Ceci provient de la convolution entre la rponse frquentielle du ltre idal et le spectre en sinus cardinal de la fentre rectangulaire :

H(j) = Hd (j) W (j)


Z +
1
H(j) =
Hd (j) W (j j) d
2

(3.13)

La gure 3.6 montre l'vidence que l'ondulation caractrisant la rponse obtenue

H(j)

provient du spectre

W (j)

de la fentre choisie, ici rectangulaire.

An d'obtenir le meilleur compromis possible entre une faible ondulation et une
bande de transition troite, on sera donc amen par la suite choisir une fentre

w[n]

dont le comportement frquentiel est satisfaisant du point de vue du ltre raliser.


C'est--dire que l'on cherchera un compromis entre l'amplitude des ondulations et
la largeur des bandes de transition.

69

3.

Synthse des filtres non rcursifs

1
a)
amplitude

module

10

b)
0.5

0
0
0.1

0.05

0.05

0.1

50

50

1
c)
amplitude

module

10

d)
0.5

0
0
0.1

0.05

0.05

0.1

50

10
e)

amplitude

phase

50

5
0
5
10
0.1

f)
0.5

0
0.05

0
frquence

0.05

0.1

20

40
60
temps

80

100

Fig. 3.5.: Passage du ltre idal au ltre ralisable

1.5

H (j)

W(jj)

0.5

0.5

0.5

1.5

2.5

1
/

1.5

2.5

1.5
H(j)=H (j) W(j)
d

0.5
H (j)
d

0.5

0.5

Fig. 3.6.: Convolution circulaire dans le domaine des frquences

70

3.5. Rponses frquentielles et impulsionnelles idales

3.5. Rponses frquentielles et impulsionnelles


idales
Comme la synthse par fentrage utilise les rponses impulsionnelles des ltres
idaux, il est ncessaire de les connatre. Ces rponses impulsionnelles sont calcules en partant des rponses frquentielles idales des 4 ltres de base passe-bas,
passe-haut, passe-bande et rjecteur de bande (gure 3.7).

3.5.1. Filtre passe-bas


Avec

comme pulsation de coupure, la rponse frquentielle du ltre s'crit :

Hb (j) =

1 si || c

(3.14)

0 si || > c

Sa transforme inverse n'est autre que sa rponse impulsionnelle :

1
hb [n] =
2

Hb (j)exp(+jn) d

(3.15)

Tenant compte de la rponse frquentielle idale du ltre passe-bas, il vient :

1
hb [n] =
2
=

+c

exp(+jn) d
c

exp(+jnc ) exp(jnc )
j2n

Utilisant les relations d'Euler, on obtient nalement :

hb [n] =

c sin (nc )

nc

< n < +

(3.16)

Cette rponse temporelle est inniment longue et non causale. An de la rendre
causale, il faut tout d'abord la tronquer pour avoir une rponse impulsionnelle de
d'ordre

puis la dcaler de la moiti de sa longueur.

En choisissant de travailler avec une rponse impulsionnelle d'ordre


en

Ns = N/2,

pair centre

il vient :

hb [n] =

c sin((nNs )c )

(nNs )c

si

0 n 6= Ns N

si

n = Ns

sinon

(3.17)

71

3.

Synthse des filtres non rcursifs

Passe-Bas

Passe-Haut
1

Passe-Bande
1

Coupe-Bande 1

Fig. 3.7.: Rponses frquentielles idales des 4 ltres standard

72

3.5. Rponses frquentielles et impulsionnelles idales


Filtre passebas

0.8

h[n]

0.6
0.4
0.2
0
0.2
0

10

20

30

40

50

60

|H(j)|

0.8
0.6
0.4
0.2
0
3

Fig. 3.8.: Rponses impulsionnelle et frquentielle d'un ltre passe-bas

Filtre passehaut

0.8

h[n]

0.6
0.4
0.2
0
0.2
0

10

20

30

40

50

60

|H(j)|

0.8
0.6
0.4
0.2
0
3

Fig. 3.9.: Rponses impulsionnelle et frquentielle d'un ltre passe-haut

73

3.

Synthse des filtres non rcursifs

3.5.2. Filtre passe-haut


Dans ce cas, avec

comme pulsation de coupure, la rponse frquentielle du ltre

s'crit :

Hh (j) =

0 si

|| c

(3.18)

1 si c < || <

On peut remarquer que les rponses frquentielles d'un passe-bas et d'un passe-haut
sont relies entre elles par :

Hh (j) = 1 Hb (j)

(3.19)

Ce qui, dans l'espace temps, correspond :

hh [n] = [n] hb [n]

(3.20)

On en dduit donc immdiatement que :

sin((nNs )c )
c (nNs )c
si
0 n 6= Ns N

hh [n] =
1 c
si
n = Ns

0
sinon

(3.21)

3.5.3. Filtre passe-bande et rjecteur de bande

Les ltres passe-bande et rjecteur de bande possdent 2 pulsations caractristiques

et

limitant les bandes passante et d'arrt. On montre aisment les deux

rsultats suivants :
1. Rponse impulsionnelle d'un ltre passe-bande

h [n] =

2 sin((nNs )2 )

(nNs )2

1 sin((nNs )1 )

(nNs )1

si

0 n 6= Ns N

2 1

si

n = Ns

sinon
(3.22)

2. Rponse impulsionnelle d'un ltre rjecteur de bande

hr [n] =

1 sin((nNs )1 )

(nNs )1

2 sin((nNs )2 )

(nNs )2

2 1

si

0 n 6= Ns N

si

n = Ns

sinon

Le calcul de ces rponses impulsionnelles est laiss comme exercice.

74

(3.23)

3.5. Rponses frquentielles et impulsionnelles idales


Filtre passebande

0.8

h[n]

0.6
0.4
0.2
0
0.2
0

10

20

30

40

50

60

|H(j)|

0.8
0.6
0.4
0.2
0
3

Fig. 3.10.: Rponses impulsionnelle et frquentielle d'un ltre passe-bande

Filtre rjecteur de bande

0.8

h[n]

0.6
0.4
0.2
0
0.2
0

10

20

30

40

50

60

|H(j)|

0.8
0.6
0.4
0.2
0
3

Fig. 3.11.: Rponses impulsionnelle et frquentielle d'un ltre rjecteur de bande

75

3.

Synthse des filtres non rcursifs

Exemple

Ralisation d'un ltre non rcursif lmentaire bas sur la rponse fr-

quentielle idale d'un ltre passe-bas ayant une bande passante de 1 kHz alors que
la frquence d'chantillonnage est de 10 kHz.

3.6. Caractristiques de quelques fentres


Du choix de la fentre, dpendra la qualit de l'approximation ; il est donc ncessaire
de passer en revue les caractristiques de celles-ci. On rappellera tout d'abord que
si on dsire conserver la phase linaire du ltre, il faut que les fentres possdent
une symtrie paire ou impaire.
Comme on l'a vu plus haut, la troncation simple de la rponse impulsionnelle de longueur innie conduit une rponse frquentielle avec des ondulations importantes.
Celles-ci sont dues au phnomne de Gibbs et ne peuvent tre diminues que si la
fentre possde des transitions douces, contrairement la troncation simple.
Les fentres susceptibles de satisfaire les besoins de synthse des ltres et d'analyse spectrale ont fait l'objet d'tudes extensives [3]. Parmi les nombreuses fentres
proposes, seules celles qui sont le plus souvent cites sont prsentes ci-aprs.

3.6.1. Fentres analytiques


Pour chacune des fentres tudies, on prsentera son quation

w[n]

et une gure

comportant 4 graphes :
1. son graphe temporel

w[n]

2. son spectre d'amplitudes

W (j) = T F {w[n]}

3. son spectre d'amplitudes en dB

WdB = 20 log (|W (j)|)

4. son spectre cumul dni comme suit [1] :

1
Wcum (j) =
2

W (j)d

(3.24)

Cette reprsentation peu commune est importante car grce elle, on peut
mesurer le niveau d'attnuation possible ainsi que la largeur de la bande de
transition pour un ltre RIF. Sa dnition dcoule de la convolution entre une
rponse frquentielle constante et le spectre de la fentre

w[n].

Fentre rectangulaire
wr [n] =

76

si

0 sinon

0nN

(3.25)

3.6. Caractristiques de quelques fentres

Fentre triangulaire (ou de Bartlett)


2 Nn
2 2 Nn
wt [n] =

si
0 n N/2
si
N/2 < n N
sinon

(3.26)

Rectangle

20
W (j)

0.6

dB

w[n]

0.8

0.4
0.2

40

60

0
0

10

20

30

40

80
1

50

0.5

0
/

0.5

0.5

0
/

0.5

60

20
W(j)d

W(j)

40

20

20
1

40

60

0.5

0
/

0.5

80
1

Fig. 3.12.: Fentre rectangulaire

Fentre cosinusodale (ou de Hann)


wc [n] =

Fentre de Hamming
wh [n] =


0.5 1 cos 2 Nn
0


0.54 0.46 cos 2 Nn
0

si

0nN

(3.27)

sinon

si

0nN

(3.28)

sinon

Fentre de Blackman
wb [n] =



0.42 0.5 cos 2 Nn + 0.08 cos 4 Nn

si

0nN

(3.29)

sinon

77

3.

Synthse des filtres non rcursifs

Triangle
0

20
W (j)

0.6

dB

w[n]

0.8

0.4
0.2

40

60

0
0

10

20

30

40

80
1

50

0.5

0
/

0.5

0.5

0
/

0.5

0.5

0
/

0.5

0.5

0
/

0.5

35

30
20

20

W(j)d

W(j)

25

15
10
5

40

60

0
5
1

0.5

0
/

0.5

80
1

Fig. 3.13.: Fentre triangulaire

Cosinus
0

20
W (j)

0.6

dB

w[n]

0.8

0.4
0.2

40

60

0
0

10

20

30

40

80
1

50

35

30
20

20

W(j)d

W(j)

25

15
10
5

40

60

0
5
1

0.5

0
/

0.5

80
1

Fig. 3.14.: Fentre cosinusodale (ou de Hann)

78

3.6. Caractristiques de quelques fentres


Hamming
0

w[n]

0.8

20

0.6
40

0.4
0.2

60

0
0

10

20

30

40

80
1

50

0.5

0.5

0.5

0
/

0.5

35

30
20

20

W(j)d

W(j)

25

15
10
5

40

60

0
5
1

0.5

0
/

0.5

80
1

Fig. 3.15.: Fentre de Hamming

3.6.2. Fentre de Kaiser-Bessel


Les fentres prsentes ci-dessus ont des formes et des attnuations xes apportant
chacune sa largeur du lobe principal et son attnuation des lobes latraux. La contribution de Kaiser fut de proposer une fentre s'adaptant l'attnuation dsire. Cette
fentre est dnie par une fonction de Bessel :

wk [n] =

avec :




I0

1(1n/Ns )2

I0 ()

si

sinon

I0 = fonction de Bessel modie de premire


= paramtre de forme de la fentre
Ns = N/2 = point de symtrie de la fentre

0nN

(3.30)

espce et d'ordre zro

Calcul de la fonction de Bessel


L'usage frquent des fentres de Hann ou de Hamming est d ce que ces fonctions
sont familires et faciles calculer. Cependant, bien que la fonction de Bessel soit
en gnral peu connue, il est ais de la calculer en utilisant son dveloppement en

79

3.

Synthse des filtres non rcursifs

Blackman
0

20
W (j)

0.6

dB

w[n]

0.8

0.4
0.2

40

60

0
0

10

20

30

40

80
1

50

0.5

0
/

0.5

0.5

0
/

0.5

35

30
20

20

W(j)d

W(j)

25

15
10
5

40

60

0
5
1

0.5

0
/

0.5

80
1

Fig. 3.16.: Fentre de Blackman

srie :

2

X
1  x n
I0 (x) = 1 +
n! 2
n=1

(3.31)

Cette srie converge rapidement et la procdure de calcul propose par Kaiser est
trs simple mettre en oeuvre :

function Bessel0 (x :real) :real ;


const eps = 1.0e-6 ;
var d, ds, s : real ;
begin
d := 0.0 ;

ds := 1.0 ;

s := 1 ;

repeat
d := d + 2.0 ;
ds := ds * (x / d) * (x / d) ;
s := s + ds ;
until abs (ds/(s+eps)) < eps ;
Bessel0 := s ;
end ;

Calcul des paramtres des fentres de Kaiser


La gure 3.18 montre les caractristiques frquentielles de quelques fentres de Kaiser. On en tire les conclusions suivantes :

80

3.6. Caractristiques de quelques fentres


 en augmentant la longueur du ltre

N , on diminue la largeur du lobe principal


, on diminue l'amplitude des lobes latraux.

 en augmentant le paramtre de forme

Kaiser = 9
0

1
0.8
W (j)

20
dB

w[n]

0.6
0.4
0.2

40

60

0
0

10

20

30

40

80
1

50

0.5

0
/

0.5

0.5

0
/

0.5

35

30
20

20

W(j)d

W(j)

25

15
10
5

40

60

0
5
1

0.5

0
/

0.5

80
1

Fig. 3.17.: Fentre de Kaiser avec

=9

Aprs une simulation numrique extensive, Kaiser a obtenu une paire de formules
qui permettent de trouver
cations sont l'attnuation

et N
AdB et

partir des spcications demandes. Ces spcila largeur de la bande de transition

exprime

en radians.
Le facteur de forme

dpend uniquement de l'attnuation

0.1102 (AdB 8.7)

AdB > 50

0.5842 (AdB 21)0.4 + 0.078862 (AdB 21) si 21 AdB 50


0

si

La longueur du ltre est dtermine par l'attnuation

si

AdB

AdB

(3.32)

AdB < 21

et la bande de transition

souhaite

AdB 8
2.285

(3.33)

81

3.

Synthse des filtres non rcursifs

0
beta = 0

N = 10

. . . . . beta = 3

10

. . . . . N = 20

10

beta = 5

N = 40

20

20

30

30

40

40

50

50

60

60

70

70

80

80

N = 20

90

100

0.1

beta = 5

90

0.2

0.3

0.4

0.5

100

0.1

0.2

0.3

0.4

0.5

Fig. 3.18.: Caractristiques frquentielles de quelques fentres de Kaiser

3.7. Conclusions sur l'usage des fentres


3.7.1. Proprits et utilisation des fentres
L'ensemble des proprits concernant les fentres et les ltres tudis ci-dessus sont
runies dans les tableaux 3.1 3.3. On y trouve les caractrisitques spectrales de
quelques fentres usuelles, les caractristiques des ltres RIF en fonction des fentres
utilises, les avantages et inconvnients de ces fentres.

Fentres
Rectangle
Triangle (Bartlett)
Cosinus (Hann)
Hamming
Blackman
Kaiser
Kaiser

= 4.54
= 5.66

Largeur du

Attnuation du

Dcroissance des

1er lobe

1er lobe [dB]

lobes suivants

4/N
8/N
8/N
8/N
12/N
7.2/N
8.4/N

-13

20 dB/dc

-27

40 dB/dc

-32

60 dB/dc

-43

20 dB/dc

-58

60 dB/dc

-30

20 dB/dc

-42

20 dB/dc

Tab. 3.1.: Caractristiques spectrales des fentres usuelles

82

3.7. Conclusions sur l'usage des fentres

Ondulation

Rp

Fentres
Rectangle

Attnuation max.

Amax

[dB]

0.74

21

25

Cosinus (Hann)

0.055

44

Hamming

0.014

53

Blackman

0.0017

74

0.025

50

0.009

60

Triangle (Bartlett)

Kaiser
Kaiser

= 4.54
= 5.66

Bande de transition

[dB]

1.8 /N
6.1 /N
6.2 /N
6.6 /N
11 /N
5.8 /N
7.2 /N

Tab. 3.2.: Caractristiques des rponses frquentielles des ltres RIF

Fentres
Triangle
(Bartlett)

Cosinus
(Hann)

Hamming

Blackman

Kaiser

+/
+
+

=
+
+
=
+
+
+
+

+
=
++
+

=
++

++

Remarques
simple calculer ; pas de sinus ou cosinus
bande spectrale troite
faible rjection (25 dB)
dcroissance spectrale moyenne (-40 dB/dc)
simple calculer
bande spectrale troite
rjection raisonnable (44 dB)
forte dcroissance spectrale (-60 dB/dc)
simple calculer
bande spectrale troite
bonne rjection (53 dB)
faible dcroissance spectrale (-20 dB/dc)
simple calculer
bande spectrale moyenne
trs bonne rjection (74 dB)
forte dcroissance spectrale (-60 dB/dc)
moins simple calculer
bande spectrale moyenne
excellente rjection (100 dB)
faible dcroissance spectrale (-20 dB/dc)
meilleur compromis attnuation / bande de transition

Tab. 3.3.: Avantages et inconvnients des fentres utilises dans la ralisation de

ltres RIF

83

3.

Synthse des filtres non rcursifs

3.7.2. Dmarche pour calculer un ltre


La dmarche suivre pour obtenir les coecients du ltre souhait est la suivante :
1. connaissant le gabarit du ltre dsir, choisir le ltre idal correspondant ;
2. calculer les pulsations caractristiques

se situant au centre des bandes de

transition ;
3. rechercher la rponse impulsionnelle

hd [n]

du ltre idal ; si celle-ci n'est pas

connue, on peut la calculer par transformation de Fourier inverse ;


4. choisir une fentre

w[n] satisfaisante du point de vue de l'attnuation (table 3.2) ;

5. connaissant la largeur de la bande de transition

, calculer l'ordre du ltre N ;

6. calculer les coecients du ltre en multipliant la rponse impulsionnelle par


la fentre choisie

h[n] = hd [n] w[n]

3.8. Ralisation d'un ltre passe-bas


Considrons la ralisation d'un ltre passe-bas satisfaisant au cahier des charges
suivant :

fp = 1 kHz,

Ap = 0 dB;

fa = 1.4 kHz,

Aa = 50 dB

alors que la frquence d'chantillonnage est de 10 kHz.

3.8.1. Prliminaires
La rponse du ltre sera construite partir de celle d'un ltre passe-bas idal tel
que :
1. la frquence de coupure se situe au centre de la bande de transition

fc =
donc :

c = 2

fp + fa
= 1.2 kHz
2

1.2 kHz
fc
= 2
= 0.24
fe
10 kHz

2. la largeur de la bande de transition requise vaut

f = fa fp = 0.4 kHz
on a donc :

= 2

84

f
0.4 kHz
= 2
= 0.08
fe
10 kHz

3.8. Ralisation d'un ltre passe-bas


3. la rponse impulsionnelle dsire est celle d'un ltre passe-bas (qu. 3.17)

hd [n] = hb [n] =

c sin((nNs )c )

(nNs )c

si

0 n 6= Ns N

si

n = Ns

sinon

4. le tableau 3.2 montre que pour cet exemple, on peut utiliser la fentre de
Hamming ou la fentre universelle de Kaiser. Considrons ces deux cas.

3.8.2. Fentrage de Hamming


La fentre de Hamming apporte une attnuation de 53 dB et une bande de transistion
de largeur

=
On en dduit immdiatement la longueur

N=

6.6
N
N du

ltre :

6.6
6.6
=
= 82.5 ' 84

0.08

que l'on a arrondi la premire valeur paire suprieure. Le point de symtrie se


situe donc en

Ns = 42.

Portant ces valeurs dans la rponse impulsionnelle dsire

(qu. 3.17), on obtient :

hd [n] =

c sin ((n Ns )c )

(n Ns )c

sin (0.24 (n 42))


(n 42)

En multipliant cette rponse par la fentre de Hamming

wh [n], on obtient la rponse

impulsionnelle du ltre RIF recherch

h[n] = hd [n] wh [n]


h[n] =

sin(0.24 (n42))
(n42)

0.54 0.46 cos 2


0.24
0

n
84



si
0 n 84
si
n = 42
sinon

Les rponses impulsionnelle et frquentielle de ce ltre RIF sont prsentes dans la


gure 3.19. Il est intressant de relever que, en plus de la phase linaire oerte par
le ltre RIF, sa bande de transition est remarquablement troite.
titre comparatif, on y a ajout en pointill la rponse d'un ltre de Butterworth
d'ordre 12 (ltre RII). Ce ltre d'ordre 12 ralis avec 6 cellules biquadratiques
requiert environ 36 multiplications-additions contre 84 pour le ltre RIF. Thoriquement, le gabarit aurait pu tre respect avec un ltre RII d'ordre 24.
La gure 3.20 illustre la dirence de comportement des rponses indicielles des
ltres RIF ou RII.

85

3.

Synthse des filtres non rcursifs

Rponse impulsionnelle
0.25
0.2
0.15
h[n]

0.1
0.05
0
0.05
0.1

10

20

30

40

50

60

70

80

90

Rponse frquentielle
0

H(f) [dB]

20
40
60
80

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Fig. 3.19.: Rponses impulsionnelle et frquentielle (Hamming)

Rponses temporelles
2

x [n]

1
0
1
2

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

0.02

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

0.02

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

0.02

RIF

[n]

RIF

1
2

0.002

RII

[n]

RII

1
2

0.002

Fig. 3.20.: Comparaison des rponses temporelles

86

3.8. Ralisation d'un ltre passe-bas

3.8.3. Fentrage de Kaiser


Dans ce cas, l'attnuation

AdB

dtermine le facteur de forme

Comme

Adb = 50,

il vient (qu. 3.32)

= 0.1102 (AdB 8.7) = 0.1102 (50 8.7) = 4.55


L'ordre du ltre est x par la bande de transition

et l'attnuation Adb (qu. 3.33)

50 8
AdB 8
=
= 73.1 ' 74
2.285
2.285 0.08

La valeur trouve (73.1) est augmente 74 de manire obtenir un ordre pair ;


le point de symtrie se situe donc en

Ns = 37.

Portant ces valeurs dans la rponse

impulsionnelle dsire (qu. 3.17), on obtient

hd [n] =

sin (0.24 (n 37))


c sin ((n Ns )c )
=

(n Ns )c
(n 37)
Rponse impulsionnelle

0.3
0.25
0.2
h[n]

0.15
0.1
0.05
0
0.05

10

20

30

40

50

60

70

80

Rponse frquentielle
0

H(f) [dB]

20
40
60
80

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Fig. 3.21.: Rponses impulsionnelle et frquentielle (Kaiser)

En multipliant cette rponse par la fentre de Kaiser


impulsionnelle du ltre RIF recherch

h[n] == hd [n] wk [n] =

sin(0.24 (n37))
(n37)

I0 4.55

1(1n/37)2

I0 (4.55)

wk [n],

on obtient la rponse

si

0nN

sinon

Les rponses impulsionnelle et frquentielle de ce ltre RIF sont prsentes dans la


gure 3.21.

87

3.

Synthse des filtres non rcursifs

3.9. Ralisation d'un ltre passe-bande


Considrons la ralisation d'un ltre passe-bande satisfaisant au gabarit suivant :

frqu. d'chant.

1ere

bande d'arrt

bande passante
eme
2
bande d'arrt

10 kHz

Attnuation

0... 1.8 kHz

30 dB

1.9...2.1 kHz

0 dB

2.4... 5 kHz

40 dB

Dans le cas, o deux attnuations direntes sont proposes pour les bandes d'arrt,
les calculs doivent se faire avec la plus forte attnuation (ici 40 dB). De mme,
lorsque les largeurs des bandes de transition dirent, on prendra la plus faible des
deux.
Dans le tableau 3.2, nous voyons que la fentre en cosinus ore l'attnuation souhaite. Comme la plus petite bande de transition a une largeur de 0.1 kHz, on en
dduit que les frquences dnissant les bandes de transition sont les suivantes :

fa1

fp1

fp2

fa2

1.8 kHz

1.9 kHz

2.1 kHz

2.2 kHz

Ce qui donne pour les deux bandes de transition la largeur suivante :

= 2

f
0.1 kHz
= 2
= 0.02
fe
10 kHz

L'ordre du ltre est x par la largeur de la bande de transition

6.2
6.2
=
= 310

0.02

Comme cette valeur est entire et paire, il n'est pas ncessaire de l'augmenter ; le
point de symtrie se situe donc en

Ns = 155.

La rponse du ltre est construite partir de celle d'un ltre passe-bande idal dont
les frquences caractristiques se situent au centre des 2 transitions

donc :

fc1 =

fa1 + fp1
= 1.85 kHz
2

fc2 =

fp2 + fa2
= 2.15 kHz
2

1.85 kHz
fc1
= 2
= 0.37
fe
10 kHz
2.15 kHz
fc2
= 2
= 0.43
c2 = 2
fe
10 kHz
c1 = 2

88

3.9. Ralisation d'un ltre passe-bande


La rponse impulsionnelle dsire est celle d'un ltre passe-bande (qu. 3.22) :

hd [n] =

c2 sin((nNs )c2 )

(nNs )c2

c1 sin((nNs )c1 )

(nNs )c1

si

0 n 6= Ns N

c2 c1

si

n = Ns

sinon

ou, plus simplement :

hd [n] =
=

sin ((n Ns )c2 ) sin ((n Ns )c1 )

(n Ns )
(n Ns )
sin (0.43 (n 155)) sin (0.37 (n 155))

(n 155)
(n 155)

En multipliant cette rponse par la fentre en cosinus

wc [n],

on obtient la rponse

impulsionnelle du ltre RIF recherch

h[n] =

h[n] = hd [n] wc [n]

sin (0.43 (n 155)) sin (0.37 (n 155))

(n 155)
(n 155)

1 cos(2 n/310)
2

Rponse impulsionnelle
0.06
0.04

h[n]

0.02
0
0.02
0.04
0.06

50

100

150

200

250

300

350

Rponse frquentielle
0

20

dB

H (f)

10

30
40
50
60

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Fig. 3.22.: Rponses impulsionnelle et frquentielle d'un ltre passe-bande (cosinus)

Les rponses impulsionnelle et frquentielle sont prsentes dans la gure 3.22. Un


trac plus dtaill de la rponse frquentielle permet de relever une ondulation maximum de 0.05 dB aux 2 extrmits de la bande passante et des pulsations de coupure
(-3 dB) situes en 1864 Hz et 2136 Hz.

89

3.

Synthse des filtres non rcursifs

3.10. Exercices
RIF 1 :

Ralisez un ltre passe-bas non rcursif satisfaisant au cahier des charges

suivant

fp = 1.0 kHz

Ap = 0 dB;

fa = 1.2 kHz

Aa 50 dB

alors que la frquence d'chantillonnage est de 10 kHz. Pour cela :


1. choisissez la fentre et calculez l'ordre

du ltre ;

2. tracez sa rponse impulsionnelle et sa rponse frquentielle en dB ;


3. avec le zoom, mesurez quelques valeurs intressantes d'attnuation ;
4. gnrez les signaux suivants d'amplitude
a) carr de priode

A=1

Kp = 100 ;

b) sinus de frquence

f1 = 1.0 kHz ;

c) sinus de frquence

f2 = 1.2 kHz ;

5. ltrez ces 3 signaux et tracez leurs rponses.

RIF 2 :

Ralisez un ltre passe-haut non rcursif satisfaisant au cahier des charges

suivant

fa = 0.8 kHz

Aa 40 dB;

fp = 1.0 kHz

Ap = 0 dB

alors que la frquence d'chantillonnage est de 10 kHz.


1. choisissez la fentre et calculez l'ordre

du ltre ;

2. tracez sa rponse impulsionnelle et sa rponse frquentielle en dB ;


3. avec le zoom, mesurez quelques valeurs intressantes d'attnuation ;
4. gnrez les signaux suivants d'amplitude
a) carr de priode

A=1

Kp = 100 ;

b) sinus de frquence

f1 = 0.8 kHz ;

c) sinus de frquence

f2 = 1.0 kHz ;

5. ltrez ces 3 signaux et tracez leurs rponses.

RIF 3 :

Ralisez un ltre passe-bande non rcursif satisfaisant au cahier des charges

suivant

fp1 = 1.0 kHz


fa1 = 0.9 kHz

fp2 = 2.0 kHz

Aa1 50 dB

Ap = 0 dB

fa2 = 2.3 kHz

Aa 40 dB

alors que la frquence d'chantillonnage est de 10 kHz.


1. choisissez la fentre et calculez l'ordre

du ltre ;

2. tracez sa rponse impulsionnelle et sa rponse frquentielle en dB ;


3. avec le zoom, mesurez quelques valeurs intressantes d'attnuation ;

90

3.10. Exercices
4. gnrez les signaux suivants d'amplitude
a) carr de priode

A=1

Kp = 200 ;

b) sinus de frquence

f1 = 1.5 kHz ;

c) sinus de frquence

f2 = 0.6 kHz ;

5. ltrez ces 3 signaux et tracez leurs rponses.

RIF 4 :

On veut raliser un ltre passe-bas rponse impulsionnelle nie tel que

sa bande passante soit de

1 kHz

alors que

fe = 20 kHz .

1. Analyse temporelle
a) calculez

hb [n] ;

b) tronquez

hb

c) que vaut

hb [n]

N = 128

et rendez-la causale ;

ses extrmits ?

d) est-ce raisonnable de l'accepter tel quel ? sinon que pouvez-vous faire ?


2. Analyse frquentielle
An d'augmenter la rsolution spectrale, on ajoute des 0 la rponse impulsionnelle ; comme l'usage de la FFT ncessite que la longueur du signal analys
soit une puissance de 2, essayez 512 et/ou 1024.
a) calculez

H(jf ) (fft) ;

b) tracez le module et la phase de

H(jf ) ;

c) est-ce que cela correspond votre attente ?


d) que valent les extrema de la bande passante et celle d'arrt

(zoom) ?

e) mesurez la frquence de coupure et la largeur de la bande de transition.


3. Amlioration de la rponse frquentielle
a) reprenez

hb [n] et multipliez-la par une fentre en cosinus ou de Hamming ;

b) rptez les points 2.a), ,2.d).


c) concluez.

RIF 5 :
x[n] de 64 chantillons
A = 10, 0 = /16, = /3.

1. Gnrez un signal

partir d'un cosinus discret tel que

2. Le systme dans lequel passe ce signal

x[n]

est dcrit par les 2 quations

suivantes :

w[n] = (x[n] )2
y[n] = w[n] w[n 1]
3. Dessinez le schma fonctionnel de ce systme et dcrivez ce que ralise chaque
fonction ; en quoi ces 2 oprateurs sont-ils rponse impulsionnelle nie ?

91

3.

Synthse des filtres non rcursifs

4. Tracez sur une mme gure les 3 signaux (subplot) ; observez-les.


5. Esquissez la main le spectre de chacun des 3 signaux ;
a) remarquez que le premier oprateur est non linaire et qu'il gnre des
frquences non prsentes dans

x[n] ;

lesquelles ?

b) d'un point de vue temporel et frquentiel, quel est l'eet du deuxime


oprateur ?
6. Observez le signal

w[n] ;

quelles sont les frquences prsentes ?

7. Transformez de Fourier les 3 signaux ; tracez sur une nouvelle gure les 3
spectres d'amplitudes.
8. Observez ces spectres et justiez votre analyse prcdente.
Rf. : McClellan, Schaer, Yoder :

DSP FIRST, Prentice

Hall, 1998, p. 461

RIF 6 :
1. Gnrez un signal

x[n]

de 128 chantillons tel que

x[n] = 10 cos(2 n/T0 + /6) + 2 cos(6 n/T0 + /2)


T0 = 32 ;

avec

que valent les pulsations normalises de

x[n] ?

2. Ce signal est appliqu un ltre RIF d'ordre 2 dcrit par

y[n] = x[n] 2 cos(3/16) x[n 1] + x[n 2]


Dessinez son schma fonctionnel.
3. Quel est le gain DC de ce ltre ?
4. Quelle est sa rponse impulsionnelle

h[n] ?

5. Avec Matlab, calculez et tracez les signaux

x[n], h[n]

et

y[n].

6. Observez les rsultats ; quel est l'eet du ltre ?

y[n] en calculant et traant le module de la rponse frquenH(j) = TF(h[n]) avec NF F T = 128 ainsi que les spectres d'amplitude
x[n] et y[n].

7. Justiez l'allure de
tielle
de

RIF 7 :

Poursuivant l'exercice prcdent et partant de son quation

y[n] = x[n] 2 cos(3/16) x[n 1] + x[n 2]


1. Calculez sa fonction de transfert

H(z) =
puis
a) calculez ses ples et zros ;
b) tracez-les dans le plan complexe ;

92

Y (z)
X(z)

3.10. Exercices
c) justiez l'eet rjecteur de ce ltre.
2. Pour quelle frquence normalise a-t-on

H(jf /fe ) = 0 ?

3. Tenant compte de ce qui vient d'tre vu, quelle est l'quation d'un ltre rjecteur capable de supprimer
a) le 50 Hz d'un signal chantillonn 1kHz ;
b) le 50 Hz et 150 Hz d'un signal chantillonn 1kHz.
4. Gnrez ces signaux et vriez vos algorithmes.

93

3.

94

Synthse des filtres non rcursifs

Bibliographie
[1] V.K. Ingle, J.G. Proakis :

Digital Signal Processing Using MatLab,

PWS Publi-

shing Company, 1997

A Course in Digital Signal Processing, John Wiley, 1997


Harris : On the Use of Windows for Harmonic Analysis, Proc.

[2] B. Porat :
[3] J.F.

IEEE, vol

66, No.1, Jan.1978


[4] J.F.Kaiser, F.F. Kuo :

System Analysis by Digital Computer, John

Wiley, 1966

95

Bibliographie

96

Deuxime partie .
Analyse des signaux

97

4. Analyse et comparaison des


signaux
Ce chapitre prsente quelques outils frquemment utiliss en analyse des signaux.
On y trouvera des aspects pratiques de la transformation de Fourier, son extension
aux signaux bidimensionnels (les images), les fonctions d'auto- et d'intercorrlation
servant caractriser et comparer des signaux entre eux et enn une prsentation
succinte des signaux alatoires.

4.1. Transformation de Fourier


4.1.1. Dnition de la transformation de Fourier
Les transformations de Fourier directe et inverse sont dnies comme suit

x(t)
X(jf )

Z +

X(jf ) exp(+j2f t) df

(4.1)

x(t) exp(j2f t) dt

(4.2)

On constate que les descriptions temporelle et spectrale sont parfaitement sym-

X(jf ) ne sont pas les mmes que celles du signal original


x(t) est une tension lectrique, sa transforme X(jf ) s'exprime

triques et que les units de

x(t).

Dans le cas o

en [V/Hz] et elle est dnie comme la


temporel

densit spectrale d'amplitude du signal

x(t).

En notation abrge, on dcrira ces deux transformations par les oprateurs


et

T F I{ }.

La correspondance rciproque s'crit alors :

TF{}

x(t) = T F I{X(jf )} T F {x(t)} = X(jf )


x(t) ne possde pas de symtries
X(jf ) est une fonction complexe :

Si la fonction
d'amplitude

particulires, sa densit spectrale

x(t) X(jf ) = Xr (f ) + jXi (f )

(4.3)

Le module et la phase de la densit spectrale d'amplitude valent alors :

|X(jf )| X(f ) =

Xr2 (f ) + Xi2 (f )

(4.4)

Xi (f )
Xr (f )

(4.5)

X(jf ) (f ) = arctan

99

4.

Analyse et comparaison des signaux

4.1.2. Puissance et nergie d'un signal


Les signaux permanents, priodiques ou non, sont caractriss par leur puissance
moyenne (leur nergie est inniment grande). On a vu dans le cours Signaux et
Systmes que les signaux priodiques ont une puissance que l'on peut calculer aussi
bien dans le domaine temporel que frquentiel :

P =

1
T

+T /2

x2 (t) dt

T /2

+
X

X(jk)

|X(jk)|2

(4.6)

(4.7)

est l'amplitude complexe de la composante spectrale d'ordre

k.

Dans le cas des signaux non permanents, on prendra garde parler de leur nergie et
non pas de leur puissance, car celle-ci est nulle si l'on considre une dure inniment
longue. De mme que pour les signaux priodiques, on peut calculer l'nergie d'un
signal apriodique dans les domaines temporel et frquentiel :

W =
W =

Z
Z

x2 (t) dt

L'expression de l'nergie d'un signal


dnition de la

2
V sec

|X(jf )|2 df

x(t)

(4.8)

/Hz

(4.9)

dans le domaine des frquences entrane la

densit spectrale d'nergie Sx (f ) :


Sx (f ) |X(jf )|2 = X(jf ) X(jf )
2

On notera que ses units s'expriment en [V

/Hz2 ]

/Hz2

(4.10)

lorsque le signal est une tension.

4.1.3. Proprits de la transformation de Fourier


Parmi le grand nombre de proprits associes la transformation de Fourier, on
retiendra particulirement celles qui ont le plus d'intrt en traitement du signal.
Elles sont prsentes dans le tableau 4.1. De plus, une table illustre des transformes
de Fourier tire de l'ouvrage de F. de Coulon [2] est prsente en n de chapitre.

4.2. Exemples de spectres continus


Pour illustrer l'utilisation de la transforme de Fourier, calculons les densits spectrales de quelques signaux particuliers.

100

4.2. Exemples de spectres continus

a) linarit

ax(t) + by(t)

aX(jf ) + bY (jf )

b) dcalage

x(t + td )

X(jf ) exp(+j2f td )

x(t) exp(at), x(t) causal

X(j2f + a)

x(t) exp(+j2f0 t)

X (j(f f0 ))

dx(t)
dt

j2f X(jf )

c) amortissement

d) modulation

e) drivation

f ) intgration

1
1
X(jf ) + X(0)(f )
j2f
2

x(t)dt

avec

g) convolution

h) nergie

x(t)dt

h(t) x(t)

H(jf ) X(jf )

h(t) x(t)

H(jf ) X(jf )

W =

+
2

x (t)dt

j) valeurs l'origine

X(0) =

x(t = 0) =

W =

X(jf )df

X(f = 0) =

|X(jf )|2 df

x(t)dt

k) rotation Oy

y(t) = x(t)

Y (jf ) = X(jf ) = X (jf )

l) fonction paire

x(t) = x(t)

X(jf ) <

x(t) = x(t)

X(jf ) =

m) fonction impaire

Tab. 4.1.: Quelques proprits de la transformation de Fourier

101

4.

Analyse et comparaison des signaux

4.2.1. Spectre d'une impulsion rectangulaire


Considrons une impulsion

x(t)

de largeur

et d'amplitude

centre en

t = 0

(gure 4.1). Par dnition de la transformation de Fourier, on a :

X(jf ) =

x(t) exp(j2 f t)dt

En tenant compte de la dnition de l'impulsion rectangulaire centre :

x(t) =

0 si |t| >

il vient :

X(jf ) =

A si |t|

t
2
(4.11)

t
2

+t/2

A exp(j2 f t)dt

t/2

+t/2

A
=
exp(j2 f t)
j2f
t/2


A
t
t
=
exp(j2 f
) exp(+j2 f
)
j2f
2
2
A exp(+j f t) exp(j f t)
f
2j

Utilisant la formule d'Euler :

sin u =

exp(+ju) exp(ju)
2j

on obtient nalement :

X(jf ) = A t

sin(f t)
= A t sinc(f t) <
f t

(4.12)

Comme on pouvait s'y attendre, la densit spectrale d'amplitude d'une impulsion

t = 0 est bien dcrite par un sinus cardinal. De plus, comme


rectangulaire x(t) est paire, sa densit spectrale d'amplitude Y (jf ) est

rectangulaire centre en
l'impulsion

une fonction relle. Enn, on remarquera (gure 4.1) que le spectre passe par zro
chaque fois que le sinus cardinal s'annule, c'est--dire, chaque fois que la frquence
est un multiple de

1/t.

On constate ainsi que le spectre d'une impulsion est d'autant plus large et de faible
amplitude que l'impulsion est troite (gure 4.2b). Cette remarque est vraie pour
l'ensemble des signaux de dure limite et elle peut s'noncer ainsi
Un signal de

courte dure possde un spectre large bande.

un spectre

102

troit correspond un signal de longue dure.

4.2. Exemples de spectres continus

1
0.8
x(t)

0.6
0.4
0.2
0
0.2
10

0
temps

10

0.8

0.6

0.4

0.2

0
frquence

0.2

0.4

0.6

0.8

X(jf)

3
2
1
0
1
1

Fig. 4.1.: Impulsion rectangulaire et sa densit spectrale d'amplitude

10
1

8
6

0.6

X1(jf)

x1(t)

0.8

0.4

4
2

0.2
0
0
2
0.2
10

10

0
frquence

10
1

8
6

0.6

X2(jf)

x2(t)

0.8

0.4

4
2

0.2
0
0
2
0.2
10

0
temps

10

Fig. 4.2.: Le contenu spectral d'une impulsion dpend fortement de sa dure

103

4.

Analyse et comparaison des signaux

4.2.2. Spectre d'un sinus amorti


tudions, comme deuxime exemple, la transforme de Fourier d'une sinusode de
frquence

fp dcroissant exponentiellement au cours du temps (gure 4.3). Son qua


0,
si t < 0

y(t) =
(4.13)

A exp(at) sin(2fp t), si t 0

tion s'crit :

Partant de la dnition de la transforme de Fourier, on calcule sa densit spectrale


d'amplitude :

Y (jf ) =

y(t) exp(j2f t)dt

A exp(at) sin(2fp t) exp(j2f t)dt

A exp(at)

exp(+j2fp t) exp(j2fp t)
exp(j2f t)dt
2j

Cette intgrale ne contient que des exponentielles ; elle est trs simple calculer.
Aprs rduction des deux primitives un mme dnominateur, on obtient :

Y (jf ) = A

2fp
C
(a + j2f )2 + (2fp )2

(4.14)

1
A = 1.0
f = 4.0

0.5

y(t)

a = 0.25
0

0.5

5
temps

10

|Y(jf))|

1.5
1
0.5
0

10

0
frquence

10

Fig. 4.3.: Sinus amorti et le module de sa densit spectrale d'amplitude

104

4.2. Exemples de spectres continus


On remarquera que la densit spectrale d'amplitude
car la sinusode dcroissante

y(t)

Y (jf ) est une fonction complexe

ne possde pas de symtrie particulire. La gure

4.3 prsente le sinus amorti et le module de sa densit spectrale d'amplitude.


On peut galement noter les deux valeurs particulires suivantes

f =0:

f = fp :

Y (0) = A

2fp
A
'
2
+ (2fp )
2fp

a2

Y (jfp ) =

a  2 fp

si

A
2fp
A
'
a a + +j4fp
j2a

si

a  2 fp

4.2.3. Spectre d'une impulsion sinusodale


On sait qu' un produit de convolution dans le domaine temporel correspond un
produit simple dans le domaine complexe :

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

Y (jf ) = H(jf ) X(jf )

(4.15)

L'inverse de cette proposition est galement vraie et elle est trs pratique pour
calculer le spectre de signaux moduls en amplitude. Elle s'exprime comme suit.
un produit simple dans le domaine temporel correspond un produit de convolution
dans le domaine complexe :

y(t) = m(t) x(t)

Y (jf ) = M(jf ) X(jf )

Considrons comme exemple une impulsion sinusodale de dure

y(t) =

cos(2f0 t)
0

si

|t| <

t
2

si

|t|

t
2

(4.16)

Voyant que ce signal est quivalent la multiplication d'un sinusode permanente


par une impulsion de largeur

t,

on a :

y(t) = m(t) x(t) = m(t) cos(2f0 t)


Sachant que les spectres des signaux

x(t)

avec

et

m(t)

m(t) =

si

|t| <

t
2

si

|t|

t
2

valent respectivement

1
( (f + f0 ) + (f f0 ))
2
M(jf ) = A t sinc(f t)

X(jf ) =

et que la convolution entre une fonction et une impulsion de Dirac reproduit la


fonction l'endroit o se situe l'impulsion, on voit que le spectre de l'impulsion
sinusodale vaut

A t
(sinc((f + f0 ) t) + sinc((f f0 ) t))
2
On constate ainsi que le spectre d'une impulsion sinusodale de dure t est constitu
de deux sinus cardinaux situs en +f0 et f0 (gure 4.4).
Y (jf ) = M(jf ) X(jf ) =

105

4.

Analyse et comparaison des signaux

2
1
X(f)

x(t)

1.5
0

1
0.5

1
2

0
10

10

10

0
frquence

10

2
1
M(f)

m(t)

1.5
0

1
0.5

1
2

0
10

2
1
Y(f)

x(t)

1.5
0

1
0.5

1
2

0
temps

0
10

Fig. 4.4.: Impulsion sinusodale et son spectre

4.2.4. Spectres de deux impulsions


Considrons un signal constitu de deux impulsions d'amplitude
quement en

places symtri-

t0 /2 (gure 4.5). Ce signal possde un spectre qui se calcule facilement


t = 0 et l'aide du thorme du dcalage.

partir de celui d'une impulsion centre en


Comme le signal

z(t)

est la somme de 2 impulsions dcales de

t0 /2,

z(t) = x(t + t0 /2) + x(t t0 /2)

(4.17)

on a :



t0
t0
sin(f t)
exp(+j2f ) + exp(j2f )
Z(jf ) = A t
f t
2
2
donc

Z(jf ) = 2 A t

sin(f t)
cos(f t0 )
f t

(4.18)

De plus, par rapport ce qui va suivre, il est intressant de considrer galement la


densit spectrale d'nergie :

sin(f t)
Sz (f ) |Z(jf )| = 2 A t
cos(f t0 )
f t
2

2

(4.19)

Les densits spectrales d'amplitude et d'nergie sont reprsentes la gure 4.5.

106

4.3. Extension de la transformation de Fourier

z(t)

0.5
(a)
0
10

10

Z(jf)

1
0
1
(b)
2
2

1.5

0.5

0.5

1.5

1.5

0.5

0.5

1.5

S (f)

3
2
1

(c)

0
2

Fig. 4.5.: Deux impulsions rectangulaires symtriques

trales d'amplitude

Z(jf )

et d'nergie

z(t)

avec ses densits spec-

Sz (f ).

4.3. Extension de la transformation de Fourier


Le spectre d'nergie des deux impulsions tudies ci-dessus montre une grande similitude avec la gure de diraction de Fraunhofer due deux fentes troites (gure
4.6). En ralit, il s'agit plus que d'une similitude car on montre en physique que
toute gure de diraction est la transforme de Fourier de l'objet qui en est la cause.
De cette analogie, on dduit que la notion de transformation de Fourier peut tre
tendue des espaces plusieurs dimensions. Cette transformation de Fourier multidimensionnelle est dnie de manire similaire celle que nous avons tudie jusqu'
prsent

x(t) X(jf )
avec

x(t) exp (j2 f t) dt

(4.20)

reprsentant la frquence des oscillations, c'est--dire le nombre de priodes

par unit de temps. Cette frquence est mesure en [Hz] ou, de manire plus fondamentale, en [1/sec].
Dans le cas particulier d'une image (espace deux dimensions), on a aaire une
intensit lumineuse

fonction des coordonnes

et

i = i(x, y)

(4.21)

Sa transforme de Fourier est alors dnie comme suit

I(jfx , jfy )

i(x, y) exp (j2 fx x)

exp (j2 fy

y) dx dy

(4.22)

107

4.

Analyse et comparaison des signaux

Fig. 4.6.: Figure de diraction [3] cause par deux ouvertures troites correspondant

aux deux impulsions rectangulaires de la gure 4.5

Ici, les frquences spatiales

fx

et

fy

reprsentent le nombre de priodes par unit de

longueur mesures en [1/m]. Une illustration des spectres spatiaux (ou des gures de
diraction) d'ouvertures circulaire et carre est donne la gure 4.7 ; on y reconnat
la fonction sinus cardinal distribue dans l'espace des frquences spatiales

fx

et

fy .

Comme nous venons de le voir, la notion de transformation de Fourier s'applique


des fonctions bidimensionnelles. On imagine donc aisment que les principes de
ltrage bien connus en lectronique peuvent s'tendre de la mme manire des
signaux multidimensionnels. Une illustration en est donne la gure 4.7 o l'on
voit comment l'application de masques dans le domaine frquentiel permet d'extraire
les bords de l'image (ltrage passe-haut) ou de dfocaliser l'image (ltrage passebas). On notera qu'un ltrage ralis avec un masque constitu simplement de 0 ou
1 n'est pas optimum car il entrane les eets de franges bien visibles sur les images.

4.4. Classication et types de signaux


Sans entrer dans les dtails de la classication des signaux, il faut mentionner que
plusieurs approches sont possibles. Parmi celles-ci, on en citera deux :
 la classication phnomnologique qui met l'accent sur le comportement temporel
du signal ;
 la classication nergtique o l'on classe les signaux suivant qu'ils sont nergie
nie ou puissance nie.

108

4.4. Classication et types de signaux

1
g(x,y)

g(x,y)

1
0.5
0
50

0.5
0
50

50
0

0
50

50

0.5

0.5

G(fx,fy)

G(fx,fy)

50
0

0.5
5

0
50

50

0.5
5
5
0
f

Original

5
0

fx

Passehaut

0
5

fx

Passebas

Fig. 4.7.: a) Transformes de Fourier spatiales d'un rond et d'un carr

b) Filtrage spatial de la lettre A avec un masque qui ne laisse passer que


les hautes ou les basses frquences

109

4.

Analyse et comparaison des signaux

4.4.1. Classication phnomnologique


Dans cette classication, on rpartit gnralement les signaux en deux classes principales et quatre sous-classes illustres par la gure 4.8.
Dans les deux classes principales, on trouve :
 les signaux dterministes dont l'volution temporelle parfaitement dnie peut
tre prdite par un modle mathmatique appropri ;
 les signaux alatoires qui ont un comportement temporel imprvisible et dont la
description ne peut se faire qu'au travers d'observations statistiques.

Signaux

Dterministes

Priodiques

Alatoires

Non priodiques

Stationnaires

Non stationnaires

Fig. 4.8.: Classication phnomnologique des signaux

Parmi les

signaux dterministes

(gure 4.9), on distingue :

 les signaux priodiques dont la forme se rpte rgulirement ;


 les signaux pseudo-alatoires qui sont des signaux priodiques mais avec, l'intrieur de la priode, un comportement alatoire ;
 les signaux quasi-priodiques qui rsultent d'une somme de sinusodes dont le
rapport des priodes n'est pas rationnel ;
 les signaux non-priodiques ; ils sont essentiellement reprsents par des signaux
transitoires dont l'existence est phmre.
Parmi les

signaux alatoires

(gure 4.10), on distingue :

 les signaux stationnaires dont les caractristiques statistiques ne changent pas au


cours du temps (p.ex : le bruit lectronique) ;
 les signaux non-stationnaires dont le comportement statistique volue au cours
du temps (p.ex. : la parole).

4.4.2. Classication nergtique


L'nergie

Wx

d'un signal

x(t)

est dnie comme suit

Wx

110

x2 (t) dt

(4.23)

4.4. Classication et types de signaux


(a)

(b)

0.5

0.5

0.5

0.5

(c)

(d)

0.5

0.5

0.5

0.5

0
temps

0
temps

Fig. 4.9.: Exemples de signaux dterministes : (a) priodique, (b) pseudo-alatoire,

(c) quasi-priodique, (d) non-permanent

On dira que ce signal est

nergie nie

si

Wx < .

Dans cette catgorie, on

rencontre tous les signaux temporellement phmres qu'ils soient dterministes ou


alatoires.
La puissance moyenne

Px

d'un signal

1
Px lim
T T

x(t)

est dnie par

+T /2

T /2

2
x2 (t) dt Xef
f

(4.24)

On notera que cette dnition concide avec celle du carr de la valeur ecace du
signal

x(t).

On dira que celui-ci est

puissance nie

si

Px < .

Cette catgorie

englobe les signaux priodiques, quasi-priodiques et les signaux permanents alatoires ou non. Dans le cas o le signal est priodique, la dure d'intgration

est

prise gale une priode du signal.


Certains signaux thoriques n'appartiennent aucune de ces catgories ; c'est le cas,
x(t) = eat < t < .

par exemple, de l'exponentielle

4.4.3. Signaux types


An de clarier les choses, considrons comme exemple de signaux-types les signaux
reprsents la gure 4.11. Le premier

x1 (t) = A exp(at) (t)

n'est ni priodique

ni permanent ; dans la mme catgorie, on peut placer les signaux temporaires tels

111

4.

Analyse et comparaison des signaux

(a)
1
0
1
5

(b)
1
0
1
5

0
(c)

1
0
1
5

0
temps

Fig. 4.10.: Trois exemples de signaux alatoires : (a) bruit blanc, (b) bruit large

bande, (c) bruit non-stationnaire

que les signaux priodiques de dure nie par exemple. Le deuxime, un signal carr,
est priodique et permanent. Le troisime est un signal permanent quasi-priodique.
Le quatrime

x4 (t)

est un signal alatoire permanent pour lequel il n'existe pas de

description temporelle.

Signaux dterministes temporaires


Les signaux dterministes temporaires tels que

x1 (t)

sont des signaux puissance

moyenne nulle mais nergie nie. Ils possdent un spectre continu dni par leur
densit spectrale d'amplitude. Celle-ci n'est autre que la transforme de Fourier du
signal :

X(jf ) =

x(t) exp(j2f t) dt

[V

sec]

= [V/Hz]

(4.25)

Leur nergie se calcule soit au niveau temporel

Wx =

2
V sec

x21 (t) dt

Sx (f ) df

soit dans le domaine frquentiel

Wx =

112

/Hz

(4.26)

4.4. Classication et types de signaux

x (t)

1
0.5
0
5

10

15

20

25

10

15

20

25

10

15

20

25

10
temps

15

20

25

x2(t)

1
0
1
5

x3(t)

1
0
1
5

x4(t)

1
0
1
5

Fig. 4.11.: Quatre signaux types

partir de la densit spectrale d'nergie

Sx (f )

exprime en [V

/Hz2 ]

Sx (f ) = X(jf ) X(jf ) = |X(jf )|2

(4.27)

Signaux permanents priodiques


Un signal dterministe permanent, par exemple

x2 (t),

est un signal priodique dont

la puissance est nie et l'nergie innie. Sa description spectrale peut se faire grce
la transforme de Fourier du signal

X(jf ) =

x(t) exp(j2f t) dt

[V

sec]

(4.28)

Pour tous signaux priodiques, on obtient alors une densit spectrale d'amplitude
constitue d'impulsions de Dirac. Ces impulsions correspondent aux raies spectrales
du signal priodique qui, comme on le sait, possde un spectre discret.
Plutt que de travailler avec les impulsions de Dirac, il est alors plus simple et plus
pratique d'en rester la description bien connue des sries de Fourier

1
X(jk) =
T

+T /2

x(t) exp(j2kf0 t) dt

[V]

(4.29)

T /2

113

4.

Analyse et comparaison des signaux

La puissance des signaux priodiques se calcule soit au niveau temporel

1
Px =
T

+T /2

x2 (t) dt

[V2 ]

(4.30)

(4.31)

T /2

soit dans le domaine frquentiel

+
X

Px =

k=

|X(jk)|2

Signaux permanents non priodiques


Un signal dterministe permanent est un signal dont la puissance est nie et l'nergie
innie. L'exemple illustr par le signal quasi-priodique

x3 (t) est constitu de quatre

sinusdes dont les frquences ne sont pas dans un rapport rationnel. Sa description
spectrale peut se faire grce la transforme de Fourier du signal

1
X(jf ) = lim
T T

+T /2

x(t) exp(j2f t) dt

[V]

(4.32)

T /2

et la puissance se calcule aux niveaux temporel ou frquentiel

1
Px = lim
T T

+T /2
T /2

x21 (t) dt

|X(jf )|2

(4.33)

Signaux alatoires
Les signaux alatoires sont des signaux permanents qui ne peuvent pas tre dcrits
analytiquement. Les dnitions ci-dessus sont donc inutilisables. Cependant, dans le

T = N t,
x[n] = x(t =

cas o l'on est en possession d'une suite de valeurs enregistres de dure


on peut calculer le spectre et la puissance de cette squence de valeurs

n t)

X(jf ) '

N 1
1 X
x[n] exp(j2f nt)
N n=0
N 1
1 X 2
x [n]
Px '
N n=0

[V]

(4.34)

(4.35)

Comme les signaux alatoires ne sont par dnition pas descriptibles, on doit tenter
de trouver des modles les reprsentant aussi bien que possible. Cela nous conduit
les classer dans une des trois catgories types qui sont :
 les bruits large bande dans lesquels toutes les frquences sont prsentes amplitudes gales ( la limite du bruit blanc) ;
 les bruits bande limite dans lesquels les composantes hautes frquences sont
nulles ;
 les bruits colors dans lesquels toutes les frquences sont prsentes mais avec des
amplitudes variables.
Une illustration temporelle de ces trois bruits est donne dans la gure 4.23. La
description et analyse de ces signaux sera faite dans la section 4.8.

114

4.5. Comparaison des signaux


Bruits: (a) large bande (b) bande limite (c) color
1

(a)

0.5
0
0.5
1
5
1

0
t

(b)

0.5
0
0.5
1
5
1

(c)

0.5
0
0.5
1
5

Fig. 4.12.: Trois signaux alatoires

4.5. Comparaison des signaux


Une opration mathmatique qui, de par sa forme, est trs proche de la convolution est la fonction de corrlation de deux signaux. Cependant, contrairement la
convolution, le but de la corrlation est de mesurer le degr de ressemblance de ces
signaux et d'extraire des informations qui, dans une large mesure, dpendent de
l'application considre.
La corrlation est utilise dans les radars, les sonars, les communications numriques,
la dtection de signaux noys dans du bruit, la mesure de temps de transmission, le
GPS (Global Positioning System), etc.
Dans chaque cas, on dispose de deux fonctions : le signal de rfrence
reu

x(t) et le signal

y(t). Il faut alors trouver une opration mathmatique permettant de comparer

ces signaux et d'en mesurer la ressemblance ou corrlation. Ceci se fait simplement


en eectuant l'intgrale du produit des signaux que l'on dcale progressivement l'un
par rapport l'autre.
Deux illustrations en sont donnes dans les gures 4.13 et 4.14. Dans la premire, on
compare deux signaux dont la superposition (maximum de ressemblance) apparat
aprs un dcalage temporel gal 0.8. Dans la deuxime, on compare un signal
chirp (signal sinusodal dont la frquence varie linairement avec le temps) avec sa
version dcale. On y voit que la corrlation d'un tel signal avec sa version dcale
possde un maximum trs bien dni l'endroit correspondant au dcalage des deux
signaux.

115

4.

Analyse et comparaison des signaux

Exemple de corrlation

y(t)

1
0.5
0
1

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

0.8

0.6

0.4

0.2

0.2

0.4

0.6

0.8

0.2

0.4

0.6

0.8

1
temps

1.2

1.4

1.6

1.8

x(t), y(t+)

1
0
1
1
x(t) y(t+)

1
0
1
1

rxy(+)

0.1
0

0.1
0

Fig. 4.13.: Intercorrlation de deux signaux

Exemple de corrlation

y(t)

1
0
1
0

0.5

1.5

2.5

0.5

1.5

2.5

0.5

1.5

2.5

0.5

1.5
temps

2.5

x(t), y(t+)

x(t) y(t+)

1
0
1

rxy(+)

0.4
0.2
0
0.2

Fig. 4.14.: Autocorrlation d'un signal chirp

116

4.5. Comparaison des signaux

4.5.1. Corrlation de signaux nergie nie


Intercorrlation de deux signaux
x(t) et y(t) nergie nie, on dnit la fonction d'intercorrlation
x(t) avec le signal y(t) dcal d'une va-

Considrant deux signaux

(c) comme l'intgrale du produit du signal


leur

rxy ( ) =

x(t) y(t + ) dt

rxy ( ) =

on montre que

rxy ( )

On voit ainsi que la fonction

(4.36)

= t + ,

Par changement de variable

de l'ordonne

x( ) y() d = ryx ( )

(4.37)

est aussi la version retourne de

ryx ( )

autour

Oy .

Comme on peut le constater, les fonctions d'intercorrlation

x(t) y(t + ) dt = rxy ( )

et de convolution

x() y(t ) d = x(t) y(t)

sont formellement trs proches. On montre qu'elles sont relies entre elles par :

rxy ( ) = x( ) y( )

(4.38)

Cette relation valable dans l'espace temps a bien entendu son quivalent dans l'espace des frquences :

Rxy (jf ) = X (jf ) Y (jf )

(4.39)

Autocorrlation d'un signal


Dans le cas particulier o
du signal

x(t)

y(t) = x(t),

autocorrlation

on obtient la fonction d'

(fac)

rxx ( ) =

x(t) x(t + ) dt

(4.40)

qui, pour un dcalage nul, donne l'nergie du signal

rxx (0) =

x(t)

x(t)2 dt Wx

(4.41)

117

4.

Analyse et comparaison des signaux

4.5.2. Corrlation de signaux puissance nie


Dans ce cas, les signaux sont permanents et possdent une nergie inniment grande ;
on ne peut donc pas utiliser les dnitions prcdentes. Pour cette catgorie de
signaux, on rednit les deux fonctions de corrlation comme suit :

1
rxy ( ) = lim
T T

+T /2

1
rxx ( ) = lim
T T

+T /2

x(t) y(t + ) dt

(4.42)

x(t) x(t + ) dt

(4.43)

T /2

T /2

Dans le cas d'un dcalage nul, on trouve la puissance du signal

1
rxx (0) = lim
T T

x(t)

+T /2

T /2

2
x(t)2 dt Xef
f = Px

(4.44)

Il est d'autre part vident que si les signaux sont priodiques, l'intgration se fera
sur une priode seulement.
La gure 4.15 illustre des fonctions d'autocorrlation reprsentatives de quelques
signaux alatoires. On y trouve successivement trois signaux dont les puissances
 2 
Vef f :

sont les mmes, savoir 0.2




un bruit blanc gaussien

un bruit large bande

: son caractre non prvisible est manifeste et il est

conrm par l'troitesse du pic de la fac.


: ce signal a t obtenu en ltrant passe-bas le bruit blanc.

Son contenu spectral moins tendu fait qu'il est raisonnablement possible de prvoir une valeur future pas trop loigne. Une mesure de cet horizon de prvision
est donne par la largeur mi-hauteur du pic de la fac.

un bruit bande troite

: ce signal a t obtenu en ltrant le bruit blanc l'aide

d'un ltre passe-bande. Son contenu frquentiel troit se manifeste par un comportement oscillant de manire assez rgulire. Cette pseudo-priodicit est encore
plus facile dterminer l'aide de sa fac : elle se mesure par la distance sparant
le pic central du premier pic latral.

4.5.3. Proprits de l'autocorrlation


On rappellera tout d'abord que la fonction d'autocorrlation consiste dcaler un
signal par rapport lui-mme, puis intgrer le produit des deux. On montre alors
aisment que la fonction d'autocorrlation possde les proprits suivantes :
1. Lorsque le dcalage temporel est nul (

= 0),

la fac est gale l'nergie du

signal pour les signaux nergie nie :

rxx (0) =

118

x(t)2 dt Wx

(4.45)

4.5. Comparaison des signaux


rxx()

x(t)
0.2
1
0.1
(a)

0
0.1

1
2

0.2
2

0
dcalage

0.2
1
0.1
(b)

0
0.1

1
2

0.2
2

0.2
1
0.1
(c)

0
0.1

1
2

0
temps

0.2
2

Fig. 4.15.: Quelques signaux et leur fonction d'autocorrlation

ou, la puissance moyenne pour les signaux puissance nie :

1
rxx (0) = lim
T T

+T /2
T /2

x(t)2 dt Px

2. Comme la correspondance entre les 2 signaux ne peut pas tre aussi forte
que lorsque les signaux se superposent exactement cela entrane que la fac est
maximum pour un dcalage nul. On a donc :

rxx (0) rxx ( )

(4.46)

rxx ( ) = rxx ( )

(4.47)

3. La fac est une fonction paire :

4. La fac d'un bruit blanc (ainsi appel par analogie la lumire blanche constitue de toutes les frquences lumineuses) est une impulsion de Dirac. En eet,
le bruit blanc tant form d'une multitude de frquences possdant la mme
puissance, il en rsulte un signal variant si rapidement que sa valeur prsente
est indpendante des valeurs passes et que sa valeur est non nulle pour

=0

seulement. On a donc :

rxx ( ) = 2 (t)
o

(4.48)

est la variance du signal alatoire ; c'est galement, comme on l'a vu

plus haut, la puissance du signal alatoire.

119

4.

Analyse et comparaison des signaux

5. La fac d'un signal priodique quelconque est une fonction priodique paire.
Considrons comme exemple le signal

1
rxx ( ) =
T

A2
=
T

x(t) = A sin(t + ).

On a alors :

+T /2

x(t) x(t + ) dt
T /2

+T /2

sin(t + ) sin((t + ) + ) dt
T /2

d'o :

rxx ( ) =

A2
cos( )
2

(4.49)

A2 /2 du signal
phase du signal.

On remarque ainsi que l'amplitude de cette fac est la puissance

x(t)

et que la fac ne nous donne aucune information sur la

6. Dans le cas d'un signal

x(t)

perturb par du bruit

retrouver la fac du signal non perturb. Considrant

n(t), il est possible de


y(t) = x(t) + n(t), on a

en eet :

1
ryy ( ) = lim
T T

+T /2

1
= lim
T T

+T /2

(x(t) + n(t)) (x(t + ) + n(t + )) dt

T /2

T /2

(x(t) x(t + ) + n(t) n(t + )

+ x(t) n(t + ) + n(t) x(t + )) dt


= rxx ( ) + rnn ( ) + rxn ( ) + rnx ( )
d'o :

ryy ( ) = rxx ( ) + rnn ( ) + rxn ( ) + rnx ( )


x(t)
rxn ( ) = 0 = rnx ( ) ;

n(t)

Dans le cas o le signal

et le bruit

entendu

ce qui donne nalement :

(4.50)

ne sont pas corrls, on a bien

ryy ( ) = rxx ( ) + rnn ( )


De plus, comme gnralement la fac

rnn ( )

du bruit tend rapidement vers 0,

on voit que, pour un dcalage susamment grand, il restera la fac


signal

(4.51)

rxx ( )

du

x(t).

Une illustration de cette dernire proprit (gure 4.16) montre comment l'autocorrlation permet d'extraire un signal noy dans un bruit blanc. Dans cette gure,
le signal est une sinusode d'amplitude 1 volt et le bruit blanc possde une valeur
ecace de 5 volt.
Le signal extrait est reconnaissable mais encore perturb par du bruit. Comme ce
bruit rsiduel diminue avec la racine carre du nombre d'chantillon, on voit qu'on
peut diminuer le bruit en augmentant le nombre d'chantillons enregistrs.

120

4.5. Comparaison des signaux


Signal + bruit avec 20000 chantillons
20

x(t)

10
0
10
20

10

0
dcalage

30

xx

r ()

20
10
0

rxx()

0.5
0

0.5
1
5

Fig. 4.16.: Extraction d'un signal avec l'aide de l'autocorrlation

4.5.4. Proprits de l'intercorrlation


Comme pour la fonction d'autocorrlation, on se contentera d'noncer les proprits
des fonctions d'intercorrlation :

1. En gnral la c n'est ni paire, ni impaire.


2. Le maximum de la c se situe l'endroit du dcalage correspondant au maximum de similitude entre les deux signaux. Cette proprit est trs utilise pour
mesurer des temps de propagation.
3. Comme le fait de retarder
avancer le signal

x(t)

y(t)

par rapport

par rapport

y(t),

x(t)

d'une valeur

quivaut

on aura :

rxy ( ) = ryx ( )

(4.52)

4. Si les deux signaux sont priodiques de mme priode, la c sera galement


priodique.

4.5.5. Calcul numrique de la corrlation


Le calcul numrique d'une corrlation se fait en remplaant l'intgrale par la somme
du produit des valeurs chantillonnes avec une priode constante unit.

121

4.

Analyse et comparaison des signaux

Dans le cas o l'on a susamment de points disposition, on peut calculer la somme


sur

points sans atteindre les limites des signaux enregistrs. On a alors :

N 1
1 X
x[n] y[n + k],
rxy [k] =
N n=0

kmin k kmax

(4.53)

Comme on l'a vu plus haut (qu. (4.39)), le calcul de l'intercorrlation peut galement se faire dans le domaine frquentiel qui, pour les signaux numriques, se fait en
utilisant la transformation de Fourier discrte (chapitre suivant). On obtient alors

Rxy [jk] =

1
X [jk] Y [jk]
N

Dans le cas o l'on souhaite utiliser toutes les valeurs disposition, le nombre
de points intervenant dans la somme diminue au fur et mesure que le dcalage
augmente. Pour viter de biaiser le rsultat de la corrlation, on la calcule alors
comme suit :

N |k|
X
1
x[n] y[n + k],
rxy [k] =
N |k| n=0

0k N 1

(4.54)

4.6. Exemples de corrlation


La fonction d'intercorrlation est trs souvent utilise pour dtecter la prsence d'un
message et mesurer un temps de propagation. Dans ce but, le signal mis est choisi
de manire ce que le pic de sa fonction d'autocorrlation soit trs bien dni. Les
signaux le plus souvent utilis sont les signaux chirp ( frquence variable au cours
du temps) et les squences binaires pseudo-alatoires.

4.6.1. Fonction de corrlation d'un signal chirp


Le signal chirp est un signal sinusodal dont la frquence (ou la pulsation) varie
linairement avec le temps. Il est dni comme suit

x(t) = A sin((t) + )
avec

(t) =

(t) dt

(t) = min +

max min
t
tmax

0 t tmax

Sa fonction d'autocorrlation possde un maximum trs bien dni correspondant


2
la puissance du signal qui vaut A /2 (gure 4.17).

122

4.6. Exemples de corrlation

Signal chirp
1

x(t)

0.5

0.5

0.1

0.2

0.3

0.4

0.5
temps

0.6

0.7

0.8

0.9

0.2

0.3

0.4

0.5

Autocorrlation dun signal chirp


0.5
0.4

rxx()

0.3
0.2
0.1
0
0.1
0.2
0.5

0.4

0.3

0.2

0.1

0
dcalage

0.1

Fig. 4.17.: Autocorrlation d'un signal chirp

Squence binaire pseudoalatoire


1

s[n]

0.5
0
0.5
1
0

50

100

150

200

250

temps n
Autocorrlation dune SBPA
1.2
1
0.8

ss

[m]

0.6
0.4
0.2
0
0.2

100

50

0
dcalage m

50

100

Fig. 4.18.: Autocorrlation d'une SBPA

123

4.

Analyse et comparaison des signaux

4.6.2. Fonction de corrlation d'une SBPA


Une squence binaire pseudo-alatoire (SBPA) est une succession de valeurs binaires
(gnralement

1)

dont la distribution temporelle possde un caractre alatoire

pendant une certaine dure et qui ensuite se rpte priodiquement. Sa fonction


2
d'autocorrlation possde galement un pic trs bien dni gal la puissance A
du signal (gure 4.18).

4.7. Deux applications de la corrlation


4.7.1. Le radar
Comme exemple illustratif, imaginons un systme radar avec lequel on dsire dtecter la prsence ou non d'un avion puis connatre la distance laquelle il se trouve.
Signal mis
1
0.5
0
0.5
1
0

100

200

300

400

500

600

700

800

900

1000

700

800

900

1000

Signal reu en prsence de lavion


0.1
0.05
0
0.05
0.1
0

100

200

300

400

500
Instants n

600

Fig. 4.19.: Signaux mis et reus par un radar

Le radar met un signal chirp

x(t)

et capte en retour l'cho

y(t)

renvoy par l'avion

(gure 4.19). S'il n'y a pas d'avion dans la zone couverte par le radar, le signal reu

y(t)

est constitu d'un bruit

est prsent, le signal

y(t)

n(t)

seulement. De plus, il est vident que si un avion

reu en retour consiste en une version attnue, retarde,

et fortement bruite du signal mis

x(t).

Ainsi, le signal reu peut tre dcrit par :

y(t) = A x(t td ) + n(t)


avec :

124

4.7. Deux applications de la corrlation






A = une fonction d'attnuation dpendant de la distance et de la forme de l'avion


td = le temps mis par l'onde pour faire son aller et retour
n(t) = le bruit additif capt par l'antenne et gnr par l'lectronique du radar.

Pratiquement, le signal reu est tellement perturb par le bruit qu'une analyse visuelle est incapable de dceler la prsence ou l'absence d'un signal rchi par l'avion
(gure 4.19).

Signal reu en labscence de lavion


0.1
0.05
0
0.05
0.1
0

100

200

300

400

500

600

700

800

900

1000

300

400

500

Intercorrlation en labscence de lavion

x 10

4
3
2
1
0
1
2
500

400

300

200

100

0
dcalage m

100

200

Fig. 4.20.: Intercorrlation entre un signal chirp et du bruit

Les gures 4.20 et 4.21 illustrent le principe de l'utilisation d'un signal chirp pour
dtecter un avion et mesurer sa distance. Considrons les deux situations suivantes :
1.

Absence d'un avion : Le signal reu y(t) est fortement attnu et perturb.
Seule une intercorrlation entre

x(t)

et

y(t)

permet de savoir si un avion est

prsent ou non. Dans ce dernier cas, aucun pic bien distinct n'apparat dans
le graphe (gure 4.20).
2.

Prsence d'un avion : Ici, l'intercorrlation fait apparatre un pic trs troit
se dgageant nettement au-dessus du bruit de fond (gure 4.21). On notera que
ce pic est lgrement dcal vers la droite par rapport la position centrale ;
ce dcalage correspond au temps d'aller et retour du signal mis. Une fois ce
temps dtermin, on peut calculer la distance de l'avion par rapport au radar.

4.7.2. La mesure d'un dbit


On prsente ici un dbitmtre industriel ralis par l'Institut d'Automatisation Industrielle de la heig-vd. Le principe, de mme que sa ralisation, en est trs simple.

125

4.

Analyse et comparaison des signaux

Signal reu en prsence de lavion


0.1
0.05
0
0.05
0.1
0

100

200

300

400

500

600

700

800

900

1000

300

400

500

Intercorrlation en prsence de lavion

x 10

4
3
2
1
0
1
2
500

400

300

200

100

0
Instants n

100

200

Fig. 4.21.: Intercorrlation entre un signal chirp et du bruit corrl

Une camra fournit rgulirement des images d'un ux de granuls (gure 4.22). En
eectuant la comparaison par intercorrlation de deux images successives, on obtient
un point lumineux se situant aux coordonnes du dplacement
la section

y(t).

Connaissant

du conduit, on peut calculer le dbit au cours du temps :

Q(t) = A

y(t)
t

La seule dicult de cette mesure rside dans le temps ncessaire pour calculer
l'intercorrlation en temps rel. En eet, si l'on imagine que l'on dispose d'images
de 100x400 pixels, on doit traiter 40'000 pixels par intercorrlation ; ce qui entraine
un nombre d'oprations valant environ

2
Nop ' Npxl
= 16 108
Mme avec un DSP trs performant (Tclock

' 10 ns),

il n'est pas possible de fournir

une information en moins d'une seconde. Par contre, en utilisant la FFT on peut
esprer fournir des rsultats dans le temps imparti car celle-ci demande beaucoup
moins d'oprations

Nop ' Npxl log2 (Npxl ) ' 40 103 15 = 6 105


L'algorithme de calcul est alors le suivant

1)
2)
3)
4)
5)
6)

126

acquisition de image1
acquisition de image2
FFT bidimensionnelle de image1 et image2 => IMG1 et IMG2
calcul de Rxy = conj(IMG1) * IMG2
FFT inverse pour obtenir rxy
recherche des coordonnes du maximum d'intensit

4.8. Description des signaux alatoires


Une fois ces calculs eectus, il reste encore susamment de temps pour calculer le
dbit actuel, lisser cette valeur, acher les images, etc (gure 4.22).

Fig. 4.22.: Interface du dbitmtre de granuls

4.8. Description des signaux alatoires


Par dnition, les signaux alatoires ne peuvent pas tre dcrits analytiquement. On
peut cependant, comme on l'a vu plus haut, tenter de les classer dans une des trois
catgories types qui sont :

127

4.

Analyse et comparaison des signaux

 les bruits large bande dans lesquels toutes les frquences sont prsentes amplitudes gales (gure 4.23a) ;
 les bruits bande limite dans lesquels les composantes hautes frquences sont
nulles (gure 4.23b) ;
 les bruits colors dans lesquels toutes les frquences sont prsentes mais avec des
amplitudes variables (gure 4.23c).

Bruits: (a) large bande (b) bande limite (c) color


1

(a)

0.5
0
0.5
1
5
1

0
t

(b)

0.5
0
0.5
1
5
1

(c)

0.5
0
0.5
1
5

Fig. 4.23.: Trois signaux alatoires

Comme aucune description analytique n'est possible pour les signaux alatoires, on
tente d'en extraire des proprits statistiques temporelles en utilisant leurs fonctions
d'autocorrlation (fac) illustres la gure 4.24. On en dduit que la fac du premier
signal est extrment troite ; on la modlise par une impulsion de Dirac. La deuxime
fac rappelle une fonction en sinus cardinal. Enn, la troisime peut tre modlise
par une exponentielle dcroissante symtrique.
On peut montrer que la transforme de Fourier de la fonction d'autocorrlation
fournit la densit spectrale de puissance

Rxx (jf ) =

rxx ( ) exp(j2f ) d

2
V sec

/Hz

L'observation de la densit spectrale de puissance (gure 4.25) des trois signaux


permet de tirer quelques proprits et de dnir des modles reprsentant aussi bien
que possible chacune des trois densits spectrales de puissance.

128

4.8. Description des signaux alatoires

(a)

0.5
0
0.5
5
1

(b)

0.5
0
0.5
5
1

(c)

0.5
0
0.5
5

Fig. 4.24.: Fonctions d'autocorrlation des trois bruits types

(a)

0.5

0
5
1

0
f

(b)

0.5

0
5
1

(c)

0.5

0
5

Fig. 4.25.: Densits spectrales de puissance des trois bruits types

129

4.

Analyse et comparaison des signaux

(a)

0.5

0
5
1

0
f

(b)

0.5

0
5
1

(c)

0.5

0
5

Fig. 4.26.: Trois modles de densits spectrales de puissance

4.8.1. Le bruit blanc densit spectrale constante et bande


innie

Il contient toutes les frquences de

et sa densit spectrale de puissance

est constante. Il est alors reprsent par

Rxx (f ) = A2

< f < +

dont la fac est une impulsion de Dirac :

rxx ( ) = A2 ( )

2
V /Hz

(4.55)

(4.56)

Le thorme de Parseval nous dit alors que sa puissance est innie. Est-ce possible ?
Comme la rponse est ngative, on prfre travailler avec un modle moins simple,
mais plus raliste ; c'est le bruit densit spectrale constante et bande limite

4.8.2. Le bruit densit spectrale constante et bande limite


+fmax . Sa puissance nie est souvent
2
dsigne par la variance statistique x qui n'est autre que le carr de la valeur ecace
2
Xef
f du signal. Ce bruit est alors reprsent par
Il contient toutes les frquences de

Rxx (f ) =

130

x2
2 fmax

si
sinon

fmax

fmax < f < +fmax

/Hz

(4.57)

4.9. Systmes linaires et densits spectrales


dont la fac vaut

rxx ( ) = x2

sin(2 fmax )
2 fmax

< < +

4.8.3. Le bruit color puissance nie

(4.58)

Il contient toutes les frquences de +. Mais son spectre diminuant avec la


x2 est nie. Un modle souvent utilis est le suivant :

frquence, sa puissance

Rxx (f ) =

x2
fc

1
 2
f
fc

1+

dont la fac vaut

rxx ( ) = x2 ea | |

< < +

avec

a = 2 fc

< f < +

/Hz

(4.59)

(4.60)

[1/sec]

(4.61)

4.9. Systmes linaires et densits spectrales


Il est extrment frquent que l'on doive tudier des signaux relis entre-eux par le
passage au travers d'un systme linaire, par exemple un ltre. Celui-ci tant dcrit
par sa rponse impulsionnelle
d'entre

h(t)

ou sa rponse frquentielle

H(jf ),

les signaux

x(t) et de sortie y(t) sont alors relis entre eux par les relations bien connues :
Z +
y(t) =
(4.62)
h() x(t ) d

Y (jf ) = H(jf ) X(jf )

X(jf )

et

Y (jf ) sont

(4.63)

les densits spectrales d'amplitude des signaux

x(t)

et

y(t).

Sachant que les densits spectrales de puissance (ou d'nergie) valent :

Rxx (f ) = X(jf ) X(jf ) = |X(jf )|2


2

Ryy (f ) = Y (jf ) Y (jf ) = |Y (jf )|

(4.64)
(4.65)

on montre aisment que les densits spectrales de puissance sont relies entre elles
par la relation suivante :

Ryy (f ) = |H(jf )|2 Rxx (f )


x(t)

On peut galement montrer que si

et

y(t)

sont relis entre eux par

(4.66)

h(t),

le

produit de convolution s'applique aux fonctions de corrlation et l'on a :

rxy ( ) =

h() rxx ( ) d

Rxy (f ) = H(jf ) Rxx(f )

(4.67)
(4.68)

Le tableau 4.2 runit les relations existant entre les signaux, les fonctions de corrlation et les densits spectrales.

131

4.

Analyse et comparaison des signaux

Domaine temporel

Domaine frquentiel

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

X(jf )
H(jf )
Y (jf )
Y (jf ) = H(jf ) X(jf )

rxx ( )
h( )
rxy ( )
rxy ( ) = h( ) rxx ( )

Rxx (f )
H(jf )
Rxy (jf )
Rxy (jf ) = H(jf ) Rxx (f )

Signaux
entre
systme
sortie
relation

Corrlation
entre
systme
sortie
relation

Densits spectrales

Ryy (f ) = |H(jf )|2Rxx (f )

Tab. 4.2.: Relations temporelles et frquentielles

4.10. nergie et puissance des signaux


Suivant les caractristiques des signaux, on calculera leur puissance P ou leur nergie
W. Ce calcul peut, bien entendu, se faire dans le domaine temporel :

1
P = lim
T T
W = lim

+T /2

x2 (t)dt

W =

x2 (t)dt

T /2

(4.69)

2
V sec

(4.70)

+
2

R(f ) df

(4.71)

T /2

ou dans celui des frquences :

P =

+T /2

S(f ) df

/Hz

(4.72)

R(f ) [V2 /Hz] est la densit spectrale de puissance et S(f ) [V2 /Hz2 ] est la densit

spectrale d'nergie.

4.10.1. Domaine temporel


Reprenons les signaux de la gure 4.11 et calculons leur puissance ou leur nergie
dans le domaine temporel.

132

4.10. nergie et puissance des signaux

Signal temporaire
Soit

x1 (t) = A exp(at) (t) ;

sa puissance moyenne est nulle et son nergie nie :

1
P1 = lim
T T
W1 = lim

+T /2
T /2

+T /2

x21 (t) dt =

T /2

x21 (t) dt = 0



A2
A2
=
< V2 /Hz
2a
2

(4.73)

Signal priodique permanent


Soit

x2 (t) = A signe(sin(2 f0 t)) ; sa puissance est nie et son nergie


Z
 
1 +T /2 2
x2 (t) dt = A2 < V2
P2 = lim
T T T /2
W2 = lim

inni :

(4.74)

+T /2

T /2

x22 (t) dt

Signal alatoire permanent


Un signal alatoire et permanent possde une puissance nie et une nergie innie :

1
P3 = lim
T T

+T /2
T /2

W3 = lim

2
x23 (t) dt = X3,ef
f <

+T /2

T /2

(4.75)

x23 (t) dt

4.10.2. Domaine frquentiel


Reprenant les signaux de la gure 4.11 et connaissant leur densit spectrale de
puissance ou d'nergie, on peut calculer leur puissance ou nergie dans le domaine
frquentiel.

Signal temporaire
Son nergie se calcule aprs dnition de sa densit spectrale d'nergie

2




 2
A2
A
2


=
S1 (f ) = |X1 (jf )| =
V /Hz
a + j2f
a2 + (2f )2
2

W1 =

S1 (f ) df =


A2  2
A2
V /Hz
df
=
a2 + (2f )2
2a

S1 (f )

(4.76)

(4.77)

133

4.

Analyse et comparaison des signaux

Signal priodique permanent


Sa puissance se calcule aprs dnition de sa densit spectrale de puissance

R2 (f ).

Comme le signal est priodique, celle-ci est discrte et s'obtient partir des raies
spectrales

X(jk)

+
X

2

+
X
 2
t sin(f t)


A
(f

kf
)
R2 (f ) =
|X(jk)| =
V /Hz
0

T
f t

=k6=0
P2 =



+
X
t sin(kf0 t) 2


= A2 V2
A
R2 (f ) df =
ef
f
T
kf0 t
=k6=0

(4.78)

(4.79)

Signal alatoire permanent

Grce aux modles que l'on s'est donn pour dcrire les signaux alatoires (section

x3 (t)

4.4.3), on peut calculer la puissance du signal

P3 =

2
R3 (f ) df = X3,ef
f

2
Vef f

(4.80)

Des graphes illustrants ces trois bruits ainsi que les fonctions d'autocorrlation et
les densits spectrales de puissance correspondantes sont prsents dans les gures
4.23 4.26.

Remarque

Il est intressant de relever que, pour les composants semiconducteurs,

la donne de la densit spectrale de puissance

quivalente de bruit

R(f )

est remplace par une

tension

qui n'est autre que la racine carre de la densit spectrale de

puissance :

en (f )

R(f )

Hz

(4.81)

Par exemple, les caractristiques de l'amplicateur oprationnel LF411 montrent


que, dans les basses frquences, le spectre du bruit dcrot raison de 10 [dB] par
dcade (icker noise = bruit de grenaille) et qu'il reste pratiquement constant au
del de 300 [Hz] et qu'il vaut alors :



nV

en = 30
Hz

f > 300 [Hz]

4.11. Signaux, spectres et statistique


La page suivante, tire de l'ouvrage de F. de Coulon [2], illustre les proprits temporelles, spectrales et statistiques de quelques signaux. Comme on l'a dj dit plus
haut, ces descriptions ne sont que des points de vue dirents d'une mme ralit :
le signal temporel

x(t).

Ces points de vue sont complmentaires et c'est le but du

traitement des signaux de les relier entre eux et d'en tirer ecacement le maximum
d'information.

134

4.11. Signaux, spectres et statistique

Fig. 4.27.: Descriptions temporelle, spectrale et statistique de signaux typiques [2]

135

4.

Analyse et comparaison des signaux

4.12. Quelques exemples


Exemple 1 :
On applique une exponentielle dcroissante

u1 (t) = U0 exp(at)(t) un ltre passe-

bande idal.
1. Dessinez la rponse frquentielle du ltre.
2. Esquissez les densits spectrales d'amplitude
3. Que valent les densits spectrales d'nergie
4. Calculez les nergies
5. A.N. :
Solution :

136

U0 = 10 [V],

W1

et

W2

|U1 (jf )|

S1 (f )

et

et

|U2 (jf )|.

S2 (f ) ?

des signaux d'entre et de sortie.

a = 240 000 [1/sec],

f1 = 4 [kHz],

f2 = 6 [kHz]

4.12. Quelques exemples

Exemple 2 :
Un oprateur vous informe qu'il a mesur la sortie d'un amplicateur un bruit
large bande dont la valeur ecace vaut
1. Quelle est la puissance

P1

U1,ef f = 0.1 [Vef f ].

de ce bruit ?

2. L'information apporte par l'oprateur est-elle signicative et susante ? Aprs


discussion, il prcise que cette mesure a t eectue avec un voltmtre vraie
valeur ecace dont la bande passante est de 100kHz.
3. Esquissez puis calculez la densit spectrale de puissance

R1 (f )

de ce bruit.

4. La sortie de cet amplicateur est branche sur un ltre passe-bas idal dont
la frquence de coupure est xe 1 kHz. Esquissez la densit spectrale de
puissance

R2 (f )

du bruit aprs le ltre.

5. Quelle valeur ecace

U2,ef f

mesurerez-vous aprs le ltre ?

Solution :

137

4.

Analyse et comparaison des signaux

Exemple 3 :
la sortie d'un amplicateur dont la bande passante est de

0.1 [Vef f ]. On ltre


R = 1.6 [k] et C = 100 [nF].

un bruit de

100 [kHz],

on mesure

ce bruit avec un ltre RC passe-bas ralis avec

1. Calculez la densit spectrale de puissance

R1 (f )

du bruit de sortie de l'ampli-

cateur.
2. Calculez la frquence de coupure du ltre passe-bas.
3. Esquissez sur un mme diagramme les densits spectrales de puissance
et

R2 (f )

prsentes l'entre et la sortie du ltre RC.

4. Quelle sera la valeur ecace de la tension la sortie du ltre RC ?


Solution :

138

R1 (f )

4.12. Quelques exemples

Exemple 4 :
On applique une impulsion de tension d'amplitude

et de largeur

passe-bande LC-R caractris par sa frquence de rsonance


qualit

Q0 .

f0

un ltre

et son facteur de

Admettant que la largeur de l'impulsion est beaucoup plus petite que

les temps caractristiques du ltre :


1. Esquissez
2. Calculez

u1 (t)

et

U1 (jf )

u2 (t)

et

ainsi que

U2 (jf ).

|U1 (jf )|

et

|U2 (jf )|.

3. Calculez l'nergie

W1

du signal d'entre.

4. Calculez l'nergie

W2

du signal de sortie du ltre.

5. A.N. :

E = 10 [V],

t = 10 [sec],

f0 = 1 [kHz],

Q0 = 10.

6. Proposez des valeurs pour les composants R, L et C du ltre.


Solution :

139

4.

Analyse et comparaison des signaux

4.13. Table illustre de quelques transformes de


Fourier [2]

140

4.13. Table illustre de quelques transformes de Fourier [2]

141

4.

Analyse et comparaison des signaux

142

4.14. Exercices

4.14. Exercices
TF 10

m(t) = A cos(2f1 t) modul en amplitude par une porteuse


p(t) = sin(2f0 t) :

Soit un message

sinusodale

1. calculez la TF du signal modul

x(t) = m(t) p(t) = A sin(2f0 t) cos(2f1 t) ;

2. esquissez le spectre du signal modul


3. idem 2) lorsque le signal

m(t)

|X(jf )| si f1 = 10 [kHz] et f0 = 800 [kHz] ;

possde un spectre continu

et non-nul entre 2 [kHz] et 10 [kHz].

TF 11

|M(jf )|triangulaire

Soit le signal :

u(t) =

1. esquissez

3. esquissez

u(t) ;

2. calculez sa TF

U0 cos(2f0 t)

si |t| t0
si |t| > t0

U(jf ) ;

|U(jf )|

pour

U0 = 1 [V],

T = 1/f0 = 1 [msec],

t0 = 10 [msec].

Ce signal correspond l'observation d'une fonction sinusodale pendant une dure


nie

2t0 .

On remarquera, une fois le calcul eectu, que l'analyse spectrale d'une

sinusode pendant une dure nie revient remplacer les raies spectrales situes en

f = f0

par la fonction sinus cardinal.

TF 12

Soit la fonction :

u(t) =

1. esquissez

3. esquissez

1
2

[1 cos(2f0 t)]
0

u(t) ;

2. calculez sa TF

si |t|

T
2

si |t| >

T
2

U(jf ) ;

U(jf )

et la TF d'une impulsion rectangulaire de mme dure ;

4. observez les dirences.

TF 13
forme

E(jf )
s(t).

Connaissant la transforme

S(jf )

de la fonction signe

d'un saut unit

(t),

calculez la trans-

143

4.

Analyse et comparaison des signaux

TF 14

Montrez qu'un produit simple dans l'espace des frquences correspond

un produit de convolution dans l'espace temps :

Y (jf ) = X(jf ) H(jf )

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

x()h(t )d

Pour dmontrer ce rsultat important et bien connu, vous pouvez d'abord exprimer
la TFI de

Y (jf )

y(t) =

Y (jf )exp(+j2f t)df =

H(jf )X(jf )exp(+j2f t)df

puis y introduire la TF de

x(t)

X(jf ) =

x()exp(j2f )d

TF 15

Considrant la rponse d'un ltre

H(jf ) =

1. esquissez

H(jf ) ;

h(t)

dont le spectre est le suivant :

si |f | 100 [Hz]
sinon

h(t) ;

2. calculez, puis esquissez

3. ce signal correspond la rponse impulsionnelle du ltre dcrit par

H(jf ); ce

ltre est-il ralisable ? pourquoi ?

TF 16

Considrant un signal u(t) dont le spectre est le suivant :

U(jf ) =

1. esquissez

U(jf ) ;

2. calculez puis esquissez

si 100 [Hz] |f | 200 [Hz]


sinon

u(t) ;

3. que vaut sa puissance ?

TF 17

Utilisez la transformation de Fourier pour trouver le courant circulant dans

un circuit RC srie sachant que le signal appliqu est un saut de tension d'amplitude E.

144

4.14. Exercices

TF 18

On applique une fonction signe

u1 (t)

d'amplitude E un ltre RC passe-

bas.

1. utilisez la transformation de Fourier pour trouver la tension de sortie ;


2. esquissez

TF 19

u1 (t)

et

u2 (t).

On applique une exponentielle symtrique

passe-bas de constante de temps

u1 (t) = U0 exp(a |t|) un ltre

1. avant de vous lancer dans les calculs, esquissez


tre

u1 (t)

et imaginez ce que peut

u2 (t) ;

2. calculez la tension de sortie du ltre.

La marche suivre est la mme que celle utilise avec la transformation de Laplace : dcomposition en somme de fractions simples puis recherche des coecients
par identication avec des transformes connues.

TF 20

On applique une exponentielle dcroissante

ltre passe-bas idal de frquence de coupure

1. exprimez

U1 (jf )

2. en admettant

et

U2 (jf ) ;

U0 = 10 [V ]

fc .

u1 (t) = U0 exp(at) (t)

un

esquissez leur module ;

et

a = 1000 [1/sec],

et

E2

= 1 [msec]

un

calculez les nergies

E1

des signaux d'entre et de sortie lorsque :


a
(b) fc =
.
(a) fc = 1 [kHz] ;
2

TF 21
signal

On applique un ltre passe-bas de constante de temps

u1(t)

dont le spectre est dni par :

U1 (jf ) =

1 [V/Hz]

si 100 [Hz] <= |f | <= 300 [Hz]

sinon
H(jf )

1. exprimez la fonction de transfert


ractristique
2. esquissez

du ltre ; que vaut sa frquence ca-

fc ?

U1 (jf ), H(jf )

3. quelles sont les nergies


4. comment voluera

E2

et

E1

U2 (jf )
et

E2

pour

500 [Hz] < f < +500 [Hz] ;

des signaux d'entre et de sortie ?

si la constante de temps

5. comment calculeriez-vous

u2 (t) ?

diminue ?

Ne faites pas les calculs, mais prcisez point

par point votre dmarche ; essayez d'entrevoir les dicults de ce calcul.

145

4.

Analyse et comparaison des signaux

TF 22

= RC = 10 [msec]
a = 1000 [1/sec].

On applique un ltre passe-bas de constante de temps

une tension exponentielle


1. esquissez

u1 (t)

et

u1 (t) = 10 exp(at)(t)

avec

u2 (t) ;
1

2. calculez les nergies contenues dans les signaux d'entre et de sortie.

TF 23

On applique une impulsion de Dirac

(t)

un ltre passe-bande dont la

fonction de transfert vaut :

D0 jf
f0

H(jf ) =

+
1 + D0 jf
f0

 2
jf
f0

D0

1
Q0

1. esquissez les spectres des signaux d'entre et de sortie ;


2. exprimez l'nergie du signal de sortie contenue dans la bande passante
sachant que :

1
1

= 0.1
= 1 [kHz] D0
Q0
2 LC


q
f
=
1 + 1 + 4Q20
f = f0 D0
2

f0 =
fi,s

TF 24

Considrant le spectre X(jf ) de la gure 4.28 constitu d'un sinus cardinal


3
d'amplitude X(0) = 2 10
et de 2 impulsions de Dirac de surface 1/2, trouvez puis

esquissez le signal x(t) correspondant.

TF 25

A partir du signal

Corr 1

Considrant le signal

on demande :
1 Si

x(t) = exp(at)(t),

trouvez le spectre de

y(t) = sgn(t).

x(t) dni comme suit :

A si t < t < 0

t=0
0 si
x(t) =

+A si 0 < t < t

0 si
|t| t

le calcul de l'intgrale dnie ncessaire pour obtenir l'nergie vous parat trop dicile, essayez
la dmarche suivante :
a) esquissez la fonction intgrer ;
b) estimez des limites raisonnables pour la valeur de l'nergie ;
c) l'aide d'un petit programme (une douzaine de lignes), intgrez numriquement la densit
spectrale d'nergie. Si le nombre de pas est susant, le rsultat obtenu sera tout fait
satisfaisant.

146

4.14. Exercices
4

20

x 10

15

1/2

1/2

X(jf)

10

5
4

1
0
1
frquence [kHz]

Fig. 4.28.: Exercice TF24

1. esquissez

x(t) ;

2. calculez sa fonction d'autocorrlation pour les valeurs particulires suivantes

= 0,

t,

3. esquissez la

Corr 2




2t ;
fonction rxx ( ),

< < +.

Considrant les 3 signaux suivants :

x(t) = une exponentielle dcroissante d'amplitude A et de constante de temps 1


y(t) = une impulsion rectangulaire centre en t = 0, d'amplitude A et de largeur
t
z(t) = une impulsion triangulaire centre en t = 0, d'amplitude A et de base 2t

on demande :
1. esquissez ces 3 signaux ;
2. calculez des valeurs particulires de leur fonction d'autocorrlation ;
3. calculez leur fonction d'autocorrlation pour

compris entre + et 

4. esquissez ces fonctions.

Remarque

Le calcul de la troisime fonction n'est pas simple ; sans entrer dans le

dtail des calculs, imaginez comment vous devriez vous y prendre pour le faire.

Corr 3

Calculez la fonction d'intercorrlation des signaux

x(t) et h(t) de

l'exercice

Corr 3. Avant de vous lancer dans les calculs, imaginez o se situera le maximum de
la fonction. Esquissez le rsultat de l'intercorrlation.

Corr 4
h1 (t)

On souhaite connatre la fonction d'intercorrlation des signaux

h2 (t)

et

de l'exercice Corr 4 :

r21 ( ) =

h2 (t) h1 (t + ) dt

Pour cela :

147

4.

Analyse et comparaison des signaux

x(t)

h(t)

1
t

t
0

2T

Fig. 4.29.: Exercice Corr 3

1. imaginez tout d'abord l'endroit o se situera le maximum de la c ;


2. montrez que, pour les points particuliers suivants =


2 t
on a, respectivement, h21 ( ) = 0, A
, A2 t
,0 ;
3
6

{2t, t, 0, +t},

3. pourquoi, comme il est prcis dans la remarque ci-dessous, le calcul est-il plus
simple lorsque

est compris entre 0 et

t ?

4. que pensez-vous des rsultats graphiques obtenus avec Matlab (gure 4.30) ?

Ex.CR4

0.5

h (t)

0
5

0
temps [t]

0.5

h (t)

0
5

0.2

21

r ()

0.4

0
5

Fig. 4.30.: Exercice Corr4

Remarque

Pour donner une ide de ce que reprsente l'approche analytique, voici

le calcul de la partie la plus simple correspondant au dcalage avanc de


avec

compris entre 0 et

t.

Comme l'on a :

r21 ( ) =

148

h2 (t) h1 (t + ) dt

h1 (t + )

4.14. Exercices
il faut commencer par dcrire les 2 fonctions suivantes :



t+
h1 (t + ) = A 1
t

A
t
h2 (t) =
t
valables pour

0 < t < t,

respectivement,

< t < t .

Puis, tenant compte des parties nulles, il vient :

r21 ( ) =

h2 (t) h1 (t + ) dt


Z t
A
t+
dt
tA 1
t
t
0


Z
A2 t
t
t2
dt

t
t 0
t t

 t
t3
t2
A2 t2

t 2
3t 2t 0


 (t )3
A2 (t )2 
1

t
2
t
3t
2
(t + )
(t )
A2
6 t2
0

=
=
=
=
=

Ce qui donne en particulier les 2 valeurs suivantes :

t
6

r21 ( = 0) = A2

r21 ( = t) = 0

Corr 5
Considrant deux signaux numriques

n
x(n)
y(n)

x(n)

et

y(n)

dnis comme suit :

10

11

12

13

14

0
0

calculez et reprsentez la fonction d'intercorrlation

rxy (m) =

+
X

x(n) y(n + m)

n=

149

4.

Analyse et comparaison des signaux

x(n)

4
2
0
0

10

12

14

16

18

20

10

12

14

16

18

20

0
10

0
n, m

10

y(n)

4
2
0

20

xy

r (m)

30

10

Fig. 4.31.: Exercice Corr5

150

Bibliographie
[1] B.P. Lathy,

Linear Systems and Signals, Berkeley-Cambridge Press, Carmichael

CA, 1992
[2] F. de Coulon,

Thorie et traitement des signaux,

Presses polytechniques ro-

mandes, Lausanne, 1984


[3] M. Alonso, E.J. Finn,

Physique gnrale : champs et ondes,

Editions pdago-

giques, Montral, 1970

151

Bibliographie

152

5. lments d'analyse spectrale


numrique
5.1. Passage de la TF la TFD
L'chantillonnage des signaux analogiques est tudie en dtail dans la premire partie du chapitre suivant. Pour ce qui suit, il sut de savoir que tout signal analogique

x(t) est acquis un rythme rgulier dict par la priode d'chantillonnage Te et qu'il
est stock en mmoire d'ordinateur. Ces signaux x[n] sont des signaux numriques
obtenus l'aide d'un convertisseur analogique-numrique (gure 5.1) et tels que

x[n] = x (t)|t=n Te
x(t)

(5.1)

x[n] = x(t=nTe)
Te

x(t) A

Signal analogique

x[n]

Signal chantillonn

N
t

Fig. 5.1.: Acquisition numrique d'un signal analogique

Le passage de la transformation de Fourier (TF) des signaux analogiques


transformation de Fourier discrte (TFD) des signaux numriss

x[n]

x(t)

la

fait intervenir

trois oprations :
 l'chantillonnage du signal analogique ;
 la limitation de la dure de l'enregistrement de ce signal ;
 la discrtisation de la frquence pour l'analyse spectrale numrique.
Ces trois oprations, apparemment anodines, ont des consquences dont il est important d'valuer l'tendue. Pour mmoire, on rappelle trois proprits de la transformation de Fourier dont on aura besoin par la suite :
 au produit simple dans un espace correspond un produit de convolution dans
l'autre

x(t) y(t) X(jf ) Y (jf )


x(t) y(t) X(jf ) Y (jf )

(5.2)
(5.3)

153

5.

lments d'analyse spectrale numrique

 la TF d'un peigne d'impulsions de Dirac est galement un peigne de Dirac

1
f (f )
Te e
d'amplitude A

Te (t)
 la TF d'une impulsion rectangulaire

(5.4)
et de largeur

est un sinus

cardinal

A rect(t/t) A t

sin(f t)
= A t sinc(f t)
f t

(5.5)

An de concrtiser au mieux les relations existant entre les espaces temps et frquence, on considrera par la suite que les signaux tudis sont fournis sous la forme
d'une tension lectrique que l'on chantillonne rgulirement pendant une dure nie
avant de calculer numriquement son contenu spectral. Ainsi, pour chaque quation,
on pourra prciser les units des rsultats obtenus.

5.1.1. Signaux continus non-priodiques


Un signal analogique

x(t)

et sa densit spectrale

relations

X(jf ) =
x(t) =

X(jf )

sont relis entre eux par les

x(t) exp(j2f t)dt

Z +

[V

X(jf ) exp(+j2f t) df

sec]

[V]

(5.6)

(5.7)

Ces transformations directe et inverse montrent l'vidence, la parfaite symtrie


qui relie les espaces temps et frquence (gure 5.2.a). cette symtrie correspond
la proprit suivante :

un signal temporel continu non priodique correspond un


spectre continu non priodique.

5.1.2. Signaux discrets de dure innie


x(t) (gure 5.2.a) est chantillonn tous les
Te . Cette opration d'chantillonnage peut
tre reprsente mathmatiquement par la multiplication du signal x(t) avec un
peigne d'impulsions de Dirac distantes de Te (gure 5.2.b)
On considre ici que le signal continu

multiples de la priode d'chantillonnage

x (t = nTe ) = x(t) Te (t)

(5.8)

x (t = nTe )
x[n] = x(t = nTe ).

On obtient ainsi une suite d'impulsions de Dirac pondres par les valeurs
(gure 5.2.c) ; celles-ci reprsentent alors le signal discret
Dans l'espace frquentiel, le peigne de Dirac temporel
Dirac priodique

fe

(f ) T F {Te (t)} =

154

Te (t)

devient un peigne de

(gure 5.2.b)

1
f (f )
Te e

(5.9)

5.1. Passage de la TF la TFD

/ Te

Fig. 5.2.: Passage de la TF la TFD [1]

155

5.

lments d'analyse spectrale numrique

Comme le produit simple dans l'espace temps conduit un produit de convolution


entre les spectres X(jf ) et

(f )

(gure 5.2.c), on constate que :

un signal chantillonn ou discret correspond un spectre continu


et priodique fe .
Le calcul du spectre

Xe (jf ) d'un signal discret x[n] se fait partir de la dnition de

la transformation de Fourier des signaux continus (quation 5.6). On obtient alors

+
X

Xe (jf ) = Te

x[n] exp(j2f nTe )

[V sec]

(5.10)

n=
Partant de ce spectre

x[n] =

Xe (jf ), on peut bien entendu revenir au signal temporel x[n] :

+fe /2

Xe (jf ) exp(+j2f nTe ) df

[V],

fe /2

< n < +

(5.11)

5.1.3. Signaux discrets de dure nie


Dans le cas o l'on dsire traiter numriquement un signal, le nombre de valeurs

x[n]

ne peut pas tre inniment grand. On est donc contraint ne prendre en compte
qu'une partie du signal original. Mathmatiquement, cette opration de troncation
revient multiplier le signal

x(t)

par une fentre rectangulaire

w(t)

de largeur

(gure 5.2.d).
cette multiplication dans l'espace temps correspond un produit de convolution
dans l'espace des frquences entre le spectre du signal
cardinal de la fentre

w(t).

X(jf )

et le spectre en sinus

Il en rsulte une dformation du spectre original cause

par les ondulations du sinus cardinal (gure 5.2.e).

x(t) est enregistr pendant une dure nie T en chantillonnant N valeurs


du signal x(t). On a donc T = N Te . La suite de valeurs discrtes xN [n] ainsi
obtenue sera numre avec le compteur temporel n compris entre 0 et N 1 et le
Le signal

spectre du signal tronqu se calcule alors comme suit

Xe,N (jf ) = Te

N
1
X

xN [n] exp(j2f nTe )

[V sec]

n=0

Il est bien clair que les


inverse de

valeurs temporelles peuvent s'obtenir par transformation

Xe,N (jf )

xN [n] =

+fe /2

fe /2

156

Xe,N (jf ) exp(+j2f nTe )df

[V],

0 nN 1

5.1. Passage de la TF la TFD

Remarque
part, et

xN [n] et x[n] d'une


Xe (jf ) d'autre part, car le contexte permettra toujours de
N de la suite considre est nie ou non ; les 2 relations ci-

Par la suite, aucune distinction ne sera faite entre

Xe,N (jf )

et

savoir si la longueur

dessus s'criront alors

Xe (jf ) = Te

N
1
X

x[n] exp(j2f nTe )

[V sec]

(5.12)

n=0

x[n] =

+fe /2

Xe (jf ) exp(+j2f nTe )df

[V]

(5.13)

fe /2

5.1.4. Discrtisation de la frquence


An de pouvoir calculer numriquement un spectre, il est videmment ncessaire
de discrtiser la frquence. En divisant le domaine frquentiel en
crment frquentiel vaut

f = fe /N

intervalles, l'in-

et les frquences analyses, au nombre de

N,

sont :

f = k f = k fe /N

(5.14)

Cette discrtisation de la frquence n'est rien d'autre qu'un chantillonnage dans le


domaine spectral et les rsultats des oprations d'chantillonnage et de multiplication vues plus haut pour l'espace temps s'appliquent galement dans l'espace des
frquences (gure 5.2.f et 5.2.g) et conduisent la proprit suivante :

la discrtisation du domaine spectral correspond un signal


temporel priodique.
Tout se passe comme si la dure d'acquisition

correspondait une priode du

signal temporel

x[n].

Le spectre considr prsent est donc un spectre discret que

X[jk]

avec

0 k N 1.

l'on crit

Tenant compte des relations temps-frquence,

l'argument du phaseur s'crit

j2 f nTe = j2 kf nTe = j2 k
Le spectre

X[jk]

et le signal temporel

N
1
X

x[n]



j2kn
X[jk] = Te
x[n] exp
N
n=0

kn
fe
nTe = j2
N
N

(5.15)

se calculent alors comme suit

[V sec]



N 1
1 X
j2kn
x[n] =
X[jk] exp +
NTe k=0
N

[V]

0k N 1

0nN 1

(5.16)

(5.17)

157

5.

lments d'analyse spectrale numrique

5.2. Relations temps-frquence


Comme les domaines temporel et frquentiel sont discrtiss avec le mme nombre
de points
1. l'

N,

on peut relever que

espace du temps est caractris par la dure de l'enregistrement T

l'incrment temporel

tel que

t Te =

2. l'

et par

(qui n'est autre que la priode d'chantillonnage

T
N

(5.18)

espace des frquences est caractris par l'incrment frquentiel f

frquence maximum

fmax

Te )

et la

qui n'est autre que la frquence d'chantillonnage

f =

fmax
fe
=
N
N

Ces deux relations ayant en commun la priode d'chantillonnage

fe

(5.19)

Te

et son inverse

la frquence d'chantillonnage, on a

t Te

1
fe

T
1
=
N
N f

(5.20)

On en dduit donc trois relations importantes liant les domaines temporel et frquentiel

1
T
1
1

fmax fe =
t
Te
1
t f =
N
f =

De plus, on dnit la frquence de Nyquist


d'analyse spectrale

fN =

fN

fe
2

(5.21)
(5.22)
(5.23)

comme tant la limite du domaine

(5.24)

Les relations que nous venons de voir peuvent se traduire par les proprits suivantes.
1.
2.

3.

4.

L'incrment frquentiel f est l'inverse de la dure temporelle T .


La priode spectrale fmax = fe est l'inverse de l'incrment temporel t.
Le domaine d'analyse spectrale est limit par la frquence de Nyquist fe /2.
Pour un nombre donn de points N , il n'est pas possible d'avoir
simultanment une trs bonne dnition temporelle (t petit) et une
trs bonne dnition frquentielle (f petit).

Une illustration des relations existant entre les domaines temporel et frquentiel est
donne dans la gure 5.3.

158

5.2. Relations temps-frquence

x(t), x[n]

t=Te=1/fe
t = nt
0

N-1

T = Nt

Nt
0

t = T e

tmax = T

fmax = fe
Nf

fe = 1/ T e = N f

|Xe(jf)|, |X[jk]|
f

fe /2
0

fe

f = kf
k

N-1
1/2

f / fe

Fig. 5.3.: Relations temps  frquence

159

5.

lments d'analyse spectrale numrique

5.2.1. Pulsation normalise


Dans ce qui prcde, on a constamment vu apparatre un phaseur faisant intervenir
l'argument

j2 n f Te

exp (j2 n f Te )

Il est donc naturel de chercher allger l'criture en dnissant la pulsation num-

rique ou normalise

qui s'exprime en radians (gure 5.3) :

2 f Te = 2
Comme le spectre de base est compris entre
lise prendra ses valeurs entre

[rad]

fe /2,

(5.25)

on voit que la pulsation norma-

et que les transformations de Fourier s'crivent :

+
X

Xe (j) = Te

f
fe

x[n] exp(jn)

[V sec]

(5.26)

n=

1
x[n] =
2

Xe (j) exp(+jn)d

[V]

(5.27)

5.3. Transformation de Fourier discrte


5.3.1. Dnition de la TFD
En observant les relations (5.16) et (5.17), on constate que, mis part le changement
de signe du phaseur et les coecients prcdant la somme, les calculs du spectre

X[jk]

ou du signal

x[n]

se font de la mme manire. Ceci conduit dnir les

algorithmes des transformations de Fourier discrtes directe ou inverse comme suit :

N
1
X


j2kn
XD [jk]
x[n] exp
N
n=0


N
1
X
j2kn
XD [jk] exp +
xD [n]
N
k=0


[V]

[V]

0k N 1
0 nN 1

(5.28)

(5.29)

Comme ces deux dnitions ne dirent que par le signe de l'exponentielle qui pondre les signaux

x[n]

et

XD [jk],

on voit qu'un mme algorithme peut tre utilis

pour les transformations de Fourier directe et inverse. Alors les rsultats de la TFD
ainsi dnie sont relis aux spectres et signaux rels par les relations suivantes :

X[jk] = Te XD [jk]
x[n] =

xD [n]
N

(5.30)
(5.31)

La gure 5.4 illustre le passage du domaine analogique au domaine numrique o


l'on a, d'un ct, des signaux et des spectres continus alors que de l'autre, on n'a
que des valeurs numriques stockes en RAM.

160

X(j f) =

x(t ) =

|X(jf)|

x(t) exp( -j2 f t) dt

X(jf) exp ( +j 2 ft) df

x(t)

Domaine analogique

f =

k-1

n-1

N-1

N-1

fe

fe
1
1
=
=
T
NTe
N

f = k f

x[n]

1
T
=
fe
N

t = nTe

t = Te =

x(t)

Te

Interface et discrtisation

k=0

N-1

N-1

TFD

XD[ jk] exp +j 2 kn


N

RAM

TFD

XD[jk]

avec XSF( j k) =

XD[ jk]
N

kn
x[n] exp (- j 2

N )
n= 0

N-1

1
N

XD[ jk] =

x[ n] =

N-1

x[n]

Domaine numrique

5.3. Transformation de Fourier discrte

Fig. 5.4.: Illustration des relations entre les domaines analogiques et numriques

161

5.

lments d'analyse spectrale numrique

5.3.2. TFD d'un signal priodique


Nous avons vu que le passage de la TF la TFD peut modier de manire sensible
les rsultats de l'analyse spectrale cause de la troncation. Par contre, si le signal
temporel

x(t)

est priodique, on peut se trouver dans la situation idale o les raies

spectrales du signal

xT (t)

sont en parfaite concidence avec les raies analyses par

la TFD. Pour remplir cette condition, il sut d'enregistrer trs exactement une ou
plusieurs priodes du signal temporel.
En comparant les dnitions de la dcomposition en srie de Fourier :

1
XSF [jk] =
T

+T /2

T /2

j2kt
xT (t) exp
T

dt

+
X



j2kt
xT (t) =
XSF [jk] exp +
T
k=

[V]

[V]

(5.32)

(5.33)

avec celles de la TFD (quations 5.28 et 5.29 ), on voit alors apparatre les relations
suivantes :

XD [jk]
N
xD [n]
xT (t = nTe ) =
N
XSF [jk] =

(5.34)

(5.35)

5.3.3. Relations entre les domaines analogique et numrique


En conclusion de ce que nous venons de voir, la gure 5.4 illustre le passage du
domaine analogique au domaine numrique. On y voit que, du ct analogique, on
a des signaux et spectres continus (ou discrets si

x(t)

est priodique) relis entre

eux par la transformation de Fourier alors que du ct numrique, on n'a que des
valeurs numriques stockes en RAM sur lesquelles on travaille avec l'algorithme de
la TFD.
L'interface entre les domaines analogique et numrique est ralise par un chantillonneur qui acquiert les signaux un rythme x par la priode d'chantillonnage

Te 1/fe .

5.3.4. TFD et FFT


La dcouverte de la transformation rapide de Fourier en 1965 par Cooley et Tukey
[3] a t d'une importance majeure pour le traitement du signal car elle a permis
d'envisager l'analyse spectrale numrique de signaux de longue dure en des temps
raisonnablement courts. L'algorithme de Cooley et Tukey a trs vite t connu sous
le nom de transformation rapide de Fourier et il est gnralement dsign par son
appellation anglo-saxonne : FFT (Fast Fourier Transform).

162

5.4. Spectre d'une sinusode


Il est ais de voir que le nombre d'oprations arithmtiques (sommes et produits)
N est proportionnel N 2 . Ce qui,

ncessites par la TFD d'une suite de longueur

pour une suite de longueur 1000, conduit calculer 1'000'000 de sinus et cosinus
suivis d'une addition et d'une multiplication ; les temps de calcul deviennent trs
vite prohibitifs..
L'algorithme de la FFT utilise le fait que l'opration de la TFD globale peut tre
dcompose en la TFD de squences de plus en plus courtes. Il en dcoule alors que le
nombre total d'oprations est bien infrieur celui impos par la simple application
de l'algorithme de la TFD. En contrepartie, le nombre de points analyss

doit

tre une puissance de 2. Le nombre d'oprations demandes par le nouvel algorithme


est alors fortement diminu et il vaut

Nop ' N log2 (N)

(5.36)

Ainsi, pour transformer 1024 points, le nouvel algorithme demande environ cent fois
moins de temps que la TFD :

N2
N
1024
=
=
= 102.4
Nop
log2 (N)
10
Il ne faut pas se mprendre sur la signication de la FFT : l'algorithme FFT n'est
pas une nouvelle transformation. Ce n'est rien d'autre qu'un moyen rapide d'obtenir
les mmes rsultats que ceux fournis par la TFD. Dirents algorithmes de FFT
sont prsents dans le livre de Burrus et Parks [3].

5.4. Spectre d'une sinusode


Il est important de bien comprendre que, dans toute analyse numrique des signaux,
on est contraint d'enregistrer une dure nie du signal et que cette dure nie peut
conduire des eets indsirables lors de l'analyse.
On a vu que la FFT travaille sur un bloc complet d'chantillons considr comme
priodique. Cela ne pose aucun problme dans le cas d'un signal transitoire si celui
a le temps de revenir 0 avant la n de l'enregistrement. Par contre, dans le cas
de signaux permanents, les choses peuvent se compliquer sensiblement. Pour le voir,
considrons deux situations pouvant apparatre lors de l'enregistrement d'un signal
priodique tel qu'une sinusode.

5.4.1. Le nombre de priodes enregistres est un entier


La gure 5.5a illustre un enregistrement de dure 10 ms contenant

exactement

10

priodes d'une onde sinusodale permanente d'amplitude 1 et de priode 1 ms. Dans


ce cas, le signal enregistr, considr priodique par la FFT, concide avec le signal rel (une sinusode permanente) et aucune modication de l'information n'est
introduite.

163

5.

lments d'analyse spectrale numrique

Le rsultat de l'analyse FFT pour cette situation conrme ce que l'on attend,
savoir que son spectre est constitu d'une raie spectrale bien dnie et situe en
1 kHz. Les deux raies supplmentaires que l'on peut observer en 3 et 5 kHz sont
dues aux distorsions du signal sinusodal fourni par le gnrateur.

5.4.2. Le nombre de priodes enregistres n'est pas un entier


Dans ce cas, la FFT analyse un signal qui possde une transition brusque au raccordement du dbut et de la n de l'enregistrement. Cette transition possde un
contenu spectral hautes-frquences qui peut masquer une partie du spectre rel.
La gure 5.5b montre un enregistrement contenant 10.25 priodes d'une onde sinusodale permanente d'amplitude 1 et de priode1 ms. Dans ce cas, le signal enregistr,
considr priodique par la FFT, ne concide pas avec le signal rel (une sinusode
permanente) et son spectre s'tale dans tout le domaine spectral. Cette dispersion

talement

de la puissance du signal dans tout le domaine frquentiel porte le nom d'

spectral.

Il est important de raliser que le phnomne d'talement spectral est d la nonconcidence des valeurs initiale et nale de la dure enregistre. Dans le cas de la
gure 5.5b, ces eets de bords sont tels qu'ils masquent compltement les composantes spectrales d'ordre 3 et 5 du signal.
Pour viter ces eets de bords, il faut s'attacher enregistrer exactement un nombre
entier de priodes du signal et, dans le cas o cela n'est pas possible, il faut ramener
les deux bords une valeur identique l'aide d'une fentre qui modie aussi peu
que possible le spectre rel.

5.5. Fentres d'observation


5.5.1. Quatre fentres usuelles
Les fentres utilises en analyse spectrale sont nombreuses et elles ont t tudies
extensivement par F.J. Harris [2]. On se contente ici de mentionner quatre fentres
frquemment appliques l'enregistrement d'un signal. Elles sont dnies comme
suit :

Fentre rectangulaire
wr [n] = 1

pour

0n<N

(5.37)

Fentre de Hann

 n 
wc [n] = 0.5 1 cos 2
N
164

pour

0n<N

(5.38)

5.5. Fentres d'observation

x(t)

N priodes

N + 1/4 priodes

0.5

0.5

0.5

0.5

1
0

5
temps [ms]

10

20

20

40

40

60

60

10

dB

(f)

5
temps [ms]

80

80
0

4
6
frquence [kHz]

10

4
6
frquence [kHz]

10

Fig. 5.5.: Signal sinusodal et son spectre

Fentre de Hamming
 n
wh [n] = 0.54 0.46 cos 2
N

pour

0n<N

(5.39)

Fentre de Blackman
 n
 n
+ 0.08 cos 4
wb [n] = 0.42 0.5 cos 2
N
N

pour

0n<N

(5.40)

5.5.2. Eet d'une fentre


Pour bien saisir l'eet des fentres dans le domaine spectral, on considre ici les
deux situations prsentes plus haut auxquelles on appliquera les fentres de Hann,
de Hamming et de Blackman (gure 5.7).

Le nombre de priodes enregistres est un entier

Dans ce cas idal (gure

5.7a), on peut relever quelques dirences spectrales lgres.


1. Les raies spectrales du signal original sont galement prsentes quelle que soit
la fentre choisie.

165

5.

lments d'analyse spectrale numrique

Hann

0.8

0.8

0.6

0.6

wc(t)

wr(t)

Rectangle

0.4

0.4

0.2

0.2

0.5

0.5

1.5

0.5

0.8

0.8

0.6

0.6

0.4
0.2

1.5

1.5

0.4
0.2

0
0.5

Blackman

wb(t)

wh(t)

Hamming

0.5

0
0

0.5
temps

1.5

0.5

0.5
temps

Fig. 5.6.: Fentres d'observation

2. Grce au maintien d'une lgre discontinuit temporelle, la fentre de Hamming ore les raies spectrales les plus troites.
3. La fentre de Blackman qui est la plus troite temporellement, fournit, comme
attendu, des raies spectrales plus larges.

Le nombre de priodes enregistres n'est pas un entier

Dans la gure 5.7b, on

a repris l'enregistrement contenant 10.25 priodes. Les rsultats spectraux obtenus


montrent l'vidence l'eet de ces 3 fentres :

1. la fentre de Hann fournit un spectre tout fait satisfaisant sans diminuer


fortement l'talement spectral ; c'est pourquoi le spectre est un peu large la
base ;
2. la fentre de Hamming fournit un spectre troit mais, cause de l'eet de
bord rsiduel, l'talement spectral n'est pas susamment rduit et il masque
les deux autres composantes spectrales ;
3. la fentre de Blackman donne le meilleur rsultat grce la double cosinusode
qui masque bien les eets de bord ; les raies spectrales sont alors troites et
bien dnies.

166

5.5. Fentres d'observation

x(t)

Hann

Hamming

Blackman

0.5

0.5

0.5

0.5

0.5

0.5

1
0

5
temps [ms]

10

5
temps [ms]

10

20

20

20

40

40

40

60

60

60

10

dB

(f)

5
temps [ms]

80

80
0

5
frquence [kHz]

10

80
0

5
frquence [kHz]

x(t)

Hann

10

Hamming
1

0.5

0.5

0.5

0.5

0.5

0.5

1
5
temps [ms]

10

Blackman

5
frquence [kHz]

10

5
temps [ms]

10

20

20

20

40

40

40

60

60

60

10

dB

(f)

5
temps [ms]

80

80
0

5
frquence [kHz]

10

80
0

5
frquence [kHz]

10

5
frquence [kHz]

10

Fig. 5.7.: Eet des fentres d'observation avec : (a) 10 priodes entires ; (b) 10.25

priodes

167

5.

lments d'analyse spectrale numrique

5.5.3. Choix d'une fentre


Le choix d'une fentre est un compromis entre une bonne dnition spectrale (spectre
troit) et un talement spectral aussi faible que possible (douceur de la fentre).
Qualitativement, leurs caractristiques peuvent tre rsumes comme suit.

1. La

fentre rectangulaire

utilisera dans le cas de

ne modie pas l'enregistrement ; c'est celle que l'on

signaux transitoires ou non permanents et, dans

le cas de signaux priodiques, lorsque l'on est sr que le nombre de priodes


enregistres est un entier.
2. La

fentre en cosinus, dite de

Hann, est mathmatiquement la plus simple et

elle ore de bons rsultats dans le cas de

proches.

3. La

fentre en cosinus relev,

composantes spectrales pas trop

dite de Hamming, n'limine pas compltement

l'talement spectral. Elle ore en contre partie une

meilleure dnition

spectrale mais ne permet pas de voir des composantes spectrales de faibles


amplitudes.

4. La

fentre de Blackman, constitue de deux cosinus, attnue trs fortement les

eets de bord et permet ainsi de bien distinguer des

et de faibles amplitudes.

raies spectrales proches

5.6. Exemple 1 : analyse spectrale lmentaire


Donnes

On considre ici un signal temporel fortement bruit (SNR

'

0 dB)

qui semble contenir une oscillation priodique dont on souhaite connatre la teneur
(gure 5.8).

Analyse temporelle

De l'enregistrement, on tire

1. la composante DC du signal et sa valeur ecace AC

Xdc = 0.045
2. la priode d'chantillonnage

Te

et sa dure

Te = 20 s
3. le domaine d'analyse spectrale

fN =

168

Xac = 1.42

fN

T = 20 ms

et la dnition spectrale

1
1
fe =
= 25 kHz
2
2 Te

f =

1
= 50 Hz
T

5.6. Exemple 1 : analyse spectrale lmentaire

Enregistrement temporel et Analyse spectrale

x(t)

T = tmax=20 [ms],
5

t = Te = 20 [s]

10
t [ms]

0.8

fmax = 1/ t = 50 [kHz]

0.6

fe = fmax = 50 [kHz]

0.4

fN = fe/ 2 = 25 [kHz]

0.4

0.2

f = 1/ tmax = 50 [Hz]

0.2

14

16

18

20

10
15
f [kHz]

20

0.8
|Xu(jf)|

|Xu(jf)|

12

0.6

25

f [kHz]

Fig. 5.8.: Illustration de l'analyse spectrale avec :

a) l'enregistrement temporel ;

0 f fe /2 = 25 kHz ;
5 kHz

b) son spectre d'amplitudes pour


c) un zoom spectral entre 0 et

169

5.

lments d'analyse spectrale numrique

Analyse spectrale

Le programme des calculs temporels et spectraux se rsume

aux quelques lignes prsentes ci-dessous.

% lecture de l'enregistrement
enreg = load('enreg.txt') ;
tt = enreg( :,1) ;
xt = enreg( :,2) ;
Xdc = mean(xt)
Xac = std(xt)
% analyse temporelle
Npts = length(xt) ;
dt = tt(2) - tt(1)
duree = Npts * dt
% analyse spectrale
df = 1/duree, fmax = 1/dt
ff = 0 :df :fmax-df ;
Xjf = fft(xt)/Npts ;
% spectre unilatral
Ndemi = round(Npts/2) ;
fk = ff(1 :Ndemi) ;
Ak = 2*abs(Xjf(1 :Ndemi)) ;
Ak(1) = abs(Xjf(1)) ;
% composante DC
ak = angle(Xjf(1 :Ndemi)) ;
subplot(2,1,1) ; stem(f,Ak,'.') ;
% estimation du rapport signal/bruit (SNR)
Px = Xdc^2 + Xac^2 ;
% puissance du signal + bruit = 2.023
A1 = 1.02 ; A2 = 0.85 ;
% amplitudes mesures
Px0 = (A1^2 + A2^2)/2 ; % puissance du signal original = 0.88
Pn = Px - Px0 ;
% puissance du bruit = 1.14
SNR = 10*log10(Px0/Pn) % SNR = -1.12

Les spectres d'amplitudes, prsents dans la gure 5.8, montrent que deux raies
spectrales s'lvent clairement au-dessus du niveau de bruit situ aux environs de 0.3.
Ces deux raies spectrales ont une amplitude et une frquence valant respectivement

A1 ' 1.02

f1 = 1.25 kHz 25 Hz

A2 ' 0.85

f2 = 1.40 kHz 25 Hz

La prcision des frquences mesures est gale la moiti de la dnition spectrale

170

f .

5.7. Exemple 2 : reconstruction d'un signal

5.7. Exemple 2 : reconstruction d'un signal


Donnes

An d'analyser et illustrer les rsultats fournis par la TFD, on considre

ici un signal connu

x(t) = A1 sin(2f1 t) + A2 sin(2f2 t) + A3 sin(2f 3 t + /4)


constitu de trois sinusodes d'amplitudes

A1 = 1 A2 = 0.8 A3 = 0.5
et de frquences harmoniques

f1 = 50 Hz f2 = 150 Hz f3 = 250 Hz
Ce signal original est perturb par un bruit important car le

+5 dB.

SNR

ne vaut que

Le but de cet exemple est de montrer que, malgr la prsence d'un fort

bruit, il est possible de retrouver le signal original.


Signal + Bruit

Analyse de Fourier

4
0.25
2
0.2
0

0.15
0.1

2
0.05
4

50

100
150
temps [ms]

200

100

Signal reconstruit
4

50

100
150
temps [ms]

400

500

Signal original

200
300
frquence [Hz]

200

50

100
150
temps [ms]

200

Fig. 5.9.: Analyse spectrale et extraction des signaux

Analyse temporelle
tillonnage

Te = 0.2 ms

Le signal bruit a t enregistr avec une priode d'chanet il a une dure

T = 210 ms

(gure 5.9a). Ceci permet de

prvoir que le domaine des frquences est caractris par :


 la frquence de Nyquist

fN =

fe
= 2500 Hz
2

171

5.

lments d'analyse spectrale numrique

 la dnition spectrale

1
1
=
= 4.76 Hz
T
210 ms

f =
On notera que la dure d'analyse

f = 4.76 Hz

T = 210 ms

conduit une dnition spectrale

qui n'est pas un sous-multiple des composantes spectrales. Cela fait

que l'on sera dans l'impossibilit de trouver la valeur exacte des frquences originales.
Idalement, on aurait d prendre une dure de
dnition spectrale de

Analyse spectrale

200 ms

permettant ainsi d'avoir une

5 Hz.

L'observation du spectre obtenu aprs fentrage (gure 5.9b)

montre que les trois raies spectrales sont bien visibles. Mais, on doit cependant
constater que ces raies se sont ddoubles cause de la dnition spectrale nonentire et de l'utilisation de la fentre d'observation.
Le programme donn ci-dessous permet de rechercher ces raies spectrales. Les frquences mesures

2.4 Hz

prs sont

f11 = 47.6 Hz f12 = 52.4 Hz


f21 = 147.6 Hz f12 = 152.4 Hz
f31 = 247.6 Hz f32 = 252.4 Hz
Leurs amplitudes et phases respectives valent

A11 = 0.453 A12 = 0.432


A21 = 0.368 A12 = 0.334
A31 = 0.198 A12 = 0.185

11 = 0.151 rad 12 = +2.98 rad


21 = 2.87 rad 22 = 0.275 rad
31 = +0.372 rad 32 = 2.65 rad

avec

Ak = 2 |X(jk)|

Reconstruction du signal original

k = X(jk)

Connaissant les amplitudes et phases des com-

posantes spectrales, il est ais de reconstruire le signal non bruit :

xr (t) =

Ak cos (2fk t + k )

Malgr l'eet de la fentre d'observation utilise avant d'eectuer la FFT et le fait


qu'il y ait six frquences au lieu de trois, le signal ainsi extrait (gure 5.9c) reproduit
assez bien l'allure du signal original (gure 5.9d).

Programme d'analyse et recherche des composantes spectrales

Le programme

ayant permis d'obtenir ces rsultats se rsume aux quelques lignes prsentes cidessous.

172

5.8. Exemple 3 : analyse spectrale dtaille


% signal bruit
yt = xt+nt ;
Npts = length(yt) ;
% analyse spectrale avec une fentre de Hann
yht = yt'.*hann(Npts) ;
Yjf = fft(yht)/Npts ;
df = 1/tmax ; fmax = 1/dt ;
ff = 0 :df :fmax-df ;
% recherche de N raies spectrales
Nraies = 6 ;
Yjf_tempo = Yjf(1 :end/2) ;
for kn = 1 :Nraies
[Ymax, kf(kn)] = max(abs(Yjf_tempo)) ;
Yjf_tempo(kf(kn)) = 0 ; % mise zro de la valeur trouve
end ;
% reconstruction
xtr = zeros(size(yt)) ;
for kn = 1 :Nraies
Xrjf = Yjf(kf(kn)) ; fr = ff(kf(kn)) ;
xtr = xtr + Xrjf*exp(+j*2*pi*fr*tt) + Xrjf'*exp(-j*2*pi*fr*tt) ;
end ;
% valeurs des composantes spectrales
fr = ff(kf)'
Ar = 2*abs(Yjf(kf))
ar = angle(Yjf(kf))

5.8. Exemple 3 : analyse spectrale dtaille


5.8.1. Donnes
On considre ici un signal permanent observ l'oscilloscope. partir de l'observation visuelle du signal, on dsire choisir les paramtres d'acquisition qui permettront ensuite d'extraire toutes les informations possibles. L'acquisition se fera avec
un convertisseur analogique-numrique 8 bits /2 V.

5.8.2. Signal temporel


Le signal

x(t)

observ l'oscilloscope (gure 5.10a) apparat comme une sinusode

caractrise par son amplitude

A ' 1.7 V

et sa priode

T0 ' 3.68 msec.

Cepen-

dant, une observation de plus longue dure (gure 5.10b) montre un phnomne de

173

5.

lments d'analyse spectrale numrique

Acquisition: 10000 points, fe = 5000 [Hz]; CAN: 2 [V], 8 bits 1/2LSB,


2

x(t)

1
0
1
2

0.005

0.01

0.015

0.02

0.025

0.03

x(t)

1
0
1
2

0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

x[n]

1
0
1
2

0.005

0.01

0.015
temps [sec]

0.02

0.025

0.03

Fig. 5.10.: Signal analys

battement de priode

Tb ' 0.45 sec

ou de frquence

fb =

1
' 2.2 Hz
Tb

On en dduit que ce signal est compos d'au moins deux sinusodes de frquences
trs proches

f1 '

1
' 272 Hz
T0

f2 = f1 fb ' 270

ou

274 Hz

et d'amplitudes fort direntes car la variation d'amplitude de

x(t)

est faible.

5.8.3. Paramtres d'acquisition


An d'avoir une dnition temporelle raisonnable, on choisit

t Te '

T0
= 0.35 msec ' 0.2 msec
10

et on en dduit la frquence d'chantillonnage

fe =

1
= 5 kHz
t

La gure 5.10c prsente une partie du signal numrique ainsi acquis.

174

5.8. Exemple 3 : analyse spectrale dtaille


Comme il faut pouvoir distinguer deux raies distantes de
dnition spectrale susamment ne

f '

fb ' 2 Hz,

on choisira une

fb
= 0.5 Hz
4

Sachant que la rsolution frquentielle est inversement proportionnelle la dure


d'acquisition, on en tire

tacq =

1
= 2 sec
f

Le nombre de points acquis vaudra donc

Npts =

1
1
=
= 100 000
f t
0.5 Hz 0.2 ms

L'ensemble des valeurs acquises est reprsent la gure 5.10b.

5.8.4. Analyse spectrale


Utilisation de la FFT

On a vu plus haut que l'algorithme FFT exige un nombre

de points gal une puissance de 2. Lorsque cela n'est pas le cas, on complte la suite
de valeurs acquises par une succession de zros permettant d'atteindre un nombre
de valeurs gal la puissance de 2 la plus proche (gure 5.11a).
Du point de vue de l'analyse de Fourier, cela ne change rien aux rsultats fournis ;
seule la rsolution spectrale est amliore. Dans notre cas, on passera donc de
100 000 Nf f t = 160 384 et la rsolution frquentielle passera ainsi de

f =

f =

Fentre rectangulaire
quises

x[n]

Npts =

fe
5000
= 0
= 0.5 Hz
Npts
10 000

5000
fe
= 0
= 0.305 Hz
Nf f t
16 384

Dans ce cas, l'analyse spectrale de la suite de valeurs ac-

fournit les spectres prsents dans les gures 5.11b et 5.13a). Le spectre

ainsi obtenu fait apparatre une seule raie spectrale aux environs de 270 Hz et,
contrairement ce que l'on attendait, il n'y a pas de deuxime raie spectrale. Manifestement, celle-ci est masque par l'talement spectral d la fentre rectangulaire.

Fentre de Blackman

On est donc amen fentrer le signal acquis en le multi-

pliant par une fonction attnuant les eets de bord dus l'acquisition eectue. On
choisit ici d'utiliser la fentre de Blackman dnie comme suit :





n
n
wb [n] = 0.42 0.5 cos 2
+ 0.08 cos 4
Npts
Npts

pour

0 n < Npts

175

5.

lments d'analyse spectrale numrique

Spectres damplitudes: f = 0.305 [Hz], fN = 2500 [Hz]


2
Fentre rectangulaire

x[n] wr[n]

2000

4000

6000

8000

10000

12000

14000

16000

Xr(f) [dB]

20

40

60

80

500

1000

1500

2000

2500
3000
frquence [Hz]

3500

4000

4500

5000

Fig. 5.11.: Signal et spectre d'amplitudes, fentre rectangulaire

Du point de vue numrique, on analysera donc le signal

xw [n] = x[n] wb [n]


Aprs avoir complt le signal fentr par des zros pour atteindre une puissance
de 2 (gure 5.12a), on obtient les rsultats prsents dans les gures 5.12b et 5.13b
o le niveau de bruit caus par l'talement spectral a pratiquement disparu.

Zoom frquentiel

tant donn la haute dnition spectrale, obtenue au prix d'un

long enregistrement, les chelles globales ne permettent pas de voir le dtail des raies
attendues. Il faut donc zoomer sur la zone intressante. On voit alors trs nettement
que la fentre rectangulaire (gure 5.13a) est totalement incapable de fournir les
informations attendues alors qu'avec la fentre de Blackman (gure 5.13b), on retrouve bien la deuxime frquence recherche et on peut mme apercevoir la prsence
d'une troisime composante spectrale d'amplitude encore plus faible, qui n'tait absolument pas perceptible au niveau temporel.

5.8.5. Estimation des amplitudes


Le spectre d'amplitudes de la gure 5.13b permet de mesurer les frquences des trois
composantes spectrales du signal

176

x(t) et les amplitudes relatives des raies spectrales.

5.8. Exemple 3 : analyse spectrale dtaille

Spectres damplitudes: f = 0.305 [Hz], fN = 2500 [Hz]


2
Fentre de Blackman

x[n] wh[n]

2000

4000

6000

8000

10000

12000

14000

16000

Xh(f) [dB]

20

40

60

80

500

1000

1500

2000

2500
3000
frquence [Hz]

3500

4000

4500

5000

Fig. 5.12.: Signal et spectre d'amplitudes, fentre de Blackman

Spectres damplitudes: f = 0.305 [Hz], fN = 2500 [Hz]


0
Fentre rectangulaire

40

X (f) [dB]

20

60

80
250

260

270

280

290

300

310

320

330

340

350

0
Fentre de Blackman

40

X (f) [dB]

20

60

80
250

260

270

280

290

300
310
frquence [Hz]

320

330

340

350

Fig. 5.13.: Agrandissement spectral

177

5.

lments d'analyse spectrale numrique

fk

Xk,dB

Xk,dB X1,dB

Xk /X1

272 Hz

-7.6

274 Hz

-32.2

-24.6

0.059

277 Hz

-52

-44.4

0.006

Il est important de noter que les amplitudes spectrales dpendent de la fentre choisie
et que seules leurs valeurs relatives peuvent en tre dduites

Xk
= 10(Xk,dB X1,dB )/20
X1
Pour obtenir la valeur relle des amplitudes, on peut passer par l'galit de Parseval :

Pac

1
=
T

X
A2

T
0

x2ac (t) dt

A2
= 1
2
2
k

k=1

1+

A2
A1

2

A3
A1

2

A4
A1

2

Ce qui donne dans notre cas

Pac =


A2
A21
1 + 0.0592 + 0.0062 = 1.00352 1
2
2

partir du signal acquis, on calcule aisment sa puissance :

Pac

N 1
1 X
=
(x[n] x )2 = var(x[n]) = 1.45
N n=0

On en dduit alors la valeur de

A1

A1 =

et celles des autres composantes :

2 Pac
= 1.70
1.00352

A2 = 0.059 A1 = 0.1
A3 = 0.006 A1 = 0.01

Remarque

Une correction des amplitudes spectrales tenant compte de la fentre

utilise n'est possible que

de priodes.

si le signal acquis possde exactement un nombre entier

Si cette condition est remplie, il sut alors de diviser les amplitudes

spectrales par la valeur moyenne de la fentre :

Ak Ak /(w).

Ce calcul doit tre

vit si l'on n'est pas sr que la condition est remplie.

5.8.6. Dtail du calcul des signaux et des spectres


Le chier cr pour gnrer le signal

x(t),

calculer et tracer les spectres dans dif-

frentes conditions est donn ci-dessous. Bien qu'il puisse paratre volumineux au
premier abord (beaucoup de lignes sont consacres au traage uniquement), les parties essentielles de ce chier sont simplement :

178

5.8. Exemple 3 : analyse spectrale dtaille


1. la conversion analogique- numrique

2 V avec Nbits

1
LSB de non linarit
2

(on admet que celle-ci entrane la perte d'un bit) :

Ucan = 4 ; Nbits = 8 ;
xn = Ucan*round((xn0/Ucan)*(2^(Nbits-1))/(2^(Nbits-1) ;

wh = (blackman(length(xn)))' ;
xnwh = xn.*wh ;

Nfft = 2^ceil(log2(length(xn))) ;
xnwh = [xnwh, zeros(1,Nfft-length(xn))] ;
Xjfh = fft(xnwh)/length(xnwh) ;

2. le fentrage :

3. l'ajout de zros et le calcul du spectre :

Initialisation

Le programme dbute par l'initialisation des paramtres et la cra-

tion du signal vu sur l'cran de l'oscilloscope

% analyse spectrale
clear all ; close all ; format compact ; clc ;
% parametres du signal
amp1 = 1.7 ; amp2 = 0.1 ; amp3 = 0.01 ;
f1 = 271.828 ; f2 = f1+2 ; f3 = f1+5 ;
% oscilloscope
tosc = 0.03 ; kosc = 2000 ;
dt = tosc/kosc ;
tt = 0 :dt :tosc-dt ;
xt0 = amp1*sin(2*pi*tt*f1)+amp2*cos(2*pi*tt*f2)+amp3*sin(2*pi*tt*f3) ;

Acquisition numrique

Il se poursuit avec l'acquisition et la conversion sur une

dure plus longue

% acquisition
tacq = 2 ;
Te = 0.2e-3 ;
tn = 0 :Te :tacq-Te ;
xn0 = amp1*sin(2*pi*tn*f1)+amp2*cos(2*pi*tn*f2)+amp3*sin(2*pi*tn*f3) ;
% conversion +/- 2V avec Nbits et +/- 1/2LSB de non linearite
Ucan = 4 ; Nbits = 8 ;
xn = Ucan*round(xn0/Ucan*2^(Nbits-1))/2^(Nbits-1) ;

Calcul des spectres

Une fois les signaux acquis, on peut calculer leurs spectres et

acher des informations

% calcul des spectres


Nfft = 2^ceil(log2(length(xn)))
% fenetres rectangulaire et de Blackman
wr = ones(size(xn)) ;

179

5.

lments d'analyse spectrale numrique

wh = (blackman(length(xn)))' ;
xnwr = xn.*wr ;
xnwh = xn.*wh ;
% ajout de zeros
xnwr = [xnwr, zeros(1,Nfft-length(xnwr))] ;
xnwh = [xnwh, zeros(1,Nfft-length(xnwh))] ;
% fft
Xjfr = fft(xnwr)/length(xn) ;
Xjfh = fft(xnwh)/length(xn) ;
% domaine spectral
fmax = 1/Te ;
df = fmax/Nfft ;
ff = 0 :df :fmax-df ;
% infos
Nbits, tacq, Te, fmax, df
Pac = var(xn)
Npoints = round(tacq/Te), Nfft

Graphes

On trace les signaux acquis

% graphes temporels
figure ;
subplot(3,1,1) ;
plot(tt,xt0) ; grid ;
axis([0,tosc,-2,2])
texte = ['Acquisition : ', num2str(round(tacq/Te)), ' points,'] ;
texte = [texte, ' f_e = ', num2str(1/Te,4), ' [Hz] ;'] ;
texte = [texte, ' CAN : \pm ', num2str(Ucan/2,2), ' [V], '] ;
texte = [texte, ' ', num2str(Nbits,2), ' bits \pm 1/2LSB,'] ;
title(texte) ;
ylabel('x(t)') ;
subplot(3,1,2)
plot(tn,xn) ; grid ;
axis([0,tacq,-2,2])
ylabel('x(t)') ;
subplot(3,1,3) ; % zoom
plot(tn,xn,'.') ; grid ;
axis([0,tosc,-2,2])
ylabel('x[n]') ;
xlabel('temps [sec]') ;
print -deps ansptemps.eps
ainsi que les spectres aprs fentrage

% spectres
figure ; % fenetre rectangulaire
subplot(2,1,1) ;
plot(xnwr) ; grid ;
axis([0,Nfft,-2,2])

180

5.8. Exemple 3 : analyse spectrale dtaille


texte = ['Spectres damplitudes : \Deltaf =
texte = [texte, ' f_N = ', num2str(fmax/2),
title(texte) ;
ylabel('x[n] \cdot w_r[n]') ;
legend('Fentre rectangulaire') ;
subplot(2,1,2) ;
plot(ff, 20*log10(abs(Xjfr))) ; grid ;
axis([0,fmax,-80,0]) ;
ylabel('X_r(f) [dB]') ;
xlabel('frquence [Hz]') ;
print -deps anspwr.eps
figure ; % fenetre de Blackman
subplot(2,1,1) ;
plot(xnwh) ; grid ;
axis([0,Nfft,-2,2])
texte = ['Spectres damplitudes : \Deltaf =
texte = [texte, ' f_N = ', num2str(fmax/2),
title(texte) ;
ylabel('x[n] \cdot w_h[n]') ;
legend('Fentre de Blackman') ;
subplot(2,1,2) ;
plot(ff, 20*log10(abs(Xjfh))) ; grid ;
axis([0,fmax,-80,0]) ;
ylabel('X_h(f) [dB]') ;
xlabel('frquence [Hz]') ;
print -deps anspwh.eps

Zoom

',num2str(df,3), ' [Hz],'] ;


' [Hz]'] ;

',num2str(df,3), ' [Hz],'] ;


' [Hz]'] ;

Les dtails sont mis en vidence

% zoom spectral
fz1 = 250 ; fz2 = 350 ; % domaine interessant
dbmax = 80 ;
figure ;
subplot(2,1,1) ;
plot(ff, 20*log10(abs(Xjfr))) ; hold on ;
axis([fz1,fz2,-dbmax,0]) ; grid ;
title(texte) ;
ylabel('X_r(f) [dB]') ;
legend('Fentre rectangulaire') ;
subplot(2,1,2) ;
plot(ff, 20*log10(abs(Xjfh))) ;
axis([fz1,fz2,-dbmax,0]) ; grid ;
ylabel('X_h(f) [dB]') ;
xlabel('frquence [Hz]') ;
legend('Fentre de Blackman') ;
print -deps anspzoom.eps

181

5.

lments d'analyse spectrale numrique

5.9. Exercices
TFD 0
1. Montrez que le passage de l'analogique vers le numrique se fait bien avec les
deux relations discrtes

X[jk]

et

x[n]

de la gure 5.4.

2. Considrant la suite de quatre valeurs

X[jk].

x[n]

Dessinez la suite

x[n] = {0, 2, 4, 0}, calculez son spectre


x(t) lui cor-

et un signal analogique priodique

respondant.
3. Calculez le signal priodique

xF (t)

correspondant la suite

x[n]

au sens de

Fourier.

TFD 1
L'analyse spectrale, par la FFT, d'un signal
fourni le spectre discret

XD [jk]

3. Que vaut

xN [n]

fe = 1 [kHz].

est-il continu, discret, priodique ?

xN [n = 0] ?

4. Quelle est l'expression de


5. Tracez

constitu de N = 8 valeurs a

partiellement donn dans le tableau ci-dessous.

1. Compltez le tableau sachant que


2. Le signal temporel

x[n]

xN [n] ?

xN [n].

XD [jk]

2+j

3+2j

10

|XD [jk]|
XD [jk]

f [kHz]

TFD 2

On souhaite calculer le spectre d'une impulsion rectangulaire de largeur

t = 3 [msec] et d'amplitude A = 5 [V].


frquence fe = 1 [kHz].

Pour ce faire, on acquiert 8 points la

1. Admettant que l'chantillonnage commence l'apparition du anc montant,


dessinez
n = 3.

182

x(t)

et

x[n].

Discutez les valeurs choisies pour

x[n]

lorsque n = 0 et

5.9. Exercices
2. Que vaut la dure d'acquisition tmax ?
3. Quel sera le domaine spectral analys ; que vaudra l'incrment de frquence

f ?
4. Calculez

XD [jk]

pour k = 0 et k = 2 ; quel est le domaine de variation du

compteur k des frquences ?


5. Validez votre rsultat en analysant la valeur de

TFD 3

Considrant la suite de valeurs

1. Esquissez
2. Calculez

x[n]

x(t)

et une fonction

XD [jk] ;

x[n]

XD [jk = 0].

ci-dessous :

passant par ces points.

sa valeur dpend-elle de la longueur

N = 2m

de la suite ?

3. Qu'est ce qui change si on ajoute des zros pour doubler le nombre d'chantillons ?

m

m+1

3

2

1

+1

+2

+3

+m1

x[n]

0.5

0.5

TFD 4

Considrant un signal

x(t) = cos(2 1000 t) + cos(2 2000 t)


fe = 8 f0 :

chantillonn

pendant une priode la frquence


1. Dessinez la suite de valeurs

x[n].

2. Justiez les rsultats du tableau ci-dessous fournis par la la FFT puis prcisez
la relation existant avec ceux fournis par la dcomposition en srie de Fourier.
3. On chantillonne le signal

TFD 5

x(t)

sur 4 priodes ; que donnera la FFT ?

XD [jk]

On chantillonne avec une priode d'chantillonnage

Te = 1 [msec]

une

exponentielle dcroissante

x(t) = A exp(t/ ) (t)


o

A = 5 [V], = 5 [msec].
1. Que vaut la densit spectrale
2. Calculez la suite des valeurs
3. Calculez la TF

Xe (jf )

X(jf )

x[n] ;

du signal

x(t) ?

exprimez la sous la forme

de la suite inniment longue

x[n].

x[n] = A r n .

183

5.

lments d'analyse spectrale numrique

4. On ne prend en compte que les 16 premires valeurs de la suite


annule les autres ; que vaut

x[n]

et on

Xe,N (jf ).

5. Considrant la suite temporelle tronque

xN [n] avec N = 16, on discrtise l'axe

des frquences. Que vaut l'incrment frquentiel ? Calculez le spectre discret

XD [jk].
6. Que valent, pour chacun des spectres ci-dessus

(X(jf ), Xe (jf ), Xe,N (jf ), XD [jk]),

les composantes spectrales lorsque f = 0 ?

AnSp 0

On considre le signal

x(t) = 1 + 5 sin (2fa t) + 2 sin (2fb t) , fa = 1 [kHz], fb = 1.5 [kHz]


1. Quelle est la priode de ce signal ? Dessinez le spectre unilatral de
valent

Xdc

et

x(t).

Que

Xac ?

2. Son enregistrement a t eectu avec une priode d'chantillonnage de 125

sec

pendant exactement 10 msec.

a) Quel sera le domaine d'analyse spectrale et sa rsolution.


b) Pensez-vous devoir utiliser une fentre d'observation ? Si oui, laquelle
choisissez-vous et pourquoi ?
c) Les raies spectrales fournies par la FFT seront-elles situes aux frquences
attendues ? Sinon, prcisez la valeur de ces frquences.
3. Idem 2), si l'enregistrement a dur exactement 11 msec.

AnSp 1

Lors de l'analyse spectrale d'un signal chantillonn

N, Te , tmax

et

fe , f

x[n],

les paramtres

sont relis entre eux ; la donne de deux d'entre eux sut

pour xer tous les paramtres de l'analyse. Rappelez ces relations puis compltez le
tableau ci-dessous.

Te

tmax

40

2 kHz
1 msec

50

50 Hz
10 msec

100

10 Hz
20 Hz
2 msec

30

1 kHz

1 sec

1 msec
5 msec

AnSp 2

fe

5 kHz

On doit faire l'analyse spectrale numrique des signaux suivants

une sinusode

une impulsion triangulaire

une rponse indicielle

un signal chirp (wobul)

une impulsion rectangulaire

une exponentielle dcroissante

une suite d'impulsions rectangulaires

un signal triangulaire priodique

184

5.9. Exercices
Pour chacun des signaux :
1. Esquissez leur allure temporelle.
2. Choisissez-vous une fentre rectangulaire ou en cosinus ?
3. Prcisez les raisons de votre choix.

AnSp 3

On considre ici le signal

x(t) = 3 + 4 cos(2f0 t) + 2 sin(4f0 t),

f0 = 100 Hz

reprsent la gure 5.14 dont on a enregistr deux priodes. Sachant qu'on souhaite
obtenir numriquement son spectre

X[jk],

on l'chantillonne avec une priode

Te =

1 msec.
1. Dessinez les points chantillonns

x[n].

Quelle fentre faut-il utiliser avant

l'analyse spectrale ?
2. Que valent

N, tmax , fe , f ?

3. Quelles raies spectrales seront prsentes ? Quel sera le nombre de valeurs spectrales analyses ?
4. Donnez les frquences, les amplitudes et les phases de chaque valeur spectrale

X[jk],

k = 0, , N 1.

5. Quel serait le rsultat de l'analyse spectrale si l'on avait chantillonn six


priodes au lieu de deux ?

185

5.

lments d'analyse spectrale numrique

10

x(t)

10
temps [ms]

12

Fig. 5.14.: Ex AnSp 3

186

14

16

18

20

Bibliographie
Frequency Analysis, Brel & Kjaer, 1987
Harris : On the use of windows for harmonic analysis with DFT,

[1] Randall R.B.,


[2] Frederic J.

Proceedings of IEEE, vol. 66, no.1, january 1978


[3] Cooley J.W., Tukey J.W., An Algorithm for the Machine Calculation of Com-

Mathematics of Computation, Vol. 19, April 1965


T.W., DFT/FFT and Convolution Algorithms. John

plex Fourier Series,


[4] Burrus C.S., Parks

Wiley

& Sons, New York, 1985


[5] B.P. Lathy,

Linear Systems and Signals, Berkeley-Cambridge Press, Carmichael

CA, 1992

187

Bibliographie

188

Troisime partie .
Travaux pratiques avancs

189

6. Analyse de la parole
6.1. Introduction
L'information porte par le signal parole peut tre considr de bien des faons. On
distingue gnralement plusieurs niveaux de description non exclusifs : acoustique,
phontique et phonologique.
Au niveau

acoustique,

on s'intresse essentiellement au signal que l'on tentera de

caractriser par son intensit, sa frquence, son timbre et ses proprits statistiques.
Au plan
un mot

phontique, on considre la gnration des sons, les phonmes qui composent


et les classes auxquels ils se rattachent. Enn, la phonologie s'attache

dcrire le rythme, la prosodie, la mlodie d'une phrase.


Le texte qui suit traitera du signal acoustique seulement. Il n'a d'autre but que de
servir d'introduction une deuxime partie o l'on abordera le codage et dcodage
LPC de la parole. Une prsentation plus complte peut trer lue avec prot dans [1].

6.2. Analyse de la parole


Avant de vouloir traiter ou coder le signal de la parole, il est important de commencer
par comprendre ce qu'est la parole, quel est son contenu spectral, quelles sont les
parties qui la composent. De plus, il est primordial de raliser que l'analyse des
signaux est base sur la stationnarit de ceux-ci alors que, par essence, un message
ne peut pas tre stationnaire. On sera donc constamment confront au dilemme pos
par l'analyse d'un signal transitoire considr comme stationnaire.
Pour la suite, vous utiliserez les deux outils suivants :
 le programme CoolEdit 2000 pour l'enregistrement, l'analyse auditive et visuelle
des sons et de leurs spectres ;
 le programme Matlab pour l'analyse et le traitement numriques des signaux.

6.2.1. Classication des phonmes


Lorsqu'on recherche les composants lmentaires du langage articul, on en trouve
environ une trentaine pour la langue franaise. Ces lments dsigns sous le nom
de

phonmes

sont rpartis en 7 classes ; ils susent pour reprsenter l'ensemble des

sons. Il s'agit des :

191

6.

Analyse de la parole

i t, marais, Ursule, peur, petit, jeu, patte, pte, sol, saule,

 voyelles voises : l t,

ou ;

bij

in, brun, chant, bonjour ;


semi-voyelles : paille, lui, Louis ;
consonnes fricatives : saucisson, zbre, chat, janvier, f ameux, v ert ;
consones nasales : Nantes, menthe, agneau ;
consonnes liquides : salon, bureau ;
consonnes plosives : pari, barbare, bateau, badaud, cart, lang ue.

 voyelles nasales : br






Ces classes de phonmes font intervenir des degrs divers les lvres, la cavit
nasale, la langue, le palais, la glotte et les cordes vocales. Des dirences subtiles
entre phonmes dterminent le sens du mot et modient sensiblement la forme de
l'onde sonore et son spectre. Ces dirences ne sont pas faciles dtecter et mettre
en oeuvre.
Dans certaines applications, en tlphonie par exemple, on peut se contenter d'une
approche plus grossire et de rpartir les phonmes dans deux classes seulement, les
sons voiss et non voiss. Les premiers sont modliss par un signal priodique, alors
que les seconds sont reprsents par un bruit. Une tche dicile du codage de la
parole consiste dterminer si un son est vois ou non.

6.2.2. Priode des sons voiss


Considrant que les sons voiss ont un contenu priodique bien marqu, le problme
rsoudre consiste trouver la priode de la composante fondamentale et dcider
si le son analys est vois ou non. Cette priode (communment appele le pitch),
est un paramtre trs important pour la synthse de la parole car l'oreille est trs
sensible ses variations.
On a observ que la frquence de la fondamentale se situe entre 40 Hz et 250 Hz
pour les voix masculines alors qu'elle est comprise entre 150 Hz et 700 Hz pour les
voix fminines. De manire gnrale, on admettra donc qu'un son est vois si sa
priode ou le pitch est compris entre 2 msec et 20 msec.

6.3. Acquisition et analyse avec CoolEdit


On utilisera le logiciel CoolEdit pour acqurir des sons, slectionner et couter
des phonmes ou des parties de phrases et visualiser des ondes sonores l'aide
de graphes, de spectres ou de spectrogrammes.

6.3.1. Paramtres pour l'enregistrement


Considrant que l'on s'intresse ici des sons de la bande tlphonique, on les
enregistrera en monophonie la frquence de 8 kHz avec un convertisseur 16 bits
aprs un ltrage antirepliement des frquences suprieures 4 kHz.

192

6.4. Analyse du signal acoustique avec Matlab


Pour que les chiers soient directement utilisables par Matlab, on les sauvegardera
dans un chier *.txt de type ASCII et on prendra garde supprimer les 4 premires
lignes qui contiennent des informations sur l'enregistrement.

6.3.2. Visualisation des signaux et de leur spectre


Dans la gure 6.1, on prsente le signal correspondant au mot bonjour. On y voit
le graphe du signal complet, son spectrogramme et deux zones du son bonjour. La
premire correspond au son non vois j, alors que la deuxime illustre le phonme
vois ou. Pour chacune de ces deux zones, on a trac les signaux temporels et les
spectres correspondants.
Pour le son j, on relvera le caractre alatoire du signal, sa faible puissance et le
fort taux de passages par zro. Pour le son ou, on notera d'abord son caractre
priodique qui conduit aux raies spectrales du domaine frquentiel. La priodicit
basse frquence des signaux voiss conduit un faible taux de passages par zro.
De plus, la puissance des sons voiss est sensiblement plus grande que celle des sons
non voiss.

6.4. Analyse du signal acoustique avec Matlab


Le logiciel Matlab servira pour traiter les signaux par tranches successives, extraire
leurs caractristiques et mettre en vidence les rsultats obtenus.
Aprs avoir enregistr une phrase ou un son avec CoolEdit, celui-ci doit tre sauvegard dans un chier *.txt de type ASCII an de pouvoir tre lu par Matlab. Il ne
doit contenir aucune autre information que les valeurs chantillonnes du signal.

6.4.1. Lecture du chier de donnes


Le chier *.txt comportera une colonne de N valeurs chantillonnes. Il sera lu par
Matlab sous la forme d'un vecteur dont l'amplitude sera normalise 1 :

[filename,path] = uigetfile('*.txt','Choix de la phrase') ;


phrase = load(filename) ;
phrase = phrase/max(abs(phrase)) ;
On dsignera une tranche l'aide de la variable

st.

La tranche dsire peut tre

slectionne en prenant une partie des composantes du vecteur

phrase

avec la com-

mande

st = phrase(Ndebut :Nfin) ;
Si une analyse spectrale doit tre faite, on choisira de prfrence une tranche de
longueur gale une puissance de 2. Par exemple, 128 ou 256.

193

6.

Analyse de la parole

son " j "

son " ou "

graphe de
" bonjour "

spectrogramme de
" bonjour "

spectre du son " ou "

spectre du son " j "

Fig. 6.1.: Graphes correspondant au mot bonjour ; mise en vidence des sons j

et ou

194

6.4. Analyse du signal acoustique avec Matlab

6.4.2. Initialisation
La visualisation du signal temporel et de son spectre dbute par l'initialisation de
quelques variables et la suppression de la valeur moyenne qui n'a aucun intrt en
traitement des signaux :

fe = 8e3 ; Te = 1/fe ;
Npoints = length(st) ;
duree = Npoints*Te ;
temps = 0 :Te :duree-Te ;
df = 1/duree ;
Ndemi = fix(Npoints/2) ;
frequence = df*(0 :Ndemi-1) ; % 0 <= frequence < fe/2
st = st - mean(st) ;
% suppression de la valeur moyenne

6.4.3. Valeur ecace


Vous remarquerez par la suite que les sons voiss sont gnralement plus intenses
que les sons non voiss. Pour valuer l'amplitude des signaux, on calcule la valeur
ecace de la tranche considre. Celle-ci est gale la dviation standard du signal

Seff = std(st) ;

% valeur efficace du signal

6.4.4. Taux de passages par zro


Le taux de passages par zro peut galement aider la dcision vois / non vois.
Il est dni comme le rapport entre le nombre de passages par zro et le nombre
d'chantillons considrs

nxz =

Nxz
Nech

Le nombre passages par zro peut se calculer comme suit :

function [Nxz] = zcross(xt)

xz = xt - mean(xt) ;

xz = (1+sign(xz))/2 ; % transformation en un signal binaire 0 / 1


xz = diff(xz) ; % derivee du signal binaire = +/- 1
Nxz = sum(abs(xz)) ; % nombre de passages par 0

6.4.5. Spectre
L'analyse spectrale est faite l'aide de la FFT. Idalement, le nombre de points
de la tranche analyse devrait tre une puissance de 2. An d'viter les eets de
bords de la tranche qui peuvent conduire un talement spectral, il est ncessaire
d'eectuer pralablement un fentrage de la tranche. Ces oprations sont ralises
l'aide des commandes suivantes :

195

6.

Analyse de la parole

stHm = st.*Hamming(Npoints) ;
spectre = fft(stHm) ;
spectre = spectre(1 :Ndemi) % limitation fe/2
module = abs(spectre) ; phase = angle(spectre) ;
plot(frequence,20*log10(abs(spectre)) ;
Une illustration de sons voiss et non voiss est donne dans les gures 7.6 et 7.7.
On notera les raies spectrales bien visibles dans le spectre du signal vois et, en
particulier, la correspondance entre la frquence de la fondamentale et la priode du
signal vois.
4

Signal s(t) = "ou"

x 10

1
0
1
2
3
4

0.01

0.02

0.03

0.04

Spectre de s

0.05

0.06

0.07

0.08

3000

3500

4000

(t) = "ou"

hm

140
120
100
80
60
40

500

1000

1500

2000

2500

Fig. 6.2.: Signal vois et son spectre

6.5. Recherche du pitch


6.5.1. Filtrage du signal
Comme on l'a dit plus haut, on admet gnralement que la priode du pitch de la voix
humaine est comprise entre 2 et 20 msec. Le domaine spectral qui nous proccupe ici
est donc infrieur 500 Hz. Il est ainsi prfrable, puisqu'on s'intresse un signal
dont le spectre est limit, de commencer par liminer les frquences suprieures
500 Hz. Ceci peut tre fait l'aide d'un ltre numrique passe-bas ; celui-ci est
gnralement du type Butterworth et d'ordre 8 :

fc = 500 ; fn = fe/2 ; ordre = 8 ;


[nbtw dbtw] = butter(ordre, fc/fn) ;
stf = filter(nbtw, dbtw, st) ;

196

6.5. Recherche du pitch


4

1.5

Signal s(t) = "jj"

x 10

1
0.5
0
0.5
1
1.5
2

0.01

0.02

0.03

0.04

Spectre de s

0.05

0.06

0.07

0.08

3000

3500

4000

(t) = "jj"

hm

120
110
100
90
80
70
60

500

1000

1500

2000

2500

Fig. 6.3.: Signal non vois et son spectre

6.5.2. Autocorrlation
On a vu que la tranche considre est priodique si le son est vois et alatoire dans
le cas contraire. An de faciliter la recherche de la priode, on travaille de prfrence
avec la fonction d'autocorrlation car celle-ci est gnralement moins bruite que le
signal lui-mme (gure 6.4).
Le rsultat de l'autocorrlation est un vecteur de longueur

2N

avec un maximum

en son milieu. Si le signal est priodique, d'autres pics distants de la valeur du pitch
seront prsents. Pour trouver ce dernier, il sut donc de mesurer la distance entre
pics successifs.
Les commandes sont alors les suivantes :

% autocorrlation d'une tranche st filtre


rss = real(xcorr(stf))/Npoints ;
[rssmax k0] = max(rss) ;
% k0 = position du max central
rss = rss(k0 :length(rss)) ;
% partie droite de rss
% le 1er pic latral doit se trouver entre Tpmin et Tpmax
fpmax = 500 ;
% frquences min et max du pitch
fpmin = 50 ;
Tpmax = 1/fpmin ;
% priodes min et max du pitch
Tpmin = 1/fpmax ;
kpmin = round(Tpmin/Te) ;
% compteurs lis Tpmin et Tpmax
kpmax = round(Tpmax/Te) ;

197

6.

Analyse de la parole

% recherche du premier pic


rss = rss(kpmin :kpmax) ;
[ymax k1] = max(rss) ;

% domaine limit par Tpmin et Tpmax


% k1 = position du 1er max latral

% entier correspondant la priode du pitch

kp = kpmin + k1 ;
Tp = kp * Te ;

Signal s(t) = "ou" filtr fc = 0.5 [kHz]

x 10

1
0
1
2
3

0.01

0.02

0.04

0.05

0.06

0.07

0.08

0.02

0.03

0.04

Autocorrlation de sf(t) = "ou"

0.03

x 10

1.5
1
0.5
0
0.5
1
1.5
0.04

0.03

0.02

0.01

0.01

Fig. 6.4.: Autocorrlation d'un son vois

6.6. Travail pratique


Pour aborder l'analyse de la parole, je vous propose de travailler sur la phrase Le
colibri a chant (chier colibri.txt) ou une phrase de votre choix.

6.6.1. Avec CoolEdit :


1. Chargez le chier

colibri.txt

en mode

mono / 16 bits / 8 kHz.

2. coutez la phrase ; observez le graphe temporel et le spectre (Analyze/Frequency

Analysis)

de diverses parties de la phrase ; notez que le temps peut tre gra-

du en secondes ou en chantillons avec le bouton droit de la souris plac sur


l'axe temporel.

198

6.6. Travail pratique


Signal s(t) = "jj" filtr fc = 0.5 [kHz]

x 10

0.5

0.5

0.01

0.02

0.03

0.05

0.06

0.07

0.08

0.02

0.03

0.04

Autocorrlation de sf(t) = "jj"

1.5

0.04

x 10

1
0.5
0
0.5
1
0.04

0.03

0.02

0.01

0.01

Fig. 6.5.: Autocorrlation d'un son non vois

3. Sur le spectrogramme (View/Spectral


d'analyse

View),

observez l'eet de la dure

sur les rsolutions temporelle et frquentielle en prenant 128,

256 et 512 chantillons (Options/

Settings/ Spectral).

4. Qu'en est-il de la relation liant les rsolutions temporelle et spectrale ? quelle


dure d'analyse choisissez-vous ?
5. Mentionnez tous les phonmes que l'on trouve dans cette phrase ; quelles
familles appartiennent-ils ?
6. Relevez les numros d'chantillons correspondant au dbut et la n des
phonmes.
7. Dans l'enregistrement, choisissez librement au moins deux tranches voises et
non voises.
8. Observez leurs spectres et spectrogramme puis analysez plus en dtail leurs
caractristiques temporelles et spectrales.

6.6.2. Avec Matlab


Procdez l'analyse dtaille de plusieurs tranches voises / non voises et tentez
de les sparer automatiquement. Pour cela :
1. Extrayez de la phrase les zones que vous souhaitez analyser.
2. Mesurez leur valeur ecace et taux de passages par zro (< 100% !).
3. Recherchez la priode du signal avec la fonction de corrlation.

199

6.

Analyse de la parole

4. Voyez-vous un moyen de sparer automatiquement les sons voiss / non voiss ?

200

Bibliographie
[1] R. Boite et al.,

Traitement de la parole, PPUR,

2000

201

Bibliographie

202

7. Codage et dcodage LPC de la


parole
7.1. Introduction
Le codage linaire prdictif LPC (Linear Predictive Coding) de la parole est utilis,
en particulier, en tlphonie o il permet de transmettre les communications avec un
dbit d'environ 12 kbits/sec au lieu de 64 kbits/sec si on se contentait de numriser
la parole.
Cette forte diminution du dbit est base sur une modlisation trs simplie du
conduit vocal dont on transmet les paramtres toutes les 10 ou 20 ms.

7.2. Prdiction linaire


7.2.1. Mesure de l'erreur de prdiction
Le codage LPC consiste estimer la valeur de l'chantillon venir sur la base de
quelques valeurs mesures prcdemment

s[n k]

(gure 7.1).

s[n]

y[n] ??

n-p
Fig. 7.1.: Les chantillons

venir
La valeur estime
des coecients

ak

y[n] est

n-1

s[n p]

s[n 1]

sont utiliss pour estimer la valeur

calcule partir des chantillons prcdents pondrs par

qui sont gnralement au nombre de 8 12 :

y[n] = (a1 s[n 1] + a2 s[n 2] + + ap s[n p]) =

p
X
k=1

ak s[n k]

(7.1)

203

7.

Codage et dcodage LPC de la parole

La valeur des coecients de prdiction

e2

de l'cart

e[n].

ak

s'obtient par minimisation de la variance

Celui-ci est dni comme la dirence entre la valeur relle

et la valeur estime

y[n]

s[n]

e[n] = s[n] y[n] = s[n] +

p
X
k=1

La puissance ou variance de l'cart de l'ensemble des


dpend du choix des coecients de prdiction

ak

ak s[n k]
N

(7.2)

chantillons

e[n] disposition

et elle vaut :

!2
p
N
1
N
1
X
X
X
1
1
ak s[n k]
e2 [n] =
s[n] +
e2 (ak ) =
N n=0
N n=0
k=1

(7.3)

e (a1,a2)

a2

a1
Fig. 7.2.: Variance de l'erreur de prdiction

7.2.2. Calcul des coecients de prdiction linaire


La procdure pour obtenir la valeur optimum des coecients

ak

consiste rendre mi-

nimum la puissance de l'erreur commise lors de la prdiction. Un schma fonctionnel


traduisant cette dmarche est prsente dans la gure 7.3.
Mathmatiquement, la variance est une fonction des paramtres de prdiction

e2 = e2 (a1 , a2 , . . . , ap ) = e2 (ak )

ak

(7.4)

Sa valeur minimum s'obtient donc lorsque l'ensemble des drives partielles de


par rapport aux paramtres

ak

e2

sont nulles :

2
e,min

204

e2 (ak )
= 0, k = 1, . . . , p
ak

(7.5)

7.2. Prdiction linaire


s[n]

y[n]

a z

k -k

ak

1
N

e2

e2[n]

e2

Minimisation
de e2

Fig. 7.3.: Schma fonctionnel de la prdiction linaire

Le calcul de ces
inconnus

ak

drives partielles conduisent

quations pour les

paramtres

(voir annexe 7.9) :

a1 rss [0] + a2 rss [1] + + ap rss [1 p] = rss [1]


a1 rss [1] + a2 rss [0] + + ap rss [2 p] = rss [2]
.
.
.

.
=
.
a1 rss [p 1] + a2 rss [p 2] + + ap rss [0] = rss [p]
avec :

rss [m] =

N
1
X
n=0

s[n]s[n m], m = 1, . . . , p

ak sont les p premires valeurs


s[n] comportant N chantillons.

Les coecients des paramtres


tocorrlation

rss [m]

du signal

(7.6)

de la fonction d'au-

Cet ensemble d'quations linaires peut s'crire sous forme matricielle :

Rss a = rss
o
et

Rss est la matrice p p


a le vecteur p 1 des

d'autocorrlation,

rss

(7.7)
le vecteur

p1

d'autocorrlation

paramtres de prdiction. On notera que, la fonction

d'autocorrlation tant paire, la matrice

Rss

est symtrique. On voit donc que les

coecients de prdiction linaire peuvent s'obtenir par inversion de la matrice

a = R1
ss rss

Rss

(7.8)

L'estimation de la valeur venir sera d'autant meilleure que le nombre de points

utiliss pour calculer la fonction d'autocorrlation

des paramtres
(N

200)

valeurs de

ak

rss [m]

se fait donc aprs analyse d'une tranche

alors que le calcul de la valeur venir

y[n]

sera lev. L'valuation

tk

susamment longue

n'utilise que les

dernires

x[n].

Il est important de relever que si les points

s[n] ne sont pas corrls entre eux, aucune

prvision n'est possible (cas du bruit blanc). Pour plus d'informations, on consultera
avantageusement la rfrence [1].

205

7.

Codage et dcodage LPC de la parole

7.2.3. Interprtation de la prdiction linaire


Dans ce qui prcde, le signal

e[n]

a t considr comme une erreur de prdiction

dont on a minimis la variance pour calculer les coecients de prdiction linaire

ak .

Sa dnition tait la suivante :

e[n] = s[n] y[n] = s[n] +


Appliquant la transformation en

p
X
k=1

ak s[n k]

cette quation, on en tire la relation suivante :


E(z) = S(z) 1 + a1 z 1 + a2 z 2 + + ap z p = S(z)A(z)

Elle montre que l'on peut reconstruire le rsidu

s[n]

(7.9)

l'aide d'un ltre non rcursif reprsent

(7.10)

e[n] de l'estimation partir du signal


par la fonction de transfert A(z).

Une deuxime reprsentation, plus fructueuse,

S(z) = E(z)

1 + a1

z 1

1
1
= E(z)
2
p
+ a2 z + + ap z
A(z)

(7.11)

e[n] peut tre considr comme un signal


s[n] avec l'aide d'un ltre rcursif tous ples
codage LPC de la parole, le signal d'excitation e[n]

met en vidence le fait que le rsidu


d'excitation servant crer le signal

H(z) = 1/A(z).

Dans le cas du

est choisi priodique pour les sons voiss et alatoire pour les sons non voiss.

7.3. Modle du conduit vocal


La production de sons met en oeuvre un certain nombre de muscles modiant la
forme du conduit vocal dans lequel circule un ux d'air. On y trouve les cordes
vocales qui vibrent pour les sons voiss et restent au repos pour les sons non voiss.
Viennent en suite le pharynx et la cavit buccale en parallle avec la cavit nasale.
La forme de ces parties est constamment modie pour crer le message sonore.
Le modle gnralement adopt pour crer articiellement des sons est grossier par
rapport la complexit du systme phonatoire mais il est tout fait satisfaisant
pour les besoins de la tlphonie. Ce modle comprend (gure 7.4) :
 un gnrateur priodique d'impulsions unit ;
 un gnrateur de nombres alatoires valeur moyenne nulle et variance unit ;
 un commutateur servant choisir les sons voiss ou non ;
 un gain proportionnel la valeur ecace du signal
 un ltre tous ples

s[n] ;

H(z) = 1/A(z).

Comme les sons voluent constamment, le gnrateur et le ltre doivent tre modis
en permanence. L'extraction de ces paramtres du gnrateur et du ltre constituent
le codage de la parole. A l'mission, on dcompose le son en tranches pour en extraire
les paramtres qui seuls seront transmis. A la rception, chaque tranche du signal
sonore est reconstruite partir des paramtres du gnrateur et du ltre.

206

7.3. Modle du conduit vocal


Suite
dimpulsions

e[n]

y[n] s[n]

gain
A(z)

NV
Bruit
blanc

Fig. 7.4.: Modle du conduit vocal

L'analyse de la parole se fait par tranches de 20 30 msec. Dans le cas o la


frquence d'chantillonnage est de 8 kHz, chaque tranche comporte donc 160 240
chantillons. C'est partir de ces chantillons que l'on dcide si le son est vois ou
non et que l'on calcule le gain et les paramtres du ltre.
Pour assurer une certaine continuit du signal sonore, les tranches successives peuvent
tre dcales d'une valeur infrieure leur dure (gure 7.5). Gnralement, ce dcalage est de 10 msec (80 chantillons).

N-1

0
tranche t2 de longueur N
tranche t1 de longueur N

t0

t1

Fig. 7.5.: Dcoupage en tranches

t2

tk

du signal

s[n]

Dans le cas o l'on doit eectuer une analyse spectrale l'aide de la FFT, il est
prfrable de travailler avec des tranches dont le nombre de points est une puissance
de 2, gnralement 128 ou 256. La dure des tranches est alors de 16 ou 32 msec et
le dcalage de 8 msec (64 chantillons).
Considrant que les sons voiss ont un contenu priodique bien marqu, le problme
rsoudre consiste trouver la priode de la composante fondamentale et dcider
si le son analys est vois ou non. Cette priode (communment appele le pitch),
est un paramtre important pour la synthse de la parole car l'oreille est sensible
ses variations.
On a observ que la frquence de la fondamentale se situe entre 40 Hz et 250 Hz
pour les voix masculines alors qu'elle est comprise entre 150 Hz et 700 Hz pour les
voix fminines. De manire gnrale, on admettra donc qu'un son est vois si sa
priode ou le pitch est compris entre 2 msec et 20 msec.

207

7.

Codage et dcodage LPC de la parole

7.4. Analyse du signal


Aprs avoir enregistr une phrase ou un son, celui-ci doit tre sauvegard dans un
chier *.txt de type ASCII an de pouvoir tre lu par MatLab. Il ne doit contenir
aucune autre information que les valeurs chantillonnes du signal.
Le chier *.txt comportera une colonne de N valeurs chantillonnes. Il sera lu par
MatLab sous la forme d'un vecteur dont l'amplitude sera normalise 1 :

[filename,path] = uigetfile('*.txt','Choix de la phrase') ;


phrase = load(filename) ;
phrase = phrase/max(abs(phrase)) ;
Par la suite, on dsignera une tranche l'aide de la variable

st.

La tranche dsire

peut tre slectionne en prenant une partie des composantes du vecteur

phrase

avec la commande

st = phrase(Ndebut :Nfin) ;
st = st - mean(st) ;

% suppression de la valeur moyenne

Si une analyse spectrale doit tre faite, on choisira de prfrence une tranche de
longueur gale une puissance de 2. Par exemple, 128 ou 256.

7.4.1. Initialisation
La visualisation du signal temporel et de son spectre dbute par l'initialisation de
quelques variables, la suppression de la valeur moyenne et le calcul de la valeur
ecace :

fe = 8e3 ; Te = 1/fe ;
Npoints = length(st) ;
temps = Te*(0 :Npoints-1) ;
duree = Npoints*Te ;
df = 1/duree ;
Ndemi = fix(Npoints/2) ;
frequence = df*(0 :Ndemi-1) ; % 0 <= frequence < fe/2

7.4.2. Spectre
L'analyse spectrale se fait l'aide de la FFT. Idalement, le nombre de points de la
tranche analyse devrait tre une puissance de 2. Si cela n'est pas possible, il faudra
tre critique par rapport aux rsultats obtenus.
An d'viter les eets de bords de la tranche qui peuvent conduire un talement
spectral, il est ncessaire d'eectuer pralablement un fentrage de la tranche. Ces
oprations sont ralises l'aide des commandes suivantes :

208

7.5. Analyse LPC


stHm = st.*Hamming(Npoints) ;
spectre = fft(stHm) ;
spectre = spectre(1 :Ndemi) % limitation fe/2
module = abs(spectre) ; phase = angle(spectre) ;
plot(frequence,20*log10(abs(spectre)) ;
Une illustration de sons vois et non vois est donne dans les gures 7.6 et 7.7.
4

Signal s(t) "ou"

x 10

1
0
1
2
3
4

0.01

0.02

0.03

0.04

Spectre de s

0.05

0.06

0.07

(t) "ou"

hm

140
120
100
80
60
40

500

1000

1500

2000

2500

3000

3500

4000

Fig. 7.6.: Signal vois et son spectre

7.5. Analyse LPC


Celle-ci fournit les coecients de prdiction linaire et la variance (la puissance) de
l'erreur de prdiction :

NbCoeff = 12 ;
[coeff Perreur] = lpc(st, NbCoeff) ;

7.5.1. Valeur ecace et gain


Pour valuer l'amplitude des signaux synthtiss, on calcule la valeur ecace de la
tranche considre

Seff = std(st) ; % valeur efficace du signal

209

7.

Codage et dcodage LPC de la parole

Signal s(t) "j"

x 10

0.5

0.5

0.01

0.02

0.03

0.04

Spectre de s

0.05

0.06

0.07

(t) "j"

hm

110
100
90
80
70
60
50

500

1000

1500

2000

2500

3000

3500

4000

Fig. 7.7.: Signal non vois et son spectre

Cette valeur ecace peut reprsenter le gain de la fonction de transfert du conduit


vocal :

gain = Seff ;

7.5.2. Fonction de transfert H(z) du conduit vocal


Les coecients LPC reprsentent un polynme en

z 1

qui n'est autre que le dno-

minateur de la fonction de transfert du conduit vocal :

H(z) =

1 + a1

z 1

gain
+ a2 z 2 + + ap z p

(7.12)

Comme le conduit vocal est par essence stable, les ples doivent se trouver l'intrieur du cercle de rayon unit.
La donne de la fonction de transfert sous la forme d'un produit de fonctions biquadratiques et le trac des zros et des ples dans le plan complexe (gure 7.8)
s'obtiennent avec les commandes suivantes :

Hz = tf(gain, coeff) ;
zpk(Hz) ;
zplane(roots(gain), roots(coeff)) ;

210

7.6. Recherche du pitch

7.5.3. Rponse frquentielle du conduit vocal


La rponse frquentielle du conduit vocal s'obtient avec :

[Hf ff] = freqz(gain, coeff, Ndemi,fe) ;


Au trac de cette rponse frquentielle, on peut superposer le spectre du signal
(gure 7.9) :

plot(ff,20*log10(abs(Hf)),frequence,20*log10(abs(spectre))) ;
Position des ples
1
0.8
0.6

Partie imaginaire

0.4
0.2
0
0.2
0.4
0.6
0.8
1
1

0.5

0
Partie relle

0.5

Fig. 7.8.: Ples de la fonction de transfert reprsentant le conduit vocal

7.6. Recherche du pitch


7.6.1. Filtrage du signal
Comme on l'a dit plus haut, la priode du pitch est comprise entre 2 et 20 msec.
Le domaine spectral qui nous proccupe ici est donc infrieur 500 Hz. Il est ainsi
prfrable, avant de poursuivre l'analyse, de commencer par liminer les frquences
suprieures 500 Hz l'aide d'un ltre passe-bas de Butterworth, gnralement
d'ordre 8.

fc = 500 ; fn = fe/2 ; ordre = 8 ;


[nbtw dbtw] = butter(ordre, fc/fn) ;
stf = filter(nbtw, dbtw, st) ;

211

7.

Codage et dcodage LPC de la parole

Rponse frqentielle du conduit vocal


130
120

[dB]

110
100
90
80
70

500

1000

1500

2000

2500

3000

3500

4000

3000

3500

4000

Spectre de s(t) et conduit vocal


140
120

[dB]

100
80
60
40

500

1000

1500

2000
frquence [Hz]

2500

Fig. 7.9.: Rponse frquentielle du conduit vocal et spectre du signal

7.6.2. Recherche du signal d'excitation e[n]


Nous avons vu dans la section 7.2.3 que le rsidu

e[n]

de la prdiction linaire peut

tre considr comme le signal d'excitation servant crer le signal


travers le ltre rcursif :

H(z)
Puisque, dans notre cas, le signal
le rsidu

e[n]

s[n]

1
S(z)
=
E(z)
A(z)

s[n] est

en passant

(7.13)

connu, on peut par ltrage inverse obtenir

E(z) = A(z)S(z)
ce qui revient convoluer les coecients

ak a[n]

e[n] = a[n] s[n]

(7.14)
avec le signal

s[n]

:
(7.15)

Dans MatLab, cela s'crit simplement

en = conv(coeff, stf) ;

7.6.3. Autocorrlation de e[n]


On a vu que le signal d'excitation est priodique si le son est vois et alatoire
dans le cas contraire. Comme le signal est passablement bruit, la recherche de la
priode est grandement facilite si on l'eectue sur la fonction d'autocorrlation de

e[n]

212

plutt que sur le signal lui-mme (gure 7.10).

7.6. Recherche du pitch


Le rsultat de l'autocorrlation est un vecteur de longueur

2N

avec un maximum

en son milieu. Si le signal est priodique, d'autres pics distants de la valeur du pitch
seront prsents. Pour trouver ce dernier, il sut donc de mesurer cette distance.
Les commandes sont les suivantes :

% autocorrlation des rsidus


ree = real(xcorr(en))/Npoints ;
[reemax k0] = max(ree) ;
% maximum central
ree = ree(k0 :length(ree)) ;
% partie droite de ree
% le 1er pic latral doit se trouver entre Tpmin et Tpmax
fpmax = 500 ; fpmin = 50 ;
% frquences min/max du pitch
Tpmax = 1/fpmin ; Tpmin = 1/fpmax ; % priodes min et max du pitch
kpmin = round(Tpmin/Te) ; kpmax = round(Tpmax/Te) ;

% recherche du premier pic

ree = ree(kpmin :kpmax) ; % domaine temporel limit par Tpmin et Tpmax


[reemax1 k1] = max(ree) ; % k1 = position du 1er max latral

% entier correspondant la priode du pitch Tp = Kp * Te

Kp = kpmin + k1 ;

Signal dexcitation e(t)


1000
500
0
500
1000
1500
2000

0.02

0.04

0.06

0.08

0.1

0.12

0.02

0.04

0.06

Autocorrlation de e(t)
300

200

100

100
0.06

0.04

0.02

Fig. 7.10.: Rsidus de la prdicion linaire et autocorrlation (son vois)

213

7.

Codage et dcodage LPC de la parole

7.6.4. Critres de dcision


Les lments pouvant contribuer la dcision vois/non vois sont la valeur ecace
de la tranche, son taux de passages par zro et l'amplitude du premier maximum
latral de la fonction d'autocorrlation des rsidus.
Pour les

sons voiss , on a en eet observ qu'en moyenne

1. l'amplitude du signal est leve ;


2. le taux de passages par zros est faible ;
3. le premier pic latral de la fonction d'autocorrlation des rsidus est bien
marqu.

Taux de passages par zro

Le taux de passages par zro est dni comme le

rapport entre le nombre de passages par zro et le nombre d'chantillons considrs

nzx =

Nzx
Nech

Le nombre passages par zro peut se calculer comme suit :

function [Nzx] = zcross(xt)

xz = xt - mean(xt) ;

xz = (1+sign(xz))/2 ;
xz = diff(xz) ;
Nzx = sum(abs(xz)) ;

Fonction de corrlation

% transformation en un signal binaire 0 / 1


% derivee du signal binaire = +/- 1
% nombre de passages par 0

Pour les sons voiss, l'amplitude du premier pic latral

est souvent suprieure au tiers de celle du pic central. Il est moins marqu pour les
sons non voiss.

Choix des seuils

Sur la base d'analyses statistiques, on xe les seuils approximatifs

suivants

SeuilXeff = 0.05 ;

Priode du pitch

SeuilZcross = 0.3 ;

SeuilCorrel = 0.3 ;

Tenant compte des lments ci-dessus, le calcul du pitch se fait

comme suit

voise = (Seff > SeuilXeff) & (Nzx < SeuilZcross) & (reemax1 > SeuilCorrel*reemax) ;

if ~voise

Kp = 0 ; % le son n'est pas vois


end ;

214

7.7. Synthse d'un son

7.7. Synthse d'un son


La synthse d'un son consiste utiliser les paramtres obtenus ci-dessus pour synthtiser une tranche aprs l'autre. Il faudra donc crer le signal d'excitation (priodique ou bruit selon que le signal est vois ou non), le ltrer travers la fonction
de transfert

H(z)

et adapter son amplitude. Les commandes sont les suivantes :

% gnration des impulsions de priode Kp = Tp / Te


if Kp = 0
for k=1 :Npoints
if mod(k,Kp) == 0
xt(k) = -1 ;
else
xt(k) = 0 ;
end ; % if
end ; % for
xt(1) = -1 ; % 1re impulsion non-nulle
end ; % if Kp ...
% gnration d'un bruit de longueur Npoints
if Kp == 0
xt=2*(rand(Npoints,1)-0.5) ;
end ; % if
% synthse du son
yt = filter(1, coeff, xt) ;
% adaptation de l'amplitude
Seff = std(st) ; % valeur efficace du signal original
Yeff = std(yt) ; %valeur efficace du signal synthtis
gain = Seff/Yeff ;
yt = yt*gain ;
On notera qu'avec MatLab il est galement possible d'couter directement des sons
grce la fonction sound ou soundsc. Par exemple :

soundsc (yt, fe) ;

7.7.1. Signaux rel et synthtique


La gure 7.11 montre les rsultats de la synthse d'un phonme vois. Ces dirences visuelles nous paraissent dicilement acceptables. Il ne faut cependant pas
oublier que la parole est un message trs redondant et que seule l'coute de la phrase
synthtise permet de juger de la qualit du codage LPC.

215

7.

Codage et dcodage LPC de la parole

7.7.2. Mise en valeur des rsultats


An de faciliter l'analyse critique des rsultats obtenus, il est pratique de runir sur
une ou deux gures les graphes signicatifs de la synthse d'une phrase. Les gures
7.12 et 7.13 illustrent les rsultats du codage et dcodage de la phrase 

allez-vous ? .

Comment

Signal original

x 10

1
0
1
2
3
4

0.02

0.04

0.06

0.08

0.1

0.12

0.08

0.1

0.12

Signal synthtique

x 10

1
0
1
2
3
4

0.02

0.04

0.06
Spectre original

140
120
100
80
60
40

500

1000

1500

2000

2500

3000

3500

4000

3000

3500

4000

Spectre du signal synthtique


140
120
100
80
60
40

500

1000

1500

2000

2500

Fig. 7.11.: Signaux rel et synthtique avec leurs spectres respectifs

216

7.7. Synthse d'un son


comment.txt

L = 256 t = 32 [ms]
tr

Original

1000

2000

3000

4000

5000

6000

7000

1000

2000

3000

4000

5000

6000

7000

1000

2000

3000

4000

5000

6000

7000

Synth.

Excit.

1
0
1

Gain

0.5

10

15

20

25

Fig. 7.12.: Signaux, excitation et gain

comment.txt

x 10

L = 256 t = 32 [ms]
tr

eff

10

15

20

25

10

15

20

25

10

15

20

25

10

15

20

25

Zcross

0.5

0.5

xx1

/R

xx0

Pitch [Hz]

300
200
100
0

Fig. 7.13.: volution des paramtres

217

7.

Codage et dcodage LPC de la parole

7.8. Travail pratique


Le codage de la parole consiste en l'extraction des paramtres tudis ci-dessus,
savoir les coecients de prdiction linaire, la priode du pitch et le gain du ltre.
Ces paramtres sont ensuite transmis vers le rcepteur qui en eectuera le dcodage
en reconstituant le signal sonore. An d'y parvenir, il faut reprendre une partie des
lments prsents plus haut et les placer dans un programme squentiel dont la
structure vous est donne ci-dessous.

7.8.1. Codage et dcodage d'une phrase


Crez un chier Matlab vous permettant de coder puis dcoder la phrase du chier
colibri.txt en vous inspirant de la structure suivante :

Codage
%
%
%
%

prparation de l'espace Matlab


lecture de la phrase coder et normalisation entre +/- 1
initialisation de la longueur et du nombre de tranches
initialisation des constantes et vecteurs ncessaires aux calculs

% rpter jusqu' la dernire tranche


% choix de la trancher coder
% analyse lpc de la tranche et calcul du gain
% recherche du signal d'excitation
%% suppression des frquences suprieures fmax du pitch
%% filtrage inverse pour obtenir l'excitation e(t)
% recherche de la priode d'excitation Kp
%% autocorrlation de e(t) => ree
%% limitation de ree entre Tpmin et Tpmax
%% dcision : vois ou non
% concatnation dans une matrice des coefficients, gains et priodes
% fin de la boucle rpter

Dcodage
% lecture de la matrice contenant tous les paramtres
% extraction du vecteur contenant les gains
% extraction du vecteur contenant les priodes Kp
% rpter jusqu' la dernire tranche
% si Kp > 0 : gnration des impulsions de priode Kp
% si Kp = 0 : gnration du bruit entre +1 et -1
% synthse du son y(t)
% ajustage de l'amplitude Veff
% concatnation des tranches

218

7.8. Travail pratique


% fin de la boucle rpter
% limitation de l'amplitude +/- 1
% traage des signaux intressants
Pour comparer le signal original avec le signal synthtis, il peut tre intressant de
les transfrer simultanment vers CoolEdit dans un chier

*.txt

de type ASCII.

On peut, par exemple, envoyer le signal original vers le canal gauche et le signal
synthtis vers la droite :

% fichier CoolEdit : gauche = original, droite = synthse


signaux = 32e3*[original synthese] ;
save fichier.txt signaux -ascii -tabs
Lors du chargement du chier avec CoolEdit, on prcisera que l'on souhaite travailler
en mode strophonique.

7.8.2. Analyse des rsultats


Dbit d'informations

Ayant termin le codage et apprci la qualit des rsultats

obtenus, il est intressant de calculer le taux de compression ainsi obtenu. Pour ce


faire, considrant que les informations transmises sont codes 8 bits,
1. faites la liste des informations transmises aprs codage LPC ;
2. quel rythme sont-elles transmises ?
3. calculez le nombre de bits ncessaires pour chacune d'entre elles ;
4. calculez le dbit d'informations et le taux de compression obtenu par rapport
un codage 8 bits de la parole non code.

Modications du codage
1. Qu'est-ce qui change si l'excitation est purement alatoire (Kp

= 0 pour toutes

les tranches) ?
2. Plutt que de rechercher et transmettre le pitch de chaque tranche, on peut,
chaque instant d'chantillonnage, transmettre le signe du rsidu

e(n) et l'utili-

ser comme signal d'excitation. Que pensez-vous du rsultat de cette synthse


trs simple ?

7.8.3. Analyse et amlioration de la synthse


Vous ne serez srement pas satisfait des rsultats obtenus au premier essai. Essayez
d'apporter des modications votre algorithme. Par exemple :
 Avez-vous pens au fait que les conditions nales d'une tranche doivent tre les
conditions initiales de la suivante ?
 Le compteur de pitch doit-il tre propre chaque tranche ou global ?

219

7.

Codage et dcodage LPC de la parole

 Faut-il augmenter le nombre de paramtres ?


 Essayez de varier les seuils de dtection du pitch.
An de mieux saisir les possibilits d'amlioration, slectionnez une tranche qui vous
parat intressante. Puis sur celle-ci, tentez de comprendre o se situent les dicults
et observez les eets de vos modications.
Malgr tous vos essais, il est peu probable que vous atteigniez la qualit de la tlphonie mobile. En eet, bien que celle-ci soit base sur le codage LPC, on a d,
pour des raisons de qualit du son, amlior l'analyse et la restitution du signal
d'excitation. Vous trouverez plus d'informations dans la rfrence [2].

7.9. Minimisation de l'cart quadratique


Nous avons vu que la puissance ou variance de l'cart de l'ensemble des
tillons

e[n]
ak

prdiction

disposition avec
et qu'elle vaut :

0 n N -1

chan-

dpend du choix des coecients de

!2
p
N
1
N
1
X
X
X
1
1
ak s[n k]
e2 [n] =
s[n] +
e2 (ak ) =
N n=0
N n=0
k=1

(7.16)

e (a1,a2)

a2

a1
Fig. 7.14.: Variance de l'erreur de prdiction

Mathmatiquement, la variance est donc une fonction des paramtres de prdiction

ak

220

7.9. Minimisation de l'cart quadratique


e2 = e2 (a1 , a2 , . . . , ap ) = e2 (ak )

(7.17)

et les valeurs des paramtres correspondant sa valeur minimum s'obtiennent en


2
annulant l'ensemble des drives partielles de e par rapport aux paramtres ak :

e2 (ak )
= 0, k = 1, . . . , p
ak

(7.18)

La drivation de l'quation (7.16) s'eectue comme suit :

1
2

e2 (ak )
ak

1 1
2 ak N
1 1
2N

N
1
X

s[n] +

s[n] +
p
X

m=1

s[n] +

p
X

m=1

N 1
1 X
=
N n=0

p
X

m=1

s[n] +

N 1
1 X
=
N n=0

p
X

m=1

n=0


ak
n=0

N 1
1 X
=
N n=0

1
=
N

N
1
X

am s[n m]

am s[n m]

am s[n m]

am s[n m]

p
X

m=1

!2

s[n] s[n k] +

N
1
X

!2

ak

s[n] +

p
X

m=1

(0 + s[n k])

!!

am s[n m]

!!

am s[n m] s[n k]

N 1
2 X
am
s[n] s[n k] +
s[n m] s[n k]
N
m=1
n=0
n=0

= rss [k] +

p
X

m=1

am rss [k m]

L'annulation de ce rsultat donne

p
X

m=1
qui reprsente

am rss [k m] = rss [k],

quations pour les

1kp

paramtres inconnus

am

a1 rss [0] + a2 rss [1] + + ap rss [1 p] = rss [1]


a1 rss [1] + a2 rss [0] + + ap rss [2 p] = rss [2]
.
..

..
=
a1 rss [p 1] + a2 rss [p 2] + + ap rss [0] = rss [p]
avec :

rss [k] =

N
1
X
n=0

s[n]s[n k], k = 1, . . . , p

(7.19)

221

7.

Codage et dcodage LPC de la parole

On voit ainsi que les coecients des inconnues


fonction d'autocorrlation

rss [k]

du signal

s[n]

ak

sont les

p premires valeurs
N chantillons.

de la

comportant

Cet ensemble d'quations linaires peut s'crire sous forme matricielle :

Rss a = rss
o
et

Rss est la matrice p p


a le vecteur p 1 des

d'autocorrlation,

rss

(7.20)
le vecteur

p1

d'autocorrlation

paramtres de prdiction. On notera que, la fonction

d'autocorrlation tant paire, la matrice

Rss

est symtrique.

On voit donc que les coecients de prdiction linaire peuvent s'obtenir par inversion
de la matrice

222

Rss

a = R1
ss rss

(7.21)

Bibliographie
Traitement de la parole, PPUR, 2000
B. Porat, A Course in Digital Signal Processing, John Wiley, 1997
J.R. Deller, J.G. Proakis,J.L Hansen, Discrete-Time Processing of Speech Signals, Macmillan, 1993
V.K. Ingle, J.G. Proakis, Digital Signal Processing Using MatLab, PWS, 1997
C.S. Burrus et all, Computer-Based Exercises for Signal Processing Using MatLab, Prentice Hall, 1994

[1] R. Boite et al.,


[2]
[3]

[4]
[5]

223

Bibliographie

224

8. Introduction au ltrage
adaptatif
Le ltrage adaptatif est bas sur la recherche de paramtres optimaux par minimisation d'un critre de performance. Frquemment, cette minimisation se fait en
recherchant les moindres carrs. tant donn le cadre dans lequel cette prsentation
est faite, il est ncessaire d'introduire quelques lments pralables.
On commencera donc par rappeler quelques dnitions d'estimateurs statistiques
puis on montrera ce que sont la rgression linaire et le ltrage de Wiener avant de
parler du ltrage adaptatif proprement dit.

8.1. Notions de probabilits


8.1.1. Dnitions de quelques estimateurs statistiques
Considrant une variable alatoire relle

z,

on la caractrise gnralement l'aide

des grandeurs suivantes :


1. Sa

valeur moyenne :

N 1
1 X
z = lim
z(n)
N N
n=0

On notera que la valeur moyenne

(8.1)

reprsente la composante continue du

signal autour de laquelle prennent place les uctuations.


2. Sa

puissance moyenne :
Pz = z 2

3. Sa

variance

N 1
1 X 2
z (n)
= lim
N N
n=0

(8.2)

qui mesure la puissance des uctuations autour de la valeur

moyenne

z2 =
=

lim

lim

N 1
1 X
(z(n) z )2
N n=0

N 1

1 X 2
z (n) 2z z(n) + 2z
N n=0

= z 2 2z z + 2z = z 2 22z + 2z

225

8.

Introduction au filtrage adaptatif

qui vaut nalement

z2 = z 2 2z

4. Son

(8.3)

cart-type (ou dviation standard) dni comme la racine carre de la

variance :

z =

z 2 2z

(8.4)

Sa valeur est gale la valeur ecace des variations du signal autour de la


valeur moyenne.
Il est intressant de noter que la puissance moyenne (z 2 ) de la variable

peut

galement s'crire sous la forme

z 2 = 2z + z2

(8.5)

On voit ainsi que la puissance de la variable z 2 est gale la puissance de sa valeur


2
2
moyenne z plus la puissance de ses uctuations z .

8.1.2. Remarques
1. Il est intressant de relever que si l'on considre une notation vectorielle du
type :

z = [z(0), . . . , z(N 1)],

zT =

z(0)
..
.

z(N 1)

la puissance s'crit simplement sous la forme d'un produit scalaire :

Pz =

N 1
1
1 X 2
z (n) =
z zT
N n=0
N

(8.6)

2. De mme, l'indpendance (ou la non correspondance) de deux signaux ou


vecteurs peut se mesurer avec le produit scalaire :

r = xy =

N
1
X

x(n) y(n)

(8.7)

n=0

Dans le cas o les signaux sont orthogonaux (c'est dire indpendants),

x yT

sera nul alors que si les signaux sont fortement dpendants (ou ressemblants),
T
la valeur du produit x y sera proche de son maximum.

8.1.3. Fonction de rpartition et densit de probabilits


Dans le cas d'une variable alatoire continue x, on dnit la probabilit d'avoir la
x0 infrieure une valeur x donne

valeur mesure

P (x) prob(x0 < x)

226

(8.8)

8.1. Notions de probabilits


Cette fonction porte le nom de fonction de rpartition la variable

La probabilit d'avoir la valeur mesure

x.

comprise entre deux valeurs

et

x + x

vaut donc

P (x < x0 < x + x) = P (x0 < x + x) P (x0 < x)

(8.9)

Cette relation permet de dnir la densit de probabilit

P (x < x0 < x + x)
dP (x)
=
x0
x
dx

p(x) lim

(8.10)

et d'en tirer la fonction de rpartition

P (x) =

p(x) dx

(8.11)

avec comme proprit vidente

P ( < x0 < +) = P () = 1

(8.12)

C'est la densit de probabilit qui est gnralement utilise comme modle de pour
dcrire la rpartion des valeurs d'une variable alatoire. partir de celle-ci, on peut
calculer la valeur moyenne, la variance et la puissance d'une variable

x =
x2 =
x2 =

l'aide de

Z +

Z +

x p(x) dx

(8.13)

(x x )2 p(x) dx

(8.14)

x2 p(x) dx

(8.15)

8.1.4. Modles statistiques


Les modles les plus frquemment utiliss sont
1. La

rpartition uniforme entre deux valeurs extrmes xmin et xmax


p(x) = constante =

1
1
=
xmax xmin
x

(8.16)

On montre que dans ce cas, la variance vaut

x2
(xmax xmin )2
=
=
12
12
gaussienne entre et +
x2

2. La

rpartition

(x x )2
1
exp
p(x) =
2 x2
2 x

(8.17)

(8.18)

Il est intressant de relever que que la probabilit de trouver l'intrieur des


domaines

et

3x

par rapport la valeur moyenne valent respectivement

P (|x x | < x ) = 68%

(8.19)

P (|x x | < 3x ) = 99.7%

(8.20)

227

8.

Introduction au filtrage adaptatif

Suivant les applications, on peut imaginer d'autres distributions comme par exemple
la

rpartition exponentielle dcrite par



|x x |
1
p(x) =
exp 2
x
2 x

p(x)

(8.21)

P(x)

0.8

0.6
0.4

0.5

0.2
0
4

0.8

0
4

0
x

0.6
0.4

0.5

0.2
0
4

0.8

0
4
1

0.6
0.4

0.5

0.2
0
4

0
x

0
4

Fig. 8.1.: Illustration des distributions uniforme, gaussienne et exponentielle

8.2. Rgression linaire


La rgression linaire consiste en la recherche de la droite passant au mieux parmi
un ensemble de points mesurs (gure 8.2). Le critre conduisant cet optimum
est la minimisation des distances quadratiques entre les points mesurs et la droite
optimum.
On notera que la rgression linaire s'applique aux systmes statiques alors que
l'approche de Wiener (que l'on verra dans la section suivante) sert optimiser des
systmes voluant au cours du temps.

228

8.2. Rgression linaire


J(a,b)

y(n)
ym = ax + b
e(n)

b
x(n)

a
Fig. 8.2.: Rgression linaire

8.2.1. Mesure, modle et cart


Comme on souhaite faire passer une droite parmi un ensemble de points,on se donne
un modle dont l'quation est :

ym = ax + b
L'cart de

y(n)

(8.22)

par rapport au modle s'crit donc :

e(n) = y(n) ym (n)


e(n) = y(n) (a x(n) + b)
Si l'on dcrit la mesure

y(n)

par rapport au modle

(8.23)

ym (n),

on a videmment :

y(n) = ym (n) + e(n)


On associe gnralement deux grandeurs l'cart

1. sa valeur moyenne
2. sa puissance
valeurs liant

e2 qui
y x.

(8.24)

e(n)

qui doit tendre vers 0 si le modle n'est pas biais ;

doit diminuer lorsque

et

se rapprochent des vraies

On notera que pour le calcul d'une rgression linaire, on fait l'hypothse qu'il n'y
a pas de bruit sur la valeur de la variable indpendante

x(n).

229

8.

Introduction au filtrage adaptatif

8.2.2. Minimisation de l'cart quadratique


L'obtention de la droite passant au mieux parmi les points mesurs ncessite la
recherche du minimum d'une fonction dpendant des paramtres recherchs

et

b.

Pour cela, on dnit un critre d'optimisation qui mesure la puissance ou la variance


de l'cart :

N 1
N 1
1 X
1 X 2
e (n) =
(y(n) (ax(n) + b))2
J(a, b) =
N n=0
N n=0

(8.25)

Lorsque l'cart quadratique est minimum, on a :

J(a, b)
=0
a

J(a, b)
=0
b

(8.26)

avec

N 1
1 X
J(a, b)
2 (y(n) (ax(n) + b)) (0 x(n) 0)
=
a
N n=0
N 1

2 X
=
x(n) y(n) + a x2 (n) + b x(n)
N n=0

2
=
N

N
1
X

x(n) y(n) + a

n=0

N
1
X

x2 (n) + b

n=0

N
1
X

x(n)

n=0

N 1
J(a, b)
1 X
2 (y(n) (ax(n) + b)) (0 0 1)
=
b
N n=0
N 1
2 X
=
(y(n) + ax(n) + b)
N n=0

2
=
N

N
1
X

y(n) + a

n=0

On en tire 2 quations dont les inconnues sont

230

N
1
X

x(n) +

n=0

et

N
1
X
n=0

N 1
N 1
N 1
1 X
1 X
1 X 2
x (n) + b
x(n) =
x(n) y(n)
a
N n=0
N n=0
N n=0

(8.27)

N 1
N 1
N 1
1 X
1 X
1 X
x(n) +
b =
y(n)
a
N n=0
N n=0
N n=0

(8.28)

8.3. Filtrage de Wiener

8.2.3. quations de la rgression linaire


Se souvenant de la dnition d'une valeur moyenne, on voit que les quations (8.28)
et (8.27) s'crivent plus simplement sous la forme :

a x + b = y

(8.29)

a x2 + b x = xy

(8.30)

Sous forme matricielle, cela donne :

x 1
x2 x



a
b

dont la solution est

a
b

x 1
x2 x

1 

L'inversion de la matrice et le calcul explcite de

y
xy

et

y
xy
b

donnent alors

x y xy
2x x2
x xy y x2
b=
2x x2
a=

(8.32)

(8.33)

Dans le cas particulier o la droite passe par l'origine, les valeurs moyennes

(8.31)

et

sont nulles et on a :

xy
=
a=
x2

P
xT y
x(n) y(n)
P 2
= T ,
x (n)
x x

b=0

(8.34)

8.3. Filtrage de Wiener

Dans de nombreuses applications, les signaux temporels sont entaches d'une interfrence ou d'un bruit non dsirs. Il faut alors trouver une solution permettant de
supprimer ou tout au moins rduire ces composantes perturbatrices. Dans le cas o
le spectre du signal dsir et celui du signal perturbateur se superposent, il n'est pas
possible de recourir au ltrage classique. Le ltre de Wiener apporte une solution
ce problme lorsque le processus est stationnaire.

8.3.1. Dnition du problme


On considre ici le schma de la gure 8.3 dans lequel on trouve :
1. le signal d'excitation

x(n)

connu ou mesur ;

2. le signal de sortie du processus

yp (n)

inatteignable ;

231

8.

Introduction au filtrage adaptatif

e(n)
x(n)

Processus yp(n)
inconnu

y(n)

(n)

yw(n)
wk

Minimisation
de 2
Fig. 8.3.: Filtrage de Wiener

3. le signal de sortie mesur

y(n)

entch d'une perturbation inconnue

yw (n) l'aide des paramtres wk ;


(n) entre le modle yw (n) et la mesure y(n)

e(n) ;

4. le signal modlis
5. le signal d'cart

y(n), caus par l'excitation x(n), peut tre modlis


l'aide d'un modle MA (Moving Average = moyenne glissante) d'ordre p reprsentant
On admet que le signal mesur

un processus stationnaire inconnu :

yp (n) =

p1
X
k=0

wk x(n k)
wk
y(n).

Le but poursuivi est de trouver les coecients


mesure des signaux d'entre

x(n)

et de sortie

La recherche d'une solution consiste rendre


signal

yp (n)

du modle MA partir de la

yw (n)

aussi proche que possible du

en minimisant l'erreur quadratique moyenne (

MSE) par ajustage des coecients

wk .

Mean Square Error

Il est important de bien comprendre que

si la solution exacte est trouve, le signal d'cart (n) n'est pas


nul, mais gal la peturbation e(n) de la mesure.
An d'allger l'criture de ce qui suit, on se contentera de traiter le cas particulier
o le processus est dcrit par 3 paramtres (l'extension une dimension plus grande
se fait sans dicult)

w0
W = w1
w2
232

(8.35)

8.3. Filtrage de Wiener


Dans ce cas, l'estimateur

yw (n)

du signal

yp (n)

vaut :

yw (n) = w0 x(n) + w1 x(n 1) + w2 x(n 2)

0nN 1

(8.36)

8.3.2. Rsolution au sens des moindres carrs


Le problme ainsi pos est proche de celui de la rgression linaire que l'on a tudi
pour les systmes statiques (ou sans mmoire). Dans le cas des systmes dynamiques,
les signaux voluent temporellement. L'erreur est alors une fonction du temps que
l'on cherche rduire en minimisant sa valeur quadratique moyenne ; cela se fait en

wk .

variant les coecients inconnus

On pose donc :

(n) = y(n) yw (n)


J=

N 1
1 X
(y(n) yw (n))2
N n=0

(8.37)

(8.38)

Tenant compte de l'quation (8.36), il vient

N 1
1 X
(y(n) w0 x(n) w1 x(n 1) w2 x(n 2))2
J (w0 , w1 , w2 ) =
N n=0
Le calcul des drives partielles de
inconnus

wk

(8.39)

J (w0 , w1 , w2 ) par rapport chacun des coecients

donne

N 1
J
2 X
(y(n) w0 x(n) w1 x(n 1) w2 x(n 2)) (x(n))
=
w0
N n=0

N 1
2 X
(x(n)y(n) w0 x(n)x(n) w1 x(n)x(n 1) w2 x(n)x(n 2))
N n=0

N 1
2 X
J
=
(y(n) w0 x(n) w1 x(n 1) w2 x(n 2)) (x(n 1))
w1
N n=0

N 1
2 X
(x(n 1)y(n) w0 x(n 1)x(n) w1 x(n 1)x(n 1) w2 x(n 1)x(n 2))
N n=0

N 1
2 X
J
(y(n) w0 x(n) w1 x(n 1) w2 x(n 2)) (x(n 2))
=
w2
N n=0

N 1
2 X
(x(n 2)y(n) w0 x(n 2)x(n) w1 x(n 2)x(n 1) w2 x(n 2)x(n 2))
N n=0

233

8.

Introduction au filtrage adaptatif

Tenant compte de la dnition de la fonction de corrlation

N 1
N 1
1 X
1 X
x(n) y(n + k) =
x(n k) y(n) = ryx (k)
rxy (k) =
N n=0
N n=0

(8.40)

on voit que ces trois drives s'crivent plus simplement sous la forme

J
= 2 (rxy (0) w0 rxx (0) w1 rxx (1) w2 rxx (2))
w0
J
= 2 (rxy (+1) w0 rxx (+1) w1 rxx (0) w2 rxx (1))
w1
J
= 2 (rxy (+2) w0 rxx (+2) w1 rxx (+1) w2 rxx (0))
w2
Comme l'erreur quadratique obtenue est minimum lorsque ces drives s'annullent,
on obtient nalement un ensemble de 3 quations 3 inconnues

w0 rxx (0) + w1 rxx (1) + w2 rxx (2) = rxy (0)


w0 rxx (+1) + w1 rxx (0) + w2 rxx (1) = rxy (+1)
w0 rxx (+2) + w1 rxx (+1) + w2 rxx (0) = rxy (+2)
que l'on crit sous la forme matricielle suivante

rxx (0) rxx (1) rxx (2)


w0
rxy (0)
rxx (+1) rxx (0) rxx (1) w1 = rxy (1)
rxx (+2) rxx (+1) rxx (0)
w2
rxy (2)

(8.41)

Cette matrice d'autocorrlation est obligatoirement symtrique car la fonction d'autocorrlation est paire.
En reprsentant la matrice d'autocorrlation par le symbole
paramtres par

et le vecteur d'intercorrlation par

rxy ,

Rxx ,

le vecteur des

ce rsultat s'crit plus

succinctement sous la forme :

Rxx W = rxy

(8.42)

1
W = Rxx
rxy

(8.43)

dont la solution est

Cette quation porte le nom d'quation normale ou de Wiener-Hopf.

8.3.3. Description matricielle


Les calculs que l'on vient d'exposer peuvent tre prsents dans une criture plus
concise frquemment utilise. Dnissant tout d'abord les vecteurs colonnes suivants :

on obtient :

234

w0
w1

W = ..
.
wp1

X(n) =

x(n)
x(n 1)
.
.
.

x(n p + 1)

(8.44)

8.3. Filtrage de Wiener


 le signal estim

yw (n)
yw (n) =

p1
X

wi x(n i) = W T X(n) = X(n)T W

i=0

(n)

 l'erreur d'estimation

(n) = y(n) yw (n) = y(n) X(n)T W


 l'erreur quadratique

(8.45)

(8.46)

2 (n)
2 (n) =

y(n) X(n)T W

2

(8.47)

2 (n) = y 2 (n) 2 y(n) X(n)T W + W T X(n) X(n)T W


 l'erreur quadratique moyenne

J(W )

fonction des paramtres

(8.48)

2
J(W ) = E{2 (n)} = E{ y(n) X(n)T W }

= E{y 2 (n)} 2 E{y(n) X(n)T W } + E{W T X(n) X(n)T W }

d'o

 le gradient de

J(W )

T
J(W ) = ryy (0) 2 rxy
W + W T Rxx W
par rapport au vecteur

des coecients

(8.49)

wk

dJ
= 2 rxy + 2 Rxx W
dW

(8.50)

 le vecteur des paramtres optimaux qui annule le gradient

1
W = Rxx
rxy

(8.51)

8.3.4. Applications du ltrage de Wiener


Les applications du ltrage de Wiener dirent par la manire dont est extraite la
rponse dsire. Dans ce contexte, on peut distinguer quatre classes fondamentales
utilisant le ltrage de Wiener :
1. l'identication de processus ; dans ce cas, on souhaite trouver la rponse impulsionnelle

w(n)

reprsentant au mieux le processus inconnu ;

2. la modlisation inverse avec laquelle on tente de reconstruire un signal ;


3. la prdiction linaire qui, sur la base des chantillons prcdents, permet d'estimer une valeur venir (codage LPC de la parole) ;
4. la suppression d'un signal perturbateur.
Dans ce qui suit, compte tenu du cadre dans lequel est prsente cette note, on se
contentera d'illustrer comment on peut supprimer une perturbation grce au ltrage
adaptatif.

235

8.

Introduction au filtrage adaptatif

8.4. Suppression d'une perturbation


Comme illustration du ltrage de Wiener, imaginons la mesure de l'activit cardiaque d'un foetus l'aide d'un lectrocardiogramme (ECG) pris au niveau de l'abdomen de la mre et qui, naturellement, est perturb par l'ECG de celle-ci.
Cette mesure ncessite l'utilisation de 2 capteurs. Avec le premier, on mesure le
signal de rfrence

x(n)

reprsentant, si possible, uniquement l'ECG de la mre.

Avec le deuxime, on mesure le signal

y(n)

qui est l'ECG du foetus perturb par

l'activit cardiaque de la mre.


Les signaux du schma de Wiener (gure 8.4) sont alors les suivants :
1.

x(n)

= l'ECG maternel mesur prs du coeur,

2.

y(n)

= l'ECG foetal perturb par celui de la mre,

3.

yp (n)

= l'ECG maternel prs du foetus,

4.

yw (n)

= l'estimation de l'ECG maternel prs du foetus,

5.

e(n)

= l'ECG foetal,

6.

(n)

= l'estimation de l'ECG foetal.

e(n)
x(n)

Processus yp(n)
inconnu

y(n)

(n)

yw(n)
wk

Minimisation
de 2
Fig. 8.4.: Suppression de la perturbation

yp (n)

On notera que dans ce problme, les rles sont inverss par rapport la dnition
initiale du ltre de Wiener. En eet, le signal

e(n)

considr plus haut comme une

yp (n), est, dans notre cas, le signal ECG que l'on


yp (n) est la perturbation que l'on souhaite rejeter. C'est
en recherchant yw (n) ' yp (n) que l'on obtient une bonne estimation (n) de l'ECG
foetal e(n) ' x(n) yw (n).
perturbation du signal recherch

souhaite mesurer et le signal

236

8.4. Suppression d'une perturbation


Dans cette simulation et dans un but didactique, on a choisi un modle MA constitu
T
de deux coecients seulement W = [w0 , w1 ] . Le systme rsoudre s'crit alors :

rxx (0) rxx (1)


rxx (1) rxx (0)

La recherche des coecients



w0
w1

rxy (0)
rxy (1)

peut se faire de deux manires :

1. Dans le cas o l'on considre que le processus gnrateur de la perturbation

x(n)
calcul Rxx

est stationnaire, on commence par enregistrer la totalit des signaux

et

y(n). Puis, on calcule le vecteur des coecients W


rxy pour l'ensemble des points acquis.

et

aprs avoir

2. Si les signaux ne sont pas stationnaires (ce qui est le cas lorsque le processus
change au cours du temps), il faut, aprs chaque chantillonnage, calculer les
1
coecients W = Rxx rxy .

8.4.1. Filtrage de Wiener classique


La gure 8.5 prsente les rsultats que l'on obtient avec un ltrage de Wiener classique dans lequel l'ensemble des points acquis est analys en une seule fois. Dans
cette approche, on fait l'hypothse que le processus gnrateur de la perturbation
est stationnaire. Sur la gure 8.5, on a trac dans l'ordre :

x(n) correspondant l'ECG maternel,


le signal y(n) correspondant l'ECG foetal perturb,
l'estimation (n) de l'ECG foetal et sa valeur exacte e(n)

 le signal



en pointill.

On peut relever quel point le rsultat obtenu est proche du signal original. Un
exemple de codage pour 2 paramtres est donn la gure 8.6.

8.4.2. Remarque
D'un point de vue pratique, le ltre de Wiener tel qu'il a t prsent ci-dessus
soure de quelques limitations :
 il ncessite le calcul de la matrice d'autocorrlation
rlation

rxy ,

Rxx

et du vecteur d'intercor-

tous deux coteux en temps de calcul ;

 il faut inverser la matrice

Rxx , ce qui peut demander beaucoup de calcul et d'espace

mmoire ;
 si les signaux ne sont pas stationnaires (ce qui est frquent),

Rxx et rxy

voluent au

cours du temps ; il faut donc chaque instant rsoudre l'quation de Wiener-Hopf.


Pour des applications en temps rel, il faut donc trouver un moyen rapide, ecace
1
et robuste pour calculer rcursivement la solution W = Rxx rxy . C'est ce que fait le
ltrage adaptatif.

237

8.

Introduction au filtrage adaptatif

Filtrage de Wiener classique


3

x(t)

2
1
0
1

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

y(t)

2
1
0
1
3
(t), e(t)

2
1
0
1

Fig. 8.5.: Suppression d'une perturbation par ltrage de Wiener

8.5. Filtrage adaptatif


Un ltre adaptatif est un systme numrique dont les coecients se modient eux
mmes en fonction des signaux extrieurs. Il est utilis chaque fois qu'un environnement est mal connu ou changeant ou pour supprimer des perturbations situes dans
le domaine de frquences du signal utile, ce que les ltres classiques ne peuvent pas
faire.
Un ltre adaptatif est constitu de deux parties distinctes :
 un ltre numrique coecients ajustables ;
 un algorithme de modication des coecients bas sur un critre d'optimisation.

8.5.1. Algorithme rcursif des moindres carrs (RLMS)


Nous avons vu au paragraphe 8.3.2 que pour trouver les paramtres optimaux, il faut
descendre le long d'un parabolode an atteindre le minimum de l'erreur quadratique
moyenne. Mathmatiquement, cette descente se fait dans le sens oppos celui du
gradient

J
= 2 rxy + 2 Rxx W
W

238

8.5. Filtrage adaptatif

% les signaux mesures sont stockes dans les vecteurs xt et yt


% initialisation des calculs
rxx0 = 0 ; rxx1 = 0 ;
rxy0 = 0 ; rxy1 = 0 ;
% boucle de calculs
kmax = length(xt)-1 ;
for n = 1 :kmax
% lecture des signaux
xn = xt(n) ;
yn = yt(n) ;
xn1 = xt(n+1) ;
yn1 = yt(n+1) ;
% correlation
rxx0 = rxx0 + xn*xn ;
rxx1 = rxx1 + xn*xn1 ;
rxy0 = rxy0 + xn*yn ;
rxy1 = rxy1 + xn*yn1 ;
end ;
% solution de Wiener-Hopf
Rxx = [rxx0 rxx1 ;
rxx1 rxx0]
rxy = [rxy0 ; rxy1]
w = inv(Rxx) * rxy
% calcul du signal recherche
xn1 = 0 ;
for n = 0 :kmax-1
xn = xt(n+1) ;
yn = yt(n+1) ;
ew(n+1) = yn - [xn, xn1]*w ;
xn1 = xn ;
end ;
Fig. 8.6.: Exemple de codage d'un ltre de Wiener

239

8.

Introduction au filtrage adaptatif

et on atteint le point optimum lorsque le gradient s'annule. La valeur des paramtres


est alors donne par la solution

1
W = Rxx
rxy
De manire heuristique, on imagine bien que cette solution peut tre atteinte rcursivement en corrigeant les valeurs des coecients

wk

en chaque instant

n dans le sens

oppos l'volution de l'erreur quadratique par rapport au vecteur des coecients

W (n)

(gure 8.7) :

W (n) = W (n 1)
2
o

2 (n)
W

(8.52)

est un facteur de pondration du gradient.

2(n)

(2(n))
(wk(n))
wk(n)

Fig. 8.7.: Erreur quadratique

cient

2 (n)

en l'instant

et sa drive par rapport au coef-

wk (n)

Comme l'erreur quadratique l'instant

2 (n) =
il vient :

y(n)

p1
X
i=0

vaut :

wi x(n i)

!2

= y(n) X(n)T W

2

2 (n)
(n)
= 2 (n)
= 2 (n) X(n)
W
W

On en dduit que la recherche de l'optimum peut se faire avec l'algorithme rcursif


suivant

W (n) = W (n 1) + (n) X(n)


que l'on dsigne sous le nom d'algorithme RLMS (

Recursive Least Mean Square ).

Les grandeurs dont on a besoin sont :


 le vecteur des

coecients l'instant

n1

W (n 1) = [w0 (n 1), w1(n 1), , wp1 (n 1)]T

240

(8.53)

8.5. Filtrage adaptatif


 les

dernires valeurs du signal d'entre :

X(n) = [x(n), x(n 1), , x(n p + 1)]T


 la valeur du signal de sortie

y(n)

pour calculer l'cart l'instant

(n) = y(n)
 le gain d'adaptation

p1
X
i=0

wi x(n i)

(8.54)

de l'algorithme rcursif (gnralement trs infrieur 1).

La valeur du gain d'adaptation

est dicile xer : si on la choisit trop faible,

la convergence vers la valeur optimum est trs lente ; si on la choisit trop forte, la
convergence se fait en oscillant onguement autour de la valeur optimum ; enn, si le
gain d'adaptation est trop lev, le processus d'optimisation diverge.
Les avantages de cet algorithme rsident dans la simplicit le dduire, le programmer, et au peu de calculs eectuer. Par contre, ses inconvnients sont la
lente convergence des paramtres et le risque d'oscillations ou de divergence si le
gain d'adaptation est trop grand. Ces inconvnients, associs au fait que les signaux
sont gnralement non stationnaires, ont ncessit la recherche d'une adaptation
automatique du gain.

Filtrage RLMS, = 0.1


3
x(t)

2
1
0
1

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5
temps [sec]

3.5

4.5

3
y(t)

2
1
0
1

(t), e(t)

3
2
1
0
1

0.5

w ,w

1.5

0
0.5

Fig. 8.8.: Filtrage avec l'algorithme RLMS

241

8.

Introduction au filtrage adaptatif

8.5.2. Algorithme rcursif normalis (NLMS)


En 1975, Widrow et ses coauteurs ont montr qu'un gain d'adaptation stable compris
entre 0 et 1 peut tre utilis si on le normalise par le nombre p de paramtres du
2
vecteur W et par la puissance ou variance x du signal d'entre x(n).

Gain d'adaptation normalis


Pour la plupart des situations pratiques, on choisit un gain initial

0 ' 0.1 qui, aprs

normalisation par le nombre de paramtres et par la variance du signal d'entre,

donne un gain d'adaptation qui volue en fonction de la puissance du signal d'entre :

0
p x2

(8.55)

De manire viter que le gain n'augmente indniment lorsque la puissance du


signal de rfrence tend vers zro, on peut corriger le dnominateur du gain en y
ajoutant un terme constant

a1

0
a + p x2

(8.56)

L'algorithme s'crit alors :

W (n) = W (n 1) +

0
(n) X(n)
a + p x2

Comme cet algorithme utilise un gain normalis par la puissance


il porte le nom d'algorithme NLMS (

(8.57)

x2

du signal

Normalised Least Mean Square ).

x(n),

Puissance moyenne du signal de rfrence


Dans le cas o le signal x(n) n'est pas stationnaire, on doit valuer sa puissance
Px x2 en tout instant :

Px (n) =

1 X 2
x (k)
n + 1 k=0

Cette valeur moyenne peut galement tre value l'aide d'un ltre passe-bas en
oubliant progressivement les anciennes valeurs.
Se souvenant qu'un ltre passe-bas d'ordre 1 et de gain unit, d'entre
sortie

s(n)

e(n)

et de

est dcrit par sa fonction de transfert

H(z) =

1
S(z)
=
,
E(z)
1 z 1

0<<1

(8.58)

ou, de manire quivalente, par son quation rcursive

s(n) = (1 ) e(n) + s(n 1)

242

(8.59)

8.5. Filtrage adaptatif


le calcul de

Px (n)

se fait de la manire suivante :

Px (n) = (1 ) x2 (n) + Px (n 1)
avec

= 0.90 0.98

suivant l'horizon de mmoire

N ' 3 Kc =
On montre aisment qu'au-del de

(8.60)

dsir

3
|ln()|

N = 3/ |ln()|,

la contribution des anciennes

valeurs est infrieure 5%. On peut relever que l'horizon de mmoire


pour

= 0.90

ou 150 lorsque

vaut 30

= 0.98.

Rsultats
Les rsultats ainsi obtenus sont prsents la gure 8.9. Ils illustrent l'vidence
la rapidit de la convergence et la qualit des rsultats qui est pratiquement aussi
bonne que celle obtenue avec le ltrage optimum de Wiener.
La gure 8.10 montre comment le gain change au cours du temps ; on y voit nettement son augmentation lorsque la puissance du signal de rfrence est faible. Une
partie du codage est prsent dans la gure 8.11.
Filtrage NLMS, 0 = 0.05, = 0.95
3
x(t)

2
1
0
1

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5
temps [sec]

3.5

4.5

3
y(t)

2
1
0
1

(t), e(t)

3
2
1
0
1

0.5

w ,w

1.5

0
0.5

Fig. 8.9.: Filtrage avec l'algorithme NLMS

243

8.

Introduction au filtrage adaptatif

Filtrage NLMS, 0 = 0.05, = 0.95


3
x(t)

2
1
0
1

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

0.5

1.5

2.5

3.5

4.5

3
y(t)

2
1
0
1
3
(t), e(t)

2
1
0
1

Gain(n)

3
2
1
0

0.5

1.5

2.5
temps [sec]

3.5

4.5

Fig. 8.10.: volution du gain de l'algorithme NLMS

244

8.5. Filtrage adaptatif

% constantes
p = 3 ; % modifier selon les besoins
gamma0 = 0.1 ;
lambda = 0.95 ;
% initialisation des calculs
Wn = zeros(p,1) ;
Pxx = 0 ;
a = 1e-3 ;
% boucle de calculs
for n = p-1 :kmax-1
% signaux a l'instant n
xn = xt(n+1) ;
yn = yt(n+1) ;
% puissance moyenne de x(n)
Pxx = (1-lambda)*xn^2 + lambda*Pxx ;
% calcul des paramtres W(n)
Xn = xt(n+1 :-1 :n-p+2) ;
en = yn - Xn'*Wn ;
Wn = Wn + gamma0/(a+p*Pxx) * en*Xn ;
% memorisation du signal recherche et des parametres
ew(n+1) = en ;
wt(n+1, :) = Wn' ;
end ;
Fig. 8.11.: Exemple de codage d'un ltre NLMS

245

8.

Introduction au filtrage adaptatif

8.6. Exercices
RL 1
Considrant l'ensemble des notes

suivantes :

2.8

4.7

3.2

4.2

2.6

4.8

3.5

5.4

5.4

4.4

4.0

5.6

5.3

4.6

5.3

4.6

3.4

3.2

3.4

4.2

1. Calculez la note moyenne et sa dviation standard.


2. Comparez aux rsultats obtenus avec les fonctions Matlab

mean, var

et

std.

3. Calculez puis tracez la main la rpartition des notes telles que

n < 3,

3 n < 4,

4 n < 5,

5n6

4. Commentez vos rsultats.

RL 2
La mesure de la caractristique statique d'un amplicateur a donn les rsultats
suivants :

Uin [mV]
Uout [V]

-50

-40

-30

-20

-10

10

20

30

40

50

-3.69

-3.38

-2.43

-1.68

-0.56

0.17

0.87

1.96

2.45

3.28

3.76

1. Tracez cette caractristique ; qu'en pensez-vous ?


2. Admettant que l'amplicateur est linaire, utilisez la rgression linaire (quations de la section 8.2.3) pour calculer la main son gain et sa tension de
dcalage. Puis :
a) Comparez aux rsultats fournis par

polyfit.

b) Tracez sur un mme graphe les points mesurs et la caractristique linaire de l'amplicateur avec une abscisse ne (Uin

= 1 mV ).

c) Calculez la puissance des carts entre le modle et la mesure ?


3. Considrant que l'amplicateur n'est pas parfaitement linaire, utilisez la fonction

polyfit

pour calculer le polynme d'ordre 3 (pourquoi 3 et pas 2 ou 4 ?)

passant au mieux parmi ces points.


a) Y a-t-il un sens donner le gain de l'amplicateur et sa tension de dcalage ?
b) Tracez sur un mme graphe les points mesurs et la caractristique non
linaire de l'amplicateur avec une abscisse ne (Uin

= 1 mV ).

c) Calculez la puissance des carts entre le modle et la mesure ?


4. Rptez le point 3 avec un polynme d'ordre 9. Commentez la puissance des
carts et l'allure de ce polynme par rapport aux modles prcdents.

246

8.6. Exercices

Prb 1
On s'intresse ici aux notions de base des statistiques et probabilits. Pour cela :
1. Gnrez les trois signaux suivants avec

xu (n) = rand(size(n)),

N = 100 000

et

n = 0 : N 1,

xg (n) = 0.5 randn(size(n)),

2. Tracez ces signaux par rapport

xs (n) = sin(2 n /N)

n (subplot(3,1,k)) ;

observez-les avec le

zoom ; commentez vos observations.


3. Quels rsultats fournissent les fonctions

rand

randn ?

et

4. Pouvez-vous donner une estimation des valeurs moyennes et variances des trois
signaux ?
5. Pour chacun des 3 signaux, calculez leurs valeur moyenne, variance et carttype ; vriez l'quation (8.3) ; commentez.
6. Tracez et comparez les 3 histogrammes (hist(xn,round(sqrt(N)))).
7. Commentez ces rsultats d'un point de vue statistique ; en particulier, que
pensez-vous de la probabilit d'apparition de certaines valeurs ?

Prb 2
Avec l'exercice prcdent vous avez compris que l'histogramme permet de compter
le nombre de fois

nk

o une valeur

x =

xmax xmin
,
Nk

se situe dans la case

Nk = nombre

avec

de largeur

de cases

La probabilit de se trouver dans une case est donc gale au contenu de la case divis
par le nombre total de points

N.

On dnit ainsi la fonction de probabilit discrte

p(k) p(kx x < (k + 1)x) =

nk
N

(8.61)

On peut galement considrer la somme cumule des valeurs de l'histogramme et


normaliser son maximum 1. On obtient alors la fonction de rpartition des probabilits dnie comme la probabilit que la valeur de
donne

X = K x.

soit infrieure une valeur

Mathmatiquement, cela s'crit :

P (K) p( < x K x) =

K
X

p(k)

(8.62)

Cette approche permet de calculer simplement la probabilit que la valeur de

se

situe dans un domaine donn ; on a en eet

P (K1 X < x K2 X) =

K2
X

k=K1 +1

p(k) = P (K2 ) P (K1 )

(8.63)

Dans le cas d'une variable continue, la fonction de probabilit devient une densit
de probabilit dnie comme suit

p(x) =

lim

N , x0

 n 
k
N x

(8.64)

247

8.

Introduction au filtrage adaptatif

et la fonction de rpartition des probabilits s'crit alors

P (x : x < x) =

p(x) dx

(8.65)

An de bien comprendre ce qui prcde, je vous propose d'appliquer les points ciaprs sur les 3 signaux suivants

xu [n] distribution uniforme compris entre -4 et +4 ;


alatoire xg [n] distribution gaussienne de variance unit ;
sinusodal xs [n] d'amplitude 4 et de priode N ;

 un signal alatoire
 un signal
 un signal
o

N = 100 000

et

n = 0 : N 1.

1. Reprsentez le signal avec

subplot(3,1,1) ; plot(nn,xn).
2. Calculez sa valeur moyenne et sa variance ; comparez avec les valeurs thoriques.
3. Calculez son histogramme avec

[nk,xk] = hist(xn,sqrt(N)).
4. Calculez et reprsentez la fonction de probabilit

subplot(3,1,2) ; plot(xk,pk).

p(k)

avec

P (K)
PK = cumsum(pk) ; subplot(3,1,3) ; plot(xk,PK).

5. Calculez et reprsentez la rpartition des probabilits

6. Calculez la probabilit de trouver une valeur de


(la fonction

find

avec

comprise entre -1 et +1

facilite ce calcul).

7. Analysez et commentez vos graphes et rsultats.

Prb 3
Appliquez ce que vous venez de voir des signaux rels (sons et images). Plus
prcisment,

xt = load('colibri.txt') ;
xt = xt/max(abs(xt)) ;.

1. Chargez le chier sons :


maximum 1 :

2. Tracez son graphe et coutez-le avec

normalisez sa valeur

wavplay(xt,8000) ;.

3. Calculez sa valeur moyenne, sa puissance et sa variance.


4. Tracez son histogramme. Quel est le modle de distribution qui vous parat
appropri pour dcrire le signal ?
5. Ajustez les modles choisis sur la courbe de probabilit relle. Commentez.
6. Chargez le chier image :

img = imread('lena256.jpg') ; visualisez son


img_vecteur = double(img( :)) ;

contenu et transformez la matrice image en un vecteur :


7. Rptez les points 1 5 ci-dessus.

248

8.6. Exercices

Corr 1
Dans le but de vous familiariser avec les rsultats de la corrlation, appliquez la
fonction Matlab de corrlation

rxy = xcorr(y,x,L,'unbiased')

chacun des 3

signaux suivants

xc [n] = sin(2 n /N),


o

n = 0 : 1000

xq [n] = square(2 n /N),

N = 50.

et

xg [n] = randn(size(n))

Pour ce faire :

1. calculez puis tracez les 3 signaux dans une fentre ;


2. calculez puis tracez les 3 fonctions d'autocorrlation dans une nouvelle fentre ;
3. quelle est l'utilit du paramtre
4. vous souvenant que

rxx [0] = Px ,

L?
que doit valoir le maximum de chaque auto-

corrlation ?

xc [n] et xq [n]
rcq = xcorr(xq,xc,L,'unbiased')).

5. calculez et tracez l'intercorrlation entre


des signaux

(prenez garde l'ordre

WH 1
Considrant un ltre MA causal dcrit par ses coecients
1. dessinez le schma fonctionnel de ce ltre en prenant

w[0 2] = [3, 2, 1],


x[n]

et

y[n]

comme si-

gnaux d'entre et de sortie ;


2. montrez que, si on lui applique le signal
vaudra

y[n] = [+3, 1, +2, 2, +2] ;

x(n) = [+1, 1, +1, 1, +1],

la sortie

3. pour faire ce calcul, quelle modication implicite avez-vous appliqu


4. calculez

y[n]

x[n] ?

avec Matlab.

WH 2
Ayant appliqu le signal
par l'quation

x[n] = [+1, +1, 1, +1, 1, 0]

un systme MA dcrit

y[n] = w0 x[n] + w1 x[n 1]


on a obtenu en sortie le signal

y[n] = [+2, +3, 1, +1, 1, 1]. Utilisez le ltrage de


w0 , w1 sans Matlab. Pour ce faire :

Wiener pour trouver les paramtres

1. Calculez la main les fonctions de corrlation

rxx ([k]

et

rxy [k]

pour

compris

entre 5 et +5.
2. Quelles sont les valeurs de corrlation dont vous avez besoin pour rsoudre ce
problme ?
3. crivez les vecteurs et matrices

rxx , rxy , Rxx

ncessaires pour le ltrage de

Wiener.
4. Rsolvez le systme

Rxx W = rxy .

5. A-t-on besoin de 5 couples de valeurs

(x, y)

pour trouver

w0

et

w1 ?

Justiez

et vriez votre rponse.


6. Quel est l'avantage d'avoir un grand nombre de valeurs

(x, y) ?

249

8.

Introduction au filtrage adaptatif

WH 3
Rsolvez le problme prcdent avec l'aide de Matlab. Pour ce faire, utilisez

rxy = xcorr(y,x,p-1) o p
l'ordre des vecteurs x et y ) ;

1. la fonction
garde

Rxx = toeplitz(rxx)

2. la fonction

est le nombre de paramtres (prenez

pour remplir la matrice de corrlation

Rxx .

WH 4
Dans ce qui suit on souhaite extraire un signal inconnu

s(n)

fortement perturb

par le rseau lectrique de frquence 50 Hz. Pour ce faire, on a mesur simultanment


le signal du rseau

fe

x(n)

et le signal bruit

y(n) en

les chantillonnant la frquence

de 10 kHz. Pour rsoudre ce problme,


1. chargez les signaux contenus dans le chier

signaux = load('xy50hz.txt') ;
xn = signaux( :,1) ;
yn = signaux( :,2) ;
N = length(xn) ;
nn = 0 :Te :(N-1)*Te ;
2. tracez

x(n)

et

xy50hz.txt :

y(n) ;

3. dessinez le schma de Wiener ; o se trouve le signal


4. recherchez

s[n] en appliquant l'algorithme de Wiener-Hopf avec

5. augmentez le nombre de paramtres


de

s[n] ;

s[n] ?

p;

2 paramtres ;

observez leurs valeurs et la puissance

concluez ;

6. calculez le rapport signal sur bruit

Sef f /Yef f .

LMS 1
Il est possible d'valuer en temps rel la puissance moyenne d'un signal en oubliant progressivement les valeurs anciennes. Ceci peut se faire de la manire suivante :

Px [n] = (1 ) x2 [n] + Px [n 1]
1. Montrez que cet algorithme est l'quivalent d'un ltre passe-bas d'ordre 1.
Pour cela :
a) dessinez son schma fonctionnel ;
b) calculez sa fonction de transfert ;
c) que valent l'instant caractristique et l'horizon de mmoire 5% ?

x(t) compos d'une sinusode d'amplitude A1 = 1 V , de frquence f0 = 1000 Hz et de dure tmax = 0.1 sec suivi
de la mme sinusode d'amplitude A2 = 2 V . Comment volue la puissance de

2. Imaginez (sans l'aide de Matlab !) un signal

ce signal ? Que vaut-elle ?


3. Gnrez le signal

250

x[n] ;

quelle frquence d'chantillonnage prenez-vous ?

8.6. Exercices
4. Calculez sa puissance moyenne avec l'algorithme ci-dessus en prenant
et

= 0.99 ;

= 0.95

quel est l'horizon de mmoire 5% correspondant ces deux

valeurs ?
5. Tracez

Px [n] ;

concluez.

LMS 2
Dans ce problme, on souhaite diminuer le bruit environnant lors d'une conversation tlphonique en utilisant un deuxime microphone plac sur le ct extrieur du
tlphone. Le microphone de base capte le message entach du bruit environnant,
alors que le deuxime capte seulement le bruit. Grce l'algorithme LMS, il est
possible d'amliorer sensiblement la qualit du message.
Pour le vrier :
1. Dessinez le schma de Wiener correspondant ce problme et prcisez quels
sont les signaux en prsence.

bjrbruit.dat constitu de trois colonnes contient trois signaux enregistrs la frquence fe = 8 kHz , savoir, le bruit (microphone extrieur =
x[n]), le message perturb par le bruit (microphone-bouche = y[n]) et, dans un

2. Le chier

but de comparaison, le message non bruit. De ce chier, extrayez les deux premiers signaux ; tracez-les et coutez-les avec la fonction

soundsc(signal,fe).

3. Appliquez l'algorithme NLMS sur les deux premiers signaux pour diverses
longueurs
4. Pour

du vecteur

p = 5

et

composantes de

W.

p = 20 par exemple, tracez les


W (n ). Qu'en pensez-vous ?

valeurs asymptotiques des

5. Tracez le signal fourni par NLMS et l'volution des paramtres

W [n].

6. Observez les spectrogrammes des trois signaux (specgram(signal,128,fe)) ;


commentez vos observations.
7. coutez le signal extrait ; qu'en pensez-vous ?
8. Le temps de calcul sur un PC 500 MHz est prohibitif (environ quinze fois la
dure du message). Sachant qu'en un cycle d'horloge, un DSP ralise une multiplication et une addition, pensez-vous qu'il soit possible de faire ces calculs
en temps rel avec un DSP dont le temps de cycle est de 20 ns ? Justiez votre
rponse.

251

8.

Introduction au filtrage adaptatif

252

Bibliographie
[1] B. Widrow, S.D. Stearns :

Adaptive Signal Processing Algorithms, Prentice Hall,

1985.
[2] S.D. Stearns, R.A. David :

Signal Processing Algorithms in Matlab, Prentice Hall,

1996.
[3] E.C. Ifeachor, Q.W. Jervis :

Digital Signal Processing, A Practical Approach,

Addison Wesley, 1993.


[4] S. Haykin :

Adaptive Filter Theory, Prentice Hall, 1991.

253