(57)【要約】【課題】視覚的な変化に富んだ拡張現実技術を提供する。【解決手段】情報処理システムは、コンピュータと、撮像装置と、表示装置と、現実空間に配置される第１の特徴及び第２の特徴と、を含み、コンピュータは、撮像装置によって撮像された現実空間の画像を取得する画像取得手段と、該画像から第１の特徴と第２の特徴とを検出する特徴検出手段と、第２の特徴に関連付けられている仮想オブジェクトを追加して第１の特徴の仮想オブジェクトの関連付けを変更し、第１の特徴に基づく位置に第１の特徴に関連付けられた仮想オブジェクトが配置された仮想空間の画像を生成する画像生成手段と、仮想空間の画像が現実空間に重畳されてユーザから視認されるように、前記表示装置に画像を表示させる表示制御手段と、を備える。【選択図】図１
2015079447.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
撮像装置によって撮像された現実空間の画像を取得する画像取得手段と、
前記画像から第１の特徴と第２の特徴とを検出する特徴検出手段と、
前記第２の特徴に関連付けられている仮想オブジェクトを追加して前記第１の特徴の仮想オブジェクトの関連付けを変更する変更手段と、
前記第１の特徴に基づいて前記第１の特徴に関連付けられた仮想オブジェクトが配置された前記仮想空間の画像を生成する画像生成手段と、
前記仮想空間の画像が現実空間に重畳されてユーザから視認されるように、表示装置に画像を表示させる表示制御手段と、
として機能させる情報処理プログラム。
【請求項２】
前記変更手段は、前記特徴検出手段によって、前記第１の特徴の検出が継続する一方、前記第２の特徴が検出されなくなった場合に、前記第１の特徴の仮想オブジェクトの関連付けの前記変更を維持する、
請求項１に記載の情報処理プログラム。
【請求項３】
前記変更手段は、前記特徴検出手段によって前記第１の特徴が所定時間検出されない場合に、前記第１の特徴の仮想オブジェクトの関連付けの前記変更をリセットする、
請求項１又は２に記載の情報処理プログラム。
【請求項４】
前記変更手段は、前記特徴検出手段による前記第２の特徴の検出が中断し、再開された場合には、前記第２の特徴に関連付けられている仮想オブジェクトを、さらに前記第１の特徴に関連付ける、
請求項１から３のいずれか一項に記載の情報処理プログラム。
【請求項５】
前記変更手段は、前記特徴手段による前記第２の特徴の検出が継続する間、所定周期で、前記第２の特徴に関連付けられている仮想オブジェクトを前記第１の特徴に関連付けられている仮想オブジェクトに追加する、
請求項１から３のいずれか一項に記載の情報処理プログラム。
【請求項６】
前記変更手段は、前記第２の特徴に関連付けられている仮想オブジェクトを前記第１の特徴に関連付けた後、前記第２の特徴と該仮想オブジェクトとの関連付けを削除する、
請求項１から３のいずれか一項に記載の情報処理プログラム。
【請求項７】
コンピュータを、
前記第１の特徴に新たに関連付けられた仮想オブジェクトを、前記第１の特徴に対応する所定の位置に移動するように動作を設定する設定手段としてさらに機能させる、
請求項１から６のいずれか一項に記載の情報処理プログラム。
【請求項８】
前記変更手段は、前記第１の特徴に予め関連付けられている第１の仮想オブジェクトに加え、前記第２の特徴に関連付けられている仮想オブジェクトを追加し、前記第１の特徴の仮想オブジェクトの関連付けを変更し、
前記画像生成手段は、第１の仮想オブジェクト及び前記仮想オブジェクトを前記第１の特徴に基づいて仮想空間に配置する、
請求項１から６のいずれか一項に記載の情報処理プログラム。
【請求項９】
撮像装置によって撮像された現実空間の画像を取得する画像取得手段と、
前記画像から第１の特徴と第２の特徴とを検出する特徴検出手段と、
前記第２の特徴に関連付けられている仮想オブジェクトを追加して前記第１の特徴の仮想オブジェクトの関連付けを変更する変更手段と、
前記第１の特徴に基づいて前記第１の特徴に関連付けられた仮想オブジェクトが配置された前記仮想空間の画像を生成する画像生成手段と、
前記仮想空間の画像が現実空間に重畳されてユーザから視認されるように、表示装置に画像を表示させる表示制御手段と、
を備える情報処理装置。
【請求項１０】
コンピュータと、
撮像装置と、
表示装置と、
現実空間に配置される第１の特徴及び第２の特徴と、
を含む情報処理システムであって、
前記コンピュータが、
前記撮像装置によって撮像された現実空間の画像を取得する画像取得手段と、
前記画像から前記第１の特徴と前記第２の特徴とを検出する特徴検出手段と、
前記第２の特徴に関連付けられている仮想オブジェクトを追加して前記第１の特徴の仮想オブジェクトの関連付けを変更する変更手段と、
前記第１の特徴に基づいて前記第１の特徴に関連付けられた仮想オブジェクトが配置された前記仮想空間の画像を生成する画像生成手段と、
前記仮想空間の画像が現実空間に重畳されてユーザから視認されるように、前記表示装置に画像を表示させる表示制御手段と、
を備える情報処理システム。
【請求項１１】
コンピュータが、
撮像装置によって撮像された現実空間の画像を取得し、
前記画像から第１の特徴と第２の特徴とを検出し、
前記第２の特徴に関連付けられている仮想オブジェクトを追加して前記第１の特徴の仮想オブジェクトの関連付けを変更し、
前記第１の特徴に基づいて前記第１の特徴に関連付けられた仮想オブジェクトが配置された前記仮想空間の画像を生成し、
前記仮想空間の画像が現実空間に重畳されてユーザから視認されるように、表示装置に画像を表示させる、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現実空間に各種情報を重畳する情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法に関する。
【背景技術】
【０００２】
現実空間に各種情報を重畳して提示することによって、現実世界を拡張することを拡張現実（ＡＲ：Augmented Reality）という。ＡＲの技術の一つとして、ＡＲ用のマーカ、
例えば、カードに印刷された２次元バーコードを用いる技術がある。この技術では、カメラの撮像画像からＡＲ用のマーカとして２次元バーコードが識別され、該マーカに対応付けられた３次元画像データが２次元バーコードの位置に重畳して表示装置に表示される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３２２６０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、該拡張現実技術では、表示装置の撮像画面を表示する画面において、マーカの位置に、該マーカに対応する３次元画像データが重畳して表示されるだけであって、視覚的効果として、変化が乏しいものであった。
【０００５】
本発明は、上記した問題に鑑み、視覚的な変化に富んだ拡張現実技術を提供することを課題とする。
【課題を解決するための手段】
【０００６】
本発明では、上記課題を解決するために、以下の構成を採用した。即ち、本発明は、コンピュータを、撮像装置によって撮像された現実空間の画像を取得する画像取得手段と、該画像から第１の特徴と第２の特徴とを検出する特徴検出手段と、第２の特徴に関連付けられている仮想オブジェクトを追加して第１の特徴の仮想オブジェクトの関連付けを変更する変更手段と、第１の特徴に基づいて第１の特徴に関連付けられた仮想オブジェクトが配置された仮想空間の画像を生成する画像生成手段と、仮想空間の画像が現実空間に重畳されてユーザから視認されるように、表示装置に画像を表示させる表示制御手段と、として機能させる情報処理プログラムである。
【０００７】
ここで、表示装置は、本発明に係る情報処理装置に周辺機器として接続されたものであってもよいし、通信網等を介して接続されたものであってもよい。また、本発明に係る情報処理装置は、所謂クラウド等の仮想的な環境に構築されたものであってもよい。
【０００８】
また、現実空間に配置された特徴とは、例えば、所謂ＡＲ用のマーカ、または二次元バーコード等のコードである。そして、このような特徴は、例えばカード等の部品に付されてよい。また、このような特徴は、専用のマーカやコード等に限られない。他用途に用いられる物品であっても、仮想オブジェクトの表示基準を取得可能なものであれば、前記特徴として用いることが出来る。
【０００９】
本発明によれば、第１の特徴と第２の特徴とがともに検出された場合には、第２の特徴に関連付けられている仮想オブジェクトが第１の特徴に関連付けられて、第１の特徴に基
づく位置に表示される。また、特徴検出手段によって、第１の特徴が継続して検出される一方、第２の特徴が検出されない場合に、変更手段は、第１の特徴の仮想オブジェクトの関連付けの変更を維持するようにすることによって、第２の特徴が撮像範囲から外れた場合でも、元々第２の特徴関連付けられている仮想オブジェクトは表示され続けることになる。これによって、視覚的な変化に富んだ拡張現実技術を提供することができる。
【００１０】
なお、本発明が適用される拡張現実技術の種類は限定されない。本発明は、例えば、撮像画像に仮想空間画像を合成した合成画像を表示することで仮想空間の画像が現実空間に重畳されてユーザから視認されるタイプの拡張現実技術にも適用可能であるし、ユーザの視界に仮想空間画像を映写することで仮想空間の画像が現実空間に重畳されてユーザから視認されるタイプの拡張現実技術（例えば、ＨＵＤ：Head-Up Display等）にも適用可能
である。
【００１１】
また、変更手段は、特徴検出手段によって第１の特徴が所定時間検出されない場合に、第１の特徴の仮想オブジェクトの関連付けの変更をリセットするようにしてもよい。
【００１２】
また、変更手段は、特徴検出手段による第２の特徴の検出が中断し、再開された場合には、第２の特徴に関連付けられている仮想オブジェクトを、さらに第１の特徴に関連付けるようにしてもよい。また、変更手段は、特徴手段による第２の特徴の検出が継続する間、所定周期で、第２の特徴に関連付けられている仮想オブジェクトを第１の特徴に関連付けられている仮想オブジェクトに追加するようにしてもよい。
【００１３】
これらによって、第２の特徴の検出が中断して再開する度に、又は、第２の特徴の検出が継続する間の所定周期で、第１の特徴に基づいて仮想空間に配置される仮想オブジェクトの数が増えることになり、視覚的に富んだ拡張現実技術を提供することができる。
【００１４】
また、変更手段は、第２の特徴に関連付けられている仮想オブジェクトを第１の特徴に関連付けた後、第２の特徴と該仮想オブジェクトとの関連付けを削除するようにしてもよい。これによって、その後第２の特徴が検出された場合でも、元々第２の特徴に関連付けられていた仮想オブジェクトは、第２の特徴に基づく位置には表示されなくなる。
【００１５】
また、コンピュータを、第１の特徴に新たに関連付けられた仮想オブジェクトが、第１の特徴に対応する所定の位置に移動するように動作を設定する設定手段としてさらに機能させるようにしてもよい。これによって、該仮想オブジェクトの第１の特徴への関連付けの変更を、ユーザに暗示することができる。
【００１６】
また、変更手段は、第１の特徴に予め関連付けられている第１の仮想オブジェクトに加え、第２の特徴に関連付けられている仮想オブジェクトを追加して第１の特徴の仮想オブジェクトの関連付けを変更し、画像生成手段は、第１の仮想オブジェクト及び仮想オブジェクトを第１の特徴に基づいて仮想空間に配置するようにしてもよい。
【００１７】
また、本発明は、情報処理装置、１または複数の情報処理装置を有する情報処理システム、コンピュータによって実行される方法、またはコンピュータに実行させるプログラムとしても把握することが可能である。また、本発明は、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものでもよい。ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【発明の効果】
【００１８】
本発明によれば、視覚的な変化に富んだ拡張現実技術を提供することができる。
【図面の簡単な説明】
【００１９】
【図１】第１実施形態に係る情報処理システムの構成の一例を示す図である。
【図２】第１実施形態に係る情報処理装置の第１のＡＲ処理の一例を示す図である。
【図３】第１実施形態に係る情報処理装置の機能構成の一例を示す図である。
【図４】第１実施形態に係る背面カメラ対応情報の一例を示す図である。
【図５】第１のＡＲ処理のフローチャートの一例である。
【図６Ａ】第２実施形態に係る情報処理装置の第２のＡＲ処理の一例を示す図である。
【図６Ｂ】第２実施形態に係る情報処理装置の第２のＡＲ処理の一例を示す図である。
【図６Ｃ】第２実施形態に係る背面カメラ対応情報と前面カメラ対応情報との一例を示す図である。
【図７】第２のＡＲ処理のフローチャートの一例である。
【図８】第３実施形態に係る情報処理装置の第３のＡＲ処理の一例を示す図である。
【図９】一時的対応情報の一例を示す図である。
【図１０Ａ】第３のＡＲ処理のフローチャートの一例である。
【図１０Ｂ】第３のＡＲ処理のフローチャートの一例である。
【図１１Ａ】第４のＡＲ処理の一例を示す図である。
【図１１Ｂ】第４のＡＲ処理の一例を示す図である。
【図１２】姿勢対応情報の一例を示す図である。
【図１３】第４のＡＲ処理のフローチャートの一例である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態を、図面に基づいて説明する。なお、以下に説明する実施の形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施の形態毎に具体的構成が適宜採用されてよい。例えば、本発明は、携帯可能な情報処理装置のコンピュータにおいて実行される情報処理プログラム、情報処理装置、１または複数の情報処理装置を有する情報処理システムおよび情報処理方法等に適用することが出来る。
【００２１】
＜システムの構成＞
図１は、第１実施形態に係る情報処理システム１００の構成の一例を示す図である。情報処理システム１００には、情報処理装置１、カード２Ａ、２Ｙ（但し、カードの種類を区別しない場合には、単に「カード２」と称する）が含まれる。
【００２２】
情報処理装置１は、例えば、携帯ゲーム機、スマートフォン、携帯電話端末、タブレット端末等の携帯型のコンピュータである。情報処理装置１は、ＣＰＵ（Central Processing Unit）１１と、ＲＡＭ（Random Access Memory）１２、ＲＯＭ（Read Only Memory）
１３、補助記憶装置１４、前面撮像装置１５Ａ、背面撮像装置１５Ｂ、ディスプレイ（表示装置）１６、および各種ボタンやタッチパネル等の入力装置１７が電気的に接続された情報処理装置である。なお、情報処理装置１の具体的なハードウェア構成に関しては、実施の形態毎に適宜構成要素の省略や置換、追加が行われてよい。例えば、情報処理装置１が、据え置き型のゲーム装置である場合には、撮像装置、ディスプレイ１６、入力装置１７等はそれぞれ独立した装置であり、周辺装置として情報処理装置１に接続される。
【００２３】
ＣＰＵ１１は、中央処理装置であり、ＲＡＭ１２およびＲＯＭ１３等に展開された命令及びデータを処理することで、ＲＡＭ１２、補助記憶装置１４等の、情報処理装置１に備えられた各構成要素を制御する。また、ＲＡＭ１２は、主記憶装置であり、ＣＰＵ１１に
よって制御され、各種命令やデータが書き込まれ、読み出される。即ち、ＣＰＵ１１、ＲＡＭ１２、およびＲＯＭ１３は、情報処理装置１の制御部を構成する。
【００２４】
補助記憶装置１４は、不揮発性の記憶装置であり、主に情報処理装置１の電源を落としても保持したい情報、例えば、ＲＡＭ１２にロードされる情報処理装置１のＯＳ（Operating System）や、後述する処理を実行するための各種プログラム、情報処理装置１によって使用される各種データ、等が書き込まれ、読み出される。補助記憶装置１４としては、例えば、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）やＨＤＤ（Hard Disk Drive）等を用いることが出来る。また、補助記憶装置１４として、情報処理装置１に
対して着脱可能に装着される可搬媒体が用いられてもよい。可搬媒体の例としては、ＥＥＰＲＯＭ等によるメモリーカード、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disc）およびＢＤ（Blu-ray（登録商標） Disc）等が挙げられる。可搬媒体による補助記憶装置１４と、可搬型ではない補助記憶装置１４とは、組み合わせて用いることも可能である。
【００２５】
前面撮像装置１５Ａ、背面撮像装置１５Ｂは、それぞれ、前面カメラ１５Ａ、背面カメラ１５Ｂともいう。情報処理装置１の前面とは、例えば、ディスプレイ１６の表示画面と同じ面をいう。情報処理装置１の背面とは、例えば、ディスプレイ１６の表示画面の対向する面をいう。前面カメラ１５Ａは、例えば、情報処理装置１の前面に、撮像方向がディスプレイ１６の表示画面の向きと同じになるように設置されている。背面カメラ１５Ｂは、例えば、情報処理装置１の背面に、撮像方向が前面カメラ１５Ａと逆方向になるように設置されている。背面カメラ１５Ｂは、例えば、立体視用に２つ備えられてもよい。なお、前面撮像装置１５Ａ、背面撮像装置１５Ｂを特に区別しない場合には、単に、撮像装置１５と称する。
【００２６】
カード２Ａ、２Ｙには、印刷等の方法で互いに異なるマーカ３Ａ、３Ｙ（但し、マーカの種類を区別しない場合には、単に「マーカ３」と称する）が付されている。これらマーカ３は、情報処理装置１によって表示される仮想オブジェクトと対応付けられており、該マーカ３に対応付けられた仮想オブジェクトが表示される際の位置の基準を示す指標である。図１においてカード２は２枚示されているが、用いられるカード２は１枚であってもよいし、２枚以上であってもよい。
【００２７】
マーカ３Ａは、例えば、情報処理装置１によって、所定のキャラクタを模した仮想オブジェクトと対応付けられている。また、マーカ３Ａは、例えば、対応付けられている仮想オブジェクトの形態との関連がユーザから認識できる特徴を含む。マーカ３Ａは、例えば、対応付けられている仮想オブジェクトの形態の少なくとも一部を模した図形である。具体的には、例えば、マーカ３Ａは、対応付けられた仮想オブジェクトの原型となるキャラクタの顔である。ただし、図面上では、便宜上、マーカ３Ａは、アルファベットで示されている。また、マーカ３Ａが印刷されているカード２Ａは、例えば、紙のカード、プリペイドカード等であってもよい。
【００２８】
マーカ３Ｙは、例えば、情報処理装置１によって、所定の仮想オブジェクトと対応付けられている。また、マーカ３Ｙは、例えば、マーカ３Ａとは異なり、対応付けられている仮想オブジェクトの形態との関連がユーザから視認できる特徴を含まない。マーカ３Ｙは、例えば、紙のカード、マーカ３Ａが印刷されているプリペイドカードの台紙等である。以降、マーカ３Ｙは、基準マーカ３Ｙと称することもある。
【００２９】
第１実施形態において、仮想オブジェクトは、情報処理装置１のディスプレイ１６において、撮像画像内の対応付けられたマーカ３に対して所定位置に配置されて撮像画像に対して合成表示される。また、仮想オブジェクトは、上下、前後、および左右の方向を有す
る。そのため、マーカ３は、仮想オブジェクトの表示姿勢を特定することが可能なものであることが好ましい。即ち、マーカ３は、撮像装置１５を用いて撮像されることで、撮像装置１５に対する位置および姿勢を特定可能な記号、文字、図形、絵、およびそれらの組み合わせ等であることが好ましい。なお、第１実施形態において、姿勢は、直交する３軸によって構成される座標系において特定される。
【００３０】
図２は、第１実施形態に係る情報処理装置１の第１のＡＲ処理の一例を示す図である。第１のＡＲ処理では、背面カメラ１５Ｂによるマーカの検出が所定時間中断し、再開される度に、該マーカに対応してディスプレイ１６に表示される仮想オブジェクトが変化する。
【００３１】
例えば、背面カメラ１５Ｂによるマーカ３Ａの初回の検出時には、マーカ３Ａに対応する所定の位置に仮想オブジェクト４Ａ−１が表示される。例えば、カード２Ａを背面カメラ１５Ｂの撮像範囲から一旦外して戻す、カード２Ａを手で隠す等のユーザの行為により、背面カメラ１５Ｂによるマーカ３Ａの検出が中断され再開された場合には、マーカ３Ａに基づく所定の位置に仮想オブジェクト４Ａ−２が表示される。さらに、同様の行為が行われた場合には、マーカ３Ａに対応する所定の位置に表示される仮想オブジェクトは、仮想オブジェクト４Ａ−３に変化する。
【００３２】
すなわち、第１のＡＲ処理では、情報処理装置１は、前回のマーカ３の検出と今回のマーカ３の検出との間隔が所定時間以上である場合には、前回表示された仮想オブジェクトとは異なる仮想オブジェクトをマーカ３に基づく所定の位置に表示する。所定時間は、例えば、１秒である。
【００３３】
上記第１のＡＲ処理を実現するための情報処理装置１が備える機能について説明する。第１実施形態に係る情報処理装置１は、所謂ＡＲ機能を備えた情報処理装置である。情報処理装置１は、撮像装置１５を用いて撮像された実空間の撮像画像に、仮想カメラを用いて描画（レンダリング）された仮想空間内の仮想オブジェクトを合成して、ディスプレイ１６に表示する機能を有する。本実施形態において、仮想オブジェクトは、３次元の画像データである。但し、仮想オブジェクトは、２次元の画像データであってもよい。
【００３４】
図３は、第１実施形態に係る情報処理装置１の機能構成の一例を示す図である。情報処理装置１は、ＣＰＵ１１が、ＲＡＭ１２に展開された各種プログラムを解釈および実行することで、撮像画像取得部２１、特徴検出部２２、姿勢検出部２３、表示基準情報記憶部２４、オブジェクト決定部２５、画像生成部２６、及び表示制御部２７を備える情報処理装置として機能する。第１実施形態では、これらの機能がいずれも汎用のＣＰＵ１１によって実行される例について説明しているが、これらの機能は、その一部または全部が、１または複数の専用のプロセッサによって実現されてもよい。
【００３５】
撮像画像取得部２１は、撮像装置１５によって撮像された撮像画像を取得する。撮像画像は、例えば、撮像装置１５の撮像レートで取得される。例えば、撮像装置１５の撮像レートが６０ｆｐｓ（frame per second）である場合には、撮像画像取得部２１は、６０分の１秒毎に撮像画像を取得する。なお、前面撮像装置１５Ａと背面撮像装置１５Ｂとは、両方が起動することはなく、いずれか一方が起動している場合には、もう一方は無効となる。また、前面撮像装置１５Ａと背面撮像装置１５Ｂとの有効又は無効の状態の情報は、例えば、フラグで管理される。このフラグは、例えば、各撮像装置１５に対してそれぞれ準備されてもよい。例えば、フラグが１である場合には、対応する撮像装置１５は有効であることが示される。このフラグによって撮像画像がいずれの撮像装置１５によって撮像されたかを判定することが可能となる。
【００３６】
特徴検出部２２は、撮像装置１５によって撮像された画像に対して、例えばパターンマッチング等の画像処理を行うことによって、当該画像に含まれるマーカ３を検出することができる。マーカ３の検出は、例えば、画像認識エンジンを用いて行われる。また、特徴検出部２２は、撮像された画像に含まれるマーカ３の検出とともに、該マーカ３の位置情報も検出することができる。マーカ３の位置情報は、例えば、ディスプレイ１６の画面内のマーカ３の座標等である。
【００３７】
姿勢検出部２３は、検出されたマーカ３に基づいて、該マーカ３の撮像画像に撮像された空間における位置および姿勢を検出し、表示基準情報を生成する。表示基準情報記憶部２４は、仮想空間に配置される仮想オブジェクトの位置および姿勢を決定するための表示基準情報を記憶する。表示基準情報記憶部２４は、例えば、ＲＡＭ１２の記憶領域に作成される。第１実施形態において、表示基準情報とは、仮想空間内における仮想オブジェクトの位置および姿勢を示すために用いられる基準である。但し、表示基準情報は、仮想空間内における仮想オブジェクトの位置および姿勢の何れか一方のみを示すために用いられる基準であってもよい。第１実施形態の姿勢検出部２３は、表示基準情報として、マーカ３の中心点を原点とし、互いに直交する３軸を用いたマーカ座標系を、マーカ３毎に取得する。ただし、表示基準情報として、撮像画像そのもの等、マーカ座標系以外のものが用いられてもよい。また、複数のマーカ３間で、１つのマーカ座標系を共有して用いることも可能である。実空間に配置されたマーカ３を基準として仮想空間の座標系が定義されることにより、実空間と仮想空間とを対応付けることができる。なお、実空間と仮想空間との対応付けには、マーカ座標系を用いる方法以外の方法が採用されてもよい。
【００３８】
姿勢検出部２３は、撮像画像が取得される度に、該撮像装置内のマーカ３の位置及び姿勢を検出し、表示基準情報記憶部２４に記憶される表示基準情報を更新する。したがって、第１実施形態では、撮像装置１５の移動や、マーカ３の移動とともに変化する撮像装置１５に対する最新のマーカ３の位置および姿勢の変化に従って、表示基準情報記憶部２４によって記憶されている表示基準情報が更新される。
【００３９】
第１実施形態において、仮想空間に配置される仮想オブジェクトは、当該仮想オブジェクトが関連付けられたマーカ３のマーカ座標系に配置される。姿勢検出部２３は、撮像画像に含まれるマーカ３の見え方から、撮像装置１５に対するマーカ３の位置および姿勢を算出することで、マーカ座標系を取得することができる。マーカ座標系における仮想カメラの位置および姿勢は、実空間の撮像装置１５の位置および姿勢と一致される。このため、マーカ３に基づいて仮想空間が定義され、当該仮想空間において、撮像装置１５の位置や撮像方向を変化させると、ディスプレイ１６に表示される仮想空間の画像も変化する。
【００４０】
オブジェクト決定部２５は、検出されたマーカ３に基づく所定の位置に配置される仮想オブジェクトを決定する。オブジェクト決定部２５は、例えば、マーカの認識状況に応じて、背面カメラ対応情報を参照し、検出されたマーカ３に基づく所定の位置に配置される仮想オブジェクトを決定する。マーカの認識状況は、例えば、前回の検出から今回の検出までの経過時間が所定範囲内にあるか否か、前回の検出から今回の検出までの経過時間が所定範囲内にある検出の回数等である。詳細は後述される。
【００４１】
画像生成部２６は、仮想空間に、表示基準情報記憶部２４によって記憶されている表示基準情報に従った位置および姿勢で仮想オブジェクトを配置し、仮想カメラから見た仮想空間の画像を生成することで、仮想空間画像を描画（レンダリング）する。そして、第１実施形態に係る情報処理装置１は、上記説明したＡＲ機能のために、撮像画像取得部２１によって取得された撮像画像と、画像生成部２６によって生成された仮想オブジェクトを含む仮想空間画像と、を重畳した合成画像を生成する。
【００４２】
表示制御部２７は、生成された合成画像を、表示装置であるディスプレイ１６によって表示させる。このようにすることで、ユーザは、現実空間に、実際に仮想オブジェクトが存在するかのような感覚を得ることが出来る。
【００４３】
次に、情報処理装置１が保持する情報について説明する。情報処理装置１は、補助記憶装置１４に、マーカ情報、オブジェクト情報、背面カメラ対応情報、前面カメラ対応情報、一時的対応情報、姿勢対応情報を保持する。なお、前面カメラ対応情報、一時的対応情報、姿勢対応情報については、第２実施形態以降で説明する。
【００４４】
マーカ情報は、マーカ３に関する情報である。マーカ情報には、例えば、マーカ３を識別するためのマーカＩＤ、マーカ画像、マーカサイズ、マーカ３に対する仮想オブジェクトの配置位置、オブジェクトの表示サイズ等が含まれる。マーカ画像は、マーカ３の外観を示す画像である。また、マーカサイズは、マーカ３の縦横の長さ等、マーカ３の大きさを示す情報である。マーカ３に対する仮想オブジェクトの配置位置は、例えば、マーカ３に対する仮想オブジェクトを配置する位置であって、例えば、マーカ３と仮想オブジェクトとの距離である。マーカ情報は、情報システム１００において使用される各マーカ３に対して存在する。
【００４５】
オブジェクト情報は、仮想オブジェクトに関する情報である。オブジェクト情報には、例えば、仮想オブジェクトを識別するためのオブジェクトＩＤおよびオブジェクトのデータが含まれる。オブジェクト情報は、情報処理システム１００において使用される各オブジェクトについて存在する。
【００４６】
図４は、第１実施形態に係る背面カメラ対応情報の一例を示す図である。背面カメラ対応情報は、マーカ３と仮想オブジェクトとの関連付けの情報であり、検出されたマーカ３に基づく所定の位置に配置される仮想オブジェクトの決定の際に参照される情報である。
【００４７】
背面カメラ対応情報には、例えば、マーカＩＤ、仮想オブジェクトＩＤ、ポインタが含まれる。第１実施形態において、背面カメラ対応情報では、１つのマーカに対して、複数の仮想オブジェクトが関連付けられており、ポインタが指し示す仮想オブジェクトが、該当するマーカ３に基づく所定の位置に配置される。ポインタは、例えば、該当マーカの前回の検出から今回の検出までの経過時間が所定範囲内の時間である場合に、オブジェクト決定部２５によって別の仮想オブジェクトに移動される。詳細は後述する。ポインタの移動先は、例えば、ランダムであってもよいし、仮想オブジェクトのリストに従って決定されてもよい。ポインタが仮想オブジェクトのリストの並び順に移動する場合には、ポインタは循環的に移動するようにしてもよい。すなわち、ポインタがリストの最後にたどり着いた場合には、ポインタは、次に、リストの最初の仮想オブジェクトに移動するようにしてもよい。
【００４８】
なお、第１実施形態では、背面カメラ対応情報は、情報処理システム１００内で用いられる全てのマーカ３についての情報が保持される。基準マーカ３Ｙの仮想オブジェクトとの関連付けの情報も背面カメラ対応情報に保持される。ただし、全てのマーカ３に対して複数の仮想オブジェクト４が関連付けられていなくともよく、１つのマーカ３に関連付けられる仮想オブジェクトは１つであってもよい。例えば、基準マーカ３Ｙに関連付けられる仮想オブジェクトは、仮想オブジェクト４Ｙの１つである。
【００４９】
＜処理の流れ＞
次に、第１実施形態において実行される処理の流れを説明する。なお、第１実施形態に係るフローチャートに示された処理の具体的な内容および処理順序は、本発明を実施するための一例である。具体的な処理内容および処理順序は、本発明の実施の形態毎に適宜選
択されてよい。
【００５０】
図５は、第１のＡＲ処理のフローチャートの一例である。図５に示されるフローチャートは、情報処理装置１において、ＡＲ機能を起動するユーザ操作が受け付けられたことを契機として開始される。
【００５１】
ＯＰ１では、撮像画像取得部２１は、撮像装置１５によって撮像された撮像画像を取得する。これによって、図５に示されるフローチャートは、撮像装置１５の撮像レート（例えば６０ｆｐｓ）で取得される各撮像画像について実行されることになる。ＯＰ２では、特徴検出部２２が、撮像画像から、撮像された空間における特徴として、マーカ情報に含まれるマーカ画像に該当するマーカ３を検出する。マーカが検出された場合には（ＯＰ２：ＹＥＳ）、処理がＯＰ３に進む。マーカ３の検出は、一般的な画像認識エンジンを用いて行うことが可能である。マーカが検出されない場合には（ＯＰ２：ＮＯ）、図５に示される処理が終了する。
【００５２】
ＯＰ３では、オブジェクト決定部２５は、処理対象マーカ３の前回の検出から今回の検出までの計測経過時間が第１の時間閾値以上であるか否かを判定する。第１の時間閾値は、例えば、１秒である。処理対象マーカ３の前回の検出から今回の検出までの計測経過時間が第１の時間閾値以上である場合には（ＯＰ３：ＹＥＳ）、処理がＯＰ４に進む。処理対象マーカ３の前回の検出から今回の検出までの計測経過時間が第１の時間閾値未満である場合には（ＯＰ３：ＮＯ）、処理がＯＰ６に進む。
【００５３】
なお、オブジェクト決定部２５は、特徴検出部２２によって検出された各マーカ３について、検出からの経過時間を計測し、計測経過時間としてメモリに記録する。計測経過時間は、該当マーカ３が撮像画像から検出される度にリセットされる。例えば、撮像画像が６０ｆｐｓのレートで取得され、マーカ３が連続して検出される場合には、撮像画像が取得される度に該マーカ３の計測経過時間がリセットされる。なお、最後の検出から該当のマーカ３の検出がないまま所定時間（例えば、５分）経過すると、オブジェクト決定部２５は、該当のマーカ３の計測経過時間を削除する。処理ＯＰ３において、処理対象のマーカ３の計測経過時間が記録されていない場合には、オブジェクト決定部２５は、処理対象マーカ３の計測記録時間が第１の時間閾値未満である（ＯＰ３：ＮＯ）、と判定する。
【００５４】
ＯＰ４では、オブジェクト決定部２５は、処理対象マーカ３の計測経過時間が第２の時間閾値以上であるか否かを判定する。第２の時間閾値は、第１の時間閾値よりも長く、例えば、３〜１０秒である。処理対象マーカ３の計測経過時間が第２の時間閾値以上である場合には（ＯＰ４：ＹＥＳ）、処理がＯＰ６に進む。処理対象マーカ３の計測経過時間が第２の時間閾値未満である場合には（ＯＰ４：ＮＯ）、処理がＯＰ５に進む。
【００５５】
ＯＰ５では、オブジェクト決定部２５は、処理対象マーカ３の背面カメラ対応情報内のポインタ位置を移動させる。ポインタの移動先は、ランダムであってもよいし、リスト内で現在ポインタ位置の次に位置する仮想オブジェクトであってもよい。次に処理がＯＰ６に進む。
【００５６】
ＯＰ６では、オブジェクト決定部２５は、処理対象マーカ３の背面カメラ対応情報内のポインタが指し示す仮想オブジェクトを取得する。次に処理がＯＰ７に進む。撮像画像から検出されたマーカ３が複数の場合には、各マーカ３についてＯＰ３〜ＯＰ６の処理が実行される。
【００５７】
ＯＰ７では、画像生成部２６は、取得された仮想オブジェクトを、関連付けられているマーカ３に基づく所定の位置に配置する。マーカ３の位置及び姿勢は、マーカ３の検出と
ともに姿勢検出部２３によって表示基準情報として検出されており、画像生成部２６は、表示基準情報に従ってマーカ３に基づく所定の位置に仮想オブジェクトを配置する。次に処理がＯＰ８に進む。
【００５８】
ＯＰ８では、画像生成部２６は、仮想空間の画像を生成する。画像生成部２６は、マーカ座標系に配置された１または複数の仮想オブジェクトを含む仮想空間の画像を、マーカ座標系において撮像装置１５と同一の位置に配置された仮想カメラの視点から描画する。仮想オブジェクトを描画するためのオブジェクトのデータは、オブジェクト情報から取得される。なお、仮想オブジェクトは、１または数フレーム毎に変化することでアニメーションしてもよい。アニメーションは、例えば、仮想オブジェクトのキャラクタが表情を変えたり、動いたりするものとすることが出来る。その後、処理はＯＰ９に進む。
【００５９】
ＯＰ９では、表示制御部２７は、撮像画像に仮想空間の画像を重畳した合成画像を生成し、この合成画像をディスプレイ１６に出力し、表示させる。
【００６０】
図５に示されるフローチャートにおいて、第１の時間閾値及び第２の時間閾値は、手で一旦マーカ３を隠し、その後、手をどかして該マーカ３を検出し直させたり、カード２を撮像範囲から外して、その後、再度撮像範囲内に戻して該マーカを検出し直させる、といったユーザ行為を検出するためのものである。前回の検出から今回の検出までの計測経過時間が第１の時間閾値以上第２の時間閾値未満である場合には、上記のようなユーザ行為があったことが判定され、処理がＯＰ５に進み、該当マーカ３の背面カメラ対応情報内のポインタが移動される。これによって、マーカ３を手で隠す等のユーザ行為が行われ、該マーカ３が再度検出された場合には、前回の検出時に表示されていた仮想オブジェクトとは異なる仮想オブジェクトが表示されることになる。これによって、ユーザに変化に富んだ拡張現実を提供することができ、ユーザを飽きさせないサービスを提供することができる。
【００６１】
例えば、上記のようなユーザ行為がなく、連続して撮像装置１５の撮像レート（例えば、６０ｆｐｓ）で撮像された画像からマーカ３が検出される場合には、前回の検出から今回の検出までの計測経過時間が１／６０秒となる。これは第１の時間閾値（例えば、１秒）よりも短いため（ＯＰ３：ＮＯ）、処理がＯＰ６に進み、該当マーカ３の背面カメラ対応情報のポインタの移動もなく、該当マーカ３の対応する所定の位置には前回の検出時と同じ仮想オブジェクトが表示される。なお、情報処理装置１が初めてマーカ３を検出した場合には、オブジェクト決定部２５は、計測経過時間が記録されていないので、前回の検出から第１の時間閾値経過していないと判定し（ＯＰ３：ＮＯ）、処理がＯＰ６に進む。
【００６２】
例えば、情報処理装置１が省電力状態に移行したり、ユーザによってマーカ３が撮像範囲から外されたままになったり等、例えば１分以上マーカ３が検出されずに再度マーカ３が検出された場合には、前回の検出からの計測経過時間が第２の閾値時間以上であると判定され（ＯＰ４：ＹＥＳ）、処理がＯＰ６に進み、前回の検出時と同じ仮想オブジェクトが表示されることとなる。
【００６３】
ただし、第１のＡＲ処理は、図５に示されるフローチャートに限定されない。例えば、ＯＰ４の処理は省略することもできる。ＯＰ４の処理が省略される場合には、マーカ３の前回の検出から今回の検出までの時間が第２の閾値以上である場合にも、ＯＰ５の処理に進み、背面カメラ対応情報中のポインタが移動され、前回の検出時とは異なる仮想オブジェクトが表示される。
【００６４】
また、オブジェクト決定部２５は、マーカ３の検出からの計測経過時間が、例えば、所定時間（例えば、５分）以上になると、該マーカ３の計測経過時間の記録を削除する。こ
の場合に、図５に示されるフローチャートの処理では、次に該当のマーカ３が検出された場合には、背面カメラ対応情報中のポインタが指し示す仮想オブジェクト、すなわち、前回の該当のマーカ３の検出時に表示された仮想オブジェクトと同じ仮想オブジェクトが表示されることになる。これに代えて、オブジェクト決定部２５は、マーカ３の計測経過時間の記録の削除に伴い、該マーカ３の背面カメラ対応情報中のポインタの位置を初期設定に戻すようにしてもよい。背面カメラ対応情報中のポインタの初期設定の位置は、例えば、該当のマーカ３に関連付けられる複数の仮想オブジェクトのリストの先頭である。
【００６５】
＜第１実施形態の作用効果＞
第１実施形態の第１のＡＲ処理では、マーカ３の認識状況に応じて、該マーカ３に対応する位置に配置される仮想オブジェクトが変化する。これによって、ＡＲ処理を視覚的変化に富んだエンターテイメント性の高いものとすることができる。
【００６６】
＜第１のＡＲ処理の変形例＞
第１のＡＲ処理では、マーカ３の前回の検出からの経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内で今回の検出が発生する度に、マーカ３に基づく所定の位置に配置される仮想オブジェクトが変化する。これに代えて、マーカ３が連続して検出される時間又は回数に応じて、マーカ３に基づく所定の位置に配置される仮想オブジェクトが変化するようにしてもよい。
【００６７】
例えば、オブジェクト決定部２５は、マーカ３の最初の検出から連続して検出される時間又は回数を計数し、所定時間又は所定回数に達した場合に、該当マーカ３の背面カメラ対応情報のポインタを移動させるようにする。これによって、マーカ３が検出される間、時間経過に応じて、マーカ３に基づく所定の位置に表示される仮想オブジェクトが変化する。マーカ３が検出されない場合や、マーカ３の最初の検出から連続して検出される時間又は回数が所定時間又は所定回数に達した場合には、該マーカ３の最初の検出から連続して検出される時間又は回数のカウンタはリセットされる。
【００６８】
また、マーカ３の前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内で発生する検出の回数に応じて、マーカ３に基づく所定の位置に配置される仮想オブジェクトが変化するようにしてもよい。すなわち、例えば、ユーザが撮像範囲にマーカ３を出し入れしたりするような、情報処理装置１にマーカ３を認識し直させるユーザ行為の回数に応じて、該マーカ３に基づく所定の位置に配置される仮想オブジェクトが変化するようにしてもよい。この場合には、オブジェクト決定部２５は、検出される各マーカ３について、前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内で発生する検出の回数を計数する。該検出の回数のカウンタは、例えば、マーカ３の前回の検出からの計測記録時間が第１の時間閾値以上第２の時間閾値未満の範囲内で検出が発生した場合に１加算され、該当マーカ３の前回の検出からの計測経過時間が第２の閾値時間以上である検出が発生した場合にリセットされる。例えば、前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内で発生する検出の回数が、２回ごとに、すなわち、情報処理装置１にマーカ３を認識し直させるユーザ行為が２回行われる毎に、オブジェクト決定部２５は、該当マーカ３の背面カメラ対応情報のポインタを移動させる。
【００６９】
また、第１のＡＲ処理では、マーカ３の前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内での検出が発生する度に、マーカ３に基づく位置に配置される仮想オブジェクトが変化するが、これに代えて、仮想オブジェクトの状態、動作等の態様が変化してもよい。例えば、仮想オブジェクトが所定のキャラクタである場合には、マーカ３の前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満の範囲内での検出が発生する度に、該キャラクタの表情、服装などの外観が変化したり、
該キャラクタの姿勢やポーズなどが変わったり、眠ったり走ったりという動作が変化したりしてもよい。
【００７０】
これらは、例えば、背面カメラ対応情報において、マーカ３と仮想オブジェクトとの関連付けに、さらに態様を関連付けておき、オブジェクト決定部２５が仮想オブジェクトの決定とともに、該仮想オブジェクトに該態様を設定することで実現可能である。背面カメラ対応情報では、例えば、マーカ３には、態様として、仮想オブジェクトに実行させる命令のファイルの識別情報が関連付けられる。仮想オブジェクトの制御は、例えば、専用のプログラムによって行われており、該プログラムは、背面カメラ対応情報の態様に対応する命令を実行することによって仮想オブジェクトに該態様を実行させる。
【００７１】
また、第１のＡＲ処理は、撮像画像が、背面カメラ１５Ｂで撮像されている場合でも、前面カメラ１５Ａで撮像されている場合でも、いずれの場合でも実行されるようにしてもよい。
【００７２】
＜第２実施形態＞
第２実施形態では、情報処理装置は、第２のＡＲ処理を行う。第２のＡＲ処理では、現実空間の撮像手段に応じて、表示される仮想オブジェクトが変化する。第２実施形態では、第１実施形態と重複する説明は省略される。
【００７３】
図６Ａ及び図６Ｂは、第２実施形態に係る情報処理装置１の第２のＡＲ処理の一例を示す図である。第２のＡＲ処理では、画像が前面カメラ１５Ａ又は背面カメラ１５Ｂのいずれで撮像されたかによって、マーカ３Ａに基づく位置に配置される仮想オブジェクトが変化する。
【００７４】
図６Ａは、背面カメラ１５Ｂでマーカ３Ａを撮像した場合の画面表示例を示す図である。背面カメラ１５Ｂでマーカ３Ａを撮像した場合には、ディスプレイ１６の画面のマーカ３Ａに基づく所定の位置には、仮想オブジェクト４Ａ−１が表示される。
【００７５】
図６Ｂは、前面カメラ１５Ａでマーカ３Ａを撮像した場合の画面表示例を示す図である。前面カメラ１５Ａでマーカ３Ａを撮像した場合には、図６Ａの例と同一のマーカ３Ａに基づく所定の位置には、背面カメラ１５Ｂで撮像した場合に表示される仮想オブジェクト４Ａ−１とは異なる仮想オブジェクト４Ａ−４が表示される。
【００７６】
第２のＡＲ処理を実行する情報処理装置１のハードウェア構成、機能構成は、ともに、第１実施形態と同様である（図１、図３参照）。第２のＡＲ処理では、オブジェクト決定部２５は、検出されたマーカ３に基づく所定の位置に配置される仮想オブジェクトの決定に、背面カメラ対応情報と前面カメラ対応情報とを用いる。
【００７７】
図６Ｃは、第２実施形態に係る背面カメラ対応情報と前面カメラ対応情報との一例を示す図である。背面カメラ対応情報は、撮像画像が背面カメラ１５Ｂによって撮像されている場合に参照される情報である。前面カメラ対応情報は、撮像画像が前面カメラ１５Ａで撮像されている場合に参照される情報である。背面カメラ対応情報と前面カメラ対応情報とには、マーカＩＤと仮想オブジェクトＩＤとが含まれており、１つのマーカ３に１つの仮想オブジェクトが関連付けられている。
【００７８】
なお、第２実施形態では、背面カメラ対応情報は、情報処理システム１００内で用いられる全てのマーカ３について用意されており、前面カメラ対応情報は、情報処理システム１００内で用いられる全てのマーカ３について用意されていなくてもよい。例えば、オブジェクト決定部２５は、前面カメラ１５Ａで撮像されて、前面カメラ対応情報に検出され
たマーカ３の情報が保持されていない場合には、背面カメラ対応情報を参照して、仮想オブジェクトを決定する。ただし、これに限られず、前面カメラ対応情報が情報処理システム１００内で用いられる全マーカ３について用意されており、背面カメラ対応情報は、全てのマーカ３について用意されていなくてもよい。または、背面カメラ対応情報及び前面カメラ対応情報のいずれも、全てのマーカ３について用意されていなくてもよい。撮像画像から検出されたマーカ３に該当する情報が、背面カメラ対応情報及び前面カメラ対応情報のいずれにもない場合には、該マーカ３に基づく所定の位置には仮想オブジェクトが表示されない。
【００７９】
＜処理の流れ＞
図７は、第２のＡＲ処理のフローチャートの一例である。図７に示されるフローチャートは、情報処理装置１において、ＡＲ機能を起動するユーザ操作が受け付けられたことを契機として開始される。
【００８０】
ＯＰ１１では、撮像画像取得部２１は、撮像装置１５によって撮像された撮像画像を取得する。これによって、図７に示されるフローチャートは、撮像装置１５の撮像レート（例えば６０ｆｐｓ）で取得される各撮像画像について実行されることになる。ＯＰ１２では、特徴検出部２２が、撮像画像から、撮像された空間における特徴として、マーカ情報に含まれるマーカ画像に該当するマーカ３を検出する。マーカ３が検出された場合には（ＯＰ１２：ＹＥＳ）、処理がＯＰ１３に進む。マーカ３が検出されない場合には（ＯＰ１２：ＮＯ）、図７に示される処理が終了する。
【００８１】
ＯＰ１３では、オブジェクト決定部２５は、撮像画像が前面カメラ１５Ａによって撮像されたものであるか否かを判定する。撮像画像が前面カメラ１５Ａによって撮像されたものである場合には（ＯＰ１３：ＹＥＳ）、処理がＯＰ１４に進む。撮像画像が背面カメラ１５Ｂによって撮像されたものである場合には（ＯＰ１３：ＮＯ）、処理がＯＰ１８に進む。
【００８２】
ＯＰ１４では、オブジェクト決定部２５は、撮像画像が前面カメラ１５Ａによって撮像されたものであるので、前面カメラ対応情報から、検出されたマーカ３に関連付けられている仮想オブジェクトを取得する。なお、第２実施形態において、前面カメラ対応情報に、検出されたマーカ３の情報がない場合には、オブジェクト決定部２５は、該当マーカ３の背面カメラ対応情報のポインタが指し示す仮想オブジェクトを取得する。次に処理がＯＰ１５に進む。
【００８３】
ＯＰ１８では、オブジェクト決定部２５は、撮像画像が背面カメラ１５Ｂによって撮像されたものであるので、背面カメラ対応情報から、検出されたマーカ３に関連付けられている仮想オブジェクトを取得する。次に処理がＯＰ１５に進む。
【００８４】
ＯＰ１５〜ＯＰ１７は、図５のＯＰ７〜ＯＰ９の処理と同様である。ＯＰ１５〜ＯＰ１７では、取得された仮想オブジェクトがマーカ３に基づく所定の位置に配置され、仮想空間画像が生成され、撮像画像と仮想空間画像との合成画像が生成され、該合成画像がディスプレイ１６に表示される。
【００８５】
例えば、前面カメラ対応情報において、背面カメラ対応情報ではいずれのマーカ３にも関連付けられていない仮想オブジェクトを関連付けておくことによって、該仮想オブジェクトを前面カメラ１５Ａで撮像した際に背面カメラ１５Ｂで撮像している間には表示されなかったキャラクタが表示されるようにすることができる。ＡＲマーカを撮像する際には背面カメラ１５Ｂが用いられることが多く、前面カメラ１５Ａを用いてＡＲマーカを撮像することは少ない。そのため、前面カメラ１５Ａでマーカ３を撮像した際に、背面カメラ
１５Ｂで撮像している間には表示されなかった仮想オブジェクトが表示されることによって、該仮想オブジェクトを隠しキャラクタとしてユーザに提示することができ、ユーザに驚き、興奮等を与えることができる。
【００８６】
＜第２実施形態の作用効果＞
第２のＡＲ処理では、マーカ３の検出手段が前面カメラ１５Ａ、背面カメラ１５Ｂのいずれであるかによって、該マーカ３に対応する位置に配置される仮想オブジェクトが変化する。これによって、ＡＲ処理を視覚的変化に富んだエンターテイメント性の高いものとすることができる。
【００８７】
＜第２のＡＲ処理の変形例＞
第２のＡＲ処理では、前面カメラ１５Ａ、背面カメラ１５Ｂのいずれで撮像されたかによって、マーカ３に基づく所定の位置に配置される仮想オブジェクトが変化する。前面カメラ１５Ａ、背面カメラ１５Ｂが、それぞれ複数備えられる場合には、各撮像装置について対応情報を用意することで、いずれの撮像装置で撮像されたかによって、マーカ３に対応する位置に表示される仮想オブジェクトを切り替えることができる。例えば、立体視用に、背面カメラ１５Ｂが、右目用カメラと左目用カメラとを備える場合に、右目用カメラ対応情報と、左目用カメラ対応情報とを用意することで、右目用カメラで撮像された場合と、左目用カメラで撮像された場合とで、マーカ３に基づく所定の位置に表示される仮想オブジェクトを切り替えることができる。
【００８８】
また、第２のＡＲ処理では、前面カメラ１５Ａ又は背面カメラ１５Ｂのいずれで撮像されたかによって、マーカ３に基づく所定の位置に表示される仮想オブジェクトが変化する。これに代えて、前面カメラ１５Ａ又は背面カメラ１５Ｂのいずれで撮像されたかによって、マーカ３に基づく所定の位置に表示される仮想オブジェクトの態様を変化させてもよい。これは、例えば、前面カメラ対応情報において、背面カメラ対応情報において該当マーカ３に関連付けられている仮想オブジェクトと同じ仮想オブジェクトに背面カメラ対応情報とは異なる態様を示す命令を関連付けることによって、実現可能である。仮想オブジェクトの態様は、第１実施形態で説明されたものと同様である。
【００８９】
また、第２のＡＲ処理は、第１のＡＲ処理と組み合わせることも可能である。第１のＡＲ処理と第２のＡＲ処理とを組み合わせる場合には、例えば、背面カメラ対応情報、前面カメラ対応情報のいずれか一方、又は、両方を、第１実施形態に係る背面カメラ対応情報と同様の構成にし、図７のＯＰ１４、ＯＰ１８のいずれか一方又は両方の処理を、図５のＯＰ２〜ＯＰ６の処理に置き換えることによって実現される。これによって、撮像画像が背面カメラ１５Ｂ又は前面カメラ１５Ａのいずれによって撮像されたかに応じて、マーカ３の対応する位置に表示される仮想オブジェクトが変化するとともに、該マーカ３を認識し直させるユーザ行為に応じても該マーカ３の対応する位置に表示される仮想オブジェクトが変化するようになる。
【００９０】
また、第２のＡＲ処理を利用して、例えば、前面カメラ１５Ａの起動時に、前面カメラ１５Ａに対応して表示される仮想オブジェクトが配置された状態で仮想空間の更新を停止してその時点での仮想空間画像を保持し、背面カメラ１５Ｂに切り替えられた際に、背面カメラ１５Ｂで撮像される現実空間の撮像画像に、保持されている前面カメラ１５Ａに対応する仮想オブジェクトを含む仮想空間画像を重畳してディスプレイ１６に表示することも可能である。仮想空間の更新の停止は、例えば、操作ボタンの押下等ユーザ操作によって行われてもよいし、前面カメラ１５Ａから背面カメラ１５Ｂに切り替わることを契機に行われてもよい。仮想空間の更新の停止は、例えば、特徴検出部２２、姿勢検出部２３の処理、すなわち、撮像画像からのマーカ検出の処理、表示基準情報の更新を無効にすることによって達成される。これによって、前面カメラ１５Ａでマーカ３を撮像した場合に表
示される仮想オブジェクトを、背面カメラ１５Ｂで撮像することができる。また、同様にして、背面カメラ１５Ｂでマーカ３を撮像した場合に表示される仮想オブジェクトを、前面カメラ１５Ａで撮像することも可能である。
【００９１】
＜第３実施形態＞
第３実施形態では、情報処理装置１は、第３のＡＲ処理を実行する。第３のＡＲ処理では、基準マーカ３Ｙが検出されることによって、基準マーカ３Ｙ以外の検出されたマーカ３に関連付けられていた仮想オブジェクトが、基準マーカ３Ｙに関連付けられる。第３実施形態では、第１、第２実施形態と重複する説明は省略される。
【００９２】
図８は、第３実施形態に係る情報処理装置１の第３のＡＲ処理の一例を示す図である。第３のＡＲ処理では、基準マーカ３Ｙとマーカ３Ａとを一緒に撮像した場合に、ディスプレイ１６の画面では、基準マーカ３Ｙに対応する位置に、マーカ３Ａに対応付けられている仮想オブジェクトが移動する。以降、基準マーカ３Ｙに対して、基準マーカではないマーカ３Ａを、ノーマルマーカと称する。
【００９３】
図８では、ディスプレイ１６の画面には、基準マーカ３Ｙに基づく所定の位置には、基準マーカ３Ｙに関連付けられている仮想オブジェクト４Ｙが表示される。仮想オブジェクト４Ｙは、木を模したオブジェクトである。
【００９４】
ノーマルマーカ３Ａに基づく所定の位置には、ノーマルマーカ３Ａに関連付けられている仮想オブジェクト４Ａ−１が表示され、該仮想オブジェクト４Ａ−１は、その後、基準マーカ３Ｙに基づく所定の位置に移動する。
【００９５】
第１のＡＲ処理と同様に、ノーマルマーカ３Ａを一旦撮像範囲から外して再度撮像範囲内に戻す等のユーザ行為が行われると、その都度、ノーマルマーカ３Ａに基づく所定の位置には前回とは異なる仮想オブジェクト４Ａ−２、４Ａ−３が表示される。これらの仮想オブジェクト４Ａ−２、４Ａ−３も基準マーカ３Ｙに基づく所定の位置に移動する。このとき、既に表示されている仮想オブジェクト４Ａ−１も画面中に残ったままで表示される。結果として、第３のＡＲ処理では、基準マーカ３Ｙに、ノーマルマーカ３Ａの所定の位置に表示された仮想オブジェクト４Ａ−１、４Ａ−２、４Ａ−３が集まってくることとなる。
【００９６】
第３のＡＲ処理では、情報処理装置１は、基準マーカ３Ｙとともに撮像されるノーマルマーカ３Ａに対応する所定の位置に表示された仮想オブジェクトを基準マーカ３Ｙに関連付ける。これによって、撮像範囲からノーマルマーカ３Ａが外れても基準マーカ３Ｙが撮像範囲内にある場合には、当初ノーマルマーカ３Ａに基づく所定の位置に表示された仮想オブジェクト４は画面上の基準マーカ３Ｙに対応する所定の位置に表示され続ける。また、ノーマルマーカ３Ａに対して第１のＡＲ処理と同様に撮像画像から検出される度に表示される仮想オブジェクトが変化する処理が行われる場合には、ノーマルマーカ３Ａに関連付けられている複数の仮想オブジェクトが同じ画面上で表示されることになる。
【００９７】
図９は、一時的対応情報の一例を示す図である。一時的対応情報は、基準マーカ３Ｙとともにノーマルマーカ３が検出された場合に参照される情報であって、初期状態では、空である。図９に示される例は、基準マーカ３Ｙとともにノーマルマーカ３Ａが検出された場合の一時的対応情報である。
【００９８】
一時的対応情報には、基準マーカ３Ｙとノーマルマーカ３Ａとがともに撮像画像から検出された場合に、検出された基準マーカ３Ｙとノーマルマーカ３Ａとの情報が背面カメラ対応情報からコピーされる。ノーマルマーカ３Ａの情報において、ポインタが指し示す仮
想オブジェクトＩＤは、基準マーカ３Ｙの情報に書き込まれる。これによって、該仮想オブジェトが基準マーカ３Ｙに関連付けられ、基準マーカ３Ｙに関連付けられる仮想オブジェクトが増える。
【００９９】
なお、一時的対応情報において、ノーマルマーカ３Ａと、基準マーカ３Ｙに新たに関連付けられた仮想オブジェクトとの関連付けは、維持されてもよいし、該仮想オブジェクトの基準マーカ３Ｙとの関連付けを契機に解消されてもよい。ノーマルマーカ３Ａと基準マーカ３Ｙに新たに関連付けられた仮想オブジェクトとの関連付けが解消される場合には、ノーマルマーカ３Ａの検出の度に、元々ノーマルマーカ３Ａに関連付けられていた仮想オブジェクトが基準マーカ３Ｙとの関連付けに移動してしまうので、最終的に、ノーマルマーカ３Ａが検出されてもノーマルマーカ３Ａの対応する位置に仮想オブジェクトが表示されなくなる。
【０１００】
＜処理の流れ＞
図１０Ａ及び図１０Ｂは、第３のＡＲ処理のフローチャートの一例である。図１０Ａ及び図１０Ｂに示されるフローチャートは、情報処理装置１において、ＡＲ機能を起動するユーザ操作が受け付けられたことを契機として開始される。  
【０１０１】
ＯＰ２１では、撮像画像取得部２１は、撮像装置１５によって撮像された撮像画像を取得する。これによって、図１０Ａ及び図１０Ｂに示されるフローチャートは、撮像装置１５の撮像レート（例えば６０ｆｐｓ）で取得される各撮像画像について実行されることになる。ＯＰ２２では、特徴検出部２２が、撮像画像から、撮像された空間における特徴として、マーカ情報に含まれるマーカ画像に該当するマーカ３を検出する。マーカが検出された場合には（ＯＰ２２：ＹＥＳ）、処理がＯＰ２３に進む。マーカが検出されない場合には（ＯＰ２２：ＮＯ）、図１０Ａ及び図１０Ｂに示される処理が終了する。
【０１０２】
ＯＰ２３では、特徴検出部２２によって検出されたマーカ３が複数である場合には（ＯＰ２３：ＹＥＳ）、処理がＯＰ２４に進む。特徴検出部２２によって検出されたマーカ３が１つである場合には（ＯＰ２３：ＮＯ）、処理がＯＰ２５に進み、第１または第２のＡＲ処理（図５のＯＰ３〜ＯＰ９、又は、図７のＯＰ１３〜ＯＰ１８の処理）が実行される。その後、図１０Ａ及び図１０Ｂに示される処理が終了する。
【０１０３】
ＯＰ２４では、オブジェクト決定部２５は、検出された複数のマーカ３の中に、基準マーカ３Ｙが含まれるか否かを判定する。基準マーカ３Ｙが、検出されたマーカ３の中に含まれている場合には（ＯＰ２４：ＹＥＳ）、処理がＯＰ３１に進む。基準マーカ３Ｙが検出された複数のマーカの中に含まれていない場合には（ＯＰ２４：ＮＯ）、処理がＯＰ２５に進み、第１または第２のＡＲ処理（図５のＯＰ３〜ＯＰ９、又は、図７のＯＰ１３〜ＯＰ１８の処理）が実行される。その後、図１０Ａ及び図１０Ｂに示される処理が終了する。
【０１０４】
ＯＰ３１では、オブジェクト決定部２５は、基準マーカ３Ｙの前回の検出からの計測経過時間が所定時間以上であるか否かを判定する。所定時間は、例えば、３秒以上である。また、所定時間は、第１のＡＲ処理の第２の時間閾値であってもよい。基準マーカ３Ｙの前回の検出からの計測経過時間が所定時間未満である場合には（ＯＰ３１：ＮＯ）、処理がＯＰ３４に進む。基準マーカ３Ｙの前回の検出からの計測経過時間が所定時間以上である場合には（ＯＰ３１：ＹＥＳ）、処理がＯＰ３２に進む。
【０１０５】
ＯＰ３２では、オブジェクト決定部２５は、一時的対応情報を初期化する。一時的対応情報の初期状態は、空である。次に処理がＯＰ３３に進む。
【０１０６】
ＯＰ３３では、オブジェクト決定部２５は、検出された基準マーカ３Ｙ及びノーマルマーカ３の背面カメラ対応情報を一時的対応情報にコピーする。次に処理がＯＰ３４に進む。
【０１０７】
ＯＰ３４では、オブジェクト決定部２５は、ノーマルマーカ３に対応する位置に配置される仮想オブジェクトを決定する。ＯＰ３４の処理は、参照する情報が一時的対応情報である点以外は、第１のＡＲ処理の図５のＯＰ３〜ＯＰ６の処理と同様である。すなわち、オブジェクト決定部２５は、ノーマルマーカ３の前回の検出からの計測経過時間が第１の時間閾値未満、又は、第２の時間閾値以上である場合には、ノーマルマーカ３の一時的対応情報内のポインタが指し示す仮想オブジェクトを、ノーマルマーカ３に基づく所定の位置に配置される仮想オブジェクトに決定する。オブジェクト決定部２５は、ノーマルマーカ３の前回の検出からの計測経過時間が第１の時間閾値以上第２の時間閾値未満である場合には、ノーマルマーカ３の一時的対応情報内のポインタを移動させ、移動先の仮想オブジェクトを、ノーマルマーカ３に基づく所定の位置に配置される仮想オブジェクトに決定する。次に、処理がＯＰ３５に進む。
【０１０８】
ＯＰ３５では、オブジェクト決定部２５は、一時的対応情報において、ＯＰ３４で新たに決定されたノーマルマーカ３に基づく所定の位置に配置される仮想オブジェクトを、基準マーカ３Ｙに関連付ける。次に処理がＯＰ３６に進む。
【０１０９】
ＯＰ３６では、オブジェクト決定部２５は、基準マーカ３Ｙに対応付けられる仮想オブジェクトを一時的対応情報から取得する。次に処理がＯＰ３７に進む。
【０１１０】
ＯＰ３７〜ＯＰ３９では、図５のＯＰ７〜ＯＰ９と同様の処理が行われる。すなわち、取得された仮想オブジェクトがそれぞれ基準マーカ３Ｙに基づく所定の位置に配置され、仮想空間画像が生成され、撮像画像と仮想空間画像との合成画像が生成され、該合成画像がディスプレイ１６に表示される。その後、図１０Ａ及び図１０Ｂに示される処理が終了する。ただし、仮想オブジェクトが、基準マーカ３Ｙに新たに関連付けられたものである場合には、該仮想オブジェクトは、基準マーカ３Ｙに基づく所定の位置として、まず、ノーマルマーカ３に基づく所定の位置に配置され、基準マーカ３Ｙに基づく他の所定の位置へと移動するように設定される。この仮想オブジェクトの動作は、該仮想オブジェクトが、基準マーカ３Ｙに新たに関連づけられ、基準マーカ３Ｙに基づいて配置される仮想オブジェクトとして取得されるときに、オブジェクト決定部２５によって、該仮想オブジェクトに設定される。また、仮想オブジェクトの制御は、例えば、専用のプログラムによって行われており、仮想オブジェクトの上記動作は、該プログラムによって制御される。
【０１１１】
ＯＰ３５において、ノーマルマーカ３に基づく所定の位置に配置されることが決定された仮想オブジェクトは、一時的対応情報において、基準マーカ３Ｙに関連付けられる。これによって、例えば、該ノーマルマーカ３が撮像範囲から外れて検出されなくなっても、ノーマルマーカ３に関連付けられていた該仮想オブジェクトは、一時的対応情報において基準マーカ３Ｙに関連付けられているので、表示され続けることになる。
【０１１２】
また、ノーマルマーカ３については、第１のＡＲ処理と同様の処理が行われるため、基準マーカ３Ｙが撮像されている間に、ノーマルマーカ３を撮像範囲に出し入れすることによって、ノーマルマーカ３に関連付けられている複数の仮想オブジェクトが次々に基準マーカ３Ｙに関連付けられることになる。ディスプレイ１６の画面では、画面中の仮想オブジェクトが増えていくことなり、最終的には、ノーマルマーカ３に関連付けられているすべての仮想オブジェクトが基準マーカ３Ｙに対応する所定の位置に集合するようになる。
【０１１３】
また、仮想オブジェクトが基準マーカ３Ｙに新たに関連付けられた後も、該仮想オブジ
ェクトと、ノーマルマーカ３との関連付けが維持される場合には、ノーマルマーカ３を情報処理装置１に認識し直させるユーザ行為の繰り返しによって、該仮想オブジェクトと同じ仮想オブジェクトが表示されることになる。これによって、同じ画面上に、同じ仮想オブジェクトが複数表示させることができる。
【０１１４】
第３のＡＲ処理によって、ノーマルマーカ３に関連付けられている仮想オブジェクトが基準マーカ３Ｙに関連付けられるので、一つのノーマルマーカ３に関連付けられている複数の仮想オブジェクトを同じ画面上に表示させることができる。
【０１１５】
＜第３実施形態の作用効果＞
第３のＡＲ処理では、基準マーカ３Ｙとノーマルマーカ３とがともに検出されることによって、ノーマルマーカ３に関連付けられる仮想オブジェクトが基準マーカ３Ｙに関連付けられる。これによって、ＡＲ処理を視覚的変化に富んだエンターテイメント性の高いものとすることができる。
【０１１６】
＜第３のＡＲ処理の変形例＞
第３のＡＲ処理において、基準マーカ３Ｙに基づく仮想オブジェクトの配置ポイントがあらかじめ複数設定されており、ノーマルマーカ３に基づく所定の位置に配置される仮想オブジェクトに、最寄りの配置ポイントに移動させる命令を実行させるようにしてもよい。すでに、最寄りの配置ポイントに別の仮想オブジェクトが配置されている場合には、空いている配置ポイントのうちノーマルマーカ３に基づく所定の位置に最も近い配置ポイントに移動させるようにする。また、ノーマルマーカ３に基づく所定の位置に配置される仮想オブジェクトが最寄りの配置ポイントへ移動中に、撮像画像内での基準マーカ３Ｙの位置が変わり、移動先であった最寄りの配置ポイントも移動した場合には、新たに仮想オブジェクトから最寄りの配置ポイントを検出して、該検出した配置ポイントを該仮想オブジェクトの移動先としてもよい。仮想オブジェクトの制御は、例えば、専用のプログラムによって行われており、該プログラムに最寄りの配置ポイントに移動させる命令を実行させる。
【０１１７】
また、第３のＡＲ処理において、基準マーカ３Ｙは、背面カメラ対応情報又は前面カメラ対応情報において、いずれの仮想オブジェクトとも関連付けられていなくともよい。基準マーカ３Ｙとノーマルマーカ３とがともに検出された場合には、ノーマルマーカ３に関連付けられた仮想オブジェクトが表示されることになる。
【０１１８】
また、第３実施形態では、第３のＡＲ処理において、ノーマルマーカ３については、個別に第１のＡＲ処理が実行されていたが、これに限られない。例えば、第３のＡＲ処理において、ノーマルマーカ３には複数の仮想オブジェクトが関連付けられておらず、１つの仮想オブジェクトが関連付けられていてもよい。この場合には、例えば、撮像範囲にノーマルマーカ３を出し入れするたびに、基準マーカ３Ｙに関連付けられる、ノーマルマーカ３に関連付けられる仮想オブジェクトの数が増えるようにしてもよい。または、第３のＡＲ処理において、ノーマルマーカ３は、連続して検出される時間に応じて、仮想オブジェクトを変化させるようにしてもよい。
【０１１９】
また、第３実施形態では、一時的対応情報において、ノーマルマーカ３に関連付けられている仮想オブジェクトの基準マーカ３Ｙへの対応付けは、該仮想オブジェクトが所定の位置に配置される前に行われる（図１０Ｂ参照）。これに限られず、一時的対応情報におけるノーマルマーカ３に関連付けられている仮想オブジェクトの基準マーカ３Ｙへの対応付けは、例えば、該仮想オブジェクトをノーマルマーカ３に対応する所定の位置に配置し、所定時間経過後に行われてもよい。
【０１２０】
この場合には、例えば、図１０Ｂのフローチャートの、ＯＰ３４とＯＰ３５との処理の間に、該当のノーマルマーカ３が連続して検出される回数又は時間が所定回数又は所定時間に達しているか否かの判定を追加することによって実現可能である。該当のノーマルマーカ３が連続して検出される回数又は時間が所定回数又は所定時間に達している場合には、処理がＯＰ３５に進み、該ノーマルマーカ３に関連付けられている仮想オブジェクトの基準マーカ３Ｙへの対応付けが行われる。該当のノーマルマーカ３が連続して検出される回数又は時間が所定回数又は所定時間に達していない場合には、処理がＯＰ３６に進む。
【０１２１】
これによって、ディスプレイ１６の画面上では、ノーマルマーカ３と基準マーカ３Ｙとが撮像された場合に、ノーマルマーカ３に対応する所定の位置に、所定時間、ノーマルマーカ３に関連付けられている仮想オブジェクトが表示される。例えば、所定時間経過後、該仮想オブジェクトが基準マーカ３Ｙへ対応付けられることによって、ディスプレイ１６の画面上では、該仮想オブジェクトが基準マーカ３Ｙの所定の配置ポイントに移動する。
【０１２２】
＜第４実施形態＞
第４実施形態では、情報処理装置は、第４のＡＲ処理を行う。第４のＡＲ処理では、マーカ３の姿勢に応じて、表示される仮想オブジェクトの態様が変化する。第４実施形態では、第１〜第３実施形態と重複する説明は省略される。
【０１２３】
図１１Ａ及び図１１Ｂは、第４のＡＲ処理の一例を示す図である。図１１Ａ及び図１１Ｂの画面では、同一のマーカ３Ａが表示されており、双方の画面には同一の仮想オブジェクト４Ａ−１が表示されている。図１１Ａと図１１Ｂとでは、マーカ３Ａの姿勢が異なり、それに応じて、仮想オブジェクト４Ａ−１の動作も異なる。図１１Ａでは、マーカ３Ａは、ディスプレイ１６の表示画面の水平方向及び垂直方向に対して所定の角度で傾いて認識されて、仮想オブジェクト４Ａ−１は、カード２Ａを坂に見立てて滑り下りる動作を行っている。図１１Ｂでは、マーカ３Ａは、ディスプレイ１６の表示画面の水平方向の傾きがない状態で認識されて、仮想オブジェクト４Ａ−１は、カード２Ａを壁に見立てて登っている。
【０１２４】
第４のＡＲ処理を実行する情報処理装置１のハードウェア構成、機能構成はともに、第１実施形態と同様である（図１、図３参照）。第４のＡＲ処理では、オブジェクト決定部２５は、検出されたマーカ３に基づく所定の位置に配置される仮想オブジェクトの決定に、姿勢対応情報を用いる。
【０１２５】
図１２は、姿勢対応情報の一例を示す図である。姿勢対応情報は、マーカ３と仮想オブジェクトとの関連付けと、該マーカ３の姿勢と該仮想オブジェクトの動作との関連付けと、を保持する。姿勢対応情報において、動作は、仮想オブジェクトに所定の動作を実行させるための命令が記載されたファイルの識別情報が保持される。姿勢対応情報とは別に、例えば、補助記憶装置１４には、各姿勢の、互いに直交する３軸で構成される共通座標系の原点を始点とするベクトルでの定義が保持されている。姿勢対応情報において、姿勢は、例えば、該姿勢の定義が記載されるファイル等の識別情報が保持される。姿勢を定義するベクトルの値は、該姿勢を検出する基準となるベクトルであって、姿勢の検出の際には、定義されたベクトルに所定範囲が加味されて、最も近いものが検出される。
【０１２６】
なお、図１２では、態様の例として、動作を姿勢に関連付けているが、これに限られず、例えば、キャラクタの表情、服装等の外観の一部が関連付けられてもよい。また、姿勢対応情報とは別に、例えば、補助記憶装置１４には、態様の識別情報と、該態様を仮想オブジェクトに実行させるための命令を含むファイルとの対応付けの定義が保持されている。
【０１２７】
図１３は、第４のＡＲ処理のフローチャートの一例である。図１３に示されるフローチャートは、情報処理装置１において、ＡＲ機能を起動するユーザ操作が受け付けられたことを契機として開始される。
【０１２８】
ＯＰ４１では、撮像画像取得部２１は、撮像装置１５によって撮像された撮像画像を取得する。これによって、図１３に示されるフローチャートは、撮像装置１５の撮像レート（例えば６０ｆｐｓ）で取得される各撮像画像について実行されることになる。ＯＰ４２では、特徴検出部２２が、撮像画像から、撮像された空間における特徴として、マーカ情報に含まれるマーカ画像に該当するマーカ３を検出し、マーカが検出された場合には（ＯＰ４２：ＹＥＳ）、処理がＯＰ４３に進む。マーカが検出されない場合には（ＯＰ４２：ＮＯ）、図１３に示される処理が終了する。
【０１２９】
ＯＰ４３では、姿勢検出部２３は、検出されたマーカ３の姿勢を検出する。次に処理がＯＰ４４に進む。
【０１３０】
ＯＰ４４では、オブジェクト決定部２５は、姿勢対応情報から、検出されたマーカ３に関連付けられる仮想オブジェクトと、検出された姿勢に関連付けられる動作とを取得する。次に処理がＯＰ４５に進む。検出されたマーカ３が複数の場合には、各マーカ３についてＯＰ４３〜ＯＰ４４の処理が実行される。
【０１３１】
ＯＰ４５では、画像生成部２６は、取得された仮想オブジェクトを関連付けられるマーカ３に対応する所定の位置に配置し、取得された動作を実行するように設定する。マーカ３の位置及び姿勢は、マーカ３の検出とともに姿勢検出部２３によって表示基準情報として検出されており、画像生成部２６は、表示基準情報に従ってマーカ３の対応する所定の位置に仮想オブジェクトを配置する。次に処理がＯＰ４６に進む。
【０１３２】
ＯＰ４６では、画像生成部２６は、仮想空間の画像を生成する。ＯＰ４７では、表示制御部２７は、撮像画像に仮想空間の画像を重畳した合成画像を生成し、この合成画像をディスプレイ１６に出力し、表示させる。
【０１３３】
＜第４実施形態の作用効果＞
第４実施形態では、検出されたマーカ３の姿勢に応じて、表示される仮想オブジェクトの態様が変化する。これによって、視覚的変化に富んだＡＲ処理を提供することができる。また、ユーザに対して、マーカ３の姿勢変化への探究心を煽ることができる。
【０１３４】
第４実施形態では、検出されたマーカ３の姿勢に応じて、表示される仮想オブジェクトの態様が変化したが、これに代えて、マーカ３の姿勢に応じて、表示される仮想オブジェクト自体が変化してもよい。これは、姿勢対応情報において、姿勢と仮想オブジェクトとの関連付けを保持することによって実現可能である。
【０１３５】
また、第１実施形態と第４実施形態とは組み合わせて実施することも可能である。その場合には、例えば、姿勢対応情報には、マーカ３と仮想オブジェクトとの組み合わせを含めず、マーカ３に関連付けられた仮想オブジェクトは背面カメラ対応情報又は前面カメラ対応情報から取得し、取得した仮想オブジェクトの態様を姿勢対応情報から取得することによって実現可能である。
【０１３６】
＜実施形態のバリエーション＞
上記説明した実施形態において、表示制御部２７は、撮像画像に仮想空間の画像を重畳した合成画像を表示装置に表示させることで、ユーザが、仮想空間の画像が現実空間に重畳されて視認可能とする。但し、表示制御部２７は、仮想空間の画像が現実空間に重畳さ
れてユーザから視認されるように、表示装置に画像を表示させればよく、合成画像を表示する方式に限定されない。例えば、本発明は、ＨＵＤ（Ｈｅａｄ−Ｕｐ  Ｄｉｓｐｌａｙ）や、ユーザが装着しているメガネに仮想空間画像を映写する方式等、ユーザの視界に仮想空間画像を映写することで仮想空間の画像が現実空間に重畳されてユーザから視認されるタイプの拡張現実技術に適用されてもよい。
【０１３７】
上述した実施形態において、情報処理装置１は、単体で上述の処理を行ったが、これに限られない。上述した実施形態の処理は、複数の情報処理装置で分散して行われてもよい。例えば、組み合わせ情報は、ネットワーク上のデータベースに配置されており、情報処理装置１が該データベースにアクセスして組み合わせ情報を取得してもよい。また、例えば、画像生成部２６の処理を、ネットワーク上のサーバに実行させるように設計することによって、情報処理装置１がマーカ３の検出結果をサーバに送信し、該サーバが仮想空間画像を生成して情報処理装置１に送信するようにしてもよい。
【符号の説明】
【０１３８】
１  情報処理装置
２Ａ、２Ｙ  カード
３Ａ、３Ｙ  マーカ
２１    撮像画像取得部
２２    特徴検出部
２３    姿勢検出部
２４    表示基準情報記憶部
２５    オブジェクト決定部
２６    画像生成部
２７    表示制御部
【図１】
2015079447.tif 000003
【図２】
2015079447.tif 000004
【図３】
2015079447.tif 000005
【図４】
2015079447.tif 000006
【図５】
2015079447.tif 000007
【図６Ａ】
2015079447.tif 000008
【図６Ｂ】
2015079447.tif 000009
【図６Ｃ】
2015079447.tif 000010
【図７】
2015079447.tif 000011
【図８】
2015079447.tif 000012
【図９】
2015079447.tif 000013
【図１０Ａ】
2015079447.tif 000014
【図１０Ｂ】
2015079447.tif 000015
【図１１Ａ】
2015079447.tif 000016
【図１１Ｂ】
2015079447.tif 000017
【図１２】
2015079447.tif 000018
【図１３】
2015079447.tif 000019