Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR VARIABLE PITCH ECHO CANCELLATION
Document Type and Number:
WIPO Patent Application WO/2022/079365
Kind Code:
A1
Abstract:
The processing of a signal y(t) from a microphone (MIC) of a device further comprising at least one loudspeaker (HP) intended to be powered by a signal x(t) aims to limit an echo effect induced by the microphone (MIC) picking up a sound emitted by the loudspeaker (HP) in the surroundings of the device. Said sound emitted by the loudspeaker (HP) and any acoustic reflections thereof follow an acoustic path w from the loudspeaker (HP) to the microphone (MIC). In order to limit the echo effect, the processing comprises determining ŝ(t) a useful signal s(t) by subtracting from the signal y(t) from the microphone (MIC) a given estimate of an echo signal x(t) ∗ ŵ(t) by applying a filter ŵ(t) to the loudspeaker power supply signal x(t). The filter ŵ(t) is adaptive by variable pitch to account for a change in the acoustic path w(t) over time. Since the loudspeaker power supply signal x(t) is obtained in the form of a time sequence of frames of signal samples, the adaptive filter ŵ(t) is produced at each frame k of samples according to an update ΔW(k) of the acoustic path w for said frame k and by applying a normalisation Λ satisfying a selected criterion for minimal variance, the normalisation Λ being a function of a parameter representative of a statistical expectation of the useful signal s(t).

Inventors:
GAULTIER CLÉMENT (FR)
GUERIN ALEXANDRE (FR)
EMERIT MARC (FR)
PALLONE GRÉGORY (FR)
Application Number:
PCT/FR2021/051659
Publication Date:
April 21, 2022
Filing Date:
September 27, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ORANGE (FR)
International Classes:
G10L21/0208; H04B3/23; H04M9/08
Other References:
PAEZ BORRALLO JOSEM ET AL: "On the implementation of a partitioned block frequency domain adaptive filter (PBFDAF) for long acoustic echo cancellation", SIGNAL PROCESSING, ELSEVIER SCIENCE PUBLISHERS B.V. AMSTERDAM, NL, vol. 27, no. 3, 1 June 1992 (1992-06-01), pages 301 - 315, XP026671891, ISSN: 0165-1684, [retrieved on 19920601], DOI: 10.1016/0165-1684(92)90077-A
TOON VAN WATERSCHOOT ET AL: "Double-Talk-Robust Prediction Error Identification Algorithms for Acoustic Echo Cancellation", IEEE TRANSACTIONS ON SIGNAL PROCESSING, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 55, no. 3, 1 March 2007 (2007-03-01), pages 846 - 858, XP011165458, ISSN: 1053-587X, DOI: 10.1109/TSP.2006.887155
TRUMP T: "A frequency domain adaptive algorithm for colored measurement noise environment", ACOUSTICS, SPEECH AND SIGNAL PROCESSING, 1998. PROCEEDINGS OF THE 1998 IEEE INTERNATIONAL CONFERENCE ON SEATTLE, WA, USA 12-15 MAY 1998, NEW YORK, NY, USA,IEEE, US, vol. 3, 12 May 1998 (1998-05-12), pages 1705 - 1708, XP010279982, ISBN: 978-0-7803-4428-0, DOI: 10.1109/ICASSP.1998.681786
GAULTIER CLEMENT ET AL: "Double-Talk Robust Acoustic Echo Cancellation Using Partition Block Frequency-Domain Adaptive Filtering", 2021 29TH EUROPEAN SIGNAL PROCESSING CONFERENCE (EUSIPCO), 23 August 2021 (2021-08-23), pages 171 - 175, XP055876404, Retrieved from the Internet DOI: 10.23919/EUSIPCO54536.2021.9616039
BORRALLO, J. P.OTERO, M. G.: "On the implementation of a partitioned block frequency domain adaptive filter (PBFDAF) for long acoustic echo cancellation", SIGNAL PROCESSING, vol. 27, no. 3, 1992, pages 301 - 315, XP026671891, DOI: 10.1016/0165-1684(92)90077-A
TRUMP, T.: "Proceedings of the 1998 IEEE International Conférence on Acoustics, Speech and Signal Processing", vol. 3, May 1998, IEEE, article "A frequency domain adaptive algorithm for colored measurement noise environment", pages: 1705 - 1708
JUNG, H. K.KIM, N. S.KIM, T.: "A new double-talk detector using echo path estimation", SPEECH COMMUNICATION, vol. 45, no. 1, 2005, pages 41 - 48, XP025258393, DOI: 10.1016/j.specom.2004.09.005
VAN WATERSCHOOT, T.ROMBOUTS, G.VERHOEVE, P.MOONEN, M.: "Double-talk-robust prédiction error identification algorithms for acoustic echo cancellation", IEEE TRANSACTIONS ON SIGNAL PROCESSING, vol. 55, no. 3, 2007, pages 846 - 858, XP011165458, DOI: 10.1109/TSP.2006.887155
GIL-CACHO, J. M.VAN WATERSCHOOT, T.MOONEN, M.JENSEN, S. H.: "A frequency-domain adaptive filter (FDAF) prédiction error method (PEM) framework for double-talk-robust acoustic echo cancellation", IEEE/ACM TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, vol. 22, no. 12, 2014, pages 2074 - 2086, XP011561185, DOI: 10.1109/TASLP.2014.2351614
Download PDF:
Claims:
Revendications

[Revendication 1] Procédé de traitement d'un signal y(t) issu d'au moins un microphone (MIC) d'un équipement, l'équipement comportant en outre au moins un haut-parleur (HP) destiné à être alimenté par un signal x(t). le traitement dudit signal y(t) issu du microphone (MIC) :

- visant au moins une limitation d'un effet d'écho induit par une captation par le microphone (MIC) d'un son émis par le haut-parleur (HP) dans un environnement de l'équipement, ledit son émis par le haut-parleur (HP) et ses éventuelles réflexions acoustiques suivant un chemin acoustique w du haut-parleur (HP) jusqu'au microphone (MIC),

