Library / Signal processing and digital filters / DSP-14
Signal processing and digital filters
Kaiser window sample
Coefficient n of the symmetric N-point Kaiser window, where I₀ is the modified Bessel function of order zero.
- Ref
- DSP-14
- Rev
- v1
- Field
- Signal processing and digital filters
- Result
- w[n]
The Kaiser window w[n] = I₀(β√(1 − u²))/I₀(β), with u = 2n/(N − 1) − 1, uses the modified Bessel function I₀ to give a window whose shape is set by β. At β = 0 it is rectangular. Larger β lowers the sidelobes and widens the main lobe, so one formula covers the whole trade-off.
Coefficient n of the symmetric N-point Kaiser window, where I₀ is the modified Bessel function of order zero. The parameter β ≥ 0 trades main-lobe width against sidelobe level, and β = 0 gives a rectangular window.
Calculator
- Position along the window, n/(N − 1)0.25
- I₀(β), the Bessel normaliser27.24
- End-point value, 1/I₀(β)0.03671
What drives the result
Each variable is moved across its typical range while the others stay at the values above. The longest bar is the key driver.
- With β = 5, sample 2 of a 9-point Kaiser window is 0.5529, and the end samples are 0.03671.
- A β of about 5 gives roughly the sidelobe level of a Hamming window and a β of about 8.6 that of a Blackman window, which is why it is the common choice for FIR design.
Chart data as tables
Ranked variables
| Variable | Typical range | Lowest result | Highest result | Swing () | Local step | Change in result |
|---|---|---|---|---|---|---|
| n Sample index | 0 to 8 | 0.03671 | 1 | 0.9633 | +1 | +57 % |
| β Shape parameter | 0 to 20 | 0.07379 | 1 | 0.9262 | +10% | −6.54 % |
| N Window length | 9 to 1,024 samples | 0.03852 | 0.5529 | 0.5143 | +1 samples | −14 % |
Sweep of Shape parameter
| Shape parameter | Window coefficient |
|---|---|
| 0 | 1 |
| 2.5 | 0.7792 |
| 5 | 0.5529 |
| 7.5 | 0.3946 |
| 10 | 0.2821 |
| 12.5 | 0.2017 |
| 15 | 0.1442 |
| 17.5 | 0.1032 |
| 20 | 0.07379 |
Sweep one variable
Variables and how each one contributes
Window coefficient
What the equation gives you. Everything else feeds it.
Window length
The window length, in samples. A longer window has more samples across the same shape, so a given n sits nearer the start. Raising it by 10 % (to 9.9) moves the result by −14 %, from 0.5529 to 0.4755.
Sample index
The sample index, 0 to N − 1. Moves along the window from the start towards the centre and the other end. Raising it by 10 % (to 2.2) moves the result by +0 %, from 0.5529 to 0.5529.
Shape parameter
The shape parameter β ≥ 0. A larger β lowers the sidelobes and widens the main lobe, and pulls the end samples down to 1/I₀(β). Raising it by 10 % (to 5.5) moves the result by −6.54 %, from 0.5529 to 0.5167.
Worked example with the values above
- Position: u = 2n/(N − 1) − 1 = −0.5, and √(1 − u²) = 0.86603.
- Numerator: I₀(β × 0.86603) = I₀(4.3301) = 15.06; denominator: I₀(5) = 27.24.
- w = 15.06 / 27.24 = 0.55285.
Assumptions and limits
- A symmetric N-point window with integer N ≥ 2 and 0 ≤ n ≤ N − 1, so the end points have the same value.
- For periodic spectral analysis, replace N − 1 with N in the denominator.
Common mistakes
- Using the symmetric form for spectral analysis, which assumes a periodic window.
- Using an index outside 0 to N − 1.
- Forgetting that Hamming and Kaiser (with β > 0) end points are not zero.
Statistics and uncertainty
Window coefficients are exact formulas, but sampled windows differ slightly between software packages (symmetric against periodic form), which changes the leakage figures in the fourth decimal place.
Where it is used
- Generating window coefficients for FIR design and spectral estimation.
- Trading main-lobe width against sidelobe level in tone measurements.
Maths you need
- Spectral leakage: energy spreading into neighbouring bins
- Sidelobe level: the height of the largest lobe outside the main lobe
- Symmetric against periodic windows: N − 1 or N in the denominator