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

조회 수: 5 (최근 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.
Hannah Oduntan
Hannah Oduntan 2018년 12월 22일
I have no idea, I’ve tried that code already, but I ended up figuring it out, thank 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.
Hannah Oduntan
Hannah Oduntan 2018년 12월 29일
Yeah it is, and yes I will, thanks so much for the help!

댓글을 달려면 로그인하십시오.

추가 답변 (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