Coiflet

From HandWiki
Coiflet with two vanishing moments

Coiflets are discrete wavelets designed by Ingrid Daubechies, at the request of Ronald Coifman, to have scaling functions with vanishing moments. The wavelet is near symmetric, their wavelet functions have [math]\displaystyle{ N/3 }[/math] vanishing moments and scaling functions [math]\displaystyle{ N/3-1 }[/math], and has been used in many applications using Calderón–Zygmund operators.[1][2]

Theory

Some theorems about Coiflets:[3]

Theorem 1

For a wavelet system [math]\displaystyle{ \{\phi,\tilde{\phi},\psi,\tilde{\psi},h,\tilde{h},g,\tilde{g}\} }[/math], the following three equations are equivalent:

[math]\displaystyle{ \begin{array}{lcl} \mathcal{M_\tilde{\psi}}(0,l] = 0 & \text{for }l =0,1,\ldots,L-1 \\ \sum_n (-1)^n n^l h[n]=0 & \text{for }l =0,1,\ldots,L-1 \\ H^{(l)}(\pi)=0 & \text{for }l=0,1,\ldots,L-1 \end{array} }[/math]

and similar equivalence holds between [math]\displaystyle{ \psi }[/math] and [math]\displaystyle{ \tilde{h} }[/math]

Theorem 2

For a wavelet system [math]\displaystyle{ \{\phi,\tilde{\phi},\psi,\tilde{\psi},h,\tilde{h},g,\tilde{g}\} }[/math], the following six equations are equivalent:

[math]\displaystyle{ \begin{array}{lcl} \mathcal{M_\tilde{\phi}}(t_0,l] = \delta[l] & \text{for } l=0,1,\ldots,L-1 \\ \mathcal{M_\tilde{\phi}}(0,l] = t_0^l & \text{for } l=0,1,\ldots,L-1 \\ \hat{\phi}^(l)(0)=(-jt_0)^t& \text{for }l=0,1,\ldots,L-1 \\ \sum_n (n-t_0)^l h[n]= \delta[l] & \text{for } l=0,1,\ldots,L-1 \\ \sum_n n^l h[n]=t_0^l & \text{for } l=0,1,\ldots,L-1 \\ H^{(l)}(0)=(-jt_0)^t & \text{for } l=0,1,\ldots,L-1 \\ \end{array} }[/math]

and similar equivalence holds between [math]\displaystyle{ \tilde{\psi} }[/math] and [math]\displaystyle{ \tilde{h} }[/math]

Theorem 3

For a biorthogonal wavelet system [math]\displaystyle{ \{\phi,\psi,\tilde{\phi},\tilde{\psi}\} }[/math], if either [math]\displaystyle{ \tilde{\psi} }[/math] or [math]\displaystyle{ \psi }[/math] possesses a degree L of vanishing moments, then the following two equations are equivalent:

[math]\displaystyle{ \begin{array}{lcl} \mathcal{M_\tilde{\psi}}(t_0,l] = \delta[l] & \text{for } l=0,1,\ldots, \bar{L}-1 \\ \mathcal{M_\psi}(t_0,l] = \delta[l] & \text{for }l=0,1,\ldots, \bar{L}-1 \\ \end{array} }[/math]

for any [math]\displaystyle{ \bar{L} }[/math] such that [math]\displaystyle{ \bar{L} \ll L }[/math]

Coiflet coefficients

Both the scaling function (low-pass filter) and the wavelet function (high-pass filter) must be normalised by a factor [math]\displaystyle{ 1/\sqrt{2} }[/math]. Below are the coefficients for the scaling functions for C6–30. The wavelet coefficients are derived by reversing the order of the scaling function coefficients and then reversing the sign of every second one (i.e. C6 wavelet = {−0.022140543057, 0.102859456942, 0.544281086116, −1.205718913884, 0.477859456942, 0.102859456942}).

Mathematically, this looks like [math]\displaystyle{ B_k = (-1)^k C_{N - 1 - k} }[/math], where k is the coefficient index, B is a wavelet coefficient, and C a scaling function coefficient. N is the wavelet index, i.e. 6 for C6.

Coiflets coefficients (normalized to have sum 2)
k C6 C12 C18 C24 C30
−10 −0.0002999290456692
−9 0.0005071055047161
−8 0.0012619224228619 0.0030805734519904
−7 −0.0023044502875399 −0.0058821563280714
−6 −0.0053648373418441 −0.0103890503269406 −0.0143282246988201
−5 0.0110062534156628 0.0227249229665297 0.0331043666129858
−4 0.0231751934774337 0.0331671209583407 0.0377344771391261 0.0398380343959686
−3 −0.0586402759669371 −0.0930155289574539 −0.1149284838038540 −0.1299967565094460
−2 −0.1028594569415370 −0.0952791806220162 −0.0864415271204239 −0.0793053059248983 −0.0736051069489375
−1 0.4778594569415370 0.5460420930695330 0.5730066705472950 0.5873348100322010 0.5961918029174380
0 1.2057189138830700 1.1493647877137300 1.1225705137406600 1.1062529100791000 1.0950165427080700
1 0.5442810861169260 0.5897343873912380 0.6059671435456480 0.6143146193357710 0.6194005181568410
2 −0.1028594569415370 −0.1081712141834230 −0.1015402815097780 −0.0942254750477914 −0.0877346296564723
3 −0.0221405430584631 −0.0840529609215432 −0.1163925015231710 −0.1360762293560410 −0.1492888402656790
4 0.0334888203265590 0.0488681886423339 0.0556272739169390 0.0583893855505615
5 0.0079357672259240 0.0224584819240757 0.0354716628454062 0.0462091445541337
6 −0.0025784067122813 −0.0127392020220977 −0.0215126323101745 −0.0279425853727641
7 −0.0010190107982153 −0.0036409178311325 −0.0080020216899011 −0.0129534995030117
8 0.0015804102019152 0.0053053298270610 0.0095622335982613
9 0.0006593303475864 0.0017911878553906 0.0034387669687710
10 −0.0001003855491065 −0.0008330003901883 −0.0023498958688271
11 −0.0000489314685106 −0.0003676592334273 −0.0009016444801393
12 0.0000881604532320 0.0004268915950172
13 0.0000441656938246 0.0001984938227975
14 −0.0000046098383254 −0.0000582936877724
15 −0.0000025243583600 −0.0000300806359640
16 0.0000052336193200
17 0.0000029150058427
18 -0.0000002296399300
19 −0.0000001358212135

Matlab function

F = coifwavf(W) returns the scaling filter associated with the Coiflet wavelet specified by the string W where W = "coifN". Possible values for N are 1, 2, 3, 4, or 5.[4]

References

  1. G. Beylkin, R. Coifman, and V. Rokhlin (1991),Fast wavelet transforms and numerical algorithms, Comm. Pure Appl. Math., 44, pp. 141–183
  2. Ingrid Daubechies, Ten Lectures on Wavelets, Society for Industrial and Applied Mathematics, 1992, ISBN:0-89871-274-2
  3. "COIFLET-TYPE WAVELETS: THEORY, DESIGN, AND APPLICATIONS". https://seagrant.mit.edu/ESRDC_library/Wei_Dong_PhD_Thesis.pdf. 
  4. "coifwavf". http://www.mathworks.com/help/wavelet/ref/coifwavf.html. Retrieved 22 January 2015.