- et comportant, pour limiter l'effet d'écho, une détermination d'un signal utile s(t) par retranchement au signal y(t) issu du microphone (MIC) d'une estimation d'un signal d'écho donnée par l'application d'un filtre au signal x(t) d'alimentation du haut-parleur, le filtre étant adaptatif par pas variable pour tenir compte d'une évolution dans le temps dudit chemin acoustique w(t), procédé dans lequel :

* le signal x(t) d'alimentation du haut-parleur est obtenu sous la forme d'une succession dans le temps de trames d'échantillons de signal, et

* le filtre adaptatif est élaboré à chaque trame k d'échantillons en fonction d'une mise à jour ΔW(k) du chemin acoustique w(t) pour cette trame k et en appliquant une normalisatio Λn respectant un critère choisi pour une variance minimale, ladite normalisation Λ étant fonction d'un paramètre représentatif d'une espérance statistique du signal utile s(t).

[Revendication 2] Procédé selon la revendication 1 , dans lequel le critère choisi est de type « BLUE » pour “Best Linear Unbiased Estimate".

[Revendication 3] Procédé selon la revendication précédentes, dans lequel le filtre adaptatif est élaboré dans un domaine de sous-bandes fréquentielles f, et ladite normalisation Λ est fonction d'un paramètre correspondant à une densité spectrale de puissance du signal utile s. [Revendication 4] Procédé selon la revendication 3, dans lequel ladite normalisation Λ(k) est définie en fonction :

- de la densité spectrale de puissance du signal utile s, et

- de la densité spectrale de puissance du signal x alimentant le haut-parleur.

[Revendication 5] Procédé selon la revendication 4, dans lequel, dans une représentation matricielle où f désigne un indice de ligne et b un indice de colonne, la normalisation Λ(k)(f.b) est donnée par : avec μ ∈ [0,2[, et où y est un coefficient positif choisi.

[Revendication 6] Procédé selon l'une des revendications 4 et 5, dans lequel la densité spectrale de puissance du signal utile s est estimée en fonction d'une densité spectrale de puissance du signal y capté par le microphone, et d'une représentation d'un rapport d'énergies d'écho à signal.

[Revendication 7] Procédé selon la revendication 6, dans lequel, dans une représentation matricielle où f désigne un indice de ligne et b un indice de colonne, la densité spectrale de puissance du signal utile s est donnée par : où A est une limite positive choisie, et est la densité spectrale de puissance du signal utile s évaluée pour une trame précédente k-1 , dans une sous- bande de fréquences f et pour la partition b.

[Revendication 8] Procédé selon l'une des revendications 6 et 7, dans lequel la représentation du rapport d'énergies d'écho à signal est estimée en fonction au moins d'une densité inter-spectrale de puissance entre le signal y issu du microphone et le signal X destiné à alimenter le haut-parleur.

[Revendication 9] Procédé selon la revendication 8, dans lequel, dans une représentation matricielle où f désigne un indice de ligne et b un indice de colonne, la représentation du rapport d'énergies d'écho à signal est donnée par : où β est un facteur d'oubli positif et inférieur à 1 , la notation (k-1) se référant à une expression déterminée pour une trame précédente (k-1).

[Revendication 10] Procédé selon la revendication 9, dans lequel la densité interspectrale de puissance est donnée par : avec {α, δ, η, ζ } ∈]0,1].

[Revendication 11] Procédé selon l'une des revendications 9 et 10, dans lequel les densités spectrales de puissance :

- du signal destiné à alimenter le haut-parleur, représenté par une matrice X, et

- du signal issu du microphone, représenté par un vecteur y, sont données respectivement par : , et

15 où α et η sont des facteurs d'oubli supérieurs à 0 et inférieurs à 1 .

[Revendication 12] Procédé selon l'une des revendications précédentes, dans lequel le filtre adaptatif est un filtre w à réponse impulsionnelle finie d'une longueur de N échantillons et découpé en partitions wb de L échantillons chacune.

[Revendication 13] Procédé selon la revendication 12, dans lequel on estime une matrice W e CMxB correspondant à une expression dans un domaine transformé des partitions wb telles que W = [w1, ...,wB], wb ∈ CM, et représentant le filtre dans le domaine transformé, avec wb = Fwb, F ∈ CMxL, M ≥ L, où F est une matrice de transformation de domaine, et dans lequel, pour chaque trame temporelle notée xb ∈ RM , de M échantillons du signal destiné à alimenter le haut-parleur x(t) , on forme une matrice X ∈ CMxB correspondant aux transformées des B dernières trames xb telles que X = [x1,...,xB],xb ∈ CM, avec xb = Fxb , et pour une trame temporelle y ∈ RL du signal issu du microphone y(t), on forme un vecteur y ∈ CM .

[Revendication 14] Procédé selon la revendication 13, dans lequel le vecteur y est tel que :

[Revendication 15] Procédé selon l'une des revendications 13 et 14, dans lequel la mise à jour du chemin acoustique ΔW(k) pour une trame courante k est donné par où :

- « o » dénote le produit de Hadamard,

- G ∈ RMxM est une matrice donnée par l'une ou l'autre des équations :

G = FFH et G = IM,

- , est une matrice représentant la normalisation précitée, et

- e(k) est une erreur a priori estimée à partir des signaux x et y pour la trame k.

[Revendication 16] Procédé selon la revendication 15, dans lequel l'erreur a priori est donnée par :

[Revendication 17] Procédé selon l'une des revendications précédentes, dans lequel le filtre adaptatif est mis à jour d'une trame courante k à une trame suivante k+1 en fonction d'une mise à jour du chemin acoustique ΔW(k) estimée pour la trame courante k , selon une relation du type : w(k+1) = W(k) + ΔW(k)

[Revendication 18] Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l'une des revendications 1 à 17 lorsque ce programme est exécuté par un processeur. [Revendication 19] Dispositif de traitement d'un signal y(t) issu d'au moins un microphone (MIC), comportant un processeur (PROC) configuré pour exécuter un procédé selon l'une des revendications 1 à 17.

