收藏 分享(赏)

小波变换 matlab 总结.docx

上传人:HR专家 文档编号:5029475 上传时间:2019-01-31 格式:DOCX 页数:60 大小:4.97MB
下载 相关 举报
小波变换 matlab 总结.docx_第1页
第1页 / 共60页
小波变换 matlab 总结.docx_第2页
第2页 / 共60页
小波变换 matlab 总结.docx_第3页
第3页 / 共60页
小波变换 matlab 总结.docx_第4页
第4页 / 共60页
小波变换 matlab 总结.docx_第5页
第5页 / 共60页
点击查看更多>>
资源描述

1、小波变换 matlab 总结目录一、预置工具 41.预置信号 .42.预置小波 .43.滤波器函数 .6wfilters 函数 .64.量化编码 .6wcodemat 函数 .65.阈值获取 .6ddencmp 函数 6thselect 函数 .7wbmpen 函数 7wdcbm 函数 .76.阈值去噪 .8wden 函数 .8wdencmp 函数 8wthresh 函数 9wthcoef 函数 9wpdencmp 函数 .9二、小波变换函数 13单尺度一维小波变换 13cwt 一维连续小波变换 .13dwt 一维离散小波变换 .13idwt 一维离散小波逆变换 .14upcoef 一维小波系

2、数重构 .14多尺度一维小波变换 15wavedec 多尺度一维分解 15waverec 多尺度一维重构 16appcoef 低频系数提取 17detcoef 高频系数提取 17wrcoef 多尺度小波系数重构 18一维静态(平稳)小波变换 19swt 一维平稳小波变换 .19iswt 一维平稳小波逆变换 .19实例 20单尺度二维小波变换 20dwt2 二维离散小波变换 .20idwt2 二维离散小波逆变换 .21upcoef2 二维系数重构 21多尺度二维小波变换 22wavedec2 多尺度二维分解 .22waverec2 多尺度二维重构 .23appcoef2 低频系数提取 .24de

3、tcoef2 高频系数提取 .24wrcoef2 多尺度小波系数重构 25二维静态(平稳)小波变换 27swt2 二维静态小波变换 .27iswt2 二维静态小波逆变换 .27实例 27直接调用的小波函数 29meyer 函数 .29cgauwavf 函数 .29mexihat 函数 29morlet 函数 30symwavf 函数 30三、图像接口调用 31使用图形接口做一维连续小波分析 31使用图形接口做一维离散小波分析 34使用图形接口分析复信号 37使用图形接口做一维除噪分析 38四、小波变换在图像处理中的应用 414.1 小波分析用于图像压缩 414.1.1 基于小波变换的图像局部压

4、缩 414.1.2 小波变换用于图像压缩的一般方法 424.1.3 基于小波包变换的图像压缩 464.2 小波分析用于图像去噪 48小噪声阈值去噪 49大噪声滤波去噪 50少量噪声的小波分解系数阈值量化去噪 514.3 小波分析用于图像增强 534.3.1 图像增强问题描述 534.3.2 图像钝化 544.3.3 图像锐化 554.4 小波分析用于图像融合 574.5 小波分析用于图像分解 58一、预置工具1.预置信号Matlab 内置了大量的信号实例,进行信号试验的时候可以调用。调用格式:load signalmatlab 安装目录的 toolbox/wavelet/wavedemonoi

5、ssin 包含噪声的正弦波leleccum 一维电压信号 ,有 365560 个采样点wbarb 专指图片:2.预置小波Matlab 预置了共计 15 种小波。查看语句:wavemngr(read,1)查看单个小波:waveinfo(wname)1.Haar 小波 小波名 haar2. Daubechies 小波系小波名 db调用名 db1 db2 db3 db4 db5 db6 db7 db8 db9 db10 3.对称小波系 Symlets 小波名 sym调用名 sym2 sym3 sym4 sym5 sym6 sym7 sym84. Coiflets 小波系小波名 coif调用名 coi

6、f1 coif2 coif3 coif4 coif5 5. Biorthogonal 小波系小波名 bior调用名 bior1.1 bior1.3 bior1.5 bior2.2 bior2.4 bior2.6 bior2.8 bior3.1 bior3.3 bior3.5 bior3.7 bior3.9 bior4.4 bior5.5 bior6.86.ReverseBior 小波系 小波名 rbio调用名 rbio1.1 rbio1.3 rbio1.5 rbio2.2 rbio2.4 rbio2.6 rbio2.8 rbio3.1 rbio3.3 rbio3.5 rbio3.7 rbio3

