(57)【特許請求の範囲】
【請求項１】
対象被写体を配置させるための撮影領域を表す画像を生成し、前記撮影領域を表す画像を現実空間の実写映像に合成した表示用の合成映像を生成する生成手段と、
現実空間を撮像した撮像画像の前記撮影領域に相当する画像範囲の中に写っている対象被写体が、現実空間を撮像する際の撮像基準面からの距離として設定された距離範囲内に入っているか否かを判定し、前記対象被写体が前記距離範囲内に入っていると判定したとき、前記画像範囲の中に写っている前記対象被写体の画像領域を検出する検出手段と、
前記検出された画像領域から色情報を抽出して、前記抽出した色情報を特定の色情報として登録する登録手段と
を有し、
前記撮影領域は、現実空間内に仮想的に設定される三次元領域であり、
前記生成手段は、三次元位置に対応した実写映像の中の表示位置に、前記撮影領域を表す画像を配置させるようにして前記実写映像に合成して、前記表示用の合成映像を生成することを特徴とする情報処理装置。
【請求項２】
前記検出手段は、前記撮像基準面からの奥行き方向の距離範囲として前記撮影領域の三次元領域が現実空間内で仮想的に有している前記距離範囲内に、前記対象被写体が入っているか否かを判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記登録手段は、前記検出された画像領域から抽出した色情報より色分布を求めて前記色分布を分類し、前記特定の色情報に分類される色分布の色情報を、前記特定の色情報として登録する請求項１又は２に記載の情報処理装置。
【請求項４】
前記生成手段は、前記現実空間の実写映像を撮像する際の撮像座標系の固定位置に対応させるように、前記撮影領域を表す画像を配置させて前記実写映像に合成することにより、前記表示用の合成映像を生成することを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記撮像画像の撮像がなされた際の撮影方向と撮影姿勢の情報を取得する姿勢取得手段と、
前記撮像画像の撮像がなされた際に前記姿勢取得手段にて取得された前記撮影方向と撮影姿勢の情報を、前記撮像画像の画像領域から前記登録手段により抽出されて登録された色情報に関連付けて登録し、前記登録した色情報と前記撮影方向と撮影姿勢とに基づいて、現実空間の中に前記撮影領域を仮想的に配置させるための三次元位置を設定する設定手段とを有し、
前記生成手段は、前記設定された三次元位置に対応した実写映像の中の表示位置に、前記撮影領域を表す画像を配置させるようにして前記実写映像に合成して、前記表示用の合成映像を生成することを特徴とする請求項２〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記設定手段は、前記登録手段により登録された色情報に含まれる輝度の分布から、一様な輝度分布に対して不足している輝度を求め、前記登録された色情報と撮影方向と撮影姿勢とを参照して、前記一様な輝度分布に対して不足している輝度を補う撮像のための撮影方向と撮影姿勢を推定し、前記推定した撮影方向と撮影姿勢に基づいて、現実空間の中に前記撮影領域を仮想的に配置させるための前記三次元位置を設定することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記生成手段は、現実空間の実写映像を構成している各画素の中で、前記登録された色情報を有する画素に対して所定の強調処理を施し、前記画素に対する所定の強調処理が施された後の実写映像を用いた前記合成映像を生成することを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記検出手段は、前記画像範囲の中に写っている画像の画素毎に前記撮像基準面からの距離を推定し、前記画素毎に推定した距離が前記距離範囲内に入っているか否か判定し、前記推定した距離が前記距離範囲内に入っていると判定した場合に、前記対象被写体が前記距離範囲内に入っていると判定して、前記推定した距離が前記距離範囲内に入っていると判定された各画素からなる画像領域を、前記対象被写体の画像領域として検出することを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記現実空間を撮像した撮像画像は、現実空間を撮像した左右二つのステレオ画像であり、
前記検出手段は、前記左右二つのステレオ画像のうち、一方の画像の前記撮影領域に相当する画像範囲の中の第１の特徴点を求め、他方の画像の前記撮影領域に相当する画像範囲に対応したエピポーラ線上に前記第１の特徴点に対応した第２の特徴点が存在するか否かを判断し、前記エピポーラ線上に前記第１の特徴点に対応した第２の特徴点が存在すると判断したとき、前記対象被写体が前記距離範囲内に入っていると判定することを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項１０】
前記検出手段は、前記一方の画像の前記画像範囲から求めた複数の第１の特徴点に各々対応した複数の第２の特徴点が、前記他方の画像の前記画像範囲に対応した前記エピポーラ線上に存在するか否かを判断し、前記複数の各第１の特徴点にそれぞれ対応した第２の特徴点が前記エピポーラ線上に存在すると判断した場合、前記一方の画像の前記複数の各第１の特徴点を含む画像領域と前記他方の画像の前記複数の各第２の特徴点を含む画像領域とを、前記対象被写体の画像領域として検出することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記検出手段は、前記登録手段により登録された色情報に基づいて前記左右二つのステレオ画像の前記撮影領域に相当する画像範囲から前記対象被写体に対応する画像領域を検出できるか否かと、前記画像領域を検出できた場合には前記左右二つのステレオ画像から現実空間内における前記画像領域の三次元位置を推定して、前記推定した三次元位置が前記距離範囲内か否かと、を判定することにより、前記登録手段による色情報の登録の正誤を判断し、前記対象被写体に対応する画像領域を検出できないと判定したとき、又は、前記画像領域を検出できた場合に前記推定した三次元位置が前記距離範囲内に入っていないと判定したときに、前記色情報の登録が誤であると判断し、
前記登録手段は、前記検出手段により前記色情報の登録が誤であると判断された場合には、前記誤と判定された前記色情報の登録を破棄して、前記色情報の抽出と前記抽出した色情報の登録をやり直すことを特徴とする請求項９又は１０に記載の情報処理装置。
【請求項１２】
前記登録手段は、前記検出手段により前記色情報の登録が誤であると判断された場合には、前記色情報を抽出する際に用いる閾値を変更して抽出し直した色情報、又は、新たな撮像画像を用いて前記検出手段により検出された画像領域から新たに抽出した色情報を、特定の色情報として登録し直すことを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
撮像部に前記現実空間の三次元の実写映像を撮像させる撮像制御手段と、
前記合成映像を表示部に三次元表示させる表示制御手段とを、更に有することを特徴とする請求項１〜１２のいずれか１項に記載の情報処理装置。
【請求項１４】
生成手段が、対象被写体を配置させるための撮影領域を表す画像を生成し、前記撮影領域を表す画像を現実空間の実写映像に合成した表示用の合成映像を生成するステップと、
検出手段が、現実空間を撮像した撮像画像の前記撮影領域に相当する画像範囲の中に写っている対象被写体が、現実空間を撮像する際の撮像基準面からの距離として設定された距離範囲内に入っているか否かを判定し、前記対象被写体が前記距離範囲内に入っていると判定したとき、前記画像範囲の中に写っている前記対象被写体の画像領域を検出するステップと、
登録手段が、前記検出された画像領域から色情報を抽出して、前記抽出した色情報を特定の色情報として登録するステップとを含み、
前記撮影領域は、現実空間内に仮想的に設定される三次元領域であり、
前記生成手段は、三次元位置に対応した実写映像の中の表示位置に、前記撮影領域を表す画像を配置させるようにして前記実写映像に合成して、前記表示用の合成映像を生成することを特徴とする情報処理方法。
【請求項１５】
コンピュータを、請求項１〜１３のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、入力画像から例えば人の手の部分に対応した画像領域（手領域）を検出するための手領域検出装置が開示されている。特許文献１に記載の手領域検出装置は、先ず、人の統計的肌色特徴に基づいた肌色モデルを用いて、入力画像から手の候補領域を抽出する。次に、手領域検出装置は、その抽出された手の候補領域の形状複雑度を算出する。そして、手領域検出装置は、当該算出した形状複雑度を基に、手の候補領域が手領域であるか否かを判断する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−５２６０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前述した特許文献１に記載の技術の場合、人の統計的肌色特徴に基づく肌色モデルがどのようなモデルであるかにより、手領域を精度良く検出できるか否かが決まる。ただし、入力画像が肌色か否かを精度良く判定できる肌色モデルを生成するためには、例えば様々な環境等を考慮した膨大な数の肌色情報を予め取得して登録しておく必要がある。しかしながら、そのような膨大な数の肌色情報を予め登録しておくためには、非常に多くの手間と時間が必要になってしまう。
【０００５】
本発明はこのような問題点に鑑みてなされたものであり、手間と時間を掛けず、肌色等の特定の色を高精度に検出可能にするための色情報を登録する情報処理装置、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、対象被写体を配置させるための撮影領域を表す画像を生成し、前記撮影領域を表す画像を現実空間の実写映像に合成した表示用の合成映像を生成する生成手段と、現実空間を撮像した撮像画像の前記撮影領域に相当する画像範囲の中に写っている対象被写体が、現実空間を撮像する際の撮像基準面からの距離として設定された距離範囲内に入っているか否かを判定し、前記対象被写体が前記距離範囲内に入っていると判定したとき、前記画像範囲の中に写っている前記対象被写体の画像領域を検出する検出手段と、前記検出された画像領域から色情報を抽出して、前記抽出した色情報を特定の色情報として登録する登録手段とを有し、前記撮影領域は、現実空間内に仮想的に設定される三次元領域であり、前記生成手段は、三次元位置に対応した実写映像の中の表示位置に、前記撮影領域を表す画像を配置させるようにして前記実写映像に合成して、前記表示用の合成映像を生成することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、手間と時間を掛けず、肌色等の特定の色を高精度に検出可能にするための色情報を登録できる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態の情報処理装置の一構成例を示す図である。
【図２】第１の実施形態の撮像部と撮影領域と手の配置例を示す図である。
【図３】手の特徴点に基づく手領域判定の説明に用いる図である。
【図４】第１の実施形態の情報処理装置による処理のフローチャートである。
【図５】画素深度に基づく手領域判定と肌色登録処理のフローチャートである。
【図６】手の特徴点に基づく手領域判定と肌色登録処理のフローチャートである。
【図７】第２の実施形態の情報処理装置の一構成例を説明する図である。
【図８】第２の実施形態で新たに決定される撮影領域の説明に用いる図である。
【図９】第２の実施形態の情報処理装置の撮影位置処理部のフローチャートである。
【発明を実施するための形態】
【０００９】
＜第１の実施形態＞
図１には、第１の実施形態の情報処理装置１０００の概略構成を示す。第１の実施形態の情報処理装置１０００には、撮像部１００と表示部２００が接続されている。撮像部１００と表示部２００は、一例として、ユーザが頭部に装着する頭部装着型画像表示装置（Ｈｅａｄ  Ｍｏｕｎｔｅｄ  Ｄｉｓｐｌａｙ：以下、ＨＭＤと表記する。）等に搭載されている。なお、情報処理装置１０００は、例えばＨＭＤ内に含まれていてもよいし、ＨＭＤから分離されていてもよい。情報処理装置１０００とＨＭＤが分離されている場合、当該ＨＭＤと情報処理装置１０００は例えば無線や有線により接続される。また、情報処理装置１０００とＨＭＤが分離されている場合、情報処理装置１０００は、例えばパーソナルコンピュータや携帯型の情報端末であってもよいし、専用装置として設けられていてもよい。
【００１０】
図２には、情報処理装置１０００とＨＭＤ２０との配置関係の一例を模式的に示している。ＨＭＤ２０に搭載されている撮像部１００は、図２に示すように、一例として右カメラ１００Ｌと左カメラ１００Ｒからなるステレオカメラとなされている。ＨＭＤ２０に搭載されている表示部２００は、右目用と左目用の表示装置を有した三次元表示が可能なディスプレイである。なお、表示部２００は、二次元表示用のディスプレイであってもよい。図２には、ＨＭＤ２０の撮像部１００にて撮影される対象被写体（例えば手２２０）と、現実空間内に仮想的に設定される撮影領域２１０とが描かれているが、これらの説明については後述する。
【００１１】
また、本実施形態の情報処理装置１０００は、現実空間の実写映像とコンピュータグラフィックス処理で生成した仮想空間の画像とをリアルタイムに重ね合わせてユーザに提示する、複合現実感（Ｍｉｘｅｄ  Ｒｅａｌｉｔｙ：ＭＲ）を実現する機能を有する。複合現実感を実現する場合、情報処理装置１０００は、ＨＭＤ２０の撮像部１００で撮影している実写映像の全域又は一部を、ＨＭＤ２０の撮像部１００の撮影方向（方角）と撮影姿勢等に応じて生成した仮想空間画像に重畳して合成映像を生成する。そして、情報処理装置１０００は、その合成映像を表示部２００の画面に表示することにより、複合現実感をユーザに提供する。
【００１２】
一例として、現実空間の実写映像内に写っているユーザの「手」の映像を仮想空間の画像に合成するような場合、情報処理装置１０００は、先ず、実写映像から手に対応した画像領域（以下、手領域とする）を検出する。具体的には、情報処理装置１０００は、動画の実写映像を構成している各フレームの撮像画像の各画素の中から、手の肌色成分を有する画素を検出し、当該肌色成分を有する画素が集合した画像領域を手領域として検出する。また、情報処理装置１０００は、ＨＭＤ２０の撮像部１００による撮影の際の撮影方向（方角）と撮影姿勢を検出するとともに現実空間内における手の三次元位置を推定する。そして、情報処理装置１０００は、実写映像から手領域を抽出し、現実空間内における手の三次元位置と、仮想空間内での手領域の三次元位置とが対応するように、当該手領域の画像を仮想空間内に配置させて仮想空間画像と合成する。これにより、現実空間に存在している手の実写映像が、仮想空間内に合成表示された複合現実感の実現が可能となる。
【００１３】
ここで、実写映像内の手の映像を仮想空間の画像に合成するような場合、実写映像から手領域を精度よく検出しなければならない。実写映像から手領域を検出する手法としては、一例として、人の統計的肌色特徴に基づく肌色モデルを用いて手領域を検出するような手法が考えられる。ただし、人の統計的肌色特徴に基づく肌色モデルを生成するには、通常は膨大な数の肌色情報を用意しなければならず、非常に多くの手間と時間が必要になってしまう。また、人の統計的肌色特徴に基づく肌色モデルは様々な人の手領域を検出するような用途では或る程度有効ではあるが、例えば特定のユーザの手領域を高精度に検出するような用途では必ずしも最適とは言えない。
【００１４】
このようなことから、本実施形態の情報処理装置１０００は、例えばＨＭＤ２０を装着している特定のユーザの手の肌色のような、特定の対象被写体の特定の色を高精度に検出可能にする色情報を、手間と時間を掛けずに登録可能となされている。以下、具体的な例として、図２に示すようなＨＭＤ２０を装着しているユーザの手２２０を対象被写体の一例とし、その手２２０の皮膚の肌色を特定の色情報として取得して登録する場合を例に挙げて説明する。なお、本実施形態では、対象被写体としてユーザの手を例に挙げ、特定の色情報として肌色情報を例に挙げているが、本発明における対象被写体は手に限定されず、さらに、特定の色情報も肌色情報に限定されるものではない。また、本実施形態では、複合現実感への適用例を挙げているが、本発明は複合現実感に適用する場合だけに限定されるものではない。
【００１５】
手２２０の肌色情報を登録する例において、情報処理装置１０００は、先ず、ＨＭＤ２０の撮像部１００にて撮影されている現実空間内に、仮想的な三次元の撮影領域２１０を設定する。またこのとき、情報処理装置１０００は、ＨＭＤ２０の表示部２００の表示画面に、現実空間内に仮想的に設定された三次元の撮影領域２１０を表すコンピュータグラフィック（以下ＣＧとする。）画像を重畳した合成映像を表示させる。撮影領域２１０は、ＨＭＤ２０の表示部２００に表示されている実写映像、すなわち撮像部１００が撮影している現実空間内で、ユーザの手２２０を配置させるべき三次元領域を表している。そして、情報処理装置１０００は、ＨＭＤ２０の撮像部１００が現実空間を撮像している撮像画像から、撮影領域２１０内に写っている手２２０の画像領域（手領域）を検出し、当該検出した手領域から肌色情報を抽出して登録する。なお、本実施形態の情報処理装置１０００が撮影領域２１０内の手領域を検出し、その手領域から肌色情報を抽出して登録する処理の詳細については後述する。
【００１６】
本実施形態の情報処理装置１０００は、前述した撮影領域２１０の設定と手領域の検出と肌色情報の抽出及び登録を実現するための構成として、図１に示すような各構成要素を有している。すなわち、情報処理装置１０００は、画像取得部１０１０、データ記憶部１０２０、撮影領域判定部１０３０、肌色登録部１０４０、画像処理部１０５０、画像出力部１０６０を有している。画像処理部１０５０は生成手段の一例であり、撮影領域判定部１０３０は検出手段の一例であり、肌色登録部１０４０は登録手段の一例である。なお、情報処理装置１０００が備えているこれらの各構成要素は、ハードウェアにより実現されてもよいし、ソフトウェアプログラムにより実現されてもよい。また、当該ソフトウェアプログラムは、コンピュータが読み取り可能な記憶媒体を介して、又は、ネットワーク等を介して、情報処理装置１０００に提供されてインストールされてもよい。
【００１７】
画像取得部１０１０は、撮像制御手段の一例であり、撮像部１００が撮影している現実空間の実写映像データ、つまりＨＭＤ２０の右カメラ１００Ｌと左カメラ１００Ｒにより撮像されている左右二つの撮像画像データを取得する。なお、画像取得部１０１０は、例えばいわゆるビデオキャプチャーカードにより構成されている。画像取得部１０１０は、撮像部１００から取得した撮像画像データを、データ記憶部１０２０に記憶させる。
【００１８】
データ記憶部１０２０は、画像取得部１０１０が取得した実写映像の撮像画像データ、画像処理部１０５０がＣＧ処理により生成する仮想空間内の仮想物体等のデータ、後述する肌色登録部１０４０により検出される肌色情報等を記憶する。なお、データ記憶部１０２０は、撮像部１００で撮像されて画像取得部１０１０で取得された動画の撮像画像、つまり現実空間の実写映像のデータを、略々リアルタイムに画像処理部１０５０へ転送する機能も備えている。
【００１９】
画像処理部１０５０は、ＣＧ処理により仮想空間内の仮想物体等の画像データを生成する。本実施形態の情報処理装置１０００において手領域から肌色情報を検出して登録する処理が行われる場合、画像処理部１０５０は、図２に示したような三次元の撮影領域２１０を表すＣＧ画像（以下、撮影領域ＣＧモデルとする。）を生成する。撮影領域ＣＧモデルは、奥行きのある三次元画像として生成され、図２に示したように撮影領域２１０が三次元の直方体モデルである場合には、撮影領域ＣＧモデルも直方体三次元画像となされる。そして、画像処理部１０５０は、撮像部１００にて撮影されて画像取得部１０１０で取得され、さらにデータ記憶部１０２０から略々リアルタイムに転送された動画の実写映像データに対し、撮影領域ＣＧモデルを重畳させた合成映像を生成する。具体的には、本実施形態の場合、画像処理部１０５０は、撮影領域ＣＧモデルを、撮像部１００における撮像座標系（カメラ座標系）の固定位置にレンダリングすることにより、動画の実写映像データに対して撮影領域ＣＧモデルを重畳させた合成映像を生成する。そして、画像処理部１０５０は、実写映像データに撮影領域ＣＧモデルが重畳された合成映像データを、画像出力部１０６０へ送る。
【００２０】
画像出力部１０６０は、表示制御手段の一例であり、画像処理部１０５０から送られてきた合成映像を、表示部２００の画面上に表示させる。これにより、表示部２００の画面上には、現実空間の実写映像に撮影領域ＣＧモデルが重畳された合成映像が表示されることになる。なお、本実施形態の場合、撮影領域ＣＧモデルは、前述したように、撮像座標系の固定位置にレンダリングされている。このため、例えばユーザの頭部が動いてＨＭＤ２０の撮像部１００の撮影方向等が変化したことで、表示部２００に表示される実写映像が変わったとしても、撮影領域ＣＧモデルは、表示部２００の画面上の固定位置に表示されてその表示位置は変化しない。
【００２１】
撮影領域判定部１０３０は、データ記憶部１０２０に記憶されている撮像画像について、撮影領域２１０に相当する画像範囲内に手領域があるか否か判定する。以下、撮影領域２１０に相当する画像範囲を撮影領域画像と表記する。そして、撮影領域判定部１０３０は、撮影領域画像内に手領域がある場合には、その手領域の画像データを肌色登録部１０４０へ送る。
【００２２】
具体的に説明すると、撮影領域判定部１０３０は、先ず、画像取得部１０１０で取得されてデータ記憶部１０２０に記憶された撮像画像のデータを読み出す。次に、撮影領域判定部１０３０は、その撮像画像の撮影領域画像内の各画素について、現実空間内での奥行き方向の距離（画素の深度）を推定する。なお、各画素の奥行き方向の距離とは、撮像部１００の撮像面を現実空間内の撮像基準面とした場合に、その撮像基準面から、当該撮像面上に結像された対象被写体像の各画素にそれぞれ対応した対象被写体表面上の対応点までの距離である。
【００２３】
次に、撮影領域判定部１０３０は、各画素について推定した現実空間内での奥行き方向の距離（深度）が、現実空間内での撮影領域２１０の三次元空間内における奥行き方向の距離範囲（以下、撮影領域距離範囲とする。）内か否かを判断する。以下、現実空間内での撮影領域２１０の三次元空間内における奥行き方向の距離範囲を、撮影領域距離範囲と表記する。さらに、撮影領域判定部１０３０は、各画素について推定した現実空間内での奥行き方向の距離（深度）が、撮影領域距離範囲内であると判断した場合、それら各画素は手領域の画素であると判断する。そして、撮影領域判定部１０３０は、撮影領域距離範囲内の各画素からなる手領域の画像データを、肌色登録部１０４０へ送る。
【００２４】
なお、本実施形態において、撮像画像の各画素における現実空間内での奥行き方向の距離（深度）は、ステレオカメラの左右二つのステレオ画像を用いたいわゆるステレオ法のような、距離を推定可能な公知の手法を用いて求めることができる。また、距離推定手法の他の例としては、カメラレンズの合焦距離情報を用いたレンズ焦点法、特定パターンの光を対象被写体に投影してそのパターン変化の度合いから距離を算出する光投影法などの公知の手法を用いてもよい。その他にも、例えば赤外光を対象被写体に照射して、その反射光に基づいて距離（深度）を計測するいわゆる深度センサを用いてもよい。深度センサは、例えばＨＭＤ２０に搭載される。また、図２では、手２２０の全体が撮影領域２１０内に入っている例を挙げているが、これら各距離推定手法では、手２２０の一部のみが撮影領域２１０内に入っていている場合でも距離を推定可能である。このように、本実施形態の情報処理装置１０００は、撮像画像の各画素における現実空間内での奥行き方向の距離（深度）を推定することにより、撮像基準面から対象被写体である手２２０までの、現実空間内における奥行き方向の距離を推定している。
【００２５】
また、撮像画像の撮影領域画像内に手領域が存在しているかについては、必ずしも各画素の距離（深度）の値を算出しなくても可能である。一例として、公知のエピポーラ幾何に基づいて、撮像画像の撮影領域画像内に手領域が存在するか否かを判定してもよい。この場合、撮影領域判定部１０３０は、図３に示すように、図２の一方の左カメラ１００Ｌで手２２０を撮影した左カメラ画像１３００Ｌの撮影領域画像と、他方の右カメラ１００Ｒで手２２０を撮影した右カメラ画像１３００Ｒの撮影領域画像とを比較する。具体的には、撮影領域判定部１０３０は、右カメラ画像１３００Ｒにおけるエピポーラ線上１３１２の一定範囲１３１３内に、左カメラ画像１３００Ｌ内の特徴点１３０３Ｌに対応した特徴点１３０３Ｒが存在するか否かを判断する。なお、一定範囲１３１３は、撮影領域２１０の現実空間内の大きさに対応している。また、特徴点１３０３Ｌ，１３０３Ｒは、手２２０の中の或る特徴点１３２０に対応しており、画像内のエッジの交点やコーナー点など、物体認識で扱われるものであれば何れでもよく、複数の特徴点が組み合わされてもよい。撮影領域判定部１０３０は、左カメラ画像１３００Ｌ内の特徴点１３０３Ｌに対応した特徴点１３０３Ｒが、右カメラ画像１３００Ｒのエピポーラ線上１３１２の一定範囲１３１３内に存在すると判定した場合、撮影領域画像内に手領域が存在していると判断する。
【００２６】
このようなエピポーラ幾何に基づく手領域の判定手法においても、前述の各画素の距離（深度）を推定する場合と同様に、撮像基準面から対象被写体である手２２０までの現実空間内における奥行き方向の距離を推定していることになる。すなわち、図３の例において、撮影領域２１０は、現実空間内に仮想的に設定された三次元領域であり、現実空間内において撮像基準面からの奥行き方向の距離が仮想的に設定されているものである。したがって、当該撮影領域２１０に対応した撮影領域画像の特徴点に基づいて手領域が検出された場合、撮像基準面から手２２０までの距離は、撮影領域２１０に対して現実空間内で仮想的に設定された奥行き方向の距離範囲内であると推定されることになる。
【００２７】
また、手領域については、撮像画像から公知の凸包（凸包絡）を作成することで推定することができる。この場合、撮影領域判定部１０３０は、先ず、空間一次微分を計算して輪郭（エッジ）を検出するいわゆるＳｏｖｅｌフィルタを用いて、左右のカメラ１００Ｌ，１００Ｒの撮像画像からエッジを抽出する。次に、撮影領域判定部１０３０は、そのエッジ上の点（画素）が、撮影領域画像内にあるか否かを左右二つのステレオ画像を用いたステレオ法の原理で判定する。そして、撮影領域判定部１０３０は、撮影領域画像内にあると判断されたエッジ上の画素の集合を包括する凸包を作成し、その凸包の画像領域を手領域と推定する。なお、凸包の領域は、例えば公知のＱｕｉｃｋｈｕｌｌアルゴリズムやＧｒａｈａｍ'ｓ  ｓｃａｎアルゴリズムなど、凸包の領域を生成可能であれば何れの公知の手法で算出してもよい。
【００２８】
図１の説明に戻り、肌色登録部１０４０は、撮影領域判定部１０３０にて手領域であると判定された各画素のデータの色情報を求め、それら各画素の色情報から色分布を求める。そして、肌色登録部１０４０は、その色分布により肌色に分類された各画素の色情報を、肌色情報としてデータ記憶部１０２０に記憶させる。これにより、データ記憶部１０２０には、特定のユーザの手２２０の肌色情報が登録される。なお、肌色登録部１０４０は、前述のようにして得られた肌色情報を、例えば予め用意された人の統計的肌色特徴に基づく肌色モデルに追加するような登録を行ってもよい。
【００２９】
画像処理部１０５０は、前述した撮影領域ＣＧモデルを重畳させた合成映像を生成する際、既に登録された肌色情報に対応した肌色画像部分の各画素に対して所定の強調処理を施すようにした合成映像を生成してもよい。所定の強調処理は、一例として、既に登録された肌色情報に対応した肌色画像部分の各画素に対して、赤色の値をα値（透過係数）により合成する（アルファブレンディングにより重ね合せる）ような処理を挙げることができる。その他にも、所定の強調処理は、既に登録された肌色情報に対応した肌色画像部分の各画素を黒色にして塗りつぶすような処理であってもよい。これにより、表示部２００の画面上には、登録済みの肌色に対応した画像部分が、ユーザから見て判り易く表示された（ユーザからみて強調表示された）合成映像が表示されることになる。このように、登録済みの肌色に対応した肌色画像部分が強調表示された場合、ユーザは、強調表示されていない肌色画像部分の肌色は未登録の肌色であることを認識できることになる。上述のような強調手法は、一例であり、登録済みの肌色画像部分がユーザから見て判り易く表示されるのであれば、他の表示手法を用いてもよい。
【００３０】
また、画像処理部１０５０は、撮影領域ＣＧモデルと実写映像の手２２０との間の、現実空間内の奥行き方向の前後関係を表現した合成映像を生成してもよい。一例として、画像処理部１０５０は、撮影領域ＣＧモデルのうち、現実空間内で手２２０よりも近い画像部分については手２２０の実写映像の上に表示、つまり手２２０の画像が隠れるように表示させる。一方、画像処理部１０５０は、撮影領域ＣＧモデルのうち、現実空間内で手２２０よりも遠い画像部分については、手２２０の実写映像の下に表示、つまり手２２０の画像により隠れるように表示させる。
【００３１】
なお、本実施形態では、撮影領域２１０は、図２や図３のような直方体モデルとなされているが、例えば球モデルなどのような他の形状モデルであってもよい。撮影領域２１０が例えば球モデルである場合、撮影領域ＣＧモデルは球画像となされる。
【００３２】
その他、撮影領域判定部１０３０は、登録済みの肌色情報に基づいて手領域を検出し、その手領域の距離をステレオ法等により推定してもよい。
【００３３】
次に、図４は、第１の実施形態の情報処理装置１０００における撮像画像の取得から肌色情報の登録までの処理の流れを示したフローチャートである。図４において、撮像画像から肌色情報を取得して登録する処理がスタートすると、情報処理装置１０００は、先ずステップＳ２０１０へ処理を進める。このステップＳ２０１０の処理は画像取得部１０１０にて行われる。
【００３４】
ステップＳ２０１０では、画像取得部１０１０は、撮像部１００が撮像している動画像の実写映像の各フレームの撮像画像データを取得し、その撮像画像データをデータ記憶部１０２０へ記憶させる。ステップＳ２０１０の後、情報処理装置１０００の処理は、画像処理部１０５０で行われるステップＳ２０２０へ遷移する。
【００３５】
ステップＳ２０２０において、画像処理部１０５０は、画像取得部１０１０で取得されてデータ記憶部１０２０に記憶された撮像画像データをデータ記憶部１０２０から読み出す。また、画像処理部１０５０は、登録済みの肌色情報が有る場合には、実写映像から、当該登録済みの肌色情報に対応した色の各画素からなる画像部分を検出する。そして、画像処理部１０５０は、実写映像に対して、登録済み肌色情報に対応した画像部分の各画素を前述のように強調表示するための画像処理を施す。ステップＳ２０２０の後、画像処理部１０５０は、処理をステップＳ２０３０へ進める。
【００３６】
ステップＳ２０３０では、画像処理部１０５０は、画像取得部１０１０で取得されてデータ記憶部１０２０から略々リアルタイムに転送されてくる実写映像に対し、撮影領域ＣＧモデルを合成（重畳）して合成映像データを生成する。そして、画像処理部１０５０は、その合成映像データを画像出力部１０６０に送る。これにより、表示部２００の画面上には、実写映像に撮影領域ＣＧモデルが重畳された合成映像が表示される。ステップＳ２０３０の後、情報処理装置１０００の処理は、撮影領域判定部１０３０と肌色登録部１０４０で行われるステップＳ２０４０へ遷移する。
【００３７】
ステップＳ２０４０において、撮影領域判定部１０３０は、画像取得部１０１０で取得されてデータ記憶部１０２０に記憶された撮像画像の中の撮影領域画像内に、手２２０の画像領域（手領域）があるか否かを、前述した手領域の判定処理により判定する。そして、撮影領域判定部１０３０は、撮影領域画像内に手領域があると判定した場合、その手領域の各画素のデータを肌色登録部１０４０へ送る。肌色登録部１０４０は、撮影領域判定部１０３０から送られてきた手領域の各画素の色情報から色分布を求める。そして、肌色登録部１０４０は、当該色分布により肌色に分類された各画素の色情報を、肌色情報としてデータ記憶部１０２０に登録する。ステップＳ２０４０の後、情報処理装置１０００は、処理をステップＳ２０５０へ進める。
【００３８】
ステップＳ２０５０では、情報処理装置１０００は、例えば図示しないユーザインターフェイスデバイスを通じてユーザから肌色情報の登録処理を終了する旨の指示が入力されたか否かを判断する。ユーザから登録処理の終了指示が入力されていない場合、情報処理装置１０００は、処理をステップＳ２０２０へ戻す。一方、情報処理装置１０００は、ステップＳ２０５０においてユーザから登録処理の終了指示が入力されたと判断した場合には、この図４のフローチャートの処理を終了する。
【００３９】
図５には、図４のステップＳ２０４０において、撮影領域判定部１０３０で行われる手領域の判定処理と、肌色登録部１０４０で行われる肌色登録処理の、詳細なフローチャートを示す。図５において、ステップＳ２１１０では、情報処理装置１０００の撮影領域判定部１０３０は、前述したステレオ法、レンズ焦点法、光投影法、深度センサなどの何れかを用いて、撮像画像の画素毎に深度（距離）を算出する。ステップＳ２１１０の後、撮影領域判定部１０３０は、処理をステップＳ２１２０へ進める。
【００４０】
ステップＳ２１２０では、撮影領域判定部１０３０は、ステップＳ２１１０で距離（深度）を算出した画素毎に、各画素の現実空間内における距離と、撮影領域距離範囲とを比較する。撮影領域判定部１０３０は、撮影領域距離範囲内に各画素が存在する場合、それら各画素は手領域の画素であると判断する。一方、撮影領域判定部１０３０は、各画素の距離が撮影領域距離範囲外である場合、その画素は手領域の画素でないと判定する。そして、撮影領域判定部１０３０がステップＳ２１２０において手領域の画素であると判定した画素については、情報処理装置１０００は、ステップＳ２１３０へ処理を進める。一方、撮影領域判定部１０３０がステップＳ２１２０において手領域の画素でないと判定した画素については、情報処理装置１０００は、ステップＳ２１４０へ処理を進める。
【００４１】
ステップＳ２１３０の処理は、肌色登録部１０４０で行われる。ステップＳ２１３０では、肌色登録部１０４０は、ステップＳ２１２０にて撮影領域判定部１０３０が手領域であると判定した画素の肌色情報をデータ記憶部１０２０に登録する。ステップＳ２１３０の後、情報処理装置１０００は、処理をステップＳ２１４０へ進める。
【００４２】
ステップＳ２１４０では、情報処理装置１０００は、ステップＳ２１１０で距離が算出された全ての画素について前述のステップＳ２１２０での判定処理が終わり、またステップＳ２１３０で手領域の全ての画素について肌色登録処理が終了したか否か判断する。そして、情報処理装置１０００は、それら全ての処理が終了していないと判断した場合には処理をステップＳ２１２０へ戻し、一方、終了したと判断した場合にはこの図５のフローチャートの処理を終了する。
【００４３】
次に、図６には、図４のステップＳ２０４０において、撮影領域判定部１０３０が前述の図３のようにエピポーラ幾何に基づいて手２２０（手領域）を検出する場合の手領域推定処理と肌色登録部１０４０で行われる肌色登録処理の詳細なフローチャートを示す。
【００４４】
図６において、ステップＳ２２１０では、撮影領域判定部１０３０は、データ記憶部１０２０から、左カメラ１００Ｌで撮影された図３の左カメラ画像１３００Ｌのデータを読み出す。そして、撮影領域判定部１０３０は、左カメラ画像１３００Ｌから、前述したように特徴点１３０３Ｌを検出する。ステップＳ２２１０の後、撮影領域判定部１０３０は、処理をステップＳ２２２０へ進める。
【００４５】
ステップＳ２２２０では、撮影領域判定部１０３０は、データ記憶部１０２０から、左カメラ１００Ｌによる左カメラ画像１３００Ｌの撮影と同時に右カメラ１００Ｒで撮影された、図３の右カメラ画像１３００Ｒのデータを読み出す。次に、撮影領域判定部１０３０は、左カメラ画像１３００Ｌの特徴点１３０３Ｌに対応した特徴点１３０３Ｒが右カメラ画像１３００Ｒ内にあるか否かを判定する。すなわち、撮影領域判定部１０３０は、左カメラ画像１３００Ｌの特徴点１３０３Ｌの画素に対応した座標の、右カメラ画像１３００Ｒ内の画素が、特徴点１３０３Ｌと同一の特徴を有した画素か否かを判定する。なお、左カメラ画像１３００Ｌの特徴点１３０３Ｌの画素に対応する右カメラ画像１３００Ｒの画素は、図３の撮影領域２１０の奥行きと左右のカメラの相対位置及び相対姿勢から、公知のエピポーラ幾何計算に基づいて算出される。そして、撮影領域判定部１０３０は、左カメラ画像１３００Ｌの特徴点１３０３Ｌに対応した特徴点１３０３Ｒが右カメラ画像１３００Ｒ内にある場合、ステップＳ２２３０で特徴点１３０３Ｌ，１３０３Ｒの各画素の座標を登録する。なお、それら特徴点の画素の座標登録は、データ記憶部１０２０に記憶させることで行われる。一方、撮影領域判定部１０３０は、ステップＳ２２２０で左カメラ画像１３００Ｌの特徴点１３０３Ｌと対応した特徴点１３０３Ｒが右カメラ画像１３００Ｒ内に存在しない場合、ステップＳ２２３０では登録を行わない。ステップＳ２２３０の後、撮影領域判定部１０３０は、処理をステップＳ２２４０へ進める。
【００４６】
ステップＳ２２４０では、撮影領域判定部１０３０は、ステップＳ２２１０で検出された全ての特徴点に対するステップＳ２２２０とステップＳ２２３０の処理が終わったか否かを確認する。そして、撮影領域判定部１０３０は、処理が終わっていない場合にはステップＳ２２２０へ処理を戻し、一方、処理が終わったことを確認した場合にはステップＳ２２５０へ処理を進める。
【００４７】
ステップＳ２２５０では、撮影領域判定部１０３０は、撮影領域画像内で手２２０の特徴点１３２０を含む凸包の画像領域を算出する。そして、撮影領域判定部１０３０は、凸包の画像領域の画像データを、手領域の画像データとして肌色登録部１０４０へ送る。ステップＳ２２５０の後、情報処理装置１０００の処理は、肌色登録部１０４０で行われるステップＳ２２６０へ遷移する。
【００４８】
ステップＳ２２６０では、肌色登録部１０４０は、撮影領域判定部１０３０から送られてきた手領域の画像データからノイズ成分を取り除くために、その手領域内の各色データをＹＣｂＣｒ色空間やＨＳＶ色空間などに分布させてクラスタリングを行う。ステップＳ２２６０の後、肌色登録部１０４０は、処理をステップＳ２２７０へ進める。
【００４９】
ステップＳ２２７０では、肌色登録部１０４０は、最も色分布の多いクラスタ、すなわちこの場合は肌色に分類されるクラスタの色情報を、肌色情報としてデータ記憶部１０２０に登録する。なお、クラスタリングに限らず、ヒストグラムを用いて肌色等の特定色を登録してもよい。また、手領域内の色分布に基づいて特定色情報を決定する方法であれば、他の手法を用いてもよい。ステップＳ２２７０の後は、ユーザからの終了通知がなされた場合に図６のフローチャートの処理を終了する。
【００５０】
なお、前述のようにして肌色登録部１０４０による肌色情報の登録が行われた場合、撮影領域判定部１０３０は、肌色登録部１０４０に登録された肌色情報に対する正誤の判断を行うこともできる。具体的な例を挙げて説明すると、撮影領域判定部１０３０は、先ず、肌色登録部１０４０で登録された肌色情報を基に、左右のカメラ画像１３００Ｌ，１３００Ｒから手領域と推定できる画像領域の検出を試みる。そして、手領域と推定できる画像領域の検出ができなかった場合は、肌色登録部１０４０で誤った肌色情報が登録されたとみなす。一方、手領域と推定できる画像領域を検出できた場合、撮影領域判定部１０３０は、その画像領域の輪郭線を、左右のカメラ画像１３００Ｌ，１３００Ｒの間でステレオマッチングすることにより、その輪郭部分の現実空間内における三次元位置を推定する。そして、撮影領域判定部１０３０は、輪郭線の三次元位置が、撮影領域２１０に対して設定されている撮影領域距離範囲内に対応している場合、肌色登録部１０４０で正しく肌色情報が登録されたと判断する。一方、撮影領域判定部１０３０は、輪郭線の三次元位置が撮影領域距離範囲内に対応していない場合、肌色登録部１０４０にて肌色の登録に失敗したとみなす。
【００５１】
肌色登録部１０４０は、肌色の登録が失敗したことを撮影領域判定部１０３０から知らされると、当該失敗したと判定された肌色登録を破棄し、前述したクラスタリング或いはヒストグラムの閾値を変更して、肌色登録の処理をやり直す。なお、撮影領域判定部１０３０において肌色の登録が失敗したと判定された場合、当該失敗したと判定された肌色登録を破棄し、新しい撮像画像を用いて撮影領域判定部１０３０での手領域判定と肌色登録部１０４０での肌色登録をやり直しても良い。
【００５２】
以上説明したように、第１の実施形態の情報処理装置１０００は、手間と時間を掛けず、高精度に撮像画像から肌色等の特定の色情報を検出できる特定の色情報を登録可能となっている。すなわち、本実施形態の情報処理装置１０００は、ＨＭＤ２０に画面表示されている実写映像の撮影領域ＣＧモデル内に、ユーザが手２２０を入れる（かざす）だけで、手領域の推定と肌色情報の抽出及び登録を自動的に実行する。これにより、本実施形態によれば、予め大量の肌色情報を用意する必要がなく、手間や時間を掛けることなく、特定のユーザに合わせた肌色情報を素早く登録することができる。その結果として、本実施形態においては、複合現実感を実現するような場合に、現実空間の実写映像から精度良く特定のユーザの手領域を抽出でき、仮想空間内にユーザの手の画像を違和感なく合成することができるようになる。
【００５３】
＜第２の実施形態＞
図７には、第２の実施形態の情報処理装置２０００の概略構成を示す。第２の実施形態の情報処理装置２０００には、撮像部１００と、表示部２００と、姿勢入力部３００とが接続されている。第２の実施形態では、撮像部１００と表示部２００と姿勢入力部３００がＨＭＤに搭載されている。第２の実施形態においても前述した第１の実施形態と同様に、情報処理装置２０００は、ＨＭＤ内に含まれていてもよいし、ＨＭＤと分離されていてもよい。
【００５４】
図８には、第２の実施形態の情報処理装置２０００とＨＭＤ２０との配置関係の一例を模式的に示している。また、図８は、ＨＭＤ２０のカメラ１００Ｒ，１００Ｌ（撮像部１００）の撮影方向と、ユーザ８００の手２２０（対象被写体）と、撮影領域２１０と、光源８４０と、ユーザ８００の立ち位置８３０の、それぞれの位置関係の一例を模式的に示している。
【００５５】
ここで、手の実写映像と仮想空間を合成して複合現実感を実現するような場合において、例えば、外部環境光や手への光の当たり具合が異なると、撮像画像から手の一部又は全部を検出できなくなる場合や、他の被写体を手として誤検出してしまう場合がある。このように手を正しく検出できなくなる状態は、外部環境光や光の当たり具合が異なることで、手の明るさや色合いが変化するために発生すると考えられる。なお、異なる外部環境光としては、一例として、手に照明光が直接当たっている場合と当たっていない場合、晴天の光と曇天の光、昼光と夕日や朝日の光、室外と室内の光、電球光と蛍光灯の光等を挙げることができる。また、異なる光の当たり具合としては、一例として、斜光により手に陰影が生じているような場合等を挙げることができる。そして、複合現実感を実現する場合において、手を正しく検出できないと、例えば仮想空間内に合成されるべき手の実写映像が合成されなかったり、手の一部の映像のみが合成されたりするようなことが発生する虞がある。
【００５６】
このようなことから、第２の実施形態の情報処理装置２０００は、先ず、多様な外部環境に対応できるだけの十分な肌色情報が登録されたか否かを自動的に判定する。次に、第２の実施形態の情報処理装置２０００は、多様な外部環境に対応するのに十分な肌色情報が登録されているか否か判断する。そして、情報処理装置２０００は、登録済みの肌色情報だけでは、多様な外部環境に対応するには不十分であると判断した場合には、どのような明るさと色合いの肌色情報が不足しているのかを推定する。
【００５７】
次に、情報処理装置２０００は、不足している肌色情報を取得するためには、ユーザが何れの撮影位置で何れの方向に対象被写体（手）を向けて撮影すればよいかを推定する。さらに、その推定結果に基づいて、情報処理装置２０００は、ユーザが何れの撮影位置で何れの方向に対象被写体（手）を向けて撮影すべきかを、当該ユーザに示すための新たな撮影領域２１０を設定する。すなわち、情報処理装置２０００は、新たな撮影領域２１０を配置させるべき現実空間内の三次元位置を決める。そして、情報処理装置２０００は、当該新たな撮影領域２１０を表す撮影領域ＣＧモデルが、その現実空間内の三次元位置に対応した表示位置に配置されるように実写映像に合成し、その合成映像をＨＭＤ２０の表示部２００に表示させる。その後、情報処理装置２０００は、多様な外部環境に対応できるだけの十分な肌色情報の登録ができたか否か判断し、十分な肌色情報の登録ができたと判断した場合に、自動的に肌色登録の処理を終了する。
【００５８】
図８の例は、不足している肌色情報が例えば逆光環境下における手の肌色情報であるような場合の位置関係を表している。情報処理装置２０００は、逆光環境下で手２２０の肌色情報を取得するために、撮影の際のユーザ８００の立ち位置８３０と手２２０を向ける方向と距離（深度）を提示するための撮影領域２１０を設定する。そして、図８の例では、情報処理装置２０００は、ＨＭＤ２０の撮像部１００を光源８４０の方向へ向けさせ、且つ、撮像部１００と光源８４０との間に手２２０が入るような撮影領域２１０を表す撮影領域ＣＧモデルを、ＨＭＤ２０の表示部２００に表示させる。
【００５９】
第２の実施形態の情報処理装置２０００は、図８の例のような撮影領域２１０を設定するために、図７に示す各構成要素を有している。なお、図７において前述の図１と同じ構成要素には同一の参照符号を付し、それらの説明については省略する。図７に示す第２の実施形態の情報処理装置２０００は、前述の図１に示した各構成要素に加え、姿勢取得部２０１０と撮影位置処理部２０２０とを有している。また、第２の実施形態の場合、姿勢入力部３００をも備えており、この姿勢入力部３００は例えばＨＭＤに配される。
【００６０】
姿勢入力部３００は、撮像部１００（図８のカメラ１００Ｒ，１００Ｌ）における撮影時のカメラの撮影方向（方角）と撮影姿勢を検出する。具体的には、姿勢入力部３００は、ＨＭＤ２０に内蔵されているジャイロセンサや光学センサ、方位センサ等であり、ＨＭＤ２０のカメラ１００Ｒ，１００Ｌの撮影方角情報とヨー、ピッチ、ロールからなるカメラ姿勢情報を生成する。姿勢入力部３００にて検出された撮影方角情報とカメラ姿勢情報は、姿勢取得部２０１０へ送られる。
【００６１】
姿勢取得部２０１０は、画像取得部１０１０にて画像データが取得されたとき、姿勢入力部３００から撮影方角情報、ヨー、ピッチ、ロールのカメラ姿勢情報を取得して、データ記憶部１０２０に記憶させる。また、姿勢取得部２０１０は、撮像部１００における撮影時の日時情報についてもデータ記憶部１０２０に記憶させる。
【００６２】
第２の実施形態の場合の撮影領域判定部１０３０は、前述の第１の実施形態で説明したのと同様にして手領域を検出する。第２の実施形態の場合の肌色登録部１０４０は、前述の第１の実施形態で説明したのと同様にして、手領域の各画素のデータから各画素の色分布を求める。また、第２の実施形態の場合、肌色登録部１０４０は、手領域の各画素のデータから、各画素における輝度を算出する。そして、肌色登録部１０４０は、色分布により肌色に分類された各画素の肌色情報と、各画素の輝度の情報とを、肌色情報としてデータ記憶部１０２０に記憶させる。
【００６３】
撮影位置処理部２０２０は、設定手段の一例であり、例えば撮像部１００にて画像撮影がなされた際の日時情報を基に、データ記憶部１０２０に記憶された撮影方角情報とカメラ姿勢情報と肌色情報とを関連付けて登録する。すなわち、撮影位置処理部２０２０は、撮像部１００で画像撮影がなされた際の撮影方角情報及びカメラ姿勢情報と、それら撮影方角情報とカメラ姿勢情報が取得された際の撮像画像から求められた肌色情報とを、関連付けて登録する。そして、撮影位置処理部２０２０は、撮影方角情報及びカメラ姿勢情報と、肌色情報の色及び輝度の情報とを参照して、画像処理部１０５０にて実写映像に合成されて表示部２００の画面上に表示される、撮影領域ＣＧモデルの表示位置を決定する。
【００６４】
具体的に説明すると、撮影位置処理部２０２０は、先ず、過去に登録した肌色の輝度が一様に分布しているか否かを確認する。ここで、一例として輝度が０〜２５５の値で表される場合を例に挙げると、過去に登録した肌色の輝度が一様に分布している場合とは、輝度の値として０から２５５までの値が登録されている状態である。このように、登録された肌色の輝度が一様に分布している場合には、多様な外部環境に対応できるだけの十分な肌色情報が既に登録されていると考えられる。これに対し、過去に登録した肌色の輝度が一様に分布しておらず、輝度の分布に偏りがある場合には、多様な外部環境に対応できるだけの十分な肌色情報が登録されていないと考えられる。したがって、撮影位置処理部２０２０は、過去に登録した肌色の輝度が一様に分布していない場合には、過去に登録した撮影方角情報とカメラ姿勢と肌色情報の輝度とを参照して、輝度分布を一様に分布させるために必要な新たな撮影領域２１０を推定する。すなわち、撮影位置処理部２０２０は、一様な輝度分布に対して不足している輝度分布を補うための撮影領域２１０を推定する。
【００６５】
輝度分布を一様に分布させるための新たな撮影領域２１０を設定する場合、撮影位置処理部２０２０は、先ず、過去の撮影時の各撮影方角におけるカメラ姿勢毎の輝度分布を参照する。そして、撮影位置処理部２０２０は、各撮影方角においてカメラ姿勢が変化することで輝度分布がどのように変化しているかを表す輝度勾配を計算する。さらに、撮影位置処理部２０２０は、過去の撮影による輝度勾配に基づいて、不足している肌色を撮影するための撮影方角とカメラ姿勢を推定し、その推定結果に基づいて新たな撮影領域２１０を設定する。
【００６６】
前述の図８を用いて説明すると、過去に順光環境下で様々な撮影方角とカメラ姿勢で撮影がなされ、各撮影方角におけるカメラ姿勢毎に肌色情報が関連付けられて登録されている場合、輝度分布は順光環境下に対応した高輝度寄りの分布になっていると考えられる。この場合、輝度分布を一様に分布させるためには、低輝度の肌色を得る必要がある。また、このような過去の撮影に基づく輝度分布から算出された輝度勾配からは、ユーザの立ち位置８３０と撮影方角をどのようにし、また、手２２０を現実空間のどの位置に配置させて撮影すれば、低輝度の肌色を撮影できるかを推定できる。すなわち、図８の例の場合は、ユーザ８００の立ち位置８３０において撮影方角を光源８４０の側へ向け、光源８４０と撮像部１００との間に手２２０を配置させるような、逆光環境下で撮影を行えば、低輝度の肌色を撮影できると推定される。このため、撮影位置処理部２０２０は、立ち位置８３０において、ＨＭＤ２０の撮像部１００が光源８４０の方を向くような撮影方角で、且つ、手２２０が光源８４０と撮像部１００との間に入るように、ユーザ８００の動作を導くための撮影領域２１０を決定する。
【００６７】
第２の実施形態の場合、撮影領域２１０によりユーザ８００の動作を導く必要があるため、撮影位置処理部２０２０は、ＨＭＤ２０の表示部２００の画面上における撮影領域ＣＧモデルの表示位置を、第１の実施形態のように固定位置ではなく変化させる。具体的には、撮影位置処理部２０２０は、ユーザ８００が図８の立ち位置８３０に立っている場合、手２２０が図８の撮影領域２１０内に入るようになるまで、表示部２００の画面上で撮影領域ＣＧモデルの表示位置を刻々と変化させる。これにより、ユーザ８００は、撮像部１００が光源８４０の方を向き、さらに、手２２０が光源８４０と撮像部１００との間に入るように導かれることになる。
【００６８】
図９は、第２の実施形態の情報処理装置２０００の撮影位置処理部２０２０における処理の流れを示すフローチャートである。図９において、撮影位置処理部２０２０は、ステップＳ２３１０の処理として、姿勢入力部３００が検出して姿勢取得部２０１０が取得した撮影方角情報及びカメラ姿勢情報を、データ記憶部１０２０から読み取る。ステップＳ２３１０の後、撮影位置処理部２０２０は、処理をステップＳ２３２０へ進める。
【００６９】
ステップＳ２３２０では、撮影位置処理部２０２０は、それら撮影方角情報及びカメラ姿勢情報が取得された際の肌色情報をデータ記憶部１０２０から読み取り、それら撮影方角情報とカメラ姿勢情報と肌色情報を関連付けてデータ記憶部１０２０に登録する。ステップＳ２３２０の後、撮影位置処理部２０２０は、処理をステップＳ２３３０へ進める。
【００７０】
ステップＳ２３３０では、撮影位置処理部２０２０は、データ記憶部１０２０に過去に登録された肌色の輝度が一様に分布しているか判定する。そして、撮影位置処理部２０２０は、ステップＳ２３３０において、過去に登録された肌色の輝度が一様に分布していると判定した場合には、多様な外部環境に対応できるだけの十分な肌色情報が登録されているとみなして、図９の処理を終了する。一方、撮影位置処理部２０２０は、ステップＳ２３３０において、過去に登録された肌色の輝度が一様に分布していないと判定した場合には、処理をステップＳ２３４０へ進める。
【００７１】
ステップＳ２３４０では、撮影位置処理部２０２０は、過去に登録したカメラ姿勢と輝度分布の変化から、不足している肌色情報の輝度を補って、一様な輝度分布が得られるようにするための新たな撮影領域２１０を推定する。そして、撮影位置処理部２０２０は、当該新たな撮影領域２１０を、画像処理部１０５０に生成させて、その撮影領域２１０を表す撮影領域ＣＧモデルを、表示部２００の画面上に表示させることで、ユーザ８００へ提示する。ステップＳ２０４０の後、撮影位置処理部２０２０は、処理をステップＳ２３１０へ戻し、ステップＳ２３３０で一様な輝度分布が得られたと判定されるまで、ステップＳ２３１０からステップＳ２３４０の処理を繰り返す。
【００７２】
以上説明したように、第２の実施形態の情報処理装置２０００は、第１の実施形態の場合と同様に、手間と時間を掛けず、撮像画像から肌色などの特定の色情報を登録可能となる。また、第２の実施形態の情報処理装置２０００は、多様な外部環境に対応できるだけの十分な肌色情報が登録されたか否かを自動的に判定している。そして、第２の実施形態の情報処理装置２０００によれば、登録済みの肌色情報が不足している場合には、新たな撮影領域２１０をユーザに提示することにより、多様な外部環境に対応できるだけの十分な肌色情報の取得と登録が可能となる。さらに、第２の実施形態の情報処理装置２０００は、多様な外部環境に対応できるだけの十分な肌色情報の登録ができたと判定した場合、自動的に肌色登録の処理を終了することができる。
【００７３】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７４】
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００７５】
１００  撮像部、２００  表示部、３００  姿勢入力部、１０１０  画像取得部、１０２０  データ記憶部、１０３０  撮影領域判定部、１０４０  肌色登録部、１０５０  画像処理部、１０６０  画像出力部、２０１０  姿勢取得部、２０２０  撮影位置処理部
【図１】
0006587421.tif 000002
【図２】
0006587421.tif 000003
【図３】
0006587421.tif 000004
【図４】
0006587421.tif 000005
【図５】
0006587421.tif 000006
【図６】
0006587421.tif 000007
【図７】
0006587421.tif 000008
【図８】
0006587421.tif 000009
【図９】
0006587421.tif 000010