49
Wavelet Transform From C. Valens article, “A Really Friendly Guide to Wavelets,” 1999

Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Embed Size (px)

Citation preview

Page 1: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Wavelet Transform

From C. Valens article, “A Really Friendly Guide to Wavelets,” 1999

Page 2: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Fourier theory: a signal can be expressed as the sum of a series of sines and cosines.

• The big disadvantage of a Fourier expansion, however, is that it has only frequency resolution and no time resolution.

• Although we might be able to determine all the frequencies present in a signal, we do not know when (or where) they are present.

Page 3: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• To overcome this problem in the past decades several solutions have been developed which are more or less able to represent a signal in the time and frequency domain at the same time.

Page 4: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Windowing

• The idea behind these time-frequency joint representations is to cut the signal of interest into several parts and then analyze the parts separately.

• This leads to the idea of spectrum of short-time FT (STFT).

• It is clear that analyzing a signal this way will give more information about the when and where of different frequency components, but it leads to a fundamental problem as well: how to cut the signal?

Page 5: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Short window in time domain – Large spread in frequency domain

• Cutting the signal corresponds to a convolution between the signal and the cutting window.

• Convolution in the time domain is identical to multiplication in the frequency domain. The Fourier transform of a Dirac pulse (impulse) contains all possible frequencies the frequency components of the signal will be smeared out all over the frequency axis.

• In fact this situation is the opposite of the standard Fourier transform since we now have time resolution but no frequency resolution whatsoever.

Page 6: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Review of uncertainty Principle

Page 7: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 8: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• The underlying principle of the phenomena just described is Heisenberg ’s uncertainty principle, which, in signal processing terms, states that it is impossible to know the exact frequency and the exact time of occurrence of this frequency in a signal.

• In other words, a signal can simply not be represented as a point in the time-frequency space.

Page 9: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Wavelet Analysis

• The wavelet transform or wavelet analysis is probably the most recent solution to overcome the shortcomings of the Fourier transform.

• In wavelet analysis the use of a fully scalable window solves the signal-cutting problem.

• The window is shifted along the signal and for every position the spectrum is calculated.

Page 10: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Unlike STFT where the window is fixed once chosen, in wavelet this process is repeated many times with a slightly shorter (or longer) window for every new cycle.

• In the end the result will be a collection of time-frequency representations of the signal, all with different resolutions.

Page 11: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Multiresolution analysis

• Because of this collection of representations we can speak of a multiresolution analysis.

• In the case of wavelets we normally do not speak about time-frequency representations but about time-scale representations, scale being in a way the opposite of frequency, because the term frequency is reserved for the Fourier transform.

Page 12: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Since from literature it is not always clear what is meant by small and large scales, we will define it here as follows:

• the large scale is the big picture, while the small scales show the details.

• Thus, going from large scale to small scale is in this context equal to zooming in.

Page 13: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Continuous Wavelet Transform

• The wavelet analysis is known as the continuous wavelet transform or CWT.

where * denotes complex conjugation.

• This equation shows how a function f(t) is decomposed into a set of basis functions s,(t), called the wavelets.

Page 14: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Mother wavelet

• The wavelets are generated from a single basic wavelet (t), the so-called mother wavelet, by scaling and translation:

Page 15: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• It is important to note that in (1) and (3) the wavelet basis functions are not specified.

• The could be many choices of the mother wavelet.

• This is a difference between the wavelet transform and the Fourier transform, or other transforms.

Page 16: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• One of the most important properties of wavelets are the admissibility condition

where (w) is the Fourier transform of (t).

• The admissibility condition implies that the Fourier transform of ( t) vanishes at the zero frequency, i.e.

Page 17: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• A zero at the zero frequency also means that the average value of the wavelet in the time domain must be zero,

• and therefore it must be oscillatory. In other words, ( t) must be a wave.

Page 18: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 19: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 20: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Redundancy in CWT

• As can be seen from (1) the wavelet transform of a one-dimensional function is two-dimensional;

– The wavelet transform of a two-dimensional function is four-dimensional.

• In (1) the wavelet transform is calculated by continuously shifting a continuously scalable function over a signal and calculating the correlation between the two.

Page 21: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Discrete Wavelet Transform

• CWT maps a one-dimensional signal to a two-dimensional time-scale joint representation that is highly redundant.

• To overcome this problem discrete wavelets have been introduced.

• Discrete wavelets are not continuously scalable and translatable but can only be scaled and translated in discrete steps (i.e., both scale and time are discrete)

scale time

Page 22: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Discrete Wavelet Transform

• Although it is called a discrete wavelet, it normally is a (piecewise) continuous function.

• In (10), j and k are integers and s0>1 is a fixed dilation step.

• The translation factor 0 depends on the dilation step.

• The effect of discretizing the wavelet is that the time-scale space is now sampled at discrete intervals.

• Key point: when the scale is large (smooth part of the signal), the time-domain resolution is courser; otherwise, when the scale is small (high-variation part of the signal), the time-domain resolution is denser.

Page 23: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Discrete Wavelet Transform

• We usually choose s0 = 2 and 0 = 1 so that the sampling of the frequency axis corresponds to dyadic sampling.

Page 24: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• When discrete wavelets are used to transform a continuous signal the result will be a series of wavelet coefficients, and it is referred to as the wavelet series decomposition .

• An important issue in such a decomposition scheme is of course the question of reconstruction.

• It is all very well to sample the time-scale joint representation on a dyadic grid, but if it will not be possible to reconstruct the signal it will not be of great use.

Page 25: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• As it turns out, it is indeed possible to reconstruct a signal from its wavelet series decomposition.

• In [Dau92] it is proven that the necessary and sufficient condition for stable reconstruction is that the energy of the wavelet coefficients must lie between two positive bounds,

