EP1116216A1 - Procede et dispositif de detection d'activite vocale - Google Patents

Procede et dispositif de detection d'activite vocale

Info

Publication number
EP1116216A1
EP1116216A1 EP00956596A EP00956596A EP1116216A1 EP 1116216 A1 EP1116216 A1 EP 1116216A1 EP 00956596 A EP00956596 A EP 00956596A EP 00956596 A EP00956596 A EP 00956596A EP 1116216 A1 EP1116216 A1 EP 1116216A1
Authority
EP
European Patent Office
Prior art keywords
versions
energy
speech signal
signal
vad
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP00956596A
Other languages
German (de)
English (en)
Inventor
Stéphane LUBIARZ
Edouard Hinard
François CAPMAN
Philip Lockwood
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks France SAS
Original Assignee
Matra Nortel Communications SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matra Nortel Communications SAS filed Critical Matra Nortel Communications SAS
Publication of EP1116216A1 publication Critical patent/EP1116216A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals

Definitions

  • the present invention relates to digital techniques for processing speech signals. It relates more particularly to techniques using voice activity detection in order to carry out differentiated processing depending on whether the signal supports voice activity or not.
  • the digital techniques in question come from various fields: speech coding for transmission or storage, speech recognition, noise reduction, echo cancellation ...
  • the main difficulty with voice activity detection methods is the distinction between voice activity and the noise that accompanies the speech signal.
  • Document WO99 / 1 737 describes a method for detecting voice activity in a digital speech signal processed by successive frames, in which a priori denoising of the speech signal of each frame is carried out on the basis of noise estimates obtained during the processing of one or more previous frames, and the energy variations of the noise-suppressed signal are analyzed a priori to detect a degree of vocal activity in the frame.
  • the fact of detecting voice activity on the basis of an a priori denoised signal appreciably improves the performance of this detection when the surrounding noise is relatively high.
  • An object of the present invention is to propose another type of analysis allowing detection of vocal activity robust to the noise which can accompany the speech signal.
  • a method for detecting voice activity in a digital speech signal in at least one frequency band according to which the voice activity is detected on the basis of an analysis comprising a comparison, in said frequency band, of two different versions of the speech signal, at least one of which is a denoised version obtained by taking into account estimates of the noise included in the signal.
  • This process can be performed over the entire frequency band of the signal, or in sub-bands, depending on the needs of the application using the voice activity detection.
  • Speech activity can be detected binary for each band, or measured by a continuously varying parameter that can result from comparing the two different versions of the speech signal.
  • the comparison typically relates to respective energies, evaluated in said frequency band, of the two different versions of the speech signal, or to a monotonic function of these energies.
  • Another aspect of the present invention relates to a device for detecting voice activity in a speech signal, comprising signal processing means arranged to implement a method as defined above.
  • the invention also relates to a computer program, loadable in a memory associated with a processor, and comprising portions of code for implementing a method as defined above during the execution of said program. by the processor, as well as to a computer medium, on which such a program is recorded.
  • FIG. 1 is a block diagram of a signal processing chain using a voice activity detector according to the invention
  • FIG. 2 is a block diagram of an example of voice activity detector according to the invention.
  • FIGS. 3 and 4 are flow diagrams of signal processing operations carried out in the detector of FIG. 2,
  • FIG. 5 is a graph showing an example of evolution of energies calculated in the detector of Figure 2 and illustrating the principle of voice activity detection
  • FIG. 6 is a diagram of a detection automaton implemented in the detector of Figure 2;
  • FIG. 7 is a block diagram of another embodiment of a voice activity detector according to the invention.
  • - Figure 8 is a flow chart of signal processing operations performed in the detector of Figure 7;
  • - Figure 9 is a graph of a function used in the operations of Figure 8
  • the device of FIG. 1 processes a digital speech signal s
  • the signal processing chain represented produces decisions of voice activity ⁇ n . usable in a manner known per se by application units, not shown, providing functions such as speech coding, speech recognition, noise reduction, echo cancellation Decisions ⁇ n .
  • a windowing module 10 puts the signal s in the form of successive windows or frames of index n, each consisting of a number N of digital signal samples Conventionally, these frames may have mutual overlaps
  • N 256 samples at a frequency d 8 kHz F e sampling, with Hamming weighting in each window, and 50% overlap between consecutive windows
  • the signal frame is transformed in the frequency domain by a module 11 applying a conventional fast Fou ⁇ er transform (TFR) algorithm to calculate the module of the signal spectrum.
  • TFR fast Fou ⁇ er transform
  • the frequency resolution available at the output of the fast Fou ⁇ er transform is not used, but a lower resolution, determined by a number I of frequency sub-bands covering the band [0, F e / 2] of the signal
  • a module 12 calculates the respective means of the spectral components S nf of the speech signal by sub-bands, for example by a uniform weighting such that s - 1 y 'nf
  • This averaging decreases the fluctuations between the sub-bands by averaging the contributions of the noise in these sub-bands, which will decrease the variance of the noise estimator. In addition, this averaging makes it possible to reduce the complexity of the system.
  • the averaged spectral components S n are addressed to a voice activity detection module 15 and to a noise estimation module 16
  • B n the long-term estimate of the noise component produced by the module 16 relative to frame n and subband i
  • these estimates can represent a long-term average, or even a minimum of the component S n , over a sliding window long enough
  • FIGS. 2 to 6 illustrate a first embodiment of the voice activity detector 15
  • a denoising module 18 performs, for each frame n and each sub-band i, the operations corresponding to steps 180 to 187 of FIG. 3, to produce two noisy versions ⁇ p-
  • This denoising is operated by nonlinear spectral subtraction
  • the first version Ep ⁇ n is denoised so as to be not less than, in the spectral domain, a ⁇ 1 fraction, of the long-term estimate B n . ⁇ ⁇ ,
  • the first version Ep ⁇ n is denoised so as to be not less than, in the spectral domain, a ⁇ 1 fraction, of the long-term estimate B n . ⁇ ⁇ , The
  • is denoised so as not to be less, in the spectral domain, than a fraction ⁇ 2, of the long-term estimate B n . ⁇ -
  • the fractions ⁇ 1 j and ⁇ 2 j (such as ⁇ 1 j > ⁇ 2 ; ) can be dependent or independent of the sub-band i.
  • Preferred values correspond for ⁇ 1 j to an attenuation of 10 dB, and for ⁇ 2 j to an attenuation of 60 dB, ie ⁇ 1 s ⁇ 0.3 and ⁇ 2 s ⁇ 0.001.
  • step 180 the module 18 calculates, with the resolution of the sub-bands i, the frequency response Hp nj of the a priori denoising filter, according to:
  • ⁇ p n Hp n ⁇ .S nt .
  • ⁇ p2 ⁇ n, i max ( ⁇ p n) i ; ⁇ 2 i .B n _ ⁇ 1 ⁇ j).
  • the voice activity detector 15 in FIG. 2 comprises a module 19 which calculates the energies of the noisy versions of the signal ⁇ p-j n and ⁇ p2 nj , respectively included in m frequency bands designated by the index j (1 ⁇ j ⁇ m, m> 1).
  • the module 19 calculates the energies per band: imax (j)
  • This smoothing window can be an exponential window defined by a forgetting factor ⁇ between 0 and 1.
  • the exponential smoothing with the forgetting factor ⁇ is then conventionally carried out in step 205 according to:
  • ⁇ , n , j ⁇ . ⁇ 1 ⁇ n . 1 + (1- ⁇ ) .E 1 nj
  • the forgetting factor ⁇ q very close to 1 means that the smoothed energies do not follow the increases in sudden energies due to speech.
  • the factor ⁇ q remains, however, slightly less than 1 to avoid errors caused by an increase in background noise which can occur during a fairly long period of speech.
  • the module 21 for controlling the automata relating to the different index bands j calculates the parameters d n : and snr n j in step
  • the new state ⁇ n : of the automaton relating to the band j depends on the previous state ⁇ -, .., -. , d n : and snr n :, for example as shown in the diagram in Figure 6.
  • the thresholds ⁇ 1 ⁇ .2 ;, ⁇ 3 ⁇ and ⁇ 4 can be optimized separately for each of the frequency bands j. It is also possible for the module 21 to cause the automata for different bands.
  • the output of the voice activity detector 15 concerns the entire signal band.
  • the two appendices to the present description show a source code in C ++ language, with a representation of the data in fixed point, corresponding to an implementation of the example of method of detection of voice activity described above.
  • This source code is to translate this source code into executable code, to save it in a program memory associated with an appropriate signal processing processor, and to have it executed by this processor on the input signals. of the detector.
  • the function a_priori_signal_power presented in appendix 1 corresponds to the operations incumbent on the modules 18 and 19 of the voice activity detector 15 of figure 2.
  • the function voice_activity_detector presented in appendix 2 corresponds to the operations incumbent on modules 20 and 21 of this detector.
  • the denoising module 25 of the voice activity detector 15 delivers a single denoised version ⁇ p n , of the speech signal, so that the module 26 calculates the energy
  • various denoising methods can be - in applied by the module 25.
  • the denoising is operated by non-linear spectral subtraction with a noise overestimation coefficient dependent on a quantity p related to the ratio signal-to-noise.
  • steps 250 to 252 a preliminary denoising is carried out for each sub-band of index i according to:
  • S n , i max (s n ⁇ i - . B n _ 1
  • i ; ⁇ . B n _ 1 ⁇ i), the preliminary overestimation coefficient being for example ⁇ 2, and the fraction ⁇ possibly corresponding to noise attenuation of the order of 10 dB.
  • the quantity p is taken equal to the ratio S ' nj / S nj in step 253.
  • ⁇ p nj max (s n ⁇ i - f (p) .B n _ 1] i ; ⁇ .B n _ 1 ⁇ i).
  • the voice activity detector 15 considered with reference to FIG. 7 uses, in each frequency band of index j (and / or in full band), a detection automaton with two states, silence or speech.
  • E 2 n calculated by module 26 are respectively those contained in the components S n ; of the speech signal and those contained in the noisy components ⁇ p nj calculated on the different bands as indicated in step 260 of FIG. 8.
  • This lower bound E 2min j can in particular correspond to a minimum value, on a sliding window, of the energy E 2 n ; of the denoised version of the speech signal in the frequency band considered.
  • this minimum energy E 2 min serves as a minor for the module 28 for controlling the automaton
  • the automaton can be a simple binary automaton using a threshold A., possibly depending on the band considered if M> A., the output bit ⁇ n . of the detector represents a state of silence for the band j, and if M. ⁇ A., it represents a state of speech
  • the module 28 could deliver a non-binary measurement of the vocal activity, represented by a decreasing function of M.
  • the minor E 2m ⁇ n . used in step 280 could be calculated using an exponential window, with a forgetting factor II could also be represented by the energy on the band j of the quantity ⁇ B n _-
  • the analysis carried out to decide on the presence or absence of vocal activity relates directly to energies of different versions of the speech signal.
  • the comparisons could relate to a monotonic function of these energies, for example a logarithm, or on a quantity having a behavior analogous to energies according to the vocal activity (for example the power) ANNEX 1
  • Word32 power (ordl ⁇ module, Wordl ⁇ beta, Wordl ⁇ thd, Wordl ⁇ val);
  • vad param. vads [vad].
  • first_subband_for_power; int stop param. ads [vad].
  • ⁇ pwr power (module, param.beta_a_prioril, long_term_nois e [subband], E [subband]);
  • pwr L_shr (pwr, shift);
  • Word32 power (Wordl ⁇ module, Wordl ⁇ beta, Wordl ⁇ thd, ordl ⁇ val)
  • vad 0; vad ⁇ param. vad_number; vad ++) ⁇
  • L_Extract (L_sub (Pl [vad], Pis [vad]), & hil, &lol); • L_Extract (L_sub (P2 [vad], P2s [vad]), & hi2, &lo2); test (); if (sub (sub (logP2, logP2s), DELTA_P) ⁇ 0) ⁇
  • Pls [vad] L_add (Pls [vad], L_shr (Mpy_32_16 (hil, law, 0x6 ⁇ ), 4)); move32 ();
  • P2s [vad] L_add (P2s [vad], L_shr (Mpy_32_16 (hi2, lo2, 0x6 ⁇ ), 4)); move32 (); ⁇ else ⁇
  • Plsfvad] L_add (Pls [vad], L_shr (Mpy_32_16 (hil, law, 0x6 8db), 13)); move32 ();
  • P2s [vad] L_add (P2s [vad], L_shr (Mpy_32_16 (hi2, lo2, 0x6 8db), 13)); move32 (); ⁇ else ⁇

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Soundproofing, Sound Blocking, And Sound Damping (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

On détecte une activité vocale dans un signal de parole numérique, dans au moins une bande de fréquences, par exemple au moyen d'un automate de détection dont l'état est contrôlé en fonction d'une analyse énergétique du signal. Le contrôle de cet automate, ou plus généralement la décision d'activité vocale, comprend une comparaison, dans la bande de fréquences, de deux versions différentes du signal de parole dont l'une au moins est une version débruitée.

Description

PROCEDE ET DISPOSITIF DE DETECTION D'ACTIVITE VOCALE
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. 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...
Les méthodes de détection d'activité vocale ont pour principale difficulté la distinction entre l'activité vocale et le bruit qui accompagne le signal de parole.
Le document WO99/1 737 décrit un procédé de détection d'activité vocale dans un signal de parole numérique traité par trames successives, dans lequel 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'une ou plusieurs trames précédentes, et on analyse les variations d'énergie du signal débruité a priori pour détecter un degré d'activité vocale de la trame. Le fait de procéder à la détection d'activité vocale 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.
Dans les méthodes habituellement utilisées pour détecter l'activité vocale, les variations d'énergie du signal (direct ou débruité) sont analysées par rapport à une moyenne à long terme de l'énergie de ce signal, une augmentation relative de l'énergie instantanée suggérant l'apparition d'une activité vocale.
Un but de la présente invention est de proposer un autre type d'analyse permettant une détection d'activité vocale robuste au bruit pouvant accompagner le signal de parole.
Selon l'invention, il est proposé un procédé de détection d'activité vocale dans un signal de parole numérique dans au moins une bande de fréquences, suivant lequel on détecte l'activité vocale sur la base d'une analyse comprenant une comparaison, dans ladite bande de fréquences, de deux versions différentes du signal de parole dont l'une au moins est une version débruitée obtenue en tenant compte d'estimations du bruit compris dans le signal. Ce procédé peut être exécuté sur toute la bande de fréquence du signal, ou par sous-bandes, en fonction des besoins de l'application utilisant la détection d'activité vocale.
L'activité vocale peut être détectée de manière binaire pour chaque bande, ou mesurée par un paramètre variant continûment et pouvant résulter de la comparaison entre les deux versions différentes du signal de parole.
La comparaison porte typiquement sur des énergies respectives, évaluées dans ladite bande de fréquences, des deux versions différentes du signal de parole, ou sur une fonction monotone de ces énergies. Un autre aspect de la présente invention se rapporte à un dispositif de détection d'activité vocale dans un signal de parole, comprenant des moyens de traitement de signal agencés pour mettre en œuvre un procédé tel que défini ci-dessus.
L'invention se rapporte encore à un programme d'ordinateur, chargeable dans une mémoire associée à un processeur, et comprenant des portions de code pour la mise en œuvre d'un procédé tel que défini ci-dessus lors de l'exécution dudit programme par le processeur, ainsi qu'à un support informatique, sur lequel est enregistré un tel programme.
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'une chaîne de traitement de signal utilisant un détecteur d'activité vocale selon l'invention ;
- la figure 2 est un schéma synoptique d'un exemple de détecteur d'activité vocale selon l'invention ;
- les figures 3 et 4 sont des organigrammes d'opérations de traitement de signal effectuées dans le détecteur de la figure 2,
- la figure 5 est un graphique montrant un exemple d'évolution d'énergies calculées dans le détecteur de la figure 2 et illustrant le principe de la détection d'activité vocale ;
- la figure 6 est un diagramme d'un automate de détection mis en œuvre dans le détecteur de la figure 2 ;
- la figure 7 est un schéma synoptique d'une autre réalisation d'un détecteur d'activité vocale selon l'invention ; - la figure 8 est un organigramme d'opérations de traitement de signal effectuées dans le détecteur de la figure 7 ; - la figure 9 est un graphique d'une fonction utilisée dans les opérations de la figure 8
Le dispositif de la figure 1 traite un signal numérique de parole s La chaîne de traitement de signal représentée produit des décisions d'activité vocale δn . utilisables de façon connue en soi par des unités d'application, non représentées, assurant des fonctions telles que codage de la parole, reconnaissance de la parole, diminution du bruit, annulation d'écho Les décisions δn . peuvent comporter une résolution en fréquence (index j), ce qui permet d'enrichir des applications fonctionnant dans le domaine fréquentiel Un module de fenêtrage 10 met le signal s sous forme de fenêtres ou trames successives d'index n, 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
La trame de signal est transformée dans le domaine fréquentiel par un module 11 appliquant un algorithme classique de transformée de Fouπer 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équentiel, seuls les N/2 = 128 premiers échantillons sont utilisés
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 Fouπer rapide, mais une résolution plus faible, déterminée par un nombre I de sous-bandes de fréquences couvrant la bande [0, Fe/2] du signal Chaque sous-bande i (1 < i < I) s'étend entre une fréquence inférieure f(ι-1 ) et une fréquence supérieure f(ι), avec f(0) = 0, et f(l) = Fe/2 Ce découpage en sous- bandes peut être uniforme (f(ι)-f(ι-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 sous-bandes, par exemple par une pondération uniforme telle que s - 1 y 'n.f
"'' f(')-f ),e[f(, >.f( [
Ce moyennage diminue les fluctuations entre les sous-bandes en moyennant les contributions du bruit dans ces sous-bandes, ce qui diminuera la vaπance de l'estimateur de bruit En outre, ce moyennage permet de diminuer la complexité du système
Les composantes spectrales moyennées Sn , sont adressées à un module 15 de détection d'activité vocale et à un module 16 d'estimation du bruit On note Bn , l'estimation à long terme de la composante de bruit produite par le module 16 relativement à la trame n et à la sous-bande i
Ces estimations à long terme Bn , peuvent par exemple être obtenues de la manière décrite dans WO99/14737 On peut aussi utiliser un simple lissage au moyen d'une fenêtre exponentielle définie par un facteur d'oubli λB
B n,ι = λR B B n— 1,ι +(1-λR ° )> S n,ι avec λB égal à 1 si le détecteur d'activité vocale 15 indique que la sous-bande i porte une activité vocale, et égal à une valeur comprise entre 0 et 1 sinon
Bien entendu, il est possible d'utiliser d'autres estimations à long terme représentatives de la composante de bruit comprise dans le signal de parole, ces estimations peuvent représenter une moyenne à long terme, ou encore un minimum de la composante Sn , sur une fenêtre glissante suffisamment longue
Les figures 2 à 6 illustrent une première réalisation du détecteur d'activité vocale 15 Un module de débruitage 18 exécute, pour chaque trame n et chaque sous-bande i, les opérations correspondant aux étapes 180 à 187 de la figure 3, pour produire deux versions débruitées Êp-| n , , Êp2fn,ι du signal de parole Ce débruitage est opéré par soustraction spectrale non-linéaire La première version Êpη n , est débruitée de façon à ne pas être inférieure, dans le domaine spectral, à une fraction β1 , de l'estimation à long terme Bn.τι , La
seconde version Êp2ιn,ι est débruitée de façon à ne pas être inférieure, dans le domaine spectral, à une fraction β2, de l'estimation à long terme Bn.τ-| , La quantité τ1 est un retard exprimé en nombre de trames, qui peut être fixe (par exemple τ1 = 1 ) ou variable. Il est d'autant faible qu'on est confiant dans la détection d'activité vocale. Les fractions β1j et β2j (telles que β1 j > β2;) peuvent être dépendantes ou indépendantes de la sous-bande i. Des valeurs préférées correspondent pour β1 j à une atténuation de 10 dB, et pour β2j à une atténuation de 60 dB, soit β1s ≈ 0,3 et β2s ≈ 0,001.
A l'étape 180, le module 18 calcule, avec la résolution des sous- bandes i, la réponse en fréquence Hpn j du filtre de débruitage a priori, selon :
. . ^n,i ~ αn-τ1,i-°n-τ1,i Pn,i = - ύn-τ2,i où τ2 est un retard entier positif ou nul et α'n i est un coefficient de surestimation du bruit. Ce coefficient de surestimation α'n -i peut être dépendant ou indépendant de l'index de trame n et/ou de l'index de sous-bande i. Dans une réalisation préférée, il dépend à la fois de n et i, et il est déterminé comme décrit dans le document WO99/14737. Un premier débruitage est effectué à l'étape 181 : Êpn = Hpn {.Sn t. Aux étapes 182 à 184, les composantes spectrales Êp-j n s sont calculées selon Êpι n i = max Êpn J ; β1j Bn_τi j), et aux
étapes 182 à 184, les composantes spectrales Ëp2>n,i sont calculées selon
Êp2ιn,i = max(Êpn)i ; β2i .Bn_τ1 ιj).
Le détecteur d'activité vocale 15 de la figure 2 comporte un module 19 qui calcule des énergies des versions débruitées du signal Êp-j n et Êp2 n j , respectivement comprises dans m bandes de fréquences désignées par l'index j (1 < j < m, m > 1 ). Cette résolution peut être la même que celle des sous- bandes définies par le module 12 (index i), ou une résolution moins fine pouvant aller jusqu'à l'ensemble de la bande utile [0, Fe/2] du signal (cas m = 1 ). A titre d'exemple, le module 12 peut définir 1 = 16 sous-bandes uniformes de la bande [0, Fe/2], et le module 19 peut conserver m = 3 bandes plus larges, chaque bande d'index j couvrant les sous-bandes d'index i allant de imin(j) à imax(j), avec imin(1 ) = 1 , imin(j+1) = imax(j) + 1 pour 1 ≤j < m, et imax(m) = I. A l'étape 190 (figure 3), le module 19 calcule les énergies par bande : imax(j)
El,n,J = Σ [f(i)-f(i-1)]-ÊPl n>| i=imin(j) imax(j) E2,n,j = ∑ [f(i)-f(i-D].Êp2 2 nιi i=iminO)
Un module 20 du détecteur d'activité vocale 15 effectue un lissage temporel des énergies E1 n = et E2 n -, pour chacune des bandes d'index j, ce qui correspond aux étapes 200 à 205 de la figure 4. Le lissage de ces deux énergies est effectué au moyen d'une fenêtre de lissage déterminée en comparant l'énergie E2 n j de la version la plus débruitée à son énergie lissée précédemment calculée E2ιn-i,j . ou à une valeur de l'ordre de cette énergie lissée E2 n-l ,j (tests 200 et 201 ). Cette fenêtre de lissage peut être une fenêtre exponentielle définie par un facteur d'oubli λ compris entre 0 et 1. Ce facteur d'oubli λ peut prendre trois valeurs : l'une λr très proche de 0 (par exemple λr = 0) choisie à l'étape 202 si E2 n -, ≤ E2,n-l ,j ; 'a seconde λq très proche de 1
(par exemple λq = 0,99999) choisie à l'étape 203 si E2 n : > Δ. En-ι,j . Δ ©tant un coefficient plus grand que 1 ; et la troisième λp comprise entre 0 et λq (par exemple λp = 0,98) choisie à l'étape 204 si E2ιn-i,j < E2 n j < Δ. E2ιn,j - Le lissage exponentiel avec le facteur d'oubli λ est ensuite effectué classiquement à l'étape 205 selon :
Ëι,n,j = λ. Ë1 ιn.1 + (1-λ).E1 n j
Ë2,n,j = λ. Ê2ιn-1 + (1-λ).E2 nj Un exemple de variation dans le temps des énergies E1 n =, E2 n : et des énergies lissées E-) n et E ιn est représenté sur la figure 5. On voit qu'on arrive à un bon suivi des énergies lissées lorsqu'on détermine le facteur d'oubli sur la base des variations de l'énergie E2 n ι correspondant à la version la plus débruitée du signal. Le facteur d'oubli λp permet de prendre en compte les augmentations de niveau du bruit de fond, les diminutions d'énergie étant suivies par le facteur d'oubli λr. Le facteur d'oubli λq très proche de 1 fait que les énergies lissées ne suivent pas les augmentations d'énergies brusques dues à la parole. Le facteur λq reste toutefois légèrement inférieur à 1 pour éviter les erreurs causées par une augmentation du bruit de fond pouvant survenir pendant une assez longue période de parole.
L'automate de détection d'activité vocale est contrôlé notamment par un paramètre résultant d'une comparaison des énergies E1 n = et E2 n =. Ce paramètre peut notamment être le rapport dn = = E1 n ; 2 n :. On voit sur la figure 5 que ce rapport dn = permet de bien détecter les phases de parole
(représentées par des hachures).
Le contrôle de l'automate de détection peut également utiliser d'autres paramètres, tels qu'un paramètre lié au rapport signal-sur-bruit : snrn : = E1 n :/Eι n , ce qui revient à prendre en compte une comparaison entre les énergies E1 n = et E1 ιn . Le module 21 de contrôle des automates relatifs aux différentes bandes d'index j calcule les paramètres dn : et snrnj à l'étape
210, puis détermine l'état des automates. Le nouvel état δn : de l'automate relatif à la bande j dépend de l'état précédent δ-,.., -. , de dn : et de snrn :, par exemple comme indiqué sur le diagramme de la figure 6.
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 (δp^ : = 0), il y reste si dn j dépasse un premier seuil α1 ι, et il passe dans l'état de montée dans le cas contraire. Dans l'état de montée (δn_., = = 1), il revient dans l'état de silence si dn : dépasse un second seuil α2= ; et il passe dans l'état de parole dans le cas contraire. Lorsque l'automate est dans l'état de parole (δn_., : = 2), il y reste si snrn j dépasse un troisième seuil α3=, et il passe dans l'état de descente dans le cas contraire. Dans l'état de descente (δ-,.., = = 3), l'automate revient dans l'état de parole si snrn : dépasse un quatrième seuil α4=, et il revient dans l'état de silence dans le cas contraire. Les seuils α1 α.2;, α3ι et α4= peuvent être optimisés séparément pour chacune des bandes de fréquences j. II est également possible que le module 21 fasse interagir les automates relatifs aux différentes bandes.
En particulier, il peut forcer à l'état de parole les automates relatifs à chacune des sous-bandes dès lors que l'un d'entre eux se trouve dans l'état de parole. Dans ce cas, la sortie du détecteur d'activité vocale 15 concerne l'ensemble de la bande du signal.
Les deux annexes à la présente description montrent un code source en langage C++, avec une représentation des données en virgule fixe, correspondant à une mise en œuvre de l'exemple de procédé de détection d'activité vocale décrit ci-dessus. Pour réaliser le détecteur, une possibilité est de traduire ce code source en code exécutable, de l'enregistrer dans une mémoire de programme associée à un processeur de traitement de signal approprié, et de le faire exécuter par ce processeur sur les signaux d'entrée du détecteur. La fonction a_priori_signal_power présentée en annexe 1 correspond aux opérations incombant aux modules 18 et 19 du détecteur d'activité vocale 15 de la figure 2. La fonction voice_activity_detector présentée en annexe 2 correspond aux opérations incombant aux modules 20 et 21 de ce détecteur.
Dans l'exemple particulier des annexes, les paramètres suivant ont été employés : τ1 = 1 ; τ2 = 0 ; β1j = 0,3 ; β2j = 0,001 ; m = 3 ; Δ = 4,953 ; λp = 0,98 ; λq = 0,99999 ; λr = 0 ; α1 j = ct2j = α = 1 ,221 ; α3j = 1 ,649. Le
Tableau I ci-après donne les correspondances entre les notations employées dans la précédente description et dans les dessins et celles employées dans l'annexe.
TABLEAU I
Dans la variante de réalisation illustrée par la figure 7, le module de débruitage 25 du détecteur d'activité vocale 15 délivre une seule version débruitée Êpn , du signal de parole, pour que le module 26 en calcule l'énergie
E2 n : pour chaque bande j. L'autre version dont le module 26 calcule l'énergie est directement représentée par les échantillons non débruités Sn j.
Comme précédemment, diverses méthodes de débruitage peuvent être - i n appliquées par le module 25. Dans l'exemple illustré par les étapes 250 à 256 de la figure 8, le débruitage est opéré par soustraction spectrale non-linéaire avec un coefficient de surestimation du bruit dépendant d'une quantité p liée au rapport signal-sur-bruit. Aux étapes 250 à 252, un débruitage préliminaire est effectué pour chaque sous-bande d'index i selon :
Sn,i = max(snιi - .Bn_1|i ; β.Bn_i), le coefficient de surestimation préliminaire étant par exemple α = 2, et la fraction β pouvant correspondre à une atténuation du bruit de l'ordre de 10 dB. La quantité p est prise égale au rapport S'n j/Sn j à l'étape 253. Le facteur de surestimation f(p) varie de façon non-linéaire avec la quantité p, par exemple comme représenté sur la figure 9. Pour les valeurs de p les plus proches de 0 (p < p.,), le rapport signal-sur-bruit est faible, et on peut prendre un facteur de surestimation f(p) = 2. Pour les valeurs les plus élevées de p (p2 < p < 1 ), le bruit est faible et n'a pas besoin d'être surestimé (f(p)=1 ). Entre p1 et p2, f(p) décroît de 2 à 1 , par exemple linéairement. Le débruitage proprement dit, fournissant la version Êpn j , est effectué aux étapes 254 à
256 :
Êpn j = max(snιi - f(p).Bn_1]i ; β.Bn_i).
Le détecteur d'activité vocale 15 considéré en référence à la figure 7 utilise, dans chaque bande de fréquences d'index j (et/ou en pleine bande), un automate de détection à deux états, silence ou parole. Les énergies E1 n : et
E2 n : calculées par le module 26 sont respectivement celles contenues dans les composantes Sn ; du signal de parole et celles contenues dans les composantes débruitées Êpn j calculées sur les différentes bandes comme indiqué à l'étape 260 de la figure 8. La comparaison des deux versions différentes du signal de parole porte sur des différences respectives entre les énergies E1 n = et E2 nj et un minorant de l'énergie E2 n : de la version débruitée.
Ce minorant E2min j peut notamment correspondre à une valeur minimale, sur une fenêtre glissante, de l'énergie E2 n ; de la version débruitée du signal de parole dans la bande de fréquences considérée. Dans ce cas, un module 27 stocke dans une mémoire de type premier entré - premier sorti (FIFO) les L valeurs les plus récentes de l'énergie E2 n . du signal débruité dans chaque bande j, sur une fenêtre glissante représentant par exemple de l'ordre de 20 trames, et délivre les énergies minimales E2m,n = min E2ιn_k,j
sur cette fenêtre (étape 270 de la figure 8) Dans chaque bande, cette énergie minimale E2mιn , sert de minorant pour le module 28 de contrôle de l'automate
de détection, qui utilise une mesure M. donnée par Mj (étape
280)
L'automate peut être un simple automate binaire utilisant un seuil A., dépendant éventuellement de la bande considérée si M > A., le bit de sortie δn . du détecteur représente un état de silence pour la bande j, et si M. < A., il représente un état de parole En variante, le module 28 pourrait délivrer une mesure non binaire de l'activité vocale, représentée par une fonction décroissante de M. En variante, le minorant E2mιn . utilisé à l'étape 280 pourrait être calculé à l'aide d'une fenêtre exponentielle, avec un facteur d'oubli II pourrait aussi être représenté par l'énergie sur la bande j de la quantité β Bn_-| , servant de plancher dans le débruitage par soustraction spectrale
Dans ce qui précède, l'analyse effectuée pour décider de la présence ou de l'absence d'activité vocale porte directement sur des énergies de versions différentes du signal de parole Bien entendu, les comparaisons pourraient porter sur une fonction monotone de ces énergies, par exemple un logarithme, ou sur une quantité ayant un comportement analogue aux énergies selon l'activité vocale (par exemple la puissance) ANNEXE 1
/******************************************************************* ****** description
* NSS module:
* signal power before VAD
*
******************************************************************* ******/
/* *
* included files
* */ tinclude <assert.h>
#include "private.h"
/* *
* private
* */
Word32 power ( ordlβ module, Wordlβ beta, Wordlβ thd, Wordlβ val) ;
/* a_priori_signal_power */ void a_priori_signal_power
/* IN */ Wordlβ *E, ordlβ *internal_state, Wordlβ *max_noise, W ordlβ *long_term_noise, ordlβ *frequential_scale,
/* IN&OUT */ Wordlβ *alpha,
/* OUT */ ord32 *P1, ord32 *P2
)
{ int vad; for(vad = 0; vad < param. ad_number; vad++) { int start = param. vads [vad] . first_subband_for_power; int stop = param. ads [vad] . last_subband; int subband; int uniform_subband; uniform subband = 1; for (subband ≈ start; subband <= stop; subband++) if (param. subband_size [subband] != param. subband size [start] ) uniform_subband = 0;
PI [vad] = 0; move32 () ; P2 [vad] = 0; move32 () ; test(); if (sub (internal_state [vad] , NOISE) == 0) { for (subband = start; subband <= stop; subband++) {
Word32 pwr; ordlβ shift;
Wordlβ module;
Wordlβ alpha_long_term; alpha_long_term = shr (max_noise [subband] , 2); movelβO; test(); test(); if (su (alpha_long_term, long_term_noise [ subband] ) >= 0) { alpha [subband] = 0x7fff; movelβO; alpha_long_term = long_term_noise [subband] ; movelβO; } else if (sub (max_noise [subband] , long_term_noise [subban d]) < 0) { alpha [subband] = 0x2000; movelβO; alpha_long_term ≈ shr (long_term_noise [subband] , 2) ; mo vel6()
} else { alpha [subband] = div_s (alpha_long_term, long_term_noi se [subband] ) ; movelβO; } module = sub (E [subband] , shl (alpha long_term, 2)); movel
if (uniform_subband) { shift = shl (frequential_scale [subband] , 1); movelβO; } else { shift = add (param. subband_shift [subband] , shl(frequen tial_scale [subband] , 1)); movelβO; } pwr = power (module, param. beta_a_prioril, long_term_nois e [subband] , long_term_noise [subband] ) ; pwr = L_shr(pwr, shift); PI [vad] = L_add(Pl [vad] , pwr); move32 O ; pwr = power (module, param. beta_a_priori2, long_term_nois e [subband] , long_term_noise [subband] ) ; pwr = L_shr(pwr, shift);
P2[vad] = L_add(P2[vad] , pwr); move32 () ; } } else { for (subband = start; subband <= stop; subband++) { ord32 pwr;
Wordlβ shift;
Wordlβ module;
Wordlβ alpha_long_term; alpha_long_term = mult (alpha [subband] , long_term_noise [s ubband] ) ; movelβO; module = sub (E [subband] , shl (alpha_long_term, 2)); movel 6(); if (uniform_subband) { shift = shl (frequential_scale [subband] , 1); movelβO; } else { shift = add (param. subband_shift [subband] , shl(frequen tial_scale [subband] , 1)); movelβO; } pwr = power (module, param.beta_a_prioril, long_term_nois e [subband], E [subband]); pwr = L_shr(pwr, shift);
PI [vad] = L_add(Pl [vad] , pwr); move32 () ; pwr = power (module, param. beta_a_priori2, long_term_nois e [subband], E [subband]); pwr = L_shr(pwr, shift);
P2 [ vad] = L_add ( P2 [ vad] , pwr) ; move32 ( ) ; } } } }
*.
* power */
Word32 power (Wordlβ module, Wordlβ beta, Wordlβ thd, ordlβ val)
{ ord32 power; testO; if (sub (module, mult(beta, thd)) <= 0) { ordlβ hi, lo; power = L_mult(val, val); move32 O ;
L_Extract (power, &hi, &lo) ; power = Mpy_32_16 (hi, lo, beta); move32();
L_Extract (power, &hi, &lo) ; power ≈ Mpy_32_16 (hi, lo, beta); move32(); } else { power = L_mult (module, module); move32 O ;
} return (power) ; AN N EXE 2
/* ****************************************************************** ******
* description
* . , , ,
* NSS module:
* VAD *
*******************************************************************
******
/* *
* included files
* */
#include <assert.h>
#include "private.h"
#include "simutool.h"
/* *
* private
* */
#define DELTA_P (1.6 * 1024]
#define D_NOISE (.2 * 1024)
#define D_SIGNAL (.2 * 1024)
#define SNR_SIGNAL (.5 * 1024)
#define SNR NOISE (.2 * 1024)
'* *
* voice_activity_detector */ void voice_activity_detector
(
/* IN */ ord32 *P1, ord32 *P2, ordlβ frame_counter,
/* IN&OUT */ ord32 *Pls, Word32 *P2s, ordlβ *internal_state,
/* OUT */ Wordlβ *state
)
{ int vad; int signal; int noise; signal = 0; movelβO; noise = 1; movelβO; for (vad = 0; vad < param. vad_number; vad++) {
Wordlβ snr, d;
Wordlβ logPl, logPls;
Wordlβ logP2, logP2s;
logP2 = logfix(P2 [vad] ) ; movelβO; logP2s = logfix(P2s [vad] ) ; movelβO test(); if (L_sub (P2 [vad] , P2s[vad]) > 0) { Wordlβ hil, loi; ordlβ hi2, lo2;
L_Extract (L_sub(Pl[vad] , Pis [vad] ) , &hil, &lol) ; L_Extract (L_sub (P2 [vad] , P2s [vad] ) , &hi2, &lo2); test () ; if (sub (sub (logP2, logP2s), DELTA_P) < 0) {
Pls[vad] = L_add(Pls[vad] , L_shr (Mpy_32_16 (hil, loi, 0x6 βββ) , 4) ) ; move32() ;
P2s[vad] = L_add(P2s[vad] , L_shr (Mpy_32_16 (hi2, lo2, 0x6 βββ) , 4) ) ; move32() ; } else {
Plsfvad] = L_add(Pls[vad] , L_shr (Mpy_32_16 (hil, loi, 0x6 8db) , 13) ) ; move32 () ;
P2s[vad] = L_add(P2s[vad] , L_shr (Mpy_32_16 (hi2, lo2, 0x6 8db) , 13) ) ; move32 () ; } } else {
Pis [vad] = PI [vad]; move32 () ; P2s[vad] = P2[vad]; move32 O ; }
logPl = logfix (PI [vad] ) ; movelβO; logPls = logfix (Pis [vad] ) ; movelβO
d = subdogPl, logP2); movelβO; snr = sub(logPl, logPls); movelβO;
ProbeFixlβO'd", &d, 1, 1.); ProbeFixlβ ("_snr", &snr, 1, 1.);
Wordlβ pp;
ProbeFixlβO'pl", SlogPl, 1, 1.); ProbeFixlβ("p2", &logP2, 1, 1.); ProbeFixlβO'pls", SlogPls, 1, 1. ) ; ProbeFixlβ("p2s", &logP2s, 1, 1.); pp = logP2 - logP2s; ProbeFixlβC'dp", &pp, 1, 1.); test () ; if (sub (internal_state [vad] , NOISE) == 0) goto LABEL_NOISE; testO; if (sub (internal_state [vad] , ASCENT) == 0) goto LABEL_ASCENT; testO; if (sub (internal_state [vad] , SIGNAL) == 0) goto LABEL_SIGNAL; testO; if (sub (internal_state [vad] , DESCENT) == 0) goto LABEL_DESCENT;
LABEL_NOISE: testO; if (sub (d, D_NOISE) < 0) { internal_state [vad] = ASCENT; movelβO; } goto LABEL_END_VAD;
LABEL_ASCENT: testO; if (sub (d, D_SIGNAL) < 0) { internal_state [vad] = SIGNAL; movelβO; signal = 1; movelβO; noise = 0; movelβO; } else { internal_state [vad] = NOISE; movelβO;
} goto LABEL_END_VAD;
LABEL_SIGNAL: testO; if (sub (snr, SNR_SIGNAL) < 0) { internal_state [vad] = DESCENT; movelβO; } else { signal = 1; movelβO;
} noise = 0; movel6(); goto LABEL_END_VAD;
LABEL_DESCENT: testO; if (sub (snr, SNR_NOISE) < 0) { internal_state [vad] = NOISE; movel6(); } else { internal_state[vad] = SIGNAL; movelβO; signal = 1; movelβO; noise = 0; movelβO;
} goto LABEL_END_VAD;
LABEL END VAD:
}
*state = TRANSITION; movelβO; testO; testO; if (signal != 0) { testO; if (sub (frame_counter, param. init_frame_nurtιber) >= 0) { fo (vad = 0; vad < param. vad_number; vad++) { internal_state[vad] = SIGNAL; movelβO;
}
*state ≈ SIGNAL; movelβO;
} } else if(noise != 0) {
*state = NOISE; movel6()
}

