Estimation of excitation parameters

Abstract: Excitation parameters for a digitized speech signal are determined by analysing the digitized speech signal. The digitized speech signal is divided into at least two frequency bands. A first preliminary excitation parameter is determined by performing a nonlinear operation on at least one of the frequency band signals to produce a modified frequency band signal and determining the first preliminary excitation parameter using the modified frequency band signal. A second preliminary excitation parameter is determined using a method different from the first method. The first and second preliminary excitation parameters are used to determine an excitation parameter for the digitized speech signal. The method is useful in encoding speech. Speech synthesized using the parameters estimated based on the invention generates high quality speech at various bit rates useful for applications such as satellite voice communication.

Description: The invention has arisen from work seeking to improve the accuracy with which excitation parameters are estimated in speech analysis and synthesis. Speech analysis and synthesis are widely used in applications such as telecommunications and voice recognition. A vocoder, which is a type of speech analysis/synthesis system, models speech as the response of a system to excitation over short time intervals. Examples of vocoder systems include linear prediction vocoders, homomorphic vocoders, channel vocoders, sinusoidal transform coders ("STC"), multiband excitation ("MBE") vocoders, improved multiband excitation ("IMBE (TM)") vocoders. Vocoders typically synthesize speech based on excitation parameters and system parameters. Typically, an input signal is segmented using, for example, a Hamming window. Then, for each segment, system parameters and excitation parameters are determined. System parameters include the spectral envelope or the impulse response of the system. Excitation parameters include a fundamental frequency (or pitch) and a voiced/unvoiced parameter that indicates whether the input signal has pitch (or indicates the degree to which the input signal has pitch). In vocoders that divide the speech into frequency bands, such as IMBE (TM) vocoders, the excitation parameters may also include a voiced/unvoiced parameter for each frequency band rather than a single voiced/unvoiced parameter. Accurate excitation parameters are essential for high quality speech synthesis. When the voiced/unvoiced parameters include only a single voiced/unvoiced decision for the entire frequency band, the synthesized speech tends to have a "buzzy" quality especially noticeable in regions of speech which contain mixed voicing or in voiced regions of noisy speech. A number of mixed excitation models have been proposed as potential solutions to the problem of "buzziness" in vocoders. In these models, periodic and noise-like excitations are mixed which have either time-invariant or time-varying spectral shapes. In excitation models having time-invariant spectral shapes, the excitation signal consists of the sum of a periodic source and a noise source with fixed spectral envelopes. The mixture ratio controls the relative amplitudes of the periodic and noise sources. Examples of such models include Itakura and Saito, "Analysis Synthesis Telephony Based upon the Maximum Likelihood Method," Reports of 6th Int. Cong. Acoust., Tokyo, Japan, Paper C-5-5, pp. C17-20, 1968; and Kwon and Goldberg, "An Enhanced LPC Vocoder with No Voiced/Unvoiced Switch," IEEE Trans. on Acoust., Speech, and Signal Processing, vol. ASSP-32, no. 4, pp. 851-858, August 1984. In theses excitation models a white noise source is added to a white periodic source. The mixture ratio between these sources is estimated from the height of the peak of the autocorrelation of the LPC residual. In excitation models having time-varying spectral shapes, the excitation signal consists of the sum of a periodic source and a noise source with time varying spectral envelope shapes. Examples of such models include Fujimara, "An Approximation to Voice Aperiodicity," IEEE Trans. Audio and Electroacoust., pp. 68-72, March 1968; Makhoul et al., "A Mixed-Source Excitation Model for Speech Compression and Synthesis," IEEE Int. Conf. on Acoust. Sp. & Sig. Proc., April 1978, pp. 163-166; Kwon and Goldberg, "An Enhanced LPC Vocoder with No Voiced/Unvoiced Switch," IEEE Trans. on Acoust., Speech, and Signal Processing, vol. ASSP-32, no. 4, pp. 851-858, August 1984; and Griffin and Lim, "Multiband Excitation Vocoder," IEEE Trans. Acoust., Speech, Signal Processing, vol. ASSP-36, pp. 1223-1235, Aug. 1988. In the excitation model proposed by Fujimara, the excitation spectrum is divided into three fixed frequency bands. A separate cepstral analysis is performed for each frequency band and a voiced/unvoiced decision for each frequency band is made based on the height of the cepstrum peak as a measure of periodicity. In the excitation model proposed by Makhoul et al., the excitation signal consists of the sum of a low-pass periodic source and a high-pass noise source. The low-pass periodic source is generated by filtering a white pulse source with a variable cut-off low-pass filter. Similarly, the high-pass noise source was generated by filtering a white noise source with a variable cut-off high-pass filter. The cut-off frequencies for the two filters are equal and are estimated by choosing the highest frequency at which the spectrum is periodic. Periodicity of the spectrum is determined by examining the separation between consecutive peaks and determining whether the separations are the same, within some tolerance level. In a second excitation model implemented by Kwon and Goldberg, a pulse source is passed through a variable gain low-pass filter and added to itself, and a white noise source is passed through a variable gain high-pass filter and added to itself. The excitation signal is the sum of the resultant pulse and noise sources with the relative amplitudes controlled by a voiced/unvoiced mixture ratio. The filter gains and voiced/unvoiced mixture ratio are estimated from the LPC residual signal with the constraint that the spectral envelope of the resultant excitation signal is flat. In the multiband excitation model proposed by Griffin and Lim, a frequency dependent voiced/unvoiced mixture function is proposed. This model is restricted to a frequency dependent binary voiced/unvoiced decision for coding purposes. A further restriction of this model divides the spectrum into a finite number of frequency bands with a binary voiced/unvoiced decision for each band. The voiced/unvoiced information is estimated by comparing the speech spectrum to the closest periodic spectrum. When the error is below a threshold, the band is marked voiced, otherwise, the band is marked unvoiced. Excitation parameters may also be used in applications, such as speech recognition, where no speech synthesis is required. Once again, the accuracy of the excitation parameters directly affects the performance of such a system. The present invention is set out in Claims 1, 12, 20, 22 and 24 and the claims dependent thereon. In one aspect, generally, the invention features a hybrid excitation parameter estimation technique that produces two sets of excitation parameters for a speech signal using two different approaches and combines the two sets to produce a single set of excitation parameters. In a first approach, the technique applies a nonlinear operation to the speech signal to emphasize the fundamental frequency of the speech signal. In a second approach, we use a different method which may or may not include a nonlinear operation. While the first approach produces highly accurate excitation parameters under most conditions, the second approach produces more accurate parameters under certain conditions. By using both approaches and combining the resulting sets of excitation parameters to produce a single set, our technique produces accurate results under a wider range of conditions than are produced by either of the approaches individually. In typical approaches to determining excitation parameters, an analog speech signal s(t) is sampled to produce a speech signal s(n). Speech signal s(n) is then multiplied by a window w(n) to produce a windowed signal s w (n) that is commonly referred to as a speech segment or a speech frame. A Fourier transform is then performed on windowed signal s w (n) to produce a frequency spectrum S w (ω) from which the excitation parameters are determined. When speech signal s(n) is periodic with a fundamental frequency ω o or pitch period n o (where n o equals 2π/ω o ), the frequency spectrum of speech signal s(n) should be a line spectrum with energy at ω o and harmonics thereof (integral multiples of ω o ). As expected, S w (ω) has spectral peaks that are centered around ω o and its harmonics. However, due to the windowing operation, the spectral peaks include some width, where the width depends on the length and shape of window w(n) and tends to decrease as the length of window w(n) increases. This window-induced error reduces the accuracy of the excitation parameters. Thus, to decrease the width of the spectral peaks, and to thereby increase the accuracy of the excitation parameters, the length of window w(n) should be made as long as possible. The maximum useful length of window w(n) is limited. Speech signals are not stationary signals, and instead have fundamental frequencies that change over time. To obtain meaningful excitation parameters, an analyzed speech segment must have a substantially unchanged fundamental frequency. Thus, the length of window w(n) must be short enough to ensure that the fundamental frequency will not change significantly within the window. In addition to limiting the maximum length of window w(n), a changing fundamental frequency tends to broaden the spectral peaks. This broadening effect increases with increasing frequency. For example, if the fundamental frequency changes by Δω o during the window, the frequency of the mth harmonic, which has a frequency of mω o , changes by mΔω o so that the spectral peak corresponding to mω o is broadened more than the spectral peak corresponding to ω o . This increased broadening of the higher harmonics reduces the effectiveness of higher harmonics in the estimation of the fundamental frequency and the generation of voiced/unvoiced parameters for high frequency bands. By applying a nonlinear operation to the speech signal, the increased impact on higher harmonics of a changing fundamental frequency is reduced or eliminated, and higher harmonics perform better in estimation of the fundamental frequency and determination of voiced/unvoiced parameters. Suitable nonlinear operations map from complex (or real) to real values and produce outputs that are nondecreasing functions of the magnitudes of the complex (or real) values. Such operations include, for example, the absolute value, the absolute value squared, the absolute value raised to some other power, or the log of the absolute value. Nonlinear operations tend to produce output signals having spectral peaks at the fundamental frequencies of their input signals. This is true even when an input signal does not have a spectral peak at the fundamental frequency. For example, if a bandpass filter that only passes frequencies in the range between the third and fifth harmonics of ω o is applied to a speech signal s(n), the output of the bandpass filter, x(n), will have spectral peaks at 3ω o , 4ω o and 5ω o . Though x(n) does not have a spectral peak at ω o , | x(n)| 2 will have such a peak. For a real signal x(n), |x(n)| 2 is equivalent to x 2 (n). As is well known, the Fourier transform of x 2 (n) is the convolution of X(ω), the Fourier transform of x(n), with X(ω) : The convolution of X(ω) with X(ω) has spectral peaks at frequencies equal to the differences between the frequencies for which X(ω) has spectral peaks. The differences between the spectral peaks of a periodic signal are the fundamental frequency and its multiples. Thus, in the example in which X(ω) has spectral peaks at 3ω o , 4ω o and 5ω o , X(ω) convolved with X(ω) has a spectral peak at ω o (4ω o -3ω o , 5ω o -4ω o ). For a typical periodic signal, the spectral peak at the fundamental frequency is likely to be the most prominent. The above discussion also applies to complex signals. For a complex signal x(n), the Fourier transform of | x(n)| 2 is: This is an autocorrelation of X(ω) with X*(ω), and also has the property that spectral peaks separated by nω o produce peaks at nω o . Even though | x(n)|, | x(n)| a for some real "a", and log | x(n)| are not the same as | x(n)| 2 , the discussion above for | x(n)| 2 applies approximately at the qualitative level. For example, for | x(n)| = y(n) 0.5 , where y(n) = | x(n)| 2 , a Taylor series expansion of y(n) can be expressed as: Because multiplication is associative, the Fourier transform of the signal y k (n) is Y(ω) convolved with the Fourier transform of y k-1 (n). The behavior for nonlinear operations other than | x(n)| 2 can be derived from |x(n)| 2 by observing the behavior of multiple convolutions of Y(ω) with itself. If Y(ω) has peaks at nω o , then multiple convolutions of Y(ω) with itself will also have peaks at nω o . As shown, nonlinear operations emphasize the fundamental frequency of a periodic signal, and are particularly useful when the periodic signal includes significant energy at higher harmonics. However, the presence of the nonlinearity can degrade performance in some cases. For example, performance may be degraded when speech signal s(n) is divided into multiple bands s i (n) using bandpass filters, where s i (n) denotes the result of bandpass filtering using the ith bandpass filter. If a single harmonic of the fundamental frequency is present in the pass band of the ith filter, the output of the filter is: s i ( n ) = A k e j (ω k n + k ) where ω k is the frequency,  k is the phase, and A k is the amplitude of the harmonic. When a nonlinearity such as the absolute value is applied to s i (n) to produce a value y i (n), the result is: y i ( n ) = s i ( n ) = A k so that the frequency information has been completely removed from the signal y i (n). Removal of this frequency information can reduce the accuracy of parameter estimates. Our hybrid technique provides significantly improved parameter estimation performance in cases for which the nonlinearity reduces the accuracy of parameter estimates while maintaining the benefits of the nonlinearity in the remaining cases. As described above, the hybrid technique includes combining parameter estimates based on the signal after the nonlinearity has been applied (y i (n)) with parameter estimates based on the signal before the nonlinearity is applied (s i (n) or s(n)). The two approaches produce parameter estimates along with an indication of the probability of correctness of these parameter estimates. The parameter estimates are then combined giving higher weight to estimates with a higher probability of being correct. The invention may feature the application of smoothing techniques to the voiced/unvoiced parameters. Voiced/unvoiced parameters can be binary or continuous functions of time and/or frequency. Because these parameters tend to be smooth functions in at least one direction (positive or negative) of time or frequency, the estimates of these parameters can benefit from appropriate application of smoothing techniques in time and/or frequency. The invention can also feature an improved technique for estimating voiced/unvoiced parameters. In vocoders such as linear prediction vocoders, homomorphic vocoders, channel vocoders, sinusoidal transform coders, multiband excitation vocoders, and IMBE (TM) vocoders, a pitch period n (or equivalently a fundamental frequency) is selected. Thereafter, a function f i (n) is then evaluated at the selected pitch period (or fundamental frequency) to estimate the i th voiced/unvoiced parameter. However, for some speech signals, evaluation of this function only at the selected pitch period will result in reduced accuracy of one or more voiced/unvoiced parameter estimates. This reduced accuracy may result from speech signals that are more periodic at a multiple of the pitch period than at the pitch period, and may be frequency dependent so that only certain portions of the spectrum are more periodic at a multiple of the pitch period. Consequently, the voiced/unvoiced parameter estimation accuracy can be improved by evaluating the function f i (n) at the pitch period n and at its multiples, and thereafter combining the results of these evaluations. The invention may feature an improved technique for estimating the fundamental frequency or pitch period. When the fundamental frequency ω o (or pitch period n o ) is estimated, there may be some ambiguity as to whether ω o or a submultiple or multiple of ω o is the best choice for the fundamental frequency. Since the fundamental frequency tends to be a smooth function of time for voiced speech, predictions of the fundamental frequency based on past estimates can be used to resolve ambiguities and improve the fundamental frequency estimate. Other features and advantages of the invention will be apparent from the following description of the preferred embodiments, given by way of example only. In the drawings: Fig. 1 is a block diagram of a system for determining whether frequency bands of a signal are voiced or unvoiced. Fig. 2 is a block diagram of a parameter estimation unit of the system of Fig. 1. Fig. 3 is a block diagram of a channel processing unit of the parameter estimation unit of Fig. 2. Fig. 4 is a block diagram of a parameter estimation unit of the system of Fig. 1. Fig. 5 is a block diagram of a channel processing unit of the parameter estimation unit of Fig. 4. Fig. 6 is a block diagram of a parameter estimation unit of the system of Fig. 1. Fig. 7 is a block diagram of a channel processing unit of the parameter estimation unit of Fig. 6. Figs. 8-10 are block diagrams of systems for determining the fundamental frequency of a signal. Fig. 11 is a block diagram of voiced/unvoiced parameter smoothing unit. Fig. 12 is a block diagram of voiced/unvoiced parameter improvement unit. Fig. 13 is a block diagram of a fundamental frequency improvement unit. Figs. 1-12 show the structure of a system for estimating excitation parameters, the various blocks and units of which are preferably implemented with software. With reference to Fig. 1, a voiced/unvoiced determination system 10 includes a sampling unit 12 that samples an analog speech signal s(t) to produce a speech signal s(n). For typical speech coding applications, the sampling rate ranges between six kilohertz and ten kilohertz. Speech signal s(n) is supplied to a first parameter estimator 14 that divides the speech signal into k+1 bands and produces a first set of preliminary voiced/unvoiced ("V/UV") parameters (A 0 to A K ) corresponding to a first estimate as to whether the signals in the bands are voiced or unvoiced. Speech signal s(n) is also supplied to a second parameter estimator 16 that produces a second set of preliminary V/UV parameters (B 0 to B K ) that correspond to a second estimate as to whether the signals in the bands are voiced or unvoiced. The two sets of preliminary V/UV parameters are combined by a combination block 18 to produce a set of V/UV parameters (V 0 to V K ). With reference to Fig. 2, first parameter estimator 14 produces the first voiced/unvoiced estimate using a frequency domain approach. Channel processing units 20 in first parameter estimator 14 divide speech signal s(n) into at least two frequency bands and process the frequency bands to produce a first set of frequency band signals, designated as T 0 (ω) .. T I (ω). As discussed below, channel processing units 20 are differentiated by the parameters of a bandpass filter used in the first stage of each channel processing unit 20. In the described embodiment, there are sixteen channel processing units (I equals 15). A remap unit 22 transforms the first set of frequency band signals to produce a second set of frequency band signals, designated as U 0 (ω) .. U K (ω). In the described embodiment, there are eight frequency band signals in the second set of frequency band signals (K equals 7). Thus, remap unit 22 maps the frequency band signals from the sixteen channel processing units 20 into eight frequency band signals. Remap unit 20 does so by combining consecutive pairs of frequency band signals from the first set into single frequency band signals in the second set. For example, T 0 (ω) and T 1 (ω) are combined to produce U 0 (ω), and T 14 (ω) and T 15 (ω) are combined to produce U 7 (ω). Other approaches to remapping could also be used. Next, voiced/unvoiced parameter estimation units 24, each associated with a frequency band signal from the second set, produce preliminary V/UV parameters A 0 to A K by computing a ratio of the voiced energy in the frequency band at an estimated fundamental frequency ω o to the total energy in the frequency band and subtracting this ratio from 1: A k = 1.0 - E k v (ω o )/ E k t . The voiced energy in the frequency band is computed as: where I n = [( n -0.25)ω o , ( n +0.25)ω o ], and N is the number of harmonics of the fundamental frequency ω o being considered. V/UV parameter estimation units 24 determine the total energy of their associated frequency band signals as: The degree to which the frequency band signal is voiced varies indirectly with the value of the preliminary V/UV parameter. Thus, the frequency band signal is highly voiced when the preliminary V/UV parameter is near zero and is highly unvoiced when the parameter is greater than or equal to one half. With reference to Fig. 3, when speech signal s(n) enters a channel processing unit 20, components s i (n) belonging to a particular frequency band are isolated by a bandpass filter 26. Bandpass filter 26 uses downsampling to reduce computational requirements, and does so without any significant impact on system performance. Bandpass filter 26 can be implemented as a Finite Impulse Response (FIR) or Infinite Impulse Response (IIR) filter, or by using an FFT. In the described embodiment, bandpass filter 26 is implemented using a thirty two point real input FFT to compute the outputs of a thirty two point FIR filter at seventeen frequencies, and achieves a downsampling factor of S by shifting the input by S samples each time the FFT is computed. For example, if a first FFT used samples one through thirty two, a downsampling factor of ten would be achieved by using samples eleven through forty two in a second FFT. A first nonlinear operation unit 28 then performs a nonlinear operation on the isolated frequency band s i (n) to emphasize the fundamental frequency of the isolated frequency band s i (n). For complex values of s i (n) (i greater than zero), the absolute value, | s i (n)|, is used. For the real value of s 0 (n), s 0 (n) is used if s 0 (n) is greater than zero and zero is used if s 0 (n) is less than or equal to zero. The output of nonlinear operation unit 28 is passed through a lowpass filtering and downsampling unit 30 to reduce the data rate and consequently reduce the computational requirements of later components of the system. Lowpass filtering and downsampling unit 30 uses an FIR filter computed every other sample for a downsampling factor of two. A windowing and FFT unit 32 multiplies the output of lowpass filtering and downsampling unit 30 by a window and computes a real input FFT, S i (ω), of the product. Typically, windowing and FFT unit 32 uses a Hamming window and a real input FFT. Finally, a second nonlinear operation unit 34 performs a nonlinear operation on S i (ω) to facilitate estimation of voiced or total energy and to ensure that the outputs of channel processing units 20, T i (ω), combine constructively if used in fundamental frequency estimation. The absolute value squared is used because it makes all components of T i (ω) real and positive. With reference to Fig. 4, second parameter estimator 16 produces the second preliminary V/UV estimates using a sinusoid detector/estimator. Channel processing units 36 in second parameter estimator 16 divide speech signal s(n) into at least two frequency bands and process the frequency bands to produce a first set of signals, designated as R 0 (1) .. R I (1). Channel processing units 36 are differentiated by the parameters of a bandpass filter used in the first stage of each channel processing unit 36. In the described embodiment, there are sixteen channel processing units (I equals 15). The number of channels (value of I) in Fig. 4 does not have to equal the number of channels (value of I) in Fig. 2. A remap unit 38 transforms the first set of signals to produce a second set of signals, designated as S 0 (1) .. S K (1). The remap unit can be an identity system. In the described embodiment, there are eight signals in the second set of signals (K equals 7). Thus, remap unit 38 maps the signals from the sixteen channel processing units 36 into eight signals. Remap unit 38 does so by combining consecutive pairs of signals from the first set into single signals in the second set. For example, R 0 (1) and R 1 (1) are combined to produce S 0 (1), and R 14 (1) and R 15 (1) are combined to produce S 7 (1). Other approaches to remapping could also be used. Next, V/UV parameter estimation units 40, each associated with a signal from the second set, produce preliminary V/UV parameters B 0 to B K by computing a ratio of the sinusoidal energy in the signal to the total energy in the signal and subtracting this ratio from 1: B k = 1.0- S k (1)/ S k (0). With reference to Fig. 5, when speech signal s(n) enters a channel processing unit 36, components s i (n) belonging to a particular frequency band are isolated by a bandpass filter 26 that operates identically to the bandpass filters of channel processing units 20 (see Fig. 3). It should be noted that, to reduce computation requirements, the same bandpass filters may be used in channel processing units 20 and 36, with the outputs of each filter being supplied to a first nonlinear operation unit 28 of a channel processing unit 20 and a window and correlate unit 42 of a channel processing unit 36. A window and correlate unit 42 then produces two correlation values for the isolated frequency band s i (n). The first value, R i (0), provides a measure of the total energy in the frequency band: where N is related to the size of the window and typically defines an interval of 20 milliseconds and S is the number of samples by which the bandpass filter shifts the input speech samples. The second value, R i (1), provides a measure of the sinusoidal energy in the frequency band: Combination block 18 produces voiced/unvoiced parameters V 0 to V K by selecting the minimum of a preliminary V/UV parameter from the first set and a function of a preliminary V/UV parameter from the second set. In particular, combination block produces the voiced/unvoiced parameters as: V k = min( A k , f B ( B k )) where f B ( B k ) = B k + α( k )β(ω o ), β(ω o ) = 1.0, when ω o ≥ 2π/60.0, or 2π/(60ω o ), when ω o < 2π/60.0 and α(k) is an increasing function of k. Because a preliminary V/UV parameter having a value close to zero has a higher probability of being correct than a preliminary V/UV parameter having a larger value, the selection of the minimum value results in the selection of the value that is most likely to be correct. With reference to Fig. 6, in another embodiment, a first parameter estimator 14' produces the first preliminary V/UV estimate using an autocorrelation domain approach. Channel processing units 44 in first parameter estimator 14' divide speech signal s(n) into at least two frequency bands and process the frequency bands to produce a first set of frequency band signals, designated as T 0 (1) .. T K (1). There are eight channel processing units (K equals 7) and no remapping unit is necessary. Next, voiced/unvoiced (V/UV) parameter estimation units 46, each associated with a channel processing unit 44, produce preliminary V/UV parameters A 0 to A K by computing a ratio of the voiced energy in the frequency band at an estimated pitch period n o to the total energy in the frequency band and subtracting this ratio from 1: A k = 1.0 - E k v ( n o )/ E k t . The voiced energy in the frequency band is computed as: E k v ( n o ) = C ( n o ) T k ( n o ) where N is the number of samples in the window and typically has a value of 101, and C (n o ) compensates for the window roll-off as a function of increasing autocorrelation lag. For non-integer values of n o , the voiced energy at the nearest three values of n are used with a parabolic interpolation method to obtain the voiced energy for n o . The total energy is determined as the voiced energy for n o equal to zero. With reference to Fig. 7, when speech signal s(n) enters a channel processing unit 44, components s i (n) belonging to a particular frequency band are isolated by a bandpass filter 48. Bandpass filter 48 uses downsampling to reduce computational requirements, and does so without any significant impact on system performance. Bandpass filter 48 can be implemented as a Finite Impulse Response (FIR) or Infinite Impulse Response (IIR) filter, or by using an FFT. A downsampling factor of S is achieved by shifting the input speech samples by S each time the filter outputs are computed. A nonlinear operation unit 50 then performs a nonlinear operation on the isolated frequency band s i (n) to emphasize the fundamental frequency of the isolated frequency band s i (n). For complex values of s i (n) (i greater than zero), the absolute value, | s i (n)| , is used. For the real value of s o (n), no nonlinear operation is performed. The output of nonlinear operation unit 50 is passed through a highpass filter 52, and the output of the highpass filter is passed through an autocorrelation unit 54. A 101 point window is used, and, to reduce computation the autocorrelation is only computed at a few samples nearest the pitch period. With reference again to Fig. 4, second parameter estimator 16 may also use other approaches to produce the second voiced/unvoiced estimate. For example, well-known techniques such as using the height of the peak of the cepstrum, using the height of the peak of the autocorrelation of a linear prediction coder residual, MBE model parameter estimation methods, or IMBE (TM) model parameter estimation methods may be used. In addition, with reference again to Fig. 5, window and correlate unit 42 may produce autocorrelation values for the isolated frequency band s i (n) as: where w(n) is the window. With this approach, combination block 18 produces the voiced/unvoiced parameters as: V k = min( A k , B k ). The fundamental frequency may be estimated using a number of approaches. First, with reference to Fig. 8, a fundamental frequency estimation unit 56 includes a combining unit 58 and an estimator 60. Combining unit 58 sums the T i (ω) outputs of channel processing units 20 (Fig. 2) to produce X(ω). In an alternative approach, combining unit 58 could estimate a signal-to-noise ratio (SNR) for the output of each channel processing unit 20 and weigh the various outputs so that an output with a higher SNR contributes more to X(ω) than does an output with a lower SNR. Estimator 60 then estimates the fundamental frequency (ω o ) by selecting a value for ω o that maximizes X(ω o ) over an interval from ω min to ω max . Since X(ω) is only available at discrete samples of ω, parabolic interpolation of X(ω o ) near ω o is used to improve accuracy of the estimate. Estimator 60 further improves the accuracy of the fundamental estimate by combining parabolic estimates near the peaks of the N harmonics of ω o within the bandwidth of X(ω). Once an estimate of the fundamental frequency is determined, the voiced energy E v (ω o ) is computed as: where I n = [( n -0.25)ω o , ( n +0.25)ω o ]. Thereafter, the voiced energy E v (0.5ω o ) is computed and compared to E v (ω o ) to select between ω o and 0.5ω o as the final estimate of the fundamental frequency. With reference to Fig. 9, an alternative fundamental frequency estimation unit 62 includes a nonlinear operation unit 64, a windowing and Fast Fourier Transform (FFT) unit 66, and an estimator 68. Nonlinear operation unit 64 performs a nonlinear operation, the absolute value squared, on s(n) to emphasize the fundamental frequency of s(n) and to facilitate determination of the voiced energy when estimating ω o . Windowing and FFT unit 66 multiplies the output of nonlinear operation unit 64 to segment it and computes an FFT, X(ω), of the resulting product. Finally, estimator 68, which works identically to estimator 60, generates an estimate of the fundamental frequency. With reference to Fig. 10, a hybrid fundamental frequency estimation unit 70 includes a band combination and estimation unit 72, an IMBE estimation unit 74 and an estimate combination unit 76. Band combination and estimation unit 70 combines the outputs of channel processing units 20 (Fig. 2) using simple summation or a signal-to-noise ratio (SNR) weighting where bands with higher SNRs are given higher weight in the combination. From the combined signal (U(ω)), unit 72 estimates a fundamental frequency and a probability that the fundamental frequency is correct. Unit 72 estimates the fundamental frequency by choosing the frequency that maximizes the voiced energy (E v (ω o )) from the combined signal, which is determined as: where I n = [( n -0.25)ω o , ( n +0.25)ω o ]. and N is the number of harmonics of the fundamental frequency. The probability that ω o is correct is estimated by comparing E v (ω o ) to the total energy E t , which is computed as: When E v (ω o ) is close to E t , the probability estimate is near one. When E v (ω o ) is close to one half of E t , the probability estimate is near zero. IMBE estimation unit 74 uses the well known IMBE technique, or a similar technique, to produce a second fundamental frequency estimate and probability of correctness. Thereafter, estimate combination unit 76 combines the two fundamental frequency estimates to produce the final fundamental frequency estimate. The probabilities of correctness are used so that the estimate with higher probability of correctness is selected or given the most weight. With reference to Fig. 11, a voiced/unvoiced parameter smoothing unit 78 performs a smoothing operation to remove voicing errors that might result from rapid transitions in the speech signal. Unit 78 produces a smoothed voiced/unvoiced parameter as: v k s (n) = 1.0, when v k (n-1) = v k (n+1) = 1 and v k ( n ), otherwise where the voiced/unvoiced parameters equal one for unvoiced speech and zero for voiced speech. When the voiced/unvoiced parameters have continuous values, with a value near zero corresponding to highly voiced speech, unit 78 produces a smoothed voiced/unvoiced parameter that is smoothed in both the time and frequency domains: v k s ( n ) = λ k ( n )min( v k ( n ), α k ( n ), β k ( n ), γ k ( n )) where α k ( n ) = 2 v k +1 ( n ), when k = 0,1,..., K -1 , or ∞, when k = K ; β k ( n ) = 2 v k -1 ( n ), when k = 2, 3, ..., K , or ∞, when k = 0, 1; γ k ( n ) = 0.25 v k -1 ( n ) + 0.5 v k ( n ) + 0.25 v k +1 ( n ), when k = 1, 2, ..., K -1, or ∞, when k = 0, K ; λ k ( n ) = 0.8, when v k s ( n -1) < T k ( n -1) and ω o ( n ) -ω o ( n -1) < 0.25 ω o ( n ) , or 1, otherwise ; and T k (n) is a threshold value that is a function of time and frequency. With reference to Fig. 12, a voiced/unvoiced parameter improvement unit 80 produces improved voiced/unvoiced parameters by comparing the voiced/unvoiced parameter produced when the estimated fundamental frequency equals ω o to a voiced/unvoiced parameter produced when the estimated fundamental frequency equals one half of ω o and selecting the parameter having the lowest value. In particular, voiced/unvoiced parameter improvement unit 80 produces improved voiced/unvoiced parameters as: Â k (ω o ) = min( A k (ω o ), A k (0.5ω o )) where A k (ω) = 1.0- E k v (ω)/ E k t . With reference to Fig. 13, an improved estimate of the fundamental frequency (ω o ) is generated according to a procedure 100. The initial fundamental frequency estimate ( ) is generated according to one of the procedures described above and is used in step 101 to generate a set of evaluation frequencies . The evaluation frequencies are typically chosen to be near the integer submultiples and multiples of . Thereafter, functions are evaluated at this set of evaluation frequencies (step 102). The functions that are evaluated typically consist of the voiced energy function E v ( ) and the normalized frame error E f ( ). The normalized frame error is computed as The final fundamental frequency estimate is then selected (step 103) using the evaluation frequencies, the function values at the evaluation frequencies, the predicted fundamental frequency (described below), the final fundamental frequency estimates from previous frames, and the above function values from previous frames. When these inputs indicate that one evaluation frequency has a much higher probability of being the correct fundamental frequency than the others, then it is chosen. Otherwise, if two evaluation frequencies have similar probability of being correct and the normalized error for the previous frame is relatively low, then the evaluation frequency closest to the final fundamental frequency from the previous frame is chosen. Otherwise, if two evaluation frequencies have similar probability of being correct, then the one closest to the predicted fundamental frequency is chosen. The predicted fundamental frequency for the next frame is generated (step 104) using the final fundamental frequency estimates from the current and previous frames, a delta fundamental frequency, and normalized frame errors computed at the final fundamental frequency estimate for the current frame and previous frames. The delta fundamental frequency is computed from the frame to frame difference in the final fundamental frequency estimate when the normalized frame errors for these frames are relatively low and the percentage change in fundamental frequency is low, otherwise, it is computed from previous values. When the normalized error for the current frame is relatively low, the predicted fundamental for the current frame is set to the final fundamental frequency. The predicted fundamental for the next frame is set to the sum of the predicted fundamental for the current frame and the delta fundamental frequency for the current frame.

