Wavelet transforms have been one of the important signal processing developments in the last decade, especially for the applications such as time-frequency analysis, data compression, segmentation and vision. During the past decade, several efficient implementations of wavelet transforms have been derived. The theory of wavelets has roots in quantum mechanics and the theory of functions though a unifying framework is a recent occurrence. Wavelet analysis is performed using a prototype function called a wavelet. Wavelets are functions defined over a finite interval and having an average value of zero. The basic idea of the wavelet transform is to represent any arbitrary function f (t) as a superposition of a set of such wavelets or basis functions. These basis functions or baby wavelets are obtained from a single prototype wavelet called the mother wavelet, by dilations or contractions (scaling) and translations (shifts). Efficient implementation of the wavelet transforms has been derived based on the Fast Fourier transform and short-length ‘fast-running FIR algorithms’ in order to reduce the computational complexity per computed coefficient.


First of all, why do we need a transform, or what is a transform anyway?

Mathematical transformations are applied to signals to obtain further information from that signal that is not readily available in the raw signal. Now, a time-domain signal is assumed as a raw signal, and a signal that has been transformed by any available transformations as a processed signal.

There are a number of transformations that can be applied such as the Hilbert transform, short-time Fourier transform, Wigner transform, the Radon transform, among which the Fourier transform is probably the most popular transform. These mentioned transforms constitute only a small portion of a huge list of transforms that are available at engineers and mathematicians disposal. Each transformation technique has its own area of application, with advantages and disadvantages.


Often times, the information that cannot be readily seen in the time-domain can be seen in the frequency domain. Most of the signals in practice are time-domain signals in their raw format. That is, whatever that signal is measuring, is a function of time. In other words, when we plot the signal one of the axis is time (independent variable) and the other (dependent variable) is usually the amplitude. When we plot time-domain signals, we obtain a time-amplitude representation of the signal. This representation is not always the best representation of the signal for most signal processing related applications. In many cases, the most distinguished information is hidden in the frequency content of the signal. The frequency spectrum of a signal is basically the frequency components (spectral components) of that signal. The frequency spectrum of a signal shows what frequencies exist in the signal.

Let’s give an example from the biological signals. Suppose we are looking at an ECG signal (graphical recording of heart’s activity). The typical shape of a healthy ECG signal is well known to cardiologists. Any significant deviation from that shape is usually considered to be a symptom of a pathological condition. This pathological condition,

however, may not always be quite obvious in the time-domain signal. Cardiologists usually use the time-domain ECG signals, which are recorded on strip-charts to analyze ECG signals. Recently, the new computerized ECG recorders/analyzers also utilize the frequency information to decide whether a pathological condition exists. A pathological condition can sometimes be diagnosed more easily when the frequency content of the signal is analyzed.

Today Fourier transform is the most widely used transformation technique to obtain the frequency representation.


The Fourier transforms are used in many areas, in applications to obtain the frequency representation of the signal. If the Fourier transform of a signal in time-domain is taken, the frequency – amplitude representation of that signal is obtained.

The Fourier transform is defined by the following two equations:

X (f) = -∞ x (t). e (- 2 j ∏ f t) dt.  ...(1)
x (t) = -∞ X (f). e (2 j ∏ f t) df.  …(2)

In the above equation, t stands for time, f stands for frequency, and x denotes the signal in time domain and the X denotes the signal in frequency domain. This convention is used to distinguish the two representations of the signal.

Equation (1) is called the Fourier Transform of x (t), and equation (2) is called the inverse Fourier Transform of X (f), which is x (t).

For the better understanding of wavelet transforms let’s look back at the Fourier transforms more closely. Fourier transforms (as well as Wavelet transforms) is a reversible transform, that is, it allows going back and forth between the raw and processed signals. However, only either one of them is available at any given time. That is, no frequency information is available in time-domain signal, and no time information in the Fourier transformed signal. The natural question that comes to our mind is that is it necessary to have both the time and the frequency information at the same time?

