FR 2792146 A1 20001013 FR 9904329 A 19990407 La présente invention concerne la suppression d'écho dans les dispositifs utilisant des signaux audio captés par un microphone, par exemple les téléphones, fixes ou portables, de type "mains libres" ou dispositifs analogues. Ces appareils comportent un microphone sensible, captant non seulement la voix de l'utilisateur, mais également l'écho réverbéré par l'environnement où se trouve celui-ci, écho qui constitue un élément perturbateur pouvant aller, dans certains cas, jusqu'à rendre incompréhensibles les paroles du locuteur. Plus précisément, l'écho peut résulter de deux phénomènes, de natures différentes. Le premier est l'écho dit "écho de ligne", cantonné à la voie de transmission et pour lequel on connaît diverses méthodes de filtrage ; le second est l'écho dit "écho acoustique" réellement capté par le microphone, dû aux phénomènes de réverbération de l'environnement du locuteur, typiquement la pièce où il se trouve ou bien l'habitacle d'une voiture C'est à l'élimination de ce dernier type d'écho que s'attache tout particulièrement l'invention L'invention concerne un procédé utilisant un algorithme de suppression d'écho appartenant à une famille connue, à savoir celle des algorithmes dits de type APA (Affine Projection Algorithm), proposé pour la première fois en 1984 par Ozeki K. et Umeda T., "An Adaptive Filtering Algorithm Using an Orthogonal Projection to an Affine Subspace and Its Properties", Electronics and Communications in Japan, Vol. 67-A, n 5,1984. Le concept à la base de cet algorithme sera expliqué en détail plus bas dans la description d'un exemple de mise en #uvre en référence à la figure 1. Le point fort des algorithmes APA est leur convergence rapide, et ils constituent à ce titre un progrès majeur par rapport aux précédents algorithmes de suppression d'écho de type LMS (Least Mean Square) ou NLMS (Normalized LMS), qui nécessitaient quelquefois plusieurs secondes pour leur stabilisation, les rendant mal adaptés à des applications de type "mains libres" avec un débit vocal intermittent et un niveau pouvant rapidement varier Diverses améliorations ont été apportées aux algorithmes APA, en vue notamment de réduire la puissance de calcul nécessaire (en termes de temps de calcul et de taille des mémoires), tout en conservant leur avantage de rapidité de convergence. On a ainsi proposé des algorithmes dits FAP (Fast APA), voir notamment Tanaka M., Kaneda Y., Makino S. et Kojima J., "Fast Projection Algorithm and Its Step-Size Control" Proc. IEEE International Conf. Acoust , Speech, Signal Processing, 1995, vol. 2, pp. 945-948, ainsi que Gay S. et Tavathia S., "The Fast Affine Projection Algorithm" Proc IEEE International Conf, Acoust., Speech, Signal Processing, 1995, vol. 5, pp 3023-3026. Pour pallier le problème de l'instabilité numérique de l'algorithme FAP à l'inversion de la matrice de corrélation, ces techniques ont été encore améliorées, notamment par Oh S , Linebarger D , Priest B et Raghothaman B., "A Fast Affine Projection Algorithm For an Acoustic Echo Canceller using a Fixed-Point DSP processor" Proc IEEE International Conf, Acoust., Speech, Signal Processing, 1997, vol. 5, pp 4121-4124 qui, essentiellement, proposent d'approximer la matrice de corrélation par une matrice de type Toeplitz et d'inverser cette dernière par des méthodes stables et rapides, en elles-mêmes connues. Malgré ces diverses améliorations, on constate cependant que les algorithmes de type APA présentent toujours certaines faiblesses en termes de robustesse, c'est-à-dire d'immunité (i) au bruit ambiant et (ii) à la double parole, en particulier quand le signal utile (c'est-à-dire celui dont on veut éliminer l'écho) est non stationnaire, c'est-à-dire présente des variations importantes et rapides de niveaux. Ces facteurs perturbateurs sont tous typiques d'une utilisation dans un habitacle de voiture, telle que celle d'un radiotéléphone "mains libres", tout particulièrement lorsque celui-ci comporte en outre des fonctions de reconnaissance vocale pour son pilotage, comme cela est par exemple décrit dans le WO-A-98/45997 (Parrot SA). L'un des buts de l'invention est de proposer un procédé perfectionné de traitement d'un signal audio, basé sur un algorithme de type APA, susceptible d'associer l'avantage majeur des algorithmes APA connus, à savoir leur convergence rapide, à une excellente robustesse à la fois au bruit ambiant et à la double parole On verra également que le procédé de l'invention assure une adaptation automatique des paramètres opératoires de l'algorithme aux conditions changeantes rencontrées par exemple dans un habitacle de voiture, c'est- à-dire que le procédé de l'invention permet, si l'on se trouve par exemple dans une situation de moindre bruit ambiant, d'améliorer encore plus le temps de convergence de l'algorithme ou inversement, en cas d'augmentation subite du niveau de bruit et/ou de double parole, de modifier automatiquement les paramètres de l'algorithme afin de rendre ce dernier temporairement et prioritairement plus robuste, quitte à accepter une convergence moins rapide. À cet effet, l'invention propose un procédé de traitement d'un signal audio, pour la suppression de l'écho acoustique dans le signal capté par un microphone en même temps que le signal de parole d'un locuteur, ce procédé appliquant un algorithme de type APA. De façon caractéristique de l'invention, le pas de l'algorithme APA est modifié de façon adaptative et dynamique en fonction des niveaux de bruit et de double parole rencontrés à un instant donné Très avantageusement, le pas de l'algorithme est accru lorsque l'énergie du signal capté est dominée par l'énergie de l'écho, et, inversement, réduit lorsque l'énergie du signal capté est dominée par l'énergie du bruit de fond et/ou de la parole lointaine. On précisera ci-dessous diverses mises en oeuvre possibles de cette variation du pas de l'algorithme. 0 On va maintenant décrire un exemple de mise en oeuvre du procédé de l'invention, en référence aux dessins annexés. La figure 1 est un diagramme schématique illustrant les différents paramètres mis en #uvre dans un algorithme d'élimination d'écho de type APA. La figure 2 est une courbe illustrant les performances du procédé de l'invention en termes de robustesse à l'encontre du bruit ambiant, par rapport à des procédés utilisant des algorithmes connus. La figure 3 est une courbe illustrant les performances du procédé de l'invention en termes d'élimination de l'écho, par rapport à des procédés uti- lisant des algorithmes connus. 0 On va tout d'abord exposer rapidement les différents paramètres impli- qués par la mise en #uvre d'un algorithme APA connu, en référence à la figure 1 illustrant les différents signaux concernés, qui sont tous ici des si- gnaux numériques échantillonnés, et où n désigne le numéro de l'échan- tillon (n est donc la variable temporelle) Le signal capté par le microphone est Sn, qui est une combinaison de trois signaux acoustiques, à savoir le signal de parole proche zn (parole du lo- cuteur dans la voiture, dans le cas d'un téléphone de voiture), du bruit de fond du véhicule bn et de l'écho capté yn L'écho capté yn peut être décrit comme un signal de parole lointaine Xn (source de l'écho) appliqué à un filtre réel Hn# représentatif de l'environne- ment, traduit numériquement sous forme matricielle. L'élimination d'écho consiste à définir à chaque instant n un filtre de com- pensation Hn recevant en entrée un signal xn et délivrant en sortie un si- gnal #y0 qui sera combiné au signal Sn capté par le microphone pour don- ner un signal de sortie en débarrassé de l'écho parasite yn L'algorithme APA peut être défini par les trois équations suivantes Les paramètres de ces équations sont les suivants : En =Leo.nel,n"'eN 1,,,[ est un vecteur représentatif du signal de sortie en précité, - Sn UsnSn-lpSn-N+1 est un vecteur représentatif du signal capté Sn précité, - N est l'ordre de l'algorithme (une valeur typique étant N = 5), Xn est une matrice représentative du signal d'excitation, matrice de dimension L (longueur du filtre) sur N (ordre de projection) et qui a la structure : X = lx. 1 Xn-1, ... , X"-(N +1) 1 avec Xn = [Xn 1 Xn- 1 ... , Xn-L+l it - Hn = [ho,,,,h,,,,...,hL-I,J est un vecteur représentatif du filtre adaptatif à la période d'échantillonnage n, avec Sn = X'nH*n +Wn, - le scalaire 8n est le paramètre de régularisation pour la matrice in- verse d'autocorrélation des échantillons : en effet, comme X'nXn pour- rait avoir des valeurs propres voisines de zéro conduisant à des diffi- cultés d'inversion, on définit #n comme plus petite valeur propre pour XXn +8nI, de sorte que si l'on prend 8n suffisamment grand la ma- trice inverse présente un comportement satisfaisant, - enfin, n est le paramètre de dimension du pas (on montre que l'algo- rithme est stable lorsque 0 L'invention consiste essentiellement à faire varier ce dernier paramètre de façon adaptative et dynamique, de manière à optimiser les résultats procurés par l'algorithme en fonction, notamment, des niveaux de bruit et de double parole rencontrés à un instant donné. Ainsi, si, en termes d'énergie, le signal capté Sn est dominé par l'énergie de l'écho Yn, on choisira un pas grand afin d'aboutir à une convergence rapide , inversement, si le niveau de Sn est dominé par l'énergie du bruit de fond B n et/ou de la parole lointaine Zn , alors on réduira le pas pour augmenter la robustesse au bruit et à la double parole. On peut exprimer cette valeur, variable, du pas par l'expression suivante : Le paramètre p est un taux de réduction de l'écho, compris entre 0 et 1 (typiquement 10-1 ou 10-2), déterminé de manière que l'énergie moyenne de l'écho résiduel an soit asymptotiquement inférieure, plus précisément p fois inférieure ( p Par ailleurs, Rn indique la matrice de corrélation à l'instant n, matrice de dimension N x N : R,, = X' X,, +,5,,1 . Pour permettre divers compromis entre une convergence rapide et une faible erreur résiduelle, on peut introduire le paramètre a # 1 tel que Cette variable, que l'on peut définir comme une variable de compromis convergence/robustesse, peut prendre typiquement une valeur de l'ordre de 4 à 10 On notera que la valeur de pas ainsi définie est inférieure à la valeur classique 2/ad'un algorithme APA, concourant ainsi à une plus grande stabilité. Par ailleurs, dans cette expression, on remarque que la variation du pas dépend du rapport signal/bruit du signal de référence dans le sous-es- pace de projection SR'Sn /W: ElWn. Plus le rapport S/B est faible, plus le pas d'adaptation doit être faible ; àl'inverse, des valeurs élevées de ce rapport S/B réduisent la dimension du pas pour le faire tendre vers une valeur comparable à la valeur qu'il aurait dans un algorithme APA classique. D'autre part, lorsque le signal de référence inclut un bruit important (bruit de fond ou parole proche), la dimension du pas se réduit, limitant de ce fait les conséquences néfastes de l'adaptation telle qu'elle était opérée antérieurement, qui produisait une évolution erratique du filtre adaptatif. Pour simplifier le procédé, notamment du fait qu'il n'est pas possible de mesurer WntRn-1Wn, il est possible d'approximer par excès cette dernière valeur par la quantité EnrRn-1En, donnant ainsi une valeur de pas : Cette approximation conduit à une taille de pas plus faible, donc à une convergence plus lente, mais avec une robustesse supérieure Pour sa mise en #uvre, notamment pour l'inversion de la matrice de corrélation Rn, il est possible d'utiliser les méthodes de calcul FAP connues, telles que celles proposées par les articles de Gay et coll. et Oh et coll précités, auxquels on pourra se référer pour de plus amples détails. Les figures 2 et 3 illustrent les performances de l'algorithme de l'invention, désigné "VSSFAP" (Variable Step-Size FAP), par rapport à des algorithmes connus NLMS et FAP. Ces caractéristiques ont été déterminées avec les paramètres suivants échantillonnage de la parole à une fréquence de 8 kHz , longueur de filtre L = 256 (valeur suffisante pour le temps d'écho maximum susceptible d'être rencontré dans un véhicule) ; de l'algorithme N = 5 , taux de réduction de l'écho p = 1/8 , variable de compromis convergence/robustesse a = 4 , et 8 = 20 eT:où #x2est une puissance moyenne de xn avec un facteur d'oubli # = (3L-1)/3L. Les trois algorithmes VSSFAP, NLMS et FAP ont été mis en #uvre dans les mêmes conditions, sur la base d'un signal d'excitation EXC et d'un signal de référence REF reproduits sur les courbes des figures 2 et 3 Sur ces courbes, on a porté en abscisse le temps, exprimé en nombre d'échantillons Ns, et en ordonnée la performance ERLE (Echo Return Loss Enhancement), paramètre classiquement utilisé pour évaluer l'efficacité des procédés de suppression d'écho. On a illustré la performance ERLE de réduction d'écho de l'invention, dans le cas d'une réponse à un signal de référence contenant le signal d'excitation fortement bruité (figure 2), et d'une réponse au seul signal d'excitation (figure 3). Comme on peut le voir aisément, les performances du procédé de l'invention sont, en termes de réduction d'écho, tout à fait comparables à celles d'un algorithme FAP classique, avec en revanche une très nette amélioration des performances en termes de robustesse au bruit de fond (voir figure 2). La robustesse à la double parole par rapport au FAP et au NLMS est, quant à elle, confirmée par des séries de tests d'écoute subjectifs. Ces performances rendent l'algorithme de l'invention particulièrement efficace dans des environnements particulièrement perturbés tels que ceux des habitacles de véhicules automobiles (cette application, bien que particulièrement intéressante, n'étant bien entendu pas limitative de l'invention). REVENDICATIONS 1. Un procédé de traitement d'un signal audio, pour la suppression de l'écho acoustique dans le signal (sn) capté par un microphone en même temps que le signal de parole d'un locuteur, ce procédé appliquant un algorithme de type APA, caractérisé en ce que le pas (,un ) de l'algorithme APA est modifié de façon adaptative et dynamique en fonction des niveaux de bruit et de double parole rencontrés à un instant donné 2. Le procédé de la revendication 1, dans lequel le pas de l'algorithme est accru lorsque l'énergie du signal capté (Sn) est dominée par l'énergie de l'écho (Yn), et, inversement, réduit lorsque l'énergie du signal capté (Sn) est dominée par l'énergie du bruit de fond (En) et/ou de la parole lointaine (Zn). 3. Le procédé de la revendication 1, dans lequel le pas de l'algorithme est donné par : p étant un taux de réduction de l'écho, compris entre 0 et 1, déterminé de manière que l'énergie moyenne de l'écho résiduel ([alpha]n) soit asymptotiquement p fois inférieure à l'énergie moyenne du signal de sortie Sn, Sn =t--)'"'-iv+)î étant un vecteur représentatif du signal capté Sn, fin étant la matrice de corrélation à l'instant n, et Wn étant tel que S" = X'nHn*+ Wn. 4. Le procédé de la revendication 1, dans lequel le pas de l'algorithme est donné par : a (a # 1) étant une variable de compromis convergence/robustesse de valeur prédéterminée. 5 Le procédé de la revendication 1, dans lequel le pas de l'algorithme est donné par : En=eo,n,e,.n,,eN~,,"' étant un vecteur représentatif du signal de sortie (en) délivré par l'algorithme, et la variable a étant comprise entre 4 et 10.