用隐马尔可夫模型进行手形分析

时间:2013-03-21 15:40:36

标签: opencv machine-learning classification gesture-recognition hidden-markov-models

我目前正致力于动态手势识别系统。我选择了手形的曲率特征。此刻,我能够获得手轮廓曲率的角度列表。

问题在于我不知道接下来应该做什么。在我发现的众多文献中可以找到很少的信息。在将处理后的输出传递给隐马尔可夫模型进行分类之前,每个手势/姿势的这组角度应该是“已处理”。

但是这个过程应该包括什么?我遇到过: 傅立叶变换,B样条和许多函数我还不知道如何将这组角度(例如-23,90,45,156,...)传递给这些函数。

感谢您的耐心等待。

以下是显示我到目前为止取得的成就的图片:

enter image description here

1 个答案:

答案 0 :(得分:1)

你能解释一下你是如何获得这些角度的吗?您可以将连续的角度组合在一起并且可以以某种方式将它们联系起来:例如通过减去它们或以某种方式处理它们以找到哪些手指已被打开/关闭或者找到手指向的方向。例如,假设手掌的质心在一帧中为(x,y),在另一帧中为(a,b)。然后你可以减去这些来找到你的手的方向。

现在,既然已经找到了手形轮廓曲率的角度,那么就可以得到不同点的数量和角度的变化。通过配对连续的角度并找到轮廓上的点数,您可以尝试检测哪些手指是打开的,哪些是关闭的。如果您尝试进行指尖检测,请查看Convex-Hull算法。但是,既然你说你的手势是动态的,那就必须意味着你的手在执行某种姿势的同时不断在太空中移动。请澄清一下。处理完毕后,结果应形成观察序列,作为HMM的输入。