(2) |
(3) |
On the other side of the accuracy scale, there is the infinitely long sinc interpolant:
(4) |
Several approaches exist for extending the nearest neighbor and linear interpolation to more accurate (albeit more expensive) methods. One example is the 4-point cubic convolution suggested by Keys (1981). The cubic convolution interpolant is a local piece-wise cubic function, which approximates the ideal sinc equation (4). Another popular approach is to taper the ideal sinc function in a local window. For example, one can use the Kaiser window Kaiser and Shafer (1980)
(5) |
I compare the accuracy of different forward interpolation methods on a one-dimensional signal shown in Figure . The ideal signal has an exponential amplitude decay and a quadratic frequency increase from the center towards the edges. It is sampled at a regular 50-point grid and interpolated to 500 regularly sampled locations. The interpolation result is compared with the ideal one. Observing Figures , , and , we can see the interpolation error steadily decreasing as we go subsequently from 1-point nearest neighbor to 2-point linear, 4-point cubic convolution, and 8-point windowed sinc interpolation. At the same time, the cost of interpolation grows proportionally to the interpolant length.
chirp
Figure 4 One-dimensional test signal. Top: ideal. Bottom: sampled at 50 regularly spaced points. The bottom plot is the input in a forward interpolation test. |
binlin
Figure 5 Interpolation error of the nearest neighbor interpolant (dashed line) compared to that of the linear interpolant (solid line). |
lincub
Figure 6 Interpolation error of the linear interpolant (dashed line) compared to that of the cubic convolution interpolant (solid line). |
cubkai
Figure 7 Interpolation error of the cubic convolution interpolant (dashed line) compared to that of the 8-point windowed sinc interpolant (solid line). |
The differences among different methods are also clearly visible from the discrete spectra of the corresponding interpolants. The left plots in figures and show discrete interpolation responses: the function W(x,n) for a fixed value of x=0.7. The right plots compare the corresponding discrete spectra. We can see that the spectrum gets flatter and wider as the accuracy of the method increases.
speclincub
Figure 8 Discrete interpolation responses of linear and cubic convolution interpolants (left) and their discrete spectra (right) for x=0.7. |
speccubkai
Figure 9 Discrete interpolation responses of cubic convolution and 8-point windowed sinc interpolants (left) and their discrete spectra (right) for x=0.7. |