2012-06-04 3 views
0

나는 깊이 이미지를 사용하여 kinect에 의해 추적되는 손가락 끝을 사용하여 마우스 커서를 움직이는 프로젝트 작업을하고 있습니다. 나는 추적을해야 할 것 같지만 마우스를 부드럽게 움직이는 것이 문제입니다. 내 프로그램에서 마우스를 움직이면 부드러운 방식으로 움직이지 않고 대신 픽셀에서 점프로 이동합니다. 내 질문은, 내 커서 움직임을 부드럽게 inorder 골격 추적의 부드러운 매개 변수 같은 것을 사용하는 방법이 있나요?Kinect 스무딩 마우스 움직임

+1

http://stackoverflow.com/questions/10756772/smoothing-mouse-movement 중복 –

답변

0

필자는 kinect depth 이벤트가 발생할 때 (사용자의 손가락에 대한 새로운 정보를 얻을 때)에만 마우스를 움직이는 것이 문제라고 생각합니다.

Windows에는 기능이 없지만 사용자가 만들 수 있습니다. 추적 된 손가락의 dy/dx를 사용하여 P (쉬운), PD (조금 더 세게) 또는 PID (조금 더 힘든) 컨트롤러를 구현해보십시오. 이렇게하면 kinect의 심도 이벤트 사이에서도 마우스가 약간의 속도로 움직이며 더 부드럽게 움직여야합니다.

0

몇 가지를 사용할 수 있습니다.

라이브러리 Coding4Fun.Kinect.Wpf에 포함 된 방법을 사용할 수 있습니다. 호출이 scaleTo()

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

매개 변수 스켈레톤 인식을 부드럽게하는 데 도움이됩니다. 정확한

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

<