EP0594480A1 - Speech detection method - Google Patents

Speech detection method Download PDF

Info

Publication number
EP0594480A1
EP0594480A1 EP93402522A EP93402522A EP0594480A1 EP 0594480 A1 EP0594480 A1 EP 0594480A1 EP 93402522 A EP93402522 A EP 93402522A EP 93402522 A EP93402522 A EP 93402522A EP 0594480 A1 EP0594480 A1 EP 0594480A1
Authority
EP
European Patent Office
Prior art keywords
frames
noise
frame
speech
fricative
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.)
Granted
Application number
EP93402522A
Other languages
German (de)
French (fr)
Other versions
EP0594480B1 (en
Inventor
Dominique Pastor
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.)
Thales Avionics SAS
Original Assignee
Thales Avionics 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 Thales Avionics SAS filed Critical Thales Avionics SAS
Publication of EP0594480A1 publication Critical patent/EP0594480A1/en
Application granted granted Critical
Publication of EP0594480B1 publication Critical patent/EP0594480B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • G10L25/87Detection of discrete points within a voice signal
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/93Discriminating between voiced and unvoiced parts of speech signals
    • G10L2025/932Decision in previous or following frames
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/93Discriminating between voiced and unvoiced parts of speech signals
    • G10L2025/937Signal energy in various frequency bands
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique

