(19)
(11) EP 1 016 071 B1

(12) FASCICULE DE BREVET EUROPEEN

(45) Mention de la délivrance du brevet:
16.01.2002  Bulletin  2002/03

(21) Numéro de dépôt: 98943998.9

(22) Date de dépôt:  16.09.1998
(51) Int. Cl.7G10L 11/02, G10L 11/06
(86) Numéro de dépôt:
PCT/FR9801/979
(87) Numéro de publication internationale:
WO 9914/737 (25.03.1999 Gazette  1999/12)

(54)

PROCEDE ET DISPOSITIF DE DETECTION D'ACTIVITE VOCALE

VERFAHREN UND VORRICHTUNG ZUR SPRACHDETEKTION

METHOD AND APPARATUS FOR DETECTING SPEECH ACTIVITY


(84) Etats contractants désignés:
CH DE FI GB LI SE

(30) Priorité: 18.09.1997 FR 9711640

(43) Date de publication de la demande:
05.07.2000  Bulletin  2000/27

(73) Titulaires:
  • Matra Nortel Communications
    29100 Quimper (FR)
    Etats contractants désignés:
    DE FI GB SE 
  • Eads Defence and Security Networks
    78180 Montigny Le Bretonneux (FR)
    Etats contractants désignés:
    CH LI 

(72) Inventeurs:
  • LOCKWOOD, Philip
    F-95490 Vaureal (FR)
  • LUBIARZ, Stéphane
    F-95520 Osny (FR)

(74) Mandataire: Loisel, Bertrand et al
Cabinet Plasseraud, 84, rue d'Amsterdam
75440 Paris Cédex 09
75440 Paris Cédex 09 (FR)


(56) Documents cités: : 
DE-A- 4 012 349
US-A- 5 659 622
   
  • PATENT ABSTRACTS OF JAPAN vol. 095, no. 006, 31 juillet 1995 & JP 07 074709 A (SONY), 17 mars 1995 -& US 5 732 390 A (KATAYANAGI ET AL.) 24 mars 1998
   
Il est rappelé que: Dans un délai de neuf mois à compter de la date de publication de la mention de la délivrance de brevet européen, toute personne peut faire opposition au brevet européen délivré, auprès de l'Office européen des brevets. L'opposition doit être formée par écrit et motivée. Elle n'est réputée formée qu'après paiement de la taxe d'opposition. (Art. 99(1) Convention sur le brevet européen).


Description


[0001] La présente invention concerne les techniques numériques de traitement de signaux de parole. Elle concerne plus particulièrement les techniques faisant appel à une détection d'activité vocale afin d'effectuer des traitements différenciés selon que le signal supporte ou non une activité vocale.

[0002] Les techniques numériques en question relèvent de domaines variés : codage de la parole pour la transmission ou le stockage, reconnaissance de la parole, diminution du bruit, annulation d'écho...

[0003] Les méthodes de détection d'activité vocale ont pour principale difficulté la distinction entre l'activité vocale et le bruit qui l'accompagne. Le recours à une technique de débruitage classique ne permet pas de traiter cette difficulté, puisque ces techniques font elles-mêmes appel à des estimations du bruit qui dépendent du degré d'activité vocale du signal. Ce problème a par exemple été décrit dans le document US-A-5659622.

[0004] Un but principal de la présente invention est d'améliorer la robustesse au bruit des méthodes de détection d'activité vocale. Pour atteindre ce but, un procédé comme indiqué dans la revendication 1 est proposé.

[0005] L'invention propose ainsi un procédé de détection d'activité vocale dans un signal de parole numérique traité par trames successives, dans lequel on soumet le signal de parole à un débruitage en tenant compte d'estimations du bruit compris dans le signal, mises à jour pour chaque trame d'une manière dépendante d'au moins un degré d'activité vocale déterminé pour ladite trame. Selon l'invention, on procède à un débruitage a priori du signal de parole de chaque trame sur la base d'estimations du bruit obtenues lors du traitement d'au moins une trame précédente, et on analyse les variations d'énergie du signal débruité a priori pour détecter le degré d'activité vocale de ladite trame.

[0006] Le fait de procéder à la détection d'activité vocale (selon une méthode qui peut généralement être toute méthode connue) sur la base d'un signal débruité a priori améliore sensiblement les performances de cette détection lorsque le bruit environnant est relativement important.

[0007] Dans la suite de la présente description, on illustrera le procédé de détection d'activité vocale selon l'invention dans un système de débruitage d'un signal de parole. On comprendra que ce procédé peut trouver des applications dans de nombreux autres types de traitement numérique de la parole dans lesquels on souhaite disposer d'une information sur le degré d'activité vocale du signal traité : codage, reconnaissance, annulation d'écho...

