(58)【調査した分野】(Int.Cl.,DB名)
複数の撮影装置による異なる位置からの撮影により得られる複数の画像データに基づいて生成される仮想視点画像に対応する仮想視点の移動経路を規定する設定を受け付ける受付手段と、
前記仮想視点画像を生成するために用いられる前記仮想視点の移動経路を前記受付手段により受け付けられた設定が規定する移動経路から他の移動経路へ変更すべきかを、前記複数の画像データに含まれる画像データの内容と前記複数の撮影装置に含まれる撮影装置の異常との少なくとも何れかに基づいて判断する判断手段と、
前記判断手段による判断に応じて前記仮想視点の移動経路を変更する変更手段と、を有することを特徴とする情報処理装置。
前記判断手段は、前記検出手段により異常状態にある撮影装置が所定数以上検出された場合に、前記仮想視点の移動経路を変更すべきと判断することを特徴とする請求項5に記載の情報処理装置。
前記判断手段は、前記検出手段により異常状態にある期間が所定時間以上である撮影装置が検出された場合に、前記仮想視点の移動経路を変更すべきと判断することを特徴とする請求項5に記載の情報処理装置。
前記変更手段は、前記受付手段により受け付けられた設定が規定する前記仮想視点の移動経路に応じた仮想視点画像に含まれる所定のオブジェクトが、前記変更手段により変更された後の前記仮想視点の移動経路に応じた仮想視点画像にも含まれるように、前記仮想視点の移動経路を変更することを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
前記変更手段は、前記仮想視点の移動経路の変更の前後で前記仮想視点の高さが維持されるように、前記仮想視点の移動経路を変更することを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
前記変更手段は、前記受付手段により受け付けられた設定が規定する前記仮想視点の移動経路に応じた仮想視点画像における所定のオブジェクトの大きさと、前記変更手段により変更された後の前記仮想視点の移動経路に応じた仮想視点画像における前記所定のオブジェクトの大きさとが一致するように、前記仮想視点の移動経路を変更することを特徴とする請求項1乃至9の何れか1項に記載の情報処理装置。
前記変更手段は、候補となる複数の移動経路の優先度に基づいて前記仮想視点の移動経路を変更することを特徴とする請求項1乃至10の何れか1項に記載の情報処理装置。
前記判断手段は、前記仮想視点の移動経路を変更すべきかを、仮想視点画像における前景の占める割合に基づいて判断することを特徴とする請求項1乃至11の何れか1項に記載の情報処理装置。
前記変更手段により変更された前記仮想視点の移動経路に応じた仮想視点画像を表示画面に表示させる表示制御手段を有することを特徴とする請求項1乃至13の何れか1項に記載の情報処理装置。
前記複数の画像データに基づいて仮想視点画像を生成する生成装置へ、前記変更手段により変更された前記仮想視点の移動経路を示す情報を出力する出力手段を有することを特徴とする請求項1乃至14の何れか1項に記載の情報処理装置。
前記変更手段により変更された前記仮想視点の移動経路に応じた仮想視点画像を前記複数の画像データに基づいて生成する生成手段を有することを特徴とする請求項1乃至14の何れか1項に記載の情報処理装置。
複数の撮影装置による異なる位置からの撮影により得られる複数の画像データに基づいて生成される仮想視点画像に対応する仮想視点の移動経路を規定する設定を受け付ける受付工程と、
前記仮想視点画像を生成するために用いられる前記仮想視点の移動経路を前記受付工程において受け付けられた設定が規定する移動経路から他の移動経路へ変更すべきかを、前記複数の画像データに含まれる画像データの内容と前記複数の撮影装置に含まれる撮影装置の異常との少なくとも何れかに基づいて判断する判断工程と、
前記判断工程における判断に応じて前記仮想視点の移動経路を変更する変更工程と、を有することを特徴とする情報処理方法。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態について図面に基づいて説明する。
【0009】
<実施形態1>
競技場(スタジアム)やコンサートホール等の施設に複数のカメラ及びマイクを設置し撮影及び集音を行う画像処理システムについて、
図1を用いて説明する。画像処理システム100は、センサシステム110a−センサシステム110z、画像コンピューティングサーバ200、コントローラ300、スイッチングハブ180、及びエンドユーザ端末190を有する。
図1に示される画像処理システムは、情報処理システムの一例である。
コントローラ300は、制御ステーション310と仮想カメラ操作UI330とを有する。制御ステーション310は、画像処理システム100を構成するそれぞれのブロックに対してネットワーク310a−310c、180a、180b、及び170a−170yを通じて動作状態の管理及びパラメータ設定制御等を行う。制御ステーション310は、センサシステム110の機器に異常を検出した場合、故障カメラ情報を生成する。故障カメラ情報には、異常のあったカメラを識別するための情報と異常期間とが記載されている。故障カメラ情報は、仮想視点画像生成時に利用され、その用途は異常のあったカメラの出力映像を仮想視点画像生成に使用しないようにするためである。ここで、ネットワークはEthernet(登録商標)であるIEEE標準準拠のGbE(ギガビットイーサーネット(登録商標))や10GbEでもよいし、インターコネクトInfiniband、産業用イーサーネット等を組合せて構成されてもよい。また、これらに限定されず、他の種別のネットワークであってもよい。コントローラ300は、情報処理装置の一例である。
【0010】
最初に、センサシステム110a−センサシステム110zの26セットの画像及び音声をセンサシステム110zから画像コンピューティングサーバ200へ送信する動作を説明する。本実施形態の画像処理システム100は、センサシステム110a−センサシステム110zがデイジーチェーンにより接続されている。
本実施形態において、特別な説明がない場合は、センサシステム110aからセンサシステム110zまでの26セットのシステムを区別せずセンサシステム110と記載する。各センサシステム110内の装置についても同様に、特別な説明がない場合は区別せず、マイク111、カメラ112、雲台113、外部センサ114、及びカメラアダプタ120と記載する。センサシステムの台数として26セットと記載しているが、あくまでも一例であり、台数をこれに限定するものではない。本実施形態では、特に断りがない限り、画像という文言が、動画と静止画との概念を含むものとして説明する。すなわち、本実施形態の画像処理システム100は、静止画及び動画の何れについても処理可能である。また、本実施形態では、画像処理システム100により提供される仮想視点画像には、仮想視点画像と仮想視点音声とが含まれる例を中心に説明するが、これに限らない。例えば、仮想視点画像に音声が含まれていなくてもよい。また例えば、仮想視点画像に含まれる音声が、仮想視点に最も近いマイクにより集音された音声であってもよい。また、本実施形態では、説明の簡略化のため、部分的に音声についての記載を省略しているが、基本的に画像と音声とは共に処理されるものとする。
【0011】
センサシステム110a−センサシステム110zは、それぞれ1台ずつのカメラ112a−カメラ112zを有する。即ち、画像処理システム100は、被写体を複数の方向から撮影するための複数のカメラを有する。複数のセンサシステム110同士はデイジーチェーンにより接続される。この接続形態により、撮影画像の4Kや8K等への高解像度化及び高フレームレート化に伴う画像データの大容量化において、接続ケーブル数の削減や配線作業の省力化ができる効果がある。
これに限らず、接続形態として、各センサシステム110a−110zがスイッチングハブ180に接続されて、スイッチングハブ180を経由してセンサシステム110間のデータ送受信を行うスター型のネットワーク構成としてもよい。
また、
図1では、デイジーチェーンとなるようセンサシステム110a−110zの全てがカスケード接続されている構成を示したがこれに限定するものではない。例えば、複数のセンサシステム110をいくつかのグループに分割して、分割したグループ単位でセンサシステム110間をデイジーチェーン接続してもよい。そして、分割単位の終端となるカメラアダプタ120がスイッチングハブに接続されて画像コンピューティングサーバ200へ画像の入力を行うようにしてもよい。このような構成は、スタジアムにおいて特に有効である。例えば、スタジアムが複数階で構成され、フロア毎にセンサシステム110を配備する場合が考えられる。この場合に、フロア毎、又はスタジアムの半周毎に画像コンピューティングサーバ200への入力を行うことができ、全センサシステム110を1つのデイジーチェーンで接続する配線が困難な場所でも設置の簡便化及びシステムの柔軟化を図ることができる。
【0012】
また、デイジーチェーン接続されて画像コンピューティングサーバ200へ画像入力を行うカメラアダプタ120が1つであるか2つ以上であるかに応じて、画像コンピューティングサーバ200での画像処理の制御が切り替えられる。すなわち、画像コンピューティングサーバ200は、センサシステム110が複数のグループに分割されているかどうかに応じて制御を切り替えることができる。画像入力を行うカメラアダプタ120が1つの場合は、デイジーチェーン接続で画像伝送を行いながら競技場全周画像が生成されるため、画像コンピューティングサーバ200において全周の画像データが揃うタイミングは同期がとられている。すなわち、センサシステム110がグループに分割されていなければ、画像コンピューティングサーバ200は、特別な同期制御を行わなくても全周の画像データが揃うタイミングの同期をとることができる。
しかし、画像入力を行うカメラアダプタ120が複数になる(センサシステム110がグループに分割される)場合は、それぞれのデイジーチェーンのレーン(経路)によって遅延が異なる場合が考えられる。そのため、画像コンピューティングサーバ200において全周の画像データが揃うまで待って同期をとる同期制御によって、画像データの集結をチェックしながら後段の画像処理を行う必要がある。
本実施形態では、センサシステム110aはマイク111a、カメラ112a、雲台113a、外部センサ114a、及びカメラアダプタ120aを有する。この構成に限定するものではなく、少なくとも1台のカメラアダプタ120aと、1台のカメラ112a又は1台のマイク111aを有していればよい。また例えば、センサシステム110aは1台のカメラアダプタ120aと複数のカメラ112aとで構成されてもよいし、1台のカメラ112aと複数のカメラアダプタ120aとで構成されてもよい。即ち、画像処理システム100内の複数のカメラ112と複数のカメラアダプタ120とはN対M(NとMは共に1以上の整数)で対応する。また、センサシステム110は、マイク111a、カメラ112a、雲台113a、及びカメラアダプタ120a以外の装置を含んでいてもよい。また、カメラ112とカメラアダプタ120とが一体となって構成されていてもよい。更に、カメラアダプタ120の機能の少なくとも一部をフロントエンドサーバ230が有していてもよい。本実施形態では、センサシステム110b−110zについては、センサシステム110aと同様の構成なので説明を省略する。センサシステム110aと同じ構成に限定されるものではなく、其々のセンサシステム110が異なる構成でもよい。
【0013】
マイク111aにて集音された音声とカメラ112aにて撮影された画像とは、カメラアダプタ120aにおいて後述の画像処理が施された後、デイジーチェーン170aを通してセンサシステム110bのカメラアダプタ120bに伝送される。同様にセンサシステム110bは、集音された音声と撮影された画像とを、センサシステム110aから取得した画像及び音声と合わせてセンサシステム110cに伝送する。
前述した動作を続けることにより、センサシステム110a−センサシステム110zが取得した画像及び音声は、センサシステム110zからネットワーク180bを用いてスイッチングハブ180に伝わる。そして、その後、画像及び音声は、画像コンピューティングサーバ200へ伝送される。
本実施形態では、カメラ112a−112zとカメラアダプタ120a−120zとが分離された構成にしているが、同一筺体で一体化されていてもよい。その場合、マイク111a−111zは一体化されたカメラ112に内蔵されてもよいし、カメラ112の外部に接続されていてもよい。
【0014】
次に、画像コンピューティングサーバ200の構成及び動作について説明する。本実施形態の画像コンピューティングサーバ200は、センサシステム110zから取得したデータの処理を行う。画像コンピューティングサーバ200は、フロントエンドサーバ230、データベース250(以下、DBとも記載する。)、バックエンドサーバ270、タイムサーバ290を有する。
タイムサーバ290は、時刻及び同期信号を配信する機能を有し、スイッチングハブ180を介してセンサシステム110a−センサシステム110zに時刻及び同期信号を配信する。時刻及び同期信号を受信したカメラアダプタ120a−120zは、カメラ112a−112zを時刻及び同期信号を基にGenlockさせ画像フレーム同期を行う。即ち、タイムサーバ290は、複数のカメラ112の撮影タイミングを同期させる。これにより、画像処理システム100は同じタイミングで撮影された複数の撮影画像に基づいて仮想視点画像を生成できるため、撮影タイミングのずれによる仮想視点画像の品質低下を抑制できる。本実施形態ではタイムサーバ290が複数のカメラ112の時刻同期を管理するものとするが、これに限らず、時刻同期のための処理を各カメラ112又は各カメラアダプタ120が独立して行ってもよい。
フロントエンドサーバ230は、センサシステム110zから取得した画像及び音声から、セグメント化された伝送パケットを再構成してデータ形式を変換した後に、カメラの識別子やデータ種別、フレーム番号に応じてデータベース250に書き込む。
次に、バックエンドサーバ270では、仮想カメラ操作UI330から視点の指定を受け付け、受け付けられた視点に基づいて、データベース250から対応する画像及び音声データを読み出し、レンダリング処理を行って仮想視点画像を生成する。また、バックエンドサーバ270は、制御ステーション310から故障カメラ情報を取得する。
画像コンピューティングサーバ200の構成はこれに限らない。例えば、フロントエンドサーバ230、データベース250、及びバックエンドサーバ270のうち少なくとも2つが一体となって構成されていてもよい。また、フロントエンドサーバ230、データベース250、及びバックエンドサーバ270の少なくとも何れかが複数含まれていてもよい。また、画像コンピューティングサーバ200内の任意の位置に上記の装置以外の装置が含まれていてもよい。更に、画像コンピューティングサーバ200の機能の少なくとも一部をエンドユーザ端末190や仮想カメラ操作UI330が有していてもよい。
【0015】
レンダリング処理された画像は、バックエンドサーバ270からエンドユーザ端末190に送信され、エンドユーザ端末190を操作するユーザは視点の指定に応じた画像閲覧及び音声視聴ができる。すなわち、バックエンドサーバ270は、複数のカメラ112により撮影された撮影画像(複数視点画像)と視点情報とに基づく仮想視点画像を生成する。より具体的には、バックエンドサーバ270は、例えば複数のカメラアダプタ120により複数のカメラ112による撮影画像から抽出された所定領域の画像データとユーザ操作により指定された視点とに基づいて、仮想視点画像を生成する。そしてバックエンドサーバ270は、生成した仮想視点画像をエンドユーザ端末190に提供する。本実施形態における仮想視点画像は、仮想的な視点から被写体を撮影した場合に得られる画像である。言い換えると、仮想視点画像は、指定された視点における見えを表す画像であるとも言える。仮想的な視点(仮想視点)は、ユーザにより指定されてもよいし、画像解析の結果等に基づいて自動的に指定されてもよい。すなわち仮想視点画像には、ユーザが任意に指定した視点に対応する任意視点画像(自由視点画像)が含まれる。また、複数の候補からユーザが指定した視点に対応する画像や、装置が自動で指定した視点に対応する画像も、仮想視点画像に含まれる。本実施形態では、仮想視点画像に音声データ(オーディオデータ)が含まれる場合の例を中心に説明するが、必ずしも音声データが含まれていなくてもよい。また、バックエンドサーバ270は、仮想視点画像をH.264やHEVCに代表される標準技術により圧縮符号化したうえで、MPEG−DASHプロトコルを使ってエンドユーザ端末190へ送信してもよい。また、仮想視点画像は、非圧縮でエンドユーザ端末190へ送信されてもよい。特に圧縮符号化を行う前者はエンドユーザ端末190としてスマートフォンやタブレットを想定しており、後者は非圧縮画像を表示可能なディスプレイを想定している。すなわち、バックエンドサーバ270は、エンドユーザ端末190の種別に応じて画像フォーマットを切り替え可能である。また、画像の送信プロトコルはMPEG−DASHに限らず、例えば、HLS(HTTP Live Streaming)やその他の送信方法を用いてもよい。
【0016】
この様に、画像処理システム100は、映像収集ドメイン、データ保存ドメイン、及び映像生成ドメインという3つの機能ドメインを有する。映像収集ドメインはセンサシステム110−110zを含む。データ保存ドメインはデータベース250、フロントエンドサーバ230及びバックエンドサーバ270を含む。映像生成ドメインは仮想カメラ操作UI330及びエンドユーザ端末190を含む。本構成に限らず、例えば、仮想カメラ操作UI330が直接、センサシステム110a−110zから画像を取得することもできる。しかしながら、本実施形態では、センサシステム110a−110zから直接画像を取得する方法ではなくデータ保存機能を中間に配置する方法をとる。より具体的には、フロントエンドサーバ230は、センサシステム110a−110zが生成した画像データや音声データ及びそれらのデータのメタ情報をデータベース250の共通スキーマ及びデータ型に変換している。これにより、センサシステム110a−110zのカメラ112が他機種のカメラに変化しても、変化した差分をフロントエンドサーバ230が吸収し、データベース250に登録することができる。このことによって、カメラ112が他機種カメラに変わった場合に、仮想カメラ操作UI330が適切に動作しないおそれを低減できる。
また、仮想カメラ操作UI330は、直接、データベース250にアクセスせずにバックエンドサーバ270を介してアクセスする構成である。バックエンドサーバ270で画像生成処理に係わる共通処理を行い、操作UIに係わるアプリケーションの差分部分を仮想カメラ操作UI330で行っている。このことにより、仮想カメラ操作UI330の開発において、UI操作デバイスや、生成したい仮想視点画像を操作するUIの機能要求に対する開発に注力することができる。また、バックエンドサーバ270は、仮想カメラ操作UI330の要求に応じて画像生成処理に係わる共通処理を追加又は削除することもできる。このことによって仮想カメラ操作UI330の要求に柔軟に対応することができる。
このように、画像処理システム100においては、被写体を複数の方向から撮影するための複数のカメラ112による撮影に基づく画像データに基づいて、バックエンドサーバ270により仮想視点画像が生成される。本実施形態における画像処理システム100は、上記で説明した物理的な構成に限定される訳ではなく、論理的に構成されていてもよい。
【0017】
次に
図1に記載のシステムにおけるコントローラ300のハードウェア構成の一例を
図2に示す。
図2に示すように、コントローラ300は、ハードウェア構成として、CPU10と、メモリ11と、通信I/F12と、がバスを介して互いに通信可能に接続されている。CPU10は、コントローラ300の全体を制御する。CPU10は、メモリ11に記憶されたプログラムに基づき処理を実行することによって、制御ステーション310、仮想カメラ操作UI330の機能、及び後述する
図6、
図10のフローチャートの処理が実現される。メモリ11は、プログラムやCPU10がプログラムに基づき処理を実行する際に利用するデータ等を記憶する。通信I/F12は、コントローラ300と他の装置との通信を制御する。コントローラ300のハードウェア構成は一例であって、例えば、コントローラ300は、CPUやメモリ、通信I/F等を複数有していてもよい。複数のCPUがプログラムに基づき複数のメモリを使用しながら処理を実行するようにしてもよい。画像コンピューティングサーバ200やエンドユーザ端末190も少なくともハードウェア構成として、CPUとメモリと通信I/Fを有する。そして、各装置のCPUが各装置のメモリに記憶されたプログラムに基づき処理を実行することによって各装置の機能等が実現される。また、エンドユーザ端末190は、ハードウェア構成として、更に、ディスプレイ等の表示装置とマウス及びキーボード等の入力装置とを含む。後述する
図5、
図11、
図12等の画面は、エンドユーザ端末190の表示装置に表示される。
【0018】
次に
図1に記載のシステムにおける仮想カメラ操作UI330の機能構成について、
図3を用いて説明する。
まず仮想カメラ801について
図4(a)を用いて説明する。仮想カメラ801は、設置されたどのカメラ112とも異なる視点において撮影を行うことができる仮想的なカメラである。即ち、画像処理システム100において生成される仮想視点画像が、仮想カメラ801による撮影画像である。
図4(a)において、円周上に配置された複数のセンサシステム110それぞれがカメラ112を有している。例えば、仮想視点画像を生成することにより、あたかもサッカーゴールの近くにあるカメラで撮影されたかのような画像を生成することができる。仮想カメラ801の撮影画像である仮想視点画像は、設置された複数のカメラ112の画像を画像処理することで生成される。オペレータ(ユーザ)は仮想カメラ801の位置等、操作することで、自由な視点からの撮影画像を得ることができる。また、オペレータが、仮想カメラ801のカメラパスを予め設定しておくようにしておくことによって、特定のシーンが検出された場合、カメラパスが選択されて仮想視点画像が生成される。仮想カメラ801は、仮想撮影装置の一例である。
送信部811は、オペレータが指定したカメラパスをパッキングし、仮想カメラ操作UI330へ送信する。送信部811は、エンドユーザ端末190の画面上でオペレータからカメラパスの設定を受け付けると、処理を開始し、仮想カメラパスを仮想カメラ操作UI330の取得部812へ送信する。カメラパスの設定方法については後述する。仮想カメラパスとは、世界座標系の3次元空間上にある曲線を表現した数式と、注目オブジェクトの位置を示す世界座標値と、である。曲線数式は、スプラインによるデータ点を結ぶことで算出される。数式の算出方法は、空間曲線を表現できるならば他の方法を利用してもよく、特に限定されない。
【0019】
次に仮想カメラ操作UI330内について説明する。取得部812は、エンドユーザ端末190からパッキングされて送られたデータをアンパック(解凍)し、仮想カメラパスを取得する。取得部812は、送信部811から仮想カメラパスを取得すると、導出部813へ仮想カメラパスを送出する。
導出部813は、取得した仮想カメラパスから仮想カメラパラメータに変換する。仮想カメラパラメータとは、例えば、外部パラメータを表す行列と内部パラメータを表す行列とが用いられる。ここで、仮想カメラ801の位置と姿勢とは外部パラメータに含まれ、ズーム値は内部パラメータに含まれる。仮想カメラパラメータは、1フレームごと位置や姿勢を表す情報の列である。例えば、仮想視点画像が60フレーム/秒のフレームレートの設定である場合、仮想カメラパラメータは1/60秒毎のデータ列となる。つまり
図4(b)の例では、カメラパス802上における7フレーム分の仮想カメラパラメータとなり、7/60秒分のデータ列であることを表している。導出部813は、取得部812から仮想カメラパスを取得すると、仮想カメラ801の位置や姿勢等を表す仮想カメラパラメータを導出し、マッピング部814へ仮想カメラパラメータを送出する。仮想カメラパラメータは、演算によって導出されてもよいし、ルックアップテーブルの参照等によって導出されてもよい。
【0020】
マッピング部814は、実カメラマッピング情報を生成する。実カメラマッピングとは、仮想視点画像を生成する際、どのカメラ112の映像が必要かを導出することを指す。例えば、1秒分の仮想カメラパラメータの場合、60個のパラメータ毎に対応するカメラ112が導出される。マッピング部814は、導出部813から仮想カメラパラメータを取得すると、バックエンドサーバ270から取得したカメラ配置情報を利用して、実カメラマッピング処理を行う。マッピング部814によるカメラ配置情報の取得のタイミングは、導出部813から仮想カメラパラメータを取得した後が望ましい。しかし、実カメラの画角や向きに変更がない場合、例えば実カメラの移動や雲台のパンチルト角度、実カメラのズームといった変更がない場合、マッピング部814は、カメラ配置情報を事前に取得しておいてもよく、特に限定されない。マッピング部814は、実カメラマッピング処理が完了すると、仮想カメラパラメータと実カメラマッピング情報とを判断部815へ送出する。
判断部815は、オペレータが指定した仮想カメラパスの修正が必要か否かを判断する。判断部815は、マッピング部814から仮想カメラパラメータと実カメラマッピング情報とを取得すると、バックエンドサーバ270から取得した故障カメラ情報を取得する。次に、判断部815は、取得した故障カメラ情報を用いて、仮想視点画像を生成する期間において出力映像に異常のあるカメラ112を確認する。その後、判断部815は、故障カメラ情報に記載のカメラ112が、実カメラマッピング情報に記載のカメラ112に有るか否かを検出する。故障カメラ情報に記載のカメラ112が、実カメラマッピング情報に記載のカメラ112に有る場合は、仮想視点画像の生成の際、故障したカメラの映像を使用してしまうため、品位のよくない画像となることを意味する。よって、判断部815は、ユーザが指定したカメラパスは修正が必要であると判断し、修正部816へ仮想カメラパス修正要求を送出する。故障カメラ情報に記載のカメラ112が、実カメラマッピング情報に記載のカメラ112に無い場合は、判断部815は、カメラパスの修正は不要であると判断し、送信部817へ仮想カメラパラメータを送出する。本実施形態では、判断部815は、故障カメラを使用していた場合にカメラパスの修正が必要と判断している。しかし、例えば、故障期間が1/60秒の場合、判断部815は、1フレームの映像が仮想視点画像へ及ぼす影響は小さいので修正は不要と判断するようにしてもよい。他の例として、判断部815は、故障カメラが1台のみの場合は仮想視点画像生成可能なので修正は不要と判断するようにしてもよい。また、判断部815は、故障カメラがデイジーチェーン接続上で2台以上連続していた場合は仮想視点画像の生成が不可能なので修正必要と判断するようにしてもよい。つまり、判断部815は、故障の状況に応じて仮想視点画像への影響度を鑑みて修正要否を判断するようにしてもよい。修正要否判断の方法は、仮想視点画像の品位を保つことができるのであれば、特に限定されない。判断部815の処理は、カメラパスを修正する必要があるか否かを判断する判断処理の一例である。
【0021】
修正部816は、オペレータが指定した仮想カメラパスを修正し、新しいカメラパスを生成する。修正部816は、判断部815から仮想カメラパス修正要求を取得すると、取得部812から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。修正処理の詳細は後述する。修正が完了すると、修正部816は、修正したカメラパスを導出部813へ送出する。
送信部817は、最終決定した仮想カメラパラメータをパッキングし、バックエンドサーバ270へ送信する。最終決定した仮想カメラパラメータとは、仮想カメラパスの修正が不要と判断された場合は、オペレータが指定した仮想カメラパスのパラメータを意味し、修正が必要と判断された場合は、修正後の仮想カメラパスのパラメータを意味する。つまり、送信部817は、判断部815から取得した仮想カメラパラメータをバックエンドサーバ270へ送出する。バックエンドサーバ270は、受信した仮想カメラパラメータを用いて、仮想視点画像及び仮想視点音声を生成する。
その後、エンドユーザ端末190の出力部818は、バックエンドサーバ270から受け取った仮想カメラ画像・音声を出力する。
【0022】
次に、エンドユーザ端末190の画面上で設定するカメラパスの設定方法について、
図5を用いて説明する。
図5は、
図4(a)のカメラ配置や撮影内容を例にしている。表示画面は、カメラパスリスト400、カメラパス設定画面402、仮想視点画像表示画面405を含む。カメラパスリスト400は、注目オブジェクト403とカメラパス404との組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面402上に表示する映像を、どのカメラ112の映像にするか選択する。
図5の例では、オペレータは、カメラ112eを選択している。次に、オペレータは、カメラパス設定画面402上で注目オブジェクト403を指定する。より具体的には、エンドユーザ端末190に接続されているマウス等の入力装置を使用してカーソルを移動し、カメラパス設定画面402上の選手407にカーソルを合わせてクリックする。次に、オペレータは、カメラパスリスト400から一つを選択する。選択後、選択されたカメラパスは太枠線401で表示され、更にカメラパス設定画面402上に仮想カメラの移動経路を示す矢印であるカメラパス404が自動で表示される。
図5では、選手407を正面から時計周りに半周移動することを示している。このとき、仮想カメラの向きは注目オブジェクトである選手407が画面中心に表示されるような向きとなる。その後、オペレータは、必要に応じてカメラパス設定画面402のカメラパス404の矢印を微修正する。より具体的には、オペレータは、仮想視点開始位置、仮想視点終了位置、仮想カメラの移動経路(位置、高さ)を決定する。最後に、オペレータは、カメラパスの修正が完了したらOKボタンを選択すると、仮想視点画像表示画面405上に、指定したカメラパスに基づいて生成された仮想視点画像が表示される。バー406は、仮想視点の位置を決定するためのものである。左端が選択されている場合は、仮想視点開始位置であり、右端が選択されている場合は、仮想視点終了位置となる。
【0023】
次に、仮想カメラパスの修正処理の詳細について説明する。
図6は、修正部816の情報処理の一例を示すフローチャートである。修正部816は、判断部815から仮想カメラパス修正要求を取得すると、取得部812から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。つまり、仮想カメラパスの修正とは、より具体的には仮想カメラの経路を示す空間曲線の修正を指す。まず、S801において、修正部816は、仮想カメラパスの開始位置及び終了位置の仮想視点画像の生成に必要な実際のカメラ112のどれを利用するかを確認する。その後、修正部816は、開始位置で利用するカメラ112から終了位置で利用するカメラ112へ移動可能な実カメラの経路を探索する。このとき、修正部816は、故障カメラを通らない経路となるように探索する。修正部816は、経路の探索を、ダイクストラ法を用いた最短経路導出によって求める。探索の手法については、特に限定されない。修正部816は、経路探索の結果、修正経路が有るか否かを判断する。修正部816は、修正経路が無いと判断した場合(S802においてNo)、仮想カメラパスの修正ができないと判断し、
図6に示すフローチャートの処理を終了する。修正部816は、修正経路が有ると判断した場合(S802においてYes)、S803に進む。S803において、修正部816は、ユーザ指定仮想カメラ位置と注目オブジェクトとの間の距離を算出する。修正部816は、仮想カメラ位置と注目オブジェクト位置との世界座標を取得し、座標値間の距離を算出することで距離を求める。S804において、修正部816は、算出した距離特徴と類似度の高いカメラパスを抽出する。これは、ユーザが指定した仮想カメラ位置と等距離となるように修正することで、修正したカメラパスにおいても被写体の大きさ(サイズ)を維持した状態で仮想視点画像をユーザへ提供できるためである。S805において、修正部816は、S804で抽出したカメラパスの内、故障カメラを利用していないカメラパスを抽出する。距離特徴は、特徴量の一例である。
【0024】
S806において、修正部816は、故障カメラを利用していないカメラパスを抽出できたか否かを判断する。修正部816は、故障カメラを利用していないカメラパスを抽出できたと判断した場合(S806においてYes)、S807に進み、故障カメラを利用していないカメラパスを抽出できなかったと判断した場合(S806においてNo)、S813に進む。S807において、修正部816は、ユーザ指定した仮想カメラパスにおける仮想カメラの高さ位置を検出する。その後、修正部816は、S805で抽出したカメラパスの内、S807で検出した高さ位置と等高のカメラパスが有るか否かを判断する。修正部816は、等高のカメラパスが有ると判断した場合(S808においてYes)、S809に進み、等高のカメラパスが無いと判断した場合(S808においてNo)、S810に進む。S809において、修正部816は、そのカメラパスを修正カメラパスとして決定する。一方、S810において、修正部816は、S805で抽出したカメラパスの内、ユーザ指定カメラパスの仮想カメラの高さ位置に最も近いカメラパスを導出する。その後、S811において、修正部816は、ユーザ指定した仮想カメラパスにおける拡大率を検出し、ユーザ指定時と同じ値をS809若しくはS810で決定した修正カメラパスに設定する。同じ値にする意図は、仮想カメラ位置と注目オブジェクト位置との間の距離が同じなので、注目オブジェクトの大きさがカメラパス修正前後で変わらないようにするためである。
【0025】
一方、S813において、修正部816は、実カメラ経路毎に、S814の処理を実行する。即ち、S814において、修正部816は、ユーザ指定カメラパスに最も近似したカメラパスを導出する。その後、修正部816は、実カメラ毎に導出したカメラパスの内、最適な仮想カメラパスを決定し、修正カメラパスとして出力する。最適の判断として、予めオペレータが優先度をつけることができる。例えば、修正後カメラパスの仮想カメラ向きが、ユーザ指定カメラパスと同じとなる経路を優先的に選択する、といったものである。S816において、修正部816は、ユーザ指定カメラパスでの注目オブジェクトの大きさが変わらないように、修正後の仮想カメラ拡大率を算出する。
【0026】
図7(a)は、カメラパスの特徴データの一例である。
図7(a)の例は、
図5のカメラパス404を例にしている。座標X、座標Y、座標Zは空間座標値を示す。
図7(b)は、
図5のサッカー場を例にしたときの座標軸の一例である。サッカー場のセンターサークルの中心を原点とし、サッカー場の長辺に並行な軸をX軸、サッカー場の短辺に並行な軸をY軸、高さ方向をZ軸としている。空間座標値の単位はミリである。拡大率は、各位置での仮想カメラの拡大率を示す。時間は、開始位置を基準として、各位置に仮想カメラが到達するまでの時間を示す。開始位置は、仮想カメラの移動経路の開始位置を示す。終了位置は、仮想カメラの移動経路の修正位置を示す。高さ変化位置とは、仮想カメラの上昇と下降とが切り替わる位置を示す。カメラパス404では開始位置の座標Zが3000、終了位置の座標Zが3000、高さ変化位置の座標Zが6000なので、3mの高さから6mまで上昇し、その後3mの高さまで下降する移動をすることが分かる。拡大変化位置とは、仮想カメラの拡大率の拡大と縮小とが切り替わる位置を示す。カメラパス404では開始位置の拡大率が1.0倍、終了位置の拡大率が1.0倍、拡大変化位置の拡大率が2.0倍なので、等倍表示から2倍表示まで拡大表示していき、その後、等倍表示に向かって縮小表示することが分かる。カメラパスの修正処理は、この特徴データを可能な限り維持した状態で新しい経路へ修正する処理である。カメラパスは、経路の一例である。また、特徴データは、特徴量の一例である。
【0027】
図8は、
図6のフローチャートの処理の経過を理解するための概念図である。
図8では、
図5のカメラパスの設定時に
図4のカメラ112qの故障を検出し、カメラパス修正処理を行う場合を例に説明する。まず、仮想カメラパスの仮想視点画像の生成で利用するカメラ112を導出する。その結果、仮想カメラパスの開始位置ではカメラ112d、カメラ112e、カメラ112fを、終了位置ではカメラ112m、カメラ112n、カメラ112оを利用することが導出される。次に、開始位置に対応した実カメラから、終了位置に対応した実カメラまで移動するための経路を探索する。その結果、カメラ112jを経由した反時計周りの経路が導出される。本例では、経路探索の結果が、1つに絞られたが、複数導出されるケースもある。例えば、実カメラがスタジアムの上下段に2段で1周配置され、下段のカメラが故障した場合には、上段のカメラを利用する経路が検出されるため、複数の経路が導出される。次に、修正部816は、仮想カメラ位置と注目オブジェクトとの間の距離が、ユーザ指定カメラパス時と等距離のカメラパスを抽出する。
図8(a)がその概念図である。矢印601は、ユーザ指定のカメラパス404の仮想カメラ位置と注目オブジェクト403位置との間の距離が等しいカメラパスである。この時点では、矢印601は多数存在している。次に、修正部816は、矢印601の内、故障カメラ112qを利用していないカメラパスを抽出する。
図8(b)がその概念図である。矢印601の内、仮想カメラ向きと故障カメラ112qのカメラ向きとが同じ方向にあるカメラパスを削除する。よって矢印602は、故障カメラ112qの画像を利用せずに仮想視点画像を生成するため、品位のよい画像を提供できる。この時点では、矢印602の数は矢印601の数と比較すると少ないものの、複数存在している。次に、修正部816は、故障カメラを利用しないカメラパスが抽出できたので、ユーザ指定時の仮想カメラパスにおける仮想カメラの高さ位置を検出し、等高のカメラパスを抽出する。
図8(c)がその概念図である。修正部816が、ユーザ指定のカメラパス404と同じ高さ位置のカメラパスを検出することで、矢印603が検出される。
図7(a)を例にすると、修正部816は、高さ変化位置の座標Z値3000mmであることを確認し、矢印602の内、開始位置から5秒後の高さ位置が3000mmのカメラパスを検出する。よって、修正後の仮想カメラパスは、特徴データの高さ変化位置の座標Yが−5000となる。最後に、修正部816は、仮想カメラの拡大率を設定する。本例では、仮想カメラと注目オブジェクトとの間の距離がユーザ指定カメラパス時と変わらないため、修正部816は、ユーザ指定カメラパスでのカメラ拡大率と同じ値を設定する。
図8(d)がその概念図である。
図7(a)の特徴データを例として説明する。開始位置の仮想カメラは仮想カメラ604に対応する。終了位置の仮想カメラは仮想カメラ607に対応する。拡大変化位置の仮想カメラは仮想カメラ606に対応する。つまり仮想カメラ604ではズーム率1倍で、仮想カメラ606へ移動するに従い徐々にズームアップし仮想カメラ606ではズーム率2倍で、その後、仮想カメラ607へ移動するに従い徐々にズームアウトし仮想カメラ607ではズーム率1倍になる拡大率となる。修正部816は、修正後のカメラパス603にも同等の拡大率を設定する。より具体的には、修正部816は、修正後のカメラパス603において、開始位置から5秒後の仮想カメラ609へ移動するに従い徐々にズームアップし仮想カメラ609ではズーム率2倍で、その後、仮想カメラ607へ移動するに従い徐々にズームアウトし仮想カメラ607ではズーム率1倍になるように拡大率を設定する。以上の処理により、
図7(a)の例では、修正後のカメラパスは、修正前のカメラパスの特徴データにおいて、高さ変化位置の座標Yが修正されたのみである。
【0028】
カメラパスの修正処理について、別の例で説明する。
図7(c)はオペレータが指定した仮想カメラパスの一例である。
図7(c)の例では、高さ変化位置や拡大変化位置が無いことから、開始位置から終了位置までX軸方向に動き、仮想カメラの高さは同じで、拡大も行わない。選手の左5m、高さ3mの位置で選手と並走しつつ斜め上から選出を撮影する視点となる。このとき、
図6のフローチャートの処理に従いカメラパスの修正を行うと、選手の「右」5m、高さ3mの位置で選出と並走しつつ斜め上から選手を撮影する視点となる。つまり、座標Yの開始位置の5000が−5000に変化するのみで、他の特徴は維持することができる。
以上、本実施形態によれば、予め指定した経路の変更が必要な場合、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することで、ユーザの見たい内容を損なうことなく映像を提供することができる。
【0029】
<実施形態2>
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、仮想視点画像生成の演算処理の負荷を検出し、経路修正を判断する方法について説明する。演算処理が高負荷になるほど、仮想視点画像の生成が困難となり、品位のよくない画像を表示してしまうことから、これを防ぐためである。
カメラアダプタ120は、実施形態1の機能に加え、カメラ112から取得した画像を前景画像と背景画像とに分離し、次のカメラアダプタへ送信する機能を備える。分離の目的は、画像中に変化のない部分については背景画像としてフレームレートを落として送信し、画像中に変化の有る部分のみ前景画像としてフレームレートを落とさずに送信することで、データ転送量を減らすことである。よって、データベース250には、全カメラの前景画像と背景画像とが格納されている。バックエンドサーバ270は、実施形態1の機能に加え、データベース250から全ての前景データを取得し、座標位置を検出する機能を備える。
【0030】
図1に記載のシステムにおける仮想カメラ操作UI330の機能構成について、
図9を用いて説明する。
判断部900は、マッピング部814から仮想カメラパラメータを取得すると、バックエンドサーバ270から取得した前景座標情報を取得する。前景座標情報とは、仮想視点画像を生成する期間において、前景と認識したオブジェクトの世界座標位置及び大きさを指す。その後、判断部900は、仮想カメラパラメータと前景座標情報とを用いて、仮想視点画像毎に画像内で前景の占める割合を算出する。この割合が設定された閾値を超えている場合、仮想視点画像の生成が困難となり、品位のよくない画像となることを意味する。ここで、設定された閾値とは、予め仮想視点画像生成に用いるアルゴリズムによって一意に決まる値であってもよく、又は撮影時点の背景画像によって動的に変わる値であってもよく、特に限定されない。割合が設定された閾値を超えている場合、判断部900は、ユーザが指定したカメラパスは修正が必要であると判断し、修正部901へ仮想カメラパス修正要求を送出する。割合が設定された閾値を超えてい無い場合、判断部900は、カメラパスの修正は不要であると判断し、送信部817へ仮想カメラパラメータを送出する。
修正部901は、判断部900から仮想カメラパス修正要求を取得すると、取得部812から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。
【0031】
次に、仮想カメラパスの修正処理の詳細について説明する。
図10は、修正部901の情報処理の一例を示すフローチャートである。修正部901は、判断部900から仮想カメラパス修正要求を取得すると、取得部812から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。つまり、仮想カメラパスの修正とは、より具体的には仮想カメラの経路を示す空間曲線の修正を指す。S804において、修正部901は、ユーザ指定仮想カメラ位置と注目オブジェクトと間の距離特徴と類似度の高いカメラパスを抽出する。次に、S900において、修正部901は、S804で抽出したカメラパスの内、前景の占める割合が閾値以下のカメラパスを抽出する。S901において、修正部901は、前景の占める割合が閾値以下のカメラパスが有るか否かを判断する。修正部901は、前景の占める割合が閾値以下のカメラパスが有る場合(S901においてYes)、S807に進み、前景の占める割合が閾値以下のカメラパスが無い場合(S901においてNo)、S902に進む。S807において、修正部901は、ユーザ指定した仮想カメラパスにおける仮想カメラの高さ位置を検出する。そして、S811において、修正部816は、ユーザ指定した仮想カメラパスにおける拡大率を検出し、ユーザ指定時と同じ値をS809若しくはS810で決定した修正カメラパスに設定する。S901の処理は、仮想視点画像を生成する際の演算量が閾値を超えるか否かを判断する処理の一例である。
【0032】
一方、S902において、修正部901は、ユーザ指定カメラパスにて拡大率を変更することで前景の占める割合を減らすことができるか確認する。例えば、仮想視点画像の端部に前景が集中している場合、拡大率を上げることで端部を表示しないようにすることで前景を減らすことができる。修正部901は、拡大率変更による回避が可能か否かを判断する。修正部901は、拡大率変更による回避が可能であると判断すると(S902においてYes)、S903に進み、拡大率変更による回避が不可能であると判断すると(S902においてNo)、S904に進む。S903において、修正部901は、前景の占める割合が閾値を超えないような拡大率を算出し、ユーザに対する表示がおかしくないように拡大率を修正する。例えば、急激な拡大はユーザに不快な表現となってしまう。したがって、修正部901は、拡大率の変更量を一定範囲内に収めるようにする。一方、S904において、修正部901は、前景の占める割合が閾値以上の仮想カメラ位置や向きを検出する。そして、S905において、修正部901は、その検出した箇所を通らず、かつ、ユーザ指定カメラパスに最も近似した経路を導出する。S906において、修正部901は、修正後のカメラパスの仮想視点画像上の注目オブジェクトの大きさが、ユーザ指定カメラパスにおける仮想視点画像での注目オブジェクトの大きさと等しくなるように拡大率を算出する。
【0033】
以上、本実施形態によれば、演算処理の負荷が高いことにより品位のよくない映像を表示することを防ぎつつ、更に予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することができる。また、その結果、ユーザの見たい内容を損なうことなく映像を提供することができる。
【0034】
<実施形態3>
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときにユーザが選択できないようにする方法について説明する。
エンドユーザ端末190の画面上で設定するカメラパスの設定方法について、
図11を用いて説明する。
図11は、
図4(a)のカメラ配置、撮影内容を例にしている。表示画面は、カメラパスリスト910、カメラパス設定画面402、仮想視点画像表示画面405を含む。カメラパスリスト910は、注目オブジェクトとカメラパスとの組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面402上に表示する映像を、どのカメラ112の映像にするか選択する。
図11では、カメラ112eが選択されている。次に、オペレータは、カメラパス設定画面402上で注目オブジェクト403を指定する。ここで、エンドユーザ端末190の送信部811は、カメラパスリスト910にある全仮想カメラパスを仮想カメラ操作UI330へ送信する。その後、仮想カメラ操作UI330は、受信した仮想カメラパスに修正が必要か否かを判断する。この判断方法は実施形態1と同等であり、説明を省略する。その後、仮想カメラ操作UI330は、全仮想カメラパスの修正要否情報をエンドユーザ端末190へ送信する。エンドユーザ端末190は、修正要否情報を取得すると、カメラパスリスト910に表示されているカメラパスの内、修正が必要と判断されたカメラパスの表示領域を例えばグレーに表示する。更に、エンドユーザ端末190は、グレーで表示したカメラパスを、オペレータが選択できないように表示制御する。
図11の例では、
図4(a)のカメラ112qが故障した場合を例にしている。カメラパス911は、カメラ112qを利用して仮想視点画像を生成してしまうため、修正が必要と判断され、グレーで表示され、選択不可となっている。表示内容については、
図11の例ではグレー表示を採用しているが、カメラパス911の表示を透過する、又は消去するでもよく、ユーザが選択不可であることを理解できるのであれば、特に限定されない。
【0035】
以上、上述した実施形態によれば、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断した時にユーザが選択不可とすることができる。以上、本発明の実施形態について詳述したが、本発明は上述の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形及び変更が可能である。
【0036】
<実施形態4>
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときに、カメラパスを修正し表示する。このことで、ユーザは自動で修正されたカメラパスを選択できるようにする方法について説明する。
エンドユーザ端末190の画面上で設定するカメラパスの設定方法について、
図12を用いて説明する。
図12は、
図4(a)のカメラ配置、撮影内容を例にしている。表示画面は、カメラパスリスト1000、カメラパス設定画面402、仮想視点画像表示画面405を含む。カメラパスリスト1000は、注目オブジェクトとカメラパスとの組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面402上に表示する映像を、どのカメラ112の映像にするか選択する。
図12では、カメラ112eが選択されている。次に、オペレータは、カメラパス設定画面402上で注目オブジェクト403を指定する。ここで、エンドユーザ端末190の送信部811は、カメラパスリスト1000にある全仮想カメラパスを仮想カメラ操作UI330へ送信する。その後、仮想カメラ操作UI330は、取得した仮想カメラパスに修正が必要か否かを判断し、必要な場合は修正カメラパスを導出する。この判断及ぶ導出方法は実施形態1と同等であり、説明を省略する。その後、仮想カメラ操作UI330は、全仮想カメラパスの修正要否情報、及び修正要と判断したカメラパスにおいては修正カメラパスをエンドユーザ端末190へ送信する。エンドユーザ端末190は、修正要否情報及び修正カメラパスを取得すると、カメラパスリスト1000に表示されているカメラパスの内、修正が必要と判断されたカメラパスの表示領域に修正後の仮想カメラ移動経路を表示する。修正後の表示内容はカメラパス1001に示されている。また、エンドユーザ端末190は、修正したことをユーザが理解するために、修正アイコン1002をカメラパス1001上に表示する。
図12の例では、Modifyの頭文字をとってMを表示している。
図12の例では、修正済みの通知方法として、文字の表示を採用しているが、カメラパス表示枠の太さや色の変更でもよく、又は背景色の変更、仮想カメラの移動経路の色やスタイルの変更でもよい。修正済みであることがユーザに理解できる内容であれば、通知方法は特に限定されない。
【0037】
以上、上述した実施形態によれば、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときに、自動的にカメラパスを修正し表示する。このことで、ユーザは自動で修正されたカメラパスを選択できる。
【0038】
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0039】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
仮想カメラ操作UIの機能構成の一部又は全てはハードウェア構成として、コントローラ300に実装されてもよい。
【0040】
以上、上述した各実施形態の処理によれば、予め指定した経路の変更が必要な場合、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することで、ユーザの見たい内容を損なうことなく映像を提供することができる。