Azzera filtri
Azzera filtri

how to find the change in curve

4 visualizzazioni (ultimi 30 giorni)
prashant singh
prashant singh il 25 Set 2017
Risposto: Image Analyst il 25 Set 2017
i have plotted a curve on my image. The curve is shown in red. I want to find the jump in my curve with some good algroithm. The area in the curve where i want to detect jump is shown in blue. I have tried to find difference between two point to detect jump but that always does not return me the points in the curve i want(show in blue).
  2 Commenti
Cedric
Cedric il 25 Set 2017
But you have the red curve as e.g. a row vector already? If so, could you attach it?
prashant singh
prashant singh il 25 Set 2017
Attaching row vector for the curve.

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 25 Set 2017
Have you tried findchangepts()?

Più risposte (1)

Star Strider
Star Strider il 25 Set 2017
Try this:
D = load('ridx.mat');
ridx = D.ridx;
ridx = max(ridx)-ridx;
x = 1:length(ridx);
dt_ridx = detrend(ridx);
mask = dt_ridx > 27;
figure(1)
plot(x, ridx)
hold on
plot(x(mask), ridx(mask), '-r', 'LineWidth',1.2)
hold off
grid
Here mask is a logical vector that identifies the ‘jump’ region.

Community Treasure Hunt

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

Start Hunting!

Translated by