Definitions

  • the present invention relates to a speech detection method.
  • the subject of the present invention is a method for detecting and denoising speech which makes it possible to detect as safely as possible the beginnings and end times of speech signals whatever the types of speech sounds, and which makes it possible to denois the most Signals thus detected can be effectively detected, even when the statistical characteristics of the noise affecting these signals vary widely.
  • the method of the invention consists in carrying out in a low-noise environment a detection of voiced frames, and in detecting a vocal nucleus to which a confidence interval is attached.
  • Spectral whitening and denoising do not apply sequentially, but in parallel, whitening allowing the detection of unvoiced sounds, denoising an improvement in the quality of the voice signal to be recognized.
  • the "elementary" level of voicing detection is an algorithm for calculating and thresholding the correlation function. The result is assessed by the higher level.
  • frame the elementary time unit of processing.
  • the duration of a frame is conventionally 12.8 ms, but can, of course, have different values (achievements in mathematical language).
  • the treatments use discrete Fourier transforms of the processed signals. These Fourier transforms are applied to all of the samples obtained on two consecutive frames, which corresponds to performing a Fourier transform over 25.8 ms.
  • the preferred embodiment of the invention is described below with reference to the analysis of signals from very noisy avionic environments, which makes it possible to have starting information which is the micro alternation that use the pilots. This information indicates a time zone close to the signal to be processed.
  • N3 around 30.
  • This detection is done by fricative detection and is described below.
  • Each acquired frame is no longer bleached but only denoised, then configured for recognition.
  • a voicing test is carried out on each frame.
  • the acoustic vector is effectively sent to the recognition algorithm.
  • N4 about 30 frames
  • the frames between the end of voicing and this end of speech are denoised, then parameterized and sent to the pure voice recognition system for processing.
  • this process is local to the spoken speech (that is to say, it treats each sentence or each set of words without "gap" between words), and therefore makes it possible to be very adaptive to any change in noise statistics, especially since we use adaptive algorithms for auto-regressive noise modeling, and relatively sophisticated theoretical models for the detection of noise frames and the detection of fricatives.
  • the process is launched as soon as a voicing is detected.
  • Expertise consists in combining the different results obtained using these tools, so as to highlight coherent sets, forming the vocal nucleus for example, or blocks of fricative sounds (plosives), not seen.
  • voicing detection process For the voicing detection expertise, use is made of a known voicing detection process, which, for a given frame, decides whether this frame is voiced or not, by returning the value of the "pitch" associated with this frame.
  • the "pitch” is the frequency of repetition of the voicing pattern. This pitch value is zero, if there is no voicing, and not zero otherwise.
  • This elementary voicing detection is done without using results relating to the preceding frames, and without predicting results relating to future frames.
  • a vowel nucleus can consist of several voiced segments, separated by unvoiced holes, an expertise is necessary, in order to validate or not a voicing.
  • this hole may be part of the vowel nucleus and we cannot yet make a final decision.
  • the hole size is reset, for processing of the next unvoiced frames.
  • This procedure is used for each frame, and after calculating the pitch associated with this frame.
  • This elementary voicing detection is done without using results relating to the preceding frames, and without predicting results relating to future frames.
  • fricative blocks should not be too large. Also, an expertise intervening after the detection of these sounds is necessary.
  • fricative will refer just as well to unvoiced fricatives as to unvoiced plosives.
  • This expertise is used to detect the fricative blocks preceding or following the vowel nucleus.
  • the benchmark chosen in this expertise is therefore the vocal core.
  • the AMDF function is a distance between the signal and its delayed form. However, this distance is a distance which does not admit an associated scalar product, and which therefore does not allow the concept of orthogonal projection to be introduced. However, in a noisy environment, the orthogonal projection of the noise can be zero, if the axis of projection is well chosen. AMDF is therefore not an adequate solution in noisy environments.
  • Noise whiteness in practice is not a valid assumption. However, the result remains good approximation as soon as the noise correlation function decreases rapidly, and for k sufficiently large, as in the case of pink noise (white noise filtered by a bandpass), where the correlation function is a cardinal sine, therefore practically zero as soon as k is sufficiently large.
  • x (n) be the processed signal where n e ⁇ 0, ..., N-1 ⁇ .
  • the observation window must always be the same regardless of k. So that if n-k is less than 0, it is necessary to have stored in memory the past values of the signal x (n), so as to calculate the function r (k) on as many points, whatever k. The value of the constant K no longer matters.
  • This function r (k) being calculated, it is then a question of thresholding it.
  • the threshold is chosen experimentally, according to the dynamics of the signals processed.
  • the detection algorithm aims to detect the start and end of speech from a whitened version of the signal, while the denoising algorithm requires knowledge of the average noise spectrum.
  • To build the noise models which will make it possible to whiten the speech signal for the detection of unvoiced sounds as described below, and to denoise the speech signal, it is obvious that it is necessary to detect the noise frames , and confirm them as such.
  • Pr ⁇ X ⁇ x ⁇ P (x, m
  • ⁇ , ⁇ ) ⁇ P (x, y
  • ⁇ 1 , ⁇ 2 ) ⁇ P (x, m
  • a ⁇ .
  • f ⁇ (x, y) f (x, y
  • ⁇ , ⁇ ), h ⁇ (x, y) h (x, y
  • ⁇ , ⁇ ) and P ⁇ (x, y) P (x, y
  • H (f) U [- (f0-B / 2, -f0 + B / 2] (f) + U [f0-B / 2, f0 + B / 2] (f), where U denotes the characteristic function of the interval in index and f o the central frequency of the filter.
  • m m 1 / m 2
  • ⁇ 1 m 1 / ⁇ 1
  • ⁇ 2 m 2 / ⁇ 2 .
  • ⁇ 1 and a 2 are large enough that the random variables of Ci and C 2 can be considered as positive random variables.
  • H 1 ⁇ U ⁇ V is true
  • H 2 ⁇ U ⁇ V is false.
  • 1 [1 / s, s].
  • This decision rule admits a correct decision probability, the expression of which will in fact depend on the value of the probabilities Pr ⁇ H 1 ⁇ and Pr ⁇ H 2 ⁇ . However, these probabilities are generally not known in practice.
  • C 2 is the class of energies corresponding to noise alone.
  • the object of this processing aims to highlight, not all the noise frames, but only a few having a high probability of being made up only of noise. We therefore have every interest in making the algorithm very selective.
  • this selectivity is also obtained by the choice of r: chosen too large, there is a risk of considering energies as representative of the noise, whereas these are breathing energies, for example, having a signal to noise ratio less than r. Conversely, choosing an r that is too small can limit the accessible P FA , which would then be too high to be acceptable.
  • the frame having the minimum energy among the Ni frames is therefore assumed to consist only of noise. We then look for all the frames compatible with this frame in the sense recalled above, using the aforementioned models.
  • the noise detection algorithm will search, among a set of frames T 1 , ..., T n , for those which can be considered as noise.
  • Noise Noise U ⁇ E (T i ) ⁇ End for Autoregressive Model of noise.
  • the noise confirmation algorithm provides a certain number of frames which can be considered as noise with a very high probability, we seek to construct, from the data of the temporal samples, an autoregressive model of the noise.
  • x (n) designates the noise samples
  • x (n) ⁇ 1 ⁇ i p P a i x (ni) + b (n)
  • p is the order of the model
  • a i the coefficients of the model to be determined
  • b (n) the modeling noise, assumed to be white and Gaussian if we follow a maximum likelihood approach.
  • the rejector filter H (z) whitens the signal, so that the signal at the output of this filter is a speech signal (filtered therefore distorted), added to a generally white and Gaussian noise.
  • the signal obtained is in fact unsuitable for recognition, because the rejector filter distorts the original speech signal.
  • X 1 (n) ..., X M (n) be the M + 1 FFT of the M noise frames confirmed as such, these FFT being obtained by weighting the initial time signal by an adequate apodization window.
  • C uu is the average spectrum of the total signal u (n) available only on a single frame.
  • this frame must be configured so that it can intervene in the recognition process. There is therefore no question of carrying out any average of the signal u (n) all the more since the speech signal is a particularly non-stationary signal.
  • ⁇ c UU be the FFT- 1 of ⁇ C UU .
  • ⁇ c UU (k) f (k) v (k) where v (k) is the FFT- 1 of V (k).
  • the method of the invention applies the algorithm of the previous smoothed correlogram to the average noise spectrum M xx (n).
  • An FFT- 1 can possibly make it possible to recover the denoised time signal.
  • the denoised spectrum ⁇ S (n) obtained is the spectrum used for parameterization with a view to recognizing the frame.
  • the decision rule is expressed in the following form:
  • ⁇ 1 , ⁇ 2 ) is then: or
  • the optimal threshold is that for which P c (s, m
  • the sounds / F /, / S /, / CH / are located spectrally in a frequency band which extends from approximately 4 KHz to more than 5KHz.
  • the sounds / P /, / T /, / Q / as short phenomena in time, are spread over a wider band.
  • the spectrum of these fricative sounds is relatively flat, so that the fricative signal in this band can be modeled by a narrow band signal. This can be realistic in certain practical cases without resorting to the bleaching described above. In most cases, however, it is a good idea to work on a whitened signal to ensure a suitable narrowband noise model.
  • s (n) be the speech signal in the band studied and x (n) the noise in this same band.
  • the signals s (n) and x (n) are assumed to be independent.
  • the class C 2 corresponds to the energy V of the noise alone observed on M points.
  • u (n) is a signal itself Gaussian, so that: Similarly:
  • V ⁇ 0 ⁇ n ⁇ M-1 y (n) 2 ⁇ N (M ⁇ x 2 , 2 ⁇ x 2 ⁇ 0 ⁇ i ⁇ M-1.0 ⁇ j ⁇ M-1 g f0, B (ij) 2 ) , where y (n) denotes, we recall, another value noise x (n) over a time slice different from that where u (n) is observed.
  • y (n) denotes, we recall, another value noise x (n) over a time slice different from that where u (n) is observed.
  • the model of the fricative signal is not the same as previously.
  • the voiced sound is independent of the noise x (n) which is here Gaussian narrow band.
  • the noise must be Gaussian white. If the original noise is not white, we can approach this model by actually sub-sampling the observed signal, that is to say by considering only one sample out of 2, 3, or even more, depending on the noise autocorrelation function, and assuming that the speech signal thus subsampled still has detectable energy. But it is also possible, and this is preferable, to use this algorithm on a signal whitened by a rejector filter, since then the residual noise is approximately white and Gaussian.
  • E (T i ) is compatible with E o (Decision on the value of E (T i ) / E 0 ).
  • E (T i ) is compatible with E o (Decision on the value of E (T i ) / E 0 ).
  • the signal-to-noise ratio r can be estimated or fixed in a heuristic manner, provided that some preliminary experimental measurements, characteristic of the field of application, are carried out, so as to fix an order of magnitude of the signal-to-noise ratio presented by the fricatives in the chosen band.
  • the probability p of the presence of unvoiced speech is also a heuristic datum which modulates the selectivity of the algorithm, in the same way as the signal-to-noise ratio.
  • This data can be estimated according to the vocabulary used and the number of frames on which the search for unvoiced sounds is made.

Abstract

The method of the invention consists in: - detecting a voiced frame; - searching for the noise frames preceding this voiced frame; - constructing an auto-regressive model of the noise and a mean noise spectrum; - whitening the frames preceding the voicing; - searching for the actual start of speech in the whitened frames; - ridding the voiced frames of noise and parametrising them; and - searching for the actual end of speech.

Description

La présente invention se rapporte à un procédé de détection de la parole.The present invention relates to a speech detection method.

Lorsqu'on cherche à déterminer le début et la fin effectifs de la parole, diverses solutions sont envisageable :

  • (1) On peut travailler sur l'amplitude instantanée par référence à un seuil déterminé expérimentalement et confirmer la détection de parole par une détection de voisement (voir article "La discrimination parole- bruit et ses applications" de V. PETIT/F. DUMONT, paru dans la Revue Technique THOMSON-CSF - Vol. 12 - N°4, déc. 1980).
  • (2) On peut aussi travailler sur l'énergie du signal total sur une tranche temporelle de durée T, en seuillant, toujours expérimentalement, cette énergie à l'aide d'histogrammes locaux, par exemple, et confirmer ensuite à l'aide d'une détection de voisement, ou du calcul de l'énergie minimale d'une voyelle. L'utilisation de l'énergie minimale d'une voyelle est une technique décrite dans le rapport "AMADEUS Version 1.0" de J.L. GAUVAIN du laboratoire LIMSI du CNRS.
  • (3) Les systèmes précédents permettent la détection de voisement, mais non pas du début et de la fin effectifs de la parole, c'est-à-dire la détection des sons fricatifs non voisés (/F/, /S/, /CH/) et des sons plosifs non voisés (P/, /T/, /Q/). Il faut donc les compléter par un algorithme de détection de ces fricatives. Une première technique peut consister en l'utilisation d'histogrammes locaux, comme le préconise l'article "Problème de détection des frontières de mots en présence de bruit additifs" de P. WACRENIER, paru dans le mémoire de D.E.A. de l'université de PARIS-SUD, Centre d'Orsay.
When trying to determine the effective start and end of speech, various solutions are possible:
  • (1) We can work on the instantaneous amplitude by reference to a threshold determined experimentally and confirm the speech detection by a voice detection (see article "Speech-noise discrimination and its applications" by V. PETIT / F. DUMONT , published in the THOMSON-CSF Technical Review - Vol. 12 - N ° 4, Dec. 1980).
  • (2) We can also work on the energy of the total signal over a time slice of duration T, by thresholding, still experimentally, this energy using local histograms, for example, and then confirming using d '' voicing detection, or calculation of the minimum energy of a vowel. The use of the minimum energy of a vowel is a technique described in the report "AMADEUS Version 1.0" by JL GAUVAIN of the LIMSI laboratory of the CNRS.
  • (3) The preceding systems allow the detection of voicing, but not of the effective start and end of speech, that is to say the detection of unvoiced fricative sounds (/ F /, / S /, / CH /) and unvoiced plosive sounds (P /, / T /, / Q /). They must therefore be supplemented by an algorithm for detecting these fricatives. A first technique may consist in the use of local histograms, as recommended in the article "Problem of detection of word boundaries in the presence of additive noise" by P. WACRENIER, published in the DEA thesis of the University of PARIS-SUD, Center d'Orsay.

D'autres techniques voisines des précédentes et relativement proches de celle exposée ici, ont été présentées dans l'article "A Study of Endpoint Detection Algorithms in Adverse Conditions: Incidence on a DTW and HMM Recognizer" de J.C. JUNQUA/B. REAVES/B. MAK, lors du Congrès EUROSPEECH 1991.Other techniques similar to the previous ones and relatively close to that exposed here, were presented in the article "A Study of Endpoint Detection Algorithms in Adverse Conditions: Incidence on a DTW and HMM Recognizer" by J.C. JUNQUA / B. REAVES / B. MAK, at the 1991 EUROSPEECH Congress.

Dans toutes ces approches, une grande part est faite à l'heuristique, et peu d'outils théoriques puissants sont utilisés.In all of these approaches, much is made of heuristics, and few powerful theoretical tools are used.

Les travaux sur le débruitage de la parole similaires à ceux présentés ici sont beaucoup plus nombreux, et l'on citera en particulier le livre "Speech Enhancement" de J.S. LIM aux Editions Prentice-Hall Signal Processing Series "Suppression of Acoustic Noise in Speech Using Spectral Substraction" de S.F. BOLL, paru dans la revue IEEE Transactions on Acoustics, speech, and signal processing, vol. ASSP-27, N°2, Avril 1989, et "Noise Reduction For Speech Enhancement In Cars : Non-Linear Spectral Subtraction/Kalman Filtering" de P. LOCKWOOD, C. BAILLARGEAT, J.M. GILLOT, J. BOUDY, G. FAUCON paru dans la revue EUROSPEECH 91. On ne citera que des techniques de débruitage dans le domaine spectral, et il sera question par la suite de débruitage "spectral" par abus de langage.Much more work on noise reduction similar to that presented here, and in particular the book "Speech Enhancement" by JS LIM published by Prentice-Hall Signal Processing Series "Suppression of Acoustic Noise in Speech Using Spectral Substraction "by SF BOLL, published in the journal IEEE Transactions on Acoustics, speech, and signal processing, vol. ASSP-27, N ° 2, April 1989, and "Noise Reduction For Speech Enhancement In Cars: Non-Linear Spectral Subtraction / Kalman Filtering" by P. LOCKWOOD, C. BAILLARGEAT, JM GILLOT, J. BOUDY, G. FAUCON published in the review EUROSPEECH 91. We will only mention denoising techniques in the spectral domain, and it will be referred to below as "spectral" denoising by abuse of language.

Dans tous ces travaux, la relation étroite entre détection et débruitage n'est jamais réellement mise en évidence, sauf dans l'article "Suppression of Acoustic Noise in Speech Using Spectral Subtraction", qui propose une solution empirique à ce problème.In all of these works, the close relationship between detection and denoising is never really highlighted, except in the article "Suppression of Acoustic Noise in Speech Using Spectral Subtraction", which offers an empirical solution to this problem.

Or, il est évident qu'un débruitage de la parole, lorsqu'on ne dispose pas de deux canaux d'enregistrements, nécessite l'utilisation de trames de bruit "pur", non polluées par la parole, ce qui nécessite de définir un outil de détection capable de distinguer entre bruit et bruit + parole.However, it is obvious that a denoising of the speech, when one does not have two channels of recordings, requires the use of frames of “pure” noise, not polluted by the speech, which requires to define a detection tool capable of distinguishing between noise and noise + speech.

La présente invention a pour objet un procédé de détection et de débruitage de la parole qui permette de détecter le plus sûrement possible les débuts et fins effectifs de signaux de parole quels que soient les types de sons de parole, et qui permette de débruiter le plus efficacement possible les signaux ainsi détectés, même lorsque les caractéristiques statistiques du bruit affectant ces signaux varient fortement.The subject of the present invention is a method for detecting and denoising speech which makes it possible to detect as safely as possible the beginnings and end times of speech signals whatever the types of speech sounds, and which makes it possible to denois the most Signals thus detected can be effectively detected, even when the statistical characteristics of the noise affecting these signals vary widely.

Le procédé de l'invention consiste à effectuer en milieu peu bruité une détection de trames voisées, et à détecter un noyau vocalique auquel on attache un intervalle de confiance.The method of the invention consists in carrying out in a low-noise environment a detection of voiced frames, and in detecting a vocal nucleus to which a confidence interval is attached.

En milieu bruité, après avoir effectué la détection d'au moins une trame voisée, on recherche des trames de bruit précédant cette trame voisée, on construit un modèle autorégressif de bruit et un spectre moyen de bruit, on blanchit par filtre réjecteur et on débruite par débruiteur spectral les trames précédant le voisement, on recherche le début effectif de la parole dans ces trames blanchies, on extrait des trames débruitées comprises entre le début effectif de la parole et la première trame voisée les vecteurs acoustiques utilisés par le système de reconnaissance vocale, tant que des trames voisées sont détectées, celles-ci sont débruitées puis paramétrisées en vue de leur reconnaissance (c'est-à-dire que l'on extrait les vecteurs acoustiques adaptés à la reconnaissance de ces trames), lorsqu'on ne détecte plus de trames voisées, on recherche la fin effective de la parole, on débruite puis on paramétrise les trames comprises entre la dernière trame voisée et la fin effective de la parole.In a noisy environment, after having carried out the detection of at least one voiced frame, we search for noise frames preceding this voiced frame, we build an autoregressive model of noise and an average spectrum of noise, we whiten by rejector filter and we denoised by spectral denoiser the frames preceding the voicing, one searches for the effective start of the speech in these bleached frames, one extracts from the noisy frames included between the effective start of the speech and the first voiced frame the acoustic vectors used by the voice recognition system , as long as voiced frames are detected, these are denoised and then parameterized with a view to their recognition (that is to say that the acoustic vectors adapted to the recognition of these frames are extracted), when no detects more voiced frames, we search for the effective end of the speech, we denois then we configure the frames between the last tr voiced soul and the effective end of speech.

Dans toute la suite, lorsqu'il sera question de paramétrisation des trames, il faudra entendre que l'on extrait de la trame le vecteur acoustique (ou de manière équivalente, les paramètres acoustiques) utilisés par l'algorithme de reconnaissance.In what follows, when it is a question of parameterizing the frames, it will be understood that the acoustic vector (or equivalent, the acoustic parameters) used by the recognition algorithm is extracted from the frame.

Un exemple de tels paramètres acoustiques sont les coefficients cepstraux bien connus des spécialistes du traitement de la parole.An example of such acoustic parameters are the cepstral coefficients well known to specialists in speech processing.

Dans toute la suite, on entendra par blanchiment, l'application du filtrage réjecteur calculé à partir du modèle autorégressif du bruit, et par débruitage, l'application du débruiteur spectral.In the following, we will understand by bleaching, the application of the rejector filtering calculated from the autoregressive model of noise, and by denoising, the application of the spectral denoiser.

Blanchiment et débruitage spectral ne s'appliquent pas de manière séquentielle, mais en parallèle, le blanchiment permettant la détection de sons non voisés, le débruitage une amélioration de la qualité du signal vocal à reconnaître.Spectral whitening and denoising do not apply sequentially, but in parallel, whitening allowing the detection of unvoiced sounds, denoising an improvement in the quality of the voice signal to be recognized.

Ainsi, le procédé de l'invention est caractérisé par l'utilisation d'outils théoriques permettant une approche rigoureuse des problèmes de détection (voisement et fricatives), par sa grande adaptativité, car ce procédé est avant tout un procédé local au mot. Les caractéristiques statistiques du bruit peuvent évoluer dans le temps, le procédé restera capable de s'y adapter, par construction. Il est également caractérisé par l'élaboration d'expertises de détection à partir des résultats d'algorithmes de traitement du signal (on minimise ainsi le nombre de fausses alarmes, dues à la détection, en prenant en compte la nature particulière du signal de parole), par des processus de débruitage couplés à la détection de parole, par une approche en "temps réel", et ce, à tous les niveaux de l'analyse, par sa synergie avec d'autres techniques de traitement du signal vocal, par l'utilisation de deux débruiteurs différents :

  • * Filtrage de réjection, principalement utilisé pour la détection de fricatives, en vertu de ses propriétés de blanchiment.
  • * Filtrage de Wiener en particulier, utilisé pour débruiter le signal de parole en vue de sa reconnaissance. On peut aussi utiliser une soustraction spectrale.
Thus, the method of the invention is characterized by the use of theoretical tools allowing a rigorous approach to the detection problems (voicing and fricatives), by its great adaptability, because this method is above all a process local to the word. The statistical characteristics of the noise can change over time, the process will remain capable of adapting to it, by construction. It is also characterized by the development of detection expertise from the results of signal processing algorithms (this minimizes the number of false alarms due to detection, taking into account the specific nature of the speech signal ), by denoising processes coupled with speech detection, by a "real time" approach, and this, at all levels of analysis, by its synergy with other techniques for processing the voice signal, by the use of two different denoisers:
  • * Rejection filtering, mainly used for the detection of fricatives, by virtue of its bleaching properties.
  • * Wiener filtering in particular, used to denoise the speech signal for recognition. We can also use spectral subtraction.

Il faut donc distinguer dans le procédé de l'invention, trois niveaux de traitement :

  • - Le niveau "élémentaire" qui met en oeuvre des algorithmes de traitement du signal qui sont en fait les éléments de base de tous les traitements de niveau supérieur.
In the process of the invention, three levels of processing must therefore be distinguished:
  • - The "elementary" level which implements signal processing algorithms which are in fact the basic elements of all higher level processing.

Ainsi, le niveau "élémentaire" de détection de voisement est un algorithme de calcul et de seuillage de la fonction de corrélation. Le résultat est expertisé par le niveau supérieur.Thus, the "elementary" level of voicing detection is an algorithm for calculating and thresholding the correlation function. The result is assessed by the higher level.

Ces traitements s'implantent sur processeurs de traitement du signal, par exemple du type DSP 96000.

  • - Le niveau intermédiaire d'expertise élabore des détections de voisements et de début de parole "intelligentes", compte tenu de la détection "brute" fournie par le niveau élémentaire. L'expertise peut faire appel à un langage informatique approprié, type Prolog.
  • - Le niveau "supérieur" ou utilisateur gère en temps réel les différents algorithmes de détection, de débruitage et d'analyse du signal vocal. Le langage C, par exemple, est approprié à l'implémentation de cette gestion.
These treatments are implemented on signal processing processors, for example of the DSP 96000 type.
  • - The intermediate level of expertise develops "intelligent" voice detection and speech detection, taking into account the "raw" detection provided by the elementary level. Expertise can use an appropriate computer language, such as Prolog.
  • - The "higher" or user level manages the different algorithms for detecting, denoising and analyzing the voice signal in real time. The C language, for example, is suitable for the implementation of this management.

L'invention est décrite en détail ci-dessous selon le plan suivant. On décrit d'abord l'algorithme qui permet d'enchaîner de façon appropriée les différentes techniques de traitement du signal et d'expertises nécessaires.The invention is described in detail below according to the following plan. We first describe the algorithm which makes it possible to appropriately chain the various signal processing techniques and necessary expertise.

On supposera à ce niveau de traitement le plus élevé dans la hiérarchie de conception, que l'on dispose de méthodes fiables de détection et de débruitage, comportant tous les algorithmes de traitement de signal, toutes les expertises, nécessaires et suffisants. Cette description est donc très générale. Elle est même indépendante des algorithmes d'expertises et de traitement du signal décrits ci-après. Elle peut donc s'appliquer à d'autres techniques que celles décrites ici.It will be assumed at this highest level of processing in the design hierarchy, that reliable detection and denoising methods are available, including all the signal processing algorithms, all the expertise, necessary and sufficient. This description is therefore very general. It is even independent of the expertise and signal processing algorithms described below. It can therefore be applied to other techniques than those described here.

On décrit ensuite les expertises de détection de voisement, de début et fin de parole, à l'aide d'algorithmes de niveau élémentaire dont certains exemples sont cités.We then describe the expertise of voice detection, start and end of speech, using elementary level algorithms, some examples of which are cited.

On décrit enfin les méthodes utilisées pour la détection et le débruitage de la parole.Finally, the methods used for speech detection and denoising are described.

Ce sont les résultats de ces techniques (Parole voisée, non voisée, ...) qui sont utilisés par les niveaux supérieurs de traitementIt is the results of these techniques (voiced, unvoiced speech, etc.) that are used by higher levels of processing.

Conventions et vocabulaire employé.Conventions and vocabulary used.

On appellera trame, l'unité temporelle élémentaire de traitement. La durée d'une trame est classiquement de 12.8 ms, mais peut, bien entendu, avoir des valeurs (réalisations en langage mathématique) différentes. Les traitements font appel à des transformées de Fourier discrètes des signaux traités. Ces transformées de Fourier sont appliquées à l'ensemble des échantillons obtenus sur deux trames consécutives, ce qui correspond à effectuer une transformée de Fourier sur 25.8 ms.We will call frame, the elementary time unit of processing. The duration of a frame is conventionally 12.8 ms, but can, of course, have different values (achievements in mathematical language). The treatments use discrete Fourier transforms of the processed signals. These Fourier transforms are applied to all of the samples obtained on two consecutive frames, which corresponds to performing a Fourier transform over 25.8 ms.

Lorsque deux transformées de Fourier sont consécutives dans le temps, ces transformées sont calculées, non pas sur quatre trames consécutives, mais sur trois trames consécutives avec un recouvrement d'une trame. Ceci est illustré par le schéma suivant :

Figure imgb0001
When two Fourier transforms are consecutive in time, these transforms are calculated, not on four consecutive frames, but on three consecutive frames with an overlap of a frame. This is illustrated by the following diagram:
Figure imgb0001

On décrit d'abord ici le fonctionnement de l'algorithme au niveau de conception le plus proche de l'utilisateur.We first describe here the functioning of the algorithm at the design level closest to the user.

Le mode de mise en oeuvre préféré de l'invention est décrit ci-dessous en référence à l'analyse des signaux issus d'environnements avioniques très bruités, ce qui permet de disposer d'une information de départ qui est l'alternat micro qu'utilisent les pilotes. Cette information indique une zone temporelle proche du signal à traiter.The preferred embodiment of the invention is described below with reference to the analysis of signals from very noisy avionic environments, which makes it possible to have starting information which is the micro alternation that use the pilots. This information indicates a time zone close to the signal to be processed.

Cependant, cet alternat peut être plus ou moins rapproché du début effectif de la parole, et on ne peut donc y accorder qu'un faible crédit pour toute détection précise. Il va donc falloir préciser le début effectif de parole à partir de cette première information.However, this alternation can be more or less close to the actual start of speech, and therefore we can only give it a small amount of credit for any precise detection. It will therefore be necessary to specify the actual start of speech from this first information.

Dans un premier temps, on recherche la première trame voisée située aux alentours de cet alternat. Cette première trame voisée, est recherchée tout d'abord parmi les N1 trames qui précèdent l'alternat (N1 = environ 30 trames). Si cette trame voisée n'est pas trouvée parmi ces N1 trames, alors on recherche le voisement sur les trames qui suivent l'alternat, au fur et à mesure qu'elles se présentent.First, we look for the first voiced frame located around this half-duplex. This first voiced frame is sought first of all from the N1 frames which precede the half-cycle (N1 = about 30 frames). If this voiced frame is not found among these N1 frames, then the voicing is sought on the frames which follow the alternation, as they arise.

Dès que la première trame voisée est trouvée par ce procédé, on va initialiser les débruiteurs. Pour cela, il faut mettre en évidence des trames constituées uniquement de bruit. Ces trames de bruit sont recherchées parmi les N2 trames qui précèdent la première trame voisée (N2 = environ 40 trames). En effet, chacune de ces N2 trames est soit :

  • * constituée de bruit seul
  • * constituée de bruit + respiration
  • * constituée de bruit + fricative ou occlusive non voisée.
As soon as the first voiced frame is found by this method, we will initialize the denoisers. For this, it is necessary to highlight frames made up solely of noise. These noise frames are sought from among the N2 frames which precede the first voiced frame (N2 = approximately 40 frames). Indeed, each of these N2 frames is either:
  • * consisting of noise alone
  • * consisting of noise + breathing
  • * consisting of noise + fricative or occlusive not voiced.

L'hypothèse faite est que l'énergie du bruit est en moyenne inférieure à celle du bruit + respiration, elle-même inférieure à celle du bruit + fricative.The assumption made is that the noise energy is on average lower than that of noise + respiration, itself lower than that of noise + fricative.

Donc, si on considère parmi les N2 trames, celle qui présente l'énergie la plus faible, il est fort probable que cette trame n'est constituée que de bruit.So, if we consider among the N2 frames, the one with the lowest energy, it is very likely that this frame consists only of noise.

A partir de la connaissance de cette trame, on recherche toutes celles qui sont compatibles avec elle, et compatibles 2 à 2, au sens donné plus loin, au paragraphe "Compatibilités entre énergies".From the knowledge of this frame, we look for all those which are compatible with it, and compatible 2 to 2, in the sense given below, in the paragraph "Compatibilities between energies".

. Lorsque les trames de bruit ont été détectées, on construit les deux modèles de bruit qui vont servir par la suite :

  • * Modèle autorégressif du bruit permettant de construire le filtrage réjecteur qui blanchit le bruit.
  • * Spectre moyen de bruit pour débruitage spectral.
. When the noise frames have been detected, we build the two noise models which will be used later:
  • * Autoregressive noise model allowing to build the rejection filter which whitens the noise.
  • * Average noise spectrum for spectral denoising.

Ces modèles sont décrits ci-dessous.These models are described below.

Les modèles de bruit étant construits, on blanchit (par filtre réjecteur et on débruite (par débruiteur spectral) les N3 trames qui précèdent le voisement et parmi lesquelles on va chercher le début effectif de parole (N3 = environ 30). Il va de soi que N3 est inférieur à N2. Cette détection se fait par détection de fricative et est décrite ci-dessous.The noise models having been constructed, the N3 frames which precede the voicing are whitened (by rejection filter and denoised (by spectral denoiser) and among which the effective start of speech is sought (N3 = around 30). that N3 is less than N2. This detection is done by fricative detection and is described below.

Lorsque le début de parole est connu, on débruite toutes les trames comprises entre le début de parole et la première trame voisée, puis on paramétrise ces trames en vue de leur reconnaissance. Au fur et à mesure que ces trames sont débruitées et paramétrisées, elles sont envoyées au système de reconnaissance.When the start of speech is known, all the frames between the start of speech and the first voiced frame are denoised, then these frames are parameterized for recognition. As these frames are denoised and configured, they are sent to the recognition system.

Puisque le début effectif de parole est connu, on peut continuer à traiter les trames qui suivent la première trame voisée.Since the effective start of speech is known, we can continue to process the frames following the first voiced frame.

Chaque trame acquise n'est plus blanchie mais seulement débruitée, puis paramétrisée pour sa reconnaissance. On effectue sur chaque trame un test de voisement.Each acquired frame is no longer bleached but only denoised, then configured for recognition. A voicing test is carried out on each frame.

Si cette trame est voisée, le vecteur acoustique est effectivement envoyé à l'algorithme de reconnaissance.If this frame is voiced, the acoustic vector is effectively sent to the recognition algorithm.

Si elle n'est pas voisée, on cherche si elle est en fait la dernière trame du noyau vocalique en cours.If it is not voiced, we seek if it is in fact the last frame of the vocal nucleus in progress.

Si ce n'est pas la dernière trame du noyau vocalique, on acquiert une nouvelle trame et on réitère le procédé, jusqu'au moment où l'on trouve la dernière trame voisée.If it is not the last frame of the vocal nucleus, we acquire a new frame and we repeat the process, until we find the last voiced frame.

Lorsque la dernière trame voisée est détectée, on blanchit les N4 trames qui suivent cette dernière trame voisée (N4 = environ 30 trames), puis on recherche la fin effective de la parole parmi ces N4 trames blanchies. Le procédé associé à cette détection est décrit ci-dessous.When the last voiced frame is detected, the N4 frames which follow this last voiced frame are bleached (N4 = about 30 frames), then the effective end of speech is sought among these N4 bleached frames. The process associated with this detection is described below.

Lorsque la fin effective de parole est détectée, les trames comprises entre la fin de voisement et cette fin de parole, sont débruitées, puis paramétrisées et envoyées au système de reconnaissance vocale pure en vue de leur traitement.When the effective end of speech is detected, the frames between the end of voicing and this end of speech are denoised, then parameterized and sent to the pure voice recognition system for processing.

Lorsque la dernière trame de parole a été débruitée, paramétrisée et envoyée au système de reconnaissance, on réinitialise tous les paramètres de traitement, en vue du traitement de l'élocution suivante.When the last speech frame has been denoised, parameterized and sent to the recognition system, all the processing parameters are reset, for the processing of the next speech.

Comme on peut le voir, ce procédé est local à l'élocution traitée (c'est-à-dire qu'il traite chaque phrase ou chaque ensemble de mots sans "trou" entre mots), et permet donc d'être très adaptatif à tous changements de statistiques du bruit, d'autant plus que l'on utilise des algorithmes adaptatifs pour la modélisation auto-régressive du bruit, et des modèles théoriques relativement sophistiqués pour la détection des trames de bruit et la détection des fricatives.As we can see, this process is local to the spoken speech (that is to say, it treats each sentence or each set of words without "gap" between words), and therefore makes it possible to be very adaptive to any change in noise statistics, especially since we use adaptive algorithms for auto-regressive noise modeling, and relatively sophisticated theoretical models for the detection of noise frames and the detection of fricatives.

En l'absence d'alternat, le procédé est lancé dès qu'un voisement est détecté.In the absence of an alternation, the process is launched as soon as a voicing is detected.

Une simplification notable du procédé décrit ci-dessus est possible lorsque les signaux traités sont peu bruités. L'utilisation des algorithmes de débruitage et de blanchiment peut alors se révéler inutile, voire néfaste, lorsque le niveau de bruit est négligeable (ambiance laboratoire). Ce phénomène est connu, notamment dans le cas du débruitage, où débruiter un signal très peu bruité peut induire une déformation de la parole préjudiciable à une bonne reconnaissance.A significant simplification of the method described above is possible when the processed signals are not very noisy. The use of denoising and whitening algorithms can then prove useless, even harmful, when the noise level is negligible (laboratory atmosphere). This phenomenon is known, especially in the case of denoising, where denoising a very noisy signal can induce a distortion of speech detrimental to good recognition.

Les simplifications résident :

  • - dans la suppression du débruitage spectral pour reconnaissance en vue d'éviter toute déformation de la parole, ne compensant pas le gain en rapport signal sur bruit que l'on pourrait obtenir par débruitage, et préjudiciable alors à une bonne reconnaissance.
  • - dans l'éventuelle suppression du filtre de blanchiment (et donc du calcul du modèle autorégressif du bruit, ce qui implique aussi la suppression du module de confirmation de bruit). Cette suppression n'est pas forcément nécessaire en milieu peu bruité. Des essais préalables sont préférables pour en décider.
The simplifications are:
  • - In suppressing spectral denoising for recognition in order to avoid any distortion of speech, not compensating for the gain in signal to noise ratio that could be obtained by denoising, and thus detrimental to good recognition.
  • - in the eventual removal of the whitening filter (and therefore of the calculation of the autoregressive noise model, which also implies the removal of the noise confirmation module). This removal is not necessarily necessary in low noise environments. Pre-testing is preferable to decide.

On va maintenant exposer en détail les procédures d'expertise de détection de voisement et détection de fricativeWe will now describe in detail the expertise procedures for voicemail detection and fricative detection

Ces procédures d'expertises font appel à des outils bien connus de traitement du signal et de détection, qui sont autant d'automates de base, dont l'aptitude est de décider de manière brute si la trame traitée est voisée ou non, est une trame de fricative non voisée ou de plosive non voisée...These expert procedures use well-known signal processing and detection tools, which are all basic automata, the ability of which is to decide roughly whether the processed frame is voiced or not, is a unvoiced fricative or unvoiced plosive frame ...

L'expertise consiste à combiner les différents résultats obtenus à l'aide desdits outils, de manière à mettre en évidence des ensembles cohérents, formant le noyau vocalique par exemple, ou des blocs de sons fricatifs (plosifs), non voisés.Expertise consists in combining the different results obtained using these tools, so as to highlight coherent sets, forming the vocal nucleus for example, or blocks of fricative sounds (plosives), not seen.

Par nature, le langage d'implémentation de telles procédures est de préférence le PROLOG.By nature, the implementation language for such procedures is preferably PROLOG.

A la différence du processus décrit ci-dessus, cette expertise est la même que le milieu soit bruité ou non.Unlike the process described above, this expertise is the same whether the environment is noisy or not.

Pour l'expertise de détection de voisement, on fait appel à un processus connu de détection de voisement, qui, pour une trame donnée, décide si cette trame est voisée ou non, en renvoyant la valeur du "pitch" associé à cette trame. Le "pitch" est la fréquence de répétition du motif de voisement. Cette valeur de pitch est nulle, s'il n'y a pas de voisement, et non nulle sinon.For the voicing detection expertise, use is made of a known voicing detection process, which, for a given frame, decides whether this frame is voiced or not, by returning the value of the "pitch" associated with this frame. The "pitch" is the frequency of repetition of the voicing pattern. This pitch value is zero, if there is no voicing, and not zero otherwise.

Cette détection élémentaire de voisement se fait sans utiliser des résultats portant sur les trames précédentes, et sans présager du résultat portant sur les trames futures.This elementary voicing detection is done without using results relating to the preceding frames, and without predicting results relating to future frames.

Comme un noyau vocalique peut être constitué de plusieurs segments voisés, séparés de trous non voisés, une expertise est nécessaire, afin de valider ou non un voisement.As a vowel nucleus can consist of several voiced segments, separated by unvoiced holes, an expertise is necessary, in order to validate or not a voicing.

On va maintenant exposer les règles générales de l'expertise.

  • Règle 1 : Entre deux trames voisées consécutives ou séparées d'un nombre relativement faible de trames (de l'ordre de trois ou quatre trames), les valeurs de pitch obtenues ne peuvent différer de plus d'un certain delta (environ ± 20 Hz en fonction du locuteur). Par contre, lorsque l'écart entre deux trames voisées excède un certain nombre de trames, la valeur de pitch peut évoluer très vite.
  • Règle 2 : Un noyau vocalique est constitué de trames voisées entrecoupées de trous. Ces trous doivent vérifier la condition suivante: la taille d'un trou ne doit pas excéder une taille maximale, qui peut être fonction du locuteur et surtout du vocabulaire (environ 40 trames). La taille du noyau est la somme du nombre de trames voisées et de la taille des trous de ce noyau.
  • Règle 3 : le début effectif du noyau vocalique est donné dès que la taille du noyau est suffisamment grande (environ 4 trames).
  • Règle 4: la fin du noyau vocalique est déterminée par la dernière trame voisée suivie d'un trou excédant la taille maximale permise pour un trou dans le noyau vocalique.
We will now set out the general rules of expertise.
  • Rule 1: Between two voiced frames consecutive or separated by a relatively small number of frames (of the order of three or four frames), the pitch values obtained cannot differ by more than a certain delta (approximately ± 20 Hz depending on the speaker). On the other hand, when the difference between two voiced frames exceeds a certain number of frames, the pitch value can change very quickly.
  • Rule 2: A vocal core consists of voiced frames interspersed with holes. These holes must verify the following condition: the size of a hole must not exceed a maximum size, which can be a function of the speaker and especially of the vocabulary (about 40 frames). The size of the core is the sum of the number of voiced frames and the size of the holes in this core.
  • Rule 3: the effective start of the vocal nucleus is given as soon as the size of the nucleus is sufficiently large (approximately 4 frames).
  • Rule 4: the end of the vocal nucleus is determined by the last voiced frame followed by a hole exceeding the maximum size allowed for a hole in the vocal nucleus.

Déroulement de l'expertiseExpertise process

On utilise les règles précédentes de la manière exposée ci-dessous, et lorsqu'une valeur de pitch a été calculée.The above rules are used as described below, and when a pitch value has been calculated.

Première partie de l'expertise :

  • On valide ou non la valeur du pitch calculée, en fonction de la valeur du pitch de la trame précédente et de la dernière valeur non nulle du pitch, et ce en fonction du nombre de trames séparant la trame actuellement traitée et celle du dernier pitch non nul. Ceci correspond à l'application de la règle 1.
First part of the expertise:
  • The calculated pitch value is validated or not, as a function of the pitch value of the preceding frame and of the last non-zero value of the pitch, and this as a function of the number of frames separating the frame currently processed and that of the last pitch not no. This corresponds to the application of rule 1.

Deuxième partie de l'expertise :Second part of the expertise:

Cette deuxième partie de l'expertise se décompose suivant différents cas.This second part of the expertise is broken down according to different cases.

Cas 1 : Première trame voisée :

  • - On incrémente la taille possible du noyau, qui vaut donc 1
  • - Le début possible du noyau vocalique est donc la trame actuelle
  • - La fin possible du noyau vocalique est donc la trame actuelle
Case 1: First voiced frame:
  • - We increment the possible size of the kernel, which is therefore worth 1
  • - The possible beginning of the vocal nucleus is therefore the current frame
  • - The possible end of the vocal nucleus is therefore the current frame

Cas 2 : La trame actuelle est voisée ainsi que la précédente.Case 2: The current frame is seen as well as the previous one.

On traite donc un segment voisé.

  • - On incrémente le nombre possible de trames voisées du noyau
  • - On incrémente la taille possible du noyau
  • - La fin possible du noyau peut être la trame actuelle qui est aussi la fin possible du segment. Si la taille du noyau est suffisamment grande (environ quatre trames, comme précisé ci-dessus). Et Si le début effectif du noyau vocalique n'est pas connu. Alors :
  • - le début du noyau est la première trame détectée comme voisée.
We therefore treat a voiced segment.
  • - We increment the possible number of voiced frames of the kernel
  • - We increase the possible size of the nucleus
  • - The possible end of the kernel can be the current frame which is also the possible end of the segment. If the kernel size is large enough (about four frames, as specified above). And if the actual start of the vocal nucleus is not known. So :
  • - the beginning of the kernel is the first frame detected as voiced.

Ceci correspond à la mise en oeuvre de la règle 3.This corresponds to the implementation of rule 3.

Cas 3 : la trame actuelle n'est pas voisée, alors que la trame précédente l'est.Case 3: the current frame is not seen, while the previous frame is.

On est en train de traiter la première trame d'un trou.

  • - On incrémente la taille du trou, qui passe à 1
We are processing the first frame of a hole.
  • - We increase the size of the hole, which goes to 1

Cas 4 : La trame actuelle n'est pas voisée et la trame précédente non plus.Case 4: The current frame is not seen and neither is the previous frame.

On est en train de traiter un trou.We are treating a hole.

  • - On incrémente la taille du trou.- We increase the size of the hole.

Si la taille du trou excède la taille maximale autorisée pour un trou du noyau vocalique,If the hole size exceeds the maximum size allowed for a vowel core hole,

Alors :So :

Si le début effectif de voisement est connu,If the effective start of voicing is known,

Alors :So :

la fin du noyau vocalique est la dernière trame voisée déterminée avant ce trou. On arrête l'expertise et on réinitialise toutes les données pour le traitement de la prochaine élocution. (cf règle 4)the end of the vocal nucleus is the last voiced frame determined before this hole. We stop the expertise and reset all the data for the processing of the next speech. (see rule 4)

Si le début effectif de parole n'est toujours pas connu,If the actual start of speech is still unknown,

Alors :So :

On continue l'expertise sur les trames suivantes après réinitialisation de tous les paramètres utilisés, car ceux qui ont été actualisés précédemment ne sont pas valides.The expertise is continued on the following frames after reinitialization of all the parameters used, because those which have been updated previously are not valid.

Sinon, ce trou fait peut-être partie du noyau vocalique et on ne peut pas encore prendre de décision définitive.Otherwise, this hole may be part of the vowel nucleus and we cannot yet make a final decision.

Cas 5 : La trame actuelle est voisée et la précédente ne l'est pas.Case 5: The current frame is seen and the previous one is not.

On vient de terminer un trou, et on commence un nouveau segment voisé.

  • - On incrémente le nombre de trames voisées du noyau.
  • - On incrémente la taille du noyau.

Si le trou que l'on vient de finir peut faire partie du noyau vocalique, (c'est-à-dire si sa taille est inférieure à la taille maximale autorisée pour un trou du noyau selon la règle 2).We just finished a hole, and we're starting a new voiced segment.
  • - We increment the number of voiced frames of the kernel.
  • - We increase the size of the nucleus.

If the hole that we have just finished can be part of the vowel nucleus, (that is to say if its size is less than the maximum size authorized for a nucleus hole according to rule 2).

Alors :So :

- On ajoute à la taille actuelle du noyau la taille de ce trou.- The size of this hole is added to the current size of the core.

- On réinitialise la taille du trou, pour traitement des prochaines trames non voisées.- The hole size is reset, for processing of the next unvoiced frames.

Si le début effectif du voisement n'est pas encore connu, Et Si la taille du noyau est désormais suffisante(Règle 3), Alors :

  • - le début du voisement est le début du segment voisé précédant le trou que l'on vient de terminer. Sinon, ce trou ne peut pas faire partie du noyau vocalique :
If the effective start of voicing is not yet known, And If the size of the kernel is now sufficient (Rule 3), Then:
  • - the start of voicing is the beginning of the voiced segment preceding the hole that we have just finished. Otherwise, this hole cannot be part of the vowel core:

Si le début effectif du voisement est connu,If the effective start of the voicing is known,

Alors :So :

  • - la fin du noyau vocalique est la dernière trame voisée déterminée avant ce trou. On arrête l'expertise et on réinitialise toutes les données pour le traitement de la prochaine élocution. (cf règle 4).- the end of the vocal nucleus is the last voiced frame determined before this hole. We stop the expertise and reset all the data for the processing of the next speech. (see rule 4).

Si le début effectif de voisement n'est toujours pas connu,If the effective start of voicing is still not known,

Alors :So :

  • - On continue l'expertise sur les trames suivantes après réinitialisation de tous les paramètres utilisés, car ceux qui ont été actualisés précédemment ne sont pas valides.- The expertise is continued on the following frames after reinitialization of all the parameters used, because those which have been updated previously are not valid.

Cette procédure est utilisée à chaque trame, et après calcul du pitch associé à cette trame.This procedure is used for each frame, and after calculating the pitch associated with this frame.

Expertise de détection de la parole non voisée.Unvoiced speech detection expertise.

On utilise ici un processus connu en soi de détection de parole non voisée.Here we use a process known per se for detection of unvoiced speech.

Cette détection élémentaire de voisement se fait sans utiliser des résultats portant sur les trames précédentes, et sans présager du résultat portant sur les trames futures.This elementary voicing detection is done without using results relating to the preceding frames, and without predicting results relating to future frames.

Des signaux de parole non voisés placés en début ou en fin d'élocution, peuvent être constitués :

  • - d'un seul segment fricatif comme dans "chaff'
  • - d'un segment fricatif suivi d'un segment occlusif comme dans "stop"
  • - d'un seul segment occlusif comme dans "parole"
Unvoiced speech signals placed at the start or end of speech can be made up:
  • - of a single fricative segment as in "chaff '
  • - a fricative segment followed by an occlusive segment as in "stop"
  • - of a single occlusive segment as in "speech"

Il y a donc possibilité de trous dans l'ensemble de trames non voisées.There is therefore the possibility of holes in the set of unvoiced frames.

De plus, de tels blocs fricatifs ne doivent pas être trop grands. Aussi, une expertise intervenant après la détection de ces sons est-elle nécessaire.In addition, such fricative blocks should not be too large. Also, an expertise intervening after the detection of these sounds is necessary.

Dans la suite, par abus de langage, le terme fricatif se rapportera tout aussi bien à des fricatives non voisées qu'à des plosives non voisées.In the following, for abuse of language, the term fricative will refer just as well to unvoiced fricatives as to unvoiced plosives.

Règles générales de l'expertise.General rules of expertise.

L'expertise exposée ici est similaire à celle décrite ci-dessus dans le cas du voisement. Les différences tiennent essentiellement dans la prise en compte des paramètres nouveaux que sont la distance entre le noyau vocalique et le bloc fricatif, et la taille du bloc fricatif.

  • Règle 1 : la distance entre le noyau vocalique et la première trame fricative détectée ne doit pas être trop grande (environ 15 trames maximum) .
  • Règle 2 : la taille d'un bloc fricatif ne doit pas être trop grande. Ceci signifie de manière équivalente, que la distance entre le noyau vocalique et la dernière trame détectée comme fricative ne doit pas être trop grande (environ 10 trames maximum).
  • Règle 3 la taille d'un trou dans un bloc fricatif ne doit pas excéder une taille maximale (environ 15 trames maximum). La taille totale du noyau est la somme du nombre de trames voisées et de la taille des trous dans ce noyau.
  • Règle 4: le début effectif du bloc fricatif est déterminé dès que la taille d'un segment est devenue suffisante, et que la distance entre le noyau vocalique et la première trame de ce segment fricatif traité n'est pas trop grande, conformément à la règle 1. Le début effectif du bloc fricatif correspond à la première trame de ce segment.
  • Règle 5 : la fin du bloc fricatif est déterminée par la dernière trame du bloc fricatif suivie d'un trou excédant la taille maximale autorisée pour un trou dans le noyau vocalique, et lorsque la taille du bloc fricatif ainsi déterminé n'est pas trop grande conformément à la règle 2.
The expertise presented here is similar to that described above in the case of voicing. The differences are mainly due to the taking into account of the new parameters which are the distance between the vowel nucleus and the fricative block, and the size of the fricative block.
  • Rule 1: the distance between the vocal nucleus and the first detected fricative frame must not be too large (about 15 frames maximum).
  • Rule 2: the size of a fricative block should not be too large. This equivalently means that the distance between the vocal nucleus and the last frame detected as fricative must not be too large (about 10 frames maximum).
  • Rule 3 the size of a hole in a fricative block must not exceed a maximum size (about 15 frames maximum). The total size of the core is the sum of the number of voiced frames and the size of the holes in this core.
  • Rule 4: the effective start of the fricative block is determined as soon as the size of a segment has become sufficient, and the distance between the vowel nucleus and the first frame of this treated fricative segment is not too great, in accordance with the rule 1. The actual start of the fricative block corresponds to the first frame of this segment.
  • Rule 5: the end of the fricative block is determined by the last frame of the fricative block followed by a hole exceeding the maximum size authorized for a hole in the vocal nucleus, and when the size of the fricative block thus determined is not too large in accordance with rule 2.

Déroulement de l'expertise.Conduct of the expertise.

Cette expertise est utilisée pour détecter les blocs fricatifs précédant le noyau vocalique ou le suivant. Le repère choisi dans cette expertise est donc le noyau vocalique.This expertise is used to detect the fricative blocks preceding or following the vowel nucleus. The benchmark chosen in this expertise is therefore the vocal core.

Dans le cas de la détection d'un bloc fricatif précédant le noyau vocalique, le traitement se fait en partant de la première trame de voisement, donc en "remontant" dans le temps. Aussi, lorsque l'on dit qu'une trame i suit une trame j (précédemment traitée), il faut entendre par là : vis-à-vis de cette première trame du noyau vocalique. Dans la réalité, la trame j est chronologiquement postérieure à la trame i. Ce que l'on dénomme début du bloc fricatif dans l'expertise décrite ci-après, est en fait, chronologiquement, la fin de ce bloc, et ce que l'on appelle fin du bloc fricatif, est en fait le début chronologique de ce bloc. La distance entre noyau vocalique et trame détectée comme fricative est la distance entre la première trame du bloc voisé et cette trame de fricative.In the case of the detection of a fricative block preceding the vowel nucleus, the processing is done starting from the first voicing frame, therefore by "going back" in time. Also, when we say that a frame i follows a frame j (previously treated), we have to understand by this: vis-à-vis this first frame of the vowel nucleus. In reality, the frame j is chronologically posterior to the frame i. What is called the start of the fricative block in the appraisal described below, is in fact, chronologically, the end of this block, and what is called the end of the fricative block, is in fact the chronological start of this block. The distance between the vocal nucleus and the frame detected as fricative is the distance between the first frame of the voiced block and this fricative frame.

Dans le cas de la détection d'un bloc fricatif situé après le noyau vocalique, le traitement se fait après la dernière trame voisée, et suit donc l'ordre chronologique naturel, et les termes de l'expertise sont parfaitement adéquats.In the case of the detection of a fricative block situated after the vocal nucleus, the processing is done after the last voiced frame, and therefore follows the natural chronological order, and the terms of the expertise are perfectly adequate.

Cas 1 : Tant qu'il n'y a pas de détection de fricative, on est dans un trou qui suit le noyau vocalique et précède le bloc fricatif.

  • - On incrémente la distance entre le segment voisé et le bloc fricatif. Cette distance ainsi calculée est un minorant de la distance entre le bloc fricatif et le noyau vocalique. Cette distance sera figée dès que la première trame de fricative sera détectée.
Case 1: As long as there is no fricative detection, we are in a hole which follows the vowel nucleus and precedes the fricative block.
  • - The distance between the voiced segment and the fricative block is increased. This distance thus calculated is a minus of the distance between the fricative block and the vowel nucleus. This distance will be fixed as soon as the first frame of fricative is detected.

Cas 2 : Première détection de fricative, On commence à traiter un segment fricatif.

  • - On initialise la taille du bloc fricatif à 1.
  • - On fige la distance entre le bloc voisé et le bloc fricatif.
Case 2: First detection of fricative, We begin to treat a fricative segment.
  • - The size of the fricative block is initialized to 1.
  • - The distance between the voiced block and the fricative block is frozen.

Si la distance entre le noyau vocalique et le bloc fricatif n'est pas trop grande (conformément à la règle 2).If the distance between the vocal nucleus and the fricative block is not too great (in accordance with rule 2).

Alors :

  • - Le début possible du bloc fricatif peut être la trame actuelle.
  • - La fin possible du bloc fricatif peut être la trame actuelle. Si la taille du bloc fricatif est suffisamment grande Et Si le début effectif du bloc fricatif n'est pas encore connu, alors :
  • - le début du noyau peut être confirmé.
So :
  • - The possible start of the fricative block can be the current frame.
  • - The possible end of the fricative block can be the current frame. If the size of the fricative block is sufficiently large And If the effective start of the fricative block is not yet known, then:
  • - the beginning of the nucleus can be confirmed.

On notera que ce Si (dans "Si la taille du bloc fricatif est suffisamment grande") est inutile si la taille minimale pour un bloc fricatif est supérieure à une trame, mais lorsqu'on cherche à détecter des occlusives en milieu bruité, celles-ci peuvent n'apparaître que sur la durée d'une seule trame. Il faut donc prendre alors la taille minimale d'un bloc fricatif égale à 1, et conserver cette condition.It will be noted that this If (in "If the size of the fricative block is sufficiently large") is useless if the minimum size for a fricative block is greater than a frame, but when one seeks to detect occlusive in noisy medium, these these can appear only for the duration of a single frame. We must therefore take the minimum size of a fricative block equal to 1, and keep this condition.

Si la distance entre le noyau vocalique et le bloc fricatif est trop grande (cf règle 2).If the distance between the vowel nucleus and the fricative block is too great (see rule 2).

Il n' y pas de bloc fricatif acceptable.

  • - On réinitialise pour le traitement de la prochaine élocution.
  • - On sort du traitement.
There is no acceptable fricative block.
  • - We reset for the processing of the next speech.
  • - We are leaving treatment.

Comme le test sur la distance entre noyau vocalique et bloc fricatif est réalisé dès la première détection de fricative, il ne sera pas renouvelé dans les cas suivants, d'autant plus que si cette distance est ici trop grande, la procédure est arrêtée pour cette élocution.As the test on the distance between the vocal nucleus and the fricative block is carried out as of the first detection of fricative, it will not be repeated in the following cases, especially since if this distance is too great here, the procedure is stopped for this speech.

Cas 3 : La trame actuelle et la précédente sont toutes les deux des trames de fricatives.Case 3: The current frame and the previous frame are both fricative frames.

On est en train de traiter une trame qui se situe en plein dans un segment fricatif acceptable (situé à une distance correcte du noyau vocalique conformément à la règle 1).

  • - La fin possible du bloc fricatif est la trame actuelle.
  • - On incrémente la taille du bloc fricatif.
We are in the process of processing a frame which is right in the middle of an acceptable fricative segment (located at a correct distance from the vowel core in accordance with rule 1).
  • - The possible end of the fricative block is the current frame.
  • - We increase the size of the fricative block.

Si la taille du bloc fricatif est suffisamment grande (cf règle 4).If the size of the fricative block is large enough (see rule 4).

Et Si la taille de ce bloc n'est pas trop grande (cf règle 2).And if the size of this block is not too large (see rule 2).

Et Si le début effectif du bloc fricatif n'est pas encore connu, alors :

  • - le début du noyau peut être confirmé comme étant le début de ce segment fricatif. Cas 4: La trame actuelle n'est pas une fricative contrairement à la trame précédente. On est en train de traiter la première trame d'un trou situé à l'intérieur du bloc fricatif.
  • - On incrémente la taille totale du trou (qui devient égale à 1). Cas 5 : Ni la trame actuelle ni la précédente ne sont des trames de fricatives. On est en train de traiter une trame située en plein dans un trou du bloc fricatif.
  • - On incrémente la taille totale du trou.
And if the actual start of the fricative block is not yet known, then:
  • - the beginning of the nucleus can be confirmed as the beginning of this fricative segment. Case 4: The current frame is not a fricative unlike the previous frame. We are currently processing the first frame of a hole located inside the fricative block.
  • - We increment the total size of the hole (which becomes equal to 1). Case 5: Neither the current nor the previous frame are fricative frames. We are currently processing a frame located right in a hole in the fricative block.
  • - We increase the total size of the hole.

Si la taille actuelle du bloc fricatif augmentée de la taille du trou est supérieure à la taille maximale autorisée pour un bloc fricatif (règle 2).If the current size of the fricative block increased by the size of the hole is greater than the maximum size authorized for a fricative block (rule 2).

Ou Si la taille du trou est trop grande.Or If the size of the hole is too large.

Si le début du bloc fricatif est connu,If the start of the fricative block is known,

alors :

  • - La fin du bloc fricatif est la dernière trame détectée comme fricative.
  • - On réinitialise toutes les données de manière à traiter la prochaine élocution.
so :
  • - The end of the fricative block is the last frame detected as fricative.
  • - We reset all the data in order to process the next speech.

Sinon :

  • - on réinitialise toutes les données, même celles qui ont été précédemment actualisées, car elles ne sont plus valides. On traite alors la prochaine trame.
If not :
  • - we reset all data, even those that were previously updated, because they are no longer valid. We then process the next frame.

Sinon, ce trou fait peut-être partie du bloc fricatif et on ne peut pas encore prendre de décision définitive. Cas 6 : La trame actuelle est une trame de fricative contrairement à la trame précédente. On traite la première trame d'un segment fricatif situé après un trou.Otherwise, this hole may be part of the fricative block and we cannot yet make a final decision. Case 6: The current frame is a fricative frame unlike the previous frame. The first frame of a fricative segment located after a hole is processed.

- On incrémente la taille du bloc fricatif.- We increase the size of the fricative block.

Si la taille actuelle du bloc fricatif augmentée de la taille du trou précédemment détecté est supérieure à la taille maximale autorisée pour un bloc fricatif, Ou Si la taille du trou est trop grande,If the current size of the fricative block increased by the size of the previously detected hole is greater than the maximum size authorized for a fricative block, Or If the size of the hole is too large,

alors : Si le début du bloc fricatif est connu, alors :

  • - La fin du bloc fricatif est alors la dernière trame détectée comme fricative.
  • - On réinitialise toutes les données de manière à traiter la prochaine élocution. Sinon,
  • - On réinitialise toutes les données, même celles qui ont été précédemment actualisées, car elles ne sont pas valides. On traite alors la prochaine trame.
then: If the start of the fricative block is known, then:
  • - The end of the fricative block is then the last frame detected as fricative.
  • - We reset all the data in order to process the next speech. If not,
  • - We reset all data, even those that were previously updated, because they are not valid. We then process the next frame.

Sinon, (le trou fait partie du segment fricatif).

  • - La taille du bloc fricatif est augmentée de la taille du trou
  • - La taille du trou est réinitialisée à O Si la taille du bloc fricatif est suffisamment grande Et Si cette taille n'est pas trop grande Et Si le début effectif du bloc fricatif n'est pas connu
Otherwise, (the hole is part of the fricative segment).
  • - The size of the fricative block is increased by the size of the hole
  • - The size of the hole is reset to O If the size of the fricative block is sufficiently large And If this size is not too large And If the effective start of the fricative block is not known

Alors :

  • - Le début du noyau peut être confirmé.
So :
  • - The beginning of the nucleus can be confirmed.

Simplification dans le cas d'un milieu peu bruité.Simplification in the case of a slightly noisy environment.

Dans le cas où l'utilisateur estime que le milieu est insuffisamment bruité pour nécessiter les traitements sophistiqués précédents, il est possible, non seulement de simplifier l'expertise présentée ci-dessus, mais même de l'éliminer. Dans ce cas, la détection de parole se réduira à une simple détection du noyau vocalique auquel on attache un intervalle de confiance exprimé en nombre de trames, ce qui se révèle suffisant pour améliorer les performances d'un algorithme de reconnaissance vocale. Il est ainsi possible de débuter la reconnaissance une dizaine, voire une quinzaine de trames avant le début du noyau vocalique, et de l'achever, une dizaine, voire une quinzaine de trames après le noyau vocalique.In the event that the user considers that the environment is insufficiently noisy to require the preceding sophisticated treatments, it is possible not only to simplify the expertise presented above, but even to eliminate it. In this case, speech detection will be reduced to a simple detection of the vocal nucleus to which a confidence interval expressed in number of frames is attached, which proves to be sufficient to improve the performance of a speech recognition algorithm. It is thus possible to start recognition ten, or even fifteen frames before the start of the vocal nucleus, and to complete it, ten, or even fifteen frames after the vocal nucleus.

Algorithmes de Traitement du Signal.Signal Processing Algorithms.

Les procédures et méthodes de calcul décrits ci-après sont les constituants utilisés par les algorithmes d'expertises et de gestion. De telles fonctions sont avantageusement implantées sur un processeur de signaux et le langage utilisé est de préférence l'Assembleur.The calculation procedures and methods described below are the constituents used by the expertise and management algorithms. Such functions are advantageously implemented on a signal processor and the language used is preferably the assembler.

Pour la détection de voisement en milieu peu bruité, une solution intéressante est le seuillage de l'A.M.D.F. (Average Magnitude Difference Function) dont la description peut être trouvée par exemple dans l'ouvrage "Traitement de la parole" de R. BOITE/M. KUNT paru aux éditions Presses Polytechniques Romandes.For the detection of voices in low noise environments, an interesting solution is the thresholding of the A.M.D.F. (Average Magnitude Difference Function), the description of which can be found, for example, in the book "Speech processing" by R. BOITE / M. KUNT published by Presses Polytechniques Romandes.

L'AMDF est la fonction D(k) = En 1 x(n+k) - x(n) 1. Cette fonction est bornée par la fonction de corrélation, selon :

  • D(k) ≦ 2(Γx(0) - Γx(k))½. Cette fonction présente donc des "pics" vers le bas, et doit donc être seuillée comme la fonction de corrélation.
The AMDF is the function D (k) = In 1 x (n + k) - x (n) 1. This function is bounded by the correlation function, according to:
  • D (k) ≦ 2 (Γ x (0) - Γ x (k)) ½ . This function therefore has downward "peaks", and must therefore be thresholded like the correlation function.

D'autres méthodes basées sur le calcul du spectre du signal sont envisageables, pour des résultats tout aussi acceptables (article "traitement de la parole" précité). Toutefois, il est intéressant d'utiliser la fonction AMDF, pour de simples questions de coûts de calcul.Other methods based on the calculation of the signal spectrum can be envisaged, for equally acceptable results (article "speech processing" mentioned above). However, it is interesting to use the AMDF function, for simple questions of calculation costs.

En milieu bruité, la fonction AMDF est une distance entre le signal et sa forme retardée. Cependant, cette distance est une distance qui n'admet pas de produit scalaire associé, et qui ne permet donc pas d'introduire la notion de projection orthogonale. Or, dans un milieu bruité, la projection orthogonale du bruit peut être nulle, si l'axe de projection est bien choisi. L'AMDF n'est donc pas une solution adéquate en milieu bruité.In noisy environments, the AMDF function is a distance between the signal and its delayed form. However, this distance is a distance which does not admit an associated scalar product, and which therefore does not allow the concept of orthogonal projection to be introduced. However, in a noisy environment, the orthogonal projection of the noise can be zero, if the axis of projection is well chosen. AMDF is therefore not an adequate solution in noisy environments.

Le procédé de l'invention est alors basé sur la corrélation, car la corrélation est un produit scalaire et effectue une projection orthogonale du signal sur sa forme retardée. Cette méthode est, par là-même, plus robuste au bruit que d'autres techniques, telles l'AMDF. En effet, supposons que le signal observé soit x(n) = s(n) + b(n) où b(n) est un bruit blanc indépendant du signal utile s(n). La fonction de corrélation est par définition :

  • rx(k) = E[x(n)x(n-k)], donc rx(k) = E[s(n)s(n-k)] + E[b(n)b(n-k)] = rs(k) + rb(k) Comme le bruit est blanc : rx(O) = rs(O) + rb(O) et rx(k) = rs(k) pour k ≠0 .
The method of the invention is then based on correlation, because the correlation is a scalar product and performs an orthogonal projection of the signal on its delayed form. This method is therefore more robust to noise than other techniques, such as AMDF. Indeed, suppose that the observed signal is x (n) = s (n) + b (n) where b (n) is white noise independent of the useful signal s (n). The correlation function is by definition:
  • r x (k) = E [x (n) x (nk)], so r x (k) = E [s (n) s (nk)] + E [b (n) b (nk)] = r s (k) + r b (k) As the noise is white: r x (O) = r s ( O ) + r b (O) and r x (k) = r s (k) for k ≠ 0.

La blancheur du bruit en pratique n'est pas une hypothèse valide. Cependant, le résultat reste une bonne approximation dès que la fonction de corrélation du bruit décroît rapidement, et pour k suffisamment grand, comme dans le cas d'un bruit rose (bruit blanc filtré par un passe-bande), où la fonction de corrélation est un sinus cardinal, donc pratiquement nulle dès que k est suffisamment grand.Noise whiteness in practice is not a valid assumption. However, the result remains good approximation as soon as the noise correlation function decreases rapidly, and for k sufficiently large, as in the case of pink noise (white noise filtered by a bandpass), where the correlation function is a cardinal sine, therefore practically zero as soon as k is sufficiently large.

On va décrire maintenant une procédure de calcul de pitch et de détection de pitch applicable aux milieux bruités comme aux milieux peu bruités.We will now describe a pitch calculation and pitch detection procedure applicable to noisy environments as well as to noisy environments.

Soit x(n) le signal traité où n e { 0, ..., N-1 }.Let x (n) be the processed signal where n e {0, ..., N-1}.

Dans le cas de l'AMDF, r(k) = D(k) = En |x(n+k) - x(n).In the case of AMDF, r (k) = D (k) = En | x (n + k) - x (n).

Dans le cas de la corrélation, l'espérance mathématique permettant d'accéder à la fonction de corrélation ne peut qu'être estimée, de sorte que la fonction r(k) est : r(k) = K Σ0≦n≦N-1 x(n)x(n-k) où K est une constante de calibration.In the case of correlation, the mathematical expectation allowing access to the correlation function can only be estimated, so that the function r (k) is: r (k) = K Σ 0 ≦ n ≦ N -1 x (n) x (nk) where K is a calibration constant.

Dans les deux cas, on obtient théoriquement la valeur du pitch en procédant comme suit : r(k) est maximale en k = 0. Si le second maximum de r(k) est obtenu en k = ko, alors la valeur du voisement est Fo = Fe/k0 où Fe est la fréquence d'échantillonnage.In both cases, we theoretically obtain the value of the pitch by proceeding as follows: r (k) is maximum in k = 0. If the second maximum of r (k) is obtained in k = k o , then the value of the voicing is F o = F e / k 0 where F e is the sampling frequency.

Cependant, cette description théorique doit être révisée en pratique.However, this theoretical description must be revised in practice.

En effet, si le signal n'est connu que sur les échantillons 0 à N-1, alors x(n-k) est pris nul tant que n n'est pas supérieur à k. Il n'y aura donc pas le même nombre de points de calcul d'une valeur k à l'autre. Par exemple, si la fourchette du pitch est prise égale à [100 Hz, 333 Hz], et ce, pour une fréquence d'échantillonnage de 10 KHz, l'indice k1 correspondant à 100 Hz vaut:

  • k1 = Fe/F0 = 10000/100 = 100 et celui correspondant à 333 Hz vaut k2 = Fe/F0 = 10000/333 = 30.
Indeed, if the signal is known only on samples 0 to N-1, then x (nk) is taken zero as long as n is not greater than k. There will therefore not be the same number of calculation points from one value k to the other. For example, if the pitch range is taken equal to [100 Hz, 333 Hz], and this, for a sampling frequency of 10 KHz, the index k 1 corresponding to 100 Hz is equal to:
  • k 1 = F e / F 0 = 10000/100 = 100 and the one corresponding to 333 Hz is k 2 = F e / F 0 = 10000/333 = 30.

Le calcul du pitch pour cette fourchette se fera donc de k = 30 à k = 100.The pitch calculation for this range will therefore be from k = 30 to k = 100.

Si on dispose par exemple de 256 échantillons (2 trames de 12,8 ms échantillonnées à 10 KHz), le calcul de r(30) se fait de n = 30 à n = 128, soit sur 99 points et celui de r(100) de n = 100 à 128, soit sur 29 points.If for example there are 256 samples (2 frames of 12.8 ms sampled at 10 KHz), the calculation of r (30) is done from n = 30 to n = 128, i.e. on 99 points and that of r (100 ) from n = 100 to 128, i.e. on 29 points.

Les calculs ne sont donc pas homogènes entre eux et n'ont pas la même validité.The calculations are therefore not homogeneous between them and do not have the same validity.

Pour que le calcul soit correct, il faut que la fenêtre d'observation soit toujours la même quel que soit k. De sorte que si n-k est inférieure à 0, il faut avoir conservé en mémoire les valeurs passées du signal x(n), de manière à calculer la fonction r(k)sur autant de points, quel que soit k. La valeur de la constante K n'importe plus.For the calculation to be correct, the observation window must always be the same regardless of k. So that if n-k is less than 0, it is necessary to have stored in memory the past values of the signal x (n), so as to calculate the function r (k) on as many points, whatever k. The value of the constant K no longer matters.

Ceci n'est préjudiciable au calcul du pitch que sur la première trame réellement voisée, puisque, dans ce cas, les échantillons utilisés pour le calcul sont issus d'une trame non voisée, et ne sont donc pas représentatifs du signal à traiter. Cependant, dès la troisième trame voisée consécutive, lorsqu'on travaille, par exemple, par trames de 128 points échantillonnés à 10 KHz, le calcul du pitch sera valide. Ceci suppose, de manière générale, qu'un voisement dure au minimum 3x12,8 ms, ce qui est une hypothèse réaliste. Cette hypothèse devra être prise en compte lors de l'expertise, et la durée minimale pour valider un segment voisé sera de 3x12,8 ms dans cette même expertise.This is detrimental to the calculation of the pitch only on the first frame actually voiced, since, in this case, the samples used for the calculation come from an unvoiced frame, and are therefore not representative of the signal to be processed. However, from the third consecutive voiced frame, when working, for example, in frames of 128 points sampled at 10 KHz, the pitch calculation will be valid. This supposes, in general, that a voicing lasts at least 3x12.8 ms, which is a realistic assumption. This hypothesis must be taken into account during the appraisal, and the minimum duration to validate a voiced segment will be 3x12.8 ms in this same appraisal.

Cette fonction r(k) étant calculée, il s'agit ensuite de la seuiller. Le seuil est choisi expérimentalement, selon la dynamique des signaux traités. Ainsi, dans un exemple d'application, où la quantification se fait sur 16 bits, où la dynamique des échantillons n'excède pas ± 10000, et où les calculs se font pour N = 128 (Fréquence d'échantillonnage de 10 KHz), on a choisi Seuil = 750000. Mais rappelons que ces valeurs ne sont données qu'à titre d'exemple pour des applications particulières, et doivent être modifiées pour d'autres applications. En tout cas, cela ne change rien à la méthodologie décrite ci-dessus.This function r (k) being calculated, it is then a question of thresholding it. The threshold is chosen experimentally, according to the dynamics of the signals processed. Thus, in an example of application, where the quantization is done on 16 bits, where the dynamics of the samples does not exceed ± 10000, and where the calculations are done for N = 128 (Sampling frequency of 10 KHz), we have chosen Threshold = 750000. But remember that these values are only given as an example for particular applications, and must be modified for other applications. In any case, this does not change the methodology described above.

On va maintenant exposer le procédé de détection des trames de bruit.We will now describe the method of detecting noise frames.

En-dehors du noyau vocalique, les trames de signal que l'on peut rencontrer, sont de trois types :

  • 1) bruit seul
  • 2) bruit + fricative non voisée
  • 3) bruit + respiration.
