首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于Kinect的手势识别中HMM的构建

基于Kinect的手势识别中HMM的构建
EN

Stack Overflow用户
提问于 2013-04-15 04:34:19
回答 1查看 991关注 0票数 1

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

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

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

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

我不确定我应该如何为HMM定义状态:/如果我上面的想法是正确的,那么当1s之后有6个状态和一个手势结束时,如何计算转换概率,所以我分析了4个状态(从状态4到5和从5到6的转换概率等于0?)。

我读了THIS的论文,但我不太确定如何解决我的问题……

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-22 18:52:26

我做过一个类似的动态手势识别项目(虽然使用的是更简单的摄像头,而不是Kinect)。在我的例子中,我将我的手势分类为:左,右,顺时针方向,逆时针方向等等。由于您将考虑连续点之间的角度,因此这将是您的观察序列。至于状态,在你的状态和观察之间可能不一定总是有逻辑关系。我做了8个手势。现在,我对每个输入模式都有大约12个观察符号,但没有。每个类的状态是不同的。例如:左:2个州,右:3个州,顺时针:4个州,等等。

这样做的好处是,从Viterbi algo得到的State序列输出中,我可以直接获得最大状态数,从而得到我的Class。此外,在学习阶段,我的Baum-Welch实现根据no自动学习了类。国家的。你可以参考我的博客文章,其中描述了我使用HMM识别手势的方法,就像我在我的项目中所做的那样,以获取更多信息。我希望它能对你有所帮助。

Here is the Link

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16004052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档