1.4 Discrete Wavelet Transform
1.4 Discrete Wavelet Transform
1.4.1 Concept of Discrete Wavelet Transform
1.4.1 Concept of Discrete Wavelet Transform
In[]:=
f[x_]:=Sin[20x]
2
Log[x]
In[]:=
u=N[Table[f[i],{i,1/32,1,1/32}]]
Out[]=
{7.02779,7.29508,5.346,2.58784,0.057173,-1.60163,-2.17964,-1.84287,-0.984271,-0.0448888,0.636128,0.90238,0.781799,0.426935,0.0285651,-0.261377,-0.372927,-0.320387,-0.173266,-0.0146507,0.0940374,0.130003,0.10599,0.0538185,0.00504998,-0.0222418,-0.0265446,-0.017396,-0.00642286,-0.000413988,0.0005056,0.}
In[]:=
p0=ListPlot[u,PlotStyle{Red,Thin},JoinedTrue,FrameTrue,PlotRangeAll]
Out[]=
In[]:=
Plot[WaveletPsi[HaarWavelet[],x],{x,-1,2},ExclusionsNone]
Out[]=
In[]:=
Plot[WaveletPsi[DaubechiesWavelet[4],x],{x,-3,4},PlotRangeAll]
Out[]=
In[]:=
Plot[WaveletPhi[BattleLemarieWavelet[3,10],x],{x,-10,10},PlotRangeAll]
Out[]=
In[]:=
n=1;
In[]:=
dwd=DiscreteWaveletTransform[u,HaarWavelet[],n]
Out[]=
DiscreteWaveletData
In[]:=
dwd["TreeView"]
Out[]=
In[]:=
p1=Normal[dwd];
In[]:=
p1[[1]]
Out[]=
{0}{10.1278,5.61007,-1.09209,-2.84435,-0.727726,1.08789,0.854704,-0.164623,-0.490247,-0.132877,0.158421,0.113001,-0.0121564,-0.0310707,-0.00483438,0.000357513}
In[]:=
p1[[2]]
Out[]=
{1}{-0.189,1.95032,1.17295,-0.238134,-0.664243,-0.188269,0.250927,0.20502,-0.0371513,-0.112158,-0.0254319,0.0368906,0.0192982,-0.00646902,-0.00424891,0.000357513}
In[]:=
GraphicsGrid[{{ListPlot[p1[[1]][[2]]/1.5,PlotStyle{Red},JoinedTrue,FrameTrue,PlotRange{-3,11},AspectRatio1.5],ListPlot[p1[[2]][[2]]/1.5,PlotStyle{Blue,Thin},JoinedTrue,FrameTrue,PlotRange{-3,11},AspectRatio1.5]}}]
Out[]=
In[]:=
n=2;
In[]:=
dwd=DiscreteWaveletTransform[u,HaarWavelet[],n]
Out[]=
DiscreteWaveletData
In[]:=
dwd["TreeView"]
Out[]=
In[]:=
p2=Normal[dwd];
In[]:=
p2[[1]]
Out[]=
{0}{10.1278,5.61007,-1.09209,-2.84435,-0.727726,1.08789,0.854704,-0.164623,-0.490247,-0.132877,0.158421,0.113001,-0.0121564,-0.0310707,-0.00483438,0.000357513}
In[]:=
p2[[2]]
Out[]=
{1}{-0.189,1.95032,1.17295,-0.238134,-0.664243,-0.188269,0.250927,0.20502,-0.0371513,-0.112158,-0.0254319,0.0368906,0.0192982,-0.00646902,-0.00424891,0.000357513}
In[]:=
p2[[3]]
Out[]=
{0,0}{11.1284,-2.78349,0.254674,0.487961,-0.440615,0.191924,-0.0305662,-0.00316562}
In[]:=
p2[[4]]
Out[]=
{0,1}{3.19452,1.23903,-1.28383,0.720772,-0.252698,0.0321164,0.0133744,-0.00367122}
In[]:=
GraphicsGrid[{{ListPlot[p2[[3]][[2]]/1.5,PlotStyle{Red},JoinedTrue,FrameTrue,PlotRange{-3,12},AspectRatio1.5],ListPlot[p2[[4]][[2]]/1.5,PlotStyle{Green,Thin},JoinedTrue,FrameTrue,PlotRange{-3,12},AspectRatio1.5],ListPlot[p1[[2]][[2]]/1.5,PlotStyle{Blue,Thin},JoinedTrue,FrameTrue,PlotRange{-3,12},AspectRatio1.5]}}]
1.4.2 2D Discrete Wavelet Transform
1.4.2 2D Discrete Wavelet Transform
1.4.3 DWT Image Compression
1.4.3 DWT Image Compression