6

THE DAUBECHIES WAVELETS

The wavelets that we have looked at so far—Haar, Shannon, and linear spline wavelets—all have major drawbacks. Haar wavelets have compact support, but are discontinuous. Shannon wavelets are very smooth, but extend throughout the whole real line, and at infinity they decay very slowly. Linear spline wavelets are continuous, but the orthogonal scaling function and associated wavelet, like the Shannon wavelets, have infinite support; they do, however, decay rapidly at infinity.

These wavelets, together with a few others having similar properties, were the only ones available before Ingrid Daubechies discovered the hierarchy of wavelets that are named after her. The simplest of these is just the Haar wavelet, which is the only discontinuous one. The other wavelets in the hierarchy are both compactly supported and continuous. Better still, by going up the hierarchy, they become increasingly smooth; that is, they can have a prescribed number of continuous derivatives. The wavelet’s smoothness can be chosen to satisfy conditions for a particular application. We now turn to Daubechies’ construction of the first wavelet past Haar.

6.1 DAUBECHIES’ CONSTRUCTION

Theorem 5.23 lists the three sufficient conditions on the polynomial P that ensures that the iteration given in Section 5.3.4 produces a scaling function.

c06e001

For a given polynomial P(z), let

In terms of the of the function p, the three conditions in the hypothesis of Theorem 5.23 can be stated as

(6.1)c06e002

(6.2)c06e003

(6.3)c06e004

In this section, we describe one polynomial, due to Daubechies, which satisfies (6.1)(6.3).

From Example 5.22, the polynomial associated with the Haar scaling function is

c06e005

This choice of p0 satisfies Eqs. (6.1)-(6.3). However, the Haar scaling function is discontinuous. One way to generate a continuous scaling function is to take convolution powers. In fact, the convolution of the Haar scaling function with itself can be shown to equal the following continuous function (see exercise 5 in Chapter 2):

c06e006