Apart from the vocal nucleus, the signal frames that can be encountered are of three types:
  • 1) noise alone
  • 2) noise + voiceless fricative
  • 3) noise + breathing.

L'algorithme de détection vise à détecter le début et la fin de parole à partir d'une version blanchie du signal, tandis que l'algorithme de débruitage nécessite la connaissance du spectre moyen de bruit. Pour construire les modèles de bruit qui vont permettre de blanchir le signal de parole en vue de la détection des sons non voisés comme décrit ci-dessous, et pour débruiter le signal de parole, il est évident qu'il faut détecter les trames de bruit, et les confirmer en tant que telles. Cette recherche des trames de bruit se fait parmi un nombre de trames Ni défini par l'utilisateur une fois pour toutes pour son application (par exemple pour Ni = 40), ces Ni trames étant situées avant le noyau vocalique.The detection algorithm aims to detect the start and end of speech from a whitened version of the signal, while the denoising algorithm requires knowledge of the average noise spectrum. To build the noise models which will make it possible to whiten the speech signal for the detection of unvoiced sounds as described below, and to denoise the speech signal, it is obvious that it is necessary to detect the noise frames , and confirm them as such. This search for noise frames is done among a number of Ni frames defined by the user once and for all for its application (for example for Ni = 40), these Ni frames being located before the vocal nucleus.

