In signal processing, a filter bank is an array of band-pass filters that separates the input signal into multiple components, each one carrying a single frequency sub-band of the original signal. One application of a filter bank is a graphic equalizer, which can attenuate the components differently and recombine them into a modified version of the original signal. The process of decomposition performed by the filter bank is called analysis (meaning analysis of the signal in terms of its components in each sub-band); the output of analysis is referred to as a subband signal with as many subbands as there are filters in the filter bank. The reconstruction process is called synthesis, meaning reconstitution of a complete signal resulting from the filtering process.
In digital signal processing, the term filter bank is also commonly applied to a bank of receivers. The difference is that receivers also down-convert the subbands to a low center frequency that can be re-sampled at a reduced rate. The same result can sometimes be achieved by undersampling the bandpass subbands.
Another application of filter banks is signal compression, when some frequencies are more important than others. After decomposition, the important frequencies can be coded with a fine resolution. Small differences at these frequencies are significant and a coding scheme that preserves these differences must be used. On the other hand, less important frequencies do not have to be exact. A coarser coding scheme can be used, even though some of the finer (but less important) details will be lost in the coding.
The vocoder uses a filter bank to determine the amplitude information of the subbands of a modulator signal (such as a voice) and uses them to control the amplitude of the subbands of a carrier signal (such as the output of a guitar or synthesizer), thus imposing the dynamic characteristics of the modulator on the carrier.
FFT filter banks
A bank of receivers can be created by performing a sequence of FFTs on overlapping segments of the input data stream. A weighting function (aka window function) is applied to each segment to control the shape of the frequency responses of the filters. The wider the shape, the more often the FFTs have to be done to satisfy the Nyquist sampling criteria (which is what distinguishes a filter bank from a spectrum analyzer). For a fixed segment length, the amount of overlap determines how often the FFTs are done (and vice versa). Also, the wider the shape of the filters, the fewer filters that are needed to span the input bandwidth. Eliminating unnecessary filters (i.e. decimation in frequency) is efficiently done by treating each weighted segment as a sequence of smaller blocks, and the FFT is performed on only the sum of the blocks. This has been referred to as multi-block windowing and weighted pre-sum FFT (see Sampling the DTFT).
A special case occurs when, by design, the length of the blocks is an integer multiple of the interval between FFTs. Then the FFT filter bank can be described in terms of one or more polyphase filter structures where the phases are recombined by an FFT instead of a simple summation. The number of blocks per segment is the impulse response length (or depth) of each filter. The computational efficiencies of the FFT and polyphase structures, on a general purpose processor, are identical.
Synthesis (i.e. recombining the outputs of multiple receivers) is basically a matter of resampling each one at a rate commensurate with the total bandwidth to be created, translating each channel to its new center frequency, and summing the streams of samples. Resampling is an interpolation process, equivalent to inserting multiple zero-valued samples in-between the actual ones and passing the new sequence through a lowpass filter, called the synthesis filter. The net frequency response of each channel is the product of the synthesis filter with the frequency response of the filter bank (analysis filter). Ideally, the frequency responses of adjacent channels add to a constant value at every frequency between the channel centers. That condition is known as perfect reconstruction.
Filter banks as time-frequency distributions
In time-frequency signal processing, a filter bank is a special quadratic time-frequency distribution (TFD) that represents the signal in a joint time-frequency domain. It is related to the Wigner-Ville distribution by a two-dimensional filtering that defines the class of quadratic (or bilinear) time-frequency distributions. The filter bank and the spectrogram are the two simplest ways of producing a quadratic TFD; they are in essence similar as one (the spectrogram) is obtained by dividing the time-domain in slices and then taking a fourier transform, while the other (the filter bank) is obtained by dividing the frequency domain in slices forming bandpass filters that are excited by the signal under analysis.
- Time-frequency analysis
- Quadrature mirror filter
- Polyphase matrix
- B. Boashash, editor, “Time-Frequency Signal Analysis and Processing – A Comprehensive Reference”, Elsevier Science, Oxford, 2003; ISBN 0-08-044335-4