(see Figure 6.1). Now the Fourier transform of a convolution equals the product of the Fourier transforms. In particular, the Fourier transform of ϕ * ϕ *ϕ (n times) is c06ie001 In view of Eq. (5.29) for the Fourier transform of the scaling function, we may be first led to try c06ie002 for some suitable power of n, as the function that generates a continuous scaling function. However, property (6.2) no longer holds (unless n = 1, the Haar cases.

Instead of simply raising p0 to the nth power, we raise both sides of the identity c06ie003 to the nth power. With n = 3, we obtain

(6.4)c06e007

or

c06e008

Fig. 6.1.Graph of ϕ0 * ϕ0.

c06f001

Using the identities cos(u) = sin(u + π/2) and sin(u) = – cos(u + π/2) for the last two terms on the right, we have

c06e009

If we let

c06e010

then the previous equation becomes

c06e011

and property (6.2) is satisfied. Property (6.3) is also satisfied since c06ie004 Also note that |p(0)| = 1. So all that is left is to identify p itself (we have only defined |p|). First, we rewrite the defining equation for |p| as

c06e012

By taking square roots of this equation, we let

c06e013

where a(c06ie044) is a complex-valued expression with |a(c06ie044)| = 1 which will be chosen later.

To identify the polynomial P (with c06ie004a), we use the identities

c06e014

to obtain

c06e015

We choose c06ie005 in order to clear all positive and fractional powers in the exponent. Expanding out and collecting terms, we obtain

c06e016

The equation c06ie004a is therefore satisfied by the polynomial

c06e017

Since p satisfies (6.1) through (6.3), P satisfies the hypothesis of Theorem 5.23. Recall that c06ie006 Therefore, for Daubechies’ example, we have

(6.5)c06e018

The Daubechies scaling function, ϕ, is found by applying the iterative procedur described in Theorem 5.23. Figures 5.18 through 5.21 in Chapter 5 illustrate th first few iterations of this procedure. Figure 6.2 shows the (approximate) graph of ϕ that results from iterating this procedure many times.

What about the wavelet ψ that is associated with the Daubechies scaling function ϕ? As shown in Theorem 5.10, once the coefficients, pk, have been identified and ϕ has been constructed, then the associated wavelet is given by the formula

c06e019

Figure 6.3 shows the (approximate) graph of the associated wavelet function.

Unlike the Haar scaling and wavelet functions, the Daubechies scaling and wavelet functions are continuous. However, they are not differentiable.

Figure 6.2. Daubechies scaling function.

c06f002

Figure 6.3. Daubechies wavelet function.

c06f003

6.2 CLASSIFICATION, MOMENTS, AND SMOOTHNESS

Other, smoother scaling functions and wavelets can be obtained by choosing a higher power than n = 3 in Eq. (6.4). Any odd power, n = 2N - 1, can be used there. In fact, Daubechies showed that for every N there will be 2N nonzero, real scaling coefficients p0, . . ., p2n-1, resulting in a scaling function and wavelet that are supported on the interval 0 ≤ t2N – 1. They are chosen so that the corresponding degree 2N – 1 polynomial c06ie007 has the fac-torization,

(6.6)c06e020

where the degree of c06ie008 is N – 1 and c06ie009 This guarantees that the associated wavelets will have precisely N “vanishing moments.” We will discuss what this means and why it is important later.

Apart from a reversal of the coefficients in PN (cf. exercise 1), these coefficients are unique. In the two cases that we have dealt with, N = 1 (Haar) and N = 2 (Daubechies), the polynomials are c06ie010 and P2(z) = c06ie011 Both polynomials have the factorization in Eq. (6.6),

with c06ie012 and c06ie013

The scaling function ϕN and wavelet ψN generated by PN have Fourier transforms given in terms of infinite products. Because the coefficients of PN are real, c06ie014 Thus from Eqs. (5.29) and Eq. (5.30), we have that

(6.7)c06e022

(6.8)c06e023

Note that c06ie015 because PN(–1) = 0. If N > 1, we also have c06ie016 because c06ie017 In general, by exercise 2, we have that

(6.9)c06e024

This gives the following result.

Proposition 6.1 For the Daubechies wavelet ψN, we have

(6.10)c06e025

Proof. The proposition follows from Eq. (6.9) and the Fourier transform property

c06e026

Just set f = ifrff, n = k, and k = 0.

In mechanics, integrals of the form c06ie018 called the moments of a mass distribution p. The term “moment” carries over to an integral of any function against xk. We can thus rephrase the proposition by saying that ψNhas its first N moments vanish. This is usually shortened to saying that ψN has N vanishing moments; that they are the first N is understood.

Daubechies wavelets are classified according to the number of vanishing moments they have. The smoothness of the scaling function and wavelet increase with the number of vanishing moments. The N = 1 case is the same as the Haar case; both scaling function and wavelet are discontinuous. The N = 2 Daubechies scaling function and wavelet are continuous, but certainly do not have smooth derivatives. In the N = 3 case, both are continuously differentiable. When N is large, the number of continuous derivatives that ϕN an ψN have is roughly N/5. So, to get 10 derivatives, we need to take N ≈ 50. In the following table, we list approximate scaling coefficients for the Daubechies wavelets, with N going from 1 to 4. Of course, the scaling coefficients given for N = 2 are just the decimal approximations for those found in Eq. (6.5).

c06f004

Why is it useful to have vanishing moments? The short answer is that vanishing moments are a key factor in many wavelet applications: compression, noise removal, and singularity detection, for example.

To understand this better, let’s look closely at the N = 2 case. According to Eq. (6.10) with N = 2, the first two moments (k = 0,1) vanish. The k = 2 moment is c06ie019 From our earlier discussion, we see that c06ie020 for the third (k = 2) moment, we have

with c06ie021

(6.11)c06e027

We want to use these moments to approximate the wavelet coefficients for smooth signals, and we want to show that these coefficients will be small when the level j is high. If f is a smooth, twice continuously differentiable signal,

then its j, k-wavelet coefficient is

c06e028

If j is large enough, the interval over which we are integrating will be small, and we may then replace c06ie022 by its quadratic Taylor polynomial in c06ie023 Doing this, we get the following approximation for bkj :

(6.12)c06e029

The integral on the right can be reduced to doing the integrals for the first three moments of ϕ. Since the first two moments vanish, and the third is given in (6.11), we can evaluate the integral. (See exercise 3.) Our final result is that the j, k-wavelet coefficient is approximately

(6.13)c06e030

Singularity Detection. As an application of the formula in (6.13), we find a point where an otherwise smooth function has a discontinuity in its derivative. This is called singularity detection, and this process can be used, among other things, to detect cracks in material.

As an example, we will determine where the piecewise linear function shown in Figure 6.4 changes slope. Keep in mind that the formula (6.13) is exact in any region where a signal f is constant, linear, or quadratic in x, because the quadratic Taylor polynomial for f is f in these cases. Since c06ie024 where f is linear, formula (6.13) implies that the only nonzero wavelet coefficients will come from a small region near the corner point where the slope changes. The signal itself has the form

c06e031

After sampling it at 256 equally spaced points, we decompose it using the N = 2 Daubechies wavelet. Thus, our starting level was 7=8; the level down from this is j = 7. The only appreciable wavelet coefficient was c06ie025 The rest were on the order of 10–14. The index k = 97 corresponds to a wavelet supported on the x interval [2.79, 2.83]; consequently, the singularity is located in this interval.

Figure 6.4. The original signal is piecewise linear on the interval [-1, 4], with a break at x = 2.8. The wavelet part comes from a first-order deWcomposition using the N = 2 wavelet; it is essentially 0, except for the interval near x = 2.8.

c06f005

6.3 COMPUTATIONAL ISSUES

Consider the following problem. We want to use N = 2-Daubechies’ wavelets to decompose a signal that we have n samples for, s0 …, sn–1. These samples will be regarded as part of our top-level approximation coefficient sequence, ai. We will filter these numbers using the high- and low-pass filters for the Daubechies wavelets. These are H and l, and they have impulse responses given by the sequences h and I, where

c06e032

We convolve h and h with a7 and down sample. Thus, for any aj—not just our signal with eight samples—we have

(6.14)c06e033

(6.15)c06e034

(We use k + 1 in (6.15) rather than k in order to deal with the same aj’s on the right side in both formulas.)

To compute each level j – 1 coefficient, we need four consecutive samples, always starting at an even number. For example, if we have n = 8 samples, then to compute the a22 coefficient, we need s4 through s7. To compute a32, we need s6 through s9. But we do not have s9! It’s no surprise that at some point we will run out of coefficients to filter. The surprise is that we are only able to compute k = 0, 1, 2. This means from eight samples, we only get three decomposition coefficients, not the four that we would expect. This is the overspill problem. The filters H and L spill over to samples we don’t have.

What to do? First of all, the overspill problem comes about because we don’t know what the signal was before or after our set of samples. Thus we need to extend the signal in some fashion beyond our initial set of samples. Here are a few of the standard choices. In the accompanying illustrations, the filled circles represent the original signal, and open circles are points in the signal’s extension.

Zero-Padding. Extend the signal by adding zeros at the two ends. This is appropriate if the signal is very long, and the ends of the signal do not matter, or if the signal really is abruptly started and stopped. This amounts to setting sk = 0 if k π 0 or k > n-1.

c06f006

Periodic Extension. Another approach is to re-use the sampled data by making the signal a periodic one, so that sk+n = sk. For example, with eight samples, s0, … , s7, we would let s8 = s0, s9 = s1, and so on.

c06f007

Smooth Padding. Extend the signal by linearly extrapolating the data near the two ends. This is appropriate if signal isn’t too noisy, at least near the ends.

c06f008

Symmetric Extensions. The signal is evenly extended at the endpoints by reflection. There are two ways to do this. One can reflect about a line through an endpoint, or about a line midway between an endpoint and the next point on the grid. The first type is illustrated at the left endpoint, and the second type is shown at the right endpoint.

c06f009

6.4 THE SCALING FUNCTION AT DYADIC POINTS

Although the values of the scaling function ϕ do not enter into the decomposition and reconstruction algorithms, it is useful to be able to compute approximate values of ϕ in order to verify some of its properties (like continuity). An iterative method for computing ϕ is given in Theorem 5.23. However, this algorithm is somewhat cumbersome from a computational point of view. A more computationally efficient method for computing the scaling function ϕ is to use the scaling equation to compute the value of ϕ at all dyadic values, x = 1/2n, where I and n are integers. We illustrate this process in the following steps. To simplify the exposition, we shall concentrate on the Daubechies N = 2 case with four nonzero p coefficients as constructed in the previous section, but the procedure easily generalizes.

Step 1. Compute = at All the Integer Values. Let ϕl = ϕ(l) for l ∈ Z. The Daubechies (N = 2) scaling function is nonzero only on the interval 0 < x <3 with ϕ0 = ϕ3 = 0 (see Figure 6.2). In particular, ϕ1 and ϕ2 are the only nonzero unknown values of ϕ at integer points. In order to arrange the normalization c05ie006 ϕ = 1, we require c06ie027 or in our specific case:

(6.16)c06e035

Now we use the scaling equation c06ie028 For x = l, this equation becomes

c06e036

At x = 2, the scaling equation becomes

c06e037

These two equations can be written in matrix form as

c06e038

Here, the p values are known [see Eq. (6.5)] and we are solving for the unknowns ϕ1 and ϕ2. In order for this matrix equation to have a nonzero solution, the matrix must have an eigenvalue equal to 1. Then (ϕ1,ϕ2) would be the corresponding eigenvector with ϕ1 + ϕ2 = 1. To find this eigenvector, we rewrite the matrix equation as

c06e039

A nonzero solution to this matrix equation exists if the first row is a multiple of the second. From Theorem 5.9, ∑ Podd = ∑ Peven = 1. Therefore the first row is the negative of the second. The equation corresponding to the first row is

c06e040

We restate the normalization equation (6.16):

c06e041

These two equations can be solved simultaneously. In the case of Daubechies, the solution is

c06e042

The ϕ values at all other integer points are zero. Therefore, all the ϕt = ϕ(l), l ∈ Z, have been determined.

Step 2. The Values of ϕ at the Half-Integers. To compute ϕ(l/2), we use the scaling equation

(6.17)c06e043

at x = l/2 to obtain

(6.18)c06e044

Since ϕ(lk) is known from Step 1, ϕ(l/2) can be computed. We need only compute ϕ(l/2) for l = 1, 2, 3,4, and 5 since ϕ(x) = 0 for x π 0 and x > 3. When l = 2 or 4, l/2 is an integer and the values of ϕ at these points are known from Step 1. Thus we need only compute (2) for l = 1, 3, and 5. Equation (6.18) for / = 1, 3, 5 becomes

c06e045

The condition ∑lϕ (l) = 1 (from Step 1) implies ∑lϕ (l/2) = 2. Indeed, Eq. (6.17) gives

c06e046

By the change of index, the inner sum is c06ie031 This sum equals 1 from Step 1. By Theorem 5.9, kPk = 2. Therefore

c06e047

as claimed.

Step 3. Iteration. The values of ϕ at the quarter integers, l/4, can be computed from the values of ϕ at the half-integers by letting x = l/4 in the scaling equation c06ie032 In general, once ϕ has been computed at the values x = l/2n-1, then we can compute the value of ϕ at the values x = l/2n by inserting x = l/2n into the scaling equation (6.17):

c06e048

The right side involves values of ϕatc06ie033 which have been computed from the previous step.

We claim

(6.19)c06e049

We have already shown this equation for n = 0 (Step 1) and n = 1 (Step 2). Suppose by induction that we assume this equation is true for n – 1. We now show it to be true for n. We have

c06e050

By the induction hypothesis, the inner sum is 2n-1 [Eq. (6.19) with n replaced by n – 1]. Therefore

c06e051

Since k Pk = 2 (Theorem 5.9), the right side equals 2n", as desired.

As n gets larger, the set of dyadic points {l/2n, l ∈ Z} get denser. Since any real number is a limit of dyadic points and since the Daubechies scaling function is continuous, the value of ϕ at any value x can be obtained as a limit of ϕ-values at Dyadic points.

The scaling function, ϕ that is constructed in this manner, satisfies the normalization condition ϕ = 1. To see this, we regard ϕ dx as a limit as n → ∞ of a Riemann sum over a partition given by {xt = l/2n; l = … – 1,0,1, … } The width of this partition is Δx = 1/2n. So, we have

c06e052

Since c06ie043 the right side is 1, as claimed.

EXERCISES

1. Show that c06ie038 satisfies the N = 2 Daubechies scaling relation, but with the coefficients reversed; that is,

c06e053

What is the corresponding equation for c06ie039 Sketch both c06ie039and c06ie040

2. Show that Eq. (6.9) holds.

3. Use the first three moments of Ψ = ΨN-1=2 to evaluate integral in Eq. (6.12) and thus obtain the approximation to bJk given in Eq. (6.13).

4. Repeat exercises 9 and 10 in Chapter 4 using Daubechies N = 2 wavelets.

5. Repeat exercise 4 for the signal

c06e054

where

c06e055

Compare your results using Daubechies wavelets with those of exercise 9 in Chapter 3.

6. Let f (t) be defined via

c06e056

Sample f at the dyadic points k × 2-8, k = -256 512. Thus, j =7 is the top level. Using the Daubechies N = 2 wavelet, implement a one-level decomposition. Plot the magnitudes of the level 7 wavelet detail coefficients. Which wavelet has the largest coefficient? What t corresponds to this wavelet? Explain.

7. Let g be defined by

c06e057

Sample g at the dyadic points k × 2-8, k = -256... 512. (j = 7 is the top level.) Using the Daubechies N = 2 wavelets, implement a one-level decomposition. Plot the magnitudes of the level 7 wavelet coefficients for each, and determine which wavelet coefficient is greatest. Repeat with the N = 3 wavelet. Give an explanation of why the greatest coefficients occur where they do.

8.(Polynomial Suppression) Frequently, signals have a “bias” that is a polynomial part (usually linear or quadratic) added to a bounded rapidly oscillating part–for example, c06ie042 Suppose that we have taken 1024 samples of f on the interval [-1,1]. Come up with a strategy for separating the two signals via a Daubechies wavelet analysis. Use MATLAB to carry it out. (Hint: What is the smallest value of N needed to reproduce quadratics exactly? Also smooth padding works best for these examples.)

9.(Noise Removal) Wavelets can be used to remove noise from a signal. Let f(t) = sin(8πt) cos(3πt) + n(t), with n(t) being the noise. Numerically, we can model n(t) by using a random number generator, such as MATLAB’s rand. Take 1500 samples on [-2, 3] of f and do an analysis with N = 2,3, and 6 Daubechies wavelets. Experiment with different levels. Which wavelet does the best job?

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset