0

I have data from an accelerator which is a bit noisy (as it seems to me). The manufacturer states the noise spectral density as 45 micro g /(Hz)^0.5.

How do I use this information to remove noise from the time signal. I don't have a signal processing background. So can anyone point me to a source where I can find how this problem can be handled.

Thank you all.

The acceleration signal and its frequency content look like this

I used the algorithm mentioned here but I doesn't seem to work for me. I found the following code at a blog. Do you think it is implemented correctly? I have tried to vary my cutoff frequency, but the noise is still there

def lpf(x, Fc, Fs, x0 = None): 
     alpha = 1 - exp(-2.0 * pi * Fc / Fs) 
     y = zeros_like(x) 
     yk = x[0] if x0 is None else x0 
     for k in range(len(y)): 
         yk += alpha * (x[k]-yk) 
         y[k] = yk 
     return y 

The noise seems to be randomly distributed and not in particular range of frequencies.

ArkanSaaS
  • 193
  • 2
  • 15
  • See: [this question and answer](https://stackoverflow.com/a/2272556/253056) re using a low-pass filter to reduce noise on an accelerometer signal. – Paul R Jul 27 '17 at 15:54
  • Please, @Nischal add this snippet to your original post with the "edit" mention, so the formatting will be correct. – Paradox Jul 28 '17 at 09:37
  • Finally found the answer, I had to use spectral subtraction method. – ArkanSaaS Jul 31 '17 at 13:50

0 Answers0