Loosening position and orientation in Kinect

I use Kinect to get the positions and orientation of each joint and then send them to Unity. I've noticed that there are a lot of "jumping" or value fluctuations, for example, sometimes I don't move my hand, and in Unity it rotates 180 degrees.

I want a good way to smooth out these fluctuations . I have heard about Kalman filter and I am implementing the code written here.

http://www.dyadica.co.uk/very-simple-kalman-in-c/

And that's not bad for positions, but not so good for orientation ... If you know the best approaches or the best way to implement Kalman, it would be nice.

+3


source to share


1 answer


First of all, you need to check how well your sensor is able to pick up your options and movements. If the sensor is good, then a Kalman filter is a good way to start eliminating vibration and other noise. After looking at your code, you have implemented a one dimensional KF which is ok. But in your case, your requirements look like you need the correct orientations and positions, for which you might have to design multidimensional KF (matrix format equations to remove noise in multidimensional space). You will get a better understanding of KF with these links.

Try to implement multidimensional KF and see how well your system responds to it. If you are not satisfied with the performance of your system, then you may need to extend the filter by making some changes. In the recent past, there have been some other variants of KF which are Extended KF and Unscented KF. Kalman filter fails in some practical scenarios where



  • Noise is not Gaussian zero mean
  • The input signal from the sensor is non-linear (obvious in practice)

In practical scenarios, the noise is never zero and the input is not linear. For this, the KF extension was introduced. You can go through Extended kalman filter

and unscented kalman filter

that overcomes the above disadvantages. Both algorithms are improvements to KF that work with practical examples and can only be understood if you have an idea about KF.

+2


source







All Articles