(57)【要約】  本発明は、ジェスチャによる動作情報を取得する手段と、動作情報に基づいてコンピュータのデスクトップ上のオブジェクトを操作するための情報を生成する入力インタフェース手段とを備えることによって、人間のジェスチャ（動作）を用いて、人間にとって自然で直感的に操作可能な入力インタフェースを提供するものである。このとき、ユーザの動作を認識するためのテンプレートとのマッチングにより適合するイベントを出力し、オブジェクトを操作する。また、オブジェクトにはメニュー項目が円状に配置されたパイメニューが含まれ、ユーザは、手首の捻り角度に応じて当該パイメニューの中から所望のメニュー項目を選択することができる。
2008029467.tif 000002
【特許請求の範囲】
【請求項１】
ジェスチャによる動作情報を取得する動作情報取得手段と、
前記動作情報取得手段により取得された動作情報に基づいて、コンピュータのデスクトップ上のオブジェクトを操作するための情報を生成する入力インタフェース手段と、
を備えるジェスチャ入力システム。
【請求項２】
ユーザの動作を認識するためのテンプレートを格納するテンプレート記憶手段を備え、
前記入力インタフェース手段は、
前記動作情報取得手段により取得された動作情報に対して、前記テンプレート記憶手段に格納されたテンプレートを使用してマッチングを行うテンプレートマッチング手段と、
前記テンプレートマッチング手段により適合されたテンプレートに対応付けられた出力イベントを出力するイベント出力手段と、
前記イベント出力手段により出力された出力イベントに基づいて、デスクトップ上のオブジェクトを操作するための情報を生成する操作情報生成手段と、
を備える請求の範囲１記載のジェスチャ入力システム。
【請求項３】
前記オブジェクトには、メニュー項目が円状に配置されたパイメニューが含まれ、ユーザは所定のジェスチャによって、前記パイメニューのうち任意のメニュー項目を選択する、
ことを特徴とする請求の範囲２記載のジェスチャ入力システム。
【請求項４】
前記操作情報生成手段は、ユーザの手首の捻り角度に応じて前記パイメニューのメニュー項目を選択するための情報を生成する、
ことを特徴とする請求の範囲３記載のジェスチャ入力システム。
【請求項５】
前記パイメニューは階層化されている、
ことを特徴とする請求の範囲４記載のジェスチャ入力システム。
【請求項６】
ジェスチャによる動作情報を取得する動作情報取得ステップと、
前記動作情報取得ステップにより取得された動作情報に基づいて、デスクトップ上のオブジェクトを操作するための情報を生成するステップと、
を備えるジェスチャ入力方法。
【請求項７】
請求の範囲６に記載のジェスチャ入力方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータへの入力インタフェースに関する。
【背景技術】
【０００２】
従来より、コンピュータへの入力インタフェースとしてキーボード、マウス、タッチパネルなど様々な装置が使われているが、多種多様なユーザの声に応えるために、他にも様々な入力インタフェースが提案されている。【０００３】
そのような中で、近年、マルチモーダルインタフェースが注目されている。マルチモーダルとは、複数の態様という意味で、マルチモーダルインタフェースとは複数のメディアを用いたインタフェースを指す。通常は音声情報と映像情報とを組み合わせたインタフェースを指すことが多い。また、音声情報を用いずに非言語情報を用いるノンバーバルインタフェースも知られている（非特許文献１）。
【非特許文献１】黒川隆夫、「ノンバーバルインタフェース  ヒューマンコミュニケーション工学シリーズ」、オーム社、１９９４年
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、ノンバーバルインタフェースに関しては、人間の身振り・手振りといったジェスチャを用いた入力インタフェースが提案されており、例えば、アミューズメント分野において全身の動作を用いてゲームを行うものが知られている。そして、一般のコンピュータへの入力インタフェースにジェスチャを用いることも研究されているものの、従来のジェスチャ入力は使い易さの点で改善の余地が残されている。【０００５】
本発明は、かかる事情に鑑みてなされたものであり、人間のジェスチャ（動作）を用いて、人間にとって自然で直感的に操作可能な入力インタフェースを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明によるジェスチャ入力システムは、ジェスチャによる動作情報を取得する動作情報取得手段と、動作情報取得手段により取得された動作情報に基づいて、コンピュータのデスクトップ上のオブジェクトを操作するための情報を生成する入力インタフェース手段と、を備える。【０００７】
好適には、ジェスチャ入力システムは、ユーザの動作を認識するためのテンプレートを格納するテンプレート記憶手段を備え、入力インタフェース手段が、動作情報取得手段により取得された動作情報に対して、テンプレート記憶手段に格納されたテンプレートを使用してマッチングを行うテンプレートマッチング手段と、テンプレートマッチング手段により適合されたテンプレートに対応付けられた出力イベントを出力するイベント出力手段と、イベント出力手段により出力された出力イベントに基づいて、デスクトップ上のオブジェクトを操作するための情報を生成する操作情報生成手段と、を備える。【０００８】
また、オブジェクトには、メニュー項目が円状に配置されたパイメニューが含まれ、ユーザは所定のジェスチャによって、前記パイメニューのうち任意のメニュー項目を選択するものであることが好ましい。【０００９】
さらに好適には、操作情報生成手段は、ユーザの手首の捻り角度に応じてパイメニューのメニュー項目を選択するための情報を生成する。そして、パイメニューは階層化されていることが好ましい。【００１０】
また、本発明によるジェスチャ入力方法は、ジェスチャによる動作情報を取得する動作情報取得ステップと、動作情報取得ステップにより取得された動作情報に基づいて、デスクトップ上のオブジェクトを操作するための情報を生成するステップと、を備える。【００１１】
本発明のプログラムは、本発明のジェスチャ入力方法の各処理ステップをコンピュータに実行させることを特徴とする。本発明のプログラムは、プログラムプロダクトとして流通され、ＣＤ−ＲＯＭ等の光学ディスク、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークなどを介してダウンロードすることにより、コンピュータにインストール又はロードすることができる。【００１２】
なお、本明細書等において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、１つの手段が有する機能が２つ以上の物理的手段により実現されても、２つ以上の手段の機能が１つの物理的手段により実現されてもよい。
【発明の効果】
【００１３】
本発明のジェスチャ入力システムによれば、我々が普段何気なく使っている情報伝達手段の一つであるジェスチャを用いて、人間にとって自然で直感的に操作可能な入力インタフェースを提供することが可能になる。また、特段の訓練を要することなく、誰にでも使い易い入力インタフェースを実現できるので、次世代の入力インタフェースの基盤技術となり得る。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面を参照しつつ詳細に説明する。なお、同一の要素には同一の符号を付し、重複する説明を省略する。【００１５】
図１は、本発明によるジェスチャ入力システム１００の全体構成を示すブロック図である。図１に示すように、本ジェスチャ入力システム１００は、動作情報取得手段及び入力インタフェース手段として機能するシステムであり、複数台のカメラ１０と、モーションキャプチャシステム１２と、ワークステーション１４と、リアルタイムエンジン１６と、インタフェースシステム１８と、不図示のクライアントコンピュータにより構成される。【００１６】
モーションキャプチャシステム１２は、捕捉対象となる人物の全身にセンサ等を取り付けて、捕捉対象者の三次元的な運動情報を取得するシステムである。本実施形態においては、光を反射する特殊な球体（マーカ）を用いて、所定位置に設置された複数台のカメラ１０で捕捉対象を別方向から撮影し、各カメラから得られた二次元画像（各マーカの二次元座標位置）を結合することによって、三次元空間内でのマーカの座標データを算出し、動作情報を取得する。【００１７】
ワークステーション１４は、モーションキャプチャシステム１２により収集されたキャプチャデータの整形及び変換を行うためのデータプロセシング・ソフトウェアが実装されている。このデータプロセッシング・ソフトウェアにより、二次元情報から三次元情報への変換（リコンストラクト）や、或るカメラ１０からマーカが死角になった際のデータ欠落を修正するための補間又は除去等の処理が行われ、リアルタイムでのキャプチャデータの取得を可能にしている。【００１８】
リアルタイムエンジン１６は、リアルタイムでのデータの流れを生み出すための処理機構であり、このリアルタイムエンジン１６を介在させることによって、インタフェースシステム１８はモーションキャプチャデータをリアルタイムで取得できるようになっている。【００１９】
インタフェースシステム（入力インタフェース手段）１８は、リアルタイムエンジン１６から取得したキャプチャデータに基づいて、動作イベントをクライアント（不図示）に出力する。当該クライアントは、取得した動作イベントに基づいて、デスクトップの操作等を行う。詳細は後述する。【００２０】
なお、本実施形態においては、モーションキャプチャシステム１２にＶｉｃｏｎ８ｉを使用する。また、ワークステーション１４には、Ｖｉｃｏｎ  ｉＱを実装する。さらに、リアルタイムエンジン１６としてＴａｒｓｕｓを使用する。【００２１】
なお、モーションキャプチャシステム１２、ワークステーション１４、リアルタイムエンジン１６、インタフェースシステム１８、及びクライアントコンピュータはそれぞれ、ＣＰＵ等の処理装置、ＲＯＭやＲＡＭ等のメモリ、各種の情報を格納する外部記憶装置、入出力インタフェース、通信インタフェース等を備える専用又は汎用のコンピュータを適用することができる。また、これら各システム等は、単一のコンピュータより構成されるものであっても、複数のコンピュータより構成されるものであってもよい。また、単一のコンピュータが複数のシステム機能を備えてもよい。【００２２】
図２は、捕捉対象者の全身に取り付けられるマーカの配置を示す図である。本実施形態においては、同図に示すように、全身の４４箇所にマーカを配置するが、マーカの配置及び個数は、図２に示すものに限定されるものではない。【００２３】
なお、本発明においては、キャプチャデータを入力インタフェースとして利用するにあたりリアルタイム性が重要な要素となってくるので、モーションキャプチャのクオリティを保ったまま余分な情報を省き、キャプチャデータを軽量化することが好ましい。例えば、捕捉対象者の全身に取り付けたマーカの情報に人間の骨格情報を加味して算出されたボディデータを利用することにより、マーカデータに比べ情報量を減らし、かつ、より端的に人間の動作情報を利用することができるようになる。【００２４】
図３は、モーションキャプチャシステム１２により得られるキャプチャデータの座標系を示す図である。同図に示すとおり、キャプチャデータは、キャプチャエリアの中心を原点とするグローバル座標系に基づくデータとして取得される。【００２５】
図４は、モーションキャプチャシステム１２により得られるキャプチャデータの構造を示す図である。同図に示すとおり、キャプチャデータは、現在の取得データのフレーム番号２０、並びに、各マーカ毎に取得された、計測対象者の名前を示すサブジェクト名、どのマーカの情報であるかを示すラベル名、及び計測された三次元の座標情報を含むデータ２２が、フレーム毎に取得される。【００２６】
図５は、インタフェースシステム１８における動作認識処理のフローチャートである。インタフェースシステム１８は、リアルタイムエンジン１６からリアルタイムでデータ取得すると（Ｓ３１）、動作認識に利用し易いようにデータを整形するための前処理を行う（Ｓ３２）。その後、予め用意しておいたテンプレートとマッチングを行うことで目的の動作を認識し（Ｓ３３）、テンプレートと適合する場合には当該テンプレートに対応付けられた動作イベントを出力する（Ｓ３４）。以下、各処理ステップについて詳細に説明する。【００２７】
（ステップＳ３２：前処理）
リアルタイムエンジン１６から得られたキャプチャデータは、そのままでは動作認識への適用が困難であるので、前処理、すなわち、正規化及び座標変換によって動作認識に利用し易いデータに変換する。【００２８】
（正規化）
人間の体型は一様ではないため、リアルタイムエンジン１６から得られたキャプチャデータをそのまま使うためには、各個人に対して作成されたテンプレートをそれぞれ用意する必要がある。そこで、予め定められた標準形の体型にキャプチャデータを矯正して個体差を吸収することによって、どのような体型の人であっても同一体型の人間のデータとして扱うことが可能となり、ある動作に対して単一のテンプレートの適用が可能となる。なお、テンプレートについては後述する。【００２９】
図６は、正規化の例を示す図であり、図７は木構造の一例を示す図である。図６（Ａ）〜（Ｃ）は、各個人に個別の体型のボディデータであり、図６（Ｄ）は予め基本モデルとして与えられた標準型体型のボディデータである。そして、図６（Ａ）〜（Ｃ）に示されるボディデータが、本正規化処理を経て、図６（Ｄ）に示される標準型の体型に近づくように補正される。【００３０】
具体的な正規化の手順は以下のとおりである。【００３１】
まず、予め、ボディデータによって得られる人間の部位を、図７に示すような木構造によって定義する。また、基本モデルの身長と木構造の各ノードの親子間の距離を定義することによって、上半身と下半身の割合や手足の長さを決めておく。【００３２】
次に、捕捉対象者の基本ポーズを取得し、捕捉対象者の特徴を得る。そして、定義した基本モデルの身長を基に、捕捉対象者のボディデータの木構造の親子間の距離を求め、各ノード毎に変換比率を求めておく。なお、この処理は、各捕捉対象者のモーションキャプチャを行う際の初期化時に行う。【００３３】
そして、モーションキャプチャの実行中、取得フレーム毎に、取得データに対して木構造の親子間の位置関係による方向量（単位ベクトル）を求め、変換比率と方向量を基に位置関係を修正し、基本モデルに合わせる。なお、足及びつま先（図７のfootとtoes）については足のブレを防ぐために、親ノード（図７のfemur）に対するＸ軸及びＹ軸成分（高さ成分を除く）に対する影響のみを考えることが好ましい。【００３４】
（座標変換）
リアルタイムエンジン１６から取得されるデータは、キャプチャエリアの中心を原点としたグローバル座標系に基づくデータであるので、これに座標変換を行い、視線方向（体の向き）を固定し且つ立ち位置を原点とするローカル座標系に変換する。この座標変換は、例えば、以下のように行う。すなわち、まず、取得データに対してＺ軸（高さ成分）を除くＸ軸及びＹ軸成分に対して捕捉対象者の中心である腰を原点とする座標系に変換し、次に、視線方向（頭の向き）がＹ軸正方向となるように座標変換を行う。【００３５】
この座標変換によって、ローカル座標系においては、捕捉対象者の中心が原点で、視線方向がＹ軸正方向に固定されるため、立ち位置や体の向きに影響を受けることなく、どこにいてどの方向を向いて動作した場合においても一様に評価することが可能となる。【００３６】
また、歩く・走るといった移動を伴う動作等は、グローバル座標系のデータを用いて評価した方が有効である場合もあるので、動作認識の際には、グローバル座標系のデータも利用できるようになっていることが望ましい。【００３７】
（ステップＳ３３：テンプレートマッチング）
本実施形態においては、認識した結果を基にインタフェースを構築する際に利用し易いように、認識結果を動作イベントとして発生し、クライアントに送るようになっている。このとき、予め記憶装置（テンプレート記憶手段）に格納されたテンプレートに対して、取得されたデータがいずれかのテンプレートに適合しているかどうかを評価し（テンプレートマッチング手段）、適合する場合に、テンプレートに応じたイベントを発生させる（イベント出力手段）。また、開始と終了のテンプレートを用意することによって、動作の開始と終了を明示的に認識し、意図する動作イベントの取得を可能としている。すなわち、イベント発生可能状態のときに開始テンプレートに適合した場合には、動作開始イベントを発生させ、イベント発生不可状態に移行（状態遷移）する。そして、イベント発生不可状態のときに終了テンプレートに適合した場合には、動作終了イベントを発生させ、イベント発生可能状態に移行する。【００３８】
図８は、開始テンプレートと終了テンプレートの動作を示す図である。同図の横軸は時間を示し、ここでは、捕捉対象者がジャンプ動作を行った場合を想定する（図８（Ａ））。このとき、ジャンプ動作の開始テンプレートが適合した際に（ＪＵＭＰ＿ＯＮ：図８（Ｂ）ｔｒｕｅ）、動作開始イベントを発生させる（図８（Ｄ）ｔｒｕｅ）。これにより、以後は終了テンプレートに適合して動作終了イベントが発生するまで次の動作開始イベントは発生しない。そして、動作終了イベントが発生すると（ＪＵＭＰ＿ＯＦＦ：図８（Ｃ）ｆａｌｓｅ）、再び動作開始イベントの発生可能状態となる（図８（Ｄ）ｆａｌｓｅ）。【００３９】
図９は、テンプレートマッチングに用いるパラメータを示す図である。本実施形態においては、テンプレートマッチングに、位置、速度、加速度、距離、方向という５つの要素をパラメータとして用いている。インタフェースシステム１８は、フレーム毎にこれらのパラメータを取得するが、このとき、速度等のパラメータは、複数フレームに跨った計算を行って取得する。これにより、動作の流れを捉えることが可能となる。【００４０】
図１０は、テンプレートの一例として、ジャンプ動作のテンプレートである。各テンプレートは“＜イベント名＞”で始まる開始テンプレートと、“−イベント名”で始まる終了テンプレートによって構成される。そして、開始・終了テンプレートのそれぞれに対して、ボディデータのラベル、評価パラメータ、及び評価値の順に記述される。ジャンプ動作のテンプレートの各行の意味は、以下のとおりである。
１：“ＪＵＭＰ”動作の開始テンプレート
２：頭の加速度が閾値以上
３：頭の方向量がＺ方向に閾値以上
４：腰の加速度が閾値以上
５：腰の方向量がＺ軸方向に閾値以上
６：右足の位置がＺ軸方向に閾値以上
７：左足の位置がＺ軸方向に閾値以上
（この開始テンプレートにより、頭と腰が閾値以上の加速度で上昇し、かつ、両足が浮いている状態であるか否かを判断し、全て適合すれば、ジャンプ開始を判断する。）
８：“ＪＵＭＰ”の終了テンプレート
９：右足の位置がＺ軸方向に閾値以下
１０：左足の位置がＺ軸方向に閾値以下
（この終了テンプレートにより、両足が地に着いている状態か否かを判断し、全て適合すれば、ジャンプ終了を判断する。）【００４１】
次に、ジェスチャ入力システム１００によって得られた動作情報を用いて、リアルタイムでカーソル操作やウィンドウ操作を行うための情報を生成する入力インタフェース処理（操作情報生成手段）について説明する。なお、本実施形態においては、ハンドジェスチャを用いて仮想デスクトップ環境でのウィンドウ操作を行うことについて説明する。【００４２】
本実施形態では、画面（デスクトップ）上に２つのカーソルを表示させ、各カーソルを左右の手のそれぞれに対応させておき、左右の手の座標情報を基に各カーソルを操作する。ここで、カーソルには、通常状態と選択状態が存在し、指差す動作によって通常状態から選択状態に移行する。カーソルに通常状態と選択状態を設けることによって、動作中に意図しないイベントの発生を無くすことができえる。また、カーソルが選択状態のときに手首を捻る動作を行うことによって、マウスのクリックに相当する操作（以下「選択操作」という。）を実行する。さらに、選択操作状態のまま手を動かすことによって、ドラッグに相当する操作を実行する。【００４３】
図１１は、ジェスチャ入力によるカーソル操作を示す図である。図１１（Ａ）に示すように、手のひらを下に向けた状態でカーソルを移動させる。そして、カーソルが選択状態のときに手首を捻ることによって、選択操作を行う（図１１（Ｂ））。【００４４】
なお、他の実施形態として、片方の手の座標情報を基にカーソルを操作して、別の手のパンチ動作によって、選択操作を実行するようにしてもよい。この場合、カーソルの状態（通常状態、選択状態）に関わらず、選択操作を実行することが好ましい。【００４５】
次に、既存のデスクトップインタフェースにはない操作方法として、カーソル操作を伴うことなく、各オブジェクト（ウィンドウ）を操作する方法について説明する。【００４６】
図１２は、両手でウィンドウのサイズを変更する操作方法を示す図である。図１２（Ｂ）に示すように、左右の手を揃えるジェスチャによってウィンドウのサイズ変更状態に移行する。このサイズ変更状態において、左右の手の幅を広げることによってウィンドウサイズを広げ（図１２（Ａ））、左右の手の幅を縮めることによってウィンドウサイズを縮小する（図１２（Ｃ））。なお、ウィンドウサイズは、横幅、縦幅、又は縦横幅の３通りの変更が可能である。両手を左右に動かすことによって横幅を変更し、上下に動かすことによって縦幅を変更し、斜め方向に動かすことによって縦横幅を変更する。【００４７】
図１３は、片手でウィンドウのサイズを変更する操作方法を示す図である。まず、手首を捻ってサイズ変更状態に移行させ、サイズ変更状態になったときの手の座標を基点とし（図１３（Ｂ））、基点より前に腕を移動させることによりウィンドウサイズを大きくし（図１３（Ａ））、基点より後ろに腕を移動させることによりウィンドウサイズを小さくする（図１３（Ｃ））。【００４８】
また、ジェスチャ入力によって、ウィンドウサイズ変更以外にも、種々の操作を実現可能である。例えば、パンチ動作によって、指定したウィンドウを最大化し、また、最大化状態でパンチ動作をすることによって元のサイズに戻すことができる。また、ウィンドウを払いのけるジェスチャによって、ウィンドウを手の移動方向に移動させることができる。さらに、手を振る動作によって、指定したウィンドウを閉じることができる。【００４９】
さらに、マウスやタッチパネルのような上下・左右方向のみならず、ジェスチャにおいては前後方向も加えた三次元の情報を入力できるので、オブジェクト間の奥行きの動きを操作することもできる。例えば、重なっているウィンドウから、奥のウィンドウを手前に表示させたり、逆に、手前のウィンドウを奥に隠したりすることができる。【００５０】
次に、本ジェスチャ入力によって、パイメニューを選択する処理について説明する。【００５１】
図１４は、パイメニューの一例を示す図である。図１４（Ａ）に示すように、パイメニューとは、１つの円の中に複数のパイ（メニュー項目）があり、それぞれのパイは円を中心から分割する形で表示される。１つのパイメニューではメニュー項目数が限られ、選択できる機能が制限されてしまうが、図１４（Ｂ）に示すようにパイメニューを階層化すると、より多くの機能を実装することが可能となる。メニューがさらに詳細に項目分けされる項目には、項目名に「▲」等の所定マークを付して、さらに下位階層のメニューがあることをユーザに示す。【００５２】
また、このパイメニューは、通常操作時には画面上に表示されず、ユーザの動作、例えば右足を上げる等、によってポップアップ形式で表示される。【００５３】
図１５は、パイメニューのメニュー選択操作方法を示す図である。同図に示すように、ユーザは手首の角度によって、各パイを選択する。例えば、図１５（Ｂ）に示すように、手のひらが下を向いている状態のときに、上側のパイが選択された状態になる。そして、図１５（Ａ）に示すように、手首を時計回り方向に捻ることによって、その捻った角度に応じて、時計回り方向のパイを選択する。また、図１５（Ｃ）に示すように、手首を反時計回り方向に捻ることによって、その捻った角度に応じて、反時計回り方向のパイを選択する。ユーザは所望のパイを選択した後、パンチ動作によって、現在選択されているパイを決定し、当該パイのメニュー項目に対応する処理を実行する。【００５４】
また、パイメニューのメニュー選択の他の実施形態として、パイメニューがポップアップ表示された直後は、所定のパイが選択された状態になっていて、手首を時計回り方向に捻ることによって、パイを時計回りで順に選択し、また、手首を反時計回り方向に捻ることによって、パイを反時計回りで順に選択するようにしてもよい。【００５５】
さらに、パイメニューが階層化されている場合、選択決定したメニュー項目に下位階層のメニューがあれば、その下位階層のパイメニューを表示する。子（下位階層）のパイメニューから親（上位階層）のパイメニューへ戻る際には、手の位置を大きく動かした後に選択操作を行うことにより、親のパイメニューへ戻る。ルートのパイメニュー表示時に同様の動作を行うと、パイメニューの表示が消える。【００５６】
なお、パイメニューは手首の回転によって操作するが、手や足の先の部位になると、情報の欠落等によりモーションキャプチャシステム１２側での認識精度が落ちる。そこで、クライアント側で手首の傾きを３次元ベクトル化した数値情報を読み取り、欠落したデータを補間するとよい。【００５７】
以上、詳細に説明したように、本発明のジェスチャ入力システムによれば、我々が普段何気なく使っている情報伝達手段の一つであるジェスチャを用いて、上下・左右方向の二次元情報のみならず前後方向（奥行き）を加えた三次元情報を入力情報として利用することにより、人間にとって自然で直感的に操作可能な入力インタフェースを提供することが可能になる。このとき、自然な動きに近い操作方法を採用することにより、特段の訓練を要することなく、誰にでも使い易い入力インタフェースを実現している。また、タッチパネルと異なり、パネルから離れた遠隔地から操作可能である。【００５８】
なお、本発明は、上記した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において、他の様々な形で実施することができる。このため、上記実施形態はあらゆる点で単なる例示にすぎず、限定的に解釈されるものではない。例えば、上述の各処理ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。【００５９】
本実施形態においては、光学式のモーションキャプチャシステムを用いて、捕捉対象者の動作情報を取得するものとしたが、本発明はこれに限定されるものではなく、他手法により動作情報を取得するものとしてもよい。例えば、本実施形態においては、ハンドジェスチャの動作情報をモーションキャプチャシステムを用いて取得するものとしたが、データグローブ等を用いて、又は、併用して、ハンドジェスチャの動作情報を取得するものとしてもよい。【００６０】
また、本実施形態においては、主にハンドジェスチャを用いた入力インタフェースについて説明したが、本発明はこれに限定されるものではなく、全身の動きを取り入れた入力インタフェースを実装可能である。
【図面の簡単な説明】
【００６１】
【図１】ジェスチャ入力システム１００の全体構成を示すブロック図である。
【図２】捕捉対象者の全身に取り付けられるマーカの配置を示す図である。
【図３】モーションキャプチャシステム１２により得られるキャプチャデータの座標系を示す図である。
【図４】モーションキャプチャシステム１２により得られるキャプチャデータの構造を示す図である。
【図５】インタフェースシステム１８における動作認識処理のフローチャートである。
【図６】正規化の例を示す図である。
【図７】木構造の一例を示す図である。
【図８】開始テンプレートと終了テンプレートの動作を示す図である。
【図９】テンプレートマッチングに用いるパラメータを示す図である。
【図１０】ジャンプ動作のテンプレートである。
【図１１】ジェスチャ入力によるカーソル操作を示す図である。
【図１２】両手でウィンドウのサイズを変更する操作方法を示す図である。
【図１３】片手でウィンドウのサイズを変更する操作方法を示す図である。
【図１４】パイメニューの一例を示す図である。
【図１５】パイメニューのメニュー選択操作方法を示す図である。
【符号の説明】
【００６２】
１０   カメラ
１２   モーションキャプチャシステム
１４   ワークステーション
１６   リアルタイムエンジン
１８   インタフェースシステム（入力インタフェース手段）
２０   フレーム番号
２２   データ（サブジェクト名、ラベル名、及び座標情報）
１００ ジェスチャ入力システム
【図１】
2008029467.tif 000003
【図２】
2008029467.tif 000004
【図３】
2008029467.tif 000005
【図４】
2008029467.tif 000006
【図５】
2008029467.tif 000007
【図６】
2008029467.tif 000008
【図７】
2008029467.tif 000009
【図８】
2008029467.tif 000010
【図９】
2008029467.tif 000011
【図１０】
2008029467.tif 000012
【図１１】
2008029467.tif 000013
【図１２】
2008029467.tif 000014
【図１３】
2008029467.tif 000015
【図１４】
2008029467.tif 000016
【図１５】
2008029467.tif 000017
【手続補正書】
【提出日】平成20年4月7日(2008.4.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ジェスチャによる動作情報を取得する動作情報取得手段と、
前記動作情報取得手段により取得された動作情報の正規化及び座標変換を行う前処理手段と、
前記前処理手段によって変換された動作情報に基づいて、コンピュータのデスクトップ上のオブジェクトを操作するための情報を生成する入力インタフェース手段と、
を備えるジェスチャ入力システム。
【請求項２】
ユーザの動作を認識するためのテンプレートを格納するテンプレート記憶手段を備え、
前記入力インタフェース手段は、
前記前処理手段によって変換された動作情報に対して、前記テンプレート記憶手段に格納されたテンプレートを使用してマッチングを行うテンプレートマッチング手段と、
前記テンプレートマッチング手段により適合されたテンプレートに対応付けられた出力イベントを出力するイベント出力手段と、
を備える請求の範囲１記載のジェスチャ入力システム。
【請求項３】
前記オブジェクトには、メニュー項目が円状に配置されたパイメニューが含まれ、ユーザは手首の捻りによって、前記パイメニューのうち任意のメニュー項目を選択する、
ことを特徴とする請求の範囲２記載のジェスチャ入力システム。
【請求項４】
前記イベント出力手段は、ユーザの手首を捻る方向に前記パイメニューのメニュー項目を順に選択する、
ことを特徴とする請求の範囲３記載のジェスチャ入力システム。
【請求項５】
前記パイメニューは階層化されている、
ことを特徴とする請求の範囲４記載のジェスチャ入力システム。
【請求項６】
ジェスチャによる動作情報を取得する動作情報取得ステップと、
前記動作情報取得ステップにより取得された動作情報の正規化及び座標変換を行う前処理ステップと、
前記前処理ステップによって変換された動作情報に基づいて、デスクトップ上のオブジェクトを操作するための情報を生成するステップと、
を備えるジェスチャ入力方法。
【請求項７】
請求の範囲６に記載のジェスチャ入力方法をコンピュータに実行させるためのプログラム。
【手続補正書】
【提出日】平成21年7月31日(2009.7.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
測定対象の第１の部分についての動作情報を受信する手段と、
前記対象の第２の部分についての動作情報を受信する手段と、
第１の時点において、前記受信した第１の部分についての動作情報及び前記受信した第２の部分についての動作情報が第１の基準を満たしていることを決定したことに応答して、前記第１の基準に対応する動作開始イベントを発生する手段と、
第２の時点において、少なくとも前記受信した第１の部分についての動作情報が第２の基準を満たしていることを決定したことに応答して、前記第２の基準に対応する動作終了イベントを発生する手段と
を含む、動作認識装置。
【請求項２】
さらに、測定対象のジェスチャによる動作情報を取得し送信する手段を含む、請求項１に記載の動作認識装置。
【請求項３】
さらに、前記第1の基準及び前記第２の基準を記憶する手段を含む、請求項１に記載の動作認識装置。
【請求項４】
前記受信した動作情報を体型データに基づいて正規化し、該正規化した動作情報の座標変換を行う前処理手段をさらに含む、請求項１に記載の動作認識装置。
【請求項５】
前記前処理手段によって変換された動作情報に基づいて、コンピュータのデスクトップ上のオブジェクトを操作するための情報を生成する手段をさらに含む、請求項４に記載の動作認識装置。
【請求項６】
前記オブジェクトが、メニュー項目を円状に配置したパイメニューを含み、測定対象の捻りによって、前記パイメニューのうち任意のメニュー項目を選択する、
請求項５に記載の動作認識装置。
【請求項７】
前記動作終了イベントを発生させる手段は、前記受信した第１の部分についての動作情報に加えて、前記受信した第２の部分についての動作情報が第２の基準を満たしていることを決定したことに応答して、前記動作終了イベントを発生する、
請求項１に記載の動作認識装置。
【請求項８】
測定対象の第１の部分についての動作情報を受信し、
測定対象の第２の部分についての動作情報を受信し、
第１の時点において、前記受信した第１の部分についての動作情報及び前記受信した第２の部分についての動作情報が第１の基準を満たしていることを決定したことに応答して、前記第１の基準に対応する動作開始イベントを発生し、
第２の時点において、少なくとも前記受信した第１の部分についての動作情報が第２の基準を満たしていることを決定したことに応答して、前記第２の基準に対応する動作終了イベントを発生する、
動作認識方法。
【国際調査報告】
2008029467.tif 000018
2008029467.tif 000019