3

Refrence wikipedia article for upsampling and wikipedia article for downsampling

Upsampling , interpolation and expansion are described as synonyms

While

Downsampling , decimation and compression are described as synonyms

Are they mentioned properly as synonyms? Are those 3 terms referring to same operation?

Fat32
  • 28,152
  • 3
  • 24
  • 50
DSP_CS
  • 1,910
  • 2
  • 29
  • 65

2 Answers2

2

Within the context of Digital Signal Processing...

Upsampling and interpolation are synonyms, expander is not.

Specifically, an upsampler and an interpolator include an expander followed by an anti-imaging lowpass filter. The expander, is the initial stage of an interpolator or an upsampler.

The following is an expander:

$$x[n] \longrightarrow \boxed{ \uparrow 2} \longrightarrow y[n] = \begin{cases} { x[n/2] ~~, ~~~n = 0,2,4,... \\ ~~~~ 0~~~~~~~ , ~~~n= 1,3,5,...} \end{cases} $$

The following is an upsampler / interpolator:

$$x[n] \longrightarrow \boxed{ \uparrow 2} \longrightarrow w[n] \longrightarrow \boxed{ h[n]} \longrightarrow y[n] $$

Similarly, downsampler and decimator are synonyms, compressor is not. The following is a compressor:

$$x[n] \longrightarrow \boxed{ \downarrow 2} \longrightarrow y[n] = x[2n]$$

and the following is a downsampler / decimator: $$x[n] \longrightarrow \boxed{ h[n]} \longrightarrow w[n] \longrightarrow \boxed{ \downarrow 2} \longrightarrow y[n] $$

Specifically, a downsampler and a decimator include an anti-aliasing lowpass filter followed by a compressor. The compressor, is the final stage of a decimator or a downsampler.

Note that you may omit the anti-aliasing lowpass filter when downsampling (or decimating) due to the fact that the input signal is already bandlimited to the band of interest. In such a case, apparently the expander, the downsampler, and the decimator become the same operations; but this is not the general case.

Fat32
  • 28,152
  • 3
  • 24
  • 50
  • What do you call the process of inserting zeros between samples? I call it upsampling myself, and at least MathWorks agrees with this definition: https://www.mathworks.com/help/signal/ref/upsample.html – MBaz Apr 05 '21 at 15:17
  • 4
    I think one needs to be careful using terms like this, and refrain from arguments over terminology. Authors tend to define the terms any way they want, and there's often disagreement between authors about exact meaning. If you're an author -- define your terms. If you're a reader -- double-check the author's terms. – TimWescott Apr 05 '21 at 15:49
  • 1
    @MBaz see the edit... – Fat32 Apr 05 '21 at 18:06
  • @TimWescott I see that ok but successful (and thus useful) commnication between parties require that they use the same words for the same meanings. Authors are not so free to define the terms anyway they want: I cannot see any useful output from the freedom of calling 3 an even number (and 2 as odd). Some words may have multiple meanings and some objects / concepts may have multiple names, but those should be made as clear as possible, for preventing waste of resources spent through improper communications. Of course I'm not the authority to fix-define these concepts, probably nobody is. – Fat32 Apr 05 '21 at 21:58
2

I am not sure about your wikipedia reference. In the one I just retrieved, they say:

In digital signal processing, upsampling, expansion, and interpolation are terms associated with the process of resampling in a multi-rate digital signal processing system. Upsampling can be synonymous with expansion, or it can describe an entire process of expansion and filtering (interpolation)

The can be is important here and requires a lot care, as many authors use different terminologies, and terms may have quite different acceptations. For instance, compression and expansion when used close to the source or data acquisition may also refer to nonlinear monotonous operations on signal amplitudes to mitigate or improve issues related to values quantization (compression and expansion being combined as compander or compandor).

Notably, interpolation and compression have much broader meanings. For instance, people working with actually data compression and multirate filterbanks are not likely to mix terms. In Strang and Nguyen's Wavelets and filterbanks, they call expander the upsampling operator, and decimator the downsampling operator. There, I interpret that they make a difference between the well-defined "upsampling operator", and "upsampling", as a more generic term, but they are no so consistent throughout the book.

If we restrict to "operations that insert novel sampled between already existing samples", one possibility is to consider that in a hierarchy by the rate of insertion (integer, rational, any) and the complexity (linearity) of the processing:

  • expansion inserts an integer number of values between actual samples. The most basic are zero-fill or zero-insertion expanders, but there are higher order versions (ZOH or zero-order-hold expanders). They would have integer-fold, without filtering. In French (the language in which I learned this with M. Bellanger), it is sometimes called "insertion".
  • upsampling: allow a modification of the rate by a rational factor (maybe with not-too-big numerator/denomination), interleaving linear filters and expanders/"compressors", potentially in cascade.
  • interpolation: fill at any place (possibly non-rational), potentially with nonlinear methods or optimization.

Of course, the classic zero-fill expansion would then be an example of upsampling with an integer factor, without filtering. Similarly, you could call interpolation a cascade of upsampling and downsampling operations with lowpass filters.

Nota: I really would have preferred insertion and deletion, like in the DNA code, for the simplest steps.

Laurent Duval
  • 31,850
  • 3
  • 33
  • 101
  • 1
    Upsampling is one form of interpolation, there are many other forms of interpolation that are not considered Upsampling. Similar to the statement "All dogs are animals, but not all animals are dogs." – David Jul 25 '22 at 13:35