小波在CWT中一次移动一个样本点吗?无论规模如何,这似乎始终具有最佳时间分辨率。在下面的示例中,信号长度为 2048,对于任何比例值,计算的coef的长度为 2048。
import pywt
import numpy as np
import matplotlib.pyplot as plt
%matplotlib notebook
# Define signal
fs = 1024.0
dt = 1 / fs
signal_freuqncy = 100
scale = np.arange(2, 256)
wavelet = 'morl'
t = np.linspace(0, 2, int(2 * fs))
y = np.sin(signal_freuqncy*2*np.pi*t)
# Calculate continuous wavelet transform
coef, freqs = pywt.cwt(y, scale, wavelet, dt)
# Show w.r.t. time and frequency
plt.figure(figsize=(6, 4))
plt.pcolor(t, freqs, coef, shading = 'flat', cmap = 'jet')
# Set yscale, ylim and labels
# plt.yscale('log')
# plt.ylim([0, 20])
plt.ylabel('Frequency (Hz)')
plt.xlabel('Time (sec)')
cbar = plt.colorbar()
cbar.set_label('Energy Intensity')
plt.show()
如果我的猜测是正确的,这与我之前的理解相矛盾,即我们将扩展小波用于低频。组件,因为我们想要好的频率。分辨率,但低频率时的时间分辨率较差。范围。如图所示。