Description:
Description

Titre : Procédé et dispositif pour une annulation d’écho à pas variable

Domaine technique

[0001] La présente description concerne un procédé et un dispositif d'annulation d'écho.

Technique antérieure

[0002] Dans le contexte de captation et reproduction sonore simultanée, il convient d'avoir recours à un traitement d'annulation d'écho acoustique (ou « AEC » ci- après).

[0003] Comme présenté sur la figure 1 , un équipement comporte au moins un haut- parleur HP et au moins un microphone MIC captant un signal microphonique y(t). Le haut-parleur HP est alimenté par un signal x(t) qui, lorsqu'il est émis par le haut- parleur HP, est transformé par l'environnement (réverbérations éventuelles, effet Larsen, ou autres) et est capté par le microphone avec un signal utile s(t) en cours d'acquisition par le microphone MIC. Ainsi, le signal microphonique y(t) est composé :

- du signal utile s(t) (s'agissant possiblement de données de signal de parole d'une conversation, de commandes vocales, ou autres), appelé aussi ci-après selon le contexte « signal d'intérêt s(t) » ou encore « signal local s », et

- d'un signal z(t) , d'écho, émis par un système de reproduction sonore que comporte l'équipement et constitué d'un ou plusieurs haut-parleurs HP.

[0004] Ce signal d'écho est associé au chemin direct entre le microphone et le système de reproduction, ainsi qu'à toutes les réflexions éventuelles du signal x(t) dans l'environnement de propagation.

[0005] Le chemin acoustique global peut être modélisé par un filtre w à réponse impulsionnelle finie dont la longueur dépend des caractéristiques de l'environnement de propagation de telle sorte que : z(t) = x(t) * w(t) [0006] L'opération consistant à ôter du signal microphonique y(t) la contribution du signal d'écho z(t) est appelée “annulation d'écho acoustique" (ou AEC). Un traitement pour réaliser cette opération peut consister à dériver un signal d'écho à partir de l'estimation d'un chemin acoustique : cette opération est appelée « filtrage adaptatif ». Le signal utile estimé ( ) est dérivé en retranchant le signal d'écho estimé au signal microphonique y(t), comme suit :

[0007] Le filtrage adaptatif est généralement réalisé à partir de la corrélation entre le signal microphonique et le signal du haut-parleur, en exploitant l'indépendance statistique du signal émis par le haut-parleur x(t) et du signal d'intérêt s(t). En pratique, il convient de mener ce traitement avec une échéance à court-terme pour traquer les changements du canal acoustique représenté par le filtre w (et dénommé ci-après par commodité trajet acoustique w). Ces changements peuvent se manifester typiquement lorsque le locuteur se déplace dans une pièce formant l'environnement précité.

[0008] Une résultante de ce traitement à court-terme est que l'indépendance statistique entre le signal d'intérêt s(t) et le signal du haut-parleur x(t) peut ne plus être vérifiée dans certaines situations, sauf un cas trivial où le signal s(t) est nul. En effet, cette indépendance n'est plus vraie lorsqu'elle est calculée sur des fenêtres de temps courtes de l'ordre de quelques dizaines à centaines de millisecondes, correspondant typiquement à une longueur de trame habituelle de signal numérique.

[0009] Il en résulte, dans ces situations dites de « double parole », c'est à dire lorsque le signal utile s(t) est non nul, un biais dans l'estimation du canal acoustique, dégradant l'annulation d'écho. Les solutions peu complexes basées sur des traitements utilisant un gradient stochastique par exemple, tel que la technique dite “Normalized Least Mean Square" (NLMS) et ses dérivées sont très sensibles à la présence de signal local s(t). Lors de ces situations de double parole, si le filtre continue à s'adapter, il peut même diverger et provoquer finalement une amplification de l'écho, à l'inverse de l'effet recherché. Aussi, pour être efficace, la solution de filtrage adaptatif doit être robuste aux situations de double parole tout en étant capable de traquer rapidement les changements de chemin acoustique. [0010] Idéalement, ce filtrage devrait exploiter uniquement les données en jeu, à savoir le signal de référence x(t) et le signal microphonique y(t).

[0011] Pour pallier les situations de double parole, certains traitements connus de filtrage adaptatif mettent en œuvre des systèmes de détection de double parole (DTD). Un système de ce type est décrit par exemple dans la référence [@jung2005new] dont les détails de publication sont donnés en annexe à la fin de la présente description. De tels systèmes désactivent l'adaptation lors de périodes identifiées de double parole. Cependant, en pratique, les DTD souffrent de délai à la détection, ce qui peut amener à des remontées d'écho. D'autre part, dans ce cas précis de décision binaire, l'adaptation du filtre est figée durant la période de double- parole, ce qui est gênant en pratique si le filtre n'a pas encore terminé de converger, entraînant un écho résiduel perceptible.

[0012] D'autres méthodes ont proposé de dériver plutôt un pas d'adaptation dans l'estimation du chemin acoustique. Dans les références connues, ce pas est continu. De telles réalisations permettent, au contraire des approches par décision binaire comme les DTD, de continuer à traquer le chemin acoustique, y compris en période de double-parole. Ces types d'adaptation sont généralement dérivés par bandes de fréquences, comme suit :

[0013]

[0014] où ΔW est la mise à jour à chaque instant k et à chaque fréquence f du canal acoustique estimé

[0015] Le fait de travailler en fréquence permet d'une part de rendre la convergence plus uniforme sur toute l'étendue fréquentielle considérée. D'autre part, la parcimonie spectrale des signaux permet de continuer à estimer le canal acoustique dans une bande de fréquences tout en figeant l'estimation dans une autre. Certaines méthodes appelées « Variable Step-Size » ou VSS proposent de moduler l'adaptation AW en fonction de différents critères.

