- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我目前正在开发一个手势识别应用程序,使用隐马尔可夫模型作为 matlab 上的分类阶段(使用网络摄像头)。我已经完成了预处理部分,其中包括特征向量的提取。我已将主成分分析 (PCA) 应用于这些向量。
现在我要使用 Kevin Murphy 的 HMM 工具箱,我需要我的观察序列采用数字(整数)的形式,范围从 1 到 M(M = 观察符号的数量)。如果我是正确的,那么我必须使用密码本的概念并使用矢量量化来获得我的观察序列。
我的问题:
注意:我使用椭圆傅立叶描述符来提取形状特征,并且对于每个手势,PCA 值都存储在维度为 [11x220] 的矩阵中(视频中的帧数 = 11)
接下来我该做什么?除了椭圆傅里叶描述符,还有其他方法可以获取特征向量吗?
最佳答案
HMM 是一系列用于顺序数据的概率模型,您可以在其中假设数据是从潜在(“隐藏”)状态空间上的离散状态马尔可夫链生成的。一般来说,所谓的“排放量”来自每个州的同一系列分布,但具有不同的参数。
我不是特别熟悉 matlab 实现,但听起来您指的是使用多项式发射分布的实现,其中观察到的数据是来自预先指定字母表的一系列符号。该模型中的未知参数是隐藏状态之间的转移概率和每个状态中每个输出符号的多项式权重。如果您的特征是二元的且相互排斥的,那么这是合适的分布——比如“手势向左”与“手势向右”之类的。
但如果您的特征是连续的,则使用连续发射分布可能更合适。例如,高斯 HMM 很常见。在这里,您观察到的数据是一系列连续(可能的多变量)数据,并且假设在每个隐藏状态下,输出是来自具有您希望学习的均值和(协)方差的高斯分布的 i.i.d。
如果您不反对 python,scikits-learn 页面上有一些相当不错的多项式和高斯 HMM 文档:http://scikit-learn.org/stable/modules/hmm.html .
从实际的角度来看,如果您必须在数据上使用多项式 HMM,我建议首先构建代码本运行 k-means 聚类,然后使用状态标签作为 HMM 的输入。但使用高斯 HMM 可能更可取。
关于matlab - 使用隐马尔可夫模型的手势识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18441173/
我在学习道路上遇到了一项任务。 对于均值 μ=np 和方差 σ**2=np(1−p) 的二项式分布 X∼Bp,n,我们希望上限概率 P (X≥c⋅μ) 对于 c≥1。三界介绍: Formulas 任务
给定以下马尔可夫矩阵: import numpy, scipy.linalg A = numpy.array([[0.9, 0.1],[0.15, 0.85]]) 平稳概率存在且等于[.6, .4]。
我是一名优秀的程序员,十分优秀!