In signal interpolation, we reconstruct a continuous signal from samples, image interpolation has many applications, it can be used in changing the size of a digital image to improve its appearance when viewed on a display device. Consider a digital image of 64 x 64 pixels, if the display device performs zero-order hold, each individual pixel will be visible and the image will appear blocky. If the image size is increased through interpolation and resampling prior to its display, the resulting image will appear smoother and more visually pleasant. A sequence of image frames can also be interpolated along the temporal dimension. A 24 frames/sec motion picture can be converted to a 60 fields/sec NTSC signal for TV through interpolation. Temporal interpolation can also be used to improve the appearance of a slow-motion video.

Interpolation can also be used in other applications such as image coding. For example, a simple approach to bit rate reduction would be to discard some pixels or some frames and recreate them from the coded pixels and frames.

Consider a 2-D sequence f(n_{1},n_{2}) obtained by sampling an
analog signal f_{c}(x,y) through an ideal A/D converter;

_{} (3.21)

If
f_{c}(x,y) is bandlimited and the sampling frequencies 1/T_{1 }and
1/T_{2 }are higher than the Nyquist rate, from Section 1.5 f_{c}(x,y)
can be reconstructed from f(n_{1},n_{2}) with an ideal D/A
converter by

_{} (3.22)

where h(x,y) is the impulse response of an ideal separable analog lowpass filter given by

_{} (3.23)

There
are several difficulties in using (3.22) and (3.23) for image interpolation.
The analog image f_{c}(x,y), even with an antialiasing filter, is not
truly bandlimited, so aliasing occurs when f_{c}(x,y) is sampled. In
addition, h(x,y) in (3.23) is an infinite-extent function, so evaluation of f_{c}(x,y)
using (3.22) cannot be carried out in practice. To approximate the
interpolation by (3.22) and (3.23), one approach is to use a lowpass filter
h(x,y) that is spatially limited. For a spatially limited h(x,y), the summation
in (3.22) has a finite number of nonzero terms. If h(x,y) is a rectangular
window function given by

h(x,y) = 1 _{}, _{} (3.24)

then
it** **is called **zero-order interpolation**. In zero-order interpolation,
f_{c}(x,y) is chosen as f(n_{1},n_{2}) at the pixel
closest to (x,y). Other examples of h(x,y) which are more commonly used are
functions of smoother shape, such as the spatially limited Gaussian function or
the windowed ideal lowpass filter.

Another simple method widely used in practice is **bilinear interpolation**.
In this method, f_{c}(x,y) is evaluated by a linear combination of f(n_{1},n_{2})
at the four closest pixels. Suppose we wish to evaluate f(x,y) for n_{1}T_{1
}£ x £ (n_{1 }+ 1)T_{1} and n_{2}T_{2 }£ y £ (n_{2 }+1)T_{2},
as shown in Figure 3.44. The interpolated f_{c}(x,y) in the bilinear
interpolation method is

_{}(3.25a)

where _{} (3.25b)

and _{} (3.25c)

Another
method is **polynomial interpolation**. Consider a local spatial region, say
3 x 3 or 5 x 5 pixels, over which f(x,y) is approximated by a polynomial. The
interpolated image _{} is

_{} (3.26)

where
_{} is a term
in a polynomial. An example of _{} when N = 6 is

_{}=1,x,y,x^{2},y^{2},xy. (3.27)

The
coefficients S_{i }can be determined by minimizing

_{} (3.28)

where
y
denotes the pixels over which f(x, y) is approximated. Solving (3.28) is a
simple linear problem, since the _{}are fixed. Advantages of polynomial
interpolation include the smoothness of _{} and the simplicity of evaluating _{} and _{}, partial derivatives,
which are used in such applications as edge detection and motion estimation. In
addition, by fitting a polynomial with fewer coefficients than the number of
pixels in the region y in (3.28), some noise smoothing can be accomplished. Noise
smoothing is particularly useful in applications where the partial derivatives
_{} and _{} are used.

Spatial interpolation schemes can also be developed using motion estimation algorithms discussed in the next section. One example, where an image frame that consists of two image fields is constructed from a single image field, is discussed in Section 3.4.4.

Figure 3.45 shows an example of image interpolation. Figure 3.45(a) shows an image of 256 x 256 pixels interpolated by zero-order hold from an original image of 64 x 64 pixels. Figure 3.45(b) shows an image of 256 x 256 pixels obtained by bilinear interpolation of the same original image of 64 x 64 pixels.