(57)【要約】【課題】立体視可能なパノラマ画像を生成および／または表示することができる画像生成方法、画像表示方法、画像生成プログラム、画像生成システム、および画像表示装置を提供する。【解決手段】パノラマ画像取得ステップは、実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得する。立体視画像生成ステップは、パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する。【選択図】図６
2014095809.tif 000002
【特許請求の範囲】
【請求項１】
立体視可能なパノラマ画像を生成する画像生成方法であって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得ステップと、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成ステップとを含む、画像生成方法。
【請求項２】
前記パノラマ画像取得ステップでは、多角形の各頂点となる実空間における位置にそれぞれ配置された前記パノラマカメラによってそれぞれ撮像されたパノラマ画像が取得され、
前記立体視画像生成ステップは、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像を、その撮像方向に応じてそれぞれ分割画像に分割するパノラマ画像分割ステップと、
前記撮像方向毎に前記左目用画像および前記右目用画像としてそれぞれ採用する画像を前記分割画像から選択し、当該選択された分割画像を前記撮像方向に応じて連結することによって前記左目用画像および前記右目用画像を生成するパノラマ画像合成ステップとを含む、請求項１に記載の画像生成方法。
【請求項３】
前記パノラマ画像合成ステップでは、前記３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像毎に、前記左目用画像に採用する分割画像と前記右目用画像に採用する分割画像とを１つずつ選択する、請求項２に記載の画像生成方法。
【請求項４】
前記パノラマ画像合成ステップでは、前記撮像方向毎に前記左目用画像および前記右目用画像として採用する前記パノラマカメラの組を設定し、当該設定に応じて前記分割画像を選択する、請求項２または３に記載の画像生成方法。
【請求項５】
前記パノラマ画像分割ステップでは、前記多角形の内側からそれぞれの前記パノラマカメラに向かう方向を境界とする複数の撮像方向を設定し、当該撮像方向を撮像したパノラマ画像の一部をそれぞれ前記分割画像として分割する、請求項２乃至４の何れか１つに記載の画像生成方法。
【請求項６】
前記パノラマ画像合成ステップでは、前記撮像方向に対する分割画像を選択する際、前記３つ以上のパノラマカメラのうち当該撮像方向に最も近い一対のパノラマカメラを選択し、当該一対のパノラマカメラにおいて当該撮像方向に向かって左側に配置されたパノラマカメラが当該撮像方向を撮像した前記分割画像を当該撮像方向における左目用画像として採用し、当該一対のパノラマカメラにおいて当該撮像方向に向かって右側に配置された前記パノラマカメラが当該撮像方向を撮像した前記分割画像を当該撮像方向における右目用画像として採用する、請求項５に記載の画像生成方法。
【請求項７】
前記パノラマ画像合成ステップでは、前記分割画像のうち、他のパノラマカメラが撮像されている画像を除いて前記左目用画像および前記右目用画像としてそれぞれ採用する画像を選択する、請求項２乃至６の何れか１つに記載の画像生成方法。
【請求項８】
請求項１乃至７の何れか１つに記載の画像生成方法によって生成された前記左目用画像および前記右目用画像を、表示装置に表示させる画像表示ステップを含む、画像表示方法。
【請求項９】
前記表示装置の姿勢に応じて、前記左目用画像および前記右目用画像から当該表示装置に表示する表示範囲を設定する表示範囲設定ステップを、さらに含み、
前記画像表示ステップでは、前記表示範囲設定ステップにおいて設定された表示範囲内の前記左目用画像および前記右目用画像が、前記表示装置に表示される、請求項８に記載の画像表示方法。
【請求項１０】
立体視可能なパノラマ画像を生成する情報処理装置に含まれるコンピュータで実行される画像生成プログラムであって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得ステップと、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成ステップとを、前記コンピュータに実行させる、画像生成プログラム。
【請求項１１】
立体視可能なパノラマ画像を生成する画像生成システムであって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得手段と、
前記パノラマ画像取得手段において取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成手段とを備える、画像生成システム。
【請求項１２】
立体視可能なパノラマ画像を表示する画像表示装置であって、
左目用画像および右目用画像を表示することによって立体視可能な表示手段と、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像の一部をそれぞれ合成することによって生成された一対のパノラマ画像を前記左目用画像および前記右目用画像として前記表示装置に表示する表示制御手段とを備える、画像表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像生成方法、画像表示方法、画像生成プログラム、画像生成システム、および画像表示装置に関し、特に例えば、立体視可能なパノラマ画像を生成する画像生成方法、画像生成プログラム、および画像生成システムや、立体視可能なパノラマ画像を表示可能な画像表示方法および画像表示装置に関する。
【背景技術】
【０００２】
従来、パノラマ画像や全方位画像の一部の範囲をディスプレイに表示する画像処理装置がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１８７２９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１に記載の画像処理装置は、立体視可能なパノラマ画像を取得することができない。
【０００５】
それ故に、本発明の目的は、立体視可能なパノラマ画像を生成および／または表示することができる画像生成方法、画像表示方法、画像生成プログラム、画像生成システム、および画像表示装置を提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
【０００７】
本発明の画像生成方法の一構成例は、立体視可能なパノラマ画像を生成する。画像生成方法は、パノラマ画像取得ステップおよび立体視画像生成ステップを含む。パノラマ画像取得ステップは、実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得する。立体視画像生成ステップは、パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する。
【０００８】
上記「パノラマ画像」は、上下方向と左右方向のうち一方方向について画角が１８０度以上のパノラマ画像であることが好ましい。さらに好ましくは、一方方向について３６０度のパノラマ画像であることが好ましい。また、他方方向については、表示装置に表示する動画の画角以上であることが好ましく、さらに言うと、当該動画の画角の２倍以上、１２０度以上、１５０度以上、または、１８０度であることが好ましい。
【０００９】
上記によれば、異なる視点から撮像された３つ以上のパノラマ画像の一部をそれぞれ合成して左目用画像および右目用画像を生成することによって、撮像されたパノラマ画像を立体視可能に表示することができる。
【００１０】
また、上記パノラマ画像取得ステップでは、多角形の各頂点となる実空間における位置にそれぞれ配置されたパノラマカメラによってそれぞれ撮像されたパノラマ画像が取得されてもよい。この場合、立体視画像生成ステップは、パノラマ画像分割ステップおよびパノラマ画像合成ステップを含んでもよい。パノラマ画像分割ステップは、パノラマ画像取得ステップにおいて取得されたパノラマ画像を、その撮像方向に応じてそれぞれ分割画像に分割する。パノラマ画像合成ステップは、撮像方向毎に左目用画像および右目用画像としてそれぞれ採用する画像を分割画像から選択し、当該選択された分割画像を撮像方向に応じて連結することによって左目用画像および右目用画像を生成する。
【００１１】
上記によれば、３つ以上のパノラマ画像を分割し、撮像方向に応じて連結することによって、効率よく左目用画像および右目用画像を生成することができる。
【００１２】
また、上記パノラマ画像合成ステップでは、３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像毎に、左目用画像に採用する分割画像と右目用画像に採用する分割画像とを１つずつ選択してもよい。
【００１３】
上記によれば、１つのパノラマカメラが撮像したパノラマ画像から、左目用画像として用いる分割画像と右目用画像として用いる分割画像とを１つずつ選択することによって、撮像方向に応じて当該パノラマカメラを左目用のカメラおよび右目用のカメラとして機能させることができる。
【００１４】
また、上記パノラマ画像合成ステップでは、撮像方向毎に左目用画像および右目用画像として採用するパノラマカメラの組を設定し、当該設定に応じて分割画像を選択してもよい。
【００１５】
上記によれば、撮像方向に応じて、最適な立体視が可能となるパノラマ画像の組み合わせを設定することができる。
【００１６】
また、上記パノラマ画像分割ステップでは、多角形の内側からそれぞれのパノラマカメラに向かう方向を境界とする複数の撮像方向を設定し、当該撮像方向を撮像したパノラマ画像の一部をそれぞれ分割画像として分割してもよい。
【００１７】
上記によれば、立体視可能なパノラマ画像を生成するために、適切な分割画像を得ることができる。
【００１８】
また、上記パノラマ画像合成ステップでは、撮像方向に対する分割画像を選択する際、３つ以上のパノラマカメラのうち当該撮像方向に最も近い一対のパノラマカメラを選択し、当該一対のパノラマカメラにおいて当該撮像方向に向かって左側に配置されたパノラマカメラが当該撮像方向を撮像した分割画像を当該撮像方向における左目用画像として採用し、当該一対のパノラマカメラにおいて当該撮像方向に向かって右側に配置されたパノラマカメラが当該撮像方向を撮像した分割画像を当該撮像方向における右目用画像として採用してもよい。
【００１９】
上記によれば、撮像方向に応じて、最適な立体視が可能となる分割画像を連結してパノラマ画像を生成することができ、全方向に対して立体視可能に表示することができる。
【００２０】
また、上記パノラマ画像合成ステップでは、分割画像のうち、他のパノラマカメラが撮像されている画像を除いて左目用画像および右目用画像としてそれぞれ採用する画像を選択してもよい。
【００２１】
上記によれば、他のパノラマカメラによって視界が妨げられる撮像領域のないパノラマ画像が生成されるため、パノラマ画像における死角を解消することができる。
【００２２】
また、本発明の画像表示方法の一構成例は、画像表示ステップを含んでもよい。画像表示ステップは、上述した画像生成方法の何れか１つによって生成された左目用画像および右目用画像を、表示装置に表示させる。
【００２３】
上記によれば、立体視可能なパノラマ画像を表示することができる。
【００２４】
また、上記画像表示方法は、表示範囲設定ステップを、さらに含んでもよい。表示範囲設定ステップは、表示装置の姿勢に応じて、左目用画像および右目用画像から当該表示装置に表示する表示範囲を設定する。この場合、画像表示ステップでは、表示範囲設定ステップにおいて設定された表示範囲内の左目用画像および右目用画像が、表示装置に表示されてもよい。
【００２５】
上記によれば、表示装置の姿勢に応じて、表示するパノラマ画像の範囲が変化するため、ユーザは、直感的な操作でパノラマ画像を見ることができる。
【００２６】
また、本発明は、上記各ステップをコンピュータに実行させる画像生成プログラム、上記各ステップの動作をそれぞれ行う手段を備える画像生成システム、上記各ステップの動作によって生成された画像を表示する画像表示装置の形態で実施されてもよい。
【発明の効果】
【００２７】
本発明によれば、異なる視点から撮像された３つ以上のパノラマ画像の一部をそれぞれ合成して左目用画像および右目用画像を生成することによって、撮像されたパノラマ画像を立体視可能に表示することができる。
【図面の簡単な説明】
【００２８】
【図１】画像表示装置３の一例を示すブロック図
【図２】画像表示装置３において表示されるパノラマ画像の一例を示す図
【図３】画像表示装置３の姿勢に応じて表示範囲を決定する方法の一例を示す図
【図４】フレーム毎のパノラマ画像を構成するパノラマ動画を撮像し、当該パノラマ動画をエンコードして記録するまでの処理の流れの一例を示す図
【図５】立体視可能なパノラマ動画を撮像する際のパノラマカメラの配置例および撮像領域の一例を示す図
【図６】撮像された３つのパノラマ画像から左目用パノラマ画像および右目用パノラマ画像を生成する合成処理の一例を示す図
【図７】撮像された３つのパノラマ画像から左目用パノラマ画像および右目用パノラマ画像を生成する合成処理の一例を示す図
【図８】画像表示装置３の記憶部３２に記憶される主なデータおよびプログラムの一例を示す図
【図９】画像表示装置３において実行される処理の前半の一例を示すフローチャート
【図１０】画像表示装置３において実行される処理の後半の一例を示すフローチャート
【発明を実施するための形態】
【００２９】
図１を参照して、本発明の一実施例に係る画像表示装置について説明する。例えば、画像表示装置３は、交換可能な光ディスクやメモリーカード等の記憶媒体内に記憶され、または、他の装置から受信した画像表示プログラムやゲームプログラムを実行可能である。本実施形態における画像表示装置３は、画像（パノラマ画像）を生成して表示装置（表示部３５）に表示するものである。画像表示装置３は、一般的なパーソナルコンピュータ、据置型ゲーム機、携帯電話機、携帯ゲーム機、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等のデバイスであってもかまわない。図１は、画像表示装置３の構成の一例を示すブロック図である。
【００３０】
図１において、画像表示装置３は、制御部３１、記憶部３２、プログラム格納部３３、入力部３４、および表示部３５を備える。なお、画像表示装置３は、制御部３１を少なくとも含む情報処理装置と他の装置とを含む１以上の装置によって構成されてもよい。
【００３１】
制御部３１は、各種の情報処理を実行するための情報処理手段（コンピュータ）であり、例えばＣＰＵである。制御部３１は、各種の情報処理として、入力部３４に対するユーザの操作に応じた処理等を実行する機能を有する。例えば、ＣＰＵが所定のプログラムを実行することによって、制御部３１における各機能が実現される。
【００３２】
記憶部３２は、制御部３１が上記情報処理を実行する際に用いる各種のデータを記憶する。記憶部３２は、例えばＣＰＵ（制御部３１）がアクセス可能なメモリである。
【００３３】
プログラム格納部３３は、プログラムを記憶（格納）する。プログラム格納部３３は、制御部３１がアクセス可能な記憶装置（記憶媒体）であればどのようなものであってもよい。例えば、プログラム格納部３３は、制御部３１を含む画像表示装置３内に設けられる記憶装置であってもよいし、制御部３１を含む画像表示装置３に着脱自在に装着される記憶媒体であってもよい。また、プログラム格納部３３は、制御部３１とネットワークを介して接続される記憶装置（サーバ等）であってもよい。制御部３１（ＣＰＵ）は、ゲームプログラムの一部または全部を適宜のタイミングで記憶部３２に読み出し、読み出されたプログラムを実行するようにしてもよい。
【００３４】
入力部３４は、ユーザによって操作可能な入力装置である。入力部３４はどのような入力装置であってもよい。例えば、入力部３４は、加速度センサ３４１およびジャイロセンサ３４２を有する。加速度センサ３４１は、画像表示装置３の所定軸方向（例えば３軸方向であり、１軸以上でよい）に関する加速度を検出する。ジャイロセンサ３４２は、画像表示装置３の所定軸方向（例えば３軸方向であり、１軸以上でよい）を軸とした回転に関する角速度を検出する。加速度センサ３４１およびジャイロセンサ３４２は、画像表示装置３の姿勢を算出するための情報（姿勢を算出あるいは推定可能な情報）を検出するセンサである。なお、他の実施形態においては、画像表示装置３の姿勢はどのような方法で算出されてもよく、上記センサ以外の他のセンサや画像表示装置３を撮影可能なカメラを用いて画像表示装置３の姿勢が算出されてもよい。さらに、画像表示装置３は、入力部３４として、スライドパッド、アナログスティック、十字キー、および操作ボタン等の操作部を備えてもよい。
【００３５】
表示部３５は、制御部３１の指示にしたがって画像を表示する。例えば、表示部３５は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）やＥＬ（エレクトロルミネッセンス）等を利用した表示装置である。表示部３５は、立体視可能な画像を表示することが可能な表示装置である。表示部３５は、実質的に同一の表示領域を用いて左目用画像と右目用画像とを表示することが可能である。具体的には、表示部３５は、左目用画像と右目用画像とが所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置であり、例えば裸眼立体視可能な表示装置である。一例として、表示部３５は、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにパララックスバリア方式（視差バリア方式）やレンチキュラー方式のものが用いられる。パララックスバリア方式の場合、表示部３５は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像をそれぞれ視認させることにより、ユーザにとって立体感のある立体画像（立体視可能な画像）を表示することができる。なお、表示部３５は、裸眼立体視可能な表示装置でなくてもよく、他の方式で立体視可能に構成されてもかまわない。例えば、偏光フィルタ方式、時分割方式、アナグリフ方式等の方式で、表示部３５が立体視可能に構成してもかまわない。
【００３６】
次に、図２および図３を参照して、画像表示装置３において実行される、パノラマ画像を表示（パノラマ動画を再生）する処理について説明する。なお、図２は、画像表示装置３において表示されるパノラマ画像（パノラマ動画）の一例を示す図である。図３は、画像表示装置３の姿勢に応じて表示範囲を決定する方法の一例を示す図である。
【００３７】
ここで、パノラマ画像とは、表示装置に表示される画像の視野角よりも広い視野角の画像である。つまり、パノラマ画像は、典型的にはその一部領域の画像が表示装置に表示され、表示範囲が変化することによって視線の方向が変化する画像であるとも言える。本実施例においては、上下左右方向に関して全方向（３６０°）の視野角を有するパノラマ画像が用いられる（図３参照）。ただし、パノラマ画像には死角があってもよく、例えば視野角が１８０°程度であってもよい。また、本実施例においては、パノラマ画像は２台のパノラマカメラによって撮像された立体視可能な実画像（実写画像）であるが、その一部または全部が仮想画像（ＣＧ画像）であってもよい。
【００３８】
本実施例においては、表示部３５には、パノラマ動画の再生の進行にしたがって、記憶されているパノラマ動画の各フレームとなる左目用パノラマ画像および右目用パノラマ画像が所定時間毎に読み出されて順次表示され、左目用パノラマ画像および右目用パノラマ画像が表示装置に逐次表示されることによって、立体視可能なパノラマ動画が再生される。具体的には、パノラマ動画を構成する複数の左目用パノラマ画像および右目用パノラマ画像の組にはそれぞれフレーム番号が付されており、当該パノラマ画像の組がフレーム番号順に表示される。一例として、視点（例えば、２台のパノラマカメラ）を時間経過につれて所定空間（例えば、現実世界）内を移動させながら撮像したパノラマ動画を表示する場合、当該パノラマ動画を再生する時間経過に伴って視点が移動するパノラマ動画が再生される。例えば、図２に示すように、道路上から周囲を見たパノラマ画像が表示され、道路を進んでいく（視点が道路に沿って移動する）パノラマ動画が再生される。他の例として、所定空間内を移動することなく撮像（すなわち、定点撮像）したパノラマ動画を表示する場合、当該パノラマ動画を再生する時間経過に伴って視点周辺の様子が変化していくようなパノラマ動画が再生される。
【００３９】
画像表示装置３における表示範囲は、画像表示装置３の姿勢に応じて変更される。例えば図２においては、画像表示装置３は、正面方向に向けた姿勢と当該正面方向に対して右に向けた姿勢となっており、画像表示装置３には、上記進行方向（正面方向）に視線を向けた場合と当該進行方向に対して視線を右に向けた場合の表示範囲のパノラマ画像が表示されている。このように、画像表示装置３は、入力装置（画像表示装置３）に対する入力に基づいて、パノラマ画像のうちで表示装置に表示する表示範囲を決定する。これによれば、ユーザは、画像表示装置３に対する操作（姿勢を変化させる操作）によって視線方向（表示範囲）を自由に変化させてパノラマ動画を見ることができる。なお、他の実施形態においては、表示範囲はユーザの操作に応じて変化するように決定されればどのような方法で決定されてもよい。
【００４０】
本実施例においては、図３に示すように、仮想空間に立体モデルを配置し、その立体モデルの内側における所定位置（本実施形態においては立体モデルの実質的に中心となる位置）に仮想カメラＣを配置する。そして、仮想カメラＣから見た立体モデル（立体モデルの内側面）の画像を生成する際に、パノラマ画像をテクスチャとして立体モデルの内側面に描画することで、パノラマ画像が生成される。具体的には、パノラマ動画を撮像した際の基準方向が立体モデルの基準方向となるように、パノラマ画像がテクスチャとして立体モデルの内側面に貼り付けられる。このとき、パノラマ画像のうち、仮想カメラＣの視野範囲（図３に示す斜線領域Ａ１）が表示範囲となる。なお、本実施例においては、立体モデルの形状を立方体とするが、立体モデルの形状は任意であり、例えば球体や柱状（例えば円柱）の形状であってもよい。
【００４１】
図３において、画像表示装置３に表示すべき画像を生成するための仮想カメラＣは、その姿勢が画像表示装置３の姿勢に応じて制御される。これによって、画像表示装置３の姿勢に応じて表示範囲を変化させることができる。以下、仮想カメラＣの姿勢が画像表示装置３の姿勢に応じて制御される一例を説明する。
【００４２】
まず初期設定として、画像表示装置３の基準姿勢が設定される。例えば、画像表示装置３の基準姿勢は、パノラマ動画再生の開始時または開始前の所定タイミングにおける画像表示装置３の姿勢によって設定される。具体的には、パノラマ動画再生の開始時の画像表示装置３の姿勢を基準姿勢として設定してもよいし、パノラマ動画再生の開始前にユーザが所定の操作をしたときの画像表示装置３の姿勢を基準姿勢として設定してもよいし、予め定める固定的な画像表示装置３の姿勢を基準姿勢として設定してもよいし、予め定める固定的な複数の画像表示装置３の姿勢のうちユーザが選択してもよい。なお、本実施形態では、画像表示装置３の姿勢はジャイロセンサ３４２の出力値に基づいて算出されるので、基準姿勢の設定は、ジャイロセンサ３４２により算出される姿勢値のリセットである。しかしながら、画像表示装置３の基準姿勢の設定は、センサの種類によって適宜の処理を実行してよい。
【００４３】
また、上記初期設定として、仮想カメラＣの初期姿勢が設定される。例えば、仮想カメラＣの初期姿勢は、視線方向（ｚ軸正方向）が仮想空間のＺ軸正方向（立体モデルの基準方向であり、パノラマ動画の撮像における基準方向（正面方向））に一致し、左方向（ｘ軸正方向）が仮想空間のＸ軸正方向に一致し、上方向（ｙ軸正方向）が仮想空間のＹ軸正方向に一致するように配置される。
【００４４】
そして、画像表示装置３の上記基準姿勢に対する姿勢変化（本実施例では、基準姿勢の画像表示装置３の左右方向となるｘｔ軸、画像表示装置３の上下方向となるｙｔ軸周りそれぞれの回転方向および回転量）に応じて、仮想カメラＣの姿勢を、上記初期姿勢から変化（典型的には、初期姿勢の仮想カメラＣのｘ軸、ｙ軸、すなわちＸ軸、Ｙ軸周りそれぞれに同じ回転方向および同じ回転量で変化）させる。なお、他の実施例においては、画像表示装置３の上記基準姿勢に対する姿勢変化を３軸周り（すなわち、上記ｘｔ軸およびｙｔ軸に、画像表示装置３の前後方向となるｚｔ軸周りを加えたもの）それぞれの回転方向および回転量に応じて、仮想カメラＣの姿勢を、上記初期姿勢からＸ軸、Ｙ軸、Ｚ軸周りそれぞれに同じ回転方向および同じ回転量で変化させてもよい。
【００４５】
なお、左目用パノラマ画像および右目用パノラマ画像を表示することによって立体視可能なパノラマ画像を表示部３５に表示する場合、上述した立体モデルおよび仮想カメラが右目用および左目用としてそれぞれ設けられる。そして、左目用の立体モデルには、左目用パノラマ画像をテクスチャとして当該立体モデルの内側面に描画して、上述した位置および姿勢で左目用仮想カメラを配置して動作制御する。また、右目用の立体モデルには、右目用パノラマ画像をテクスチャとして当該立体モデルの内側面に描画して、上述した位置および姿勢で右目用仮想カメラを配置して動作制御する。このように配置された左目用仮想カメラおよび右目用仮想カメラからそれぞれ得られた画像を左目用画像および右目用画像として表示部３５に表示することによって、立体視可能なパノラマ画像（パノラマ動画）が表示可能となる。
【００４６】
次に、図４〜図７を参照して、パノラマ動画を撮像して記録するまでの処理の流れについて説明する。なお、図４は、フレーム毎のパノラマ画像を構成するパノラマ動画を撮像し、当該パノラマ動画をエンコードして記録するまでの処理の流れの一例を示す図である。図５は、立体視可能なパノラマ動画を撮像する際のパノラマカメラの配置例および撮像領域の一例を示す図である。図６および図７は、それぞれ撮像された３つのパノラマ画像から左目用パノラマ画像および右目用パノラマ画像を生成する合成処理の一例を示す図である。
【００４７】
図４に示すように、一例として、現実世界のパノラマ動画を撮像する場合、撮影方向が互いに固定された複数の撮像カメラを有するパノラマカメラが用いられる。例えば、パノラマカメラは、５角柱形状の支持部材の側面および上面からそれぞれ放射する方向を撮像方向としてそれぞれ１台ずつ、計６台固設された撮像カメラを有する。そして、上記側面の１つを前方として移動しながら、現実世界を６台の撮像カメラで撮像する。なお、上記前方となる側面（すなわち、移動しながら撮像する場合に進行方向に向かって設けられる側面）に設けられた撮像カメラを「正面前方カメラ」とし、当該移動の際に左前方を撮像方向として設けられる撮像カメラを「左前方カメラ」、当該移動の際に右前方を撮像方向として設けられる撮像カメラを「右前方カメラ」、当該移動の際に左後方を撮像方向として設けられる撮像カメラを「左後方カメラ」、当該移動の際に右後方を撮像方向として設けられる撮像カメラを「右後方カメラ」、当該移動の際に上方を撮像方向として設けられる撮像カメラを「上方カメラ」とする。そして、上記移動に応じて、時間軸が同じ画像がそれぞれの撮像カメラから得られ、「正面前方カメラ」から得られる画像を「正面前方カメラ画像」、「左前方カメラ」から得られる画像を「左前方カメラ画像」、「右前方カメラ」から得られる画像を「右前方カメラ画像」、「左後方カメラ」から得られる画像を「左後方カメラ画像」、「右後方カメラ」から得られる画像を「右後方カメラ画像」、「上方カメラ」から得られる画像を「上方カメラ画像」とする。
【００４８】
なお、上述したパノラマカメラの構成は一例であり、他の構成によって実現されてもよいことは言うまでもない。また、現実世界を移動することなくパノラマカメラで撮像（すなわち、定点撮像）することによって、現実世界のパノラマ動画を撮像してもかまわない。
【００４９】
それぞれの撮像カメラから得られた画像は、同じ時間軸の画像毎にパノラマ展開されて１つの全方位画像（パノラマ画像）に合成される。図４で用いた全方位画像は、正面前方カメラ画像を中心として、左へ順に左前方カメラ画像および左後方カメラ画像を合成し、右へ順に右前方カメラ画像および右後方カメラ画像を合成して、さらに当該合成された５つのカメラ画像の上方領域に上方カメラ画像を合成し、それぞれのカメラ画像では死角となる方位（典型的には、下方であり図４において斜線で示される領域）の画像については所定の画像（例えば、黒画像）を合成することによって生成されている。なお、複数の撮像カメラから得られた画像を合成して構成される全方位画像（パノラマ画像）については図４で示した構成でなくてもよく、他の構成によって全方位画像を生成してもよい。なお、複数の撮像カメラから得られた画像からパノラマ画像を生成する手法については、既に周知であるためここでは詳細な説明を省略する。
【００５０】
本実施例において立体視可能なパノラマ動画を撮像する場合は、３台以上のパノラマカメラが多角形（好ましくは、正多角形）の各頂点に配置される位置関係となる実空間に配置する。そして、各パノラマカメラにおいてそれぞれ上述した撮像処理が行われ、撮像された画像に対して上述した合成処理が行われることによって、各パノラマカメラからパノラマ画像が得られる。本実施例においては、撮像方向に応じて、当該３台以上のパノラマカメラのうち、当該撮像方向に最も近い一対のパノラマカメラを選択し、当該一対のパノラマカメラにおいて当該撮像方向に向かって左側に配置されたパノラマカメラが当該撮像方向における左目用パノラマカメラとして機能させ、当該撮像方向に向かって右側に配置されたパノラマカメラが当該撮像方向における右目用パノラマカメラとして機能させる。そして、各撮像方向毎に各パノラマカメラが撮像したパノラマ画像を合成することによって、左目用パノラマ画像および右目用パノラマ画像を生成する。以下、説明を具体的にするために、３台のパノラマカメラＡ〜Ｃを用いてパノラマ動画を取得する例を用いる。
【００５１】
図５に示すように、３台のパノラマカメラＡ〜Ｃを用いてパノラマ動画を取得する場合、パノラマカメラＡ〜Ｃが多角形（３台の場合は三角形であり、好ましくは正三角形）の各頂点に配置される位置関係となる実空間にそれぞれ配置され、それぞれパノラマ画像（パノラマ動画）を撮像する。ここで、各パノラマカメラＡ〜Ｃが現実世界を撮像している撮像方向は、複数の領域（パノラマカメラが３つの場合、３つの領域）に分割される。具体的には、上記多角形の内側からそれぞれのパノラマカメラＡ〜Ｃに向かう撮像方向を境界とする複数の領域Ｒ〜Ｔを設定し、各パノラマカメラＡ〜Ｃにおける撮像方向についても、領域Ｒを撮像する撮像方向、領域Ｓを撮像する撮像方向、および領域Ｔを撮像する撮像方向に分割する。ここで、領域Ｒは、パノラマカメラＡを左側としパノラマカメラＢを右側としてパノラマカメラＡおよびＢを結ぶ方向を左右方向とした場合に、パノラマカメラＡおよびＢの前方に角度範囲１２０°（左右それぞれ６０°）の撮像方向（撮像範囲）を示す領域として形成される。領域Ｓは、パノラマカメラＢを左側としパノラマカメラＣを右側としてパノラマカメラＢおよびＣを結ぶ方向を左右方向とした場合に、パノラマカメラＢおよびＣの前方に角度範囲１２０°（左右それぞれ６０°）の撮像方向（撮像範囲）を示す領域として形成される。そして、領域Ｔは、パノラマカメラＣを左側としパノラマカメラＡを右側としてパノラマカメラＣおよびＡを結ぶ方向を左右方向とした場合に、パノラマカメラＣおよびＡの前方に角度範囲１２０°（左右それぞれ６０°）の撮像方向（撮像範囲）を示す領域として形成される。
【００５２】
図６および図７を用いて、領域Ｒ〜Ｔをそれぞれ撮像したパノラマ画像を合成して、左目用パノラマ画像および右目用パノラマ画像を生成する処理について説明する。なお、図６においては、各パノラマ画像を全円周パノラマで示し、各パノラマカメラＡ〜Ｃが撮像した画像を区別するために、パノラマカメラＡが撮像した画像を白抜き領域、パノラマカメラＢが撮像した画像を斜線領域、パノラマカメラＣが撮像した画像を網掛け領域で示している。また、図７においては、各パノラマ画像を横長パノラマで示し、撮像方向を示すために、各パノラマカメラＡ〜Ｃが領域Ｒの中心方向（パノラマカメラＡおよびＢを結ぶ方向を左右方向とした場合に、パノラマカメラＡおよびＢの前方正面となる方向）の角度を０°とし、当該中心方向から見て左方向をマイナスの角度で示し右方向をプラスの角度で示している。この場合、領域Ｒが−６０°〜＋６０°の撮像範囲となり、領域Ｓが＋６０°〜＋１８０°の撮像範囲となり、領域Ｔが−１８０°〜−６０°の撮像範囲となる。
【００５３】
図６および図７に示すように、各パノラマカメラＡ〜Ｃが撮像したパノラマ画像は、領域Ｒを撮像した画像領域、領域Ｓを撮像した画像領域、および領域Ｔを撮像した画像領域にそれぞれ分割される。そして、領域Ｒを示す左目用パノラマ画像の画像領域には、パノラマカメラＡが領域Ｒを撮像した画像領域を合成する。そして、領域Ｒを示す右目用パノラマ画像の画像領域には、パノラマカメラＢが領域Ｒを撮像した画像領域を合成する。ここで、領域Ｒが示す撮像範囲内をパノラマカメラＡおよびＢが撮像している状態を考える。図５に示すように、領域Ｒは、パノラマカメラＡを左側としパノラマカメラＢを右側とした場合に、パノラマカメラＡおよびＢの前方に形成される撮像領域であり、当該領域Ｒを撮像した画像を立体視可能に表示する場合、パノラマカメラＡで撮像された画像を左目用画像としパノラマカメラＢで撮像された画像を右目用画像とするのが、最も立体視に適した状態となる。したがって、領域Ｒを示す左目用パノラマ画像の画像領域にパノラマカメラＡが領域Ｒを撮像した画像領域を採用し、領域Ｒを示す右目用パノラマ画像の画像領域にパノラマカメラＢが領域Ｒを撮像した画像領域を採用することによって、左目用パノラマ画像を左目用画像とし右目用パノラマ画像を右目用パノラマ画像として表示した場合に、最も適した状態で立体視することができる。
【００５４】
また、領域Ｓを示す左目用パノラマ画像の画像領域には、パノラマカメラＢが領域Ｓを撮像した画像領域を合成する。そして、領域Ｓを示す右目用パノラマ画像の画像領域には、パノラマカメラＣが領域Ｓを撮像した画像領域を合成する。同様に、領域Ｓが示す撮像範囲内をパノラマカメラＢおよびＣが撮像している状態を考えた場合も、領域Ｓは、パノラマカメラＢを左側としパノラマカメラＣを右側としてパノラマカメラＢおよびＣの前方に形成される撮像領域である。したがって、領域Ｓを示す左目用パノラマ画像の画像領域にパノラマカメラＢが領域Ｓを撮像した画像領域を採用し、領域Ｓを示す右目用パノラマ画像の画像領域にパノラマカメラＣが領域Ｓを撮像した画像領域を採用することによって、領域Ｓを撮像範囲とするパノラマ画像を最も適した状態で立体視することができる。
【００５５】
さらに、領域Ｔを示す左目用パノラマ画像の画像領域には、パノラマカメラＣが領域Ｔを撮像した画像領域を合成する。そして、領域Ｔを示す右目用パノラマ画像の画像領域には、パノラマカメラＡが領域Ｔを撮像した画像領域を合成する。同様に、領域Ｔが示す撮像範囲内をパノラマカメラＣおよびＡが撮像している状態を考えた場合も、領域Ｔは、パノラマカメラＣを左側としパノラマカメラＡを右側としてパノラマカメラＣおよびＡの前方に形成される撮像領域である。したがって、領域Ｔを示す左目用パノラマ画像の画像領域にパノラマカメラＣが領域Ｔを撮像した画像領域を採用し、領域Ｔを示す右目用パノラマ画像の画像領域にパノラマカメラＡが領域Ｔを撮像した画像領域を採用することによって、領域Ｔを撮像範囲とするパノラマ画像を最も適した状態で立体視することができる。
【００５６】
このように、左目用パノラマ画像および右目用パノラマ画像における各撮像方向に対応する画像を選択する際、パノラマカメラＡ〜Ｃのうち当該撮像方向が前方となる当該撮像方向に最も近い一対のパノラマカメラを選択する。そして、撮像方向に向かって左側に配置されたパノラマカメラが当該撮像方向を撮像したパノラマ画像を左目用パノラマ画像として採用し、当該撮像方向に向かって右側に配置されたパノラマカメラが当該撮像方向を撮像したパノラマ画像を右目用パノラマ画像として採用している。これによって、撮像された全方向のパノラマ画像を、立体視可能に表示することができる。
【００５７】
ここで、複数のパノラマカメラによって現実世界を撮像する場合、他のパノラマカメラによって死角となる撮像範囲（死角領域）が生じる。例えば、図５および図７から明らかなように、パノラマカメラＡで撮像したパノラマ画像においては、領域Ｓの撮像方向にパノラマカメラＢおよびＣが配置されているため、領域ＳではパノラマカメラＢおよびＣによって視界が妨げられる。また、パノラマカメラＢで撮像したパノラマ画像においては、領域Ｔの撮像方向にパノラマカメラＣおよびＡが配置されているため、領域ＴではパノラマカメラＣおよびＡによって視界が妨げられる。さらに、パノラマカメラＣで撮像したパノラマ画像においては、領域Ｒの撮像方向にパノラマカメラＡおよびＢが配置されているため、領域ＲではパノラマカメラＡおよびＢによって視界が妨げられる。しかしながら、上述した合成処理によって左目用パノラマ画像および右目用パノラマ画像を生成する場合、他のパノラマカメラによって視界が妨げられている領域、すなわちパノラマカメラＡで撮像した領域Ｓの画像領域、パノラマカメラＢで撮像した領域Ｔの画像領域、およびパノラマカメラＣで撮像した領域Ｒの画像領域は、何れも用いられていない。したがって、上述した合成処理によって左目用パノラマ画像および右目用パノラマ画像を生成する場合、他のパノラマカメラによって視界が妨げられる画像領域を用いることがないため、他のパノラマカメラによる死角を解消することができる。
【００５８】
なお、上述した具体例においては、３台のパノラマカメラを用いて立体視可能なパノラマ画像を生成する例を用いたが、４台以上のパノラマカメラを用いて立体視可能なパノラマ画像を生成することができることは言うまでもない。例えば、４台以上のパノラマカメラを用いる場合は、設置台数に応じた多角形の頂点に各パノラマカメラを配置して、当該パノラマカメラでそれぞれパノラマ画像を撮像する。上記合成処理においては、上記多角形の内側からそれぞれのパノラマカメラに向かう方向を境界とする複数の領域（撮像範囲）を設定し、当該領域を撮像した画像領域にパノラマ画像それぞれを分割する。そして、上記パノラマカメラのうち当該領域が前方となる当該領域に最も近い一対のパノラマカメラを選択して、領域に向かって左側に配置されたパノラマカメラが当該領域を撮像したパノラマ画像を左目用パノラマ画像として採用し、当該領域に向かって右側に配置されたパノラマカメラが当該領域を撮像したパノラマ画像を右目用パノラマ画像として採用する。また、４台以上のパノラマカメラを用いて立体視可能なパノラマ画像を生成する場合であっても、当該４台以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像毎に、左目用画像に採用する画像と右目用画像に採用する画像とが上記分割されたパノラマ画像から１つずつ選択され、残りの画像は左目用画像および右目用画像の合成処理には用いられないことになる。このような合成処理によって、４台以上のパノラマカメラを用いた場合であっても同様に立体視可能なパノラマ画像を生成することができる。
【００５９】
また、図６および図７に示した各領域に対応する画像領域の一例として、全円周パノラマ画像を直線で分割した扇形や横長パノラマ画像を直線で分割した矩形で示しているが、各領域の形は、扇形や矩形に限られない。各撮像領域に相当する画像領域のサイズや形は、複数の撮像カメラから得られた画像を合成して全方位画像（パノラマ画像）を生成する手法や上記合成処理における処理負荷に依存していることは言うまでもなく、各画像領域が曲線や屈曲線によって分割されてもかまわない。
【００６０】
図４に戻り、上記合成処理が行われた左目用パノラマ画像および右目用パノラマ画像は、所定の方式（例えば、Ｈ．２６４として標準化された動画データの圧縮符号化方式）で時間毎に変換されて全ての左目用パノラマ画像および右目用パノラマ画像がエンコードされて光ディスク等の記憶媒体に記憶される。
【００６１】
なお、パノラマ動画をエンコードして記憶媒体に記憶する際、当該パノラマ動画を構成する複数のパノラマ画像（左目用パノラマ画像および右目用パノラマ画像）がそれぞれエンコードされることになるが、Ｈ．２６４以外の圧縮符号化方式を用いてもよく、当該パノラマ画像がそれぞれエンコードされる方式はどのようなものでもよい。例えば、フレーム毎のパノラマ画像をフレーム間の依存関係がない状態でパノラマ画像毎に圧縮する方式（例えば、モーションＪＰＥＧ）でもよいし、前フレームとのパノラマ画像との差分を圧縮する方式（例えば、ＭＰＥＧ）でもよい。また、フレーム予測符号化方式を用いてパノラマ動画をエンコードする場合、フレーム間予測だけでなくフレーム内予測を用いる符号化方式を用いてもよい。
【００６２】
次に、画像表示装置３において行われる処理の詳細を説明する。まず、図８を参照して、処理において用いられる主なデータについて説明する。なお、図８は、画像表示装置３の記憶部３２に記憶される主なデータおよびプログラムの一例を示す図である。
【００６３】
図８に示すように、記憶部３２のデータ記憶領域には、パノラマ画像ファイルデータＤａ、操作データＤｂ、姿勢データＤｃ、仮想カメラデータＤｄ、および仮想空間画像データＤｅ等が記憶される。なお、記憶部３２には、図８に示すデータの他、実行するアプリケーションで用いるデータ等、処理に必要なデータ等が記憶されてもよい。また、記憶部３２のプログラム記憶領域には、画像表示プログラムを構成する各種プログラム群Ｐａが記憶される。
【００６４】
パノラマ画像ファイルデータＤａは、図４を用いて説明したようにエンコードされたパノラマ画像をデコードしたパノラマ動画それぞれにおける各フレームのパノラマ画像データを示すデータである。パノラマ画像データは、フレーム番号Ｎ（１，２，３…）毎に、上述した立体モデルの内面にテクスチャとして貼り付ける左目用パノラマ画像および右目用パノラマ画像それぞれを示すデータを含んでいる。例えば、パノラマ画像データは、所定の記憶媒体にエンコードされて記憶された立体視可能なパノラマ動画を、所定の方式によってデコードすることによって得られる。
【００６５】
操作データＤｂは、画像表示装置３に対する操作内容を示すデータであり、角速度データＤｂ１等を含んでいる。角速度データＤｂ１は、画像表示装置３に生じる角速度を示すデータであり、ジャイロセンサ３４２から出力される角速度を示すデータである。
【００６６】
姿勢データＤｃは、実空間における画像表示装置３の姿勢を示すデータであり、例えば基準姿勢からの画像表示装置３の回転量を示すデータである。
【００６７】
仮想カメラデータＤｄは、左目用立体モデルおよび右目用立体モデルにおけるそれぞれの中央に配置される左目用仮想カメラおよび右目用仮想カメラに関するデータである。例えば、仮想カメラデータＤｄは、仮想空間における左目用仮想カメラおよび右目用仮想カメラの位置、姿勢、視野（画角）等に関するデータである。
【００６８】
仮想空間画像データＤｅは、上記左目用仮想カメラから左目用立体モデルの内面を見た左目用仮想空間画像、および上記右目用仮想カメラから右目用立体モデルの内面を見た右目用仮想空間画像を示すデータである。
【００６９】
次に、図９および図１０を参照して、画像表示装置３において行われる処理の詳細を説明する。なお、図９は、画像表示装置３において実行される処理の前半の一例を示すフローチャートである。図１０は、画像表示装置３において実行される処理の後半の一例を示すフローチャートである。ここで、図９および図１０に示すフローチャートにおいては、画像表示装置３における処理のうち、立体視可能なパノラマ動画を画像表示装置３に表示する処理について主に説明し、これらの処理と直接関連しない他の処理については詳細な説明を省略する。
【００７０】
制御部３１は、記憶部３２（メモリ）等を初期化し、画像表示装置３内の不揮発メモリまたは光ディスクに記憶される画像表示プログラムを記憶部３２に読み込む。そして、制御部３１によって当該画像表示プログラムの実行が開始される。図９および図１０に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
【００７１】
なお、図９および図１０に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えておよび／または代えて別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理を制御部３１が実行するものとして説明するが、上記フローチャートにおける一部または全部のステップの処理を、上記制御部３１のＣＰＵ以外のプロセッサや専用回路が実行するようにしてもよい。
【００７２】
図９において、制御部３１は、パノラマ画像ファイルを取得する（ステップ８１）。例えば、制御部３１は、画像表示装置３内の不揮発メモリ、画像表示装置３に装着された記憶媒体、またはネットワーク等を介して他の装置から、パノラマ画像ファイルを取得してパノラマ画像ファイルデータＤａに格納する。
【００７３】
次に、制御部３１は、パノラマ動画を貼り付けるための左目用立体モデルおよび右目用立体モデルを、仮想空間にそれぞれ中心が原点に位置するように配置し（ステップ８２）、次のステップに処理を進める。例えば、制御部３１は、左目用立体モデルおよび右目用立体モデルの形状が立方体である場合、仮想空間に設定されたＸＹＺ軸に対して、上記左目用立体モデルおよび右目用立体モデルの正面がＺ軸正方向側でＺ軸と垂直に交わり、背面がＺ軸負方向側でＺ軸と垂直に交わり、左側面がＸ軸正方向側でＸ軸と垂直に交わり、右側面がＸ軸負方向側でＸ軸と垂直に交わり、上面がＹ軸正方向側でＹ軸と垂直に交わり、底面がＹ軸負方向側でＹ軸と垂直に交わるように、上記左目用立体モデルおよび右目用立体モデルをそれぞれ配置する。
【００７４】
次に、制御部３１は、左目用仮想カメラおよび右目用仮想カメラを基準位置に初期姿勢で配置し（ステップ８３）、次のステップに処理を進める。例えば、制御部３１は、左目用仮想カメラおよび右目用仮想カメラの基準位置をそれぞれの左目用立体モデルおよび右目用立体モデルの原点（すなわち、左目用立体モデルおよび右目用立体モデルの中央）とし、左目用仮想カメラおよび右目用仮想カメラのｘｙｚ軸（ｘ軸正方向が仮想カメラの左方向、ｙ軸正方向が仮想カメラの上方向、ｚ軸正方向が仮想カメラの視線方向）が仮想空間のＸＹＺ軸に一致する姿勢を初期姿勢とする。そして、制御部３１は、左目用仮想カメラおよび右目用仮想カメラの基準位置および初期姿勢を用いて、仮想カメラデータＤｄにおける左目用仮想カメラおよび右目用仮想カメラの位置および姿勢に関するデータを更新する。
【００７５】
次に、制御部３１は、画像表示装置３の姿勢調整をユーザに促し（ステップ８４）、姿勢調整が行われるのを待ち（ステップ８５）、当該姿勢調整が行われるまで当該ステップ８４および当該ステップ８５を繰り返す。そして、制御部３１は、姿勢調整が行われた場合、ステップ８６に処理を進める。
【００７６】
ステップ８６において、制御部３１は、現時点の画像表示装置３の姿勢を基準姿勢に設定し、次のステップに処理を進める。例えば、制御部３１は、姿勢データＤｃが示す画像表示装置３の姿勢（基準姿勢からの回転量）を初期化（各軸周りの回転量を０）して、画像表示装置３の基準姿勢を設定する。
【００７７】
なお、上述したように、上記ステップ８４〜ステップ８６の処理においては、ステップ８４の処理が行われた時点または当該時点から所定時間経過後の画像表示装置３の姿勢を基準姿勢として設定してもよいし、ユーザが所定の操作をしたときの画像表示装置３の姿勢を基準姿勢として設定してもよいし、予め定める固定的な画像表示装置３の姿勢を基準姿勢として設定してもよいし、予め定める固定的な複数の画像表示装置３の姿勢のうちユーザが選択してもよい。
【００７８】
次に、制御部３１は、フレーム数ｎを１に設定し（ステップ８７）、次のステップに処理を進める。
【００７９】
次に、制御部３１は、画像表示装置３に表示する表示対象をパノラマ画像ファイルデータＤａから設定し（ステップ８８）、次のステップ９１（図１０参照）に処理を進める。例えば、制御部３１は、予め定められたパノラマ画像を表示対象に設定してもいいし、ユーザによって選択されたパノラマ画像を表示対象として設定してもよい。
【００８０】
図１０において、制御部３１は、表示対象となっているパノラマ動画に関するパノラマ画像ファイルデータＤａのパノラマ画像データのうち、フレームｎに対応する左目用パノラマ画像および右目用パノラマ画像を取得し（ステップ９１）、次のステップに処理を進める。
【００８１】
次に、制御部３１は、上記ステップ９１で取得した左目用パノラマ画像および右目用パノラマ画像をそれぞれ左目用立体モデルおよび右目用立体モデルの内面にマッピングし（ステップ９２）、次のステップに処理を進める。例えば、上述したように、左目用パノラマ画像および右目用パノラマ画像に設定された基準方向が左目用立体モデルおよび右目用立体モデルの基準方向とそれぞれ一致するように、当該立体モデルの各内面に当該パノラマ画像がマッピングされる。
【００８２】
次に、制御部３１は、画像表示装置３のジャイロセンサ３４２の出力値を示すデータを取得し（ステップ９３）、次のステップに処理を進める。なお、画像表示装置３からは、ジャイロセンサ３４２の出力値を示すデータが一定周期で画像表示装置３に送信され、角速度データＤｂ１に格納されている。
【００８３】
次に、制御部３１は、上記ステップ９３において取得したデータを用いて、画像表示装置３の基準姿勢からの回転方向および回転量（ステップ８６で初期化してからの回転方向および回転量）を算出し（ステップ９４）、次のステップに処理を進める。例えば、上記ステップ９４では、基準姿勢における画像表示装置３の所定軸方向（本実施例では、基準姿勢におけるｘｔ軸、ｙｔ軸方向）を軸とした回転方向および回転量がそれぞれ算出されて、姿勢データＤｃが更新される。なお、回転方向は、回転量の正負により表すことができるので、姿勢データＤｃには回転量を示すデータのみ格納してもよい。例えば、制御部３１は、上記ステップ９４では、前回処理におけるステップ９４において算出された回転量に、今回のステップ９４で取得した角速度データに基づく回転量を加えて、新たな回転量として算出する。
【００８４】
次に、制御部３１は、左目用仮想カメラおよび右目用仮想カメラの仮想空間における姿勢を、上記初期姿勢からステップ９４で算出された回転量だけ回転させ（ステップ９５）、次のステップに処理を進める。例えば、制御部３１は、上記初期姿勢から左目用仮想カメラおよび右目用仮想カメラの姿勢を、ステップ９４で算出された画像表示装置３のｘｔ軸方向を軸とした回転量と同じだけ仮想空間のＸ軸方向（初期姿勢における仮想カメラのｘ軸方向）を軸として回転させ、かつ、ステップ９４で算出された画像表示装置３のｙｔ軸方向を軸とした回転量と同じだけ仮想空間のＹ軸方向（初期姿勢における仮想カメラのｙ軸方向）を軸として回転させて、仮想カメラデータＤｄにおける左目用仮想カメラおよび右目用仮想カメラの姿勢に関するデータを更新する。
【００８５】
次に、制御部３１は、左目用仮想カメラおよび右目用仮想カメラからそれぞれ見た左目用立体モデルおよび右目用立体モデルの内面の画像（左目用仮想空間画像および右目用仮想空間画像）を生成し（ステップ９６）、次のステップに処理を進める。例えば、制御部３１は、生成された左目用仮想空間画像および右目用仮想空間画像を示すデータを用いて、仮想空間画像データＤｅを更新する。
【００８６】
次に、制御部３１は、仮想空間画像データＤｅに基づいた左目用仮想空間画像および右目用仮想空間画像を表示部３５に立体視表示し（ステップ９７）、次のステップに処理を進める。
【００８７】
次に、制御部３１は、フレーム数ｎをインクリメントし（ステップ９８）、処理を終了するか否かを判定する（ステップ９９）。処理を終了する条件としては、例えば、再生しているパノラマ動画における最後のフレームの画像の再生が終了したことや、ユーザが処理を終了する操作を行ったこと等がある。制御部３１は、処理を終了しない場合に上記ステップ９１に戻って処理を繰り返し、処理を終了する場合に当該フローチャートによる処理を終了する。以降、ステップ９１〜ステップ９９の一連の処理は、ステップ９９で処理を終了すると判定されるまで繰り返し実行される。
【００８８】
なお、上述した実施例では、パノラマ画像をエンコードして記憶媒体に記憶する前に、３台以上のパノラマカメラが撮像したパノラマ画像を合成する処理を行ったが、画像表示装置３においてデコードした後に当該合成処理を行ってもかまわない。例えば、各パノラマカメラによって撮像されたパノラマ画像を上記パノラマ画像ファイルとして格納しておき、上記ステップ８１において当該パノラマ画像ファイルを取得した後に、各パノラマ画像を合成して左目用パノラマ画像および右目用パノラマ画像を生成する処理を行ってもよい。また、上記ステップ９１においてパノラマ画像を取得する際に、各パノラマカメラによって撮像されたパノラマ画像を取得し、当該パノラマ画像を合成して左目用パノラマ画像および右目用パノラマ画像を生成する処理を行ってもよい。さらに、上記ステップ９６において設定された表示範囲に応じて、表示に必要なパノラマ画像を合成して左目用パノラマ画像および右目用パノラマ画像を生成する処理を行ってもよい。
【００８９】
また、上述した実施例では、画像表示装置３の姿勢に応じて表示部３５に表示されるパノラマ画像の表示範囲が変化する例を用いたが、他の操作に応じて当該表示範囲が変化してもよい。例えば、入力部３４として、スライドパッド、アナログスティック、十字キー、および操作ボタン等を備える場合、これらの操作手段による操作に応じて上記表示範囲が変化してもよい。また、画像表示装置３の姿勢は、ジャイロセンサ３４２が検出している角速度のみから算出されてもいいし、加速度センサ３４１が検出している加速度のみから算出されてもいいし、当該角速度および当該加速度の両方を用いて算出されてもよい。
【００９０】
また、上述した説明では画像表示処理を画像表示装置３で行う例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、画像表示装置３がさらに他の装置（例えば、別のサーバ、他の画像表示装置、他のゲーム装置、他の携帯端末）と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。一例として、画像表示装置３から操作データ（角速度データ）が他の装置へ出力され、当該他の装置において仮想空間画像を生成する処理が行われた後、当該処理によって生成された仮想空間画像が画像表示装置３の表示部３５に表示されることも考えられる。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、典型的には、上述した３台以上のパノラマカメラによって撮像されたパノラマ画像を合成して左目用パノラマ画像および右目用パノラマ画像を生成する処理については、画像表示装置３とは異なる当該画像処理を行う装置が所定のプログラム（画像生成プログラム）を実行することによって行われるが、当該処理の少なくとも一部も他の装置で行ってもかまわない。また、上述した合成処理や画像表示処理は、少なくとも１つの情報処理装置により構成される情報処理システムに含まれる１つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、画像表示装置３の制御部３１が所定のプログラムを実行することによって、上述したフローチャートによる処理が行われたが、画像表示装置３が備える専用回路によって上記処理の一部または全部が行われてもよい。また、上記実施例においては、画像処理を行う装置が所定のプログラムを実行することによって、上述した画像合成処理が行われるが、当該装置が備える専用回路によって当該処理の一部または全部が行われてもよい。
【００９１】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置（据置型のゲーム装置）と携帯型の情報処理装置（携帯型のゲーム装置）との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
【００９２】
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【００９３】
また、上記画像生成プログラムや上記画像表示プログラムは、外部メモリ等の外部記憶媒体を通じて画像処理を行う装置や画像表示装置３に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【００９４】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書（定義を含めて）が優先する。
【産業上の利用可能性】
【００９５】
以上のように、本発明は、立体視可能なパノラマ画像を生成および／または表示すること等を目的として、例えば画像生成方法、画像表示方法、画像生成プログラム、画像生成システム、および画像表示装置等として有用である。
【符号の説明】
【００９６】
３…画像表示装置
３１…制御部
３２…記憶部
３３…プログラム格納部
３４…入力部
３４１…加速度センサ
３４２…ジャイロセンサ
３５…表示部
【図１】
2014095809.tif 000003
【図２】
2014095809.tif 000004
【図３】
2014095809.tif 000005
【図４】
2014095809.tif 000006
【図５】
2014095809.tif 000007
【図６】
2014095809.tif 000008
【図７】
2014095809.tif 000009
【図８】
2014095809.tif 000010
【図９】
2014095809.tif 000011
【図１０】
2014095809.tif 000012
【手続補正書】
【提出日】平成25年4月30日(2013.4.30)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
立体視可能なパノラマ画像を生成する画像生成方法であって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得ステップと、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成ステップとを含む、画像生成方法。
【請求項２】
前記パノラマ画像取得ステップでは、多角形の各頂点となる実空間における位置にそれぞれ配置された前記パノラマカメラによってそれぞれ撮像されたパノラマ画像が取得され、
前記立体視画像生成ステップは、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像を、その撮像方向に応じてそれぞれ分割画像に分割するパノラマ画像分割ステップと、
前記撮像方向毎に前記左目用画像および前記右目用画像としてそれぞれ採用する画像を前記分割画像から選択し、当該選択された分割画像を前記撮像方向に応じて連結することによって前記左目用画像および前記右目用画像を生成するパノラマ画像合成ステップとを含む、請求項１に記載の画像生成方法。
【請求項３】
前記パノラマ画像合成ステップでは、前記３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像毎に、前記左目用画像に採用する分割画像と前記右目用画像に採用する分割画像とを１つずつ選択する、請求項２に記載の画像生成方法。
【請求項４】
前記パノラマ画像合成ステップでは、前記撮像方向毎に前記左目用画像および前記右目用画像として採用する前記パノラマカメラの組を設定し、当該設定に応じて前記分割画像を選択する、請求項２または３に記載の画像生成方法。
【請求項５】
前記パノラマ画像分割ステップでは、前記多角形の内側からそれぞれの前記パノラマカメラに向かう方向を境界とする複数の撮像方向を設定し、当該撮像方向を撮像したパノラマ画像の一部をそれぞれ前記分割画像として分割する、請求項２乃至４の何れか１つに記載の画像生成方法。
【請求項６】
前記パノラマ画像合成ステップでは、前記撮像方向に対する分割画像を選択する際、前記３つ以上のパノラマカメラのうち当該撮像方向に最も近い一対のパノラマカメラを選択し、当該一対のパノラマカメラにおいて当該撮像方向に向かって左側に配置されたパノラマカメラが当該撮像方向を撮像した前記分割画像を当該撮像方向における左目用画像として採用し、当該一対のパノラマカメラにおいて当該撮像方向に向かって右側に配置された前記パノラマカメラが当該撮像方向を撮像した前記分割画像を当該撮像方向における右目用画像として採用する、請求項５に記載の画像生成方法。
【請求項７】
前記パノラマ画像合成ステップでは、前記分割画像のうち、他のパノラマカメラが撮像されている画像を除いて前記左目用画像および前記右目用画像としてそれぞれ採用する画像を選択する、請求項２乃至６の何れか１つに記載の画像生成方法。
【請求項８】
請求項１乃至７の何れか１つに記載の画像生成方法によって生成された前記左目用画像および前記右目用画像を、表示装置に表示させる画像表示ステップを含む、画像表示方法。
【請求項９】
前記表示装置の姿勢に応じて、前記左目用画像および前記右目用画像から当該表示装置に表示する表示範囲を設定する表示範囲設定ステップを、さらに含み、
前記画像表示ステップでは、前記表示範囲設定ステップにおいて設定された表示範囲内の前記左目用画像および前記右目用画像が、前記表示装置に表示される、請求項８に記載の画像表示方法。
【請求項１０】
立体視可能なパノラマ画像を生成する情報処理装置に含まれるコンピュータで実行される画像生成プログラムであって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得ステップと、
前記パノラマ画像取得ステップにおいて取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成ステップとを、前記コンピュータに実行させる、画像生成プログラム。
【請求項１１】
立体視可能なパノラマ画像を生成する画像生成システムであって、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像を取得するパノラマ画像取得手段と、
前記パノラマ画像取得手段において取得されたパノラマ画像の一部をそれぞれ合成することによって左目用画像および右目用画像を生成する立体視画像生成手段とを備える、画像生成システム。
【請求項１２】
立体視可能なパノラマ画像を表示する画像表示装置であって、
左目用画像および右目用画像を表示することによって立体視可能な表示手段と、
実空間に配置された３つ以上のパノラマカメラによってそれぞれ撮像されたパノラマ画像の一部をそれぞれ合成することによって生成された一対のパノラマ画像を前記左目用画像および前記右目用画像として前記表示手段に表示する表示制御手段とを備える、画像表示装置。