(57)【要約】【課題】  本発明は上記課題に鑑みてなされたものであり、入力画像と辞書データのマッチングに基づいて、複数の方向から差し伸べられる人の手のポーズを認識する処理をより効率化することを主な目的とする。【解決手段】  本発明は、上記課題を解決するため、人が腕を挿入可能な空間を撮像した画像を取得する画像取得部と、前記画像のうち、前記人の腕が写る領域の輪郭を示す位置を示す情報を取得する輪郭取得部と、前記情報処理装置に対する前記人の位置を示す情報を取得する位置取得部と、前記輪郭の位置を示す情報と、前記人の位置を示す情報とに基づいて、前記人の腕が写る領域内で、前記人の腕のうち手部分に相当する領域の基準点を特定する基準点特定部と、前記特定された基準点と、前記輪郭の位置を示す情報とから、前記前記人の腕のうち手部分に相当する領域の特徴量を取得する特徴量取得部、を備える。【選択図】  図２
2016071547.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
人が腕を挿入可能な空間を撮像した画像を取得する画像取得手段と、
前記画像取得手段が取得した画像のうち、前記人の腕が写る領域の輪郭を示す位置を示す情報を取得する輪郭取得手段と、
前記情報処理装置に対する前記人の位置を示す情報を取得する位置取得手段と、
前記輪郭取得手段によって取得された輪郭の位置を示す情報と、前記位置取得手段によって取得された前記人の位置を示す情報とに基づいて、
前記人の腕が写る領域内で、前記人の腕のうち手部分に相当する領域の基準点を特定する基準点特定手段と、
前記基準点特定手段によって特定された基準点と、前記輪郭取得手段によって取得された輪郭の位置を示す情報とから、前記前記人の腕のうち手部分に相当する領域の特徴量を取得する特徴量取得手段、
とを備えることを特徴とする情報処理装置。
【請求項２】
前記画像取得手段は、前記空間を上方から見下ろす画角で撮像された画像であることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記位置取得手段は、前記画像取得手段が取得した画像のうち、前記人の腕が写る領域と前記画像の端部が交差する部分を示す位置を、前記人の位置を示す情報として取得する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記特徴量取得手段は、前記人の腕が写る領域のうち、前記特定手段によって特定された基準点を中心とし、予め定められた半径の円形領域に含まれる部分を、前記人の腕のうち手部分に相当する領域であるとみなすことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記特徴量取得手段は、前記特定手段によって特定された基準点を中心とし、予め定められた半径の円形領域を、Ｎ個（Ｎは２以上の自然数）の扇形に等分することで、前記人の腕のうち手部分に相当する領域を部分領域に分割し、各扇形に対応する部分領域の特徴量を取得することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
さらに、前記特徴量取得手段によって取得された特徴量に基づいて、前記画像取得手段によって前記画像が取得された時点における前記手のポーズに対応する辞書データを生成する生成手段を備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項７】
前記特徴量取得手段は、前記人の腕のうち手部分に相当する領域の複数の部分領域のそれぞれから特徴量を取得し、前記生成手段は、前記取得された複数の特徴量によって、前記画像取得手段によって前記画像が取得された時点における前記手のポーズに対応する辞書データを生成することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記生成手段は、前記複数の部分領域から取得された複数の特徴量のうち、少なくとも、前記画像取得手段によって前記画像が取得された時点における前記手のポーズの特徴が最も表れた部分領域から取得された特徴量を、前記手のポーズに対応する辞書データとして保持することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
さらに、前記特徴量取得手段によって取得された特徴量に基づいて、前記画像取得手段によって前記画像が取得された時点における前記手のポーズに対応する辞書データを生成する生成手段を備え、
前記生成手段は、前記画像取得手段によって前記画像が取得された時点における前記手のポーズの識別情報を取得し、
前記Ｎ個の扇形のそれぞれから取得したＮ個の特徴量を、前記画像取得手段によって前記画像が取得された時点における前記手のポーズに対応する辞書データとして保持することを特徴とする請求項５に記載の情報処理装置。
【請求項１０】
さらに、前記特徴量取得手段によって取得された特徴量に基づいて、前記画像取得手段によって前記画像が取得された時点における前記手のポーズを特定するポーズ特定手段を備えることを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記ポーズ特定手段は、所定の手のポーズに対応する辞書データに含まれる特徴量と、前記特徴量取得手段によって取得された特徴量の類似度に基づいて、前記画像が取得された時点における前記手のポーズを特定することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記ポーズ特定手段は、さらに、所定の手のポーズに対応する辞書データに含まれる特徴量を、所定の角度ずつ回転させた場合の、前記特徴量取得手段によって取得された特徴量との類似度に基づいて、前記画像が取得された時点における前記手のポーズを特定することを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記ポーズ特定手段は、前記位置取得手段によって取得された情報が示す前記人の位置から、前記人の腕の指先に向かう方向に基づいて、予め保持された辞書データのうち、前記画像が取得された時点における前記手のポーズを特定するために用いる辞書データを選択することを特徴とする請求項１０乃至１２のいずれか１項に記載の情報処理装置。
【請求項１４】
前記生成手段は、前記位置取得手段によって取得された情報が示す前記人の位置から、前記人の腕の指先に向かう方向を、前記特徴量取得手段によって取得された特徴量に対応づけて保持することを特徴とする請求項６乃至９のいずれか１項に記載の情報処理装置。
【請求項１５】
前記基準点特定手段は、前記輪郭取得手段によって取得された輪郭の位置からの最小距離がより大きく、かつ、前記位置取得手段によって取得された前記人の位置からの距離がより大きい点を、前記人の腕が写る領域内で、前記人の腕のうち手部分に相当する領域の基準点として特定する請求項１乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
情報処理装置の制御方法であって、
画像取得手段により、人が腕を挿入可能な空間を撮像した画像を取得する画像取得工程と、
輪郭取得手段により、前記画像取得手段が取得した画像のうち、前記人の腕が写る領域の輪郭を示す位置を示す情報を取得する輪郭取得工程と、
位置取得手段により、前記情報処理装置に対する前記人の位置を示す情報を取得する位置取得工程と、
基準点特定手段により、前記輪郭取得工程において取得された輪郭の位置を示す情報と、前記位置取得工程において取得された前記人の位置を示す情報とに基づいて、前記人の腕が写る領域内で、前記人の腕のうち手部分に相当する領域の基準点を特定する基準点特定工程と、
特徴量取得手段により、前記基準点特定工程において特定された基準点と、前記輪郭取得工程において取得された輪郭の位置を示す情報とから、前記前記人の腕のうち手部分に相当する領域の特徴量を取得する特徴量取得工程、
とを有することを特徴とする情報処理装置の制御方法。
【請求項１７】
コンピュータに読み込ませ実行させることによって、前記コンピュータに、請求項１６に記載された情報処理装置の制御方法を実行させるプログラム。
【請求項１８】
請求項１７に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの手のポーズを認識する技術に関する。
【背景技術】
【０００２】
ジェスチャによる入力が可能なユーザインタフェース（ＵＩ）においては、ユーザである人の手のポーズを識別することで、ポーズと移動軌跡の組み合わせによる多彩なジェスチャコマンドを認識可能になる。なおポーズとは例えば、所定数の指だけを伸ばした状態や、全ての指を握り込んだ状態などを区別したそれぞれの状態のことをいう。特許文献１は、撮像画像から手のポーズを認識する技術を開示する。特許文献１では、楕円近似によって撮像画像から腕が写る領域（腕領域）を抽出し、楕円の長軸方向かつ胴体から遠い領域を指先であるとして特定した上で、指先の幾何学的位置関係から手のポーズを認識している。
【０００３】
一方、マシンビジョン（以下、ＭＶ）と呼ばれる技術では、機械部品など特定の形状の物体をＲＧＢカメラや距離画像センサを用いて撮像した画像と、辞書データとのマッチングに基づいて、物体の姿勢を認識することがある。特許文献２には、画像から物体の輪郭を抽出し、物体の重心から輪郭までの距離を特徴量とし、辞書データを回転させながら入力画像の特徴量と辞書データの特徴量の類似度が高い回転角度を特定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−５９２７１号公報
【特許文献２】特開平１０−６３３１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ジェスチャによる入力は、物理ボタンやタッチパネルに対する接触を必要とする入力に比べ、入力を行う位置や方向の自由度が高いことが利点の１つである。しかしながら、任意方向からのジェスチャ入力を可能とする場合、特許文献１のように、撮像画像から指先を特定してその位置関係をもとに手のポーズを認識するには、あらゆる方向からみた指先の位置関係を予め記憶している多大な辞書データが必要となる。さらに、多くの場合、人を撮像した画像から抽出された腕領域にはポーズの識別に関わらない部位が含まれ、形状には偏りがある。従って、特許文献２のように、辞書データを回転させることでユーザの手が回転角度を有する場合のマッチングに対応するためには、辞書データを回転させる中心を適切に定める必要がある。
【０００６】
本発明は上記課題に鑑みてなされたものであり、入力画像と辞書データのマッチングに基づいて、複数の方向から差し伸べられる人の手のポーズを認識する処理をより効率化することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明は、上記課題を解決するため、情報処理装置であって、人が腕を挿入可能な空間を撮像した画像を取得する画像取得手段と、前記画像取得手段が取得した画像のうち、前記人の腕が写る領域の輪郭を示す位置を示す情報を取得する輪郭取得手段と、前記情報処理装置に対する前記人の位置を示す情報を取得する位置取得手段と、前記輪郭取得手段によって取得された輪郭の位置を示す情報と、前記位置取得手段によって取得された前記人の位置を示す情報とに基づいて、前記人の腕が写る領域内で、前記人の腕のうち手部分に相当する領域の基準点を特定する基準点特定手段と、前記基準点特定手段によって特定された基準点と、前記輪郭取得手段によって取得された輪郭の位置を示す情報とから、前記前記人の腕のうち手部分に相当する領域の特徴量を取得する特徴量取得手段、を備える。
【発明の効果】
【０００８】
本発明によれば、入力画像と辞書データのマッチングに基づいて、複数の方向から差し伸べられる人の手のポーズを認識する処理をより効率化することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理装置を利用したテーブルトップシステムの外観の一例を示す図
【図２】情報処理装置のハードウェア構成、及び機能構成を示すブロック図
【図３】物体の輪郭と基準点の位置を用いて物体の形状を認識する処理の概要を示す図
【図４】辞書データとして保持される特徴量の一例を示すテーブル
【図５】マッチングに用いる腕領域の基準点の複数の例を示す図
【図６】手が「指さしポーズ」を取る場合の入力画像の例を示す図
【図７】手が「指さしポーズ」を取る場合の手領域の輪郭の例を示す図
【図８】ポーズ及び侵入方向が異なる場合の腕領域の例を示す図
【図９】基準点特定処理、及び特徴量取得処理の流れの一例を示すフローチャート
【図１０】辞書作成処理、及び手のポーズ特定処理の流れの一例を示すフローチャート
【図１１】手領域の形状を識別する処理の流れの一例を示すフローチャート
【図１２】手のポーズの特定処理のアプリケーションにおける利用例を示す図
【図１３】手のポーズの特定処理のアプリケーションにおける利用例を示す図
【発明を実施するための形態】
【００１０】
以下に、図面を参照して本発明の実施形態を詳細に説明する。なお、以下で説明する実施形態は、本発明を具体的に実施した場合の一例を示すものであり、これに限るものではない。
【００１１】
（第１の実施形態）
図１は、本実施形態で説明する情報処理装置１００を設置したテーブルトップシステムの外観の一例を示している。情報処理装置１００は、プロジェクタの投影光照射部１０５から投影光を照射することにより、テーブル上や壁面など、任意の平面を操作面として設定できる。図１に示すテーブルトップシステムの場合は、情報処理装置１００をテーブル面１０１上に設置し、テーブル面上に表示画像を投影する。ここで円形画像１０２は、プロジェクタによってテーブル面上に投影されたＵＩ部品である。以下では、プロジェクタによってテーブル面上に投影されるＵＩ部品や写真などの各種画像など全てを総称して表示アイテムという。
【００１２】
また、受光部１０６は、赤外パターン投影方式の距離画像センサ１１５が得る距離画像の視点を示す。本実施形態では、受光部１０６は、操作面に対して上方から見下ろす画角で撮像する位置に設置される。従って、距離画像センサによって得られた距離画像の各画素には、受光部１０６から被写体までの距離が反映される。なお、距離画像の取得方法は、一例として環境光やテーブル面の表示の影響が小さい赤外パターン投影方式を基に説明するが、用途に応じて視差方式や赤外光反射時間方式などを利用することも可能である。ここで操作面１０４のうち、プロジェクタによる投影が可能な範囲と、距離画像センサの視野範囲は一致しているものとし、以下では、当該範囲を操作領域１０４という。ただし、操作面を上方からみた画像が得られる構成であれば、必ずしも距離受光部１０６は上方に設置されている必要はなく、例えばミラーを用いて反射光を受光するように構成しても構わない。
【００１３】
本実施形態では、ユーザが腕１０３ａや腕１０３ｂなどに示すように複数の方向から、操作面１０４と距離画像センサ１１５の受光部１０６の間の空間に腕を挿入可能である。ユーザは手を使って、テーブルトップシステムに対して、前記表示アイテムを操作対象とするジェスチャ操作を入力する。ただし、本実施形態は、表示アイテムがテーブル１０１に投影される場合だけでなく、例えば壁面に投影光が照射される場合や、投影面が平面でない場合であっても適用可能である。なお、本実施形態では、図１に示されるように操作面１０４に対して平行な二次元平面にｘ軸とｙ軸、操作面１０４に直交する高さ方向にｚ軸を設定し三次元位置情報を座標値として扱う。ただし、操作面が平面でない場合やユーザと操作面との位置関係によっては、必ずしも操作面に平行あるいは直交の関係の座標軸ではなくてもよい。その場合も、ｚ軸は認識対象と操作面との近接関係（両者の間の距離の大きさの程度）を検出する方向、ｚ軸と交わる方向にｘ軸とｙ軸とが設定される。
【００１４】
図２（Ａ）は、本実施形態における情報処理装置１００のハードウェア構成の一例を示すブロック図である。同図において、ＣＰＵ１１０は、バス１１３を介して接続する各デバイスを統括的に制御する。オペレーティングシステム（ＯＳ）をはじめ、後述するフローチャートに示されるような本発明に係る各処理プログラム、デバイスドライバ等はＲＯＭ１１２に記憶されており、ＲＡＭ１１１に一時記憶され、ＣＰＵ１１０によって適宜実行される。ＲＡＭ１１１は、高速にアクセス可能なＣＰＵ１１０の主メモリ、ワークエリア等の一時記憶領域として用いられる。ここでＯＳおよび各処理プログラム等は外部の記憶装置１１６に記憶されていてもよく、その場合は電源投入時に必要な情報がＲＡＭ１１１に適宜読み込まれる。また、ディスプレイＩ／Ｆ１１７は、情報処理装置１００内部で生成される表示アイテム（表示画像）をプロジェクタ１１８が処理可能な信号に変換する。入出力Ｉ／Ｆ１１４は、距離画像センサ１１５から距離情報を取得し、情報処理装置１００が処理可能な情報に変換するとともに、記憶装置１１６と情報処理装置１００間で相互にデータの変換を行う。
【００１５】
本実施形態では、情報処理装置１００で投影するデジタルデータは記憶装置１１６に格納されているものとする。記憶装置１１６としては、ディスクデバイスやフラッシュメモリ、ネットワークやＵＳＢなどの各種の入出力Ｉ／Ｆ１１４を介して接続される記憶装置１１６を使用する。本実施形態において、距離画像センサ１１５は、操作領域１０４上の情報を取得するために用いられる撮像部である。距離画像センサ１１５によって取得された画像は入力画像としてＲＡＭ１１１で一時保存され、ＣＰＵ１１０によって適宜処理され、破棄されるが、適宜必要なデータは記憶装置１１６に蓄積しても構わない。
【００１６】
図２（Ｂ）は、本実施形態における情報処理装置１００の機能構成の一例を示すブロック図である。情報処理装置１００は、画像取得部１２０、輪郭取得部１２１、位置取得部１２２、特徴量取得部１２４、特徴量取得部１２４、生成部１２５、ポーズ特定部１２６から構成される。これらの各機能部は、ＣＰＵ１１０が、ＲＯＭ１１２に格納されたプログラムをＲＡＭ１１１に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、ＣＰＵ１１０を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。また保持部１２７は、ＲＯＭ１１２あるいは、記憶装置１１６のいずれかに対応する機能部であり、生成部１２５によって生成された辞書データや、プロジェクタ１１８に出力される画像の基となる画像データを保持する。
【００１７】
画像取得部１２０は距離画像センサ１１５によって撮像された距離画像を示す情報を、入力画像の情報として一定時間毎に取得し、ＲＡＭ１１１に随時保持する。取得した情報によって示される距離画像の各画素の位置は、図１に示されている（ｘ、ｙ）座標で表現され、各画素の画素値は、ｚ方向の座標値に対応する。なお、画像取得部１２０が取得し、各機能部とやりとりするのは実際には画像データに対応する信号であるが、以下では単に「距離画像を取得する」として説明する。  輪郭取得部１２１は、画像取得部１２０によって取得された距離画像から人の腕が写る領域（腕領域）を抽出し、その輪郭を示す位置情報を取得し、ＲＡＭ１１１にその情報を保持する。ここで人の腕とは、人の肩から指先にかけての部位の全てを指し、撮像画像のうち、人の腕に該当する部分が一部写る領域が、腕領域である。また本実施形態において手とは、腕のうち、手首から先の全てを差す。手には、５指、掌、甲が含まれる。輪郭取得部１２１の実際の処理としては、取得した距離画像の各画素が示すｚ方向の座標値に対して閾値処理を行うことで、テーブルよりも高さが高い座標値を持ち、かつ画像端と接触している領域を、腕領域として抽出する。ただし、腕領域の抽出方法はこれに限られず、例えば別途撮像された操作領域１０４のＲＧＢ画像における肌色領域に対応する部分を抽出する等してもよい。また、本実施形態の輪郭取得部１２１は、腕領域が抽出された入力画像に微分フィルタを適用することに基づいて、輪郭線の座標を取得する。
【００１８】
位置取得部１２２は、入力画像から、情報処理装置１００に対するユーザの位置を示す情報を取得する。本実施形態では、入力画像の画像端と腕領域が交差する部分の位置に基づいて、情報処理装置１００に対するユーザの位置を推定する。
【００１９】
基準点特定部１２３は、抽出された腕領域内の基準点の位置を特定し、その位置情報をＲＡＭ１１１に保持する。特定される基準点は、手のポーズを特定するための辞書データの生成、及び入力画像と辞書データのマッチング処理に利用される。
【００２０】
特徴量取得部１２４は、取得された腕領域のうち、手部分の特徴量を取得する。本実施形態では、特定された基準点を利用して、手が写る手領域を、回転対称な形状の部分領域に分割し、それぞれから得られる複数の特徴量を得る。回転対称な形状の部分領域を利用した特徴量の処理は後で詳述する。
【００２１】
生成部１２５は、取得された手領域の特徴量に基づいて、情報処理装置１００が識別する複数の手のポーズのそれぞれに対応する辞書データを生成する。特に、回転対称な形状の部分領域から得られた複数の特徴量を１つの辞書データとして生成する。
【００２２】
ポーズ特定部１２６は、入力画像から得られる特徴量と、予め生成された辞書データの特徴量とのマッチング処理に基づいて、入力画像が撮像された時点でのユーザの手のポーズを特定し、特定結果をＲＡＭ１１１に保持する。本実施形態では、回転対称な形状の部分領域から得られた複数の特徴量を１つの辞書データを利用して、回転させながらマッチング処理を行う。
【００２３】
この他、入力画像からユーザが指先で指示する位置座標を検出する検出部や、ジェスチャ動作の認識部、プロジェクタ１１８に出力される画像を制御する表示制御部等、情報処理装置１００の使用目的やアプリケーションに応じた機能部を構成することができる。
【００２４】
本実施形態に係る情報処理装置１００の処理を詳細に記載する前に、特許文献２のようにＭＶで用いられる方法で、所定の形状の物体の姿勢（向き）を認識する方法を説明する。ここでは、物体が操作面１０４に載置された状態を仮定し、距離画像センサ１１５によって得られた距離画像の解析に基づいて、物体に生じているｘｙ平面内での回転について、回転量を求める例を説明する。
【００２５】
図３（Ａ）は、距離画像から抽出される、認識対象となる物体の形状を輪郭線で示したものである。図３（Ｂ）は、この物体について生成される辞書データの内容を模式的に表す図である。ここで辞書データとは、認識対象となる物体が、既知の、ある角度で操作面１０４に載置された状態のときに距離画像から抽出される形状の情報から算出された特徴量データである。
【００２６】
図３（Ｂ）で示す特徴量は、以下の処理で算出される。まず、物体の形状に基づいて重心２００の位置を特徴量算出処理の基準点と定める。そして、重心２００を中心とし、物体を包含する仮想的な円形領域を設定する。設定した円をＮ個の扇形に等分に分割することで、物体を回転対称なＮ個の領域に分割する。ここで、Ｎは２以上の自然数とする。図３（Ｂ）の場合、実線で示されているのが、円形領域と、それを分割することで得られた８個の扇形（Ｎ＝８）である。図３（Ｂ）では、各扇形を識別するため、内部に０〜７の識別番号が示されている。さらに、各扇形について、内部に含まれる物体の輪郭を示す各点のｘｙ座標と、基準点２００のｘｙ座標との距離を求め、求められた距離のうち最大の距離を、当該扇形における物体の特徴量とする。図３（Ｂ）では、基準点２００と物体の輸郭を結ぶ破線で示されているのが、各扇形について得られる特徴量である。８個の扇形から得られる８個の特徴量データのセットが、１つの辞書データを構成する。図４は、辞書データとして記憶されるデータの形式の一例を示す。辞書データとして記憶される情報は、特微量データのセットのみであり、輪郭線の情報は含まれていない。
【００２７】
次に、上記のような辞書データと、入力として得られた距離画像（以下、単に入力画像という）とのマッチング処理に基づいて、物体の姿勢を特定する方法を説明する。図３（Ｄ）は、図３（Ａ）で示したのと同じ物体に回転が加わった状態で撮像された入力画像から、物体の輪郭を抽出した状態を示す。マッチング処理は以下のような手順で行われる。まず、入力画像について、辞書データと同じように重心を基準点として定め、特微量を算出する。
【００２８】
そして、辞書データの扇形０〜７と、入力画像の扇形０〜７のそれぞれについて、特微量同士の類似度（マッチングスコア）を算出する。例えば、二乗誤差の和の逆数を求め、回転角０の場合のマッチングスコアとして保持する。次に、辞書データを時計回りに２π／Ｎ、つまり扇形１つ分回転させて、再び対応する位置にある扇形の特微量同士のマッチングスコアを求め、その値を回転角２π／Ｎの場合のマッチングスコアとして保持する。このように、２π／Ｎずつ回転させてマッチングスコアを求める処理をＮ−１回繰り返すと、辞書データ１回転分のマッチングスコアが得られることになる。入力画像から抽出される物体が、辞書データを生成したときと同一の姿勢である時、入力画像から得る物体の特徴量と辞書データの特微量のマッチングスコアは最も高くなる。例えば、図３（Ｅ）は、回転角０の辞書データ（薄く示した部分）と、図３（Ｄ）に示された入力とのマッチング処理を行った場合を表し図３（Ｆ）は、辞書データを２π／８×３だけ回転させた段階で入力とのマッチング処理を行った場合を示す。この場合、図３（Ｆ）が最も高いマッチングスコアを得られる状態であり、以上の処理によって、物体の回転角が２π／８×３であることが特定される。上述したのは、予め形状が既知である１種類の物体について、１つの辞書データを使って物体の姿勢を特定する処理であった。さらに、複数種類の物体のそれぞれに対応する複数の辞書データを予め保持すれば、入力画像に含まれる物体がどの種類の物体かを特定し、かつ、その姿勢を特定することが可能となる。具体的には、入力画像に含まれる対象物体の形状について、複数の辞書データのそれぞれを回転させながらマッチングスコアを求める処理を行う。これにより、対象物体は、最も高いスコアが得られた辞書データに対応する種類の物体であると特定される。このように、辞書データを回転させながら段階的にマッチングスコアを求めることで、回転が加わった物体に対してロバストな認識処理を行うことが可能となる。さらに、複数の辞書データのそれぞれを回転させながら算出したマッチングスコアが所定の闘値を超えない場合に、該物体は予め辞書データが用意されていない未知の物体である、と判断することができる。
【００２９】
ここまで説明した例において、認識の対象となる物体は、機械部品のように、その大きさが操作面自体よりも小さく、操作面上に単独で載置されることが可能な物体であることが前提となる。このような物体は、入力画像において、画像の端と接触することなく、孤立した状態で存在する領域として抽出されることから、以下では孤立物体と称す。孤立物体は、距離画像センサ１１５によって検出可能な輪郭のすべての部分に、その形状や姿勢の特定に寄与する意味がある。一方、孤立物体の形状や姿勢を特定する方法を、本実施形態のように、人の手のポーズを特定することを目的とする処理に適用しようとすると、いくつかの課題を解決する必要が生じる。以下、その課題と解決方法について段階的に説明する。
【００３０】
なお、本実施形態において、手のポーズとは、５指と掌、甲を含む手の部分の形状のことである。ユーザは、主に指の曲げ方を変えることによってポーズを異ならせることができる。各ポーズは、例えば、曲げられている指の本数の違いによって識別される。以下では例えば、人差し指だけを伸ばし、残りの指をまげて掌の内側に収めたポーズを「指差しポーズ」という。また、５指の全てを伸ばして手を広げた状態を、じゃんけんの手に見立てて、「パーのポーズ」という。また、５指の全てを曲げて掌の内側に納めた状態を同じく「グーのポーズ」という。
【００３１】
＜特微量の取得＞
ここで、図５を参照して、人の手を撮像した画像に基づいて、人の手のポーズを特定する処理を行うために必要となる、腕領域の基準点の特定処理を説明する。上述したように、認識対象が孤立物体の場合は、重心を基準点として、辞書データを生成し、該辞書データを、重心を中心に回転させながら入力画像とのマッチング処理を行うことができる。しかしながら、人の手を撮像した画像が入力画像である場合、腕領域を抽出すると、一般的には手（手首から先の部分）だけでなく、手首や、ひじ等の部位を含んだ腕の全てが抽出されることになる。例えば、図５（Ａ）は、入力画像のうち、腕領域として抽出される部分を拡大したものである。図５（Ａ）の場合、画像端３０５から、腕３００が侵入している。本実施形態では、画像端３０５と交差する物体が検出された場合、その交差部分に相当する画素を示す座標値の平均が示す座標位置を、侵入位置の座標として特定する。図５（Ａ）において、侵入位置は点３０４に相当する。なお、侵入位置の定義は、これに限らない。例えば、物体と画像端が接触している座標のうち所定の条件を満たす代表点としたり、物体と操作面の端部が交差している部分の平均座標としたりすることができる。なお侵入位置とは、本実施形態において、情報処理装置１００に対するユーザの位置（立ち位置）に対応する位置情報である。本実施形態の情報処理装置１００は、操作面１０４に向けて設置された距離画像センサ１１５によって入力画像を得るため、入力画像中の腕と画像端に基づいて推定されるユーザの位置として、上述したような侵入位置の概念を利用する。しかし、別のデバイスによって情報処理装置１００に対するユーザの立ち位置を検出可能であれば、その位置情報をｘｙ平面上の画像に変換して利用することができる。例えば、天井に設置されたカメラやセンサを利用してもよい。
【００３２】
腕領域のうち、手首やひじは、手部分のポーズに寄らず、さまざまな形状をなす。従って、腕領域の重心を基準点と定義した場合、１つの辞書データだけを重心を中心に回転させるマッチング方法では、手部分のポーズを特定することはできない。また、手首やひじの状態が異なる複数パターンの辞書データを用意することは、保持すべきデータ量が増大してしまうため現実的ではない。例えば、図５（Ａ）において、点３０２ｂは、手首およびひじが伸びた状態で入力画像に写っている腕領域の重心を示す。手部分の面積に対して、手首から肩にかけての部位の部分の面積の方が大きいため、重心の位置は手から大きくずれている。従って、点３０２ｂを中心として、手の大きさに合わせた円形領域３０２ａを設定しても、その内部に手部分は含まれない。つまり、辞書データを、基準点を中心に回転させながら、入力画像とマッチングする方法を用いて手のポーズを特定するためには、回転の中心として用いるための適切な基準点を設定する必要がある。
【００３３】
ここで、重心とは異なる基準点の求め方として、入力画像のうち物体が写る領域内の注目画素から、該物体の輪郭の画素との最小距離が最も大きくなる点を特定するという方法が知られている。具体的には、まず、画像領域内部のある内部画素に着目し、該領域の輪郭の各画素（輪郭画素は多数ある）からの距離を求める。そのうち、最小の距離値で前記着目した内部画素の値を置き換える。全ての内部画素について上記の置き換えを行った後、画素値が最大になる点を探す、というものである。この方法は、直感的には、物体が最も太い部分を探索するものである。しかしながら腕領域の中で最も太い部分は、距離画像センサ１１５と腕との角度や距離に応じて、手部分であったり腕部分であったりする可能性がある。例えば、入力画像において、腕が、肩側の端に最も太い部分が存在するように写った場合に、このような方法で求められる基準点が、点３０３ｂである。点３０３ｂを中心として、手の大きさに合わせた円形領域３０３ａを設定しても、手部分は含まれない。従って、単に、物体が最も太い部分を探索することによって、手のポーズを特定するマッチング処理のための適切な基準点を定めることは困難である。
【００３４】
以上説明した従来知られた方法に対して、本実施形態における基準点特定処理を、図５（Ｂ）を参照して説明する。辞書データを回転させながら入力画像とマッチングするという方法で手のポーズを特定するためには、基準点は点３０１ｂのように取得され、その周囲の円形領域を分割することで特徴量が特定されるのが最も効率がよい。点３０ｌｂは、腕領域のうち、手の中央である。ここで、腕領域の中で、手として認識されるべき部分には、手首から肩側に伸びる部分は含まれない。つまり、手は、腕領域のうち、侵入位置から比較的遠くに存在するといえる。一方、手の中央とは、手首から先の部分の中では最も太い部分の中心であるといえる。従って、本実施形態では、腕領域内の各画素について、侵入位置からの距離と、輪郭からの最小距離を取得する。そして、それらに基づいて特定されるスコアが最大になる画素の位置を、辞書データを回転させながら入力画像とマッチングするという方法で手のポーズを特定するための基準点の位置として特定する。図５（Ｂ）では、矢印３０６が、侵入位置３０４から基準点３０１ｂまでのユークリッド距離を示し、破線矢印３０７が、輪郭と基準点３０１ｂとの間の最小マンハッタン距離を示す。
【００３５】
図９（Ａ）は、上述した基準点特定処理の流れを示すフローチャートである。なお、基準点特定処理は、手のポーズを特定するための辞書データを作成する処理や、手のポーズを特定する処理において、特徴量取得処理の前に実行される。
【００３６】
ステップＳ１００において、特徴量取得部１２４は、ＲＡＭ１１１に保持された腕領域に含まれる各画素の位置について侵入位置からの距離を取得し、ＲＡＭ１１１に保持する。距離としては本実施形態ではユークリッド距離を用いるが、それ以外の距離尺度を用いてもよい。ステップＳ１０１において、特徴量取得部１２４は、ＲＡＭ１１１に保持された腕領域に距離変換を適用し、ＲＡＭ１１１に保持する。距離としては本実施形態ではマンハッタン距離を用いるが、それ以外の距離尺度を用いてもよい。ステップＳ１０２において、特徴量取得部１２４は、ＲＡＭ１１１に保持された各画素の位置の、侵入位置からの距離と各画素の距離変換した値を用いて、各画素のスコアを算出する。スコアとしては例えば以下の式１を用いることができる。最後に、スコアが最大の画素を手の基準点として選択し、ＲＡＭ１１１に保持する。
スコア＝侵入位置からの距離＊輪郭までの最少距離・・・（式１）
以上が、本実施形態において、手のポーズを特定する処理において、辞書データを回転させながら入力画像とのマッチング処理を行うための、腕領域の基準点を特定する処理である。
【００３７】
次に、距離画像センサ１１５によって得られた入力画像について、上記処理によって特定された基準点に基づいて、手の形状の特徴量を取得する処理について説明する。図１０（Ｂ）のフローチャートは、本実施形態にける特徴量取得処理の流れの一例を示す。なおこの処理は、手のポーズの辞書データを作成する処理や、手のポーズを特定する処理において、基準点特定処理の後に実行される。
【００３８】
まず、ステップＳ１１０において、特徴量取得部１２４は、ＲＡＭ１１１に保持された手の輪郭点を、あらかじめ指定した半径を持ち基準点を中心とした複数の扇形に含まれる集合に分割し、ＲＡＭ１１１に保持する。ステップＳ１１１において、特徴量取得部１２４は、はＲＡＭ１１１に保持された扇形から一つを選択する。ステップＳ１１２において特徴量取得部１２４はステップＳ１１１で選択された扇形について、特徴量を取得する。本実施形態では、選択された扇形に含まれる輪郭点の各位置について、基準点までの距離を算出し、その中で最大の値を、その扇形の特徴量としてＲＡＭ１１１に保持する。ステップＳ１１３において、特徴量取得部１２４は、全ての扇形について特徴量を算出したかを判定する。未処理の扇形が残っている場合（ステップＳ１１３でＮｏ）はステップＳ１１１に戻って、全ての扇形について処理を終えるまで繰り返す。一方、全ての扇形について特徴量を算出していれば、特徴量取得処理を終了する。
【００３９】
以上説明したように、本実施形態では、距離画像センサ１１５によって得られた画像から、腕領域を抽出し、その中でも、手に特に注目するための基準点を定める。さらに、基準点を中心に設定した円形領域を複数の扇形に分割し、各扇形を単位として、特徴量を取得する。これにより、手首やひじの状態によらずに利用可能な効率のよい辞書データの生成とマッチング処理が可能となる。
【００４０】
＜辞書の作成＞
次に、本実施形態において、手のポーズを特定する処理に用いるために、予め辞書データを生成する処理の詳細を説明する。ここで、認識対象となる物体が孤立物体である場合は、その輪郭の全てが、物体の姿勢を特定するための意味を持つのに対し、認識対象が手である場合は必ずしもそうではない。例えば、図５（Ｂ）で示した基準点３０１ｂを中心とし、予め決められた半径の円形領域の内部に含まれる腕領域を、このときのユーザの手領域として取得する場合を考える。本実施形態では、上述した処理で、基準点３０１ｂの周囲に設定した複数の扇形を単位として、特徴量を取得する。このとき、手領域のうち、手首の部分の形状は、ユーザの手がどのようなポーズをとっていたとしても変化がない。このように、ポーズを識別するにあたって意味をもたない部分の特徴量を、辞書データに含んでしまうと、実際にはポーズが異なる場合でも、算出されるマッチングスコアが高くなる可能性がある。すなわち、誤認識が発生しやすくなってしまう。そこで、本実施形態では、辞書データとしては、複数の扇形毎に取得された特徴量のうち、手のポーズの特徴が現われる扇形に対応する特徴量のみが選択される。言い換えれば、本実施形態では、手のポーズの識別に関わらない非特徴部分は、辞書データには含まない。一例として、「指差しポーズ」と「グーのポーズ」を区別して認識するための辞書データを生成する場合を説明する。この２つのポーズは、人差し指部分の形状の違いのみに依存して識別され、その部分以外の輪郭の形状はほぼ一致する。従って、本実施形態では、「指差しポーズ」であれば、少なくとも、人差し指部分に相当する部分の特徴量を、各ポーズに対応する辞書データとして登録する。図６（Ａ）は、手が「指差しポーズ」をとる場合の手４００を写した入力画像を表す。この場合、指差しポーズの特微が現われるのは、扇形２と扇形３の部分であるため、少なくともこの部分の特徴量が「指差しポーズ」の辞書データとされる。これにより、「指差しポーズ」を「グーのポーズ」と区別するために必要な最低限の特徴量が辞書データとして予め用意されることとなる。
【００４１】
次に、図１０（Ａ）のフローチャートを参照して、本実施形態における辞書作成処理の詳細を説明する。図１０（Ａ）のフローチャートは、情報処理装置１００の初期設定を行う時点、あるいは、設計時点において、実行される処理である。
【００４２】
ステップＳ３００において、画像取得部１２０は、距離画像センサ１１５から入力画像として距離画像の情報を取得し、ＲＡＭ１１１に保持する。ステップＳ３０１において、輪郭取得部１２１は、ＲＡＭ１１１に保持された距離画像に基づいて、腕領域を取得する。例えば、操作面１０４の高さより高い位置に存在する画素のまとまりであって、少なくとも一部が画像端に接している領域を、腕領域（腕領域）として抽出する。そして、抽出された領域を、識別のためのラベルと関連付けてＲＡＭ１１１に保持する。
【００４３】
ステップＳ３０２において、特徴量取得部１２４は、ＲＡＭ１１１に保持された腕領域に基づいて、腕領域の侵入位置と侵入方向を取得し、ＲＡＭ１１１に保持する。本実施形態では、侵入方向とは、侵入位置から手先を向く方向だと定義する。腕領域に含まれる画素の位置を示すｘｙ座標と、侵入位置のｘｙ座標の差分に基づいて、腕領域に含まれる画素のうち、侵入位置から最も遠い点を特定する。そして、座標値がより大きい座標軸に沿った方向で、かつ、侵入位置から指先に向かう方向を、侵入方向とする。ただし、侵入方向の定義はこれに限らない。
【００４４】
ステップＳ３０３において、輪郭取得部１２１は、ＲＡＭ１１１に保持された腕領域に基づいて、腕領域の輪郭を取得する。例えば、腕領域が抽出された入力画像に微分フィルタを適用することで、腕領域の輪郭を取得できる。取得した輪郭はＲＡＭ１１１に保持される。なお、腕領域に含まれる画素のうち、侵入位置から最も遠い点は、通常輪郭に含まれるので、ステップＳ３０２の処理とステップＳ３０３の処理の順序を逆として、輪郭点の中から侵入方向の根拠とする点を探索しても構わない。
【００４５】
ステップＳ３０４において、特徴量取得部１２４は、ＲＡＭ１１１に保持された輪郭及び侵入位置に基づいて、特徴量取得に用いる基準点を取得し、ＲＡＭ１１１に保持する。具体的には図９（Ａ）のフローチャートが実行される。ステップＳ３０５において、特徴量取得部１２４は、ＲＡＭ１１１に保持された輪郭の位置と基準点の位置に基づいて、手領域を取得し、ＲＡＭ１１１に保持する。例えば、基準点を中心とした半径閾値以内にある輪郭点の内側を手領域とする。ステップＳ３０６において、特徴量取得部１２４、はＲＡＭ１１１に保持された手領域と基準点に基づいて、特徴量を取得し、ＲＡＭ１１１に保持する。具体的には図９（Ｂ）のフローチャートが実行される。
【００４６】
ステップＳ３０７において、特徴量取得部１２４は、ＲＡＭ１１１に保持された手の特徴量に基づいて、手領域が分割された扇形の部分領域のうち、手のポーズの特徴が最も顕著に現れた部分領域を特定する。ステップＳ３０８において、特徴量取得部１２４は、辞書データを登録するポーズの識別情報を取得する。例えば、情報処理装置１００のユーザ、あるいは設計者によって、辞書作成処理の開始時に入力されたポーズの名称や識別番号を取得する。そして、ステップＳ３０９において、特微量取得部１２２は、ステップＳ１０７において特定された特徴部分と、ステップＳ３０８で取得したポーズの識別情報と、ステップＳ１０２で取得した侵入方向とを対応付けて、辞書データとして保持部１２７に保持させる。従って、本実施形態において、辞書データは、手のポーズの種類１つに対して１つ生成される。以上の辞書データ作成処理は、情報処理装置１００の使用環境に合わせ、少なくとも、区別して特定すべきポーズの数だけ繰り返される。また必要に応じて、同一のポーズに対して、ユーザの姿勢が異なる場合や、距離画像センサ１１５の設置状況が異なる場合に対応付けて複数の辞書データを用意してもよい。本実施形態では、同一のポーズに対して、侵入方向が異なる複数の辞書データを生成するものとする。
【００４７】
以上説明したように、本実施形態では、手の画像を部分領域に分割し少なくとも、識別すべきポーズのそれぞれについて特微が顕著に現わる部分領域の特微量を選択して辞書データとして保持する。これにより、手のポーズの寄らず、必ず手の画像に含まれてしまう手首部分等の影響による、ポーズの特定処理の誤認識の発生を低減することができる。
【００４８】
＜手のポーズの特定＞
次に、本実施形態において、手のポーズを特定する処理の詳細を説明する。本実施形態では、図１に示したように、距離画像センサ１１５の受光部１０６は、操作面に対して上方から見下ろす画角で撮像を行うように設置される。また、さらに斜めの角度を持つように設置される可能性がある。それらに起因して、ユーザの手のポーズが同一であっても手の侵入方向や侵入位置などユーザ側の姿勢が異なれば、入力画像に変化が生じる。つまり、手領域の輪郭の形状が異なったものとなりそこから得られる特徴量も異なるものとなる。例えば、図７は、が距離画像センサ１１５の正面方向から侵入した腕の手が「指差しポーズ」をとった場合と、距離画像センサ１１５に向かって右側から侵入した腕の手が、「指差しポーズ」をとった場合に距離画像から得られる輪郭の違いを示す。そこで、本実施形態では、ユーザの姿勢によらず、手のポーズを特定可能とするために、複数のポーズのそれぞれに関して、侵入方向が異なる複数の辞書データを予め生成する。ただし、ポーズの特定において、予め生成された全ての辞書データを用いた場合、以下のような理由から、返って特定処理の精度が低下する可能性がある。即ち、第１の侵入方向に関して、手が第１のポーズをとる場合の距離画像上の特徴が、第２の侵入方向に関して、手が第２のポーズをとる場合の距離画像上の特徴と類似してしまい、ポーズ自体の識別能力が低下してしまう場合がある。従って、本実施形態では、手のポーズ特定処理においては、ユーザの腕の侵入方向に基づいてマッチングに用いる辞書データを選択する。
【００４９】
また、本実施形態では、辞書作成処理において、手のうちポーズの識別に関して意味を持たない部分領域の特微を、辞書データから除外した。同様に、ポーズを特定する処理においても、ポーズの識別に関わらない部分を予め特定し、辞書データとのマッチングを行わないように制御を加える。この点について、図８を参照して詳細を述べる。図８（Ａ）において、腕５００ａは手が「指差しポーズ」をとる場合、腕５００ｂは手が「パーのポーズ」をとる場合を模式的に示している。また、点５０１ａ及び点５０１ｂは、それぞれ基準点特定処理によって特定された基準点である。腕５００ａと腕５００ｂのそれぞれは、手が異なるポーズをとるにも関わらず、扇形０と扇形７の部分、すなわち手首部分の輪郭の形状とそれに応じた特徴量はほぼ一致する。辞書データに用いる部分領域を限定したのと同様、本実施形態では、辞書データと回転させながら行うマッチング処理においても、ポーズの識別に関わらない部分は除外する。具体的には、侵入方向に基づいて、手領域のうち手首部分である可能性が高い部分を特定する。図８（Ｂ）は、操作面を上方から見た場合を示し、距離画像センサ１１５によって得られる距離画像に相当する。ただし、プロジェクタの投影画像、表示アイテム１０２は、省略されている。矢印５０２ａおよび矢印５０２ｂは、腕１０３ａおよび腕１０３ｂの侵入方向を示す。また、特微量の単位に対応する扇形の境界は破線で示され、扇形のうち、マッチングに利用される部分が実践で囲われている。ここでは手首部分に相当する扇形が除外されていることが示される。手１０３ａの場合、侵入方向は矢印５０２ａが示すようにｘ軸の正方向であるので、手首部分を含む扇形は、ｘ軸の負方向に存在する扇形１および扇形２であると推定可能である。従って、辞書データを回転させながら行うマッチング処理には、扇形３、４、５、６、７、０が用いられる。また、手１０３ｂの場合、侵入方向は矢印５０２ｂが示すようにｙ軸の負方向であるので、手首部分を含む扇形は、ｙ軸の正方向に存在する扇形０および扇形７であると推定可能である。従って、マッチング処理には、扇形１、２、３、４、５、６が用いられる。
【００５０】
次に、図１０（Ｂ）は、本実施形態において実行される手のポーズ特定処理の流れを示すフローチャートである。ただし、ステップＳ３００からステップＳ３０６までの一連の処理は、図１０（Ａ）における同番号の処理と共通するため、詳細な説明を省く。ただし、辞書データ作成処理において取得される入力画像では、ユーザ（あるいは設計者）の手のポーズは情報処理装置１００にとって既知であるのに対して、手のポーズ特定処理で取得される入力画像は、ユーザの手のポーズは未知である。手のポーズ特定処理では、ステップＳ３０６において特徴量が抽出されると、処理はステップＳ３１０に進む。ステップＳ３１０では、ポーズ特定部１２６が、入力画像と辞書データのマッチングにより、入力画像のうち手部分の形状からそのポーズを識別する処理を実行する。
【００５１】
ここで、図１１は、ステップＳ３１０の内容を詳細に示すフローチャートである。ステップＳ４００において、ポーズ特定部１２６は、侵入方向に応じた辞書データ群を選択する。具体的には、保持部１２７から辞書データを読み込み、ＲＡＭ１１１に保持された情報のうち、ステップＳ１０２に取得された手の侵入方向の情報を取得する。そして、辞書データから、取得された侵入方向に対応付けて記憶された辞書データ群を選択する。詳細は後述する。ステップＳ４０１において、ポーズ特定部１２６は、ＲＡＭ１１１に保持された手の侵入方向に基づいて、手領域の中で、マッチングを行う範囲を制限する。詳細は後述する。ステップＳ４０２において、ポーズ特定部１２６は、ＲＡＭ１１１に保持されているステップＳ４０２で選択された辞書から一つを選択する。ステップＳ４０３において、ポーズ特定部１２６は、ステップＳ４０２で選択された辞書データを回転させながら入力とマッチングを行い、各回転量に対応したスコアを取得する。ステップＳ４０４において、ポーズ特定部１２６は、ステップＳ４０３で取得したスコアのうち最大の値を、第１最大スコアとして取得する。
【００５２】
ステップＳ４０５において、ポーズ特定部１２６は、ステップＳ４０２で選択された辞書データを反転させた特徴量データを取得する。辞書データを反転させる処理については後述する。ステップＳ４０６において、ポーズ特定部１２６は、ステップＳ４０５の反転によって得られた特徴量データを反回転させながら入力とマッチングを行い、各回転量に対応したスコアを取得する。ステップＳ４０７において、ポーズ特定部１２６は、ステップＳ４０６で取得したスコアのうち最大の値を、第２最大スコアとして取得する。
【００５３】
ステップＳ４０８において、ポーズ特定部１２６は、ステップＳ４０４で取得したスコアとステップＳ４０７で取得したスコアのうち大きい方を選択する。そして辞書に対応した正規化定数で正規化しＲＡＭ１１１に保持する。ステップＳ４０９において、ポーズ特定部１２６は、ステップＳ４００で選択された辞書データの全てについて、マッチングを行ったか否かを判定する。未処理の辞書データがあると判定された場合（ステップＳ４０９でＮｏ）、ステップＳ４０２に戻り、全ての辞書データを処理するまでステップＳ４０２からステップＳ４０９までの処理が繰り返される。一方、全ての辞書データについて、処理が完了したと判定された場合（ステップＳ４０９でＹｅｓ）は、ステップＳ４１０に進む。
【００５４】
ステップＳ４１０において、ポーズ特定部１２６は、ステップＳ４０７で得られた正規化スコアの最大値、及び、対応する辞書データを取得する。次に、ステップＳ４１１において、ポーズ特定部１２６は、ステップＳ４１０で得られた正規化スコアの最大値が、予め定められた閾値以上か否かを判定する。正規化スコアの最大値が閾値以上であると判定された場合（ステップＳ４１１でＹｅｓ）、処理はステップＳ４１２に進む。一方、正規化スコアの最大値が閾値以上ではないと判定された場合（ステップＳ４１１でＮｏ）、処理はステップＳ４１４に進む。
【００５５】
ステップＳ４１２において、ポーズ特定部１２６は、取得された辞書データから、正規化スコアの最大値に対応するポーズを特定し、その情報を特定結果の情報としてＲＡＭ１１１に保持する。ステップＳ４１３では、ポーズ特定部１２６が、表示制御部やアプリケーションの各機能を制御する制御部に対して、特定結果を出力する。一方、ステップＳ４１４では、ポーズ特定部１２６が、表示制御部やアプリケーションの各機能を制御する制御部に対して、手のポーズは未登録のポーズであるという特定結果を出力する。また、設定に従って、必要な場合は特定結果をＲＡＭ１１１に保持する。
【００５６】
なお、図８等で示したように、本実施形態では、扇形に付与する識別番号を、腕の侵入方向に寄らず、６時の方向から時計回りにインクリメントするように付与し、それを元に扇形を限定した上でマッチング処理を行うとした。しかしながら、手の侵入方向に応じて扇形の識別番号を揃え常に特定の識別番号の扇形が、マッチング処理から除外されるとしてもよい。例えば、腕の侵入位置に近い部分から時計回りにインクリメントするように識別番号を付与すれば、常に扇形０と扇形７とが手首部分を含むとみなせるため、これらをマッチング処理から除外するようにすればよい。また、本実施形態では、全ての扇形について特徴量を求めた上でマッチングを行う番号を制限しているが、特徴量取得部１２４において侵入方向によって特徴量を取得する扇形を制限してもよい。
【００５７】
ここで、ステップＳ４０５において辞書データを反転させた上で、さらにマッチング処理を繰り返す処理について詳細を述べる。
【００５８】
手のポーズは、ユーザが右手を使った場合と、左手を使った場合で対称な形状となることが多い。一方で、全ての侵入方向、及び、全てのポーズに対して、左右両方の辞書データを生成することは辞書作成の負荷と、辞書データのデータ量を増大させてしまう。そこで本実施形態では、左右いずれかの画像に基づいて得られた辞書データを、左右反転させた上で、左右共通の基準点を中心とする回転を加えてマッチング処理を行う。これにより、左右いずれの手が用いられたかによらず、ポーズの特定を精度よく行うことが可能となる。
【００５９】
例えば、図６（Ｂ）は手１０３ｂ（右手）で「指差しポーズ」をとった際に生成された辞書データを利用して、手１０３ｂだけでなく左手６００のマッチングを行う処理を模式的に示すものである。本実施形態では、「指差しポーズ」の辞書データとしては、人差し指部分に相当する扇形の特微量が保持されるため、手１０３ｂに関して扇形２および扇形３の特徴量が辞書データとされる。なお図６（Ｂ）では、反転後も同じ識別番号によって扇形を示す。本実施形態では、図１１のステップＳ４０２〜ステップＳ４０４において、ユーザの手が右手であることを想定して、扇形２、扇形３の特徴量に対して、矢印６０１で示す時計回りの回転を加えながらマッチング処理を行う。さらに、ステップＳ４０５で辞書データを反転させ、ステップＳ４０６〜ステップＳ４０８において、ユーザの手が左手である可能性を考慮して、扇形２・扇形３の特徴量に対して、矢印６０２で示す反時計回りの回転を加えながらマッチング処理を行う。そして、一連の処理の中で最も高いスコアが得られた場合の辞書データに基づいてポーズが特定される。これにより、左右いずれの手を使ってジェスチャ操作が行われていた場合でも、ポーズの特定が可能となる。
【００６０】
以上説明したように、本実施形態では、入力画像から抽出された手の画像を部分画像に分割し、辞書データとのマッチングを行う部分画像を限定する。これにより、不要な処理負荷をかけず、かつ、速やかに特定処理の結果を得ることができる。
【００６１】
＜アプリケーションにおける利用例＞
ここまで説明したような処理によって、情報処理装置１００において、手のポーズを特定することを利用したさまざまなアプリケーションが設計可能となる。例えば、図１２は、表示アイテムに対して行われるタッチ操作を有効とするか否かを、手のポーズが「指差しポーズ」であるか否かに応じて切り替える例を示す。図１２（Ａ）は、ユーザの手７０１が「指差しポーズ」であるので、人差し指の指先位置を追跡し、表示アイテム７００ａに対してタッチが行われたかを判定する。タッチされた場合は、表示アイテム７００ａに対応付けられたコマンドを発行するとともに、表示アイテム７００ｂに置き換えることで、タッチ操作が認識されたことをフィードバックする。一方で、図１２（Ｂ）の場合は、ユーザの手が「指差しポーズ」をとってはいないため、例えユーザの人差し指が表示アイテム７００ａに接触したとしても、コマンドの発行や表示の切り替えは行わない。このように、タッチ操作に対する応答を、ユーザの意図に沿ったものとし、また、解り易いユーザフィードバックを行うために、手のポーズの特定が利用可能である。
【００６２】
また、図１３では、２つの手を使って操作面１０４上のドキュメント８００に対して操作を行う様子を示す。ドキュメント８００は紙に文字列が印刷された物体であるとする。ここでは、「指差しポーズ」をとった状態の右手８０１ｂの人差し指で、ドキュメントをなぞると、その位置に基づいてドキュメント内の矩形範囲８０２が選択される機能を実行する場合を説明する。ユーザは、人差し指での選択操作を容易とするため、もう片方の左手８０１ａでドキュメントを動かないように押さえること可能性がある。本実施形態によれば、手のポーズを特定して追跡することにより、選択操作を行う「指差しポーズ」の手８０１ｂと、ただドキュメントが動かないようにおさえるだけの手８０１ａを区別可能となる。従って、ユーザは、より自然で自由度の高い動作でアプリケーションを利用可能となる。
【００６３】
なお、上述した実施形態では、単一の情報処理装置１００において、辞書データの作成、及び、手のポーズの特定の両方を実行可能としたが、いずれかに特化した装置を構成することも可能である。例えば、辞書作成装置によって作成された辞書データを、サーバなどの外部記憶装置や記憶媒体を介して取得し、入力画像とのマッチング処理に利用する認識装置を構成することもできる。
【００６４】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６５】
１２０  画像取得部
１２１  輪郭取得部
１２２  位置取得部
１２３  基準点特定部
１２４  特徴量取得部
１２５  生成部
１２６  ポーズ特定部
【図１】
2016071547.tif 000003
【図２】
2016071547.tif 000004
【図３】
2016071547.tif 000005
【図４】
2016071547.tif 000006
【図５】
2016071547.tif 000007
【図６】
2016071547.tif 000008
【図７】
2016071547.tif 000009
【図８】
2016071547.tif 000010
【図９】
2016071547.tif 000011
【図１０】
2016071547.tif 000012
【図１１】
2016071547.tif 000013
【図１２】
2016071547.tif 000014
【図１３】
2016071547.tif 000015