Claims

R E V E N D I C A T I O N S
1. Procédé de détection d'activité vocale dans un signal de parole numérique (s) dans au moins une bande de fréquences, caractérisé en ce qu'on détecte l'activité vocale sur la base d'une analyse comprenant une comparaison, dans ladite bande de fréquences, de deux versions différentes du signal de parole dont l'une au moins est une version débruitée obtenue en tenant compte d'estimations du bruit compris dans le signal.
2. Procédé selon la revendication 1 , dans lequel ladite comparaison porte sur des énergies respectives (E1 n =, E2 n ;), évaluées dans ladite bande de fréquences, des deux versions différentes du signal de parole, ou sur une fonction monotone desdites énergies.
3. Procédé selon la revendication 1 ou 2, dans lequel ladite analyse comprend en outre un lissage temporel de l'énergie (E1 n :) d'une desdites versions du signal de parole, et une comparaison entre l'énergie de ladite version et l'énergie lissée ( E-j n ).
4. Procédé selon la revendication 3, dans lequel la comparaison entre l'énergie de ladite version (E1 n =) et l'énergie lissée ( E1 n ) contrôle les transitions d'un automate de détection d'activité vocale d'un état de parole vers un état de silence, tandis que la comparaison des deux versions différentes du signal de parole contrôle les transitions de l'automate de détection de l'état de silence vers l'état de parole.
5. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel les deux versions différentes du signal de parole sont deux versions débruitées par soustraction spectrale non-linéaire, une première des deux versions (Êp-i n ) étant débruitée de façon à ne pas être inférieure, dans le domaine spectral, à une première fraction (β1 s) d'une estimation à long terme (Bn j) représentative d'une composante de bruit comprise dans le signal de parole, et la seconde des deux versions (Êp2,n,i) étant débruitée de façon à ne pas être inférieure, dans le domaine spectral, à une seconde fraction (β2j) de ladite estimation à long terme, plus petite que la première fraction.
6. Procédé selon la revendication 5, dans lequel on effectue un lissage temporel de l'énergie de chacune des deux versions du signal de parole, au moyen d'une fenêtre de lissage déterminée en comparant l'énergie (E2 n j) de la seconde des deux versions à l'énergie lissée ( E^n ) de la seconde des deux versions.
7. Procédé selon la revendication 6, dans lequel la fenêtre de lissage est une fenêtre exponentielle définie par un facteur d'oubli (λ).
8. Procédé selon la revendication 7, dans lequel le facteur d'oubli (λ) a une valeur (λr) sensiblement nulle lorsque l'énergie (E2 n j) de la seconde des deux versions est inférieure à une valeur de l'ordre de l'énergie lissée ( E2ιn ) de la seconde des deux versions.
9. Procédé selon la revendication 8, dans lequel le facteur d'oubli (λ) a une première valeur (λq) sensiblement égale à 1 lorsque l'énergie (E2 n j) de la seconde des deux versions est supérieure à ladite valeur de l'ordre de l'énergie lissée multipliée par un coefficient (Δ) plus grand que 1 , et une seconde valeur
p) comprise entre 0 et ladite première valeur lorsque l'énergie de la seconde des deux versions est supérieure à ladite valeur de l'ordre de l'énergie lissée et inférieure à ladite valeur de l'ordre de l'énergie lissée multipliée par ledit coefficient.
10. Procédé selon l'une quelconque des revendications 5 à 9, dans lequel les première et seconde fractions (β1 jt β2j) correspondent sensiblement à des atténuations de 10 dB et de 60 dB, respectivement.
11. Procédé selon l'une quelconque des revendications 1 à 10, dans lequel la comparaison des deux versions différentes du signal de parole porte sur des différences respectives entre les énergies (E1 n E2 n ι) de ces deux versions dans ladite bande de fréquences et un minorant (E2min j) de l'énergie
(E2 n :) de la version débruitée du signal de parole dans ladite bande de fréquences.
12. Procédé selon la revendication 11 , dans lequel l'une des deux versions différentes du signal de parole est une version non débruitée du signal de parole.
13. Dispositif de détection d'activité vocale dans un signal de parole, comprenant des moyens de traitement de signal (15) agencés pour mettre en œuvre un procédé selon l'une quelconque des revendications 1 à 12.
14. Programme d'ordinateur, chargeable dans une mémoire associée à un processeur, et comprenant des portions de code pour la mise en œuvre d'un procédé selon l'une quelconque des revendications 1 à 12 lors de l'exécution dudit programme par le processeur.
15. Support informatique, sur lequel est enregistré un programme selon la revendication 14.
EP00956596A 1999-08-04 2000-08-02 Procede et dispositif de detection d'activite vocale Withdrawn EP1116216A1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9910128 1999-08-04
FR9910128A FR2797343B1 (fr) 1999-08-04 1999-08-04 Procede et dispositif de detection d'activite vocale
PCT/FR2000/002220 WO2001011605A1 (fr) 1999-08-04 2000-08-02 Procede et dispositif de detection d'activite vocale

