How to filter 3D acceleration data?

2 views (last 30 days)
Christian Weich
Christian Weich on 23 Mar 2017
Commented: Jan on 23 Mar 2017
Hallo! I am confused applying a filter to my acceleration data. My raw data (sampling rate was 300 Hz over 60secs) contains a time column and x,y,z data for 3d acceleration. Sth like this: time AXR AYR AZR 0 -4.02602 6.067654 -1.940437 0 -0.661081 5.62003 -0.228501 0 3.280461 4.0892 -0.010089 4 6.943661 1.708023 -1.461298 8 8.686063 0.517795 -3.138884 12 8.151641 0.409309 -3.369099 17 6.167667 -0.459543 -2.230525 21 4.064739 -1.824122 -1.445867 25 1.810073 -3.279261 -2.072385 29 0.073677 -4.642182 -3.47213 33 -0.369549 -6.010348 -4.166706
So my task is now to apply a so called F3 filter (see paper attached). I did the extension, I applied the FFT . And I also wrote the code for the other steps, even the windowning process.
But my question is which kind of data do I have to apply to my windowing. Because it is dealing with a cutoff ( we want 4.5 Hz) I guess we need to filter the frequencies. But how do I connect them to my raw data.
So in other words... I do not see a way how to filter my raw data by applying the windowing process to my frequencies from the signal. What confuses me further is the fact that the dft result is a double complex.
Uff! I hope somebody can help me with this challenge! I would really appreciate that!
Thank you so much Kind regards from Germany Christian

Answers (1)

Jan
Jan on 23 Mar 2017
Edited: Jan on 23 Mar 2017
As usual the paper is a little vague concerning the implementation of the algorithm. Did you try to contact the author already? He has written a code and perhaps is willing to share it. Maybe it is written in Matlab also, or you could do this with his help and publish it in the FileExchange. This would be a nice promotion of the paper and useful for other readers.
According to the description, the window is applied to the frequency spectrum after the FFT:
3. Windowing of the frequency spectrum by multiplying with a transfer function
  2 Comments
Christian Weich
Christian Weich on 23 Mar 2017
Thank you very much! I even have personal contact but because he does not know how matlab works he cannot help me with that. Thats why I tried it here.
So the quote says: ...multiplying with a transfer function. But how should I do that? I have the frequency spectrum, I can window it but than I have only the frequncies left BUT the thing is that I want values as a result which are the filtered raw data. So they look pretty similar as the initial ones.
My problem is that I am not able to transfer my FFT output to the windowning process to filter my raw data.
Thank you very much
Jan
Jan on 23 Mar 2017
Some C, Numpy, Julia or Fortran code would help also.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!