Leap Motion v2の仕組み(8/12)
昨年発売された時よりずいぶん良くなったと聞いて、興味があったので購入。
ソフトウェアアップデートだけでハードは前と同じ。
でHPから落としたWindows用ドライバで、OK。巷の記事ではSDK v2をインストールしないといけない事が書いてあるが、すでにv2.3ぐらいにアップデートされているので、Windows用ドライバでも問題なく指の関節が表示される。SDK v2を入れるとタスクトレイからビジュアライザーというのが選べて、それが赤外線で映したカメラ映像が表示されて、どんな仕組みで指を認識しているのかが非常によくわかるから、入れるべきのようだ。
そのカメラ映像を見て思い出した。なんか見たことあるぞ。
「Webカメラ 赤外線 認識 タッチパネル」で検索すると、
[pdf]手作りマルチタッチディスプレイの制作プロセス
5年位前にタッチパネルをWebカメラと赤外線ランプと赤外線フィルターで作るのが一部で流行ってた。
OpenCVみたいので認識して、アクリル板に指先を触れさせてその明度差でタッチしたかどうか検出する。
その時のアクリル板が無い時のカメラ映像じゃないか。
あの頃は結構な設備が必要で、環境光もノイズになって難しかったのに、こんなにコンパクトに赤外線フィルターも高精度になって、アクリル板ではなく、手自体をOpenCVで画像認識させて、指や手首を検出するプログラムを載せたのか~
このウィンドウでhキーを押して左にキーヘルプを表示させて、fキーでカメラ映像をON/OFFし、oキーでジェスチャーなどを表示させるとこうなる。(円とか指をキーを打つようにタップとかスワイプがある-結構素早く)
最初のAPP HOMEにある、掴む動作やGoogle Earth(ツール>オプション>ナビゲーション>マウス以外のコントローラ>有効にする)の操作でさえ、思ったようにいかないのだから。
SDKのAPIで用意されているので握る(グラブする)など自分で検出させなくてもいいが、さらなる検出率向上を願いたいな。
そして、映画みたいに、グラブをオブジェクトの選択に、グラブしたままスワイプをドラッグ、グラブしたまま回転をボリュームみたいなGUIに割り当ててズームやスクロールなど数値を増減するインターフェースにして、マウスクリックのような繊細な操作でなく、今のスマホのようなニュース画像のスライドやピンチのような拡大縮小みたいな大雑把な操作に割り当てれば、そこそこ使えるインターフェースになるのかな。あと今なら音声認識も組み合わせて、アプリの起動も出来るしね。