67% found this document useful (3 votes)
3K views

Concise Introduction To Wavelets

This document provides an introduction to wavelets. It begins by establishing mathematical foundations including function spaces such as Lp and L2, Fourier transforms, frames and bases. It then defines the continuous wavelet transform and discusses discretization. The remainder of the document covers multiresolution analysis and construction of orthogonal and biorthogonal wavelets, including scaling functions, wavelet functions, vanishing moments, and lifting schemes.

Uploaded by

René Puschinger
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
67% found this document useful (3 votes)
3K views

Concise Introduction To Wavelets

This document provides an introduction to wavelets. It begins by establishing mathematical foundations including function spaces such as Lp and L2, Fourier transforms, frames and bases. It then defines the continuous wavelet transform and discusses discretization. The remainder of the document covers multiresolution analysis and construction of orthogonal and biorthogonal wavelets, including scaling functions, wavelet functions, vanishing moments, and lifting schemes.

Uploaded by

René Puschinger
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 79

A CONCISE INTRODUCTION TO WAVELETS

Ing. René Puschinger, 2007


Contents

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

3 Construction of orthogonal wavelets 17


3.1 Further properties of a scaling function . . . . . . . . . . . . . . . . . . . . . 18
3.2 Wavelets induced by a scaling function . . . . . . . . . . . . . . . . . . . . . 22
3.3 Vanishing moments and regularity . . . . . . . . . . . . . . . . . . . . . . . 24
3.4 Construction of compactly supported wavelets . . . . . . . . . . . . . . . . . 27
3.5 Determining φ and ψ from hn . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.6 Numerical computation of the scaling filter hn . . . . . . . . . . . . . . . . . 35
3.7 The Discrete Wavelet Transform - Mallat algorithm . . . . . . . . . . . . . 37
3.8 Plots of several scaling functions and wavelets . . . . . . . . . . . . . . . . . 39

4 Construction of biorthogonal wavelets 43


4.1 Exact reconstruction filters . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.2 Construction of symmetric biorthogonal wavelets with compact support . . 46
4.3 Alternative construction - the lifting scheme . . . . . . . . . . . . . . . . . . 55
4.4 Lifted wavelet transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.5 Interpretation of lifting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.6 Lifting in terms of z-tranform . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.7 Factorization of a polyphase matrix into lifting steps . . . . . . . . . . . . . 66
Chapter 0. Preface i

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].

1.1 The space Lp


For p ∈ N, we define
 Z 

Lp =
f : R 7→ C |f (x)| dx < +∞ ,
p

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

A similar discussion applies to sequences (of complex numbers), denoted by


c := (cj )j∈J ,
where J is a countable index set, which can be finite or infinite. If we define
( )
X

ℓp (J ) = (cj )j∈J |cn | < +∞ ,
p

n∈J
Chapter 1. Introduction 2

for p ∈ N, then ℓp (J ) is a Banach space with the corresponding norm


 1
X
p

kckp =  |cj | p

j∈J

and in particular, ℓ2 (J ) is a Hilbert space with the inner product


X
hc, di = cn dn .
n

In case J is infinite, we will write just ℓp instead of ℓp (J ).

1.2 Fourier transforms


For f ∈ L1 , the Fourier transform is defined and denoted by
Z
1
F (ξ) := (Ff )(ξ) = √ f (x)e−iξx dx. (1.1)

Given F = Ff ∈ L1 , the function f can be reconstructed by the inverse formula as
Z
1
f (x) = √ F (ξ)eiξx dξ. (1.2)

The reason for this particular normalization is the fact that the Fourier transform is then
an isometry (see below).
The convolution of two functions f, h ∈ L1 is defined by
Z
g(x) = (f ∗ h)(x) = f (t)h(x − t) dt.

In terms of the Fourier transform this can be stated as

G(ξ) = F (ξ)H(ξ),

which is the content of the convolution theorem.


A direct consequence of the convolution theorem is the Parseval formula: for f, h ∈
L1 ∩ L2 , we have
hFf, Fhi = hf, hi , (1.3)
which means that the Fourier transform preserves inner product. The same applies to the
L2 -norm:
kFf k2 = kf k2 , (1.4)
for f ∈ L1 ∩ L2 . This results immediately from the previous formula, setting h := f ,
and is refered to as the Plancherel formula. The Fourier transform is thus an isometric
operator.
When dealing with functions of the Hilbert space L2 , the formula (1.1) cannot be used
because it applies only to absolutely integrable functions. However, by a simple limiting
Chapter 1. Introduction 3

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

The inverse transform is given by


Z 2π
1
xn = X(ξ)eiξn dξ, (1.6)
2π 0

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.

1.3 Frames and bases


Frames were introduced in [9] in connection with a class of nonharmonic Fourier series.
They provide a general yet stable framework for various function representations. An
example of such a representation is
X
f= hf, ej i ej , ∀f ∈ L2 , (1.9)
j∈J

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

which after some manipulations with inner products yields


1X
hf, gi = hf, ej i hej , gi ,
α
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

With a slight abuse of notation one can rewrite this formula as


1X
f= hf, ej i ej . (1.12)
α
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

it follows that (ej )j∈J is nothing more than an orthonormal basis.


In following we see the derivation of a general expansion for arbitrary frames similar
to (1.9) or (1.12). If (ej )j∈J is a frame, we define a linear map T : L2 7→ ℓ2 (J) by

(T f )j = hf, ej i , ∀j ∈ J . (1.13)

By (1.10), T is bounded by a strictly positive constant β. Moreover, its adjoint T ∗ can be


computed as X
T ∗c = cj ej , (1.14)
j∈J
Chapter 1. Introduction 5

in the weak sense. 1)


If we define a linear operator S : L2 7→ L2 by S = T ∗ T , then
X
hSf, f i = kT f k2 = |hf, ej i|2 .
j∈J

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, in the operator form,


1 1
I ≤ S −1 ≤ I.
β α
The system (ẽj )j∈J is called the dual frame, because the dual frame of (ẽj )j∈J is again
(ej )j∈J . We will also denote T̃ the linear map associated with the dual frame as in (1.13):

(T̃ f )j = hf, ẽj i , ∀j ∈ J ,

and the dual frame operator S̃ is defined as S̃ = T̃ ∗ T̃ . Since S is self-adjoint, we have





(T S −1 f )j = S −1 f, ej = f, S −1 ej = hf, ẽj i = (T̃ f )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

in the weak sense.


1)
This follows from ∑ ∑
⟨T ∗ c, f ⟩ = ⟨c, T f ⟩ = cj ⟨f, ej ⟩ = cj ⟨ej , f ⟩ .
j∈J j∈J
Chapter 1. Introduction 6

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

hek , ẽj i = δk,j ,

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.

1.4 The continuous wavelet transform


In this section we will briefly review the (historically) first example of a wavelet transform,
neglecting some technical details. We will examine how the continuous transform is de-
fined and what properties must be satisfied to have an inverse transform. For a complete
reference, consult e.g. [4, 7, 17].
In subsequent chapters we will investigate a more sophisticated concept which leads
to an elegant description of the same problem, but it will then be enlightening to see the
connection with the continuous transform introduced here.
To define a wavelet one must first specify the function space where the analysis takes
place. In this introductory chapter we will consider only the Hilbert space L2 of functions
defined on the whole real line (to avoid boundary problems).
A wavelet is then be defined as any function ψ ∈ L2 , satisfying the admissibility
condition Z
|Ψ(ξ)|2
dξ = Cψ , with 0 < Cψ < +∞, (1.16)
|ξ|
where Ψ denotes the Fourier transform of ψ and Cψ is a constant depending only on ψ.
This condition is needed in order to have an inverse wavelet transform (defined below). We
will see that additional requirements are needed for practical analysis. Practical examples
of wavelets will be given later.
In many practical situations ψ will also be (absolutely) integrable and thus its Fourier
transform Ψ will be continuous which together with (1.16) implies Ψ(0) = 0, or equivalently,
Z
ψ(x) dx = 0,
Chapter 1. Introduction 7

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

CW Tψ (f, a, b) = hf, ψa,b i , (1.17)

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.

1.5 Discretization of the wavelet transform


