Basics of Wavelets: Isye8843A, Brani Vidakovic Handout 20
Basics of Wavelets: Isye8843A, Brani Vidakovic Handout 20
1 Basics of Wavelets
The first theoretical results in wavelets are connected with continuous wavelet decompositions of L2 func-
tions and go back to the early 1980s. Papers of Morlet et al. (1982) and Grossmann and Morlet (1985) were
among the first on this subject.
Let ψa,b (x), a ∈ R\{0}, b ∈ R be a family of functions defined as translations and re-scales of a single
function ψ(x) ∈ L2 (R),
µ ¶
1 x−b
ψa,b (x) = p ψ . (1)
|a| a
Normalization by √1 ensures that ||ψa,b (x)|| is independent of a and b. The function ψ (called the
|a|
wavelet function or the mother wavelet) is assumed to satisfy the admissibility condition,
Z
|Ψ(ω)|2
Cψ = dω < ∞, (2)
R |ω|
R
where Ψ(ω) = R ψ(x)e−ixω dx is the Fourier transformation of ψ(x). The admissibility condition (2)
implies
Z
0 = Ψ(0) = ψ(x)dx.
R R
Also, if ψ(x)dx = 0 and (1 + |x|α )|ψ(x)|dx < ∞ for some α > 0, then Cψ < ∞.
Wavelet functions are usually normalized to “have unit energy”, i.e., ||ψa,b (x)|| = 1.
For any L2 function f (x), the continuous wavelet transformation is defined as a function of two variables
Z
CWT f (a, b) = hf, ψa,b i = f (x)ψa,b (x)dx.
Here the dilation and translation parameters, a and b, respectively, vary continuously over R\{0} × R.
Resolution of Identity. When the admissibility condition is satisfied, i.e., Cψ < ∞, it is possible to find the
inverse continuous transformation via the relation known as resolution of identity or Calderón’s reproducing
identity,
Z
1 da db
f (x) = CWT f (a, b)ψa,b (x) .
Cψ R2 a2
Z ∞
|Ψ(ω)|2
Cψ = dω < ∞, (3)
0 ω
1
and the resolution of identity relation takes the form
Z ∞ Z ∞
1 1
f (x) = CWT f (a, b)ψa,b (x) da db. (4)
Cψ −∞ 0 a2
Localization. Let f (x) = δ(x − x0 ) be the Dirac pulse at the point x0 . Then, CWT f (a, b) = √1 ψ( x0 −b ).
a a
Reproducing Kernel Property. Define K(u, v; a, b) = hψu,v , ψa,b i. Then, if F (u, v) is a continuous
wavelet transformation of f (x),
Z ∞ Z ∞
1 1
F (u, v) = K(u, v; a, b)F (a, b) da db,
Cψ −∞ 0 a2
i.e., K is a reproducing kernel. The associated reproducing kernel Hilbert space (RKHS)
R ∞ isR ∞
defined as a
CWT image of L2 (R) – the space of all complex-valued functions F on R for which Cψ −∞ 0 |F (a, b)|2 daa2db
2 1
is finite.
R
Characterization of Regularity. Let (1 + |x|) |ψ(x)| dx < ∞ and let Ψ(0) = 0. If f ∈ Cα (Hölder space
with exponent α), then
d2 2 2
ψ(x) = 2
[−e−x /2 ] = (1 − x2 )e−x /2
dx
is a wavelet [known as the “Mexican hat” or Marr’s wavelet.
By direct calculation one may obtain Cψ = 2π.
2
a6
rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
r r r r r r r r r r r r r r r r r r r r r r r r r
r r r r r r r r r r r r r
r rr r rr r rr r
r -
0 b
d 1 1
Example 1.2 Poisson wavelet. The function ψ(x) = −(1 + dx ) π 1+x 2 is a wavelet [known as the Poisson
wavelet. The analysis of functions with respect to this wavelet is related to the boundary value problem of
the Laplace operator.
The continuous wavelet transformation of a function of one variable is a function of two variables.
Clearly, the transformation is redundant. To “minimize” the transformation one can select discrete values of
a and b and still have a transformation that is invertible. However, sampling that preserves all information
about the decomposed function cannot be coarser than the critical sampling.
The critical sampling (Fig. 1) defined by
will produce the minimal basis. Any coarser sampling will not give a unique inverse transformation; that
is, the original function will not be uniquely recoverable. Moreover under mild conditions on the wavelet
function ψ, such sampling produces an orthogonal basis {ψjk (x) = 2j/2 ψ(2j x − k), j, k ∈ Z}.
There are other discretization choices. For example, selecting a = 2−j , b = k will lead to non-
decimated (or stationary) wavelets. For more general sampling, given by
a = a−j −j
0 , b = k b0 a0 , j, k ∈ Z, a0 > 1, b0 > 0, (7)
numerically stable reconstructions are possible if the system {ψjk , j, k ∈ Z} constitutes a frame. Here
à !
j/2 x − k b0 a−j j/2
ψjk (x) = a0 ψ 0
= a0 ψ(aj0 x − k b0 ),
a−j
0
3
1.1 Multiresolution Analysis
A multiresolution analysis (MRA) is a sequence of closed subspaces Vn , n ∈ Z in L2 (R) such that they lie
in a containment hierarchy
The nested spaces have an intersection that contains the zero function only and a union that is dense in L(R),
∩n Vj = {0}, ∪j Vj = L2 (R).
[With A we denoted the closure of a set A]. The hierarchy (8) is constructed such that (i) V -spaces are
self-similar,
and (ii) there exists a scaling function φ ∈ V0 whose integer-translates span the space V0 ,
( )
X
V0 = f ∈ L2 (R)| f (x) = ck φ(x − k) ,
k
X √
φ(x) = hk 2φ(2x − k), (10)
k∈Z
for some coefficients hk , k ∈ Z. This equation is called the scaling equation (or two-scale equation) and it
is fundamental in constructing, exploring, and utilizing wavelets.
ADD BASES FOR Vj .
ANY L2 can be projected on Vj
In the wavelet literature, the reader may encounter an indexing of the multiresolution subspaces, which
is the reverse of that in (8),
4
Theorem 1.1 For the scaling function it holds
Z
φ(x)dx = 1,
R
or, equivalently,
Φ(0) = 1,
R −iωx dx.
where Φ(ω) is Fourier transformation of φ, R φ(x)e
The coefficients hn in (10) are important in connecting the MRA to the theory of signal processing. The
(possibly infinite) vector h = {hn , n ∈ Z} will be called a wavelet filter. It is a low-pass (averaging) filter
as will become clear later by considerations in the Fourier domain.
To further explore properties of multiresolution analysis subspaces and their bases, we will often work
in the Fourier domain. Define the function m0 as follows:
1 X 1
m0 (ω) = √ hk e−ikω = √ H(ω). (12)
2 k∈Z 2
The function in (12) is sometimes called the transfer function and it describes the behavior of the associated
filter h in the Fourier domain. Notice that the function m0 is periodic √with the period 2π and that the filter
taps {hn , n ∈ Z} are the Fourier coefficients of the function H(ω) = 2 m0 (ω).
In the Fourier domain, the relation (10) becomes
³ω ´ ³ω ´
Φ(ω) = m0 Φ , (13)
2 2
where Φ(ω) is the Fourier transformation of φ(x). Indeed,
Z ∞
Φ(ω) = φ(x)e−iωx dx
−∞
X√ Z ∞
= 2 hk φ(2x − k)e−iωx dx
k −∞
X hk Z ∞
−ikω/2
= √ e φ(2x − k)e−i(2x−k)ω/2 d(2x − k)
k
2 −∞
X hk ³ω ´
= √ e−ikω/2 Φ
2 2
k
³ω ´ ³ω ´
= m0 Φ .
2 2
By iterating (13), one gets
∞
Y ³ω´
Φ(ω) = m0 , (14)
2n
n=1
which is convergent under very mild conditions on rates of decay of the scaling function φ. There are
several sufficient conditions for convergence of the product in (14). For instance, the uniform convergence
5
on compact sets is assured if (i) m0 (ω) = 1 and (ii) |m0 (ω) − 1| < C|ω|² , for some positive C and ². See
also Theorem 1.2.
Next, we prove two important properties of wavelet filters associated with an orthogonal multiresolution
analysis, normalization and orthogonality.
Normalization.
X √
hk = 2. (15)
k∈Z
Proof:
Z √ X Z
φ(x)dx = 2 hk φ(2x − k)dx
k
√ X Z
1
= 2 hk φ(2x − k)d(2x − k)
2
k
√ Z
2X
= hk φ(x)dx.
2
k
R
Since φ(x)dx 6= 0 by assumption, (15) follows.
This result also follows from m0 (0) = 1.
Orthogonality. For any l ∈ Z,
X
hk hk−2l = δl . (16)
k
Proof: Notice first that from the scaling equation (10) it follows that
√ X
φ(x)φ(x − l) = 2 hk φ(2x − k)φ(x − l) (17)
k
√ X √ X
= 2 hk φ(2x − k) 2 hm φ(2(x − l) − m).
k m
" Z #
X X 1
δl = 2 hk hm φ(2x − k)φ(2x − 2l − m) d(2x)
m
2
k
XX
= hk hm δk,2l+m
k m
X
= hk hk−2l .
k
6
An important special case is l = 0 for which (16) becomes
X
h2k = 1. (18)
k
One consequence of the orthogonality condition (16) is the following: the convolution of filter h with
itself, f = h ? h, is an à trous.2
The fact that the system {φ(• − k), k ∈ Z} constitutes an orthonormal basis for V0 can be expressed in
the Fourier domain in terms of either Φ(ω) or m0 (ω).
(a) In terms of Φ(ω):
∞
X
|Φ(ω + 2πl)|2 = 1. (19)
l=−∞
By the [ PAR ] property of the Fourier transformation and the 2π-periodicity of eiωk one has
Z
δk = φ(x)φ(x − k)dx
R
Z
1
= Φ(ω)Φ(ω)eiωk dω
2π R
Z 2π X∞
1
= |Φ(ω + 2πl)|2 eiωk dω. (20)
2π 0
l=−∞
The last line in (20) is the Fourier coefficient ak in the Fourier series decomposition of
∞
X
f (ω) = |Φ(ω + 2πl)|2 .
l=−∞
Remark 1.1 Utilizing the identity (19), any set of independent functions spanning V0 , {φ(x − k), k ∈ Z},
can be orthogonalized in the Fourier domain. The orthonormal basis is generated by integer-shifts of the
function
Φ(ω)
F −1 qP . (21)
∞
l=−∞ |Φ(ω + 2πl)|2
This normalization in the Fourier domain is used in constructing of some wavelet bases.
2
The attribute à trous (Fr.) ( ≡ with holes) comes from the property f2n = δn , i.e., each tap on even position in f is 0, except
the tap f0 . Such filters are also called half-band filters.
7
(b) In terms of m0 :
∞
X
|m0 (ω + lπ)|2 |Φ(ω + lπ)|2 = 1. (23)
l=−∞
Now split the sum in (23) into two sums – one with odd and the other with even indices, i.e.,
∞
X
1 = |m0 (ω + 2kπ)|2 |Φ(ω + 2kπ)|2 +
k=−∞
X∞
|m0 (ω + (2k + 1)π)|2 |Φ(ω + (2k + 1)π)|2 .
k=−∞
To simplify the above expression, we use relation (19) and the 2π-periodicity of m0 (ω).
∞
X ∞
X
2 2 2
1 = |m0 (ω)| |Φ(ω + 2kπ)| + |m0 (ω + π)| |Φ((ω + π) + 2kπ)|2
k=−∞ k=−∞
2 2
= |m0 (ω)| + |m0 (ω + π)| .
Whenever a sequence of subspaces satisfies MRA properties, there exists (though not unique) an or-
thonormal basis for L2 (R),
such that {ψjk (x), j-fixed, k ∈ Z} is an orthonormal basis of the “difference space” Wj = Vj+1 ª Vj . The
function ψ(x) = ψ00 (x) is called a wavelet function or informally the mother wavelet.
Next, we detail the derivation of a wavelet function from the scaling function. Since ψ(x) ∈ V1 (because
of the containment W0 ⊂ V1 ), it can be represented as
X √
ψ(x) = gk 2φ(2x − k), (25)
k∈Z
1 X
m1 (ω) = √ gk e−ikω . (26)
2 k
8
By mimicking what was done with m0 , we obtain the Fourier counterpart of (25),
ω ω
Ψ(ω) = m1 ( )Φ( ). (27)
2 2
The spaces W0 and V0 are orthogonal by construction. Therefore,
Z Z
1
0= ψ(x)φ(x − k)dx = Ψ(ω)Φ(ω)eiωk dω
2π
Z 2π ∞
X
1
= Ψ(ω + 2lπ)Φ(ω + 2lπ)eiωk dω.
2π 0 l=−∞
∞
X
Ψ(ω + 2lπ)Φ(ω + 2lπ) = 0.
l=−∞
By taking into account the definitions of m0 and m1 , and by mimicking the derivation of (22), we find
From (28), we conclude that there exists a function λ(ω) such that
³ ´
(m1 (ω), m1 (ω + π) ) = λ(ω) m0 (ω + π), − m0 (ω) . (29)
Any function λ(ω) of the form e±iω S(2ω), where S is an L2 ([0, 2π]), 2π-periodic function, will satisfy
(28); however, only the functions for which |λ(ω)| = 1 will define an orthogonal basis ψjk of L2 (R).
To summarize, we choose λ(ω) such that
(iii) |λ(ω)|2 = 1.
Standard choices for λ(ω) are −e−iω , e−iω , and eiω ; however, any other function satisfying (i)-(iii) will
generate a valid m1 . We choose to define m1 (ω) as
9
since it leads to a convenient and standard connection between the filters h and g.
The form of m1 and the equation (19) imply that {ψ(• − k), k ∈ Z} is an orthonormal basis for W0 .
Since |m1 (ω)| = |m0 (ω + π)|, the orthogonality condition (22) can be rewritten as
1 X
m1 (ω) = −e−iω √ hk ei(ω+π)k
2 k
1 X
= √ (−1)1−k hk e−iω(1−k)
2 k
1 X
= √ (−1)n h1−n e−iωn ,
2 n
we relate gn and hn as
In signal processing literature, the relation (33) is known as the quadrature mirror relation and the filters h
and g as quadrature mirror filters.
Remark 1.2 Choosing λ(ω) = eiω leads to the rarely used high-pass filter gn = (−1)n−1 h−1−n . It is
sometimes convenient to define gn as (−1)n h1−n+M , where M is a “shift constant.” Such re-indexing of g
affects only the shift-location of the wavelet function.
1
h0 = h1 = √ .
2
Now, the transfer functions become
10
µ ¶ µ ¶
1 1 1 1 1 + e−iω
m0 (ω) = √ √ e−iω0 +√ √ e−iω1 = .
2 2 2 2 2
and
µ ¶
−iω −iω 1 1 iω 1 − e−iω
m1 (ω) = −e m0 (ω + π) = −e − e = .
2 2 2
ix −ix
Notice that m0 (ω) = |m0 (ω)|eiϕ(ω) = cos ω2 · e−iω/2 (after cos x = e +e2 ). Since ϕ(ω) = − ω2 , Haar’s
wavelet has linear phase, i.e., the scaling function is symmetric in the time domain. The orthogonality
condition |m0 (ω)|2 + |m1 (ω)|2 = 1 is easily verified, as well.
Relation (27) becomes
1 − e−iω/2 ³ ω ´ 1 ³ ω ´ 1 ³ ω ´ −iω/2
Ψ(ω) = Φ = Φ − Φ e ,
2 2 2 2 2 2
and by applying the inverse Fourier transformation we obtain
in the time-domain. Therefore we “discovered” the Haar wavelet function ψ. From the expression for m1
or by inspecting the representation of ψ(x) by φ(2x) and φ(2x − 1), we “conclude” that g0 = −g−1 = √12 .
The Haar basis is not an appropriate basis for all applications for several reasons. The building blocks in
Haar’s decomposition are discontinuous functions that obviously are not effective in approximating smooth
functions. Although the Haar wavelets are well localized in the time domain, in the frequency domain they
decay at the slow rate of O( n1 ).
µ ¶N
1 + e−iω
m0 (ω) = L(ω), (35)
2
where L(ω) is a trigonometric polynomial. Indeed, since ψ has N vanishing moments, then Ψ(n) (0) =
0, n = 0, 1, . . . , N − 1. By differentiating (27), we get
(n)
[m1 (ω)Φ(ω)]ω=0 = 0, n = 0, 1, . . . , N − 1.
(n) (n)
Since Φ(0) = 1, it follows that m1 (0) or, equivalently, m0 (π) = 0, for n = 0, 1, . . . , N − 1. Thus,
m0 (ω) has to be as in (35).
11
In terms of
³ ω ´N
M0 (ω) = |m0 (ω)|2 = cos2 · |L(ω)|2 ,
2
the orthogonality condition (22) becomes
M0 (ω) + M0 (ω + π) = 1. (36)
ω
(1 − y)N P (y) + y N P (1 − y) = 1, (y = sin2 ). (37)
2
By Bezout’s result (outlined below), there exists a unique solution of the functional equation (37). It can
be found by the Euclidean algorithm since the polynomials (1 − y)N and y N are relatively prime.
Lemma 1.1 (Bezout) If p1 and p2 are two polynomials of degree n1 and n2 , respectively, with no common
zeroes, then there exist unique polynomials q1 and q2 of degree n2 − 1 and n1 − 1, respectively, so that
For the proof of the lemma, we direct the reader to Daubechies ([?], 169-170). The unique solution of (37)
with degree deg(P (y)) ≤ N − 1 is
N
X −1 µ ¶
N +k−1 k ω
y , y = sin2 , (38)
k 2
k=0
and since it is positive for y ∈ [0, 1], it does not contradict the positivity of |L(ω)|2 .
Remark: If the degree of a solution is not required to be minimal then any other polynomial Q(y) =
P (y) + y N R( 21 − y) where R is an odd polynomial preserving the positivity of Q, will lead to a different
solution for m0 (ω). By choosing R 6= 0, one can generalize the standard Daubechies family, to construct
symmlets, complex Daubechies wavelets, coiflets, etc.
The function |m0 (ω)|2 is now completely determined. To finish the construction we have to find its
square root. A result of Riesz, known as the spectral factorization lemma, makes this possible.
Lemma 1.2 (Riesz) Let A be a positive trigonometric polynomial with the property A(−x) = A(x). Then,
A is necessarily of the form
XM
A(x) = um cos mx.
m=1
P
In addition, there exists a polynomial B of the same order B(x) = M m=1 vm e
imx such that |B(x)|2 =
A(x). If the coefficients um are real, then B can be chosen so that the coefficients vm are also real.
12
We first represent |L(ω)|2 as the polynomial
N −1
a0 X
+ ak cosk ω,
2
k=1
N −1
1 X
PA (z) = a|k| z N −1+k . (39)
2
k=1−N
Since PA (z) = z 2N −2 PA ( z1 ), the zeroes of PA (z) appear in reciprocal pairs if real, and quadruples (zi , z̄i , zi−1 , z̄i−1 )
if complex. Without loss of generality we assume that zj , z̄j and rj lie outside the unit circle in the complex
plane. Of course, then zj−1 , z̄j−1 and rj−1 lie inside the unit circle. The factorized polynomial PA can be
written as
" I #
1 Y 1
PA (z) = aN −1 (z − ri )(z − )
2 ri
i=1
J
Y
(z − zj )(z − z̄j )(z − z −1 )(z − z̄ −1 ) . (40)
j j
j=1
YI Y J Y YI J
1
|aN −1 | |ri−1 | |zj |−2 · | (z − ri ) (z − zj )(z − z̄j )|2 .
2
i=1 j=1 i=1 j=1
Y I Y J
1 1
±( |aN −1 | |ri−1 | |zj |−2 ) 2
2
i=1 j=1
I
Y J
Y
·| (z − ri ) (z − zj )(z − z̄j )|, z = e−iω , (41)
i=1 j=1
where the sign is chosen so that m0 (0) = L(0) = 1. Note that deg[P 2
√ A (z)] = deg[|L(z)| ] = N − 1.
Finally, the coefficients h0 , h1 , . . . , h2N −1 in the polynomial 2 m0 (ω) are the desired wavelet filter
coefficients.
13
Example 1.3 We will¡find m¢0 for N = 2.
P2−1
|L(ω)| = k=0 2+k−1
2
k sin2 kω
2 =1+2
1−cos ω
2 = 12 4 − 1 · cos ω gives a0 = 4 and a1 = −1.
The auxiliary polynomial PA is
1
1 X
PA (z) = a|k| z 1+k
2
k=−1
1
= (−1 + 4z − z 2 )
2
1³ √ ´³ √ ´
= − z − (2 + 3) z − (2 − 3) .
2
One square root from the above polynomial is
s q
1 1 ³ √ ´ 1 √ ³ √ ´
(| − 1|) √ z − (2 + 3) = √ 2 − 3 z − (2 + 3)
2 2+ 3 2
³
1 √ √ ´
= ( 3 − 1)z − (1 + 3) .
2
The change in sign in the expression above is necessary, since the expression should have the value of 1 at
z = 1 or equivalently at ω = 0. Finally,
µ ¶2
1 + e−iω 1 ³ √ √ ´
m0 (ω) = (1 − 3)e−iω + (1 + 3)
2 2
à √ √ √ √ !
1 1 + 3 3 + 3 −iω 3 − 3 −2iω 1 − 3 −3iω
= √ √ + √ e + √ e + √ e .
2 4 2 4 2 4 2 4 2
Z Z
k
Mk = x φ(x)dx and Nk = xk ψ(x)dx,
14
Table 1: The h filters for Daubechies’ wavelets for N = 2, . . . , 10 vanishing moments.
k DAUB2 DAUB3 DAUB4
0 0.4829629131445342 0.3326705529500827 0.2303778133088966
1 0.8365163037378080 0.8068915093110930 0.7148465705529161
2 0.2241438680420134 0.4598775021184915 0.6308807679298592
3 -0.1294095225512604 -0.1350110200102548 -0.0279837694168604
4 -0.0854412738820267 -0.1870348117190935
5 0.0352262918857096 0.0308413818355607
6 0.0328830116668852
7 -0.0105974017850690
k DAUB5 DAUB6 DAUB7
0 0.1601023979741926 0.1115407433501095 0.0778520540850092
1 0.6038292697971887 0.4946238903984531 0.3965393194819173
2 0.7243085284377723 0.7511339080210954 0.7291320908462351
3 0.1384281459013216 0.3152503517091976 0.4697822874051931
4 -0.2422948870663808 -0.2262646939654398 -0.1439060039285650
5 -0.0322448695846383 -0.1297668675672619 -0.2240361849938750
6 0.0775714938400454 0.0975016055873230 0.0713092192668303
7 -0.0062414902127983 0.0275228655303057 0.0806126091510831
8 -0.0125807519990819 -0.0315820393174860 -0.0380299369350144
9 0.0033357252854738 0.0005538422011615 -0.0165745416306669
10 0.0047772575109455 0.0125509985560998
11 -0.0010773010853085 0.0004295779729214
12 -0.0018016407040475
13 0.0003537137999745
k DAUB8 DAUB9 DAUB10
0 0.0544158422431070 0.0380779473638881 0.0266700579005487
1 0.3128715909143165 0.2438346746126514 0.1881768000776480
2 0.6756307362973218 0.6048231236902548 0.5272011889316280
3 0.5853546836542239 0.6572880780514298 0.6884590394535462
4 -0.0158291052563724 0.1331973858249681 0.2811723436606982
5 -0.2840155429615815 -0.2932737832793372 -0.2498464243271048
6 0.0004724845739030 -0.0968407832230689 -0.1959462743773243
7 0.1287474266204823 0.1485407493381040 0.1273693403356940
8 -0.0173693010018109 0.0307256814793158 0.0930573646035142
9 -0.0440882539307979 -0.0676328290613591 -0.0713941471663802
10 0.0139810279173996 0.0002509471148278 -0.0294575368218849
11 0.0087460940474065 0.0223616621236844 0.0332126740593155
12 -0.0048703529934519 -0.0047232047577528 0.0036065535669515
13 -0.0003917403733769 -0.0042815036824646 -0.0107331754833277
14 0.0006754494064506 0.0018476468830567 0.0013953517470513
15 -0.0001174767841248 0.0002303857635232 0.0019924052951842
16 -0.0002519631889428 -0.0006858566949593
17 0.0000393473203163 -0.0001164668551292
18 0.0000935886703200
19 -0.0000132642028945
15
be the kth moments of the scaling and wavelet functions, respectively.
Theorem 1.2 Let ψjk (x) = 2j/2 ψ(2j x − k), j, k ∈ Z be an orthonormal system of functions in L2 (R),
C1
|ψ(x)| ≤ , α > N,
(1 + |x|)α
and ψ ∈ CN −1 (R), where the derivatives ψ (k) (x) are bounded for k ≤ N − 1.
Then, ψ has N vanishing moments,
Nk = 0, 0 ≤ k ≤ N − 1.
If, in addition,
C2
|φ(x)| ≤ , α>N
(1 + |x|)α
then, the associated function m0 (ω) is necessarily of the form
µ ¶N
1 + e−iω
m0 (ω) = · L(ω), (42)
2
C
|φ(k) (x)| ≤ ,
(1 + |x|)α
for k = 0, 1, . . . , r.
The requirement that ψ possesses N vanishing moments can be expressed in terms of Ψ, m0 , or equiv-
alently, in terms of the filter h.
Assume that a wavelet function ψ(x) has N vanishing moments, i.e.,
Nk = 0, k = 0, 1, . . . , N − 1. (43)
¯
dk Ψ(ω) ¯¯
= 0, k = 0, 1, . . . , N − 1,
dω k ¯ω=0
which implies
(k) (k)
m1 (ω) |ω=0 = m1 (0) = 0, k = 0, 1, . . . , N − 1. (44)
16
It is easy to check that in terms of m0 , relation (44) becomes
(k) (k)
m0 (ω) |ω=π = m0 (π) = 0, k = 0, 1, . . . , N − 1. (45)
The argument is inductive. The case k = 0 follows from Ψ(0) = m1 (0)Φ(0) [(27) evaluated at ω = 0]
and the fact that Φ(0) = 1. Since Ψ0 (0) = 12 m01 (0)Ψ(0) + 12 m1 (0)Ψ0 (0) it follows that m01 (0) = 0, as well.
(N −1)
Then, m1 (0) = 0 follows by induction.
(k)
The condition m1 (0) = 0, k = 0, 1, . . . , N − 1 translates to a constraint on the wavelet-filter coeffi-
cients
X X
nk g n = (−1)n nk hn = 0, k = 0, 1, . . . , N − 1. (46)
n∈Z n∈Z
How smooth are the wavelets from the Daubechies family? There is an apparent trade-off between the
length of support and the regularity index of scaling functions. Daubechies (1988) and Daubechies and
Lagarias (1991, 1992), obtained regularity exponents for wavelets in the Daubechies family.
Let φ be the DAUBN scaling function. There are two popular measures of regularity of φ: Sobolev and
∗ be the supremum of β such that
Hölder regularity exponents. Let αN
Z
(1 + |ω|)β |Φ(ω)|dω < ∞,
and let αN be the exponent of the Hölder space CαN to which the scaling function φ belongs.
N 1 2 3 4 5 6 7 8 9 10
∗
αN 0.5 1 1.415 1.775 2.096 2.388 2.658 2.914 3.161 3.402
αN 0.550 0.915 1.275 1.596 1.888 2.158 2.415 2.661 2.902
Theorem 1.3
µ ¶
log 3 ln N
lim αN =N 1− + O( ).
N →∞ 2 log 2 N
From Table 2, we see that DAUB4 is the first differentiable wavelet, since α > 1. More precise bounds
on αN yield that φ from the DAUB3 family is, in fact, the first differentiable scaling function (α3 = 1.0878),
even though it seams to have a peak at 1. See also Daubechies (1992), page 239, for the discussion.
∗ ,
Remark 1.3 the Sobolev and Hölder regularities are related, thus, Theorem 1.3 holds for the exponent αN
as well.
17
1.5 Approximations and Characterizations of Functional Spaces
Any L2 (R) function f can be represented as
X
f (x) = djk ψjk (x),
j,k
L
and this unique representation corresponds to a multiresolution
L∞ decomposition L2 (R) = ∞
j=−∞ Wj . Also,
for any fixed j0 the decomposition L2 (R) = Vj0 ⊕ j=j0 Wj corresponds to the representation
X XX
f (x) = cj0 ,k φj0 ,k (x) + djk ψj,k (x). (47)
k j≥j0 k
A range of important function spaces can be fully characterized by wavelets. We list a few characteri-
zations. For example, a function f belongs to the Hölder space Cs if and only if there is a constant C such
that in an r-regular MRA (r > s) the wavelet coefficients satisfy
(i) |cj0 ,k | ≤ C,
1
(ii) |dj,k | ≤ C · 2−j(s+ 2 ) , j ≥ j0 , k ∈ Z . (48)
X
|djk |2 · (1 + 22js ) < ∞.
j,k
Even the general (non-homogeneous) Besov spaces, can be characterized by moduli of the wavelet
coefficients of its elements. For a given r-regular MRA with r > max{σ, 1}, the following result (see
Meyer 1992, page 200) holds
Theorem 1.4 Let Ij be a set of indices so that {ψi , i ∈ Ij } constitutes an o.n. basis of the detail space Wj .
0
P C ≥ C > 0 such that, for every exponent p ∈ [1, ∞], for each j ∈ Z and for
There exist two constants
every element f (x) = i∈Ij di ψi (x) in Wj ,
1/p
X
C||f ||p ≤ 2j/2 2−j/p |di |p ≤ C 0 ||f ||p .
i∈Ij
18
The following characterization of Besov Bσp,q spaces can be obtained directly from this result. If the MRA
has regularity r > s, then
P wavelet bases are
PRieszP bases for all 1 ≤ p, q ≤ ∞, 0 < σ < r.
The function f = k cj0 k φj0 k (x) + j≥j0 k djk ψjk (x) belongs to Bσp,q space if its wavelet coeffi-
cients satisfy
à !1/p
X
p
|cj0 ,k | < ∞,
k
and
1/p
X
2j(σ+1/2−1/p)
|di |p
, j ≥ j0
i∈Ij
hP ¡ j(σ+1/2−1/p) P ¢ i1/q
is an `q sequence, i.e, 2 ( |d |p )1/p q < ∞.
j≥j0 k j,k
The results listed are concerned with global regularity. The local regularity of functions can also be
studied by inspecting the magnitudes of their wavelet coefficients. For more details, we direct the reader to
the work of Jaffard (1991) and Jaffard and Laurencot (1992).
As a nice calculational example, we describe an algorithm for fast numerical calculation of wavelet values
at a given point, based on the Daubechies-Lagarias (Daubechies and Lagarias, 1991, 1992) local pyramidal
algorithm. The matlab routines Phi.m and Psi.m in the Matlab sesction implement the algorithm.
The scaling function and wavelet function in Daubechies’ families have no explicit representations (ex-
cept for the Haar wavelet). Sometimes, it necessary to find values of DAUB functions at arbitrary points;
examples include calculation of coefficients in density estimation and non-equally spaced regression.
The Daubechies-Lagarias algorithm enables us to evaluate φ and ψ at a point with preassigned precision.
We illustrate the algorithm on wavelets from the Daubechies family; however, the algorithm works for all
orthoginal wavelet filters.
Let φ be the scaling function of the DAUBN wavelet. The support of φ is [0, 2N − 1]. Let x ∈ (0, 1),
and let dyad(x) = {d1 , d2 , . . . dn , . . . } be the set of 0-1 digits in the dyadic representation of x (x =
P ∞ −j
j=1 dj 2 ). By dyad(x, n), we denote the subset of the first n digits from dyad(x), i.e., dyad(x, n) =
{d1 , d2 , . . . dn }.
Let h = (h0 , h1 , . . . , h2N −1 ) be the wavelet filter coefficients. We build two (2N − 1) × (2N − 1)
matrices as:
√ √
T0 = ( 2 · h2i−j−1 )1≤i,j≤2N −1 and T1 = ( 2 · h2i−j )1≤i,j≤2N −1 . (49)
Then the local pyramidal algorithm can be constructed based on Theorem 1.5.
19
Theorem 1.5
The convergence of ||Td1 · Td2 · · · · · Tdn − Td1 · Td2 · · · · · Tdn+m || to zero, for fixed m, is exponential
and constructive, i.e., effective decreasing bounds on the error can be established.
³ √ √ √ √ ´
1+√ 3 3+√ 3 3−√ 3 1−√ 3
Example 1.4 Consider the DAUB2 scaling function (N = 2). The corresponding filter is h = 4 2
, 4 2
, 4 2
, 4 2
.
According to (49) the matrices T0 and T1 are given as
√ √ √
1+ 3 3+ 3 1+ 3
4√ 0√ 0√ 4√ 4√ 0√
3− 3 3+ 3 1+ 3 1− 3 3− 3 3+ 3
T0 = 4 4√ 4√ and T1 = 4 4 4√ .
1− 3 3− 3 1− 3
0 4 4 0 0 4
Let us evaluate the scaling function at an arbitrary point, say x = 0.45. Twenty “decimals” in the dyadic
representation of 0.45 are dyad(0.45, 20) = { 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1 }. In
addition to the value at 0.45, we get (for free) the values at 1.45 and 2.45 (the values 0.45, 1.45, and 2.45
are in the domain of φ, the interval [0,3]). The values φ(0.45), φ(1.45), and φ(2.45) may be approximated
as averages of the first, second, and third row, respectively in the matrix
Y 0.86480582 0.86480459 0.86480336
Ti = 0.08641418 0.08641568 0.08641719 .
i∈dyad(0.45,20) 0.04878000 0.04877973 0.04877945
The Daubechies-Lagarias algorithm gives only the values of the scaling function. In applications, most
of the evaluation needed involves the wavelet function. It turns out that another algorithm is unnecessary,
due to the following result.
Theorem 1.6 Let x be an arbitrary real number, let the wavelet be given by its filter coefficients, and let u
with 2N − 1 be a vector defined as
If for some i the index i + 1 − b2xc is negative or larger than 2N − 1, then the corresponding component
of u is equal to 0.
Let the vector v be
20
1 Y
v(x, n) = 10 Ti ,
2N − 1
i∈dyad({2x},n)
We saw that the requirement that the wavelet function possesses N -vanishing moments was expressed in
terms of Φ, m0 , or h.
Suppose that we wish to design a wavelet filter h = {h0 , . . . , h2N −1 } only by considering properties of
its filter taps. Assume that
Z
Nk = xk ψ(x)dx = 0, for k = 0, 1, . . . , N − 1. (51)
R
As it was discussed in Section 1.1, some relevant properties of a multiresolution analysis can be ex-
pressed as relations involving coefficients of the filter h.
For example, the normalization property gave
2N
X −1
√
hi = 2,
i=0
2N
X −1
(−1)i ik hi = 0, k = 0, 1, . . . , N − 1,
i=0
2N
X −1
hi hi+2k = δk , k = 0, 1, . . . , N − 1.
i=0
That defines 2N + 1 equations with 2N unknowns; however the system is solvable since the equations
are not linearly independent. For example, the equation
h0 − h1 + h2 − · · · − h2N −1 = 0,
can be expressed as a linear combination of the others.
21
Example 1.5 For N = 2, we obtain the system:
√
h0 + h1 + h2 + h3 = 2
2
h0 + h21 + h22 + h23 = 1
−h1 + 2h2 − 3h3 = 0 ,
h0 h2 + h1 h3 = 0
√ √ √ √
1+√ 3 3+√ 3 3−√ 3 1−√ 3
which has the familiar solution h0 = 4 2
, h1 = 4 2
, h2 = 4 2
, and h3 = 4 2
.
For N = 4, the system is
√
h0 + h1 + h2 + h3 + h4 + h5 + h6 + h7 = 2
h20 + h21 + h22 + h23 + h24 + h25 + h26 + h27 = 1
h0 − h1 + h2 − h3 + h4 − h5 + h6 − h7 = 0
h0 h2 + h1 h3 + h2 h4 + h3 h5 + h4 h6 + h5 h7 = 0
h0 h4 + h1 h5 + h2 h6 + h3 h7 = 0
h0 h6 + h1 h7 = 0
0h0 − 1h1 + 2h2 − 3h3 + 4h4 − 5h5 + 6h6 − 7h7 = 0
0h0 − 1h1 + 4h2 − 9h3 + 16h4 − 25h5 + 36h6 − 49h7 = 0
0h0 − 1h1 + 8h2 − 27h3 + 64h4 − 125h5 + 216h6 − 343h7 = 0.
The above systems can easily be solved by a symbolic software package such as Maple or Mathematica.
Discrete wavelet transformations map data from the time domain (the original or input data, signal
vector) to the wavelet domain. The result is a vector of the same size. Wavelet transformations are linear
and they can be defined by matrices of dimension n × n if they are applied to inputs of size n. Depending on
boundary conditions, such matrices can be either orthogonal or “close” to orthogonal. When the matrix is
orthogonal, the corresponding transformation is a rotation in Rn space in which the signal vectors represent
coordinates of a single point. The coordinates of the point in the new, rotated space comprise the discrete
wavelet transformation of the original coordinates.
Example 1.6 Let the vector be {1, 2} and let M (1, 2) be the point in R2 with coordinates given by the data
vector. The rotation of the coordinate axes by an angle of π4 can be interpreted as a DWT in the Haar wavelet
basis. The rotation matrix is
µ ¶ Ã √1 √1
!
cos π4 sin π4 2 2
W = = ,
cos π4 − sin π4 √1
2
− √1
2
22
and the discrete wavelet transformation of (1, 2)0 is W · (1, 2)0 = ( √32 , − √12 )0 . Notice that the energy
√
3 2
(squared distance of the point from the origin) is preserved, 12 + 22 = ( 21 )2 + ( 2 ) , since W is a rotation.
Example 1.7 Let y = (1, 0, −3, 2, 1, 0, 1, 2). If Haar wavelet is used, the values f (n) = yn , n =
0, 1, . . . , 7 are interpolated by the father wavelet, the vector represent the sampled piecewise constant func-
tion. It is obvious that such defined f belongs to Haar’s multiresolution space V0 .
The following matrix equation gives the connection between y and the wavelet coefficients (data in the
wavelet domain).
1 1 1
√ √ 0 √1 0 0 0
2 2 2 2 2 2
1 √ 1 1 1 1 c00
0
√ 0 − 2 √ 0 0 0
2 2 2 2 2
d00
−3 2 2 1
√ √1
− 1
0 0 √1
0 0 d
1 2 2 2 2 10
2 √ √1 1
−2 0 0 − 2√ 1
0 0 d11
= 212 2 2
· .
1 √ − √ 1
0 1
0 0 √1 0 d
2 2 2 2 2 2 20
0 √ 1 1 1 1 d
− √ 0 0 0 − √ 0 21
1 √
2 2
1
2 2
1
2
1
2
1 d22
2 2 − √
2 2
0 − 2 0 0 0 √
2
2 1 1 1 √1
d23
√
2 2
− √
2 2
0 − 2 0 0 0 − 2
The solution is √
2
c00 −√2
d00
1
d10
−1
d11
= √1 .
d20
2
d21 − √5
2
d22 √1
2
d23 − √12
Thus,
√ √
f = 2φ−3,0 − 2ψ−3,0 + ψ−2,0 − ψ−2,1
1 5 1 1
+ √ ψ−1,0 − √ ψ−1,1 + √ ψ−1,2 − √ ψ−1,3 . (52)
2 2 2 2
The solution is easy to verify. For example, when x ∈ [0, 1),
√ 1 √ 1 1 1 1
f (x) = 2 · √ − 2 · √ + 1 · + √ · √ = 1/2 + 1/2 = 1 (= y0 ).
2 2 2 2 2 2 2
Performing wavelet transformations by multiplying the input vector with an appropriate orthogonal ma-
trix is conceptually straightforward, but of limited practical value. Storing and manipulating transformation
matrices when inputs are long (> 2000) may not even be feasible.
In the context of image processing, Burt and Adelson (1982a,b) developed orthogonal and biorthogonal
pyramid algorithms. Pyramid or cascade procedures process an image at different scales, ranging from fine
to coarse, in a tree-like algorithm. The images can be denoised, enhanced or compressed by appropriate
scale-wise treatments.
23
Mallat (1989a,b) was the first to link wavelets, multiresolution analyses and cascade algorithms in a
formal way. Mallat’s cascade algorithm gives a constructive and efficient recipe for performing the discrete
wavelet transformation. It relates the wavelet coefficients from different levels in the transformation by
filtering with h and g. Mallat’s algorithm can be viewed as a wavelet counterpart of Danielson-Lanczos
algorithm in fast Fourier transformations.
It is convenient to link the original signal with the space coefficients from the space VJ , for some J. Such
link is exact for interpolating wavelets (Haar, Shannon, some biorthogonal and halfband-filter wavelets) and
close to exact for other wavelets, notably coiflets. Then, coarser smooth and complementing detail spaces
are (VJ−1 , WJ−1 ), (VJ−2 , WJ−2 ), etc. Decreasing the index in V -spaces is equivalent to coarsening the
approximation to the data.
By a straightforward substitution of indices in the scaling equations (10) and (25), one obtains
X X
φj−1,l (x) = hk−2l φjk (x) and ψj−1,l (x) = gk−2l φjk (x). (53)
k∈Z k∈Z
24
Example 1.8 For DAUB2, the scaling equation at integers is
3
X √
φ(n) = hk 2φ(2n − k).
k=0
√ √ √ √
= { 1+
Recall that h = {h0 , h1 , h2 , h3 } √ 3 , 3−√ 3 , 3+√ 3 , 1−√ 3 }.
√ √ 4 2 4 2 4 2 4 2
Since φ(0) = 2h0 φ(0) and 2h0 6= 1, it follows that φ(0) = 0. Also, φ(3) = 0. For φ(1) and φ(2)
we obtain the system
· ¸ · ¸ · ¸
φ(1) √ h1 h0 φ(1)
= 2· · .
φ(2) h3 h2 φ(2)
P
From k φ(x − k) = 1 it follows that φ(1) + φ(2) = 1. Solving for φ(1) and φ(2) we obtain
√ √
1+ 3 1− 3
φ(1) = and φ(2) = .
2 2
Now, one can refine φ,
µ ¶ √
1 X √ √ 2+ 3
φ = hk 2φ(1 − k) = h0 2φ(1) = ,
2 4
k
µ ¶ X √
3 √ √
φ = hk 2φ(3 − k) = h1 2φ(2) + h2 2φ(1)
2
k
√ √ √ √
3+ 3 1− 3 3− 3 1+ 3
= · + · = 0,
4 2 4 2 √
µ ¶ X √
5 √ 2− 3
φ = hk 2φ(5 − k) = h3 2φ(2) = ,
2 4
k
or ψ,
ψ(−1) = ψ(2) = 0,
µ ¶ X √
1 √ 1
ψ − = gk 2φ(−1 − k) = h1 2φ(1) = − , [gn = (−1)n h1−n ]
2 4
k
X √ √ √
ψ(0) = gk 2φ(0 − k) = g−2 2φ(2) + g−1 2φ(1)
k
√
√ 3
= −h2 2φ(1) = − ,
4
etc.
25
Let the length of the input signal be 2J , and let h = {hs , s ∈ Z} be the wavelet filter and let N be an
appropriately chosen constant.
Denote by Hk is a matrix of size (2J−k × 2J−k+1 ), k = 1, . . . with entries
h3 0 0 0 0 h0 h1 h2
−h2 h1 −h0 0 0 0 0 h3
0 h3 −h2 h1 −h0 0 0 0
G1 = 0
.
0 0 h3 −h2 h1 −h0 0
−h0 0 0 0 0 h3 −h2 h1
26
Since,
· ¸ · ¸
h1 h2 h3 h0 −h2 h1 −h0 h3
H2 = G2 = .
h3 h0 h1 h2 −h0 h3 −h2 h1
In this example, due to lengths of the filter and data, we can perform discrete wavelet transformation for two
steps only, W1 and W2 .
The two-step DAUB2 discrete wavelet transformation of y is
W2 · y = {1.68301, 0.31699 | − 3.28109, −0.18301 | 0.96593, 1.86250, −0.96593, 0.96593}, because
For quadrature mirror wavelet filters h and g, we define recursively up-sampled filters h[r] and g[r]
h[0] = h, g[0] = g
h[r] = [↑ 2] h[r−1] , g[r] = [↑ 2] g[r−1] .
In practice, the dilated filter h[r] is obtained by inserting zeroes between the taps in h[r−1] . Let H[r] and G[r]
be convolution operators with filters h[r] and h[r] , respectively. A non-decimated wavelet transformation,
NDWT, is defined as a sequential application of operators (convolutions) H[j] and G[j] on a given time
series.
The non-decimated wavelet transformation of c(J) is b(J−1) , b(J−2) , . . . , b(J−j) , a(J−j) , for some j ∈
{1, 2, . . . , J} the depth of the transformation.
If the length of an input vector c(J) is 2J , then for any 0 ≤ m < J, a(m) and b(m) are of the same
length. Let φj (x) = φj,0 (x) and ψj (x) = ψj,0 (s). If the measurement sequence c(J) is associated with the
P (J)
function f (x) = k ck φJ (x − 2−J k) then the kth coordinate of b(j) is equal to
Z
bjk = ψj (x − 2−J k)f (x)dx.
Thus, the coefficient bjk provides information at scale 2J−j and location k. One can¡think¢ of a nondecimated
wavelet transformation as sampled continuous wavelet transformation hf (x), √1a ψ x−b −j
a i for a = 2 , and
b = k.
27