Concise Introduction To Wavelets
Concise Introduction To Wavelets
Contents
Preface i
1 Introduction 1
1.1 The space Lp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Fourier transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Frames and bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 The continuous wavelet transform . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Discretization of the wavelet transform . . . . . . . . . . . . . . . . . . . . . 7
2 Multiresolution analysis 10
2.1 The definition, scaling functions . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Wavelet functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Vanishing moments and the order of multiresolution analysis . . . . . . . . 12
2.4 Special instances of multiresolution . . . . . . . . . . . . . . . . . . . . . . . 13
Preface
This text is based on my research in which I was interested during my former master
studies. It may be a valuable resource for any MSc students interested in the theory of
wavelets.
Whole text is presented as a compilation, it contains research and ideas of respected
mathematicians and authors. Bibliography is provided at the end of this document.
I have deliberately not included the material about application of wavelets from my
thesis as well as my original programs in order to keep the text cohesive and focused only
on theory.
Chapter 0. Preface ii
Chapter 1. Introduction 1
Chapter 1
Introduction
In this chapter we introduce the basic mathematical tools which are exploited throughout
the text. For a more complete treatise we refer to [3, 7, 10, 11, 12, 17, 18, 23].
where the integration is with respect to the whole real line. For each p, Lp is a Banach
space with the corresponding norm
Z 1
p
kf kp = |f (x)| dx
p
.
Of particular importance are L1 , the space of absolutely integrable functions, and L2 , the
space of functions of finite energy. The space L2 is a Hilbert space with the inner product
Z
hf, gi = f (x)g(x) dx,
where g(x) denotes the complex conjugate of g(x). We will also work with a more general
space, L2 = (X , S, µ), where X ⊂ Rn , S is a σ-algebra and µ a corresponding measure.
The inner product is then defined as
Z
hf, gi = f g dµ.
X
kckp = |cj | p
j∈J
G(ξ) = F (ξ)H(ξ),
process, it can be extended to functions of finite energy, assuming the transform and the
Plancherel formula for more specific family of functions (which are also dense in L2 ) is
provided.
To illustrate this process, take f ∈ L2 . Since the space of smooth functions with
compact support (denoted by C0∞ ) is dense in L2 , there exists a Cauchy sequence fn of
functions in C0∞ so that limn→+∞ kf − fn k = 0. The Fourier transform is well defined for
all fn ∈ C0∞ , is in L2 and will be denoted by Fn . By the Plancherel formula (which works
also for functions of C0∞ ), Fn is also a Cauchy sequence. Since Fn ∈ L2 and L2 is a Hilbert
space, Fn has a (strong) L2 -limit
F = lim Fn ,
n→+∞
which is in L2 and will be called the Fourier transform of f . Such defined extension of
the Fourier transform enjoys all the properties of the transform for C0∞ functions [10]. For
convenience, we will use the same notation as in case of absolutely integrable functions.
The Discrete Time Fourier Transform of (xn )n∈Z ∈ ℓ1 is defined by
X
X(ξ) = xn e−iξn . (1.5)
n∈Z
under the assumption X(ξ) ∈ L1 . Using similar arguments as above, the transform can be
extended to ℓ2 .
With this normalization, the analogue of the Parseval and Plancherel formulas take the
form Z 2π X
X(ξ)Y (ξ) dξ = 2π xn y n , (1.7)
0 n∈Z
and Z 2π X
|X(ξ)|2 dξ = 2π |xn |2 , (1.8)
0 n∈Z
respectively.
which applies if the system (ej )j∈J constitutes an orthonormal basis of L2 . An orthonormal
basis is in fact a special case of a frame, as pointed out later.
Chapter 1. Introduction 4
An interested reader can find an in-depth discussion of frames, also in connection with
wavelets, in [3, 7, 12].
A system (ej )j∈J of functions in L2 is called a frame if for some α, β > 0 and for all
f ∈ L2 , X
αkf k2 ≤ |hf, ej i|2 ≤ βkf k2 . (1.10)
j∈J
A frame is said to be exact if, after removing any element from it, the inequality (1.10)
no longer applies.
In case α = β, the frame is called a tight frame and the definition reads
1X
kf k2 = |hf, ej i|2 , (1.11)
α
j∈J
where g is any function in L2 . Since the inner product is linear in the first argument, it is
indeed possible to write * +
1X
hf, gi = hf, ej i ej , g .
α
j∈J
In fact, one must always be able to recognize that such a representation is merely formal
and that only after taking the inner product with any g ∈ L2 it leads to the right formula.
It is usual to say that such a formula holds “in the weak sense” [7]. We will use this
notation whenever possible.
If (ej )j∈J is a tight frame with α = β = 1 and is such that kej k = 1 for all j ∈ J , then
the equation (1.11) is precisely the Parseval identity and since
X X
kek k2 = |hek , ej i|2 = kek k4 + |hek , ej i|2 ,
j∈J j∈J ,j̸=k
(T f )j = hf, ej i , ∀j ∈ J . (1.13)
We will call S a frame operator. It can be verified that S is bounded, self-adjoint and
invertible.
The frame condition (1.10) now can be stated in an operator form (I denotes the
identity operator) as
αI ≤ S ≤ βI,
which implies that S is bounded below by α > 0 and therefore is invertible and S −1 is
bounded above by α1 , see [7].
If we now define ẽj = S −1 ej , then it can be checked that the system (ẽj )j∈J is a frame
as well [7], satisfying
1 X 1
kf k2 ≤ |hf, ẽj i|2 ≤ kf k2 ,
β α
j∈J
or,
T̃ = T S −1 ,
which implies
T̃ ∗ T = (T S −1 )∗ T = S −1 T ∗ T = S −1 S = I
and
T ∗ T̃ = T ∗ T S −1 = SS −1 = I.
Inserting (1.13) and (1.14) in the last two equalities results in
X X
f= hf, ej i ẽj = hf, ẽj i ej , (1.15)
j∈J j∈J
The reconstruction formula (1.15) also implies that any frame (ej )j∈J , ej ∈ L2 generates
the space L2 , i.e. the closure of the linear span of (ej )j∈J equals L2 . This means that,
given a frame (ej )j∈J , ej ∈ L2 , one can express any f ∈ L2 as
X
f= cj ej
j∈J
If we also premise that this representation is unique, the frame becomes a basis with the
additional condition (1.10). Such obtained basis is called a Riesz basis. An interesting
fact is that every Riesz basis is an exact frame (defined above) and conversely, every exact
frame is a Riesz basis. One can find the proof in [23].
Assuming that the representation (1.15) is unique (i.e., the frame (ej )j∈J is a Riesz
basis) and substituting f := ek , we deduce an interesting biorthogonal relation
where ẽj = S −1 ej and S is the frame operator defined above. The systems (ej )j∈J and
(ẽj )j∈J are therefore said to be mutually biorthogonal systems. According to [23], a
system (ej )j∈J in a separable Hilbert space is a Riesz basis if and only if it possesses a
biorthogonal system (ẽj )j∈J which is likewise a Riesz basis.
which means that in all practical situations the function ψ must oscillate at least a little.
This is the motivation behind the term “wavelet”.
As we already indicated, the continuous wavelet transform is defined as
where
1 x−b
ψa,b (x) = ψ , ∀a ∈ R \ {0}, b ∈ R
|a|1/2 a
is a family of functions obtained from ψ by translations and dilations. The reason for this
particular normalization is the fact that the norm of all ψa,b for all values of a and b is
preserved. One can also write
Z
1 x−b
CW Tψ (f, a, b) = f (x)ψ dx, (1.18)
|a|1/2 a
where the complex conjugation can be omitted if the analyzing wavelet is real. The operator
CW Tψ (·, a, b) is, of course, linear with respect to the first variable.
To compute the inverse transform one can use the following observation [7]:
Z +∞Z +∞
1
√ CW Tψ (f, a, b)CW Tψ (g, a, b) da db = 2πCψ hf, gi , (1.19)
−∞ −∞ a
which can be derived by substituting (1.18) to the left side of (1.19) and using the isometry
of the Fourier transform and the admissibility condition (1.16).
From (1.19) it already follows the inverse wavelet transform, holding in the weak
sense: Z +∞Z +∞
1 1
f= √ CW Tψ (f, a, b)ψa,b da db. (1.20)
2πCψ −∞ −∞ a
The continuous wavelet transform is usually depicted in so-called scalogram, where the
x-axis represents the time dilation parameter b and the y-axis the scale parameter a. One
example of such scalogram is given in Figure 1.1.
0.5
−0.5
−1
0 100 200 300 400 500
time
58
55
52
49
46
43
40
37
scale
34
31
28
25
22
19
16
13
10
7
4
1
50 100 150 200 250 300 350 400 450 500
time
P
the property j,k |hg, ψj,k i|2 ≤ ε is clearly satisfied and therefore
εkf k2
P = kgk2 ≤ δ,
j,k |hf, ψ j,k i|2
Chapter 1. Introduction 9
is automatically satisfied (see below) and hence for a stable function reconstruction the
discretized wavelet family {ψj,k } needs to constitute a frame. The following proposition is
borrowed from the Daubechies book, giving also estimates on the frame bounds α, β. The
proof is challenging and is not reproduced here.
Proposition 1.1 (Daubechies, [7]). If ψ and a0 are such that
X
inf |Ψ(am 2
0 ξ)| > 0,
|ξ|∈[1,a0 ]
m∈Z
X
sup |Ψ(am 2
0 ξ)| < +∞, (1.22)
|ξ|∈[1,a0 ] m∈Z
P −(1+ε) ,
and if θ(s) = supξ∈R m∈Z |Ψ(am 0 ξ)||Ψ(a0 ξ + s)| decays at least as fast as (1 + |s|)
m
with ε > 0, then there exists bthr0 > 0 such that the the ψj,k constitute a frame for all choices
b0 < bthr
0 . For b0 < b thr , the following expressions are frame bounds for the ψ :
0 j,k
2π X X 2π 2π 2
1
β= sup |Ψ(am 2
0 ξ)| + θ k θ − k .
b0 |ξ|∈[1,a0 ] b0 b0
m∈Z k∈Z,k̸=0
The conditions on θ and (1.22) are satisfied if, e.g., |Ψ(ξ)| ≤ C|ξ|µ (1 + |ξ|)−ν with µ >
0, µ > ν + 1.
We have seen that the wavelet transforms discussed so far lead to efficient function
representations. Still, there is no indication of the actual construction of any wavelets such
that the family ψj,k constitutes a frame. In some applications, one may also impose addi-
tional requirements on ψ such as smoothness, compact support, or it may even be desired
for the ψj,k to constitute an orthonormal basis. The aim of the subsequent chapters is to
present a concise exposition of several methods dealing with construction of wavelets with
desired properties. The underlying structure for these methods is so called multiresolution
analysis to which the first chapter is devoted.
Chapter 2. Multiresolution analysis 10
Chapter 2
Multiresolution analysis
functions and the sequence Ṽj is naturally defined as a dual multiresolution analysis.
Moreover, there is a biorthogonal relation between φj,k and φ̃j,k :
It follows from the fact that φj,k ∈ Vj ⊂ Vj+1 and {φj+1,l | l ∈ Kj+1 } is a Riesz basis of
Vj+1 .
lim kf − Pj f k = 0,
j→+∞
P
where Pj = k∈Kj h·, φ̃j,k i φj,k denotes the projection from L2 onto Vj and the norm is
induced by the metric defined on X .
To capture the missing details owing to these approximations, Sweldens defined the
space Wj as a complement of Vj in Vj+1 , intended as Vj+1 = Vj ⊕ Wj , where the sum is
direct. This is a slight extension of the original Mallat definition, which we will see later.
If for all j ∈ J , Wj has a Riesz basis denoted by {ψj,m | m ∈ Mj }, where Mj = Kj+1 \ Kj
and Ṽj ⊥ Wj , we call {ψj,m | m ∈ Mj } a family of wavelet functions, or just wavelets.
From this definition one may deduce several facts. First off, for each j ∈ J there exists
a dual set of wavelet functions, call them {ψ̃j,m | m ∈ Mj }. Let W̃j denotes the space they
generate. Analogously to the case of scaling functions there is a relation between primal
and dual wavelet functions
D E
ψj,m1 , ψ̃j,m2 = δm1 ,m2 , ∀m1 , m2 ∈ Mj .
M
+∞
L2 = Vj0 ⊕ Wl . (2.2)
l=j0
Chapter 2. Multiresolution analysis 12
M
j
Vj+1 = Wl ,
l=−∞
M
+∞
L2 = Wl .
l=−∞
It can be suspected that in case of wavelets there should be likewise some relation
between scales. Naturally, since ψj,m ∈ Wj ⊂ Vj+1 , it follows that
X
ψj,m = gj,m,l φj+1,l . (2.3)
l∈Kj+1
(r)
where cj,k 6= 0 are arbitrarily chosen. But we also have
D E
P r , ψ̃j,m = 0, ∀r ∈ N0 , r < N.
at least in the weak sense. Hence the scaling functions reproduce up to N linearly inde-
pendent, C ∞ functions.
2)
In the sense that “the restrictions of a finite number of these functions to any ε-ball are linearly
independent.” [21]
Chapter 2. Multiresolution analysis 13
but since W̃j ⊥ Vj , the right side of the equation evaluates to zero.
All in all, if ψ̃j,m have N vanishing moments or if φj,k reproduce N linearly independent,
∞
C functions, we say that the order of the multiresolution analysis is N .
The same applies to the dual multiresolution analysis. The (primal) wavelets ψj,m are
said to have Ñ vanishing moments if
Z
Pr ψj,m dµ = 0, ∀r ∈ N0 , r < Ñ ,
X
In this case we say that the order of the dual multiresolution analysis is Ñ .
where F and F −1 denote the forward and inverse Fourier transform operators, respectively.
We will tackle the proof in the next chapter which is devoted specially to this kind of
multiresolution. Note that, since any function f ∈ Vj can now be expressed as
X
f= hf, φj,k i φj,k ,
k∈Z
It is of no surprise that the two-scale relation takes somewhat more specific form. Since
φ ∈ V0 ⊂ V1 and due to (2.4), it is possible to write
X√
φ= 2hk φ(2 · −k), hk ∈ ℓ2 (2.6)
k∈Z
where cj,k = hf, φj,k i and c′j,k = 2− 2 hf, φj,k i. Hence f (2 ·) ∈ Vj+1 . Equally obvious is the
1
or,
1 X ξ ξ 1 X ξ ξ
Φ(ξ) = √ hk e−i 2 k Φ , Φ̃(ξ) = √ h̃k e−i 2 k Φ̃ .
2 k∈Z 2 2 k∈Z 2
The property of scale and the notion of vanishing moments remain the same.
We will study biorthogonal wavelets in more depth in Chapter 4.
Chapter 2. Multiresolution analysis 16
Chapter 3
Construction of orthogonal
wavelets
1. Vj ⊂ Vj+1 , ∀j ∈ Z
S
2. j∈J Vj = L2 ,
T
3. j∈J Vj = {0},
We have seen that this definition necessarily implies the property of scale, that is
f ∈ Vj ⇔ f (2 ·) ∈ Vj+1 . In many situations, however, it will prove useful to involve
merely the family φ0,k = φ(· − k) as a Riesz basis of V0 under the hypothesis of the
property of scale. More precisely, if φ0,k = φ(· − k) is a Riesz basis of V0 , and if f ∈ Vj is
equivalent to f (2 ·) ∈ Vj+1 , then φj,k = 2j/2 φ(2j · −k) is a Riesz basis of Vj . The reader
can convince himself of this fact simply by using the definition of a Riesz basis.
In the following few sections we discuss further properties of a scaling function, followed
by arguments leading to a simple evaluation of the corresponding wavelet. After discussing
a criterion for good approximation properties of the desired wavelet we turn our attention
to an actual possibility of wavelet construction. This, as we will see, reduces to finding
an appropriate scaling function. We conclude by deriving a fast algorithm of the Discrete
Wavelet Transform, which fits neatly into the concept of multiresolution.
Chapter 3. Construction of orthogonal wavelets 18
Z XZ 2(k+1)π
= |F (ξ)| e 2 iξl
dξ = |F (ξ)|2 eiξl dξ
k∈Z 2kπ
Z 2π X Z 2π X
= |F (ξ + 2kπ)| e e 2 iξl 2πikl
dξ = eiξl |F (ξ + 2kπ)|2 dξ.
0 k∈Z 0 k∈Z
F (ξ) = Λ(ξ)Φ(ξ),
XZ 2(k+1)π Z 2π X
= |Λ(ξ)| |Φ(ξ)| dξ =
2 2
|Λ(ξ + 2kπ)|2 |Φ(ξ + 2kπ)|2 dξ
k∈Z 2kπ 0 k∈Z
Z 2π X
= |Λ(ξ)|2 |Φ(ξ + 2kπ)|2 dξ. (3.2)
0 k∈Z
Chapter 3. Construction of orthogonal wavelets 19
that is to say,
Z 2π
−1
B kf k ≤
2
|Λ(ξ)|2 dξ ≤ A−1 kf k2 . (3.3)
0
From the discrete version of the Parseval formula it follows that
X
(2πB)−1 kf k2 ≤ |λn |2 ≤ (2πA)−1 kf k2 .
n
P
It suffices to show linear independence. If f = n λn φ(· − n) = 0 then by (3.3), Λ(ξ) is
zero almost everywhere and hence λn = 0, ∀n ∈ Z. The set S is therefore a Riesz basis of
V0 .
We show the converse implication by contradiction. Let S be a Riesz basis of V0 ,
implying X
∀f ∈ V0 , f (x) = λn φ(x − n),
n
with the Riesz basis property (3.3). For any such f , (3.2) is also satisfied. If for either
A > 0 or B > 0 the condition (3.1) was not true, then in case of the lower bound A, it
is possible to construct a non-zero 2π periodic function Λ(ξ) defined for such ξ˜ for which
P ˜
n |Φ(ξ + 2kπ)| < A. But due to (3.2) we deduce a contradiction with the Riesz basis
2
property (3.3).
1 Φ(ξ)
Φ# (ξ) = √ P , a.e.
2π |Φ(ξ + 2kπ)| 2 1/2
k∈Z
By lemma 3.2, the denominator is assured to be strictly positive almost everywhere and
thus Φ# (ξ) is well defined almost everywhere. Since
1 Φ(ξ)
Φ# (ξ) = √ P = Λ(ξ)Φ(ξ),
2 1/2
k∈Z |Φ(ξ + 2kπ)|
2π
X 1 ζ 2
2
H + kπ Φ ζ + kπ = 1 , a.e.,
2 2 2 2π
k∈Z
1 X1
= |H(ξ + kπ)|2 |Φ(ξ + kπ)|2
2π 2
k∈Z
1 X
= |H(ξ + 2kπ)|2 |Φ(ξ + 2kπ)|2 + |H(ξ + 2kπ + π)|2 |Φ(ξ + 2kπ + π)|2
2
k∈Z
" #
1 X X
= |H(ξ)|2
|Φ(ξ + 2kπ)| + |H(ξ + π)|
2 2
|Φ(ξ + 2kπ + π)|2
2
k∈Z k∈Z
1
= (|H(ξ)2 + |H(ξ + π)|2 ).
4π
We have taken advantage of splitting the sum in even an odd indexes (since the terms in
the sum are absolutely integrable).
The lemma below states that a reasonable scaling function φ satisfies |Φ(0)| = √1 ,
2π
which will prove to be useful in later development.
we may define
Vj = clos span{φj,k = 2j/2 φ(2j x − k) | k ∈ Z}. (3.7)
The property Vj ⊂ Vj+1 is a result of (3.5), and together with (3.6) it follows that φj,k
S
is
T a Riesz basis of Vj . It comes to question whether the conditions j∈J Vj = L2 and
j∈J Vj = {0} are satisfied. This is addressed by the following proposition. The proof in
[13] is elegant, albeit somewhat technical, so we decided to left it out.
Chapter 3. Construction of orthogonal wavelets 22
PropositionT3.5. If φ is such that (3.5) and (3.6) hold, then the {Vj | j ∈ Z} defined by
(3.7) satisfy j∈J Vj = {0}. Furthermore, if |Φ(ξ)| is continuous at 0 and if Φ(0) 6= 0,
S
then j∈J Vj = L2 .
Z 2π X
= eiξk F (ξ + 2πl)Φ(ξ + 2πl) dξ.
0 l∈Z
That is to say, X
F (ξ + 2πl)Φ(ξ + 2πl) = 0, a.e.
l∈Z
Substituting
1 ξ ξ
F (ξ + 2πl) = √ Λ + πl Φ + πl
2 2 2
and
1 ξ ξ
Φ(ξ + 2πl) = √ H + πl Φ + πl
2 2 2
yields
X 2
ξ ξ ξ
Λ + πl H
+ πl Φ + πl = 0, a.e.,
2 2 2
l∈Z
ξ
which can be rewritten, putting ξ := 2 and splitting the sum in even and odd indices, as
X X
Λ(ξ)H(ξ) |Φ(ξ + 2πl)|2 + Λ(ξ + π)H(ξ + π) |Φ(ξ + 2πl + π)|2
l∈Z l∈Z
Chapter 3. Construction of orthogonal wavelets 23
1
= Λ(ξ)H(ξ) + Λ(ξ + π)H(ξ + π) = 0, a.e., (3.8)
2π
where we utilized the orthonormality of φ(· − k).
From the last equation we can determine Λ(ξ) more closely. For ξ such that H(ξ) = 0
we have Λ(ξ + π)H(ξ + π) = 0, but due to orthonormality of φ(· − k), we also have
|H(ξ)|2 + |H(ξ + π)|2 = |H(ξ + π)|2 = 2, implying Λ(ξ + π) = 0, so the equation (3.8)
applies if H(ξ) = 0. For ξ such that H(ξ) 6= 0 we can write
Λ(ξ + π)H(ξ + π)
Λ(ξ) = − = θ(ξ)H(ξ + π), a.e.
H(ξ)
where θ(ξ) ∈ L2 is 2π-periodic and satisfies θ(ξ) = −θ(ξ + π), a.e. If we now define
ξ
ν(ξ) = ei 2 θ 2ξ then ν(ξ) ∈ L2 is 2π-periodic and it follows that θ(ξ) = e−iξ ν(2ξ).
Together, Λ(ξ) = e−iξ H(ξ + π)ν(2ξ).
Combining various pieces together, we finally obtain
1 −i ξ ξ ξ
F (ξ) = √ e H 2 +π Φ ν(ξ),
2 2 2
thus ( )
1 ξ ξ
f ∈ L2 (Ff )(ξ) = √ e−i 2 H
ξ
W0 = +π Φ ν(ξ) ,
2 2 2
where ν ∈ L2 is 2π-periodic.
We would like to characterize a ψ ∈ W0 so that ψ(· − m) constitute an orthonormal
basis of W0 . Our assertion is that such ψ is given in terms of its Fourier transform by
1 −i ξ ξ ξ
Ψ(ξ) = √ e 2 H +π Φ µ(ξ), (3.9)
2 2 2
where µ is 2π-periodic and |µ(ξ)| = 1, for almost all ξ. Specially, taking µ(ξ) ≡ 1, the
formula can be rewritten as
X
ψ= (−1)n h1−n φ(2 · −n). (3.10)
n∈Z
We first prove that such a ψ leads to an orthonormal basis of W0 , in the sense that
ψ(· − m) are orthonormal and generate W0 .
Orthonormality follows from
2 2
X 1 X ξ ξ
|Ψ(ξ + 2kπ)| =
2
H
+ kπ + π Φ + kπ
2 2 2
k∈Z k∈Z
2 X 2 2 X 2 !
1 ξ ξ ξ ξ
= H + π Φ + 2kπ + H Φ + 2kπ + π
2 2 2 2 2
k∈Z k∈Z
1 1 1
= · ·2= .
2 2π 2π
Chapter 3. Construction of orthogonal wavelets 24
2 X 2 2 X 2 !
1 ξ ξ ξ ξ
= |µ(ξ)|2 H + π Φ + 2kπ + H Φ + 2kπ + π
2 2 2 2 2
k∈Z k∈Z
2 2 !
1 1 ξ ξ 1
= |µ(ξ)|2 H + π + H = |µ(ξ)|2 .
2 2π 2 2 2π
Lemma 3.6. Let r ∈ N0 , ψ ∈ C r such that ψ is not identically constant, let ψ (l) be bounded
for l ≤ r and let
C0
|ψ(x)| ≤ , (3.11)
(1 + |x|)r+1+ε
for some ε > 0, C0 ≥ 0. Let {ψj,k | j, k ∈ Z} constitute and orthonormal basis in L2 . Then
ψ has r + 1 vanishing moments, i.e.,
Z
xl ψ(x) dx = 0, ∀l = 0, 1, . . . , r.
Chapter 3. Construction of orthogonal wavelets 25
Since
Cr |x|
0 ≤ |xνr (x)| ≤ → 0 , when x → ±∞,
(1 + |x|)1+ε
the first term equals zero. Integrating by parts r-times gives
Z Z Z
νr (x) dx = − xνr−1 (x) dx = α1 xνr−1 (x) dx =
Z Z
2
= α2 x νr−2 (x) dx = . . . = αr xr ψ(x) dx,
Using (3.12) and the fact that ψ (n) is bounded for n ≤ r, one can derive, integrating
by parts,
Z Z
ψ (x)νr (2 (x − 2 0 k0 )) dx = K ψ(x)ψ(2j (x − 2−j0 k0 )) dx = 0.
(r) j −j
By change of variables,
Z
ψ (r) (2−j x + 2−j0 k0 )νr (x) dx = 0.
Applying again the Dominated Convergence Theorem and using the fact ψ (r) (2−j0 k0 ) 6=
0, it follows Z
νr (x) dx = 0.
Chapter 3. Construction of orthogonal wavelets 27
Corollary 3.7. Let ψ ∈ L2 ∩ C ∞ and let ψ has compact support. Then {ψj,k | j, k ∈ Z}
cannot constitute an orthonormal system.
Proof. Since ψ has compact support, there certainly exists C0 so that (3.11) is satisfied.
Let us pretend that {ψj,k | j, k ∈ Z} constitute an orthonormal system. By Theorem 3.6,
ψ is then orthogonal to any polynomial, i.e.
Z
p(x)ψ(x) dx = 0, for every polynomial p.
Due to the Weierstrass Approximation Theorem1) , for each ε > 0 there exists a polynomial
p, such that
sup |f (x) − p(x)| < ε,
x∈K
Z Z Z
= [ψ(x) − p(x)]ψ(x) dx ≤ |ψ(x) − p(x)| |ψ(x)| dx ≤ ε |ψ(x)| dx
K K K
We see that the norm kψk2L2 can be made arbitrarily small, which leads to contradiction
with orthonormality (kψk2L2 must equal 1).
We are thus limited when designing compactly supported wavelets in the sense of
smoothness - one can only construct compactly supported wavelets that belong to C N , for
some fixed N .
Lemma 3.8. Let φ be an orthogonal scaling function with compact support, ψ an associated
wavelet defined by (3.10) such that φ, ψ ∈ C r . Then H(ξ) defined by (2.6) can be expressed
as
1 + exp(−iξ) r+1
H(ξ) = P (ξ),
2
with P ∈ C r and 2π-periodic.
Proof. Since φ has compact support then by the discussion above ψ has also compact
support. Moreover, the compact support ensures that ψ (l) is bounded for 0 ≤ l ≤ r and
that
C
|ψ(x)| ≤ ,
(1 + |x|)r+1+ε
for some ε > 0. According to lemma 3.6 it follows
Z
xl ψ(x) dx = 0, ∀l = 0, 1, . . . , r.
with 2π-periodic P ∈ C r .
The strategy is then to find a trigonometric polynomial H such that the following two
properties are satisfied:
|H(ξ)|2 + |H(ξ + π)|2 = 2, (3.15)
and r+1
1 + exp(−iξ)
H(ξ) = P (ξ). (3.16)
2
This is addressed by the following two theorems.
Chapter 3. Construction of orthogonal wavelets 29
X
N −1
N −1+k k
qN (y) = y
k
k=0
and R is a polynomial, antisymmetric with respect to 12 , such that q(y) ≥ 0 for all y ∈ [0, 1].
Proof. Inserting (3.17) in (3.18) yields |H(ξ)|2 + |H(ξ + π)|2 = 2, if and only if
N N
2 ξ 2 ξ
cos L(ξ) + sin L(ξ + π) = 1, (3.19)
2 2
because
N N
1 + exp(−iξ) 1 + exp(iξ)
|H(ξ)|2 = H(ξ)H(ξ) = 2 |P (ξ)|2 =
2 2
N N
1 + cos ξ ξ 2
=2 L(ξ) = 2 cos L(ξ) (3.20)
2 2
and N N
ξ+π 2 ξ
|H(ξ + π)| = 2 cos
2 2
L(ξ + π) = 2 sin L(ξ + π).
2 2
Since we assume that hn are real, it follows
X X
H(ξ) = hn exp(−iξn), H(ξ) = hk exp(iξk)
n finite k finite
and X X
|H(ξ)|2 = hn hk exp[iξ(k − n)].
n finite k finite
q0 (cos ξ), for some polynomial q0 . Using the identity cos ξ = 1 − 2 sin2 2ξ , L(ξ) can be
expressed as
2 ξ
L(ξ) = q sin , (3.21)
2
where q is some polynomial. Substituting this in (3.19) after some manipulation yields
N N
2 ξ 2 ξ 2 ξ 2 ξ
1 − sin q sin + sin q 1 − sin = 1.
2 2 2 2
ξ
It is intuitive to substitute y = sin2 2 ∈ [0, 1]. The condition (3.18) is then equivalent to
(1 − y)N q2 (1 − y) + y N q1 (1 − y) = 1.
Since q1 , q2 are unique, this means that q2 (y) = q1 (1 − y). Hence q1 is a solution to (3.22).
The equation (3.23) can be rewritten as
X
N −1
N +k−1 k
(1 − y)−N = y + O(y N ),
k
k=0
where O(y N ) carries the terms of power N or higher, the polynomial q1 then becomes
X
N −1
N +k−1 k
q1 (y) = y + O(y N ).
k
k=0
X
N −1
N +k−1 k
q1 (y) = y . (3.24)
k
k=0
Note that according to (3.21), q must ne nonnegative for y ∈ [0, 1], which is clearly satisfied.
The polynomial q1 defined by (3.24) is thus the unique lowest degree solution of (3.22). We
2)
If p1 , p2 are two polynomials of degree n1 , n2 respectively, with no common zeros then there exist unique
polynomials q1 , q2 of degree n2 − 1, n1 − 1 respectively, such that p1 (x)q1 (x) + p2 (x)q2 (x) = 1.
Chapter 3. Construction of orthogonal wavelets 31
R(1 − y) = −R(y),
then q(y) = qN (y) + y N R(y) is clearly a solution to (3.25), assuming that R is chosen such
that q(y) ≥ 0, for y ∈ [0, 1]. This concludes the proof.
Now we have |H(ξ)|2 , but we need H(ξ) itself. For this purpose we have the following
theorem.
Theorem 3.10 (Riesz, Fejér). Let p be a positive trigonometric polynomial of the form
X
M
p(ξ) = αn cos(nξ), where an ∈ R.
n=0
There exists a trigonometric polynomial q with real coefficients and of the same order as
p, such that |q(ξ)|2 = p(ξ).
X
M
q(ξ) = βn exp(iξn),
n=0
Y
M
p̃(v) = C (v − vj ).
j=1
Let
M
Y M
Y Y
M
z + z −1 1 1
P (z) = Cz M
− vj =C − vj z + z 2 =C pj (z),
2 2 2
j=1 j=1 j=1
because
z + z −1 e−iξ + eiξ
= = cos ξ.
2 2
Let us examine the roots of P , by examining the roots of pj .
1a) For vj ∈ R, |vj | > 1, the roots of pj are both real and if rj is a root of pj , then rj−1 is
likewise a root of pj .
1b) For vj = ±1, the same argument as above applies, only the roots rj , rj−1 are degen-
erate, i.e. they equal.
q
1c) For vj ∈ R, |vj | < 1, the roots of pj are of the form vj ± i 1 − vj2 , implying they are
mutually conjugated and of absolute value 1. Hence they can be written as exp(iaj ),
resp. exp(−iaj ). By (3.26), these roots are also the roots of p, and since p ≥ 0, they
must have even multiplicity.
2) If vj ∈ C\R, then with each vj there is also vj in the group of roots of p̃j .qThe roots of
the polynomial 12 − vj z + 21 z 2 21 − vj z + 12 z 2 form a quadruplet vj ± vj2 − 1, vj ±
p
vj 2 − 1, also expressible as zj , zj−1 , zj , z j−1 .
From the above discussion we deduce that the roots of P can be regrouped as
Y
J
P (z) = C (z − zj )(z − zj−1 )(z − zj )(z − z j−1 )·
j=1
" #2
Y
K Y
L
· (z − e iak −iak
)(z − e ) (z − rl )(z − rl−1 ).
k=1 l=1
One can easily verify that
p Y J Y
K Y
L
q(ξ) = C1 (e−iξ − zj )(e−iξ − zj ) (e−iξ − eiak )(e−iξ − e−iak ) (e−iξ − rl ),
j=1 k=1 l=1
where the degree of q clearly equals M , we obtain p(ξ) = |q(ξ)|2 . Furthermore, since
p Y J Y
K Y
L
q(ξ) = C1 (e−2iξ − 2e−iξ Rezj + |zj |2 ) (e−2iξ − 2e−iξ cos ak + 1) (e−iξ − rl ),
j=1 k=1 l=1
The last theorem can actually be used to determine the polynomial q, assuming the
roots of p are given. From the real roots which form a duplet rj , rj−1 , we retain either rj
or rj−1 . From the complex roots which form a quadruplet zj , zj−1 , zj , z j−1 , we select the
two roots either inside or outside the unit circle. In case there are also roots with absolute
value 1 (i.e. roots of the form eiaj , resp. e−iaj ), we know that they are present in the
multiplicity of two, which means that we retain only one pair out of two. We will return
to this issue later.
Another fact to note is that the polynomial q is not determined uniquely. For example,
instead of q we could consider eiξm q(ξ) (for some m ∈ Z) to achieve the same result. It
also depends on which roots of p we retain during this process, as described above.
Now we are able to determine the trigonometric polynomial H satisfying (3.16) and
(3.15). In the theorem 3.9 there is a degree of freedom in choosing the polynomial R. In
the simplest case, we can put R = 0. The resulting scaling function, resp. wavelet (which
will be constructed in the following section) are then called the Daubechies scaling
function, resp. the Daubechies wavelet, often denoted DN , where N specifies the
number of vanishing wavelet moments. The associated polynomial q in the theorem 3.9
will then equal
X
N −1
N −1+k k
q(y) = y ,
k
k=0
which is clearly a polynomial of degree N − 1, i.e. the lowest possible degree among all
possible choices of R. We call this polynomial q the Daubechies polynomial. The degree
of L(ξ) = |P (ξ)|2 is then equal N −1 and, after applying the Riesz-Fejér theorem, the order
−iξ N
of P is likewise equal N − 1. Multiplying this polynomial P with 1+e2 results in the
polynomial H which we are interested in and the order of H equals 2N − 1, so we need to
store 2N coefficients hn . The trigonometric polynomial H can be computed numerically,
but let us first examine how to actually obtain φ and ψ from H.
the scaling function and the corresponding wavelet from this H. Let us first deduce a
possible candidate for the scaling function φ. Iterating the scaling equation (2.7) gives
Y H(2−j ξ)
+∞
1 ξ ξ 1 ξ 1 ξ ξ
Φ(ξ) = √ H Φ =√ H √ H Φ = Φ(0) √ ,
2 2 2 2 2 2 4 4 2
j=1
1 X X 1 X
=1+ √ | hn e−iξn − hn | ≤ 1 + √ | |hn ||e−iξn − 1| =
2 n n 2 n
√ X ξn 1 X sin ξn
2
=1+ 2 |hn | sin = 1 + √ |ξnhn | ξn ≤ 1 + C|ξ| ≤ eC|ξ| .
n
2 2 n 2
We have used the identity |e−iξn − 1| = 2 sin ξn
2 and the fact that hn has enough decay
P
(namely n |n||hn | < +∞), which holds if hn is finite. It then follows
Y
+∞ Y
H(2−j ξ) +∞ X
+∞
√ ≤ exp(C2−j |ξ|) = exp C2−j |ξ| = eC|ξ| .
2
j=1 j=1 j=1
Q H(2−j ξ)
Hence +∞ j=1
√
2
converges absolutely pointwise almost everywhere.
The only candidate (up to the factor −1) for the scaling function is thus φ defined in
terms of the Fourier transform as
1 Y H(2−j ξ)
+∞
Φ(ξ) := √ √ . (3.27)
2π j=1 2
Theorem 3.11 (Mallat [16]). If H is a 2π-periodic function so that |H(ξ)|2 +|H(ξ +π)|2 =
Q H(2−j ξ) Q H(2−j ξ)
2 and if +∞
j=1
√
2
converges pointwise almost everywhere, then Φ(ξ) = √12π +∞
j=1
√
2
∈
L2 and kφkL2 ≤ 1.
Chapter 3. Construction of orthogonal wavelets 35
Theorem 3.12 (Cohen, Lawton [7]). If φ and ψ are given in terms of their Fourier
transform by
1 Y H(2−j ξ)
+∞
Φ(ξ) = √ √ ,
2π j=1 2
1 −i ξ ξ ξ
Ψ(ξ) = √ e 2 H +π Φ ,
2 2 2
√
where H satisfies |H(ξ)|2 + |H(ξ + π)|2 and H(0) = 2, then the ψj,k = 2j/2 ψ(2j · −k)
constitute an orthonormal basis of L2 if and only if there exists a compact set K, congruent
to [−π, π] modulo 2π 3) , containing a neighborhood of 0, so that
inf inf |H(2−k ξ)| > 0,
k>0 ξ∈K
√ √
The polynomial − 12 + 2z − 12 z 2 has two real roots 2 + 3 and 2 − 3. We choose one
√
of this duplet, e.g. 2 − 3 and obtain the “square root” of L:
√
P (z) = C1 (z − 2 + 3).
It follows √
H(ξ) = C2 · (1 + e−iξ )2 (e−iξ − 2 + 3).
√
The constant C2 can
√
be determined using the normalization condition H(0) = 2,
3+1
which gives C2 = 4√2 . We can then write
X
3
H(ξ) = hn e−iξn ,
n=0
where √ √ √ √
1+ 3 3+ 3 3− 3 1− 3
h0 = √ , h 1 = √ , h 2 = √ , h 3 = √ .
4 2 4 2 4 2 4 2
4
The above example suggests that the same principle can be applied to a general case
of N vanishing wavelet moments, assuming that we have a routine to compute the roots
of a polynomial. We can therefore describe the algorithm for computing the scaling filter
coefficients hn in several steps:
1. Choose the number of vanishing moments N ≥ 1.
2. In this and subsequent steps, the computations will be expressed in z = e−iξ rather
than in ξ itself. Prepare the polynomial g(z) = (1 + z)N . In Matlab this can be
achieved easily using the conv command.
3. Compute the Daubechies polynomial L, where instead of y = sin2 ξ, use the substi-
tution y = 14 (−z −1 + 2 − z), as in the previous example.
4. The polynomial L in the previous step is the square of the modulus of P . To extract
the “square root” from L use the Riesz-Fejér theorem 3.10.
5. Multiply the polynomials g and P , using the conv command to obtain H (up to a
constant).
P √
6. Finally normalize H so that H(0) = n hn = 2.
The extraction of the “square root” (also called spectral factorization) here is done in
such way, that among all the choices of roots to retain, only roots inside the unit circle
are selected. This results in a minimal phase factorization. One could also select all the
roots outside the unit circle to achieve maximal phase factorization, or just any root from
a duplet (resp. two roots from a quadruplet – either inside or outside the unit circle).
Another important fact to note is that the spectral factorization can be designed more
effectively, not by the proof of Riesz-Fejér theorem. The approach that we presented here
is the simplest one, but for a large number of roots (which is affected by a higher values
of vanishing wavelet moments), say, N > 25, this method should be replaced by a more
numerically stable procedure.
Chapter 3. Construction of orthogonal wavelets 37
X +∞ X
X
f= cjk0 φj0 ,k + djk ψj,k ,
k∈Z j=j0 k∈Z
which follows directly from (2.2). The index j0 represents the coarsest level correspond-
ing to the subspace Vj0 . Orthonormality ensures that the coefficients cjk and djk can be
computed in terms of inner products as
Z
j
ck = hf, φj,k i = f (x)φj,k (x) dx,
Z
djk = hf, ψj,k i = f (x)ψj,k (x) dx.
The aim is to find these coefficients without the explicit integration. Since we work in the
classical setting, it is indeed possible to write
Z
j
ck = f (x)2j/2 φ(2j x − k) dx,
Z
djk = f (x)2j/2 ψ(2j x − k) dx.
Together, Z
X j+1
cjk = hm−2k f (x)2 2 φ(2j+1 x − m) dx,
m∈Z
X Z
j+1
djk = gm−2k f (x)2 2 φ(2j+1 x − m) dx.
m∈Z
Combining (3.32) with (3.33), multiplying both sides by φ(2j+1 x − l), and integrating with
respect to x gives X j X j
cj+1
l = ck hl−2k + dk gl−2k .
k∈Z k∈Z
We have thus derived one step of the inverse discrete wavelet transform (synthesis) which
can be iterated as the forward transform did. The process can be expressed as first upsam-
pling (inserting zeros between neighboring samples) of cjk and djk followed by convolution
with hn and gn , respectivelly. See Figure 3.2.
It comes to question whether the synthesis of coefficients obtained by analysis equals
to the original values. This property is called exact (or perfect) reconstruction and is
discussed in more depth in the following chapter.
1.5 2
1.5
1
1
0.5
0.5
0
−0.5
0
−1
−0.5 −1.5
0 1 2 3 −1 0 1 2
1.2 1.5
1
1
0.8
0.6 0.5
0.4
0.2 0
0
−0.5
−0.2
−0.4 −1
0 2 4 6 −2 0 2 4
Chapter 3. Construction of orthogonal wavelets 41
1.5 1.5
1
1
0.5
0.5 0
−0.5
0
−1
−0.5 −1.5
0 5 10 −5 0 5
1.5 1
0.5
1
0
0.5
−0.5
0
−1
−0.5 −1.5
0 5 10 15 −5 0 5
Chapter 3. Construction of orthogonal wavelets 42
1 1
0.5
0.5
0
−0.5
0
−1
−0.5 −1.5
0 5 10 15 −5 0 5
Chapter 4. Construction of biorthogonal wavelets 43
Chapter 4
Construction of biorthogonal
wavelets
The orthogonal setting may seem a bit restrictive due to the fact that there are no orthogo-
nal wavelets with either symmetry or antisymmetry axis, other than the simple Haar case.
It turns out that, if the orthogonality requirement is dropped, it is possible to construct
symmetric biorthogonal wavelets with corresponding exact reconstruction filters.
In this setting we have two dual multiresolution ladders (Vj ) and (Ṽj ) so that Vj =
clos span{φj,k | k ∈ N} and Ṽj = clos span{φ̃j,k | k ∈ N}. We also define the complement
spaces Wj and W̃j , which are spanned by wavelets ψj,k , as Vj+1 = Vj ⊕ Wj and Ṽj+1 =
Ṽj ⊕ W̃j , where the sum is direct, i.e. Vj ∩ Wj = {0} and Ṽj ∩ W̃j = {0}. We also require
that Vj ⊥ W̃j and Ṽj ⊥ Wj .
The multiresolution framework ensures that the scaling functions and wavelets satisfy
the two-scale relations
1 ξ ξ 1 ξ ξ
Φ(ξ) = √ H Φ , Φ̃(ξ) = √ H̃ Φ̃ ,
2 2 2 2 2 2
1 ξ ξ 1 ξ ξ
Ψ(ξ) = √ G Φ , Ψ̃(ξ) = √ G̃ Φ̃ ,
2 2 2 2 2 2
whilst biorthogonality implies
D E
hφ̃, ψ(· − k)i = 0, ψ̃, φ(· − k) = 0,
D E
hφ̃, φ(· − k)i = δk,0 , ψ̃, ψ(· − k) = δk,0 .
Z 2π X
= eiξk Φ̃(ξ + 2πl)Ψ(ξ + 2πl) dξ.
0 l∈Z
Chapter 4. Construction of biorthogonal wavelets 44
Hence X
Φ̃(ξ + 2πl)Ψ(ξ + 2πl) = 0, a.e.
l∈Z
It is an easy exercise to substitute from the two-scale relations to these formulas to obtain
M̃ (ξ)M T (ξ) = I,
where
1 H(ξ) H(ξ + π)
M (ξ) = √
2 G(ξ) G(ξ + π)
and
1 H̃(ξ) H̃(ξ + π)
M̃ (ξ) = √
2 G̃(ξ) G̃(ξ + π)
are called modulation matrices and I denotes the identity matrix.
In following we will show that the formulas above fit neatly in the exact reconstruction
filter scheme.
H̃(z)H(z) + G̃(z)G(z) = 2,
H̃(z)H(−z) + G̃(z)G(−z) = 0,
or, again in terms of the discrete-time Fourier transform,
It comes to question whether there are any explicit formulas to obtain some filters from
the others so that the exact reconstruction properties are satisfied. It turns out that, given
the pair H(ξ), H̃(ξ), it suffices to define
The property (4.13) is then automatically satisfied. The property (4.12) can be rewritten,
using (4.14), (4.15), as
which is, by a coincidence, exactly the equation (4.3) we encountered before. Also the
other equations (4.1), (4.2), and (4.4) can be derived using (4.14), (4.15) and (4.12), (4.13).
The exact reconstruction filters are therefore assigned to biorthogonal wavelets, which is
a powerful result. In following we will focus on construction of such wavelets. We will
examine the classical construction as proposed in [5] and an interesting alternative based
on so called lifting which was developed in [19, 20].
Lemma 4.1. Let r ∈ N0 , and ψ, ψ̃ be not identically constant and biorthogonal in the
sense that D E
ψj,k , ψ̃j ′ ,k′ = δj,j ′ δk,k′ ,
where
ψj,k = 2j/2 ψ(2j · −k), ψ̃j,k = 2j/2 ψ̃(2j · −k).
Assume that
C0
|ψ̃(x)| ≤ ,
(1 + |x|)r+1+ε
Again, this has two important consequences. First off, one can not achieve biorthogonal
wavelets to possess infinite smoothness. The second thing is that if ψ ∈ C r and ψ̃ ∈ C r̃ ,
then H and H̃ are divisible by (1 + e−iξ )r+1 and (1 + e−iξ )r̃+1 , respectively, where H
and H̃ are determined by the two-scale relations. Note that since we require the scaling
functions and wavelets to have compact support, H and H̃ are automatically trigonometric
polynomials. We only consider filters with real coefficients, although complex examples are
possible.
We want our scaling functions to have either symmetry or antisymmetry axis. For
filters with odd number of taps we require φ(x) = φ(−x), or H(ξ) = H(−ξ), and for filters
with even number of taps we suppose φ to be symmetric around 21 , hence the requirement
is φ(1 − x) = φ(x), or H(ξ) = e−iξ H(−ξ).
In the first case
P we have H(ξ) = p0 (cos ξ), where p is a polynomial, possibly generalized
so that p0 (x) = N 2 n
n=N1 an x . Of course, the exact reconstruction property
must be satisfied. By a simple substitution we deduce h that, for aifixed H with H(ξ) =
# 1
H(−ξ), if H̃ is a solution to (4.16) then H̃ (ξ) = 2 H̃(ξ) + H̃(−ξ) is likewise a solution,
with H # (ξ) = H # (−ξ). Therefore it suffices to consider H̃ of the same form as H,
i.e. H̃(ξ) = p̃0 (cos ξ). By the analysis above, we also expect p0 (cos ξ) to be divisible by
(1 + e−iξ )l , with l ≥ 1. Since p0 is a polynomial in cos ξ and (1 + e−iξ )2 = 4e−iξ cos2 2ξ =
2e−iξ (1 + cos ξ), it follows that H must be expressible as
ξ 2l
H(ξ) = cos q0 (cos ξ). (4.17)
2
for the second case. This can be written in more compact form,
(1 − x)m P (x) + xm P (1 − x) = 1,
with x = sin2 2ξ . This equation was already solved in the proof of theorem 3.9. The solution
is
X m − 1 + k
m−1
P (x) = xk + xm R(x),
k
k=0
and
l+l̃
√ −iξ/2 ξ N X l + ˜l + k ξ k
H(ξ) = 2e cos sin .
2 k 2
k=0
√ √
Note that the 2 is a normalization factor (we must have H(0) = H̃(0) = 2).
The resulting scaling functions and wavelets are depicted on figures 4.1 - 4.4. They are
obtained by a procedure similar to that of orthogonal case - for convenience the computa-
tions are carried in the z-transform form.
A drawback of the above examples is the fact that the lengths of the resulting filters
hn , h̃n tend to be very dissimilar. To obtain filters with closer lengths we need a better
factorization of the polynomial P into q0 , q̃0 . As in the case of orthogonal compactly
Chapter 4. Construction of biorthogonal wavelets 49
supported wavelets one may write the polynomial P as a product of first and second order
polynomials (assuming we know all roots of P ):
Y Y
P (x) = C (x − xj ) (x2 − 2Rezj x + |zj |2 ).
j j
The resulting wavelets for N = Ñ = 4 are very popular in image processing community
and they are perhaps better known as CDF 9/7 wavelets, according to the filter lengths.
The corresponding scaling functions and wavelets are depicted on figure 4.5.
We have not discussed convergence questions nor the conditions for ψ, ψ̃ to constitute
dual Riesz bases for it is much more complicated than in the case of orthogonal bases. In
following we only state the main assertions.
Theorem 4.2 (Cohen, Daubechies, Feauveau [5]). Suppose that φ, φ̃, as defined by
1 Y H(2−j ξ) 1 Y H̃(2−j ξ)
+∞ +∞
Φ(ξ) = √ √ , Φ̃(ξ) = √ √ ,
2π j=1 2 2π j=1 2
satisfy
|Φ(ξ)| ≤ C(1 + |ξ|)−1/2−ε ,
|Φ̃(ξ)| ≤ C(1 + |ξ|)−1/2−ε .
Define
ψj,k = 2j/2 ψ(2j · −k),
Theorem 4.3 (Cohen, Daubechies, Feauveau [5]). Let hn , h̃n be√finite real sequences sat-
isfying H(ξ)H̃(ξ) + H(ξ + π)H̃(ξ + π) = 2 and H(0) = H̃(0) = 2, where
X X
H(ξ) = hn e−iξn , H̃(ξ) = h̃n e−iξn .
n∈Z n∈Z
Define φ, φ̃ as
1 Y H(2−j ξ) 1 Y H̃(2−j ξ)
+∞ +∞
Φ(ξ) = √ √ , Φ̃(ξ) = √ √ .
2π j=1 2 2π j=1 2
2. There exist strictly positive trigonometric polynomials f0 , f˜0 and a compact set K
congruent to [−π, π] modulo 2π so that
i) P0 f0 = f0 and P̃0 f˜0 = f˜0 , where P0 and P̃0 are operators acting on 2π-periodic
functions f as
2 2
ξ ξ
(P0 f )(ξ) = H f + H ξ + π f ξ + π ,
2 2 2 2
2 2
ξ ξ
(P̃0 f )(ξ) = H̃ f + H̃ ξ + π f ξ + π ,
2 2 2 2
ii) the interior of K contains 0,
iii) for all ξ ∈ K, all k ∈ N \ {0} and some strictly positive C (independent of ξ and
k),
|H(2−k ξ)|, |H̃(2−k ξ)| ≥ C.
3. There exist strictly positive trigonometric polynomials f0 , f˜0 so that P0 f0 = f0 , P̃0 f˜0 =
f˜0 and these are the only trigonometric polynomials (up to normalization) invariant
under P0 , P̃0 respectively.
Chapter 4. Construction of biorthogonal wavelets 51
1.5 1.5
1
1
0.5
0
0.5
−0.5
0 −1
−1 −0.5 0 0.5 1 −1 0 1 2
10 10
5
5
0
0
−5
−5 −10
−2 −1 0 1 2 −1 0 1 2
Chapter 4. Construction of biorthogonal wavelets 52
1.5 1.5
1
1
0.5
0
0.5
−0.5
0 −1
−1 −0.5 0 0.5 1 −2 −1 0 1 2 3
3 2
1
2
0
1
−1
0
−2
−1 −3
−4 −2 0 2 4 −2 −1 0 1 2 3
Chapter 4. Construction of biorthogonal wavelets 53
1.5 1
0.5
1
0
−0.5
0.5
−1
0 −1.5
0 0.5 1 −1 0 1 2
1.5 2
1 1
0.5 0
0 −1
−0.5 −2
−2 −1 0 1 2 3 −1 0 1 2
Chapter 4. Construction of biorthogonal wavelets 54
0.8 1
0.6 0.5
0.4 0
0.2 −0.5
0 −1
−1 0 1 2 −2 0 2 4
2 4
2
1
0
0
−2
−1 −4
−5 0 5 −2 0 2 4
Chapter 4. Construction of biorthogonal wavelets 55
Figure 4.5: Cohen-Daubechies-Feauveau scaling functions and wavelets with closer filter
lengths, Ñ = N = 4
1.5 2
1
1
0.5
0
0
−0.5 −1
−2 0 2 −2 0 2 4
1.5 2
1 1
0.5 0
0 −1
−0.5 −2
−4 −2 0 2 4 −2 0 2 4
X
ψj,m = gj,m,l φj+1,l . (4.20)
l∈Kj+1
The set hj,k,l in the above relation is called a finite filter if for each j and k only finite
number of coefficients are non-zero and the same for j and l. We will consider only
Chapter 4. Construction of biorthogonal wavelets 56
finite filters. Consequently, we require that the sets Lj,k = {l ∈ Kj+1 | hj,k,l 6= 0} and
Kj,l = {k ∈ Kj | hj,k,l 6= 0} are finite.
As in the classical setting, there is no analytic formula for the scaling functions φj,k .
However, the method for obtaining the graphs of φj,k is essentially the same: start with the
Kronecker sequence {cjk0 = δk0 ,k | k ∈ Kj0 } and then generate the sequences {cjk | k ∈ Kj }
as X
cj+1
l = hj,k,l cjk .
k∈Kj,l
cj = H̃j cj+1 ,
Chapter 4. Construction of biorthogonal wavelets 57
dj = G̃j cj+1 ,
where cj = {cjk | k ∈ Kj } and dj = {djm | m ∈ Mj }. To obtain the inverse transform we
first derive the form of adjoint operators Hj∗ , G∗j . Since
X X XX X X
hHj α, βi = βk hj,k,l αl = hj,k,l αl βk = αl hj,k,l βk = α, Hj∗ β ,
k l k l l k
P
it follows that α = Hj∗ β if and only if αl = k hj,k,l βk . A similar argument applies to the
adjoint operator G∗j . The inverse transform can now be written as
We have thus derived one step of general discrete wavelet transform, which is displayed on
figure 4.6. The full wavelet transform can be obtained by iteration.
It is an easy exercise to obtain the conditions for exact reconstruction in this general
setting:
H̃j Hj∗ = G̃j G∗j = 1, (4.21)
G̃j Hj∗ = H̃j G∗j = 0, (4.22)
Hj∗ H̃j + G∗j G̃j = 1. (4.23)
The filter operators Hj , Gj , H̃j and G̃j are called biorthogonal filter operators if the
conditions (4.21) - (4.23) are satisfied.
For later convenience we will extend the operators Hj and Gj to sequences of functions
so that
φj = Hj φj+1 , ψj = Gj φj+1 ,
and
φj+1 = H̃j∗ φj + G̃∗j ψj ,
where φj = {φj,k | k ∈ Kj } and ψj = {ψj,m | m ∈ Mj }.
We will now state the lifting scheme in the operator notation. Let Hjold , H̃jold , Gold
j and
old
G̃j be biorthogonal filter operators. Then the filter operators Hj , Gj , H̃j and G̃j given
by
Hj = Hjold ,
Chapter 4. Construction of biorthogonal wavelets 58
G̃j = G̃old
j ,
where Sj is arbitrarily chosen operator mapping ℓ2 (Mj ) 7→ ℓ2 (Kj ), are likewise biorthog-
onal filter operators. The proof simply follows by substituting these relations in the con-
ditions (4.21) - (4.23) and exploiting the biorthogonality of the old filter operators. Such
defined process is called (primal) lifting because it modifies the primal wavelet (which
will become apparent below). In the index notation the lifting scheme can be written as
hj,k,l = hold
j,k,l ,
X
h̃j,k,l = h̃old
j,k,l +
old
sj,k,m g̃j,m,l ,
m∈Mj
X
old
gj,m,l = gj,m,l − sj,k,m hold
j,k,l ,
k∈Kj
old
g̃j,m,l = g̃j,m,l .
From the above scheme we can deduce how the scaling functions and wavelets change
after lifting. Using the extension of the filter operators we obtain
φj = φold
j ,
ψ̃j = G̃old
j φ̃j ,
We also introduce dual lifting, which alters the dual wavelets. In operator notation
it can be formulated as
Hj = Hjold + S̃j Gold
j ,
H̃j = H̃jold ,
Gj = Gold
j ,
Chapter 4. Construction of biorthogonal wavelets 59
∗ old
j − S̃j H̃j
G̃j = G̃old
The proof is analogous to the previous case.
The scaling functions and wavelets are changed due to the dual lifting as follows:
X X
φj,k = hold
j,k,l φj+1,l + s̃j,k,m ψj,m ,
l∈Kj+1 m∈Mj
φ̃j,k = φ̃old
j,k ,
X
old
ψj,m = gj,k,m φj+1,l ,
l∈Kk+1
X
old
ψ̃j,m = ψ̃j,m − s̃j,k,m φ̃old
j,k .
k∈Kj
The purpose of lifting is to start with a (preferably simple) multiresolution analysis and
through the sequences sj,k,m and s̃j,k,m (which are arbitrary!) build a new multiresolution
with desired properties. One can, for example, start with the Haar wavelet, increase the
number of vanishing moments of the primal wavelet by primal lifting and then increase
the number of vanishing moments of the dual wavelet by dual lifting (see [20] how this
is done). One can also consider selecting the sequences sj,k,m , s̃j,k,m so that the resulting
wavelet resembles some particular shape.
cj = H̃jold cj+1 + Sj dj .
Note that we have first computed dj and later reused it in the calculation of cj . In our
situation we have
dj = Dcj+1 − S̃j∗ Ecj+1 ,
cj = Ecj+1 + Sj dj .
According to the definition of the operators E and D we can formulate the algorithm
for lifted wavelet transform:
1. For all k ∈ Kj ,
cjk := cj+1
k
Chapter 4. Construction of biorthogonal wavelets 60
2. For all m ∈ Mj ,
djm := cj+1
m
3. For all m ∈ Mj ,
X
djm −= s̃j,k,m cjk
k
4. For all k ∈ Kj ,
X
cjk += sj,k,m djm .
m
One of the wonderful properties of lifting is that the inverse is found simply by reversing
the order of operations and toggling the signs:
1. For all k ∈ Kj ,
X
cjk −= sj,k,m djm
m
2. For all m ∈ Mj ,
X
djm += s̃j,k,m cjk
k
3. For all m ∈ Mj ,
cj+1
m := djm
4. For all k ∈ Kj ,
cj+1
k := cjk .
One step of the lifted wavelet transform is depicted on figure 4.7. The full transform is,
again, obtained by iteration.
It comes to question how to find the sequences sj,k,m , s̃j,k,m . There are various ap-
proaches how to do it. Later we will present one particularly useful method, that is
factoring classical wavelet transforms into lifting steps.
Chapter 4. Construction of biorthogonal wavelets 61
cj2n + cj2n+1
cj−1
n = ,
2
dj−1
n = cj2n+1 − cj2n .
Thus cj−1 contain averages of neighboring samples and dj−1 contain differences. The
inverse transform can be obtained by a simple substitution:
dj−1
n
cj2n = cj−1
n − ,
2
dj−1
n
cj2n+1
= + cj−1
n .
2
To make the transform in-place we may consider reordering the computations so that we
first compute the differences as
dj−1
n = cj2n+1 − cj2n ,
dj−1
n
cnj−1 = cj2n + .
2
In general, a lifting step consists of three consecutive operations, namely split, pre-
dict and update. The split operation simply splits the data according to the parity of
indices. This corresponds to the lazy wavelet transform defined before. We will denote
this operation as
(evenj−1 , oddj−1 ) = split(cj ).
In the simple Haar example the predict operation is the measure of failure for the even
data to be the same as the odd data. This is expressed by the formula dj−1
n = cj2n+1 − cj2n .
In general, the predict operator can be more complicated, but in case of linear wavelet
transform it can be expressed as a linear combination of neighbouring samples. We will
denote this operation as
dj−1 = oddj−1 − P (evenj−1 ).
Note that the predict operation corresponds to the dual lifting defined before. In case of
the Haar transform the update operation is expressed as
dj−1
n
cj−1
n = cj2n + .
2
It is easy to show that this operation is necessary to preserve the average across scales,
namely
X−1
2j−1 2j−1 −1
1 X j j
2j −1
1 X j
j−1
cn = (c2n + c2n+1 ) = ck .
2 2
n=0 n=0 n=0
In general, however, the update operation can be more complicated, but in case of linear
wavelet transform it is always expressible as a linear combination of neighbouring data.
We will denote
cj−1 = evenj−1 + U (dj−1 ).
The update operation corresponds to the primal lifting defined before.
An in-place implementation of a general lifting step can be written as
2. oddj−1 −= P (evenj−1 ),
3. evenj−1 += U (oddj−1 ).
1. evenj−1 −= U (oddj−1 ),
2. oddj−1 += P (evenj−1 ),
3. cj := merge(evenj−1 , oddj−1 ).
integer to integer wavelet-like transform where instead of P and U we work with bP c and
bU c, respectively.
From the analysis in the previous section it follows that after dual and primal lifting
we obtain new filters on which we can apply lifting again. This results in an important
generalization of the interpretation we discussed above. An example is given on figure 4.11.
where X
Xeven (z) = x2n z −n ,
n
Chapter 4. Construction of biorthogonal wavelets 64
X
Xodd (z) = x2n+1 z −n .
n
1
Xeven (z) = X(z 1/2 ) + X(−z 1/2 ) , (4.24)
2
z 1/2
Xodd (z) = X(z 1/2 ) − X(−z 1/2 ) . (4.25)
2
In the prediction step we subtract a linear combination of the even samples from the odd,
i.e., given Xeven (z) and Xodd (z) we end up with Xeven (z) and Xodd (z) − T (z)Xeven (z),
where T (z) is the corresponding Laurent polynomial. This operation can be expressed in
the matrix form as
1 0 Xeven (z) Xeven (z)
= .
−T (z) 1 Xodd (z) Xodd (z) − T (z)Xeven (z)
where S(z) is the Laurent polynomial used in the update step. In one scale of a discrete
wavelet transform there may be a number of predict and update steps. If we define
Y
1
K 0 1 Si (z) 1 0
H(z) = , (4.26)
0 K −1 0 1 −Ti (z) 1
i=N
However, if the matrix H(z) is not factored, the inverse may not be immediately obvi-
ous. In such case we have
H00 (z) H01 (z)
H(z) = ,
H10 (z) H11 (z)
and the equation (4.27) is called the polyphase representation of the wavelet transform
and H(z) is called the polyphase matrix. It has already been used before lifting was
invented. It turns out that the invertibility of the polyphase matrix can be determined
(without lifting) according to its determinant. To show this, we will first derive a little
lemma.
Lemma 4.4. A non-zero Laurent polynomial p(z) can be inverted if and only if it is of the
form p(z) = αz m , i.e. it is a monomial.
PN2
Proof. 1. if 0 6= p(z) = αn z −n can be inverted then there exists a Laurent
PM2 n=N1 −n
polynomial q(z) = n=M1 βn z such that
If p(z) was not a monomial, then in (4.28) we would have at least two different
powers with non-zero coefficients, leading to a contradiction. Hence p(z) must be a
monomial.
p(z) · α−1 z −m = 1.
Now how to apply the lemma to our situation? The reader can easily check that
H00 (z) H01 (z) H11 (z) −H01 (z) 1 0
= ∆(z) ,
H10 (z) H11 (z) −H10 (z) H00 (z) 0 1
where ∆(z) = det H(z) = H00 (z)H11 (z) − H01 (z)H10 (z). It follows that H(z) is invertible
if and only if ∆(z) is invertible which is, by the above lemma, equivalent to saying that
∆(z) is a monomial. Hence for the polyphase matrix H(z) it suffices to check whether its
determinant is a monomial and if this is the case it also follows that the inverse is given by
−1 1 H11 (z) −H01 (z)
H (z) = . (4.29)
∆(z) −H10 (z) H00 (z)
It turns out that the filter representation introduced in section 4.1 is equivalent to the
polyphase representation if the filters H, H̃ are related to the polyphase matrix components
H00 (z), H01 (z), H10 (z), H11 (z) as
It is a matter of substituting (4.24), (4.25) and (4.9), (4.10) to (4.27) (after upsampling,
for convenience) to obtain
1
2 2 [(X(z) + X(−z)] Y0 (z 2 )
H(z ) z =
2 [(X(z) − X(−z)] Y1 (z 2 )
is a monomial, that is det H(z) = αz m for some α 6= 0 and m ∈ Z. We can always assume
that det H(z) = 1, for if it was not the case, we can take
′ H00 (z) H01 (z)
H (z) = ,
α−1 z −m H10 (z) α−1 z −m H11 (z)
whose determinant equals one. This H′ (z) then merely corresponds to different z-transform
of H10 (z) and H11 (z).
It turns out that the desired factorization
PN2 can be obtained using the Euclidean algorithm
for Laurent polynomials. Let a(z) = n=N1 αn z −n be a Laurent polynomial. We define
the degree of a(z) as deg(a) = N2 − N1 . If a(z) ≡ 0 we define deg(a) = −∞. Note that by
Chapter 4. Construction of biorthogonal wavelets 67
this definition a monomial z p has degree 0 while as an ordinary polynomial it would have
degree p.
For Laurent polynomials division with remainder is possible. Given two Laurent poly-
nomials a(z), b(z) 6= 0 with deg(b) ≤ deg(a) then there exist Laurent polynomials q(z), r(z)
with deg(q) = deg(a) − deg(b) and deg(r) < deg(b) such that
We will denote this as q(z) = a(z) ÷ b(z) and r(z) = a(z) mod b(z). The division (4.33)
can be iterated and since the degree of the remainder is decreasing with each step, we have
the following theorem.
Theorem 4.5 (Euclidean algorithm). Let a(z) and b(z) be Laurent polynomials with
deg(b) ≤ deg(a). Let a0 (z) = a(z), b0 (z) = b(z) and
Note that a greatest common divisor is given uniquely up to a factor αz m , since if d(z)
divides both a(z) and b(z) and is of maximal degree, then αz m d(z) is also a divisor of the
same degree.
Let us now apply the Euclidean algorithm to the first row of the polyphase matrix, that
is H00 (z) and H01 (z). We set a0 (z) = H00 (z), b0 (z) = H01 (z) and qn+1 (z) = an (z) ÷ bn (z).
The first step is then
a1 (z) = b0 (z),
b1 (z) = a0 (z) − b0 (z)q1 (z).
We can write this in matrix form as
a1 (z) 0 1 a(z) 0 1 H00 (z)
= = .
b1 (z) 1 −q1 (z) b(z) 1 −q1 (z) H01 (z)
This is equivalent to
"
N #
H00 (z) Y qn (z) 1 aN (z)
= .
H01 (z) 1 0 0
n=1
However, since
det H(z) = H00 (z)H11 (z) − H01 (z)H10 (z) = 1, (4.34)
the greatest common divisor u(z) of H00 (z) and H01 (z) must divide the entire left side
of (4.34) and therefore u(z) must divide 1. Consequently, u(z) must be a monomial, and
since aN (z) is one of the greatest common divisors, we must have aN (z) = Kz m . By a
suitable shifting of H00 (z) and H01 (z) we can always achieve
′ −m "Y N #
H00 (z) z H00 (z) qn (z) 1 K
′ (z) = = .
H01 z −m H01 (z) 1 0 0
n=1
Since
qn (z) 1 1 qn (z) 0 1 0 1 1 0
= =
1 0 0 1 1 0 1 0 qn (z) 1
and
0 1 0 1 1 0
= ,
1 0 1 0 0 1
we can also write
N/2
Y
H00 (z) 1 q2n−1 (z) 1 0 K
= , (4.35)
H01 (z) 0 1 q2n (z) 1 0
n=1
which holds for N even. For N odd such that N = 2N ′ − 1 we set q2N ′ = 0 so that (4.35)
holds for N odd as well.
We will now observe what happens if we replace
K
0
with
K 0
.
0 K −1
Indeed, it is possible to write
′ (z)
N/2
Y
H00 (z) H10 1 q2n−1 (z) 1 0 K 0
′ (z) = ,
H01 (z) H11 0 1 q2n (z) 1 0 K −1
n=1
We want to find a relation between H10′ (z), H ′ (z) and valid H (z), H (z). For this
11 10 11
purpose we have the following lemma:
Chapter 4. Construction of biorthogonal wavelets 69
Lemma 4.6. If a filter pair H, G has a polyphase representaton with determiant equal one
then any other filter pair H, G′ is related by
Proof. The polyphase representation of H and G is obtained using (4.30) and (4.31) as
where
′ ′
H10 (z) = H10 (z) + s(z)H00 (z), H10 (z) = H10 (z) + s(z)H00 (z). (4.38)
The new polyphase matrix is thus given by
′ H00 (z) H01 (z)
H (z) =
H10 (z) + s(z)H00 (z) H11 (z) + s(z)H01 (z)
det H′ (z) = H00 (z) [H11 (z) + s(z)H01 (z)] − H01 (z) [H10 (z) + s(z)H00 (z)]
results in
Y
1
H00 (z) H01 (z) 1 0 K 0 1 q2n (z) 1 0
=
H10 (z) H11 (z) −s(z) 1 0 K −1 0 1 q2n−1 (z) 1
n=M
Y
1
K 0 1 0 1 q2n (z) 1 0
= ,
0 K −1 −K 2 s(z) 1 0 1 q2n−1 (z) 1
n=M
where M = N/2. It is now only a matter of taste to reorder the Laurent polynomials
qi (z) and set qM +1 = −K 2 s(z) to obtain the relation (4.32). We have thus derived the
factorization of any polyphase matrix (and therefore any wavelet transform) into lifting
steps. Note that since the greatest common divisor is not unique, the same applies to the
factorization of a polyphase matrix.
Let us apply the above procedure on the Daubechies wavelet with 2 vanishing moments
derived in section 3.6. We choose the z-transform of the low-pass filter H as
H(z) = h0 z 3 + h1 z 2 + h2 z + h3 ,
where √ √ √ √
1+ 3 3+ 3 3− 3 1− 3
h0 = √ , h 1 = √ , h 2 = √ , h 3 = √ .
4 2 4 2 4 2 4 2
The highpass filter G is given by
G(z) = h3 z − h2 + h1 z −1 − h0 z −2 .
We separate the even and odd terms according to (4.30) and (4.31) to assemble the
polyphase matrix
h3 + h1 z h 2 + h0 z
H(z) = . (4.39)
−h2 − h0 z −1 h3 + h1 z −1
The first step of the Euclidean algorithm is to set a0 (z) = H00 (z) and b0 (z) = H01 (z).
We want to find q1 (z) and r1 (z) with deg(q1 ) = 0 and deg(r1 ) = 0 (hence q1 (z) = c and
r1 (z) = dz m ) such that a0 (z) = b0 (z)q1 (z) + r1 (z). Inserting all the terms yields
√ √ √ √ !
1− 3 3+ 3 3− 3 1+ 3
√ + √ z= √ + √ z c + r1 (z).
4 2 4 2 4 2 4 2
√
We choose to match the terms with z and obtain q1 (z) = 3. Then r1 (z) is found as
√
1− 3
r1 (z) = a0 (z) − b0 (z)q1 (z) = √ .
2
Next we set √ √
3− 3 1+ 3
a1 (z) = b0 (z) = √ + √ z,
4 2 4 2
√
1− 3
b1 (z) = r1 (z) = √ .
2
Chapter 4. Construction of biorthogonal wavelets 71
Now q2 (z) = c + dz, r2 (z) = 0 and the division is exact. We have a1 (z) = b1 (z)q2 (z).
Inserting all the terms yields
√ √
2+ 3 3
q2 (z) = − z− .
4 4
We also have √
1− 3
K = a2 (z) = b1 (z) = √
2
and √
−1 1+ 3
K =− √ .
2
We can now write
1−
√ ! √ √ !
√ 3 0
H00 (z) H01 (z) 2 √ 1 − 2+4 3 z − 3
√1 0
′ (z) H ′ (z) = 4
H10 11 0 − 1+√2 3 0 1 3 1
!
H00 (z)
√
H01 (z)
√
= .
− 2
3+
√ 3
− 1+√2 3
√ √
′ (z) = − 3+
Therefore H10 √ 3 and H ′ (z) = − 1+
√ 3 . According to (4.39) we also have
2 11 2
√ √
3 − 3 1 + 3 −1
−1
H10 (z) = −h2 − h0 z = √ − √ z ,
4 2 4 2
√ √
−1 1 − 3 3 + 3 −1
H11 (z) = h3 + h1 z = √ + √ z .
4 2 4 2
The term s(z) can then be computed as
′ ′
s(z) = H10 (z)H11 (z) − H11 (z)H10 (z).
To obtain the actual equations for implementation, we will apply the factorized matrix
stepwise on the even and odd components of an input signal S(z). The first step is
√1 0 S0 (z) S0 (z)
√ S0 (z)
= = ,
3 1 S1 (z) S1 (z) + 3S0 (z) D(1) (z)
Chapter 4. Construction of biorthogonal wavelets 72
P −n ,
P −n .
where S0 (z) = n s2n z S1 (z) = n s2n+1 z Hence the first equation reads
√
d(1)
n = s2n+1 + 3s2n .
√
1+ 3
s(1)
n = − √ s̃n ,
2
(1)
n = dn − sn−1 ,
d(1) (2)
√ √
(1) 2 + 3 (1) 3 (1)
s2n = sn + dn+1 + d ,
4 4 n
√
n − 3s2n .
s2n+1 = d(1)
An important fact to note is that the lifting implementation performs better than the the
standard Mallat algorithm. In our example of lifted Daubechies wavelet with two vanishing
moments there are 4 additions and 5 multiplications while in the Mallat algorithm there
are together 6 additions and 8 multiplications. For longer filters the complexity reduces
by a factor 1/2 (see [8]).
Bibliography 74
Bibliography
[1] A. Bultheel, Wavelets with Applications in signal and image processing, 2003.
[4] C. K. Chui, An Introduction to wavelets, Academic Press, Inc., San Diego, 1992.
[7] I. Daubechies, Ten Lectures on Wavelets, Society for Industrial & Applied Mathe-
matics, Philadelphia, 1992.
[8] I. Daubechies and W. Sweldens, Factoring wavelet transforms into lifting steps,
J. Fourier Anal. Appl., 4 (1998), pp. 247–269.
[9] R. Duffin and A. Schaeffer, A class of nonharmonic Fourier series, Trans. Amer.
Math. Soc., 72 (1952), pp. 341–366.
[10] H. Dym and H. P. McKean, Fourier Series and Integrals, Academic Press, New
York, 1972.
[11] G. B. Folland, Real Analysis: Modern Techniques and Their Applications, Wiley-
Interscience, second ed., 1999.
[12] C. Heil and D. Walnut, Continuous and discrete wavelet transforms, SIAM Re-
view, 31 (1989), pp. 628–666.
[13] E. Hernández and G. Weiss, A First Course on Wavelets, CRC Press, 1996.
[16] S. Mallat, A theory for multiresolution signal decomposition: The wavelet represen-
tation, IEEE Trans. on Pattern Analysis and Machine Intelligence, 11 (1989), pp. 674–
693.
[17] , A Wavelet Tour of Signal Processing, Academic Press, New York, second ed.,
1999.
[19] W. Sweldens, The lifting scheme: A new philosophy in biorthogonal wavelet con-
structions, in Wavelet Applications in Signal and Image Processing III, A. F. Laine
and M. Unser, eds., Proc. SPIE 2569, 1995, pp. 68–79.