Matlab小波变换对奇异点的检测
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Matlab 小波变换对于奇异点的检测 1.信号的突变性
突变信号又称奇异信号,突变信号的突变点经常携带比较重要的信息,是信号的重要特征之一。
在数字信号处理和数字图像处理中具有非常重要的作用和地位,信号的突变性检测是先对原信号在不同尺度上进行“磨光”,再对磨光后信号的一阶或二阶倒数检测其极值点或过零点。
对信号进行磨光处理,主要是为了消除噪声而不是边缘。
传统的信号突变检测方法是基于傅立叶变换的,由某一函数的傅立叶变换趋近于零的快慢来推断该函数是否具有突变性,但它只能反映信号的整体突变性,而对信号的局部突变则无法描述。
这样我们就引入小波变换算法。
2.信号的突变点的检测原理
设h(t)是函数f(t)和g(t)的卷积,即:
)()()(t g t f t h ⊗=
则根据傅立叶变换的性质有:
)()()]()([)]('[ωωωω∧∧=⊗=g f j t g t f F j t h F
=)()]([ωωω∧∧g f j =)]()[(ωωω∧∧g j f
=)]('[)]([)]([)]('[t g F t f F t g F t f F ⊗=⊗
所以得到:)(')()()(')('t g t f t g t f t h ⊗=⊗=
若将函数f(t)看作是信号,g(t)看作是滤波器,那么信号的导数与滤波器的卷积结果可以看作是滤波器的导数与信号的卷积。
例如,如果选g(t)为高斯函数,则利用其导数可以构造Morlet 小波和Maar 小波,因此,小波变换的突变点和极值点与信号f(t)的突变点和极值点具有对应关系,利用小波可以检测突变信号。
具体过程如下:
设)(t θ是一个起平滑作用的低通平稳函数,且满足条件
⎰∞
∞-=,1)(dt t θ
0)(lim =∞→t t θ 通常取)(t θ为高斯函数,即
2/221)(t e t -=πθ
假设)(t θ是二次可导的,并且定义
2/)1(221)()(t te dt t d t --==π
θψ 2/22
2)2(2)1(21)()(t e t dt t d t --==πθψ 则函数)()1(t ψ、)()2(t ψ满足小波的容许条件:
⎰∞
∞-=0)()
1(dt t ψ,⎰∞
∞
-=0)()2(dt t ψ 因此可用做小波母函数。
若记1s t s s θθ⎛⎫= ⎪⎝⎭
,则()s t θ表示)(t θ在尺度因子s 下的伸缩。
由于小波变换就是将原信号)(t f 同伸缩小波卷积得到的,为此以)(),()2()1(t t ψψ
为小波函数定义的卷积型小波变换
为: ))(*()(*)(*)()1()1(t f dt d s t dt d s f t f t f w s s s s θθψ=⎪⎭
⎫ ⎝⎛== ))(*()(*)(*)(222222)2()2(t f dt d s t dt d s f t f t f w s s s s θθψ=⎪⎪⎭
⎫ ⎝⎛== 由此可见,小波变化)(),()2()1(t f w t f w s s 分别是函数)(t f 在尺度s 下由)(t θ平滑后再
取一阶、二阶导数。
当s 较小时,用)(t s θ对)(t f 平滑的结果对)(t f 的突变位置影响不大;当s 较大时,则此平滑过程会将)(t f 的一些细小的突变削去,而只剩下大尺寸的突变。
由此我们可知,当小波函数可看作某一平滑函数的一阶导数时,信号小波变换模的局部极值点对应信号的突变点(或边缘)。
当小波函数可看作某一平滑函数的二阶导数时,信号小波变换模的过零点,也对应信号的突变点(或边缘)。
这就是采用检测小波变换系数模的过零点和局部极值点可检测信号突变点(或边缘)的原理。
Matlab 小波变换检测奇异点
原始信号是含有奇异点的信号,为确定该奇异点的时间,采用haar 小波进行连续小波变换后,在对系数进行分析处理。
仿真程序如下:
figure(1)
plot(cuspamax)
xlabel('时间');ylabel('幅值');
title('频率突变信号');
figure(2)
[c,l]=wavedec(cuspamax,5,'db6');
cfd=zeros(5,1024);
for k=1:5
d=detcoef(c,l,k);
d=d(ones(1,2^k),:);
cfd(k,:)=wkeep(d(:)',1024)
end
cfd=cfd(:);
I=find(abs(cfd)<sqrt(eps));
cfd(I)=zeros(size(I));
cfd=reshape(cfd,5,1024);
colormap(pink(64));
img=image(flipud(wcodemat(cfd,64,'row')));
set(get(img,'parent'),'YtickLabel',[]);
title('离散小波变换后系数的绝对值')
ylabel('层数');
figure(3)
ccfs=cwt(cuspamax,1:32,'haar','plot'); title('连续小波变换系数的绝对值')
colormap(pink(64));
ylabel('尺度')
xlabel('时间(或者空间)')
程序的运行结果如下图所示:
图1 原始信号的示意图
图2 db6连续小波变换后系数
图3 haar连续小波变换后系数
命令行输出结果如下:
Name Size Bytes Class
caption 1x71 142 char cuspamax 1x1024 8192 double arraay 结论
原始信号载入后有矩阵表示,其中矩阵大小为1*1024,矩阵名为cuspamax。
矩阵是以双精度表示相应的图像显示如图1所示。
对原始先信号使用db6小波在尺度1~32上进行连续小波变换。
相
应系绝对值的图像如图2所示。
从图3的原始信号连续小波变换系数的示意图可以清楚的看出,
在t=710时,小波系数出现了一个倒锥形的区域,以此,可以推断在该区域存在突变点。
小波分析在检测突变点应用中具有傅立叶变换无法比拟的优越性。
傅里叶变换,拉普拉斯变换和Z变换的意义
【傅里叶变换】
傅里叶变换在物理学、数论、组合数学、信号处理、概率论、统计学、密码学、声学、光学、海洋学、结构动力学等领域都有着广泛的应用(例如在信号处理中,傅里叶变换的典型用途是将信号分解成幅值分量和频率分量)。
傅里叶变换是一种解决问题的方法,一种工具,一种看待问题的角度。
我们原来对一个信号其实是从时间的角度去理解的,不知不觉中,其实是按照时间把信号进行分割,每一部分只是一个时间点对应一个信号值,一个信号是一组这样的分量的叠加。
傅里叶变换后,其实还是个叠加问题,只不过是从频率的角度去叠加,只不过每个小信号是一个时间域上覆盖整个区间的信号,但他确有固定的周期,或者说,给了一个周期,我们就能画出一个整个区间上的分信号,那么给定一组周期值(或频率值),我们就可以画出其对应的曲线,就像给出时域上每一点的信号值一样,不过如果信号是周期的话,频域的更简单,只需要几个甚至一个就可以了,时域则需要整个时间轴上每一点都映射出一个函数值。
傅里叶变换就是将一个信号的时域表示形式映射到一个频域表示
形式;逆傅里叶变换恰好相反。
这都是一个信号的不同表示形式。
对一个信号做傅里叶变换,可以得到其频域特性,包括幅度和相位两个方面。
幅度是表示这个频率分量的大小,那么相位呢,它有什么物理意义?频域的相位与时域的相位有关系吗?信号前一段的相位(频域)与后一段的相位的变化是否与信号的频率成正比关系?
傅里叶变换就是把一个信号,分解成无数的正弦波(或者余弦波)信号。
也就是说,用无数的正弦波,可以合成任何你所需要的信号。
想一想这个问题:给你很多正弦信号,你怎样才能合成你需要的信号呢?答案是要两个条件,一个是每个正弦波的幅度,另一个就是每个正弦波之间的相位差。
所以现在应该明白了吧,频域上的相位,就是每个正弦波之间的相位。
傅里叶变换用于信号的频率域分析,一般我们把电信号描述成时间域的数学模型,而数字信号处理对信号的频率特性更感兴趣,而通过傅立叶变换很容易得到信号的频率域特性。
傅里叶变换简单通俗理解就是把看似杂乱无章的信号考虑成由一定振幅、相位、频率的基本正弦(余弦)信号组合而成,傅里叶变换的目的就是找出这些基本正弦(余弦)信号中振幅较大(能量较高)信号对应的频率,从而找出杂乱无章的信号中的主要振动频率特点。
如减速机故障时,通过傅里叶变换做频谱分析,根据各级齿轮转速、齿数与杂音频谱中振幅大的对比,可以快速判断哪级齿轮损伤。
【拉普拉斯变换】
工程数学中常用的一种积分变换。
它是为简化计算而建立的实变
量函数和复变量函数间的一种函数变换。
对一个实变量函数作拉普拉斯变换,并在复数域中作各种运算,再将运算结果作拉普拉斯反变换来求得实数域中的相应结果,往往比直接在实数域中求出同样的结果在计算上容易得多。
拉普拉斯变换的这种运算步骤对于求解线性微分方程尤为有效,它可把微分方程化为容易求解的代数方程来处理,从而使计算简化。
在经典控制理论中,对控制系统的分析和综合,都是建立在拉普拉斯变换的基础上的。
在工程学上,拉普拉斯变换的重大意义在于:将一个信号从时域上,转换为复频域(s域)上来表示;在线性系统,控制自动化上都有广泛的应用.
【Z变换】
在数字信号处理中,Z变换是一种非常重要的分析工具。
但在通常的应用中,我们往往只需要分析信号或系统的频率响应,也即是说通常只需要进行傅里叶变换即可。
那么,为什么还要引进Z变换呢?
【三者关系】
傅里叶变换的物理意义非常清晰:将通常在时域表示的信号,分解为多个正弦信号的叠加。
每个正弦信号用幅度、频率、相位就可以完全表征。
傅里叶变换之后的信号通常称为频谱,频谱包括幅度谱和相位谱,分别表示幅度随频率的分布及相位随频率的分布。
对一个信号来说,就包含的信息量来讲,时域信号及其相应的傅里叶变换之后的信号是完全一样的。
那傅里叶变换有什么作用呢?因为有的信号主要在时域表现其特性,如电容充放电的过程;而有的信号则主要在频
域表现其特性,如机械的振动,人类的语音等。
若信号的特征主要在频域表示的话,则相应的时域信号看起来可能杂乱无章,但在频域则解读非常方便。
在实际中,当我们采集到一段信号之后,在没有任何先验信息的情况下,直觉是试图在时域能发现一些特征,如果在时域无所发现的话,很自然地将信号转换到频域再看看能有什么特征。
信号的时域描述与频域描述,就像一枚硬币的两面,看起来虽然有所不同,但实际上都是同一个东西。
正因为如此,在通常的信号与系统的分析过程中,我们非常关心傅里叶变换。
拉普拉斯变换是以法国数学家拉普拉斯命名的一种变换方法,主要是针对连续信号的分析。
拉普拉斯和傅里叶都是同时代的人,他们所处的时代在法国是处于拿破仑时代,国力鼎盛。
在科学上也取代英国成为当时世界的中心,在当时众多的科学大师中,拉普拉斯、拉格朗日、傅里叶就是他们中间最为璀璨的三颗星。
傅里叶关于信号可以分解为正弦信号叠加的论文,其评审人即包括拉普拉斯和拉格朗日。
傅里叶变换虽然好用,而且物理意义明确,但有一个最大的问题是其存在的条件比较苛刻,比如时域内绝对可积的信号才可能存在傅里叶变换。
拉普拉斯变换可以说是推广了这以概念。
在自然界,指数信号ex是衰减最快的信号之一,对信号乘上指数信号之后,很容易满足绝对可积的条件。
因此将原始信号乘上指数信号之后一般都能满足傅里叶变换的条件,这种变换就是拉普拉斯变换。
这种变换能将微分方程转化为代数方程,在18世纪计算机还远未发明的时候,意义非常重大。
从上面的分析可以看出,傅里叶变换可以看做是拉普拉斯
的一种特殊形式,即所乘的指数信号为e0。
也即是说拉普拉斯变换是傅里叶变换的推广,是一种更普遍的表达形式。
在进行信号与系统的分析过程中,可以先得到拉普拉斯变换这种更普遍的结果,然后再得到傅里叶变换这种特殊的结果。
这种由普遍到特殊的解决办法,已经证明在连续信号与系统的分析中能够带来很大的方便。
Z变换可以说是针对离散信号和系统的拉普拉斯变换,由此我们就很容易理解Z变换的重要性,也很容易理解Z变换和傅里叶变换之间的关系。
Z变换中的Z平面与拉普拉斯中的S平面存在映射的关系,z=eTs。
在Z变换中,单位圆上的结果即对应离散时间傅里叶变换的结果。