Rappelons que cet algorithme permet la mise en oeuvre de modèles de bruit, et n'est donc pas utilisé lorsque l'utilisateur juge le niveau de bruit insuffisant.Recall that this algorithm allows the implementation of noise models, and is therefore not used when the user judges the noise level insufficient.

On va d'abord définir les variables aléatoires gaussiennes "positives":

  • Une variable aléatoire X sera dite positive lorsque Pr{ X < 0 } «1 .
  • Soit Xo la variable centrée normalisée associée à X. On a :
  • Pr { X < 0 } = Pr { Xo <-m/σ} où m = E[X] et σ2 = E[(X-m)2].
We will first define the "positive" Gaussian random variables:
  • A random variable X will be said to be positive when Pr {X <0} "1.
  • Let X o be the normalized centered variable associated with X. We have:
  • Pr {X <0} = Pr {X o <-m / σ} where m = E [X] and σ 2 = E [(Xm) 2 ].

Dès que m/σ est suffisamment grand, X peut être considérée comme positive.As soon as m / σ is large enough, X can be considered positive.

Lorsque X est gaussienne, on désigne par F(x) la fonction de répartition de la loi normale, et on a : Pr {X < 0 } = F(-m/σ) pour X ∈ N(m,σ2)When X is Gaussian, we denote by F (x) the distribution function of the normal distribution, and we have: Pr {X <0} = F (-m / σ) for X ∈ N (m, σ 2 )

