Cohen-Daubechies-Feauveau wavelet

From Wikipedia, the free encyclopedia

For other uses of "CDF", see CDF (disambiguation).

The historically first family of biorthogonal wavelets, which was made popular by Ingrid Daubechies. These are not the same as the orthogonal Daubechies wavelets, and also not very similar in shape and properties. However their construction idea is the same.

The JPEG 2000 compression standard uses the biorthogonal Daubechies M/N=5/3 wavelet (also called the LeGall 5/3 wavelet) for lossless compression and a Daubechies 9-tap/7-tap wavelet for lossy compression.

Contents

[edit] Properties

  • The primal generator is a B-spline if the simple factorization qprim(X) = 1 (see below) is chosen
  • The dual generator has the maximum number of smoothness factors which is possible for its length.
  • All generators and wavelets in this family are symmetric.

[edit] Construction

For every positive integer A there exists a unique polynomial QA(X) of degree A-1 satisfying the identity

(1-X/2)^A\,Q_A(X)+(X/2)^A\,Q_A(2-X)=1.

This is the same polynomial as used in the construction of the Daubechies wavelets. But, instead of a spectral factorization, here we try to factor

Q_A(X)=q_{\mathrm{prim}}(X)\,q_{\mathrm{dual}}(X),

where the factors are polynomials with real coefficients and constant coefficient 1. Then,

a_{\mathrm{prim}}(Z)=2Z^d\,\left(\frac{1+Z}2\right)^A\,q_{\mathrm{prim}}(1-(Z+Z^{-1})/2)

and

a_{\mathrm{dual}}(Z)=2Z^d\,\left(\frac{1+Z}2\right)^A\,q_{\mathrm{dual}}(1-(Z+Z^{-1})/2)

form a biorthogonal pair of scaling sequences. d is some integer used to center the symmetric sequences at zero or to make the corresponding discrete filters causal.

Depending on the roots of QA(X), there may be up to 2A − 1 different factorizations. A simple factorization is qprim(X) = 1 and qdual(X) = QA(X), then the \mathrm{prim}ary scaling function is the B-spline of order A-1. For A=1 one obtains the orthogonal Haar wavelet.

[edit] Tables of coefficients

For A=2 one obtains in this way the LeGall 3/5-wavelet:

A QA(X) qprim(X) qdual(X) aprim(Z) adual(Z)
2 1 + \frac12\,X 1 1 + \frac12\,X \frac12(1+Z)^2\,Z \frac12(1+Z)^2\,\left(-\frac14 + \frac32\,Z - \frac14\,Z^2\right)

For A=4 one obtains the 9/7-CDF-wavelet. One has Q_4(X)=1 + 2\,X + 5/2\,X^2 + 5/2\,X^3, so this polynomial has one real root, thus it is the product of a linear factor 1-c\,X and a quadratic factor. c has an approximate value of -1.4603482098.

A QA(X) qprim(X) qdual(X)
4 1 + 2\,X + 5/2\,X^2 + 5/2\,X^3 1-c\,X 1 + (c + 2)*\,X + (c^2 + 2*c + 5/2)\,X^2

For the coefficients of the centered scaling and wavelet sequences one gets numerical values in an implementation–friendly form

k Analysis lowpass filter

(1/2 adual)

Analysis highpass filter

(bdual)

Synthesis lowpass filter

(aprim)

Synthesis highpass filter

(1/2 bprim)

-4 0.026748757411 0 0 0.026748757411
-3 -0.016864118443 0.091271763114 -0.091271763114 0.016864118443
-2 -0.078223266529 -0.057543526229 -0.057543526229 -0.078223266529
-1 0.266864118443 -0.591271763114 0.591271763114 -0.266864118443
0 0.602949018236 1.11508705 1.11508705 0.602949018236
1 0.266864118443 -0.591271763114 0.591271763114 -0.266864118443
2 -0.078223266529 -0.057543526229 -0.057543526229 -0.078223266529
3 -0.016864118443 0.091271763114 -0.091271763114 0.016864118443
4 0.026748757411 0 0 0.026748757411

[edit] Numbering

There are two concurring numbering schemes for wavelets of the CDF family.

  • the number of smoothness factors of the lowpass filters, or equivalently the number of vanishing moments of the highpass filters, e.g. 2,2
  • the sizes of the lowpass filters, or equivalently the sizes of the highpass filters, e.g. 5,3

The first numbering was used in Daubechies' book Ten lectures on wavelets. Neither of this numbering is unique. The number of vanishing moments does not tell about the chosen factorization. A filterbank with filter sizes 7 and 9 can have 6 and 2 vanishing moments when using the trivial factorization, or 4 and 4 vanishing moments as it is the case for the JPEG 2000 wavelet.

[edit] Lifting decomposition

For the trivially factorized filterbanks a lifting decomposition can be explicitly given. (See Section 3.2.4 of this thesis)

[edit] Even number of smoothness factors

Let n be the number of smoothness factors in the B-spline lowpass filter, which shall be even.

Then define recursively

a_0 = \frac{1}{n}
a_m = \frac{1}{(n^2-4\cdot m^2)\cdot a_{m-1}}

The lifting filters are

s_{m}(z) = a_m\cdot(2\cdot m + 1)\cdot(1 + z^{(-1)^m})

Conclusively the interim results of the lifting are

x − 1(z) = z
x0(z) = 1
x_{m+1}(z) = x_{m-1}(z) + a_m\cdot(2\cdot m+1)\cdot(z+z^{-1}) \cdot z^{(-1)^m} \cdot x_{m}(z)

which leads to

x_{n/2}(z) = 2^{-n/2} \cdot (1+z)^n \cdot z^{n/2 \bmod 2 - n/2}

The filters xn / 2 and xn / 2 − 1 constitute the CDF-n,0 filterbank.

[edit] Odd number of smoothness factors

Now, let n be odd.

Then define recursively

a_0 = \frac{1}{n}
a_m = \frac{1}{(n^2-(2\cdot m-1)^2)\cdot a_{m-1}}

The lifting filters are

s_{m}(z) = a_m\cdot((2\cdot m + 1) + (2\cdot m - 1)\cdot z) / z^{m \bmod 2}

Conclusively the interim results of the lifting are

x − 1(z) = z
x0(z) = 1
x_{1}(z) = x_{-1}(z)+a_0\cdot x_0(z)
x_{m+1}(z) = x_{m-1}(z) + a_m\cdot((2\cdot m+1)\cdot z + (2\cdot m-1)\cdot z^{-1}) \cdot z^{(-1)^m} \cdot x_{m}(z)

which leads to

x_{(n+1)/2}(z) \sim (1+z)^n

where we neglect the translation and the constant factor.

The filters x(n + 1) / 2 and x(n − 1) / 2 constitute the CDF-n,1 filterbank.

[edit] Literature