[0008] D'autres particularités et avantages de la présente invention apparaîtront dans la description ci-après d'exemples de réalisation non limitatifs, en référence aux dessins annexés, dans lesquels :
  • la figure 1 est un schéma synoptique d'un système de débruitage mettant en oeuvre la présente invention ;
  • les figures 2 et 3 sont des organigrammes de procédures utilisées par un détecteur d'activité vocale du système de la figure 1 ;
  • la figure 4 est un diagramme représentant les états d'un automate de détection d'activité vocale ;
  • la figure 5 est un graphique illustrant les variations d'un degré d'activité vocale ;
  • la figure 6 est un schéma synoptique d'un module de surestimation du bruit du système de la figure 1 ;
  • la figure 7 est un graphique illustrant le calcul d'une courbe de masquage ; et
  • la figure 8 est un graphique illustrant l'exploitation des courbes de masquage dans le système de la figure 1.


[0009] Le système de débruitage représenté sur la figure 1 traite un signal numérique de parole s. Un module de fenêtrage 10 met ce signal s sous forme de fenêtres ou trames successives, constituées chacune d'un nombre N d'échantillons de signal numérique. De façon classique, ces trames peuvent présenter des recouvrements mutuels. Dans la suite de la présente description, on considérera, sans que ceci soit limitatif, que les trames sont constituées de N=256 échantillons à une fréquence d'échantillonnage Fe de 8 kHz, avec une pondération de Hamming dans chaque fenêtre, et des recouvrements de 50% entre fenêtres consécutives.

[0010] La trame de signal est transformée dans le domaine fréquentiel par un module 11 appliquant un algorithme classique ce transformée de Fourier rapide (TFR) pour calculer le module du spectre du signal. Le module 11 délivre alors un ensemble de N=256 composantes fréquentielles du signal de parole, notées Sn,f, où n désigne le numéro de la trame courante, et f une fréquence du spectre discret. Du fait des propriétés des signaux numériques dans le domaine fréquenciel, seuls les N/2=128 premiers échantillons sont utilisés.

[0011] Pour calculer les estimations du bruit contenu dans le signal s, on n'utilise pas la résolution fréquentielle disponible en sortie de la transformée de Fourier rapide, mais une résolution plus faible, déterminée par un nombre I de bandes de fréquences couvrant la bande [0,Fe/2] du signal. Chaque bande i (1≤i≤I) s'étend entre une fréquence inférieure f(i-1) et une fréquence supérieure f(i), avec f(0)=0, et f(I)=Fe/2. Ce découpage en bandes de fréquences peut être uniforme (f(i)-f(i-1)=Fe/2I). Il peut également être non uniforme (par exemple selon une échelle de barks). Un module 12 calcule les moyennes respectives des composantes spectrales Sn,f du signal de parole par bandes, par exemple par une pondération uniforme telle que :



[0012] Ce moyennage diminue les fluctuations entre les bandes en moyennant les contributions du bruit dans ces bandes, ce qui diminuera la variance de l'estimateur de bruit. En outre, ce moyennage permet une forte diminution de la complexité du système.

[0013] Les composantes spectrales moyennées Sn,i sont adressées à un module 15 de détection d'activité vocale et à un module 16 d'estimation du bruit. Ces deux modules 15, 16 fonctionnent conjointement, en ce sens que des degrés d'activité vocale γn,i mesurés pour les différentes bandes par le module 15 sont utilisés par le module 16 pour estimer l'énergie à long terme du bruit dans les différentes bandes, tandis que ces estimations à long terme Ên,i sont utilisées par le module 15 pour procéder à un débruitage a priori du signal de parole dans les différentes bandes pour déterminer les degrés d'activité vocale γn,i.

[0014] Le fonctionnement des modules 15 et 16 peut correspondre aux organigrammes représentés sur les figures 2 et 3.

[0015] Aux étapes 17 à 20, le module 15 procède au débruitage a priori du signal de parole dans les différentes bandes i pour la trame de signal n. Ce débruitage a priori est effectué selon un processus classique de soustraction spectrale non linéaire à partir d'estimations du bruit obtenues lors d'une ou plusieurs trames précédentes. A l'étape 17, le module 15 calcule, avec la résolution des bandes i, la réponse en fréquence Hpn,i du filtre de débruitage a priori, selon la formule :

où τ1 et τ2 sont des retards exprimés en nombre de trames (τ1≥1, τ2≥0), et α'n,i est un coefficient de surestimation du bruit dont la détermination sera expliquée plus loin. Le retard τ1 peut être fixe (par exemple τ1=1) ou variable. Il est d'autant plus faible qu'on est confiant dans la détection d'activité vocale.