The strength of the continuous wavelet transform lies in better time-frequency resolution
as opposed to the Short Time Fourier Transform. However, it turns out that, under
modest requirements on the analyzing wavelet, the continuous representation tends to be
superfluous in order to represent functions. We will discuss this briefly; a full exposition
is given in [7] or [4].
The idea is to restrict the “continuous” variables a and b in (1.17) to proper discrete
values so that for all a we have
[
supp(ψa,b ) = R.
b
Chapter 1. Introduction 8

Figure 1.1: Signal ‘chirp’ and its scalogram

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

This can be accomplished by putting a = a−j −j


0 , b = b0 a0 k, with a0 , b0 ∈ R, a0 6= 1 and
j, k ∈ Z, leading to
j
ψj,k (x) = a02 ψ(aj0 x − kb0 ).
The wavelet transform in its discrete form is then evaluated by means of the wavelet
coefficients hf, ψj,k i.
Let us examine how such a discretized wavelet transform actually leads to a stable
function representation.
A function f can be represented by means of the wavelet coefficients {hf, ψj,k i} if for
some different function g 6= f the wavelet coefficients {hg, ψj,k i} differ from {hf, ψj,k i}.
This is equivalent to saying that if for all j, k ∈ Z, hf, ψj,k i = 0 then f is zero.
Stability is generally defined as the property of having bounded output for some
bounded input. In our situation, a representation is said to be stable if for
P bounded ℓ2 -norm
of the sequence hf, ψj,k i the L2 -norm of f is likewise bounded, i.e., if j,k |hf, ψj,k i|2 ≤ ε,
then kf k2 ≤ δ. Assuming that the representation is stable, then by putting
√ f
g= ε·  1/2 ,
P
j,k |hf, ψj,k i|
2

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

implying the lower bound estimate in the definition of a frame:


X
αkf k2 ≤ |hf, ψj,k i|2 , (1.21)
j,k

where, in this particular case, we have α = δε . P


The converse implication is even more obvious - if j,k |hf, ψj,k i|2 is bounded then, due
to (1.21), kf k2 is also bounded.
It turns out that for all practical purposes (decay of ψ in frequency and in the inde-
pendent variable) the second frame estimate,
X
|hf, ψj,k i|2 ≤ βkf k2 ,
j,k

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

α= inf |Ψ(a0 ξ)| −


m 2
θ k θ − k ,
b0 |ξ|∈[1,a0 ] b0 b0 
m∈Z k∈Z,k̸=0
 
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

The concept of multiresolution is considered to be vital in the theory of wavelets. It


originates from S. Mallat [16] and since then it has been used as a tool for various wavelet
constructions.
The definition presented here is due to W. Sweldens [21], for the sake of generality it
provides. After discussing the basic concept, we will briefly review three important cases,
which will be further elaborated in subsequent chapters.

2.1 The definition, scaling functions


For this moment we will stick with a more general setting involving a general function
space L2 = (X , S, µ), see the introduction. For the time being, in terms of complexity this
amounts to the same setting as with our primary space L2 . In the subsequent two chapters
we will, however, find a necessity to abstract away from this general concept, but later, in
Chapter 4, we will return to this general setting.
A (primal) multiresolution analysis1) is defined as a sequence of closed subspaces
Vj ⊂ L2 , j ∈ J ⊂ Z, satisfying

1. For all j ∈ J , Vj ⊂ Vj+1 ,


S
2. j∈J Vj = L2 ,
T
3. If J = Z, then also j∈J Vj = {0},

4. For all j ∈ J , there exists a family of (primal) scaling functions {φj,k | k ∈ Kj }


constituting a Riesz basis of Vj , where Kj is a set of indices satisfying Kj ⊂ Kj+1 .

We assume that either J = Z or J = Nj0 , where Nj0 = {j0 , j0 + 1, j0 + 2, . . .} for some


j0 ∈ Z.
Recalling the introductory material, we know that for a family of scaling functions
{φj,k | k ∈ Kj } constituting a Riesz basis there exists a family {φ̃j,k | k ∈ Kj }, likewise
constituting a Riesz basis of some Ṽj . The latter family is referred to as dual scaling
1)
Instead of “analysis”, one may also use the terms “representation” or “approximation”. We will occa-
sionally refer to the same thing simply as “multiresolution”
Chapter 2. Multiresolution analysis 11

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 :

hφj,k1 , φ̃j,k2 i = δk1 ,k2 ,

for all k1 , k2 ∈ Kj and fixed j ∈ J .


A basic property of multiresolution analysis is a two-scale relation, also referred to
as a refinement or dilation equation:
X
φj,k = hj,k,l φj+1,l . (2.1)
l∈Kj+1

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 .

2.2 Wavelet functions


One can utilize scaling functions we have just introduced, to approximate any function f
in our space L2 , in the sense that

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 .

The equality Vj+1 = Vj ⊕ Wj can be iterated. In case there is a coarsest level j0 , we


obtain
Mj
Vj+1 = Vj0 ⊕ Wl ,
l=j0

whilst the second multiresolution property ensures that

M
+∞
L2 = Vj0 ⊕ Wl . (2.2)
l=j0
Chapter 2. Multiresolution analysis 12

If J = Z, then due to the third property it is possible to write

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

2.3 Vanishing moments and the order of multiresolution anal-


ysis
The dual wavelet functions ψ̃j,m are said to have N vanishing moments, if for all r ∈
N0 , r < N and j ∈ J , m ∈ Mj ,
Z
Pr ψ̃j,m dµ = 0,
X

where Pr ∈ C ∞ are linearly independent2) functions defined on X and P0 ≡ 1.


The fact that the dual wavelets ψ̃j,m have N vanishing moments can also
D be expressed
E
in terms of the corresponding scaling functions. Since W̃j ⊥ Vj , we have ψ̃j,m , φj,k = 0,
for all possible indices, implying
* +
X (r)
cj,k φj,k , ψ̃j,m = 0,
k∈Kj

(r)
where cj,k 6= 0 are arbitrarily chosen. But we also have
D E
P r , ψ̃j,m = 0, ∀r ∈ N0 , r < N.

Combining these two equations together yields


X (r)
Pr = cj,k φj,k , ∀r ∈ N0 , r < N,
k∈Kj

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

Conversely, if the scaling functions φj,k reproduce up to N linearly independent, C ∞


functions, then
Z D E X (r) D E
Pr ψ̃j,m dµ = P r , ψ̃j,m = cj,k φj,k , ψ̃j,m , ∀r ∈ N0 , r < N,
X k∈Kj

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

or, by means of scaling functions,


X (r)
P̃ r = c̃j,k φ̃j,k , ∀r ∈ N0 , r < Ñ .
k∈Kj

In this case we say that the order of the dual multiresolution analysis is Ñ .

2.4 Special instances of multiresolution


Now that we have established a fairly general framework, we will examine specific properties
of multiresolution, assuming some additional conditions may be specified.

Multiresolution leading to (classical) orthogonal wavelets


Herein we impose these essential constraints on a multiresolution analysis {Vj | j ∈ J }:
1. The underlying space where the analysis is done, is the space L2 of functions of finite
energy and the index set J is all Z.
2. The scaling functions φj,k are obtained from one single function φ by

φj,k = 2j/2 φ(2j · −k), (2.4)


with j, k ∈ Z.
3. The space Wj which is now defined as the orthogonal complement of Vj in Vj+1 is
required to possess an orthonormal basis. If this is the case, we will call the wavelets
orthogonal.
Without loss of generality, we may suppose that the scaling functions φj,k = 2j/2 φ(2j ·
−k) constitute an orthonormal basis of Vj , for if this was not the case, then obtaining a
new, orthonormal basis φ# j,k is only a matter of writing
  
2
j
2
 (Fφ)(ξ) 
−1  
φ# = √ F P  1  (2 · −k),
j
j,k
2π  |(Fφ)(ξ + 2lπ)| 2 2
l∈Z
Chapter 2. Multiresolution analysis 14

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

the dual multiresolution analysis Ṽj coincides with the primal, Vj .


In the following chapter, we will also discuss the third constraint in more depth, for
it is not immediately obvious that the space spanned by wavelets automatically has an
orthonormal basis. However, it will emerge that this is always possible, provided we have
a proper multiresolution analysis with the first two additional requirements mentioned
above. Moreover, it will turn out that the resulting wavelets likewise enjoy the property
of being obtained from one fixed function, in the sense that

ψj,k = 2j/2 ψ(2j · −k). (2.5)

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

or, in terms of the Fourier transform,


 
1 X ξ ξ
Φ(ξ) = √ hk e−i 2 k Φ .
2 k∈Z 2

This can be simplified to    


