Wavelet Transform

The wavelet transform replaces the Fourier transform's sinusoidal waves by a family generated by translations and dilations of a window called a wavelet.

It takes two arguments: time and scale.


Outline

The wavelet transform is defined by

where the base atom y is a zero average function, centered around zero with a finite energy. The family of vectors is obtained by translations and dilatations of the base atom:

The previous function is centered around u, like the windowed Fourier atom. If the frequency center of y is h, then the frequency center of the dilated function is h/s.

Its time spread is proportional to s. Its frequency spread is proportional to the inverse of s. Here is an example of Heisenberg boxes of wavelet atoms:

At the finer scales, more Heisenberg boxes can be placed side to side because there is a better time resolution.

Properties

The wavelet transform has thus a time frequency resolution which depends on the scale s. Under the condition

it is a complete, stable and redundant representation of the signal; in particular, the wavelet transform is left invertible. The redundancy implies the existence of a reproducing kernel.

Scalogram

If h denotes the frequency center of the base wavelet, then the frequency center of a dilated wavelet is x=h/s. The scalogram of a signal is defined by

The normalized scalogram is .

Choice of Window

As far as the continuous wavelet transform is concerned, a wavelet is simply a finite energy function with a zero mean. Besides its Heisenberg box, the most important feature of a wavelet is the number of its vanishing moments:

The vanishing moments property makes it possible to analyse the local regularity of a signal.

A theorem caracterizes fast decaying wavelets with n vanishing moments as the nth derivatives of a fast decaying function.

Implementation

The wavelet transform is computed with a Fast Wavelet Transform. It computes a discrete transform with circular convolutions, which are themselves computed with a FFT.

To speed up computations, dyadic wavelets are often used. The dyadic wavelet transform is implemented by filter banks.


Scalogram examples