Publications (1)

Publication Number Publication Date
EP1116216A1 true EP1116216A1 (fr) 2001-07-18

Family

ID=9548882

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00956596A Withdrawn EP1116216A1 (fr) 1999-08-04 2000-08-02 Procede et dispositif de detection d'activite vocale

Country Status (5)

Country Link
US (1) US7003452B1 (fr)
EP (1) EP1116216A1 (fr)
AU (1) AU6848400A (fr)
FR (1) FR2797343B1 (fr)
WO (1) WO2001011605A1 (fr)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2825826B1 (fr) 2001-06-11 2003-09-12 Cit Alcatel Procede pour detecter l'activite vocale dans un signal, et codeur de signal vocal comportant un dispositif pour la mise en oeuvre de ce procede
US7143028B2 (en) * 2002-07-24 2006-11-28 Applied Minds, Inc. Method and system for masking speech
US20050228673A1 (en) * 2004-03-30 2005-10-13 Nefian Ara V Techniques for separating and evaluating audio and video source data
JP4519169B2 (ja) * 2005-02-02 2010-08-04 富士通株式会社 信号処理方法および信号処理装置
DE102007048973B4 (de) * 2007-10-12 2010-11-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen eines Multikanalsignals mit einer Sprachsignalverarbeitung
KR101317813B1 (ko) * 2008-03-31 2013-10-15 (주)트란소노 노이지 음성 신호의 처리 방법과 이를 위한 장치 및 컴퓨터판독 가능한 기록매체
WO2010052749A1 (fr) * 2008-11-04 2010-05-14 三菱電機株式会社 Dispositif de suppression de bruit
CN102044242B (zh) 2009-10-15 2012-01-25 华为技术有限公司 语音激活检测方法、装置和电子设备
ES2860986T3 (es) * 2010-12-24 2021-10-05 Huawei Tech Co Ltd Método y aparato para detectar adaptivamente una actividad de voz en una señal de audio de entrada

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3243232A1 (de) * 1982-11-23 1984-05-24 Philips Kommunikations Industrie AG, 8500 Nürnberg Verfahren zur erkennung von sprachpausen
FR2631147B1 (fr) * 1988-05-04 1991-02-08 Thomson Csf Procede et dispositif de detection de signaux vocaux
US4975657A (en) * 1989-11-02 1990-12-04 Motorola Inc. Speech detector for automatic level control systems
WO1998001847A1 (fr) * 1996-07-03 1998-01-15 British Telecommunications Public Limited Company Detecteur d'activite vocale
FR2768544B1 (fr) * 1997-09-18 1999-11-19 Matra Communication Procede de detection d'activite vocale
FR2768547B1 (fr) * 1997-09-18 1999-11-19 Matra Communication Procede de debruitage d'un signal de parole numerique
US6717991B1 (en) * 1998-05-27 2004-04-06 Telefonaktiebolaget Lm Ericsson (Publ) System and method for dual microphone signal noise reduction using spectral subtraction
US6549586B2 (en) * 1999-04-12 2003-04-15 Telefonaktiebolaget L M Ericsson System and method for dual microphone signal noise reduction using spectral subtraction
US6453289B1 (en) * 1998-07-24 2002-09-17 Hughes Electronics Corporation Method of noise reduction for speech codecs
US6453285B1 (en) * 1998-08-21 2002-09-17 Polycom, Inc. Speech activity detector for use in noise reduction system, and methods therefor
AU2408500A (en) * 1999-01-07 2000-07-24 Tellabs Operations, Inc. Method and apparatus for adaptively suppressing noise
US6453291B1 (en) * 1999-02-04 2002-09-17 Motorola, Inc. Apparatus and method for voice activity detection in a communication system
US6604071B1 (en) * 1999-02-09 2003-08-05 At&T Corp. Speech enhancement with gain limitations based on speech activity

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0111605A1 *

