(57)【要約】【課題】  仮想視点の設定をより簡易に行えるようにする。【解決手段】  制御装置１００は、ユーザ操作に応じて、仮想視点画像の生成に係る仮想視点の位置及び向きのうち少なくとも何れか一方を制御する。ここで制御装置１００は、所定のユーザ操作に応じた仮想視点の制御内容を、仮想視点画像の再生モードに応じて切り替える。【選択図】  図７
2020119095.tif 000002
【特許請求の範囲】
【請求項１】
仮想視点画像を再生するための複数の所定の再生モードのうち１つの再生モードを特定する特定手段と、
前記仮想視点画像の生成に係る仮想視点の位置及び向きの少なくとも何れかをユーザ操作に応じて制御する制御手段であって、同一のユーザ操作に対して、前記特定手段により特定される再生モードに応じて異なる制御を行う制御手段と、を有することを特徴とする制御装置。
【請求項２】
前記複数の所定の再生モードには、ユーザによる操作が行われない間は仮想視点の位置及び向きが変化しない第１再生モードと、ユーザによる操作が行われない間も仮想視点の位置及び向きの少なくとも何れかが変化する第２再生モードとが含まれることを特徴とする請求項１に記載の制御装置。
【請求項３】
予め定められた視点の位置及び向きの変化を表す視点情報を取得する取得手段を有し、
前記制御手段は、前記特定手段により特定される再生モードが前記第２再生モードである場合に、前記取得手段により取得された視点情報に基づいて前記仮想視点の位置及び向きの少なくとも何れかを制御することを特徴とする請求項２に記載の制御装置。
【請求項４】
前記取得手段により取得される視点情報が表す視点を基準とした視点の位置及び向きの少なくとも何れかの調整量をユーザ操作に応じて設定する設定手段を有し、
前記制御手段は、前記取得手段により取得された視点情報と前記設定手段により設定された調整量とに基づいて前記仮想視点の位置及び向きの少なくとも何れかを制御することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記仮想視点画像は、所定の撮影領域を複数の方向から撮影することで得られる複数の画像に基づいて生成される画像であり、
前記取得手段は、前記所定の撮影領域内の特定のオブジェクトの位置及び向きを表す情報を、前記視点情報として取得することを特徴とする請求項３又は４に記載の制御装置。
【請求項６】
前記特定のオブジェクトは、複数の人物の中からユーザ操作に基づいて選択された人物であることを特徴とする請求項５に記載の制御装置。
【請求項７】
前記制御手段は、前記特定手段により特定される再生モードが前記第１再生モードである場合には所定のユーザ操作に応じて前記仮想視点の位置及び向きを変更し、前記特定手段により特定される再生モードが前記第２再生モードである場合には前記所定のユーザ操作に応じて前記仮想視点の位置を変更せず前記仮想視点の向きを変更することを特徴とする請求項２乃至６の何れか１項に記載の制御装置。
【請求項８】
前記制御手段は、前記特定手段により特定される再生モードが前記第１再生モードである場合に、前記所定のユーザ操作に応じて、仮想視点が特定の基準位置を向いたまま旋回するように前記仮想視点画像の位置及び向きを制御することを特徴とする請求項７に記載の制御装置。
【請求項９】
前記所定のユーザ操作は、ユーザが指示する座標をスライドさせる操作であることを特徴とする請求項７又は８に記載の制御装置。
【請求項１０】
前記制御手段は、前記特定手段により特定される再生モードが前記第１再生モードである場合には所定のユーザ操作に応じて前記仮想視点の位置を変更し、前記特定手段により特定される再生モードが前記第２再生モードである場合には前記所定のユーザ操作に応じて前記仮想視点に対応する画角を変更することを特徴とする請求項２乃至６の何れか１項に記載の制御装置。
【請求項１１】
前記所定のユーザ操作は、ピンチイン操作又はピンチアウト操作であることを特徴とする請求項１０に記載の制御装置。
【請求項１２】
前記制御手段は、前記特定手段により特定される再生モードが前記第２再生モードである場合に、同一のユーザ操作に対して、前記仮想視点画像が再生中であるか一時停止中であるかに応じて異なる制御を行うことを特徴とする請求項２乃至１１の何れか１項に記載の制御装置。
【請求項１３】
前記制御手段により制御された仮想視点の位置及び向きに応じた仮想視点画像を表示部に表示させる表示制御手段を有することを特徴とする請求項１乃至１２の何れか１項に記載の制御装置。
【請求項１４】
仮想視点画像を再生するための複数の所定の再生モードのうち１つの再生モードを特定する特定工程と、
前記仮想視点画像の生成に係る仮想視点の位置及び向きの少なくとも何れかをユーザ操作に応じて制御する制御工程であって、同一のユーザ操作に対して、前記特定工程において特定される再生モードに応じて異なる制御を行う制御工程と、を有することを特徴とする制御方法。
【請求項１５】
前記複数の所定の再生モードには、ユーザによる操作が行われない間は仮想視点の位置及び向きが変化しない第１再生モードと、ユーザによる操作が行われない間も仮想視点の位置及び向きの少なくとも何れかが変化する第２再生モードとが含まれることを特徴とする請求項１４に記載の制御方法。
【請求項１６】
予め定められた視点の位置及び向きの変化を表す視点情報を取得する視点取得工程を有し、
前記制御工程は、前記特定工程において特定される再生モードが前記第２再生モードである場合に、前記視点取得工程において取得された視点情報に基づいて前記仮想視点の位置及び向きの少なくとも何れかを制御することを特徴とする請求項１５に記載の制御方法。
【請求項１７】
コンピュータを、請求項１乃至１３の何れか１項に記載の制御装置の各手段として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は仮想視点画像に係る仮想視点を制御する技術に関する。
【背景技術】
【０００２】
視点の異なる複数のカメラで撮影して得られる複数の撮影画像から任意の視点の画像を生成する仮想視点画像生成技術が知られている。仮想視点画像の生成方法として、予め定められた仮想視点の移動経路（カメラパス）に基づいて仮想視点画像を生成しておく方法や、視聴者等により指定された仮想視点の位置及び姿勢等に従って仮想視点画像を生成する方法が知られている。
【０００３】
仮想視点画像の生成技術によれば、インタラクティブ性の高い画像の視聴を実現できる。一方で、仮想視点の操作は自由度が高く、不慣れなユーザが望み通りに視点を操作することが困難である。特許文献１には、複数の視点座標データと、複数の回転起点データのうちから、それぞれ１つずつをユーザに選択させ、その後、視点の回転角度と移動量を入力して視点を設定することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１８７７９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の方法は、仮想視点の設定のための操作手順が多い。本発明は、仮想視点の設定をより簡易に行えるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、仮想視点画像を再生するための複数の所定の再生モードのうち１つの再生モードを特定する特定手段と、
前記仮想視点画像の生成に係る仮想視点の位置及び向きの少なくとも何れかをユーザ操作に応じて制御する制御手段であって、同一のユーザ操作に対して、前記特定手段により特定される再生モードに応じて異なる制御を行う制御手段と、を有することを特徴とする制御装置。
【発明の効果】
【０００７】
本発明によれば、仮想視点画像に係る仮想視点の設定をより簡易に行うことができるようになる。
【図面の簡単な説明】
【０００８】
【図１】表示制御装置１００のハードウェア構成を示すブロック図である。
【図２】表示制御装置１００の機能構成を示すブロック図である。
【図３】表示制御装置１００により表示される操作画面の例を示す図である。
【図４】カメラパスのオフセットについて説明するための図である。
【図５】自由操作モードにおける仮想視点の操作の例を示す図である。
【図６】選手視点モードにおける仮想視点の操作の例を示す図である。
【図７】表示制御装置１００の動作の例を示すフローチャートである。
【図８】自由操作モードにおける仮想視点制御に係る処理の例を示すフローチャートである。
【図９】選手視点モードにおける仮想視点制御に係る処理の例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
【００１０】
＜システム構成＞
本実施形態において、表示制御装置１００（以降、制御装置１００と表記）は、仮想視点画像を生成して表示部へ表示させる。仮想視点画像とは、フィールド（撮影対象領域）を異なる方向から撮影する複数の撮影装置（カメラ）により得られた複数の撮影画像（複数視点画像）に基づいて生成される画像であり、指定された仮想視点の位置及び向き等に従って生成される画像である。本実施形態では仮想視点画像が動画である場合を中心に説明するが、制御装置１００により処理される仮想視点画像は静止画であってもよい。動画の仮想視点画像は、各画像フレームが所定の動画圧縮の方式により圧縮された画像データであっても良いし、各画像フレームが所定の静止画圧縮の方式により圧縮された画像データであっても良いし、非圧縮の画像データであっても良い。
【００１１】
なお、本実施形態では、「仮想視点の位置を変更する」ことを「仮想カメラの位置を変更する」とも表現し、「仮想視点の向きを変更する」ことを「仮想カメラの姿勢を変更する」とも表現する。本実施形態における仮想カメラは、撮影対象領域の周囲に実際に設置された複数の撮影装置とは異なる仮想的なカメラであって、仮想視点画像の生成に係る仮想視点を便宜的に説明するための概念である。すなわち、制御装置１００により生成される仮想視点画像は、撮影対象領域に関連付けられる仮想空間内に設定された仮想視点から撮影した画像であるとみなすことができる。そして、仮想的な当該撮影における視点の位置及び向きは仮想カメラの位置及び姿勢として表すことができる。言い換えれば、制御装置１００により生成される仮想視点画像は、空間内に設定された仮想視点の位置にカメラが存在するものと仮定した場合に、そのカメラにより得られる撮影画像を模擬した画像であると言える。ただし、本実施形態の構成を実現するために仮想カメラの概念を用いることは必須ではない。すなわち、少なくとも空間内における位置を表す情報と方向を表す情報とが設定され、設定された情報に応じて仮想視点画像が生成されればよい。また、本実施形態における仮想視点画像は、自由視点映像とも呼ばれるものであるが、ユーザが自由に（任意に）指定した視点に対応する画像に限定されず、例えば複数の候補からユーザが選択した視点に対応する画像なども仮想視点画像に含まれる。
【００１２】
本実施形態における制御装置１００のシステム構成例について、図１を用いて説明する。同図において、ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、ＲＯＭ１０３及び／又はハードディスクドライブ（ＨＤＤ）１０５に格納されたプログラムを実行し、システムバス１１２を介して後述する各構成を制御する。これにより、後述する様々な処理が実行される。ＨＤＤインタフェイス（Ｉ／Ｆ）１０４は、制御装置１００と、ＨＤＤ１０５や光ディスクドライブなどの二次記憶装置とを接続する、例えばシリアルＡＴＡ（ＳＡＴＡ）等のインタフェイスである。ＣＰＵ１０１は、ＨＤＤインタフェイス（Ｉ／Ｆ）１０４を介した、ＨＤＤ１０５からのデータ読み出し、およびＨＤＤ１０５へのデータ書き込みが可能である。さらにＣＰＵ１０１は、ＨＤＤ１０５に格納されたデータをＲＡＭ１０２に展開する。
【００１３】
また、ＣＰＵ１０１は、プログラムの実行により得られたＲＡＭ１０２上の各種データをＨＤＤ１０５に保存することが可能である。入力インタフェイス（Ｉ／Ｆ）１０６は、１又は複数の座標を入力するためのタッチパネル、キーボード、マウス、デジタルカメラ、スキャナなどの入力デバイス１０７と制御装置１００とを接続する。入力インタフェイス（Ｉ／Ｆ）１０６は、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェイスである。ＣＰＵ１０１は、入力Ｉ／Ｆ１０６を介して入力デバイス１０７からデータを読み込むことが可能である。出力インタフェイス（Ｉ／Ｆ）１０８は、ディスプレイなどの出力デバイス１０９と制御装置１００とを接続する、例えばＤＶＩやＨＤＭＩ（登録商標）等の画像出力インタフェイスである。ＣＰＵ１０１は、出力Ｉ／Ｆ１０８を介して出力デバイス１０９に仮想視点画像に係るデータを送ることで、仮想視点画像の表示を実行させることができる。ネットワークインタフェイス（Ｉ／Ｆ）１１０は、制御装置１００と外部サーバ１１１とを接続する、例えばＬＡＮカードなどのネットワークカードである。ＣＰＵ１０１は、ネットワークＩ／Ｆ１１０を介して外部サーバ１１１から仮想視点画像の生成に関わる各種のデータを読み込むことが可能である。
【００１４】
なお、本実施形態では、入力デバイス１０７が制御装置１００のタッチパネルである場合の例を中心に説明する。つまり、制御装置１００はスマートフォンやタブレット端末などであっても良く、この場合は、入力デバイス１０７（タッチパネル）や出力デバイス１０９（表示スクリーン）は、制御装置１００と一体である。また、図１にて示した構成のすべてが必須の構成とは限らない。例えば、制御装置１００がＨＤＤ１０５に記憶された仮想視点画像を再生する場合、外部サーバ１１１は不要である。逆に、外部サーバ１１１から取得した仮想視点画像を生成する場合、ＨＤＤ１０５は不要である。また、制御装置１００が複数のＣＰＵ１０１を有してもよい。また、ＣＰＵ１０１とは異なる専用の１又は複数のハードウェアやＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を有し、ＣＰＵ１０１による処理の少なくとも一部をＧＰＵや専用のハードウェアが行うようにしてもよい。専用のハードウェアの例としては、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）、およびＤＳＰ（デジタルシグナルプロセッサ）などがある。
【００１５】
本実施形態では、仮想視点画像を再生して表示するための複数の所定の再生モード（表示モード）のうち何れの再生モードが設定されているかによって視点制御方法を変更することで、ユーザの意図に沿った仮想カメラの制御を行う方法について述べる。本実施形態におけるユーザ操作には、タップ操作、１本又は２本の指によるスライド操作、ピンチイン操作、及びピンチアウト操作が含まれるものとする。タップ操作とは、タッチパネルに指やペンなどの指示具でタッチしてから所定時間以内に、タッチしていた指や指示具をタッチパネルから離す操作である。スライド操作とは、指や指示具をタッチパネルにタッチしたまま所定値以上の距離移動させる操作である。タッチパネル内の複数個所（例えば２点）を同時にタッチして、互いのタッチ位置を近づける操作をピンチイン操作と称し、互いのタッチ位置を遠ざける操作をピンチアウト操作と呼ぶ。ただし、ユーザ操作の内容はこれらに限定されない。
【００１６】
また、本実施形態では、サッカーの試合を撮影した画像に基づいて仮想視点画像が生成されるものとする。また、仮想視点の位置及び向きを時系列に表す視点情報（カメラパス）として、複数視点画像の撮影領域内に存在する選手の顔の位置及び向きに応じた仮想視点のカメラパスが用いられるものとして説明する。なお、カメラパスが示す仮想視点の位置は、選手の位置に一致していてもよいし、選手から所定距離離れた位置（例えば選手の後方の位置）であってもよい。また、カメラパスが示す仮想視点の向きは、選手の顔の向きと一致していてもよいし、選手の胴体の向きや足の向き、又は視線の向きなどに対応していてもよい。カメラパスは選手の動作を解析して自動で生成されたものでも良いし、手動で作成したものでも良い。また、選手の顔の位置及び向きに応じたカメラパスに限らず、例えば審判などその他の人物やボールの位置に応じたカメラパスなど、任意のオブジェクトに応じたカメラパスが用いられてもよい。また、撮影対象はサッカーの試合に限らず、ラグビーなどその他の競技であってもよいし、舞台でのコンサートなどスポーツ以外であってもよい。
【００１７】
図４から図６を用いて具体的な再生モードとユーザ操作と仮想カメラの動作の関係について説明する。本実施形態では、仮想視点画像の再生モードとして自由操作モードと選手視点モードの２種類があり、制御装置１００はユーザ操作に応じてこれらのモードを切り替えて仮想視点画像の再生を行う。自由操作モードは、仮想視点の位置及び向きをユーザ操作によって直接指定するモードである。選手視点モードは、選手の顔の位置及び向きに応じたカメラパスを基準として、その基準となるカメラパスからの仮想視点の位置及び向きの調整量（オフセット）をユーザ操作によって指定するモードである。図４を用いて、基準となるカメラパスに対してオフセットを加える例について説明する。
【００１８】
図４（ａ）は基準となるカメラパスの例を示す。視点４０１の黒丸は仮想視点の位置（選手の顔に対応する位置）を表しており、三角形は仮想視点の向き（選手の顔に対応する向き）を表している。黒丸と重なる三角形の頂点から対向する辺の中点への方向が視点４０１の視線方向を示している。図４（ａ）はカメラパス４０２の矢印にそって時系列に仮想カメラの位置姿勢が変化することを表している。図４（ｂ）は、図４（ａ）の表す基準となるカメラパスに対して、仮想視点の位置を後方に移動し、仮想視点の向きを右回りに回転させた場合の例を示している。
【００１９】
図４（ｂ）に点線で示したカメラパス４０３はカメラパス４０２と同じ基準となるカメラパスを表している。一方、カメラパス４０４はカメラパス４０２にオフセットを加えた後のカメラパスを表している。オフセット後のカメラパス４０４における各仮想視点の位置は元の視線方向に対して後方に移動しており、各仮想視点の向きは右方向に１５°程度回転している。このように、入力されたカメラパスにおける各時刻の仮想視点の位置及び向きを基準にして、仮想視点のローカル座標系で位置及び向きにオフセットを加える。これにより、元のカメラパスにおける仮想視点の変化の仕方などの特徴を残しつつ、任意に仮想視点の位置及び向きの調整をすることができる。本実施形態の選手視点モードにおいては、選手の位置や姿勢に応じてあらかじめ定められたカメラパスに対するオフセットがユーザ操作により指定される。これにより、ユーザはあらかじめ定められた視点の位置及び向きの変化を表すカメラパスの意図を反映しながら、仮想視点の操作を簡易に行うことができる。
【００２０】
図５及び図６を用いて、自由視点モードと選手視点モードにおける、ユーザ操作に応じた仮想視点の変更方法を説明する。図５は、自由視点モードにおける回転操作によって、仮想カメラの位置及び姿勢が変化する様子を示している。ユーザ操作を受け付ける前の画像５０１が表示されている画面（タッチパネル）に対して、１本の指で指示する座標を左方向にスライドさせるスライド操作が行われると、仮想カメラの位置及び姿勢が変更され、画像５０２が表示される。このとき、仮想カメラの位置及び姿勢は、俯瞰画像５０３の中心に描画された３次元空間上の選択点５０４を中心として、仮想視点５０５から右側に回り込んだ仮想視点５０６へ変化する。すなわち、ユーザ操作により同時に指定される表示スクリーン上（表示面上）の座標の数が１つである場合、その座標の移動に応じて、仮想カメラは所定の注目座標（選択点５０４）を中心に旋回する。別の言い方をすると、ユーザ操作により同時に指定される表示面上の座標の数が１つである場合、その座標の移動に応じて、仮想カメラが所定の基準位置を向いたまま旋回する。すなわち、１本の指によるスライド操作が検出された場合は、仮想カメラは選択点５０４を中心とする球５０７上の範囲で移動する。これにより、簡易にバレットタイムのような仮想視点画像を生成することができる。
【００２１】
なお、本実施形態において選択点５０４は、仮想カメラの位置姿勢と撮影領域内のオブジェクトの位置とに基づいて決まる。具体的には、仮想カメラの光軸と選手や地面などのオブジェクトとが交差する点（画像５０１の中心の奥行方向に仮想的に飛ばした光線と物体との交点）が選択点５０４として用いられる。ただし仮想カメラの旋回の中心となる選択点５０４はこれに限定されず、例えばユーザにより選択点５０４の３次元座標が指定されてもよい。
【００２２】
図６は、選手視点モードにおける回転操作によって、仮想カメラの姿勢が変化する様子を示している。仮想視点６０４の位置及び向きはある選手の顔の位置及び向きに対応しており、画像６０１はその選手の視界を再現した仮想視点画像である。ユーザ操作を受け付ける前の画像６０１が表示されている画面に対して１本の指で左方向にスライド操作が行われると、仮想カメラの姿勢が変更され、画像６０２が表示される。このとき、仮想カメラの位置は変更されず、仮想カメラの姿勢は、仮想カメラの位置を中心として仮想視点６０４から右に回転した仮想視点６０５へ変化する。すなわち、ユーザのスライド操作による指示座標の移動に応じて、仮想カメラがその場で回転する。これにより、仮想視点の基準となる選手が周囲を見回しているような仮想視点画像を生成することができる。また、ユーザは基準となる選手の視点位置から見た周囲の状況を確認することができる。
【００２３】
また、選手視点モードにおいては、ピンチイン操作及びピンチアウト操作により、仮想カメラのズーム値に関するパラメータが変更される。指を広げた分だけズーム値が大きく（画角が小さく）なり、仮想カメラの視界内の被写体（例えば選手等のオブジェクト）が大きく表示される。また、指を狭めた分だけズーム値が小さく（画角が大きく）なり、仮想カメラの視界内の被写体が小さく表示される。このように、直感的な操作が可能となる。また、ユーザは基準となる選手の視野の広さによってほかの選手やオブジェクトがどの程度視界に入るかを確認することができる。なお、選手視点モードにおいて、仮想カメラの姿勢及びズーム値の変更に限らず、別のユーザ操作により仮想カメラの位置の変更が行われてもよい。例えば、スライド操作を何本の指を用いて行うかによって、仮想カメラの姿勢を変化させるか位置を変化させるかが決定されてもよい。
【００２４】
＜制御装置の処理フロー＞
本実施形態の制御装置１００が行う処理の流れについて、図２と図７とを参照して説明する。図２は、本実施形態における制御装置１００の機能構成を示すブロック図である。図１におけるＣＰＵ１０１は、ＲＯＭ１０３及び／又はＨＤＤ１０５に格納されたプログラムを読み出してＲＡＭ１０２をワークエリアとして実行することで、図２に示す制御装置１００内部の各機能ブロックの役割を果たす。なお、図２の操作部２０１及び表示部２０７は、図１の入力デバイス１０７及び出力デバイス１０９にそれぞれ対応する。また、ＣＰＵ１０１が制御装置１００内部の全ての機能ブロックの役割を果たす必要はなく、各機能ブロックに対応する専用の処理回路を設けるようにしてもよい。また、図２では操作部２０１と表示部２０７が制御装置１００の外部にある場合の例を示しているが、操作部２０１と表示部２０７の少なくとも何れかが制御装置１００の内部に構成されていてもよい。
【００２５】
図７は本実施形態の制御装置１００で行われる処理の流れを示すフローチャートである。図７を用いて説明する各処理は、制御装置１００が備えるＣＰＵ１０１が、ＲＯＭ１０３及び／又はＨＤＤ１０５に格納されたプログラムを読み出してＲＡＭ１０２をワークエリアとして実行することで実現される。図７の処理は、表示部２０７における仮想視点画像の再生中に操作部２０１を介してユーザ操作が行われたタイミングで開始される。表示部２０７における仮想視点画像の再生は、例えば、制御装置１００に実装された画像再生用のアプリケーションが起動され、そのアプリケーションにおいて再生対象の動画が指定され、再生開始が指示されたことに応じて実行される。再生開始後、後述する再生モードの設定や仮想視点の制御に関するユーザ操作がおこなわれるまでは、予め定められた仮想視点又は自動で決定された仮想視点に対応する仮想視点画像が表示される。なお、図７の処理の開始タイミングは上記に限定されない。
【００２６】
Ｓ７０１では、取得データ制御部２０２、再生モード制御部２０８及び視点制御部２０５が、操作部２０１において検出されるユーザ操作に応じた操作情報の取得を開始する。ここでは、操作部がタッチパネルであり、操作部２０１に対するユーザ操作はタップ操作、ダブルタップ操作、スライド操作、ピンチイン操作、又はピンチアウト操作であるものとする。操作に応じて取得される操作情報は、画面に触れている指の本数とそれぞれの指の座標、画面に触れている指が指示する代表点の座標ｘ’、代表点の座標の変化を表す２次元ベクトルｄ＝（ｄｘ，ｄｙ）及び、３次元点の位置を表す３次元ベクトルＴを示す。ただし、上記のすべての情報が操作情報に含まれていなくてもよい。また、画面に触れている２本の指の距離の変化量を示す情報が操作情報に含まれてもよい。
【００２７】
指のタッチ位置などを表す２次元スクリーンの座標系は、左上を原点とし、右を＋ｘ方向、下を＋ｙ方向とする。代表点は、画面上において指が触れている範囲に含まれる複数の点の２次元スクリーン座標ｘｉの重心の座標とする。しかしながら、代表点は重心に限らず、２次元スクリーン座標ｘｉの平均の座標であっても良いし、複数の２次元スクリーン座標ｘｉのうちのランダムに選択された１点であってもよいし、最も長い時間タッチされた点であってもよい。また、タッチされた点が１つである場合に、その点を代表点として扱ってもよい。
【００２８】
また、３次元点は、仮想カメラの位置姿勢に基づいて特定される３次元空間内の点あり、例えば仮想カメラの位置に応じた３次元座標を始点として仮想カメラの撮影方向へ仮想的に光線を飛ばし（レイキャスト）、その光線が被写体と衝突する点とする。この３次元点は、仮想カメラの操作において回転の基点や移動の基準点として利用される注目座標である。なお、本実施形態では３次元点は３次元ベクトルＴにより表される例を説明するが、必ずしもベクトルの形式で示されなくても良い。
【００２９】
Ｓ７０１において操作情報の取得が開始されると、取得データ制御部２０２、再生モード制御部２０８及び視点制御部２０５は所定時間ごと（例えば表示される仮想視点画像のフレーム時間ごと）に、新たな操作情報を取得する。なお、操作部２０１に対する操作が行われていない間は、操作情報が取得されなくてもよいし、操作が行われていないことを示す操作情報が取得されてもよい。取得された操作情報は、その内容に応じて、後述するＳ７０２における再生モードの設定や、Ｓ７０３における再生状態の設定や、Ｓ７０５及びＳ７０７における仮想カメラの制御に用いられる。
【００３０】
Ｓ７０２では、再生モード制御部２０８が、取得した操作情報に基づいて複数の所定の再生モードのうち１つの再生モードを特定し、カメラパス取得部２０４及び視点制御部２０５に特定された再生モードを示す情報を出力する。再生モードが選手視点モードの場合は、再生モード制御部２０８は、仮想視点の基準となる選手の選手識別情報も出力する。図３を参照して再生モードの決定方法について説明する。図３は表示部２０７に表示される画像の一例であり、制御装置１００は、この画像が表示されたタッチパネル（操作部２０１）に対するユーザ操作に応じて処理を行う。ボタン３０２がタップされた場合、再生モード制御部２０８は、自由操作モードがユーザに選択されたことを特定し、再生モードを自由操作モードに設定する。また、選手名の表示されたボタン３０３からボタン３０５の何れかがタップされた場合、再生モード制御部２０８は、選手視点モードがユーザに選択されたことを特定し、再生モードを選手視点モードに設定する。そして、タップされたボタンに対応付けられた選手識別情報を出力する。ここで選手識別情報とは、例えば、個々の選手を識別するためのＩＤである。ここでは、表示される選手名が予め定められているものとして説明するが、仮想カメラに写っている選手の名前をボタンとして表示するなど、表示されるボタンの個数や表示される選手名は仮想視点画像の再生中に変化してもよい。
【００３１】
また、再生モード制御部２０８は、ダブルタップ操作に応じて再生モードを変更してもよい。再生モード制御部２０８は、ダブルタップされた座標に選手が表示されている場合は、選手視点モードに設定し、その選手の選手識別情報を出力する。ダブルタップした座標に選手が存在しなければ、再生モード制御部２０８は、再生モードを自由操作モードに設定する。ダブルタップした座標に選手が存在するかの判定は、タップした点の座標とＨＤＤ１０５又は外部サーバ１１１から取得した選手位置の座標との距離が所定の距離より近いか否かに基づいて行われる。ダブルタップ操作以外のユーザ操作が行われた場合は、再生モード制御部２０８は、再生モードと選手識別情報の変更を行わず、前フレームと同じ再生モードと選手識別情報を出力する。
【００３２】
なお、選択される候補となる再生モードは、本実施形態で説明する自由操作モードと選手視点モードに限定されない。例えば再生モード制御部２０８は、３つ以上のモードの中からユーザ操作により選択された１つの再生モードを特定してもよい。また、再生モードがユーザの再生環境やコンテンツの内容等に基づいて自動で選択されてもよい。また、再生モード制御部２０８は、何れの再生モードが設定されているかを示す情報を制御装置１００とは別の装置から取得することで、設定された再生モードを特定してもよい。
【００３３】
Ｓ７０３では、取得データ制御部２０２が、取得した操作情報に応じて再生状態の設定を行う。表示画面におけるボタンなどがない領域でタップ操作が検出された場合、取得データ制御部２０２は、表示部２０７における現在の仮想視点画像の再生状態が一時停止中であれば再生中に変更する。一方、タップ操作が検出されたときに仮想視点画像の再生状態が再生中であれば、取得データ制御部２０２は、仮想視点画像の再生状態を一時停止中に変更する。このように、取得データ制御部２０２は、表示スクリーンに対するタップ操作に応じて、仮想視点画像の再生状態を変更するので、ユーザは直観的な操作で再生状態を切り替えることができる。
【００３４】
Ｓ７０４では、視点制御部２０５が、再生モード制御部２０８により設定された再生モードに応じて、自由視点操作モードにおける視点操作を行うか選手視点モードにおける視点操作を行うかを決定する。自由操作モードの場合、Ｓ７０５において、視点制御部２０５が、操作部２０１に対するユーザ操作に応じた操作情報に基づいて、仮想カメラの位置及び姿勢に関する視点情報であるカメラパラメータを描画部２０６へ出力する。Ｓ７０５の処理の詳細は図８を用いて後述する。
【００３５】
選手視点モードの場合、Ｓ７０６において、カメラパス取得部２０４が、再生モード制御部２０８から取得した選手識別情報に対応するカメラパスをＨＤＤ１０５又は外部サーバ１１１から取得し、１フレーム分のカメラパラメータを視点制御部２０５に出力する。すなわち、図３のボタン３０３からボタン３０５に表示された複数の選手の中からユーザ操作に基づいて選択された選手に応じたカメラパラメータが視点制御部２０５へ出力される。カメラパス取得部２０４は、仮想視点画像を動画として再生している状態であれば、次のフレームのカメラパラメータを出力する。一方、仮想視点画像の再生が一時停止状態であれば、一時停止したフレームのカメラパラメータを出力する。なお、一時停止状態ですでにカメラパラメータを出力済みの場合は、改めてカメラパラメータを出力しなくても良い。ここで、カメラパス取得部２０４が出力するカメラパラメータは選手の位置及び姿勢に応じた仮想カメラの位置及び姿勢を表す視点情報であり、選手の顔の位置Ｔｃ及びその向きＲｃを含む。
【００３６】
Ｓ７０７では、視点制御部２０５が、操作部２０１に対するユーザ操作に応じた操作情報に基づいてオフセット情報を決定する。そして、カメラパス取得部２０４から取得したカメラパラメータをオフセット情報に基づいて調整した調整済みパラメータを描画部２０６へ出力する。Ｓ７０７の処理の詳細は図９を用いて後述する。
【００３７】
Ｓ７０８では、データ取得部２０３が、ＨＤＤ１０５又は外部サーバ１１１から仮想視点画像のレンダリングに必要な素材データ（撮影画像に基づいて生成されたオブジェクトのポリゴンデータやテクスチャデータ）を取得し、描画部２０６に出力する。データ取得部２０３は、仮想視点画像を動画として再生している状態であれば、次の画像フレームのレンダリングに必要な素材データを出力する。一方、仮想視点画像の再生が一時停止状態であれば、一時停止した画像フレームのレンダリングに必要な素材データを出力する。なお、一時停止状態ですでに素材データを出力済みの場合は、改めて素材データを出力しなくても良い。
【００３８】
Ｓ７０９では、描画部２０６が、データ取得部２０３から取得した素材データと視点制御部２０５から取得したカメラパラメータを基にレンダリングを行うことで、再生モードに応じて制御された仮想視点の位置及び向きに応じた仮想視点画像を生成する。レンダリング方法としては、例えばイメージベースドレンダリングやモデルベースレンダリングなどの既存の技術を使用できる。
【００３９】
レンダリングに用いられるカメラパラメータは、仮想カメラの外部パラメータと内部パラメータに分類できる。仮想カメラの外部パラメータとは、仮想カメラの位置及び姿勢を表すパラメータである。また、仮想カメラの内部パラメータとは、仮想カメラの光学的な特性を表すパラメータである。外部パラメータと内部パラメータについてより具体的に説明する。仮想カメラの位置を表すベクトルをｔ，姿勢を表す回転行列をＲとすると、仮想カメラの外部パラメータは以下のように表すことができる。
【００４０】
【数１】
2020119095.tif 000003
【００４１】
また、仮想カメラの主点位置を（ｃｘ，ｃｙ）、仮想カメラの焦点距離をｆとすると、仮想カメラの内部パラメータＫは以下のように表すことができる。
【００４２】
【数２】
2020119095.tif 000004
【００４３】
なお、カメラパラメータの表現方法は行列以外の表現であってもかまわない。例えば、仮想カメラの位置を３次元座標で表し、仮想カメラの姿勢をｙａｗ、ｒｏｌｌ、及びｐｉｔｃｈの値の羅列によって表すようにしてもよい。また、外部パラメータと内部パラメータは上述のものに限るわけではない。例えば、仮想カメラのズーム値を表す情報が仮想カメラの内部パラメータに含まれてもよい。このように、仮想視点画像の生成のために用いられる仮想カメラのパラメータには種々のバリエーションが存在する。
【００４４】
Ｓ７１０において、描画部２０６は、生成された仮想視点画像を表示部２０７に出力して、仮想視点画像を表示部２０７に表示させる表示制御を行う。表示部２０７は描画部２０６から取得した仮想視点画像を表示する。以上が本実施形態の制御装置１００で行われる処理の流れである。
【００４５】
＜自由操作モードにおける仮想カメラの制御＞
図７のＳ７０５の処理の詳細を、図８を参照して説明する。Ｓ７０５においては、視点制御部２０５は、操作部２０１に対するユーザ操作に応じた操作情報を取得し、仮想視点画像の描画に用いられる仮想カメラのカメラパラメータを描画部２０６に出力する。
【００４６】
Ｓ８０１では、視点制御部２０５は、操作部２０１に対するユーザ操作に応じて視点リセットを行うか否かを判定する。本実施形態では、表示スクリーン上の特定の領域（例えば図３における視点リセットボタン３０１が表示されている領域）がタップされた場合に、視点リセットを行うと判定される。
【００４７】
視点リセットを行うと判定された場合、Ｓ８０２において、視点制御部２０５が、仮想カメラの位置及び姿勢等をリセットする。すなわち視点制御部２０５は、表示スクリーン上の所定位置に対するユーザ操作が検出されたことに応じて、仮想視点の位置及び向きを予め定められた位置及び向きに変更する。そして、視点制御部２０５は、リセット後の仮想カメラのカメラパラメータを描画部２０６に出力する。本実施形態においてリセット後の仮想カメラの位置は［０  ０  ０］という座標で表される位置であり、仮想カメラの姿勢は単位行列で表される姿勢であるものとする。しかしながら、リセット後の仮想カメラの位置及び姿勢を示す視点情報は上述のものに限るわけではない。例えば、視点制御部２０５は、リセット後の視点情報として、予めユーザが設定した値を利用してもよいし、画像データに埋め込まれた推奨の視点情報を読出して利用しても良い。
【００４８】
Ｓ８０３では、操作部２０１により検出されたジェスチャーそれぞれに対応する操作情報を視点制御部２０５が取得する。視点制御部２０５は、検出されたすべてのジェスチャーについて、Ｓ８０４からＳ８１１の処理を繰り返す。Ｓ８０４では、視点制御部２０５が、取得した操作情報が示すジェスチャーの種類に基づいて、仮想カメラの制御内容を決定する。ジェスチャーの種類に応じて仮想カメラの制御内容を異ならせることで、より多彩な制御が実現できるようになる。
【００４９】
ジェスチャーが１本の指によるスライド操作の場合、Ｓ８０５からＳ８０７の処理により、視点制御部２０５は上述の３次元点を中心として仮想カメラを旋回させる。３次元点は、仮想カメラの位置に応じた３次元座標（例えば仮想カメラの中心座標）を始点として仮想カメラの撮影方向へ仮想的に光線を飛ばし（レイキャスト）、その光線が被写体と衝突した点とする。別の言い方をすると、３次元点とは、タッチ時に表示されている仮想視点画像の中心位置に対応する３次元空間上の座標である。ただし、３次元点はこの例に限るものではない。
【００５０】
ジェスチャーがピンチイン操作及び／又はピンチアウト操作の場合、Ｓ８０８からＳ８０９の処理により、視点制御部２０５は仮想カメラの位置を前後方向に移動させる制御を行う。ジェスチャーが２本の指によるスライド操作の場合、Ｓ８１０からＳ８１１の処理により、視点制御部２０５は仮想カメラをスライド操作に応じて並行移動させる制御を行う。ジェスチャーが上記の３種類以外の場合、視点制御部２０５は、現在の仮想カメラの位置及び姿勢を変更せずにカメラパラメータを描画部２０６へ出力する。以下、各ジェスチャーに応じた制御の詳細について説明する。
【００５１】
Ｓ８０５では、１本の指によるスライド操作に応じて、視点制御部２０５が仮想カメラを旋回させる際の中心となる３次元点の座標を決定する。３次元点は３次元ベクトルＴとして表される。なお、１度３次元点を決定した後は、スライド状態が継続している間は３次元点を変更しなくて良い。
【００５２】
Ｓ８０６では、視点制御部２０５が、画面に触れている指の代表点の移動量ｄを取得し、仮想カメラの回転量を決定する。本実施形態の視点制御部２０５は、代表点の移動量ｄｘ、ｄｙにスケール係数ｓを乗算することで仮想カメラの移動量（水平方向の回転量θ及び垂直方向の回転量φ）を決定する。表示スクリーンの解像度を幅ｗとし、表示スクリーンの端から端までスライド操作した時の回転量を３６０度とすると、移動量ｄｘ、ｄｙから回転量θ、φ［ｄｅｇｒｅｅ］を決定するためのスケールｓは以下の式で表せる。
【００５３】
【数３】
2020119095.tif 000005
【００５４】
このスケール係数を用いて仮想カメラの回転量は以下の式で表せる。
θ＝ｓ×ｄｘ
φ＝ｓ×ｄｙ
【００５５】
Ｓ８０７では、視点制御部２０５が、上記の回転量に応じて変化した仮想カメラの位置及び姿勢の決定を行い、決定された位置及び姿勢を表すカメラパラメータを描画部２０６に出力する。変化前の仮想カメラの位置ｔｎ−１及び姿勢Ｒｎ−１を、３次元点Ｔを中心に水平方向にθだけ回転し、垂直方向にφだけ回転した場合の変化後の仮想カメラの位置ｔｎ、姿勢Ｒｎは以下の式で表すことができる。
Ｒｎ＝Ｒ（θ，φ）Ｒｎ−１
ｔｎ＝Ｒ（θ，φ）（ｔｎ−１−Ｔ）＋Ｔ
【００５６】
Ｒ（θ、φ）は水平方向にθ、垂直方向にφだけ回転することを表す回転行列である。ただし、３次元点Ｔを中心に回転させた場合の仮想カメラの位置及び姿勢を求める式はこれに限らない。例えば、所定の係数等を用いることで、指の移動量に対する仮想カメラの移動量を大きくすることも可能であるし、逆に、指の移動量に対する仮想カメラの移動量を小さくすることも可能である。
【００５７】
Ｓ８０８では、ユーザのピンチイン操作又はピンチアウト操作に応じて、視点制御部２０５が仮想カメラの前後方向の移動量の決定を行う。現在の画像フレームが表示される画面に触れている２本の指の距離をｄｎとし、直前の画像フレームが表示されているときの画面に触れている２本の指の距離をｄｎ−１とすると、その変化量ΔｄはΔｄ＝ｄｎ−ｄｎ−１である。視点制御部２０５は、その変化量に比例した移動量で仮想カメラをその撮影方向に対して前後に移動させる。移動量に関する係数（敏感度）をｍとすると、仮想カメラの移動量ΔｚはΔｚ＝ｍ×Δｄで表すことができる。つまり、ピンチイン操作及びピンチアウト操作による単位時間当たりの指の移動量に応じて、仮想カメラの移動量が決定される。なお、仮想カメラの移動量を決定する方法は上述の方法に限らない。例えば、仮想カメラから３次元点Ｔまでの距離に基づいて、表示スクリーン上での指の移動量に応じた３次元空間上での仮想カメラの移動量が決定されるようにしても良い。
【００５８】
Ｓ８０９では、視点制御部２０５が、上記の移動量に応じて変化した仮想カメラの位置及び姿勢の決定を行い、決定された位置及び姿勢を表すカメラパラメータを描画部２０６に出力する。前後方向にΔｚだけ移動した変化後の仮想カメラの位置は以下の式で表される。
【００５９】
【数４】
2020119095.tif 000006
【００６０】
なお、視点制御部２０５は、ピンチイン操作及びピンチアウト操作が行われた場合に、仮想カメラの位置を前後に移動させる代わりに、仮想カメラのズーム値又は画角を変化させてもよい。
【００６１】
Ｓ８１０では、２本の指によるスライド操作に応じて、視点制御部２０５が仮想カメラの上下左右方向に移動させる制御を行う。本実施形態では、表示スクリーン上における指の移動量と等しい距離だけ３次元点が表示スクリーン上で移動するように移動量が決定される。つまり、あるオブジェクト（例えばサッカー選手）の表示位置に２本の指でタッチして、その２本の指を表示スクリーン上でスライド移動させた場合、そのオブジェクトの表示位置と２本の指との位置関係が変化しないように、仮想カメラの位置が変化する。仮想カメラの姿勢に対して左右方向の移動量Δｘ，及び上下方向の移動量Δｙは、仮想カメラからタッチした際の３次元点までの距離をｒとすると以下の式で表すことができる。
【００６２】
【数５】
2020119095.tif 000007
【００６３】
Ｓ８１１では、視点制御部２０５が、上記の移動量に応じて変化した仮想カメラの位置及び姿勢の決定を行い、決定された位置及び姿勢を表すカメラパラメータを描画部２０６に出力する。左右方向にΔｘ、上下方向にΔｙだけ移動した場合の仮想カメラの位置及び姿勢は以下の式で表される。
【００６４】
【数６】
2020119095.tif 000008
【００６５】
なお、ジェスチャーの種類と処理の内容の対応関係は、上述に示した例に限らない。また、制御装置１００は、事前に行われたユーザによる設定に応じて、各ジェスチャーに応じた処理を有効にするか無効にするかを切り替えてもよい。
【００６６】
＜選手視点モードにおける仮想カメラの制御＞
図７のＳ７０７の処理の詳細を、図９を参照して説明する。Ｓ７０７においては、視点制御部２０５は、操作部２０１に対するユーザ操作に応じた操作情報を取得し、カメラパス取得部２０４から選手の視点に応じた仮想カメラの位置Ｔｃｎ及び姿勢Ｒｃｎを示すカメラパラメータを取得する。そして視点制御部２０５は、取得したカメラパラメータに対するオフセットを操作情報に基づいて算出し、算出したオフセットを加えたカメラパラメータを、仮想視点画像の描画に用いられる仮想カメラのカメラパラメータとして描画部２０６に出力する。ここで、仮想カメラの姿勢に関するオフセットは、水平方向の回転量θｎ、及び垂直方向の回転量φｎで表されるものとする。
【００６７】
Ｓ９０１では、視点制御部２０５は、操作部２０１に対するユーザ操作に応じて視点リセットを行うか否かを判定する。本実施形態では、表示スクリーン上の特定の領域（例えば図３における視点リセットボタン３０１が表示されている領域）がタップされた場合に、視点リセットを行うと判定される。リセット後の仮想カメラの位置及び姿勢は、選択された選手の顔の位置及び向きに合致する。また、仮想視点画像の動画の再生状態が一時停止中から再生中に変更された際にも、視点リセットが行われてもよい。再生時に仮想視点のオフセット情報をリセットすることで、一時停止中に行われた仮想視点の姿勢の変更がリセットされ、簡易に選手の視点に応じた画像の再生を再開することができる。
【００６８】
視点リセットを行うと判定された場合、Ｓ９０２において、視点制御部２０５が、仮想カメラの姿勢のオフセットと画角の変更をリセットする。すなわち視点制御部２０５は、表示スクリーン上の所定位置に対するユーザ操作が検出されたことに応じて、仮想視点の位置及び向きを基準となるオブジェクト（例えば選手）の位置及び向きに合致するように変更する。具体的には、カメラパスに対する姿勢のオフセットを表す回転量θｎ及びφｎを０とする。一方、画角ｆはあらかじめ定められた値に変更される。なお、カメラパスに画角情報が埋め込まれている場合は、仮想視点の画角ｆをその値に設定してもよい。
【００６９】
Ｓ９０３では、操作部２０１により検出されたジェスチャーそれぞれに対応する操作情報を視点制御部２０５が取得する。視点制御部２０５は、検出されたすべてのジェスチャーについて、Ｓ９０４からＳ９０８の処理を繰り返す。
【００７０】
Ｓ９０４では、視点制御部２０５が、取得した操作情報が示すジェスチャーの種類に基づいて、仮想カメラの制御内容を決定する。ジェスチャーの種類に応じて仮想カメラの制御内容を異ならせることで、より多彩な制御が実現できるようになる。
【００７１】
ジェスチャーがスライド操作の場合、Ｓ９０５からＳ９０７の処理により、視点制御部２０５はカメラ位置を変更せず仮想カメラの向きを変更する。ジェスチャーがピンチイン操作及び／又はピンチアウト操作の場合、Ｓ９０８の処理により、視点制御部２０５は仮想カメラの画角制御を行う。
【００７２】
ジェスチャーが上記の２種類以外の場合、視点制御部２０５は、以前の操作に応じて決定された仮想カメラの姿勢のオフセットを表す情報（回転角θｎ及びφｎ）を描画部２０６へ出力する。以下、各ジェスチャーに応じた制御の詳細について説明する。
【００７３】
Ｓ９０５では、視点制御部２０５が、再生モード制御部２０８により設定された仮想視点画像の再生状態に基づいて、仮想カメラの姿勢のオフセットを変更するか否かを判定する。再生状態が一時停止中であればＳ９０６へ進み、再生状態が一時停止中でなければオフセットを変更せずにＳ９０３へ戻る。
【００７４】
Ｓ９０６では、視点制御部２０５が画面に触れている指の代表点の移動量ｄを取得し、仮想カメラの姿勢のオフセットに関する回転量を決定する。本実施形態の視点制御部２０５は、Ｓ８０６の処理と同様にして、代表点の移動量ｄｘ及びｄｙにスケール係数ｓｏを乗算することで仮想カメラの回転量（水平方向の回転量Δθ及び垂直方向の回転量Δφ）を決定する。なお、表示スクリーン上における指の移動量と等しい距離だけ３次元点が表示スクリーン上で移動するように回転量が決定されてもよい。つまり、あるオブジェクトの表示位置をタッチして、その位置から指を表示スクリーン上でスライド移動させた場合、そのオブジェクトの表示位置と指の位置関係が変化しないように、仮想カメラが回転してもよい。また、選択したオブジェクトと仮想カメラの位置の距離と仮想カメラの画角とに基づいて回転量が算出されてもよい。例えば、選択したオブジェクトと仮想カメラの位置の距離が遠いほど回転量は小さくし、画角が狭いほど回転量は小さくする。なお、オブジェクトの選択はタッチ操作により行われてもよいし、あらかじめ設定されたボールなどの注目オブジェクトが選択されてもよい。
【００７５】
Ｓ９０７では、視点制御部２０５が、上記の回転量と前フレームで設定されていたオフセットとに基づいて、新たなオフセットを算出する。前フレームにおけるオフセットに対してさらに水平方向にΔθだけ回転させ、垂直方向にΔφだけ回転させる場合の変化後のオフセットは、水平方向の回転角θｎ及び垂直方向の回転角φｎを用いて以下の式で表すことができる。
θｎ＝θｎ−１＋Δθ
φｎ＝φｎ−１＋Δφ
【００７６】
Ｓ９０８では、視点制御部２０５が、ユーザのピンチイン操作又はピンチアウト操作に応じた、視点制御部２０５が仮想カメラの画角の決定を行い、決定した画角を描画部２０６に出力する。現在の画像フレームが表示される画面に触れている２本の指の距離をｄｎとし、直前の画像フレームが表示されているときの画面に触れている２本の指の距離をｄｎ−１とすると、その変化量ΔｄはΔｄ＝ｄｎ−ｄｎ−１である。視点制御部２０５は、その変化量に比例した変化量で仮想カメラの画角を変化させる。画角の変化量に関する係数（敏感度）をｐとすると、仮想カメラの画角の変化量ΔｆはΔｆ＝ｐ×Δｄで表すことができる。つまり、ピンチイン操作及びピンチアウト操作による単位時間当たりの指の移動量に応じて、仮想カメラの画角の変化量が決定される。そして視点制御部２０５は、算出した変化量Δｆを現在の画角ｆに加算し、新たな画角として出力する。なお、画角の変化量を決定する方法は上述の方法に限らない。例えば、仮想カメラから３次元点Ｔまでの距離に基づいて、表示スクリーン上での指の移動量に応じた画角の変化量が決定されるようにしても良い。なお、視点制御部２０５は、ピンチイン操作及びピンチアウト操作が行われた場合に、仮想カメラの画角を変更する代わりに、仮想カメラの前後方向における位置のオフセットを変更してもよい。
【００７７】
Ｓ９０９では、視点制御部２０５が、ユーザの操作に応じて決定されたオフセットをカメラパス取得部２０４から取得した基準となるカメラパス（特定の選手の位置姿勢に応じたカメラパス）に加算して、オフセットが適用された仮想カメラの位置姿勢を算出する。そして、その結果を表すオフセット適用後のカメラパラメータを描画部２０６に出力する。オフセットの加算は、基準となるカメラパスに応じた仮想カメラの姿勢Ｒｃｎが表す向きベクトルを水平方向にθｎ、垂直方向にφｎだけ回転し、その結果を回転行列に変換することで行う。このとき、オフセットの適用の基準となるカメラパスは、仮想カメラの位置姿勢が時間軸方向にスムージング処理されたカメラパスであってもよい。スムージング処理することにより、基準となる選手が走っているときの上下の振動などによる画像のブレが少なくなり、視聴者が仮想視点画像を快適に視聴できるようになる。ただし、動画が一時停止しているときには、ブレが発生しないため、スムージング処理が行われていないカメラパスに対してオフセットを適用してもよい。これにより、動画再生中には快適に視聴できる画像が表示でき、一時停止中には選手の視界をより正確に再現した画像を表示することができる。
【００７８】
なお、ジェスチャーの種類と処理の内容の対応関係は、上述に示した例に限らない。また、制御装置１００は、事前に行われたユーザによる設定に応じて、各ジェスチャーに応じた処理を有効にするか無効にするかを切り替えてもよい。また、上記の例では、仮想視点画像の動画の再生状態が一時停止中である場合にはユーザ操作に応じて仮想カメラのオフセットが変更され、再生中である場合にはオフセットが変更されないものとした。ただしこれに限らず、再生中であっても一時停止中と同様にオフセットを変更してもよい。また、再生中である場合に、ユーザの指が表示スクリーンに触れている間はスライド操作に応じたオフセットを適用し、ユーザの指が表示スクリーンから離れたことに応じてオフセットをリセットしてもよい。
【００７９】
以上説明した通り、本実施形態の制御装置１００は、ユーザ操作に応じて、仮想視点画像の生成に係る仮想視点の位置及び向きのうち少なくとも何れか一方を制御する。ここで制御装置１００は、ユーザ操作に応じた仮想視点の制御内容を、仮想視点画像の再生モードに応じて切り替える。このような構成によれば、ユーザは、従来よりも簡易かつ多様な仮想視点に関する制御を行うことができるようになる。例えば、ユーザによる操作が行われない間は仮想視点が変化しない再生モード（例えば自由操作モード）と、ユーザによる操作が行われない間も仮想視点が変化する再生モード（例えば選手視点モード）とでは、ユーザが求める仮想視点の制御内容が異なる。このような場合に、同一の種類のユーザ操作によって各モードに適した内容の仮想視点制御が行われることにより、ユーザが多種類の複雑な操作を使いこなす必要がなくなり、仮想視点の設定がより簡易に行えるようになる。
【００８０】
また、制御装置１００は、選手視点モードにおいて、仮想視点の位置及び向きの経時的な変化を表す情報である所定のカメラパスを取得し、当該所定のカメラパスを基準とした仮想視点の位置及び向きの調整量（オフセット）をユーザ操作に応じて設定する。そして制御装置１００は、上記所定のカメラパスと設定されたオフセットとに基づいて決まる仮想視点の位置及び向きに応じた仮想視点画像を表示面に表示させる。このような構成によれば、所定のカメラパスが表す仮想視点の特徴を一部維持しつつ、ユーザ操作に応じて仮想視点の位置及び向きの調整をすることができる。例えば所定のカメラパスとして特定の選手の視点を表すカメラパスを用いることにより、その選手の視界を再現した仮想視点画像を表示させることができる。また、この選手に応じたカメラパスにユーザ操作に応じたオフセットを適用することにより、仮想視点画像を視聴するユーザは、選手が見えていなかったもの（選手が仮に別の方向を向いていた場合に見えていたはずのもの）を容易に確認することができる。
【００８１】
なお、本実施形態では、タッチパネルを介してユーザ操作が行われる場合を中心に説明したが、ユーザ操作の方法はこれに限定されず、制御装置１００はマウスのジェスチャーをユーザ操作として取得しても構わない。例えば、上記の実施形態におけるタップ操作を左クリック、ダブルタップ操作を左ボタンのダブルクリック、１本の指によるスライド操作を左ボタンによるスライド操作に割り当ててもよい。また、２本の指によるスライド操作を右ボタンによるスライド操作、ピンチイン操作及びピンチアウト操作をマウスのホイール操作に割り当ててもよい。また、制御装置１００は、ジョイスティックなどその他のコントローラを介したユーザ操作に基づいて仮想視点を制御してもよい。
【００８２】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８３】
１００  表示制御装置
２０１  操作部
２０２  取得データ制御部
２０３  データ取得部
２０４  カメラパス取得部
２０５  視点制御部
２０６  描画部
２０７  表示部
【図１】
2020119095.tif 000009
【図２】
2020119095.tif 000010
【図３】
2020119095.tif 000011
【図４】
2020119095.tif 000012
【図５】
2020119095.tif 000013
【図６】
2020119095.tif 000014
【図７】
2020119095.tif 000015
【図８】
2020119095.tif 000016
【図９】
2020119095.tif 000017