(57)【特許請求の範囲】
【請求項１】
対象物を動画撮影した撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出し、検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得する形状モデリング部と、
前記形状モデルに基づき、前記撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行う情報処理部と、
前記情報処理の結果として出力すべきデータを出力装置へ送信する出力データ送信部と、を備え、
前記形状モデリング部は、前記対象物に備えた発光マーカーの像を前記撮影画像のフレームから検出し、その数によって、前記対象物を所定の方向から撮影した画像フレームか否かを判定するとともに、自らが実施中の処理の途中経過に係る提示情報を示すデータを生成し、
前記出力データ送信部は、前記提示情報を示すデータをさらに出力装置へ送信することを特徴とする情報処理装置。
【請求項２】
前記形状モデリング部は、前記対象物を所定の方向から撮影した画像フレームを検出する処理において、ユーザに対し前記対象物を所定の方向に向けさせる指示を前記提示情報に含めることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記形状モデリング部は、前記情報処理部における情報処理と並行して前記形状モデルを取得するための処理を行い、前記情報処理の結果として出力すべきデータのうち、前記形状モデルが未完成のため無効である部分を示す情報を前記提示情報に含めることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記形状モデリング部は、前記情報処理部における情報処理と並行して前記形状モデルを取得するための処理を行い、前記情報処理のうち、前記形状モデルが未完成のため実行できない処理の開始が予測されたら、実行不可能である旨を示す情報を前記提示情報に含めることを特徴とする請求項１から３のいずれかに記載の情報処理装置。
【請求項５】
前記形状モデリング部は、対象物を所定の方向から撮影した画像フレームを検出する第１の処理段階と、当該画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得する第２の処理段階のうち、実施中の処理段階を示す情報を前記提示情報に含めることを特徴とする請求項１から４のいずれかに記載の情報処理装置。
【請求項６】
前記形状モデリング部は、前記撮影画像のフレームに前記発光マーカー以外の発光体が検出されたら、発光態様が当該発光体と異なるように、前記発光マーカーの発光を制御することを特徴とする請求項１から５のいずれかに記載の情報処理装置。
【請求項７】
前記形状モデリング部は、前記対象物を所定の複数の方向から撮影した複数の画像フレームを検出し、検出した各画像フレームを用いて前記形状モデルを徐々に確定または修正していくことを特徴とする請求項１から６のいずれかに記載の情報処理装置。
【請求項８】
対象物を動画撮影した撮影画像のデータを撮像装置から取得し、当該撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出するステップと、
検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得するステップと、
前記形状モデルに基づき、前記撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行うステップと、
前記情報処理の結果として出力すべきデータを出力装置へ送信するステップと、を含み、
前記画像フレームを検出するステップは、前記対象物に備えた発光マーカーの像を前記撮影画像のフレームから検出し、その数によって、前記対象物を所定の方向から撮影した画像フレームか否かを判定し、
前記画像フレームを検出するステップと前記形状モデルを取得するステップは、処理の途中経過に係る提示情報を示すデータを生成するステップを含み、
前記送信するステップは、前記提示情報を示すデータをさらに出力装置へ送信することを特徴とする情報処理装置による情報処理方法。
【請求項９】
対象物を動画撮影した撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出し、検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得する機能と、
前記形状モデルに基づき、前記撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行う機能と、
前記情報処理の結果として出力すべきデータを出力装置へ送信する機能と、をコンピュータに実現させ、
前記形状モデルを取得する機能は、前記対象物に備えた発光マーカーの像を前記撮影画像のフレームから検出し、その数によって、前記対象物を所定の方向から撮影した画像フレームか否かを判定するとともに、自らが実施中の処理の途中経過に係る提示情報を示すデータを生成し、
前記送信する機能は、前記提示情報を示すデータをさらに出力装置へ送信することを特徴とするコンピュータプログラム。
【請求項１０】
対象物を動画撮影した撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出し、検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得する機能と、
前記形状モデルに基づき、前記撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行う機能と、
前記情報処理の結果として出力すべきデータを出力装置へ送信する機能と、をコンピュータに実現させ、
前記形状モデルを取得する機能は、前記対象物に備えた発光マーカーの像を前記撮影画像のフレームから検出し、その数によって、前記対象物を所定の方向から撮影した画像フレームか否かを判定するとともに、自らが実施中の処理の途中経過に係る提示情報を示すデータを生成し、
前記送信する機能は、前記提示情報を示すデータをさらに出力装置へ送信するコンピュータプログラムを記録したことを特徴とする、コンピュータにて読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影画像における対象物の検出を伴う情報処理技術に関する。
【背景技術】
【０００２】
ユーザの体やマーカーをカメラで撮影し、その像の領域を別の画像で置換してディスプレイに表示するゲームが知られている（例えば、特許文献１参照）。また、カメラで撮影された口や手の動きをアプリケーションの操作指示として受け取るユーザインタフェースシステムも知られている。このように、実世界を撮影しその動きに反応する仮想世界を表示させたり、何らかの情報処理を行ったりする技術は、小型の携帯端末からレジャー施設まで、その規模によらず幅広い分野で利用されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】欧州特許出願公開第０９９９５１８号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような技術において、撮影画像から実世界に係る情報をいかに正確に取得するかは常に重要な課題である。しかし撮影環境や対象物の状態などによっては、取得される情報に誤差が多く含まれたり十分な情報が取得できなかったりして、情報処理やその出力結果に悪影響を及ぼしたり、情報処理自体が実行不可能になったりすることが起こり得る。一般的には、画像の補正など、実世界の状況変化による影響が小さくなるような処理を施すといった対策がとられるが、撮影環境やユーザの状態などは千差万別であり、それのみで克服するには限界がある。なかにはユーザが容易に改善できる要素であっても、ユーザ自身がそれに気づかず改善がなされない場合もある。この問題は、情報処理が高度化するほど顕在化しやすい。
【０００５】
本発明はこうした課題に鑑みてなされたものであり、その目的は、撮影画像を利用して行う情報処理を、撮影環境や対象物の状態の変化による影響を少なく適切な状態で行うことができる技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のある態様は情報処理装置に関する。この情報処理装置は、対象物を動画撮影した撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出し、検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得する形状モデリング部と、形状モデルに基づき、撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行う情報処理部と、情報処理の結果として出力すべきデータを出力装置へ送信する出力データ送信部と、を備え、形状モデリング部は、自らが実施中の処理の途中経過に係る提示情報を示すデータを生成し、出力データ送信部は、提示情報を示すデータをさらに出力装置へ送信することを特徴とする。
【０００７】
本発明のさらに別の態様は情報処理方法に関する。この情報処理方法は、対象物を動画撮影した撮影画像のデータを撮像装置から取得し、当該撮影画像のフレームのうち、対象物を所定の方向から撮影した画像フレームを検出するステップと、検出した画像フレームにおける対象物の像に基づき当該対象物の形状モデルを取得するステップと、形状モデルに基づき、撮影画像から検出した対象物の姿勢を特定し、少なくともその結果に基づき情報処理を行うステップと、情報処理の結果として出力すべきデータを出力装置へ送信するステップと、を含み、画像フレームを検出するステップと形状モデルを取得するステップは、処理の途中経過に係る提示情報を示すデータを生成するステップを含み、送信するステップは、提示情報を示すデータをさらに出力装置へ送信することを特徴とすることを特徴とする。
【０００８】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【０００９】
本発明によると、撮影画像を利用した情報処理を、環境によらず適切に行える。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態を適用できる情報処理システムの構成例を示す図である。
【図２】本実施の形態における情報処理装置の内部回路構成を示す図である。
【図３】本実施の形態におけるＨＭＤの内部回路構成を示す図である。
【図４】本実施の形態における情報処理装置とＨＭＤの機能ブロックの構成を示す図である。
【図５】本実施の形態におけるＨＭＤの外観形状の例を示す図である。
【図６】図５に示したＨＭＤがユーザに装着された様子を側面から見た図である。
【図７】本実施の形態において撮影画像から取得できる情報を説明するための図である。
【図８】本実施の形態において撮影画像に基づき情報処理および表示を行う処理手順を示すフローチャートである。
【図９】本実施の形態における表示画像を例示する図である。
【図１０】本実施の形態における撮像装置のステレオカメラにおける視野とステレオ画像の関係を説明するための図である。
【図１１】本実施の形態において、補助データとして撮影画像に所定の加工を施した例を示す図である。
【図１２】本実施の形態において、補助データとして撮影画像に所定の加工を施した別の例を示す図である。
【図１３】図１２で説明した態様において状況を改善させる事例を説明するための図である。
【図１４】本実施の形態において、補助データとして撮影画像に所定の加工を施したさらに別の例を示す図である。
【図１５】図８のＳ１２において情報処理装置の追跡対象モデリング部が、追跡対象の形状モデルを取得する処理手順を示すフローチャートである。
【図１６】図１５のフローチャート中、Ｓ３０、Ｓ３６、Ｓ４０において、形状モデルの取得処理に係る情報をユーザに通知するために表示される画像の例を示す図である。
【発明を実施するための形態】
【００１１】
図１は本実施の形態を適用できる情報処理システムの構成例を示す。情報処理システム８は、対象物を撮影する撮像装置１２、撮影した画像に基づき情報処理を行う情報処理装置１０、情報処理の結果として得られた画像を表示する平板型ディスプレイ１６およびヘッドマウントディスプレイ（以下、「ＨＭＤ」と呼ぶ）１８、ユーザが操作する入力装置１４を含む。
【００１２】
情報処理装置１０と、撮像装置１２、入力装置１４、平板型ディスプレイ１６、ＨＭＤ１８とは、有線ケーブルで接続されても、Bluetooth（登録商標）など既知の無線通信技術により接続されてもよい。また情報処理装置１０が実施する情報処理によっては、平板型ディスプレイ１６とＨＭＤ１８のどちらか一方がなくてもよい。またこれらの装置の外観形状は図示するものに限らない。さらにこれらのうち２つ以上の装置を一体的に備えた装置としてもよい。例えば情報処理装置１０、入力装置１４、平板型ディスプレイ１６を、それらを備えた携帯端末などで実現してもよい。
【００１３】
撮像装置１２は、ユーザなどの対象物を所定のフレームレートで撮影するカメラと、その出力信号にデモザイク処理など一般的な処理を施すことにより撮影画像の出力データを生成し、情報処理装置１０に送出する機構とを有する。カメラはＣＣＤ（Charge Coupled Device）センサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサなど、一般的なデジタルカメラ、デジタルビデオカメラで利用されている可視光センサを備える。撮像装置１２が備えるカメラは１つのみでもよいし、図示するように２つのカメラを既知の間隔で左右に配置したいわゆるステレオカメラでもよい。
【００１４】
あるいは単眼のカメラと、赤外線などの参照光を対象物に照射しその反射光を測定する装置との組み合わせで撮像装置１２を構成してもよい。ステレオカメラや反射光の測定機構を導入した場合、対象物の位置を３次元の実空間に対し求めることができ、情報処理装置１０による情報処理や表示装置による画像表示をより多様化させることができる。ステレオカメラが左右の視点から撮影したステレオ画像を用いて、三角測量の原理により被写体のカメラからの距離を特定する手法、反射光の測定によりＴＯＦ（Time of Flight）やパターン照射の方式で被写体のカメラからの距離を特定する手法はいずれも広く知られている。
【００１５】
以後では主に、撮像装置１２がステレオ画像を撮影する態様について説明するが、上記のとおり本実施の形態をそれに限る主旨ではなく、撮像装置１２には少なくとも一つのカメラが含まれていればよい。情報処理装置１０は、撮像装置１２から送信されたデータを用いて必要な情報処理を行い、画像や音声などの出力データを生成する。ここで情報処理装置１０が行う処理の内容は特に限定されず、ユーザが求める機能やアプリケーションの内容などによって適宜決定してよい。
【００１６】
情報処理装置１０は例えば、撮影画像に対し一般的な顔検出や追跡処理を施すことにより、対象物であるユーザの動作を反映させたキャラクタが登場するゲームを進捗させたり、ユーザの動きをコマンド入力に変換して情報処理を行ったりする。このとき入力装置１４に設けたマーカーを利用して入力装置１４の動きを取得してもよい。またＨＭＤ１８の外面に設けた複数のマーカーを追跡することにより、ＨＭＤ１８を装着したユーザの頭部の位置や姿勢を特定し、それに対応して動く視点から見た仮想世界をＨＭＤ１８に表示させてもよい。情報処理装置１０が生成した出力データは、ＨＭＤ１８および平板型ディスプレイ１６の少なくとも一方に送信される。
【００１７】
ＨＭＤ１８は、ユーザが頭に装着することによりその眼前に位置する有機ＥＬパネルなどの表示パネルに画像を表示する表示装置である。例えば左右の視点から見た視差画像を生成し、表示画面を２分割してなる左右の領域にそれぞれ表示させることにより、画像を立体視させてもよい。ただし本実施の形態をこれに限る主旨ではなく、表示画面全体に１つの画像を表示させてもよい。ＨＭＤ１８はさらに、ユーザの耳に対応する位置に音声を出力するスピーカーやイヤホンを内蔵していてもよい。
【００１８】
平板型ディスプレイ１６は、２次元の画像を出力するディスプレイおよび音声を出力するスピーカーを有するテレビでよく、例えば液晶テレビ、有機ＥＬテレビ、プラズマテレビ、ＰＣディスプレイ等である。あるいはタブレット端末や携帯端末のディスプレイおよびスピーカーであってもよい。入力装置１４は、ユーザが操作することにより、処理の開始、終了、機能の選択、各種コマンド入力などの要求を受け付け、情報処理装置１０に電気信号として供給する。
【００１９】
入力装置１４は、ゲームコントローラ、キーボード、マウス、ジョイスティック、平板型ディスプレイ１６の表示画面上に設けたタッチパッドなど、一般的な入力装置のいずれか、またはそれらの組み合わせによって実現してよい。入力装置１４はさらに、所定の色で発光する素子またはその集合からなる発光マーカーを備えていてもよい。この場合、情報処理装置１０がマーカーの動きを、撮影画像を用いて追跡することにより、入力装置１４自体の動きをユーザ操作とすることができる。なお入力装置１４を、発光マーカーとそれを把持する機構のみで構成してもよい。
【００２０】
図２は情報処理装置１０の内部回路構成を示している。情報処理装置１０は、ＣＰＵ（Central Processing Unit）２２、ＧＰＵ（Graphics Processing Unit)２４、メインメモリ２６を含む。これらの各部は、バス３０を介して相互に接続されている。バス３０にはさらに入出力インターフェース２８が接続されている。入出力インターフェース２８には、ＵＳＢやＩＥＥＥ１３９４などの周辺機器インターフェースや、有線又は無線ＬＡＮのネットワークインターフェースからなる通信部３２、ハードディスクドライブや不揮発性メモリなどの記憶部３４、平板型ディスプレイ１６やＨＭＤ１８へデータを出力する出力部３６、撮像装置１２、入力装置１４、およびＨＭＤ１８からデータを入力する入力部３８、磁気ディスク、光ディスクまたは半導体メモリなどのリムーバブル記録媒体を駆動する記録媒体駆動部４０が接続される。
【００２１】
ＣＰＵ２２は、記憶部３４に記憶されているオペレーティングシステムを実行することにより情報処理装置１０の全体を制御する。ＣＰＵ２２はまた、リムーバブル記録媒体から読み出されてメインメモリ２６にロードされた、あるいは通信部３２を介してダウンロードされた各種プログラムを実行する。ＧＰＵ２４は、ジオメトリエンジンの機能とレンダリングプロセッサの機能とを有し、ＣＰＵ２２からの描画命令に従って描画処理を行い、表示画像を図示しないフレームバッファに格納する。そしてフレームバッファに格納された表示画像をビデオ信号に変換して出力部３６に出力する。メインメモリ２６はＲＡＭ（Random Access Memory）により構成され、処理に必要なプログラムやデータを記憶する。
【００２２】
図３はＨＭＤ１８の内部回路構成を示している。ＨＭＤ１８は、ＣＰＵ５０、メインメモリ５２、表示部５４、音声出力部５６を含む。これらの各部はバス５８を介して相互に接続されている。バス５８にはさらに入出力インターフェース６０が接続されている。入出力インターフェース６０には、有線又は無線ＬＡＮのネットワークインターフェースからなる通信部６２、加速度センサ６４、発光部６６が接続される。
【００２３】
ＣＰＵ５０は、バス５８を介してＨＭＤ１８の各部から取得した情報を処理し、出力データを表示部５４や音声出力部５６に供給する。メインメモリ５２はＣＰＵ５０における処理に必要なプログラムやデータを格納する。ただし実行するアプリケーションや装置の設計によっては、情報処理装置１０がほぼ全ての処理を行い、ＨＭＤ１８では情報処理装置１０から送信されたデータを出力するのみで十分な場合がある。この場合、ＣＰＵ５０やメインメモリ５２は、より簡易なデバイスで置き換えることができる。
【００２４】
表示部５４は、液晶パネルや有機ＥＬパネルなどの表示パネルで構成され、ＨＭＤ１８を装着したユーザの眼前に画像を表示する。上述したように左右の目に対応する領域に一対の視差画像を表示することにより立体視を実現してもよい。表示部５４はさらに、ＨＭＤ１８装着時に表示パネルとユーザの目との間に位置し、ユーザの視野角を拡大する一対のレンズを含んでもよい。
【００２５】
音声出力部５６は、ＨＭＤ１８の装着時にユーザの耳に対応する位置に設けたスピーカーやイヤホンで構成され、ユーザに音声を聞かせる。出力される音声のチャンネル数は特に限定されず、モノラル、ステレオ、サラウンドのいずれでもよい。通信部６２は、情報処理装置１０や平板型ディスプレイ１６との間でデータを送受するためのインターフェースであり、例えばBluetooth（登録商標）などの既知の無線通信技術を用いて実現できる。
【００２６】
加速度センサ６４は、例えば既知の低ｇ加速度センサなどで実現し、重力の向きを検出することによりＨＭＤ１８の傾きを検出する。検出結果は通信部６２を介して情報処理装置１０に送信される。発光部６６は、所定の色で発光する素子またはその集合であり、ＨＭＤ１８の外面の複数箇所に設ける。これをマーカーとして追跡することによりＨＭＤ１８の位置を取得するほか、撮影画像におけるその像の数や位置関係からＨＭＤ１８の姿勢を取得する。
【００２７】
情報処理装置１０は、加速度センサ６４および発光部６６といった複数の手段により得られた情報を統合することにより、より高い精度でユーザの頭の位置や姿勢を取得することができる。一方、本実施の形態では、場合によっては加速度センサ６４を省略することもできる。なお上述のとおり本実施の形態において画像を表示する装置はＨＭＤ１８に限らず、平板型ディスプレイ１６でもよいし、双方を用いてもよい。平板型ディスプレイ１６は一般的な構造を有していてよいため、内部の機構に関する説明は省略する。
【００２８】
図４は情報処理装置１０とＨＭＤ１８の機能ブロックの構成を示している。図４に示す各機能ブロックは、ハードウェア的には、図２、３に示したＣＰＵ、ＧＰＵ、各種メモリ、ディスプレイ、スピーカー、発光素子、センサなどの構成で実現でき、ソフトウェア的には、記録媒体などからメモリにロードした、データ入力機能、データ保持機能、画像処理機能、通信機能などの諸機能を発揮するプログラムで実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００２９】
情報処理装置１０は、入力装置１４およびＨＭＤ１８からの入力情報を取得する入力情報取得部７２、撮像装置１２から撮影画像のデータを取得する撮影画像取得部７４、ゲームなど実行するアプリケーションに応じた情報処理を行う情報処理部７６、ゲーム画像やその音声など情報処理の結果として主として出力すべきデータ（以後、「メインデータ」と呼ぶ）を生成するメインデータ生成部７８、メインデータを生成するために必要なデータを格納した要素データ記憶部８０を含む。情報処理装置１０はさらに、追跡対象の外観上の構造を特定する追跡対象モデリング部８６、情報処理部７６における情報処理を適切に行うためにユーザに提示するデータ（以後、「補助データ」と呼ぶ）を生成する補助データ生成部８２、および、出力すべきデータをＨＭＤ１８および平板型ディスプレイ１６に送信する出力データ送信部８４を含む。
【００３０】
ＨＭＤ１８は、情報処理装置１０から送信された出力データを受信する出力データ受信部９４、所定の物理量を計測し情報処理装置１０に送信する計測部９０、発光素子とその発光を制御する機構からなる発光部９２、出力データ受信部９４が受信した出力データのうち画像の表示を実現する表示処理部９８、出力データのうち音声の出力を実現する音声処理部９６を含む。
【００３１】
情報処理装置１０の入力情報取得部７２は、ユーザ操作の内容を入力装置１４から取得する。ここでユーザ操作とは、実行するアプリケーションの選択、処理の開始／終了、コマンド入力など、一般的な情報処理でなされるものでよい。入力情報取得部７２は入力装置１４から取得した情報を、その内容に応じて撮影画像取得部７４または情報処理部７６に供給する。入力情報取得部７２はさらに、ＨＭＤ１８の計測部９０から計測値を受信し、情報処理部７６に供給する。
【００３２】
撮影画像取得部７４はステレオ画像など、撮像装置１２が動画撮影して得られる撮影画像のデータを所定のフレームレートで取得する。撮影画像取得部７４はさらに、入力情報取得部７２が取得したユーザからの処理開始／終了要求に従い、撮像装置１２における撮影の開始／終了を制御したり、情報処理部７６における処理の結果に応じて、撮像装置１２から取得するデータの種類を制御したりしてもよい。
【００３３】
情報処理部７６は、ユーザが指定したゲームなどの情報処理を実施する。この情報処理には、撮影画像から対象物の像を検出しそれを追跡する処理が含まれる。この追跡処理は、対象物の位置に加え姿勢を所定のレートで取得する処理を含んでよい。以後、ＨＭＤ１８と入力装置１４を、それぞれに設けた発光マーカーを利用して追跡する場合を主に説明するが、本実施の形態をこれに限る主旨ではない。
【００３４】
例えば頭部や手などユーザの体の一部を、輪郭線を利用して追跡したり、顔や特定の模様を有する対象物をパターンマッチングにより追跡したりしてもよい。これらの追跡処理には一般的な画像処理技術を適用できる。さらにＨＭＤ１８の計測部９０から送信された加速度などの計測値から得られる情報を統合することにより、ＨＭＤ１８の姿勢を詳細に特定してもよい。なお上述のように、追跡結果や入力装置１４を介したユーザ操作に応じて情報処理部７６が行う後段の情報処理の内容は特に限定されない。
【００３５】
メインデータ生成部７８は、情報処理部７６からの要求に従い、情報処理の結果として出力すべき画像や音声のデータをメインデータとして生成する。例えば上述のように、ユーザの頭部の位置や姿勢に対応する視点から見た仮想世界を左右の視差画像とし描画する。この視差画像をＨＭＤ１８において左右の目の前に表示させたり、仮想世界での音声を出力したりすれば、ユーザはあたかも仮想世界に入り込んだような感覚を得られる。そのほか、追跡結果やユーザ操作を利用して様々な情報処理を実現できることは当業者には理解されるところである。メインデータ生成部７８がメインデータを生成するために必要なモデルデータや音声のデータは要素データ記憶部８０に格納しておく。
【００３６】
追跡対象モデリング部８６は、情報処理部７６が追跡する対象物の外観上の構造を、実際の撮影画像に基づき特定する。形状およびサイズが既知の固形物を追跡対象とする場合、撮影画像における見かけ上の形状、あるいは表面に設けた複数のマーカーの見かけ上の数および位置関係から、追跡対象の姿勢を精度よく導出できる。この関係は、コンピュータグラフィックスにおいてスクリーン平面へ投影して得られる３Ｄモデルの像と、スクリーン平面を規定する視点の位置および角度の関係と同等である。一方、追跡対象の形状やサイズが変化する場合、標準的なモデルで近似しても正確に姿勢を特定することが難しくなる。そこで追跡対象モデリング部８６は、実際の撮影画像から追跡対象の形状やサイズ、すなわち形状モデルを取得する。
【００３７】
ここで追跡対象の形状やサイズを精度よく得るためには、正面や側面など、所定の向きにおける追跡対象の撮影画像を取得する必要がある。そのため追跡対象モデリング部８６は、そのような向きの撮影画像が取得されていない間は少なくとも、その旨をユーザに通知する。あるいは追跡対象をそのような向きとするようにユーザに促す。情報処理部７６との協働により、追跡対象が自然とその向きになるように画像や音声で誘導する処理を、実行中の情報処理に含めてもよい。
【００３８】
追跡対象モデリング部８６は、追跡対象の形状モデルを取得したら、当該情報を情報処理部７６に提供する。これにより、情報処理部７６において対象物を精度よく追跡できる。補助データ生成部８２は、情報処理部７６における処理が適切になされるようにするためにユーザに提示する補助データを生成する。すなわち補助データは、ユーザが認識したり、それに応じて状況を改善させたり必要な入力を行ったりすることにより、情報処理部７６における処理の精度を向上させたり安定化させたりできる情報を含む。
【００３９】
例えば追跡対象がカメラの視野外に出てしまったり、情報処理部７６が本来の追跡対象以外の物を追跡していたりすると、追跡精度が劣化したり、場合によっては追跡処理が破綻してしまったりする。また撮像装置１２が故障していたり、撮像装置１２と情報処理装置１０の間で通信が確立していなかったりすれば、撮影画像のデータが得られず追跡処理を開始できない。さらに照明環境によって撮影画像全体の輝度が高すぎたり低すぎたりしても、追跡対象の像を抽出しにくくなり精度が落ちる。
【００４０】
しかしこのような状況下でゲームなどの情報処理を適切に実行できなかったとしても、ユーザにはその原因を特定することが難しい場合がある。例えば仮想世界やアプリケーション画面を表示する態様においては、撮像装置１２が備えるカメラの視野が実世界のどの範囲にあるのかをユーザが特定するのは難しい。両眼を覆う構造のＨＭＤ１８を装着している場合は特に、実世界における自分と撮像装置１２との位置関係自体を把握しづらい。
【００４１】
またハードウェア上の問題の場合、システムに含まれる複数の装置や結線のどこに問題があるのかを特定するのは容易ではない。さらに発光マーカーと同じ色や形の照明がカメラの視野内にあったり、照明が明るすぎたり暗すぎたりするなど、追跡対象を誤検出してしまいやすい環境にあることもユーザには気づきにくい。
【００４２】
一方、これらの不具合は実行環境やユーザ自身に依存する部分が多く、撮像装置１２や情報処理装置１０のハードウェア的、あるいはソフトウェア的工夫により克服するのには限界がある。そこで本実施の形態では、情報処理装置１０側で実空間についてどのような認識がなされているかを示す中間データのいずれかを、メインデータの他に補助データとして示すことにより、ユーザに不具合に係る気づきを与える。あるいは最初からそのような不具合が生じないように、適切な状態をユーザに認識させる。
【００４３】
具体的には、情報処理装置１０が取得した撮影画像そのものを表示させたり、そのうち追跡対象として検出されている像に印をつけた画像を表示させたりする。情報処理装置１０が追跡対象を見失ったり、追跡対象自体がカメラの視野から外れたりした場合は、表示している撮影画像に変化を与えたり警告音を発生させたりしてもよい。また戻るべき方向を矢印で表示させたり、音声で通知したりしてもよい。音声をサラウンドとしたときは、戻るべき方向に定位させた音を発生させてもよい。さらに複数の追跡候補が検出された場合に、本来の追跡対象を選択する入力を受け付ける画像を表示してもよい。
【００４４】
これらの補助データの提示態様のいずれか１つを実施してもよいし、２つ以上を組み合わせて実施してもよい。補助データ生成部８２は、補助データを作成するため、撮影画像取得部７４から撮影画像を、情報処理部７６から追跡結果を、適宜取得する。なお撮像装置１２をステレオカメラで構成する場合は、左右のカメラが撮影したステレオ画像のデータを取得し双方を補助データとして表示させることが望ましい。
【００４５】
補助データは、情報処理部７６がゲームなど主たる処理を開始する前の初期処理として提示してもよいし、主たる情報処理と並列に提示してもよい。補助データを画像とした場合、例えばゲーム画像などメインデータの画像の一部の領域に重畳させて補助データの画像を表示させてもよいし、別々の領域に表示させてもよい。あるいは入力装置１４などを介したユーザの提示要求に応じて提示するようにしてもよい。さらに、情報処理部７６が行う情報処理を規定するプログラムのデバッグ段階で、プログラム作成者により利用されてもよい。
【００４６】
出力データ送信部８４は、メインデータ生成部７８が生成したメインデータと補助データ生成部８２が生成した補助データを順次取得し、必要に応じて成形したうえ、ＨＭＤ１８および平板型ディスプレイ１６の少なくともいずれかに供給する。補助データの画像をメインデータの画像と同時に表示させる場合、出力データ送信部８４は、メインデータの画像上に補助データの画像を貼り付けたり合成したりした画像を生成したうえで、ＨＭＤ１８などに送信してもよい。あるいはＨＭＤ１８内で成形することを前提に、両者を対応づけて送信するのみでもよい。
【００４７】
出力データ送信部８４はさらに、追跡対象モデリング部８６が追跡対象の形状モデルを取得するうえでユーザに通知すべき情報を表すデータを、追跡対象モデリング部８６からの要求にしたがいＨＭＤ１８および平板型ディスプレイ１６の少なくともいずれかに供給する。
【００４８】
ＨＭＤ１８の出力データ受信部９４は、情報処理装置１０から送信された出力データを受信する。出力データにはメインデータの画像および音声と、補助データの画像および音声、の少なくともいずれかが含まれる。あるいはメインデータの画像に補助データの画像を合成した画像のデータを含んでいてもよい。さらに、追跡対象の形状モデルを取得している段階では、必要な情報をユーザに通知するための画像や音声のデータを含む。出力データ受信部９４は、画像のデータを表示処理部９８に、音声のデータを音声処理部９６に供給する。
【００４９】
これにより、表示処理部９８に含まれる表示パネルからは画像が、音声処理部９６に含まれるスピーカーなどからは音声が出力される。なお同時に表示すべきメインデータの画像と補助データの画像を情報処理装置１０から個別に送信する態様においては、表示処理部９８は、メインデータの画像上に補助データの画像を貼り付けたり合成したりした画像を生成したうえで表示する。また表示処理部９８は、そのようにして生成した画像の一部を切り出すなどして、そのデータを平板型ディスプレイ１６に送信してもよい。
【００５０】
計測部９０は図３の加速度センサ６４を含み、それによる計測値を情報処理装置１０に送信する。発光部９２は図３の発光部６６を含み、それを所定の色で発光させることにより発光マーカーとして機能させる。なお発光色は情報処理装置１０が指定してもよい。この場合、出力データ受信部９４は、発光色の指定に係るデータを情報処理装置１０から取得し、発光部９２に通知する。例えばユーザの識別情報に応じて発光色を変えることにより、複数のユーザの頭部を発光色によって区別できる。同様に、情報処理装置１０は入力装置１４が備えるマーカーの発光色も指定してよい。
【００５１】
図５はＨＭＤ１８の外観形状の例を示している。この例においてＨＭＤ１８は、出力機構部１０２および装着機構部１０４で構成される。装着機構部１０４は、ユーザが被ることにより頭部を一周し装置の固定を実現する装着バンド１０６を含む。装着バンド１０６は各ユーザの頭囲に合わせて長さの調節が可能な素材または構造とする。例えばゴムなどの弾性体としてもよいし、バックルや歯車などを利用してもよい。
【００５２】
出力機構部１０２は、ＨＭＤ１８をユーザが装着した状態において左右の目を覆うような形状の筐体１０８を含み、内部には装着時に目に正対するように表示パネルを備える。そして筐体１０８の外面には、発光マーカー１１０ａ、１１０ｂ、１１０ｃ、１１０ｄ、などを設ける。発光マーカーの数や配置は特に限定されないが、本実施の形態では出力機構部１０２の筐体前面の４隅に設ける。さらに、装着バンド１０６後方の両側面にも発光マーカー１１０ｅ、１１０ｆを設ける。なお発光マーカー１１０ｃ、１１０ｄは出力機構部１０２の下側、発光マーカー１１０ｅ、１１０ｆは装着バンド１０６の外側にあり、図５の視点からは本来は見えないため、外周を点線で表している。
【００５３】
図６は図５に示したＨＭＤ１８がユーザに装着された様子を側面から見た図である。上述したように出力機構部１０２の内部には表示パネル１１６や、図３で示したその他の回路が備えられる。また外面には発光マーカー１１０ｂ、１１０ｄなどが備えられる。さらに装着バンド１０６の後部側面には発光マーカー１１０ｅなどが備えられる。図示するようにＨＭＤ１８を左側から見ると、３つの発光マーカー１１０ｂ、１１０ｄ、１１０ｅが見えることがわかる。
【００５４】
発光マーカーをこのように配置すると、ＨＭＤ１８を装着したユーザが撮像装置１２に正対しているときは４つの発光マーカー１１０ａ、１１０ｂ、１１０ｃ、１１０ｄが、横を向いているときは３つの発光マーカー（例えば発光マーカー１１０ｂ、１１０ｄ、１１０ｅ）が、後ろを向いているときは２つの発光マーカー１１０ｅ、１１０ｆが撮影される。その間の向きであっても、体の軸周りの回転角、すなわちヨー角と見かけ上の発光マーカーの数および位置関係との関係性は、ＨＭＤ１８における発光マーカーの配置が既知であれば一意に定まる。
【００５５】
そのような関係性を利用すれば、実際の撮影画像における発光マーカーの像の数および位置関係に基づき、ユーザが体の軸周りでどの方向を向いていてもその角度を特定することができる。ヨー角と同様、下を向いたり上を向いたりする角度変化（ピッチ角）、首をかしげる角度変化（ロール角）も同様に、発光マーカーの像の数および位置関係から特定できる。結果としてユーザの頭部の姿勢を全方位について特定できることになる。
【００５６】
ただし上述のとおり本実施の形態におけるＨＭＤ１８は、装着バンド１０６の長さを同図矢印のように調節可能としている。したがって出力機構部１０２の前面に設けられた発光マーカー（例えば１１０ｂ、１１０ｄ）と、装着バンド１０６の後部に設けられた発光マーカー（例えば１１０ｅ）との距離は、その調節の影響を受けることになる。発光マーカーの見かけ上の数および位置関係からＨＭＤ１８の姿勢を導出するためには、装着バンド１０６の長さを調節したあとの発光マーカーの配置を含むＨＭＤ１８の形状モデルを正確に取得することが望ましい。
【００５７】
そこで情報処理装置１０の追跡対象モデリング部８６は、ユーザが装着しているＨＭＤ１８の形状モデルを実際の撮影画像に基づき取得する。上述のとおり追跡対象モデリング部８６は、所定の向きの追跡対象を撮影した画像に基づき、追跡対象の形状モデルを取得することを基本とする。ＨＭＤ１８を追跡対象とする場合、所定の向きにあるか否かは、同時に撮影されたマーカーの数によって判定できる。
【００５８】
装着バンド１０６の伸縮を考慮した場合、前面に設けた２つの発光マーカーと、後部に設けた１つの発光マーカーが同時に写っている撮影画像を取得すれば、それらの距離を特定することができる。実際には、あらかじめＨＭＤ１８の標準モデルをコンピュータグラフィックスにおけるオブジェクトモデルと同様に作成しておき、実際の撮影画像に基づき当該モデルに修正を加えればよい。
【００５９】
出力機構部１０２の上下調節など、装着バンド１０６以外の箇所の位置や間隔を調節可能とする場合も同様である。追跡対象モデリング部８６は、情報処理部７６がゲームなど主たる処理を開始する前の初期処理として形状モデルを取得してもよいし、主たる情報処理と並列に、あるいは定期的に、形状モデルを取得したり修正したりしてもよい。複数の時刻における撮影画像を用いて修正を重ねれば、最終的により信頼性の高い形状モデルを取得できる。また、主たる情報処理をしている期間にも形状モデルを取得し続けることにより、ゲームなどで動いているうちに装着バンド１０６が緩んだり、締め直したりして状態が変化しても、その変化を加味したうえで追跡処理を行える。
【００６０】
なおＨＭＤ１８の形状は図５、６に示すものに限定されない。例えば装着バンドを複数、設けることにより調節や固定を容易にしてもよいし、眼鏡のツル形状のものとすることにより着脱しやすくしてもよい。またユーザが振り向くことが想定されない情報処理のみを行う場合は装着バンドの後部の発光マーカーがなくてもよい。この場合、その他の発光マーカーの位置関係は、装着バンド１０６が伸縮しても変化しないため、追跡対象モデリング部８６による処理を省略できる。
【００６１】
図７は本実施の形態において撮影画像から取得できる情報を説明するための図である。同図において一点鎖線で示したユーザ１２０は入力装置１４を把持しＨＭＤ１８を装着している。入力装置１４は、操作に適した持ち方で把持したときに撮像装置１２に正対する位置に発光マーカー１２２を備える。ＨＭＤ１８の発光マーカーは図５、６で示したとおりである。撮像装置１２をステレオカメラとした場合、ステレオ画像における像の視差に基づき、撮像装置１２の撮像面から各発光マーカーまでの距離Ｚが求められる。また、どちらかの撮影画像の画像平面（ＸＹ平面）における発光マーカーの像の位置は、撮像装置１２からの見かけ上の位置を表している。
【００６２】
これらの情報を統合する、具体的にはＸＹ平面における位置を撮像装置１２からの距離Ｚを用いて逆射影することにより、実世界の３次元空間における各発光マーカーの位置が求められる。さらにＨＭＤ１８の発光マーカーの像の数や位置関係から、上述のとおりＨＭＤ１８の実空間における姿勢（ベクトルｖａ）が、入力装置１４の発光マーカー１２２の像の形状から入力装置１４の実空間における姿勢（ベクトルｖｂ）が求められる。
【００６３】
情報処理装置１０の情報処理部は、これらの装置の実空間における位置および姿勢に基づき、ユーザ１２０の顔の向きに応じて視野が変化する仮想世界や、入力装置１４の動きに応じて画像内のオブジェクトが動く様を表現することができる。なおマーカーの見かけ上の大きさによって撮像装置１２からの距離を推定したり、奥行き方向の動きが必要ない情報処理を行ったりする場合は、撮像装置１２はステレオカメラでなくてよい。参照光を利用した距離測定技術を導入する場合も同様である。また必ずしもＨＭＤ１８と入力装置１４の双方を追跡しなくてもよい。
【００６４】
次にこれまで述べた構成によって実現できる、情報処理装置１０およびＨＭＤ１８または平板型ディスプレイ１６の動作について説明する。図８は、本実施の形態において撮影画像に基づき情報処理および表示を行う処理手順を示すフローチャートである。このフローチャートは、ユーザが入力装置１４などを介して情報処理装置１０に処理の開始を要求したときなどに開始される。
【００６５】
まず情報処理装置１０の撮影画像取得部７４は、撮像装置１２に撮影の開始を要求し、それに応じて撮像装置１２が撮影し出力した撮影画像のデータの取得を開始する（Ｓ１０）。次に追跡対象モデリング部８６は、追跡対象の形状モデルを取得する（Ｓ１２）。具体的には上述のとおり、所定の向きの追跡対象を撮影し、その像に基づき形状やサイズを特定する。ここで所定の向きとは１つでも複数でもよく、追跡対象の可変箇所に応じて決定したり、形状モデルを構築しながら不足している角度を補うように決定したりする。ＨＭＤ１８を追跡対象とする場合は、上述のようにおよそのモデルを準備できるため、側面の撮影画像に基づき装着バンド１０６の伸縮に応じた修正を加える。
【００６６】
一方、未知の対象物であっても、各面を撮像装置１２に向けるようユーザに促すなどして撮影すればその形状モデルを取得できる。実際のサイズは、ステレオ画像から取得される対象物の奥行き方向の位置に基づき取得できる。ＨＭＤ１８のように内部に加速度センサを備える場合は、撮影時の追跡対象の傾きに基づき、必要な向きの撮影画像が得られているかを確認することもできる。追跡対象モデリング部８６は、形状モデル取得処理についてユーザに通知すべき情報を表した出力データを、出力データ送信部８４を介してＨＭＤ１８および平板型ディスプレイ１６の少なくともいずれかに送信することにより、当該情報が送信先から出力されるようにする。
【００６７】
なおＳ１２の処理は上述のとおり、その後も連続的、あるいは断続的に行ってよい。次に情報処理部７６は、取得された形状モデルに基づき、ステレオ画像を用いて対象物の実空間での位置や姿勢を取得する（Ｓ１４）。そしてそれらの結果に基づき、メインデータ生成部７８は、仮想世界の画像や音声など、出力すべきメインデータを生成する（Ｓ１６）。ＨＭＤ１８で表示する場合は左右の視差画像を生成したり、レンズを介したときに正常に見えるように歪みを与えるなどの加工を適宜施す。
【００６８】
一方、補助データ生成部８２は、出力すべき補助データを生成する（Ｓ１８）。単に撮影画像を補助データとしてもよいし、情報処理部７６による追跡の結果、特定された対象物の像の位置に印をつけるなど撮影画像に加工を施してもよい。そのほか、異常を通知したり改善の仕方を示唆したりする画像や音声のデータを生成してもよい。また入力装置１４に内蔵させた振動子を振動させる信号を生成してもよい。
【００６９】
情報処理装置１０の出力データ送信部８４が、そのように生成されたメインデータおよび補助データをＨＭＤ１８および平板型ディスプレイ１６の少なくともいずれかに送信することにより、画像が表示されたり音声が出力されたりする（Ｓ２０）。なお平板型ディスプレイ１６への出力データの送信は、ＨＭＤ１８を介して行ってもよい。この場合、ＨＭＤ１８の表示処理部９８は、自らが表示する画像のデータを平板型ディスプレイ１６に適した形式に成形してから送信する。ユーザから処理の終了要求が入力されない間は（Ｓ２２のＮ）、次の画像フレームとして撮影された画像に基づき、Ｓ１４〜Ｓ２０の処理を繰り返す。ユーザから処理の終了要求がなされたら、全ての処理を終了する（Ｓ２２のＹ）。
【００７０】
図９は本実施の形態における表示画像を例示している。まず上段の画像（ａ）は、補助データが表示されない状態の画像例、すなわちメインデータに含まれる画像例を示しており、左側がＨＭＤ１８用、右側は平板型ディスプレイ１６用である。同図ではわかりやすさのために格子状の図柄を表示対象としているが、実際には仮想世界やゲーム画像など情報処理の内容によって様々となる。ＨＭＤ１８用の表示画像は、表示パネルに対応する画像平面を２分割してなる左右の領域に、左目用画像と右目用画像をそれぞれ配置した構成を有する。
【００７１】
この例は、ＨＭＤ１８において表示パネルの前にレンズを設けユーザの視野を広げることを想定している。この場合、レンズによって、表示された画像のうち中心から離れた画素ほど大きい変位で引き延ばされるいわゆる「糸巻き型」の歪みが発生する。また色によっても変位量が異なるため色収差が生じる。したがって、（ａ）の右側に示すような一般的な画像に対し、当該歪みと色収差を考慮して歪み補正を施すことにより、図示するようなＨＭＤ１８用の表示画像を生成する。これにより、レンズを介して見ると右側に示すような画像となる。
【００７２】
なお歪み補正は情報処理装置１０のメインデータ生成部７８が行ってもよいし、ＨＭＤ１８の表示処理部９８が行ってもよい。またＨＭＤ１８から平板型ディスプレイ１６へ画像のデータを送信する構成においては、ＨＭＤ１８の表示処理部９８が、左右のどちらかの画像のうち必要な領域を切り出して送信する。このとき、情報処理装置１０が歪み補正後の画像をＨＭＤ１８に送信する態様においては、表示処理部９８が歪み補正と逆の補正を施して平板型ディスプレイ１６用の画像を生成する。レンズ用の歪み補正やその逆補正については一般的な手法を適用することができる。
【００７３】
図９の下段の画像（ｂ）は、補助データが表示された状態の画像例を示しており、左側がＨＭＤ１８用、右側は平板型ディスプレイ１６用である。上段の画像と比較し画像の中央付近に２つの画像（例えば画像１５０ａ、１５０ｂ）が並べて表示されている。これらは撮像装置１２が撮影したステレオ画像であり、図７で示した状態のユーザの姿が映っている。ステレオカメラの場合、２つのカメラがそれぞれ独自の視野を持っている。したがって補助データとしてステレオ画像の双方を同時に表示させることにより、ユーザは両者の視野を確認し、追跡処理に対し有効な可動範囲を認識することが容易にできる。
【００７４】
またいずれかのカメラが故障していたりデータ出力が適切にできていない場合も、ステレオ画像をそれぞれ確認することにより、そのような不具合を一見して把握することができる。さらに照明環境や撮影条件が適切でない場合も、撮影画像から容易に把握できる。なお撮像装置１２が単眼カメラで構成されていたり、ステレオマッチングの必要のない情報処理を行う場合などは、補助データに含まれる撮影画像は１つのみでよい。
【００７５】
補助データの画像を重畳させたＨＭＤ１８用の画像は、例えば次の手法のどちらかによって作成できる。
（１）メインデータの画像を左右の視点から描画後、両者の画像の最前に矩形領域として補助データの画像を追加で描画し、歪み補正を施す
（２）メインデータとして描画される仮想世界に存在するオブジェクトの表面に、補助データの画像をテクスチャとして貼り付けたうえで、左右の視点から仮想世界を描画し歪み補正を施す
【００７６】
（１）の場合、補助データの画像は一般的な平面画像として見える。ただし左右の画像の端に近づくほど歪み補正の影響が大きくなるため画質が劣化しやすくなる。またこのようにして生成したＨＭＤ１８用画像から、右に示した平板型ディスプレイ１６用の画像を生成する場合は、画像の端に近づくほど逆補正しきれず元の矩形形状の撮影画像に戻りにくくなる。それらの観点から、（１）の手法では特に、補助データの画像はメインデータの画像の中央付近に表示することが望ましい。このようにすると、切り出し処理により補助データの画像が一部、欠落してしまう可能性も低くなる。
【００７７】
補助データの画像をメインデータの画像の中央付近に表示する場合、メインデータの画像が隠蔽されることによる不都合が生じないよう、初期処理中など適切なタイミングで補助データを表示したり、ユーザが表示／非表示を切り替えられるようにしたりすることが望ましい。上記（２）の場合、補助データの画像は仮想世界の一部となるため歪み補正によっても劣化が少なくレンズごしに自然に見ることができる。またＨＭＤ１８用画像から平板型ディスプレイ１６用の画像を生成する場合も、仮想世界と同様に逆補正がかかるため、（１）の手法で上述したような問題は生じにくい。
【００７８】
図１０は、撮像装置１２のステレオカメラにおける視野とステレオ画像の関係を説明するための図である。まず撮像装置１２のカメラ１５２ａ、１５２ｂはそれぞれ、点線で示したような視野を有する。これに対し状態Ａにいるユーザは、双方の視野に含まれるため、右に示した画像１５４ａ、１５４ｂのようなステレオ画像が得られる。なお画像１５４ａは左視点のカメラ１５２ａが、画像１５４ｂは右視点のカメラ１５２ｂが撮影した画像である。
【００７９】
一方、ユーザが左（カメラから見て右）に移動し、右視点のカメラ１５２ｂの視野には入っているが、左視点のカメラ１５２ａの視野からは外れた状態Ｂになると、ステレオ画像１５６ａ、１５６ｂのうち左視点のカメラ１５２ａが撮影した画像１５６ａでユーザの像が欠けてしまう。ユーザが装着しているＨＭＤ１８や把持する入力装置１４に設けた発光マーカーの実空間での位置を求める場合、左右の視点からみたマーカーの像が必要となるため、状態Ｂのような期間はその処理が不可能となる。
【００８０】
しかしＨＭＤ１８を装着し仮想世界などを目の前にしているユーザはそのことに気づきにくい。そこで上述のようにステレオ画像１５６ａ、１５６ｂの双方を補助データとして表示することにより、どちらのカメラの視野から外れてもそれを一見して認識できるようにする。またカメラが故障していたりカメラからのデータ入力が適切になされていなかったりしても画面が消灯していることにより認識できる。なお撮影画像はそのまま表示させるほか、左右を反転させる鏡面処理を施してから表示してもよい。後者の場合、どの方向に戻るべきかといった方向性がユーザに理解されやすくなる。
【００８１】
図１１は補助データとして、撮影画像に所定の加工を施した例を示している。この図では、図１０で示した状態Ｂのステレオ画像をそれぞれ左右反転させたうえ、左視点の撮影画像１５８ａ、１６０ａを右側に、右視点の撮影画像１５８ｂ、１６０ｂを左側に表示している。これによりユーザから見て左右のカメラにそれぞれ写っている自分の姿を鏡のように見ることができ、空間の把握がしやすい。表示例（ａ）ではさらに、視野から外れた方の撮影画像１５８ａ全体に所定の画像加工を施すことにより強調表示する。図では画像全体に半透明のグレーのレイヤを重ねているが、赤色などでさらに強調してもよいし、重ねるレイヤを点滅させてもよい。
【００８２】
このような変化に応じて、ユーザが対応するカメラの視野に入るように移動することで、追跡処理の破綻が免れ情報処理を続行できる。表示例（ｂ）の場合は、視野から外れた方の撮影画像１６０ａに、戻るべき方向を示す矢印１６２を描画している。ユーザは矢印の方向に移動することにより容易にカメラの視野に入ることができる。ＨＭＤ１８を用いて立体視が可能な場合は、矢印の視差画像を作成して表示パネルの左右の領域にそれぞれ表示することにより、矢印が中に浮いているように視認させてもよい。
【００８３】
あるいは戻るべき方向に音声を定位させて聞かせてもよい。この場合、ユーザは音のする方向へ移動することでカメラの視野に入ることができる。さらに、カメラの視野から外れたら入力装置１４に内蔵した振動子を振動させることによりユーザに通知してもよい。これらの補助データの出力態様は、いずれか一つのみ実施してもよいし、２つ以上を組み合わせて実施してもよい。
【００８４】
図１２は補助データとして撮影画像に加工を施す別の例を示している。この例では、情報処理装置１０の情報処理部７６が追跡対象として認識している物の画面上での位置を示す印や図形を描画する。なお追跡処理が進捗中であれば当該印や図形も物の動きに応じて移動する。同図の場合、ステレオ画像１６４ａ、１６４ｂの双方において、ＨＭＤおよび入力装置の中心にバツ印（例えばバツ印１６６ａ、１６６ｂ）が示されており、追跡対象が正しく認識されていることがわかる。
【００８５】
なおＨＭＤと入力装置、複数のユーザのＨＭＤなど、複数の物を追跡している場合は、それらを区別して認識していることがわかるように印の色を変化させてもよい。例えば、それらが区別して追跡されるように発光マーカーの色を異ならせ、印の色を、追跡対象として認識されている物に設定されている発光マーカーの色としてもよい。このようにすると、追跡すべき対象物ではあるものの別の追跡対象と混同して認識されているような状態を、発光マーカーと印の色の対応によって把握することができる。
【００８６】
また印はバツ印に限らず、そのほかの図形でもよいし、追跡対象の周囲を線で囲ってもよい。複数のユーザがいる場合は、ログイン名などの文字情報を、それぞれのＨＭＤ１８の像の近傍に表示してもよい。これらのことにより、追跡対象がカメラの視野に入っているかのみならず、追跡処理が適正になされているかを一見して確認することができる。例えば追跡されるべきＨＭＤに印がなかったり、発光マーカーの色と別の色の印がついていたりした場合、情報処理の不具合の原因を追跡処理に求めることができる。
【００８７】
図１３は、図１２で説明した態様において状況を改善させる事例を説明するための図である。画像１６８は補助データとして表示するステレオ画像のうち一方の画像１６８を例示している。図１２と同様、画像１６８において、情報処理部７６が追跡対象として認識している物の像にバツ印１７０ａ、１７０ｂが付加されている。ここでバツ印１７０ａは真の追跡対象であるＨＭＤの像の位置を表しているが、バツ印１７０ｂは天井の照明を追跡対象として誤認識していることを示している。発光マーカーと照明の色が似ている場合などにこのようなことが起こり得る。照明のほか、テレビや携帯端末のディスプレイの発光を追跡対象と誤認識することも考えられる。
【００８８】
画像１６８のような補助データを表示することにより、ユーザはそのような不具合の原因を容易に把握できる。この例ではユーザは、自分が想定するよりカメラが上向きであることに気づくなどして、カメラの仰角を小さくするといったハードウェア的な対応をとることにより、視野に照明が入る余地を少なくできる。あるいは、入力装置１４などによって移動可能なカーソル１７２を画像１６８上に表示させ、正しい追跡対象を示すバツ印１７０ａを選択する入力を受け付けてもよい。この場合、情報処理部７６が、選択されなかったバツ印１７０ｂに対応する物を追跡対象から除外することにより、カメラの視野を変化させることなく、ソフトウェア的に誤認識を是正できる。
【００８９】
また真の追跡対象にバツ印が表示されていなければ、それが追跡対象として認識されていないことがわかるため、例えばユーザは、当該追跡対象を一旦カメラに近づけるなどして認識されやすくしてもよい。同様に、家具など想定外の物がカメラの視野に入っていて、追跡対象がそれに隠蔽されている場合も考えられる。この場合も、画像１６８のような補助データを表示することにより容易に不具合の原因を特定できるため、ユーザは邪魔な物をどかしたり、カメラの向きを調整して視野に入らないようにしたりすることができる。
【００９０】
図１４は、補助データとして撮影画像に加工を施すさらに別の例を示している。この例では、ステレオ画像１８０ａ、１８０の双方に、他方のカメラの視野によって定まるユーザの可動範囲を点線１８２ａ、１８２ｂで囲んで示している。すなわち左視点のカメラの視野の限界を右視点のカメラの画像１８０ｂに、右視点のカメラの視野の限界を左視点のカメラの画像１８０ａに、領域として表示する。なお同図のステレオ画像１８０ａ、１８０は撮影画像を左右反転させているため、左視点のカメラの視野は右よりに、右視点のカメラの視野は左よりになっている。
【００９１】
このような補助データの表示により、ユーザは、実空間では明確な線引きのない可動範囲を実際のカメラの状態に応じて正確に認識することができる。なお可動範囲の表示は点線に限らない。また撮影画像のうち可動範囲の領域のみを切り出して表示してもよい。図１１で示した態様、図１２、１３で示した態様、図１４で示した態様は、そのうちいずれかのみを実施してもよいし、適宜組み合わせて同時に実施してもよい。また音声出力や入力装置１４の振動なども適宜組み合わせてよい。
【００９２】
図１５は、図８のＳ１２において情報処理装置１０の追跡対象モデリング部８６が、追跡対象の形状モデルを取得する処理手順を示すフローチャートである。ここではＨＭＤ１８の形状モデルを取得することを想定しているが、追跡対象をそれに限る主旨ではない。この場合、上述のとおり標準モデルをあらかじめ生成し、追跡対象モデリング部８６の内部メモリに保持しておくことができる。
【００９３】
まず追跡対象モデリング部８６は、処理の初期段階として、形状モデルの取得に必要なマーカーが写る撮影画像を取得中であることをユーザに通知する（Ｓ３０）。次に、撮影画像のうちその時点での画像フレームから発光マーカーの像を検出する（Ｓ３２）。情報処理の開始時など初期段階では多くの場合、ユーザは撮像装置１２に正対しているため、例えばＨＭＤ１８前面の４つの発光マーカーの像が検出される。次に、同時に写っている発光マーカーの数が所定数であるか否かを判定する（Ｓ３４）。
【００９４】
上述したＨＭＤ１８の場合、装着バンド１０６の長さ調節によって前面の２つの発光マーカーおよび後部の１つの発光マーカーの距離が影響を受けるため、それら３つの発光マーカーが写っている必要がある。検出された発光マーカーが４つなど、所定数以外の数であった場合は（Ｓ３４のＮ）、次の画像フレームについて発光マーカー検出および数の確認を繰り返す（Ｓ３２、Ｓ３４）。この期間、Ｓ３０の通知を継続する。
【００９５】
このとき、必要な撮影画像を取得中であることを文字情報等で通知するのみでもよいし、所定の方向に向くようユーザに指示してもよい。あるいは情報処理部７６の処理に、必要な撮影画像を取得するためのモードを準備しておき、ゲームや仮想世界表現の中で自然に好適な方向へ向くようにしてもよい。例えばゲーム画像中、ユーザが凝視する必要のあるオブジェクトを右隅に表示させることにより顔を右に向かせれば、撮像装置１２の視野には左側頭部が入り、結果として発光マーカーが３つ写る撮影画像を取得できる。
【００９６】
このような場合、追跡対象モデリング部８６が当該モードの実行を情報処理部７６に要求する。あるいは、ユーザが向くべき方向に定位させた音声を出力してもよい。そして発光マーカーが３つなど所定数写る撮影画像が取得できたら（Ｓ３４のＹ）、次の段階、すなわち形状モデルの取得段階に入ったことをユーザに通知する（Ｓ３６）。そして、取得した撮影画像における発光マーカーの像の位置関係に基づき形状モデルを取得する（Ｓ３８）。ＨＭＤ１８の標準モデルを準備している場合は、それを修正する。
【００９７】
なお、より正確な形状モデルを取得するため、ＨＭＤ１８の右側面と左側面の撮影画像を両方、取得できるまで、Ｓ３２とＳ３４の処理を繰り返してもよい。この場合、写っている発光マーカーの数のほか、発光マーカーの配置を確認することにより、右側面の画像と左側面の画像を区別できる。また図１３で示した撮影環境のように、ＨＭＤ１８の発光マーカーと類似した色の照明など、周囲の発光体の存在により、偶然、３つの発光体の像が得られてしまう可能性がある。そのような撮影画像を元に形状モデルを取得すると多大な誤差が発生することが考えられる。そこで、少なくとも形状モデル取得のために撮影画像を取得している期間は、それら周囲の発光体と区別できるようにＨＭＤ１８のマーカーの発光態様を変化させてもよい。
【００９８】
例えば、ＨＭＤ１８のマーカーを発光させない状態での撮影画像を取得することにより、カメラの視野に入るマーカー以外の発光体を検出する。そしてそのような発光体が検出されたら、その発光色以外の色でＨＭＤ１８のマーカーを発光させる。あるいは発光マーカーを点滅させてもよい。発光色の指定や点滅の要、不要に係る情報は、追跡対象モデリング部８６が作成し、出力データ送信部８４を介してＨＭＤ１８に送信することにより、ＨＭＤ１８の発光部９２をそのように発光させる。形状モデルを取得・修正できたら、追跡対象モデリング部８６はその情報を情報処理部７６に提供するとともに、形状モデル取得処理が完了したことをユーザに通知し、処理を終了する（Ｓ４０）。
【００９９】
なお上述のとおり追跡対象モデリング部８６は、情報処理部７６における情報処理と並列に形状モデルを取得してもよい。この態様として、所定数のマーカーが写っている撮影画像が得られていない状態で、情報処理を開始してしまう場合と、一旦、形状モデルを取得してからも、長さなどの状態変化や精度向上のために継続して形状モデルを修正していく場合が考えられる。前者の場合、例えばＨＭＤ１８の深さ方向の状態が未確定のため、確定している前面の発光マーカーの追跡のみを行う。
【０１００】
この場合、ユーザが後ろを振り向く動画が正しく検出されない可能性があるため、振り向く動作に入ることが予測されたら、形状モデルが未完成の旨をユーザに通知したり警告音を発生させたりする。あるいは仮想世界などメインデータの表示画像中で形状モデルが未完成であることが分かるような表示をする。例えば、ＨＭＤ１８によって全方向の仮想世界を表現する場合、検出できない角度に顔が向いた時に視野に入る仮想世界の領域をグレーに塗りつぶすなどして無効であることを表現する。これと同時に、必要な画像が得られる方向に向くように、文字や矢印などでユーザに指示を与えてもよい。必要な画像が得られ形状モデルが徐々に確定していくと仮想世界の無効な領域が減っていき、やがて形状モデルの取得が完了した時点で仮想世界が全方位で完成するようにしてもよい。
【０１０１】
一旦、取得した形状モデルを、精度向上のために修正していく場合は、３つなど所定数の発光マーカーが同時に写っている撮影画像を随時取得し、その位置関係などに基づき形状モデルを修正していく。前回のタイミングにおける形状モデルと比較することにより形状モデルの収束状況を確認し、収束したことが判定されたら、それ以後は形状モデルの修正を行わないようにしてもよい。あるいは上述のとおり、装着バンド１０６が緩むなどして状態が変化する場合を考慮し、定期的に形状モデルの修正を実施してもよい。
【０１０２】
図１６は図１５のフローチャート中、Ｓ３０、Ｓ３６、Ｓ４０において、形状モデルの取得処理に係る情報をユーザに通知するために表示される画像の例を示している。この例は図９を参照して説明したようにＨＭＤ１８に表示する画像であり、メインデータである左右の視差画像が、表示画面を２分割してなる左右の領域にそれぞれ表示されている。情報処理部７６による処理と並列に形状モデルの取得処理を行わない場合、メインデータの画像はメニュー画像や初期画像などでよい。
【０１０３】
まず図１５のＳ３０において、必要な撮影画像を取得中である旨を通知するときは、図１６の（ａ）に示すように、「ＮＯＴ  ＲＥＡＤＹ」なる文字情報を表示する。この文字情報を表す画像は、上述した補助データを重畳させる手法と同様に重畳して表示する。したがって実際には、当該文字情報はレンズに対応するように歪み補正が施されている。このとき上述のように、ユーザが所定の方向を向くように誘導する画像やオブジェクトを表示させたり、「右側を見てください」といった音声を出力させたりしてよい。
【０１０４】
次に図１５のＳ３６において、形状モデルを取得あるいは修正している旨を通知するときは、図１６の（ｂ）に示すように、「ＡＤＪＵＳＴＩＮＧ」なる文字情報を表示する。そして図１５のＳ４０において、形状モデルの取得が完了したことを通知するときは、図１６の（ｃ）に示すように、「ＲＥＡＤＹ」なる文字情報を表示する。なお「ＲＥＡＤＹ」の文字情報は所定時間表示後に消してもよい。
【０１０５】
図１６に示した画像は一例に過ぎず、形状モデルの取得処理のうちどの段階にあるかをユーザが知ることができれば、その情報の提示手法は限定されない。例えば完了するまでの時間を示したゲージや、砂時計などの図形を表示してもよいし、仮想世界の一部として表示したオブジェクトの様子で表してもよい。また各段階を説明する音声や、段階に応じて異なる音などを出力してもよい。
【０１０６】
以上述べた本実施の形態によれば、撮影画像における像を追跡しその結果を利用して情報処理を行うシステムにおいて、ゲーム画像や仮想世界など情報処理によって出力すべき主たる画像や音声のほかに、実空間について情報処理装置が認識している内容を示す中間データを補助データとしてユーザに提示する。具体的には、撮影画像、追跡結果、許容される可動範囲などを提示する。これによりユーザは、カメラの故障、装置間の未接続、照明環境や撮影条件の不適合、追跡処理における誤認識、カメラの視野からの逸脱など、情報処理に悪影響を与えている要素を直感的に理解でき、適切な改善措置を容易に講じることができる。
【０１０７】
ＨＭＤを装着し、表示されている仮想世界に没入している状態のユーザは特に、実空間における状況を把握しづらい。そのような状態で自分自身がカメラの視野から外れるなどして突然、情報処理に不具合が生じても、その原因をすぐに特定するのは困難である。また視野から外れることにより頻繁にゲームが中断してしまうことがストレスの要因になり得る。一般的な２次元のディスプレイであっても、ゲームに夢中になっている状態では同様のことが起こり得る。
【０１０８】
情報処理が最初から実行不可能な場合も、原因となり得る要因は多岐にわたり特定が難しい。上記のような補助データを提示することにより、少なくとも提示されている情報に係る要素における不具合の有無について、容易に確認することができる。またカメラの視野を正確に知ることができるため、自分や周囲の物と視野との関係を把握でき、カメラのセッティングを改善したり、視野から外れないような動きを心がけたりすることができる。さらに、ユーザが視野から外れたことを通知する画像や音声、戻る方向を示す画像や音声を補助データに含めたり、真の追跡対象を選択する入力を受け付けたりすることにより、より効率的かつ直感的に不具合を解消できる。
【０１０９】
また、姿勢の変化を含む追跡の処理を精度よく行うために、追跡対象の形状やサイズを形状モデルとして取得する。具体的には、必要な向きの追跡対象を撮影した画像を取得し、当該画像における像の状態に基づき形状モデルを取得したり修正したりする。これらの処理は本来、情報処理装置が独自に行うことができるものであるが、追跡対象の動きなど実空間の状態に依存して処理時間が変動し、場合によっては完了までに多大な時間を要することも考えられる。その間、待機状態にあることはユーザにとってもストレスである。そのため今現在、何が行われているか、その状態で追跡可能な方向と不可能な方向、など処理の経過に係る情報をユーザに提示する。
【０１１０】
これによりユーザは、どの段階まで処理が進んだかを知ることができ、安心感が増す。また必要な向きの撮影画像を取得する段階でユーザが協力することにより処理を短時間で完了させることができる。例えば必要な向きを提示したりゲーム内などで自然にそのような向きになるように誘導したりすることにより、効率的に処理を遂行できる。また形状モデルを取得中の状態でゲームなどの情報処理を開始するようにしても、形状モデルが未完成である旨をユーザが理解していることにより、予想外の不具合が発生しにくい。したがって形状モデルの取得とゲームなどの情報処理を融合させやすく、形状モデルの確定後、本格的な情報処理への移行を円滑かつ自然に実現できる。
【０１１１】
以上、本発明を実施の形態をもとに説明した。上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【０１１２】
８  情報処理システム、  １０  情報処理装置、  １２  撮像装置、  １４  入力装置、  １６  平板型ディスプレイ、  １８  ＨＭＤ、  ７２  入力情報取得部、  ７４  撮影画像取得部、  ７６  情報処理部、  ７８  メインデータ生成部、  ８２  補助データ生成部、  ８４  出力データ送信部、  ８６  追跡対象モデリング部、  ９０  計測部、  ９２  発光部、  ９４  出力データ受信部、  ９６  音声処理部、  ９８  表示処理部。
【図１】
0006465672.tif 000002
【図２】
0006465672.tif 000003
【図３】
0006465672.tif 000004
【図４】
0006465672.tif 000005
【図５】
0006465672.tif 000006
【図６】
0006465672.tif 000007
【図７】
0006465672.tif 000008
【図８】
0006465672.tif 000009
【図９】
0006465672.tif 000010
【図１０】
0006465672.tif 000011
【図１１】
0006465672.tif 000012
【図１２】
0006465672.tif 000013
【図１３】
0006465672.tif 000014
【図１４】
0006465672.tif 000015
【図１５】
0006465672.tif 000016
【図１６】
0006465672.tif 000017