• When A = B, the discrete wavelets behave exactly like an orthonormal basis.

• [Dau92] Daubechies, I. TEN LECTURES ON WAVELETS. 2nd ed. Philadelphia: SIAM, 1992. CBMS-NSF regional conference series in applied mathematics 61.

Page 26: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• The last step we have to take is making the discrete wavelets orthonormal. This can be done only with discrete wavelets.

• The discrete wavelets can be made orthonormal to their own dilations and translations by special choices of the mother wavelet, which means:

Page 27: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• An arbitrary signal can be reconstructed by summing the orthogonal wavelet basis functions, weighted by the wavelet transform coefficients

• Orthogonality is not essential in the representation of signals. However, it is quite commonly used.

Page 28: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• A disadvantage of discrete wavelets: the resulting wavelet transform is no longer shift invariant, which means that the wavelet transforms of a signal and of a time-shifted version of the same signal are not simply shifted versions of each other.

• [She96] Sheng, Y. WAVELET TRANSFORM. In: The transforms and applications handbook. Ed. by A. D. Poularikas. P. 747-827. Boca Raton, Fl (USA): CRC Press, 1996. The Electrical Engineering Handbook Series.

• [Bur98] Burrus, C. S. and R. A. Gopinath , H. Guo . INTRODUCTION TO WAVELETS AND WAVELET TRANSFORMS, A PRIMER. Upper Saddle River, NJ (USA): Prentice Hall, 1998.

Page 29: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Even with discrete wavelets we still need an infinite number of scalings and translations to calculate the wavelet transform.

• The easiest way to tackle this problem is simply not to use an infinite number of discrete wavelets. (Similar to the development from DTFT to DFT)

• Of course this poses the question of the quality of the transform.

• Is it possible to reduce the number of wavelets to analyze a signal and still have a useful result?

Page 30: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• The translations of the wavelets are of course limited by the duration of the signal under investigation so that we have an upper boundary for the wavelets.

• This leaves us with the question of dilation: how many scales do we need to analyze our signal? How do we get a lower bound?

• It turns out that we can answer this question by looking at the wavelet transform in a different way.

Page 31: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Wavelet in the frequency domain

• If we look at (5) we see that the wavelet has a band-pass like spectrum.

• From Fourier theory we know that compression in time is equivalent to stretching the spectrum and shifting it upwards:

Page 32: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• This means that a time compression of the wavelet by a factor of 2 will stretch the frequency spectrum of the wavelet by a factor of 2.

• Using this insight we can cover the finite spectrum of our signal with the spectra of dilated wavelets in the same way as that we covered our signal in the time domain with translated wavelets.

Page 33: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Summarizing, if one wavelet can be seen as a band-pass filter, then a series of dilated wavelets can be seen as a band-pass filter bank.

• If we look at the ratio between the center frequency of a wavelet spectrum and the width of this spectrum we will see that it is the same for all wavelets.

• This ratio is normally referred to as the fidelity factor Q of a filter and in the case of wavelets one speaks therefore of a constant-Q filter bank.

Page 34: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Subband Coding

• We still do not know how to calculate the wavelet transform. Therefore we will continue our journey through multiresolution land.

• If we regard the wavelet transform as a filter bank, then we can consider wavelet transforming a signal as passing the signal through this filter bank.

• The outputs of the different filter stages are the wavelet and scaling function transform coefficients.

Page 35: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Analyzing a signal by passing it through a filter bank is not a new idea and has been around for many years under the name subbandcoding.

• It is used for instance in standard DSP applications.

Page 36: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• The filter bank needed in subband coding can be built in several ways. One way is to build many band-pass filters to split the spectrum into frequency bands.

• The advantage is that the width of every band can be chosen freely, in such a way that the spectrum of the signal to analyze is covered in the places where it might be interesting.

• The disadvantage is that we will have to design every filter separately and this can be a time consuming process.

Page 37: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Another way is to split the signal spectrum in two (equal) parts, a low-pass and a high-pass part. The high-pass part contains the smallest details we are interested in and we could stop here.

• We now have two bands. However, the low-pass part still contains some details and therefore we can split it again. And again, until we are satisfied with the number of bands we have created.

Page 38: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• In this way we have created an iterated filter bank.

Page 39: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Combined with down-sampling

• g(k): low pass filter

• h(k): high-pass filter

• It can be shown that, after splitting and down-sampling, the signal can still be reconstructed via inverse filtering and up-sampling.

Page 40: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Forward DWT

Page 41: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

Forward and inverse DWT

Page 42: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• Usually the number of bands is limited by for instance the amount of data or computation power available.

• The advantage of this scheme is that we have to design only two filters, the disadvantage is that the signal spectrum coverage is fixed.

• What we are left with after the repeated spectrum splitting is a series of band-pass bands with doubling bandwidth and one low-pass band.

Page 43: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

• In other words, we can also perform the same subbandanalysis by feeding the signal into a bank of band-pass filters of which each filter has a bandwidth twice as wide as his left neighbor.

• From this we can conclude that a wavelet transform is the same thing as a subband coding scheme using a constant-Q filter bank [Mal89a]. In general we will refer to this kind of analysis as a multiresolution analysis.

• Mallat, S. G. A THEORY FOR MULTIRESOLUTION SIGNAL DECOMPOSITION: THE WAVELET REPRESENTATION. IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 11, No. 7 (1989), p. 674-693.

Page 44: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 45: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 46: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 47: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard

2D DWT for Image

• Separable transform: Perform 1D DFT for columns and then columns.

Page 48: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard
Page 49: Introduction to Digital Signal Processing (Discrete-time …dsp/dsp2014/slides/Cours… ·  · 2015-01-10scheme is of course the question of ... •It is used for instance in standard