How can I flip the top area of the peak that is going down?

1 次查看(过去 30 天)
Hi, I would like to flip the part of the peak that goes gown so its pointed upward. I want there to be a space between the data where the top-points are to mark that this was the end-points and that the top peak goes upward instead of downward.. how can you do this?

回答(1 个)

Image Analyst
Image Analyst 2015-5-5
For one such section, this should work (untested):
peakValue = max(signal);
index1 = find(signal > (peakValue - 0.001), 1, 'first')
index2 = find(signal > (peakValue - 0.001), 1, 'last');
signal(index1:index2) = 2 * peakValue - signal(index1:index2);
  2 个评论
Lizan
Lizan 2015-5-5
编辑:Lizan 2015-5-5
Can you comment on what you are doing in this line:
2 * peakValue - signal(index1:index2)
Image Analyst
Image Analyst 2015-5-5
It's basically finding the distance between the max (top of the box) and the signal below the top of the box. Maybe if I did it more explicitly like this
delta = abs(peakValue - signal)
% Now add the delta to a vertical offset of peakValue
newSignal = peakValue + delta
but if you do the math you get
newSignal = peakValue + peakValue - signal
newSignal = 2 * peakValue - signal
So that's how I got the formula.

请先登录,再进行评论。

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by