Vous êtes sur la page 1sur 209

Traitement du Signal 2007 / 2008

TRAITEMENT DU SIGNAL

EISTI Guy Almouzni


Traitement du Signal 0. Préambule

TRAITEMENT DU SIGNAL
Opérations - Algorithmes

Plan du cours

1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques


SIGNAUX DETERMINISTES
Convolution - Reponse Impulsionnelle. Fonction de Transfert. Déconvolution.
Corrélation : Fonction d’intercorrélation - Fonction d’autocorrélation

SIGNAUX ALEATOIRES
L’aléatoire en théorie du signal
Variables Aléatoires
VA discrètes et continues. Moment d’ordre n . Loi de probabilité conjointe de 2 VA. Indépendance de 2 VA.
Densité de probabilité. Fonction de répartition. Moyenne d’une VA. Variance d’une VA. Covariance de 2 VA.
Autocovariance (≡ variance) d’une VA. Corrélation de 2 VA. Autocorrélation d’une VA.
Estimation de la densité de probabilité
Lois de probabilité de VA usuelles
Loi de Bernouilli. Loi binomiale. Loi de Poisson. Loi uniforme. Loi normale.
Lois de Rayleigh, de Laplace, de Cauchy
Théorème central limite
Processus aléatoires - Processus aléatoires à Temps Continu et à Temps Discret
Trajectoire d’un Processus Aléatoire. Moyenne d’un Processus Aléatoire.
Fonction d’Autocovariance d’un Processus Aléatoire. Fonction de Covariance de 2 Processus Aléatoires
Stationnarité du 2nd ordre au sens large des processus aléatoires à TC et à TD
Fonction d’Autocovariance d’un Processus Aléatoire SSL. Fonction de Covariance de 2 Processus Aléatoires SSL.
Densité Spectrale de Puissance (DSP) d’un Processus Aléatoire. Bruit blanc. Ergodicité. Stationnarité et ergodicité.
Formule du filtrage
Modèles de processus aléatoires
Le processus de Wiener. Le processus AR. Le processus MA. Le processus ARMA. Le processus ARMAX.
Le processus de Box et Jenkins (BJ). Le processus Markovien et modèle d’Etat

ANNEXE

SYSTEMES STOCHASTIQUES
Transmission d’un signal aléatoire dans un système linéaire (utilisation des transformées)
Valeur moyenne de la sortie. Intercorrélation. Autocorrélation et DSP (Densité Spectrale de Puissance)
Processus générateur d’un signal aléatoire : filtres formeurs du 1er ordre
Processus générateur à Temps Discret (TD) du 1er ordre. Processus générateur à Temps Continu (TC) du 1er ordre
Processus générateurs : MA, AR, ARMA
Signal MA. Signal AR. Equations de Yule-Walker. Signal ARMA
Conclusion
ESTIMATION DE LA COVARIANCE
Méthode par ergodicité. Méthode des corrélations. Méthode des covariances
RESOLUTION DU SYSTEME D’EQUATIONS DE YULE-WALKER PAR INVERSION MATRICIELLE
ALGORITHME DE LEVINSON Résolution du système de Yule-Walker
METHODE DE BURG Résolution du système de Yule-Walker

0. Guy Almouzni
Traitement du Signal 0. Préambule

2. Synthèse du signal. Identification

Synthèse du signal
SIGNAUX DETERMINISTES
Expression analytique. Modèle. Table de look-up. Transformation mathématique inverse

SIGNAUX ALEATOIRES
Fonction modulo. Génération d’un bruit blanc de loi uniforme, de Rayleigh, de loi normale. Fonction OU exclusif

Identification
MODELES AR, MA ARMA
Processus MA d’ordre M
Relations entre coefficients du modèle et covariances
Processus AR d’ordre N
Relations entre coefficients du modèle et covariances (cas N = 1 )
Relations entre coefficients du modèle et covariances (cas N quelconque)
Equations de Yule-Walker
Processus ARMA d’ordre N − M

Remarques
Application : Estimation du spectre d’un processus AR (Analyse spectrale - Estimation)
Relations entre coefficients du modèle et covariances estimées (cas N = 1 )
Relations entre coefficients du modèle et covariances estimées (cas N quelconque)
Estimation du spectre d’un processus AR méthode haute résolution

3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Caractérisation
TRANSFORMATIONS FREQUENTIELLES
Transformation de Fourier Discrète (TFD)
Spectrogramme - Transformation de Fourier à Court Terme (TFCT)
Transformation de Wigner-Ville (ondelettes)
Transformation de Hilbert

ANALYSE CEPSTRALE
Cepstre de la réponse d’un filtre linéaire
Application : Traitement de la parole
Coefficients cepstraux

ANALYSE LPC (Codage Prédiction Linéaire)


Méthode d’autocorrélation
Méthode de covariance

0. 1
Traitement du Signal 0. Préambule

Estimation
ANALYSE SPECTRALE

ELEMENTS DE LA THEORIE CLASSIQUE DE L’ESTIMATION


Biais et variance d’un estimateur
Cas monovariable
Consistance d’un estimateur

THEORIE CLASSIQUE DE L’ESTIMATION SPECTRALE

Estimateurs de corrélation
Estimation de l’autocorrélation
Estimation de l’intercorrélation
Estimateur de DSP : méthode du périodogramme
Périodogramme
Périodogramme moyenné
Estimateur de DSP : méthode du corrélogramme
Estimation de la DSP à partir du modèle AR du signal (Théorie moderne de l’estimation spectrale basée sur les processus générateurs de signal)
Equations de Yule-Walker

4. Conditionnement - Filtrage. Détection


CONDITIONNEMENT - FILTRAGE

Prétraitements (Mise en forme, amplification, fenêtrage, filtrage ...)


Préaccentuation et désaccentuation (Traitement de la parole)

DETECTION

Filtrage adapté
Position du problème. Remarques. Normalisation.
Solution. Cas particulier important. Remarque

5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
INTRODUCTION
Objectif. Moyens. Modélisation mathématique. Données M − aires . Constellation. Diagramme en oeil ...

CODAGE - DECODAGE (MODULATION - DEMODULATION)


Modulations analogiques
Modulation par multiplication. Modulation d'Amplitude (AM). Modulation Bande Latérale Unique (BLU). Modulation
de Fréquence (FM). Modulation de Phase (PM)

Modulations numériques
Les modulations d'impulsions (amplitude, durée, position, densité). La modulation d'impulsions codées (MIC). La
Modulation ∆. Transmission du signal numérique : Bande de base, modulation (ASK, FSK, PSK, DPSK)
Codes détecteurs et correcteurs d'erreurs (bit de parité, codes à parités entrelacées, codes de Hamming, codes
cycliques, codes continus

0. 2
Traitement du Signal 0. Préambule

Filtrage optimal au sens des moindres carrés


EGALISATION
Egalisation
Equations de Wiener-Hopf

EXTRACTION DE SIGNAL IMMERGE DANS DU BRUIT


Principe d’orthogonalité
Equations de Wiener-Hopf

FILTRAGE ADAPTATIF
Filtre adaptatif de Widrow

6. Prédiction

Prédiction
Lissage - Filtrage - Prédiction

PREDICTION LINEAIRE
Variance minimale
Equations de Yule-Walker
Remarque

7. Filtrage optimal
MOINDRES CARRES
Moindres carrés direct Algorithme LS (Least Squares)
Exemple
Moindres carrés récursif Algorithme RLS (Recursive Least Squares)
Problème : Identification d’un canal de communication
Moindres carrés moyens Algorithme LMS (Least Mean Squares)

7. ANNEXE

FILTRAGE DE WIENER
Algorithme du gradient
Moindres carrés moyens Algorithme LMS (Least Mean Squares)

FILTRAGE DE KALMAN
Exemple
Filtre de Kalman récursif

0. 3
Traitement du Signal 0. Préambule

ANNEXE

8 Annexe. Décision (Classification, Reconnaissance des Formes)


CAS BI-CLASSE

Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe sont connues
Fonction de coût R
Test du rapport de vraisemblance
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe ne sont pas
connues
Règle du minimax
Courbe COR

CAS BI-CLASSE AVEC NON-DECISION

Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe sont connues
Règle de décision
Test du rapport de vraisemblance
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe ne sont pas
connues

0. 4
Traitement du Signal 0. Préambule

Bibliographie

[1] F. Auger « Introduction à la théorie du signal et de l’information » Technip


[2] G. Blanchet / M. Charbit « Traitement numérique du signal : simulation sous Matlab » Hermès
[3] M. Bouvet « Traitement des signaux pour les systèmes sonar » Masson
[4] J.M. Brossier « Signal et communication numérique » Hermès
[5] M. Charbit « Eléments de théorie du signal : aspects aléatoires » Ellipses
[6] P. Duvaut « Traitement numérique du signal » Hermès
[7] M. Gevers / L. Vandendorpe « Processus stochastisques : estimation et prédiction » UCL
[8] M. Kunt « Traitement Numérique des Signaux / Atelier de TNS » Dunod / PPR
[9] Y. Thomas « Signaux & systèmes linéaires : cours / exercices » Masson
[10] F. Truchetet « Traitement linéaire du signal numérique » Hermès

UCL : Université Catholique de Louvain


PPR : Presses Polytechniques Romandes

__________

0. 5
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques


I. SIGNAUX DETERMINISTES
CONVOLUTION - REPONSE IMPULSIONNELLE (RI)
Un système linéaire stationnaire (SLS) est caractérisé par sa RI: TC: h(t ) TD: h(n)

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


SLS SLS

La réponse y d’un SLS d’entrée x s’écrit : TC: y (t ) = h(t ) * x(t ) TD: y ( n) = h( n) * x ( n)


avec la relation de convolution * :
∞ ∞
TC: y (t ) =
∫ h(τ ) x(t − τ )dτ TD: y ( n) = ∑ h( k ) x ( n − k )
k = −∞
−∞

FONCTION DE TRANSFERT (FT) (≡ Gain complexe)


La FT d’un système caractérise, de façon duale à la RI, un SLS: TC: H (ν ) TD: H (z )
X (ν ) H (ν ) Y (ν ) X (z ) H (z ) Y (z )
SLS SLS

La réponse Y d’un SLS d’entrée X s’écrit : TC: Y (ν ) = H (ν ) X (ν ) TD: Y ( z ) = H ( z ) X ( z )


avec la relation où u désigne indifféremment un signal x , y ou h :
∞ ∞
TC: U (ν ) = TF [u (t )] = u (t )e −i 2π ν t dt TD: U ( z ) = TZ [u (n)] = ∑ u ( n) z

−n

−∞ n = −∞

DECONVOLUTION : Détermination de la Réponse Impulsionnelle


u(k) h(k) y(k) = h(k)*u(k)

1 ⎡ k

h( k ) = y ( k ) ⊗ u ( k ) ⊗ : déconvolution : h( k ) =
u(0) ⎣⎢ y ( k ) − ∑
i =1
h( k − i ). u(i ) ⎥

avec : u (k ) et h(k ) causales et u (0) ≠ 0 .

CORRELATION
Fonction d’intercorrélation ϕ xy (t ) (TC) ou ϕ xy (n) (TD) de 2 signaux x ( t ) , y ( t ) (TC) ou x ( n) , y ( n) (TD) :
∞ ∞
(TC) ϕ xy (t ) = ∫ x(τ ) y (t + τ )dτ (TD) ϕ xy (n) = ∑ x(k ) y (n + k )
k = −∞
−∞

(TC) ϕ xy (t ) = ϕ yx (−t ) anticommutativité (TD) ϕ xy (n) = ϕ yx (−n)


(TC) ϕ xy (t ) = x(−t ) ∗ y (t ) (TD) ϕ xy (n) = x(−n) ∗ y (n)
Fonction d’autocorrélation ϕ xx (t ) (TC) ou ϕ xx (n) (TD) d’un signal x ( t ) (TC) ou x ( n) (TD) :
∞ ∞
(TC) ϕ xx (t ) = ∫ x(τ ) x(t + τ )dτ (TD) ϕ xx (n) = ∑ x(k ) x(n + k )
k = −∞
−∞
(TC) ϕ xx (t ) maximale pour t = 0 (TD) ϕ xx (n) maximale pour n = 0
(TC) ϕ xx ( −t ) = ϕ xx (t ) ( ϕ xx (t ) paire) (TD) ϕ xx ( − n) = ϕ xx ( n) ( ϕ xx (n) paire)
(TC) ϕ xx (t ) = x(−t ) ∗ x(t ) (TD) ϕ xx (n) = x( −n) ∗ x( n)

1. 1
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

ENERGIE - PUISSANCE - RAPPORT SIGNAL SUR BRUIT


∆ ∞ ∆ ∞
E=∫ E = ∑ x ( n)
2 2
- Energie d'un signal (cas complexe): (TC) x (t ) dt (TD) (E ≥0)
−∞
n = −∞
∆ ∞ ∆ ∞
[unité: le Joule] (cas scalaire): (TC) E = ∫ x 2 (t ) dt
−∞
(TD) E= ∑x
n = −∞
2
( n)

Pour un signal à énergie infinie (signal périodique par exemple) on préfèrera utiliser la puissance (moyenne) pour
caractériser le signal :
k
∆ 1 +T ∆
1
∫ ∑
2 2
- Puissance (moyenne) d'un signal : (TC) P = lim x(t ) dt (TD) P = lim x ( n)
T → ∞ 2T −T k → ∞ 2k + 1
n=−k
∆ 1 +T ∆ 1 k
[unité: le Watt] (cas scalaire): (TC) P = lim
T → ∞ 2T ∫−T
x 2 (t ) dt (TD) P = lim
k → ∞ 2k + 1

n=− k
x 2 ( n)

[unité: le déciBel (dB)] PdB = 10 log( P ) =10 log( P) ( P ≥ 0)

Ex.: x(n) = Γ(n) → l’énergie diverge ( E = ∞ ) mais la puissance moyenne du signal reste finie :
k
1 1 k 1 1
∑ x(n) = klim ∑
2
P = lim 1 = lim (k + 1) =
k →∞ 2k + 1 n = − k → ∞ 2k + 1
n =0
k → ∞ 2k + 1 2

- Rapport Signal/Bruit (SNR) : . s(t ) signal utile et b(t ) bruit, sont 2 signaux (TC) causaux, scalaires, de durée T
. sn signal utile et bn bruit, sont 2 signaux (TD) causaux, scalaires, de N échantillons

⎛ T x 2 (t ) dt ⎞ ⎛ N −1 2 ⎞
[unité: le déciBel (dB)] (TC) ∆ ⎜∫ ⎟ ⎛ Px ⎞ (TD) ⎜ ∑ xn ⎟
∆ ⎛P ⎞
SNRdB = 10 log ⎜ 0T ⎟ = 10 log⎜⎜ P ⎟⎟ = Px dB − Pb dB SNRdB = 10 log ⎜ nN=−01 ⎟ = 10 log⎜⎜ x ⎟⎟ = Px dB − Pb dB
⎜ ∫ b 2 (t ) dt ⎟ ⎝ b⎠ ⎜ 2 ⎟ ⎝ Pb ⎠
⎝ 0 ⎠ ⎜ ∑ bn ⎟
⎝ n =0 ⎠
Dans le cas de bruit aléatoire non ergodique, il faut prendre sa moyenne statistique (espérance) plutôt que sa moyenne temporelle (1 seule réalisation du bruit ne suffit
pas) :
Rapport des puissances instantanées à l’instant t = T (TC) ou n = N (TD) :
Cas aléatoire (TC) ∆ ⎛ x 2 (T ) ⎞ ⎛ px ⎞ (TD) ∆ ⎛ x2 ⎞ ⎛ p xi ⎞
= 10 log ⎜⎜ ⎟⎟ = 10 log⎜ i ⎟ = p xi SNRdB = 10 log ⎜⎜ N2 ⎟ ⎜ ⎟ = px
SNR dB
[2
⎝ E b (T ) ] ⎠ ⎜ pb ⎟
⎝ i ⎠
dB
− p bi dB
⎝ E bN [ ]⎟⎠ = 10 log⎜⎝ p ⎟
bi ⎠
i dB
− pbi dB

Remarque : . un SNR de 100 dB traduit un excellent Rapport Signal/Bruit (le bruit est rejeté)
. un SNR de 10 dB traduit un Rapport Signal/Bruit minimal admissible (le bruit est couvert, il est « négligeable »)
. un SNR de 0 dB traduit une même puissance entre Signal et Bruit.

II. SIGNAUX ALEATOIRES


Dans de nombreux systèmes réels, les signaux à traiter ne peuvent être modélisés de façon déterministe.
C’est le cas par exemple des signaux de télécommunications qui, par nature, ne sont pas connus de façon certaine,
sinon ils ne véhiculeraient aucune information (quasiment).
C’est aussi le cas de nombreux signaux qui proviennent de mesures ou d’observations bruitées, qui font que le signal
réellement observé est une forme corrompue du signal voulu. De ce fait, de nombreuses opérations de traitement du
signal pensées pour des signaux déterministes doivent être repensées et optimisées en fonction de l’information dont on
dispose à propos du signal aléatoire à traiter.

1. L’aléatoire en théorie du signal


Dans beaucoup d’expériences pratiques, les phénomènes observés dans des conditions apparemment identiques
semblent présenter des variations imprévisibles. On dit que ces phénomènes sont aléatoires. Par exemple, le bruit de
fond d’un récepteur radiophonique, ou encore le signal sonore produit par un compteur de particules sont des exemples
de signaux aléatoires.
Dans le cas particulier d’un système de communication, non seulement le bruit de fond, mais aussi le message émis par
la source, présentent un caractère aléatoire pour le destinataire. Il en est de même pour un signal de parole qui ne peut
être décrit de façon exacte par une expression analytique, même en l’absence de bruit.

1. 2
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Pour étudier l’évolution des phénomènes aléatoires, on a recours à des modèles probabilistes. Ceux-ci tentent de
représenter le signal observé par une famille de Variables Aléatoires (VA) indexées par le temps. Chacune de ces VA
décrit l’aspect incertain du phénomène à un instant donné. Une telle famille porte le nom de processus aléatoire.
Un processus aléatoire peut être à TD (Temps Discret) ou à TC (Temps Continu).

2. Variables Aléatoires
Une VA X est une application qui associe à chaque épreuve, réalisation x possible d’une expérience, une valeur
particulière ( x ) : X = X (ω ) ( ω : épreuve)

Une image familière nous est donnée par l’apparition des valeurs 1 à 6 dans une expérience de lancé d’un dé à 6 faces.

VA discrètes et continues
Une VA est discrète ou continue suivant que l’ensemble des valeurs possibles de l’expérience aléatoire est
respectivement discret ou continu.

VA discrète : un exemple du cas discret est donné par l’observation du nombre de personnes présentes dans une file
d’attente : les seules valeurs possibles sont les entiers positifs ou nul.

VA continue : Par contre, le relevé de la vitesse des véhicules sur une autoroute fournit un exemple de VA continue
(les valeurs possibles etant les nombres réels compris entre 0 et 130 km/h).

VA discrète
La loi de probabilité d’une VA X est complètement caractérisée par l’ensemble dénombrable { a1 , a2 , L , ak , L }
des valeurs possibles et par la suite des valeurs : ( k ∈ Z )
p X ( k ) = P ( X = ak )
qui représente la probabilité pour que X soit égal à l’élément ak . Ces valeurs vérifient :
0 ≤ p X (k ) ≤ 1 et ∑p
k
X (k ) = 1

Moment d’ordre n de la VA X : c’est le nombre (non aléatoire) défini par : (n∈N )

[ ]
E X n = ∑ akn p X (k )
k

cas : n = 1 : on a l’espérance mathématique ou moyenne statistique de la VA X : E X [ ] = ∑ ak p X ( k )


k

cas : n = 2 : on a le moment d’ordre 2 de la VA X : EX[ ] = ∑a


2 2
k p X (k )
k
Les moments d’ordre 1 et 2 suffisent généralement à caractériser une VA. Cependant, on peut parfois avoir recours aux
moments d’ordre supérieur : ex. n = 4 : moment d’ordre 4 : kurtosis.

Loi de probabilité conjointe de 2 VA X et Y :


Elle est caractérisée par les ensembles dénombrables { a1 , a2 , L , ak , L } et { b1 , b2 , L , bm , L } des valeurs
possibles de X et Y et par la suite des probabilités : p XY ( k , m) = P( X = ak , Y = bm ) qui vérifient :
0 ≤ p XY (k , m) ≤ 1 et ∑∑ pk m
XY ( k , m) = 1

Indépendance de 2 VA X et Y :
2 VA X et Y sont indépendantes si et seulement si : P( X = ak , Y = bm ) = P( X = ak ) P(Y = bm )

1. 3
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

VA continue
Densité de probabilité
La VA X prend ses valeurs dans le corps de réels R , et sa loi est caractérisée par une fonction appelée densité de
probabilité que l’on note p X (x ) avec x réel, et qui permet le calcul de la probabilité pour X d’appartenir à un
intervalle (a, b ) par la relation :
b
P ( X ∈ (a, b ) ) = ∫ p X ( x) dx
a

La fonction p X (x) est ≥ 0 (pas nécessairement ≤ 1 ) et vérifie la relation de normalisation : ∫p
−∞
X ( x) dx = 1

Fonction de répartition
La fonction de répartition FX (x) d’une VA X est définie par : FX ( x) = p ( X ≤ x)
x
On a la relation entre densité de probabilité p X (x ) et fonction de répartition FX (x) : FX ( x) = ∫p
−∞
X (u )du

Moment d’ordre n de la VA X : c’est le nombre (non aléatoire) défini par : (n∈N )



[ ] ∫x
E Xn = n
p X ( x) dx
−∞

cas : n = 1 : on a l’espérance mathématique ou moyenne statistique de la VA X : E X [ ] = ∫x p X ( x) dx
−∞

cas : n = 2 : on a le moment d’ordre 2 de la VA X: [ ] ∫x
E X2 = 2
p X ( x) dx
−∞
Les moments d’ordre 1 et 2 suffisent généralement à caractériser une VA. Cependant, on peut parfois avoir recours aux
moments d’ordre supérieur : ex. : n = 3 : moment d’ordre 3 : skewness; . n = 4 : moment d’ordre 4 : kurtosis.

Loi de probabilité conjointe de 2 VA X et Y


De façon analogue, elle est caractérisée par sa densité de probabilité p XY ( x, y ) , qui, par la formule suivante, autorise
le calcul de la probabilité pour que le couple de VA ( X , Y ) appartienne à un domaine ∆ du plan :
P(( X , Y ) ∈ ∆ ) = ∫∫ p XY ( x, y ) dxdy

La fonction p XY ( x, y ) est ≥ 0 (pas nécessairement ≤ 1 ) et vérifie la normalisation : ∫∫R2


p XY ( x, y ) dxdy = 1

Indépendance de 2 VA X et Y
2 VA X et Y sont indépendantes si et seulement si : p XY ( x, y ) = p X ( x) pY ( y )

VA discrètes et continues
. Moyenne m d’une VA X Cette grandeur est déterministe
m X = E[X ] moyenne statistique, espérance mathématique ou encore moment d’ordre 1 de X
La moyenne d’une VA traduit le centre (le centre de gravité) des épreuves.

1. 4
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

. Variance σ2 d’une VA X Cette grandeur est déterministe

[
σ 2x = var[ X ] = E ( X − E [ X ]) = E X 2 − E 2 [ X ]
2
] [ ]
En effet :
[
E ( X − E [ X ])
2
] = E[ X 2
] [ ] [ ]
− 2 X E[ X ] + E 2 [ X ] = E X 2 − 2 E 2 [ X ] + E 2 [ X ] = E X 2 − E 2 [ X ]

La variance est une quantité toujours ≥ 0 . Elle peut s’interpréter comme la mesure des fluctuations de la VA autour de
sa moyenne : plus elle est grande, plus les valeurs de X sont dispersées autour de E X [ ].
En théorie du signal, la variance a une signification supplémentaire : elle s’interprète come la puissance des fluctuations
(quadratiques) de X autour de sa moyenne.
La variance d’une VA traduit sa puissance, sa dispersion. Elle est liée à l’amplitude des variations de la VA.

Moyenne et variance suffisent à décrire de nombreux phénomènes aléatoires de façon suffisante.


⎧ E [aX + b] = aE [ X ] + b
On a les propriétés : ⎨ où : a et b sont des complexes non aléatoires.
⎩var[aX + b] = a var[ X ]
2

. Ecart-type σ d’une VA X Cette grandeur est déterministe


σ x = var[ X ] écart moyen

. Covariance ϕ xy de 2 VA X et Y Cette grandeur est déterministe Soit X 0 ≡ X − E [ X ] et Y 0 ≡ Y − E [Y ] :

[ ] [
ϕ xy = cov[ X , Y ] = E ( X − E [ X ])( Y − E [Y ]) = E X 0Y 0 = E [ XY ] − E[ X ]E [Y ] ]
. Autocovariance ϕ xx d’une VA X (≡ variance) Cette grandeur est déterministe

[ ]
ϕ xx = cov[ X , X ] = E ( X − E[ X ] )2 = E [X 2 ] − E 2 [ X ] = σ x2

. Corrélation ρ xy de 2 VA X et Y Cette grandeur est déterministe

cov[ X , Y ] ϕ xy
ρ xy = =
var[ X ] var[Y ] σxσy

On a la propriété, issue de l’inégalité de Schwarz : − 1 ≤ ρ xy ≤ 1


Décorrélation de 2 VA X et Y : si ϕ xy = cov[ X , Y ] = 0 on dit alors que les VA X et Y sont décorrélées ( ρ xy = 0 )

On montre que si 2 VA X et Y sont indépendantes alors elles sont décorrélées. Mais en général, la réciproque est fausse.
X , Y indépendantes X , Y décorrélées mais X , Y décorrélées X , Y indépendantes
. Autocorrélation ρ xx d’une VA X Cette grandeur est déterministe
cov[ X , X ] ϕ xx
ρ xx = = 2 =1
var[ X ] σx
. Estimation de la densité de probabilité
Loi des grands nombres
n∆ n∆
P( X ∈ ∆ ) peut être approché de façon efficace par le rapport : P( X ∈ ∆ ) =
N N

1. 5
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

avec : . P( X ∈ ∆ ) : probabilité d’appartenance de la VA X à un intervalle ∆


. n∆ : nombre de points, de résultats d’expérience observés dans l’intervalle ∆
. N : nombre total de points, de réalisations possibles.
n∆
. : fréquence relative
N
n∆
On peut alors estimer la densité de probabilité p X (x) de X au point x1 , soit p X ( x1 ) par : p X ( x1 ) =
N ⋅ l∆
avec : . p X ( x1 ) : densité de probabilité de X au point x1
. n∆ : nombre de points, de résultats d’expérience observés dans l’intervalle ∆
. N : nombre total de points, de réalisations possibles.
. l∆ : longueur de l’intervalle ∆
En effet, on a : P( X ∈ ∆ ) = ∫ p X ( x) dx et si on suppose que ∆ est un intervalle très petit autour du point x1 , le terme :

n∆
∫p

X ( x) dx est approximativement égal à : p X ( x1 ) l∆ d’où : p X ( x1 ) l∆ =
N
La procédure pour estimer la densité de probabilité au point x0 peut alors suivre l’algorithme :
1. On effectue une expérience de longueur N
2. On partitionne l’intervalle des valeurs obtenues en P sous-intervalles I1 , I 2 , L , I P de longueur respective
l1 , l2 , L , l P autour des points x1 , x2 , L , xP . En général, on choisit des sous-intervalles de même longueur et
x p est pris au milieu du sous-intervalle I p . En pratique P ne dépasse pas N / 10 .
nI p
3. Enfin, on estime la densité de probabilité au point x p par p X ( x p ) =
N ⋅ lI p

3. Lois de probabilité de VA usuelles


Loi de Bernouilli (≡ loi à 2 valeurs)
La VA X peut prendre 2 valeurs a et b avec les probabilités respectives p a et pb avec pa + pb = 1 .
p X (x)
pb
pa
a b x

La densité de probabilité est donnée par p X ( x) = p aδ ( x − a ) + pbδ ( x − b) : Loi de Bernouilli

Moyenne m : m = E [ X ] = apa + bpb Moment d’ordre n : [ ]


E Xn = a n p a + b n pb

Variance σ2 : σ 2 = E [X 2 ] − E 2 [ X ] = a 2 pa (1 − pa ) + b 2 pb (1 − pb ) − 2abpa pb
Exemple de VA de loi de Bernouilli : Résultat pile ou face du lancer d’une pièce.

Loi binomiale
Soit un évènement e associé à une expérience. Cet évènement a une probabilité p de survenir. On reproduit n fois
l’expérience et on s’intéresse à la VA X qui donne le nombre de succès de l’évènement e au cours des n essais.
n
La densité de probabilité est donnée par p X ( x) = ∑ p δ (x − k)
k =0
k avec pk = C nk p k (1 − p )
n−k
et C k =
n
n!
k !(n − k )!
Moyenne m : m = E[ X ] = np
Variance σ2 : σ 2 = E [X 2 ] − E 2 [ X ] = np(1 − p )

1. 6
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Exemple de VA de loi binomiale : On effectue n tirages avec remise d’une boule dans une urne contenant n B boules
blanches et n N boules noires. L’évènement est le tirage d’une boule blanche.

Loi de Poisson

λk e − λ
La densité de probabilité est du type : p X ( x) = ∑ p δ (x − k)
k =0
k avec p k =
k!
Moyenne m : m = E[X ] = λ
Variance σ 2
: σ 2 = E [X 2 ] − E 2 [ X ] = λ
Exemple de VA de loi binomiale : On effectue n tirages avec remise d’une boule dans une urne contenant n B boules
blanches et n N boules noires. L’évènement est le tirage d’une boule blanche.

Loi uniforme sur a, b [ ]


[ ]
L’ensemble des valeurs possibles de la VA X se réduit à l’intervalle a, b et la probabilité de X d’appartenir à un
d −c
[ ] [ ]
intervalle c, d ⊂ a, b est égale à .
b−a
p X (x )
1
b−a
a m b x
1
On en déduit que sa densité de probabilité est constante et vaut sur [a, b ] et 0 ailleurs: Loi uniforme
b−a
b
x a+b
Moyenne m : m = E [ X ] = ∫ Moment d’ordre 2 : E [X 2 ] =
b
dx = x2 a 2 + ab + b 2
a
b−a 2 ∫
a
b−a
dx =
3

Variance σ2 : σ 2 = E [X 2 ] − E 2 [ X ] =
(b − a )2
12
Exemple de VA de loi uniforme : Erreur d’arrondi dans les calculs (bruit de quantification uniforme).
[ ]
Génération d’une VA Y uniforme sur a, b à partir d’une VA X uniforme sur 0, 1 : [ ] Y = (b − a ) X + a

Loi normale (≡ gaussienne)


Numériquement, plus de 99% des valeurs de la densité de probabilité p X (x ) de la VA X tombent dans l’intervalle
[m − 3σ , m + 3σ ] , dit intervalle de confiance [ ]
( m − 2σ , m + 2σ donne 95% des valeurs de p X (x) , [m − 4σ , m + 4σ ] pour 99.9%).
p X (x)
1
σ 2π
( x − m )2 x
1 − 3σ m
La densité de probabilité est définie par p X ( x) =
2

e : Loi normale
σ 2π
Moyenne m : E[X ] = m
Variance σ2 : [ ]
E X 2 − E 2 [X ] = σ 2

Exemple de VA de loi normale : Bruit de fond dans les récepteurs.


Génération d’une VA Y normale ( m, σ ) à partir d’une VA X normale ( m0 = 0,σ 02 = 1) : Y = σ X + m
2

La distribution normale est linéaire, et elle est la seule loi pour laquelle il y a équivalence entre indépendance et non corrélation.

1. 7
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Lois de Rayleigh, de Laplace, de Cauchy



x2 1
p X ( x) = x ⋅ e 2 p X ( x) = e
− x
p X ( x) =
1+ x2

x x x
Loi de Rayleigh Loi de Laplace Loi de Cauchy

Tableau récapitulatif
VA discrètes
Loi de distribution Probabilité Densité de probabilité Fonction de répartition Moyenne Variance
de la VA X pk = p ( X = k ) p X ( x) = ∑ p k δ ( x − k ) FX ( x) = p ( X ≤ x) = ∑ pk Γ( x − k )
k
m = ∑ xk pk σ 2 = ∑ ( x k − m) 2 p k
k k k

Bernouilli ( p a , pb ) p aδ ( x − a) + pbδ ( x − b) p a Γ( x − a ) + p b Γ( x − b) ap a + bpb a2 pa (1 − pa ) + b2 pb (1 − pb ) − 2abpa pb


( a, b )

binomiale C nk p k (1 − p )
n −k n
p k (1 − p )
n
p k (1 − p )
np np(1 − p )
∑C ∑C
n −k n−k
( n, p )
k
n δ (x − k) k
n Γ( x − k )
k =0 k =0

Poisson ( λ ) λk e −λ ∞
λk e − λ ∞
λk e − λ λ λ
k! ∑
k =0 k!
δ (x − k) ∑
k =0 k!
Γ( x − k )

VA continues
Loi de distribution Probabilité Densité de probabilité Fonction de répartition Moyenne Variance
X p ( x) = p ( X = x) dF ( x) x ∞ ∞

∫ ( x − m)
de la VA
p X ( x) = X FX ( x) = p( X ≤ x) = ∫ pX (u)du m= ∫ xp X ( x)dx σ =2 2
p X ( x)dx
dx −∞
−∞
−∞

uniforme sur [a, b] 1


⎧ 1
⎪ si a ≤ X ≤ b ⎧0 si X < a a+b (b − a )2
Π b − a ( x − m) = ⎨ b − a ⎪x−a
b−a ⎪⎩0 ailleurs ⎪ 2 12
⎨ si a ≤ X ≤ b
⎪b − a
⎩⎪0 si X > b
normale ( m,σ 2 ) ( x − m )2 1 ⎛ x−m⎞ m σ 2
1 −
2σ 2
1 − erfc ⎜ ⎟
e
σ 2π 2 ⎝σ 2 ⎠

avec 2
erfc ( x ) = ∫e
−t2
dt
π x

4. Théorème central limite


Chaque fois qu’un phénomène peut être considéré comme la résultante d’un grand nombre de causes aléatoires
indépendantes, on peut présumer que ce phénomène suit une loi de distribution normale: c’est le théorème central
limite.

5. Processus aléatoires
En théorie du signal, on étudie le plus souvent des grandeurs dépendant du temps et dont l’évolution semble
imprévisible. L’écoute du son émis par des véhicules qui passent sur une route nous donne une image concrète et
familière d’une telle grandeur (alors que le lancer d’un dé est une VA statique, indépendante du temps).
Pour les modéliser, on utilise la notion de processus aléatoire qui associe à chaque épreuve une réalisation qui n’est
plus une valeur comme dans le cas des Variables Aléatoires, mais une fonction du temps.
On définit un Processus Aléatoire (PA) comme une application qui, à chaque épreuve ω , fait correspondre une
fonction du temps t . On utilise la notation X (t , ω ) , ou plus usuellement, X (t ) , dans laquelle on omet la
dépendance statistique (≡ vis-à-vis de l’épreuve ω ), à l’exemple de ce que l’on fait pour les Variables Aléatoires que
l’on note simplement X .

Trajectoire d’un Processus Aléatoire


Un processus aléatoire peut alors être vu :

1. 8
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

. soit, pour une épreuve fixée ω 0 , comme une fonction du temps que l’on appelle trajectoire.
. soit, pour un instant fixé t0 , comme une Variable Aléatoire.

Réalisations d’un processus aléatoire (exemple : réalisations d’un signal parole)

La démarche qui consiste à modéliser une expérience par plusieurs fonctions, ce qui suppose que le temps puisse se
dérouler une infinité de fois à l’identique, peut choquer, puisqu’en pratique, on n’observe souvent qu’une réalisation, et
encore uniquement sur un intervalle de temps fini !
Cette façon de faire se trouve justifiée par la pertinence des résultats qu’elle permet d’obtenir.

Processus aléatoires à Temps Continu et à Temps Discret


Certains processus aléatoires ont des trajectoires qui, tout en étant imprévisibles, semblent posséder des caractéristiques
communes.

Processus Aléatoire X (t ) à TD et à TC
Un Processus Aléatoire X (t ) est à TC si le temps t ∈ R ( t réel).
Un Processus Aléatoire X (t ) est à TD si le temps t ∈ Z ( t entier).

Moyenne m X (t ) d’un Processus Aléatoire X (t ) Cette grandeur est déterministe et dépend de t


m X (t ) = E [ X (t )] moyenne statistique, espérance matématique ou encore moment d’ordre 1 de X (t )

Fonction d’Autocovariance RXX (t1 , t2 ) d’un Processus Aléatoire X (t ) Cette grandeur est déterministe
(appelée aussi Fonction d’Autocorrélation lorsque le processus est stationnaire)

[ ]
R XX (t1 , t 2 ) = E X 0 (t1 ) X 0 (t 2 ) = E [ X (t1 ) X (t 2 )] − m X (t1 ) m X (t 2 ) ( = E [X (t1 ) X (t 2 )] si X (t ) centré)
R (t , t ) = E [X (t ) X (t )] = E [X (t ) X (t )] − m (t ) m (t ) dans le cas de PA complexes ( X (t ) : conjugué de X (t ) )
0 0* * * *
XX 1 2 1 2 1 2 X 1 X 2

où : X 0 (t ) = X (t ) − E [ X (t )] désigne le processus centré

Fonction de Covariance RXY (t1 , t 2 ) de 2 Processus Aléatoires X (t ) et Y (t ) Cette grandeur est déterministe
(appelée aussi Fonction de Corrélation lorsque le(s) processus est (sont) stationnaire(s))

[ ]
R XY (t1 , t 2 ) = E X 0 (t1 )Y 0 (t 2 ) = E [ X (t1 )Y (t 2 )] − m X (t1 ) mY (t 2 ) ( = E [X (t1 )Y (t 2 )] si X (t ) ou Y (t ) centré)
[ *
] [ ]
R XY (t1 , t 2 ) = E X 0 (t1 )Y 0 (t 2 ) = E X (t1 )Y * (t 2 ) − m X (t1 ) mY* (t 2 ) dans le cas de PA complexes ( X * (t ) : conjugué de X (t ) )

où : X 0 (t ) = X (t ) − E [ X (t )] désigne le processus centré

On se limite aux processus stationnaires au 2nd ordre au sens large (SSL) (cas le plus courant)

1. 9
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Stationnarité du 2nd ordre au sens large des processus aléatoires à TC et à TD


Notations : si Processus à TC : t , τ , t1 , t 2 ∈ R si Processus à TD : t , τ , t1 , t 2 ∈ Z
Un Processus Aléatoire stationnaire au 2nd ordre au sens large (SSL) est tel que sa moyenne et sa variance sont
indépendantes de l’origine des temps

Un Processus Aléatoire X (t ) est SSL s’il vérifie les 2 propriétés 1 et 2 :

1. la moyenne du Processus Aléatoire SSL est indépendante de t : m X (t ) = m X m X = E [ X (t )]

Fonction d’Autocovariance (=Autocorrélation dans le cas SSL) R XX (τ ) d’un Processus Aléatoire SSL X (t )

2. la fonction d’autocovariance d’un PA SSL ne dépend que de τ = t 2 − t1 : R XX (t1 , t 2 ) = R XX (τ )


[ ]
RXX (τ ) = E X 0 (t − τ ) X 0 (t ) = E [ X (t − τ ) X (t )] − m X2 si X (t ) centré: R XX (τ ) = E [ X (t − τ ) X (t )]
R (τ ) = E [X (t − τ ) X (t )] = E[X (t − τ ) X (t )] − m
0* 2
dans le cas de PA complexes ( X * (t ) : conjugué de
XX
0 *
X
X (t ) )

on a aussi :

[ ]
RXX (τ ) = E X 0 (t ) X 0 (t + τ ) = E [ X (t ) X (t + τ )] − m X2 si X (t ) centré: R XX (τ ) = E X (t ) X (t [ + τ )]

[
R XX (−τ ) = E X 0 (t + τ ) X 0 (t ) = R XX (τ ) ] RXX (τ ) est paire
on a enfin :
R XX (τ ) = X 0 (τ ) * X 0 (−τ ) si X (t ) centré: R XX (τ ) = X (τ ) * X (−τ )

Symétrie hermitienne : la fonction d’autocovariance possède la propriété de symétrie hermitique


R XX (τ ) = R XX (−τ ) parité de l’autocovariance
R XX (τ ) = R (−τ ) *
XX
dans le cas de PA complexes ( R *XX (t ) : conjugué de R XX (t ) )

Positivité : la fonction d’autocovariance possède la propriété de positivité


N −1 N −1

∑∑ a a
k =0 m =0
k m R XX (k − m) ≥ 0 pour tout N , pour toute suite de valeurs réelles a0 , a1 , L , a N −1

N −1 N −1 pour tout N , pour toute suite de valeurs complexes a0 , a1 , L, aN −1


∑∑ a a
k =0 m =0
k
*
m RXX (k − m) ≥ 0

que l’on peut écrire matriciellement : (les exposants Τ , Η indiquent resp. la transposition et la transposition-conjuguaison)
Τ
A RA≥0 Η
A RA ≥0 dans le cas complexe

La matrice R est appelée matrice de covariance.

On a la propriété R = RΤ ( R = RΗ dans le cas complexe) du fait de la symétrie hermitienne.


⎡ R XX (0) R XX (1) R XX (2)⎤ ⎡a0 ⎤
Exemple pour N = 3 : A Τ R A = a0 [ a1 ]
a2 ⎢⎢ R XX (1) R XX (0) R XX (1) ⎥⎥ ⎢⎢ a1 ⎥⎥ ≥ 0
⎢⎣ R XX (2) R XX (1) R XX (0) ⎥⎦ ⎢⎣a2 ⎥⎦
dans le cas de PA complexe : ⎡ R XX (0) R XX (1) R XX (2)⎤ ⎡a0 ⎤
A Η R A = a0* [ a1* ]
a2* ⎢⎢ R XX (−1) R XX (0) R XX (1) ⎥⎥ ⎢⎢ a1 ⎥⎥ ≥ 0
⎣⎢ R XX (−2) R XX (−1) R XX (0) ⎦⎥ ⎣⎢a2 ⎦⎥
En raison de la stationnarité du PA, la matrice R est telle que les parallèles à la diagonale principale sont constituées
de termes égaux. Cette forme de matrice porte le nom de matrice de Toeplitz.

1. 10
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Fonction de Covariance (= Corrélation dans le cas SSL) R XY (τ ) de 2 Processus Aléatoires SSL X (t ) et Y (t )


. la fonction de Covariance de 2 PA SSL ne dépend que de τ = t 2 − t1 : R XY (t1 , t 2 ) = R XY (τ )
[
RXY (τ ) = E X 0 (t − τ )Y 0 (t ) ] si X (t ) et Y (t ) centrés : R XY (τ ) = E [ X (t − τ )Y (t )]
[ *
R XX (τ ) = E X 0 (t − τ )Y 0 (t ) ] dans le cas de PA complexes ( X * (t ) : conjugué de X (t ) )

on a aussi :

[
R XY (τ ) = E X 0 (t )Y 0 (t + τ ) ] si X (t ) et Y (t ) centrés : R XY (τ ) = E [ X (t )Y (t + τ )]

RYX (τ ) = E [Y 0
(t − τ ) X 0 (t )] = R XY (−τ ) si X (t ) et Y (t ) centrés : RYX (τ ) = E [Y (t − τ ) X (t )] = R XY (−τ )
on a enfin :
R XY (τ ) = X 0 (τ ) * Y 0 (−τ ) si X (t ) et Y (t ) centrés : R XY (τ ) = X (τ ) * Y ( −τ )

Densité Spectrale de Puissance (DSP) d’un Processus Aléatoire X (t )


Quand un Processus Aléatoire est stationnaire au 2nd ordre, on définit sa puissance et sa DSP de la façon suivante :

[ ]

. Puissance P PX = E X 2 (t ) = R XX (0) + m X2 moyenne statistique de la puissance instantanée

[
PX = E X (t )
2
]= R XX (0) + m X
2 dans le cas de PA complexes

PX = R XX (0) dans le cas de PA centrés


. Valeur efficace X eff X eff = PX


. DSP S S X ( f ) = TF [R XX (τ )] f est la fréquence
Théorème de Wiener – Kintchine

La DSP de X (t ) est la TF de la fonction d’autocovariance de X (t ) (et non la TF de X (t ) !)

Note : S X ( f ) est encore noté S XX ( f ) . R XX (τ ) est encore noté R X (τ )



TC : SX ( f ) = ∫R XX (τ ) e −i 2π fτ dτ τ est réel ( τ ∈ R )
−∞

TD : SX ( f ) = ∑R XX (τ ) e −i 2π fτ τ est discret ( τ ∈ Z )
τ = −∞
Comme dans le cas déterministe, le spectre représente la répartition, la localisation de la puissance le long de l’axe des
fréquences. Par conséquent, la puissance est donnée par :

PX = R XX (0) + m = ∫S ( f ) df + m X2
2
TC : X X
−∞

dans le cas de PA complexes
∫S
2 2
PX = R XX (0) + m X = X ( f ) df + m X
−∞

1/ 2
PX = R XX (0) + m = ∫S ( f ) df + m X2
2
TD : X X
−1 / 2
1/ 2
dans le cas de PA complexes
∫S
2 2
PX = R XX (0) + m X = X ( f ) df + m X
−1 / 2

1. 11
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Bruit blanc

Un bruit blanc B(t ) est un Processus Aléatoire stationnaire (SSL) à TC ou à TD, (généralement centré), dont la DSP
S B ( f ) est Constante sur tout l’axe des fréquences (le nom « blanc » fait donc référence à la lumière blanche dont la puissance est
répartie uniformément sur l’ensemble des fréquences optiques).
Du fait de la définition de la DSP, un bruit blanc est donc
caractérisé aussi par une fonction d’autocovariance RBB (τ ) impulsionnelle :

Bruit blanc de variance σ2 :


Autocovariance : (TC) RBB (τ ) = σ 2 δ (τ ) (TD) RBB (k ) = σ 2 δ k , 0
DSP (TC) (Variance (TD)) : DSP (TC) S B ( f ) = TF [RBB (τ )] = σ 2
Variance (TD)

S B ( f ) = TF [RBB (k )] = σ 2

Autre définition : (sens faible) Un bruit blanc est une suite de VA non corrélées (réalisations non corrélées)
(sens fort) Un bruit blanc est une suite de VA indépendantes (réalisations indépendantes).
Le terme « blancheur » vient de l’analogie avec la lumière blanche et traduit le fait que toutes les fréquences sont présentes dans un bruit blanc avec la
même puissance.
Un bruit blanc à TD est réalisable en pratique alors qu’un bruit blanc à TC ne l’est pas car sa puissance (qui est égale à sa fonction d’autocovariance
en 0) est infinie (Dirac) !

Loi de distribution : un processus blanc peut avoit une loi de distribution quelconque : normale, uniforme, ...

Ergodicité (≡ ergodisme) (relativement à la moyenne et à la fonction de covariance) d’un Processus Aléatoire


Un Processus Aléatoire peut être vu comme une multitude de trajectoires correspondant à autant de réalisations de
l’expérience à l’identique.
Cependant, dans un grand nombre de cas pratiques, une seule réalisation du processus est accessible à la mesure.
Un processus stationnaire X (t ) est ergodique si sa moyenne et sa fonction d’autocovariance peuvent être obtenues en
effectuant une moyenne temporelle sur une seule trajectoire (une seule réalisation) de durée infinie.
Ainsi, les formules de moyenne et de fonction d’autocovariance peuvent s’écrire à l’aide d’une moyenne temporelle :
⎧ 1 T



m X = lim
T → + ∞ 2T + 1

t = −T
X (t )
⎨ ⎧ T
1
1 T ⎪m X = Tlim
→ + ∞ 2T + 1
∑ X (t ) dans le cas de PA complexes

⎪ R = lim ⎪

⎪⎩ XX T → + ∞ 2T + 1 t∑
X (t + τ ) X (t )
t = −T
⎨ T
⎪ R = lim 1
⎪⎩ XX T → + ∞ 2T + 1 t∑
X (t + τ ) X * (t )
= −T = −T

1 K
ˆ X (t ) =
Un processus X (t ) ergodique est donc tel que sa moyenne statistique (dont une estimation est : m ∑ xk (t ) )
K k =1
1 T −1
ˆX
est égale à sa moyenne temporelle (dont une estimation est : m = ∑ X (t ) ).
T t =0
Dès lors : . la moyenne d’un Processus Aléatoire (PA) ergodique est vue comme un offset (décalage) vertical au cours du temps
. la variance, la puissance d’un PA est liée à l’amplitude du PA (l’amplitude de ses réalisations).

Stationnarité et ergodicité d’un Processus Aléatoire


La quasi totalité des Processus Aléatoires rencontrés en pratique satisfait aux conditions de stationnarité et
d’ergodicité.
Cette hypothèse conduit aux formules suivantes d’estimation de la moyenne et de la fonction d’autocovariance :

⎧ 1 T −1
⎪ X T ∑ X (t )
ˆ
m =
⎪ t =0
⎧ 1 T −1
⎨ T −τ −1 ⎪mˆ X = T ∑ X (t )
dans le cas de PA complexes

⎪R = 1 ⎪

⎪⎩ XX T − τ ∑
t =0
X 0 (t + τ ) X 0 (t ) ⎨
⎪R = 1
T −τ −1

⎪⎩ XX T − τ ∑
*
X 0 (t + τ ) X 0 (t )
t =0 t =0

où : X 0 (t ) = X (t ) − mˆ X
1. 12
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Fonction de covariance et fonction de corrélation d’un Processus Aléatoire


La Fonction de covariance d’un Processus Aléatoire devient fonction de corrélation lorsque le processus est stationnaire :
Fonction de Covariance RXY (t1 , t 2 ) de 2 Processus Aléatoires X (t ) et Y (t ) SSL
[
R XY (t1 , t 2 ) = E X 0 (t − t1 )Y 0 (t − t 2 ) ]
Fonction de Corrélation R XY (t1 − t 2 ) de 2 Processus Aléatoires X (t ) et Y (t ) SSL
[ ]
R XY (t1 − t 2 ) = E X (t − t1 )Y (t − t 2 ) = R XY (t1 , t 2 )
0 0

Formule du filtrage
Soit X (t ) un Processus Aléatoire SSL, de fonction d’autocovariance R XX (τ ) et de DSP S X ( f ) , entrée d’un filtre
linéaire de RI h(t ) et de gain complexe H ( f ) : (si X (t ) est à TC, t ∈ R et si X (t ) est à TD, t ∈ Z , aussi noté X k , k ∈ Z )
X (t ) h(t ) Y (t ) X (t ) h(t ) Y (t )
TC : TD :
On montre que le processus Y (t ) en sortie du filtre linéaire est lui-même un Processus Aléatoire SSL.
TC :
. Moyenne de Y (t ) mY = H (0) m X Y (t ) est donc centré si X (t ) l’est.
SY ( f ) = H ( f ) S X ( f )
2
. Filtrage de la DSP Autocorrélation de Y (t ) RYY (τ ) = h(τ ) * h(−τ ) * R XX (τ )

. Interspectre S XY ( f ) = H ( f ) S X ( f ) Intercorrélation R XY (τ ) = h(τ ) * R XX (τ )


De même à TD :
. Moyenne de Yk mY = H (0) m X Yk est donc centré si X k l’est.
SY ( f ) = H ( f ) SX ( f )
2
. Filtrage de la DSP Autocorrélation de Yk RYYk = hk * h− k * R XX k

. Interspectre S XY ( f ) = H ( f ) S X ( f ) Intercorrélation RXYk = hk * RXX k

Modèles de processus aléatoires (PAs)


Le processus de Wiener (processus aléatoire non stationnaire)

Il modélise le mouvement Brownien, mouvement irrégulier de particules microscopiques soumises à l’agitation


thermique dans un fluide. Soit X (t ) une des coordonnées de la particule, et choisissons l’origine telle que X (0) = 0 .
Le mouvement de la particule sur un intervalle de temps suffisamment long est le résultat d’une série d’impulsions
provenant d’un nombre important de collisions. Il est donc raisonnable de penser que :
. le théorème central limite s’applique : le mouvement Brownien est gaussien : le déplacement obéit à une loi normale
. les propriétés statistiques du déplacement sur un intervalle de temps ( t, t + τ ) sont indépendantes de celles sur un
intervalle de même longueur, pour autant que ces intervalles ne se chevauchent pas. De manière axiomatique, le
processus de Wiener est donc défini par les conditions suivantes :
. X ( 0) = 0
. X (k ) est gaussien de moyenne nulle ∀ k
. X (k ) est un processus à accroissements indépendants :
soit k1 < k 2 < L < k n , les VA X (k n ) − X (k n−1 ), X (k n−1 ) − X (k n−2 ), L , X (k 2 ) − X (k1 ), X (k1 ) sont mutuellement
indépendantes (≡ indépendantes les unes des autres) (si ces VA sont seulement non corrélées entre elles, le processus est dit à
accroissements orthogonaux).

1. 13
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Ces propriétés permettent de se donner un modèle pour le processus de Wiener : X (k ) = X (k − 1) + W (k )


avec : X (0) = 0
W (k ) : bruit blanc, gaussien, centré (≡ moyenne nulle), et de variance σ W2
Il résulte ce modèle que :
[
. E X (k ) = 0 ] ∀k ≥ 0 la moyenne d’un processus de Wiener est nulle: m X = 0
k
. X (k ) = ∑W (i)
i =1

[
. C XX ( k , l ) = E X ( k ) X (l ) ] = σ W2 min(k , l ) qui implique que la variance de X (k ) croît linéairement avec k :
σ X2 (k ) = C XX (k , k ) = kσ W2 la variance d’un process de Wiener croît linéairement:
σ X2 (k ) = kσ W2
cela signifie que, plus on s’éloigne de l’origine des temps, plus l’amplitude du déplacement peut être importante.
W (k ) H (z ) X (k )
La Fonction de Transfert du filtre de Wiener est : Bruit blanc Filtre de Wiener

X ( z) 1
H ( z) = = [
X ( z ) 1 − z −1 = W ( z ) ] ⎯TZ
⎯⎯→
−1
X ( k ) = X ( k − 1) + W ( k )
W ( z ) 1 − z −1
H ( z ) a un pôle juste instable en z = 1 . Il ne s’agit donc pas d’un filtre stationnaire et sa DSP n’est pas définie.
t
Strictement parlant, le processus de Wiener a été défini comme un processus continu : X (t ) = ∫ W (u ) du
0

où W (t ) est un bruit blanc gaussien continu centré.


La version discrète du processus de Wiener est appellée « random walk ».

Le processus auto-régressif (AR ou encore RII) (AutoRegressive) (processus aléatoire stationnaire)

Wn H (z ) Yn
Bruit blanc centré Filtre AR
Y ( z) 1 (cf. § Systèmes stochastiques)
H ( z) = = N
W ( z)
1 + ∑ a i z −i
i =1

On a immédiatement : ⎡ N
⎤ N
Y ( z ) ⎢1 + ∑ ai z − i ⎥ = W ( z ) ⎯→ Yn = Wn − ∑ aiYn − i
⎯⎯ TZ −1

⎣ i =1 ⎦ i =1

Le processus à moyenne mobile (MA ou encore RIF) (Moving Average) (processus aléatoire stationnaire)

Wn H (z ) Yn
N
Bruit blanc centré Filtre MA
H ( z ) = ∑ bi z −i (cf. § Systèmes stochastiques)
i =0
N N
Y ( z ) = H ( z )W ( z ) = ∑ bi z − iW ( z ) ⎯TZ
⎯→ Yn = ∑ biWn − i
−1
On a immédiatement : ⎯
i =0 i =0

Le processus auto-régressif à moyenne mobile (ARMA) (AutoRegressive with Moving Average) (PA stationnaire)

Wn H (z ) Yn N

Bruit blanc centré Filtre ARMA ∑b z


i =0
i
−i
(cf. § Systèmes stochastiques)
H ( z) = N
1 + ∑ a i z −i
i =1
N

Y ( z) ∑b z i
−i
⎛ N
⎞ ⎛ N ⎞ N N
→ Y ( z )⎜1 + ∑ ai z − i ⎟ = W ( z )⎜ ∑ bi z − i ⎟ ⎯TZ
⎯→ Yn = ∑ biWn − i − ∑ aiYn − i
−1
H ( z) = = i =0
N

W ( z) ⎝ ⎠ ⎝ i =0 ⎠
1 + ∑ ai z − i i =1 i =0 i =1

i =1

1. 14
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Le processus ARMAX (Auto Regressive Moving Average with eXogeneous inputs) (processus aléatoire stationnaire)
Commande connue Un B (z )
+
Filtre ARMAX
A −1 ( z ) Yn ⎧ N

⎪ A( z ) = 1 + ∑ a i z
+ −i
(polynôme stable)
Bruit blanc centré Wn C (z )
⎪ i =1

⎪ M
A( z )Y ( z ) = B ( z )U ( z ) + C ( z )W ( z ) avec ⎨ B ( z ) = ∑ bi z −i
⎪ i =0
⎪ P
⎪C ( z ) = 1 + ∑ c i z
−i
(polynôme stable)
⎩ i =1

Contrairement aux précédents, ce modèle n’est pas purement stochastique (réponse à un bruit blanc) mais la sortie combine
une composante purement aléatoire (réponse à un bruit blanc) et une réponse à un signal déterministe et connu (dans des
applications de contrôle, ce signal est l’entrée de commande).
Les polynômes A( z ) , C ( z ) sont stables et moniques (≡ de coeff. de plus haut degré égal à 1) et le polynôme B ( z )
quelconque.

Le processus de Box et Jenkins (BJ) (processus aléatoire stationnaire)


−1
Commande connue Un A ( z ) B( z )
+
⎧ N

⎪ A( z ) = 1 + ∑ ai z
Filtre BJ
Yn −i
(polynôme monique stable)
+
Bruit blanc centré Wn D −1 ( z )C ( z ) ⎪ i =1

⎪ M

⎪ B( z ) = ∑ bi z
−i

B( z ) C( z) ⎪ i=0
Y ( z) = U ( z) + W ( z) avec ⎨
A( z ) D( z ) P
⎪C ( z ) = 1 + c z − i
⎪ ∑
i =1
i (polynôme monique stable)

⎪ K
⎪D( z ) = 1 + d z − i
⎪⎩ ∑i =1
i (polynôme monique stable)

Généralisation du processus ARMAX avec les polynômes A(z ) , C (z ) , D (z ) stables et moniques (≡ de coeff. de plus
haut degré égal à 1) et le polynôme B (z ) quelconque.

Le processus Markovien et modèle d’Etat (cas des processus de Markov linéaires stationnaires à TD)

Processus Markovien
Wn Xn
Bruit blanc centré Processus Markovien

Un processus stochastique X (t ) est Markovien si pour tout instant t1 < t 2 < L < t k < t , la densité de probabilité
conditionnelle a la propriété suivante : p X [x(t ) x(t1 ), x(t 2 ), L , x(t k )] = p X [x(t ) x(t k )]
Donc, même si plusieurs valeurs antérieures de la réalisation du processus sont connues, seule la plus récente apporte
de l’information sur la densité de probabilité de X (t ) .
(Le processus de Wiener décrit plus haut est un cas particulier de processus de Markov).
Si de plus, X (t ) est une séquence aléatoire qui ne peut prendre qu’un nombre fini de valeurs possibles, la séquence est
une chaîne de Markov.
Un processus de Markov linéaire stationnaire est décrit par le modèle d’Etat : X (k + 1) = AX (k ) + W (k ) où :
. X (k ) est un processus stochastique vectoriel : X (k ) ∈ R N
. A est une matrice carrée constante (du fait de la stationnarité) : A ∈ R N xN
. W (k ) est un bruit blanc (variance Q ) vectoriel centré indépendant de X (k ) : W (k ) ∈ R N
. Moyenne m X (k ) de X (k ) : m X (k ) = Ak m X (0)
. Covariance C XX ( k + j , k ) de X (k ) ( j ≥ 0) : C XX (k + j , k ) = A j C XX (k , k )
. Covariance C XX ( k , k + j ) de X (k ) ( j ≥ 0) : C XX (k , k + j ) = C XX (k , k ) A j ( ) Τ

[
avec : C XX (k , k ) = E ( X (k ) − m X (k ) )( X (k ) − m X (k ) )Τ ]
1. 15
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Processus à représentation Markoviennne

Wn Combinaison
linéaire Yn
Xn
Bruit blanc centré Processus Markovien Processus Markovien

Le processus auquel on s’intéresse est parfois une combinaison linéaire stationnaire bruitée d’un processus linéaire
Markovien.
⎧ X (k + 1) = AX (k ) + W (k )
Un tel processus est décrit par le modèle d’Etat : ⎨ où :
⎩Y (k ) = CX (k ) + V (k )
. X (k ) est un processus stochastique vectoriel :
X (k ) ∈ R N
. Y (k ) est un processus stochastique vectoriel : Y (k ) ∈ R M
. A est une matrice carrée constante (du fait de la stationnarité) : A ∈ R N xN
. C est une matrice constante (du fait de la stationnarité) : C ∈ R M xN
. W (k ) est un bruit blanc (variance Q ) vectoriel centré indépendant de X (k ) et non corrélé à V (k ) : W ( k ) ∈ R
N

. V (k ) est un bruit blanc (variance R ) vectoriel centré indépendant de X (k ) et non corrélé à W (k ) : V ( k ) ∈ R


M

. Moyenne mY (k ) de Y (k ) : mY (k ) = C m X (k )
. Covariance CYY ( k + j , k ) de Y (k ) ( j ≥ 0) : CYY (k + j , k ) = C A j C XX (k , k )C Τ + Rδ j ,0
. Covariance CYY ( k , k + j ) de Y (k ) ( j ≥ 0) : ( ) Τ
CYY (k , k + j ) = C C XX (k , k ) A j C Τ + Rδ j ,0

1. 16
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

1 ANNEXE. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

. III. SYSTEMES STOCHASTIQUES


. ESTIMATION DE LA COVARIANCE

. RESOLUTION DU SYSTEME D’EQUATIONS DE YULE-WALKER PAR INVERSION MATRICIELLE

. ALGORITHME DE LEVINSON Résolution itérative du système de Yule-Walker

. METHODE DE BURG Résolution itérative du système de Yule-Walker avec contrainte de stabilité

1. 17
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

III. SYSTEMES STOCHASTIQUES


Un système stochastique (ainsi appelé abusivement) est un système déterministe excité par un signal aléatoire.

1. Transmission d’un signal aléatoire dans un système linéaire (utilisation des transformées)

Soit un système linéaire à Temps Continu H (s ) (ou à Temps Discret H (z ) ) et de Réponse Impulsionnelle h(t )
(resp. hn ) excité par un signal aléatoire X , stationnaire et ergodique, de valeur moyenne X et de fonction

d’autocorrélation : ϕ xx (τ ) = E [X 0 (t ) X 0 (t + τ )] où : X (t ) = X (t ) − X
0

(resp. à Temps Discret : ϕ xx k = E [X n0 X n0+ k )] ).

X (t ) H (s ) Y (t ) H (z )
TC : TD : X n Yn

1.1. Valeur moyenne de la sortie

TC :
[ ] [ ] [ ]
On a : Y (t ) = X (t ) * h(t ) d’où : E Y (t ) = E X (t ) * h(t ) = E X (t ) * h(t ) (le système est déterministe)

Y = X * h(t ) et : Y (t ) = X (t ) * h(t )
0 0

[ ]
car : Y ( t ) = Y ( t ) − Y = X ( t ) * h(t ) − X * h(t ) = X ( t ) − X * h( t ) = X ( t ) * h( t )
0 0

TD :
De même : E [Yn ] = X * hn

De façon à alléger les écritures, on supposera dans la suite que X (t ) (resp. X n ) et Y (t ) (resp. Yn ) sont des
signaux aléatoires centrés.

1.2. Intercorrélation

TC :
⎡ ∞

ϕ xy (τ ) = E [ X (t − τ )Y (t )] = E [ X (t − τ ) {X (t ) * h(t )}] = E ⎢ X (t − τ ) ∫ h(u ) X (t − u )du ⎥
⎣ −∞ ⎦
∞ ∞
ϕ xy (τ ) = ∫ h(u ) E [ X (t − τ ) X (t − u )]du = ∫ h(u ) ϕ xx (τ − u )du = ϕ xx (τ ) * h(τ )
−∞ −∞

ϕ xy (τ ) = h(τ ) * ϕ xx (τ ) ⎯⎯→
TL
Φ XY ( s ) = H ( s ) ⋅ Φ XX ( s )

TD :
De même : ϕ xy k = hk * ϕ xx k ⎯⎯→
TZ
Φ XY ( z ) = H ( z ) ⋅ Φ XX ( z )

1. 18
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

1.3. Autocorrélation et DSP (Densité Spectrale de Puissance)


TC :
⎡∞ ∞
⎤ ∞ ∞
ϕ yy (τ ) = E [Y (t )Y (t + τ )] = E ⎢ ∫ h(u ) X (t + τ − u )du ⋅ ∫ h(v) X (t − v)dv ⎥ = ∫ ∫ h(u )h(v) E[X (t + τ − u ) X (t − v)]dudv
⎣−∞ −∞ ⎦ −∞−∞

∞ ∞ ∞ ∞ ∞

∫ ∫ h(u )h(v)ϕ xx (τ − u + v)dudv ⎯⎯→ ∫ ∫ ∫ h(u)h(v)ϕ (τ − u + v)e − sτ dudvdτ


TL
ϕ yy (τ ) = Φ YY ( s) = xx
− ∞− ∞ − ∞ −∞ − ∞
∞ ∞ ∞
soit, en posant : τ −u +v = λ : Φ YY ( s) = ∫ h(u )e − su du ∫ h(v)e sv dv ∫ ϕ xx (λ )e − sλ dλ
−∞ −∞ −∞

ϕ yy (τ ) = h(τ ) * h(−τ ) * ϕ xx (τ )
−1
d’où : Φ YY ( s ) = H ( s ) ⋅ H (− s ) ⋅ Φ XX ( s ) et: ⎯TL
⎯⎯→

En prenant : s = jω (régime harmonique), on obtient la relation entre les Densités Spectrales de Puissance (DSP) :
2
Φ YY (ω ) = H (ω ) ⋅ Φ XX (ω ) encore noté : SY ( f ) = H ( f ) 2 ⋅ S X ( f ) f : fréquence

TD :
De même :
∞ ∞ ∞ ∞
ϕ yy k = ∑ ∑ ∫ ∫h h ϕ u v xx k −u + v
⎯⎯→
TZ
Φ YY ( z ) = H ( z ) ⋅ H ( z −1 ) ⋅ Φ XX ( z )
u = −∞ v = −∞ −∞−∞

ϕ yy k = hk * h−k * ϕ xx k
−1
et : Φ YY ( z ) = H ( z ) ⋅ H ( z −1 ) ⋅ Φ XX ( z ) ⎯TZ
⎯⎯→

En prenant : z = e jω (régime harmonique), on obtient la relation entre les Densités Spectrales de Puissance (DSP) :
2
Φ YY (ω ) = H (ω ) ⋅ Φ XX (ω ) encore noté : SY ( f ) = H ( f ) 2 ⋅ S X ( f ) f : fréquence

2. Processus générateur d’un signal aléatoire : filtres formeurs du 1er ordre


Un signal aléatoire peut être synthétisé (modélisé) comme la réponse d’un filtre linéaire excité par un bruit blanc :

Xn H (z ) Yn
Exemple : TD Bruit blanc Filtre formeur Signal aléatoire

Le filtre linéaire en question est appelé filtre formeur du signal ou encore processus générateur.
La description du signal peut alors consister en les paramètres du modèle linéaire (≡ du filtre linéaire) et en la variance
du bruit blanc (sa DSP dans le cas continu).

2.1. Processus générateur à Temps Discret (TD) du 1er ordre


Soit l’équation récurrente stochastique du 1er ordre 1 ):
(correspondant à un filtre linéaire causal de FT : H ( z) =
z−a
Yn+1 = aYn + X n avec a < 1 (filtre stable) où : {X n } est une séquence indépendante (≡ bruit blanc)
E[X n ] = 0
E[X n ] = 0
{X n } bruit blanc centré de variance V : E X n = V [ ] 2

ϕ xx k = E [ X n ⋅ X n+ k ] = Vδ k , 0
E [ X n ⋅ X n+ k ] = 0 ∀k ≠ 0

1. 19
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques


E [Y0 ] = y 0 ∆
où : Yn = Yn − y n
0
D’autre part, le filtre étant récursif il faut préciser les CIs :
E Y00[ ] 2 ∆
[
= E Y0 − y 0 ]
2 ∆
= P0
−1
Y ( z) z −1
On note hn la RI du filtre. On a : H ( z ) = = −1
⎯→ hn = a n−1Γn−1 . En particulier h0 = 0 .
⎯TZ

X ( z ) 1 − az
Analyse : Examen des caractéristiques statistiques de la séquence {Yn } en réponse à un bruit blanc {X n }

]
. Moyenne : E {Yn } = ? [ []
(Rappel : E ⋅ est un opérateur linéaire)

E [Yn+1 ] = aE [Yn ] ( {X n } est centrée) [ ]


→ E Yn = y n = a y 0
n
Comme a < 1 : y n → 0 quand n → ∞

Une fois le régime transitoire terminé, le filtre formeur fournit donc un signal stationnaire (du 1er ordre) centré.
Un signal stationnaire du 1er ordre est tel que sa moyenne est indépendante de l’origine des temps.
Un signal stationnaire du 2nd ordre, dit stationnaire au sens large est tel que sa moyenne et sa variance sont indépendantse de l’origine des temps.

. Variance : Var {Yn } = Pn = ? [ ]


[Y − y ] = [aY + X − a y ] = [a(Y − y ) + X ] = [aY + X ] = a Y + 2aY X + X
n +1 n +1
2
n n n
2
n n n
2
n
0
n
2 2
n
02
n
0
n
2
n

E [Y − y ] = E [a Y + 2aY X + X ] = a E [Y ] + E [X ] + 2aE [(Y − y )X ]


2 2 02 0 2 2 02 2
n +1 n +1 n n n n n n n n n

E [Y − y ] = a E [Y ]+ E [X ] + 2aE [ X Y ] − 2a y E [ X ] = a E [Y ] + E [X ] + 2aE [ X Y ]
2 2 02 2 2 02 2
n +1 n +1 n n n n n n n n n n

(
Or: ϕ xy = hk * ϕ xx k = hk * Vδ k , 0 = V hk * δ k , 0 = V ⋅ hk
k
) ( ) et E [ X nYn ] = ϕ xy 0 = V ⋅ h0 = 0 (car h0 = 0 )

[
→ E Yn +1 − y n +1 ] 2
= a 2 E Yn0 [ ] + E [X
2 2
n ] soit : Pn+1 = a 2 Pn + V

Cette équation de récurrence donnant la variance de {Yn } est initialisée par P0 . Sa solution est : (à l’aide de la TZ par ex.)

V
(
Pn = a 2 n P0 + V 1 + a 2 + L + a 2 n ) d’où : P∞ =
1− a2
(car a < 1 ).

V
Une fois le régime transitoire terminé, le filtre formeur fournit donc un signal stationnaire centré, de variance
1− a2
(régime stationnaire ou encore permanent).

. Autocorrélation de {Yn } : ? ϕ yy k = E [YnYn+ k ] = ?


Yn+1 = aYn + X n Yn+2 = a 2Yn + aX n + X n+1 Yn+3 = a 3Yn + a 2 X n + aX n+1 + X n+ 2 L
Yn+ k = a k Yn + a k −1 X n + a k −2 X n+1 + L + X n+ k −1

Donc, pour k > 0 : ϕ yy = E [YnYn + k ] = E Yn a k Yn + a k −1 X n + L + X n + k −1


k
[ ( )] [ ]
= a k E Yn2 = a k P∞ = a k
V
1− a2
V
L’autocorrélation étant une séquence paire, on a : ϕ yy k = a k
1 − a2

Synthèse : Déduction du filtre formeur en fonction des caractéristiques statistiques de la séquence {Yn } donnée

Inversement, si l’on veut générer un signal aléatoire {Yn } stationnaire centré, d’autocorrélation ϕ yy k = P a k , il
suffit d’utiliser un filtre du 1er ordre, d’équation : Yn +1 = aYn + X n excité par une séquence blanche {X n }
centrée, et de variance V = 1− a 2 P . ( )

1. 20
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

2.2. Processus générateur à Temps Continu (TC) du 1er ordre


La démarche est identique qu’à TD.
Soit l’équation différentielle stochastique du 1er ordre 1 ):
(correspondant à un filtre linéaire causal de FT : H ( s) =
s−a
Y& (t ) = αY (t ) + X (t ) avec α <0 (filtre stable) où : X (t ) est un bruit blanc
E [ X (t )] = 0
X (t ) bruit blanc centré de DSP V : ϕ xx (τ ) = E [ X (t ) ⋅ X (t + τ )] = Qδ (τ )
E [ X (t ) ⋅ Y (θ )] = 0 ∀θ < t
dW (t )
On peut écrire que X (t ) est la dérivée d’un processus de Wiener W (t ) : X (t ) =
dt
&
et l’équation Y (t ) = αY (t ) + X (t ) peut se mettre sous la forme : dY (t ) = αY (t )dt + dW (t )

Si on discrétise cette dernière relation (au pas d’échantillonnage T ), on obtient : Yn +1 − Yn = αYnT + Wn +1 − Wn


Les accroissements Wk +1 − Wk , étant indépendants, constituent une séquence indépendante (≡ blanche) {Bn }

centrée et de variance E Bn [ ]
2
= QT . La relation précédente : Yn+1 − Yn = αYnT + Wn+1 − Wn s’écrit donc :
a = 1 + αT
Yn+1 = (1 + αT )Yn + Bn relation de la même forme que celle du cas discret avec :
V = QT
Tous les résultats du cas discret traité avant s’appliquent, et ils sont ensuite ramenés à TC (en faisant T → 0 ) :

Analyse : Examen des caractéristiques statistiques de la réponse Y (t ) à un bruit blanc X (t )

[
. Moyenne : E Y (t ) = ? ]

y n+1 = (1 + αT ) y n → quand T → 0 y (t ) = α y (t ) Comme α < 0 : y (t ) → 0 quand t → ∞

En régime permanent, le filtre formeur fournit donc un signal centré.

. Variance : Var de Y (t ) ?

Pn+1 = (1 + αT ) Pn + QT
2
D’après les résultats du cas discret :

Quand T → 0 (en négligeant les termes en T ) :


2
P& (t ) = 2αP(t ) + Q
Q
En régime stationnaire ( P& ≡ 0 : équilibre atteint : Pn +1 = Pn ) : P (∞ ) = −

. Autocorrélation de Y (t ) : ? ϕ yy (τ ) = E [Y (t )Y (t + τ )] = ?
QT
Le résultat du cas discret donne ici : ϕ yy k = (1 + α T ) k
1 − (1 + αT )
2

Q α kT Q ατ
Quand T → 0 : (1 + α T ) et: ϕ yy (τ ) = −
α kT
k
≈e donc: ϕ yy k = − e e (TD → TC: τ = kT )
2α 2α

Synthèse : Déduction du filtre formeur en fonction des caractéristiques statistiques du signal Y (t ) donné

Inversement, si l’on veut générer un signal aléatoire Y (t ) stationnaire centré, d’autocorrélation ϕ yy (τ ) = Peα τ ,
il suffit d’utiliser un filtre du 1er ordre, d’équation : Y& (t ) = αY (t ) + X (t ) excité par un bruit blanc X (t )
centré, et de DSP Q = −2αP .

1. 21
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

3. Processus générateurs : MA, AR, ARMA


Le concept de processus générateur de signal a été particulièrement développé et appliqué avec des filtres numériques
ayant une Fonction de Transfert en z de la forme :
N

∑b z i
−i Xn H ( z) Yn
TD : H ( z) = i =0
N
Bruit blanc Filtre MA, AR, ARMA

1 + ∑ ai z −i

i =1

Lorsque le processus H ( z ) est excité par une séquence {X n } indépendante (≡ blanche), la sortie {Yn } est un signal
dit ARMA (Auto Regressive and Moving Average).
N

∑b z , le signal {Yn } est MA. (Le filtre H ( z ) est RIF (≡ à Réponse Impulsionnelle Finie)
−i
Si H ( z ) = i
i =0
1
Si H ( z ) = N
, le signal {Yn } est AR. (Le filtre H (z ) est RII (≡ à Réponse Impulsionnelle Infinie)
1 + ∑ ai z −i

i =1

Nous allons étudier chacun de ces 3 processus générateurs. Etant donné les caractéristiques statistiques de {Yn } (c’est-
à-dire ϕ yy k ), il s’agit de déterminer les paramètres ai et bi du filtre H (z ) qui génère {Yn } à partir de {X n } , dont il
faut aussi connaître la variance.
3.1. Signal MA
Xn H (z ) Yn
Bruit blanc Filtre MA

E[X n ] = 0
E[X n ] = 0
Les hypothèses sont : [ ]
E X n2 = V ≡
ϕ xx k = E [ X n ⋅ X n + k ] = Vδ k ,0
E [ X n ⋅ X n+ k ] = 0 ∀k ≠ 0
( {X n } bruit blanc centré de variance V )
N N
et : H ( z ) = ∑ bi z −i = ∑ hi z −i
i =0 i =0
N
En effet, comme H ( z ) est la TZ de la RI hn : H ( z ) = ∑h z
i =0
i
−i
, on a immédiatement : hi = bi i ∈ [0, N ] .
N N
Y ( z ) = H ( z ) X ( z ) = ∑ hi z −i X ( z ) ⎯→ Yn = ∑ hi X n−i
−1
On a immédiatement : ⎯TZ

i =0 i =0

. Moyenne de {Yn } : ? m = E [Yn ] = 0 puisque le bruit blanc d’entrée est centré.

. Autocorrélation de {Yn } : ? ϕ yy k = E [Yn−k Yn ] = E [YnYn+k ] ?


⎡ ⎤
ϕ yy k = E ⎢∑ hi X n−i ∑ h j X n+ k − j ⎥ = ∑∑ hi h j E [X n−i X n+ k − j ] = V ∑ hi hk +i
N N N N N −k
( ϕ yy = 0 ∀k > N )
k
⎣ i =0 j =0 ⎦ i = 0 j =0 i =0

car par hypothèse E [ X n ⋅ X n+ k ] = Vδ k , 0 d’où [


E X n −i X n + k − j ] est toujours nulle sauf pour j = k +i.
N −k
Les équations ϕ yy k = V ∑ hi hk +i sont non linéaires en les paramètres {hi } du filtre. Il faudrait utiliser un
i =0

algorithme de Programmation Non Linéaire pour obtenir la séquence {hi } du filtre à partir de la séquence {ϕ } .
yy k

1. 22
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

N
. Puissance P de {Yn } : ? P = ϕ yy 0 = V ∑ hi2
i =0

N 2

∑ hme− jmω
2
. DSP ΦYY (ω ) de {Yn } : ? ΦYY (ω ) = V H (e − jω ) = V
m=0

ou encore en prenant la TF (Discrète) de la séquence de corrélation : ΦYY (ω ) = ∑ϕ
k = −∞
yy k e − jkω

et comme Φ YY (ω ) est pair quand le signal Y est réel : ΦYY (ω ) = ϕ yy 0 + 2∑ ϕ yy k cos(kω )
k =1

3.2. Signal AR
Xn H (z ) Yn
Bruit blanc Filtre AR

E[X n ] = 0
E[X n ] = 0 1 Y ( z)
[ ]
Hypothèses : E X n2 = V ≡
ϕ xx k = E [ X n ⋅ X n+ k ] = Vδ k ,0
et H ( z ) = N
=
X ( z)
E [ X n ⋅ X n+ k ] = 0 ∀k ≠ 0 1 + ∑ ai z −i
i =1

( {X n } bruit blanc centré de variance V )

⎡ N
⎤ N
Y ( z ) ⎢1 + ∑ ai z −i ⎥ = X ( z ) ⎯→ Yn = X n − ∑ aiYn−i
−1
On a immédiatement : ⎯TZ

⎣ i =1 ⎦ i =1

Cette fois, la RI {hn } n’apparaît pas directement, mais on sait que : ϕ xy k = hk * ϕ xx k


ϕ xy k
Ici ϕ xx k = Vδ k , 0 donc ϕ xy k = hk * (Vδ k ,0 ) = V (hk * δ k ,0 ) = V ⋅ hk hk =
V
⎡⎛ N
⎞ ⎤
E ⎢⎜ Yn−k + ∑ aiYn−k −i ⎟Yn ⎥
ϕ xy k E [ X n−k Yn ] ⎝ ⎠ ⎦ N
= ⎣ X n = Yn + ∑ aiYn−i
i =1
hk = = car
V V V i =1

N
ϕ yy k + ∑ aiϕ yy k +i N
→ hk = i =1
→ ϕ yy k = V ⋅ hk − ∑ aiϕ yy k +i
V i =1

. Moyenne de {Yn } : ? m = E [Yn ] = 0 (car bruit blanc d’entrée centré) si les CIs sont nulles ou de moyenne
nulle.

. Autocorrélation de {Yn } : ? ϕ yy k = E [Yn−k Yn ] = ?


⎡ ⎛ N
⎞⎤ ⎡ N
⎤ N
ϕ yy k = E[Yn−k Yn ] = E ⎢Yn−k ⎜ X n − ∑ aiYn−i ⎟⎥ = E[ X nYn−k ] − E ⎢∑ aiYn−iYn−k ⎥ = E[ X n+ k Yn ] − ∑ ai E[Yn−iYn−k ]
⎣ ⎝ i =1 ⎠⎦ ⎣ i =1 ⎦ i =1

N
ϕ xy k E [ X n−k Yn ] ϕ xy −k E [ X n+k Yn ] ϕ yx k
ϕ yy k = V ⋅ h−k − ∑ aiϕ yy k −i car : hk = = → h−k = = =
i =1 V V V V V

1. 23
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

N N
.k = 0 : ϕ yy 0 = V ⋅ h0 − ∑ aiϕ yy −i = V ⋅ h0 − ∑ aiϕ yy i car une autocorrélation est paire.
i =1 i =1
N N
Comme h0 = 1 (en effet : Yn = X n − ∑ aiYn−i → hn = δ n − ∑ ai hn−i → h0 = 1 (filtre au repos
i =1 i =1
initialement))
N
on a : ϕ yy 0 = V − ∑ aiϕ yy i
i =1

N N
.k > 0 : ϕ yy k = −∑ aiϕ yy k −i car h−k ≡ 0 pour k > 0 : le filtre hn est causal : Yn = X n − ∑ aiYn−i
i =1 i =1

N
on a aussi : ϕ yy k = −∑ aiϕ yy i−k car une autocorrélation est paire.
i =1

Ces équations peuvent s’écrire :


N
ϕ yy 0 + ∑ aiϕ yy i = V
i =1
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N ⎧V si k = 0
i =1
↔ pour 0 ≤ k ≤ N : ∑ϕ yy k − n an = ⎨
0 1 ≤ k ≤ N
( a0 = 1 ) ( ϕ yy paire)
k
n =0 ⎩ si
L
N
ϕ yy N + ∑ aiϕ yy N −i = 0
i =1
soit, sous forme matricielle : ce sont les équations de Yule-Walker :
⎡ ϕ yy 0 ϕ yy 1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
⎢ yy 1 ⎢ ⎥=⎢ ⎥ ou encore : Ra =v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦
La matrice d’autocorrélation R de terme général ri , j ne dépendant que de i − j ( ϕ yy paire) est dite matrice de Toeplitz.
k

(Dans une telle matrice, les parallèles à la diagonale principale sont constituées de termes égaux).On montre que R ≥ 0 .
⎡1 2 3 4⎤
Exemple de matrice de Toeplitz : ⎢2 1 2 3 ⎥⎥
R=⎢
⎢3 2 1 2⎥
⎢ ⎥
⎣4 3 2 1⎦

Ainsi, à partir de la connaissance de la séquence d’autocorrélation de {Yn }, la relation matricielle permet de déterminer
les N + 1 inconnues : V et les paramètres ai du filtre formeur.
Pour réaliser ce calcul, une inversion matricielle est possible (cf annexe) mais on utilise généralement l’algorithme efficace itératif de Levinson ou
encore la méthode de Burg (cf annexe) qui évitent une inversion matricielle en mettant à profit le fait que R a le caractère Toeplitz.

3.3. Signal ARMA


Xn H (z ) Yn
Bruit blanc Filtre ARMA

Les types classiques de DSP de signaux AR et MA étant les suivants, pour les satisfaire, il pourra être nécessaire de
modéliser certains signaux par un processus ARMA :

1. 24
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

DSP DSP DSP

0 0.5 f 0 0.5 f 0 0.5 f


DSP type d'un signal AR DSP type d'un signal MA DSP type d'un signal ARMA

E[X n ] = 0
E[X n ] = 0
Les hypothèses sont : [ ]
E X n2 = V ≡
ϕ xx k == E [ X n ⋅ X n+ k ] = Vδ k , 0
E [ X n ⋅ X n+ k ] = 0 ∀k ≠ 0
( {X n } bruit blanc centré de variance V )
N

Y ( z) ∑b z i
−i

et la FT d’un processus ARMA : H ( z) = = i =0


N
X ( z)
1 + ∑ a i z −i
i =1

Cette notation suppose que si l’ordre du numérateur est inférieur à N , un certain nombre de coeffs bi sont nuls.
L’équation de récurrence s’obtient à partir de la FT du processus :
N

Y ( z)
∑b z i
−i

⎛ N
⎞ ⎛ N ⎞ N N
→ Y ( z )⎜1 + ∑ ai z −i ⎟ = X ( z )⎜ ∑ bi z −i ⎟ ⎯TZ
⎯→ Yn = ∑ bi X n −i − ∑ aiYn −i
−1
H ( z) = = i =0
N

X ( z) ⎝ i =1 ⎠ ⎝ i =0 ⎠
1 + ∑ ai z −i i =0 i =1

i =1

. Moyenne de {Yn } : ? m = E [Yn ] = 0 (car bruit blanc d’entrée centré) si les CIs sont nulles ou de moyenne
nulle.

. Autocorrélation de {Yn } : ? ϕ yy k = E [Yn−k Yn ] = ?


⎡ ⎛ N N
⎞⎤ ⎡ N
⎤ ⎡ N
⎤ N N
ϕ yy k = E [Yn−k Yn ] = E ⎢Yn−k ⎜ ∑ bi X n−i − ∑ aiYn−i ⎟⎥ = E ⎢∑ bi X n−iYn−k ⎥ − E ⎢∑ aiYn−iYn−k ⎥ = −∑ ai E [Yn−iYn−k ] + ∑ bi E [ X n−iYn−k ]
⎣ ⎝ i =0 i =1 ⎠⎦ ⎣ i =0 ⎦ ⎣ i =1 ⎦ i =1 i =0

N N
→ ϕ yy k = −∑ aiϕ yy k −i + ∑ bi E[ X n−iYn−k ]
i =1 i =0

Le 2nd terme du membre de droite étant non linéaire en ai , bi , il n’est pas simple d’extraire les paramètres du modèle
à partir d la matrice d’autocorrélation.

On peut cependant le faire en 2 étapes en s’appuyant sur les résultats précédents (MA et AR).
N N
On peut d’abord remarquer que pour k > N l’équation : ϕ yy = −∑ aiϕ yy + ∑ bi E[ X n−iYn−k ] se réduit à :
k k −i
i =1 i =0

N
ϕ yy k = −∑ aiϕ yy k −i
N
ϕ yy k = −∑ aiϕ yy k −i si k > N qui a la même forme que ϕ yy k du cas AR :
i =1 i =1

N N
Si donc on écrit : ϕ yy = −∑ aiϕ yy + ∑ bi E [ X n−iYn−k ] pour k = N , N + 1,L,2 N on pourra extraire les coeffs ai
k k −i
i =1 i =0

(et le terme b0 bN V ), soit :

1. 25
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

⎡ ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎤ ⎡ 1 ⎤ ⎡b0 bN V ⎤
⎢ϕ ⎥⎢ ⎥ ⎢ ⎥
⎢ yy N +1 ϕ yy N L ϕ yy1 ⎥ ⎢ a1 ⎥ = ⎢ 0 ⎥
⎢ M M M M ⎥⎢ M ⎥ ⎢ M ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣⎢ ϕ yy 2 N ϕ yy 2 N −1 L ϕ yy N ⎥⎦ ⎣a N ⎦ ⎣ 0 ⎦

Pour la 2nde étape (identification des coeffs bi ), introduisons un signal intermédiare {U n } pour réécrire l’équation de
N N
récurrence du filtre : Yn = ∑b X
i =0
i n −i − ∑ aiYn−i :
i =1
N
Soit : U n = Yn + ∑ aiYn−i
i =1
N N N
comme : Yn = ∑b X
i =0
i n −i − ∑ aiYn−i ,
i =1
on a aussi : U n = X n + ∑ bi X n−i (en supposant b0 = 1 )
i =1

Cette dernière relation fait apparaître {U n } comme un signal MA, donc d’autocorrélation (établie dans le cas MA) :
N −k
ϕ uu k = V ∑ bi bk +i si k ≤ N et : ϕ uu k = 0 si k > N
i =0
N
A partir du signal {Yn } filtré par le filtre : U n = Yn + ∑a Y i n −i , on peut obtenir ϕ uu k et, par Programmation Non
i =1
N −k
Linéaire sur la relation : ϕ uu k = V ∑ bi bk +i , on peut obtenir les coeffs bi .
i =0

Ayant maintenant le processus générateur ARMA de {Yn } :

N {U n } ⎛ N

−1

{X n } ∑ bi z −i ⎜1 + ∑ ai z −i ⎟ {Yn }
i =0 ⎝ i =1 ⎠
MA AR

N 2

∑b e m
− jω m

la DSP de Y (ω ) s’écrit : Φ YY (ω ) = m =0
N
1 + ∑ a m e − jω m
m =1

ou, en tenant compte du cas déja évoqué où Y est réel, pour lequel : Φ YY (ω ) = ϕ yy 0 + 2∑ ϕ yy k cos(kω )
k =1
N
ϕ uu 0 + 2∑ ϕ uu k cos(kω )
on a encore : Φ YY (ω ) = k =0
2
N
1 + ∑ am e − jω m

m =1

4. Conclusion
La représentation paramétrique d’un signal sous forme de processus générateur constitue une alternative aux méthodes
classiques de calcul de spectre d’un signal. Une application importante des processus générateurs est l’identification
(modélisation) de signal, et aussi la compression de signal.

1. 26
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

ESTIMATION DE LA COVARIANCE

L’objectif est de déterminer la fonction d’autocovariance ϕ XX k


, notée aussi souvent R XX k , d’un signal aléatoire (ou
pas) xk à partir de la séquence xk { } des échantillons du signal.
Ergodicité à court terme Méthode d’estimation de la moyenne et de la covariance la plus courante
Soit X n un processus aléatoire à TD.

L’hypothèse d’ergodicité (moyennes statistiques ≡ moyennes temporelles) conduit aux formules suivantes d’estimation
de la moyenne m et de la fonction d’autocovariance R XX k :

⎧ 1 K −1
⎧ 1 K −1 ⎪ mˆ = < X > = ∑ Xn
⎪mˆ = K ∑ X n ⎪ K n=0
⎪ n=0 soit, dans le cas d’un processus X n réel : ⎨
⎨ ⎪ Rˆ 1 K − k −1 0
⎪⎩ XX k K ∑
⎪ Rˆ 1 K − k −1 0 = X n + k X n0

*

XX k = X n + k X n0
⎪⎩ K n=0 n=0

K est le nombre de points d’observation de X n et doit être le plus élevé possible


*
représente la conjuguaison complexe
X n0 est le processus centré (cas réel) : X n0 = X n − mˆ
Ergodicité à long terme
Lorsque le nombre de points du signal est élevé, l’estimation par ergodicité de l’autocovariance peut tenir compte de la
moyenne pour effectuer un recentrage du signal, et corriger la normalisation du support de calcul :
⎧ 1 K −1
⎧ 1 K −1
⎪ mˆ = < X > = ∑ Xn
⎪mˆ = K ∑ X n soit, dans le cas d’un processus X n réel :
⎪ K n=0


n =0 ⎨ K − k −1
⎪ Rˆ = 1
⎪⎩ XX k K − k ∑
K − k −1
⎪ Rˆ = 1 X n0+ k X n0

*
X n0+ k X n0
⎪⎩ XX k K − k n=0 n=0

K est le nombre de points d’observation de X n et doit être le plus élevé possible


*
représente la conjuguaison complexe
X n0 est le processus centré (cas réel) : X n0 = X n − mˆ

Calcul direct Cas X n réel

Dans l’établissement des différents résultats, on a supposé les covariances connues. En pratique, ces dernières sont
estimées à partir des échantillons dont on dispose. De plus, on ne dispose souvent que d’une seule réalisation xn du
processus X n . Ainsi, pour obtenir les N + 1 premières valeurs RXX 0 ,L, RXX N { } de l’autocovariance, on peut
utiliser les méthodes suivantes :

Méthode des corrélations on doit prendre N << K , mais typiquement on peut aller jusqu’à N = K − 1 (N <K)

⎡ x0 ⎤
⎢ M ⎥
⎢ ⎥ ⎡ x0 x1 L x K −1 0 L 0 ⎤
⎡ R XX 0 ⎤ ⎢
⎢ ⎥ 1 ⎢ x K −1 ⎥ 0 x0 x1 L x K −1 L 0 ⎥⎥
⎢ M ⎥= K D⎢ 0 ⎥ avec : D=⎢
⎢ ⎥ ⎢ M M M L M L 0 ⎥
⎢ R XX ⎥ ⎢ ⎥
⎣ N ⎦ ⎢ M ⎥ 0 L 0 x0 x1 L x K −1 ⎦

⎢ ⎥
⎢⎣ 0 ⎥⎦
(N + 1)x1 (K + N )x1 (N + 1)x (K + N )
1. 27
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

1
Cette façon de procéder garantit que la matrice de covariance estimée, définie par DDΤ , est une matrice de
K
Toeplitz définie positive.
(le caractère Toeplitz d’une matrice est intéressant car il autorise l’implémentation rapide, temps réel, de l’inversion matricielle)

a , on peut écrire que a DD Τ a = (D a )(D a ) . On en conclue, en notant que le scalaire (D a )(D a ) est la somme des modules
Τ Τ
(Pour tout vecteur
au carré des composantes de D a , et est donc positif.)

Cette méthode revient à border la séquence observée, à droite et à gauche, par N zéros. Son inconvénient majeur est
donc d’introduire des données fausses, en l’occurence des 0, de part et d’autre des données observées.

Quand la taille K de l’observation est faible, on lui préfère la méthode des covariances.

Méthode des covariances on doit prendre N << K , mais typiquement on peut prendre N = K / 10 (N <K)

⎡ x0 x1 L x K − N −1 ⎤
⎡ R XX 0 ⎤ ⎡ x0 ⎤ ⎢ x
⎢ ⎥ 1 ⎢ ⎥ x2 L x K − N ⎥⎥
⎢ M ⎥ = K D⎢ M ⎥ avec : D=⎢ 1
⎢ M M M M ⎥
⎢ R XX ⎥ ⎢⎣ x K − N −1 ⎥⎦ ⎢ ⎥
⎣ N ⎦
⎣ xN x N +1 L x K −1 ⎦
(N + 1)x1 (K − N )x1 (N + 1)x (K − N )
1
La matrice de covariance estimée, définie par DDΤ , reste bien entendu positive mais elle perd alors son
K − N −1
caractère Toeplitz nécessaire à certains algorithmes rapides d’inversion matricielle.

Il existe 2 autres variantes de construction de D , suivant que l’on borde à droite ou à gauche par des zéros.

Méthode des covariances (variante bordage à droite) N << K Typiquement N = K / 10 (N <K)

⎡ x0 x1 L L L x K −1 ⎤
⎢ x1 x2 L L x K −1 0 ⎥⎥
Par exemple : D=⎢
⎢ M M M M M M ⎥
⎢ ⎥
⎣ xN L x K −1 0 L 0 ⎦

⎡ x0 x1 L L L x K −1 ⎤
⎡ R XX 0 ⎤ ⎡ x0 ⎤ ⎢ x
⎢ ⎥ 1 ⎢ ⎥ x2 L L x K −1 0 ⎥⎥
⎢ M ⎥ = K D⎢ M ⎥ avec : D=⎢ 1
⎢ M M M M M M ⎥
⎢ R XX ⎥ ⎢⎣ x K −1 ⎥⎦ ⎢ ⎥
⎣ N ⎦
⎣ xN L x K −1 0 L 0 ⎦
(N + 1)x1 (K )x1 ( N + 1)x (K )
Il est évident que toutes ces méthodes donnent sensiblement les mêmes résultats si K >> N .

1. 28
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

RESOLUTION DU SYSTEME D’EQUATIONS DE YULE-WALKER PAR INVERSION MATRICIELLE

⎡ ϕ yy 0 ϕ yy1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
⎢ yy1 ⎢ ⎥=⎢ ⎥ ≡ Ra =v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦

avec :

⎡ ϕ yy 0 ϕ yy1 L ϕ yy N ⎤ ⎡1⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢a ⎥ ⎢0⎥
R=⎢ 1 a = ⎢ 1 ⎥ : ( N + 1) x (1) v = ⎢ ⎥ : ( N + 1) x (1)
yy
: ( N + 1) x ( N + 1)
⎢ M M M M ⎥ ⎢ M ⎥ ⎢M⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎣0⎦

⎧ ⎛ V ⎞⎟
⎪ϕ yy 0 ⎜1 − + ϕ yy1a1 + L + ϕ yy N a N = 0
⎪ ⎜ ϕ yy ⎟
⎝ 0 ⎠
⎧ϕ yy 0 + ϕ yy1a1 + L + ϕ yy N a N = V ⎪
⎪ ⎪ ⎛ V ⎞⎟ ϕ yy1
⎪ϕ yy + ϕ yy 0 a1 + L + ϕ yy N −1a N = 0 ⎪ϕ yy 1 ⎜⎜1 − ⎟
+ ϕ yy 0 a1 + L + ϕ yy N −1a N = −V
→ ⎨ 1 → ⎨ ⎝ ϕ yy 0 ⎠ ϕ yy 0
⎪L ⎪
⎪ϕ ⎪L
⎩ yy N + ϕ yy N −1a1 + L + ϕ yy 0 a N = 0 ⎪ ⎛
⎪ϕ ⎜1 − V ⎟ + ϕ
⎞ ϕ yy N
yy N −1 a1 + L + ϕ yy 0 a N = −V
⎪ yy N
⎜ ϕ yy ⎟ ϕ yy 0
⎩ ⎝ 0 ⎠

⎡ a0 ⎤ ⎡ 0 ⎤
⎢a ⎥ ⎢ϕ ⎥
V ⎢ yy1 ⎥ V
→ R⎢ ⎥ = −
1
avec : a0 = 1 −
⎢ M ⎥ ϕ yy 0 ⎢ M ⎥ ϕ yy 0
⎢ ⎥ ⎢ ⎥
⎣a N ⎦ ⎢⎣ϕ yy N ⎥⎦

⎡ a0 ⎤ ⎡ 0 ⎤ ⎡ a0 ⎤ ⎡ α 0 ⎤ ⎡ 0 ⎤
⎢a ⎥ ⎢ϕ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢
∆ ϕ

1 1 ⎥ ⎢α 1 ⎥
1⎢ 1⎥ 1 ∆ 1 a ∆
−1 ⎢ yy 1 ⎥ ⎢ ⎢ yy 1 ⎥
→ =− R → α =− R −1 b avec : α = = et b =
V⎢ M ⎥ ϕ yy 0 ⎢ M ⎥ ϕ yy 0 V⎢ M ⎥ ⎢ M ⎥ ⎢ M ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣a N ⎦ ⎢⎣ϕ yy N ⎥⎦ ⎣a N ⎦ ⎣α N ⎦ ⎢⎣ϕ yy N ⎥⎦

a0 1 ⎛⎜ V ⎞⎟ ϕ yy 0
Comme : α 0= = 1− , on en déduit : V=
V V ⎜⎝ ϕ yy 0 ⎟⎠ ϕ yy 0α 0 + 1

⎡ a1 ⎤ ⎡α 1 ⎤
⎢a ⎥ ⎢ ⎥
Puis on obtient les paramètres ai ( i = 1, 2,L, N ) : ⎢ 2 ⎥ =V ⎢α 2 ⎥
⎢ M ⎥ ⎢ M ⎥
⎢ ⎥ ⎢ ⎥
⎣a N ⎦ ⎣α N ⎦
1. 29
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

ALGORITHME DE LEVINSON (I) Résolution itérative du système de Yule-Walker


La méthode de résolution des équations de Yule-Walker par inversion matricielle est coûteuse en temps calcul et peut
engendrer des erreurs numériques dues à l’inversion matricielle. L’algorithme de Levinson procure la même solution
que la méthode directe par inversion matricielle mais avec un algorithme itératif temps réel.

⎡ ϕ yy 0 ϕ yy 1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
⎢ yy1 ⎢ ⎥=⎢ ⎥ qui peut aussi s’écrire : Ra = v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦

ou encore :
N ⎧V si k = 0
pour 0 ≤ k ≤ N : ∑ϕ yyk − i ai = ⎨ ( a0 = 1 ) ( ϕ yy paire)
⎩0 si 1 ≤ k ≤ N
k
i =0

Le principe de l’algorithme de Levinson, qui permet de résoudre efficacement les équations précédentes, repose sur
une itération sur l’ordre n du modèle : n = 0,1 L N

[]
On écrit donc les équations précédentes en plaçant un indice n sur ai et V , signifiant que l’on utilise le modèle à n
paramètres et l’on va itérer sur n = 0,1 L N :
n ⎧V[n ] si k = 0
pour 0 ≤ k ≤ n : ∑ ϕ yy ai[n] = ⎨ [n ]
( a0 = 1 ) ( ϕ yy paire)
⎩0 si 1 ≤ k ≤ n
k −i k
i =0
[n ] [n ] [n ]
Les solutions à l’ordre n : a0 , a1 , ..., an , V[n ] sont utilisées pour résoudre l’équation du modèle d’ordre n + 1 :
n +1 ⎧V[n+1] si k = 0
pour 0 ≤ k ≤ n + 1 : ∑ϕ yyk −i ai[n+1] = ⎨ [n ]
( a0 = 1 ) ( ϕ yy paire)
⎩0 si 1 ≤ k ≤ n + 1
k
i =0

La procédure de Levinson est la suivante : on itére de n = 0, 1 L N − 1 :


1. n = 0 , a0[n ] = 1 , V[n ] = ϕ yy0 (Initialisation)
[n ]
2. ρ[n +1] = −V[n−]1 ∑ ϕ yy n +1− k
ak[n ]
k =0

3. V[n +1] = 1 − ρ( 2
[n +1] )V[ ]
n

1 si k =0
[n +1] [n ] [n ]
4. pour 0 ≤ k ≤ n + 1 : ak = ak + ρ [n +1]an +1− k si 1≤ k ≤ n
ρ [n +1] si k = n +1
5. n = n + 1
6. Revenir à 2. tant que n < N

⎡1⎤
⎢a ⎥
Le vecteur résultat ⎢ 1 ⎥ et le scalaire V cherchés sont obtenus en fin d’itérations ( n = N ) :
⎢ M ⎥
⎢ ⎥
⎣a N ⎦
⎡1⎤ ⎡ 1 ⎤
⎢ a ⎥ ⎢a [ N ] ⎥ [N ]
⎢ 1⎥=⎢ 1 ⎥ (soit : ai = ai , n =1, 2L N ) et : V = V[ N ] .
⎢ M ⎥ ⎢ M ⎥
⎢ ⎥ ⎢ [N ] ⎥
⎣a N ⎦ ⎣a N ⎦
1. 30
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

L’algorithme de Levinson peut être écrit ainsi : (itération de n = 0,1 L N −1) :

n = 0, a0 = 1 , V = ϕ yy0 (Initialisation)
Pour 0 ≤ n ≤ N − 1 :
{
n
ρ = − V −1 ∑ ϕ yy n +1− k
ak
k =0

V = (1 − ρ )V 2

1 si k =0
Pour 0 ≤ k ≤ n + 1 : ak = ak + ρ an+1−k si 1≤ k ≤ n
ρ si k = n +1
}

⎡1⎤
⎢a ⎥
Le vecteur résultat ⎢ 1 ⎥ et le scalaire V cherchés sont obtenus en fin d’itération.
⎢ M ⎥
⎢ ⎥
⎣a N ⎦

1. 31
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

ALGORITHME DE LEVINSON (II) Résolution itérative du système de Yule-Walker

⎡ R0 R1 L RN ⎤ ⎡ 1 ⎤ ⎡ P ⎤
⎢R R0 L RN −1 ⎥⎥ ⎢⎢ a1 ⎥⎥ ⎢ 0 ⎥
⎢ 1 =⎢ ⎥ qui peut aussi s’écrire : Ra = v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ RN RN −1 L R0 ⎦ ⎣aN ⎦ ⎣ 0 ⎦

La matrice de covariance R est une matrice de Toeplitz. Son terme général Ri désigne l’autocovariance du signal xn .

Le principe de l’algorithme de Levinson repose sur le calcul de la solution au rang n à partir de la solution au rang
[]
n − 1 . Pour cela, on adopte la notation suivante où l’ordre n , noté en indice n , doit être itéré de 0 à N :
( P[n−1] est la puissance du bruit qui peut être vu comme l’erreur quadratique d’estimation au rang n − 1 )

⎡ R0 R1 L Rn ⎤ ⎡a0[n ] ⎤ ⎡ P[n ] ⎤
⎢R ⎢ ⎥
⎢ 1 R0 L Rn −1 ⎥⎥ ⎢a1[n ] ⎥ ⎢ 0 ⎥
=⎢ ⎥ avec a0[n ] = 1
⎢M M M M ⎥⎢ M ⎥ ⎢ M ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ Rn Rn −1 L R0 ⎦ ⎣⎢an[n ] ⎦⎥ ⎣ 0 ⎦

[ L R0 ] et rnF = [R0 L Rn ]
Τ Τ
En posant : rn = Rn
B
(B et F signifiant Backward et Forward)

⎡P ⎤
on peut écrire le système de Yule-Walker de façon plus concise : R n a nF = ⎢ [n ] ⎥
⎣0⎦
⎡P ⎤
soit, au rang n − 1 : R n −1 a nF−1 = ⎢ [n −1] ⎥
⎣ 0 ⎦
⎡R n −1 rnB ⎤ ⎡ R0 rnF Τ ⎤
En passant au rang n , la matrice de covariance s’écrit : Rn = ⎢ B Τ ⎥=⎢ ⎥
⎣ rn R0 ⎦ ⎣rnF R n −1 ⎦
⎡ P[n −1] ⎤
⎡a nF−1 ⎤ ⎡R n −1 rnB ⎤ ⎡a nF−1 ⎤ ⎢
On a : Rn ⎢ ⎥ = ⎢ BΤ ⎥⎢ ⎥ = ⎢ 0 ⎥ avec :
⎥ [
a nF−1 = 1 a1[n −1] L an[n−−11] ] Τ

⎣ 0 ⎦ ⎣ rn R0 ⎦ ⎣ 0 ⎦
⎢⎣rnB Τa nF−1 ⎥⎦
⎡rnF Τa nB−1 ⎤
⎡ 0 ⎤ ⎡ R0 r ⎤ ⎡ 0 ⎤ ⎢ FΤ
On a aussi : R n ⎢ B ⎥ = ⎢ F ⎥ ⎢ B ⎥ = ⎢ 0 ⎥ avec :
n ⎥
[
a nB−1 = an[n−−11] L a1[n −1] 1]Τ

⎣a n −1 ⎦ ⎣rn R n −1 ⎦ ⎣a n −1 ⎦ ⎢ P ⎥
⎣ [n −1] ⎦
⎡ P[n −1] + K nrnF Τa nB−1 ⎤
⎡ ⎡a n −1 ⎤
F
F ⎡
0 ⎤⎤ ⎢ ⎥
Par combinaison linéaire : R n ⎢ ⎢ ⎥ + K na n −1 ⎢ B ⎥ ⎥ = ⎢ 0 ⎥
⎢⎣ ⎣ 0 ⎦ ⎣a n −1 ⎦ ⎥⎦ ⎢r B Τa F + K P ⎥
⎣ n n −1 n [n −1] ⎦

1. 32
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

BΤ F
En choisissant le coefficient K n tel que : rn a n −1 + K n P[n −1] = 0 , on obtient la solution au rang n qui s’écrit en
fonction de la solution au rang n − 1 :

⎧ rnB Τa nF−1
⎪ nK = −
⎪ P[n −1]

⎪ F ⎡ ⎡a n −1 ⎤ F ⎡
0 ⎤⎤
F
a
⎨ n ⎢⎢ = ⎥ + K na n −1 ⎢ B ⎥ ⎥
⎪ ⎢⎣ ⎣ 0 ⎦ ⎣a n −1 ⎦ ⎥⎦

(
⎪ P[n ] = P[n −1] 1 − K n
2
)
⎪⎩

P[n ] étant positif (il représente une erreur quadratique), la dernière équation montre que les coefficients K n sont de
module inférieur à 1. Les coefficients K n portent le nom de coefficients de réflexion.

Algorithme de Levinson
1 K
∑ a0[0 ] = 1
2
Valeurs initiales : P0 = R0 = xn
K n=0
Pour n = 1,L, N − 1 :
{

Kn = −
[R a[ n −1]
+ L + R0 an[n−−11]
n 0 ]
Pn −1
Pour k = 1,L, n − 1 :
{
a0[n ] = 1
ak[n ] = ak[n −1] + K n an[n−−k1]
an[n ] = K n
}
(
P[n ] = P[n −1] 1 − K n2 )
}

Vérification à l’étape n = 1

⎧ R1
⎪ K1 = − R
⎪ 0
⎪a [1] = 1
⎨ 0
⎪a [1] = K
⎪ 1 1

(
⎪⎩ P[1] = P[0 ] 1 − K12 )

1. 33
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

METHODE DE BURG Résolution itérative du système de Yule-Walker avec contrainte de stabilité

La méthode de résolution des équations de Yule-Walker par inversion matricielle ou par l’algorithme de Levinson peut
conduire à une solution d’un filtre non stable. La méthode itérative de Burg pour la résolution des équations de Yule-
Walker garantit un filtre stable comme solution, même si cette solution n’est pas exactement identique à la solution
directe ou de Levinson des équations de Yule-Walker (solution approchée - du fait de la contrainte de stabilité ajoutée
au système de Yule-Walker - mais toujours stable).

⎡ R0 R1 L RN ⎤ ⎡ 1 ⎤ ⎡ P ⎤
⎢R R0 L RN −1 ⎥⎥ ⎢⎢ a1 ⎥⎥ ⎢ 0 ⎥
⎢ 1 =⎢ ⎥ qui peut aussi s’écrire : Ra = v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ RN RN −1 L R0 ⎦ ⎣aN ⎦ ⎣ 0 ⎦

La matrice de covariance R est une matrice de Toeplitz. Son terme général Ri désigne l’autocovariance du signal xn .

L’idée de Burg fut de calculer directement à partir des données une estimée des coefficients de réflexion K n et ce, sans
⎧ rnB Τa nF−1
passer par le calcul des covariances. On en déduit, si nécessaire, par la relation de Levinson : ⎪K n = − P[n −1]


⎪ F ⎡ ⎡a n −1 ⎤ F ⎡
0 ⎤⎤
F

⎨a n = ⎢ ⎢ ⎥ + K na n −1 ⎢ B ⎥ ⎥
⎪ ⎣⎢ ⎣ 0 ⎦ ⎣a n −1 ⎦ ⎦⎥

(
⎪ P[n ] = P[n −1] 1 − K n
2
)
⎩⎪
les coefficients du modèle. Pour cela, on repart de l’expression de l’erreur de prédiction au rang N : ( t est discret)
ε nF (t ) = x(t ) + a1[n ] x(t − 1) + L + an[n ] x(t − n) = a nF Τ x (errreur directe) F ≡ Forward
ε nB (t ) = an[n ] x(t ) + an[n−]1 x(t − 1) + L + x(t − n) = a nB Τ x (errreur rétrograde) B ≡ Backward

⎡ ⎡a nF−1 ⎤ ⎡ 0 ⎤⎤
En utilisant les coefficients de réflexion, on a : ε (t ) = ⎢ ⎢ ⎥ + K n ⎢ B ⎥ ⎥ x(t ) = ε nF−1 (t ) + K nε nB−1 (t − 1)
F
n
⎣⎢ ⎣ 0 ⎦ ⎣a n −1 ⎦ ⎦⎥
⎡⎡ 0 ⎤ ⎡a nF−1 ⎤ ⎤
et : ε (t ) = ⎢ ⎢ B ⎥ + K n ⎢ ⎥ ⎥ x(t ) = ε nB−1 (t − 1) + K nε nF−1 (t )
B
n
⎣⎢ ⎣a n −1 ⎦ ⎣ 0 ⎦ ⎦⎥

Pour trouver un estimateur de K n , Burg propose de minimiser par rapport à K n , la somme des erreurs :

E ⎡ ε nF (t ) + ε nB (t ) ⎤ . En partant des 2 équations précédentes, on aboutit à une équation du 2nd degré en K n qui,
2 2

⎢⎣ ⎥⎦

par annulation de sa dérivée, conduit à : K n = −


[ ]
2 E ε nB−1 (t − 1)ε nF−1 (t )
E ⎡ ε nF−1 (t ) + ε nB−1 (t − 1) ⎤
2 2

⎢⎣ ⎥⎦

Dans l’algorithme de calcul des coefficients K n , les espérances (moyennes statistiques) sont remplacées par des
moyennes temporelles (ergodicité). Pour un processus AR d’ordre N − 1 , on a :

1. 34
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

Méthode de Burg
1 K

2
Valeurs initiales : P0 = R0 = xn ε1F (t ) = ε1B (t ) = x(t ) t = 0,1,L, K − 1
K n=0
Pour n = 1,L, N − 1 :
{
K −1
2∑ ε nB−1 (t − 1)ε nF−1 (t )
K n = − K −1 t =n

∑ε
2 2
F
n −1 (t ) + ε nB−1 (t − 1)
t =n
Pour k = 2,L, n − 1 :
{
a0[n ] = 1
ak[n ] = ak[n −1] + K n an[n−−k1]
an[n ] = K n
}
(
P[n ] = P[n −1] 1 − K n2 )
ε (t ) = ε
F
n
F
n −1 (t ) + K nε nB−1 (t − 1) t = 0,1,L, K − 1
ε (t ) = ε
B
n
B
n −1 (t − 1) + K ε F
n n −1 (t ) t = 0,1,L, K − 1
}

Une propriété de l’algorithme de Burg est de garantir que les estimées de coefficients de réflexion sont de module
inférieur à 1.

__________

1. 35
Traitement du Signal TP 1. Signaux. Systèmes

TP 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques


II. SIGNAUX ALEATOIRES
ESTIMATION DE LA COVARIANCE
Faire varier les paramètres K et N pour voir leur influence pour chaque méthode.

K : Nombre d'échantillons du signal observé (ici un bruit blanc)


N : Fenêtre coulissante à l'intérieur de l'intervalle K ou bordant K à gauche ou à droite: N<K

ORIGIN := 0
K := 128 k := 0 .. K − 1 x := whiten( K) a := −0.5 b := 0.5

Note : la fonction MathCad "whiten()" produit un bruit blanc centré de distribution uniforme :
les réalisations sont réparties uniformément entre a = -0.5 et b = +0.5

0. MOYENNE ET COVARIANCE THEORIQUES

La théorie dit qu'une loi uniforme sur [a,b] a pour moyenne et variance :

m := m=

σ2 := σ2 =

L'amplitude (crête) c du signal peut être déduite de σ2 :

b− a
c := c = 0.5
2

12⋅ σ2
c := c=
2

X := CFFT( x)

BRUIT BLANC FFT [BRUIT BLANC]


1 0.1

xk Xk
0 0.05

1 0
0 50 100 150 0 50 100 150
k k

TP 1. 1
Traitement du Signal TP 1. Signaux. Systèmes

1. ESTIMATION DE LA MOYENNE ET DE LA COVARIANCE PAR ERGODICITE

. Moyenne : m := m=

. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
k

COVARIANCE BB DSP BB = FFT [COVARIANCE BB]


0.078 −3
2.889× 10

rk ∆k

− 0.043 −5
3.431× 10

0 k 127
0 k 127
Conclusion : Variance du bruit blanc : σ2 := σ2 =

2
2. BRUIT BLANC DE MOYENNE m ET DE VARIANCE σ

A partir de la fonction MathCad "whiten()", fabriquer un bruit bruit blanc (de loi de distibution uniforme ) de moyenne
2
m donnée et de variance σ donnée. Vérifier à l'aide du calcul de la moyenne et de la covariance par ergodicité.

. Fonction BruitBlanc(K,m,sigma2) : BruitBlanc( K , m , sigma2) :=


RAZ : r := submatrix( r , 0 , 0 , 0 , 0)

k := 0 .. K − 1 m := 2 sigma2 := 6 y := BruitBlanc( K , m , sigma2) Y := CFFT( y )

BRUIT BLANC FFT [BRUIT BLANC]


6.2 1.782

yk Yk

−3
− 2.211 4.211× 10

0 k 127 0 k 127

12⋅ sigma2
L'amplitude (crête) c du signal peut être déduite de σ2 : c := c = 4.243
2

TP 1. 2
Traitement du Signal TP 1. Signaux. Systèmes

VERIFICATION. Estimation de la covariance par ergodicité :

. Moyenne : m := m=

. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
k

amplitude := max( y ) − m amplitude =

COVARIANCE BB DSP BB = FFT [COVARIANCE BB]


5.891 0.321

rk ∆k

− 2.779 −3
7.621× 10

0 k 127
0 k 127

Conclusion : Variance du bruit blanc: σ2 := σ2 =

TP 1. 3
Traitement du Signal TP 1. Signaux. Systèmes

TP 1 ANNEXE. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques

I. SIGNAUX DETERMINISTES
Un signal à TC sera programmé comme une fonction s(t), t réel
Un signal à TD sera programmé comme une fonction s(n), n entier, ou mieux comme un vecteur s
n

0. Convolution discrète c de signaux causaux


n
Convolution d'une transition Γ n avec une porte Πn
C
C := 10 n := 0 .. C Γ n := Φ ( n) Π n := 1 if 0 ≤ n ≤
2
C
s := Γ n d := Π n 0 if n >
n n 2

n
c :=
n ∑ s ⋅d
k n− k
k=0

2 10

1
Γn dn cn

0
0 0
0 5 10 0 5 10 0 5 10
n n n

Convolution causale Fonction convcausal(x, h) de convolution causale de 2 signaux x et h

convcausal( x , h) ≡ M ← length( x)
N ← length( h)
for n ∈ 0 .. M − 1
n
y ←
n ∑ x ⋅h
k n− k
if n < N
k= 0
y ← 0 otherwise
n
y

TP 1. 4
Traitement du Signal TP 1. Signaux. Systèmes

II. SIGNAUX ALEATOIRES


ESTIMATION DE LA COVARIANCE
2. ESTIMATION DE LA COVARIANCE PAR LA METHODE DES CORRELATIONS
N := K − 1 n := 0 .. N − 1 Nul := 0 X := stack( x , Nul) RAZ : r := submatrix( r , 0 , 0 , 0 , 0)
n

F( i , j) := if j ≥ i D := matrix( N + 1 , K + N , F)
x if ( j − i) < K
j− i
0 otherwise
0 otherwise

. Covariance : r := Λ := CFFT( r) ∆ k := Λ k

. Matrice de Covariance : R := La matrice R ainsi construite a le caractère Toeplitz

COVARIANCE BB DSP BB = FFT [COVARIANCE BB]


0.078

rk ∆k

− 0.013

0 k 127
0 k 127

Conclusion : Variance du bruit blanc: σ2 := σ2 =

TP 1. 5
Traitement du Signal TP 1. Signaux. Systèmes

3. ESTIMATION DE LA COVARIANCE PAR LA METHODE DES COVARIANCES

X := submatrix( x , 0 , K − N − 1 , 0 , 0) RAZ : r := submatrix( r , 0 , 0 , 0 , 0)


K
N := k := 0 .. N − 1
8

F( i , j) := D :=

. Covariance : r := Λ := CFFT( r) ∆ k := Λ k

. Matrice de Covariance : R :=

COVARIANCE BB DSP BB = FFT [COVARIANCE BB]


0.069

rk ∆k

−3
− 9.635× 10

0 k 16
0 k 16

Conclusion : Variance du bruit blanc: σ2 := σ2 =

[3-VBD]. ESTIMATION DE LA COVARIANCE PAR LA METHODE DES COVARIANCES : Variante Bordage à droite

X := submatrix( x , 0 , K − 1 , 0 , 0) RAZ : r := submatrix( r , 0 , 0 , 0 , 0)


K
N := k := 0 .. N − 1
8

F( i , j) := D := matrix( N + 1 , K , F)

. Covariance : r := Λ := CFFT( r) ∆ k := Λ k

. Matrice de Covariance : R :=

COVARIANCE BB DSP BB = FFT [COVARIANCE BB]


0.069

rk ∆k

−3
− 9.635× 10

0 k 16
0 k 16

Conclusion : Variance du bruit blanc: σ2 := σ2 =

TP 1. 6
Traitement du Signal TP 1. Signaux. Systèmes

III. SYSTEMES STOCHASTIQUES

PROCESSUS GENERATEUR DE SIGNAL ALEATOIRE : AR

Soit le filtre AR d'ordre N = 2 excité par un bruit blanc :

1
y := −a ⋅ y − a ⋅y +x H( z) :=
n 1 n− 1 2 n− 2 n −1 −2
1 + a ⋅z + a ⋅z
1 2
On désire que la fonction d'autocorrélation φyy de la sortie y soit telle que :
φyy0 := 6

φyy1 := 3

φyy2 := 0

Déterminer les coefficients a et a du filtre formeur AR ainsi que la variance V du bruit


1 2
blanc x à l'entrée du filtre permettant d'avoir φyy désiré.

On résoudra le système de Yule-Walker par inversion matricielle.

On vérifiera le fait que y possède bien la fonction d'autocovariance escomptée en la


calculant par la méthode par ergodicité, après avoir déterminé la sortie y sur K = 100 points.

1. RESOLUTION DU SYSTEME DE YULE-WALKER Ra = v PAR INVERSION MATRICIELLE

N := 2 i := 0 .. N j := 0 .. N k := 1 .. N RAZ : φyy := submatrix( φyy , 0 , 0 , 0 , 0)


R := submatrix( R , 0 , 0 , 0 , 0)
r := submatrix( r , 0 , 0 , 0 , 0)
Saisie du vecteur autocorrélation φyyi :
φyy0 := 6

φyy1 := 3

φyy2 := 0
⎛6⎞
φyy = ⎜ 3

⎝0⎠

TP 1. 7
Traitement du Signal TP 1. Signaux. Systèmes

Création de la matrice R :
⎛ φyy0 φyy1 φyy2 ⎞
⎛6 3 0⎞ ⎜
Exemple, pour N = 2, R = ⎜ φyy1 φyy0 φyy1 ⎟
R = ⎜3 6 3
R := φyy i− j
i, j
⎜ ⎜ φyy φyy φyy
⎝0 3 6⎠ ⎝ 2 1 0⎠

Réservation du vecteur a (ce n'est pas une initialisation) et Initialisation du vecteur b :

⎛0⎞
a := 0 b := φyyi b := 0 b = ⎜3
i i 0 ⎜
⎝0⎠
Calcul du vecteur a et de V :

⎛ −1 ⎞ ⋅ R− 1⋅ b φyy0
a := ⎜ V := V= 4
⎝ φyy0 ⎠ φyy0⋅ a + 1
0

i := 1 .. N a := V⋅ a
i i
Résultat :
du vecteur a , il ne faut retenir que les N paramètres cherchés : a , a ... a et ignorer a :
1 2 N 0

⎛ 0.083 ⎞ a =
a = ⎜ −0.667
k
⎜ -0.667
⎝ 0.333 ⎠ 0.333

2. CALCUL du BRUIT BLANC de VARIANCE V sur K = 100 points

BruitBlanc( K , m , V) := RAZ : x := submatrix( x , 0 , 0 , 0 , 0)

K := 100 m := 0 x := BruitBlanc( K , m , V) n := 0 .. K − 1

− 0.498

xn

− 0.499

−1 n 1

TP 1. 8
Traitement du Signal TP 1. Signaux. Systèmes

3. CALCUL de la REPONSE y du FILTRE AR au BRUIT BLANC CENTRE de VARIANCE V

RAZ : y := submatrix( y , 0 , 0 , 0 , 0) n := 0 .. K − 1 y := 0 y :=
n n

yn

−1

0 n 99

4. VERIFICATION : CALCUL de la FONCTION d'AUTOCOVARIANCE par ERGODICITE

. Signal d'entrée x : RAZ : r := submatrix( r , 0 , 0 , 0 , 0)

K−1


1
. Moyenne : m := ⋅ x m=
K n
n= 0
K − k− 1


1
. Covariance de x : k := 0 .. N r := ⋅ x ⋅x
k K n+ k n
n=0

r = à rapprocher de : V= 4 r=
0

. Signal de sortie y : RAZ : r := submatrix( r , 0 , 0 , 0 , 0)

K−1


1
. Moyenne : m := ⋅ y m=
K n
n= 0
K − k− 1


1
. Covariance de y : k := 0 .. N r := ⋅ y ⋅y
k K n+ k n
n=0

⎛6⎞
r= à comparer avec : φyy = ⎜ 3

⎝0⎠
Conclusion : avec un ordre N plus important pour le filtre AR, les résultats seraient encore plus proches
des résultats escomptés.
__________

TP 1. 9
Traitement du Signal 2. Synthèse du signal. Identification

2. Synthèse du signal. Identification

Synthèse du signal
I. SIGNAUX DETERMINISTES
La génération d’un signal déterministe peut être réalisée à partir :

. de l’expression analytique (formule) du signal


. d’un modèle (exemple : modèle AutoRégressif (AR))
. d’une table de look-up (fichier mémoire)
. d’une Transformation mathématique inverse (Fourier, Laplace ...)

Exemple : Génération d’un signal sinusoïdal (sans phase initiale)

. Expression analytique : Génération d’un signal sinusoïdal de fréquence f et d’ amplitude A

L’expression à Temps Continu s’écrit : x(t ) = A sin(2πft )


F 1
Le signal à Temps Discret x est généré en se donnant N = échantillons par période ( ) du signal à générer.
f f
1
F = est la fréquence d’échantillonnage.
T
Elle doit vérifier la condition de Shannon pour créer le signal avec une bonne résolution : F ≥ 2 f car f est la plus
grande fréquence (et ici la seule !) contenue dans le spectre de x .

→ x( n) = A sin( 2πfnT ) n ∈ Z est l’indice, généralement temporel, du signal.

. Modèle : Génération d’un signal sinusoïdal de fréquence f et d’ amplitude 1

Un modèle AR d’ordre 2 peut être utilisé pour générer un sinus (et toute suite trigonométrique) :
(démonstration par récurrence, le signal étant récursif) (obtention du modèle par identification par exemple)

x(n) = α x(n − 1) + β x(n − 2) avec :

α = 2 A cos(2πfT )
coefficients :
β = −1

x(0) = ϕ (phase initiale)


x(0) = 0(phase initiale)
initialisation : x(1) = A sin (2π fT ) ou
x(1) = A sin (2π fT )
si on veut une phase initiale non nulle si on veut une phase initiale nulle

et où : x(n) représente le signal sinusoïdal à l’instant nT .

. Table de look-up : Fichier mémoire

. Transformation mathématique inverse (Laplace) : Génération d’un signal sinusoïdal de fréquence f et d’ amplitude 1
2πf
x(t ) = sin (2πft )
−1
X ( p) = ⎯TL
⎯⎯→ à l’aide de tables
p + (2πf )
2 2

2. 1
Traitement du Signal 2. Synthèse du signal. Identification

II. SIGNAUX ALEATOIRES


Signaux aléatoires par fonction modulo

Une méthode de génération de signaux aléatoires (en fait pseudo-aléatoires du fait de la périodicité des signaux
engendrés) consiste à utiliser la fonction modulo.

Signal aléatoire à distribution uniforme. Bruit blanc à distribution uniforme

Le signal x(n) aléatoire à distribution uniforme est décrit par (démonstration par récurrence, le signal étant récursif) :
x(n) = A x(n − 1) modulo P L’initialisation x(0) devant vérifier : 0 < x(0) < P

(En indexant l’initialisation sur une horloge par exemple, on a un signal aléatoire générant à chaque essai une séquence
différente. Sinon la séquence engendrée est déterministe dans le sens où l’équation décrivant le signal est analytique,
paramétrique).

On a : 0 < x ( n) < P
(Pour avoir 0 < x( n) < 1 , il suffit de diviser chaque terme de la séquence par P ).
Le signal généré est pseudo-aléatoire car périodique de période P . Pour ne pas, lorsque n augmente, retomber vite
sur la même série de coefficients de la séquence, il vaut mieux choisir P grand.

P doit être un nombre premier pour que le résultat du modulo ne soit pas nul.
On peut prendre par exemple : x(0) = 100 , A = 281 , P = 31 357 .

Les échantillons peuvent être considérés comme indépendants les uns des autres, conduisant ainsi à
fournir un bruit blanc à distribution uniforme.

Signal aléatoire à distribution de Rayleigh

Le signal y ( n) aléatoire à distribution de Rayleigh peut être obtenu à partir du signal aléatoire x( n) à distribution
uniforme : y (n) = 2σ Ln{1 / x(n) }
σ caractérise la dynamique du signal.

On peut prendre par exemple : σ = 10 .

Signal aléatoire à distribution gaussienne

Le signal w( n) aléatoire à distribution gaussienne peut être obtenu à partir des signaux aléatoires x( n) à distribution
uniforme et y (n) à distribution de Rayleigh : w(n) = y (n) cos{ 2π x(n) }

Signaux aléatoires par fonction OU exclusif

Une autre méthode de génération de signaux aléatoires consiste à utiliser la fonction OU exclusif.

Un échantillon de la séquence aléatoire est codé sur m bits. Le mot de l’échantillon x ( n + 1) de la séquence est
obtenu à partir du mot de l’échantillon x( n) en effectuant un OU exclusif entre les 2 bits de plus faible poids de
x(n) , et en décalant circulairement vers la droite les bits du mot : le LSB est perdu, et il rentre le résultat du OU
exclusif pour nouveau MSB.
Un mot a conventionnellement son MSB à l’extrême gauche et son LSB à l’extrême droite. Le MSB est le bit de plus fort poids, le LSB celui de poids le
plus faible.

2. 2
Traitement du Signal 2. Synthèse du signal. Identification

Identification (modélisation)

I. IDENTIFICATION PAR FILTRES FORMEURS - MODELES AR, MA ARMA


1. Processus MA (Moving Average - Moyenne mobile) d’ordre M
Un signal à TD xn peut être identifié comme sortie d’un filtre MA excité par un bruit blanc (car il y a tout dans un bruit blanc,
un bruit blanc excite tous les modes du processus, il y a toutes les fréquences dans un bruit blanc) :
M
xn = ∑ bk wn−k = b0 wn + b1 wn−1 + L + bM wn− M avec b0 = 1 (le fait de diviser tous les coefficients par b0 conduit à
k =0
b0 = 1 )
où :
wn désigne un processus aléatoire réel blanc, centré, stationnaire, de variance σ2
et : {bm } est une séquence de M + 1 coefficients réels.

Le processus ainsi construit a pour RI la séquence {bm } : {hn } = {bn }


Ce filtre a donc pour FT :
M
H ( z ) = TZ [bn ] = ∑ bn z −n = b0 + b1 z −1 + L + bM z − M
n =0

Cette FT ne possède pas de pôles. Elle conduit donc à un filtre causal stable, facilitant ainsi l’identification du signal xn .

Relations entre coefficients du modèle et covariances

Malheureusement, les relations entre coefficients du modèle et covariances ne sont pas linéaires.
Il suffit pour s’en convaincre de traiter en exemple le processus MA d’ordre M = 2 à TD engendré par :
2
xn = ∑ bk wn−k = wn + b1 wn−1 + b2 wn−2
k =0

Calculons l’autocovariance R XX k = E X n+ k X n [ ] où : X n est la VA dont xn est une réalisation


Wn est la VA dont wn est une réalisation
(on rappelle qu’un bruit blanc de variance σ2 [
est tel que : E Wn+ kWn = σ ] δ n ,k
2
et que R XX k est paire)

⎧ R XX 0 [ ] [ ] [ ] [ ] (
= E X n2 = E W n2 + b12 E Wn2−1 + b22 E W n2− 2 = 1 + b12 + b22 σ ) 2


⎪ R XX 1 = E [X n +1 X n ] = E [(Wn +1 + b1Wn + b2W n −1 )(Wn + b1Wn −1 + b2W n − 2 )] = (b1 + b1b2 )σ 2


⎪ R XX 2 = E [X n + 2 X n ] = E [(Wn + 2 + b1Wn +1 + b2W n )(Wn + b1Wn −1 + b2W n − 2 )] = b2σ 2


⎩ R XX k = E [X n + k X n ] = 0 pour k ≥ M +1
soit :
⎧ R XX 0 (
= 1 + b12 + b22 σ ) 2


⎪ R XX 1 = (b1 + b1b2 )σ 2


⎪ R XX 2 = b2 σ 2


⎩ R XX k = 0 pour k ≥ M +1

Lorsque l’on veut identifier (≡ modéliser) un signal xn comme un processus MA d’ordre donné (ici 2) d’entrée wn :
xn = wn + b1wn−1 + b2 wn−2 alors la covariance R XX k est connue (déduite de la séquence { xk } du signal par une méthode

d’estimation de la fonction d’autocovariance, par exemple, la méthode par ergodicité) et b1 , b2 et σ2 sont les inconnues.

2. 3
Traitement du Signal 2. Synthèse du signal. Identification

Le système d’équations est non linéaire et pour le résoudre on fait appel à des algorithmes de Programmation Non
Linéaire.

2. 4
Traitement du Signal 2. Synthèse du signal. Identification

2. Processus AR (Auto-Regressive - Auto-Régressif) d’ordre N


Un signal à TD xn peut être vu comme sortie d’un filtre modèle AR excité par un bruit blanc (car il y a tout dans un bruit blanc,
un bruit blanc excite tous les modes du processus, il y a toutes les fréquences dans un bruit blanc) :
N

∑a x
k =0
k n−k = wn avec a0 = 1 (le fait de diviser tous les coefficients par a 0 ne change rien et conduit à a 0 = 1 )

soit : a0 xn + a1 xn−1 + L + a N xn− N = wn


où : wn désigne un processus aléatoire réel blanc, centré, stationnaire, de variance σ2
et : {an } est une séquence de N + 1 coefficients réels.

Le processus ainsi construit a pour RI la séquence {hn } = TZ


−1
[H ( z )] où H (z ) est la FT du filtre :
1 1
H ( z) = = (filtre tout-pôle)
N
a0 + a1 z + L + a N z − N
−1

∑a z
n =0
n
−n

Cette FT possède des pôles. Ceux-ci doivent être de module < 1 pour assurer la stabilité du filtre causal.

Relations entre coefficients du modèle et covariances (cas N = 1 )

Prenons pour exemple le processus AR d’ordre N = 1 à TD engendré par :


xn + a1 xn−1 = wn avec a1 < 1 pour assurer la stabilité du filtre.

En prenant l’espérance des 2 membres, et en utilisant l’hypothèse que wn est centré, on en déduit que le processus xn
est lui-même centré.

Calculons sa fonction d’autocovariance R XX k = E X n+ k X n [ ] où : X n est la VA dont xn est une réalisation


Wn est la VA dont wn est une réalisation
(on rappelle qu’un bruit blanc de variance σ 2
[
est tel que : E Wn+ kWn = σ ] 2
δ n ,k et que R XX k est paire)

Comme : xn = wn − a1 xn−1
on a : xn2 = xn wn − a1 xn xn−1 = (wn − a1 xn−1 )wn − a1 xn xn−1 = wn2 − a1 xn−1 wn − a1 xn xn−1
d’où, comme il n’y a pas de dépendance causale entre xn−1 et wn
( xn s’exprime causalement en fonction de wn , ce qui signifie que xn −1 est fonction de wn −1 , wn − 2 , ...

Comme wn −1 , wn − 2 , ... sont indépendants de wn (bruit blanc), alors xn −1 et wn sont indépendants donc non corrélés, ce qui s’écrit :

[ ] [
E X n−1Wn = E X n−1 E Wn ][ ] = 0 car le bruit blanc est centré)

on a : [ ] [ ]
E X n2 = E Wn2 − a1 E X n X n−1 [ ] soit : RXX 0 = σ 2 − a1RXX 1

On a aussi : xn xn−1 = xn−1 wn − a1 xn2−1


d’où : [ ]
E X n X n−1 = − a1 E X n2−1 [ ] soit : RXX 1 = −a1RXX 0

⎧⎪ R XX 0 + a1 R XX1 = σ 2

On a donc le système d’équations : ⎨


⎪⎩ R XX1 + a1 R XX 0 = 0

2. 5
Traitement du Signal 2. Synthèse du signal. Identification

Ce système linéaire d’équations peut s’écrire sous forme matricielle : Ra = v


⎡ R XX R XX1 ⎤ ⎡a ⎤ ⎡σ 2 ⎤
R=⎢ 0 a = ⎢ 0⎥ v=⎢ ⎥ a0 = 1
R XX 0 ⎥⎦
avec :
⎣ R XX1 ⎣ a1 ⎦ ⎣ 0 ⎦

⎧ RXX 1
⎪a1 = − R
⎪ XX 0
La solution de ce système linéaire d’équations est immédiate : ⎨ 2
⎪σ 2 = R − RXX 1
⎪ XX 0
RXX 0

Relations entre coefficients du modèle et covariances (cas N quelconque)

L’expression matricielle permet la généralisation à un modèle AR d’ordre N dont la fonction d’autocovariance vérifie
le système linéaire d’équations : (ce sont les équations de Yule-Walker )

⎡ R XX 0 R XX 1 L R XX N ⎤ ⎡ a0 ⎤ ⎡σ 2 ⎤
⎢R
⎢ XX 1 R XX 0 L R XX N −1 ⎥⎥ ⎢ a1 ⎥ ⎢⎢ 0 ⎥⎥
⎢ ⎥= ou encore : Ra = v a0 = 1
⎢ M M M M ⎥⎢ M ⎥ ⎢ M ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣ R XX N R XX N −1 L R XX 0 ⎦ ⎣a N ⎦ ⎣⎢ 0 ⎦⎥

La matrice d’autocovariance R de terme général ri , j ne dépendant que de i − j ( R XX k paire) est dite matrice de Toeplitz.

Pour réaliser ce calcul, une inversion matricielle est possible mais on utilise généralement l’algorithme efficace itératif de
Levinson ou encore de Burg, qui évitent une inversion matricielle en mettant à profit le caractère Toeplitz de la matrice
R.

La séquence {an } , solution avec σ 2 , du système linéaire de Yule-Walker à partir de la connaissance de la matrice
d’autocovariance R , conduit à la relation de récurrence du filtre.

La détermination de la séquence {an′ } des pôles de H ( z ) = 1


=
1
1 + a1 z −1 + L + a N z − N (1 − a1′ z −1 )(1 − a ′2 z −1 ) L (1 − a ′N z −1 )
conduit, de façon équivalente à celle {an } , à l’obtention du filtre d’identification de la séquence xn .

L’avantage de la modélisation AR par rapport à l’identification par un modèle MA est qu’elle conduit à un système
linéaire d’équations pour la détermination des coefficients du filtre.

Applications :
. synthèse de signal
. compression de signal (de parole par exemple) :
un signal xk de K échantillons d’un signal de parole peut être codé non pas par mémorisation de la séquence brute
{xk } mais compressée pour être ramenée aux coefficients ai du filtre modèle (AR) d’ordre N et au coefficient σ 2 ,
variance du bruit blanc placé à l’entrée du filtre pour produire, synthétiser le signal xk . La décompression consiste à
générer, synthétiser xk à partir du bruit blanc de variance σ par application de l’algorithme AR du filtre formeur
2

d’ordre N au bruit blanc.

2. 6
Traitement du Signal 2. Synthèse du signal. Identification

3. Processus ARMA d’ordre N − M


Un processus ARMA s’obtient en mettant en série une structure AR et une structure MA.

Soit l’équation récurrente :

N M

∑ ak xn−k = ∑ bi wn−i
k =0 i =0
avec a0 = 1 (le fait de diviser tous les coefficients par a 0 ne change rien et conduit à

a0 = 1 )

soit : a0 xn + a1 xn−1 + L + a N xn− N = b0 wn + b1wn−1 + L + bM wn−M


où :
wn désigne un processus aléatoire réel blanc, centré, stationnaire, de variance σ2
et : {an } et {bm } sont des séquences de coefficients réels.

Le processus ainsi construit a pour RI la séquence {hn } = TZ


−1
[H ( z )] où H ( z ) est la FT du filtre :
M

∑b m z −m
b0 + b1 z −1 + L + bM z −M
H ( z) = m =0
=
N
a0 + a1 z −1 + L + a N z − N
∑a z
n =0
n
−n

Cette FT possède des pôles. Ceux-ci doivent être de module < 1 pour assurer la stabilité du filtre causal.

L’équation récurrente admet une solution unique xn , stationnaire au 2nd ordre, unique, qui s’exprime causalement en
fonction de wn , si et seulement si les racines du dénominateur (≡ pôles de H ( z ) ) sont de module < 1 .

4. Remarques
. Il peut paraître réducteur de modéliser un processus par un nombre restreint de paramètres. Mais cette modélisation
correspond à un processus SLTI (Système Linéaire à Temps Invariant), décrit par une équation aux différences linéaire
stationnaire (≡ à coefficients constants).

. On montre que tout processus ARMA ou MA peut être approché par un processus AR d’ordre suffisamment élevé
(l’avantage d’une modélisation AR est de conduire à un système linéaire d’équations pour la détermination des paramètres du modèle, mais il faut en
contre-partie veiller à la stabilité du filtre).
De même, tout processus ARMA ou AR peut être approché par un processus MA d’ordre suffisamment élevé
(l’avantage d’une modélisation MA est d’assurer la stabilité du filtre modèle, mais en contre-partie, cette modélisation conduit à un système non
linéaire d’équations rendant ainsi moins simple la détermination des paramètres du modèle).

Ce résultat est fondamental en pratique puisque, si l’on choisit parmi ces 3 modèles, le plus « mauvais » modèle, une
précision raisonnable peut encore être obtenue en prenant un ordre assez élevé.

Un processus dont le spectre possède des « vallées profondes » nécessite en effet moins de paramètres si on utilise,
pour le représenter, un modèle MA plutôt qu’un modèle AR.
De même, un processus dont le spectre possède des « pics élevés » nécessite moins de paramètres si on utilise, pour
l’identifier, un modèle AR plutôt qu’un modèle MA.

. Application de l’identification : Compression de signal


Plutôt que de mémoriser le signal brut, on peut stocker les paramètres AR ou MA ou ARMA du modèle.
La compression consiste, après le choix d’un ordre d’autant plus élevé que la précision souhaitée, en la détermination
des paramètres du modèle et de la variance du bruit blanc.
La décompression consiste alors en la génération du signal étant donné le modèle choisi.

2. 7
Traitement du Signal 2. Synthèse du signal. Identification

. Autre procédé d’identification par les modèles MA, AR ou ARMA


Exemple : modélisation AR
Plutôt que d’utiliser un bruit blanc pour l’entrée du filtre, on prend une constante ( b ), et on détermine cette constante
ainsi que les paramètres ( an ) du modèle en minimisant (par application du critère des moindres carrés) (cf. annexe)
l’énergie de l’erreur entre la séquence xn à identifier et son estimation x̂n décrite par :
N
xˆ n = b + ∑ ak xˆ n−k
k =1

5. Application : Estimation du spectre d’un processus AR (Analyse spectrale - Estimation)

Dans le cas d’un processus AR d’ordre N , la relation entre les paramètres à estimer et les covariances ( R a = v ) est
linéaire. Elle permet simplement d’obtenir une estimation des paramètres {an } du modèle et la variance σ2 du bruit
blanc d’entrée, en substituant à la matrice de covariance exacte une matrice de covariance estimée.

Relations entre coefficients du modèle et covariances estimées (cas N = 1 )

⎧⎪ RXX 0 + a1 R XX1 = σ 2

On remplace dans l’équation obtenue avec les covariances exactes : ⎨


⎪⎩ RXX1 + a1 R XX 0 = 0
R XX 0 et R XX1 par leur estimée respective.

L’ergodicité toujours supposée nous donne : ( Xn est supposé centré)


⎪ 0 K ∑ xn = K (x0 + x1 + L + xK −1 )
1 K −1 2 1 2
R XX = 2 2

⎪ n =0

(x1 x0 + x2 x1 + L + xK −1 xK −2 )
K −2
⎪R = 1 1
⎪⎩ XX 1 ∑
K − 1 n =0
xn+1 xn =
K −1

L’estimée respective de R XX 0 et de R XX1 est donnée par (méthode des corrélations) :

⎧ˆ
⎪ XX 0 K ∑ xn = K (x0 + x1 + L + xK )
1 K 2 1 2
R = 2 2

⎪ n =0

xn xn+1 = (x0 x1 + x1 x2 + L + xK −1 xK )
K −1
⎪ Rˆ = 1 1
⎪⎩ XX1 ∑
K n =0 K

⎡ˆ Rˆ XX1 ⎤
On obtient pour matrice de covariance estimée : ˆ = ⎢ R XX 0
R ⎥
ˆ Rˆ XX 0 ⎦⎥
⎣⎢ R XX1
⎧ Rˆ XX1
⎪ 1
a = −
⎪ Rˆ XX 0
Et le coefficient a1 du modèle AR ainsi que la variance σ2 du bruit blanc d’entrée sont : ⎨
⎪ 2 ˆ Rˆ XX
2

⎪σ = RXX 0 − Rˆ
1

⎩ XX 0

2. 8
Traitement du Signal 2. Synthèse du signal. Identification

Relations entre coefficients du modèle et covariances estimées (cas N quelconque)

Un résultat important est que si la matrice R est de Toeplitz, le polynôme dénominateur de la FT H ( z ) :


1 + a1 z −1 + L + a N z − N a toutes ses racines à l’intérieur du cercle unité, assurant ainsi la stabilité du filtre modèle.

Estimation du spectre d’un processus AR méthode haute résolution

Une fois les paramètres {an } du modèle et la variance σ2 du bruit blanc d’entrée estimés (par {ân } et σ̂ 2 ), on
détermine le spectre S X ( f ) de la sortie xn du filtre AR d’entrée bn (bruit blanc).
2 2
On a : S X ( f ) = H ( f ) S B ( f ) = H ( f ) σˆ 2 car le spectre (DSP) d’un bruit blanc est σ 2:
S B ( f ) = σˆ 2
2 2 1
d’où : S X ( f ) = H ( f ) σˆ 2 = H ( z = e i 2π f ) σˆ 2 avec : H ( z) =
1 + aˆ1 z + L + aˆ N z − N
−1

σˆ 2
donc : S X ( f ) = 2
1 + aˆ1e −i 2π f + L + aˆ N e −i 2π N f

Cette méthode d’estimation spectrale s’appelle méthode haute résolution.

II. IDENTIFICATION PAR PREDICTION LINEAIRE (Linear Prediction Coding)


[Voir Chapitre sur la Prédiction]

III. IDENTIFICATION PAR MOINDRES CARRES


[Voir Chapitre sur le filtrage optimal]

Remarque

Une identification par la méthode du polynôme de Lagrange est inenvisageable en traitement du signal car pour
identifier un signal de n points, n coefficients (les n coefficients du polynôme de Lagrange d’ordre n ) sont
nécessaires, ce qui est énorme en comparaison des autres méthodes d’identification qui nécessitent un nombre m de
paramètres bien moindre que la taille du signal à identifier : m << n .

__________

2. 9
Traitement du Signal TP 2. Synthèse. Identification

TP 2. Synthèse du signal. Identification


I. SYNTHESE DE SIGNAL

1. Signaux déterministes
Générer par récurrence un signal sinusoïdal u d'amplitude 1 et de fréquence f = 5 Hz sur une "durée" N = 50 points (durée =
N*T).La fréquence d'échantillonnage F = 1/T doit respecter la condition de Shannon : F > 2 Fm avec ici Fm = f.
1
f := 5 F := 100 T := α := 2⋅ cos( 2⋅ π ⋅ f ⋅ T) β := −1 N := 50 n := 2 .. N − 1
F
Initialisation : u := u :=
0 1
Equation récurrente : u := T = 0.01 seconde
n
n := 0 .. N − 1
Visuellement, on vérifie bien :
0.309 F
"période" : = 20 points
f
un
F
période : p := ⋅T p = 0.2 sec.
0 f
1
fréquence : =5 Hertz
0 n 1 p
2. Signaux aléatoires
Génération d'un Bruit blanc centré de ditribution uniforme
Générer un signal aléatoire de distribution uniforme, variant entre a = -0.5 et b = +0.5 sur une "durée" (en
nombre de points) N = 100 points. Vérifier qu'il s'agit d'un bien d'un bruit blanc centré en calculant par la méthode
par ergodocité sa moyenne, sa fonction d'autocovariance et sa variance.

Bruit blanc v compris entre 0 et P :


A := 281 P := 31357 N := 100 n := 1 .. N − 1 ( optionnel) WhiteNoise( N) :=

Initialisation : v := 100
0
Equation récurrente : v :=
n

Bruit blanc w compris entre a et b :

a := −0.5 b := 0.5 n := 0 .. N − 1 w :=
n

0.495

wn

− 0.497

0 n 99

TP 2. 1
Traitement du Signal TP 2. Synthèse. Identification

Vérification :
. Moyenne et variance théoriques :

La théorie dit qu'une loi uniforme sur [a,b] a pour moyenne et variance :

( a + b)
m := m=0
2
2
( b − a)
σ2 := σ2 = 0.083
12

. Estimation de la covariance par ergodicité :


N− 1
1
. Moyenne : m :=
N

∑ w
i
m=
i= 0

N − n− 1
1
. Covariance : φn :=
N

∑ (wi+n − m)⋅(wi − m)
i= 0

0.077

φn

− 0.069

0 n 99
2
Conclusion: la fonction de covariance a l'allure attendue par la théorie: φn = σ ⋅ δ ( n) Varance du bruit blanc: σ2 := φ0

σ2 =

TP 2. 2
Traitement du Signal TP 2. Synthèse. Identification

II. IDENTIFICATION Faire varier l'ordre N du filtre modèle AR puis la taille K du signal à identifier. Conclusion ?
Essayer ensuite sur un second signal.

Soit le filtre AR d'ordre N excité par un bruit blanc.


Equation de récurrence du filtre AR d'ordre N : Fonction de Transfert correspondante :

N 1
H( z) :=
y := x −
k k ∑ a ⋅y
i k− i N
−i
i= 1 1+
∑ a ⋅z
i
i= 1

L'identification d'un signal s donné consiste à le modéliser comme réponse d'un filtre AR d'ordre N à un bruit blanc de
variance V. Le problème est alors de déterminer les coefficients a du filtre AR modèle et la variance V du bruit blanc.
i

1. Fonction YuleWalker( φxx , N): Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . φxx : le vecteur fonction d'autocovariance (dim N) du signal x : φxx0, φxx1 ... φxxN− 1
. N : dim de φxx et de l'ordre (max) du filtre formeur AR
Paramètre de sortie : . le vecteur a (dim N+1) :
a = V : variance du bruit blanc; a , a , ... a : paramètres du filtre formeur AR d'ordre N
0 1 2 N

YuleWalker( φxx , N) := for i ∈ 0 .. N Exemple : K := 3 r := 6


0
for j ∈ 0 .. N
N := 2 r := 3
1
R ← φxx i− j
i, j
r := 0
b ←0 2
0
for i ∈ 1 .. N a := YuleWalker( r , N)
b ← φxxi
i
V := a V= 4
0
⎛ −1 ⎞ ⋅ R− 1⋅ b
α←⎜ i := 1 .. N
⎝ φxx0 ⎠ ⎛ 4 ⎞
a = ⎜ −0.667
a =
i
φxx0 ⎜
a ←
0 φxx0⋅ α 0 + 1 ⎝ 0.333 ⎠ -0.667
0.333
for i ∈ 1 .. N
a ← a ⋅αi
i 0
a

TP 2. 3
Traitement du Signal TP 2. Synthèse. Identification

2. Extraction des paramètres a , a , ... a du filtre AR d'ordre N et de la Variance V du bruit blanc d'entrée
1 2 N

Signal de parole sur une fenêtre de K points :


. On considère 2 signaux de parole enregistrés dans les fichier a1 et o1 issus de l'enregistrement des voyelles
"a" et "o", échantillonnés à 8 kHz mono 8 bits et de durée 0.1s -> leur taille est de 800 échantillons.

. Lecture du fichier de données ASCII (1 donnée (float) par ligne, 800 colonnes)
K := 80 k := 0 .. K − 1 s := READWAV( "a1.wav" ) s := s − 128

10

sk 0

10
0 20 40 60 80
k
. Centrage du signal et recadrage d'amplitude dans la gamme [-0.5, +0.5] : (car on synthétisera à partir d'un bruit blanc centré)
2⋅ s
k
moy := mean( s) s := s − moy maxi := max( s) mini := min( s) s :=
k k k maxi − mini
0.5

sk 0

0.5
0 10 20 30 40 50 60 70 80
k
. Calcul de la fonction d'autocovariance r du signal x par la méthode d'ergodicité :
K−1
1 −3
. Moyenne : m :=
K

∑ s
n
m = −3.4 × 10
n= 0
K − k− 1
1
. Covariance : r :=
k K

∑ s ⋅s
n+ k n
n=0

. Extraction des N paramètres a , a , ... a du filtre AR d'ordre N et de la Variance V du bruit blanc d'entrée :
1 2 N

N := 2 a := V := V= Attention : il faut V > 0

i := 1 .. N a =
i

TP 2. 4
Traitement du Signal TP 2. Synthèse. Identification

3. Génération du bruit blanc centré de variance V de K points :

BruitBlanc( K , m , V) := 12⋅ V⋅ WhiteNoise( K) + m ou encore : BruitBlanc( K , m , V) := 12⋅ V⋅ whiten( K) + m

m := 0 x := BruitBlanc( K , m , V)

3.442

xk

− 3.455

0 k 79

4. Calcul de la réponse y du filtre AR d'ordre N au bruit blanc x centré de variance V


RAZ : y := 0 y :=
k k

signal synthétisé y : Attention : il faut que le filtre soit stable

yk

−1

0 k 79
à comparer au signal de parole s (il faudrait écouter pour comparer !) :

0.5

sk 0

0.5
0 10 20 30 40 50 60 70 80
k

TP 2. 5
Traitement du Signal TP 2. Synthèse. Identification

Rapport Signal sur Bruit :

RSB := RSB = dB

APPLICATION :
Synthèse, Compression du signal de parole dans sa totalité (K = 800 échantillons, durée 100 ms)

On remplace chaque bloc de P échantillons du signal de parole de K = 800 échantillons (durée 100 ms) par les N
coefficients du modèle AR. Ainsi si P = 80 et N = 8 on obtient un taux de compression d'environ 10.

Pour mettre en oeuvre ce traitement, on centre d'abord le signal de K = 800 échantillons et on recadre son amplitude
dans la gamme [-1, +1].

On fenêtre ensuite ce signal par tranches de P = 80 échantillons (durée 10 ms), en prenant 50% de chevauchement
entre les fenêtres pour atténuer l'effet des variations éventuellement brutales des coefficients de compression des
coefficients d'une fenêtre à la suivante.

Synthèse, Compression du signal image


Selon le même principe, effectuer la compression d'une image en se ramenant à 1D et en traitant l'image colonne
par colonne.

__________

TP 2. 6
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

3. Caractérisation (Analyse - Transformations fréquentielles). Estimation


Caractérisation (Caractérisation de signal pour la distinction, la reconnaissance de signal)
Le but de la caractérisation d’un signal est de trouver une signature, une caractéristique pour un signal, autorisant sa
reconnaissance, sa distinction, sa discrimination. La difficulté est de trouver, suivant le type de signal, le bon outil de caractérisation,
permettant sa discrimination par rapport à des signaux différents tout en autorisant une relative variabilité de la signature, dans le cas de réalisations
multiples d’un même type de signal (ex : reconnaissance de parole : plusieurs reproductions du même mot doivent être classifiées ensemble et
discriminées par rapport à la prononciation d’autres mots).
Plutôt que d’utiliser le signal brut comme signature, on prend une transformée de ce signal, ayant l’avantage de
compresser, de réduire la quantité d’informations utiles, pertinentes du signal.
signal TF spectre
temps réduction de l'info fréquence
Exemple 1 : N K N

Il y a réduction de l’information car le spectre s’annule vite quand la fréquence augmente (un signal ne peut être infiniment rapide), l’information
contenue dans les N points du signal temporel se retrouve, pour l’essentiel, dans les 1ers points (les K 1ers points, avec K<N) de sa Représentation
Fréquentielle.

Exemple 2 : Reconnaissance de parole, d’image


La reconnaissance est basée sur la corrélation, mais plutôt que de corréler les signaux bruts (le signal à reconnaître et les enregistrements de référence
en Base De Données), ce qui est coûteux en temps calcul et pas très efficace pour la reconnaissance, on corrèle des primitives, des caractéristiques
extraites du signal à reconnaître avec les mêmes primitives issues des enregistrements de référence, ce qui accroît la rapidité et la qualité de la
reconnaissance (exemple de primitive de caractérisation de la parole (reconnaissance de la parole, du locuteur) : le cepstre).

I. TRANSFORMATIONS FREQUENTIELLES outils de caractérisation fréquentiels


TRANSFORMATION DE FOURIER DISCRETE (TFD)
Elle permet de caractériser un signal stationnaire en donnant son occupation en fréquences.
Rappel : Transformation de Fourier
Un signal x(t) périodique de période T, décomposé en série de Fourier s'écrit :


x(t ) = ∑ C k cos(kωt + Φ k ) avec : ω= T : période de x(t)
k =0 T
Exemple : Décomposition en série de Fourier d’un signal périodique « triangulaire »

Φ3 /ω
Φ0 Φ2 /ω
Φ1

TFD :
M −1
1
x ( n) X (k ) = ∑ x(n)e −i 2πkn / M
= TFD[x(n)]
⎯⎯
⎯→ TFD
M n =0
M termes et causale
M termes
n représente un indice temporel, k un indice fréquentiel.
Restriction : la TFD ne donne pas de localisation (temporelle) des fréquences, mais seulement leur répartition globale.

TFD Inverse (TFDI)


M −1
x ( n) ∑ X (k )e i 2πkn / M
= TFDI [ X (k )]
Elle est donnée par la relation : = k =0
M termes
M termes

3. 1
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Interprétation
Séquence temporelle xn

t = nT
0 T T0 = MT

Séquence TFD Xk

périodicité du spectre
(période F)
f = kF0
0 F0 F = 1/T = M.[ 1/T0 ]
=1/ T0
T0 : Durée d'observation de la séquence temporelle Exemple : T0 = 1 s F0 = 1/ T0 = 1 Hz
T : Période d'échantillonnage T = 0.1 s F = 10 Hz
M : Nombre d'échantillons pendant T0 M = 10 échantillons

SPECTROGRAMME - TRANSFORMATION DE FOURIER A COURT TERME (TFCT)


(Analyse temps-fréquence, comme l’analyse en ondelettes)
Le spectrogramme calcule la TFD sur une fenêtre f (n) glissante au cours du temps sur le signal. Les TFDs sur
chaque fenêtre glissante fournissent le spectrogramme, qui permet d’adapter la Transformation de Fourier à la
caractérisation des signaux non stationnaires. Le spectrogramme permet de caractériser un signal non stationnaire en
donnant son occupation en fréquences en fonction du temps : analyse Temps-Fréquence.
Amplitude du module de la TFCT

x(m) X(k) (TFD) Amplitude du module de la TFCT Fréquence

f(n)
k (Fréquence)
Fréquence
m

n=0 n=M-1 n (Temps) Temps

M −1
1
On obtient pour chaque indice n de fenêtre f(n) une TFD : X (k ) =
M

m= 0
x (m) e − i 2πkm/ M
et au total , non plus un spectre (2D), mais un spectrogramme (3D) (Représentation Temps-Fréquence) :

i 2 πkm
∞ −
1 M
On a la relation de définition de la TFCT : X ( n, k ) =
M
∑ x(m) f (n − m) e
m =−∞
f(n) peut être une fenêtre de pondération (Blackman, Bartlett ...) plutôt qu'une simple fenêtre rectangulaire de troncature.
Cette analyse temps-fréquence présente l’avantage par rapport à l’analyse de Fourier simple, de permettre la
localisation temporelle des fréquences contenues dans le signal (voir « spectrogram of the word READ »).
3. 2
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

TRANSFORMATION DE WIGNER-VILLE (Analyse temps-fréquence, comme l’analyse en ondelettes)


Elle permet de caractériser un signal non stationnaire en donnant son occupation en fréquences en fonction du temps :
analyse Temps-Fréquence.
La TWV d'un signal x(t) s'écrit : TWV [ x ( t )] =
∆ ∞ ⎛ τ⎞ ⎛ τ⎞ ∗

−∞
x⎜ t + ⎟ ⋅ x ∗ ⎜ t − ⎟ ⋅ e − i 2πντ dτ = X (ν , t )
⎝ 2⎠ ⎝ 2⎠
( x : conjugué de x )

Le résultat, fonction de ν et t, autorise une analyse dans l’espace Temps(t)-Fréquence(ν).

TRANSFORMATION DE HILBERT
1
La Transformation de Hilbert ( TH ) x$ ( t ) d'un signal x (t ) consiste en la convolution de x(t ) par la fonction :
πt
1
x(t ) ⎯⎯→
TH
xˆ (t ) = x(t ) *
πt

ONDELETTES
La plupart des signaux ne sont pas stationnaires, et c'est justement dans l’évolution de leurs caractéristiques (statistiques,
fréquentielles, temporelles, spatiales) que réside l’essentiel de l’information qu'ils contiennent (ex. : signaux de parole, d’image).
Avec l’analyse de Fourier (sauf la TFCT, Transformée de Fourier à Court Terme, qui consiste en des TF sur des fenêtres glissantes du signal),
l’approche du signal est globale et toute notion de localisation temporelle (ou spatiale pour des images) disparaît dans
l’espace de Fourier. La décomposition d’un signal en une somme d’ondelettes (et non plus en une somme d’ondes comme avec
l’analyse de Fourier) apporte un contenu fréquentiel tout en préservant la localisation afin d'obtenir une représentation
temps/fréquence ou espace/échelle du signal (ex. en musique : décomposition en ondelettes d’un signal non stationnaire, ayant un début
et une fin, comme la frappe d’une touche au piano, contrairement à la décomposition en ondes d’un signal stationnaire, comme la vibration
maintenue, prolongée d’un diapason, émise indéfiniment depuis l’origine des temps). La notion d’ondelette (ondelette de Gabor) intègre (au
moins) 3 informations : un commencement, une fin et entre les deux, une fréquence précise.

Transformée de Fourier continue


Approche de Fourier : signal = somme d’ondes (= de fonctions sinus) de fréquence multiple et translatées

∫ f (t )e
− i 2πνt
La transformation (décomposition) de Fourier continue F(ν ) d’une fonction f (t ) s’écrit : F (ν ) = dt
−∞

notée : F (ν ) = < f ,ψ > où ψ (t ) =e − i 2πνt onde, et : < f , g > = ∫ f (τ ) g (τ )dτ


−∞
produit scalaire (pour fonctions réelles)


< f , g >= ∫ f (τ ) g * (τ )dτ produit scalaire (pour fonctions complexes) ( g * : conjugué de g )
−∞

∫ F (ν ) e
i 2πνt
La transformation (décomposition) de Fourier inverse (reconstruction) s’écrit : f (t ) = dv
−∞
La Transformation de Fourier constitue un outil adapté à l’analyse de signaux stationnaires, qui peuvent se décrire globalement et par une combinaison
linéaires d’ondes. Elle ne peut caractériser efficacement, localement, un signal non stationnaire, qui lui s’exprime comme combinaison linéaire
d’ondelettes.

Transformée en ondelettes continue


Approche ondelettes : signal = somme d’ondelettes (= ondes évanescentes, ondes localisées, ondes amorties) réglables en fréquence et translation

La transformation (décomposition) en ondelettes continue F (a, b) d’une fonction f (t ) suivant l’ondelette ψ (t ) s’écrit :
+∞ +∞
1 t −b
F ( a, b ) = ∫
−∞
f (t )ψ a ,b (t ) dt =
a ∫ f (t )ψ (
−∞
a
) dt notée F ( a , b ) = < f , ψ a ,b > ( a, b ) ∈ R

Les ondelettes filles ψ a ,b (t ) s’obtiennent par dilatation et translation de l’ondelette mère ψ (t ) ( a est le facteur
d’échelle (dilatation) et b le paramètre de translation).
La décomposition d’un signal en ondelettes est ainsi paramètrable : les ondelettes filles sont, à l’aide d’une fonction
d’échelle ϕ , réglables en dilatation et en translation de l’ondelette mère.

3. 3
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

La variable a joue le rôle de l’inverse de la fréquence : plus a est petit moins l’ ondelette est étendue
temporellement, donc plus la fréquence centrale de son spectre est élevée.
On peut interpréter cette expression comme une projection du signal sur une famille de fonctions analysantes ψ a,b
1 t −b
construite à partir d'une fonction mère ψ conformèment à l’équation suivante : ψ a ,b (t ) = ψ( )
a a
Les premières ondelettes utilisées ont été l’ondelette de Morlet, une gaussienne modulée par une exponentielle
complexe, le « chapeau mexicain », dérivée seconde d'une gaussienne, et celle de Haar, définie par morceaux.
Inversion (reconstruction) - Admissibilité
Une ondelette est une onde localisée, évanescente. Sa forme n’est pas unique (il suffit qu’elle autorise la reconstruction) :
∞ ∞ ∞ 2
1 dν
Reconstruction f (t ) = Cψ ∫ ∫ 2 F (a, b)ψ a ,b (t ) da db avec Cψ = 2π ∫ Ψ (ν )
−1

−∞ −∞ a −∞
ν
où Ψ (ν ) représente la TF de ψ (t )
La condition d’existence de Cψ est la condition d’admissibilité d’une fonction comme ondelette :
∞ 2 2
dν dν
0
Condition d’existence ∫
0
Ψ (ν )
ν
= ∫
−∞
Ψ (ν )
ν
<∞

Cette équation se ramène le plus souvent à la condition suivante (utilisation du théorème de Parseval), peu
contraignante qui indique seulement que la fonction ondelette soit à moyenne nulle :
+∞

−∞
∫ ψ (t ) dt = 0
Le choix de l’ondelette est donc en principe très ouvert. Cependant, la robustesse et la vitesse de convergence de
l’algorithme de reconstruction (ainsi que la compacité de la décomposition, caractérisée par la non redondance de
l’information) sont très dépendants du choix de l’ondelette.

Transformée en ondelettes discrète (m, n)∈ N


m +∞

∫ f (t )ψ (a t − nb0 ) dt = < f , ψ m ,n >
−m
F (m, n) = a 0
2
0
−∞
m +∞

∫ f (t )ψ (2
−m
Si on choisit a0 = 2 et b0 = 1 , on parle de transformée dyadique : F ( m, n) = 2 2
t − n) dt
−∞

Reconstruction x(t ) = ∑∑ F (m, n)ψ m ,n (t ) = ∑ x m (t ) avec x m (t ) = ∑ F (m, n)ψ m,n (t )


m n m n

Types d’ondelettes : Ondelettes de Morlet


x2
1 − 2 − iω 0 x
Ondelette mère ψ ( x) = e e

Facteur d’échelle : ω0 = 5
0.5 0.5 0.4

Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x) 0.2

0.5 0.5 0
5 0 5 5 0 5 5 0 5
x x x

3. 4
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Facteur d’échelle : ω 0 = 10
0.5 0.5 0.4
0.399 0.356 0.399

Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x) 0.2

−6
− 0.378 0.5 − 0.356 0.5 1.487 ×10 0
5 0 5 5 0 5 5 0 5
−5 x 5 −5 x 5 −5 x 5

Types d’ondelettes : Chapeau mexicain


x2
2 −1 / 4 − ⎛ x⎞
Ondelette mère ψ ( x ) = π (1 − x 2 )e 2
Avec le facteur d’échelle a : ψ⎜ ⎟
3 ⎝a⎠
Facteur d’échelle : a = 1
1 1
0.867

ψ ( x) 0 ψ ( x) 0.5

− 14
1.495 ×10 0
1 5 0 5
5 0 5
x −5 x 5

Facteur d’échelle : a = 0.5


1 1
0.867 0.867

ψ ( x) 0 ψ ( x) 0.5

− 0.384 1 0 0
5 0 5 5 0 5
−5 x 5 −5 x 5

Types d’ondelettes : Ondelettes d'Ingrid Daubechies


2 N −1
1
Ondelette mère k [cos(kx ) + i sin (kx )]
ψ ( x) = ∑
k = − 2 N −1) 5 (
Facteur d’échelle : N = 2
16
2 .10 4 3

2
2

Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x)
1
2

16
2 .10 4 0
5 0 5 5 0 5 5 0 5
x x x

3. 5
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Facteur d’échelle : N = 5
0 20 20
0 15.6 15.6

Re( ψ ( x) ) Im( ψ ( x) ) 0 ψ ( x) 10

− 12
01 .10 15 − 15.6 20 2.025 ×10 0
5 0 5 5 0 5 5 0 5
−5 x 5 −5 x 5 −5 x 5

Types d’ondelettes : Ondelettes de Gabor


1 +∞ (τ − t ) 2
− −
Transformée en ondelettes de Gabor F (t ,ν ) = π 4
∫ f (τ ) e
−∞
2
e − i 2πντ dτ

1 x2
− −
Ondelette mère (Gaborette) ψ ( x) = π 4
e 2
e − i 2πνx
Facteur d’échelle : ν = 1
1 1 1
0.751 0.7 0.751

Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x) 0.5

−6
− 0.663 1 − 0.7 1 2.799 ×10 0
5 0 5 5 0 5 5 0 5
−5 x 5 −5 x 5 −5 x 5

Facteur d’échelle : ν = 3
1 1 1
0.751 0.711 0.751

Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x) 0.5

−6
− 0.663 1 − 0.711 1 2.799 ×10 0
5 0 5 5 0 5 5 0 5
−5 x 5 −5 x 5 −5 x 5

Ondelettes de Haar
⎧ 0 si x < 0
⎪ 1 si 0 ≤ x < 1 / 2

Ondelette mère ψ ( x ) = ⎨
⎪ − 1 si 1 / 2 ≤ x < 1
⎪⎩ 0 si x ≥ 1

1.1 1 1.1 1

ψ ( x) 0 ψ ( x) 0.5

− 1.1 1 0 0
5 0 5 5 0 5
−5 x 5 −5 x 5

3. 6
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Algorithme de Mallat
L’algorithme pyramidal de Mallat réalise la décomposition d’un signal en une somme d’ondelettes ainsi que sa
reconstruction, suivant un processus itératif rapide. Le signal doit avoir une longueur égale à une puissance de 2.
La transformée en ondelettes a la même longueur que le signal.
Le signal décomposé, est constitué [à chaque étape m de la décomposition (partitionnement) qui compte n
niveaux] de 2 parties :
. la partie analyse ou approximation, constituée des 2 1ers coefficients du signal décomposé,
. la partie détail, constituée du reste des coefficients du signal décomposé

La partie détail est elle-même formée de plusieurs séquences, représentant l’information à différentes échelles
(analyse mutirésolution) : le résultat de la décomposition du signal est un partitionnement en une partie dite
analyse (à 2 coefficients) et une partie dite détail (le reste des points) contenant la décomposition du signal en
ondelettes à différentes résolutions.

Analyse en ondelettes (wavelets)

Décomposition (analyse mutirésolution ondelettes)

2 n+1 points Signal d'entrée V0


analyse détail
filtres (h,g)

2 n points 2 n points
V1 W1 Signal décomposé au niveau 1

analyse détail filtres (h,g)

V2 W2 Signal décomposé au niveau 2


... analyse détail filtres (h,g)

Vn Wn Signal décomposé au niveau n

Wn W2 W1 2 n points Signal décomposé au niveau n 2 n+1 points


n −1
2 points
Vn 2 points
2 points

(n : nombre de niveaux de décomposition, de résolution)

Reconstruction (synthèse)

2 points 2 points 2 n−1 points


2 n+1 points Vn Wn W2 W1 2 n points Signal décomposé

... Reconstruction filtres (h,g)

V2 Signal reconstruit au niveau 1

Reconstruction filtres (h,g)

V1 Signal reconstruit au niveau 2

Reconstruction filtres (h,g)

2 n+1 points Signal d'entréeV0 = Signal reconstruit au niveau n

3. 7
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Les n étapes de décomposition et de reconstruction peuvent être vues comme un filtrage, de RI h et g :


Décomposition Reconstruction

filtres décimation d'ordre 2 interpolation d'ordre 2 filtres


am am+1 am+1 am
~ 2 2
analyse analyse h
signal h signal

dm+1 dm+1
~ 2 détail détail 2
g
g

⎧ ~
a m , n = ∑ h [l − 2n] a m −1,l
Décomposition : ⎪⎪
m −1,n = ∑ a m ,k h[ n − 2k ] + ∑ d m ,k g[ n − 2k ]
l Reconstruction : a
⎨ k k
⎪d = g~[l − 2n] a
⎪⎩ m ,n ∑ l
m −1,l

~
m : indice du niveau de décomposition ; n, k, l : indices sur les signaux a, d, h, g. h représente h renversé dans le
temps. La décimation d'ordre 2 consiste en la suppression (sous-échantillonnage) d’un coefficient sur deux
L’interpolation (ou sur-échantillonnage) d’ordre 2 s'effectue en intercalant un 0 entre chaque échantillon du signal.

h[n − 2k ] = < ϕ m ,k , ϕ m −1,n > passe - bas


RI des filtres de Décomposition/Reconstruction ⎧⎨ . On a g[n] = (−1) n h[1 − n]
⎩ g [ n − 2 k ] = < ψ m,k , ϕ m −1, n > passe - haut
avec : ψ : ondelette mère
ϕ : fonction d’échelle, encore appelée ondelette père, et définie par :
ϕ m,n (t ) = 2 − m / 2 ϕ (2 − m t − n) ,
où ϕ (t − n), n ∈ Z est une base de V0 , V j constituant une suite de sous-espaces emboîtés de L ( R ) ,
2

ensemble des fonctions continues d’une variable réelle et de carré sommable.


Les filtres h et g dépendent donc des ondelettes utilisées.
⎧⎪ 1 1 ⎫⎪
Exemple : • Ondelettes de Haar : h[n] = ⎨L,0, , ,0,L⎬ où l’élément souligné correspond à l’indice n = 0
⎪⎩ 2 2 ⎪⎭
⎧⎪ 1 1 ⎫⎪
g[n] = ⎨L,0, ,− ,0, L⎬
⎪⎩ 2 2 ⎪⎭
2 2
• Ondelettes de Daubechies : h[n] est tel que : h[ n] + h[ n + 1] = 1

Analyse en paquet d’ondelettes (wavelets packets)


Décomposition (analyse mutirésolution paquet d’ondelettes)
2 n+1 points Signal d'entrée V0
analyse détail
filtres (h,g)

V1 W1

analyse détail analyse détail filtres (h,g)

V2 W2,1 W2,2 W2,3

... analyse détail analyse détail analyse détail filtres (h,g)

Vn Wn,1 Wn,2 Wn,3 ... W Wn , 2n −1


n , 2 n− 2

Vn Wn,1 Wn,2 Wn,3 ... Wn, 2 n−2 Wn, 2n −1 Signal décomposé 2 n+1 points

2 points
(n : nombre de niveaux de décomposition, de résolution)

Domaines principaux d’application des ondelettes


• l’analyse vocale
• l’analyse de signaux radar
• la compression des signaux

3. 8
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Exemples de résultats d’une analyse en ondelettes

Transformée en ondelettes de Daubechies à 4 coefficients


La longueur du signal d'entrée doit être une puissance de 2, et >=4

ONDELETTES 1D
Définition de l'ondelette mère G(x)

2 2
+ 3⋅ ⎛⎜ x +
1⎞
− 9⋅ ⎛⎜ x +
f1( x) := 3⋅ ( x + 1) 3 1⎞
f2( x) :=
4 ⎝ 2⎠ ⎝ 2⎠
F( x) := f1( x) if x < −.5
G( x) := 0 if x >1
f2( x) otherwise
otherwise
F( x) if x < 0

x := −2 , −1.99.. 2 −F( −x) otherwise

G( x) 0

2 1 0 1 2
x
Définition des ondelettes filles W(x,j) (dyadiques) obtenues à partir de l'ondelette mère G(x)

⋅ G⎛⎜ ⎞
1 x
W ( x, j) :=
j
2
j
⎝2 ⎠
Quand j entier varie, les ondelettes W(x,j) changent en échelle d'un facteur égal à une
puissance de 2. Exemple :

W ( x , 1) 0 W ( x , − 1) 0

2 0 2 2 0 2
x x

Transformée en ondelettes T(p,j,x) de la fonction p au point x à l'échelle 2 j

j
⌠ x+ 2
T( p , j, x) := ⎮ p ( t) ⋅ W ( t − x, j) dt
⌡ j
x− 2

T est définie à travers tout l'axe réel, mais les ondelettes sont en temps limité.
La valeur de T pour un instant particulier x et une échelle j procure de l'information sur p sur un
intervalle de temps de largeur 2j+1 centré en x.
Les transformées pour une échelle j large fournit de l'information pour des intervalles de temps
larges.
Les transformées pour une échelle j négative analyse les caractères de p à une petite
résolution

3. 9
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Exemple : le signal doit avoir une longueur égale à une puissance de 2 (algorithme de Mallat).
La transformée en ondelettes a la même longueur que le signal
2 2
Soit la fonction p : − 10 ⋅( x+ 3) − ( x− 1)
p ( x) := e +e
Echantillonnons p à 512 points autorisant la construction du vecteur signal P :

i := 0 .. 511 xi := −5 + .02⋅ i Pi := p ( xi)

Pi 1

0
5 0 5 10
xi

Transformée en ondelettes discrète : (par la fonction intégrée Mathcad :)

TP := dwavelet ( P) length ( TP) = 512 length ( P) = 512

Les 2 1ers éléments de TP sont appelés les coefficients d'approximation.


Les éléments restants sont les coefficients de détail.
La transformée TP contient 8 niveaux de détail :
Les 256 derniers points representent les informations à la plus fine résolution, les 128
points précédents representent une échelle 2 fois plus large, etc ...
Les éléments 2 and 3 donnent l'information à l'échelle la plus large.

Transformée en ondelettes
P : longueur 2 9 = 512 points TP : longueur 2 9 = 512
points

TP :
2 2 21 2
2 3
2 = 16
4
2 = 32
5
2 = 64
6
2 = 128
7
2 = 256 points
8

analyse (2 coeffs) détail (reste)


échelle la plus grossière (niveau 1) échelle la plus fine (niveau 8)

2 6

4
Pi 1 TP i
2

0 0
5 0 5 10 0 200 400 600
xi i
Les coefficients de la transformée en ondelettes TP sont proches de 0 pour les résolutions les
plus fines (fin du tableau de coeffs TP).
-> La compression du signal P par troncature de la transformée TP (annulation des derniers
coefficients de la transformée, correspondant à la résolution la plus fine) peut être envisagée.

3. 10
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Pour chaque échelle, la position d'un élément à l'intérieur du niveau auquel il appartient
coïncide avec la localisation dans le temps de la caractéristique à mesurer du signal.
Pour visualiser l'information, il est ainsi pratique d'étendre chaque niveau à la même longueur
que le signal original P. Nous placerons les 8 niveaux étendus dans un tableau unique A :
Niveau : r := 1 .. 8 Information à l'échelle r : A r , i := TP (floor = partie entière)
r
2 + floor⎜
⎛ i ⎞
9− r
⎝2 ⎠
Niveau 3, contenant 8 coefficients : r := 3 Niveau 6, contenant 64 coefficients : r := 6
2 0.2

A3 ,i 0 A6 ,i 0

2 0.2
0 200 400 0 200 400
i i
Pour voir la relation entre les niveaux et le signal original, affichons plusieurs niveaux de détail
sur le même graphe, sous le tracé du signal original :

Pi
0

6 4 2 0 2 4 6
xi

15

10
A2 ,i + 6

A3 ,i + 3 5

A5 ,i
0

5
0 100 200 300 400 500
i

L'information dans TP autorise la reconstruction complète du signal P.


Pour reconstruire P, nous appliquons la transformation en ondelettes inverse :

p ( t) := ∑ ∑ T(p , j, x)⋅W(t − x, j) soit, par la fonction intégrée Mathcad : S := idwavelet ( TP)


x j

2 2

Pi Si
0 0

5 0 5 5 0 5
xi xi

Le graphe montre que S coïncide avec P.

3. 11
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Remarquant que les coefficients à l'échelle la plus petite (fin du tableau de coeffs TP) sont
bien inférieurs aux coefficients des résolutions supérieures, cela suggère que l'on puisse
compresser le signal P par troncature de la transformée (= annulation des derniers
coefficients de la transformée, correspondant à la résolution la plus fine).

Ignorons par exemple les 3 plus petits niveaux, et reconstruisons P à partir de la transformée
tronquée, ne contenant que 64 éléments différents de 0.
Les 3 derniers niveaux sont constitués des derniers 256+128+64 = 448 éléments deTP.

k := 64.. 511 TP := 0 C := idwavelet ( TP)


k

2 2

Pi Ci
0 0

5 0 5 5 0 5
xi xi
Le graphe montre que C est une assez bonne réplique de P, bien que le fait d'avoir ignoré les
détails les plus fins produise une image assez pauvre du pic étroit de P, qui est une
caractéristique de détail assez fin de P (partie rapide de P occupant donc les Hautes Fréquences).

Pour visualiser les ondelettes elles-mêmes, on peut inverser une séquence transformée
contenant seulement un coefficient non nul.

t := for n ∈ 0 .. 511 w := idwavelet ( t)


t ←0
n
t ←1
100
Vue élargie :
t

1 1

wi 0 wi 0

1 1
0 200 400 280 300 320
i i

Le coefficient non nul de t se situe dans le niveau qui débute à l'élément 64, ainsi nous
pouvons situer la localisation temporelle de l'ondelette démarrant à :
100 − 64
⋅ 512 = 288
64

3. 12
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Application : compression de l’information (exemple avec les ondelettes de Haar)


la transformation en ondelettes réalise une compression temporelle (spatiale dans le cas 2D) du signal

Décomposition du signal sans pertes

Décomposition du signal avec pertes (compression avec pertes)


Tout ou partie (coefficients les plus faibles en valeur absolue) du détail d’un ou plusieurs niveaux de décomposition est annullé

Compression & analyse multirésolution


. à 1D : la compression consiste à supprimer les coefficients d’analyse les plus faibles en valeur absolue (filtre Donoho)
. à 2D : la compression consiste à supprimer les niveaux de résolution les plus fins.
3. 13
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Ondelettes de Haar 1D & 2D - Compression


Transformée en ondelettes de Haar de niveau 1 (longueur du signal length ( v ) ≥ 4 )

⎛⎜ 1 ⎞
2
analyse ( v ) := h ← ⎜ ⎟ RI h (passe-bas) du filtre de Haar

⎜ 1 ⎟ ⎛ 0.707 ⎞
⎜ h= ⎜
⎝ 2⎠ ⎝ 0.707 ⎠
for i ∈ 0 .. rows ( h ) − 1
hr ← h ⎛ 0.707 ⎞
i ( rows ( h) − i) − 1
h reverse hr = ⎜
⎝ 0.707 ⎠
for k ∈ 0 .. rows ( v ) − 1
a ← v ⋅ hr if k 0
0 0 0
Coefficients d'analyse a :
k

a = hr*v
a ← v ⋅ hr otherwise
k i k− i
i = k− 1
rows ( a)
for k ∈ 0 .. −1
2 Décimation(sous-éch.) d'ordre 2 de a
as ← a
k 2⋅ k+ 1
as

detail( v ) := for i ∈ 0 .. 1 RI h (passe-bas) du filtre de Haar

1 ⎛ 0.707 ⎞
h ←
i
h= ⎜
2 ⎝ 0.707 ⎠
for i ∈ 0 .. rows ( h ) − 1 RI g (passe-haut) du filtre de Haar
i
g ←h ⋅ ( −1) ⎛ 0.707 ⎞
i 1− i g= ⎜
⎝ −0.707 ⎠
for i ∈ 0 .. rows ( g ) − 1
gr ← g ⎛ −0.707 ⎞
i ( rows ( g) − i) − 1 g reverse gr = ⎜
⎝ 0.707 ⎠
for k ∈ 0 .. rows ( v ) − 1
d ← v ⋅ gr if k 0
0 0 0
Coefficients de détail d :
k

d = gr*v
d ← v ⋅ gr otherwise
k i k− i
i = k− 1
rows ( d )
for k ∈ 0 .. −1
2
Décimation(sous-éch.) d'ordre 2 de d
ds ← d
k 2⋅ k+ 1
ds

waveHaar( v ) := a ← analyse ( v ) analyse

d ← detail( v ) détail

w ← stack ( a , d ) w = analyse | détail


w

3. 14
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Transformée en ondelettes inverse de Haar de niveau 1

⎛⎜ 1 ⎞
2⎟
reconstruction ( a , d ) := h ← ⎜
RI h (passe-bas)

⎜ 1 ⎟ ⎛ 0.707 ⎞
⎜ h= ⎜
⎝ 2 ⎠ ⎝ 0.707 ⎠
for i ∈ 0 .. rows ( h ) − 1
RI g (passe-haut)
i
g ←h
1− i
⋅ ( −1) ⎛ 0.707 ⎞
i g= ⎜
for k ∈ 0 .. rows ( a) − 1 ⎝ −0.707 ⎠
as ←a
2k k
Interpolation (sur-éch.)
as ←0
2⋅ k+ 1 d'ordre 2 de a & d pour

for k ∈ 0 .. rows ( d ) − 1 donner resp. as & ds


ds ←d
2k k
ds ←0
2⋅ k+ 1
for k ∈ 0 .. rows ( as ) − 1
v1 ← as ⋅ h if k 0
0 0 0
k


v1 = as*h
v1 ← as ⋅ h otherwise
k i k− i
i = k− 1
for k ∈ 0 .. rows ( ds ) − 1
v2 ← ds ⋅ g if k 0
0 0 0
k
v2 ←
k ∑ ds ⋅ g
i k− i
otherwise v2 = ds*g

i = k− 1
v ← v1 + v2
v = as*h + ds*g
v

a ← submatrix⎛⎜ w , 0 , − 1 , 0 , 0⎞
rows ( w)
iwaveHaar( w) := Coefficients d'analyse a
⎝ ⎠
2

d ← submatrix⎛⎜ w , , rows ( w) − 1 , 0 , 0⎞
rows ( w) Coefficients de détail d
⎝ 2 ⎠
Reconstruction
v ← reconstruction ( a , d )
v

3. 15
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

m
Transformée en ondelettes de Haar de niveau n (length(v) = 2 ; 1 ≤ n ≤ m ; m ≥ 1 )

wavehaar ( v , n ) := a ←v
0
for i ∈ 1 .. n
a ← analyse a
i ( i−1)
d ← detail( a )
i i− 1
w←d
n
for i ∈ n , n − 1 .. 2 if n > 1
w ← stack w , d ( i− 1 )
w ← stack a , w (n )
w

Transformée en ondelettes inverse de Haar de niveau n

a ← submatrix⎛ w , 0 , − 1 , 0 , 0⎞
rows ( w)
iwavehaar ( w , n ) :=
n ⎜ n
⎝ 2 ⎠
for i ∈ n , n − 1 .. 1

d ← submatrix⎛ w , − 1 , 0 , 0⎞
rows ( w) rows ( w)
,
i ⎜ i i− 1
⎝ 2 2 ⎠
for i ∈ n − 1 , n − 2 .. 0
a ← reconstruction a
i ( i+ 1 , di+ 1)
a
0

Programmation de la décomposition en ondelettes de Haar 1D de niveau n

v a0 signal original v

w1 a1 d1 transformée en ondelettes de v au niveau 1


a1 = analyse(a 0 ) d1 = détail( a 0 )
w2 a2 d2 d1 transformée en ondelettes de v au niveau 2
a 2 = analyse(a1 ) d 2 = détail(a1 )
w3 a3 d3 d2 d1 transformée en ondelettes de v au niveau 3
a3 = analyse(a 2 ) d 3 = détail(a 2 )
...

3. 16
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Test sur séquence


séquence

⎛0⎞ ⎛ 0.707 ⎞ ⎛0⎞


⎜1⎟ ⎜ 3.536 ⎟ ⎜1⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜2⎟ Décomposition au niveau 1
⎜ 6.364 ⎟ Reconstruction au niveau 1
⎜2⎟
⎜3⎟ ⎜ 9.192 ⎟ ⎜3⎟
s := ⎜ ⎟ w := waveHaar( s ) w=⎜ ⎟ v := iwaveHaar( w) v=⎜ ⎟
⎜4⎟ ⎜ −0.707 ⎟ ⎜4⎟
⎜5⎟ ⎜ −0.707 ⎟ ⎜5⎟
⎜6⎟ ⎜ −0.707 ⎟ ⎜6⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎝7⎠ ⎝ −0.707 ⎠ ⎝7⎠

⎛ 0.707 ⎞ ⎛0⎞
⎜ 3.536 ⎟ ⎜1⎟
⎜ ⎟ ⎜ ⎟
Décomposition au niveau 1
⎜ 6.364 ⎟ Reconstruction au niveau 1
⎜2⎟
⎜ 9.192 ⎟ ⎜3⎟
w := wavehaar ( s , 1) w=⎜ ⎟ v := iwavehaar ( w , 1) v=⎜ ⎟
⎜ −0.707 ⎟ ⎜4⎟
⎜ −0.707 ⎟ ⎜5⎟
⎜ −0.707 ⎟ ⎜6⎟
⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝7⎠

⎛ 3 ⎞ ⎛0⎞
⎜ 11 ⎟ ⎜1⎟
⎜ ⎟ ⎜ ⎟
Décomposition au niveau 2
⎜ −2 ⎟ Reconstruction au niveau 2
⎜2⎟
⎜ −2 ⎟ ⎜3⎟
w := wavehaar ( s , 2) w=⎜ ⎟ v := iwavehaar ( w , 2) v=⎜ ⎟
⎜ −0.707 ⎟ ⎜4⎟
⎜ −0.707 ⎟ ⎜5⎟
⎜ −0.707 ⎟ ⎜6⎟
⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝7⎠

⎛ 9.899 ⎞ ⎛0⎞
⎜ −5.657 ⎟ ⎜1⎟
⎜ ⎟ ⎜ ⎟
Décomposition au niveau 3
⎜ −2 ⎟ Reconstruction au niveau 3
⎜2⎟
⎜ −2 ⎟ ⎜3⎟
w := wavehaar ( s , 3) w=⎜ ⎟ v := iwavehaar ( w , 3) v=⎜ ⎟
⎜ −0.707 ⎟ ⎜4⎟
⎜ −0.707 ⎟ ⎜5⎟
⎜ −0.707 ⎟ ⎜6⎟
⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝7⎠
3. 17
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Test sur signal 1D on voit la compression temporelle du signal

file := "s.txt" s := READPRN( file) k := 0 .. length ( s ) − 1 length ( s ) = 64

signal 1D
400

sk 200

0
0 50 100
k

Décomposition au niveau 1 /Reconstruction au niveau 1

w := wavehaar ( s , 1) v := iwavehaar ( w , 1) length ( w) = 64

400 500 400

sk 200 wk 0 vk 200

0 500 0
0 50 100 0 50 100 0 50 100
k k k

Décomposition au niveau 2 /Reconstruction au niveau 2

w := wavehaar ( s , 2) v := iwavehaar ( w , 2)

v2 := iwavehaar ( iwavehaar ( w , 1) , 1) faux mais rigolo car approximation du résultat !

500 400 400

wk 0 vk 200 v2 k 200

500
0 50 100 0 0
0 50 100 0 50 100
k
k k

Décomposition au niveau 3 /Reconstruction au niveau 3

w := wavehaar ( s , 3) v := iwavehaar ( w , 3)

400 500 400

sk 200 wk 0 vk 200

0 500
0 50 100 0 50 100 0
0 50 100
k k
k

3. 18
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Test sur signal 2D file := "bato2.bmp" I := READ_IMAGE( file)

signal 2D (image)

Transformée de Haar 1D en x de niveau n Transformée de Haar 1D en y de niveau n


wavehaarx( I , n ) := for y ∈ 0 .. rows ( I) − 1 wavehaary ( I , n ) := for x ∈ 0 .. cols ( I) − 1
〈y〉 〈x〉
v← I
T ( ) v←I
w ← wavehaar ( v , n )
w ← wavehaar ( v , n )
〈x〉
〈y〉 W ←w
W ← w
W
T
W

Transformée Haar inverse 1D en x de niveau n Transformée Haar inverse 1D en y de niveau n


iwavehaarx( W , n ) := for y ∈ 0 .. rows ( W ) − 1 iwavehaary ( W , n ) := for x ∈ 0 .. cols ( W ) − 1
〈y〉 〈x〉
w← W ( )
T w←W
v ← iwavehaar ( w , n )
v ← iwavehaar ( w , n )
〈x〉
〈y〉 I ←v
I ←v
I
T
I

Transformée de Haar 2D de niveau n comme Transformées 1D en x et y (séparabilité )


wavehaar2d ( I , n ) := Wx ← wavehaarx( I , n ) wavehaar2d ( I , n ) := Wy ← wavehaary ( I , n )
W ← wavehaary ( Wx, n ) ≡ W ← wavehaarx( Wy , n )
W W

Transformée Haar inverse 2D de niveau n ou encore (cela revient au même) :

iwavehaar2d ( W , n ) := Ix ← iwavehaarx( W , n ) iwavehaar2d ( W , n ) := Iy ← iwavehaary ( W , n )



I ← iwavehaary ( Ix, n ) I ← iwavehaarx( Iy , n )
I I

Décomposition en ondelettes de Haar 2D à partir de décompositions de Haar 1D en x wavehaarx() et en y wavehaary()

ex. niveau 1 ou encore (cela revient au même) :


a d a d
a d a d
a(a) a(d) aa a(a) d(a) aa

= ... avec = avec ...


... ...
d(a) d(d) a(d) d(d)
dd dd

W=wavehaar2d(I) W=wavehaary(Wx) Wx=wavehaarx(I) W=wavehaar2d(I) W=wavehaarx(Wy) Wy=wavehaary(I)


3. 19
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Recadrage de dynamique (pour occuper exactement la plage 0 -> 255) d'une image
recdyn ( I) := min ← I
0, 0
max ← I
0, 0
for y ∈ 0 .. rows ( I) − 1
for x ∈ 0 .. cols ( I) − 1
max ← I if I > max
y,x y,x
min ← I if I < min
y,x y,x
for y ∈ 0 .. rows ( I) − 1 if max ≠ min
for x ∈ 0 .. cols ( I) − 1
⎛ Iy , x − min ⎞
J ← trunc ⎜ ⋅ 255⎟
y,x ⎝ max − min ⎠
J ← I otherwise
J

Transformée de Haar 1D en x et en y de niveau n on voit la compression spatiale

Décomposition/Reconstruction au niveau 1 en x Décomposition/Reconstruction au niveau 1 en y

Wx := wavehaarx( I , 1) Jx := iwavehaarx( Wx, 1) Wy := wavehaary ( I , 1) Jy := iwavehaary ( Wy , 1)

Wx Jx Wy Jy

Recadrage de dynamique Wx := recdyn ( Wx) Wy := recdyn ( Wy )

Wx Jx Wy Jy

3. 20
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Décomposition/Reconstruction au niveau 2 en x Décomposition/Reconstruction au niveau 2 en y

Wx := wavehaarx( I , 2) Jx := iwavehaarx( Wx, 2) Wy := wavehaary ( I , 2) Jy := iwavehaary ( Wy , 2)

Wx Jx Wy Jy

Recadrage de dynamique Wx := recdyn ( Wx) Wy := recdyn ( Wy )

Wx Jx Wy Jy

Transformée de Haar 2D de niveau n comme Transformées 1D en x et en y de niveau n


Décomposition/Reconstruction 2D au niveau 1 Décomposition/Reconstruction 2D au niveau 2

W := wavehaar2d ( I , 1) Jx := iwavehaar2d ( W , 1) W2 := wavehaar2d ( I , 2) Jy := iwavehaar2d ( W2 , 2)

W Jx W2 Jy

Recadrage de dynamique W := recdyn ( W ) W2 := recdyn ( W2)

W Jx W2 Jy
3. 21
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Compression de signal (avec pertes)


effectuée ici sur le signal entier alors qu'en réalité on l'effectue à 1D par fenêtres (trames de 20 ms pour la
parole) ou à 2D par blocs carrés de pixels ( 8x8 par exemple ) (JPEG2000) ou par bandelettes (zones de pixels).
(de plus les ondelettes de Haar ne soient pas très adaptées, contrairement à celles de Daubechies plus compactes)

Annulation des coefficients de detail de niveau n de la transformée de Haar 1D

a ← submatrix⎛ w , 0 , − 1 , 0 , 0⎞
rows ( w)
cutdetail ( w , n ) :=
n ⎜ n ⎟
⎝ 2 ⎠
for i ∈ n , n − 1 .. 1

d ← submatrix⎛ w , − 1, 0, 0⎞
rows ( w) rows ( w)
,
i ⎜ i i− 1 ⎟
⎝ 2 2 ⎠
for k ∈ 0 .. length d ( n) − 1
(dn)k ← 0
for i ∈ n − 1 , n − 2 .. 0
a ← stack a
i ( i+ 1 , di+ 1)
a
0

Annulation des coefficients de detail de niveau n de la transformée de Haar 2D

cutdetailx( W , n ) := for y ∈ 0 .. rows ( W ) − 1 cutdetaily ( W , n ) := for x ∈ 0 .. cols ( W ) − 1


〈y〉 〈x〉
w← W
T( ) w←W
v ← cutdetail ( w , n )
v ← cutdetail ( w , n )
〈x〉
〈y〉 V ←v
V ←v
V
T
V
cutdetail2d ( W , n ) := Wx ← cutdetailx( W , n )
W ← cutdetaily ( Wx, n )
W

Rapport signal/bruit (overall et en dB) : indicateur de la qualité de la compression

⎡ length( x) −1 ⎤

⎢ ∑ ( n) ⎥
x
2 ⎥

=
SNR( x, u ) := 10⋅ log ⎢ ⎥
n 0
⎢ length( x) −1 ⎥

⎢ ∑ ( n n) ⎥
x − u
2⎥
Conversion 1D en 2D

⎣ n =0 ⎦ length ( i)
c1D2D( i, Nx) := Ny ←
Conversion 2D en 1D Nx
c2D1D( I) := for y ∈ 0 .. rows ( I) − 1 for y ∈ 0 .. Ny − 1
for x ∈ 0 .. cols ( I) − 1 for x ∈ 0 .. Nx − 1
n ← y ⋅ cols ( I) + x n ← y ⋅ Nx + x
i ←I I ←i
n y,x y,x n
3. 22
i I
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Compression de séquence
séquence

⎛0⎞ ⎛ 0.707 ⎞ ⎛0⎞


⎜1⎟ ⎜ 3.536 ⎟ ⎜1⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜2⎟ Décomposition au niveau 1 ⎜ 6.364 ⎟ Reconstruction au niveau 1 ⎜2⎟
⎜3⎟ ⎜ 9.192 ⎟ ⎜3⎟
s := ⎜ ⎟ w := wavehaar ( s , 1) w=⎜ ⎟ v := iwavehaar ( w , 1) v=⎜ ⎟
⎜4⎟ ⎜ −0.707 ⎟ ⎜4⎟
⎜5⎟ ⎜ −0.707 ⎟ ⎜5⎟
⎜6⎟ ⎜ −0.707 ⎟ ⎜6⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎝7⎠ ⎝ −0.707 ⎠ ⎝7⎠
Annulation détail niveau 1 (taux compression élevé 50%) Décomposition niveau 1 w := wavehaar ( s , 1)

⎛ 0.707 ⎞ ⎛ 0.707 ⎞ ⎛ 0.5 ⎞


⎜ 3.536 ⎟ ⎜ 3.536 ⎟ ⎜ 0.5 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 6.364 ⎟ Compression niveau 1
⎜ 6.364 ⎟ Reconstruction au niveau 1
⎜ 2.5 ⎟
⎜ 9.192 ⎟ ⎜ 9.192 ⎟ ⎜ 2.5 ⎟
w=⎜ ⎟ w := cutdetail ( w , 1) w=⎜ ⎟ v := iwavehaar ( w , 1) v=⎜ ⎟
⎜ −0.707 ⎟ ⎜ 0 ⎟ SNR( s , v ) = 18.451 ⎜ 4.5 ⎟
⎜ −0.707 ⎟ ⎜ 0 ⎟ ⎜ 4.5 ⎟
⎜ −0.707 ⎟ ⎜ 0 ⎟ ⎜ 6.5 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝ 0 ⎠ ⎝ 6.5 ⎠
Annulation détail niveau 2 (taux compression faible 25%) Décomposition niveau 2 w := wavehaar ( s , 2)
Avec un même taux de compression, on aurait une bien meilleure qualité en annulant la moitié des coefficients
du détail de nivau 1 qui sont les plus faibles (en valeur absolue) !

⎛ 3 ⎞ ⎛ 3 ⎞ ⎛1⎞
⎜ 11 ⎟ ⎜ 11 ⎟ ⎜2⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ −2 ⎟ Compression niveau 2
⎜ 0 ⎟ Reconstruction niveau 2
⎜1⎟
⎜ −2 ⎟ ⎜ 0 ⎟ ⎜2⎟
w=⎜ ⎟ w := cutdetail ( w , 2) w=⎜ ⎟ v := iwavehaar ( w , 2) v=⎜ ⎟
⎜ −0.707 ⎟ ⎜ −0.707 ⎟ SNR( s , v ) = 12.43 ⎜5⎟
⎜ −0.707 ⎟ ⎜ −0.707 ⎟ ⎜6⎟
⎜ −0.707 ⎟ ⎜ −0.707 ⎟ ⎜5⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝ −0.707 ⎠ ⎝6⎠
Annulation détail niveauw 1 & 2 (compression très élevé 75%) Décomposition niveau 2 w := wavehaar ( s , 2)

⎛ 3 ⎞ ⎛1⎞
⎜ 11 ⎟ ⎜2⎟
⎜ ⎟ ⎜ ⎟
Compression niveaux 1 & 2
⎜ −2 ⎟ Reconstruction au niveau 1
⎜1⎟
⎜ −2 ⎟ ⎜2⎟
w=⎜ ⎟ v=⎜ ⎟
w := cutdetail ( w , 1) w := cutdetail ( w , 2) v := iwavehaar ( w , 2)
⎜ −0.707 ⎟ ⎜5⎟
⎜ −0.707 ⎟ SNR( s , v ) = 11.461 ⎜6⎟
⎜ −0.707 ⎟ ⎜5⎟
⎜ ⎟ ⎜ ⎟
⎝ −0.707 ⎠ ⎝6⎠
3. 23
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Compression signal 1D

file := "s.txt" s := READPRN( file) k := 0 .. length ( s ) − 1 length ( s ) = 64


signal 1D
400

sk 200

0
0 50 100
k

Décomposition niveau 1 /Compression niveau 1 /Reconstruction niveau 1

w := wavehaar ( s , 1) w := cutdetail ( w , 1) v := iwavehaar ( w , 1) SNR( s , v ) = 18.672

400 400 400

sk 200 vk 200 vk
200
sk
0 0
0 50 100 0 50 100
k k
0
0 50 100
k
Décomposition niveau 2 /Compression niveau 2 /Reconstruction niveau 2

w := wavehaar ( s , 2) w := cutdetail ( w , 2) v := iwavehaar ( w , 2) SNR( s , v ) = 13.296

400 400 400

sk 200 vk vk
200
200
sk
0
0 50 100 0
0 50 100
k 0
k 0 50 100
k
Décomposition niveau 2 /Compression niveaux 1 & 2 /Reconstruction niveau 2

w := wavehaar ( s , 2) w := cutdetail ( w , 1) w := cutdetail ( w , 2) v := iwavehaar ( w , 2) SNR( s , v ) = 12.19

400 400 400

sk 200 vk vk
200
200
sk
0
0 50 100 0
0 50 100
k 0
k 0 50 100
k
3. 24
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Compression signal 2D file := "bato2.bmp" I := READ_IMAGE( file)

Transformée Haar 1D en x et en y niveau n


Décomposition niveau 1 /Compression niveau 1 /Reconstruction niveau 1 (Taux 50%)

Wx := wavehaarx( I , 1) Wx := cutdetailx( Wx, 1) Jx := iwavehaarx( Wx, 1)


Wy := wavehaary ( I , 1) Wy := cutdetaily ( Wy , 1) Jy := iwavehaary ( Wy , 1) I

Wx Jx Wy Jy

Conversion 2D en 1D et Transforméee 1D Nx := cols ( I)


2D->1D/Décomposition niveau 1 /Compression niveau 1 /Reconstruction niveau 1/1 D->2D (Taux 50%) : c'est pareil !

i := c2D1D( I) w := wavehaar ( i, 1) w := cutdetail ( w , 1) v := iwavehaar ( w , 1) J := c1D2D( v , Nx)

I J

Transformée de Haar 2D de niveau n comme Transformées 1D en x et en y de niveau n


Décomp.niv.1 /Compr. niv.1 /Reconstr. niv.1 (Taux 75%) Décomp. niv.2 /Compr.niv.1&2 /Reconstr.niv.2 (Taux 87.5%)

W := wavehaar2d ( I , 1) W2 := wavehaar2d ( I , 2) W2 := cutdetail2d ( W2 , 1)


W := cutdetail2d ( W , 1) J := iwavehaar2d ( W , 1) W2 := cutdetail2d ( W2 , 2) J2 := iwavehaar2d ( W2 , 2)

W J W2 J2

3. 25
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Décomposition en ondelettes 2D (images)

Décomposition (1er niveau : obtention des 4 quadrants)


Analyse/Détail Analyse/Détail

Reconstruction (1er niveau : à partir des 4 quadrants)


Reconstruction Reconstruction

3. 26
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

II. ANALYSE CEPSTRALE outil de caractérisation temporel

Le Cepstre complexe de la séquence x(n) est la séquence c x (n) ainsi définie : c x ( n) = TZ


−1
[ln( X ( z ) )]

avec : X ( z ) = TZ [x(n)] = ∑ x ( n) z −n

n = −∞

La séquence des coefficients cepstraux cx ( n) d’un signal x(n) fournit une analyse temporelle du signal x(n) .


La TZ C x (z ) du cepstre c x (n) est donnée par (si C x (z ) converge) : C x ( z ) = ln ( X ( z ) ) = ∑ c ( n) z
x
−n

n = −∞

En régime harmonique ( z = e iω = e i 2π f ), on a, en exprimant X ( f ) = X ( f ) ⋅ e iϕ ( f ) avec ϕ ( f ) = Arg [ X ( f )] :

( )
C x ( f ) = ln ( X ( f ) ) = ln X ( f ) ⋅ e iϕ ( f ) = ln X ( f ) + iϕ ( f ) Cepstre fréquentiel TF cx ( n)[ ] = Cx ( f )

En transformant, à l’aide du logarithme, un produit en somme, la représentation de C x ( f ) des signaux à Temps


Discret s’apparente au diagramme de Bode des signaux à Temps Continu.

Le Cepstre c x (n) peut donc également être obtenu par Transformation de Fourier inverse de C x ( f ) :
π π
c x (n) = TF −1 [C x ( f )] = TF −1 [ln X ( f ) ] + i ⋅ TF −1 [ϕ ( f )] = ∫ ln X ( f ) e i 2π nf df + i ⋅ ∫ ϕ ( f ) e i 2π nf df
−π −π

Pour un signal x(n) réel, les propriétés de symétrie de la TF donnent le résultat simplifié :
⎧π π

c x (n) = 2⎨∫ ln X ( f ) cos(2π nf )df − ∫ ϕ ( f ) sin( 2π nf )df ⎬
⎩0 0 ⎭

Remarque

Dans certaines applications comme le traitement de la parole, on ne calcule qu’une partie de Cepstre qui correspond au
module de X ( f ) :
π
c x (n) = 2 ∫ ln X ( f ) cos(2π nf )df
0

Cepstre de la réponse d’un filtre linéaire

Soit un filtre numérique linéaire de FT H ( z ) et d’entrée/sortie respectives x(n) et y (n) .


Le Cepstre c y (n) de la sortie s’obtient à partir de celui ( c x (n) ) de l’entrée et de celui ( ch (n) ) de la RI h(n) du filtre :

c y (n) = TZ −1 [ln(Y ( z ) )] = TZ −1 [ln(H ( z ) X ( z ) )] = TZ −1 [ln(H ( z ) ) + ln( X ( z ) )] = TZ −1 [ln(H ( z ) )] + TZ −1 [ln( X ( z ) )]

soit : c y ( n) = ch ( n) + c x ( n)

3. 27
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Application : Traitement de la parole


Si l’on prend l’exemple d’une application en traitement de la parole, un modèle de production de la parole consiste
dans la relation suivante : f (nT ) = h(nT ) * e(nT )
où : . f (nT ) est le signal vocal échantillonné à la période T ,
. h(nT ) , la Réponse Impulsionnelle du conduit vocal (caractérisant ce dernier dans un labs de temps) et
. e(nT ) , le signal d’excitation permettant de synthétiser le signal vocal.

La méthode de calcul des coefficients cepstraux conduit à effectuer dans la fenêtre temporelle d’analyse une
déconvolution de la relation précédente afin de séparer les contributions du conduit vocal et de l’excitation.

L’analyse cepstrale procède de la façon suivante pour transformer le produit de convolution en addition :
- Pour transformer le produit de convolution de la relation précédente en produit simple, elle opère une TFD
N −1 N −1
de f (nT ) , soit : F (ω k ) = ∑ f (nT ) e −i ω knT / N = ∑ f (nT ) e −i ω n kT / N
n =0 n =0


avec : N le nombre de points de la TFD , ω= , ω n = nω , ω k = kω .
N
(On note indifféremment la TFD de f (nT ) par : F (k ) , F (kT ) , F (ω k ) , F (ω k T ) , F (eω k ) ...)

On a, en notant H (ω k ) et E (ω k ) , les TFs respectives de h(nT ) et e(nT ) :


F (ω k ) = H (ω k ) E (ω k )

- Elle applique le logarithme à la relation précédente, pour transformer le produit en addition :


log F (ω k ) = log H (ω k ) + log E (ω k )

- Elle revient au domaine temporel pour donner le cepstre caractérisant la signal f (nT ) défini par :
TF −1 [log F (ω k ) ]
L’analyse cepstrale est une analyse temporelle (le cepstre bien qu’anagramme du mot « spectre », n’est pas une sorte de spectre).
Elle donne les coefficients cepstraux.
Coefficients cepstraux

Les différentes étapes d’une analyse cepstrale


3. 28
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

III. ANALYSE LPC (Codage Prédiction Linéaire) outil de caractérisation temporel


(Voir chapitre sur la prédiction pour compléments)
L’analyse LPC est une analyse temporelle, mais de nombreux paramètres peuvent être établis dans le domaine
fréquentiel. On l’a déjà rencontrée avec les filtres formeurs AR.

L’analyse LPC s’appuie sur les coefficients ai du filtre formeur AR d’ordre N qui, excité par un bruit blanc de
variance V à déterminer, produit le signal considéré, à étudier. La séquence ai { } est donc le résultat du codage LPC
et sert de base à l’analyse LPC.

Détermination des coefficients ai du filtre formeur AR :

Dans une application de traitement de la parole par exemple, la méthode LPC calcule des coefficients sur un échantillon
de parole par prédiction à partir d’une pondération linéaire d’un nombre fini d’échantillons le précédant. Cette méthode
utilise le modèle suivant de production de la parole : ( T : période d’échantillonnage)
e(nT) Impulsions périodiques
Excitation Conduit vocal Parole
0 t = nT
Voisé/Non voisé
e(nT) Bruit blanc s(nT)
G/A(z)
0 t = nT filtre AR

e(nT ) , peut être assimilé à un filtre récursif. Avec une bonne


Le conduit vocal, qui filtre le signal d’excitation
approximation, le signal s (nT ) qu’il émet à un instant peut être calculé à partir des valeurs qu’il a prises aux m
instants précédents.

A l’instant nT , le signal s (nT ) peut donc s’exprimer comme issu d’une combinaison linéaire de son passé aux m
instants précédents, et d’un terme d’erreur e(nT ) à cet instant (représenté par le signal d’excitation du modèle de
production de parole) :
m
s (nT ) = ∑ ai′s[(n − i )T ] + Ge(nT ) G : gain de réglage
i =1
Ge(nT ) : erreur de prédiction
m

∑ a′s[(n − i)T ] : partie prédite


i =1
i

ai′ ≡ −ai ∀i ∈ [1 .. m] : coefficients de prédiction


Le modèle de production de la parole (filtre formeur AR) s’écrit :
G
S ( z) = E( z) G : gain de réglage
A( z )
G / A( z ) : FT du conduit vocal
E ( z ) : TZ de l’excitation
S (z ) : TZ de la sortie du conduit vocal (signal de parole)
m m
Modèle : A( z ) = ∑ ai z −i
i =0
d’où : GE ( z ) = S ( z ) A( z ) = S ( z )∑ ai z −i soit dans le domaine temporel :
i =0
m
⎛ m ⎞
Ge(nT ) = ∑ ai s[(n − i )T ] soit, en fixant a0 = 1 : Ge(nT ) = s (nT ) − ⎜ − ∑ ai s[(n − i )T ]⎟
i =0 ⎝ i =1 ⎠
Le terme Ge(nT ) est l’erreur de prédiction, erreur entre l’échantillon de parole réel et l’échantillon prédit.
m
La prédiction linéaire de s (nT ) est donnée par : s (nT ) = −∑ ai s[(n − i )T ]
i =1

3. 29
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Pour déterminer les coefficients ai , on peut minimiser l’énergie W de l’erreur sur l’intervalle de temps [ pT , rT ] :
r
W = ∑ [Ge(nT )]
2

n= p

r ⎡ m 2
⎡m
r
⎤ m ⎤
On a : W = ∑ ⎢∑ ai s[(n − i )T ]⎥ = ∑ ⎢∑ ai s[(n − i )T ] ∑ a j s[(n − j )T ]⎥
n = p ⎣ i =0 ⎦ n = p ⎣ i =0 j =0 ⎦
r m m m m r
soit : W = ∑∑∑ ai a j s[(n − i )T ]s[(n − j )T ] = ∑∑ ai a j ∑ s[(n − i )T ]s[(n − j )T ]
n = p i =0 j =0 i =0 j =0 n= p
m m r
et : W = ∑∑ ai a j Cij avec : Cij = ∑ s[(n − i )T ]s[(n − j )T ]
i =0 j =0 n= p

Pour minimiser l’énergie W de l’erreur, on peut utiliser la méthode des moindres carrés :
m m
En écrivant que la dérivée partielle de W par rapport à ak est nulle, on a l’équation suivante : ∑ ai Cik + ∑ a j Ckj = 0
i =0 j =0

Pour la résolution, l’intervalle de sommation [ pT , rT ] peut être défini de 2 façons selon que l’on utilise l’une ou
l’autre des 2 méthodes suivantes :

- Méthode d’autocorrélation : l’intervalle de temps [ pT , rT ] va de − ∞ à + ∞ et on considère le signal nul


hors de l’intervalle d’échantillons [0, N ] où N est le nombre de points considérés pour le signal de parole.

- Méthode de covariance : l’intervalle de temps [ pT , rT ] est limité à [0, ( N − 1)T ] .

Les coefficients de prédiction LPC ak conduisent à une estimation du spectre de parole une fois l’influence de
l’excitation éliminée. Ce sont les coefficients du filtre formeur AR dont l’entrée est un bruit blanc de variance V .
(cf. § 2.2.3. « Estimation de la DSP à partir du modèle AR du signal » du présent chapitre : spectre = V )
2
= φ ss (ω )
N
1 + ∑ an e − jnω
n =1

L’analyse LPC présente principalement 2 avantages :


- Elle est adaptée à l’étude de phénomènes évoluant rapidement au contraire des méthodes fréquentielles qui doivent
être effectuées sur une durée suffisamment longue si l’on veut que le spectre soit connu avec une précision convenable.
- La prédiction permet d’éliminer une part importante de la redondance du signal. La redondance est caractérisée
par l’arrivée d’échantillons ne fournissant pas d’informations nouvelles; prédire la valeur du signal en fonction de ses
valeurs passées permet de débarrasser le signal de ses pseudo-informations. Cette redondance n’est qu’éphémère
(locale) et les coefficients de prédiction linéaire doivent être réajustés régulièrement.

LPC ≡ FFT du signal généré par le filtre


formeur AR de coefficients ak
Exemple de filtrage LPC, FFT et Cepstre fréquentiel sur la voyelle « ei » du mot « soleil » dans la phrase parlée :
« La bise et le soleil se disputaient ».

3. 30
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Estimation
La théorie de l’estimation est un domaine d’application important du Traitement du Signal. Il est en effet très fréquent
qu’une information x que l’on cherche à connaître ne soit pas directement accessible, mais soit perceptible à travers
une autre grandeur observable y . Les méthodes existantes d’estimation d’une information d’après la connaissance
d’une mesure se répartissent en 2 groupes suivant la nature que l’on donne à cette information :
. si elle est aléatoire, ces méthodes relèvent de la théorie bayésienne de l’estimation, tandis que
. si elle est déterministe, on parlera alors de théorie de Fisher.
Le noyau théorique central de la 1ère est constitué des techniques d’estimation bayésienne. Ces dernières sont par la
suite complétées du principe d’orthogonalité statistique, qui conduit notamment à 2 méthodes très classsiques de
filtrage statistique, que sont le filtrage de Wiener et le filtrage de de Kalman.
Basée sur une approche très différente, la théorie de Fisher montre tout d’abord que l ’estimation d’une information
déterministe à partir de mesures bruitées est nécessairement entachée d’erreurs. Une classe particulièrement intéressante
d’estimateurs constituent alors les estimateurs de maximum de vraisemblance.

IV. ANALYSE SPECTRALE


Le spectre d’un signal déterministe s’obtient par Transformation de Fourier.
Pour un signal aléatoire, on ne dispose que d’une réalisation nécessairement tronquée du signal et pour en obtenir le
spectre ou plutôt la Densité Spectrale de Puissance, il est indispensable de qualifier le résultat obtenu (le spectre), en
termes statistiques par référence au véritable spectre.

1. ELEMENTS DE LA THEORIE CLASSIQUE DE L’ESTIMATION


Dans les problèmes d’estimation, on a généralement affaire à 2 catégories de variables :
x : un vecteur de variables inconnues que l’on cherche à déterminer.
y : un vecteur de variables mesurées (observation), dont la valeur dépend d’une manière ou d’une autre de celle de x .
Déterminer x à partir de y (et donc en fonction de y ) consiste à traiter de manière déterministe les mesures y pour
obtenir une grandeur x̂ , proche de x , soit : xˆ = f (y )
bruit
y
x f (y ) x̂

En pratique, il ne suffit pas d’effectuer une seule expérience (utilisation d’un seul y ) pour apprécier si la fonction f
est satisfaisante. Il faut envisager des résultats moyens portant sur un grand nombre d’expériences.
Le meilleur moyen d’effectuer cette analyse de validité ou de qualité de f est de placer le problème dans un contexte
statistique, en considérant que tout ou partie des variables x , y intervenant dans le problème, sont des réalisations de
variables aléatoires.
Exemple : cas monovariable
Soit à déterminer l’accélération de la pesanteur g à partir de l’observation de la vitesse de la chute d’un corps :
l’accélération g s’obtient à partir de la vitesse v du corps et du temps t par la relation linéaire : v = gt .
En pratique, on n’a pas accès à la vitesse vraie : v est une mesure bruitée de la vitesse.
On a la correspondance avec les notations précédentes :
g ≡ x
ĝ ≡ x̂
v ≡ y
v
gˆ = = f (v) ≡ xˆ = f ( y )
t
3. 31
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Si les vecteurs x et y sont considérés tous deux comme des réalisations de Variables Aléatoires X et Y , la théorie
de l’estimation est dite théorie générale de l’estimation (dûe à Bayes).
Si x est une grandeur inconnue déterminée (≡ déterministe) et y une réalisation de la VA Y , on est dans le domaine
de la théorie classique de l’estimation (théorie de Fisher).
C’est cette seconde hypothèse qui va permettre de traiter de l’estimation spectrale.
ˆ = f (Y)
ˆ = f (y ) sera une réalisation de X
. x

. X̂ , vecteur aléatoire, est appelé estimateur


. x̂ , réalisation de X̂ , est appelé estimation

Biais et variance d’un estimateur


ˆ = f (Y) par :
On définit le biais de l’estimateur X b=EX [ ]
ˆ − x = E [f (Y) − x] = b[x]
Selon que b = 0 ou non, on dira que l’estimateur est non biaisé ou biaisé.

ˆ = f (Y) par: P = E X
On définit la matrice de variance-covariance de l’estimateur X xx
ˆ −EX
ˆ X
ˆ −EX
ˆ [( [ ] )( [ ]) Τ
] = P ( x)
xx

Cas monovariable
Dans le cas monovariable, l’estimateur Xˆ = f(Y) a pour biais b = E Xˆ − x et pour variance: σ [ ] 2
[
= E Xˆ − E Xˆ [ ]] 2

Evidemment, plus b et σ sont faibles, meilleur est l’estimateur. Malheureusement, généralement, la diminution de
2

l’un provoque l’augmentation de l’autre. Dans ces conditions, un estimateur biaisé pourrait être préférable, si le biais
est faible, à un estimateur non biaisé mais de très grande variance.

Le compromis entre biais et variance peut être étudié et réalisé en examinant l’EQM de l’estimateur: EQM = E Xˆ − x : [ ] 2

(EQM : Erreur Quadratique Moyenne)

[
E Xˆ − x ] 2
[ ]
= E Xˆ 2 − 2 xE Xˆ + x 2 [ ] (E [⋅] est un opérateur linéaire, et x est une réalisation de X donc
E [x ] = x )
Comme : E Xˆ − x[ ] = E[Xˆ ] − x on a : [ ] ([ ] )
E 2 Xˆ − x = E Xˆ − x
2
[ ]
= E 2 Xˆ − 2 xE Xˆ + x 2 [ ]
[
D’autre part: E Xˆ − E Xˆ [ ]] 2
[ [ ]
= E Xˆ 2 − 2 XˆE Xˆ + E 2 Xˆ [ ] ] = E[Xˆ ] − 2E [Xˆ ] + E [Xˆ ] = E[Xˆ ] − E [Xˆ ]
2 2 2 2 2

[ ] [ ] [ ] [ ] [ ] [ ]
2
= E Xˆ 2 − 2 xE Xˆ + x 2 = E ⎡ Xˆ − E Xˆ ⎤ + E 2 Xˆ − 2 xE Xˆ + x 2
2
donc : E Xˆ − x
⎢⎣ ⎥⎦

c’est-à-dire : E [Xˆ − x ]
2
[
= E Xˆ − E Xˆ[ ]] 2
[ ]
+ E 2 Xˆ − x = σ 2
+ b2 d’où: b2 = E [Xˆ − x ]
2
−σ 2

Le compromis apparaît bien car la réduction de la variance σ 2


par exemple provoque un accroissement du biais b .

Consistance d’un estimateur


On peut également s’intéresser aux propriétés asymptotiques des estimateurs. Pour une inconnue x à estimer, on
considère des vecteurs d’observation Y de dimension croissante correspondant à une accumulation des mesures d’où
x̂ N , xˆ N +1 , L et des propriétés asymptotiques des biais bN et des variances σ N .
une suite d’estimateurs
Si lim bN = lim σ N = 0 l’estimateur est dit consistant.
N →∞ N →∞

3. 32
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Exemple 1
Si {X n } est une séquence indépendante gaussienne, de moyenne m et d’écart-type σ (≡ de variance σ 2 ),
stationnaire et ergodique, on peut en estimer la valeur moyenne à l’aide de l’estimation :
1 N −1
mˆ = ∑ xi
N i =0
1 N −1
ˆ
On peut calculer le biais et la variance de l’estimateur M = ∑ Xi :
N i =0
biais b

[ ] 1 ⎡ N −1 ⎤ 1 N −1
N ⎣ i =0 ⎦ N i =0
1 N −1
E Mˆ = E ⎢∑ X i ⎥ = ∑ E [ X i ] = ∑ m = m : le biais b = E Mˆ − m = E Mˆ − m est nul
N i =0
[ ] [ ] b=0

variance σ N2
2 2 2

[ [ ]] [ ⎡ 1 N −1
] N ⎤ 1 ⎡ N −1 ⎤ 1 ⎡ N −1 ⎤
2
= E ⎢ ∑ X i − m⎥ = 2 E ⎢ ∑ X i − Nm⎥ = 2 E ⎢ ∑ ( X i − m)⎥
2
σ 2
N = E M$ − E M$ = E M$ − m
⎣ N i =0 N ⎦ N ⎣ i =0 ⎦ N ⎣ i =0 ⎦
[ ( )]
or la séquence {X n } est indépendante : E ( X i − m ) X j − m = σ δ i , j et l’opérateur E [⋅] linéaire,
2

2
1 ⎡ N −1 ⎤ 1 ⎡ N −1 2⎤ 1 N −1
1 1
= 2 E ⎢ ∑ ( X i − m)⎥ = 2 E ⎢∑ ( X i − m) ⎥ = 2 ∑ E[ X − m] =
2
donc : σ 2
N i 2
Nσ 2 = σ 2
N ⎣ i =0 ⎦ N ⎣ i =0 ⎦ N i =0 N N
1
σ N2 = σ 2

Comme b = 0 et que lim σ N = 0 , l’estimateur est consistant.


N →∞

Exemple 2

Sous les même hypothèses que l’exemple 1, on peut estimer cette fois la variance σ de {X n } à l’aide de
2

l’estimation σ̂ :
2

1 N −1
estimateur 1 : σˆ 2 = ∑ ( xi − m ) 2
N i =0
si m est connu

1 N −1
ou estimateur 2 : σ = ∑ ( xi − mˆ ) 2
ˆ 2
si m doit être estimé simultanément.
N i =0

1 N −1
On peut calculer le biais, b1 , de l’estimateur 1, Σˆ 2 = ∑ ( X i − m) 2 :
N i =0

biais b1

[ ] 1 ⎡ N −1
N ⎣ i =0
⎤ 1 N −1 2 1
E Σˆ 2 = E ⎢∑ ( X i − m) 2 ⎥ = ∑ E [ X i − m] = Nσ 2 = σ 2 :
⎦ N i =0 N
[ ]
ˆ 2 − σ 2 = E Σˆ 2 − σ 2 est nul
le biais b1 = E Σ [ ]
b1 = 0

1 N −1
On peut calculer le biais, b2 , de l’estimateur 2, Σˆ 2 = ∑ ( X i − Mˆ ) 2 :
N i =0

3. 33
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

biais b2

⎤ 1 ⎡ N −1 ⎛ 1 N −1 ⎞ ⎤ 1 N −1 ⎡
2 2

[ ]
E Σˆ 2 =
1 ⎡ N −1 1 N −1 ⎤
E ⎢∑ ( X i − Mˆ ) 2 ⎥ = E ⎢∑ ⎜ X i − ∑ X i ⎟ ⎥ = ∑ E ⎢ X i − ∑ X i ⎥
N ⎣ i =0 ⎦ N ⎣⎢ i =0 ⎝ N i =0 ⎠ ⎦⎥ N i =0 ⎣ N i =0 ⎦

[ ]
2
1 N −1 ⎡ 1 N −1 ⎤ 1 N −1 ⎡ 2 σ 2⎤
E Σˆ 2 = ∑ E ⎢( X i − m ) − ∑ ( X i − m )⎥ = ∑ E ⎢( X i − m ) − ( X i − m ) +
2 2

N i =0 ⎣ N i =0 ⎦ N i =0 ⎣ N N ⎥⎦

[ ] 1 N −1 ⎛
N i =0 ⎝
2 2
E Σˆ 2 = ∑ ⎜⎜ E[ X i − m] − E[ X i − m] +
N
2 σ 2 ⎞ 1 N −1 2 N −1 1 N −1 σ 2
⎟⎟ = ∑ E[ X i − m]2 − 2 ∑ E[ X i − m]2 + ∑
N ⎠ N i =0 N i =0 N i =0 N

[ ] 1
N
2 1
N
1 ⎛ 1⎞
E Σˆ 2 = Nσ 2 − 2 Nσ 2 + σ 2 = σ 2 − σ 2 = σ 2 ⎜1 − ⎟ :
N
N ⎝ N⎠
σ 2

[ˆ 2 −σ
le biais b2 = E Σ 2
] [ ]
= E Σˆ 2 − σ 2
est non nul b2 = −
N
N −1
1
On peut cependant l’annuler en prenant pour estimation : σˆ 2 = ∑
N − 1 i =0
( xi − mˆ ) 2

2. THEORIE CLASSIQUE DE L’ESTIMATION SPECTRALE

2.1. Estimateurs de corrélation

La séquence d’intercorrélation de 2 signaux {X n } et {Yn } s’écrit : φ xy k


= E [ X nYn+ k ]
N
1
Avec l’hypothèse ergodique (moyenne statistique ≡ moyenne temporelle), on a : ϕ xy = lim
k N → ∞ 2N +1
∑ xn y n + k
n=− N
N
1
De même le signal d’autocorrélation s’écrit : ϕ xxk = lim
N → ∞ 2N +1

n=− N
xn xn + k

Estimation de l’autocorrélation
Cela revient pour un k donné, à une estimation de la moyenne sur n du signal {xn xn+k } .
Dans la pratique, on ne dispose évidemment pas d’une infinité d’échantillons temporels d’une séquence réalisation
{xn } de {X n } , mais seulement de N échantillons.
On ne peut alors effectuer cette moyenne que sur N − k échantillons de {xn } :
⎧ xn défini pour 0 ≤ n ≤ N − 1
en effet : le calcul des termes xn xn+ k est soumis à : ⎪ et il ne peut donc se
⎨et
⎪x
⎩ n + k défini pour 0 ≤ n + k ≤ N − 1
⎧0 ≤ n ≤ N − 1
⎪ ⎧0 ≤ n ≤ N − k − 1 si k ≥0
faire que sur l’intervalle intersection de : ⎨et soit : ⎨
⎪− k ≤ n ≤ N − k − 1 ⎩− k ≤ n ≤ N − 1 si k < 0

mais en remarquant qu’une autocorrélation est paire, on a : ϕ xx k <0
= ϕ xx k >0 = ϕ xx k
d’où les expressions de l’estimation ϕ̂ xx
k
et de l’estimateur φˆxx
k
de l’autocorrélation:
N − k −1 N − k −1
1 1
ϕˆ xxk =
N− k
∑x x n n+k
φˆxx =
k
N− k
∑X
n =0
n X n+k
n =0

3. 34
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

[ ]
N − k −1
Comme E φˆxxk =
1
∑ E[X n X n+ k ] =
1
(N − k )φ xxk = φ xxk , le biais de l’estimateur est nul :
N− k n =0 N− k
[
b = E φˆxxk − φ xxk ] = E[φˆ ] − φ xxk xxk =0
1
On montre que la variance de l’estimateur est proportionnelle à . L’estimateur est donc consistant.
N− k

Comme on l’a déjà dit, le calcul direct de l’autocorrélation ϕ xx k


n’est pas représentatif car on ne dispose que d’une réalisation {xn } .
C’est l’estimation ϕ̂ xx
k
de l’autocorrélation qui en donne un résultat fiable.

L’algorithme le plus souvent utilisé pour le calcul de l’estimation ϕ̂ xxk


fait appel à la Transformation de Fourier car on

a la relation : ϕ̂ xx =
1
( xk * x−k ) , et la propriété suivante, où :
{X } = TFD({x })
k n
:
k
N− k X est le conjugué de X k *
k

ϕ̂ xx =
k
1
N− k
( xk * x−k ) ⎯TFD
⎯ ˆ (ω ) =
⎯→ Φ xx
1
N− k
( X k ⋅ X k* ) =
1
N− k
Xk
2

L’algorithme du calcul de l’estimation ϕ̂ xx k


peut donc être celui-ci :
1. Calcul de {X k } = TFD({xn }) k = 0,L, N − 1 ; n = 0,L, N − 1
2. Calcul de {X } k
2
k = 0,L, N − 1

3. Calcul de ϕˆ xxk =
1
N− k
TFD −1 ({ X })k
2
k = 0,L, N − 1

Estimation de l’intercorrélation
L’intercorrélation n ’est pas une séquence paire. On peut transposer le cas précédent pour des signaux X n , Yn
stationnaires, ergodiques et à valeur moyenne nulle :

⎧ 1 N − k −1

⎪ϕˆ xyk = N − k ∑x n yn+ k si 0 ≤ k ≤ N


⎪ n =0
⎨ N + k −1
⎪ϕˆ = 1
⎪ xyk
N− k
∑x n−k yn si - N ≤ k ≤ 0
⎩ n =0

On peut montrer que cette estimation est sans biais et consistante.

2.2. Estimateurs de DSP


Rappels : . Fonction d’autocorrélation ≡ Fonction d’autocovariance (abus de langage)
. DSP de x n = TF [fonction d’autocovariance de x n ]

2.2.1. Estimateur de DSP : méthode du périodogramme


Périodogramme
Soit {xn } le signal à caractériser x (t ) échantillonné au pas T = 1 , et une fenêtre { f n } de largeur N , fenêtre
d’observation de {xn } .
N −1
Soit : y n = f n xn (signal observé sur une certaine durée). On a : TF ({y n }) = ∑ f n xn e − jω n = Y (ω )
n =0

3. 35
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

1 1
Sˆ (ω ) = Y (ω )
2
On appelle périodogramme : S$ (ω ) = Y (ω )Y (ω )
N N
Dans le cas {y n } réel : rappel : si {yn } réel, on a ∀ k : Y−k = Y k (Y k ≡ conjugué de Yk et Yk = TFD({y n }))
N −1 N −1
1 1 1 ∞ N −1
S$ (ω ) = Y (ω )Y (ω ) → Sˆ (ω ) = ∑ y m e − jω m ∑ y n e jω n = ∑ y m e − jω m
∑ y n e jω n
N N m =0 n =0 N m=−∞ n =0

[ ]
∞ N −1 ∞
1 1 1
soit, en posant : k = m − n : Sˆ (ω ) = ∑ ∑
N k =−∞ n=0
y n y n + k e − jω k = ∑
N k =−∞
ϕ yyk e − jω k = TF ϕ yyk
N
N − k −1 N − k −1
où : ϕ yy =
k ∑y y
n=0
n n+k = ∑x
n=0
n f n xn + k f n + k

Le périodogramme Sˆ (ω ) du signal xn est la TF de la séquence d’autocorrélation ϕ yy k


du signal fenêtré :
1
S$ (ω ) = TF ϕ yyk
N
[ ] avec : yn = f n xn = signal xn fenêtré

algorithme du calcul de la DSP de x n par périodogramme


DSP
y n = f n xn
ϕ yy
Autocorrélation TF 1/ N Sˆ (ω )
xn fenêtrage 1
Y (ω ) Sˆ (ω ) = Y (ω )
2
TF 1/ N N

biais de l’estimateur (biais du périodogramme)


On montre que l’estimateur est biaisé, sauf si la fenêtre { f n } est infiniment large ( N = ∞ ).
variance de l’estimateur (variance du périodogramme)
On montre par contre que la variance de l’estimateur ne diminue pas quand N augmente.
Le périodogramme est donc inconsistant (sauf pour quelques cas particuliers de signaux {xn } ).

Périodogramme moyenné
Du fait de son inconsistance, en pratique, la méthode du périodogramme simple est peu satisfaisante. On préfère
généralement le périodogramme moyenné, qui consiste à calculer M périodogrammes à partir de M sous-suites du
signal {xn } et à en effectuer la moyenne, réduisant ainsi, si les M périodogrammes sont indépendants, la variance de
l’estimateur (dans le rapport M ).
1 M −1 ⎧⎪ 1 L −1 2
⎫⎪
C’est la méthode de Welch. On a : SˆM (ω ) =
M
∑ ⎨
m =0 ⎪ L
∑x mk fke − jk ω

⎪⎭
⎩ k =0

où les {x } mk sont M parties (de durée L ) se chevauchant de la séquence {xn } (de durée N ) :

x0 LLL xL −1
L
{ }
x0k

x0+ D LLL xL −1+ D


L
D x1k { }
LLL
x N −L LLL x N −1
L
{
xM −1 k }

3. 36
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

avec :

. xmk : durée L 0 ≤ k ≤ M −1 { }
M : nombre de sous-suites xmk de {xn }
. D : décalage de chaque sous-suite :
. si D = L : { } est nul :
le chevauchement ( C ) des sous-suites xmk C =0
. sinon ( 0 < D < L ) : il y a chevauchement ( C ) des sous-suites { x } : mk C = L−D
(. si D > L on perd des échantillons de {xn } , et si D = 0 on ne peut balayer {xn } ).
. Nombre M de sous-suites :
N −L
. si ( N − L ) est divisible par D , on a : M = +1
D
⎛ N −L⎞
. sinon ( ( N − L ) non divisible par D ) : M = E ⎜ ⎟ + 1 ou E (.) représente la partie entière.
⎝ D ⎠
Si { }
D est grand (proche de L ) le chevauchement des séquences xmk est faible et celles-ci peuvent donc être
consisérées comme relativement indépendantes : on a alors M périodogrammes indépendants.

Le compromis entre biais et variance apparaît clairement : pour un N donné, le biais sera d’autant plus faible que L est
grand (large fenêtre), et la variance sera d’autant plus faible que M est grand. Il est clair que l’accroissement de M et
2N
L rend les sous-suites non indépendantes, et la variance ne sera pas réduite. (Welch suggère le compromis: M ≈ ).
L
2.2.2. Estimateur de DSP : méthode du corrélogramme (ou encore méthode de Blackman-Tukey)

On a vu d’une part qu’il existe un estimateur consistant des séquences d’autocorrélation et d’autre part, que le
périodogramme est la Transformée de Fourier de cette séquence d’autocorrélation.

On peut donc d’abord estimer l’autocorrélation puis en prendre la Transformée de Fourier. C’est le principe du
corrélogramme :

[ ]
N
1 1
Sˆ (ω ) =
N
∑ ϕˆ
k =− N
xxk f k e − jω k =
N
TF ϕˆ xx n f n

On a placé une fenêtre { f k } de largeur 2M + 1 pour éviter de fausser l’estimation de Sˆ (ω ) .


En effet pour k élevé, ϕ̂ xx
k
peut avoir des valeurs dispersées.

D’autre part, {ϕ̂ }


xxk étant paire, { f k } doit l’être également, sinon Sˆ (ω ) ne le sera pas.
On montre que l’estimateur corrélogramme est consistant.

algorithme du calcul de la DSP de x n par corrélogramme


fn DSP
ϕ̂ xx
xn Estimation de l'
fenêtrage TF 1/ N Sˆ (ω )
Autocorrélation

3. 37
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

2.2.3. Estimation de la DSP à partir du modèle AR du signal ≡ analyse LPC


(THEORIE MODERNE DE L’ESTIMATION SPECTRALE basée sur les processus générateurs de signal)

On a vu qu’un signal peut être représenté par un modèle générateur (filtre formeur) excité par un bruit blanc. Le modèle
pouvant être du type AR, MA, ARMA ou d’Etat (Gauss-Markov).
A partir de la connaissance des paramètres du modèle, on pourra alors calculer la DSP du signal.
L’avantage par rapport aux techniques classiques précédentes est une meilleure résolution spectrale et la possibilité
d’identification en temps réel des paramètres du signal par filtrage adptatif.

Y ( z) 1
On sait que la Fonction de Transfert d’un filtre AR est : H ( z) = = N
X ( z)
1 + ∑ an z −n
n =1
N
correspondant à l’équation récurrente : Yn = X n − ∑ ak y n−k
k =1

Prenons T = 1 pour période d’échantillonnage pour simplifier les écritures.


2
Les DSPs d’entrée et de sortie sont reliées par la relation : Φ YY (ω ) = H (ω ) Φ XX (ω )
où : Φ XX (ω ) = TF ϕ xxn [ ] et Φ YY (ω ) = TF [ϕ ] yyn avec : ϕ xx n
et ϕ yy n
: autocorrélations.

Φ XX (ω )
soit : Φ YY (ω ) = 2
N
1 + ∑ an e − jn ω

n =1

V
Si {X n } est une séquence blanche de variance V ( Φ XX (ω ) = V ) : Φ YY (ω ) =
N 2

1 + ∑ an e − jn ω

n =1

Φ YY (ω ) est obtenu à partir de V et des N paramètres an du modèle AR ( N n’est évidemment pas connu à priori).
Il faut donc préalablement « identifier » les N paramètres, qui sont avec V , les solutions des N + 1 équations
linéaires de Yule-Walker :
N
ϕ yy 0 + ∑ aiϕ yy i = V
i =1
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N ⎧V si k = 0
↔ pour 0 ≤ k ≤ N : ∑ϕ yy k − n an = ⎨ ( a0 = 1 ) ( ϕ yy paire)
⎩0 si 1 ≤ k ≤ N
i =1 k
n =0
L
N
ϕ yy N + ∑ aiϕ yy N −i = 0
i =1

soit, sous forme matricielle : ce sont les équations de Yule-Walker :

⎡ ϕ yy 0 ϕ yy 1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
⎢ yy 1 ⎢ ⎥=⎢ ⎥ ou encore : Ra =v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦

3. 38
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation

Pour réaliser ce calcul, une inversion matricielle est possible mais on utilise généralement l’algorithme efficace itératif
de Levinson, ou encore la méthode de Burg, qui évitent une inversion matricielle.
En résumé, la calcul de la DSP de la séquence {Yn } requiert :

⎡ ϕ yy 0 ϕ yy1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
. l’estimation de séquence d’autocorrélation {ϕ }
yy k , à insérer dans le système : ⎢ ϕ yy1
⎢ M
ϕ yy 0
M M
⎢ ⎥=⎢ ⎥
M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦

. le calcul des paramètres an ( 1 ≤ n ≤ N ) et de V à l’aide de l’algorithme de Levinson (ou par inversion matricielle).

V
. l’utilisation de la relation : Φ YY (ω ) = 2
pour obtenir la DSP cherchée.
N
1 + ∑ an e − jn ω

n =1

3. CONCLUSION
Comme toujours en Traitement du Signal, plus on a d’informations sur le signal à traiter, meilleur est le traitement
réalisé. Ainsi, des méthodes plus puissantes d’analyse spectrale (Pisarenko, Prony, ...) mettent à profit la connaissance
de la structure du signal à caractériser, ou plus généralement, à traiter.

__________

3. 39
Traitement du Signal TP 3. Caractérisation. Estimation

TP 3. Caractérisation. Estimation
CARACTERISATION
I. TRANSFORMATIONS FREQUENTIELLES
TFD (signaux stationnaires)
x = x(nT) : Signal à TD, échantillonné à la cadence T, et d'une certaine durée T := M ⋅ T
n 0

Il s'agit d'un signal de parole (enregistrement de la voyelle "a").


La fréquence d'échantillonnage est : F = 1/T = 8 kHz.
Le nombre d'échantillons est : M = 800.
La durée de l'enregistrement est : T = 0.1 s.
0
Chaque échantillon est codé en mono sur 1 octet.
. Fichier : M := 800 n := 0 .. M − 1 x := READWAV( "o1.wav" ) x := x − 128

20

xn 0

20
0 100 200 300 400 500 600 700 800
n

X := k := 0 .. M − 1 <- Fonctions utilisateur -> y := TFDI( X)

1.927 6

Xk Re( yn)

−4 − 14
8.257× 10

0 n 799
0 k 799
Conclusion :
Transformée de Fourier rapide : FFT
Le nombre de points M doit être une puissance de 2, soit ici 512 points.
Du fait de la périodicité de M/2 de la Transformée, le calcul de la FFT est limité à M/2.
M := 512 n := 0 .. M − 1 x2 := submatrix( x , 0 , M − 1 , 0 , 0) X2 := X2 := 0
M− 1
2
20

x2n X2n 0
0

20 2
0 200 400 600 0 100 200 300 400 500 600
n n

TP 3. 1
Traitement du Signal TP 3. Caractérisation. Estimation

ONDELETTES (caractérisation de signaux non stationnaires)


La fonction de Transformée rapide en ondelettes requiert un nombre d'échantillonns égal à une puissance de 2 :
on prend donc les 512 1ers points du signal original comptant 800 points.
M := 512 n := 0 .. M − 1 x2 := for n ∈ 0 .. M − 1 Transformée en ondelettes : w :=
x2 ← x Transformée en ondelettes inverse : iw :=
n n
x2 ^- Fonctions intégrées MathCad (1er niveau de décomposition)

20
22.555

x2n 0 wn

20 − 22.714
0 100 200 300 400 500 600
n 0 n 511

7 − 14
1.954× 10

iwn
iwn− x2n

− 13
− 14
− 1.332× 10
0 n 511
0 n 511
Conclusion :

Compression par ondelettes Exemple : compression d'un facteur 3


On peut utiliser seulement les M/3 premiers points de w = Transfo en ondelettes de x2 pour caractériser x2. Pour le
voir, annuler la transformée en ondelettes w sur M/3 < n < M pour fabriquer le signal w2 et prendre ensuite la
n
transformée en ondelettes inverse iw2 et comparer iw2 à x2 en traçant la différence iw2-x2. Conclusion.
w2 := iw2 := iwave( w2)
20

x2n 0

20
0 100 200 300 400 500 600
n
2.949
8.461
wn
iw2n
w2 n

− 15.418
− 3.582
0 n 511
Conclusion :
0 n 511

TP 3. 2
Traitement du Signal TP 3. Caractérisation. Estimation

Visualisation de la compression : compression d'images :

I := READ_IMAGE( "bato2.bmp" ) Nombre de colonnes : Nx := cols( I) Nombre de lignes : Ny := rows( I)


Nx = 128 Ny = 128

Transformée en ondelettes : Transformée en ondelettes de chaque colonne de l'image :

Traitement 1D (colonne) Wave1D( f ) := g ← wave( f ) Wave2D( I) :=


g

K := Wave2D( I)

Transformée en ondelettes inverse : Transformée en ondelettes inverse de chaque colonne de l'image :

Traitement 1D (colonne) IWave1D( f ) := g ← iwave( f ) IWave2D( I) :=


g

L := IWave2D( K)

Image originale Image ondelettes Image ondelettes inverse

I K L

Compression d'un facteur N :

N := 2 Compress1D( u) :=

TP 3. 3
Traitement du Signal TP 3. Caractérisation. Estimation

Transformée en ondelettes : Transformée en ondelettes de chaque colonne de l'image

Compression 1D (colonne) Wave1Dcomp( f ) := g ← wave( f ) Wave2Dcomp( I) := for x ∈ 0 .. cols( I) − 1


g ← Compress1D( g) 〈x〉
J ← Wave1Dcomp I

(
g
return J

K := Wave2Dcomp( I) L := IWave2D( K)

Image originale Image ondelettes Image ondelettes inverse

I K L

TRANSFORMEE DE HILBERT (Transformation temporelle)


M := 800 n := 0 .. M − 1
h := <- Fonction intégrée à MathCad car la fonction utilisateur Hilbert() est trop lente.

20
13.249

xn 0 hn

20 − 8.984
0 200 400 600 800
n 0 n 799

TP 3. 4
Traitement du Signal TP 3. Caractérisation. Estimation

II. ANALYSE CEPSTRALE (Transformation temporelle)


CEPSTRE
M := 512 n := 0 .. M − 1 Cepstre : c := <- Fonction intégrée MathCad

20
6.006

x2n 0 cn

20 − 10.271
0 100 200 300 400 500 600
n 0 n 799
Conclusion :
III. ANALYSE LPC (Transformation temporelle)

M := 300 n := 0 .. M − 1 x3 := for n ∈ 0 .. M − 1 φxx := N := 80 a :=


x3 ← x (vecteur autocovariance) (coeffs du filtre formeur)
n n
x3 V := a V=
0
^- Nombre de points limité car sinon les fonctions utilisateur r() et YuleWalker() sont trop lentes.

10
6.039
0
x3n an
10

20 − 5.502
0 100 200 300
n 0 n 150

TP 3. 5
Traitement du Signal TP 3. Caractérisation. Estimation

ESTIMATION

IV. ANALYSE SPECTRALE (Transformation fréquentielle)

Périodogramme

M := 512 n := 0 .. M − 1 cor := Périodogramme : p :=

20
757.182

x2n 0 pn

20 0.242
0 200 400 600
n 0 n 511

Spectre du signal aléatoire dans sa globalité, à comparer au spectre direct de x2 sur 1 seule réalisation : X2 := FFT( x2)

X2 n 1

0
0 50 100 150 200 250 300
n

__________

TP 3. 6
Traitement du Signal TP 3. Caractérisation. Estimation

Fonctions Bibliothèque :

Moyenne m, Fonction d'Autocovariance r et Variance V du signal x de dim K par la méthode d'ergodicité :

. Moyenne : . Vecteur d'AutoCovariance : . Variance :


moy( x) ≡ K ← length( x) vautocov( x) ≡ K ← length( x) Var( x) ≡ vautocov( x)
0
K− 1 m ← moy( x)

1
m← ⋅ x for k ∈ 0 .. K − 1
K n
n=0 K − k− 1

∑ (xn+k − m)⋅(xn − m)
1
m r ← ⋅
k K
n=0
r

Fonction YuleWalker( φxx , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . φxx : vecteur fonction d'autocovariance (dim K) du signal x (dim K) : φxx0, φxx1 ... φxxK−1
. N : dim de l'ordre du filtre (formeur/LPC) AR

Paramètre de sortie : . le vecteur a (dim N+1) :


a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleWalker( φxx , N) ≡ for i ∈ 0 .. N Exemple : K := 3 r := 6


0
for j ∈ 0 .. N
N := 2 r := 3
1
R ← φxx i− j
i, j
r := 0
b ←0 2
0
for i ∈ 1 .. N a := YuleWalker( r , N)
b ← φxxi
i
V := a V= 4
0
⎛ −1 ⎞ ⋅ R− 1⋅ b
α←⎜ i := 1 .. N
⎝ φxx0 ⎠ ⎛ 4 ⎞
a = ⎜ −0.667
a =
i
φxx0 ⎜
a ←
0 φxx0⋅ α 0 + 1 ⎝ 0.333 ⎠ -0.667
0.333
for i ∈ 1 .. N
a ← a ⋅αi
i 0
a

TP 3. 7
Traitement du Signal TP 3. Caractérisation. Estimation

Fonction YuleW( x , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . x : signal x (dim K) : x , x ... x


0 1 K− 1
. N : dim de l'ordre du filtre (formeur/LPC) AR
Paramètre de sortie : . le vecteur a (dim N+1) :
a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleW( x , N) ≡ r ← vautocov( x)
a ← YuleWalker( r , N)
a

Bruit blanc de K points de moyenne m et de variance V :

Bruit blanc de K points centré de variance 0.083 : WhiteNoise( K) ≡ A ← 281


P ← 31357
v ← 100
0
for n ∈ 1 .. N − 1
v ← mod A⋅ v
n ( n− 1 )
,P

for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w

Bruit blanc de K points de moyenne m et de variance V : BruitBlanc( K , m , V) ≡ 12⋅ V⋅ whiten( K) + m

BruitBlanc2( K , m , V) ≡ 12⋅ V⋅ WhiteNoise( K) + m

Réponse reponse (vecteur dim. K) du filtre AR d'ordre N (coeffs a 0 ≤ i ≤ N) au signal x (vecteur dim. K)
i

reponse( x , a , N) ≡ K ← length( x)
for k ∈ 0 .. K − 1
y ←x if k = 0
k k
k
y ←x −
k k ∑ a ⋅y
i k− i
if 1 ≤ k < N
i= 0
N
y ←x −
k k ∑ a ⋅y
i k− i
if k ≥ N
i= 0
y

TP 3. 8
Traitement du Signal TP 3. Caractérisation. Estimation

TFD
TFD( x) ≡ M ← length( x) ou encore : TFD2( x) ≡ M ← length( x)
for k ∈ 0 .. M − 1 for k ∈ 0 .. M − 1
n R←0
M− 1 − i⋅ 2 ⋅ π ⋅ k⋅


1 M I←0
X ← ⋅ x ⋅e
k M n
n= 0 for n ∈ 0 .. M − 1

R ← R + x ⋅ cos⎛⎜ 2⋅ π ⋅ k⋅ ⎞
X n
n ⎝ M⎠

I ← I − x ⋅ sin⎛⎜ 2⋅ π ⋅ k⋅ ⎞
n
n ⎝ M⎠

⋅ ( R + i⋅ I)
1
X ←
k M
return X
TFDI
TFDI( X) ≡ M ← length( X)
for n ∈ 0 .. M − 1
n
M−1 i⋅ 2 ⋅ π ⋅ k⋅


M
x ← X ⋅e
n k
k=0
x

Convolution causale (signaux de même longueur) Convolution causale (signaux de longueur différente)
convcausal2( x , h) ≡ M ← length( x) convcausal( x , h) ≡ M ← length( x)
for n ∈ 0 .. M − 1 N ← length( h)
n for n ∈ 0 .. M − 1
y ←
n ∑ x ⋅h
k n− k n
k= 0 y ←
n ∑ x ⋅h
k n− k
if n < N
y k= 0
y ← 0 otherwise
Transformée de Hilbert n
y
Hilbert( x) ≡ M ← length( x)
f ←0
0
for n ∈ 1 .. M − 1
1
f ←
n π⋅n
TH ← convcausal( x , f )
TH __________

TP 3. 9
Traitement du Signal 4. Conditionnement - Filtrage. Détection

4. Conditionnement - Filtrage. Détection

I. CONDITIONNEMENT - FILTRAGE

1. Prétraitements (Mise en forme, amplification, fenêtrage, filtrage ...)

Préaccentuation et désaccentuation (Débruitage - Télécommunications - Traitement de la parole)

Le principe du débruitage par préaccentuation-désaccentuation consiste à améliorer le Rapport Signal sur Bruit.

Lors de la transmission d’un signal à travers un canal soumis à un bruit, on améliore le Rapport Signal sur Bruit (SNR)
en utilisant à l’émission un filtre dit de préaccentuation de FT H p ( f ) et à la réception le filtre inverse de
−1
désaccentuation de FT H d ( f ) = H p ( f ) .

Soit un signal aléatoire à TD X n , supposé stationnaire au 2nd ordre, centré, de DSP connue S X ( f ) . Ce signal est
transmis à travers un canal soumis à un bruit Bn stationnaire au 2nd ordre, centré, de DSP S B ( f ) connue.
On effectue à l’émission le fitrage H p ( f ) et, afin que l’opération laisse le signal utile X n inchangé, on effectue à la
−1
réception le filtrage inverse H d ( f ) = H p ( f ) :
Bn

+
Yn +
Xn Hp( f ) Hd ( f ) X n + Wn

Préaccentuation - désaccentuation

Par conséquent, le signal reçu a pour expression : X n + Wn où Wn représente le bruit obtenu par filtrage du bruit Bn .
{
Le but est de déterminer le couple H p ( f ), H d ( f ) } qui minimise la puissance de Wn . Mais il faut s’imposer une

contrainte. En effet, on pourrait rendre aussi petite que l’on veut la puissance de Wn en multipliant H p ( f ) par un
facteur A élevé et en divisant H d ( f ) par le même facteur. Cela marcherait mais conduirait tôt ou tard à une
saturation, une distorsion. La contrainte choisie consiste à fixer la puissance PY en sortie du filtre d’émission
H p ( f ) , ce qui est raisonnable en pratique.

Remarque : Une simple soustraction du bruit, à supposer que celui-ci soit connu, ne marche évidemment pas, du fait
de son caractère aléatoire.

Détermination des filtres H p ( f ) et H d ( f )


La DSP du signal Yn en sortie du filtre H p ( f ) donne la puissance PY de Yn : (cf. chapitre 1)
∞ ∞

[ ]
PY = E Yn2 = RYY0 = TF −1[ SY ( f )]en τ = 0 =
2
∫ SY ( f )df
−∞
→ PY = ∫H
−∞
p ( f ) S X ( f )df

Un même calcul appliqué au filtre Hd ( f ) excité par le bruit Bn seul donne pour la puissance PW de Wn :

[ ] ∫H
PW = E Wn2 = d
2
( f ) S B ( f ) df
−∞

4. 1
Traitement du Signal 4. Conditionnement - Filtrage. Détection

Il faut minimiser PW avec la contrainte de fixer la puissance PY à une valeur P0 .


Une méthode classique de minimisation sous contrainte est la technique des multiplicateurs de Lagrange. Dans cette
méthode, on additionne à l’expression à minimiser, λ fois la contrainte, ce qui conduit à minimiser PW + λ PY ou, ce
qui revient au même, à minimiser PW + λ (PY − P0 ) : (en fixant PY à la valeur P0 , λ est un multiplicateur de Lagrange)


⎛∞ 2 ⎞
∫−∞ d ⎜ ∫ H p ( f ) S X ( f )df − P0 ⎟
2
Il faut donc minimiser : H ( f ) S B ( f ) df + λ
⎝ −∞ ⎠
∞⎛ SX ( f ) ⎞
∫−∞⎜⎝ d
⎜ ⎟ df − λ P0
2
−1
En remplaçant H p ( f ) par H ( f ) , cette expression s’écrit :
d H ( f ) S B ( f ) + λ 2⎟
Hd ( f ) ⎠

2
Pour en obtenir le minimum, il faut choisir H d ( f ) qui rend minimum l’expression sous le signe de l’intégrale :
2 SX ( f ) 2
H d ( f ) SB ( f ) + λ 2
et donc qui annule sa dérivée par rapport à Hd ( f ) .
Hd ( f )

2 SX ( f )
Il vient : Hd ( f ) = λ
SB ( f )

∞ ∞ ∞
Le calcul de λ se fait en exprimant la contrainte : P = 2 SX ( f ) 1
0 ∫
−∞
H p ( f ) S X ( f )df = ∫
−∞ Hd ( f )
2
df =
λ ∫
−∞
S B ( f ) S X ( f ) df

Finalement, il vient pour le filtre de désaccentuation :

2 S (f) ∫ S B ( f ) S X ( f ) df
SX ( f )
Hd ( f ) = λ ⋅ X = −∞

SB ( f ) P0 SB ( f )


1 SX ( f )

2
→ Hd ( f ) = S B ( f ) S X ( f ) df
P0 −∞
SB ( f )

et pour le filtre de préaccentuation :

2 2 1 SB ( f )
Hp( f ) = H d−1 ( f ) = P0 ∞
SX ( f )

−∞
S B ( f ) S X ( f ) df

4. 2
Traitement du Signal 4. Conditionnement - Filtrage. Détection

II. DETECTION
1. Filtrage adapté (matched filtering)
Dans le cadre du filtrage adapté, le problème est de détecter la présence d’un signal, connu, dans du bruit (et non le
débruitage de ce signal).
Nous allons traiter ce problème dans le cas discret, le plus important pour les applications.
Position du problème

On dispose de la mesure bruitée { xn } qui, selon la présence ou non du signal { s n } à détecter, mêlé au bruit { bn },
peut prendre 2 formes :
. xn = s n + bn (présence)
. xn = bn (absence)

où : .{ s n } est un signal déterministe de durée N + 1


. { Bn } est un signal (VA) aléatoire centré, stationnaire au 2nd ordre (moments d’ordre 1 (moyenne) et 2 (variance)
stationnaires), dont { bn } est une observation, une épreuve, une réalisation.

Il s’agit de déterminer un filtre linéaire (causal), de RI { hn } , d’entrée/sortie respective { xn } et { yn } , qui


rend maximal le Rapport Signal sur Bruit (SNR : Signal to Noise Ratio), noté ρ
(le but n’est pas d’éliminer le bruit mais de détecter la présence du signal utile dans le signal bruité) .
→ Le filtre adapté (h) constitue donc une aide à la décision. Il consiste en accroissement du Rapport
Signal/Bruit.
N
En notant : y N ( s ) = sn * hn n= N
= ∑ s N −n hn : Réponse du filtre à { s n } à l’instant n = N
n =0
N
et : y N (b) = bn * hn n= N
= ∑ bN −n hn : Réponse du filtre à { bn } à l’instant n = N
n =0
2
∆ y ( s)
ρ = = ρ ( N , {hn })
N
n= N
[ ]
on a pour le SNR : 2 : Rapport des puissances instantanées à l’instant
E Y ( B)
N

Filtre adapté Décision


{ Yn } présence de s n dans X n
{Xn } Filtre { hn } Détecteur
absence de s n dans X n

On note ρ * ( = ρ * ( N ) ) la valeur maximale de ρ ( = ρ ( N, { hn }) ) et {h } la RI optimale correspondante (≡


*
n

fournissant ρ ) du filtre cherché : ρ = ρ (N , {hn }) .


* * *

Remarques
. Afin de faciliter la tâche du détecteur, on a choisi un critère de coût ( ρ ) qui correspond à l’apparition d’un pic sur
y n pour n = N .
. On a supposé implicitement que le signal { s n } apparaît à l’instant n = 0 . Cette hypothèse n’est nullement
restrictive puisque le bruit est supposé stationnaire.
. La valeur du maximum ρ* de ρ est libre de choix : on peut laisser sa valeur indéfinie, auquel cas la RI { hn }
est alors définie à une Constante près, ou bien fixer sa valeur par normalisation :
Normalisation
N
y *N ( s ) = 1 soit : y *N ( s ) = ∑ s N −n hn* = 1
n =0

4. 3
Traitement du Signal 4. Conditionnement - Filtrage. Détection

Solution
Afin de simplifier les notations et les calculs, on pose (où l’indice R signifie Reverse):

⎡s N ⎤ ⎡bN ⎤ ⎡h0 ⎤
⎢s ⎥ ⎢b ⎥ ⎢h ⎥
s R = ⎢ N −1 ⎥ b R = ⎢ N −1 ⎥ h=⎢ 1 ⎥
⎢L ⎥ ⎢L ⎥ ⎢L ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣ s0 ⎦ ⎣b0 ⎦ ⎣ hN ⎦

⎧ N

⎪ y N ( s ) = ∑ s N − n hn
⎪ n =0 ⎧ y N ( s ) = s ΤR h = h Τ s R
⎪ N ⎪⎪
Les équations: ⎨ y N (b) = ∑ bN − n hn peuvent alors être réécrites (la convolution est commutative) : ⎨ y N (b) = b R h = h b R
Τ Τ

⎪ n =0 ⎪ Τ *
⎪ N ⎪⎩s R h = 1
⎪∑ N −n n =
*
s h 1
⎩ n =0
Dans ces conditions (en tenant compte du fait que h est déterministe) :

⎪ N ( )
⎧ y 2 (s) = s Τ h 2 = h Τ s s Τ h
R R R
⎨ 2
( )
Τ 2 Τ Τ
⎪⎩ y N (b) = b R h = h b R b R h → [ ] [ Τ Τ
]
E YN2 ( B) = E h B R B R h = h E B R B R h = h φ BB h
Τ
[ Τ
] Τ

= E [B B ]
Τ
où : φ BB R R est la matrice ( N + 1) x( N + 1) d’autocorrélation (≡ d’autocovariance dans le cas
stationnaire) du bruit { Bn } (le terme général de φ BB est φ BB i− j
(matrice de Toeplitz))
Τ
Τ Τ
y N2 ( s )
h s s h h * s R sΤR h *
Ainsi : ρ= = ΤR R ρ = *
2
[
E YN ( B ) h φ BB h] *Τ
h φ BB h
*

Comme ρ* est maximal par rapport à h , on a nécessairement : ρ ≤ ρ* donc :

( ) [ ]
∆ 2
Τ Τ Τ Τ Τ Τ Τ
a (h) = h s R s R h − ρ * h φ BB h ≤ 0 ∀h car : h s R s R h = s R h ≥ 0 et h φ BB h = E YN2 ( B) ≥ 0
*
et : a(h) = 0 pour h = h
*
a (h) étant une fonction (de plusieurs variables) qui passe par un maximum pour h = h , on a :
⎡ ∂a ⎤
⎢ ∂h ⎥
⎢ 0 ⎥
⎢ ∂a ⎥
′ * ′ ⎢ ∂h ⎥
a (h ) = 0 où : a =⎢ 1 ⎥
⎢L ⎥
⎢ ⎥
⎢ ∂a ⎥
⎢⎣ ∂hN ⎥⎦
2 Τ
( )
On rappelle les règles de dérivation matricielle: d h = 2h , d s R h = s ,
R
Τ
d sR h ( ) [( ) 2
] = 2s s h R
Τ
R
et
( Τ
d h φ BB h ) = 2φ
BB h
dh dh dh dh
′ Τ ′ * Τ
a (h) = 2 s R s R h − 2 ρ * φ BB h
*
d’où : et comme : a (h ) = 0 et : sR h = 1
′ * Τ *
a (h ) = 2 s R s R h − 2 ρ * φ BB h = 0 s R = ρ * φ BB h
* *
on a : →

4. 4
Traitement du Signal 4. Conditionnement - Filtrage. Détection

1
Si φ BB
−1
existe ( φ BB régulière ≡ de déterminant non nul), on a donc :
*
h = φ BB
−1
sR
ρ *

Τ Τ 1 Τ
On peut calculer ρ* *
d’après la relation : s R h = 1 et en utilisant la relation précédente : s R h =
*
s Rφ BB
−1
sR = 1
ρ *

soit : ρ * = s ΤR φ BB
−1
sR

Cas particulier important : { Bn } est un bruit blanc de variance σ 2 :


Pour un bruit blanc de variance σ 2 , on a : φ BB = σ 2 I
1
Et les formules établies : ρ * = s ΤR φ BB
−1
sR et :
*
h = φ BB
−1
sR deviennent :
ρ*
N

Τ
s sR ∑s 2
n
1
ρ* = R
= n =0
et :
*
h = sR
σ 2
σ 2 N

∑s n =0
2
n

*
Comme h est défini à une Constante près, on peut prendre :
*
h = sR soit : hn* = s N −n n = 0, L , N
N
ce qui revient à prendre : ∑s
n =0
2
n = 1.

Le filtre adapté au signal{ s n } (au sens de la maximisation du Rapport Signal sur Bruit à l’instant N ) a donc pour RI
l’image (dans un miroir) du signal { s n } (image obtenue en effectuant un renversement du temps).

{ Yn } présence de s n dans X n
{Xn } { s N −n } Détecteur
absence de s n dans X n
Filtre adapté

Remarques

ƒ La connaissance du signal { s n } à détecter est nécessaire, ainsi que l’estimation de l’autocovariance du bruit.
N
ƒ Le filtre adapté effectue la convolution : Yn = ∑ X n−i s N −i soit en posant : m = N −i :
i =0
N
Yn = ∑ X m+ n− N s m
m =0
1
A un coefficient près multiplicateur , cette relation a la structure d’un corrélateur, qui effectuerait l’intercorrélation
N
entre { X n } et { s n }. C’est pourquoi le filtre adapté est parfois assimilé à un intercorrélateur.
Il faut cependant bien noter les différences de fonctionnement :
. dans un intercorrélateur, N est grand et n << N alors que :
. pour un filtre adapté, N peut être faible et 0 ≤ n ≤ N .

__________

4. 5
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter

TP 4. Conditionnement - Filtrage. Détection


CONDITIONNEMENT - FILTRAGE
N := 255 n := 0 .. N Types de bruit : b1 := 5⋅ gaussn( N + 1) b2 := 5⋅ whiten( N + 1)

x := sin⎛⎜ ⎞
n
Signal émis (non bruité) : Bruitage (canal de transmission) : b := b1
n
⎝ 15 ⎠
bn
Filtre d'émission Filtre de réception
1. Amplification (amont) / atténuation (aval) :
+
+
xn K 1/ K sn
K := 1 y := r := s :=
n n n yn rn
Ampli. Ampli.

2
12.698

xn 0 sn

2 − 14.669
0 100 200
n 0 n N
Conclusion :
bn
2. Préaccentuation / désaccentuation : Filtre d'émission Filtre de réception
+
+
xn Hp( f ) Hd ( f ) sn
P0 := 1 X := fft( vautocov( x) ) B := fft( vautocov( b) )
yn rn
Préaccentuation Désaccentuation
L := length( X)

m := 0 .. L − 1 FT filtre désaccentuation: Hd := FT filtre préaccentuation: Hp :=


m m

RI filtre désaccentuation: hd := RI filtre préaccentuation: hp :=

y := r := s :=
n

2 4
5.45× 10

xn 0 sn

2 4
0 100 200 − 5.299× 10
n
0 n N
Conclusion :

TP 4. 1
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter

DETECTION RAZ : s := submatrix( s , 0 , 0 , 0 , 0)


1. Filtrage adapté :
s := sin⎛⎜ ⎞
n
N := 255 n := 0 .. N Signal non bruité :
n
⎝ 15 ⎠
Types de bruit : b1 := gaussn( N + 1) V := 1 b2 := BruitBlanc( N + 1 , 0 , V)
Méthode générale :
Signal reçu : b := b1 x1 := s + b x2 := b
n n n n n
5

x1n 0

Matrice d'autocorrélation du bruit :


5
0 100 200
br := b Φ :=
n N− n n
RI du filtre adapté : Sortie du filtre adapté :
SNR :
sr := s ρ := h := y1 := convol( x1 , h) y2 := convol( x2 , h)
n N−n

1.179 0.225

y1n y2n

− 0.513 − 0.068

0 n N 0 n N
Conclusion:

Cas particulier : bruit blanc de variance V :


Signal reçu : b := b2 x1 := s + b x2 := b
n n n n n

sr := s h := y1 := convol( x1 , h) y2 := convol( x2 , h)
n N−n ρ :=

131.728 11.09

y1n y2n

− 107.578 − 15.239

0 n N 0 n N

_________

TP 4. 2
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter

Fonctions Bibliothèque :

Moyenne m, Vecteur r et Matrice d'Autocovariance r et Variance V du signal x de dim K (par ergodicité) :

. Moyenne : . Vecteur d'AutoCovariance : . Matrice d'AutoCovariance :


moy( x) ≡ K ← length( x) vautocov( x) ≡ K ← length( x) mautocov( x) ≡ K ← length( x)
K− 1 m ← moy( x) r ← vautocov( x)

1
m← ⋅ x for k ∈ 0 .. K − 1 for i ∈ 0 .. K −
K n
n=0 K − k− 1 for j ∈ 0 .. K −
∑ ( n+k ) ( n )
1
m r ← ⋅ x −m⋅ x −m R ←r
k K i, j i− j
n=0
. Variance : R
r
Var( x) ≡ vautocov( x)
0

Fonction YuleWalker( φxx , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . φxx : vecteur fonction d'autocovariance (dim K) du signal x (dim K) : φxx0, φxx1 ... φxxK−1
. N : dim de l'ordre du filtre (formeur/LPC) AR

Paramètre de sortie : . le vecteur a (dim N+1) :


a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleWalker( φxx , N) ≡ for i ∈ 0 .. N Exemple : K := 3 r := 6


0
for j ∈ 0 .. N
N := 2 r := 3
1
R ← φxx i− j
i, j
r := 0
b ←0 2
0
for i ∈ 1 .. N a := YuleWalker( r , N)
b ← φxxi
i
V := a V= 4
0
⎛ −1 ⎞ ⋅ R− 1⋅ b
α←⎜ i := 1 .. N
⎝ φxx0 ⎠ ⎛ 4 ⎞
a = ⎜ −0.667
a =
i
φxx0 ⎜
a ←
0 φxx0⋅ α 0 + 1 ⎝ 0.333 ⎠ -0.667
0.333
for i ∈ 1 .. N
a ← a ⋅αi
i 0
a

TP 4. 3
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter

Fonction YuleW( x , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . x : signal x (dim K) : x , x ... x


0 1 K− 1
. N : dim de l'ordre du filtre (formeur/LPC) AR
Paramètre de sortie : . le vecteur a (dim N+1) :
a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleW( x , N) ≡ r ← vautocov( x)
a ← YuleWalker( r , N)
a

Bruit blanc de K points de moyenne m et de variance V :

Bruit blanc de K points centré de variance 0.083 : WhiteNoise( K) ≡ A ← 281


P ← 31357
v ← 100
0
for n ∈ 1 .. N − 1
v ← mod A⋅ v
n ( n− 1 )
,P

for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w

Bruit blanc de K points de moyenne m et de variance V : BruitBlanc( K , m , V) ≡ 12⋅ V⋅ whiten( K) + m

BruitBlanc2( K , m , V) ≡ 12⋅ V⋅ WhiteNoise( K) + m

Réponse reponse (vecteur dim. K) du filtre AR d'ordre N (coeffs a 0 ≤ i ≤ N) au signal x (vecteur dim. K)
i

reponse( x , a , N) ≡ K ← length( x)
for k ∈ 0 .. K − 1
y ←x if k = 0
k k
k
y ←x −
k k ∑ a ⋅y
i k− i
if 1 ≤ k < N
i= 0
N
y ←x −
k k ∑ a ⋅y
i k− i
if k ≥ N
i= 0
y

TP 4. 4
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter

TFD
TFD( x) ≡ M ← length( x) ou encore : TFD2( x) ≡ M ← length( x)
for k ∈ 0 .. M − 1 for k ∈ 0 .. M − 1
n R←0
M− 1 − i⋅ 2 ⋅ π ⋅ k⋅


1 M I←0
X ← ⋅ x ⋅e
k M n
n= 0 for n ∈ 0 .. M − 1

R ← R + x ⋅ cos⎛⎜ 2⋅ π ⋅ k⋅ ⎞
X n
n ⎝ M⎠

I ← I − x ⋅ sin⎛⎜ 2⋅ π ⋅ k⋅ ⎞
n
n ⎝ M⎠

⋅ ( R + i⋅ I)
1
X ←
k M
return X
TFDI
TFDI( X) ≡ M ← length( X)
for n ∈ 0 .. M − 1
n
M−1 i⋅ 2 ⋅ π ⋅ k⋅


M
x ← X ⋅e
n k
k=0
x

Convolution causale (signaux de même longueur) Convolution causale (signaux de longueur différente)
convcausal2( x , h) ≡ M ← length( x) convcausal( x , h) ≡ M ← length( x)
for n ∈ 0 .. M − 1 N ← length( h)
n for n ∈ 0 .. M − 1
y ←
n ∑ x ⋅h
k n− k n
k= 0 y ←
n ∑ x ⋅h
k n− k
if n < N
y k= 0
y ← 0 otherwise
Transformée de Hilbert n
y
Hilbert( x) ≡ M ← length( x)
f ←0
0
for n ∈ 1 .. M − 1
1
f ←
n π⋅n
TH ← convcausal( x , f )
TH __________

TP 4. 5
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

5. Transmission
Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif
INTRODUCTION
Objectif
Le but est de transmettre un message porteur d’information d’un dispositif de départ appelé émetteur vers un dispositif
d’arrivée appelé récepteur par l’intermédiaire d’un canal de transmission.
Les dégradations que peut subir le signal dans le canal de transmission sont multiples : distorsions, déformations
spectrales, bruit, écho, ...
La figure suivante illustre un cas concret de canal introduisant un écho : la transmission d’un message d’une tour
émettrice vers un véhicule :

Dans cette situation , l’onde émise peut emprunter 2 chemins pour atteindre le récepteur : un trajet direct et un trajet
réfléchi sur un bâtiment. Les temps de propagation étant différents sur ces 2 trajets, le récepteur observe la
superposition de 2 versions décalées du signal émis.
Par exemple, si l’on émet une suite de symboles a k ( k est entier et désigne le temps), on reçoit : α ak + β ak −m
( α , β sont réels et m désigne un retard en nombre d’échantillons) : il y a interférence entre les symboles ak et ak − m .

L’objectif de l’égalisation est de restituer le message émis à partir de cette observation (qui est un version filtrée de la
séquence transmise) : c’est l’annulation d’écho.

Moyens
Dans le vide, les ondes électromagnétiques se propagent très bien et les sons très mal. Dans l’eau, c’est l’inverse.
Il est ainsi évident que la propagation dépend essentiellement du milieu : il est généralement plus facile de transmettre
un message par un câble coaxial de 1 m de long qu’entre la terre et la lune !
Dans tous les cas, il est impératif d’adapter le message au canal de communication et de traiter le signal brut reçu
pour en extraire le message originel.
Pour ce faire, de nombreux dispositifs intermédiaires sont nécessaires à un système de télécommunications :

Emetteur
. Un dispositif de numérisation des données.
. Un dispositif de compression et de codage: la redondance du message émis autorise la compression (avec ou sans perte) :
. codage de source : suppression de la redondance du message à transmettre
. codage canal : introduction d’une redondance du message à transmettre (si le canal perturbe la transmission)
en vue de la détection et correction des erreurs de transmission au niveau du récepteur.
. Un modulateur : son rôle est d’adapter le signal aux propriétés spectrales du canal de transmission.
Par exemple, les fréquences audio (de 20 Hz à 20 kHz) se propagent très mal sous la forme d’ondes électromagnétiques
et il est nécessaire de translater le spectre d’un message audio autour d’une fréquence plus élevée pour en assurer la
transmission. Cette translation doit naturellement s’effectuer sans altérer l’information portée par le signal. La
modulation est également justifiée par le fait qu’un même canal de transmission peut être utilisé par plusieurs systèmes
de communication (multiplexage).
. Une antenne : elle rayonne et diffuse le signal issu du modulateur dans le milieu pour lui permettre de se propager
(antennes paraboliques pour les ondes Hertziennes, hauts-parleurs ou hydrophones pour les ondes acoustiques, ...).

5. 1
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Récepteur
. Une antenne dont le rôle est de capter le message.
. Un démodulateur destiné à ramener le signal reçu vers la bande de base (bande spectrale du message avant
modulation).
. Un dispositif de récupération de porteuse permettant de compenser un éventuel décalage entre la fréquence porteuse
utilisée par le modulateur et celle utilisée par le démodulateur.
. Un dispositif d’échantillonnage, préliminaire nécessaire à tout traitement numérique. Cet échantillonnage doit en
général être commandé par un dispositif de synchronisation symbole permettant de synchroniser échantillonnage en
réception avec le rythme d’émission des symboles.
. Un égaliseur dont le rôle est de compenser les distorsions introduites par le canal et les différents dispositifs
électroniques de transmission. Sa structure exacte dépend de la complexité de l’application considérée.
. Des systèmes de décodage et de décompression.

Il est clair que la description précédente ne donne qu’une image grossière de ce que peut être un système concret. En
particulier, la décomposition du traitement global en modules indépendants est souvent artificielle. Nombre de
dispositifs efficaces estiment conjointement plusieurs des paramètres nécessaires au bon fonctionnement du récepteur.

Modélisation mathématique
Du point de vue mathématique, les opérations décrites précédemment s’écrivent grossièrement de la manière suivante :

Les symboles porteurs d’information

Le signal à transmettre est une suite { ak } de valeurs complexes appartenant à un ensemble fini.
Exemple : Modulation de phase (PSK Phase Shift Keying)
ak ∈ { − 1, + 1 } pour une modulation MDP2, Modulation par Déplacement de Phase à 2 états (BPSK Binary Phase
Shift Keying). ak ∈ { − 1, + 1 , − i, + i } pour une modulation MDP4 à 4 états.

Exemple : Modulation de 2 porteuses en quadrature (QAM Quadrature Amplitude Modulation)


ak ∈ { ± 1 ± i, ± 2 ± i, ± 2 ± 2i, ± 1 ± 2i } pour une modulation QAM à 16 états. Lorsqu’une seule des 2 porteuses
est utilisée, la modulation QAM se réduit à une simple modulation d’amplitude. Par exemple,
ak ∈ { − 2, − 1, + 1, + 2 } correspond à une modulation d’amplitude (AM Amplitude Modulation, ASK Amplitude Shift
Keying) à 4 états.

Données M − aires . Constellation

En général, les ak peuvent prendre M valeurs différentes. On parle de données M − aires . Les différents états
possibles peuvent être représentés dans le plan complexe. La représentation dans le plan complexe des différentes
valeurs prises par le signal au cours du temps s’appelle une constellation.

Constellation d’un signal : représentation dans le plan complexe des différentes valeurs prises (alphabet) par ce signal.

Exemple : Constellation d’une modulation à 4 états de phase ak ∈ {1 + i, − 1 + i, − 1 − i,1 − i }


Im
* i *

Re
1

* *

5. 2
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

La mise en forme

La suite { ak } des symboles à transmettre doit être séquencée dans le temps. On émet les symboles ak à un rythme
régulier. La durée séparant l’émission de 2 symboles successifs est notée T0 . Elle s’appelle la durée symbole. A partir
de la suite des valeurs complexes { ak } , on construit le signal à TC a(t ) :
a(t ) = ∑ ak δ (t − kT0 )
k
La convolution de a (t ) par une impulsion de mise en forme Π (t ) fournit le signal à TC :

d (t ) = ∑ ak Π (t − kT0 )
k

La fonction de mise en forme Π la plus simple est la porte : ⎧1 pour 0 ≤ x < T0


Π T0 ( x ) = ⎨
⎩0 sinon

Exemple : Mise en forme, par une fonction porte, de 8 symboles consécutifs d’une modulation à 2 états ( ± 1 ) :
ak { − 1, + 1, − 1, + 1, − 1, − 1, + 1, − 1 }

a (t )

-1 +1 -1 +1 -1 -1 +1 -1
d (t )

Mise en forme d'un message numérique

Remarque :
Il est en général préférable d’utiliser une impulsion de mise en forme Π (t ) plus douce que la porte, afin de limiter
l’encombrement spectral. En effet, plus une fonction est lisse (absence de transitions rapides, de fronts raides, de
marches d’escalier), plus sa Transformée de Fourier (donc son spectre) décroît rapidement, limitant ainsi
l’encombrement spectral.

La modulation

La modulation vise à translater le spectre du signal Basse-Fréquence (BF) à émettre d (t ) (signal modulant) autour
d’une fréquence plus élevée ν 0 (porteuse) tout en préservant l’information supportée par ce signal.
La translation du spectre de d (t ) autour d’une fréquence porteuse ν 0 conduit au signal Haute-Fréquence (HF) e(t )
effectivement transmis dans le milieu physique.

Partant d’une fonction sinusoïdale porteuse A cos(2πν 0t + ϕ ) , l’idée de base d’une modulation consiste à faire
varier lentement par rapport à ν 0 (variation comme le signal à transmettre), l’un des paramètres A , ν 0 ou ϕ . On
parle respectivement de modulation d’amplitude, de fréquence ou de phase.

Lorsque les variations du paramètre choisi sont effectivement lentes par rapport à la fréquence de la porteuse ν 0 , le
signal obtenu (signal modulé) est à bande étroite autour de ν 0 .

Les modulations sont généralement linéaires car alors l’égalisation est facilitée. Dans ce cas, la translation en fréquence
(convolution par un Dirac) s’effectue en multipliant d (t ) par une exponentielle complexe en temps. Le signal réellement
émis s’obtient en prenant la partie réelle (ce qui a pour effet de symétriser le spectre du signal réellement émis).
Ainsi le signal HF émis s’écrit : {
e(t ) = Re d (t )e i 2πν 0t }
5. 3
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

En résumé :
d (t ) est un signal BF à transmettre
i 2πν 0t
d (t )e est à bande étroite autour de ν 0
e(t ) comporte 2 bandes de fréquences : l’une autour de ν 0 et l’autre autour de − ν 0 .

TF {d (t )}
{
TF d (t )e i 2πν 0t
} 2TF {e(t )}

ν ν ν
0 0 ν0 −ν 0 0 ν0
Spectres du signal modulant, du signal analytique et du signal modulé

On note P et Q les parties réelle et imaginaire du signal transmis :


ak = Pk + iQk k entier
d (t ) = Pt + iQt t réel

Le signal modulé e(t ) s’écrit :


⎧ ⎛Q ⎞⎫
{
e(t ) = Re d (t )e i 2πν 0t } = P cos(2πν t ) − Q sin(2πν t ) =
t 0 t 0 Pt 2 + Qt2 cos⎨2πν 0t + arctan⎜⎜ t ⎟⎟⎬
⎩ ⎝ Pt ⎠⎭
Cette relation montre que e(t ) peut être vu :
. comme la modulation de 2 porteuses en quadrature
. comme une modulation de phase et d’amplitude.

Evidemment, il est possible de n’exploiter que l’une de ces 2 possibilités pour réaliser une modulation d’amplitude ou
une modulation de phase. (Par exemple, si le signal d (t ) est réel, seule l’amplitude est modulée).
⎛Q ⎞
Pour une modulation de fréquence, arctan⎜⎜ t ⎟⎟ peut être pris comme fonction linéaire non stationnaire du temps :
⎝ Pt ⎠
⎛Q ⎞
arctan⎜⎜ t ⎟⎟ = Rt t
⎝ Pt ⎠

Le canal de transmission

Le signal e(t ) se propage dans le canal de transmission. Ce canal est presque toujours supposé linéaire. Ainsi, sa sortie
s’exprime comme convolution de son entrée par sa RI. Un canal linéaire peut être caractérisé de manière équivalente
par sa Réponse en Fréquence (TF de sa RI). Le signal e(t ) injecté dans le canal étant à bande étroite autour de ν 0 , le
signal r (t ) arrivant au niveau du récepteur l’est aussi lorsque l’hypothèse de linéarité est vérifiée. Il s’écrit :

r (t ) = Re ~ {
r (t )e i 2πν 0t } où ~
r (t ) est un signal BF complexe.

La démodulation

La démodulation est l’opération inverse de la modulation. Le but est de restituer au mieux le signal modulant, BF, à
partir du signal modulé. Pour cela, il est nécessaire de translater r (t ) vers la bande de base (bande de fréquence initiale
avant modulation). En notant ra (t ) = ~
r (t )e i 2πν 0t le signal analytique associé à r (t ) , la démodulation produit le signal
:
x(t ) = ra (t )e −i (2πν 0t +φt ) où la phase φt traduit le déphasage entre les porteuses de l’émetteur et du récepteur
( φt varie linéairement au cours du temps).

5. 4
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Les traitements en bande de base

L’échantillonnage du signal démodulé x(t ) conduit à une suite de valeurs x(τ k + kT0 ) .
Lorsque le canal et tous les systèmes de traitement sont quasi parfaits, le signal n’a subi que peu de distorsions.
De ce fait, l’estimation du message émis découle immédiatement de :
x(t ) ≈ d (t ) d’où : x(τ k + kT0 ) ≈ ak

En pratique, ce n’est jamais le cas. Les principales sources d’erreur sont les suivantes :

1. La RI du canal n’est pas idéale (RI idéale ≡ égale à une impulsion de Dirac)
2. L’échantillonneur à la réception n’est pas synchrone avec celui utilisé lors de l’émission ou à une période
d’échantillonnage différente de celle ( T0 ) de l’échantillonneur d’émission ( τ k non constant).
3. La fréquence porteuse ν utilisée par le démodulateur diffère de la fréquence ν 0 utilisée par le modulateur (fading).

Il est donc impératif de traiter le signal de manière à estimer au mieux les symboles émis. Les principaux systèmes
permettant de compenser les distorsions sont les suivants, dont le numéro indique le défaut précédent correspondant :

1. L’égalisation réduit les distorsions liées essentiellement aux imperfections du canal de transmission.
2. La synchronisation ou récupération de rythme compense la désynchronisation entre les échantillonneurs émetteur et
récepteur.
3. La récupération de porteuse lutte contre le fait que la fréquence porteuse utilisée par le modulateur différe de celle
qu’utilise le démodulateur. Le système de récupération de porteuse permet également de compenser les déphasages liés
à l’effet Doppler (l’effet Doppler apparaît quand l’émetteur ou le récepteur ou les deux sont en mouvement : exemple : son (de fréquence variable
pour un piéton) émis par une voiture dépassant le piéton).

Bruit b(t )
d (t ) e(t ) r (t ) x(t ) yk
ak Π Modulateur Canal + Démodulateur Traitement continu Traitement discret ck

Chaîne de Transmission τ k + kT0

Egalisation

Dans le domaine des télécommunications, les données émises traversent un canal de transmission et les différents
dispositifs électroniques associés à l’émetteur et au récepteur. Le rôle de l’égaliseur est alors de réduire au mieux les
distorsions apportées par ces éléments.

Aspect fréquentiel
En l’absence de bruit, l’égaliseur est simplement un filtre inverse dont le rôle est de rendre plate la Réponse
Fréquentielle (RF) de l’ensemble canal-égaliseur.
Lorsque le canal de transmission est bruité, un simple filtre inverse amplifie considérablement le bruit (le bruit occupe les
Hautes Fréquences et comme le canal a une RF du type passe-bas, son inverse est passe-haut amplifiant ainsi le bruit) et un autre critère est
utilisé dans le même but (un critère quadratique (moindres carrés) minimisant l’énergie de l’erreur entre la réponse du canal-égaliseur réel et
celle du canal-égaliseur idéal).

C (ν ) E (ν ) H (ν )
x =
ν ν ν
RF du canal RF de l'égaliseur RF de l'ensemble

Aspect temporel
Lors d’une transmission, des symboles élémentaires sont émis régulièrement (toutes les T0 secondes). Si par exemple,
la durée de la RI du canal est inférieure à l’écart de temps entre 2 symboles consécutifs, ceux-ci restent temporellement
disjoints en sortie du canal de transmission. Dans le cas contraire, on ne peut plus les distinguer simplement les uns des
autres : un traitement du signal (égalisation) s’impose.

5. 5
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Diagramme en oeil
Considérons un exemple cas d’école : le signal émis se compose d’une suite aléatoire blanche de 1 et de -1. La
représentation adoptée ici utilise 16 points par durée symbole. La FT du canal comporte 1 pôle α et s’écrit :
1−α −1
H ( z) = où z représente ici un retard de 1/16 de symbole.
1 − α z −1
La valeur de α utilisée est complexe : α = 0.95 e i , induisant un comportement oscillant de la réponse.
La RI du canal est très oscillante, traduisant une résonance marquée de la RF.
La représentation temporelle des signaux d’entrée et de sortie du canal et celle des constellations (constellation d’un
signal ≡ représentation dans le plan complexe des différentes valeurs prises par ce signal) permettent de se faire une
première idée de la nature du problème.
Par exemple, si la constellation en sortie se comporte de 2 tâches distinctes, il est clair qu’il sera facile de restituer le
signal émis. Il suffit pour cela d’utiliser une fonction non-linéaire instantanée de type seuillage. Cette situation se
traduit également par le fait que la représentation temporelle du signal de sortie est très proche de celle du signal
d’entrée.
Il s’avère souvent utile de disposer d’autre modes de représentation des signaux. En particulier, il faut noter que l’un
des défauts majeurs de la représentation sous la forme de constellation réside dans la totale disparition de l’aspect
temporel.
Une manière commode de visualiser le taux d’interférences entre symboles consiste à représenter sur la durée de 1 ou 2
symboles, toutes les configurations possibles de la sortie, associées aux différentes suites de symboles possibles en
entrée. Une telle représentation porte le nom de diagramme en oeil.
Diagramme en oeil : représentation sur la durée de 1 ou 2 symboles de toutes les configurations possibles de la
sortie, associées aux différentes suites de symboles possibles en entrée.
En pratique, l’ouverture de l’oeil constitue un bon indicateur du degré d’interférences entre symboles : plus l’oeil est
fermé, plus le taux d’interférences entre symboles est important.
RI du canal Spectre d’amplitude du canal
0.04
2 0.023
0.889

FT
RI
n 0 k 0.02

5
0.752 2 8.348 .10 0
0 50 100 0 100 200
0 n 100 0 k 199

Entrée du canal (16 points/symbole) Sortie du canal (partie réelle)


2 5

Entree 0 Re Sortie 0
n n

2 5
0 200 400 0 100 200 300 400
0 n 400 0 n 400

Constellation du signal d’entrée du canal Constellation du signal de sortie du canal


2 5
1 3.212

Im Entree 0 Im Sortie 0
n n

1 2 2.877 5
0 0
4 Re Entree 4 4 Re Sortie 4
n n

Diagramme en oeil
20
20

y1
n

y2 15
n

y3
n

y4
n 10

y5
n

y6
n
5
y7
n

y8
n
0
y9
n

y10
n

y11 5
n

y12
n

y13
n 10

y14
n

y15
n
15
y16
n

20 20
0 5 10 15 20 25 30
0 n 30

5. 6
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

I. CODAGE - DECODAGE (MODULATION - DEMODULATION)


Modulations analogiques
Pour que l’occupation en fréquence soit minimale, on utilise généralement une porteuse sinusoïdale (la porteuse
n’occupe alors qu’une seule fréquence : la fréquence de la sinusoïde).
3 façons d'insérer le signal à émettre BF (Basse Fréquence) dans la porteuse HF (Haute Fréquence) :
On insère : - la BF dans l'amplitude de la porteuse : Modulation d'amplitude AM (Amplitude Modulation)
ou encore ASK (Amplitude Shift Keying)
- la BF dans la fréquence de la porteuse : Modulation de fréquence FM (Frequency Modulation)
ou encore FSK (Frequency Shift Keying)
- la BF dans la phase de la porteuse : Modulation de phase PM (Phase Modulation)
ou encore PSK (Phase Shift Keying)
Ex. Transmission d’un signal numérique : (porteuse sinusoïdale : )
0 0 1 1 0 1 0 0 0 1 0
Niveau 1
Signal à transmettre : Niveau 0

0 0 1 1 0 1 0 0 0 1 0

Modulation d'amplitude AM :
Remarque : Portée d’émission importante (réflexion sur les couches hautes de l’atmosphère) mais au prix d’une
moindre qualité (le bruit se greffe directement sur le signal utile, enveloppe du signal modulé)
0 0 1 1 0 1 0 0 0 1 0

Modulation de fréquence FM :
Avantage : Excellente immunité au bruit (le bruit ne se greffe pas directement sur le signal utile mais sur l’enveloppe
du signal modulé)
0 0 1 1 0 1 0 0 0 1 0

Modulation de phase PM :
Avantages : Meilleur débit de transmission en plus d’une excellente immunité au bruit (le bruit ne se greffe pas
directement sur le signal utile mais sur l’enveloppe du signal modulé)

• porteuse : s p (t ) = A cos(2π f p t + ϕ ) la porteuse est quasi-toujours sinusoïdale


A → A(t ) = A + s m (t ) : c’est la modulation AM ( s m (t ) : signal à transmettre)
f p → f p (t ) = f p + s m (t ) : c’est la modulation FM
ϕ → ϕ (t ) = ϕ 0 (t ) + s m (t ) : c’est la modulation PM ( ϕ 0 (t ) = 2π f p t + ϕ )

3 types de modulation :
- Modulation analogique continue
- Modulation analogique par impulsions
- Modulation par impulsions codées (Modulation Numérique)
HF : signal porteur, noté s p (t )
BF : signal utile, signal modulant, signal à transmettre noté s m (t )
Pour la modulation d'amplitude : s p (t ) sinusoïdale de fréquence allant de qq. 100 kHz à qq. MHz.
Pour la modulation de fréquence : s p (t ) sinusoïdale de fréquence de l'ordre de 100 MHz.
→ Avec une porteuse de fréquence 1 MHz, l'encombrement spectral du signal audio de l'exemple précédent
occupant de 20 Hz à 20 kHz, est translaté de 1 MHz et devient maintenant :
de 1.00005 MHz à 1.02 MHz → l'antenne est alors adaptée à toute la plage (et une dimension raisonnable).

5. 7
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Il suffit à la réception de s'accorder sur la fréquence porteuse, autour de laquelle la variation de fréquence relative est
faible → différenciation aisée, ≠ à sans modulation : la détection, ou démodulation, consiste alors en un simple filtrage
fréquentiel (passe-bas, pour éliminer la porteuse HF et ne conserver que le signal utile BF).

Exemple : Emission sans modulation de 2 signaux de musique (leur spectre va de 20 Hz à 20 kHz) :


Spectre d’amplitude Spectre occupé (occupation en fréquence)

S( f )

f 20 Hz 20 kHz
20 Hz 20 kHz

Les 2 signaux se mélangent si on les transmet tels quels car, à la réception, il est imposiible de les séparer.

Le principe de la séparation consiste en un filtrage fréquentiel : le récepteur se cale sur (sélectionne) la fréquence
(ou la gamme de fréquences) du signal à détecter et élimine le reste des fréquences. Si des signaux occupent la
même plage de fréquences, il est donc impossible de les séparer à la réception.

La modulation consiste à effectuer une transposition de fréquences du signal à émettre autour de la fréquence f p de la
porteuse (porteuse sinusoïdale de fréquence f p ~ 1 MHz).

Ainsi, la variation relative de fréquence du signal modulé est très faible et autorise une détection (démodulation, filtrage
fréquentiel) permettant de récupérer le signal original en se calant sur la fréquence de la porteuse. Pour transmettre
plusieurs signaux BF, il suffit alors d’utiliser pour chacun une fréquence de porteuse différente autour de laquelle le
récepteur se calera pour la détection.

Exemple : Emission avec modulation d’un signal de musique (spectre allant de 20 Hz à 20 kHz) ( f p ~ 1 MHz) :

Spectre d’amplitude Spectre occupé (occupation en fréquence)

S( f )

f
fp - 20 Hz fp + 20 kHz
fp = 1 MHz fp - 20 Hz fp + 20 kHz

2 porteuses ne peuvent donc avoir la même fréquence sinon on ne peut démoduler (→ l’espace des fréquences est
règlementé).

La porteuse constitue donc une enveloppe (au sens du courrier « postal ») dans laquelle on insère le signal à transmettre
(c’est la modulation) pour ne pas que les signaux à émettre se mélangent durant le transport. (L’enveloppe est elle-même
un signal, le signal porteur, de fréquence unique et de HF). La démodulation doit se charger d’éliminer cette
« enveloppe » par filtrage fréquentiel passe-bas (les HF sont éliminées).

Si le signal à transmettre est caractérisé par un spectre très étroit (même à BF), il est clair qu’il n’a pas besoin de
porteuse. Mais la plupart des informations ont pour support un signal BF de spectre de fréquences large en valeur relative
et doivent donc être modulés.

Modulation par multiplication (encore appelée modulation « sans porteuse » car S ( f ) = 0 à f = f p )

Porteuse: s p (t ) = A p ⋅ cos 2π f p t ( ) Signal BF (supposé sinusoïdal dans un 1er temps): s m (t ) = Am ⋅ cos (2π f m t )
s m (t )
Sm ( f )
t Am
Graphe de s m (t ) : 0
Spectre de s m (t ) :
f
0 fm

5. 8
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Représentation temporelle du signal modulé s(t) : (signal émis)

s (t ) = k ⋅ s p (t )⋅ s m (t ) = k A p Am ⋅ cos(2πf p t ) ⋅ cos( 2πf m t )


<--- s(t)

s( t )

sBF ( t )

<--- sBF(t)
t

Le signal s m (t ) est, au facteur k Ap près, le signal sBF (t), qui est l’enveloppe, au sens graphique, de s (t ) .

Spectre S(f) de s(t)


A p Am
s (t ) = k
2
[cos{2π ( f p + f m )t }+ cos{2π ( f p − f m )t } ]
d’où le spectre d’amplitude S ( f ) de s (t ) (décomposition en série de Fourier réduite ici à une simple linéarisation
Ap Am S( f )
k
2
f
du produit de cosinus) : 0
( f p − fm ) fp ( f p + fm )

Démodulation du signal : s (t ) → s m (t )

Elle peut être obtenue en multipliant s(t) par une porteuse locale (à la réception): s ′p (t ) avec :
s ′p (t ) = A′p ⋅ cos(2π f p t ) puis en filtrant

k k ′A p A′p
s1 (t ) = k ′ ⋅ s ′p (t ) ⋅ s (t ) = k k ′A′p A p Am cos 2 (2πf p t ) ⋅ cos(2πf m t ) =
2
[ ]
⋅ Am 1 + cos(4π f p t ) ⋅ cos( 2πf m t )
k k ′A p A′p k k ′A p A′p
s1 (t ) = k ′ ⋅ s ′p (t ) ⋅ s(t ) =
2
⋅ Am ⋅ cos(2πf m t ) + Am ⋅
4
[cos{2π (2 f p − f m )t } + cos{2π (2 f p + f m )t } ]
14444244443 1444444444442444444444443
v(t) éliminé par un filtre passe-bas

′ ′
v(t) = s m (t ) au facteur k k A p A p ⋅ Am près. Spectre de s1 (t ) : 0 f
2 fm 2 f p − fm 2 f p + fm

Filtre passe-bas Amplificateur


s (t ) s1 (t ) v(t) 1
Multiplicateur
s m (t )
k k ′A p A′p
s'p ( t ) ∏ k' f ⋅ Am
fm 2 fp 2

5. 9
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Modulation d'Amplitude (AM)


Représentation temporelle du signal modulé : s(t)

Ex. : s m (t ) sinusoïdal : s m (t ) = Am ⋅ cos (2π f m t )

[ ] [ ]
s (t ) = A p + s m (t ) ⋅ cos(2πf p t ) = A p + Am ⋅ cos(2πf m t ) ⋅ cos(2πf p t )

Am 1
En posant : m= : indice, ou taux de modulation (en %) m = k Am avec : k =
Ap Ap
on a : s (t ) = A p [1 + m ⋅ cos(2πf m t )] ⋅ cos(2πf p t )

(
s p (t ) = s p ( Ap , φ , t ) = Ap cos 2π f p t + φ ) → s(t ) = s p ( A(t ),0, t ) avec A(t ) = Ap + sm (t )

• Réglage du taux de modulation m :

0 < m <1 : s(t ) est le signal à transmettre s m (t ) ( à un facteur près et un offset près) :
L’enveloppe > 0 du signal
Ap (1− m) ≤ enveloppe positive de s(t ) ≤ Ap (1+ m) . La modulation est correctement réalisée.
Ap(1+m)

<--- sBF(t)
s( t ) <--- s(t)
sBF ( t )

-Ap(1-m)

m=0 : L’enveloppe > 0 du signal s(t ) ne témoigne pas suffisamment du signal à transmettre s m (t ) :
il y a sous-modulation (l’information utile est indétectable)
<--- sBF(t)

<--- s(t)
s( t )

sBF ( t )

m =1 : L’enveloppe > 0 du signal s(t ) est le signal à transmettre s m (t ) (à un facteur près et un offset près) :
on est à la limite de la surmodulation : 0 ≤ enveloppe positive de s(t ) ≤ 2 Ap

s( t )
<--- sBF(t)
sBF ( t ) <--- s(t)

5. 10
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

m >1 : L’enveloppe > 0 du signal s(t ) ne témoigne plus fidèlement du signal à transmettre s m (t )
(perte d’informations à la transmission, donc à la réception) : il y a surmodulation

s( t )
<--- sBF(t)
sBF ( t ) <--- s(t)

Spectre du signal modulé AM

Ex. : s m (t ) sinusoïdal : s m (t ) = Am ⋅ cos (2π f m t )

[ ] [
s (t ) = A p + s m (t ) ⋅ cos(2πf p t ) = A p + Am ⋅ cos(2πf m t ) ⋅ cos(2πf p t ) ]
Am
En linéarisant le produit de cosinus, on a : (avec : m= )
Ap
m Ap
s(t ) = A p cos(2πf p t ) + {cos [2π ( f p ] [ ]
+ f m )t + cos 2π ( f p − f m )t } d’où les spectres :
2
S( f )
Ap
m Ap Am
=
Sm ( f ) 2 2
f
0
Am ( f p − fm ) fp ( f p + fm )
f
0 fm

Démodulation du signal AM

Détection synchrone
On utilise un oscillateur local à la réception, oscillant exactement à la fréquence f p et délivrant le signal :

s ′p (t ) = A′p ⋅ cos(2πf p t )

Filtre passe-bas
s (t )
Multiplicateur
v( t)
s'p ( t ) ∏ k f
fm 2fp

En effet : k s(t ) ⋅ s ′p (t ) = k A p A′p [1 + m cos( 2πf m t )] cos 2 (2πf p t ) d’où :

k A p A′p ⎧
k s (t ) ⋅ s ′p (t ) =
2 ⎩
m
2
m
2
[
⎨1 + m cos( 2πf m t ) + cos(4πf p t ) + cos 2π (2 f p − f m )t + cos 2π (2 f p + f m )t ⎬

] [ ]

14444244443 144444444444424444444444443
v(t) éliminé par le filtre passe-bas

v(t) est bien proportionnel à s m (t ) après élimination de la composante continue.

5. 11
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Boucle à Verrouillage de Phase (Phase Locked Loop : PLL)

Pour éviter le problème de fading (décalage entre les oscillateurs à l’émission et à la réception), on utilise de préférence un
asservissement PLL pour reconstituer s ′p (t ) à partir de s(t) (pour la détection synchrone) :
Filtre passe-bas
s (t ) Multiplieur
p(t )
u(t ) ∏ k f
fm 2 fp

VCO

Schéma synoptique d’une PLL

L'oscillateur commandé en tension (VCO) (Voltage Controlled Oscillator) délivre le signal: [ ]


u (t ) = A′p ⋅ sin 2πf p t − ϕ (t )
avec ϕ (t ) dépendant de la tension de commande p (t ) par la relation :

dϕ (t ) dϕ (t )
= a p(t ) avec : a : Cte et << 2πf p
dt dt

Filtre passe-bas
s (t ) Multiplieur
s (t )
∏ k f
fm 2 fp PLL
u(t ) p(t )
s'p ( t ) Déphaseur u(t )
+π/2 VCO
(avance)
Signal démodulé
(si on élimine la composante continue)

Détection synchrone à PLL

Modulation Bande Latérale Unique par multiplication (BLU)

On a vu que la multiplication du signal utile s m (t ) = Am cos( 2πf m t ) par la porteuse s p = A p cos 2πf p t provoque 2 ( )
A p Am
composantes fréquentielles sinusoïdales d'amplitudes k et de fréquences ( f p + f m ) et ( f p − f m ).
2
La modulation BLU ne conserve qu'une seule de ces 2 composantes :

k A p Am
Ex. : la Bande Latérale Supérieure (BLS) → signal émis : s (t ) =
2
[
⋅ cos 2π ( f p + f m )t ]
Avantage : La BLU occupe ainsi une bande de fréquences limitée par rapport à la modulation par multiplication
(occupation fréquentielle réduite).

Représentation Temporelle de la BLU

Si sm ( t ) est sinusoïdal de fréquence f m → s(t) : sinusoïde d'amplitude Cte de fréquence f p + f m


→ Modulation BLU ≡ Translation du signal dans le domaine fréquentiel (translation du spectre, décalage,
transposition de fréquences).

5. 12
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Spectre du signal BLU

Si sm ( t ) occupe la bande de fréquences f m , f M [ ] → le signal modulé BLU occupe la bande f p + f m , f p + f M : [ ]


S( f )
Ap A m
k
2
Ap A M
Sm ( f ) k f
A 2 0
m AM fp ( f p + fM )
Spectres : f
( f p + fm)
f fM
m

→ En ne conservant qu'une seule Bande Latérale, on limite la bande de fréquences nécessaire à la transmission.

Démodulation de la BLU
Filtre passe-bas
s( t )
Multiplieur u (t )
Signal démodulé
s ′p (t ) ∏ k f
fm 2 fp

s ′p (t ) : oscillateur local : s ′p (t ) = A p′ ⋅ cos 2πf p t ( )


s(t ) = BLU = k 0 A p Am cos 2π ( f p + f m )t [ ]
k 0 kA p Am A p′
[
→ u(t ) = k 0 kA p Am A p′ cos 2π ( f p + f m )t cos (2πf p t ) = ] 2
{cos [2π (2 f p ]
+ f m )t + cos (2πf m t ) }
144424443
terme à éliminer (filtrage)

Modulation de Fréquence (FM) et Modulation de Phase (PM)


On insère le signal BF dans la fréquence de la porteuse.

Avantage : La FM est moins sensible que la modulation d'amplitude aux bruits parasites car ceux-ci agissent
directement sur l'amplitude du signal modulé (bruit additif) donc du signal utile à la réception, et
quasiment pas sur sa fréquence.

Modulation de Phase et Modulation de Fréquence (PM et FM)

Le signal modulé (≡ signal émis) peut s’écrire : s(t ) = A(t ) ⋅ cos θ (t ) θ (t ) : phase de s(t ) .
avec :
A(t ) = kA p Am cos (2πf m t ) = kA p sm (t )
En modulation AM : sm (t ) intervient dans A(t ) Ex. :
θ (t ) = 2πf p t
En modulation PM et FM : sm ( t ) intervient dans θ ( t ) : θ (t ) = 2πf p t + ϕ (t ) et : A(t ) = A p

- en PM: ϕ ( t ) = k sm ( t ) ( )
→ s(t ) = Ap cos 2π f p t + ksm ( t ) s( t ) = s p ( Ap , φ ( t ), t ) avec φ (t ) = ksm (t )

dϕ (t )
= k sm (t ) → s(t ) = A cos⎛⎜ 2π f t + k s (τ )dτ ⎞⎟
t t
- en FM: s(t ) = s p ( Ap , φ (t ), t ) avec φ (t ) = k sm (τ )dτ
dt p

p ∫
0
m

∫ 0

Rappel : s p ( t ) = s p ( Ap , φ , t ) = Ap cos(2π f p t + φ ) et sm (t ) = Am cos(2π f mt ) si le signal modulant est sinusoïdal.

5. 13
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Dans le cas où le signal utile (≡ signal à transmettre, encore appelé signal modulant) sm (t ) est sinusoïdal (cas
intéressant pour une étude élémentaire) : sm ( t ) = Am cos ( 2πf m t ) , on a, pour expression du signal modulé s( t ) :

⎡ ⎤
- en FM : s(t ) = A p cos⎢2πf p t +

kAm
2πf m ⎦
[
sin( 2πf m t )⎥ = A p cos 2πf p t + m ⋅ sin(2πf m t ) ]
kAm
avec : m = : indice de modulation.
2πf m

- en PM : ( ) (
s(t ) = Ap cos 2π f p t + kAm cos(2π f mt ) = Ap cos 2π f p t + m ⋅ cos(2π f mt ) )
avec : m = kAm : indice de modulation.

Forme du signal FM

Pour sm ( t ) sinusoïdal :

• modulation correctement réalisée : ( m faible et ≠ 0)

s( t )

• surmodulation (perte d’informations) : ( m élevé)

s( t )

Spectre du signal FM

Cas simple où m << 1

s (t ) = A p cos{2πf p t + m sin ( 2πf m t )} = A p {cos(2πf p t ) ⋅ cos(m ⋅ sin( 2πf m t ) ) − sin ( 2πf p t ) ⋅ sin (m ⋅ sin( 2πf m t ) )}
14243 14243
≠0 ≠0
s (t ) ≈ A p cos(2πf p t ) − A p sin(2πf p t ) ⋅ m ⋅ sin (2πf m t )
m Ap m Ap
→ s (t ) ≈ A p cos(2πf p t ) + ⋅ cos{2π ( f p + f m )t }− ⋅ cos{2π ( f p − f m )t }
2 2
↑ ↑ ↑
porteuse BLS BLI
Spectres :
S( f )
Ap
m Ap
Sm ( f ) 2
f
Am 0
( f p − fm ) fp ( f p + fm )
f
0 fm

5. 14
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

m quelconque

s (t ) = Ap cos{2πf p t + m sin(2πf m t )} = Ap ⋅ Re[e


{
i 2πf p t + m sin(2πf m t ) }
] (formule d’Euler)

Décomposition de Bessel : ei m sin(2πf m t ) = ∑J
n = −∞
n (m) ⋅ ei n 2πf m t où J n (m) sont les fonctions de Bessel (réelles)

∑ [J (m ) ⋅ cos (2π ( f ]
⎡ ∞ i 2π ( f p + n f m )t ⎤

s (t ) = Ap ⋅ Re ⎢ ∑ J n (m ) ⋅ e ⎥ → s (t ) = Ap n p + n f m )t )
⎣ n = −∞ ⎦ n = −∞

Le spectre de s (t ) est infini ( n : − ∞ → ∞ ) : spectre doublement infini si s m (t ) n’est pas sinusoïdal.

Fonctions de Bessel :

J0(m) ---> 1

J1(m) ---> J0( m )


J2(m) ---> 0.5
J1( m )
J3(m) --->
J2( m )
0
J3( m )

0.5
0 5 10 15 20 25
m

Démodulation de Fréquence

On transforme la variation de fréquence ∆ω en variation d'amplitude ∆ A → On peut ensuite effectuer une


démodulation d'amplitude (à PLL par exemple).

5. 15
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Modulations numériques (Transmissions Numériques)


Les modulations d'impulsions

En télécommunications, le signal représentant l'information à transmettre subit une transposition de fréquence de façon
à occuper une bande de fréquence de largeur relativement faible autour d'une porteuse HF.

Cette transposition est effectuée par modulation d'un des paramètres caractérisant la porteuse : amplitude, fréquence ou
phase.

Si la porteuse est constituée d'impulsions, la modulation présente l'avantage de pouvoir transporter plusieurs signaux à
la fois : c'est le multiplexage temporel (multiplexage ≡ sélection, commutation de 1 signal parmi N).

Les impulsions de la porteuse ont pour fréquence Fe : fréquence des échantillons du signal numérique. A la réception,
il suffit de se caler sur la fréquence d’échantillonnage Fe pour démoduler.

La modulation d'impulsions en amplitude


On utilise un échantillonneur rythmé par une horloge H de période Te (période d’échantillonnage Te = 1 ) et
Fe
fournissant des impulsions de largeur τ . Un échantillonneur ≡ interrupteur, commutateur analogique K commandé par
l'horloge H)

sm ( t )

H τ

H t
0 Te
s (t )
K
sm (t ) * (t ) = s (t )
sm
t
( BF ) (signal émis) Te

Spectre de s (t ) :

On montre à l'aide de la Transformée de Fourier que l'échantillonnage temporel a pour effet de périodiser le spectre de
s m (t ) : (à la période (fréquentielle) Fe ) :

| S ( f )| | S ( f )|
m

f f
- Fm Fm - Fe - Fm Fm Fe 2 Fe
0 0 Fe - Fm Fe + Fm

5. 16
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

La porteuse (≡ l'horloge) doit respecter la condition de Shannon : (théorème de Shannon) :


Fe ≥ 2 Fm où Fm est la fréquence maximale contenue dans le spectre de s m (t ) ,

sans quoi il y a recouvrement des lobes du spectre de s (t ) et impossibilité, à la réception, de reconstituer s m (t ) à


partir des échantillons s m (t ) .

Ex. : Signal de musique : 20 Hz < f < 20 kHz → Fm = 20 kHz → Fe ≥ 40 kHz


Signal de parole : 300 Hz < f < 4 kHz → Fm = 4 kHz → Fe ≥ 8 kHz .

Démodulation
La démodulation se fait simplement par filtrage passe-bas de s (t ) avec Fm pour fréquence de coupure.

Multiplexage
On peut, sur un même canal de transmission (≡ une même porteuse (équivalent d’une ligne de transmission pour les transmissions
filaires)) transporter plusieurs messages en même temps par multiplexage temporel (≡ sélection d’un signal parmi N).

A la réception, il faut séparer les messages par démultiplexage (≡ récupération des N signaux à partir d’1 signal).

sm ( t )
1 sm sm* sm* sm
1 1 1 1
MUX Filtre
DEMUX
Passe-bas

t
s*

sm ( t )
2 sm sm* sm* sm
2 2
s* 2 2
Filtre
Passe-bas

t t
0 Te
Echantillonneurs Multiplexeur temporel Démultiplexeur temporel

Ce système de multiplexage est utilisé en téléphonie : la fréquence supérieure de la voix est de l'ordre de Fm = 4 kHz.
L'échantillonnage se fait à Fe = 8 kHz. On arrive à transporter plusieurs dizaines de voies téléphoniques sur la même
ligne de transmission.

5. 17
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

La modulation d'impulsions en durée (PWM : Power Width Modulation)

Les impulsions ont toutes la même amplitude, mais c'est leur durée τ qui est fonction du signal s m (t ) à transporter.

s m (t )

t
0
Te

s (t ) signal émis

t
0 Te τ

La modulation d'impulsions en position

Les impulsions ont toutes la même amplitude et la même durée, mais leurs fronts montants n’apparaissent tous les Te
secondes, comme dans les cas précédents. Ils sont retardés d'un temps τ qui est fonction du signal s m (t ) à transmettre :

s m (t )

t
0 Te

s (t )
signal émis
E

t
0 Te
τ

La modulation d'impulsions en densité (moins utilisée car Fe est variable)

Les impulsions ont toutes la même amplitude et la même durée, mais leur densité (≡ fréquence) est fonction du signal
s m (t ) à transmettre :

s m (t )

s (t )

t
0

5. 18
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

La modulation d'impulsions codées (MIC) 1 impulsion est codée par 1 mot binaire

Les échantillons successifs du signal à émettre ne sont pas utilisés directement mais sont quantifiés et codés
numériquement en un mot binaire à l'aide d'un convertisseur analogique-numérique (CAN).
La quantification va arrondir l'amplitude de l'échantillon (cas de la modulation en amplitude) ou sa durée (cas de la
modulation en durée) etc ..., à une valeur discrète parmi N = 2m valeurs possibles
(m : nombre de bits de quantification, N : dynamique de quantification, de codage).

(L'échantillonnage discrétise le temps à la période d’échantillonnage Te , alors que la quantification discrétise la valeur, l’amplitude de l'échantillon).

Le but du codage peut être de limiter l’occupation spectrale du signal à émettre, ou l’immunisation au bruit, ou encore
le compactage, la compression des données ...

Les principaux codages utilisés sont les suivants :


- code binaire biphasé
- code différentiel biphasé
- code RZ (Retour à Zéro)
- code NRZ (Non Retour à Zéro)
- code à modulation de délai (DM ou Miller)
- codes FM
- codes multiniveaux

H T
+
0 t Horloge
V 0 1 1 0 0 0 1 1 0 1 0
+
0 t Code Binaire initial
V
+
0
-
t Code Biphasé
V
+
0 t Code Biphasé différentiel
V
+
0
-
t Code RZ
V
+
0
-
t Code Bipolaire
V
+
0
-
t Code NRZ

Le signal numérisé (≡ échantillonné, quantifié et codé) est parfois codé directement suivant le code binaire pur
(≡ code binaire initial) ou mieux, suivant le code binaire réfléchi (code de Gray) par exemple, pour autoriser la
détection et la correction des erreurs de transmission.

Le code biphasé présente, quant à lui, l’avantage de limiter le spectre de fréquences occupé par le signal à émettre par
rapport au code binaire pur.

La Modulation ∆ :

Plutôt que de transmettre le mot binaire de chaque échantillon, on ne transmet que la différence d’amplitude entre 2
échantillons consécutifs et pouvant souvent être codée sur un seul bit si la valeur des échantillons ne varie pas trop
brutalement.

Avantage : Compression (≡ réduction) de la quantité d'informations à transmettre.

5. 19
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Transmission du signal binaire (≡ numérique)

Transmission en Bande de Base

Les impulsions de courant matérialisant les 0 et les 1 sont appliquées directement pour l'émission, on dit dans ce cas
que la transmission se fait en bande de base.

Compte tenu du théorème de Shannon, un signal dont la bande de fréquence utile (≡ occupée) est B nécessite un canal
de largeur 2B.

Transmission par modulation

Le plus souvent, la transmission en bande de base n'est pas possible du fait de la faible Bande Passante du canal de
transmission, et il faut adapter le mode de représentation de l'information au canal disponible : c'est la modulation.

- Modulation ASK (Amplitude Shift Keying) : Modulation d'amplitude


Un oscillateur de fréquence élevée est modulé en tout ou rien par le signal binaire à transmettre. Le spectre du signal
utile est transposé autour de la fréquence porteuse.

- Modulation FSK (Frequency Shift Keying) : Saut de fréquence


Aux 2 valeurs 0 et1 des bits successifs correspondent 2 fréquences différentes de l'oscillateur pilote (≡ porteuse).

- Modulation PSK (Phase Shift Keying) : Saut de phase


Le signal à transmettre est constitué d'impulsions polaires qui commandent une variation de ± π / 2 de la phase de
l'oscillateur pilote. Ce procédé nécessite de connaître la phase de référence → transmission nécessairement synchrone.

- Modulation DPSK (Differential Phase Shift Keying) : Saut de phase différentiel


Pour éviter d'avoir à transmettre une phase de référence, l'information est transmise sous forme de variations de phase.

Transmission d’un signal numérique : (porteuse sinusoïdale : )

0 0 1 1 0 1 0 0 0 1 0
Niveau 1
Signal à transmettre : Niveau 0

0 0 1 1 0 1 0 0 0 1 0

Modulation d'amplitude ASK :

0 0 1 1 0 1 0 0 0 1 0

Modulation de fréquence FSK :

0 0 1 1 0 1 0 0 0 1 0

Modulation de phase PSK :

5. 20
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Codes détecteurs et correcteurs d'erreurs

Le bruit dans les systèmes de transmission binaire peut modifier un bit du mot. Plusieurs codes de détection et de
correction existent :

• Utilisation d'un bit supplémentaire de parité


(parité d'un mot binaire ≡ parité du nombre de bits à 1contenus dans le mot)

A chaque mot du message à transmettre, est ajouté un bit choisi de telle sorte que le mot résultant ait une parité paire
(ce bit ajouté est appelé bit de parité) :

Code détecteur d'erreurs par test de parité à la réception.


Inconvénient : pas de correction possible car on ne peut pas localiser le bit erronné. De plus, un nombre pair d’erreurs
simultanées sur un mot passent inaperçues.
• Codes à parités entrelacées
Un tableau 2D (≡ à 2 Dimensions) est construit avec les mots (tableau de taille N x ∗ N y ). La parité est contrôlée
horizontalement et verticalement : code détecteur plus puissant que le précédent car il y a localisation du bit d’erreur et
donc correction possible. Comme le précédent, seul un nombre impair d’erreurs simultanées peut être détecté.

• Codes de Hamming
Codes détecteurs et correcteurs. Ils ajoutent plusieurs bits à des emplacements bien déterminés dans le mot (chacun de
ces bits contrôle un groupe de bits du mot avec recoupements des groupes) pour détecter la position des erreurs et ainsi
les corriger plus efficacement

• Codes cycliques
Pour une transmission sûre à 100 % le Codage à Redondance Cyclique (CRC) peut être utilisé, pour lequel les données
sont codées sous forme polynomiale.
Ce contrôle consiste à comparer les restes des divisions d'un polynôme par un polynôme fixe pour la donnée initiale et
pour la donnée après transmission (les données étant représentées sous forme de polynômes dont la longueur
conditionne le choix des polynômes diviseurs).
Plusieurs codes à redondance cyclique sont définis suivant la longueur des mots à transmettre.

• Codes continus (correction d'erreurs en paquets)


La plupart des codes détectent des erreurs réparties individuellement. Malheureusement, les erreurs sont parfois (même
si c'est rare) groupées en paquets. (ex.: poussière sur un Compact Disc → plusieurs dizaine de bits disparaissent d'un
coup).
Pour combattre ce phénomène, une solution simple mais efficace consiste à effectuer un entrelacement (≡ écriture des
mots dans un ordre différent de celui de la lecture).
Exemple : entrée horizontale des mots dans une matrice et lecture verticale de ces mots.
Code détecteur et correcteur d’erreur.

5. 21
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Filtrage optimal au sens des moindres carrés


Le fitre égaliseur (equalizer) et l’extracteur de signal à partir d’une mesure bruitée sont 2 problèmes différents menant à
la même solution formelle. Le premier est posé de manière déterministe, le second de manière stochastique. Les deux se
basent sur un critère quadratique (minimisation de l’énergie de l’erreur).
II. EGALISATION
Dégradation {vn } Restauration
{u n } G (z ) F (z ) {y n }
canal G ( z ) F ( z ) est la FT du canal de transmission dégradé-restauré.

Y ( z)
Etant donnée la dégradation G (z ) , il s’agit de déterminer le filtre de restauration F (z ) tel que : = D( z ) ,
U ( z)
soit : F ( z )G ( z ) = D ( z ) . Le terme « égaliseur » provient du cas particulier D ( z ) = 1 . On a alors : F ( z )G ( z ) = 1
(La dégradation est connue par modélisation ou identification). (Le rôle de l’égaliseur F (z ) est de compenser la dégradation).

D( z )
La solution immédiate : F ( z ) = est généralement non réalisable.
G( z)
En effet, si G (z ) s’annule pour certaines fréquences, F (z ) est infini. Ou bien si G (z ) comporte des zéros « instables », F (z ) est alors instable.
Ou encore, F (z ) doit être passe-haut si comme c’est généralement le cas en physique, G (z ) est passe-bas, et un filtre physique passe-haut ne peut
être passe-haut pour des fréquences infiniment élevées.
Enfin, si G (z ) provoque un retard (cas des filtres causaux), F (z ) est non causal car il doit provoquer une avance.
On préfère ainsi se limiter à la classe des filtres F (z ) du type MA (≡ RIF : Réponse Impulsionnelle Finie) et
minimiser le critère quadratique (≡ moindres carrés) pour signaux déterministes :

∑ (d )

V ({ f n }) =
2
n − dˆn
n = −∞

où : { d n } , { f n } et { g n } sont les RIs de D( z ) , F ( z ) et G ( z ) et {d$ } la RI du canal restauré.


n

Comme dˆn = g n * f n (du fait de la relation d’égalisation : F ( z )G ( z ) = D( z ) ) , on a :



V ({ f n }) = ∑ (d − gn * fn )
2
n avec f n = 0 pour n < 0 et n > N (filtre RIF causal de support de longueur N + 1 )
n = −∞
2
⎛ N ∞
⎞ ∞ N ∞ N N
⎡ ∞ ⎤
→ V ({ f n }) = ∑ ⎜ d n − ∑ f k g n−k ⎟ = ∑ d n2 − 2∑ f k ∑ d n g n−k + ∑∑ f i f j ⎢ ∑ g n−i g n− j ⎥
n = −∞⎝ k =0 ⎠ n = −∞ k =0 n = −∞ i =0 j =0 ⎣ n=−∞ ⎦
2
⎛ N ⎞ N N −1 N N N −1 N
(on rappelle que : ⎜ ∑ ai ⎟ = ∑ ai2 + 2∑ ai ∑ a j = ∑ ai2 + 2∑ ∑ ai a j )
⎝ i =0 ⎠ i =0 i =0 j = i +1 i =0 i = 0 j =i +1
∞ ∞ n − j =λ ∞
or : ∑ d n g n−k = ϕ dg−k
n = −∞
et en posant n − j = λ : ∑ g n −i g n − j
n = −∞
= ∑ gλ
λ = −0
+ j −i g λ = ϕ gg j −i

ϕ gg : autocorrélation de gn ϕ dg : intercorrélation entre dn et gn


∞ N N N
donc : V ({ f n }) = ∑d 2
n − 2∑ f kϕ dg −k + ∑∑ f i f jϕ gg j −i
n = −∞ k =0 i =0 j =0

⎡ f0 ⎤ ⎡ ϕ dg0 ⎤
∞ ⎢f ⎥ ⎢ϕ ⎥
∑d f =⎢ 1⎥ = ⎢ −1 ⎥
dg
Posons :
2
=α 2
ϕ dg φ gg = ϕ gg
n = −∞
n
⎢L ⎥ ⎢ L ⎥ i,j j −i

⎢ ⎥ ⎢ ⎥
⎣ fN ⎦ ⎢⎣ϕ dg− N ⎥⎦
φ gg : matrice d’autocorrélation (Toeplitz)
Alors V (f ) = α 2 − 2f Τ ϕ + f Τφ gg f dont le minimum est donné par l’annulation du gradient V f = −2ϕ dg + 2φ gg f = 0
dg

5. 22
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Donc : φ gg f = ϕ dg

5. 23
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

Egalisation
⎡ g0 ⎤
∞ ⎢g ⎥
Dans le cas où D ( z ) = 1 : {d n } = δ n et ϕ dg = ∑d g n−k = g− k on a, en posant γ = ⎢
−1 ⎥
:
−k
n =−∞
n
⎢L⎥
⎢ ⎥
⎣ g−N ⎦
(on retrouve une forme proche du système d’équations de Yule-Walker. Ce sont les équations de Wiener-Hopf)

φ gg f = γ

dont la solution peut être obtenue par inversion matricielle : f = φ gg


−1
γ

De plus, dans le cas causal ( gn causale), l’égalisation conduit au système (Yule-Walker) :

⎡ g0 ⎤
⎢0⎥
φ gg f = γ avec γ =⎢ ⎥
⎢M⎥
⎢ ⎥
⎣0⎦

Conclusion

Le principe de l’égalisation traitée ici fait partie de l’égalisation supervisée : on la connaissance de la dégradation,
directement comme ici, par identification par exemple, ou par apprentissage (réseaux de neurones artificiels
(apprentissage numérique), chaînes de Markov (apprentissage numérique), algorithmes génétiques, apprentissage
symbolique).

Lorsque la dégradation n’est pas connue à priori, il ne s’agit plus réellement de restauration de signal et on parle alors
d’égalisation non supervisée encore appelée égalisation aveugle.

5. 24
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

III. EXTRACTION DE SIGNAL IMMERGE DANS DU BRUIT


Le problème de l’extraction de signal immergé dans du bruit est l’analogue en stochastique du problème précédent déterministe de l’égalisation.

Ce type de débruitage est basé sur un critère quadratique (minimisation de l’énergie de l’erreur) dans un contexte
stochastique.

{ un } = { sn } + { bn } F (z) { ŝn }
A partir de la mesure un = sn + bn (signal + bruit), il s’agit de déterminer la FT F (z ) (ou la séquence RI
{ f n } = TZ −1 [F ( z )] ) satisfaisant au critère quadratique pour signaux aléatoires (on passe en Espérance) :
[
V ({ f n }) = E S n − Sˆn ] 2
minimum { S n } VA dont une réalisation est { sn }
avec :

Sˆ n = f n *U n pour qu’il y ait extraction du bruit. On a donc : V ({ f n }) = E [S n − f n * U n ]


2
Comme :
( {U n } VA dont une réalisation est { u n } )

{ f n } étant pris comme un filtre RIF (≡ MA) de support de longueur


2
N + 1 , on a : V ({ f n }) = E ⎡ S n − ∑ f k *U n−k ⎤
N
Le filtre
⎢ ⎥
⎣ k =0 ⎦
En posant :
⎡ f0 ⎤ ⎡ Un ⎤
⎢f ⎥ ⎢U ⎥
f =⎢ 1⎥
⎢L ⎥
et U = ⎢ n−1 ⎥
⎢ L ⎥
il vient : [
V ({ f n }) = V ( f ) = E S n − f U
Τ
] 2

⎢ ⎥ ⎢ ⎥
⎣ fN ⎦ ⎣U n− N ⎦

Principe d’orthogonalité : l’erreur est orthogonale à l’observation :

Le gradient (≡ dérivée) de V donne le minimum de V (f ) pour : [(


V f = 2E Sn − f U U = 0
Τ
) ]
Τ
Cette relation exprime le fait que, à l’instant n , l’erreur d’estimation ( S n − f U ) est orthogonale à toutes les données
présentes et passées ( U ) (le produit scalaire (≡ matriciel) est nul). C’est le principe d’orthogonalité.

On a : [( Τ
) ]
V f = 2E Sn − f U U = 2E U Sn − U f [ (
) ] = 2{ E [ S U ] − E [U U ]f } = 0
Τ
n
Τ

, E [U U ] est la matrice
Τ Τ
Comme le terme général de la matrice U U est le terme d’autocorrélation ϕ uu i − j

R = E [U U ] : matrice de Toeplitz.
Τ
d’autocorrélation φ , notée R :
uu

De même, si on note ϕ su = E [ S n U ] le vecteur d’intercorrélation, on retrouve une forme proche du système


d’équations de Yule-Walker (sous forme matricielle).

Le gradient de V s’écrit donc : {


V f = 2 ϕ su − R f } =0
Ce sont les équations de Wiener-Hopf : R f = ϕ su

dont la solution peut être obtenue par inversion matricielle : f = R −1 ϕ su

L’intérêt de cette approche est de ne pas nécessiter la connaissance du bruit mais seulement celle du signal à extraire
(c’est un minimum !) Pour filtrer un signal bruité, il faut la connaissance : soit du bruit, soit du signal non bruité !
Dans un contexte d’autoadaptation (filtrage adaptatif), la contrainte Temps Réel (calcul en ligne) impose d’éviter
l’inversion matricielle en approchant R et ϕ en utilisant les données passées (cf. filtrage adaptatif (Widrow)).
su

5. 25
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)

IV. FILTRAGE ADAPTATIF


Filtre adaptatif de Widrow version récurrente (temps réel) du filtre extracteur de signal immergé dans du bruit vu avant

Le filtre adaptatif de Widrow représente l’exemple le plus connu de filtre adaptatif : il s’agit d’un filtre MA (≡ RIF)
optimal au sens des moindres carrés. L’ajustement des paramètres du filtre (≡ les coefficients ai , ≡ les échantillons f i
de RI) se fait en ligne, c’est-à-dire que les paramètres du filtre varient au cours du temps pour s’adapter à la contrainte
(filtrage optimal : pour le filtre de Widrow, la contrainte est quadratique (moindres carrés)) spécifiée.

Dans l’approche de Widrow, le minimum du critère de performance V ( f ) [ V (f ) = α 2 − 2f Τ ϕ + f Τφ gg f (pour le


dg
Τ
[ ] 2
V ( f ) = E S n − f U (pour le problème de l’extraction de signal immergé dans du bruit)] est obtenu de
problème de l’égalisation) ou
manière itérative par une méthode de gradient.
te
Le vecteur gradient est perpendiculaire aux hypersurfaces V ( f ) = C : en effet, si l’on suppose que f est fonction
Τ
du temps (filtrage adaptatif), on a, sur une isosurface, dV = 0 = V ⋅ f& ⋅ dt , donc V ( f ) est perpendiculaire à f& ,f

qui est le vecteur tangent à l’isosurface.

Dans ces conditions, si on itère sur f proportionnellement au gradient de V ( f ) (le gradient de V ( f ) est
{
V f = 2 ϕ su − R f } ) on ira vers le minimum de V ( f ) selon « la plus grande pente ».
Si k est l’indice d’itération, on choisit : (il ne représente absolument pas l’élévation à une puissance)

f
k +1 k
(
= f − µ R f − ϕ su
k
) où µ est un paramètre fixant la pas d’itération.

Comme toujours avec la méthode du gradient, si µ est faible, la convergence est lente et si µ est grand, il ya risque
de divergence. Pour être plus précis,sur la valeur maximale de µ on peut réécrire la relation précédente :

= [I − µ R ] f + µ ϕ su
k +1 k
f

C’est une équation vectorielle du 1er ordre, dont la solution converge vers R
−1
ϕ su si toutes les valeurs propres de
[I − µ R ] sont de module inférieur à 1, c’est-à-dire si :
1 − µ λi < 1 où : λi sont les valeurs propres de φuu = R
d’où une contrainte pour le choix de µ :
2
0<µ < où : λmax est la plus grande valeur propre λi de R
λmax

Il reste à affiner la relation itérative : f


k +1
( )
= f − µ R f − ϕ su en évitant le calcul, la connaissance de R et ϕ su .
k k

∑ (d )

Pour cela, au lieu du critère de performance V ( f ) [ V (f ) = V ({ f }) = − dˆ n
2 Τ Τ
= α 2 − 2f ϕ dg + f φ gg f (pour le
n n
n = −∞

problème de l’égalisation) ou V ( f ) = V ({ f n }) = E S n − Sˆ n [ ] 2
[ Τ
] 2
= E S n − f U (pour le problème de l’extraction de signal immergé dans du
bruit)] , on utilise un autre critère de performance, constitué de l’erreur quadratique instantanée :

V ′( f ) = sn − f U ( Τ
) 2
= en2 dont le gradient est : V

f ( Τ
= − sn − f U U = − en U )
L’algorithme d’autoadaptation peut donc s’écrire : (il a prouvé expérimentalemnt son efficacité)

k +1
= f − µ en U f i n+1 = f i n − µ en u n−i avec 0 ≤ i ≤ N .
k
f soit, pour la i -ième composante de f :
__________

5. 26
Traitement du Signal TP 5. Transmission

TP 5. Transmission
I. CODAGE - DECODAGE
Signal à transmettre (Signal modulant) : Am := 0.5 fm := 1 sm1( t) := Am⋅ cos( 2⋅ π ⋅ fm⋅ t) sm2( t) := Am if 1 < t ≤ 1.
−3 0 otherwise
t := 0 , 10 .. 2 sm( t) := sm1( t)

Porteuse : Ap := 1 fp := 20 sp ( Ap , φ , t) := Ap⋅ cos( 2⋅ π ⋅ fp⋅ t + φ)

1 2

sm( t) 0 sp ( Ap , fp , t) 0

1 2
0 2 0 0.5 1 1.5 2
t t

Modulation par multiplication k := 1 s( t) := Signal modulé

0.5

s ( t)

− 0.5

0 t 2
Am
Modulation d'amplitude (AM) A( t) := s( t) := sp ( A( t) , 0 , t) m := m = 0.5
Ap

1.5

s( t)

− 1.494

0 t 2

Modulation de phase (PM) k := 20 φ( t) := s( t) := sp ( Ap , φ( t) , t) m := k⋅ Am m = 10

s ( t)

−1

0 t 2

TP 5. 1
Traitement du Signal TP 5. Transmission

k⋅ Am
Modulation de fréquence (FM) k := 150 φ( t) := s( t) := sp ( Ap , φ( t) , t) m :=
2⋅ π ⋅ fm

m = 11.937
1

s ( t)

−1

0 t 2

II. EGALISATION (1)

N := 50 n := 0 .. N {vn }
{u n } G (z ) F (z ) {y n }
u := sin⎛⎜
n⎞
Signal d'entrée :
n ⎝ 2⎠

n
RI de la dégradation : g := ( −1)
n

Signal dégradé : v :=

RI de la restauration : φ := γ n := 0 γ 0 := g f :=
0

Signal restauré : y :=

2
0.641 455.027

un 0 vn yn

2 − 0.644 − 501.181
0 50
n 1 n 50 1 n 50

TP 5. 2
Traitement du Signal TP 5. Transmission

III. EXTRACTION DE SIGNAL IMMERGE DANS DU BRUIT

N := 130 n := 0 .. N { un } = { sn } + { bn } F (z ) { y n } = { ŝn }

s := sin⎛⎜
n⎞
Signal d'entrée non bruité :
n ⎝ 2⎠ 2

sn 0

2
0 50 100 150
n
Bruit : b := whiten( N + 1)

Signal bruité : u := s + b u reverse : ub := u


n N− n

un 0

2
0 50 100 150
n

RI du débruitage : R := φsu := f :=

Signal débruité : y :=

0.114

yn

− 0.129

0 n 130

__________

TP 5. 3
Traitement du Signal TP 5. Transmission

Fonctions Bibliothèque :

Moyenne m, Vecteur r et Matrice d'Autocovariance r et Variance V du signal x de dim K (par ergodicité) :

. Moyenne : . Vecteur d'AutoCovariance : . Matrice d'AutoCovariance :


moy( x) ≡ K ← length( x) vautocov( x) ≡ K ← length( x) mautocov( x) ≡ K ← length( x)
K−1 m ← moy( x) r ← vautocov( x)

1
m← ⋅ x for k ∈ 0 .. K − 1 for i ∈ 0 .. K − 1
K n
n=0 K − k− 1 for j ∈ 0 .. K −
∑ ( n+k ) ( n )
1
m r ← ⋅ x −m⋅ x −m R ←r
k K i, j i− j
n=0
. Variance : R
r
Var( x) ≡ vautocov( x)
0

Fonction YuleWalker( φxx , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . φxx : vecteur fonction d'autocovariance (dim K) du signal x (dim K) : φxx0, φxx1 ... φxxK−1
. N : dim de l'ordre du filtre (formeur/LPC) AR

Paramètre de sortie : . le vecteur a (dim N+1) :


a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleWalker( φxx , N) ≡ for i ∈ 0 .. N Exemple : K := 3 r := 6


0
for j ∈ 0 .. N
N := 2 r := 3
1
R ← φxx i− j
i, j
r := 0
b ←0 2
0
for i ∈ 1 .. N
a := YuleWalker( r , N)
b ← φxxi
i
V := a V= 4
α ← ⎛⎜
−1 ⎞ − 1 0
⋅R ⋅b i := 1 .. N
⎝ φxx0 ⎠ ⎛ 4 ⎞
a = ⎜ −0.667
a =
φxx0 i
a ← ⎜
0 φxx0⋅ α 0 + 1 ⎝ 0.333 ⎠ -0.667
0.333
for i ∈ 1 .. N
a ← a ⋅αi
i 0
a

TP 5. 4
Traitement du Signal TP 5. Transmission

Fonction YuleW( x , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . x : signal x (dim K) : x , x ... x


0 1 K− 1
. N : dim de l'ordre du filtre (formeur/LPC) AR
Paramètre de sortie : . le vecteur a (dim N+1) :
a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleW( x , N) ≡ r ← vautocov( x)
a ← YuleWalker( r , N)
a

Bruit blanc de K points de moyenne m et de variance V :

Bruit blanc de K points centré de variance 0.083 : WhiteNoise( K) ≡ A ← 281


P ← 31357
v ← 100
0
for n ∈ 1 .. N − 1
v ← mod A⋅ v
n ( n− 1 )
,P

for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w

Bruit blanc de K points de moyenne m et de variance V : BruitBlanc( K , m , V) ≡ 12⋅ V⋅ whiten( K) + m

BruitBlanc2( K , m , V) ≡ 12⋅ V⋅ WhiteNoise( K) + m

Réponse reponse (vecteur dim. K) du filtre AR d'ordre N (coeffs a 0 ≤ i ≤ N) au signal x (vecteur dim. K)
i

reponse( x , a , N) ≡ K ← length( x)
for k ∈ 0 .. K − 1
y ←x if k = 0
k k
k
y ←x −
k k ∑ a ⋅y
i k− i
if 1 ≤ k < N
i= 0
N
y ←x −
k k ∑ a ⋅y
i k− i
if k ≥ N
i= 0
y

TP 5. 5
Traitement du Signal TP 5. Transmission

TFD
TFD( x) ≡ M ← length( x) ou encore : TFD2( x) ≡ M ← length( x)
for k ∈ 0 .. M − 1 for k ∈ 0 .. M − 1
n R←0
M−1 − i⋅ 2⋅ π ⋅ k⋅


X ←
1
⋅ x ⋅e
M I←0
k M n
for n ∈ 0 .. M − 1
n= 0
R ← R + x ⋅ cos⎛⎜ 2⋅ π ⋅ k⋅ ⎞
n
X
n ⎝ M⎠

I ← I − x ⋅ sin⎛⎜ 2⋅ π ⋅ k⋅ ⎞
n
n ⎝ M ⎠
1
X ← ⋅ ( R + i⋅ I)
k M
return X

TFDI
TFDI( X) ≡ M ← length( X)
for n ∈ 0 .. M − 1
n
M− 1 i⋅ 2⋅ π ⋅ k⋅


M
x ← X ⋅e
n k
k=0
x

Convolution causale (signaux de même longueur) Convolution causale (signaux de longueur différente)
convcausal2( x , h) ≡ M ← length( x) convcausal( x , h) ≡ M ← length( x)
for n ∈ 0 .. M − 1 N ← length( h)
n for n ∈ 0 .. M − 1
y ←
n ∑ x ⋅h
k n− k n
k= 0 y ←
n ∑ x ⋅h
k n− k
if n < N
y k= 0
y ← 0 otherwise
n
y

TP 5. 6
Traitement du Signal TP 5. Transmission

Transformée de Hilbert
Hilbert( x) ≡ M ← length( x)
f ←0
0
for n ∈ 1 .. M − 1
1
f ←
n π⋅n
TH ← convcausal( x , f )
TH

Vecteur r de covariance des signaux x et y de dim K (par ergodicité) :


. Vecteur de Covariance :
vcov( y , x) ≡ K ← length( x) vcovtermegeneral( x , y ) ≡ K ← length( x)
for k ∈ 0 .. K − 1 mx ← moy( x)
K− 1 my ← moy( y )

1
v ← ⋅ y ⋅x for k ∈ 0 .. K − 1
k K k n
n= 0 K − k− 1

∑ (xn+k − mx)⋅(yn − my)


1
v r ← ⋅
k K− k
n=0
r

Vecteur et Matrice nuls :


VecteurNul( N) ≡ for k ∈ 0 .. N − 1 MatriceNul( Nlignes , Ncols) ≡ for l ∈ 0 .. Nlignes − 1
Nul ← 0 for c ∈ 0 .. Ncols − 1
k
Nul ←0
Nul l, c
Nul

__________

TP 5. 7
Traitement du Signal 6. Prédiction

6. Prédiction

Prédiction
Lissage - Filtrage - Prédiction

Soit n mesures d’un signal. Le traitemement de la mesure au temps :

. n −1 ( n − k en général, avec k > 0 ) (passé) : s’appelle le lissage


. n (présent) : s’appelle le filtrage
. n +1 ( n + k en général, avec k > 0 ) (futur) : s’appelle la prédiction

PREDICTION LINEAIRE (Codage LPC – Linear Prediction Coding)

Etant donné les N échantillons passés d’un signal comportant M points ( N ≤ M ) : yn−1 , yn−2 L , yn− N ,
il s’agit d’en prédire l’échantillon présent : yn .
N

Le plus simple est d’effectuer une prédiction linéaire : y$n = − a1 yn −1 − a2 yn − 2 − L − a N yn − N y$n = − ∑ ai yn −i


i =1
Le filtre de prédiction est donc un filtre AR (AutoRégressif) pur (≡ sans entrée).
Cela induit que, du fait de la stationnarité du modèle adopté (AR), la prédiction ne sera fiable que si le signal à prédire est relativement stationnaire.


On peut définir l’erreur de prédiction : en = yn − yˆ n soit en = yn + a1 yn−1 + a2 yn−2 + L + a N yn− N
N N
d’où : en = ∑ ai yn−i (avec a0 = 1 ) ⎯⎯→
TZ
E ( z ) = ∑ ai z −iY ( z )
i =0 i =0
N N
E ( z)
c’est l’équation du filtre « erreur de prédiction » : = ∑ ai z −i = 1 + ∑ ai z −i :
Y ( z ) i =0 i =1
N
yn 1 + ∑ ai z −i en
i =1

1
il s’agit d’un filtre (MA) inverse (au sens de FT inverse) du filtre AR de FT : N
.
1 + ∑ ai z −i

i =1

Posant le problème de prédiction en termes stochastiques (vu le nombre important de paramètres en jeu) , le filtre « erreur de
N N
prédiction » précédent : en = ∑ ai yn−i s’écrit : En = ∑ aiYn−i où les signaux En et Yn sont aléatoires, et on se
i =0 i =0

propose de calculer, pour ce filtre, les paramètres ai qui minimisent la puissance (≈ la variance) de En .

Rappel : . Puissance de X n : [ ]
PX = E X n2 ≈ . Variance de X n : [ ]
V X = E X n2 − E 2 X n [ ]
Puissance PE de En : PE = E En2 = ? [ ]
[ ] ⎡N ⎤
[ ]
N N
[ ]
N N N
EE 2
n = E ⎢∑ aiYn−i ⋅ ∑ a jYn− j ⎥ = ∑∑ ai a j E Yn−iYn− j → E En2 = ∑∑ ai a jϕ yy j −i
⎣ i =0 j =0 ⎦ i =0 j =0 i = 0 j =0

où ϕ yy k
est la fonction (vecteur) d’autocovariance (≡ d’autocorrélation dans le cas stationnaire) du signal y .

6. 1
Traitement du Signal 6. Prédiction

Puissance minimale: (on peut en calculant la dérivée 2nde de PE s’assurer que l’annulation de la dérivée 1ère de PE conduit bien à un minimum de PE )

⎡ ⎤
[ ]
∂E En2
=
∂ ⎢ 2 N N
anϕ yy0 + 2an ∑ amϕ yy n − m + termes ne contenant pas an ⎥ = 2anϕ yy0 + 2 ∑ amϕ yy n − m = 0
∂an ∂an ⎢ m =0
⎥ m=0
⎣⎢ m≠n ⎦⎥ m≠ n

soit (condition d’optimalité) :


N
⎛ n = 0,L , N ⎞ N a0ϕ yyn ⎛ n = 0,L , N ⎞
anϕ yy0 + ∑ amϕ yyn−m = 0 ⎜ ⎟ ↔ anϕ yy0 + ∑ amϕ yyn−m + =0 ⎜ ⎟
m= 0 ⎝ a0 = 1 ⎠ m =1 n ≠ 0 ⎝ a0 = 1 ⎠
m≠ n m≠ n

N a0ϕ yyn ⎛ n = 0,L , N ⎞ N


⎛ n = 1,L , N ⎞
↔ ∑ amϕ yyn−m +
m =1 n ≠ 0
=0 ⎜
⎝ a0 = 1


↔ ∑a ϕ
m =1
m yyn −m = −ϕ yyn ⎜
⎝ a0 = 1


N
⎛ n = 1, L , N ⎞
ou encore : ∑a m ϕ yy =0 ⎜⎜ ⎟⎟
⎝ a0 = 1
n−m
m =0 ⎠
N N N N N
Du fait que ϕ yy k
est paire, on a : [ ]
E En2 = ∑ ∑ ai a jϕ yy j −i = ∑ ∑ ai a jϕ yy j−i + a0 ∑ aiϕ yyi
i =0 j =0 i = 0 j =1 i =0
(a0 = 1)
N N N

[ ]
→ E En =
2
∑ a j ∑ aiϕ yy j−i + a0 ∑ aiϕ yyi
j =1 i =0 i =0
(a0 = 1)

[ ]
N N ∆
En utilisant: ∑a m ϕ yy n−m
=0 ⎛ n = 1, L , N ⎞ dans la relation précédente, il vient:
⎜⎜ ⎟⎟
E En2 min
= ∑ aiϕ yyi = V (a0 = 1)
m =0 ⎝ a0 = 1 ⎠ i =0

N
[ ]
N ∆
On a donc : ∑a m ϕ yy n−m
=0 ⎛ n = 1, L , N ⎞
⎜⎜ ⎟⎟ et E En2 min
= ∑ aiϕ yyi = V (a0 = 1) .
m =0 ⎝ a0 = 1 ⎠ i =0

Ces équations peuvent s’écrire :


N
ϕ yy 0 + ∑ aiϕ yy i = V
i =1
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N ⎧V si k = 0
i =1
↔ pour 0 ≤ k ≤ N : ∑ϕ yy k − n an = ⎨
0 1 ≤ k ≤ N
( a0 = 1 ) ( ϕ yy paire)
k
n =0 ⎩ si
L
N
ϕ yy N + ∑ aiϕ yy N −i = 0
i =1

soit, sous forme matricielle : ce sont les équations de Yule-Walker :


⎡ ϕ yy 0 ϕ yy 1 L ϕ yy N ⎤ ⎡ 1 ⎤ ⎡V ⎤
⎢ϕ ϕ yy 0 L ϕ yy N −1 ⎥⎥ ⎢ a1 ⎥ ⎢ 0 ⎥
⎢ yy 1 ⎢ ⎥=⎢ ⎥ ou encore : Ra =v
⎢ M M M M ⎥⎢ M ⎥ ⎢M⎥
⎢ ⎥⎢ ⎥
⎣⎢ϕ yy N ϕ yy N −1 L ϕ yy 0 ⎦⎥ ⎣a N ⎦ ⎢⎣ 0 ⎥⎦

La matrice d’autocorrélation R de terme général ri , j ne dépendant que de i − j ( ϕ yy k paire) est dite matrice de Toeplitz.
Ainsi, à partir de la connaissance de la séquence d’autocorrélation de {Yn }, la relation matricielle permet de déterminer
les N + 1 inconnues : V et les paramètres ai du filtre prédicteur.
Pour résoudre le système de Yule-Walker, une inversion matricielle est possible mais on utilise généralement
l’algorithme efficace itératif de Levinson, ou la méthode de Burg, qui évitent une inversion matricielle.
(La méthode de Burg, introduisant la contrainte supplémentaire de stabilité du filtre de prédiction au système de Yule-Walker, garantit ainsi un filtre
AR de prédiction stable).

6. 2
Traitement du Signal 6. Prédiction

Remarque :
D’un point de vue algorithmique, les 2 problèmes de filtre prédicteur et de synthèse AR par filtre formeur sont
équivalents. On montre d’ailleurs que, pour N suffisamment grand, {E n } est un bruit blanc.

Application

ƒ Compression de signal par codage LPC

On considère un signal que l’on souhaite compresser par codage LPC.

Le principe du codage LPC consiste à modéliser un signal x comme sortie d’un filtre AR d’ordre N (modèle
tout pôle, sans entrée, tournant sur ses seules conditions initiales) :
N
xn = ∑ − ak xn−k a k : N coefficients du filtre AR
k =1

La minimisation de l’erreur (dite erreur de prédiction) entre le signal original et le signal issu du filtre AR
conduit à la détermination des coefficients a1 , a 2 ... a N du filtre AR.

Cette détermination met en oeuvre un système d’équations linéaires (système de Yule-Walker), dont la
résolution peut se faire de plusieurs façons :
- directement (méthode itérative de Yule-Walker)
- par la méthode itérative de Burg
où s est une fenêtre glissante (sans recouvrement) sur le signal original x à compresser, et N l’ordre désiré
pour le filtre AR ( 1 < N < M , avec M = length ( s ) )
(l’avantage de la méthode de Burg est de garantir un filtre AR stable).

Ainsi, pour une fenêtre s donnée (de M points), après avoir déterminé les N coefficients a k du filtre AR
prédicteur, on peut reconstruire une approximation ŝ de s par l’équation :
N
n = N L M −1 : sˆn = ∑ − a k sˆn − k avec l’initialisation : sˆn = s n pour n = 0 L N − 1
k =1

Taux de compression
Pour compresser une fenêtre de M points, on a besoin de N coefficients a k et de N points d’initialisation.
Le taux de compression peut donc être décrit par l’évaluation du rapport : 2 N / M .

Taux de distorsion
L’évaluation du taux de distorsion entre le signal décompressé (ou encore prédit) x̂ et le signal original x peut se
décrire par l’évaluation du rapport Signal sur Bruit global sur tout le signal x (SNROV) (Signal to Noise Ratio OVerall)
⎛ length ( x ) −12 ⎞ ⎛ length ( x ) −1

⎜ ∑ xn ⎟ ⎜ ∑ xn2 ⎟
SNROV = 10 log ⎜ length
n =0 ⎟ = 10 log ⎜ n=0 ⎟ avec bn = xn − xˆn ( SNROV en dB)
⎜ ( x ) −1 ⎟ ⎜ length ( x ) −1
2 ⎟
⎜ ∑ bn ⎟
2
⎜ ∑ xn − xˆn ( ) ⎟
⎝ n =0 ⎠ ⎝ n =0 ⎠

ƒ Caractérisation : Analyse spectrale par codage LPC [Voir Chapitre Caractérisation]

__________

6. 3
Traitement du Signal TP 6. Prédiction

TP 6. Prédiction
1. Prédiction (sur signal très stationnaire)
Signal à prédire : K := 30 n := 0 , 1 .. K − 1 y := sin⎛⎜
n⎞
Ordre du filtre AR (taille du passé pour la prédiction) : N :=
n ⎝ 5⎠
2
Centrer le signal avant prédiction et le décentrer après
m := moy( y ) y := y − m yn 0
Prédiction à 1 pas :
Coefficients a du filtre AR de LPC : 2
0 10 20 30 40
n
φ := a := a=

⎛ 0.01 ⎞ ⎛ 1
ou : a := YuleW( y , N) a = ⎜ −1.722 ou encore (fonction intégrée Mathcad) : a := yulew( y , N) a = ⎜ −1.722
⎜ ⎜
⎝ 0.766 ⎠ ⎝ 0.766

Filtre AR de LPC : y := n := 0 , 1 .. K y := y + m
K

yn

− 0.996

0 n 40
Fonction Prédiction à 1 pas : Predict1pas(v,N)
y := predict1pas( y , N) n := 0 , 1 .. K

yn

− 0.996

0 n 40
Fonction Prédiction à Npas pas : PredictNpas(v,N,Npas) Npas := 10
y := predictNpas( y , N , Npas) n := 0 , 1 .. K − 1 + Npas

1
Conclusion :
yn

− 0.996

0 n 39

TP 6. 1
Traitement du Signal TP 6. Prédiction

2. Application (sur signal peu stationnaire) : Compression de signal par LPC : 2 méthodes : YuleWalker & Burg

Signal x original (L points) L := 100 n := 0 .. L − 1 x := cos⎜


⎛ 2⋅ π ⋅ n ⎞ + rnd( 2) − .2
n ⎝ 12 ⎠
5

xn 0

5
0 20 40 60 80 100
n
Fenêtrage s du signal original (M points) + Centrage M := 30 n := 0 .. M − 1 s := x m := moy( s) s := s −
n n
5

sn 0

5
0 5 10 15 20 25 30
n

N := trunc⎛⎜ − 5⎞
M
Ordre N du filtre AR de prediction N = 10
⎝2 ⎠
Coefficients a du filtre AR de prediction Yule-Walker a := yulew( s , N) Burg a2 := burg( s , N)
(2 méthodes Yule-Walker et Burg)

Signal S issu du filtre AR de prediction


Initialisation n := 0 .. N − 1 S := S2 :=
n n

Calcul n := N .. M − 1 S := S2 :=
n n

Comparaison entre le signal original s et le signal predit S n := 0 .. M − 1

1.145 1.145

sn sn

Sn S2n

− 1.043 − 1.043
0 n 29 0 n 29

TP 6. 2
Traitement du Signal TP 6. Prédiction

Rapport Signal/Bruit sur une fenêtre

SNROVdB := SNROV2dB :=

SNROVdB = SNROV2dB =

Taux de compression

Nombre d'échantillons de la fenêtre du signal original : M = 30


Nombre de points du signal compressé, prédit, pour une fenêtre : 2⋅ N = 20

Conclusions
. Methode de Yule-Walker :

. Methode de Burg :

__________

TP 6. 3
Traitement du Signal TP 6. Prédiction

Fonctions Bibliothèque :

Moyenne m, Vecteur r et Matrice d'Autocovariance r et Variance V du signal x de dim K (par ergodicité) :

. Moyenne : . Vecteur d'AutoCovariance : . Matrice d'AutoCovariance :


moy( x) ≡ K ← length( x) vautocov( x) ≡ K ← length( x) mautocov( x) ≡ K ← length( x)
K−1 m ← moy( x) r ← vautocov( x)

1
m← ⋅ x for k ∈ 0 .. K − 1 for i ∈ 0 .. K − 1
K n
n=0 K − k− 1 for j ∈ 0 .. K −
∑ ( n+k ) ( n )
1
m r ← ⋅ x −m⋅ x −m R ←r
k K i, j i− j
n=0
. Variance : R
r
Var( x) ≡ vautocov( x)
0

Fonction YuleWalker( φxx , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . φxx : vecteur fonction d'autocovariance (dim K) du signal x (dim K) : φxx0, φxx1 ... φxxK−1
. N : dim de l'ordre du filtre (formeur/LPC) AR

Paramètre de sortie : . le vecteur a (dim N+1) :


a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleWalker( φxx , N) ≡ for i ∈ 0 .. N Exemple : K := 3 r := 6


0
for j ∈ 0 .. N
N := 2 r := 3
1
R ← φxx i− j
i, j
r := 0
b ←0 2
0
for i ∈ 1 .. N
a := YuleWalker( r , N)
b ← φxxi
i
V := a V= 4
α ← ⎛⎜
−1 ⎞ − 1 0
⋅R ⋅b i := 1 .. N
⎝ φxx0 ⎠ ⎛ 4 ⎞
a = ⎜ −0.667
a =
φxx0 i
a ← ⎜
0 φxx0⋅ α 0 + 1 ⎝ 0.333 ⎠ -0.667
0.333
for i ∈ 1 .. N
a ← a ⋅αi
i 0
a

TP 6. 4
Traitement du Signal TP 6. Prédiction

Fonction YuleW( x , N) : Résolution du système de Yule-Walker Ra = v par inversion matricielle

Paramètres d'entrée : . x : signal x (dim K) : x , x ... x


0 1 K− 1
. N : dim de l'ordre du filtre (formeur/LPC) AR
Paramètre de sortie : . le vecteur a (dim N+1) :
a =V: variance (du bruit blanc si filtre formeur) ; a , a , ... a : paramètres du filtre (formeur/LPC) AR d'ordre N
0 1 2 N

YuleW( x , N) ≡ r ← vautocov( x)
a ← YuleWalker( r , N)
a

Bruit blanc de K points de moyenne m et de variance V :

Bruit blanc de K points centré de variance 0.083 : WhiteNoise( K) ≡ A ← 281


P ← 31357
v ← 100
0
for n ∈ 1 .. N − 1
v ← mod A⋅ v
n ( n− 1 )
,P

for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w

Bruit blanc de K points de moyenne m et de variance V : BruitBlanc( K , m , V) ≡ 12⋅ V⋅ whiten( K) + m

BruitBlanc2( K , m , V) ≡ 12⋅ V⋅ WhiteNoise( K) + m

Réponse reponse (vecteur dim. K) du filtre AR d'ordre N (coeffs a 0 ≤ i ≤ N) au signal x (vecteur dim. K)
i

reponse( x , a , N) ≡ K ← length( x)
for k ∈ 0 .. K − 1
y ←x if k = 0
k k
k
y ←x −
k k ∑ a ⋅y
i k− i
if 1 ≤ k < N
i= 0
N
y ←x −
k k ∑ a ⋅y
i k− i
if k ≥ N
i= 0
y

TP 6. 5
Traitement du Signal TP 6. Prédiction

TFD
TFD( x) ≡ M ← length( x) ou encore : TFD2( x) ≡ M ← length( x)
for k ∈ 0 .. M − 1 for k ∈ 0 .. M − 1
n R←0
M−1 − i⋅ 2⋅ π ⋅ k⋅


X ←
1
⋅ x ⋅e
M I←0
k M n
for n ∈ 0 .. M − 1
n= 0
R ← R + x ⋅ cos⎛⎜ 2⋅ π ⋅ k⋅ ⎞n
X
n ⎝ M⎠

I ← I − x ⋅ sin⎛⎜ 2⋅ π ⋅ k⋅ ⎞
n
n ⎝ M ⎠
1
X ← ⋅ ( R + i⋅ I)
k M
return X

TFDI
TFDI( X) ≡ M ← length( X)
for n ∈ 0 .. M − 1
n
M− 1 i⋅ 2⋅ π ⋅ k⋅


M
x ← X ⋅e
n k
k=0
x

Convolution causale (signaux de même longueur) Convolution causale (signaux de longueur différente)
convcausal2( x , h) ≡ M ← length( x) convcausal( x , h) ≡ M ← length( x)
for n ∈ 0 .. M − 1 N ← length( h)
n for n ∈ 0 .. M − 1
y ←
n ∑ x ⋅h
k n− k n
k= 0 y ←
n ∑ x ⋅h
k n− k
if n < N
y k= 0
y ← 0 otherwise
n
y

TP 6. 6
Traitement du Signal TP 6. Prédiction

Transformée de Hilbert
Hilbert( x) ≡ M ← length( x)
f ←0
0
for n ∈ 1 .. M − 1
1
f ←
n π⋅n
TH ← convcausal( x , f )
TH

Vecteur r de covariance des signaux x et y de dim K (par ergodicité) :


. Vecteur de Covariance :
vcov( y , x) ≡ K ← length( x) vcovtermegeneral( x , y ) ≡ K ← length( x)
for k ∈ 0 .. K − 1 mx ← moy( x)
K− 1 my ← moy( y )

1
v ← ⋅ y ⋅x for k ∈ 0 .. K − 1
k K k n
n= 0 K − k− 1

∑ (xn+k − mx)⋅(yn − my)


1
v r ← ⋅
k K− k
n=0
r

Vecteur et Matrice nuls :


VecteurNul( N) ≡ for k ∈ 0 .. N − 1 MatriceNul( Nlignes , Ncols) ≡ for l ∈ 0 .. Nlignes − 1
Nul ← 0 for c ∈ 0 .. Ncols − 1
k
Nul ←0
Nul l, c
Nul
Prédiction à 1 pas
predict1pas( v , N) ≡
Prédiction à Npas pas
predictNpas( v , N , Npas) ≡

__________

TP 6. 7
Traitement du Signal 7. Filtrage optimal

7. Filtrage optimal

Filtrage optimal (Filtrage sous contrainte)

Il existe 3 grandes méthodes de filtrage optimal, c’est-à-dire de filtrage sous contrainte d’un signal altéré par un bruit :

. le filtrage par moindres carrés


Il consiste en une minimisation de l’énergie de l’erreur entre le signal mesuré et l’estimation (par un modèle) du signal
non bruité. Le modèle adopté pour le signal non altéré est un modèle linéaire et assez général. Il y a lissage du bruit
plus que sa réjection. Le filtrage des moindres carrés se place d’un point de vue déterministe. Il y a contrainte de
stationnarité.

. le filtrage de Wiener
Il s’appuie sur la méthode des moindres carrés : le filtrage de Wiener est l’analogue en stochastique du filtrage des
moindres carrés qui lui, se place dans un contexte déterministe. Il y a contrainte de stationnarité.

. le filtrage de Kalman
Il consiste en la poursuite d’un modèle d’Etat (modèle de Gauss-Markov) nécessaire et relativement précis du signal
non bruité. Il n’y a pas de contrainte de stationnarité. Si le modèle est correct, il y a véritable réjection du bruit et non
pas un lissage. Si le modèle n’est pas réaliste, les résultats peuvent être très mauvais.

I. MOINDRES CARRES
Moindres carrés direct Algorithme LS (Least Squares)

Un système linéaire de n équations à n inconnues : Xh = y


où :
X désigne une matrice carrée de dimension nxn
h désigne un vecteur de dimension n x 1 inconnu
y désigne un vecteur de dimension n x1
possède une solution unique : h = X −1 y
si et seulement si X est inversible (≡ non singulière) c’est-à-dire det (X ) ≠ 0 (≡ matrice régulière).

Errreur (ou écart) : ε = y − X h (écart entre la solution vraie et la solution estimée, calculée) : ε =0

= (y − X h ) (y − X h )
Τ
Notons que dans ce cas, l’écart quadratique, défini par : ε 2

(plus généralement : ε 2 = (y − X h )Η (y − X h ) dans le cas complexe, où l’indice Η signifie la transposition-conjuguaison)

est juste égal à 0 : ε 2 =0

(Si la matrice X n’est pas carrée, on définit sa pseudo-inverse X en minimisant un critère quadratique (moindres carrés)).

L’utilisation d’approximations linéaires fait que, en traitement du signal, de nombreux signaux peuvent se modéliser
sous la forme X h où :
X désigne une matrice connue
et h désigne un vecteur inconnu.

7. 1
Traitement du Signal 7. Filtrage optimal

Exemple : Filtre RIF de RI h inconnue.


Dans ce cas : X est une matrice obtenue à partir de valeurs de l’entrée,
et le produit X h représente le signal de sortie (le produit scalaire de vecteurs réalise la convolution).
En l’absence de bruit, l’observation de n valeurs du signal de sortie suffit donc à estimer h :
h = X −1 y (déconvolution)

En pratique, il n’en est jamais ainsi et on se donne plus d’observations ( k ) que d’inconnues ( n ) (du fait de la
présence d’un bruit de mesure) : il y a alors une « infinité de solutions non exactes » et la méthode des moindres carrés
fournit alors le vecteur à estimer (de dimension n ) optimal au sens quadratique à partir des k observations.

En notant y le vecteur d’observation et en supposant le bruit w additif, on a : y = Xh + w


On montre en statistique, que l’estimateur de h , construit à partir des observations y et de la matrice X , est d’autant
meilleur que le nombre k de points observations est grand, par conséquent : k≥n
alors la matrice X est de dimension k x n
et les vecteurs h de dimension n x 1
y de dimension k x 1

On a donc plus d’équations k que d’inconnues n : on dit que le système est surdéterminé.

La conséquence est qu’il n’existe pas en général de vecteur h tel que X h soit parfaitement égal à l’observation y .

Une autre façon de le dire est que le vecteur y , de dimension k x 1 , n’appartient pas au sous-espace vectoriel engendré
par les n vecteurs-colonnes de X . Ce sous-espace appelé image de X sera noté Img( X) .

Le problème est de trouver un vecteur h , de dimension n x 1 , tel que l’élément X h (qui appartient évidemment à
Img( X) ) soit le plus proche possible de y , ce qui se traduit ici par la minimisation de l’erreur quadratique
(minimisation de l’énergie de l’erreur ε ):
ε = J (h ) = (y − X h ) (y − X h )
2 Τ
(plus généralement : ε 2 = (y − X h )Η (y − X h ) )

La solution est donnée par le théorème de projection (principe d’orthogonalité), qui dit que le vecteur h est tel que
l’écart : ε = y − X h est orthogonal à Img( X) et donc en particulier aux n vecteurs-colonnes de la matrice X :

= (y − X h ) (y − X h )
Τ
▪ ε 2

∂ε 2
▪ Minimisation de l’énergie de l’erreur ε → Détermination de h tel que =0
∂h
(pour effectivement vérifier que l’on a un minimum de ε 2
et non un maximum, il suffit de regarder le signe des dérivées secondes : ∂2 ε 2
> 0)
∂ h2
∂ε 2
▪ = −2 X Τ ⋅ (y − X h ) = 0 (produit scalaire nul) → X ⋅ (y − X h ) = 0 →
Τ
{ε = (y − X h)} ⊥ XΤ
∂h
(l’erreur ε Τ
est orthogonale à l’observation X (et comme X h colinéaire à X →
Τ
ε ⊥ Xh ) :
y
ε = Xh − y

Xh

Img( X)
Théorème de projection

7. 2
Traitement du Signal 7. Filtrage optimal

En exprimant cette condition d’orthogonalité, on obtient :


X Τ (y − X h ) = 0 (plus généralement : X Η (y − X h ) = 0 )

soit : XΤy = XΤ X h (plus généralement : XΗ y = XΗ X h )

Τ
Si la matrice X est de rang plein (≡ les n vecteurs-colonnes de X sont indépendants), la matrice X X (plus généralement : X Η X )
de dimension nxn , est inversible et la solution cherchée est l’estimateur des moindres carrés (Gauss) :

h = (XΤ X ) X Τ y
−1
(plus généralement : (
h = XΗ X )
−1
XΗ y )

A l’origine, l’estimateur des moindres carrés n’est pas à proprement parler de nature probabiliste.

Le filtrage des moindres carrés est l’analogue en déterministe du filtrage de Wiener qui lui, se place dans un contexte
stochastique.

De plus, on montre que, sous l’hypothèse que le bruit w est blanc, l’estimateur des moindres carrés de h est linéaire,
sans biais et de variance minimale (estimateur optimal).

Enfin, la méthode des moindres carrés s’étend sans difficulté à un modèle d’observation non linéaire. Il suffit de remplacer
dans le problème précédent X h par l’expression supposée de forme connue X(h ) dépendant de façon non linéaire du
paramètre h à estimer. Malheureusement, il n’est alors plus possible de donner une expression analytique de l’argument
[ ]Τ [ ]
du minimum de la fonction de coût J (h ) = y − X(h ) y − X(h ) (plus généralement J (h ) = [y − X(h )] Η [y − X(h )])
et on se contente d’algorithmes classiques de minimisation numérique. Ces algorithmes souffrent en général de
l’existence de minima locaux et posent le problème de la vitesse de convergence. En outre, ces minima ne possèdent
pas le caractère optimal précédent.

Moindres carrés récursif Algorithme RLS (Recursive Least Squares)

h = (XΤ X ) X Τ y
−1
La relation des moindres carrés direct : fait que le calcul de h nécessite la manipulation
d’une matrice X de dimension kxn .

Si cette matrice est construite à partir d’un flux continu de données et que l’on veut effectuer le calcul en temps réel, le fait
h = (XΤ X ) X Τ y .
−1
que la taille de X croît de façon illimitée rend impossible un calcul direct à partir de la relation

Heureusement, l’algorithme des moindres carrés récursif fournit une solution pouvant être implémentée en temps réel et
qui présente en outre l’avantage de ne pas recourir à une inversion matricielle. Il fonctionne par mise à jour de la valeur
h au fur et à mesure que les données arrivent.

Indexons par i les valeurs obtenues à l’étape i : h i = Pi X i y i


Τ
avec : (
Pi = X iΤ X i )
−1

⎡X i ⎤
x iΤ+1 désigne la (i + 1)
ième
En notant : X i +1 = ⎢ Τ ⎥ où : ligne de la matrice X i +1
⎣x i +1 ⎦
⎡ Xi ⎤
on déduit : [
XiΤ+1Xi +1 = XiΤ ]
xi +1 ⎢ Τ ⎥ = XiΤ Xi + xi +1xiΤ+1
⎢⎣xi +1 ⎥⎦
et donc : (
Pi +1 = Pi−1 + x iΤ+1x i +1 )
−1

7. 3
Traitement du Signal 7. Filtrage optimal

R −1 u u Τ R −1
En appliquant à Pi +1 l’identité suivante pour une matrice R et un vecteur u : (R + u u ) Τ −1
= R −1 −
1 + u R −1 u Τ
Pi x i +1 x iΤ+1 Pi
on a : Pi +1 = Pi −
1 + x iΤ+1 Pi x i +1
⎡y i ⎤
En reportant dans l’expression de h i +1 donnée par : h i +1 = Pi +1 X iΤ [ ] (
x i +1 ⎢ ⎥ = Pi +1 X iΤ y i + x i +1 yi +1 )
⎣⎢ yi +1 ⎦⎥
(
il vient finalement : h i +1 = h i + K i yi +1 − xi +1hi
Τ
) avec : Ki =
Pi x i +1
1 + x iΤ+1Pi x i +1
(vecteur dim. nx1 )

Dans cette expression, le terme yi +1 − x i +1h i apparaît comme l’erreur entre la valeur observée yi +1 et la valeur
x i +1h i que l’on aurait dû observer si h i était exacte.

L’algorithme des moindres carrés récursifs s’écrit donc :

I (n+1)x (n+1)
. Valeurs initiales : i = 1 Pi = avec I (n +1)x (n+1) : matrice identité dim. (n + 1)x (n + 1)
δ
et δ << 1 (δ > 0 ) ( δ coefficient réel)
hi = 0
Pi x i +1
. Pour i = 1,L, k − 1 Répéter : K i = avec x iΤ = [xi + n xi + n−1 L xi ]
1 + x iΤ+1Pi x i +1
(
hi +1 = hi + K i yi +1 − xiΤ+1hi )
Τ
Pi x i +1 x Pi
Pi +1 = Pi − i +1
1 + x iΤ+1 Pi x i +1

A condition d’avoir k grand, il est inutile de partir des Conditions Initiales exactes faisant intervenir le calcul de P1 et
h1 à partir de la relation : h i = Pi X iΤ y i .

Moindres carrés moyens Algorithme LMS (Least Mean Squares)


L’algorithme des Moindres carrés moyens (algorithme LMS), encore appelé gradient stochastique, n’est autre que la
version récursive du filtre de Wiener (voir § Filtrage de Wiener).

Identification par la méthode des moindres carrés

ƒ Cas monovariable ( n = 1 )

Soient k observations y i , i ∈ [1L k ] , d’un signal dépendant linéairement d’un paramètre a à estimer et de variable
connue xi (exemple le temps : xi = instants de prises de mesures, pour un signal yi fonction du temps) : y = Xa
L’estimé de a au sens d’un critère d’écart quadratique (≡ moindres carrés) est donné par â .
. Si nombre d’observations k < nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution impossible à déterminer
. Si nombre d’observations k = nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution exacte : pas de moindres carrés à appliquer
. Si nombre d’observations k >= nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution minimisant l’erreur quadratique = Moindres
carrés.

â peut être déterminé directement (moindres carrés direct LS) ou récursivement (moindres carrés récursif RLS) :

7. 4
Traitement du Signal 7. Filtrage optimal

Calcul direct - Moindres Carrés Direct - Algorithme LS (Least Squares)


⎡ x1 ⎤
⎢x ⎥
k X = ⎢ 2 ⎥ vecteur : (k ,1) : variable
⎢ ... ⎥
∑x y XΤ ⋅ y ⎢ ⎥
[ ]
i i
−1 ⎣xk ⎦
aˆ = i =1
= Τ
= XΤ ⋅ X ⋅ XΤ ⋅ y avec :
k
X ⋅X aˆ = scalaire : (1,1) : 1 paramètre à estimer
∑x
i =1
2
i
X Τ = [x1 x2 ... x k ] vecteur : (1, k )
⎡ y1 ⎤
⎢y ⎥
y = ⎢ 2⎥ vecteur : (k ,1) : k observations
⎢ ... ⎥
⎢ ⎥
⎣ yk ⎦
y = Xa
Le calcul direct, dans le cas multivariable, va impliquer une inversion de matrice.
Calcul récursif Temps Réel - Moindres Carrés Récursif - Algorithme RLS (Recursive Least Squares)

On itère sur les k observations i ∈ [1L k ] :

Pour i =1à k :
Pi −1 ⋅ xi
Ki = aˆ i , K i , Pi " scalaires" : (1,1)
1 + Pi −1 ⋅ xi2
1 1 K k = Pk ⋅ x k
Pi = Pi −1 − K i ⋅ Pi −1 ⋅ xi avec : Pk = = →
k
X ⋅XΤ
aˆ k = aˆ k −1 + Pk ⋅ x k ⋅ [ y k − aˆ k −1 x k ]
aˆ i = aˆ i −1 + K i ⋅ [ y i − aˆ i −1 xi ] ∑x i =1
2
i

On peut implémenter la récurrence sans les indices car il n’est pas nécessaire de mémoriser les résultats intermédiaires :

Pour i =1à k :
P ⋅ xi
K=
1 + P ⋅ xi2
P = P − K ⋅ P ⋅ xi avec : aˆ , K , P scalaires : (1,1)
aˆ = aˆ + K ⋅ [ y i − aˆxi ]
Un calcul récursif nécessite d’être initialisé. On peut initialiser principalement de 2 façons :

Initialisation
1) On initialise à partir de la mesure d’indice i = m :
On effectue un calcul direct à partir des m premières observations, et ensuite on récure à partir de m + 1 jusqu’à k :
⎡ x1 ⎤
⎢x ⎥
1 1
avec X = ⎢ ⎥ et m < k
2
Pm = =
m
X ⋅XΤ
⎢M ⎥
∑x 2
i ⎢ ⎥
Calcul direct : aˆ = aˆ m = Pm ⋅ Q avec : i =1 ⎣xm ⎦ Q scalaire : (1,1)
⎡ y1 ⎤
m ⎢y ⎥
Q = ∑ xi y i = X Τ ⋅ y avec y = ⎢ 2 ⎥ et m < k
i =1 ⎢M ⎥
⎢ ⎥
⎣ym ⎦
ou :

7. 5
Traitement du Signal 7. Filtrage optimal

2) On initialise à partir de la mesure d’indice i = m = 0 :


On choisit une valeur de Pm suffisamment grande → à partir d’un certain nombre d’observations, l’estimation est
indépendante de la Condition Initiale â m que l’on peut choisir arbitrairement (en particulier aˆ m = 0 ).
( Pm est une mesure de l’erreur de l’estimation effectuée avec les m 1ères observations).
(Une valeur faible de Pi indique que aˆ i −1 converge vers âi ).

Avec cette initialisation, il faut suffisamment d’observations pour pouvoir converger avec précision vers la solution
exacte â k fournie par le calcul direct.

Le calcul récursif, par nature, implique une propagation d’erreur de troncature.

ƒ Cas multivariable

Soient k observations y i , i ∈ [1L k ] , d’un signal dépendant linéairement de n paramètres a à estimer, avec
k ≥ n (système surdéterminé) ( a Τ = [a1 a2 ... an ] ) et de variables connues x i :
y = X a avec X = x iΤ [ ] ∀i ∈ [1L k ] .
L’estimé de a au sens d’un critère d’écart quadratique (≡ moindres carrés) est donné par â .
. Si nombre d’observations k < nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution impossible à déterminer
. Si nombre d’observations k = nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution exacte : pas de moindres carrés à appliquer
. Si nombre d’observations k >= nombre n (n=1 si cas monovariable) de paramètres à estimer → Solution minimisant l’ereur quadratique = Moindres
carrés.

â peut être déterminé directement (moindres carrés direct) ou récursivement (moindres carrés récursif) :
Calcul direct - Moindres Carrés Direct - Algorithme LS (Least Squares)

x iΤ = [x1 x2 ... x n ] vecteur : (1, n) : variables (i = une valeur dans l' intervalle [1, k ])
⎡ x11 x12 L x1n ⎤
⎢ M M L M ⎥⎥

[ ]
X = ⎢ x i1 x i 2 L x in ⎥ = x iΤ ∀i ∈ [1, k ] matrice : (k , n) : variables
[
aˆ = X Τ ⋅ X ] −1
⋅ XΤ ⋅ y avec : ⎢
⎢ M M L M ⎥

⎢⎣ x k1 x k 2 L x kn ⎥⎦
aˆ Τ = [aˆ1 aˆ 2 ... aˆ n ] aˆ : vecteur : (n,1) : n paramètres à estimer
y Τ = [ y1 y2 ... y k ] y : vecteur : (k ,1) : k observations
y = Xa

Le calcul direct, dans le cas multivariable, implique une inversion de matrice.

Calcul récursif Temps Réel - Moindres Carrés Récursif - Algorithme RLS (Recursive Least Squares)

On itère sur les k observations i ∈ [1L k ] :


Pour i =1à k :
(1 + x )
( )
Τ
−1 ⋅ Pi −1 ⋅ x i : (1,1) scalaire (pas d' inversion de matrice)
K i = Pi −1 ⋅ x i ⋅ 1 + x iΤ ⋅ Pi −1 ⋅ x i i

Pi : (n, n)
Pi = Pi −1 − K i ⋅ x iΤ ⋅ Pi −1 avec : x i : ( n,1) x iΤ = [x1 x2 ... x n ] : n variables
[ Τ
aˆ i = aˆ i −1 + K i ⋅ y i − x ⋅ aˆ i −1
i ] K i : ( n,1)
y i : (1,1) " scalaire" : k observations 1≤ i ≤ k k : nombre d' observations
aˆ i : (n,1) aˆ = [aˆ1
Τ
i aˆ 2 ... aˆ n ] " vecteur (n,1)": n paramètres à estimer

7. 6
Traitement du Signal 7. Filtrage optimal

On peut implémenter la récurrence sans les indices car il n’est pas nécessaire de mémoriser les résultats intermédiaires :
Pour i =1à k :
(
K = P ⋅ x i ⋅ 1 + x iΤ ⋅ P ⋅ x i )
−1

P = P − K ⋅ x iΤ ⋅ P
[
aˆ = aˆ + K ⋅ y i − x iΤ ⋅ aˆ ]
Un calcul récursif nécessite d’être initialisé. On peut initialiser principalement de 2 façons :

Initialisation
1) On initialise à partir de la mesure d’indice i = m :
On effectue un calcul direct à partir des m premières observations :
on obtient â m (n,1), Pm (n,n) et Q (n,1), et ensuite on récure à partir de m + 1 jusqu’à k :

⎡ x11 x12 L x1n ⎤


⎢ M M L M ⎥⎥

[
Pm = X Τ ⋅ X ]
−1
avec X = ⎢ xi1 xi 2 L xin ⎥
Calcul direct : aˆ = aˆ m = Pm ⋅ Q avec : ⎢ ⎥
⎢ M M L M ⎥
⎢⎣ x m1 xm 2 L x mn ⎥⎦
Q = XΤ ⋅ y avec y Τ = [ y1 y2 ... y m ]
ou :
2) On initialise à partir de la mesure d’indice i = m = 0 :
On choisit la matrice Pm avec des valeurs grandes sur la diagonale et 0 sinon ( Pm prise diagonale).
A partir d’un certain nombre d’observations, l’estimation est indépendante de la Condition Initiale â m que l’on peut
choisir arbitrairement (en particulier aˆ m = 0 ).
( Pm est une mesure de l’erreur de l’estimation effectuée avec les m 1ères observations).
(Une valeur faible de Pi indique que aˆ i −1 converge vers â i ).

Avec cette initialisation, il faut suffisamment d’observations pour pouvoir converger avec précision vers la solution
exacte â k fournie par le calcul direct.

Le calcul récursif, par nature, implique une propagation d’erreur de troncature.

Application : Identification de processus


L’identification par la méthode des moindres carrés permet d’identifier les échantillons de sortie y (i ) du système
considéré, comme issus d’un processus ARMA (modèle général).
L’intérêt est évidemment de pouvoir ainsi disposer de la FT du processus considéré.
(s’il n’y a pas d’entrée u (i ) (ou si elle est non ou mal connue), on se limite à un modèle AR purement récursif) :
Sortie y (i )
Processus réel
+
Entrée u (i ) Erreur ε (i )
Modèle G (z ) -

Prédiction yˆ (i )

b0 + b1 z + b2 z −2 + L + b p z − p
−1

Modèle : Processus ARMA : G( z) = .


1 + a1 z −1 + a 2 z − 2 + L + a q z − q

7. 7
Traitement du Signal 7. Filtrage optimal

Les paramètres à estimer sont : a1 , a 2 , L , a q , b0 , b1 , L, b p ( n = p + q + 1 paramètres à estimer).


On suppose que la séquence d’entrée u (i ) appliquée excite tous les modes du processus.

- séquence d’entrée : u (0) , u (1) L u (k − 1) : k observations


- séquence observée : y (0) , y (1) L y (k − 1)
Les séquences d’entrée et de sortie sont observées sur i ∈ [0 L k − 1] . On va appliquer le critère quadratique de
moindres carrés pour minimiser l’énergie de l’erreur.

b0 + b1 z −1 + b2 z −2 + L + b p z − p Yˆ ( z ) −1
On a : G ( z ) = −1 −2 −q
= d’où, par TZ :
1 + a1 z + a 2 z + L + aq z U ( z)
yˆ (i ) = − a1 yˆ (i − 1) − a2 yˆ (i − 2) − L − aq yˆ (i − q) + b0u (i ) + b1u (i − 1) + L + bpu (i − p) (0)

yˆ (i ) est l’estimée de y (i ) , ou encore sa prédiction, son modèle calculé à partir des observations précédentes.

Pour calculer yˆ (i ) il faut bien démarrer la récurrence et utiliser les observations. L’équation (0) devient ainsi :
yˆ (i ) = − a1 y (i − 1) − a 2 y (i − 2) − L − a q y (i − q ) + b0 u (i ) + b1u (i − 1) + L + b p u (i − p)
et l’erreur ε (i) s’écrit :
ε (i ) = y (i ) − yˆ (i ) = y (i ) + a1 y (i − 1) + a 2 y (i − 2) + L + a q y (i − q ) − b0 u (i ) − b1u (i − 1) − L − b p u (i − p )
d’où on tire l’observation :
y (i ) = − a1 y (i − 1) − a 2 y (i − 2 ) − L − a q y (i − q ) + b0 u (i ) + b1u (i − 1) + L + b p u (i − p ) + ε (i )
(1)
Les séquences d’entrée et de sortie étant observées sur i ∈ [0 L k − 1] , on a le système d’équations :
⎧ y (0) = b0u (0) + ε (0)
⎪ y (1) = b u (1) + b u (0) − a y (0) + ε (1)
⎪ 0 1 1

⎪⎪ y (2) = b0u (2) + b1u (1) + b2u (0) − {a1 y (1) + a2 y (0)} + ε ( 2)

⎪ y (3) = b0u (3) + b1u (2) + b2u (1) + b3u (0) − {a1 y (2) + a2 y (1) + a3 y (0)} + ε (3)
⎪M

⎩⎪ y (k − 1) = b0u ( k − 1) + b1u ( k − 2) + L + bpu ( k − 1 − p) − {a1 y (k − 2) + a2 y (k − 3) + L + aq y (k − 1 − q )}+ ε ( k − 1)
D’où la relation matricielle :
⎡ b0 ⎤
⎢b ⎥
⎢ 1⎥
⎡ u ( 0) 0 L 0 M 0 L L 0 ⎤ ⎢M⎥
⎡ y ( 0) ⎤ ⎢
− y ( 0) ⎥ ⎢b ⎥ ⎡ ε (0) ⎤ (2)
⎢ y (1) ⎥ ⎢ u (1) u ( 0) 0 0 M 0 L 0 ⎥ ⎢ p ⎥ ⎢ ε (1) ⎥
⎢ ⎥ = ⎢ u ( 2) u (1) u ( 0) 0 M − y (1) − y ( 0) 0 0 ⎥ ⋅ ⎢L⎥ + ⎢ ⎥
⎢ M ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ M ⎥
⎢ ⎥ ⎢ M M M M M M M M ⎥ ⎢ a1 ⎥ ⎢ε (k − 1)⎥
⎣ y (k − 1)⎦ ⎢ ⎣ ⎦
⎣u ( k − 1) u ( k − 2) L u ( k − 1 − p ) M − y (k − 2) − y (k − 3) L − y (k − 1 − q)⎥⎦ ⎢a2 ⎥
⎢ ⎥
⎢M⎥
⎢a ⎥
⎣ q⎦
1444442444443 1444442444443
p +1 q
(kx1) (kxn) (nx1) (kx1)
soit :

7. 8
Traitement du Signal 7. Filtrage optimal

⎡ u ( 0) 0 L 0 M 0 L L 0 ⎤
⎢ u (1) u ( 0 ) 0 0 − y (0) 0 0 ⎥
y = X a + ε (3) avec ⎢ M L ⎥
X = ⎢ u ( 2) u (1) u ( 0) 0 M − y (1) − y ( 0) 0 0 ⎥
⎢ ⎥
⎢ M M M M M M M M M ⎥
⎢⎣u (k − 1) u (k − 2) L u (k − 1 − p ) M − y (k − 2) − y (k − 3) L − y (k − 1 − q )⎥⎦

1 k −1 2 1
Soit le critère quadratique : J= ∑
2 i =0
ε (i ) = ε Τ ⋅ ε
2
La solution qui minimise J conduit à la relation des moindres carrés : (calcul direct) : [
aˆ = X Τ ⋅ X ]
−1
⋅ XΤ ⋅ y

xi hi yi
Application : Identification d’un canal de communication

On modélise un canal de communication par un filtre RIF de RI : { h0 , h1 ,L, hn−1 }


Le problème de l’identification de ce canal est d’estimer la RI { hi } ( n inconnues)

La méthode la plus simple consiste à envoyer une séquence connue { xi } de k symboles ( i = 0,L, k − 1 ) ( k ≥ n ),
dite séquence d’apprentissage, et d’observer la sortie { yi } du canal.
En pratique, comme le canal n’est généralement pas stationnaire (il varie dans le temps), on est conduit à refaire
régulièrement cette opération en faisant précéder chaque trame de symboles par une séquence d’apprentissage.

L’observation en sortie du canal s’écrit : (la séquence d’apprentissage et la RI du filtre sont supposées causales)
n −1
yi = hi * xi + wi = ∑ h j xi − j + wi = h0 xi + h1 xi −1 + L + hn−1 xi − n+1 + wi
j =0

où : { wi } représente un bruit additif qui vient se superposer au signal transmis.

En écrivant la suite des k observations sous forme matricielle, pour i allant de n à n + k − 1 , on a :


⎡ xn −1 L x1 x0 ⎤
⎡ yn ⎤ ⎢ ⎡h0 ⎤ ⎡ wn ⎤
⎢M ⎥ = ⎢ xn L x2 x1 ⎥⎥ ⎢ ⎥ ⎢ ⎥
⎢ ⎥ ⎢ M ⎢ M ⎥+⎢M ⎥
M M M ⎥
⎢⎣ y n+ k −1 ⎥⎦ ⎢ ⎥ ⎢⎣hn−1 ⎥⎦ ⎢⎣ wn+ k −1 ⎥⎦
⎣ xn + k − 2 L xk xk −1 ⎦

Le vecteur h qui minimise l’écart quadratique ε 2 = J (h ) = (y − X h )Τ (y − X h ) est donné par :


h = (XΤ X ) X Τ y
−1
(moindres carrés direct)

On peut se demander s’il existe des séquences d’apprentissage meilleures que d’autres.

La réponse est oui.

Ainsi, si on considère que la séquence { xi } est une réalisation d’un processus aléatoire stationnaire ergodique, on peut
montrer que les performances sont optimales lorsque ce processus est blanc (ce résultat était prévisible, car il y a tout
dans un bruit blanc, ce dernier excite donc tous les modes, toutes les fréquences du canal).

On s’efforcera donc à émettre des séquences d’apprentissage qui ressemblent autant que possible à du bruit blanc.

7. 9
Traitement du Signal 7. Filtrage optimal

7 ANNEXE. Filtrage optimal


II. FILTRAGE DE WIENER

Considérons un système S dont l’entrée xn et la sortie y n sont 2 processus aléatoires, réels, centrés, stationnaires au
2nd ordre.
On suppose connues la fonction d’autocovariance R XX k de xn et la fonction de covariance E Yn+ k X n [ ]
(les signaux xn et yn sont une réalisation des VA X n et Yn ).
On suppose que y n et xn sont de covariance stationnaire, ce qui signifie que E Yn + k X n ne dépend que de k et peut[ ]
s’écrire RYX k .

On se propose de déterminer le filtre linéaire de RI Finie (MA) ( N points) : { hn } = { h0 , h1 ,L, hN −1} qui soit la
meilleure approximation du système S .

N −1
On pose : yˆ n = hn * xn = ∑ hk xn−k = h0 xn + h1 xn−1 + L + hN −1 xn− N +1
k =0

et : ε n = y n − yˆ n

On cherche la séquence { hn } qui minimise l’énergie (≡ moyenne statistique de la puissance) de l’erreur εn (critère

quadratique) : E [ε ]n
2

xn yn + εn
S
-
ŷn
hn

D’après le théorème de projection (vu plus haut, avec les moindres carrés), les coefficients qui minimisent l’écart quadratique
entre yn et ŷ n sont tels que l’erreur ε n (= yn − y$n ) est orthogonale à tout élément de l’espace de projection. Or cet
espace est engendré par les variables aléatoires xn −k où k ∈ { 0,1,L, N − 1} .

Par conséquent, au sens de l’orthogonalité dans l’espace de Hilbert des VAs de carré sommable, on a, pour tout
k ∈ { 0,1,L, N − 1} : [ ] [
E ( y n − yˆ n ) xn−k = E ( y n − h0 xn − h1 xn−1 −L − hN −1 xn− N +1 ) xn−k ] =0

soit : ∀ k ∈ { 0,1,L, N − 1} : E [(h0 xn + h1 xn−1 + L + hN −1 xn− N +1 ) xn−k ] = E y n xn−k[ ]


Cette relation peut s’écrire sous forme matricielle (équation de Wiener-Hopf) : Rh = r
en posant : et où par définition :
x n = [xn L xn− N +1 ]
Τ
[ ]
R = E x n x Τn
h = [h0 L hN −1 ] r = E [y x ]
Τ
n n

R et r s’écrivent à partir des fonctions de covariance R XX k et RYX k :


⎡ RXX 0 L RXX N −1 ⎤ ⎡ RYX 0 ⎤
⎢ ⎥ ⎢ ⎥
R=⎢ M L M ⎥ r=⎢ M ⎥
⎢ RXX L RXX 0 ⎥⎦ ⎢ RYX ⎥
⎣ N −1 ⎣ N −1 ⎦
Le filtre de Wiener , solution de l’équation de Wiener-Hopf, s’obtient aisément : h = R −1 r

7. 10
Traitement du Signal 7. Filtrage optimal

Evidemment, dans le cas où le système S est un filtre linéaire RIF de RI g n , de durée finie N , hn est exactement

égale à g n et le minimum de E [ε ]n
2
est égal à 0.
(On peut le montrer en rappelant que, pour un filtre linéaire, la fonction de covariance RYX k entre l’entrée et la sortie est donnée par
: RYX
k
= hk * RXX k )

−1
La solution trouvée : h=R r nécessite une inversion matricielle. On peut toutefois l’éviter par mise en oeuvre
de l’algorithme du gradient.

Algorithme du gradient (version récurrente du filtre de Wiener)

Considérons l’équation récurrente : h(n) = h(n − 1) + µ [r − R h(n − 1)]


où : h( n) désigne le vecteur obtenu au pas d’itération n . Le coefficient réel µ est appelé le pas du gradient.

2
A condition de choisir : 0<µ < ( λi désignent les valeurs propres de R)
max i (λi )
on montre que h( n) converge vers le filtre de Wiener.

(En effet la solution de l’équation récurrente : h(n) = h(n − 1) + µ [r − R h(n − 1)] est donnée par : h (n) = (I − A n ) R −1 r + A n h(0)
où on a posé : A = (I − µ R ) et utilisé l’identité : (I + A + L + A n −1 ) (I − A ) = I − A n )

Moindres carrés moyens Algorithme LMS (Least Mean Squares)

Si on connaît R et r , l’algorithme du gradient fournit une solution au problème posé.

Malheureusement, R et r sont généralement inconnus et doivent être estimés à partir des données observées.

L’algorithme des moindres carrés moyens (algorithme gradient stochastique ou encore LMS - Least Mean Squares),
algorithme adaptatif imaginé par Widrow (1985), évite le calcul de ces estimations.

x n = [xn L xn− N +1 ]
Τ
Posons : et : e(n) = y n − x Τn h(n − 1)

On peut écrire : r − R h( n − 1) = E y n x n [ ] [ ] [
− E x n x Τn h(n − 1) = E x n e(n) ]

Notons que e( n) représente la différence entre la valeur yn à l’instant n en sortie du système S et la valeur calculée
avec les coefficients obtenus à l’instant n − 1 .

Si e( n) est nulle, on peut considérer que les coefficients ont la bonne valeur, sinon il faut les corriger. L’erreur e( n)
est différente de l’erreur ε n = y n − yˆ n définie plus haut et qui fait intervenir la limite cherchée.

En conséquence, l’équation récurrente a pour expression : h(n) = h(n − 1) + µ E x n e(n) [ ]

7. 11
Traitement du Signal 7. Filtrage optimal

Une idée, dont le mérite revient à Widrow, est de remplacer dans l’équation récurrente, l’estimée de E x n e( n) [ ] par

sa valeur « instantanée » x n e( n) . Et ça marche ! A condition d’accepter une oscillation résiduelle autour de la


solution.

On obtient 2 équations qui constituent l’algorithme du gradient stochastique ou algorithme LMS :

Algorithme LMS

. Valeur initiale : h(0) = 0


. Répéter :
e(n) = y n − x Τn h(n − 1)
h(n) = h(n − 1) + µ x n e(n)

III. FILTRAGE DE KALMAN


L’approche de Kalman permet de s’affranchir de l’hypothèse de stationnarité des signaux. Elle met à profit la
Représentation d’Etat.

Exemple :

Soit un véhicule se déplaçant sur une droite avec une vitesse v constante.

Partant de la position initiale d 0 , sa position à l’instant t est donnée par : d (t ) = d 0 + vt

⎧d (t + 1) = d (t ) + v(t )
Cette équation de mouvement peut encore s’écrire ( t est discret) : ⎨
⎩v(t + 1) = v(t ) (= v)

⎧ d ( 0) = d 0
avec comme CIs (Conditions Initiales) : ⎨
⎩v(0) = v
En fait, on n’a pas vraiment confiance dans l’hypothèse selon laquelle la vitesse est constante (le modèle d’évolution de
la vitesse dont on dispose est imprécis). Pour prendre en compte d’éventuelles variations, on suppose que :
⎧d (t + 1) = d (t ) + v(t ) + b1 (t )

⎩v(t + 1) = v(t ) + b2 (t )
où : b1 (t ) et b2 (t ) sont 2 processus aléatoires figurant un bruit de modèle.

⎡d (t + 1)⎤ ⎡1 1⎤ ⎡d (t )⎤ ⎡b1 (t ) ⎤
L’équation d’évolution a donc pour expression matricielle : ⎢v(t + 1) ⎥ = ⎢0 1⎥ ⎢v(t ) ⎥ + ⎢b (t )⎥
⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ 2 ⎦

Supposons à présent que la position d (t ) soit observée à la sortie d’un dispositif bruité qui délivre la valeur :
y (t ) = d (t ) + u (t )
où : u (t ) est un processus aléatoire figurant un bruit d’observation, un bruit de mesure.

7. 12
Traitement du Signal 7. Filtrage optimal

⎧⎡d (t + 1)⎤ ⎡1 1⎤ ⎡d (t )⎤ ⎡b1 (t ) ⎤


⎪⎢ ⎥=⎢ ⎥⎢ ⎥+⎢ ⎥
⎪⎣v(t + 1) ⎦ ⎣0 1⎦ ⎣v(t ) ⎦ ⎣b2 (t )⎦
Le problème se ramène donc alors au système d’équations : ⎨
⎪ y (t ) = [1 0] ⎡d (t )⎤ + u (t )
⎪ ⎢v(t ) ⎥
⎩ ⎣ ⎦

⎧x(t + 1) = A x(t ) + b(t ) équation d' Etat


En passant à une écriture matricielle, on a : ⎨
⎩y (t ) = C x(t ) + u(t ) équation d' observation
⎡d (t )⎤
en posant : . Etat (n x 1) : x(t ) = ⎢ ⎥
⎣v(t ) ⎦
. Observation vectorielle ( p x 1) : y (t )
⎡1 1⎤
. A=⎢ ⎥ (n x n )
⎣0 1⎦
⎡b1 (t ) ⎤
. b(t ) = ⎢ ⎥ (n x 1)
⎣b2 (t )⎦
. C = [1 0] ( p x n)
. u(t ) = u (t ) ( p x 1)
Le filtre de Kalman fournit la meilleure estimation en moyenne quadratique de x(t ) à partir de l’observation y (t ) .

Dans sa forme la plus simple, on fait les hypothèses suivantes (bruits de modèle et d’observation les pires possibles :
bruits blancs) :

. les composantes de b(t ) et u(t ) sont des processus aléatoires centrés, blancs et non corrélés entre eux.

Leurs matrices de covariance respectives ont pour expression : ( t et τ sont discrets)

⎡σ b21 0 L 0 ⎤
⎢ ⎥
σ b2
[ Τ
]
R b (τ ) = E b(t + τ ) b (t ) = ⎢
⎢ M
0
M
2
0
M
M ⎥
0 ⎥
δ (τ )
⎢ ⎥
⎣⎢ 0 L 0 σ b2n ⎦⎥

⎡σ u21 0 L 0 ⎤
⎢ ⎥
0 σ u2 0
[ Τ
]
R u (τ ) = E u(t + τ ) u (t ) = ⎢
⎢ M M
2

M
M ⎥
0 ⎥
δ (τ )
⎢ ⎥
⎣⎢ 0 L 0 σ u2p ⎦⎥
et : [ ]
E u(t + τ )b Τ (t ) = 0

ˆ (t ) , fonction linéaire de y (1), y (2),L, y (t ) qui


Le filtre de Kalman fournit à chaque instant t l’estimation x
[
minimise l’erreur quadratique E x(t ) − x
ˆ (t ) ]2 .
Dans le cas gaussien, cette estimation linéaire est la meilleure parmi toutes les fonctions de y (1), y (2),L, y (t ) .

7. 13
Traitement du Signal 7. Filtrage optimal

Filtre de Kalman récursif

Le calcul direct fait intervenir l’inverse d’une matrice de covariance de dimension t . Par conséquent, quand t croît, la
dimension de cette matrice croît de façon « explosive ».

L’avantage du filtre de Kalman est d’être un algorithme récursif.

ˆ (t ) à l’instant t par une mise à jour de la valeur xˆ (t − 1) obtenue à l’instant t − 1 en tenant


Il effectue le calcul de x
compte de la dernière valeur observée y (t ) .

Algorithme du filtre récursif de Kalman

. Valeurs initiales : xˆ (0) = E [x(0)] [


K (0) = E x(0)x Τ (0) ]
. Répéter pour t ≥ 1 :
[
G (t ) = K (t − 1) CΤ C K (t − 1) CΤ + R u (0) ] −1
(1)

xˆ (t ) = A xˆ (t − 1) + G (t ) [y (t ) − C A xˆ (t − 1)] (2)

[
K (t ) = A K (t − 1) − G(t )CK (t − 1) A + R b (0)Τ
] (3)

L’expression de cet algorithme appelle quelques remarques :

. G (t ) s’appelle le gain de Kalman. Il peut être calculé à l’avance. En effet les équations qui le déterminent ((1) et (3))
ne dépendent pas des données observées. Toutefois, à part dans le cas scalaire (état de dimension 1), la détermination
de G (t ) requiert la résolution d’une équation récurrente complexe.

. La signification de l’équation (2) est claire. D’après l’équation d’Etat, s’il n’y avait pas de bruit, la valeur de x(t ) à
l’instant t serait A x(t − 1) . C’est le 1er terme de l’équation (2). Mais à cause du bruit, il faut corriger cette valeur par
une quantité proportionnelle à l’écart entre la valeur observée y (t ) et la valeur que l’on aurait dû avoir si l’équation
d’observation n’était pas bruitée, à savoir C x(t ) = C A x(t − 1) .

. Le filtre de Kalman nécessite la connaissance de R b (0) et R u (0) . Cependant la théorie peut être généralisée et
inclure la situation où il faut estimer ces quantités à partir des données observées. Dans ce cas la suite des gains n’est
plus pré-calculable.

. En résumé, le filtre de Kalman conduit à l’erreur quadratique minimale. Il nécessite une description détaillée du
modèle de signal sans toutefois imposer de contraintes de stationnarité. Lorsque l’on s’écarte de ce modèle, les résultats
obtenus peuvent être très mauvais. Le filtre de Kalman est linéaire et récursif. Le nombre d’opérations par point (≡
échantillon) est important, conduisant à un temps de calcul coûteux qui a parfois limité sa mise en oeuvre.

__________

7. 14
Traitement du Signal TD 7. Filtrage optimal

TD 7. Filtrage optimal
I. MOINDRES CARRES
Identification par la méthode des moindres carrés
1. Résolution d’un système d’équations surdéterminé au sens d’un critère d’écart quadratique [Voir TP]
Considérons le système d’équations :

⎧2α + 3β = 6

⎨3α + 4β = 7
⎪ α +β =2

⎡αˆ ⎤
Déterminer les paramètres â = ⎢ ⎥ par la méthode des moindres carrés direct (LS).
βˆ ⎣ ⎦

2. Approximation polynomiale [Voir TP]


On cherche à approcher une série de k mesures (température de 10 jours du mois dernier) par un polynôme d’ordre n-1.
yi

zi

zi (abscisse) 1 2 4 7 9 12 13 16 17 19
yi (ordonnée) 3 5 10 6 9 11 15 18 21 19

0. On choisit pour commencer un polynôme d’ordre 0 (droite moyenne, n=1) pour approcher la série de mesures.
Rechercher le paramètre â (ordonnée à l’origine de la droite moyenne) : - par LS
- par RLS
- A l’aide de ce modèle, prédire la température du 20ème jour, du 30ème jour.
1. On choisit maintenant pour modèle une droite passant par l’origine (n=1) pour identifier la série de mesures.
Rechercher le paramètre â (pente de la droite passant par l’origine) : - par LS
- par RLS
- A l’aide de ce modèle, prédire la température du 20ème jour, du 30ème jour.
1bis. On choisit ici pour modèle un polynôme du 1er ordre (droite de régression linéaire, n=2) pour l’identification.

⎡aˆ0 ⎤
Rechercher le paramètre aˆ = ⎢ ⎥ ( â0 ordonnée à l’origine et â1 pente de la droite) : - par LS
⎣ aˆ1 ⎦
- par RLS
- A l’aide de ce modèle, prédire la température du 20ème jour, du 30ème jour.
2. On choisit ici pour modèle un polynôme du 2nd degré (n=3) pour l’identification.
⎡aˆ0 ⎤
⎢ ⎥
Rechercher les paramètres aˆ = aˆ1 de la courbe qui « passe » par l’ensemble des points ( zi , yi ) : - par LS
⎢ ⎥
⎢⎣aˆ2 ⎥⎦
- par RLS
- A l’aide de ce modèle, prédire la température du 20ème jour, du 30ème jour.

3. On choisit ici pour modèle un polynôme d’ordre n pour l’identification.


Rechercher les paramètres aˆ Τ = [aˆ0 aˆ1 L aˆn −1 ] du polynôme : - par LS
- par RLS
- A l’aide de ce modèle, prédire la température du 20ème jour, du 30ème jour.

TD 7. 1
Traitement du Signal TD 7. Filtrage optimal

3. Identification de processus [Voir TP]


Considérons un processus échantillonné et son modèle :
Sortie y (i )
Processus réel
+
Entrée u (i ) Erreur ε (i )
Modèle G (z ) -

Prédiction yˆ (i )

1. On prend comme modèle : G ( z) = b0 + b1 z −1 Filtre MA d’ordre n = 2

On a donc : yˆ (i ) = b0u (i ) + b1u (i − 1) et ε (i) = y (i) − yˆ (i ) = y (i) − b0u (i) − b1u (i − 1)


On enregistre les k données suivantes :
i 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
u(i) 1.0 0.8 0.6 0.4 0.2 0.0 0.2 0.4 0.6 0.8 1.0 0.8 0.6 0.4 0.2
y(i) 0.9 2.5 2.4 1.3 1.2 0.8 0.0 0.9 1.4 1.9 2.3 2.4 2.3 1.3 1.2

- En utilisant la méthode des moindres carrés, déterminer les paramètres optimaux du modèle b$0 et b$1 .
- Tracer les réponses y (i ) et yˆ (i ) ainsi que la commande u (i ) sur un même graphe.
b0 + b1 z −1 +...+ bp z − p
2. Mêmes questions en prenant un modèle plus général : G ( z ) = Filtre ARMA d’ordre n = p + q + 1
1 + a1 z −1 +...+ aq z − q

TD 7. 2
Traitement du Signal TD 7. Filtrage optimal

TD 7 Annexe. Filtrage optimal


I. MOINDRES CARRES - II. FILTRAGE DE WIENER - III. FILTRAGE DE KALMAN

Détermination de l'inverse stable d'un fitre RIF - Egalisation - Moindres carrés -


Débruitage d’un signal par filtrage de Kalman
N
On considère un fitre linéaire causal RIF de RI hn à N + 1 coefficients et de FT H ( z ) = ∑ hi z −i .
i=0
−1
Son inverse de FT : G ( z ) = H ( z ) est un filtre RII (de RI g n ) pouvant être instable ( G (z ) a des pôles) s’il est
implémenté sous forme causale.

On peut toutefois assurer sa stabilité quitte à en prendre une forme non causale. On perd alors l’implémentation « temps
réel » (calcul en ligne) du filtre (le filtrage se fait alors en temps différé).

Une autre solution consiste à approcher g n par un filtre RIF de support de longueur L + 1 pris causal généralement.

Application
⎧h0 = 1

⎪ 5
On considère le filtre RIF de RI hn à N + 1 coefficients : ( N = 2 ) : ⎨h1 = − . Sa FT est H (z ) .
⎪ 2
⎪⎩h2 = 1

Détermination de l'inverse stable d'un filtre RIF

1. Mettre en évidence le caractère instable de la RI g n = TZ


−1
[G( z ) = H −1
]
( z ) prise causale.

2. Déterminer la RI g n = TZ
−1
[G( z ) = H −1
]
( z ) stable mais non causale.

Egalisation

3. Dans le cas où on limite le support de g n à une longueur L + 1 (filtre RIF) : g 0 , g1 , L , g L


(filtre causal) montrer que le problème peut se mettre sous la forme d’un système linéaire, en écrivant la relation
d’égalisation :
N
g n * hn = ∑ hk g n−k = h0 g n + h1 g n−1 + h2 g n−2 = δ n pour n allant de n = 0 jusqu’à n = L .
k =0

On implémentera la méthode avec L = 3 .

Moindres carrés

4. Implémenter la méthode des moindres carrés pour déterminer le filtre restaurateur { g n } = { g 0 , g1 , L , g L } :


. moindres carrés direct (LS)
. moindres carrés récursifs (RLS)

TD 7. 3
Traitement du Signal TD 7. Filtrage optimal

Débruitage d’un signal par filtrage de Kalman

On observe le signal : y (t ) = x(t ) + u (t ) où t ∈ Z .

On dispose du modèle suivant d’évolution du signal (modèle AR du 1er ordre) :


. équation d’Etat : x(t ) = a x(t − 1) + b(t ) avec : a = 0. 9
. équation d’observation : y (t ) = x(t ) + u (t )

Les bruits de modèle b(t ) et d’observation u (t ) sont centrés, blancs et non corrélés entre eux.
Leur variance respective est : σ b2 = 1 σ u2 = 9
σ b2
On pose : ρ= 2
σu

5.1. Déterminer l’expression de la puissance P0 correspondant à la solution stationnaire de l’équation d’Etat. On

[
prendra cette valeur comme expression initiale de E x (0) .
2
]
5.2. Ecrire un programme qui met en oeuvre le filtre de Kalman sur la trajectoire proposée.

__________

TD 7. 4
Traitement du Signal TP 7. Filtrage optimal

TP 7. Filtrage optimal
I. MOINDRES CARRES

1. Résolution d'un système de k équations à n inconnues [Voir TD]


(La méthode des Moindres Carrés requiert toujours une surdétermination : k ≥ n.
Si k=n, ce n'est plus un problème d'optimisation et la solution est exacte, obtenue par inversion matricielle
(alors qu'on a une pseudo-inverse en ce qui concerne le système surdéterminé)).

(cas multivariable)

LS X := y := a := a=

Vérification : prédiction Y : Y := X⋅ a Y=

2. Modélisation d'une série de k données par un polynôme d'ordre n [Voir TD]


(La méthode des Moindres Carrés requiert toujours une surdétermination : k ≥ n.
Si k=n, ce n'est plus un problème d'optimisation et la solution est exacte :
il s'agit du polynôme de Lagrange d'ordre n=k, ou encore une courbe spline, Bézier ...).

Données x y(x)
data := 〈0〉 〈1〉
1 3 x := data y := data k := length( x) k = 10
2 5
4 10 T 0 1 2 3 4 5 6 7 8 9
x =
7 6 0 1 2 4 7 9 12 13 16 17 19
9 9
12 11
T 0 1 2 3 4 5 6 7 8 9
13 15 y =
16 18 0 3 5 10 6 9 11 15 18 21 19
17 21
19 19 30

20
y
10

0
0 10 20
x

TP 7. 1
Traitement du Signal TP 7. Filtrage optimal

0. Polynôme d'ordre 0 (droite moyenne) (cas monovariable)

LS X := y := a := a= a := a
0
a= f ( x) := 0⋅ x + a
T 0 1 2 3 4 5 6 7 8 9
x =
0 1 2 4 7 9 12 13 16 17 19

T
y =

21
Vérification : Fonction intégrée Mathcad
y a := mean( y ) a=
f ( x)

1 x 19

RLS a := a= f ( x) := 0⋅ x + a

21

y
f ( x)

1 x 19

Prédiction xk := 20 yk := f ( xk) yk =

TP 7. 2
Traitement du Signal TP 7. Filtrage optimal

1. Droite passant par l'origine (cas monovariable)

LS X := y := a := a := a a= f ( x) := a⋅ x
0

T
X =

T
y =

21

y
f ( x)

1.101

1 x 19

RLS a := a= f ( x) := a⋅ x

21

y
f ( x)

1.1

1 x 19

Prédiction xk := 20 yk := f ( xk) yk =

TP 7. 3
Traitement du Signal TP 7. Filtrage optimal

1bis. Polynôme du 1er ordre (droite de régression linéaire) (cas multivariable)

〈0〉 〈1〉
LS X := X := y := a :=

a= f ( x) := a ⋅ x + a
1 0

T
X =

T
y =

Vérification : Fonctions intégrées Mathcad 21

(〈1〉
a := intercept X , y
0
) y

( 〈1〉
a := slope X , y
1
) f ( x)

a= 3

1 x 19

RLS a := a= f ( x) := a ⋅ x + a
1 0

21

y
f ( x)

1 x 19

Prédiction xk := 20 yk := f ( xk) yk =

TP 7. 4
Traitement du Signal TP 7. Filtrage optimal

2. Polynôme du 2nd ordre (cas multivariable)


LS X := y := a :=

2
a= f ( x) := a ⋅ x + a ⋅ x + a
2 1 0

T
X =

T
y =
21.059

y
f ( x)

1 x 19

2
RLS a := a= f ( x) := a ⋅ x + a ⋅ x + a
2 1 0

21.332

y
f ( x)

1 x 19

Prédiction xk := 20 yk := f ( xk) yk =

TP 7. 5
Traitement du Signal TP 7. Filtrage optimal

3. Polynôme d'ordre n (cas multivariable) n := 5 k = 10

LS X := y := a :=
n


i
f ( x) := a ⋅x
i
i= 0

T
a =

T
y =

21

y
f ( x)

2.477

1 x 19

RLS a :=

T
a =


i
f ( x) := a ⋅x
i
i= 0

21

y
f ( x)

1.018

1 x 19

Prédiction xk := 20 yk := f ( xk) yk =

TP 7. 6
Traitement du Signal TP 7. Filtrage optimal

3. Identification de la Fonction de Transfert à n coeffs d'un processus [Voir


TD]
à partir de k mesures de sa sortie (et de k valeurs de l'entrée correspondante)
(La méthode des Moindres Carrés requiert toujours une surdétermination : k ≥ n.
Si k=n, ce n'est plus un problème d'optimisation, la solution est exacte,obtenue par déconvolution).
Données k u(k) y(k)
data := 〈0〉 〈1〉 〈2〉
0 1 0.9 i := data u := data y := data
1 0.8 2.5
k := length( u) k = 15
2 0.6 2.4
3 0.4 1.3
4 0.2 1.2
5 0 0.8 4
6 0.2 0
7 0.4 0.9
u
8 0.6 1.4
9 0.8 1.9
2
y
10 1 2.3
11 0.8 2.4
12 0.6 2.3 0
13 0.4 1.3 0 5 10 15
14 0.2 1.2 i

1. FT à n=2 coeffs (cas multivariable)

LS X := y := a := a=

Coeffs du filtre : b := a b=

Vérification : Sortie prédite Y : Y := for i ∈ 0 .. k − 1


y ← b ⋅ u if i = 0
i 0 i
y ← b ⋅u + b ⋅u otherwise
2.657 i 0 i 1 i− 1
y
u

0 i 14

TP 7. 7
Traitement du Signal TP 7. Filtrage optimal

2. FT à n=p+q+1 coeffs (cas multivariable)


LS p := 1 q := 0 X :=

n := p + q + 1

n= 2

T
y := a := a =

Coeffs du filtre : b := for j ∈ 0 .. p a := for j ∈ p + 1 .. p + q if p + q ≥ p + 1


b ←a c ←a
j j j− p j
b c
T T
b = a =

Vérification : Sortie prédite Y :


Y := for i ∈ 0 .. k − 1
min ( p , i) min ( q , i)
y ←
i ∑ b ⋅u
j i− j

∑ a ⋅y
j i− j
if min( q , i) ≥ 1
j= 0 j= 1
min ( p , i)
y ←
i ∑ b ⋅u
j i− j
otherwise
j= 0
y

2.657

0 i 14

TP 7. 8
Traitement du Signal TP 7. Filtrage optimal

TP 7 ANNEXE. Filtrage optimal


I. MOINDRES CARRES 1. Filtrage LS (Least Squares - moindres carrés direct)
Identification de la RI h (dim. n) d'un canal à partir de la mesure bruitée de sa réponse y (dim. k)
à un signal x (dim. k)
⎛ xn−1 .. x x ⎞
⎛ yn ⎞ ⎜ 1 0
⎛ h0 ⎞ ⎛ wn ⎞
⎜ ⎜ xn .. x
2
x
1
⎟ ⎜ ⎜
⎜ .. ⎟ = ⎜ ⎟ . ⎜ .. ⎟ + ⎜ .. ⎟
⎜y ⎜ .. .. .. .. ⎟ ⎜h ⎜w
⎝ n+k−1 ⎠ ⎜x .. x x ⎝ n−1 ⎠ ⎝ n+k−1 ⎠
⎝ n+k−2 k k− 1 ⎠

Y Sortie vecteur kx1 X matrice kxn h RI vecteur nx1 W Bruit vecteur kx1

( )
−1
T T Il faut le système surdéterminé: k ≥ n
Solution : (Moindres carrés direct) h := X ⋅ X ⋅X ⋅Y
Programmation : k : nombre de points d'observation de y RAZ : X := submatrix( X , 0 , 0 , 0 , 0)
n : nombre de points inconnus de h Y := submatrix( Y , 0 , 0 , 0 , 0)

Faire croître k à partir de la valeur k = n et comparer la RI vraie du canal avec celle obtenue par identification

k := 3 n := 3 i := 0 .. k − 1 j := 0 .. n − 1 p := 0 .. n + k − 2 Réservation mémoire : y := 0 Y := 0
p i
Exemple de signal d'entrée : x := whiten( n + k − 1) Bruit blanc d'entrée = meilleur apprentissage possible

Exemple de RI (vraie) du canal : j := 0 .. n − 1 T


h := j h = (0 1 2)
j
Sortie : p := 0 .. n + k − 2 y := for m ∈ 0 .. n − 1
p
y ← y + h ⋅x if m ≤ p