EP1021805B1 - Method and apparatus for conditioning a digital speech signal - Google Patents
Method and apparatus for conditioning a digital speech signal Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims description 36
- 230000003750 conditioning effect Effects 0.000 title claims description 11
- 230000003595 spectral effect Effects 0.000 claims description 36
- 230000001143 conditioned effect Effects 0.000 claims description 19
- 238000004458 analytical method Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 238000005070 sampling Methods 0.000 claims description 14
- 230000001755 vocal effect Effects 0.000 claims description 9
- 230000000717 retained effect Effects 0.000 claims 2
- 230000007774 longterm Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 18
- 230000000873 masking effect Effects 0.000 description 17
- 230000004044 response Effects 0.000 description 14
- 230000000694 effects Effects 0.000 description 13
- 238000001228 spectrum Methods 0.000 description 11
- 238000001514 detection method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 239000000523 sample Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 210000004704 glottis Anatomy 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 230000007480 spreading Effects 0.000 description 3
- 238000000528 statistical test Methods 0.000 description 3
- 210000000721 basilar membrane Anatomy 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000002964 excitative effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000916 dilatatory effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012858 packaging process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0316—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
- G10L21/0364—Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude for improving intelligibility
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/0212—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/93—Discriminating 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
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.
- 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.
- 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
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
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 :
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
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
Le fonctionnement des modules 15 et 16 peut
correspondre aux organigrammes représentés sur les figures
2 et 3.The operation of
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 :
Aux étapes 18 à 20, les composantes spectrales
Êpn,i sont calculées selon :
où βpi est un coefficient de plancher proche de 0, servant
classiquement à éviter que le spectre du signal débruité
prenne des valeurs négatives ou trop faibles qui
provoqueraient un bruit musical. In
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.
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
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
Après avoir calculé les énergies En , i du signal
débruité, ses variations à court terme ΔEn,i et ses
valeurs à long terme
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
Si l'étape 27 montre que bai<
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
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
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.
A l'étape 42, le module 16 met à jour les
estimations du bruit par bande selon les formules :
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
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.
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
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
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
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
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
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 :
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
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
La protection apportée par le module 56 peut
consister à effectuer, pour chaque fréquence f appartenant
à une bande i :
The protection provided by the
Δ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
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
c'est-à-dire remplacer la
condition (9) ci-dessus par :
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
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
Les composantes spectrales S 2 / n,f d'un signal
débruité sont calculées par un multiplieur 58 :
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
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 :
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
Le seuil de masquage Mn,q est obtenu par le module
60 pour chaque bande de bark q, selon la formule :
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
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 :
The
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
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
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
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,
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
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
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
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
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.
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
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
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
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
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
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
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 :
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
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) :
A
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
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
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
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
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 :
où 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: where
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
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
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
Claims (9)
- 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.
- 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.
- Method according to claim 2, wherein the number N is a power of 2.
- 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').
- 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).
- 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.
- 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).
- 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.
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)
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)
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 |
-
1997
- 1997-09-18 FR FR9711641A patent/FR2768545B1/en not_active Expired - Fee Related
-
1998
- 1998-09-16 CA CA002304013A patent/CA2304013A1/en not_active Abandoned
- 1998-09-16 US US09/509,146 patent/US6775650B1/en not_active Expired - Lifetime
- 1998-09-16 DE DE69802431T patent/DE69802431T2/en not_active Expired - Fee Related
- 1998-09-16 AU AU91687/98A patent/AU9168798A/en not_active Abandoned
- 1998-09-16 EP EP98943997A patent/EP1021805B1/en not_active Expired - Lifetime
- 1998-09-16 WO PCT/FR1998/001978 patent/WO1999014744A1/en active IP Right Grant
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 |