Filtrage de Wiener
Transcription
Filtrage de Wiener
Filtrage de Wiener Le filtrage de Wiener est adéquat pour les situations dans lesquelles le signal ou le bruit sont stationnaires. INRS-EMT J. Benesty Plan • Formulation du problème • Principe d’orthogonalité • Equation de Wiener-Hopf • Surface de l’erreur quadratique moyenne (EQM) • Erreur quadratique moyenne (EQM) minimale • Forme canonique de l’EQM • Exemples • Résumé INRS-EMT J. Benesty 1 Formulation du problème • On a un ensemble d’échantillons d’un signal d’entrée {x(0), x(1), x(2), · · · } et un ensemble d’échantillons d’une réponse désirée {d(0), d(1), d(2), · · · } • Dans la famille des filtres calculant leur sortie selon: y(n) = L−1 hlx(n − l), n = 0, 1, 2, · · · (1) l=0 • Trouver les paramètres {h0, h1, h2, · · · } de telle manière de minimiser l’erreur quadratique moyenne (EQM ou MSE mean-square-error) ou critère J = E{e2(n)} (2) où le signal d’erreur est: e(n) = d(n) − y(n) = d(n) − L−1 hlx(n − l). (3) l=0 La famille des filtres (1) est la famille des filtres linéaires RIF. INRS-EMT J. Benesty 2 C’est plus pratique d’utiliser une notation matricielle pour la sortie du filtre: y(n) = L−1 hlx(n − l) l=0 = hT x(n) = xT (n)h, (4) où h= h 0 h1 · · · hL−1 T est un vecteur de longueur L contenant les coefficients du filtre RIF et x(n) = x(n) x(n − 1) · · · x(n − L + 1) T est le vecteur des L données d’entrée les plus récentes. INRS-EMT J. Benesty 3 Principe d’orthogonalité Le vecteur optimum hopt est celui qui annule le gradient du critère: ∂J = 0L×1. ∂h On a: ∂J ∂h = 2E e(n) (5) ∂e(n) ∂h = −2E {e(n)x(n)} . (6) Par conséquent, à l’optimum, on a: E {emin(n)x(n)} = 0L×1, (7) où emin(n) est l’erreur pour laquelle J est minimisée (càd pour le filtre optimal). C’est le principe d’orthogonalité signifiant que toutes les entrées x(n − l), 0 ≤ l ≤ L − 1, sont décorrélées de l’erreur emin(n). En d’autres termes, le critère J atteind son minimum si et seulement si l’erreur e(n) est orthogonale aux échantillons du signal d’entrée x(n − l). INRS-EMT J. Benesty 4 A l’optimum, on a aussi: E {emin(n)y(n)} = E emin(n) L−1 hopt,lx(n − l) l=0 = L−1 hopt,lE {emin(n)x(n − l)} l=0 = 0, (8) c’est le corollaire du principe d’orthogonalité. hopt,l sont les coefficients du filtre optimal hopt: hopt = hopt,0 hopt,1 · · · hopt,L−1 T . En d’autres termes, quand le critère J atteind son minimum alors l’erreur emin(n) est orthogonale à la sortie du filtre y(n). INRS-EMT J. Benesty 5 Equation de Wiener-Hopf Nous savons que pour le filtre optimum hopt, nous avons E {emin(n)x(n)} = 0L×1. En développant cette équation, nous obtenons: T E x(n) d(n) − x (n)hopt = 0L×1, soit E x(n)x (n) hopt = E {x(n)d(n)} , T (9) ou encore Rhopt = p avec solution hopt = R−1p. (10) R = E x(n)x (n) est la matrice d’autocorrélation du signal d’entrée x(n). Cette matrice est définie positive, de Toeplitz et symétrique. p = E {x(n)d(n)} est le vecteur d’intercorrélation entre la sortie désirée d(n) et l’entrée x(n). T L’équation (10) est appelée l’équation de Wiener-Hopf. INRS-EMT J. Benesty 6 Surface de l’erreur quadratique moyenne (EQM) Rappelons que le signal d’erreur est: e(n) = d(n) − hT x(n), donc la fonction coût peut encore s’écrire: J (h) = J = E{e2(n)} = E{d2(n)} − 2E{d(n)xT (n)}h + hT E{x(n)xT (n)}h = σd2 − 2pT h + hT Rh, (11) où σd2 = E{d2(n)} est la variance du signal désiré. J (h) est une fonction quadratique des paramètres {h0, h1, · · · , hL−1}. J (h) est une paraboloide de dimension L qui a un minimum unique obtenu en prenant le gradient égal à zero: ∂J (h) /∂h = 0L×1. L’équation (11) représente la surface de l’EQM. INRS-EMT J. Benesty 7 Erreur quadratique moyenne (EQM) minimale La fonction coût s’écrit: J (h) = σd2 − 2pT h + hT Rh. (12) A l’optimum, sachant que hopt = R−1p, nous avons: Jmin = J (hopt) = σd2 − 2pT hopt + hToptRhopt = σd2 − hToptRhopt = σd2 − pT R−1p = σd2 − σd2opt , (13) est le signal filtré optimal et où dopt(n)= hToptx(n) σd2opt = E d2opt(n) la variance de ce signal. Cette relation montre que pour le filtre optimal, l’EQM est la différence entre la variance du signal désiré et celle de l’estimée de ce signal produite par le filtre. Ainsi, la valeur de l’EQM minimale (MMSE – minimum mean-square-error) pour le filtre optimal de Wiener est: Jmin = min J (h) = J (hopt) . h INRS-EMT J. Benesty (14) 8 On définit l’EQM minimale normalisée comme suit: J min = Jmin σd2 = 1− (15) σd2opt σd2 . L’EQM minimale normalisée satisfait 0 ≤ J min ≤ 1. INRS-EMT J. Benesty 9 Forme canonique de l’EQM La fonction coût s’écrit: J (h) = σd2 − 2pT h + hT Rh. (16) En ajoutant et retranchant le terme pT R−1p dans l’expression précédente, nous avons: J (h) = σd2 − pT R−1p + (h − R−1p)T R(h − R−1p) = Jmin + (h − hopt)T R(h − hopt). (17) Soient λ0, λ1, · · · , λL−1 les valeurs propres de la matrice d’autocorrelation R et q0, q1, · · · , qL−1 les vecteurs propres correspondants, qui satisfont: Rql = λlql, l = 0, 1, · · · , L − 1, (18) alors la matrice Q = [q0 q1 · · · qL−1] peut diagonaliser R comme suit: R = QΛQT , (19) où Λ est une matrice diagonale. INRS-EMT J. Benesty 10 Utilisant la décompositon précédente dans l’EQM, on a: J (h) = Jmin + (h − hopt)T R(h − hopt) = Jmin + (h − hopt)T QΛQT (h − hopt) = Jmin + vT Λv = Jmin + L−1 λlvl2, (20) l=0 où le vecteur v = QT (hopt − h) = [v0 v1 · · · vL−1]T est une transformée du vecteur “misalignment” hopt − h. L’équation (20) est la forme canonique de l’EQM. Cette expression ne contient plus de termes croisés. Comme les valeurs propres λl sont non négatives, il apparait clairement que la surface d’erreur est du type paraboloide elliptique dans un hyperespace. INRS-EMT J. Benesty 11 Premier exemple Soit d(n) un signal observé dont la variance est σd2 = 0.9486. On choisit un filtre de longueur L = 2, et: 1.1 0.5 R = , 0.5 1.1 0.5272 p = . −0.4458 La surface de l’erreur quadratique moyenne s’écrit: h0 J(h0, h1) = 0.9486 − 2[0.5272, −0.4458] h1 1.1 0.5 h0 , +[h0, h1] h1 0.5 1.1 soit: J(h0, h1) = 0.9486 − 1.0544h0 + 0.8961h1 + h0h1 +1.1(h20 + h21). La figure 1 donne un tracé de l’erreur quadratique moyenne J(h0, h1) en fonction des coefficients du filtre h0 et h1. INRS-EMT J. Benesty 12 15 EQM 10 5 0 4 −4 3 −3 2 h0 −2 1 −1 0 0 h1 Figure 1: Exemple de surface de l’EQM pour un filtre à deux coefficients. Le filtre optimum est donné par l’équation de WienerHopf: 0.8363 , hopt = R−1p = −0.7854 et l’EQM minimale est: Jmin = 0.9486 − [0.5272, −0.4458] 0.8360 −0.7853 = 0.1579. Ce point est representé tout au bas de la figure 1. INRS-EMT J. Benesty 13 Second exemple: débruitage Soit x(n) un signal observé: x(n) = d(n) + u(n), (21) où d(n) est un signal utile (non observable) de moyenne nulle et u(n) est un bruit blanc (non observable) de moyenne nulle dont la variance σu2 est connue. On suppose que les signaux d(n) et u(n) sont décorrélés. L’objectif est de trouver le filtre optimal de Wiener hopt qui va débruiter le signal observé x(n). On définit le signal d’erreur: e(n) = d(n) − hT x(n) (22) et la fonction coût associée: J = E{e2(n)}. (23) La minimisation du critère précédent par rapport à h, donne: E{x(n)xT (n)}hopt = E{x(n)d(n)}, Rhopt = p. INRS-EMT J. Benesty (24) 14 Cependant le signal d(n) n’est pas observable, il est donc difficile de calculer directement p. Mais: p = E{x(n)d(n)} = E {x(n) [x(n) − u(n)]} = E {x(n)x(n)} − E {x(n)u(n)} d(n) + u(n) = E {x(n)x(n)}−E d(n − 1) + u(n − 1) u(n) . .. Finalement: 1 2 0 p = E {x(n)x(n)} − σu . . . 0 (25) A présent, l’équation (25) ne dépend plus du signal d(n) mais seulement du vecteur d’autocorrélation du signal observé et de la variance du bruit u(n). INRS-EMT J. Benesty 15 On en déduit le filtre optimal de Wiener: hopt = R−1p 1 −1 2 −1 0 = R E {x(n)x(n)} − σuR . . 0 1 2 −1 0 = I − σu R (26) .. . 0 Le filtre optimal de Wiener dépend de l’inverse de la matrice d’autocorrélation du signal observé x(n) et de la variance du bruit u(n). D’où le signal filtré optimal: dopt(n) = hToptx(n) = x(n) − σu2 vT1 R−1x(n) = x(n) − σu2 vT1 k(n) = x(n) − σu2 k0(n), INRS-EMT J. Benesty (27) 16 avec: k(n) = R−1x(n) = [k0(n) k1(n) · · · kL−1(n)]T , v1 = [1 0 · · · 0]T . La variance du signal utile est: σd2 = E d (n) 2 = E [x(n) − u(n)] 2 = σx2 + σu2 − 2E {x(n)u(n)} , or E {x(n)u(n)} = E {[d(n) + u(n)]u(n)} = σu2 , par conséquent: σd2 = σx2 − σu2 . INRS-EMT J. Benesty (28) 17 La variance du signal filtré optimal est: σd2opt = E d2opt(n) = E [x(n) − σu2 vT1 R−1x(n)]2 = σx2 + (σu2 )2vT1 R−1v1 − 2σu2 vT1 R−1E {x(n)x(n)} = σx2 + (σu2 )2vT1 R−1v1 − 2σu2 . (29) On en déduit l’erreur quadratique moyenne minimale: Jmin = σd2 − σd2opt 2 2 T −1 = σ u 1 − σ u v1 R v1 . (30) On peut voir que Jmin ≤ σu2 , ce qui veut dire que le filtre optimal de Wiener peut réduire le bruit d’un signal observé à condition que certaines statistiques de ce bruit soient connues. INRS-EMT J. Benesty 18 Résumé Signal d’erreur: e(n) = d(n) − y(n) = d(n) − hT x(n). Erreur quadratique moyenne (EQM): J = E{e2(n)}. La minimisation de J par rapport au vecteur h donne: E {emin(n)x(n)} = 0L×1, c’est le principe d’orthogonalité. l’équation de Wiener-Hopf: On en déduit Rhopt = p et le filtre optimal: hopt = R−1p. Aussi: hopt = arg min J (h) . h INRS-EMT J. Benesty 19 L’EQM peut encore s’écrire: J (h) = σd2 − 2pT h + hT Rh, et l’EQM minimale est: Jmin = min J (h) h = J (hopt) = σd2 − pT R−1p. Forme canonique de l’EQM: J (h) = Jmin + L−1 λlvl2. l=0 INRS-EMT J. Benesty 20