How to remove the background noise from a signal?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Steven
el 11 de Nov. de 2019
Hi. I have the following signal. I am mainly interested in getting the peaks of the red signal. So I want to remove the part (background noise whose data I have) within the blue box.
1. How can I do it?
2. If I want to remove the noise, can I simply subtract the original values in time domain? something like:
y = Signal (t) - Noise (t)
or I have to do it in freq domain?
![Plot1 - Copy.jpg](https://www.mathworks.com/matlabcentral/answers/uploaded_files/247800/Plot1%20-%20Copy.jpeg)
Thanks
0 comentarios
Respuesta aceptada
Daniel M
el 11 de Nov. de 2019
Seems like you have determined what you want your threshold to be.
You can set those values to zero (or whatever the mean of your signal is), pretty easily:
x; % this is your data
xpeaks = x; % duplicate
thresh = 10; % or whatever it is
meanx = mean(x);
xpeaks(abs(x) <= threshold) = meanx;
% xpeaks will contain only the "peaks"
2 comentarios
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!