小波属于带通还是高通滤波器?PyWavelets滤波器组实现逻辑疑问
小波变换滤波器组实现与小波基作用解答
认知偏差澄清
你对小波的初始认知仅对应连续小波变换(CWT)的特性,离散小波变换(DWT,也就是PyWavelets默认的多级分解实现)的机制有明显差异:
- 连续小波变换确实是以不同尺度的小波作为带通核做滑动内积,输出全是对应频带的带通滤波结果
- 离散小波变换基于多分辨率分析框架,核心是用成对的互补滤波器组对信号做频带二分,因此每一级分解都会输出两个分量
滤波器组的构成与分解逻辑
每一级DWT分解都会用到两个由小波基定义的滤波器:
- 尺度滤波器(对应父小波/尺度函数):低通滤波器,用于提取信号的低频主体特征
- 小波滤波器(对应你认知里的带通小波):带通滤波器,用于提取当前尺度下的高频细节特征
分解流程为:输入信号同时输入两个滤波器,滤波后各自做2倍下采样,最终得到两个输出:
- 近似分量:低通滤波+下采样的结果,对应信号的低频骨架
- 细节分量:带通滤波+下采样的结果,对应当前尺度下的噪声、边缘等高频信息
bior6.8类小波基的作用
你提到的bior6.8属于双正交小波族,它的核心作用是定义上述分解、重构用的所有滤波器系数:
- 双正交小波具备线性相位特性,分解重构过程不会造成信号相位畸变,适合信号去噪、图像压缩等对相位敏感的场景
- bior6.8的参数中,6是分解端的消失矩阶数,8是重构端的消失矩阶数,消失矩越高对平滑信号的能量压缩能力越强,输出的细节分量稀疏性越好,更适合做特征提取、数据压缩任务
单级分解输出两个分量的原因
离散小波变换的设计目标就是实现信号的多尺度频带拆分,每一级分解都是把上一级的低频区间再对半拆分为新的低频区间和当前尺度的高频区间:
- 如果仅输出带通的细节分量,就无法继续做更深层级的级联分解
- 多级DWT最终会输出1个最终近似分量+N个不同尺度的细节分量,等效于把原信号拆分为N+1个不交叠的频带,完全符合你对小波作为带通滤波组的初始认知,只是单级分解的时候保留了未拆分的低频部分用于后续处理而已
内容的提问来源于stack exchange,提问作者Long WU
相关产品推荐
相关产品推荐