1 ξ ξ
Φ(ξ) = √ H Φ , (2.7)
2 2 2
P
where H(ξ) = k∈Z hk e−iξk is the Discrete Time Fourier Transform of the sequence hk .
We will refer to the sequence hk (or H(ξ), interchangeably) as a filter; later it will become
obvious why.
The sequence hk defined above is in ℓ2 , for we have hk = hφ, φ1,k i and, by the Parseval
identity, X
|hk |2 = 1.
k∈Z

As a consequence of the Dominated Convergence Theorem [18, 11], the interchange of


the sum and the integral when taking the Fourier transform of (2.6), is possible. This
possibility appears commonly throughout the text; additional comments may be found in
[22].
A vital property of such multiresolution is that of scale, meaning that f ∈ Vj is equiv-
alent to f (2 ·) ∈ Vj+1 . This is, again, a direct consequence of (2.4), since f ∈ Vj is
expressible as X X
f= cj,k φj,k = cj,k 2j/2 φ(2j · −k),
k∈Z k∈Z
Chapter 2. Multiresolution analysis 15

but then also X X


j+1
f (2 ·) = c′j,k 2 2 φ(2j+1 · −k) = c′j,k φj+1,k ,
k∈Z 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

property of invariance under dyadic integer translation, namely, f ∈ Vj is equivalent to


f (· − 2−j m), with m ∈ Z.
Since we are working with the space L2 , the property of vanishing moments may be
simplified to polynomial reproduction. In other words, one may take polynomials of degree
r as the linearly independent, C ∞ functions we denoted as Pr . We then say that the
wavelet ψ has N vanishing moments if
Z
xr ψ(x) dx = 0, ∀r ∈ N0 , r < N.

With respect to the


P scaling function, this means that any polynomial of degree less than N
is expressible as k∈Z ck φ(· − k). Later we will see how the number of vanishing moments
is connected with regularity of wavelets.
As we have already indicated, the details of this type of multiresolution analysis are
further elaborated in the following chapter, along with a possible construction of compactly
supported wavelets which are of particular importance.

Multiresolution leading to (classical) biorthogonal wavelets


This setting is fairly similar to that of orthogonal wavelets. The main difference is that
now we work in a fully biorthogonal manner, which has several significant consequences.
We will consider that the space Vj spanned by scaling functions has merely a Riesz
basis φj,k . The space spanned by the dual scaling functions φ̃j,k is again denoted by Ṽj .
The space Wj is defined as a complement of Vj in Vj+1 , in the sense that the sum
Vj+1 = Vj ⊕ Wj is direct, with Wj ⊥ V˜j . Hence we respect this multiresolution property
in its most general form.
What remains the same as in the previous case, is the fact that all the work is accom-
plished in L2 , under the requirement

φj,k = 2j/2 φ(2j · −k), φ̃j,k = 2j/2 φ̃(2j · −k).

This means that there are two scaling equations,


X√ X√
φ= 2hk φ(2 · −k), φ̃ = 2h̃k φ̃(2 · −k), (2.8)
k∈Z k∈Z

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

Multiresolution leading to second generation wavelets


In this case, we establish no further restrictions on the underlying multiresolution. The
space L2 = (X , S, µ) is much too general to utilize the Fourier transform as a construction
tool. Besides, the scaling functions are not necessarily translated and dilated versions of
one fixed function, so the Fourier transform would be practically of no effect. Instead,
we take advantage of a promising technique known as lifting, whose power lies also in the
fact that it provides a consistent way of building the classical wavelets we briefly discussed
above, as well. Lifting may even shed new light on the process and purpose of wavelet
analysis, for the principle may seem somewhat more “digestible” than that of classical
treatise.
Lifting is introduced in section 4.3.
Chapter 3. Construction of orthogonal wavelets 17

Chapter 3

Construction of orthogonal
wavelets

In this chapter we consider a classical multiresolution setting as proposed by S. Mallat.


From the vast range of literature, this survey is mainly based on [6, 7, 13, 15, 17].
For clarity, we begin by summarizing the requirements we have already imposed on
a multiresolution analysis (leading to classical wavelets). It consists of closed subspaces
Vj ⊂ L2 , satisfying

1. Vj ⊂ Vj+1 , ∀j ∈ Z

S
2. j∈J Vj = L2 ,

T
3. j∈J Vj = {0},

4. For all j ∈ J , there is a family of scaling functions {φj,k | k ∈ Z} constituting a


Riesz basis of Vj . The scaling functions φj,k are obtained from one single function φ
by φj,k = 2j/2 φ(2j · −k).

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

3.1 Further properties of a scaling function


We begin by deriving two auxiliary lemmas for assessing the property of orthonormality
and that of Riesz basis in terms of the Fourier transform.

Lemma 3.1. Let f ∈ L2 . The system {f (· − n) | n ∈ Z} is orthonormal if and only if


X 1
|F (ξ + 2kπ)|2 = , a.e.

k∈Z

Proof. The system {f (· − n) | n ∈ Z} is orthonormal if and only if hf (· − k), f (· − l)i = δk,l


or, equivalently, hf, f (· − l)i = δ0,l . Due to isometry of the Fourier Transform,
Z
hf, f (· − l)i = hF, Ff (· − l)i = F (ξ)F (ξ)eiξl dξ

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

The last expression has a form of an inverse


P Discrete Time Fourier Transform, implying
that hf, f (· − n)i = δ0,n is equivalent to k∈Z |F (ξ + 2kπ)| = 2π
2 1
. 

Lemma 3.2. Let S = {φ(· − n) | n ∈ Z} be a set of functions generating the space V0 .


The set S is a Riesz basis of V0 if and only if
X
A≤ |Φ(ξ + 2kπ)|2 ≤ B, a.e., (3.1)
k∈Z

for some strictly positive A, B.


P
Proof. Let f ∈ V0 with the expansion f (x) = n λn φ(· − n), λn not necessarily unique.
Taking the Fourier transform of both sides gives

F (ξ) = Λ(ξ)Φ(ξ),

where Λ(ξ) is 2π-periodic. It follows


Z Z
kf k = |F (ξ)| dξ = |Λ(ξ)|2 |Φ(ξ)|2 dξ
2 2

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

If Φ satisfies (3.1) then


Z 2π Z 2π
kf k ≤ B
2
|Λ(ξ)| dξ
2
and kf k ≥ A
2
|Λ(ξ)|2 dξ,
0 0

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). 

It is then simple to orthonormalize any Riesz basis {φ(· − n) | n ∈ Z} by putting

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π)|

with 2π-periodic Λ(ξ), we have


X
φ# = λn φ(· − n),
n∈Z

therefore the system φ# (· − n) generates V0 . Orthonormality follows from lemma 3.1.


The following necessary condition will prove to be fundamental in our development. It
states how the orthonormality of {φ(· − n) | n ∈ Z} reflects on the filter H(ξ) appearing
in the two-scale relation.
Chapter 3. Construction of orthogonal wavelets 20

Theorem 3.3. Let {φ(· − n) | n ∈ Z} be an orthonormal system in V0 . Then

|H(ξ)|2 + |H(ξ + π)|2 = 2, a.e.,

where H(ξ) is given by the two-scale relation,


   
1 ξ ξ
Φ(ξ) = √ H Φ . (3.4)
2 2 2

Proof. Orthonormality implies


X 1
|Φ(ζ + 2kπ)|2 = , a.e.

k∈Z

Applying (3.4) yields

X 1  ζ  2 

 2

H + kπ Φ ζ + kπ = 1 , a.e.,
2 2 2 2π
k∈Z

or, substituting ξ = ζ/2,

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 ).

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 ,

which will prove to be useful in later development.

Lemma 3.4. Let {φ(· − n) | n ∈ Z} be an orthonormal system of functions such that Φ is


2π-periodic and continuous in 0. Let H(ξ), given by (2.7), be 2π-periodic and continuous
and let H(ξ) satisfies |H(ξ)|2 + |H(ξ + π)|2 = 2. Then necessarily
Z
1

|Φ(0)| = φ(x) dx = √ .

Chapter 3. Construction of orthogonal wavelets 21

Proof. Evaluating the equation


|H(ξ)|2 + |H(ξ + π)|2 = 2
in ξ = 0 yields √
|H(0)| ≤ 2.
√ √
We show that |H(0)| = 2 by contradiction. If |H(0)| < 2, then √12 |H(ζ)| < 1 for ζ
small enough. By (2.7), for all ξ ∈ R,
         
1 ξ ξ 1 ξ ξ ξ
Φ(ξ) = √ Φ H = √ Φ 2
H 2
H = ... =
2 2 2 ( 2) 2 2 2 2
     
