小波变换C++实现(一)—-单层小波变换

文章转自:

            http://www.cnblogs.com/IDoIUnderstand/archive/2013/03/30/3280724.html

           【小波变换】STL版 一维离散小波变换(DWT)库,完全按matlab的wavelet toolbox 的API实现的 - richard.hmm - 博客园

            http://www.cnblogs.com/IDoIUnderstand/archive/2013/04/02/3280723.html

一、小波分解

  按照Mallat分解算法,一维多层小波分解的过程可类似看成对一维单层小波变换的递归调用,因此先从一维单层离散小波变换说起。

    1、边界延拓

  边界延拓的方式有 周期延拓 和 对称延拓 两张方式,在MATLAB的实现中采用的是对称延拓的方式,为了便于对比,采用对称延拓的方式。

  对称延拓实际上是按照左右对称的方式延拓数据,延拓的个数根据第2步计算卷积后的数据长度确定

   设滤波器长度为L,则对称延拓的方式为在信号两边各延拓L-1个元素,延拓完之后,信号的长度为SignalLen+2*(L-1)。

  2、卷积的计算

  由于信号分析中采用的是离散的数据,因此卷积的计算使用离散卷积计算方法。计算过程参见:离散卷积的计算  

  分别计算延拓之后的信号与滤波器的高频成分和低频成分的离散卷积得到小波变换后的高频成分(细节分量)和低频成分(近似分量)。

   3、下采样

  为了保证两组滤波器输出系列总长度与输入序列总长度保持一致,对每组滤波器的结果进行二抽取(下采样)

  其方法为取延拓信号与滤波器序列卷积的奇数序号的元素(从0开始)

 

原文链接: https://www.cnblogs.com/wujing-hubei/p/5674893.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    小波变换C++实现(一)----单层小波变换

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/237284

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午5:20
下一篇 2023年2月13日 下午5:20

相关推荐