本文简要介绍 python 语言中 scipy.signal.find_peaks_cwt
的用法。
用法:
scipy.signal.find_peaks_cwt(vector, widths, wavelet=None, max_distances=None, gap_thresh=None, min_length=None, min_snr=1, noise_perc=10, window_size=None)#
使用小波变换查找一维数组中的峰值。
一般的方法是通过将每个宽度的宽度与小波(宽度)卷积来平滑向量。出现在足够长的尺度上并且具有足够高的 SNR 的相对最大值是可以接受的。
- vector: ndarray
用于查找峰值的一维数组。
- widths: 浮点数或序列
用于计算 CWT 矩阵的单宽度或类似一维数组的宽度。一般来说,该范围应涵盖感兴趣峰的预期宽度。
- wavelet: 可调用的,可选的
应该采用两个参数并返回一个一维数组以与向量进行卷积。第一个参数确定返回的小波数组的点数,第二个参数是小波的尺度(宽度)。应该是标准化和对称的。默认为 ricker 小波。
- max_distances: ndarray,可选
在每一行,只有当 row[n] 处的相对最大值与
row[n+1]
处的相对最大值在max_distances[n]
范围内时,才连接脊线。默认值为widths/4
。- gap_thresh: 浮点数,可选
如果在max_distances 中没有找到相对最大值,则会出现间隙。如果有超过 gap_thresh 个点且未连接新的相对最大值,则脊线将被中断。默认是宽度数组的第一个值,即宽度 [0]。
- min_length: 整数,可选
脊线的最小长度需要是可接受的。默认值为
cwt.shape[0] / 4
,即宽度数的 1/4。- min_snr: 浮点数,可选
最小信噪比。默认 1。信号是最大脊线上的最大 CWT 系数。噪声是同一山脊线内包含的数据点的 noise_perc 百分位数。
- noise_perc: 浮点数,可选
计算本底噪声时,检查的数据点的百分位数低于该百分位数以考虑噪声。使用 stats.scoreatpercentile 计算。默认值为 10。
- window_size: 整数,可选
用于计算本底噪声的窗口大小。默认为
cwt.shape[1] / 20
。
- peaks_indices: ndarray
向量中找到峰值的位置的索引。列表已排序。
参数 ::
返回 ::
注意:
这种方法是为在噪声数据中寻找尖峰而设计的,但是通过适当的参数选择,它应该适用于不同的峰形。
执行连续小波变换向量,对于提供的宽度。这是一个卷积向量和小波(宽度)对于每个宽度宽度.看scipy.signal.cwt.
在 cwt 矩阵中识别 “ridge lines”。这些是每行的相对最大值,跨相邻行连接。见identify_ridge_lines
使用 filter_ridge_lines 过滤 ridge_lines。
算法如下::
参考:
[1]生物信息学(2006)22(17):2059-2065。 DOI:10.1093/bioinformatics/btl355
例子:
>>> import numpy as np >>> from scipy import signal >>> xs = np.arange(0, np.pi, 0.05) >>> data = np.sin(xs) >>> peakind = signal.find_peaks_cwt(data, np.arange(1,10)) >>> peakind, xs[peakind], data[peakind] ([32], array([ 1.6]), array([ 0.9995736]))
相关用法
- Python SciPy signal.find_peaks用法及代码示例
- Python SciPy signal.findfreqs用法及代码示例
- Python SciPy signal.firls用法及代码示例
- Python SciPy signal.filtfilt用法及代码示例
- Python SciPy signal.firwin用法及代码示例
- Python SciPy signal.firwin2用法及代码示例
- Python SciPy signal.freqs用法及代码示例
- Python SciPy signal.freqs_zpk用法及代码示例
- Python SciPy signal.freqz用法及代码示例
- Python SciPy signal.freqresp用法及代码示例
- Python SciPy signal.fftconvolve用法及代码示例
- Python SciPy signal.freqz_zpk用法及代码示例
- Python SciPy signal.czt_points用法及代码示例
- Python SciPy signal.chirp用法及代码示例
- Python SciPy signal.residue用法及代码示例
- Python SciPy signal.iirdesign用法及代码示例
- Python SciPy signal.max_len_seq用法及代码示例
- Python SciPy signal.kaiser_atten用法及代码示例
- Python SciPy signal.oaconvolve用法及代码示例
- Python SciPy signal.hilbert用法及代码示例
- Python SciPy signal.ricker用法及代码示例
- Python SciPy signal.group_delay用法及代码示例
- Python SciPy signal.cheb2ord用法及代码示例
- Python SciPy signal.get_window用法及代码示例
- Python SciPy signal.lfilter用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.signal.find_peaks_cwt。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。