1 ξ ξ ξ
= √ Φ m
H m
...H ,
( 2) m 2 2 2
for m ≥ 1. Taking a limit m → +∞, we would derive ∀ξ Φ(ξ) = 0, which would mean
that φ is identically zero (up
√to a zero measure). This case was excluded in the definition.
Knowing that |H(0)| = 2 and that H is 2π-periodic, we have

|H(2kπ)| = 2.
Since
1
|Φ(2q+1 2kπ)| = √ |Φ(2q 2kπ)| |H(2q 2kπ)| = |Φ(2q 2kπ)|, ∀q ≥ 0, k ∈ Z,
2
we deduce |Φ(2q+1 2kπ)| = |Φ(2kπ)|.
For k 6= 0, the Riemann-Lebesgue lemma (lim|ξ|→+∞ Φ(ξ) = 0) ensures Φ(2kπ) = 0. By
lemma 3.1,
1 X X
= |Φ(ξ + 2kπ)|2 = |Φ(ξ + 2kπ)|2 + |Φ(ξ)|2 .

k∈Z k∈Z, k̸=0

Specially taking ξ = 0, we obtain |Φ(0)| = √1 .





We conclude this section by discussing a possible construction of a multiresolution


analysis, starting from a suitable choice of a scaling function φ, not from the sequence Vj
itself. If φ satisfies the two-scale relation
X
φ= hn φ(2 · −n), (3.5)
n∈Z

with hn ∈ ℓ2 and the Riesz basis property


X
A≤ |Φ(ξ + 2kπ)|2 ≤ B, a.e., A, B > 0, (3.6)
k∈Z

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 .

3.2 Wavelets induced by a scaling function


In this section we will present a derivaion of an explicit formula for an orthogonal wavelet
ψ ∈ W0 , meaning that the family {ψ0,m | m ∈ Z} is to constitute an orthonormal basis
of W0 . As in case of a scaling function, the multiresolution framework ensures that the
family {ψj,m = 2j/2 ψ(2j · −m) | m ∈ Z} then automatically constitutes an orthonormal
basis of Wj .
We begin by characterizing the space W0 . Since W0 is the orthogonal complement of
V0 in V1 , the condition
P f ∈√W0 is equivalent to f ∈ V1 and f ⊥ V0 . The property f ∈ V1
is equivalent to f = k∈Z 2λn φ(2 · −k), or
   
1 ξ ξ
F (ξ) = √ Λ Φ ,
2 2 2

for 2π-periodic Λ ∈ L2 . On the other hand, the property f ⊥ V0 is equivalent to


hf, φ(· − k)i = 0, ∀k ∈ Z, or
Z XZ 2π(l+1)
iξk
0= F (ξ)Φ(ξ)e dξ = F (ξ)Φ(ξ)eiξk dξ
l∈Z 2πl

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)

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

We already know that f ∈ W0 is equivalent to


   
1 ξ ξ ξ
F (ξ) = √ e−i 2 H +π Φ ν(ξ),
2 2 2
or,
   
1 ξ ξ ξ ν(ξ) ν(ξ)
F (ξ) = √ e−i 2 H +π Φ µ(ξ) = Ψ(ξ) = Γ(ξ)Ψ(ξ),
2 2 2 µ(ξ) µ(ξ)
with 2π-periodic Γ ∈ L2 . This can be rewritten as
X
f= cm ψ(· − m),
m∈Z

where cm ∈ ℓ2 . Hence ψ(· − m) generates W0 .


It remains to check that there are no other orthogonal wavelets than that given by
(3.9). Since ψ ∈ W0 , it must satisfy
   
1 ξ ξ ξ
Ψ(ξ) = √ e−i 2 H +π Φ µ(ξ),
2 2 2

with 2π-periodic µ ∈ L2 . Orthonormality of ψ(· − m) implies


 2 
1 X 1 X ξ ξ
 2

= |Ψ(ξ + 2kπ)| = |µ(ξ)|
2 2 H
+ kπ + π Φ + kπ
2π 2 2 2
k∈Z k∈Z

  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π

Therefore |µ(ξ)|2 = 1, which was to be proved.

3.3 Vanishing moments and regularity


In this section we address regularity questions regarding orthogonal wavelet bases. Spe-
cially, we will show that one can not achieve an orthogonal wavelet ψ to belong in C ∞ .

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

Proof. The proof by induction on r is based on [13].


1. Let r = 0. Since ψ is continuous, not identically constant and since the dyadic
rationals {2−j k | j, k ∈ Z} are dense in R, there exist j0 , k0 ∈ Z such that ψ(2−j0 k0 ) 6=
0. Orthogonality implies
Z
ψ(x)ψ(2j x − k) dx = 0, for all j 6= 0, k 6= 0.

We choose j > max(j0 , 0) and k = 2j−j0 k0 . This yields


Z
ψ(x)ψ(2j (x − 2−j0 k0 )) dx = 0.

By change of variables (t = 2j (x − 2−j0 k0 )),


Z
ψ(2−j t + 2−j0 k0 )ψ(t) dt = 0.

Applying the Dominated Convergence Theorem for j → +∞,


Z
ψ(2−j0 k0 ) ψ(t) dt = 0,

but ψ(2−j0 k0 ) 6= 0, implying Z


ψ(t) dt = 0.

2. Let us now assume that for all l = 0, 1, . . . , r − 1,


Z
xl ψ(x) dx = 0.
R
We want to show that xr ψ(x) dx = 0. Let us therefore auxiliary functions ν0 , ν1 , . . . νr ,
so that Z x
ν0 = ψ and ∀n = 1, . . . , r νn (x) = νn−1 (t) dt.
−∞
Since
C0
|ν0 (x)| = |ψ(x)| ≤ ,
(1 + |x|)r+1+ε
it follows that
Z x Z x
1 C1
|ν1 (x)| ≤ |ψ(t)| dt ≤ C0 dt = .
−∞ −∞ (1 + |t|)r+1+ε (1 + |x|)r+ε
Applying this logic r-times and using the definition of νn , we end up with
Cn
|νn (x)| ≤ , (3.12)
(1 + |x|)r−n+1+ε
where n = 0, 1, . . . , r. Integrating by parts,
Z Z
νr (x) dx = [xνr (x)]−∞ − xνr−1 (x) dx.
+∞
Chapter 3. Construction of orthogonal wavelets 26

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,

for some constants αn . Therefore


Z Z
x ψ(x) dx = 0 ⇔
r
νr (x) dx = 0. (3.13)

We know that {2−j k | j, k ∈ Z} is dense in R, ψ is not a polynomial (otherwise it


would not be bounded) and ψ (r) is continuous. Hence there exist j0 , k0 ∈ Z such that
ψ (r) (2−j0 k0 ) 6= 0. Orthogonality implies
Z
ψ(x)ψ(2j x − k) dx = 0.

Taking again j > max(j0 , 0) and k = 2j−j0 k0 ,


Z
ψ(x)ψ(2j (x − 2−j0 k0 ) dx = 0.

Now let us consider the following expression:


Z
ψ (r) (x)νr (2j (x − 2−j0 k0 )) 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.

By (3.13), this concludes the proof.


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

where K denotes the support of ψ. We have


Z Z Z
kψkL2 = hψ, ψi = ψ(x)ψ(x) dx = ψ(x)ψ(x) dx − p(x)ψ(x) dx =
2

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 .

3.4 Construction of compactly supported wavelets


In this section we will finally examine a method for construction of wavelets that are
orthogonal and compactly supported, with a nice property of having prescribed number of
vanishing moments.
First off, by (2.6) it is clear that if φ has compact support then hn is finite, and by
(3.10), ψ has likewise compact support.
Orthogonality is reflected on the filter H, defined by (2.7), as

|H(ξ)|2 + |H(ξ + π)|2 = 2,

where we dropped the “a.e.” because H is now a trigonometric polynomial.


The following lemma shows how the number of vanishing moments is reflected on the
filter H.
1)
Let f be a function with compact support. Then for each ε > 0 there exists a polynomial p such that
supx∈K |f (x) − p(x)| < ε, where K is the support of f .
Chapter 3. Construction of orthogonal wavelets 28

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.

Due to a standard property of the Fourier transform,


Z
j (l) l−j j dj h l i
ξ Ψ (ξ) = (−i) (−1) x f (x) exp(−iξx) dx,
dxj
we have
Ψ(l) (ξ) ξ=0 = 0, for all 0 ≤ l ≤ r. (3.14)
Since hn is finite, it follows that H(ξ) is 2π-periodic and continuous. By lemma 3.4, Φ(0)
is nonzero. Since
1
Ψ(ξ) = √ exp(−iξ/2)H(ξ/2 + π)Φ(ξ/2)
2
and since both Φ, Ψ ∈ C r , it follows that H(ξ) ∈ C r . Applying (3.14) gives

