You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中实现CWT遇困惑:Morlet小波尺度与频率对应问题

关于连续小波变换(CWT)尺度与频率对应关系的疑问

为理解小波变换,我针对10Hz正弦信号应用Morlet小波进行连续小波变换(CWT),但不清楚尺度范围应如何与频率对应。我分别使用三种不同尺度范围(np.arange(1,32)、np.arange(1,64)、np.arange(1,128))测试,得到了不同结果。我原本认为固定频率在尺度图中应对应近乎固定的尺度,对此感到困惑,请问如何正确使用CWT?

测试代码

npnts=500

time=np.linspace(0,1,npnts)

signal=np.sin(2*np.pi*10*time)

dt=time[2]-time[1]

scales =np.arange(1,32)

fig,ax=plt.subplots(1,2,figsize=(8,6))

ax[0].plot(time,signal)

ax[0].set_ylabel('Intensity (a.u.)')

ax[0].set_xlabel('Time(s)')

wavelet='morl'

coeff, freq = pywt.cwt(signal, scales, wavelet)

ax[1].imshow(abs(coeff),extent=[time[0],time[-1],np.min(scales),np.max(scales)],cmap='jet',\
        vmax=np.real(coeff).max(),vmin=-abs(coeff).max(),aspect='auto')

plt.tight_layout()

plt.show()

不同尺度范围的测试结果

  • 使用scales=np.arange(1,32)的结果图
  • 使用scales=np.arange(1,64)的结果图
  • 使用scales=np.arange(1,128)的结果图

内容的提问来源于stack exchange,提问作者behzad nazar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 22:35:14