How to separate noise from signal?

16 ビュー (過去 30 日間)
W L
W L 2013 年 9 月 2 日
コメント済み: wissal berrhili 2021 年 6 月 7 日
Hi all,
I have got a question regarding noise removal.
I am doing a sensor project, and I need to measure output signal from the sensors. Theoretically speaking, output signal should be sine wave.However, sensor itself has got sine-wave-like noise. Therefore the supercomposition of two waves forms weired output signal.
Now, I have two separated excel files, one is noise, the other one is output signal (Weired shaped one). I'm wondering how to get net output signal (without noise).
By the way, two waves have different frequencies and amplitudes.
Thanks so much for your help.
Lin
  2 件のコメント
Walter Roberson
Walter Roberson 2013 年 9 月 2 日
How close to a true sine wave is the output signal?
Perhaps you could post images of the fft of the desired output signal, and the fft of the noisy version of it ?
W L
W L 2013 年 9 月 4 日
編集済み: W L 2013 年 9 月 5 日
Thanks for help.
I don't know which output signal you are talking about. If we are talking about net output signal, it should be a perfect sine wave since the input is sine wave.

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

回答 (4 件)

Image Analyst
Image Analyst 2013 年 9 月 5 日
Take the FFT. Find the two largest peaks - these represent your dominant frequency. Zero out everything else, then inverse FFT. You'll have only the dominant harmonic remaining in your output signal. All the noise (at any other frequency) will be filtered away.
  5 件のコメント
Image Analyst
Image Analyst 2013 年 9 月 6 日
If you want a hardware solution, try a lock-in amplifier http://en.wikipedia.org/wiki/Lock-in_amplifier
wissal berrhili
wissal berrhili 2021 年 6 月 7 日
@Image Analyst how can we put everything else to zero?

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


rifat
rifat 2013 年 9 月 4 日
You can pass your signal through a bandpass filter centered around the frequency of your original (without noise) output and adjust the bandwidth.
  4 件のコメント
W L
W L 2013 年 9 月 5 日
I have uploaded to Matlab file exchange. However, it takes time to review my file. May I please send to you via email? Sorry for being troublesome.
Walter Roberson
Walter Roberson 2013 年 9 月 5 日
MATLAB file exchange is not suitable for this purpose. Create an account on a file storage site, upload the file to there, and post the link. Some file storage sites are listed at http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers

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


Youssef  Khmou
Youssef Khmou 2013 年 9 月 5 日
  2 件のコメント
W L
W L 2013 年 9 月 6 日
Much appreciated. My data is in Excel files, how do I do this Kalman filter? Could you please give me more info?
Youssef  Khmou
Youssef Khmou 2013 年 9 月 6 日
copy the data from excel and paste it to workspace a=[paste...]; or use import utility,

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


Chad
Chad 2013 年 9 月 6 日
Or you can cross correlate the output signal with a sine wave of known frequency. Try xcorr and fft.
Did something similar in my statistical analysis class.
Also read up on correlation and auto corelation and cross correlation
  1 件のコメント
Image Analyst
Image Analyst 2013 年 9 月 6 日
The FFT method is what I suggested and does not require than you know the frequency in advance since you'll figure it out. The cross correlation by itself won't work unless you know the reference frequency in advance, and if you already knew that, then you'd just use the reference frequency instead of the actual signal.
By the way, that's sort of what a lock-in amplifier does ( http://en.wikipedia.org/wiki/Lock-in_amplifier) which is a hardware solution for extracting the true signal from a noisy signal when the signals are carried on a frequency that's known. A lock-in amplifier will filter out the noise before you even digitize it, and we all know if you can start with a better signal, the signal processing needed later will be minimized and is the far better way to do it. It's always harder to fix up a bad signal in software later than to just start with a clean signal.

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

カテゴリ

Help Center および File ExchangeGet Started with Signal Processing Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by