7、.9 rbio4.4 rbio5.5 rbio6.87.Meyer 小波小波名 meyr 8. Dmeyer 小波 小波名 dmey 9. Gaussian 小波系 小波名 gaus调用名 gaus1 gaus2 gaus3 gaus4 gaus5 gaus6 gaus7 gaus8 10. Mexican hat 小波 小波名 mexh 11. Morlet 小波 小波名 morl12.Complex Gaussian 小波系 小波名 cgau调用名 cgau1 cgau2 cgau3 cgau4 cgau5 cgau13. Shannon 小波系小波名 shan调用名 shan1-1.5

8、shan1-1 shan1-0.5 shan1-0.1 shan2-314. Frequency B 小波系 小波名 fbsp调用名 fbsp1-1-1.5 fbsp1-1-1 fbsp1-1-0.5 fbsp2-1-1 fbsp2-1-0.5 fbsp2-1-0.115. Complex Morlet 小波系小波名 cmor调用名 cmor1-1.5 cmor1-1 cmor1-0.5 cmor1-1 cmor1-0.5 cmor1-0.13.滤波器函数wfilters 函数Lo_D,Hi_D,Lo_R,Hi_R = wfilters(wname) 计算对应小波的滤波器。The four o

9、utput filters areLo_D, 用于分解的低通滤波器Hi_D, 用于分解的高通滤波器Lo_R, 用于重构的低通滤波器Hi_R, 用于重构的高通滤波器4.量化编码wcodemat 函数y=wcodemat(x,nb,opt,absol)y=wcodemat(x,nb,opt)y=wcodemat(x,nb)y=wcodemat(x)该函数是用来对矩阵 X 进行量化编码, 它返回矩阵 X 的一个编码矩阵,在编码中,把矩阵 X 中元素绝对值最大的作为 NB(NB 是一个整数),绝对值最小的作为 1,其他元素依其绝对值的大小在1 与 NB 中排列.当 OPT 为row 时,做行编码;当

10、OPT 为col 时,做列编码,当 OPT 为mat 时,做全局编码, 即把整个矩阵中的元素绝对值最大的元素作为 NB,最小的作为 1,其他元素依其绝对值的大小在整个矩阵中排列.当 ABSOL 为 0 时, 该函数返回输入矩阵 X 的一个编码版本;为非 0 时,返回 X 的绝对值5.阈值获取MATLAB 中实现阈值获取的函数有 ddencmp、thselect、wbmpen 和 wwdcbm,下面对它们的用法进行简单的说明。ddencmp 函数调用格式:THR,SORH,KEEPAPP,CRIT=ddencmp(IN1,IN2,X)函数 ddencmp 用于获取信号在消噪或压缩过程中的默认阈值

11、。输入参数 X 为一维或二维信号;IN1 取值为den 或cmp,den表示进行去噪,cmp表示进行压缩;IN2 取值为wv 或wp,wv 表示选择小波,wp 表示选择小波包。输出参数 THR 为函数选择的阈值, SORH 为函数选择阈值使用方式。Sorh=s,为软阈值;Sorh=h,为硬阈值; 输出参数 KEEPAPP 决定了是否对近似分量进行阈值处理。可选为 0 或 1。CRIT 为使用小波包进行分解时所选取的熵函数类型。 例:自动生成信号小波处理的阈值选取方案。 r=2055415866; randn(seed,r); x=randn(1,1000);%产生白噪声; %求取对信号进行小波

