Brevet FR3002679A1 — publié le 20140829

L'invention concerne le traitement de la parole en milieu bruité. Elle concerne notamment le traitement des signaux de parole captés par des dispositifs de téléphonie de type "mains libres" destinés à être utilisés dans un environnement bruité. Ces appareils comportent un ou plusieurs microphones captant non seu- lement la voix de l'utilisateur, mais également le bruit environnant, bruit qui constitue un élément perturbateur pouvant aller dans certains cas jusqu'à rendre inintelligibles les paroles du locuteur. Il en est de même si l'on veut mettre en oeuvre des techniques de reconnaissance vocale, car il est très difficile d'opérer une reconnaissance de forme sur des mots noyés dans un niveau de bruit élevé. Cette difficulté liée aux bruits environnants est particulièrement contraignante dans le cas des dispositifs "mains libres" pour véhicules automobiles, qu'il s'agisse d'équipements incorporés au véhicule ou bien d'acces- soires en forme de boitier amovible intégrant tous les composants et fonc- tions de traitement du signal pour la communication téléphonique. En effet, la distance importante entre le micro (placé au niveau de la planche de bord ou dans un angle supérieur du pavillon de l'habitacle) et le locuteur (dont l'éloignement est contraint par la position de conduite) en- traîne la captation d'un niveau de parole relativement faible par rapport au bruit ambiant, qui rend difficile l'extraction du signal utile noyé dans le bruit. En plus de cette composante stationnaire permanente de bruit de roulement, le milieu très bruité typique de l'environnement automobile présente des caractéristiques spectrales non stationnaires, c'est-à-dire qui évoluent de manière imprévisible en fonction des conditions de conduite : passage sur des chaussées déformées ou pavées, autoradio en fonctionnement, etc. Des difficultés du même genre se présentent dans le cas où le dispositif est un casque audio de type micro/casque combiné utilisé pour des fonc- tions de communication telles que des fonctions de téléphonie "mains li- bres", en complément de l'écoute d'une source audio (musique par exemple) provenant d'un appareil sur lequel est branché le casque. Dans ce cas, il s'agit d'assurer une intelligibilité suffisante du signal capté par le micro, c'est-à-dire du signal de parole du locuteur proche (le porteur du casque). Or, le casque peut être utilisé dans un environnement bruyant (métro, rue passante, train, etc.), de sorte que le micro captera non seulement la parole du porteur du casque, mais également les bruits parasites environnants. Le porteur est certes protégé de ce bruit par le casque, notamment s'il s'agit d'un modèle à écouteurs fermés isolant l'oreille de l'extérieur, et encore plus si le casque est pourvu d'un "contrôle actif de bruit". En revanche, le locuteur distant (celui se trouvant à l'autre bout du canal de communication) souffrira des bruits parasites captés par le micro et venant se superposer et interférer avec le signal de parole du locuteur proche (le porteur du casque). En particulier, certains formants de la pa- rote essentiels à la compréhension de la voix sont souvent noyés dans des composantes de bruit couramment rencontrées dans les environnements habituels. L'invention concerne plus particulièrement les techniques de débruitage sélectif monocanal, c'est-à-dire opérant sur un unique signal (par opposi- tion aux techniques mettant en oeuvre plusieurs micros dont les signaux sont combinés de façon judicieuse et font l'objet d'une analyse de cohérence spatiale ou spectrale, par exemple par des techniques de type beamforming ou autres). Cependant, elle s'appliquera avec la même pertinence à un signal recomposé à partir de plusieurs micros par une tech- nique de beamforming, dans la mesure où l'invention présentée ici s'applique à un signal scalaire. Dans le cas présent, il s'agit d'opérer le débruitage sélectif d'un signal audio bruité, généralement obtenu après numérisation du signal recueilli par un micro unique de l'équipement de téléphonie. L'invention vise plus particulièrement un perfectionnement apporté aux al- gorithmes de réduction de bruit reposant sur un traitement du signal dans le domaine fréquentiel (donc après application d'une transformation de Fourier FFT) consistant à appliquer un gain spectral calculé en fonction de plusieurs estimateurs de probabilité de présence de parole. Plus précisément, le signal y issu du microphone est découpé en trames de longueur fixe, chevauchantes ou non, et chaque trame d'indice k est transposée dans le domaine fréquentiel par FFT. Le signal fréquentiel résultant Y(k,l), lui aussi discret, est alors décrit par un ensemble de "bins" fréquentiel (bandes de fréquences) d'indice 1, typiquement 128 bins de fréquences positives. Pour chaque trame de signal, un certain nombre d'estimateurs sont mis à jour pour déterminer une probabilité fréquentielle de présence de parole p(k,l). Si la probabilité est grande, le signal sera considéré comme du signal utile (parole) et donc préservé avec un gain spectral G(k,l) = 1 pour le bin considéré. Dans le cas contraire, si la probabilité est faible le signal sera assimilé à du bruit et donc réduit voire supprimé par application d'un gain spectral d'atténuation très inférieur à 1. En d'autres termes, le principe de cet algorithme consiste à calculer et appliquer au signal utile un "masque fréquentiel" qui conserve l'informa- tion utile du signal de parole et élimine le signal parasite de bruit : Cette technique peut être notamment implémentée par un algorithme de type OM-LSA (Optimally Modified - Log Spectral Amplitude) telle que celui décrit par : [1] I. Cohen, "Optimal Speech Enhancement Under Signal Presence Uncertainty Using Log-Spectral Amplitude Estimator", IEEE Signal Processing Letters, Vol. 9, No 4, pp. 113-116, Apr. 2002. On pourra également se référer au WO 2007/099222 Al (Parrot), qui décrit une technique de débruitage mettant en oeuvre un calcul de probabilité de présence de parole. L'efficacité d'une telle technique réside bien entendu dans le modèle de l'estimateur de probabilité de présence de parole qui doit discriminer parole et bruit. Dans la pratique, l'implémentation d'un tel algorithme se heurte à un certain nombre de défauts, dont les deux principaux sont le "bruit musical" et l'apparition d'une "voix robotisée". Le "bruit musical" se caractérise par une nappe de bruit de fond résiduel non uniforme, privilégiant certaines fréquences spécifiques. La tonalité du bruit n'est alors plus du tout naturelle, ce qui rend l'écoute perturbante. Ce phénomène résulte de ce que le traitement fréquentiel de débruitage est opéré sans dépendance entre fréquences voisines lors de la discrimina- tion fréquentielle entre parole et bruit, car le traitement n'intègre pas de mécanisme pour prévenir deux gains spectraux voisins très différents. Or, dans les périodes de bruit seul, il faudrait idéalement un gain d'atténuation uniforme pour préserver la tonalité du bruit ; mais en pratique, si les gains spectraux ne sont pas homogènes, le bruit résiduel devient "musical" avec l'apparition de notes fréquentielles aux fréquences moins atténuées, correspondant à des bins faussement détectés comme contenant du signal utile. On notera que ce phénomène est d'autant plus marqué que l'on autorise l'application de gains d'atténuation importants. Le phénomène de "voix robotisée" ou "voix métallique", quant à lui, se présente lorsque l'on choisit d'opérer une réduction de bruit très agressive, avec des gains spectraux d'atténuation importants. En présence de parole, des fréquences correspondant à de la parole mais qui sont faussement détectées comme étant du bruit seront fortement atténuées, ren- dant la voix moins naturelle, voire totalement artificielle ("robotisation" de la voix). Le paramétrage d'un tel algorithme consiste donc à trouver un compromis sur l'agressivité du débruitage, de manière à enlever un maximum de bruit sans que les effets indésirables de l'application de gains spectraux d'atté- nuation trop importants ne deviennent trop perceptibles. Ce dernier critère se révèle toutefois extrêmement subjectif, et sur un groupe témoin d'utilisateurs relativement large il s'avère difficile de trouver un réglage de compromis qui puisse faire l'unanimité. Pour minimiser ces défauts, inhérents à une technique de débruitage par application d'un gain spectral, le modèle "OM-LSA" prévoit de fixer une borne inférieure Gmin pour le gain d'atténuation (exprimé suivant une échelle logarithmique, ce gain d'atténuation correspond donc dans la suite de ce document à une valeur négative) appliqué aux zones identifiées comme du bruit, de manière à s'interdire de trop débruiter pour limiter l'apparition des défauts évoqués plus haut. Cette solution n'est cependant pas optimale : certes, elle contribue à faire disparaitre les effets indésirables d'une réduction de bruit excessive, mais dans le même temps elle limite les performances du débruitage. Le problème de l'invention est de pallier cette limitation, en rendant plus performant le système de réduction de bruit par application d'un gain spectral (typiquement selon un modèle OM-LSA), tout en respectant les contraintes évoquées plus haut, à savoir réduire efficacement le bruit sans altérer l'aspect naturel de la parole (en présence de parole) ni celui du bruit (en présence de bruit). En d'autres termes, il convient de rendre im- perceptibles par le locuteur distant les effets indésirables du traitement algorithmique, tout en atténuant le bruit de manière importante. L'idée de base de l'invention consiste à moduler le calcul du gain spectral GOMLSA - calculé dans le domaine fréquentiel pour chaque bin - par un in- dicateur global, observé au niveau de la trame temporelle et non plus au niveau d'un unique bin de fréquence. Cette modulation peut être opérée de deux manières : - de manière directe dans un premier mode de réalisation, en transformant la borne inférieure Gmin du gain d'atténuation - communément désignée "dureté de débruitage" - en une fonction temporelle dont la valeur sera déterminée en fonction d'un descripteur temporel (ou "variable globale") reflété par l'état des divers estimateurs de l'algorithme. Ces derniers seront choisis en fonction de leur pertinence pour décrire des situations connues pour lesquelles on sait que le choix de la dureté de débruitage Gmin peut être optimisé. Par la suite et en fonction des cas de figure, la modulation temporelle appliquée à ce gain d'atténuation Gmin logarithmique pourra correspondre soit à un incrément soit à un décrément : un décrément sera associé à une dureté de réduction de bruit plus grande (gain logarithmique plus grand en valeur absolue), inversement un incrément de ce gain lo- garithmique négatif sera associé à une valeur absolue plus petite donc une dureté de réduction de bruit plus faible ; - de façon indirecte dans un second mode de réalisation, en pondérant la probabilité de présence de parole fréquentielle p(k,l) par un indica- teur global temporel observé au niveau de la trame (et non plus d'un simple bin fréquentiel particulier). En effet, on constate qu'une observation à l'échelle de la trame peut bien souvent permettre de corriger certains défauts de l'algorithme, notamment dans des zones très bruitées où il peut parfois faussement détecter une fréquence de bruit comme étant une fréquence de parole : ainsi, si une trame de bruit seul est détectée (au niveau de la trame), on pourra débruiter de façon plus agressive sans pour autant introduire de bruit musical, grâce à un débruitage plus homogène. Inversement, sur une période de parole bruitée, on pourra s'autoriser à moins débruiter afin de parfaitement préserver la voix tout en veillant à ce que la variation d'énergie du bruit de fond résiduel ne soit pas perceptible. On dispose ainsi d'un double levier (dureté et homogénéité) pour moduler l'importance du débruitage selon le cas considéré - phase de bruit seul ou bien phase de parole -, la discrimination entre l'un ou l'autre cas résultant d'une observation à l'échelle de la trame temporelle : - dans le premier mode de réalisation, l'optimisation consistera à moduler dans le sens adéquat la valeur de la dureté de débruitage Gn', pour mieux réduire le bruit en phase de bruit seul, et mieux préserver la voix en phase de parole ; - dans le second mode de réalisation, si une trame de bruit seul est détectée, on peut avantageusement considérer que chaque probabilité fréquentielle de parole devrait être nulle, et la probabilité fréquentielle locale pourra être pondérée par une donnée globale, cette donnée glo- bale permettant de faire une déduction sur le cas réel rencontré à l'échelle de la trame (phase de parole/phase de bruit seul) que la seule donnée dans le domaine fréquentiel n'autorise pas à formuler ; en présence de bruit seul, on pourra se ramener à un débruitage uniforme, évitant toute musicalité du bruit, qui gardera son "grain" d'origine. Plus précisément, l'invention propose un procédé de débruitage d'un signal audio par application d'un algorithme à gain spectral variable fonction d'une probabilité de présence de parole, comportant de manière en elle-même connue les étapes successives suivantes : a) génération de trames temporelles successives du signal audio bruité numérisé ; b) application d'une transformation de Fourier aux trames générées à l'étape a), de manière à produire pour chaque trame temporelle de signal un spectre de signal avec une pluralité de bandes de fréquen- ces prédéterminées ; c) dans le domaine fréquentiel : cl) estimation, pour chaque bande de fréquences de chaque trame temporelle courante, d'une probabilité de présence de parole ; c3) calcul d'un gain spectral, propre à chaque bande de fréquence de chaque trame temporelle courante, en fonction de : i) une estimation de l'énergie du bruit dans chaque bande de fréquences, ii) la probabilité de présence de parole estimée à l'étape cl), et iii) une valeur scalaire de gain minimal représentative d'un paramètre de dureté du débruitage ; c4) réduction sélective de bruit par application à chaque bande de fréquences du gain calculé à l'étape c3) ; d) application d'une transformation de Fourier inverse au spectre de si- gnal constitué des bandes de fréquences produites à l'étape c4), de manière à délivrer pour chaque spectre une trame temporelle de si- gnal débruité ; et e) reconstitution d'un signal audio débruité à partir des trames tempo- relles délivrées à l'étape d). De façon caractéristique de l'invention : - l'une au moins d'entre : ii) ladite probabilité de présence de parole et iii) ladite valeur scalaire de gain minimal, est une valeur modulable de ma- nière dynamique, pour chaque trame temporelle successive ; et - le procédé comporte en outre, préalablement à l'étape c3) de calcul du gain spectral, une étape de : c2) calcul de ladite valeur modulable de manière dynamique pour la trame temporelle courante, en fonction d'une variable globale liée à cette trame temporelle courante. Dans un premier mode de réalisation de l'invention, ladite valeur modulable de manière dynamique est la valeur scalaire de gain minimal. Dans une première implémentation de ce premier mode de réalisation, la variable globale est un rapport signal sur bruit de la trame temporelle cou- rante, évalué dans le domaine temporel. La valeur scalaire de gain minimal peut notamment être calculée à l'étape c2) par application de la relation : Gmin(k) = Gmin AGinin(S N Ry(k)) k étant l'indice de la trame temporelle courante, G,';'(k) étant le gain minimal à appliquer à la trame temporelle courante, G',' étant une valeur nominale paramétrée dudit gain minimal, AGmin (k) étant l'incrément/décrément apporté à Gmin, et SNRy (k) étant le rapport signal sur bruit de la trame temporelle courante. Dans une deuxième implémentation du premier mode de réalisation, la variable globale est une probabilité moyenne de parole, évaluée au niveau de la trame temporelle courante. La valeur scalaire de gain minimal peut notamment être calculée à l'étape c2) par application de la relation : Gmin(k) = Gm ( P in + -4- \- speech(k) 1)- P speech(O- l-\2Gmin k étant l'indice de la trame temporelle courante, Gmin(k) étant le gain minimal à appliquer à la trame temporelle courante, Gmin étant une valeur nominale paramétrée dudit gain minimal, Pspeech(k) étant la probabilité moyenne de parole évaluée au niveau de la trame temporelle courante, A1Gmin étant un incrément/décrément apporté à Gmin en phase de bruit, et A2G,,,, étant un incrément/décrément apporté à Gim, en phase de parole. La probabilité moyenne de parole peut notamment être évaluée au niveau de la trame temporelle courante par application de la relation : 1 étant l'indice de la bande de fréquences, N -1 >i Pspeech(k) = N p (k , 1) N étant le nombre de bandes de fréquences dans le spectre, et p(k,l) étant la probabilité de présence de parole de la bande de fréquen- ces d'indice Z de la trame temporelle courante. Dans une troisième implémentation du premier mode de réalisation, la variable globale est un signal booléen de détection d'activité vocale pour la trame temporelle courante, évalué dans le domaine temporel par analyse de la trame temporelle et/ou au moyen d'un détecteur externe. La valeur scalaire de gain minimal peut notamment être calculée à l'étape c2) par application de la relation : G min(k) = Gmin + V AD (k). AGmin k étant l'indice de la trame temporelle courante, Grnin(k) étant le gain minimal à appliquer à la trame temporelle courante, Grnin étant une valeur nominale paramétrée dudit gain minimal, VAD (k) étant la valeur du signal booléen de détection d'activité vocale pour la trame temporelle courante, et AGmin étant l'incrément/décrément apporté à la valeur G., Dans un second mode de réalisation de l'invention, la valeur modulable de manière dynamique en fonction d'une variable globale liée à cette trame temporelle courante est la probabilité de présence de parole, ladite variable globale étant elle-même une probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante. Le gain spectral de l'étape c4) peut notamment être calculé par applica- tion de la relation : GOMLSA(k, 1) = {G(k, 0}13(k,1).Pglob(k) G1-P(k,1).Pgiob(k) min k étant l'indice de la trame temporelle courante, 1 étant l'indice de la bande de fréquences, GomisA (k,l) étant le gain spectral à appliquer à l'étape c4) à la bande de fréquences d'indice 1 de la trame temporelle courante, G (k,l) étant un gain de débruitage sous-optimal à appliquer à la bande de fréquences d'indice 1 de la trame temporelle courante, p(k,l) étant la probabilité de présence de parole de la bande de fréquen- ces d'indice 1 de la trame temporelle courante, pgiob(k) étant la probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante, et G'ii, étant une valeur nominale paramétrée du gain minimal calculé à l'étape c2). La probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante, peut notamment être donnée par l'expression : 1 Pglob(k) = - max{P speech(k); P seuil} r seutl 1V avec : N 1 Pspeech(k) Pse',/ étant une valeur de seuil de la probabilité globale de parole, et N étant le nombre de bandes de fréquences dans le spectre. 0 On va maintenant décrire un exemple de mise en oeuvre du dispositif de l'invention, en référence aux dessins annexés où les mêmes références numériques désignent d'une figure à l'autre des éléments identiques ou fonctionnellement semblables. La Figure 1 illustre de façon schématique, sous forme de blocs fonction- nets, la manière dont est réalisé un traitement de débruitage de type OM-LSA selon l'état de la technique. La Figure 2 illustre le perfectionnement apporté par l'invention à la technique de débruitage de la Figure 1. 0 Le processus de l'invention est mis en oeuvre par des moyens logiciels, schématisés sur les figures par un certain nombre de blocs fonctionnels correspondant à des algorithmes appropriés exécutés par un microcontrôleur ou un processeur numérique de signal. Bien que, pour la clarté de l'exposé, les différentes fonctions soient présentées sous forme de modu- les distincts, elles mettent en oeuvre des éléments communs et correspondent en pratique à une pluralité de fonctions globalement exécutées par un même logiciel. Algorithme de débruitage OM-LSA selon l'état de la technique La Figure 1 illustre de façon schématique, sous forme de blocs fonctionnels, la manière dont est réalisé un traitement de débruitage de type OM-LSA selon l'état de la technique. Le signal numérisé y(n) = x(n) + d(n) comprenant une composante de pa- role x(n) et une composante de bruit d(n) (n étant le rang de l'échantillon) est découpé (bloc 10) en segments ou trames temporelles y(k) (k étant l'indice de la trame) de longueur fixe, chevauchantes ou non, habituelle- ment des trames de 256 échantillons pour un signal échantillonné à 8 kHz (standard téléphonique narrowband). Chaque trame temporelle d'indice k est ensuite transposée dans le domaine fréquentiel par une transformation rapide de Fourier FFT (bloc 12) : le signal résultant obtenu ou spectre Y(k,l), lui aussi discret, est alors dé- crit par un ensemble de bandes de fréquences ou "bins" fréquentiels (/ étant l'indice de bin), par exemple 128 bins de fréquences positives. Un gain spectral G = GoMLsA(kl), propre à chaque bin, est appliqué (bloc 14) au signal fréquentiel Y(k,l), pour donner un signal X (k, : (k, 1) = Go1isA(k,1). Y(k,l) Le gain spectral GomLsA(k,/) est calculé (bloc 16) en fonction d'une part d'une probabilité de présence de parole p(k,l), qui est une probabilité fré- quentielle évaluée (bloc 18) pour chaque bin, et d'autre part d'un paramè- tre G., qui est une valeur scalaire de gain minimal, dénommée couramment "dureté de débruitage". Ce paramètre G,,,, fixe une borne inférieure au gain d'atténuation appliqué sur les zones identifiées comme du bruit, afin d'éviter que les phénomènes de bruit musical et de voix robotisée ne deviennent trop marqués du fait de l'application de gains spectraux d'atté- nuation trop importants et/ou hétérogènes. Le gain spectral GoAusA(k,/) calculé est de la forme : GomLSA (k , 1) = tG (1( 1)113(k '1) -iG in in Le calcul du gain spectral et celui de la probabilité de présence de parole sont donc avantageusement implémentés sous forme d'un algorithme de type OM-LSA (Optimally Modified - Log Spectral Amplitude) tel que celui décrit dans l'article (précité) : [1] I. Cohen, "Optimal Speech Enhancement Under Signal Presence Uncertainty Using Log-Spectral Amplitude Estimator", IEEE Signal Processing Letters, Vol. 9, No 4, pp. 113-116, Apr. 2002. Essentiellement, l'application d'un gain nommé "gain LSA" (Log-Spectral Amplitude) permet de minimiser la distance quadratique moyenne entre le logarithme de l'amplitude du signal estimé et le logarithme de l'amplitude du signal de parole originel. Ce critère se montre adapté, car la distance choisie est en meilleure adéquation avec le comportement de l'oreille humaine et donne donc qualitativement de meilleurs résultats. Dans tous les cas, il s'agit de diminuer l'énergie des composantes fré- quentielles très parasitées en leur appliquant un gain faible, tout en lais- sant intactes (par l'application d'un gain égal à 1) celles qui le sont peu ou pas du tout. L'algorithme "OM-LSA" (Optimally-Modified LSA) améliore le calcul du gain LSA en le pondérant par la probabilité conditionnelle p(k,l) de pré- sence de parole ou SPP (Speech Presence Probability), pour le calcul du gain final : la réduction de bruit appliquée est d'autant plus importante (c'est-à-dire que le gain appliqué est d'autant plus faible) que la probabilité de présence de parole est faible. La probabilité de présence de parole p(k,l) est un paramètre pouvant prendre plusieurs valeurs différentes comprises entre 0 et 100 %. Ce pa- ramètre est calculé selon une technique en elle-même connue, dont des exemples sont notamment exposés dans : [2] I. Cohen et B. Berdugo, "Two-Channel Signal Detection and Speech Enhancement Based on the Transient Beam-to-Reference Ratio", IEEE International Conference on Acoustics, Speech and Signal Processing ICASSP 2003, Hong-Kong, pp. 233-236, Apr. 2003. Comme fréquemment dans ce domaine, le procédé décrit n'a pas pour objectif d'identifier précisément sur quelles composantes fréquentielles de quelles trames la parole est absente, mais plutôt de donner un indice de confiance entre 0 et 1, une valeur 1 indiquant que la parole est absente à coup sûr (selon l'algorithme) tandis qu'une valeur 0 déclare le contraire. Par sa nature, cet indice est assimilé à la probabilité d'absence de la parole a priori, c'est-à-dire la probabilité que la parole soit absente sur une composante fréquentielle donnée de la trame considérée. Il s'agit bien sûr d'une assimilation non rigoureuse, dans le sens que même si la présence de la parole est probabiliste ex ante, le signal capté par le micro ne présente à chaque instant que l'un de deux états distincts : à l'instant considéré, il peut soit comporter de la parole soit ne pas en contenir. En pratique, cette assimilation donne toutefois de bons résultats, ce qui justifie son utilisation. On pourra également se référer au WO 2007/099222 Al (Parrot), qui décrit en détail une technique de débruitage dérivée de ce principe, mettant en oeuvre un calcul de probabilité de présence de parole. Le signal résultant X (k, 1) = GoAusA(k,1). c'est-à-dire le signal utile Y(k,l) auquel a été appliqué le masque fréquentiel GomisA(k,/), fait ensuite l'objet d'une transformation de Fourier inverse iFFT (bloc 20), pour repasser du domaine fréquentiel au domaine temporel. Les trames temporelles obtenues sont ensuite rassemblées (bloc 22) pour donner un signal dé-bruité numérisé .Î (n) . Algorithme de débruitage OM-LSA selon un premier mode de réalisation de l'invention La Figure 2 illustre les modifications apportées à l'algorithme que l'on vient d'exposer. Les blocs portant les mêmes références numériques corres- pondent à des fonctions identiques ou similaires à celles exposées plus haut, de même que les références des divers signaux traités. Dans l'implémentation connue de la Figure 1, la valeur scalaire Gmi' du gain minimal représentatif de la dureté de débruitage était choisie plus ou moins empiriquement, de telle sorte que la dégradation de la voix reste peu audible, tout en assurant une atténuation acceptable du bruit. Comme on l'a exposé en introduction, il est cependant souhaitable de dé-bruiter plus agressivement en phase de bruit seul, mais sans pour autant introduire de bruit musical ; inversement, sur une période de parole brui- tée, on peut s'autoriser à moins débruiter afin de parfaitement préserver la voix tout en veillant à ce que la variation d'énergie du bruit de fond résiduel ne soit pas perceptible. On peut disposer selon le cas (phase de bruit seul ou bien phase de parole) d'un double intérêt à moduler la dureté du débruitage : celle-ci sera modulée en faisant varier dynamiquement la valeur scalaire de G''', dans le sens adéquat qui réduira le bruit en phase de bruit seul et préservera mieux la voix en phase de parole. Pour ce faire, la valeur scalaire initialement constante, est transfor- mée (bloc 24) en une fonction temporelle G,,,,(k) dont la valeur sera dé- terminée en fonction d'une variable globale (également désignée "descrip- teur temporel"), c'est-à-dire d'une variable considérée globalement au niveau de la trame et non pas du bin fréquentiel. Cette variable globale peut être reflétée par l'état d'un ou plusieurs estimateurs différents déjà calculés par l'algorithme, qui seront choisis selon le cas en fonction de leur per- tinence. Ces estimateurs peuvent notamment être : i) un rapport signal sur bruit, ii) une probabilité moyenne de présence de parole et/ou iii) une détection d'activité vocale. Dans tous ces exemples, la dureté de débruitage G,'in devient une fonction temporelle Gmin(k) définie par les estimateurs, eux- mêmes temporels, permettant de décrire des situations connues pour les- quelles on souhaite moduler la valeur de G,m, afin d'influer sur la réduction de bruit en modifiant de façon dynamique le compromis débruitage/dégradation du signal. On notera incidemment que, pour que cette modulation dynamique de la dureté ne soit pas perceptible par l'auditeur, il convient de prévoir un mé- canisme pour prévenir des variations brutales de Gmin(k), par exemple par une technique conventionnelle de lissage temporel. On évitera ainsi que des variations temporelles brusques de la dureté G,,,,(k) ne soient audibles sur le bruit résiduel, qui est très souvent stationnaire dans le cas par exemple d'un automobiliste en condition de roulage. Descripteur temporel : rapport signal sur bruit Le point de départ de ce premier exemple d'implémentation est la consta- tation de ce qu'un signal de parole capté dans un environnement silen- cieux n'a que peu, voire pas, besoin d'être débruité, et qu'un débruitage énergique appliqué à un tel signal conduirait rapidement à des artefacts audibles, sans que le confort d'écoute ne soit amélioré du seul point de vue du bruit résiduel. À l'inverse, un signal excessivement bruité peu rapidement devenir inintel- ligible ou susciter une fatigue progressive à l'écoute ; dans un tel cas le bénéfice d'un débruitage important sera indiscutable, même au prix d'une dégradation audible (toutefois raisonnable et contrôlée) de la parole. En d'autres termes, la réduction de bruit sera d'autant plus bénéfique pour la compréhension du signal utile que le signal non traité est bruité. Ceci peut être pris en compte en modulant le paramètre de dureté Gmin en fonction du rapport signal sur bruit a priori ou du niveau de bruit courant du signal traité : G min(k) = G min + AG min(S N R y (k)) Gmin(k) étant le gain minimal à appliquer à la trame temporelle courante, Gmin étant une valeur nominale paramétrée de ce gain minimal, AG,'i' (k) étant l'incrément/décrément apporté à la valeur G1 1n, et SNRy (k) étant le rapport signal sur bruit de la trame courante, évalué dans le domaine temporel (bloc 26), correspondant à la variable appliquée sur l'entrée n° CD du bloc 24 (ces "entrées" étant symboliques et n'ayant qu'une valeur illustrative des différentes possibilités alternatives de mise en oeuvre de l'invention). Descripteur temporel : probabilité moyenne de présence de parole Un autre critère pertinent pour moduler la dureté de la réduction peut être la présence de parole pour la trame temporelle considérée. Avec l'algorithme conventionnel, lorsqu'on tente d'augmenter la dureté de débruitage Gmin, le phénomène de "voix robotisée" apparait avant celui de "bruit musical". Ainsi, il parait possible et intéressant d'appliquer une dure- té de débruitage plus grande dans une phase de bruit seul, en modulant simplement le paramètre de dureté de débruitage par un indicateur global de présence de parole : en période de bruit seul, le bruit résiduel - à l'origine de la fatigue d'écoute - sera réduit par application d'une dureté plus importante, et ce sans contrepartie puisque la dureté en phase de parole peut rester inchangée. Comme l'algorithme de réduction de bruit repose sur un calcul de probabilité de présence de parole fréquentielle, il est aisé d'obtenir un indice moyen de présence de parole à l'échelle de la trame à partir des différen- tes probabilités fréquentielles, de manière à différencier les trames princi- palement constituées de bruit de celles qui contiennent de la parole utile. On peut par exemple utiliser l'estimateur classique : N 1 Pspeech(k) = ip(k, 1) Pspeech(k) étant la probabilité moyenne de parole évaluée au niveau de la trame temporelle courante, N étant le nombre de bins du spectre, et MA étant la probabilité de présence de parole du bin d'indice 1 de la trame temporelle courante. Cette variable Pspeech(k) speech(k) est calculée par le bloc 28 et appliquée sur l'entrée n° OO du bloc 24, qui calcule la dureté de débruitage à appliquer pour une trame donnée : Gmin (k)Gmin + (1) sp',h(k) - 1). Ai Gminsp',h(k). A2 Gmin Gmin(k) étant le gain minimal à appliquer à la trame temporelle courante, Gmin étant une valeur nominale paramétrée de ce gain minimal, et AIG,nin étant un incrément/décrément apporté à Gmin en phase de bruit, et A2Gmin étant un incrément/décrément apporté à Gmin en phase de parole. L'expression ci-dessus met bien en évidence les deux effets complémen- taires de l'optimisation présentée, à savoir : - l'augmentation de la dureté de la réduction de bruit d'un facteur AiGinin en phase de bruit afin de réduire le bruit résiduel, typiquement Al > 0, par exemple Al = +6 dB ; et - la diminution de la dureté de la réduction de bruit d'un facteur A2Gmin en phase de parole afin de mieux préserver la voix, typiquement A2 Le module de détection d'activité vocale ne prenant que deux valeurs distinctes '0' ou '1', la modulation de la dureté de débruitage sera discrète : G min(k) = Gmin + VAD (k). AG min G,'in(k) étant le gain minimal à appliquer à la trame temporelle courante, G/mn étant une valeur nominale paramétrée dudit gain minimal, VAD (k) étant la valeur du signal booléen de détection d'activité vocale pour la trame temporelle courante, évalué dans le domaine temporel (bloc 30) et appliqué à l'entrée n° 0 du bloc 24, et étant l'incrément/décrément apporté à la valeur G'''. Le détecteur d'activité vocale 30 peut être réalisé de différentes manières, dont a va donner ci-dessous trois exemples d'implémentation. Dans un premier exemple, la détection est opérée à partir du signal y(k), d'une manière intrinsèque au signal recueilli par le micro ; une analyse du caractère plus ou moins harmonique de ce signal permet de déterminer la présence d'une activité vocale, car un signal présentant une forte harmo- nicité peut être considéré, avec une faible marge d'erreur, comme étant un signal de voix, donc correspondant à une présence de parole. Dans un deuxième exemple, le détecteur d'activité vocale 30 fonctionne en réponse au signal produit par une caméra, installée par exemple dans l'habitacle d'un véhicule automobile et orientée de manière que son angle de champ englobe en toutes circonstances la tête du conducteur, considéré comme le locuteur proche. Le signal délivré par la caméra est analysé pour déterminer d'après le mouvement de la bouche et des lèvres si le locuteur parle ou non, comme cela est décrit entre autres dans le EP 2 530 672 Al (Parrot SA), auquel on pourra se référer pour de plus amples explications. L'avantage de cette technique d'analyse d'image est de disposer d'une information complémentaire totalement indépendante de l'environnement de bruit acoustique. Un troisième exemple de capteur utilisable pour la détection d'activité vo- cale est un capteur physiologique susceptible de détecter certaines vibra- tions vocales du locuteur qui ne sont pas ou peu corrompues par le bruit environnant. Un tel capteur peut être notamment constitué d'un accéléromètre ou d'un capteur piézoélectrique appliqué contre la joue ou la tempe du locuteur. Il peut être en particulier incorporé au coussinet d'un écouteur d'un ensemble combiné micro/casque, comme cela est décrit dans le EP 2 518 724 Al (Parrot SA), auquel on pourra se reporter pour plus de détails. En effet, lorsqu'une personne émet un son voisé (c'est-à-dire une compo- sante de parole dont la production s'accompagne d'une vibration des cordes vocales), une vibration se propage depuis les cordes vocales jusqu'au pharynx et à la cavité bucco-nasale, où elle est modulée, amplifiée et articulée. La bouche, le voile du palais, le pharynx, les sinus et les fosses na- sales servent ensuite de caisse de résonance à ce son voisé et, leur paroi étant élastique, elles vibrent à leur tour et ces vibrations sont transmises par conduction osseuse interne et sont perceptibles au niveau de la joue et de la tempe. Ces vibrations au niveau de la joue et de la tempe présentent la caracté- ristique d'être, par nature, très peu corrompues par le bruit environnant. En effet, en présence de bruits extérieurs, même importants, les tissus de la joue et de la tempe ne vibrent quasiment pas, et ceci quelle que soit la composition spectrale du bruit extérieur. Un capteur physiologique qui recueille ces vibrations vocales dépourvues de bruit donne un signal repré- sentatif de la présence ou de l'absence de sons voisés émis par le locu- teur, permettant donc de discriminer très bien les phases de parole et les phases de silence du locuteur. Algorithme de débruitage OM-LSA selon un second mode de réalisation de l'invention Comme on l'a exposé plus haut, la probabilité moyenne de présence de parole Pspeech(k) (calculée comme la moyenne arithmétique des probabilités fréquentielles de présence de parole) est un indicateur plutôt fiable de la présence de parole à l'échelle de la trame. On peut alors envisager de modifier l'expression conventionnelle du calcul du gain OM-LSA, à savoir : 1-i, GOMLSA(k , 1) = {G (k , Op (k Gmp(k l) en pondérant la probabilité fréquentielle de présence de parole par une donnée globale pg/ob(k) de présence de parole évaluée au niveau de la trame : GomLsA(k,1) = fG(k, ojp(k,0 .p gio'(k) G1-p(k,1).10glob(k) Min GOMLSA (k,l) étant le gain spectral à appliquer au bin d'indice 1 de la trame temporelle courante, G (k,l) étant un gain de débruitage sous-optimal à appliquer au bin d'in- dice 1, p(k,l) étant la probabilité de présence de parole du bin d'indice / de la trame temporelle courante, pgiob(k) étant la probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante, et tanin étant une valeur nominale paramétrée du gain spectral. La donnée globale pgiob(k) au niveau de la trame temporelle peut notam- ment être évaluée de la manière suivante : 1 Pgioh (k) = . max{-Pspeech(k); P seuil} I seuil N 1 ...1 Pspeech(k) = p(k, 1) 1 P seuil étant une valeur de seuil de la probabilité globale de parole, et N étant le nombre de bins dans le spectre. Ceci revient à substituer dans l'expression conventionnelle la probabilité fréquentielle p(k,l) par une probabilité combinée pcombinée(k,/) qui intègre une pondération par la donnée globale pgiob(k), non fréquentielle, évaluée au niveau de la trame temporelle en présence de parole : GOMLSA(k , 1) [G (k , 1 jpitcombiiiée(k,1) r1-Pcombinée(k,1) "min Pcombinée(k, 1) = p (k , 1).P glab(k) En d'autres termes : - en présence de parole au niveau de la trame, c'est-à-dire si P speece)> P seuil, l'expression conventionnelle du calcul du gain OM-LSA reste inchangée ; - en l'absence de parole au niveau de la trame, c'est-à-dire si Pspeech(k) REVENDICATIONS1. Un procédé de débruitage d'un signal audio par application d'un algorithme à gain spectral variable fonction d'une probabilité de présence de parole, comportant les étapes successives suivantes : a) génération (10) de trames temporelles successives (y(k)) du signal audio bruité numérisé (y(n)) ; b) application d'une transformation de Fourier (12) aux trames générées à l'étape a), de manière à produire pour chaque trame temporelle de signal un spectre de signal (Y(k,l)) avec une pluralité de bandes de fréquences prédéterminées ; c) dans le domaine fréquentiel : cl) estimation (18), pour chaque bande de fréquences de chaque trame temporelle courante, d'une probabilité de présence de parole (p(k,1)) ; c3) calcul (16) d'un gain spectral (GavEsA(M)), propre à chaque bande de fréquence de chaque trame temporelle courante, en fonction de : i) une estimation de l'énergie du bruit dans chaque bande de fréquences, ii) la probabilité de présence de parole estimée à l'étape cl), et iii) une valeur scalaire de gain minimal représentative d'un paramètre de dureté du débruitage ; c4) réduction sélective de bruit (14) par application à chaque bande de fréquences du gain calculé à l'étape c3) ; d) application d'une transformation de Fourier inverse (20) au spectre de signal (X (k, 0 ) constitué des bandes de fréquences produites à l'étape c4), de manière à délivrer pour chaque spectre une trame temporelle de signal débruité ; et e) reconstitution (22) d'un signal audio débruité à partir des trames temporelles délivrées à l'étape d), procédé caractérisé : - en ce que l'une au moins d'entre : ii) ladite probabilité de présence de parole et iii) ladite valeur scalaire de gain minimal, est une valeur modu- lable de manière dynamique, pour chaque trame temporelle successive ;- et en ce qu'il comporte en outre, préalablement à l'étape c3) de calcul du gain spectral, une étape de : c2) calcul (24) de ladite valeur modulable de manière dynamique pour la trame temporelle courante, en fonction d'une variable globale liée à cette trame temporelle courante. 2. Le procédé de la revendication 1, dans lequel ladite valeur modulable de manière dynamique est la valeur scalaire de gain minimal (Gmm(k)). 3. Le procédé de la revendication 2, dans lequel ladite variable globale est un rapport signal sur bruit (SNRy (k)) de la trame temporelle courante, évalué (26) dans le domaine temporel. 4. Le procédé de la revendication 3, dans lequel la valeur scalaire de gain minimal est calculée à l'étape c2) par application de la relation : Gmin(k) = Gmin AGrnin(SNRy(k)) k étant l'indice de la trame temporelle courante, Gmm(k) étant le gain minimal à appliquer à la trame temporelle courante, Gmin étant une valeur nominale paramétrée dudit gain minimal, AGmin (k) étant l'incrément/décrément apporté à Gmin, et SNRy (k) étant le rapport signal sur bruit de la trame temporelle courante. 5. Le procédé de la revendication 2, dans lequel ladite variable globale est une probabilité moyenne de parole (P speech(k)), évaluée (28) au niveau de la trame temporelle courante. 6. Le procédé de la revendication 5, dans lequel la valeur scalaire de gain minimal est calculée à l'étape c2) par application de la relation : Gmin(k) =Gmin + (P speech(k) 1)- 311Grnin P speech(k). 02Grnin k étant l'indice de la trame temporelle courante, G,,,n(k) étant le gain minimal à appliquer à la trame temporelle courante,G,,,' étant une valeur nominale paramétrée dudit gain minimal, P speech(k) étant la probabilité moyenne de parole évaluée au niveau de la trame temporelle courante, AIG,nin étant un incrément/décrément apporté à Gm' en phase de bruit, et A2G,nin étant un incrément/décrément apporté à Gmin en phase de parole. 7. Le procédé de la revendication 5, dans lequel la probabilité moyenne de parole est évaluée au niveau de la trame temporelle courante par application de la relation : 1 Pspeech (k) = N p(k, 1 étant l'indice de la bande de fréquences, N étant le nombre de bandes de fréquences dans le spectre, et p(k,l) étant la probabilité de présence de parole de la bande de fréquences d'indice 1 de la trame temporelle courante. 8. Le procédé de la revendication 2, dans lequel ladite variable globale est un signal booléen de détection d'activité vocale (VAD (k)) pour la trame temporelle courante, évalué (30) dans le domaine temporel par analyse de la trame temporelle et/ou au moyen d'un détecteur externe. 9. Le procédé de la revendication 8, dans lequel la valeur scalaire de gain minimal est calculée à l'étape c2) par application de la relation : Gmin(k) = Gmin + VAD(k).11Gmin k étant l'indice de la trame temporelle courante, G',,'(k) étant le gain minimal à appliquer à la trame temporelle courante, Gn',' étant une valeur nominale paramétrée dudit gain minimal, VAD (k) étant la valeur du signal booléen de détection d'activité vocale pour la trame temporelle courante, et AGmin étant l'incrément/décrément apporté à la valeur Gmm. 10. Le procédé de la revendication 1, dans lequel ladite valeur modulable de manière dynamique est la probabilité de présence de parole (p(k,l)),ladite variable globale étant une probabilité globale et seuillée de parole (pgiob(k)), évaluée (32) au niveau de la trame temporelle courante. 11. Le procédé de la revendication 10, dans lequel le gain spectral de l'étape c4) est calculé par application de la relation : GomLsA(k, 0 = (G (k, 011)(k,1).Pgiob(k) Glmin eP(k,1).Pb(k) k étant l'indice de la trame temporelle courante, / étant l'indice de la bande de fréquences, GOMLSA (k,l) étant le gain spectral à appliquer à l'étape c4) à la bande de fréquences d'indice / de la trame temporelle courante, G (k,l) étant un gain de débruitage sous-optimal à appliquer à la bande de fréquences d'indice / de la trame temporelle courante, MA étant la probabilité de présence de parole de la bande de fréquences d'indice / de la trame temporelle courante, peb(k) étant la probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante, et G,,,, étant une valeur nominale paramétrée du gain minimal calculé à l'étape c2). 12. Le procédé de la revendication 11, dans lequel la probabilité globale et seuillée de parole, évaluée au niveau de la trame temporelle courante, est donnée par l'expression : Pglob(k) = 1 . max{P speech(k); P seuil} P seuil 1\I avec : N 1 Pspeech(k) = -N1p(k, 1) 1 P seuil étant une valeur de seuil de la probabilité globale de parole, et 25 N étant le nombre de bandes de fréquences dans le spectre.