H (l) (ξ) ξ=π = 0, ∀0 ≤ l ≤ r.

This means that H has a zero of order at least r + 1 at ξ = π, implying


 r+1
1 + exp(−iξ)
H(ξ) = P (ξ),
2

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

Theorem 3.9 (Daubechies). Let H be a trigonometric polynomial satisfying


 N
√ 1 + exp(−iξ)
H(ξ) = 2 P (ξ), (3.17)
2

where P is a trigonometric polynomial. We have

|H(ξ)|2 + |H(ξ + π)|2 = 2, (3.18)

if and only if L(ξ) := |P (ξ)|2 is of the form


 
ξ 2
L(ξ) = q sin ,
2

with q(y) = qN (y) + y N R(y), where

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

Moreover, |H(ξ)|2 is an even trigonometric polynomial, which can be verified by a simple


change of variables ñ := k, k̃ := n. Taking (3.20) in account, we examine that L(ξ) =
|P (ξ)|2 is an even trigonometric polynomial and hence it can be expressed as L(ξ) =
Chapter 3. Construction of orthogonal wavelets 30

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 q(y) + y N q(1 − y) = 1, ∀y ∈ [0, 1], (3.22)


 
with q such that L(ξ) = q sin2 2ξ = q(y). It remains to determine q. By the Bezout
theorem2) , there exist unique polynomials q1 , q2 with degree less than or equal to N − 1,
such that
(1 − y)N q1 (y) + y N q2 (y) = 1. (3.23)
After a change of variables (y 7→ 1 − y), this gives

(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

q1 (y) = (1 − y)−N [1 − y N q1 (1 − y)].

Since (1 − y)−N can be expanded in Taylor polynomial plus a residue 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

But since q1 has degree deg(q1 ) ≤ N − 1, it follows

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

will denote qN := q1 . To give a complete characterization of the equation (3.22), we need


to obtain all solutions. If q is a solution to (3.22), then (subtracting the two equations for
q and qN ),
(1 − y)N [q(y) − qN (y)] + y N [q(1 − y) − qN (1 − y)] = 0. (3.25)
If R(y) is a polynomial antisymmetric with respect to 12 , i.e.

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(ξ).

Proof. We are looking for a trigonometric polynomial q of the form

X
M
q(ξ) = βn exp(iξn),
n=0

where βn ∈ R. Using the identity


   
n n
cos(nξ) = cos ξ −
n 2
sin ξ cos n−2
ξ+ sin4 ξ cosn−4 ξ − . . . ,
2 4
it is indeed possible to express the trigonometric polynomial p as an ”ordinary” polynomial
of the variable cos(ξ), i.e.
p(ξ) = p̃(cos ξ),
where p̃ is a polynomial with real coefficients and of degree M . Let v1 , . . . , vM be the roots
of p̃ (not necessarily all different). Then we can write

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

where z ∈ C, z = e−iξ and pj (z) = 1


2 − vj z + 12 z 2 . Clearly, the degree of P is 2M and

p(ξ) = eiM ξ P (e−iξ ), (3.26)


Chapter 3. Construction of orthogonal wavelets 32

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

|e−iξ − z j−1 | = |zj |−1 |e−iξ − zj |,

which then implies

|(e−iξ − zj )(e−iξ − z j−1 )| = |zj |−1 |e−iξ − zj |2 ,

or, for z = e−iξ on the unit circle,

|(z − zj )(z − z j−1 )| = |zj |−1 |z − zj |2 .

Hence we can write


J 2
Y

0 ≤ p(ξ) = |p(ξ)| = |P (e−iξ )| = C1 (e−iξ − zj )(e−iξ − zj ) ·

j=1
2 2
YK Y L

· (e−iξ − eiak )(e−iξ − e−iak ) (e−iξ − rl ) ,

k=1 l=1
Chapter 3. Construction of orthogonal wavelets 33

with C1 > 0. If we then define

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 coefficients of q are real. 

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.

3.5 Determining φ and ψ from hn


The above discussion suggests to start with H which satisfies (3.16) and (3.15). The
theorems 3.9 and 3.10 give complete characterizations of such H. Now we need to construct
Chapter 3. Construction of orthogonal wavelets 34

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

if Φ(0) is well defined and the infinite product converges.


Since we expect at least φ ∈ L1 and H to be a trigonometric polynomial (for compact
support), lemma 3.4 ensures |Φ(0)| = √12π . For convenience, we can assume Φ(0) = √12π ,
because it can at most produce a change of phase of φ. Note also that |Φ(0)| = √1 implies
√ 2π
H(0) = 2.
We have

H(ξ) √
√ ≤ 1 + √1 |H(ξ) − 2| = 1 + √1 |H(ξ) − H(0)| =
2 2 2

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

It is rather technical to prove that such φ defines a function in L2 with compact


support and that, under modest requirements on the corresponding filter H, the family
{φ(· − k) | k ∈ Z} is an orthonormal system. We conclude this section only by mentioning
the appropriate assertions. The proofs can be found in [16, 7].

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

or, equivalently, if the eigenvalue 1 of the [2(N2 − N1 ) − 1] × [2(N2 − N1 ) − 1]-dimensional


matrix A defined by
XN2
Al,k = hn hk−2l+n ,
n=N1

where −(N2 − N1 ) + 1 ≤ l, k ≤ (N2 − N1 ) + 1, is nondegenerate.

3.6 Numerical computation of the scaling filter hn


In this section we will examine the numerical algorithm which establishes the filter H (in
terms of its coefficients hn ).
To illustrate what is going on in a general case of N vanishing wavelet moments, let us
first compute the coefficients of H in case N = 1 and N = 2 [15].
Example. 1. Let N = 1. This is very simple, because |P (ξ)|2 = 1. In the Riesz-Fejér
theorem we choose P (ξ) = 1 and H thus equals
√ 1 + e−iξ
H(ξ) = 2· ,
2
implying h0 = h1 = √1 . Daubechies D1 wavelet is also called the Haar wavelet.
2

2. Now let N = 2. By Daubechies theorem 3.9,


L(y) = |P (y)|2 = 1 + 2y,
where y = sin2 2ξ . Since
ξ 1  iξ  1
y = sin2 = −e + 2 − e−iξ = (−z −1 + 2 − z),
2 4 4
where z = e−iξ , we can also write
 
1 −1
 −1 1 1 2
L(y) = 1 + −z + 2 − z = z − + 2z − z .
2 2 2
3)
This means that the size of K is 2π and that for all ξ in [−π, π], there exists l ∈ Z so that ξ + 2πl ∈ K.
Chapter 3. Construction of orthogonal wavelets 36

√ √
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

3.7 The Discrete Wavelet Transform - Mallat algorithm


In this section we will examine a fully discrete algorithm as proposed by Mallat [16].
Although the derivation is very simple, the result is central in our development. The
multiresolution framework enables us to represent any f ∈ L2 as

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.

The two-scale equations read


X √
φ(2j x − k) = hm−2k 2φ(2j+1 x − m), (3.28)
m∈Z
X √
ψ(2j x − k) = gm−2k 2φ(2j+1 x − m). (3.29)
m∈Z

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

Since the above integrals equal hf, φj+1,m i, we finally obtain


X
cjk = hm−2k cj+1
m (3.30)
m∈Z
X
djk = gm−2k cj+1
m . (3.31)
m∈Z
Chapter 3. Construction of orthogonal wavelets 38

Figure 3.1: The forward discrete wavelet transform

The process of computing cjk , djk from cj+1


k represents one step of the forward discrete
wavelet transform (analysis) and, naturally, it can be iterated so that we set cj+1 k to be
samples of the function f , assuming the index j is large enough. Note also that the formulas
(3.30) and (3.31) can be viewed as convolutions followed by downsampling (retaining every
second sample), that is, cj2k = cj+1
k ∗ h−k and dj2k = cj+1
k ∗ g−k respectivelly. This process
is often depicted graphically as in Figure 3.1.
Let us now examine the inverse process, i.e. the computation of cj+1 k from cjk and djk .
For this reason, consider f ∈ Vj+1 , that is
X j+1
f (x) = cj+1
k 2
2 φ(2j+1 x − k), (3.32)
k∈Z

