Dirac comb

From formulasearchengine
Revision as of 21:31, 23 October 2013 by en>Rdsomma (→‎Fourier transform)
Jump to navigation Jump to search

Upsampling is interpolation, applied in the context of digital signal processing and sample rate conversion. When upsampling is performed on a sequence of samples of a continuous function or signal, it produces an approximation of the sequence that would have been obtained by sampling the signal at a higher rate (or density, as in the case of a photograph). For example, if compact disc audio is upsampled by a factor of 5/4, the resulting sample-rate increases from 44,100 Hz to 55,125 Hz.

Upsampling by an integer factor

Interpolation by an integer factor, L, can be explained as a 2-step process, with an equivalent implementation that is more efficient:

  1. Create a sequence, comprising the original samples, separated by L-1 zeros.
  2. Smooth out the discontinuities with a lowpass filter, which replaces the zeros.

In this application the filter is called an interpolation filter, and its design is discussed below. When the interpolation filter is an FIR type, its efficiency can be improved, because the zeros contribute nothing to its dot product calculations. It is an easy matter to omit them from both the data stream and the calculations. The calculation performed by an efficient interpolating FIR filter for each output sample is a dot product:

where the h[•] sequence is the impulse response, and K is its length. Impulse response coefficients taken at intervals of L form a subsequence, and there are L such subsequences (called phases) multiplexed together. Each of L phases of the impulse response is filtering the same sequential values of the x[•] data stream and producing one of L sequential output values. In some multi-processor architectures, these dot products are performed simultaneously, in which case it is called a polyphase filter.

For completeness, we now mention that a possible, but unlikely, implementation of each phase is to replace the coefficients of the other phases with zeros in a copy of the h[•] array, and process the sequence at L times faster than the original input rate. L-1 of every L outputs are zero, and the real values are supplied by the other phases. Adding them all together produces the desired y[•] sequence. Adding a zero is equivalent to discarding it. The equivalence of computing and discarding L-1 zeros vs computing just every Lth output is known as the second Noble identity.[1]

Fig 1: Spectral depictions of zero-fill and interpolation by lowpass filtering

Interpolation filter design

Let X(f) be the Fourier transform of any function, x(t), whose samples at some interval, T, equal the x[n] sequence. Then the discrete-time Fourier transform (DTFT) of the x[n] sequence is the Fourier series representation of a periodic summation of X(f):

Template:NumBlk

When T has units of seconds, has units of hertz. Sampling L times faster (at interval T/L) increases the periodicity by a factor of L:

Template:NumBlk

which is also the desired result of interpolation. An example of both these distributions is depicted in the top two graphs of Fig.1.

When the additional samples are inserted zeros, they increase the data rate, but they have no effect on the frequency distribution until the zeros are replaced by the interpolation filter. Many filter design programs use frequency units of cycles/sample, which is achieved by normalizing the frequency axis, based on the new data rate (L/T). The result is shown in the third graph of Fig.1. Also shown is the passband of the interpolation filter needed to make the third graph resemble the second one. Its cutoff frequency is  [note 1] In terms of actual frequency, the cutoff is   Hz, which is the Nyquist frequency of the original x[n] sequence.

The same result can be obtained from Z-transforms, constrained to values of complex-variable, z, of the form   Then the transform is the same Fourier series with different frequency normalization. By comparison with Template:EquationNote, we deduce:

which is depicted by the fourth graph in Fig.1.  When the zeros are inserted, the transform becomes:

depicted by the bottom graph. In these normalizations, the effective data-rate is always represented by the constant 2π (radians/sample) instead of 1.  In those units, the interpolation filter bandwidth is π/L, as show on the bottom graph. The corresponding physical frequency is    Hz, the original Nyquist frequency.

Upsampling by a rational fraction

Let L/M denote the upsampling factor, where L > M.

  1. Upsample by a factor of L
  2. Downsample by a factor of M

Upsampling requires a lowpass filter after increasing the data rate, and downsampling requires a lowpass filter before decimation. Therefore, both operations can be accomplished by a single filter with the lower of the two cutoff frequencies. For the L > M case, the interpolation filter cutoff,   cycles per intermediate sample, is the lower frequency.

Notes

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

Citations

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.

See also

References

  • 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  • Matlab example of using polyphase filters for interpolation [1]

Template:DSP

  1. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534


Cite error: <ref> tags exist for a group named "note", but no corresponding <references group="note"/> tag was found