我正在为我的最后一年大学项目开发一个Kinect应用程序,我需要开发一些手势识别算法。我对此有一些建议。
我的初始算法是检测用户手在特定时间范围内向kinect靠近移动。现在我会说这是一个任意的500毫秒。
我的想法如下:
这是我第一次尝试这样的事情,并希望对我最初的天真实施提出一些建议。
感谢。
答案 0 :(得分:4)
您打算使用官方Kinect SDK或开源驱动程序(libfreenect还是OpenNI)?
如果您使用的是Kinect SDK,可以先看一下:
(Candescent NUI更专注于手指检测)
如果您打算使用开源驱动程序,请尝试OpenNI and NITE。 NITE带有手动跟踪和手势(滑动,圆形控制,2d滑块等)。
这个想法至少要有手检测并从那里继续进行。如果你有这个,你可以实现像Unistroke Gesture Recognizer的改编,或者看看其他技术,比如运动模板/ MotionHistory等......让它们适应你可以玩的新数据现在。
古德勒克!
答案 1 :(得分:2)
如果您只是想要识别用户向您挥手,您的方法应该有效(尽管由于数据噪音很容易导致失火)。您正在尝试做的事情在模式识别领域非常顺利。对于这个以及非常类似的任务,人们经常使用隐藏的马尔可夫模型并取得巨大成功。您可能想查看维基百科文章。我不是C#人,但据我所知,微软有非常好的C#统计推断库,他们肯定会包含HMM实现。