编者按:该文件被选为MATLAB Central本周精选
此函数使用用户定义的幅值阈值快速查找噪声向量中的局部峰值或谷值(局部极值),以确定每个峰值是否明显大于(或小于)周围的数据。基于严格导数的峰值查找算法的问题在于,如果信号有噪声,会发现许多杂散峰值。然而,对于大型数据集,更复杂的方法通常需要更长的时间,需要大量的用户交互,并且仍然会给出高度可变的结果。
此函数尝试使用导数的交替性质以及用户定义的阈值快速、稳健地识别向量中的局部最大值或最小值。如代码注释中的示例所示,该函数能够在不到一秒钟的时间内正确识别150万个数据点噪声正弦曲线和上的主峰。
请不要犹豫评论或联系我,如果你有改进该功能的建议。
引用作为
拿但业尤德(2021)。峰值查找器(x0, sel, thresh, extrema, incldeendpoints, interpolate)(//www.tatmou.com/matlabcentral/fileexchange/25500-peakfinder-x0-sel-thresh-extrema-includeendpoints-interpolate), MATLAB中央文件交换。检索.