or, by means of wavelets,


X X
f (x) = cjk 2j/2 φ(2j x − k) + djk 2j/2 ψ(2j x − k). (3.33)
k∈Z k∈Z

Inserting (3.28) and (3.29) in (3.33) yields


X X j+1
f (x) = cjk hm−2k 2 2 φ(2j+1 x − m)
k∈Z m∈Z
X X j+1
+ djk gm−2k 2 2 φ(2j+1 x − m).
k∈Z 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

It is now only a matter of taste to change the indexes so that


X X
cj+1
k = cj
m hk−2m + djm gk−2m . (3.34)
m∈Z m∈Z
Chapter 3. Construction of orthogonal wavelets 39

Figure 3.2: The inverse discrete wavelet transform

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.

3.8 Plots of several scaling functions and wavelets


In figures 3.3 - 3.7 the graphs of scaling functions and wavelets are depicted. They are
obtained by the cascade algorithm.
Chapter 3. Construction of orthogonal wavelets 40

Figure 3.3: Daubechies scaling function and wavelet, N = 2

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

Figure 3.4: Daubechies scaling function and wavelet, N = 4

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

Figure 3.5: Daubechies scaling function and wavelet, N = 6

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

Figure 3.6: Daubechies scaling function and wavelet, N = 8

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

Figure 3.7: Daubechies scaling function and wavelet, N = 9

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 .

The property hφ̃, ψ(· − k)i = 0 can be rewritten as


Z XZ 2π(l+1)
iξk
0= Φ̃(ξ)Ψ(ξ)e dξ = Φ̃(ξ)Ψ(ξ)eiξk dξ
l∈Z 2πl

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

In the same manner we derive


X
Ψ̃(ξ + 2πl)Φ(ξ + 2πl) = 0, a.e.,
l∈Z
X
Φ̃(ξ + 2πl)Φ(ξ + 2πl) = 1, a.e.,
l∈Z
X
Ψ̃(ξ + 2πl)Ψ(ξ + 2πl) = 1, a.e.
l∈Z

It is an easy exercise to substitute from the two-scale relations to these formulas to obtain

H̃(ξ)G(ξ) + H̃(ξ + π)G(ξ + π) = 0, (4.1)

G̃(ξ)H(ξ) + G̃(ξ + π)H(ξ + π) = 0, (4.2)


H̃(ξ)H(ξ) + H̃(ξ + π)H(ξ + π) = 2, (4.3)
G̃(ξ)G(ξ) + G̃(ξ + π)G(ξ + π) = 2, (4.4)
These equations can be expressed more compactly as

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.

4.1 Exact reconstruction filters


In the same manner as in Section 3.7 we obtain a biorthogonal version of the Mallat
algorithm, that is X
cjk = hm−2k cj+1
m , (4.5)
m∈Z
X
djk = gm−2k cj+1
m , (4.6)
m∈Z

for the analysis, and X X


cj+1
k = cjm h̃k−2m + djm g̃k−2m , (4.7)
m∈Z m∈Z
Chapter 4. Construction of biorthogonal wavelets 45

for the synthesis.


Now suppose that using the above algorithm we compute cjk and djk from cj+1 l and ĉj+1
l
from these cjk and djk . We say that the hn , gn , h̃n , g̃n are exact reconstrucion filters if
cj+1
l = ĉj+1
l , for all possible l.
It is convenient to express the relations (4.5), (4.6) and (4.7) in terms of the z-transform
(which arises from P the discrete-time Fourier
P transform by substituting z := eiξ ). We
denote H(z) = −n −n and similarly for H̃(z), G(z), G̃(z).
n∈Z hn z , H(z) = n∈Z h−n z
Let xn denotes the input sequence in the Mallat algorithm and X(z) the corresponding
z-transform.
In the analysis part we convolve X(z) with H(z) following by downsampling to produce
Y0 (z) and similarly, we convolve X(z) with G(z) and downsample to produce Y1 (z). The
downsampling can be expressed in terms of z-transform as
X 1 X  1 
x2n z −n = xn (z 2 )−k + xn (−z 2 )−k =
1 1 1 1
Xdown (z) = X(z 2 ) + X(−z 2 ) .
2 2
n∈Z n∈Z
(4.8)
Together, for the analysis part, we have
1 1 1 1 1

Y0 (z) = H(z 2 )X(z 2 ) + H(−z 2 )X(−z 2 ) , (4.9)
2
and
1 1 1 1 1

Y1 (z) = G(z 2 )X(z 2 ) + G(−z 2 )X(−z 2 ) . (4.10)
2
The synthesis part consists of upsampling Y0 (z) and convolving with H̃, upsampling
Y1 (z) and convolving with G̃, and finally adding these two intermediate results. The
upsampling operation can be expressed in terms of z-transform as
X
Yup (z) = yn z −2n = Y (z 2 ).
n∈Z

Hence, for the synthesis part, we have

X̂(z) = H̃(z)Y0 (z 2 ) + G̃(z)Y1 (z 2 ). (4.11)

Inserting (4.9) and (4.10) in (4.11) yields


1  1 
X̂(z) = H̃(z)H(z) + G̃(z)G(z) X(z) + H̃(z)H(−z) + G̃(z)G(−z) X(−z).
2 2

The condition X̂(z) = X(z) for exact reconstruction now reads

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,

H̃(ξ)H(ξ) + G̃(ξ)G(ξ) = 2, (4.12)


Chapter 4. Construction of biorthogonal wavelets 46

H̃(ξ)H(ξ + π) + G̃(ξ)G(ξ + π) = 0. (4.13)

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

G(ξ) = e−iξ H̃(ξ + π), (4.14)

G̃(ξ) = e−iξ H(ξ + π). (4.15)

The property (4.13) is then automatically satisfied. The property (4.12) can be rewritten,
using (4.14), (4.15), as

H(ξ)H(ξ) + H(ξ + π)H(ξ + π) = 2,

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].

4.2 Construction of symmetric biorthogonal wavelets with


compact support
In following we will examine how to design perfect reconstruction filters corresponding
to compactly supported and symmetric biorthogonal wavelets as proposed by Cohen,
Daubechies, Feauveau in [5].
We start by examining the property of vanishing moments. In the same manner as we
have done in lemma 3.6 we can derive

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+ε

for some ε > 0, C0 ≥ 0, and ψ ∈ C r . Then ψ̃ has r + 1 vanishing moments, i.e.,


Z
xl ψ̃(x) dx = 0, ∀l = 0, 1, . . . , r.
Chapter 4. Construction of biorthogonal wavelets 47

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

H(ξ)H̃(ξ) + H(ξ + π)H̃(ξ + π) = 2, (4.16)

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

In the second case we observe that the function f (ξ) iξ/2


 = e H(ξ) is 4π periodic and
symmetric around 0. Hence f is a polynomial in cos 2 and e−iξ/2 f (ξ) is reduced to a
ξ
 
trigonometric polynomial in ξ. This means that cos 2ξ is present in H(ξ) only in odd
power. All in all we have
 
−iξ/2 ξ
H(ξ) = e cos p0 (cos ξ),
2
P 2
where p0 is a polynomial, possibly generalized so that p0 (x) = N n
n=N1 an x . As in the
previous case, we expect H̃ to be of the same form as H and it follows that
 
−iξ/2 ξ 2l+1
H(ξ) = e cos q0 (cos ξ). (4.18)
2

Substituting (4.17) and (4.18) in (4.16), we derive


   
ξ 2(l+l̃) ξ 2(l+l̃)
cos q0 (cos ξ)q̃0 (cos ξ) + sin q0 (− cos ξ)q̃0 (− cos ξ) = 2,
2 2
Chapter 4. Construction of biorthogonal wavelets 48

for the first case and


   
ξ 2(l+l̃+1) ξ 2(l+l̃+1)
cos q0 (cos ξ)q̃0 (cos ξ) + sin q0 (− cos ξ)q̃0 (− cos ξ) = 2,
2 2

for the second case. This can be written in more compact form,

(1 − x)m P (x) + xm P (1 − x) = 1,

where m = l + ˜l in the first case and m = l + ˜l + 1 in the second case, and


 
2 ξ 1
P sin = q0 (cos ξ)q̃0 (cos ξ),
2 2

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

where R is a polynomial, antisymmetric with respect to 21 .


We can now present examples of biorthogonal symmetric scaling functions and wavelets
with compact cupport. This amounts to choosing l, ˜l, the polynomial R and finally the
factorization of P . One can choose q̃0 ≡ 1, R ≡ 0 and arbitrary l, ˜l. For Ñ = 2˜l and N = 2l
we have
 
