Vous êtes sur la page 1sur 130

Théorie & traitement du signal

Emmanuel Ademovič
Esigetel 2001 (v. 1.00).
ii
Table des matières

1 Théorie du signal 1
1.1 Les concepts de la théorie du signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Notion de signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Notion de support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.3 Le signal déterministe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.4 Le signal aléatoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.5 Échantillonnage, Signaux discrets . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.6 Numérisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.7 Classification énergétiques des signaux . . . . . . . . . . . . . . . . . . . . . . 4
1.1.8 Espace de Hilbert et opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.9 Signaux synthétiques élémentaires . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Les systèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 Caractérisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.2 Linéarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.3 Invariance temporelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.4 Produit de convolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.5 Causalité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2.6 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Les transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1 Transformée de Laplace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1.2 Transformée inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.2 Transformée de Fourier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.2.2 Transformée inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Caractérisation des signaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 Dans le domaine temporel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.1.1 Temps moyen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.1.2 Durée moyenne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.1.3 Fonction d’intercorrélation . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4.2 Dans le domaine fréquentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2.1 Fréquence moyenne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2.2 Bande utile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2.3 Densité interspectrale d’énergie . . . . . . . . . . . . . . . . . . . . . 12
1.4.3 Analyse temps-fréquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.3.1 Transformée de Fourier à court-terme . . . . . . . . . . . . . . . . 12
1.4.3.2 Fonction d’ambiguı̈té . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5 Signaux aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

iii
iv TABLE DES MATIÈRES

1.5.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.2 Stationnarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.3 Egrodisme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5.4 Bruit blanc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5.4.1 Identification de processus . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5.5 Estimateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.5.1 Les critères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.5.2 Caractéristiques des estimateurs . . . . . . . . . . . . . . . . . . . . . 18
1.6 Échantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.6.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.6.2 Mise en œuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.7 Travaux dirigés de théorie du signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.7.1 Classifications des signaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.7.2 Systèmes linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.7.3 Analyse non paramétrique, signaux déterministes. . . . . . . . . . . . . . . . . 24
1.7.4 Signaux aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2 Travaux Pratiques de Théorie du Signal 27


2.1 Introduction à Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.1.1 Les notions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.1.1.1 Démarrage d’une session . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.1.1.2 Types des fichiers : Compatibilité entre Dos et UNIX . . . . . . . . . 28
2.1.1.3 Documentation : Aide en ligne . . . . . . . . . . . . . . . . . . . . . 28
2.1.2 Les débuts en Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.1.2.1 Types de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.1.2.2 Opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.1.2.3 Fonctions Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.1.2.4 Eléments de langage Matlab . . . . . . . . . . . . . . . . . . . . . . 34
2.1.3 Pour aller plus loin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.1.3.1 Manipulation de matrices. Fonctions spécialisées . . . . . . . . . . . . 35
2.1.3.2 Polynômes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.1.3.3 Affichage 2D et 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.1.3.4 Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.1.4 Traitement du signal avec Matlab. Transformée du Fourier . . . . . . . . . . 39
2.1.4.1 Séries de caractères, Mathématique symbolique . . . . . . . . . . . . 41
2.1.5 Coopération de Matlab avec des logiciels externes . . . . . . . . . . . . . . . 41
2.1.5.1 Accès aux fichiers de données externes . . . . . . . . . . . . . . . . . 41
2.1.5.2 Utiliser des procédures C dans l’environnement Matlab . . . . . . . 42
2.1.5.3 Utiliser les fonctions Matlab dans le cadre d’un logiciel C . . . . . . 42
2.1.5.4 Insérer des graphiques Matlab dans un document Word . . . . . . . 43
2.1.6 Problèmes et questions fréquentes . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.1.6.1 Problèmes de gestion de mémoire . . . . . . . . . . . . . . . . . . . . 44
2.1.6.2 Peut-on insérer des caractères grecques dans le titre d’un graphique ? 44
2.1.6.3 Faut il tout programmer en Matlab ? . . . . . . . . . . . . . . . . . 44
2.1.7 Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2 Échantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.1 Création d’un modèle d’échantillonnage parfait . . . . . . . . . . . . . . . . . 48
2.2.2 Étude de la loi de densité de probabilité d’un signal échantillonné . . . . . . . 48
TABLE DES MATIÈRES v

2.2.3 Du signal analogique au signal numérique . . . . . . . . . . . . . . . . . . . . 49


2.2.4 Un exemple de traitement numérique du signal . . . . . . . . . . . . . . . . . . 50
2.3 Caractérisation de bruit et estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.1 Bruit blanc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.1.1 Carcatérisation d’un bruit blanc . . . . . . . . . . . . . . . . . . . . . 52
2.3.1.2 Débruitage d’un signal déterministe périodique . . . . . . . . . . . . 53
2.3.2 Estimateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3 Traitement numérique du signal 55


3.1 Transformée en Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.2 Conditions d’existence, domaine de convergence . . . . . . . . . . . . . . . . . 55
3.1.3 Propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.4 Transformée inverse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.5 Système linéaire discret invariant dans le temps . . . . . . . . . . . . . . . . . 58
3.2 Transformée de Fourier discrète . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.2.1 Propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.2.2 Dualité temps-fréquence de l’échantillonnage . . . . . . . . . . . . . . . . . . . 58
3.3 Filtrage numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.1 Filtre à réponse impulsionnelle infinie (Rii) . . . . . . . . . . . . . . . . . . . 59
3.3.1.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.1.2 Méthodes de synthèse indirecte . . . . . . . . . . . . . . . . . . . . . 59
3.3.1.3 Transformation bilinéaire . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.1.4 Transposition de gabarit . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.3.2 Filtre à réponse impulsionnelle finie (Rif) . . . . . . . . . . . . . . . . . . . . 61
3.3.2.1 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3.2.2 Synthèse par la méthode des fenêtres :échantillonnage temporel . . . 61
3.3.2.3 Synthèse par la méthode des fenêtres :échantillonnage fréquentiel . . 62
3.3.2.4 Exemple de synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.4 Analyse spectrale non-paramétrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.4.1 Estimateur de la fonction de corrélation . . . . . . . . . . . . . . . . . . . . . 63
3.4.2 Estimation de la densité spectrale de puissance (Dsp) . . . . . . . . . . . . . . 63
3.4.3 Améliorations possibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.5 Travaux dirigés de Traitement du Signal . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1 Échantillonnage et filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1.1 Échantillonnage parfait . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1.2 Échantillonnage réel . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1.3 Filtres non invariants . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.5.1.4 Sous-échantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.5.2 Synthèse des filtres numériques . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.5.2.1 Filtre récursif du premier ordre . . . . . . . . . . . . . . . . . . . . . 70
3.5.2.2 Synthèse des filtres RII par invariance d’une réponse temporelle . . . 70
3.5.2.3 Synthèse de filtre récursif par la transformation bilinéaire . . . . . . . 71
3.5.3 TFD et analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5.3.1 TFD et interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.5.3.2 TFD et analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . 73
vi TABLE DES MATIÈRES

4 Travaux Pratiques de Traitement Numérique du Signal 75


4.1 Analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.1.1 Échantillonage et transformée de Fourier. . . . . . . . . . . . . . . . . . . . . . 75
4.1.2 Étude comparative des fenêtres de pondération . . . . . . . . . . . . . . . . . 75
4.1.3 Transformée de Fourier à court-terme . . . . . . . . . . . . . . . . . . . . . . . 76
4.1.4 Modélisation autorégressive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.2 Filtrage numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2.1 Étude comparative des approximations (RII) . . . . . . . . . . . . . . . . . . . 78
4.2.2 Implantation de filtres RII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2.3 Filtrage d’un signal (RII) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2.4 Étude des filtres RIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.2.5 Implantation de filtres RIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Compléments mathématiques 81
4.3 Espace vectoriel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.3.1 Produit scalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.3.2 Normes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.3.3 Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.4 Dérivation vectorielle (convention de Vetler) . . . . . . . . . . . . . . . . . . . . . . 83
4.4.1 Dérivée d’une matrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.4.1.1 Par rapport à un scalaire . . . . . . . . . . . . . . . . . . . . . . . . 83
4.4.1.2 Par rapport à une matrice . . . . . . . . . . . . . . . . . . . . . . . . 83
4.4.2 Dérivée d’un vecteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.4.3 Dérivée d’un scalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.5 Probabilités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.1 Fonction de répartition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.1.1 Cas scalaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.1.2 Cas vectoriel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.2 Loi de densité de probabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.3 Loi conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.4 Indépendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.5.5 Changement de variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.5.6 Espérance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.5.6.1 Cas hypergéométrique . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.5.7 Lois usuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Corrections des Travaux Dirigés 89


4.6 Théorie du Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.6.1 Classifications des signaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.6.2 Systèmes linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.6.3 Analyse non paramétrique, signaux déterministes. . . . . . . . . . . . . . . . . 94
4.6.4 Signaux aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.7 Traitement du Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.7.1 Échantillonnage et filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.7.1.1 Échantillonnage parfait . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.7.1.2 Échantillonnage réel . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4.7.1.3 Filtres non invariants . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.7.1.4 Sous-échantillonnage . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.7.2 Synthèse des filtres numériques . . . . . . . . . . . . . . . . . . . . . . . . . . 106
TABLE DES MATIÈRES vii

4.7.2.1 Filtre récursif du premier ordre . . . . . . . . . . . . . . . . . . . . . 106


4.7.2.2 Synthèse des filtres RII par invariance d’une réponse temporelle . . . 107
4.7.2.3 Synthèse de filtre récursif par la transformation bilinéaire . . . . . . . 112
4.7.3 TFD et analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.7.3.1 TFD et interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4.7.3.2 TFD et analyse spectrale . . . . . . . . . . . . . . . . . . . . . . . . 118
viii TABLE DES MATIÈRES

Préface
Le traitement du signal (ts) n’est pas un domaine à part des sciences pour l’ingénieur (spi). Sa voca-
tion est de proposer des solutions numériques à des problèmes de traitement discret1 de l’information
tels que :
– la caractérisation des signatures des signaux en vue de leur emploi pour un diagnostic (analyse),
– la modélisation de phénomènes physiques (synthèse),
– la modification de leur représentation en vue de leur transmission ou stockage (compression,
communication).
Cette discipline a des liens historiques ou ¿ génétiques À avec l’économie, les statistiques,
l’électronique, l’informatique et bien sûr les mathématiques appliquées, au sens ou elles par-
tagent des outils communs.

Cet enseignement introduit les concepts et les outils fondamentaux du ts qui seront exploités et mis
en œuvre en seconde année au travers du module de traitement numérique du signal et en troisième
année dans les modules de traitement de la parole et de l’image. Ce module est ¿ très À théorique
mais il y a assez peu de chose en somme à retenir (quelques formules que vous manipulez déjà).

L’organisation de ce document s’articule sur trois points :


– la définition du vocabulaire et de sa terminologie,
– les notions des mathématiques appliquées,
– les outils du traiteur de signal ainsi que leurs paramétrisations.
La finalité est de comprendre comment fonctionnent les outils et savoir les mettre en œuvre dans des
systèmes numériques de traitement de l’information2 .

1
micro-ordinateur, micro-contrôleur, processeurs spécialisés, instrumentation embarquée, etc.
2
Bref, un truc de plus à maı̂triser si vous voulez pas être dans le vent !
TABLE DES MATIÈRES ix

Introduction
Un signal est le reflet d’un phénomène analogique que l’on mesure avec un ou plusieurs capteurs3 .

Signal Prétraitement Signal


Filtrage Echantillonnage Quantification
Analogique Amplification
Numérique
x(t)
x[n]
Traitement Numérique du Signal
Filtrage numérique
Estimation
Classification
Modélisation
Compression

y[n] y(t)
Signal Prétraitement Signal
Déquantification
Numérique Sur-échantillonnage Analogique
Filtrage numérique

Fig. 1 – Synoptique d’une chaı̂ne d’acquisition et restitution en traitement numérique du signal.

Prérequis
– algèbre linéaire
– algèbre matricielle
– dérivation vectorielle
– calcul intégral
– série de Laurent
– probabilité & statistiques
– synthèse des filtres analogiques
– systèmes linéaires et asservissement

Notations.
z?, z : le complexe conjugué de z
i, j, k, l, m, n, p, q : un variable entière ∈ N ou Z
|z| : valeur absolue (z ∈ R) ou module (z ∈ C)
kxk : norme de x
x (t) : une fonction continue de t
x [n] , xn : une suite discrète
X : une fonction transformée dont l’originale est x (t) ou xn
Tf[x] : transformée de Fourier de x

3
Ils effectuent une conversion de la grandeur physique observée en une tension ou un courant.
x TABLE DES MATIÈRES
Chapitre 1

Théorie du signal

1.1 Les concepts de la théorie du signal


1.1.1 Notion de signal
Un signal est un modèle mathématique f (.) associé à une grandeur physique ϕ reflétant l’évolution de
ce dernier dépendamment d’une (ou plusieurs) variable(s) d’observation. En général, les phénomènes
sont observés en fonction du temps t.

ϕ −→ f (t) (1.1)
Un modèle mathématique est en général établit comme une vue simplifiée d’un phénomène.
Exemple 1.1 l’équation différentielle du second ordre d’un circuit RLC :L q̈ (t) + R q (t) + C1 q (t) =
e (t).
Exemple 1.2 L’induction magnétique dans une bobine traversée par un courant est approchée par : B =
√ µN I .
l2 +4R2

1.1.2 Notion de support


