(57)【特許請求の範囲】
【請求項１】
現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得手段と、
仮想３次元空間に配置されたオブジェクトに所与の座標変換処理を実行することによって、前記仮想３次元空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御手段と、
前記撮影画像に対象領域を設定する対象領域設定手段と、
前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想３次元空間に配置する背景オブジェクト配置手段と、
前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想３次元空間に配置する手段であって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置手段と、
前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置し、当該配置された位置から前記仮想３次元空間内を移動させる合成対象オブジェクト配置手段と、
を含み、
前記表示制御手段は、
前記仮想３次元空間に配置された前記背景オブジェクトと前記被写体オブジェクトと前記合成対象オブジェクトとに所与の座標変換処理を実行することによって、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、
ことを特徴とする画像処理装置。
【請求項２】
前記合成対象オブジェクト配置手段は、
前記仮想３次元空間において、前記合成対象オブジェクトを前記視点に向かって移動させる手段と、
前記仮想３次元空間において、前記合成対象オブジェクトを前記被写体オブジェクトの周囲を回るように移動させる手段と、
の少なくとも一方を含むことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像取得手段は、ユーザにより撮影指示操作が行われた場合に、前記撮影手段から前記撮影画像を取得し、
前記画像処理装置は、
前記ユーザによる前記撮影指示操作が行われる前において前記撮影手段から取得される、前記現実空間を示す撮影前画像を前記表示手段に表示させ、前記撮影前画像において、前記撮影画像に設定される前記対象領域を前記ユーザに案内する案内手段、
を更に含み、
前記画像取得手段は、
前記対象領域が前記ユーザに案内された後、前記ユーザにより前記撮影指示操作が行われた場合、前記撮影手段から前記撮影画像を取得する、
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記画像処理装置は、
前記撮影画像に設定される前記対象領域の形状又は位置の変更指示操作をユーザが行うための手段と、
前記ユーザによる前記変更指示操作が行われた場合、当該変更指示操作に基づいて前記対象領域の形状又は位置を変更する手段と、
を更に含み、
前記被写体オブジェクト配置手段は、
前記変更された前記対象領域の形状又は位置に基づいて、前記被写体オブジェクトの形状又は位置を決定し、
前記合成対象オブジェクト配置手段は、
前記視点から見て、前記合成対象オブジェクトの全部又は一部が、前記決定された被写体オブジェクトに隠れるように、前記合成対象オブジェクトの位置又は動作を決定する、
ことを特徴とする請求項１〜３の何れか一項に記載の画像処理装置。
【請求項５】
前記被写体オブジェクトは、半透明ポリゴンを含んで構成され、
前記画像処理装置は、
前記被写体オブジェクトのうち、前記対象領域内の所定領域に撮影された部分を示す前記半透明ポリゴンを透過させる手段、
を更に含み、
前記表示制御手段は、
前記合成対象オブジェクトのうち、前記視点から見て前記透過された半透明ポリゴンが重畳する部分を、前記仮想空間画像において表示させる、
ことを特徴とする請求項１〜４の何れか一項に記載の画像処理装置。
【請求項６】
前記画像処理装置は、
前記仮想３次元空間と、前記合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する手段から前記モーションデータを取得する手段、
を更に含み、
前記合成対象オブジェクト配置手段は、
前記表示制御手段により生成された仮想３次元空間に関連付けられた前記モーションデータに基づいて、前記合成対象オブジェクトを前記仮想３次元空間において動作させる、
ことを特徴とする請求項１〜５の何れか一項に記載の画像処理装置。
【請求項７】
前記画像処理装置は、
前記対象領域に撮影されるべき被写体をユーザに案内する手段と、
前記被写体と、前記合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する手段から前記モーションデータを取得する手段と、
を更に含み、
前記合成対象オブジェクト配置手段は、
前記ユーザに案内された前記被写体に関連付けられた前記モーションデータに基づいて、前記合成対象オブジェクトを前記仮想３次元空間において動作させる、
ことを特徴とする請求項１〜５の何れか一項に記載の画像処理装置。
【請求項８】
現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得ステップと、
仮想３次元空間に配置されたオブジェクトに所与の座標変換処理を実行することによって、前記仮想３次元空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御ステップと、
前記撮影画像に対象領域を設定する対象領域設定ステップと、
前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想３次元空間に配置する背景オブジェクト配置ステップと、
前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想３次元空間に配置するステップであって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置ステップと、
前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置し、当該配置された位置から前記仮想３次元空間内を移動させる合成対象オブジェクト配置ステップと、
を含み、
前記表示制御ステップは、
前記仮想３次元空間に配置された前記背景オブジェクトと前記被写体オブジェクトと前記合成対象オブジェクトとに所与の座標変換処理を実行することによって、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、
ことを特徴とする画像処理装置の制御方法。
【請求項９】
現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得手段、
仮想３次元空間に配置されたオブジェクトに所与の座標変換処理を実行することによって、前記仮想３次元空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御手段、
前記撮影画像に対象領域を設定する対象領域設定手段、
前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想３次元空間に配置する背景オブジェクト配置手段、
前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想３次元空間に配置する手段であって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置手段、
前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置し、当該配置された位置から前記仮想３次元空間内を移動させる合成対象オブジェクト配置手段、
としてコンピュータを機能させ、
前記表示制御手段は、
前記仮想３次元空間に配置された前記背景オブジェクトと前記被写体オブジェクトと前記合成対象オブジェクトとに所与の座標変換処理を実行することによって、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、現実空間をカメラで撮影して得られる画像と、仮想空間を所与の視点から見た画像と、を重畳させて画面に表示させることによって、ユーザに拡張現実（ＡＲ：Augmented Reality）を提供する技術が知られている。例えば、特許文献１には、眼鏡を示すオブジェクトが配置された仮想空間を所与の視点から見た画像と、ユーザの顔を撮影した画像と、を重ね合わせることによって拡張現実を提供する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１４２５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術が提供する拡張現実においては、仮想空間を示す画像が、現実空間を示す画像に重畳して表示されるので、例えば、現実空間に配置された物体の陰（裏側）からキャラクタが表れるような表示制御を行うことができず、合成画像のリアリティが不足する場合がある。
【０００５】
拡張現実におけるリアリティを高めるために、現実空間を撮影した画像から特徴点を抽出することによって、現実空間を模した３次元空間を生成するＰＴＡＭ（Parallel Tracking and Mapping）に関する技術も検討されているが、ＰＴＡＭ技術では複雑な処理が必要であり、画像処理装置の処理負荷が増大する問題があった。
【０００６】
本発明は上記課題に鑑みてなされたものであって、その目的は、画像処理装置の処理負荷を軽減しつつ、リアリティの高い拡張現実を提供することが可能な画像処理装置、画像処理装置の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明に係る画像処理装置は、現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得手段と、仮想空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御手段と、前記撮影画像に対象領域を設定する対象領域設定手段と、前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想空間に配置する背景オブジェクト配置手段と、前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想空間に配置する手段であって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置手段と、前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置する合成対象オブジェクト配置手段と、を含み、前記表示制御手段は、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、ことを特徴とする。
【０００８】
また、本発明に係る画像処理装置の制御方法は、現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得ステップと、仮想空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御ステップと、前記撮影画像に対象領域を設定する対象領域設定ステップと、前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想空間に配置する背景オブジェクト配置ステップと、前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想空間に配置するステップであって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置ステップと、前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置する合成対象オブジェクト配置ステップと、を含み、前記表示制御ステップは、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、ことを特徴とする。
【０００９】
また、本発明に係るプログラムは、現実空間を撮影する撮影手段から前記現実空間の撮影画像を取得する画像取得手段、仮想空間を所与の視点から見た様子を示す仮想空間画像を表示手段に表示させる表示制御手段、前記撮影画像に対象領域を設定する対象領域設定手段、前記撮影画像の前記対象領域外に撮影された背景を示す背景オブジェクトを前記仮想空間に配置する背景オブジェクト配置手段、前記撮影画像の前記対象領域内に撮影された被写体を示す被写体オブジェクトを前記仮想空間に配置する手段であって、前記仮想空間画像において前記被写体オブジェクトが前記背景オブジェクトに重畳表示される位置と、前記撮影画像における前記対象領域の位置と、が対応するように、前記被写体オブジェクトを、前記視点と前記背景オブジェクトとの間に配置する被写体オブジェクト配置手段、前記仮想空間画像において前記現実空間と合成して表示させる合成対象を示す合成対象オブジェクトを、前記背景オブジェクトと前記被写体オブジェクトとの間に配置する合成対象オブジェクト配置手段、を含み、前記表示制御手段は、前記仮想空間画像において、前記合成対象オブジェクトを前記背景オブジェクトに重畳表示させ、かつ、前記被写体オブジェクトを前記合成対象オブジェクトに重畳表示させる、ことを特徴とする画像処理装置としてコンピュータを機能させる。
【００１０】
また、本発明に係る情報記憶媒体は、上記プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。
【００１１】
本発明によれば、画像処理装置の処理負荷を軽減しつつ、リアリティの高い拡張現実を提供することが可能になる。
【００１２】
また、本発明の一態様では、前記画像取得手段は、前記ユーザにより撮影指示操作が行われた場合に、前記撮影手段から前記撮影画像を取得し、前記画像処理装置は、前記ユーザによる前記撮影指示操作が行われる前において前記撮影手段から取得される、前記現実空間を示す撮影前画像を前記表示手段に表示させ、前記撮影前画像において、前記撮影画像に設定される前記対象領域を前記ユーザに案内する案内手段、を更に含み、前記案内画像取得手段は、前記対象領域が前記ユーザに案内された後、前記ユーザにより前記撮影指示操作が行われた場合、前記撮影手段から前記撮影画像を取得する、ことを特徴とする。
【００１３】
また、本発明の一態様では、前記画像処理装置は、前記撮影画像に設定される前記対象領域の形状又は位置の変更指示操作を前記ユーザが行うための手段と、前記ユーザによる前記変更指示操作が行われた場合、当該変更指示操作に基づいて前記対象領域の形状又は位置を変更する手段と、を更に含み、前記被写体オブジェクト配置手段は、前記変更された前記対象領域の形状又は位置に基づいて、前記被写体オブジェクトの形状又は位置を決定し、前記合成対象オブジェクト配置手段は、前記視点から見て、前記合成対象オブジェクトの全部又は一部が、前記決定された被写体オブジェクトに隠れるように、前記合成対象オブジェクトの位置又は動作を決定する、ことを特徴とする。
【００１４】
また、本発明の一態様では、前記被写体オブジェクトは、半透明ポリゴンを含んで構成され、前記画像処理装置は、前記被写体オブジェクトのうち、前記対象領域内の所定領域に撮影された部分を示す前記半透明ポリゴンを透過させる手段、を更に含み、前記表示制御手段は、前記合成対象オブジェクトのうち、前記視点から見て前記透過された半透明ポリゴンが重畳する部分を、前記仮想空間画像において表示させる、ことを特徴とする。
【００１５】
また、本発明の一態様では、前記画像処理装置は、前記仮想空間と、前記合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する手段から前記モーションデータを取得する手段、を更に含み、前記合成対象オブジェクト配置手段は、前記表示制御手段により生成された仮想空間に関連付けられた前記モーションデータに基づいて、前記合成対象オブジェクトを前記仮想空間において動作させる、ことを特徴とする。
【００１６】
また、本発明の一態様では、前記画像処理装置は、前記対象領域に撮影されるべき被写体を前記ユーザに案内する手段と、前記被写体と、前記合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する手段から前記モーションデータを取得する手段と、を更に含み、前記合成対象オブジェクト配置手段は、前記ユーザに案内された前記被写体に関連付けられた前記モーションデータに基づいて、前記合成対象オブジェクトを前記仮想空間において動作させる、ことを特徴とする。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態に係るゲーム装置のハードウェア構成を示す図である。
【図２】ユーザが撮影する現実空間を示す図である。
【図３】ゲーム装置において表示される撮影画像を示す図である。
【図４】主記憶に構築される仮想空間の一例を示す図である。
【図５】仮想空間画像の一例を示す図である。
【図６】ゲーム装置で実現される機能を示す機能ブロック図である。
【図７】仮想空間画像の表示方法を説明するための図である。
【図８】背景画像の一例を示す図である。
【図９】被写体オブジェクトの配置方法を説明するための図である。
【図１０】被写体画像の一例を示す図である。
【図１１】ゲーム装置が実行する処理のうちの、本発明に関連する処理を主に示すフロー図である。
【図１２】ゲーム装置が実行する処理のうちの、本発明に関連する処理を主に示すフロー図である。
【図１３】ユーザにより形状及び位置が変更された対象領域を示す図である。
【図１４】変形例（２）において表示される仮想空間画像の一例を示す図である。
【図１５】変形例（２）における仮想空間を示す図である。
【図１６】モーションデータのデータ格納例を示す図である。
【図１７】被写体とモーションデータとの関連付けを示す図である。
【発明を実施するための形態】
【００１８】
［１．実施形態］
以下、本発明に係る実施形態について図面に基づき詳細に説明する。本発明に係る画像処理は、例えば、携帯ゲーム機、携帯電話機等の携帯端末、又はパーソナルコンピュータ等の各種コンピュータを用いて実現される。ここでは、本発明の実施形態に係る画像処理装置を、携帯ゲーム機を用いて実現する場合について説明する。
【００１９】
［１−１．ゲーム装置のハードウェア構成］
図１は、本実施の形態に係るゲーム装置１０のハードウェア構成を示す図である。図１に示すように、ゲーム装置１０は、携帯ゲーム機１２と、ゲームメモリカード４４と、を含んでなる。携帯ゲーム機１２は、制御部１４、記憶部１６、主記憶１８、画像処理部２０、入出力処理部２２、バス２４、タッチスクリーン２６（第１液晶表示部２６ａ及びタッチパネル２６ｂ）、第２液晶表示部２８、メモリカードスロット３０、音声処理部３２、音声出力部３４、操作キー部３６、通信インタフェース３８、ＣＭＯＳカメラ４０、センサ部４２を含む。
【００２０】
制御部１４は、記憶部１６に記憶されるオペレーティングシステムや、ゲームメモリカード４４に格納されるプログラムや各種データに基づいてゲーム装置１０の各部を制御する。記憶部１６は、フラッシュメモリ等の不揮発性記憶媒体を含んで構成される。記憶部１６には、オペレーティングシステム等が記憶される。
【００２１】
主記憶１８は、例えば、ＲＡＭを含んで構成される。メモリカードスロット３０を介してゲームメモリカード４４から読み出されたプログラムは、必要に応じて主記憶１８に書き込まれる。主記憶１８は、制御部１４の作業用メモリとしても用いられる。
【００２２】
バス２４は、アドレス及び各種データをゲーム装置１０の各部でやり取りするために用いられる。制御部１４、主記憶１８、画像処理部２０及び入出力処理部２２は、バス２４によって相互データ通信可能に接続される。
【００２３】
画像処理部２０は、ＶＲＡＭを含む。画像処理部２０は、制御部１４からの指示に従って画像をＶＲＡＭ上に描画する。ＶＲＡＭ上に描画された画像は、所定のタイミングで第１液晶表示部２６ａや第２液晶表示部２８に表示される。第１液晶表示部２６ａ及び第２液晶表示部２８は、例えば、公知の液晶表示パネルである。
【００２４】
入出力処理部２２は、制御部１４が、タッチパネル２６ｂ、メモリカードスロット３０、音声処理部３２、操作キー部３６、通信インタフェース３８、ＣＭＯＳカメラ４０、及びセンサ部４２と各種データを授受するためのインタフェースである。
【００２５】
操作キー部３６は、ユーザが操作を行うための入力手段として機能する。操作キー部３６は、例えば、十字ボタン、スライドパッド、各種ボタンを含む。入出力処理部２２は、一定周期毎（例えば、１／６０秒毎）に操作キー部３６の各部の状態をスキャンする。このスキャン結果を表す操作信号は、バス２４を介して制御部１４に供給される。制御部１４は、ユーザの操作内容を、操作信号に基づいて判断する。
【００２６】
タッチパネル２６ｂは、操作キー部３６と同様に、ユーザが操作を行うための入力手段として機能する。タッチパネル２６ｂは、ユーザ又はユーザが把持する物体（タッチペン）によって接触（押圧）された位置に応じた接触位置情報を、入出力処理部２２を介して制御部１４に供給する。
【００２７】
メモリカードスロット３０は、ゲームメモリカード４４に記憶されたゲームプログラムやゲームデータを制御部１４からの指示に従って読み出す。ゲームメモリカード４４は、例えば、ゲームプログラムや画像データ等のゲームデータが記憶されるＲＯＭと、セーブデータ等のゲームデータが記憶されるＥＥＰＲＯＭと、を含む。
【００２８】
なお、本実施形態では、プログラムやデータをゲーム装置１０に供給するためにゲームメモリカード４４が用いられる例を挙げて説明するが、光ディスクなどの他の情報記憶媒体が用いられるようにしてもよい。他にも、インターネットなどの通信ネットワークを介して遠隔地からプログラムやデータが、ゲーム装置１０に供給されるようにしてもよい。あるいは、赤外線通信などの各種データ通信を利用してプログラムやデータがゲーム装置１０に供給されるようにしてもよい。
【００２９】
音声処理部３２は、サウンドバッファを含む。音声処理部３２は、サウンドバッファに格納された楽曲の出力用データや音声データに基づいて、楽曲や音声を音声出力部３４から出力する。通信インタフェース３８は、ゲーム装置１０を通信ネットワークに接続するためのインタフェースである。
【００３０】
ＣＭＯＳカメラ４０は、現実空間を撮影する。なお、本実施形態においてはＣＭＯＳカメラ４０によって現実空間が撮影される場合を説明するが、他の撮像素子（例えば、ＣＣＤカメラ）によって現実空間が撮影されるようにしてもよい。センサ部４２は、ジャイロセンサ、及びモーションセンサ等を含んで構成される。センサ部４２による検出信号は、入出力処理部２２を介して制御部１４に入力される。
【００３１】
［１−２．ユーザに提供される拡張現実］
ゲーム装置１０は、ＣＭＯＳカメラ４０が撮影する現実空間を示す画像（以降、撮影画像という。）に基づいて、現実空間に配置された物体の陰から架空のキャラクタが表れるような画像を表示させることによって、拡張現実をユーザに提供する。
【００３２】
図２は、ユーザが撮影する現実空間を示す図である。図２に示すように、例えば、ユーザＵは、ゲーム装置１０を把持してＣＭＯＳカメラ４０の撮影範囲を変更する。ＣＭＯＳカメラ４０は、種々の物体が配置された現実空間５０を撮影する。例えば、現実空間５０の地面５２上には、木５４と壁５６とが配置される。ユーザが所与の撮影指示操作を行うと、ＣＭＯＳカメラ４０により撮影画像が生成される。
【００３３】
図３は、ゲーム装置１０において表示される撮影画像を示す図である。撮影画像６０は、第１液晶表示部２６ａと第２液晶表示部２８との何れに表示されるようにしてもよい。本実施形態においては、撮影画像６０が第２液晶表示部２８に表示される場合を説明する。図３に示すように、撮影画像６０には、ＣＭＯＳカメラ４０の撮影範囲内に含まれる現実空間５０の物体（例えば、地面５２と木５４と壁５６）が含まれる。
【００３４】
また、撮影画像６０には、対象領域６２が設定される。ユーザは、対象領域６２内に現実空間５０の所与の物体（被写体）が含まれるように、現実空間５０を撮影することを目指す。即ち、対象領域６２は、被写体の撮影位置（撮影画像６０における表示位置）を、ユーザに案内するためのものである。本実施形態においては、ユーザは、対象領域６２内に木５４が撮影されるように（位置するように）、ＣＭＯＳカメラ４０の撮影範囲を変更する。
【００３５】
本実施形態においては、対象領域６２が長方形である場合を説明する。また、本実施形態においては、対象領域６２が、撮影画像６０の中心点と左端部（例えば、Ｙｓ軸）との間の所定位置に配置される場合を説明する。例えば、図３に示すように、撮影画像６０の左上端点を原点Ｏｓとする平面座標系（スクリーン座標系）の位置Ｐ１（Ｘ１，０）と、位置Ｐ２（Ｘ２，Ｙ２）と、を対角線とする長方形内の領域が、対象領域６２として設定される（例えば、０＜Ｘ１＜Ｘ２，０＜Ｙ２）。
【００３６】
なお、ユーザによる撮影指示操作が行われる前にＣＭＯＳカメラ４０により生成される撮影前画像において、対象領域６２内の画像が、対象領域６２外の画像よりも輝度が低く設定されるようにしてもよい。即ち、対象領域６２内に撮影される物体と、対象領域６２外に撮影される物体と、の表示形態を異ならしめることによって、ユーザに対象領域６２が案内されるようにしてもよい。
【００３７】
上記のように、対象領域６２内に木５４が含まれるようにＣＭＯＳカメラ４０の撮影範囲が設定された場合、ユーザは、タッチパネル２６ｂや操作キー部３６を用いて所与の撮影指示操作を行う。ユーザが撮影指示操作を行うと、撮影画像６０が取得される。そして、当該撮影画像６０に基づいて、現実空間５０を模した仮想空間が主記憶１８に構築される。仮想空間には、現実空間５０の物体を示すオブジェクトと、現実空間５０に合成させる合成対象を示すオブジェクトと、が配置される。
【００３８】
図４は、主記憶１８に構築される仮想空間の一例を示す図である。図４に示すように、仮想空間７０には、互いに直交する３軸（Ｘｗ軸−Ｙｗ軸−Ｚｗ軸）が設定される。仮想空間７０に配置される各オブジェクト及び仮想カメラ７２の位置は、３次元座標によって特定される。
【００３９】
例えば、仮想空間７０に配置されるオブジェクトのうち、仮想カメラ７２の視野内のオブジェクトが第１液晶表示部２６ａ又は第２液晶表示部２８に表示される。仮想カメラ７２の視野は、仮想カメラ７２に設定される位置、視線方向Ｖ、及び画角に基づいて定まる。
【００４０】
仮想空間７０には、対象領域６２外に撮影された現実空間５０の物体（以降、単に背景という。）を示す背景オブジェクト７４と、対象領域６２内に撮影された現実空間５０の物体（以降、単に被写体という。）を示す被写体オブジェクト７６と、が配置される。詳細は後述するが、背景オブジェクト７４の表面には、撮影画像６０のうち対象領域６２外の画像が描かれる。被写体オブジェクト７６の表面には、撮影画像６０のうち対象領域６２内の画像が描かれる。
【００４１】
また、仮想空間７０には、合成対象を示すオブジェクトであるキャラクタ７８が配置される。図４に示すように、キャラクタ７８は、背景オブジェクト７４と被写体オブジェクト７６との間に配置される。例えば、キャラクタ７８と仮想カメラ７２との間にある被写体オブジェクト７６の表面には木５４が描かれているので、現実空間５０の木５４の陰（裏側）からキャラクタ７８が現れるような仮想空間画像が表示される。
【００４２】
図５は、仮想空間画像の一例を示す図である。例えば、仮想空間画像６４においては、木５４の陰（裏側）からキャラクタ７８が出現してユーザに駆け寄ってくるように表示制御が行われる。即ち、キャラクタ７８が、現実空間５０の木５４と壁５６との間に立っているかのように表示制御が行われる。図４に示すように、仮想カメラ７２から見て、キャラクタ７８の一部は、被写体オブジェクト７６に隠れているので、キャラクタ７８のうち、木５４に隠れている部位（例えば、キャラクタの下半身）は、仮想空間画像６４に表示されない。
【００４３】
このように、ゲーム装置１０は、リアリティの高い拡張現実をユーザに提供する。更に、本実施形態のゲーム装置１０は、例えば、ＰＴＡＭ等に比べて簡易な処理により処理負荷を軽減しつつ、拡張現実のリアリティを高める構成になっている。以下、この技術について詳細に説明する。
【００４４】
［１−３．ゲーム装置において実現される機能］
図６は、ゲーム装置１０で実現される機能を示す機能ブロック図である。図６に示すように、ゲーム装置１０は、拡張現実データ記憶部８０、画像取得部８２、対象領域設定部８４、案内部８６、表示制御部８８、背景オブジェクト配置部９０、被写体オブジェクト配置部９２、及び合成対象オブジェクト配置部９４を含む。これら各機能は、例えば、制御部１４が記憶部１６に記憶されたプログラムを実行することによって実現される。
【００４５】
［１−３−１．拡張現実データ記憶部］
拡張現実データ記憶部８０は、記憶部１６及び主記憶１８を主として実現される。拡張現実データ記憶部８０は、ユーザに拡張現実を提供するために必要なデータを記憶する。例えば、拡張現実データ記憶部８０は、画像取得部８２により取得される撮影画像６０の画像データを記憶する。
【００４６】
また、拡張現実データ記憶部８０は、仮想空間７０の様子を示す仮想空間データを記憶する。仮想空間データには、仮想空間７０に配置されたオブジェクトの位置や姿勢を示すデータ、仮想カメラ７２の設定内容（例えば、位置、視線方向Ｖ、及び画角）を示すデータが格納される。
【００４７】
また例えば、拡張現実データ記憶部８０は、撮影画像６０に設定されている対象領域６２を識別するためのデータを記憶する。対象領域６２を識別するためのデータとしては、撮影画像６０に設定されている対象領域６２の種別を識別する情報、又は、対象領域６２の位置及び形状を示す情報が記憶される。
【００４８】
例えば、撮影画像６０の各画素うち、対象領域６２に含まれる画素の位置（例えば、対象領域６２の左上の画素と右下の画素の位置）を示す情報が記憶される。対象領域６２は、例えば、予め用意された複数の対象領域６２の何れかが設定される。
【００４９】
なお、制御部１４は、拡張現実データ記憶部８０に記憶される各種データを取得する手段として機能する。制御部１４は、拡張現実データ記憶部８０に記憶される各種データを変更（更新）する手段として機能する。
【００５０】
また、拡張現実データ記憶部８０に記憶されるデータは、上記の例に限られない。他にも例えば、キャラクタ７８の動作を定義したモーションデータや、キャラクタ７８の外観を示すテクスチャデータ、被写体オブジェクト７６及び背景オブジェクト７４にマッピングされる画像のマッピング位置を定義したデータ等が記憶されていてもよい。
【００５１】
他にも例えば、対象領域６２の種別を識別する情報と、対象領域６２の形状及び位置を示す情報と、が関連付けられて記憶されるようにしてもよい。この場合、例えば、ユーザにより指定された対象領域６２が撮影画像６０に設定される。例えば、複数の対象領域６２のうち、ユーザにより指定された種別の対象領域６２に関連付けられた形状及び位置の対象領域６２が撮影画像６０に設定される。
【００５２】
［１−３−２．画像取得部］
画像取得部８２は、制御部１４を主として実現される。画像取得部８２は、現実空間５０を撮影する撮影手段（例えば、ＣＭＯＳカメラ４０）から現実空間５０の撮影画像６０を取得する。画像取得部８２は、ＣＭＯＳカメラ４０の検出信号に基づいて生成される撮影画像６０を取得する。
【００５３】
ＣＭＯＳカメラ４０の撮影範囲は、ユーザの操作により変化する。例えば、ユーザがＣＭＯＳカメラ４０の姿勢を変化させて、ＣＭＯＳカメラ４０の位置及び視線方向Ｖを変化させることによって、ＣＭＯＳカメラ４０の撮影範囲を変化させる。
【００５４】
例えば、画像取得部８２は、ユーザにより撮影指示操作が行われた場合に、撮影手段（例えば、ＣＭＯＳカメラ４０）から撮影画像６０を取得する。本実施形態においては、画像取得部８２は、対象領域６２がユーザに案内された後、ユーザにより撮影指示操作が行われた場合、撮影手段（例えば、ＣＭＯＳカメラ４０）から撮影画像６０を取得する場合を説明する。
【００５５】
［１−３−３．対象領域設定部］
対象領域設定部８４は、制御部１４を主として実現される。対象領域設定部８４は、撮影画像６０に対象領域６２を設定する。対象領域設定部８４は、拡張現実データ記憶部８０に記憶された対象領域８２を識別する情報に基づいて、撮影画像６０に対象領域６２を設定する。例えば、対象領域設定部８４は、複数の対象領域８２のうち、ユーザに指定された対象領域８２を、撮影画像６０に設定する。対象領域設定部８４により設定された対象領域６２を示す情報は、拡張現実データ記憶部８０に記憶される。
【００５６】
［１−３−４．案内部］
案内部８６は、制御部１４及び第１液晶表示部２６ａ又は第２液晶表示部２８を主として実現される。案内部８６は、ユーザによる撮影指示操作が行われる前において撮影手段（例えば、ＣＭＯＳカメラ４０）から取得される、現実空間５０を示す撮影前画像を表示手段（例えば、第２液晶表示部２８）に表示させ、撮影前画像において、撮影画像６０に設定される対象領域６２をユーザに案内する。
【００５７】
案内部８６は、例えば、第２液晶表示部２８に表示される撮影前画像のうち、対象領域６２内の画像の表示形態と、対象領域６２外の画像の表示形態と、を異ならしめることによって、ユーザに対象領域６２を案内する。例えば、案内部８６は、撮影前画像のうち、対象領域６２内の画像又は対象領域６２外の画像に所与のエフェクト処理を施すことによって、ユーザに対象領域６２を案内する。
【００５８】
なお、対象領域６２は、他の方法によってユーザに案内されるようにしてもよい。他にも例えば、対象領域６２は、所与の指標が表示されることによってユーザに案内されるようにしてもよいし、所与の音声が出力されることによってユーザに案内されるようにしてもよい。
【００５９】
［１−３−５．表示制御部］
表示制御部８８は、制御部１４を主として実現される。表示制御部８８は、仮想空間７０を所与の視点（例えば、仮想カメラ７２）から見た様子を示す仮想空間画像６４を表示手段（例えば、第２液晶表示部２８）に表示させる。
【００６０】
図７は、仮想空間画像６４の表示方法を説明するための図である。図７に示すように、仮想空間７０のうち、仮想カメラ７２の視野を所与のニアクリップＮとファークリップＦで切り取った視錘台内の空間が、仮想空間画像６４に表示される。例えば、仮想カメラ７２の視野のうちニアクリップＮとファークリップＦとで挟まれた空間内のオブジェクトに、所与の座標変換処理が実行されることによって、仮想空間画像６４が表示される。
【００６１】
仮想カメラ７２とニアクリップＮ及びファークリップＦとの位置関係は、予め設定されている。例えば、ニアクリップＮの中心点Ｎ０及び端点Ｎ１〜Ｎ４と仮想カメラ７２との位置関係を示すデータ（例えば、仮想カメラ７２とニアクリップＮとの距離）、及び、ファークリップＦの中心点Ｆ０及び端点Ｆ１〜Ｆ４と仮想カメラ７２との位置関係を示すデータ（例えば、仮想カメラ７２とファークリップＦとの距離）が予め記憶されている。
【００６２】
［１−３−６．背景オブジェクト配置部］
背景オブジェクト配置部９０は、制御部１４を主として実現される。背景オブジェクト配置部９０は、撮影画像６０の対象領域６２外に撮影された背景（例えば、地面５２や壁５６）を示す背景オブジェクト７４を仮想空間７０に配置する。背景オブジェクト７４は、仮想カメラ７２の視野内の所定位置に配置される。例えば、仮想空間画像６４における背景オブジェクト７４の表示位置と、撮影画像６０における対象領域６２外の位置と、が対応するように、背景オブジェクト７４が配置される。
【００６３】
本実施形態においては、背景オブジェクト７４は、例えば、仮想カメラ７２の視野を仮想カメラ７２の視線方向Ｖに略直交する平面で切断した切断面に基づいて生成される場合を説明する。例えば、図７に示すように、仮想カメラ７２の視錘台を、仮想カメラ７２の視線方向Ｖに垂直な平面（視線方向Ｖを垂線方向とする平面）で切り取った切断面と、背景オブジェクト７４の表面と、は略一致する。
【００６４】
例えば、背景オブジェクト７４は、仮想カメラ７２との距離が距離Ｄ１（例えば、仮想カメラ７２とニアクリップＮとの距離＜距離Ｄ１≦仮想カメラ７２とファークリップＦとの距離）となる位置に配置される。例えば、背景オブジェクト７４の表面は、ニアクリップＮ及びファークリップＦと平行になるように配置される。
【００６５】
上記のように配置される背景オブジェクト７４の表面には、撮影画像６０のうち対象領域６２外の画像（以降、背景画像６０ａという。）に基づいて、現実空間５０の様子が描画される。
【００６６】
図８は、背景画像６０ａの一例を示す図である。図８に示すように、背景画像６０ａは、撮影画像６０から対象領域６２内の画像（以降、被写体画像６０ｂという。）を除いた画像である。別の言い方をすれば、背景画像６０ａは、撮影画像６０と被写体画像６０ｂとの差分画像である。
【００６７】
背景オブジェクト７４の各点は、背景画像６０ａの各点と関連付けられており、背景オブジェクト７４の表面に背景画像６０ａがマッピングされる。即ち、背景画像６０ａは、背景オブジェクト７４のテクスチャとして使用される。別の言い方をすれば、背景オブジェクト７４には、背景画像６０ａに基づいて、現実空間５０の背景が描画される。
【００６８】
上記のように、背景オブジェクト７４が、背景画像６０ａと同じように仮想空間画像６４に表示されるように、背景オブジェクト７４の形状及び位置が決定される。別の言い方をすれば、ＣＭＯＳカメラ４０と背景画像６０ａに撮影された現実空間５０の背景との位置関係と、仮想カメラ７２と背景オブジェクト７４に描かれた現実空間５０の背景との位置関係と、が対応するように、背景オブジェクト７４が配置される。
【００６９】
［１−３−７．被写体オブジェクト配置部］
被写体オブジェクト配置部９２は、制御部１４を主として実現される。被写体オブジェクト配置部９２は、撮影画像６０の対象領域６２内に撮影された被写体を示す被写体オブジェクト７６を仮想空間７０に配置する手段である。被写体オブジェクト配置部９２は、仮想空間画像６４において被写体オブジェクト７６が背景オブジェクト７４に重畳表示される位置と、撮影画像６０における対象領域６２の位置と、が対応するように、被写体オブジェクト７６を、視点（例えば、仮想カメラ７２）と背景オブジェクト７４との間に配置する。
【００７０】
図９は、被写体オブジェクト７６の配置方法を説明するための図である。図９に示すように、例えば、背景オブジェクト７４の表面のうち撮影画像６０の対象領域６２に対応する領域（対象領域６２の部分がマッピングされた領域）を底面とし仮想カメラ７２の位置を頂点とする錐体Ｃを、仮想カメラ７２の視線方向Ｖに略直交する平面で切断した切断面に基づいて生成される。
【００７１】
即ち、背景オブジェクト７４の表面に背景画像６０ａがマッピングされた場合の対象領域６２を底面とし、仮想カメラ７２の位置を頂点とする錐体Ｃを、仮想カメラ７２の視線方向Ｖに垂直な平面（ただし、ニアクリップＮと背景オブジェクト７４との間の平面）で切り取った切断面と、被写体オブジェクト７６の表面と、が略一致するように、被写体オブジェクト７６の形状及び位置が決定される。
【００７２】
被写体オブジェクト配置部９２は、被写体画像６０ｂに基づいて、上記のように配置される被写体オブジェクト７６の表面に、現実空間５０の様子を描画する。
【００７３】
図１０は、被写体画像６０ｂの一例を示す図である。図１０に示すように、被写体画像６０ｂは、撮影画像６０から対象領域６２の画素が切り出されることによって生成される画像である。
【００７４】
例えば、被写体オブジェクト７６の各点は、被写体画像６０ｂの各点と関連付けられており、被写体オブジェクト７６の表面に被写体画像６０ｂがマッピングされる。即ち、被写体画像６０ｂは、被写体オブジェクト７６のテクスチャとして使用される。別の言い方をすれば、被写体オブジェクト７６には、被写体画像６０ｂに基づいて、対象領域６２内に撮影された現実空間の被写体が描画される。
【００７５】
上記のように、例えば、仮想空間画像６４における被写体オブジェクト７６の表示位置と、撮影画像６０における対象領域６２の位置と、が対応するように、被写体オブジェクト７６の位置が設定される。別の言い方をすれば、撮影画像６０の中心点と対象領域６２との位置関係と、仮想カメラ７２の注視点と被写体オブジェクト７６との位置関係と、が対応するように、被写体オブジェクト７６が配置される。なお、背景オブジェクト７４と被写体オブジェクト７６との位置関係は、撮影画像６０と対象領域６２との位置関係に対応しているともいえる。
【００７６】
［１−３−８．合成対象オブジェクト配置部］
合成対象オブジェクト配置部９４は、仮想空間画像６４において現実空間５０と合成して表示させる合成対象を示す合成対象オブジェクト（例えば、キャラクタ７８）を、背景オブジェクト７４と被写体オブジェクト７６との間に配置する。
【００７７】
本実施形態においては、キャラクタ７８は、被写体オブジェクト７６よりも仮想カメラ７２から遠い位置に配置される。つまり、キャラクタ７８と仮想カメラ７２との間隔は、被写体オブジェクト７６と仮想カメラ７２との間隔よりも長い。別の言い方をすれば、仮想カメラ７２からキャラクタ７８を見た場合にキャラクタ７８の一部が被写体オブジェクト７６に隠れるように、キャラクタ７８と仮想カメラ７２との間に、被写体オブジェクト７６が配置される。
【００７８】
キャラクタ７８は、例えば、所与のモーションデータに定義された動作をする。例えば、キャラクタ７８は、仮想空間７０内を移動する。例えば、キャラクタ７８は、仮想カメラ７２に向かって移動したり、被写体オブジェクト７６の周囲を回るように移動する。他にも例えば、キャラクタ７８は、仮想カメラ７２の視野外に出たり視野内に戻ったりするようにしてもよい。
【００７９】
表示制御部８８は、仮想空間画像６４において、合成対象オブジェクト（例えば、キャラクタ７８）を背景オブジェクト７４に重畳表示させ、かつ、被写体オブジェクト７６を合成対象オブジェクト（例えば、キャラクタ７８）に重畳表示させる。
【００８０】
表示制御部８８は、キャラクタ７８が、撮影画像６０の対象領域６２内に撮影された被写体と、撮影画像６０の対象領域６２外に撮影された背景と、の間に位置しているように、仮想空間画像６４の表示制御を行う。即ち、表示制御部８８は、キャラクタ７８の一部が、被写体オブジェクト７６に隠れるように表示制御を行う。
【００８１】
［１−４．ゲーム装置において実行される処理］
次に、ゲーム装置１０が実行する処理について説明する。図１１及び図１２は、ゲーム装置１０が実行する処理のうちの、本発明に関連する処理を主に示すフロー図である。制御部１４は、例えば、記憶部１６及びゲームメモリカード４４に記憶されるプログラムに従って、図１１及び図１２に示す処理を実行する。図１１及び図１２に示す処理は、ユーザにより所与の操作が行われた場合に実行される。例えば、図示しないメニュー画面から、拡張現実が提供されるためのボタンが選択された場合に、以下に説明する処理が実行される。
【００８２】
図１１に示すように、まず、制御部１４は、ＣＭＯＳカメラ４０を起動して、ＣＭＯＳカメラ４０の検出信号に基づいて生成される撮影前画像を第２液晶表示部２８に表示させる（Ｓ１）。制御部１４は、記憶部１６又はゲームメモリカード４４に記憶された対象領域６２の位置及び形状を示すデータを参照し、撮影前画像のうち、対象領域６２内の画素の輝度を対象領域６２外の画素の輝度よりも低く表示させることによって、対象領域６２をユーザに案内する（Ｓ２）。なお、Ｓ２において案内される対象領域６２は、撮影画像６０に設定される対象領域６２であり、例えば、予めユーザに指定された対象領域６２が案内されるようにしてもよい。
【００８３】
制御部１４は、ユーザから撮影指示操作が入力されたか否かを判定する（Ｓ３）。撮影指示操作が入力されない場合（Ｓ３；Ｎ）、処理はＳ１に戻る。この場合、ユーザはゲーム装置１０の姿勢を変更することによって、ＣＭＯＳカメラ４０の撮影範囲を変更する。例えば、ユーザは、対象領域６２内に木５４が含まれるように撮影範囲を変更する。
【００８４】
撮影指示操作が入力された場合（Ｓ３；Ｙ）、制御部１４は、撮影画像６０の画像データを一時的に主記憶１８に記憶させる（Ｓ４）。即ち、ユーザにより撮影指示操作が入力された場合にＣＭＯＳカメラ４０の検出信号に基づいて生成された撮影画像６０の画像データが、主記憶１８に記憶される。当該生成された撮影画像６０には、Ｓ２において案内された対象領域６２が設定される。
【００８５】
制御部１４は、主記憶１８に仮想空間７０を構築する（Ｓ５）。Ｓ５においては、例えば、３軸が設定されて、仮想カメラ７２が所与の位置に配置される。仮想カメラ７２の位置、視線方向Ｖ、及び画角は、予め定められた値が設定されるようにしてもよい。
【００８６】
制御部１４は、背景オブジェクト７４を、仮想カメラ７２の視野内の所与の位置に配置する（Ｓ６）。例えば、仮想カメラ７２の視錘台を、ニアクリップＮとファークリップＦに平行な平面で切断した切断面に基づいて、背景オブジェクト７４が配置される。
【００８７】
制御部１４は、主記憶１８に記憶された撮影画像６０のうち、対象領域６２外の背景画像６０ａを抽出する（Ｓ７）。例えば、対象領域６２の位置及び形状を示す情報が参照され、撮影画像６０から対象領域６２外の背景画像６０ａが切り出される。Ｓ７において抽出された背景画像６０ａを示す画像データは、主記憶１８に一時的に記憶される。
【００８８】
なお、撮影画像６０がそのまま背景オブジェクト７４にマッピングされたとしても、対象領域６２がマッピングされている箇所を仮想カメラ７２から見た場合、当該箇所は被写体オブジェクト７６に隠れて表示されないので、Ｓ７においては、撮影画像６０をそのまま背景オブジェクト７４にマッピングするようにしてもよい。
【００８９】
制御部１４は、Ｓ６において配置された背景オブジェクト７４に、Ｓ７において抽出された背景画像６０ａをマッピングする（Ｓ８）。Ｓ８においては、背景画像６０ａのマッピング位置を示すデータが参照されることによって、背景画像６０ａのマッピングが行われる。
【００９０】
図１２に移り、制御部１４は、被写体オブジェクト７６を、仮想カメラ７２と背景オブジェクト７４との間に配置する（Ｓ９）。Ｓ９においては、例えば、背景オブジェクト７４に描かれた対象領域６２を底面とし、仮想カメラ７２を頂点とする錐体の切断面に基づいて、被写体オブジェクト７６が配置される。別の言い方をすれば、仮想カメラ７２を基準（光源）として被写体オブジェクト７６を射影した場合、背景オブジェクト７４の表面に表れる被写体オブジェクト７６の影と、背景オブジェクト７４の表面における対象領域６２と、が略一致するように、被写体オブジェクト７６が配置される。
【００９１】
制御部１４は、主記憶１８に記憶された撮影画像６０のうち、対象領域６２内の被写体画像６０ｂを抽出する（Ｓ１０）。例えば、対象領域６２の位置及び形状を示す情報が参照され、撮影画像６０から対象領域６２内の被写体画像６０ｂが切り出される。Ｓ１０において抽出された被写体画像６０ｂを示す画像データは、主記憶１８に一時的に記憶される。
【００９２】
制御部１４は、Ｓ９において配置された被写体オブジェクト７６に、Ｓ１０において抽出された被写体画像６０ｂをマッピングする（Ｓ１１）。Ｓ１１においては、被写体画像６０ｂのマッピング位置を示すデータが参照されることによって、被写体画像６０ｂのマッピングが行われる。
【００９３】
制御部１４は、モーションデータを参照し、キャラクタ７８を仮想空間７０に配置する（Ｓ１２）。例えば、キャラクタ７８は、被写体オブジェクト７６と背景オブジェクト７４との間に配置される。キャラクタ７８は、モーションデータに基づいて所与の動作をする。
【００９４】
制御部１４は、仮想カメラ７２から仮想空間７０を見た様子を示す仮想空間画像６４を第２液晶表示部２８に表示させる（Ｓ１３）。Ｓ１３においては、例えば、キャラクタ７８が木５４の陰から表れるように仮想空間画像６４の表示制御が実行される。
【００９５】
制御部１４は、終了条件を満たすか否かを判定する（Ｓ１４）。終了条件は、本処理を終了させるために予め定められた条件であればよく、例えば、モーションデータの再生が終了したか否かを示す条件である。
【００９６】
終了条件を満たす場合（Ｓ１４；Ｙ）、制御部１４は、本処理を終了する。終了条件を満たさない場合（Ｓ１４；Ｎ）、処理はＳ１２に戻り、モーションデータの再生が継続される。
【００９７】
以上説明したゲーム装置１０によれば、撮影画像６０に設定される対象領域６２に基づいて、架空のキャラクタ７８が現実空間５０を自在に移動するような仮想空間画像６４を表示させることができるので、ユーザが感じるリアリティが向上する。例えば、ユーザは、現実空間５０においてキャラクタ７８と一緒に遊んでいるかのような感覚を得ることができる。
【００９８】
また、背景オブジェクト７４と被写体オブジェクト７６とを用いることによって、現実空間５０を模した仮想空間７０を疑似的に生成することができるので、例えば、ＰＴＡＭ技術等に比べて簡易な処理内容で、木５４と壁５６の間からキャラクタ７８が表れるような表示制御処理を実行することができる。
【００９９】
したがって、ゲーム装置１０の処理負荷を軽減しつつ、リアリティの高い拡張現実をユーザに提供することができる。また、対象領域６２をユーザに案内してからユーザに撮影指示操作を行わせることによって、ユーザは、対象領域６２に被写体を撮影することができる。ユーザは、案内された対象領域６２に合わせて被写体を撮影するだけでよいので、特段の専門知識を要することなく手軽に拡張現実を体験することができる。
【０１００】
［２．変形例］
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０１０１】
（１）例えば、現実空間５０に配置されている木５４には、比較的太いものもあれば細いものもある。したがって、対象領域６２に木５４が収まりきらない場合もあり、対象領域６２の幅が木５４の幅よりも広すぎる場合もある。そこで、ユーザの操作によって対象領域６２の形状又は位置が変更されるようにしてもよい。例えば、ユーザは、予め用意された複数の対象領域６２の中から、撮影画像６０に設定する対象領域６２を選択するようにしてもよいし、撮影画像６０に設定されている対象領域６２の形状又は位置の変更操作を行ってもよい。
【０１０２】
変形例（１）のゲーム装置１０は、撮影画像６０に設定される対象領域６２の形状又は位置の変更指示操作をユーザが行うための手段を含む。当該手段は、タッチパネル２６ｂ又は操作キー部３６を主として実現される。例えば、制御部１４が、所与の操作信号を取得することによって、対象領域６２の変更指示操作が検出される。例えば、対象領域６２の変更指示操作は、複数の対象領域６２の何れかをユーザが指定する操作、又は、現在設定されている対象領域６２の形状又は位置の変更をユーザが指示する操作である。
【０１０３】
また、ゲーム装置１０は、ユーザにより変更指示操作が行われた場合、当該変更指示操作に基づいて対象領域６２を変更する手段を含む。当該手段は、制御部１４を主として実現される。例えば、複数の対象領域６２のうちユーザにより指定された対象領域６２が撮影画像６０に設定される、又は、ユーザによる変更指示操作に基づいて対象領域６２の形状又は位置が変更される。
【０１０４】
例えば、変形例（１）の拡張現実データ記憶部８０は、予め用意された対象領域６２の種別と、当該対象領域６２の形状又は位置を示すデータと、を関連付けて記憶する。又は、拡張現実データ記憶部８０は、ユーザによる変更指示操作と、対象領域６２の形状又は位置の変更方法を示すデータと、を関連付けて記憶する。ユーザにより変更指示操作が行われた場合、拡張現実データ記憶部８０の記憶内容が参照されることによって、変更後の対象領域６２の形状又は位置が特定される。
【０１０５】
図１３は、ユーザにより形状及び位置が変更された対象領域６２を示す図である。例えば、図３に示す長方形の対象領域６２が、図１３に示すような楕円形の対象領域６２に変更される。この状態では、例えば、ユーザは、現実空間５０に配置された机５８を対象領域６２内に撮影することを目指す。ユーザにより、対象領域６２内に机５８が撮影されると、仮想空間７０には、楕円形の対象領域６２に対応する被写体オブジェクト７６が配置される。
【０１０６】
変形例（１）の被写体オブジェクト配置部９２は、変更された対象領域６２の形状又は位置に基づいて、被写体オブジェクト７６の形状又は位置を決定する。被写体オブジェクト７６の設定方法は、実施形態と同様である。即ち、仮想空間画像６４における被写体オブジェクト７６の形状及び位置が、撮影画像６０における対象領域６２の形状及び位置に対応するように、被写体オブジェクト７６の形状又は位置が決定される。例えば、背景オブジェクト７４の表面における対象領域６２を底面とし、仮想カメラ７２を頂点とする錐体（上記の場合は楕円錐）を、仮想カメラ７２の視線方向Ｖと垂直な平面で切断した切断面に基づいて、被写体オブジェクト７６が設定される。
【０１０７】
また、変形例（１）の合成対象オブジェクト配置部９４は、視点（例えば、仮想カメラ７２）から見て、合成対象オブジェクト（例えば、キャラクタ７８）の全部又は一部が、被写体オブジェクト７６に隠れるように、合成対象オブジェクトの位置又は動作を決定する。
【０１０８】
例えば、キャラクタ７８が、仮想カメラ７２から見て、背景オブジェクト７４と被写体オブジェクト７６との間に配置されるように、キャラクタ７８の位置又は動作が決定される。例えば、モーションデータの再生開始時のキャラクタ７８の位置が、背景オブジェクト７４と被写体オブジェクト７６との間になるように、キャラクタ７８の位置が決定差される。また例えば、複数のモーションデータを用意しておき、これら複数のモーションデータのうち、キャラクタ７８の位置が背景オブジェクト７４と被写体オブジェクト７６との間になる動作を定義したモーションデータが抽出され、当該モーションデータが再生される。
【０１０９】
変形例（１）によれば、ユーザは、現実空間５０に配置された物体の配置状況に応じて、対象領域６２を変更することができる。例えば、木５４が対象領域６２に対して細い場合には、対象領域６２の幅を細くすることができるので、ゲーム装置１０は、現実空間５０に応じた最適な拡張現実をユーザに提供することができる。
【０１１０】
（２）また例えば、仮想カメラ７２から見てキャラクタ７８が被写体オブジェクト７６に隠れている場合、当該隠れている箇所の一部分のみを仮想空間画像６４に表示させるようにしてもよい。
【０１１１】
図１４は、変形例（２）において表示される仮想空間画像６４の一例を示す図である。図１４に示すように、キャラクタ７８が、ユーザから見て机５８の奥側に座っているように、仮想空間画像６４が表示される。キャラクタ７８のうち、机５８に隠れている部分（例えば、キャラクタ７８の胴体）は表示されない。一方、キャラクタ７８のうち、机５８に隠れていない部分（例えば、キャラクタ７８の足）は、表示される。
【０１１２】
上記のような表示制御を実現するために、変形例（２）における被写体オブジェクト７６は、半透明ポリゴンを含んで構成される。半透明ポリゴンは、透過度（いわゆるアルファ値）が設定され、例えば、表面に描かれたテクスチャを透過させる。
【０１１３】
例えば、表示制御部８８は、被写体オブジェクト７６のうち、対象領域６２内の所定領域（例えば、下半分）に撮影された部分を示す半透明ポリゴンの透過度を透過させる。対象領域６２の所定領域は、予め定められた対象領域６２の一部分であり、例えば、サービス提供者が、被写体ではなく背景が撮影されると想定する領域である。例えば、対象領域６２の所定領域は、机５８ではなく、地面５２が撮影されると想定される領域である。
【０１１４】
図１５は、変形例（２）における仮想空間７０を示す図である。例えば、図１５に示すように、仮想空間７０には、楕円形の被写体オブジェクト７６が配置される。キャラクタ７８は、座位姿勢で配置される。仮想カメラ７２からキャラクタ７８を見た場合、キャラクタ７８の首から下の部位は、被写体オブジェクト７６に隠れる。即ち、被写体オブジェクト７６が半透明ポリゴンでない場合、被写体オブジェクト７６は透過しないので、キャラクタ７８の首から下の部位は、仮想空間画像６４に表示されない。
【０１１５】
そこで、変形例（２）の表示制御部８８は、合成対象オブジェクト（例えば、キャラクタ７８）のうち、視点（例えば、仮想カメラ７２）から見て透過された半透明ポリゴンが重畳する部分を、仮想空間画像６４において表示させる。図１５に示す場合、楕円形の被写体オブジェクト７６の上側は透過しないように設定され、下側（図１５に示す斜線領域７６ａ）は透過するように設定される。被写体オブジェクト７６に設定される透過度を示す情報は、予め拡張現実データ記憶部８０に記憶されるようにしてもよいし、ユーザの操作入力に基づいて設定されるようにしてもよい。
【０１１６】
変形例（２）によれば、例えば、図１５に示すように、机５８の奥に座るキャラクタ７８の足だけが見えるような表示制御を行うことができるので、拡張現実のリアリティを更に向上させることができる。
【０１１７】
（３）また例えば、実施形態においては、長方形の対象領域６２が設定される場合を説明したが、変形例（１）及び変形例（２）のように、他の対象領域６２が撮影画像６０に設定されるようにしてもよい。この場合、キャラクタ７８は、撮影画像６０に設定された対象領域６２に基づいて生成される仮想空間７０に応じた動作をするようにしてもよい。
【０１１８】
変形例（３）の拡張現実データ記憶部８０は、仮想空間７０（例えば、対象領域６２の種別、形状、又は位置を識別する情報）と、合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する場合を説明する。即ち、撮影画像６０に設定された対象領域６２に基づいて生成される仮想空間７０に応じてキャラクタ７８が異なる動作をするように、モーションデータが定義されている。
【０１１９】
図１６は、モーションデータのデータ格納例を示す図である。図１６に示すように、仮想空間７０を識別する情報としては、対象領域６２の種別を示す情報や、対象領域６２の位置又は形状を示す情報が格納される。図１６に示す複数の対象領域６２の何れかが、撮影画像６０に設定される。
【０１２０】
図１６に示すモーションデータは、キャラクタ７８の時系列的な位置変化を定義したデータである。例えば、モーションデータとしては、キャラクタ７８のポリゴンの頂点位置の変化を定義したデータが格納される。具体的には、キャラクタ７８に設定されるスケルトンの位置変化と、当該変化するスケルトンの位置とポリゴンの頂点位置との位置関係と、を示すデータが、モーションデータとして格納される。
【０１２１】
例えば、縦長の対象領域６２に基づいて生成される仮想空間７０に関連付けられたモーションデータは、被写体の陰からキャラクタ７８が駆け寄ってくる動作が定義される。また例えば、横長の対象領域６２に基づいて生成される仮想空間７０に関連付けられたモーションデータは、被写体の奥にキャラクタ７８が腰掛ける動作が定義される。
【０１２２】
変形例（３）の合成対象オブジェクト配置部９４は、表示制御部８８により生成された仮想空間７０に関連付けられたモーションデータに基づいて、合成対象オブジェクト（例えば、キャラクタ７８）を仮想空間７０において動作させる。
【０１２３】
例えば、拡張現実データ記憶部８０の記憶内容が参照され、撮影画像６０に設定された対象領域６２を示す情報が参照される。例えば、撮影画像６０に設定されている対象領域６２の種別が特定される。そして、撮影画像６０に設定されている対象領域６２に基づいて生成される仮想空間７０に関連付けられたモーションデータに基づいて、仮想空間７０内のキャラクタ７８を動作させる。モーションデータが再生されることによって、仮想空間７０内でキャラクタ７８が動作する。
【０１２４】
変形例（３）によれば、仮想空間７０に応じた動作をキャラクタ７８に行わせることができる。したがって、多種多様な拡張現実をユーザに提供することができる。
【０１２５】
（４）また例えば、対象領域６２に撮影されるべき被写体が、ユーザに案内されるようにしてもよい。例えば、ユーザが対象領域６２に木５４を撮影すべき旨が案内されるようにしてもよい。この場合、対象領域６２に撮影されるべき被写体に応じた動作を、キャラクタ７８が行うようにしてもよい。即ち、対象領域６２に木５４が撮影されるべき場合と、対象領域６２に机５８が撮影されるべき場合と、でキャラクタ７８の動作が異なるようにしてもよい。
【０１２６】
変形例（４）のゲーム装置１０は、対象領域６２に撮影されるべき被写体をユーザに案内する手段を含む。例えば、当該手段は、案内部８６によって実現される。案内部８６は、撮影前画像に所与の指標を重畳させることによって、被写体をユーザに案内する。他にも例えば、音声によって被写体をユーザに案内するようにしてもよい。案内部８６が案内すべき被写体は、対象領域６２に応じて変化するようにしてもよい。また、案内部８６が案内している被写体を示す情報が、拡張現実データ記憶部８０に記憶されるようにしてもよい。
【０１２７】
変形例（４）の拡張現実データ記憶部８０は、被写体と、合成対象オブジェクトの動作を定義したモーションデータと、を関連付けて記憶する。被写体は、ユーザに案内される被写体であり、サービス提供者が予め定めた物体である。被写体に応じて対象領域６２の形状や位置が設定されているようにしてもよい。
【０１２８】
図１７は、被写体とモーションデータとの関連付けを示す図である。図１７に示すように、被写体を識別するための情報と、モーションデータと、が関連付けられて記憶される。図１７に示すデータにおいて定義された被写体の何れかが、ユーザに案内される。
【０１２９】
変形例（４）の合成対象オブジェクト配置部９４は、ユーザに案内された被写体に関連付けられたモーションデータに基づいて、合成対象オブジェクト（例えば、キャラクタ７８）を仮想空間７０において動作させる。例えば、合成対象オブジェクト配置部９４は、拡張現実データ記憶部８０の記憶内容を参照し、案内部８６によりユーザに案内されている被写体を特定する。当該特定された被写体に関連付けられたモーションデータに基づいて、キャラクタ７８が仮想空間７０で動作する。
【０１３０】
変形例（４）によれば、対象領域６２に撮影されるべき被写体に応じた動作をキャラクタ７８に行わせることができる。
【０１３１】
（５）また例えば、撮影画像６０に複数の対象領域６２が設定されるようにしてもよい。例えば、撮影画像６０に２つの対象領域６２が設定される場合、それぞれの対象領域６２内に撮影された現実空間５０の物体を示す被写体オブジェクト７６が、仮想空間７０に配置される。即ち、複数の被写体オブジェクト７６が、仮想空間７０に配置される。
【０１３２】
なお、これら複数の被写体オブジェクト７６の各々と、仮想カメラ７２と、の距離は、互いに異なっていてもよい。即ち、仮想カメラ７２から比較的離れた位置に配置されている被写体オブジェクト７６があってもよいし、当該被写体オブジェクト７６よりも仮想カメラ７２に近い被写体オブジェクト７６があってもよい。
【０１３３】
また例えば、撮影画像６０に複数の対象領域６２が設定される場合、当該複数の対象領域６２の組み合わせに応じてキャラクタ７８の動作が異なるようにしてもよい。この場合、例えば、対象領域６２の組み合わせと、モーションデータと、が関連付けられて記憶されるようにしてもよい。合成対象オブジェクト配置部９４は、撮影画像６０に設定されている対象領域６２の組み合わせに関連付けられたモーションデータに基づいて、キャラクタ７８を動作させる。
【０１３４】
（６）また例えば、被写体オブジェクト７６を配置する位置をユーザが指定できるようにしてもよい。例えば、仮想カメラ７２と被写体オブジェクト７６との距離をユーザが指定できるようにしてもよい。別の言い方をすれば、錐体Ｃの切断面の位置をユーザが指定できるようにしてもよい。このようにすることによって、現実空間５０に配置された被写体の奥行き（被写体とＣＭＯＳカメラ４０との距離）をユーザが指定することができる。
【０１３５】
（７）また例えば、キャラクタ７８がモーションデータに基づいて動作する場合を説明したが、キャラクタ７８は、ユーザによる操作に基づいて仮想空間７０内を動作するようにしてもよい。例えば、タッチパネル２６ｂ又は操作キー部３６の検出信号に基づいて、キャラクタ７８の位置や姿勢、移動方向が変更されるようにしてもよい。このようにすることによって、ユーザは、自分の操作に応じて、キャラクタ７８が現実空間５０に配置された物体に隠れたり出現したりする様子を味わうことができる。
【０１３６】
（８）また例えば、ユーザの操作に応じて、仮想空間７０に所与のオブジェクトを生成するようにしてもよい。例えば、ユーザが所与の操作を行うと、仮想空間７０に雪玉を示すオブジェクトが生成される。当該オブジェクトは、ユーザの操作に応じて、仮想空間７０を移動する。例えば、仮想空間７０内を動き回るキャラクタ７８に当該オブジェクトを接触させることをユーザが目指すゲーム（例えば、雪合戦ゲーム）が実行されるようにしてもよい。
【０１３７】
例えば、キャラクタ７８が被写体オブジェクト７６と背景オブジェクト７４との間に位置する場合には、雪玉を示すオブジェクトは被写体オブジェクト７６に接触する。したがって、ユーザは、キャラクタ７８が現実空間５０の木５４に隠れて、自分が投げた雪玉をやり過ごすような感覚を味わうことができる。
【０１３８】
（９）また例えば、実施形態においては、撮影画像６０が静止画である場合を説明したが、連続撮影された撮影画像６０からなる動画に基づいて、仮想空間７０が生成されるようにしてもよい。また例えば、ユーザが撮影開始操作を行った場合のＣＭＯＳカメラ４０の位置及び姿勢が記憶されるようにしてもよい。この場合、センサ部４２により検出されるＣＭＯＳカメラ４０の位置及び姿勢の変化に応じて、仮想カメラ７２の位置及び姿勢が制御されるようにしてもよい。
【０１３９】
（１０）また例えば、対象領域６２がユーザに案内された後に、ユーザが撮影指示操作を行う場合を説明したが、撮影画像６０が撮影された後に、ユーザによって対象領域６２が設定されるようにしてもよい。この場合、案内部８６は、ゲーム装置１０において実現されないようにしてもよい。例えば、ユーザは、撮影画像６０に設定したい対象領域６２をタッチペン等を用いて囲うことによって、対象領域６２を設定する。
【０１４０】
（１１）また例えば、実施形態においては、背景オブジェクト７４及び被写体オブジェクト７６が動的に生成される場合を説明したが、背景オブジェクト７４の形状及び位置と、被写体オブジェクト７６の形状及び位置と、を定義したデータが予め記憶されていてもよい。この場合、当該データは、対象領域６２毎に記憶されている。ユーザにより撮影画像６０が撮影された場合、当該撮影時に設定されている対象領域６２に関連付けられたデータに基づいて、背景オブジェクト７４及び被写体オブジェクト７６が仮想空間７０に配置される。
【０１４１】
（１２）また、合成対象オブジェクトは、キャラクタ７８に限られない。合成対象オブジェクトは、現実空間５０に合成させる合成対象を示すオブジェクトであればよく、他にも例えば、現実空間５０にはない架空の物体（例えば、架空の岩）が、合成対象オブジェクトとして仮想空間７０に配置されるようにしてもよい。
【０１４２】
（１３）また例えば、本発明は、実施形態や変形例において説明したゲーム装置１０以外の画像処理装置にも適用することができる。例えば、画像処理装置が携帯電話機によって実現される場合には、携帯電話機に備えられたカメラにより生成される撮影画像に基づいて拡張現実がユーザに提供されるようにしてもよい。
【符号の説明】
【０１４３】
１０  ゲーム装置、１２  携帯ゲーム機、１４  制御部、１６  記憶部、１８  主記憶、２０  画像処理部、２２  入出力処理部、２４  バス、２６  タッチスクリーン、２６ａ  第１液晶表示部、２６ｂ  タッチパネル、２８  第２液晶表示部、３０  メモリカードスロット、３２  音声処理部、３４  音声出力部、３６  操作キー部、３８  通信インタフェース、４０  ＣＭＯＳカメラ、４２  センサ部、４４  ゲームメモリカード、５０  現実空間、５２  地面、５４  木、５６  壁、５８  机、６０  撮影画像、６０ａ  背景画像、６０ｂ  被写体画像、６２  対象領域、６４  仮想空間画像、７０  仮想空間、７２  仮想カメラ、７４  背景オブジェクト、７６  被写体オブジェクト、７８  キャラクタ、８０  拡張現実データ記憶部、８２  画像取得部、８４  対象領域設定部、８６  案内部、８８  表示制御部、９０  背景オブジェクト配置部、９２  被写体オブジェクト配置部、９４  合成対象オブジェクト配置部、Ｎ  ニアクリップ、Ｆ  ファークリップ。
【図１】
0005145444.tif 000002
【図２】
0005145444.tif 000003
【図３】
0005145444.tif 000004
【図４】
0005145444.tif 000005
【図５】
0005145444.tif 000006
【図６】
0005145444.tif 000007
【図７】
0005145444.tif 000008
【図８】
0005145444.tif 000009
【図９】
0005145444.tif 000010
【図１０】
0005145444.tif 000011
【図１１】
0005145444.tif 000012
【図１２】
0005145444.tif 000013
【図１３】
0005145444.tif 000014
【図１４】
0005145444.tif 000015
【図１５】
0005145444.tif 000016
【図１６】
0005145444.tif 000017
【図１７】
0005145444.tif 000018