In a mixed-signal system (analog and digital), a reconstruction filter is used to construct a smooth analog signal from a digital input, as in the case of a digital to analog converter (DAC) or other sampled data output device.
Sampled data reconstruction filters
The sampling theorem describes why the input of an ADC requires a low-pass analog electronic filter, called the anti-aliasing filter: the sampled input signal must be bandlimited to prevent aliasing (here meaning waves of higher frequency being recorded as a lower frequency).
For the same reason, the output of a DAC requires a low-pass analog filter, called a reconstruction filter - because the output signal must be bandlimited, to prevent imaging (meaning Fourier coefficients being reconstructed as spurious high-frequency 'mirrors'). This is an implementation of the Whittaker–Shannon interpolation formula.
Ideally, both filters should be brickwall filters, constant phase delay in the pass-band with constant flat frequency response, and zero response from the Nyquist frequency. This can be achieved by a filter with a 'sinc' impulse response.
While in theory a DAC outputs a series of discrete Dirac impulses, in practice, a real DAC outputs pulses with finite bandwidth and width. Both idealized Dirac pulses, zero-order held steps and other output pulses, if unfiltered, would contain spurious high-frequency content when compared to the original signal. Thus, the reconstruction filter smooths the waveform to remove image frequencies (copies) above the Nyquist limit. In doing so, it reconstructs the continuous time signal (whether originally sampled, or modelled by digital logic) corresponding to the digital time sequence.
Practical filters have non-flat frequency or phase response in the pass band and incomplete suppression of the signal elsewhere. The ideal sinc waveform has an infinite response to a signal, in both the positive and negative time directions, which is impossible to perform in real time – as it would require infinite delay. Consequently, real reconstruction filters typically either allow some energy above the Nyquist rate, attenuate some in-band frequencies, or both. For this reason, oversampling may be used to ensure that frequencies of interest are accurately reproduced without excess energy being emitted out of band.
In systems that have both, the anti-aliasing filter and a reconstruction filter may be of identical design. For example, both the input and the output for audio equipment may be sampled at 44.1 kHz. In this case, both audio filters block as much as possible above 22 kHz and pass as much as possible below 20 kHz.
Alternatively, a system may have no reconstruction filter and simply tolerate some energy being wasted reproducing higher frequency images of the primary signal spectrum.
In image processing, digital reconstruction filters are used both to recreate images from samples as in medical imaging and for resampling. A number of comparisons have been made, by various criteria; one observation is that reconstruction can be improved if the derivative of the signal is also known, in addition to the amplitude, and conversely that also performing derivative reconstruction can improve signal reconstruction methods.
Resampling may be referred to as decimation or interpolation, accordingly as the sampling rate decreases or increases – as in sampling and reconstruction generally, the same criteria generally apply in both cases, and thus the same filter can be used.
For resampling, in principle the analog image is reconstructed, then sampled, and this is necessary for general changes in resolution. For integer ratios of sampling rate, one may simplify by sampling the impulse response of the continuous reconstruction filter to produce a discrete resampling filter, then using the discrete resampling filter to directly resample the image. For decimation by an integer amount, only a single sampled filter is necessary; for interpolation by an integer amount, different samplings are needed for different phases – for instance, if one is upsampling by a factor of 4, then one sampled filter is used for the half-way point, while a different sampled filter is used for the point 1/4 of the way from one point to another.
A subtlety in image processing is that (linear) signal processing assumes linear luminance – that doubling a pixel value doubles the luminance of the output. However, images are frequently gamma encoded, notably in the sRGB color space, so luminance is not linear. Thus to apply a linear filter, one must first gamma decode the values – and if resampling, one must gamma decode, resample, then gamma encode.
The most common day-to-day filters are:
- nearest-neighbor interpolation, with kernel the box filter – for downsampling, this corresponding to averaging;
- bilinear interpolation, with kernel the tent filter;
- bicubic interpolation, with kernel a cubic spline – this latter has a free parameter, with each value of the parameter yielding a different interpolation filter.
These are in increasing order of stopband suppression (anti-aliasing), and decreasing speed
For reconstruction purposes, a variety of kernels are used, many of which can be interpreted as approximating the sinc function, either by windowing or by giving a spline approximation, either by cubics or higher order splines. In the case of windowed sinc filters, the frequency response of the reconstruction filter can be understood in terms of the frequency response of the window, as the frequency response of a windowed filter is the convolution of the original response (for sinc, a brick-wall) with the frequency response of the window. Among these, the Lanczos window and Kaiser window are frequently praised.
Another class of reconstruction filters include the Gaussian for various widths, or cardinal B-splines of higher order – the box filter and tent filter being the 0th and 1st order cardinal B-splines. These filters fail to be interpolating filters, since their impulse response do not vanish at all non-zero original sample points – for 1:1 resampling, they are not the identity, but rather blur. On the other hand, being nonnegative, they do not introduce any overshoot or ringing artifacts, and by being wider in the time domain they can be narrower in the frequency domain (by the Fourier uncertainty principle), though at the cost of blurring, which is reflected in passband roll-off ("scalloping").
In photography, a great variety of interpolation filters exist, some proprietary, for which opinions are mixed. Evaluation is often subjective, with reactions being varied, and some arguing that at realistic resampling ratios, there is little difference between them, as compared with bicubic, though for higher resampling ratios behavior is more varied.
Wavelet reconstruction filters
Reconstruction filters are also used when "reconstructing" a waveform or an image from a collection of wavelet coefficients. In medical imaging, a common technique is to use a number of 2D X-ray photos or MRI scans to "reconstruct" a 3D image.
- Theußl, Thomas; Hauser, Helwig; Gröller, Meister Eduard (October 2000). Mastering Windows: Improving Reconstruction (PDF). IEEE/ACM SIGGRAPH Symposium on Volume Visualization. Salt Lake City, Utah, United States. pp. 101–108. doi:10.1109/VV.2000.10002. ISBN 1-58113-308-1. (Project webpage)
- Turkowski, Ken (1990). "Filters for Common Resampling Tasks" (PDF).
- Mitchell, Don P.; Netravali, Arun N. (August 1988). Reconstruction filters in computer-graphics (PDF). ACM SIGGRAPH International Conference on Computer Graphics and Interactive Techniques. 22. pp. 221–228. doi:10.1145/54852.378514. ISBN 0-89791-275-6.
- Meijering, Erik H. W.; Niessen; Pluim; Viergever. Quantitative Comparison of Sinc-Approximating Kernels for Medical Image Interpolation. Medical image computing and computer-assisted intervention--MICCAI '99: second international conference, Cambridge, UK, September 19–22, 1999 proceedings.
- dpreview: Interpolation, by Vincent Bockaert
- Digital Photo Interpolation Review
- Interpolation -- Part I, Ron Bigelow