Wavelet Transform
Revised Lecture Notes
New Delhi
December 2001
Arne Jensen
Aalborg University
Reference
This is a tutorial introduction to the discrete wavelet
transform. It is based on the book
A. Jensen and A. la Cour-Harbo:
Ripples in Mathematics
The Discrete Wavelet Transform
Springer-Verlag 2001.
Book cover
A first example 1
A signal with 8 samples:
56,
40,
8,
24,
48,
48,
40,
16
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
35
16
10
12
To interpretation
An Animated Introduction to the Discrete Wavelet Transform p.4/98
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56 + 40
2
56
48
40
24
48
48
40
16
56 48
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
48
16
24
48
48
40
16
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
48
16
48
24
48
48
40
16
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
12
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
12
32
16
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
16
10
12
A first example 2
First row is the original signal. The second row in the table
is generated by taking the mean of the samples pairwise,
put them in the first four places, and then the difference
between the the first member of the pair and the computed
mean. Computations are repeated on the means.
Differences are kept in each step.
56
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
35
16
10
12
A first example 3
A first example 3
35
16
10
12
A first example 3
32
38
35
16
10
12
A first example 3
32
38
16
10
12
35
16
10
12
A first example 3
48
16
48
28
32
38
16
10
12
35
16
10
12
A first example 3
48
16
48
28
12
32
38
16
10
12
35
16
10
12
A first example 3
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
35
35
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
35
35
16
10
12
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
51
19
45
25
35
35
16
10
12
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
51
19
45
25
12
35
35
16
10
12
35
16
10
12
A first example 4
We replace samples in the transformed signal below 4 by
zero (thresholding) and then repeat the reconstruction
procedure:
59
43
11
27
45
45
37
13
51
19
45
25
12
35
35
16
10
12
35
16
10
12
A first example 5
We now replace samples in the transformed signal below 9
by zero (thresholding) and then repeat the reconstruction
procedure. The final result is:
51
51
19
19
45
45
37
13
51
19
45
25
12
35
35
16
10
12
35
16
10
12
A first example 6
60
50
50
40
40
30
30
20
20
10
10
Lifting 1
Lifting 2
a, b a, 12 (a + b)
a, s a s, s.
d, s d + s, s
a, s a, 2s a.
Lifting 3
+
P
split
oddj1
sj1
dj1
P : Predict
U : Update
An Animated Introduction to the Discrete Wavelet Transform p.12/98
Lifting 4
a+b
=
=a+
2
2
Lifting 5
Lifting 6
split
+
P
sj1
split
U
oddj2
oddj1
+
P
sj2
dj2
dj1
An Animated Introduction to the Discrete Wavelet Transform p.15/98
Lifting 7
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
s1 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
s2 [2]
s1 [1]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
s1 [0]
s0 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
d0 [0]
d0 [0]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
Lifting 8
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
d2 [0]
s3 [2]
d2 [1]
s3 [4]
d2 [2]
s3 [6]
d2 [3] P
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
d2 [0]
d1 [0]
d2 [1]
s2 [2]
d2 [2]
d1 [1]
d2 [3] P
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
s1 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
s2 [2]
s1 [1]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
s1 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
s2 [2]
s1 [1]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
s1 [0]
d2 [0]
d1 [0]
d2 [1]
d0 [0]
d2 [2]
d1 [1]
d2 [3] P
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
s1 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
s2 [2]
s1 [1]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
s1 [0]
s0 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
d0 [0]
d0 [0]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
Lifting 8
s3 [1]
s3 [2]
s3 [3]
s3 [4]
s3 [5]
s3 [6]
s3 [7]
s3 [0]
s2 [0]
d2 [0]
d2 [0]
s3 [2]
s2 [1]
d2 [1]
d2 [1]
s3 [4]
s2 [2]
d2 [2]
d2 [2]
s3 [6]
s2 [3]
d2 [3] P
d2 [3] U
s2 [0]
s1 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
s2 [2]
s1 [1]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
s1 [0]
s0 [0]
d2 [0]
d2 [0]
d1 [0]
d1 [0]
d2 [1]
d2 [1]
d0 [0]
d0 [0]
d2 [2]
d2 [2]
d1 [1]
d1 [1]
d2 [3] P
d2 [3] U
Lifting 9
sj [2n + 2]
dj1 [n]
sj [2n]
Lifting 10
Inverse transform:
sj [2n] = sj1 [n] 14 (dj1 [n 1] + dj1 [n]),
Lifting 11
split
oddj1
+
P
sj1
dj1
evenj1
P
+
merge
sj
oddj1
Generalized lifting 1
split
oddj1
+
P1
U1
+
P2
U2
+
P3
sj1
U3
dj1
Generalized lifting 2
An example, Daubechies 4
(1)
sj1 [n] = sj [2n] + 3sj [2n + 1]
(1)
(1)
(1)
1
1
dj1 [n] = sj [2n + 1] 4 3sj1 [n] 4 ( 3 2)sj1 [n 1]
(2)
(1)
(1)
3 1 (2)
sj1 [n] = sj1 [n]
2
3 + 1 (1)
dj1 [n] = dj1 [n]
2
Generalized lifting 3
31
3+1
=1.
2
2
DWT 1
Finally we can introduce the Discrete Wavelet Transform
(DWT). Block diagrams are used for our lifting and inverse
lifting based one step transforms:
Ta
Ts
DWT 2
A DWT over four scales
DWT 2
A DWT over four scales
sj4
Ta
Ta
Ta
Ta
dj1
dj2
dj3
dj4
DWT 2
A DWT over four scales
sj4
Ta
Ta
Ta
Ta
dj1
dj2
dj3
dj4
DWT 2
A DWT over four scales
sj4
Ta
Ta
Ta
Ta
dj3
dj2
dj1
dj4
Ts
dj3
Ts
dj2
Ts
dj1
An Animated Introduction to the Discrete Wavelet Transform p.25/98
DWT 3
A family of transforms (Cohen, Daubechies, Faveau)
(1)
CDF(2,2)
CDF(2,4)
(1)
1
64 (3dj1 [n
2] 19dj1 [n 1]
(1)
1
512 (5dj1 [n
3] + 39dj1 [n 2]
(1)
1 d
[n]
2 j1
(1)
sj1 [n] = 2sj1 [n]
Examples 1
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
1
0
50
50
Examples 2
50
100
150
200
250
0.05
0
0.05
0.2
20
40
60
80
100
120
10
20
30
40
50
60
10
20
30
40
50
60
0
0.2
4
2
0
2
4
Examples 3
W a : s9
s 6 , d6 , d7 , d8
|
{z
}
z
}|
{
(3)
Ws : 06 , d6 , 07 , 08
s09
Examples 4
06 , 0 6 , 0 7 , d8
0
0.02
0.05
06 , 0 6 , d7 , 0 8
0
0.05
0.05
06 , d6 , 0 7 , 0 8
0
0.05
1
s6 , 0 6 , 0 7 , 0 8
0
1
0
50
Examples 5
0.8
2
1
0.6
0.4
0.2
1
0.5
0
0.2
0.4
0.8
0.5
1
0.6
1
0
50
50
Examples 6
We do some denoising examples. First based on the Haar
transform. Here is the sine plus spike, and its
multiresolution representation:
2
2
0
1.5
2
1
0
0.5
1
0.5
0
0.5
0.5
2
0
1.5
2
0
50
100
150
200
250
300
350
400
450
500
50
Examples 7
1.5
1.5
0.5
0.5
0.5
0.5
1.5
1.5
0
50
50
Examples 8
2.5
1.5
1.5
0.5
0.5
0.5
0.5
1.5
1.5
0
50
50
Examples 9
2.5
1.5
1.5
0.5
0.5
0.5
0.5
1.5
1.5
0
50
50
Examples 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Examples 11
100 200 300 400 500 600 700 800 900 1000
Examples 12
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 1
Interpretation 2
Interpretation 3
Linear algebra interpretation as a matrix:
Ws(3)
1
=
1
1
1
1
1 1
0 1
0
.
0 1
1 1
0 1
0 1
Interpretation 4
1
2
1
2
1
4
1
4
1
2
1
8
1
8
1
4
1
2
Interpretation 5
Wa(3)
1
8
1
8
1
4
=
1
2
1
8
1
8
1
4
1
8
1
8
14
1
8
1
8
14
1
8
18
1
8
18
1
8
81
1
4
1
4
41
12
0
1
2
12
1
2
12
1
2
1
8
81
1
4
.
0
21
Interpretation 6
(3)
1
0 0.25 0.5 0.75 1
Interpretation 7
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
4
3
2
1
0
1
2
3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
4
3
2
1
0
1
2
3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
4
3
2
1
0
1
2
3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
4
3
2
1
0
1
2
3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 8
Iterations, signal lengths 8, 32, 128, 512, 2048.
4
3
2
1
0
1
2
3
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 9
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
Interpretation 10
0.1
0.1
0.05
0.05
0.05
0.05
0.1
0.35
0.4
0.45
0.5
0.55
0.6
0.65
0.1
0.35
0.4
0.45
0.5
0.55
0.6
0.65
A generalization 1
Ta
Ts
A generalization 2
Ta
Ta
Ta
Ta
Ta
Ta
Ta
Ta
Ta
Ta
(a)
(b)
An Animated Introduction to the Discrete Wavelet Transform p.50/98
A generalization 3
A generalization 3
Recall example
56
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
12
35
16
10
12
A generalization 3
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
35
13
A generalization 3
56
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
35
13
80
A generalization 4
Decomposition
56 40
Reconstruction
3 3
24 48 48 40 16
48 16 48 28
8 8 0 12
32 38 16 10
35 3 13
3 3 1
8 6
7
48 16 48 28
56 40
8 6
8 8 0 12
24 48 48 40 16
A generalization 5
56 40 8 24 48 48 40 16
48 16 48 28 8 8 0 12
32 38 16 10 8 8 0 12
35 3 16 10 8 8 0 12
35 3 16 10 0 6 1 7
35 3 13 3 3 3 1 7
WPT complexity 1
Number of bases
26
16
677
32
458330
64
210066388901
128
44127887745906175987802
WPT complexity 2
Aj
Aj
Aj+1
2j
the estimate 2
< Aj < 2 . Example j = 10: 2
210
and 2 10308 .
29
10154
Cost functions
Threshold Kthres (a) equals number of elements in a with
absolute value greater than the threshold . Example:
= 2.0 :
= 1.0 :
= 0.5 :
Cost functions
`p -norm
Notation: a = {a[n]}, 0 < p < (useful values are
0 < p < 2)
X
K`p (a) =
|a[n]|p .
n
X
n
|a[n]|2 log(|a[n]|2 )
An Animated Introduction to the Discrete Wavelet Transform p.58/98
40
24
48
48
40
16
48
16
48
28
12
32
38
16
10
35
13
8
4
2
1
3
2
1 1
1
1
2
1 0
8
4
2
1
3
2
1 1
1
1
2
1 0
8
4
2=1+1
2
1
3
2
1 1
1
1
2
1 0
8
4
2
1
3
2
1 1
1
1
2
1 0
8
4
2=1+1
2
1
3
2
1 1
1
1
2
1 0
8
4
2
1
3
2
1 1
1
1
2
1 0
8
4
1<1+1
2
1
3
2
1 1
1
1
2
1 0
8
4
2
1
3
2
1 1
1
1
2
1 0
8
4
2>0+1
2
1
3
2
1 1
1
1
2
1 0
8
4
2
1
3
2
1 1
1
1
1
1 0
8
4
4=2+2
2
1
3
2
1 1
1
1
1
1 0
8
4
2
1
3
2
1 1
1
1
1
1 0
8
4
3>1+1
2
1
3
2
1 1
1
1
1
1 0
8
4
2
1
2
2
1 1
1
1
1
1 0
8>4+2
4
2
1
2
2
1 1
1
1
1
1 0
6
4
2
1
2
2
1 1
1
1
1
1 0
1):
X
x[n]ejn ,
X() =
Frequency contents (j =
3
T
2
T
2
T
3
T
0
0T
1T
2T
3T
4T
2T
|x[0]|2
|x[2]|2
0
0T
1T
2T
3T
4T
Original signal
DWT
DWT low pass
Product of FT
and filters
IFT and 2
DWT high pass
|d2 [0]|2
|d2 [1]|2
|d2 [2]|2
|d2 [3]|2
|s2 [0]|2
|s2 [1]|2
|s2 [2]|2
|s2 [3]|2
0
0
|d2 [0]|2
|d2 [1]|2
|d2 [2]|2
|d2 [3]|2
0
0
|d1 [0]|2
|d1 [1]|2
|s1 [0]|2
|s1 [1]|2
|d2 [0]|2
|d2 [1]|2
|d2 [2]|2
|d2 [3]|2
|d1 [0]|2
0
0
|d0 [0]|2
|s0 [0]|2
4
|d1 [1]|2
56
40
24
48
48
40
16
(2)
48
16
48
28
12
(3)
32
38
16
10
12
(4)
35
3 16
10
12
(1)
56
8
40
(3)
48
24
12
48
16
48
28
12
(2)
40
48
16
12
16
10
32
38
16
(4)
10
3
35
16
32
16
0 (0)
0 (0)
2 (2)
2 (2)
4 (4)
8 Hz
4 (4)
0 (0)
2 (2)
4 (4)
2 (2)
8 Hz
0 (0)
0 (8)
0 (8)
2 (6)
4 (4)
2 (6)
4 (4)
0 (4)
2 (2)
0 (8)
8 Hz
2 (6)
4 (4)
0 (8)
2 (6)
0 (4)
2 (6)
0 64
0 Hz
64 Hz
H
0 32
0 32
32 64
0 Hz
32 0
32 Hz 64 Hz
H
32 Hz
H
0 16
16 32
32 16
16 0
0 16
16 0
0 16
16 0
0 Hz
16 Hz 32 Hz
16 Hz 48 Hz
G
64 Hz 48 Hz
G
32 Hz
G
08
8 16
16 8
80
08
8 16
16 8
80
08
80
08
80
08
80
08
80
8 16
0
000
1
001
8 24 32 24 16 48 56 64 56 40 48 40 32
3
011
2
010
6
110
7
111
5
101
4
100
0 32
64 32
0 16
H
32 16
G
32 48
64 48
G
08
16 8
16 24
24 32
32 40
48 40
56 48
56 64
Frequency
Frequency
Time
Time
An Animated Introduction to the Discrete Wavelet Transform p.76/98
Frequency
Frequency
Time
Time
and
25
1
x[n] =
15
if n = 300 ,
if 500 n 700 ,
if n = 900 ,
otherwise .
0.2
0.4
0.6
0.8
1.2
1.4
1.6
1.8
Frequency
Frequency
Time
Time
An Animated Introduction to the Discrete Wavelet Transform p.80/98
Time
Continuous
Discrete
Continuous
Discrete
Frequency
Continuous
Continuous
Discrete
Discrete
CTCFFT
1
x(t) =
2
1
2
|x(t)| dt ==
2
x(t)ejt d
|x()|2 d
x(t) real-valued:
x() = x()
x[n] X()
X() =
x[n]ejn
nZ
1
x[n] =
2
1
2
|x[n]| =
2
nZ
X()ein d
0
2
0
|X()|2 d
x[n] real-valued:
X() = X()
CTDFFT
ek [n] = ej2nk/N ,
x[k] =
N
1
X
x[n]e
j2nk/N
n=0
k, n = 0, . . . , N 1
1
x[n] =
N
N
1
X
x[k]ej2nk/N
k=0
N
1
X
N
1
X
1
|x[n]|2 =
|
x[k]|2
N k=0
n=0
N
1
X
n=0
x[n]ej2nk/N =
N
1
X
n=0
Sampling 1
Sampling 2
125
250
375
500
625
750
875
1000
n = 1, . . . , N
An Animated Introduction to the Discrete Wavelet Transform p.88/98
0.5
0.5
10
15
0.5
0.5
10
15
10
15
10
15
An example
Frequency
Frequency
Time
Time
Comparative example 1
Comparative example 2
Frequency
Comparative example 3
Frequency
Comparative example 4
Frequency
Comparative example 5
Frequency
Time
Final remarks
I have introduced you to the discrete wavelet transform and
its generalization, the wavelet packet transform. I have also
reviewed some results from Fourier analysis, and shown
you a comparative study on two signals.
If you want to learn more, start by reading the book
mentioned in the introduction, and then start experimenting
with the transforms, both on synthetic signals, and on real
world signals.
Technical afterword
One question often asked, after someone has seen this
presentation, is how it is produced.
It is produced using LATEX with the document class
prosper. It can be found at
http://prosper.sourceforge.net
It is of course in the public domain.