(57)【要約】【課題】認識部位が認識空間外にある場合でも、認識部位の位置を効率的に推定してジェスチャ認識を行うジェスチャ認識装置を提供する。【解決手段】ジェスチャ認識装置１００は、入力部１０１により操作者の両手の位置を周期的に検出する。制御部１０２は、入力部１０１が前回の周期で両手の位置を検出し、今回の周期で一方の手の位置しか検出できない場合に、今回の周期の他方の手の位置を推定する。推定は、前回の周期の両手の位置及び今回の周期の一方の手の位置に基づいて行う。ジェスチャ認識部１０３は、入力部１０１で検出した手の位置及び制御部１０２で推定した手の位置に基づいて、操作者のジェスチャを認識する。制御部１０２は、ジェスチャ認識部１０３が認識したジェスチャに応じて処理を実行する。【選択図】図２
2014222381.tif 000002
【特許請求の範囲】
【請求項１】
操作者が動かすことができる認識部位の位置を所定の周期で検出する検出手段と、
前回の周期で位置を検出した複数の前記認識部位のうち今回の周期で位置が検出されない認識部位があると、該検出されない認識部位の位置を、前回の周期で検出した複数の前記認識部位の位置及び今回の周期で検出した認識部位の位置に基づいて推定する推定手段と、
前記検出手段で検出した前記認識部位の位置及び前記推定手段で推定した位置に基づいて、前記操作者のジェスチャを認識するジェスチャ認識手段と、
認識した前記ジェスチャに応じた処理を実行する実行手段と、を備えることを特徴とする、
ジェスチャ認識装置。
【請求項２】
前記検出手段は、前記認識部位を検出可能な範囲が予め定められており、
前記推定手段は、前記範囲内の前記認識部位が次の周期で前記範囲外に移動して検出されなくなったときに、当該認識部位の位置を推定することを特徴とする、
請求項１記載のジェスチャ認識装置。
【請求項３】
前記推定手段は、前回の周期で２の前記認識部位の位置を検出し今回の周期で１の認識部位の位置を検出すると、今回の周期で検出されなかった認識部位の位置を、前回の周期で検出した２の前記認識部位の位置及びそれらの中点又は中線と、今回の周期で検出した前記１の認識部位の位置とから推定することを特徴とする、
請求項１又は２記載のジェスチャ認識装置。
【請求項４】
前記推定手段が認識部位の位置を推定した次の周期で該認識部位の位置が前記検出手段に検出されると、推定された位置と検出された位置とから、推定された位置が妥当であるか否かを判断する判断手段と、
前記判断手段により推定された位置が妥当でないときに、前記推定手段が認識部位の位置と次の周期で検出された該認識部位の位置との間を補間する補間手段と、を備えることを特徴とする、
請求項１〜３のいずれか１項記載のジェスチャ認識装置。
【請求項５】
前記判断手段は、前記推定された位置と前記検出された位置との距離に応じて、前記推定された位置が妥当であるか否かを判断することを特徴とする、
請求項４記載のジェスチャ認識装置。
【請求項６】
前記補間手段は、前記推定された位置と前記検出された位置との間を、等間隔に補間する位置を、当該認識部位の位置とすることを特徴とする、
請求項４又は５記載のジェスチャ認識装置。
【請求項７】
操作者が動かすことができる認識部位の位置を所定の周期で検出するセンサを備えた装置により実行される方法であって、
前回の周期で位置を検出した複数の前記認識部位のうち今回の周期で位置が検出されない認識部位があると、該検出されない認識部位の位置を、前回の周期で検出した複数の前記認識部位の位置及び今回の周期で検出した認識部位の位置に基づいて推定し、
前記センサで検出した前記認識部位の位置及び推定した位置に基づいて、前記操作者のジェスチャを認識し、
認識した前記ジェスチャに応じて処理を実行することを特徴とする、
ジェスチャ認識方法。
【請求項８】
操作者が動かすことができる認識部位の位置を所定の周期で検出するセンサを備えるコンピュータに、
前回の周期で位置を検出した複数の前記認識部位のうち今回の周期で位置が検出されない認識部位があると、該検出されない認識部位の位置を、前回の周期で検出した複数の前記認識部位の位置及び今回の周期で検出した認識部位の位置に基づいて推定する処理、
前記検出手段で検出した前記認識部位の位置及び推定した位置に基づいて、前記操作者のジェスチャを認識する処理、
認識した前記ジェスチャに応じた処理、
を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作者のジェスチャを、入力操作として認識して処理を行うジェスチャ認識装置に関する。
【背景技術】
【０００２】
スマートフォンやタブレットＰＣ（Personal Computer）では、マルチタッチによる操作が可能なタッチパネルを入力インタフェースとして採用することが一般的である。タッチパネルでは、例えば、操作者が、タッチパネル上で２本の指を遠ざける動き、近づける動き、回転させる動き、を行うことで、それぞれ、表示した画像の拡大、縮小、回転を行うことができる。
【０００３】
近年、新たな入力インタフェースとして、三次元空間内の操作者の動き（空間ジェスチャ）を入力インタフェースとして用いる技術が登場している。非特許文献１は、空間ジェスチャによりテレビの操作を行うことを提案する。空間ジェスチャでは、ジェスチャ認識装置により、例えば操作者の手の三次元空間内の位置を認識し、その動きに基づいて表示する画像の操作を行うことが可能である。
【０００４】
タッチパネルでは、操作者が、マルチタッチ可能な範囲を目視確認することができる。空間ジェスチャでは、ジェスチャ認識装置が、操作者のジェスチャを認識可能な範囲（以下、「ジェスチャ認識空間」という。）が操作者側からは不明確である。そのために、空間ジェスチャでは、操作者のジェスチャがジェスチャ認識空間外で行われて認識されなかったり、誤認識されたりすることがある。
【０００５】
特許文献１のジェスチャ認識装置は、操作者の手以外の部位を用いてジェスチャ認識空間外にある操作者の手の位置を推定する。例えば、操作者の手の位置を検出できないときに、ジェスチャ認識装置は、操作者の顔の位置を検出し、検出した顔の位置から手の位置及び大きさを推定する。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】［CEATEC］手をかざして画面を操作 パナソニック近未来インタフェース 空間ハンドジェスチャーUI」[平成23年12月5日検索]。インターネット<URL: http://bptv.nikkeibp.co.jp/article/081001/081001601.html>
【特許文献】
【０００７】
【特許文献１】特開２００９−０８０５３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１のジェスチャ認識装置は、手以外の操作者の部位の認識が必要なこと、及び顔等の手との位置関係が変化する部位に頼って推定を行うことから、処理が複雑で負荷が大きくなる。また、ジェスチャ認識装置による認識精度を向上させる必要がある。
【０００９】
本発明は、上記の問題を解決するために、操作者の手等の認識対象となる部位（認識部位）がジェスチャ認識空間外にある場合でも、認識部位の位置を効率的に推定してジェスチャ認識を行うジェスチャ認識装置を提供することを主たる課題とする。
【課題を解決するための手段】
【００１０】
上記課題を解決する本発明のジェスチャ認識装置は、操作者が動かすことができる認識部位の位置を所定の周期で検出する検出手段と、前回の周期で位置を検出した複数の前記認識部位のうち今回の周期で位置が検出されない認識部位があると、該検出されない認識部位の位置を、前回の周期で検出した複数の前記認識部位の位置及び今回の周期で検出した認識部位の位置に基づいて推定する推定手段と、前記検出手段で検出した前記認識部位の位置及び前記推定手段で推定した位置に基づいて、前記操作者のジェスチャを認識するジェスチャ認識手段と、認識した前記ジェスチャに応じた処理を実行する実行手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、前回の周期で検出した認識部位が今回の周期で認識できない場合に、当該認識できない認識部位の位置を、前回の周期で検出した認識部位の位置及び今回の周期で認識した他の認識部位の位置から容易に推定可能である。そのために、認識部位がジェスチャ認識空間外にある場合でも、認識部位の位置を効率的に推定してジェスチャ認識を行うことができる。
【図面の簡単な説明】
【００１２】
【図１】ジェスチャ認識装置のハードウェア構成図。
【図２】ジェスチャ認識装置の機能ブロック図。
【図３】入力操作の説明図。
【図４】（ａ）〜（ｃ）は、操作者の手の位置の認識処理の説明図。
【図５】第１実施形態の手の位置の座標を時系列に表す図。
【図６】第１実施形態のジェスチャ認識処理の処理手順を表すフローチャート。
【図７】第２実施形態の手の位置の座標を時系列に表す図。
【図８】第２実施形態のジェスチャ認識処理の処理手順を表すフローチャート。
【発明を実施するための形態】
【００１３】
＜第１実施形態＞
図１は、本実施形態のジェスチャ認識装置のハードウェア構成図である。ジェスチャ認識装置は、ＣＰＵ（Central Processing unit）２０１、ＲＡＭ（Random Access Memory）２０２、ＲＯＭ（Read Only Memory）２０３、入力装置２０４、及び出力装置２０５を備える。これらの各構成要素は、システムバス２０６を介して相互に通信可能に接続される。
【００１４】
ＣＰＵ２０１は、ＲＡＭ２０２をメインメモリとして用い、ＲＯＭ２０３からコンピュータプログラムを読み出して実行することで、ジェスチャ認識装置を画像ブラウザとして機能させるための処理を行う。入力装置２０４は、例えば操作者の認識部位（本実施形態では「手」）の位置を検出する距離画像センサ等を備える。入力装置２０４には、認識部位を検出可能な範囲であるジェスチャ認識空間が予め定められてる。出力装置２０５は、例えばＬＣＤ（Liquid Crystal Display）等の表示装置である。ジェスチャ認識装置は、入力装置２０４により操作者のジェスチャを入力操作として認識し、認識した入力操作に応じて、出力装置２０５に表示される画像の操作等の処理を行う。
【００１５】
図２は、ＣＰＵ２０１がＲＯＭ２０３から読み出したコンピュータプログラムを実行することで、ジェスチャ認識装置１００を画像ブラウザとして機能させるための機能ブロック図である。
【００１６】
入力部１０１は、ＣＰＵ２０１及び入力装置２０４により実現され、操作者の所定の部位の位置を所定の周期で検出する。本実施形態では、入力部１０１が、所定の部位として操作者の「手」の位置を検出する。ジェスチャ認識部１０３は、入力部１０１で検出された操作者の手の位置に基づいて、操作者のジェスチャを認識する。制御部１０２は、ジェスチャ認識部１０３で認識された操作者のジェスチャに基づいて、画像ブラウザの動作を制御する。制御部１０２及びジェスチャ認識部１０３は、ＣＰＵ２０１により実現される。表示部１０４は、ＣＰＵ２０１及び出力装置２０５により実現され、画像、文字等を出力装置２０５に表示する。記憶部１０５は、制御部１０２による処理の際に情報の一時記憶を行う。記憶部１０５には、例えば、操作者の手の位置の推定に用いる情報を一時記憶する。記憶部１０５は、ＲＡＭ２０２により実現される。
【００１７】
図３は、このようなジェスチャ認識装置１００を備えた表示システム３００による入力操作の説明図である。表示システム３００は、画像ブラウザとして動作する。表示システム３００の上部には、入力装置２０４である距離画像センサが備えられる。画像ブラウザは、入力装置２０４により検出した操作者３０２の二本の手３０３、３０４の位置に基づいて、操作者のジェスチャを認識する。画像ブラウザは、認識したジェスチャを入力操作とし、この入力操作に応じて動作する。出力装置２０５に表示される画像３０１は、このような入力操作により、画像の変形等の操作が行われる。
【００１８】
なお、入力装置２０４には、操作者３０２の手３０３、３０４の三次元空間内の位置を検出可能な装置であれば、距離画像センサ以外のセンサや、複数のセンサを組み合わせたものを用いることができる。
【００１９】
本実施形態では、ジェスチャ認識装置１００が、手３０３、３０４の位置の検出を、手３０３、３０４が入力装置２０４のジェスチャ認識空間の範囲内に入ったときに行う。ジェスチャ認識空間は、入力装置２０４により手３０３、３０４の位置を検出可能な範囲であり、例えば出力装置２０５の表示面から距離が１［ｍ］以内の三次元空間により定義される。ジェスチャ認識装置１００は、手３０３、３０４の位置の検出を、例えば手３０３、３０４が所定の形（手を握る形）になった時点で開始し、所定の形でなくなった時点で終了してもよい。いずれにせよ、ジェスチャ認識装置１００は、手３０３、３０４の位置を所定の時間間隔で検出し、これにより手３０３、３０４の移動を検出する。
【００２０】
図４は、ジェスチャ認識装置１００による操作者３０２の手３０３、３０４の位置の認識処理の説明図である。図４（ａ）〜（ｃ）では、ジェスチャ認識空間４００を二次元で表す。ジェスチャ認識空間４００は、上述の通り三次元空間で定義されるが、本実施形態では、入力装置２０４から見て奥行き方向がジェスチャ認識に不要であるために、三次元空間を二次元に射影して扱う。
【００２１】
図４（ａ）は、操作者３０２の手３０３、３０４のジェスチャ認識空間４００の範囲内の位置座標４０３、４０４を表す。入力部１０１で検出された手３０３、３０４の位置は、ジェスチャ認識空間４００で位置座標４０３、４０４として表される。位置座標４０３を第１の手の座標、位置座標４０４を第２の手の座標とする。
【００２２】
図４（ｂ）は、図４（ａ）から時間経過して、操作者３０２の手３０３、３０４の位置が移動したときの第１の手の座標４０５及び第２の手の座標４０６を表す。中点４０７は、第１の手の座標４０５と第２の手の座標４０６の中点を表す。
【００２３】
図４（ｃ）は、図４（ｂ）からさらに時間経過して、操作者３０２の手３０３、３０４の位置が移動したときの第１の手の座標４０８を表す。中点４０７の位置は、図４（ｂ）と同じである。図４（ｃ）では、第２の手の座標４０９がジェスチャ認識空間４００の外に位置する。そのために、ジェスチャ認識装置１００の制御部１０２は、第２の手の座標４０９を推定する必要がある。前回の検出時に二本の手が検出され、今回の検出時に一本の手しか検出されない場合には、検出されなかった手の位置を推定する。このことを「マルチハンド推定」という。マルチハンド推定については後述する。
【００２４】
図５は、手の位置の座標を時系列に表す図である。記憶部１０５には、入力部１０１で手の位置の検出を行った検出時刻５０１毎に、第１の手の座標５０２及び第２の手の座標５０３が記憶される。ジェスチャ認識空間内で手が検出されなかった場合には、座標をハイフン（−）で表す。ハイフンとともに、括弧書きで表される座標は、制御部１０２により推定（マルチハンド推定）された座標を表す。例えば、検出時刻５０１が「３３５０ｍｓ」〜「３５５０ｍｓ」の第２の手の座標５０３は、制御部１０２によりマルチハンド推定された座標である。図４（ａ）は、検出時刻５０１が「３１５０ｍｓ」の座標を表す。図４（ｂ）は、検出時刻５０１が「３３００ｍｓ」の座標を表す。図４（ｃ）は、検出時刻５０１が「３３５０ｍｓ」の座標を表す。
【００２５】
図６は、制御部１０２により実行されるジェスチャ認識処理の処理手順を表すフローチャートである。制御部１０２は、ジェスチャ認識処理を所定の周期で実行する。例えば、図５のような手の位置の座標の時系列を生成するために、制御部１０２は、５０［ｍｓ］周期でジェスチャ認識処理を行う。
【００２６】
制御部１０２は、ジェスチャ認識空間内の手の数を検出する（Ｓ６０１）。制御部１０２は、入力部１０１による検出結果により、ジェスチャ認識空間内の手の数を検出することができる。制御部１０２は、検出時刻、第１の手の座標、及び第２の手の座標を検出し、第１の手の座標及び第２の手の座標により、検出した手の数を判断する。制御部１０２は、検出した検出時刻、第１の手の座標、及び第２の手の座標を記憶部１０５に書き込む。図５の検出時刻５０１が「３０００ｍｓ」〜「３１００ｍｓ」及び「３３５０ｍｓ」〜「３５５０ｍｓ」が、手を一本検出するときの状態である。図５の検出時刻５０１が「３１５０ｍｓ」〜「３３００ｍｓ」が、手を二本検出するときの状態である。図５の検出時刻５０１が「２９５０ｍｓ」、「３６００ｍｓ」が、手を検出しないときの状態である。
【００２７】
検出した手の数が一本の場合（Ｓ６０２：Y）、制御部１０２は、前回のジェスチャ認識処理で検出した手の数が二本（マルチハンド）であるか否かを判断する（Ｓ６０４）。図５の例では、検出した手の数が一本で前回の処理がマルチハンドであるのは（Ｓ６０４：Y）、検出時刻５０１が「３３５０ｍｓ」のときである。検出した手の数が一本で前回の処理がマルチハンドでないのは（Ｓ６０４：N）、検出時刻５０１が「３０００ｍｓ」〜「３１００ｍｓ」のときである。
【００２８】
前回のジェスチャ認識処理がマルチハンドではない場合（Ｓ６０４：N）、制御部１０２は、前回のジェスチャ認識処理でマルチハンド推定を行ったか否かを判断する（Ｓ６０５）。図５の例では、前回のジェスチャ認識処理でマルチハンド推定を行っているのは（Ｓ６０５：Y）、検出時刻５０１が「３４００ｍｓ」〜「３５５０ｍｓ」のときである。検出された手の数が一本且つ前回のジェスチャ認識処理でマルチハンド推定を行っていないのは（Ｓ６０５：N）、検出時刻５０１が「３０００ｍｓ」〜「３１００ｍｓ」のときである。
【００２９】
前回のジェスチャ認識処理でマルチハンド推定ではない場合（Ｓ６０５：N）、制御部１０２は、現在の状態をシングルハンド（一本の手）によるジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６０６）。図５の例では、検出時刻５０１が「３０００ｍｓ」〜「３１００ｍｓ」である。その後、制御部１０２は、ジェスチャ認識部１０３により、検出した手の座標に基づいて認識されるシングルハンドジェスチャに応じた処理を実行する（Ｓ６０７）。ジェスチャ認識部１０３は、図５の例では、検出時刻５０１が「３０００ｍｓ」〜「３１００ｍｓ」の第１の手の座標５０２により、操作者３０２の手の動きを検出し、これによりシングルハンドジェスチャを認識する。シングルハンドジェスチャにより、例えば、表示システム３００に表示された画像３０１のドラッグ処理等を実行することができる。
【００３０】
検出した手の数が一本ではない場合（Ｓ６０２：N）、制御部１０２は、検出した手の数が二本であるか否かを確認する（Ｓ６０３）。検出した手の数が二本でない場合（Ｓ６０３：N）、制御部１０２は、現在の状態をノーハンド（手を検出していない）として記憶部１０５に記憶する（Ｓ６１３）。図５の例では、検出時刻５０１が「２９５０ｍｓ」、「３６００ｍｓ」である。なお、複数の人物がジェスチャ認識空間内におり、三本以上の手を検出した場合も、ノーハンドとして処理する。
【００３１】
検出した手の数が二本の場合（Ｓ６０３：Y）、制御部１０２は、現在の状態をマルチハンド（二本の手）によるジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６０８）。図５の例では、検出時刻５０１が「３１５０ｍｓ」〜「３３００ｍｓ」である。その後、制御部１０２は、ジェスチャ認識部１０３により、検出した手の座標に基づいて認識されたマルチハンドジェスチャに応じた処理を実行する（Ｓ６０９）。
【００３２】
ジェスチャ認識部１０３は、前回のジェスチャ認識処理で検出した両手の座標と今回検出した両手の座標とから、マルチハンドジェスチャ認識を行う。前回のジェスチャ認識処理で検出した第１の手の座標から今回検出した第１の手の座標へのベクトルを「Ｖ１」、前回のジェスチャ認識処理で検出した第２の手の座標から今回検出した第２の手の座標へのベクトルを「Ｖ２」とする。また、前回のジェスチャ認識処理で検出した両手の座標の中点から、前回のジェスチャ認識処理で検出した第１の手の座標へのベクトルを「ＮＶ」とする。単位ベクトルを、それぞれ、ｅ(Ｖ１)、ｅ(Ｖ２)、ｅ(ＮＶ)とする。ジェスチャ認識部１０３は、これらのベクトルの内積値により、マルチハンドジェスチャを以下のように判断する。
・「ｅ(Ｖ１)・ｅ(Ｖ２)＞０.７」の場合は平行移動。
・「ｅ(Ｖ１)・ｅ(Ｖ２)＜−０.７」かつ「ｅ(Ｖ１)・ｅ(ＮＶ)＞０.７」の場合は拡大。
・「ｅ(Ｖ１)・ｅ(Ｖ２)＜−０.７」かつ「ｅ(Ｖ１)・ｅ(ＮＶ)＜−０.７」の場合は縮小。
・「ｅ(Ｖ１)・ｅ(Ｖ２)＜−０.７」かつ上記以外の場合は回転。
【００３３】
例えば、図５の検出時刻５０１が「３２００ｍｓ」の場合、Ｖ１＝（−９，５）、Ｖ２＝（９，−５）、ＮＶ＝（−５６.５，２１.５）である。内積値は以下のようになる。
【００３４】
ｅ(Ｖ１)・ｅ(Ｖ２)
＝（−０.８７４，０.４８６）・（０.８７４，−０.４８６）
＝−１.０００
ｅ(Ｖ１)・ｅ(ＮＶ)
＝（−０.８７４，  ０.４８６）・（−０.９３５，  ０.３５６）
＝０.９９０ 
【００３５】
そのために、ジェスチャ認識部１０３は、ジェスチャを拡大と判断する。同様に、検出時刻５０１が「３２５０ｍｓ」、「３３００ｍｓ」の場合においても、ジェスチャ認識部１０３はジェスチャが拡大であると認識する。なお、ジェスチャ認識部１０３によるジェスチャ認識処理は、ジェスチャの種類や認識方法、使用する座標の系列について、ジェスチャの認識結果が妥当である限りは多少異なっていてもよい。
【００３６】
ステップＳ６０４において、前回のジェスチャ認識処理がマルチハンドによるものである場合（Ｓ６０４：Y）、制御部１０２は、マルチハンド推定を行う。制御部１０２は、マルチハンド推定を行うために必要な情報を記憶部１０５に記憶する（Ｓ６１０）。このような情報には、検出した手の座標、前回のジェスチャ認識処理の結果が拡大、縮小、回転の場合には前回の両手の座標の中点、平行移動の場合には前回の両手の座標の中線等がある。図５の例では、検出時刻５０１が「３３００ｍｓ」において拡大処理が行われているため、この後の処理も拡大、縮小、又は回転が行われると予想して、制御部１０２は、検出時刻５０１が「３３００ｍｓ」のときの両手の座標の中点を記憶部１０５に記憶する。検出時刻５０１が「３３００ｍｓ」の両手の座標は、図４（ｂ）の第１の手の座標４０５、第２の手の座標４０６であるので、中点の座標は、（１９２，１３０）である。
【００３７】
制御部１０２は、マルチハンド推定を行うために必要な情報の記憶後に、現在の状態をマルチハンド推定を伴うジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６１１）。その後、制御部１０２は、マルチハンド推定処理を行い、検出している一本の手の座標から、ジェスチャ認識空間外にあるもう一本の手の座標を推定する（Ｓ６１２）。
【００３８】
ステップＳ６１０において中点が記憶されている場合、制御部１０２は、検出している一本の手の座標から当該中点を挟んで逆側にもう一本の手があると推定して、座標を算出する。ステップＳ６１０において中線が記憶されている場合、制御部１０２は、検出している一本の手の座標から当該中線を挟んで逆側にもう一本の手があると推定して、座標を算出する。図５の検出時刻５０１が「３３５０ｍｓ」の状態では、中点が記憶されるため、中点を用いてジェスチャ認識空間外にあるもう一本の手の座標を算出する。
マルチハンド推定後に制御部１０２は、検出した手の座標及び推定した手の座標により、マルチハンドジェスチャ認識処理を行う（Ｓ６０９）。
【００３９】
図５の例では、検出時刻５０１が「３３５０ｍｓ」における第１の手の座標４０８が（９６，１７４）であるため、中点４０７を挟んだ第２の手の座標４０９は（２８８，８６）と推定される。このとき、第１の手の座標４０８及び第２の手の座標４０９は互いに離隔する方向に移動するので、ジェスチャ認識部１０３は、拡大と判断する。
マルチジェスチャ認識処理を推定した座標に基づいて行う場合、ジェスチャ認識装置１００は、操作者に対してその旨を報知する。例えば、表示システム３００に手の位置がジェスチャ認識空間外にあることを警告表示してもよく、また、音により警告を行ってもよい。操作者は、報知により自身の手がジェスチャ認識空間外にあることを知ることができ、手の位置をジェスチャ認識空間内に戻すことができる。
【００４０】
ステップＳ６０５において前回のジェスチャ認識処理がマルチハンド推定処理を伴う処理であった場合（Ｓ６０５：Y）、制御部１０２は、現在の状態をマルチハンド推定を伴うジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６１１）。その後、制御部１０２は、マルチハンド推定処理を行うが、この場合、推定に用いる中点、中線の座標に、前回のジェスチャ認識処理時のマルチハンド推定処理で用いたものを用いる（Ｓ６１２）。
【００４１】
このような処理は、図５の例において、検出時刻５０１が「３４００ｍｓ」〜「３５５０ｍｓ」の状態で行われる。検出時刻５０１が「３４００ｍｓ」の場合、ジェスチャ認識処理では、拡大を認識する。検出時刻５０１が「３４５０ｍｓ」の場合、ジェスチャ認識処理では、縮小を認識する。検出時刻５０１が「３５００ｍｓ」、「３５５０ｍｓ」の場合、ジェスチャ認識処理では、回転を認識する。
【００４２】
このように、手の位置の検出によりジェスチャ認識処理が行われる。引き続き操作が行われる場合には、再度ステップＳ６０１からの処理を繰り返すことになる。以上のような処理により、両手を使って三次元空間内でジェスチャを行う場合に、一方の手がジェスチャ認識空間の範囲内から外れてしまっても、他方の手の位置から範囲外にある手の位置を推定することで、操作者に広いジェスチャ認識空間を提供できるようになる。
【００４３】
＜第２実施形態＞
第２実施形態では、マルチハンド推定で推定した手の位置の妥当性を判断する。例えば、マルチハンド推定を行った次の検出時刻でマルチハンドによる処理を行う、マルチハンド推定により推定した手の位置と、次の検出時刻で検出した手の位置とから、推定した手の位置の妥当性を判断する。妥当でない場合、推定した手の位置から、次の検出時刻検出した手の位置までの座標の補間を行い、操作が矛盾なく行われるようにする。第２実施形態のジェスチャ認識装置１００のハードウェア構成及び機能ブロックは、第１実施形態と同様であるので、説明を省略する。
【００４４】
図７は、第２実施形態における、手の位置の座標を時系列に表す図である。図５の第１実施形態の図とは、検出時刻５０１が「３５００ｍｓ」以降の第１の手の座標５０２及び第２の手の座標５０３が異なる。また、検出時刻５０１が「３５５０ｍｓ」において、二本の手が検出されている。
【００４５】
図８は、制御部１０２により実行される第２実施形態のジェスチャ認識処理の処理手順を表すフローチャートである。図８には、図６の第１実施形態のジェスチャ認識処理との相違部分のみを記載している。
【００４６】
ステップＳ６０３において検出した手の数が二本の場合（Ｓ６０３：Y）、制御部１０２は、前回のジェスチャ認識処理でマルチハンド推定を行ったか否かを判断する（Ｓ８０１）。マルチハンド推定を行っていない場合（Ｓ８０１：N）、制御部１０２は、第１実施形態と同様に、現在の状態をマルチハンド（二本の手）によるジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６０８）。
【００４７】
マルチハンド推定を行っている場合（Ｓ８０１：Y）、制御部１０２は、推定した手の位置の妥当性を判断する（Ｓ８０２）。妥当な場合（Ｓ８０２：Y）、制御部１０２は、現在の状態をマルチハンド（二本の手）によるジェスチャ認識処理として記憶部１０５に記憶する（Ｓ６０８）。妥当ではない場合（Ｓ８０２：N）、制御部１０２は、推定した手の座標から、今回検出した手の座標までの補間を行う（Ｓ８０３）。
【００４８】
制御部１０２は、推定した手の位置の妥当性を、例えば、推定した手の座標と、今回検出した手の座標との距離により判断する。例えば、距離が所定値以下であり十分に近い場合（例えば、座標間の距離が「１０」以下）、制御部１０２は、推定した手の位置が妥当であると判断する。遠い場合（距離が所定値より大きい場合）、制御部１０２は、推定した座標から今回検出したの手の座標の間を新たな座標で補間し、補間した座標によりジェスチャ認識処理を行う。なお、「座標間の距離」とは、ジェスチャ認識空間４００（図４参照）の座標上の距離である。
【００４９】
図７の例では、検出時刻５０１が「３５００ｍｓ」で第２の手の座標５０３の推定を行った後、「３５５０ｍｓ」で入力部１０１により第２の手の座標５０３が検出されているが、これらの座標間の距離は「４４．４」と大きく隔離している。このような場合、検出時刻５０１が「３５００ｍｓ」のときの座標と、「３５５０ｍｓ」のときの座標との間に、新たな座標を補間する。例えば、座標間を距離を「１０」程度にして等間隔に座標を補間する。補間により、検出時刻「３５００ｍｓ」〜「３５５０ｍｓ」の間で、新たな第２の手の座標５０３の座標列（２７９，８８）、（２７８，９９）、（２７６，１１０）、（２７５，１２１）、（２７３，１３２）が生成される。制御部１０２は、このような座標列を順に処理してジェスチャ認識処理を行う。
なお、ステップＳ８０２で推定した手の座標が、今回検出した手の座標から大きく離隔する場合には、補間を行わずに、推定した手の座標を今回検出した手の座標に置き換えて処理を続行してもよい。
【００５０】
以上のように、両手を使って三次元空間内でジェスチャを行う場合に、一方の手がジェスチャ認識空間から外れてしまった場合でも、もう一方の手の位置からジェスチャ認識空間の範囲外にある手の位置を推定することができる。これにより、操作者に広いジェスチャ認識空間を提供できるようになる。さらに第２実施形態では、推定した手の座標と、実際の手の座標に大きな相違がある場合に、それらの間の違いを吸収してジェスチャに矛盾が生じないようにすることができる。
【００５１】
なお、第１、第２実施形態では、認識部位として手を用いているが、これに限らず、操作者が動かすことができる部位であればよい。また、手の座標の推定は、ジェスチャ認識空間から手の位置が外れた場合以外に、手が入力装置２０４から隠れる位置にあり、入力装置２０４が位置を検出できない場合にも行うようにしてもよい。
【符号の説明】
【００５２】
１００…ジェスチャ認識装置、１０１…入力部、１０２…制御部、１０３…ジェスチャ認識部、１０４…表示部、１０５…記憶部。
【図１】
2014222381.tif 000003
【図２】
2014222381.tif 000004
【図３】
2014222381.tif 000005
【図４】
2014222381.tif 000006
【図５】
2014222381.tif 000007
【図６】
2014222381.tif 000008
【図７】
2014222381.tif 000009
【図８】
2014222381.tif 000010