maab小波函数_第1页
maab小波函数_第2页
maab小波函数_第3页
maab小波函数_第4页
maab小波函数_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、Matlab小波函数Matlab小波去噪基本原理1、带噪声的信号一般是由含有噪声的高频信号和原始信号所在的低频信号。利用多层小波,将高频噪声信号从混合信号中分解出来。2、选择合适的阈值对图像的高频信号进行量化处理3、重构小波图像:依据图像小波分解的低频信号与处理之后的高频信号来重构图像的信息。、第二代小波变换1、构造方法特点:( 1) 继承了第一代小波的多分辨率的特性。( 2) 不依赖fourior变换,直接在时域完成小波变换。( 3) 变换之后的系数可以是整数。( 4) 图像恢复质量与变换是边界采用何种延拓方式无关。2、优点:算法简单,速度快,适合并行处理。对内存需求量小,便于DSP芯片实现

2、、可用于本位操作运算。3、提升原理:构造紧支集双正交小波(1)步骤:分裂预测更新2)分解与重构matlab小波函数库1、matlab小波通用函数:(1)wavemngr函数【小波管理器(用于小波管理,添加、删除、储存、读取小波)】wavemngr(add,FN,FSN,WT,NUMS,FILE)wavemngr(add,FN,FSN,WT,NUMS,FILE,B)%添加小波函数,FN为familyname,FSN为familyshortnameWT为小波类型:WT=18示正交小波,=2表示非正交小波,=3表示带尺度函数的小波,=4表示无尺度函数的小波,=5表示无尺度函数的复小波。小波族只有一个

3、小波,则NUMS工否则NUMS!示小波参数的字符串FILE表示文件名B=lbub指定小波有效支撑的上下界wavemngr(del,N)%删除小波wavemngr(restore)/wavemngr(restore,IN2)%保存原始小波OUT1=wavemngr(read)%返回小波族的名称OUT1=wavemngr(read,IN2)%返回所有小波的名称OUT1=wavemngr(read_asc)%读取文件并返回小波信息2 scal2frq函数【尺度转换频率】F=scal2frq(A,wname,DELTA)%g回由尺度A,小波函数“wname和采样周期DELTA夬定的准频率3 orthf

4、ilt函数【正交小波滤波器组】Lo_D,Hi_D,Lo_R,Hi_R=orthfilt(W)%计算与小波函数对应的尺度滤波器相关的4个滤波器Lo_D-分解低通滤波器Hi_D分解高通滤波器Lo_R-重构低通滤波器Hi_R重构高通滤波器4 wmaxlev函数【小波分解的最大尺度】L=wmaxlev(S,wname)%返回信号或者图像的最大分解尺度,可以帮助避免分解是超过这个值。5 biorfilt函数【双正交小波滤波器组】Lo_D,Hi_D,Lo_R,Hi_R=biorfilt(DF,RF)Lo_D1,Hi_D1,Lo_R1,Hi_R1,Lo_D2,Hi_D2,Lo_R2,Hi_R2=biorfi

