The present invention relates to reduction of delay in digital filters based on a desired magnitude response.
Requirements on a digital signal processing device to be used in a telephony network normally aim at minimizing the signal propagation delay imposed by the device, to reduce the total round trip delay which otherwise would affect the conversation quality negatively, see [1]. It is common for signal processing devices (such as noise reduction devices, echo cancellers, etc.) to apply some kind of linear filtering, serially connected to the signal path, to improve the speech signal. Two examples are:
In both these telecommunication applications it is vital that the voice enhancement devices do not add to the round trip delay. Thus, it is desirable to minimize the delay of the signal processing filters. However, at the same time it is also desirable to maintain high stop-band rejection. Achieving high stop-band rejection is particularly important in echo cancellation applications, where a serially connected filter is required to suppress residual echo in certain frequency bands (the ones where residual echo dominates over true near end signal), while passing some other bands (the ones dominated by the true near end signal).
The derivative of the phase characteristic of a linear filter with respect to frequency is a measure of the time delay (i.e. group delay or envelope delay) that signal frequency components undergo in passing through the filter. A minimum-phase filter characteristic implies a minimum delay function, while a maximum-phase filter characteristic implies that the delay characteristic is also maximum. A mixed-phase system has a delay in between the two extremes. One solution to decrease the delay, which is imposed by a linear filter, is to convert it to a minimum-phase filter, which by definition has a minimal group delay through the filter.
Suppose that we have a finite impulse response (FIR) filter prototype H(ω) with real coefficients. The magnitude square value of its frequency response is
Relationship (1) implies that if we replace a zero zk of the filter by its inverse 1/zk inside the unit circle, the magnitude characteristic of the filter does not change. Hence, a method for converting a finite impulse response (FIR) mixed/maximum phase filter to a minimum-phase filter is to mirror all zeros into the unit circle. However, this requires that the exact values of the zeros zk need to be calculated and would also require a large amount of divisions, which is inefficient in a typical real-time application on a digital signal processor (DSP). Mainly three workable other approaches exist for performing the conversion to a minimum-phase filter:
An objective of the present invention is to provide a method and apparatus for reducing the delay of a desired filter with a given magnitude response to approximately minimum-phase with shorter DFTs than in the prior art.
Another objective is an echo canceller including such an apparatus.
Still another objective is a noise suppressor including such an apparatus.
These objectives are achieved in accordance with the attached claims.
Briefly, the present invention is based on method B above, but shapes the coefficients to be included in the complex cepstrum corresponding to the minimum-phase filter by applying a smoothly decaying window function. This makes it possible to obtain estimates of minimum-phase filters from demanding magnitude responses by using short DFTs. The use of short DFTs results in a low complexity solution compared to the prior art solutions, without sacrificing the requirements on high stop band rejection.
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:
a)-(d) is a sequence of diagrams graphically illustrating the embodiment of
To better explain how the idea of the present invention is related to minimum-phase filter design, let us first reproduce some of the theory.
Suppose we have a finite impulse response (FIR) filter
h(n), 0≦n≦N (2)
The system function of the filter h is given by its z-transform
Denote the logarithm of the magnitude response of the system function above as
Ĥ(z)=ln(|H(z)|) (4)
The cepstrum, or more accurately the real cepstrum, of h is defined as the coefficients ĥ(n) of the power series expansion of Ĥ(z), i.e.
given that the series is convergent. The coefficients of the power series expansion above, i.e. the real cepstrum, can be computed using the inverse z-transform of Ĥ(z)
Choosing the integration contour, C, to be the unit circle, (6) transforms to
Denote the zeros of H(z) by ak. Now, it is well known that the zeros of
are located in conjugate reciprocal pairs, as illustrated in
Computing the logarithm of the square root of the above expression results in
Using the following power series representations
Comparing the above with (5) and identifying coefficients of the same power of z it is evident that
From (14) it may be noted that the components originating from the zeros inside the unit circle only contribute to the cepstrum at positive n and that the components originating from zeros outside the unit circle only contribute to the cepstrum at negative n. A minimum-phase filter has all its zeros inside the unit circle. Hence, to get the cepstrum corresponding to a minimum-phase filter one needs to set the cepstrum at negative n to zero.
Furthermore, from (14) it may also be noted that the real cepstrum has infinite duration although the original filter h(n) has a finite length.
A similar reasoning as above can be applied to the complex cepstrum (see [5]), i.e.
where it is noted that the magnitude (“| |”) taken in (7) has been removed. In the special case of a minimum-phase filter this leads to the following representation of the complex cepstrum
Comparing (16) with (14), it is evident that the complex cepstrum of a minimum-phase sequence can be restored from its real cepstrum as
In order to obtain the impulse response of the minimum-phase filter one needs to reverse the process, i.e. compute
The outlined method may be implemented by using the discrete Fourier transform (DFT) and its inverse (IDFT), as described in [5] and illustrated in
Ĥ(ωk)=ln(|H(ωk)|), k=0, 1, . . . , M−1 (21)
ĥ(n)=IDFT(Ĥ(ωk)), n=0, 1, . . . , M−1 (22)
Here M must be sufficiently large to avoid aliasing (M=1024 in the example given in [5]). Step S3 determines the complex cepstrum of the desired minimum-phase filter from the real cepstrum in accordance with
Note that due to the periodicity assumed by the IDFT, the cepstral components with negative n are (by convention) located between M/2+1 and M−1 in equation (23). Finally step S4 determines the frequency response Hmin(ωk) of the minimum-phase filter from this complex cepstrum in accordance with
Hmin(ωk)=exp{DFT(ĥmin(n))k}, k=0, 1, . . . , M−1 (24)
The resulting filter hmin(n) is causal and gives an estimate of a minimum-phase filter, where the quality of the estimate depends on e.g. the involved FFT lengths.
When computing the minimum-phase impulse response, a problem arises in practice due to the fact that it is necessary to replace the infinite coefficient sequence ĥmin(n) with a finite sequence. This operation implies a truncation, which introduces errors in the computations. The prior art method B suggests that the problem can be relieved by selecting a long enough DFT. However, as mentioned earlier, using long DFTs results in high computational complexity. The present invention takes another approach by noting that when truncating a function before computing its DFT, the resulting spectrum will be a convolution between the spectrum of interest and the spectrum of the window function used for truncation (Gibbs's phenomenon). According to the present invention, truncation of the cepstrum is done by shaping the cepstrum with a shorter, smoothly decaying (in n, which is called “quefrency” in cepstrum analysis) window function instead of abruptly truncating it with a longer rectangular window.
ĥshaped(n)=w(n)ĥmin(n) (25)
In step S4 ĥshaped(n) replaces ĥmin(n) in (24).
a)-(d) is a sequence of diagrams graphically illustrating the embodiment of
In the embodiment described above a Kaiser window has been used for shaping the sequence of coefficients ĥmin(n). However, other smoothly decaying window functions, such as Hamming, Hanning, Blackman, Bartlett windows, are also feasible.
From Shannon's sampling theorem it is known that replacement of the integrals in Fourier transforms by sums can be done without error if the spectrum of the signal is zero for all frequencies above half the sampling frequency. In the problem at hand, the logarithm of the system function Ĥ(ω)=ln|H(ω)| must be sampled before computing the inverse Fourier transform. Hence, it should be ensured that a condition similar to that of the sampling theorem holds for ln|H(ω)|. Typically in echo cancellation and noise reduction applications, the dynamically updated desired magnitude response H(ωk) is computed in real time for a certain set of frequency bands based on some algorithm. The desired filter may need to pass some of the frequency bands and suppress other bands, so that the desired magnitude response is piecewise constant. A piecewise constant function is, however, not limited to contain only frequency components below a certain limit. Such a function is preferably smoothed before sampling to avoid aliasing. It should also be noted that even if the desired frequency response fulfils the sampling theorem, there is a possibility that computing the logarithm may introduce some components that do not fulfil the theorem. Hence, according to a further embodiment of the present invention the desired frequency response (or its logarithm) is smoothed before computing the cepstrum. The smoothing is accomplished by low pass filtering H(ωk). This can be done for example by applying a frequency domain Hanning window to H(ωk).
As can be seen in
From
In the description above a Hanning window has been described (due to its simple kernel) for smoothing the magnitude response. However, other smoothing windows, such as Hamming, Blackman, Bartlett, Kaiser windows, are also feasible.
As an alternative, the filtering of input signal x(n) may also be performed in the time domain, provided that the minimum-phase filter from block 24 is transformed into a corresponding impulse response in an IFFT block.
The different blocks of the echo canceller of
Although the present invention has been described in detail with reference to echo cancellation, the same principles may be used in other applications, for example noise reduction in telecommunication or audio systems. As is described in [4] this application may be based on a serially connected noise reduction filter with a desired magnitude response, the delay of which should be as small as possible. The essential difference is that instead of determining the desired magnitude response from an estimate {circumflex over (Φ)}x(ωk) of the power spectral density of the input signal and an estimate {circumflex over (Φ)}e(ωk) of the power spectral density of the echo signal, the desired magnitude response in noise reduction is determined from an estimate of the power spectral density of the noisy input signal and an estimate of the power spectral density of the pure noise, as described in [4]. With these changes the block diagram of
The present invention proposes a method for design of minimum-phase filters from a magnitude frequency response (with arbitrary phase) using only short DFTs. This results in a low complexity method, which outperforms all other known methods in terms of complexity and resulting stop band attenuation of the resulting minimum-phase filters. The method is particularly suitable for environments where a multitude of identical channels have to be processed (e.g. noise reduction, echo cancelling devices) at a minimum cost of computational operations and heat dissipation. The method allows for processing of more channels simultaneously than would have been possible using state of the art methods, given a limited amount of computational power. Alternatively, the reduced complexity provided by the present invention may be used to reduce heat dissipation and/or improve battery utilization.
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 |
---|---|---|---|
0502415 | Oct 2005 | SE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SE2006/001233 | 10/31/2006 | WO | 00 | 4/29/2008 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2007/053086 | 5/10/2007 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7774396 | Dickson et al. | Aug 2010 | B2 |
20020184010 | Eriksson et al. | Dec 2002 | A1 |
20070118367 | Dickson et al. | May 2007 | A1 |
20090017784 | Dickson et al. | Jan 2009 | A1 |
20100198899 | Dickson et al. | Aug 2010 | A1 |
Number | Date | Country | |
---|---|---|---|
20080256160 A1 | Oct 2008 | US |