Abstract:
A residual error based compensator for the frequency domain bias of an autoregressive spectral estimator is disclosed. LPC analysis is performed on the residual signal and a parametric PSD estimate is formed with the obtained LPC parameters. The PSD estimate of the residual signal multiplies the PSD estimate of the input signal.

Description:
This application is a continuation of International Application No. PCT/SE96/00753, filed Jun. 7, 1996, which designates the United States. 
    
    
     TECHNICAL FIELD 
     The present invention relates to a bias compensated spectral estimation method and apparatus based on a parametric auto-regressive model. 
     The present invention may be applied, for example, to noise suppression in telephony systems, conventional as well as cellular, where adaptive algorithms are used in order to model and enhance noisy speech based on a single microphone measurement,see Citations [1, 2] in the appendix. 
     Speech enhancement by spectral subtraction relies on, explicitly or implicitly, accurate power spectral density estimates calculated from the noisy speech. The classical method for obtaining such estimates is periodogram based on the Fast Fourier Transform (FFT). However, lately another approach has been suggested, namely parametric power spectral density estimation, which gives a less distorted speech output, a better reduction of the noise level and remaining noise without annoying artifacts (&#34;musical noise&#34;). For details on parametric power spectral density estimation in general, see Citations [3, 4] in the appendix. 
     In general, due to model errors, there appears some bias in the spectral valleys of the parametric power spectral density estimate. In the output from a spectral subtraction based noise. canceler this bias gives rise to an undesirable &#34;level pumping&#34; in the background noise. 
     SUMMARY 
     An object of the present invention is a method and apparatus that eliminates or reduces this &#34;level pumping&#34; of the background noise with relatively low complexity and without numerical stability problems. 
     This object is achieved by a method and apparatus in accordance with the enclosed claims. 
     The key idea of this invention is to use a data dependent (or adaptive) dynamic range expansion for the parametric spectrum model in order to improve the audible speech quality in a spectral subtraction based noise canceler. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     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: 
     FIG. 1 is a block diagram illustrating an embodiment of an apparatus in accordance with the present invention; 
     FIG. 2 is a block diagram of another embodiment of an apparatus in accordance with the present invention; 
     FIG. 3 is a diagram illustrating the true power spectral density, a parametric estimate of the true power spectral density and a bias compensated estimate of the true power spectral density; 
     FIG. 4 is another diagram illustrating the true power spectral density, a parametric estimate of the true power spectral density and a bias compensated estimate of the true power spectral density; 
     FIG. 5 is a flow chart illustrating the method performed by the embodiment of FIG. 1; and 
     FIG. 6 is a flow chart illustrating the method performed by the embodiment of FIG. 2. 
    
    
     DETAILED DESCRIPTION 
     Throughout the drawings the same reference designations will be used for corresponding or similar elements. 
     Furthermore, in order to simplify the description of the present invention, the mathematical background of the present invention has been transferred to the enclosed appendix. In the following description numerals within parentheses will refer to corresponding equations in this appendix. 
     FIG. 1 shows a block diagram of an embodiment of the apparatus in accordance with the present invention. A frame of speech {x(k)} is forwarded to a LPC analyzer (LPC analysis is described in, for example, Citation [5]) in the appendix. LPC analyzer 10 determines a set of filter coefficients (LPC parameters) that are forwarded to a PSD estimator 12 and an inverse filter 14. PSD estimator 12 determines a parametric power spectral density estimate of the input frame {x(k)} from the LPC parameters (see Citation (1) in the appendix). In FIG. 1 the variance of the input signal is not used as an input to PSD estimator 12. Instead a unit signal &#34;1&#34; is forwarded to PSD estimator 12. The reason for this is simply that this variance would only scale the PSD estimate, and since this scaling factor has to be canceled in the final result (see Citation (9) in the appendix), it is simpler to eliminate it from the PSD calculation. The estimate from PSD estimator 12 will contain the &#34;level pumping&#34; bias mentioned above. 
     In order to compensate for the &#34;level pumping&#34; bias the input frame {x(k)} is also forwarded to inverse filter 14 for forming a residual signal (see Citation (7) in the appendix), which is forwarded to another LPC analyzer 16. LPC analyzer 16 analyses the residual signal and forwards corresponding LPC parameters (variance and filter coefficients) to a residual PSD estimator 18, which forms a parametric power spectral density estimate of the residual signal (see Citation (8) in the appendix). 
     Finally the two parametric power spectral density estimates of the input signal and residual signal, respectively, are multiplied by each other in a multiplier 20 for obtaining a bias compensated parametric power spectral density estimate of input signal frame {x(k)} (this corresponds to equation (9) in the appendix). 
     EXAMPLE 
     The following scenario is considered: The frame length N=1024 and the AR (AR=AutoRegressive) model order p=10. The underlying true system is modeled by the ARMA (ARMA=AutoRegressive-Moving Average) process ##EQU1## where e(k) is white noise. 
     FIG. 3 shows the true power spectral density of the above process (solid line), the biased power spectral density estimate from PSD estimator 12 (dash-dotted line) and the bias compensated power spectral density estimate in accordance with the present invention (dashed line). From FIG. 3 it is clear that the bias compensated power spectral density estimate in general is closer to the underlying true power spectral density. Especially in the deep valleys (for example for ω/(2 π)≈0.17) the bias compensated estimate is much closer (by 5 dB) to the true power spectral density. 
     In a preferred embodiment of the present invention a design parameter γ may be used to multiply the bias compensated estimate. In FIG. 3 parameter γ was assumed to be equal to 1. Generally γ is a positive number near 1. In the preferred embodiment γ has the value indicated in the algorithm section of the appendix. Thus, in this case γ differs from frame to frame. FIG. 4 is a diagram similar to the diagram in FIG. 3, in which the bias compensated estimate has been scaled by this value of γ. 
     The above described embodiment of FIG. 1 may be characterized as a frequency domain compensation, since the actual compensation is performed in the frequency domain by multiplying two power spectral density estimates with each other. However, such an operation corresponds to convolution in the time domain. Thus, there is an equivalent time domain implementation of the invention. Such an embodiment is shown in FIG. 2. 
     In FIG. 2 the input signal frame is forwarded to LPC analyzer 10 as in FIG. 1. However, no power spectral density estimation is performed with the obtained LPC parameters. Instead the filter parameters from LPC analysis of the input signal and residual signal are forwarded to a convolution circuit 22, which forwards the convoluted parameters to a PSD estimator 12&#39;, which forms the bias compensated estimate, which may be multiplied by γ. The convolution step may be viewed as a polynomial multiplication, in which a polynomial defined by the filter parameters of the input signal is multiplied by the polynomial defined by the filter parameters of the residual signal. The coefficients of the resulting polynomial represent the bias compensated LPC-parameters. The polynomial multiplication will result in a polynomial of higher order, that is, in more coefficients. However, this is no problem, since it is customary to &#34;zero pad&#34; the input to a PSD estimator to obtain a sufficient number of samples of the PSD estimate. The result of the higher degree of the polynomial obtained by the convolution will only be fewer zeroes. 
     Flow charts corresponding to the embodiments of FIGS. 1 and 2 are given in FIGS. 5 and 6, respectively. Furthermore, the corresponding frequency and time domain algorithms are given in the appendix. 
     A rough estimation of the numerical complexity may be obtained as follows. The residual filtering (7) requires ≈Np operations (sum+add). The LPC analysis of e(k) requires ≈Np operations to form the covariance elements and ≈p 2  operations to solve the corresponding set of equations (3). Of the algorithms (frequency and time domain) the time domain algorithm is the most efficient, since it requires ≈p 2  operation for performing the convolution. To summarize, the bias compensation can be performed in ≈p (N+p) operations/frame. For example, with n=256 and p=10 and 50% frame overlap, the bias compensation algorithm requires approximately 0.5×10 6  instructions/s. 
     In this specification the invention has been described with reference to speech signals. However, the same idea is also applicable in other applications that rely on parametric spectral estimation of measured signals. Such applications can be found, for example, in the areas of radar and sonar, economics, optical interferometry, biomedicine, vibration analysis, image processing, radio astronomy, oceanography, etc. 
     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 spirit and scope thereof, which is defined by the appended claims. 
     CITATIONS 
     [1] S. F. Boll, &#34;Suppression of Acoustic Noise in Speech Using Spectral subtraction&#34;, IEEE Transactions on Acoustics, Speech and Signal Processing, Vol. ASSP-27, April 1979, pp 113-120. 
     [2] J. S. Lim and A. V. Oppenheim, &#34;Enhancement and Bandwidth Compression of Noisy Speech&#34;, Proceedings of the IEEE, Vol. 67, No. 12, December 1979, pp. 1586-1604. 
     [3] S. M. Kay, Modern Spectral estimation: Theory and Application, Prentice Hall, Englewood Cliffs, N.J., 1988, pp 237-240. 
     [4] J. G. Proakis et al, Advanced Digital Signal Processing, Macmillam Publishing Company, 1992, pp. 498-510. 
     [5] J. G. Proakis, Digital Communications, MacGraw Hill, 1989, pp. 101-110. 
     [6] P. Handel et al, &#34;Asymptotic variance of the AR spectral estimator for noisy sinusoidal data&#34;, Signal Processing, Vol. 35, No. 2, January 1994, pp. 131-139. 
     APPENDIX 
     Consider the real-valued zero mean signal {x(k)}, k=1 . . . , N where N denotes the frame length (N=160, for example). The autoregressive spectral estimator (ARSPE) is given by, see |3, 4| ##EQU2## where ω is the angular frequency ωε(0, 2 π). In (I), A(x) is given by 
     
         A(x)=1+a.sub.1 z+ . . . +a.sub.p x.sup.p                   (2) 
    
     where θ x  =(a 1  . . . a p ) T  are the estimated AR coefficients (found by LPC analysis, see |5|) and σ x   2  is the residual error variance. The estimated parameter vector θ x  and σ x   2  are calculated from {x(k)} as follows: 
     
         θ.sub.x =-R.sup.-1 r 
    
     
         σ.sub.x.sup.2 =r.sub.0 +r.sup.T θ.sub.x        (3) 
    
     where ##EQU3## and, where ##EQU4## 
     The set of linear equations (3) can be solved using the Levinson-Durbin algorithm, see |3|. The spectral estimate (1) is known to be smooth and its statistical properties have been analyzed in |6| for broad-band and noisy narrow-band signals, respectively. 
     In general, due to model errors there appears some bias in the spectral valleys. Roughly, this bias can be described as ##EQU5## where Φ x  (ω) is the estimate (1) and Φ x  (ω) is the true (and unknown) power spectral density of x(k). 
     In order to reduce the bias appearing in the spectral valleys, the residual is calculated according to 
     
         ε(k)=A(x.sup.-1)x(k)k=1 . . . N                    (7) 
    
     Performing another LPC analysis on {ε(k)}, the residual power spectral density can be calculated from. cf. (1) ##EQU6## where similarly to (2), θ.sub.ε =(b 1  . . . b q ) T  denotes the estimated AR coefficients and σ.sub.ε 2  the error variance. In general, the model order q≠p, but here it seems reasonable to let p=q. Preferably p≈√N, for example N may be chosen around 10. 
     In the proposed frequency domain algorithm below, the estimate (1) is compensated according to ##EQU7## where γ(≈1) is a design variable. The frequency domain algorithm is summarized in the algorithms section below and in the block diagrams in FIGS. 1 and 5. 
     A corresponding time domain algorithm is also summarized in the algorithms section and in FIGS. 2 and 6. In this case the compensation is performed in a convolution step, in which the LPC filter coefficients θ x  are compensated. This embodiment is more efficient, since one PSD estimation is replaced by a less complex convolution. In this embodiment the scaling factor γ may simply be set to a constant near or equal to 1. However, it is also possible to calculate γ for each frame, as in the frequency domain algorithm by calculating the root of the characteristic polynomial defined by θ.sub.ε  that lies closest to the unit circle. If the angle of this root is denoted ω, then ##EQU8## 
     ALGORITHMS 
     Inputs 
     x input data x=(x(1) . . . x(N)) T   
     p LPC model order 
     Outputs 
     θ x  signal LPC parameters θ x  =(a 1  . . . a p ) T   
     σ x   2  signal LPC residual variance 
     Φ x  signal LPC spectrum Φ x  =(Φ x  (1) . . . Φ x  (N/2)) T   
     Φ x  compensated LPC spectrum Φ x  =(Φ x  (1) . . . Φ x  (N/2)) T   
     εresidual ε=(ε(1) . . . ε(N)) T   
     θresidual LPC parameters θ.sub.ε =(b 1  . . . b p ) T   
     σ.sub.ε 2  residual LPC error variance 
     γ design variable (=1/(max k  Φ.sub.ε (k)) in preferred embodiment) 
     FREQUENCY DOMAIN ALGORITHM 
     For Each Frame Do the Following Steps 
     
         ______________________________________power spectral density estimation______________________________________[θ.sub.x, σ.sub.x.sup.2 ] := LP Canalyze(x,p)           signal LPC analysisφ.sub.x := SPEC(θ.sub.x, 1. N)           signal spectral estimation, σ.sub.x.sup.2 set to 1           (bias compensation)ε := FILTER(θ.sub.x, x)           residual filtering[θ.sub.ε, σ.sub.ε.sup.2 ] := LPCanalyze(ε, p)   residual LPC analysisΦ.sub.ε  := SPEC(θ.sub.ε, σ.sub.ε.sup.2, N)       residual spectral estimationFOR k=1 TO N/2 DO           spectral compensationΦ.sub.x (k) := γ · Φ.sub.x (k) · Φ.sub.ε (k)  1/max.sub.k Φ.sub.ε (k)) ≦ γ           ≦ 1END FOR______________________________________ 
    
     FREQUENCY DOMAIN ALGORITHM 
     For Each Frame Do the Following Steps 
     
         ______________________________________[θ.sub.x, σ.sub.x.sup.2 ] := LPCanalyze(x, p)               signal LPC analysisε := FILTER(θ.sub.x, x)               residual filtering[θ.sub.ε, σ.sub.ε.sup.2 ] := LPCanalyze(.epsilon., p)             residual LPC analysisθ :=CONV(θ.sub.x,θ.sub.ε)               LPC compensationΦ := SPEC(θ, σ.sub.ε.sup.2, N)               spectral estimationFOR k=1 TO N/2 DO   scalingΦ.sub.x (k) := γ · Φ(k)END FOR______________________________________