5、lt(DF,RF,8)%DF分解滤波器,R一重构滤波器。6 intwave函数【积分小波函数】INTEG,XVAL=intwave(wname,PREC)INTEG,XVAL=intwave(wname,PREC,PFLAG)INTEG,XVAL=intwave(wname)%计算小波函数在区间(<xval)上的积分INTEG7 qmf函数【镜像二次滤波器】Y=qmf(X,p)/Y=qmf(X)(等价于Y=qmf(X,0)%p为偶数时,函数改变向量x中偶数位置的元素符号;p为奇数时,函数改变向量x中奇数位置的元素符号;8 dyadup函数【二维插值】Y=dyadup(X,evenodd)

6、%evenod狈偶数,则进行偶插值;为奇数则进行奇插值。Y=dyadup(X)%偶插值Y=dyadup(X,evenodd,type)Y=dyadup(X,type,evenodd)%取一个矩阵,type'='c',则插入列;type'='r',则插入行;type'='nn,则插入行和列。9 )wavefun函数【小波和尺度函数】phi,psi,xval=wavefun(wnane,iter)%寸于正交小波,返回尺度函数和小波函数;(适用meyer小波)phi1,psi1,phi2,psi2,xval=wavefun(wnane,

7、iter)%对于双正交小波,返回分别用于分解和重构的尺度和小波函数;psi,xval=wavefun(wname,iter)%适用没有尺度函数的小波,如morlet、mexicanhat,Gaussianderivatives和复小波。=wavefun(wname,A,B)%A,B为正整数,并画图。10 )wavefun2函数【二维小波和尺度函数】返回尺度函数与3个小波函数,它们是一位小波函数与尺度函数的矢量积。s,w1,w2,w3,xyval=wavefun2(wname,iter)%尺度函数s是phi与psi的矢量积。小波函数w1,w2,w3分别是(phi,psi),phi,phi),(p

8、si,psi)的矢量积。xyval是(xval,yval)的矢量积得到的网格,iter表示重复计算次数。s,w1,w2,w3,xyval=wavefun2(wname,iter,plot)s,w1,w2,w3,xyval=wavefun2(wname,iter,A,B)%A斯正整数,计算小波函数和尺度函数的近似值并画图。11 )wfilters函数【小波滤波器】Lo_D,Hi_D,Lo_R,Hi_R=wfilters(wname)%+算正交小波或双正交小波wnam空目关4个滤波器F1,F2=wfilters(wname,type)Type'='d',返回分解滤波器Typ

9、e=r,返回重构滤波器Type=l,返回低通滤波器Type'='h',返回高通滤波器12 )centfrq函数【计算小波中心频率】freq=centfrq=(wname)涮到wname、波的中心频率。freq=centfrq=(wname,iter)%iter是被wavefun函数调用的次数。freq,xval,recfreq=centfrq=(wname ,iter, plot )%返回基于2Aiter点网格xval上近似的recfreq,计算相关中心频率,并画出小波函数和recfreq。13 3)dyaddown函数【二元抽取】Y=dyaddown(X,evenod

10、d)%从向量X中每隔一个元素抽取一个元素组成的向量丫,evenodd为奇数的时候,进行奇抽取;偶数的时候为偶抽取。Y=dyaddown(X)%默认evenodd为0Y=dyaddown(X,evenodd,'type')Y=dyaddown(X,'type',evenodd)%W一个矩阵,type'='c',则抽取列;type'='r',则抽取行;type'='mn,则抽取行和列。2、小波函数1 1)fbspwavf函数【频率B样条小波】psi,x=fbspwavf(lb,ub,n,m,fb,fc)

