(57)【特許請求の範囲】
【請求項１】
視聴者の姿勢情報を取得する第一の取得手段と、
前記視聴者に提示する右目用の表示画像と左目用の表示画像について、それぞれ前記視聴者の眼前に配置されるレンズの光軸と交わる点からの相対的な位置が等しい領域である重複領域を抽出する抽出手段と、
前記第一の取得手段により取得された前記姿勢情報と前記レンズの歪曲情報とに基づく光線の方向と、前記抽出手段により抽出された前記重複領域とに基づいて、右目用の全方位画像と左目用の全方位画像とを含むステレオ全方位画像である参照画像から前記表示画像を生成する生成手段と、を備え、
前記生成手段は、前記重複領域において、前記右目用の表示画像と前記左目用の表示画像とで、前記表示画像の生成処理に係る前記光線の方向の情報を共有することを特徴とする画像処理装置。
【請求項２】
前記生成手段は、
前記第一の取得手段により取得された前記姿勢情報と、前記抽出手段により抽出された前記重複領域とに基づいて、前記表示画像の画素位置と参照画像の画素位置とを対応付ける対応情報を導出する導出手段を備え、
前記導出手段により導出された前記対応情報と、前記抽出手段により抽出された前記重複領域とに基づいて、前記参照画像から前記表示画像を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記導出手段は、
前記重複領域において、前記右目用の表示画像と前記左目用の表示画像とで前記対応情報の導出結果を共有することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記生成手段は、
前記導出手段により導出された前記対応情報に基づいて前記参照画像から画素値をサンプリングし、サンプリングした前記画素値を前記表示画像の対応する画素位置に格納することで、前記表示画像を生成することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記レンズの歪曲情報を取得する第二の取得手段をさらに備え、
前記導出手段は、前記第一の取得手段により取得された前記姿勢情報と、前記抽出手段により抽出された前記重複領域と、前記第二の取得手段により取得された歪曲情報とに基づいて、前記対応情報を導出することを特徴とする請求項２から４のいずれか１項に記載の画像処理装置。
【請求項６】
前記導出手段は、前記表示画像の各画素に表示する光線の方向を示す情報を、前記対応情報として導出することを特徴とする請求項２から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記生成手段によって生成された前記表示画像を、前記視聴者が装着可能な頭部装着型の表示装置に表示させる表示制御手段をさらに備えることを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
視聴者の姿勢情報を取得するステップと、
前記視聴者に提示する右目用の表示画像と左目用の表示画像について、それぞれ前記視聴者の眼前に配置されるレンズの光軸と交わる点からの相対的な位置が等しい領域である重複領域を抽出するステップと、
取得された前記姿勢情報と前記レンズの歪曲情報とに基づく光線の方向と、抽出された前記重複領域とに基づいて、右目用の全方位画像と左目用の全方位画像とを含むステレオ全方位画像である参照画像から前記表示画像を生成するステップと、を含み、
前記表示画像を生成するステップでは、前記重複領域において、前記右目用の表示画像と前記左目用の表示画像とで、前記表示画像の生成処理に係る前記光線の方向の情報を共有することを特徴とする画像処理方法。
【請求項９】
コンピュータを、請求項１から７のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
臨場感の高い映像を視聴者に視聴させるために、ステレオ全方位画像を、ヘッドマウントディスプレイ（ＨＭＤ）等のステレオ画像表示デバイスにリアルタイムで表示する技術が知られている。しかしながら、視聴者が向いている方向に応じて、リアルタイムでステレオ全方位画像を効率的に表示するための技術は未だ確立されていない。
特許文献１には、ステレオではない全方位画像を平面のディスプレイに効率的に表示するための画像生成方法が開示されている。この方法は、球面上の座標で表される全方位画像を予め複数の平面に分割しておき、球面から平面への投影変換を平面から平面への投影変換に近似することで、効率的にディスプレイに表示する平面画像を生成する方法である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２５６２７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＨＭＤに表示する画像を生成する際には、単純な平面から平面への投影変換ではなく、その投影変換に加えて接眼レンズの歪みを考慮した計算も必要であり、上記特許文献１に記載の方法をそのまま適用することはできない。つまり、上記特許文献１に記載の技術では、ステレオ全方位画像からＨＭＤに表示するステレオ表示画像を生成する処理に要する計算コストを削減することはできない。
そこで、本発明は、ステレオ画像表示デバイスに表示する表示画像を効率的に生成することを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る画像処理装置の一態様は、視聴者の姿勢情報を取得する第一の取得手段と、前記視聴者に提示する右目用の表示画像と左目用の表示画像について、それぞれ前記視聴者の眼前に配置されるレンズの光軸と交わる点からの相対的な位置が等しい領域である重複領域を抽出する抽出手段と、前記第一の取得手段により取得された前記姿勢情報と前記レンズの歪曲情報とに基づく光線の方向と、前記抽出手段により抽出された前記重複領域とに基づいて、右目用の全方位画像と左目用の全方位画像とを含むステレオ全方位画像である参照画像から前記表示画像を生成する生成手段と、を備え、前記生成手段は、前記重複領域において、前記右目用の表示画像と前記左目用の表示画像とで、前記表示画像の生成処理に係る前記光線の方向の情報を共有する。
【発明の効果】
【０００６】
本発明によれば、ステレオ画像表示デバイスに表示する表示画像を効率的に生成することができる。
【図面の簡単な説明】
【０００７】
【図１】画像処理装置のハードウェア構成図である。
【図２】画像処理装置の機能ブロック図である。
【図３】画像処理装置の動作を説明するフローチャートである。
【図４】全方位画像の例である。
【図５】表示画像の例である。
【図６】表示画像生成処理を示すフローチャートである。
【図７】表示画像上の座標系を示す図である。
【図８】計算領域を示す図である。
【図９】表示画像上でのレンズの歪曲を示す図である。
【図１０】眼を原点とした座標系での画素位置を示す図である。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して、本発明を実施するための形態について詳細に説明する。なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正または変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
本実施形態では、所定の参照画像を変換してステレオ画像表示デバイスに表示する際に、計算量を削減してステレオ画像表示デバイスに表示する表示画像を効率的に生成する方法について説明する。上記参照画像は、水平方向や垂直方向といった全方位を撮像した全方位画像や、水平方向３６０度を撮像した全周囲画像を用いることができる。本実施形態では、参照画像が、左目用全方位画像と右目用全方位画像とを含むステレオ全方位画像であり、ステレオ画像表示デバイスが、ヘッドマウントディスプレイ（ＨＭＤ）である場合について説明する。
【０００９】
図１は、本実施形態における画像処理装置１００のハードウェア構成図である。画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１３、ＨＤＤ  Ｉ／Ｆ１０４、ＨＤＤ１０５、入力Ｉ／Ｆ１０６、出力Ｉ／Ｆ１０７、姿勢検出Ｉ／Ｆ１０８およびシステムバス１０９を備える。
ＣＰＵ１０１は、画像処理装置１００における動作を統括的に制御するものであり、システムバス１０９を介して、各構成部（１０２〜１０４、１０６〜１０８）を制御する。ＲＡＭ１０２は、ＣＰＵ１０１のワークメモリとして機能する。ＣＰＵ１０１が処理を実行するために必要なプログラムや各種データは、ＲＯＭ１０２やＨＤＤ１０５に格納されている。つまり、ＣＰＵ１０１は、処理の実行に際してＲＯＭ１０２やＨＤＤ１０５に格納されたプログラムを実行することで、各種の機能動作を実現する。
【００１０】
ＨＤＤ  Ｉ／Ｆ１０４は、ＨＤＤ１０５や光ディスクドライブなどの二次記憶装置（不図示）と接続されている。ＨＤＤ  Ｉ／Ｆ１０４は、例えばＳＡＴＡ（Serial ATA）等である。ＣＰＵ１０１は、ＨＤＤ  Ｉ／Ｆ１０４を介して、ＨＤＤ１０５に対してデータを読み書きすることができる。また、ＣＰＵ１０１は、ＨＤＤ１０５に格納されたデータをＲＡＭ１０２に展開したり、ＲＡＭ１０２に展開されたデータをＨＤＤ１０５に保存したりすることができる。そして、ＣＰＵ１０１は、ＲＡＭ１０２に展開したデータをプログラムとみなし、実行することができる。
【００１１】
入力Ｉ／Ｆ１０６は、キーボードやマウス、デジタルカメラ、スキャナなどの入力デバイス２０１と接続されている。入力Ｉ／Ｆ１０６は、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェースにより構成することができる。ＣＰＵ１０１は、入力Ｉ／Ｆ１０６を介して、入力デバイス２０１から各種データを読み込むことが可能である。出力Ｉ／Ｆ１０７は、視聴者が頭部に装着可能な頭部装着型の表示装置などのステレオ画像表示デバイスである出力デバイス２０２と接続されている。出力Ｉ／Ｆ１０７は、例えばＤＶＩ（Digital Visual Interface）やＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）等の映像出力インタフェースにより構成することができる。
【００１２】
本実施形態では、出力デバイス２０２が、ＨＭＤである場合について説明する。ＨＭＤ２０２は、視聴者の眼前に配置された接眼レンズと画像表示面（パネル）とを備える。接眼レンズとパネルとは、視聴者の左右の目にそれぞれ対応して視聴者の眼前に配置されている。ＨＭＤ２０２は、画像処理装置１００から出力された左目用の表示画像と右目用の表示画像とを各パネルに表示することで、各表示画像を視聴者に提示することができる。つまり、ＣＰＵ１０１は、出力Ｉ／Ｆ１０７を介して、ＨＭＤ２０２にデータを送ることで、ＨＭＤ２０２に画像を表示させる表示制御を行うことができる。
【００１３】
姿勢検出Ｉ／Ｆ１０８は、加速度センサや角速度センサ、地磁気センサ、ＧＰＳなどを含む姿勢検出装置２０３と接続されている。姿勢検出Ｉ／Ｆ１０８は、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェースにより構成することができる。姿勢検出装置２０３は、ＨＭＤ２０２の画像表示面などに取り付けられており、ＣＰＵ１０１は、姿勢検出Ｉ／Ｆ１０８を介して姿勢検出装置２０３からＨＭＤ２０２の姿勢情報を読み込むことが可能である。つまり、ＣＰＵ１０１は、姿勢検出装置２０３からＨＭＤ２０２を装着した視聴者の姿勢情報（頭部の向きに関する情報）を取得することができる。なお、ＣＰＵ１０１は、マウスやキーボードなどの入力デバイス２０１を介して姿勢情報を入力することもできる。
【００１４】
図２は、画像処理装置１００の機能ブロック図である。画像処理装置１００は、パラメータ取得部１１１、姿勢情報取得部１１２、画像データ取得部１１３、画像処理部１１４および画像データ出力部１１５を備える。画像処理部１１４は、計算領域算出部１１６と、画素値取得部１１７とを備える。画素値取得部１１７は、光線方向算出部１１８と、画素値格納部１１９とを備える。
この図２に示す情報処理装置１００の各部の機能は、図１のＣＰＵ１０１がプログラムを実行することにより実現され得る。なお、図２に示す情報処理装置１００の各部のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１０１の制御に基づいて動作する。
【００１５】
パラメータ取得部１１１は、入力デバイス２０１から、ステレオ全方位画像をＨＭＤ２０２に表示するために必要なパラメータである表示パラメータを取得する。なお、パラメータ取得部１１１は、ＲＡＭ１０２やＨＤＤ１０５に一旦保存された表示パラメータを取得してもよい。ここで、表示パラメータは、ＨＭＤ２０２を構成する接眼レンズの焦点距離、歪曲パラメータ、パネル上における接眼レンズの中心位置、パネル解像度、パネルサイズなどを含む。
姿勢情報取得部１１２は、姿勢検出装置２０３または入力デバイス２０１から姿勢情報を取得する。なお、姿勢情報取得部１１２は、ＲＡＭ１０２やＨＤＤ１０５に一旦保存された姿勢情報を取得してもよい。画像データ取得部１１３は、ＨＤＤ１０５や入力デバイス２０１からステレオ全方位画像を取得する。画像処理部１１４は、表示パラメータと姿勢情報とステレオ全方位画像とに基づいて、ＨＭＤ２０２に表示するための表示画像を生成する。画像データ出力部１１５は、画像処理部１１４において生成された表示画像をＨＭＤ２０２に出力する。
【００１６】
画像処理部１１４は、ＨＭＤ２０２に表示する左目用表示画像と右目用表示画像とを生成する。本実施形態では、画像処理部１１４は、左目用表示画像と右目用表示画像とについて、表示画像の生成処理において同じ計算を行う領域を抽出する。そして、画像処理部１１４は、抽出した領域において、左目用表示画像と右目用表示画像とで計算結果（表示画像の生成処理に係る情報）を共有することで上記計算を１回に抑え、全体の計算量を削減する。
画像処理部１１４の計算領域算出部１１６は、表示画像生成処理に際して計算の必要がある領域（計算領域）を算出し、画素値取得部１１７は、計算領域の各画素位置に対応する画素値を所定の参照画像からサンプリングする。画素値取得部１１７の光線方向算出部１１８は、表示画像の画素位置と所定の参照画像の画素位置とを対応付ける対応情報として、計算領域の各画素位置に表示すべき光線の方向を示す情報を算出する。
【００１７】
上記参照画像はステレオ全方位画像ある。ステレオ全方位画像は、全ての方向の光線の色を保存した画像データであるため、画素値格納部１１９は、算出された光線の方向に基づいて、計算領域の各画素位置に対応する画素値をステレオ全方位画像からサンプリングすることができる。画素値格納部１１９は、サンプリングした画素値を表示画像の対応する画素位置に格納する。
図３は、画像処理装置１００の動作を説明するフローチャートである。画像処理装置１００は、ＣＰＵ１０１が必要なプログラムを読み出して実行することにより、図３に示す各処理を実現することができる。以降、アルファベットＳはフローチャートにおけるステップを意味するものとする。
【００１８】
まずＳ１において、パラメータ取得部１１１は表示パラメータを取得し、Ｓ２に移行する。Ｓ２では、姿勢情報取得部１１２は姿勢情報を取得し、Ｓ３に移行する。ここで、姿勢情報は、ＨＭＤ２０２の向きを表すデータであり、本実施形態では３×３の回転行列Ｍとする。なお、姿勢情報は、クォータニオンやロール、ピッチ、ヨー表現を用いて表してもよい。
Ｓ３では、画像データ取得部１１３は、次に表示するステレオ全方位画像を取得する。ステレオ全方位画像の例を図４に示す。本実施形態では、全方位画像のうち、左目に表示する画像を左目用全方位画像ＩL、右目に表示する画像を右目用全方位画像ＩRとする。ここで、全方位画像は、上述したように全ての方向の光線の色を保存した画像データである。全方位画像の横軸は方位角であり、その範囲は［０，２π］である。また、全方位画像の縦軸は仰角であり、その範囲は［−π／２，π／２］である。
【００１９】
Ｓ４では、画像処理部１１４は、Ｓ１において取得された表示パラメータと、Ｓ２において取得された姿勢情報と、Ｓ３において取得された全方位画像ＩLおよびＩRとに基づいて、出力デバイス１０９に表示するための表示画像を生成する。表示画像の例を図５に示す。本実施形態では、表示画像のうち、左目に提示するための画像を左目用表示画像ＪL、右目に提示するための画像を右目用表示画像ＪRとする。各表示画像は、接眼レンズを通してみたときに歪みなく見えるように、接眼レンズの歪みに応じて補正された画像である。このＳ４において実行される表示画像生成処理の詳細については後述する。
Ｓ５では、画像データ出力部１１５は、Ｓ４において生成された表示画像ＪLおよびＪRをＨＭＤ２０２に出力することで、ステレオ全方位画像から生成された表示画像ＪLおよびＪRを、ＨＭＤ２０２に表示させる表示制御を行う。Ｓ６では、パラメータ取得部１１１は、画像処理を終了するか否かを判定し、処理を継続すると判定した場合にはＳ１に戻り、処理を終了すると判定した場合には図３の処理を終了する。
【００２０】
以下、画像処理部１１４が実行する表示画像生成処理について、詳細に説明する。
画像処理部１１４は、視聴者の頭部の向いている方向に応じてステレオ全方位画像から画素値をサンプリングすることで、ＨＭＤ２０２に表示する画像を生成する。画素値をステレオ全方位画像からサンプリングするために、画像処理部１１４は、視聴者の姿勢情報（ＨＭＤ２０２の姿勢情報）を基に、ＨＭＤ２０２のパネル上の各画素位置にどの方向の光線を表示するかを計算する。この光線の方向は、水平方向の角度を表す方位角θと、垂直方向の角度を表す仰角φとによって表すことができる。そして、この光線の方向（θ，φ）は、接眼レンズの光軸と表示画像との交点からの相対的な位置によって決まる。
【００２１】
図７に示すように、左目用表示画像ＪL上の接眼レンズの光軸との交点をＯL、右目用表示画像ＪR上の接眼レンズの光軸との交点をＯRとし、これらの点を原点とした各座標系での画素位置を、左右それぞれ（ｘL，ｙL）、（ｘR，ｙR）とする。ここで、左目用表示画像ＪLの左上の座標を（ｘL0，ｙ0）、右下の座標を（ｘL1，ｙ1）とする。同様に、右目用表示画像ＪRの左上の座標を（ｘR0，ｙ0）、右下の座標を（ｘR1，ｙ1）とする。レンズ中心からの相対的な位置が同じである画素は、入射する光線の方向も同じであるため、（ｘL，ｙL）と（ｘR，ｙR）とが同じ座標値である場合、その画素位置に表示すべき光線の方向（θ，φ）も同じになる。
そこで、本実施形態では、画像処理部１１４は、同じ座標値となる画素位置（ｘL，ｙL）と（ｘR，ｙR）とについて、表示すべき光線の方向をそれぞれ導出するのではなく、光線の方向の導出結果を共有する。つまり、画像処理部１１４は、左右の表示画像上で接眼レンズの光軸と交わる点からの相対的な位置が等しい領域については、入射する光線の方向が１回の計算で求められることを利用して、全体の計算コストを削減する。
【００２２】
図６は、図３のＳ４において実行される表示画像生成処理を示すフローチャートである。この表示画像生成処理では、画像処理部１１４は、上述した計算領域内の全ての画素位置について、ステレオ全方位画像から画素値のサンプリングを行う。画像処理部１１４は、サンプリングした画素値を、画素位置に応じて左目用表示画像と右目用表示画像の両方またはいずれか一方の対応する画素位置に格納する。画像処理部１１４は、このようにして表示画像を生成する。以下に示す処理では、画像処理部１１４は、レンズ中心を原点とした座標系における画素の位置を（ｘ，ｙ）として、光線の方向（θ，φ）を計算し、その方向から表示画像の画素値を求める。
【００２３】
先ずＳ４０１において、計算領域算出部１１６は、表示画像生成の際に計算の必要がある領域である計算領域Ｒを算出する。図８（ａ）に示すように、左目用表示画像ＪLには、右目用表示画像ＪR内の画素と同じ座標値を有する画素が配置された領域ＲOと、右目用表示画像ＪR内の画素とは異なる座標値を有する画素が配置された領域ＲLとが存在する。同様に、図８（ｂ）に示すように、右目用表示画像ＪRには、左目用表示画像ＪL内の画素と同じ座標値を有する画素が配置された領域ＲOと、左目用表示画像ＪL内の画素とは異なる座標値を有する画素が配置された領域ＲRとが存在する。
【００２４】
計算領域Ｒは、図８（ｃ）に示すように、領域ＲOと、領域ＲLと、領域ＲRとを含む。領域ＲOは、画像上で接眼レンズの光軸と交わる点からの相対的な位置が等しい領域であり、左右で同じ計算が可能な領域（計算の省略が可能な領域）である。以下、領域ＲOを重複領域という。また、領域ＲLは、左目用表示画像ＪLのみのために計算が必要となる領域であり、領域ＲRは、右目用表示画像ＪRのみのために計算が必要となる領域である。
左右で同じ計算が可能な重複領域ＲOは、左目用表示画像ＪLと右目用表示画像ＪRとに共に存在する領域であり、左上（ｘR0，ｙ0）、右下（ｘL1，ｙ1）とする四角形の領域である。左目用表示画像ＪLのみでしか計算を行わない領域ＲLは、左目用表示画像ＪL上の重複領域ＲO以外の領域であり、左上（ｘL0，ｙ0）、右下（ｘR0，ｙ1）とする四角形の領域である。右目用表示画像ＪRのみでしか計算を行わない領域ＲRは、右目用表示画像ＪR上の重複領域ＲO以外の領域であり、左上（ｘL1，ｙ0）、右下（ｘR1，ｙ1）とする四角形の領域である。
計算領域Ｒは、これら３つの領域ＲO、ＲL、ＲRを合わせた領域であり、左上（ｘL0，ｙ0）、右下（ｘR1，ｙ1）とする四角形の領域である。計算領域算出部１１６は、表示パラメータに基づいて、この計算領域Ｒを、光線の方向を計算する領域として算出する。
【００２５】
次にステップＳ４０２では、光線方向算出部１１８は、計算領域Ｒ内の着目画素の位置（ｘ，ｙ）が視聴可能範囲内であるか否かを判定する。具体的には、光線方向算出部１１８は、レンズ中心からの距離ｒに基づいて、画素位置（ｘ，ｙ）が視聴可能範囲内であるか否かを判定する。画素位置（ｘ，ｙ）はレンズ中心を原点としているため、レンズ中心からの距離ｒは（ｘ2＋ｙ2）1/2である。ＨＭＤ２０２の画像表示面上での視聴可能範囲が半径Ｒの円である場合、ｒ≦Ｒであれば、画素位置（ｘ，ｙ）は視聴可能範囲内である。
そのため、ｒ＞Ｒである場合には、光線方向算出部１１８は、画素位置（ｘ，ｙ）が視聴可能範囲外であり、描画を行う必要はないと判断してＳ４０３に移行し、画素位置（ｘ，ｙ）に対応する表示画像の画素値の値を黒に設定してＳ４１２に移行する。一方、ｒ≦Ｒである場合には、光線方向算出部１１８は、画素位置（ｘ，ｙ）が視聴範囲内であるため、描画処理を進めると判断してＳ４０４に移行する。
【００２６】
Ｓ４０４では、光線方向算出部１１８は、接眼レンズの歪曲情報として、画素位置（ｘ，ｙ）におけるレンズによる歪曲率を取得する。図９に画像座標上での歪曲の例を示す。歪曲率は、レンズ中心からの距離ｒとレンズの光学特性とによって決まる。本実施形態では、光線方向算出部１１８は、使用レンズに応じて予め用意されたレンズ中心からの距離ｒに対する歪曲率のルックアップテーブルを用いて歪曲率を取得する。
なお、接眼レンズの特性によって、波長ごとに歪曲率が異なる場合には、パネルにおけるＲ、Ｇ、Ｂの波長ごとにルックアップテーブルを用意する。そして、Ｒ、Ｇ、Ｂ毎の歪曲率を取得した以後のステップでは、Ｒ、Ｇ、Ｂの色ごとに異なる歪曲率を用いて処理を行う。
【００２７】
Ｓ４０５では、光線方向算出部１１８は、画素位置（ｘ，ｙ）がレンズの歪曲によって実際に見える画素位置（ｘd，ｙd）を算出する。画素位置（ｘd，ｙd）は、画素位置（ｘ，ｙ）の座標値にそれぞれ歪曲率ｄを積算することで計算できる。
ｘd＝ｘ×ｄ，
ｙd＝ｙ×ｄ  ………（１）
Ｓ４０６では、光線方向算出部１１８は、歪曲後の画素位置（ｘd，ｙd）を眼の位置を原点とする座標系の３次元位置（Ｘ，Ｙ，Ｚ）に変換する。図１０に画像座標上の点と３次元座標上の点との関係の例を示す。姿勢情報を３×３の回転行列Ｍ、画素単位で表現した焦点距離をｆとすると、（Ｘ，Ｙ，Ｚ）は以下の式で計算できる。
［Ｘ  Ｙ  Ｚ］t＝Ｍ×［ｘd  ｙd  ｆ］t  ………（２）
【００２８】
Ｓ４０７では、光線方向算出部１１８は、画素の３次元位置（Ｘ，Ｙ，Ｚ）をもとに、光線の方向を表す方位角θおよび仰角φを算出する。原点から３次元位置（Ｘ，Ｙ，Ｚ）までの距離をＬ＝（Ｘ2＋Ｙ2＋Ｚ2）1/2とすると、方位角θ、仰角φは以下の式で計算できる。
φ＝ａｒｃｓｉｎ（Ｙ／Ｌ），
θ＝ａｒｃｓｉｎ（Ｚ／Ｌ／ｃｏｓφ）  ………（３）
つまり、光線の方向（θ，φ）は、レンズの歪曲情報と視聴者の姿勢情報とに基づいて導出することができる。
【００２９】
Ｓ４０８では、画素値格納部１１９は、着目画素が表示画像の左目領域に描画する画素であるか否かを判定する。具体的には、画素値格納部１１９は、着目画素が領域ＲLまたは領域ＲOに含まれる場合には、左目領域に描画する画素であると判断してＳ４０９に移行し、着目画素が領域ＲRに含まれる場合にはＳ４１０に移行する。
Ｓ４０９では、画素値格納部１１９は、Ｓ４０７において算出された光線の方向（θ，φ）に対応する画素の画素値を、左目用全方位画像ＩLから取得し、左目用表示画像ＪLに格納する。画素値を格納する位置は、左目用表示画像ＪLにおける原点ＯLから（ｘ，ｙ）だけ移動した位置である。なお、全方位画像から画素値をサンプリングする際は、最近傍の画素値を取得してもよいし、バイリニア補間やバイキュービック補間など周辺の画素値を使って補間してサンプリングを行ってもよい。
【００３０】
Ｓ４１０では、画素値格納部１１９は、着目画素が表示画像の右目領域に描画する画素であるか否かを判定する。具体的には、画素値格納部１１９は、着目画素が領域ＲRまたは領域ＲOに含まれる場合には、右目領域に描画する画素であると判断してＳ４１１に移行し、着目画素が領域ＲLに含まれる場合にはＳ４１２に移行する。Ｓ４１１では、画素値格納部１１９は、Ｓ４０７において算出された光線の方向（θ，φ）に対応する画素の画素値を、右目用全方位画像ＩRから取得し、右目用表示画像ＪRに格納する。画素値を格納する位置は、右目用表示画像ＪRにおける原点ＯRから（ｘ，ｙ）だけ移動した位置である。なお、サンプリングはＳ４０９と同様に行う。
このように、画素値格納部１１９は、重複領域ＲOについては、Ｓ４０７において算出された光線の方向（θ，φ）に基づいて、左右両方の全方位画像から画素値のサンプリングを行い、左右両方の表示画像に値を格納する。一方、領域ＲLについては、画素値のサンプリングを左目用の全方位画像から行い、左目用の表示画像に値を格納する。また、領域ＲRについては、画素値のサンプリングを右目用の全方位画像から行い、右目用の表示画像に値を格納する。
【００３１】
次にＳ４１２では、光線方向算出部１１８は、計算領域Ｒ内の全画素について処理が完了しているか否かを判定する。そして、光線方向算出部１１８は、全画素の処理が完了していないと判定するとＳ４０２に戻り、全画素の処理が完了していると判定すると図６の表示画像生成処理を終了する。
以上のように、画像処理装置１００は、視聴者に提示する右目用の表示画像と左目用の表示画像について、それぞれ視聴者の眼前に配置されるレンズの光軸と交わる点からの相対的な位置が等しい領域である重複領域を抽出する。また、画像処理装置１００は、視聴者の姿勢情報と上記重複領域とに基づいて、所定の参照画像から表示画像を生成する。その際、画像処理装置１００は、重複領域において、右目用の表示画像と左目用の表示画像とで、表示画像の生成処理に係る情報を共有する。ここで、参照画像は、右目用の全方位画像と左目用の全方位画像とを含むステレオ全方位画像である。
このように、画像処理装置１００は、右目用表示画像および左目用表示画像を生成する際に同じ計算を行う領域を算出し、その領域の計算結果を共有することができる。そのため、ステレオ全方位画像から視聴者の姿勢に応じたステレオ表示画像を生成する処理に必要な計算量を削減することができる。
【００３２】
具体的には、画像処理装置１００は、表示画像の生成に際し、視聴者の姿勢情報と重複領域の情報とに基づいて、表示画像の画素位置と参照画像の画素位置とを対応付ける対応情報を導出する。そして、画像処理装置１００は、導出された対応情報と、重複領域の情報とに基づいて、参照画像から表示画像を生成する。したがって、画像処理装置１００は、対応情報に基づいて適切に表示画像を生成することができる。また、このとき画像処理装置１００は、重複領域において、右目用の表示画像と左目用の表示画像とで対応情報の導出結果を共有する。これにより、表示画像の画素位置に対応する参照画像の画素位置の計算コストを削減することができる。
【００３３】
さらに、画像処理装置１００は、対応情報として、表示画像の各画素に表示すべき光線の方向を示す情報を導出し、その対応情報を重複領域において共有する。このように、画像処理装置１００は、左右の表示画像においてレンズの光軸と交わる点からの相対的な位置が同じである画素には同じ光線の色を表示すべきであることを利用し、重複領域の各画素に表示すべき光線の方向を１回の計算で求める。つまり、画像処理装置１００は、重複領域内の画素位置に対応する参照画像の画素位置の計算を左目と右目とで２回計算するのではなく、１回の計算に抑える。したがって、表示画像上でレンズの光軸と交わる点が表示画像の中央に位置する場合、つまりレンズ中心から見て内側の画素数と外側の画素数とが同じである場合、計算量を１／２にすることができる。
【００３４】
また、画像処理装置１００は、表示画像の生成に際し、対応情報に基づいて参照画像から画素値をサンプリングし、サンプリングした画素値を表示画像の対応する画素位置に格納する。このように、画像処理装置１００は、左目用の表示画像と右目用の表示画像の各画素について、それぞれ対応する全方位画像の画素位置を計算し、その画素位置の色を全方位画像から参照して並べることで左右の表示画像を生成する。このとき、画像処理装置１００は、重複領域において、左右の表示画像で対応情報を共有するので、重複領域については１つの対応情報から左右両方の表示画像の画素値のサンプリングを行うことができ、効率的に左右の表示画像を生成することができる。
【００３５】
さらに、画像処理装置１００は、接眼レンズの歪曲情報を取得し、視聴者の姿勢情報と、重複領域の情報と、歪曲情報とに基づいて、対応情報を導出する。このように、画像処理装置１００は、接眼レンズの歪曲情報も考慮して、ＨＭＤに表示する表示画像を生成する。そのため、本実施形態のように左右の画像で計算結果を共有できる領域を算出し、計算結果を共有する処理を行わないと、計算量が大きくなって、視聴者の姿勢に応じてリアルタイムでＨＭＤにステレオ全方位画像を表示することが困難となる。
これに対して、本実施形態では、視聴者が向いている方向に応じて、ステレオ全方位画像からＨＭＤに表示する表示画像を効率的に生成することができる。したがって、リアルタイムでＨＭＤにステレオ全方位画像を表示することができ、視聴者は臨場感の高い映像を視聴することができる。
【００３６】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００３７】
１００…画像処理装置、１１１…パラメータ取得部、１１２…姿勢情報取得部、１１３…画像データ取得部、１１４…画像処理部、１１５…画像データ出力部、１１６…計算領域算出部、１１７…画素値取得部、１１８…光線方向算出部、１１９…画素値格納部
【図１】
0006708444.tif 000002
【図２】
0006708444.tif 000003
【図３】
0006708444.tif 000004
【図４】
0006708444.tif 000005
【図５】
0006708444.tif 000006
【図６】
0006708444.tif 000007
【図７】
0006708444.tif 000008
【図８】
0006708444.tif 000009
【図９】
0006708444.tif 000010
【図１０】
0006708444.tif 000011