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
Thanks

 採用された回答

Daniel M
Daniel M 2019 年 11 月 11 日

1 投票

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 件のコメント

Steven
Steven 2019 年 11 月 14 日
編集済み: Steven 2019 年 11 月 14 日
Thank you.
So it is not needed to take both of them to freq domain and then subtract them?
Daniel M
Daniel M 2019 年 11 月 14 日
That's another approach, but it was unnecessary in this case.

サインインしてコメントする。

その他の回答 (0 件)

質問済み:

2019 年 11 月 11 日

編集済み:

2019 年 11 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by