11、%g回M阶频率B样条小波(m=>1,带宽FB,中心频率FC;Psi定义在N点均匀分布的区间lb,ub。2 dbwavf函数【Daubechies小波滤波器】F=dbwavf(W)%返回与所指定的Daubechies小波的尺度滤波器。3 cmorwavf函数【复morlet小波】psi,x=cmorwavf(lb,ub,n,fb,fc)哑回复morlet小波,带宽FB,中心频率FC;Psi定义在N点均匀分布的区问lb,ub。4 mexihat函数【mexicanhat小波】psi,x=mexihat(lb,ub,n)呢!回有效支撑为lb,ub,N点均匀分布网格上的mexicanhat小波,

12、输出变量为网格X上计算得到的小波函数psi。5 coifletf函数【coifletf小波滤波器】p=coifletf(W)哑回由W旨定的coifletf小波尺度滤波器,其中W=coifN',N取值可1-56 6)meyeraux函数【Meyer小波辅助函数】Y=meyeraux(X)%返回meyer小波使用的辅助函数在向量获矩阵X上的各点值。7 morlet函数【morlet小波】psi,x=morlet(lb,ub,n)%g回morlet小波在N点均匀分布的支撑lb,ub的值,输出变量为网格X上计算得到的小波函数psi。8 symaux函数【计算symlet小波】W=symaux(

13、N,sumw)%N阶symlet尺度滤波器。W=symaux(N)9 symwavf函数【symlet小波滤波器】F=symwavf(W)哑回由字符串W定义的symlet小波相关的尺度滤波器。10 Biorwavf函数【双正交样条小波滤波器】rf,df=biorwavf(W)哑回与指定双正交小波Wf交联的两个尺度滤波器。Rf是重构滤波器,df是分解滤波器。11 )cgauwavf函数【复高斯小波】psi,x=morlet(lb,ub,n,p)%£义在区间lb,ub上的N点均匀分布的网格上,返回P次复高斯函数。12 dbaux函数【计算Daubechies小波滤波器】W=dbaux(n

14、,sumw)%返回N阶Daubechies尺度滤波器W=dbaux(n)%等价于W=dbaux(n,1)13 gauswavf函数【gaussian小波】psi,x=gausswavf(lb,ub,n,p)%£义在区间lb,ub上的N点均匀分布的网格上,返回P次复高斯函数。(不同于11中的复高斯函数14 rbiowavf函数【反双正交样条滤波器】rf,df=rbiorwavf(W)哑回由字符串W定义的和双正交小波相关的两个尺度滤波器。15 shanwavf函数【复shannon小波】psi,x=shanwavf(lb,ub,n,fb,fc)哑回复shannon小波,带宽FB,中心频率

15、FC;Psi定义在N点均匀分布的区间lb,ub。16 6)meyer函数【meyer小波】phi,psi,t=meyer(lb,ub,n)%返回有效支撑为lb,ub,N点均匀分布网格上的估计得到的meyer尺度与小波函数。N必须为2的整次幂。phi,t=meyer(lb,ub,n,phi)psi,t=meyer(lb,ub,n,psi)四、小波变换的Matlab实现一维连续小波1、计算步骤:(1)选定一个小波,并与处在分析时段部分的信号相比较。(2)计算该时刻的连续小波变换系数C。(3)调整参数b,调整信号的分析时间段,向右平以小波,直至分析时段已经覆盖了信号的整个支撑区间。(4)调整参数a,

16、尺度伸缩。重复(1)-(3)。(5)重复(1)-(4),计算完所有尺度的连续小波变换系数。2、相关matlab函数COEFS=cwt(s,scales,wname)%采用wname、波,在正、实尺度scales下计算向量一维连续小波系数。S为被分析信号。COEFS=cwt(s,scales,wname,plot)%计算小波系数加上图形显示。COEFS=cwt(s,scales,wname,plotmode)%计算并画出连续小波变换的系数,并使用plotmode对图像着色。COEFS=cwt(s,scales,wname,plotmode,xlim)%计算并画出连续小波变换的系数,并使用plot

