現在スマートグラスを使ったARアプリで、外国人観光客向けに言語設定できる機能を作っています。
せっかくARを体験するので、操作も近未来的な雰囲気を出したいと思います。
手の画像認識は使いません
スマートグラスのカメラを使い、手のジェスチャーを画像認識するのがAR操作の正攻法のような気がします。
ただ、以前、顔認識技術「Face Detectio」を試したところ、(私の実装では)認識が不安定でした。関節が多い手の認識はもっと不安定になる気がします。
そこで、今回のスマートグラスアプリは、移動しながら使わない想定だったので、備え付けのジェスチャー入力装置を使います。
反射式光電スイッチでジェスチャー操作
電子工作でジェスチャー入力装置を作る場合、ジェスチャーセンサー「APDS-9960」を使うのが王道だと思いますが、反射式光電スイッチ「TCRT5000 」を3つ使って自作します。
「APDS-9960」のジェスチャー入力がいまいち認識してくれず(電圧の調整をしなかったことが原因と後日気付く)、自作することに決めました。
反射式光電スイッチを三角形に並べます。
手をかざし・・・
左下→(上)→右下と、順番に感知されれば右スライド。
右下→(上)→左下と、順番に感知されれば左スライド。
上、左下、右下が一定時間、3つとも感知されている状態であれば決定。
上→左下または右下と、上から払うようなジェスチャーでキャンセル。
・・・言葉では直感的ではないので、動画でご確認ください。
開発中のARアプリは掲載できないので、サンプルWebアプリを作りました。
0.5秒くらい手形の入力装置に手をかざすと、言語設定画面が表示されます。
左右どちらかに手をスライドさせて、国旗を選びます。
再び手をかざす(左右にスライドさせない)と、決定になります。
操作感はまだまだ
一応スマートグラスをかけながらジェスチャー操作を行うと、近未来的な雰囲気を味わえます。
ただ、空中でのUI操作のユーザビリティは決して高くないです。
空中ゆえに、手の位置、手の角度、手を振る速さの個人差が大きく、たとえ私が使いやすいものを作っても、他の人が操作しにくい入力装置になってしまいます。
反面、指や腕が使えない状態でも、頭の振りや、足をかざして操作もできるので、もう少し誤作動をなくせば、アクセシビリティの高い入力装置になるかもしれません。