11

I'm learning wavelets and there's a problem I can not figure out for quite a while:

One of the advantages of the wavelet transform is that it has a variable which allows us to change it's scale dynamically while in window Fourier transform we stick with single window size which limits accuracy both in time and frequency domain.

So if we take a long window, we can get better low frequency accuracy. On the other side short window will give us good time precision and poor frequency accuracy.

In that second case, as I understand we have a chance to get good quality spectrum for high frequencies only. To be more precise, we can get high frequency accuracy only for those functions, which gonna fit in our window at least once.

So my question is: what if I will take an infinite number of different size windows for Fourier transform? It would look quite similar to wavelet concept, except the fact that actual basis function will remain to be sine.

How does window Fourier transform with an infinite number of windows with different sizes differs from wavelet in terms of time/frequency precision?

UPDATE:

The closest clear explanation I've got to is following:

Since sine is non-null function on the interval $(-\infty, \infty)$, it's spectrum can only have local support only when taken on the whole interval. Thus, whatever is modeled as sum of different sines harmonics inherits that property. So fourier transform of windowed function will never have local support even thought spectrum's fluctuations might be infinitly small.

Wavelets, on the other side, are functions which originally do have a local support. So fourier transform of the wavelet will also have local support since no windowing is needed. Consequently, whatever is modeled with scaled and shifted wavelets will also have local support in frequency domain.

But I've never seen a proof of it which would be both clear and well formed in terms of math. I believe that clarity and proof precision level might also be bound by heisenberg uncertainty principle:)

Roman
  • 245
  • Both the discrete wavelet transform and the short-time Fourier transform are (orthogonal) filter-banks. – reuns Apr 19 '17 at 08:16
  • 1
    A wavelet transform is basically a sub-band coder - splitting the function into "bands" of approximate Fourier frequencies. Although the bands are rarely perfectly "square" in the Fourier domain (except for Shannon wavelets). – mathreadler Apr 19 '17 at 08:17
  • There are nice pictures on the famous max flat orthogonal Daubechies wavelets here: https://en.wikipedia.org/wiki/Daubechies_wavelet there you can see the sub-band decomposition for one highpass lowpass combination. – mathreadler Apr 19 '17 at 08:52
  • I realize that wavelets have local support in frequency domain.

    The original question is why I can't replace wavelet transform with multiple windowed fourier transforms. Why can't I just take a set of windows with different support size and use them in the same manner I use wavelets.

    And if my explanation given in UPDATE is right, then is there any clear enough formalization of it in any books? I've found none so far.

    – Roman Apr 19 '17 at 09:35
  • The transform is a set of convolutions. Do you know about the convolution theorem? – mathreadler Apr 19 '17 at 10:08
  • But the real point with wavelets is to try and get away from the Fourier frequencies and find other descriptions. – mathreadler Apr 19 '17 at 10:12
  • @mathreadler, I've just had a look at it. So it basically says that if I convolve anything with some function that has compact fourier transform, the result will also have compact transform.

    Thus windowed fourier transform cannot have compact support in frequency domain until either window of examined function have compact spectrum?

    – Roman Apr 19 '17 at 11:06
  • I meant the one that says $(f*g)(t) = \mathcal{F^{-1}}{\mathcal{F}{f} \cdot \mathcal{F}{g}}$ (circular) convolution in time domain is the same as multiplication in fourier domain. – mathreadler Apr 19 '17 at 11:07
  • @mathreadler, can you have a look at my previous comment? Did I understood you right? – Roman Apr 19 '17 at 19:38
  • I meant the convolution becomes multiplication part. So you can use Fourier Transform to calculate the convolutions used in the wavelet transform, but usually there exist specialized factorizations even faster than FFT. – mathreadler Apr 19 '17 at 19:45
  • I guess we're getting off the original theme. Or I just do not understand you. Let's turn it another way. Suppose we have a wavelet transform formula $\hat{f}(a,b) = \frac{1}{\sqrt{a}} \int_{-\infty}^{\infty}x(t)\psi(\frac{t-b}{a})dt$. What if I define $\psi(\frac{t-b}{a}) = w(\frac{t-b}{a})e^{-j\omega t}$. So it definitely not a valid wavelet function. That's a windowed fourier transform used in wavelet manner. So, the main difference, as I see it is the fact that my redefined $\psi$ does not have local support in frequency domain, consequently neither does transform. Is it so? – Roman Apr 19 '17 at 20:02
  • 1
    @Roman It is not clear what you understood and what you are thinking to. Really the WT and the STFT are filter banks (you know what is an equalizer ? it is the same). The main difference between WT and STFT is : the shape of the filter in each frequency band, and (for discrete signals) the way we decimate the signal. This downsampling is highly constrained by the fact we want a perfect reconstruction of the signal. – reuns Apr 19 '17 at 20:49
  • Well, I was just wondering, what happens if in wavelet transfrom we'll replace a wavelet with windowed sine which is used in STFT. And why wavelet is considered to be better. After all investigation it summed up into ashamedly simple fact: they're quite similar. Since there's no function both localized in time and frequency domain (according to Gabor limit), the main difference is how fast fourier transform of wavelets and windowed sine decrease. And base wavelets spectrum simply decreases faster then the spectrum of windowed sine. So does the spectrum of the transform. Am I right? – Roman Apr 19 '17 at 21:01

1 Answers1

3

You are right that no function can have compact support both before and after Fourier Transformation.

To realize this, imagine we do something that chops the function to it's support.

$$f_{chop}(t)= f(t)\cdot (H(t_0+t) \cdot H(t_1-t))$$

where

$$B_{t_0,t_1}(x) = (H(t_0+t) \cdot H(t_1-t))$$ is a box function from $t_0$ to $t_1$:

Now we can derive ( usually done in any first course in Fourier Analysis or Transform Theory ) the Fourier transform of this Box:

$$\mathcal{F}\{B_{t_0,t_1}\} = \text{sinc}((t_1-t_2)w) = \frac{\sin(w(t_1-t_2))}{w(t_1-t_2)}$$

This sinc function does not have compact support, since there is no $w$ it becomes zero for (except exactly each period of the sine).

Now the crucial part, the convolution theorems:

$$(f*g)(t) = \mathcal{F}^{-1}(\mathcal{F}\{f\} \cdot \mathcal{F}\{g\})$$

$$f(t)\cdot g(t) = \mathcal{F}^{-1}(\mathcal{F}\{f\} * \mathcal{F}\{g\})$$

Convolution in one domains gives multiplication in the other, and vice versa.

This means if something strips a function of it's infinite support in one domain (multiplying with a box), then it automatically becomes convolution with a infinite supported sinc function in the other domain.

mathreadler
  • 26,704
  • 9
  • 42
  • 107