1

Consider the Fourier transform $F(\omega)$ of the function $f(t)$. The magnitude of $F(\omega)$ depends on $\omega$ and thus also depends on the scale of the $t$-axis. For example, when $f_1(t)$ is a box function which is 1 between $[0,1]$ s and $f_2(t)$ is a box function which is 1 between $[0,1]$ ns = $[0,10^{-9}]$ s, then the amplitude of $F_1(\omega)$ is $10^9$ times larger than the amplitude of $F_2(\omega)$. This is because the time scale is reduced by a factor $10^9$ in the second case.

However, no difference would be obtained when you do a numerical Fourier transform. If you have 100 points of the function $f_1(t)$ equally spaced between $[0,10]$ and also 100 points of the function $f_2(t)$ equally spaced between $[0,10\times10^{-9}]$, then numerically the amplitude of the Fourier transform of both functions is the same (which is not correct). Numerically, you only consider the Fourier transform of the "y-values" $f(t_i)$, so the information about the time scale is lost...

You can solve this problem by multiplying the result with $10^{-9}$ in the second case because the Fourier transform of the rectangular function is proportional with $1/\omega$. However, in general, this proportionality is not present... How to solve this problem for a general function $F(\omega)$? For example, when the Fourier transform is proportional to $e^\omega$ or proportional to $1/\omega^2$ or ...? Is there a numerical approach to take the scale of the time axis into account?

Frederic
  • 173
  • 5
  • You can approximate the continuous-time Fourier transform (CTFT) by a discrete Fourier transform (DFT) including scaling: cf. this answer. You just need to scale the DFT by the sampling interval. – Matt L. Jul 24 '20 at 12:36
  • Maybe this will help: https://dsp.stackexchange.com/questions/69186/dft-exercise-in-the-book-understanding-digital-signal-processing-3-ed/69233#69233 – Cedron Dawg Jul 24 '20 at 12:51
  • Is this scaling by the sampling interval valid for any kind of function f(t)? What if $f(t)=e^{i\omega_0 t}$? – Frederic Jul 24 '20 at 12:51
  • 1
    @Frederic: Yes, it's valid for any kind of function, but the general problem with using the DFT to approximate the CTFT remains: apart from the aliasing error, you'll have a truncation error because you can only process a finite time window of a theoretically infinitely long function. – Matt L. Jul 24 '20 at 16:06

1 Answers1

2

Most of the classical linear transformations (even filtering) may have three main types of scalings:

  1. natural or none: sum or integral does not have an explicit scaling factor (but the inverse may need one)
  2. in amplitude: because of linearity, at least one reference "unit" signal should have a unit amplitude in the transformed domain, for an easy read of graphs. Typically a unit amplitude sine (which is not $L_1$-integrable) should have a one amplitude at its frequency in the Fourier domain
  3. in energy: to have constant energy in the original or the transformed domain.

Each of these options (sometimes, two of them are equal) depends on the purpose. Fourier has a specific relation to scale (Where in “Discrete Time Signal Processing” (Oppenheim et al.) can I find the scale-change theorem?):

$$ s(\alpha t) \mapsto \frac{1}{|\alpha|} S \left( \frac{f}{|\alpha|}\right) $$

Obtaining scale-, shift- or orientation-invariant features is a long-lasting issue in DSP, and is still a concern in machine intelligence or deep learing. Along the Fourier line, you can look at the Fourier-Mellin transform or scale represensation (by L. Cohen), and the many feature representations like SIFT, SURF, ORB, BRIEF: Image Matching Using SIFT, SURF, BRIEF and ORB: Performance Comparison for Distorted

Laurent Duval
  • 31,850
  • 3
  • 33
  • 101