Kinect–How to Apply Smooths Frame Display Using TransformSmoothParameters


In my previous posts about Kinect I’ve talked about getting started with Kinect SDK from Kinect .NET SDK–Getting Started , Kinect – Getting Started – Control Camera Angle and Kinect – Getting Started – Become The Incredible Hulk

Kinect SDK has a lot to over and now I’m going to talk about how to improve Kinect movement by applying TransformSmoothParameters.

Channel 9 Video

The Kinect Nui SDK allow you to apply TransformSmooth  just by calling the SkeletonEngine and set it to true:

_kinectNui.SkeletonEngine.TransformSmooth = true;

But this is not enough because you need to define how smooth it’s doing to be, for that we going to use the TransformSmoothParameters

namespace Microsoft.Research.Kinect.Nui
{     [StructLayout(LayoutKind.Sequential, Pack = 8, Size = 24)]     public struct TransformSmoothParameters     {         public float Smoothing { get; set; }         public float Correction { get; set; }         public float Prediction { get; set; }         public float JitterRadius { get; set; }         public float MaxDeviationRadius { get; set; }     }

Here is an example:
var parameters = new TransformSmoothParameters
{     Smoothing = 1.0f,     Correction = 0.1f,     Prediction = 0.1f,     JitterRadius = 0.05f,     MaxDeviationRadius = 0.05f
_kinectNui.SkeletonEngine.SmoothParameters = parameters;
Applying TransformSmoothParameters parameters will improve Kinect movement, you will be able to see the pointer isn’t jumping from place to place. 

Add comment
facebook linkedin twitter email

Leave a Reply