Skip to main content
2 of 6
added 89 characters in body
Andres
  • 193
  • 1
  • 6

Using Total Variation Denoising to clean accelerometer data

I know this is maybe a very basic question but I am doing this as a hobby and I can't find a solution to this problem. Basically I am trying to remove some noise from data I am reading from an accelerometer. This is what I want to achieve:

enter image description here

I read here that Total Variaton Denoising would fit my needs. So I read this article from Wikipedia and I think I have to use one of this equations:

enter image description here

enter image description here

But I don't understand how I apply this to my signal. Suppose I have a set of x,y points like in the plots above, how I apply the equation to that data? I implemented some simple low-pass and high-pass filters like this:

gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0];

But this is maybe too complex and I don't know where to start or how. I want to implement this in Java or C so Matlab is not an option (I have seen a lot of MatLab implementing this). I will appreciate any help to guide me in the right direction!

Andres
  • 193
  • 1
  • 6