本文簡要介紹 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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。