0

I'm working on a project to move the mouse cursor using the fingertip which is tracked by kinect using Depth Image. I'm albe to do the tracking but the problem is in moving the mouse in a smooth way. In my program, when I move the mouse it doesn't move in a smooth way , but instead it just jumps from pixel to pixel. My question is , Is there a way to use something like the smooth parameters of the skeletal tracking inorder to smooth my cursor's movement ?

1

2 Answers 2

0

I believe the issue is that you are only moving the mouse when the kinect depth event fires (when you get new information about the person's finger).

There is no function in windows, however, you can create one. Try implementing a P (easy), PD (a little harder), or PID (a little harder still) controller using the dy/dx of the tracked finger. This way, even between the kinect's depth events, the mouse will be moving with some velocity, and should appear to move more smoothly.

Sign up to request clarification or add additional context in comments.

Comments

0

you can use some things.

You can use a method contained in the library Coding4Fun.Kinect.Wpf; called scaleTo ()

var scaledHandRight = ElgatoElegido.Joints[JointType.HandRight].ScaleTo(1366, 768, 0.5f, 0.4f); <

and help with smoothing parameters skeleton recognition.

 var parameters = new TransformSmoothParameters { Smoothing = 0.3f, Correction = 0.0f, Prediction = 0.0f, JitterRadius = 1.0f, MaxDeviationRadius = 0.5f }; 
 newSensor.SkeletonStream.Enable(parameters); 

<

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.