《专题讲座——小波变换讲解学习.ppt》由会员分享,可在线阅读,更多相关《专题讲座——小波变换讲解学习.ppt(79页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、专题讲座小波变换引言引言傅里叶变换应用非常广泛的原因可能是傅里叶变换应用非常广泛的原因可能是:直观性直观性数学上的完美性数学上的完美性计算上的有效性计算上的有效性仍有局限性:仍有局限性:在整个时间轴上积分在整个时间轴上积分,表示了表示了信号的全局特征信号的全局特征(变换后变换后,时间是亚元时间是亚元)如果需要分析信号的局部信号怎么办如果需要分析信号的局部信号怎么办?乐谱乐谱油田勘探油田勘探时频展开时频展开时频展开时频展开时频展开时频展开希望定义一种工具能帮助计算信号希望定义一种工具能帮助计算信号x(t)x(t)的瞬的瞬时傅里叶变换,记为时傅里叶变换,记为X(X(,F),F)如何定义一组能够表现
2、出信号瞬时性的基函如何定义一组能够表现出信号瞬时性的基函数,该基函数必须包括两个基本变量数,该基函数必须包括两个基本变量时间时间 和和频频率率F F时频展开主要内容时频展开主要内容1.短时傅里叶变换短时傅里叶变换STFTSTFT2.GaborGabor变换变换GTGT3.连续小波变换连续小波变换CWTCWT4.小波变换小波变换WTWT短时傅里叶变换短时傅里叶变换STFTSTFT确定信号局部频率特性的比较简单的方法是确定信号局部频率特性的比较简单的方法是在时刻在时刻 附近对信号加窗,然后计算傅里叶变附近对信号加窗,然后计算傅里叶变换。换。X(X(,F)=STFTx(t)=FTx(t)w(t-,F
3、)=STFTx(t)=FTx(t)w(t-)其中,其中,w(t-w(t-)是一个以时刻是一个以时刻 为中心的窗函数,为中心的窗函数,注意信号注意信号x(t)x(t)中的时间中的时间t t和和X(X(,F),F)中的中的。窗函数窗函数w w根据根据 进行了时移,进行了时移,扩展傅里叶变换表扩展傅里叶变换表达式达式短时傅里叶变换操作示意短时傅里叶变换操作示意问题问题实际运用中处理的问题与上述描述恰好相反:实际运用中处理的问题与上述描述恰好相反:给定一个信号,希望能够在时域和频域上定给定一个信号,希望能够在时域和频域上定位信号发生的事件,因此时间位信号发生的事件,因此时间 和频率和频率F F都是都是
4、不确定的,即按上述的分析不可行(结果不不确定的,即按上述的分析不可行(结果不确定或有误差)确定或有误差)分析中,分辨率的损失是由于窗函数分析中,分辨率的损失是由于窗函数w(t)w(t)的的时域宽度及傅里叶变换的频率带宽所决定的;时域宽度及傅里叶变换的频率带宽所决定的;信号不能同时在时域和频域准确定位信号不能同时在时域和频域准确定位信号不能同时在时域和频域准确定位信号不能同时在时域和频域准确定位测不准定理测不准定理GaborGabor变换引言变换引言STFTSTFT将一个连续时间变量将一个连续时间变量t t的信号的信号x(t)x(t)变换变换为有两个连续时间变量的为有两个连续时间变量的X(X(,
5、F),F)意味着意味着STFTSTFT包含了很多的冗余信息包含了很多的冗余信息将频率将频率F F离散化,离散化,F=KfF=Kf0 0将时间离散化,在将时间离散化,在=mT=mT0 0采样采样Gabor变换:变换:Xm,k=X(mT0,kF0)GaborGabor变换变换通过通过GaborGabor变换,信号变换,信号x(t)x(t)被展开为:被展开为:GaborGabor变换公式:变换公式:小小波波变变换换是是强强有有力力的的时时频频分分析析(处处理理)工工具具,是是在在克克服服傅傅立立叶叶变变换换缺缺点点的的基基础础上上发发展展而而来来的的。已已成成功功应应用用于于很很多多领领域域,如如信
6、信号号处处理理、图图像像处处理理、模模式识别等。式识别等。小小波波变变换换的的一一个个重重要要性性质质是是它它在在时时域域和和频频域域均均具具有有很很好好的的局局部部化化特特征征,它它能能够够提提供供目目标标信信号号各各个个频频率率子子段段的的频频率率信信息息。这这种种信信息息对对于于信信号号分分类类是非常有用的。是非常有用的。小小波波变变换换一一个个信信号号为为一一个个小小波波级级数数,这这样样一一个个信号可由小波系数来刻画。信号可由小波系数来刻画。小波变换小波变换数学显微镜数学显微镜部分小波波形部分小波波形小波基函数小波基函数将信号在这个函数系上分解,就得到连续小波变换将信号在这个函数系上
7、分解,就得到连续小波变换小波分析小波分析小波变换通过平移母小波小波变换通过平移母小波(mother wavelet)(mother wavelet)可获可获得信号的时间信息,而通过缩放小波的宽度得信号的时间信息,而通过缩放小波的宽度(或或者叫做尺度者叫做尺度)可获得信号的频率特性。对母小波可获得信号的频率特性。对母小波的缩放和平移操作是为了计算小波的系数,这的缩放和平移操作是为了计算小波的系数,这些系数代表小波和局部信号之间的相互关系。些系数代表小波和局部信号之间的相互关系。连续小波变换连续小波变换 离散小波变换离散小波变换连续小波变换连续小波变换where:where:a a 缩放因子缩放因
8、子 时间平移时间平移注意:在注意:在CWTCWT中,中,scalescale和和positionposition是连续变化的是连续变化的CWTCWT的变换过程的变换过程1.1.把小波把小波把小波把小波(t)(t)和原始信号和原始信号和原始信号和原始信号f(t)f(t)的开始部分进行比较的开始部分进行比较的开始部分进行比较的开始部分进行比较2.2.计算系数计算系数计算系数计算系数c c。该系数表示该部分信号与小波的近似程。该系数表示该部分信号与小波的近似程。该系数表示该部分信号与小波的近似程。该系数表示该部分信号与小波的近似程度。系数度。系数度。系数度。系数 c c 的值越高表示信号与小波越相似
9、,因此系的值越高表示信号与小波越相似,因此系的值越高表示信号与小波越相似,因此系的值越高表示信号与小波越相似,因此系数数数数c c 可以反映这种波形的相关程度可以反映这种波形的相关程度可以反映这种波形的相关程度可以反映这种波形的相关程度3.3.把小波向右移,距离为把小波向右移,距离为把小波向右移,距离为把小波向右移,距离为k k,得到的小波函数为,得到的小波函数为,得到的小波函数为,得到的小波函数为(t-k)(t-k),然后重复步骤然后重复步骤然后重复步骤然后重复步骤1 1和和和和2 2。再把小波向右移,得到小波。再把小波向右移,得到小波。再把小波向右移,得到小波。再把小波向右移,得到小波(t
10、-(t-2k)2k),重复步骤,重复步骤,重复步骤,重复步骤1 1和和和和2 2。按上述步骤一直进行下去,直到。按上述步骤一直进行下去,直到。按上述步骤一直进行下去,直到。按上述步骤一直进行下去,直到信号信号信号信号f(t)f(t)结束结束结束结束4.4.扩展小波扩展小波扩展小波扩展小波(t)(t),例如扩展一倍,得到的小波函数为,例如扩展一倍,得到的小波函数为,例如扩展一倍,得到的小波函数为,例如扩展一倍,得到的小波函数为(t/2)(t/2)5.5.重复步骤重复步骤重复步骤重复步骤1414CWTCWT的变换过程图示的变换过程图示CWTCWT小结小结小波的缩放因子与信号频率之间的关系可以这小波
11、的缩放因子与信号频率之间的关系可以这样来理解。缩放因子小,表示小波比较窄,度样来理解。缩放因子小,表示小波比较窄,度量的是信号细节,表示频率量的是信号细节,表示频率w w 比较高;相反,比较高;相反,缩放因子大,表示小波比较宽,度量的是信号缩放因子大,表示小波比较宽,度量的是信号的粗糙程度,表示频率的粗糙程度,表示频率w w 比较低。比较低。离散小波变换离散小波变换在计算连续小波变换时,实际上也是用离在计算连续小波变换时,实际上也是用离散的数据进行计算的,只是所用的缩放因散的数据进行计算的,只是所用的缩放因子和平移参数比较小而已。不难想象,连子和平移参数比较小而已。不难想象,连续小波变换的计算
12、量是惊人的。续小波变换的计算量是惊人的。为了解决计算量的问题,缩放因子和平移为了解决计算量的问题,缩放因子和平移参数都选择参数都选择2 j(j02 j(j0的整数的整数)的倍数。的倍数。使用这样的缩放因子和平移参数的小波变使用这样的缩放因子和平移参数的小波变换叫做双尺度小波变换换叫做双尺度小波变换(dyadic wavelet(dyadic wavelet transform)transform),它是离散小波变换,它是离散小波变换(discrete(discrete wavelet transformwavelet transform,DWT)DWT)的一种形式。的一种形式。离散小波变换定义
13、离散小波变换定义需要强调指出的是,这一离散化都是针对连续需要强调指出的是,这一离散化都是针对连续的尺度参数和连续平移参数的,而不是针对时的尺度参数和连续平移参数的,而不是针对时间变量间变量t t的。的。使用离散小波分析得到的小波系数、缩放因子使用离散小波分析得到的小波系数、缩放因子和时间关系如图所示。和时间关系如图所示。图图(a)(a)是是2020世纪世纪4040年代使用年代使用GaborGabor开发的短时傅立叶开发的短时傅立叶变换变换(short time Fourier transform(short time Fourier transform,STFT)STFT)得到的时得到的时间间
14、-频率关系图频率关系图 图图(b)(b)是是2020世纪世纪8080年代使用年代使用MorletMorlet开发的小波变换得开发的小波变换得到的时间到的时间-缩放因子缩放因子(反映频率反映频率)关系图。关系图。离散小波变换分析图离散小波变换分析图DWTDWT变换方法变换方法执行离散小波变换的有效方法是使用滤波器执行离散小波变换的有效方法是使用滤波器 该方法是该方法是MallatMallat在在19881988年开发的,叫做年开发的,叫做MallatMallat算法算法 这种方法实际上是一种信号的分解方法,在数字信这种方法实际上是一种信号的分解方法,在数字信号处理中称为双通道子带编码号处理中称为
15、双通道子带编码用滤波器执行离散小波变换的概念如图所示用滤波器执行离散小波变换的概念如图所示 S S表示原始的输入信号,通过两个互补的滤波器产表示原始的输入信号,通过两个互补的滤波器产生生A A和和D D两个信号两个信号 A A表示信号的近似值表示信号的近似值(approximations)(approximations)D D表示信号的细节值表示信号的细节值(detail)(detail)在许多应用中,信号的低频部分是最重要的,而高在许多应用中,信号的低频部分是最重要的,而高频部分起一个频部分起一个“添加剂添加剂”的作用。的作用。比如声音,把高频分量去掉之后,听起来声音确实比如声音,把高频分量
16、去掉之后,听起来声音确实是变了,但还能够听清楚说的是什么内容。相反,是变了,但还能够听清楚说的是什么内容。相反,如果把低频部分去掉,听起来就莫名其妙。如果把低频部分去掉,听起来就莫名其妙。在小波分析中,近似值是大的缩放因子产生的系数,在小波分析中,近似值是大的缩放因子产生的系数,表示信号的低频分量。而细节值是小的缩放因子产表示信号的低频分量。而细节值是小的缩放因子产生的系数,表示信号的高频分量。生的系数,表示信号的高频分量。双通道滤波过程双通道滤波过程离散小波变换可以被表示成由低通滤波器和高离散小波变换可以被表示成由低通滤波器和高通滤波器组成的一棵树通滤波器组成的一棵树 原始信号通过这样的一对
17、滤波器进行的分解叫做一原始信号通过这样的一对滤波器进行的分解叫做一级分解级分解 信号的分解过程可以叠代,也就是说可进行多级分信号的分解过程可以叠代,也就是说可进行多级分解。解。如果对信号的高频分量不再分解,而对低频分量连如果对信号的高频分量不再分解,而对低频分量连续进行分解,就得到许多分辨率较低的低频分量,续进行分解,就得到许多分辨率较低的低频分量,形成如图所示的一棵比较大的树。这种树叫做小波形成如图所示的一棵比较大的树。这种树叫做小波分解树分解树(wavelet decomposition tree)(wavelet decomposition tree)分解级数的多少取决于要被分析的数据和
18、用户的需分解级数的多少取决于要被分析的数据和用户的需要要小波分解树小波分解树小波包分解树小波包分解树 小波分解树表示只对信号的低频分量进行连续小波分解树表示只对信号的低频分量进行连续分解。如果不仅对信号的低频分量连续进行分分解。如果不仅对信号的低频分量连续进行分解,而且对高频分量也进行连续分解,这样不解,而且对高频分量也进行连续分解,这样不仅可得到许多分辨率较低的低频分量,而且也仅可得到许多分辨率较低的低频分量,而且也可得到许多分辨率较低的高频分量。这样分解可得到许多分辨率较低的高频分量。这样分解得到的树叫做小波包分解树得到的树叫做小波包分解树(wavelet packet(wavelet p
19、acket decomposition tree)decomposition tree),这种树是一个完整的二进,这种树是一个完整的二进制树。制树。cAj+1cDj+1(h)cDj+1(v)cDj+1(d)cAj2 12 11 21 21 21 2Lo_DHi_DLo_DHi_DLo_DHi_D行列列下采样行下采样二维离散小波变换二维离散小波变换标准分解流程示意非标准分解是指使用一维小波交替地对每一行非标准分解是指使用一维小波交替地对每一行和每一列像素值进行变换。首先对图像的每一和每一列像素值进行变换。首先对图像的每一行计算像素对的均值和差值,然后对每一列计行计算像素对的均值和差值,然后对每一
20、列计算像素对的均值和差值。这样得到的变换结果算像素对的均值和差值。这样得到的变换结果只有只有1/41/4的像素包含均值,再对这的像素包含均值,再对这1/41/4的均值重的均值重复计算行和列的均值和差值,依此类推。非标复计算行和列的均值和差值,依此类推。非标准分解的过程如下准分解的过程如下:非标准分解非标准分解流程示意使用使用MatlabMatlabdwtdwt函数函数idwtidwt函数函数wcodematwcodemat函数函数dwt2dwt2函数函数wavedec2wavedec2函数函数idwt2idwt2函数函数waverec2waverec2函数函数dwtdwt函数函数功能:功能:1
21、-D1-D离散小波变换离散小波变换格式:格式:cA,cD=dwt(X,wname)cA,cD=dwt(X,wname)cA,cD=dwt(X,Lo_D,Hi_D)cA,cD=dwt(X,Lo_D,Hi_D)说明:说明:1.1.cA,cD=dwt(X,wname)cA,cD=dwt(X,wname)使用指定的小波基函使用指定的小波基函数数 wnamewname对信号对信号X X进行分解,进行分解,cAcA和和cDcD分别分别是近似分量和细节分量;是近似分量和细节分量;2.2.cA,cD=dwt(X,Lo_D,Hi_D)cA,cD=dwt(X,Lo_D,Hi_D)用指定的滤波器组用指定的滤波器组L
22、o_D,Hi_DLo_D,Hi_D对信号进行分解对信号进行分解idwtidwt函数函数功能:功能:1-D1-D离散小波反变换离散小波反变换格式:格式:X=idwt(cA,cD,wname)X=idwt(cA,cD,wname)X=idwt(cA,cD,Lo_R,Hi_R)X=idwt(cA,cD,Lo_R,Hi_R)X=idwt(cA,cD,wname,L)X=idwt(cA,cD,wname,L)X=idwt(cA,cD,Lo_R,Hi_R,L)X=idwt(cA,cD,Lo_R,Hi_R,L)说明:由近似分量说明:由近似分量cAcA和细节分量和细节分量cDcD经过小波经过小波反变换,选择某
23、小波函数或滤波器组,反变换,选择某小波函数或滤波器组,L L为信为信号号X X中心附近的几个点中心附近的几个点wcodematwcodemat函数函数功能:对数据矩阵进行伪真彩色编码功能:对数据矩阵进行伪真彩色编码格式:格式:Y=wcodemat(X,NB,OPT,ABSOL)Y=wcodemat(X,NB,OPT,ABSOL)Y=wcodemat(X,NB,OPT)Y=wcodemat(X,NB,OPT)Y=wcodemat(X,NB)Y=wcodemat(X,NB)Y=wcodemat(X)Y=wcodemat(X)说明:说明:Y=wcodemat(X,NB,OPT,ABSOL)Y=wco
24、demat(X,NB,OPT,ABSOL)返回数据矩返回数据矩阵阵X X的编码矩阵的编码矩阵Y Y;NBNB为编码的最大值(缺省为编码的最大值(缺省1616),),OPTOPT是编码方式,是编码方式,rowrow行方式,行方式,colcol列方式列方式 matmat整个矩阵编码(缺省),整个矩阵编码(缺省),ABSOLABSOL是函数的控制是函数的控制方式,方式,0 0返回编码矩阵,返回编码矩阵,1 1返回数据矩阵的返回数据矩阵的ABSABS(缺省)(缺省)dwt2dwt2函数函数功能:功能:2-D2-D离散小波变换离散小波变换格式:格式:cA,cH,cV,cD=dwt2(X,wname)cA
25、,cH,cV,cD=dwt2(X,wname)cA,cH,cV,cD=dwt2(X,wname)cA,cH,cV,cD=dwt2(X,wname)说明:说明:cAcA近似分量,近似分量,cHcH水平细节分量,水平细节分量,cVcV垂垂直细节分量,直细节分量,cDcD对角细节分量对角细节分量示例示例1 1:对图象做:对图象做2-D2-D小波分解小波分解load woman;load woman;nbcol=size(map,1);nbcol=size(map,1);cA1,cH1,cV1,cD1=dwt2(X,db1);cA1,cH1,cV1,cD1=dwt2(X,db1);cod_X=wcod
26、emat(X,nbcol);cod_X=wcodemat(X,nbcol);cod_cA1=wcodemat(cA1,nbcol);cod_cA1=wcodemat(cA1,nbcol);cod_cH1=wcodemat(cH1,nbcol);cod_cH1=wcodemat(cH1,nbcol);cod_cV1=wcodemat(cV1,nbcol);cod_cV1=wcodemat(cV1,nbcol);cod_cD1=wcodemat(cD1,nbcol);cod_cD1=wcodemat(cD1,nbcol);dec2d=cod_cA1,cod_cH1;cod_cV1,cod_cD1;
27、dec2d=cod_cA1,cod_cH1;cod_cV1,cod_cD1;subplot(1,2,1);subplot(1,2,1);imshow(cod_X,);imshow(cod_X,);subplot(1,2,2);subplot(1,2,2);imshow(dec2d,);imshow(dec2d,);实验结果实验结果wavedec2wavedec2函数函数功能:功能:2-D2-D信号的多层小波分解信号的多层小波分解格式:格式:C,S=wavedec2(X,N,wname);C,S=wavedec2(X,N,wname);C,S=wavedec2(X,N,Lo_D,Hi_D);C,
28、S=wavedec2(X,N,Lo_D,Hi_D);说明:使用小波基函数或指定滤波器对说明:使用小波基函数或指定滤波器对2-D2-D信号信号X X进行进行N N层分解层分解idwt2idwt2函数函数功能:功能:2-D2-D离散反小波变换离散反小波变换格式:格式:X=idwt2(cA,cH,cV,cD,wname)X=idwt2(cA,cH,cV,cD,wname)X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R)X=idwt2(cA,cH,cV,cD,wname,S)X=idwt2(cA,cH,cV,cD,wname,S)
29、X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)X=idwt2(cA,cH,cV,cD,Lo_R,Hi_R,S)说明:略说明:略示例:示例:2-D2-D小波重构小波重构load woman;load woman;sX=size(X);sX=size(X);cA1,cH1,cV1,cD1=dwt2(X,db4);cA1,cH1,cV1,cD1=dwt2(X,db4);A0=idwt2(cA1,cH1,cV1,cD1,db4,sX);A0=idwt2(cA1,cH1,cV1,cD1,db4,sX);subplot(1,2,1);subplot(1,2,1);imshow(X,);i
30、mshow(X,);Title(Original Image);Title(Original Image);subplot(1,2,2);subplot(1,2,2);imshow(A0,);imshow(A0,);Title(Image using idwt2);Title(Image using idwt2);实验结果实验结果示例示例load woman;load woman;nbcol=size(map,1);nbcol=size(map,1);cA1,cH1,cV1,cD1=dwt2(X,db1);cA1,cH1,cV1,cD1=dwt2(X,db1);cod_X=wcodemat(X
31、,nbcol);cod_X=wcodemat(X,nbcol);cod_cA1=wcodemat(cA1,nbcol);cod_cA1=wcodemat(cA1,nbcol);cod_cH1=wcodemat(cH1,nbcol);cod_cH1=wcodemat(cH1,nbcol);cod_cV1=wcodemat(cV1,nbcol);cod_cV1=wcodemat(cV1,nbcol);cod_cD1=wcodemat(cD1,nbcol);cod_cD1=wcodemat(cD1,nbcol);nbcol=size(cod_X,1);nbcol=size(cod_X,1);xcA1
32、,xcH1,xcV1,xcD1=dwt2(cA1,db1);xcA1,xcH1,xcV1,xcD1=dwt2(cA1,db1);xcod_cA1=wcodemat(xcA1,nbcol);xcod_cA1=wcodemat(xcA1,nbcol);xcod_cH1=wcodemat(xcH1,nbcol);xcod_cH1=wcodemat(xcH1,nbcol);xcod_cV1=wcodemat(xcV1,nbcol);xcod_cV1=wcodemat(xcV1,nbcol);xcod_cD1=wcodemat(xcD1,nbcol);xcod_cD1=wcodemat(xcD1,nbc
33、ol);xdec2d=xcod_cA1,xcod_cH1;xcod_cV1,xcod_cD1;xdec2d=xcod_cA1,xcod_cH1;xcod_cV1,xcod_cD1;dec2d=xdec2d,cod_cH1;cod_cV1,cod_cD1;dec2d=xdec2d,cod_cH1;cod_cV1,cod_cD1;subplot(1,2,1);subplot(1,2,1);imshow(cod_X,);imshow(cod_X,);subplot(1,2,2);subplot(1,2,2);imshow(dec2d,);imshow(dec2d,);实验结果实验结果waverec2
34、waverec2函数函数功能:功能:2-D2-D信号的多层小波重构信号的多层小波重构格式:格式:X=waverec2(C,S,wname)X=waverec2(C,S,wname)X=waverec2(C,S,Lo_R,Hi_R)X=waverec2(C,S,Lo_R,Hi_R)说明:略说明:略示例:两层分解重构示例:两层分解重构load woman;load woman;c,s=wavedec2(X,2,sym4);c,s=wavedec2(X,2,sym4);a0=waverec2(c,s,sym4);a0=waverec2(c,s,sym4);subplot(1,2,1);subplot
35、(1,2,1);imshow(X,);imshow(X,);Title(Original Image);Title(Original Image);subplot(1,2,2);subplot(1,2,2);imshow(a0,);imshow(a0,);Title(Image using idwt2);Title(Image using idwt2);实验结果实验结果小波分析在信号降噪中的应用小波分析在信号降噪中的应用分解过程:选定一种小波,对信号进行分解过程:选定一种小波,对信号进行N N层小层小波(包)分解;波(包)分解;作用阀值过程:作用阀值过程:选择一个阀值,选择一个阀值,并对细节系
36、数并对细节系数作用作用重建过程:将处理后的系数经过小波(包)重重建过程:将处理后的系数经过小波(包)重建原始信号;建原始信号;如何选择一个阀值是关键如何选择一个阀值是关键缺省的阀值确定模型缺省的阀值确定模型Birge-MassartBirge-Massart策略确定模型策略确定模型小波包中的小波包中的penaltypenalty阀值阀值.本课程不做介绍本课程不做介绍基于基于MatlabMatlab的示例的示例 基于小波变换基于小波变换load noisdopp;load noisdopp;x=noisdopp;x=noisdopp;c,l=wavedec(x,5,db4);c,l=wavede
37、c(x,5,db4);ca=wrcoef(a,c,l,db4,5);ca=wrcoef(a,c,l,db4,5);index=l(2)+1:l(7);index=l(2)+1:l(7);c1=c;c1=c;c1(index)=c(index)/3;c1(index)=c(index)/3;x2=waverec(c1,l,db4);x2=waverec(c1,l,db4);subplot(311);subplot(311);plot(x);plot(x);title(Original Signal);title(Original Signal);subplot(312);subplot(312)
38、;plot(ca);plot(ca);title(Recover Signal);title(Recover Signal);subplot(313);subplot(313);plot(x2);plot(x2);title(Recover with dimming);title(Recover with dimming);基于基于MatlabMatlab的示例:的示例:基于基于FFTFFT对原始信号进行对原始信号进行FFTFFT变换变换根据频谱,对比我们需要关心的成分,根据频谱,对比我们需要关心的成分,对不需要的频谱进行抑制;对不需要的频谱进行抑制;进行逆变换进行逆变换信号的频谱信号的频谱2
39、0Hz以后迅以后迅速衰减,到速衰减,到50Hz以后几以后几乎没有信号!乎没有信号!利用利用FFTFFT滤波(使用不同的宽度)滤波(使用不同的宽度)load noisdopp;load noisdopp;x=noisdopp;x=noisdopp;y=fft(x,1024);y=fft(x,1024);pyy=y.*conj(y);%Ypyy=y.*conj(y);%Yf=1000*(0:512)/1024;f=1000*(0:512)/1024;%plot(f,pyy(1:513);%plot(f,pyy(1:513);%y1=y;y1(10:1024)=0;y1=y;y1(10:1024)=
40、0;y2=y;y2(30:1024)=0;y2=y;y2(30:1024)=0;y3=y;y3(50:1024)=0;y3=y;y3(50:1024)=0;xd1=real(ifft(y1,1024);xd1=real(ifft(y1,1024);xd2=real(ifft(y2,1024);xd2=real(ifft(y2,1024);xd3=real(ifft(y3,1024);xd3=real(ifft(y3,1024);subplot(411);plot(x);title(Original Signal);subplot(411);plot(x);title(Original Sign
41、al);subplot(412);plot(xd1);title(width=10);subplot(412);plot(xd1);title(width=10);subplot(413);plot(xd2);title(width=30);subplot(413);plot(xd2);title(width=30);subplot(414);plot(xd3);title(width=50);subplot(414);plot(xd3);title(width=50);FFT Vs DWT FFT Vs DWT 1.FFTFFT是一刀切的做法,是一刀切的做法,DWTDWT可以多重选择;可以多
42、重选择;2.FFTFFT保留的能量(有时)比保留的能量(有时)比DWTDWT多,但是相似多,但是相似性很差;性很差;3.降噪的光滑性和相似性在时间和频率两个空间降噪的光滑性和相似性在时间和频率两个空间体上体现的比重不同体上体现的比重不同4.小波分析在信号压缩中的应用小波分析在信号压缩中的应用1.对原始信号进行小波变换对原始信号进行小波变换2.零填充零填充3.编码编码/量化量化4.存储存储5.解码解码6.重建重建注意:注意:本例只说明本例只说明局部化压缩,局部化压缩,实际中一般实际中一般不仅在第不仅在第1 1层层压缩压缩load wbarb;load wbarb;ca1,ch1,cv1,cd1=
43、dwt2(X,sym4);ca1,ch1,cv1,cd1=dwt2(X,sym4);codca1=wcodemat(ca1,192);codca1=wcodemat(ca1,192);codch1=wcodemat(ch1,192);codch1=wcodemat(ch1,192);codcv1=wcodemat(cv1,192);codcv1=wcodemat(cv1,192);codcd1=wcodemat(cd1,192);codcd1=wcodemat(cd1,192);codx=codca1,codch1;codcv1,codcd1;codx=codca1,codch1;codcv1
44、,codcd1;rca1=ca1;rca1=ca1;rch1=ch1;rch1=ch1;rcv1=cv1;rcv1=cv1;rcd1=cd1;rcd1=cd1;rch1(33:97,33:97)=zeros(65,65);rch1(33:97,33:97)=zeros(65,65);rcv1(33:97,33:97)=zeros(65,65);rcv1(33:97,33:97)=zeros(65,65);rcd1(33:97,33:97)=zeros(65,65);rcd1(33:97,33:97)=zeros(65,65);codrca1=wcodemat(rca1,192);codrca1
45、=wcodemat(rca1,192);codrch1=wcodemat(rch1,192);codrch1=wcodemat(rch1,192);codrcv1=wcodemat(rcv1,192);codrcv1=wcodemat(rcv1,192);codrcd1=wcodemat(rcd1,192);codrcd1=wcodemat(rcd1,192);codrx=codrca1,codrch1;codrcv1,codrcd1;codrx=codrca1,codrch1;codrcv1,codrcd1;rx=idwt2(rca1,rch1,rcv1,rcd1,sym4);rx=idwt
46、2(rca1,rch1,rcv1,rcd1,sym4);subplot(221);image(wcodemat(X,192);colormap(map);title(Original Image);subplot(221);image(wcodemat(X,192);colormap(map);title(Original Image);subplot(222);image(wcodemat(codx,192);colormap(map);title(dwt);subplot(222);image(wcodemat(codx,192);colormap(map);title(dwt);subp
47、lot(223);image(wcodemat(rx,192);colormap(map);title(zip image);subplot(223);image(wcodemat(rx,192);colormap(map);title(zip image);subplot(224);image(wcodemat(codrx,192);colormap(map);title(about zip image);subplot(224);image(wcodemat(codrx,192);colormap(map);title(about zip image);DWT VS DCTDWT VS D
48、CTDCTDCT在压缩过程中不能提供时域信息,而在压缩过程中不能提供时域信息,而DWTDWT保留了这方面的特性;保留了这方面的特性;局部压缩特性局部压缩特性小波分析在图象锐化和钝化中小波分析在图象锐化和钝化中的应用的应用图象的钝化(锐化)就是提取出图象中的低图象的钝化(锐化)就是提取出图象中的低频(高频)部分;频(高频)部分;目前的方法主要集中在时域和频域上;目前的方法主要集中在时域和频域上;时域方法是依靠在图象上做算子操作,快,时域方法是依靠在图象上做算子操作,快,但会丢失相关信息;但会丢失相关信息;频域需要两次傅里叶变换,计算量大,而且频域需要两次傅里叶变换,计算量大,而且小波变换是上述两
49、种方法的折中。小波变换是上述两种方法的折中。算法比较算法比较DCTDCT法进行高通滤波的结果比较纯粹;法进行高通滤波的结果比较纯粹;小波结果中高频小波结果中高频/低频都有;低频都有;时间复杂度时间复杂度DCTDCT:2*O(nlogn)+O(n)2*O(nlogn)+O(n)DWTDWT:2*O(n)2*O(n)load chess;load chess;blur1=X;blur1=X;blur2=X;blur2=X;ff1=dct2(X);ff1=dct2(X);for i=1:256for i=1:256 for j=1:256 for j=1:256 ff1(i,j)=ff1(i,j)/
50、(1+(32768/(i*i+j*j)2);ff1(i,j)=ff1(i,j)/(1+(32768/(i*i+j*j)2);end endendendblur1=idct2(ff1);blur1=idct2(ff1);c,l=wavedec2(X,2,db3);c,l=wavedec2(X,2,db3);csize=size(c);csize=size(c);for i=1:csize(2);for i=1:csize(2);if(abs(c(i)300)if(abs(c(i)300)c(i)=c(i)*2;c(i)=c(i)*2;else else c(i)=c(i)/2;c(i)=c(i)