[0016] Aux étapes 18 à 20, les composantes spectrales Êpn,i sont calculées selon :

où βpi est un coefficient de plancher proche de 0, servant classiquement à éviter que le spectre du signal débruité prenne des valeurs négatives ou trop faibles qui provoqueraient un bruit musical.

[0017] Les étapes 17 à 20 consistent donc essentiellement à soustraire du spectre du signal une estimation, majorée par le coefficient α'n-τ1,i, du spectre du bruit estimé a priori.

[0018] A l'étape 21, le module 15 calcule l'énergie du signal débruité a priori dans les différentes bandes i pour la trame n : En,i = Êp

. Il calcule aussi une moyenne globale En,0 de l'énergie du signal débruité a priori, par une somme des énergies par bande En,i, pondérée par les largeurs de ces bandes. Dans les notations ci-dessous, l'indice i=0 sera utilisé pour désigner la bande globale du signal.

[0019] Aux étapes 22 et 23, le module 15 calcule, pour chaque bande i (0≤i≤I), une grandeur ΔEn,i représentant la variation à court terme de l'énergie du signal débruité dans la bande i, ainsi qu'une valeur à long terme

n,i de l'énergie du signal débruité dans la bande i. La grandeur ΔEn,i peut être calculée par une formule simplifiée de dérivation :

. Quant à l'énergie à long terme En,i, elle peut être calculée à l'aide d'un facteur d'oubli B1 tel que 0<B1<1, à savoir

n,i = B1.

n-1,i + (1-B1).En,i.

[0020] Après avoir calculé les énergies En,i du signal débruité, ses variations à court terme ΔEn,1 et ses valeurs à long terme

n,i de la manière indiquée sur la figure 2, le module 15 calcule, pour chaque bande i (0≤i≤I), une valeur ρ1 représentative de l'évolution de l'énergie du signal débruité. Ce calcul est effectué aux étapes 25 à 36 de la figure 3, exécutées pour chaque bande i entre i=0 et i=1. Ce calcul fait appel à un estimateur à long terme de l'enveloppe du bruit bai, à un estimateur interne bii et à un compteur de trames bruitées bi.

[0021] A l'étape 25, la grandeur ΔEn,i est comparée à un seuil ε1. Si le seuil ε1 n'est pas atteint, le compteur bi est incrémenté d'une unité à l'étape 26. A l'étape 27, l'estimateur à long terme bai est comparé à la valeur de l'énergie lissée En,i. Si bai

n,i, l'estimateur bai est pris égal à la valeur lissée

n,i à l'étape 28, et le compteur bi est remis à zéro. La grandeur ρi, qui est prise égale au rapport bai/

n,i (étape 36), est alors égale à 1.

[0022] Si l'étape 27 montre que bai<

n,i, le compteur bi est comparé à une valeur limite bmax à l'étape 29. Si bi>bmax, le signal est considéré comme trop stationnaire pour supporter de l'activité vocale. L'étape 28 précitée, qui revient à considérer que la trame ne comporte que du bruit, est alors exécutée. Si bi≤bmax à l'étape 29, l'estimateur interne bii est calculé à l'étape 33 selon :

