How do I use a loop to remove all of the noise signal segments?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
So there is a signal that has 0.5 secs of silence, followed by 1 sec worth of noise, another 0.5 secs of silence, and 1 sec sine wave starting at 100Hz. This pattern continues until the sine wave reaches 1000Hz. I need to use a loop to remove the noises and silence to preserve the sine waves segments. Any tips on how I can do this? Thank you!
4 Kommentare
dpb
am 6 Dez. 2021
If you want somebody to play with your signal, make it easy for them...attach a .mat file with some sample data; don't expect somebody else to try to reproduce your data for you....
Antworten (1)
Chunru
am 7 Dez. 2021
load signal
% detect the env
y = sqrt(2)* movstd(x, [200 200]);
figure
plot(x); hold on
plot(y)
% extract signal
z = x(y>0.8);
figure
spectrogram(z, 2048, 1024)
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!