一些实现在频域中生成小波。
- 除了每个 FFT 卷积的速度,还有什么原因吗?
- 所有小波都将以相同的长度进行采样 - 100,000 个样本,即使对于那些具有 28 个时域支持的小波;为什么?
- 实现将左右填充,以便原始居中 - 而在 FFT 卷积中我们右填充。这仍然是卷积,还是“替代卷积”,为什么不右填充?
一些实现在频域中生成小波。
答案是小波设计。简而言之,频域采样提供了对某些所需滤波特性的精确控制,并且通常受到较少离散化误差的影响。
统一抽样更容易误传哪个?
左边是高中心频率的 Morlet,右边是傅里叶变换。我们可以想象,左边的轻微错误步骤可能会严重歪曲波形。为了看到这一点,我们将中心频率推到 Nyquist 附近:
在采样位置有黑线。稍微改变一下姿势...
一个剧烈的变化。如果不仔细检查,我们不太可能发现采样位置的差异;所有改变的是endpoint=False -> True
。替代视角:
一些应用需要严格的解析(负频率为零),而 Morlet 是伪解析的:它在接近 DC 或 Nyquist 时会泄漏到负数中。不存在严格解析 Morlet 小波的封闭形式时域表达式;它是通过将负数设置为零并取ifft
.
滤波器组的冗余由其频域波形的重叠控制:
左边是低冗余,右边是高。分类需要低冗余,时间定位需要高冗余。还有一个频域信息流的聚合指标,可以通知滤波器组校正 - Littlewood-Paley sum(请参阅此处的“能量分析”)。
在时域中没有这样的度量。
没有迹象表明 CWT 是否会在时域中直接可逆:我们要求滤波器平铺整个频率轴。如果某些频率没有得到覆盖,它们就会完全丢失。
一个因子的非混叠二次采样要求没有高于采样率k
的非零频率。0.5/k
同样没有时域指示。
对于时域采样,最高频率的离散化误差最大 - 对于频域采样,情况正好相反:我们最终可能会用 1 个样本来描述整个小波,这是一个常见的陷阱(它是纯正弦)。较低的频率在时域中产生的效果更好;更多细节在这里。
有设计不良的过滤器;如果我们将它们绘制在频域中,则 Nyquist 附近的带通会泄漏 DC 附近的频率,以及其他问题。我没有绘制它们,但这篇文章证明了这一点。
这里没有这样的东西;这是循环卷积。我们通过确保“左不从右绘制”来保证与线性卷积的等价性,即小波的时间支持足够小(进一步讨论)。为了清楚起见,使用 boxcar 来表示时间支持:
左右填充的原因是编程方便;各种非零方案,如reflect
,更容易实现。产生的卷积与右填充、左填充或任何其他任意移位完全相同——它是 DFT 循环性所固有的。
程序化的便利和速度。然而,后者可以通过重叠相加卷积得到很大的改进——以前者为代价。另一个原因是具有相同的“参考框架”来设计频率平铺 - 但是可以在之后修剪小波,同时保留所述平铺。