Also Published As

Publication number Publication date
AU6848400A (en) 2001-03-05
US7003452B1 (en) 2006-02-21
FR2797343B1 (fr) 2001-10-05
FR2797343A1 (fr) 2001-02-09
WO2001011605A1 (fr) 2001-02-15

Similar Documents

Publication Publication Date Title
EP1789956B1 (fr) Procede de traitement d&#39;un signal sonore bruite et dispositif pour la mise en oeuvre du procede
EP1830349B1 (fr) Procédé de débruitage d&#39;un signal audio
CA2436318C (fr) Procede et dispositif de reduction de bruit
EP2586133B1 (fr) Contrôle d&#39;une boucle de rétroaction de mise en forme de bruit dans un codeur de signal audionumérique
EP2153438B1 (fr) Post-traitement de reduction du bruit de quantification d&#39;un codeur, au decodage
EP1016072A1 (fr) Procede de debruitage d&#39;un signal de parole numerique
FR2771542A1 (fr) Procede de filtrage frequentiel applique au debruitage de signaux sonores mettant en oeuvre un filtre de wiener
EP2936488B1 (fr) Atténuation efficace de pré-échos dans un signal audionumérique
EP1016071B1 (fr) Procede et dispositif de detection d&#39;activite vocale
EP1116216A1 (fr) Procede et dispositif de detection d&#39;activite vocale
EP0490740A1 (fr) Procédé et dispositif pour l&#39;évaluation de la périodicité et du voisement du signal de parole dans les vocodeurs à très bas débit.
EP2347411B1 (fr) Attenuation de pre-echos dans un signal audionumerique
WO2016038316A1 (fr) Discrimination et atténuation de pré-échos dans un signal audionumérique
EP0714088B1 (fr) Détection d&#39;activité vocale
EP0534837B1 (fr) Procédé de traitement de la parole en présence de bruits acoustiques utilisant la sous traction spectrale non-linéaire et les modèles de Markov cachés
EP1021805B1 (fr) Procede et disposition de conditionnement d&#39;un signal de parole numerique
FR2768546A1 (fr) Procede de debruitage d&#39;un signal de parole numerique
EP2515300B1 (fr) Procédé et système de réduction du bruit
EP1895433A1 (fr) Procédé d&#39;estimation de phase pour la modélisation sinusoidale d&#39;un signal numérique
WO2009010672A2 (fr) Limitation de distorsion introduite par un post-traitement au decodage d&#39;un signal numerique
BE1020218A3 (fr) Procede pour ameliorer la resolution temporelle des informations fournies par un filtre compose et dispositif correspondant.
WO2002093553A1 (fr) Estimation de periodes fondamentales de sources concurrentes multiples notamment de son

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20010327

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: NORTEL NETWORKS FRANCE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20070301