How to detect a peak from a graph

A part of my work need me to peak the peak from a graph of cyclic nature with time vs velocity. I tried to use treshold and and others options. to locate the maximum peak but could also include the local maximums . Is there anyway of picking the maximum value? such as sliding window ?

 Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 3 Apr 2013
Use findpeaks function

2 Comments

I did use that and it also includes the local maximums which are not my needs.
Image Analyst
Image Analyst on 4 Apr 2013
Edited: Image Analyst on 4 Apr 2013
But you accepted this answer?

Sign in to comment.

More Answers (3)

For local peaks I'd use findpeaks() in the Signal Processing Toolbox, or imregionalmax() in the Image Processing Toolbox. For a global peak, simply use the max function
[maxValue, indexOfMax] = max(yourSignal);

4 Comments

This gives me the global max and is single value. My graph has a cyclic characteristics with many peaks and troughs. What I want is those peaks excluding the local maximums . If I explained it correctly. Tnx
Well now I have no idea if you want all the local peaks or not. How many peaks do you want? One or multiple? I think it's time for you to post an image of your data with arrows pointing to the peak(s) on the signal that you want to detect. Try http://snag.gy or http://tinypic.com.
Ok thank you I have already done it with your above answer
You're welcome. Glad I could help.

Sign in to comment.

pramod kumar
pramod kumar on 4 Apr 2013
even i am also working on to find the peak of the signal i have tried inbuilt function [peak_value, peak_location] = findpeaks(Tx1Rx_1100mm_3plates);

1 Comment

After reading this: http://www.mathworks.com/matlabcentral/answers/6200-tutorial-how-to-ask-a-question-on-answers-and-get-a-fast-answer, post your own question, along with screenshot of your signal, and code (including data) that we can copy and paste to reproduce your situation.

Sign in to comment.

Chinnaiah Golla
Chinnaiah Golla on 5 Nov 2014
If you simply want to obtain the maximum(Peak) value of signal by excluding the local maximas, you can use the max function.
max_val=max(signal);

Community Treasure Hunt

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

Start Hunting!