Kinect手挥手势

时间:2012-03-29 04:04:42

标签: c# wpf kinect

我正在使用 Kinect SDK 进行kinect应用程序。

结果我希望它必须能够识别挥手5秒钟。做任何事情如果有的话任何人都知道怎么做?

我正在使用WPF应用程序。想有一些例子。我对Kinect很新。

3 个答案:

答案 0 :(得分:4)

检查Kinect Toolbox项目@ http://kinecttoolbox.codeplex.com/。它具有滑动手势检测器实现。

答案 1 :(得分:4)

你可以写一个简单的alghoritm来获得工资手势。对于您的示例,您需要一个时间限制

public static int timeLimit = 5000;

现在想想波浪。它有3个州

1)当你的手在X轴上与肘部处于同一位置时,呈中性姿势。

2)当手在肘部右侧时

3)当手在肘部左侧时

请记住,你从状态1开始。要从2到3,你需要在中间使用1。所以你可以看到有一个组合 1 - 2 - 1 - 3 - 1< - 第一波

你可以从联合职位获得的安全性

first.Joints[JointType.HandRigh].Position.X

这是简单的数学。

关于秒。只需从(例如)SkeletonFrame时间戳获得并比较

if((currentTimestamp - startTimestamp) < MainWindom.timeLimit) 

startTimestamp是您的手就位的时间戳。

还添加一个标志,表示该手牌处于良好的轨道上

我希望它有所帮助

答案 2 :(得分:1)

如果您需要了解基础知识,我建议Channel 9 Kinect for Windows Quickstarts

回到挥动的手势,使用极地coördinates之类的数学来检查你的手之间的距离,让我们说你的中肩并计算角度。

通过这种方式,您将能够检查以前的值。 这是清楚还是不清楚?