加速度センサーのデータを正規化するにはどうすればよいですか?


9

私は、多くの被験者が身に着けている複数のセンサーで収集された加速度計データの大規模なセットを扱っています。残念ながら、ここでは誰もデバイスの技術仕様を知らないようで、デバイスが再調整されたことはないと思います。デバイスに関する情報があまりありません。私は修士論文に取り組んでいます。加速度計は別の大学から借りたもので、全体として少し不透明な状況でした。では、デバイスに搭載されている前処理はどうでしょうか?全く分からない。

私が知っているのは、それらが20Hzサンプリングレートの3軸加速度計であることです。デジタルとおそらくMEMS。私は非言語的行動と身振りに興味があります。私の情報源によると、これらは主に0.3〜3.5 Hzの範囲の活動を生成するはずです。

データの正規化はかなり必要だと思われますが、何を使用すればよいかわかりません。データの非常に大きな部分は残りの値(重力からの未加工値〜1000)に近いですが、一部のログでは最大8000、他のログでは最大29000のような極端なものもあります。下の画像を参照してください。これは、正規化するためにmaxまたはstdevで除算するのは悪い考えだと思います。

このような場合の通常のアプローチは何ですか?中央値で割りますか?パーセンタイル値?他に何か?

副次的な問題として、極端な値をクリップする必要があるかどうかもわかりません。

アドバイスをありがとう!

編集:これは、約16分のデータ(20000サンプル)のプロットであり、データが通常どのように分布しているかがわかります。

ここに画像の説明を入力してください


1
測定設定についてもう少し情報を提供できますか?頭に浮かぶ質問:(1)これらの単軸加速度計ですか、それとも多軸ですか?(2)それらはハイパスフィルター処理されているかどうかを示しています。(あなたの説明に基づいて、それらはそうではないように聞こえます。)(3)正確に何を測定していて、関心のある信号の周波数範囲は何ですか?(4)使用している加速度計のセンシングメカニズム(MEMS、圧電、静電容量など)または部品番号(!)は何ですか?...
枢機卿

...(続き)(5)これらは完全にデジタルですか、または独自のADCを使用していますか(16ビット、おそらく、指定した説明による)?
枢機卿

@cardinal:質問の回答を編集しました。ADCとは何かわかりません。私は実験に関与しましたが、デバイスのメモリからのデータの抽出には関与していませんでした。データ収集と一連のバイナリログを受け取る場所の間にギャップがあります。
Junuxx 2012年

こんにちは、Junuxx。説明のない頭字語(ADC = "analog-to-digital converter"); 私はあなたがあなたの質問に基づいてそれを認識すると暗黙のうちに仮定しました。
枢機卿、

1
これらのデータから何を調べようとしているのですか?おそらく、特定の種類のイベントの検出、イベントの頻度の推定、平均加速度の推定、さまざまな加速度計間の相関関係の検索などを試みていますか?重要な点は、適切で適切なアドバイスが必要な場合は、データを使用した技術的な手順については尋ねないことです(アプリケーションによっては、無関係または役に立たない場合もあります)。まず、解決しようとしている問題を教えてください。
whuber

回答:


14

上に示した生の信号は、フィルタリングも較正もされていないようです。適切なフィルタリングキャリブレーション、およびアーティファクトの除去により、実質的にデータが正規化されます。加速度計データを使用した標準的なアプローチは次のとおりです。

  1. フィルター-たとえば、4次のゼロ位相IIRローパスまたはバンドパスフィルター
  2. アーティファクトの拒否-しきい値ベース
  3. 校正-Ferraris et al method(3軸レートジャイロと加速度計の簡単なフィールド校正の手順、F Ferraris、U Grimaldi、M Parvis-Sensors and Actuators、1995)の方法がこれに適しています。

慣性センサーデータでアーティファクトの拒否を実行することをお勧めします。データの出所がわからないので心配です。そのため、センサーがすべての対象に正しくかつ一貫して(向きと物理的な配置に関して)固定されていることを保証できません。センサーが正しく取り付けられていない場合、センサーは体節に対して移動する可能性があるため、信号に多くのアーチファクトが生じる可能性があります。同様に、センサーの向きが異なる(配置方法が異なる)場合、データを被験者間で比較することは困難です。

あなたが報告する外れ値のサイズを考えると、それらはアーティファクトである可能性が高いと思われます。そのようなアーチファクトは、ほぼ一定の傾き任意校正計算だろう(その効果は、適切なフィルタリングによって軽減されるであろうが)ので、キャリブレーションが実行されるべき後のアーチファクト拒絶。

単純なしきい値は、最初のアーティファクト拒否ルーチン、つまりNaN特定の経験的しきい値を超えるすべてのサンプルを削除(またはに置き換える)する場合に適しています。より高度な手法では、移動平均または移動ウィンドウを使用してこのしきい値を適応的に計算します。

センサーの位置によっては、加速度信号への重力の影響を補正することもできますが、センサーの軸と配置に関する詳細な理解がここでは重要です。Moe-Nillson法(R. Moe-Nilssen、実際の環境条件下での歩行における運動制御を評価するための新しい方法。パート1:装置、Clinical Biomechanics、Volume 13、Issue 4-5、1998年6月〜7月、 320-327ページ)は最も一般的に使用されており、腰部に取り付けられた慣性センサーに適しています。

ジェスチャー認識のためにデータを調べることから始めるのに適した場所は、フィルター処理され、調整されたデータをエポック(例:10秒)に分割し、エポックごとにいくつかの特徴を計算し、これらをデータのラベルに関連付けることです。データセットと関連するラベルについて詳しく知らなくても、より具体的なアドバイスを提供できます。

お役に立てれば。


@BGreeneという素晴らしい返信です。ありがとうございました。参照も非常に便利です。数か月前にこの質問をしていたらよかったのに。センサーは首の周りのコードに装着されていたので(私の考えではありません)、体に対して相対的に多くの動きがあります。あなたの提案のいくつかは、私が思うさらなる研究により適しているかもしれませんが、少なくともそれらは私の将来の研究セクションのために役立つでしょう。幸いにも、認識の部分は問題ではありません。私は機械学習のかなり確かな背景を持っていますが、それについての提案にも感謝します。
Junuxx 2012年

問題ない。その場合、ひとまとめで全体の動きを調べることに限定されると思います。これは、身体がどのように動いているかを確実に言うことができず、センサーだけであるということです。大きなセンサー出力値は大きな総移動と同等であると推測できますが、適切に取り付けられたセンサーのパリパリ感はかなり失われます。
BGreene 2012年

(+1昨日)上記の(1.)でいくつかのことが考慮される場合があります。対象の周波数範囲の下限はかなり小さいので、考慮すべき1つの代替策は、ローパスフィルターを適用して平均を差し引くことです。次に、IIRフィルターの代わりに、この場合は線形位相有限インパルス応答フィルターを検討します。多軸加速度計信号を使用してジェスチャーを予測するには、周波数とは無関係に動きを同期させておきたいと思うので、これを言います。(続き)
枢機卿

(...)IIRフィルターの非線形位相応答は、異なるコンポーネントを異なる量だけシフトし、この効果はカットオフ周波数の近くで悪化する傾向があります。すべてがデジタルであるため、線形位相FIRフィルターを使用することは理にかなっています。多くの場合、過渡応答もよりよく制御できます。:-)
枢機卿

@cardinal thats all tr​​ue-上記の私の回答を編集しました。ちょうど私のコードをチェックしました-私の最新の加速度計アルゴリズムはゼロ位相バターワースIIRフィルターを使用しています。短いデータセグメントの平均を差し引くことは避けたいのですが
BGreene
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.