The answer depends on the particular application, and on the nature of signal in hand. Recall that the Fourier transform gives the frequency information of the signal, which means that it tells us how much of each frequency exists in the signal, but it does not tell us where in time these frequency components exist. This information is not required when the signal is so called stationary.

Let’s take a closer look at this stationary concept more closely, since it is of paramount importance in signal analysis. Signals whose frequency content does not change in time are called stationary signals. In other words, the frequency content of stationary signals does not change with time. In this case, one does not need to know at what times

frequency components exist, since all frequency components exists at all times!!!

For example, take the following signal…

x (t) = cos (2*∏*10t) + cos (2*∏*25t) + cos (2*∏*50t) + cos (2*∏*100t) 

The above signal is a stationary signal, because it has frequencies of 10Hz, 25Hz, 50Hz,and 100Hz at any given time instant. This signal is plotted below:

The top plot in figure (2) is the (half of the symmetric) frequency spectrum of the signal in figure (1). The bottom plot is the zoomed version of the top plot, showing only the range of the frequencies 10, 25, 50,100 Hz.

Contrary to the signal in the figure (1), the following is not stationary. Figure(3) plots a signal whose frequency constantly in time. This signal is known as the “chirp” signal. This is a non-stationary signal.
Let’s look at another example. Figure (4) plots a signal with four different frequency components at four different time intervals, hence a non-stationary signal. The interval 0 to 300ms has a 100Hz sinusoid, the interval 300 to 600ms has a 50Hz sinusoid, the interval 600 to 800ms has a 25Hz sinusoid, and finally the interval 800 to1000ms has a 10Hz sinusoid.
The ripples present in the above figure are due to sudden changes from one frequency component to another, which is neglected in our analysis. Also, note that the amplitudes of higher frequency components are higher than the low frequency ones. This is due to the fact that higher frequencies last longer than the lower frequency components.

Now, compare the two figures (2) and (5). The similarity between these two spectrums should be apparent. Both of them show four spectral components at exactly the same frequencies, i.e., at 10, 25, 50 and 100Hz. Other than the ripples, and the difference in the amplitudes (which can always be normalized), the two spectrums are almost identical, although the corresponding time-domain signals are not even close to each other. Both of the signals involve the same frequency components, but the first one has these frequencies at different intervals. So, how come the spectrums of two entirely different signals look very much alike? Recall that the Fourier transform gives the spectral component of the signal, but it gives no information regarding where in time those spectral components appear. Therefore, Fourier transform is not a suitable technique for analyzing non-stationary signals, with one exception:

Fourier transform can be used for non-stationary signals, if we are only interested in what spectral components exist in the signal, but not interested where these occur. However, if this information is required,

i.e., if we want to know, what spectral components occur at what time (interval), then Fourier transform is not the right transform to use.

For practical purposes it is difficult to make the separation, since there are a lot of practical stationary signals, as well as non-stationary ones. Almost all biological signals, for example are non-stationary. Some of the famous ones are ECG (electrical activity of the heart, electrocardiograph), EEG (electrical activity of the brain, electroencephalograph), and EMG (electrical activity of the muscles, electromyography).

When the time localization of the spectral components are needed, a transform giving the time-frequency representation of the signal is needed.

The Wavelet transform is a transform of this type.


The Wavelet transform provides the time-frequency representation. (There are other types of transforms which give this information too, such as short time Fourier transform, Wigner distribution, etc.)

Often times a particular spectral component occurring at any instant can be of particular interest. In these cases it may be very beneficial to know that the time intervals these particular spectral components occur. For example, in EEGs, the latency of an event-related potential is of particular interest. (Event-related potential is the response of the brain to a specific stimulus like flashlight, the latency of this response is the amount of time elapsed between the onset of the stimulus and the response).

Wavelet transform is capable of providing the time-frequency information simultaneously, hence giving a time-frequency representation of the signal.

Originally, the Wavelet transform was implemented as an alternative to the short time Fourier transforms. The Wavelet transform

analysis is similar to short time Fourier transform analysis, except for two main differences:

