1

8 つの加速度計で構成されるボディ センサー ネットワークを構築しました。各サンプル (約 30 Hz) で、各加速度計から XY 値と Z 値が得られます。

1 つの加速度計で構成されるデータストリームの分類に jahmm Java ライブラリを使用しました。これはうまくいきます。しかし今、コードを拡張して複数の加速度計を供給できるようにする方法について混乱しています。

単一のデータストリームは次のようになります。

 [-4.976763 7.096352 1.3488603]; [-4.8699903 7.417777 1.3515397];...

ライブラリを使用すると、特徴ベクトルの次元を定義できます。上記のストリームでは、次元は 3 です。次元を 3 x 8 = 24 に上げて、すべての加速度計を単一の 24D 特徴ベクトルに単純に連結することを考えました。

これは行くべき道ですか、それとも私の結果を悪化させますか?

編集:

これまでにデータを収集しましたが、次のようになります (1 人の参加者の場合):

"GESTURE A",[{407 318 425};...{451 467 358};{427 525 445};][{440 342 456}...;{432 530 449};]
"GESTURE A",[{406 318 424};...{450 467 357};{422 525 445};][{440 342 456}...;{428 531 449};]
"GESTURE B",[{407 318 424};...{449 466 357};{423 524 445};][{440 342 456}...;{429 530 449};]
"GESTURE B",[{380 299 399};...{424 438 338};{404 500 426};][{433 337 449}...;{429 529 449};]

{... ... ...} の間の値は、1 つの加速度計を表します。サンプルごとに(30hz程度)、8つの加速度計があります。1 つのサンプルは [...] 内にあります。ジェスチャーの例ごとに、[...]の約40ブロックがあります

最初のセンサー ([] の各ブロックの最初の {}) を取得し、結果のシーケンスでモデルを作成し、2 番目から 8 番目まで同じことを提案しますか?

これにより、ジェスチャーごとに 8 つのモデルが得られます。テスト シーケンスよりも 8 つの確率が得られます。したがって、オーバーレイクラスを取得するには、ある種の複数投票が必要になります。これはあなたが意味したものですか?

ありがとうございました

4

1 に答える 1

1

加速度計ごとに 1 つの HMM を使用することをお勧めします。この場合、8 つの並列モデルになります。次に、各チャネルを個別に評価し、すべてをまとめて結果を得ることができます。そのため、ライブラリの周りにコードを書く必要があります。

1 つの HMM ですべてを処理したい場合は、8 つの入力ストリームすべてを処理できる独自の観測タイプを作成する必要がありますMyObservation extends Observation

于 2012-07-17T21:08:03.687 に答える