(57)【要約】【課題】ユーザの見たい内容を損なうことなく映像を提供することを目的とする。【解決手段】被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する指定された仮想撮影装置の経路を受信する受信手段と、受信手段により受信された仮想撮影装置の経路の特徴量に基づいて経路を修正する修正手段と、を有する。【選択図】図６
2018207336.tif 000002
【特許請求の範囲】
【請求項１】
被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する指定された仮想撮影装置の経路を受信する受信手段と、
前記受信手段により受信された前記仮想撮影装置の経路の特徴量に基づいて前記経路を修正する修正手段と、
を有する情報処理装置。
【請求項２】
前記受信手段により受信された前記仮想撮影装置の経路を修正する必要があるか否かを判断する判断手段を更に有し、
前記判断手段により前記受信手段により受信された前記仮想撮影装置の経路を修正する必要があると判断された場合、前記修正手段は、前記経路の特徴量に基づいて前記経路を修正する請求項１記載の情報処理装置。
【請求項３】
前記修正手段は、前記受信手段により受信された前記仮想撮影装置の経路に基づく仮想視点画像から特定されるオブジェクトと同じオブジェクトが修正後の経路に基づく仮想視点画像から特定されるように前記受信手段により受信された前記仮想撮影装置の経路を修正する請求項１又は２記載の情報処理装置。
【請求項４】
前記修正手段は、前記受信手段により受信された前記仮想撮影装置の経路に基づく仮想視点画像から特定されるオブジェクトのサイズと同じサイズのオブジェクトが修正後の経路に基づく仮想視点画像から特定されるように前記受信手段により受信された前記仮想撮影装置の経路を修正する請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記修正手段は、修正後の経路に基づく仮想視点画像から特定されるオブジェクトと前記修正後の経路の仮想撮影装置との距離が、前記受信手段により受信された前記仮想撮影装置の経路に基づく仮想視点画像から特定されるオブジェクトと前記経路の前記仮想撮影装置との距離と同じ距離となるように、前記受信手段により受信された前記仮想撮影装置の経路を修正する請求項１乃至４何れか１項記載の情報処理装置。
【請求項６】
前記修正手段は、前記仮想撮影装置の向きを変更して前記受信手段により受信された前記仮想撮影装置の経路を修正する請求項１乃至５何れか１項記載の情報処理装置。
【請求項７】
前記修正手段は、修正後の経路に、前記受信手段により受信された前記仮想撮影装置の経路の拡大率を設定する請求項１乃至６何れか１項記載の情報処理装置。
【請求項８】
被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する仮想撮影装置の経路を指定する指定手段と、
前記指定手段により指定された前記仮想撮影装置の経路の特徴量に基づいて前記経路を修正する修正手段と、
を有する情報処理システム。
【請求項９】
前記修正手段により修正された前記仮想撮影装置の経路に基づいて仮想視点画像を生成する生成手段を更に有する請求項８記載の情報処理システム。
【請求項１０】
前記指定手段により指定された前記仮想撮影装置の経路を修正する必要があるか否かを判断する判断手段を更に有し、
前記判断手段により前記指定手段により指定された前記仮想撮影装置の経路を修正する必要があると判断された場合、前記修正手段は、前記経路の特徴量に基づいて前記経路を修正する請求項８又は９記載の情報処理システム。
【請求項１１】
前記指定手段により指定された前記仮想撮影装置の経路における仮想視点画像を生成するのに用いられる複数の撮影装置のうちの少なくとも一つの撮影装置が故障した場合、前記判断手段は、前記指定手段により指定された前記仮想撮影装置の経路を修正する必要があると判断する請求項１０記載の情報処理システム。
【請求項１２】
前記指定手段により指定された前記仮想撮影装置の経路における仮想視点画像を生成する際の演算量が閾値を超える場合、前記判断手段は、前記指定手段により指定された前記仮想撮影装置の経路を修正する必要があると判断する請求項１０記載の情報処理システム。
【請求項１３】
被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する仮想撮影装置の経路を指定するための画面を表示する表示手段を更に有し、
前記指定手段は、前記画面を介したオペレータの操作に基づいて前記経路を指定する請求項８乃至１２何れか１項記載の情報処理システム。
【請求項１４】
前記表示手段は、予め設定されている複数の前記仮想撮影装置の経路を前記画面に表示し、
前記画面を介したオペレータの選択に基づいて前記複数の仮想撮影装置の経路の中から一の仮想撮影装置の経路を指定する請求項１３記載の情報処理システム。
【請求項１５】
前記表示手段は、前記予め設定されている複数の前記仮想撮影装置の経路のうち修正の必要があると判断された経路を選択できないように前記画面に表示する請求項１４記載の情報処理システム。
【請求項１６】
前記表示手段は、前記修正手段により修正された経路を更に前記画面に表示する請求項１４又は１５記載の情報処理システム。
【請求項１７】
情報処理装置が実行する情報処理方法であって、
被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する指定された仮想撮影装置の経路を受信する受信ステップと、
前記受信ステップにより受信された前記仮想撮影装置の経路の特徴量に基づいて前記経路を修正する修正ステップと、
を含む情報処理方法。
【請求項１８】
情報処理システムが実行する情報処理方法であって、
被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する仮想撮影装置の経路を指定する指定ステップと、
前記指定ステップにより指定された前記仮想撮影装置の経路の特徴量に基づいて前記経路を修正する修正ステップと、
を含む情報処理方法。
【請求項１９】
コンピュータを、請求項１乃至７何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
昨今、複数のカメラを異なる位置に設置して複数の方向から同期撮影し、撮影により得られた複数視点画像を用いて仮想視点画像を生成する技術が注目されている。複数視点画像から仮想視点画像を生成する技術によれば、例えば、サッカーやバスケットボールのハイライトシーンを様々な角度から視聴することができるため、通常の画像と比較してユーザに高臨場感を与えることができる。
一方、複数視点画像に基づく仮想視点画像の生成及び閲覧は、複数のカメラが撮影した画像をサーバ等の画像処理部に集約し、画像処理部にて、三次元モデル生成、レンダリング等の処理を施し、ユーザ端末に伝送を行うことで実現できる。
仮想視点画像を生成する際、視点の移動はユーザが自由に操作できる。このとき、特定のシーンでは常に同じ視点移動を行うケースが少なくない。例えばサッカーの場合、ペナルティキックやコーナーキックではキッカーを中心に弧を描くように、又はサイドを駆け上がるドリブルシーンではドリブラーと並走するように視点を移動するといったものである。よって、視点移動パターン（以下、カメラパスと表記）を予め決めておき、特定のシーンを検出したら予め設定しておいたカメラパスを選択するだけで仮想視点画像を生成できると便利である。しかし、選択したカメラパスに基づいて仮想視点画像を生成する際に、例えばカメラの故障等で実カメラの映像が破綻している場合、仮想視点画像が生成できず、品位のよくない映像が表示されてしまう。
特許文献１には、予め指定した経路上に異常を検出した場合、経路の検索を行い、異常箇所を通らないように経路を決定しユーザに通知する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−６９３１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の技術では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように経路を修正するようにはなっていない。例えば、前述のサッカーを例に説明すると、ユーザはキッカーを中心に弧を描くという特徴のある視点の映像を見るために経路を指定している。この特徴を考慮せずに新しい経路を設定すると、キッカーの映っていない映像となる可能性があり、ユーザの見たい内容とは異なってしまう恐れがある。
【課題を解決するための手段】
【０００５】
本発明の情報処理装置は、被写体を複数の方向から撮影する複数の撮影装置による画像に基づいて生成される仮想視点画像に関する指定された仮想撮影装置の経路を受信する受信手段と、前記受信手段により受信された前記仮想撮影装置の経路の特徴量に基づいて前記経路を修正する修正手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、ユーザの見たい内容を損なうことなく映像を提供することができる。
【図面の簡単な説明】
【０００７】
【図１】画像処理システムのシステム構成等の一例を示す図である。
【図２】コントローラのハードウェア構成の一例を示す図である。
【図３】実施形態１の仮想カメラ操作ＵＩ等の機能構成の一例を示す図である。
【図４】仮想カメラ等を説明するための図である。
【図５】実施形態１のエンドユーザ端末の画面の一例を示す図である。
【図６】実施形態１の修正部の情報処理の一例を示すフローチャートである。
【図７】特徴データ等の一例を示す図である。
【図８】図６のフローチャートの処理の経過を理解するための概念図である。
【図９】実施形態２の仮想カメラ操作ＵＩ等の機能構成の一例を示す図である。
【図１０】実施形態２の修正部の情報処理の一例を示すフローチャートである。
【図１１】実施形態３のエンドユーザ端末の画面の一例を示す図である。
【図１２】実施形態４のエンドユーザ端末の画面の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
競技場（スタジアム）やコンサートホール等の施設に複数のカメラ及びマイクを設置し撮影及び集音を行う画像処理システムについて、図１を用いて説明する。画像処理システム１００は、センサシステム１１０ａ−センサシステム１１０ｚ、画像コンピューティングサーバ２００、コントローラ３００、スイッチングハブ１８０、及びエンドユーザ端末１９０を有する。図１に示される画像処理システムは、情報処理システムの一例である。
コントローラ３００は、制御ステーション３１０と仮想カメラ操作ＵＩ３３０とを有する。制御ステーション３１０は、画像処理システム１００を構成するそれぞれのブロックに対してネットワーク３１０ａ−３１０ｃ、１８０ａ、１８０ｂ、及び１７０ａ−１７０ｙを通じて動作状態の管理及びパラメータ設定制御等を行う。制御ステーション３１０は、センサシステム１１０の機器に異常を検出した場合、故障カメラ情報を生成する。故障カメラ情報には、異常のあったカメラを識別するための情報と異常期間とが記載されている。故障カメラ情報は、仮想視点画像生成時に利用され、その用途は異常のあったカメラの出力映像を仮想視点画像生成に使用しないようにするためである。ここで、ネットワークはＥｔｈｅｒｎｅｔ（登録商標）であるＩＥＥＥ標準準拠のＧｂＥ（ギガビットイーサーネット（登録商標））や１０ＧｂＥでもよいし、インターコネクトＩｎｆｉｎｉｂａｎｄ、産業用イーサーネット等を組合せて構成されてもよい。また、これらに限定されず、他の種別のネットワークであってもよい。コントローラ３００は、情報処理装置の一例である。
【００１０】
最初に、センサシステム１１０ａ−センサシステム１１０ｚの２６セットの画像及び音声をセンサシステム１１０ｚから画像コンピューティングサーバ２００へ送信する動作を説明する。本実施形態の画像処理システム１００は、センサシステム１１０ａ−センサシステム１１０ｚがデイジーチェーンにより接続されている。
本実施形態において、特別な説明がない場合は、センサシステム１１０ａからセンサシステム１１０ｚまでの２６セットのシステムを区別せずセンサシステム１１０と記載する。各センサシステム１１０内の装置についても同様に、特別な説明がない場合は区別せず、マイク１１１、カメラ１１２、雲台１１３、外部センサ１１４、及びカメラアダプタ１２０と記載する。センサシステムの台数として２６セットと記載しているが、あくまでも一例であり、台数をこれに限定するものではない。本実施形態では、特に断りがない限り、画像という文言が、動画と静止画との概念を含むものとして説明する。すなわち、本実施形態の画像処理システム１００は、静止画及び動画の何れについても処理可能である。また、本実施形態では、画像処理システム１００により提供される仮想視点画像には、仮想視点画像と仮想視点音声とが含まれる例を中心に説明するが、これに限らない。例えば、仮想視点画像に音声が含まれていなくてもよい。また例えば、仮想視点画像に含まれる音声が、仮想視点に最も近いマイクにより集音された音声であってもよい。また、本実施形態では、説明の簡略化のため、部分的に音声についての記載を省略しているが、基本的に画像と音声とは共に処理されるものとする。
【００１１】
センサシステム１１０ａ−センサシステム１１０ｚは、それぞれ１台ずつのカメラ１１２ａ−カメラ１１２ｚを有する。即ち、画像処理システム１００は、被写体を複数の方向から撮影するための複数のカメラを有する。複数のセンサシステム１１０同士はデイジーチェーンにより接続される。この接続形態により、撮影画像の４Ｋや８Ｋ等への高解像度化及び高フレームレート化に伴う画像データの大容量化において、接続ケーブル数の削減や配線作業の省力化ができる効果がある。
これに限らず、接続形態として、各センサシステム１１０ａ−１１０ｚがスイッチングハブ１８０に接続されて、スイッチングハブ１８０を経由してセンサシステム１１０間のデータ送受信を行うスター型のネットワーク構成としてもよい。
また、図１では、デイジーチェーンとなるようセンサシステム１１０ａ−１１０ｚの全てがカスケード接続されている構成を示したがこれに限定するものではない。例えば、複数のセンサシステム１１０をいくつかのグループに分割して、分割したグループ単位でセンサシステム１１０間をデイジーチェーン接続してもよい。そして、分割単位の終端となるカメラアダプタ１２０がスイッチングハブに接続されて画像コンピューティングサーバ２００へ画像の入力を行うようにしてもよい。このような構成は、スタジアムにおいて特に有効である。例えば、スタジアムが複数階で構成され、フロア毎にセンサシステム１１０を配備する場合が考えられる。この場合に、フロア毎、又はスタジアムの半周毎に画像コンピューティングサーバ２００への入力を行うことができ、全センサシステム１１０を１つのデイジーチェーンで接続する配線が困難な場所でも設置の簡便化及びシステムの柔軟化を図ることができる。
【００１２】
また、デイジーチェーン接続されて画像コンピューティングサーバ２００へ画像入力を行うカメラアダプタ１２０が１つであるか２つ以上であるかに応じて、画像コンピューティングサーバ２００での画像処理の制御が切り替えられる。すなわち、画像コンピューティングサーバ２００は、センサシステム１１０が複数のグループに分割されているかどうかに応じて制御を切り替えることができる。画像入力を行うカメラアダプタ１２０が１つの場合は、デイジーチェーン接続で画像伝送を行いながら競技場全周画像が生成されるため、画像コンピューティングサーバ２００において全周の画像データが揃うタイミングは同期がとられている。すなわち、センサシステム１１０がグループに分割されていなければ、画像コンピューティングサーバ２００は、特別な同期制御を行わなくても全周の画像データが揃うタイミングの同期をとることができる。
しかし、画像入力を行うカメラアダプタ１２０が複数になる（センサシステム１１０がグループに分割される）場合は、それぞれのデイジーチェーンのレーン（経路）によって遅延が異なる場合が考えられる。そのため、画像コンピューティングサーバ２００において全周の画像データが揃うまで待って同期をとる同期制御によって、画像データの集結をチェックしながら後段の画像処理を行う必要がある。
本実施形態では、センサシステム１１０ａはマイク１１１ａ、カメラ１１２ａ、雲台１１３ａ、外部センサ１１４ａ、及びカメラアダプタ１２０ａを有する。この構成に限定するものではなく、少なくとも１台のカメラアダプタ１２０ａと、１台のカメラ１１２ａ又は１台のマイク１１１ａを有していればよい。また例えば、センサシステム１１０ａは１台のカメラアダプタ１２０ａと複数のカメラ１１２ａとで構成されてもよいし、１台のカメラ１１２ａと複数のカメラアダプタ１２０ａとで構成されてもよい。即ち、画像処理システム１００内の複数のカメラ１１２と複数のカメラアダプタ１２０とはＮ対Ｍ（ＮとＭは共に１以上の整数）で対応する。また、センサシステム１１０は、マイク１１１ａ、カメラ１１２ａ、雲台１１３ａ、及びカメラアダプタ１２０ａ以外の装置を含んでいてもよい。また、カメラ１１２とカメラアダプタ１２０とが一体となって構成されていてもよい。更に、カメラアダプタ１２０の機能の少なくとも一部をフロントエンドサーバ２３０が有していてもよい。本実施形態では、センサシステム１１０ｂ−１１０ｚについては、センサシステム１１０ａと同様の構成なので説明を省略する。センサシステム１１０ａと同じ構成に限定されるものではなく、其々のセンサシステム１１０が異なる構成でもよい。
【００１３】
マイク１１１ａにて集音された音声とカメラ１１２ａにて撮影された画像とは、カメラアダプタ１２０ａにおいて後述の画像処理が施された後、デイジーチェーン１７０ａを通してセンサシステム１１０ｂのカメラアダプタ１２０ｂに伝送される。同様にセンサシステム１１０ｂは、集音された音声と撮影された画像とを、センサシステム１１０ａから取得した画像及び音声と合わせてセンサシステム１１０ｃに伝送する。
前述した動作を続けることにより、センサシステム１１０ａ−センサシステム１１０ｚが取得した画像及び音声は、センサシステム１１０ｚからネットワーク１８０ｂを用いてスイッチングハブ１８０に伝わる。そして、その後、画像及び音声は、画像コンピューティングサーバ２００へ伝送される。
本実施形態では、カメラ１１２ａ−１１２ｚとカメラアダプタ１２０ａ−１２０ｚとが分離された構成にしているが、同一筺体で一体化されていてもよい。その場合、マイク１１１ａ−１１１ｚは一体化されたカメラ１１２に内蔵されてもよいし、カメラ１１２の外部に接続されていてもよい。
【００１４】
次に、画像コンピューティングサーバ２００の構成及び動作について説明する。本実施形態の画像コンピューティングサーバ２００は、センサシステム１１０ｚから取得したデータの処理を行う。画像コンピューティングサーバ２００は、フロントエンドサーバ２３０、データベース２５０（以下、ＤＢとも記載する。）、バックエンドサーバ２７０、タイムサーバ２９０を有する。
タイムサーバ２９０は、時刻及び同期信号を配信する機能を有し、スイッチングハブ１８０を介してセンサシステム１１０ａ−センサシステム１１０ｚに時刻及び同期信号を配信する。時刻及び同期信号を受信したカメラアダプタ１２０ａ−１２０ｚは、カメラ１１２ａ−１１２ｚを時刻及び同期信号を基にＧｅｎｌｏｃｋさせ画像フレーム同期を行う。即ち、タイムサーバ２９０は、複数のカメラ１１２の撮影タイミングを同期させる。これにより、画像処理システム１００は同じタイミングで撮影された複数の撮影画像に基づいて仮想視点画像を生成できるため、撮影タイミングのずれによる仮想視点画像の品質低下を抑制できる。本実施形態ではタイムサーバ２９０が複数のカメラ１１２の時刻同期を管理するものとするが、これに限らず、時刻同期のための処理を各カメラ１１２又は各カメラアダプタ１２０が独立して行ってもよい。
フロントエンドサーバ２３０は、センサシステム１１０ｚから取得した画像及び音声から、セグメント化された伝送パケットを再構成してデータ形式を変換した後に、カメラの識別子やデータ種別、フレーム番号に応じてデータベース２５０に書き込む。
次に、バックエンドサーバ２７０では、仮想カメラ操作ＵＩ３３０から視点の指定を受け付け、受け付けられた視点に基づいて、データベース２５０から対応する画像及び音声データを読み出し、レンダリング処理を行って仮想視点画像を生成する。また、バックエンドサーバ２７０は、制御ステーション３１０から故障カメラ情報を取得する。
画像コンピューティングサーバ２００の構成はこれに限らない。例えば、フロントエンドサーバ２３０、データベース２５０、及びバックエンドサーバ２７０のうち少なくとも２つが一体となって構成されていてもよい。また、フロントエンドサーバ２３０、データベース２５０、及びバックエンドサーバ２７０の少なくとも何れかが複数含まれていてもよい。また、画像コンピューティングサーバ２００内の任意の位置に上記の装置以外の装置が含まれていてもよい。更に、画像コンピューティングサーバ２００の機能の少なくとも一部をエンドユーザ端末１９０や仮想カメラ操作ＵＩ３３０が有していてもよい。
【００１５】
レンダリング処理された画像は、バックエンドサーバ２７０からエンドユーザ端末１９０に送信され、エンドユーザ端末１９０を操作するユーザは視点の指定に応じた画像閲覧及び音声視聴ができる。すなわち、バックエンドサーバ２７０は、複数のカメラ１１２により撮影された撮影画像（複数視点画像）と視点情報とに基づく仮想視点画像を生成する。より具体的には、バックエンドサーバ２７０は、例えば複数のカメラアダプタ１２０により複数のカメラ１１２による撮影画像から抽出された所定領域の画像データとユーザ操作により指定された視点とに基づいて、仮想視点画像を生成する。そしてバックエンドサーバ２７０は、生成した仮想視点画像をエンドユーザ端末１９０に提供する。本実施形態における仮想視点画像は、仮想的な視点から被写体を撮影した場合に得られる画像である。言い換えると、仮想視点画像は、指定された視点における見えを表す画像であるとも言える。仮想的な視点（仮想視点）は、ユーザにより指定されてもよいし、画像解析の結果等に基づいて自動的に指定されてもよい。すなわち仮想視点画像には、ユーザが任意に指定した視点に対応する任意視点画像（自由視点画像）が含まれる。また、複数の候補からユーザが指定した視点に対応する画像や、装置が自動で指定した視点に対応する画像も、仮想視点画像に含まれる。本実施形態では、仮想視点画像に音声データ（オーディオデータ）が含まれる場合の例を中心に説明するが、必ずしも音声データが含まれていなくてもよい。また、バックエンドサーバ２７０は、仮想視点画像をＨ．２６４やＨＥＶＣに代表される標準技術により圧縮符号化したうえで、ＭＰＥＧ−ＤＡＳＨプロトコルを使ってエンドユーザ端末１９０へ送信してもよい。また、仮想視点画像は、非圧縮でエンドユーザ端末１９０へ送信されてもよい。特に圧縮符号化を行う前者はエンドユーザ端末１９０としてスマートフォンやタブレットを想定しており、後者は非圧縮画像を表示可能なディスプレイを想定している。すなわち、バックエンドサーバ２７０は、エンドユーザ端末１９０の種別に応じて画像フォーマットを切り替え可能である。また、画像の送信プロトコルはＭＰＥＧ−ＤＡＳＨに限らず、例えば、ＨＬＳ（ＨＴＴＰ  Ｌｉｖｅ  Ｓｔｒｅａｍｉｎｇ）やその他の送信方法を用いてもよい。
【００１６】
この様に、画像処理システム１００は、映像収集ドメイン、データ保存ドメイン、及び映像生成ドメインという３つの機能ドメインを有する。映像収集ドメインはセンサシステム１１０−１１０ｚを含む。データ保存ドメインはデータベース２５０、フロントエンドサーバ２３０及びバックエンドサーバ２７０を含む。映像生成ドメインは仮想カメラ操作ＵＩ３３０及びエンドユーザ端末１９０を含む。本構成に限らず、例えば、仮想カメラ操作ＵＩ３３０が直接、センサシステム１１０ａ−１１０ｚから画像を取得することもできる。しかしながら、本実施形態では、センサシステム１１０ａ−１１０ｚから直接画像を取得する方法ではなくデータ保存機能を中間に配置する方法をとる。より具体的には、フロントエンドサーバ２３０は、センサシステム１１０ａ−１１０ｚが生成した画像データや音声データ及びそれらのデータのメタ情報をデータベース２５０の共通スキーマ及びデータ型に変換している。これにより、センサシステム１１０ａ−１１０ｚのカメラ１１２が他機種のカメラに変化しても、変化した差分をフロントエンドサーバ２３０が吸収し、データベース２５０に登録することができる。このことによって、カメラ１１２が他機種カメラに変わった場合に、仮想カメラ操作ＵＩ３３０が適切に動作しないおそれを低減できる。
また、仮想カメラ操作ＵＩ３３０は、直接、データベース２５０にアクセスせずにバックエンドサーバ２７０を介してアクセスする構成である。バックエンドサーバ２７０で画像生成処理に係わる共通処理を行い、操作ＵＩに係わるアプリケーションの差分部分を仮想カメラ操作ＵＩ３３０で行っている。このことにより、仮想カメラ操作ＵＩ３３０の開発において、ＵＩ操作デバイスや、生成したい仮想視点画像を操作するＵＩの機能要求に対する開発に注力することができる。また、バックエンドサーバ２７０は、仮想カメラ操作ＵＩ３３０の要求に応じて画像生成処理に係わる共通処理を追加又は削除することもできる。このことによって仮想カメラ操作ＵＩ３３０の要求に柔軟に対応することができる。
このように、画像処理システム１００においては、被写体を複数の方向から撮影するための複数のカメラ１１２による撮影に基づく画像データに基づいて、バックエンドサーバ２７０により仮想視点画像が生成される。本実施形態における画像処理システム１００は、上記で説明した物理的な構成に限定される訳ではなく、論理的に構成されていてもよい。
【００１７】
次に図１に記載のシステムにおけるコントローラ３００のハードウェア構成の一例を図２に示す。図２に示すように、コントローラ３００は、ハードウェア構成として、ＣＰＵ１０と、メモリ１１と、通信Ｉ／Ｆ１２と、がバスを介して互いに通信可能に接続されている。ＣＰＵ１０は、コントローラ３００の全体を制御する。ＣＰＵ１０は、メモリ１１に記憶されたプログラムに基づき処理を実行することによって、制御ステーション３１０、仮想カメラ操作ＵＩ３３０の機能、及び後述する図６、図１０のフローチャートの処理が実現される。メモリ１１は、プログラムやＣＰＵ１０がプログラムに基づき処理を実行する際に利用するデータ等を記憶する。通信Ｉ／Ｆ１２は、コントローラ３００と他の装置との通信を制御する。コントローラ３００のハードウェア構成は一例であって、例えば、コントローラ３００は、ＣＰＵやメモリ、通信Ｉ／Ｆ等を複数有していてもよい。複数のＣＰＵがプログラムに基づき複数のメモリを使用しながら処理を実行するようにしてもよい。画像コンピューティングサーバ２００やエンドユーザ端末１９０も少なくともハードウェア構成として、ＣＰＵとメモリと通信Ｉ／Ｆを有する。そして、各装置のＣＰＵが各装置のメモリに記憶されたプログラムに基づき処理を実行することによって各装置の機能等が実現される。また、エンドユーザ端末１９０は、ハードウェア構成として、更に、ディスプレイ等の表示装置とマウス及びキーボード等の入力装置とを含む。後述する図５、図１１、図１２等の画面は、エンドユーザ端末１９０の表示装置に表示される。
【００１８】
次に図１に記載のシステムにおける仮想カメラ操作ＵＩ３３０の機能構成について、図３を用いて説明する。
まず仮想カメラ８０１について図４（ａ）を用いて説明する。仮想カメラ８０１は、設置されたどのカメラ１１２とも異なる視点において撮影を行うことができる仮想的なカメラである。即ち、画像処理システム１００において生成される仮想視点画像が、仮想カメラ８０１による撮影画像である。図４（ａ）において、円周上に配置された複数のセンサシステム１１０それぞれがカメラ１１２を有している。例えば、仮想視点画像を生成することにより、あたかもサッカーゴールの近くにあるカメラで撮影されたかのような画像を生成することができる。仮想カメラ８０１の撮影画像である仮想視点画像は、設置された複数のカメラ１１２の画像を画像処理することで生成される。オペレータ（ユーザ）は仮想カメラ８０１の位置等、操作することで、自由な視点からの撮影画像を得ることができる。また、オペレータが、仮想カメラ８０１のカメラパスを予め設定しておくようにしておくことによって、特定のシーンが検出された場合、カメラパスが選択されて仮想視点画像が生成される。仮想カメラ８０１は、仮想撮影装置の一例である。
送信部８１１は、オペレータが指定したカメラパスをパッキングし、仮想カメラ操作ＵＩ３３０へ送信する。送信部８１１は、エンドユーザ端末１９０の画面上でオペレータからカメラパスの設定を受け付けると、処理を開始し、仮想カメラパスを仮想カメラ操作ＵＩ３３０の取得部８１２へ送信する。カメラパスの設定方法については後述する。仮想カメラパスとは、世界座標系の３次元空間上にある曲線を表現した数式と、注目オブジェクトの位置を示す世界座標値と、である。曲線数式は、スプラインによるデータ点を結ぶことで算出される。数式の算出方法は、空間曲線を表現できるならば他の方法を利用してもよく、特に限定されない。
【００１９】
次に仮想カメラ操作ＵＩ３３０内について説明する。取得部８１２は、エンドユーザ端末１９０からパッキングされて送られたデータをアンパック（解凍）し、仮想カメラパスを取得する。取得部８１２は、送信部８１１から仮想カメラパスを取得すると、導出部８１３へ仮想カメラパスを送出する。
導出部８１３は、取得した仮想カメラパスから仮想カメラパラメータに変換する。仮想カメラパラメータとは、例えば、外部パラメータを表す行列と内部パラメータを表す行列とが用いられる。ここで、仮想カメラ８０１の位置と姿勢とは外部パラメータに含まれ、ズーム値は内部パラメータに含まれる。仮想カメラパラメータは、１フレームごと位置や姿勢を表す情報の列である。例えば、仮想視点画像が６０フレーム／秒のフレームレートの設定である場合、仮想カメラパラメータは１／６０秒毎のデータ列となる。つまり図４（ｂ）の例では、カメラパス８０２上における７フレーム分の仮想カメラパラメータとなり、７／６０秒分のデータ列であることを表している。導出部８１３は、取得部８１２から仮想カメラパスを取得すると、仮想カメラ８０１の位置や姿勢等を表す仮想カメラパラメータを導出し、マッピング部８１４へ仮想カメラパラメータを送出する。仮想カメラパラメータは、演算によって導出されてもよいし、ルックアップテーブルの参照等によって導出されてもよい。
【００２０】
マッピング部８１４は、実カメラマッピング情報を生成する。実カメラマッピングとは、仮想視点画像を生成する際、どのカメラ１１２の映像が必要かを導出することを指す。例えば、１秒分の仮想カメラパラメータの場合、６０個のパラメータ毎に対応するカメラ１１２が導出される。マッピング部８１４は、導出部８１３から仮想カメラパラメータを取得すると、バックエンドサーバ２７０から取得したカメラ配置情報を利用して、実カメラマッピング処理を行う。マッピング部８１４によるカメラ配置情報の取得のタイミングは、導出部８１３から仮想カメラパラメータを取得した後が望ましい。しかし、実カメラの画角や向きに変更がない場合、例えば実カメラの移動や雲台のパンチルト角度、実カメラのズームといった変更がない場合、マッピング部８１４は、カメラ配置情報を事前に取得しておいてもよく、特に限定されない。マッピング部８１４は、実カメラマッピング処理が完了すると、仮想カメラパラメータと実カメラマッピング情報とを判断部８１５へ送出する。
判断部８１５は、オペレータが指定した仮想カメラパスの修正が必要か否かを判断する。判断部８１５は、マッピング部８１４から仮想カメラパラメータと実カメラマッピング情報とを取得すると、バックエンドサーバ２７０から取得した故障カメラ情報を取得する。次に、判断部８１５は、取得した故障カメラ情報を用いて、仮想視点画像を生成する期間において出力映像に異常のあるカメラ１１２を確認する。その後、判断部８１５は、故障カメラ情報に記載のカメラ１１２が、実カメラマッピング情報に記載のカメラ１１２に有るか否かを検出する。故障カメラ情報に記載のカメラ１１２が、実カメラマッピング情報に記載のカメラ１１２に有る場合は、仮想視点画像の生成の際、故障したカメラの映像を使用してしまうため、品位のよくない画像となることを意味する。よって、判断部８１５は、ユーザが指定したカメラパスは修正が必要であると判断し、修正部８１６へ仮想カメラパス修正要求を送出する。故障カメラ情報に記載のカメラ１１２が、実カメラマッピング情報に記載のカメラ１１２に無い場合は、判断部８１５は、カメラパスの修正は不要であると判断し、送信部８１７へ仮想カメラパラメータを送出する。本実施形態では、判断部８１５は、故障カメラを使用していた場合にカメラパスの修正が必要と判断している。しかし、例えば、故障期間が１／６０秒の場合、判断部８１５は、１フレームの映像が仮想視点画像へ及ぼす影響は小さいので修正は不要と判断するようにしてもよい。他の例として、判断部８１５は、故障カメラが１台のみの場合は仮想視点画像生成可能なので修正は不要と判断するようにしてもよい。また、判断部８１５は、故障カメラがデイジーチェーン接続上で２台以上連続していた場合は仮想視点画像の生成が不可能なので修正必要と判断するようにしてもよい。つまり、判断部８１５は、故障の状況に応じて仮想視点画像への影響度を鑑みて修正要否を判断するようにしてもよい。修正要否判断の方法は、仮想視点画像の品位を保つことができるのであれば、特に限定されない。判断部８１５の処理は、カメラパスを修正する必要があるか否かを判断する判断処理の一例である。
【００２１】
修正部８１６は、オペレータが指定した仮想カメラパスを修正し、新しいカメラパスを生成する。修正部８１６は、判断部８１５から仮想カメラパス修正要求を取得すると、取得部８１２から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。修正処理の詳細は後述する。修正が完了すると、修正部８１６は、修正したカメラパスを導出部８１３へ送出する。
送信部８１７は、最終決定した仮想カメラパラメータをパッキングし、バックエンドサーバ２７０へ送信する。最終決定した仮想カメラパラメータとは、仮想カメラパスの修正が不要と判断された場合は、オペレータが指定した仮想カメラパスのパラメータを意味し、修正が必要と判断された場合は、修正後の仮想カメラパスのパラメータを意味する。つまり、送信部８１７は、判断部８１５から取得した仮想カメラパラメータをバックエンドサーバ２７０へ送出する。バックエンドサーバ２７０は、受信した仮想カメラパラメータを用いて、仮想視点画像及び仮想視点音声を生成する。
その後、エンドユーザ端末１９０の出力部８１８は、バックエンドサーバ２７０から受け取った仮想カメラ画像・音声を出力する。
【００２２】
次に、エンドユーザ端末１９０の画面上で設定するカメラパスの設定方法について、図５を用いて説明する。図５は、図４（ａ）のカメラ配置や撮影内容を例にしている。表示画面は、カメラパスリスト４００、カメラパス設定画面４０２、仮想視点画像表示画面４０５を含む。カメラパスリスト４００は、注目オブジェクト４０３とカメラパス４０４との組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面４０２上に表示する映像を、どのカメラ１１２の映像にするか選択する。図５の例では、オペレータは、カメラ１１２ｅを選択している。次に、オペレータは、カメラパス設定画面４０２上で注目オブジェクト４０３を指定する。より具体的には、エンドユーザ端末１９０に接続されているマウス等の入力装置を使用してカーソルを移動し、カメラパス設定画面４０２上の選手４０７にカーソルを合わせてクリックする。次に、オペレータは、カメラパスリスト４００から一つを選択する。選択後、選択されたカメラパスは太枠線４０１で表示され、更にカメラパス設定画面４０２上に仮想カメラの移動経路を示す矢印であるカメラパス４０４が自動で表示される。図５では、選手４０７を正面から時計周りに半周移動することを示している。このとき、仮想カメラの向きは注目オブジェクトである選手４０７が画面中心に表示されるような向きとなる。その後、オペレータは、必要に応じてカメラパス設定画面４０２のカメラパス４０４の矢印を微修正する。より具体的には、オペレータは、仮想視点開始位置、仮想視点終了位置、仮想カメラの移動経路（位置、高さ）を決定する。最後に、オペレータは、カメラパスの修正が完了したらＯＫボタンを選択すると、仮想視点画像表示画面４０５上に、指定したカメラパスに基づいて生成された仮想視点画像が表示される。バー４０６は、仮想視点の位置を決定するためのものである。左端が選択されている場合は、仮想視点開始位置であり、右端が選択されている場合は、仮想視点終了位置となる。
【００２３】
次に、仮想カメラパスの修正処理の詳細について説明する。図６は、修正部８１６の情報処理の一例を示すフローチャートである。修正部８１６は、判断部８１５から仮想カメラパス修正要求を取得すると、取得部８１２から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。つまり、仮想カメラパスの修正とは、より具体的には仮想カメラの経路を示す空間曲線の修正を指す。まず、Ｓ８０１において、修正部８１６は、仮想カメラパスの開始位置及び終了位置の仮想視点画像の生成に必要な実際のカメラ１１２のどれを利用するかを確認する。その後、修正部８１６は、開始位置で利用するカメラ１１２から終了位置で利用するカメラ１１２へ移動可能な実カメラの経路を探索する。このとき、修正部８１６は、故障カメラを通らない経路となるように探索する。修正部８１６は、経路の探索を、ダイクストラ法を用いた最短経路導出によって求める。探索の手法については、特に限定されない。修正部８１６は、経路探索の結果、修正経路が有るか否かを判断する。修正部８１６は、修正経路が無いと判断した場合（Ｓ８０２においてＮｏ）、仮想カメラパスの修正ができないと判断し、図６に示すフローチャートの処理を終了する。修正部８１６は、修正経路が有ると判断した場合（Ｓ８０２においてＹｅｓ）、Ｓ８０３に進む。Ｓ８０３において、修正部８１６は、ユーザ指定仮想カメラ位置と注目オブジェクトとの間の距離を算出する。修正部８１６は、仮想カメラ位置と注目オブジェクト位置との世界座標を取得し、座標値間の距離を算出することで距離を求める。Ｓ８０４において、修正部８１６は、算出した距離特徴と類似度の高いカメラパスを抽出する。これは、ユーザが指定した仮想カメラ位置と等距離となるように修正することで、修正したカメラパスにおいても被写体の大きさ（サイズ）を維持した状態で仮想視点画像をユーザへ提供できるためである。Ｓ８０５において、修正部８１６は、Ｓ８０４で抽出したカメラパスの内、故障カメラを利用していないカメラパスを抽出する。距離特徴は、特徴量の一例である。
【００２４】
Ｓ８０６において、修正部８１６は、故障カメラを利用していないカメラパスを抽出できたか否かを判断する。修正部８１６は、故障カメラを利用していないカメラパスを抽出できたと判断した場合（Ｓ８０６においてＹｅｓ）、Ｓ８０７に進み、故障カメラを利用していないカメラパスを抽出できなかったと判断した場合（Ｓ８０６においてＮｏ）、Ｓ８１３に進む。Ｓ８０７において、修正部８１６は、ユーザ指定した仮想カメラパスにおける仮想カメラの高さ位置を検出する。その後、修正部８１６は、Ｓ８０５で抽出したカメラパスの内、Ｓ８０７で検出した高さ位置と等高のカメラパスが有るか否かを判断する。修正部８１６は、等高のカメラパスが有ると判断した場合（Ｓ８０８においてＹｅｓ）、Ｓ８０９に進み、等高のカメラパスが無いと判断した場合（Ｓ８０８においてＮｏ）、Ｓ８１０に進む。Ｓ８０９において、修正部８１６は、そのカメラパスを修正カメラパスとして決定する。一方、Ｓ８１０において、修正部８１６は、Ｓ８０５で抽出したカメラパスの内、ユーザ指定カメラパスの仮想カメラの高さ位置に最も近いカメラパスを導出する。その後、Ｓ８１１において、修正部８１６は、ユーザ指定した仮想カメラパスにおける拡大率を検出し、ユーザ指定時と同じ値をＳ８０９若しくはＳ８１０で決定した修正カメラパスに設定する。同じ値にする意図は、仮想カメラ位置と注目オブジェクト位置との間の距離が同じなので、注目オブジェクトの大きさがカメラパス修正前後で変わらないようにするためである。
【００２５】
一方、Ｓ８１３において、修正部８１６は、実カメラ経路毎に、Ｓ８１４の処理を実行する。即ち、Ｓ８１４において、修正部８１６は、ユーザ指定カメラパスに最も近似したカメラパスを導出する。その後、修正部８１６は、実カメラ毎に導出したカメラパスの内、最適な仮想カメラパスを決定し、修正カメラパスとして出力する。最適の判断として、予めオペレータが優先度をつけることができる。例えば、修正後カメラパスの仮想カメラ向きが、ユーザ指定カメラパスと同じとなる経路を優先的に選択する、といったものである。Ｓ８１６において、修正部８１６は、ユーザ指定カメラパスでの注目オブジェクトの大きさが変わらないように、修正後の仮想カメラ拡大率を算出する。
【００２６】
図７（ａ）は、カメラパスの特徴データの一例である。図７（ａ）の例は、図５のカメラパス４０４を例にしている。座標Ｘ、座標Ｙ、座標Ｚは空間座標値を示す。図７（ｂ）は、図５のサッカー場を例にしたときの座標軸の一例である。サッカー場のセンターサークルの中心を原点とし、サッカー場の長辺に並行な軸をＸ軸、サッカー場の短辺に並行な軸をＹ軸、高さ方向をＺ軸としている。空間座標値の単位はミリである。拡大率は、各位置での仮想カメラの拡大率を示す。時間は、開始位置を基準として、各位置に仮想カメラが到達するまでの時間を示す。開始位置は、仮想カメラの移動経路の開始位置を示す。終了位置は、仮想カメラの移動経路の修正位置を示す。高さ変化位置とは、仮想カメラの上昇と下降とが切り替わる位置を示す。カメラパス４０４では開始位置の座標Ｚが３０００、終了位置の座標Ｚが３０００、高さ変化位置の座標Ｚが６０００なので、３ｍの高さから６ｍまで上昇し、その後３ｍの高さまで下降する移動をすることが分かる。拡大変化位置とは、仮想カメラの拡大率の拡大と縮小とが切り替わる位置を示す。カメラパス４０４では開始位置の拡大率が１．０倍、終了位置の拡大率が１．０倍、拡大変化位置の拡大率が２．０倍なので、等倍表示から２倍表示まで拡大表示していき、その後、等倍表示に向かって縮小表示することが分かる。カメラパスの修正処理は、この特徴データを可能な限り維持した状態で新しい経路へ修正する処理である。カメラパスは、経路の一例である。また、特徴データは、特徴量の一例である。
【００２７】
図８は、図６のフローチャートの処理の経過を理解するための概念図である。図８では、図５のカメラパスの設定時に図４のカメラ１１２ｑの故障を検出し、カメラパス修正処理を行う場合を例に説明する。まず、仮想カメラパスの仮想視点画像の生成で利用するカメラ１１２を導出する。その結果、仮想カメラパスの開始位置ではカメラ１１２ｄ、カメラ１１２ｅ、カメラ１１２ｆを、終了位置ではカメラ１１２ｍ、カメラ１１２ｎ、カメラ１１２оを利用することが導出される。次に、開始位置に対応した実カメラから、終了位置に対応した実カメラまで移動するための経路を探索する。その結果、カメラ１１２ｊを経由した反時計周りの経路が導出される。本例では、経路探索の結果が、１つに絞られたが、複数導出されるケースもある。例えば、実カメラがスタジアムの上下段に２段で１周配置され、下段のカメラが故障した場合には、上段のカメラを利用する経路が検出されるため、複数の経路が導出される。次に、修正部８１６は、仮想カメラ位置と注目オブジェクトとの間の距離が、ユーザ指定カメラパス時と等距離のカメラパスを抽出する。図８（ａ）がその概念図である。矢印６０１は、ユーザ指定のカメラパス４０４の仮想カメラ位置と注目オブジェクト４０３位置との間の距離が等しいカメラパスである。この時点では、矢印６０１は多数存在している。次に、修正部８１６は、矢印６０１の内、故障カメラ１１２ｑを利用していないカメラパスを抽出する。図８（ｂ）がその概念図である。矢印６０１の内、仮想カメラ向きと故障カメラ１１２ｑのカメラ向きとが同じ方向にあるカメラパスを削除する。よって矢印６０２は、故障カメラ１１２ｑの画像を利用せずに仮想視点画像を生成するため、品位のよい画像を提供できる。この時点では、矢印６０２の数は矢印６０１の数と比較すると少ないものの、複数存在している。次に、修正部８１６は、故障カメラを利用しないカメラパスが抽出できたので、ユーザ指定時の仮想カメラパスにおける仮想カメラの高さ位置を検出し、等高のカメラパスを抽出する。図８（ｃ）がその概念図である。修正部８１６が、ユーザ指定のカメラパス４０４と同じ高さ位置のカメラパスを検出することで、矢印６０３が検出される。図７（ａ）を例にすると、修正部８１６は、高さ変化位置の座標Ｚ値３０００ｍｍであることを確認し、矢印６０２の内、開始位置から５秒後の高さ位置が３０００ｍｍのカメラパスを検出する。よって、修正後の仮想カメラパスは、特徴データの高さ変化位置の座標Ｙが−５０００となる。最後に、修正部８１６は、仮想カメラの拡大率を設定する。本例では、仮想カメラと注目オブジェクトとの間の距離がユーザ指定カメラパス時と変わらないため、修正部８１６は、ユーザ指定カメラパスでのカメラ拡大率と同じ値を設定する。図８（ｄ）がその概念図である。図７（ａ）の特徴データを例として説明する。開始位置の仮想カメラは仮想カメラ６０４に対応する。終了位置の仮想カメラは仮想カメラ６０７に対応する。拡大変化位置の仮想カメラは仮想カメラ６０６に対応する。つまり仮想カメラ６０４ではズーム率１倍で、仮想カメラ６０６へ移動するに従い徐々にズームアップし仮想カメラ６０６ではズーム率２倍で、その後、仮���カメラ６０７へ移動するに従い徐々にズームアウトし仮想カメラ６０７ではズーム率１倍になる拡大率となる。修正部８１６は、修正後のカメラパス６０３にも同等の拡大率を設定する。より具体的には、修正部８１６は、修正後のカメラパス６０３において、開始位置から５秒後の仮想カメラ６０９へ移動するに従い徐々にズームアップし仮想カメラ６０９ではズーム率２倍で、その後、仮想カメラ６０７へ移動するに従い徐々にズームアウトし仮想カメラ６０７ではズーム率１倍になるように拡大率を設定する。以上の処理により、図７（ａ）の例では、修正後のカメラパスは、修正前のカメラパスの特徴データにおいて、高さ変化位置の座標Ｙが修正されたのみである。
【００２８】
カメラパスの修正処理について、別の例で説明する。図７（ｃ）はオペレータが指定した仮想カメラパスの一例である。図７（ｃ）の例では、高さ変化位置や拡大変化位置が無いことから、開始位置から終了位置までＸ軸方向に動き、仮想カメラの高さは同じで、拡大も行わない。選手の左５ｍ、高さ３ｍの位置で選手と並走しつつ斜め上から選出を撮影する視点となる。このとき、図６のフローチャートの処理に従いカメラパスの修正を行うと、選手の「右」５ｍ、高さ３ｍの位置で選出と並走しつつ斜め上から選手を撮影する視点となる。つまり、座標Ｙの開始位置の５０００が−５０００に変化するのみで、他の特徴は維持することができる。
以上、本実施形態によれば、予め指定した経路の変更が必要な場合、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することで、ユーザの見たい内容を損なうことなく映像を提供することができる。
【００２９】
＜実施形態２＞
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、仮想視点画像生成の演算処理の負荷を検出し、経路修正を判断する方法について説明する。演算処理が高負荷になるほど、仮想視点画像の生成が困難となり、品位のよくない画像を表示してしまうことから、これを防ぐためである。
カメラアダプタ１２０は、実施形態１の機能に加え、カメラ１１２から取得した画像を前景画像と背景画像とに分離し、次のカメラアダプタへ送信する機能を備える。分離の目的は、画像中に変化のない部分については背景画像としてフレームレートを落として送信し、画像中に変化の有る部分のみ前景画像としてフレームレートを落とさずに送信することで、データ転送量を減らすことである。よって、データベース２５０には、全カメラの前景画像と背景画像とが格納されている。バックエンドサーバ２７０は、実施形態１の機能に加え、データベース２５０から全ての前景データを取得し、座標位置を検出する機能を備える。
【００３０】
図１に記載のシステムにおける仮想カメラ操作ＵＩ３３０の機能構成について、図９を用いて説明する。
判断部９００は、マッピング部８１４から仮想カメラパラメータを取得すると、バックエンドサーバ２７０から取得した前景座標情報を取得する。前景座標情報とは、仮想視点画像を生成する期間において、前景と認識したオブジェクトの世界座標位置及び大きさを指す。その後、判断部９００は、仮想カメラパラメータと前景座標情報とを用いて、仮想視点画像毎に画像内で前景の占める割合を算出する。この割合が設定された閾値を超えている場合、仮想視点画像の生成が困難となり、品位のよくない画像となることを意味する。ここで、設定された閾値とは、予め仮想視点画像生成に用いるアルゴリズムによって一意に決まる値であってもよく、又は撮影時点の背景画像によって動的に変わる値であってもよく、特に限定されない。割合が設定された閾値を超えている場合、判断部９００は、ユーザが指定したカメラパスは修正が必要であると判断し、修正部９０１へ仮想カメラパス修正要求を送出する。割合が設定された閾値を超えてい無い場合、判断部９００は、カメラパスの修正は不要であると判断し、送信部８１７へ仮想カメラパラメータを送出する。
修正部９０１は、判断部９００から仮想カメラパス修正要求を取得すると、取得部８１２から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。
【００３１】
次に、仮想カメラパスの修正処理の詳細について説明する。図１０は、修正部９０１の情報処理の一例を示すフローチャートである。修正部９０１は、判断部９００から仮想カメラパス修正要求を取得すると、取得部８１２から仮想カメラパスを取得し、仮想カメラパスの修正処理を開始する。つまり、仮想カメラパスの修正とは、より具体的には仮想カメラの経路を示す空間曲線の修正を指す。Ｓ８０４において、修正部９０１は、ユーザ指定仮想カメラ位置と注目オブジェクトと間の距離特徴と類似度の高いカメラパスを抽出する。次に、Ｓ９００において、修正部９０１は、Ｓ８０４で抽出したカメラパスの内、前景の占める割合が閾値以下のカメラパスを抽出する。Ｓ９０１において、修正部９０１は、前景の占める割合が閾値以下のカメラパスが有るか否かを判断する。修正部９０１は、前景の占める割合が閾値以下のカメラパスが有る場合（Ｓ９０１においてＹｅｓ）、Ｓ８０７に進み、前景の占める割合が閾値以下のカメラパスが無い場合（Ｓ９０１においてＮｏ）、Ｓ９０２に進む。Ｓ８０７において、修正部９０１は、ユーザ指定した仮想カメラパスにおける仮想カメラの高さ位置を検出する。そして、Ｓ８１１において、修正部８１６は、ユーザ指定した仮想カメラパスにおける拡大率を検出し、ユーザ指定時と同じ値をＳ８０９若しくはＳ８１０で決定した修正カメラパスに設定する。Ｓ９０１の処理は、仮想視点画像を生成する際の演算量が閾値を超えるか否かを判断する処理の一例である。
【００３２】
一方、Ｓ９０２において、修正部９０１は、ユーザ指定カメラパスにて拡大率を変更することで前景の占める割合を減らすことができるか確認する。例えば、仮想視点画像の端部に前景が集中している場合、拡大率を上げることで端部を表示しないようにすることで前景を減らすことができる。修正部９０１は、拡大率変更による回避が可能か否かを判断する。修正部９０１は、拡大率変更による回避が可能であると判断すると（Ｓ９０２においてＹｅｓ）、Ｓ９０３に進み、拡大率変更による回避が不可能であると判断すると（Ｓ９０２においてＮｏ）、Ｓ９０４に進む。Ｓ９０３において、修正部９０１は、前景の占める割合が閾値を超えないような拡大率を算出し、ユーザに対する表示がおかしくないように拡大率を修正する。例えば、急激な拡大はユーザに不快な表現となってしまう。したがって、修正部９０１は、拡大率の変更量を一定範囲内に収めるようにする。一方、Ｓ９０４において、修正部９０１は、前景の占める割合が閾値以上の仮想カメラ位置や向きを検出する。そして、Ｓ９０５において、修正部９０１は、その検出した箇所を通らず、かつ、ユーザ指定カメラパスに最も近似した経路を導出する。Ｓ９０６において、修正部９０１は、修正後のカメラパスの仮想視点画像上の注目オブジェクトの大きさが、ユーザ指定カメラパスにおける仮想視点画像での注目オブジェクトの大きさと等しくなるように拡大率を算出する。
【００３３】
以上、本実施形態によれば、演算処理の負荷が高いことにより品位のよくない映像を表示することを防ぎつつ、更に予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することができる。また、その結果、ユーザの見たい内容を損なうことなく映像を提供することができる。
【００３４】
＜実施形態３＞
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときにユーザが選択できないようにする方法について説明する。
エンドユーザ端末１９０の画面上で設定するカメラパスの設定方法について、図１１を用いて説明する。図１１は、図４（ａ）のカメラ配置、撮影内容を例にしている。表示画面は、カメラパスリスト９１０、カメラパス設定画面４０２、仮想視点画像表示画面４０５を含む。カメラパスリスト９１０は、注目オブジェクトとカメラパスとの組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面４０２上に表示する映像を、どのカメラ１１２の映像にするか選択する。図１１では、カメラ１１２ｅが選択されている。次に、オペレータは、カメラパス設定画面４０２上で注目オブジェクト４０３を指定する。ここで、エンドユーザ端末１９０の送信部８１１は、カメラパスリスト９１０にある全仮想カメラパスを仮想カメラ操作ＵＩ３３０へ送信する。その後、仮想カメラ操作ＵＩ３３０は、受信した仮想カメラパスに修正が必要か否かを判断する。この判断方法は実施形態１と同等であり、説明を省略する。その後、仮想カメラ操作ＵＩ３３０は、全仮想カメラパスの修正要否情報をエンドユーザ端末１９０へ送信する。エンドユーザ端末１９０は、修正要否情報を取得すると、カメラパスリスト９１０に表示されているカメラパスの内、修正が必要と判断されたカメラパスの表示領域を例えばグレーに表示する。更に、エンドユーザ端末１９０は、グレーで表示したカメラパスを、オペレータが選択できないように表示制御する。図１１の例では、図４（ａ）のカメラ１１２ｑが故障した場合を例にしている。カメラパス９１１は、カメラ１１２ｑを利用して仮想視点画像を生成してしまうため、修正が必要と判断され、グレーで表示され、選択不可となっている。表示内容については、図１１の例ではグレー表示を採用しているが、カメラパス９１１の表示を透過する、又は消去するでもよく、ユーザが選択不可であることを理解できるのであれば、特に限定されない。
【００３５】
以上、上述した実施形態によれば、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断した時にユーザが選択不可とすることができる。以上、本発明の実施形態について詳述したが、本発明は上述の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形及び変更が可能である。
【００３６】
＜実施形態４＞
本実施形態では、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときに、カメラパスを修正し表示する。このことで、ユーザは自動で修正されたカメラパスを選択できるようにする方法について説明する。
エンドユーザ端末１９０の画面上で設定するカメラパスの設定方法について、図１２を用いて説明する。図１２は、図４（ａ）のカメラ配置、撮影内容を例にしている。表示画面は、カメラパスリスト１０００、カメラパス設定画面４０２、仮想視点画像表示画面４０５を含む。カメラパスリスト１０００は、注目オブジェクトとカメラパスとの組み合わせが一覧で表示される。まず、オペレータは、カメラパス設定画面４０２上に表示する映像を、どのカメラ１１２の映像にするか選択する。図１２では、カメラ１１２ｅが選択されている。次に、オペレータは、カメラパス設定画面４０２上で注目オブジェクト４０３を指定する。ここで、エンドユーザ端末１９０の送信部８１１は、カメラパスリスト１０００にある全仮想カメラパスを仮想カメラ操作ＵＩ３３０へ送信する。その後、仮想カメラ操作ＵＩ３３０は、取得した仮想カメラパスに修正が必要か否かを判断し、必要な場合は修正カメラパスを導出する。この判断及ぶ導出方法は実施形態１と同等であり、説明を省略する。その後、仮想カメラ操作ＵＩ３３０は、全仮想カメラパスの修正要否情報、及び修正要と判断したカメラパスにおいては修正カメラパスをエンドユーザ端末１９０へ送信する。エンドユーザ端末１９０は、修正要否情報及び修正カメラパスを取得すると、カメラパスリスト１０００に表示されているカメラパスの内、修正が必要と判断されたカメラパスの表示領域に修正後の仮想カメラ移動経路を表示する。修正後の表示内容はカメラパス１００１に示されている。また、エンドユーザ端末１９０は、修正したことをユーザが理解するために、修正アイコン１００２をカメラパス１００１上に表示する。図１２の例では、Ｍｏｄｉｆｙの頭文字をとってＭを表示している。図１２の例では、修正済みの通知方法として、文字の表示を採用しているが、カメラパス表示枠の太さや色の変更でもよく、又は背景色の変更、仮想カメラの移動経路の色やスタイルの変更でもよい。修正済みであることがユーザに理解できる内容であれば、通知方法は特に限定されない。
【００３７】
以上、上述した実施形態によれば、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定するシステムにおいて、予め指定した経路が利用できないと判断したときに、自動的にカメラパスを修正し表示する。このことで、ユーザは自動で修正されたカメラパスを選択できる。
【００３８】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００３９】
以上、本発明の実施形態の一例について詳述したが、本発明は係る特定の実施形態に限定されるものではない。
仮想カメラ操作ＵＩの機能構成の一部又は全てはハードウェア構成として、コントローラ３００に実装されてもよい。
【００４０】
以上、上述した各実施形態の処理によれば、予め指定した経路の変更が必要な場合、予め指定した経路に基づいて生成した仮想視点画像の特徴が変化しないように新しい経路を決定することで、ユーザの見たい内容を損なうことなく映像を提供することができる。
【符号の説明】
【００４１】
１０    ＣＰＵ
３００  コントローラ
【図１】
2018207336.tif 000003
【図２】
2018207336.tif 000004
【図３】
2018207336.tif 000005
【図４】
2018207336.tif 000006
【図５】
2018207336.tif 000007
【図６】
2018207336.tif 000008
【図７】
2018207336.tif 000009
【図８】
2018207336.tif 000010
【図９】
2018207336.tif 000011
【図１０】
2018207336.tif 000012
【図１１】
2018207336.tif 000013
【図１２】
2018207336.tif 000014