[0016] Il a été tenté de lisser l'adaptation stochastique en gelant les itérations jugées trop aléatoires afin d'éviter notamment les mises-à-jour aléatoires dues à la présence de double-parole. [0017] Il a été tenté aussi de mesurer directement le taux de présence de parole locale, sous forme de ratio entre l'énergie du signal local et celle du signal d'écho mais cette adaptation devient figée lorsque ce ratio est trop important. Les estimations des variances étant particulièrement bruitées, leur exploitation directe dans la modulation du pas d'adaptation rend en pratique ces approches peu efficaces : elles figent trop l'adaptation, ralentissant la vitesse de convergence, ou elles limitent trop faiblement la désadaptation en période de double parole.

[0018] D'autres méthodes se basent sur une solution optimale de pas d'adaptation qui garantit une variance minimale du filtre estimé, en vue d'un écho minimal. Ce critère est nommé « BLUE » pour “Best Linear Unbiased Estimate" [@trump1998frequency]. La mise à jour du chemin acoustique (ΔW (k) ) dans le processus de filtrage adaptatif suivant ce critère permet de limiter l'écho résiduel lié aux variations du filtre adaptatif autour de sa solution (minimum en variance). Toutefois, en pratique, l'expression de BLUE dépend des statistiques au second- ordre du signal s(t) (et plus précisément sa matrice d'autocorrélation statistique ) qui sont non seulement inconnues et généralement variables dans le temps comme c'est le cas pour des signaux non stationnaires comme la parole typiquement [@van2007double]. La solution présentée dans [@trump1998frequency] n'est donc pas encore pleinement satisfaisante.

Résumé

[0019] L'invention vient améliorer la situation.

[0020] Il est proposé un procédé de traitement d'un signal y(t) issu d'au moins un microphone d'un équipement, l'équipement comportant en outre au moins un haut- parleur destiné à être alimenté par un signal x(t), le traitement dudit signal y(t) issu du microphone :

- visant au moins une limitation d'un effet d'écho induit par une captation par le microphone d'un son émis par le haut-parleur dans un environnement de l'équipement, ledit son émis par le haut-parleur et ses éventuelles réflexions acoustiques suivant un chemin acoustique w (t) du haut-parleur jusqu'au microphone,

- et comportant, pour limiter l'effet d'écho, une détermination d'un signal utile s(t) par retranchement au signal y(t) issu du microphone d'une estimation d'un signal d'écho donnée par l'application d'un filtre au signal x(t) d'alimentation du haut-parleur, le filtre étant adaptatif par pas variable pour tenir compte d'une évolution dans le temps dudit chemin acoustique w(t), procédé dans lequel :

* le signal x(t) d'alimentation du haut-parleur est obtenu sous la forme d'une succession dans le temps de trames d'échantillons de signal, et

* le filtre adaptatif est élaboré à chaque trame k d'échantillons en fonction d'une mise à jour ΔW (k) du chemin acoustique w(t) pour cette trame k et en appliquant une normalisatio Λn respectant un critère choisi pour une variance minimale, ladite normalisatio Λn étant fonction d'un paramètre représentatif d'une espérance statistique du signal utile s(t).

[0021] Une telle mise en œuvre offre, comme détaillé plus loin, une solution d'annulation d'écho acoustique, qui est robuste aux situations de double parole notamment.

[0022] Dans une réalisation, le critère choisi, précité, est de type « BLUE » pour “Best Linear Unbiased Estimate".

[0023] L'espérance statistique précitée peut s'écrire E{ss H } dans le cas d'une représentation matricielle du signal utile s (s H désignant la transposée de la conjuguée de la matrice s). Par exemple dans le domaine temporel et dans le cas d'une représentation simplement scalaire, elle peut dépendre d'un paramètre temporel τ, et s'écrire E{s(t)s(t - τ)} .

[0024] Dans le domaine fréquentiel, l'espérance statistique précitée peut être représentée par un paramètre correspondant à une densité spectrale de puissance. Ainsi, dans une mise en œuvre où le filtre adaptatif est élaboré par exemple dans un domaine de sous-bandes fréquentielles f, son expression peut être fonction d'un paramètre correspondant à la densité spectrale de puissance du signal utile s(f) . En particulier, la normalisation précitée Λ(f) , exprimée dans le domaine fréquentiel, est elle-même fonction d'un paramètre correspondant à une densité spectrale de puissance du signal utile s.

[0025] Dans une telle réalisation, ladite normalisation Λ (k) est définie plus précisément en fonction de la densité spectrale de puissance du signal utile s, et aussi de la densité spectrale de puissance du signal x alimentant le haut- parleur.

