Traitement des signaux numériques – II Filtrage adaptatif et analyse spectrale Jacob Benesty INRS-EMT J. Benesty Plan du cours Introduction Partie I: Concepts de base • Processus stochastiques et modèles • Valeurs propres et décomposition Partie II: Filtrage linéaire optimal • Filtrage de Wiener • Prédiction linéaire Partie III: Filtrage adaptatif • Algorithme du gradient déterministe (steepest descent) • Algorithme du gradient stochastique (least-meansquare – LMS) INRS-EMT J. Benesty 1 • Variantes de l’algorithme LMS • L’algorithme LMS par bloc exact (block exact LMS – BELMS) • Méthode des moindres carrés (least squares – LS) • Algorithme des moindres carrés récursif – MCR (recursive least-squares – RLS) • Algorithme des moindres carrés récursif rapide – MCRR (fast recursive least-squares – FRLS) • Algorithmes en treillis • Introduction aveugle à la déconvolution/identification Partie IV: Analyse spectrale • Méthodes non-paramétriques • Méthodes paramétriques INRS-EMT J. Benesty 2 Manuels de référence: [1] S. Haykin, Adaptive Filter Theory. Fourth Edition, Prentice Hall, 2002. [2] J. G. Proakis and D. G. Manolakis, Digital Signal Processing: Principles, Algorithms and Applications. Third Edition, Macmillan, 1996, Chap. 12. [3] Notes + Articles, http://externe.inrs-emt.uquebec.ca/users/benesty/ INRS-EMT J. Benesty 3 Session: 10 janvier au 15 avril 2005. Horaires du cours: Lundi et vendredi de 9h15 à 10h45. Evaluation: Projet. • Fin février 2005 – Description initiale (max. pages). (Titre, problématique, objectif, plan.) 2 • Mi mars 2005 – Version préliminaire du rapport final. • Présentations orales. • Fin avril 2005 – Rapport final. INRS-EMT J. Benesty 4 Suggestions pour les projets: • Beamforming • Blind source separation • Single-channel acoustic echo cancellation • Multichannel acoustic echo cancellation • Noise reduction • Adaptive algorithms • Blind equalization and identification • Time delay estimation • Hearing aids • Voice activity detector INRS-EMT J. Benesty 5 Notations • x, x, X: scalaire, vecteur, matrice. • x(n): signal scalaire de n. • x(n): signal vecteur de n. x(n) = x(n) x(n − 1) · · · est un vecteur de longueur L. x(n − L + 1) T • n représente le temps discret. • Filtre RIF à L coefficients: h(n) = h0(n) h1(n) · · · INRS-EMT J. Benesty hL−1(n) T . 6 Introduction au filtrage adaptatif Un filtrage est rendu adaptatif si ses paramètres, les coefficients, sont modifiés selon un critère donné, dès qu’une nouvelle valeur du signal devient disponible. Ces modifications doivent suivre l’évolution des systèmes dans leur environnement aussi rapidement que possible. Le filtrage adaptatif est généralement associé avec un fonctionnement en temps réel. x(n) ENTREE FILTRE PROGRAMMABLE y(n) - + d(n) REFERENCE e(n) ALGORITHME D'ADAPTATION DES COEFFICIENTS ERREUR Figure 1: Principe d’un filtre adaptatif. INRS-EMT J. Benesty 7 Les filtres adaptatifs peuvent être classés en fonction des choix qui sont faits sur les points suivants: • le critère d’optimisation, • l’algorithme de mise à jour des coefficients, • la structure du filtre programmable, • le type de signal traité, mono ou multidimensionnel. Il existe deux classes importantes de filtres linéaires optimaux: • filtrage de Wiener (où les signaux considérés d(n) et x(n) sont stationnaires), • filtrage de Kalman (qui est une généralisation du filtre de Wiener valable aussi dans le cas de processus (ou de signaux) non stationnaires). INRS-EMT J. Benesty 8 Choix de l’algorithme Le choix de l’algorithme se fera en fonction des critères suivants: • la rapidité de convergence qui sera le nombre d’itérations nécessaires pour converger “assez près” de la solution optimale, • la mesure de cette “proximité” entre cette solution optimale et la solution obtenue, • la capacité de poursuite (tracking) des variations (non-stationnarités) du système, • la robustesse au bruit, • la complexité, • la structure (modularité, parallélisme, ...), • les propriétés numériques (stabilité et précision) dans le cas d’une précision limitée sur les données et les coéfficients du filtre. INRS-EMT J. Benesty 9 Applications Le filtrage adaptatif est un outil puissant en traitement du signal, communications numériques, et contrôle automatique. Les applications sont diverses mais présentent les caractéristiques suivantes: on dispose d’une entrée x(n) ainsi que de la réponse désirée (référence) d(n) et l’erreur e(n), qui est la différence entre d(n) et la sortie du filtre y(n), sert à contrôler (adapter) les valeurs des coefficients du filtre. Ce qui différencie essentiellement les applications provient de la façon de définir la réponse désirée d(n). On peut distinguer quatre grandes classes d’applications: • l’identification de systèmes, • la prédiction, • la modélisation inverse, • l’annulation d’interférences. INRS-EMT J. Benesty 10 1. Identification de systèmes: d(n) est la sortie du système que l’on souhaite identifier. FILTRE ADAPTATIF y(n) e(n) x(n) SYSTEME + d(n) Figure 2: Identification d’un système. INRS-EMT J. Benesty 11 2. Prédiction: d(n) est le signal à l’instant n et y(n) le signal prédit à partir du signal aux instants précédents [d(n − 1), d(n − 2), · · · ]. z −1 FILTRE ADAPTATIF y(n) e(n) + d(n) Figure 3: Principe de la prédiction. INRS-EMT J. Benesty 12 3. Modélisation inverse: d(n) est l’entrée (retardée) du système que l’on cherche à inverser. d(n) FILTRE ADAPTATIF SYSTEME y(n) e(n) z −δ + d(n − δ) Figure 4: Principe de la modélisation inverse. INRS-EMT J. Benesty 13 4. Annulation d’interférences: d(n) est un signal contenant le signal utile et les interférences à annuler. x(n) est un signal dénué (ou presque) d’information et obtenu par un capteur proche des interférences. x(n) bruit FILTRE ADAPTATIF y(n) e(n) + d(n) signal+bruit Figure 5: Annulation d’interférences. INRS-EMT J. Benesty 14 Quelques notes historiques • Le début d’une théorie sur l’estimation dans laquelle plusieurs tentatives sont faites pour minimiser une fonction d’erreur remonte à Galileo Galilei en 1632. • L’origine de la théorie sur l’estimation linéaire est créditée à Gauss qui en 1795 inventa la méthode des moindres carrés. • Les premières études utilisant l’erreur quadratique moyenne dans les processus stochastiques sont dues à Kolmogorov, Krein, et Wiener vers la fin des années 1930. • Wiener formula (en temps continu) le problème de filtrage pour estimer un processus corrompu par du bruit. • En 1947, Levinson formula le filtre de Wiener en temps discret. • Swerling et Kalman, en 1958 et 1960 respectivement, fûrent les premiers à s’attaquer aux processus non stationnaires. INRS-EMT J. Benesty 15 • Les premiers travaux sur les filtres adaptatifs ont commencé vers la fin des années 1950. • L’un de ces premiers algorithmes est l’algorithme du gradient stochastique ou LMS (least-mean-square) conçu par Widrow et Hoff en 1959. • Le LMS est très proche du concept d’approximation stochastique développé par Robbins et Monro en 1951 en statistiques. • L’algorithme RLS (recursive least-squares) standard fût inventé par Plackett en 1950. • La première version rapide du RLS fût développée par Morf en 1974. INRS-EMT J. Benesty 16