Une propriété essentielle immédiate est que la somme X de N variables gaussiennes positives indépendantes Xi ∈ N (mi ; σi 2) reste une variable gaussienne positive :

Figure imgb0002

Résultat fondamental :

  • Si X = X1/X2 où X1 et X2 sont toutes deux des variables aléatoires gaussiennes, indépendantes, telles que X1 ∈ N(m1 ; σ1 2) et X2 ∈ N( m2 ; σ2 2), on pose m = m1/m2, α1 = m11, a2 = m22.
An immediate essential property is that the sum X of N independent positive Gaussian variables X i ∈ N (m i ; σ i 2 ) remains a positive Gaussian variable:
Figure imgb0002

Fundamental result:
  • If X = X 1 / X 2 where X 1 and X 2 are both independent Gaussian random variables, such as X 1 ∈ N (m 1 ; σ 1 2 ) and X 2 ∈ N (m 2 ; σ 2 2 ), we set m = m 1 / m 2 , α 1 = m 1 / σ 1 , a 2 = m 2 / σ 2 .

Lorsque α1 et α2 sont suffisamment grands pour pouvoir supposer X1 et X2 positives, la densité de probabilité fx(x) de X = X1/X2 peut alors être approchée par :

Figure imgb0003
où U(x) est la fonction indicatrice de R+ :

  • U(x) = 1 si x ≦ 0 et U(x)=0 si x < 0
  • Dans toute la suite, on posera :
    Figure imgb0004

    de sorte que : fx(x) = f(x,m |α12).U(x) Soit
    Figure imgb0005
    On pose P(x,y |α,β) = F[h(x,y |α,β)]. On a alors :
When α 1 and α 2 are large enough to assume X 1 and X 2 positive, the probability density f x (x) of X = X 1 / X 2 can then be approximated by:
Figure imgb0003
where U (x) is the indicator function of R + :
  • U (x) = 1 if x ≦ 0 and U (x) = 0 if x <0
  • In the following, we will ask:
    Figure imgb0004

    so that: f x (x) = f (x, m | α 1 , α 2 ) .U (x) Let
    Figure imgb0005
    We set P (x, y | α, β) = F [h (x, y | α, β)]. We then have:

Pr {X < x} = P(x,m |α12) f(x,y |α,β) = ∂P(x,y |α,β)/∂x et f(x,y |α12) = ∂P(x,m |α12)/∂x Cas particulier : a = β. On posera: fα(x,y) = f(x,y |α,β ), hα(x,y) = h(x,y |α,β) et Pα(x,y) = P(x,y |α,β)Pr {X <x} = P (x, m | α 1 , α 2 ) f (x, y | α, β) = ∂P (x, y | α, β) / ∂x and f (x, y | α 1 , α 2 ) = ∂P (x, m | α 1 , α 2 ) / ∂x Special case: a = β. We will pose: f α (x, y) = f (x, y | α, β), h α (x, y) = h (x, y | α, β) and P α (x, y) = P (x, y | α, β)

On va décrire ci-dessous quelques modèles de base de variables gaussiennes "positives" utilisables dans la suite.

  • (1) Signal à énergie déterministe : Soient les échantillons x(0),...x(N-1) d'un signal quelconque, dont l'énergie est déterministe et constante, ou approximée par une énergie déterministe ou constante. On a donc U = Σ0≦n≦N-1x(n)2∈N(Nµ, 0) où µ = (1/N)Σ0≦n≦N-1x(n)2
We will describe below some basic models of "positive" Gaussian variables usable in the following.
  • (1) Signal with deterministic energy: Let the samples x (0), ... x (N-1) of any signal, whose energy is deterministic and constant, or approximated by a deterministic or constant energy. We therefore have U = Σ 0 ≦ n ≦ N-1 x (n) 2 ∈N (Nµ, 0) where µ = (1 / N) Σ 0 ≦ n ≦ N-1 x (n) 2

Prenons comme exemple le signal x(n) =Acos(n+θ) où θ est équiréparti entre [0,2π]. Pour N suffisamment grand, on a :

  • (1/N) E0≦n≦N-1x(n)2# E[x(n)2] =A2/2. Pour N assez grand, U peut être assimilé à NA2/2 et donc à une énergie constante.
  • (2) Processus Blanc Gaussien : Soit un processus blanc et gaussien x(n) tel que σx 2 = E[x(n)2] . Pour N suffisamment grand, U = Σ0≦n≦N-1x(n)2 ∈ N(Nσx 2 ; 2Nσx 4). Le paramètre a est a = (N/2)1/2
  • (3) Processus Gaussien Bande Etroite : Le bruit x(n) est issu de l'échantillonnage du processus x(t), lui-même issu du filtrage d'un bruit blanc gaussien b(t) par un filtre passe bande h(t) : x(t) = (h*b)(t), en supposant que la fonction de transfert du filtre h(t) est :
Let us take as an example the signal x (n) = Acos (n + θ) where θ is equidistributed between [0.2π]. For N sufficiently large, we have:
  • (1 / N) E 0 ≦ n ≦ N-1 x (n) # 2 E [x (n) 2] = A 2/2. For large enough N, U can be likened to NA 2/2 and thus a constant energy.
  • (2) Gaussian White Process: Let be a white and Gaussian process x (n) such that σ x 2 = E [x (n) 2 ]. For N sufficiently large, U = Σ 0 ≦ n ≦ N-1 x (n) 2 ∈ N (Nσ x 2 ; 2Nσ x 4 ). Parameter a is a = (N / 2) 1/2
  • (3) Narrow Band Gaussian Process: The noise x (n) comes from the sampling of the process x (t), itself resulting from the filtering of a white Gaussian noise b (t) by a band pass filter h ( t): x (t) = (h * b) (t), assuming that the transfer function of the filter h (t) is:

H(f) = U[-(f0-B/2,-f0+B/2](f) + U[f0-B/2,f0+B/2](f), où U désigne la fonction caractéristique de l'intervalle en indice et fo la fréquence centrale du filtre.H (f) = U [- (f0-B / 2, -f0 + B / 2] (f) + U [f0-B / 2, f0 + B / 2] (f), where U denotes the characteristic function of the interval in index and f o the central frequency of the filter.

On a donc U ∈ N( Nσx 2,2σx 4Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j)2) avec gf0,B,Te(k) = cos(2πtkf0Te)sinc(πkBTe) Le paramètre a et a = N/[2Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j)2]½ - Sous-échantillonnage d'un processus gaussien : Ce modèle est plus pratique que théorique. Si la fonction de corrélation est inconnue, on sait cependant que : lim k→+∞ Γx(k) = 0. Donc, pour k assez grand tel que k > ko, la fonction de corrélation tend vers 0. Aussi, au lieu de traiter la suite d'échantillons x(0)...x(N-1 ), peut-on traiter la sous-suite x(0), x(ko),x(2ko),..., et l'énergie associée à cette suite reste une variable aléatoire positive gaussienne, à condition qu'il reste dans cette sous-suite suffisamment de points pour pouvoir appliquer les approximations dues au théorème central-limite. Compatibilité entre énergies.We therefore have U ∈ N (Nσ x 2 , 2σ x 4 Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (ij) 2 ) with g f0, B, Te (k ) = cos (2πtkf 0 T e ) sin c (πkBT e ) The parameter a and a = N / [2Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (ij) 2 ] ½ - Subsampling of a Gaussian process: This model is more practical than theoretical. If the correlation function is unknown, we know however that: lim k → + ∞ Γ x (k) = 0. Therefore, for k large enough such that k> k o , the correlation function tends to 0. Also, at instead of processing the sequence of samples x (0) ... x (N-1), can we process the subsequence x (0), x (k o ), x (2k o ), ... , and the energy associated with this sequence remains a positive Gaussian random variable, provided that there remain in this subsequence enough points to be able to apply the approximations due to the central limit theorem. Compatibility between energies.

Soient Ci = N(m12) et C2 = N(m22 2) On pose : m = m1/m2, α1 = m11 et α2 = m22. α1 et a2 sont suffisamment grands pour que les variables aléatoires de Ci et C2 puissent être considérées comme des variables aléatoires positives.Let Ci = N (m 1 , σ 2 ) and C 2 = N (m 2 , σ 2 2 ) We set: m = m 1 / m 2 , α 1 = m 1 / σ 1 and α 2 = m 2 / σ 2 . α 1 and a 2 are large enough that the random variables of Ci and C 2 can be considered as positive random variables.

Soit (U,V) où (U,V) appartient à (C1UC2)X(C1UC2).Let (U, V) where (U, V) belong to (C 1 CU 2 ) X (C 1 CU 2 ).

Comme précédemment, U et V sont supposées indépendantes.As before, U and V are assumed to be independent.

On pose U ≡ V ⇔ (U,V) ∈ (C1XC1)U(C2UC2).We set U ≡ V ⇔ (U, V) ∈ (C 1 XC 1 ) U (C 2 UC 2 ).

Soit (u,v) une valeur du couple (U,V). Si x = u/v, x est une valeur de la variable aléatoire X = U/V.Let (u, v) be a value of the couple (U, V). If x = u / v, x is a value of the random variable X = U / V.

Soit s >1. 1/s < x <s ⇔ On décide que U ≡ V est vrai, ce qui sera la décision D = D1 x < 1/s ou x > s ⇔ On décide que U ≡ V est faux, ce qui sera la décision D = D2 Cette règle de décision est donc associée à 2 hypothèses :Let s> 1. 1 / s <x <s ⇔ We decide that U ≡ V is true, which will be the decision D = D 1 x <1 / s or x> s ⇔ We decide that U ≡ V is false, which will be the decision D = D 2 This decision rule is therefore associated with 2 hypotheses:

H1⇔U≡V est vrai, H2⇔U≡V est faux. On posera 1 = [1/s,s].H 1 ⇔U≡V is true, H 2 ⇔U≡V is false. We will set 1 = [1 / s, s].

La règle de détection s'exprime encore selon : x ∈ I⇔D=D1, x ∈ R-I ⇔ D=D2 On dira que u et v sont compatibles lorsque la décision D = D1 sera prise.The detection rule is also expressed according to: x ∈ I⇔D = D 1 , x ∈ RI ⇔ D = D 2 We will say that u and v are compatible when the decision D = D 1 is taken.

Cette règle de décision admet une probabilité de décision correcte, dont l'expression dépendra en fait de la valeur des probabilités Pr{H1} et Pr{H2}. Or, ces probabilités ne sont en général pas connues en pratique.This decision rule admits a correct decision probability, the expression of which will in fact depend on the value of the probabilities Pr {H 1 } and Pr {H 2 }. However, these probabilities are generally not known in practice.

On préfère alors une approche du type Neyman-Pearson, puisque la règle de décision se réduit à deux hypothèses, en cherchant à assurer une certaine valeur fixée a priori pour la probabilité de fausse alarme qui est :

Figure imgb0006
We therefore prefer a Neyman-Pearson type approach, since the decision rule is reduced to two hypotheses, seeking to ensure a certain value fixed a priori for the probability of false alarm which is:
Figure imgb0006

Le choix des modèles des signaux et des bruits détermine α1 et a2. Nous allons voir qu'alors m apparaît comme homogène à un rapport signal sur bruit qui sera fixé de manière heuristique. Le seuil est alors fixé de manière à assurer une certaine valeur de Pfa . Cas particulier : α1 = α2 = α. Il vient alors : Pfa = Pα(s,m) - Pα(1/s,m) Compatibilité d'un ensemble de valeurs :

  • Soit { u1,..., un} un ensemble de valeurs de variables aléatoires gaussiennes positives. On dira que ces valeurs sont compatibles entre elles, si et seulement si les ui sont compatibles 2 à 2.
The choice of signal and noise models determines α 1 and a 2 . We will see that then m appears to be homogeneous at a signal-to-noise ratio which will be fixed heuristically. The threshold is then fixed so as to ensure a certain value of P fa . Special case: α 1 = α 2 = α. It then comes: P fa = P α (s, m) - P α (1 / s, m) Compatibility of a set of values:
  • Let {u 1 , ..., u n } be a set of values of positive Gaussian random variables. We will say that these values are compatible with each other, if and only if the u i are compatible 2 to 2.

Modèles du signal et du bruit utilisés par le procédé de l'invention.Signal and noise models used by the method of the invention.

Afin d'appliquer les procédures correspondant aux rappels théoriques précédents, il faut fixer un modèle du bruit et du signal. Nous utiliserons l'exemple suivant. Ce modèle est régi par les hypothèses suivantes : Hypothèse 1 : Nous supposons ne pas connaître le signal utile dans sa forme, mais nous ferons l'hypothèse suivante : V la valeur s(0),...,s(N-1) de s(n), l'énergie S = (1/N) Σ0≦n≦N-1 s(n)2 est bornée par µs 2, et ce, dès que N est suffisamment grand, de sorte que :

Figure imgb0007
Hypothèse 2 : Le signal utile est perturbé par un bruit additif noté x(n), que l'on suppose gaussien et en bande étroite. On suppose que le processus x(n) traité est obtenu parfiltrage bande étroite d'un bruit blanc gaussien. La fonction de corrélation d'un tel processus est alors :
Figure imgb0008
In order to apply the procedures corresponding to the previous theoretical reminders, it is necessary to fix a noise and signal model. We will use the following example. This model is governed by the following hypotheses: Hypothesis 1: We suppose not to know the useful signal in its form, but we will make the following hypothesis: V the value s (0), ..., s (N-1) of s (n), the energy S = (1 / N) Σ 0 ≦ n ≦ N - 1 s (n) 2 is bounded by µ s 2 , as soon as N is sufficiently large, so that:
Figure imgb0007
Hypothesis 2: The useful signal is disturbed by an additive noise denoted x (n), which is assumed to be Gaussian and in narrow band. We suppose that the process x (n) processed is obtained by narrow band filtering of a white Gaussian noise. The correlation function of such a process is then:
Figure imgb0008

Si on considère N échantillons x(n) de ce bruit, et qu'on pose : gfO,B,Te(k) = cos(2πkf0Te)sinc(πkBTe), on a:

Figure imgb0009
x 4Σ0≦i≦N1,0jN-1gf0,B,Te(i-j)2) Le paramètre a de cette variable est a = N/[2Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j)2]½ Hypothèse 3 : Les signaux s(n) et x(n) sont alors supposés indépendants. On suppose que l'indépendance entre s(n) et x(n) implique la décorrélation au sens temporel du terme, c'est-à-dire que l'on peut écrire :If we consider N samples x (n) of this noise, and we set: g fO , B , Te (k) = cos (2πkf 0 T e ) sin c (πkBT e ), we have:
Figure imgb0009
x 4 Σ 0 ≦ i ≦ N1,0jN-1 g f0, B, Te (ij) 2 ) The parameter a of this variable is a = N / [2Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N -1 g f0, B, Te (ij) 2 ] ½ Hypothesis 3: The signals s (n) and x (n) are then assumed to be independent. We suppose that the independence between s (n) and x (n) implies decorrelation in the temporal sense of the term, that is to say that we can write:

Figure imgb0010
Figure imgb0010

Ce coefficient de corrélation n'est que l'expression dans le domaine temporel du coefficient de corrélation spatial défini par :

  • E[s(n)x(n)]/(E[s(n)2]E[x(n)2])1/2 lorsque les processus sont ergodiques.
  • Soit u(n) = s(n) + x(n) le signal total, et U = Σ0≦n≦N-1-u(n)2.
  • On peut alors approximer U par : U = Σ0≦n≦N-1s(n)2 + Σ0≦n≦N-1x(n)2
  • Comme on a : Σ0≦n≦N-1s(n)2 ≧ µs 2,
  • on aura : U ≧ Nµs 2 + Σ0≦n≦N-1x(n)2.
  • Hypothèse 4 : Comme nous supposons que le signal présente une énergie moyenne bornée, nous supposerons qu'un algorithme capable de détecter une énergie µs 2, sera capable de détecter tout signal d'énergie supérieure. Compte tenu des hypothèses précédentes, on définit la classe Ci comme étant la classe des énergies lorsque le signal utile est présent. Selon l'hypothèse 3, U ≧ Nµs 2 + Σ0≦n≦N-1x(n)2, et selon l'hypothèse 4, si on détecte l'énergie Nµs 2 + Σ0≦n≦N-1x(n)2, on saura détecter aussi l'énergie totale U.
This correlation coefficient is only the expression in the time domain of the spatial correlation coefficient defined by:
  • E [s (n) x (n)] / (E [s (n) 2 ] E [x (n) 2 ]) 1/2 when the processes are ergodic.
  • Let u (n) = s (n) + x (n) be the total signal, and U = Σ 0 ≦ n ≦ N-1- u (n) 2.
  • We can then approximate U by: U = Σ 0 ≦ n ≦ N-1 s (n) 2 + Σ 0 ≦ n ≦ N-1 x (n) 2
  • As we have: Σ 0 ≦ n ≦ N-1 s (n) 2 ≧ µ s 2 ,
  • we will have: U ≧ Nµ s 2 + Σ 0 ≦ n ≦ N-1 x (n) 2 .
  • Hypothesis 4: As we assume that the signal has a bounded average energy, we will assume that an algorithm capable of detecting an energy µ s 2 , will be able to detect any signal of higher energy. Taking into account the preceding hypotheses, the class Ci is defined as being the class of energies when the useful signal is present. According to hypothesis 3, U ≧ Nµ s 2 + Σ 0 ≦ n ≦ N-1 x (n) 2 , and according to hypothesis 4, if we detect the energy Nµ s 2 + Σ 0 ≦ n ≦ N- 1 x (n) 2 , we will also be able to detect the total energy U.

D'après l'hypothèse 2,According to hypothesis 2,

