指によるコマンド&コントロール 加速度センサーの評価レポート 20150121
TRANSCRIPT
背景2
• 指+キーボード・マウス・タッチパネル=• 指の機械動作だけに頼っている
• テキスト指示は音声が速い。位置指示は、視線が速い。指の器用さを、それらとともに生かしたい。• 健常者の場合、指は、音声や視線が機能しない状況で
のバックアップや、音声・視線による指示を補うフォールバックとなる。• また、障碍者の場合、目+指(手書き文字)で発声・
聴覚の代替、音+指(指でコントロールされた音声インタラクション)で視覚の代替となりうる。
明らかにしたいこと
• 指をコマンド&コントロールの手段として使うために、指のジェスチャーを安定して検出できるか?• センサーの分解能の違いの影響?• 対象:机、親指、手のひら、空中?• センサー装着場所の影響:人差し指付け根、手首?• ジェスチャーの種類:普及したデバイスの基本動作である
タップ ( クリック)とスワイプ(スクロール)。• 動きと振動の効果?
• スコープ外のこと• ほかの一部製品と異なり、指先の 3D の動きの捕捉をター
ゲットにしていない。• ほかの多くの研究と異なり、人体の行動などの日常の動作
のクラス分けをターゲットにはしていない。
設定
• Aruduino Duemilanova• ボード設定: Due native USB port
• ボードを Aruduino Duemilanova にするとAnalogReadResolution がコンパイルできないため
• Serial transmission: 9600 baud per sec• Aruduino の AnalogRead の能力からして
115200Baud で行けるはずだが、センサーからの出力取得が安定しないため
• NOTE: TODO -> Data loss していないか、カウントして確認する 10000/sec plot できている?
• 加速度センサー 2 個• KXR94-2050
加速度センサーの分解能の影響
• 設定• 固定
• センサー装着場所:人差し指付け根• ジェスチャー種類:親指に対しタップ
• 比較• Aruduino の AnalogReadResolution で出力を 12bits
指定、ないし、それなしの 10bits
分解能が高いほうが滑らかな反応が得られる
10 bit resolution 12bit resolution
加速度センサーの xyz それぞれの値
加速度センサーの xyz を基準値(初期安定状態での値)からの差分でベクターと見たときのベクター長
Tap は対象にかかわらず類似の振動を指元に伝える
Tap、親指
Tap,手のひら
Tap 、机
加速度センサーの xyz それぞれの値
加速度センサーの xyz を基準値(初期安定状態での値)からの差分でベクターと見たときのベクター長
Swipe による振動は対象によって異なる。それら細かい振動はノイズと紛らわしい。さらに Swipe 動作には移動成分が入り込む。
Swipe、親指
Swipe、手のひら
Swipe、机
加速度センサーの xyz それぞれの値
加速度センサーの xyz を基準値(初期安定状態での値)からの差分でベクターと見たときのベクター長
2 点での付加情報
• 設定• 固定
• ジェスチャー種類:タップ• ジェスチャー対象:親指• NOTE: 片方の Z- 軸の値が出ないため、 Plot は Z 軸を
のぞく• 比較
• センサー装着 2 か所:人先指付け根+手首、人差し指付け根+親指付け根、手首上面+下面
人差し指と親指の場合、接触点への距離が違うため振動が微妙にずれるのか、合成波形が微妙に 1 個の場合と変わってくるようだTap Swipe
人差し指の付け根での XY軸それぞれの値
手首での XY軸それぞれの値
XY軸それぞれの差分値
XY軸それぞれの加算値
わかったこと
• Tap は対象がなんであれ同じような振動を示すが、 Swipe は対象によって異なる。• ノイズと Swipe の振動は識別しにくく、移動
成分も混ざる。成分の分離が必要である。• 指の付け根であれば Tap も Swipe も捕捉でき
るが、手首では Swipe の捕捉が難しい。ところが、手首に加速度センサーを 2 個装着し信号を合成すると、 Swipe でも手首で捕捉できそうに見える。センサーの種類か、性能を変えれば、 Swipe の捕捉も、手首でできるかもしれない。
次の実験
• 装着場所を手首にして別のセンサーを試す。• マイクロフォーン、圧電素子
• 仮説• 移動成分がなく、振動だけを捕捉できる• Swipe も手首で捕捉できる
• 音+加速度センサーなど合わせ技を試す• NOTE: 近接センサーで使えるものは現状ない。磁気センサーは数ミ
リの距離。光学的なセンサーでは指先が見えにくい。
• ノイズ、移動、振動へデータ成分を分離する。• ジェスチャー検出の安定度や精度をしめす客観的な指標を設
定する。• 複数人数でデータを取り、データにラべリングし、 Feature を設定
し、機械学習 /HMM のクラス分け Task を実行する。そしてRecall 、 Precision 、 Confusion matrix を見る。
• 分類は、時間軸の Feature に注目する。周期性、ピーク、波形など。
発展課題
• タップやスワイプだけだと、コマンド&コントロールはできても、ほかの情報取得がないと用途が完結しにくい。指センサーのみで使えるデバイスにするためには、それだけで完結する魅力的なシナリオをサポートする必要がある。• たとえば、マウスの代替になる、つまみを回すとかの自然界の動作
で遠隔の家電を操作する、指やペンで文字を書いたものを認識するとか。
• そのために、冒頭のゴールを達成し、かつ3D世界座標で指先の動きを捕捉する。• Ring や富士通の指輪型センサーは、加速度センサー+ジャイロ+地磁気セン
サーを利用し、 3D の動きを補足できる。しかし、それらはごっつい形態をしており、生活の邪魔になると思われる。手首バンドなら邪魔にならない。それで、指のジェスチャーだけでなく3D の動きを捕捉できないか? 手首バンドであれば、複数のセンサーを搭載するスペースがある。
• あるいは、音声インタラクションか視線追跡と、組み合わせる。• そのために、シナリオと、コマンド&コントロールのジェスチャー言語の設計、 UI Feedback の設計。