ハンドジェスチャを用いた個人用知的移動体の操縦インタフェース
概要
我々の研究室では個人用の移動機械の知能化に着目し、個人用知的移動体AT(Attentive Townvehicle)と呼ばれる乗り物の研究開発を行っている。ATは自動的に生成された周囲の環境の地図と自身のセンサー情報を利用して自己位置を推定し、自動走行を行う機能を持つ。
一方、近年のジェスチャ認識デバイスの発達に伴い、ジェスチャ認識技術が急速に発達してきている。本研究では日常的に用いられるハンドジェスチャに着目し、搭乗者の直感に合ったATの操縦インタフェースとして、ATの搭乗者のハンドジェスチャを利用する仕組みを実現した。
1 はじめに
近年のジェスチャ認識デバイスの発達に伴い、ジェスチャ認識技術が急速に発達してきている。非接触型ユーザーインタフェースとしてのジェスチャは、操作者の意図を機械の操作のための動作に反映することが容易であり、ジェスチャを用いた機械の操作に関する研究[1]も数多く行われている。
一方、 我々の研究室では、個人用の移動機械の知能化に着目し、個人用知的移動体AT (Attentive Townvehicle)と呼ばれる乗り物の研究・開発[2]を行っている。ATは、あらかじめ自動生成された周囲の地図と自身のセンサー情報を利用して自己位置を推定し、自動走行を行う機能を持つ。本研究では、日常的に用いられる指さし動作とハンドジェスチャに着目し、搭乗者の直感に合ったATの操縦インタフェースとして、自動走行時に搭乗者が指さしている対象をATが認識することで、自動走行の目的地を決定し、ジェスチャを用いて操作する仕組みと、マニュアル走行時に搭乗者のハンドジェスチャを用いてATを操縦する仕組みを実現した。
2 個人用知的移動体AT
ATは、搭乗者である人間やAT自身を取り巻く環境に適応して移動する個人用の乗り物である。[fig1]にATの構成を示す。ATの前後にはレーザーレンジセンサーが搭載されており、ATの周囲の障害物までの距離を取得することができる。レーザーレンジセンサーが取得した値からあらかじめ自動生成した周囲の地図と現在のレーザーレンジセンサーの値を利用して、自己位置を推定し、現在の位置から任意の場所まで自動走行を行う機能が実現されている。
本研究では、[fig1]に示す深度センサーであるKinectと3DキャプチャデバイスであるLeap Motionを用いることで、搭乗者の指さし動作とハンドジェスチャを認識する。この情報を用いることで、搭乗者は直感に合ったATの操縦を行うことが可能となる。
3 ジェスチャによる個人用知的移動体の操縦
ATには自動走行とマニュアル走行の2種類の走行モードが実装されている。本研究では、自動走行時に搭乗者の指さし動作を用いて自動走行の目的地を決定し、ジェスチャによってATの操作を行い、マニュアル走行時に搭乗者のハンドジェスチャを用いることでATの操作を行う。
3.1 指さし動作とジェスチャを用いた自動走行時の操作
Kinectを用いることで、ATは搭乗者の骨格情報を取得することができる。Kinectから取得した骨格情報を[fig2]の左に示す。
搭乗者の指さし動作の認識はKinectから取得した骨格情報の内、手と肘と肩の座標を用いることで行う。これらの関節の座標がほぼ一直線に並んでいる場合に搭乗者が指さし動作を行っていると認識する。また、あらかじめ作成された周囲の地図から自動走行の目的地となり得る場所や物体の座標を取得する。これらの座標と搭乗者の骨格情報を組み合わせることで搭乗者が指さしている対象を高い精度で認識し、その場所や物体を自動走行の目的地とする。指さし動作を認識している様子を[fig2]の右に示す。
また、指さし動作の場合と同様に、Kinectから取得した骨格情報と深度情報を用いることで搭乗者の手の動作を認識し、ジェスチャ認識を行う。手を動かすことでATを操作可能となるため、指さし動作によって自動走行の目的地を決定する仕組みと組み合わせることで、搭乗者はスムーズにATを操作することが可能になる。ジェスチャで可能となるATの動作は以下の3つである(これらをジェスチャコマンドと呼ぶ)。
・自動走行の開始
・後方の障害物付近までゆっくり後退する
・その場回転
自動走行を開始するためのジェスチャはKinectに向かって手を振り下ろす動作、後方の障害物付近までゆっくり後退するためのジェスチャはKinectに向かって突き出した手を手前に向かって引く動作、その場回転を行うためのジェスチャはKinectの前で手を水平に横切らせる動作とした。なお、その場回転の際は手を横切らせた方向にその場回転を行う。[fig3]にそれぞれのジェスチャコマンドごとの手の動きを示す。
ATがこれらのジェスチャコマンドを認識することで、ATのスムーズな操作を実現している。
3.2 ハンドジェスチャによるマニュアル走行
Leap Motionが取得した搭乗者の手形状と指の本数を[fig4]に示す。ATはこの情報を基に搭乗者のハンドジェスチャを認識する。
ハンドジェスチャを用いてマニュアル走行を開始する際は、両手をパーにした後、同時にグーに変える操作を行う。これにより、今からハンドジェスチャを用いてマニュアル走行を行うことをATに明示的に伝える。一方、停止する動作は両手を下ろし、両手をLeap Motionの認識範囲から外すことで行う。手の形をパーからグーに変えた位置が初期位置となり、現在の手の位置と初期位置との変化分を計算することでATの操作を行う。ATの左右のタイヤと搭乗者の左右の手の動きが対応しており、右手を前に出すと右タイヤが前転し、右手を後ろに引くことで右タイヤが後転する。また、搭乗者が両手を左右に動かすことで、ATは動かした方向にその場回転を行う。
本研究では搭乗者に対して情報提示を行う手法として、[fig5]に示すモデルを用いる仕組みを考案した。この情報はATの前方に取り付けたタブレットPCに表示される。
[fig5]の左はマニュアル走行を行っていない状態で、搭乗者の手がどの位置にあるのかを示している。一方、[fig5]の右はマニュアル走行を行っている状態で、搭乗者の手がマニュアル走行の初期位置からどの程度動いているのかを示している。左右の操縦桿のモデルの動きが搭乗者の左右の手の動きに対応しており、同時に変化量をテキストで表示している。搭乗者の手の前後の変化量は、操縦桿のモデルが±100の範囲で前後に移動することで行い、左右の動きは、操縦桿のモデルを±45度の範囲で傾けることで行う。
また、レーザーレンジセンサーを用いることで、ATは周囲の障害物までの距離を取得できる。これにより、障害物に向かってATを動かそうとしても一定距離以内には障害物に近付かない仕組みも実現した。この仕組みにより、搭乗者は安全にマニュアル走行を行うことができる。
4 おわりに
本研究では、ATの自動走行時に搭乗者の指さし動作を用いて自動走行の目的地を決定し、ジェスチャによってATの操作を行う仕組みとマニュアル走行時に搭乗者のハンドジェスチャを用いてATを操作するための仕組みを実現した。これによって、搭乗者はより直感的にATを操縦することが可能となる。
今後の課題としては、指さし動作とジェスチャ認識の精度の向上と認識するまでの反応時間の改善が挙げられる。また、ジェスチャコマンドに関して搭乗者が任意のジェスチャを追加できるなど、個人に適応できるシステムの実現が挙げられる。