0
我有一个波形,我已经用一个标准确定了一个特定的点(下图中的绿星)。我现在想要自动找到此点右侧下一个峰(可能是最大值或最小值)的位置(例如,下图中的红色圆圈,在这种情况下,它是最小值)。请注意,我将在多个波形上运行此操作,这些波形具有不同的峰高/噪声含量。用MATLAB找到一个点的最近的峰值
试过功能findpeaks()
,但不能真正让它工作!任何帮助将不胜感激。
答案后可进行编辑从user3288586 新的代码,工作:
prominence_factor = 0.1
[peakPos , locPos] = findpeaks (signal,time,'Npeaks',1,'MinPeakProminence', prominence_factor);
[peakNeg, locNeg] = findpeaks (-signal,time, 'Npeaks', 1, 'MinPeakProminence', prominence_factor);
谢谢!它不适用于你的公式中的倒置信号。然而,当我只是接受我的信号(-original_signal)的负面信号时,它似乎运作良好。任何线索? – user3406207
如果有效,请使用它。然后接受他的回答:-) – tim
很难说。如果您可以分享您的代码和信号,这将有所帮助。 – Amal