[0026] Dans cette réalisation, dans une représentation matricielle où f désigne un indice de ligne (et aussi un indice de sous-bande de fréquences, ici) et b un indice de colonne, la normalisation Λ (k) (f,b) peut être donnée par : avec μ ∈ [0,2 [, et où γ est un coefficient positif choisi

(ce choix pouvant être empirique dans le cadre d'une mise en œuvre pratique).

[0027] La densité spectrale de puissance du signal utile s peut être estimée elle-même en fonction d'une densité spectrale de puissance du signal y capté par le microphone, et d'une représentation d'un rapport d'énergies d'écho à signal.

[0028] Dans cette réalisation, dans une représentation matricielle où f désigne un indice de ligne et b un indice de colonne, la densité spectrale de puissance du signal utile s est donnée par : où A est une limite positive choisie (par exemple un terme positif choisi « très grand » en pratique, tel que 10 10 ), et est la densité spectrale de puissance du signal utile s évaluée pour une trame précédente k-1 , dans une sous- bande de fréquences f et pour la partition b.

[0029] La représentation du rapport d'énergies d'écho à signal peut elle-même être estimée en fonction au moins d'une densité inter-spectrale de puissance entre le signal y issu du microphone et le signal X destiné à alimenter le haut-parleur. [0030] Par exemple, dans une représentation matricielle où f désigne un indice de ligne et b un indice de colonne, la représentation du rapport d'énergies d'écho à signal peut être donnée par : où β est un facteur d'oubli positif et inférieur à 1 , la notation (k-1) se référant à une expression déterminée pour une trame précédente (k-1).

[0031] Dans cette expression, la densité inter-spectrale de puissance peut être donnée par : avec {α, δ, η, ζ } ∈]0,1].

[0032] Les densités spectrales de puissance du signal destiné à alimenter le haut- parleur X et du signal y issu du microphone peuvent être données, dans une représentation matricielle où X est une matrice et y un vecteur, par : où α et η sont des facteurs d'oubli supérieurs à 0 et inférieurs à 1 . Ici, la norme au carré d'une matrice (ou d'un vecteur), notée I. I 2 , est définie comme la matrice des normes au carré de chaque élément de la matrice.

[0033] Dans une réalisation offrant des avantages quant à l'estimation du filtre adaptatif, ce dernier peut être représenté par des partitions successives. Ainsi, dans une telle réalisation, le filtre w peut être de type à réponse impulsionnelle finie et d'une longueur de N échantillons. Il est en particulier découpé en partitions w b de L échantillons chacune.

[0034] Dans une telle réalisation, on peut estimer une matrice W ∈ C MxB correspondant à une expression dans un domaine transformé (par exemple dans le domaine précité de sous-bandes de fréquences) des partitions w b telles que W = [w 1 ,...,w B ],w b ∈ C M , et représentant le filtre dans le domaine transformé, avec w b = Fw b , F ∈ C MxL , M ≥ L, où F est une matrice de transformation de domaine.

[0035] On relèvera que dans cette réalisation, l'indice précité « b » de colonne peut correspondre ici à un indice de partition w b . Néanmoins, la représentation matricielle présentée ci-avant avec des indices de lignes f et des indices de colonnes b peut s'appliquer à d'autres situations que celle impliquant une partition du filtre. A titre d'exemple illustratif immédiat, les formules données ci-avant restent valables dans un mode de réalisation dégradé où b=1 par exemple, qui n'implique donc pas de partition.

[0036] Par ailleurs, pour chaque trame temporelle notée x b ∈ R M , de M échantillons du signal destiné à alimenter le haut-parleur x(t) , on forme une matrice X ∈ C MxB représentant le signal destiné à alimenter le haut-parleur et correspondant aux transformées des B dernières trames x b telles que X = [x 1 ,...,x B ],x b ∈ C M , avec x b = Fx b . Pour une trame temporelle y ∈ R L du signal issu du microphone y(t), on forme enfin un vecteur y ∈ C M .

[0037] Ce vecteur y peut être construit tel que :

[0038] Dans ce formalisme, la mise à jour du chemin acoustique ΔW (k) pour une trame courante k peut alors être donnée par où :

- « o » dénote le produit de Hadamard,

- G ∈ R MxM est une matrice donnée par l'une ou l'autre des équations :

G = FF H et G = I M ,

- est une matrice représentant la normalisation précitée, et

- e (k) est une erreur a priori estimée à partir des signaux x et y pour la trame k.

[0039] L'erreur a priori peut être donnée par : [0040] Dans une réalisation où le filtre adaptatif est mis à jour d'une trame courante k à une trame suivante k+1 en fonction d'une mise à jour du chemin acoustique ΔW (k) , cette mise à jour peut être estimée pour la trame courante k , et la mise à jour du chemin acoustique est donnée par une relation du type :

[0041] La présente description vise aussi un programme informatique comportant des instructions pour la mise en œuvre du procédé ci-avant lorsque ce programme est exécuté par un processeur. Selon un autre aspect, il est proposé un support d'enregistrement non transitoire, lisible par un ordinateur, sur lequel est enregistré un tel programme.

Elle vise aussi un dispositif de traitement d'un signal y(t) issu d'au moins un microphone, comportant un processeur configuré pour exécuter un procédé tel que défini ci-avant.

Brève description des dessins

[0042] D'autres caractéristiques, détails et avantages apparaîtront à la lecture de la description détaillée ci-après, et à l'analyse des dessins annexés, sur lesquels :

Fig. 1

[0043] [Fig. 1] montre un équipement dans le cadre duquel l'objet de la présente description peut être mis en œuvre, selon un mode de réalisation.

Fig. 2

[0044] [Fig. 2] montre un traitement selon un mode de réalisation pour délivrer le signal utile précité.

Fig. 3

[0045] [Fig. 3] montre un traitement selon un mode de réalisation pour délivrer une mise à jour de l'estimation du chemin acoustique, précité.

Fig. 4 [0046] [Fig. 4] montre un dispositif pour une mise en œuvre de l'objet de la présente description, selon un mode de réalisation.

Description des modes de réalisation

[0047] Les dessins et la description ci-après contiennent, pour l'essentiel, des éléments de caractère certain. Ils pourront donc non seulement servir à mieux faire comprendre la présente divulgation, mais aussi contribuer à sa définition, le cas échéant.

[0048] La présente description propose ci-après une solution d'annulation d'écho acoustique robuste aux situations de double parole. Elle repose sur un traitement de filtrage adaptatif par exemple de type NLMS, appliqué successivement à chaque trame d'une succession de trames typiquement. On entend ici par trame un nombre donné d'échantillons successifs du signal alimentant le haut-parleur x(t), ce signal étant présumé numérique bien entendu.

[0049] Dans un mode de réalisation, le filtre utilisé pour le filtrage adaptatif est partitionné (la longueur de chaque partition pouvant correspondre ou non à la longueur d'une trame), préférentiellement dans le domaine fréquentiel (technique dite ici “Partitioned-Block Frequency Domain NLMS", ou « PBFD-NLMS »). Une technique de ce type est présentée par exemple dans la référence [@borrallo1992 implementation].

[0050] Plus particulièrement ici, la solution se base sur une dérivation du pas optimal BLUE, mais en estimant les statistiques nécessaires directement des signaux de référence et microphonique sans ajout d'information auxiliaire. Cela permet de calculer ΔW (k) sans modèle de prédiction d'erreur ou d'a priori sur le chemin acoustique comme ce peut être le cas dans les références de l'art antérieur dont notamment [@gil2014frequency].

[0051] Une telle réalisation garantit, sans information auxiliaire autre que celles inférées directement par le traitement lui-même, à la fois une convergence proche de l'optimal au sens de la vitesse de convergence, un biais nul à la convergence et une absence de divergence en situation de double-parole. [0052] Le filtrage adaptatif, lorsqu'il est exprimé dans le domaine fréquentiel, permet notamment de contrôler et normaliser la mise à jour du chemin acoustique indépendamment de la bande de fréquence en jeu. Ainsi, en plus d'une complexité réduite, la solution bénéficie d'une convergence plus uniforme sur toute l'étendue fréquentielle considérée.

[0053] Le fonctionnement par partition associé au filtrage dans le domaine fréquentiel permet en outre d'estimer à chaque itération du traitement une représentation temps-fréquence W (k) du chemin acoustique w. Il permet de mettre en œuvre des stratégies d'adaptation différentes selon les partitions. Il permet aussi de garantir une meilleure convergence dans le cas de filtres très longs.

[0054] Un tel traitement permet de dériver un pas qui optimise à la fois le comportement en situation de double parole et le suivi de canal acoustique.

[0055] La figure 2 présente les différentes étapes de la solution de filtrage adaptatif. À chaque fois qu'une itération du traitement de filtrage adaptatif est réalisée, une trame de L nouveaux échantillons des signaux x(t) et y(t) est considérée et L nouveaux échantillons de sont produits. A l'étape S1 , il est déterminé s'il est besoin d'initialiser le chemin acoustique à considérer (par exemple en début de conversation d'un locuteur avec son interlocuteur), auquel cas l'initialisation du chemin acoustique intervient à l'étape S2. Sinon, à l'étape S3 on commence directement le traitement d'annulation d'écho acoustique AEC. A l'étape S4, on récupère une trame temporelle du signal de référence x(t) et on lui applique dans l'exemple décrit une projection dans le domaine fréquentiel (par exemple dans le domaine des sous-bandes de fréquences) à l'étape S5 pour en obtenir une représentation fréquentielle . Un traitement similaire est opéré avec chaque trame temporelle du signal du microphone y(t) (étape S6) pour obtenir une projection y (k) dans le domaine des fréquences à l'étape S7. A partir des trames x(t) et y(t) (ou comme décrit ici à partir de leur représentation fréquentielle), on applique à l'étape S8 un traitement d'annulation d'écho pour estimer une erreur a priori comme suit. [0056] On décrit ci-après un mode de réalisation d'un filtrage adaptatif pour une annulation d'écho en élaborant le filtre par partitions selon la technique “partitioned- block".

[0057] En considérant un chemin acoustique cible modélisé par un filtre w(t) à réponse impulsionnelle finie d'une longueur de N échantillons et découpé en B = partitions w b ∈ R L , on peut estimer la matrice W ∈ C MxB correspondant aux transformées fréquentielles des partitions w b telles que :

[0058] F est la matrice de transformation de domaine, par exemple ici de transformée de Fourier discrète (DFT) redondante telle que chaque élément est caractérisé par : . En pratique, la redondance est réalisée grâce à une complétion de zéros dans le domaine temporel.

[0059] De la même manière, on considère x b ∈ R M une trame temporelle contenant M échantillons du signal de référence x(t) et on forme la matrice X ∈ C MxB correspondant aux transformées fréquentielles des B dernières trames x b telles que :

X = [x 1 ,...,x B ],x b ∈ C M , avec x b = Fx b .

[0060] En considérant en outre une trame temporelle y ∈ R L du signal microphonique y(t), on peut noter le vecteur y ∈ C M tel que :

20 [0061]

[0062] Pour éviter les problèmes liés aux opérations de convolution effectuées dans le domaine fréquentiel, le traitement repose sur un fonctionnement par sauvegarde/recouvrement (overlap-save OLS). Ici, l'exposant .(k) reflète la k-ième itération du traitement. Après initialisation de W (0) ,X (0) ,y (0) et des autres caractéristiques, le traitement peut se poursuivre par le calcul de l'erreur a priori e (k) ∈ R M : où « o » dénote ici le produit de Hadamard, et (.)* le conjugué d'une matrice ou d'un vecteur.

[0063] Comme indiqué précédemment, la redondance de la DFT est réalisée grâce à une complétion de zéros (ou « zero-padding ») qui se retrouve dans l'expression de l'erreur a priori et qui permet avantageusement d'éviter un artefact dû à une convolution circulaire.

[0064] Le procédé se poursuit ensuite par le calcul de la mise à jour du chemin acoustique à l'étape S9, comme suit :

[0065]

[0066] Dans une réalisation où la mise à jour est optimale (grâce au zero-padding), on pose G = FF H (mise à jour dite « contrainte »).

[0067] Dans une réalisation où la mise à jour est sous-optimale, on peut poser plutôt G = I M (mise à jour dite « non-contrainte »). Une telle réalisation présente l'avantage d'être moins consommatrice de ressources.

[0068] L'étape S10 vise ensuite le calcul de w (k+1) pour mettre à jour le chemin acoustique :

[0069] W (k+1) = W (k) + ΔW (k)

[0070] Et à l'étape S11, le signal utile s'obtient après convolution de x (k) par W (k) et ramenée dans le domaine temporel.

[0071] La figure 3 détaille l'étape de calcul de la mise à jour du chemin acoustique W (k) , en particulier le terme de normalisation optima Λl permettant la robustesse intrinsèque aux situations de double parole.

[0072] Pour que la solution d'annulation d'écho soit robuste aux situations décrites plus haut. On choisit un terme de normalisation spectrale Λ (k) qui satisfait le critère BLUE. Celui-ci peut être atteint grâce à la connaissance des densités spectrales de puissance (DSP) du signal microphonique x(t) et du signal local s(t).

[0073] Dans la référence [@van2007double], BLUE est obtenu au prix d'hypothèses fortes sur le signal local qui doit admettre un modèle autorégressif, considéré comme étant de la parole, et à l'utilisation d'une méthode de prédiction d'erreur. D'autre part [@trump1998frequency] atteint BLUE en estimant la DSP du signal local à posteriori grâce au signal d'erreur uniquement e (k) , ceci au prix d'une moindre stabilité et d'un fonctionnement également avec de fortes contraintes sur le signal local (bruit coloré stationnaire).

[0074] La solution proposée, explicitée ci-après, s'affranchit des contraintes utilisées plus haut grâce à une estimation robuste au fil de l'eau des DSP.

[0075] Considérant : l'estimation de densité spectrale de puissance (DSP) de X pour chaque fréquence et chaque partition (resp. de y pour chaque fréquence) et l'inter-spectre du signal microphonique et du signal de référence yX = et sa densité inter-spectrale de puissance = E{yX} ∈ c MxB , on désigne par la densité spectrale de puissance du signal local s pour chaque fréquence et chaque partition.

[0076] On note enfin P ESR ∈ R MxB (ESR pour « Echo-to-Signal Ratio ») la matrice exprimant, pour chaque bande de fréquences et chaque partition, le rapport des énergies de l'écho et du signal local. Après initialisation de et des autres caractéristiques, le traitement réalise les opérations suivantes :

[0077] - Estimation des densités spectrales de puissance (DSP) :

[0078]

[0079]

[0080] [0081] avec {α, δ, η, ζ } ∈]0,1]

[0082] - Estimation du rapport Echo-à-Signal (ESR) instantané :

[0083] avec β ∈]0,1].