17、mode和xlim对图像着色。Mode=lvl,使用scale-by-scale着色模式Mode=glb,考虑所有尺度的着色模式Mode=abslvl/lvlabs,使用系数绝对值的scale-by-scale着色模式Mode=absglb/glbabs,使用系数绝对值并考虑所有尺度的着色模式。(2)pat2cwav函数【由模式构造小波】psi,xval,nc=pat2cwav(ypat,method,poldegree,regularity)%计算由xval和psi给定并用于连续小波变换的小波函数,该小波向量ypat定义的模式构造,方差为1。其中模式隐含的x,xpat=linespace(0

18、,1,length(ypat)。Nc的选取应保证通过以下方式的最小二乘拟合。Method=polynomial时,为polydegree阶多项式。Method=othconst时,为正交函数空间的投影。Regularity定义了在0、1点的边界约束可以是continuous,differentiable,none。当Method=polynomial,regularity=continuous,polydegree=>3;当Method=polynomial,regularity=differentiable,polydegree=>5;(3)命令行实现装在信号完成连续小波变换显示

19、系数的图形表示离散小波变换1、matlab函数(1)wavedec函数【多尺度一维小波分解】c,l=wacedec(x,n,wname)越回彳S号X在N层的小波分解。N必须是正整数。输出分解结构包含小波解向量c和相应的记录向量l。c,l=wacedec(x,n,Lo_D,Hi_D)%使用指定的低通和高通分解滤波器,返回分解结构。cA,cD=dwt(X,wname)cA,cD=dwt(X,wname,mode,MODE)%计算低频系数向量cA和高频系数向量cD,由向量X小波分解得到。cA,cD=dwt(X,Lo_D,Hi_D)cA,cD=dwt(X,Lo_D,Hi_D,mode,MODE)%+算

20、小波分解,Lo_D和Hi_D滤波器为输入。3)idwt函数【单尺度一维小波逆变换】X=idwt(cA,cD,wname)%返回使用wname返回单尺度重构的低频系数向量cA,高频系数向量cDX=idwt(cA,cD,Lo_R,Hi_R)灿用低通滤波器Lo_R高通滤波器Hi_RX=idwt(cA,cD,wname,L)X=idwt(cA,cD,Lo_R,Hi_R,L)%返回由idwt得到的长度为L的中间部分,L必须小于LX(length(X)。X=idwt(,'mode,MODE)%使用指定的延拓模式MOD趾行小波重构5 waverec函数【多尺度一维小波重构】X=waverec(C,L

21、,wname)%基于多尺度小波分解结构C,L和小波wnam杂构彳9号X。X=waverec(C,L,Lo_R,Hi_R)%使用指定重构滤波器重构X。6 wrcoef函数【由一维小波函数进行单支重构】X=wrcoef(type,C,L,wname,N)%基于小波分解结构c,l在N层计算重构系数向量。X=wrcoef(type,C,L,Lo_R,Hi_R,N)%根据指定的重构滤波器计算系数。7 wmaxlev函数【小波分解最大尺度】L=wmaxlev(S,wname)%返回信号或者图像的最大分解尺度8 detcoef函数【提取一维小波细节系数】D=detcoef(C,L,N)%由小波分解结构c,l

22、提取N层细节系数。D=detcoef(C,L)%提取最后一层NMAX勺细节系数。A=appcoef(C,L,wname,N)/A=appcoef(C,L,wname)%使用小波分解框架c,l计算N层系数的近似值。A=appcoef(C,L,Lo_R,Hi_R)/A=appcoef(C,L,Lo_R,Hi_R,N)%使用指定滤波器计算。10) )dwtmode函数【离散小波变换扩展模式】用来设置信号或图像进行离散小波和小波包变换的扩展模式,扩展模式表示信号或者图像分析时的边界问题处理办法。ST=dwtmode%显示当前模式Dwtmode(mode)%DWT展模式11) upcoef函数【一维小波

23、系数直接构造】Y=upcoef(o,x,wname,N)/Y=upcoef(o,x,wname,N,L)%计算向量X向上N步的重构系数/并取出结果中长度为L的中间部分。Y=upcoef(C,L,Lo_R,Hi_R,N)/A=upcoef(C,L,Lo_R,Hi_R,N,L)%IfO='a',approximationcoefficientsarereconstructed.IfO='d',detailcoefficientsarereconstructed.%使用滤波器计算。3、计算步骤装载信号完成信号的单尺度一维离散小波变换从系数中重构低频和高频部分显示低频高

24、频部分由小波逆变换恢复信号多层一维分解提取系数的低频和高频部分重构第三层的低频系数重构1-5层高频信号重构原始信号并显示。一维小波平稳变换1、 matlab函数( 1) swt函数【一维小波平稳变换】SWC=swt(x,n,wname)%计算信号x的尺度为n的平稳小波分解。SWC=swt(x,n,Lo_D,Hi_D)%使用低通和高通滤波器进行分解,返回信号X.SWA,SWD=swt(x,n,wname)SWA,SWD=swt(x,n,Lo_D,Hi_D)%计算低频系数SW厌口高频系数SWD1平稳小波系数。X=iswt(SWC,wname)X=iswt(SWA,SWD,wname)%基于多尺度小