Claims: A method of analysing a digitized speech signal (s(n)) to determine excitation parameters for the digitized speech signal (s(n)), preferably as a step in encoding speech, the method comprising dividing the digitized speech signal (s(n)) into one or more frequency band signals; and, preferably at regular intervals of time, performing the further step of: determining a first preliminary excitation parameter (A o -A k ) using a first method that includes performing a nonlinear operation on at least one of the frequency band signals to produce at least one modified frequency band signal (T o (ω)-T l (ω)) and determining the first preliminary excitation parameter (A o -A k ) using the at least one modified frequency band signal (T o (ω)-T l (ω)); determining at least a second preliminary excitation parameter (B o -B k ) using at least a second method different from the said first method; and using the first and at least a second preliminary excitation parameters (A o -A k , B o -B k ) to determine an excitation parameter (V o -V k ) for the digitized speech signal (s(n)). A method according to Claim 1, wherein at least one of the second methods uses at least one of the frequency band signals without performing the said nonlinear operation. A method according to Claims 1 or 2, wherein the excitation parameter (V o -V k ) comprises a voiced/unvoiced parameter for at least one frequency band, said parameter preferably having values that vary over a continuous range. A method according to any preceding claim, further comprising a fundamental frequency for the digitized speech signal (s(n)). A method according to Claim 3, wherein the first preliminary excitation parameter (A o -A k ) comprises a first voiced/unvoiced parameter for the at least one modified frequency band signal, and wherein the first determining step includes determining the first voiced/unvoiced parameter (A o -A k ) by comparing voiced energy (E k / v (ω o )) in the modified frequency band signal to total energy E K / T in the modified frequency band signal. A method according to Claim 5, wherein the voiced energy (E k / v (ω o )) in the modified frequency band signal corresponds to the energy associated with an estimated fundamental frequency (ω o ) for the digitized speech signal (s(n)). A method according to Claim 5, wherein the voiced energy E k / v (n o ) in the modified frequency band signal corresponds to the energy associated with an estimated pitch period (n o ) for the digitized speech signal (s(n)). A method according to Claim 5, wherein the second preliminary excitation parameter (B o -B k ) includes a second voiced/unvoiced parameter for the at least one frequency band signal, and wherein the second determining step includes determining the second voiced/unvoiced parameter by comparing sinusoidal energy in the at least one frequency band signal (S k (1)) to total energy (S k (0)) in the at least one frequency band signal. A method according to Claim 5, wherein the second preliminary excitation parameter (B o -B k ) includes a second voiced/unvoiced parameter for the at least one frequency band signal, and wherein the second determining step includes determining the second voiced/unvoiced parameter by autocorrelating the at least one frequency band signal. A method according to any preceding claim, wherein the said using step emphasizes the first preliminary excitation parameter (A o -A k ) over the second preliminary excitation parameter (B o -B k ) in determining the excitation parameter (V o -V k ) for the digitized speech signal (s(n)) when the first preliminary excitation parameter (A o -A k ) has a higher probability of being correct than does the second preliminary excitation parameter (B o -B k ). A method according to any preceding claim, further comprising smoothing the excitation parameter to produce a smoothed excitation parameter. A method of analysing a digitized speech signal (s(n)) to determine excitation parameters (V o -V k ) for the digitized speech signal (s(n)), preferably as a step in encoding speech, the method comprising the steps of: estimating a fundamental frequency (ω o ) for the digitized speech signal (s(n)); evaluating a voiced/unvoiced function using the estimated fundamental frequency (ω o ) to produce a first preliminary voiced/unvoiced parameter (A o -A k ); evaluating the voiced/unvoiced function at least using one other frequency derived from the estimated fundamental frequency (ω o ) to produce at least one other preliminary voiced/unvoiced parameter (B o -B k ); and combining the first and at least one other preliminary voiced/unvoiced parameters (A o -A k , B o -B k ) to produce a voiced/unvoiced parameter (V o -V k ). A method according to Claim 12, wherein the said at least one other frequency is derived from the said estimated fundamental frequency (ω o ) as a multiple or submultiple of the said estimated fundamental frequency (ω o ). A method according to Claim 12 or 13, wherein the combining step includes choosing the first preliminary voiced/unvoiced parameter (A o -A k ) as the voiced/unvoiced parameter (V o -V k ) when the first preliminary voiced/unvoiced parameter (A o -A k ) indicates that the digitized speech signal (s(n)) is more voiced than does the second preliminary voiced/unvoiced parameter (B o -B k ). A method of synthesizing speech using excitation parameters, where the excitation parameters are estimated by using a method for determining such parameters according to any preceding claim. A method according to Claim 4, 6, 12 or any claim dependent thereon, wherein estimating a fundamental frequency (ω o ) for the digitized speech signal (s(n)) comprises determining a predicted fundamental frequency estimate from previous fundamental frequency estimates; determining an initial fundamental frequency estimate; evaluating an error function at the initial fundamental frequency estimate to produce a first error function value; evaluating the error function at at least one other frequency derived from the initial fundamental frequency estimate to produce at least one other error function value; and selecting a fundamental frequency estimate using the predicted fundamental frequency estimate, the initial fundamental frequency estimate, the first error function value, and the at least one other error function value. A method according to Claim 16, wherein the said at least one other frequency is derived from the said estimated fundamental frequency as a multiple or submultiple of the said estimated fundamental frequency. A method according to Claim 16, wherein the predicted fundamental frequency (ω o ) is determined by adding a delta factor to a previous predicted fundamental frequency, which delta factor is preferably determined from previous first and at least one other error function values, the previous predicted fundamental frequency, and a previous delta factor. A method of synthesizing speech using a fundamental frequency, where the fundamental frequency is estimated using a method according to any of Claims 16 to 18. A system for analysing a digitized speech signal (s(n)) to determine excitation parameters for the digitized speech signal (s(n)), comprising: means for dividing the digitized speech signal into one or more frequency band signals; means (14) for determining a first preliminary excitation parameter (A o -A k ) using a first method that includes performing a nonlinear operation on at least one of the frequency band signals to produce at least one modified frequency band signal and determining the first preliminary excitation parameter (A o -A k ) using the at least one modified frequency band signal; means (16) for determining a second preliminary excitation parameter (B o -B k ) using a second method that is different from the above said first method; and means for using the first and second preliminary excitation parameters (A o -A k , B o -B k ) to determine an excitation parameter (V o -V k ) for the digitized speech signal (s(n)). A system according to Claim 20, further comprising means (76) for smoothing the first and second preliminary excitation parameters. A system for analysing a digitized speech signal (s(n)) to determine excitation parameters (V o -V k ) for the digitized speech signal (s(n)), comprising: means (60; 100) for estimating a fundamental frequency (ω o ) for the digitized speech signal (s(n)); means for evaluating a voiced/unvoiced function using the estimated fundamental frequency to produce a first preliminary voiced/unvoiced parameter (A o -A k ); means for evaluating the voiced/unvoiced function using another frequency derived from the estimated fundamental frequency to produce a second preliminary voiced/unvoiced parameter (B o -B k ); and means (18) for combining the first and second preliminary voiced/unvoiced parameters (A o -A k , B o -B k ) to produce a voiced/unvoiced parameter (V o -V k ). A system according to Claim 22, wherein the means (100) for estimating a fundamental frequency for the digitized speech signal (s(n)), comprises: means (104) for determining a predicted fundamental frequency estimate from previous fundamental frequency estimates; means (101) for determining an initial fundamental frequency estimate; means (102) for evaluating an error function at the initial fundamental frequency estimate to produce a. first error function value; means for evaluating the error function at at least one other frequency derived from the initial fundamental frequency estimate to produce a second error function value; and means (103) for selecting a fundamental frequency estimate using the predicted fundamental frequency estimate, the initial fundamental frequency estimate, the first error function value, and the at least one other error function value. A method of analysing a digitized speech signal (s(n)) to determine a voiced/unvoiced function (V o -V k ) for the digitized speech signal (s(n)), comprising: dividing the digitized speech signal (s(n)) into at least two frequency band signals; determining a first preliminary voiced/unvoiced function (A o -A k ) for at least two of the frequency band signals using a first method; determining a second preliminary voiced/unvoiced function (B o -B k ) for said at least two of the frequency band signals using a second method which is different from the above said first method; and using the first and second preliminary voiced/unvoiced functions (A o -A k , B o -B k ) to determine a voiced/unvoiced function (V o -V k ) for said at least two of the frequency band signals.

Inventors: GRIFFIN DANIEL WAYNE, GRIFFIN, DANIEL WAYNE
Applicants: DIGITAL VOICE SYSTEMS INC, DIGITAL VOICE SYSTEMS, INC.
Application year: 1996
Main classification: G10L11
IPC codes: G10L11, G10L19