Skip to main content
Log in

Inverting non-minimum phase FIR transfer functions with application to reverberant speech

  • Published:
International Journal of Speech Technology Aims and scope Submit manuscript

Abstract

The problem of removing reverberation in speech is considered when the room impulse response is non-minimum phase. The method does not require multiple sensors or the use of all-pass transfer function networks as in previous techniques. Instead we use spectral factorization of large polynomials. Spectral factorization gives a method of reflecting the non-minimum phase roots without having to calculate their actual values.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  • Angelo, F., & Emanuele, U. (1997). Use of digital inverse filtering techniques for improving car audio systems, Audio Engineering Society (AES) convention 103. New York: Jacob K Javits Centre.

    Google Scholar 

  • Haykin, S. (1986). Adaptive filter theory. Englewood Cliffs, NJ: Prentice Hall.

    Google Scholar 

  • Jeub, M., Schafer, M., Kruger, H., Nelke, C., Beaugeant, C., & Vary, P. (2010). Do we need dereverberation for hand-held telephony? International Congress on Acoustics (ICA). Sydney: Australian Acoustical Society.

    Google Scholar 

  • Kim, S., & Park, Y. (2004). A direct design method of inverse filters for multichannel 3D sound rendering. Journal of Sound and Vibration, 278, 196–1204.

    Google Scholar 

  • Krishnamoorthy, P., & Prasanna, S. (2009). Reverberant speech enhancement by temporal and spectral processing. IEEE Transactions on Audio, Speech, and Language Processing, 17, 253–266.

    Article  Google Scholar 

  • Marques, A., & Freitas, D. (2005). Infinite impulse response (IIR) inverse filter design for the equalization of non-minimum phase loudspeaker systems. In IEEE workshop on applications of signal processing to audio and acoustics (pp. 170–173).

  • Miyoshi, M., & Kaneda, Y. (1988). Inverse filtering of room acoustics. IEEE Transactions on Acoustics, Speech, and Signal Processing, 36, 145–152. [see also IEEE Transactions on Signal Processing].

    Article  Google Scholar 

  • Moir, T. J. (1986). Optimal deconvolution smoother. IEE Proceedings D Control Theory and Applications, 133, 13–18.

  • Moir, T. J. (1991). Stabilizing discrete polynomials using spectral factorization. Electronics Letters, 27, 581–583.

    Google Scholar 

  • Moir, T. J. (2007). A z-domain transfer function solution to the non-minimum phase acoustic beamformer. International Journal of Systems Science, 38, 563–575.

    Article  MATH  MathSciNet  Google Scholar 

  • Moir, T. J. (2009). Control theoretical approach to multivariable spectral factorisation problem. Electronics Letters, 45, 1215–1216.

    Article  Google Scholar 

  • Mouchtaris, A., Reveliotis, P., & Kyriakakis, C. (1999). Non-minimum phase inverse filter methods for immersive audio rendering. In Proceedings, 1999 IEEE international conference on acoustics, speech, and signal processing, 1999 (vol. 3076, pp. 3077–3080).

  • Neely, S. T., & Allen, J. B. (1979). Invertibility of a room impulse response. Journal of the Acoustical Society of America, 66, 165–169.

    Article  Google Scholar 

  • Openair impulse response database. (2013). Openair impulse response data. York: University of York.

    Google Scholar 

  • Putnam, W., Rocchesso, & D., Smith, J. (1995). A numerical investigation of the invertibility of room transfer functions. In IEEE ASSP workshop on applications of signal processing to audio and acoustics, 1995 (pp. 249–252).

  • Radlovic, B. D., & Kennedy, R. A. (2000). Nonminimum-phase equalization and its subjective importance in room acoustics. IEEE Transactions on Speech and Audio Processing, 8, 728–737.

    Article  Google Scholar 

  • Tohyama, M., Lyon, R.H., & Koike, T., (1993). Source waveform recovery in a reverberant space by cepstrum dereverberation. In IEEE international conference on acoustics, speech, and signal processing, ICASSP-93 (vol. 151, pp. 157–160).

  • Tohyama, M., Lyon, R. H., & Koike, T. (1991). Reverberant phase in a room and zeros in the complex frequency plane. Journal of the Acoustic Society of America, 89, 1701–1707.

    Article  Google Scholar 

  • Widrow, B., & Bilello, M. (1993a). Adaptive inverse control. In Proceedings of the 1993 international symposium on intelligent control, Chicago, IL, (pp. 1–6).

  • Widrow, B., & Bilello, M. (1993b). In Proceedings of the 1993 IEEE international symposium on adaptive inverse control, intelligent control (pp. 1–6).

  • Wilson, G. (1969). Factorization of the covariance generating function of a pure moving average process. SIAM Journal on Numerical Analysis, 6, 1–7.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to T. J. Moir.

Appendices

Appendix 1

To divide the two polynomials of equal degree \(\frac{B^{*}}{\Delta ^{*}}.\)

Without losing generality we consider the equivalent problem of dividing two polynomials of equal degree into a power series which have unity zeroth coefficients.

$$\begin{aligned} \frac{b^{*}}{a^{*}}=1+p_1 z+p_2 z^{2}+...+p_\ell z^{\ell } \end{aligned}$$
(20)

