|Publication number||USRE38269 E1|
|Application number||US 09/422,820|
|Publication date||Oct 7, 2003|
|Filing date||Oct 21, 1999|
|Priority date||May 3, 1991|
|Also published as||US5680508|
|Publication number||09422820, 422820, US RE38269 E1, US RE38269E1, US-E1-RE38269, USRE38269 E1, USRE38269E1|
|Original Assignee||Itt Manufacturing Enterprises, Inc.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (15), Non-Patent Citations (6), Referenced by (17), Classifications (14), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This is a continuation of application Ser. No. 07/695,571 filed May 3, 1991 now abandoned.
The United States Government has rights in this invention pursuant to RADC Contract F30602-89-C-0118 awarded by the Department of the Air Force.
The present invention relates to enhanced speech coding techniques for low-rate speech coders, and particularly, to improved speech frame analysis and vector quantization methods.
A low-bit-rate speech coder is disclosed in U.S. Pat. No. 4,975,956, issued to Y. J. Liu and J. H. Rothweiler, entitled “Low-Bit-Rate Speech Coder Using LPC Data Reduction Processing”, which is incorporated herein by reference. This speech coder employs linear predictive coding (LPC) analysis to generate reflection coefficients for the input speech frames and pitch and gain parameters. To obtain a low bit rate of 400 bps, these parameters are further compressed. The reflection coefficients are first converted to line spectrum frequencies (LSFs) and formants. For even frames, these spectral parameters are vector-quantized into clean codeword indices. Odd frames are omitted, and are regenerated by interpolation at the decoder end. The vector quantization module compares the spectral parameters for an input word against a vocabulary of codewords for which vector indices have been generated and stored during a training sequence, and the optimally matching codeword is selected for transmission. Pitch and gain bits are quantized using trellis coding. Output speech is reconstructed from the regenerated vector-quantization indices using a matching codebook at the decoder end.
In a quiet background, this 400-bps speech coder has a high intelligibility for a low-bit-rate transmission. However, in a background of high noise, such as in a helicopter or jet, the encoded speech becomes unintelligible. A detailed study has shown that conversion of voicing and spectral parameters in the high-noise environment is the key to the loss of intelligibility. The LPC conversion causes a majority of voiced frames to become unvoiced. The result is a whispering LPC speech and an almost inaudible low-rate voice. Even if the voicing is correct, spectral distortion causes the low-rate voice to be significantly muffled and buzzy. Although the pitch has no audible errors, the gain has a predominantly annoying effect.
It is therefore a principal object of the invention to provide an improved low-bit-rate speech coder capable of high quality speech coding in a high-noise environment. In accordance with the invention, a two-step approach to conversion of voicing and spectral parameters is taken. In the first step, robust speech frame features whose distributions are not strongly affected by noise levels are generated. In the second step, linear programming is used to determine an optimum combination of these features. A technique of adaptive vector quantization is also used in which a clean codebook is updated based upon an estimate of the background noise levels, and the “noisy” codebook is then searched for the best match with an input speech vector. The corresponding clean codeword is then selected for transmission and for synthesis at the receiver end. The results are better spectral reproduction and significant intelligibility enhancement over the previous coding approach.
In a preferred implementation of the system for the environment of helicopter, it is found that the following features are well distributed to allow good discrimination between voiced and unvoiced speech: (1) low-band energy; (2) zero-crossing counts adapted for noise level; (3) AMDF ratio (speech periodicity) measure; (4) low-pass filtered, backward correlation; (5) low-pass filtered, forward correlation; (6) inverse-filtered backward correlation; and (7) inverse-filtered pitch prediction gain measure. By linear programming analysis, five of these robust features are determined to significantly improve voicing decisions in the speech coder system. Adaptive vector quantization, using estimates of the average noise amplitude and average noise reflection coefficients to update codebook vectors, significantly improves input vector matching.
The above principles and further features and advantages of the invention are described in detail below in conjunction with the drawings, of which:
FIG. 1 is a block diagram of the component steps of the encoding side of a speech coder system in accordance with the invention;
FIG. 2 is a block diagram of the component steps of the decoding side of the speech coder system;
FIG. 3 is a spectral plot of a typical spectrum of a noisy background, i.e., helicopter noise;
FIG. 4 is a spectral plot of typical LPC spectrums comparing different orders of LPC analysis in a noisy environment to a quiet environment;
FIG. 5 is a block diagram of the steps for performing the robust feature extraction, voicing decisions, noise estimation, and updating of a noisy codebook in accordance with the invention;
FIGS. 6, 7 and 8 are plots of the low-band energy for input in a noisy environment at a 400 Hz bandwidth, a quiet environment, and a noisy environment at 800 Hz bandwidth, which demonstrates selection of a robust feature for extraction in accordance with the invention;
FIGS. 9 and 10 are plots of the distribution of zero-crossing counts for input with and without helicopter noise, which demonstrates selection of another robust feature for robust voicing decisions in the invention;
FIGS. 11 and 12 are histograms demonstrating the performance of the AMDF ratio (speech periodicity) measure with helicopter noise and without helicopter noise, respectively, as another robust feature for robust voicing decisions;
FIGS. 13 and 14 are histograms demonstrating the performance of the low-pass filtered, backward correlations measure with helicopter noise and without helicopter noise, respectively, as another feature for robust voicing decisions;
FIGS. 15 and 16 are histograms demonstrating the performance of the low-pass filtered, forward correlations measure with helicopter noise and without helicopter noise, respectively, as another feature for robust voicing decisions;
FIGS. 17 and 18 are histograms demonstrating the performance of the inverse-filtered backward correlations measure with helicopter noise and without helicopter noise, respectively, as another feature for robust voicing decisions;
FIGS. 19 and 20 are histograms demonstrating the performance of the inverse-filtered pitch prediction gain measure with helicopter noise and without helicopter noise, respectively, as another feature for robust voicing decisions;
FIG. 21 is a plot of the voiced error percentage for voicing decisions obtained by the enhanced encoding techniques of the present invention as compared to the prior encoding method.
Referring to FIG. 1, a block diagram of an encoding sequence in accordance with the present invention illustrates the processing of input speech frames. The encoding processing is basically similar to that used in the aforementioned U.S. Pat. No. 4,975,956. The LPC features are generated for each speech frame as an input processing step (8). The gain and pitch parameters are extracted (10, 12) and converted to gain and pitch bits by trellis coding (11, 13). LPC spectral parameters are extracted (19) and converted to line spectrum frequencies (LSPs) and formants for the subsequent vector quantization and/or interpolation (VQ/I) step (18) in a low-bit-rate transmission. The main differences are in the employment of robust LPC feature extraction and voicing decision (14, 15), noise estimation (16), and updating of a clean codebook (17), in order to provide better spectral representation and codeword matching for input speech in a noisy environment. Upon optimal “noisy” codeword matching, the corresponding “clean” codeword indices are then transmitted (20).
In FIG. 2, the decoding sequence of the speech coder system is shown having the usual operations as disclosed in U.S. Pat. No. 4,975,956. The gain and pitch bits are decoded (21, 22) using the reverse process of the encoding method. The transmitted spectral bits of the “clean” codewords are decoded to LSP parameters (23) using a “clean” codebook (24). The decoded parameters are then converted to LPC format (25) and synthesized to output speech.
To identify speech parameters crucial for intelligibility in a high-noise environment, such as helicopter noise, several listening tests were performed comparing the performance of a clean speech file with a noisy speech file through LPC analysis. The listening tests showed that the voicing and spectrum parameters of LPC conversion must be enhanced to obtain intelligible speech coding. Also, the gain parameter requires correction to eliminate an annoying noise effect.
In the following preferred embodiments of the invention, enhanced techniques for low-bit-rate coding are applied to a 400-bps speech coder in the environment of helicopter noise. However, the principles of the invention illustrated herein are applicable for other low bit rates of transmission and to other types of noisy environments as well.
To achieve the low bit rate of 400 bps, spectral parameters are not quantized with every speech frame. As described in the aforementioned U.S. Pat. No. 4,975,956, vector quantization is performed for every even frame, while interpolation is performed for every odd frame. For the odd frame, interpolation bits are sent representing an interpolation factor used for the combination of the spectral codeword of its previous frame and future frame. Based upon a frame period of 22.5 msec used in a standard encoder, the preferred bit allocations are illustrated in Table I.
For even frames, a total of 13 bits are allocated. For odd frames, only 5 bits are allocated. For every pair of even and odd frames, a total of 18 bits are used. Assuming a 45 msec period for every two frames, this bit allocation scheme fits within the 400 bits/second requirement.
The major operations for obtaining robust voicing decisions include preliminary processing, robust feature extraction, voicing classification, and voicing smoothing. The specific parameters of these processing steps depend upon the different applications and environments. In the described example, voicing decisions are made every half frame or 11.25 msec. To enable robust voicing decisions, feature distributions without strong dependence on noise levels are necessary. The selected features are then combined using optimum weights in a linear combination.
Following the usual operations in LPC analysis, the preliminary processing includes high-pass filtering, voicing-window decisions, and low-pass filtering. The low-pass filtering is particularly important for robust voicing decisions in a high noise environment. Even though real-world noise, such as helicopter noise, is usually distributed in characteristic patterns, the spectral strength is normally weak in the low frequency band. A typical spectrum of helicopter noise is shown in FIG. 3 with three salient formants. However, the noise components tend to be weaker below 500 Hz. Therefore, if the cut-off frequency of the low-pass filter is set below 500 Hz, a majority of noise energy is rejected. The high-pass filter is set at a frequency cutoff, such as 100 Hz, which eliminates low frequency background transients and mechanical noise.
Voicing decisions are the determination of fundamental periodicity in the input speech. For human speech, the fundamental frequency is usually below 400 Hz. Therefore, a good choice of the cut-off frequency is about 420 Hz. Using the Remetez exchange algorithm, a low-pass filter with cut-off frequency at 420 Hz and transition frequency at 650 Hz is used. This filter is selected to be even-symmetric with 40 taps. Typical values for the first 20 taps, hk, k=0, . . . 19, are illustrated in Table II.
The next 20 tap values are determined from symmetry and are given as follows:
All the features are extracted in the low-frequency band to minimize the noise corruption. The filtered speech can be computed as follows, where the input speech after high-pass filtering is sn:
A spectral plot of the effect of the low-pass filter is illustrated in FIG. 4 for various LPC orders (10th, 12th, 14th) for a helicopter noise environment, as compared to an input of 10th LPC order in a quiet environment. In a quiet background, the 10th order LPC analysis (solid line) usually generates a good spectral contour. However, as the noise level increases, the 10th order analysis becomes insufficient for reliable spectral representation. The peak from the helicopter noise in the high-frequency band is clearly visible. In the low-frequency band, three dominant formants are visible for the 14th and 12th order LPC analysis, whereas the third formant for the 10th order spectrum is missing. Based upon this evaluation, it is determined that higher-order LPC analysis is clearly preferred for a noisy environment, and therefore, a 14th order LPC analysis is selected herein.
Two major criteria for good robust features are that their distributions must not strongly depend upon noise levels and that they must have good voiced/unvoiced discrimination. Speech samples were evaluated for male and female speakers in a quiet environment with a signal-to-noise ratio of 30 dB, and in a noisy environment with a signal-to-noise ratio of −10 dB. Robust features were then selected on the basis of both low-frequency distributions and voiced/unvoiced discriminations, using low-band energy measurements, zero-crossing rate, and selected correlation calculations as factors. The processing steps for the enhancement techniques of the present invention, including extraction of the robust features, their use for robust voicing decisions, noise estimation, and updating a clean codebook, are illustrated in the block diagram of FIG. 5.
Low-band energy distribution is a measure of energy in the low-frequency band. Typically, voiced speech has higher low-band energy than unvoiced speech. For normalization purposes, this energy is divided by the average voiced energy, as represented by the following equation, wherein 1 represents the speech signal after 100 Hz high-pass filtering and 420 Hz low-pass filtering, and LEA represents the average voiced energy in the low band:
FIG. 6 illustrates a histogram of low-band energy with helicopter noise at S/N=−10 dB, FIG. 7 illustrates low-band energy in a quiet background, and FIG. 8 illustrates low-band energy with twice the bandwidth (i.e., increased to 800 Hz) with helicopter noise at S/N=−10 dB. FIGS. 6 and 7 show similar distributions. For unvoiced speech, the energy distributions are mainly at bin (frequency band) 1. For voiced speech, the distributions are spread over all bins, but with little overlap with the unvoiced bins. A comparison of FIGS. 6 and 8 shows that discrimination is clearly better using the lower bandwidth, since the voiced distribution is reduced at bin 1, where the unvoiced distribution dominates, and increased at bin 11, where the unvoiced distribution is minimal. On the basis of this evaluation, the lower band-width of 400 Hz is selected for robust feature extraction.
Another feature found to have robustness for good voicing decisions is measurement of the zero-crossing rate, i.e., the number of times the input signal crosses a zero (or reference) axis. In effect, it is a count of the high frequency content in the signal. Typically, unvoiced speech has a higher zero-crossing count than voiced speech. The zero-crossing count is accumulated by counting changes in sign of 1n, which is defined as positive if 1n>ąD, and negative if 1n<ąD.
To make the zero-crossing count robust in a noisy environment, it is counted in the low-frequency band, and the dither D is appropriately adjusted in noise. The low-band energy is computed according to the following equation:
For the jth frame, this energy is indicated by Ej. The low-band noise energy is first estimated by assuming there are always available 16 frames without speech activity. Using these 16 frames, the average low-band noise energy EN is computed as:
After these 16 frames, the low-band noise energy is updated at frame k if three conditions are satisfied. First, this frame must be unvoiced. Second, there must already be an accumulation of 16 continuous unvoiced frames before this current frame. Third, the ratio of current low-band energy to average low-band noise energy is less than 1.6. If all three conditions are satisfied at frame k, the average low-band noise energy is updated as follows:
To adapt the coefficient D to noise, a quantity a is defined as follows:
After evaluating a, a minimum between a and 20 is selected. Next, the quantity b, which is the maximum between the selected minimum and 10 is obtained. Mathematically, b is given by the following equation:
where max represents the maximum and min represents the minimum. The adaptation coefficient D is updated as follows:
The newest value of D for frame k is then used to compute the sign of every low-pass filtered sample. The zero-crossing count then follows the procedure mentioned above. The performance of the zero-crossing count is indicated in FIG. 9 for input with helicopter noise and FIG. 10 without helicopter noise. For voiced speech, the distributions are mainly below bin 2. For unvoiced speech, the distributions are mainly above bin 3. Therefore, the zero-crossing feature has not only good discriminations but also robust distributions.
Another feature found to have robustness for speech coding in a noisy environment is a measure of periodicity of speech, referred to herein as AMDF measure. Typically, voiced speech has smaller AMDF values than unvoiced speech. The AMDF computation is done using inverse-filtered speech by passing the low-pass signal through a second-order LPC filter. If vi represents the inverse-filtered speech sample, the AMDF value is computed as follows:
where τ represents the 60 possible pitch lags ranging from 20 samples to 156 samples. These 60 possible lags are searched to find a maximum and a minimum. This feature is then computed as the ratio of maximum AMDF to minimum AMDF, i.e., R=max(AMDF)/min(AMDF). The performance of the AMDF ratio measure is demonstrated in FIG. 11 with helicopter noise and in FIG. 12 without helicopter noise. For voiced speech, the distributions are scattered throughout all bins. There is only a slight overlap with unvoiced speech at bin 2. Both histograms are also quite similar without a strong dependence on noise, and thus demonstrates this to be another robust feature.
A fourth robust feature for voicing decisions in speech coding is a measure of correlation strength at the pitch period, which is a low-pass filtered backward correlation. Typically, voiced speech has higher correlation values than unvoiced speech. However, the correlation is done using negative pitch lags, and is defined mathematically as follows:
where τ represents the pitch period. The above equation shows this feature normalized with respect to low-pass energy with and without negative pitch lag. The performance of this feature is demonstrated in FIG. 13 with helicopter noise and in FIG. 14 without helicopter noise. For both figures, the voiced speech has values predominantly at bin 10 while the unvoiced speech has values below bin 6. Thus, the distributions in both figures are very similar and have good discrimination between voiced and unvoiced speech, and this feature demonstrates the necessary robustness for allowing enhanced voicing decisions.
A fifth robust feature for voicing decisions is a measure of correlation strength via low-pass filtered forward correlation using a positive pitch lag. Typically, the voiced speech has higher correlation values than unvoiced speech. It is defined mathematically as follows:
where τ represents the pitch period. The above equation shows this feature normalized with respect to low-pass energy with and without positive pitch lag. The performance of this feature is demonstrated in FIG. 15 with helicopter noise and in FIG. 16 without helicopter noise. Both distributions and discriminations show similar characteristics as the backward correlations.
Another feature is an inverse-filtered backward correlation, which is also a measure of correlation strength at the pitch period using backward pitch lag. The main difference from the two previous correlation measures is the use of inverse-filtered speech vi. Again, the voiced speech has higher correlation values than unvoiced speech. It is defined mathematically as follows:
where τ represents the pitch period. Normalization is done the same way as before with and without pitch lag. The performance of this feature is demonstrated in FIG. 17 with helicopter noise and in FIG. 18 without helicopter noise. For voiced speech, the distributions concentrate mainly at bins 9 and 10. For unvoiced speech, the distributions are scattered throughout all bins but with very little overlap with voiced bins. Thus, this feature is also suitable for enhancing voicing decisions.
Another feature found to have robustness for voicing decisions is the second-order pitch-prediction gain after inverse filtering, which is also a measure of speech periodicity). The pitch-prediction residual is given by the following equation:
where a1 and a2 are prediction coefficients. The optimum prediction coefficients can be found by differentiating δ with respect to both a1 and a2. Substituting these two optimum values into the above equation, the optimum prediction residual is expressed as follows:
where E represents the zeroth-order autocorrelation coefficient and R represents the normalized autocorrelation coefficients. The second term in the above equation is the prediction gain. The feature used for voicing decisions is slightly modified by rearranging the above equation as follows:
For voiced speech, g has a larger values than for unvoiced speech. The performance of this feature is demonstrated in FIG. 19 with helicopter noise and in FIG. 20 without helicopter noise. For voiced speech, the distributions concentrate mainly at bins 10 and 11. For unvoiced speech, the distributions are scattered throughout all bins but with very little overlap with voiced bins. Thus, this feature is also suitable for enhancing voicing decisions.
All of the seven features discussed above are found to have good discriminations and robust distributions. Further information on the features can be found in the references, “Voices/Unvoiced Classification of Speech with Applications to the U.S. Government LPC-10E Algorithm” by J. Campbell and T. Tremain, ICASSP'86 and “An Enhanced LPC Vocoder with No Voiced/Unvoiced Switch” by S. Y. Kwon and A. J. Goldberg, ASSP-32, 1984. Other robust features may be found using the same criteria. The histogram plots show the there are always some overlaps between voiced bins and unvoiced bins for all features. Therefore, no single feature should be relied upon to make voicing decisions. To minimize potential error, a combination of the features is utilized, as depicted in FIG. 5. A frame may be classified as being voiced if the following inequality of feature combination holds:
where fj represents the jth feature, w represents a weight assigned to the feature, and c is a constant. A frame is classified as unvoiced if the reverse inequality holds. The optimum weights for the combination are determined using linear programming analysis of representative training patterns in which helicopter noise is mixed with clean speech. The correct voicing decisions are measured against LPC analysis of the clean speech. The linear programming analysis solves the inequality equations using the well-known simplex method of linear optimization by first converting them to equalities using slack and surplus variables:
The above equations are solved by maximizing a quantity h. A hyperplane is found separating the voiced region from the unvoiced region, and h is defined to be the average distance between the voiced region and the unvoiced region, given as follows:
The optimum weights are found when h is maximized for the training patterns.
The simplex method starts with an initial feasible solution. However, an initial solution is difficult to find if the number of equations becomes large. To simplify the initial solution, some artificial values are introduced, and the basic equations become as follows:
where the weights wj, j=n+m+k+1, . . . n+k+2m are artificial variables. All the artificial variables are also assigned the negative maximum weight. The quantity h is then given below:
where M is an arbitrarily large number. The solutions are then iterated until all artificial variables are removed and the quantity h can no longer be increased. For a further discussion of this type of linear programming analysis, reference is made to “A Procedure For Using Pattern Classification Techniques To Obtain A Voiced/Unvoiced Classifier”, by L. Siegel, IEEE Trans., ASSP-27, February 1979, and Linear Programming, by G. Hadley, published by Addison Wesley, 1963.
Analyses performed by the above-described procedures showed that the five most useful features for the helicopter-noise patterns are low-band energy, zero-crossing rate, AMDF measure, low-pass filtered backward correlation, and inverse-filtered pitch-prediction gain. Therefore, these five features are combined in this example to make decisions as to when the input speech frames are voiced or unvoiced. Voicing smoothing may also be used to desensitize the voicing decisions to rapid transitions in values. Factors considered in smoothing include the discriminant magnitude of the voiced/unvoiced decisions, the onset of a rapid transition (between half frames), and continuity (which requires no instantaneous change of voicing). The voicing is determined every half frame of 11.25 msec. In order to facilitate the smoothing decisions, the final voicing decisions may be delayed two frames.
Referring again to FIG. 5, vector quantization (VQ/I module) is used to quantize the speech-feature vector for each frame. A codebook C has a vocabulary of model feature vectors mapped to the corresponding codeword indices in a low number of bits. For each input vector, the distortion from each model vector in the codebook is computed. The index of the word having the minimum distortion is then selected for transmission. For a 10-bit codebook used in the study, voiced codewords have indices ranging from 0 to 991 and unvoiced codewords have indices ranging from 992 to 1023. If the codebook is designed in the same environment as the input speech, the optimal speech reproduction can be expected. However, if the codebook is designed in a quiet background while the input speech comes from a noisy environment, selection of the optimum word becomes difficult. Noise cancellation is one conventional technique to remove the background noise from the input speech. However, if not done properly, spectral distortion is also introduced. To overcome this drawback, adaptive vector quantization is used in the present invention. This refers to the updating of the original codebook C based upon an estimate of the background noise level to generate a “noisy” codebook C′. The noisy codebook C′ is searched to find the best match with the input vector, then the index for the corresponding clean codeword is selected for transmission, and is also used at the receiver end for synthesis.
A background noise estimate can be performed in two One is the average noise amplitude Na i, and the other is the average noise reflection coefficients Ba ij, j=1, . . . P, where i represents the current frame number, j represents the coefficient number, and P is the LPC order. To prevent using voiced or unvoiced speech in the computation, the noise estimate for frame i is only performed if two conditions are satisfied: the frame i is decided to be unvoiced; and there must be an accumulation of more than a given number L of continuous unvoiced frames. To count continuous unvoiced frames, a counter n is reset on each voiced frame and incremented on each unvoiced frame. For n>L, the following noise estimates are computed:
The average noise reflection coefficients Ba are further converted to noise autocorrelation coefficients RN. To compute RN and Na at frame i, the values at frame i-15 are utilized. This greatly reduces the probability of including speech frames. The noise estimate parameters RN and Na are then used to add noise parameters to the codebook vectors.
The LSFs are converted to autocorrelation coefficients for each codeword in the clean codebook. As described previously, the higher-order LPC vector can enhance discrimination of the formants in noise, and the codebook is preferably designed using a 14th-order LPC analysis, i.e. P=14. Assuming there are N codewords in the codebook, and each codeword has P autocorrelation coefficients, and RC kj represents the jth coefficient of the kth codeword, then the noise autocorrelation coefficients are added to each codeword as follows:
where RC kj represents the updated codeword vector and Qi represents the mixing ratio at the ith frame. The mixing ratio is determined from the noise amplitude Na i, as follows:
where f is a factor determined empirically, according to the level of noise amplitude, as follows:
The codebook update is performed only when the counter n is at a multiple factor of J frames, which is adjustable depending upon the processor speed. For a very fast processor, the codebook could be updated every frame. In this case, the mixing ratio Qi is determined empirically to depend upon the signal-to-noise ratio, as follows:
where Si represents the speech amplitude at frame i. This mixing ratio is used in the same way as described above to compute the updated codewords.
After computing the updated codebook of autocorrelation coefficients, each codeword is further converted to line-spectrum frequencies (LSFs) and formants. The input reflection coefficients are also converted to LSFs and formants. For the 14th-order LPC analysis, each vector for a voiced frame consists of 14 LSFs and two lowest frequency formants, and each vector for an unvoiced frame consists of 14 LSFs and one highest frequency formant. The N codewords of the codebook are then searched to find the codeword which has the best match with an input vector, and the corresponding index is transmitted to the receiver.
In the receiver, only the clean codebook of N codewords is stored. The received index is used to select the corresponding clean codeword for synthesis. Thus, even though an updated (noisy) codebook is used to produce better matching, a clean codebook is used for synthesis of output speech in which spectral distortion is greatly reduced.
The previous speech coder techniques as described in U.S. Pat. No. 4,975,956 could be implemented for 400-bps transmission using a 100 nsec DSP processor (equivalent to 10 Mips). The enhanced techniques can be implemented using two such DSPs, if tree searching for codeword matches and 32-frame codebook updates are used. Using the voicing decisions from LPC analysis of clean speech via the prior techniques as a reference, the performance of the new voicing decision techniques is illustrated in FIG. 21 as a plot of error percentage versus signal-to-noise ratio by neglecting those frames with gain less than 5 in the quiet background. For the reference plot of the old voicing decisions, the error percentage is zero at a signal-to-noise ratio of 30 dB. However, the error percentage climbs abruptly to 66% at a signal-to-noise ratio of −10 dB. Using the new voicing decision techniques, the error percentage increases only about 1% as the signal-to-noise ratio drops from 30 dB to −10 dB. If all voiced frames are considered regardless of gain, the error percentage increases from about 2% at S/N of 30 dB to 6% at S/N of −10 dB. For unvoiced frames, the robustness remains about the same. The superiority of the enhanced speech coding techniques is thus clearly demonstrated.
Informal listening tests were also conducted both for speech samples in which noise was mixed with clean speech and those recorded in the actual helicopter noise environment. The listening tests showed none of the previous whispering LPC speech for either type of sample. The 400-bps speech in the noisy environment was reproduced as clearly audible but with some degradation in quality. To improve speech intelligibility, improved vector quantization can be applied.
The adaptive vector quantization was also tested using noisy speech samples of the same two types. The listening tests showed that there is always an intelligibility improvement using codebook adaptation. The degree of improvement depends upon three factors: signal-to-noise ratio; rate of codebook update; and the use of preemphasis. Tests on the effect of S/N ratio showed that the intelligibility improvement is quite significant at very low S/N such as −10 dB. for higher S/N, the improvement is less audible, which is expected since there is less noise corruption. The intelligibility improvement seems to depend only a little on the rate of codebook update. Updating with every frame appeared only slightly better than updating every 32 frames. As to preemphasis, tests of mixed speech showed that the same factor as used in the clean codebook should be used, whereas for recorded speech, a smaller preemphasis factor can significantly improve intelligibility.
The specific embodiments of the invention described herein are intended to be illustrative only, and many other variations and modifications may be made thereto in accordance with the principles of the invention. All such embodiments and variations and modifications thereof are considered to be within the scope of the invention, as defined in the following claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4074069 *||Jun 1, 1976||Feb 14, 1978||Nippon Telegraph & Telephone Public Corporation||Method and apparatus for judging voiced and unvoiced conditions of speech signal|
|US4091237 *||May 20, 1977||May 23, 1978||Lockheed Missiles & Space Company, Inc.||Bi-Phase harmonic histogram pitch extractor|
|US4296279 *||Jan 31, 1980||Oct 20, 1981||Speech Technology Corporation||Speech synthesizer|
|US4589131 *||Sep 23, 1982||May 13, 1986||Gretag Aktiengesellschaft||Voiced/unvoiced decision using sequential decisions|
|US4630304 *||Jul 1, 1985||Dec 16, 1986||Motorola, Inc.||Automatic background noise estimator for a noise suppression system|
|US4696038 *||Apr 13, 1983||Sep 22, 1987||Texas Instruments Incorporated||Voice messaging system with unified pitch and voice tracking|
|US4720802 *||Jul 26, 1983||Jan 19, 1988||Lear Siegler||Noise compensation arrangement|
|US4933973 *||Aug 16, 1989||Jun 12, 1990||Itt Corporation||Apparatus and methods for the selective addition of noise to templates employed in automatic speech recognition systems|
|US4975956 *||Jul 26, 1989||Dec 4, 1990||Itt Corporation||Low-bit-rate speech coder using LPC data reduction processing|
|US5073940 *||Nov 24, 1989||Dec 17, 1991||General Electric Company||Method for protecting multi-pulse coders from fading and random pattern bit errors|
|US5127053 *||Dec 24, 1990||Jun 30, 1992||General Electric Company||Low-complexity method for improving the performance of autocorrelation-based pitch detectors|
|US5459814 *||Mar 26, 1993||Oct 17, 1995||Hughes Aircraft Company||Voice activity detector for speech signals in variable background noise|
|US5806024 *||Dec 23, 1996||Sep 8, 1998||Nec Corporation||Coding of a speech or music signal with quantization of harmonics components specifically and then residue components|
|US6018707 *||Sep 5, 1997||Jan 25, 2000||Sony Corporation||Vector quantization method, speech encoding method and apparatus|
|US6081776 *||Jul 13, 1998||Jun 27, 2000||Lockheed Martin Corp.||Speech coding system and method including adaptive finite impulse response filter|
|1||Chen et al., "Robust Vector Quantization Based on Spectral Mapping with a Noise Estimate", IEEE Pacific RIM Conference on Communications, Conference date: Jun. 1, 1989.|
|2||*||Deller et al., ("Discrete-Time Processing of Speech Signals," Prentice Hall, Upper Saddle River, NJ, pp. 244-251, 471-473, Dec. 1987).*|
|3||Kou et al., "Vector-Adaptive Vector Quantization with Application to Speech Coding", IEEE Transactions on Communications, vol. 39, No. 6, Jun. 1991.|
|4||*||Rabiner et al., ("Digital Processing of Speech Signals," Prentice Hall, Upper Saddle River, NJ, pp. 130-133, 451-452, Dec. 1978).*|
|5||*||Siegel, ("A Procedure for Using Pattern Classification Techniques to Obtain a Voiced/Unvoiced Classifier", IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. ASSP-27, No. 1, Feb. 1979).*|
|6||*||Wolfgang Hess, ("Pitch Determination of Speech Signals", pp. 373-383, Springer-Verlag, NY, 1983).*|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US6961696 *||Feb 7, 2003||Nov 1, 2005||Motorola, Inc.||Class quantization for distributed speech recognition|
|US7305337 *||Dec 24, 2002||Dec 4, 2007||National Cheng Kung University||Method and apparatus for speech coding and decoding|
|US7480639 *||Jun 1, 2005||Jan 20, 2009||Siemens Medical Solution Usa, Inc.||Support vector classification with bounded uncertainties in input data|
|US7835311 *||Aug 28, 2007||Nov 16, 2010||Broadcom Corporation||Voice-activity detection based on far-end and near-end statistics|
|US7890319 *||Apr 16, 2007||Feb 15, 2011||Canon Kabushiki Kaisha||Signal processing apparatus and method thereof|
|US8135585 *||Jul 2, 2009||Mar 13, 2012||Lg Electronics Inc.||Method and an apparatus for processing a signal|
|US8280724 *||Jan 31, 2005||Oct 2, 2012||Nuance Communications, Inc.||Speech synthesis using complex spectral modeling|
|US8565127||Nov 16, 2010||Oct 22, 2013||Broadcom Corporation||Voice-activity detection based on far-end and near-end statistics|
|US9142221 *||Apr 7, 2008||Sep 22, 2015||Cambridge Silicon Radio Limited||Noise reduction|
|US20020150264 *||Apr 11, 2001||Oct 17, 2002||Silvia Allegro||Method for eliminating spurious signal components in an input signal of an auditory system, application of the method, and a hearing aid|
|US20040158461 *||Feb 7, 2003||Aug 12, 2004||Motorola, Inc.||Class quantization for distributed speech recognition|
|US20050091066 *||Oct 28, 2003||Apr 28, 2005||Manoj Singhal||Classification of speech and music using zero crossing|
|US20050131680 *||Jan 31, 2005||Jun 16, 2005||International Business Machines Corporation||Speech synthesis using complex spectral modeling|
|US20050273447 *||Jun 1, 2005||Dec 8, 2005||Jinbo Bi||Support vector classification with bounded uncertainties in input data|
|US20090248407 *||Mar 29, 2007||Oct 1, 2009||Panasonic Corporation||Sound encoder, sound decoder, and their methods|
|US20090254340 *||Apr 7, 2008||Oct 8, 2009||Cambridge Silicon Radio Limited||Noise Reduction|
|US20140244247 *||Feb 28, 2013||Aug 28, 2014||Google Inc.||Keyboard typing detection and suppression|
|U.S. Classification||704/227, 704/214, 704/223, 704/208, 704/219, 704/213|
|International Classification||G10L19/04, G10L21/02, G10L11/06|
|Cooperative Classification||G10L19/04, G10L25/93, G10L21/0264, G10L25/09|
|Apr 21, 2005||FPAY||Fee payment|
Year of fee payment: 8
|Apr 21, 2009||FPAY||Fee payment|
Year of fee payment: 12
|Jan 20, 2012||AS||Assignment|
Owner name: EXELIS INC., VIRGINIA
Effective date: 20111221
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ITT CORPORATION;REEL/FRAME:027567/0311