12、消噪处理的默认阈值、软阈值,并且保留低频系数;thr,sorh,keepapp=ddencmp(den,wv,x);输出:thr = 3.8593sorh = skeepapp = 1thselect 函数调用格式如下:THR=thselect(X,TPTR);根据字符串 TPTR 定义的阈值选择规则来选择信号 X 的自适应阈值。自适应阈值的选择规则包括以下四种:*TPTR=rigrsure,自适应阈值选择使用 Stein 的无偏风险估计原理。*TPTR=heursure,使用启发式阈值选择。*TPTR=sqtwolog,阈值等于 sqrt(2*log(length(X).*TPTR=mini

13、maxi,用极大极小原理选择阈值。阈值选择规则基于模型 y = f(t) + e,e 是高斯白噪声 N(0,1)。wbmpen 函数调用格式:THR=wbmpen(C,L,SIGMA,ALPHA);返回去噪的全局阈值 THR。THR 通过给定的一种小波系数选择规则计算得到,小波系数选择规则使用 Birge-Massart 的处罚算法。C,L是进行去噪的信号或图像的小波分解结构;SIGMA 是零均值的高斯白噪声的标准偏差;ALPHA 是用于处罚的调整参数,它必须是一个大于 1 的实数,一般去 ALPHA=2。wdcbm 函数调用格式:(1)THR,NKEEP=wdcbm(C,L,ALPHA);(

14、2)THR,NKEEP=wdcbm(C,L,ALPHA,M);函数 wdcbm 是使用 Birge-Massart 算法获取一维小波变换的阈值。返回值 THR 是与尺度无关的阈值,NKEEP 是系数的个数。C,L是要进行压缩或消噪的信号在 j=length(L)-2 层的分解结构;LAPHA 和 M 必须是大于 1 的实数;THR 是关于 j 的向量,THR (i)是第 i 层的阈值;NKEEP 也是关于 j 的向量,NKEEP(i) 是第 i 层的系数个数。一般压缩时 ALPHA 取 1.5,去噪时 ALPHA 取 3.6.阈值去噪MATLAB 中实现信号的阈值去噪的函数有wden、 wde

15、ncmp、wthresh、wthcoef 、wpthcoef 以及 wpdencmp。下面对它们的用法作简单的介绍。wden 函数调用格式:(1)XD,CXD,LXD=wden(X,TPTR,SORH,SCAL,N,wname)(2)XD,CXD,LXD=wden(C,L,TPTR,SORH,SCAL,N,wname)函数 wden 用于一维信号的自动消噪。X 为原始信号,C,L为信号的小波分解,N 为小波分解的层数。THR 为阈值选择规则:*TPTR=rigrsure,自适应阈值选择使用 Stein 的无偏风险估计原理。*TPTR=heursure,使用启发式阈值选择。*TPTR=sqtwo

16、log,阈值等于 sqrt(2*log(length(X).*TPTR=minimaxi,用极大极小原理选择阈值。SORH 是软阈值或硬阈值的选择(分别对应s和h ) 。SCAL 指所使用的阈值是否需要重新调整,包含下面三种:*SCAL=one 不调整;*SCAL=sln 根据第一层的系数进行噪声层的估计来调整阈值。*SCAL=mln 根据不同的噪声估计来调整阈值。XD 为消噪后的信号,CXD,LXD为消噪后信号的小波分解结构。格式(1)返回对信号 X 经过 N 层分解后的小波系数进行阈值处理后的消噪信号 XD 和信号 XD 的小波分解结构CXD,LXD。格式(2)返回参数与格式(1)相同,但

17、其结构是由直接对信号的小波分解结构C,L 进行阈值处理得到的。wdencmp 函数调用格式有以下三种:(1)XC,CXC,LXC,PERF0,PERFL2=wdencmp(gbl,X,wname,N,THTR,SORH,KEEPAPP);(2)XC,CXC,LXC,PERF0,PERFL2=wdencmp(lvd,X,wname,N,THTR,SORH);(3)XC,CXC,LXC,PERF0,PERFL2=wdencmp(lvd,C,L,wname,N,THTR,SORH);函数 wdencmp 用于一维或二维信号的消噪或压缩。wname 是所用的小波函数。gbl(global 的缩写 )表

18、示每一层都采用同一个阈值进行处理。lvd 表示每层采用不同的阈值进行处理。N 表示小波分解的层数。THR 为阈值向量,对于格式(2 )和(3)每层都要求有一个阈值,因此阈值向量 THR 的长度为 N。SORH 表示选择软阈值或硬阈值(分别取值为s和h ) ,参数 KEEPAPP 取值为 1 时,则低频系数不进行阈值量化,反之,低频系数要进行阈值量化。XC 是要进行消噪或压缩的信号,CXC,LXC是 XC 的小波分解结构,PERF0 和 PERFL2 是恢复或压缩 L2 的范数百分比。如果C,L是 X 的小波分解结构,则PERFL2=100*(CXC 向量的范数/C 向量的范数)2;如果 X 是

19、一维信号,小波 wname 是一个正交小波,则 PERFL2=100|XC|2/|X|2。wthresh 函数调用格式:Y=wthresh(X,SORH,T)返回输入向量或矩阵 X 经过软阈值(如果 SORH=s)或硬阈值(如果 SORH=h)处理后的信号。T 是阈值。Y=wthresh(X,s,T)返回的是 Y=SIG(X)*(|X|-T)+,即把信号的绝对值与阈值进行比较,小于或等于阈值的点变为零,大于阈值的点为该点值与阈值的差值。Y=wthresh(X,h,T)返回的是 Y=X*1(|X|T),即把信号的绝对值和阈值进行比较,小于或等于阈值的点变为零,大于阈值的点保持不变。一般来说,用硬

20、阈值处理后的信号比用软阈值处理后的信号更粗糙。wthcoef 函数调用格式:(1)NC=wthcoef(d,C,L,N,P)(2)NC=wthcoef(d,C,L,N)(3)NC=wthcoef(a,C,L)(4)NC=wthcoef(t,C,L,N,T,SORH)用于一维信号小波系数的阈值处理。格式(1)返回小波分解结构C,L经向量 N 和 P 定义的压缩率处理后的新的小波分解向量NC, NC,L构成一个新的小波分解结构。N 包含被压缩的细节向量,P 是把较小系数置 0 的百分比信息的向量。N 和 P 的长度必须相同,向量 N 必须满足 1=N(i)=length(L)-2。格式(2)返回小

21、波分解结构C,L经过向量 N 中指定的细节系数置 0 后的小波分解向量 NC。格式(3)返回小波分解结构C,L经过近似系数置 0 后的小波分解向量 NC。格式(4)返回小波分解结构C,L经过将向量 N 作阈值处理后的小波分解向量 NC。如果SORH=s,则为软阈值;如果 SORH=h则为硬阈值。N 包含细节的尺度向量,T 是 N 相对应的阈值向量。N 和 T 的长度必须相等。wpdencmp 函数调用格式:XD,TREED,PERF0,PERFL2=wpdencmp(X,SORH,N,wname,CRIT,PAR,KEEPAPP)XD,TREED,PERF0,PERFL2=wpdencmp(T

22、REE,SORH,CRIT,PAR,KEEPAPP)函数 wpdencmp 用于使用小波包变换进行信号的压缩或去噪。格式(1)返回输入信号 X(一维或二维)的去噪或压缩后的信号 XD。输出参数 TREED 是 XD 的最佳小波包分解树;PERFL2 和 PERF0 是恢复和压缩 L2 的能量百分比。PERFL2=100*(X 的小波包系数范数/X的小波包系数)2;如果 X 是一维信号,小波 wname 是一个正交小波,则PERFL2=100*|XD|2/|X|2。SORH 的取值为s 或h,表示的是软阈值或硬阈值。输入参数 N 是小波包的分解层数,wname 是包含小波名的字符串。函数使用由字

23、符串 CRIT 定义的熵和阈值参数 PAR 实现最佳分解。如果 KEEPAPP=1,则近似信号的小波系数不进行阈值量化;否则,进行阈值量化。格式(2)与格式(1)的输出参数相同,输入选项也相同,只是它从信号的小波包分解树TREE 进行去噪或压缩。实例:load noisdopp;x=noisdopp;%给出全局阈值thr,sorh,keepapp=ddencmp(den,wv,x);%根据全局阈值对信号降噪xc=wdencmp(gbl,x,sym4,2,thr,sorh,keepapp);c,l=wavedec(x,2,sym4);thr1,nkeep=wdcbm(c,l,3);xc1=wde

24、ncmp(lvd,c,l,sym4,2,thr1,s);subplot(311);plot(x);title(原始信号)subplot(312);plot(xc);title (使用全局阈值降噪后的信号); subplot(313);plot(xc1);title (使用分层阈值降噪后的信号);load woman%下面进行噪声的产生init=3;rand(seed,init);Xn=X+18*(rand(size(X); %下面进行图像的去噪处理thr,sorh,keepapp=ddencmp(den,wv,Xn); Xd=wdencmp(gbl,Xn,sym5,2,thr,sorh,kee

25、papp);%用 sym5 小波对图像信号进行二层的小波分解c,s=wavedec2(X,2,sym5);thr1,nkeep1=wdcbm2(c,s,1.5);Xd1=wdencmp(lvd,c,s,sym5,2,thr1,s);%显示图像subplot(221);image(X); colormap(map);title(原始图像 X);axis squaresubplot(222);image(Xn); colormap(map);title(含噪声的图像);axis squaresubplot(223);image(Xd);colormap(map);title(去噪后的图像);axi

26、s squaresubplot(224);image(Xd1);colormap(map);title(分层去噪后的图像);axis square二、小波变换函数单尺度一维小波变换cwt 一维连续小波变换调用格式:coefs = cwt(s,scale,wname)【仅给出系数值】coefs = cwt(s,scale,wname,plot)【给出系数值同时生成图像】实例:load noissin; figuresubplot(121)plot(noissin);subplot(122)c=cwt(noissin,1:48,db4,plot); dwt 一维离散小波变换调用格式:cA1,cD1

27、=dwt(X,wname)【使用指定的小波基函数 wname 对信号 X 进行分解】cA1,cD1=dwt(X,Lo_D,Hi_D)【使用指定的滤波器组 Lo_D、Hi_D 对信号进行分解】实例:load leleccum;s=leleccum(1:3920);ls=length(s);cA,cD=dwt(s,db1);figuresubplot(121)plot(cA);subplot(122)plot(cD)Lo_D,Hi_D,Lo_R,Hi_R = wfilters(db1)cA1,cD1=dwt(s, Lo_D, Hi_D);figuresubplot(121)plot(cA1);su

28、bplot(122)plot(cD1)idwt 一维离散小波逆变换调用格式:X=idwt(cA,cD,wname)【由近似分量 cA 和细节分量 cD 经小波反变换重构原始信号 X】X=idwt(cA,cD,Lo_R, Hi_R)【用指定的重构滤波器 Lo_R 和 Hi_R 经小波反变换重构原始信号 X 】X=idwt(cA,cD,wname,L)【指定返回信号 X 中心附近的 L 个点】X=idwt(cA,cD, Lo_R, Hi_R, L)【与上边一致】upcoef 一维小波系数重构调用格式:Y = upcoef(O,X,wname,N) Y = upcoef(O,X,wname,N,L)

29、Y = upcoef(O,X,Lo_R,Hi_R,N)Y = upcoef(O,X,Lo_R,Hi_R,N,L)这一函数是一维小波分解系数的直接重构它重建的是原信号在指定层次的,高频或者低频分量。也就是说,这个信号不是原本的信号,而且某个层次上的逼近。N=1 条件下相当与缺省模式的 idwtA1 = upcoef(a,cA1,db1,1,l_s) 相当于 A1 = idwt(cA1,db1,l_s); D1 = upcoef(d,cD1,db1,1,l_s) 相当于 D1 = idwt(,cD1,db1,l_s);而 O 是一个标识符,O=a 低频,O=d 高频N 代表了小波系数的级别,是几级

30、小波系数。L 则指定返回信号 X 中心附近的 L 个点例子:load leleccum;s=leleccum(1:3920);ls=length(s);cA,cD=dwt(s,db1);A1=upcoef(a,cA,db1,1,ls); D1=upcoef(d,cD,db1,1,ls);% A1 = idwt(cA,db1,ls);D1 = idwt(,cD,db1,ls);subplot(1,2,1);plot(A1);title(Approximation A1)subplot(1,2,2);plot(D1);title(Detail D1)多尺度一维小波变换wavedec 多尺度一维分解

31、调用格式:C, L=wavedec(X,N,wname)C, L=wavedec(X,N,Lo_D,Hi_D)函数返回 N 层分解的各组分系数 C(连接在一个向量里),向量 L 里返回的是各组分的长度。分解的结构如下例子:load leleccum;s=leleccum(1:3920);C,L=wavedec(s,3,db1);subplot(1,2,1);plot(C);title(C)subplot(1,2,2);plot(L);title(L)waverec 多尺度一维重构调用格式:X=waverec(C,L,wname)X=waverec(C,L,Lo_R,Hi_R)实例:load l

32、eleccum;s=leleccum(1:3920);C,L=wavedec(s,3,db1);A0=waverec(C,L,db1);Err=abs(s-A0);figure(1)subplot(3,1,1);plot(s);title(original s);subplot(3,1,2);plot(A0);title(wavereconstruction s);subplot(3,1,3);plot(Err);title(wavereconstruction err);appcoef 低频系数提取调用格式:A=appcoef(C,L,wname,N) 从 C 中抽取 N 层近似系数A=ap

33、pcoef(C,L,wname)A=appcoef(C,L,Lo_R,Hi_R,N)A=appcoef(C,L, Lo_R,Hi_R)detcoef 高频系数提取调用格式:A=detcoef(C,L,N)A=detcoef(C,L)实例:load leleccum;s=leleccum(1:3920);C,L=wavedec(s,3,db1);cA3=appcoef(C,L,db1,3);cD3=detcoef(C,L,3);cD2=detcoef(C,L,2);cD1=detcoef(C,L,1);subplot(2,2,1);plot(cA3);title(cA3)subplot(2,2,

34、2);plot(cD3);title(cD3)subplot(2,2,3);plot(cD2);title(cD2)subplot(2,2,4);plot(cD1);title(cD1)wrcoef 多尺度小波系数重构调用格式:X=wrcoef(type,C,L,wname,N)X=wrcoef(type,C,L,Lo_R,Hi_R,N)X=wrcoef(type,C,L,wname)X=wrcoef(type,C,L, Lo_R,Hi_R)其中 type=a 低频, type=d 高频作用类似于 upcoef,只不过是多尺度函数。实例:load leleccum;s=leleccum(1:3

35、920);C,L=wavedec(s,3,db1);cA3=wrcoef(a,C,L,db1,3); cD1=wrcoef(d,C,L,db1,1);cD2=wrcoef(d,C,L,db1,2);cD3=wrcoef(d,C,L,db1,3);subplot(2,2,1);plot(cA3);title(cA3)subplot(2,2,2);plot(cD3);title(cD3)subplot(2,2,3);plot(cD2);title(cD2)subplot(2,2,4);plot(cD1);title(cD1)一维静态(平稳)小波变换离散平稳小波分析所用到的函数有 swt 小波分解和

36、 iswt 小波重构swt 一维平稳小波变换调用格式SWC = swt(X,N,wname)SWC = swt(X,N,Lo_D,Hi_D)swa,swd = swt(X,N,wname)swa,swd = swt(X,N,Lo_D,Hi_D)对于 SWT 变换,如果需要在第 k 层分解信号,那么原始信号需要能够平分成 2k 份。所以如果原始信号的长度不满足要求,需要使用 Signal Extension GUI 工具或使用 wextend 函数来扩展它。函数执行将产生 N 层近似和细节的系数,两者和信号的长度是相等的,这也是平稳小波和普通小波不同的地方,从而使它在某些领域有好的效果。iswt

37、 一维平稳小波逆变换调用格式X = iswt(SWC,wname)X = iswt(SWA,SWD,wname)X = iswt(SWC,Lo_R,Hi_R)X = iswt(SWA,SWD,Lo_R,Hi_R)实例load noisdopps = noisdopp;swa,swd = swt(s,1,db1);%一层平稳小波分解subplot(1,2,1), plot(swa); title(Approximation cfs)subplot(1,2,2), plot(swd); title(Detail cfs)res = iswt(swa,swd,db1); %一层平稳小波重构%从系数中

38、构建近似和细节nulcfs = zeros(size(swa);A1 = iswt(swa,nulcfs,db1);D1 = iswt(nulcfs,swd,db1);subplot(4,1,1), plot(s); title(original s);subplot(4,1,2), plot(res); title(recovered s);subplot(4,1,3), plot(A1); title(Approximation A1);subplot(4,1,4), plot(D1); title(Detail D1);单尺度二维小波变换dwt2 二维离散小波变换cA1,cH1,cV1,

39、cD1=dwt2(X,wname)cA1,cH1,cV1,cD1=dwt2(X,Lo_D,Hi_D)其中 cA1, cH1 水平;cV1 垂直;cD1 对角二维小波变换有四个值实例:load wbarb; figure(1);image(X); colormap(map); colorbar; cA1,cH1,cV1,cD1=dwt2(X,bior3.7);figure(2);colormap(map);subplot(2,2,1);image(wcodemat(cA1,192);title(cA1)subplot(2,2,2);image(wcodemat(cH1,192);title(cH

40、1)subplot(2,2,3);image(wcodemat(cV1,192);title(cV1)subplot(2,2,4);image(wcodemat(cD1,192);title(cD1)idwt2 二维离散小波逆变换X = idwt2(cA1,cH1,cV1,cD1,bior3.7);upcoef2 二维系数重构调用格式:Y=upcoef2(O,X,wname,N,S)Y=upcoef2(O,X,Lo_R,Hi_R,N,S)Y=upcoef2(O,X,wname,N)Y=upcoef2(O,X,Lo_R,Hi_R,N)Y=upcoef2(O,X,wname)Y=upcoef2(O

41、,X,Lo_R,Hi_R)O:a 低频;h 水平;v 垂直;d对角实例:load wbarb; cA1,cH1,cV1,cD1=dwt2(X,bior3.7);A1 = upcoef2(a,cA1,bior3.7,1); H1 = upcoef2(h,cH1,bior3.7,1);V1 = upcoef2(v,cV1,bior3.7,1);D1 = upcoef2(d,cD1,bior3.7,1);figure(2);colormap(map);subplot(2,2,1); image(wcodemat(A1,192);title(Approximation A1) subplot(2,2,

42、2); image(wcodemat(H1,192); title(Horizontal Detail H1) subplot(2,2,3); image(wcodemat(V1,192); title(Vertical Detail V1)subplot(2,2,4); image(wcodemat(D1,192);title(Diagonal Detail D1)多尺度二维小波变换wavedec2 多尺度二维分解C, S=wavedec2(X,N,wname)C, S=wavedec2(X,N,Lo_D,Hi_D)c 为各层分解系数,s 为各层分解系数长度 ,也就是大小.c 的结构:c=A

43、(N)|H(N)|V(N)|D(N)|H(N-1)|V(N-1)|D(N-1)|H(N-2)|V(N-2)|D(N-2)|.|H(1)|V(1)|D(1)可见,c 是一个行向量,即:1*(size(X),(e.g,X=256*256,then c 大小为:1*(256*256)=1*65536)A(N)代表第 N 层低频系数,H(N)|V(N)|D(N) 代表第 N 层高频系数,分别是水平,垂直, 对角高频,以此类推,到 H(1)|V(1)|D(1).s 的结构:储存各层分解系数长度的,即第一行 A(N)的长度, 第二行是 H(N)|V(N)|D(N)|的长度,第三行是H(N-1)|V(N-1

44、)|D(N-1)的长度 ,倒数第二行是 H(1)|V(1)|D(1)长度,最后一行是 X 的长度(大小)实例:load wbarb; C,S = wavedec2(X,2,bior3.7); figure(2);colormap(map); subplot(1,2,1); plot(C);subplot(1,2,2); plot(S);waverec2 多尺度二维重构调用格式:X=waverec2(C,S,wname)X=waverec2(C,S,Lo_R,Hi_R)实例:load wbarb;C,S = wavedec2(X,2,bior3.7);X0=waverec2(C,S,bior3.

45、7);Err=abs(X0-X);figure(1);colormap(map); subplot(3,1,1);image(wcodemat(X,192);title(original X) subplot(3,1,2);image(wcodemat(X0,192);title(wavereconstruction X) subplot(3,1,3);imshow(Err,)appcoef2 低频系数提取调用格式:A=appcoef2(C,S,wname,N)A=appcoef2(C,S,Lo_R,Hi_R,N)detcoef2 高频系数提取调用格式:A= detcoef2(type,C,S

46、,wname,N)Type: h 水平;v垂直;d对角实例:load wbarb;C,S = wavedec2(X,2,bior3.7);cA2 = appcoef2(C,S,bior3.7,2);cH2 = detcoef2(h,C,S,2);cV2 = detcoef2(v,C,S,2);cD2 = detcoef2(d,C,S,2);cA1 = appcoef2(C,S,bior3.7,1);cH1 = detcoef2(h,C,S,1);cV1 = detcoef2(v,C,S,1);cD1 = detcoef2(d,C,S,1);figure(1);colormap(map); su

47、bplot(2,2,1); image(wcodemat(cA1,192);title(Approximation A1) subplot(2,2,2); image(wcodemat(cH1,192); title(Horizontal Detail H1) subplot(2,2,3); image(wcodemat(cV1,192); title(Vertical Detail V1)subplot(2,2,4); image(wcodemat(cD1,192);title(Diagonal Detail D1)figure(2);colormap(map); subplot(2,2,1

48、); image(wcodemat(cA2,192);title(Approximation A2) subplot(2,2,2); image(wcodemat(cH2,192); title(Horizontal Detail H2) subplot(2,2,3); image(wcodemat(cV2,192); title(Vertical Detail V2)subplot(2,2,4); image(wcodemat(cD2,192);title(Diagonal Detail D2)wrcoef2 多尺度小波系数重构调用格式:X= wrcoef2(type,C,S,wname,N

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 工作总结

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报