25、波分解结构SWCSWA,SWD重构信号X=iswt(SWC,Lo_R,Hi_R)X=iswt(SWA,SWD,Lo_R,Hi_R)%使用重构低通、高通滤波器,返回信号X3) Wextend函数【信号延拓】Y=wextend(type,mode,x,l,loc)Y=wextend(type,mode,x,l)Type=1/1/1d/1D-一维延拓Type=2/2/2d/2D-二维延拓Type=ar/addrow-添加行Type=ac/addcol-添加列命令行实现:信号延拓图像延拓4)命令行方法实现装载信号完成信号的单尺度一维离散平稳小波分解由平稳小波逆变换由系数构建低频和高频部分执行多层平稳小

26、波分解由系数重构多层低频和高频信号。五、二维小波变换的实现1、 matlab函数( 1) upwlev2函数【二维小波分解的单尺度重构】nc,ns,cA=upwlev2(c,s,wname)nc,ns,cA=upwlev2(c,s,Lo_R,Hi_R)%对小波分解结构c,s单尺度重构,返回新的分解结构nc,ns,并提取最后一尺度的低频系数矩阵cA。( 2) Wenergy2函数【计算二维小波分解能量】Ea,Eh,Ev,Ed=wenergy2(c,s)%g回Ea是低频部分能量的百分比,Eh,Ev,Ed分别是高频部分水平、垂直、和对角方向能量百分比的向量。Ea,EDetail=wenergy2(c

27、,s)%g回Ea和EDetail,后者是向量Eh,Ev,Ed之和。( 3) wavedec2函数【二维多尺度分解】c,s=wavedec2(c,n,wname)%£用小波返回矩阵X尺度N的小波分解,输出是分解向量C和相应的对应矩阵S。c,s=wavedec2(c,n,Lo_R,Hi_R)4 dwt2函数【二维单尺度小波变换】cA,cH,cV,cD=dwt2(x,wname)cA,cH,cV,cD=dwt2(x,Lo_D,Hi_D)%艮据夕!阵X进行小波分解,计算低频系数矩阵cA和高频系数矩阵cH水平,cV垂直,cD对角。基于指定小波分解滤波器计算二维小波分解系数。5 appcoef2

28、函数【提取二维系数】Y =appcoef2(c,s,wname,N)灿用小波分级结构c,s,计算N层的低频系数。Y =appcoef2(c,s,wname)%提取最后一层低频系数。Y =appcoef2(c,s,Lo_R,Hi_R)/Y=appcoef2(c,s,Lo_R,Hi_R,N)6 Wrcoef2函数【由二维小波系数重构单支】二维小波分析函数,用来重构一幅图像的系数。X=wrcoef2(type,C,L,wname,N)%S于小波分解结构c,l在N层计算重构系数向量X=wrcoef2(type,C,L,Lo_R,Hi_R,N)%根据指定的重构滤波器计算系数。X=wrcoef2(type

29、,C,L,wname,N)X=wrcoef2(type,C,L,Lo_R,Hi_R,N)7 waverec2函数【多尺度二维小波重构】X=waverec2(c,s,wname)彼于小波分解结果c,s对矩阵X进行多尺度小波重构。X=waverec2(c,s,Lo_R,Hi_R)8 upcoef2函数【二维小波系数的直接重构】Y=upcoef2(o,x,wname,n,s)9计算夕1阵X的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)9 idwt2函数【二维小波单尺度逆变换】-参见(4X=idwt2(cA,cH,cV,cD,wname)X=idwt2(cA,cH,cV,cD,Lo_D,Hi_D)(10)detcoef2函数【提取二维高频系数】D=detcoef2(o,c,s,n)%二维小波分析,由小波分解结构c,s,提取尺度为N时的水平、垂直或对角高频系数。命令行实现装在图像信号并显示图像执行图像的单尺度小波分解由系数重构低频和高频部分并显示由小

温馨提示

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

评论

0/150

提交评论