Figure imgb0011
Figure imgb0012
Donc C1 = N(Nµs 2+Nσx 2, 2σx 4 Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j)2) et le paramètre a de cette variable vaut α1 = N(1+r)/[2Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i,j)2]½, où r = µs 2x 2 représente le rapport signal à bruit. C2 est la classe des énergies correspondant au bruit seul. D'après l'hypothèse 2, si les échantillons de bruit sont x(0),...,x(M-1), il vient V = (1/M)Σ0≦n≦M-1x(n)2 ∈ N (Mσx 2, 2σx 4 Σ0≦i≦M-1,0≦j≦M-1gf0,B,Te(i-j)2). Le paramètre a de cette variable est :
Figure imgb0013
On a donc : C1 = N(m11 2) et C2 = N(m22 2), avec: m1 =s 2 + Nσx 2, m2 = Max 2, σ1 = σx 2[2Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j) et σ2 = σx 2[2Σ0≦i≦M-1,0≦j≦M-1gf0,B,Te(i-j)]2]½. D'où m = m1/m2 = (N/M)(1+r), α1 - m11 =N(1-r)/2Σ0≦i≦N-1,0≦j≦N-1gf0,B,Te(i-j)2]½ et σ2 = m22 = M/[2Σ0≦i≦M-1,0≦j≦M- l9fp g,Te(I-J)2J1/2. On remarquera que : - si le bruit d'origine est blanc et gaussien, les hypothèses précédentes restent encore valables. Il suffit de remarquer qu'alors gf0,B,Te(k) = oo(k). Les formules précédentes s'en trouvent simplifiées :
Figure imgb0014
avec :
Figure imgb0015
D'où
Figure imgb0016
Figure imgb0017
Figure imgb0018
Figure imgb0019
Il est possible de tendre vers un tel modèle en sous-échantillonnant le bruit, et ne prenant du bruit qu'un échantillon sur k0 échantillons où k0 est tel que : V k > ko, rx(k) → 0. - la notion de compatibilité entre énergies ne se met en place que conditionnellement à la connaissance a priori du paramètre m, donc du rapport signal à bruit r. Celui-ci peut être fixé de manière heuristique à partir de mesures préliminaires des rapports signaux à bruit que présentent les signaux que l'on ne veut pas détecter par l'algorithme de confirmation de bruit, ou fixé de manière péremptoire. La seconde solution est utilisée de préférence. En effet, l'objet de ce traitement vise à mettre en évidence, non pas toutes les trames de bruit, mais seulement quelques unes présentant une forte probabilité de n'être constituées que de bruit. On a donc tout intérêt à ce que l'algorithme soit très sélectif. Cette sélectivité s'obtient en jouant sur la valeur de la probabilité de fausse alarme que l'on décide d'assurer et qui sera donc choisie très faible (la sélectivité maximale étant établie pour PFA = 0, ce qui conduit à un seuil nul et à aucune détection de bruit, ce qui est le cas extrême et absurde). Mais cette sélectivité s'obtient aussi par le choix de r : choisi trop grand, on risque de considérer des énergies comme représentatives du bruit, alors que ce sont des énergies de respiration, par exemple, présentant un rapport signal à bruit inférieur à r. A contrario, choisir un r trop petit peut limiter la PFA accessible, qui serait alors trop forte pour être acceptable.
Figure imgb0011
Figure imgb0012
So C 1 = N (Nµ s 2 + Nσ x 2 , 2σ x 4 Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (ij) 2 ) and the parameter a of this variable is worth α 1 = N (1 + r) / [2Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (i, j) 2 ] ½ , where r = µ s 2 / σ x 2 represents the signal to noise ratio. C 2 is the class of energies corresponding to noise alone. According to hypothesis 2, if the noise samples are x (0), ..., x (M-1), it comes V = (1 / M) Σ 0 ≦ n ≦ M-1 x (n ) 2 ∈ N (Mσ x 2 , 2σ x 4 Σ 0 ≦ i ≦ M-1.0 ≦ j ≦ M-1 g f0, B, Te (ij) 2 ). The parameter a of this variable is:
Figure imgb0013
We therefore have: C 1 = N (m 1 , σ 1 2 ) and C 2 = N (m 2 , σ 2 2 ), with: m 1 =s 2 + Nσ x 2 , m 2 = Ma x 2 , σ 1 = σ x 2 [2Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (ij) and σ 2 = σ x 2 [2Σ 0 ≦ i ≦ M-1, 0 ≦ j ≦ M-1 g f0, B, Te (ij)] 2 ] ½ . Hence m = m 1 / m 2 = (N / M) (1 + r), α 1 - m 1 / σ 1 = N (1-r) / 2Σ 0 ≦ i ≦ N-1.0 ≦ j ≦ N-1 g f0, B, Te (ij) 2 ] ½ and σ 2 = m 2 / σ 2 = M / [2Σ 0 ≦ i ≦ M-1.0 ≦ j ≦ M - l9fp g, Te (IJ ) 2J1 / 2. Note that: - if the original noise is white and Gaussian, the previous assumptions are still valid. It suffices to note that then g f0, B, Te (k) = o o (k). The previous formulas are simplified:
Figure imgb0014
with:
Figure imgb0015
From where
Figure imgb0016
Figure imgb0017
Figure imgb0018
Figure imgb0019
It is possible to tend towards such a model by subsampling the noise, and only taking noise from one sample out of k 0 samples where k 0 is such that: V k> k o , r x (k) → 0. - the concept of compatibility between energies is set up only conditionally on a priori knowledge of the parameter m, therefore of the signal to noise ratio r. This can be fixed heuristically from preliminary measurements of the signal-to-noise ratios presented by the signals that one does not want to detect by the noise confirmation algorithm, or fixed peremptorily. The second solution is preferably used. Indeed, the object of this processing aims to highlight, not all the noise frames, but only a few having a high probability of being made up only of noise. We therefore have every interest in making the algorithm very selective. This selectivity is obtained by playing on the value of the probability of false alarm that we decide to ensure and which will therefore be chosen very low (the maximum selectivity being established for P FA = 0, which leads to a zero threshold and no noise detection, which is the extreme and absurd case). But this selectivity is also obtained by the choice of r: chosen too large, there is a risk of considering energies as representative of the noise, whereas these are breathing energies, for example, having a signal to noise ratio less than r. Conversely, choosing an r that is too small can limit the accessible P FA , which would then be too high to be acceptable.

Compte tenu des modèles précédents, et le calcul du seuil ayant été fait, on applique alors l'algorithme suivant de détection et de confirmation de bruit, basé essentiellement sur la notion de compatibilité, telle que décrite ci-dessus.Given the previous models, and the calculation of the threshold having been made, the following algorithm for detecting and confirming noise is then applied, essentially based on the concept of compatibility, as described above.

La recherche et la confirmation des trames de bruit se fait parmi un nombre de trames Ni défini par l'utilisateur une fois pour toute pour son application (par exemple Ni = 40), ces trames étant situées avant le noyau vocalique. On fait l'hypothèse suivante: l'énergie des trames de bruit seul est en moyenne inférieure à celle des trames de bruit+respiration et de bruit signal. La trame présentant l'énergie minimale parmi les Ni trames, est donc supposée n'être constituée que de bruit. On cherche alors toutes les trames compatibles avec cette trame au sens rappelé ci-dessus, en utilisant les modèles précités.The search and confirmation of the noise frames is done among a number of frames Ni defined by the user once and for all for its application (for example Ni = 40), these frames being located before the vocal core. The following hypothesis is made: the energy of the noise frames alone is on average lower than that of the noise + respiration and signal noise frames. The frame having the minimum energy among the Ni frames is therefore assumed to consist only of noise. We then look for all the frames compatible with this frame in the sense recalled above, using the aforementioned models.

L'algorithme de détection de bruit va chercher, parmi un ensemble de trames T1,...,Tn, celles qui peuvent être considérées comme du bruit.The noise detection algorithm will search, among a set of frames T 1 , ..., T n , for those which can be considered as noise.

Soient E(T1),...,E(Tn), les énergies de ces trames, calculées sous la forme : E(Ti)= Σ0≦n≦N-1 u(n)2 où u(n) sont les N échantillons constituant la trame T.Let E (T 1 ), ..., E (T n ), the energies of these frames, calculated in the form: E (T i ) = Σ 0 ≦ n ≦ N-1 u (n) 2 where u ( n) are the N samples constituting the frame T.

On fait l'hypothèse suivante : la trame présentant l'énergie la plus faible est une trame de bruit. Soit To cette trame.We make the following assumption: the frame with the lowest energy is a noise frame. Let To be this frame.

L'algorithme se déroule comme suit :

  • L'ensemble des trames de bruit est initialisé: Bruit={To}
The algorithm works as follows:
  • All the noise frames are initialized: Noise = {To}

Pour i décrivant { E(T1),...,E(Tn)} - {E(Ti0)} Faire Si E(T) est compatible avec chaque élément de Bruit:For i describing {E (T 1 ), ..., E (T n )} - {E (T i0 )} Do If E (T) is compatible with each Noise element:

Bruit = Bruit U {E(Ti)} Fin pour Modèle Autorégressif du bruit.Noise = Noise U {E (T i )} End for Autoregressive Model of noise.

Puisque l'algorithme de confirmation de bruit fournit un certain nombre de trames qui peuvent être considérées comme du bruit avec une très forte probabilité, on cherche à construire, à partir de la donnée des échantillons temporels, un modèle autorégressif du bruit.Since the noise confirmation algorithm provides a certain number of frames which can be considered as noise with a very high probability, we seek to construct, from the data of the temporal samples, an autoregressive model of the noise.

Si x(n) désigne les échantillons de bruit, on modélise x(n) sous la forme: x(n) = Σ1≦ip P ai x(n-i) + b(n) , où p est l'ordre du modèle, les ai, les coefficients du modèle à déterminer et b(n) le bruit de modélisation, supposé blanc et gaussien si on suit une approche par maximum de vraisemblance.If x (n) designates the noise samples, we model x (n) in the form: x (n) = Σ 1 ≦ i p P a i x (ni) + b (n), where p is the order of the model, the a i , the coefficients of the model to be determined and b (n) the modeling noise, assumed to be white and Gaussian if we follow a maximum likelihood approach.

Ce type de modélisation est largement décrit dans la littérature notamment dans "Spectrum Analysis A Modern Perspective", de S.M. KAY et S.L. MARPLE Jr, paru dans Proceedings of the IEEE, Vol. 69, N° 11, novembre 1981..This type of modeling is widely described in the literature, notably in "Spectrum Analysis A Modern Perspective", by S.M. KAY and S.L. MARPLE Jr, published in Proceedings of the IEEE, Vol. 69, No. 11, November 1981.

Quant aux algorithmes de calcul du modèle, de nombreuses méthodes sont disponibles (Burg, Levinson-Durbin, Kalman, Fast Kalman...).As for the algorithms for calculating the model, many methods are available (Burg, Levinson-Durbin, Kalman, Fast Kalman ...).

On utilise de préférence les méthodes du type Kalman et Fast Kalman, voir articles "Le Filtrage Adaptatif Transverse" de O.MACCHI/ M.BELLANGER paru dans la revue Traitement du Signal, Vol. 5, N° 3, 1988 et "Analyse des signaux et filtrage numérique adaptatif" de M.BELLANGER paru dans la Collection CNET-ENST, MASSON, qui présentent de très bonnes performances temps réel. Mais ce choix n'est pas le seul possible. L'ordre du filtre est par exemple choisi égal à 12, sans que cette valeur soit limitative.The methods of the Kalman and Fast Kalman type are preferably used, see articles "Transverse Adaptive Filtering" by O. MACCHI / M.BELLANGER published in the journal Signal Processing, Vol. 5, N ° 3, 1988 and "Signal analysis and adaptive digital filtering" by M.BELLANGER published in the CNET-ENST Collection, MASSON, which present very good real-time performance. But this choice is not the only possible one. The order of the filter is for example chosen equal to 12, without this value being limiting.

Filtrage réjecteurRejector filtering

Soit u(n) = s(n) + x(n) le signal total, composé du signal de parole s(n) et du bruit x(n) .Let u (n) = s (n) + x (n) be the total signal, composed of the speech signal s (n) and the noise x (n).

Soit le filtre H(z) = 1 - Σ1≦i≦p aiz-i.Let the filter H (z) = 1 - Σ 1 ≦ i ≦ p a i z -i .

Appliqué au signal U(z),on obtient H(z)U(z) = H(z)S(z) + H(z)X(z).Applied to the signal U (z), we obtain H (z) U (z) = H (z) S (z) + H (z) X (z).

Or : H(z)X(z) = B(z) = > H(z)U(z) = H(z)S(z) + B(z)Or: H (z) X (z) = B (z) => H (z) U (z) = H (z) S (z) + B (z)

Le filtre réjecteur H(z) blanchit le signal, de sorte que le signal en sortie de ce filtre est un signal de parole (filtré donc déformé), additionné d'un bruit généralement blanc et gaussien.The rejector filter H (z) whitens the signal, so that the signal at the output of this filter is a speech signal (filtered therefore distorted), added to a generally white and Gaussian noise.

Le signal obtenu est en fait impropre à la reconnaissance, car le filtre réjecteur déforme le signal de parole originel.The signal obtained is in fact unsuitable for recognition, because the rejector filter distorts the original speech signal.

Cependant, le signal obtenu étant perturbé par un bruit pratiquement blanc et gaussien, il s'ensuit que ce signal est très intéressant pour effectuer une détection du signal s(n) selon la théorie exposée ci-dessous, selon laquelle on garde le signal large bande obtenu, ou on le filtre préalablement dans la bande des fricatives, comme décrit ci-dessous (cf "détection de fricatives").However, the signal obtained being disturbed by a practically white and Gaussian noise, it follows that this signal is very interesting for carrying out a detection of the signal s (n) according to the theory set out below, according to which the signal is kept wide band obtained, or it is filtered beforehand in the band of fricatives, as described below (see "detection of fricatives").

C'est pour cette raison que l'on utilise ce filtrage réjecteur après modélisation auto-régressive du bruit. Spectre moyen de bruit.It is for this reason that we use this rejection filtering after auto-regressive modeling of the noise. Average noise spectrum.

Comme l'on dispose d'un certain nombre de trames confirmées comme étant des trames de bruit, on peut alors calculer un spectre moyen de ce bruit, de manière à implanter un filtrage spectral, du type soustraction spectrale ou filtrage de WIENER.As we have a certain number of frames confirmed as being noise frames, we can then calculate an average spectrum of this noise, so as to implement a spectral filtering, of the spectral subtraction or WIENER filtering type.

On choisit par exemple le filtrage de WIENER. Aussi, a-t-on besoin de calculer Cxx(f) = E[|X(f)|2] qui représente le spectre moyen de bruit. Comme les calculs sont numériques, on n'a accès qu'à des FFT de signaux numériques pondérés par une fenêtre de pondération. De plus, la moyenne spatiale ne peut qu'être approximée.We choose for example WIENER filtering. Also, we need to calculate C xx (f) = E [| X (f) | 2] which represents the average noise spectrum. As the calculations are digital, we only have access to FFTs of digital signals weighted by a weighting window. In addition, the spatial average can only be approximated.

Soient X1(n)...,XM(n) les M+1 FFT des M trames de bruit confirmées comme telles, ces FFT étant obtenues par pondération du signal temporel initial par une fenêtre d'apodisation adéquate.Let X 1 (n) ..., X M (n) be the M + 1 FFT of the M noise frames confirmed as such, these FFT being obtained by weighting the initial time signal by an adequate apodization window.

Cxx(f) = E[|X(f)2] est approximé par :

Figure imgb0020
C xx (f) = E [| X (f) 2] is approximated by:
Figure imgb0020

Les performances de cet estimateur sont données par exemple dans le livre "Digital signal processing" de L.RABINER/C.M.RADER paru chez IEEE Press.The performance of this estimator is given for example in the book "Digital signal processing" by L.RABINER / C.M.RADER published by IEEE Press.

Pour ce qui est du filtre de Wiener, on rappelle ci-dessous quelques résultats classiques, explicités notamment dans l'ouvrage "Speech Enhancement" de J.S. LIM paru aux Editions Prentice-Hall Signal Processing Series.With regard to the Wiener filter, a few classic results are recalled below, explained in particular in the work "Speech Enhancement" by J.S. LIM published by Prentice-Hall Signal Processing Series.

Soit u(t) = s(t) + x(t) le signal total observé, où s(t) désigne le signal utile (de parole) et x(t) le bruit. Dans le domaine fréquentiel, on obtient : U(f) = S(f) + X(f), avec des notations évidentes.Let u (t) = s (t) + x (t) be the total signal observed, where s (t) denotes the useful signal (speech) and x (t) the noise. In the frequency domain, we obtain: U (f) = S (f) + X (f), with obvious notations.

On cherche alors le filtre H(f), de sorte que le signal ^S(f) = H(f)U(f) soit le plus proche de S(f) au sens de la norme L2. On cherche donc H(f) minimisant : E[|S(f)-^S(f)|2].We then look for the filter H (f), so that the signal ^ S (f) = H (f) U (f) is the closest to S (f) within the meaning of the standard L 2 . We therefore seek H (f) minimizing: E [| S (f) - ^ S (f) | 2 ].

On démontre alors que: H(f) = 1 - (CXX(f)/CUU(f)) où Cxx(f) = E[|X(f)2] et Cuu(f) = E[|U(f)2|].We then demonstrate that: H (f) = 1 - (C XX (f) / C UU (f)) where C xx (f) = E [| X (f) 2] and C uu (f) = E [ | U (f) 2 |].

Ce type de filtre, parce que son expression est directement fréquentielle, est particulièrement intéressant à appliquer dès que la paramétrisation est basée sur le calcul du spectre. Implémentation par corrélogramme lissé.This type of filter, because its expression is directly frequency, is particularly interesting to apply as soon as the parameterization is based on the calculation of the spectrum. Implementation by smoothed correlogram.

En pratique, Cxx et Cuu ne sont pas accessibles. On ne peut que les estimer. Une procédure d'estimation de Cxx(f) a été décrite ci-dessus.In practice, C xx and C uu are not accessible. We can only estimate them. A procedure for estimating C xx (f) has been described above.

Cuu est le spectre moyen du signal total u(n) dont l'on ne dispose que sur une seule et unique trame. De plus, cette trame doit être paramétrisée de manière à pouvoir intervenir dans le processus de reconnaissance. Il n'est donc pas question d'effectuer une moyenne quelconque du signal u(n) d'autant plus que le signal de parole est un signal particulièrement non-stationnaire.C uu is the average spectrum of the total signal u (n) available only on a single frame. In addition, this frame must be configured so that it can intervene in the recognition process. There is therefore no question of carrying out any average of the signal u (n) all the more since the speech signal is a particularly non-stationary signal.

Il faut donc construire, à partir de la donnée de u(n), une estimation de Cuu(n). On utilise alors le corrélogramme lissé.It is therefore necessary to construct, from the data of u (n), an estimate of C uu (n). We then use the smoothed correlogram.

On estime alors Cuu(n) par : ^CUU(k) = Σ0 ≦ n ≦ N - 1 F(k-n) |X(n)|2We then estimate C uu (n) by: ^ C UU (k) = Σ 0 ≦ n ≦ N - 1 F (kn) | X (n) | 2

où F est une fenêtre de lissage construite comme suit, et N le nombre de points permettant le calcul des FFT : N = 256 points par exemple..where F is a smoothing window constructed as follows, and N the number of points allowing the calculation of FFT: N = 256 points for example.

On choisit une fenêtre de lissage dans le domaine temporel :

  • f(n) = ao + a1cos(2πn/N) + a2cos(4πn/N). Ces fenêtres sont largement décrites dans l'article précité: "On the Use of Windows for Hamming Analysis with the Discrete Fourier Transform de F.J.HARRIS paru dans Proceedings of the IEEE, Vol.66, N° 1, January 1978.
We choose a smoothing window in the time domain:
  • f (n) = a o + a 1 cos (2πn / N) + a 2 cos (4πn / N). These windows are widely described in the aforementioned article: "On the Use of Windows for Hamming Analysis with the Discrete Fourier Transform by FJHARRIS published in Proceedings of the IEEE, Vol.66, N ° 1, January 1978.

La fonction F(k) est alors simplement la Transformée de Fourier Discrète de f(n).The function F (k) is then simply the Discrete Fourier Transform of f (n).

^CUU(k) = Σ 0≦n≦N-1 F(k-n) |X(n)|2 apparaît comme une convolution discrète entre F(k) et V(k) = |X(k)2|, de sorte que ^CUU = F*V^ C UU (k) = Σ 0 ≦ n ≦ N - 1 F (kn) | X (n) | 2 appears as a discrete convolution between F (k) and V (k) = | X (k) 2 |, so that ^ C UU = F * V

Soit ^cUU la FFT-1 de ^CUU. ^cUU(k) = f(k)v(k) où v(k) est la FFT-1 de V(k).Let ^ c UU be the FFT- 1 of ^ C UU . ^ c UU (k) = f (k) v (k) where v (k) is the FFT- 1 of V (k).

On calcule donc ^CUU(k) selon l'algorithme dit de corrélogramme lissé suivant :

  • (1) Calcul de v(k) par FFT inverse de V(n) = |X(n) 2
  • (2) Calcul du produit f.v
  • (3) FFT directe du produit f.v qui aboutit à ^CUU
We therefore calculate ^ C UU (k) according to the so-called smoothed correlogram algorithm:
  • (1) Calculation of v (k) by inverse FFT of V (n) = | X (n) 2
  • (2) Calculation of the product fv
  • (3) Direct FFT of the product fv which leads to ^ C UU

Plutôt que d'appliquer le même estimateur pour le bruit et le signal total, le procédé de l'invention applique l'algorithme du corrélogramme lissé précédent au spectre moyen de bruit Mxx(n).Rather than applying the same estimator for the noise and the total signal, the method of the invention applies the algorithm of the previous smoothed correlogram to the average noise spectrum M xx (n).

^CXX(k) est donc obtenu par :^ C XX (k) is therefore obtained by:

Figure imgb0021
Le filtre de Wiener H(f) est donc estimé par la suite des valeurs : ^H(n) = 1 - (^CXX(n)/^CUU(n))
Figure imgb0021
The Wiener filter H (f) is therefore estimated by the following values: ^ H (n) = 1 - (^ C XX (n) / ^ C UU (n))

Le signal débruité a pour spectre : ^S(n) = AH(n)U(n)The denoised signal has the spectrum: ^ S (n) = A H ( n ) U ( n )

Une FFT-1 peut permettre, éventuellement, de récupérer le signal temporel débruité.An FFT- 1 can possibly make it possible to recover the denoised time signal.

Le spectre débruité ^S(n) obtenu est le spectre utilisé pour la paramétrisation en vue de la reconnaissance de la trame.The denoised spectrum ^ S (n) obtained is the spectrum used for parameterization with a view to recognizing the frame.

Pour effectuer la détection des signaux non voisés, on utilise également les procédures décrites ci-dessus, puisque l'on dispose d'énergies représentatives du bruit (voir ci-dessus l'algorithme de détection du bruit). Détection d'activité. Soient Ci = N(m11 2) et C2 = N(m22 2).To detect unvoiced signals, the procedures described above are also used, since there are energies representative of the noise (see above the noise detection algorithm). Activity detection. Let Ci = N (m 1 , σ 1 2 ) and C 2 = N (m 2 , σ 2 2 ).

Puisqu'on dispose d'un algorithme capable de mettre en évidence des valeurs de variables aléatoires appartenant à la même classe, de la classe C2 (par exemple), et ce, avec une très faible probabilité d'erreur, il devient alors beaucoup plus facile de décider, par observation du couple U/V, si U appartient à la classe Ci ou à la classe C2. Il y a donc deux hypothèses distinctes possibles,Since we have an algorithm capable of highlighting values of random variables belonging to the same class, of class C 2 (for example), and this, with a very low probability of error, it then becomes much easier to decide, by observation of the couple U / V, if U belongs to the class Ci or to the class C 2 . So there are two distinct possible hypotheses,

Figure imgb0022
correspondant à deux décisions possibles distinctes :
Figure imgb0023
Figure imgb0024
Décision optimale.
Figure imgb0022
corresponding to two distinct possible decisions:
Figure imgb0023
Figure imgb0024
Optimal decision.

On pose : m = m1/m2, α1 = m11 et a2 = m2/a2.We set: m = m 1 / m 2 , α 1 = m 1 / σ 1 and a 2 = m 2 / a 2 .

Soit un couple (U,V) de variables aléatoires, où on suppose que V ∈ C2 et U ∈ C1UC2. U et V sont supposées indépendantes. En observant la variable X = U/V, on cherche à prendre une décision entre les deux suivantes possibles: "C1XC2", C2XC2".Let be a couple (U, V) of random variables, where we suppose that V ∈ C 2 and U ∈ C 1 UC 2 . U and V are assumed to be independent. By observing the variable X = U / V, we seek to make a decision between the following two possible: "C 1 XC 2 ", C 2 XC2 ".

On a donc deux hypothèses:

Figure imgb0025
We therefore have two hypotheses:
Figure imgb0025

Soit p=Pr{U∈C1}.Let p = Pr {U∈C 1 }.

La règle de décision s'exprime sous la forme suivante :

Figure imgb0026
The decision rule is expressed in the following form:
Figure imgb0026

La probabilité de décision correcte Pc(s,m |α12) est alors :

Figure imgb0027
Figure imgb0028
Le seuil optimal est celui pour lequel Pc(s,m |α12) est maximal. On résout donc l'équation :The probability of correct decision P c (s, m | α 1 , α 2 ) is then:
Figure imgb0027
or
Figure imgb0028
The optimal threshold is that for which P c (s, m | α 1 , α 2 ) is maximum. We therefore solve the equation:

∂Pc(s,m |α12)/∂s = 0 ⇔ pf(s,m |α12) - (1-p)f(s,1 α22) = 0∂P c (s, m | α 1 , α 2 ) / ∂s = 0 ⇔ pf (s, m | α 1 , α 2 ) - (1-p) f (s, 1 α 2 , α 2 ) = 0

Approche type Neyman-PearsonNeyman-Pearson approach

Dans l'approche précédente, on supposait connaître la probabilité p. Lorsque cette probabilité est inconnue, on peut utiliser une approche type Neyman-Pearson.In the previous approach, we assumed to know the probability p. When this probability is unknown, a Neyman-Pearson type approach can be used.

On définit les probabilités de non détection et de fausse alarme :

Figure imgb0029
We define the probabilities of non-detection and false alarm:
Figure imgb0029

Ona:

Figure imgb0030
We have:
Figure imgb0030

On se fixe alors Pfa ou Pnd, pour déterminer la valeur du seuil.We then set P fa or P nd , to determine the value of the threshold.

Afin d'appliquer la détection d'activité telle que décrite ci-dessus au cas de la parole, il est nécessaire d'établir un modèle énergétique des signaux non voisés compatible avec les hypothèses qui président au bon fonctionnement des procédés décrits ci-dessus. On cherche donc un modèle des énergies des fricatives non voisées /F/, /S/, /CH) et des plosives non voisées /P/, /T/, /Q/, qui permettent d'obtenir des énergies dont la loi statistique est approximativement une gaussienne.In order to apply activity detection as described above to the case of speech, it is necessary to establish an energy model of the unvoiced signals compatible with the assumptions which govern the proper functioning of the methods described above. We are therefore looking for a model of the energies of unvoiced fricatives / F /, / S /, / CH) and of unvoiced plosives / P /, / T /, / Q /, which make it possible to obtain energies whose statistical law is approximately a Gaussian.

Modèle 1.Model 1.

Les sons /F/,/S/,/CH/ se situent spectralement dans une bande de fréquence qui s'étale d'environ 4 KHz à plus de 5KHz. Les sons /P/, /T/, /Q/ en tant que phénomènes courts dans le temps, s'étalent sur une bande plus large. Dans la bande choisie, on suppose que le spectre de ces sons fricatifs est relativement plat, de sorte que le signal fricatif dans cette bande peut se modéliser par un signal bande étroite. Ceci peut être réaliste dans certains cas pratiques sans avoir recours au blanchiment décrit ci-dessus. Cependant, dans la plupart des cas, il est judicieux de travailler sur un signal blanchi de manière à assurer un modèle de bruit à bande étroite convenable.The sounds / F /, / S /, / CH / are located spectrally in a frequency band which extends from approximately 4 KHz to more than 5KHz. The sounds / P /, / T /, / Q / as short phenomena in time, are spread over a wider band. In the chosen band, it is assumed that the spectrum of these fricative sounds is relatively flat, so that the fricative signal in this band can be modeled by a narrow band signal. This can be realistic in certain practical cases without resorting to the bleaching described above. In most cases, however, it is a good idea to work on a whitened signal to ensure a suitable narrowband noise model.

En acceptant un tel modèle de bruit à bande étroite, on a donc à traiter le rapport de deux énergies qui peut être traité par les procédés décrits ci-dessus.By accepting such a narrow band noise model, we therefore have to process the ratio of two energies which can be processed by the methods described above.

Soient s(n) le signal de parole dans la bande étudiée et x(n) le bruit dans cette même bande. Les signaux s(n) et x(n) sont supposés indépendants.Let s (n) be the speech signal in the band studied and x (n) the noise in this same band. The signals s (n) and x (n) are assumed to be independent.

La classe Ci correspond à l'énergie du signal total u(n) = s(n) + x(n) observé sur N points, la classe C2 correspond à l'énergie V du bruit seul observé sur M points.The class Ci corresponds to the energy of the total signal u (n) = s (n) + x (n) observed on N points, the class C 2 corresponds to the energy V of the noise alone observed on M points.

Les signaux étant gaussiens et indépendants, u(n) est un signal lui-même gaussien, de sorte que :

Figure imgb0031
De même :The signals being Gaussian and independent, u (n) is a signal itself Gaussian, so that:
Figure imgb0031
Similarly:

V = Σ0≦n≦M-1y(n)2 ∈ N(Mσx 2, 2σx 2Σ0≦i≦M-1,0≦j≦M-1gf0,B(ij)2), où y(n) désigne, on le rappelle, une autre valeur du bruit x(n) sur une tranche temporelle différente de celle où on observe u(n). On peut donc appliquer les résultats théoriques ci-dessus avec :

Figure imgb0032
Figure imgb0033
Figure imgb0034
Figure imgb0035
Figure imgb0036
V = Σ 0 ≦ n ≦ M-1 y (n) 2 ∈ N (Mσ x 2 , 2σ x 2 Σ 0 ≦ i ≦ M-1.0 ≦ j ≦ M-1 g f0, B (ij) 2 ) , where y (n) denotes, we recall, another value noise x (n) over a time slice different from that where u (n) is observed. We can therefore apply the above theoretical results with:
Figure imgb0032
Figure imgb0033
Figure imgb0034
Figure imgb0035
Figure imgb0036

On remarquera que m = (N/M)(1+r) où r = σx 2x 2 désigne finalement le rapport signal sur bruit.Note that m = (N / M) (1 + r) where r = σ x 2 / σ x 2 ultimately denotes the signal to noise ratio.

Pour achever complètement la résolution de ce problème, il faut pouvoir connaître le rapport signal sur bruit r ainsi que la probabilité de présence p du signal utile. Ce qui paraît être ici une limitation est commun aux deux autres modèles traités ci-dessous.To completely solve this problem, it is necessary to be able to know the signal-to-noise ratio r as well as the probability of the presence p of the useful signal. What appears to be a limitation here is common to the other two models discussed below.

Modèle 2.Model 2.

Comme dans le cas du modèle 1, on cherche à détecter uniquement les fricatives non voisées, donc à détecter un signal dans une bande particulière.As in the case of model 1, we seek to detect only unvoiced fricatives, therefore to detect a signal in a particular band.

Ici, le modèle du signal fricatif n'est pas le même que précédemment. On suppose que les fricatives présentent l'énergie minimale µs 2 = E 0≦n≦N-1s(n)2 connue, grâce par exemple à un apprentissage, ou estimée.Here, the model of the fricative signal is not the same as previously. We assume that the fricatives have the minimum energy µ s 2 = E 0 ≦ n ≦ N-1 s (n) 2 known, thanks for example to learning, or estimated.

Le son voisé est indépendant du bruit x(n) qui est ici gaussien bande étroite.The voiced sound is independent of the noise x (n) which is here Gaussian narrow band.

Si y(n), pour n compris entre 0 et M-1, désigne une autre valeur du bruit x(n) sur une tranche temporelle distincte de celle où est observé le signal total u(n) = s(n) + x(n), on aura :

  • V = Σ0≦n≦N-1 y(n)2 ∈ N( Mσx 2,2Tr(Cx,M 2)) où Cx,M désigne la matrice de corrélation du M-uplet : t (y(0),...,y(M-1))
If y (n), for n between 0 and M-1, denotes another noise value x (n) on a time slot distinct from that where the total signal is observed u (n) = s (n) + x (n), we will have:
  • V = Σ 0 ≦ n ≦ N-1 y (n) 2 ∈ N (Mσ x 2 , 2Tr (C x, M 2 )) where C x , M denotes the correlation matrix of the M-tuplet: t (y ( 0), ..., y (M-1))

En ce qui concerne l'énergie U = E o ≦n≦N-1 u(n)2 du signal total, celle-ci peut s'exprimer selon :

Figure imgb0037
Regarding the energy U = E o ≦ n ≦ N-1 u (n) 2 of the total signal, this can be expressed according to:
Figure imgb0037

Ce résultat s'obtient en supposant que l'indépendance entre s(n) et x(n) s'exprime par la décorrélation au sens temporel du terme, c'est-à -dire que l'on peut écrire :

Figure imgb0038
This result is obtained by supposing that the independence between s (n) and x (n) is expressed by decorrelation in the temporal sense of the term, that is to say that we can write:
Figure imgb0038

Comme V'=Σ0≦n≦N-1 x(n)2 ∈ N( Nσx 2, 2Tr(Cx,N2)) où Cx,N désigne la matrice de corrélation du N-uplet : t (x(0),...,x(N-1)), on a alors:

Figure imgb0039
As V '= Σ 0 ≦ n ≦ N-1 x (n) 2 ∈ N (Nσ x 2 , 2Tr (C x , N 2 )) where C x, N denotes the correlation matrix of the N-tuplet: t ( x (0), ..., x (N-1)), we then have:
Figure imgb0039

On peut donc appliquer les résultats théoriques ci-dessus avec :

Figure imgb0040
Figure imgb0041
We can therefore apply the above theoretical results with:
Figure imgb0040
Figure imgb0041

On remarquera que m = (N/M)(1+r) où r = µs 2x 2 désigne finalement le rapport signal sur bruit. La même remarque que celle du Modèle 1, concernant le rapport signal sur bruit r et la probabilité p de présence du signal utile, est valable ici.Note that m = (N / M) (1 + r) where r = µ s 2 / σ x 2 ultimately designates the signal to noise ratio. The same remark as that of Model 1, concerning the signal to noise ratio r and the probability p of presence of the useful signal, is valid here.

Modèle 3.Model 3.

Dans ce modèle, on cherche à effectuer une détection de tous les signaux non voisés, avec une hypothèse bruit blanc gaussien.In this model, we seek to perform a detection of all the unvoiced signals, with a Gaussian white noise hypothesis.

Le modèle signal bande étroite utilisé précédemment, n'est donc plus valable. On ne peut donc que supposer avoir affaire à un signal large bande dont on connaît l'énergie minimale µS 2. The narrowband signal model used previously is therefore no longer valid. We can therefore only assume that we are dealing with a broadband signal for which we know the minimum energy µ S 2.

Il vient donc :

Figure imgb0042
Figure imgb0043
Figure imgb0044
So it comes:
Figure imgb0042
Figure imgb0043
Figure imgb0044

Pour utiliser ce modèle, le bruit doit être blanc gaussien. Si le bruit d'origine n'est pas blanc, on peut s'approcher de ce modèle en sous-échantillonnant en fait le signal observé, c'est-à-dire en ne considérant qu'un échantillon sur 2, 3, voire plus, suivant la fonction d'autocorrélation du bruit, et en supposant que le signal de parole ainsi sous-échantillonné présente encore une énergie décelable. Mais on peut aussi, et cela est préférable, utiliser cet algorithme sur un signal blanchi par filtre réjecteur, puisqu'alors le bruit résiduel est approximativement blanc et gaussien.To use this model, the noise must be Gaussian white. If the original noise is not white, we can approach this model by actually sub-sampling the observed signal, that is to say by considering only one sample out of 2, 3, or even more, depending on the noise autocorrelation function, and assuming that the speech signal thus subsampled still has detectable energy. But it is also possible, and this is preferable, to use this algorithm on a signal whitened by a rejector filter, since then the residual noise is approximately white and Gaussian.

Les remarques précédentes concernant la valeur a priori du rapport signal à bruit et de la probabilité de présence du signal utile, restent encore et toujours valables.The preceding remarks concerning the a priori value of the signal to noise ratio and the probability of the presence of the useful signal, still remain valid.

Algorithmes de détection des sons non voisés.Unvoiced sound detection algorithms.

En utilisant les modèles précédents, on expose ci-dessous deux algorithmes de détection des sons non voisés.Using the previous models, two algorithms for detecting unvoiced sounds are exposed below.

Algorithme 1 :

  • Disposant d'énergies représentatives de bruit, on peut moyenner ces énergies de sorte que l'on obtient une énergie de "référence" de bruit. Soir Eo cette énergie. Pour N3 trames T1, ..., Tn qui précèdent la première trame voisée, on procède comme suit :
  • Soient E(T1), ..., E(Tn), les énergies de ces trames, calculées sous la forme E(Ti) = Σ0≦n≦N-1u(n)2 où u(n) sont les N échantillons constituant la trame T.
Algorithm 1:
  • Having representative noise energies, these energies can be averaged so that a noise "reference" energy is obtained. Evening E o this energy. For N 3 frames T 1 , ..., T n which precede the first voiced frame, the procedure is as follows:
  • Let E (T 1 ), ..., E (T n ), the energies of these frames, calculated in the form E (T i ) = Σ 0 ≦ n ≦ N-1 u (n) 2 where u (n ) are the N samples constituting the frame T.

Pour E(Ti) décrivant {E(T1), ..., E(Tn)}For E (T i ) describing {E (T 1 ), ..., E (T n )}

FaireTo do

Si E(Ti) est compatible avec Eo (Décision sur la valeur de E(Ti)/E0).If E (T i ) is compatible with E o (Decision on the value of E (T i ) / E 0 ).

Détection sur la trame T.Detection on the T frame.

Fin pour.End for.

Algorithme 2 :

  • Cet algorithme est une variante du précédent. On utilise pour Eo, soit l'énergie moyenne des trames détectées comme du bruit, soit la valeur de l'énergie la plus faible de toutes les trames détectées comme du bruit.
Algorithm 2:
  • This algorithm is a variant of the previous one. E o uses either the average energy of the frames detected as noise, or the value of the lowest energy of all the frames detected as noise.

Puis on procède comme suit :

  • Pour E(Ti) décrivant {E(T1), ..., E(Tn)}.
Then we proceed as follows:
  • For E (T i ) describing {E (T 1 ), ..., E (T n )}.

FaireTo do

Si E(Ti) est compatible avec Eo (Décision sur la valeur de E(Ti)/E0).If E (T i ) is compatible with E o (Decision on the value of E (T i ) / E 0 ).

Détection sur la trame T.Detection on the T frame.

Sinon Eo = E(T).Otherwise E o = E (T).

Fin pourEnd for

Le rapport signal à bruit r peut être estimé ou fixé de manière heuristique, à condition d'effectuer quelques mesures expérimentales préalables, caractéristiques du domaine d'application, de manière à fixer un ordre de grandeur du rapport signal sur bruit que présentent les fricatives dans la bande choisie.The signal-to-noise ratio r can be estimated or fixed in a heuristic manner, provided that some preliminary experimental measurements, characteristic of the field of application, are carried out, so as to fix an order of magnitude of the signal-to-noise ratio presented by the fricatives in the chosen band.

La probabilité p de présence de la parole non voisée est, elle-aussi, une donnée heuristique, qui module la sélectivité de l'algorithme, au même titre d'ailleurs que le rapport signal à bruit. Cette donnée peut être estimée suivant le vocabulaire utilisé et le nombre de trames sur lequel se fait la recherche de sons non voisés.The probability p of the presence of unvoiced speech is also a heuristic datum which modulates the selectivity of the algorithm, in the same way as the signal-to-noise ratio. This data can be estimated according to the vocabulary used and the number of frames on which the search for unvoiced sounds is made.

Simplification dans le cas d'un milieu faiblement bruité.Simplification in the case of a slightly noisy environment.

Dans le cas d'un milieu faiblement bruité, pour lequel aucun modèle de bruit n'a été déterminé, en vertu des simplifications proposées ci-dessus, la théorie rappelée précédemment justifie l'utilisation d'un seuil, qui n'est pas lié de manière bijective au rapport signal à bruit, mais qui sera fixé de manière totalement empirique.In the case of a weakly noisy environment, for which no noise model has been determined, by virtue of the simplifications proposed above, the theory recalled above justifies the use of a threshold, which is not linked bijectively to the signal to noise ratio, but which will be fixed in a completely empirical way.

Une alternative intéressante pour des milieux où le bruit est négligeable, est de se contenter de la détection de voisement, d'éliminer la détection des sons non voisés, et de fixer le début de parole à quelques trames avant le noyau vocalique (environ 15 trames) et la fin de parole à quelques trames après la fin du noyau vocalique (environ 15 trames).An interesting alternative for environments where the noise is negligible, is to be satisfied with the detection of voicing, to eliminate the detection of unvoiced sounds, and to fix the start of speech at a few frames before the vocal nucleus (about 15 frames ) and the end of speech a few frames after the end of the vocal nucleus (about 15 frames).

Claims (12)

1. Procédé de détection de la parole dans des signaux bruités, caractérisé par le fait qu'après avoir effectué dans ces signaux la détection d'au moins une trame voisée, on recherche des trames de bruit précédant cette trame voisée, on construit un modèle autorégressif de bruit et un spectre moyen de bruit, on blanchit par filtre réjecteur et on débruite par débruiteur spectral les trames précédant le voisement, on recherche le début effectif de la parole dans ces trames blanchies, on extrait des trames débruitées comprises entre le début effectif de la parole et la première trame voisée les vecteurs acoustiques utilisés par le système de reconnaissance vocale, tant que des trames voisées sont détectées, celles-ci sont débruitées puis paramétrisées en vue de leur reconnaissance, lorsqu'on ne détecte plus de trames voisées, on recherche la fin effective de la parole, on débruite puis on paramétrise les trames comprises entre la dernière trame voisée et la fin effective de la parole.1. A method of detecting speech in noisy signals, characterized in that after having carried out in these signals the detection of at least one voiced frame, we search for noise frames preceding this voiced frame, we build a model autoregressive noise and an average noise spectrum, we blank by rejector filter and we denoised by spectral denoiser the frames preceding voicing, we search for the effective start of speech in these bleached frames, we extract noisy frames between the effective start of speech and the first voiced frame the acoustic vectors used by the voice recognition system, as long as voiced frames are detected, these are denoised and then parameterized with a view to their recognition, when voiced frames are no longer detected, we are looking for the effective end of the speech, we denois then we configure the frames between the last voiced frame and the effective end of the speech. 2. Procédé selon la revendication 1, caractérisé par le fait que le blanchiment est réalisé par filtrage réjecteur calculé à partir du modèle autorégressif du bruit.2. Method according to claim 1, characterized in that the bleaching is carried out by filtering rejector calculated from the autoregressive model of noise. 3. Procédé selon la revendication 2, caractérisé par le fait que lorsque la dernière trame de parole a été paramétrisée, on réinitialise tous les paramètres de traitement.3. Method according to claim 2, characterized in that when the last speech frame has been parameterized, all the processing parameters are reset. 4. Procédé selon l'une des revendications précédentes, caractérisé par le fait que les trames de signaux à traiter sont traitées par transformées de Fourier, et que lorsque deux transformées sont consécutives dans le temps, elles sont calculées sur trois trames consécutives avec recouvrement d'une trame.4. Method according to one of the preceding claims, characterized in that the signal frames to be processed are processed by Fourier transforms, and that when two transforms are consecutive in time, they are calculated on three consecutive frames with overlap d 'a frame. 5. Procédé selon l'une des revendications précédentes, caractérisé par le fait que la détection de voisement se fait, pour chaque trame, à l'aide de la valeur du "pitch" associé à cette trame.5. Method according to one of the preceding claims, characterized in that the voicing detection is done, for each frame, using the value of the "pitch" associated with this frame. 6. Procédé selon la revendication 5, caractérisé par le fait que l'on valide le calcul du pitch après avoir reconnu au moint trois trames voisées, soit 3 x 12,8 ms.6. Method according to claim 5, characterized in that the calculation of the pitch is validated after having recognized at the moint three voiced frames, ie 3 x 12.8 ms. 7. Procédé selon la revendication 5 ou 6, caractérisé par le fait que le calcul du pitch est fait à partir de la corrélation du signal avec sa forme retardée.7. Method according to claim 5 or 6, characterized in that the calculation of the pitch is made from the correlation of the signal with its delayed form. 8. Procédé selon l'une des revendications 5 à 7, caractérisé par le fait que la détection de sons non voisés se fait par seuillage.8. Method according to one of claims 5 to 7, characterized in that the detection of unvoiced sounds is done by thresholding. 9. Procédé selon l'une des revendications précédentes, caractérisé par le fait que pour détecter de la parole non voisée, on examine la distance entre le noyau vocalique et le bloc fricatif, et la taille de ce bloc fricatif.9. Method according to one of the preceding claims, characterized in that to detect unvoiced speech, the distance between the vowel core and the fricative block is examined, and the size of this fricative block. 10. Procédé selon l'une des revendications précédentes, caractérisé par le fait que le spectre moyen de bruit est obtenu par filtrage de Wiener.10. Method according to one of the preceding claims, characterized in that the average noise spectrum is obtained by Wiener filtering. 11. Procédé selon la revendication 10, caractérisé par le fait que l'on applique l'algorithme du corrélogramme lissé au spectre moyen de bruit.11. Method according to claim 10, characterized in that the smoothed correlogram algorithm is applied to the average noise spectrum. 12. Procédé selon la revendication 1, caractérisé par le fait qu'en milieu peu bruité, on effectue uniquement une détection de trames voisées, et une détection de noyau vocalique auquel on attache un intervalle de confiance.12. Method according to claim 1, characterized in that in a low-noise environment, only a detection of voiced frames is carried out, and a detection of a vocal nucleus to which a confidence interval is attached.
EP93402522A 1992-10-21 1993-10-13 Speech detection method Expired - Lifetime EP0594480B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9212582 1992-10-21
FR9212582A FR2697101B1 (en) 1992-10-21 1992-10-21 Speech detection method.

Publications (2)

Publication Number Publication Date
EP0594480A1 true EP0594480A1 (en) 1994-04-27
EP0594480B1 EP0594480B1 (en) 1999-08-18

Family

ID=9434731

Family Applications (1)

Application Number Title Priority Date Filing Date
EP93402522A Expired - Lifetime EP0594480B1 (en) 1992-10-21 1993-10-13 Speech detection method

Country Status (5)

Country Link
US (1) US5572623A (en)
EP (1) EP0594480B1 (en)
JP (1) JPH06222789A (en)
DE (1) DE69326044T2 (en)
FR (1) FR2697101B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718820A2 (en) * 1994-12-19 1996-06-26 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3522012B2 (en) * 1995-08-23 2004-04-26 沖電気工業株式会社 Code Excited Linear Prediction Encoder
FR2744277B1 (en) * 1996-01-26 1998-03-06 Sextant Avionique VOICE RECOGNITION METHOD IN NOISE AMBIENCE, AND IMPLEMENTATION DEVICE
FR2765715B1 (en) 1997-07-04 1999-09-17 Sextant Avionique METHOD FOR SEARCHING FOR A NOISE MODEL IN NOISE SOUND SIGNALS
US6711536B2 (en) * 1998-10-20 2004-03-23 Canon Kabushiki Kaisha Speech processing apparatus and method
JP2002073072A (en) * 2000-08-31 2002-03-12 Sony Corp Device and method for adapting model, recording medium and pattern recognition device
US7117145B1 (en) * 2000-10-19 2006-10-03 Lear Corporation Adaptive filter for speech enhancement in a noisy environment
US7941313B2 (en) * 2001-05-17 2011-05-10 Qualcomm Incorporated System and method for transmitting speech activity information ahead of speech features in a distributed voice recognition system
US7203643B2 (en) * 2001-06-14 2007-04-10 Qualcomm Incorporated Method and apparatus for transmitting speech activity in distributed voice recognition systems
KR100463657B1 (en) * 2002-11-30 2004-12-29 삼성전자주식회사 Apparatus and method of voice region detection
JP4635486B2 (en) * 2004-06-29 2011-02-23 ソニー株式会社 Concept acquisition apparatus and method thereof, robot apparatus and action control method thereof
KR100640865B1 (en) * 2004-09-07 2006-11-02 엘지전자 주식회사 method and apparatus for enhancing quality of speech
US8311819B2 (en) * 2005-06-15 2012-11-13 Qnx Software Systems Limited System for detecting speech with background voice estimates and noise estimates
US8170875B2 (en) * 2005-06-15 2012-05-01 Qnx Software Systems Limited Speech end-pointer
JP4722653B2 (en) * 2005-09-29 2011-07-13 株式会社コナミデジタルエンタテインメント Audio information processing apparatus, audio information processing method, and program
US8175874B2 (en) * 2005-11-17 2012-05-08 Shaul Shimhi Personalized voice activity detection
US8417185B2 (en) * 2005-12-16 2013-04-09 Vocollect, Inc. Wireless headset and method for robust voice data communication
FI20051294A0 (en) * 2005-12-19 2005-12-19 Noveltech Solutions Oy signal processing
US7773767B2 (en) * 2006-02-06 2010-08-10 Vocollect, Inc. Headset terminal with rear stability strap
US7885419B2 (en) * 2006-02-06 2011-02-08 Vocollect, Inc. Headset terminal with speech functionality
US8775168B2 (en) * 2006-08-10 2014-07-08 Stmicroelectronics Asia Pacific Pte, Ltd. Yule walker based low-complexity voice activity detector in noise suppression systems
KR100930584B1 (en) * 2007-09-19 2009-12-09 한국전자통신연구원 Speech discrimination method and apparatus using voiced sound features of human speech
JPWO2009087923A1 (en) * 2008-01-11 2011-05-26 日本電気株式会社 Signal analysis control, signal analysis, signal control system, apparatus, method and program
WO2009113516A1 (en) * 2008-03-14 2009-09-17 日本電気株式会社 Signal analysis/control system and method, signal control device and method, and program
JP5773124B2 (en) * 2008-04-21 2015-09-02 日本電気株式会社 Signal analysis control and signal control system, apparatus, method and program
USD605629S1 (en) 2008-09-29 2009-12-08 Vocollect, Inc. Headset
US8160287B2 (en) 2009-05-22 2012-04-17 Vocollect, Inc. Headset with adjustable headband
US8438659B2 (en) 2009-11-05 2013-05-07 Vocollect, Inc. Portable computing device and headset interface
US9280982B1 (en) * 2011-03-29 2016-03-08 Google Technology Holdings LLC Nonstationary noise estimator (NNSE)
US8838445B1 (en) * 2011-10-10 2014-09-16 The Boeing Company Method of removing contamination in acoustic noise measurements
US9099098B2 (en) * 2012-01-20 2015-08-04 Qualcomm Incorporated Voice activity detection in presence of background noise
CN103325388B (en) * 2013-05-24 2016-05-25 广州海格通信集团股份有限公司 Based on the mute detection method of least energy wavelet frame
DE102019102414B4 (en) * 2019-01-31 2022-01-20 Harmann Becker Automotive Systems Gmbh Method and system for detecting fricatives in speech signals

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0335521A1 (en) * 1988-03-11 1989-10-04 BRITISH TELECOMMUNICATIONS public limited company Voice activity detection
US4959865A (en) * 1987-12-21 1990-09-25 The Dsp Group, Inc. A method for indicating the presence of speech in an audio signal
EP0459363A1 (en) * 1990-05-28 1991-12-04 Matsushita Electric Industrial Co., Ltd. Voice signal coding system

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4972490A (en) * 1981-04-03 1990-11-20 At&T Bell Laboratories Distance measurement control of a multiple detector system
US4627091A (en) * 1983-04-01 1986-12-02 Rca Corporation Low-energy-content voice detection apparatus
US4912764A (en) * 1985-08-28 1990-03-27 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech coder with different excitation types
US4852181A (en) * 1985-09-26 1989-07-25 Oki Electric Industry Co., Ltd. Speech recognition for recognizing the catagory of an input speech pattern
US4777649A (en) * 1985-10-22 1988-10-11 Speech Systems, Inc. Acoustic feedback control of microphone positioning and speaking volume
JP2884163B2 (en) * 1987-02-20 1999-04-19 富士通株式会社 Coded transmission device
US5276765A (en) * 1988-03-11 1994-01-04 British Telecommunications Public Limited Company Voice activity detection
US5097510A (en) * 1989-11-07 1992-03-17 Gs Systems, Inc. Artificial intelligence pattern-recognition-based noise reduction system for speech processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4959865A (en) * 1987-12-21 1990-09-25 The Dsp Group, Inc. A method for indicating the presence of speech in an audio signal
EP0335521A1 (en) * 1988-03-11 1989-10-04 BRITISH TELECOMMUNICATIONS public limited company Voice activity detection
EP0459363A1 (en) * 1990-05-28 1991-12-04 Matsushita Electric Industrial Co., Ltd. Voice signal coding system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
E.S. DERMATAS ET AL.: "Fast endpoint detection algorithm for isolated word recognition in office environment", ICASSP 91, vol. 1, 14 May 1991 (1991-05-14), TORONTO, pages 733 - 736, XP000245333, DOI: doi:10.1109/ICASSP.1991.150444 *
M. CHUNG ET AL.: "Word boundary detection and speech recognition of noisy speech by means of iterative noise cancellation techniques", ICASSP 85, vol. 4, 26 March 1985 (1985-03-26), TAMPA FLORIDA, pages 1838, XP002034470 *
S.F. BOLL: "Suppression of acoustic noise in speech using spectral subtraction", IEEE TRANS. ON ASSP, vol. 27, no. 2, April 1979 (1979-04-01), pages 113 - 120, XP000572856, DOI: doi:10.1109/TASSP.1979.1163209 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0718820A2 (en) * 1994-12-19 1996-06-26 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus
EP0718820A3 (en) * 1994-12-19 1998-06-03 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus
US6067518A (en) * 1994-12-19 2000-05-23 Matsushita Electric Industrial Co., Ltd. Linear prediction speech coding apparatus
US6167373A (en) * 1994-12-19 2000-12-26 Matsushita Electric Industrial Co., Ltd. Linear prediction coefficient analyzing apparatus for the auto-correlation function of a digital speech signal
US6205421B1 (en) 1994-12-19 2001-03-20 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus
EP1391878A2 (en) * 1994-12-19 2004-02-25 Matsushita Electric Industrial Co., Ltd. Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus
EP1391878A3 (en) * 1994-12-19 2011-02-09 Panasonic Corporation Speech coding apparatus, linear prediction coefficient analyzing apparatus and noise reducing apparatus

Also Published As

Publication number Publication date
FR2697101B1 (en) 1994-11-25
EP0594480B1 (en) 1999-08-18
DE69326044D1 (en) 1999-09-23
FR2697101A1 (en) 1994-04-22
JPH06222789A (en) 1994-08-12
DE69326044T2 (en) 2000-07-06
US5572623A (en) 1996-11-05

Similar Documents

Publication Publication Date Title
EP0594480B1 (en) Speech detection method
EP2415047B1 (en) Classifying background noise contained in an audio signal
Triantafyllopoulos et al. Towards robust speech emotion recognition using deep residual networks for speech enhancement
EP0993671B1 (en) Method for searching a noise model in noisy sound signals
EP1154405B1 (en) Method and device for speech recognition in surroundings with varying noise levels
EP2419900B1 (en) Method and device for the objective evaluation of the voice quality of a speech signal taking into account the classification of the background noise contained in the signal
FR2522179A1 (en) METHOD AND APPARATUS FOR RECOGNIZING WORDS FOR RECOGNIZING PARTICULAR PHONEMES OF THE VOICE SIGNAL WHATEVER THE PERSON WHO SPEAKS
EP0620546B1 (en) Energy detection procedure for noisy signals
Poorjam et al. Automatic quality control and enhancement for voice-based remote Parkinson’s disease detection
CA2404441C (en) Robust parameters for noisy speech recognition
EP0621582B1 (en) Method of speech recognition with training phase
EP3627510A1 (en) Filtering of an audio signal acquired by a voice recognition system
EP1605440B1 (en) Method for signal source separation from a mixture signal
Gul et al. Single channel speech enhancement by colored spectrograms
EP0821345B1 (en) Method to determine the fundamental frequency of a speech signal
JP2968976B2 (en) Voice recognition device
Figueiredo et al. A comparative study on filtering and classification of bird songs
Bach et al. Matching Pursuit Analysis of Auditory Receptive Fields' Spectro-Temporal Properties
Ekpenyong et al. Speech Quality Enhancement in Digital Forensic Voice Analysis
CN117542378A (en) Speech emotion recognition method and device, electronic equipment and storage medium
França et al. Noise Reduction in Speech Signals Using Discrete-time Kalman Filters Combined with Wavelet Transforms
WO2002082424A1 (en) Method and device for extracting acoustic parameters of a voice signal
Shao et al. A computational auditory scene analysis system for speech
FR2847706A1 (en) Voice transformation/speech recognition system having modules transforming input/providing representative characteristic and module processing set providing quality level selected signal
FR2739482A1 (en) Speech signal analysis method e.g. for low rate vocoder

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

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE GB

17P Request for examination filed

Effective date: 19940527

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

17Q First examination report despatched

Effective date: 19980922

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE GB

REF Corresponds to:

Ref document number: 69326044

Country of ref document: DE

Date of ref document: 19990923

RAP2 Party data changed (patent owner data changed or rights of a patent transferred)

Owner name: THOMSON-CSF SEXTANT

GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)

Effective date: 19991020

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

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

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20081014

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20081008

Year of fee payment: 16

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20100501

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20091013