√ ξ Ñ
H̃(ξ) = 2 cos
2
and
  l+l̃−1   
√ ξ N X l + ˜l − 1 + k ξ k
H(ξ) = 2 cos sin .
2 k 2
k=0

In the second case, i.e. Ñ = 2˜l + 1 and N = 2l + 1, we have


 Ñ
√ −iξ/2 ξ
H̃(ξ) = 2e cos
2

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

Then q0 , q̃0 are obtained as Y


q0 = (x − xj ),
j
Y
q̃0 = (x2 − 2Rezj x + |zj |2 ).
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),

ψ̃j,k = 2j/2 ψ̃(2j · −k),


with ψ, ψ̃ ∈ L2 defined as
   
iξ/2 ξ ξ
Ψ(ξ) = e H̃ +π Φ ,
2 2
   
iξ/2 ξ ξ
Ψ̃(ξ) = e H + π Φ̃ .
2 2
Then, for all f ∈ L2 ,
X D E X
f= f, ψ̃j,k ψj,k = hf, ψj,k i ψ̃j,k ,
j,k∈Z j,k∈Z

where the sequences converge strongly.


Chapter 4. Construction of biorthogonal wavelets 50

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

Then the following three statements are equivalent:


R
1. φ, φ̃ ∈ L2 and φ(x − k)φ̃(x − l) dx = δk,l .

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

Figure 4.1: Cohen-Daubechies-Feauveau scaling functions and wavelets, Ñ = 2, N = 2

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

Figure 4.2: Cohen-Daubechies-Feauveau scaling functions and wavelets, Ñ = 2, N = 4

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

Figure 4.3: Cohen-Daubechies-Feauveau scaling functions and wavelets, Ñ = 1, N = 3

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

Figure 4.4: Cohen-Daubechies-Feauveau scaling functions and wavelets, Ñ = 3, N = 5

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

4.3 Alternative construction - the lifting scheme


In this section we will discuss an alternative method of biorthogonal wavelet construction
by means of so-called lifting scheme, developed by W. Sweldens. We will consider the
general framework developed in Chapter 2 because this method does not rely on Fourier
transform.
For convenience we will recapitulate the general two-scale relations:
X
φj,k = hj,k,l φj+1,l , (4.19)
l∈Kj+1

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

This cascade algorithm ensures that the limit functions satisfy

lim cj = φj0 ,k0 (xk ).


j→∞ k

For details about this, see [21].


From the two-scale relations we also immediately obtain the general discrete wavelet
transform, that is X
cjk = h̃j,k,l cj+1
l ,
l∈L̃j,k
X
djm = g̃j,m,l cj+1
l ,
l∈L̃j,k

for the forward transform, and


X X
cj+1
l = hj,k,l cjk + gj,m,l djm ,
k∈Kj,l m∈Mj,l

for the inverse transform, where


cjk = hf, φ̃j,k i
and D E
djm = f, ψ̃j,m .
Note that we have, for this moment, interchanged the role of the primal and dual filters
which is permited if the sequences cjk and djk are defined as above (i.e. with φ̃j,k , ψ̃j,k
instead of φj,k , ψj,k ). The reason is to stay compatible with the article [21].
The formulas for the discrete wavelet transform can be expressed more compactly using
operators Hj and Gj mapping ℓ2 (Kj+1 ) 7→ ℓ2 (Kj ) and ℓ2 (Kj+1 ) 7→ ℓ2 (Mj ) respectively. If
we denote the sequences involved as

α = {αl | l ∈ Kj+1 ∈ ℓ2 (Kj+1 )},

β = {βk | k ∈ Kj ∈ ℓ2 (Kj )},


γ = {γm | m ∈ Mj ∈ ℓ2 (Mj )},
P
then we define β = Hj α if and only if βk = l∈Kj+1 hj,k,l αl and γ = Gj α if and only
P
if γm = l∈Kj+1 gj,m,l αl and analogously for operators H̃j and G̃j . The general discrete
wavelet transform can be now written as

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

cj+1 = Hj∗ cj + G∗j dj .

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.

Figure 4.6: The general discrete wavelet transform

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

H̃j = H̃jold + Sj G̃old


j ,
∗ old
j − Sj Hj ,
Gj = Gold

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 = H̃jold φ̃j+1 + Sj G̃old old


j φ̃j+1 = H̃j φ̃j+1 + Sj ψ̃j ,
∗ old
j φj+1 − Sj Hj φj+1 = ψj − Sj φj ,
ψ̃j = Gold old old

ψ̃j = G̃old
j φ̃j ,

or, in the index notation


φj,k = φold
j,k ,
X X
φ̃j,k = h̃old
j,k,l φ̃j+1,l + sj,k,m ψ̃j,m ,
l∈Kj+1 m∈Mj
X
old
ψj,m = ψj,m − sj,k,m φold
j,k ,
k∈Kj
X
old
ψ̃j,m = g̃j,k,m φ̃j+1,l .
l∈Kj+1

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.

4.4 Lifted wavelet transform


After discussing the basics of lifting we can introduce the fast lifted wavelet transform
which is based on lifting. The idea is to start with a trivial orthogonal multiresolution
analysis defined by operators Hj = H̃j = E : ℓ2 (Kj+1 ) 7→ ℓ2 (Kj ) and Gj = G̃j = D :
ℓ2 (Kj+1 ) 7→ ℓ2 (Mj ) where β = Eα if and only if βk = αk for k ∈ Kj and γ = Dα if and
only if γm = αm for m ∈ Mj . The perfect reconstruction properties are clearly satisfied so
that we have a pair of orthogonal filter operators. The resulting transform is called lazy
wavelet transform.
Generally, the lifting scheme can be written as

dj = G̃old cj+1 − S̃j∗ Hjold cj+1 ,

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.

Figure 4.7: Lifted wavelet transform

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

4.5 Interpretation of lifting


We begin this section with a simple example. Suppose we are given a sequence cj =
{cjn | n ∈ Z} which may represent samples of some function where some correlation between
neighboring samples is expected. To decorrelate the data one may apply the simple Haar
transform to obtain two sequences cj−1 and dj−1 with half the size of cj (we use different
normalization for convenience):

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 ,

and then we reuse dj−1


n in the computation of the average, cj−1
n :

dj−1
n
cnj−1 = cj2n + .
2

Now it is possible to store dj−1


n in place of cj2n+1 because cj2n+1 is not needed in the
computation of cj−1
n and then we can store cj−1 n in place of cj2n . The process is depicted
on figure 4.8. We see that it is a simple example of lifting we defined before.

Figure 4.8: Lifting the Haar wavelet


Chapter 4. Construction of biorthogonal wavelets 62

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

1. (evenj−1 , oddj−1 ) := split(cj ),

2. oddj−1 −= P (evenj−1 ),

3. evenj−1 += U (oddj−1 ).

The general lifting procedure is displayed on figure 4.9.


The inverse transform is simply obtained by running the code backwards:

1. evenj−1 −= U (oddj−1 ),

2. oddj−1 += P (evenj−1 ),

3. cj := merge(evenj−1 , oddj−1 ).

The inverse transform is depicted on figure 4.10.


Another amazing property of lifting is that the operators P and U can be generalized
to be non-linear, even irreversible! The reason is that the inverse lifted transform does not
require any knowledge of the inverse operators. This property is essential in implementing
Chapter 4. Construction of biorthogonal wavelets 63

Figure 4.9: General lifting step

Figure 4.10: General inverse lifting step

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.

4.6 Lifting in terms of z-tranform


We will find useful to examine lifting in terms of the z-transform and relate it with so-called
polyphase representaton. This and the following section originate from [14].
Let xPn be the input sequence (e.g. a discrete signal) and X(z) its z-transform so that
X(z) = n xn z −n . The splitting of X(z) into even and odd indices is obtained as

X(z) = Xeven (z 2 ) + z −1 Xodd (z 2 ),

where X
Xeven (z) = x2n z −n ,
n
Chapter 4. Construction of biorthogonal wavelets 64

Figure 4.11: A transform with two lifting steps

X
Xodd (z) = x2n+1 z −n .
n

Analogously, as in (4.8) we derive

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)

