EP1021805B1 - Method and apparatus for conditioning a digital speech signal - Google Patents

Method and apparatus for conditioning a digital speech signal Download PDF

Info

Publication number
EP1021805B1
EP1021805B1 EP98943997A EP98943997A EP1021805B1 EP 1021805 B1 EP1021805 B1 EP 1021805B1 EP 98943997 A EP98943997 A EP 98943997A EP 98943997 A EP98943997 A EP 98943997A EP 1021805 B1 EP1021805 B1 EP 1021805B1
Authority
EP
European Patent Office
Prior art keywords
signal
frequency
speech signal
frame
module
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.)
Expired - Lifetime
Application number
EP98943997A
Other languages
German (de)
French (fr)
Other versions
EP1021805A1 (en
Inventor
Philip Lockwood
Stéphane LUBIARZ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nortel Networks France SAS
Original Assignee
Matra Nortel Communications SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matra Nortel Communications SAS filed Critical Matra Nortel Communications SAS
Publication of EP1021805A1 publication Critical patent/EP1021805A1/en
Application granted granted Critical
Publication of EP1021805B1 publication Critical patent/EP1021805B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques 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/0316Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
    • G10L21/0364Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude for improving intelligibility
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques 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
    • G10L21/0232Processing in the frequency domain
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/93Discriminating between voiced and unvoiced parts of speech signals

Definitions

  • the present invention relates to techniques digital speech signal processing.
  • a commonly used method used is based on a linear prediction by which we evaluate a prediction delay inversely proportional to the tone frequency. This delay may be expressed as a whole or fractional number of times digital signal sample.
  • Other methods directly detect attributable signal breaks at closures of the speaker's glottis, the intervals of time between these breaks being inversely proportional to the tone frequency.
  • the discrete frequencies considered are those of the form (a / N) ⁇ F e , where F e is the sampling frequency, N the number of samples of the blocks used in the discrete Fourier transform, and has an integer ranging from 0 to N / 2-1. These frequencies do not necessarily include the estimated tone frequency and / or its harmonics. This results in an imprecision in the operations carried out in connection with the estimated tonal frequency, which can cause distortions of the processed signal by affecting its harmonic character.
  • a main object of the present invention is to propose a way to condition the speech signal which makes it less sensitive to the above drawbacks.
  • the invention therefore proposes a process as indicated in the claim 1 and a device as claimed in claim 9.
  • the invention thus provides a method of conditioning of a digital speech signal processed by successive frames, in which an analysis is carried out harmonic of the speech signal to estimate a frequency tonal of the speech signal on each frame where it presents voice activity. After estimating the frequency of the speech signal on a frame, we condition the speech signal of the frame by oversampling it to a multiple oversampling frequency of the estimated tone frequency.
  • An additional improvement is that that after processing each frame, we keep, among samples of the denoised speech signal provided by this processing, a number of samples equal to an integer multiple of times the ratio between the frequency sampling frequency and estimated tone frequency. This avoids distortion problems caused by phase discontinuities between frames, which are not generally not fully corrected by techniques overlap-add classics.
  • the fact of having conditioned the signal by the oversampling technique provides good measure of the degree of voicing of the speech signal on the frame, from a calculation of the entropy of the autocorrelation of the spectral components calculated on the basis of the conditioned signal.
  • Signal conditioning of speech accentuates the irregular aspect of the spectrum and therefore variations in entropy, so that the latter is a measure of good sensitivity.
  • the denoising system shown in FIG. 1 processes a digital speech signal s.
  • the signal frame is transformed in the frequency domain by a module 11 applying a conventional fast Fourier transform (TFR) algorithm to calculate the module of the signal spectrum.
  • TFR fast Fourier transform
  • the frequency resolution available at the output of the fast Fourier transform is not used, but a lower resolution, determined by a number I of frequency bands covering the band [0 , F e / 2] of the signal.
  • a module 12 calculates the respective averages of the spectral components S n, f of the speech signal in bands, for example by a uniform weighting such that:
  • This averaging reduces the fluctuations between the bands by averaging the noise contributions in these bands, which will decrease the variance of the estimator of noise. In addition, this averaging allows a large reduction of the complexity of the system.
  • the averaged spectral components S n, i are addressed to a voice activity detection module 15 and to a noise estimation module 16. These two modules 15, 16 operate jointly, in the sense that degrees of vocal activity ⁇ n, i measured for the different bands by the module 15 are used by the module 16 to estimate the long-term energy of the noise in the different bands, while these long-term estimates B and n, i are used by module 15 to carry out a priori denoising of the speech signal in the different bands to determine the degrees of vocal activity ⁇ n, i .
  • modules 15 and 16 can correspond to the flowcharts represented in the figures 2 and 3.
  • the module 15 proceeds a priori to denoising the speech signal in the different bands i for the signal frame n.
  • This a priori denoising is carried out according to a conventional process of non-linear spectral subtraction from noise estimates obtained during one or more previous frames.
  • the spectral components pp n, i are calculated according to: where ⁇ p i is a floor coefficient close to 0, conventionally used to prevent the spectrum of the denoised signal from taking negative or too low values which would cause musical noise.
  • Steps 17 to 20 therefore essentially consist in subtracting from the signal spectrum an estimate, increased by the coefficient ⁇ '/ n - ⁇ 1, i , of the noise spectrum estimated a priori.
  • the module 15 calculates, for each band i (0 ⁇ 1 ⁇ I), a quantity ⁇ E n, i representing the short-term variation of the energy of the noise-suppressed signal in the band i, as well as long-term value E n, i of the energy of the denoised signal in band i.
  • step 25 the quantity ⁇ E n, l is compared with a threshold ⁇ 1. If the threshold ⁇ 1 is not reached, the counter b i is incremented by one unit in step 26.
  • step 27 the long-term estimator ba i is compared to the value of the smoothed energy E n, i . If ba l ⁇ E n, i , the estimator ba i is taken equal to the smoothed value E n, i in step 28, and the counter b i is reset to zero.
  • the quantity ⁇ i which is taken equal to the ratio ba i / E n, 1 (step 36), is then equal to 1.
  • step 27 shows that ba i ⁇ E n, i
  • the counter b i is compared with a limit value bmax in step 29. If b j > bmax, the signal is considered to be too stationary to support vocal activity.
  • Bm represents an update coefficient between 0.90 and 1. Its value differs depending on the state of a voice activity detection automaton (steps 30 to 32). This state ⁇ n-1 is that determined during the processing of the previous frame.
  • the coefficient Bm takes a value Bmp very close to 1 so that the noise estimator is very slightly updated in the presence of speech. Otherwise, the coefficient Bm takes a lower value Bms, to allow a more significant update of the noise estimator in the phase of silence.
  • the difference ba i -bl i between the long-term estimator and the internal noise estimator is compared to a threshold ⁇ 2. If the threshold ⁇ 2 is not reached, the long-term estimator ba l is updated with the value of the internal estimator bi l in step 35. Otherwise, the long-term estimator ba l remains unchanged . This avoids that sudden variations due to a speech signal lead to an update of the noise estimator.
  • the module 15 After having obtained the quantities ⁇ i , the module 15 proceeds to the voice activity decisions in step 37.
  • the module 15 first updates the state of the detection automaton according to the quantity ⁇ 0 calculated for l of the signal band.
  • the new state ⁇ n of the automaton depends on the previous state ⁇ n-1 and on ⁇ 0 , as shown in Figure 4.
  • the module 15 also calculates the degrees of vocal activity ⁇ n, i in each band i ⁇ 1.
  • This function has for example the appearance shown in FIG. 5.
  • Module 16 calculates the band noise estimates, which will be used in the denoising process, using the successive values of the components S n, i and the degrees of voice activity ⁇ n, i . This corresponds to steps 40 to 42 of FIG. 3.
  • step 40 it is determined whether the voice activity detection machine has just gone from the rising state to the speaking state. If so, the last two estimates B and n -1, i and B and n- 2 , i previously calculated for each band i ⁇ 1 are corrected in accordance with the value of the previous estimate B and n -3, i .
  • step 42 the module 16 updates the noise estimates per band according to the formulas: where ⁇ B denotes a forgetting factor such as 0 ⁇ B ⁇ 1.
  • Formula (6) shows how the degree of non-binary vocal activity ⁇ n, i is taken into account.
  • the long-term noise estimates B and n , l are overestimated, by a module 45 (FIG. 1), before proceeding to denoising by nonlinear spectral subtraction.
  • Module 45 calculates the overestimation coefficient ⁇ '/ n, i previously mentioned, as well as an increased estimate B and' / n, i which essentially corresponds to ⁇ '/ n, i . B and n , i .
  • the organization of the overestimation module 45 is shown in FIG. 6.
  • the enhanced estimate B and '/ n, i is obtained by combining the long-term estimate B and n, i and a measure ⁇ B max / n, i the variability of the noise component in band i around its long-term estimate.
  • this combination is essentially a simple sum made by an adder 46. It could also be a weighted sum.
  • the measure ⁇ B max / n, i of the noise variability reflects the variance of the noise estimator. It is obtained as a function of the values of S n, i and of B and n, i calculated for a certain number of previous frames on which the speech signal does not present any vocal activity in the band i. It is a function of the deviations
  • the degree of vocal activity ⁇ n, i is compared to a threshold (block 51) to decide whether the deviation
  • the measure of variability ⁇ B max / n, i can, as a variant, be obtained as a function of the values S n, f (and not S n, i ) and B and n , i .
  • FIFO 54 does not contain
  • the enhanced estimator B and '/ n, i provides excellent robustness to the musical noises of the denoising process.
  • a first phase of the spectral subtraction is carried out by the module 55 shown in FIG. 1.
  • This phase provides, with the resolution of the bands 1 (1 i i 1 1), the frequency response H 1 / n, i of first denoising filter, as a function of the components S n, i and B and n, i and the overestimation coefficients ⁇ '/ n, i .
  • the coefficient ⁇ 1 / i represents, like the coefficient ⁇ p i of formula (3), a floor conventionally used to avoid negative or too low values of the denoised signal.
  • the overestimation coefficient ⁇ n, i could be replaced in formula (7) by another coefficient equal to a function of ⁇ '/ n, i and of an estimate of the signal-to-noise ratio (for example S n, i / B and n, i ), this function decreasing according to the estimated value of the signal-to-noise ratio.
  • This function is then equal to ⁇ '/ n, i for the lowest values of the signal-to-noise ratio. Indeed, when the signal is very noisy, it is a priori not useful to reduce the overestimation factor.
  • this function decreases to zero for the highest values of the signal / noise ratio. This protects the most energetic areas of the spectrum, where the speech signal is most significant, the amount subtracted from the signal then tending towards zero.
  • This strategy can be refined by applying it selectively to frequency harmonics pitch of the speech signal when it has voice activity.
  • a second denoising phase is carried out by a module 56 for protecting harmonics.
  • the module 57 can apply any known method of analysis of the speech signal of the frame to determine the period T p , expressed as an integer or fractional number of samples, for example a linear prediction method.
  • the protection provided by the module 56 may consist in carrying out, for each frequency f belonging to a band i:
  • H 2 n , f 1
  • the quantity subtracted from the component S n, f will be zero.
  • the floor coefficients ⁇ 2 / i express the fact that certain harmonics of the tonal frequency f p can be masked by noise, so that it doesn ' is not worth protecting them.
  • This protection strategy is preferably applied for each of the frequencies closest to the harmonics of f p , that is to say for any arbitrary integer.
  • the difference ink the ⁇ -th harmonic of the real tonal frequency is its estimate ⁇ ⁇ f p (condition (9)) can go up to ⁇ ⁇ ⁇ ⁇ p / 2. For high values of ⁇ , this difference can be greater than the spectral half-resolution ⁇ f / 2 of the Fourier transform.
  • the corrected frequency response H 2 / n, f can be equal to 1 as indicated above, which corresponds to the subtraction of a zero quantity in the context of spectral subtraction, that is to say ie full protection of the frequency in question. More generally, this corrected frequency response H 2 / n, f could be taken equal to a value between 1 and H 1 / n, f depending on the degree of protection desired, which corresponds to the subtraction of an amount less than which would be subtracted if the frequency in question was not protected.
  • This signal S 2 / n, f is supplied to a module 60 which calculates, for each frame n, a masking curve by applying a psychoacoustic model of auditory perception by the human ear.
  • the masking phenomenon is a principle known from functioning of the human ear. When two frequencies are heard simultaneously, it is possible that one of the two is no longer audible. We say then that it is hidden.
  • the masking curve is seen as the convolution of the spectral spreading function of the basilar membrane in the bark domain with the excitatory signal, constituted in the present application by the signal S 2 / n, f .
  • the spectral spreading function can be modeled as shown in Figure 7.
  • R q depends on the more or less voiced character of the signal.
  • designates a degree of voicing of the speech signal, varying between zero (no voicing) and 1 (strongly voiced signal).
  • the denoising system also includes a module 62 which corrects the frequency response of the denoising filter, as a function of the masking curve M n, q calculated by the module 60 and of the increased estimates B and '/ n, i , calculated by the module 45.
  • the module 62 decides the level of denoising which must really be reached.
  • the new response H 3 / n, f for a frequency f belonging to the band i defined by the module 12 and to the banae of bark q, thus depends on the relative difference between the increased estimate B and '/ n, i of the corresponding spectral component of the noise and the masking curve M n, q , as follows:
  • the quantity subtracted from a spectral component S n, f , in the process of spectral subtraction having the frequency response H 3 / n, f is substantially equal to the minimum between on the one hand the quantity subtracted from this spectral component in the spectral subtraction process having the frequency response H 2 / n, f , and on the other hand the fraction of the increased estimate B and '/ n, i of the corresponding spectral component of the noise which, if if necessary, exceeds the masking curve M n, q .
  • FIG. 8 illustrates the principle of the correction applied by the module 62. It schematically shows an example of masking curve M n, q calculated on the basis of the spectral components S 2 / n, f of the noise-suppressed signal, as well as the estimation plus B and '/ n, i of the noise spectrum.
  • the quantity finally subtracted from the components S n, f will be that represented by the hatched areas, that is to say limited to the fraction of the increased estimate B and '/ n, i of the spectral components of the noise which exceeds the curve masking.
  • This subtraction is carried out by multiplying the frequency response H 3 / n , f of the denoising filter by the spectral components S n, f of the speech signal (multiplier 64).
  • TFRI inverse fast Fourier transform
  • FIG. 9 shows a preferred embodiment of a denoising system implementing the invention.
  • This system comprises a certain number of elements similar to corresponding elements of the system of FIG. 1, for which the same reference numbers have been used.
  • modules 10, 11, 12, 15, 16, 45 and 55 provide in particular the quantities S n, i , B and n , i , ⁇ '/ n, i , B and' / n, i and H 1 / n, f to perform selective denoising.
  • the frequency resolution of the fast Fourier transform 11 is a limitation of the system of FIG. 1.
  • the frequency subject to protection by the module 56 is not necessarily the precise tonal frequency f p , but the frequency closest to it in the discrete spectrum. In some cases, it is then possible to protect harmonics relatively far from that of the tone frequency.
  • the system of FIG. 9 overcomes this drawback thanks to an appropriate conditioning of the speech signal.
  • the sampling frequency of the signal is modified so that the period 1 / f p covers exactly an integer number of sample times of the conditioned signal.
  • This size N is usually a power of 2 for putting implementation of the TFR. It is 256 in the example considered.
  • This choice is made by a module 70 according to the value of the delay T p supplied by the harmonic analysis module 57.
  • the module 70 provides the ratio K between the sampling frequencies to three frequency change modules 71, 72, 73 .
  • the module 71 is used to transform the values S n, i , B and n , i , ⁇ '/ n, i , B and ' / n, i and H 1 / n, f , relating to the bands i defined by the module 12 , in the scale of modified frequencies (sampling frequency f e ). This transformation consists simply in dilating the bands i in the factor K. The values thus transformed are supplied to the module 56 for protecting harmonics.
  • the module 72 performs the oversampling of the frame of N samples provided by the windowing module 10.
  • the conditioned signal frame supplied by the module 72 includes KN samples at the frequency f e . These samples are sent to a module 75 which calculates their Fourier transform.
  • the two blocks therefore have an overlap of (2-K) x100%.
  • the autocorrelations A (k) are calculated by a module 76, for example according to the formula:
  • a module 77 then calculates the normalized entropy H, and supplies it to module 60 for the calculation of the masking curve (see SA McClellan et al: “Spectral Entropy: an Alternative Indicator for Rate Allocation?”, Proc. ICASSP'94 , pages 201-204):
  • the normalized entropy H constitutes a measurement of voicing very robust to noise and variations in the tonal frequency.
  • the correction module 62 operates in the same way as that of the system in FIG. 1, taking into account the overestimated noise B and '/ n, i rescaled by the frequency change module 71. It provides the response in frequency H 3 / n, f of the final denoising filter, which is multiplied by the spectral components S n, f of the signal conditioned by the multiplier 64. The components S 3 / n, f which result therefrom are brought back into the time domain by the TFRI 65 module. At the output of this TFRI 65, a module 80 combines, for each frame, the two signal blocks resulting from the processing of the two overlapping blocks delivered by the TFR 75. This combination can consist of a weighted sum Hamming of samples, to form a denoised conditioned signal frame of KN samples.
  • the management module 82 controls the windowing module 10 so that the overlap between the current frame and the next one corresponds to NM. This recovery of NM samples will be required in the recovery sum carried out by the module 66 during the processing of the next frame.
  • the tone frequency is estimated in an average way on the frame.
  • the tonal frequency can vary some little over this period. It is possible to take into account these variations in the context of the present invention, in conditioning the signal so as to obtain artificially a constant tone frequency in the frame.
  • the analysis module 57 harmonic provides the time intervals between the consecutive breaks in speech signal due to closures of the glottis of the intervening speaker for the duration of the frame.
  • Usable methods to detect such micro-ruptures are well known in the area of harmonic signal analysis lyrics.
  • the principle of these methods is to perform a statistical test between two models, one in the short term and the other in the long term. Both models are adaptive linear prediction models.
  • the value of this statistical test w m is the cumulative sum of the posterior likelihood ratio of two distributions, corrected by the Kullback divergence. For a distribution of residuals having a Gaussian statistic, this value w m is given by: where e 0 / m and ⁇ 2/0 represent the residue calculated at the time of the sample m of the frame and the variance of the long-term model, e 1 / m and ⁇ 2/1 likewise representing the residue and the variance of the short term model. The closer the two models are, the more the value w m of the statistical test is close to 0. On the other hand, when the two models are distant from each other, this value w m becomes negative, which indicates a break R of the signal.
  • FIG. 10 thus shows a possible example of evolution of the value w m , showing the breaks R of the speech signal.
  • FIG. 11 shows the means used to calculate the conditioning of the signal in the latter case.
  • the harmonic analysis module 57 is produced so as to implement the above analysis method, and to provide the intervals t r relative to the signal frame produced by the module 10.
  • These oversampling reports K r are supplied to the frequency change modules 72 and 73, so that the interpolations are carried out with the sampling ratio K r over the corresponding time interval t r .
  • the largest T p of the time intervals t r supplied by the module 57 for a frame is selected by the module 70 (block 91 in FIG. 11) to obtain a torque p, ⁇ as indicated in table I.
  • This embodiment of the invention also involves an adaptation of the window management module 82.
  • the number M of samples of the denoised signal to be saved on the current frame here corresponds to an integer number of consecutive time intervals t r between two glottal breaks (see FIG. 10). This arrangement avoids the problems of phase discontinuity between frames, while taking into account the possible variations of the time intervals t r on a frame.

Landscapes

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

Description

La présente invention concerne les techniques numériques de traitement de signaux de parole.The present invention relates to techniques digital speech signal processing.

De nombreuses représentations des signaux de parole tiennent compte de l'harmonicité de ces signaux résultant de la façon dont ils sont produits. Dans la plupart des cas, ceci se traduit par la détermination d'une fréquence tonale du signal de parole.Many representations of the signals of speech take into account the harmony of these signals resulting from the way they are produced. In the in most cases this translates into determination of a tone frequency of the speech signal.

Les traitements numériques des signaux de parole ont récemment connu d'importants développements dans des domaines variés : codage de la parole pour la transmission ou le stockage, reconnaissance de la parole, diminution du bruit, annulation d'écho... Très fréquemment, ces traitements font intervenir une estimation de la fréquence tonale et des opérations particulières en liaison avec la fréquence estimée.Digital processing of speech signals have recently experienced significant developments in various fields: speech coding for transmission or storage, speech recognition, decreased noise, echo cancellation ... Very often, these treatments involve an estimate of the frequency tonal and specific operations in connection with estimated frequency.

De nombreuses méthodes ont été concues pour estimer la fréquence tonale. Une méthode couramment utilisée repose sur une prédiction linéaire par laquelle on évalue un retard de prédiction inversement proportionnel à la fréquence tonale. Ce retard peut être exprimé comme un nombre entier ou fractionnaire de temps d'échantillon du signal numérique. D'autres méthodes détectent directement des ruptures du signal attribuables aux fermetures de la glotte du locuteur, les intervalles de temps entre ces ruptures étant inversement proportionnels à la fréquence tonale.Many methods have been designed to estimate the tone frequency. A commonly used method used is based on a linear prediction by which we evaluate a prediction delay inversely proportional to the tone frequency. This delay may be expressed as a whole or fractional number of times digital signal sample. Other methods directly detect attributable signal breaks at closures of the speaker's glottis, the intervals of time between these breaks being inversely proportional to the tone frequency.

Une autre méthode, proposant une combinaison de prédiction, interpolation et ré-échantillonnage dans le domaine spectral, est divulguée dans US-A-522608.Another method, offering a combination of prediction, interpolation and resampling in the spectral domain, is disclosed in US-A-522608.

Lorsqu'une transformation dans le domaine fréquentiel, telle qu'une transformée de Fourier discrète, est opérée sur le signal de parole numérique, on est amené à considérer un spectre discret du signal de parole. Les fréquences discrètes considérées sont celles de la forme (a/N)×Fe, où Fe est la fréquence d'échantillonnage, N le nombre d'échantillons des blocs utilisés dans la transformée de Fourier discrète, et a un entier allant de 0 à N/2-1. Ces fréquences ne comprennent pas nécessairement la fréquence tonale estimée et/ou ses harmoniques. Il en résulte une imprécision dans les operations effectuées en liaison avec la fréquence tonale estimée, qui peut provoquer des distorsions du signal traité en affectant son caractère harmonique.When a transformation in the frequency domain, such as a discrete Fourier transform, is performed on the digital speech signal, we are led to consider a discrete spectrum of the speech signal. The discrete frequencies considered are those of the form (a / N) × F e , where F e is the sampling frequency, N the number of samples of the blocks used in the discrete Fourier transform, and has an integer ranging from 0 to N / 2-1. These frequencies do not necessarily include the estimated tone frequency and / or its harmonics. This results in an imprecision in the operations carried out in connection with the estimated tonal frequency, which can cause distortions of the processed signal by affecting its harmonic character.

Un but principal de la présente invention est de proposer une facon de conditionner le signal de parole qui le rende moins sensible aux inconvénients ci-dessus.A main object of the present invention is to propose a way to condition the speech signal which makes it less sensitive to the above drawbacks.

Aussi l'invention propose-t-elle un procédé comme indiqué dans la revendication 1 et un dispositif comme indiqué dans la revendication 9.The invention therefore proposes a process as indicated in the claim 1 and a device as claimed in claim 9.

L'invention propose ainsi un procédé de conditionnement d'un signal numérique de parole traité par trames successives, dans lequel on effectue une analyse harmonique du signal de parole pour estimer une fréquence tonale du signal de parole sur chaque trame où il présente une activité vocale. Après avoir estimé la fréquence tonale du signal de parole sur une trame, on conditionne le signal de parole de la trame en le suréchantillonnant à une fréquence de suréchantillonnage multiple de la fréquence tonale estimée.The invention thus provides a method of conditioning of a digital speech signal processed by successive frames, in which an analysis is carried out harmonic of the speech signal to estimate a frequency tonal of the speech signal on each frame where it presents voice activity. After estimating the frequency of the speech signal on a frame, we condition the speech signal of the frame by oversampling it to a multiple oversampling frequency of the estimated tone frequency.

Cette disposition permet, dans le traitement effectué sur le signal de parole, de privilégier les fréquences les plus proches de la fréquence tonale estimée par rapport aux autres fréquences. On préserve donc au mieux le caractère harmonique du signal de parole. Pour calculer des composantes spectrales du signal de parole, on distribue le signal conditionné par blocs de N écnantillons soumis à une transformation dans le domaine fréquentiel, et on choisit le rapport entre la fréquence de suréchantillonnage et la fréquence tonale estimée comme un diviseur du nombre N.This provision allows, in processing performed on the speech signal, to favor frequencies closest to the estimated tone frequency compared to other frequencies. We therefore preserve better the harmonic character of the speech signal. For calculate spectral components of the speech signal, we distribute the conditioned signal by blocks of N samples subject to transformation in the field frequency, and we choose the ratio between the frequency oversampling and the estimated tone frequency as a divisor of the number N.

La technique précédente peut encore être affinée en estimant la fréquence tonale du signal de parole sur une trame de la manière suivante :

  • on estime des intervalles de temps entre deux ruptures consécutives du signal attribuables à des fermetures de la glotte du locuteur intervenant pendant la durée de la trame, la fréquence tonale estimée étant inversement proportionnelle auxdits intervalles de temps ;
  • on interpole le signal de parole dans lesdits intervalles de temps, afin que le signal conditionné résultant de cette interpolation présente un intervalle de temps constant entre deux ruptures consécutives.
The previous technique can be further refined by estimating the tonal frequency of the speech signal on a frame as follows:
  • estimating time intervals between two consecutive breaks in the signal attributable to closings of the glottis of the speaker intervening during the duration of the frame, the estimated tone frequency being inversely proportional to said time intervals;
  • the speech signal is interpolated in said time intervals, so that the conditioned signal resulting from this interpolation has a constant time interval between two consecutive breaks.

Cette facon de procéder construit artificiellement une trame de signal sur laquelle le signal de parole présente des ruptures à intervalles constants. On prend ainsi en compte d'éventuelles variations de la fréquence tonale sur la durée d'une trame.This way of proceeding constructed artificially a signal frame on which the speech signal has ruptures at constant intervals. We take thus taking into account possible variations in frequency tonal over the duration of a frame.

Une amélioration supplémentaire consiste en ce que, après le traitement de chaque trame, on conserve, parmi les échantillons du signal de parole débruité fournis par ce traitement, un nombre d'échantillons égal à un multiple entier de fois le rapport entre la fréquence d'échantillonnage et la fréquence tonale estimée. Ceci évite les problèmes de distorsion provoqués par les discontinuités de phase entre trames, qui ne sont généralement pas corrigées totalement par les techniques classiques de somme à recouvrement (overlap-add).An additional improvement is that that after processing each frame, we keep, among samples of the denoised speech signal provided by this processing, a number of samples equal to an integer multiple of times the ratio between the frequency sampling frequency and estimated tone frequency. This avoids distortion problems caused by phase discontinuities between frames, which are not generally not fully corrected by techniques overlap-add classics.

Le fait d'avoir conditionné le signal par la technique de suréchantillonnage permet d'obtenir une bonne mesure du degré de voisement du signal de parole sur la trame, à partir d'un calcul de l'entropie de l'autocorrelation des composantes spectrales calculées sur la base du signal conditionné. Plus le spectre est perturbé, c'est-à-dire plus il est voisé, plus les valeurs de l'entropie sont faibles. Le conditionnement du signal de parole accentue l'aspect irrégulier du spectre et donc les variations de l'entropie, de sorte que celle-ci constitue une mesure de bonne sensibilité.The fact of having conditioned the signal by the oversampling technique provides good measure of the degree of voicing of the speech signal on the frame, from a calculation of the entropy of the autocorrelation of the spectral components calculated on the basis of the conditioned signal. The higher the spectrum disturbed, that is to say the more it is seen, the higher the values of entropy are low. Signal conditioning of speech accentuates the irregular aspect of the spectrum and therefore variations in entropy, so that the latter is a measure of good sensitivity.

Dans la suite de la présente description, on illustrera le procédé de conditionnement selon l'invention dans un système de débruitage d'un signal de parole. On comprendra que ce procédé peut trouver des applications dans de nombreux autres types de traitement numérique de la parole : codage, reconnaissance, annulation d'écho...In the remainder of this description, we illustrate the packaging process according to the invention in a denoising system of a speech signal. We will understand that this process can find applications in many other types of digital processing of speech: coding, recognition, echo cancellation ...

D'autres particularités et avantages de la présente invention apparaítront dans la description ci-après d'exemples de réalisation non limitatifs, en référence aux dessins annexés, dans lesquels :

  • la figure 1 est un schéma synoptique d'un système de debruitage ;
  • les figures 2 et 3 sont des organigrammes de procédures utilisées par un détecteur d'activité vocale du système de la figure 1 ;
  • la figure 4 est un diagramme représentant les états d'un automate de détection d'activité vocale ;
  • la figure 5 est un graphique illustrant les variations d'un degré d'activité vocale ;
  • la figure 6 est un schéma synoptique d'un module de surestimation du bruit du système de la figure 1 ;
  • la figure 7 est un graphique illustrant le calcul d'une courbe de masquage ;
  • la figure 8 est un graphique illustrant l'exploitation des courbes de masquage dans le système de la figure 1 ;
  • la figure 9 est un schéma synoptique d'un autre système de débruitage mettant en oeuvre la présente invention ;
  • la figure 10 est un graphique illustrant une méthode d'analyse harmonique utilisable dans un procédé selon l'invention ; et
  • la figure 11 montre partiellement une variante du schéma synoptique de la figure 9.
Other features and advantages of the present invention will appear in the description below of nonlimiting exemplary embodiments, with reference to the appended drawings, in which:
  • Figure 1 is a block diagram of a noise reduction system;
  • Figures 2 and 3 are flowcharts of procedures used by a voice activity detector of the system of Figure 1;
  • FIG. 4 is a diagram representing the states of a voice activity detection automaton;
  • FIG. 5 is a graph illustrating the variations of a degree of vocal activity;
  • Figure 6 is a block diagram of a noise overestimation module of the system of Figure 1;
  • FIG. 7 is a graph illustrating the calculation of a masking curve;
  • FIG. 8 is a graph illustrating the use of the masking curves in the system of FIG. 1;
  • FIG. 9 is a block diagram of another denoising system implementing the present invention;
  • FIG. 10 is a graph illustrating a harmonic analysis method usable in a method according to the invention; and
  • FIG. 11 partially shows a variant of the block diagram of FIG. 9.

Le système de débruitage représenté sur la figure 1 traite un signal numérique de parole s. Un module de fenêtrage 10 met ce signal s sous forme de fenêtres ou trames successives, constituées chacune d'un nombre N d'échantillons de signal numérique. De façon classique, ces trames peuvent présenter des recouvrements mutuels. Dans la suite de la présente description, on considérera, sans que ceci soit limitatif, que les trames sont constituées de N=256 échantillons à une fréquence d'échantillonnage Fe de 8 kHz, avec une pondération de Hamming dans chaque fenêtre, et des recouvrements de 50% entre fenêtres consécutives.The denoising system shown in FIG. 1 processes a digital speech signal s. A windowing module 10 puts this signal s in the form of successive windows or frames, each consisting of a number N of digital signal samples. Conventionally, these frames can have mutual overlaps. In the following of this description, it will be considered, without this being limiting, that the frames consist of N = 256 samples at a sampling frequency F e of 8 kHz, with a Hamming weighting in each window, and 50% overlap between consecutive windows.

La trame de signal est transformée dans le domaine fréquentiel par un module 11 appliquant un algorithme classique de transformée de Fourier rapide (TFR) pour calculer le module du spectre du signal. Le module 11 délivre alors un ensemble de N=256 composantes fréquentielles du signal de parole, notées Sn,f, où n désigne le numéro de la trame courante, et f une fréquence du spectre discret. Du fait des propriétés des signaux numériques dans le domaine fréquentiel, seuls les N/2=128 premiers échantillons sont utilisés.The signal frame is transformed in the frequency domain by a module 11 applying a conventional fast Fourier transform (TFR) algorithm to calculate the module of the signal spectrum. The module 11 then delivers a set of N = 256 frequency components of the speech signal, denoted S n, f , where n denotes the number of the current frame, and f a frequency of the discrete spectrum. Due to the properties of digital signals in the frequency domain, only the first N / 2 = 128 samples are used.

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

Figure 00050001
To calculate the noise estimates contained in the signal s, the frequency resolution available at the output of the fast Fourier transform is not used, but a lower resolution, determined by a number I of frequency bands covering the band [0 , F e / 2] of the signal. Each band i (1 ≤ i ≤ I) extends between a lower frequency f (i-1) and a higher frequency f (i), with f (0) = 0, and f (I) = F e / 2 . This division into frequency bands can be uniform (f (i) - f (i-1) = F e / 2I). It can also be non-uniform (for example according to a barks scale). A module 12 calculates the respective averages of the spectral components S n, f of the speech signal in bands, for example by a uniform weighting such that:
Figure 00050001

Ce moyennage diminue les fluctuations entre les bandes en moyennant les contributions du bruit dans ces bandes, ce qui diminuera la variance de l'estimateur de bruit. En outre, ce moyennage permet une forte diminution de la complexité du système.This averaging reduces the fluctuations between the bands by averaging the noise contributions in these bands, which will decrease the variance of the estimator of noise. In addition, this averaging allows a large reduction of the complexity of the system.

Les composantes spectrales moyennées Sn,i sont adressées à un module 15 de détection d'activité vocale et à un module 16 d'estimation du bruit. Ces deux modules 15, 16 fonctionnent conjointement, en ce sens que des degrés d'activité vocale γn,i mesurés pour les différentes bandes par le module 15 sont utilisés par le module 16 pour estimer l'énergie à long terme du bruit dans les differentes bandes, tandis que ces estimations à long terme B andn,i sont utilisées par le module 15 pour procéder à un débruitage a priori du signal de parole dans les différentes bandes pour déterminer les degrés d'activité vocale γn,i.The averaged spectral components S n, i are addressed to a voice activity detection module 15 and to a noise estimation module 16. These two modules 15, 16 operate jointly, in the sense that degrees of vocal activity γ n, i measured for the different bands by the module 15 are used by the module 16 to estimate the long-term energy of the noise in the different bands, while these long-term estimates B and n, i are used by module 15 to carry out a priori denoising of the speech signal in the different bands to determine the degrees of vocal activity γ n, i .

Le fonctionnement des modules 15 et 16 peut correspondre aux organigrammes représentés sur les figures 2 et 3.The operation of modules 15 and 16 can correspond to the flowcharts represented in the figures 2 and 3.

Aux étapes 17 à 20, le module 15 procède au débruitage a priori du signal de parole dans les différentes bandes i pour la trame de signal n. Ce débruitage a priori est effectué selon un processus classique de soustraction spectrale non linéaire à partir d'estimations du bruit obtenues lors d'une ou plusieurs trames précédentes. A l'étape 17, le module 15 calcule, avec la résolution des bandes i, la réponse en fréquence Hpn,i du filtre de débruitage a priori, selon la formule : Hpn,i = Sn,i - α' n-τ1,i · B n-τ1,i S n-τ2,i où τ1 et τ2 sont des retards exprimés en nombre de trames (τ1≥1, τ2≥0), et α ' / n,i est un coefficient de surestimation du bruit dont la détermination sera expliquée plus loin. Le retard τ1 peut être fixe (par exemple τ1=1) ou variable. Il est d'autant plus faible qu'on est confiant dans la détection d'activité vocale.In steps 17 to 20, the module 15 proceeds a priori to denoising the speech signal in the different bands i for the signal frame n. This a priori denoising is carried out according to a conventional process of non-linear spectral subtraction from noise estimates obtained during one or more previous frames. In step 17, the module 15 calculates, with the resolution of the bands i, the frequency response Hp n, i of the a priori denoising filter, according to the formula: Hp or = S or - α ' not -τ1, i · B not -τ1, i S not -τ2, i where τ1 and τ2 are delays expressed in number of frames (τ1≥1, τ2≥0), and α '/ n, i is a noise overestimation coefficient whose determination will be explained later. The delay τ1 can be fixed (for example τ1 = 1) or variable. The lower the confidence in the detection of voice activity.

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

Figure 00060001
où βpi est un coefficient de plancher proche de 0, servant classiquement à éviter que le spectre du signal débruité prenne des valeurs négatives ou trop faibles qui provoqueraient un bruit musical. In steps 18 to 20, the spectral components pp n, i are calculated according to:
Figure 00060001
where βp i is a floor coefficient close to 0, conventionally used to prevent the spectrum of the denoised signal from taking negative or too low values which would cause musical noise.

Les étapes 17 a 20 consistent donc essentiellement à soustraire du spectre du signal une estimation, majorée par le coefficient α ' / n-τ1,i, du spectre du bruit estimé a priori.Steps 17 to 20 therefore essentially consist in subtracting from the signal spectrum an estimate, increased by the coefficient α '/ n -τ1, i , of the noise spectrum estimated a priori.

A l'étape 21, le module 15 calcule l'énergie du signal débruité a priori dans les différentes bandes i pour la trame n : En,i = Êp 2 / n,i. Il calcule aussi une moyenne globale En,0 de l'énergie du signal débruité a priori, par une somme des énergies par bande En,1, pondérée par les largeurs de ces bandes. Dans les notations ci-dessous, l'indice i=0 sera utilisé pour désigner la bande globale du signal.In step 21, the module 15 calculates the energy of the a priori denoised signal in the different bands i for the frame n: E n, i = Êp 2 / n, i. It also calculates a global average E n, 0 of the energy of the a priori denoised signal, by a sum of the energies per band E n, 1 , weighted by the widths of these bands. In the notations below, the index i = 0 will be used to designate the overall band of the signal.

Aux étapes 22 et 23, le module 15 calcule, pour chaque bande i (0≤1≤I), une grandeur ΔEn,i représentant la variation à court terme de l'énergie du signal débruité dans la bande i, ainsi qu'une valeur à long terme E n,i de l'énergie du signal débruité dans la bande i. La grandeur ΔEn,1 peut être calculée par une formule simplifiée de dérivation :

Figure 00070001
Quant à l'énergie à long terme E n,i, elle peut être calculée à l'aide d'un facteur d'oubli B1 tel que 0<B1<1, à savoir E n,i = B1. E n -1, i + (1-B1).En , i .In steps 22 and 23, the module 15 calculates, for each band i (0≤1≤I), a quantity ΔE n, i representing the short-term variation of the energy of the noise-suppressed signal in the band i, as well as long-term value E n, i of the energy of the denoised signal in band i. The quantity ΔE n, 1 can be calculated by a simplified derivation formula:
Figure 00070001
As for long-term energy E n, i , it can be calculated using a forgetting factor B1 such that 0 <B1 <1, namely E n, i = B 1. E n -1, i + (1- B 1). E n , i .

Après avoir calculé les énergies En , i du signal débruité, ses variations à court terme ΔEn,i et ses valeurs à long terme E n,i de la manière indiquée sur la figure 2, le module 15 calcule, pour chaque bande i (0≤i≤I), une valeur ρi représentative de l'évolution de l'énergie du signal débruité. Ce calcul est effectué aux étapes 25 à 36 de la figure 3, exécutées pour chaque bande i entre i=0 et i=I. Ce calcul fait appel à un estimateur à long terme de l'enveloppe du bruit bai, à un estimateur interne bii et à un compteur de trames bruitées bi.After calculating the energies E n , i of the noise-suppressed signal, its short-term variations ΔE n, i and its long-term values E n, i in the manner indicated in FIG. 2, the module 15 calculates, for each band i (0 i i I I), a value ρ i representative of the evolution of the energy of the denoised signal. This calculation is carried out in steps 25 to 36 of FIG. 3, executed for each band i between i = 0 and i = I. This calculation uses a long-term estimator of the noise envelope ba i , an internal estimator bi i and a noisy frame counter b i .

A l'étape 25, la grandeur ΔEn,l est comparée à un seuil ε1. Si le seuil ε1 n'est pas atteint, le compteur bi est incrémenté d'une unité à l'étape 26. A l'étape 27, l'estimateur à long terme bai est comparé à la valeur de l'énergie lissée E n,i. Si balE n,i, l'estimateur bai est pris égal à la valeur lissée E n,i à l'étape 28, et le compteur bi est remis à zéro. La grandeur ρi, qui est prise égale au rapport bai/E n,1 (étape 36), est alors égale à 1.In step 25, the quantity ΔE n, l is compared with a threshold ε1. If the threshold ε1 is not reached, the counter b i is incremented by one unit in step 26. In step 27, the long-term estimator ba i is compared to the value of the smoothed energy E n, i . If ba l E n, i , the estimator ba i is taken equal to the smoothed value E n, i in step 28, and the counter b i is reset to zero. The quantity ρ i , which is taken equal to the ratio ba i / E n, 1 (step 36), is then equal to 1.

Si l'étape 27 montre que bai<E n,i, le compteur bi est comparé à une valeur limite bmax à l'étape 29. Si bj>bmax, le signal est considéré comme trop stationnaire pour supporter de l'activité vocale. L'étape 28 précitée, qui revient à considérer que la trame ne comporte que du bruit, est alors exécutée. Si bi≤bmax à l'étape 29, l'estimateur interne bii est calculé à l'étape 33 selon : bii = (1-Bm). E n,i + Bm .bai Dans cette formule, Bm représente un coefficient de mise à jour compris entre 0,90 et 1. Sa valeur diffère selon l'état d'un automate de détection d'activité vocale (étapes 30 à 32). Cet état δn-1 est celui déterminé lors du traitement de la trame précédente. Si l'automate est dans un état de détection de parole (δn-1=2 à l'étape 30), le coefficient Bm prend une valeur Bmp très proche de 1 pour que l'estimateur du bruit soit très faiblement mis à jour en présence de parole. Dans le cas contraire, le coefficient Bm prend une valeur Bms plus faible, pour permettre une mise à jour plus significative de l'estimateur de bruit en phase de silence. A l'étape 34, l'écart bai-bli entre l'estimateur à long terme et l'estimateur interne du bruit est comparé à un seuil ε2. Si le seuil ε2 n'est pas atteint, l'estimateur à long terme bal est mis à jour avec la valeur de l'estimateur interne bil à l'étape 35. Sinon, l'estimateur à long terme bal reste inchangé. On évite ainsi que de brutales variations dues à un signal de parole conduisent à une mise à jour de l'estimateur de bruit.If step 27 shows that ba i < E n, i , the counter b i is compared with a limit value bmax in step 29. If b j > bmax, the signal is considered to be too stationary to support vocal activity. The aforementioned step 28, which amounts to considering that the frame contains only noise, is then executed. If b i ≤bmax in step 29, the internal estimator bi i is calculated in step 33 according to: bi i = (1- Bm ). E or + B m . ba i In this formula, Bm represents an update coefficient between 0.90 and 1. Its value differs depending on the state of a voice activity detection automaton (steps 30 to 32). This state δ n-1 is that determined during the processing of the previous frame. If the automaton is in a speech detection state (δ n-1 = 2 in step 30), the coefficient Bm takes a value Bmp very close to 1 so that the noise estimator is very slightly updated in the presence of speech. Otherwise, the coefficient Bm takes a lower value Bms, to allow a more significant update of the noise estimator in the phase of silence. In step 34, the difference ba i -bl i between the long-term estimator and the internal noise estimator is compared to a threshold ε2. If the threshold ε2 is not reached, the long-term estimator ba l is updated with the value of the internal estimator bi l in step 35. Otherwise, the long-term estimator ba l remains unchanged . This avoids that sudden variations due to a speech signal lead to an update of the noise estimator.

Après avoir obtenu les grandeurs ρi, le module 15 procède aux décisions d'activité vocale à l'étape 37. Le module 15 met d'abord à jour l'état de l'automate de détection selon la grandeur ρ0 calculée pour l'ensemble de la bande du signal. Le nouvel état δn de l'automate dépend de l'état précédent δn-1 et de ρ0, de la manière représentée sur la figure 4.After having obtained the quantities ρ i , the module 15 proceeds to the voice activity decisions in step 37. The module 15 first updates the state of the detection automaton according to the quantity ρ 0 calculated for l of the signal band. The new state δ n of the automaton depends on the previous state δ n-1 and on ρ 0 , as shown in Figure 4.

Quatre états sont possibles : δ=0 détecte le silence, ou absence de parole ; δ=2 détecte la présence d'une activité vocale ; et les états δ=1 et δ=3 sont des états intermédiaires de montée et de descente. Lorsque l'automate est dans l'état de silence (δn-1=0), il y reste si ρ0 ne dépasse pas un premier seuil SE1, et il passe dans l'état de montée dans le cas contraire. Dans l'état de montée (δn-1=1), il revient dans l'état de silence si ρ0 est plus petit que le seuil SE1, il passe dans l'état de parole si ρ0 est plus grand qu'un second seuil SE2 plus grand que le seuil SE1, et il reste dans l'état de montée si SE1≤ ρ0≤SE2. Lorsque l'automate est dans l'état de parole (δn-1=2), il y reste si ρ0 dépasse un troisième seuil SE3 plus petit que le seuil SE2, et il passe dans l'état de descente dans le cas contraire. Dans l'état de descente (δn-1=3), l'automate revient dans l'état de parole si ρ0 est plus grand que le seuil SE2, il revient dans l'état de silence si ρ0 est en deçà d'un quatrième seuil SE4 plus petit que le seuil SE2, et il reste dans l'état de descente si SE4≤ ρ0≤SE2.Four states are possible: δ = 0 detects silence, or absence of speech; δ = 2 detects the presence of voice activity; and the states δ = 1 and δ = 3 are intermediate states of ascent and descent. When the automaton is in the state of silence (δ n-1 = 0), it remains there if ρ 0 does not exceed a first threshold SE1, and it goes into the state of ascent otherwise. In the rising state (δ n-1 = 1), it returns to the state of silence if ρ 0 is smaller than the threshold SE1, it goes into the speaking state if ρ 0 is greater than a second threshold SE2 greater than the threshold SE1, and it remains in the rising state if SE1≤ ρ 0 ≤SE2. When the automaton is in the speech state (δ n-1 = 2), it remains there if ρ 0 exceeds a third threshold SE3 smaller than the threshold SE2, and it goes into the descent state in the case opposite. In the descending state (δ n-1 = 3), the automaton returns to the speaking state if ρ 0 is greater than the threshold SE2, it returns to the silent state if ρ 0 is below a fourth threshold SE4 smaller than the threshold SE2, and it remains in the descending state if SE4≤ ρ 0 ≤SE2.

A l'étape 37, le module 15 calcule également les degrés d'activité vocale γn,i dans chaque bande i≥1. Ce degré γn,i est de préférence un paramètre non binaire, c'est-à-dire que la fonction γn,i = g(ρi) est une fonction variant continûment entre 0 et 1 en fonction des valeurs prises par la grandeur ρi. Cette fonction a par exemple l'allure représentée sur la figure 5.In step 37, the module 15 also calculates the degrees of vocal activity γ n, i in each band i≥1. This degree γ n, i is preferably a non-binary parameter, that is to say that the function γ n, i = g (ρ i ) is a function continuously varying between 0 and 1 depending on the values taken by the magnitude ρ i . This function has for example the appearance shown in FIG. 5.

Le module 16 calcule les estimations du bruit par bande, qui seront utilisées dans le processus de débruitage, en utilisant les valeurs successives des composantes Sn,i et des degrés d'activité vocale γn,i. Ceci correspond aux étapes 40 à 42 de la figure 3. A l'étape 40, on détermine si l'automate de détection d'activité vocale vient de passer de l'état de montée à l'état de parole. Dans l'affirmative, les deux dernières estimations B and n -1, i et B and n- 2 ,i précédemment calculées pour chaque bande i≥1 sont corrigées conformément à la valeur de l'estimation précédente B and n -3, i . Cette correction est effectuée pour tenir compte du fait que, dans la phase de montée (δ=1), les estimations à long terme de l'énergie du bruit dans le processus de détection d'activité vocale (étapes 30 à 33) ont pu être calculées comme si le signal ne comportait que du bruit (Bm=Bms), de sorte qu'elles risquent d'être entachées d'erreur.Module 16 calculates the band noise estimates, which will be used in the denoising process, using the successive values of the components S n, i and the degrees of voice activity γ n, i . This corresponds to steps 40 to 42 of FIG. 3. In step 40, it is determined whether the voice activity detection machine has just gone from the rising state to the speaking state. If so, the last two estimates B and n -1, i and B and n- 2 , i previously calculated for each band i≥1 are corrected in accordance with the value of the previous estimate B and n -3, i . This correction is made to account for the fact that, in the ascent phase (δ = 1), the long-term noise energy estimates in the voice activity detection process (steps 30 to 33) may have been be calculated as if the signal contained only noise (Bm = Bms), so that they risk being tainted with error.

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

Figure 00100001
Figure 00110001
ou λB désigne un facteur d'oubli tel que 0<λB<1. La formule (6) met en évidence la prise en compte du degré d'activité vocale non binaire γn,i.In step 42, the module 16 updates the noise estimates per band according to the formulas:
Figure 00100001
Figure 00110001
where λ B denotes a forgetting factor such as 0 <λ B <1. Formula (6) shows how the degree of non-binary vocal activity γ n, i is taken into account.

Comme indiqué précédemment, les estimations a long terme du bruit B andn , l font l'objet d'une surestimation, par un module 45 (figure 1), avant de procéder au débruitage par soustraction spectrale non linéaire. Le module 45 calcule le coefficient de surestimation α ' / n,i precédemment evoqué, ainsi qu'une estimation majorée B and ' / n,i qui correspond essentiellement à α ' / n,i. B and n , i .As indicated previously, the long-term noise estimates B and n , l are overestimated, by a module 45 (FIG. 1), before proceeding to denoising by nonlinear spectral subtraction. Module 45 calculates the overestimation coefficient α '/ n, i previously mentioned, as well as an increased estimate B and' / n, i which essentially corresponds to α '/ n, i . B and n , i .

L'organisation du module de surestimation 45 est représentée sur la figure 6. L'estimation majorée B and ' / n,i est obtenue en combinant l'estimation à long terme B andn,i et une mesure ΔB max / n,i de la variabilité de la composante du bruit dans la bande i autour de son estimation à long terme. Dans l'exemple considéré, cette combinaison est, pour l'essentiel, une simple somme réalisée par un additionneur 46. Ce pourrait également être une somme pondérée.The organization of the overestimation module 45 is shown in FIG. 6. The enhanced estimate B and '/ n, i is obtained by combining the long-term estimate B and n, i and a measure ΔB max / n, i the variability of the noise component in band i around its long-term estimate. In the example considered, this combination is essentially a simple sum made by an adder 46. It could also be a weighted sum.

Le coefficient de surestimation α ' / n,i est égal au rapport entre la somme B and n , i + ΔB max / n,i délivrée par l'additionneur 46 et l'estimation à long terme retardée B and n -τ3, i (diviseur 47), plafonné à une valeur limite αmax, par exemple αmax=4 (bloc 48). Le retard τ3 sert à corriger le cas échéant, dans les phases de montée (δ=1), la valeur du coefficient de surestimation α ' / n,i, avant que les estimations à long terme aient été corrigées par les étapes 40 et 41 de la figure 3 (par exemple τ3=3). The overestimation coefficient α '/ n, i is equal to the ratio between the sum B and n , i + Δ B max / n, i delivered by the adder 46 and the delayed long-term estimate B and n -τ3, i (divider 47), capped at a limit value α max , for example α max = 4 (block 48). The delay τ3 is used to correct, if necessary, in the rise phases (δ = 1), the value of the overestimation coefficient α '/ n, i , before the long-term estimates have been corrected by steps 40 and 41 in Figure 3 (for example τ3 = 3).

L'estimation majorée B and ' / n,i est finalement prise éqale à α ' / n,i. B andn-τ 3, i (multiplieur 49).The increased estimate B and '/ n, i is finally taken equal to α' / n, i . B and n-τ 3, i (multiplier 49).

La mesure ΔB max / n,i de la variabilité du bruit reflète la variance de l'estimateur de bruit. Elle est obtenue en fonction des valeurs de Sn,i et de B andn,i calculées pour un certain nombre de trames précédentes sur lesquelles le signal de parole ne présente pas d'activité vocale dans la bande i. C'est une fonction des écarts |Sn-k , i - B andn-k,i| calculés pour un nombre K de trames de silence (n-k≤n). Dans l'exemple représenté, cette fonction est simplement le maximum (bloc 50). Pour chaque trame n, le degré d'activité vocale γn,i est comparé à un seuil (bloc 51) pour décider si l'écart |Sn , i - B andn,i |, calculé en 52-53, doit ou non être chargé dans une file d'attente 54 de K emplacements organisée en mode premier entré-premier sorti (FIFO). Si γn,i ne dépasse pas le seuil (qui peut être égal à 0 si la fonction g() a la forme de la figure 5), la FIFO 54 n'est pas alimentée, tandis qu'elle l'est dans le cas contraire. La valeur maximale contenue dans la FIFO 54 est alors fournie comme mesure de variabilité ΔB max / n,i.The measure ΔB max / n, i of the noise variability reflects the variance of the noise estimator. It is obtained as a function of the values of S n, i and of B and n, i calculated for a certain number of previous frames on which the speech signal does not present any vocal activity in the band i. It is a function of the deviations | S nk , i - B and nk, i | calculated for a number K of frames of silence (nk≤n). In the example shown, this function is simply the maximum (block 50). For each frame n, the degree of vocal activity γ n, i is compared to a threshold (block 51) to decide whether the deviation | S n , i - B and n, i |, calculated in 52-53, may or may not be loaded into a queue 54 of K locations organized in first in first out (FIFO) mode. If γ n, i does not exceed the threshold (which can be equal to 0 if the function g () has the form of FIG. 5), the FIFO 54 is not supplied, while it is in the opposite case. The maximum value contained in FIFO 54 is then provided as a measure of variability ΔB max / n, i .

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

Figure 00120001
The measure of variability ΔB max / n, i can, as a variant, be obtained as a function of the values S n, f (and not S n, i ) and B and n , i . We then proceed in the same way, except that FIFO 54 does not contain | S n - k , i - B and nk , i | for each of the bands i, but rather
Figure 00120001

Grâce aux estimations indépendantes des fluctuations à long terme du bruit B and n,i et de sa variabilité à court terme ΔB max / n,i, l'estimateur majoré B and ' / n,i procure une excellente robustesse aux bruits musicaux du procédé de débruitage.Thanks to independent estimates of long-term fluctuations in noise B and n, i and its short-term variability Δ B max / n, i , the enhanced estimator B and '/ n, i provides excellent robustness to the musical noises of the denoising process.

Une première phase de la soustraction spectrale est réalisée par le module 55 représenté sur la figure 1. Cette phase fournit, avec la résolution des bandes 1 (1≤i≤1), la réponse en fréquence H 1 / n,i d'un premier filtre do débruitage, en fonction des composantes Sn,i et B and n,i et des coefficients de surestimation α ' / n,i. Ce calcul peut être effectué pour chaque bande i selon la formule :

Figure 00130001
où τ4 est un retard entier déterminé tel que τ4≥0 (par exemple τ4=0). Dans l'expression (7), le coefficient β 1 / i représente, comme le coefficient βpi de la formule (3), un plancher servant classiquement à éviter les valeurs négatives ou trop faibles du signal débruité.A first phase of the spectral subtraction is carried out by the module 55 shown in FIG. 1. This phase provides, with the resolution of the bands 1 (1 i i 1 1), the frequency response H 1 / n, i of first denoising filter, as a function of the components S n, i and B and n, i and the overestimation coefficients α '/ n, i . This calculation can be performed for each band i according to the formula:
Figure 00130001
where τ4 is a determined integer delay such as τ4≥0 (for example τ4 = 0). In expression (7), the coefficient β 1 / i represents, like the coefficient β p i of formula (3), a floor conventionally used to avoid negative or too low values of the denoised signal.

De facon connue (EP-A-0 534 837), le coefficient de surestimation αn,i pourrait être remplacé dans la formule (7) par un autre coefficient égal à une fonction de α ' / n,i et d'une estimation du rapport signal-sur-bruit (par exemple Sn,i /B and n,i ), cette fonction étant décroissante selon la valeur estimée du rapport signal-sur-bruit. Cette fonction est alors égale à α ' / n,i pour les valeurs les plus faibles du rapport signal-sur-bruit. En effet, lorsque le signal est très bruité, il n'est a priori pas utile de diminuer le facteur de surestimation. Avantageusement, cette fonction décroít vers zéro pour les valeurs les plus élevées du rapport signal/bruit. Ceci permet de protéger les zones les plus énergétiques du spectre, où le signal de parole est le plus significatif, la quantité soustraite du signal tendant alors vers zéro.As is known (EP-A-0 534 837), the overestimation coefficient α n, i could be replaced in formula (7) by another coefficient equal to a function of α '/ n, i and of an estimate of the signal-to-noise ratio (for example S n, i / B and n, i ), this function decreasing according to the estimated value of the signal-to-noise ratio. This function is then equal to α '/ n, i for the lowest values of the signal-to-noise ratio. Indeed, when the signal is very noisy, it is a priori not useful to reduce the overestimation factor. Advantageously, this function decreases to zero for the highest values of the signal / noise ratio. This protects the most energetic areas of the spectrum, where the speech signal is most significant, the amount subtracted from the signal then tending towards zero.

Cette stratégie peut être affinée en l'appliquant de manière sélective aux harmoniques de la fréquence tonale (« pitch ») du signal de parole lorsque celui-ci présente une activité vocale.This strategy can be refined by applying it selectively to frequency harmonics pitch of the speech signal when it has voice activity.

Ainsi, dans la réalisation représentée sur la figure 1, une seconde phase de débruitage est réalisée par un module 56 de protection des harmoniques. Ce module calcule, avec la résolution de la transformée de Fourier, la réponse en fréquence H 2 / n,f d'un second filtre de débruitage en fonction des paramètres H 1 / n,i, α ' / n,i, B andn,i , δn, Sn,i et de la fréquence tonale fp=Fe/Tp calculée en dehors des phases de silence par un module d'analyse harmonique 57. En phase de silence (δn=0), le module 56 n'est pas en service, c'est-à-dire que H 2 / n,f = H 1 / n,i pour chaque fréquence f d'une bande i. Le module 57 peut appliquer toute méthode connue d'analyse du signal de parole de la trame pour déterminer la période Tp, exprimée comme un nombre entier ou fractionnaire d'échantillons, par exemple une méthode de prédiction linéaire.Thus, in the embodiment shown in FIG. 1, a second denoising phase is carried out by a module 56 for protecting harmonics. This module calculates, with the resolution of the Fourier transform, the frequency response H 2 / n, f of a second denoising filter as a function of the parameters H 1 / n, i , α '/ n, i , B and n, i , δ n , S n, i and the tone frequency f p = F e / T p calculated outside the phases of silence by a harmonic analysis module 57. In the phase of silence (δ n = 0) , the module 56 is not in service, that is to say that H 2 / n, f = H 1 / n, i for each frequency f of a band i. The module 57 can apply any known method of analysis of the speech signal of the frame to determine the period T p , expressed as an integer or fractional number of samples, for example a linear prediction method.

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

Figure 00140001
The protection provided by the module 56 may consist in carrying out, for each frequency f belonging to a band i:
Figure 00140001

Δf=Fe/N représente la résolution spectrale de la transformée de Fourier. Lorsque H 2 n , f =1, la quantité soustraite de la composante Sn,f sera nulle. Dans ce calcul, les coefficients de plancher β 2 / i (par exemple β 2 / i = β 1 / i expriment le fait que certaines harmoniques de la fréquence tonale fp peuvent être masquées par du bruit, de sorte qu'il n'est pas utile de les protéger.Δf = F e / N represents the spectral resolution of the Fourier transform. When H 2 n , f = 1, the quantity subtracted from the component S n, f will be zero. In this calculation, the floor coefficients β 2 / i (for example β 2 / i = β 1 / i express the fact that certain harmonics of the tonal frequency f p can be masked by noise, so that it doesn ' is not worth protecting them.

Cette stratégie de protection est de préférence appliquée pour chacune des fréquences les plus proches des harmoniques de fp, c'est-à-dire pour η entier quelconque.This protection strategy is preferably applied for each of the frequencies closest to the harmonics of f p , that is to say for any arbitrary integer.

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

Figure 00150001
c'est-à-dire remplacer la condition (9) ci-dessus par :
Figure 00150002
Cette façon de procéder (condition (9')) présente un intérêt particulier lorsque les valeurs de η peuvent être grandes, notamment dans le cas où le procédé est utilisé dans un système à bande élargie.If we designate by δf p the frequency resolution with which the analysis module 57 produces the estimated tonal frequency f p , that is to say that the real tonal frequency is between f p -δf p / 2 and f p + δf p / 2, then the difference ink the η-th harmonic of the real tonal frequency is its estimate η × f p (condition (9)) can go up to ± η × δ p / 2. For high values of η, this difference can be greater than the spectral half-resolution Δf / 2 of the Fourier transform. To take account of this uncertainty and to guarantee the good protection of the harmonics of the real tonal frequency, we can protect each of the frequencies of the interval
Figure 00150001
i.e. replace condition (9) above with:
Figure 00150002
This way of proceeding (condition (9 ')) is of particular interest when the values of η can be large, in particular in the case where the method is used in a broadband system.

Pour chaque fréquence protégée, la réponse en fréquence corrigée H 2 / n,f peut être égale à 1 comme indiqué ci-dessus, ce qui correspond à la soustraction d'une quantité nulle dans le cadre de la soustraction spectrale, c'est-à-dire à une protection complète de la fréquence en question. Plus généralement, cette réponse en fréquence corrigée H 2 / n,f pourrait être prise égale à une valeur comprise entre 1 et H 1 / n,f selon le degré de protection souhaité, ce qui correspond à la soustraction d'une quantité inférieure à celle qui serait soustraite si la fréquence en question n'était pas protégée.For each protected frequency, the corrected frequency response H 2 / n, f can be equal to 1 as indicated above, which corresponds to the subtraction of a zero quantity in the context of spectral subtraction, that is to say ie full protection of the frequency in question. More generally, this corrected frequency response H 2 / n, f could be taken equal to a value between 1 and H 1 / n, f depending on the degree of protection desired, which corresponds to the subtraction of an amount less than which would be subtracted if the frequency in question was not protected.

Les composantes spectrales S 2 / n,f d'un signal débruité sont calculées par un multiplieur 58 : S 2 n,f = H 2 n,f .S n,f The spectral components S 2 / n, f of a denoised signal are calculated by a multiplier 58: S 2 not , f = H 2 not , f . S not , f

Ce signal S 2 / n,f est fourni à un module 60 qui calcule, pour chaque trame n, une courbe de masquage en appliquant un modèle psychoacoustique de perception auditive par l'oreille humaine.This signal S 2 / n, f is supplied to a module 60 which calculates, for each frame n, a masking curve by applying a psychoacoustic model of auditory perception by the human ear.

Le phénomène de masquage est un principe connu du fonctionnement de l'oreille humaine. Lorsque deux fréquences sont entendues simultanément, il est possible que l'une des deux ne soit plus audible. On dit alors qu'elle est masquée.The masking phenomenon is a principle known from functioning of the human ear. When two frequencies are heard simultaneously, it is possible that one of the two is no longer audible. We say then that it is hidden.

Il existe différentes méthodes pour calculer des courbes de masquage. On peut par exemple utiliser celle développée par J.D. Johnston («Transform Coding of Audio Signals Using Perceptual Noise Criteria », IEEE Journal on Selected Area in Communications, Vol. 6, No. 2, février 1988). Dans cette méthode, on travaille dans l'échelle fréquentielle des barks. La courbe de masquage est vue comme la convolution de la fonction d'étalement spectral de la membrane basilaire dans le domaine bark avec le signal excitateur, constitué dans la présente application par le signal S 2 / n,f. La fonction d'étalement spectral peut être modélisée de la manière représentée sur la figure 7. Pour chaque bande de bark, on calcule la contribution des bandes inférieures et supérieures convoluées par la fonction d'étalement de la membrane basilaire :

Figure 00170001
où les indices q et q' désignent les bandes de bark (0 ≤ q, q' ≤ Q), et S 2 / n,q, représente la moyenne des composantes S 2 / n,f du signal excitateur débruité pour les fréquences discrètes f appartenant à la bande de bark q'.There are different methods for calculating masking curves. One can for example use that developed by JD Johnston ("Transform Coding of Audio Signals Using Perceptual Noise Criteria", IEEE Journal on Selected Area in Communications, Vol. 6, No. 2, February 1988). In this method, we work in the frequency scale of the barks. The masking curve is seen as the convolution of the spectral spreading function of the basilar membrane in the bark domain with the excitatory signal, constituted in the present application by the signal S 2 / n, f . The spectral spreading function can be modeled as shown in Figure 7. For each bark band, we calculate the contribution of the upper and lower bands convoluted by the spreading function of the basilar membrane:
Figure 00170001
where the indices q and q 'denote the bark bands (0 ≤ q, q' ≤ Q), and S 2 / n, q , represents the mean of the components S 2 / n, f of the excitatory signal denoised for the discrete frequencies f belonging to the bark band q '.

Le seuil de masquage Mn,q est obtenu par le module 60 pour chaque bande de bark q, selon la formule : Mn,q = Cn,q/Rq où Rq dépend du caractère plus ou moins voisé du signal. De facon connue, une forme possible de Rq est : 10.log10(Rq) = (A+q).χ + B.(1-χ) avec A=14,5 et B=5,5. χ désigne un degré de voisement du signal de parole, variant entre zéro (pas de voisement) et 1 (signal fortement voisé). Le paramètre χ peut être de la forme connue :

Figure 00170002
où SFM représente, en décibels, le rapport entre la moyenne arithmétique et la moyenne géométrique de l'énergie des bandes de bark, et SFMmax=-60 dB.The masking threshold M n, q is obtained by the module 60 for each bark band q, according to the formula: M n, q = C n, q / R q where R q depends on the more or less voiced character of the signal. As is known, a possible form of R q is: 10.log 10 (R q ) = (A + q) .χ + B. (1-χ) with A = 14.5 and B = 5.5. χ designates a degree of voicing of the speech signal, varying between zero (no voicing) and 1 (strongly voiced signal). The parameter χ can be of the known form:
Figure 00170002
where SFM represents, in decibels, the ratio between the arithmetic mean and the geometric mean of the energy of the bark bands, and SFM max = -60 dB.

Le système de débruitage comporte encore un module 62 qui corrige la réponse en fréquence du filtre de débruitage, en fonction de la courbe de masquage Mn,q calculée par le module 60 et des estimations majorées B and ' / n,i , calculées par le module 45. Le module 62 décide du niveau de débruitage qui doit réellement être atteint.The denoising system also includes a module 62 which corrects the frequency response of the denoising filter, as a function of the masking curve M n, q calculated by the module 60 and of the increased estimates B and '/ n, i , calculated by the module 45. The module 62 decides the level of denoising which must really be reached.

En comparant l'enveloppe de l'estimation majorée du bruit avec l'enveloppe formée par les seuils de masquage Mn,q, on décide de ne débruiter le signal que dans la mesure où l'estimation majorée B and ' / n,i dépasse la courbe de masquage. Ceci évite de supprimer inutilement du bruit masqué par de la parole.By comparing the envelope of the estimate increased by the noise with the envelope formed by the masking thresholds M n, q , it is decided to denoise the signal only insofar as the estimate increased B and '/ n, i exceeds the masking curve. This avoids unnecessarily removing noise masked by speech.

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

Figure 00180001
The new response H 3 / n, f , for a frequency f belonging to the band i defined by the module 12 and to the banae of bark q, thus depends on the relative difference between the increased estimate B and '/ n, i of the corresponding spectral component of the noise and the masking curve M n, q , as follows:
Figure 00180001

En d'autres termes, la quantité soustraite d'une composante spectrale Sn,f, dans le processus de soustraction spectrale ayant la réponse fréquentielle H 3 / n,f, est sensiblement égale au minimum entre d'une part la quantité soustraite de cette composante spectrale dans le processus de soustraction spectrale ayant la réponse fréquentielle H 2 / n,f, et d'autre part la fraction de l'estimation majorée B and ' / n,i de la composante spectrale correspondante du bruit qui, le cas échéant, dépasse la courbe de masquage Mn,q.In other words, the quantity subtracted from a spectral component S n, f , in the process of spectral subtraction having the frequency response H 3 / n, f , is substantially equal to the minimum between on the one hand the quantity subtracted from this spectral component in the spectral subtraction process having the frequency response H 2 / n, f , and on the other hand the fraction of the increased estimate B and '/ n, i of the corresponding spectral component of the noise which, if if necessary, exceeds the masking curve M n, q .

La figure 8 illustre le principe de la correction appliquée par le module 62. Elle montre schématiquement un exemple de courbe de masquage Mn,q calculée sur la base des composantes spectrales S 2 / n,f du signal débruité, ainsi que l'estimation majorée B and ' / n,i du spectre du bruit. La quantité finalement soustraite des composantes Sn,f sera celle représentée par les zones hachurées, c'est-à-dire limitée à la fraction de l'estimation majorée B and ' / n,i des composantes spectrales du bruit qui dépasse la courbe de masquage. FIG. 8 illustrates the principle of the correction applied by the module 62. It schematically shows an example of masking curve M n, q calculated on the basis of the spectral components S 2 / n, f of the noise-suppressed signal, as well as the estimation plus B and '/ n, i of the noise spectrum. The quantity finally subtracted from the components S n, f will be that represented by the hatched areas, that is to say limited to the fraction of the increased estimate B and '/ n, i of the spectral components of the noise which exceeds the curve masking.

Cette soustraction est efrectuée en multipliant la réponse fréquentielle H 3 / n , fdu filtre de débruitage par les composantes spectrales Sn,f du signal de parole (multiplieur 64). Un module 65 reconstruit alors le signal débruité dans le domaine temporel, en opérant la transformée de Fourier rapide inverse (TFRI) inverse des échantillons de fréquence S 3 / n , f délivrés par le multiplieur 64. Pour chaque trame, seuls les N/2=128 premiers échantillons du signal produit par le module 65 sont délivrés comme signal débruité final s3, après reconstruction par addition-recouvrement avec les N/2=128 derniers échantillons de la trame précédente (module 66).This subtraction is carried out by multiplying the frequency response H 3 / n , f of the denoising filter by the spectral components S n, f of the speech signal (multiplier 64). A module 65 then reconstructs the denoised signal in the time domain, by operating the inverse fast Fourier transform (TFRI) which reverses samples of frequency S 3 / n , f delivered by the multiplier 64. For each frame, only the N / 2 = 128 first samples of the signal produced by module 65 are delivered as final denoised signal s 3 , after reconstruction by addition-overlap with the N / 2 = 128 last samples of the previous frame (module 66).

La figure 9 montre une forme de réalisation préférée d'un système de débruitage mettant en oeuvre l'invention. Ce système comporte un certain nombre d'éléments semblables à des éléments correspondants du système de la figure 1, pour lesquels on a utilisé les mêmes références numériques. Ainsi, les modules 10, 11, 12, 15, 16, 45 et 55 fournissent notamment les quantités Sn,i, B and n , i , α ' / n,i, B and ' / n,i et H 1 / n,f pour effectuer le débruitage sélectif.FIG. 9 shows a preferred embodiment of a denoising system implementing the invention. This system comprises a certain number of elements similar to corresponding elements of the system of FIG. 1, for which the same reference numbers have been used. Thus, modules 10, 11, 12, 15, 16, 45 and 55 provide in particular the quantities S n, i , B and n , i , α '/ n, i , B and' / n, i and H 1 / n, f to perform selective denoising.

La résolution en fréquence de la transformée de Fourier rapide 11 est une limitation du système de la figure 1. En effet, la fréquence faisant l'objet de la protection par le module 56 n'est pas nécessairement la fréquence tonale précise fp, mais la fréquence la plus proche de celle-ci dans le spectre discret. Dans certains cas, on peut alors protéger des harmoniques relativement éloignées de celle de la fréquence tonale. Le système de la figure 9 pallie cet inconvénient grâce à un conditionnement approprié du signal de parole.The frequency resolution of the fast Fourier transform 11 is a limitation of the system of FIG. 1. In fact, the frequency subject to protection by the module 56 is not necessarily the precise tonal frequency f p , but the frequency closest to it in the discrete spectrum. In some cases, it is then possible to protect harmonics relatively far from that of the tone frequency. The system of FIG. 9 overcomes this drawback thanks to an appropriate conditioning of the speech signal.

Dans ce conditionnement, on modifie la fréquence d'échantillonnage du signal de telle sorte que la période 1/fp couvre exactement un nombre entier de temps d'échantillon du signal conditionné. In this conditioning, the sampling frequency of the signal is modified so that the period 1 / f p covers exactly an integer number of sample times of the conditioned signal.

De nombreuses méthodes d'analyse harmonique pouvant erre mises en oeuvre par le module 57 sont capables de fournir une valeur fractionnaire du retard Tp, exprimé en nombre d'échantillons à la fréquence d'échantillonnage initiale Fe. On choisit alors une nouvelle fréquence d'échantillonnage fe de telle sorte qu'elle soit égale à un multiple entier de la fréquence tonale estimée, soit fe=p.fp=p.Fe/Tp=K.Fe, avec p entier. Afin de ne pas perdre d'échantillons de signal, il convient que fe soit supérieure à Fe. On peut notamment imposer qu'elle soit comprise entre Fe et 2Fe (1≤K≤2), pour faciliter la mise en oeuvre du conditionnement.Many harmonic analysis methods that can be implemented by the module 57 are capable of providing a fractional value of the delay T p , expressed in number of samples at the initial sampling frequency F e . A new sampling frequency f e is then chosen so that it is equal to an integer multiple of the estimated tone frequency, ie f e = pf p = pF e / T p = KF e , with p integer. In order not to lose signal samples, f e should be greater than F e . One can in particular impose that it is between F e and 2Fe (1 K K 2 2), to facilitate the implementation of the packaging.

Bien entendu, si aucune activité vocale n'est détectée sur la trame courante (dn=0), ou si le retard Tp estimé par le module 57 est entier, il n'est pas nécessaire de conditionner le signal.Of course, if no voice activity is detected on the current frame (d n = 0), or if the delay T p estimated by the module 57 is whole, it is not necessary to condition the signal.

Afin que chacune des harmoniques de la fréquence tonale corresponde également à un nombre entier d'échantillons du signal conditionné, l'entier p doit être un diviseur de la taille N de la fenêtre de signal produite par le module 10 : N=αp, avec α entier. Cette taille N est usuellement une puissance de 2 pour la mise en oeuvre de la TFR. Elle est de 256 dans l'exemple considéré.So that each of the frequency harmonics tonal also corresponds to a whole number samples of the conditioned signal, the integer p must be a divider of the size N of the signal window produced by module 10: N = αp, with α integer. This size N is usually a power of 2 for putting implementation of the TFR. It is 256 in the example considered.

La résolution spectrale Δf de la transformée de Fourier discrète du signal conditionné est donnée par Δf=p.fp/N=fp/α. On a donc intérêt à choisir p petit de façon à maximiser α, mais suffisamment grand pour suréchantillonner. Dans l'exemple considéré, où Fe=8 kHz et N=256, les valeurs choisies pour les paramètres p et α sont indiquées dans le tableau I. 500 Hz < fp < 1000 Hz 8 < Tp < 16 p = 16 α = 16 250 Hz < fp < 500 Hz 16 < Tp < 32 p = 32 α = 8 125 Hz < fp < 250 Hz 32 < Tp < 64 p = 64 α = 4 62,5 Hz < fp < 125 Hz 64 < Tp < 128 p = 128 α = 2 31,25 Hz < fp < 62,5 Hz 128 < Tp < 256 p = 256 α = 1 The spectral resolution Δf of the discrete Fourier transform of the conditioned signal is given by Δf = pf p / N = f p / α. It is therefore advantageous to choose p small so as to maximize α, but large enough to oversample. In the example considered, where F e = 8 kHz and N = 256, the values chosen for the parameters p and α are indicated in table I. 500 Hz <f p <1000 Hz 8 <T p <16 p = 16 α = 16 250 Hz <f p <500 Hz 16 <T p <32 p = 32 α = 8 125 Hz <f p <250 Hz 32 <T p <64 p = 64 α = 4 62.5 Hz <f p <125 Hz 64 <T p <128 p = 128 α = 2 31.25 Hz <f p <62.5 Hz 128 <T p <256 p = 256 α = 1

Ce choix est effectué par un module 70 selon la valeur du retard Tp fournie par le module d'analyse harmonique 57. Le module 70 fournit le rapport K entre les fréquences d'échantillonnage à trois modules de changement de fréquence 71, 72, 73.This choice is made by a module 70 according to the value of the delay T p supplied by the harmonic analysis module 57. The module 70 provides the ratio K between the sampling frequencies to three frequency change modules 71, 72, 73 .

Le module 71 sert à transformer les valeurs Sn,i, B andn , i , α ' / n,i, B and ' / n,i et H 1 / n,f, relatives aux bandes i définies par le module 12, dans l'échelle des fréquences modifiées (fréquence d'échantillonnage fe). Cette transformation consiste simplement à dilater les bandes i dans le facteur K. Les valeurs ainsi transformées sont fournies au module 56 de protection des harmoniques.The module 71 is used to transform the values S n, i , B and n , i , α '/ n, i , B and ' / n, i and H 1 / n, f , relating to the bands i defined by the module 12 , in the scale of modified frequencies (sampling frequency f e ). This transformation consists simply in dilating the bands i in the factor K. The values thus transformed are supplied to the module 56 for protecting harmonics.

Celui-ci opère alors de la même manière que précédemment pour fournir la réponse en fréquence H 2 / n,f du filtre de débruitage. Cette réponse H 2 / n,f est obtenue de la même manière que dans le cas de la figure 1 (conditions (8) et (9)), à cette différence près que, dans la condition (9), la fréquence tonale fp=fe/p est définie selon la valeur du retard entier p fourni par le module 70, la résolution en fréquence Δf étant également fournie par ce module 70.This then operates in the same manner as above to provide the frequency response H 2 / n, f of the denoising filter. This response H 2 / n, f is obtained in the same way as in the case of FIG. 1 (conditions (8) and (9)), except that in condition (9), the tonal frequency f p = f e / p is defined according to the value of the entire delay p supplied by the module 70, the frequency resolution Δf being also provided by this module 70.

Le module 72 procède au suréchantillonnage de la trame de N échantillons fournie par le module de fenêtrage 10. Le suréchantillonnage dans un facteur K rationnel (K=K1/K2) consiste a effectuer d'abord un suréchantillonnage dans le facteur entier K1, puis un sous-échantillonnage dans le facteur entier K2. Ces suréchantillonnage et sous-échantillonnage dans des facteurs entiers peuvent être effectués classiquement au moyen de bancs de filtres polyphase.The module 72 performs the oversampling of the frame of N samples provided by the windowing module 10. Oversampling in a rational K factor (K = K1 / K2) consists of first performing a oversampling in the integer factor K1, then a subsampling in the integer factor K2. These oversampling and subsampling in whole factors can be done classically at using polyphase filter banks.

La trame de signal conditionné s' fournie par le module 72 comporte KN échantillons à la fréquence fe. Ces échantillons sont adressés à un module 75 qui calcule leur transformée de Fourier. La transformation peut être effectuée à partir de deux blocs de N=256 échantillons : l'un constitué par les N premiers échantillons de la trame de longueur KN du signal conditionné s', et l'autre par les N derniers échantillons de cette trame. Les deux blocs présentent donc un recouvrement de (2-K)x100%. Pour chacun des deux blocs, on obtient un jeu de composantes de Fourier Sn,f. Ces composantes Sn,f sont fournies au muitiplieur 58, qui les multiplie par la réponse spectrale H 2 / n,f pour délivrer les composantes spectrales S 2 / n,f du premier signal débruité.The conditioned signal frame supplied by the module 72 includes KN samples at the frequency f e . These samples are sent to a module 75 which calculates their Fourier transform. The transformation can be carried out from two blocks of N = 256 samples: one consisting of the first N samples of the frame of length KN of the conditioned signal s', and the other of the last N samples of this frame. The two blocks therefore have an overlap of (2-K) x100%. For each of the two blocks, we obtain a set of Fourier components S n, f . These components S n, f are supplied to the multiplier 58, which multiplies them by the spectral response H 2 / n, f to deliver the spectral components S 2 / n, f of the first denoised signal.

Ces composantes S 2 / n,f sont adressées au module 60 qui calcule les courbes de masquage de la manière précédemment indiquée.These components S 2 / n, f are addressed to the module 60 which calculates the masking curves in the manner previously indicated.

De préférence, dans ce calcul des courbes de masquage, la grandeur χ désignant le degré de voisement du signal de parole (formule (13)) est prise de la forme χ=1-H, où H est une entropie de l'autocorrelation des composantes spectrales S 2 / n,f du signal conditionné débruité. Les autocorrelations A(k) sont calculées par un module 76, par exemple selon la formule :

Figure 00230001
Preferably, in this calculation of the masking curves, the quantity χ designating the degree of voicing of the speech signal (formula (13)) is taken from the form χ = 1-H, where H is an entropy of the autocorrelation of the spectral components S 2 / n, f of the denoised conditioned signal. The autocorrelations A (k) are calculated by a module 76, for example according to the formula:
Figure 00230001

Un module 77 calcule ensuite l'entropie normalisée H, et la fournit au module 60 pour le calcul de la courbe de masquage (voir S.A. McClellan et al : « Spectral Entropy : an Alternative Indicator for Rate Allocation ? », Proc. ICASSP'94, pages 201-204) :

Figure 00230002
A module 77 then calculates the normalized entropy H, and supplies it to module 60 for the calculation of the masking curve (see SA McClellan et al: “Spectral Entropy: an Alternative Indicator for Rate Allocation?”, Proc. ICASSP'94 , pages 201-204):
Figure 00230002

Grâce au conditionnement du signal, ainsi qu'à son débruitage par le filtre H, 2 / n,f l'entropie normalisée H constitue une mesure de voisement très robuste au bruit et aux variations de la fréquence tonale.Thanks to the conditioning of the signal, as well as to its denoising by the filter H , 2 / n, f the normalized entropy H constitutes a measurement of voicing very robust to noise and variations in the tonal frequency.

Le module de correction 62 opère de la même manière que celui du système de la figure 1, en tenant compte du bruit surestimé B and ' / n,i remis à l'échelle par le module de changement de fréquence 71. Il fournit la réponse en fréquence H 3 / n,f du filtre de débruitage définitif, qui est multipliée par les composantes spectrales Sn,f du signal conditionné par le multiplieur 64. Les composantes S 3 / n,f qui en résultent sont ramenées dans le domaine temporel par le module de TFRI 65. En sortie de cette TFRI 65, un module 80 combine, pour chaque trame, les deux blocs de signal issus du traitement des deux blocs recouvrants délivrés par la TFR 75. Cette combinaison peut consister en une somme avec pondération de Hamming des échantillons, pour former une trame de signal conditionné débruité de KN échantillons. The correction module 62 operates in the same way as that of the system in FIG. 1, taking into account the overestimated noise B and '/ n, i rescaled by the frequency change module 71. It provides the response in frequency H 3 / n, f of the final denoising filter, which is multiplied by the spectral components S n, f of the signal conditioned by the multiplier 64. The components S 3 / n, f which result therefrom are brought back into the time domain by the TFRI 65 module. At the output of this TFRI 65, a module 80 combines, for each frame, the two signal blocks resulting from the processing of the two overlapping blocks delivered by the TFR 75. This combination can consist of a weighted sum Hamming of samples, to form a denoised conditioned signal frame of KN samples.

Le signal conditionné débruité fourni par le module 80 fait l'objet d'un changement de fréquence d'échantillonnage par le module 73. Sa fréquence d'échantillonnage est ramenée à Fe = fe/K par les opérations inverses de celles effectuées par le module 75. Le module 73 délivre N=256 échantillons par trame. Après la reconstruction par addition-recouvrement avec les N/2=128 derniers échantillons de la trame précédente, seuls les N/2=128 premiers échantillons de la trame courante sont finalement conservés pour former le signal débruité final s3 (module 66).The denoised conditioned signal supplied by the module 80 is subject to a change in sampling frequency by the module 73. Its sampling frequency is reduced to F e = f e / K by the operations opposite to those performed by module 75. Module 73 delivers N = 256 samples per frame. After the reconstruction by addition-recovery with the N / 2 = 128 last samples of the previous frame, only the N / 2 = 128 first samples of the current frame are finally kept to form the final denoised signal s 3 (module 66).

Dans une forme de réalisation préférée, un module 82 géra les fenêtres formées par le module 10 et sauvegardées par le module 66, de facon telle qu'on sauvegarde un nombre M d'échantillons égal à un multiple entier de Tp=Fe/fp. On évite ainsi les problèmes de discontinuité de phase entre les trames. De façon correspondante, le module de gestion 82 commande le module de fenêtrage 10 pour que le recouvrement entre la trame courante et la prochaine corresponde à N-M. Il sera tenu de ce recouvrement de N-M échantillons dans la somme à recouvrement effectuée par le module 66 lors du traitement de la prochaine trame. A partir de la valeur de Tp fournie par le module d'analyse harmonique 57, le module 82 calcule le nombre d'échantillons à sauvegarder M=Tp×E[N/(2Tp)], E[] désignant la partie entière, et commande de facon correspondante les modules 10 et 66.In a preferred embodiment, a module 82 manages the windows formed by the module 10 and saved by the module 66, in such a way that a number M of samples is saved equal to an integer multiple of T p = F e / f p . This avoids the problems of phase discontinuity between the frames. Correspondingly, the management module 82 controls the windowing module 10 so that the overlap between the current frame and the next one corresponds to NM. This recovery of NM samples will be required in the recovery sum carried out by the module 66 during the processing of the next frame. From the value of T p supplied by the harmonic analysis module 57, the module 82 calculates the number of samples to be saved M = T p × E [N / (2T p )], E [] designating the part whole, and command modules 10 and 66 accordingly.

Dans le mode de réalisation qu'on vient de décrire, la fréquence tonale est estimée de façon moyenne sur la trame. Or la fréquence tonale peut varier quelque peu sur cette durée. Il est possible de tenir compte de ces variations dans le cadre de la présente invention, en conditionnant le signal de façon à obtenir artificiellement une fréquence tonale constante dans la trame.In the embodiment which we have just describe, the tone frequency is estimated in an average way on the frame. However the tonal frequency can vary some little over this period. It is possible to take into account these variations in the context of the present invention, in conditioning the signal so as to obtain artificially a constant tone frequency in the frame.

Pour cela, on a besoin que le module 57 d'analyse harmonique fournisse les intervalles de temps entre les ruptures consécutives du signal de parole attribuables à des fermetures de la glotte du locuteur intervenant pendant la durée de la trame. Des méthodes utilisables pour détecter de telles micro-ruptures sont bien connues dans le domaine de l'analyse harmonique des signaux de paroles. On pourra à cet égard consulter les articles suivants : M. BASSEVILLE et al., « Sequential detection of abrupt changes in spectral characteristics of digital signais », IEEE Trans. on Information Theory, 1983, Vol. IT-29, n°5, pages 708-723 ; R. ANDRE-OBRECHT, « A new statistical approach for the automatic segmentation of continuous speech signals », IEEE Trans. on Acous., Speech and Sig. Proc., Vol. 36, N°1, janvier 1988 ; et C. MURGIA et al., « An algorithm for the estimation of glottal closure instants using the sequential detection of abrupt changes in speech signals », Signal Processing VII, 1994, pages 1685-1688.For this, we need the analysis module 57 harmonic provides the time intervals between the consecutive breaks in speech signal due to closures of the glottis of the intervening speaker for the duration of the frame. Usable methods to detect such micro-ruptures are well known in the area of harmonic signal analysis lyrics. In this regard, we can consult the articles following: M. BASSEVILLE et al., “Sequential detection of abrupt changes in spectral characteristics of digital signed ”, IEEE Trans. on Information Theory, 1983, Vol. IT-29, No. 5, pages 708-723; R. ANDRE-OBRECHT, "A new statistical approach for the automatic segmentation of continuous speech signals ”, IEEE Trans. on Acous., Speech and Sig. Proc., Vol. 36, No. 1, January 1988; and C. MURGIA et al., "An algorithm for the estimation of glottal closure instants using the sequential detection of abrupt changes in speech signals ", Signal Processing VII, 1994, pages 1685-1688.

Le principe de ces méthodes est d'effectuer un test statistique entre deux modèles, l'un à court terme et l'autre à long terme. Les deux modèles sont des modèles adaptatifs de prédiction linéaire. La valeur de ce test statistique wm est la somme cumulée du rapport de vraisemblance a posteriori de deux distributions, corrigée par la divergence de Kullback. Pour une distribution de résidus ayant une statistique gaussienne, cette valeur wm est donnée par :

Figure 00250001
e 0 / m et σ 2 / 0 représentent le résidu calculé au moment de l'échantillon m de la trame et la variance du modèle à long terme, e 1 / m et σ 2 / 1 représentant de même le résidu et la variance du modèle à court terme. Plus les deux modèles sont proches, plus la valeur wm du test statistique est proche de 0. Par contre, lorsque les deux modèles sont éloignés l'un de l'autre, cette valeur wm devient négative, ce qui dénote une rupture R du signal.The principle of these methods is to perform a statistical test between two models, one in the short term and the other in the long term. Both models are adaptive linear prediction models. The value of this statistical test w m is the cumulative sum of the posterior likelihood ratio of two distributions, corrected by the Kullback divergence. For a distribution of residuals having a Gaussian statistic, this value w m is given by:
Figure 00250001
where e 0 / m and σ 2/0 represent the residue calculated at the time of the sample m of the frame and the variance of the long-term model, e 1 / m and σ 2/1 likewise representing the residue and the variance of the short term model. The closer the two models are, the more the value w m of the statistical test is close to 0. On the other hand, when the two models are distant from each other, this value w m becomes negative, which indicates a break R of the signal.

La figure 10 montre ainsi un exemple possible d'évolution de la valeur wm, montrant les ruptures R du signal de parole. Les intervalles de temps tr (r = 1,2,...) entre deux ruptures consécutives R sont calculés, et exprimés en nombre d'échantillons du signal de parole. Chacun de ces intervalles tr est inversement proportionnel à la fréquence tonale fp, qui est ainsi estimée localement : fp=Fe/tr sur le r-ième intervalle.FIG. 10 thus shows a possible example of evolution of the value w m , showing the breaks R of the speech signal. The time intervals t r (r = 1.2, ...) between two consecutive breaks R are calculated, and expressed in number of samples of the speech signal. Each of these intervals t r is inversely proportional to the tone frequency f p , which is thus estimated locally: f p = F e / t r over the r-th interval.

On peut alors corriger les variations temporelles de la fréquence tonale (c'est-à-dire le fait que les intervalles tr ne sont pas tous égaux sur une trame donnée), afin d'avoir une fréquence tonale constante dans chacune des trames d'analyse. Cette correction est effectuée par une modification de la fréquence d'échantillonnage sur chaque intervalle tr, de façon à obtenir, après suréchantillonnage, des intervalles constants entre deux ruptures glottiques. On modifie donc la durée entre deux ruptures en faisant un suréchantillonnage dans un rapport variable, de façon à se caler sur l'intervalle le plus grand. De plus, on fait en sorte de respecter la contrainte de conditionnement selon laquelle la fréquence de suréchantillonnage est multiple de la fréquence tonale estimée.We can then correct the temporal variations of the tone frequency (that is to say the fact that the intervals t r are not all equal on a given frame), in order to have a constant tone frequency in each of the frames d 'analysis. This correction is carried out by modifying the sampling frequency over each interval t r , so as to obtain, after oversampling, constant intervals between two glottal breaks. The duration between two breaks is therefore modified by oversampling in a variable ratio, so as to lock in on the largest interval. In addition, care is taken to comply with the conditioning constraint that the oversampling frequency is a multiple of the estimated tone frequency.

La figure 11 montre les moyens utilisés pour calculer le conditionnement du signal dans ce dernier cas. Le module 57 d'analyse harmonique est réalisé de façon à mettre en oeuvre la méthode d'analyse ci-dessus, et à fournir les intervalles tr relatifs à la trame de signal produite par le module 10. Pour chacun de ces intervalles, le module 70 (bloc 90 sur la figure 11) calcule le rapport de suréchantillonnage Kr=pr/tr, où l'entier pr est donné par la troisième colonne du tableau I lorsque tr prend les valeurs indiquées dans la deuxième colonne. Ces rapports de suréchantilionnage Kr sont fournis aux modules de changement de fréquence 72 et 73, pour que les interpolations soient effectuées avec le rapport d'échantillonnage Kr sur l'intervalle de temps correspondant tr.FIG. 11 shows the means used to calculate the conditioning of the signal in the latter case. The harmonic analysis module 57 is produced so as to implement the above analysis method, and to provide the intervals t r relative to the signal frame produced by the module 10. For each of these intervals, the module 70 (block 90 in FIG. 11) calculates the oversampling ratio K r = p r / t r , where the integer p r is given by the third column of table I when t r takes the values indicated in the second column . These oversampling reports K r are supplied to the frequency change modules 72 and 73, so that the interpolations are carried out with the sampling ratio K r over the corresponding time interval t r .

Le plus grand Tp des intervalles de temps tr fournis par le module 57 pour une trame est sélectionné par le module 70 (bloc 91 sur la figure 11) pour obtenir un couple p,α comme indiqué dans le tableau I. La fréquence d'échantillonnage modifiée est alors fe=p.Fe/Tp comme précédemment, la résolution spectrale Δf de la transformée de Fourier discrète du signal conditionné étant toujours donnée par Δf=Fe/(α.Tp). Pour le module de changement de fréquence 71, le rapport de suréchantillonnage K est donné par K=p/Tp (bloc 92). Le module 56 de protection des harmoniques de la fréquence tonale opère de la même manière que précédemment, en utilisant pour la condition (9) la résolution spectrale Δf fournie par le bloc 91 et la fréquence tonale fp=fe/p définie selon la valeur du retard entier p fournie par le bloc 91.The largest T p of the time intervals t r supplied by the module 57 for a frame is selected by the module 70 (block 91 in FIG. 11) to obtain a torque p, α as indicated in table I. The frequency d the modified sampling is then f e = pF e / T p as before, the spectral resolution Δf of the discrete Fourier transform of the conditioned signal being always given by Δf = F e /(α.T p ). For the frequency change module 71, the oversampling ratio K is given by K = p / T p (block 92). The module 56 for protecting the harmonics of the tone frequency operates in the same manner as above, using for condition (9) the spectral resolution Δf provided by the block 91 and the tone frequency f p = f e / p defined according to the value of the entire delay p supplied by block 91.

Cette forme de réalisation de l'invention implique également une adaptation du module 82 de gestion des fenêtres. Le nombre M d'échantillons du signal débruité à sauvegarder sur la trame courante correspond ici à un nombre entier d'intervalles de temps tr consécutifs entre deux ruptures glottiques (voir figure 10). Cette disposition évite les problèmes de discontinuité de phase entre trames, tout en tenant compte des variations possibles des intervalles de temps tr sur une trame.This embodiment of the invention also involves an adaptation of the window management module 82. The number M of samples of the denoised signal to be saved on the current frame here corresponds to an integer number of consecutive time intervals t r between two glottal breaks (see FIG. 10). This arrangement avoids the problems of phase discontinuity between frames, while taking into account the possible variations of the time intervals t r on a frame.

Claims (9)

  1. Method of conditioning a digital speech signal processed by successive frames, characterized in that harmonic analysis of the speech signal is performed to estimate a pitch frequency (fp) of the speech signal over each frame in which it features vocal activity, and in that, after estimating the pitch frequency of the speech signal over one frame, the speech signal of the frame is conditioned by oversampling it at an oversampling frequency (fe) which is an integer multiple of the estimated pitch frequency.
  2. Method according to claim 1, wherein spectral components (Sn,f) of the speech signal are computed by distributing the conditioned signal (s') into blocks of N samples transformed into the frequency domain, N being a predetermined integer, and wherein the ratio (p) between the oversampling frequency (fe) and the estimated pitch frequency is a factor of the number N.
  3. Method according to claim 2, wherein the number N is a power of 2.
  4. Method according to claim 2 or 3, wherein a degree of voicing (χ) of the speech signal is estimated over the frame from a computation of the entropy (H) of the autocorrelation of spectral components (S 2 / n,f) computed on the basis of the conditioned signal (s').
  5. Method according to claim 4, wherein the degree of voicing (χ) is measured on the basis of a normalised entropy H of the form:
    Figure 00310001
    where A(k) is the normalised autocorrelation defined by:
    Figure 00320001
    S 2 / n,f designating said spectral component of rank f computed on the basis of the oversampled signal.
  6. Method according to any one of the preceding claims, wherein, after processing each conditioned signal frame, a number (M) of signal samples supplied by such processing is retained which is equal to an integer multiple of the ratio (Tp) between the sampling frequency (Fe) and the estimated pitch frequency (fp).
  7. Method according to any one of claims 1 to 5, wherein the estimation of the pitch frequency of the speech signal over a frame includes the steps of:
    estimating time intervals (tr) between two consecutive breaks (R) of the signal which can be attributed to glottal closures of the speaker occurring during the frame, the estimated pitch frequency being inversely proportional to said time intervals;
    interpolating the speech signal in said time intervals, so that the conditioned signal (s') resulting from such interpolation has a constant time interval between two consecutive breaks.
  8. Method according to claim 7, wherein, after processing each frame, a number (M) of samples of the speech signal supplied by such processing is retained which corresponds to an integer number of estimated time intervals (tr).
  9. A device for conditioning a digital speech signal (s), comprising processing means arranged to implement a method according to any one of the preceding claims.
EP98943997A 1997-09-18 1998-09-16 Method and apparatus for conditioning a digital speech signal Expired - Lifetime EP1021805B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9711641A FR2768545B1 (en) 1997-09-18 1997-09-18 METHOD FOR CONDITIONING A DIGITAL SPOKEN SIGNAL
FR9711641 1997-09-18
PCT/FR1998/001978 WO1999014744A1 (en) 1997-09-18 1998-09-16 Method for conditioning a digital speech signal

Publications (2)

Publication Number Publication Date
EP1021805A1 EP1021805A1 (en) 2000-07-26
EP1021805B1 true EP1021805B1 (en) 2001-11-07

Family

ID=9511228

Family Applications (1)

Application Number Title Priority Date Filing Date
EP98943997A Expired - Lifetime EP1021805B1 (en) 1997-09-18 1998-09-16 Method and apparatus for conditioning a digital speech signal

Country Status (7)

Country Link
US (1) US6775650B1 (en)
EP (1) EP1021805B1 (en)
AU (1) AU9168798A (en)
CA (1) CA2304013A1 (en)
DE (1) DE69802431T2 (en)
FR (1) FR2768545B1 (en)
WO (1) WO1999014744A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1278185A3 (en) * 2001-07-13 2005-02-09 Alcatel Method for improving noise reduction in speech transmission
US7103539B2 (en) * 2001-11-08 2006-09-05 Global Ip Sound Europe Ab Enhanced coded speech
WO2004042722A1 (en) * 2002-11-07 2004-05-21 Samsung Electronics Co., Ltd. Mpeg audio encoding method and apparatus
PL2186090T3 (en) * 2007-08-27 2017-06-30 Telefonaktiebolaget Lm Ericsson (Publ) Transient detector and method for supporting encoding of an audio signal
WO2009059300A2 (en) * 2007-11-02 2009-05-07 Melodis Corporation Pitch selection, voicing detection and vibrato detection modules in a system for automatic transcription of sung or hummed melodies
US8924200B2 (en) * 2010-10-15 2014-12-30 Motorola Mobility Llc Audio signal bandwidth extension in CELP-based speech coder
EP2734997A4 (en) * 2011-07-20 2015-05-20 Tata Consultancy Services Ltd A method and system for detecting boundary of coarticulated units from isolated speech

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0287741B1 (en) * 1987-04-22 1993-03-31 International Business Machines Corporation Process for varying speech speed and device for implementing said process
US5384891A (en) * 1988-09-28 1995-01-24 Hitachi, Ltd. Vector quantizing apparatus and speech analysis-synthesis system using the apparatus
AU633673B2 (en) 1990-01-18 1993-02-04 Matsushita Electric Industrial Co., Ltd. Signal processing device
EP0459362B1 (en) 1990-05-28 1997-01-08 Matsushita Electric Industrial Co., Ltd. Voice signal processor
US5400434A (en) * 1990-09-04 1995-03-21 Matsushita Electric Industrial Co., Ltd. Voice source for synthetic speech system
US5226084A (en) * 1990-12-05 1993-07-06 Digital Voice Systems, Inc. Methods for speech quantization and error correction
FR2679689B1 (en) * 1991-07-26 1994-02-25 Etat Francais METHOD FOR SYNTHESIZING SOUNDS.
US5469087A (en) 1992-06-25 1995-11-21 Noise Cancellation Technologies, Inc. Control system using harmonic filters
US5787398A (en) * 1994-03-18 1998-07-28 British Telecommunications Plc Apparatus for synthesizing speech by varying pitch
JP3528258B2 (en) * 1994-08-23 2004-05-17 ソニー株式会社 Method and apparatus for decoding encoded audio signal
US5641927A (en) * 1995-04-18 1997-06-24 Texas Instruments Incorporated Autokeying for musical accompaniment playing apparatus
US5555190A (en) 1995-07-12 1996-09-10 Micro Motion, Inc. Method and apparatus for adaptive line enhancement in Coriolis mass flow meter measurement
BE1010336A3 (en) * 1996-06-10 1998-06-02 Faculte Polytechnique De Mons Synthesis method of its.
JP3266819B2 (en) * 1996-07-30 2002-03-18 株式会社エイ・ティ・アール人間情報通信研究所 Periodic signal conversion method, sound conversion method, and signal analysis method
WO1999010719A1 (en) * 1997-08-29 1999-03-04 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
US6064955A (en) * 1998-04-13 2000-05-16 Motorola Low complexity MBE synthesizer for very low bit rate voice messaging

Also Published As

Publication number Publication date
DE69802431D1 (en) 2001-12-13
FR2768545A1 (en) 1999-03-19
DE69802431T2 (en) 2002-07-18
EP1021805A1 (en) 2000-07-26
WO1999014744A1 (en) 1999-03-25
US6775650B1 (en) 2004-08-10
FR2768545B1 (en) 2000-07-13
AU9168798A (en) 1999-04-05
CA2304013A1 (en) 1999-03-25

Similar Documents

Publication Publication Date Title
EP1016072B1 (en) Method and apparatus for suppressing noise in a digital speech signal
EP1789956B1 (en) Method of processing a noisy sound signal and device for implementing said method
EP1356461B1 (en) Noise reduction method and device
EP2002428B1 (en) Method for trained discrimination and attenuation of echoes of a digital signal in a decoder and corresponding device
EP1016071B1 (en) Method and apparatus for detecting speech activity
EP0490740A1 (en) Method and apparatus for pitch period determination of the speech signal in very low bitrate vocoders
EP1016073B1 (en) Method and apparatus for suppressing noise in a digital speech signal
EP1021805B1 (en) Method and apparatus for conditioning a digital speech signal
EP3192073B1 (en) Discrimination and attenuation of pre-echoes in a digital audio signal
EP1429316A1 (en) System and method for multi-referenced correction of spectral voice distortions introduced by a communication network
EP2515300B1 (en) Method and system for noise reduction
FR2797343A1 (en) METHOD AND DEVICE FOR DETECTING VOICE ACTIVITY
EP4287648A1 (en) Electronic device and associated processing method, acoustic apparatus and computer program
FR3051958A1 (en) METHOD AND DEVICE FOR ESTIMATING A DEREVERBERE SIGNAL
WO1999027523A1 (en) Method for reconstructing sound signals after noise abatement
WO2006117453A1 (en) Method for attenuation of the pre- and post-echoes of a digital audio signal and corresponding device
FR2664446A1 (en) Differential coder with auto-adaptive predictor filter, with rapid gain adaption, and corresponding decoder

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000316

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB

RIC1 Information provided on ipc code assigned before grant

Free format text: 7G 10L 11/04 A, 7G 10L 21/02 B

RTI1 Title (correction)

Free format text: METHOD AND APPARATUS FOR CONDITIONING A DIGITAL SPEECH SIGNAL

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

17Q First examination report despatched

Effective date: 20001123

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

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REF Corresponds to:

Ref document number: 69802431

Country of ref document: DE

Date of ref document: 20011213

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

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

Effective date: 20020130

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

Owner name: NORTEL NETWORKS FRANCE

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
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20050817

Year of fee payment: 8

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

Ref country code: FR

Payment date: 20050902

Year of fee payment: 8

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

Ref country code: DE

Payment date: 20050930

Year of fee payment: 8

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: 20070403

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20060916

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

Effective date: 20070531

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: 20060916

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

Ref country code: FR

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

Effective date: 20061002