䣔䣕䣌䢴䢲䢳䢳䣃䣅䢵䣑䢳䢯䢹

ジェスチャによる移動ロボットへの動作目標指示と誤差修正
○表 允皙

長谷川 勉

辻 徳生

諸岡 健一

倉爪 亮

(九州大学)
1.

はじめに我々の研究グループでは人間とロボットが共生する環境において，日常生活を支援するロボットの実現へ向けた「ロボットタウンの実証的研究」プロジェクトを行っている．この研究では知的収納庫，レーザ距離センサ，焦電センサ，電子タグ，カメラなどを用いて人間・ロボット・日用品の識別や追跡を行い，その結果をロボットタウンマネージメントシステム（TMS）に集約している．ロボットは必要な時に環境情報（人や日用品の位置情報，環境地図，など）の提供を受けることができ，センシング能力や計算能力の限界に関係なく多様な作業を実行できる[1]．
環境分散センサによって，物品の位置や人の位置が TMS に集約されているとしても，作業に関わる位置情報やロボットの動きを，現場で人が直接指示したい場合も少なくない．ロボットの目標動作位置や動作量をインタラクティブに指示することができれば有効である．その方法として，音声で指示する
方法[2]，手を視覚認識させてそのジェスチャで指示する方法[3][4][5][6]，レーザポインタを用いる方法[7][8]，データグローブを用いた手ジェスチャを用いる方法[9]などの研究がなされている．視覚により手のジェスチャ認識を用いることができれば，人にとって直観的な指示ができ，特殊な器具の装着もいらないので，望ましい．
本研究では，Kinect(マイクロソフト)の骨格トラッキングの機能を用いて手ジェスチャを認識し，指差し位置へのロボット移動システムを構築した．さらに，従来の研究[3],[4],[5],[6]などの指差し位置の誤差の問題に着目し，指差し位置の誤差を修正するための手ジェスチャによる動作の修正機能を構築した．この二つの機能により効率良くロボットを目的位置に移動できることを示す．

2.

図 1 システム

2.1 ROSROS の open source package (openni_camera やopenni_tracker パッケージ)を利用して Kinect から色や奥行(depth)の情報を得る．
2.2 Kinect
Kinect(図 2，表 1)は従来のステレオカメラやTime-of-Flight（TOF）カメラより解像度は比較的に低いものの低価格である．本研究では Kinect の骨格トラッキングシステムを用いて人の１４の関節情報を獲得した．

図2

Kinect提案手法

図 1 のようにシステムを構成して，指差し位置へのロボット移動は Kinect を利用して指差し点(位置)の座標を得る．Kinect のライブラリを用いて従来の方法より簡単に骨格情報を得ることができる．さらに，指差しの位置の誤差のために生じるロボットの作業動作誤差を修正するため、ロボットの動作修正量をジェスチャにより指示する方法として修正命令を開発・実装した．

➨䢴䢻ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢳䢳ᖺ䢻᭶䢹᪥ࠥ䢻᪥凛

表１

Kinect の仕様䣔䣕䣌䢴䢲䢳䢳䣃䣅䢵䣑䢳䢯䢹
2.3 骨格情報
Kinect から得た 3 次元の座標情報をもとに honemarkers パッケージを利用して人の骨格モデルに合うように 3D 座標に変換し，14 の関節の 3D 座標や手の方向ベクトルを求め，pointing_markers パッケージに座標情報を提供する(図 3)．

2.5 ロボット位置修正
2.4 節で求めた指差し位置は人の指さす方法によって誤差がある．本システムではロボットの作業動作を修正するため、ロボットの動作量を指示する．
動作量をジェスチャにより指示する命令として二つの方法を開発した．
第一の方法はロボットが目標位置に到達した後，図 5 のように右の手を体の約 30cm 前に出す．その時，右手を中心に仮想の立方体を作る(図 7 の左)．立方体は右手を基準として前後左右，上下 30 ㎝である．
命令は立方体の中央にある右手が立方体の前後左右の面(図 6)に接触する時間を測定して，1 ㎝あたりの動作時間を指示する方法である．この方法でロボットの作業動作を修正することができる．

図 3 骨格情報

2.4 指差し位置情報
pointing_markers パッケージは hone_markers パ
ッケージから得た骨格情報や手の方向ベクトルから指差し位置を求める．人が示した位置の 3 次元座標は＝＝(1)＝＝(2)

