第一篇:小波变换快速算法及应用小结
离散小波变换的快速算法
Mallat算法[经典算法] 在小波理论中,多分辨率分析是一个重要的组成部分。多分辨率分析是一种对信号的空间分解方法,分解的最终目的是力求构造一个在频率上高度逼近L2(R)空间的正交小波基,这些频率分辨率不同的正交小波基相当于带宽各异的带通滤波器。因此,对于一个能量有限信号,可以通过多分辨率分析的方法把其中的逼近信号和细节信号分离开,然后再根据需要逐一研究。多分辨率分析的概念是S.Mallat在构造正交小波基的时候提出的,并同时给出了著名的Mallat算法。Mallat算法在小波分析中的地位相当于快速傅立叶变换在经典傅立叶变换中的地位,为小波分析的应用和发展起到了极大的推动作用。MALLAT算法的原理
在对信号进行分解时,该算法采用二分树结构对原始输入信号x(n)进行滤波和二抽取,得到
111第一级的离散平滑逼近和离散细节逼近和,再采用同样的结构对进行滤波和二抽取
22得到第二级的离散平滑逼近和离散细节逼近和,再依次进行下去从而得到各级的离散123细节逼近对,…,即各级的小波系数。重构信号时,只要将分解算法中的步骤反过来进行即可,但要注意,此时的滤波器与分解算法中的滤波器不一定是同一滤波器,并且要将二抽取装置换成二插入装置才行。
多孔算法
[小波变换快速算法及其硬件实现的研究毛建华]
多孔算法是由M.shen于1992年提出的一种利用Mallat算法结构计算小波变换的快速算法,因在低通滤波器h0()和高通滤波器h1()中插入适当数目的零点而得名。它适用于a=2的二分树结构,与Mallat算法的电路实现结构相似。先将Mallat算法的电路实现的基本支路作一下变形。令h0 和h1()的z变换为H0(z)与H1(z),下两条支路完全等价,只不过是将插值和二抽取的顺序调换一下罢了。图中其它的上下两条支路也为等效支路,可仿照上面的方法证明。这样,我们便可由Mallat算法的二分树电路结构得出多孔算法的电路级联图,原Mallat算法中的电路支路由相应的等效支路所取代,所以整个电路形式与Mallat算法非常相似。如果舍去最后的抽取环节们实际上相当于把所有点的小波变换全部计算出来。
基干FFT的小波快速算法
[小波变换快速算法及其硬件实现的研究毛建华]
Mallat算法是由法国科学家StephaneG.Mallat提出的计算小波分解与重构的快速算法,能大大降低小波分解与重构的计算量,因此在数字信号处理和数字通信领域中得到了广泛的应用。但是如果直接采用该算法计算信号的分解和重构,其运算量还是比较大。主要体现在信号长度较大时,与小波滤波器组作卷积和相关的乘加法的计算量很大,不利于信号的实时处理。故有必要对该算法作进一步的改进。众所周知,FFT是计算离散傅里叶变换(DFT)的一种快速算法,如能将它和Mallat算法结合在一起,势必会进一步降低小波分解和重构的计算量,事实证明这一想法是可行的。
基于FFT的小波变换快速算法是通过离散傅里叶变换建立起FFT和mallat算法之何的桥梁,从而将、FFT引入到小波变换中来,达到改小波变换快速算法及硬件实现的研究进Mallat算法的目的。
当信号长度较小时,FFT算法效率不及直接算法;随着长度的增加,特别是对于长度是2的幕次方的信号,FFT算法比直接算法更适用,能大大降低计算t。当信号是长序列信号时,小波分解与重构中,滤波器要补很多的零,这对信号的实时计算很不利,我们可以采用长序列快速相关卷积算法对信号进行分段后再运用FFT算法,提高运算速度。
基于算术傅里叶变换的小波变换快速算法
[小波变换快速算法及其硬件实现的研究毛建华]
算术傅里叶变换(AFT)是1988年由Tufts和Sadasiv提出的一种用Mobius反演公式计算连续函数傅里叶系数的方法.它具有乘法运算t仅为O(N)算法简单、并行性好的优点。根据DPT和连续函数傅里叶系数的关系,可以用AFT计算DFT。同直接算法相比,APT方法可以将DFT的计算时间减少90%,尤其是对于含有较大素因子,特别是其长度本身为素数的DFT,它的速度比传统的FFT更快.另一方面,Mallat算法的分解和重构算法也可由DFT来计算,从而将AFT与Mallat算法联系了起来,从而为小波变换快速算法开辟了新的途径。对于尺度
为j的快速分解算法步骤如下: 1)选定滤波器系数h(n)和g(n),再根据FFT的性质2,用N点的AFT分别计算出H(k)和G(k),分别取共扼,进而得到H*(k),G*(k)。
2)在已知cj(n)的情况下,用N点的AFT求出其DFTCj(k)3)分别计算出H*(k)Cj(k),G*(k)Cj(k),即C’j(k)和D’j(k)4)用N点的AFT求出C’j+1(k)和D’j+1(k)IDFT,得到C’j+1(n)和D’j+1(n)IDFT,再分别对它 们作二抽取,就可求出Cj+1(n)和Dj+1(n)。在进行分解计算时,H(k)G(k)只要计算一次即可。重复步骤(2)一(4)可实现下一尺度小波分解,直到达到规定的尺度为止。不过要注意:尺度增加一个级别,信号长度减半。对于尺度为j+1的快速重构算法为: 1)对Cj+1(n)和Dj+1(n)进行二插值,得到C’j+1(n)和D’j+1(n);2)用N点的AFT分别求出h(n)、g(n)的DFTH(k)和G(k)3)用N点的AFT分别求出C’j+1(n)和D’j+1(n)的DFTC’j+1(k)和D’j+1(k);4)根据(17)式求出Cj(k),再用N点的AFT进行IDFT,可求出cj(n)。
基于Hermite插值的小波变换模极大值重构信号快速算法
[基于Hermite插值的小波变换模极大值重构信号快速算法韩民,田岚,翟广涛,崔国辉] 信号在不同尺度上的小波变换模极大值包含了信号中的重要信息,因此研究如何由小波变 换模极大值重构信号是很有意义的。论文提出了一种基于Hermite插值多项式由二进小波变换模极大值重构信号的快速算法。数值试验表明,与S.Mallat提出的经典交替投影算法相比,该算法可以在保证重构质量的前提下简化计算过程,提高计算效率,计算所需时间与交替投影算法相比大大减少,是一种实用性较强的信号重构算法。
Hermite插值[11]方法是一种具有重节点的多项式插值方法,由于它要求在节点处满足相应的导数条件,因此也称为切触差值。由于小波系数模极大值点的导数为零,这与Hermite插值对节点的导数要求不谋而合,因此我们选用Hermite插值多项式作为改进的插值方法。
强奇异积分方程小波Petrov-Galerkin快速算法
[强奇异积分方程小波Petrov-Galerkin快速算法隆广庆]
通过构造具有高阶消失矩、小支集和半双正交性质的分片多尺度小波基底, 给出第2类强奇异积分方程的小波Petrov-Galerkin快速算法, 并证明该算法收敛阶达到最佳, 条件数有界, 计算复杂性几乎最佳。构造配置泛函的思想, 构造分片多项式空间Xn上2列具有半双正交性的小波基,其中一列具有高阶消失矩性质。
小波变换的应用
小波分析在图像压缩编码中的应用
[小波变换算法在数字图像处理中的应用支春强中国电子科技集团公司第二十八研究所,江苏南京 210007摘] 数字图像信号像素间一般都具有相关性,相邻之间、相邻列之间的相关性最强,其相关系数呈指规律衰减。图像中相关性的存在,是图像压缩的理论依据,使得能针对性地采用某种相关的手段去除冗余信息,达到压缩的目的。利用变换编码可以有效地消除像素间的相关性,从而获得较好的压缩效果。其基本原理就是将在时域描述的信号(如声音信号)或在空域描述的信号(如图像信号)经变换到正交向量空间(即变换域)中进行描述,在变换域的描述中各信号分量之间的相关性很小或互不相关,即能量得以集中。
小波变换进行图像重构实质上是相当于分别对图像数据的行和列做一维小波逆变换。对通过水平跟垂直滤波,离散小波将一级变换后图像的4个子图进行合成。对多级变换后的图像,则先对其信息集中的图进行重构,然后逐层进行。
小波分析在图像处理边缘检测中的应用
小波变换在车牌定位中的应用张国才,王召巴(中北大学信息与通信工程学院,山西太原030051)
由于传统的边缘检测方法检测到的边缘信息复杂,要想从中找准车牌的位置十分困难,而小波可以在不同的分辨率层次上对图像进行分割,在低分辨率层次上进行粗分割,由于计算量较小,适用于寻找目标的大致轮廓,在较高分辨率上实现精细分割,而且粗分割的结果对精细分割具有一定的指导作用,可以减少计算量和提高目标的定位精度。所以有的学者将小波变换用在了车牌区域的定位方面,利用小波的特点对车牌图像进行分析,发现小波分解后的细节分量中有能较好体现出车牌位置的信息,特别是水平低频、垂直高频分量能提供更准确的车牌位置信息。利用小波变换对车牌定位,在小波变换的分解图像中这里只研究其低频子图像,对低频子图像利用最大类间方差法进行二值化分割。
在军事工程方面的应用
[小波变换及其在轨道检测中的应用俞峰 戴月辉 ] 目前小波分析应用于轨道检测主要有: ①用小波时域局部特征检测突变信号(如检测钢
轨焊接部位缺陷、钢轨表面磨损等);②当传统的功率谱无法区分信号谱特征时,采用小波分 层细化分解,提取信号谱特征。
在语音合成方面的应用
[语音处理中自适应小波变换的应用 Application of Adaptive Wavelet Transformations in Speech Processing徐静波,冉崇森XU Jing2bo , RAN Chong2sen(信息工程大学信息工程学院,河南郑州450002)] 对于含噪声语音信号,我们先分离小波变换中语音信号引起的模极大值点和噪声引起的模极 大值点,再根据语音信号引起的模极大值点来检测端点。一般地,原始信号的Lipschitz指数是正的,而白噪声的Lipschitz指数是负的。当尺度减少时,如果某些小波变换模极大值点的幅值急剧增加,则表明对应的奇异性具有负的Lipschitz指数,这些极大值点几乎被噪声控制。因为由噪声引起的模极大值点的平均密度与尺度成反比,所以,随着尺度的递增,至少有一半的模极大值点不能传递到较大尺度上。因此,那些不能从一个尺度上传递到较大尺度上的模极大值点,也是由噪声控制的。我们把噪声控制的模极大值点去掉,剩下的模极大值点就是由语音信号控制的。
在其他方面的应用
(1)小波分析在数字水印中的应用
使用小波域水印方法的优点与在JPEG 中使用小波是类似的,并且小波的多分辨率分析与人眼视觉特性是一致的,这对根据HVS 选择适当的水印嵌入位置和嵌入强度有很大的帮助。(2)小波分析在图像滤波中的应用
在小波变换域,可通过对小波系数进行切削、缩小幅度等非线性处理,以达到滤除噪声的目的。
(3)小波分析在地球物理勘探中的应用
提高物理勘探资料的信噪比和分辨率一直是物理勘探资料处理所追求的目标。在资料处理中所遇到的噪音主要有规则干扰和随机干扰两大类,利用小波变换时频两域都有局部化的特点,对信号进行多尺度分解同样可以抑制噪音。(4)医学检测方面的应用
小波能有效提取生理信号中的突变特征点,这在医学方面(如B超、CT、磁共振、心电图等)已有成熟的应用。在胃动力检测方面,利用小波包变换方法能很清除地分辨出人体胃运动的三相特征,这些在临床上都有重要的应用价值。
第二篇:小波变换 matlab 总结范文
小波变换matlab总结 目录
一、预置工具...........................................................................................................................4
1.预置信号......................................................................................................................4 2.预置小波......................................................................................................................4 3.滤波器函数..................................................................................................................6
wfilters函数.......................................................................................................6 4.量化编码......................................................................................................................6
wcodemat函数.......................................................................................................6 5.阈值获取......................................................................................................................6
ddencmp函数.........................................................................................................6 thselect函数.......................................................................................................7 wbmpen函数...........................................................................................................7 wdcbm函数..............................................................................................................7 6.阈值去噪......................................................................................................................8
wden函数................................................................................................................8 wdencmp函数.........................................................................................................8 wthresh函数.........................................................................................................9 wthcoef函数.........................................................................................................9 wpdencmp函数.......................................................................................................9
二、小波变换函数.................................................................................................................12
单尺度一维小波变换.....................................................................................................12
cwt一维连续小波变换.........................................................................................12 dwt一维离散小波变换.........................................................................................12 idwt一维离散小波逆变换..................................................................................13 upcoef 一维小波系数重构................................................................................13 多尺度一维小波变换.....................................................................................................14
wavedec多尺度一维分解...................................................................................14 waverec多尺度一维重构...................................................................................15 appcoef低频系数提取.......................................................................................16 detcoef高频系数提取.......................................................................................16 wrcoef多尺度小波系数重构.............................................................................17 一维静态(平稳)小波变换.........................................................................................18
swt一维平稳小波变换.........................................................................................18 iswt一维平稳小波逆变换..................................................................................18 实例.........................................................................................................................19 单尺度二维小波变换.....................................................................................................19
dwt2二维离散小波变换......................................................................................19 idwt2二维离散小波逆变换................................................................................20 upcoef2二维系数重构.......................................................................................20 多尺度二维小波变换.....................................................................................................21
wavedec2多尺度二维分解.................................................................................21 waverec2多尺度二维重构.................................................................................22 appcoef2低频系数提取.....................................................................................23 detcoef2高频系数提取.....................................................................................23 wrcoef2多尺度小波系数重构...........................................................................24 二维静态(平稳)小波变换.........................................................................................26
swt2二维静态小波变换......................................................................................26 iswt2二维静态小波逆变换................................................................................26 实例.........................................................................................................................26 直接调用的小波函数.....................................................................................................28
meyer函数............................................................................................................28 cgauwavf函数.....................................................................................................28 mexihat函数.......................................................................................................28 morlet函数.........................................................................................................29 symwavf函数.......................................................................................................29
三、图像接口调用.................................................................................................................30
使用图形接口做一维连续小波分析.....................................................................30 使用图形接口做一维离散小波分析.....................................................................33 使用图形接口分析复信号.....................................................................................36 使用图形接口做一维除噪分析.............................................................................36
四、小波变换在图像处理中的应用.....................................................................................40
4.1 小波分析用于图像压缩........................................................................................40
4.1.1 基于小波变换的图像局部压缩...............................................................40 4.1.2 小波变换用于图像压缩的一般方法.......................................................41 4.1.3 基于小波包变换的图像压缩...................................................................45 4.2 小波分析用于图像去噪........................................................................................47
小噪声阈值去噪.....................................................................................................48 大噪声滤波去噪.....................................................................................................49 少量噪声的小波分解系数阈值量化去噪.............................................................50 4.3 小波分析用于图像增强........................................................................................52
4.3.1 图像增强问题描述...................................................................................52 4.3.2 图像钝化...................................................................................................53 4.3.3 图像锐化...................................................................................................54 4.4 小波分析用于图像融合........................................................................................56 4.5 小波分析用于图像分解........................................................................................57
一、预置工具 1.预置信号
Matlab 内置了大量的信号实例,进行信号试验的时候可以调用。调用格式:load signal matlab安装目录的toolbox/wavelet/wavedemo noissin 包含噪声的正弦波
leleccum一维电压信号,有365560个采样点 wbarb 专指图片:
2.预置小波
Matlab预置了共计15种小波。查看语句:wavemngr('read',1)查看单个小波:waveinfo('wname')
1.Haar小波 小波名haar
2.Daubechies小波系 小波名db 调用名db1db2db3db4 db5 db6 db7 db8 db9 db10
3.对称小波系Symlets 小波名sym 调用名sym2sym3 sym4 sym5 sym6 sym7 sym8
4.Coiflets 小波系 小波名coif 调用名 coif1coif2coif3coif4coif5 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.8
6.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.9 rbio4.4 rbio5.5 rbio6.8
7.Meyer小波 小波名meyr
8.Dmeyer小波 小波名dmey
9.Gaussian小波系 小波名gaus 调用名gaus1gaus2gaus3gaus4gaus5gaus6gaus7gaus8
10.Mexican hat小波 小波名mexh
11.Morlet小波 小波名morl
12.Complex Gaussian小波系 小波名cgau 调用名cgau1cgau2cgau3cgau4cgau5 cgau
13.Shannon小波系 小波名shan 调用名shan1-1.5shan1-1shan1-0.5shan1-0.1shan2-3
14.Frequency B小波系 小波名fbsp 调用名fbsp1-1-1.5fbsp1-1-1fbsp1-1-0.5fbsp2-1-1fbsp2-1-0.5fbsp2-1-0.1
15.Complex Morlet小波系 小波名cmor 调用名cmor1-1.5cmor1-1cmor1-0.5cmor1-1cmor1-0.5cmor1-0.1 3.滤波器函数 wfilters函数
[Lo_D,Hi_D,Lo_R,Hi_R] = wfilters('wname')计算对应小波的滤波器。
The four output filters are Lo_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'时,做行编码;当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用于获取信号在消噪或压缩过程中的默认阈值。输入参数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);%产生白噪声;%求取对信号进行小波消噪处理的默认阈值、软阈值,并且保留低频系数;[thr,sorh,keepapp]=ddencmp('den','wv',x);输出:
thr = 3.8593 sorh = s keepapp = 1 thselect函数
调用格式如下:
THR=thselect(X,TPTR);根据字符串TPTR定义的阈值选择规则来选择信号X的自适应阈值。自适应阈值的选择规则包括以下四种:
*TPTR='rigrsure',自适应阈值选择使用Stein的无偏风险估计原理。*TPTR='heursure',使用启发式阈值选择。
*TPTR='sqtwolog',阈值等于sqrt(2*log(length(X))).*TPTR='minimaxi',用极大极小原理选择阈值。
阈值选择规则基于模型 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);(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、wdencmp、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='sqtwolog',阈值等于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)相同,但其结构是由直接对信号的小波分解结构[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的缩写)表示每一层都采用同一个阈值进行处理。lvd表示每层采用不同的阈值进行处理。N表示小波分解的层数。THR为阈值向量,对于格式(2)和(3)每层都要求有一个阈值,因此阈值向量THR的长度为N。
SORH表示选择软阈值或硬阈值(分别取值为's'和'h'),参数KEEPAPP取值为1时,则低频系数不进行阈值量化,反之,低频系数要进行阈值量化。XC是要进行消噪或压缩的信号,[CXC,LXC]是XC的小波分解结构,PERF0和PERFL2是恢复或压缩L^2的范数百分比。如果[C,L]是X的小波分解结构,则PERFL2=100*(CXC向量的范数/C向量的范数)^2;如果X是一维信号,小波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),即把信号的绝对值和阈值进行比较,小于或等于阈值的点变为零,大于阈值的点保持不变。一般来说,用硬阈值处理后的信号比用软阈值处理后的信号更粗糙。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)返回小波分解结构[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(TREE,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是包含小波名的字符串。
函数使用由字符串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=wdencmp('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,keepapp);%用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 square subplot(222);image(Xn);colormap(map);title('含噪声的图像');axis square subplot(223);image(Xd);colormap(map);title('去噪后的图像');axis square subplot(224);image(Xd1);colormap(map);title('分层去噪后的图像');axis square
二、小波变换函数 单尺度一维小波变换 cwt一维连续小波变换 调用格式:
coefs = cwt(s,scale,’wname’)【仅给出系数值】
coefs = cwt(s,scale,’wname’,’plot’)【给出系数值同时生成图像】 实例:
load noissin;figure subplot(121)plot(noissin);subplot(122)c=cwt(noissin,1:48,'db4','plot');
dwt一维离散小波变换 调用格式:
[cA1,cD1]=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');figure subplot(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);figure subplot(121)plot(cA1);subplot(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)Y = upcoef(O,X,Lo_R,Hi_R,N)Y = upcoef(O,X,Lo_R,Hi_R,N,L)这一函数是一维小波分解系数的直接重构
它重建的是原信号在指定层次的,高频或者低频分量。
也就是说,这个信号不是原本的信号,而且某个层次上的逼近。N=1条件下相当与缺省模式的idwt A1 = 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代表了小波系数的级别,是几级小波系数。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多尺度一维分解
调用格式:
[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 leleccum;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=appcoef(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,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:3920);[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小波分解和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层分解信号,那么原始信号需要能够平分成2^k份。所以如果原始信号的长度不满足要求,需要使用Signal Extension GUI工具或使用wextend函数来扩展它。
函数执行将产生N层近似和细节的系数,两者和信号的长度是相等的,这也是平稳小波和普通小波不同的地方,从而使它在某些领域有好的效果。iswt一维平稳小波逆变换 调用格式
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 noisdopp s = 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');%一层平稳小波重构 %从系数中构建近似和细节
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,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('cH1')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,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,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(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)|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.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,’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);subplot(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);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)X= wrcoef2(„type‟,C,S,Lo_R,Hi_R,N)X= wrcoef2(„type‟,C,S,‟wname‟)X= wrcoef2(„type‟,C,S, Lo_R,Hi_R,N)Type: „a‟低频;‟h‟ 水平;„v‟垂直;„d‟对角 实例:
load wbarb;[C,S] = wavedec2(X,2,'bior3.7');A1 = wrcoef2('a',C,S,'bior3.7',1);H1 = wrcoef2('h',C,S,'bior3.7',1);V1 = wrcoef2('v',C,S,'bior3.7',1);D1 = wrcoef2('d',C,S,'bior3.7',1);A2 = wrcoef2('a',C,S,'bior3.7',2);H2 = wrcoef2('h',C,S,'bior3.7',2);V2 = wrcoef2('v',C,S,'bior3.7',2);D2 = wrcoef2('d',C,S,'bior3.7',2);figure(1);colormap(map);subplot(2,2,1);image(wcodemat(A1,192));title('reApproximation A1')subplot(2,2,2);image(wcodemat(H1,192));title('reHorizontal Detail H1')subplot(2,2,3);image(wcodemat(V1,192));title('reVertical Detail V1')subplot(2,2,4);image(wcodemat(D1,192));title('reDiagonal Detail D1')figure(2);colormap(map);subplot(2,2,1);image(wcodemat(A2,192));title('reApproximation A2')subplot(2,2,2);image(wcodemat(H2,192));title('reHorizontal Detail H2')subplot(2,2,3);image(wcodemat(V2,192));title('reVertical Detail V2')subplot(2,2,4);image(wcodemat(D2,192));title('reDiagonal Detail D2')
二维静态(平稳)小波变换
回顾从一维离散小波变换到二维的扩展,二维静态小波变换采用相似的方式。对行和列分别采用高通和低通滤波器。这样分解的结果仍然是四组图像:近似图像、水平细节图像、竖直细节图像和对角图像,与离散小波变换不同的只是静态小波分解得到的四幅图像与原图像尺寸一致,道理与一维情况相同。
二维离散小波变换同样只提供了一个函数swt2,因为它不对分解系数进行下采样,所以单层分解和多层分解的结果是一样的。不需要另外提供多层分解的功能。swt2二维静态小波变换
调用格式:
[A,H,V,D] = swt2(X,N,'wname')[A,H,V,D] = swt2(X,N,Lo_D,Hi_D)iswt2二维静态小波逆变换 调用格式
X = iswt2(SWC,'wname')X = iswt2(A,H,V,D,wname)X = iswt2(SWC,Lo_R,Hi_R)X = iswt2(A,H,V,D,Lo_R,Hi_R)实例
clc;clear;close all;load woman;[cA,cH,cV,cD]=swt2(X,2,'haar');%用haar小波基进行2尺度平稳小波分解 cA1=cA(:,:,1);cH1=cH(:,:,1);cV1=cV(:,:,1);cD1=cD(:,:,1);%尺度1低、高频系数
cA2=cA(:,:,2);cH2=cH(:,:,2);cV2=cV(:,:,2);cD2=cD(:,:,2);%尺度2低、高频系数
reX = iswt2(cA,cH,cV,cD,'haar');X1 = iswt2(cA1,cH1,cV1,cD1,'haar');X2 = iswt2(cA2,cH2,cV2,cD2,'haar');figure;colormap(map);subplot(1,4,1),image(X);title('原始图像');subplot(1,4,2),image(reX);title('重构图像');subplot(1,4,3),image(X1);title('尺度1的重构图像');subplot(1,4,4),image(X2);title('尺度1的重构图像');figure;colormap(map);subplot(1,2,1),image(uint8(cA1));title('尺度1的低频系数图像');subplot(1,2,2),image(uint8(cA2));title('尺度2的低频系数图像');figure;colormap(map);subplot(2,3,1),image(uint8(cH1));title('尺度1水平方向高频系数');subplot(2,3,2),image(uint8(cV1));title('尺度1垂直方向高频系数');subplot(2,3,3),image(uint8(cD1));title('尺度1斜线方向高频系数');subplot(2,3,4),image(uint8(cH2));title('尺度2水平方向高频系数');subplot(2,3,5),image(uint8(cV2));title('尺度2垂直方向高频系数');subplot(2,3,6),image(uint8(cD2));title('尺度2斜线方向高频系数');
直接调用的小波函数 meyer函数 功能:Meyer小波
函数语法格式:
[PHI,PSI,T] = meyer(LB,UB,N)[PHI,T] = meyer(LB,UB,N,'phi')[PSI,T] = meyer(LB,UB,N,'psi')
cgauwavf函数
功能:Complex Gaussian小波
函数语法格式:
[PSI,X] = cgauwavf(LB,UB,N,P)
mexihat函数 功能:墨西哥帽小波
函数语法格式:
[PSI,X] = mexihat(LB,UB,N)
morlet函数 功能:Morlet小波
函数语法格式:
[PSI,X] = morlet(LB,UB,N)
symwavf函数
功能:Symlets小波滤波器 函数语法格式:F = symwavf(W)
三、图像接口调用
使用图形接口做一维连续小波分析
1.开启一维连续小波工具,只需输入如下命令 wavemenu
出现如下小波工具箱主菜单
选择Continuous Wavelet 1-D菜单项,出现如下一维信号分析连续小波分析工具
2.加载信号
选择菜单File->Load Signal,在Load Signal对话框里选择noissin.mat文件,它在matlab安装目录的toolbox/wavelet/wavedemo文件夹下,点击OK加载信号。一维连续小波工具开始加载信号,加载后默认采样频率为1s。3.执行连续小波变换
下面来测试使用db4小波对尺度1到48做小波分析,设置如下
4.点击Analyze按钮
在短暂的计算后,工具将绘制小波系数,并在Coefficients line坐标系中绘制尺度为24的小波系数,在local maxima坐标系中绘制各尺度的小波系数最大值。
5.查看小波Coefficients Line 在小波系数图中右键点击可以选择展示其他尺度的小波系数,选择后点击New Coefficients Line按钮,Coefficients Line会相应更新。
6.查看Maxima Line 点击Refresh Maxima Line按钮,可以显示从尺度1到所选尺度的小波系数的最大值。
注意当在系数图中按下鼠标右键并移动时,会在最下面的Info框中显示当前鼠标位于的X位置和尺度。
7.在尺度和伪频率之间切换
在右边选择Frequencies,当再在系数图中选择时,在Info中显示的将是Hz。
而关于尺度和频率的转换关系,可以看How to Connect Scale to Frequency? 8.选择要显示的坐标系
9.放大细节
在系数框中按鼠标左键可以选择放大的范围。
10.选择好放大范围后点击最下面的按钮可以实现指定的放大
11.显示普通系数或系数绝对值
两种显示方式的区别在于,普通模式下,颜色映射是在系数的最大最小之间;而绝对模式,颜色映射是在0和最大的系数绝对值之间。图形接口的导入导出信息 导入信号到一维连续小波工具
首先将要处理的信号保存到mat文件中,要求信号是一维的向量。然后使用工具的File->Load Signal菜单功能,选择此信号文件即可导入信号。
文件中第一个一维变量被认为是信号,变量在文件中顺序是按字母排序的。保存小波系数
小波分析完成后,点击File->Save->Coefficients,可以将分析结果保存到mat文件。保存后,可以使用load函数加载数据,会看到保存的变量有小波系数coeff、尺度scales、小波的名字wname。
使用图形接口做一维离散小波分析 1.开启一维小波分析工具 Wavemenu->Wavelet 1-D 2.加载信号
3.执行一层小波分解 使用db1小波执行一层分解
4.放大有关细节 5.执行多层小波分解 使用db1小波执行3层分解。
选择不同的显示方式:在Display mode下拉菜单下可以选择不同的显示方式,默认的显示方式为Full Decomposition Mode,其他的显示方式及其意义如下 Separate Mode:在不同的列中显示细节和近似;
Superimpose Mode:在一张图上以不同的颜色显示细节、近似;
Tree Mode:显示分解树、原始信号和选择的成分,在分解树上选择你想显示的成分; Show and Scroll Mode:显示3个窗口,第一个显示原始信号和选择的近似信号,第二个显示选择的细节,第三个显示小波系数; Show and Scroll Mode(Stem Cfs):和Show and Scroll Mode很接近,除了第三个窗口中以杆状图替代颜色条显示小波系数。
对于每个分析任务,可以改变默认的显示方式,只要在View->Default Display Mode子菜单下选择理想的方式即可;不同的显示方式会有额外的显示选项,在More Display Options中做选择,这些选项可以控制不同成分的显示、选择是否显示原始信号与细节、近似对比。6.从信号中移除噪声
图形接口提供了以预定义的阈值策略除噪的选项,这使得从信号中除噪非常容易,只需点击De-noise按钮就可以弹出除噪工具。
点击Close可以关闭除噪窗口,由于不能同时打开除噪和压缩窗口,所以需要关闭除噪窗口再进行信号压缩。关闭时会提示Update Synthesized Signal提示对话框,点击No,如果点击Yes,合成的信号会加载到主窗口。7.改善分析
图像工具可以在任何时候轻易的改善分析,只需要改变分析的方法就可以了,如使用db3做5层小波分析。8.压缩信号
图形接口提供了自动化或人工阈值的做压缩的功能。
默认使用的是全阈值方法,当然也可以使用人工阈值的方法,选择By Level thresholding选项即可,下面的滑动条提供了各级阈值独立调整的功能,相应的调整可以在左边的窗口中看到,在图形窗口中也可以直接拖动来改变阈值。
完成选择后,点击压缩按钮可以完成压缩。从压缩的结果可以看到,压缩过程去除了大多数噪声,但保存了信号99.74%的能量。自动化阈值是非常有效的,它使除3.2%的小波系数都归零化了。9.显示残差
点击Residuals按钮可以查看压缩的残差。显示的统计数据包括测量的趋势(平均值、众数、中值)和散布情况(极差、标准差)。另外,工具还提供了概率分布直方图和累计直方图以及时间序列图,如自相关函数、频谱。这些都是和去噪工具是一样的。10.显示统计分布
可以显示一系列有关信号及其组分的统计数据。
点击Statistics按钮可以查看统计数据信息,点击Histograms可以查看直方图。从图形接口中导入导出信息 保存信息
l 保存合成的信号
如加载如下信号File > Example Analysis > Basic Signals > with db3 at level 5 → Sum of sines,做除噪或压缩处理后,保存合成信号File > Save > Synthesized Signal,保存后加载文件,会得到如下变量: 如果使用除全阈值外的方法时,得到的变量结构如下
Synthsig是合成的信号,除噪或压缩的小波方法保存在wname中,相互依赖的各级阈值保存在thrParams中,小波分解的等级数和cell的长度相等,thrParams{i},i从1到5分别保存了阈值间距上下限的值和阈值(间距阈值是允许的,在自适应阈值方法中会用到,参见One-Dimensional Variance Adaptive Thresholding of Wavelet Coefficients)如果使用的全阈值方法,保存的数据结构如下
alTHR保存的是全阈值的值。l 保存离散小波变换的系数 一个例子的文件内容如下
Coefs包含了离散小波变换的系数,longs包含了各组分的长度,thrParams为空,因为合成信号不存在,wname是小波的名字。l 保存分解结果(即保存小波分析的全体数据)小波工具将保存为.wal文件,加载方式为 load wdecex1d.wa1 –mat 文件内容为
加载信息
加载的文件只要和保存的相应文件中的变量一样即可。
使用图形接口分析复信号
与实信号不同的是,选择Complex Continuous Wavelet 1-D,得到的结果如下
具体操作过程与实信号的相似,如下
使用图形接口做一维除噪分析 1.开启一维平稳小波除噪工具
输入wavemenu,选择SWT Denoising 1-D,出现如下GUI
2.加载信号 Load Signal 3.执行平稳小波分解
使用db1小波执行5层小波分解,得到的是非抽取系数(nondecimated coefficients),它们是使用相同的离散小波变换来得到的,只是省略了抽取的步骤。得到的结果如下
4.使用平稳小波变换除噪
可以使用GUI默认的参数做除噪处理。右边的滑动条可以控制各级系数的阈值大小,也可以直接在系数图中直接拖动来调整阈值的大小,注意近似系数中没有阈值。点击denoise进行除噪处理
得到的效果是非常好的,但似乎在信号不连续的地方出现了过平滑,这个可以从残差图中看出来,在800的位置出现了突降点。
选择hard阈值模式代替soft模式,再进行除噪,结果如下
可以看到这次效果非常好,而且残差图也看起来像白噪声序列。为了验证这一点,可以点击Residuals按钮查看残差图及相关统计数据来详细说明。
四、小波变换在图像处理中的应用 4.1 小波分析用于图像压缩
4.1.1 基于小波变换的图像局部压缩
基于离散余弦变换的图像压缩算法,其基本思想是在频域对信号进行分解,驱除信号点之间的相关性,并找出重要系数,滤掉次要系数,以达到压缩的效果,但该方法在处理过程中并不能提供时域的信息,在我们比较关心时域特性的时候显得无能为力。
但是这种应用的需求是很广泛的,比如遥感测控图像,要求在整幅图像有很高压缩比的同时,对热点部分的图像要有较高的分辨率,例如医疗图像,需要对某个局部的细节部分有很高的分辨率,单纯的频域分析的方法显然不能达到这个要求,虽然可以通过对图像进行分快分解,然后对每块作用不同的阈值或掩码来达到这个要求,但分块大小相对固定,有失灵活。
在这个方面,小波分析的就优越的多,由于小波分析固有的时频特性,我们可以在时频两个方向对系数进行处理,这样就可以对我们感兴趣的部分提供不同的压缩精度。
下面我们利用小波变化的时频局部化特性,举一个局部压缩的例子,大家可以通过这个例子看出小波变换在应用这类问题上的优越性。
我们把图像中部的细节系数都置零,从压缩图像中可以很明显地看出只有中间部分变得模糊(比如在原图中很清晰的围巾的条纹不能分辨),而其他部分的细节信息仍然可以分辨的很清楚。
实例:
load wbarb %使用sym4小波对信号进行一层小波分解 [ca1,ch1,cv1,cd1]=dwt2(X,'sym4');codca1=wcodemat(ca1,192);codch1=wcodemat(ch1,192);codcv1=wcodemat(cv1,192);codcd1=wcodemat(cd1,192);%将四个系数图像组合为一个图像
codx=[codca1,codch1,codcv1,codcd1];%复制原图像的小波系数 rca1=ca1;rch1=ch1;rcv1=cv1;rcd1=cd1;%将三个细节系数的中部置零
rch1(33:97,33:97)=zeros(65,65);rcv1(33:97,33:97)=zeros(65,65);rcd1(33:97,33:97)=zeros(65,65);codrca1=wcodemat(rca1,192);codrch1=wcodemat(rch1,192);codrcv1=wcodemat(rcv1,192);codrcd1=wcodemat(rcd1,192);%将处理后的系数图像组合为一个图像
codrx=[codrca1,codrch1,codrcv1,codrcd1];%重建处理后的系数
rx=idwt2(rca1,rch1,rcv1,rcd1,'sym4');subplot(221);image(wcodemat(X,192)),colormap(map);title('原始图像');subplot(222);image(codx),colormap(map);title('一层分解后各层系数图像');subplot(223);image(wcodemat(rx,192)),colormap(map);title('压缩图像');subplot(224);image(codrx),colormap(map);title('处理后各层系数图像');%求压缩信号的能量成分 per=norm(rx)/norm(X)%求压缩信号与原信号的标准差 err=norm(rx-X)运行结果
per = 1.0000 err = 586.4979 4.1.2 小波变换用于图像压缩的一般方法
二维小波分析用于图像压缩是小波分析应用的一个重要方面。
它的特点是压缩比高,压缩速度快,压缩后能保持图像的特征基本不变,且在传递过程中可以抗干扰。4.1.2.1 利用二维小波分析进行图像压缩
基于小波分析的图像压缩方法很多,比较成功的有小波包、小波变换零树压缩、小波变换矢量量化压缩等。
利用二维小波变换进行图像压缩时,小波变换将图像从空间域变换到时间域,它的作用与以前在图像压缩中所用到的离散余弦(DCT)、傅立叶变换(FFT)等的作用类似。但是要很好的进行图像的压缩,需要综合的利用多种其他技术,特别是数据的编码与解码算法等,所以利用小波分析进行图像压缩通常需要利用小波分析和许多其他相关技术共同完成。小波高频滤波压缩 %%%%%%%%装入图像、变换 load wbarb;%对图像用bior3.7小波进行2层小波分解 [c,s]=wavedec2(X,2,'bior3.7');%提取小波分解结构中第一层低频系数和高频系数 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);%分别对各频率成分进行重构
a1=wrcoef2('a',c,s,'bior3.7',1);h1=wrcoef2('h',c,s,'bior3.7',1);v1=wrcoef2('v',c,s,'bior3.7',1);d1=wrcoef2('d',c,s,'bior3.7',1);c1=[a1,h1;v1,d1];%%%%%%%%%下面进行图像压缩处理
%保留小波分解第一层低频信息,进行图像的压缩 %第一层的低频信息即为ca1,显示第一层的低频信息 %首先对第一层信息进行量化编码
ca1=appcoef2(c,s,'bior3.7',1);ca1=wcodemat(ca1,440,'mat',0);%改变图像的高度 ca1=0.5*ca1;%保留小波分解第二层低频信息,进行图像的压缩,此时压缩比更大 %第二层的低频信息即为ca2,显示第二层的低频信息 ca2=appcoef2(c,s,'bior3.7',2);%首先对第二层信息进行量化编码
ca2=wcodemat(ca2,440,'mat',0);%改变图像的高度 ca2=0.25*ca2;%%%%%%%显示图像、分解后各频率成分的信息
subplot(221);image(X);colormap(map);title('原始图像');axis square subplot(222);image(c1);axis square;title('分解后低频和高频信息');subplot(223);image(ca1);colormap(map);axis square;title('第一次压缩');subplot(224);image(ca2);colormap(map);axis square;title('第二次压缩');disp('压缩前图像X的大小:');whos('X')disp('第一次压缩图像的大小为:');whos('ca1')disp('第二次压缩图像的大小为:');whos('ca2')输出结果如下所示:
压缩前图像X的大小: Name SizeBytesClass X256x256524288double array Grand total is 65536 elements using 524288 bytes 第一次压缩图像的大小为: Name SizeBytesClass ca1135x135145800double array Grand total is 18225 elements using 145800 bytes 第二次压缩图像的大小为: Name SizeBytesClass ca2 75x7545000double array Grand total is 5625 elements using 45000 bytes
可以看出,第一次压缩提取的是原始图像中小波分解第一层的低频信息,此时压缩效果较好,压缩比较小(约为1/3):第二次压缩是提取第一层分解低频部分的低频部分(即小波分解第二层的低频部分),其压缩比较大(约为1/12),压缩效果在视觉上也基本过的去。这是一种最简单的压缩方法,只保留原始图像中低频信息,不经过其他处理即可获得较好的压缩效果。
小波高频阈值压缩 %装入一个二维信号 load tire;
%下面进行图像压缩
[c,s]=wavedec2(X,2,'db3');%对图像用db3小波进行2层小波分解, [thr,sorh,keepapp]=ddencmp('cmp','wv',X);%使用ddencmp函数来求取阈值
[Xcomp,cxc,lxc,perf0,perfl2]=wdencmp('gbl',c,s,'db3',2,thr,sorh,keepapp);%输入参数中选择了全局阈值选项„gbl‟,用来对所有高频系数进行相同的阈值量化处理 %将压缩后的图像与原始图像相比较,并显示出来
subplot(121);image(X);colormap(map);title('原始图像');axis square subplot(122);image(Xcomp);colormap(map);title('压缩图像');axis square disp('小波分解系数中置0的系数个数百分比:');perf0 disp('压缩后图像剩余能量百分比:');perfl2
输出结果如下所示:
小波分解系数中置0的系数个数百分比: perf0 =49.1935 压缩后图像剩余能量百分比: perfl2 =99.9928 4.1.2.2 二维信号压缩中的阈值的确定与作用命令
由于阈值处理只关心系数的绝对值,并不关心系数的位置,所以二维小波变换系数的阈值化方法同一维情况大同小异,为了方便用户使用小波工具箱对某些阈值化方法提供了专门的二维处理命令
阈值化压缩方法 %装入一个二维信号 load tire;%下面进行图像压缩
[c,s]=wavedec2(X,2,'db3');%对图像用db3小波进行2层小波分解, [thr,sorh,keepapp]=ddencmp('cmp','wv',X);%使用ddencmp函数来求取阈值 [Xcomp,cxc,lxc,perf0,perfl2]=wdencmp('gbl',c,s,'db3',2,thr,sorh,keepapp);%将压缩后的图像与原始图像相比较,并显示出来 subplot(121);image(X);colormap(map);title('原始图像');axis square subplot(122);image(Xcomp);colormap(map);title('压缩图像');axis square disp('小波分解系数中置0的系数个数百分比:');perf0 disp('压缩后图像剩余能量百分比:');perfl2
显示结果如图所示
可见分层阈值化压缩方法同全局阈值化方法相比,在能量损失不是很大的情况下可以获得最高的压缩化,这主要是因为层数和方向相关的阈值化方法能利用更精细的细节信息进行阈值化处理。
4.1.3 基于小波包变换的图像压缩
小波分析之所以在信号处理中有着强大的功能,是基于其分离信息的思想,分离到各个小波域的信息除了与其他小波域的关联,使得处理的时候更为灵活。全局阈值化方法作用的信息粒度太大,不够精细,所以很难同时获得高的压缩比和能量保留成分,在作用的分层阈值以后,性能明显提高,因为分层阈值更能体现信号固有的时频局部特性。
但是小波分解仍然不够灵活,分解出来的小波树只有一种模式,不能完全地体现时频局部化信息。而压缩的核心思想既是尽可能去处各小波域系数之间的信息关联,最大限度体现时频局部化的信息,因此,实际的压缩算法多采用小波包算法,而小波树的确定则是根据不同的信息论准则,以达到分解系数表达的信息密度最高。
下面我通过一个例子来说明小波包分析在图像压缩中的应用,并给出性能参数以便于同基于小波分析的压缩进行比较。
小波包优化 %读入信号 load julia %求颜色索引表长度 nbc=size(map,1);%得到信号的阈值,保留层数,小波树优化标准
[thr,sorh,keepapp,crit]=ddencmp('cmp','wp',X);%通过以上得到的参数对信号进行压缩
[xd,treed,perf0,perfl2]=wpdencmp(X,sorh,4,'sym4',crit,thr*2,keepapp);%更改索引表为pink索引表 colormap(pink(nbc));subplot(121);image(wcodemat(X,nbc));title('原始图像');subplot(122);image(wcodemat(xd,nbc));title('全局阈值化压缩图像');xlabel(['能量成分',num2str(perfl2),'%','零系数成分',num2str(perf0),'%']);plot(treed);
得到的压缩结果如图所示
图6 基于小波包分析的图像压缩
压缩过程中使用的最优小波数如图所示
图7 最优小波树
ddencmp、wpdencmp这两个命令是Matlab小波工具箱提供的自动获取阈值和自动使用小波包压缩的命令,后者将分解阈值化和重建综合起来。在将小波包用于信号压缩的过程中,ddencmp命令返回的最优小波树标准都是阈值化标准。根据这个标准确定的最优小波树可以使得压缩过程的零系数成分最高,并且自动降低计算量。
图像压缩是应用非常广泛的一类问题,所以其机器实现效率是至关重要的,在实际的应用中,如JPEG2000,一般不采用通常的mallat算法做小波分解,而是应用特定的双正交小波,利用其滤波器分布规则的特性,用移位操作来实现滤波操作。4.2 小波分析用于图像去噪
噪声可以理解为妨碍人的视觉器官或系统传感器对所接收图像源进行理解或分析的各种因素。一般噪声是不可预测的随机信号,它只能用概率统计的方法去认识。噪声对图像处理十分重要,它影响图像处理的输入、采集、处理的各个环节以及输出结果的全过程。特别是图像的输入、采集的噪声是个十分关键的问题,若输入伴有较大噪声,必然影响处理全过程及输出结果。因此一个良好的图像处理系统,不论是模拟处理还是计算机处理无不把减少最前一级的噪声作为主攻目标。去噪已成为图像处理中极其重要的步骤。
对二维图像信号的去噪方法同样适用于一维信号,尤其是对于几何图像更适合。二维模型可以表述为
s(i,j)=f(i,j)+δ·e(i,j)i,j=0,1,…,m-1 其中,e是标准偏差不变的高斯白噪声。二维信号用二维小波分析的去噪步骤有3步:(1)二维信号的小波分解。选择一个小波和小波分解的层次N,然后计算信号s到第N层的分解。
(2)对高频系数进行阈值量化。对于从1到N的每一层,选择一个阈值,并对这一层的高频系数进行软阈值量化处理。
(3)二维小波的重构。根据小波分解的第N层的低频系数和经过修改的从第一层到第N层的各层高频系数计算二维信号的小波重构。
在这3个步骤中,重点是如何选取阈值和阈值的量化 小噪声阈值去噪
下面给出一个二维信号(文件名为detfinger.mat),并利用小波分析对信号进行去噪处理。
%装入图像 load tire %下面进行噪声的产生 init=3718025452;rand('seed',init);Xnoise=X+18*(rand(size(X)));%用sym5小波对图像信号进行二层的小波分解 [c,s]=wavedec2(X,2,'sym5');%下面进行图像的去噪处理
%使用ddencmp函数来计算去噪的默认阈值和熵标准
%使用wdencmp函数来实现图像的压缩
[thr,sorh,keepapp]=ddencmp('den','wv',Xnoise);[Xdenoise,cxc,lxc,perf0,perfl2]=wdencmp('gbl',c,s,'sym5',2,thr,sorh,keepapp);%显示去噪后的图像 colormap(map);subplot(131);image(wcodemat(X,192));title('原始图像X');axis square subplot(132);image(wcodemat(X,192));title('含噪声的图像Xnoise');axis square subplot(133);image(Xdenoise);title('去噪后的图像');axis square
输出结果
从图中3个图像的比较可以看出,Matlab中的ddencmp和wdencmp函数可以有效地进行去噪处理。大噪声滤波去噪
再给定一个有较大白噪声的delmontl.mat图像。由于图像所含的噪声主要是白噪声,而且主要集中在图像的高频部分,所以我们可以通过全部滤掉图像中的高频部分实现图像的去噪。
load wmandril;%产生含噪图像
init=2055615866;randn('seed',init)x=X+38*randn(size(X));
%下面进行图像的去噪处理
%用小波函数sym4对x进行2层小波分解 [c,s]=wavedec2(x,2,'sym4');%提取小波分解中第一层的低频图像,即实现了低通滤波去噪 a1=wrcoef2('a',c,s,'sym4',1);%提取小波分解中第二层的低频图像,即实现了低通滤波去噪 a2=wrcoef2('a',c,s,'sym4',2);
%画出图像
subplot(221);image(X);colormap(map);title('原始图像');axis square subplot(222);image(x);colormap(map);title('含噪声图像');axis square;subplot(223);image(a1);title('第一次去噪图像');axis square;subplot(224);image(a2);title('第二次去噪图像');axis square;输出结果如图:
从上面的输出结果可以看出,第一次去噪已经滤去了大部分的高频噪声,但从去噪图像与原始图像相比可以看出,第一次去噪后的图像中还是含有不少的高频噪声;第二次去噪是在第一次去噪的基础上,再次滤去其中的高频噪声。从去噪的结果可以看出,它具有较好的去噪效果。
少量噪声的小波分解系数阈值量化去噪
下面再给出定一个喊有较少噪声的facets.mat图像。由于原始图像中只喊有较少的高频噪声,如果按照上一个例子把高频噪声全部滤掉的方法将损坏图像中固有的高频有用信号。因此这幅图像适合采用小波分解系数阈值量化方法进行去噪处理。
%下面装入原始图像,X中含有被装载的图像 load facets;%产生含噪声图像
init=2055615866;randn('seed',init)x=X+10*randn(size(X));%下面进行图像的去噪处理
[c,s]=wavedec2(x,2,'coif3');%用小波画数coif3对x进行2层小波分解 n=[1,2];%设置尺度向量n p=[10.12,23.28];%设置阈值向量p %对三个方向高频系数进行阈值处理 nc=wthcoef2('h',c,s,n,p,'s');nc=wthcoef2('v',nc,s,n,p,'s');nc=wthcoef2('d',nc,s,n,p,'s');%对新的小波分解结构[nc,s]进行重构 xx=waverec2(nc,s,'coif3');%画出图像
subplot(131);image(X);colormap(map);title('原始图像');axis square subplot(132);image(x);colormap(map);title('含噪声图像');axis square subplot(133);image(xx);colormap(map);title('去噪后的图像');axis square
输出结果如图
更加标准的做法是下面这样:
第三篇:小波分析算法资料整理总结
一、小波分析基本原理:
信号分析是为了获得时间和频率之间的相互关系。傅立叶变换提供了有关频率域的信息,但有关时间的局部化信息却基本丢失。与傅立叶变换不同,小波变换是通过缩放母小波(Mother wavelet)的宽度来获得信号的频率特征,通过平移母小波来获得信号的时间信息。对母小波的缩放和平移操作是为了计算小波系数,这些小波系数反映了小波和局部信号之间的相关程度。相关原理详见附件资料和系统设计书。
注:小波分析相关数学原理较多,也较复杂,很多中文的著作都在讨论抽象让非数学相关专业人难理解的数学。本人找到了相对好理解些的两个外文的资料: Tutorial on Continuous Wavelet Analysis of Experimental Data.doc Ten.Lectures.of.Wavelets.pdf
二、搜索到的小波分析源码简介(仅谈大体印象,还待继续研读):
1、83421119WaveletVCppRes.rar 源码类型:VC++程序
功能是:对简单的一维信号在加上了高斯白噪声之后进行Daubechies小波、Morlet小波和Haar小波变换,从而得到小波分解系数;再通过改变分解得到的各层高频系数进行信号的小波重构达到消噪的目的。
说明:在这一程序实现的过程中能直观地理解信号小波分解重构的过程和在信号消噪中的重要作用,以及在对各层高频系数进行权重处理时系数的选取对信号消噪效果的影响。但这是为专业应用写的算法,通用性差。
2、WA.FOR(南京气象学院常用气象程序中的小波分析程序)
源码类型:fortran程序
功能是:对简单的一维时间序列进行小波分析。
说明:用的是墨西哥帽小波。程序短小,但代码写得较乱,思路不清,还弄不明白具体应用。
3、中科院大气物理学所.zip(原作者是美国Climate Diagnostics Center的C.Torrence 等)
源码类型:fortran和matlab程序各一份
功能是:气象应用。用小波分析方法对太平洋温度的南方涛动指数进行分析。
说明:用的是Morlet和墨西哥帽小波。程序编写规范,思路清晰,但这是为专业应用写的算法,通用性差。
4、Morlet小波变换源程序.rar 源码类型:matlab程序
功能是:对简单的一维时间序列进行小波分析。
说明:用的是墨西哥帽小波。程序短小,但代码写得较乱,思路不清,还弄不明白具体应用。
5、Morlet小波计算函数封装源程序.rar 源码类型:matlab程序
功能是:对一维时间序列信号进行连续小波变换程序。
说明:用的是Morlet小波。程序短小,代码调用了matlab内置函数wave,并使用了卷积进行求解,源码中的多个参数的选择和设置原理和依据还弄不明白。6、计算关于时间序列数据的的小波变换fortran程序.rar 源码类型:fortran程序
功能是:对简单的一维时间序列进行小波变换。
说明:用的是DOG小波、Morlet小波、Paul小波。程序较长,代码写得较乱,还弄不明白具体应用。
三、小波分析底层基本算法实现的困难:
1、小波分析中用的小波基函数的种类很多,选择不同基小波函数的,变换内核的计算实现方法不同。
2、小波分析的应用领域非常多,不同的应用领域的小波算法框架不同。
3、小波分析的输入输出参数较多,但在应用时灵活度不强,对不同小波基函数和不同的应用有着不同的参数选择和设定方法,同时表现出不同的性质。
因而,很多时候小波在不同的实际应用时的算法和编码实现有差别非常大。从目前本人收集到的5个小波分析源程序的分析来看,这6个源程序的具体实现思路、参数选择和设置各不相同。总之,很难设定一个比较标准通用的小波分析底层算法。
第四篇:词形变换小结
词形变换小结
一、形容词变副词的规则 1.一般情况下直接加―ly‖,如 quick---quickly
real-really
helpful-helpfully careful-carefully hopeful-hopefully slow-slowly
quick-quickly quiet-quietly
2.以辅音字母―y‖结尾的,先将―y‖改成―i‖,再加―ly‖,如happy---happily
busy-busily angry-angrily
easy-easily
3、以辅音字母加不发音的字母e结尾和以-ue结尾的形容词要先去掉e,然后再加-y或-ly。例如:
terrible-terribly;gentle-gently;simple→simply probable – probably;able-ably;true-truly
但绝大多数以e结尾的形容词仍然直接加-ly。例如:polite-politely, wide-widely等。
另外,副词还可以由形容词加前缀a-得来,如:loud(adj.)-aloud(adv.)
4.以ll结尾的词 只加y full-fully dull→dully 以ic结尾的词 加ally
automatic-automatically energetic-energetically
democratic→democratically 有些以-ly 结尾既为形容词,也为副词。daily,weekly,monthly,yearly,early The Times is a daily paper.The Times is published daily.此外,部分名词加后缀也可变成副词,如: part-partly,例句: It is partly her fault.有部分是她的错。需注意: friendly,deadly,lonely,likely,lively,ugly,brotherly , fatherly, motherly,lovely等是形容词而非副词。形容词变副词通常是加ly,特殊变化请记住以下口诀:
一般直接加,―元e‖去e加,―辅y‖改i加,―le‖结尾e改y。分别举例如下:
quick—quickly, true—truly, happy—happily, gentle — gently possible —possibly.probable — probably 在英语中,有些词既可以作形容词,又可以作副词,如early, much, fast, little, wide, loud, high, deep,hard等。由于这类词词性虽不同,但词形却一样,这就需要大家学会在特定语境中判断它们各自的词性。例句: Thank you very much.(adv.)多谢。There is much water in the river.(adj.)
The music is too loud.Please turn it down.(adj.)He speaks loud enough,So everyone in the room can hear what he said.(adv.)他说话的声音很大,所以房间里每个人都能听到他的话。
兼有两种形式的副词
1)close与closely
close意思是“近”; closely 意思是“仔细地” He is sitting close to me.Watch him closely.2)late 与lately
late意思是“晚”; lately 意思是“最近” You have come too late.What have you been doing lately? 3)deep与deeply
deep意思是“深”,表示空间深度;deeply时常表示感情上的深度,“深深地” He pushed the stick deep into the mud.Even father was deeply moved by the film.4)high与highly
high表示空间高度;highly表示程度,相当于much The plane was flying high.I think highly of your opinion.5)wide与widely
wide表示空间宽度;widely意思是“广泛地”,“在许多地方” He opened the door wide.English is widely used in the world.6)free与freely
free的意思是“免费”;freely 的意思是“无限制地” You can eat free in my restaurant whenever you like.You may speak freely;say what you like.另外,还有一类副词和形容词词义相同,但拼写却不同,如well和good。例句 He speaks good English.他讲一口流利的英语。He speaks English well.他英语讲得不错。
二、动词变名词小结
1.在词尾加er,r ,双写加er 或or: A.play — player, sing — singer
wait — waiter , find — finder B.write — writer, drive —driver
come — comer, explore — explorer
dance — dancer C.run — runner, win — winner
traval — travaller D.visit — visitor, invent — inventor 2.在词尾加ing:
build — building, draw —drawing end — ending, begin — beginning swim — swimming,skate — skating feel — feeling, say — saying, mean — meaning, cross — crossing surf — surfing, paint — painting
3.在词尾加ion 或去e加ion: 1)以-d或-de结尾的动词,在对应的名词和形容词中,d通常变成s,如: provide→provision,decide→decision
invade(侵略)→invasion
等等。2)以-end结尾的动词,往往有-ent结尾的名词与之对应。如extend→extent,descend→descent,等等
3)以te结尾去e加ion,如: celebrate — celebration, educate — education graduate — graduation, donate — donation contribute — contribution invite — invitation congratulate — congratulation
operate — operation pollute —pollution appreciate — appreciation 以t结尾加ion,如:
attract — attraction
invent — invention instruct — instruction 注意:
describe — description discuss — discussion produce — production, pronounce — pronunciation, organize — orgnization determine — determination impress — impression 4.在词尾加 ment 结尾 achieve---achievement 成就 advertise---advertisement 广告
agree— agreement协议 enjoy — enjoyment amuse—amusement 娱乐develop---development equip 装备---equipment 装备,器材
govern 统治—government 政府 manage---management 经营, 管理
argue---argument争吵
know — knowledge, please — pleasure practise —practice advise—advice die — death, succeed — success
weigh — weight,sit — seat , fly — flight, discover — discovery,fail — failure, behave—behavior mix — mixture , press —pressure
appear — appearance,enter — entrance guide—guidance perform—performance
tour 在---旅游,在---作巡回演出 直接+地点 tour China---tour 旅游/ tourist 游客
三、动词变形容词
1.词尾加ful: use – useful
carethankful peace – peaceful
forget – forgetful
succeed – successful
wonderclosed, wound – wounded
relax – relaxed
develop – developed
appreciate – appreciated
interest – interested
usecrowded,pollutesleeping frustrate – frustrating
relax — relaxing live – living 4.词尾变y为i,加ed: worrymarried,fryterrified satisfyknowledgeable, enjoysuitable adjustcomfortable 6.其它:
losefoolish, livesleepy / sleeping / asleep, waketasty speakbroken, dieaducational
四、名词变形容词
有时在名词之前或末尾加上不同的前缀或后缀就可以变为形容词。如: sleep(睡觉)→asleep(睡着的)→sleepy(瞌睡的,困乏的)
help(帮助)→helpful(有帮助的)等。下面就名词变为形容词的构成方法归纳如下: 1.名词加-y构成形容词。表示―充满……的‖ rain(雨水)→rainy(多雨的)
wind(风)→windy(多风的,风大的)cloud(云)→cloudy(多云的,阴天的)
snow(雪)→ snowy(多雪的)
sun(太阳)→ sunny(多阳光的,明朗的)[特别提醒:别忘了双写n] luck(运气)→ lucky(幸运的)
noise(嘈杂声)→noisy(嘈杂的,喧闹的)[特别提醒:别忘了去掉e] health(健康)→healthy(健康的)2.名词加-ful构成形容词,表示肯定。use(使用)→useful(有用的,有益的)help(帮助)→helpful(有帮助的,有益的)harm(伤害,损害)→harmful(有害的)forget(忘记)→forgetful(健忘的)
beauty(美丽)→beautiful(美丽的)[特别提醒:别忘了把-y变成-i,再加-ful] care(关心,小心)→careful(小心的,仔细的)pain(疼痛)→painful(疼痛的)wonder(惊奇)→wonderful(极好的)color(颜色)→colorful(多彩的;色彩艳丽的)thank(感谢)→thankful(感激的,欣赏的)3.名词加-less构成形容词,表示否定。use(用处)→useless(无用的)
care(关心,小心)→careless(粗心的)harm(伤害,损害)→ harmless(无害的)help(帮助)→helpless(无助的,无用的)
4.名词加-ly构成形容词,这种形容词常具有赞美的意味。friend(朋友)→friendly(友好的)
love(爱)→lovely(可爱的)
father(父亲)→ fatherly(严父般 的 brother(兄弟)→ brotherly(兄弟般的)5.在某些名词后加-ous构成形容词,表示―具有……的性质的‖
danger(危险)→dangerous(危险的)courage → courageous(英勇的)fame(名声,名望)→famous(著名的)[特别提醒:别忘了去掉e] 6.名词加-en构成形容词,表示由某种物质形成,在句中作定语或表语。wool(羊毛)→woolen(羊毛的)
wood(木头)→wooden(木制的)
gold(金子)→golden(金子般的)earth(土地)→ earthen(土制的)7.名词+ able adjustable 可调整的 comfort---comfortable knowledge---knowledgeable suit 一套-----suitable 合适的 8.ce 变 t
confidence----confident difference---different importance—important independence—independent diligence—diligent intelligence—intelligent 9.在名词词尾加-al 构成形容词,例如: nature – natural , nation – national
additioneducational
第五篇:小波分析小结
小波分析的形成
小波分析是一门数学分支,是继Fourier变换之后新的时频域分析工具。小波理论的形成经历了三个发展阶段:
Fourier变换阶段:
Fourier变换是将信号在整个时间轴上进行积分,它将信号的时域特征和频域特征联系起来,分别进行分析。设信号f(t),其Fourier变换为:
F()f(t)eitdt
F()确定了f(t)在整个时间域上的频谱特性。但Fourier变换不能对信号从时域和频域结合起来分析,它是一种全局变换,在时间域上没有任何分辨率。
例:f(t)1,(2t2),其Fourier变换对应图如下:
短时Fourier变换阶段:
短时Fourier变换即加窗Fourier变换,其思想是把信号分成许多小的时间间隔,用Fourier分析每个时间间隔,以确定该间隔存在的频率,达到时频局部化目的。其表达式为:
Gf(,)f(t),g(t)ejtf(t)g(t)ejtdt
R式中,g(t)为时限函数,即窗口函数,ejt起频限作用,Gf(,)大致反映了f(t)在时、频率为的信号成分含量。
由上式,短时Fourier变换能实现一定程度上的时频局部化,但窗口函数确定时,窗口大小和形状固定,所得时频分辨率单一。
小波分析阶段:
为了克服上述缺点,小波变换应运而生。小波变换在研究信号的低频成分时其窗函数在时间窗长度上增加,即在频率宽上减小;在研究信号的高频成分时其窗函数在时间窗长度上减小,而在频率宽上增加。对信号可以进行概貌和细节上的分析。
小波的定义:
(),若满足设(t)L2(R)(为能量有限的空间信号),其Fourier变换为容许条件:
|()|2||d
(0)(t)dt0,说明(t)具有波动则称(t)为母小波,由容许条件可得:性,在有限区间外恒为0或快速趋近于0.t12以Marr小波(t)(1t)e2为例,如下图:
22
将母小波进行伸缩平移所得小波系列称为子小波,定义式如下:
b,a(t)1tb(),a0
aa其中a为伸缩因子,b为平移因子。
a 以Marr小波为例,分别取伸缩平移因子a,b为0.5、1、2、4;-1、0、1,对应图形如下:
Daubichies小波
常见的小波有Daubechies、Symlets、Morlet、Mexican Hat、Meyer小波等,其对应的图形及性质如下:
Daubechies小波是正交小波,没有解析表达式(除Haar小波外)。其简写形式为dbN,N表示阶数,支集区间为(0,2N-1)。
Symlets小波与db小波的差别是sym小波有更好的对称性。
Morlet小波不具备正交性,不存在紧支集,不能做离散小波变换,没有解析尺度函数,其小波函数为:
(x)ex/2cos(5x)
Mexican Hat小波不具有正交性,不存在尺度函数,是高斯函数的二阶导数,小波函数为:
2(x)21/4x2/2e 3Meyer小波为在频域定义的具有解析形式的正交小波,不存在紧支集,但其频谱有限,具有对称性。
小波函数的特点:
正交性:小波函数与自身内积为1,而与其伸缩平移后的小波系列内积为0。正交小波的优点是小波变换可将信号分解到无重叠的子频带上,并且可以进行高效的离散小波变换。
对称性:不具有对称性的小波函数所重构的信号会有相位失真。
紧支性:具有紧支性的小波其小波函数仅在有限区间内是非零的,其局部化能力强,小波变换复杂度低。
正则性:用于刻画小波函数的光滑程度,正则性越高,函数越光滑。
消失矩:用于衡量小波逼近光滑函数时的能力。消失矩越大,压缩比越大。
尺度函数:若函数(t)L2(R),其整数平移系列k(t)(tk)满足:
k(t),k(t)kk
则称(t)为尺度函数。
对尺度函数(t)进行平移和伸缩,可得一个尺度和位移均可变的函数集合:
j,k(t)2j/2(2jtk)k(2jt)
称每一个固定尺度j上的平移系列k(2jt)所张成的空间Vj为尺度j的尺度空间:
Vjspank(2jt),kZ
正交多分辨分析:Hilbert空间L2(R)中,若一列闭子空间{Vj}jz满足如下性质:嵌套性:VjVj1,(jz);逼近性:Vj{0},VjL2(R);
jzjz伸缩性:f(t)Vjf(2t)Vj1;
平移不变性:f(t)Vjf(tk)Vj,jZ;
正交性(Riesz基):存在(t)V0,使得{(tk),kz}是V0的标准正交基。滤波器:在二尺度方程中,对系数系列{hk}kz和gk(1)kh1k,kz作Fourier 变换得H()和G(),其中H()11ikikheG()ge,称H()和kk2kz2kzG()分别为低通滤波器和高通滤波器。称{hk}kz和{gk}kz分别为低通滤波器系数和高通滤波器系数。小波变换
连续小波变换:设为一母小波,f(t)L2(R),称
(Wf)(a,b)f,a,b|a|12f(t)(tb)dt a为f的连续小波变换。
离散小波变换
离散小波:通过离散化连续小波变换中的平移因子b和尺度因子a得到,通
mm常取aa0,bnb0a0,m,nZ.m2离散小波变换:(Wf)(a,b)f,a,b|a0|f(t)(a0mtnb0)dt
若取a02,b01,可以得到二进小波:m,n(t)2m/2(2mtn),m,nZ
信号的离散小波变换并不是直接由尺度函数(t)和对应的小波(t)与信号内积来实现,而是利用滤波器组h[n]和g[n]来实现,用矩阵形式表述如下:
cj[0]00cj1[0]c[1]h[0]h[1]h[k]0c[1]j00h[0]h[1]h[k]0j1 c[n1]c[n1]h[k]0000h[0]h[1]jj12dj[0]00cj1[0]d[1]g[0]g[1]g[k]0c[1]j00g[0]g[1]g[k]0 j1d[n1]c[n1]g[k]0000g[0]g[1]jj12其中,设滤波器长度为k。并且两滤波器系数间有如下关系:
gk(1)kh1k,kz
|hkzk|22; 2; h2k11;kzhkzkzkh2khkzk2nkh2n0,nz
以db5小波为例,其低通滤波器系数如下(这里取二尺度方程为(t)2hk(2tk))所得的系数:
kzh[0]=0.160102397974;h[1]=0.603829269797;h[2]=0.724308528438;h[3]=0.***1;h[4]=-0.242294887066;h[5]=-0.032244869585;h[6]=0.077571493840;h[7]=-0.006241490213;h[8]=-0.012580751999;h[9]=0.003335725285;变换所得系数cj和dj分别为离散小波变换的不同尺度下的低频和高频系数。
小波逆变换即信号的重建运算,重构是从尺度最低的近似系数cj和细节系数dj开始,通过低频和高频重构滤波器恢复出上一尺度的近似信号cj1,继续这个过程,直到恢复原始信号。其计算公式为:
cj1,mcj,kh(m2k)dj,kg(m2k),kZ
kk离散小波变换与重构实例如下:
所采用的信号为添加白噪声的正弦信号,信号共1000个采样,采用db4小波做3层分解,其原始信号、低频系数、高频系数和重构信号如下图: