How can I split the signal in matlab

18 vues (au cours des 30 derniers jours)
studentmatlaber
studentmatlaber le 7 Mar 2021
I have 25 signals. these signals exist as a double. that is, when I want to plot a signal I have, I write the plot (t1, y1) command. I am sharing the screenshot of this graph of my signal with you. My goal here is to divide the signal in two from the place I marked. The left side of the graph is noise, and the right side of the graph is noise + signal. Since I have 25 different signals, the noise width of each is different. The code that I want to write here is that these 25 signals can be automatically divided into two as noise and noise + signal.
  3 commentaires
studentmatlaber
studentmatlaber le 7 Mar 2021
this is a signal from a sensor. The left side of the graph is the ambient noise. On the right, the signal is detected. I will divide the signal from the place I marked and take the energy of the noise (for 25 signals) and look at the histogram.
Walter Roberson
Walter Roberson le 8 Mar 2021
I don't see it. To me the ambient noise appears to be approximately +/- 0.05 .

Connectez-vous pour commenter.

Réponse acceptée

Image Analyst
Image Analyst le 8 Mar 2021
How about
index = find(signal > 0.47, 1, 'first');
noisyLeftSide = signal(1:index);
goodRightSide = signal(index+1 : end);
  4 commentaires
studentmatlaber
studentmatlaber le 9 Mar 2021
We manually set the 0.47 value in this chart, but I have 600 signals. Can it be written into a code that can automatically determine this threshold value?
Walter Roberson
Walter Roberson le 9 Mar 2021
No, but we just might be able to estimate the +/- 0.05-ish noise that I propose is the true ambient noise. It is not clear to me that 0.47 is objectively justifiable.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by