[0084] - Estimation de la normalisation Λ (k) :

[0085]

[0086] Puis, en appliquant le procédé au sens de la présente description, le paramètre de normalisation, pour respecter le critère BLUE, s'exprime par : avec μ ∈ [0,2[

[0087] Cette dernière expression du paramètre de normalisation fait intervenir le terme qui est fonction de l'estimation du rapport écho-à-signal qui finalement peut être le seul paramètre (avec bien entendu le signal x(t) à estimer au sens de la présente description, pour chaque trame k.

[0088] Il convient de noter qu'autrement, en appliquant plutôt l'enseignement de l'état de l'art tel que décrit par exemple dans [@borrallo1992implementation] pour mettre en œuvre la technique classique de PBFD-NLMS, le paramètre de normalisation du filtre s'exprimerait alors comme suit: avec μ ∈ [0,2[, sans faire intervenir de mesure pour une estimation du rapport écho-à-signal.

[0089] En reprenant maintenant les étapes de la figure 3, la première étape S20 commence par un test pour déterminer s'il est besoin d'initialiser les estimations de densité spectrale de puissance. Si tel est le cas à l'étape S21, on procède à l'initialisation des densités spectrales respectives du signal du microphone y et du signal de référence x. Sinon, on lance directement à l'étape S22 la procédure d'estimation du facteur de normalisation spectrale A. A l'étape S23 on récupère la trame courante fréquentielle du signal du microphone et à l'étape S24 on récupère la trame courante fréquentielle du signal de référence, pour estimer à l'étape S25 la densité inter-spectrale précitée. Ensuite, à l'étape S26 on estime la densité spectrale de puissance du signal du microphone et à l'étape S27 on estime la densité spectrale de puissance du signal de référence, pour en déduire, comme décrit ci-avant, une estimation du rapport Echo-à-Signal (ESR) instantané à l'étape S28. On en déduit à l'étape S29 une estimation du facteur de normalisation spectrale Λ (k) , à partir de laquelle on peut déterminer la mise à jour du chemin acoustique à l'étape S30 :