図 5 基本姿勢を用いて求める．（1）はひじと手の座標から得るベ
クトル，（2）は頭と手の座標から得るベクトルである．人によって物体や位置を示す方法は違うので（図4 の左），上の二つの方法で実験する．
図 4 の右のように指差し位置は(1)の場合は(3)(4)の方法で，(2)の場合は(5)(6)の方法で求める．
(3)

(4)

(5)

図 6 立方体の接触する面

第二の方法はロボットが目標位置に到達した後，両手を車のハンドルバを持つような姿勢をすると図7 の右のような仮想のハンドルバを作る．人が車を運転するような動作で右回転，左回転ができる．それと共に，ハンドルを前に押すと前進，後ろに引くと後進の命令ができる．この方法でロボットの右回転，左回転，前進，後進の命令を指示し，その動作を修正することができる．
ジェスチャ(指差し位置への移動, 目標位置の修
正 1 や２の方法)の動作命令への変換は左手の位置情報をもとにしている．左手が下を示している時は命令待機の状態，上を示している時は指差し位置への移動命令の状態，左を示している時は位置修正命令の状態を意味する．

(6)

手コントロール
図 4 床上の指差し点の座標➨䢴䢻ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢳䢳ᖺ䢻᭶䢹᪥ࠥ䢻᪥凛

仮想ハンドル

図 7 目標位置の修正命令の二つの方法䣔䣕䣌䢴䢲䢳䢳䣃䣅䢵䣑䢳䢯䢹

3.

実験

提案手法の有効性を検証するために，指差し位置の誤差を測定する実験と指差し位置へのロボット移動と把持物体の定置を行う実験をした．実験では 2節で述べた ROS, Kinect，SmartPal1-IV を用いる．実験場所は机，椅子，などが配置した幅 6ｍ，横 4ｍの部屋で行う．
3.1 指差し位置の誤差
2.4 節で求めた指差し位置(1),(2)を利用して 10人に対して被験者の前方の床面に設置した 25 個のマーカの位置を指し示す動作における計測精度データを求める実験を行った．この精度実験では図 8 に示すように床面に座標原点をおき，X，Y 座標軸を水平に，Z 軸が上方に向くよう座標系を設定する．Kinect
は(0，0，1.5)の位置で X 軸正方向に向けて設置し，被験者は(2.5,0,0)の位置に立つ．マーカは，1 番のマーカ(2,-1,0)から，X 座標に 1ｍ，Y 座標に 0.5ｍの間隔で 25 番のマーカ(-2,1,0)まで設置した．

図 10 指差し位置の誤差（頭-手のベクトル）近い場所での指さし位置の平均誤差は 0.15ｍ，0.01ｍ，遠い場所でのそれは 1.01ｍ，0.17ｍであった．誤差の平均値は 0.44ｍ，0.10ｍである．

表 2 指差し位置の誤差
図 8 指差し位置の誤差の実験方法

結果を図 9，図 10，表 2 に示す．ひじ-手のベクトルより頭-手のベクトルの方が精度がよい．ただし，実験後のアンケートの結果，10 人中の 2 人がひじ手のベクトル方法，8 人が頭-手のベクトル方法を利用したことが分かっている．

3.2 動作修正実験
被験者は 10 人で経験がない人を対象にした．この実験環境は 3.1 の誤差の測定と同じ，Kinect は座標(0,-1.5)に設置，人は座標(2,-1)に立つ．ロボットは座標(0,0)から実験を開始する．事前条件はロボッ
トが直径 11cm，長さ 12cm のペイント缶を右手で持って，人の指示を待っている状況である．終了の条件
は修正命令により持っているペイント缶を直径 16cm，長さ 13cm のバケツ（座標(1，1)にある長さ 48cm のテーブルの上）に入れる状態である．命令は目標位置の手コントロール方法を利用して，前後左右の命令がある．それに加えて左手を上に上げると持っている物をおろす命令がある．実験の様子を図 11 に示
す．成功率と終了までの時間を測定した結果を表 3に示す．10 人に対して 100％の成功率と平均時間36.7 秒であった．

図 9 指差し位置の誤差（ひじ-手のベクトル）
表31

