(57)【要約】【課題】  ユーザの手の動きなどに基づくコマンド入力を実現する装置および方法を提供する。【解決手段】  例えば人の手などを認識対象オブジェクトとして、カメラ撮影領域に設定された認識領域内における認識対象オブジェクトの動きを検出し、この動きに基づく動きカテゴリを決定して、決定した動きカテゴリに対応付けたコマンドを選択してＰＣなどの情報処理装置に入力してコマンド対応のデータ処理を実行させる。ユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力が実現され、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうことができる。【選択図】  図６
2007034525.tif 000002
【特許請求の範囲】
【請求項１】
カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出部と、
前記動き検出部において検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類部と、
前記動きカテゴリ分類部において決定された動きカテゴリに対応するコマンドを選択するコマンド選択部と、
前記コマンド選択部において選択されたコマンドを入力するコマンド入力部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記動き検出部は、
カメラによる撮影領域内に設定された複数の認識領域における認識対象オブジェクトの動きを、各認識領域個別に検出する処理を実行し、
前記動きカテゴリ分類部は、
前記複数の認識領域における認識対象オブジェクトの動きの組み合わせに基づいて、前記認識対象オブジェクトの動きカテゴリを決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記動き検出部は、
認識領域における認識対象オブジェクトの移動方向を検出する処理を実行する構成であり、
前記動きカテゴリ分類部は、
前記動き検出部において検出された認識対象オブジェクトの移動方向に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記動き検出部は、
認識対象オブジェクトの認識領域に対する入力位置、出力位置、移動方向、移動速度、および占有面積の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行する構成であり、
前記動きカテゴリ分類部は、
前記動き検出部において検出された認識対象オブジェクトについての前記１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記動き検出部は、
ａ）認識対象オブジェクトが特定の認識領域内に停滞した停滞時間、
ｂ）認識対象オブジェクトが特定の認識領域内において検出された回数、
の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行する構成であり、
前記動きカテゴリ分類部は、
前記動き検出部において検出された認識対象オブジェクトについての前記ａ），ｂ）の少なくとも１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記動き検出部は、
認識対象オブジェクトが異なる複数の認識領域で検出された時間差情報を検出する処理を実行する構成であり、
前記動きカテゴリ分類部は、
前記動き検出部において検出された前記時間差情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項７】
前記動き検出部は、
認識領域における認識対象オブジェクトの重心を算出し、該重心位置の移動情報に基づいて、認識対象オブジェクトの動きを検出する処理を実行する構成であることを特徴とする請求項１に記載の情報処理装置。
【請求項８】
前記情報処理装置は、さらに、
カメラによる撮影領域および、該撮影領域内に設定された認識領域情報を表示する出力手段を有する構成であることを特徴とする請求項１乃至７いずれかに記載の情報処理装置。
【請求項９】
前記情報処理装置は、さらに、
前記認識領域の設定処理を実行する認識領域設定部を有することを特徴とする請求項１乃至８いずれかに記載の情報処理装置。
【請求項１０】
カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出ステップと、
前記動き検出ステップにおいて検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類ステップと、
前記動きカテゴリ分類ステップにおいて決定された動きカテゴリに対応するコマンドを選択するコマンド選択ステップと、
前記コマンド選択ステップにおいて選択されたコマンドを入力するコマンド入力ステップと、
を有することを特徴とする情報処理方法。
【請求項１１】
前記動き検出ステップは、
カメラによる撮影領域内に設定された複数の認識領域における認識対象オブジェクトの動きを、各認識領域個別に検出する処理を実行するステップであり、
前記動きカテゴリ分類ステップは、
前記複数の認識領域における認識対象オブジェクトの動きの組み合わせに基づいて、前記認識対象オブジェクトの動きカテゴリを決定する処理を実行するステップであることを特徴とする請求項１０に記載の情報処理方法。
【請求項１２】
コマンド入力処理を情報処理装置において実行させるコンピュータ・プログラムであり、
カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出ステップと、
前記動き検出ステップにおいて検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類ステップと、
前記動きカテゴリ分類ステップにおいて決定された動きカテゴリに対応するコマンドを選択するコマンド選択ステップと、
前記コマンド選択ステップにおいて選択されたコマンドを入力するコマンド入力ステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに基づいて被写体の動きの識別処理を実行する情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、例えばカメラによる撮影画像から人の一部、例えば手の動きを検出し、手の動き方向などを解析して、解析情報に基づくコマンド入力などのデータ処理を実行する情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００２】
ＰＣなどの情報処理装置に対するデータ入力には、多くの場合、マウスやキーボードが利用される。一方、このような物理的なデバイスを使わずにコンピュータにコマンドを入力する手法の一つとして、ユーザの身振りや手振りなどのジェスチャーを利用する方法が提案されている。例えば、非特許文献１〜３は、このようなユーザの身振りや手振りなどのジェスチャーを識別して、コマンド入力を行なう手法を開示している。
【０００３】
この方法では、まず、ビデオカメラで人物や人物の一部、例えば手を撮影し、画像処理によって背景から身体領域を切り出す。その後、その身体領域の部分が身体のどの部分に相当するかを特定する。これには身体モデルとのマッチングが必要となる。
【０００４】
次に、身体形状の連続的な変化にもとづいて身振り（ジェスチャー）の意味を推定する。この推定は、身体形状の時系列的な変化とその意味を対応付けた辞書（身振り辞書）にもとづいて行なわれる。
【０００５】
さらに、画像に基づく動作識別処理を開示した従来技術としては、例えば、特許文献１に記載の技術がある。特許文献１には、被写体を複数のカメラで異なる方向から撮影し、これらの複数の画像の解析を行うことで、被写体の３次元の動きを解析する手法が示されている。また、特許文献２には、人物の頭部の撮影画像に基づいて頭部の動きと、視線方向を検出して、人物のうなずき動作を高精度に検出する構成が示されている。
【特許文献１】特開平１０−３３４２７０号公報
【特許文献２】特開２０００−１６３１９６号公報
【非特許文献１】Ｓ．Ｍａｒｃｅｌ，"Ｇｅｓｔｕｒｅｓ  ｆｏｒ  ｍｕｌｔｉ−ｍｏｄａｌ  ｉｎｔｅｒｆａｃｅｓ：Ａ  ｒｅｖｉｅｗ"，Ｔｅｃｈｎｉｃａｌ  Ｒｅｐｏｒｔ  ＩＤＩＡＰ−ＲＲ０２−３４，２００２．
【非特許文献２】Ｖ．Ｉ．Ｐａｖｌｏｖｉｃ，Ｒ．Ｓｈａｒｍａ＆Ｔ．Ｓ．Ｈｕａｎｇ，"Ｖｉｓｕａｌ  ｉｎｔｅｒｐｒｅｔａｔｉｏｎ  ｏｆ  ｈａｎｄ  ｇｅｓｔｕｒｅｓ  ｆｏｒ  ｈｕｍａｎ−ｃｏｍｐｕｔｅｒ  ｉｎｔｅｒａｃｔｉｏｎ：ａ  ｒｅｖｉｅｗ"，ＩＥＥＥ  Ｔｒａｎｓ，ｏｎ  ＰＡＭＩ，１９（７），６７７−６９５，１９９７．
【非特許文献３】Ｍ．Ｔｕｒｋ，"Ｇｅｓｔｕｒｅ  ｒｅｃｏｇｎｉｔｉｏｎ"，Ｉｎ  Ｋ．Ｓｔａｎｎｅｙ（Ｅｄ．），Ｈａｎｄｂｏｏｋ  ｏｆ  Ｖｉｒｔｕａｌ  Ｅｎｖｉｒｏｎｍｅｎｔ  Ｔｅｃｈｎｏｌｏｇｙ．
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上述した、従来技術に示されているジェスチャーに基づくデータ処理において適用する画像データ解析処理は、撮影画像データに基づく極めて複雑なアルゴリズムによる解析を必要とするものであり、効率的な処理とは言えず、専用のシステムの構築の必要性、コスト高、処理負荷が大きいといった問題を有している。すなわち、計算量が膨大であり、しかも認識精度が低いという欠点がある。また、ビデオ画像から人物や人物の一部を切り出して追尾させるためには、従来の方法では、機械学習による学習を必要としており、この学習に手間がかかるという問題がある。
【０００７】
本発明は、これらの問題点に鑑みて行なわれたもので、その目的は、物理的なデバイスを一切装着することなく、また多大な機械学習によるチューニングなしに、ジェスチャーによるコマンド入力を精度良く行なうことを可能とした情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することである。
【課題を解決するための手段】
【０００８】
本発明の第１の側面は、カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出部と、前記動き検出部において検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類部と、前記動きカテゴリ分類部において決定された動きカテゴリに対応するコマンドを選択するコマンド選択部と、前記コマンド選択部において選択されたコマンドを入力するコマンド入力部とを有することを特徴とする情報処理装置にある。
【０００９】
本構成によれば、例えばユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力を実行することが可能となり、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうことが可能となる。
【００１０】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、カメラによる撮影領域内に設定された複数の認識領域における認識対象オブジェクトの動きを、各認識領域個別に検出する処理を実行し、前記動きカテゴリ分類部は、前記複数の認識領域における認識対象オブジェクトの動きの組み合わせに基づいて、前記認識対象オブジェクトの動きカテゴリを決定する処理を実行する構成であることを特徴とする。
【００１１】
本構成によれば、例えば、ユーザの手を複数の認識領域間において様々な移動を行なうことで、複数の認識領域における認識対象オブジェクトの動きの組み合わせに対応した多数の異なるコマンドを入力することが可能となる。
【００１２】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、認識領域における認識対象オブジェクトの移動方向を検出する処理を実行する構成であり、前記動きカテゴリ分類部は、前記動き検出部において検出された認識対象オブジェクトの移動方向に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする。
【００１３】
本構成によれば、例えば、ユーザの手を認識領域内に様々な方向に移動させることで、移動方向に対応した多数の異なるコマンドを入力することが可能となる。
【００１４】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、認識対象オブジェクトの認識領域に対する入力位置、出力位置、移動方向、移動速度、および占有面積の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行する構成であり、前記動きカテゴリ分類部は、前記動き検出部において検出された認識対象オブジェクトについての前記１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする。
【００１５】
本構成によれば、認識領域における入力位置、出力位置、移動方向、移動速度、および占有面積など、様々な情報を取得して、取得した情報に基づくカテゴリ分類を行なうことで、カテゴリに対応した多数の異なるコマンドを入力することが可能となる。
【００１６】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、ａ）認識対象オブジェクトが特定の認識領域内に停滞した停滞時間、ｂ）認識対象オブジェクトが特定の認識領域内において検出された回数、の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行する構成であり、前記動きカテゴリ分類部は、前記動き検出部において検出された認識対象オブジェクトについての前記ａ），ｂ）の少なくとも１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする。
【００１７】
本構成によれば、ａ）認識対象オブジェクトが特定の認識領域内に停滞した停滞時間、ｂ）認識対象オブジェクトが特定の認識領域内において検出された回数などについて、取得情報に基づくカテゴリ分類を行なうことで、カテゴリに対応した多数の異なるコマンドを入力することが可能となる。
【００１８】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、認識対象オブジェクトが異なる複数の認識領域で検出された時間差情報を検出する処理を実行する構成であり、前記動きカテゴリ分類部は、前記動き検出部において検出された前記時間差情報に基づいて動きカテゴリを決定する処理を実行する構成であることを特徴とする。
【００１９】
本構成によれば、認識対象オブジェクトが異なる複数の認識領域で検出された時間差情報について解析し、時間差に基づくカテゴリ分類を行なうことで、カテゴリに対応した多数の異なるコマンドを入力することが可能となる。
【００２０】
さらに、本発明の情報処理装置の一実施態様において、前記動き検出部は、認識領域における認識対象オブジェクトの重心を算出し、該重心位置の移動情報に基づいて、認識対象オブジェクトの動きを検出する処理を実行する構成であることを特徴とする。
【００２１】
本構成によれば、認識領域における認識対象オブジェクトの移動情報を効率的に算出することが可能となる。
【００２２】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、カメラによる撮影領域および、該撮影領域内に設定された認識領域情報を表示する出力手段を有する構成であることを特徴とする。
【００２３】
本構成によれば、ユーザは、ディスプレイに表示された認識領域の位置を確認して的確にコマンド入力を行なうことが可能となる。
【００２４】
さらに、本発明の情報処理装置の一実施態様において、前記情報処理装置は、さらに、前記認識領域の設定処理を実行する認識領域設定部を有することを特徴とする。
【００２５】
本構成によれば、ユーザは、例えば自分の手を動かしやすい位置に任意に認識領域を設定することが可能となり、操作性を向上させることができる。
【００２６】
さらに、本発明の第２の側面は、カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出ステップと、前記動き検出ステップにおいて検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類ステップと、前記動きカテゴリ分類ステップにおいて決定された動きカテゴリに対応するコマンドを選択するコマンド選択ステップと、前記コマンド選択ステップにおいて選択されたコマンドを入力するコマンド入力ステップとを有することを特徴とする情報処理方法にある。
【００２７】
本構成によれば、例えばユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力を実行することが可能となり、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうことが可能となる。
【００２８】
さらに、本発明の第３の側面は、コマンド入力処理を情報処理装置において実行させるコンピュータ・プログラムであり、カメラによる撮影領域内に設定された認識領域における認識対象オブジェクトの動きを検出する動き検出ステップと、前記動き検出ステップにおいて検出された検出情報に基づいて前記認識対象オブジェクトの動きカテゴリを決定する動きカテゴリ分類ステップと、前記動きカテゴリ分類ステップにおいて決定された動きカテゴリに対応するコマンドを選択するコマンド選択ステップと、前記コマンド選択ステップにおいて選択されたコマンドを入力するコマンド入力ステップと有することを特徴とするコンピュータ・プログラムにある。
【００２９】
本構成によれば、例えばユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力を実行することが可能となり、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうコンピュータ・プログラムが実現される。
【００３０】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータシステムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータシステム上でプログラムに応じた処理が実現される。
【００３１】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００３２】
本発明の構成によれば、例えば人の手などを認識対象オブジェクトとして、カメラ撮影領域に設定された認識領域内における認識対象オブジェクトの動きを検出し、この動きに基づく動きカテゴリを決定して、決定した動きカテゴリに対応付けたコマンドを選択してＰＣなどの情報処理装置に入力してコマンド対応のデータ処理を実行させることが可能となり、例えばユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力が実現され、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうことができる。
【発明を実施するための最良の形態】
【００３３】
以下、図面を参照しながら本発明の情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。
【００３４】
まず、図１以下を参照して、本発明の情報処理装置の実行する処理の概要について説明する。図１に示すように、ビデオカメラ１２０をＰＣのディスプレイ１１０の上部に設置し、カメラ１２０の撮影した映像は、ディスプレイ１１０に表示される。表示画面は、図２を参照して後段で説明する。
【００３５】
カメラ１２０によって撮影される領域は、図１に示す点線サークルによって示す撮影領域１３０である。この撮影領域１３０において、ユーザ１００は、人体の一部、例えば手を移動させる。撮影領域１３０には、認識領域（Ｈｏｔｓｐｏｔ）とされる特定領域が１つ以上、設定される。認識対象オブジェクトとしてのユーザ１００の手が、撮影領域中の認識対象エリア（Ｈｏｔｓｐｏｔ）を移動すると、移動情報が検出され、その移動態様に基づいて、コマンドが選択されて、ＰＣ等の情報処理装置に入力され、コマンドに応じたデータ処理が実行される。
【００３６】
図２に、ディスプレイに表示されるカメラ１２０の撮影した映像データの例を示す。表示領域１４０は、ユーザによって実行されているメインのアプリケーションプログラムに対応したデータ表示領域である。表示領域１５０は、図１に示すカメラ１２０によって撮影されている画像データの表示領域である。撮影領域１３０に相当する撮影画像が、表示されるとともに、前述した特定領域としての認識領域（Ｈｏｔｓｐｏｔ）１６１，１６２が表示される。この例では、２つの認識領域が設定された例を示している。この認識領域１６１，１６２を、認識対象オブジェクトとしてのユーザの手が横切るなどの動作が発生すると、カメラによってその動作が撮影され、画像処理の結果、移動方向などの解析処理が行われる。
【００３７】
さらに、この解析結果に基づいて、ＰＣなどの情報処理装置に入力される特定のコマンドが選択され、選択コマンドが情報処理装置に入力され、入力コマンドに応じた処理が実行される。たとえば、メインのアプリケーションプログラムに対応したデータ表示領域１４０に表示されたデータに対するデータ処理が実行される。ユーザは、ディスプレイに表示された認識領域の位置を確認して的確にコマンド入力を行なうことが可能となる。
【００３８】
図３、図４を参照して、具体的なデータ処理例について説明する。図３は、メインのアプリケーションプログラムに対応したデータ表示領域１４０に表示された文書のページめくりのコマンドを、ユーザの手の移動によって実現した例である。
【００３９】
図に示す撮影領域３００には、２つの認識領域（Ｈｏｔｓｐｏｔ）３０１，３０２が設定されている。一方の認識領域（Ｈｏｔｓｐｏｔ）３０１は、メインアプリケーションプログラムにおいてディスプレイに表示されたページ３２１を前のページに戻すページバックコマンド（Ｂａｃｋ）に対応付けられ、他方の認識領域（Ｈｏｔｓｐｏｔ）３０２は、ページ３２１を次のページに進ませるページフォワードコマンド（Ｆｗｄ）に対応付けられている。
【００４０】
認識領域（Ｈｏｔｓｐｏｔ）３０１を、認識対象オブジェクト（手）が通過したことが、カメラによって撮影された画像の解析によって識別されると、ページバックコマンド（Ｂａｃｋ）が選択されて実行され、ディスプレイに表示されたページ３２１を前のページに戻す処理が行なわれる。
【００４１】
一方、認識領域（Ｈｏｔｓｐｏｔ）３０２を、認識対象オブジェクト（手）が通過したことが、カメラによって撮影された画像の解析によって識別されると、ページフォワードコマンド（Ｆｗｄ）が選択されて実行され、ディスプレイに表示されたページ３２１を次ページに進ませる処理が行なわれる。
【００４２】
図３に示す例は、２つの認識領域（Ｈｏｔｓｐｏｔ）３０１、３０２の各々に異なるコマンドを対応付けた例であるが、図４は、複数の認識領域（Ｈｏｔｓｐｏｔ）３５１、３５２，３５３を組み合わせ、かつ、それぞれの認識領域における認識対象オブジェクトの移動方向の組み合わせに基づいて、ある特定のコマンドを選択する例である。
【００４３】
図４に示す撮影領域３５０には、３つの認識領域（Ｈｏｔｓｐｏｔ）３５１、３５２，３５３が設定されている。ユーザは、これらの複数の認識領域を、ある方向から通過させる。図に示す例では、
認識領域（Ｈｏｔｓｐｏｔ）３５１：下から上（Ｕｐ）
認識領域（Ｈｏｔｓｐｏｔ）３５２：左から右（Ｒｉｇｈｔ）
認識領域（Ｈｏｔｓｐｏｔ）３５３：上から下（Ｄｏｗｎ）
このような組み合わせに対応する動作を行なった例を示している。
【００４４】
カメラによって撮影された画像データに基づいて、認識領域（Ｈｏｔｓｐｏｔ）３５１、３５２，３５３の各々についての認識対象オブジェクト（手）の移動方向を検出し、複数の認識領域における移動方向の組み合わせに基づいて、ある特定のコマンドを選択する。
【００４５】
各認識領域において検出可能な移動方向を、下から上（Ｕｐ）、左から右（Ｒｉｇｈｔ）、上から下（Ｄｏｗｎ）、右から左（Ｌｅｆｔ）の４種類として設定した場合、図に示すように、３つの認識領域（Ｈｏｔｓｐｏｔ）を設定すると、
４×４×４＝６４
６４通りの識別が可能であり、６４通りのコマンドを選択して入力することが可能となる。
【００４６】
図５に示すように、認識領域（Ｈｏｔｓｐｏｔ）３５１、３５２，３５３の各々についての認識対象オブジェクト（手）の移動方向に基づいて決定される認識パターン（動きカテゴリ）に対応するコマンドをコマンドＡ，Ｂ，Ｃ・・・として設定したテーブルを保持し、画像解析によって得られた結果に基づいて、テーブルを参照してコマンドを選択して入力することで、多数のコマンド入力が可能となる。
【００４７】
なお、コマンドの種類は、様々なコマンドを対応付けることが可能である。先に図３を参照して説明したページめくりの他、例えば、認識対象オブジェクトとしての手や指が認識領域（Ｈｏｔｓｐｏｔ）を右方向に横切った場合、ディスプレイに表示された文書ウインドウの表示位置を特定距離だけ右方向に移動するというコマンドなどを選択して入力させることができる。
【００４８】
次に、図６以下を参照して、本発明の情報処理装置の構成、および処理の詳細について説明する。
【００４９】
図６は本発明の情報処理装置の構成を示すブロック図である。本発明の情報処理装置は、カメラ４０１の撮影画像を入力し、撮影画像に基づいて、撮影領域に設定された認識領域（Ｈｏｔ  Ｓｐｏｔ）における認識対象オブジェクトの動き検出を実行し、検出された動きに対応するコマンドを選択して、選択コマンドをＰＣ等の情報処理装置に入力する処理を実行する。
【００５０】
本発明の情報処理装置は、図６に示すように、テーブルやデスク上などにおいて、認識対象オブジェクト（例えば人の手）の動きが観察される領域の動画像を撮影するためのカメラ４０１と、カメラ４０１によって撮影された領域を表示するためのディスプレイ（表示手段）４０２と、カメラ４０１によって撮影された領域のなかの特定領域を、認識領域（ホットスポット）として設定するための認識領域設定部４０３と、認識領域設定部４０３によって設定された認識領域内に、認識対象オブジェクト（例えば人の手）が入った場合、それを検出するための認識対象オブジェクト検出部４０４と、認識対象オブジェクト検出部４０４によって検出された認識対象オブジェクトの動きの特徴を解析する動き検出部４０５と、動き検出部４０５によって解析された認識対象オブジェクトの動きの特徴に基づいて、対応する動きカテゴリを決定するための動きカテゴリ分類部４０６と、動きカテゴリ分類部４０６において決定された認識対象オブジェクト（手）の動きカテゴリに対応付けられた特定のコマンドを、コマンド格納部４０８に格納されたデータ（例えば図５に示すテーブルデータ）に基づいて選択するコマンド選択部４０７と、コマンド選択部４０７によって選択されたコマンドをＰＣ等の情報処理装置に入力するためのコマンド入力部４０９とを備える。
【００５１】
認識領域設定部４０３は、先に、図３、図４などを参照して説明した認識領域（Ｈｏｔ  Ｓｐｏｔ）を設定する処理を実行する。認識領域設定部４０３は、ディスプレイ４０２に表示された撮影領域内に、２次元座標を規定し、認識領域となる２次元図形（通常、矩形）を生成するためのｘ，ｙ座標値を入力するための入力手段を備える。
【００５２】
認識領域（Ｈｏｔ  Ｓｐｏｔ）は、例えば、矩形（長方形）であり、これは、対角関係にある２つの座標値（ｘ１，ｙ１；ｘ２，ｙ２）を入力することで設定される。なお、認識領域（Ｈｏｔ  Ｓｐｏｔ）の形状は、矩形に限らず、様々な形状として設定可能である。
【００５３】
認識領域設定部４０３による認識領域の設定処理は、例えば、ディスプレイ４０２に表示された撮影領域に対して、あらかじめ用意された認識領域（Ｈｏｔ  Ｓｐｏｔ）の形状に対応する図形群（矩形、円形、楕円形など）をグラフィカルパレット上に配置し、マウスでそれを選択・移動してディスプレイ４０２に表示された撮影領域に配置するとともに、これらを拡大・縮小・変形するなどの処理によって、所定形状の認識領域（Ｈｏｔ  Ｓｐｏｔ）を設定する。なお、認識領域（Ｈｏｔ  Ｓｐｏｔ）は、複数設定可能である。
【００５４】
さらに、認識領域（Ｈｏｔ  Ｓｐｏｔ）の設定は、カメラ４０１によって撮影された領域のなかに映し出された任意のオブジェクト領域を、認識領域として規定する処理として実行することもできる。例えば撮影画像上にあるマウスパッドの領域を認識領域とするなどの処理である。この場合、認識領域設定部４０３は、撮影画像から特定のオブジェクトを切り出すためのオブジェクト切り出し手段を具備し、オブジェクト切り出し手段によって、撮影画像上の特定領域を指定して、指定領域を認識領域（Ｈｏｔ  Ｓｐｏｔ）として設定する。
【００５５】
認識対象オブジェクト検出部４０４は、カメラ４０１の撮影画像フレームから画像特徴、例えば特徴を持つ特定領域の抽出を実行する。例えば目的とする認識対象オブジェクトである人の手のスキン（皮膚）領域を認識対象オブジェクトとして抽出する。なお、何を認識対象オブジェクトとして抽出するかは、目的に応じて設定することが可能である。ここでは、一例として、人の手のスキン領域を認識対象オブジェクトとして抽出する処理例について説明する。
【００５６】
人の手のスキン領域を認識対象オブジェクトとして抽出する場合、例えばカラーフィルタリングを適用する。スキン検出アルゴリズムとしては、例えば文献、［A. Jaimes. Conceptual Structures and Computational Methods for Indexing and Organization of Visual Information, Ph.D. Thesis, Department of Electrical Engineering, Columbia University, February 2003］に記述されたアルゴリズムをベースとすることが可能である。
【００５７】
スキン領域抽出アルゴリズムについて説明する。まず、入力する各画像フレーム［ｆｉ］の画素値データをＨＳＶカラー空間座標へ展開する。ＨＳＶカラー空間座標は、色相（Ｈ）、彩度（Ｓ）、輝度（Ｖ）の３次元座標である。このＨＳＶ空間において、特定の領域がスキン（皮膚）のカラー領域に対応する。
【００５８】
各フレーム［ｆｉ］の画素値データ中、ＨＳＶカラー空間座標におけるスキン（皮膚）のカラー領域に対応する画素をスキン画像領域として判定し、ＨＳＶカラー空間座標におけるスキン（皮膚）のカラー領域以外に属する画素データは、スキン領域以外であると判定する。
【００５９】
上述のカラーフィルタリングによるスキン領域の抽出は、カメラ４０１から入力する各フレーム［ｆｉ］各々に対して実行される。ただし、このカラーフィルタリング処理によっても、人のスキン（皮膚）と類似する画素値を持つ例えば壁やテーブルなどスキン（皮膚）領域以外の領域がスキン（皮膚）領域と判断される場合がある。
【００６０】
そこで、認識対象オブジェクト検出部４０４は、さらに、以下の処理を実行する。まず、上述のカラーフィルタリングによって抽出されたスキン領域をグルーピングする。スキン領域として判定された隣接する画素の集合をグループとして設定し、その境界を設定した境界領域としてのバウンディングボックスＳｂｂを検出する。なお、一定の大きさより小さい領域は排除する。
【００６１】
次に、バウンディングボックスＳｂｂと同一の中心を設定したバウンディングボックスＳｂｂの近接領域を含むアクティブバウンディングボックスＡｂｂを設定し、このアクティブバウンディングボックスＡｂｂ内においてフレーム間で動きが検出されているか否かを判定する。動きの有無は、現フレームと過去に数フレーム遡ったフレーム間の差分情報に基づいて判定可能である。また、動き検出部４０５の処理結果に基づいても得ることができる。動きのない領域はスキン領域から排除する。この処理によって動きのある領域がスキン領域、すなわち認識対象オブジェクトであると判定する。
【００６２】
次に、動き検出部４０５と、動きカテゴリ分類部４０６の処理について説明する。動き検出部４０５は、カメラ４０１の撮影フレームから選択されたサンプルフレーム画像データに基づいて、撮影領域に設定された認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクトの動きを検出する。
【００６３】
認識領域（Ｈｏｔ  Ｓｐｏｔ）の形状を、図３、図４に示すような矩形（長方形）とした場合、動き検出部４０５は、例えば、矩形の認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きを検出する。動きカテゴリ分類部４０６は、動き検出部の検出した認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きを分類する処理を実行する。例えば、動きカテゴリ分類部４０６は、認識対象オブジェクト（手）が、認識領域（Ｈｏｔ  Ｓｐｏｔ）内を「右から左に」、「左から右に」、「上から下に」、「下から上に」横切った場合、これらの４通りの動きを異なるカテゴリとして分類する。
【００６４】
なお、動き検出部４０５による認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き検出処理態様や、動きカテゴリ分類部４０６におけるカテゴリ分類処理の態様としては、様々な設定が可能である。例えば、最も簡易な設定としては、動き検出部４０５が、認識領域（Ｈｏｔ  Ｓｐｏｔ）内に認識対象オブジェクト（手）が入ったか否かのみを検出して、動きカテゴリ分類部４０６は、認識領域（Ｈｏｔ  Ｓｐｏｔ）内に認識対象オブジェクト（手）が入った（ＯＮ）か否か（ＯＦＦ）のみのカテゴリ分類を行なう設定がある。
【００６５】
さらに、動き検出部４０５が、認識領域（Ｈｏｔ  Ｓｐｏｔ）内に認識対象オブジェクト（手）が入った位置（入力位置）と、出た位置（出力位置）を検出して、認識領域における認識対象オブジェクトの移動方向を検出し、動きカテゴリ分類部４０６が、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の移動方向に応じて、カテゴリ分類を行なう設定もある。
【００６６】
動き検出部４０５による認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き検出処理は、上述した様々な設定により検出態様が異なる。すなわち、
（１）認識領域（Ｈｏｔ  Ｓｐｏｔ）内に認識対象オブジェクト（手）が入ったか否かのみを検出する構成、
（２）認識対象オブジェクト（手）の移動方向を検出する構成、
（３）認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクト（手）の移動速度を検出する構成、
（４）認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクト（手）の占有面積、サイズ（ピクセル数）を検出する構成などである。
【００６７】
動きカテゴリ分類部４０６は、動き検出部４０５による検出情報に基づいて実行可能なカテゴリ分類を行なう。例えば、
（１）認識領域（Ｈｏｔ  Ｓｐｏｔ）内に認識対象オブジェクト（手）が入ったか否かのみのカテゴリ分類、
（２）認識対象オブジェクト（手）の移動方向に基づくカテゴリ分類、
（３）認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクト（手）の移動速度に基づくカテゴリ分類、
（４）認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクト（手）のサイズ（ピクセル数）に基づくカテゴリ分類、
【００６８】
コマンド選択部４０７では、動きカテゴリ分類部４０６が実行したカテゴリ分類によって、分類されたカテゴリに応じた異なるコマンドを、コマンド格納部４０８から選択する。コマンド選択部４０７において選択されたコマンドは、コマンド入力部４０９を介して、ＰＣなどの情報処理装置に入力される。例えば先に図３を参照して説明したページめくりコマンドなどである。
【００６９】
動き検出部４０５による認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き検出処理と、動きカテゴリ分類部４０６におけるカテゴリ分類処理の一例について、図７、図８を参照して説明する。図７には、時間（ｔ１）〜（ｔ６）における認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きを示している。
【００７０】
手の動き方向の検出は、まず、一定時間間隔のサンプルフレームごとに皮膚の色を手がかりにしてそれを切り出し、その重心を算定する。図に示す点線矩形が認識領域（Ｈｏｔ  Ｓｐｏｔ）であり、黒丸印が重心である。
【００７１】
動き検出部４０５は、次に、重心の時系列的な変化（軌跡）を算定する。図８（１）に各時間（ｔ１）〜（ｔ６）の重心の位置のみを取り出したデータを示す。動き検出部４０５は、次に、図８（２）に示すように、サンプルフレームとしての第１フレームの重心座標と最終フレームの重心座標を結んだ直線にもとづいて、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きベクトルを求め認識対象オブジェクトの移動方向を決定する。図８（３）に示す認識対象オブジェクトの移動方向に従った動きベクトルが取得される。
【００７２】
この認識対象オブジェクトの移動方向に対応する動きベクトル情報が、動きカテゴリ分類部４０６に入力され、動きカテゴリ分類部４０６は、予め設定された分類情報に従って、動き検出部４０５から入力した認識対象オブジェクトの動き情報に基づいて、その動きのカテゴリを決定する。図８に示す例では、動きカテゴリ分類部４０６は、図８（４）に示すように、認識対象オブジェクトの移動方向を以下の４種類、
（ａ）「上から下に移動」、
（ｂ）「下から上に移動」、
（ｃ）「左から右に移動」、
（ｄ）「右から左に移動」、
これらの４種類のカテゴリ分類を行なう。
【００７３】
このカテゴリ分類処理の場合、動き検出部４０５から入力した認識対象オブジェクトの動きに対応する動きベクトルの向きは、
（ｃ）「左から右に移動」、
に最も近い情報であるので、動きカテゴリ分類部４０６は、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きが、
（ｃ）「左から右に移動」、
に相当する動きカテゴリに対応するものと決定する。
【００７４】
この動きカテゴリ情報がコマンド選択部４０７に入力される。コマンド選択部４０７では、動きカテゴリ分類部４０６が決定したカテゴリに基づいて、コマンド格納部４０８からコマンドを選択し、選択コマンドが、コマンド入力部４０９を介して、ＰＣなどの情報処理装置に入力される。なお、コマンド選択部４０７では、コマンド格納部４０８に格納されたテーブル、例えば図９に示すような、動きカテゴリとコマンドを対応付けたテーブルを参照して、動きカテゴリ分類部４０６が決定したカテゴリに基づいて、コマンドを選択する。
【００７５】
なお、前述したように、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きの検出およびカテゴリ分類処理の態様としては、様々な設定が可能である。例えば以下のような設定例がある。
【００７６】
（ａ）認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き方向を、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリに分類したうえで、いずれの方向かを認識する方法。
（ｂ）認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き方向を、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリに分類したうえで、これらのうちの１方向のみを認識し、それ以外の方向については認識しない方法。
（ｃ）認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き方向を、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリに分類したうえで、これらのうちの２方向のみを認識し、それ以外の方向については認識しない方法。
（ｄ）認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き方向を、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリに分類したうえで、これらのうちの３方向のみを認識し、それ以外の方向については認識しない方法。
【００７７】
これらの方法について、図１０、図１１を参照して説明する。（ａ）〜（ｄ）は、いずれも、カテゴリ分類としては、図１０に示すように「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリに分類する。
【００７８】
（ａ）の手法は、これら４つのカテゴリに応じて４つの異なるコマンドを対応付ける。（ｂ）の手法は、これら４つのカテゴリ中、１つ、例えば、「左から右」の動きが検出された場合にのみ、コマンドを対応付け、その他の動きの場合は、コマンドを発生させない設定である。（ｃ）の手法は、４つのカテゴリ中、２つ、例えば、「左から右」と、「右から左」の動きが検出された場合に、各動きに対応するコマンドを設定し、その他の動きの場合は、コマンドを発生させない設定である。（ｄ）の手法は、４つのカテゴリ中、３つ、例えば、「左から右」と、「右から左」、「上から下」の動きが検出された場合に、各動きに対応するコマンドを設定し、その他の動きの場合は、コマンドを発生させない設定である。
【００７９】
なお、図１０を参照して説明したコマンドの対応付けでは、動きカテゴリ分類としてカテゴリ分類された方向情報に基づいて異なるコマンドを発行する例を示したが、方向ごとに異なるコマンドを発生するのではなく、一定のコマンドを発行する設定としてもよい。たとえば、図１１に示すような設定である。
【００８０】
（ａ）は、認識対象オブジェクト（手）の動き方向を、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリのいずれの場合も１つのコマンドＡを発行させる。（ｂ）は、これら４つのカテゴリ中、１つ、例えば、「左から右」の動きが検出された場合にのみ、コマンドＡを対応付け、その他の動きの場合は、コマンドを発生させない設定である。（ｃ）の手法は、４つのカテゴリ中、２つ、例えば、「左から右」と、「右から左」の動きが検出された場合に、コマンドＡを発行し、その他の動きの場合は、コマンドＡを発生させない設定である。（ｄ）は、４つのカテゴリ中、３つ、例えば、「左から右」と、「右から左」、「上から下」の動きが検出された場合に、コマンドＡを発行し、その他の動きの場合は、コマンドを発生させない設定である。
【００８１】
このような設定は、認識領域における認識対象オブジェクトの動き方向が、「認識領域」に割り当てられた方向性と一致していたなら、「認識領域」をアクティベート（ＯＮ）させ、それ以外の場合にはアクティベートさせない（ＯＦＦ）という設定である。
【００８２】
上記（ａ）〜（ｄ）の構成は、認識対象オブジェクト（手）の動き方向として、「左から右」、「右から左」、「上から下」、「下から上」の４カテゴリを適用した構成であったが、さらに、多くのカテゴリを適用する構成も可能である。図１２を参照して、１６カテゴリを設定した例を説明する。
【００８３】
図１２には、
（ｅ）認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動き方向を、
「左から右」、「左から上」、「左から下」、「左から左」、
「右から右」、「右から上」、「右から下」、「右から左」、
「上から右」、「上から上」、「上から下」、「上から左」、
「下から右」、「下から上」、「下から下」、「下から左」、
の１６カテゴリに分類した上で、いずれの方向かを認識する設定を示している。
【００８４】
動き検出部４０５が検出した認識対象オブジェクトの動き情報に基づいて、動きカテゴリ分類部４０６は、認識対象オブジェクトの動きが、図１２に示す１６種類のいずれかに対応するかを判定して、認識対象オブジェクトの動きカテゴリを決定する。
【００８５】
この動きカテゴリ情報がコマンド選択部４０７に入力されて、コマンド選択部４０７において、動きカテゴリ分類部４０６が決定したカテゴリに基づいて、コマンド格納部４０８からコマンドを選択し、選択コマンドをコマンド入力部４０９からＰＣなどの情報処理装置に入力される。
【００８６】
なお、図１０〜図１２を参照して説明した処理例は、１つの認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きを検出した場合の処理例であるが、先に、図４、図５を参照して説明したように、複数の認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（手）の動きの組み合わせに基づいて、動きカテゴリを決定して、決定カテゴリに対応するコマンドを発生させる設定としてもよい。このような設定とすることで、さらに、多数のカテゴリを設定でき、多数のコマンドを対応付けることが可能となる。
【００８７】
また、上述した説明では、動き検出部４０５は、認識対象オブジェクトの認識領域に対する入力位置、出力位置、移動方向、移動速度、および占有面積の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行し、動きカテゴリ分類部４０６は、動き検出部４０５において検出された認識対象オブジェクトについての認識領域に対する入力位置、出力位置、移動方向、移動速度、および占有面積の少なくともいずれか１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する処理を実行する構成として説明したが、動き検出部４０５と、動きカテゴリ分類部４０６の処理は、これらに限らず、例えば以下の処理構成としてもよい。
【００８８】
例えば、動き検出部４０５は、
ａ）認識対象オブジェクトが特定の認識領域内に停滞した停滞時間、
ｂ）認識対象オブジェクトが特定の認識領域内において検出された回数、
の少なくとも１つ以上のオブジェクト関連情報を検出する処理を実行する構成とし、
動きカテゴリ分類部４０６は、動き検出部４０５において検出された認識対象オブジェクトについての前記ａ），ｂ）の少なくとも１つ以上のオブジェクト関連情報に基づいて動きカテゴリを決定する。
【００８９】
あるいは、動き検出部４０５は、認識対象オブジェクトが異なる複数の認識領域で検出された時間差情報を検出する処理を実行する構成とし、動きカテゴリ分類部４０６は、動き検出部４０５において検出された時間差情報に基づいて動きカテゴリを決定する処理を実行する。このような構成としてもよい。動き検出部４０５は、認識対象オブジェクトの認識領域に関連する上述した様々な情報の少なくともいずれか１つ以上のオブジェクト関連情報を取得して、動きカテゴリ分類部４０６は、動き検出部４０５において検出されたこれらのいずれかの情報に基づいて動きカテゴリを決定する。
【００９０】
次に、本発明の情報処理装置における処理シーケンスについて、図１３に示すフローチャートを参照して説明する。
【００９１】
まず、ステップＳ１０１において、認識領域（Ｈｏｔ  Ｓｐｏｔ）の設定処理を行う。これは、図６に示す認識領域設定部４０３の処理であり、先に、図３、図４などを参照して説明した認識領域（Ｈｏｔ  Ｓｐｏｔ）を設定する処理を実行する。例えば、認識領域設定部４０３は、ディスプレイ４０２に表示された撮影領域内に、２次元座標を規定し、認識対象エリアとなる２次元図形（通常、矩形）を生成するためのｘ，ｙ座標値を入力する。その他、予め設定された形状のパターンを利用する構成や、撮影画像から特定オブジェクトや領域を切り出す処理によって認識領域の設定処理を行う。なお、あらかじめ、デフォルトの認識領域を設定しておく構成としてもよく、この場合は、このステップＳ１０１の処理は省略できる。
【００９２】
認識領域の設定がなされた後、ステップＳ１０２以下において、実際の認識対象オブジェクトの動き検出によるコマンド入力が開始される。まず、ステップＳ１０２において、認識対象オブジェクトの検出が行なわれる。この処理は、図６に示す認識対象オブジェクト検出部４０４の処理として実行される。カメラ４０１の撮影画像フレームから画像特徴、例えば特徴を持つ特定領域の抽出を実行する。例えば目的とする認識対象オブジェクトである人の手のスキン（皮膚）領域を認識対象オブジェクトとして抽出する。なお、何を認識対象オブジェクトとして抽出するかは、目的に応じて設定することが可能である。
【００９３】
次に、ステップＳ１０３において、認識対象オブジェクトの動き検出処理が行なわれる。この処理は、図６に示す動き検出部４０５の処理である。動き検出部４０５は、カメラ４０１の撮影フレームから選択されたサンプルフレーム画像データに基づいて、撮影領域に設定された認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクトの動きを検出する。この処理は、先に、図７、図８を参照して説明したように、例えば、認識領域（Ｈｏｔ  Ｓｐｏｔ）内における認識対象オブジェクトの重心の移動軌跡の検出によって実行される。
【００９４】
次に、ステップＳ１０４において、認識対象オブジェクトの動きカテゴリの決定処理を行なう。この処理は、図６に示す動きカテゴリ分類部４０６の処理である。動きカテゴリ分類部４０６は、動き検出部の検出した認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（例えば手）の動きを分類する処理を実行する。例えば、動きカテゴリ分類部４０６は、認識対象オブジェクトが、認識領域（Ｈｏｔ  Ｓｐｏｔ）内を「右から左に」、「左から右に」、「上から下に」、「下から上に」横切った場合、これらの４通りの動きを異なるカテゴリとして分類する。
【００９５】
次に、ステップＳ１０５において、動きカテゴリに対応するコマンドを選択する処理が実行される。この処理は、図６に示すコマンド選択部４０７の処理である。コマンド選択部４０７では、動きカテゴリ分類部４０６が決定したカテゴリに基づいて、コマンド格納部４０８からコマンドを選択する。たとえば、図５、あるいは図９に示すテーブルがコマンド格納部４０８に格納され、コマンド選択部４０７は、動きカテゴリ分類部４０６が決定したカテゴリ情報に対応してテーブルに記録されたコマンドを選択する。
【００９６】
次に、ステップＳ１０６において、コマンドの入力処理が実行される。この処理は、図６に示すコマンド入力部４０９の処理であり、コマンド選択部において選択された選択コマンドが、コマンド入力部４０９を介して、ＰＣなどの情報処理装置に入力される。以上の処理によって、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（例えば手）の動きに基づくコマンド入力が行なわれることになる。
【００９７】
最後に、図１４を参照して、認識領域（Ｈｏｔ  Ｓｐｏｔ）内の認識対象オブジェクト（例えば手）の動きに基づくコマンド入力を実行する情報処理装置のハードウェア構成例について説明する。
【００９８】
ＣＰＵ（Central Processing Unit）５０１は、ＯＳ（Operating System)、上述の実施例において説明した認識領域設定処理、認識対象オブジェクト識別処理、認識領域内の認識対象オブジェクトの動き検出、動きカテゴリ分類処理、更にコマンド選択処理などの各処理の実行シーケンスを記述したコンピュータ・プログラムに従った処理を実行する制御部である。
【００９９】
ＲＯＭ（Read Only Memory）５０２は、ＣＰＵ５０１が使用するプログラムや演算パラメータ等を格納する。ＲＡＭ（Random Access Memory）５０３は、ＣＰＵ５０１の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはＣＰＵバスなどから構成されるホストバス５０４により相互に接続されている。
【０１００】
ホストバス５０４は、ブリッジ５０５を介して、ＰＣＩ(Peripheral Component Interconnect/Interface)バスなどの外部バス５０６に接続されている。
【０１０１】
キーボード５０８、ポインティングデバイス５０９は、ユーザにより操作される入力デバイスである。ディスプレイ５１０は、液晶表示装置またはＣＲＴ（Cathode Ray Tube）などから成り、各種情報をテキストやイメージで表示する。
【０１０２】
ＨＤＤ（Hard Disk Drive）５１１は、ハードディスクを内蔵し、ハードディスクを駆動し、ＣＰＵ５０１によって実行するプログラムや情報を記録または再生させる。ハードディスクは、例えば、図５、図９を参照して説明した動きカテゴリとコマンドを対応付けたテーブル、および各種コマンドの格納部としての役割、さらに各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納領域として利用される。
【０１０３】
ドライブ５１２は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体５２１に記録されているデータまたはプログラムを読み出して、そのデータまたはプログラムを、インタフェース５０７、外部バス５０６、ブリッジ５０５、およびホストバス５０４を介して接続されているＲＡＭ５０３に供給する。
【０１０４】
接続ポート５１４は、外部接続機器５２２を接続するポートであり、ＵＳＢ，ＩＥＥＥ１３９４等の接続部を持つ。接続ポート５１４は、インタフェース５０７、および外部バス５０６、ブリッジ５０５、ホストバス５０４等を介してＣＰＵ５０１等に接続されている。通信部５１５は、ネットワークに接続され、ＣＰＵ５０１、またはＨＤＤ５１１等からの供給データの送信、データ受信を実行する。
【０１０５】
なお、図１４に示す情報処理装置のハードウェア構成例は、ＰＣを適用して構成した装置の一例であり、本発明の情報処理装置は、図１４に示す構成に限らず、上述した実施例において説明した処理を実行可能な構成であればよい。
【０１０６】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１０７】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０１０８】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【０１０９】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１１０】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１１１】
以上、説明したように、本発明の構成によれば、例えば人の手などを認識対象オブジェクトとして、カメラ撮影領域に設定された認識領域内における認識対象オブジェクトの動きを検出し、この動きに基づく動きカテゴリを決定して、決定した動きカテゴリに対応付けたコマンドを選択してＰＣなどの情報処理装置に入力してコマンド対応のデータ処理を実行させることが可能となり、例えばユーザの手をカメラによる撮影領域内に設定された認識領域において移動させることで、様々なコマンド入力が実現され、マウス、キーボードなどの物理的な入力手段を用いることなく、コマンド入力を実行してデータ処理を行なうことができる。
【図面の簡単な説明】
【０１１２】
【図１】本発明の情報処理装置の処理の概要について説明する図である。
【図２】本発明の情報処理装置の処理によってディスプレイに表示されるデータ例を示す図である。
【図３】本発明の情報処理装置の処理としての動き検出およびコマンド入力処理の一例について説明する図である。
【図４】本発明の情報処理装置の処理としての動き検出およびコマンド入力処理の一例について説明する図である。
【図５】本発明の情報処理装置の記憶部としてのコマンド格納部に格納される動きカテゴリとコマンドの対応テーブルの例を示す図である。
【図６】本発明の情報処理装置の構成例を示すブロック図である。
【図７】本発明の情報処理装置の動き検出部の実行する動き検出処理例について説明する図である。
【図８】本発明の情報処理装置の動き検出部および動きカテゴリ分類部の実行する動き処理例について説明する図である。
【図９】本発明の情報処理装置の記憶部としてのコマンド格納部に格納される動きカテゴリとコマンドの対応テーブルの例を示す図である。
【図１０】本発明の情報処理装置の動き検出部および動きカテゴリ分類部の検出する認識対象オブジェクトの動きカテゴリと対応コマンドの例について説明する図である。
【図１１】本発明の情報処理装置の動き検出部および動きカテゴリ分類部の検出する認識対象オブジェクトの動きカテゴリと対応コマンドの例について説明する図である。
【図１２】本発明の情報処理装置の動き検出部および動きカテゴリ分類部の検出する認識対象オブジェクトの動きカテゴリについて説明する図である。
【図１３】本発明の情報処理装置の実行する処理シーケンスについ手説明するフローチャートを示す図である。
【図１４】本発明の情報処理装置のハードウェア構成例を示す図である。
【符号の説明】
【０１１３】
１００  ユーザ
１１０  ディスプレイ
１２０  カメラ
１３０  撮影領域
１４０  表示領域
１５０  表示領域
１６１，１６２  認識領域
３００  撮影領域
３０１，３０２  認識領域
３２１  ページ
３５０  撮影領域
３５１，３５２，３５３  認識領域
４０１  カメラ
４０２  ディスプレイ
４０３  認識領域設定部
４０４  認識対象オブジェクト検出部
４０５  動き検出部
４０６  動きカテゴリ分類部
４０７  コマンド選択部
４０８  コマンド格納部
４０９  コマンド入力部
５０１  ＣＰＵ(Central processing Unit)
５０２  ＲＯＭ（Read-Only-Memory）
５０３  ＲＡＭ（Random Access Memory）
５０４  ホストバス
５０５  ブリッジ
５０６  外部バス
５０７  インタフェース
５０８  キーボード
５０９  ポインティングデバイス
５１０  ディスプレイ
５１１  ＨＤＤ（Hard Disk Drive）
５１２  ドライブ
５１４  接続ポート
５１５  通信部
５２１  リムーバブル記録媒体
５２２  外部接続機器
【図１】
2007034525.tif 000003
【図２】
2007034525.tif 000004
【図３】
2007034525.tif 000005
【図４】
2007034525.tif 000006
【図５】
2007034525.tif 000007
【図６】
2007034525.tif 000008
【図７】
2007034525.tif 000009
【図８】
2007034525.tif 000010
【図９】
2007034525.tif 000011
【図１０】
2007034525.tif 000012
【図１１】
2007034525.tif 000013
【図１２】
2007034525.tif 000014
【図１３】
2007034525.tif 000015
【図１４】
2007034525.tif 000016