當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python cusignal.wavelets.wavelets.cwt用法及代碼示例


用法:

cusignal.wavelets.wavelets.cwt(data, wavelet, widths)

連續小波變換。

使用 wavelet 函數對 data 執行連續小波變換。 CWT 使用wavelet 函數執行與data 的卷積,其特征在於寬度參數和長度參數。

參數

data(N,) 數組

執行轉換的數據。

wavelet函數

小波函數,它應該有 2 個參數。第一個參數是返回向量將具有的點數 (len(wavelet(length,width)) == length)。第二個是寬度參數,定義小波的大小(例如高斯的標準偏差)。請參閱滿足這些要求的 ricker

widths(M,) 序列

用於變換的寬度。

返回

cwt:(M,N)ndarray

將具有 (len(widths), len(data)) 的形狀。

注意

length = min(10 * width[ii], len(data))
cwt[ii,:] = cusignal.convolve(data, wavelet(length,
                            width[ii]), mode='same')

例子

>>> import cusignal
>>> import cupy as cp
>>> import matplotlib.pyplot as plt
>>> t = cp.linspace(-1, 1, 200, endpoint=False)
>>> sig  = cp.cos(2 * cp.pi * 7 * t) + cusignal.gausspulse(t - 0.4, fc=2)
>>> widths = cp.arange(1, 31)
>>> cwtmatr = cusignal.cwt(sig, cusignal.ricker, widths)
>>> plt.imshow(abs(cp.asnumpy(cwtmatr)), extent=[-1, 1, 31, 1],
               cmap='PRGn', aspect='auto', vmax=abs(cwtmatr).max(),
               vmin=-abs(cwtmatr).max())
>>> plt.show()

相關用法


注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cusignal.wavelets.wavelets.cwt。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。