The present invention relates to noise suppression in telephony systems, and in particular to network-based noise suppression.
Noise suppression is used to suppress any background acoustic sound superimposed on the desired speech signal, while preserving the characteristics tics of the speech. In most applications, the noise suppressor is implemented as a pre-processor to the speech encoder. The noise suppressor may also be implemented as an integral part of the speech encoder.
There also exist implementations of noise suppression algorithms that are installed in the networks. The rationale for using these network-based implementations is that a noise reduction can be achieved also when the terminals do not contain any noise suppression. These algorithms operate on the PCM (Pulse Code Modulated) coded signal and are independent of the bit-rate of the speech-encoding algorithm. However, in a telephony system using low speech coding bit-rate (such as digital cellular systems), network based noise suppression can not be achieved without introducing a tandem encoding of the speech. For most current systems this is not a severe restriction, since the transmission in the core network usually is based on PCM coded speech, which means that the tandem coding already exists. However, for tandem free or transcoder free operation, a decoding and subsequent encoding of the speech has to be performed within the noise-suppressing device itself, thus breaking the otherwise tandem free operation. A drawback of this method is that tandem coding introduces a degradation of the speech, especially for speech encoded at low bit-rates.
An object of the present invention is a noise reduction in an encoded speech signal formed by LP (Linear Predictive) coding, especially low bit-rate CELP (Code Excited Linear Predictive) encoded speech, without introducing any tandem encoding.
This object is achieved in accordance with the attached claims.
Briefly, the present invention is based on modifying the parameters containing the spectral and gain information in the coded bit-stream while leaving the excitation signals unchanged. This gives noise suppression with improved speech quality for systems with transcoder free operation.
The invention, together with further objects and advantages thereof, may best be understood by making reference to the following description taken together with the accompanying drawings, in which:
In the following description elements performing the same or similar functions have been provided with the same reference designations.
The present invention solves this problem by avoiding the second encoding step of the conventional systems. Instead of modifying the samples of a decoded PCM signal, the present invention performs noise suppression directly in the speech coded bit-stream by modifying certain speech parameters, as will be described in more detail below.
The present invention will now be explained with reference to CELP coding. However, it is to be understood that the same principles may be used for any type of linear predictive coding
The parameters of the filter A(z) and the parameters defining excitation signal u(n) are derived from the bit-stream produced by the speech encoder.
A noise suppression algorithm can be described as a linear filter operating on the speech signal produced by the speech decoder, i.e.
y(n)=H(z)s(n)
where the (time-varying) filter H(z) is designed so as to suppress the noise while retaining the basic characteristics of the speech, see e.g. WO 01/18960 A1 for more details on the derivation of the filter H(z).
Now, applying the knowledge of how the speech decoder produces the decoded speech, a noise-suppressed signal can be achieved at the output of the speech decoder as
The basic idea of the invention is to approximate the filter H(z)/A(z) with an AR (Auto Regressive) filter Ã(z) of the same order as A(z) and a gain factor α. Thus, the noise-suppressed signal at the output of the speech decoder can be approximated as
Hence, by replacing the parameters in the coded bit-stream describing the filter A(z) and the gain of the excitation signal with new parameters describing Ã(z) and a gain reduced by α, the noise suppression can be performed without introducing any complete decoding and subsequent coding of the speech.
As an example of how the modification of the bit stream is performed, the application of the present invention to the 12.2 kbit/s mode of the Adaptive Multi-Rate (AMR) speech encoder for the GSM and UMTS systems will now be described with reference to
Once the coefficients f1(i) and f2(i) are found, F1(z) and F,(z) are multiplied by 1+z−1 and 1−z−1, respectively, to obtain F1′(z) and F2′(z); that is:
f1′(i)=f1(i)+f1(i−1), i=1, . . . , 5
f2′(i)=f2,(i)−f2(i−1), i=1, . . . , 5
Finally the LP coefficients are found by:
This is directly derived from the relation A(z)=(F1′(z)+F2′(z))/2, and considering the fact that f1′(z) and F2′(z) are symmetric and anti-symmetric polynomials, respectively.
Another possibility is to completely decode the speech signal and to use the fast Fourier transform to obtain {circumflex over (Φ)}x(k).
Modify the filter defined by H(k) as described in WO 01/18960. This gives the desired H(z). The reason for the modification is that noise suppressing filters designed in the frequency domain are real-valued, which leads to a time domain representation in which the peak of the filter is split between the beginning and end of the filter (this is equivalent to a filter that is symmetric around lag 0, i.e. a non-causal filter). This makes the filter unsuitable for circular block convolution, since such a filter will generate temporal aliasing. The performed modification is outlined in
The set of equations is solved using the Levinson-Durbin algorithm. This algorithm uses the following recursion:
ELD(0)=rac′(0)
for i=1 to 10 do
The final solution is even as aj=aj(10),j=1, . . . ,10.
The LP filter coefficients are converted to the line spectral pair (LSP) representation for guantization and interpolation purposes. The conversions to the LSP domain and back to the LP filter coefficient domain are described in the next clause.
The LP filter coefficients a,k=1, . . . ,10, are converted to the line speciral pair (LSP) representation for guantization and interpolation purposes. For a 10th order LP filter, the LSPs are defined as the roots of the sum and difference polynomials:
F1′(z)=A(z)+z−11A(z−1)
and
F2′(z)=A(z)−z−11A(z−1),
respectively The polynomial F1′(z) and F2′(z) are symmetric and anti-symmetric, respectively. It can be prove that all roots of these polynomials are on the unit circle and they alternate each other. F1′(z) has a root z=−1 (ω=π) and F2′(z) has a root z=1 (ω=0). To eliminate these two roots, we define the new polynomials:
F1(z)=F1′(z)/(1÷z−1)
and
F2(z)=F2′(z)/(1−z−1)
Each polynomial has 5 conjugate roots on the unit circle e±jo
where qi=cos (ωi) with ωi being the line spectral frequencies (LSF) and they satisfy the ordering property 0<ω1<ω2< . . . <ω10π. We refer to qi as the LSPs in the cosine domain.
Since both polynomials F1(z) and F2(z) are symmetric only the first 5 coefficients of each polynomial need to be computed. The coefficients of these polynomials are found by the recursive relations (for i=0 to 4):
f1(i÷1)=ai+1+am−i−fl(i)
f2(i÷1)=ai+1−am−i+f2(i)
where m=10 is the predictor order.
The LSPs are found by evaluating the polynomials F1(z) and F2(z) at 60 points equally spaced between 0 and and checking for sign changes. A sign change signifies the existence of a root and the sign change interval is then divided 4 times to better track the root. The Chebyshev polynomials are used to evaluate F1(z) and F2(z). In this method the roots are found directly in the cosine domain {qi}. The polynomials F1(z) or F2(z) evaluated at z=ejω can be written as:
F(ω)=2e−j5ωC(x),
with:
C(x)=T5(x)+f(1)T4 (x)+f(2)T3(x)+f(3)T2(x)÷f(4)T1(x)+f(5)/2,
where Tm(x)=cos(mω) is the mth order Chebyshev polynomial, and f(i), i=1, . . . ,5 are the coefficients of either F1(z) or F2(z), computed using the equations in (16). The polynomial C(x) is evaluated at a certain value of x=cos(ω) using the recursive relation:
for k=4 down to 1
λk=2xλk+1−λk+2+f(5−k)
end
C(x)=xλ1−λ2÷f(5)/2,
with initial values λ5=1 and λ6=0.
where fi are the line spectral frequencies (LSF) in Hz [0,4000] and f5=8000 is the sampling frequency. The LSF vector is given by fi=[f1f2. . . f10], with f denoting transpose.
A 1st order MA prediction is applied, and the two residual LSF vectors are jointly quantified using split matrix guantization (SMQ). The prediction and quantization are performed as follows. Let z(1)(n) and z(2)(n) denote the mean-removed LSF vectors as frame n. The prediction residual vectors r(1)(n)) and r(2)(n) are given by:
r(1)(n)=z(1)(n)−p(n), and
r(2)(n)=z (2)(n)−p(n)
where p(n) is the predicted LSF vector at frame n. First order moving-average (MA) prediction is used where:
p(n)=0.65{circumflex over (r)}(2)(n−1),
where {circumflex over (r)}(2)(n−1) is the quantified second residual vector at the past frame.
The two LSF residual vectors r(1) and r(2) are jointly quantified using split matrix quantization (SMQ). The matrix (r(1) r(2)) is split into 5 submatrices of dimension 2×2 (two elements from each vector). For example, the first submatrix consists of the elements r1(1), r2(1), r1(2), and r2(2). The 5 submatrices are quantified with 7, 8, 8+1, 8, and 6 bits, respectively. The third submatrix uses a 256-entry signed codebook (8-bit index plus 1-bit sign).
A weighted LSP distortion measure is used in the quantization process. In general, for an input LSP vector f and a quantified vector at index k, {circumflex over (f)}k, the quantization is performed by finding the index k which minimizes:
The weighting factors wi,i=1, . . . ,10, are given by
where di=fi+1−fi−1 with f0=0 and f11=4000. Here, two sets of weighting coefficients are computed for the two LSF vectors. In the quantification of each submatrix, two weighing coefficients from each set are used with their corresponding LSFs.
The noise suppression algorithm modifies the gain by the factor α. Thus, the gain in the decoder should equal α times the gain in the encoder, i.e.
ĝcdec=αĝcenc
Using the expressions above it is found that
γnew(n)100.05({tilde over (E)}
Hence, the transmitted gain correction factor should be replaced by
γnew(n)=αγ(n)100.05({tilde over (E)}
where {tilde over (E)}enc(n) and {tilde over (E)}dec(n) are the predicted energies based on the gain factors transmitted by the encoder and the gain factors modified by the noise suppression algorithm.
In the described example the fixed and adaptive codebook gains are coded independently. In some coding modes with lower bit-rate they are vector quantized. In such a case the adaptive codebook gain will also be modified by the noise suppression. However, the excitation vectors are still unchanged.
It will be understood by those skilled in the art that various modifications and changes may be made to the present invention without departure from the scope thereof, which is defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
0101157 | Mar 2001 | SE | national |
0102519 | Jul 2001 | SE | national |
Number | Name | Date | Kind |
---|---|---|---|
5148488 | Chen et al. | Sep 1992 | A |
5307405 | Sih | Apr 1994 | A |
5434947 | Gerson et al. | Jul 1995 | A |
5570453 | Gerson et al. | Oct 1996 | A |
5706395 | Arslan et al. | Jan 1998 | A |
5913187 | Mermelstein | Jun 1999 | A |
5966689 | McCree | Oct 1999 | A |
Number | Date | Country |
---|---|---|
1 081 684 | Mar 2001 | EP |
WO 9901864 | Jan 1999 | WO |
0118960 | Mar 2001 | WO |
WO 0118960 | Mar 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20020184010 A1 | Dec 2002 | US |