(57)【要約】【課題】複数の仮想視点画像に対応する複数の仮想視点の指定に係るユーザの利便性を向上させる。【解決手段】本発明は、表示装置に表示される複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する情報処理装置（１００）である。情報処理装置は、複数の仮想視点画像のうち、１の仮想視点画像に対応する仮想視点を指定するための操作情報を取得する単一視点操作情報取得部（２０２）と、操作情報に基づいて、複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する複数視点制御部（２０３）を備える。【選択図】図２
2020173529.tif 000002
【特許請求の範囲】
【請求項１】
表示装置に表示される複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する情報処理装置であって、
前記複数の仮想視点画像のうち、１の仮想視点画像に対応する仮想視点を指定するための操作情報を取得する操作情報取得手段と、
前記操作情報に基づいて、前記複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する視点制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記複数の仮想視点画像における仮想視点情報を取得する視点情報取得手段をさらに備え、
前記視点制御手段は、前記操作情報及び前記複数の仮想視点画像における仮想視点情報に基づいて前記複数の仮想視点画像における仮想視点情報を新たに導出することで、前記複数の仮想視点画像における仮想視点を制御することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記視点制御手段は、前記１の仮想視点画像において操作された仮想視点を基準視点として設定し、当該基準視点と他の仮想視点画像における仮想視点とで同一の３次元点を基準に、前記複数の仮想視点画像における仮想視点情報を導出することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記視点制御手段は、前記１の仮想視点画像の画像中心を始点として３次元空間に光線を飛ばし、シーン内のオブジェクトに前記光線が衝突した点を、前記３次元点として設定することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記視点制御手段は、前記他の仮想視点画像における仮想視点の注視点を前記３次元点に一致させた上で、前記複数の仮想視点画像における仮想視点情報を導出することを特徴とする請求項３又は４に記載の情報処理装置。
【請求項６】
前記視点制御手段は、同一オブジェクトで、前記１の仮想視点画像における仮想視点の操作前後のオブジェクトのサイズ比と、他の仮想視点画像における仮想視点の操作前後のオブジェクトのサイズ比とが略同一となるように、前記複数の仮想視点画像における仮想視点情報を補正して新たに導出することを特徴とする請求項２から５のいずれか１項に記載の情報処理装置。
【請求項７】
前記視点制御手段は、シーン内のオブジェクトの位置情報を含むトラッキング情報を取得するトラッキング情報取得手段を有することを特徴とする請求項２に記載の情報処理装置。
【請求項８】
前記視点制御手段は、前記１の仮想視点画像の画像中心の近傍にあるオブジェクトの位置情報と他の仮想視点画像の画像中心の近傍にあるオブジェクトの位置情報に基づいて、各々の仮想視点情報を導出することを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記オブジェクトの位置情報は、当該オブジェクトの重心位置に関する情報、又は当該オブジェクトの端部の位置に関する情報を含むことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記仮想視点情報は、少なくとも前記仮想視点の位置及び姿勢を示す外部パラメータに関する情報、及び前記仮想視点の光学的な特性を示す内部パラメータに関する情報を含むことを特徴とする請求項２から９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記複数の仮想視点画像を表示させるとともに、前記１の仮想視点画像における仮想視点の操作を他の仮想視点画像における仮想視点と連動させるか否かを視聴者に選択させるための選択手段を表示させる表示制御手段を備えることを特徴とする、請求項１から１０のいずれか１項に記載の情報処理装置。
【請求項１２】
表示装置に表示される複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する情報処理方法であって、
前記複数の仮想視点画像のうち、１の仮想視点画像に対応する仮想視点を指定するための操作情報を取得する操作情報取得ステップと、
前記操作情報に基づいて、前記複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する視点制御ステップと、
を含む情報処理方法。
【請求項１３】
コンピュータを請求項１から１１のいずれか一項に記載の情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想視点画像を生成するための技術に関する。
【背景技術】
【０００２】
近年、複数のカメラを異なる位置に配置して複数視点で同期撮像し、その撮像により取得された複数視点画像を用いて、カメラの配置位置における画像だけでなく任意の視点に応じた仮想視点画像を生成して表示する技術が知られている。
【０００３】
このような技術に関して、特許文献１には、視聴者のシーン理解度を向上させるために、複数の仮想視点画像を生成し、その生成した複数の仮想視点画像を同時に表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２４２６０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示された技術では、予め定められた仮想視点情報（即ち、仮想視点の位置及び姿勢等）に基づいて複数の仮想視点画像を生成するため、インタラクティブ性の低い仮想視点画像を表示することになる。そこで、特許文献１に開示された技術において、インタラクティブ性を高めるために、仮に、視聴者により仮想視点情報を指定することができるようにした場合、視聴者が複数の仮想視点画像のそれぞれについて仮想視点情報を指定することは煩雑かつ困難である。
【０００６】
本発明は、前記従来の課題に鑑みてなされたものであって、その目的は、複数の仮想視点画像に対応する複数の仮想視点の指定に係るユーザの利便性を向上させることである。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、表示装置に表示される複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する情報処理装置であって、前記複数の仮想視点画像のうち、１の仮想視点画像に対応する仮想視点を指定するための操作情報を取得する操作情報取得手段と、前記操作情報に基づいて、前記複数の仮想視点画像にそれぞれ対応する複数の仮想視点を制御する視点制御手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、複数の仮想視点画像に対応する複数の仮想視点の指定に係るユーザの利便性を向上させる。
【図面の簡単な説明】
【０００９】
【図１】表示制御装置のハードウェア構成を示す図である。
【図２】表示制御装置の機能構成を示す図である。
【図３】表示制御装置により実行される処理の手順を示すフローチャートである。
【図４】シーンデータを示す図である。
【図５】表示制御装置の使用例を示す図である。
【図６】複数視点制御部の機能構成を示す図である。
【図７】他の仮想カメラの仮想視点情報を生成する処理の手順を示すフローチャートである。
【図８】複数視点制御部の機能構成を示す図である。
【図９】他の仮想カメラの仮想視点情報を生成する処理の手順を示すフローチャートである。
【図１０】複数視点制御部の機能構成を示す図である。
【図１１】他の仮想カメラの仮想視点情報を生成する処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。その他、補足として、同一の構成については、同じ符号を付して説明する。
【００１１】
＜実施形態１＞
本実施形態では、同一シーンにおいて複数の仮想視点画像を同時に表示し、表示されている仮想視点画像のうちの１つの仮想視点画像における仮想カメラを操作することにより、他の仮想視点画像における仮想カメラを操作する例について説明する。
【００１２】
なお、本実施形態において生成される仮想視点画像は、動画（映像）であっても、静止画であってもよく、ここでは、仮想視点画像として、仮想視点映像を例に説明するものとする。この点、以下の各実施形態においても同様とする。
【００１３】
また、仮想視点映像とは、異なる方向から撮像領域となるフィールドを撮像する複数のカメラ（撮像装置）により取得される複数の撮像画像に基づいて生成される画像により構成され、仮想カメラの位置及び姿勢等に従って生成される映像のことである。仮想カメラとは、撮像領域の周囲に実際に設置された複数の撮像装置とは異なる仮想的なカメラであって、仮想視点画像の生成に係る仮想視点を便宜的に説明するための概念である。即ち、仮想視点画像は、撮像領域に関連付けられる仮想空間内に設定された仮想視点から撮像した画像であると見做すことができる。そして、仮想的な当該撮像における視点の位置及び向きは仮想カメラの位置及び向きとして表すことができる。言い換えれば、仮想視点画像は、空間内に設定された仮想視点の位置にカメラが存在するものと仮定した場合に、そのカメラにより得られる撮像画像を模擬した画像であると言える。但し、本実施形態の構成を実現するために仮想カメラの概念を用いることは必須ではない。加えて、本実施形態において、仮想視点映像は、各画像フレームが所定の動画圧縮方式により圧縮された映像データであってもよいし、各画像フレームが所定の静止画圧縮方式により圧縮された映像データであってもよいし、非圧縮の映像データであってもよい。
【００１４】
先ず、図１を用いて、本実施形態に係る表示制御装置１００のハードウェア構成について説明する。表示制御装置１００は、図１に示されるように、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、ＨＤＤインタフェース１０４、入力インタフェース１０６、出力インタフェース１０８、ネットワークインタフェース１１０を備える。
【００１５】
ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、少なくともＲＯＭ１０３又はハードディスクドライブ（ＨＤＤ）１０５のいずれか一方に格納されたプログラムを実行することで、システムバス１１２を介して、後述の各構成を制御する。また、これにより、後述の様々な処理が実行される。
【００１６】
ＨＤＤインタフェース（Ｉ／Ｆ）１０４は、表示制御装置１００と、ＨＤＤ１０５や光ディスクドライブ等の二次記憶装置とを接続する、例えば、シリアルＡＴＡ（ＳＡＴＡ）等のインタフェースである。ＣＰＵ１０１は、ＨＤＤＩ／Ｆ１０４を介して、ＨＤＤ１０５からデータを読み出し、さらに、そのＨＤＤ１０５に格納されたデータをＲＡＭ１０２に展開する。また、ＣＰＵ１０１は、ＨＤＤＩ／Ｆ１０４を介して、プログラムを実行することにより取得され、ＲＡＭ１０２に格納された各種データをＨＤＤ１０５に保存する。
【００１７】
入力インタフェース（Ｉ／Ｆ）１０６は、表示制御装置１００と、キーボードやマウス、デジタルカメラ、スキャナ等の入力デバイス１０７とを接続する。入力Ｉ／Ｆ１０６は、例えば、ＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェースである。ＣＰＵ１０１は、入力Ｉ／Ｆ１０６を介して、入力デバイス１０７から各種データを読み込むことができる。
【００１８】
出力インタフェース（Ｉ／Ｆ）１０８は、表示制御装置１００と、例えば、ディスプレイ等の出力デバイス１０９とを接続する。出力Ｉ／Ｆ１０８は、例えば、ＤＶＩ（Digital Visual Interface）やＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）等の映像出力インタフェースである。ＣＰＵ１０１は、出力Ｉ／Ｆ１０８を介して、出力デバイス１０９に仮想視点映像に関するデータを送信することで、仮想視点映像を表示させることができる。
【００１９】
ネットワークインタフェース（Ｉ／Ｆ）１１０は、表示制御装置１００と外部サーバ１１１とを接続する。ネットワークＩ／Ｆ１１０は、例えば、ＬＡＮカード等のネットワークカードである。ＣＰＵ１０１は、ネットワークＩ／Ｆ１１０を介して、外部サーバ１１１から各種データを読み込むことができる。
【００２０】
なお、図１では、ＨＤＤ１０５、入力デバイス１０７、及び出力デバイス１０９が、表示制御装置１００とは別のデバイスとして構成される例を示したが、必ずしもこれに限定されない。したがって、例えば、表示制御装置１００がスマートフォン等であってもよく、この場合、入力デバイス１０７はタッチパネルとして、出力デバイス１０９は表示スクリーンとして、表示制御装置１００と一体に構成される。また、ＨＤＤ１０５内蔵のデバイスを表示制御装置１００として用いることもできる。
【００２１】
加えて、図１に示される構成の全てが、必須の構成とは限らない。例えば、ＨＤＤ１０５に記憶されている仮想視点映像を再生する場合、外部サーバ１１１は不要となる。また、逆に、外部サーバ１１１から取得した仮想視点映像を生成する場合、ＨＤＤ１０５は不要となる。その他、表示制御装置１００は、複数のＣＰＵ１０１を備えていてもよい。また、ＣＰＵ１０１とは異なる専用の１又は複数のハードウェアやＧＰＵ（Graphics Processing Unit）を備え、ＣＰＵ１０１による処理の少なくとも一部を専用のハードウェアやＧＰＵが実行するようにしてもよい。なお、専用のハードウェアとして、例えば、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ（Field-Programmable Gate Array）、及びＤＳＰ（Digital Signal Processor）等がある。
【００２２】
次に、図２及び図３を用いて、表示制御装置１００により実行される処理について説明する。具体的には、視聴者が容易に複数の仮想カメラの位置及び姿勢を指定できるように、視聴者が指定した基準とする仮想視点映像における仮想カメラの位置及び姿勢に基づいて、他の仮想視点映像における仮想カメラの位置及び姿勢を決定する処理について説明する。なお、以下において、基準とする仮想視点映像における仮想カメラを、単に、基準とする仮想カメラと称し、他の仮想視点映像における仮想カメラを、単に、他の仮想カメラと称する。
【００２３】
図２は、表示制御装置１００の機能構成を示す図である。表示制御装置１００は、単一視点操作情報取得部２０２、複数視点制御部２０３、撮像データ取得部２０４、シーンデータ生成部２０５、描画部２０６を備える。なお、これらの構成要素すべてを単一の表示制御装置１００が有することは必須ではない。例えば、単一視点操作情報取得部２０２及び複数視点制御部２０３を有する情報処理装置と、撮像データ取得部、シーンデータ生成部２０５、及び描画部２０６を有する表示制御装置とが、別の装置として互いに接続されていてもよい。また、表示制御装置１００には、図２に示されるように、図１の入力デバイス１０７に対応する操作部２０１、及び図１の出力デバイス１０９に対応する表示部２０７が各々、接続される。なお、ＣＰＵ１０１は、少なくともＲＯＭ１０３又はＨＤＤ１０５のいずれか一方に格納されたプログラムを読み出してＲＡＭ１０２をワークエリアとして実行することで、図２に示される表示制御装置１００内部の各機能ブロックの役割を果たす。また、ＣＰＵ１０１が表示制御装置１００内部の全ての機能ブロックの役割を果たす必要はなく、各機能ブロックに対応する専用の処理回路を設けるようにしてもよい。
【００２４】
図３は、表示制御装置１００により実行される処理の手順を示すフローチャートである。なお、図３に示される各処理は、ＣＰＵ１０１が少なくともＲＯＭ１０３又はＨＤＤ１０５のいずれか一方に格納されたプログラムを読み出してＲＡＭ１０２をワークエリアとして実行することで実現される。また、フローチャートの説明における記号「Ｓ」は、ステップを表すものとする。この点、以下のフローチャートの説明においても同様とする。
【００２５】
Ｓ３０１において、撮像データ取得部２０４は、仮想視点映像を生成するフレームに対応する撮像データと、その撮像データを撮像したカメラのカメラパラメータを、ＨＤＤ１０５又は外部サーバ１１１から取得し、シーンデータ生成部２０５に出力する。なお、ここで取得するカメラパラメータとは、撮像したカメラの外部パラメータと内部パラメータのことである。
【００２６】
Ｓ３０２において、シーンデータ生成部２０５は、取得した撮像データとカメラパラメータに基づいて、仮想視点映像のレンダリングに必要なシーンデータを生成する。ここで、シーンデータとは、本実施形態において、３Ｄポリゴンデータ、テクスチャデータ、及びＵＶマップであり、また、ＵＶマップは３Ｄポリゴンデータとテクスチャデータを対応付けるものである。
【００２７】
以下、図４を用いて、シーンデータについて説明を補足する。図４は、シーンデータを示す図である。図４（Ａ）及び図４（Ｂ）は、３Ｄポリゴンデータを示す図である。図４（Ａ）は３次元空間における三角形Ｔ０〜Ｔ１１及びこれらを構成する頂点Ｖ０〜Ｖ１１を示しており、また、図４（Ｂ）は頂点Ｖ０〜Ｖ１１の３次元座標を示している。図４（Ｃ）及び（Ｄ）は、テクスチャデータを示した図である。図４（Ｃ）はテクスチャ画像上で三角形の頂点に対応する位置Ｐ０〜Ｐ１３を示しており、また、図４（Ｄ）はテクスチャ頂点Ｐ０〜Ｐ１３の２次元座標を示している。図４（Ｅ）は、ＵＶマップを示した図であり、各三角形に対して、それらの三角形を構成する３次元空間上の頂点ＩＤとテクスチャ画像空間上のテクスチャ頂点ＩＤの対応表である。図４（Ｅ）のＵＶマップに示されるように、図４（Ａ）の３Ｄポリゴンを構成する三角形の頂点と図４（Ｃ）のテクスチャ画像上の三角形の頂点との対応を与えることにより、形状にテクスチャを付与することができる。
【００２８】
シーンデータ生成部２０５は、シーン内のオブジェクト毎に、これらのシーンデータを生成する。先ず、シーンデータ生成部２０５は、３Ｄポリゴンデータを生成する。シーンデータ生成部２０５は、３Ｄポリゴンデータを生成するために、本実施形態では、Ｖｉｓｕａｌ  Ｈｕｌｌアルゴリズムを適用してボクセル情報を取得し、３Ｄポリゴンを再構成する。
【００２９】
但し、３Ｄポリゴンの再構成方法は、必ずしもこれに限られず、例えば、ボクセル情報を直接、ポリゴンモデルに変換する等してもよい。その他、赤外線センサを用いて取得されるデプスマップから取得される点群にＰＳＲ（Poisson Surface Reconstruction）を適用してもよい。なお、点群を取得する方法として、例えば、ＰＭＶＳ（Patch-based Multi-view Stereo）に代表される画像特徴を利用したステレオマッチングによって点群を取得する方法等を用いることができる。
【００３０】
次に、シーンデータ生成部２０５は、テクスチャデータを生成する。シーンデータ生成部２０５は、３Ｄポリゴンを構成する各三角形の頂点Ｖ０〜Ｖ１１をカメラパラメータに基づいて撮像カメラに投影することにより対応するＵＶ座標を算出し、画像上に投影された３点に囲まれた領域をテクスチャ画像として登録する。なお、この場合、全てのカメラで取得した領域の平均をテクスチャ画像として登録してもよいし、特定のカメラを選択し、その選択したカメラの領域をテクスチャ画像として登録してもよい。
【００３１】
そして、シーンデータ生成部２０５は、テクスチャデータを生成すると同時に、そのテクスチャデータに対応するＵＶマップを生成する。シーンデータ生成部２０５は、生成したシーンデータを描画部２０６に出力する。
【００３２】
Ｓ３０３において、単一視点操作情報取得部２０２は、操作部２０１から仮想カメラの位置及び姿勢等に関する視点操作情報を取得し、複数視点制御部２０３に出力する。なお、視点操作情報は、視聴者による視点操作に基づいて生成される。また、単一視点操作情報取得部２０２で取得される視点操作情報は、基準とする仮想カメラの視点操作情報であるものとする。
【００３３】
以下、視点操作情報に関して、視聴者が、仮想視点映像を表示したタッチパネルを用いて、仮想視点の位置及び姿勢を操作する場合を例に用いて説明を補足する。視点操作情報は、タッチパネルにタッチされた点の数ｎ、タッチされた点の２次元スクリーン座標ｘi（ｉ＝１〜ｎ）、タッチされた点の代表点の２次元スクリーン座標ｘ’、 代表点の前フレームからの移動量を示す２次元ベクトルｄ＝（ｄx,ｄy）を示す。ただし、視点操作情報の内容はこれに限定されず、例えばｘ’及びｄを示す情報が視点操作情報に含まれなくてもよい。
【００３４】
なお、２次元スクリーン座標の座標系は、後述の図５において、原点を２次元スクリーンの左上に設定し、左右方向をｘ軸（２次元スクリーンの右方向を正）、上下方向をｙ軸（２次元スクリーンの下方向を正）とする座標系である。また、代表点は、タッチされた点の２次元スクリーン座標ｘiの重心とする。但し、代表点として、タッチされた点の２次元スクリーン座標ｘiの重心に限られず、２次元スクリーン座標ｘiの平均位置、２次元スクリーン座標ｘiの中からランダムに選択された１点、また、最も長い時間タッチされた点を選択してもよい。
【００３５】
加えて、タッチパネルにタッチされた点の数（即ち、指の本数）に合わせて、視点操作方法を切り替えてもよい。例えば、タッチされた点の数が０点の場合、視聴者による操作がなかったものと見做す。タッチされた点の数が１点の場合、画面中心に映る物体を回転中心とした仮想視点の回転動作による操作と見做す。タッチされた点の数が２点の場合、仮想カメラの視点を前後に移動し、オブジェクトを拡縮して表示するためのピンチイン操作、又はピンチアウト操作と見做す。その他、視聴者による視点操作は、タッチパネルを用いて操作することに限られず、例えば、マウスを用いて操作してもよい。
【００３６】
Ｓ３０４において、複数視点制御部２０３は、単一視点操作情報取得部２０２により取得した基準とする仮想カメラの視点操作情報に基づいて、各仮想カメラの視点を制御する。具体的には、基準とする仮想カメラの視点操作情報に基づいて、各仮想カメラの位置及び姿勢等を示す仮想視点情報を生成する。
【００３７】
なお、ここで生成する仮想視点情報とは、仮想カメラの外部パラメータと内部パラメータのことである。仮想カメラの外部パラメータは、仮想カメラの位置及び姿勢を示すパラメータであり、また、仮想カメラの内部パラメータは、仮想カメラの光学的な特性を示すパラメータである。以下、仮想カメラの外部パラメータと内部パラメータについて説明を補足する。
【００３８】
仮想カメラの外部パラメータは、仮想カメラの位置を示すベクトルをｔ、回転を表す行列をＲとすると、下式のように示される。なお、ここでは、座標系を左手座標系として、仮想カメラの視点において水平方向をｘ軸（右方向を正）、垂直方向をｙ軸（上方向を正）、前後方向をｚ軸（前方向を正）とする。
【００３９】
【数１】
2020173529.tif 000003
【００４０】
また、仮想カメラの内部パラメータＫは、画像の主点位置を（ｃx，ｃy）、カメラの焦点距離をｆとすると、下式のように示される。
【００４１】
【数２】
2020173529.tif 000004
【００４２】
なお、カメラパラメータの表現方法は、必ずしもこれに限定されず、行列以外の表現方法であってもよい。したがって、例えば、仮想カメラの位置を３次元座標で示し、仮想カメラの姿勢をｙａｗ、ｒｏｌｌ、及びｐｉｔｃｈの値の羅列によって示すようにしてもよい。また、外部パラメータと内部パラメータは、上述のものに限られるわけではない。したがって、例えば、仮想カメラのズーム値を示す情報を仮想カメラの内部パラメータとして取得するようにしてもよい。
【００４３】
Ｓ３０５において、描画部２０６は、シーンデータ生成部２０５により生成されたシーンデータと複数視点制御部２０３により取得された複数の仮想視点情報とに基づいて、仮想視点映像を生成し、その生成した複数の仮想視点映像を表示部２０７に出力する。即ち、描画部２０６は、仮想視点映像（画像）を生成する画像生成手段の一例である。なお、仮想視点映像の生成に関して、既知の技術（生成方法）を用いることとし、ここでは、その説明を省略する。Ｓ３０６において、表示部２０７は、描画部２０６から取得した複数の仮想視点映像を表示する。以上、表示制御装置１００により実行される処理の手順について説明したが、図３のフローチャートにおいて、例えば、視聴者による仮想視点画像の閲覧終了に関する指示があった場合等に、図３に示される処理を終了する。
【００４４】
（仮想視点制御方法）
ここでは、他の仮想カメラの視点の制御方法について説明する。他の仮想カメラの視点の制御方法を説明する上で、先ず、ユーザにおける表示制御装置１００の使用例について、図５を用いて説明する。なお、図５では、タッチパネルと表示スクリーンが表示制御装置１００と一体に構成される例を示している。
【００４５】
図５において、表示スクリーン上に仮想視点映像５０１と仮想視点映像５０２が表示されており、視聴者は、タッチパネルを指で操作することによって、仮想カメラの位置及び姿勢を指定する。また、表示スクリーンには、チェックボックス５０３が表示されている。このチェックボックス５０３は、「視点操作連動（即ち、視点操作を他の仮想カメラの視点と連動させるか否か）」を選択するためのチェックボックスである。このチェックボックス５０３にチェックが入れられている場合、視聴者がいずれか一方の仮想カメラについての視点操作を行うと、もう一方の仮想カメラの視点も連動して操作される。
【００４６】
図５（ａ）には、表示スクリーンの初期状態が示されている。図５（ａ）において、チェックボックス５０３にチェックが入れられていないため、視点操作は連動しない状態であり、視聴者は、仮想視点映像５０１と仮想視点映像５０２に関して、各々独立して視点操作を行うことができる。また、仮想視点映像５０１と仮想視点映像５０２に関して、いずれも仮想カメラが初期設定（デフォルト設定）された状態にあるので、同一の仮想視点映像が表示されている。この状態において、視聴者が、指５０４で仮想視点映像５０１の視点操作を、指５０５で仮想視点映像５０２の視点操作を行うと、各々、視点操作を行った結果は、図５（ｂ）のように示される。
【００４７】
図５（ｂ）において、仮想視点映像５０１は、シュートしている選手を中心に９人の選手を画角内に収めた広い範囲の仮想視点映像であり、また、仮想視点映像５０２は、全身が収まっている選手がシュートしている選手のみの狭い範囲の仮想視点映像である。そして、視聴者が、仮想視点映像５０１と仮想視点映像５０２の各々に関して視点操作を終えて、次に、指５０６でチェックボックス５０３にチェックを入れると、図５（ｃ）のように示される。
【００４８】
図５（ｃ）には、チェックボックス５０３にチェックが入れられた状態が示されている。この状態において、視聴者が、さらに、仮想視点映像５０１に対してのみ視点操作を行う。具体的には、視聴者が、シュートしている選手の背後を捉えている視点からシュートしている選手の右側を捉えている視点に変更するように、指５０７で帯５０８に沿うように仮想視点（仮想カメラ）を移動させる。チェックボックス５０３にチェックが入れられた状態で、このような視点操作を仮想視点映像５０１に行うと、仮想視点映像５０１の仮想カメラの視点の変更に連動して、仮想視点映像５０２の仮想カメラの視点も変更され、図５（ｄ）のように示される。
【００４９】
図５（ｄ）には、表示スクリーンにおいて、シュートしている選手を右側から捉えるように、仮想カメラの視点が変更された仮想視点映像５０１及び仮想視点映像５０２が表示されている状態が示されている。即ち、図５では、仮想視点映像５０１の仮想カメラの視点と仮想視点映像５０２の仮想カメラの視点のいずれもが、シュートしている選手を右側から捉えるように変更されている。
【００５０】
このように、１つの視点（即ち、仮想視点映像５０１における仮想カメラの視点）に対して操作することで、他の視点（即ち、仮想視点映像５０２における仮想カメラの視点）も制御することができる。また、本実施形態では、チェックボックスにおいて「視点操作連動」を選択させたが、視点操作の連動又は不連動を明示的に切り替えることができれば、どのような形態であってもよい。例えば、１つの視点に対する視点操作を他の視点のうち、所定の視点を対象に連動させることを前提に、図５に示されるようなチェックボックスではなく、視点操作を連動させる視点（仮想視点映像）をユーザに選択させる形態であってもよい。
【００５１】
図５では、携帯可能なタブレット端末に仮想視点画像を含む画面が表示され、タブレット端末へのタッチ操作に応じて仮想視点の制御がされる例を示した。但し、仮想視点を制御するシステムの構成はこれに限定されない。例えば、タブレット端末の代わりに、タッチパネルを備えた据え置き型の大画面ディスプレイが用いられてもよい。また、タッチパネルに対するタッチ操作に限らず、PCに接続されたマウスを用いたポインティング操作やリモコンのボタンを押す操作等に応じて仮想視点が制御されてもよい。また、複数の仮想視点画像がそれぞれ異なる表示装置に表示され、単一のユーザ操作に応じてそれら複数の仮想視点画像に対応する仮想視点が変更されてもよい。
【００５２】
次に、他の仮想カメラの視点の制御方法（他の仮想カメラの仮想視点情報の生成方法）について、図６及び図７を用いて説明する。図６は複数視点制御部２０３の機能構成を示すブロック図であり、また、図７は上述の図３のＳ３０４における処理の手順を示すフローチャートである。
【００５３】
Ｓ７０１において、仮想視点情報取得部６０１は、表示されている複数の仮想視点映像の仮想視点情報（即ち、外部パラメータ及び内部パラメータ）を取得する。なお、ここで取得する仮想視点情報は、上述の図５に示される例で、図５（ｂ）の仮想視点映像５０１の状態を示す外部パラメータ及び内部パラメータと、仮想視点映像５０２の状態を示す外部パラメータ及び内部パラメータである。仮想視点情報取得部６０１は、取得した複数の仮想視点情報を複数視点情報算出部６０３に出力する。
【００５４】
Ｓ７０２において、基準視点操作情報取得部６０２は、表示されている複数の仮想視点映像のうちのいずれか１つの基準とする仮想カメラの視点（以下において、基準視点と称する）の操作情報を取得する。本実施形態では、視聴者が実際に指で操作した視点を基準視点として、その基準視点に関する仮想視点映像に対して行われた視点操作を、他の仮想視点映像に展開（反映）させる。なお、ここで取得する操作情報は、上述の図５に示される例で、図５（ｃ）の仮想視点映像５０１において視聴者の指５０７による操作（即ち、帯５０８）に関する情報である。ここで、視点操作情報とは、タッチパネルがタッチされた点の数n、タッチされた点の２次元スクリーン座標ｘi（ｉ＝１〜ｎ）、代表点の２次元スクリーン座標ｘ’、代表点の前フレームからの移動量を示す２次元ベクトルｄ＝（ｄx,ｄy）である。基準視点操作情報取得部６０２は、取得した基準視点の視点操作情報を複数視点情報算出部６０３に出力する。
【００５５】
Ｓ７０３において、複数視点情報算出部６０３は、取得した基準視点の視点操作情報に基づいて、基準視点の仮想視点情報と他の仮想カメラの仮想視点情報を新たに算出（導出）し、更新する。
【００５６】
最初に、基準視点の仮想視点情報を算出する方法について説明する。なお、ここでは、図５で説明した使用例のように、基準視点を回転させる場合を例に説明する。基準視点を回転させる場合、タッチパネルにタッチされる点の数は１（ｎ＝１）である。
【００５７】
先ず、複数視点情報算出部６０３は、仮想視点操作における回転基点Ｃの３次元座標を求める。本実施形態では、基準視点の仮想視点情報に基づいて、基準視点の画像中心を始点として３次元空間に光線を飛ばし（レイキャストし）、シーン内のオブジェクトに衝突した点を回転基点Ｃとして、その３次元座標を求める。なお、回転基点の３次元座標の求め方は、これに限られず、例えば、指がタッチされている点を３次元空間にレイキャストし、シーン内のオブジェクトと衝突する点を回転基点として、その３次元座標を求めてもよい。或いは、シーン内のある特定の３次元点を、常に回転基点として設定してもよい。
【００５８】
次に、基準視点の回転量θを算出する。本実施形態では、タッチ点のブレの影響を受けず、基準視点をスムーズに回転させるようにするため、回転方向を水平方向のみとし、水平方向の回転量θ[ｄｅｇｒｅｅ]を、代表点の移動量ｄXにスケール係数ｓを乗算することで、下式のように算出する。
【００５９】
【数３】
2020173529.tif 000005
【００６０】
なお、スケール係数ｓは、タッチパネルのスクリーンの解像度を幅ｗ画素とし、スクリーンの端から端までスライドさせたときの回転量を３６０度とすると、下式のように示される。
【００６１】
【数４】
2020173529.tif 000006
【００６２】
また、補足として、ここでは、回転方向を水平方向のみとして説明したが、垂直方向のみに固定してもよいし、タッチが開始されてから数フレームの代表点の動きに応じて、回転方向をいずれかに決定してもよい。したがって、例えば、数フレームの移動量を加算し、ｘ方向とｙ方向の移動量を比較し、ｘ方向の移動量が大きければ水平方向を回転方向として設定し、ｙ方向の移動量が大きければ垂直方向を回転方向として設定してもよい。その他、スケール係数ｓに関して、上述の計算方法に限られず、例えば、ユーザが、操作の敏感度パラメータとして、直接、数値を設定してもよい。
【００６３】
次に、算出した回転基点Ｃと回転量θに基づいて、視点操作後の基準視点の位置姿勢（基準視点の新たな位置姿勢）を算出する。視点操作後の基準視点の位置ｔi、姿勢Ｐiは、仮想視点情報取得部６０１により取得された視点操作前の基準視点の位置ｔi-1、姿勢Ｐi-1を、回転基点Ｃを中心に水平方向にθだけ回転させると、下式のように示される。
【００６４】
【数５】
2020173529.tif 000007
【００６５】
なお、R（θ、Φ）は、水平方向にθ、垂直方向にΦだけ回転させる回転行列である。また、視点操作後の基準視点の位置姿勢を算出する式は、これに限られない。また、視点の変化は回転に限らず、視点の向きを変えずに位置を変化させる平行移動などであってもよい。即ち、仮想カメラを移動させるためのユーザ操作が行われた場合に、複数の仮想視点画像に対応する複数の仮想カメラを連動して平行移動させてもよい。同様に、ユーザ操作に応じて、複数の仮想カメラについて位置を変更せずに向きを連動して変化させてもよい。
【００６６】
以上のように、操作視点後の基準視点の位置姿勢を算出した。即ち、上述の図５の使用例では、図５（ｃ）の仮想視点映像５０１において、指５０７により操作した後の仮想視点映像５０１（図５（ｄ））の仮想視点情報を算出した。
【００６７】
続いて、複数視点情報算出部６０３は、基準視点における視点操作を他の仮想視点映像に展開する。即ち、基準とする仮想カメラの視点操作情報を用いて、他の仮想カメラの仮想視点情報を算出する。
【００６８】
上述の図５の使用例で説明したように、本実施形態では、視聴者が基準視点を操作した後に、他の仮想カメラの視点を操作すること（連動させること）を想定している。そのため、視聴者による基準視点の操作時において、基準視点の注視点と他の仮想カメラの注視点が正確には一致していない可能性がある。
【００６９】
そこで、基準視点の視点操作を他の仮想カメラの視点に展開する前に、他の仮想カメラの注視点を基準視点の注視点と一致させる必要がある。複数視点情報算出部６０３は、注視点を一致させるために、他の仮想カメラの視点の姿勢を変更する。
【００７０】
基準視点の注視点と他の仮想カメラの注視点が一致するように、他の仮想カメラの視点操作前の姿勢Ｐ’i-1を変更した姿勢ｔｍｐＰ’i-1は、下式のように示される。なお、ここでは、注視点を一致させるための姿勢の変更により視点位置は移動（変更）されないことから、ｔ’i-1は、視点操作前の他の仮想カメラの位置である。
【００７１】
【数６】
2020173529.tif 000008
【００７２】
上式より、注視点を上述の回転基点とし、視点操作前のカメラの上下方向を維持した姿勢ｔｍｐＰ’i-1を算出することができる。さらに、ここで算出した姿勢ｔｍｐＰ’i-1と位置ｔ’i-1を、回転基点Ｃ’を中心に水平方向にθ’だけ回転させた視点操作後の他の仮想視点映像における仮想視点の姿勢Ｐ’i、位置ｔ’iは、下式のように示される。
【００７３】
【数７】
2020173529.tif 000009
【００７４】
上式において、回転基点Ｃ’と回転量θ’は、各仮想カメラで算出せずに、基準視点で算出した値を用いる。これにより、視点操作前の画像中心にあるオブジェクトが基準視点と他の仮想視点画像における仮想カメラの視点で異なっていても、視点操作後においては、基準視点と他の仮想視点画像における仮想カメラの視点で、画像中心に同一のオブジェクトを配置できる。複数視点情報算出部６０３は、算出した複数の仮想視点情報を描画部２０６に出力する。
【００７５】
以上、説明したように、本実施形態に係る表示制御装置によれば、視聴者は複数の仮想視点映像における仮想カメラの位置及び姿勢を容易に指定することができる。具体的には、視聴者は、複数、表示された仮想視点映像において、基準視点の視点操作に応じて、他の仮想カメラの視点操作を連動させることができる。
【００７６】
なお、基準視点の視点操作に応じて、他の仮想カメラの視点操作を連動させる方法は、上述に限られない。したがって、例えば、他の仮想カメラの注視点の修正後に、基準とする仮想視点映像の表示位置と他の仮想視点映像の表示位置の差をオフセットとして考慮した上で、基準視点の視点操作に応じて、他の仮想カメラの視点操作を連動（制御）させてもよい。
【００７７】
＜実施形態２＞
上述の実施形態１では、同一シーンにおいて複数の仮想視点映像を同時に表示し、そのうちの１つの仮想視点映像に対する視点操作により他の仮想カメラの視点を操作する（連動させる）例を説明した。これにより、視聴者は複数の仮想視点映像における仮想視点の位置及び姿勢を容易に指定することができ、視聴者のシーン全体の理解度を向上させることを実現している。但し、上述の実施形態１では、同一のオブジェクトに関して、基準視点における視点操作前後のサイズ比と他の仮想カメラの視点における視点操作前後のサイズ比は変化してしまう。
【００７８】
そこで、本実施形態では、基準視点と他の仮想カメラの視点において、同一オブジェクトのサイズ比が視点操作前後で略同一となるように、視点情報算出後に基準視点以外の他の視点の仮想視点情報を補正する。以下、図８及び図９を用いて、本実施形態に係る表示制御装置において実行される処理について、主に実施形態１との差異に着目して説明する。
【００７９】
図８は複数視点制御部２０３の機能構成を示す図であり、図９はＳ３０４における処理の手順を示すフローチャートである。図９において、Ｓ９０１からＳ９０３までの処理は、実施形態１と同様である。Ｓ９０３の処理が実行されると、視点操作前の全仮想視点の仮想視点情報、視点操作後の基準視点の仮想視点情報、及び基準視点での視点操作に基づいて算出した視点操作後の他の仮想カメラの仮想視点情報が、複数視点情報補正部８０４に出力される。
【００８０】
Ｓ９０４において、複数視点情報補正部８０４は、視点操作前後における複数の仮想視点情報を取得し、その取得した視点操作前後における複数の仮想視点情報に基づいて、基準視点以外の他の仮想カメラの仮想視点情報を補正する。
【００８１】
具体的には、同一オブジェクトのサイズ比を維持する上で、下式を充足するスケールＳを算出し、その算出したスケールＳを他の仮想カメラの仮想視点情報（内部パラメータ）に含まれる焦点距離に乗算する。なお、ここでは、同一オブジェクトとして回転基点Ｃに位置するオブジェクトに関して、基準視点における視点操作前後のサイズ比と他の仮想カメラの視点における視点操作前後のサイズ比を維持する例を説明する。
【００８２】
下式において、左辺は基準視点における視点操作前後のオブジェクトのサイズ比を示しており、右辺は他の仮想カメラの視点における視点操作前後のオブジェクトのサイズ比を示している。また、下式において、ｆi-1は視点操作前の基準視点の焦点距離、ｆiは視点操作後の基準視点の焦点距離、ｆ’i-1は視点操作前の他の仮想カメラの焦点距離、ｆ’iは視点操作後の他の仮想カメラの焦点距離である。
【００８３】
【数８】
2020173529.tif 000010
【００８４】
複数視点情報補正部８０４は、上式で算出したスケールＳを仮想カメラの焦点距離に乗算し、他の仮想カメラの仮想視点情報を補正することで、基準視点と他の仮想カメラの視点において、同一オブジェクトのサイズ比を視点操作前後で一致させる。なお、本実施形態では、オブジェクトのサイズ比を視点操作前後で一致させるために、他の仮想カメラの焦点距離を補正したが、補正するパラメータは焦点距離に限られず、例えば、仮想カメラの位置パラメータを補正してもよい。
【００８５】
＜実施形態３＞
上述の実施形態１と実施形態２では、基準視点と他の仮想カメラで同一オブジェクトを視ている場合について説明した。即ち、上述の実施形態１と実施形態２では、オブジェクトが同一であることを前提に、例えば、基準視点と他の仮想カメラで視点操作に用いる回転基点等も同一のものを用いることとして説明した。本実施形態では、基準視点と他の仮想カメラで異なるオブジェクトを視ている場合について説明する。以下、図１０及び図１１を用いて、本実施形態に係る表示制御装置において実行される処理について、主に実施形態１との差異に着目して説明する。
【００８６】
図１０は複数視点制御部２０３の機能構成を示す図であり、図１１はＳ３０４における処理の手順を示すフローチャートである。図１１において、Ｓ１１０１及びＳ１１０２の処理は、実施形態１と同様の処理である。
【００８７】
Ｓ１１０３において、トラッキング情報取得部１００３は、シーン内のオブジェクトのトラッキング情報を取得する。ここで、オブジェクトのトラッキング情報は、シーンを構成する複数のフレームにおいて、そのシーン内のオブジェクトの各々が世界座標空間内のどこに位置していたかを記録した位置情報を含む。
【００８８】
本実施形態では、トラッキング情報として、フレームｍにおける識別番号ｎのオブジェクトの重心位置Ｘn,m＝[ｘn,m，ｙn,m，ｚn,m]を取得するものとする。なお、トラッキング情報としては、必ずしも重心位置である必要はなく、オブジェクト端部の位置を複数、取得するようにしてもよい。トラッキング情報取得部１００３は、取得したトラッキング情報を複数視点情報算出部１００４に出力する。
【００８９】
Ｓ１１０４において、複数視点情報算出部１００４は、仮想視点情報、基準視点操作情報及びトラッキング情報に基づいて、基準視点の仮想視点情報と他の仮想カメラの仮想視点情報を新たに算出（生成）し、更新する。ここで、実施形態１との差異は、回転基点Ｃ、Ｃ’を各仮想カメラが注視するオブジェクト（即ち、仮想視点画像の画像中心の近傍に位置するオブジェクト）の重心位置とすることである。基準視点が注視するオブジェクトをオブジェクト識別番号１、他の仮想カメラが注視するオブジェクトをオブジェクト識別番号２とした場合、基準視点の回転基点Ｃと他の仮想カメラの視点の回転基点Ｃ’は、下式のように示される。
【００９０】
【数９】
2020173529.tif 000011
【００９１】
そして、基準視点の回転基点と他の仮想カメラの回転基点を上述の実施形態１で説明した数式に設定することで、基準視点と他の仮想カメラで異なるオブジェクトを注視している場合でも、各々のオブジェクトを中心とした仮想視点映像を生成することができる。
【００９２】
なお、本実施形態では、回転基点として注視するオブジェクトの重心位置を用いて説明したが、これに限られず、上述の実施形態１の基準視点の回転基点を求めた方法を用いて、基準視点と他の仮想カメラの回転基点を求めて、それらを用いることもできる。
【００９３】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2020173529.tif 000012
【図２】
2020173529.tif 000013
【図３】
2020173529.tif 000014
【図４】
2020173529.tif 000015
【図５】
2020173529.tif 000016
【図６】
2020173529.tif 000017
【図７】
2020173529.tif 000018
【図８】
2020173529.tif 000019
【図９】
2020173529.tif 000020
【図１０】
2020173529.tif 000021
【図１１】
2020173529.tif 000022