本文简要介绍 python 语言中 scipy.signal.cwt
的用法。
用法:
scipy.signal.cwt(data, wavelet, widths, dtype=None, **kwargs)#
连续小波变换。
使用小波函数对数据执行连续小波变换。 CWT 使用小波函数对数据进行卷积,其特征在于宽度参数和长度参数。小波函数可以是复数。
- data: (N,) 数组
执行转换的数据。
- wavelet: 函数
小波函数,它应该有 2 个参数。第一个参数是返回向量将具有的点数 (len(wavelet(length,width)) == length)。第二个是宽度参数,定义小波的大小(例如高斯的标准偏差)。请参阅满足这些要求的
ricker
。- widths: (M,) 序列
用于变换的宽度。
- dtype: 数据类型,可选
所需的输出数据类型。默认为
float64
如果输出小波是真实的并且complex128
如果它很复杂。- kwargs:
传递给小波函数的关键字参数。
- cwt:(M,N)ndarray
将具有 (len(widths), len(data)) 的形状。
参数 ::
返回 ::
注意:
对于非对称complex-valued小波,输入信号与小波数据的time-reversedcomplex-conjugate进行卷积[1]。
length = min(10 * width[ii], len(data)) cwt[ii,:] = signal.convolve(data, np.conj(wavelet(length, width[ii], **kwargs))[::-1], mode='same')
参考:
[1]S. Mallat,“信号处理小波导览(第 3 版)”,学术出版社,2009 年。
例子:
>>> import numpy as np >>> from scipy import signal >>> import matplotlib.pyplot as plt >>> t = np.linspace(-1, 1, 200, endpoint=False) >>> sig = np.cos(2 * np.pi * 7 * t) + signal.gausspulse(t - 0.4, fc=2) >>> widths = np.arange(1, 31) >>> cwtmatr = signal.cwt(sig, signal.ricker, widths)
注意
对于 cwt 矩阵绘图,建议翻转 y 轴
>>> cwtmatr_yflip = np.flipud(cwtmatr) >>> plt.imshow(cwtmatr_yflip, extent=[-1, 1, 1, 31], cmap='PRGn', aspect='auto', ... vmax=abs(cwtmatr).max(), vmin=-abs(cwtmatr).max()) >>> plt.show()
相关用法
- Python SciPy signal.czt_points用法及代码示例
- Python SciPy signal.chirp用法及代码示例
- Python SciPy signal.cheb2ord用法及代码示例
- Python SciPy signal.coherence用法及代码示例
- Python SciPy signal.cheb1ord用法及代码示例
- Python SciPy signal.csd用法及代码示例
- Python SciPy signal.correlate2d用法及代码示例
- Python SciPy signal.cubic用法及代码示例
- Python SciPy signal.correlation_lags用法及代码示例
- Python SciPy signal.convolve2d用法及代码示例
- Python SciPy signal.cheby2用法及代码示例
- Python SciPy signal.cheby1用法及代码示例
- Python SciPy signal.cspline1d用法及代码示例
- Python SciPy signal.check_COLA用法及代码示例
- Python scipy.signal.czt用法及代码示例
- Python SciPy signal.choose_conv_method用法及代码示例
- Python SciPy signal.convolve用法及代码示例
- Python SciPy signal.cont2discrete用法及代码示例
- Python SciPy signal.cspline1d_eval用法及代码示例
- Python SciPy signal.cmplx_sort用法及代码示例
- Python SciPy signal.check_NOLA用法及代码示例
- Python SciPy signal.correlate用法及代码示例
- Python SciPy signal.residue用法及代码示例
- Python SciPy signal.iirdesign用法及代码示例
- Python SciPy signal.max_len_seq用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.signal.cwt。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。