Le support est l’intervalle sur lequel est définie la variable dont dépend le signal étudié. Cette variable
est généralement associée à un temps t lorsqu’il s’agit de signaux mono-dimensionnels (1-d) et, à
une coordonnée (u, v) dans les cas bi-dimensionnels (une image par exemple). Nous nous limiterons
dès à présent à des signaux 1-d ne dépendant que du temps.
Le support peut être :
– de dimension infinie (t ∈ R).
C’est le cas de nombreuses grandeurs physiques (e.g., l’évolution de l’intensité lumineuse du soleil).
– de dimension semie-finie (t ∈ [0, +∞[).
La grandeur physique est nulle (ou considérée comme telle) avant un temps t = 0 (e.g., action sur
un interrupteur pour allumer une ampoule).
– de dimension finie (t ∈ [0, T ]).
La grandeur physique existe que pendant un temps défini (e.g., une note de musique sur une
partition qui est jouée à un instant donné et pendant une durée finie).

1.1.3 Le signal déterministe


Un signal f (t) est dit déterministe si la grandeur ϕ est décrite en tout point t de son support par
le modèle qui lui est associé.

1
2 CHAPITRE 1. THÉORIE DU SIGNAL

Nous illustrons cette définition par le modèle de vitesse d’un ascenseur défini par intervalles (cf. Fig.
1.1) :


 V Tt1 0 ≤ t < T1

V T1 ≤ t < T 2
v (t) = T3 −t (1.2)

 V T3 −T2 T2 ≤ t < T3

0 ailleurs

Exemple d"un signal déterministe, à support fini

200

150
Amplitude

100

50

0 100 200 300 400 500 600


Temps (s)

Fig. 1.1 – Signal correspondant à la vitesse lors de l’élévation d’un ascenseur.

1.1.4 Le signal aléatoire


Un signal est dit aléatoire si la mesure de la grandeur physique ϕ est perturbée par un bruit b
suivant une loi de densité de probabilité pB (b). Nous devons donc compléter l’expression du modèle
pour prendre en compte l’influence du bruit. L’hypothèse la plus courante est de considérer que le
bruit est additif :
fe(t) = f (t) + b (t) (1.3)
Ce nouveau modèle sera étudié avec les outils des probabilités.
Reprenons le modèle précédant (cf. Équ. 1.2) en considérant trois réalisations simultanées (i.e.
mesures) de ce signal (cf. Fig. 1.2).

200

100

200

100

200

100

0
0 100 200 300 400 500 600
Temps (s)

Fig. 1.2 – La mesure de la vitesse d’élévation est perturbée par un bruit rendant ce signal aléatoire.
1.1. LES CONCEPTS DE LA THÉORIE DU SIGNAL 3

Remarque 1.1 Un signal peut être perturbé par plusieurs bruits :perturbation physique, bruit de
mesure, bruit de quantification, bruit de calcul,. . .
Remarque 1.2 Le bruit peut perturber de différentes façons :bruit multiplicatif (e.g. en acoustique
sous-marine), en F1 (bruit de rotation de la terre). Le bruit additif est une hypothèse simplificatrice
utilisable dans la plupart des problèmes.
Dans le cas des signaux aléatoires il est intéressant de pouvoir mettre en évidence quelques propriétés
statistiques. Une de ces propriétés est la stationnarité (p. 14) c’est-à-dire, que certaines statistiques
du phénomène stochastique sont constantes au cours du temps.

1.1.5 Échantillonnage, Signaux discrets


Cette opération a pour but d’associer le signal continu y (t) à une suite discrète yn . La suite correspond
à la fonction originale mesurée aux temps tn (cf. Fig. 1.3) :
yn ≡ y (tn ) , n∈Z (1.4)
L’échantillonnage est dit régulier si l’intervalle de temps ∆tn entre deux mesures consécutives est
constant :

tn+1 − tn = ∆tn = Te , ∀n (1.5)


1
La quantité Te est alors appelée la période d’échantillonnage. Par dualité, la fréquence Fe = Te
est appelée la fréquence d’échantillonnage.
1

0.8

0.6

0.4

0.2
Amplitude

-0.2

-0.4

-0.6

-0.8

-1
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
Temps (s)

Fig. 1.3 – Échantillonnage d’un signal continu sinusoı̈dal.

1.1.6 Numérisation
La numérisation est l’étape suivant l’échantillonnage qui consiste à convertir l’amplitude du signal
physique mesuré en une valeur numérique binaire opération qui rend le signal échantillonné manipu-
lable par un dispositif de traitement numérique (e.g. un µP). On effectue alors une quantification
du signal (initialement se représentant sur un intervalle continu) suivant une loi pour obtenir une
représentation numérique sur un intervalle discret.
La figure (1.4) illustre la quantification linéaire d’un signal sur 4 niveaux (soit 2 bits de représentation
binaire). Le signal original x (t) est donné en haut à gauche. Le signal numérisé x̆ (t) est en haut
à droite. Le signal déquantifié x
e (t) est donné en bas à gauche et l’erreur de quantification εx (t) =
x (t) − x
e (t) en bas à droite.
4 CHAPITRE 1. THÉORIE DU SIGNAL

Signal continu en amplitude Signal quantifié


1 3

Amplitude numérique
0.5
2

Amplitude
0

1
-0.5

-1 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Temps (s) Temps (s)
Signal reconstruit Erreur de quantification
1 0.3

0.2
0.5
0.1

Amplitude

Amplitude
0 0

-0.1
-0.5
-0.2

-1
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Temps (s) Temps (s)

Fig. 1.4 – Illustration de la numérisation.

1.1.7 Classification énergétiques des signaux


L’énergie d’un signal temporel x est définie par :
Z
E (x) , |x (t)|2 dt, pour un signal à temps continu (tc) (1.6)
X
E (x) , |xn |2 , pour un signal à temps discret (td) (1.7)
n

La puissance moyenne d’un signal temporel x est définie par :


Z + T2
1
P (x) , lim |x (t)|2 dt, pour un signal à tc (1.8)
T →+∞ T − T2
+N
X
1
P (x) , lim |xn |2 , pour un signal à td (1.9)
N →+∞ 2N + 1
n=−N

On peut dire par extension que |x|2 représente la puissance instantanée du signal.

Définition 1.1 Un signal x est dit d’énergie finie si : E (x) < +∞, sa puissance moyenne est
alors nulle.
Définition 1.2 Un signal x est dit de puissance moyenne finie si : P (x) < +∞, son énergie
est infinie.

1.1.8 Espace de Hilbert et opérateurs


Sans trop entrer dans le détails, en traitement du signal nous ne manipulons que des signaux d’énergie
finie (des signaux physiquement observables) auxquels nous allons faire correspondre un espace
vectoriel complet. Cet espace est un espace de Hilbert que l’on notera L2 (E) (cette notation
désigne l’espace des signaux de support E1 et d’énergie finie ou, du point de vue mathématique, de
carré sommable). Un tel espace est muni des opérateurs suivants2 :
1
R (respectivement Z) ou une restriction pour les signaux à tc (td).
2
Une description détaillée des propriétés des opérateurs est fournie en annexe.
1.1. LES CONCEPTS DE LA THÉORIE DU SIGNAL 5

– un produit scalaire de deux signaux x et y défini par :


Z
hx, yi , x (t) y ? (t) dt (1.10)

où y ? désigne le complexe conjugué de y.


On remarque que E (x) = hx, xi (Cf. Équ. 1.6, 1.7).
– une norme s’appliquant à un signal x quelconque :
1
kxk , hx, xi 2 (1.11)
– une métrique pour apprécier la distance entre deux signaux x et y :

d (x, y) , kx − yk (1.12)
– enfin, peut-être la notion la plus exploitée, nous pouvons définir des bases dans cet espace afin
de représenter les signaux étudiés autrement que par leur représentation naturelle (en fonction du
temps par exemple). Ce qu’il faut retenir c’est que l’on peut écrire une fonction x quelconque sous
la forme d’une combinaison linéaire des fonctions de bases :
( P 1
R i βi λi Φi (t) si la base est discrète i ∈ N
x (t) = 1
β(ν)
λ (ν) Φ (t, ν) dν si la base est continue ν ∈ C
Z
=⇒ λi = x (t) Φ?i (t) dt = hx, Φi i
Z
=⇒ λ (ν) = x (t) Φ? (t, ν) dt = hx, Φν i

L’ensemble des coefficients de décomposition {λ} résultant de la projection orthogonale de x sur


{Φ} est appelé le spectre. On s’assure de l’orthogonalité des fonctions de la base en vérifiant :

hΦi , Φk i = βi δi−k
hΦν , Φζ i = β (ν) δ (ν − ζ)

On dira que la base est orthonormée si la suite {βi } ou la fonction β (ν) de pondération de la base
a pour valeur 1.
Theorème 1.1 Une propriété découlant directement du changement de base est la conservation
de l’énergie (théorème de Parseval), ce qui pour une base orthonormée s’écrit :

hx, xi = hλ, λi (1.13)

1.1.9 Signaux synthétiques élémentaires


– L’impulsion de Dirac δ (t) est définie par :
½ Z +∞
+∞, pour t = 0
δ (t) = , δ (t) dt = 1 (1.14)
0, ailleurs −∞

Il ne s’agit pas à proprement parler d’une fonction mais plutôt d’une distribution.
La propriété majeur réside dans la relation suivante :
Z +∞
x (t) δ (t) dt = x (0) (1.15)
−∞
6 CHAPITRE 1. THÉORIE DU SIGNAL

Remarque 1.3 Il ne faut pas la confondre avec l’impulsion de Kronecker δk qui est la version
discrète : ½
1, pour n = 0
δn = (1.16)
0, ailleurs
– Le peigne de Dirac qqT :
cette fonction est construite comme la superposition infinie d’impulsion de Dirac décalées d’un
pas régulier T . X
qqT (t) = δ (t − kT ) (1.17)
k

– L’échelon de Heaviside (ou échelon unité) u (t) est défini par :


½
1, pour t > 0
u (t) =
0, pour t < 0
Z t
u (t) = δ (τ ) dτ
−∞

– La rampe unité r (t) est définie par :


½
t, pour t > 0
r (t) =
0, pour t < 0
Z t
r (t) = u (τ ) dτ
−∞

– Le signal d’information (ou porte) ΠT (t) est défini par :


½ T
1, pour |t| >
ΠT (t) = 2 (1.18)
0, ailleurs
sin(πT f )
– Le sinus cardinal sinc (πT f ) = πT f

δ (t) 1
u(t)

t t
1 Π T (t)
1 r(t)

t t
1 -T +T
2 2

Fig. 1.5 – Allures des signaux synthétiques usuels.

1.2 Les systèmes


1.2.1 Caractérisation
Un système est étudié en lui applicant différents types d’excitation qui permettent de caractériser
le comportement soit en régime transitoire soit en régime dynamique. Pour le régime transitoire, si
1.2. LES SYSTÈMES 7

la stimulation est une impulsion de Dirac δ (t) (respectivement un échelon unité u (t)) la réponse
obtenue est appelée réponse impulsionnelle (réponse indicielle). Pour le régime dynamique, l’entrée
du système est un signal périodique sinusoı̈dal (A sin (2πf t) .u (t)). Le comportement d’un système,
dont la réponse impulsionnelle est h, à une entrée x sera décrit par la fonctionnelle :
y (t) = F (x (t) , h (t) , t) (1.19)
À partir des observations nous pouvons déduire les caractéristiques suivantes :

1.2.2 Linéarité
Un système est linéaire si pour une combinaison linéaire de l’entrée on obtient une combinaison
linéaire de la sortie :
αx1 (t) + βx2 (t) −→ αy1 (t) + βy2 (t) (1.20)

1.2.3 Invariance temporelle


Un système est invariant dans le temps si un retard appliqué à l’entrée produit un retard identique
sur la sortie :
x (t − τ ) −→ y (t − τ ) (1.21)

1.2.4 Produit de convolution


Un système dont la réponse propre est h soumis à une excitation x fournit une réponse y déterminée
par le produit de convolution :
Z
y (t) , x (ν) h (t − ν) dν (1.22)

= (x ? h) (t)
On démontre que ce produit de convolution est commutatif.

Si l’excitation est l’impulsion de Dirac, la réponse du système est appelée réponse impulsionnelle
et vaut la réponse propre h :
y (t) = (δ ? h) (t) = h (t) (1.23)
L’impulsion de Dirac est l’élément neutre du produit de convolution.

1.2.5 Causalité
Un système est dit causal si la réponse ne précède pas la stimulation. On s’assure cette propriété en
imposant que la réponse impulsionnelle satifasse :
h (t) = 0 t < 0 (1.24)

1.2.6 Stabilité
Un système est stable si pour une entrée bornée la sortie est bornée (ebsb) , une condition suffisante
est que la réponse impulsionnelle soit absolument convergente :
Z
|h (t)| dt < +∞ (1.25)
8 CHAPITRE 1. THÉORIE DU SIGNAL

1.3 Les transformations


Une transformation à pour but de modifier la représentation d’un signal c’est-à-dire, que l’on opère un
changement de base nous permettant de passer d’une représentation temporelle à une représentation
fréquentielle (ou autre). Nous allons passer en revue quelques unes des transformations les plus
usuelles.

1.3.1 Transformée de Laplace


La transformée de Laplace (tl) est l’outil parfait pour étudier le comportement des systèmes
linéaires dans le domaine temporel. En effet un système est un dispositif que l’on souhaite commander
suivant des excitations simples (une impulsion, un échelon, une rampe, un retard) ou complexes (une
composition linéaire des précédentes). On considère généralement que le système étudié est causal et
stable.

1.3.1.1 Définition
La tl d’une fonction y (t) causale est définie par :
Z +∞
Y (p) , y (t) exp (−pt) dt, p∈C (1.26)
0

Remarque 1.4 nous y reconnaissons sans embage une projection de la fonction y (t) sur la famille
de fonction de base {exp (pt)} :Y (p) = hy (t) , exp (pt)i.
La transformée de Laplace trouve son utilité en traitement du signal dans le domaine de la concep-
tion de filtres analogiques, et en automatique pour le contrôle de systèmes.

Original Transformée de Laplace


impulsion de Dirac δ (t) 1
dn x n
dérivation dtn
(t) u (t) p X (p)
1
exponentielle exp (−αt) u (t) p+α
, p > −α
retard x (t − τ ) exp (−τ p) X (p)
convolution (x ? y) (t) X (p) Y (p)

Tab. 1.1 – Table des transformées de Laplace utiles.

1.3.1.2 Transformée inverse


La tl étant définie dans le plan complexe, le calcul de la transformée inverse doit être effectué par
la formule de Cauchy :
I
1
y (t) , Y (p) exp (pt) dp (1.27)
j2π C
Cette formule est toutefois à utiliser que dans les cas ultimes. En effet, il est beaucoup plus rapide
lorsque cela est possible d’utiliser la propriété de linéarité et d’unicité de la tl :

αx1 (t) + βx2 (t) ­ αX1 (p) + βX2 (p) (1.28)


Afin de préparer cette transformation inverse il faudra décomposer la fonction de transfert en éléments
simples (p. 57).
1.4. CARACTÉRISATION DES SIGNAUX 9

1.3.2 Transformée de Fourier


1.3.2.1 Définition
La transformée de Fourier d’un signal y que nous noterons Y (f ) = TF {y (t)} est définie par :
Z +∞
Y (f ) , y (t) exp (−j2πf t) dt, f ∈R (1.29)
−∞

Il faut toutefois que le signal y (t) satisfasse trois conditions suffisantes pour que sa tf existe :
1. y (t) possède un nombre fini de discontinuités sur tout intervalle fini,
2. y (t) possède un nombre fini de maxima et de minima sur tout intervalle fini,
R +∞
3. y (t) est absolument intégrable, soit −∞ |y (t)| dt < +∞ ou encore y ∈ L1 (R)
Remarque 1.5 La tf est un cas particulier de la tl bilatérale pour p = j2πf .
Remarque 1.6 c’est une fois de plus une projection de la fonction y (t) sur la famille de fonction
de base {exp (2πf t)} :Y (f ) = hy (t) , exp (2πf t)i.
La transformée de Fourier permet de décomposer une fonction suivant une base trigonométrique
(des sinus et des cosinus). Cette approche mathématique est née de l’analyse de phénomènes phy-
siques vibratoires thermiques puis transposée à d’autres domaines (optique, acoustique, mécanique).
Néanmoins, elle reste un outil mathématique car elle fait apparaı̂tre des ¿ fréquences négatives À
ce qui physiquement n’a aucune interprétation.

1.3.2.2 Transformée inverse

Z +∞
y (t) = Y (f ) exp (j2πf t) df (1.30)
−∞

Original Transformée de Fourier


impulsion de Dirac δ (t) 1
dn x
dérivation dtn
(t) u (t) (j2πf )n X (p)
retard x (t − τ ) exp (−j2πτ f ) X (f )
convolution x ? y (t) X (f ) Y (f )
produit x (t) y (t) X ? Y (f )
symétrie x (t) ∈ R X (f ) = X? (−f )

Tab. 1.2 – Table des propriétés de la transformée de Fourier.

1.4 Caractérisation des signaux


L’analyse des signaux a pour but d’extraire des caractéristiques (ou signatures) permettant par
exemple de faire de la classification de données ou encore de la compression. Elle peut être effectuée
soit dans le domaine temporel soit dans le domaine fréquentiel. Pour ce faire, nous disposons de
différents outils standards d’estimation de caractéristiques macroscopiques ou microscopiques. L’idéal
serait bien sûr de construire un outil adapté au signal analysé mais, la comparaison entre signaux
devient ardue. C’est pourquoi on se contente dans la plus part des situations des outils suivants.
10 CHAPITRE 1. THÉORIE DU SIGNAL

1.4.1 Dans le domaine temporel


Les outils d’analyse dans le domaine temporel sont souvent employé pour l’analyse de phénomènes
de durée finie et brefs soit des signaux d’énergie finie.

1.4.1.1 Temps moyen


Il caractérise le centroı̈de de l’événement analysé.
Z
|x (t)|2
tmoy , t dt (1.31)
E (x)

La figure (??) montre le résultat du calcul du temps moyen sur une fonction de L2 (R)

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
0 20 40 60 80 100 120 140 160 180 200

Fig. 1.6 – Illustration des signatures temps moyen et durée moyenne.

1.4.1.2 Durée moyenne


C’est la concentration du signal autour du temps moyen.
"Z # 12
|x (t)|2
2
∆t , (t − tmoy ) dt (1.32)
E (x)
³ 2 ´
On montre dans le cas d’un signal gaussien centré (tmoy = 0) x (t) = exp − 2Tt 2 , que la durée
T
moyenne vaut :∆t = √
2
.

1.4.1.3 Fonction d’intercorrélation


Cette fonction permet de mesurer la ressemblance entre deux signaux x et y dans le domaine temporel
en comparant les fonctions d’amplitude. La fonction d’intercorrélation est une fonction temporelle
relative c’est-à-dire, qu’elle permet d’estimer une différence de temps ou de phase.
Pour des signaux d’énergie finie elle est définie par :
Z
γxy (τ ) , x (t) y ? (t − τ ) dt (1.33)
1.4. CARACTÉRISATION DES SIGNAUX 11

Pour des signaux de puissance moyenne finie elle est définie par :
Z + T2
1
γxy (τ ) = lim x (t) y ? (t − τ ) dt (1.34)
T −→+∞ T − T2

Cette fonction dispose des propriétés suivantes :


– |γxy (τ )|2 ≤ γx (0) γy (0) inégalité de Schwarz
?
– γxy (τ ) = γyx (−τ ) symétrie hermitienne (dans le cas R la fonction est paire)
La figure (1.7) illustre le calcul de l’intercorrélation entre deux fonctions trigonométriques :

x (t) = sin (8πt)


y (t) = cos (8πt)
1
γxy (τ ) = sin (8πτ )
2

1 1

0.5
0.8 0.8

0.4
0.6 0.6
0.3
0.4 0.4
0.2

0.2 0.2
0.1
Amplitude

Amplitude

Amplitude
0 0 0

−0.1
−0.2 −0.2

−0.2
−0.4 −0.4
−0.3
−0.6 −0.6
−0.4

−0.8 −0.8
−0.5

−1 −1
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 −1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1
Temps Temps Temps

Fonction sinus Fonction cosinus Intercorrélation

Fig. 1.7 – Intercorrélation entre deux fonctions trigonométriques.

La fonction d’autocorrélation γxx (ou notée γx ) indique la ressemblance du signal avec ses translations.
Cela permet de caractériser l’effet mémoire du signal comme le montre la figure (1.8) où on calcule
l’autocorrélation d’une porte rectangulaire ΠT . On voit que le maximum de ressemblance est obtenu
lorsque la translation est nulle τ = 0 et qu’au delà d’une durée ±2T il y a décorrélation.

1 0.35

0.9
0.3

0.8
0.25
0.7

0.6 0.2
Amplitude
Amplitude

0.5
0.15

0.4
0.1
0.3

0.05
0.2

0.1
0

0
−0.05
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2
Temps Temps

ΠT (t) γΠT (τ )

Fig. 1.8 – Autocorrélation d’une porte rectangulaire d’ouverture T.


12 CHAPITRE 1. THÉORIE DU SIGNAL

1.4.2 Dans le domaine fréquentiel


1.4.2.1 Fréquence moyenne

Z
|X (f )|2
fmoy , f df (1.35)
E (x)

1.4.2.2 Bande utile

"Z # 21
|X (f )|2
∆f , (f − fmoy )2 df (1.36)
E (x)
³ 2 ´
On montre dans le cas d’un signal gaussien centré (tmoy = 0) x (t) = exp − 2Tt 2 , que la bande utile
vaut :∆f = √1 .
2 2πT

Remarque 1.7 L’exemple d’un signal gaussien n’est pas donné au hasard car il est ¿ l’élément
neutre À de la transformée de Fourier. On montre dans ce cas qui est optimal que le produit ∆t∆f
1
est égal à 4π . Ceci signifie que l’on ne peut avoir simultanément une bonne résolution temporelle et
1
une bonne résolution fréquentielle. Dans le cas général, cette valeur de 4π devient une borne inférieure
que l’on nomme l’inégalité de Gabor-Heisenberg

1
∆t∆f ≥ (1.37)

1.4.2.3 Densité interspectrale d’énergie


La densité interspectrale d’énergie est égale à la transformée de Fourier de la fonction d’in-
tercorrélation (Équ 1.33). Elle caractérise la contribution énergétique des différentes composantes
fréquentielles.
Z +∞
Γxy (f ) , γxy (t) exp (−j2πf t) dt (1.38)
−∞
= X (f ) Y? (f )

De la même façon, on peut aussi définir la densité spectrale d’énergie d’un signal x par transformation
de sa fonction d’autocorrélation γx :
Z +∞
Γx (f ) , γx (t) exp (−j2πf t) dt (1.39)
−∞
= |X (f )|2

1.4.3 Analyse temps-fréquence


1.4.3.1 Transformée de Fourier à court-terme
La densité spectrale de puissance (Équ. 1.38, 1.39) permet d’analysé le contenu fréquentiel d’un
signal à condition que ce contenu soit invariant au cours du temps. Dans le cas où l’on souhaite
tracer l’évolution du contenu fréquentiel d’un signal nous devons avoir recours à une fonction de
1.5. SIGNAUX ALÉATOIRES 13

fenêtrage w à support fini (w ∈ L2 (R)) à laquelle nous appliquerons différents retard τ . Il semble
évident que cette fenêtre introduira des artefacts spécifiques dans le domaine spectral.
Z
X (τ, f ) , x (t) w (t − τ ) exp (−j2πtf ) dt (1.40)

1.4.3.2 Fonction d’ambiguı̈té

Elle permet l’étude des signaux ayant subi un décalage temporel x (t − ν) et fréquentiel x (t) exp (−j2πµt).
On mesure la distance euclidienne entraı̂née par un décalage temporel τ et un décalage fréquentiel
µ. Elle s’emploie principalement dans le traitement de signaux radar ou de type Doppler.
Z
χx (τ, f ) , x (t − τ ) x? (t) exp (−j2πf t) dt (1.41)

propriétés :
– χx (0, 0) = Ex
2
– |χ
RRx (τ, f )| ≤2 χx (0, 0) inégalité de Cauchy-Schwarz
– |χx (τ, f )| dτ df = Ex2

1.5 Signaux aléatoires


Rappels de calcul des probabilités

Z
n
E {X } = xn .pX (x) dx (1.42)
R
– Moyenne
Z
E {X} = µX = xpX (x) dx (1.43)
R
– Fonction d’intercorrélation

γXY (t1 , t2 ) = E {X (t1 ) Y ? (t2)} (1.44)

– Fonction d’autocorrélation

γX (t1 , t2 ) = E {X (t1 ) Y ? (t2)} (1.45)

– Covariance
σXY = E {(X − µX ) (Y − µY )? } (1.46)

– Variance
© ª
2
σX = var (X) = E (X − E {X})2 (1.47)
© ª
= E X 2 − µ2X
14 CHAPITRE 1. THÉORIE DU SIGNAL

1.5.1 Définition
Un signal aléatoire est un signal dont la valeur à chaque instant est une variable aléatoire. Il est
caractérisé de façon incomplète par ses caractéristiques statistiques du premier et du second ordre :

µX (t) = E {X (t)}
Z
= x (t) p (x) dx

γX (t1 , t2 ) = E {X1 (t1 ) X2 (t2 )}


Z
= x1 (t1 ) x2 (t2 ) p (x1 , x2 ) dx1 dx2

où p (x1 , x2 ) constitue la densité de probabilité conjointe entre les variables aléatoires X1 = x (t1 ) et
X2 = x (t2 ).

1.5.2 Stationnarité
Un processus est dit stationnaire au sens strict si toutes ses propriétés statistiques sont indépendantes
de l’origine des temps.

Un processus est dit stationnaire au sens large si il est stationnaire à l’ordre 2 :

µ (t) = µ
γ (t1 , t2 ) = γ (τ ) , τ = t1 − t2

1.5.3 Egrodisme
Le problème de la caractérisation des processus aléatoires réside dans l’emploi du calcul de l’espérance.
En effet, ce calcul nécessite la connaissance de la loi de densité de probabilité du processus. Or, cette
connaissance est difficilement accessible car pratiquement, il nous faudrait effectuer un nombre infini
d’expérience pour la déterminer.

Afin de s’affranchir de cette limitation, on introduit la notion d’ergodicité qui établit un lien entre
la moyenne d’ensemble (c-à-d. l’espérance) et la moyenne sur une réalisation (c-à-d. une
moyenne temporelle).

Exemple d’un processus aléatoire X (t, w) stationnaire :


Z +T
1
E {X (t)} = lim x (t, w) dt = µ (1.48)
T →+∞ 2T −T

L’ergodisme (sousentendu fort) étant une propriété difficile à démontrer, on peut montrer d’une
manière générale que pour des processus stationnaires du second ordre, il y a toujours ergodisme
faible pour la moyenne :
© ª
lim E |X (t, w) − µ|2 = 0 (1.49)
T →+∞
1.5. SIGNAUX ALÉATOIRES 15

Exemple 1.3 Soient x (t) et y (t) deux processus aléatoires centrés du second ordre, stationnaires,
ergodiques faibles. En supposant que la notion d’ergodisme faible s’étende au 2nd ordre, alors la
fonction d’intercorrélation est ergodique.
Z +T
? 1
γXY (τ ) = E {X (t) Y (t − τ )} = lim x (t) y ? (t − τ ) dt (1.50)
T →+∞ 2T −T

Au mieux on pourra estimer γXY (τ ) à partir de réalisations :


Z +T
1
γ̂XY (τ ) = x (t) y ? (t − τ ) dt (1.51)
2T −T

1.5.4 Bruit blanc


Un bruit b est dit un bruit blanc si il est centré et parfaitement décorrélé avec lui-même :

γb (τ ) = σb2 δ (τ ) (1.52)

Dans le domaine fréquentiel, sa densité spectrale de puissance est uniforme sur tout le support :

Γb (f ) = σb2 (1.53)

On désignera σb2 comme étant la puissance du bruit.

Lorsque le bruit n’est pas parfaitement décorrélé, on parlera de bruit coloré. On pourra considéré
alors que dans le domaine spectral, la puissance du bruit est constante dans une bande de fréquence
donnée :
Γb (f ) = σb2 ΠB (f )
Il sera intéressant de pouvoir connaı̂tre soit le temps de corrélation soit la bande de fréquence.

On peut exprimer l’influence du bruit sur un signal en valeur relative en définissant le rapport
signal à bruit dans le cas d’une perturbation additive. :

y (t) = x (t) + b (t)


Z T
1 +2
Py , lim |y (t)|2 dt
T →+∞ T − T
2
Z +T Z T
1 2
2 1 +2
= lim |x (t)| dt + lim |b (t)|2 dt
T →+∞ T − T T →+∞ T − T
2 2

= Px + Pb
µ ¶
Px
ρ , 10 log10 (1.54)
Pb

1.5.4.1 Identification de processus


Il arrive fréquemment que l’on doivent exploiter un système dont les caractéristiques nous sont in-
connues. Plutôt que d’effectuer des mesures heuristiques il nous est possible de procéder à une identi-
fication des caractéristiques en excitant le système avec un générateur de bruit blanc. Nous pourrons
ainsi déterminer expérimentalement la réponse impulsionnelle h (t) ou la réponse fréquentielle H (f )
16 CHAPITRE 1. THÉORIE DU SIGNAL

Générateur de
bruit blanc
e(t) Système
inconnu
s(t)
Corrélateur
γse(t)

Fig. 1.9 – Identification des caractéristiques d’un système.

(voir Fig. 1.9).

Dans le cas d’une source de bruit blanc de puissance σe2 , on montre que la fonction d’intercorrélation
entre e (t) et s (t) vaut :
γse (τ ) = σe2 h (τ )

1.5.5 Estimateurs
Soit X ∈ Rm une quantité inconnue que l’on veut évaluer : c’est la variable à estimer.
Soit Y ∈ Rp une quantité connue liée à X que l’on nomme observation.
Soit O ⊂ R l’espace d’observation désignant l’ensemble de toutes les estimations possibles.
Un estimateur de X (que l’on notera X̂) à partir des observations Y se définit comme :

X̂ (.) O → Rm (1.55)
Y 7→ X̂ = X̂ (Y )

sachant qu’idéalement on souhaite que : X̂ = X.

Le problème est de trouver un estimateur mais selon quel(s) critère(s) et à partir de quelles informa-
tions.

Pour résumer, un estimateur est un outil de mesure permettant d’évaluer la valeur d’un paramètre.
C’est rarement un outil générique. En effet, la conception de l’estimateur repose sur les caractéristiques
statistiques du signal analysé et l’emploi d’un critère d’optimisation. Le parallèle avec l’outil de me-
sure peut être prolongé par le fait que nous allons juger de ses performances dans les mêmes termes :
biais, variances et convergence.

Valeur
exacte
Estimations

Moyenne de
l'estimateur

Variance Biais

Fig. 1.10 – Caractéristiques des estimateurs.

1.5.5.1 Les critères


La détermination d’un estimateur doit se faire par la formulation d’un critère d’optimisation. En
effet, on cherche un estimateur parmi une famille d’estimateur possible il nous faut donc imposer
1.5. SIGNAUX ALÉATOIRES 17

une règle de décision afin de choisir le meilleur estimateur vis à vis du critère sélectionné. On parle
alors d’estimateur optimal au sens d’un critère. On peut aussi créer un estimateur à partir de simple
considération empiriques.

Estimateurs empiriques
La construction d’un estimateur empirique d’une caractéristique peut être simplement effectuée à
partir de l’expression de l’ergodicité. Prenons par exemple le cas de la moyenne :
Z T
1
µx = E {X} = lim x (t) dt (1.56)
T →+∞ T 0

L’estimateur empirique sera :


Z T
1
µ
cx = x (t) dt (1.57)
T 0

Erreur quadratique moyenne


Nous nous intéressons aux estimateurs empiriques que l’on peut construire sans connaissance en op-
timisant éventuellement un critère de moyenne quadratique.

Nous considérons le cas d’un signal x ∈ E que nous approchons par une série de fonctions quelconques.
L’approximation x̃ est définie dans un sous-espace de E, nous permettant de mesurer le signal d’erreur
e = x − x̃. L’erreur quadratique moyenne s’écrit :
Z
kek , |x (t) − x̃ (t)|2 dt
2
(1.58)

Cette mesure permet d’apprécier l’erreur d’approximation absolue commise. On montre que l’ap-
proximation x̃ de x est optimale au sens de l’eqm si la distance d (x, x̃) est minimale. On montre
que la solution optimale correspond à une erreur orthogonale à l’approximation. Le théorème de
Pythagore est alors vérifié :
kxk2 = kx̃k2 + kek2 (1.59)

Fig. 1.11 – Théorème de la projection orthogonale.

L’interprétation dans le cas aléatoire s’effectue simplement au sens de la puissance (voir Équ.1.54).
En effet, on peut considérer que nous avons trois espaces différents le premier étant l’espace des
observations, le second l’espace du signal et l’espace du bruit. Les deux derniers espaces sont ortho-
gonaux entre eux et forment l’espace d’observation.
18 CHAPITRE 1. THÉORIE DU SIGNAL

La construction d’un estimateur en moyenne quadratique repose sur une hypothèse de modélisation
du processus x à partir des observations y. On pose l’hypothèse que l’estimateur est linéaire :
b (Y ) = AY
X (1.60)

où A est une matrice de coefficients inconnus de dimensions m × n et Y un vecteur d’observations.

L’erreur quadratique commise s’exprime comme :


n o
b
JXb = E ||X − X (Y ) || 2

© ª
= E ||X − AY ||2

La résolution s’effectue en minimisant le critère JXb suivant A :


¯
∂JXb ¯¯
=0
∂A ¯A=Aopt

Critères statistiques
La désignation du critère peut être faite en intégrant des connaissances à priori sur le comportement
stochastique du signal aléatoire. On utilise alors des méthodes de construction des estimateurs fondées
sur les stratégies bayesiennes. Dans ce cas nous devons connaı̂tre une loi de densité de probabilité
conditionnelle généralement p (X|Y ) et nous imposer une fonction de coût. C’est de cette manière
que sont formulés les estimateurs :
– du maximum de vraisemblance,
– du maximum à posteriori,
– médian.
Nous ne développons pas dans ce cours les estimateurs statistiques avec connaissance à priori.

1.5.5.2 Caractéristiques des estimateurs


Biais
Le biais est l’erreur moyenne commise sur l’estimation de la valeur exacte, cette caractéristique peut
s’appeler aussi exactitude ou justesse. Soit a la valeur exacte et â son estimateur :

Bâ = E {a − â} (1.61)

Variance
La variance est un indicateur de la dispersion des estimées par rapport à la valeur moyenne.On peut
qualifier cette caractéristique par le terme de précision.
© ª
Varâ = E (â − E {â})2 (1.62)

Erreur quadratique moyenne


Cette caractéristique est proche de la variance elle sont même égale dans le cas d’un estimateur
non-biaisé : © ª
Jâ = E (a − â)2 (1.63)
1.6. ÉCHANTILLONNAGE 19

Convergence
On dira que l’estimateur â est convergent si et seulement si â converge en probabilité vers a quand
le nombre ou la durée d’observations tend vers +∞.

Un propriétés plus facilement exploitable est :

Bâ = 0
Jâ →n→+∞ 0

alors l’estimateur â est convergent.

Une étude de cas


On dispose de N variables aléatoires y1 , . . . , yN indépendantes d’espérance µ et de variance σ 2 . On
cherche a estimer µ in paramètre inconnu en utilisant l’estimateur suivant :
N
1 X
µ̂ (Y ) = yi
N i=1

σ2
On peut montrer que cet estimateur est sans biais et possède une erreur quadratique en N
. Par
conséquent, l’estimateur µ̂ est convergent.

1.6 Échantillonnage
1.6.1 Définitions
Cette opération a pour but de rendre le signal continu y (t) manipulable par un dispositif numérique
en lui associant une suite discrète yn . La suite correspond à la fonction originale mesurée aux temps
tn (cf. Fig. 1.12) :
yn ≡ y (tn ) , n ∈ N (1.64)
L’échantillonnage est dit régulier si l’intervalle de temps ∆tn entre deux mesures consécutives est
constant :

tn+1 − tn = ∆tn = Te , ∀n (1.65)


1
La quantité Te est alors appelée la période d’échantillonnage. Par dualité, la fréquence Fe = Te
est appelée la fréquence d’échantillonnage.
Nous pouvons introduire la fonction d’échantillonnage en utilisant le peigne de Dirac qqTe :
+∞
X
qqTe (t) = δ (t − n Te )
n=−∞

Tf [qqTe (t)] = Fe . qqFe (f )

Le signal échantillonné s’exprime alors comme :

ye [n] = y (t) . qqTe (t) (1.66)


20 CHAPITRE 1. THÉORIE DU SIGNAL

0.8

0.6

0.4

0.2

Amplitude
0

-0.2

-0.4

-0.6

-0.8

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

Fig. 1.12 – Échantillonnage d’un signal sinusoı̈dal.

dont la transformée de Fourier est :

+∞
X
Ye (f ) = Fe . (Y ? qqFe ) (f ) = Fe Y (f − nFe ) (1.67)
n=−∞

L’échantillonnage a pour effet de périodiser le spectre du signal avec une période égale à la fréquence
d’échantillonnage Fe .

Theorème 1.2 de l’échantillonnage ( Shannon)


Un signal ne contenant pas de composantes fréquentielles supérieures ou égales à une valeur Fmax
(le spectre est alors à support borné [−Fmax , +Fmax ]) est entièrement déterminé par la suite de ses
valeurs à des instants régulièrement espacés de la durée Te ≤ 2 F1max (⇐⇒ Fe ≥ 2 Fmax ). Le signal
original est reconstructible à partir des échantillons mesurés.
Dans le cas où la fréquence d’échantillonnage ne satisfait pas le théorème de Shannon (Fe < 2Fmax ,
soit un sous-échantillonnage), on observe la présence d’un recouvrement dans le domaine spectral.
La reconstruction du signal est alors impossible.
spectrale de puissance

1 1

0.9 0.9

0.8 0.8
Densitéspectrale de puissance

0.7 0.7

0.6 0.6

0.5 0.5

0.4 0.4
Densité

0.3 0.3

0.2 0.2

0.1 0.1

0 0
-100 -80 -60 -40 -20 0 20 40 60 80 100 -300 -200 -100 0 100 200 300
Frequences Frequences

Spectre original. Sur-échantillonnage (Fe > 2Fmax ).


1.6. ÉCHANTILLONNAGE 21

spectrale de puissance
1 1

0.9 0.9

0.8 0.8

Densitéspectrale de puissance
0.7 0.7

0.6 0.6

0.5 0.5

0.4 0.4

Densité
0.3 0.3

0.2 0.2

0.1 0.1

0 0
-100 -80 -60 -40 -20 0 20 40 60 80 100 -150 -100 -50 0 50 100 150
Frequences Frequences

Sous-échantillonnage (Fe < 2Fmax ). Échantillonnage critique (Fe = 2Fmax ).

1.6.2 Mise en œuvre


Les conséquences pratiques sont :
– si le signal est à bande limitée, on choisit la fréquence d’échantillonnage pour satisfaire le théorème
de Shannon,
– si la fréquence d’échantillonnage est déterminée, on filtre le signal continu pour éliminer les
fréquences > F2e (filtrage anti-repliement)
22 CHAPITRE 1. THÉORIE DU SIGNAL

1.7 Travaux dirigés de théorie du signal


1.7.1 Classifications des signaux
Exercice 1.1 Classer suivant l’énergie puis, suivant la puissance moyenne, les signaux suivants :
u (t), r (t), ΠT0 (t), A sin (2πf0 t) u(t).
Exercice 1.2 Soit un signal x (t) définit par :
½ 3
t, 0 ≤ t < 4
x (t) = 4
0, ailleurs
– Représenter graphiquement
¡ ¢ le signal x (t) ainsi que ses transformations : x1 (t) = x (t − 3), x2 (t) =
x (2t), x3 (t) = x 2t x4 (t) = x (−t).
– Calculer l’énergie de chaque signal xi .
Exercice 1.3 Soit le signal x (t) définit par :


 t + 1, −1 ≤ t < 0

1, 0 ≤ t < 1
x (t) =

 2, 1 ≤ t < 2

0, ailleurs
– Représenter graphiquement ce signal,
– Écrire la décomposition de x (t) en fonctions simples (échelons, . . .), ¡ ¢
– Représenter :x1 (t) = x (t) u (1 − t), x2 (t) = x (t) (u (t) − u (t − 1)), x3 (t) = x (t) δ t − 23 .
– Calculer l’énergie de chaque signal.
Exercice 1.4 Déterminer le produit scalaire des signaux
µ ¶
T
x1 (t) = A cos (2πf0 t + θ) ΠT t −
2
µ ¶
T
x2 (t) = A sin (2πf0 t + θ) ΠT t −
2
En déduire la relation que doivent vérifier T et f0 pour que les signaux soient orthogonaux. Exprimer
dans ce cas les signaux x1 (t) et x2 (t) à l’aide de leur énergie commune E.
Exercice 1.5 On modélise un signal y (t) comme une composition linéaire d’une famille de fonctions
orthogonales {ϕj (t)}0≤j≤N :
N
X
yd
(t) = λj ϕj (t)
j=0

hϕj , ϕk i = βk δj−k
On veux obtenir la meilleure représentation pour la suite de coefficients {λj } au sens de l’erreur
quadratique moyenne : Z ¯ ¯2
¯ ¯
J = ¯y (t) − yd (t)¯ dt
© ª
Montrer que les coefficients optimaux λopt
j sont obtenus par un simple calcul du produit scalaire
(ie. une projection orthogonale) :
1
λopt
j = hy, ϕj i
βj
NB : On pensera à J minimiser en fonction de λj .
1.7. TRAVAUX DIRIGÉS DE THÉORIE DU SIGNAL 23

1.7.2 Systèmes linéaires


Exercice 1.6 Soit h la réponse impulsionnelle d’un système :

h (t) = 2 exp (−t + τ ) .u (t − τ )

– Quelle est la condition pour que le système soit causal ?


– Est-il stable ?
– On choisit τ = 2, trouver graphiquement puis par calcul la réponse du système pour une entrée x
valant :x (t) = δ (t + 1) + δ (t) + u (t − 4) − u (t − 7).
Exercice 1.7 Soit h un système dont la réponse impulsionnelle est :h (t) = Ku (t) , K ∈ R∗ .
– Le système est-il causal ?
– Est-il stable ?
On asservit le système précédant en introduisant la fonction de transfert B (p) = β de la façon
suivante :

X H Y
+
-

Fig. 1.13 – Asservissement d’un système.

– Le système asservi est-il causal ?


– Est-il stable ?
Exercice 1.8 Soit le signal x dont la Tf est X (f ) = X0 ΠB (f ), est modulé en amplitude par une
porteuse y (t) = A0 sin (2πf0 t).
– Calculer et représenter graphiquement la densité spectrale d’énergie ( dse) des trois signaux x, y, z =
xy.
– On échantillonne le signal modulé avec un peigne de Dirac de périodicité T = 2f10 .
– Quelle est la conséquence de cette opération dans le domaine spectral ?
– Comment récupérer facilement le spectre X (f ) du signal modulant ?
Exercice 1.9 Soit x (t) = AΠτ (t), calculer le produit de convolution :

Λ (t) = (x ? x) (t)

– Tracer le résultat et observer les modifications engendrées par l’opérateur de convolution.


– On convolue le signal Λ en utilisant un peigne de Dirac de période T .
– Représenter le résultat de la convolution pour les valeurs suivantes :τ = 1, T = {1, 2, 3}.
Exercice 1.10 Soit le signal x (t) = A cos (2πf0 t) que l’on tronque avec la fonction porte ΠT (t)

xT (t) = x (t) .ΠT (t)

– Déterminer l’influence de la troncature en calculant |XT (f )| le module de la Tf de xT .


24 CHAPITRE 1. THÉORIE DU SIGNAL

1.7.3 Analyse non paramétrique, signaux déterministes.


Exercice 1.11 Un tapis roulant convoye des boı̂tes rectangulaires à une vitesse V d’un point A vers
un point B distant d’une mesure D. Un capteur optique binaire placé en A délivre un signal xA (t)
et un autre identique placé en B fournit un signal xB (t). Montrer qu’en calculant l’intercorrélation
des deux signaux de mesures nous pouvons estimer le temps de transit sur le tapis et par la même,
contrôler sa vitesse V (on supposera que la vitesse reste constante pendant le trajet d’une boı̂te).
Exercice 1.12 Une source ponctuelle émet un signal s (t) = S0 sin (2πf0 t + φ0 ). Cette source est à
une position fixe inconnue que nous souhaitons déterminer. Nous avons disposé deux antennes A et
B pour capter le signal émis. Montrer que la fonction de corrélation permet de résoudre ce problème
de localisation. (On posera que la vitesse v de propagation dans le milieu est constante).

A B
S

Fig. 1.14 – Localisation d’une source.

Exercice 1.13 Calculer la transformée de Fourier d’une fonction porte Π d’ouverture T . Calculer
le produit de convolution et la fonction d’autocorrélation de cette fonction par elle-même. Que vaut
la tf du signal convolué ?
¡ ¢
Exercice 1.14 Soit le signal x (t) = u (t) exp − Tt , on souhaite appliquer une analyse spectrale sur
un enregistrement y (t) de ce signal de durée L. Calculer les tf de x et y. Quelle relation doit vérifier
la longueur moyenne de l’enregistrement T pour que l’erreur relative commise en confondant Y (f )
et X (f ) soit inférieure à 1 %.
Exercice 1.15 Déterminer les temps moyens, les fréquences moyennes, les durées et les bandes
utiles des signaux suivants :
– x1 (t) = ΠT (t − τ ),
– x2 (t) = u (t − τ ) . exp (−a (t − τ )) , a > 0,
R 4
– x3 (t) = ΛT (t) (on admettra que sinu2(u) du = π4 ),
– x4 (t) = a exp (λt2 ) , λ < 0.
1.7. TRAVAUX DIRIGÉS DE THÉORIE DU SIGNAL 25

1.7.4 Signaux aléatoires


Exercice 1.16 On considère le signal

x (t) = s (t) + b (t)


s (t) = A sin (2πf0 t + φ)

b (t) est un bruit blanc gaussien, stationnaire, ergodique, centré N (0, σ 2 ). φ est une phase aléatoire
indépendante de b (t) suivant une loi uniforme sur [0, 2π].
– Le signal x est-il aléatoire ?
– Calculer la moyenne µx (t) de x (t) . Le signal est-il stationnaire ?
– Calculer l’autocorrélation γx (τ ) de x (t).
– Donner l’expression de la fonction de corrélation pour un signal déterministe de puissance moyenne
finie.
– Donner l’autocorrélation déterministe Γx (τ ) de x (t).
– Montrer que la moyenne statistique de l’autocorrélation déterministe est identique à la fonction de
corrélation γx (τ ).
Exercice 1.17 Soit x (t) un bruit blanc stationnaire de paramètres N (µx , σx2 ) que l’on filtre par un
système déterministe de réponse impulsionnelle h (t) et de transformée de Fourier H (f ).
– Calculer la moyenne µy du signal de sortie y.
– Calculer σy2 .
Exercice 1.18 Soit l’estimateur de la fonction de corrélation suivant :
Z +∞
γ̂xy (τ ) = K (τ ) . xw (t) yw? (t − τ ) dt
−∞

où fw est la fonction f multipliée par la fenêtre d’observation w (w (t) = ΠT (t)). K est une fonction
de pondération.
Nous allons étudier le biais de cet estimateur pour deux pondérations différentes. L’une d’entre elles
sera :
1
K1 (τ ) =
T
– Exprimer la moyenne statistique de l’estimateur.
– Déterminer le biais pour K1 (τ ).
– Comment choisir K2 (τ ) pour que l’estimation soit sans biais ?
– Calculer la densité spectrale de puissance et conclure sur les deux estimateurs.
26 CHAPITRE 1. THÉORIE DU SIGNAL
Chapitre 2

Travaux Pratiques de Théorie du Signal

2.1 Introduction à Matlab


Le but de ce document est de vous initier à la programmation Matlab. Le débutant trouvera des
informations fortement utiles dans les premières sections. Mais, ce document ne se propose en aucun
cas de remplacer la documentation ou les manuels de référence. En revanche, il présente aussi une
série de problèmes de programmation avancée et des détails d’exploitation qui seront intéressants
même pour les utilisateurs plus expérimentés. Finalement, on trouve une liste assez complète des
réponses aux questions les plus fréquentes liées à l’utilisation du Matlab.

On suppose que ceux qui vont lire ce document possèdent déjà les notions rudimentaires de la
programmation C et de l’environnement Windows.

2.1.1 Les notions de base


Matlab est un puissant outil de calcul numérique et visualisation. Son nom signifie MATrix LA-
Boratory, c’est à dire un environnement interactif de calcul matriciel. La facilité de développement
des applications dans son langage fait qu’il est pratiquement devenu le standard dans son domaine.
Actuellement, on trouve des nombreuses boı̂tes-à-outils (Toolboxes) qui contiennent des fonctions
spécialisées permettant d’utiliser l’environnement Matlab pour résoudre des classes spécifiques de
problèmes.

2.1.1.1 Démarrage d’une session


Le lancement de Matlab se fait tout simplement en le lançant depuis le menu Démarrer :

>>Démarrer>Programmes>Matlab>Matlab
Cette fenêtre deviendra alors la fenêtre de commande Matlab 1 . Il s’agit en effet d’une interface en
mode texte avec l’interpréteur de langage Matlab dans laquelle vous pouvez exécuter des instruc-
tions spécifiques ou lancer des programmes.

L’affichage des résultats numériques se fera en mode texte dans cette même fenêtre ou dans une autre
fenêtre en mode graphique (en faisant appel aux fonctions de visualisation de Matlab).
1
Vous pouvez aussi rajouter un lien pointant vers l’exécutable disposé sur votre bureau, il suffit alors de cliquer
sur l’icone correspondante pour qu’une fenêtre similaire s’ouvre dans votre environnement.

27
28 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Fig. 2.1 – La fenêtre de commande Matlab.

2.1.1.2 Types des fichiers : Compatibilité entre Dos et UNIX


Les programmes Matlab sont des fichiers Ascii qui contiennent des commandes spécifiques. La
convention est que le nom d’un tel fichier doit se terminer en .m. Pour exécuter un tel programme en
Matlab il suffit de taper son nom dans la fenêtre de commande, mais sans l’extension par défaut .m.
Les fichiers sont parfaitement compatibles entre les stations et les PC. C’est à dire, si vous récupérez
par Ftp des fichiers qui étaient sur une station Unix, ces fichiers resteront toujours exécutables
par Matlab PC (même procédure pour le transfert PC → Unix). Une seule petite observation :
n’oubliez pas de configurer le transfert Ftp en mode Ascii, sinon (en binaire) la convention de fin de
ligne qui est différente sous Unix et Dos va rendre votre programme illisible. Vous devez employer
le mode de transfert binaire seulement pour les fichiers qui ont des noms terminés en .mat. Ce sont
des fichiers des donnes Matlab, qui utilise le format binaire pour des raisons d’efficacité et de taille.

L’édition de programmes .m est un processus totalement indépendant de Matlab. Vous êtes ainsi
libre d’utiliser votre logiciel d’édition préféré.

2.1.1.3 Documentation : Aide en ligne


La documentation de Matlab est particulièrement riche. Le logiciel est livré en standard avec plu-
sieurs documentations dont :

– Users Guide - destiné surtout aux débutants. Cette documentation vous prend la main et vous
guide lentement dans les méandres du langage Matlab. Si vous êtes un débutant, le passage par
cette documentation est quasiment inévitable

– Reference Guide - tout comme son nom l’indique il s’agit d’un document qui décrit tous les
éléments de langage Matlab (instructions, fonctions et leurs paramètres). Grâce à son index très
complet, il permet de retrouver facilement des informations

– Signal Processing Toolbox User’s Guide - le guide d’utilisation de la boı̂te à outils de traite-
ment de signal. Il contient deux parties : Tutorial et Reference, conçues de même manière que les
deux documentations correspondantes Matlab

– Image Processing Toolbox User’s Guide - le guide d’utilisation de la boı̂te à outils de traite-
ment d’image
2.1. INTRODUCTION À MATLAB 29

– Communication Toolbox User’s Guide - le guide d’utilisation de la boı̂te à outils de télécom-


munications

– Simulink User’s Guide - le guide d’utilisation de l’interface graphique de simulation

– Building a Graphical User Interface - il s’agit d’un document qui traite les fonctions Matlab
d’interaction graphique avec l’utilisateur. Parmi toutes les documentations, c’est de loin le livre
le moins complet. Heureusement, il contient de nombreux exemples qui peuvent conduire, par le
biais de l’expérimentation, à une parfaite maı̂trise de l’interface graphique (si cela est vraiment
nécessaire)

– External Interface Guide - c’est un des ouvrages les plus utiles parce qu’il traite l’interaction
de Matlab avec des programmes externes, notamment celles écrites en langage C (voir p. 42).

De même, l’aide en ligne est très complète. Il suffit de taper dans la fenêtre de commande :
>>help
et le résultat sera une énumération de ce type :
HELP topics:
matlab\general - General purpose commands.
matlab\ops - Operators and special characters.
matlab\lang - Programming language constructs.
matlab\elmat - Elementary matrices and matrix manipulation.
matlab\elfun - Elementary math functions.
matlab\specfun - Specialized math functions.
matlab\matfun - Matrix functions - numerical linear algebra.
matlab\datafun - Data analysis and Fourier transforms.
matlab\polyfun - Interpolation and polynomials.
matlab\funfun - Function functions and ODE solvers.
matlab\sparfun - Sparse matrices.
matlab\graph2d - Two dimensional graphs.
matlab\graph3d - Three dimensional graphs.
matlab\specgraph - Specialized graphs.
matlab\graphics - Handle Graphics.
matlab\uitools - Graphical user interface tools.
matlab\strfun - Character strings.
matlab\iofun - File input/output.
matlab\timefun - Time and dates.
matlab\datatypes - Data types and structures.
matlab\winfun - Windows Operating System Interface Files (DDE/ActiveX)
matlab\demos - Examples and demonstrations.
comm\comm - Communications Toolbox
comm\commsfun - Communications Toolbox SIMULINK S-functions.
comm\commsim - Communications Toolbox SIMULINK files.
wavelet\wavelet - Wavelet Toolbox.
wavelet\wavedemo - Wavelet Toolbox Demos.
dspblks\dspblks - DSP Blockset.
dspblks\dspmex - (No table of contents file)
30 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

dspblks\dspdemos - (No table of contents file)


images\images - Image Processing Toolbox.
images\imdemos - Image Processing Toolbox --- demos and sample images
toolbox\signal - Signal Processing Toolbox.
simulink\simulink - Simulink
simulink\blocks - Simulink block library.
simulink\simdemos - Simulink demonstrations and samples.
simulink\dee - Differential Equation Editor
toolbox\tour - matlab Tour
toolbox\local - Preferences.
For more help on directory/topic, type "help topic".
Il s’agit d’une énumération de toutes les sections de l’aide en ligne. Pour une aide sur une certaine
section il suffit de taper help suivi du nom de la section. Par exemple, la commande :
>>help ops
aura comme résultat une liste de tous les opérateurs utilisés par Matlab.

Pour une aide encore plus pointue, la commande help peut être suivie par le nom de la commande
dont on souhaite le détail. Supposant qu’on veut voir l’utilisation de la commande fft2, il suffit
d’écrire :
>>help fft2
La commande helpwin est équivalente à help la différence est qu’une fenêtre d’aide sera ouverte
vous offrant la possibilité d’invoquer une aide au format hypertexte.
>>helpwin fft2

Fig. 2.2 – Une fenêtre d’aide invoquée par helpwin.

Une autre commande utile est lookfor mot-clé


>>lookfor string
recherche toutes les fonctions Matlab ou utilisateur qui contiennent dans leur aide la chaı̂ne de
caractères ¿ string À.
2.1. INTRODUCTION À MATLAB 31

L’information fournie par l’aide en ligne est plus ou moins équivalente avec celle contenue dans les
Reference Guides.

Une autre source d’informations extrêmement riche est le programme de démonstration de Matlab.
Vous pouvez le lancer avec la commande demo.

2.1.2 Les débuts en Matlab


2.1.2.1 Types de données
La plus forte limitation de Matlab, et toutefois la source de sa puissance, est le fait qu’il accepte
un seul type des données : les matrices (les vecteurs et les scalaires étant des cas particuliers des ma-
trices). Pratiquement, aucun autre type de donnée ne peut pas être défini (avec une seule exception,
sur laquelle on va insister à la page 41).

Plus restrictif encore, il travaille seulement en format numérique flottant, ce qui signifie 8 octets par
élément.

Deux valeurs particulières sont définies :


– NaN (Not a Number ), qui est le résultat d’une indétermination de type 00 ,

– inf qui indique la divergence d’un résultat 10 .

On peut définir des nombres complexes, en utilisant le symbole i (ou j, pour ceux qui préfèrent des
notations plus ¿ ingénieur À).

Des fonctions booléennes peuvent être utilisées dans les structures de contrôle de type if ou while.
Un exemple de définition explicite d’une matrice est le suivant :
>>a=[1 3 2; 3 3 3; 2 2 1];
On peut vérifier l’existence de la matrice a en écrivant son nom sur la ligne de commande :
>>a

a =
1 3 2
3 3 3
2 2 1

Remarque 2.1 Lors de l’exécution de l’instruction précédente, Matlab recherche d’abord si il


existe une variable a définie dans l’espace de travail. Dans le cas contraire, il recherche si il existe
une fonction portant ce nom. Le message suivant sera affiché si aucune variable ou fonction n’est
trouvée :
??? Undefined function or variable ’a’.
Attention donc de ne pas redéfinir les noms de fonctions comme matrices - ceci est en effet une
source importante des erreurs pour les débutants.
Remarque 2.2 À remarquer aussi le fait que la présence de ¿ ; À après une instruction empêche
l’affichage du résultat de cette instruction.
32 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

2.1.2.2 Opérateurs
Matlab admet l’utilisation de tous les opérateurs usuels (addition, multiplication, etc.) avec les
règles de priorité bien connues. Nous allons effectuer quelques opérations simples avec la matrice a
qui a été définie dans la section précédente.
>>b=a+a

b =
2 6 4
6 6 6
4 4 2
Remarquez la facilité dont on peut créer des nouvelles matrices. Nul besoin de spécifier la taille de
la matrice b, elle est attribuée automatiquement. Plus intéressant encore, la taille de la matrice se
modifie de façon adaptative :
>>b=[b a]

b =
2 6 4 1 3 2
6 6 6 3 3 3
4 4 2 2 2 1
Maintenant nous allons ¿ couper À la matrice b pour revenir à sa valeur initiale. Les éléments de
b peuvent être manipulés en utilisant la syntaxe b(x,y) ou x est l’indice de la ligne et y l’indice de
la colonne de l’élément à manipuler. Alors la commande :
>>b=b(1:3,1:3)

b =
2 6 4
6 6 6
4 4 2
retient seulement les 3 premières colonnes de b et nous permet de retrouver sa valeur initiale. En
passant, remarquons que l’expression x :y a comme résultat la création d’une série de nombres en
commençant par x et en rajoutant 1 sans qu’on dépasse le seuil supérieur y. On évalue une telle
série :
>>2.5:6

ans =
2.5000 3.5000 4.5000 5.5000
Maintenant, nous allons voir un autre exemple :
>>c=a*b

c =
28 32 26
36 48 36
20 28 22
le résultat est, normalement, le produit matriciel de a et b. Supposons que nous voulons calculer le
produit scalaire (élément par élément) des matrices a et b. Dans ce cas, il suffit de rajouter le symbole
¿ . À (point) avant l’opérateur de multiplication :
2.1. INTRODUCTION À MATLAB 33

>>c=a.*b

c =
2 18 8
18 18 18
8 8 2
Cette règle est valable pour tous les opérateurs qui peuvent admettre une utilisation duale (matricielle
et scalaire) : division, exponentiation. On peut commuter vers l’opération scalaire juste en rajoutant
un point avant l’opérateur en cause.

2.1.2.3 Fonctions Matlab


Un grand nombre de fonctions mathématiques élémentaires (fonctions trigonométriques, exponen-
tielle, logarithmique) sont déjà définies dans l’environnement Matlab. Ces fonctions s’appliquent
sur les matrices de façon élément par élément. En plus par rapport à ces fonctions, l’utilisateur peut
définir lui-même des fonctions pour automatiser certaines opérations. Par exemple, si sur le disque
dur se trouve un fichier qui s’appelle fact.m et son contenu est :
function [resultat]=fact(ent)

% Fonction factorielle
% un exemple pour le cours d’initiation Matlab
% entrée = u nombre n quelconque
% sortie = -1 si n non-entier positif
% sortie = n! si n entier positif
if ~(ent==round(abs(ent)))
resultat=-1;
elseif (ent==0)
resultat = 1;
else
resultat=ent*fact(ent-1);
end
return
Nous pouvons maintenant utiliser cette fonction pour calculer le factoriel d’un nombre entier n.

>>fact(10)

ans =
3628800
La convention de définition de la fonction ressemble tout à fait aux autres langages de programmation
structurée. Cet exemple en apparence trivial contient plusieurs informations importantes. On observe
que Matlab accepte aussi des fonctions récursives, ce qui est quand même remarquable pour un
langage interprété. Ca ne veut pas dire que l’utilisation de ce genre de fonctions est souhaitable, mais
du point de vue de la flexibilité, Matlab n’a rien à envier aux langages compilés.

Comme vous avez déjà deviné, le symbole ¿ % À précède une ligne de commentaires qui seront
ignorées. Mais si ces lignes sont en début de fonction on va voir que la commande :
>>help fact
34 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Fonction factorielle
un exemple pour le cours d’initiation Matlab
entrée = u nombre n quelconque
sortie = -1 si n non-entier positif
sortie = n! si n entier positif
donne un résultat intéressant. Maintenant notre fonction fact.m est intégrée de façon cohérente dans
l’environnement Matlab. Elle se comporte de la même manière que les fonctions ¿ natives À . On
peut même l’inclure dans une bibliothèque de fonctions Matlab.

D’un point de vue un peu plus technique, une M-fonction ne sera interprétée que lors de sa première
invocation. Le script est lu et compilé par l’interpréteur puis placé en mémoire pour l’exécution.
Matlab ne recompilera le script que si une modification du fichier Ascii est détectée. Cependant, il
se peut que les modifications apportées ne soient pas automatiquement prises en compte (cela peut
se produire lorsque l’unité de travail est un lecteur réseau), il faut alors effacer le programme compilé
de la mémoire en utilisant la commande clear 2 :
>>clear fact
Par ailleurs, si vos M-fonctions sont enregistrées sur un lecteur réseau, il faut forcer à Matlab à
détecter les éventuels changements apportés au scripts invoqués. Pour cela vous devez valider l’op-
tion : ¿ Always Reload Network Directories À dans le menu File> Preferences>General.

Des centaines de fonctions de ce type sont livrées dans la distribution Matlab standard et aussi dans
les boı̂tes à outils. De même que de nombreuses fonctions faites par des chercheurs et ingénieurs du
monde entier sont disponibles gratuitement au site Web de Mathworks (les auteurs de Matlab)
http ://www.mathworks.com.

2.1.2.4 Eléments de langage Matlab


Le langage Matlab contient des éléments pour le contrôle du flot de données. Ce sont des éléments
de programmation classique : des boucles for et while, des décisions de type if/else/elseif, des
fonctions pour l’interaction avec l’utilisateur en mode texte (dans la fenêtre de commande) : input,
keyboard, menu. Ceux qui ont déjà apprivoisé un langage de programmation structurée ne de-
vraient pas avoir de problème pour utiliser ces instructions.

Il faut faire attention à ne pas abuser de ces instructions. Les débutants oublient assez souvent la
philosophie de Matlab et construisent des boucles de ce genre :
>>for index=1:10
fnc[index]=index^3;
end
C’est lourd et c’est lent et ça ne tient pas compte de la vectorisation offerte par Matlab. L’alternative
suivante :
>>index=1:10;
fnc=index.^3;
est beaucoup plus élégante et surtout, plus rapide. À terme, cette manière d’écrire fait que votre
programme est plus facile à dépanner et à modifier.
2
Il est conseillé de consulter l’aide de cette commande.
2.1. INTRODUCTION À MATLAB 35

2.1.3 Pour aller plus loin


2.1.3.1 Manipulation de matrices. Fonctions spécialisées
La manipulation des matrices est fondamentale pour Matlab. Pratiquement toutes les opérations
que nous faisons sur le papier peuvent être faites en Matlab et ce, en gardant la même notation ;
bien sûr dans les limites du mode texte. Nous allons commencer par la génération d’une matrice 3 × 3
qui contient seulement des unités :
>>a = ones(3)

a =
1 1 1
1 1 1
1 1 1
Nous allons retenir la portion triangulaire inférieure de cette matrice
>> b=tril(a)

b =
1 0 0
1 1 0
1 1 1
Cette matrice sera transposée
>> b=b’

b =
1 1 1
0 1 1
0 0 1
Le déterminant de b est, bien sûr,
>> det(b)

ans =
1
et son inverse
>> inv(b)

ans =
1 -1 0
0 1 -1
0 0 1
et son vecteur de valeurs propres
>> eig(b)

ans =
1
1
1
36 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Jusqu’ici, rien de spécial. On va modifier un peu cette matrice :


>> b=b^5+b’^3

b =
2 5 15
3 2 5
6 3 2
La triangularisation factorielle d’une matrice est la décomposition d’une matrice carrée en deux
matrices, une étant la permutation (par lignes) d’une matrice triangulaire inférieure, l’autre étant
une matrice triangulaire supérieure. Pour trouver cette décomposition (dite Lower-Upper ou LU) une
seule commande suffit :
>> [l,u]=lu(b)

l =
0.3333 1.0000 0
0.5000 0.1250 1.0000
1.0000 0 0
u =
6.0000 3.0000 2.0000
0 4.0000 14.3333
0 0 2.2083
Je vous laisse le plaisir de montrer la validité de cette décomposition et surtout, le fait qu’elle est
unique. Cet exemple peut paraı̂tre trop pointu et limité comme application, mais il faut préciser que
Matlab contient des nombreuses fonctions spécialisées qui peuvent vous servir dans le cadre de vos
applications.

Avant de programmer une fonction dont vous avez besoin, je vous conseille de chercher attentivement
dans la référence, peut être qu’elle est déjà écrite. Matlab est à la fois simple et complexe, et même
les utilisateurs les plus chevronnés ne prétendent pas connaı̂tre la totalité des fonctions Matlab.

2.1.3.2 Polynômes
Les polynômes sont représentés comme des vecteurs ligne qui contiennent les coefficients dans l’ordre
décroissant des puissances. Par exemple le polynôme x4 + 3.5x3 − 3.9x2 + 8x − 20 s’écrit :
>> p = [1 3.5 -3.9 8 -20]

p =
1.0000 3.5000 -3.9000 8.0000 -20.0000
Les racines de ce polynôme sont :
>> r = roots(p)

r =
-4.8285
-0.0843 + 1.6613i
-0.0843 - 1.6613i
1.4970
2.1. INTRODUCTION À MATLAB 37

On peut reconstruire le polynôme en partant de ses racines


>> poly(r)

ans =
1.0000 3.5000 -3.9000 8.0000 -20.0000
On utilise sans aucun problème les opérateurs et les fonctions pour la manipulation de matrices sur
ces vecteurs qui représentent des polynômes.

2.1.3.3 Affichage 2D et 3D
Matlab offre une grande variété de fonctions pour la représentation des matrices et des vecteurs.
Cette section contient un court passage en revue de ces fonctions.

Commençons par définir deux vecteurs qui contiennent les fonctions f1(x)=sin(x) et f2(x)=cos(x) sur
l’intervalle [−2π, 2π] , en 100 points.
>> x = -2*pi:(4*pi/99):2*pi;
f1=sin(x); f2=cos(x); plot(x,f1,’b-’,x,f2,’r-.’);
La dernière commande produit un graphique de nos deux fonctions sur l’intervalle de définition.
La syntaxe de la commande est plot(x,f,’attributes’) ; le résultat sera un graphique linéaire des
éléments de f en fonction des éléments de x tracé avec les attributs spécifiés entre apostrophes. La
fonction f 1 sera tracée avec une ligne continue bleue, et la fonction f 2 en pointillé, couleur rouge.

On peut modifier l’axe x de telle façon que notre graphique soit mieux adapté aux dimensions de la
figure :
>> axis([-2*pi 2*pi -1 1]);
Nous allons rajouter une grille, des étiquettes sur les deux axes et un titre :
>> grid on; %la grille
xlabel (’x’); %l’étiquette de l’axe 0x
ylabel (’f1 et f2’); %l’étiquette de l’axe 0y
title (’Un exemple de plot 2D’); %le titre

Un exemple de plot 2D
1

0.8

0.6

0.4

0.2
f1 et f2

−0.2

−0.4

−0.6

−0.8

−1
−6 −4 −2 0 2 4 6
x

Fig. 2.3 – Résultat de l’affiche de courbes bidimensionnelles.

Supposons que nous voudrions rajouter au graphique une fonction f 3 égale au produit de f 1 et f 2 :
38 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

>> f3 = f1.*f2;

nous allons indiquer que le prochain tracé sera superposé sur l’ancien graphique :

>> hold on;

et la commande :

>> plot(x,f3,’rx’);

aura comme résultat final la Fig. (2.3).

Maintenant on va définir une matrice qui contient la fonction bidimensionnelle f :


r ³ ³ y ´´
f (x, y) = exp (sin (x)) + exp sin
2

sur le domaine [−2π, 2π] × [−2π, 2π] en 100 × 100 points. Pour générer les matrices x et y :

>> x = -2*pi:(4*pi/99):2*pi;
[x,y] = meshgrid(x,x);

La matrice f se définit comme :

>> f = sqrt(exp(sin(x)) + exp(sin(y/2)));

Nous allons tracer la surface correspondant à f en fonction de x et y en ¿ fil de fer À avec la


commande mesh :

>> mesh(x,y,f)

La fonction f en contour 3D avec 20 courbes de niveau :

>> contour3(x,y,f,20)

On peut couper un morceau 40 × 40 de notre matrice f et construire une surface en facettes :

>> m=f(1:40,1:40);
surf(m); shading faceted

et finalement pour une représentation de cette surface en ombrage interpolé on utilise la commande :

>> shading interp

On peut calculer le gradient de la matrice m et le visualiser sur la forme d’une carte des vecteurs :

>> [px,py] = gradient(m);


quiver(px,py);

Nous avons vu une grande variété de représentations graphiques, mais on est encore loin d’avoir épuisé
toutes les ressources de Matlab. Des nombreux exemples fortement utiles sont à votre disposition
dans le User Guide.
2.1. INTRODUCTION À MATLAB 39

Mesh Contour3

Surf Interp

Fig. 2.4 – Exemples d’affichage 3D.

2.1.3.4 Images
Une image est en effet une matrice de valeurs réelles. Pour cet exemple nous allons charger un fichier
de données qui sert à illustrer le programme de démonstration de Matlab. Ce fichier s’appelle
clown.mat, que nous pouvons charger avec la commande :
>> clear all;
load clown
Cette commande a pour effet le chargement d’une série de variables. Parmi ces variables ; la matrice X
contient l’image qui nous intéresse. Une observation s’impose : Matlab ¿ sait À afficher seulement
des images avec 64 couleurs (nuances de gris ou autre), les valeurs correspondantes de pixels étant
par défaut de 0 à 63. La matrice X contient des valeurs plus grandes que 63. Il faut donc faire une
remise a l’échelle. Après ça, nous allons utiliser une gamme de couleurs qui associe des nuances de
gris (la gamme de couleurs par défaut est Hsv - hue, saturation, value). Et finalement, on va éliminer
les axes pour une visualisation plus confortable de l’image (voir Fig. 2.5).
>> X = X*63/max(max(X)); % remise à l’échelle
image(X); % affichage de l’image
colormap(gray); % la carte de couleurs en niveaux de gris
axis off; % élimination des axes
La prochaine section contient quelques exemples de traitements appliqués sur cette même image X.

2.1.4 Traitement du signal avec Matlab. Transformée du Fourier


Prenons, par exemple, le noyau de filtrage passe-bas :
>> fpb = [1 2 1; 2 4 2 ; 1 2 1]/16;
40 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Fig. 2.5 – Image du clown.

nous allons vérifier qu’il s’agit d’un filtre passe-bas en représentant son spectre d’amplitudes sur le
domaine [−0.5, 0.5] × [−0.5, 0.5] en fréquence normalisée avec une résolution de 64 × 64 points.
>> freq = -0.5:1/63:0.5;
[freqx,freqy] = meshgrid(freq,freq); % domaines Fx et Fy
spectre_fpb = fft2(fpb,64,64); % calcul de la TF sur 64x64 points
amplit=abs(spectre_fpb); % calcul des amplitudes
amplit=fftshift(amplit); % pour arriver au domaine [-0.5,0.5]
figure;
mesh(freqx,freqy,amplit); % affichage du résultat dans une nouvelle fen^
etre
Par la suite on va filtrer l’image du clown par convolution avec ce filtre et afficher le résultat. Pour
que l’effet du filtrage soit plus visible, l’image sera filtrée trois fois de suite.
>> for nbr_filt = 1:3,
X = conv2(X,fpb);
end %filtrage trois fois de suite
figure; image(X); colormap(gray); axis off;
L’effet de lissage est ainsi très visible.

Toujours dans le domaine du traitement de signal, un autre exemple intéressant qui utilise la fonction
de filtrage récursif 1D filter. Supposant qu’on connaı̂t la fonction de transfert d’un filtre récursif,
disons un simple, on veut visualiser les 100 premiers échantillons de sa réponse impulsionnelle.
Premièrement, il faut décrire le filtre en utilisant deux vecteurs de type polynôme :
>> a = 1; % a(z) = 1
b=[1 0 0.9]; % b(z) = 1 + 0.9*(1/z)^2
Après ça, il faut générer un Dirac numérique de taille 100, causal.

>> dirac100 = [1 zeros(1,99)];


Tout ce qu’il nous reste à faire est de filtrer le Dirac et d’afficher la réponse

>>reponse100 = filter(a,b,dirac100); % calcul de la réponse


plot(reponse100) % tracé de la réponse
Ceux d’entre vous qui font du traitement de signal intensif vont surtout apprécier la boı̂te à outils
Signal Processing.
2.1. INTRODUCTION À MATLAB 41

2.1.4.1 Séries de caractères, Mathématique symbolique


Voila une exception intéressante. Matlab sait traiter et autre chose que les matrices de nombres
complexes. Les séries des caractères. . . il s’agit en effet de vecteurs des symboles Ascii. Par exemple :
>> mot1= ’un autre exemple =’

mot1 =
un autre exemple =
On peut transformer des nombres en séries de caractères avec la fonction num2str :
>> a=0;
mot2=num2str(a)

mot2 =
0
Bien sûr, on peut manipuler ces vecteurs comme tout autre vecteur :
>> [mot1 mot2]

ans =
un autre exemple =0
Mais ce type de données comporte des aspects beaucoup plus intéressants. Suivons le prochain
exemple :
>> expr=’1/x+x^2-2’;
x=1;
eval(expr) %évaluation de l’expression expr avec la valeur x=1

ans =
0
Cette utilisation des séries des caractères est présente dans l’implantation de la boı̂te à outils Maple
Symbolic Toolbox, qui utilise la technologie de chez Maple Software, les leaders dans le do-
maine des mathématiques symboliques. Même sans cette boı̂te à outils, on peut toujours utiliser cette
technique pour des fonctions rudimentaires de mathématique symbolique.

2.1.5 Coopération de Matlab avec des logiciels externes


2.1.5.1 Accès aux fichiers de données externes
En dehors du mécanisme classique de sauvegarde et du chargement des données de type load/save,
Matlab possède des mécanismes alternatifs.

La première variante est implantée toujours en utilisant les commandes load/save. Il s’agit de sauver
une matrice sur le disque dur, en format Ascii. Il faut seulement rajouter à la fin le commutateur
-Ascii. Exemple :
>>save toto -Ascii
42 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Dans le fichier de données, les éléments seront séparés par un espace, et les lignes par un saut de fin
de ligne. Ce format a plusieurs avantages et plusieurs défauts. Comme avantage, on peut citer le fait
que le format Ascii peut être interprété par simple inspection visuelle du fichier avec un éditeur de
texte. Nul besoin de connaı̂tre le format interne Matlab, et c’est extrêmement facile de programmer
des procédures C pour écrire ou lire un tel fichier ou même pour le convertir dans le format Maple
Ascii. Par contre, au fur à mesure que la matrice devient grande, la manipulation d’un tel fichier
s’alourdit (cela peut constituer un gros problème surtout pour ceux qui ont des petits désagréments
avec leur quota de disque dur).

Enfin, Matlab sait utiliser de fonctions de manipulation des fichiers façon C. Il s’agit des fonctions
classiques genre fopen, fclose, fwrite, fseek, fprintf, etc. Vous pouvez ainsi lire ou générer un
format binaire ou n’importe quel format exotique.

2.1.5.2 Utiliser des procédures C dans l’environnement Matlab


La méthode la plus simple est d’utiliser le ¿ escape shell À !. La commande :
>> !mon_prog;
indique à Matlab qu’il faut exécuter un logiciel externe qui s’appelle mon prog. Une fois que le
traitement par le logiciel externe est fini, l’exécution suit son cours en Matlab. La communication
entre l’environnement de travail (Workspace) et mon prog peut se réaliser par l’intermédiaire de fi-
chiers des données (voir la section précédente). Généralement, on essaye d’implanter avec mon prog
des sections critiques du programme qui prendrait beaucoup plus de temps et/ou de mémoire en
Matlab. L’avantage est qu’à la fin on garde sur le disque dur tous les résultats intermédiaires et on
peut les examiner tranquillement. Parmi toutes les méthodes de collaboration avec des programmes
externes, celle ci est la plus inefficace.

Un peu plus avancée, mais plus complexe, est l’utilisation des fichiers .mex. Ce sont des fichiers
écrits en langage C, compilées avec un compilateur spécial cmex, qui peuvent ultérieurement être
appelées comme n’importe quelle fonction. Ces sources doivent inclure le fichier entête ¿ mex.h À.
Cette démarche est particulièrement lourde, car elle comporte aussi la création d’une fonction pont
(gateway routine). Des nombreux problèmes de compatibilité de .mex entre différentes versions
de Matlab se posent. ¿ N’utiliser les MEX que si vous avez absolument besoin À.

2.1.5.3 Utiliser les fonctions Matlab dans le cadre d’un logiciel C


C’est la modalité la plus efficace pour faire coopérer Matlab et un logiciel externe. Il s’agit de lancer
en tâche de fond en même temps que votre logiciel C, le noyau Matlab Engine. Vous pouvez faire
appel a ce noyau pour lire des fichiers des données en format Matlab, pour inverser des matrices ou
faire des graphiques 3D. Une licence Matlab sera occupée seulement pendant que le noyau tourne
en tache de fond et sera libérée de que vous donnez le contrôle total au votre logiciel.
Pour utiliser les fonctions de Matlab dans vos programmes en C il faut modifier le Makefile en
rajoutant aux lignes de définitions du compilateur et de l’éditeur de liaisons :
CC = cc ... -I/u/Matlab/extern/include

Dans votre logiciel C il faut inclure la ligne d’entêté suivante :


#include ¿ engine.h À
2.1. INTRODUCTION À MATLAB 43

Le noyau Matlab s’appelle avec la procédure engOpen() et il se ferme avec la procédure eng-
Close(). Une liste détaillée de toutes les fonctions de communication avec le noyau Matlab se
trouve dans External Interface Guide.

En ce qui concerne le PC, Borland C++ ne fait pas partie des compilateurs indiqués par Math-
works. Le seul compilateur qui pourrait éventuellement coopérer avec Matlab est le gcc.

2.1.5.4 Insérer des graphiques Matlab dans un document Word


Les fonctions graphiques de Matlab peuvent donner naissance à des résultats remarquables. Si vous
allez ouvrir n’importe quelle revue de communications scientifique ou des actes de conférences, vous
allez sûrement trouver plusieurs figures qui contiennent des graphiques issues de Matlab.

Plusieurs façons d’insérer un graphique dans un document Word existent. Par exemple, on peut faire
une copie d’écran (par menu sous Windows ou avec snapshot sous Unix). Les graphiques Matlab
étant sous fond noir, il faut opérer des modifications des couleurs (avec Paint sous Windows eu xv sous
Unix). Après tout ça, un changement de format de fichier graphique sera nécessaire. Cette méthode
est à éviter pour plusieurs raisons. Elle est lourde ; regardez le nombre d’opérations nécessaire pour
insérer un seul graphique. La qualité finale de graphiques est médiocre, parce que généralement la
résolution d’un écran d’ordinateur est autour de 72dpi (dots per inch - points par puce). Par contre,
il serait bien de pouvoir exploiter la résolution d’une imprimante laser, qui peut aller jusqu’à 600dpi.
Le seul moyen facile et qualitatif à la fois est d’utiliser le format Encapsulated PostScript (.eps).

Matlab permet de transformer un graphique présent dans une fenêtre dans un fichier PostScript
en une seule commande :
>> print -deps le_nom
qui aura comme effet la création sur le disque dur d’un fichier le nom.eps. C’est essentiel que ce
fichier soit en format .eps. Un graphique dans le format PostScript natif (.ps) peut être visualisé
ou imprimé, mais il est impossible de l’insérer dans un document de façon correcte. En passage, nous
allons remarquer le fait que la conversion PostScript est accompagnée par une modification auto-
matique du fond du graphique, qui devient blanc, et des éléments du graphique, qui serons imprimés
en noir.

Si vous avez accès à une imprimante PostScript couleurs, ca devient intéressant de récupérer un
fichier .eps couleurs avec une prévisualisation au format Tiff par la commande :
>> print --tiff -depsc le_nom
Sur une imprimante classique, les couleurs deviendront des nuances de gris. Des fois, ça peut apporter
un plus d’informations, mais ça peut aussi détériorer le contraste sur le graphique.

Sous Word, il faut activer les menus Insertion>Image>À partir du fichier et introduire le nom du
fichier. En insérant votre graphique dans un document Word, un cadre vide apparaı̂t si vous avez
omis le commutateur -tiff dans la commande print ; le graphique deviendra visible seulement sur le
papier, en imprimant le document.

Une dernière remarque évidente s’impose. Les fichiers PostScript sont des fichiers Ascii et donc
le transfert entre Unix, PC, Mac doit se faire par Ftp avec l’option Ascii.
44 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Un autre moyen est de créé un nouveau document Word en choisissant le modèle NoteBook. Ce
modèle de document intègre directement entre les commandes définies dans le texte (¿ input À) et
Matlab. Lors de l’évaluation, ces commandes sont communiquées à l’interpréteur Matlab qui en
retour fourni le résultat textuel ou graphique qui sera inclus dans la suite de votre fichier. Le présent
fascicule est composé de cette manière !

2.1.6 Problèmes et questions fréquentes


2.1.6.1 Problèmes de gestion de mémoire
Matlab a une gestion de mémoire un peu spéciale. Supposant que vous avez fait un traitement sur
plusieurs images qui a occupé beaucoup de mémoire (pour votre information, une image 256 × 256
occupe 0,5 Mo de mémoire). Vous faites un clear et vous supposez que toute la mémoire occupée
est libérée et que le système reprend le contrôle. Ce n’est pas vrai !

En effet, les programmateurs de Mathworks savent eux aussi que les fonctions C malloc() et
free() sont parmi les plus coûteuses en temps de calcul (étude statistique faite par Bjorne Sous-
troup, un des inventeurs du langage C++). C’est pour ça que Matlab a son propre mécanisme de
contrôle de la mémoire. Une fois allouée, le système ne peut plus contrôler la mémoire qui sera gérée
par Matlab. Il pourra quand même passer le processus en swap sur le disque dur quand Matlab
est inactif, mais chaque nouvelle exécution va ¿ revigorer À toute cette mémoire. Sur Windows,
notoire pour ses problèmes de gestion de mémoire - le système risque de planter très souvent. On
peut cependant forcer Matlab à reconstituer l’intégrité de l’espace mémoire avec la commande pack.

Plusieurs mesures sont à prendre pour contrebalancer ces problèmes. Il faut minimiser le nombre de
variables mémoire tampon, surtout quand il s’agit de matrices très grandes. Chaque fois quand vous
finissez un programme qui nécessite beaucoup de mémoire, pensez à sauver les résultats sur le disque
dur, sortir de Matlab et revenir immédiatement.

2.1.6.2 Peut-on insérer des caractères grecques dans le titre d’un graphique ?
Oui. Voila un exemple de commande qui associe à l’axe 0x l’étiquette ¿ αβγ À :

>> xlabel(’abg’, ’FontName’, ’Symbol’);

2.1.6.3 Faut il tout programmer en Matlab ?


L’utilisation de Matlab est à conseiller dans quelques situations particulières :
– il faut développer un programme qui fait beaucoup de traitements numériques ; mais le temps
disponible est relativement réduit. L’environnement Matlab est conçu justement pour réduire le
temps nécessaire si on écrit notre application dans un langage bas niveau de type C.

– l’application n’est pas encore bien définie ; c’est beaucoup plus facile de modifier et dépanner un
algorithme Matlab que son équivalent en langage C.

Il faut penser à migrer vers la programmation en C si :


– l’application nécessite beaucoup de filtrages récursifs sur des matrices de données de grandes tailles.
2.1. INTRODUCTION À MATLAB 45

– le temps disponible pour le développement de l’application est suffisant pour envisager la program-
mation dans un langage bas niveau.

Finalement, pour la phase purement ¿ théorique À de développement de l’algorithme, peut être


que le programme de mathématique symbolique Maple peut constituer un bon choix.

2.1.7 Simulink
Cette interface graphique est une extension de Matlab qui permet de simuler le fonctionnement
d’un système qu’il soit continu ou discret. Le système est modélisé avec une approche schéma bloc
et est évalué en fonctionnement pseudo temps-réel.

L’interface Simulink se présente sous la forme de deux fenêtres :une librairie de blocs préprogrammés
regroupés par thèmes et une feuille de travail.

Fig. 2.6 – La librairie Simulink et la feuille de travail.

La création d’un modèle est très simple puisque il suffit d’aller chercher les blocs nécessaires à sa
réalisation puis de les interconnectés. Toutes les opérations s’effectuent à l’aide de la souris.

Prenons l’exemple d’un système à temps continu effectuant la dérivation d’un signal d’entrée si-
nusoı̈dal.

Fig. 2.7 – Un modèle simple.

Le modèle se compose d’une source, d’un bloc dérivateur, d’un multiplexeur permettant de superposer
46 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

les signaux, et d’une visualisation. Après que chaque bloc ait été disposé, il faut régler ses paramètres
spécifiques. On double clique sur le bloc pour faire apparaı̂tre la fenêtre de paramètrage :

Fig. 2.8 – Fenêtre de paramètrage du bloc générateur sinusoı̈dal.

Enfin, après avoir paramétré tous les blocs de votre feuille, vous devez régler les paramètres de la
simulation. C’est ici que l’on spécifie les informations telles que :
– l’instant de départ,
– l’instant d’arrêt,
– la classe du modèle variable-step pour une modèle à temps-continu ou mixte, fixed-step pour un
modèle discret,
– et l’algorithme de résolution des équations différentielles (ode45 par défaut).

Fig. 2.9 – Paramétrage de la simulation.

Le modèle étant créé puis paramètré pour la simulation de son fonctionnement, on peut lancer son
exécution :
Le modèle est évalué numériquement en utilisant un algorithme de résolution d’équations différentielles
(Ordinary Differential Equations ou ode). Le temps de calcul de la simulation dépend de la com-
plexité du système et donc ne s’effectue pas en temps réel.
2.1. INTRODUCTION À MATLAB 47

Fig. 2.10 – On lance la simulation.

Fig. 2.11 – Visualisation obtenue par le bloc Scope.


48 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

2.2 Échantillonnage
2.2.1 Création d’un modèle d’échantillonnage parfait
Créer dans Simulink le modèle de système suivant :

Source Échantillonneur
Multiplexeur Visualisation
sinusoïdale bloqueur d ’ordre 0

ω = 2π Fe = 20 Hz

Fig. 2.12 – Échantillonnage parfait.

On règlera les paramètres de la simulation pour que l’instant de départ soit 0 et que l’instant d’arrêt
soit 4 secondes.

Une fois le montage validé au près du responsable, vous pouvez lancer l’exécution et observer la
visualisation du résultat.

2.2.2 Étude de la loi de densité de probabilité d’un signal échantillonné


Nous allons faire le parallèle entre le signal temporel et la loi de densité de probabilité. Pour cela
vous allez utiliser le script Matlab Pdf Ech.m qui se présente de la façon suivante :

Fig. 2.13 – Histogramme.

Vous pouvez agir sur quatre paramètres :


– la forme du signal { sinusoı̈de à 1 Hz, triangle à 1 Hz, carré à 1 Hz, bruit gaussien},
– la fréquence d’échantillonnage du signal (Fe),
– Le nombre de points que vous échantillonnés (N),
– le nombre de classes pour calculer l’histogramme des amplitudes (B).
1. En imposant B = 10, F e = 1000, N = 2000, observer la forme de l’histogramme pour chaque
type de signal (on utilisera le boutton reload dans le cas du bruit).
(a) Comment selon vous est calculé l’histogramme ?
(b) Pourquoi peut-on dire qu’il s’agit d’une loi de densité de probabilité ?
(c) Quel type de densité de probabilité associez-vous à chaque signal ?
(d) Que dire de l’histogramme dans le cas du signal aléatoire ?
2.2. ÉCHANTILLONNAGE 49

2. On veut étudier l’influence de B (F e et N étant constants), le nombre de classes de l’histo-


gramme.
(a) B est impair. Comment évolue le graphe ?
(b) B est pair. Même question ?
3. On veut étudier l’influence du nombre de points N (B = 16, F e = constante).
(a) Quel doit être la relation entre N et B pour que les histogrammes soient conformes à ceux
obtenus à la permière question ?
(b) La fréquence d’échantillonnage F e doit-elle restée inchangée ? Si non comment la choisir ?
4. Quelles sont les influences de N , B, et F e sur les statistiques des signaux ?
5. Ces considérations permettent de faire des choix sur certains éléments de la chaı̂ne d’acquisition
et traitement. Lesquels ?

2.2.3 Du signal analogique au signal numérique

Fig. 2.14 – Échantillonnage et quantification.

Dans cet maquette on se propose d’étudier les opérateurs d’échantillonnage et de quantification en


fonction de plusieurs signaux.
Charger le modèle Quantification.mdl, puis ouvrez la fenêtre de paramétrage en cliquant sur Load
Data. Une fenêtre supplémentaire doit apparaı̂tre permettant de modifier la fréquence d’échantillonnage
de la chaı̂ne et le nombre de bits de quantification.

Sur la feuille contenant le modèle on voit que quatre types de signaux d’entrée sont disponibles :
– une sinusoı̈de de fréquence 1 Hz,
– une rampe périodique de période 1 s,
– un bruit dont la densité de probabilité est uniforme,
– un bruit dont la densité de probabilité est gaussienne.
La sélection du signal s’effectue en indiquant le numéro du signal dans le bloc input selector
{1, 2, 3, 4}.
50 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

La simulation peut être lancée avec les réglages par défaut (Fe = 100 Hz, N = 3) pour le signal 2
(rampe).

1. À quoi correspond la valeur affichée par Display ?


2. Qu’observe-t’on sur les différentes visualisations ?
3. Que conclure sur la quantification réalisée ?
4. Comment l’améliorer en terme de précision ?
5. Comment l’améliorer en terme d’utilisation du nombre de bits ?
6. On considère le signal 1 (Fe = 100 Hz, N = 3). La quantification vous semble-t’elle correcte ?
7. Sur quoi doit on influer pour améliorer la qualité du signal numérique ?
8. Que dire de l’échantillonnage des deux bruits ?
9. Quel est le lien entre le signal numérisé, la fréquence d’échantillonnage et le nombre de bits
alloués à la quantification ?
10. Que se passe-t-il si on décide d’appliquer le théorème de Shannon ?

2.2.4 Un exemple de traitement numérique du signal

Fig. 2.15 – Exemple de corrélation numérique.

Le modèle étudié se nomme Correlation.mdl. La fenêtre des paramètres est affichée en cliquant sur
Load Data (ne toucher pas aux valeurs prédéfinies, ça viendra plus tard). Si vous souhaiter afficher
la dernière fonction de corrélation calculée il vous suffit de cliquer sur Plot Correlation.
1. Expliciter le fonctionnement du montage et son objectif.
(a) Pourquoi doit-on employer des tampons (buffer) ?
(b) Après le calcul de la corrélation une estimation est effectuée. Laquelle ?
(c) Quelle est la précision de l’estimateur ?
(d) Pourquoi sur la fenêtre scope 1 voit-on un échelon à l’instant t = 1 s ?
2. On change la taille des tampons de données {50, 100, 200, 300, 400}.
(a) Quelles sont les modifications sur l’estimée ?
(b) Quelle taille minimum nous fournit la meilleure estimation ?
2.2. ÉCHANTILLONNAGE 51

3. On modifie la valeur du déphasage {20◦ , 30◦ , 40◦ , 50◦ }.


(a) Comment est le biais de l’estimateur ?
(b) Comment améliorer l’estimation ?
4. Effectuer le réglage convenable des paramètres pour obtenir une précision 10 fois plus grande
sur l’estimation. Vérifier.
5. On considère maintenant que le bruit a une influence {0.1, 1, 10}.
(a) Que dire de cette influence sur l’estimation ?
(b) Comment peux-t-on procéder pour améliorer l’estimation ? (on rappelle que le signal per-
turbateur est un bruit gaussien centré).
52 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

2.3 Caractérisation de bruit et estimation


2.3.1 Bruit blanc
un bruit blanc b (ω, t) est un processus aléatoire centré (i.e. de moyenne nulle) qui a pour ca-
ractéristique d’être parfaitement décorrélé :
½
E {b (ω, t)} = µb (t) = 0
E {b (ω, t1 ) b? (ω, t2 )} = γb (t1 , t2 ) = σb2 δ (t2 − t1 )

Dans notre cas, il est aussi stationnaire à l’ordre 2 puisque ses statistiques sont indépendantes de
l’origine des temps. En effet, la moyenne est une constante, la fonction de corrélation dépend d’un
temps relatif.
Le paramètre σb2 est appelé puissance du bruit.
La densité spectrale d’un tel processus est une constante égale à la puissance du bruit :

Γb (f ) = T f {γb (τ )} = σb2

Ce bruit est dit blanc par analogie avec la composition de la lumière blanche c-à-d., une composition
de toutes les composantes chromatiques avec une contribution identique.

2.3.1.1 Carcatérisation d’un bruit blanc


Au cours de ces expérimentations nous allons générer des signaux réels, ces signaux sont dits pseudo-
aléatoires. (Pensez à enregistrer toutes les commandes dans un script Matlab que vous joindrez à
votre rapport).
Exercice 2.1 En consultant l’aide en ligne de Matlab sur les fonction rand et randn expliquer
pourquoi le signal généré est qualifié de pseudo-aléatoire.
Exercice 2.2 À l’aide de la fonction rand et randn créez deux vecteurs aléatoires (Bu et Bn) de
dimensions 1 × 1000. Vérifiez qualitativement la loi distribution de chaque signal grâce à la fonction
hist.
Exercice 2.3 Générez les vecteurs Bucn et Bncn c’est-à-dire, les centrées normalisées de Bu et
Bn (cf. mean, norm).
Exercice 2.4 Déterminez et visualisez Gucn et Gncn les fonctions d’autocorrélation biaisées de
vecteurs Bucn et Bncn (cf. xcorr).
Exercice 2.5 En considérant l’un des processus, expliquez la fonction d’autocorrélation que vous
obtenez dans le cas de l’estimateur non-biaisé.
Exercice 2.6 On vous fournit deux scripts Matlab permettant d’estimer la densité spectrale de puis-
sance soit à partir de la fonction d’autocorrélation (dsp cor) soit directement (dsp dir). Visualisez
et commentez les résultats.
Exercice 2.7 Discutez les résultats expérimentaux que vous avez obtenus relativement à la définition
du bruit blanc.
Exercice 2.8 Construire le signal y = Bncn + 0.1 et en estimer sa fonction de corrélation. In-
terprétez et justifiez les résultats obtenus.
Exercice 2.9 Construisez une fonction Matlab (que vous nomerez Bruit) permettant de généré un
signal aléatoire gaussien centré. La puissance ainsi que le nombre de points souhaités seront transmis
en arguments de la fonction.
2.3. CARACTÉRISATION DE BRUIT ET ESTIMATION 53

2.3.1.2 Débruitage d’un signal déterministe périodique


On a effectué la mesure d’un signal y (t) dont la composition résulte de la somme d’un signal
périodique x (t) et d’un bruit blanc gaussien b (t).

y (t) = x (t) + b (t)



– On considèrera que x (t) = 2 sin (2πF0 t) avec F0 = 50 Hz.
– L’observation y (t) est effectuée sur un nombre entier de période disons N = 10.
– Le signal est échantillonné à la fréquence Fe de 1000 Hz (1000 points par seconde).
Une approche simple du débruitage est de segmenter l’observation en N séquences que l’on moyenne
point à point afin d’estimer x. On pose bien sûr l’hypothèse que le bruit est stationnaire au moins à
l’ordre 1.
N −1 µ ¶
1 X Fe Fe
x̂ (n) = y n+p , 0≤n<
N p=0 F0 F0

Exercice 2.10 Écrire la fonction Signal permettant de générer la suite x. Elle acceptera trois argu-
ments : F0 la fréquence de la sinusoı̈de, Fe la fréquence d’échantillonnage et N le nombre de période
à générer.
Exercice 2.11 Écrire la fonction Per Estime correspondant à l’estimateur. Elle acceptera deux
arguments y, le vecteur à traiter et N le nombre de période entière qu’il comporte (cf. reshape,
mean) .
Exercice 2.12 Vérifier les performances de l’estimateur pour les valeurs de signal à bruit suivants :
SN R (dB) 40 5 1
µ ¶
Ex
SN R = 10 log10
Eb
Procédure :
1. Créer x la suite à traiter et xr la suite de référence constituée d’une seule période
2. Déterminer la puissance du bruit correspondant à une des valeurs du tableau
3. Générer le bruit
4. Créer le signal bruité y
5. Calculer l’estimée x̂
6. Calculer le signal d’erreur xr − x̂ et déterminer l’influence sur le rapport signal à bruit.

2.3.2 Estimateurs
Dans ce problème on supose que l’on veut estimer les paramètres moyenne et variance d’une source
de bruit. On vous fournit le modèle suivant (estim.mdl) :
Les paramètres F s et N seront saisis dans la fenêtre de commande de Matlab.
L’objet de cette manipulation est d’observer comment se comportent les estimateurs. Le modèle dont
vous disposez est constitué de trois estimateurs :
– moyenne
N
1 X
µ̂x = xk
N k=1
54 CHAPITRE 2. TRAVAUX PRATIQUES DE THÉORIE DU SIGNAL

Fig. 2.16 – Études des estimateurs de la moyenne et de l’écart-type.

– écart-type non-biaisé v
u N
u 1 X
σ̂xN B =t (xk − µ̂x )2
N − 1 k=1

– écart-type biaisé v
u N
u1 X
B
σ̂x = t (xk − µ̂x )2
N k=1

ce qui permet d’extraire les deux paramètres d’une source de bruit gaussien N (µx , σx ).
Exercice 2.13 Vérifier que l’estimateur σ̂xN B (respectivement σ̂xB ) est non-biaisé (biaisé). Quelle
hypothèse doit vérifier le bruit pour que l’estimateur biaisé devienne non-biaisé ?
Exercice 2.14 Explicitez l’implantation et le fonctionnement des estimateurs (quelles sont les contraintes
de traitement par exemple ?).
Exercice 2.15 Que peut-on dire de la ¿ stationnarité À à l’ordre 1 pour les tailles de buffer sui-
vantes : N ∈ {10, 50, 100, 500, 1000, 4000} ?
Exercice 2.16 On agit maintenant sur le paramètre de recouvrement du tampont (buffer overlap)
en fixant sa valeur à N − 1. Quelles sont les modifications aux estimées pour les mêmes valeurs de
N qu’à la question précédante ? Exprimer les nouvelles expressions de l’estimateur de la moyenne et
de la variance.
Exercice 2.17 On considère maintenant le modèle Simulink estim2.mdl. Il correspond à un trai-
tement de détection d’alarmes (simulées ici par des impulsions) dans un signal fortement bruité. On
ne veut par utiliser le fonction de corrélation car elle est trop coûteuse en calcul. On souhaite savoir
si il est possible de détecter les alarmes de manière simple. Comment paramètrer le modèle ?
Nota Bene Ces estimateurs sont d’un usage courant dans les applications industrielles car ils per-
mettent de détecter des pannes ou des dysfonctionnements avec une faible complexité de calculs.
Chapitre 3

Traitement numérique du signal

3.1 Transformée en Z
Cette transformée s’applique à des signaux discrets (ie. des suites). Elle offre la possibilité de
représenter dans un autre domaine une suite temporelle au même titre que la transformée de Fourier
transpose le domaine temps continu en domaine fréquences continue (t → f, x (t) → X (f )).

3.1.1 Définition

+∞
X
X (z) = xn z −n z∈C (3.1)
n=−∞

Xk est appelée la transformée en z bilatérale de xn car n ∈ N. Dans le cas où n ∈ Z, la transformée


est dite unilatérale restriction qui correspond aux signaux causaux.
+∞
X
+
xn = 0 pour n < 0 =⇒ X (z) = xn z −n (3.2)
n=0

3.1.2 Conditions d’existence, domaine de convergence


Pour que la Tz existe, il faut nous assurer de la convergence de (3.1) (ou (3.2) pour les signaux
causaux). Nous savons que pour une série de puissance la convergence est assurée si :
+∞
X 1
un < +∞ =⇒ lim |un | n < 1 (3.3)
n−→+∞
n=0

Donc pour avoir convergence, il faut que chaque transformation unilatérale converge !

−1
X +∞
X
−n
X (z) = xn z + xn z −n
n=−∞ n=0
− +
X (z) = X (z) + X (z)

Nous allons donc définir les deux rayons de convergences suivants :

55
56 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

¯ ¯1 1 1
X + −→ lim ¯xn z −n ¯ n = lim |xn | n |z|−1 < 1 =⇒ |z| > lim |xn | n = R− (3.4)
n−→+∞ n−→+∞ n−→+∞
1 1 1
X − −→ lim |x−n z n | n = lim |x−n | n |z| < 1 =⇒ |z| < 1 = R+ (3.5)
n−→+∞ n−→+∞
limn−→+∞ |xn | n

Dans le cas d’une transformée bilatérale nous obtenons une couronne de convergence c’est-à-dire,
que la Tz existe pour :R− < |z| < R+ .
Pour la transformée unilatérale nous disposons de l’intérieur du rayon de convergence |z| > R− , soit
un disque de convergence.
Im Im

R-

Re
Re
R+

R-

Exemple de couronne de Exemple de disque de


convergence. convergence.

Exemple 3.1 xn = un l’échelon unité.


+∞
X +∞
X 1
X (z) = un z−n = z−n =
n=0 n=0
1 − z−1
1
R− = lim |un | = 1 < | z|
n
n−→+∞

Exemple 3.2 xn = an pour n ≥ 0 et |a| < 1


+∞
X +∞
X ¡ −1 ¢n 1
X (z) = an z−n = az =
n=0 n=0
1 − az−1
1
n
R− = lim |a | = |a| < | z|
n
n−→+∞

Exemple 3.3 xn = an pour n ∈ N et |a| < 1


−1
X +∞
X
X (z) = an z−n + an z−n
n=−∞ n=0
1
n
R− = lim |a | = |a| < | z| n
n−→+∞
µ ¶
¯ −n ¯ 1 −1
R+ = lim ¯a ¯ n = |a| > | z|
n−→+∞

Dans ce dernier exemple, la Tz n’existe pas car il n’y a pas de couronne de convergence (|a| < | z| <
|a|).
3.1. TRANSFORMÉE EN Z 57

3.1.3 Propriétés
– linéarité :yn = α xn + β wn −→ Y (z) = α X (z) + β W (z),
−p
– retard :yn = xn−p −→ P Y (z) = X (z) z
– convolution :yn = m xn−m hm −→ Y (z) = X (z) H (z)
– valeur initiale :x0 = limz→+∞ X (z)
– valeur finale :x+∞ = limz→1 (z − 1) X (z)

3.1.4 Transformée inverse.


Z
1
xn ∆
= zm−1 X (z) dz (3.6)
j2π Γ

Γ est le contour fermé contenant tous les pôles de X (z) ainsi que l’origine. Cependant, on peut
s’épargner le calcul d’une intégrale dans le plan complexe en utilisant une des méthodes indirectes
suivantes :
– développement en série de Laurent, P+∞ P+∞ n −n
1 −1 n
Soit X (z) = 1−ρz −1 , ρ > 0 et | z| > ρ, on peut écrire X (z) = n=0 (ρz ) = n=0 ρ z ⇒ xn =
ρn n ≥ 0
– division polynômiale,
1
– X (z) = 1−ρz −1 , | z| > ρ

1 1 −ρz−1 


 ½
1 −ρz−1 1 +ρz−1 +ρ2 z−2 + · · · 
−1
P+∞ xn = ρn
ρz X (z) = n=0 ρn z−n ⇒

 n≥0
ρz−1 −ρ2 z−2 


ρ2 z−2
1
– X (z) = 1−ρz−1 , | z| < ρ

1 −ρz−1 1 
 X (z) = P+∞ −ρ−n zn

1 −ρz−1 −ρ−1 z −ρ−2 z2 −ρ−3 z3 + ··· 
 P−1n=1
½
−1 n −n xn = −ρn
ρz = n=−∞ −ρ z ⇒

 n<0
ρz−1 −ρ2 z−2 


ρ2 z−2
Il faut connaı̂tre le domaine de convergence pour déterminer la ¿ vraie À séquence originale.
– décomposition en éléments simples. Il est important de connaı̂tre le domaine de convergence de
chaque élément simple.
1
H (z) =
(1 − az−1 ) (1 − bz−1 )
α β
= +
1 − az−1 1 − bz−1
On identifie les constantes de décomposition :
¡ ¢ ¯ a
α = 1 − az−1 H (z)¯z=a =
a−b
¡ ¢ ¯ b
β = 1 − bz−1 H (z)¯z=b =−
a−b
a b n
– | z| > a et | z| > b ⇒ xn = a−b
an un − a−b
b un
a b n
– | z| > a et | z| < b ⇒ xn = a−b
an un + a−b
b u−1−n
58 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

3.1.5 Système linéaire discret invariant dans le temps


Un système linéaire discret invariant dans le temps (Slit ) est cartérisé par une équation de convo-
lution faisant intervenir la réponse impulsionnelle hn du système ainsi que l’entrée xn appliquée.

X
yn = xm hn−m (3.7)
m
yn ≡ (x ? h)n
Un Slit est stable si pour toute entrée bornée en amplitude la sortie est bornée (Ebsb ). Un condition
nécessaire et suffisante de stabilité est :
X
|hn | < +∞
n

3.2 Transformée de Fourier discrète


Pour une suite périodique x dont le motif est défini sur 0 ≤ n < N la transformée de Fourier
discrète (Tfd) est définie par :

N
X −1 µ ¶ NX−1
nk
Xk = xn exp −j2π = xn WNnk , 0≤k<N
n=0
N n=0
µ ¶
nk
WNnk = exp j2π
N
La transformée inverse s’exprime de la façon suivante :
N −1
1 X
xn = Xk WNnk
N k=0
Remarque 3.1 On peut remarquer qu’un suite définie sur N points est obtenue par le fenêtrage
d’une suite à support infini par une porte rectangulaire discrète de mesure N .

3.2.1 Propriétés
– Linéarité :yn = α.xn + β.wn =⇒ Yk = α.Xk + β.Wk
– Retard :yn = xn−p =⇒ Yk = WNpk Xk
– Symétrie temporelle :yn = xN −1−n =⇒ Yk = WNpk Xk
– Symétrie spectrale :XN −k
PN=−1Xk 2 P −1
– Égalité de Parseval : k=0 |Xk | = N N n=0 |xn |
2

3.2.2 Dualité temps-fréquence de l’échantillonnage

Domaine temporel Domaine fréquentiel R Tf R Tf inverse


signal continu spectre continu x (t) exp (−j2πf
³ t) dt´ X (f ) exp ³(j2πf t) df
´
1
R P
signal continu périodique spectre discret T x (t) exp −j2πk Tt0 dt
[T0 ]
X
k k exp j2πk Tt0
P ³ ´ R ³ ´
f
signal discret spectre continu périodique n x n exp −2πn Te [F e] X (f ) exp j2πk Tf0 df
P ³ Fe ´ P ³ ´
nk 1 nk
signal discret périodique spectre discret périodique n∈[N ] xn exp −2π Fe N k∈[N ] Xk exp 2π Fe
3.3. FILTRAGE NUMÉRIQUE 59

3.3 Filtrage numérique


3.3.1 Filtre à réponse impulsionnelle infinie (Rii)
3.3.1.1 Définitions
– Équations aux différences :
N
X M
X
yn = ak yn−k + bm xn−m
k=1 m=P
– Fonction de transfert : PM −m
m=P bm z
H (z) = P
1 − N
z −k
k=1 ak
– La récurrence en y fait apparaı̂tre des pôles dans l’expression de la fonction de transfert, il y a
donc un risque que le filtre soit instable.
La synthèse d’un filtre Rif peut être effectuée selon deux méthodes différentes. La première consiste
à déterminer les coefficients {ak } , {bm } en utilisant une approche d’optimisation sous contrainte
(méthode directe). La seconde méthode (dite indirecte) exploite la transposition du gabarit numérique
en un gabarit analogique permettant ainsi la résolution suivant les outils de synthèses des filtres
analogiques. C’est par cette dernière que nous allons commencer.

3.3.1.2 Méthodes de synthèse indirecte

Gabarit
Gabaritdu du Résolution
Résolutionpar
par
filtre
filtre TT::z→p
z→p méthodes
méthodes
numérique
numérique classiques
classiques

Filtre
Filtre Fonction
Fonctiondede
TT-1-1::p→z
p→z
numérique
numérique transfert
transfert enpp
en

Transformée
Transformée
bilinénaire
bilinénaire

La synthèse d’un filtre numérique s’effectue en établissant le gabarit dans le domaine discret. Puis
par la transformation bilinéaire, on transpose le gabarit numérique en un gabarit analogique que l’on
résoud par les méthodes classiques (cf. cours de synthèse des filtres analogiques). La solution est en
suite ramenée dans le domaine numérique par transformation inverse.

3.3.1.3 Transformation bilinéaire


Cette transformation permet de transposer le domaine discret en un domaine analogique :

1 − z −1
p=k (3.8)
1 + z −1
k+p
z= (3.9)
k−p
60 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

où k est un facteur d’échelle (c’est notre seul degré de liberté).


En posant que z décrit le cercle de rayon unité dans le plan complexe on montre que l’équation (3.8)
devient :
z = exp (jω) =⇒
³ω ´
p = j.k. tan
2 ³ω ´
= j.Ω avec Ω = k. tan
2
ω
π

−π π/2

– Transposition du cercle de rayon unité


Im Im


  
Re     Re

1. est non-linéaire
2. le facteur d’échelle est sans importance sur H (z)
ω

π/2

k1 k2

3.3.1.4 Transposition de gabarit


Il est très simple pour nous de synthétiser un filtre passe-bas. Il est en revanche plus complexe de
trouver directement un filtre correspondant à un passe-haut, un passe-bas, un passe-bande ou un
coupe-bande. Il est intéressant pour déterminer un filtre solution de
3.3. FILTRAGE NUMÉRIQUE 61

Filtre
FiltrePasse-bas
Passe-bas Z-1=f(z-1)
Filtre
Filtretransposé
transposé
prototype
prototype ωω11,ω
,ω22
θθp
p

1. Passe-bas −→ passe-bas ³ ´
θp −ω1
z −α−1 sin 2
Z −1 = , α= ³ ´
1 − α z −1 sin θp +ω1
2

2. Passe-bas −→ passe-haut
³ ´
θp +ω1
z −1 + α sin 2
Z −1 = , α= ³ ´
1 + α z −1 sin θp −ω1
2

3. Passe-bas −→ passe-bande
³ ´
¡ ¢
−2
z − β+1 z + 1−β
2α −1
cos ω1 +ω 2 tan θ2p
1+β
Z −1 = − , α= ¡ 2 ¢, β= ¡ ¢
1−β −2
1+β
z − 2α −1
β+1
z + 1 cos ω2 −ω
2
1
tan ω2 −ω
2
1

4. Passe-bas −→ coupe-bande
³ ´
¡ ω1 +ω2 ¢
−2
z − β+1 z + 1−β
2α −1
cos tan θ2p
1+β
Z −1 = , α= ¡ 2 ¢, β = ¡ ω2 −ω1 ¢
1−β −2
1+β
2α −1
z − β+1 z + 1 cos ω2 −ω2
1
tan 2

3.3.2 Filtre à réponse impulsionnelle finie (Rif )


3.3.2.1 Définitions

N
X −1
H (z) = hn z−n
n=P

– Appellations :filtre non-récursif, Rif


– Causalité :P = 0
– Stabilité :toujours vraie
– Phase :linéaire si les coefficients sont symétriques (hn = hN −1−n )

3.3.2.2 Synthèse par la méthode des fenêtres :échantillonnage temporel

Réponse
fréquentielle Synthèse Échantillonnage Troncature
idéale

– Avantage :simple à utiliser


– Inconvénients :
– pas de gabarit
– pas d’à priori sur le choix de la fenêtre
– résultat sous-optimal (au sens de l’ordre)
62 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

3.3.2.3 Synthèse par la méthode des fenêtres :échantillonnage fréquentiel

Réponse
fréquentielle Échantillonnage Synthèse
idéale

Un problème de repliement peu subvenir si l’échantillonnage est mal choisi.

3.3.2.4 Exemple de synthèse

F-1
A B
9 dB

3 dB

0 F (kHz)
3 4
0 ω=2πf/Fe
π/4 π/3
0 Ω
Ωc Ωa

Fig. 3.1 – Synthèse d’un Rif par gabarit.

– Données numériques
– filtre passe-bas, famille de Tchebycheff
– fréquence d’échantillonnage Fe = 24 kHz
– fréquence de coupure Fc = 3 kHz
– Atténuation dans la bande passante Amax = 3 dB
– fréquence de coupure Fa = 4 kHz
– Atténuation dans la bande passante Amin = 9 dB
1. Choix de k définissant le filtre passe-bas analogique normalisé
1
|H (Ω)|2 =
1+ ε2 Tn2 (Ω)
En s’imposant que la pulsation de coupure Ωc soit égale à 1 on trouve que ε = 1. Ce qui entraı̂ne
que :
Ωc 1
k= ¡ ωc ¢ = ¡ ¢ ' 2.414
tan 2 tan π8
³ ω ´ tan ¡ π ¢
a
Ωa = k. tan = ¡ 6 ¢ ' 1.394
2 tan π8

2. Le filtre analogique se détermine nà partir des abaques correspondant à la famille


o de Tcheby-
Ωa
cheff avec le jeu de paramètres Amax = 3 dB, Ωc = 1.394, Amin = 9 dB . Nous obtenons
que l’ordre du prototype analogique est de 2 et l’expression de la fonction de transfert est :
1 1
H (p) = 2
2 p + 0.6449p + 0.708
3.4. ANALYSE SPECTRALE NON-PARAMÉTRIQUE 63

3. Il nous faut maintenant revenir dans le domaine discret en transposant les p en z.


1 − z −1
p=k
1 + z −1
1 + 2 z −1 + z −2
H (z) =
16.18 − 20.48 z −1 + 9.957 z −2
4. Exprimons enfin l’équation aux différences :
1
yn = (20.48 yn−1 − 9.957 yn−2 + xn + 2xn−1 + xn−2 )
16.18

3.4 Analyse spectrale non-paramétrique


3.4.1 Estimateur de la fonction de corrélation
On déduit les estimateurs par discrétisation des estimateurs à temps continu de la fonction de
corrélation (cf. cours de théorie du signal).
– estimateur non-biaisé
N −1−|l|
1 X
dN B
γx [l] = xn .xn−l (3.10)
N − |l| n=0
– estimateur biaisé
N −1−|l|
1 X
γc
B
x [l] = xn .xn−l (3.11)
N n=0

3.4.2 Estimation de la densité spectrale de puissance (Dsp)


Par définition, la Dsp est la transformée de Fourier de la fonction de corrélation. Ne disposant
que de deux estimées (3.10,3.11) de la fonction de corrélation on peut chercher à connaı̂tre celle qui
estime le mieux la densité spectrale de puissance. On montre alors que seul l’estimateur biaisé de la
corrélation fournit un résultat viable.
h i
c c
B
Υx [k] = Tf γx [l] (3.12)

Cependant, on peut s’épargner le calcul de l’estimée de la corrélation en utilisant le théorème de


Wiener-Kintchine :  ¯ ¯2 
 1 ¯N −1 ¯
cx [k] = lim E ¯X nk ¯
Υ ¯ x n .W N ¯ (3.13)
N −→+∞  N ¯ ¯
n=0

qui nous fournit l’estimateur dit du périodogramme :


¯N −1 ¯2
1 ¯¯ X ¯
¯
Πx [k] = ¯ xn .WNnk ¯ (3.14)
N¯ n=0
¯

On peut montrer que cet estimateur est asymptotiquement biaisé. £ £


On obtient la densité spectrale de puissance définie sur l’intervalle − 12 , + 12 (ou encore [−1, +1[
suivant les auteurs) correspondant à des fréquences réduites : Ffe (respectivement Ffe ). La fonction
2
obtenue est paire grâce à la propriété de symétrie spectrale, on pourra donc se limiter à la moitié de
l’intervalle.
64 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

Signal original
3 40 20

35
2 10

30
1 0
25

Puissance dB
Amplitude

Puissance
0
20 -10

-1 15
-20

10
-2
-30
5
-3
20 40 60 80 100 120 0 -40
-0.5 0 0.5 -0.5 0 0.5
Temps
Fré
quences ré
duites Fré
quences ré
duites

Signal original. Dsp estimée. Dsp en décibels.

3.4.3 Améliorations possibles


Une technique simple d’amélioration est le zero-padding qui consiste à ajouter des 0 à la séquence
à analyser. Les algorithmes de calcul rapides de la transformée de Fourier étant conçus pour des
séquences dont la longueur est en puissance de 2, nous pouvons rajouter des valeurs nulles jusqu’à
atteindre une longueur compatible.
½
xn 0 ≤ n < N
yn =
0 N ≤ n < 2N
2N
X −1
nk
Yk = yn .W2N
n=0
N
X −1
nk
= xn .WN2 = X k
2
n=0

Signal complé
té Pé
riodogramme brut en dB
20 15
3

15 10
2
10 5

1
5 0
Puissance dB

Puissance dB
Amplitude

0 0 -5

-5 -10
-1

-10 -15
-2
-15 -20

-3
-20 -25
50 100 150 200 250 0 0.1 0.2 0.3 0.4 0.5 0 0.1 0.2 0.3 0.4 0.5
Temps Fré
quences ré
duites Fré
quences ré
duites

On ajoute des 0. Dsp sans ajout de 0. Dsp avec ajout de 0.

Les autres améliorations que l’on peut effectuer se font bien sûr au détriment d’un paramètre (temps
de calcul, précision). On peut toutefois envisager les deux améliorations suivantes :
– Moyennage de périodogrammes
On subdivise la séquence à analyser en Q segments (avec ou sans recouvrement) que l’on moyenne.
Si un signal stationnaire est présent noyé dans du bruit, le moyennage affectera que le bruit.
Q−1
1 X (q)
Πm
x [k] = Π [k] (3.15)
Q q=0 x

– Fenêtrage temporel des données


Un des problèmes de l’analyse spectrale par le périodogramme est que les données ne sont pas obli-
gatoirement stationnaires en raison de la restriction du nombre de points. En effet, cette troncature
3.4. ANALYSE SPECTRALE NON-PARAMÉTRIQUE 65

introduit des discontinuités aux bords de la séquence perturbant l’estimation des phénomènes sta-
tionnaires. Pour limiter ces effets de bords il nous est possible de pondérer la séquence par une
fenêtre de lissage (la fenêtre de troncature est la fenêtre rectangulaire soit une fenêtre discontinue !).
Les fenêtres que l’on peut employer sont :Hanning, Hamming, Blackman,. . . L’utilisation de ces
fenêtres a pour conséquence dans le domaine temporel de réduire les effets de bords et dans le do-
maine fréquentiel de réduire la précision. Le choix d’une fenêtre se fera donc suivant un compromis
précision/lissage.

¯N −1 ¯2
1 ¯X ¯
¯ ¯
Πx [k] = ¯ (xn .wn ) .WNnk ¯ (3.16)
N ¯ ¯
n=0

– Rectangulaire
1 0

0.9

0.8 -50

0.7

Puissance dB
0.6 -100

0.5

0.4 -150

0.3

0.2 -200

0.1

0 -250
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5
Fré
quences ré
duites

– Hanning

µ µ ¶¶
1 t τ
w (t) = 1 − cos 2π , |t| ≤
2 τ 2
µ µ µ ¶¶¶
1 2n + 1 1
wn = 1 − cos 2π − , 0≤n<N
2 2N 2

1 0

0.9

0.8 -50

0.7
Puissance dB

0.6 -100

0.5

0.4 -150

0.3

0.2 -200

0.1

0 -250
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5
Fré
quences ré
duites

– Hamming

¶ µ
t τ
w (t) = 0.54 − 0.46 cos 2π , |t| ≤
τ 2
µ µ ¶¶
2n + 1 1
wn = 0.54 − 0.46 cos 2π − , 0≤n<N
2N 2
66 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

1 0

0.9

0.8 -50

0.7

Puissance dB
0.6 -100

0.5

0.4 -150

0.3

0.2 -200

0.1

0 -250
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5

– Blackman
Fré
quences ré
duites

¶ µ ¶ µ
t t τ
w (t) = 0.42 − 0.5 cos 2π + 0.08 cos 4π , |t| ≤
τ τ 2
µ µ ¶¶ µ µ ¶¶
2n + 1 1 2n + 1 1
wn = 0.42 − 0.5 cos 2π − + 0.08 cos 4π − , 0≤n<N
2N 2 2N 2

1 0

0.9

0.8 -50

0.7
Puissance dB

0.6 -100

0.5

0.4 -150

0.3

0.2 -200

0.1

0 -250
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5
Fré
quences ré
duites

Remarque 3.2 Si on veut que la fenêtre ne modifie pas l’estimation de la Dsp il faut la normaliser
wn
avant de l’utiliser :f
wn = kw nk
.

Signal original
15

0.8
10
0.6
5
0.4
0
Puissance dB

0.2
Amplitude

0 -5

-0.2
-10
-0.4
-15
-0.6
-20
-0.8

-25
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5
Temps Fré
quences ré
duites

Le signal original tronqué. Dsp du signal original.


3.4. ANALYSE SPECTRALE NON-PARAMÉTRIQUE 67

Signal original
20

0.8
0
0.6
-20
0.4
-40

Puissance dB
0.2

Amplitude
0 -60

-0.2
-80
-0.4
-100
-0.6
-120
-0.8

-140
20 40 60 80 100 120 0 0.1 0.2 0.3 0.4 0.5
Temps Fré
quences ré
duites

Signal fenêtré avec Hanning. Dsp du signal fenêtré.


68 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

3.5 Travaux dirigés de Traitement du Signal


3.5.1 Échantillonnage et filtrage
3.5.1.1 Échantillonnage parfait

Soit une fonction continue xa (t). Sa transformée de Fourier à Xa(f)


support borné [−F . . . + F ] est représentée ci-contre. On prendra A

F = 5 kHz.

f
On échantillonne xa (t) avec la fréquence d’échantillonnage Fe = -F +F
9F . L’échantillonnage est supposé parfait. On appelle xae (t) le si- Transformée de Fourier du signal

gnal obtenu. analogique.

1. Exprimer Xae (f ), la transformée de Fourier de xae (t), en fonction de Xa (f ).


2. Représenter graphiquement Xae (f ) sur l’intervalle [−30F . . . + 30F ].

3.5.1.2 Échantillonnage réel


L’échantillonnage réel peut être modélisé par :

– soit par un échantillonnage parfait suivi d’une convolution avec un signal continu h (t),
– soit par le produit d’un signal continu avec une fonction périodique v (t).

Pour la première modélisation, le signal échantillonné réel est modélisé par la fonction x1 (t).

Pour la seconde modélisation, le signal échantillonné réel est modélisé par la fonction x2 (t).
1. Représenter la fonction h (t) permettant d’obtenir x1 (t) à partir de xae (t).
Te
2. Représenter le module de la transformée de Fourier X1 (f ) pour la valeur θ = 3
.
3. Même question pour θ = Te (cas d’un échantillonneur bloqueur).
Te
4. Représenter le module de la transformée de Fourier V (f ) pour la valeur θ = 3
.
5. Reprendre les question 2 à 4 pour le signal x2 (t).

3.5.1.3 Filtres non invariants


On définit xn = x (nTe ).
On fait passer la séquence xn dans un filtre sur-échantillonneur1 E de sortie wn défini par la relation
w3n = xn et wn = 0 si n n’est pas multiple de 3.
1. Ce filtre est-il stable, linéaire, invariant par translation ?
2
On fait passer la séquence xn dans un filtre compresseur C de sortie yn défini par la relation
yn = x3n .
3. Ce filtre est-il stable, linéaire, invariant par translation ?
4. Représenter Y (ν) la transformée de Fourier de yn pour ν ∈ [0 . . . 1].
1
appelé aussi interpolateur
2
appelé aussi décimateur d’ordre M , dans notre exercice M = 3
3.5. TRAVAUX DIRIGÉS DE TRAITEMENT DU SIGNAL 69

3.5.1.4 Sous-échantillonnage
Le signal analogique xa (t) module en amplitude une porteuse sinusoı̈dale de fréquence f0 = 110 kHz.
On désire transmettre le signal modulé en amplitude en l’échantillonnant et en transmettant les
échantillons sous forme numérique.
1. En appliquant le théorème de Shannon, trouver le nombre minimal d’échantillons à trans-
mettre par seconde.
2. On échantillonne en fait le signal modulé en amplitude avec la fréquence Fe = 40 kHz.
(a) Dessiner l’allure du spectre du signal échantillonné parfait entre 0 et 120 kHz.
(b) Qu’obtient-on en filtrant ce signal échantillonné parfait avec un filtre dont la bande pas-
sante s’étend de 105 à 115 kHz ?
3. Qu’obtiendrait-on en filtrant le signal échantillonné parfait avec un filtre cardinal de fréquence
de coupure 20 kHz ?
4. Conclure sur l’intérêt de cette méthode. Discuter les problèmes liés aux imperfections de
l’échantillonnage (stabilité de la fréquence d’échantillonnage).
70 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

3.5.2 Synthèse des filtres numériques


3.5.2.1 Filtre récursif du premier ordre
1
Soit la fraction rationnelle h (z) = 1−az −1 .

Cette fonction de la variable complexe z est la transformée en Z de deux séquences, h1 [n] causale et
h2 [n] non causale.
1. Calculer h1 [n] et h2 [n] et préciser les domaines de convergence.
2. h1 [n] et h2 [n] sont les réponses impulsionnelles de deux filtres appelés respectivement F1 et
F2 . Écrire les équations aux différences de ces deux filtres.
3. On suppose |a| < 1.
(a) Écrire l’expression de la réponse en fréquence H1 (ν) du filtre F1 .
(b) Que peut-on dire de la réponse du filtre F2 ?
4. Application numérique : a = 0.5.
£ ¤
(a) Tracer l’allure de la réponse en fréquence H1 (ν) sur l’intervalle − 21 , + 12 .
(b) Représenter le diagramme des pôles et des zéros du filtre F1 .
(c) Quelle fonction réalise-t-il ?

3.5.2.2 Synthèse des filtres RII par invariance d’une réponse temporelle
1
1. Soit le filtre analogique de fonction de transfert : ha (p) = 1+τ p
où τ = 0.5 s.
Calculer sa réponse impulsionnelle ha (t) et sa réponse indicielle va (t).
2. On échantillonne h (t) avec une période Te = τ. log (2). On obtient une séquence h (nTe ).
(a) Écrire la fonction de transfert H1 (z) d’un filtre échantillonné dont la réponse impulsion-
nelle h1 [n] est égale à ha (nTe ). (Cette approche est appelée méthode de l’invariance
impulsionnelle).
(b) Donner son équation aux différences.
(c) Calculer sa réponse indicielle v1 [n] et tracer sa réponse en fréquence.
(a) Comparer à celle du filtre analogique de départ.
3. On échantillonne v (t) avec une période Te = τ. log (2). On obtient une séquence v (nTe ).
(a) Écrire la fonction de transfert H2 (z) d’un filtre échantillonné dont la réponse indicielle
v2 [n] est égale à v (nTe ). (Cette approche est appelée méthode de l’invariance indi-
cielle).
(b) Calculer sa réponse impulsionnelle h2 [n] et tracer sa réponse en fréquence.
(c) Comparer à celle du filtre analogique de départ.
4. On considère une fonction de transfert h (p) ne comportant que des pôles simples (donc qui se
met sous forme d’une somme d’éléments simples du premier ordre).
(a) Montrer que la méthode de l’invariance impulsionnelle transforme les pôles (mais pas les
zéros) selon la relation z = Φ (p) (ceci reste vrai pour des pôles multiples, pour lesquels la
démonstration est lourde).
(b) Quelle est l’image de la droite p = jΩ dans le plan en z par cette transformation Φ.
3.5. TRAVAUX DIRIGÉS DE TRAITEMENT DU SIGNAL 71

(c) Comment se transforme le demi-plan gauche du plan de Laplace dans le plan en Z ?


(d) Conclure sur l’intérêt de cette méthode de synthèse en ce qui concerne la stabilité du filtre
numérique obtenu.
5. On désire réaliser un filtre numérique récursif du premier ordre, de type passe-bas, avec une
fréquence de coupure fc à −3 dB et une fréquence d’échantillonnage Fe . On décide pour ¡ 1 ¢ cela
d’appliquer la méthode de l’invariance indicielle sur le filtre h (p). On pose Te = τ log α avec
0 < α < 1. (α voisin de 1 correspond à un échantillonnage de v (t) à fréquence élevée, α voisin
de 0 correspond à une fréquence d’échantillonnage Fe faible). On pose νc = Ffce .
(a) Écrire la relation qui lie cos (2πν1 ) et α sous la forme cos (2πν1 ) = g (α), et tracer l’allure
de g (α).
(b) En déduire qu’il existe une limite supérieure pour le choix de la position de fc par rapport
à Fe .
6. Conclure sur les méthodes de synthèse par invariance, dans l’optique de fabriquer un filtre à
temps discret dont le gain satisfait à un gabarit en fréquence défini par une bande passante et
une bande atténuée.

3.5.2.3 Synthèse de filtre récursif par la transformation bilinéaire


−1 k+p
La transformation bilinéaire est définie par : p = k 1−z
1+z −1
ou z = k−p
.
1. Montrer que la transformation bilinéaire fait correspondre la droite p = jΩ et le cercle de rayon
unité z = exp (j2πν).
(a) En déduire la relation liant Ω et ν.
(b) Montrer que si h (p) est un filtre analogique stable, H (z) obtenu par transformation
bilinéaire est aussi un filtre stable.
2. On désire fabriquer un filtre à temps discret passe-bas, destiné à fonctionner à une fréquence
d’échantillonnage de 8 kHz. le gabarit de ce filtre est illustré Fig. 3.2.

A (dB)

18

0 f (kHz)
0,8 1,48

Fig. 3.2 – Allure du gabarit à synthétiser.

(a) Normaliser le gabarit (c-à-d. représenter le gain en fonction de ν dans l’intervalle [0..1]).
(b) En utilisant la relation liant Ω et ν, construire le gabarit associé pour le filtre à temps
continu. On choisira une valeur de k qui donne un gabarit analogique normalisé.
(c) Synthétiser le filtre analogique sous la forme d’un filtre de Butterworth, et en déduire
le filtre numérique recherché. (Les coefficients normalisés se trouvent dans le polycopié de
synthèse des circuits de filtrage).
72 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL

3.5.3 TFD et analyse spectrale


3.5.3.1 TFD et interpolation
Soit une séquence xn de longueur N et sa Tfd sur N points notée XN [k]. On va fabriquer plusieurs
séquences de longueur 2N à partir de xn et étudier leurs Tfd.
Les démonstrations seront faites pour un ordre N quelconque. On pourra ensuite, pour aider la
compréhension des résultats, les appliquer à la séquence particulière de longueur 8 illustrée Fig.
(4.20).

1
4
0.9
3.5
0.8

0.7 3

0.6 2.5

0.5
2
0.4
1.5
0.3

0.2 1

0.1 0.5

0
0
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
Indices temporels Indices fréquentiels

Séquence test. Tfd de la séquence test.

Fig. 3.3 – Allures de la séquence et de sa Tfd.

1. On construit la suite yn par concaténation :

yn = xn + xn−N n ∈ [0, 2N [

Exprimer Y2N [l] la Tfd d’ordre 2N de yn en fonction de XN [k].


L’indice fréquentiel l de Y2N [l] est défini sur [0, 2N [.
2. On construit la suite vn par ajout de 0 :
½
xn n ∈ [0, N [
vn =
0 n ∈ [N, 2N [

Exprimer V2N [l] la Tfd d’ordre 2N de vn en fonction de XN [k].


3. On construit la suite wn par interpolation d’ordre 0 :
½
x n2 pour n = 2m
wn = m ∈ [0, N [
0 pour n = 2m + 1

Exprimer W2N [k] la Tfd d’ordre 2N de wn en fonction de XN [k].


4. Comparer les résultats des questions 1 et 3, et montrer qu’ils peuvent se déduire l’un de l’autre
par dualité.
Comparer également ces résultats à ceux trouvés dans le TD sur l’échantillonnage lors de l’étude
du filtre sur-échantillonneur (exercice ¿ Filtres non invariants À, cf. 3.5.1.3).
3.5. TRAVAUX DIRIGÉS DE TRAITEMENT DU SIGNAL 73

3.5.3.2 TFD et analyse spectrale


1. On échantillonne un signal xa (t) à la fréquence Fe = 8, 192 kHz pendant un temps T . On obtient
N échantillons. Quelle doit être la valeur de T pour que le spectre calculé par Tfd calculé sur
l’ensemble des échantillons comporte une raie par Hertz.
2. Le signal xa (t) est une sinusoı̈de pure de fréquence f1 = 1 kHz et d’amplitude A = 3. On
considère l’échantillonnage idéal théorique de ce signal et on appelle x [n] la séquence sinusoı̈dale
de longueur infinie ainsi obtenue. Représenter la densité spectrale de puissance Γx (ν) de cette
séquence.
En réalité, après échantillonnage pendant la durée T et conversion numérique, la séquence y [n]
obtenue est de longueur finie égale à N . La Dsp est estimée par un périodogramme d’ordre N , avec
une fenêtre rectangulaire.
1. Représenter l’allure de la transformée de Fourier X (ν) de la séquence y [n]. En déduire les
raies données par le périodogramme sur un voisinage de f1 sachant que celui-ci est calculé à
l’aide d’une Tfd d’ordre N . On précisera les positions et les amplitudes exactes de ces raies.
2. L’amplitude A restant constante, la fréquence du signal xa (t) est modifiée pour passer à f2 =
1, 0005 kHz. Représenter alors l’allure des raies données par le périodogramme sur le même
voisinage de fréquence que précédemment.
74 CHAPITRE 3. TRAITEMENT NUMÉRIQUE DU SIGNAL
Chapitre 4

Travaux Pratiques de Traitement


Numérique du Signal

4.1 Analyse spectrale


4.1.1 Échantillonage et transformée de Fourier.
On considère le signal suivant :

y (t) = sin (2π100t) + sin (2π50t) .

1. Déterminer la fréquence d’échantillonnage Fe théorique.


2. Visualiser le signal y(t) ainsi que sa densité spectrale de puissance en constituant le modèle
Simulink approprié.
3. Que se passe-t-il si au lieu de prendre la fréquence Fe on choisit Fe/2 ?

Source Visu
1 T

Σ
Source Analyse Visu
2 spectrale F

Fig. 4.1 – Validation du théorème de l’échantillonnage.

La densité spectrale de puissance sera estimée en utilisant le bloc Périodogramme avec une visua-
lisation adaptée.

4.1.2 Étude comparative des fenêtres de pondération


Visualiser sous Simulink dans les domaines temporels et fréquentiels les fenêtres de troncature
suivantes :
– rectangulaire (boxcar)
– hanning

75
76 CHAPITRE 4. TRAVAUX PRATIQUES DE TRAITEMENT NUMÉRIQUE DU SIGNAL

– blackman
Les fenêtres seront synthétisées sur un nombre de points égal à 100.
NB : il ne faut pas oublier de normaliser les fenêtres étudiées pour pouvoir mieux comparer les
résultats.

Générateur de Visu
fenêtres F

Zero Troncature Visu


FFT
padding N/2 T

Fig. 4.2 – Étude des fenêtres.

Générer le signal suivant :


y (t) = sin (2π50t) + 0.1 sin (2π25t) .
Effectuer l’analyse spectrale du signal avec les paramètres suivants :
– fréquence d’échantillonnage : 1000 Hz,
– nombre de points : 100,
– fenêtres de pondération suscitées.
Rem : On utilisera à bon escient le bloc Periodogramme.
Interpréter les résultats obtenus.
Générer le signal suivant :
y (t) = sin (2π50t) + 0.1 sin (2π43t) .
5.En utilisant les mêmes paramètres qu’à la question 2, déterminer la fenêtre de pondération per-
mettant d’obtenir la meilleure analyse en fréquence.
6.Conclure sur l’utilisation des fenêtres de pondération en analyse spectrale.

4.1.3 Transformée de Fourier à court-terme


On vous fournit les fichiers de données parole8b.wav parole16b.wav contenant des signaux de
parole échantillonné à 8 kHz/8 bits et 11025 Hz/16 bits. Afficher le spectrogrammes de ces signaux.
Comment en effectuez-vous en l’interprétation ?
(cf la fonction specgram).

4.1.4 Modélisation autorégressive.


On cherche à comparer l’analyse spectrale par modèle AR et par périodiogramme.

Fig. 4.3 – Comparaison de méthodes d’analyse spectrale.


4.1. ANALYSE SPECTRALE 77

Le signal d’entrée est la composition d’une sinusoı̈de de fréquence 1 Hz d’amplitude 10 et d’un bruit
gaussien de moyenne nulle et de variance 0,1.

La dimension du buffer est de 64 avec une fréquence d’échantillonnage de 32 Hz.

On considérera le bloc LPC qui effectue l’estimation d’un modèle AR à partir d’un vecteur d’entrée,
il suffira de fournir l’ordre désiré comme paramètre.
Les blocs zero pad seront configurés de telle façon que la comparaison soit valide.
On visualisera les spectres sur l’intervalle [0, Fe/2].
1.Observer le comportement de la modélisation pour les ordres {1, 2, 4, 5, 8}. Quel est le meilleur
ordre ?
2.Que dire du périodogramme ?
78 CHAPITRE 4. TRAVAUX PRATIQUES DE TRAITEMENT NUMÉRIQUE DU SIGNAL

4.2 Filtrage numérique


Un filtre est un système qui réalise une sélection en fréquence des signaux qui lui sont injectés.
La fonction de transfert du système indique l’atténuation et le déphasage appliqué aux différentes
composantes fréquentielles du signal d’entrée. La fonction de transfert peut s’écrire sous la forme :
Le filtre peut être caractérisé par :
– sa réponse impulsionnelle,
– son gain complexe,
– son gabarit.
En pratique, il est impossible d’obtenir la réponse idéale. Le problème central de la conception des
filtres numériques est d’obtenir une réponse pratique qui constitue une bonne approximation de la
réponse idéale. Les paramètres de caractérisation du filtre sont au nombre de quatre :
– l’ondulation dans la bande passante Amax ,
– L’affaiblissement dans la bande atténuée Amin ,
– Les fréquences passante et d’atténuation F p et F s.
Dans cette séance de Tp vous allez manipuler aussi bien Matlab que Simulink.

4.2.1 Étude comparative des approximations (RII)


On désire réaliser sous Matlab un filtre numérique dont les caractéristiques sont :
– fréquence passante : 0.1
– fréquence atténuée : 0.2
– Amax = 1dB
– Amin = 30dB
Pour les approximations de Butterwoth, Chebychev type 1 et elliptique :
– déterminer l’ordre des filtres ainsi que la fréquence de coupure,
– représenter les modules de ces différents filtres en échelle linéaire puis logarithmique.
On utilisera les fonctions suivantes dont l’aide et la syntaxe est accessible par ¿ helpwin nom À
: {buttord, cheb1ord, ellipord, butter, cheby1, ellip, freqz }.

4.2.2 Implantation de filtres RII


On vérifiera le fonctionnement des deux filtres numériques en utilisant :
– une fréquence d’échantillonnage de 10 Hz
– un signal composé de 3 sinusoı̈des d’amplitudes unité et de fréquences {0.5, 1, 3} Hz
– durée d’observation : 3 secondes
Comparer les deux méthodes d’implantation.

4.2.3 Filtrage d’un signal (RII)


On considère le signal suivant : x(t) = sin(2π5t)+sin(2π15t)+sin(2π30t), échantillonné à la fréquence
de 1000 Hz.
Constitué le modèle Simulink pour un filtrage passe-bande de caractéristiques :
– fréquence de coupure basse 10 Hz
– fréquence de coupure haute 20 Hz
– ondulation dans la bande-passante 0.1 dB
– atténuation dans la bande atténuée 40 dB
4.2. FILTRAGE NUMÉRIQUE 79

Il vous faudra correctement choisir le type du filtre.


On observera simultanément le signal original et le signal filtré.
On ajoutera la représentation spectrale des signaux et utilisant le bloc d’analyse spectrale adapté.

4.2.4 Étude des filtres RIF


On désire comparer l’effet de quelques fenêtres de pondération lors de la synthèse des filtres à réponse
impulsionnelle finie.
Les caractéristiques du filtre sont les suivantes :
– passe-bas
– fréquence d’échantillonnage de 1000 Hz
– nombre de coefficient 75.
Représenter sous Matlab, la réponse en fréquence du filtre pour les fenêtres rectangulaire, de ham-
ming et de blackman.
Comparer les différentes réponses en fréquence obtenues.
On pourra justifier les réponse à partir des notions d’analyse spectrale.

4.2.5 Implantation de filtres RIF


Proposer deux structures de filtres RIF (directe et simplifiée) sous Simulink (cf. question 4.2). On
utilisera les coefficients d’un filtre passe-bas RIF de longueur 12 synthétisé avec une fenêtre de
hamming et de fréquence de coupure égale à 50 Hz (la fréquence d’échantillonnage étant de 1000
Hz).
Comment doit-on modifier la structure si l’ordre est impair ?
80 CHAPITRE 4. TRAVAUX PRATIQUES DE TRAITEMENT NUMÉRIQUE DU SIGNAL
Compléments mathématiques

81
82 COMPLÉMENTS MATHÉMATIQUES

4.3 Espace vectoriel


Soit E un espace vectoriel, E peut être construit sur R ou C selon que l’on considère des combinaisons
linéaires à coefficients dans R ou C.

4.3.1 Produit scalaire


Le produit scalaire de deux fonctions (x, y) ∈ E noté hx, yi ∈ C est une forme anti-linéaire à symétrie
hermitienne : hx, yi = hy, xi c’est-à-dire,
– linéarité en y : hx1 +
½ x2 , y1 + y2 i = hx1 , y1 i + hx1 , y2 i + hx2 , y1 i + hx2 , y2 i,
hx, λyi = λ hx, yi
– antilinéarité en x : ? ,
½ hλx, yi = λ hx, yi
hx, xi ≥ 0
– produit hermitien : .
hx, xi = 0 ⇒ x = 0
– si hx, yi = 0 alors x et y sont dits orthogonaux.

4.3.2 Normes
On appelle norme sur l’espace vectoriel E une application x −→ kxk ayant les propriétés suivantes :
– kxk ≥ 0 et kxk = 0 ⇐⇒ x = 0,
– kλxk = |λ| kxk,
– kx + yk ≤ kxk + kyk (inégalité triangulaire).
1 1
Pour tout produit scalaire sur E la quantité hx, xi 2 est une norme : kxk = hx, xi 2 .
– |hx, yi|2 ≤ kxk2 kyk2 (inégalité de Schwarz).
On peut définir une forme généralisée de la norme à un ordre p ∈ N :
sZ
+∞
Lp (x) = p
|x (t)|p dt
−∞
qR
+∞
Un cas particulier de cette définition est obtenue lorsque p = 2 : L2 (x) = −∞
|x (t)|2 dt = kxk.
Un autre cas particulier de la norme Lp apparaı̂t lorsque l’on choisit p = +∞, alors :
sZ
+∞
L∞ (x) = lim p
|x (t)|p dt = max x (t)
p→+∞ −∞

4.3.3 Bases
Pour former une base il fautPque la famille de fonctions vérifient les propriétés suivantes :
– l’indépendance linéaire : i λi Φi = 0 ⇒ λi = 0, ∀i
– l’orthogonalité : Φi ⊥Φj , ∀i 6= j ⇐⇒ hΦi , Φj i = βi δi−j (la base est orthonormée si βi = 1),
– Une base est une famille génératrice Φi (t) d’un sous-espace vectoriel E avec laquelle nous pouvons
décrire n’importe quelle fonction f (t) comme une composition linéaire :

X 1
f (t) = λi Φi (t)
i
βi
Z
λi = f (t) Φ?i (t) dt = hf, Φi i
4.4. DÉRIVATION VECTORIELLE (CONVENTION DE VETLER) 83

4.4 Dérivation vectorielle (convention de Vetler)


4.4.1 Dérivée d’une matrice
4.4.1.1 Par rapport à un scalaire
– a ∈ R B = (bkl ) ∈ R (m, n) B = f (a)
 ∂b ∂b1n

∂a
11
··· ∂a
∂B  .. ... .. 
= . .  ∈ R (m, n)
∂a ∂bm1 ∂bmn
∂a
··· ∂a

– a ∈ R B ∈ R (m, n) C ∈ R (n, p)
∂BC ∂B ∂C
= C+B
∂a ∂a ∂a

4.4.1.2 Par rapport à une matrice


A ∈ R (m, n) B ∈ R (p, q)B = f (A)
 ∂B ∂B

··· ∂B
∈ R (m, n)
∂B  ∂a.11 . ∂a1n
..  ∂akl
=  .. .. . 
∂A ∂B
∂B
··· ∂B
∂A
∈ R (m × p, n × q)
∂am1 ∂amn

4.4.2 Dérivée d’un vecteur


– A ∈ Rm B ∈ Rp    
∂BT ∂b1 ∂bp
∂a1 ∂a1
··· ∂a1
∂BT  ..   .. ... .. 
= . = . .  ∈ R (m, p)
∂A ∂BT ∂b1 ∂bp
∂am ∂am
··· ∂am

– A ∈ Rm B ∈ Rp C ∈ R (n, p) (C indépendante de A)
∂BT C ∂BT
= C
∂A ∂A

4.4.3 Dérivée d’un scalaire


– A ∈ Rm b∈R
 ∂b

∂a1
∂b −−→  .. 
= grad (b) =  .  ∈ R (m, 1)
∂A ∂b
∂am
∂b ¡ ∂b ∂b
¢
= ∂a1
··· ∂am ∈ R (1, m)
∂AT
– A ∈ Rm b∈R
 ∂2b ∂2b

µ ¶ ∂a21
··· ∂a1 ∂am
∂ 2b ∂ ∂b  .. .. .. 
T
= = . . .  ∈ R (m, m)
∂A∂A ∂A ∂AT
∂2b ∂2b
∂am ∂a1
··· ∂ 2 am
84 COMPLÉMENTS MATHÉMATIQUES

– A ∈ Rm B ∈ Rp C ∈ Rp D ∈ R (p, p)

∂BT DC ∂BT ∂CT T


= DC+ D B
∂A ∂A ∂A
4.5. PROBABILITÉS 85

4.5 Probabilités
4.5.1 Fonction de répartition
4.5.1.1 Cas scalaire
Soit X ∈ R une variable aléatoire, la fonction de répartition se définie comme :
FX (x) = P [X < x] (4.1)
La fonction de répartition FX est une fonction non-décroissante :
lim FX (x) = 0
x→−∞

lim FX (x) = 1
x→+∞

4.5.1.2 Cas vectoriel


Soit X ∈ Rm un vecteur aléatoire et x ∈ Rm une réalisation, la fonction de répartition se définie
comme :
FX (x) = P [X < x] (4.2)
= P [X1 < x1 , . . . , Xm < xm ]

4.5.2 Loi de densité de probabilité

pX (x) = pX1 ,...,Xm (x1 , . . . , xm ) (4.3)


∂ m FX (x)
=
∂x1 , . . . , ∂xm
Z Z
. . . pX (x) dx1 . . . dxm = 1 (4.4)
Z +∞
pX1 ,...,Xm−1 (x1 , . . . , xm−1 ) = pX (x) dxm (4.5)
−∞

4.5.3 Loi conditionnelle


Soient X ∈ Rm et Y ∈ Rn deux vecteurs aléatoires, la loi conditionnelle est fournie par la formule
de Bayes :
pX,Y (x, y)
pX/Y (x (y)) = (4.6)
pY (y)

4.5.4 Indépendance
Soient X ∈ Rm et Y ∈ Rn deux vecteurs aléatoires, ils sont mutuellement indépendants si la loi
conjointe est égale au produit des lois :
pX,Y (x, y) = pX (x) × pY (y) (4.7)
De la même façon, si les composantes {xi } du vecteur X ∈ Rm sont indépendantes alors :
pX (x) = pX1 (x1 ) × . . . × pXm (xm ) (4.8)
86 COMPLÉMENTS MATHÉMATIQUES

4.5.5 Changement de variable

X ∈ Rm un vecteur aléatoire
Y = f (X) ∈ Rm f est bijective
¯ µ T ¶¯
¯ ∂x ¯¯
pY (y) = pX (x (y)) ¯¯det
∂y ¯
¯ ³ T ´¯
¯ ¯
¯det ∂x
∂y ¯
est la valeur absolue du jacobien.

u = ρ cos (θ)
v = ρ sin (θ)
¡ ¢T
x= u v
¡ ¢T
y= ρ θ
¯ µ T ¶¯ ¯µ ¶¯
¯ ¯ ¯ sin (θ) ¯¯
¯det ∂x ¯ = ¯ cos (θ)
¯ ∂y ¯ ¯ −ρ sin (θ) ρ cos (θ) ¯

4.5.6 Espérance
4.5.6.1 Cas hypergéométrique

Soit X ∈ Rm un vecteur aléatoire de loi de densité de probabilité hypergéométrique p (X).


Le vecteur moyen µX = E {X} s’écrit :
Z
µX = x.pX (x) dx1 dx2 . . . dxm ∈ Rm
R
m

= [E {X1 } E {X2 } . . . E {Xm }]T


Z
E {Xk } = xk .pX (x) dx1 dx2 . . . dxm
Rm
n o
T
La matrice de covariance CX = E (X − µX ) (X − µX ) s’écrit :

© ª
CX = E XXT − µX µX T

4.5.7 Lois usuelles


– Pile ou face : C’est une loi discrète à un paramètre :

P [X = 1] = p, P [X = 0] = 1 − p (4.9)
µX = p
2
σX = p (1 − p)
4.5. PROBABILITÉS 87

– Loi binômiale : Soient N VA discrètes i-i-d1 obéissant chacune à une loi de pile ou face. Il s’agit
donc d’une loi discrète à deux paramètres N et p.
¡ ¢
p (k) = kN pk (1 − p)N −k (4.10)
µX = N p
2
σX = N p (1 − p)

– Loi de Poisson : C’est la limite de la loi binômiale N → +∞ et p ≈ 0. Le nombre de paramètre


de cette loi discrète est un (µ).

µk
p (k) = exp (−µ) (4.11)
k!
µX = µ
2
σX =µ

– Loi gaussienne ou normale : C’est une loi continue à deux paramètres µ et σ. On la note aussi
N (µ, σ)
à !
1 (x − µ)2
p (x) = √ exp − (4.12)
2πσ 2σ 2
µX = µ
2
σX = σ2

1
i-i-d : indépendantes et identiquement distribuées.
88 COMPLÉMENTS MATHÉMATIQUES
Corrections des Travaux Dirigés

89
90 CORRECTIONS DES TRAVAUX DIRIGÉS

4.6 Théorie du Signal


4.6.1 Classifications des signaux
Exercice 4.1 Les calculs nous fournissent la classification suivante :

x (t) Ex Px
ΠT0 (t) T0 × 12 0
1
u (t) → +∞ 2
A2
A sin (2πf0 t) u (t) → +∞ 4
r (t) → +∞ → +∞

Exercice 4.2 Les opérations sur le signal original ne sont que des translations ou des changements
d’échelle. Nous pouvons tenir compte de ces transformations par l’expression suivante :
· ·
τi 4 + τi
xi (t) = x (αi t − τi ) t ∈ ,
αi αi
Le calcul de l’énergie de cette expression nous fournit :
3×4
Exi =
|αi |
Ce qui nous montre que le retard n’influe pas sur le calcul de l’énergie au contraire de la fonction
d’échelle.
xi αiτi Exi
x 1 0 12
x1 1 3 12
x2 2 0 6
1
x3 2
0 24
x4 −1 0 12

Exercice 4.3 Le signal s’écrit comme une combinaison linéaire de fonctions élémentaires :
x (t) = r (t + 1) + r (t) + u (t − 1) − 2u (t − 2)
La représentation graphique du signal est donné à la Fig. (4.4).
Exercice 4.4
Z
hx1 , x2 i , x1 (t) x?2 (t) dt
Z T
2
=A sin (2πf0 t + θ) cos (2πf0 t + θ) dt
0
Z
A2 T
= sin (4πf0 t + 2θ) dt
2 0
A2
= (cos (2θ) − cos (4πf0 T + 2θ))
8πf0
hx1 , x2 i = 0
k
⇒T =
2f0
4.6. THÉORIE DU SIGNAL 91

1.8

1.6

1.4

1.2

Amplitude
1

0.8

0.6

0.4

0.2

0
−2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5 3
Temps (s)

Fig. 4.4 – Allure du signal de l’exercice 1.3.

Exercice 4.5 On veux obtenir la meilleure représentation pour la suite de coefficients {λj } au sens
de l’erreur quadratique moyenne.

Soit Λ le vecteur des coefficients λi et Φ (t) le vecteur des fonctions analysantes ϕi (t) :
Λ = [λ0 λ1 . . . λN ]T
Φ (t) = [ϕ0 (t) ϕ1 (t) . . . ϕN (t)]T
L’erreur quadratique s’écrit :
Z ¯¯ XN
¯2
¯
¯ ¯
J = ¯y (t) − λj ϕj (t)¯ dt
¯ ¯
j=0
Z
¯ ¯2
= ¯y (t) − ΛT Φ (t)¯ dt
Z
¡ ¢¡ ¢?
= y (t) − ΛT Φ (t) y (t) − ΛT Φ (t) dt
Z
¡ ¢¡ ¢
= y (t) − ΛT Φ (t) y ? (t) − ΛT ? Φ? (t) dt
Z Z Z Z
= y (t) y (t) dt − y (t) Λ Φ (t) dt − y (t) Λ Φ (t) dt + ΛT Φ (t) ΦT ? (t) Λ? dt
? ? T T? ?

La minimisation de l’erreur quadratique est obtenue pour :


¯
∂J ¯¯
= 0 ∀j ∈ {0, N }
∂λj ¯ opt
λj =λj

Z Z Z X N Z XN
∂J ? ? ? ?
= − y (t) ϕj (t) dt − y (t) ϕj (t) dt + λm ϕj (t) ϕm (t) dt + λk ϕk (t) ϕ?j (t) dt
∂λj m=0 k=0
à N ! à N !?
X X
= λk hϕk , ϕj i − hy, ϕj i + λm hϕm , ϕj i − hy, ϕj i
k=0 m=0
= (λj βj − hy, ϕj i) + (λj βj − hy, ϕj i)?
1
⇒ λopt
j = hy, ϕj i
βj
92 CORRECTIONS DES TRAVAUX DIRIGÉS

4.6.2 Systèmes linéaires


Exercice 4.6 – Quelle est la condition pour que le système soit causal ?

h (t) = 0 pour t < 0


⇒0<τ <t

– Est-il stable ?
Z
|h (t) |dt < +∞
Z +∞
⇒2 exp (−t + τ ) dt
τ
Z +∞
=2 exp (−v) dv
0
=2

– On applique le principe de linéarité des systèmes. Le signal d’excitation étant une composition
linéaire de signaux élémentaires (impulsions de Dirac et échelons) nous pouvons calculer les
réponses élémentaires à chacune des sollicitations. Seule la réponse à l’échelon mérite notre atten-
tion. Simplifions nous le problème en remarquant que la réponse impulsionnelle h est le résultat
de l’application d’un retard sur une réponse h0 et que le produit de convolution est associatif et
commutatif :

h (t) = h0 (t − 2)
= (h0 ? δ2 ) (t)
⇒ h0 (t) = exp (−t) u (t)
(h ? u) (t) = (h0 ? δ2 ? u) (t)
= (δ2 ? (h0 ? u)) (t)
Z
0
(h ? u) (t) , h (v) u (t − v) dv

Or u (t − v) 6= 0 pour v ≤ t
Z t
= h (v) dv
−∞
Z t
=2 exp (−v) dv
−∞
= 2 (1 − exp (−t)) u (t)
⇒ (h ? u) (t) = 2 (1 − exp (−t + 2)) u (t − 2)
= 2u (t − 2) − h (t)

Si on applique un échelon retardé de ν la réponse sera alors :

(h ? uν ) (t) = 2u (t − 2 − ν) − h (t − ν)
x (t) = δ (t + 1) + δ (t) + u (t − 4) − u (t − 7)
y (t) = h (t + 1) + h (t) + (2u (t − 6) − h (t − 4)) − (2u (t − 9) − h (t − 7))

Exercice 4.7 Soit h un système dont la réponse impulsionnelle est :h (t) = Ku (t) , K ∈ R∗ .
4.6. THÉORIE DU SIGNAL 93

– Le système est-il causal ? OUI


– Est-il stable ? NON
On asservit le système précédant en introduisant la fonction de transfert B (p) = β de la façon
suivante :
– Le système asservi est-il causal ? OUI
– Est-il stable ? OUI
Exercice 4.8 Soit le signal x dont la Tf est X (f ) = X0 ΠB (f ), est modulé en amplitude par une
porteuse y (t) = A0 sin (2πf0 t).
– Calculer et représenter graphiquement la densité spectrale de puissance ( dsp) des trois signaux
x, y, z = xy.

La densité spectrale de puissance est par définition égale à :


Z
Γx (f ) = γx (τ ) exp (−j2πf τ ) dτ

= |X (f )|2

|X (f )|2 = X02 ΠB (f ) c’était donné


A2
|Y (f )|2 = 0 (δ (f − f0 ) + δ (f + f0 ))
4
2 2
A X
|Z (f )|2 = 0 0 (ΠB (f − f0 ) + ΠB (f + f0 ))
4
Exercice 4.9 Soit x (t) = AΠτ (t),
– calculer le produit de convolution :

Λ (t) = (x ? x) (t)
= A2 (τ − |t|) Π2τ (t)

Le produit de convolution d’une porte d’ouverture τ fournit un signal triangulaire d’ouverture 2τ .


Plus généralement, si convolue un signal de durée T1 par un signal de durée T2 alors le signal
résultat aura une durée T1 + T2 .
– On convolue le signal Λ en utilisant un peigne de Dirac de période T .
Le peigne de Dirac est une somme infinie d’impulsions de Dirac séparées par la durée T . Le
résultat sera par conséquent la somme infinie des motifs Λ décalés de T .
X
Λ? (t) = Λ (t − kT )
k

La figure (4.5) illustre les différents cas demandés. La partie basse des tracés (b,c,d) montre la
superposition des motifs élémentaires, la partie haute indique le résultat final. On constate que si
la valeur de la période est inférieure à deux fois la longueur du motif on observe un recouvrement
temporel.
Exercice 4.10 Soit le signal x (t) = A cos (2πf0 t) que l’on tronque avec la fonction porte ΠT (t)

xT (t) = x (t) ΠT (t)


AT
|XT (f ) | = |sinc (πT (f − f0 )) − sinc (πT (f + f0 )) |
2
94 CORRECTIONS DES TRAVAUX DIRIGÉS

1
1

0.5
0.8

0.6 0

Amplitude

Amplitude
0.4 1

0.2
0.5

0
0

−4 −3 −2 −1 0 1 2 3 4 −4 −3 −2 −1 0 1 2 3 4
Temps Temps

(a) Motif original. (b) Période T = 1.


1 1

0.5 0.5

0 0
Amplitude

Amplitude
1 1

0.5 0.5

0 0

−4 −3 −2 −1 0 1 2 3 4 −4 −3 −2 −1 0 1 2 3 4
Temps Temps

(c) Période T = 2. (d) Période T = 3.

Fig. 4.5 – Périodisation de motif par application du peigne de Dirac.

4.6.3 Analyse non paramétrique, signaux déterministes.


Exercice 4.11 Un tapis roulant convoie des boı̂tes rectangulaires à une vitesse V d’un point A vers
un point B distant d’une mesure D. Un capteur optique binaire placé en A délivre un signal xA (t)
et un autre identique placé en B fournit un signal xB (t). Montrer qu’en calculant l’intercorrélation
des deux signaux de mesures nous pouvons estimer le temps de transit sur le tapis et par la même,
contrôler sa vitesse V (on supposera que la vitesse reste constante pendant le trajet d’une boı̂te).
µ ¶
L
xA (t) = ΠL t − tA −
2
µ ¶
L
xB (t) = ΠL t − tB −
2
Z µ ¶ µ ¶
L L
γAB (t, tA , tB ) = ΠL t − tA − ΠL t − tB − dt
2 2
Z
= ΠL (t) ΠL (t − tB + tA ) dt

= γAB (tB − tA )
= γAB (τ )

La fonction de corrélation peut être exprimée en fonction de la différence de temps de passage tB − tA


ce qui nous permet d’effectuer des mesures indépendante de l’origine du temps.

En effet, s’affranchir du temps absolu nous permet de nous intéresser uniquement au temps de transit.
Dans le cas contraire il nous aurait fallu mémoriser les instants de passages de chaque boı̂te véhiculée.
Il ne faut pas oublier que notre étude ce place dans un contexte idéal puisque nous avons considérer
4.6. THÉORIE DU SIGNAL 95

1.2 1.2

1 1

0.8 0.8

0.6 0.6

0.4 0.4

0.2 0.2

0 0

−0.2 −0.2
0 10 20 30 40 50 60 70 80 90 0 20 40 60 80 100 120
Temps Temps

Signal mesuré en A. Signal mesuré en B.


18

16 16

14
14

12
12

10
10

8
8
6

6
4

4
2

2
0

−2 0
−150 −100 −50 0 50 100 150 0 20 40 60 80 100
Temps relatif Temps relatif

Fonction de corrélation. τ > 0.

Fig. 4.6 – Bleu : sans bruit, Rouge : avec bruit.

qu’un seul paquet est transporté à chaque fois et que les mesures sont effectuées sans bruit. Dans la
réalité la mesure de l’instant de passage devient difficile à partir des signaux xA et xB en raison du
bruit et la présence de plusieurs paquets simultanément sur le tapis comme cela est illustré en Fig.
4.6. On peut aussi remarque que la fonction de corrélation nous a permis d’atténuer l’influence du
bruit.

L’observation de la fonction de corrélation nous montre que la position du maximum correspond au


temps de transit, ce qui nous permet de déterminer la vitesse du tapis.
D
⇒v=
argτmax max γAB (τ )

Exercice 4.12 Une source ponctuelle émet un signal s (t) = S0 sin (2πf0 t + φ0 ). Cette source est à
une position fixe inconnue que nous souhaitons déterminer. Nous avons disposé deux antennes A et
B pour capter le signal émis. Montrer que la fonction de corrélation permet de résoudre ce problème
de localisation. (On posera que la vitesse v de propagation dans le milieu est constante).
µ ¶
das
xA (t) = s t +
v
µ ¶
dsb
xB (t) = s t +
v
µ ¶ µ ¶
das dsb dsb − das
γAB t, , = γAB
v v v
D = dsb + dsa
= (1 − ε) D + εD (4.13)
⇒ dsb − das = (1 − 2ε) D
96 CORRECTIONS DES TRAVAUX DIRIGÉS

1
0.8

0.8
0.6
0.6

0.4
0.4

0.2 0.2

0
0

−0.2
−0.2
−0.4

−0.4
−0.6

−0.8 −0.6

−1
0 1 2 3 4 5 6 7 8 −0.8
Temps −2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5
Temps relatif

xA (t), xB (t) Fonction de corrélation.

Fig. 4.7 – Localisation d’un source ponctuelle.

La figure 4.7 nous montre le résultat de la corrélation pour une fréquence f0 = 0, 2Hz et un décalage
de 1s. Le signal de référence est xA , la position du maximum nous permet de retrouver la valeur du
temps de retard τmax . Le positionnement relatif ε vaut alors :

µ ¶
1 τmax V
ε= 1−
2 D

Exercice 4.13 Calculer la transformée de Fourier d’une fonction porte Π d’ouverture T . Calculer
le produit de convolution et la fonction d’autocorrélation de cette fonction par elle-même. Que vaut
la tf du signal convolué ?

Tf [ΠT (t)] = T.sinc (πf T )


Z
(ΠT ? ΠT ) (t) , ΠT (v) ΠT (t − v) dv

= T. (T − |t|) .Π2T (t)


⇒ Tf [(ΠT ? ΠT ) (t)] = T 2 .sinc2 (πf T )
Z
γΠT (τ ) , ΠT (v) ΠT (t + v) dv
Z
= ΠT (−u) ΠT (t − u) du
Z
= ΠT (u) ΠT (t − u) du

= (ΠT ? ΠT ) (t)

¡ ¢
Exercice 4.14 Soit le signal x (t) = u (t) exp − Tt , on souhaite appliquer une analyse spectrale sur
un enregistrement y (t) de ce signal de durée L. Calculer les tf de x et y. Quelle relation doit vérifier
la longueur moyenne de l’enregistrement L et T pour que l’erreur relative commise en confondant
4.6. THÉORIE DU SIGNAL 97

Y (f ) et X (f ) soit inférieure à 1 %.

T
X (f ) =
1 + 2jπf T
µ ¶
L
y (t) = x (t) .ΠL t −
2
µ µ ¶ ¶
L
Y (f ) = X (f ) 1 − exp − exp (−j2πf L)
T
Y (f ) − X (f )
∆=| |
X (f )
µ ¶
L
= exp −
T
⇒ L ≥ 5T

Exercice 4.15 Déterminer les temps moyens, les fréquences moyennes, les durées et les bandes
utiles des signaux suivants :
– x1 (t) = ΠT (t − τ ),
– x2 (t) = u (t − τ ) . exp (−a (t − τ )) , a > 0,
R 4
– x3 (t) = ΛT (t) (on admettra que sinu2(u) du = π4 ),
– x4 (t) = a exp (λt2 ) , λ < 0.

Ex tmoyen ∆t fmoyen ∆f
T
x1 T τ √
2 3
0 +∞
1 1+2aτ
x2 2a 4a2
0 +∞
T3 T
x3 0 √ 0
p
12 2 10
x4 a 2
− πλ 0 0
98 CORRECTIONS DES TRAVAUX DIRIGÉS

4.6.4 Signaux aléatoires


Exercice 4.16 On considère le signal
x (t) = s (t) + b (t)
s (t) = A sin (2πf0 t + φ)
b (t) est un bruit blanc gaussien, stationnaire, ergodique, centré N (0, σ 2 ). φ est une phase aléatoire
indépendante de b (t) suivant une loi uniforme sur [0, 2π].
– Le signal x est-il aléatoire ?
– Calculer la moyenne µx (t) de x (t). Le signal est-il stationnaire ?
µx (t) = E {s (t)} + E {b (t)}
Z 2π
1
= s (t) ds + 0
0 2π
=0
⇒ stationnaire à l’ordre 1.
– Calculer l’autocorrélation γx (τ ) de x (t).
γX (t1 , t2 ) , E {X (t1 ) X ? (t2 )}
= E {S (t1 ) S ? (t2 )} + E {S (t1 ) B ? (t2 )} + E {S (t1 ) B ? (t2 )} + E {B (t1 ) B ? (t2 )}
= E {S (t1 ) S ? (t2 )} + E {B (t1 ) B ? (t2 )}
A2
= cos (2πf0 (t2 − t1 )) + γB (t2 − t1 )
2
⇒ stationnaire à l’ordre 2.
– Donner l’expression de la fonction de corrélation pour un signal déterministe de puissance moyenne
finie. Z +T
1
Γx (τ ) , lim x (t) x? (t − τ ) dt
T →+∞ 2T −T

– Donner l’autocorrélation déterministe Γx (τ ) de x (t).


Z +T Z +T
1 ? 1
Γx (τ ) = lim s (t) s (t − τ ) dt + lim b (t) b? (t − τ ) dt
T →+∞ 2T −T T →+∞ 2T −T

– Montrer que la moyenne statistique de l’autocorrélation déterministe est identique à la fonction de


corrélation γx (τ ).
A2
Γx (τ ) = cos (2πf0 (τ )) + γb (τ )

Exercice 4.17 Soit x (t) un bruit blanc stationnaire de paramètres N (µx , σx2 ) que l’on filtre par un
système déterministe de réponse impulsionnelle h (t) et de transformée de Fourier H (f ).
– Calculer la moyenne µy du signal de sortie y.
y (t) = (x ? h) (t)
Z
, h (v) x (v − t) dv
Z
E {y (t)} = E {x (v − t)} h (v) dv
Z
µy = µx h (v) dv

= µx H (0)
4.6. THÉORIE DU SIGNAL 99

– Calculer σy2 .
Exercice 4.18 Soit l’estimateur de la fonction de corrélation suivant :
Z +∞
γ̂xy (τ ) = K (τ ) xw (t) yw? (t − τ ) dt
−∞

où fw est la fonction f multipliée par la fenêtre d’observation w (w (t) = ΠT (t)). K est une fonction
de pondération.
Nous allons étudier le biais de cet estimateur pour deux pondérations différentes. L’une d’entre elles
sera :
1
K1 (τ ) =
T
– Exprimer la moyenne statistique de l’estimateur.
Z +∞
E {γ̂xy (τ )} = K (τ ) E {xw (t) yw? (t − τ )} dt
−∞
Z +∞
= K (τ ) E {x (t) y ? (t − τ )} ΠT (t) Π?T (t − τ ) dt
−∞
Z +∞
= K (τ ) γxy (τ ) ΠT (t) Π?T (t − τ ) dt
−∞
= K (τ ) γxy (τ ) Λ2T (τ )
Λ2T (τ ) = (T − |τ |) Π2T (τ )

– Déterminer le biais pour K1 (τ ).

Bγ̂xy , γxy − E {γ̂xy }


µ ¶
1
= γxy (τ ) 1 − Λ2T (τ )
T

On voit que sur l’intervalle [−T, +T ] l’estimateur est biasé. En dehors de cet intervalle on ne peut
rien dire.
– Comment choisir K2 (τ ) pour que l’estimation soit sans biais ?
¯
Bγ̂xy ¯K=K2 = 0
(Π2T (τ ) − T K2 (τ ) Λ2T (τ )) = 0
1
⇒ K2 (τ ) =
Λ2T (τ )

– Calculer la densité spectrale de puissance et conclure sur les deux estimateurs. En calculant la
Tf pour les deux estimateurs on s’aperçoit que seul l’estimateur de la corrélation biaisé permet
d’estimer correctement la Dsp. Effet, il suffit de se souvenir qu’une densité spectrale de puissance
est ≥ 0.
100 CORRECTIONS DES TRAVAUX DIRIGÉS

4.7 Traitement du Signal

4.7.1 Échantillonnage et filtrage


4.7.1.1 Échantillonnage parfait

1. Exprimer Xae (f ), la transformée de Fourier de xae (t), en fonction de Xa (f ).


Le signal échantillonné est obtenu en faisant le produit entre le signal analogique xa et un
peigne de Dirac de période Te = F1e .

xae (t) = xa (t) qqTe (t)


Xae (f ) = Fe (Xa ? qqFe ) (f )
Z
= Fe qqFe (ν) Xa (f − ν) dν
Z X
= Fe δ (ν − nFe ) Xa (f − ν) dν
n
XZ
= Fe δ (ν − nFe ) Xa (f − ν) dν
n
X
= Fe Xa (f − nFe )
n

On obtient une fonction périodique de période Fe .

2. Représenter graphiquement Xae (f ) sur l’intervalle [−30F . . . + 30F ].


Le support de Xa (f ) étant inférieur à Fe , nous respectons le théorème de Shannon. Nous
sommes dans le cas d’un sur-échantillonnage. La figure (4.8) montre l’allure de la Tf du signal
xae (t). Nous avons superposé en rouge le peigne de Dirac sur l’intervalle demandé.

Xae(f)

AFe

f
-27F -18F -9F 0 +9F +18F +27F

Fig. 4.8 – Transformée de Fourier du signal échantillonné.

4.7.1.2 Échantillonnage réel

1. Représenter la fonction h (t) permettant d’obtenir x1 (t) à partir de xae (t).


4.7. TRAITEMENT DU SIGNAL 101

Il s’agit d’une porte rectangulaire retardée de la moitié de sa largeur que nous notons θ.

h(t)
1
µ ¶
θ
h (t) = Πθ t −
2
H (f ) = θ sin c (πf θ) e−jπf θ
t
0 θ
Allure de la fonction de blocage h (t).

Te
2. Représenter le module de la transformée de Fourier X1 (f ) pour la valeur θ = 3
.

x1 (t) = (xae ? h) (t)


X1 (f ) = Xae (f ) H (f )
|X1 (f )| = |Xae (f )| × |H (f )|
¯ µ ¶¯
1 ¯ f ¯
|X1 (f )|θ= 1 = ¯
|Xae (f )| × ¯sin c π ¯
3Fe 3Fe 27F ¯

|H(f)|
|H(f)|

|X (f)|
2
|X1(f)|

f
f
-27F -18F -9F 0 +9F +18F +27F -27F -18F -9F 0 +9F +18F +27F

θ = T3e θ = Te

Fig. 4.9 – Allures des réponses fréquentielles.

3. Même question pour θ = Te (cas d’un échantillonneur bloqueur).

¯ µ ¶¯
1 ¯ f ¯
|X2 (f )| = |X1 (f )|θ= = |Xae (f )| × ¯¯sin c π ¯
9F ¯
1
Fe Fe

Voir Fig. 4.9 pour l’allure fréquentielle.


4. Représenter la fonction v (t) permettant d’obtenir x2 (t) à partir de xa (t).
102 CORRECTIONS DES TRAVAUX DIRIGÉS

On remarque que la fonction v (t) est la convolution de h (t)


avec un peigne de Dirac de période Te . v(t)
1

X
v (t) = h (t − nTe )
t
n 0 θ Te

Échantillonnage par fonction périodique.


= (h ? qqTe ) (t)

Te
5. Représenter le module de la transformée de Fourier V (f ) pour la valeur θ = 3
.

V (f ) = Fe H (f ) qqFe (f )
¯ µ ¶¯
1 ¯¯ f ¯
¯ qqFe (f )
|V (f )|θ= Te = ¯sin c π
3 3 27F ¯
¯ µ ¶¯
1 X ¯¯ kπ ¯¯
= ¯ sin c δ (f − kFe )
3 k
3 ¯

|H(f)|

|V (f)|

f
-27F -18F -9F 0 +9F +18F +27F

Fig. 4.10 – Tf de la fonction périodique v (t).

6. Reprendre les question 2 à 4 pour le signal x2 (t).

4.7.1.3 Filtres non invariants

On définit xn = x (nTe ).
On fait passer la séquence xn dans un filtre sur-échantillonneur2 E de sortie wn défini par la relation
w3n = xn et wn = 0 si n n’est pas multiple de 3.

1. Ce filtre est-il stable, linéaire, invariant par translation ?

– stable,
– linéaire,
– variant par translation,
– non-causal.
2
appelé aussi interpolateur
4.7. TRAITEMENT DU SIGNAL 103

2. Représenter W (ν) la transformée de Fourier de wn pour ν ∈ [0 . . . 1].

X
W (z) = wn z −n
n
X
= w3p z −3p
p
X
= xp z −3p
p
¡ ¢
= X z3
W (z)|z=ej2πν = X (3ν)

On constate que le spectre original a subi une compression en fréquence.


3. Ce filtre est-il stable, linéaire, invariant par translation ?
(a) Stabilité
On le vérifie en utilisant le principe entrée bornée sortie bornée

xn = an , |a| < 1 et n ≥ 0
X+∞
⇒ |an | < +∞
n=0
yn = x3n
= a3n
X+∞
⇒ |yn |
n=0
+∞
X ¯ 3n ¯
= ¯a ¯ < +∞
n=0

(b) Linéarité
On montre qu’une composition linéaire de signaux d’entrée fournit une composition linéaire
des sorties élémentaires.

x [n] = α x1 [n] + β x2 [n]


y [n] = x [3n]
= α x1 [3n] + β x2 [3n]
= α y1 [n] + β y2 [n]

(c) Invariance par translation

x1 [n] = x [n − 1]
y1 [n] = x1 [3n]
y1 = {x3 , x6 , x9 , . . .}
y2 [n − 1] =
104 CORRECTIONS DES TRAVAUX DIRIGÉS

4. Représenter Y (ν) la transformée de Fourier de yn pour ν ∈ [0 . . . 1].


Le signal yn est obtenu par sous échantillonnage d’un facteur 3 :

y [n] = x [n] qq3 [n]


X
= x [n] δ [n − 3k]
k

La transformée de Fourier s’écrit comme le produit de convolution des transformées


µ ¶
1
Y (ν) = X ? qq 1 (ν)
3 3

2 µ ¶
1X k
= X ν−
3 k=0 3

On constate que le spectre original a subi une dilatation en fréquence ainsi qu’une périodisation
d’un facteur 31 .

4.7.1.4 Sous-échantillonnage
1. En appliquant le théorème de Shannon, trouver le nombre minimal d’échantillons à trans-
mettre par seconde.
Considérons une modulation simple :

y (t) = xa (t) sin (2πf0 t)


1
Sachant que la Tf de sin (2πf0 t) est 2j
(δ (f − f0 ) − δ (f + f0 )), Y (f ) en module vaut :

|Y (f )| = |Xa (f − f0 )| + |Xa (f + f0 )|

|Y (f) |
|X a(f+f0 )| A |X a (f-f0 )|

f
-f0 f0

+F-f0 +F+f0
-F-f0 -F+f0

Fig. 4.11 – Allure du spectre du signal modulé.

Une représentation de ce spectre est donné à la Fig. 4.11.

La fréquence maximale Fmax est égale à f0 + F mais, on peut remarquer que le signal modulé
est à bandes discontinues ([−F − f0 , −F + f0 ] ∪ [F − f0 , F + f0 ]).

L’application du théorème de Shannon nous impose de choisir une fréquence d’échantillonnage


Feth telle que :

Feth ≥ 2 (f0 + F ) = 230 kHz


4.7. TRAITEMENT DU SIGNAL 105

|Y (f) |
|X a(f+f0 )| A |X a (f-f0 )|

f
-f0 f0
Fe
Fig. 4.12 – Allure du spectre du signal échantillonné.

2. On échantillonne en fait le signal modulé en amplitude avec la fréquence Fe = 40 kHz.


(a) Dessiner l’allure du spectre du signal échantillonné parfait entre 0 et 120 kHz.
(b) Qu’obtient-on en filtrant ce signal échantillonné parfait avec un filtre dont la bande pas-
sante s’étend de 105 à 115 kHz ?
On récupère exactement le signal original modulé.
3. Qu’obtiendrait-on en filtrant le signal échantillonné parfait avec un filtre cardinal de fréquence
de coupure 20 kHz ?
Le filtre cardinal passe-bas permettrait de récupérer un signal dont la modulation résiduelle
serait de 10 kHz. On peut noter que l’ordre n’est pas conservé puisque le motif gauche (centré
sur −10 kHz ) correspond au motif initialement à droite (centré sur 110 kHz) et réciproquement.

filtre A
cardinal

f
Fe

Fig. 4.13 – Intervalle du spectre conservé par le filtre cardinal.

4. Conclure sur l’intérêt de cette méthode. Discuter les problèmes liés aux imperfections de
l’échantillonnage (stabilité de la fréquence d’échantillonnage).
Il est possible dans le cas où les spectre est à bandes disjointes d’effectuer un sous échantillonnage
sans perte d’information comme nous l’avons montré précédemment.
Le système est sensible au variation des fréquences porteuse et d’échantillonnage, puisque la
translation spectrale du motif est obtenue par ¿ soustraction À fréquentielle (f0 − kFe ).

On peut conclure que le théorème de Shannon pour être correctement utilisé impose comme
hypothèse que le spectre du signal à échantillonner soit à bandes contiguës. Si on considère le si-
gnal dont le spectre a pour support [−Fmax , −Fmin ]∪[Fmin , Fmax ], la fréquence d’échantillonnage
doit alors vérifier :
Fe ≥ 2 (Fmax − Fmin )
On retrouve l’expression habituelle dans le cas où Fmin = 0.
106 CORRECTIONS DES TRAVAUX DIRIGÉS

4.7.2 Synthèse des filtres numériques


4.7.2.1 Filtre récursif du premier ordre
1
Soit la fraction rationnelle h (z) = 1−az −1 .

Cette fonction de la variable complexe z est la transformée en Z de deux séquences, h1 [n] causale et
h2 [n] non causale.
1. Calculer h1 [n] et h2 [n] et préciser les domaines de convergence.
Déterminons tout d’abord la suite à droite :
¡ ¢−1
|z| > a =⇒ H1 (z) = 1 − az −1
= 1 + az −1 + a2 z −2 + . . .
X
= an z −n
n=0
n
=⇒ h1 [n] = a u [n]
La suite à gauche s’exprime comme :
¡ ¢−1
|z| < a =⇒ H2 (z) = −a−1 z 1 − a−1 z
¡ ¢
= −a−1 z 1 + a−1 z + a−2 z 2 + . . .
X
=− an z −n
n=0
n
=⇒ h2 [n] = −a u [−n − 1]

2. h1 [n] et h2 [n] sont les réponses impulsionnelles de deux filtres appelés respectivement F1 et
F2 . Écrire les équations aux différences de ces deux filtres.
Les deux filtres ont la même réponse impulsionnelle :

1
H (z) = −1
¡ −1
¢ 1 − az
Y (z) 1 − az = X (z)
Y (z) = X (z) + az −1 Y (z)
=⇒ y [n] = x [n] + ay [n − 1]

3. On suppose |a| < 1.


(a) Écrire l’expression de la réponse en fréquence H1 (ν) du filtre F1 .

1
H1 (ν) =
1 − ae−j2πν
1
=
1 − a cos (2πν) + ja sin (2πν)
1
|H1 (ν)|2 =
(1 − a cos (2πν))2 + a2 sin2 (2πν)
1
= 2
1 + a − 2a cos (2πν)
4.7. TRAITEMENT DU SIGNAL 107

(b) Que peut-on dire de la réponse du filtre F2 ?


Elle n’existe pas car le cercle de rayon unité n’appartient pas au domaine de convergence
de H2 (z).
4. Application numérique : a = 0.5.
£ ¤
(a) Tracer l’allure de la réponse en fréquence H1 (ν) sur l’intervalle − 12 , + 12 .

ν
-0.4 -0.2 0 0.2 0.4

Fig. 4.14 – Allure de la réponse fréquentielle de H1 (ν)

(b) Représenter le diagramme des pôles et des zéros du filtre F1 .

0.8
z
0.6

0.4

0.2
Partie Imaginaire

0
a
-0.2

-0.4

-0.6

-0.8

-1

-1 -0.5 0 0.5 1
Partie Réelle

Fig. 4.15 – Diagramme des pôles et des zéros de H1 (z)

(c) Quelle fonction réalise-t-il ?


(passe-bas,. . .).

4.7.2.2 Synthèse des filtres RII par invariance d’une réponse temporelle
1
1. Soit le filtre analogique de fonction de transfert : ha (p) = 1+τ p
où τ = 0.5 s.
Calculer sa réponse impulsionnelle ha (t) et sa réponse indicielle va (t).
1 −t
ha (t) = e τ u (t)
τ
³ ´
t
va (t) = 1 − e− τ u (t)

2. On échantillonne h (t) avec une période Te = τ. log (2). On obtient une séquence h (nTe ).
108 CORRECTIONS DES TRAVAUX DIRIGÉS

(a) Écrire la fonction de transfert H1 (z) d’un filtre échantillonné dont la réponse impulsion-
nelle h1 [n] est égale à ha (nTe ). (Cette approche est appelée méthode de l’invariance
impulsionnelle).

1 − nTe
h1 [n] = e τ , n≥0
τ
1 ¡ ln(2) ¢−n
= e
τ
2−n
=
τ
1 1
H1 (z) =
τ 1 − (2z)−1

(b) Donner son équation aux différences.

Y (z) = H1 (z) X (z)


µ ¶
1 −1 1
Y (z) 1 − z = X (z)
2 τ
1 1
Y (z) = X (z) + z −1 Y (z)
τ 2
1 1
y [n] = x [n] + y [n − 1]
τ 2

(c) Calculer sa réponse indicielle v1 [n] et tracer sa réponse en fréquence.

V1 (z) = H1 (z) U (z) , |z| > 1 z = ej2πf =⇒


1 1 1 1 1
= H1 (f ) =
−1
τ 1 − (2z) 1 − z −1 τ 1 − e−j2πf
2
µ ¶
1 2 1 1 1
= − =
τ 1 − z −1 1 − (2z)−1 τ (1 − 0.5 cos (2πf )) + j0.5 sin (2πf )
1¡ ¢ 1 1
v1 [n] = 2 − 2−n u [n] |H1 (f )|2 =
τ (1 − 0.5 cos (2πf ))2 + (0.5 sin (2πf ))2
¡τ ¢
va [n] = 1 − 2−n u [n]

(a) Comparer à celle du filtre analogique de départ.


On constate que la réponse fréquentielle du filtre obtenue par invariance impulsionnelle
est fortement dégradé par une phénomène de recouvrement spectral (dû au choix d’une
fréquence d’échantillonnage peu élevée) ainsi qu’un facteur d’échelle lié à τ , la constante
de temps du système considéré.
3. On échantillonne v (t) avec une période Te = τ. log (2). On obtient une séquence v (nTe ).

(a) Écrire la fonction de transfert H2 (z) d’un filtre échantillonné dont la réponse indicielle
v2 [n] est égale à v (nTe ). (Cette approche est appelée méthode de l’invariance indi-
cielle).
4.7. TRAITEMENT DU SIGNAL 109

4
4
3.5
3.5
|H1 (f)|²
3
3 v1

2.5
2.5
Amplitudes

2
2

Puissance
1.5 1.5

1 1

|Ha (f)|²
0.5 va 0.5

0 0
0 1 2 3 4 5 6 7 8 9 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Indices Fréquences réduites

va etv1 |Ha |2 et |H1 |2

Fig. 4.16 – Visualisation des réponses indicielles et fréquentielles.

¡ ¢
v2 (n) = 1 − 2−n u (n)
1 1
V2 (z) = −
1−z −1
1 − (2z)−1
(2z)−1
= ¡ ¢
(1 − z −1 ) 1 − (2z)−1
(2z)−1
H2 (z) =
1 − (2z)−1

(b) Calculer sa réponse impulsionnelle h2 [n] et tracer sa réponse en fréquence.

1
h2 (n) = 2−(n−1) u (n − 1)
2
= 2−n u (n − 1)

Pour l’allure voir Fig. 4.17.


(c) Comparer à celle du filtre analogique de départ.
Au facteur d’échelle près, nous obtenons exactement la même allure. La synthèse par
invariance indicielle ne permet pas de s’affranchir du phénomène de recouvrement spectral.

4. On considère une fonction de transfert h (p) ne comportant que des pôles simples (donc qui se
met sous forme d’une somme d’éléments simples du premier ordre).

(a) Montrer que la méthode de l’invariance impulsionnelle transforme les pôles (mais pas les
zéros) selon la relation z = Φ (p) (ceci reste vrai pour des pôles multiples, pour lesquels la
démonstration est lourde).
110 CORRECTIONS DES TRAVAUX DIRIGÉS

0.9
2
0.8

0.7
1.5
0.6 |H2(f)|²

Puissance
0.5
Amplitudes

1 va
0.4
|Ha (f)|²
0.3

0.5 v2 0.2

0.1

0 0
0 1 2 3 4 5 6 7 8 9 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Indices Fréquences réduites

ha eth2 |Ha |2 et |H2 |2

Fig. 4.17 – Visualisation des réponses impulsionnelles et fréquentielles.

X αk
H (p) =
k
1 − τk p
X αk µ ¶
t
h (t) = exp − u (t)
k
τk τk
X αk µ ¶
nTe
h [n] = exp − , n≥0
k
τk τ k
X αk 1
H (z) = ³ ´
k
τk 1 − exp − Te z −1
τk

³ ´
au pôle pk = − τ1k correspond le pôle zk = exp − Tτke = exp (pk Te ).
L’invariance impulsionnelle revient à appliquer la transformation z = exp (pTe ) pour les
pôles.
p = β + jΩ −→ z = eβTe .ejΩTe

(b) Quelle est l’image de la droite p = jΩ dans le plan en z par cette transformation Φ.
On constate que si β = 0 alors la droite p = jΩ se transforme dans le plan en z en cercle
de rayon unité.
(c) Comment se transforme le demi-plan gauche du plan de Laplace dans le plan en Z ?
Le demi-plan gauche est caractérisé par une valeur de β < 0 (soit la région de stabilité
dans le domaine de Laplace). En appliquant la transformation, on observe que ce demi-
plan devient l’intérieur du cercle de rayon unité (soit le disque de stabilité dans le domaine
en z). La transformation conserve la stabilité des systèmes échantillonnés.
(d) Conclure sur l’intérêt de cette méthode de synthèse en ce qui concerne la stabilité du filtre
numérique obtenu.
Les méthodes de synthèse par invariance de réponse sont rapides à mettre en œuvre. Ces
méthodes d’échantillonnage de réponse de système à temps continu peuvent donc être
4.7. TRAITEMENT DU SIGNAL 111

intéressante puisque la stabilité est conservée. Nous allons là qu’il s’agit d’une conclusion
hâtive.
5. On désire réaliser un filtre numérique récursif du premier ordre, de type passe-bas, avec une
fréquence de coupure fc à −3 dB et une fréquence d’échantillonnage Fe . On décide pour ¡ 1 ¢ cela
d’appliquer la méthode de l’invariance indicielle sur le filtre h (p). On pose Te = τ log α avec
0 < α < 1. (α voisin de 1 correspond à un échantillonnage de v (t) à fréquence élevée, α voisin
de 0 correspond à une fréquence d’échantillonnage Fe faible). On pose νc = Ffce .

(a) Écrire la relation qui lie cos (2πν1 ) et α sous la forme cos (2πν1 ) = g (α), et tracer l’allure
de g (α).
D’après la relation du corrigé, la réponse indicielle échantillonnée vaut :

v (n) = (1 − αn ) u (n)
On en déduit :
(1 − α) z −1
H (z) =
1 − αz −1
(1 − α) e−j2πν
H (ν) =
1 − αe−j2πν
2 (1 − α)2
|H (ν)| =
|1 − αe−j2πν |2
(1 − α)2
=
1 + α2 − 2α cos (2πν)

Nous voulons une atténuation de 3 dB pour la fréquence de coupure νc :


1
|H (νc )|2 =
2
(1 − α)2
=
1 + α2 − 2α cos (2πνc )
=⇒ cos (2πνc ) = g (α)
4α − α2 − 1
=

(b) En déduire qu’il existe une limite supérieure pour le choix de la position de fc par rapport
àFe .
On sait que g (.) est bornée du fait de l’égalité avec le terme trigonométrique (cos (2πνc )).
Nous obtenons donc les deux extremas de α :

αmin = 3 − 8
½
νc = 0.5
=⇒
Fe = 0.567
τ
αmax = 1
½
νc = 0
=⇒
Fe −→ +∞
112 CORRECTIONS DES TRAVAUX DIRIGÉS

1
g (α)
0

-1
αmin

-2

α
-3 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

Fig. 4.18 – g (α)

6. Conclure sur les méthodes de synthèse par invariance, dans l’optique de fabriquer un filtre à
temps discret dont le gain satisfait à un gabarit en fréquence défini par une bande passante et
une bande atténuée.
Les méthodes de synthèse par invariance de réponse ne fournissent pas des résultats très per-
formants en terme de sélectivité. En effet, quelque soit la réponse considérée pour créer un
filtre numérique, on se retrouve inévitablement confronté au phénomène de recouvrement spec-
tral. Pour s’en réduire l’influence, il faudrait pouvoir effectuer un échantillonnage à très haute
fréquence. Ces méthodes d’échantillonnage de réponse de système à temps continu présentent
donc peu d’intérêt bien que la stabilité soit conservée.

4.7.2.3 Synthèse de filtre récursif par la transformation bilinéaire


−1 k+p
La transformation bilinéaire est définie par : p = k 1−z
1+z −1
ou z = k−p
.
1. Montrer que la transformation bilinéaire fait correspondre la droite p = jΩ et le cercle de rayon
unité z = exp (j2πν).

k+p
z=
k−p
k + jΩ
=
k − jΩ
√ ¡ ¡ ¢¢
k 2 + Ω2 exp j arctan Ωk
=√ ¡ ¡ ¢¢
k 2 + Ω2 exp −j arctan Ωk
µ µ ¶¶

= 1. exp j2 arctan
k

(a) En déduire la relation liant Ω et ν.

Ω = k tan (πν)
³ω ´
= k tan
2

(b) Montrer que si h (p) est un filtre analogique stable, H (z) obtenu par transformation
bilinéaire est aussi un filtre stable.
4.7. TRAITEMENT DU SIGNAL 113

On constate que l’axe imaginaire du domaine de Laplace se transforme en cercle de


rayon unité. Observons ce qui se produit si on considère l’expression d’un pôle stable
p = −α + jΩ avec α > 0 :
k+p
z=
k−p
k − α + jΩ
=
k + α − jΩ
s
(k − α)2 + Ω2
|z| = <1
|k + α|2 + Ω2
Le pôle stable dans le domaine de Laplace a été transformé en un point à l’intérieur du
cercle de rayon unité soit, le domaine de stabilité du domaine en Z.
2. On désire fabriquer un filtre à temps discret passe-bas, destiné à fonctionner à une fréquence
d’échantillonnage de 8 kHz. le gabarit de ce filtre est illustré Fig. 3.2.
(a) Normaliser le gabarit (c-à-d. représenter le gain en fonction de ν dans l’intervalle [0..1]).
Voir Fig. 4.19 pour le gabarit du filtre numérique normalisé.
(b) En utilisant la relation liant Ω et ν, construire le gabarit associé pour le filtre à temps
continu. On choisira une valeur de k qui donne un gabarit analogique normalisé.
Voir Fig. 4.19 pour le gabarit du filtre analogique.
Nous savons que fréquences numériques et fréquences analogiques sont liées par la rela-
tion :
Ω = k tan πν
En choisissant d’obtenir un gabarit de filtre analogique normalisé, nous nous imposons
Ωc = 1 ce qui nous permet de déterminer la valeur de k le facteur d’échelle :
1
k=
tan πνc
Nous pouvons maintenant calculer la valeur de la pulsation d’atténuation Ωa :

A (dB)

18

0 f (kHz)
0,8 1,48
ν (f/Fe)
0,1 0,185

1 Ωa

Fig. 4.19 – Allure des gabarits normalisés.

tan πνa
Ωa =
tan πνc
= 2.022
114 CORRECTIONS DES TRAVAUX DIRIGÉS

(c) Synthétiser le filtre analogique sous la forme d’un filtre de Butterworth, et en déduire
le filtre numérique recherché. (Les coefficients normalisés se trouvent dans le polycopié de
synthèse des circuits de filtrage).
La lecture de l’abaque de la famille de Butterworth nous indique un ordre de 3 :
1
H (p) =
(p + 1) (p2 + p + 1)
1
= 3 2
p + 2p + 2p + 1
L’application de la transformée bilinéaire nous fournit l’expression du filtre numérique :
3
0.0181 (1 + z −1 )
H (z) =
1 − 1.176z −1 + 1.183z −2 − 0.2781z −3
4.7. TRAITEMENT DU SIGNAL 115

4.7.3 TFD et analyse spectrale


4.7.3.1 TFD et interpolation
Soit une séquence xn de longueur N et sa Tfd sur N points notée XN [k]. On va fabriquer plusieurs
séquences de longueur 2N à partir de xn et étudier leurs Tfd.
Les démonstrations seront faites pour un ordre N quelconque. On pourra ensuite, pour aider la
compréhension des résultats, les appliquer à la séquence particulière de longueur 8 illustrée Fig.
(4.20).

1
4
0.9
3.5
0.8

0.7 3

0.6 2.5

0.5
2
0.4
1.5
0.3

0.2 1

0.1 0.5

0
0
0 1 2 3 4 5 6 7
0 1 2 3 4 5 6 7
Indices temporels Indices fréquentiels

Séquence test. Tfd de la séquence test.

Fig. 4.20 – Allures de la séquence et de sa Tfd.

1. On construit la suite yn par concaténation :


yn = xn + xn−N n ∈ [0, 2N [

Exprimer Y2N [l] la Tfd d’ordre 2N de yn en fonction de XN [k].


L’indice fréquentiel l de Y2N [l] est défini sur [0, 2N [.
2N
X −1
nl
Y2N [l] = yn e−j2π 2N
n=0
N
X −1 2N
X −1
nl nl
−j2π 2N
= xn e + xn−N e−j2π 2N
n=0 n=N
N
X −1 N
X −1
nl (p+N )l
= xn e−j2π 2N + xp e−j2π 2N

n=0 p=0
N
X −1 N
X −1
nl pl
−j2π 2N −jπk
= xn e +e xp e−j2π 2N
n=0 p=0
³ ´N
X −1 l
n2
= 1 + (−1)k xn e−j2π N

n=0
³ · ¸ ´
l k
= 1 + (−1) XN
2
½ £l¤
2XN 2 l pair
=
0 l impair
116 CORRECTIONS DES TRAVAUX DIRIGÉS

La concaténation de séquence n’apporte aucune information dans le domaine spectral puisque


les N points supplémentaires sont nuls.

8
1
7
0.9

0.8 6

0.7
5
0.6
4
0.5

3
0.4

0.3 2

0.2
1
0.1
0
0 0 5 10 15
0 5 Indices temporels 10 15 Indices fréquentiels

y2N Y2N

Fig. 4.21 – Concaténation de séquence.

2. On construit la suite vn par ajout de 0 :

½
xn n ∈ [0, N [
vn =
0 n ∈ [N, 2N [

Exprimer V2N [l] la Tfd d’ordre 2N de vn en fonction de XN [k].

2N
X −1
nl
V2N [l] = vn e−j2π 2N
n=0
N
X −1
nl
= xn e−j2π 2N
n=0
N
X −1 l
n2
−j2π
= xn e N

n=0
· ¸
l
= XN
2

L’ajout de valeurs nulles à la séquence originale nous permet d’obtenir un effet intéressant
puisque nous obtenons un spectre de longueur plus grande et que les données manquantes ont
été interpolées à partir des valeurs connues.

3. On construit la suite wn par interpolation d’ordre 0 :

½
x n2 pour n = 2m
wn = m ∈ [0, N [
0 pour n = 2m + 1
4.7. TRAITEMENT DU SIGNAL 117

1 4

0.9
3.5
0.8
3
0.7

0.6 2.5

0.5 2

0.4
1.5
0.3
1
0.2

0.1 0.5

0 0
0 5 10 15 0 5 10 15
Indices temporels Indices fréquentiels

v2N V2N

Fig. 4.22 – Technique du ¿ Zero-padding À.

Exprimer W2N [k] la Tfd d’ordre 2N de wn en fonction de XN [k].


2N
X −1
nl
W2N [l] = wn e−j2π 2N
n=0
N
X −1 N
X −1
2pl (2p+1)l
−j2π 2N
= w2p e + w2p+1 e−j2π 2N

p=0 p=0
N
X −1
pl
= xp e−j2π N
p=0

= XN [l] + XN [l − N ]

Le spectre de la seconde est composé du spectre initial concaténé.

1 4

0.9
3.5
0.8
3
0.7

2.5
0.6

0.5 2

0.4
1.5
0.3
1
0.2

0.5
0.1

0 0
0 5 10 15 0 5 10 15
Indices temporels Indices fréquentiels

w2N W2N

Fig. 4.23 – Interpolation temporelle de degré 0.

4. Comparer les résultats des questions 1 et 3, et montrer qu’ils peuvent se déduire l’un de l’autre
par dualité.
Comparer également ces résultats à ceux trouvés dans le TD sur l’échantillonnage lors de l’étude
du filtre sur-échantillonneur (exercice ¿ Filtres non invariants À, cf. 3.5.1.3).
118 CORRECTIONS DES TRAVAUX DIRIGÉS

4.7.3.2 TFD et analyse spectrale


1. On échantillonne un signal xa (t) à la fréquence Fe = 8, 192 kHz pendant un temps T . On obtient
N échantillons. Quelle doit être la valeur de T pour que le spectre calculé par Tfd calculé sur
l’ensemble des échantillons comporte une raie par Hertz.
la résolution spectrale est donnée par :
N
R=
Fe
On en déduit que pour une résolution de 1 Hz il nous faut mesurer 8192 échantillons. La durée
d’observation est déterminée par :
N
T =
Fe
soit une durée de 1 seconde.
2. Le signal xa (t) est une sinusoı̈de pure de fréquence f1 = 1 kHz et d’amplitude A = 3. On
considère l’échantillonnage idéal théorique de ce signal et on appelle x [n] la séquence sinusoı̈dale
de longueur infinie ainsi obtenue. Représenter la densité spectrale de puissance Γx (ν) de cette
séquence.

xa (t) = A sin (2πf1 t)


µ ¶
f1
x [n] = A sin 2π n
Fe
Γx (ν) = |X (ν)|2
X
X (ν) = x [n] exp (−j2πnν)
n
X µ ¶
f1
= A sin 2π n exp (−j2πnν)
n
Fe
µ µ ¶ µ ¶¶
AX f1 f1
= exp j2π n − exp −j2π n exp (−j2πnν)
2j n Fe Fe
à µ µ ¶ ¶ X µ µ ¶ ¶!
A X f1 f1
= exp −j2π ν − n − exp −j2π ν + n
2j F e F e
µ nµ ¶ µ ¶¶ n
A f1 f1
= δ ν− −δ ν+
2j Fe Fe
2
µ µ ¶ µ ¶¶
A f1 f1
Γx (ν) = δ ν− +δ ν+
4 Fe Fe

Γx (ν)


4

f
-0,5 f1 f1 +0,5
- +
Fe Fe

Fig. 4.24 – Dsp du signal xa .


4.7. TRAITEMENT DU SIGNAL 119

En réalité, après échantillonnage pendant la durée T et conversion numérique, la séquence y [n]


obtenue est de longueur finie égale à N . La Dsp est estimée par un périodogramme d’ordre N , avec
une fenêtre rectangulaire.
1. Représenter l’allure de la transformée de Fourier X (ν) de la séquence y [n]. En déduire les
raies données par le périodogramme sur un voisinage de f1 sachant que celui-ci est calculé à
l’aide d’une Tfd d’ordre N . On précisera les positions et les amplitudes exactes de ces raies.
La fenêtre rectangulaire d’observation Π est de longueur N et a pour Dsp :

Π (f ) = N 2 sin2c (πf )

On constate que l’échantillonnage fréquentielle avec un pas de 1 Hz correspond a considérer


tous les nœuds du sinus cardinal ainsi que son maximum localisé en f1 dont la valeur est égale
2
à A2 N 3 .
2. L’amplitude A restant constante, la fréquence du signal xa (t) est modifiée pour passer à f2 =
1, 0005 kHz. Représenter alors l’allure des raies données par le périodogramme sur le même
voisinage de fréquence que précédemment.
Cette modification de la fréquence du signal sinusoı̈dal a pour conséquence de localiser la
contribution de la fenêtre en 10005 Hz et non plus en 1 kHz comme l’illustre la figure 4.25.

0.8

0.6

0.4

0.2

0 996 997 998 999 1000 1001 1002 1003 1004 1005
f

Fig. 4.25 – Illustration de la Tf de la fenêtre rectangulaire d’observation localisée en f1 et f2 .

L’échantillonnage en fréquence n’a quant a lui pas changé. On conservera les amplitudes de
la Dsp aux valeurs entières de fréquences (cf. Fig. 4.25). C’est pourquoi, nous obtenons une
densité spectrale très différente comme le montre la Fig. 4.26.

Ce résultat s’explique par le fait que notre estimateur ne sait mettre en évidence que les signaux
trigonométriques de fréquence entière. Ce qui n’est pas le cas de f2 , notre estimateur va nous
fournir alors une approximation du spectre sous la contrainte de conservation de l’énergie. Aux
voisinage de 1 kHz, on constate une symétrie puisque f2 est à égale distance de f1 et f1 + 1.

3
Le facteur N intervient car nous n’avons pas utilisé une fenêtre normalisée en énergie. Il aurait fallu considérer
une fenêtre d’amplitude de √1N et non de 1.
120 CORRECTIONS DES TRAVAUX DIRIGÉS

40

20
40

-20
30
-40
Puissance (dB)

Puissance (dB)

-60
20
-80

-100
10
-120

-140

-160 0
0 500 1000 1500 2000 2500 3000 3500 4000 996 997 998 999 1000 1001 1002 1003 1004 1005
Fréquences (Hz) Fréquences (Hz)

Dsp idéale et réelle. Agrandissement au voisinage de f1 .

Fig. 4.26 – le périodogramme fournit une approximation du spectre.

Vous aimerez peut-être aussi