
小波分析的理解.docx
16页总结:小波即小区域的波,是种特殊的长度仃限、平均 值为零的波形它仃两个特点; C小“,即在吋域八有 紧交集或近似紧交集;「是止负交替的“波动性J 也即女 流分址为零匚傅立叶分析是将信号分解成一系列不同频率的 正弦波的叠加,同样小波分析是将信号分解为一系列小波函 数的叠加,而这些小波函数都是由一个母小波函数经过平移 和尺度伸缩得来的档 小波分析优丁傅立叶分析的地方是,它在时域和频域 同时具有良好的局部化性质而且由于对高频成分采 用逐渐精细的时域或频域取样步长,从而可以聚焦到 对象的仃何细『 所以被称为取数学詁微镜".小波 分析广泛应用与信号处理、图像处理.语音识别等领 域口可以这样環解小波变换的含义:打个比喻,我们 用镜头观察丨I标信号广⑴,巩f)代表镜头所起的所用 b相当于使镜头相对亍F[标平行移动,』的所用相当于 镜头向日标推进或远离由此可见,小波变换有以下 特点:>多尺度/多分辨的特点,可以山和及细地处理信号; >川以打成川基本频率特性为%的带通滤波器在不 冋尺度担下对信号做滤波>适半地选择小波,使附⑵在时域上为有限支撑,牴少) 在频域上也比较集中,就可以使WT在时、频域都只 有表征信号局部特征的能力0小波运算的基本步骤:⑴选择…个小波函数,并将这个小波与要分析的佶 号起始点对齐(2)汁算冷这-忻刻要分析的信;9小波函数的谢近 程度,即计算小波变换系数a c越大.就意味右此 刻信号与所选择的小波函数波形越相近,如閤所示.⑶将小波函数沿时问轴向右移动 个单位时邮 然后 巫复步骤(lh (2)求鹽此时的小波变换系数G右到覆 盖完整个佶兮长度,如图所示:SignalWavelet(4)将所选择的小波函数尺度伸缩…个甲位,然后重复 步骤⑴、(2)、⑶,如图所不;C = 0.2247(5)对所有的尺度伸缩亟复步骤(1卜(2). (3)、(4), 小波的应用匸要是信号的处琳其中最典利的应用是 小波图象川缩円另外,小波在诸如信号去噪、特征提 取等多方面均有成功的应川。
F血以图象去噪为例说 |川卜波应川策賂」卜波丙各种应门均可分为以下三步: H对心始佶号作小波变换’将佶lvJjV域变换刃频域:2) 对小波系数做和皿处刃; 』3) 对处理后的小波系数做小波逆变换,还惊原佶号小波变换是克服其他信号处理技术缺陷的一种分析信号的方法小波由一族小波基函数 构成,它可以描述信号时间(空间)和频率(尺度)域的局部特性采用小波分析最大优点 是可对信号进行实施局部分析,可在任意的时间或空间域中分析信号小波分析具有发现其 他信号分析方法所不能识别的、隐藏于数据之中的表现结构特性的信息,而这些特性对机械 故障和材料的损伤等识别是尤为重要的如何选择小波基函数目前还没有一个理论标准,常 用的小波函数有 Haar、 Daubechies(dbN)、 Morlet、 Meryer、Symlet、Coiflet、Biorthogonal 小 波等 15 种但是小波变换的小波系数为如何选择小波基函数提供了依据小波变换后的系 数比较大,就表明了小波和信号的波形相似程度较大;反之则比较小 另外还要根据信号 处理的目的来决定尺度的大小如果小波变换仅仅反映信号整体的近似特征,往往选用较 大的尺度;反映信号细节的变换则选用尺度不大的小波。
由于小波函数家族成员较多,进行 小波变换目的各异,目前没有一个通用的标准根据实际运用的经验,Morlet小波应用领域较广,可以用于信号表示和分类、图像识别 特征提取;墨西哥草帽小波用于系统识别;样条小波用于材料探伤;Shannon正交基用于差 分方程求解现在对小波分解层数与尺度的关系作如下解释:是不是小波以一个尺度分解一次就是小波进行一层的分解?比如:[C,L]=wavedec(X,N,'wname‘)中,N为尺度,若为1,就是进行单尺度分解,也就 是分解一层 但是W=CWT(X,[2:2:128],'wname','plot')的分解尺度又是从2〜128以2为步 进的,这里的“分解尺度”跟上面那个“尺度”的意思一样吗?[C,L]=wavedec(X,N,'wname')中的N为分解层数,不是尺度,'以wname'是DB小波为例, 如 DB4, 4 为消失矩,则一般滤波器长度为 8, 阶数为 7.wavedec针对于离散,CWT是连续的多尺度又是怎么理解的呢?多尺度的理解: 如将 0-pi 定义为空间 V0, 经过一级分解之后 V0 被分成 0-pi/2 的低频子 空间 V1 和 pi/2-pi 的高频子空间 W1, 然后一直分下去 得到 VJ+WJ+ W2+W1. 因为VJ 和 WJ 是正交的空间, 且各 W 子空间也是相互正交的. 所以分解得到了是相互不包含的 多个频域区间,这就是多分辩率分析, 即多尺度分析.当然多分辨率分析是有严格数学定义的,但完全可以从数字滤波器角度理解它.当然,你的 泛函学的不错,也可以从函数空间角度理解.是不是说分解到 W3、 W2、 W1、 V3 就是三尺度分解?简单的说尺度就是频率,不过是反比的关系.确定尺度关键还要考虑你要分析信号的采 样频率大小,因为根据采样频率大小才能确定你的分析频率是多少.(采样定理).然后再确 定你到底分多少层.假如我这有一个10hz和50hz的正弦混合信号,采样频率是500hz,是不是就可以推断 出 10hz 和 50hz 各自对应的尺度了呢?我的意思是,是不是有一个频率和尺度的换算公式? 实际频率=小波中心频率X采样频率/尺度在小波分解中,若将信号中的最高频率成分看作是 1,则各层小波小波分解便是带通 或低通滤波器,且各层所占的具体频带为(三层分解) a1:0~0.5 d1: 0.5~1; a2:0~0.25 d2:0.25~0.5; a3: 0~0.125; d3:0.125~0.25可以这样理解吗?如果我要得到频率为0.125〜0.25的信号信息,是不是直接对d3的分解系 数直接重构之后就是时域信息了?这样感觉把多层分解纯粹当作滤波器来用了,又怎么是多 分辨分析??怎样把时频信息同时表达出来??这个问题非常好,我刚开始的时候也是被这个问题困惑住了,咱们确实是把它当成了滤 波器来用了,也就是说我们只看重了小波分析的频域局部化的特性。
但是很多人都忽略其时 域局部化特性,因为小波是变时频分析的方法,根据测不准原理如果带宽大,则时窗宽度就 要小那么也就意味着如果我们要利用其时域局部化特性就得在时宽小的分解层数下研究 也就是低尺度下这样我们就可以更容易看出信号在该段时间内的细微变化,但是就产生一 个问题,这一段的频率带很宽,频率局部化就体现不出来了对d3进行单支重构就可以得到0.125-0.25的信号了,当然频域信息可能保存的比较好,但如果小波基不是对称的话,其相位信息会失真小波变换主要也是用在高频特征提取上层数不是尺度,小波包分解中,N应该是层数,个人理解对应尺度应该是2AN小波分解的尺度为a,分解层次为j 如果是连续小波分解尺度即为a离散小波分解 尺度严格意义上来说为a=2^j,在很多书上就直接将j称为尺度,因为一个j就对应者一个尺 度a其实两者是统一的小波基:一般从线性相位,消失矩,相似性,紧支撑等来选择 Daubechies 小波基的构造% 此程序实现构造小波基% periodic_wavelet.mfunction ss=periodic_wavelet;clear;clc;% global MOMENT; % 消失矩阶数% global LEFT_SCALET; % 尺度函数左支撑区间% global RIGHT_SCALET; % 尺度函数右支撑区间% global LEFT_BASIS; % 小波基函数左支撑区间% global RIGHT_BASIS; % 小波基函数右支撑区间% global MIN_STEP; % 最小离散步长% global LEVEL; % 计算需要的层数(离散精度)% global MAX_LEVEL; % 周期小波最大计算层数 [s2,h]=scale_integer;[test,h]=scalet_stretch(s2,h); wave_base=wavelet(test,h); ss=periodic_waveletbasis(wave_base);function [s2,h]=scale_integer;% 本函数实现求解小波尺度函数离散整数点的值% sacle_integer.mMOMENT=10; % 消失矩阶数LEFT_SCALET=0; % 尺度函数左支撑区间 RIGHT_SCALET=2*MOMENT-1; % 尺度函数右支撑区间 LEFT_BASIS=1-MOMENT; % 小波基函数左支撑区间 RIGHT_BASIS=MOMENT; % 小波基函数右支撑区间 MIN_STEP=1/512; % 最小离散步长LEVEL=-log2(MIN_STEP); % 计算需要的层数(离散精度)MAX_LEVEL=8; % 周期小波最大计算层数 h=wfilters('db10','r'); % 滤波器系数 h=h*sqrt(2); % FI(T)=SQRT(2)*SUM(H(N)*FI(2T-N)) N=0:2*MOMENT-1;for i=LEFT_SCALET+1:RIGHT_SCALET-1for j=LEFT_SCALET+1:RIGHT_SCALET-1 k=2*i-j+1;if (k>=1&k<=RIGHT_SCALET+1) a(i,j)=h(k); % 矩阵系数矩阵 elsea(i,j)=0;endendend[s,w]=eig(a); % 求特征向量,解的基 s1=s(:,1);s2=[0;sl/sum(sl);0]; % 根据条件 SUM(FI(T))=1,求解;% 本函数实现尺度函数经伸缩后的离散值% scalet_stretch.m function [s2,h]=scalet_stretch(s2,h);MOMENT=10; % 消失矩阶数LEFT_SCALET=0; % 尺度函数左支撑区间 RIGHT_SCALET=2*MOMENT-1; % 尺度函数右支撑区间 LEFT_BASIS=1-MOMENT; % 小波基函数左支撑区间 RIGHT_BASIS=MOMENT; % 小波基函数右支撑区间MIN_STEP=1/512; % 最小离散步长LEVEL=-log2(MIN_STEP); % 计算需要的层数(离散精度)MAX_LEVEL=8; % 周期小波最大计算层数for j=1:LEVEL % 需要计算到尺度函数的层数t=0;for i=1:2:2*length(s2)-3 % 需要计算的离散点取值(0,1,2,3 -> 1/2, 3/2, 5/2) t=t+1;fi(t)=0;for n=LEFT_SCALET:RIGHT_SCALET; % 低通滤波器冲击响应紧支撑判断if ((i/2人(j-1)-n)>=LEFT_SCALET&(i/2人(j-1)-n)v=RIGHT_SCALET) % 小波尺度函数 紧支撑判断fi(t)=fi(t)+h(n+1)*s2(i-n*2\j-1)+1); % 反复应用双尺度方程求解endendendclear sn1=length(s2);n2=length(fi);for i=1:length(s2)+length(fi) % 变换后的矩阵长度if (mod(i,2)==1)s(i)=s2((i+1)/2); % 矩阵。
