JP2022041594A - 情報処理装置、情報処理方法及びプログラム - Google Patents
情報処理装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP2022041594A JP2022041594A JP2020146888A JP2020146888A JP2022041594A JP 2022041594 A JP2022041594 A JP 2022041594A JP 2020146888 A JP2020146888 A JP 2020146888A JP 2020146888 A JP2020146888 A JP 2020146888A JP 2022041594 A JP2022041594 A JP 2022041594A
- Authority
- JP
- Japan
- Prior art keywords
- virtual viewpoint
- information processing
- angle
- evaluation
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
【課題】仮想視点映像の画質の低下を抑制する仮想視点を容易に設定できるようにする。【解決手段】制御装置118は、複数の撮像装置が行う撮影に基づく画像から仮想視点画像を生成するための仮想視点の設定を行う装置であって、ユーザ操作に基づき、仮想視点を設定する仮想視点設定部102と、複数の撮像装置に関する情報に基づいて、設定された仮想視点が変更されるように制御する仮想視点制御部104と、を有する。【選択図】図4
Description
本発明は、仮想視点映像を生成する際の仮想視点の制御技術に関する。
昨今、複数の撮影装置をそれぞれ異なる位置に設置して多視点で同期撮影し、当該撮影により得られた複数視点映像を用いて、指定された視点(仮想視点)からの見えを表す仮想視点映像を生成する技術が注目されている。仮想視点映像の場合、仮想視点を一定条件下で自由に設定できることから通常の映像と比較してユーザに高臨場感を与えられる一方、その映像品質は撮影に使用する撮像装置群の配置に影響を受ける。例えば、ある被写体(オブジェクト)をぐるりと取り囲むように撮像装置を設置した場合、撮像装置の台数が少ないほど隣のカメラとの撮影角度(視線方向同士の成す角)は広くなる。そのように隣り合う撮像装置の間の角度が広く開いた位置での仮想視点映像の生成は、撮像装置位置の高い校正精度や画像処理における高度な推定処理が必要となり、映像の品質を維持するのは難しく、原理的に画質低下が発生しやすい。この点、特許文献1には、撮像装置の故障の有無などや、撮像装置に設定されているフォーカス値、ズーム値などから仮想視点映像の空間内で影響のある範囲を制限領域として特定し、その制限領域をユーザに対して表示・通知する技術が開示されている。
上記特許文献1の技術によれば、例えば故障した撮像装置がある場合にその影響を受ける領域が制限領域として示されることから、ユーザは当該制限領域には仮想視点を入れないようにすることで、仮想視点映像の画質低下を回避することができる。しかしながら、3次元空間の中で仮想視点を適切に設定するには高度な操作スキルや知識が求められるところ、回避すべき制限領域を把握できただけでは、より適切な位置に仮想視点を設定することまでは困難であった。
そこで、本開示の技術は、仮想視点映像の画質の低下を抑制する仮想視点を容易に設定できるようにすることを目的とする。
そこで、本開示の技術は、仮想視点映像の画質の低下を抑制する仮想視点を容易に設定できるようにすることを目的とする。
本開示に係る情報処理装置は、複数の撮像装置が行う撮影に基づく画像から仮想視点画像を生成するための仮想視点の設定を行う情報処理装置であって、ユーザ操作に基づき、仮想視点を設定する設定手段と、前記複数の撮像装置に関する情報に基づいて、前記設定手段にて設定された仮想視点が変更されるように制御する制御手段と、を備えたことを特徴とする。
本開示の技術によれば、仮想視点映像の画質の低下を抑制する仮想視点を容易に設定することができる。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
[実施形態1]
[実施形態1]
(基本的なシステム構成)
図1は、本実施形態に係る画像処理システムの構成の一例を示すブロック図である。画像処理システム100は、複数の撮像モジュール110、スイッチングハブ115、サーバ116、データベース(DB)117、制御装置118、及び表示装置119を有する。複数の撮像モジュール110のそれぞれには、撮像装置であるカメラ111とカメラアダプタ112が、それぞれ内部配線によって接続されて存在する。各撮像モジュール110は、ネットワークケーブルによって伝送を行う。スイッチングハブ(以下、「HUB」と表記)115は、各ネットワーク装置間のルーティングを行う装置である。撮像モジュール110それぞれは、ネットワークケーブル113でHUB115に接続されている。同様に、サーバ116、DB117及び制御装置118もネットワークケーブル113でそれぞれHUB115に接続されている。そして、制御装置118と表示装置119との間は、映像用ケーブル114で接続されている。各カメラ111は、同期信号に基づいて互いに高精度に同期して撮影を行う。本実施形態においては、全100台の撮像モジュール110が、図2に示すとおり、撮影対象であるサッカーのフィールドを囲むように(便宜上10台のみ図示)設置されている。図2は、撮像モジュール110の配置の一例を示す図であり、各撮像モジュール110は、地上からある一定の同じ高さに設置されているものとする。ただし、100台の撮像モジュール110のカメラ111は、そのすべてが同じ注視点をむいて撮影を行っているわけではない。本実施形態では、全撮像モジュールを3つのグループに分け、それぞれ異なる注視点(例えば、一方のゴール前、センターサークル、他方のゴール前の3か所)を向いて、各グループに属する撮像モジュール110のカメラ111が撮影を行うものとする。また、撮像モジュール110がグループ分けされない場合においても、本実施形態は適用可能である。すなわち、複数のカメラ111がそれぞれフィールドにおける異なる領域を撮影することにより、フィールド全体が複数のカメラ111の画角に収まるように撮影される構成であってもよい。なお、本実施形態では撮像モジュール110の台数を100台としているが、あくまでも一例でありこれに限定されない。
図1は、本実施形態に係る画像処理システムの構成の一例を示すブロック図である。画像処理システム100は、複数の撮像モジュール110、スイッチングハブ115、サーバ116、データベース(DB)117、制御装置118、及び表示装置119を有する。複数の撮像モジュール110のそれぞれには、撮像装置であるカメラ111とカメラアダプタ112が、それぞれ内部配線によって接続されて存在する。各撮像モジュール110は、ネットワークケーブルによって伝送を行う。スイッチングハブ(以下、「HUB」と表記)115は、各ネットワーク装置間のルーティングを行う装置である。撮像モジュール110それぞれは、ネットワークケーブル113でHUB115に接続されている。同様に、サーバ116、DB117及び制御装置118もネットワークケーブル113でそれぞれHUB115に接続されている。そして、制御装置118と表示装置119との間は、映像用ケーブル114で接続されている。各カメラ111は、同期信号に基づいて互いに高精度に同期して撮影を行う。本実施形態においては、全100台の撮像モジュール110が、図2に示すとおり、撮影対象であるサッカーのフィールドを囲むように(便宜上10台のみ図示)設置されている。図2は、撮像モジュール110の配置の一例を示す図であり、各撮像モジュール110は、地上からある一定の同じ高さに設置されているものとする。ただし、100台の撮像モジュール110のカメラ111は、そのすべてが同じ注視点をむいて撮影を行っているわけではない。本実施形態では、全撮像モジュールを3つのグループに分け、それぞれ異なる注視点(例えば、一方のゴール前、センターサークル、他方のゴール前の3か所)を向いて、各グループに属する撮像モジュール110のカメラ111が撮影を行うものとする。また、撮像モジュール110がグループ分けされない場合においても、本実施形態は適用可能である。すなわち、複数のカメラ111がそれぞれフィールドにおける異なる領域を撮影することにより、フィールド全体が複数のカメラ111の画角に収まるように撮影される構成であってもよい。なお、本実施形態では撮像モジュール110の台数を100台としているが、あくまでも一例でありこれに限定されない。
サーバ116は、撮像モジュール110で得られた撮影画像の加工、オブジェクトの三次元モデルの生成、生成された三次元モデルへの色付け(「テクスチャの貼り付け」、「テクスチャマッピング」とも呼ばれる)などを行う情報処理装置である。本実施形態において三次元モデルの生成対象となるオブジェクトは、選手やボールといった動体オブジェクトである。ここで、「三次元モデル」とは、オブジェクトの三次元形状を表す形状データを意味している。サーバ116は、本システムの時刻同期を行うための時刻同期信号を生成するタイムサーバ機能も有している。データベース(以下、「DB」と表記)117は、各撮像モジュール110で得られた撮影画像や生成された三次元モデル等のデータを蓄積したり、蓄積されているデータをサーバ116や制御装置118に提供したりする。制御装置118は、各撮像モジュール110やサーバ116を制御する情報処理装置である。また、制御装置118は、仮想カメラ(仮想視点)の設定にも利用される。表示装置119は、制御装置118においてユーザが仮想視点を指定するための設定用ユーザインタフェース画面(UI画面)の表示や、生成された仮想視点画像の閲覧用UI画面の表示などを行う。表示装置119は、例えばテレビ、コンピュータのモニタ、タブレットやスマートフォンの液晶表示部などであり、機器の種類は問わない。
(画像処理システムの動作)
次に、画像処理システム100における大まかな動作を説明する。撮像モジュール110にて得られた撮影画像は前景背景分離等の所定の画像処理が施された後、次の撮像モジュール110に伝送される。同様に次の撮像モジュール110では、自モジュールにて得た撮影画像を、前の撮像モジュール110から受け取った撮影画像と合わせて、さらに次の撮像モジュール110に伝送する。このような動作を続けることにより、100セット分の撮影画像(前景画像を含む)が、HUB115を介してサーバ116へ伝送される。
次に、画像処理システム100における大まかな動作を説明する。撮像モジュール110にて得られた撮影画像は前景背景分離等の所定の画像処理が施された後、次の撮像モジュール110に伝送される。同様に次の撮像モジュール110では、自モジュールにて得た撮影画像を、前の撮像モジュール110から受け取った撮影画像と合わせて、さらに次の撮像モジュール110に伝送する。このような動作を続けることにより、100セット分の撮影画像(前景画像を含む)が、HUB115を介してサーバ116へ伝送される。
サーバ116は、すべての撮像モジュール110から取得した視点の異なる撮影画像データ(以下、「複数視点画像データ」と呼ぶ。)に基づき、オブジェクトの三次元モデルの生成やレンダリング処理を行って、仮想視点画像を生成する。また、サーバ116は、時刻及び同期信号を各撮像モジュール110に対して送信する。時刻と同期信号を受信した各撮像モジュール110は、受信した時刻及び同期信号を用いて撮像を行い、撮影画像のフレーム同期を行う。即ち、各撮像モジュール110では同じ時刻に同期してフレーム単位で撮影が行われる。なお、撮影画像データのフォーマットについては、特に限定するものではない。例えば、画素単位のビット深度(8ビット、10ビットなど)、画素単位の色を表現するフォーマット(YUV444、YUV422、RGBなど)を限定するものではない。画像ファイル形式についても限定しない。例えば、一般的なPNG(Portable Network Graphics)、やJPEG(Joint Photographic Experts Group)の形式であるとする。
仮想視点画像の生成に際しては、まず、複数視点画像データから前景となるオブジェクト毎にそのシルエットが抽出される。シルエットを抽出する方法には、例えば背景差分法が用いられる。背景差分法は、予め背景画像としてオブジェクトが存在しない状態を撮影しておき、オブジェクトが存在する時間の画像と背景画像との差分を画素毎に求め、得られた差分値が閾値より大きい画素についてはオブジェクトに対応する部分であると判定する手法である。なお、オブジェクトのシルエットを抽出する手法については、特徴量や機械学習を用いる手法など様々な手法がある。次に、抽出したオブジェクトのシルエットを表す画像(シルエット画像)を使用して、VisualHull方式によってオブジェクトの3次元モデルを生成する。VisualHull方式では、まず、3次元モデルの対象となるオブジェクトについて、そのシルエットを、物理カメラ111の光学主点位置から仮想的にオブジェクト方向に逆投影する。その結果、光学主点位置を頂点とし、断面がオブジェクトのシルエットとなる錐体領域が形成される。そして、物理カメラ111毎に形成された錐体領域の重複領域(論理積)をオブジェクトの3次元モデルとする。なお、3次元モデルを生成する手法についても、複数の撮影画像間で共通する特徴点を抽出し、抽出した特徴点の3次元上の位置を算出して形状を推定する手法など、様々な手法がある。最後に、生成したオブジェクトの3次元モデルに対して、各物理カメラ111の撮影画像に含まれる色情報(テクスチャ情報)を利用して色を付ける。本実施形態では、各物理カメラ111の各撮影画像からの3次元モデルを構成する各点との距離を表す距離画像を生成して利用する。具体的には、距離画像が表す距離情報から、3次元モデルまでの距離が最も近い物理カメラを選択し、その物理カメラの対応する画素位置の色情報を取得して、3次元モデルに色を付ける。色の付け方についても距離が近い複数のカメラの色をブレンドするなど、様々な手法がある。以上のような処理により、任意の仮想視点からの見えを表す仮想視点画像が得られる。なお、仮想視点映像を生成する際に、上述のモデルベースの方式に代えて、モーフィング方式やビルボーディング方式を用いてもよい。モーフィング方式は、近接したカメラ間の映像をカメラの位置関係に応じて補間することで合成し、カメラ間の仮想視点映像を生成する方式である。また、ビルボーディング方式は、撮影画像の被写体の2次元画像を抜き出し、仮想視点に応じて3次元空間上で射影演算処理によって向きを変えることで仮想視点映像を生成する方式である。こういった、物理カメラによる複数の撮影画像を合成処理や射影変換処理することで仮想視点映像を取得する手法はイメージベースレンダリングと呼ばれる。
上記のような画像処理システムにおいて、本実施形態では、物理カメラ111の故障等による影響を抑えつつ、より適切な仮想視点の設定制御を可能にするものである。
(情報処理装置のハードウェア構成)
続いて、サーバ116及び制御装置118といった情報処理装置のハードウェア構成について、図3を用いて説明する。なお、撮像モジュール110a~110j内のカメラアダプタ112a~112jなども、基本的には同様のハードウェア構成を有している。情報処理装置は、CPU201、ROM202、RAM203、補助記憶装置204、通信I/F205、操作部206及びバス207を有する。
続いて、サーバ116及び制御装置118といった情報処理装置のハードウェア構成について、図3を用いて説明する。なお、撮像モジュール110a~110j内のカメラアダプタ112a~112jなども、基本的には同様のハードウェア構成を有している。情報処理装置は、CPU201、ROM202、RAM203、補助記憶装置204、通信I/F205、操作部206及びバス207を有する。
CPU201は、ROM202やRAM203に格納されているプログラムやデータを用いて情報処理装置の全体を制御する。なお、CPU201とは異なる1又は複数の専用のハードウェアを有し、CPU201による処理の少なくとも一部を専用のハードウェアが実行してもよい。専用のハードウェアの例としては、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、およびDSP(デジタルシグナルプロセッサ)などがある。ROM202は、変更を必要としないプログラムなどを格納する。RAM203は、補助記憶装置204から提供されるプログラムやデータ、及び通信I/F205を介して外部から提供されるデータなどを一時記憶する。補助記憶装置204は、例えばHDDやSSD等で構成され、画像データや音声データといった入力データの他、後述の各種処理で参照されるテーブル、各種アプリケーションプログラムなど、様々なデータやプログラムを記憶する。通信I/F205は、外部装置との通信に用いられる。例えば、外部装置と有線で接続される場合には、通信用のケーブルが通信I/F205に接続され、外部装置と無線通信する機能を有する場合には、通信I/F205はアンテナを備える。操作部206は、例えばキーボードやマウス、ジョイスティック、タッチパネル等で構成され、ユーザによる操作を受けて各種の指示をCPU201に入力する。バス207は、上記各部を繋いでデータや信号を伝達する。
なお、本実施形態では、制御装置118から仮想カメラ(仮想視点)の位置・姿勢を示す情報(仮想視点情報)が提供されてサーバ116にて仮想視点映像が生成され、それをユーザは表示装置119にて視聴するシステム構成としている。しかし、システム構成はこれに限定されるものではない。例えば、仮想視点情報を入力するためのユーザインタフェース機能と仮想視点映像を視聴するためのユーザインタフェース機能とを兼ね備えた1台の情報処理装置がシステム内に組み込まれていてもよい。
(制御装置の機能構成)
次に、仮想視点の設定・制御を行う制御装置118の機能構成を説明する。図4は、制御装置118における、仮想視点の設定に関わる主要な機能を表した機能ブロック図である。図4に示す各部の機能は、制御装置118のCPUが所定のプログラムを実行することで実現される。
次に、仮想視点の設定・制御を行う制御装置118の機能構成を説明する。図4は、制御装置118における、仮想視点の設定に関わる主要な機能を表した機能ブロック図である。図4に示す各部の機能は、制御装置118のCPUが所定のプログラムを実行することで実現される。
データ取得部101は、上述の複数視点画像データ及び、各撮像モジュール110a~110j内の物理カメラ111a~111jのカメラパラメータをDB117から取得する。ここで、カメラパラメータは、カメラ111の状態を表す情報であり、各物理カメラ111の世界座標上の3次元位置(設置位置)、姿勢(カメラの撮影方向)、画角、焦点距離、主点(カメラ画像上の中心)などを表すパラメータである。なお、カメラパラメータは、予め各物理カメラ111のカメラ位置を校正するための校正パターンを撮影し、校正パターンを基準として定義される3次元座標と2次元のカメラ座標との座標変換を行うことにより測定、算出されているものとする。
仮想視点設定部102は、例えばジョイスティック、マウス、キーボードといった入力デバイスを介したユーザ操作に基づき、仮想カメラ(仮想視点)を設定し、仮想視点映像を生成するための仮想視点を表す情報(仮想視点情報)を生成する。ここで、仮想視点情報には、ユーザが指定した仮想カメラの世界座標上の3次元位置、姿勢(向き)、焦点距離、主点(カメラ画像上の中心座標)、および仮想視点画像の生成に用いる複数視点画像(フレーム)を特定する時刻情報を含む。生成された仮想視点情報は、仮想視点制御部104に出力される。
視点評価部103は、撮影対象の3次元空間において、現在設定中の仮想視点及び予め設定した複数の仮想視点候補について、画質低下の起きやすさを定量的に評価する。視点評価部103の詳細については後述する。評価結果は、仮想視点制御部104に出力される。
仮想視点制御部104は、仮想視点設定部102から入力された仮想視点情報で特定される仮想視点を、視点評価部103から入力された評価結果に基づいて、画質低下の生じにくいより適切な仮想視点(移動先)を決定する。仮想視点制御部104の詳細については後述する。
以上が、制御装置118の仮想視点の設定・制御に関わる機能部の概要である。そして、仮想視点制御部104にて生成される移動先の仮想視点に対応する仮想視点情報が、サーバ116へと送られ、サーバ116において仮想視点映像の生成が実行されることになる。
<空間評価値>
続いて、視点評価部103が仮想視点の評価に用いる空間評価値について説明する。本明細書における空間評価値とは、撮影対象の3次元空間を一定の体積を持つ部分空間(以下、「単位空間」と表記)に分割したときの、各物理カメラからの見え具合を単位空間毎に数値化したものである。図5(a)は、撮影対象空間であるサッカーのフィールド501を、15個の単位空間A~Oに等分に分割した状態を示している。そして、各単位空間A~O内の黒丸502は、各単位空間を代表する位置を示す。各単位空間とその代表位置は予め決定され、例えば図5(b)に示すようなテーブル形式で保持されているものとする。いま、単位空間Aの代表位置を表す座標値は(Xa,Ya,Za)であり、以下同様に、単位空間Bの代表位置を表す座標値(Xb,Yb,Zb)から単位空間Oの代表位置を表す座標値(Xo,Yo,Zo)までが図5(b)のテーブルに記載されている。なお、説明を容易にするため、図5(a)ではフィールド501をZ方向から俯瞰したXY平面で示しているが、実際には各単位空間は立体空間であり、Z方向にも値を持つ。また、この例ではZ方向には空間を分割していないが、Z方向にも分割してさらに細かく単位空間を規定してもよい。また、それぞれの単位空間の大きさは等分である必要はなく不均一でもよい。さらにその形状についても直方体以外の任意の形状でもよい。また、単位空間同士で一部が重複してもよいが、オブジェクトの3次元モデルは必ずいずれかの単位空間に含まれるものとする。
続いて、視点評価部103が仮想視点の評価に用いる空間評価値について説明する。本明細書における空間評価値とは、撮影対象の3次元空間を一定の体積を持つ部分空間(以下、「単位空間」と表記)に分割したときの、各物理カメラからの見え具合を単位空間毎に数値化したものである。図5(a)は、撮影対象空間であるサッカーのフィールド501を、15個の単位空間A~Oに等分に分割した状態を示している。そして、各単位空間A~O内の黒丸502は、各単位空間を代表する位置を示す。各単位空間とその代表位置は予め決定され、例えば図5(b)に示すようなテーブル形式で保持されているものとする。いま、単位空間Aの代表位置を表す座標値は(Xa,Ya,Za)であり、以下同様に、単位空間Bの代表位置を表す座標値(Xb,Yb,Zb)から単位空間Oの代表位置を表す座標値(Xo,Yo,Zo)までが図5(b)のテーブルに記載されている。なお、説明を容易にするため、図5(a)ではフィールド501をZ方向から俯瞰したXY平面で示しているが、実際には各単位空間は立体空間であり、Z方向にも値を持つ。また、この例ではZ方向には空間を分割していないが、Z方向にも分割してさらに細かく単位空間を規定してもよい。また、それぞれの単位空間の大きさは等分である必要はなく不均一でもよい。さらにその形状についても直方体以外の任意の形状でもよい。また、単位空間同士で一部が重複してもよいが、オブジェクトの3次元モデルは必ずいずれかの単位空間に含まれるものとする。
図6は、図5(a)に示す15個の単位空間A~Oそれぞれに対する空間評価値の一例を示した図である。図6の例では、単位空間A~Oに対応する空間評価値が数値により表されており、値が大きいほど、対応する領域を画角内に含むカメラの数が多いことを示す。例えば、単位空間A、E、K、Oの空間評価値は“18”であるのに対し、それ以外の単位空間の空間評価値は“19”~“21”である。これはフィールド501の各コーナー領域を含む単位空間を画角内に収めている物理カメラの数が相対的に少ないことを意味している。このような空間評価値が低い単位空間を含むような画角を持つ仮想視点を設定した場合には、仮想視点映像の画質が低下する可能性が高いことになる。図6に示される単位空間毎の空間評価値は、各物理カメラ111の撮影画像およびカメラパラメータに基づき算出できる。具体的には、まず、各単位空間の代表位置に対して各物理カメラ111のカメラパラメータを用いて射影変換を行い、各物理カメラ111のカメラ座標に変換する。例えば単位空間Aの場合、その代表位置の座標値(Xa,Ya,Za)を各物理カメラ111のカメラパラメータを使用して射影変換を行った結果を座標値(Xconv,Yconv)であるとする。そして、変換後の座標値(Xconv,Yconv)がある物理カメラ111の画角座標内である場合に、単位空間Aは当該物理カメラ111の画角内にあるものと見做す。いま、各物理カメラ111の画像解像度が横1980画素、縦1200画素であったとする。この場合、変換後の座標値(Xconv,Yconv)が、0≦Xconv<1980、0≦Yconv<1200、に当て嵌まるような代表位置の単位空間であれば、対象となる物理カメラの画角内であると判断できる。このような判定処理を全ての物理カメラ111について行い、ある物理カメラの画角内に含まれると判断された数を単位空間毎に集計し、単位空間毎の空間評価値を求める。つまり、図6に示される単位空間毎の空間評価値は、各単位空間が、どれだけの数の物理カメラから見えているか(物理カメラ視点数)を示すこととなる。
<仮想視点制御部の詳細>
続いて、仮想視点制御部104について詳しく説明する。その前に、本開示に係る技術の課題について確認しておく。例えば、上述の図6に示す単位空間毎の空間評価値の一覧データを、例えば表示装置119に表示することでユーザはフィールド501内のどこに仮想視点を設定すれば画質低下が起きにくいかを事前に把握することが可能となる。ただし、突然に一定数の物理カメラ111が故障するなどして一部の撮影画像が取得できなくなった場合に、それにより画質低下を回避しつつ適切な仮想視点を速やかに設定するのは困難である。仮想的な撮影空間の中で、現在どの場所をどの方向からどのような画角で見ているかを正確に把握し、物理カメラの故障の影響範囲との関係を計算しながら適切な位置に仮想視点を設定するのは、極めて高度なスキルと知識が要求される。そこで、本実施形態では、上記空間評価値を随時更新し、最新の空間評価値を仮想カメラ(仮想視点)の設定制御に反映して、適切な仮想視点が自動的に設定されるようにする。
続いて、仮想視点制御部104について詳しく説明する。その前に、本開示に係る技術の課題について確認しておく。例えば、上述の図6に示す単位空間毎の空間評価値の一覧データを、例えば表示装置119に表示することでユーザはフィールド501内のどこに仮想視点を設定すれば画質低下が起きにくいかを事前に把握することが可能となる。ただし、突然に一定数の物理カメラ111が故障するなどして一部の撮影画像が取得できなくなった場合に、それにより画質低下を回避しつつ適切な仮想視点を速やかに設定するのは困難である。仮想的な撮影空間の中で、現在どの場所をどの方向からどのような画角で見ているかを正確に把握し、物理カメラの故障の影響範囲との関係を計算しながら適切な位置に仮想視点を設定するのは、極めて高度なスキルと知識が要求される。そこで、本実施形態では、上記空間評価値を随時更新し、最新の空間評価値を仮想カメラ(仮想視点)の設定制御に反映して、適切な仮想視点が自動的に設定されるようにする。
図7は、フィールドの周囲に配置した100台の撮像モジュール110のうち一定数について異常が発生し、単位空間Iの空間評価値が“21”から“10”に変化したことを示している。なお、いずれかの撮像モジュール110において、内部の物理カメラ111或いはカメラアダプタ112に異常が発生した場合にはその事実が当該撮像モジュール110から通知されてDB117内に異常情報として格納されるものとする。そして、制御装置118は当該異常情報を随時参照できるものとする。また、撮像モジュール110自身では認識できない故障が発生する場合もある。そこで、DB117に格納された各撮像モジュール110の撮影画像を解析して何らかの異常が見つかった場合に、撮像モジュール110の故障と判断し、異常情報として格納してもよい。画像解析によって見つかる異常としては、例えば、撮影画像に不自然な色が存在する、撮影画像に線が入っている、など一部データの中身が破壊されているようなケースが考えられる。そして、上記のような異常が発生した状態下における、仮想カメラの現在位置が図中の矩形701で示され、その画角が2点鎖線の台形702で示されている。画角内に含まれる単位空間についてその空間評価値が大きく減少する時、仮想視点映像における画質低下の影響が大きい。すなわち、ユーザは、明らかに映像品質の低下を感じることになるため、仮想カメラ(仮想視点)を自動で移動してその影響を回避する。以下、その具体的な方法を説明する。
図8は、本実施形態において自動移動先となり得る6つの候補(以下、「仮想視点候補」と表記)の位置を示す図である。図6の例では番号1~6まで6つの仮想視点候補が1点鎖線の矩形で示され、さらに各仮想視点候補における画角が1点鎖線の台形で示されている。これら仮想視点候補は予め定めておく。この際、仮想視点候補の数や位置は任意である。また、例えば複数の仮想視点候補から成る移動パターンを用意しておき、現在の仮想視点位置に応じて異なる移動パターンを選択して、その中から移動先を決定してもよい。仮想視点候補の位置とその画角を決定する際には、従来、複数の物理カメラで撮影している状況下で特定のカメラから別のカメラに切り替える場合に準じればよい。すなわち、物理カメラで撮影する場合において通常の切り替え先となるようなカメラ位置及び画角と同じようなカメラ位置と画角を仮想視点候補として設定することで、自動で仮想視点が切り替わった後も違和感を少なくできる。仮想カメラの場合は現実の3次元空間に実際に設置する訳ではないため物理カメラよりも数の制約が少なく、多くの仮想視点候補を設定することが可能である。
図9は、上記図7に示したように空間評価値に変化があった場合の仮想カメラの移動先として、図8に示された6つの仮想視点候補の中から番号4の仮想視点候補が選択される様子を示している。いま、仮想視点が位置701にあって、その画角内に含まれる単位空間Iの空間評価値が“21”から“10”に低下している。複数の仮想視点候補の中から1つの移動先を決定する際には、最も画質劣化が起きにくい仮想視点候補を、各仮想視点候補の画角内に含まれる単位空間の空間評価値に基づいて決定する。具体的には、各仮想視点候補について、その画角内に含まれるすべての単位空間の空間評価値の平均値(以下、「視点評価値」と呼ぶ。)を求め、得られた視点評価値が最大となる仮想視点候補を、移動先として決定する。ここで、対象の仮想視点候補の画角内に各単位空間が「含まれる」かどうかは、前述の図5の表に示す単位空間毎の代表位置の座標が、画角の範囲内にあるかどうかで判断する。各単位空間の代表位置の座標値を、仮想カメラのカメラパラメータを使用してカメラ座標に変換し、変換後の座標値が画角の範囲内にある場合に、その単位空間は仮想視点候補の画角に含まれると判断される。
以下の表1は、図8に示す番号1~6の仮想視点候補それぞれに対する、単位空間Iの空間評価値が“20”から“10”に変化後の視点評価値をまとめたものである。
例えば、番号1の仮想視点候補の場合は、その画角内に4つの単位空間(A、B、C、D)が含まれることから、その視点評価値は{(18+19+20+21)÷4}となるので、上述の表1にあるように“19.5”となる。そして、現在位置701においては、5つの単位空間(C、D、E、I、N)が含まれることから、その視点評価値は{(19+19+18+10+19)÷5}となるので、その画角内にける視点評価値は“17.0”まで低下していることになる。
そして、単位空間毎の空間評価値を都度更新した上で、現在の仮想カメラ位置における視点評価値を算出し、算出した視点評価値が予め規定した閾値未満になった場合、仮想視点制御部107によって自動で仮想カメラを遷移させる。具体的には、現在の仮想カメラ位置の視点評価値が一定基準未満になった時点で、予め設定されたすべての移動先項候補について視点評価値を求め、視点評価値が最も高かった仮想視点候補の位置に仮想カメラを移動させる。この際、視点評価値が最大値を取る仮想視点候補が複数存在した場合には、仮想カメラの現在位置に近い方を選択するなどすればよい。閾値としては、例えば全単位空間の空間評価値の最小値などを用いる。上述の例では、空間評価値の最小値は各コーナーの単位空間(A、E、K、O)の“18”であり、これを閾値とした場合には現在の仮想カメラの位置701の視点評価値“17.0”はこれを下回ことになる。この例の場合、上記表1によって、最も視点評価値が高い仮想視点候補は番号1と番号4の“19.5”であるので、より現在位置701に近い番号4の仮想視点候補が、移動先として決定されることになる。なお、閾値をより大きな値にすることで、空間評価値の比較的小さな変化にも追従して仮想カメラを自動で制御することが可能となる。ただし、変化への追従よりも、画質の低下をある程度許容してでもユーザの仮想カメラの操作を優先したい場合がある。その場合には、閾値をより小さな値にすることで、空間評価値に大きな変化があった場合のみ自動制御を有効とすることが可能となる。
上記のような自動制御によって仮想カメラの位置(仮想視点)を移動させた場合、ユーザ側からの見え方として、あたかも視点の異なるカメラに瞬時に切り替わったかのような映像となる。そこで、滑らかに映像を切り替えたい場合は、仮想視点候補の中から移動先が決定した後、現在の仮想視点位置から移動先までの経路上を、一定の時間をかけて遷移するように仮想カメラの移動制御を行えばよい。いま、仮想視点映像の生成を60フレーム/秒で行っていることとし、仮想視点の指定(サーバ116に対する仮想視点情報の送信)を仮想視点制御部107が毎フレーム行っているとする。この場合、現在位置の座標と移動先の座標Xの差分ΔXを予め定められた一定の時間T秒(60フレーム/秒)で移動させるようにする。具体的には、座標の差分値ΔX/(60フレーム×T秒)を毎フレーム、現在の仮想視点位置の座標に加算していけばよい。座標Y、Zについても同様である。
なお、一定の時間ではなく一定の速度で移動させてもよい。その場合、座標の差分値の増量ΔXが一定となるので、毎フレームΔXを現在の仮想視点の座標に加算すればよい。座標Y、Zについても同様である。
さらには、短時間で大きく現在位置における視点評価値が変化した場合、すなわち、一定時間内に、閾値を下回る前の視点評価値と閾値を下回った後の視点評価値との差が予め規定した値以上となった場合には、仮想点位置を瞬時に変更する方が望ましい。視点評価値が短時間で大きく変化した場合は、生成している仮想視点映像の品質に大きな影響があり、画質低下が顕著に現れるためである。また、視点評価値の変化量が大きいほど移動速度を早くするなど、変化の度合いに応じて仮想視点位置を変更するようにしてもよい。
<仮想視点(仮想カメラ)の自動制御>
続いて、上述した仮想視点の自動制御を実現する処理の流れを図10のフローチャートを用いて説明する。図10のフローチャートに示す一連処理は、制御装置118のCPU201が所定のプログラムをROM202等から読み込んでRAM203に展開し、これをフレーム単位で実行することで実現されるものとする。また、制御開始の時点で、生成元となる複数視点画像データがデータ取得部101によって取得されているものとする。なお、以下の説明において符号「S」はステップを意味する。
続いて、上述した仮想視点の自動制御を実現する処理の流れを図10のフローチャートを用いて説明する。図10のフローチャートに示す一連処理は、制御装置118のCPU201が所定のプログラムをROM202等から読み込んでRAM203に展開し、これをフレーム単位で実行することで実現されるものとする。また、制御開始の時点で、生成元となる複数視点画像データがデータ取得部101によって取得されているものとする。なお、以下の説明において符号「S」はステップを意味する。
S1001では、視点評価部103が、撮像モジュール101の異常情報とカメラパラメータに基づいて、撮影対象空間の各単位空間についての空間評価値を更新する。次のS1002では、視点評価部103が、現在の仮想視点に対する視点評価値を算出する。続くS1003では、S1002で算出した視点評価値が一定の条件を満たしているか否か、具体的には予め規定した閾値を下回っていないかが判定される。判定の結果、算出された視点評価値が閾値未満である場合は、現在の仮想視点をいずれかの仮想視点候補に遷移させるためS1004に進む。一方、算出された視点評価値が閾値以上であれば、S1007に進む。
現在の仮想視点の視点評価値が閾値未満になった場合のS1004では、仮想視点制御部104が、予め設定された複数の仮想視点候補のうち、処理対象となる注目する仮想視点候補について、S1001にて更新後の空間評価値に基づき、視点評価値を算出する。すなわち、仮想視点候補の数Nの分だけ視点評価値の算出が本ステップで実施される。本実施形態では、上述の図8に示す6つの仮想視点候補のそれぞれについて、視点評価値の算出が順次行われることになる。
全ての仮想視点候補に対する視点評価値の算出が完了すると、S1005にて、仮想視点制御部104が、算出結果に基づき、最も視点評価値の高かった仮想視点候補を移動先に決定する。次のS1006では、仮想視点制御部104が、S1005にて決定した移動先への変更指示となる仮想視点情報を生成し、サーバ116に送信する。この際には、前述のようにあたかも物理カメラが切り替わるかのように仮想視点を瞬時に移動させてもよいし、複数フレームに亘って滑らかに移動させてもよい。また、仮想視点を自動で移動させる変更指示を行う場合、その後一定時間、ユーザによる仮想カメラの操作を中止するようにしてもよい。自動で仮想カメラを移動させた後にユーザによる仮想カメラの操作を一旦中止することで、ユーザが状況を把握して落ち着くまで画質を維持した状態で仮想視点映像の生成を継続することが可能となる。そして、ユーザが状況を把握して落ち着いた後、改めてユーザによる仮想カメラの操作に戻してもよい。
S1007では、仮想視点映像の生成が終了か否かが判定される。予定されたフレーム数分の仮想視点映像の生成が完了していれば本処理を終了する。一方、未処理のフレームがあれば、S1001に戻って処理が続行される。
S1007では、仮想視点映像の生成が終了か否かが判定される。予定されたフレーム数分の仮想視点映像の生成が完了していれば本処理を終了する。一方、未処理のフレームがあれば、S1001に戻って処理が続行される。
以上が、本実施形態に係る、仮想視点の自動制御の内容である。なお、本実施形態では予め必要な複数視点画像データが取得済みであることを前提に説明を行ったがこれに限定されない。仮想視点映像の生成に必要な複数視点画像データを間断なく取得できるのであれば、撮像モジュール101による撮影と並行して上記の処理を行ってもよい。
<変形例1>
上述の実施形態では、撮像モジュールの故障等によって特定の単位空間における物理カメラ視点数に変化が生じたことにより、視点評価値に変化が生じた場合の対処法であった。しかしながら上述の手法は、視点評価値の変化とは無関係に、撮像モジュールの配置に伴い最初から空間評価値が低い単位空間が存在しているケースにおいても同様に適用できる。例えば、前述の図6において、各コーナーを包含する単位空間(A、E、K、O)における物理カメラ視点数が当初から“10”であったとする。この場合において、これら4つの単位空間(A、E、K、O)をその画角内に含むようにユーザが仮想視点を指定したとする。このとき、当該指定された仮想視点の評価を行い(前述の図10のフローのS1002)、その評価結果に応じて前述した自動制御(S1003~S1006)を行えばよい。これにより、当初から空間評価値の低い特定の単位空間については仮想視点の画角内に入らないように制御することが可能となる。
上述の実施形態では、撮像モジュールの故障等によって特定の単位空間における物理カメラ視点数に変化が生じたことにより、視点評価値に変化が生じた場合の対処法であった。しかしながら上述の手法は、視点評価値の変化とは無関係に、撮像モジュールの配置に伴い最初から空間評価値が低い単位空間が存在しているケースにおいても同様に適用できる。例えば、前述の図6において、各コーナーを包含する単位空間(A、E、K、O)における物理カメラ視点数が当初から“10”であったとする。この場合において、これら4つの単位空間(A、E、K、O)をその画角内に含むようにユーザが仮想視点を指定したとする。このとき、当該指定された仮想視点の評価を行い(前述の図10のフローのS1002)、その評価結果に応じて前述した自動制御(S1003~S1006)を行えばよい。これにより、当初から空間評価値の低い特定の単位空間については仮想視点の画角内に入らないように制御することが可能となる。
<変形例2>
さらに、上述の実施形態では、予め定めた仮想視点候補の中から移動先を決定していたが、これに限定されない。例えば、同時刻に別のオペレータによって操作される他の仮想カメラが複数存在する場合には、当該他の仮想カメラの中から移動先を決定してもよい。この場合も、上記図10のフローによって対応可能である。具体的には、図10のフローチャートにおける「仮想視点候補」を、その時点で存在する「他の仮想カメラ」と読み替えて適用すればよい。この場合、最も視点評価値が高い他のユーザ制御に係る仮想カメラの位置に自動で移動することになる。よって、移動後の仮想カメラの制御については、移動先の仮想カメラを操作していたユーザが担うようにすればよい。
さらに、上述の実施形態では、予め定めた仮想視点候補の中から移動先を決定していたが、これに限定されない。例えば、同時刻に別のオペレータによって操作される他の仮想カメラが複数存在する場合には、当該他の仮想カメラの中から移動先を決定してもよい。この場合も、上記図10のフローによって対応可能である。具体的には、図10のフローチャートにおける「仮想視点候補」を、その時点で存在する「他の仮想カメラ」と読み替えて適用すればよい。この場合、最も視点評価値が高い他のユーザ制御に係る仮想カメラの位置に自動で移動することになる。よって、移動後の仮想カメラの制御については、移動先の仮想カメラを操作していたユーザが担うようにすればよい。
<変形例3>
また、仮想視点候補の視点評価値を算出する際に、現在の仮想視点から各仮想視点候補までの距離を考慮してもよい。例えば、前述の図9の例において、現在の仮想視点位置701から仮想視点候補4~6までの距離は、仮想視点候補1~3までの距離と比較して近い。仮想カメラの移動を自動で行う際にはなるべくユーザに違和感を与えないようにするのが望ましく、そのためには移動距離は短い方がよい。そこで、仮想視点候補を評価する際に、現在の仮想視点位置からの距離に応じて、各単位空間の空間評価値に重み付けを行う。具体的には、現在の仮想視点位置からの距離が近いほど重みを大きくして視点評価値の算出を行う。どの程度の重み付けを行うかはユーザが任意に設定すればよく、例えば画質低下が生じたとしても仮想視点が大きく変化(すなわち、仮想カメラの移動距離が長い)するのは望ましくないと考える場合は、重み付けを大きくする。さらには、現在の仮想カメラの光軸と仮想視点候補の光軸との成す角度に応じて、各単位空間の空間評価値に重み付けをしてもよい。例えば角度が0度に近いほど重みを大きくすることで、角度の変化が少ない仮想視点候補を優先的に選択することが可能となる。
また、仮想視点候補の視点評価値を算出する際に、現在の仮想視点から各仮想視点候補までの距離を考慮してもよい。例えば、前述の図9の例において、現在の仮想視点位置701から仮想視点候補4~6までの距離は、仮想視点候補1~3までの距離と比較して近い。仮想カメラの移動を自動で行う際にはなるべくユーザに違和感を与えないようにするのが望ましく、そのためには移動距離は短い方がよい。そこで、仮想視点候補を評価する際に、現在の仮想視点位置からの距離に応じて、各単位空間の空間評価値に重み付けを行う。具体的には、現在の仮想視点位置からの距離が近いほど重みを大きくして視点評価値の算出を行う。どの程度の重み付けを行うかはユーザが任意に設定すればよく、例えば画質低下が生じたとしても仮想視点が大きく変化(すなわち、仮想カメラの移動距離が長い)するのは望ましくないと考える場合は、重み付けを大きくする。さらには、現在の仮想カメラの光軸と仮想視点候補の光軸との成す角度に応じて、各単位空間の空間評価値に重み付けをしてもよい。例えば角度が0度に近いほど重みを大きくすることで、角度の変化が少ない仮想視点候補を優先的に選択することが可能となる。
<変形例4>
さらには、仮想視点候補の視点評価値を算出する際に、被写体(オブジェクト)の存在する位置を考慮してもよい。オブジェクトの位置情報については、各オブジェクトの3次元モデル生成時に得られているのでそれをサーバ116から取得すればよい。そして、オブジェクトの位置座標(X,Y,Z)が各単位空間の座標範囲内に含まれるどうかを判定し、判定結果に応じた重み付けを、単位空間の空間評価値に対して行う。具体的には、物理カメラ視点数を空間評価値とする上述の実施形態の場合であれば、物理カメラ視点数に重み分の係数を乗算する。この際、オブジェクトが存在する場合に空間評価値を高く評価するため、重みは1より大きな値とする。どの程度大きな値とするかは、ユーザがオブジェクトの存在を重視する度合いに応じて予め決めておけばよい。さらには、存在するオブジェクトの数が多いほど重みを大きくするなど、存在する数に応じて重みを変えてもよい。なお、複数のオブジェクトの中で注目度の高低がある場合には、注目度が高いオブジェクトほど重みを大きくするなど、注目度に応じて重みを変えてもよい。これにより、ユーザの関心が高いと考えられる、オブジェクトの存在する空間をより高く評価した結果に応じた仮想視点の制御が可能となる。
さらには、仮想視点候補の視点評価値を算出する際に、被写体(オブジェクト)の存在する位置を考慮してもよい。オブジェクトの位置情報については、各オブジェクトの3次元モデル生成時に得られているのでそれをサーバ116から取得すればよい。そして、オブジェクトの位置座標(X,Y,Z)が各単位空間の座標範囲内に含まれるどうかを判定し、判定結果に応じた重み付けを、単位空間の空間評価値に対して行う。具体的には、物理カメラ視点数を空間評価値とする上述の実施形態の場合であれば、物理カメラ視点数に重み分の係数を乗算する。この際、オブジェクトが存在する場合に空間評価値を高く評価するため、重みは1より大きな値とする。どの程度大きな値とするかは、ユーザがオブジェクトの存在を重視する度合いに応じて予め決めておけばよい。さらには、存在するオブジェクトの数が多いほど重みを大きくするなど、存在する数に応じて重みを変えてもよい。なお、複数のオブジェクトの中で注目度の高低がある場合には、注目度が高いオブジェクトほど重みを大きくするなど、注目度に応じて重みを変えてもよい。これにより、ユーザの関心が高いと考えられる、オブジェクトの存在する空間をより高く評価した結果に応じた仮想視点の制御が可能となる。
以上のとおり本実施形態によれば、撮像モジュールの故障等に伴い現在の仮想視点の視点評価値が低下した場合に、一定レベル以上の画質が見込めるような位置に仮想視点を自動で遷移させる。これにより、ユーザの操作スキルや知識に拠らず、画質低下を回避可能な適切な位置に仮想カメラを容易に設定することが可能になる。
[実施形態2]
実施形態1では、単位空間の空間評価値をその代表位置が見えている物理カメラの数としていた。次に、単位空間がどの方向から見えているかについても考慮した空間評価値を用いる態様を、実施形態2として説明する。なお、システム構成などの基本構成は実施形態1とするため、以下では実施形態1との差異点である空間評価値の求め方とそれに基づく仮想視点ないしは仮想視点候補の評価を中心に説明を行うものとする。
実施形態1では、単位空間の空間評価値をその代表位置が見えている物理カメラの数としていた。次に、単位空間がどの方向から見えているかについても考慮した空間評価値を用いる態様を、実施形態2として説明する。なお、システム構成などの基本構成は実施形態1とするため、以下では実施形態1との差異点である空間評価値の求め方とそれに基づく仮想視点ないしは仮想視点候補の評価を中心に説明を行うものとする。
本実施形態の具体的な説明に入る前に、単位空間がどの方向から見えているかが、仮想視点映像の画質に与える影響について説明する。いま、ある座標を代表位置とする単位空間が、10台の物理カメラから見えている場合を考える。そして、ある方向からは9台の物理カメラから見えていて、その180度反対方向(Z座標を固定としたXY平面上の視点で反対方法)からは1台の物理カメラしか見えていないとする。この場合、1台のみからしか見えていない方向の仮想視点に対応する仮想視点映像では、画質が低下する可能性が高い。具体的には、どのような仮想視点映像の生成手法によっても、唯一見えている物理カメラの視線方向に選手が重なることで遮蔽領域(オクルージョン)が発生し、当該遮蔽領域部分の形や色を他の物理カメラの撮影画像によって補填することが不可能となる。よって、空間評価値に視線方向の要素を加えることで、より望ましい評価指標になると考えられる。
図11に、本実施形態に係る、空間評価値を視線方向毎に付与した場合の一例を示す。まず、実施形態1の場合と同様、撮影対象空間を単位空間に分割し、単位空間毎に代表位置を求める。次に、各単位空間の代表位置について、どの角度が何台の物理カメラから見えているかを求める。図11の例では、単位空間の代表位置に対して90度ずつ、すなわち、360度を4つの方向範囲に分けて、それぞれの角度範囲で単位領域が見えている物理カメラの台数を求めている。図11において単位空間Aは、0度~90度の角度範囲からは6台、90度~180度の角度範囲からは8台、180度~270度の角度範囲からは6台、270度~360度(=0度)の角度範囲からは4台の物理カメラから見えていることを示している。そのため、単位空間Aを90度~180度の角度範囲から見る仮想視点の場合、270度~360度の角度範囲から見る仮想視点と比較して、見えている物理カメラが多いことから、より高画質な仮想視点映像を生成することができる。
ここで、図12を参照して、単位空間がどの方向から見えているかを求める手法について説明する。いま、ある物理カメラ1200の画角の範囲内に、ある単位空間1201の代表位置1202を含んでいるとする。この時、180度~270度の角度範囲の代表ベクトル1203を、代表位置1202を225度の方向から示すベクトル1203として規定する。図12において、この代表ベクトル1203と物理カメラ1200の光軸1204との成す角度αは、マイナス45度~プラス45度までの値になる。この時、物理カメラ1200は、180度~270度の角度範囲から単位空間1201が見えている物理カメラとしてカウントされる。そして、0度~90度、90度~180度、270度~360度についても同様に、それぞれの角度を45度に分割する位置に代表ベクトルを規定する。光軸1204を持つ物理カメラ1200の場合、180度~270度の視点以外の方向では、代表ベクトルと物理カメラの光軸との角度がマイナス45度~プラス45度までの値にならない。例えば、270度~360度の間の代表ベクトル1205と光軸1204との成す角度βは90度以上開いている。
上述のようにして、どの方向から見えているかについても考慮した空間評価値を単位空間毎に求めた結果、前述の図11に示すように、90度ずつ分割した各角度範囲について物理カメラの視点数がそれぞれ求まる。ここで、単位空間1201をその画角内に含むある仮想カメラについて、その視線方向を評価することを考えた場合、上述したように当該仮想カメラの光軸との角度を求めることで、4つの角度範囲のいずれから代表位置1202を見ているかを判定できる。
図13(a)及び(b)は、上記判定の結果に基づき、どの方向から見えているかについても考慮した空間評価値を用いて、現在の仮想視点の評価(S1002)や仮想視点候補の仮想視点の評価(S1004)を行った場合の結果の一例を示している。図13(a)において、仮想カメラ1300の画角内に代表位置が含まれる5つの単位空間(D、I、J、N、O)の空間評価値を用いて視点評価値が算出される。この際、仮想カメラ1300の光軸1301がマイナス45度~プラス45度までの範囲に含まれる角度の空間評価値を使用する。図13の例では、180度~270度の範囲から見ている物理カメラの視点数(図中の白抜き数字:18、19、20、17、16)が用いられることになる。同様に、仮想視点候補における視点評価値を算出する際にも、それぞれの仮想視点候補の光軸を参照することで、4分割したいずれの方向範囲の空間評価値を使用するかを決定する。図13(b)は、図13(a)における仮想カメラ1300の180度反対側の位置の仮想カメラ1300’から、同じ5つの単位空間(D、I、J、N、O)を見た場合を示している。この際、仮想カメラ1300’の光軸1301’が0度~90度の方向範囲に含まれるため、各単位空間の0度~90度の角度範囲から見ている物理カメラの視点数(図中の白抜き数字:12、12、14、14、13、12)が用いられることになる。図13(a)の場合と比較して、各単位空間における空間評価値は低いことから、同じ単位空間を含む画角であっても方向によって視点評価値が異なることが分かる。
このようにどの角度からみているかという点も評価指標とすることで、より適切な視点評価値が得られる。なお、本実施形態では、360度を90度ずつ4つの角度範囲に分割した場合を例に説明したが、この場合の分割数は任意である。例えば30度ずつ12個の角度範囲に分割するなどより細かく分割することで精度は高まるが、その分だけ演算負荷が高まる。そのため、システムの処理能力や、仮想視点の評価において何を重視したいかに応じて、分割する際の角度の細かさをユーザは選択すればよい。さらには、撮影対象空間の分割数(単位空間のサイズ)についても同様のことがいえる。例えば、撮影対象空間をより緻密に評価したい場合は単位空間を細かく設定して物理カメラ視点数のみで評価し、方向を重視したい場合は角度範囲を細かく分割しつつ単位空間は粗めにするといった具合に調整すればよい。
図13(a)及び(b)は、上記判定の結果に基づき、どの方向から見えているかについても考慮した空間評価値を用いて、現在の仮想視点の評価(S1002)や仮想視点候補の仮想視点の評価(S1004)を行った場合の結果の一例を示している。図13(a)において、仮想カメラ1300の画角内に代表位置が含まれる5つの単位空間(D、I、J、N、O)の空間評価値を用いて視点評価値が算出される。この際、仮想カメラ1300の光軸1301がマイナス45度~プラス45度までの範囲に含まれる角度の空間評価値を使用する。図13の例では、180度~270度の範囲から見ている物理カメラの視点数(図中の白抜き数字:18、19、20、17、16)が用いられることになる。同様に、仮想視点候補における視点評価値を算出する際にも、それぞれの仮想視点候補の光軸を参照することで、4分割したいずれの方向範囲の空間評価値を使用するかを決定する。図13(b)は、図13(a)における仮想カメラ1300の180度反対側の位置の仮想カメラ1300’から、同じ5つの単位空間(D、I、J、N、O)を見た場合を示している。この際、仮想カメラ1300’の光軸1301’が0度~90度の方向範囲に含まれるため、各単位空間の0度~90度の角度範囲から見ている物理カメラの視点数(図中の白抜き数字:12、12、14、14、13、12)が用いられることになる。図13(a)の場合と比較して、各単位空間における空間評価値は低いことから、同じ単位空間を含む画角であっても方向によって視点評価値が異なることが分かる。
このようにどの角度からみているかという点も評価指標とすることで、より適切な視点評価値が得られる。なお、本実施形態では、360度を90度ずつ4つの角度範囲に分割した場合を例に説明したが、この場合の分割数は任意である。例えば30度ずつ12個の角度範囲に分割するなどより細かく分割することで精度は高まるが、その分だけ演算負荷が高まる。そのため、システムの処理能力や、仮想視点の評価において何を重視したいかに応じて、分割する際の角度の細かさをユーザは選択すればよい。さらには、撮影対象空間の分割数(単位空間のサイズ)についても同様のことがいえる。例えば、撮影対象空間をより緻密に評価したい場合は単位空間を細かく設定して物理カメラ視点数のみで評価し、方向を重視したい場合は角度範囲を細かく分割しつつ単位空間は粗めにするといった具合に調整すればよい。
なお、理解を容易とするため、X方向とY方向の2次元で話を進めたが、撮影対象空間の分割と同様、角度範囲の分割についても3次元的に行ってもよい。すなわち、単位空間の代表位置を中心に自由な方向に一定の角度範囲を定義して分割してよい。また、本実施形態は、前述の実施形態1及びその変形例1~4と適宜組み合わせてもよい。
以上のとおり本実施形態によれば、どの方向から見えているかについても考慮した空間評価値を用いることで、より適切に仮想カメラを自動制御することが可能となる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
102 仮想視点設定部
104 仮想視点制御部
118 制御装置
104 仮想視点制御部
118 制御装置
Claims (18)
- 複数の撮像装置が行う撮影に基づく画像から仮想視点画像を生成するための仮想視点の設定を行う情報処理装置であって、
ユーザ操作に基づき、仮想視点を設定する設定手段と、
前記複数の撮像装置に関する情報に基づいて、前記設定手段にて設定された仮想視点が変更されるように制御する制御手段と、
を備えたことを特徴とする情報処理装置。 - 前記複数の撮像装置に関する情報に基づいて、前記設定手段により設定される仮想視点を評価する評価手段をさらに有し、
前記制御手段は、前記評価手段による評価結果に基づいて仮想視点を変更する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記評価手段は、前記複数の撮像装置により撮像される撮像対象空間に含まれる複数の部分空間のうち、前記設定手段により設定された仮想視点の画角に含まれる部分空間に対応付けられた空間評価値に基づいて、前記設定手段により設定された仮想視点を評価する、ことを特徴とする請求項2に記載の情報処理装置。
- 前記制御手段は、前記評価の結果が一定の条件を満たさない場合に、前記変更を行う、ことを特徴とする請求項3に記載の情報処理装置。
- 前記空間評価値は、部分空間に対する視線方向毎に与えられている、ことを特徴とする請求項4に記載の情報処理装置。
- 前記視線方向毎に付与される空間評価値は、部分空間の代表位置を中心として任意の方向に一定の角度範囲を定義して分割された方向毎に付与される、ことを特徴とする請求項5に記載の情報処理装置。
- 前記評価手段は、前記評価として、前記設定手段にて設定された仮想視点の画角に含まれるすべての部分空間の空間評価値の平均値を求める処理を行い、
前記一定の条件を満たさない場合とは、前記平均値が所定の閾値を下回る場合である、
ことを特徴とする請求項4乃至6のいずれか1項に記載の情報処理装置。 - 前記評価手段は、予め定めた複数の仮想視点候補それぞれについてその画角に含まれるすべての部分空間の空間評価値の平均値を求める処理を行ない、
前記制御手段は、前記複数の仮想視点候補の中で最も平均値が高い仮想視点候補を前記移動先に決定する、
ことを特徴とする請求項7に記載の情報処理装置。 - 前記評価手段は、同一の撮影対象空間を対象として設定されている他の仮想視点についてその画角に含まれるすべての部分空間の空間評価値の平均値を求める処理を行ない、
前記制御手段は、前記他の仮想視点の中で最も平均値が高い仮想視点を前記移動先に決定する、
ことを特徴とする請求項7に記載の情報処理装置。 - 前記評価手段は、オブジェクトが存在する部分空間の空間評価値がオブジェクトが存在しない部分空間の空間評価値よりも大きくなるように重み付けして、前記平均値を求める、ことを特徴とする請求項8または9に記載の情報処理装置。
- 前記評価手段は、前記複数の仮想視点候補それぞれについて前記処理を行う場合において、処理対象の仮想視点候補から現在の仮想視点までの距離が近いほど、その画角内に含まれる部分空間の空間評価値が大きくなるように重み付けして前記平均値を求める、ことを特徴とする請求項8に記載の情報処理装置。
- 前記評価手段は、前記他の仮想視点について前記処理を行う場合において、処理対象の他の仮想視点から現在の仮想視点までの距離が近いほど、その画角内に含まれる部分空間の空間評価値が大きくなるように重み付けして前記平均値を求める、ことを特徴とする請求項9に記載の情報処理装置。
- 前記評価手段は、前記複数の仮想視点候補それぞれについて前記処理を行う場合において、処理対象の仮想視点候補の光軸と現在の仮想視点の光軸との角度が近いほど、その画角内に含まれる部分空間の空間評価値が大きくなるように重み付けして前記平均値を求める、ことを特徴とする請求項8に記載の情報処理装置。
- 前記評価手段は、前記他の仮想視点それぞれについて前記処理を行う場合において、処理対象の他の仮想視点の光軸と現在の仮想視点の光軸との角度が近いほど、その画角内に含まれる部分空間の空間評価値が大きくなるように重み付けして前記平均値を求める、ことを特徴とする請求項9に記載の情報処理装置。
- 前記制御手段は、前記評価の結果が、一定の時間内で、前記設定手段にて設定された仮想視点の画角に含まれる部分空間の空間評価値の変化量に応じて、決定した移動先までの移動速度を決定する、ことを特徴とする請求項4乃至6のいずれか1項に記載の情報処理装置。
- 前記複数の撮像装置に関する情報には、前記複数の撮像装置それぞれの設置位置、撮影方向、及び、画角を示す情報を含む、ことを特徴とする請求項1乃至15の何れか1項に記載の情報処理装置。
- 複数の撮像装置が行う複数の視点での撮影に基づく画像から仮想視点画像を生成するための仮想視点の設定を行う情報処理方法であって、
ユーザ操作に基づき、仮想視点を設定する設定ステップと、
前記複数の撮像装置に関する情報に基づいて、前記設定ステップにて設定された仮想視点が変更されるように制御する制御ステップと、
を含むことを特徴とする情報処理方法。 - コンピュータを、請求項1乃至15のいずれか1項に記載の情報処理装置として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020146888A JP2022041594A (ja) | 2020-09-01 | 2020-09-01 | 情報処理装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020146888A JP2022041594A (ja) | 2020-09-01 | 2020-09-01 | 情報処理装置、情報処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022041594A true JP2022041594A (ja) | 2022-03-11 |
Family
ID=80499374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020146888A Pending JP2022041594A (ja) | 2020-09-01 | 2020-09-01 | 情報処理装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022041594A (ja) |
-
2020
- 2020-09-01 JP JP2020146888A patent/JP2022041594A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7051457B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
EP3618429B1 (en) | Display control device, display control method, and program | |
US20180197324A1 (en) | Virtual viewpoint setting apparatus, setting method, and storage medium | |
JP7023696B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2019083402A (ja) | 画像処理装置、画像処理システム、画像処理方法、及びプログラム | |
EP3435670A1 (en) | Apparatus and method for generating a tiled three-dimensional image representation of a scene | |
US11297301B2 (en) | Image capturing system, arrangement determination apparatus, arrangement determination method, and storage medium | |
JP2018113683A (ja) | 画像処理装置、画像処理方法及びプログラム | |
KR20180123302A (ko) | 볼의 궤적을 시각화하는 방법 및 장치 | |
US11127141B2 (en) | Image processing apparatus, image processing method, and a non-transitory computer readable storage medium | |
US11277596B2 (en) | Image processing apparatus, image processing method, and storage medium | |
JP2022041594A (ja) | 情報処理装置、情報処理方法及びプログラム | |
US20220408069A1 (en) | Information processing apparatus, information processing method, and storage medium | |
WO2022176719A1 (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2019145894A (ja) | 画像処理装置、画像処理方法及びプログラム | |
WO2018235762A1 (ja) | 表示制御装置、表示制御方法、およびプログラム | |
JP2015220662A (ja) | 画像処理装置及びその制御方法、並びにプログラム | |
EP4242974A1 (en) | Generation of virtual viewpoint images | |
JP2022103836A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6759300B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2023001850A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2021010102A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2022073648A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2022094788A (ja) | 生成装置、生成方法、及び、プログラム | |
JP2023080710A (ja) | 画像処理装置、画像処理方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230825 |