Dans cette formule, Bm représente un coefficient de mise à jour compris entre 0,90 et 1. Sa valeur diffère selon l'état d'un automate de détection d'activité vocale (étapes 30 à 32). Cet état δn-1 est celui déterminé lors du traitement de la trame précédente. Si l'automate est dans un état de détection de parole (δn-1=2 à l'étape 30), le coefficient Bm prend une valeur Bmp très proche de 1 pour que l'estimateur du bruit soit très faiblement mis à jour en présence de parole. Dans le cas contraire, le coefficient Bm prend une valeur Bms plus faible, pour permettre une mise à jour plus significative de l'estimateur de bruit en phase de silence. A l'étape 34, l'écart bai-bii entre l'estimateur à long terme et l'estimateur interne du bruit est comparé à un seuil ε2. Si le seuil ε2 n'est pas atteint, l'estimateur à long terme bai est mis à jour avec la valeur de l'estimateur interne bii à l'étape 35. Sinon, l'estimateur à long terme bai reste inchangé. On évite ainsi que de brutales variations dues à un signal de parole conduisent à une mise à jour de l'estimateur de bruit.

[0023] Après avoir obtenu les grandeurs ρi, le module 15 procède aux décisions d'activité vocale à l'étape 37. Le module 15 met d'abord à jour l'état de l'automate de détection selon la grandeur ρ0 calculée pour l'ensemble de la bande du signal. Le nouvel état δn de l'automate dépend de l'état précédent δn-1 et de ρ0, de la manière représentée sur la figure 4.

[0024] Quatre états sont possibles : δ=0 détecte le silence, ou absence de parole ; δ=2 détecte la présence d'une activité vocale ; et les états δ=1 et δ=3 sont des états intermédiaires de montée et de descente. Lorsque l'automate est dans l'état de silence (δn-1=0), il y reste si ρ0 ne dépasse pas un premier seuil SE1, et il passe dans l'état de montée dans le cas contraire. Dans l'état de montée (δn-1=1), il revient dans l'état de silence si ρ0 est plus petit que le seuil SE1, il passe dans l'état de parole si ρ0 est plus grand qu'un second seuil SE2 plus grand que le seuil SE1, et il reste dans l'état de montée si SE1≤ ρ0≤SE2. Lorsque l'automate est dans l'état de parole (δn-1=2), il y reste si ρ0 dépasse un troisième seuil SE3 plus petit que le seuil SE2, et il passe dans l'état de descente dans le cas contraire. Dans l'état de descente (δn-1=3), l'automate revient dans l'état de parole si ρ0 est plus grand que le seuil SE2, il revient dans l'état de silence si ρ0 est en deçà d'un quatrième seuil SE4 plus petit que le seuil SE2, et il reste dans l'état de descente si SE4≤ρ0≤SE2.

[0025] A l'étape 37, le module 15 calcule également les degrés d'activité vocale γn,i dans chaque bande i≥1. Ce degré γn,i est de préférence un paramètre non binaire, c'est-à-dire que la fonction γn,i=g(ρi) est une fonction variant continûment entre 0 et 1 en fonction des valeurs prises par la grandeur ρi. Cette fonction a par exemple l'allure représentée sur la figure 5.

[0026] Le module 16 calcule les estimations du bruit par bande, qui seront utilisées dans le processus de débruitage, en utilisant les valeurs successives des composantes Sn,i et des degrés d'activité vocale γn,i. Ceci correspond aux étapes 40 à 42 de la figure 3. A l'étape 40, on détermine si l'automate de détection d'activité vocale vient de passer de l'état de montée à l'état de parole. Dans l'affirmative, les deux dernières estimations n-1,i et n-2,i précédemment calculées pour chaque bande i≥1 sont corrigées conformément à la valeur de l'estimation précédente n-3,i. Cette correction est effectuée pour tenir compte du fait que, dans la phase de montée (δ=1), les estimations à long terme de l'énergie du bruit dans le processus de détection d'activité vocale (étapes 30 à 33) ont pu être calculées comme s1 le signal ne comportait que du bruit (Bm=Bms), de sorte qu'elles risquent d'être entachées d'erreur.

[0027] A l'étape 42, le module 16 met à jour les estimations du bruit par bande selon les formules :



où λB désigne un facteur d'oubli tel que 0<λB<1. La formule (6) met en évidence la prise en compte du degré d'activité vocale non binaire γn,1.

[0028] Comme indiqué précédemment, les estimations à long terme du bruit n,i font l'objet d'une surestimation, par un module 45 (figure 1), avant de procéder au débruitage par soustraction spectrale non linéaire. Le module 45 calcule le coefficient de surestimation α'n,i précédemment évoqué, ainsi qu'une estimation majorée 'n,i qui correspond essentiellement à α'n,i.n,i.

[0029] L'organisation du module de surestimation 45 est représentée sur la figure 6. L'estimation majorée B̂'n,i est obtenue en combinant l'estimation à long terme n,i et une mesure ΔB

de la variabilité de la composante du bruit dans la bande i autour de son estimation à long terme. Dans l'exemple considéré, cette combinaison est, pour l'essentiel, une simple somme réalisée par un additionneur 46. Ce pourrait également être une somme pondérée.

[0030] Le coefficient de surestimation α'n,i est égal au rapport entre la somme n,i + ΔB

délivrée par l'additionneur 46 et l'estimation à long terme retardée n-τ3,i (diviseur 47), plafonné à une valeur limite αmax, par exemple αmax=4 (bloc 48). Le retard τ3 sert à corriger le cas échéant, dans les phases de montée (δ=1), la valeur du coefficient de surestimation α'n,i, avant que les estimations à long terme aient été corrigées par les étapes 40 et 41 de la figure 3 (par exemple τ3=3)

[0031] L'estimation majorée 'n,i est finalement prise égale à α'n,i.B̂n-τ3,i (multiplieur 49).

[0032] La mesure ΔB

de la variabilité du bruit reflète la variance de l'estimateur de bruit. Elle est obtenue en fonction des valeurs de Sn,i et de n,i calculées pour un certain nombre de trames précédentes sur lesquelles le signal de parole ne présente pas d'activité vocale dans la bande i. C'est une fonction des écarts |Sn-k,i - n-k,i| calculés pour un nombre K de trames de silence (n-k≤n). Dans l'exemple représenté, cette fonction est simplement le maximum (bloc 50). Pour chaque trame n, le degré d'activité vocale γn,i est comparé à un seuil (bloc 51) pour décider si l'écart |Sn,i - n,i|, calculé en 52-53, doit ou non être chargé dans une file d'attente 54 de K emplacements organisée en mode premier entré-premier sorti (FIFO). Si γn,i ne dépasse pas le seuil (qui peut être égal à 0 si la fonction g() a la forme de la figure 5), la FIFO 54 n'est pas alimentée, tandis qu'elle l'est dans le cas contraire. La valeur maximale contenue dans la FIFO 54 est alors fournie comme mesure de variabilité ΔB

.

[0033] La mesure de variabilité ΔB

peut, en variante, être obtenue en fonction des valeurs Sn,f (et non Sn,i) et n,i. On procède alors de la même manière, sauf que la FIFO 54 contient non pas |Sn-k,i - n-k,i| pour chacune des bandes i, mais plutôt

.

[0034] Grâce aux estimations indépendantes des fluctuations à long terme du bruit n,i et de sa variabilité à court terme ΔB

, l'estimateur majoré. 'n,i procure une excellente robustesse aux bruits musicaux du procédé de débruitage.

[0035] Une première phase de la soustraction spectrale est réalisée par le module 55 représenté sur la figure 1. Cette phase fournit, avec la résolution des bandes i (1≤i≤I), la réponse en fréquence H

d'un premier filtre de débruitage, en fonction des composantes Sn,i et n,i et des coefficients de surestimation α'n,i. Ce calcul peut être effectué pour chaque bande i selon la formule :

où τ4 est un retard entier déterminé tel que τ4≥0 (par exemple τ4=0). Dans l'expression (7), le coefficient β

représente, comme le coefficient βpi de la formule (3), un plancher servant classiquement à éviter les valeurs négatives ou trop faibles du signal débruité.

[0036] De façon connue (EP-A-0 534 837), le coefficient de surestimation α'n,i pourrait être remplacé dans la formule (7) par un autre coefficient égal à une fonction de α'n,i et d'une estimation du rapport signal-sur-bruit (par exemple Sn,i/n,i), cette fonction étant décroissante selon la valeur estimée du rapport signal-sur-bruit. Cette fonction est alors égale à α'n,i pour les valeurs les plus faibles du rapport signal-sur-bruit. En effet, lorsque le signal est très bruité, il n'est a priori pas utile de diminuer le facteur de surestimation. Avantageusement, cette fonction décroît vers zéro pour les valeurs les plus élevées du rapport signal/bruit. Ceci permet de protéger les zones les plus énergétiques du spectre, où le signal de parole est le plus significatif, la quantité soustraite du signal tendant alors vers zéro.

[0037] Cette stratégie peut être affinée en l'appliquant de manière sélective aux harmoniques de la fréquence tonale (« pitch ») du signal de parole lorsque celui-ci présente une activité vocale.

[0038] Ainsi, dans la réalisation représentée sur la figure 1, une seconde phase de débruitage est réalisée par un module 56 de protection des harmoniques. Ce module calcule, avec la résolution de la transformée de Fourier, la réponse en fréquence H

d'un second filtre de débruitage en fonction des paramètres H

, α'n,i, n,i, δn, Sn,i et de la fréquence tonale fp=Fe/Tp calculée en dehors des phases de silence par un module d'analyse harmonique 57. En phase de silence (δn=0), le module 56 n'est pas en service, c'est-à-dire que H

= H

pour chaque fréquence f d'une bande i. Le module 57 peut appliquer toute méthode connue d'analyse du signal de parole de la trame pour déterminer la période Tp, exprimée comme un nombre entier ou fractionnaire d'échantillons, par exemple une méthode de prédiction linéaire.

[0039] La protection apportée par le module 56 peut consister à effectuer, pour chaque fréquence f appartenant à une bande i :



[0040] Δf=Fe/N représente la résolution spectrale de la transformée de Fourier. Lorsque H

=1, la quantité soustraite de la composante Sn,f sera nulle. Dans ce calcul, les coefficients de plancher β

(par exemple β

= β

) expriment le fait que certaines harmoniques de la fréquence tonale fp peuvent être masquées par du bruit, de sorte qu'il n'est pas utile de les protéger.

[0041] Cette stratégie de protection est de préférence appliquée pour chacune des fréquences les plus proches des harmoniques de fp, c'est-à-dire pour η entier quelconque.

[0042] Si on désigne par δfp la résolution fréquentielle avec laquelle le module d'analyse 57 produit la réquence tonale estimée fp, c'est-à-dire que la fréquence tonale réelle est comprise entre fp-δfp/2 et fp+δfp/2, alors l'écart entre la η-ième harmonique de la fréquence tonale réelle est son estimation η×fp (condition (9)) peut aller jusqu'à ± η×δfp/2. Pour les valeurs élevées de η, cet écart peut être supérieur à la demi-résolution spectrale Δf/2 de la transformée de Fourier. Pour tenir compte de cette incertitude et garantir la bonne protection des harmoniques de la fréquence tonale réelle, on peut protéger chacune des fréquences . de l'intervalle [η×fp- η×δfp/2,η×fp+ η×δfp/2], c'est-à-dire remplacer la condition (9) ci-dessus par :

Cette facon de procéder (condition (9')) présente un intérêt particulier lorsque les valeurs de η peuvent être grandes, notamment dans le cas où le procédé est utilisé dans un système à bande élargie.

[0043] Pour chaque fréquence protégée, la réponse en fréquence corrigée H

peut être égale à 1 comme indiqué ci-dessus, ce qui correspond à la soustraction d'une quantité nulle dans le cadre de la soustraction spectrale, c'est-à-dire à une protection complète de la fréquence en question. Plus généralement, cette réponse en fréquence corrigée H

pourrait être prise égale à une valeur comprise entre 1 et H

selon le degré de protection souhaité, ce qui correspond à la soustraction d'une quantité inférieure à celle qui serait soustraite si la fréquence en question n'était pas protégée.

[0044] Les composantes spectrales S

d'un signal débruité sont calculées par un multiplieur 58 :



[0045] Ce signal S

est fourni à un module 60 qui calcule, pour chaque trame n, une courbe de masquage en appliquant un modèle psychoacoustique de perception auditive par l'oreille humaine.

[0046] Le phénomène de masquage est un principe connu du fonctionnement de l'oreille humaine. Lorsque deux fréquences sont entendues simultanément, il est possible que l'une des deux ne soit plus audible. On dit alors qu'elle est masquée.

[0047] Il existe différentes méthodes pour calculer des courbes de masquage. On peut par exemple utiliser celle développée par J.D. Johnston («Transform Coding of Audio Signals Using Perceptual Noise Criteria », IEEE Journal on Selected Area in Communications, Vol. 6, No. 2, février 1988). Dans cette méthode, on travaille dans l'échelle fréquentielle des barks. La courbe de masquage est vue comme la convolution de la fonction d'étalement spectral de la membrane basilaire dans le domaine bark avec le signal excitateur, constitué dans la présente application par le signal S

. La fonction d'étalement spectral peut être modélisée de la manière représentée sur la figure 7. Pour chaque bande de bark, on calcule la contribution des bandes inférieures et supérieures convoluées par la fonction d'étalement de la membrane basilaire :

où les indices q et q' désignent les bandes de bark (0≤q,q'≤Q), et S

, représente la moyenne des composantes S

du signal excitateur débruité pour les fréquences discrètes f appartenant à la bande de bark q'.

[0048] Le seuil de masquage Mn,q est obtenu par le module 60 pour chaque bande de bark q, selon la formule :

où Rq dépend du caractère plus ou moins voisé du signal. De façcn connue, une forme possible de Rq est :

avec A=14,5 et B=5,5. χ désigne un degré de voisement du signal de parole, variant entre zéro (pas de voisement) et 1 (signal fortement voisé). Le paramètre χ peut être de la forme connue :

où SFM représente, en décibels, le rapport entre la moyenne arithmétique et la moyenne géométrique de l'énergie des bandes de bark, et SFMmax=-60 dB.

[0049] Le système de débruitage comporte encore un module 62 qui corrige la réponse en fréquence du filtre de débruitage, en fonction de la courbe de masquage Mn,q calculée par le module 60 et des estimations majorées B̂'n,i calculées par le module 45. Le module 62 décide du niveau de débruitage qui doit réellement être atteint.

[0050] En comparant l'enveloppe de l'estimation majorée du bruit avec l'enveloppe formée par les seuils de masquage Mn,q, on décide de ne débruiter le signal que dans la mesure où l'estimation majorée 'n,i dépasse la courbe de masquage. Ceci évite de supprimer inutilement du bruit masqué par de la parole.

[0051] La nouvelle réponse H

, pour une fréquence f appartenant à la bande i définie par le module 12 et à la bande de bark q, dépend ainsi de l'écart relatif entre l'estimation majorée 'n,i de la composante spectrale correspondante du bruit et la courbe de masquage Mn,q, de la manière suivante :



[0052] En d'autres termes, la quantité soustraite d'une composante spectrale Sn,f, dans le processus de soustraction spectrale ayant la réponse fréquentielle H3n,f, est sensiblement égale au minimum entre d'une part la quantité soustraite de cette composante spectrale dans le processus de soustraction spectrale ayant la réponse fréquentielle H2n,f, et d'autre part la fraction de l'estimation majorée B̂'n,i de la composante spectrale correspondante du bruit qui, le cas échéant, dépasse la courbe de masquage Mn,q.

[0053] La figure 8 illustre le principe de la correction appliquée par le module 62. Elle montre schématiquement un exemple de courbe de masquage Mn,q calculée sur la base des composantes spectrales S2n,f du signal débruité, ainsi que l'estimation majorée B̂'n,i du spectre du bruit. La quantité finalement soustraite des composantes Sn,f sera celle représentée par les zones hachurées, c'est-à-dire limitée à la fraction de l'estimation majorée B̂'n,i des composantes spectrales du bruit qui dépasse la courbe de masquage.

[0054] Cette soustraction est effectuée en multipliant la réponse fréquentielle H

du filtre de débruitage par les composantes spectrales Sn,f du signal de parole (multiplieur 64). Un module 65 reconstruit alors le signal débruité dans le domaine temporel, en opérant la transformée de Fourier rapide inverse (TFRI) inverse des échantillons de fréquence S

délivrés par le multiplieur 64. Pour chaque trame, seuls les N/2=128 premiers échantillons du signal produit par le module 65 sont délivrés comme signal débruité final s3, après reconstruction par addition-recouvrement avec les N/2=128 derniers échantillons de la trame précédente (module 66).


Revendications

1. Procédé de détection d'activité vocale dans un signal de parole numérique (s) traité par trames successives, dans lequel on soumet le signal de parole à un débruitage en tenant compte d'estimations du bruit compris dans le signal, mises à jour pour chaque crame d'une manière dépendant d'au moins un degré d'activité vocale (γn,i) déterminé pour ladite trame, caractérisé en ce qu'on procède à un débruitage a priori du signal de parole de chaque trame sur la base d'estimations du bruit obtenues lors du traitement d'au moins une trame précédente, et on analyse les variations d'énergie du signal débruité a priori pour détecter le degré d'activité vocale de ladite trame.
 
2. Procédé selon la revendication 1, dans lequel le degré d'activité vocale (γn,i) est un paramètre non binaire.
 
3. Procédé selon la revendication 2, dans lequel le degré d'activité vocale (γn,i) est une fonction, variant continûment entre 0 et 1.
 
4. Procédé selon l'une quelconque des revendications précédentes, dans lequel les estimations du bruit sont obtenues dans différentes bandes fréquentielles du signal, le débruitage a priori est effectué bande par bande, et il est déterminé un degré d'activité vocale (γn,i) pour chaque bande.
 
5. Procédé selon l'une quelconque des revendications précédentes, dans lequel on obtient une estimation du bruit n,i pour la trame n dans une bande de fréquences i sous la forme :

avec

où λB est un facteur d'oubli compris entre 0 et 1, γn,i est le degré d'activité vocale déterminé pour la trame n dans la bande de fréquences i, et Sn,1 est une moyenne de l'amplitude du spectre du signal de parole de la trame n sur la bande i.
 
6. Procédé selon la revendication 5, dans lequel le signal débruité a priori Êpn,i relativement à une trame n et à une bande de fréquences i est de la forme :



, τ1 est un entier au moins égal à 1, τ2 est un entier au moins égal à 0, α'n-τ1,i est un coefficient de surestimation déterminé pour la trame n-τ1 et la bande i, et βpi est un coefficient positif.
 
7. Procédé selon l'une quelconque des revendications précédentes, dans lequel on calcule une estimation à long terme (

n,i) de l'énergie du signal débruité a priori (Êpn,i), et on compare cette estimation à long terme à une estimation instantanée (ba) de cette énergie, calculée sur la trame en cours, pour obtenir le degré d'activité vocale (γn,i) de ladite trame.
 
8. Détecteur d'activité vocale, comprenant des moyens de traitement adaptés pour mettre en oeuvre un procédé selon l'une quelconque des revendications précédentes.
 


Ansprüche

1. Verfahren zum Erfassen von Stimmaktivität in einem in aufeinanderfolgenden Blöcken behandelten digitalen Sprachsignal (s), bei dem das Sprachsignal einer Rauschunterdrückung unter Berücksichtigung von Schätzungen des im Signal enthaltenen Rauschens unterzogen wird, die für jeden Block auf eine Weise aktualisiert werden, die von zumindest einem für den betreffenden Block bestimmten Grad der Stimmaktivität (γn,i) abhängt, dadurch gekennzeichnet, daß eine apriorische Rauschunterdrückung des Sprachsignals eines jeden Blocks auf der Grundlage von Schätzungen des Rauschens durchgeführt wird, die bei der Behandlung von mindestens einem vorhergehenden Block erhalten wurden, und die Variationen der Energie des apriorisch rauschunterdrückten Signals analysiert werden, um den Grad der Stimmaktivität des Blocks zu erfassen.
 
2. Verfahren nach Anspruch 1, bei dem der Grad der Stimmaktivität (γn,i) ein nicht-binärer Parameter ist.
 
3. Verfahren nach Anspruch 2, bei dem der Grad der Stimmaktivität (γn,i) eine ständig zwischen 0 und 1 variierende Funktion ist.
 
4. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Schätzungen des Rauschens in verschiedenen Frequenzbändern des Signals erhalten werden, die apriorische Rauschunterdrückung Band für Band durchgeführt wird, und ein Grad der Stimmaktivität (γn,i) für jedes Band bestimmt wird.
 
5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem eine Schätzung des Rauschens B̂n,i für den Block n in einem Frequenzband i in der Form

mit

erhalten wird,
wobei λB ein zwischen 0 und 1 liegender Vergessensfaktor ist, γn,i der für den Block n im Frequenzband i bestimmte Grad der Stimmaktivität ist, und Sn,i ein Mittelwert der Amplitude des Spektrums des Sprachsignals des Blocks n im Band i ist.
 
6. Verfahren nach Anspruch 5, bei dem das apriorisch rauschunterdrückte Signal Êpn,i bezüglich eines Blocks n und eines Frequenzbandes i die Form aufweist:

wobei

, τ1 eine ganze Zahl von mindestens gleich 1 ist, τ2 eine ganze Zahl von mindestens gleich 0 ist, α'n-τ1,i ein für den Block n-τ1 und das Band i bestimmter Überbewertungskoeffizient ist, und βpi ein positiver Koeffizient ist.
 
7. Verfahren nach einem der vorhergehenden Ansprüche, bei dem eine Langzeitschätzung (

n,i) der Energie des apriorisch rauschunterdrückten Signals (Êpn,i) berechnet wird und diese Langzeitschätzung mit einer an dem betreffenden Block berechneten, momentanen Schätzung (ba) dieser Energie verglichen wird, um den Grad der Stimmaktivität (γn,i) des Blocks zu erhalten.
 
8. Stimmaktivität-Erfassungseinrichtung mit einer zum Durchführen eines Verfahrens nach einem der vorhergehenden Ansprüche konzipierten Behandlungseinrichtung.
 


Claims

1. Method of detecting vocal activity in a digital speech signal (s) processed by successive frames, comprising the step of subjecting the speech signal to noise suppression taking account of estimates of the noise included in the signal, updated for each frame in a manner depending on at least one degree of vocal activity (γn,i) determined for said frame, characterized in that a priori noise suppression is applied to the speech signal of each frame on the basis of estimates of the noise obtained on processing at least one preceding frame, and energy variations of the a priori noise-suppressed signal are analyzed to detect the degree of vocal activity of said frame.
 
2. Method according to claim 1, wherein the degree of vocal activity (γn,i) is a non-binary parameter.
 
3. Method according to claim 2, wherein the degree of vocal activity (γn,i) is a function which varies in a continuous manner in the range from 0 to 1.
 
4. Method according to any one of the preceding claims, wherein the estimates of the noise are obtained in different frequency bands of the signal, the a priori noise suppression is effected band by band, and a degree of vocal activity (γn,i) is determined for each band.
 
5. Method according to any one of the preceding claims, wherein an estimate of the noise n,i is obtained for the frame n in a band of frequencies i in the form:

where

where λB is a forgetting factor in the range from 0 to 1, γn,i is the degree of vocal activity determined for the frame n in the band of frequencies i, and Sn,i is an average speech signal amplitude in frame n in band i.
 
6. Method according to claim 5, in which the a priori noise-suppressed signal Êpn,i relative to a frame n and a band of frequencies i is of the form:

where

, τ1 is an integer at least equal to 1, τ2 is an integer at least equal to 0, α'n-τ1,i is an overestimation coefficient determined for the frame n-τ1 and the band i, and βpi is a positive coefficient.
 
7. Method according to any one of the preceding claims, wherein a long-term estimate (

n,i) of the energy of the a priori noise-suppressed signal (Êpn,i) is computed and said long-term estimate is compared with an instantaneous estimate (ba) of said energy, computed over the current frame, to obtain the degree of vocal activity (γn,i) of said frame.
 
8. A vocal activity detector, comprising processing means adapted to implement a method according to any one of the preceding claims.
 




Dessins