繁体   English   中英

为基于Kinect的手势识别构建HMM

[英]Building HMM for Kinect based gesture recognition

我有一个概念上的问题。 我正在创建一个使用Kinect进行手势识别的程序。 我有一些按类别(圆圈,滑动等)划分的手势数据。 目前,我只分析一只手。 我记录所有帧(30fps)。

(*)为了使数据离散且位置无关,我计算了连续点之间的角度。

现在,我想为每种手势类型创建hidden Markov models

现在,我需要为HMM确定一些状态。 怎么做? 我考虑过要找到最长的手势(及时)。 例如,我有3个手势,第一个1,2s ,第二个1,4s和第三个1,5s 所以1,5s是最长的。 现在,我想每250毫秒(每秒钟内4个样本)对每个帧应用(*)。 因为我最长的手势是1,5s ,所以NumberOfStatesForHMM = 1500ms / 250ms = 6 states -这应该是最佳状态吗?

我不确定如何为HMM定义状态:/如果上面的想法是正确的,当存在(例如)6个状态且一个手势在1s之后结束时,如何计算过渡概率,因此我分析了4个状态(过渡概率)状态4至5和5至6等于0?)。

我读了这篇论文,但是我不确定如何解决我的问题...

我从事过类似的动态手势识别项目(尽管使用的是更简单的网络摄像头,而不是Kinect)。 就我而言,我将手势分为左,右,Circular-Clockwise,Circular-AntiClockwise ...等类。 由于您将考虑连续点之间的角度,因此这就是您的观察序列。 至于州,您的州与观察国之间不一定总是存在逻辑关系。 我正在用8个手势操作。 现在,每个输入模式都有大约12个观察符号,但没有。 每个类的状态不同。 例如:左:2个状态右:3个状态顺时针旋转:4个状态,等等。

好处是,从我从维特比算法得到的状态序列输出中,我可以直接获得最大状态数,因此也可以得到我的班级。 另外,在学习阶段,我的Baum-Welch实现会根据否自动学习类。 状态。 您可以参考我的博客文章(其中描述了我在项目中所做的使用HMM识别手势的方法)以获取更多信息。 希望对您有帮助。

链接在这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM