Académique Documents
Professionnel Documents
Culture Documents
Ts Poly
Ts Poly
TRAITEMENT DU SIGNAL
TRAITEMENT DU SIGNAL
Opérations - Algorithmes
Plan du cours
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
0. Guy Almouzni
Traitement du Signal 0. Préambule
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
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
0. 1
Traitement du Signal 0. Préambule
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
Estimation
ANALYSE SPECTRALE
DETECTION
Filtrage adapté
Position du problème. Remarques. Normalisation.
Solution. Cas particulier important. Remarque
0. 2
Traitement du Signal 0. Préambule
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 ...
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
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)
0. 3
Traitement du Signal 0. Préambule
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
ANNEXE
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 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
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
0. 4
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
≡ Gain complexe)
FONCTION DE TRANSFERT (FT) (≡
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
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 = −∞
−∞
1. 1
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
Pour un signal à énergie infinie (signal périodique par exemple) on préfèrera utiliser la puissance (moyenne) pour
caractériser le signal :
∆ 1 +T ∆ k
1
P = lim ∫ ∑
2
P = lim
2
- Puissance (moyenne) d'un signal : (TC) x(t ) dt (TD) x( n)
T → ∞ 2T −T k → ∞ 2k + 1
n=−k
∆ 1 +T ∆ k
1
[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: 1 k
1 k 1 1
P = lim ∑ x(n) = klim ∑ 1 = lim ( k + 1) =
2
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
SNRdB = 10 log 0T
∆ P
= 10 log P = Px dB − Pb dB SNRdB = 10 log Nn=−01 = 10 log x = Px dB − Pb dB
∫ b (t ) dt
2
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 − p bi SNRdB = 10 log N2 = px
SNR dB
[ 2
E b (T ) ] pb
i
dB dB
E bN [ ] = 10 log p
bi
i dB
− p bi 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.
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
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.
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 ): E X n = [ ] ∫x 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 : EX [ ] = ∫x
2 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.
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
[
σ 2x = var[ X ] = E ( X − E [ X ]) = E X 2 − E 2 [ X ]
2
] [ ]
En effet : E
[( X − E[ X ]) ] = E[ X
2 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.
[ ] [ ]
ϕ xy = cov[ X , Y ] = E ( X − E [ X ])( Y − E [Y ]) = E X 0Y 0 = E [ XY ] − E [ X ] E[Y ]
[
ϕ xx = cov[ X , X ] = E ( X − E [X ] )
2
] = E[X ] − E [X ] = σ
2 2 2
x
cov[ X , Y ] ϕ xy
ρ xy = =
var[ X ] var[Y ] σxσy
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
1. 5
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
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
p X ( x) = ∑ pk δ ( x − k ) avec pk = C nk p k (1 − p )
n−k n!
La densité de probabilité est donnée par et C k =
k !(n − k )!
n
k =0
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 nB boules
blanches et n N boules noires. L’évènement est le tirage d’une boule blanche.
Loi de Poisson
∞
La densité de probabilité est du type : p X ( x) = ∑ pk δ ( x − k ) avec p k =
λk e − λ
k =0 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 nB boules
blanches et n N boules noires. L’évènement est le tirage d’une boule blanche.
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
≡ gaussienne)
Loi normale (≡
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 3σ m
x
1
La densité de probabilité est définie par p X ( x ) = 2σ 2
e : Loi normale
σ 2π
Moyenne m : E [ X ] = m
Variance σ 2
: [ ]
E X 2 − E 2 [X ] = σ 2
1. 7
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
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
Poisson ( λ ) λke−λ ∞
λ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 ∞ ∞
FX ( x) = p( X ≤ x) = ∫ pX (u)du ∫ ( x − m)
de la VA
p X ( x) = X m= ∫ xpX ( x)dx σ =2 2
p X ( x)dx
dx −∞
−∞
−∞
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 .
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.
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é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).
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 XX (t1 , t 2 ) = E X (t1 ) X (t 2 ) = E X (t1 ) X (t 2 ) − m X (t1 ) m *X (t 2 )
0 0* * dans le cas de PA complexes ( X * (t ) : conjugué de X (t ) )
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é)
[ ] [ ]
RXY (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 ) )
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
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 (τ )
[ ]
R XX (τ ) = 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 :
[ ]
R XX (τ ) = 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 ) = RXX (τ ) ] 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 ) )
∑∑ 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
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
1. 10
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
Fonction de Covariance (= Corrélation dans le cas SSL) RXY (τ ) 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 (τ )
[
R XY (τ ) = 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 (−τ )
[ ]
∆
. 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
∆
X ( f ) = TF [ X (t )]
~ ~
. Spectre X f est la fréquence
Théorème de Wiener-Khintchine
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
PX = R XX (0) + m X = ∫S ( f ) df + m X
2 2
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 :
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
X T → + ∞ 2T + 1 ∑ X (t )
m = lim
t = −T
T
1
1 T m X = Tlim
→ + ∞ 2T + 1
∑ X (t ) dans le cas de PA complexes
R = lim
∑ X (t + τ ) X (t )
t = −T
T
1
T → + ∞ 2T + 1 R = lim
XX
XX T → + ∞ 2T + 1 t∑
X (t + τ ) X * (t )
t = −T = −T
1 K
Un processus X (t ) ergodique est donc tel que sa moyenne statistique (dont une estimation est : mˆ X (t ) = ∑ xk (t ) )
K k =1
1 T −1
est égale à sa moyenne temporelle (dont une estimation est : mˆ X = ∑ 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).
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
∑ X 0 (t + τ ) X 0 (t )
*
t =0
XX
T − τ 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
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 ) Y (t ) RYY (τ ) = h(τ ) * h( −τ ) * R XX (τ )
2
. Filtrage de la DSP Autocorrélation de
1. 13
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
H ( z) =
X ( z)
=
1
[
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 ».
N
N
Y ( z ) 1 + ∑ ai z − i = W ( z ) → Yn = Wn − ∑ aiYn − i
−1
On a immédiatement : TZ
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
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)
1 + ∑ ai z − i i =1 i=0 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
B ( z ) = ∑ bi z
−i
A( z )Y ( z ) = B ( z )U ( z ) + C ( z )W ( z ) avec
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.
A( z ) = 1 + ∑ ai z
Filtre BJ −i
Yn (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 P
A( z ) D( z ) 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 ) = A k 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
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. 17
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
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 0 (t ) = X (t ) − X
(resp. à Temps Discret : ϕ xx k = E [X n0 X n0+ k )] ).
X (t ) H (s) Y (t ) H (z )
TC : TD : X n Yn
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 0 (t ) = X 0 (t ) * h(t )
car : [ ]
Y 0 (t ) = Y (t ) − Y = X (t ) * h(t ) − X * h(t ) = X (t ) − X * h(t ) = X 0 (t ) * h(t )
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
∞ ∞ ∞ ∞ ∞
Φ YY ( s ) = H ( s ) ⋅ H (− s ) ⋅ Φ XX ( s ) ϕ yy (τ ) = h(τ ) * h(−τ ) * ϕ xx (τ )
−1
d’où : et: TL
→
En prenant : s = jω (régime harmonique), on obtient la relation entre les Densités Spectrales de Puissance (DSP) :
Φ YY (ω ) = H (ω ) ⋅ Φ XX (ω ) encore noté :
2
SY ( f ) = H ( f ) ⋅ S X ( f )
2
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) :
Φ YY (ω ) = H (ω ) ⋅ Φ XX (ω ) encore noté :
2
SY ( f ) = H ( f ) ⋅ S X ( f )
2
f : fréquence
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).
1. 19
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
∆
E[Y0 ] = y 0 ∆
D’autre part, le filtre étant récursif il faut préciser les CIs : où : Yn0 = Yn − y n
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 n y 0 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.
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 ) ( ) et E [ X nYn ] = ϕ xy 0 = V ⋅ h0 = 0 (car h0 = 0 )
[ ] + E [X
k
→ [
E Yn+1 − y n+1 = a 2 E Yn0 ]
2 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.)
(
Pn = a 2 n P0 + V 1 + a 2 + L + a 2 n ) d’où : P∞ =
V
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).
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
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 Bn2 = 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 ) :
. Variance : Var de Y (t ) ?
Pn+1 = (1 + αT ) Pn + QT
2
D’après les résultats du cas discret :
. Autocorrélation de Y (t ) : ? ϕ yy (τ ) = E[Y (t )Y (t + τ )] = ?
ϕ yy k = (1 + α T ) k
QT
Le résultat du cas discret donne ici :
1 − (1 + αT )
2
Q ατ
0 : (1 + α T ) ≈ e
Q α kT
et: ϕ yy (τ ) = −
α kT
Quand T →
k
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
∑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
Si H ( z ) = ∑ bi z −i , le signal {Yn } est MA. (Le filtre H (z ) est RIF (≡ à Réponse Impulsionnelle Finie)
i =0
Si H ( z) = N
1
, 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 ) = ∑ hi z −i , on a immédiatement : hi = bi i ∈ [0, N ] .
i =0
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
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
ΦYY (ω ) de {Yn } : ? ∑h e
− jω 2 − jmω
. DSP ΦYY (ω ) = V H (e ) =V m
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
[ ]
Hypothèses : E X n2 = V ≡
ϕ xx k = E [X n ⋅ X n+k ] = Vδ k , 0
et H ( z) = N
1
=
Y ( z)
X ( z)
E [ X n ⋅ X n+ k ] = 0 ∀k ≠ 0 1 + ∑ a i z −i
i =1
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
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.
ϕ xy k E [ X n− k Yn ] ϕ xy −k E[ X n+k Yn ] ϕ yx k
N
ϕ 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 initialement))
i =1 i =1
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
V si k = 0
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N
↔ pour 0≤k ≤ N: ∑ϕ an = ( a0 = 1 ) ( ϕ yy paire)
0 si 1 ≤ k ≤ N
i =1 yyk − n 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
yy 1 = 0 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.
(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.
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
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
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)
1 + ∑ ai z −i i =1 i =0 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.
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
k > N qui a la même forme que ϕ yy k du cas AR : ϕ yy k = −∑ aiϕ yy k −i
N
ϕ yy k = −∑ ai ϕ yy k −i si
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
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 ϕ yy 1 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 = ∑ bi X n−i − ∑ aiYn−i :
i =0 i =1
N
Soit : U n = Yn + ∑ aiYn−i
i =1
N N N
comme : Yn = ∑ bi X n−i − ∑ aiYn−i , on a aussi : U n = X n + ∑ bi X n−i (en supposant b0 = 1 )
i =0 i =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
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 + ∑ am 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
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
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 0 x0 x1 L x K −1 L 0
M =
K D
K −1
avec : D=
0 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
Τ Τ
(Pour tout vecteur
modules 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
L
xN x N +1 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.
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
RXX 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 xK −1
N L L
xN x K −1 0 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
ϕ 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 : ( N + 1) x ( N + 1) a = 1 : ( N + 1) x (1) v = : ( N + 1) x (1)
yy
M M M M M M
ϕ yy N ϕ yy N −1 L ϕ yy 0 a N 0
V
ϕ yy 0 1 − + ϕ yy 1a1 + 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 yy 1 V
→ R = − a0 = 1 −
1
avec :
M ϕ yy 0 M ϕ yy 0
a N ϕ yy N
a0 0 a0 α 0 0
a ϕ
∆ ϕ
1 α 1
1 ∆ 1 a ∆
1 1 1 −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
ϕ yy 0 ϕ yy1 L ϕ yy N 1 V
ϕ ϕ yy 0 L ϕ yy N −1 a1 0
yy 1 = 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 : ∑ϕ ai = ( a0 =1) ( ϕ yy paire)
0 si 1 ≤ k ≤ N
yyk − i 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
Les solutions à l’ordre n : a0[n ] , a1[n ] , ..., an[n ] , 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 : ∑ϕ ai[n+1] = [n ]
( a0 = 1) ( ϕ yy paire)
0 si 1 ≤ k ≤ n + 1
yyk − i k
i =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 ]
1= 1 (soit : ai = ai[ N ] , 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
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
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
R0 L Rn −1 a1[n ] 0
1 = avec a0[n ] = 1
M M M M M M
Rn Rn −1 L R0 an[n ] 0
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]
On a : Rn
a nF−1 R n −1 rnB a nF−1
= BΤ = 0 avec :
[
a nF−1 = 1 a1[n −1] L an[n−−11] ] Τ
0 rn R0 0
rnB Τa nF−1
FΤ
rnF Τa nB−1
0 R0 r 0
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 nF−1 0
+ K na n −1 B =
F
Par combinaison linéaire : R n 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
En choisissant le coefficient K n tel que : rnB Τa nF−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
n
a = + 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
P0 = R0 = ∑ a0[0 ] = 1
2
Valeurs initiales : xn
K n=0
Pour n = 1,L, N − 1 :
{
Kn = −
[R a[
n 0
n −1]
+ L + R0 an[n−−11] ]
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
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
r B Τa F
passer par le calcul des covariances. On en déduit, si nécessaire, par la relation de Levinson : K n = − nP n −1
[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 2
n)
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
[n ] [n ]
ε n (t ) = an x(t ) + an −1 x(t − 1) + L + x(t − n) = a n x (errreur rétrograde) B ≡ Backward
B BΤ
a nF−1 0
En utilisant les coefficients de réflexion, on a : ε nF (t ) = + K n B x(t ) = ε n −1 (t ) + K nε n −1 (t − 1)
F B
0 n −1
a
0 a nF−1
et : ε nB (t ) = B
+ K n x(t ) = ε n −1 (t − 1) + K nε n −1 (t )
B F
n −1
a 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
1. 34
Traitement du Signal 1. Signaux déterministes. Signaux aléatoires. Systèmes stochastiques
Méthode de Burg
1 K
P0 = R0 = ∑ ε1F (t ) = ε1B (t ) = x(t ) t = 0,1,L, K − 1
2
Valeurs initiales : xn
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 ) = ε (t ) + K nε nB−1 (t − 1)
F
n
F
n −1 t = 0,1,L, K − 1
ε nB (t ) = ε nB−1 (t − 1) + K nε nF−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 (stabilité).
__________
1. 35
Traitement du Signal TP 1. Signaux. Systèmes
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
La théorie dit qu'une loi uniforme sur [a,b] a pour moyenne et variance :
m := m=
σ2 := σ2 =
b−a
c := c = 0.5
2
12⋅ σ2
c := c=
2
X := CFFT( x)
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
. Moyenne : m := m=
. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
k
rk ∆k
− 0.043 −5
3.431× 10
0 k 127
0 k 127
Conclusion : Variance du bruit blanc : σ2 := σ2 =
Ecrire les fonctions : moy(v) et vautocov(v) calculant respectivement la moyenne et le vecteur fonction
d'autocovariance d'un signal v.
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é.
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
. Moyenne : m := m=
. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
k
rk ∆k
− 2.779 −3
7.621× 10
0 k 127
0 k 127
TP 1. 3
Traitement du Signal TP 1. Signaux. Systèmes
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
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
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
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
rk ∆k
− 0.013
0 k 127
0 k 127
TP 1. 5
Traitement du Signal TP 1. Signaux. Systèmes
F( i , j ) := D :=
. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
. Matrice de Covariance : R :=
rk ∆k
−3
− 9.635× 10
0 k 16
0 k 16
[3-VBD]. ESTIMATION DE LA COVARIANCE PAR LA METHODE DES COVARIANCES : Variante Bordage à droite
F( i , j ) := D := matrix( N + 1 , K , F)
. Covariance : r := Λ := CFFT( r) ∆ k := Λ k
. Matrice de Covariance : R :=
rk ∆k
−3
− 9.635× 10
0 k 16
0 k 16
TP 1. 6
Traitement du Signal TP 1. Signaux. Systèmes
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
φ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
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 := φyy V := V=4
0 φ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
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
RAZ : y := submatrix( y , 0 , 0 , 0 , 0) n := 0 .. K − 1 y := 0 y :=
n n
yn
−1
0 n 99
K− 1
1
. Moyenne : m :=
K
⋅
∑ x
n
m=
n =0
K − k− 1
1
. Covariance de x : k := 0 .. N r :=
k K
⋅
∑ x ⋅x
n+ k n
n =0
r = à rapprocher de : V=4 r=
0
K− 1
1
. Moyenne : m :=
K
⋅
∑ y
n
m=
n =0
K − k− 1
1
. Covariance de y : k := 0 .. N r :=
k K
⋅
∑ y ⋅y
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
Synthèse du signal
I. SIGNAUX DETERMINISTES
La génération d’un signal déterministe peut être réalisée à partir :
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)
α = 2 A cos(2πfT )
coefficients :
β = −1
. 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
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.
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.
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) }
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
Wn H (z ) Xn
Bruit blanc centré Filtre MA
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 + b1wn−1 + L + bM wn− M avec b0 = 1 (le fait de diviser tous les coefficients par b0 conduit à b0 = 1 )
k =0
où :
wn désigne un processus aléatoire réel blanc, centré, stationnaire, de variance σ 2
Cette FT ne possède pas de pôles. Elle conduit donc à un filtre causal stable, facilitant ainsi l’identification du signal xn .
R XX 1 = E [ X n +1 X n ] = E [(Wn +1 + b1W n + b2W n −1 )(W n + b1Wn −1 + b2W n − 2 )] = (b1 + b1b2 )σ 2
R XX 2 = E [ X n + 2 X n ] = E [(Wn + 2 + b1W n +1 + b2W n )(W n + 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
2. 3
Traitement du Signal 2. Synthèse du signal. Identification
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 N
Modèle AR : x n = wn − ∑ a k x n − k → ∑a x k n− k = wn avec a0 = 1
k =1 k =0
∑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.
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é.
[ ] [
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
R XX 0 + a1 R XX 1 = σ 2
2. 4
Traitement du Signal 2. Synthèse du signal. Identification
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
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 )
RXX 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.
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
2. 5
Traitement du Signal 2. Synthèse du signal. Identification
Un processus ARMA s’obtient en mettant en série une structure AR et une structure MA.
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 à a 0 = 1 )
∑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.
2. 6
Traitement du Signal 2. Synthèse du signal. Identification
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.
R XX 0 + a1 R XX1 = σ 2
On remplace dans l’équation obtenue avec les covariances exactes :
R XX1 + a1 R XX 0 = 0
R XX 0 et R XX1 par leur estimée respective.
R XX =
1 K −1 2 1 2
(
0 K ∑ xn = K x0 + x1 + L + x K −1
2 2
)
n =0
( )
K −2
R = 1 1
XX1 K − 1 ∑
xn+1 xn = x1 x0 + x2 x1 + L + xK −1 xK − 2
n =0 K −1
ˆ Rˆ XX1
On obtient pour matrice de covariance estimée : ˆ = R XX 0
R
Rˆ XX1 Rˆ XX 0
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
σ = R XX 0 − Rˆ
1
XX 0
2. 7
Traitement du Signal 2. Synthèse du signal. Identification
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).
S X ( f ) = H ( f ) S B ( f ) = H ( f ) σˆ 2 σ
2 2 2
On a : car le spectre (DSP) d’un bruit blanc est :
S B ( f ) = σˆ 2
2 1
S X ( f ) = H ( f ) σˆ 2 = H ( z = e i 2π f ) σˆ 2 H ( z) =
2
d’où : avec :
1 + aˆ1 z + L + aˆ N z − N
−1
σˆ 2
donc : SX ( f ) = 2
1 + aˆ1e −i 2π f + L + aˆ N e −i 2π N f
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. 8
Traitement du Signal TP 2. Synthèse. Identification
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.
α := 2⋅ cos( 2⋅ π ⋅ f ⋅ T)
1
f := 5 F := 100 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.
Initialisation : v := 100
0
Equation récurrente : v :=
n
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
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.
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
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
. 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
i := 1 .. N a =
i
TP 2. 4
Traitement du Signal TP 2. Synthèse. Identification
m := 0 x := BruitBlanc( K , m , V)
3.442
xk
− 3.455
0 k 79
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
RSB := RSB = dB
Taux de compression :
τ := τ =
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.
__________
TP 2. 6
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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.
Φ3 /ω
Φ0 Φ2 /ω
Φ1
TFD :
M −1
= TFD[x(n)]
1
x ( n)
→ TFD
X (k ) =
M
∑ x(n)e
n =0
−i 2πkn / M
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.
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
f(n)
k (Fréquence)
Fréquence
m
M −1
1
On obtient pour chaque indice n de fenêtre f(n) une TFD : X (k ) =
M
∑ x (m) e − i 2πkm/ M
m= 0
et au total , non plus un spectre (2D), mais un spectrogramme (3D) (Représentation Temps-Fréquence) :
i 2 πkm
∞ −
1
∑ x (m) f (n − m) e
M
On a la relation de définition de la TFCT : X (n, k ) =
M 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
∫ f (t )e
− i 2πνt
La transformation (décomposition) de Fourier continue F (ν ) d’une fonction f (t ) s’écrit : F (ν ) = dt
−∞
∞
∞
< 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.
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ν
f (t ) = Cψ ∫ ∫ 2 F (a, b)ψ a ,b (t ) da db Cψ = 2π ∫ Ψ (ν )
−1
Reconstruction avec
−∞ − ∞ 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.
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
−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
ψ ( x) 0 ψ ( x) 0.5
− 14
1.495 ×10 0
1 5 0 5
5 0 5
x −5 x 5
ψ ( x) 0 ψ ( x) 0.5
− 0.384 1 0 0
5 0 5 5 0 5
−5 x 5 −5 x 5
2
2
Re( ψ ( x) ) 0 Im( ψ ( x) ) 0 ψ ( x)
1
2
2 .10
16
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
−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
−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.
2 n points 2 n points
V1 W1 Signal décomposé au niveau 1
Reconstruction (synthèse)
3. 7
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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 − 2 k ]
l Reconstruction : a
d = g~[l − 2n] a
k k
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.
V1 W1
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)
3. 8
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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
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
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
− 10 ⋅( x+ 3) − ( x− 1)
Soit la fonction p : p( x) := e +e
Echantillonnons p à 512 points autorisant la construction du vecteur signal P :
Pi 1
0
5 0 5 10
xi
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
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)
2 + floor
r 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
A2 ,i + 6 10
A3 ,i + 3 5
A5 ,i
0
5
0 100 200 300 400 500
i
2 2
Pi Si
0 0
5 0 5 5 0 5
xi xi
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.
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.
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
3. 13
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
1
analyse ( v ) := h ←
2 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
1 0.707
h ← h=
i
2 0.707
for i ∈ 0 .. rows ( h ) − 1 RI g (passe-haut) du filtre de Haar
g ←h ⋅ ( −1)
i
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 ←
k ∑ v ⋅ gr
i k− i
otherwise
d = gr*v
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
d ← detail( v ) détail
3. 14
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
1
reconstruction ( a , d) := h ←
2 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
∑
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
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
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
v a0 signal original v
3. 16
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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
signal 1D
400
sk 200
0
0 50 100
k
sk 200 wk 0 vk 200
0 500 0
0 50 100 0 50 100 0 50 100
k k k
w := wavehaar ( s , 2) v := iwavehaar ( w , 2)
wk 0 vk 200 v2 k 200
500
0 50 100 0 0
0 50 100 0 50 100
k
k k
w := wavehaar ( s , 3) v := iwavehaar ( w , 3)
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
signal 2D (image)
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
Wx Jx Wy Jy
Wx Jx Wy Jy
3. 20
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
Wx Jx Wy Jy
Wx Jx Wy Jy
W Jx W2 Jy
W Jx W2 Jy
3. 21
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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
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
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
sk 200
0
0 50 100
k
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
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
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
Wx Jx Wy Jy
I J
W J W2 J2
3. 25
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
3. 26
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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 Cx (z) converge) : C x ( z ) = ln ( X ( z ) ) = ∑ c (n) zx
−n
n = −∞
( )
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 )
Le Cepstre c x (n) peut donc également être obtenu par Transformation de Fourier inverse de C x ( f ) :
π π
cx (n) = TF −1 [C x ( f )] = TF −1 [ln X ( f ) ] + i ⋅ TF −1 [ϕ ( f )] = ∫ ln X ( f ) ei 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
soit : c y ( n ) = ch ( n ) + c x ( n )
3. 27
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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
2π
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 ) ...)
- 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
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.
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
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
r
m 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 :
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
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.
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.
. xˆ = f (y ) sera une réalisation de X
ˆ = f (Y)
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
[
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 [ ] ([ ] ) [ ] [ ]
2
on a : E 2 Xˆ − x = E Xˆ − x = 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
3. 32
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
Exemple 1
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
[ ]
N −1
1 N 1 N −1 1 N −1
m = 2 E ∑ X i − Nm = 2 E ∑ ( X i − m)
2
∑ Xi −
2
σ N2 = E M$ − E M$ = E M$ − m = E
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[ ( )] = σ 2δ i , j et l’opérateur E [⋅] linéaire,
2
1 N −1 1 N −1 2
N −1
∑ E[ X − m] =
1 1 1
σ = 2 E ∑ ( X i − m) = 2 E ∑ ( X i − m) = 2 Nσ 2 = σ 2
2 2
donc : N i 2
N i =0 N i =0 N i =0 N N
1
σ N2 = σ 2
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 : σˆ 2 = ∑ ( xi − mˆ ) 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 1 N −1
E Σˆ 2 = E ∑ ( X i − m) 2 = ∑ E [ X i − m] = Nσ 2 = σ 2 :
N i =0
2 1
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
1 N −1 1 N −1
E Σˆ 2 = 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
E Σˆ 2 = ∑ E ( X i − m ) − ∑ ( X i − m ) = ∑ E ( X i − m ) − ( X i − m ) +
2 2 2
N i =0 N i =0 N i =0 N N
[ ] 1 N −1
E Σˆ 2 = ∑ E[ X i − m] − E[ X i − m] +
N i =0
2 2
N
2 σ 2 1 N −1
N N i =0
2 N −1
N i =0
1 N −1 σ 2
= ∑ E[ X i − m]2 − 2 ∑ E[ X i − m]2 + ∑
N i =0 N
[ ] 1 2 1 1 1
E Σˆ 2 = Nσ 2 − 2 Nσ 2 + σ 2 = σ 2 − σ 2 = σ 2 1 − :
N N 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
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 {x n }
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 faire
et
x
n + k défini pour 0 ≤ n + k ≤ N − 1
0 ≤ n ≤ N − 1
0 ≤ n ≤ N − k − 1 si k ≥ 0
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
ϕˆ xx k
=
1
N− k
∑x x n n+ k
φˆ xxk =
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 X n+ k ] =
1
(N − k )φ xxk = φ xxk , le biais de l’estimateur est nul :
N− k N− k
n
n =0
[
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
a la relation : ϕ̂ xx =
1
( x k * 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* =
N− k
1
Xk ( ) 2
3. Calcul de ϕˆ xx = k
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 :
N − k −1
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
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 {yn } 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ˆ (ω ) = ∑ ym 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
où les {x } mk sont M parties (de durée L ) se chevauchant de la séquence {xn } (de durée N ) :
x0 LLL x L−1
L
{ }
x0k
3. 36
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
avec :
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 L
2N
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
3. 37
Traitement du Signal 3. Caractérisation (Analyse - Transformations fréquentielles). Estimation
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 + ∑ a n z −n
n =1
N
correspondant à l’équation récurrente : Yn = X n − ∑ a k y n− k
k =1
Φ YY (ω ) = H (ω ) Φ XX (ω )
2
Les DSPs d’entrée et de sortie sont reliées par la relation :
où : [ ]
Φ XX (ω ) = TF ϕ xxn et [ ]
Φ YY (ω ) = TF ϕ yyn avec : ϕ xx n
et ϕ yy n
: autocorrélations.
Φ XX (ω )
soit : Φ YY (ω ) = 2
N
1 + ∑ a n 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
V si k = 0
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N
↔ pour 0 ≤ k ≤ N : ∑ϕ an = ( a0 = 1 ) ( ϕ yy paire)
0 si 1 ≤ k ≤ N
i =1 yyk − n k
n =0
L
N
ϕ yy N + ∑ aiϕ yy N −i = 0
i =1
ϕ yy 0 ϕ yy 1 L ϕ yy N 1 V
ϕ ϕ yy 0 L ϕ yy N −1 a1
yy 1 = 0 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 ϕ yy 0
=
M 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 ONDELETTES (caractérisation de signaux non stationnaires)
La fonction de Transfo. rapide en ondelettes requiert un nombre d'échantillons égal à une puissance de 2 :
on prend donc les 512 1ers points du signal original comptant 800 points.
. Fichier : M := 800 n := 0 .. M − 1 x := READWAV( "o1.wav" ) x := x − 128
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 :
x2n 0
20
0 100 200 300 400 500 600
n
2.949
8.461
wn
iw2n
w2 n
− 15.418
− 3.582
Conclusion :
0 n 511
0 n 511
TP 3. 1
Traitement du Signal TP 3. Caractérisation. Estimation
0 n 511
Visualisation de la compression : compression d'images :
K := Wave2D( I)
L := IWave2D( K)
I K L
N := 2 Compress1D( u ) :=
TP 3. 2
Traitement du Signal TP 3. Caractérisation. Estimation
K := Wave2Dcomp( I) L := IWave2D( K)
I K L
20
6.006
x2n 0 cn
20 − 10.271
0 100 200 300 400 500 600
n 0 n 799
Conclusion :
TP 3. 3
Traitement du Signal TP 3. Caractérisation. Estimation
ESTIMATION
Périodogramme
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. 4
Traitement du Signal TP 3. Caractérisation. Estimation
20
xn 0
20
0 100 200 300 400 500 600 700 800
n
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 0 X2 n 0
20 2
0 200 400 600 0 100 200 300 400 500 600
n n
TP 3. 5
Traitement du Signal TP 3. Caractérisation. Estimation
20
13.249
xn 0 hn
20 − 8.984
0 200 400 600 800
n 0 n 799
10
6.039
0
x3n an
10
20 − 5.502
0 100 200 300
n 0 n 150
TP 3. 6
Traitement du Signal TP 3. Caractérisation. Estimation
Fonctions Bibliothèque :
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
TP 3. 7
Traitement du Signal TP 3. Caractérisation. Estimation
YuleW ( x, N) ≡ r ← vautocov ( x)
a ← YuleWalker ( r , N)
a
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
I. CONDITIONNEMENT - FILTRAGE
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
désaccentuation de FT H d ( f ) = H p−1 ( 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
réception le filtrage inverse H d ( f ) = H p−1 ( 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.
[ ]
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
∞
∞ 2
∫ d + λ ∫ H p ( f ) S X ( f )df − P0
2
Il faut donc minimiser : H ( f ) S B ( f ) df
−∞ −∞
∞
SX ( f )
−1
∫−∞ d + λ df − λ P0
2
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 Hd ( f ) qui rend minimum l’expression sous le signe de l’intégrale :
SX ( f )
H d ( f ) SB ( f ) + λ
2 2
2
et donc qui annule sa dérivée par rapport à Hd ( f ) .
Hd ( f )
SX ( f )
Hd ( f ) = λ
2
Il vient :
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
SX ( f ) ∫ S B ( f ) S X ( f ) df
SX ( f )
Hd ( f ) = λ ⋅ = ⋅
2 −∞
SB ( f ) P0 SB ( f )
∞
1 SX ( f )
= ∫
2
→ Hd ( f ) S B ( f ) S X ( f ) df
P0 −∞
SB ( f )
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 = sn + bn (présence)
. xn = bn (absence)
∆ 2
= ρ ( N , {hn })
y ( s)
ρ = N
n= N
[ ]
on a pour le SNR : 2 : Rapport des puissances instantanées à l’instant
E Y ( B)
N
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 sR sR h
ρ= = ΤR R ρ = *
[ ]
Ainsi :
*Τ
2
E YN ( B ) h φ BB h h φ BB h
*
( ) [ ]
∆
Τ Τ Τ Τ Τ Τ 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
a (h) = 0 pour h = h
*
et :
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 a (h ) = 0 sR h = 1
*
d’où : et comme : et :
′ * Τ *
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
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
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)
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
x1n 0
1.179 0.225
y1n y2n
− 0.513 − 0.068
0 n N 0 n N
Conclusion:
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 :
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
TP 4. 3
Traitement du Signal TP 4. Conditionner.Filtrer.Détecter
YuleW ( x, N) ≡ r ← vautocov ( x)
a ← YuleWalker ( r , N)
a
n (
v ← mod A⋅ v
n− 1
,P )
for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w
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 a k 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 :
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.
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.
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
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 )
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 )ei 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 )ei 2πν 0t
} 2TF {e(t )}
ν ν ν
0 0 ν0 −ν 0 0 ν0
Spectres du signal modulant, du signal analytique et du signal modulé
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 r (t )e i 2πν 0t le signal analytique associé à r (t ) , la démodulation produit le signal
ra (t ) = ~
:
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)
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
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−α
H ( z) = où z −1 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
8.348 .10
5
0.752 2 0
0 50 100 0 100 200
0 n 100 0 k 199
Entree 0 Re Sortie 0
n n
2 5
0 200 400 0 100 200 300 400
0 n 400 0 n 400
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)
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é)
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).
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.
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
0
Graphe de s m (t ) : 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)
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 ) .
s (t ) = k
A p Am
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
k k ′A p A′p
v(t) = s m (t ) au facteur ⋅ Am près. Spectre de s1 (t ) : 0 f
2 fm 2 f p − fm 2 f p + fm
5. 9
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
[ ] [ ]
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 )
0 < 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) :
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)
[ ] [
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
s (t ) = Ap cos(2πf p t ) +
m Ap
{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
k Ap A′p
k s(t ) ⋅ s ′p (t ) =
2
m m
[
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
] [ ]
2 2
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)
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
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
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 :
5. 12
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
→ 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 2fp
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.
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τ s(t ) = s p ( Ap , φ (t ), t ) avec φ (t ) = k sm (τ )dτ
t t
- en FM:
dt p
p ∫ m
∫ 0
0
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 cos2π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 :
• modulationfmcorrectement réalisée : ( m faible et ≠ 0)
s( t )
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 )
⋅ cos{2π ( f p + f m )t }− ⋅ cos{2π ( f p − f m )t }
m Ap m Ap
→ s (t ) ≈ A p cos(2πf p 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
∑ [J (m ) ⋅ cos (2π ( f ]
∞ ∞
+ n f m )t )
i 2π ( f p + n f m )t
s (t ) = Ap ⋅ Re ∑ J n (m ) ⋅ e → s(t ) = Ap n p
n = −∞ n = −∞
Fonctions de Bessel :
J0(m) ---> 1
J3( m ) 0
0.5
0 5 10 15 20 25
m
Démodulation de Fréquence
5. 15
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
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.
sm ( t )
H τ
H t
0 Te
s (t )
K
s m (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)
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.
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 τ
5. 17
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
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
τ
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
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 ...
5. 18
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
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.
≡ numérique)
Transmission du signal binaire (≡
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.
5. 19
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
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
0 0 1 1 0 1 0 0 0 1 0
0 0 1 1 0 1 0 0 0 1 0
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. 20
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
∑ (d )
∞
V ({ f n }) =
2
n − dˆn
n = −∞
f0 ϕ dg0
∞ f ϕ
Posons : ∑d
n = −∞
2
n =α 2
f = 1
L
ϕ dg = −1
dg
L
φ gg = ϕ gg
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
Donc : φ gg f = ϕ dg
5. 21
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 = γ
g0
0
φ gg f = γ avec γ =
M
0
Conclusion
Le principe de l’égalisation traitée ici fait partie de l’égalisation supervisée : on a 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. 22
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
{ 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 :
fN U n− N
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
L’intérêt de cette approche est de ne pas nécessiter la connaissance du bruit mais seulement celle du signal à extraire
(une réalisation) 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. 23
Traitement du Signal 5. Transmission (Codage. Egalisation. Extraction de signal immergé dans du bruit. Filtrage adaptatif)
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 fi
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.
Τ
[ ] 2
V ( f ) = E S n − f U (pour le problème de l’extraction de signal immergé dans du bruit)] est obtenu de manière
de l’égalisation) ou
itérative par une méthode de gradient.
Le vecteur gradient est perpendiculaire aux hypersurfaces V ( f ) = C te : en effet, si l’on suppose que f est fonction
Τ
du temps (filtrage adaptatif), on a, sur une isosurface, dV = 0 = V f ⋅ f& ⋅ dt , donc V ( f ) est perpendiculaire à 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
∑ (d )
∞
Pour cela, au lieu du critère de performance V ( f ) [ V (f ) = V ({ f n }) = n − dˆ n
2 Τ Τ
= α 2 − 2f ϕ dg + f φ gg f (pour le
n = −∞
[ ] [ ]
V ( f ) = V ({ f n }) = E S n − Sˆ n = E S n − f U (pour le problème de l’extraction de signal immergé dans du
problème de l’égalisation) ou
2 Τ 2
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. 24
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.5
−3 0 otherwise
t := 0 , 10 .. 2 sm( t ) := sm1( t )
1 2
sm( t) 0 sp( Ap , fp , t) 0
1 2
0 2 0 0.5 1 1.5 2
t t
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
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
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
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 )
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 :
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
TP 5. 4
Traitement du Signal TP 5. Transmission
YuleW ( x, N) ≡ r ← vautocov ( x)
a ← YuleWalker ( r , N)
a
n (
v ← mod A⋅ v
n− 1 )
,P
for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w
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⋅
1 I←0
∑
M
X ← ⋅ x ⋅e
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
__________
TP 5. 7
Traitement du Signal 6. Prédiction
6. Prédiction
Prédiction
Lissage - Filtrage - Prédiction
Etant donné les N échantillons passés d’un signal comportant M points ( N ≤ M ) : yn−1 , yn−2 L , y n− N ,
il s’agit d’en prédire l’échantillon présent : yn .
Un modèle de prédiction consiste à effectuer une prédiction linéaire :
N
yˆ n = − a1 y n −1 − a 2 y n −2 −L− a N y n − N y$n = − ∑ ai yn −i
i =1
M points du passé
yn −1 ŷn
yn − N Prédiction à 1 pas
n
∆
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 − i Y ( 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
6. 1
Traitement du Signal 6. Prédiction
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 Xn : [ ]
PX = E X n2 ≈ . Variance de Xn : [ ]
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.
Rappel : ϕ yy k
paire : ϕ yy = E [YnYn −k ]
k
−k
=
[ ] = ∑∑ a a ϕ
N N ϕ yy paire N N N N N
E E n2 i j yy j − i = a 02ϕ yy0 + a12ϕ yy0 + L + a N2 ϕ yy0 + 2∑∑ ai a j ϕ yy j −i = ϕ yy0 ∑ ai2 + 2∑∑ ai a j ϕ yy j −i
i = 0 j =0 i = 0 j =0 i =0 i =0 j = 0
j ≠i j ≠i
[ ]
N N
E E n2 = a n2ϕ yy0 + 2a n ∑ a j ϕ yy j − n + termes ne contenant pas a n = a n2ϕ yy0 + 2a n ∑ a mϕ yyn − m + termes ne contenant pas a n
j =0 m =0
j ≠n m≠n
Puissance minimale
(on peut aussi calculer la dérivée 2nde de PE pour s’assurer que l’annulation de la dérivée 1ère de PE conduit bien à un minimum de PE )
[ ]
∂E E n2
=
∂ 2 N
N
a n ϕ yy0 + 2a n ∑ a mϕ yyn − m + termes ne contenant pas a n = 2a nϕ yy0 + 2 ∑ a mϕ yyn − m = 0
∂a n ∂a n m =0
m=0
m≠n m≠ n
[ ]
N N N N N
Du fait que ϕ yy k
est paire, on a : E E n2 = ∑ ∑ ai a jϕ yy j −i = ∑ ∑ ai a jϕ yy j −i + a0 ∑ aiϕ yyi (a0 = 1)
i =0 j = 0 i = 0 j =1 i =0
[ ]
N N N
→ E E n2 = ∑ a j ∑ aiϕ yy j −i + a0 ∑ aiϕ yyi (a0 = 1)
j =1 i =0 i =0
6. 2
Traitement du Signal 6. Prédiction
[ ]
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
[ ]
N
E En2 min
: ϕ yy 0 + ∑ aiϕ yy i = V
i =1
V si k = 0
N
ϕ yy1 + ∑ aiϕ yy i −1 = 0
N
n = 1: ↔ pour 0 ≤ k ≤ N : ∑ϕ an = ( a0 = 1 ) ( ϕ yy paire)
0 si 1 ≤ k ≤ N
i =1 yyk − n k
n =0
L
N
n=N: ϕ yy N + ∑ aiϕ yy N − i = 0
i =1
ϕ yy 0 ϕ yy 1 L ϕ yy N 1 V
ϕ ϕ yy 0 L ϕ yy N −1 a1
yy 1 = 0 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).
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, {En } est un bruit blanc.
Application
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 = ∑ − a k x n− 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.
6. 3
Traitement du Signal 6. Prédiction
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
6. 4
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 := 2
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
0.01
a := YuleWalker ( φ , N) a = −1.722
n
φ := vautocov ( y)
0.766
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
x := cos
2 ⋅ π ⋅ n + rnd( 2 ) − .2
Signal x original (L points) L := 100 n := 0 .. L − 1
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 − m
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)
Calcul n := N .. M − 1 S := S2 :=
n n
1.145 1.145
sn sn
Sn S2 n
− 1.043 − 1.043
0 n 29 0 n 29
TP 6. 2
Traitement du Signal TP 6. Prédiction
SNROVdB := SNROV2dB :=
SNROVdB = SNROV2dB =
Taux de compression
Conclusions
. Methode de Yule-Walker :
. Methode de Burg :
TP 6. 3
Traitement du Signal TP 6. Prédiction
Fonctions Bibliothèque :
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
TP 6. 4
Traitement du Signal TP 6. Prédiction
YuleW ( x, N) ≡ r ← vautocov ( x)
a ← YuleWalker ( r , N)
a
n (
v ← mod A⋅ v
n− 1
,P)
for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w
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⋅
1 I←0
∑
M
X ← ⋅ x ⋅e
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
__________
TP 6. 7
Traitement du Signal 7. Filtrage optimal
7. Filtrage optimal
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 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)
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
(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
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.
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 .
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 ε ):
ε 2 = J (h ) = (y − X h )Τ (y − X h ) (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
ε 2
et non un maximum, il suffit de regarder le signe des dérivées secondes : ∂
2
ε 2
(pour effectivement vérifier que l’on a un minimum de > 0)
∂h 2
∂ε 2
= −2 X Τ ⋅ (y − X h ) = 0 X Τ ⋅ (y − X h ) = 0 → {ε = (y − X h)} ⊥ X
Τ
▪ (produit scalaire nul) →
∂h
(l’erreur ε est orthogonale à l’observation X Τ (et comme X h colinéaire à X Τ → ε ⊥ X h ) :
y
ε = Xh − y
Xh
Img ( X)
Théorème de projection
7. 2
Traitement du Signal 7. Filtrage optimal
Τ
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( )
−1
XΤ y (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ètreh à 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 )] )
Τ
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
que la taille de X croît de façon illimitée rend impossible un calcul direct à partir de la relation (
h = XΤ X ) −1
XΤ y .
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.
Xi
X i +1 = Τ x Τi+1 désigne la (i + 1)
ième
En notant : 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
hi +1 = h i + K i ( yi +1 − xiΤ+1hi )
Pi x i +1
il vient finalement : avec : Ki = (vecteur dim. nx1 )
1 + x iΤ+1Pi x i +1
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.
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
x iΤ = [xi + n xi + n−1 L xi ]
Pi x i +1
. Pour i = 1,L, k − 1 Répéter : K i = avec
1 + x iΤ+1Pi x i +1
hi +1 = h i + K i ( yi +1 − xiΤ+1hi )
Pi x i +1 x iΤ+1 Pi
Pi+1 = Pi −
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 .
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
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
Pm = = avec X = et m < k
2
Τ
m
X ⋅X M
∑x 2
i
Calcul direct : aˆ = aˆ m = Pm ⋅ Q avec : i =1 x m Q scalaire : (1,1)
y1
m y
Q = ∑ xi yi = X Τ ⋅ y avec y = 2 et m < k
i =1 M
ym
ou :
7. 5
Traitement du Signal 7. Filtrage optimal
Avec cette initialisation, il faut suffisamment d’observations pour pouvoir converger avec précision vers la solution
exacte â k fournie par le calcul direct.
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
[ ]
[
aˆ = X Τ ⋅ X ] −1
⋅ XΤ ⋅ y avec :
X = x i1
M
xi 2
M
L x in = x iΤ
L M
∀i ∈ [1, k ] matrice : (k , n) : variables
x k1 xk 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
Calcul récursif Temps Réel - Moindres Carrés Récursif - Algorithme RLS (Recursive Least Squares)
Pi : ( n, n)
Pi = Pi −1 − K i ⋅ x iΤ ⋅ Pi −1 avec : xi : ( n,1) x iΤ = [x1 x2 ... x n ] : n variables
[ Τ
aˆ i = aˆ i −1 + K i ⋅ y i − x ⋅ aˆ i −1
i ] Ki : ( n,1)
yi : (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 = x i1 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.
Prédiction yˆ (i )
−1
b0 + b1 z + b2 z −2 + L + b p z − p
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
a1 , a 2 , L , a q , b0 , b1 , L , b p
Les paramètres à estimer sont : ( 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.
b0 + b1 z −1 + b2 z −2 + L + b p z − p Yˆ ( z )
On a : G( z) = −1 −2 −q
= d’où, par TZ −1 :
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 + b pu (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 ) + b1 u (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
7. 8
Traitement du Signal 7. Filtrage optimal
u (0) 0 L 0 M 0 L L 0
u (1) − y (0)
y = X a + ε (3) avec u ( 0) 0 0 M 0 L 0
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
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
(
h = XΤ X )
−1
XΤ y (moindres carrés direct)
On peut se demander s’il existe des séquences d’apprentissage meilleures que d’autres.
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
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 y n 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 ε n2
+
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 y n 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
h = [h0 L hN −1 ] r = E [y x ]
Τ
n n
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 ε n2 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 )
La solution trouvée : h= R −1 r nécessite une inversion matricielle. On peut toutefois l’éviter par mise en oeuvre
de l’algorithme 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 )
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 yn 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.
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.
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)
Exemple :
Soit un véhicule se déplaçant sur une droite avec une vitesse v constante.
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
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.
σ 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
σ u2
[ Τ
]
R u (τ ) = E u(t + τ ) u (t ) =
M
0
M
2
0
M
M
0
δ (τ )
0 L 0 σ u2p
et : [ ]
E u(t + τ )b Τ (t ) = 0
Le filtre de Kalman fournit à chaque instant t l’estimation xˆ (t ) , fonction linéaire de y (1), y (2),L, y (t ) qui
E [x(t ) − xˆ (t )] .
2
minimise l’erreur quadratique
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
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 ».
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)
. 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 ) à
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
l’instant
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).
β
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ˆ
Rechercher le paramètre aˆ = 0 ( â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.
TD 7. 1
Traitement du Signal TD 7. Filtrage optimal
Prédiction yˆ (i )
- 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 + a1z −1 +...+ aq z − q
TD 7. 2
Traitement du Signal TD 7. Filtrage optimal
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
2. Déterminer la RI [ ]
g n = TZ −1 G ( z ) = H −1 ( z ) stable mais non causale.
Egalisation
Moindres carrés
TD 7. 3
Traitement du Signal TD 7. Filtrage optimal
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.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
(cas multivariable)
LS X := y := a := a=
Vérification : prédiction Y : Y := X⋅ a Y=
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
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
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
〈0〉 〈1〉
LS X := X := y := a :=
a= f ( x) := a ⋅ x + a
1 0
T
X =
T
y =
(
〈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
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
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
LS X := y := a := a=
Coeffs du filtre : b := a b=
0 i 14
TP 7. 7
Traitement du Signal TP 7. Filtrage optimal
n := p + q + 1
n=2
T
y := a := a =
2.657
0 i 14
TP 7. 8
Traitement du Signal TP 7. Filtrage optimal
Y Sortie vecteur kx1 X matrice kxn h RI vecteur nx1 W Bruit vecteur kx1
−1
Solution : (Moindres carrés direct) h := X ⋅ X( T ) ⋅X ⋅Y
T Il faut le système surdéterminé: k ≥ n
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
T
Moindres carrés (direct) : h := h =
Conclusion: . pour k = n :
. pour k > n :
TP 7. 9
Traitement du Signal TP 7. Filtrage optimal
y := x + u ynb := xnb
t t t t t
yt 20 ynbt
20 0
0 50 100 0 50 100
t t
TP 7. 10
Traitement du Signal TP 7. Filtrage optimal
Vb
y := K ←
0 2
1−a
for t ∈ 0 .. N
Signal bruité filtré (Kalman)
20
x
yt
− 2.229
0 t 100
TP 7. 11
Traitement du Signal TP 7. Filtrage optimal
Fonctions Bibliothèque :
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
TP 7. 12
Traitement du Signal TP 7. Filtrage optimal
YuleW ( x, N) ≡ r ← vautocov ( x)
a ← YuleWalker ( r , N)
a
n (
v ← mod A⋅ v
n− 1 )
,P
for n ∈ 0 .. N − 1
1
w ← ⋅ v − 0.5
n P n
w
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 7. 13
Traitement du Signal TP 7. Filtrage optimal
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 I←0
∑
M
X ← ⋅ x ⋅e
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 7. 14
Traitement du Signal TP 7. Filtrage optimal
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
TP 7. 15
Traitement du Signal
TRAITEMENT DU SIGNAL
ANNEXE
Annexe
Traitement du Signal 8 Annexe. Décision (Classification, Reconnaissance des Formes)
I. CAS BI-CLASSE
Dans certains cas, la finalité de la mesure d’un signal est la reconnaissance du phénomène physique qui en est la source.
Lorsque celui-ci fait partie d’un ensemble de situations déjà connues à priori, le problème se ramène à la
Reconnaissance Des Formes (RDF) et relève de la théorie de la décision.
Un cas simple, fréquemment rencontré et particulièrement étudié correspond au cas de la décision entre 2 classes.
L’observateur est alors en présence d’une source qui génère une sortie caractéristique d’un phénomène parmi 2
possibles, que l’on appelle des classes (ou hypothèses) H 1 et H 2 .
Cette source est alors perturbée par un canal de transmission qui rend impossible une détermination sûre des hypothèses.
Le signal mesuré est alors utilisé pour construire un élément X d’un espace de représentation (ou d’observation) χ
du phénomène observé. Cet espace de représentation doit correspondre à une statistique suffisante du phénomène
observé, c’est-à-dire que la connaissance du vecteur d’observation X doit permettre d’avoir tous les éléments pour
prendre une décision correcte. Dans la mesure du possible, aucune variable de décision ne doit donc être volontairement
occultée.
La constitution de cet espace permet ensuite de concevoir et de qualifier une règle de décision, dont la fonction est de
déterminer au mieux à quelle hypothèse correspond l’élément X construit à partir du signal observé.
Cette règle de décision réalise donc une partition de l’espace de représentation en 2 sous-espaces disjoints et
complémentaires χ1 et χ 2 , c’est-à-dire un découpage de l’espace de représentation en 2 sous-espaces tels que :
χ1 ∪ χ 2 = χ et χ1 ∩ χ 2 = ∅
Une fois cette règle de décision constituée, il ne reste alors plus qu’à l’appliquer aux individus, pour déterminer la classe
à laquelle ils appartiennent.
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe sont connues
Il faut pour cela considérer les 4 cas possibles de décisions et d’hypothèses, et leurs probabilités respectives :
Décider 1 Décider 2
dans la classe H1 P (D1 H 1 ) = ∫ ρ (X H 1 )dX P (D2 H 1 ) = ∫ ρ (X H 1 )dX
χ1 χ2
8 Annexe. 1
Traitement du Signal 8 Annexe. Décision (Classification, Reconnaissance des Formes)
Fonction de coût R
Ces 4 probabilités sont ensuite utilisées pour construire une fonction de risque (ou de coût) R égale à une somme
pondérée de chacune des hypothèses, et que l’on souhaite rendre la plus petite possible :
R = C11 P(D1 H 1 )P(H 1 ) + C12 P(D1 H 2 )P(H 2 ) + C 21 P(D2 H 1 )P( H 1 ) + C22 P(D2 H 2 )P( H 2 )
Comme les décisions erronées sont plus pénalisées que les décisions correctes, les coefficients de pondération doivent
être choisis de façon à vérifier les 2 relations d’ordre suivantes :
C21 > C11 > 0 et C12 > C22 > 0
Cette fonction de risque admet un minimum absolu, car elle peut être minorée par la valeur :
( )
Rmin = C11 P H 1 + C22 P H 2 ( )
car, pour Rmin , on a le cas idéal :
P(D1 H 1 ) = P(D2 H 2 ) = 1
P(D1 H 2 ) = P (D2 H 1 ) = 0
De plus, elle peut également s’écrire sous une nouvelle forme, obtenue à partir des densités de probabilités
conditionnelles, décrites plus haut :
P(D2 H1 ) = 1 − P(D1 H 1 ) et P(D2 H 2 ) = 1 − P(D1 H 2 )
( ) ( ) [ ( )] [ (
→ R = C11 P D1 H 1 P( H 1 ) + C12 P D1 H 2 P (H 2 ) + C 21 1 − P D1 H 1 P ( H 1 ) + C 22 1 − P D1 H 2 P ( H 2 ) )]
→ R = C 21 P (H 1 ) + C 22 P (H 2 ) + (C12 − C 22 )P(H )P(D H ) + (C − C )P(H )P(D
2 1 2 11 21 1 1 H1 )
→ R = C21P(H1 ) + C22 P (H 2 ) + γ en posant : γ = (C12 − C22 )P(H 2 )P(D1 H 2 ) + (C11 − C21 )P(H1 )P(D1 H1 )
avec : γ = ∫ {(C
χ1
12 − C 22 )P (H 2 )ρ ( X H 2 ) − (C 21 − C11 )P ( H 1 )ρ ( X H 1 )}dX
soit, pour que R = Rmin , il faut : γ <0 (une probabilité ∈ à l’intervalle [0, 1] )
R est donc minimale lorsque la quantité intégrée : {(C12 − C 22 )P(H 2 )ρ ( X H 2 ) − (C 21 − C11 )P(H 1 )ρ ( X H 1 )} est < 0
dans la totalité du domaine χ 1.
Ceci amène donc à choisir l’ensemble χ 1 des valeurs de X pour lesquelles on décide de choisir le cas 1, comme
l’ensemble de toutes les observations pour lesquelles :
ρ (X H 2 ) (C21 − C11 )P( H1 )
< ρ ≥0
ρ (X H1 )
C12 > C 22
(C12 − C22 )P( H 2 ) ∫ ρ dX ≥ 0 ) )
( car et (probabilité =
χ1
Le critère bayésien conduit donc à une règle de décision appelé le test du rapport de vraisemblance :
8 Annexe. 2
Traitement du Signal 8 Annexe. Décision (Classification, Reconnaissance des Formes)
Cette règle de décision consiste donc à comparer une fonction du vecteur d’observation L ( X ) , appelée récepteur, à un
seuil de décision µ qui dépend des probabilités a priori des hypothèses et des coûts fixés par l’utilisateur.
Dans certains cas, notamment lorsque les densités de probabilité correspondant aux 2 hypothèses sont gaussiennes, on
préfèrera utiliser le logarithme du rapport de vraisemblance, qui devra être comparé au logarithme de µ .
Si les 2 hypothèses sont considérées comme symétriques et si le risque correspond à la probabilité d’erreur totale, alors :
C11 = C 22 = 0 et C12 = C21 = 1
soit R = P (D1 H 2 )P(H 2 ) + P (D2 H 1 )P(H 1 )
Le critère de vraisemblance correspond alors à choisir l’hypothèse dont la probabilité a posteriori est la plus élevée :
ρ (X H2 ) P( H 1 )
<
ρ (X H1 )
Décider 1 si
P( H 2 )
ρ (X H2 ) P( H 1 )
>
ρ (X H1 )
Décider 2 si
P( H 2 )
Cette règle de décision correspond donc à choisir l’hypothèse qui, compte tenu du vecteur d’observation X obtenu, se
révèle être la plus probable.
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe ne sont pas connues
Enfin, si les probabilités a priori des 2 hypothèses ne sont pas connues, on peut cependant fixer expérimentalement le
seuil d’une règle de décision construite empiriquement en suivant l’approche bayésienne.
Règle du minimax
La règle de décision qui minimise le risque maximum est donc celle pour laquelle le coefficient de P(H 2 ) est nul :
(C12 − C11 ) − (C12 − C 22 )P(D2 H 2 ) − (C 21 − C11 )P(D2 H1 ) = 0
C12 − C11 C 21 − C11
→ P (D2 H 2 ) = − P (D2 H 1 )
C12 − C 22 C12 − C22
Ce choix est appelé règle du minimax. Elle exprime le compromis admissible entre la probabilité de détection et la
probabilité de fausse alarme.
Courbe COR
Dans la pratique, on estime les fréquences relatives des cas de détection et de fausse alarme en fonction du seuil de
décision µ . On obtient alors une courbe, appelée courbe COR (caractéristique de l’opérateur de réception L ( X ) ) :
P(D2 H 2 ) = f [P(D2 H 1 )]
8 Annexe. 3
Traitement du Signal 8 Annexe. Décision (Classification, Reconnaissance des Formes)
Cette courbe passe nécessairement par les points (0,0 ) et (1,1) puisque, lorsque µ → 0 , le cas 2 est toujours retenu,
tandis que, lorsque µ → ∞ , le cas 2 n’est jamais retenu :
lim P(D2 H 1 ) = 1 lim P (D2 H 1 ) = 0
µ →0 µ →∞
Par rapport au cas bi-classe avec décision précédent, cela revient à ajouter une possibilité supplémentaire de non
décision parmi les cas possibles de décisions et d’hypothèses :
Cette nouvelle situation entraîne donc une modification de l’expression de la fonction de risque R :
R = C01P(D0 H1 )P(H1 ) + C11P(D1 H1 )P(H1 ) + C21P(D2 H1 )P(H1 ) + C02 P(D0 H 2 )P(H 2 ) + C12 P(D1 H 2 )P(H 2 ) + C22 P(D2 H 2 )P(H 2 )
Puisqu’une décision erronée présente un coût plus élevé qu’une non-décision, les différents coefficients de pénalité sont
choisis de façon à vérifier les relations d’ordre suivantes :
C 21 > C01 > C11 > 0 et C12 > C02 > C22 > 0
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe sont connues
→ R = C 01 P (H 1 ) + C 02 P (H 2 ) + γ 1 + γ 2 en posant :
γ1 = ∫ {(C
χ1
12 − C 02 )P (H 2 )ρ ( X H 2 ) − (C 01 − C11 )P (H 1 )ρ ( X H 1 )}dX
et γ2 = ∫ {(C
χ2
21 − C 01 )P(H 1 )ρ ( X H 1 ) − (C 02 − C 22 )P(H 2 )ρ ( X H 2 )}dX
8 Annexe. 4
Traitement du Signal 8 Annexe. Décision (Classification, Reconnaissance des Formes)
Règle de décision
Cas où les densités de probabilité du vecteur d’observation conditionnellement à chaque classe ne sont pas connues
Enfin, lorsque l’on ne dispose pas des expressions analytiques des densités de probabilité conditionnelles, on peut
chercher à minimiser la fonction de risque en fonction des probabilités a priori des hypothèses H 1 et H 2 :
R = (C11 − C 01 )P(D1 H 1 ) + (C 21 − C 01 ) + P(D2 H 1 ) + C 01 P(H 1 ) + P(H 2 )[(C 02 − C 01 ) + (C12 − C02 )P(D1 H 2 ) + (C01 − C11 )P(D1 H 1 )]
− P(H 2 )[(C 21 − C01 )P(D2 H 1 ) + (C02 − C22 )P(D2 H 2 )]
Ceci conduit alors à prendre le terme en facteur de P( H 2 ) égal à 0. Les 2 seuils de décision peuvent alors être
déterminés indépendamment en prenant les intersections des 2 courbes COR : P(D1 H1 ) = f [P(D1 H 2 )] et
P(D2 H 2 ) = f [P(D2 H 1 )] des 2 droites déduites du minimax :
∆1 C − C02 ∆2 C − C01
P (D1 H 1 ) = − 12 P (D1 H 2 ) et P (D2 H 2 ) = − 21 P (D2 H 1 )
C01 − C11 C01 − C21 C02 − C12 C02 − C22
avec : ∆1 = (C12 − C02 ) + Γ(C 21 − C12 ) et ∆ 2 = (C 21 − C01 ) + Γ(C12 − C 21 )
où : Γ( x ) représente l’échelon de Heaviside.
__________
8 Annexe. 5
Traitement du Signal TD 8 Annexe. Décision (Classification, Reconnaissance des Formes)
I. CAS BI-CLASSE
1. Canal de transmission
Une source qui émet soit une tension nulle (hypothèse 1 H 1 ), soit une tension constante V ≠ 0 (hypothèse 2 H 2 ), est
observée à la sortie y (t ) d’un canal de transmission, qui introduit un bruit n(t ) additif gaussien, blanc et centré :
H1 : y (t ) = n(t ) H 2 : y (t ) = V + n(t )
avec : E [n(t )] = 0 et : Var [n(t )] = σ 2
__________
TD 8 Annexe. 1
Traitement du Signal Projets
TRAITEMENT DU SIGNAL
PROJETS
Projets. 0
Signaux & systèmes 0. Préambule
Bioinformatique
01. Analyse de signaux ECG (Electro-CardioGramme) et EEG (Electro-EncéphaloGramme) (analyse FFT et Ondelettes).
__________
0. 1