特許第6857795号(P6857795)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社コナミデジタルエンタテインメントの特許一覧

特許6857795情報処理装置、情報処理装置のプログラム、情報処理システム、及び、表示方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6857795
(24)【登録日】2021年3月25日
(45)【発行日】2021年4月14日
(54)【発明の名称】情報処理装置、情報処理装置のプログラム、情報処理システム、及び、表示方法
(51)【国際特許分類】
   G06T 19/00 20110101AFI20210405BHJP
   A63F 13/428 20140101ALI20210405BHJP
   A63F 13/52 20140101ALI20210405BHJP
   G06F 3/0481 20130101ALI20210405BHJP
   G06F 3/0487 20130101ALI20210405BHJP
【FI】
   G06T19/00 600
   A63F13/428
   A63F13/52
   G06F3/0481
   G06F3/0487
【請求項の数】11
【全頁数】34
(21)【出願番号】特願2017-254724(P2017-254724)
(22)【出願日】2017年12月28日
(65)【公開番号】特開2019-121100(P2019-121100A)
(43)【公開日】2019年7月22日
【審査請求日】2018年3月19日
【審判番号】不服2019-15580(P2019-15580/J1)
【審判請求日】2019年11月20日
【新規性喪失の例外の表示】特許法第30条第2項適用 平成29年8月13日 Yu−Gi−Oh! World Championship 2017 コナミスポーツクラブ本店(東京都品川区東品川4−10−1)
(73)【特許権者】
【識別番号】506113602
【氏名又は名称】株式会社コナミデジタルエンタテインメント
(74)【代理人】
【識別番号】110003177
【氏名又は名称】特許業務法人旺知国際特許事務所
(74)【代理人】
【識別番号】100125689
【弁理士】
【氏名又は名称】大林 章
(72)【発明者】
【氏名】上田 英生
(72)【発明者】
【氏名】吉田 貴裕
(72)【発明者】
【氏名】堀切 道生
【合議体】
【審判長】 清水 正一
【審判官】 樫本 剛
【審判官】 小池 正彦
(56)【参考文献】
【文献】 特開2001−195601(JP,A)
【文献】 国際公開第2017/68824(WO,A1)
【文献】 特開2015−170232(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
A63F 13/00 - 13/98
(57)【特許請求の範囲】
【請求項1】
プロセッサを具備する情報処理装置のプログラムであって、
前記プロセッサを、
オブジェクトが配置され、ユーザが存在する現実空間を、前記現実空間内の前記ユーザが存在する位置とは異なる位置から撮像する第1撮像部の、
前記現実空間における位置及び姿勢を特定する第1特定部と、
前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、
前記オブジェクトに対応する第2画像を、
前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、
して機能させ、
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記表示制御部は、
前記第1特定部による特定結果に基づいて、
前記表示部における、
前記第2画像と前記第3画像との相対的な位置関係を決定し、
当該決定の結果に基づいて、
前記第2画像及び前記第3画像を前記表示部に表示させる、
ことを特徴とする情報処理装置のプログラム。
【請求項2】
前記第1特定部は、
前記第1撮像部による撮像結果に基づいて、
前記第1撮像部の前記現実空間における位置及び姿勢を特定する、
ことを特徴とする、請求項1に記載の情報処理装置のプログラム。
【請求項3】
前記表示制御部は、
前記表示部において、
前記第2画像の少なくとも一部と前記第3画像の少なくとも一部とが重なる場合に、
前記第1特定部による特定結果に基づいて、
前記第2画像の少なくとも一部、または、前記第3画像の少なくとも一部のうち、
何れか一方を、非表示とする、
ことを特徴とする、請求項1または2に記載の情報処理装置のプログラム。
【請求項4】
前記第1画像は、
前記現実空間のうち前記ユーザの背景を表す第4画像を含み、
前記表示制御部は、
前記第1特定部による特定結果に基づいて、
前記表示部における、
前記第2画像と前記第3画像と前記第4画像との相対的な位置関係を決定し、
当該決定の結果に基づいて、
前記第2画像、前記第3画像、及び、前記第4画像を、前記表示部に表示させる、
ことを特徴とする、請求項1乃至3のうち何れか1項に記載の情報処理装置のプログラム。
【請求項5】
前記プロセッサを、
前記オブジェクトを撮像する第2撮像部による撮像結果に基づいて、
前記オブジェクトの種類を特定する第2特定部、
として更に機能させ、
前記第2画像は、
前記第2特定部の特定したオブジェクトの種類に応じた画像である、
ことを特徴とする、請求項1乃至4のうち何れか1項に記載の情報処理装置のプログラム。
【請求項6】
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記第2画像は、
前記オブジェクトに対応するキャラクタを表す画像であり、
前記表示制御部は、
前記表示部により表示される表示空間において、
前記第2画像として表される前記キャラクタと、
前記第3画像として表される前記ユーザとが、
所定の位置関係を有するように、
前記表示部に対して、前記第2画像及び前記第3画像を表示させる、
ことを特徴とする、請求項1乃至5のうち何れか1項に記載の情報処理装置のプログラム。
【請求項7】
プロセッサを具備する情報処理装置のプログラムであって、
前記プロセッサを、
オブジェクトが配置され、ユーザが存在する現実空間を、前記現実空間内の前記ユーザが存在する位置とは異なる位置から撮像する第1撮像部の、
前記現実空間における位置及び姿勢を特定する第1特定部と、
前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、
前記オブジェクトに対応する第2画像を、
前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、
して機能させ、
前記第1画像は、
前記現実空間内のユーザを表す第3画像と、
前記現実空間のうち前記ユーザの背景を表す第4画像と、を含み、
前記第2画像は、
前記オブジェクトに対応するキャラクタを表す画像であり、
前記表示制御部は、
前記表示部により表示される表示空間において、
前記第2画像として表される前記キャラクタが、
前記第3画像として表される前記ユーザと、
前記第4画像として表される前記背景と、の間に位置するように、
前記表示部に対して、前記第2画像、前記第3画像、及び、前記第4画像を表示させる、
ことを特徴とする情報処理装置のプログラム。
【請求項8】
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記第2画像は、
前記オブジェクトに対応するキャラクタを表す画像であり、
前記表示制御部は、
前記ユーザが所定の動作を実行した場合に、
前記表示部により表示される表示空間において、
前記第2画像として表される前記キャラクタと、
前記第3画像として表される前記ユーザとの、
相対的な位置関係が変化するように、
前記表示部に対して、前記第2画像及び前記第3画像を表示させる、
ことを特徴とする、請求項1乃至7のうち何れか1項に記載の情報処理装置のプログラム。
【請求項9】
オブジェクトが配置され、ユーザが存在する現実空間を、前記現実空間内の前記ユーザが存在する位置とは異なる位置から撮像する第1撮像部の、
前記現実空間における位置及び姿勢を特定する第1特定部と、
前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、
前記オブジェクトに対応する第2画像を、
前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、
を備え、
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記表示制御部は、
前記第1特定部による特定結果に基づいて、
前記表示部における、
前記第2画像と前記第3画像との相対的な位置関係を決定し、
当該決定の結果に基づいて、
前記第2画像及び前記第3画像を前記表示部に表示させる、
ことを特徴とする情報処理装置。
【請求項10】
オブジェクトが配置され、ユーザが存在する現実空間を、前記現実空間内の前記ユーザが存在する位置とは異なる位置から撮像する第1撮像部
表示部と、
情報処理装置と、
を備える情報処理システムであって、
前記情報処理装置は、
前記第1撮像部の、
前記現実空間における位置及び姿勢を特定する第1特定部と、
前記第1撮像部による撮像結果に基づく第1画像を前記表示部に表示させ、
前記オブジェクトに対応する第2画像を、
前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、
を備え、
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記表示制御部は、
前記第1特定部による特定結果に基づいて、
前記表示部における、
前記第2画像と前記第3画像との相対的な位置関係を決定し、
当該決定の結果に基づいて、
前記第2画像及び前記第3画像を前記表示部に表示させる、
ことを特徴とする情報処理システム。
【請求項11】
オブジェクトが配置され、ユーザが存在する現実空間を、前記現実空間内の前記ユーザが存在する位置とは異なる位置から撮像する第1撮像部の、
前記現実空間における位置及び姿勢を特定し、
前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、
前記オブジェクトに対応する第2画像を、
前記表示部のうち、前記特定の結果に基づく位置に、表示させ、
前記第1画像は、
前記現実空間内のユーザを表す第3画像を含み、
前記特定の結果に基づいて、
前記表示部における、
前記第2画像と前記第3画像との相対的な位置関係を決定し、
当該決定の結果に基づいて、
前記第2画像及び前記第3画像を前記表示部に表示させる、
ことを特徴とする表示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理装置のプログラム、情報処理システム、及び、表示方法に関する。
【背景技術】
【0002】
近年、現実空間を撮像して得られる画像と仮想的な情報を表す画像とを合成した画像を、表示部に対して表示させる、所謂、拡張現実(AR:Augmented Reality)に関する技術が普及しつつある。例えば、特許文献1には、現実空間に設けられたカード等のオブジェクトを撮像して得られる画像と、当該オブジェクトに対応付けられた仮想的なキャラクタ等を示す画像とを合成することで、あたかも、オブジェクト上に仮想的なキャラクタ等が存在するかのような合成画像を生成し、当該合成画像を表示部に対して表示させる技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2014−093034号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、従来の技術では、現実空間に設けられたカード等のオブジェクトを撮像し、当該撮像の結果に基づいて、当該オブジェクトに印刷された記号及び図形等の特徴を検出する。そして、当該検出の結果に基づいて、現実空間におけるオブジェクトの位置及び姿勢を特定し、表示部のうち、当該特定の結果に応じた位置に、オブジェクトに対応する仮想的なキャラクタ等を示す画像を表示させる。このため、従来の技術において、仮想的なキャラクタ等を示す画像を、表示部の所望の位置に表示させるためには、現実空間においてオブジェクトを所定の位置に正確に配置する必要があり、オブジェクトを配置するユーザの負担が大きかった。
【0005】
本発明は、上述した事情を鑑みてなされたものであり、従来技術と比較して、現実空間におけるオブジェクトの配置の手間を削減しつつ、表示部においてオブジェクトに対応する画像を表示することを可能とする技術の提供を、解決課題の一つとする。
【課題を解決するための手段】
【0006】
以上の課題を解決するために、本発明の一態様に係る情報処理装置のプログラムは、プロセッサを具備する情報処理装置のプログラムであって、前記プロセッサを、オブジェクトが配置された現実空間を撮像する第1撮像部の、前記現実空間における位置及び姿勢の少なくとも一方を特定する第1特定部と、前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、前記オブジェクトに対応する第2画像を、前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、して機能させる、ことを特徴とする。
【図面の簡単な説明】
【0007】
図1】本発明の第1実施形態に係る情報処理システム1の概要の一例を示す説明図である。
図2】合成画像GGの一例を示す説明図である。
図3】合成画像GGの一例を示す説明図である。
図4】情報処理システム1の構成の一例を示すブロック図である。
図5】情報処理装置10のハードウェア構成の一例を示すブロック図である。
図6】情報処理装置10の動作の一例を示すフローチャートである。
図7】表示空間SP-Vの概要の一例を示す説明図である。
図8】本発明の第2実施形態に係る情報処理システム1Aの構成の一例を示すブロック図である。
図9】情報処理装置10Aの動作の一例を示すフローチャートである。
図10】表示空間SP-Vの概要の一例を示す説明図である。
図11】本発明の第3実施形態に係る情報処理システム1Bの構成の一例を示すブロック図である。
図12】情報処理装置10Bの動作の一例を示すフローチャートである。
図13】本発明の第4実施形態に係る情報処理システム1Cの構成の一例を示すブロック図である。
図14】情報処理装置10Cの動作の一例を示すフローチャートである。
図15】表示空間SP-Vの概要の一例を示す説明図である。
図16】情報処理装置10Cの動作の一例を示すフローチャートである。
図17】表示空間SP-Vの概要の一例を示す説明図である。
図18】情報処理装置10Cの動作の一例を示すフローチャートである。
図19】表示空間SP-Vの概要の一例を示す説明図である。
図20】本発明の第5実施形態に係る情報処理システム1Dの構成の一例を示すブロック図である。
図21】情報処理装置10Dの動作の一例を示すフローチャートである。
図22】本発明の変形例1に係る合成画像GGの一例を示す説明図である。
図23】本発明の変形例2に係る合成画像GGの一例を示す説明図である。
【発明を実施するための形態】
【0008】
以下、本発明を実施するための形態について図面を参照して説明する。なお、各図において、各部の寸法及び縮尺は、実際のものと適宜に異ならせてある。また、以下に述べる実施の形態は、本発明の好適な具体例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの形態に限られるものではない。
【0009】
[1.第1実施形態]
以下、本発明の第1実施形態を説明する。
【0010】
[1.1.情報処理システムの概要]
図1は、本実施形態に係る情報処理システム1の概要の一例を説明するための説明図である。以下、図1を参照しつつ、情報処理システム1の概要の一例を説明する。
【0011】
本実施形態に係る情報処理システム1は、ゲームを実行するユーザU1及びユーザU2が存在する現実空間SP-Rを撮像し、当該撮像の結果に基づいて、ユーザU1及びユーザU2がゲームを実行している様子を表示するシステムである。
以下では、ユーザU1及びユーザU2を区別しない場合には、ユーザU1及びユーザU2を、ユーザUqと総称する。ここで、本実施形態において、符号に添えられた添え字qは、「1≦q≦2」を満たす自然数であることとする。
なお、本実施形態では、2人のユーザU1及びユーザU2がゲームを実行する場合を、一例として想定するが、本発明はこのような態様に限定されるものではない。ゲームは、1人以上のユーザにより実行されるものであってもよい。例えば、ゲームは、3人のユーザにより実行されるものであってもよいし、4人のユーザにより実行されるものであってもよい。この場合、添え字qは、ゲームを実行するユーザの人数に応じた範囲の自然数であればよい。すなわち、添え字qは、1≦q≦3を満たす自然数であってもよいし、1≦q≦4を満たす自然数であってもよいし、更には、1≦qを満たす自然数であってもよい。
また、以下では、ユーザUqに関連する要素については、当該要素を表す符合に対しても、添え字qを付して表現する場合がある。
【0012】
本実施形態では、一例として、現実空間SP-Rにおいて、ユーザUqが存在する部屋の壁WL(「背景」の一例)と、ユーザUqが有するカードCDq(「オブジェクト」の一例)が配置されるテーブルTBと、が設けられている場合を想定する。また、本実施形態では、現実空間SP-Rのうち予め定められた位置に、所定の模様を有するマーカMKが設けられている場合を想定する。
【0013】
また、本実施形態では、一例として、ユーザU1及びユーザU2が実行するゲームが、ユーザU1がテーブルTBに配置したカードCD1と、ユーザU2がテーブルTBに配置したカードCD2とを、対戦させるカードゲームである場合を想定する。
本実施形態に係るカードゲームには、複数種類のカードが存在する。各カードには、当該カードの種類に対応する種類のキャラクタを表す絵柄が印刷されている。
ユーザUqは、ユーザUqの有する複数種類のカードの中から、カードCDqを選択し、当該選択したカードCDqをテーブルTBに配置することができる。以下では、カードCDqに印刷された絵柄により表されるキャラクタを、キャラクタVqと称する。
【0014】
本実施形態に係るカードゲームでは、一例として、ユーザUqに対して予めヒットポイントが割り当てられており、また、カードCDqに対して予め攻撃力と防御力とが割り当てられている場合を想定する。そして、本実施形態に係るカードゲームでは、一例として、ユーザU1がカードCD1を用いてカードCD2を攻撃する場合、カードCD1の有する攻撃力からカードCD2の有する防御力を減算した減算値を、ユーザU2の有するヒットポイントから減算することとする。同様に、本実施形態に係るカードゲームでは、ユーザU2がカードCD2を用いてカードCD1を攻撃する場合、カードCD2の有する攻撃力からカードCD1の有する防御力を減算した減算値を、ユーザU1の有するヒットポイントから減算することとする。そして、本実施形態に係るカードゲームでは、一例として、ユーザU1が、ユーザU2のヒットポイントを「0」以下に減少させた場合、ユーザU1はカードゲームにおいて勝利し、ユーザU2は敗北することとする。同様に、本実施形態に係るカードゲームでは、ユーザU2が、ユーザU1のヒットポイントを「0」以下に減少させた場合、ユーザU2はカードゲームにおいて勝利し、ユーザU1は敗北することとする。なお、ゲームのルールは上記に限られないことは当然であり、カード同士の直接的な攻撃と防御がなされるゲームに限られないこともまた当然である。すなわち、本発明において、ゲームは、ユーザUqが、カードCDq等の「オブジェクト」を用いて実行する任意のゲームであればよい。
【0015】
図1に示すように、情報処理システム1は、情報処理装置10と、画像を表示するための表示部21を具備する表示装置20と、各種情報を記憶する記憶装置30(図4参照)と、現実空間SP-Rを撮像するカメラCMA(「第1撮像部」の一例)と、現実空間SP-Rにおいて、カードCDqが配置されている領域Arqを撮像するためのカメラCMT(「第2撮像部」の一例)と、を有する。
【0016】
カメラCMAは、現実空間SP-Rを撮像し、撮像して得られた画像(以下、「撮像画像」と称する場合がある。「第1画像」の一例)を示す撮像データDAを、周期的に出力する。また、カメラCMAは、カメラCMAが被写体を撮像した場合に、カメラCMAと被写体との間の距離に応じた値を示す深度情報DSを、周期的に出力する。すなわち、カメラCMAは、現実空間SP-R内の被写体を撮像することで、被写体の形状、模様、及び、色彩を示す撮像データDAと、カメラCMA及び被写体の間の距離に応じた値を示す深度情報DSと、を出力する。
本実施形態において、深度情報DSは、撮像データDAの示す撮像画像を構成する複数の画素の各々について、当該画素に対応する被写体の部位とカメラCMAとの間の距離に応じた値を示す。但し、深度情報DSの解像度は、撮像データDAの解像度より低くてもよい。すなわち、深度情報DSは、撮像データDAの示す撮像画像を構成する複数の画素を、各々が2以上の画素からなる複数の画素ブロックに区分した場合に、撮像データDAの示す撮像画像を構成する複数の画素ブロックの各々について、当該画素ブロックに対応する被写体の部位とカメラCMAとの間の距離に応じた値を示してもよい。
【0017】
なお、本実施形態では、カメラCMAが、現実空間SP-Rにおいて、位置及び向きを変化させることが可能である場合を想定する。
また、本実施形態では、説明の便宜上、現実空間SP-Rに固定されたワールド座標系Σと、カメラCMAに固定されたカメラ座標系Σと、を導入する。
ここで、ワールド座標系Σとは、例えば、現実空間SP-Rの所定位置に原点を有し、互いに直交するX軸、Y軸、及び、Z軸を有する3軸の直交座標系である。本実施形態では、図1に示すように、+Z方向が、鉛直上向き方向である場合を、一例として想定する。
また、カメラ座標系Σとは、例えば、カメラCMA上の所定箇所に原点を有し、互いに直交するX軸、Y軸、及び、Z軸を有する3軸の直交座標系である。本実施形態では、図1に示すように、+Z方向が、カメラCMAの有する光学系の光軸方向である場合を、一例として想定する。なお、カメラ座標系Σとしては、カメラCMAからの距離を表す座標軸と、カメラCMAの有する光学系の光軸方向からの角度を表す座標軸と、を有する極座標系を採用してもよい。
【0018】
カメラCMTは、テーブルTB上の領域Arqに配置されたカードCDqを撮像し、撮像して得られた画像を示す撮像データDTを、周期的に出力する。
【0019】
記憶装置30は、カードデザイン情報、キャラクタ情報、マーカ情報、及び、相対位置情報、を記憶している。ここで、カードデザイン情報とは、カードCDqに描かれたキャラクタVqの絵柄に関する情報である。また、キャラクタ情報とは、キャラクタVqの3次元形状を示す情報である。また、本実施形態において、マーカ情報とは、ワールド座標系ΣにおけるマーカMKの位置及び向きと、マーカMKの形状及び大きさと、を表す情報である。但し、マーカ情報は、少なくとも、ワールド座標系ΣにおけるマーカMKの位置及び向きと、マーカMKの形状のみを表す情報であればよく、マーカMKの大きさを含まない情報であってもよい。なお、相対位置情報については、後述する。
【0020】
情報処理装置10は、表示部21において表示すべき画像を示す表示データDoutを生成する処理である、表示データ生成処理を実行する。本実施形態において、表示データ生成処理とは、カメラCMAから出力される撮像データDA及び深度情報DSと、カメラCMTから出力される撮像データDTと、記憶装置30に記憶されている、カードデザイン情報、キャラクタ情報、マーカ情報、及び、相対位置情報と、に基づいて、表示部21において表示すべき画像を示す表示データDoutを生成する処理である。
【0021】
具体的には、情報処理装置10は、表示データ生成処理において、撮像データDT及びカードデザイン情報に基づいて、カードCDqの種類を特定し、カードCDqに描かれているキャラクタVqの種類を特定する。
また、情報処理装置10は、表示データ生成処理において、撮像データDA、及び、マーカ情報に基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定する(図7参照)。なお、位置を示す符号P、及び、向きを示す符号Rの左上の添え字「W」は、当該位置及び向きが、ワールド座標系Σにおける位置または向きであることを意味することとする。また、マーカ情報がマーカMKの大きさを含まない情報である場合、情報処理装置10は、撮像データDA及びマーカ情報に加え、深度情報DSに基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定すればよい。
また、情報処理装置10は、表示データ生成処理において、撮像データDA及び深度情報DSと、に基づいて、カメラ座標系ΣにおけるユーザUqの位置Uq及び向きUqを特定する(図7参照)。なお、位置を示す符号P、及び、向きを示す符号Rの左上の添え字「C」は、当該位置及び向きが、カメラ座標系Σにおける位置または向きであることを意味することとする。
そして、情報処理装置10は、表示データ生成処理において、相対位置情報と、ユーザUqの位置Uqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する(図7参照)。ここで、相対位置情報とは、現実空間SP-RにキャラクタVqが存在すると仮定した場合に、ワールド座標系Σにおいて、ユーザUqからキャラクタVqの位置を示すベクトルUVqを示す情報である(図7参照)。本実施形態では、ベクトルUVqが予め定められていることとする。すなわち、本実施形態では、現実空間SP-RにキャラクタVqが存在すると仮定した場合に、現実空間SP-Rにおいて、ユーザUqとキャラクタVqとが「所定の位置関係」を有するように、キャラクタVqの位置が定められる場合を想定する。
また、情報処理装置10は、表示データ生成処理において、カメラ座標系ΣにおけるユーザUqの向きUqに基づいて、カメラ座標系ΣにおけるキャラクタVqの向きVqを決定する(図7参照)。
そして、情報処理装置10は、表示データ生成処理において、カメラ座標系ΣにおけるキャラクタVqの位置Vq及び向きVqに基づいて、表示部21においてキャラクタVqを表すキャラクタ画像GVqの形状を決定する。ここで、キャラクタ画像GVqの形状とは、キャラクタ情報の示す3次元形状を有するキャラクタVqが、カメラ座標系Σにおいて、位置Vqに存在し、且つ、向きVqを有している場合に、当該キャラクタVqを、カメラCMAから撮像した結果として得られる画像の形状である。
その後、情報処理装置10は、表示データ生成処理において、撮像データDAの示す撮像画像と、キャラクタ画像GVq等、撮像画像以外の画像である非撮像画像と、を合成した合成画像GGを示す表示データDoutを生成する。なお、本実施形態において、情報処理装置10は、非撮像画像に対して、キャラクタ画像GVqの他に、ユーザUqのヒットポイントを示すヒットポイント画像GHPqを含ませることとする。
【0022】
図2及び図3は、表示データDoutに基づく合成画像GGが、表示部21に表示されている様子を例示する図である。
このうち、図2は、現実空間SP-Rにおいて、カメラCMAが、ユーザU1及びユーザU2の−Y側から、ユーザU1及びユーザU2を撮像した場合に、表示部21に表示される合成画像GGを示している。
また、図3は、現実空間SP-Rにおいて、カメラCMAが、ユーザU1の+X側から、ユーザU1を撮像した場合に、表示部21に表示される合成画像GGを示している。
【0023】
上述したように、合成画像GGは、撮像データDAの示す撮像画像と、情報処理装置10において生成された非撮像画像と、を含む。
図2及び図3に例示されるように、撮像画像は、ユーザUqを撮像して得られるユーザ画像GUqと、壁WLを撮像して得られる壁画像GWLと、テーブルTBを撮像して得られるテーブル画像GTBと、マーカMKを撮像して得られるマーカ画像GMKとの、一部または全部を含む。また、非撮像画像は、上述のとおり、キャラクタ画像GVqと、ヒットポイント画像GHPとの、一部または全部を含む。
なお、キャラクタ画像GVqは、「第2画像」の一例であり、ユーザ画像GUqは、「第3画像」の一例であり、壁画像GWLは、「第4画像」の一例である。
本実施形態において、撮像画像は、被写体の形状、模様、及び、色彩を示すが、本発明はこのような態様に限定されるものではない。撮像画像のうちの一部分は、被写体についての、形状、輪郭、色彩、及び、模様のうちの一部のみを示すものであってもよい。例えば、撮像画像のうち、ユーザ画像GUq以外の部分については、被写体の形状、模様、及び、色彩を示し、ユーザ画像GUqについては、ユーザUqの骨格等の形状、または、ユーザUqのシルエット等の輪郭のみを示してもよい。また、ユーザUqの全部または一部にモザイクなどの加工を施した画像もユーザ画像GUqに含みうる。
【0024】
以下では、合成画像GGにより表現される3次元の仮想的な空間を、「表示空間SP-V」と称する。表示空間SP-Vは、現実空間SP-Rに対して、非撮像画像により表されるキャラクタVq等の仮想的な物体を付加した空間である。すなわち、表示空間SP-Vは、非撮像画像により表されるキャラクタVq等の仮想的な物体が存在する点を除き、現実空間SP-Rと同様の空間である。このため、以下では、説明の便宜上、表示空間SP-Vにおける位置及び向きを、ワールド座標系Σを利用して表現することとする。
【0025】
なお、図2及び図3では、相対位置情報の示すベクトルUV1が、ユーザU1から見て−X方向で、且つ、+Y方向を向くベクトルである場合を例示している。このため、図2及び図3に例示する合成画像GGでは、キャラクタ画像GV1のうち、ユーザ画像GU1と重なる部分を非表示とすることで、カメラCMAから見てキャラクタV1の手前にユーザU1が位置する様子を表現している。
また、図2では、相対位置情報の示すベクトルUV2が、ユーザU2から見て+Y方向を向くベクトルである場合を例示している。このため、図2に例示する合成画像GGでは、キャラクタ画像GV2のうち、ユーザ画像GU2と重なる部分を非表示とすることで、カメラCMAから見てキャラクタV2の手前にユーザU2が位置する様子を表現している。
【0026】
[1.2.情報処理システムの構成]
以下、図4及び図5を参照しつつ、情報処理システム1の構成の一例を説明する。なお、図4は、情報処理システム1の構成の一例を示す機能ブロック図である。また、図5は、情報処理装置10のハードウェア構成の一例を示す構成図である。
【0027】
図4に例示するように、情報処理システム1は、上述のとおり、情報処理装置10と、表示装置20と、記憶装置30と、カメラCMAと、カメラCMTと、これら複数の構成要素が互いに通信をする際に用いられるネットワークNwと、を備える。
【0028】
情報処理装置10は、情報処理装置10の各部を制御する制御部11と、情報処理装置10の制御プログラムPRGを含む各種情報を記憶する記憶部12と、情報処理装置10の外部装置との間の通信を実行するための通信部13と、情報処理装置10の操作者による操作を受け付けるための操作部14と、光ディスク等の記録媒体から情報を読み込むための情報読込部15と、を備える。
【0029】
制御部11は、表示制御部110と、オブジェクト特定部115と、カメラ位置特定部116と、被写体位置特定部117と、を備える。
なお、本実施形態において、カメラ位置特定部116は、「第1特定部」の一例であり、オブジェクト特定部115は、「第2特定部」の一例である。
【0030】
オブジェクト特定部115は、撮像データDTに基づいて、カードCDqに描かれているキャラクタVqの種類を特定する。すなわち、オブジェクト特定部115は、撮像データDTに基づいて、カードCDqの種類を特定する。
カメラ位置特定部116は、撮像データDAの示すマーカ画像GMKと、マーカ情報と、に基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定する。これにより、カメラ座標系Σにおける位置P及び向きRと、ワールド座標系Σにおける位置P及び向きRと、を相互に変換することが可能な、座標変換式を得ることができる。なお、カメラ位置特定部116は、ワールド座標系ΣにおけるカメラCMAの位置及び向きのうち、少なくとも一方を特定するものであってもよい。
被写体位置特定部117は、撮像データDA及び深度情報DSのうちユーザ画像GUqに対応する情報に基づいて、カメラ座標系ΣにおけるユーザUqの位置Uq及び向きUqを特定する。
【0031】
表示制御部110は、キャラクタ位置決定部111と、重なり抽出部112と、遠近判定部113と、表示情報生成部114と、を備える。
【0032】
キャラクタ位置決定部111は、相対位置情報の示すベクトルUVqと、被写体位置特定部117により特定された、カメラ座標系ΣにおけるユーザUqの位置Uq及び向きUqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vq及び向きVqを決定する。
重なり抽出部112は、合成画像GGにおける、ユーザ画像GUqとキャラクタ画像GVqとの重なりを抽出する。
遠近判定部113は、カメラ座標系ΣにおけるユーザUqの位置Uqと、カメラ座標系ΣにおけるキャラクタVqの位置Vqと、に基づいて、ユーザUq及びキャラクタVqの何れが、カメラCMAに近いかを判定する。
表示情報生成部114は、撮像データDAの示す撮像画像と、重なり抽出部112における抽出結果と、遠近判定部113における判定結果と、に基づいて、合成画像GGを示す表示データDoutを生成する。
【0033】
図5に示すように、情報処理装置10は、情報処理装置10の各部を制御するプロセッサ1000と、各種情報を記憶するメモリ1001と、情報処理装置10の外部に存在する外部装置との通信を行うための通信装置1002と、情報処理装置10の操作者による操作を受け付けるための入力操作装置1003と、記録媒体から情報を読み込むためのディスク装置1004と、を備える。
【0034】
メモリ1001は、例えば、プロセッサ1000の作業領域として機能するRAM(Random Access Memory)等の揮発性メモリと、情報処理装置10の制御プログラムPRG等の各種情報を記憶するEEPROM(Electrically Erasable Programmable Read-Only Memory)等の不揮発性メモリとを含み、記憶部12としての機能を提供する。
プロセッサ1000は、例えば、CPU(Central Processing Unit)であり、メモリ1001に記憶された制御プログラムPRGを実行し、当該制御プログラムPRGに従って動作することで、制御部11として機能する。
通信装置1002は、ネットワークNwを介して、情報処理装置10の外部に存在する外部装置との通信を行うためのハードウェアであり、通信部13としての機能を提供する。
入力操作装置1003は、例えば、操作ボタンであり、情報処理装置10の操作者の操作を受け付ける操作部14としての機能を提供する。入力操作装置1003は、例えば、操作ボタン、タッチパネル、キーボード、ジョイスティック、及び、マウス等のポインティングデバイスの一部または全部を含む、1または複数の機器から構成されるものであってもよい。
ディスク装置1004は、例えば、光ディスク装置であり、光ディスク等の記録媒体に記録された制御プログラムPRG等の各種情報を読み込む情報読込部15としての機能を提供する。
【0035】
なお、プロセッサ1000は、CPUに加え、または、CPUに替えて、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、または、FPGA(Field Programmable Gate Array)、等の、ハードウェアを含んで構成されるものであってもよい。この場合、プロセッサ1000により実現される制御部11の一部または全部は、DSP等のハードウェアにより実現されてもよい。
【0036】
[1.3.情報処理装置の動作]
図6及び図7を参照しつつ、情報処理装置10が表示データ生成処理を実行する場合における、当該情報処理装置10の動作の一例を説明する。なお、図6は、情報処理装置10が表示データ生成処理を実行する場合における、当該情報処理装置10の動作の一例を示すフローチャートである。また、図7は、+Z側から表示空間SP-Vを見た場合における、ユーザUq、壁WL、キャラクタVq、及び、カメラCMA等の、表示空間SP-Vに存在する各種物体の位置関係を説明するための説明図である。なお、本実施形態では、一例として、情報処理装置10の操作者等により、表示データ生成処理を開始させる旨を指示する操作が操作部14から入力された場合に、情報処理装置10が、図6に示す表示データ生成処理を開始させる場合を想定する。
【0037】
図6に示すように、オブジェクト特定部115は、表示データ生成処理において、カメラCMTから出力される撮像データDTに基づいて、カードCDqの種類を特定する(S100)。
具体的には、オブジェクト特定部115は、ステップS100において、撮像データDTの示すカードCDqに描かれた絵柄と、カードデザイン情報の示すキャラクタVqの絵柄と、に基づいて、カードCDqに描かれているキャラクタVqの種類を特定することで、カードCDqの種類を特定する。
【0038】
なお、オブジェクト特定部115は、ステップS100において、撮像データDT以外の情報に基づいて、カードCDqの種類を特定してもよい。
例えば、カードCDqが無線通信機能を有する場合、オブジェクト特定部115は、当該カードCDqから受信した、カードCDqの種類を識別するための情報に基づいて、カードCDqの種類を特定してもよい。また、オブジェクト特定部115は、例えば、カメラCMAから出力される撮像データDAに基づいて、カードCDqの種類を特定してもよい。この場合、オブジェクト特定部115は、撮像データDAに加えて、深度情報DSに基づいて、カードCDqの種類を特定してもよい。
【0039】
カメラ位置特定部116は、表示データ生成処理において、撮像データDAに基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定する(S102)。
具体的には、カメラ位置特定部116は、ステップS102において、まず、撮像データDAに基づいて、図7に示す、カメラ座標系ΣにおけるマーカMKの位置及び向きを特定する。次に、カメラ位置特定部116は、カメラ座標系ΣにおけるマーカMKの位置及び向きと、マーカ情報の示す、ワールド座標系ΣにおけるマーカMKの位置及び向きと、に基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定する(図7参照)。
なお、カメラ位置特定部116は、ステップS102において、ワールド座標系ΣにおけるカメラCMAの位置及び向きのうち、少なくとも一方を特定するものであってもよい。
【0040】
また、カメラ位置特定部116は、ステップS102において、撮像データDA以外の情報に基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定してもよい。
例えば、カメラCMTがカメラCMAを撮像する場合、カメラ位置特定部116は、カメラCMTによる撮像結果を示す撮像データDTに基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定してもよい。
また、例えば、カメラCMAは、地磁気センサ、加速度センサ、及び、角速度センサ等の、各種センサを備えていてもよい。この場合、カメラ位置特定部116は、各種センサからの出力に基づいて、ワールド座標系ΣにおけるカメラCMAの位置及び向きの変化量を特定してもよい。一例として、カメラ位置特定部116は、加速度センサの出力、及び、地磁気センサの出力に基づいて、ワールド座標系ΣにおけるカメラCMAの位置の変化を算出し、また、角速度センサの出力に基づいて、ワールド座標系ΣにおけるカメラCMAの向きの変化を算出してもよい。そして、カメラ位置特定部116が、ワールド座標系ΣにおけるカメラCMAの位置及び向きの変化量を特定可能な場合、ある時刻において、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定できれば、それ以降の時刻においても、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定することができる。このため、カメラ位置特定部116が、ワールド座標系ΣにおけるカメラCMAの位置及び向きの変化量を特定可能であれば、カメラCMAがマーカMKを撮像していない期間が存在する場合、または、カメラCMTがカメラCMAを撮像していない期間が存在する場合であっても、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定することができる。
また、例えば、カメラCMAは、GPS(Global Positioning System)衛星等の位置情報衛星から出力される位置情報信号、または、現実空間SP-Rに設けられた信号発信機(例えば、屋内GPS)から出力される位置情報信号、等を受信する、信号受信部を有していてもよい。この場合、カメラ位置特定部116は、信号受信部の受信した位置情報信号に基づいて、ワールド座標系ΣにおけるカメラCMAの位置を特定してもよい。
【0041】
被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図7に示す、カメラ座標系ΣにおけるユーザUqの位置Uqを特定する(S104)。また、被写体位置特定部117は、ステップS104において、撮像データDA及び深度情報DSに基づいて、カメラCMAの被写体のうち、ユーザUq以外の被写体の位置を特定してもよい。例えば、被写体位置特定部117は、ステップS104において、撮像データDA及び深度情報DSに基づいて、カメラ座標系Σにおける壁WLの位置を特定してもよい。
【0042】
被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図7に示す、カメラ座標系ΣにおけるユーザUqの向きUqを特定する(S106)。また、被写体位置特定部117は、ステップS106において、撮像データDA及び深度情報DSに基づいて、カメラCMAの被写体のうち、ユーザUq以外の被写体の形状を特定してもよい。例えば、被写体位置特定部117は、ステップS106において、撮像データDA及び深度情報DSに基づいて、カメラ座標系Σにおける壁WLの形状を特定してもよい。なお、上述のとおり、深度情報DSは、カメラCMAが被写体を撮像した場合に、被写体の撮像結果を示す複数の画素または複数の画素ブロックについて、当該画素または画素ブロックに対応する被写体の部位とカメラCMAとの距離に応じた値を示す。このため、被写体位置特定部117は、カメラCMAの被写体として、壁WL等の物体が含まれる場合には、深度情報DSに基づいて、当該物体の形状を特定することができ、また、カメラCMAの被写体として、ユーザUq等の人物が含まれる場合には、深度情報DSに基づいて、当該人物の姿勢を特定することができる。ここで、人物の姿勢とは、人物の向き、及び、人物の体勢等を含む概念である。
【0043】
キャラクタ位置決定部111は、図7に示す、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する(S108)。
具体的には、キャラクタ位置決定部111は、ステップS108において、ステップS102で特定された、ワールド座標系ΣにおけるカメラCMAの位置及び向きに基づいて、相対位置情報の示すベクトルUVqを、カメラ座標系Σにおいて表現したベクトルUVqに変換する。次に、キャラクタ位置決定部111は、ベクトルUVqと、ステップS104で特定されたユーザUqの位置Uqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する。
なお、キャラクタ位置決定部111は、ステップS108において、次のように、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定してもよい。すなわち、キャラクタ位置決定部111は、ステップS108において、まず、ステップS102で特定された、ワールド座標系ΣにおけるカメラCMAの位置及び向きに基づいて、ステップS104で特定されたカメラ座標系ΣにおけるユーザUqの位置Uqを、ワールド座標系Σで表現した位置Uqに変換する。次に、キャラクタ位置決定部111は、ワールド座標系ΣにおけるユーザUqの位置Uqと、相対位置情報の示すワールド座標系ΣにおけるベクトルUVqとに基づいて、ワールド座標系ΣにおけるキャラクタVqの位置Vqを決定する。その後、キャラクタ位置決定部111は、ワールド座標系ΣにおけるキャラクタVqの位置Vqを、カメラ座標系Σで表現した位置Vqに変換する。
【0044】
キャラクタ位置決定部111は、図7に示す、カメラ座標系ΣにおけるキャラクタVqの向きVqを決定する(S110)。
具体的には、キャラクタ位置決定部111は、ステップS110において、カメラ座標系ΣにおけるキャラクタVqの向きVqと、ステップS106で特定されたユーザUqの向きUqとが、同一の向きとなるように、キャラクタVqの向きVqを決定する。但し、キャラクタ位置決定部111は、ステップS110において、カメラ座標系ΣにおけるキャラクタVqの向きVqと、カメラ座標系ΣにおけるユーザUqの向きUqとが、所定の角度以下となるように、キャラクタVqの向きVqを決定してもよい。
【0045】
キャラクタ位置決定部111は、表示空間SP-Vにおける、キャラクタVqと壁WLとの相対的な位置関係に基づいて、キャラクタVqの位置Vqを調整する(S112)。
具体的には、キャラクタ位置決定部111は、ステップS112において、ベクトルUVqの延長線上における、キャラクタVqと壁WLとの間の距離LVEが、所定の距離以上であり、且つ、ユーザUqから見て、キャラクタVqが壁WLよりも手前側に位置しているという条件(以下、「キャラクタ位置条件」が充足されるか否かを判定する。そして、キャラクタ位置決定部111は、当該判定の結果が肯定の場合、キャラクタVqの位置Vqを変更せずに維持する。他方、キャラクタ位置決定部111は、当該判定の結果が否定の場合、キャラクタVqを、キャラクタ位置条件が満たされるまで、ベクトルUVqとは反対方向に移動させることで、キャラクタVqの位置Vqを調整する。
【0046】
重なり抽出部112は、ユーザUqを示すユーザ画像GUqと、キャラクタVqを示すキャラクタ画像GVqとの、重なり部分を抽出する(S114)。
具体的には、重なり抽出部112は、ステップS114において、撮像データDAに基づいて、合成画像GGにおいて、ユーザUqを表すユーザ画像GUqを配置する。また、重なり抽出部112は、カメラ座標系ΣにおけるキャラクタVqの位置Vq及び向きVqと、キャラクタ情報の示すキャラクタVqの3次元形状と、に基づいて、合成画像GGにおいて、キャラクタVqを表すキャラクタ画像GVqを配置する。そして、重なり抽出部112は、合成画像GGに配置されたユーザ画像GUq及びキャラクタ画像GVqの重なり部分を抽出する。
【0047】
遠近判定部113は、カメラ座標系ΣにおけるユーザUqの位置Uqと、カメラ座標系ΣにおけるキャラクタVqの位置Vqと、に基づいて、ユーザUqがキャラクタVqよりもカメラCMAに近いか否かを判定する(S116)。
【0048】
表示情報生成部114は、撮像データDAの示す撮像画像と、キャラクタ画像GVq等の非撮像画像とを、ステップS114及びS116の結果に応じて合成することで、合成画像GGを示す表示データDoutを生成する(S118)。
具体的には、表示情報生成部114は、ステップS118において、ステップS116の判定の結果が肯定の場合、キャラクタ画像GVqのうち、ステップS114で抽出された重なり部分を非表示とした上で、撮像画像の上に、キャラクタ画像GVqと、ヒットポイント画像GHPとを表示させることで、合成画像GGを生成する。
他方、表示情報生成部114は、ステップS118において、ステップS116の判定の結果が否定の場合、撮像画像の上に、キャラクタ画像GVqと、ヒットポイント画像GHPとを表示させることで、合成画像GGを生成する。この場合、ユーザ画像GUqは、ユーザ画像GUqのうち、ステップS114で抽出された重なり部分が非表示とされた上で、合成画像GGに表示されることになる。
【0049】
表示情報生成部114は、情報処理装置10の操作者等により、表示データ生成処理を終了させる旨を指示する操作が、操作部14から入力されたか否かを判定する(S120)。そして、表示情報生成部114は、ステップS120における判定の結果が肯定の場合、図6に示す表示データ生成処理を終了させる。他方、表示情報生成部114は、ステップS120における判定の結果が否定の場合、処理をステップS100に進める。
【0050】
[1.4.第1実施形態の結論]
以上において説明したように、本実施形態によれば、合成画像GGの表す表示空間SP-Vにおいて、ユーザUqから見てキャラクタVqがベクトルUVqにより定められる位置に配置される。
このため、本実施形態によれば、ユーザUqを表すユーザ画像GUqと、キャラクタVqを表すユーザ画像GUqとを、関連付けて表示することができる。これにより、本実施形態によれば、情報処理システム1により、ユーザU1及びユーザU2がカードゲームを実行している様子を表示部21に表示させる場合に、表示部21に表示される合成画像GGにおいて、カードゲームの臨場感を演出することができる。
【0051】
また、本実施形態によれば、合成画像GGにおける、キャラクタVqを表すキャラクタ画像GVqの表示位置が、カメラ位置特定部116による、ワールド座標系ΣにおけるカメラCMAの位置及び向きの特定結果と、被写体位置特定部117による、カメラ座標系ΣにおけるユーザUqの位置Uq及び向きUqの特定結果と、に基づいて決定される。すなわち、本実施形態によれば、合成画像GGにおける、キャラクタVqを表すキャラクタ画像GVqの表示位置が、カードCDqの配置位置及び向きとは関係なく定められる。
このため、本実施形態によれば、キャラクタVqを表すキャラクタ画像GVqの表示位置が、カードCDqの配置位置及び向きの影響を受ける場合と比較して、合成画像GGにおける、キャラクタ画像GVqの表示位置を容易に調整することが可能となる。
【0052】
また、本実施形態によれば、合成画像GGにおけるキャラクタ画像GVqの表示位置及び形状が、カードCDqの配置位置及び向きとは関係なく定められる。
このため、本実施形態によれば、合成画像GGにおけるキャラクタ画像GVqの表示位置及び形状が、カードCDqの配置位置及び向きに基づいて定められる場合と比較して、ユーザUqによるカードCDqの配置の手間を低減することができる。
【0053】
また、本実施形態によれば、カードCDqに、カードCDqの向きを特定するためのマーカを印刷する必要が無い。
このため、本実施形態によれば、合成画像GGにおけるキャラクタ画像GVqの表示位置及び表示形状が、カードCDqの配置位置及び向きに基づいて定められる場合と比較して、カードCDqのデザインの自由度を向上させることができる。
【0054】
[2.第2実施形態]
以下、本発明の第2実施形態を説明する。なお、以下に例示する各形態において作用や機能が第1実施形態と同様である要素については、第1実施形態の説明で使用した符号を流用して各々の詳細な説明を適宜に省略する。
【0055】
第2実施形態は、ワールド座標系ΣにおけるユーザUqの位置及び向きが予め定められている点と、ワールド座標系ΣにおけるキャラクタVqの位置及び向きが予め定められている点と、において、第1実施形態と相違する。
【0056】
図8は、第2実施形態に係る情報処理システム1Aの構成の一例を示す機能ブロック図である。情報処理システム1Aは、制御部11を具備する情報処理装置10の代わりに、制御部11Aを具備する情報処理装置10Aを備える点を除き、図4に示す第1実施形態に係る情報処理システム1と同様に構成されている。制御部11Aは、キャラクタ位置決定部111を具備する表示制御部110の代わりに、キャラクタ位置決定部111Aを具備する表示制御部110Aを備える点と、被写体位置特定部117を具備しない点と、を除き、図4に示す第1実施形態に係る制御部11と同様に構成されている。
【0057】
また、本実施形態において、記憶装置30は、カードデザイン情報、キャラクタ情報、及び、マーカ情報に加えて、ワールド座標系ΣにおけるユーザUqの位置Uq及び向きUqを示すユーザ位置情報と、ワールド座標系ΣにおけるキャラクタVqの位置Vq及び向きVqを示すキャラクタ位置情報と、を記憶していることとする(図10参照)。ここで、ユーザ位置情報とは、例えば、ユーザUqが着席する席の位置及び向きを、ワールド座標系Σにおいて表した情報であってもよい。また、キャラクタ位置情報とは、例えば、ユーザUqが着席する席の後方または上方の位置と当該席の向きを、ワールド座標系Σにおいて表した情報であってもよい。なお、本実施形態において、記憶装置30は、相対位置情報を記憶していなくてもよい。
また、本実施形態において、カメラCMAは、少なくとも撮像データDAを出力すればよく、深度情報DSを出力しなくてもよい。
【0058】
図9及び図10を参照しつつ、情報処理装置10Aが、表示データDoutを生成する処理である表示データ生成処理を実行する場合における、情報処理装置10Aの動作の一例を説明する。なお、図9は、情報処理装置10Aが表示データ生成処理を実行する場合における、情報処理装置10Aの動作の一例を示すフローチャートである。また、図10は、+Z側から表示空間SP-Vを見た場合における、各種物体の位置関係を説明するための説明図である。
【0059】
図9に示すように、本実施形態に係る表示データ生成処理は、ステップS104、S106、及び、S112の処理を実行しない点と、ステップS108及びS110に代えて、ステップS200及びS202の処理を実行する点と、を除き、図6に示す第1実施形態に係る表示データ生成処理と同様の処理である。
【0060】
図9に示すように、表示データ生成処理が開始されると、オブジェクト特定部115が、カードCDqの種類を特定し(S100)、カメラ位置特定部116が、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定する(S102)。
そして、キャラクタ位置決定部111Aは、図10に示すように、キャラクタ位置情報の示す、ワールド座標系ΣにおけるキャラクタVqの位置Vqと、ワールド座標系ΣにおけるカメラCMAの位置及び向きと、基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを特定する(S200)。
また、キャラクタ位置決定部111Aは、図10に示すように、キャラクタ位置情報の示す、ワールド座標系ΣにおけるキャラクタVqの向きVqと、ワールド座標系ΣにおけるカメラCMAの位置及び向きと、基づいて、カメラ座標系ΣにおけるキャラクタVqの向きVqを特定する(S202)。
その後、重なり抽出部112が、ユーザ画像GUqとキャラクタ画像GVqとの重なりを抽出し(S114)、遠近判定部113が、カメラCMAから見たユーザUq及びキャラクタVqの遠近を判定し(S116)、表示情報生成部114が、合成画像GGを示す表示データDoutを生成し(S118)、表示情報生成部114が、表示データ生成処理の終了を判定する(S120)。
【0061】
以上のように、本実施形態によれば、ワールド座標系ΣにおけるカメラCMAの位置及び向きに基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vq及び向きVqを特定する。このため、本実施形態によれば、カメラCMAの位置または向きに関わらず、キャラクタVqとユーザUqとを関連付けて表示することができる。
【0062】
[3.第3実施形態]
以下、本発明の第3実施形態を説明する。
第3実施形態は、カメラCMTから出力される撮像データDTを用いることなく、キャラクタ画像GVqにより表されるキャラクタVqの種類が指定される点において、第2実施形態と相違する。
【0063】
図11は、第3実施形態に係る情報処理システム1Bの構成の一例を示す機能ブロック図である。情報処理システム1Bは、制御部11Aを具備する情報処理装置10Aの代わりに、制御部11Bを具備する情報処理装置10Bを備える点と、カメラCMTを備えない点と、を除き、図8に示す第2実施形態に係る情報処理システム1Aと同様に構成されている。制御部11Bは、キャラクタ位置決定部111Aを具備する表示制御部110Aの代わりに、キャラクタ位置決定部111Bを具備する表示制御部110Bを備える点と、オブジェクト特定部115を具備しない点と、を除き、図8に示す第2実施形態に係る制御部11Aと同様に構成されている。
本実施形態において、記憶装置30は、キャラクタ情報、マーカ情報、ユーザ位置情報、及び、キャラクタ位置情報、を記憶している。すなわち、本実施形態において、記憶装置30は、カードデザイン情報と、相対位置情報とを記憶していなくてもよい。
また、本実施形態において、カメラCMAは、少なくとも撮像データDAを出力すればよく、深度情報DSを出力しなくてもよい。
【0064】
図12は、情報処理装置10Bが、表示データDoutを生成する処理である表示データ生成処理を実行する場合における、情報処理装置10Bの動作の一例を示すフローチャートである。
図12に示すように、本実施形態に係る表示データ生成処理は、ステップS100の処理を実行しない点と、ステップS300の処理を実行する点と、を除き、図9に示す第2実施形態に係る表示データ生成処理と同様の処理である。
【0065】
図12に示すように、表示データ生成処理が開始されると、カメラ位置特定部116が、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定し(S102)、キャラクタ位置決定部111Bが、カメラ座標系ΣにおけるキャラクタVqの位置Vqを特定し(S200)、カメラ座標系ΣにおけるキャラクタVqの向きVqを特定する(S202)。
その後、キャラクタ位置決定部111Bは、キャラクタVqの種類を決定し、当該決定した種類のキャラクタVqに対応するキャラクタ情報に基づいて、キャラクタVqの3次元形状を決定する(S300)。なお、キャラクタ位置決定部111Bは、ステップS300において、キャラクタVqの種類を、例えば、情報処理装置10Bの操作者が、操作部14を用いて入力した情報に基づいて決定してもよい。または、キャラクタ位置決定部111Bが、ステップS300において決定するキャラクタVqの種類は、予め記憶装置30に記憶されていてもよい。
その後、重なり抽出部112が、ユーザ画像GUqとキャラクタ画像GVqとの重なりを抽出し(S114)、遠近判定部113が、カメラCMAから見たユーザUq及びキャラクタVqの遠近を判定し(S116)、表示情報生成部114が、合成画像GGを示す表示データDoutを生成し(S118)、表示情報生成部114が、表示データ生成処理の終了を判定する(S120)。
【0066】
以上のように、本実施形態によれば、ワールド座標系ΣにおけるカメラCMAの位置及び向きに基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vq及び向きVqを特定する。このため、本実施形態によれば、カメラCMAの位置または向きに関わらず、キャラクタVqとユーザUqとを関連付けて表示することができる。
【0067】
[4.第4実施形態]
以下、本発明の第4実施形態を説明する。
【0068】
第4実施形態は、ワールド座標系ΣにおけるカメラCMAの位置及び向きを特定することなく、合成画像GGにおける、キャラクタ画像GVqの表示位置を決定する点において、第1実施形態と相違する。
【0069】
図13は、第4実施形態に係る情報処理システム1Cの構成の一例を示す機能ブロック図である。情報処理システム1Cは、制御部11を具備する情報処理装置10の代わりに、制御部11Cを具備する情報処理装置10Cを備える点を除き、図4に示す第1実施形態に係る情報処理システム1と同様に構成されている。制御部11Cは、キャラクタ位置決定部111を具備する表示制御部110の代わりに、キャラクタ位置決定部111Cを具備する表示制御部110Cを備える点と、カメラ位置特定部116を具備しない点と、を除き、図4に示す第1実施形態に係る制御部11と同様に構成されている。
【0070】
本実施形態において、記憶装置30は、カードデザイン情報と、キャラクタ情報と、を記憶している。すなわち、本実施形態において、記憶装置30は、マーカ情報と、相対位置情報とを記憶していなくてもよい。また、本実施形態において、現実空間SP-Rには、マーカMKを設けなくてもよい。
【0071】
図14及び図15を参照しつつ、情報処理装置10Cが、表示データDoutを生成する処理である表示データ生成処理を実行する場合における、情報処理装置10Cの動作の一例を説明する。なお、図14は、情報処理装置10Cが表示データ生成処理を実行する場合における、情報処理装置10Cの動作の一例を示すフローチャートである。また、図15は、+Z側から表示空間SP-Vを見た場合における、各種物体の位置関係を説明するための説明図である。
【0072】
図14に示すように、本実施形態に係る表示データ生成処理は、ステップS102の処理を実行しない点と、ステップS400の処理を実行する点と、ステップS108の処理に代えて、ステップS402の処理を実行する点と、を除き、図6に示す第1実施形態に係る表示データ生成処理と同様の処理である。
【0073】
図14に示すように、表示データ生成処理が開始されると、オブジェクト特定部115が、カードCDqの種類を特定する(S100)。
また、被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図15に示す、カメラ座標系ΣにおけるユーザUqの位置Uqを特定する(S104)。
また、被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図15に示す、カメラ座標系ΣにおけるユーザUqの向きUqを特定する(S106)。
そして、キャラクタ位置決定部111Cは、カメラ座標系ΣにおけるユーザUqの向きUqに基づいて、ユーザUqから見たキャラクタVqの位置を示すベクトルUVqを決定する(S400)。具体的には、キャラクタ位置決定部111Cは、ステップS400において、図15に示すように、向きUqとベクトルUVqとのなす角度が、角度θとなるように、ベクトルUVqを決定する。
更に、キャラクタ位置決定部111Cは、ステップS104で特定したカメラ座標系ΣにおけるユーザUqの位置Uqと、ステップS400で決定したベクトルUVqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する(S402)。
その後、キャラクタ位置決定部111Cが、カメラ座標系ΣにおけるキャラクタVqの向きVqを決定し(S110)、キャラクタ位置決定部111Cが、表示空間SP-Vにおける、キャラクタVqと壁WLとの相対的な位置関係に基づいて、キャラクタVqの位置Vqを調整し(S112)、重なり抽出部112が、ユーザ画像GUqとキャラクタ画像GVqとの重なりを抽出し(S114)、遠近判定部113が、カメラCMAから見たユーザUq及びキャラクタVqの遠近を判定し(S116)、表示情報生成部114が、合成画像GGを示す表示データDoutを生成し(S118)、表示情報生成部114が、表示データ生成処理の終了を判定する(S120)。
【0074】
以上のように、本実施形態によれば、カメラ座標系ΣにおけるユーザUqの向きUqの特定結果に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する。このため、本実施形態によれば、カメラCMAの位置または向き、及び、ユーザUqの位置または向きに関わらず、キャラクタVqとユーザUqとを関連付けて表示することができる。
【0075】
なお、本実施形態において、キャラクタ位置決定部111Cは、カメラ座標系ΣにおけるユーザUqの向きUqの特定結果に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定するが、本発明はこのような態様に限定されるものではない。
例えば、図16及び図17に示すように、ユーザU1及びユーザU2の相対的な位置関係に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定してもよい。なお、図16は、情報処理装置10Cが表示データ生成処理を実行する場合における、情報処理装置10Cの動作の他の例を示すフローチャートである。図16に示す表示データ生成処理は、ステップS400の代わりに、ステップS404の処理を実行する点を除き、図14に示す表示データ生成処理と同様の処理である。また、図17は、+Z側から表示空間SP-Vを見た場合における、各種物体の位置関係を説明するための説明図である。
【0076】
図16に示すように、表示データ生成処理が開始されると、オブジェクト特定部115が、カードCDqの種類を特定する(S100)。
また、被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図17に示す、カメラ座標系ΣにおけるユーザUqの位置Uqを特定する(S104)。なお、図16及び図17に示す例では、被写体位置特定部117は、ステップS104において、ユーザU1の位置U1と、ユーザU2の位置U2と、の両方を特定することとする。
また、被写体位置特定部117は、撮像データDA及び深度情報DSに基づいて、図17に示す、カメラ座標系ΣにおけるユーザUqの向きUqを特定する(S106)。
そして、キャラクタ位置決定部111Cは、図17に示すように、カメラ座標系Σにおいて、ユーザU1及びユーザU2の相対的な位置関係を示すベクトルUUに基づいて、ユーザUqから見たキャラクタVqの位置を示すベクトルUVqを決定する(S404)。具体的には、キャラクタ位置決定部111Cは、ステップS404において、まず、ユーザU1の位置U1と、ユーザU2の位置U2と、に基づいて、カメラ座標系Σにおいて、ユーザUqから他のユーザUの位置を示すベクトルUUを算出する。次に、キャラクタ位置決定部111Cは、ベクトルUUとベクトルUVqとのなす角度が、角度θとなるように、ベクトルUVqを決定する。
その後、キャラクタ位置決定部111Cが、ユーザUqの位置Uqと、ベクトルUVqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する(S402)。
【0077】
また、他の例としては、図18及び図19に示すように、ユーザUqの位置に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定してもよい。なお、図18は、情報処理装置10Cが表示データ生成処理を実行する場合における、情報処理装置10Cの動作の第3の例を示すフローチャートである。図18に示す表示データ生成処理は、ステップS400の代わりに、ステップS406の処理を実行する点を除き、図14に示す表示データ生成処理と同様の処理である。また、図19は、+Z側から表示空間SP-Vを見た場合における、各種物体の位置関係を説明するための説明図である。
【0078】
図18及び図19に示すように、キャラクタ位置決定部111Cは、カメラ座標系ΣにおけるユーザUqの位置Uqに基づいて、ユーザUqから見たキャラクタVqの位置を示すベクトルUVqを決定する(S406)。具体的には、キャラクタ位置決定部111Cは、ステップS406において、位置Uqの示す方向と、ベクトルUVqとのなす角度が、角度θとなるように、ベクトルUVqを決定する。
その後、キャラクタ位置決定部111Cは、ユーザUqの位置Uqと、ベクトルUVqと、に基づいて、カメラ座標系ΣにおけるキャラクタVqの位置Vqを決定する(S402)。
【0079】
[5.第5実施形態]
以下、本発明の第5実施形態を説明する。
【0080】
第5実施形態は、カメラCMTから出力される撮像データDTを用いることなく、キャラクタ画像GVqにより表されるキャラクタVqの種類が指定される点において、第4実施形態と相違する。
【0081】
図20は、第5実施形態に係る情報処理システム1Dの構成の一例を示す機能ブロック図である。情報処理システム1Dは、制御部11Cを具備する情報処理装置10Cの代わりに、制御部11Dを具備する情報処理装置10Dを備える点と、カメラCMTを備えない点と、を除き、図13に示す第4実施形態に係る情報処理システム1Cと同様に構成されている。制御部11Dは、キャラクタ位置決定部111Cを具備する表示制御部110Cの代わりに、キャラクタ位置決定部111Dを具備する表示制御部110Dを備える点と、オブジェクト特定部115を具備しない点と、を除き、図14に示す第4実施形態に係る制御部11Cと同様に構成されている。
本実施形態において、記憶装置30は、カードデザイン情報と、キャラクタ情報と、を記憶している。また、本実施形態において、現実空間SP-Rには、マーカMKを設けなくてもよい。
【0082】
図21は、情報処理装置10Dが、表示データDoutを生成する処理である表示データ生成処理を実行する場合における、情報処理装置10Dの動作の一例を示すフローチャートである。
図21に示すように、本実施形態に係る表示データ生成処理は、ステップS100の処理を実行しない点と、ステップS300の処理を実行する点と、を除き、図14に示す第4実施形態に係る表示データ生成処理と同様の処理である。すなわち、キャラクタ位置決定部111Dは、ステップS400、S402、S110、S112、及び、S300の処理を実行する。但し、キャラクタ位置決定部111Dは、ステップS400に代えて、ステップS404、または、ステップS406の処理を実行してもよい。
【0083】
[6.変形例]
以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は、相互に矛盾しない範囲内で適宜に併合され得る。なお、以下に例示する変形例において作用や機能が実施形態と同等である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する。
【0084】
[変形例1]
上述した第1乃至第5実施形態において、表示空間SP-VにおけるキャラクタVqの位置Vqは、一定の位置、または、ユーザUqの位置Uq若しくは向きUqに応じた位置となるが、本発明はこのような態様に限定されるものではない。表示空間SP-VにおけるキャラクタVqの位置Vqは、カードゲームの進行に応じて変化してもよいし、または、ユーザUqの動作に応じて変化してもよい。
【0085】
例えば、ユーザU1がカードCD1を用いてユーザU2のカードCD2を攻撃する場合、ユーザU1のカードCD1がユーザU2のカードCD2により攻撃を受けている場合、または、ユーザU1が所定の動作をした場合に、表示空間SP-Vにおいて、キャラクタV1を、図2に示すようなユーザU1の背後の位置から、図22に示すようなユーザU1の前方の位置へと移動させてもよい。ここで、ユーザU1の所定の動作とは、例えば、カードCD1でカードCD2を攻撃することを示す動作であってもよい。カードCD1でカードCD2を攻撃することを示すユーザU1の動作とは、例えば、ユーザU1がカードCD1を指差した後にカードCD2を指差す動作であってもよいし、ユーザU1がカードCD1をカードCD2に重ねる動作であってもよいし、その他、ユーザU1がカードCD1を用いて行う動作であってもよい。また、ユーザU1とユーザU2のカードがそれぞれ1枚ずつ、合計2枚しかテーブルTBに配置されていない場合など、カードを指定せずとも攻撃指示であることが明らかな場合は、自陣領域として設定される領域の任意の場所を指差す動作をした後、相手陣領域として設定される領域の任意の場所を指差す動作をするという一連の動作であってもよい。すなわち、ユーザの意図が明らかであれば必ずしもカードを指差す動作でなくともよい。また、ユーザU1の所定の動作とは、例えば、ゲームにおける所定の効果を発動するための動作であってもよい。ここで、ゲームにおける所定の効果とは、例えば、カードCD1の攻撃力を増大させる効果であってもよいし、カードCD1の防御力を増大させる効果であってもよいし、カードCD2の攻撃力を削減させる効果であってもよい。すなわち、ゲームにおける所定の効果とは、例えば、ユーザU1にとって、ゲームの進行が有利になる効果のような、ゲームの進行に関する効果であってもよい。ゲームにおける所定の効果を発動するためのユーザU1の動作とは、例えば、ユーザU1が、ユーザU1の有するカードCD1以外の他のカードをカードCD1に重ねる動作であってもよいし、ユーザU1が、カードCD1を他のカードに重ねる動作であってもよし、その他、ユーザU1がカードCD1を用いて行う動作であってもよい。また、ユーザU1の所定の動作とは、例えば、カードCD1のゲームにおける役割を変更する動作であってもよい。ここで、カードCD1のゲームにおける役割とは、例えば、カードCD1がカードCD2を攻撃するという役割、及び、カードCD1がカードCD2による攻撃からカードCD1またはユーザU1を防御するという役割の、一方または両方を含む概念であってもよい。カードCD1のゲームにおける役割を変更するユーザU1の動作とは、例えば、ユーザU1が、カードCD1の向きを変更する動作であってもよいし、その他、ユーザU1がカードCD1を用いて行う動作であってもよい。また、ユーザU1の所定の動作とは、例えば、ゲームを一時的に中断させる動作であってもよい。ここで、ゲームを一時的に中断させるユーザU1の動作とは、例えば、ユーザU1が、カードCD1を裏返す動作であってもよいし、その他、ユーザU1がカードCD1を用いて行う動作であってもよい。なお、以上の説明においては、ユーザU1の所定の動作として、ユーザU1がカードCD1を用いて行う動作を例示したが、ユーザU1の所定の動作は、ユーザU1がカードCD1を用いずに行う動作であってもよいし、ユーザU1がカードCD1を用いて行う動作と同時に実行される動作であってもよい。ここで、ユーザU1がカードCD1を用いずに行う動作、及び、ユーザU1がカードCD1を用いて行う動作と同時に実行される動作とは、例えば、ユーザU1が、所定の文言を発音する動作であってもよいし、ユーザU1が、所定のジェスチャを実行する動作であってもよい。
これらの場合、情報処理装置10、10A、10B、10C、または、10D(以下、「情報処理装置10等」と総称する)の操作者は、操作部14を用いて、ユーザUqがカードCDqを用いて攻撃していることを示す情報を入力し、または、ユーザUqが所定の動作を実行していることを示す情報を入力してもよい。そして、情報処理装置10等は、情報処理装置10等の操作者による情報の入力に基づいて、ユーザUqがカードCDqを用いて攻撃していること、または、ユーザUqが所定の動作を実行していることを、認識してもよい。
また、情報処理装置10等は、カメラCMAから出力される撮像データDA及び深度情報DSに基づいて、ユーザUqが、所定の動作を実行したことを認識してもよい。
【0086】
なお、情報処理装置10のキャラクタ位置決定部111は、相対位置情報の示すベクトルUVqの大きさまたは向きを変化させることで、表示空間SP-VにおけるキャラクタVqの位置Vqを変化させてもよい。
また、情報処理装置10Aまたは10Bのキャラクタ位置決定部111Aまたは111Bは、キャラクタ位置情報の示すキャラクタVqの位置Vqを変化させることで、表示空間SP-VにおけるキャラクタVqの位置Vqを変化させてもよい。
また、情報処理装置10Cまたは10Dのキャラクタ位置決定部111Cまたは111Cは、角度θ、θ、または、θの大きさと、ベクトルUVqの大きさと、の少なくとも一方を変化させることで、表示空間SP-VにおけるキャラクタVqの位置Vqを変化させてもよい。
【0087】
[変形例2]
上述した第1乃至第5実施形態及び変形例1において、キャラクタVqは、一定の形状を有するが、本発明はこのような態様に限定されるものではなく、キャラクタVqの形状は変化してもよい。
具体的には、表示制御部110、110A、110B、110C、または、110D(以下、「表示制御部110等」と総称する)は、キャラクタVqの形状を、カードゲームの進行に応じて、または、ユーザUqの動作若しくは姿勢に応じて変化させてもよい。ここで、キャラクタVqの形状とは、例えば、キャラクタVqの姿勢である。
例えば、表示制御部110等は、ユーザU1のカードCD1がユーザU2のカードCD2により攻撃を受けている場合、または、ユーザU1が所定の動作をした場合に、キャラクタV1を、図2に示すような、翼を広げていない姿勢から、図23に示すような、翼を広げてユーザU1を庇う姿勢へと、姿勢変化させてもよい。
なお、表示制御部110等は、キャラクタVqが、図23に示すような、翼を広げてユーザUqを庇う姿勢をとる場合、キャラクタVqの胴体部分が、カメラCMAから見て、ユーザUqの背後に隠れ、キャラクタVqの翼の一部が、カメラCMAから見て、ユーザUqよりも手前側に位置するように、ユーザ画像GUq及びキャラクタ画像GVqを表示させてもよい。
また、表示制御部110等は、ユーザU1が、ゲームを一時的に中断させる動作を実行した場合、キャラクタV1の姿勢を、キャラクタV1が休憩していることを示す姿勢に変化させてもよい。
【0088】
[変形例3]
上述した第1乃至第5実施形態、及び、変形例1または2において、カメラCMAは、現実空間SP-Rにおいて、位置及び向きを変化させることができるが、本発明はこのような態様に限定されるものではない。カメラCMAは、現実空間SP-Rの所定の場所に配置されていてもよい。この場合、記憶装置30は、ワールド座標系ΣにおけるカメラCMAの位置及び向きを示す情報を記憶していてもよい。
【0089】
[変形例4]
上述した第1乃至第5実施形態、及び、変形例1乃至3において、情報処理システム1、1A、1B、1C、及び、1D(以下、「情報処理システム1等」と総称する)は、記憶装置30を備えるが、本発明はこのような態様に限定されるものではない。情報処理システム1等は、記憶装置30を備えずに構成されていてもよい。この場合、情報処理装置10等が備える記憶部12が、カードデザイン情報、キャラクタ情報、マーカ情報、相対位置情報、ユーザ位置情報、及び、キャラクタ位置情報の、一部または全部を記憶していてもよい。
【0090】
[変形例5]
上述した第1乃至第5実施形態、及び、変形例1乃至4において、情報処理装置10等は、深度情報DSに基づいて、カメラCMAの被写体の各部位とカメラCMAとの距離に応じた値(深度)を、カメラCMAの被写体の全体について並べた「深度マップ」を作成してもよい。この場合、情報処理装置10等は、深度マップと、カメラCMAから見たキャラクタVqの深度とに基づいて、カメラCMAから見た、キャラクタVqと、被写体の各部位との遠近を判定してもよい。そして、この場合、情報処理装置10等は、キャラクタ画像GVqの一部、及び、被写体を撮像して得られた撮像画像の一部が、合成画像GGにおいて重なる場合には、遠近の判定結果に基づいて、キャラクタ画像GVq、及び、撮像画像の一部のうち、カメラCMAから遠い方に対応する画像を非表示としてもよい。
また、情報処理装置10等は、撮像データDA及び深度情報DSの一方または双方に基づいて、ユーザUqの形状、輪郭、または、ユーザUqの顔位置を特定してもよい。この場合、情報処理装置10等は、深度マップ、ユーザUqの輪郭を示す情報及び深度マップ、または、ユーザUqの顔位置及び深度マップに基づいて、ユーザUqと、ユーザUq以外の被写体との相対的な位置関係を特定してもよい。そして、この場合、特定した相対的な位置関係に基づいて、表示空間SP-VにおけるキャラクタVqの位置を決定し、当該決定結果と、深度マップとに基づいて、キャラクタ画像GVqを表示してもよい。
【0091】
[7.付記]
以上の記載から、本発明は例えば以下のように把握される。なお、各態様の理解を容易にするために、以下では、図面の参照符号を便宜的に括弧書きで付記するが、本発明を図示の態様に限定する趣旨ではない。
【0092】
[付記1]
本発明の一態様に係る情報処理装置のプログラムは、プロセッサを具備する情報処理装置のプログラムであって、プロセッサを具備する情報処理装置のプログラムであって、前記プロセッサを、オブジェクトが配置された現実空間を撮像する第1撮像部の、前記現実空間における位置及び姿勢の少なくとも一方を特定する第1特定部と、前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、前記オブジェクトに対応する第2画像を、前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、して機能させる、ことを特徴とする。
【0093】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像の表示位置を決定する。すなわち、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に依存することなく、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間においてオブジェクトを所定の位置に配置する等の手間をかけることなく、オブジェクトに対応する第2画像の表示部における表示位置を決定することができる。
また、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢による制約を受けること無く、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に基づいて、表示部における第2画像の表示位置が決定される場合と比較して、表示部における第2画像の表示位置に係る自由度を高くすることができる。
また、この態様によれば、オブジェクトにおいて、現実空間における当該オブジェクトの位置及び姿勢を特定するための特徴を表示させる必要が無い。このため、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に基づいて、表示部における第2画像の表示位置が決定される場合と比較して、オブジェクトのデザイン上の自由度を高くすることが可能となる。
【0094】
なお、上記態様において、「オブジェクト」とは、例えば、ユーザがゲーム等の進行のために用いるオブジェクトであってもよい。
【0095】
[付記2]
本発明の他の態様に係る情報処理装置のプログラムは、付記1に記載の情報処理装置のプログラムであって、前記第1特定部は、前記第1撮像部による撮像結果に基づいて、前記第1撮像部の前記現実空間における位置及び姿勢の少なくとも一方を特定する、ことを特徴とする。
【0096】
この態様によれば、現実空間を撮像する第1撮像部による撮像結果に基づいて、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に依存することなく、表示部における第2画像の表示位置を決定することができる。
【0097】
[付記3]
本発明の他の態様に係る情報処理装置のプログラムは、付記1または2に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記表示制御部は、前記表示部において、前記第2画像の少なくとも一部と前記第3画像の少なくとも一部とが重なる場合に、前記第1特定部による特定結果に基づいて、前記第2画像の少なくとも一部、または、前記第3画像の少なくとも一部のうち、何れか一方を、非表示とする、ことを特徴とする。
【0098】
この態様によれば、第2画像の一部と第3画像の一部とが重なる場合に、第2画像の一部及び第3画像の一部の一方を非表示とする。このため、この態様によれば、表示部に表示される画像において、奥行きを表現することができる。
【0099】
なお、上記態様において、「第3画像」とは、例えば、第1撮像部によりユーザを撮像した結果として得られる、ユーザの形状、輪郭、色彩、及び、模様の一部または全部を示す画像であってもよい。具体的には、「第3画像」とは、例えば、ユーザの形状、輪郭、色彩、及び、模様の全てを示す画像であってもよい。また、「第3画像」とは、例えば、ユーザの骨格等のユーザの形状を示す画像であってもよいし、ユーザのシルエット等のユーザの輪郭を示す画像であってもよい。すなわち、「第3画像」は、例えば、ユーザの色彩及び模様のうち少なくとも一方を含まないような画像であってもよい。
【0100】
[付記4]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至3に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記表示制御部は、前記第1特定部による特定結果に基づいて、前記表示部における、前記第2画像と前記第3画像との相対的な位置関係を決定し、当該決定の結果に基づいて、前記第2画像及び前記第3画像を前記表示部に表示させる、ことを特徴とする。
【0101】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像と第3画像との相対的な位置関係を決定する。このため、この態様によれば、現実空間における第1撮像部の位置及び姿勢が変化する場合であっても、表示部において第2画像と第3画像とを関連付けて表示する等の演出を行うことができる。
【0102】
[付記5]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至4に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像と、前記現実空間のうち前記ユーザの背景を表す第4画像と、を含み、前記表示制御部は、前記第1特定部による特定結果に基づいて、前記表示部における、前記第2画像と前記第3画像と前記第4画像との相対的な位置関係を決定し、当該決定の結果に基づいて、前記第2画像、前記第3画像、及び、前記第4画像を、前記表示部に表示させる、ことを特徴とする。
【0103】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像と第3画像と第4画像との相対的な位置関係を決定する。このため、この態様によれば、現実空間における第1撮像部の位置及び姿勢が変化する場合であっても、表示部において第2画像と第3画像とを関連付けて表示する等の演出を行うことができる。
【0104】
[付記6]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至5に記載の情報処理装置のプログラムであって、前記プロセッサを、前記オブジェクトを撮像する第2撮像部による撮像結果に基づいて、前記オブジェクトの種類を特定する第2特定部、として更に機能させ、前記第2画像は、前記第2特定部の特定したオブジェクトの種類に応じた画像である、ことを特徴とする。
【0105】
この態様によれば、表示部において、現実空間に配置されたオブジェクトの種類に応じた画像を第2画像として表示させる。このため、この態様によれば、例えば、現実空間に配置されたオブジェクトの種類に関わらず同一の画像を第2画像として表示する場合と比較して、表示部における表示される画像において、臨場感を演出することが可能となる。
【0106】
[付記7]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至6に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記第2画像は、前記オブジェクトに対応するキャラクタを表す画像であり、前記表示制御部は、前記表示部により表示される表示空間において、前記第2画像として表される前記キャラクタと、前記第3画像として表される前記ユーザとが、所定の位置関係を有するように、前記表示部に対して、前記第2画像及び前記第3画像を表示させる、ことを特徴とする。
【0107】
この態様によれば、表示空間において、キャラクタとユーザとが所定の位置関係を維持するように、表示部において、第2画像及び第3画像を表示させる。すなわち、この態様によれば、現実空間において、第1撮像部の位置及び姿勢が変化した場合であっても、表示空間における、キャラクタ及びユーザの相対的な位置関係の変化を抑止することが可能となる。このため、この態様によれば、現実空間における第1撮像部の位置及び姿勢を変化させることにより、表示空間においてキャラクタ及びユーザを撮像する仮想カメラの位置及び姿勢を変化させるという演出が可能となる。
【0108】
[付記8]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至7に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像と、前記現実空間のうち前記ユーザの背景を表す第4画像と、を含み、前記第2画像は、前記オブジェクトに対応するキャラクタを表す画像であり、前記表示制御部は、前記表示部により表示される表示空間において、前記第2画像として表される前記キャラクタが、前記第3画像として表される前記ユーザと、前記第4画像として表される前記背景と、の間に位置するように、前記表示部に対して、前記第2画像、前記第3画像、及び、前記第4画像を表示させる、ことを特徴とする。
【0109】
この態様によれば、表示空間において、キャラクタがユーザ及び背景の間に位置するように、表示部において、第2画像と第3画像と第4画像とを表示させる。このため、この態様によれば、表示空間において、背景よりも手前側にキャラクタが位置するような演出が可能となる。
【0110】
[付記9]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至8に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記第2画像は、前記オブジェクトに対応するキャラクタを表す画像であり、前記表示制御部は、前記ユーザが所定の動作を実行した場合に、前記表示部により表示される表示空間において、前記第2画像として表される前記キャラクタと、前記第3画像として表される前記ユーザとの、相対的な位置関係が変化するように、前記表示部に対して、前記第2画像及び前記第3画像を表示させる、ことを特徴とする。
【0111】
この態様によれば、ユーザの動作に基づいて、表示空間におけるユーザとキャラクタとの相対的な位置関係を変化させる。このため、この態様によれば、表示部に表示される画像において、ユーザが所定の動作を実行したことを強調して表現するという演出が可能となる。
【0112】
なお、上記態様において、「所定の動作」とは、例えば、ユーザの体勢が所定の変化をすることであってもよいし、ユーザが所定の文言を発言することであってもよい。
【0113】
[付記10]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至9に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記第2画像は、前記オブジェクトに対応するキャラクタを表す画像であり、前記表示制御部は、前記表示部により表示される表示空間において、前記キャラクタの姿勢が、前記ユーザの姿勢に基づく姿勢となるように、前記表示部において、前記第2画像を表示させる、ことを特徴とする。
【0114】
この態様によれば、表示空間におけるキャラクタの姿勢が、ユーザの姿勢に基づく姿勢となるように、表示部において第2画像を表示する。このため、この態様によれば、表示部に表示される画像において、ユーザ及びキャラクタの一体感を演出することができる。
【0115】
なお、上記態様において、「キャラクタまたはユーザの姿勢」とは、例えば、キャラクタまたはユーザの向きであってもよいし、キャラクタまたはユーザの体勢であってもよい。
【0116】
[付記11]
本発明の他の態様に係る情報処理装置のプログラムは、付記1乃至10に記載の情報処理装置のプログラムであって、前記第1画像は、前記現実空間内のユーザを表す第3画像を含み、前記第2画像は、前記オブジェクトに対応するキャラクタを表す画像であり、前記表示制御部は、前記表示部により表示される表示空間において、前記第3画像として表される前記ユーザの向きと、前記第2画像として表される前記キャラクタの向きとのなす角度が、所定の角度以下となるように、前記表示部において、前記第2画像を表示させる、ことを特徴とする。
【0117】
この態様によれば、例えば、表示空間において、ユーザの向きと、キャラクタの向きとが、略同じとなるように、表示部において第2画像を表示する。このため、この態様によれば、表示部に表示される画像において、ユーザ及びキャラクタの一体感を演出することができる。
【0118】
[付記12]
本発明の一態様に係る情報処理装置は、オブジェクトが配置された現実空間を撮像する第1撮像部の、前記現実空間における位置及び姿勢の少なくとも一方を特定する第1特定部と、前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、前記オブジェクトに対応する第2画像を、前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、を備える、ことを特徴とする。
【0119】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像の表示位置を決定する。すなわち、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に依存することなく、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間においてオブジェクトを所定の位置に配置する等の手間をかけることなく、オブジェクトに対応する第2画像の表示部における表示位置を決定することができる。
【0120】
[付記13]
本発明の一態様に係る情報処理システムは、オブジェクトが配置された現実空間を撮像する第1撮像部と、表示部と、情報処理装置と、を備える情報処理システムであって、前記情報処理装置は、前記第1撮像部の、前記現実空間における位置及び姿勢の少なくとも一方を特定する第1特定部と、前記第1撮像部による撮像結果に基づく第1画像を前記表示部に表示させ、前記オブジェクトに対応する第2画像を、前記表示部のうち、前記第1特定部による特定結果に基づく位置に表示させる表示制御部と、を備える、ことを特徴とする。
【0121】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像の表示位置を決定する。すなわち、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に依存することなく、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間においてオブジェクトを所定の位置に配置する等の手間をかけることなく、オブジェクトに対応する第2画像の表示部における表示位置を決定することができる。
【0122】
[付記14]
本発明の一態様に係る表示方法は、オブジェクトが配置された現実空間を撮像する第1撮像部の、前記現実空間における位置及び姿勢の少なくとも一方を特定し、前記第1撮像部による撮像結果に基づく第1画像を表示部に表示させ、前記オブジェクトに対応する第2画像を、前記表示部のうち、前記特定の結果に基づく位置に、表示させる、ことを特徴とする。
【0123】
この態様によれば、現実空間を撮像する第1撮像部の位置及び姿勢に基づいて、表示部における第2画像の表示位置を決定する。すなわち、この態様によれば、現実空間におけるオブジェクトの位置及び姿勢に依存することなく、表示部における第2画像の表示位置を決定することができる。このため、この態様によれば、現実空間においてオブジェクトを所定の位置に配置する等の手間をかけることなく、オブジェクトに対応する第2画像の表示部における表示位置を決定することができる。
【符号の説明】
【0124】
1…情報処理システム、10…情報処理装置、11…制御部、12…記憶部、13…通信部、14…操作部、15…情報読込部、20…表示装置、21…表示部、30…記憶装置、110…表示制御部、111…キャラクタ位置決定部、112…重なり抽出部、113…遠近判定部、114…表示情報生成部、115…オブジェクト特定部、116…カメラ位置特定部、117…被写体位置特定部、1000…プロセッサ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23