SmartPal は，(株)安川電機の登録商標です．

➨䢴䢻ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢳䢳ᖺ䢻᭶䢹᪥ࠥ䢻᪥凛

10 人の被験者の平均時間䣔䣕䣌䢴䢲䢳䢳䣃䣅䢵䣑䢳䢯䢹参

図 11 ペイント缶のバケツ入れ実験

3.3 指差し位置へのロボット移動と置き場所の修正実験
指差し位置情報や目標位置の修正命令を利用して総合的な実験を行った． Kinect を座標(0,-1.5)，人を座標(2,-1)，ロボットを座標(-2,-1)に設置した状態から実験を開始する．事前条件はロボットがボックスを持って，人の指示を待っている状況である(図12 左)．終了の条件は座標(1,1)のテーブル上にボックスを置く状態である(図 12 右)．
実験では，はじめに指差しでロボットが移動する位置を示す．ロボットはこれを認識して指示された場所まで移動し，次の命令を待つ．人は手ジェスチ
ャで最後の物の置き場所を指示する．ロボットはこれを認識して移動する．最後に人は物を下に置く命令をする．
実験の結果，最大 0.3ｍの指差し目標座標の誤差があり，手コントロールを用いて目標座標の修正することができた．これによって，目標座標までボックスを置く作業に成功した．

図 12 ボックスの運搬

4.

まとめ

本研究では環境内での指差し位置や手の動きを認識するシステムを開発した．さらに，このシステムを用いてロボットの移動と物体の運搬および定置を手ジェスチャにより実現できた．
今後は，14 個の骨格情報以外に顔や指を検出して，現在の指差し位置の精度を高める．さらに，TMS から部屋の地図を得て机や他の家具の上の物体を指示できる機能を開発予定である．

➨䢴䢻ᅇ᪥ᮏ兑兀儧儬Ꮫ఍Ꮫ⾡ㅮ₇఍凚䢴䢲䢳䢳ᖺ䢻᭶䢹᪥ࠥ䢻᪥凛

考 文 献[1] 長谷川 勉：“ロボットタウンの実証的研究-全体計画の概要-”，第 24 回日本ロボット学会学術講演会予稿集 CD-ROM，2N13，2006[2] J.-H Hong, Y.-S Song, S-B Cho：“Mixed-Initiative
Human–Robot Interaction Using Hierarchical
Bayesian Networks”， IEEE Transactions on Systems,
Man, and Cybernetics, Part A: Systems and Humans,
VOL. 37, NO. 6, 2007
[3] C.-B Park, S.-W. Lee ： “Real-time 3D pointing
gesture recognition for mobile robots with cascade
HMM and particle filter” ， Image and Vision
Computing 29 (1)，pp. 51-63, 2011[4] K Nickel, R Stiefelhagen：“Visual recognition ofpointing gestures for human–robot interaction”,
Image and Vision Computing 25 (12) pp. 1875-1884,
2007[5] D. Droeschel, J Stückler, D. Holz, S. Behnke：“Towards Joint Attention for a Domestic Service
Robot–Person Awareness and Gesture Recognition
using Time-of-Flight Cameras”, International
Conference on Robotics and Automation ， pp.
1205-1210, 2011[6] J. Richarz, A. Scheidig, C. Martin, S. Muller, H.M.
Gross：“A monocular pointing pose estimator for
gestural instruction of a mobile robot”, International Journal of Advanced Robotic Systems，
4 (1)， pp. 139–150, 2007
[7] C.C. Kemp, C.D. Anderson, H. Nguyen, A.J. Trevor,
Z. Xu：“A Point-and-Click Interface for the RealWorld: Laser Designation of Objects for Mobile
Manipulation”, ACM/IEEE international conferenceon Human robot interaction， pp. 241–248，2008[8] 高橋伸寿，中沢洋介，梅田和昇：“レーザポインタを用いたホームロボット操作システムの構築”,日本機
械学会ロボティクス・メカトロニクス講演会'02 講演
論文集, 2P1-K03, 2002
[9] S. Iba, J. M. Vande Weghe, C. Paredis and P.
Khosla ： “An Architecture for Gesture−BasedControl of Mobile Robots”， Proceedings of theIEEE/RSJ International Conference on Intelligent
Robots and Systems, pp.851−857, 1999