Matlab小波工具箱入门_第1页
Matlab小波工具箱入门_第2页
Matlab小波工具箱入门_第3页
Matlab小波工具箱入门_第4页
Matlab小波工具箱入门_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、使用MATLAB小波工具箱进行小波分析:-兰-(algffn如J 7riOURE 7S AI嫌酬m)ikMlimcnionaL井 1hurik hx Ehbatida4« d' t Mt, H 1Cdiiinn<MM4(duni nsAir)时ft)丽1),如上图所示的小波分解过程,可以调用wfilters来获得指定小波的分解和综合滤波器系数,例如:% Set wavelet name.wname = 'db5'% Compute the four filters associated with wavelet name given% by the in

2、put string wname.Lo_D,Hi_D,Lo_R,Hi_R = wfilters(wname);subplot(221); stem(Lo_D);title('Decomposition low-pass filter');subplot(222); stem(Hi_D);title('Decomposition high-pass filter');subplot(223); stem(Lo_R);title('Reconstruction low-pass filter');subplot(224); stem(Hi_R);ti

3、tle('Reconstruction high-pass filter');xlabel('The four filters for db5')% Editing some graphical properties,% the following figure is generated.以上例子,得到db5'小波的分解和综合滤波器系数,并显示出来。下面是wfilters 的具体用法:wfiltersWavdet Skcrsnt>i(Lo_D, H i Dr Lo_R, Hi _R二 wfi Iters ( 1 urnaire1 'Fl,F

4、2 = wfilters(1vrace','type1)Description to Hi Tir wfilttrs ( ' wnjEt1 ifour fibers associated itlillirwth&fonal er bwnhojwial ivavelet (Lamed ui the string * vaic1Ttue four output ftlicri nc,iIk dwg网就脚pass fihcr Hi _以 5he dtcompoiinon hi血,paw filter Loi_rt the icc(Mistnieti<m cv.

5、-pass Ektr Ri_R.如 rcconstruoitmfiberAvaihbk «nlw£Qml w birdwnat 粗 stkt rumc» '' arc lifted in Hk tblc below13_DMdHi_DLo_R andHi_PLa_D and ltn_RHi_Dard«i_H(Deconip&sition fihei&ii.R«canjtnjctica fihtrsl(Lew-pass 曲mi(High-pass Qicts)If 'type' = TdIf 

6、9;typep =噂 rv 画 M也ukhies"dblr or 'hzL, *dba *t t< 1dblO* , - rdb侦C&fkxk cei.fl11 .,1 cai f S rSyndeti* symE * t * * syinB 1 t-#'3yra451Discrete Xlevef'dknffyTBwrtlicoxLalpbiorL<1* f Tbi&rl.31, 'bkorS.a*, hi史2.4, 'bioEa.l", rbior3»3 Tbior3.9 EoEfbiorl.

7、5'*biei2.t *faio2.a(bicraS*, *biaE3.7,Tbior5T5T, iorG.S"Rm* Bicrlhfl-FonaJprbiol.l 'rbiol.3'. rbiisi, 4 1,vcbxe3.1 'ebLol.S11prbioJ.9rbiM H'rtoiol,5*XEio2.C + , *rt)io2.S,'xfaieS.S, *rbla3.7TrJbinS.S,. 'rbioC.e'Fj. r F2 = Mfilters 1 wnacie1 r,type1 ) fftiifiii th

8、e foHos hefsWnameM指定为列表中的任意一种小波,直接调用Lo_D,Hi_D,Lo_R,Hi_R = wfilters('wname')会返回分解和综合滤波器系数。如果只想返回其中的一些而不是全部,可以调用F1,F2 = wfilters('wname','type')其中type '可指定为4种类型,每种类型的具体意义详见matlab wfilters帮助。查看具体小波的信息waveinfo( 'wname )获得一个标准的正交变换/双正交变换的尺度和小波函数(数字近似值)PHI,PSI,XVAL = wavefu

9、n('wname',ITER)PHI1,PSI1,PHI2,PSI2,XVAL = wavefun('wname',ITER)例如% Set number of iterations and wavelet name.iter = 10;wav = 'sym4'% Compute approximations of the wavelet function using the% cascade algorithm.for i = 1:iterphi,psi,xval = wavefun(wav,i);plot(xval,psi);hold one

10、ndtitle( 'Approximations of the wavelet ' ,wav, .'for 1 to ',num2str(iter),' iterations');hold off如果已知小波分解滤波器系数,计算小波变换的最简单方法就是C,S = wavedec2(X,N,'wname')C,S = wavedec2(X,N,Lo_D,Hi_D)反过来,已知小波综合滤波器系数,计算反小波变换,只需X = waverec2(C,S,'wname')X = waverec2(C,S,Lo_R,Hi_R)

11、% 图片的小波分解clear allclcim = imread('././std_images/lena.bmp); % 灰度im = double(im);Lo_D,Hi_D = wfilters( 'haar','d');C,S= wavedec2(im,1,Lo_D,Hi_D);isize = prod(S(1,:);%cA = C(1:isize);cH = C(isize+(1:isize);cV = C(2*isize+(1:isize);cD = C(3*isize+(1:isize);%cA = reshape(cA,S(1,1),S(

12、1,2);cH = reshape(cH,S(2,1),S(2,2);cV = reshape(cV,S(2,1),S(2,2);cD = reshape(cD,S(2,1),S(2,2);%figure,colormap graysubplot(221),imagesc(cA);subplot(222),imagesc(cH);subplot(223),imagesc(cV);subplot(224),imagesc(cD);其中C是小波变换后的结果数据,以一维欠量的形式组织, S是二维数组,记录 了 C中数据的分布形式,详见 matlab的帮助文档。此外,dwtmode可以设定输 入的边界

13、处理方式。提取小波的系数。前面使用的wavedec2得到的C,S不是非常的直观,可以利用 小波工具箱中的函数appcoef2和detcoef2来机取近似矩阵和的n级的某一个 细节矩阵。A = appcoef2(C,S,'wname',N)A = appcoef2(C,S,'wname')D = detcoef2(O,C,S,N)针对特定的小波系数矩阵进行阈值化处理NC = wthcoef2('type',C,S,N,T,SORH)NC = wthcoef2('type',C,S,N)NC = wthcoef2('a'

14、;,C,S)NC = wthcoef2('t',C,S,N,T,SORH)使用wave2gray来显示小波分解的结果% 使用 wave2gray显示小波分解的结果,来自 dipum_1.1.4 toolboxclear allclcim = imread('././std_images/lena.bmp); % 灰度im = double(im);Lo_D,Hi_D = wfilters( 'haar','d');C,S= wavedec2(im,2,Lo_D,Hi_D);wave2gray(C,S);关丁 wave2gray更多用法详见

15、dipum_1.1.4 toolbox 的说明文档官方网站。小波综合(重建):waverec2X = waverec2(C,S,'wname')X = waverec2(C,S,Lo_R,Hi_R)C,S是使用小波分解函数wavedec2得到的小波欠量和欠量描述矩阵,或者符合 这种规定形式的数据。返回X是实数图像矩阵,由丁计算误差,可能需要经过一 些处理才能正常显示。%小波综合clear allclcim = imread('././std_images/lena.bmp); % 灰度im = double(im);Lo_D,Hi_D = wfilters( 'haar','d');C,S= wavedec2(im,2,Lo_D,Hi_D);X = waverec2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论