Is there a built in function like MinPeakHeight but for maximum numbers?

6 次查看(过去 30 天)
It would be something like MaxPeakHeight to find negative peaks. I have a random signal with positive and negative values and need to find negative peaks.

回答(3 个)

Walter Roberson
Walter Roberson 2022-3-18
Work with the negative of the signal; the most negative original signal would become the most positive on the transformed signal.

Image Analyst
Image Analyst 2022-3-18
Walter is right. You just didn't understand. Here is some code to explain it. You can do
% Find peaks.
[peakValues, indexesOfPeaks] = findpeaks(signal); % Add options if you want.
% Find valleys. They will be peaks of the inverted signal.
[valleyValues, indexesOfValleys] = findpeaks(-signal); % Add options if you want.
% Now invert the values to make them upside down again.
valleyValues = -valleyValues;
Note it doesn't matter if your signal is all positive, all negative, or even crosses the y=0 axis so that it has both positive and negative values. The code above will work. There are some options (granted most of them are confusing) that can help you narrow down the peaks and valleys to just the ones you want.
  2 个评论
Image Analyst
Image Analyst 2022-3-18
And I deleted your tags because this has nothing to do with compiling or the Coder product since you're not talking about building a standalone executable, or embedding your code into hardware (actual silicon on a standalone integrated circuit chip). So no embedding into silicon, no code generation, no compiling, etc. It's just a straightforward MATLAB program.

请先登录,再进行评论。


Star Strider
Star Strider 2022-3-18
Another option is the islocalmin function (introduced in R2017b).

标签

Community Treasure Hunt

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

Start Hunting!

Translated by