I've been given a signal, how can I find the peaks with the islocalmax function?

1 次查看(过去 30 天)
How can I find the peaks using the islocalmax function, with the attachment below as my only source of information?
  4 个评论
Image Analyst
Image Analyst 2018-12-22
编辑:Image Analyst 2018-12-22
For example when the help documentation gave the example:
x = 1:100;
A = (1-cos(2*pi*0.01*x)).*sin(2*pi*0.15*x);
TF = islocalmax(A);
plot(x,A,x(TF),A(TF),'r*')
Is there some reason you couldn't replace the A with your data?
See my answer below where I did that for you.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2018-12-22
All you have to do is to put your signal in for the "A" in the help demo. Try this:
s = load('signals (1).mat')
signal = s.Signal;
% Find local max, following the demo in the help
x = 1 : length(signal);
TF = islocalmax(signal);
plot(x, signal, x(TF), signal(TF), 'r*')
grid on;
0000 Screenshot.png
  4 个评论
Image Analyst
Image Analyst 2018-12-29
OK thanks. Though it pretty much looks like my code except that you use black stars instead of red ones, plot in two lines of code instead of 1, and have different variable names. But it's substantially the same except for very minor differences. Would you mind "Accepting this answer" so others know it's solved.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Measurements and Feature Extraction 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by