精华内容
下载资源
问答
  • 小波包变换 matlab

    2018-11-30 20:52:17
    小波包变换 matlab因为较大的滑动窗口宽度可以参考的数据量较大,挖掘结果的准确程度较高;而较的滑动窗口更加能够适应数据流的分布变化。故而滑动窗口宽度的合理选择也是一个重要研究问题。一般来讲,故障检测滑动...
  • 1、用自己采样得到的故障诊断数据分别采用Python/MATLAB两种方式对样本数据进行故障特征提取。 2、附有数据文件夹,里面包含有9种不同的故障样本集原始数据,每一种故障样本集共有100组样本。文件夹共有900组样本...
  • 小波包变换是信号处理里的强有力的工具。广泛应用于通信、图像,等信息处理场合。这会教一个简单的应用。不光掌握原理,还会快速上手,边学边做
  • 基于小波包变换的电力系统谐波分析-基于小波包变换的电力系统谐波分析.pdf The Harmonic Andlys is in Power sys tem Based on Wavelet Trans form 基于小波包变换的电力系统谐波分析.pdf ...
  • Matlab去除心电图基线漂移波包-小波包变换在消除心电图基线漂移方面的研究.PDF 在维普下的,拿来分享了. 不过有一个问题不明白,文章中说去除漂移能同时把直流分量也去掉,我不会. 我现在在做论文,需要去除直流,...
  • 针对此类电弧故障,提出一种基于小波包变换与高阶累积量相结合的电弧故障识别方法。首先采集不同负载、支路电弧故障下的电压、电流数据,建立电弧故障波形数据库;然后利用小波包变换对电弧电流信号进行分析,通过对...
  • 针对滚动轴承故障识别困难这一问题,提出了基于双树复小波包变换和1.5维谱的诊断方法。首先通过双树复小波包变换将复杂的、非平稳的原始故障信号分解为若干个不同子带信号分量,继而利用峭度评价指标从分解所得结果中...
  • 针对鼠笼式感应电动机断条故障会在定子电流中产生特征频率的特点,采用双Hilbert变换对采集到的电流信号预处理,并且利用小波包变换提取故障特征信号。通过波包分解,使得故障频率在每个子频段中突显出来。通过增加...
  • 该方法利用四树复小波包变换具有的移不变性、良好的方向选择性和对高频信号的细致分析能力等特点,把含噪图像分解成低频逼近子图和若干高频方向子图;在保留低频逼近子图复系数不变的同时,利用复系数层间相关性的...
  • 对煤样进行单轴压缩试验,采用次声信号监测系统对煤样在变形破裂过程中产生的信号实时采集,借助小波包变换信号分析方法分析信号的能量分布特征。结果表明:(1)小波包变换可将信号精细分割成各个频带,不但可以起到滤波...
  • 小波包变换的一种应用,使得方便于分析频带
  • 基于小波包变换的通信系统,赵力强,,本文提出了一种基于小波包变换的多载波子信道并行传输的系统模型。在发送端,用具有不同伸缩尺度的波函数对不同信道中的码流进
  • 离散小波包变换

    2018-10-23 10:54:06
    离散小波包变换,可用于提取轴承故障特征,里面还包含fft,功率谱等程序
  • 对脑电信号进行5层小波包分解,提取相应的节律波
  • wavelib:一维和二维小波变换(DWT,SWT和MODWT)的C实现以及一维小波包变换和一维连续小波变换
  • 小波变换和小波包变换

    万次阅读 2018-06-04 16:28:53
    小波变换是一个平方可积函数f(t)f(t)f(t) 与一个时频域上具有良好局部性质的波函数ψ(t)ψ(t)\psi \left( t \right)的内积: Wf(a,b)=<f,ψa,b>=1a−−√...

    一、小波变换

    1、连续型小波变换

    小波变换是一个平方可积函数 f(t) f ( t ) 与一个时频域上具有良好局部性质的小波函数 ψ(t) ψ ( t ) 的内积:

    Wf(a,b)=<f,ψa,b>=1aψ(tba)dt W f ( a , b ) =< f , ψ a , b >= 1 a ψ ∗ ( t − b a ) d t

    式中, <,> < ∗ , ∗ > <script type="math/tex" id="MathJax-Element-62"><*,*></script>表示内积; b b 为位移因子;表示复数共轭; ψa,b(t) ψ a , b ( t )

    ψa,b(t)=1aψ(tba) ψ a , b ( t ) = 1 a ψ ( t − b a )

    式中, ψa,b(t) ψ a , b ( t ) 是母小波 ψ(t) ψ ( t ) 经位移和伸缩所产生的一族函数,称为小波基函数或简称小波基

    由上式可以看到,改变 a a 值,对函数ψa,b(t)具有伸展 (a>1) ( a > 1 ) 或收缩 (a<1) ( a < 1 ) 的作用;改变 b b ,则会影响函数f(t)围绕 b b 点的分析结果。
    ψ(t)必须满足容许性条件:

    ψ(t)dt=0  |Ψ(ω)|2|ω|dω=Cψ< ∫ − ∞ ∞ ψ ( t ) d t = 0   或   ∫ − ∞ ∞ | Ψ ( ω ) | 2 | ω | d ω = C ψ < ∞

    式中, Ψ(ω) Ψ ( ω ) ψ(t) ψ ( t ) 的傅里叶变换。
    由上式可以得出, ψ(t) ψ ( t ) 的时域波形具有“衰减性”和“波动性”,即其振幅具有正负相间的振荡;从频谱上看, Ψ(ω) Ψ ( ω ) 集中在一个“小”的频带内,具有“带通性”。
    ψa,b(t) ψ a , b ( t ) 中参数 a a 的伸缩和参数b的平移为连续取值的小波变换称为连续小波变换,连续小波变换主要用于理论分析方面。

    2、离散型小波变换

    在实际应用中,需要对尺度因子 a a 和位移因子b进行离散化处理,可以取:

    a=am0,b=nb0am0 a = a 0 m , b = n b 0 a 0 m

    式中, m,n m , n 为整数; a0 a 0 为大于1的常数; b0 b 0 为大于0的常数; a a b的选取与小波 ψ(t) ψ ( t ) 的具体形式有关。
    离散小波函数表示为

    ψm,n(t)=1am0ψ(tnb0am0am0)=1am0ψ(am0tnb0) ψ m , n ( t ) = 1 a 0 m ψ ( t − n b 0 a 0 m a 0 m ) = 1 a 0 m ψ ( a 0 − m t − n b 0 )

    相应的离散小波变换表示为

    Wf(m,n)=<f,ψm,n(t)>=+f(t)ψm,n(t)dt W f ( m , n ) =< f , ψ m , n ( t ) >= ∫ − ∞ + ∞ f ( t ) ψ m , n ∗ ( t ) d t

    特别的,当 a0=2,b0=1 a 0 = 2 , b 0 = 1 时,离散小波变换称为二进离散小波变换。这种二进离散小波变换简单方便没在实际时间序列处理中被广泛应用。

    二、小波包变换

    1、小波包

    小波包的介绍参考:https://baike.baidu.com/item/%E5%B0%8F%E6%B3%A2%E5%8C%85/19065272?fr=aladdin

    2、小波包对时间序列的分解特性

    小波分析是把时间序列 S S 分解成低频信息a1 和高频信息 d1 d 1 两部分,在分解中 ,低频 a1 a 1 中失去的信息由高频 d1 d 1 捕获。在下一层的分解中,又将 a1 a 1 分解成低频 a2 a 2 和高频 d2 d 2 两部分,低频 a2 a 2 中失去的信息由高频 d2 d 2 捕获。依此类推,可以进行更深层的分解。小波包分解不仅对低频部分进行分解,而且还对高频部分进行分解。因此,小波包分解是一种更广泛应用的小波分解方法,应用于信号的分解、编码、消噪、压缩等方面。

    三、小波包算法

    下面介绍小波包的分解算法和重构算法。
    gnj(t)Unj g j n ( t ) ∈ U j n ,则 gnj(t) g j n ( t ) 可表示为

    gnj(t)=ldj,nlu(2jtl) g j n ( t ) = ∑ l d l j , n u ( 2 j t − l )

    1、小波包分解算法

    {dj+1,nl} { d l j + 1 , n } {dj,2nl} { d l j , 2 n } {dj,2n+1l} { d l j , 2 n + 1 }
    这里写图片描述

    2、小波包重构算法

    {dj,2nl} { d l j , 2 n } {dj+1,nl} { d l j + 1 , n } {dj,2n+1l} { d l j , 2 n + 1 }

    dj+1,nl=k[hl2kdj,2nk+gl2kdj,2n+1k] d l j + 1 , n = ∑ k [ h l − 2 k d k j , 2 n + g l − 2 k d k j , 2 n + 1 ]

    有关小波的几个术语及常见的小波基介绍见博客:https://blog.csdn.net/jbb0523/article/details/42586749

    展开全文
  • 针对液压系统性能参数的退化特点,提出了一种小波包变换和隐马尔科夫模型(HMM)相结合的液压系统故障预测方法。该方法对采集的振动信号进行小波包变换,提取能量特征,分别使用正常状态,经过轻度退化状态、中度退化态和...
  • 使用小波包变换分析信号的MATLAB程序(转)(2006-11-20 11:44:25)%t=0.001:0.001:1;t=1:1000;s1=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));for t=1:500;s2(t)=sin(2*pi*50*t*0.001)+sin(2*pi*120...

    a4c26d1e5885305701be709a3d33442f.png

    使用小波包变换分析信号的MATLAB程序(转)

    (2006-11-20 11:44:25)

    %t=0.001:0.001:1;

    t=1:1000;

    s1=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    for t=1:500;

    s2(t)=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    end

    for t=501:1000;

    s2(t)=sin(2*pi*200*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    end

    subplot(9,2,1)

    plot(s1)

    title('原始信号')

    ylabel('S1')

    subplot(9,2,2)

    plot(s2)

    title('故障信号')

    ylabel('S2')

    wpt=wpdec(s1,3,'db1','shannon');

    %plot(wpt);

    s130=wprcoef(wpt,[3,0]);

    s131=wprcoef(wpt,[3,1]);

    s132=wprcoef(wpt,[3,2]);

    s133=wprcoef(wpt,[3,3]);

    s134=wprcoef(wpt,[3,4]);

    s135=wprcoef(wpt,[3,5]);

    s136=wprcoef(wpt,[3,6]);

    s137=wprcoef(wpt,[3,7]);

    s10=norm(s130);

    s11=norm(s131);

    s12=norm(s132);

    s13=norm(s133);

    s14=norm(s134);

    s15=norm(s135);

    s16=norm(s136);

    s17=norm(s137);

    st10=std(s130);

    st11=std(s131);

    st12=std(s132);

    st13=std(s133);

    st14=std(s134);

    st15=std(s135);

    st16=std(s136);

    st17=std(s137);

    disp('正常信号的特征向量');

    snorm1=[s10,s11,s12,s13,s14,s15,s16,s17]

    std1=[st10,st11,st12,st13,st14,st15,st16,st17]

    subplot(9,2,3);plot(s130);

    ylabel('S130');

    subplot(9,2,5);plot(s131);

    ylabel('S131');

    subplot(9,2,7);plot(s132);

    ylabel('S132');

    subplot(9,2,9);plot(s133);

    ylabel('S133');

    subplot(9,2,11);plot(s134);

    ylabel('S134');

    subplot(9,2,13);plot(s135);

    ylabel('S135');

    subplot(9,2,15);plot(s136);

    ylabel('S136');

    subplot(9,2,17);plot(s137);

    ylabel('S137');

    wpt=wpdec(s2,3,'db1','shannon');

    %plot(wpt);

    s230=wprcoef(wpt,[3,0]);

    s231=wprcoef(wpt,[3,1]);

    s232=wprcoef(wpt,[3,2]);

    s233=wprcoef(wpt,[3,3]);

    s234=wprcoef(wpt,[3,4]);

    s235=wprcoef(wpt,[3,5]);

    s236=wprcoef(wpt,[3,6]);

    s237=wprcoef(wpt,[3,7]);

    s20=norm(s230);

    s21=norm(s231);

    s22=norm(s232);

    s23=norm(s233);

    s24=norm(s234);

    s25=norm(s235);

    s26=norm(s236);

    s27=norm(s237);

    st20=std(s230);

    st21=std(s231);

    st22=std(s232);

    st23=std(s233);

    st24=std(s234);

    st25=std(s235);

    st26=std(s236);

    st27=std(s237);

    disp('故障信号的特征向量');

    snorm2=[s20,s21,s22,s23,s24,s25,s26,s27]

    std2=[st20,st21,st22,st23,st24,st25,st26,st27]

    subplot(9,2,4);plot(s230);

    ylabel('S230');

    subplot(9,2,6);plot(s231);

    ylabel('S231');

    subplot(9,2,8);plot(s232);

    ylabel('S232');

    subplot(9,2,10);plot(s233);

    ylabel('S233');

    subplot(9,2,12);plot(s234);

    ylabel('S234');

    subplot(9,2,14);plot(s235);

    ylabel('S235');

    subplot(9,2,16);plot(s236);

    ylabel('S236');

    subplot(9,2,18);plot(s237);

    ylabel('S237');

    %fft

    figure

    y1=fft(s1,1024);

    py1=y1.*conj(y1)/1024;

    y2=fft(s2,1024);

    py2=y2.*conj(y2)/1024;

    y130=fft(s130,1024);

    py130=y130.*conj(y130)/1024;

    y131=fft(s131,1024);

    py131=y131.*conj(y131)/1024;

    y132=fft(s132,1024);

    py132=y132.*conj(y132)/1024;

    y133=fft(s133,1024);

    py133=y133.*conj(y133)/1024;

    y134=fft(s134,1024);

    py134=y134.*conj(y134)/1024;

    y135=fft(s135,1024);

    py135=y135.*conj(y135)/1024;

    y136=fft(s136,1024);

    py136=y136.*conj(y136)/1024;

    y137=fft(s137,1024);

    py137=y137.*conj(y137)/1024;

    y230=fft(s230,1024);

    py230=y230.*conj(y230)/1024;

    y231=fft(s231,1024);

    py231=y231.*conj(y231)/1024;

    y232=fft(s232,1024);

    py232=y232.*conj(y232)/1024;

    y233=fft(s233,1024);

    py233=y233.*conj(y233)/1024;

    y234=fft(s234,1024);

    py234=y234.*conj(y234)/1024;

    y235=fft(s235,1024);

    py235=y235.*conj(y235)/1024;

    y236=fft(s236,1024);

    py236=y236.*conj(y236)/1024;

    y237=fft(s237,1024);

    py237=y237.*conj(y237)/1024;

    f=1000*(0:511)/1024;

    subplot(1,2,1);

    plot(f,py1(1:512));

    ylabel('P1');

    title('原始信号的功率谱')

    subplot(1,2,2);

    plot(f,py2(1:512));

    ylabel('P2');

    title('故障信号的功率谱')

    figure

    subplot(4,2,1);

    plot(f,py130(1:512));

    ylabel('P130');

    title('S130的功率谱')

    subplot(4,2,2);

    plot(f,py131(1:512));

    ylabel('P131');

    title('S131的功率谱')

    subplot(4,2,3);

    plot(f,py132(1:512));

    ylabel('P132');

    subplot(4,2,4);

    plot(f,py133(1:512));

    ylabel('P133');

    subplot(4,2,5);

    plot(f,py134(1:512));

    ylabel('P134');

    subplot(4,2,6);

    plot(f,py135(1:512));

    ylabel('P135');

    subplot(4,2,7);

    plot(f,py136(1:512));

    ylabel('P136');

    subplot(4,2,8);

    plot(f,py137(1:512));

    ylabel('P137');

    figure

    subplot(4,2,1);

    plot(f,py230(1:512));

    ylabel('P230');

    title('S230的功率谱')

    subplot(4,2,2);

    plot(f,py231(1:512));

    ylabel('P231');

    title('S231的功率谱')

    subplot(4,2,3);

    plot(f,py232(1:512));

    ylabel('P232');

    subplot(4,2,4);

    plot(f,py233(1:512));

    ylabel('P233');

    subplot(4,2,5);

    plot(f,py234(1:512));

    ylabel('P234');

    subplot(4,2,6);

    plot(f,py235(1:512));

    ylabel('P235');

    subplot(4,2,7);

    plot(f,py236(1:512));

    ylabel('P236');

    subplot(4,2,8);

    plot(f,py237(1:512));

    ylabel('P237');

    figure

    %plottree(wpt)

    分享:

    a4c26d1e5885305701be709a3d33442f.png喜欢

    0

    a4c26d1e5885305701be709a3d33442f.png赠金笔

    加载中,请稍候......

    评论加载中,请稍候...

    发评论

    登录名: 密码: 找回密码 注册记住登录状态

    昵   称:

    评论并转载此博文

    a4c26d1e5885305701be709a3d33442f.png

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    展开全文
  • 利用小波包分析信号,可在多频率段内分析信号的特性。
  • 下面是使用小波包变换分析两个信号的特征向量和各频率成分的功率谱!%t=0.001:0.001:1;t=1:1000;s1=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));for t=1:500;s2(t)=sin(2*pi*50*t*0.001)+sin(2*...

    下面是使用小波包变换分析两个信号的特征向量和各频率成分的功率谱!

    %t=0.001:0.001:1;

    t=1:1000;

    s1=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    for t=1:500;

    s2(t)=sin(2*pi*50*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    end

    for t=501:1000;

    s2(t)=sin(2*pi*200*t*0.001)+sin(2*pi*120*t*0.001)+rand(1,length(t));

    end

    subplot(9,2,1)

    plot(s1)

    title('原始信号')

    ylabel('S1')

    subplot(9,2,2)

    plot(s2)

    title('故障信号')

    ylabel('S2')

    wpt=wpdec(s1,3,'db1','shannon');

    %plot(wpt);

    s130=wprcoef(wpt,[3,0]);

    s131=wprcoef(wpt,[3,1]);

    s132=wprcoef(wpt,[3,2]);

    s133=wprcoef(wpt,[3,3]);

    s134=wprcoef(wpt,[3,4]);

    s135=wprcoef(wpt,[3,5]);

    s136=wprcoef(wpt,[3,6]);

    s137=wprcoef(wpt,[3,7]);

    s10=norm(s130);

    s11=norm(s131);

    s12=norm(s132);

    s13=norm(s133);

    s14=norm(s134);

    s15=norm(s135);

    s16=norm(s136);

    s17=norm(s137);

    st10=std(s130);

    st11=std(s131);

    st12=std(s132);

    st13=std(s133);

    st14=std(s134);

    st15=std(s135);

    st16=std(s136);

    st17=std(s137);

    disp('正常信号的特征向量');

    snorm1=[s10,s11,s12,s13,s14,s15,s16,s17]

    std1=[st10,st11,st12,st13,st14,st15,st16,st17]

    subplot(9,2,3);plot(s130);

    ylabel('S130');

    subplot(9,2,5);plot(s131);

    ylabel('S131');

    subplot(9,2,7);plot(s132);

    ylabel('S132');

    subplot(9,2,9);plot(s133);

    ylabel('S133');

    subplot(9,2,11);plot(s134);

    ylabel('S134');

    subplot(9,2,13);plot(s135);

    ylabel('S135');

    subplot(9,2,15);plot(s136);

    ylabel('S136');

    subplot(9,2,17);plot(s137);

    ylabel('S137');

    wpt=wpdec(s2,3,'db1','shannon');

    %plot(wpt);

    s230=wprcoef(wpt,[3,0]);

    s231=wprcoef(wpt,[3,1]);

    s232=wprcoef(wpt,[3,2]);

    s233=wprcoef(wpt,[3,3]);

    s234=wprcoef(wpt,[3,4]);

    s235=wprcoef(wpt,[3,5]);

    s236=wprcoef(wpt,[3,6]);

    s237=wprcoef(wpt,[3,7]);

    s20=norm(s230);

    s21=norm(s231);

    s22=norm(s232);

    s23=norm(s233);

    s24=norm(s234);

    s25=norm(s235);

    s26=norm(s236);

    s27=norm(s237);

    st20=std(s230);

    st21=std(s231);

    st22=std(s232);

    st23=std(s233);

    st24=std(s234);

    st25=std(s235);

    st26=std(s236);

    st27=std(s237);

    disp('故障信号的特征向量');

    snorm2=[s20,s21,s22,s23,s24,s25,s26,s27]

    std2=[st20,st21,st22,st23,st24,st25,st26,st27]

    subplot(9,2,4);plot(s230);

    ylabel('S230');

    subplot(9,2,6);plot(s231);

    ylabel('S231');

    subplot(9,2,8);plot(s232);

    ylabel('S232');

    subplot(9,2,10);plot(s233);

    ylabel('S233');

    subplot(9,2,12);plot(s234);

    ylabel('S234');

    subplot(9,2,14);plot(s235);

    ylabel('S235');

    subplot(9,2,16);plot(s236);

    ylabel('S236');

    subplot(9,2,18);plot(s237);

    ylabel('S237');

    %fft

    figure

    y1=fft(s1,1024);

    py1=y1.*

    展开全文
  • 当这个周期信号的周期趋近于无穷大时,傅里叶级数就变成了傅里叶变换。此时的信号本质上是一个连续非周期信号,傅里叶变换的意义就在于对其进行分解,同样也是以一组三角函数作为正交基,并通过这组三角函数基的线性...

    对于一个连续的周期信号,可以将其分解为一组频率不同的三角函数信号的线性组合,这就是傅里叶级数的本质,将信号从时域投影到频域中的不同频段上来完成分解。

    当这个周期信号的周期趋近于无穷大时,傅里叶级数就变成了傅里叶变换。此时的信号本质上是一个连续非周期信号,傅里叶变换的意义就在于对其进行分解,同样也是以一组三角函数作为正交基,并通过这组三角函数基的线性组合来表示原信号。数学表达为:

    由于三角函数是一个无限长的信号,在时域上不具有局部性,因此以其作为正交基对信号进行拟合时,具有以下两个不足:第一,对于突变信号,如阶跃信号或尖峰信号,其需要大量的三角函数基进行组合才能完成较好的信号拟合;第二,由于三角函数不具备在时域上的局部性,因此在对信号进行傅里叶变换时,仅仅只能获取到信号在频域上的分布信息,并不能获取到这些不同频率的信号分量在时域上出现的位置。因此傅里叶变换对于非平稳信号的分解会遗失其在时域上的变化信息。

    小波变换就是为了解决对非平稳信号的分解问题而产生的数学方法。相比于傅里叶变换使用一组无限长的三角函数基进行信号拟合,小波变换使用的是一组正交的、迅速衰减的小波函数基进行信号拟合。这种小波函数基可通过其尺度变量和平移变量,获得不同的频率和时间位置。因此在利用这种小波函数基对信号进行分解时,可以用较少的小波函数基就拟合出突变信号(稀疏编码特性),同时也能获得不同频率的信号分量在时域上的出现位置。

    用于生成一组不同频率和时移的小波函数的小波函数

    ,称为基本小波(Basic Wavelet),由其生成的一组小波函数,是该基本小波的一个小波族(Wavelet Family),表示为:

    ,其中

    为尺度参数,通过伸缩控制小波的尺度(频率),

    为平移参数,通过移位控制小波在时域中的出现位置。这两个参数的作用顺序是先作平移,再作伸缩。对这一族小波函数进行归一化,即得到一组小波函数基。

    可进行小波变换的对象是平方可积的信号,也即是位于希尔伯特空间中的一个函数。希尔伯特空间保证了在空间中的每一个函数,都可由该空间中的其他函数线性组合得到。

    小波变换值,也即是用于拟合原始信号的小波函数基的系数,可通过计算原始信号与各小波函数基的内积得到。其意义为原始信号在各个小波函数基上的投影值,投影值越大,说明对应的小波信号所携带的原始信号的特征信息的比例越大。数学表达如下:

    其中,

    表示

    的共轭函数。

    在实际应用中,由于计算机的处理对象为离散数据,因此在使用小波变换时,一般指的都是离散小波变换。因此对于上式,可写成离散形式:

    其中,

    表示

    的共轭函数。

    从数学的角度理解,在小波变换中,一个位于希尔伯特空间中的函数,可以分解成一个尺度函数和一个小波函数,其中尺度函数对应原始函数中的低频部分,小波函数对应原始函数中的高频部分。通过尺度函数可以构建对原始信号的低通滤波器,通过小波函数可以构建对原始信号的高通滤波器。

    从信号处理的角度理解,在小波变换中,信号可通过信号滤波器分解为高频分量(高频子带(subband))和低频分量(低频子带(subband)),高频子带又称为细节(detailed)子带,低频子带又称为近似(approximate)子带。细节子带是由输入信号通过高通滤波器后再进行下采样得到的,近似子带是由输入信号通过低通滤波器后再进行下采样得到的。

    小波变换是这样一个过程:首先将原始信号作为输入信号,通过一组正交的小波基分解成高频部分和低频部分,然后将得到的低频部分作为输入信号,又进行小波分解,得到下一级的高频部分和低频部分,以此类推。随着小波分解的级数增加,其在频域上的分辨率就越高。这就是多分辨率分析(MRA,MultiResolution Analysis)。

    离散小波变换在逐级分解时,由尺度函数所张成的空间为:

    其中

    为第

    级的尺度函数所张成的空间,

    为尺度变量,

    为平移变量。

    为产生

    一族尺度函数的父函数,又称父小波。上式中的

    是归一化因子。

    离散小波变换在逐级分解时,由小波函数所张成的空间为:

    其中

    为第

    级的小波函数所张成的空间,

    为尺度变量,

    为平移变量。

    为产生

    一族小波函数的母函数,又称母小波。上式中的

    是归一化因子。

    关于

    的正交空间补集,两者存在关系:

    ,根据该关系,可以递归展开,得到:

    由上式可知,分解级数越高,信号在时域和频域的分辨率就越高,包含的信息也就越多。

    又根据上式,对于

    中的任一函数

    ,可分解为以下形式:

    其中

    中的函数,

    中的函数。

    在小波变换中,若令尺度参数为

    ,即对尺度按幂级数作离散化,同时对平移保持连续变化,则此类小波变换称为二进小波变换(Dyadic Wavelet Transform)。

    在二进小波变换中,各级小波分解时,相邻级数的尺度函数之间满足关系:

    ,

    即是:

    相邻级数的小波函数和尺度函数之间满足关系:

    ,

    即是:

    其中,

    为第$i$级的尺度函数,

    为第

    级的尺度函数,

    为第

    级的小波函数。

    为低通滤波器,定义为:

    为高通滤波器,定义为:

    在小波变换中,紧支撑小波基是性质较好的一类小波基,紧支撑(Compact Support)函数是指这样的一类函数:其自变量仅在0附近的取值范围内能得到非零函数值,而在其他区间取值,则得到的函数值全为零。能得到非零函数值的自变量取值区间被称为该函数的支撑区间。一个函数的支撑区间长度主要由其尺度参数决定。支撑区间越大,计算复杂度越高,边界拖尾效应越明显。不仅如此,支撑区间越大,会产生更多的高幅值小波系数,关于这个结论的解释,可参考傅里叶变换使用无限长(支撑区间大)的三角函数基进行信号拟合的情况,相比于使用信号迅速衰减(支撑区间小)的小波基,三角函数基拟合信号时需要更多的数量。因此在选择小波基时,以支撑长度较短的小波基为宜。此外,小波基的正交性也是一类重要的性质,它确保了信号的分解没有冗余(最优分解)。

    在小波变换中,另一个重要的概念是消失矩。小波函数的消失矩定义如下:

    若:

    则称该小波函数具有N阶消失矩。其中,

    为基本小波,

    。消失矩越大,在进行小波分解时,会产生更多数值为0的小波系数,使得信号的分解更为稀疏,便于进行数据压缩。但与此同时,更大的消失矩也会产生更大的支撑区间,这是一个权衡关系。

    然而小波变换仍存在着不足之处,由于小波变换在每级信号分解时仅仅对低频子带进行分解,因此无法对高频子带的信息进行同样高分辨率的提取。

    小波包分解(Wavelet Packet Decomposition),又称为最优子带树结构(Optimal Subband Tree Structuring)正是对小波变换的进一步优化。其主要的算法思想是:在小波变换的基础上,在每一级信号分解时,除了对低频子带进行进一步分解,也对高频子带进行进一步分解。最后通过最小化一个代价函数,计算出最优的信号分解路径,并以此分解路径对原始信号进行分解。

    同样地,在二进小波包变换中,各级小波包分解时,相邻级数的尺度函数和小波函数之间也具有递推关系。

    记小波包变换中的父小波

    ,母小波

    ,其中的上标表示该小波包所在的分解级数,下标表示该小波包在其级里的位置。

    于是上述的递推关系可以表述如下:

    即是:

    其中

    的定义同小波变换。

    即称为小波包。

    在小波包变换中,常用的代价函数为信息熵函数。最小化代价函数,也即是最大化逐级信号分解的信息熵。

    无论是小波变换还是小波包变化,一个重要的环节是选择合适的小波函数基进行信号分解。常用的几类小波函数基包括:

    Haar小波:Haar函数是最简单的一个小波函数,其具有紧支撑性和正交性,函数图像为在支撑区间[0,1)上的单个矩形波。Haar小波在时域上不连续,作为基本小波时性能不是很好。尺度函数 小波函数

    Daubechies小波:通常简称为

    ,其中

    为小波分解的级数。该小波的尺度函数和小波函数的支撑区间长度为

    ,小波函数的消失矩为

    小波具有较好的正则性(本身的函数较为光滑,其拟合出的信号也较为光滑),且随着小波分解级数$N$的增加,其小波函数的消失矩也增大,小波更加光滑,在时域的紧支撑性降低(支撑区间变大),在频域的局部性增加(频域可分性更强)。此外,由于支撑区间的变大,计算量也将增加,使得计算实时性下降。当

    小波的

    =1时,

    小波即为Haar小波;当

    小波的

    时,其不具有对称性(即其相位为非线性),该特性会使其在进行信号重构时产生一定程度的失真。尺度函数 小波函数

    Biorthogonal小波:双正交小波,使用对偶的两个小波分别用于信号的分解和重构。双正交小波与正交小波的区别在于,在正交小波中,由基本小波的伸缩和平移所产生的一族小波基函数之间完全正交。而在双正交小波中,由基本小波的伸缩所产生的一族小波基函数完全正交,由基本小波的平移所产生的一族小波基函数则不正交。双正交小波借由牺牲一部分的正交性,来减少基本小波平移产生小波基时需满足的约束(扩大函数空间),从而使小波可以通过平移来获取线性相位(在函数空间中可取到具有线性相位的函数),以得到精确重构信号所需的对称性。双正交小波的作用过程可以描述为:首先对输入信号使用一个双正交小波进行正交分解,然后在该双正交小波的对偶空间中寻找一个具有线性相位的对偶小波进行对输入信号的非正交重构。双正交小波具备正则性和紧支撑性,其重构支撑区间长度为

    ,分解支撑区间长度为

    分别代表信号重构的级数和信号分解的级数。左上:用于信号分解的尺度函数 右上:用于信号分解的小波函数 左下:用于信号重构的尺度函数 右下:用于信号重构的小波函数

    Symlets小波:通常简称为

    ,其中

    为小波分解的级数。

    小波是对

    小波的一种改进,其除了具备

    小波所拥有的特性外,还具备了更好的对称性,是一类近似对称的紧支撑正交小波。因此,

    小波能在一定程度上减少信号重构时产生的相位失真。

    小波的支撑区间长度为

    ,消失矩为

    上:尺度函数 下:小波函数

    Mexican Hat小波:Mexican函数为Gaussian函数的二阶导数,形似墨西哥帽的截面,它在时域和频域上都具有很好的局部性,但不存在尺度函数,因此该小波函数不具备正交性。小波函数

    在选择合适的小波函数基时,需要考虑的因素除了小波的支撑区间大小、小波的消失矩之外,还需考虑其对称性、正则性和相似性。小波的对称性主要体现在保证信号重构时不会产生相位畸变,即是不会产生重构信号的相位失真。小波的正则性保证了信号的光滑和可微性,对于大部分小波而言(非全部),其与消失矩存在关系:小波的消失矩越大,正则性也就越大。最后,选择与输入信号的波形相似性高的小波,意义在于使数据压缩和降噪变得更容易(信号的拟合和分解都更容易)。

    关于小波分解的应用:

    由于小波分解的稀疏编码特性,其可用于数据压缩,主要做法为:将信号进行小波分解,并将较小的小波系数置零。相当于将不重要(特征不明显)的信息分量去除,达到数据精简的效果。

    小波分解也可用于信号滤波,主要做法为:将信号进行小波分解,并将特定级数以上的小波系数置零。相当于将高分辨率的信息分量去除,达到数据平滑的效果。

    小波分解还可用于信号降噪,主要做法为:将信号进行小波分解,并通过设置一个阈值,将其中低于阈值的小波系数置零。相当于将信号中占成分比例较低的噪声部分去除。

    小波包分解的应用与小波分解同理。

    展开全文
  • 小波包变换

    2012-09-24 22:33:18
    小波包的MATLAB实现,对初学者很有帮助
  • 小波包变换/能量特征提取/结果图绘制-python代码

    万次阅读 多人点赞 2019-11-04 14:35:49
    1. 波外部包下载 要下载两个包: PyWavelets和Matplotlib(要运行PyWavelets的所有测试,您还需要安装...PyWavelets官网:里面有很多的API文档,有波(波家族,内置波等),离散小波变换,逆波变...
  • )下载方法:pip install PyWaveletspip install Matplotlib相关链接:PyWavelets官网:里面有很多的API文档,有波(波家族,内置波等),离散小波变换,逆小波变换等等小波包的相关用法实例2...
  • 基于matlab语言,进行对多维数据信号进行数据提取,按照小波包变换取出八个特征值
  • 基于小波包变换和Elman人工神经网络的电机故障诊断系统,张北鸥,,本文在总结了传统的电机故障诊断方法的基础上,通过对电机工作中振动信号的采集与监测以及对电机工作故障的分析,设计了一种基于
  • 提出了一种基于小波包变换的电力谐波检测方法。该方法采用小波包变换对电流信号进行分解,即将该电流信号分解成低频部分与高频部分,然后分别对低频部分及高频部分进行波包分解,重构后得到该电流信号的基波分量,从...
  • 小波包变换_WPT_频带划分特性的分析_wpt_波包_小波包变换_波分析_频带划分.zip

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,419
精华内容 567
关键字:

小波包变换

友情链接: 1,程序源码.zip