Next: Interpolation using zero insertion
Up: Reconstruction in practice
Previous: Symmetric cubic filters
  Contents
Windowed sinc function
There is a lot of perhaps unnecessary lore about choice of a window
function, and practically every function that rises from zero to a
peak and then falls again has been named after someone.
in Numerical Recipes in C [49]
So far we some popular reconstruction filters which try to approximate
the sinc filter were considered. Why cannot the sinc filter itself be
used? Because, as already mentioned at the beginning of this chapter,
it has infinite spatial extend and therefore is impracticable. One
possibility to make the sinc function finite is to simply truncate
it. However, we can again investigate the effects of such a truncation
in frequency domain. Truncating a function means multiplying it with a
box function. This means that in frequency domain the box
function (the frequency response of the sinc function) gets convolved
with a sinc (the frequency response of the box function). It
would be a better idea to multiply the sinc with some other function
which is also zero outside some extend but has better properties in
frequency domain.
A lot of such functions, usually called windows, can be found in the
literature. Definitions of some windows are:
- The rectangular window or box function (as defined by
Eq. 4.1) which is tantamount to a pure truncation.
- The Bartlett window, which is actually just a tent function
(as defined by Eq. 4.6).
- The Welch window
 |
(4.10) |
- The Parzen window
 |
(4.11) |
is a piece-wise cubic approximation of the Gaussian window of
extend two. Although its width is not directly adjustable it
can, of course, be scaled to every desired extend.
- The Hann (due to Julius van Hann, often wrongly referred to as Hanning
window [64], sometimes just cosine bell window) and
Hamming window, which are quite similar, they only differ in the choice of
one parameter
:
 |
(4.12) |
with
being the Hann window and
the
Hamming Window. The Hamming window has the disadvantage of being
discontinuous at the edges, which leads to clearly visible artifacts
in the images.
- The Blackman window, it has one additional cosine term to the Hann and
Hamming window to further reduce the ripple ratio.
 |
(4.13) |
- The Lanczos window, which is the central lobe of a sinc function
scaled to a certain extend.
 |
(4.14) |
- The Kaiser window [23], which has an
adjustable parameter
which controls how steeply it
approaches zero at the edges. It is defined by
 |
(4.15) |
where I0(x) is the zeroth order modified Bessel function
(a definition, and a more detailed discussion of the Bessel
functions can be found, for instance, in the Numerical
Recipes in C [49]). The higher
gets the
narrower gets the Kaiser window.
- and we can also use a Gaussian function as window, although it
actually never reaches zero, by truncating it. It is in its general
form defined by
 |
(4.16) |
with
being the standard deviation. The higher
gets,
the wider gets the Gaussian window and, on the other hand, the more
severe gets the truncation.
The earthier bits of dialogue, I explained, were the result of Gentry's
years with the hairy-knuckled, hard drinking engineers and
mathematicians of JPL's Astrodynamics Division, where the
Pasadena cops often have to be called in to settle
bare-fisted fights over Bessel functions and non-linear
partial differential equations.Arthur C. Clarke, prologue of ``Rama II''
Are these windows worth the effort? A first clue can be gained from
looking at the frequency responses. The frequency responses of the
sinc filter windowed with all these windows and the windows themselves
are depicted in Appendix B.
Obviously, some windows show a really bad behavior in frequency
domain, e.g, the rectangular or the Bartlett window, but also Kaiser
and Gaussian window for certain values for
and
respectively. This indicates that the advantage of Kaiser and Gaussian
window of being adjustable can easily turn into a drawback of having
to find the right value.
Figure 4.7:
Frequency responses of windowed sinc windowed with a Hamming window
of different widths.
|
|
One advantage, however, that all windows have in common is that if we
want a better result we can simply increase the width. Of course, this
increases also the computational effort. The plots in
Appendix B were generated for a half-width of
two, i.e., a contribution of four samples which is the same as for the
cubic splines. So how does the window width affect the frequency
response? To get an impression for this in
Fig. 4.7 are several windowed sinc filters
depicted which were windowed with a Hamming window of different
widths. As we can see the approximation gets closer and closer the
wider the window gets until it almost reaches it for quite wide
windows. Although, admittedly, a filter width of one thousand is not
really reasonable.
Symmetric piecewise n-th order polynomial filters (which of course
include cubic ones) and windowed sinc functions for function
reconstruction have recently been subject of extended
research [35,36,38]. In
the case of piecewise polynomial kernels it is stated that in all
cases cardinal splines are superior to all other reconstruction
filters of equal width. Windowed sinc functions are reported to
perform quite well, based on a purely quantitative comparison to
linear interpolation, with Welch, Lanzcos and Kaiser windows, the
truncated sinc kernel is reported to be one of the worst performing
kernels. In Chapter 5 we will concentrate on the
quality of derivative reconstruction of the windows presented in this
chapter.
Next: Interpolation using zero insertion
Up: Reconstruction in practice
Previous: Symmetric cubic filters
  Contents
1999-12-29