【解決手段】3次元空間に配置された描画オブジェクトを、撮像装置の位置及び姿勢に応じたカメラについて描画してコンテンツ画像を生成する処理と、生成されたコンテンツ画像を、撮像画像の該所定の画像パターンの位置に重畳させた表示画像を構成する処理とを実行する。撮像画像に複数種類の所定の画像パターンが含まれる場合に、該複数種類の所定の画像パターンの各々についてカメラを定義し、定義されたカメラ各々について、3次元空間に配置された描画オブジェクトのうちの該カメラに対応する所定の画像パターンに予め対応付けられた鑑賞コンテンツを構成する描画オブジェクトのみを描画してコンテンツ画像を生成する。構成する処理は、生成された複数のコンテンツ画像を撮像画像に重畳させて表示画像を構成する。
前記所定の画像パターンに予め対応付けられる鑑賞コンテンツは、前記特定のコマに描写される絵柄を表現した3次元コンテンツであって、構成する描画オブジェクトの各々に深度情報が定義される請求項2に記載のプログラム。
前記撮像画像に複数種類の前記所定の画像パターンが含まれる場合、1つのカメラに係る前記コンテンツ画像に描画される描画オブジェクトは、他のカメラに係る前記コンテンツ画像には描画されないよう制御される請求項1乃至4のいずれか1項に記載のプログラム。
【発明を実施するための形態】
【0010】
[実施形態]
以下、本発明の例示的な実施形態について、図面を参照して詳細に説明する。なお、以下に説明する一実施形態は、画像生成方法を行うコンピュータの一例としての、装置の動きに応じた複合現実感(MR)または拡張現実感(AR)提示を行う画像を生成可能なスマートホンに、本発明を適用した例を説明する。しかし、本発明は、撮像装置が接続された装置の動きに応じたMR/AR提示を行う画像を生成することが可能な任意の機器に適用可能である。
【0011】
《スマートホンの機能構成》
ここで、スマートホン100の機能構成について、
図1のブロック図を用いて詳細を説明する。
【0012】
制御部101は、例えばCPUであり、スマートホン100が有する各ブロックの動作を制御する。制御部101は、記録媒体102に記憶されている各ブロックの動作プログラムを読み出し、メモリ103に展開して実行することにより各ブロックの動作を制御する。
【0013】
記録媒体102は、例えばスマートホン100が有する書き換え可能な内蔵メモリや、HDDや光学ドライブを介して読み取り可能になる光学ディスクを含むものであってよい、不揮発性の記録装置である。記録媒体102は、各ブロックの動作プログラムだけでなく、各ブロックの動作において必要となる各種パラメータ等の情報を記録する。本実施形態のスマートホン100において実行される、MR/ARコンテンツを提示するアプリケーション(以下、単に提示アプリケーション)のプログラムや各種データも、記録媒体102に格納されているものとする。メモリ103は、例えば揮発性メモリであり、各ブロックの動作プログラムや提示アプリケーションのプログラムの展開領域としてだけでなく、各ブロックの動作において出力された中間データ等を一時的に記憶する格納領域としても用いられる。
【0014】
撮像部104は、例えばCCDやCMOSセンサ等の撮像素子を有する撮像装置ユニットであり、スマートホン100の外界認識手段として機能する。撮像部104は、現実世界に存在する被写体を撮像し、撮像画像を出力する。撮像は、間欠的に行われるものとする。なお、本実施形態では、撮像部104がMR/AR提示を行うスマートホン100に備えられているものとして説明するが、提示用の画面を生成する機器が撮像装置を有している必要はなく、撮像装置により撮像された撮像画像を該機器が取得可能な構成であれば、本発明の実施は可能である。
【0015】
画像処理部105は、撮像部104により出力された撮像画像に対して種々の画像処理を適用する。本実施形態では画像処理部105は、撮像画像を解析し、該画像中に存在する特定パターンを検出する。特定パターンの詳細については後述するが、本実施形態の提示アプリケーションでは、予め検出対象となる画像が必要データとして登録されているものとする。
【0016】
取得部106は、スマートホン100に生じた移動及び回転の情報(動き検出結果)を取得する。取得部106には、センサ110が接続され、スマートホン100に生じた移動及び回転の検出を行う。センサ110は、例えば加速度センサ、地磁気センサ、ジャイロセンサ等を吹くものであってよく、スマートホン100の位置変更や姿勢変更があったことを検出すると、その情報を取得部106に出力する。取得部106は、取得した動き検出結果をメモリ103に格納する。
【0017】
描画部107は、画像処理部105による画像解析結果と、取得部106によりメモリ103に格納された動き検出結果とに基づき、表示部120に表示する画像を生成する。表示部120は、例えばLCD等のスマートホン100が有する表示装置である。本実施形態では表示部120は、スマートホン100に組み込まれ、一体型であるものとして説明するが、本発明の実施はこれに限られるものではなく、描画部107により生成された画像を表示する装置は、スマートホン100に有線無線を問わず接続された任意の表示装置であってよい。
【0018】
詳細は後述するが、本実施形態の提示アプリケーションでは、撮像部104により撮像された撮像画像(実写画像)に対し、所定のCG画像を重畳することで、MR/AR提示を実現する。描画部107は、実写画像に重畳するCG画像の描画、及び実写画像への該CG画像の重畳を行い、最終的に表示部120に表示される画面を生成する。
【0019】
操作入力部108は、例えばタッチパネルやボタン等のスマートホン100が有するユーザインタフェースである。操作入力部108は、ユーザによりなされた操作入力を検出すると、該操作入力に対応する制御信号を制御部101に出力する。
【0020】
通信部109は、スマートホン100が有する、他の装置との通信を行うための通信インタフェースである。通信部109は、有線無線を問わず、所定の通信方式により例えばネットワーク上に存在する他のサーバ等に接続し、データの送受信を行う。提示アプリケーションや、画像処理部105の解析により検出対象となる特定パターンの情報等は、通信部109を介して外部の装置から受信可能に構成されるものであってよい。
【0021】
《鑑賞コンテンツ》
ここで、本実施形態のスマートホン100において提示アプリケーションを実行することで、ユーザ(スマートホン100の使用者)に対して提示されるコンテンツ(鑑賞コンテンツ)について説明する。
【0022】
提示アプリケーションを実行すると、撮像部104の撮像動作が開始され、表示部120には、基本的には撮像画像がスルー表示される。即ち、間欠的に撮像されて得られた撮像画像が順次表示部120に表示されることで、提示アプリケーションは、現実空間を略リアルタイムに写した状態を鑑賞者に提示することができる。
【0023】
一方、本実施形態の提示アプリケーションは、予め設定された漫画(実物の書籍、雑誌、あるいは表示装置に表示された電子書籍)のページを認識可能に構成されており、撮像画像に係る撮像範囲に該ページの少なくとも一部を検出すると、撮像画像の予め定められたコマ(漫画において、1つの時間や空間を表現する単位)の位置に、該コマと対応するCG画像を重畳することで、MR/ARを提示する鑑賞コンテンツの鑑賞体験をユーザに提供する。
【0024】
提示アプリケーションの検出対象である漫画のページを示す画像情報は、メモリ103または記録媒体102に予め格納されており、該画像情報で示されるパターンの少なくとも一部が撮像画像に含まれるかを、画像処理部105が解析する。本実施形態では簡単のため、パターンとして認識される画像は、漫画のページの全体であるものとして説明するが、本発明の実施はこれに限られるものではなく、1以上の特定のコマの画像をパターンとして検出するものであってもよい。
【0025】
通常、漫画のコマには、ストーリーにおける固定の瞬間に係る絵柄が描写され、文字として付される台詞や説明(語り)等によってストーリーの内容が綴られている。故に、連続するコマ間では、描写される瞬間や空間が変化しているため、漫画というコンテンツは、読み手がコマ間でのストーリーの繋がりを補間しながら鑑賞するものである。
【0026】
一方、本実施形態の提示アプリケーションにおいて、コマの位置に重畳することで提示される鑑賞コンテンツは、コマに描写された絵柄を表現した3次元コンテンツであって、このように1つのコマや連続するコマ間で表現される、コマに描写されたキャラクタや風景の時間的な流れや音声を表現すべく構成された、動画コンテンツであるものとする。鑑賞コンテンツの提示は、実物の漫画におけるコマに描写された空間を、所望の視点で鑑賞しているようユーザに知覚させるべく、
図2(a)〜(c)に示されるように実写画像における該当のコマのフレーム(枠、外形)201に合わせて表示がなされる。図の例では視点を上方から下方に移動させながら、コマを撮像範囲に捉えた場合の鑑賞コンテンツの変化を、(a)→(b)→(c)にて例示している。図示されるように鑑賞コンテンツは、コマと対応する画像や3次元の描画オブジェクト(平板オブジェクトを含む)が配置された3次元空間(ワールド)を、実物のコマのフレームを介して鑑賞可能なように提示される。このため、提示アプリケーションを利用することでユーザは、基本的には実物の漫画の紙面よりも奥側に存在する空間を表現した動画コンテンツを、該当のコマのフレームを窓として、スマートホン100に対応する位置・方向の視点から鑑賞することができる。
【0027】
以下の説明では、1つのコマについて提示アプリケーション上で実写画像に重畳して提示される画像は、「フレームオブジェクトを描画する」ことで生成されるものとする。ここで、フレームオブジェクトとは、1つのコマについて該コマに対応付けられた鑑賞コンテンツを構成する一連の描画オブジェクトを提示する概念であり、ワールド内の、現実世界の漫画のコマと対応する位置に配置される、コマ(フレーム)と同形状の平板オブジェクトであるものとする。フレームオブジェクトは、特性として、ワールドにおいて該フレームオブジェクトよりも奥(視点から遠離する位置)に配置された描画オブジェクトを、該フレームオブジェクトに係る面内(フレーム内)の領域にのみ表示する。より詳しくは、フレームオブジェクトが描画される際には、フレームオブジェクトのフレーム内の領域には、視点とフレームの位置関係に基づいて確定されるワールド内の空間範囲が切り出されて描画される。
【0028】
なお、本実施形態では鑑賞コンテンツは時間的な流れを表現する動画コンテンツとして説明するが、漫画で用いられる所定の効果やキャラクタの動き等を短時間で表現した後は、状態が固定された3DCGの鑑賞コンテンツとして機能するものであってもよい。また、本実施形態では簡単のため、撮像される漫画のページは平面状になっているものとし、フレームオブジェクトは平板オブジェクトであるものとして説明するが、本発明の実施はこれに限られるものではない。即ち、現実世界において漫画のページが歪められている状態等、凹凸を有している場合には、フレームオブジェクトの形状を、該凹凸に応じて変更するものであってもよい。
【0029】
〈漫画特有の問題点〉
ところで、漫画のページ上には、一般的に複数のコマが配置されている。本実施形態の提示アプリケーションでは、実写画像中のページに含まれる複数のコマで同時に、各々に対応する鑑賞コンテンツの鑑賞を可能にするが、通常の描画を行う場合、次のような問題が生じ得る。
【0030】
特にスマートホン100のような携帯端末では演算能力や描画能力も限られるため、鑑賞コンテンツの提示について用いられる3次元空間は1つになる。故に、複数のコマの各々について鑑賞コンテンツの提示に用いられる描画オブジェクトは、全て1つのワールドに配置されることになり、スマートホン100と漫画のページとの位置関係に応じて設定されたカメラ(視点)について描画される。ここで、コマに係る一連の描画オブジェクトについて、所望の視点からの鑑賞を可能ならしめるために、フレームより奥に存在するように提示する描画オブジェクトは、所定の視点に応じてワールドに配置された場合に、
図3(a)に示されるようなフレーム301内に表示されない部位(図においてハッチングで示す)を含みうる(実写画像におけるコマのフレームに併せて重畳するために、視点との位置関係でフレーム外にある描画オブジェクトはマスクされる)。換言すれば、フレーム内に表示される描画オブジェクトの表示態様は視点に応じて変化し得るものであるため、該コマに係る鑑賞コンテンツを構成する描画オブジェクトは、視点の変更にも対応可能なように、視点によってはフレーム内に含まれない部位を有する。
【0031】
図4に示されるように、隣接して配置された複数のコマ401〜403について、提示アプリケーションを介することで鑑賞コンテンツの提示がなされる場合も、視点移動に応じた好適な鑑賞体験を提供するために、各コマについてフレームオブジェクト(301〜303)とフレーム外の部位を有し得る描画オブジェクトがワールドに配置される。例えば、ワールドに配置された各描画オブジェクトは、
図3(b)のような関係となる。このとき、スマートホン100と漫画のページの位置関係に基づく視点や、各コマに係る鑑賞コンテンツを構成する描画オブジェクトに定義される奥行き情報(深度情報)によっては、対応しないフレームオブジェクトのフレーム内に描画されることになるため、好適な鑑賞体験を阻害する可能性があった。
【0032】
例えば
図5に示されるように、コマ401に係る鑑賞コンテンツを構成する描画オブジェクトは、対応するフレームオブジェクト501の描画時には、フレームオブジェクト501のフレーム301内にのみ表示される。一方、
図3(b)に示したように、描画オブジェクト311及び312の一部はフレーム301外にも存在しており、これがフレーム303の範囲にも含まれる。即ち、コマ403に対応するフレームオブジェクト503の描画時には、コマ403に係る鑑賞コンテンツを構成する描画オブジェクトだけでなく、コマ401に係る鑑賞コンテンツを構成する描画オブジェクト311及び312がフレーム303内に含まれるため、
図5に示されるように好適な鑑賞コンテンツの提示がなされない。
【0033】
従って、本実施形態の提示アプリケーションでは、ワールドに全ての描画オブジェクトを配置するものの、フレームオブジェクトごとにフレーム内に表示される描画オブジェクトを制御する処理を行う。
【0034】
《画面生成処理》
以下、本実施形態のスマートホン100において提示アプリケーションが実行された場合に行われる、MR/AR提示を行う画像を生成する画面生成処理について、
図6のフローチャートを用いて具体的な処理を説明する。該フローチャートに対応する処理は、制御部101が、例えば記録媒体102に記憶されている対応する処理プログラムを読み出し、メモリ103に展開して実行することにより実現することができる。なお、本画面生成処理は、例えば提示アプリケーションが起動された際に開始され、表示部120に表示される画面のフレームごとに実行されるものとして説明する。
【0035】
S601で、制御部101は、表示する画面に用いる撮像画像を取得する。提示アプリケーションの起動後に撮像部104は、所定の撮影フレームレートで独立して撮像を行って、得られた撮像画像をメモリ103(カメラバッファ)に蓄積しており、制御部101は、本ステップの処理タイミングにおいて最新の撮像画像を、カメラバッファから取得する。画面に用いる撮像画像は、解析及び鑑賞コンテンツに係る画像の重畳に用いられるものであり、1フレームに係る画面生成処理において通して使用される。
【0036】
S602で、制御部101は、S601において取得された撮像画像の撮像範囲に、鑑賞コンテンツの提示対象である漫画のページが含まれるか否かを判断する。より詳しくは、制御部101は、該当の漫画のページの画像(もしくはコマの画像)に一致するパターンが撮像画像に存在するかを画像処理部105に解析させ、該解析結果に基づいて本ステップの判断を行う。制御部101は、撮像画像の撮像範囲に該当の漫画のページが含まれると判断した場合は処理をS603に移し、含まれていないと判断した場合は処理をS610に移す。
【0037】
S603で、画像処理部105は制御部101の制御の下、撮像画像及び動き検出結果に基づいて、撮像範囲に含まれる漫画のページ(撮像ページ)とスマートホン100との相対位置関係を導出し、鑑賞コンテンツの描画に係る視点情報を決定する。本画面生成処理では、該当の漫画のページが含まれるか否かの処理に次いで視点情報を決定するものとして説明するが、視点情報の決定や相対位置関係の導出は、S602における解析処理の過程で行われるものであってもよい。また、例えば撮像ページの中心等、撮像ページ中の特定の位置を原点としてワールド座標系が構築されるものであってよく、鑑賞コンテンツの描画を行う視点情報は、導出された相対位置関係に基づいて、該ワールド座標系の座標(位置)と、その座標における回転角度(姿勢)が導出されることにより、決定されるものであってよい。
【0038】
S604で、描画部107は制御部101の制御の下、撮像ページ)設定された鑑賞コンテンツについて、該鑑賞コンテンツを構成する描画オブジェクトのデータ読み出し、描画メモリへの展開、及びワールドへの配置を行う。上述したように、撮像ページには鑑賞コンテンツの提示対象であるコマ(拡張コマ)が複数含まれ得るため、その全ての拡張コマに係る鑑賞コンテンツを構成する描画オブジェクトが、本ステップにおいてワールドへの配置の対象となる。
【0039】
ここで、各描画オブジェクトのワールドの配置位置は、描画を行う視点の位置及び姿勢に応じて決定されるものであってよい。鑑賞コンテンツは、撮像ページの拡張コマに描写された世界を3次元的に表現するものであり、視点の移動に応じた見え方の変化は、例えば近景と遠景とで異なるよう提示されるものであってよい。従って、描画部107は、例えば撮像ページと所定距離離れて正対する視点について定義された、鑑賞コンテンツの各描画オブジェクトの深度情報を含む配置位置を、決定された視点の情報に基づいて変更して配置するものとする。
【0040】
S605で、制御部101は、撮像ページに含まれる拡張コマの各々に対し、対応するフレームオブジェクトを描画するカメラを定義する。本実施形態の提示アプリケーションでは、上述したような他の拡張コマの鑑賞コンテンツに係る描画オブジェクトによって好適な鑑賞体験が阻害されることを回避するため、本ステップにおいて拡張コマのフレームオブジェクトごとにワールドを捉えるカメラを定義する。即ち、撮像ページ内に拡張コマが3つ存在する態様では、本ステップにおいてカメラが3つ定義される。定義されるカメラは、一部のパラメータが、いずれも決定された視点情報によって設定されるものであり、ワールド中の共通の座標に配置され、同一の姿勢でワールドを捉える。
【0041】
ワールドに配置される各描画オブジェクトは、それぞれ拡張コマについて提示される鑑賞コンテンツに関連付けられている。このため、描画オブジェクトについて管理されるオブジェクト情報は、例えば
図7(a)に示されるように、該描画オブジェクトを識別するオブジェクトID701に関連付けて、基準状態でのワールドの配置を示す基準配置情報702、視点に応じた配置変更方法を規定する変更情報703、及びいずれの鑑賞コンテンツに対応付けられているフレームオブジェクトを示すフレームID704を含む。
【0042】
1つのカメラについて管理されるカメラ情報は、例えば
図7(b)に示されるように、カメラを識別するカメラID711に関連付けて、該カメラが配置されるワールド中の座標(視点情報の座標)を示す位置712、該カメラの視線方向(視点情報の姿勢に基づいて導出)を示す視線ベクトル713、カメラの上方向(動き検出結果に基づく)を示す上向きベクトル714、及び描画対象とするフレームオブジェクトを示すフレームID715を含むものであってよい。このうち、位置712、視線ベクトル713、及び上向きベクトル714は、視点情報を継承することで、全てのカメラについて共通するパラメータとなる。
【0043】
つまり、本ステップにおいて定義されるカメラは、フレーム715がそれぞれ異なっており、いずれかの拡張コマについて提供される鑑賞コンテンツの提示に用いられる。換言すれば、ワールドに配置される描画オブジェクトに係るフレームID704は、定義されたいずれかのカメラに係るフレームID715を指している。
【0044】
S606で、制御部101は、定義したカメラのうち、まだフレームオブジェクトの描画を行っていないカメラを対象カメラとして選択する。
【0045】
S607で、描画部107は制御部101の制御の下、対象カメラについてワールドの描画を行う。このとき、対象カメラについて描画対象となる描画オブジェクトは、対象カメラに係るフレームID715で示されるフレームオブジェクトと、ワールドに配置された描画オブジェクトのうち、オブジェクト情報のフレームID704が該フレームID715と同一である描画オブジェクトとなる。
【0046】
即ち、対象カメラに対応付けられたフレームオブジェクトに対応するフレームが
図3(b)に示したフレーム301である場合、該フレームオブジェクトに係る鑑賞コンテンツを構成する描画オブジェクト311〜317が描画の対象となり、その他のフレーム(302、303)に係る鑑賞コンテンツを構成する描画オブジェクトは描画の対象とならない。なお、フレームオブジェクトの描画においては、対象カメラから見て対応するフレーム外の領域に位置する部位は、上述したようにマスクされ、描画されないものとする。
【0047】
S608で、制御部101は、定義したカメラの全てについてフレームオブジェクトの描画を行ったか否かを判断する。制御部101は、全てのカメラについてフレームオブジェクトの描画を行ったと判断した場合は処理をS609に移し、行っていないと判断した場合は処理をS606に戻して異なるカメラについて同様に処理する。
【0048】
S609で、描画部107は、定義されたカメラの各々について描画したフレームオブジェクトの画像を実写画像に重畳することで、MR/AR提示を行う画像を生成し、表示部120に表示する画面として出力する。
【0049】
一方、S602において撮像画像の撮像範囲に該当の漫画ページが含まれていないと判断した場合、制御部101はS610で、撮像画像を表示部120に表示する画面として出力させる。
【0050】
このようにすることで、スマートホン100の位置によって、近接して存在する拡張コマ間で、それぞれの鑑賞コンテンツを構成する、深度情報を有してワールド配置された描画オブジェクトの意図しない遮蔽関係が発生することを回避し、好適な鑑賞体験の提供を実現することができる。
【0051】
以上説明したように、本実施形態の画像生成方法によれば、複合現実感や拡張現実感の提示を、ユーザにとって好適な態様で行うことができる。
【0052】
[その他の実施形態]
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。また本発明に係る画像生成方法は、1以上のコンピュータに該画像生成方法を実行させるプログラムによっても実現可能である。該プログラムは、コンピュータが読み取り可能な記録媒体に記録されることにより、あるいは電気通信回線を通じて、提供/配布することができる。