필터 지우기
필터 지우기

Find a curve bend

조회 수: 2 (최근 30일)
Andrew
Andrew 2012년 11월 21일
Hi, I have a time-dependent signal (noise), and I need to find a quantity of curve bends (maxima of this function) which get into some range of signal amplitude. How can I do this? Thanks in advance.

답변 (1개)

Image Analyst
Image Analyst 2012년 11월 21일
편집: Image Analyst 2012년 11월 21일
I think you need to phrase this better, or provide an example because it can be interpreted in a number of ways. What do you mean by "quantity"? Do you mean you want to find the number of maxima in your signal? Like 1 for a Guassian, or infinite for a sine wave or some limited number for a finite chunk of a sine wave? What are "curve bends"? How is that different than the maxima? Like for a sine wave, is that just the top peak of the sine hump, or some finite stretch where you can actually see some of the top of the curve? What does "which get into some range of signal amplitude" mean? For the sine wave example, do you want to look at the parts where the sine wave is in the 0.5 to 0.7 range only? And then look for maxima for just the parts of the sine wave that are in that range only? All of this is very unclear and ambiguous. So here are some snippets that might help in the meantime (before you clarify)
[maxValues, indexsAtMax] = max(yourSignal);
numberOfMaxes = length(maxValues);
extractedIndexesWithinRange = yourSignal > lowThreshold & yourSignal < highThreshold;
thoseValues = yourSignal(extractedIndexesWithinRange);
peakValues = findpeaks(yourSignal); % Requires Signal Processing Toolbox.
peakValues = imregionalmax(yourSignal); % Requires Image Processing Toolbox.
I could go on but it's better to wait for your clarification and example.

카테고리

Help CenterFile Exchange에서 Descriptive Statistics에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by