Where \(b^{*} = 1 + b_{1} z + b_{2} z^{2} + ... + b_{n} z^{n}\) and \(a^{*} = 1 + a_{1} z + a_{2} z^{2} + \cdots + a_{n} z^{n}\)

Multiplying out (a1) and comparing coefficients of z yields the simple recursion

$$\begin{aligned} p_0&= 1\nonumber \\ p_i&= b_i -\sum _{j=1}^{\max (n,i)} {p_{i-j} a_j },\quad i\le n \nonumber \\&= -\sum _{j=1}^{\max (n,i)} {p_{i-j} a_j },\quad i\le n,\;i>n \end{aligned}$$
(21)

For example, for polynomials

$$\begin{aligned} B^{*}&= B_0 +B_1 z+B_2 z^{2}+ \cdots +B_n z^{n} \\ \Delta ^{*}&= A_0 +A_1 z+A_2 z^{2}+ \cdots +A_n z^{n} \end{aligned}$$

We can remove the zeroth coefficients thus and define \(a^{*}\) and \(b^{*}\) polynomials with \(a^{*}(0) = b^{*}(0) = 1\)

$$\begin{aligned} B^{*}&= B_0 (1+\frac{B_1 }{B_0 }z+\frac{B_2 }{B_0 }z^{2}+ \cdots +\frac{B_n }{B_0 }z^{n})=B_0 b^{*} \\ \Delta ^{*}&= A_0 (1+\frac{A_1 }{A_0 }z+\frac{A_2 }{A_0 }z^{2}+ \cdots +\frac{A_n }{A_0 }z^{n})=A_0 a^{*} \end{aligned}$$

Then use the recursion (a2) on \(a^{*}\) and \(b^{*}\). We then multiply all the \(p_{i}, i = 0, 1, 2, \ldots \ell \) terms by the constant \(\frac{B_0 }{A_0 }.\)

Appendix 2: Method of spectral factorization of large polynomials

A Laurent series can be easily factorized using many methods, but here we use a feedback method used in earlier work (Moir 2009) which is shown below. The technique uses negative feedback to force the output of a negative-feedback system to be the same as its input. In this case the input “signal” is one half of the Laurent series and convolution takes effect in the feedback path as illustrated in Fig. 8 below.

Fig. 8
figure 8

Spectral factorization using feedback

The method is essentially easy in principle. A known (or desired) Laurent series is entered at the set-point and the loop continues until the spectral-factor convolved with itself (the reverse coefficients) become equal to the desired values. This is akin to a control-system with \(\Delta (z^{-1})\Delta (z)\) in its feedback path. The gain of the loop forces the spectral factor to the desired value which we already can calculate from the known impulse response \(B(z^{-1})B(z)\).

1.1 Algorithm: Feedback spectral factorization of Laurent series

Consider a Laurent series \(l_{-n} \hbox {z}^{n}+ \cdots +l_{-2} \hbox {z}^{2}+l_{-1} \hbox {z}^{1}+l_0 +l_1 z^{-1}+l_2 z^{-2}+ \cdots l_n \hbox {z}^{-n}=\varvec{\Delta } (z^{-1})\varvec{\Delta } (z).\)

Initialise vectors \({\varvec{W}}_0 ,{\varvec{V}}_0 \) of length n+1 to some initial values. (possibly zero). Assume that the Laurent series vector \({\varvec{L}}\) is already known or can be estimated. Here the Laurent series is found from half of the two-sided impulse response data when multiplying \(B(z^{-1})B(z)\). We only require one half of the symmetric Laurent series, the terms in negative power of z including the zeroth term. Hence write \({\varvec{L}}=[l_0 ,l_1 ,\ldots l_n]\).

Use a constant gain (step-size) \(\left| \eta \right| <1\). Care must be taken not to make the gain too large as then the algorithm will become unstable. Too small a value will result in a slow rate of convergence.

Step 1 :

Form the convolution vector \({\varvec{V}}_k ={\varvec{W}}_k *{\varvec{W}}_{-k} \) where its individual elements are found from the elements of \({\varvec{W}}_k \) as \(\hbox {v}_i =\sum _{j=0}^{n-i} {w_i } w_{i+j} ,i=1,2, \ldots n\)

Step 2 :

Update the error vector \(\varvec{\varphi }_k ={\varvec{L}}-{\varvec{V}}_k \)

Step 3 :

Update the weight vector \({\varvec{W}}_{k+1} ={\varvec{W}}_k +\eta \varvec{\varphi }_k \)

Step 4 :

Stopping criterion Test for convergence \(J = \sum _{j=0}^{n} (l_{j} - v_{j})^{2} < \delta \), for some small \(\delta \), where \(l_{j}, j = 1, 2...n\) are the known (or desired) Laurent series coefficients of the vector L. Stop if convergent else return to step 1. The elements of the vector \({\varvec{W}}_k \) are now the spectral factor polynomial coefficients. The driving noise variance is estimated from the zeroth element of the vector \(\sigma ^{2}={\varvec{W}} (0)^{2}\) which can be assumed to be unity and any gain term absorbed into the spectral factor.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Moir, T.J. Inverting non-minimum phase FIR transfer functions with application to reverberant speech. Int J Speech Technol 17, 245–252 (2014). https://doi.org/10.1007/s10772-014-9227-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10772-014-9227-7

Keywords

Navigation