Periodic Interpolation (Spectral Zero Padding)
The dual of the zero-padding theorem states formally that zero padding in the frequency domain corresponds to periodic interpolation in the time domain:
Definition: For all
and any integer ,
where zero padding is defined in §7.2.7 and illustrated in Figure 7.7. In other words, zero-padding a DFT by the factor in the frequency domain (by inserting zeros at bin number corresponding to the folding frequency7.21) gives rise to ``periodic interpolation'' by the factor in the time domain. It is straightforward to show that the interpolation kernel used in periodic interpolation is an aliased sinc function, that is, a sinc function that has been time-aliased on a block of length . Such an aliased sinc function is of course periodic with period samples. See Appendix D for a discussion of ideal bandlimited interpolation, in which the interpolating sinc function is not aliased.
Periodic interpolation is ideal for signals that are periodic in samples, where is the DFT length. For non-periodic signals, which is almost always the case in practice, bandlimited interpolation should be used instead (Appendix D).
Relation to Stretch Theorem
It is instructive to interpret the periodic interpolation theorem in terms of the stretch theorem, . To do this, it is convenient to define a ``zero-centered rectangular window'' operator:
Definition: For any
and any odd integer we define the
length even rectangular windowing operation by
Theorem: When
consists of one or more periods from a periodic
signal
,
Proof: First, recall that
. That is,
stretching a signal by the factor gives a new signal
which has a spectrum consisting of copies of
repeated around the unit circle. The ``baseband copy'' of in
can be defined as the -sample sequence centered about frequency
zero. Therefore, we can use an ``ideal filter'' to ``pass'' the
baseband spectral copy and zero out all others, thereby converting
to
. I.e.,
Bandlimited Interpolation of Time-Limited Signals
The previous result can be extended toward bandlimited interpolation of which includes all nonzero samples from an arbitrary time-limited signal (i.e., going beyond the interpolation of only periodic bandlimited signals given one or more periods ) by
- replacing the rectangular window with a smoother spectral window , and
- using extra zero-padding in the time domain to convert the cyclic convolution between and into an acyclic convolution between them (recall §7.2.4).
The approximation symbol `' approaches equality as the spectral window approaches (the frequency response of the ideal lowpass filter passing only the original spectrum ), while at the same time allowing no time aliasing (convolution remains acyclic in the time domain).
Equation (7.8) can provide the basis for a high-quality sampling-rate conversion algorithm. Arbitrarily long signals can be accommodated by breaking them into segments of length , applying the above algorithm to each block, and summing the up-sampled blocks using overlap-add. That is, the lowpass filter ``rings'' into the next block and possibly beyond (or even into both adjacent time blocks when is not causal), and this ringing must be summed into all affected adjacent blocks. Finally, the filter can ``window away'' more than the top copies of in , thereby preparing the time-domain signal for downsampling, say by :
Next Section:
Why a DFT is usually called an FFT in practice
Previous Section:
Zero Padding Theorem (Spectral Interpolation)