リープモーションコントローラーを使用するプロジェクトに取り組んでいます。隠れマルコフ モデルを使用して、手が左に動いているか、右に動いているかをモデル化しています。このために、私は次のことを行います。
1) リープ モーション コントローラーからライブ データを取得します (各セットに 2 つの値を含む 80 の値)。
2) 特徴抽出「速度ベクトル」
ライブデータをプロットしましたが、特徴がうまく抽出されているようです。今、私の問題は HMM を生成することです。このために、最初の 80 個の値を 2 次元ベクトル内に格納し、これらの値を使用して各モデルを初期化してトレーニングします。次に例を示します。
-> ライブ データ -> 左 -> 最初の 80 個の値をキャプチャ -> HMM を初期化 -> HMM をトレーニング
-> ライブデータ -> 右 -> 最初の 80 個の値をキャプチャ -> HMM を初期化 -> HMM をトレーニング
次に、各モデルの出力を異なるテキスト ファイルに保存します。
1
2
p0:
1.000000
a:
1.000000
mu:
20.578226 -11.572160
cov:
2012.605072 0.000000 0.000000 19224.648008
1
2
p0:
1.000000
a:
1.000000
mu:
20.721460 6.474166
cov:
3576.301595 0.000000 0.000000 26737.119734
この問題の認識部分では、値を読み取って HMM のモデルを形成し、ライブ データについても特徴を抽出し、これをviterbi_scoring
アルゴリズムに渡します。このために、以下を渡します:raw extracted features
と各モデル。
次に、各スコアを出力しますが、どれも意味がありません。どこが間違っているのか分からないようです。方法は正しいようです。
どんな助けや提案も大歓迎です。