zoukankan      html  css  js  c++  java
  • 小波分解和小波包分解

    这篇文章介绍了小波分解和小波包分解。

    小波分解(wavelet transform)

    小波

    傅里叶变换的基本方程是sin和cos,小波变换的基本方程是小波函数(basic wavelet),不同的小波在波形上有较大的差异,相似的小波构成一个小波族(family)。小波具有这样的局部特性:只有在有限的区间内取值不为0。这个特性可以很好地用于表示带有尖锐, 不连续的信号。

    小波变换

    α=WTf
    其中α 表示变换得到的小波系数,W是正交矩阵。f 是输入信号。

    正交矩阵构造

    特定的小波函数(basic wavelet)由一组特定的小波滤波系数(wavelet filter coefficients)构成。当选定了小波函数,其对应的那组小波滤波器系数就知道。用小波滤波器系数构造不同维度的低通滤波器和高通滤波器(下面的例子中W就是由这些系数构造出来的)。低通滤波器可以看作为一个平滑滤波器(smoothing filter)。这两个滤波器,低通和高通滤波器,又分别被称为尺度(scaling)和小波滤波器(wavelet filter)。一旦定义好了这两个滤波器,通过递归分解算法(也称为金字塔算法(pyramid algorithm),树算法(tree algorithm)将得到水平多分辨率表示的信号。

    树算法

    原始信号通过低通滤波器得到低频系数 (approximate coefficients), 通过高通滤波器得到高频系数(detail coefficients)。把第一层的低频系数作为信号输入,又得到一组approximate coefficients和detail coefficients。再把得到的approximate coefficients作为信号输入,得到第二层的approximate coefficients和detail coefficients。以此类推,直到满足设定的分级等级。最大的分解等级为log2N.
    用数学表达就是:
    原始信号可看做0级低频系数 a0=(f0,f1,...,fn);
    那么am=Gam1, dm=Ham1G,H 分别表示低通滤波器和高通滤波器,用矩阵表示。

    信号的重构

    am1=Gam+Hdm
    G,H为G,H 的共轭矩阵。

    例子:使用Haar小波做离散小波变换

    Haar小波是最简单的小波函数。归一化的小波滤波器系数只有两个c0=12=0.7071, c1=0.7071. 低通滤波器由0.7071,0.7071组成,高通滤波器由0.7071,-0.7071组成,用矩阵GH表示,矩阵的维度由信号的长度决定。


    dwtscheme

    分解的结果

    Result

    小波包分解(wavelet packet transform)

    简单理解就是每一层分解得到的系数都要再分解,不像小波分解那样只有低频系数会再分解。同样以Haar小波为例子。


    dwpt1
    dwpt2

    分解结果

    result——dwpt

    参考文献 Walczak, B., and D. L. Massart. “Noise suppression and signal compression using the wavelet packet transform.” Chemometrics and Intelligent Laboratory Systems 36.2 (1997): 81-94.

  • 相关阅读:
    分享一份Java架构师学习资料,2019年最新整理!
    Spring Boot 最核心的 25 个注解,都是干货!
    推荐一款接口 API 设计神器!
    题库
    杂乱的知识点
    mysql查询疯狂41例
    mysql你问我答
    可能出现的面试题
    SQLALchemy
    基于蓝图的完整的Flask项目
  • 原文地址:https://www.cnblogs.com/siucaan/p/9623215.html
Copyright © 2011-2022 走看看