[0090] Atteindre le critère BLUE avec le filtrage adaptatif réalisé dans le domaine temporel revient de façon générale à trouver une solution telle que : où y ∈ R 1xM est le vecteur du signal microphonique, X = est la matrice du signal haut-parleur ( et R s ∈ R MXM est la matrice d'autocorrélation du signal s,

[0091] Les méthodes actuelles d'annulation d'écho sont basées sur un filtrage adaptatif dans le domaine fréquentiel. L'approche présentée dans [@trump1998frequency] propose d'atteindre une version régularisée du critère BLUE en cherchant une solution de canal acoustique dans le domaine fréquentiel telle que : où (resp. ) est la matrice diagonale de la densité spectrale de puissance du signal s (resp.x).

[0092] Toutefois, le signal local s n'est pas connu. L'estimateur satisfaisant le critère BLUE est alors, en pratique, très difficile à obtenir sans autres informations ou modèle sur s.

[0093] Une solution telle que décrite dans [@borrallo1992implementation] ne peut produire quant à elle une estimation non biaisée (satisfaisant donc le critère BLUE) du canal acoustique que si le signal local s et le signal de référence x sont décorrélés, soit (avec E{•} représentant l'opérateur d'espérance). En pratique, cette condition ne peut être remplie que si le signal s est un bruit blanc. Dans toutes les autres situations, afin d'atteindre une estimation non biaisée il est nécessaire d'ajouter au dénominateur du facteur de normalisation Λ (k) une fraction de la variance du signal local s, soit : E{ss H } ou sa densité spectrale de puissance (DSP) dans le domaine fréquentiel (qui prend la forme du paramètre R MxB dans les équations présentées plus haut).

[0094] L'espérance E{ss H } étant inconnue, la solution proposée ici s'affranchit des contraintes utilisées plus haut grâce à une estimation robuste au fil de l'eau des densités spectrales de puissance, et en particulier de celle qui intervient au dénominateur précité : la densité spectrale de puissance du signal local s.

[0095] Le traitement tel que décrit ci-avant peut être utilisé dans notamment les situations où il est nécessaire d'effectuer une captation et une restitution sonore simultanée. Les cas d'usage les plus courants sont la téléphonie mains-libres (le locuteur distant entendant sa propre voix retardée - l'écho - mélangée avec la voix de son interlocuteur), les interactions avec assistants vocaux (les réponses du système de dialogue et/ou la musique diffusée sur l'assistant vocal étant mixées avec les commandes émises par l'utilisateur et perturbant la reconnaissance vocale), l'interphonie, les systèmes de vidéo-conférence, et autres.

[0096] On a représenté sur la figure 4 un dispositif pour la mise en œuvre du procédé ci-avant, qui peut être illustré aussi par les deux modules de gauche de la figure 1 (filtrage adaptatif et soustraction appliquée au signal y(t) capté par le microphone). En référence à la figure 4, ce dispositif peut comporter typiquement une première interface d'entrée IN1 pour recevoir le signal y(t) acquis du microphone MIC, ainsi qu'une deuxième interface d'entrée IN2, dans l'exemple représenté, pour recevoir un signal (par exemple un signal de télécommunication, de type signal vocal ou musical) à restituer sur un haut-parleur HP. Le dispositif comporte un processeur PROC apte à coopérer avec une mémoire MEM pour traiter ce signal audio et délivrer, via une première interface de sortie OUT1 que comporte le dispositif, le signal x(t) destiné à alimenter le haut-parleur HP. En particulier, la mémoire MEM stocke au moins des données d'instructions d'un programme d'ordinateur selon un aspect de la présente description, ces données d'instructions étant lisibles par le processeur PROC pour exécuter le traitement décrit ci-avant et l'appliquer notamment au signal issu du microphone y(t) pour en délivrer un signal utile s(t) via une deuxième interface de sortie OUT2 que comporte le dispositif dans un exemple de réalisation.

[0097] Bien entendu, il s'agit d'un exemple de réalisation, où typiquement ici le signal utile s(t) peut être transmis via l'interface de sortie OUT2 à un interlocuteur distant par exemple. Cette interface OUT2 peut être reliée dans ce cas à une antenne de communication ou à un routeur d'un réseau de télécommunication RES par exemple. Il en est de même pour l'interface d'entrée IN2 recevant « de l'extérieur » un signal à restituer sur le haut-parleur.

[0098] Dans un dispositif tel que par exemple un assistant vocal, il est possible typiquement d'être aussi en situation de double parole lorsque l'utilisateur prononce des commandes vocales en même temps que l'assistant répond par exemple à des commandes antérieures. Dans ce cas, au moins une partie des réponses de l'assistant vocal peuvent être issues en local du contenu de la mémoire MEM par exemple sans avoir recours à un serveur distant et à un réseau de télécommunications. En outre, le signal utile s(t) peut être interprété simplement par le processeur PROC en local pour répondre à des commandes vocales de l'utilisateur. Ainsi, les interfaces IN2 et OUT2 peuvent ne pas être nécessaires.

[0099] Un cas d'usage typique du traitement dit « de la double parole » avec un assistant vocal consiste par exemple à écouter de la musique à travers l'enceinte de l'assistant vocal, alors que l'utilisateur prononce une commande d'éveil de l'assistant (WakeUpWord). Dans ce cas, il convient de supprimer la musique restituée x(t)*w(t) du signal sonore capté y(t) dans un environnement (avec ses réverbérations) dans lequel l'assistant vient d'être placé, pour pouvoir détecter correctement le signal de commande réellement prononcé s(t).

[0100] Bien entendu, la présente invention ne se limite pas à la forme de réalisation présentée ci-avant, et peut s'étendre à d'autres variantes. [0101] Par exemple, on a décrit ci-avant une réalisation pratique dans laquelle les signaux sont traités dans le domaine des sous-bandes fréquentielles. Néanmoins l'invention peut être implémentée, en variante possible, dans le domaine temporel en exploitant un paramètre tel que l'espérance E{ss T } équivalent à la densité spectrale de puissance du signal local s dans le domaine fréquentiel.

[0102] Par conséquent les estimations de densités spectrales de puissances précitées peuvent effectivement être mises en œuvre dans une implémentation possible, mais non nécessaire.

[0103] Il en est de même pour la partition du filtre adaptatif, qui peut fonctionner également dans le domaine des sous-bandes mais qui n'est pas nécessaire non plus.

[0104] Par ailleurs, sur la figure 4, on a représenté un équipement compact comportant le dispositif d'annulation d'écho (pouvant être illustré ainsi par le processeur PROC, la mémoire MEM et au moins une interface d'entrée et au moins une interface de sortie), ainsi que le microphone MIC et le haut-parleur HP. Dans une variante de réalisation le dispositif d'une part et un ou plusieurs microphones et un ou plusieurs haut-parleurs d'autre part peuvent être situés en des sites différents, reliés par un réseau de télécommunication par exemple ou un réseau local (animé par une passerelle domestique), ou autres.

ANNEXE : Références

[0105] [@borrallo1992implementation] : Borrallo, J. P., & Otero, M. G. (1992). On the implementation of a partitioned block frequency domain adaptive filter (PBFDAF) for long acoustic echo cancellation. Signal Processing, 27(3), 301-315.

[0106] [@trump1998frequency] : Trump, T. (1998, May). A frequency domain adaptive algorithm for colored measurement noise environment. In Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP'98 (Cat. No. 98CH36181) (Vol. 3, pp. 1705-1708). IEEE.

[0107] [@jung2005new] : Jung, H. K., Kim, N. S., & Kim, T. (2005). A new doubletalk detector using echo path estimation. Speech communication, 45(1), 41-48.

[0108] [@van2007double] : Van Waterschoot, T., Rombouts, G., Verhoeve, P., & Moonen, M. (2007). Double-talk-robust prediction error identification algorithms for acoustic echo cancellation. IEEE Transactions on Signal Processing, 55(3), 846- 858.

[0109] [@gil2014frequency] : Gil-Cacho, J. M., Van Waterschoot, T., Moonen, M., & Jensen, S. H. (2014). A frequency-domain adaptive filter (FDAF) prediction error method (PEM) framework for double-talk-robust acoustic echo cancellation. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 22(12), 2074-2086.