# Cohen–Daubechies–Feauveau wavelet

(Redirected from Cohen-Daubechies-Feauveau wavelet)
An example of the 2D wavelet transform that is used in JPEG2000

Cohen–Daubechies–Feauveau wavelet are the historically first family of biorthogonal wavelets, which was made popular by Ingrid Daubechies.[1][2] 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 CDF 5/3 wavelet (also called the LeGall 5/3 wavelet) for lossless compression and a CDF 9/7 wavelet for lossy compression.

## Properties

• The primal generator is a B-spline if the simple factorization ${\displaystyle q_{\text{prim}}(X)=1}$ (see below) is chosen.
• The dual generator has the highest possible number of smoothness factors for its length.
• All generators and wavelets in this family are symmetric.

## Construction

For every positive integer A there exists a unique polynomial ${\displaystyle Q_{A}(X)}$ of degree A − 1 satisfying the identity

${\displaystyle \left(1-{\frac {X}{2}}\right)^{A}\,Q_{A}(X)+\left({\frac {X}{2}}\right)^{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

${\displaystyle Q_{A}(X)=q_{\text{prim}}(X)\,q_{\text{dual}}(X),}$

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

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

and

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

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 ${\displaystyle Q_{A}(X)}$, there may be up to ${\displaystyle 2^{A-1}}$ different factorizations. A simple factorization is ${\displaystyle q_{\text{prim}}(X)=1}$ and ${\displaystyle q_{\text{dual}}(X)=Q_{A}(X)}$, then the primary scaling function is the B-spline of order A − 1. For A = 1 one obtains the orthogonal Haar wavelet.

## Tables of coefficients

Cohen–Daubechies–Feauveau wavelet 5/3 used in JPEG 2000 standard

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

A QA(X) qprim(X) qdual(X) aprim(Z) adual(Z)
2 ${\displaystyle 1+X}$ 1 ${\displaystyle 1+X}$ ${\displaystyle {\frac {1}{2}}(1+Z)^{2}\,Z}$ ${\displaystyle {\frac {1}{2}}(1+Z)^{2}\,\left(-{\frac {1}{2}}+2\,Z-{\frac {1}{2}}\,Z^{2}\right)}$

For A = 4 one obtains the 9/7-CDF-wavelet. One gets ${\displaystyle Q_{4}(X)=1+2X+{\tfrac {5}{2}}X^{2}+{\tfrac {5}{2}}X^{3}}$, this polynomial has exactly one real root, thus it is the product of a linear factor ${\displaystyle 1-cX}$ and a quadratic factor. The coefficient c, which is the inverse of the root, has an approximate value of −1.4603482098.

A QA(X) qprim(X) qdual(X)
4 ${\displaystyle 1+2X+{\tfrac {5}{2}}X^{2}+{\tfrac {5}{2}}X^{3}}$ ${\displaystyle 1-cX}$ ${\displaystyle 1+(c+2)X+(c^{2}+2c+{\tfrac {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

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

## 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 filter bank 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. The same wavelet may therefore be referred to as "CDF 9/7" (based on the filter sizes) or "biorthogonal 4, 4" (based on the vanishing moments).

## Lifting decomposition

For the trivially factorized filterbanks a lifting decomposition can be explicitly given.[3]

### Even number of smoothness factors

Let ${\displaystyle n}$ be the number of smoothness factors in the B-spline lowpass filter, which shall be even.

Then define recursively

{\displaystyle {\begin{aligned}a_{0}&={\frac {1}{n}},\\a_{m}&={\frac {1}{(n^{2}-4\cdot m^{2})\cdot a_{m-1}}}.\end{aligned}}}

The lifting filters are

${\displaystyle s_{m}(z)=a_{m}\cdot (2\cdot m+1)\cdot (1+z^{(-1)^{m}}).}$

Conclusively, the interim results of the lifting are

{\displaystyle {\begin{aligned}x_{-1}(z)&=z,\\x_{0}(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),\end{aligned}}}

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

The filters ${\displaystyle x_{n/2}}$ and ${\displaystyle x_{n/2-1}}$ constitute the CDF-n,0 filterbank.

### Odd number of smoothness factors

Now, let ${\displaystyle n}$ be odd.

Then define recursively

{\displaystyle {\begin{aligned}a_{0}&={\frac {1}{n}},\\a_{m}&={\frac {1}{(n^{2}-(2\cdot m-1)^{2})\cdot a_{m-1}}}.\end{aligned}}}

The lifting filters are

${\displaystyle 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

{\displaystyle {\begin{aligned}x_{-1}(z)&=z,\\x_{0}(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),\end{aligned}}}

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

where we neglect the translation and the constant factor.

The filters ${\displaystyle x_{(n+1)/2}}$ and ${\displaystyle x_{(n-1)/2}}$ constitute the CDF-n,1 filterbank.

## Applications

The Cohen–Daubechies–Feauveau wavelet and other biorthogonal wavelets have been used to compress fingerprint scans for the FBI.[4] A standard for compressing fingerprints in this way was developed by Tom Hopper (FBI), Jonathan Bradley (Los Alamos National Laboratory) and Chris Brislawn (Los Alamos National Laboratory).[4] By using wavelets, a compression ratio of around 20 to 1 can be achieved, meaning a 10 MB image could be reduced to as little as 500 kB while still passing recognition tests.[4]