Finding local minima for a signal

105 ビュー (過去 30 日間)
neamah al-naffakh
neamah al-naffakh 2016 年 8 月 8 日
コメント済み: Med Aymane Ahajjam 2019 年 1 月 27 日
I have used the (findpeaks) function in Matlab in order to find the locations and the value of the peaks ( Local Maxima ) in the signal.
please, Is there any function to extract the local minimums of the following graph?

採用された回答

Walter Roberson
Walter Roberson 2016 年 8 月 8 日
If you have a routine that can find local maxima, then to find local minima, apply the local maxima routine to the negative of the data. Like
findpeaks(-X_Segments{nn},'MinPeakDistance', 20)
  2 件のコメント
neamah al-naffakh
neamah al-naffakh 2016 年 8 月 8 日
thank you so much mate
Med Aymane Ahajjam
Med Aymane Ahajjam 2019 年 1 月 27 日
Thanks!

サインインしてコメントする。

その他の回答 (3 件)

Azzi Abdelmalek
Azzi Abdelmalek 2016 年 8 月 8 日
Use
findpeaks(-your_signal)
  2 件のコメント
neamah al-naffakh
neamah al-naffakh 2016 年 8 月 8 日
thank you so much mate
Med Aymane Ahajjam
Med Aymane Ahajjam 2019 年 1 月 27 日
Thanks!

サインインしてコメントする。


Image Analyst
Image Analyst 2016 年 8 月 9 日
You're probably okay with your data, but beware of findpeaks() if your max or min spikes have flat tops or bottoms. It will give only the first index. In that case you want to use the imregionalmin() function from the Image Processing Toolbox. Just look at this example with a min that has a flat bottom:
data = [ 1 3 4 2 2 2 4 4 5 6] % Flat bottom with value of 2 from indexex 4-6
[peakValues, indexesOfPeaks] = findpeaks(-data)
peakValues = -peakValues
minIndexes = imregionalmin(data)
data =
1 3 4 2 2 2 4 4 5 6
peakValues =
-2
indexesOfPeaks =
4
peakValues =
2
minIndexes =
1 0 0 1 1 1 0 0 0 0
  2 件のコメント
neamah al-naffakh
neamah al-naffakh 2016 年 8 月 9 日
hi mate, thanks for your effort i will check your solution and reply back , but do you mind have a look to this question please?
Image Analyst
Image Analyst 2016 年 8 月 9 日
I don't know how to answer that question.

サインインしてコメントする。


shima tavakoli
shima tavakoli 2018 年 2 月 13 日
my signal is asymmetric and its negative parts are different. how to deal with negative parts peaks then? cant negative the signal in this case!
  1 件のコメント
Image Analyst
Image Analyst 2018 年 2 月 13 日
Who knows? You forgot to read this and forgot to attach your signal and a screenshot of it, so there's not much I can say, other than to write custom code to deal with it.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAI for Signals についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by