1.      The Fourier transforms of the windowed signals are not taken, and therefore single peak will be seen corresponding to a sinusoid, i.e., negative frequencies are not computed.

2.      The width of the window is changed as the transform is computed for every single spectral component, which is probably the most significant characteristic of the Wavelet transform.

The above points causes problem of resolution of the STFT. This is due to the result of choosing a window function, once and for all, and using that window in the entire analysis. The answer, of course, is application dependent: if the frequency components are well separated from each other

In the original signal, then we may sacrifice some frequency resolution and go for good time resolution, since the spectral components are already well separated from each other. However, if this is not the case, then a good window function could be more difficult than finding a good stock to invest in. Thus the Wavelet transform solves the dilemma of resolution to a certain extent.


The Wavelet analysis is performed using a prototype function called a wavelet, which has the effect of a band pass filter. Wavelets are functions defined over a finite interval and having an average value of zero. The basic idea of the wavelet transform is to represent any arbitrary function f (t) as a superposition of a set of such wavelets or basis function. These basis functions are derived from a single prototype called mother wavelet.

The term wavelet means a small wave. The smallness refers to the condition that this window function is of finite length (compactly supported). The ‘wave’ refers to the condition that this function is oscillatory. The term ‘mother’ implies that the functions with different region of support that are used in the transformation process are derived from one main function, or the mother wavelet by dilations or contractions (scaling) and translations (shifts).

There are many different implementations of the Wavelet transforms, of which the continuous wavelet transform is the simplest to start with.


The continuous wavelet transform was developed as an alternative to short time Fourier transforms, to overcome the resolution problem.

The continuous wavelet transform is defined as follows:

CWTxΨ (τ,s) = ΨxΨ (τ,s) = 1/√s ∫ x (t) Ψ*(t- τ /s) dt.

As seen in the above equation, the transformed signal is a function of two variables, tau and s, the translation and scale parameter, respectively. Psi(t) is the transforming function, and it is called the mother wavelet.

The term translation is related to the location of the window, as the window is shifted through the signal. This term obviously corresponds to time information in time domain. However, we do not have a frequency parameter, as we had before the STFT. Instead, we have a scale parameter, which is defined as 1/ frequency. The parameter scale in the Wavelet analysis is similar to the scale used in maps. As in the case of maps, a high scale refers to a detailed view. Similarly, in

terms of frequency, low frequencies (high scales) correspond to global information of a signal (that usually spans the entire signal), whereas high frequencies (low scales) correspond to detailed information of a hidden pattern in the signal (that usually lasts a relatively short time). Scaling, as a mathematical operation, either dilates or compresses a signal. Larger scales correspond to dilated signals and small scales correspond to compressed signals.

In terms of mathematical functions, if f (t) is a given function, f (st) corresponds to a contracted version of f (t) if s<1 and to an expanded version of f (t) if s>1.

However, in the definition of the Wavelet transform, the scaling term is used in the denominator, and therefore, the opposites of the above statements holds, i.e., scales s<1 dilates the signals whereas scales s>1 compresses the signal.


1.      The signal to be analyzed is taken.

2.      The mother wavelet is chosen and the computation is begun with s = 1. The CWT is computed for all values of s. the wavelet will dilate is s increases and compresses when s is decreased.

3.      The wavelet is placed in the beginning of the signal at the point which corresponds to time = 0.

4.      The wavelet is multiplied with the signal and integrated over all times. The result is then multiplied by the constant 1/sqrt{s}.

5.      The above step normalizes the energy so that the transformed signal has same energy at every scale.

6.      The wavelet at scale s =1 is then shifted to the right by τ and the above steps are repeated until the wavelet reaches the end of the signal.


The development of wavelets is an example where ideas from many different fields combined to merge into a whole that is more than the sum of its parts. Wavelet transforms have been widely employed in signal processing application, particularly in image compression research. It has been used extensively in multi-resolution analysis (MRA) for image processing. In signal processing applications, different implementations of the wavelet theory have been used for effective evaluation of biological signals emanating from bio-medical devices.

No comments:

Post a Comment

leave your opinion