Similar argument applies to the update step:


    
1 S(z) Xeven (z) Xeven (z) + S(z)Xodd (z)
= ,
0 1 Xodd (z) Xodd (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

then we can write    


Xeven (z) Y0 (z)
H(z) = . (4.27)
Xodd (z) Y1 (z)
The purpose of the normalization factor K will become apparent in the following section.
If H(z) is given as in (4.26), we immediately obtain the inverse matrix H−1 (z):
"N   #  −1 
Y 1 0 1 −S (z) K 0
−1 i
H (z) = .
Ti (z) 1 0 1 0 K
i=1
Chapter 4. Construction of biorthogonal wavelets 65

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

p(z)q(z) = 1, for all z ∈ C. (4.28)

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.

2. If p(z) = αz m , then it is invertible because

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

H(z) = H00 (z 2 ) + zH01 (z 2 ), (4.30)

G(z) = H10 (z 2 ) + zH11 (z 2 ). (4.31)


Chapter 4. Construction of biorthogonal wavelets 66

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 )

if and only if the relations (4.30), (4.31) hold.


So far we have discussed the transition from a factored polyphase matrix to a non-lifted
polyphase representation. This was merely a matter of multiplying the matrices involved
together. We have also shown that this is equivalent with the filter approach. Now we are
ready to discuss the opposite approach, that is the factorization of a polyphase matrix into
lifting steps.

4.7 Factorization of a polyphase matrix into lifting steps


In this section we will show how any classical wavelet transform can be implemented using
lifting so that it will possess all the advantages that lifting provides, in particular it allows
for in-place calculations, reduced time complexity, and simple computation of the inverse
transform. For this reason we again impose the condition for classical setting, implying the
space we are working with is the space L2 and all scaling functions φj,k involved are obtained
from one fixed function φ by means of scaling and translation, i.e. φj,k = 2j/2 φ(2j · −k).
Our survey is based on [8, 14].
We want to show that for for any invertible matrix H(z) whose components are Laurent
polynomials, i.e.  
H00 (z) H01 (z)
H(z) = ,
H10 (z) H11 (z)
there exist K 6= 0 and Laurent polynomials T1 (z), . . . , TM (z) and S1 (z), . . . , SM (z) so that
 Y
M   
K 0 1 Si (z) 1 0
H(z) = . (4.32)
0 K −1 0 1 −Ti (z) 1
i=1

Note that invertibility in this case means that

det H(z) = H00 (z)H11 (z) − H01 (z)H10 (z)

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

a(z) = b(z)q(z) + r(z). (4.33)

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

an+1 (z) = bn (z),

bn+1 (z) = an (z) mod bn (z).


If N denotes the smallest integer with N < deg(b) + 1 such that bN (z) = 0 then aN (z) is
a greatest common divisor of a(z) and b(z).

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)

The second step is


a2 (z) = b1 (z),
b2 (z) = a1 (z) − b1 (z)q2 (z),
or,
        
a2 (z) 0 1 a1 (z) 0 1 0 1 H00 (z)
= = .
b2 (z) 1 −q2 (z) b1 (z) 1 −q2 (z) 1 −q1 (z) H01 (z)

After N steps, we obtain


  " 1  #  
aN (z) Y 0 1 H00 (z)
= .
0 1 −qn (z) H01 (z)
n=N
Chapter 4. Construction of biorthogonal wavelets 68

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

or, after transposing,


    Y
1   
H00 (z) H01 (z) K 0 1 q2n (z) 1 0
′ (z) H ′ (z) = . (4.36)
H10 11 0 K −1 0 1 q2n−1 (z) 1
n=N/2

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

G′ (z) = G(z) + s(z 2 )H(z), (4.37)

where s(z) is a Laurent polynomial.

Proof. The polyphase representation of H and G is obtained using (4.30) and (4.31) as

H(z) = H00 (z 2 ) + zH01 (z 2 ),

G(z) = H10 (z 2 ) + zH11 (z 2 ).


Substituting this into (4.37) yields
   
G′ (z) = H10 (z 2 ) + s(z 2 )H00 (z 2 ) + z H11 (z 2 ) + s(z 2 )H01 (z 2 ) = H10
′ ′
(z 2 ) + zH11 (z 2 ),

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)

and its determinant equals

det H′ (z) = H00 (z) [H11 (z) + s(z)H01 (z)] − H01 (z) [H10 (z) + s(z)H00 (z)]

= H00 (z)H11 (z) − H01 (z)H10 (z) = det H(z) = 1,


where det H(z) denotes the polyphase matrix of the original filters H, G. Its determinant
is by the assumptions equal one. 

From (4.38) in the above lemma it also follows that



H10 (z) = H10 (z) − s(z)H00 (z),

H11 (z) = H11 (z) − s(z)H01 (z),
or, in matrix form,
 ′ (z)
   
H00 (z) H10 −s(z) H10 (z)
′ (z) = .
H01 (z) H11 1 H11 (z)

From (4.29) it follows that


  ′ (z) ′ (z)
  
−s(z) H11 −H10 H10 (z)
′ (z) = .
1 −H01 (z) H00 H11 (z)
′ (z)H (z) − H ′ (z)H (z). Multiplying (4.36) with
Hence s(z) = H10 11 11 10
 
1 0
,
−s(z) 1
Chapter 4. Construction of biorthogonal wavelets 70

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).

The last lifting step q3 (z) is obtained as


√ !2
1− 3 √
q3 (z) = −K 2 s(z) = √ (2 + 3)z −1 = z −1 .
2

The complete factorization is given by


1−
√ !  √ √ ! 
√ 3 0
2 √
1 0 1 − 2+4 3 z − 3
√1 0
H(z) = 4 .
0 − 1+√ 3 z −1 1 0 1 3 1
2

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 .

The second step is !


√ √ 
1 − 2+4 3 z − 3
S0 (z)
4
0 1 D(1) (z)
√ √ !  
S0 (z) − 2+4 3 zD(1) (z) − 43 D(1) (z) S (1) (z)
= = .
D(1) (z) D(1) (z)
It follows that the second equation is
√ √
2 + 3 (1) 3 (1)
s(1)
n = s2n − dn+1 − d .
4 4 n
The third step is
   (1)     (1) 
1 0 S (z) S (1) (z) S (z)
= = .
z −1 1 D(1) (z) D(1) (z) + z −1 S (1) (z) D(2) (z)

Consequently, the third equation reads


(1)
d(2) (1)
n = dn + sn−1 .

The final normalization step gives



1 − 3 (1)
s̃n = √ sn ,
2

1 + 3 (2)
dn = − √ dn .
˜
2
We summarize all the equations:

d(1)
n = s2n+1 + 3s2n ,
√ √
2 + 3 (1) 3 (1)
s(1)
n = s2n − dn+1 − d ,
4 4 n
(1)
d(2) (1)
n = dn + sn−1 ,

1 − 3 (1)
s̃n = √ sn ,
2

1 + 3 (2)
dn = − √ dn .
˜
2
The inverse transformation is simply found by running the code backwards:

1− 3˜
dn = √ dn ,
(2)
2
Chapter 4. Construction of biorthogonal wavelets 73


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.

[2] C. S. Burrus, R. A. Gopinath, and H. Guo, Introduction to Wavelets and Wavelet


Transforms, Prentice Hall, New Jersey, 1998.

[3] O. Christensen and T. K. Jensen, An Introduction to the Theory of Bases,


Frames, and Wavelets, Technical University of Denmark, 1999.

[4] C. K. Chui, An Introduction to wavelets, Academic Press, Inc., San Diego, 1992.

[5] A. Cohen, I. Daubechies, and J. Feauveau, Biorthogonal bases of compactly


supported wavelets, Comm. Pure Appl. Math, 45 (1992), pp. 485–560.

[6] I. Daubechies, Orthonormal bases of compactly supported wavelets, Comm. Pure


Appl. Math., 41 (1988), pp. 909–996.

[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.

[14] A. Jensen and A. la Cour-Harbo, Ripples in Mathematics, Springer, 2001.

[15] F. Keinert, Wavelets and Multiwavelets, CRC Press, 2004.


Bibliography 75

[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.

[18] W. Rudin, Real and Complex analysis, McGraw-Hill, London, 1970.

[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.

[20] , The lifting scheme: A custom-design construction of biorthogonal wavelets,


Appl. Comput. Harmon. Anal., 3 (1996), pp. 186–200.

[21] , The Lifting Scheme: A Construction of Second Generation Wavelets, SIAM J.


Math. Anal., 29 (1997), pp. 511–546.

[22] D. F. Walnut, An introduction to wavelet analysis, Birkhauser, Boston, 2002.

[23] R. M. Young, An Introduction to Nonharmonic Fourier Series, Academic Press,


1980.

You might also like