Find discontinuities and lift up or pull down the part after the discontinuity
15 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi everyone i have a singal with discontinuities.Does anyone know how can i find the discontinuities and at those points lift up or pull down the remaining signal?
3 commentaires
Réponse acceptée
Jan
le 13 Déc 2021
x = linspace(1, 10*pi, 200);
y = sin(x);
y(60:90) = y(60:90) + 1;
y(120:180) = y(120:180) - 1;
yOrig = y;
limit = 0.2;
dy = [0, diff(y)];
jump = strfind(abs(dy) > limit, [false, true, false]);
for ijump = 1:numel(jump)
k = jump(ijump);
y(k+1:end) = y(k+1:end) - dy(k+1);
end
figure
axes('NextPlot', 'add')
plot(x, yOrig, '-r', x, y, 'bo')
y2 = lowpass(y, 30, 200);
plot(x, y2, 'c+')
8 commentaires
Plus de réponses (1)
Image Analyst
le 13 Déc 2021
See a similar discussion started/asked by Matt J:
5 commentaires
Image Analyst
le 15 Déc 2021
I guess those were just some parameters to cause a chunk of the waveform to shift by a reasonable amount.
Voir également
Catégories
En savoir plus sur Computer Vision with Simulink dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!