Kaiser window

From HandWiki
The Kaiser window for several values of its parameter

The Kaiser window, also known as the Kaiser–Bessel window, was developed by James Kaiser at Bell Laboratories. It is a one-parameter family of window functions used in finite impulse response filter design and spectral analysis. The Kaiser window approximates the DPSS window which maximizes the energy concentration in the main lobe[1] but which is difficult to compute.[2]

Definition

The Kaiser window and its Fourier transform are given by:

[math]\displaystyle{ w_0(x) \triangleq \left\{ \begin{array}{ccl} \tfrac{1}{L}\frac{I_0\left[\pi\alpha \sqrt{1 - \left(2x/L\right)^2}\right]}{I_0[\pi\alpha]},\quad &\left|x\right| \leq L/2\\ 0,\quad &\left|x\right| \gt L/2 \end{array}\right\} \quad \stackrel{\mathcal{F}}{\Longleftrightarrow}\quad \frac{\sin\bigg(\sqrt{(\pi L f)^2-(\pi \alpha)^2}\bigg)} {I_0(\pi \alpha)\cdot \sqrt{(\pi L f)^2-(\pi \alpha)^2}}, }[/math]   [3][upper-alpha 1]
Fourier transforms of two Kaiser windows

where:

  • I0 is the zeroth-order modified Bessel function of the first kind,
  • L is the window duration, and
  • α is a non-negative real number that determines the shape of the window. In the frequency domain, it determines the trade-off between main-lobe width and side lobe level, which is a central decision in window design.
  • Sometimes the Kaiser window is parametrized by β, where β = πα.

For digital signal processing, the function can be sampled symmetrically as:

[math]\displaystyle{ w[n] = L\cdot w_0\left(\tfrac{L}{N} (n-N/2)\right) = \frac{I_0\left[\pi\alpha \sqrt{1 - \left(\frac{2n}{N}-1\right)^2}\right]}{I_0[\pi\alpha]},\quad 0 \leq n \leq N, }[/math]

where the length of the window is [math]\displaystyle{ N+1, }[/math] and N can be even or odd. (see A list of window functions)

In the Fourier transform, the first null after the main lobe occurs at [math]\displaystyle{ f = \tfrac{\sqrt{1+\alpha^2}}{L}, }[/math] which is just [math]\displaystyle{ \sqrt{1+\alpha^2} }[/math] in units of N (DFT "bins"). As α increases, the main lobe increases in width, and the side lobes decrease in amplitude.  α = 0 corresponds to a rectangular window. For large α, the shape of the Kaiser window (in both time and frequency domain) tends to a Gaussian curve.  The Kaiser window is nearly optimal in the sense of its peak's concentration around frequency [math]\displaystyle{ 0. }[/math][5]

Kaiser–Bessel-derived (KBD) window

Kbd-window.svg

A related window function is the Kaiser–Bessel-derived (KBD) window, which is designed to be suitable for use with the modified discrete cosine transform (MDCT). The KBD window function is defined in terms of the Kaiser window of length N+1, by the formula:

[math]\displaystyle{ d_n = \begin{cases} \sqrt{\frac{\sum_{i=0}^{n} w[i]} {\sum_{i=0}^N w[i]}} & \mbox{if } 0 \leq n \lt N \\ \sqrt{\frac{\sum_{i=0}^{2N-1-n} w[i]} {\sum_{i=0}^N w[i]}} & \mbox{if } N \leq n \leq 2N-1 \\ 0 & \mbox{otherwise}. \\ \end{cases} }[/math]

This defines a window of length 2N, where by construction dn satisfies the Princen-Bradley condition for the MDCT (using the fact that wNn = wn): dn2 + (dn+N)2 = 1 (interpreting n and n + N modulo 2N). The KBD window is also symmetric in the proper manner for the MDCT: dn = d2N−1−n.

Applications

The KBD window is used in the Advanced Audio Coding digital audio format.

Notes

  1. An equivalent formula is:[4]
    [math]\displaystyle{ \frac{\sinh\bigg(\sqrt{(\pi \alpha)^2 - (\pi L f)^2}\bigg)} {I_0(\pi \alpha)\cdot \sqrt{(\pi \alpha)^2 - (\pi L f)^2}}. }[/math]

References

  1. "Slepian or DPSS Window". https://ccrma.stanford.edu/~jos/sasp/Slepian_DPSS_Window.html. 
  2. Oppenheim, A. V.; Schafer, R. W. (2009). Discrete-time signal processing. Upper Saddle River, N.J.: Prentice Hall. p. 541. ISBN 9780131988422. 
  3. Nuttall, Albert H. (Feb 1981). "Some Windows with Very Good Sidelobe Behavior". IEEE Transactions on Acoustics, Speech, and Signal Processing 29 (1): 89 (eq.38). doi:10.1109/TASSP.1981.1163506. https://zenodo.org/record/1280930. 
  4. Smith, J.O. (2011). "Kaiser Window in Spectral Audio Signal Processing, eq.(4.40 & 4.42)". https://ccrma.stanford.edu/~jos/sasp/Kaiser_Window.html.  where [math]\displaystyle{ \beta \triangleq \pi \alpha,\ \omega \triangleq 2 \pi f,\ M=L. }[/math]
  5. Oppenheim, Alan V.; Schafer, Ronald W.; Buck, John R. (1999). "7.2". Discrete-time signal processing (2nd ed.). Upper Saddle River, N.J.: Prentice Hall. p. 474. ISBN 0-13-754920-2. https://archive.org/details/discretetimesign00alan. "a near-optimal window could be formed using the zeroth-order modified Bessel function of the first kind" 

Further reading