JP2016001833A - 映像再生システム、及び制御方法 - Google Patents
映像再生システム、及び制御方法 Download PDFInfo
- Publication number
- JP2016001833A JP2016001833A JP2014121580A JP2014121580A JP2016001833A JP 2016001833 A JP2016001833 A JP 2016001833A JP 2014121580 A JP2014121580 A JP 2014121580A JP 2014121580 A JP2014121580 A JP 2014121580A JP 2016001833 A JP2016001833 A JP 2016001833A
- Authority
- JP
- Japan
- Prior art keywords
- camera
- video
- capture
- image data
- virtual viewpoint
- 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
- Closed-Circuit Television Systems (AREA)
Abstract
【課題】複数のカメラで撮像された映像のデータを伝送する際に生ずる遅延を抑止する。【解決手段】映像再生システムは、複数の撮像手段によって撮像された画像データから得られる仮想視点映像を再生する。撮像された複数の画像データは複数の中継機器に送信され、仮想視点映像の上映シナリオ上の時間軸が隣り合わせになる画像を撮像する複数の撮像手段が、異なる中継機器にそれぞれ接続される。【選択図】図2
Description
本発明は、複数のカメラの映像を利用して仮想視点映像を生成して再生する技術に関するものである。
近年、複数台のカメラで同一シーンを撮像し、移動する仮想視点から見た映像(仮想視点映像)を表現する映像再生システムが提案されている(特許文献1)。このようなシステムでは、複数のカメラが画像をそれぞれ撮像し、撮像された画像をリクエストされた順番で連続再生する。
大規模な映像再生システムを構築する場合、カメラ1台につきカメラ制御用PCを1台接続した装置を一組の撮像装置として、複数組の撮像装置を1台のネットワークHUBにそれぞれ接続させることが考えられる。そして、カメラ制御用PCから送信された映像を画像処理する処理装置や、画像処理された映像を再生する表示装置も同様にネットワークHUBに接続する。
1台のネットワークHUBのポート数を超える組数の撮像装置を接続する場合には、複数のネットワークHUBをカスケード接続して対応する。カスケード接続とは、1台のネットワークHUBに複数のネットワークHUBを接続することである。
上記のシステムでは、表示装置が映像を再生する速度以上のスピードで、カメラ制御用PCから表示装置に映像データを送信しないと、表示装置で上映する映像にコマ落ちなどの乱れが生じてしまう。
また、ネットワークHUB同士をカスケード接続すると、1つのケーブルに伝送される映像データが集中することや、ケーブルの通信帯域の制限により、指定時間内に映像データを表示装置に送信できないケースがある。
本発明に係る映像再生システムは、複数の撮像手段によって撮像された画像データから得られる仮想視点映像を再生する映像再生システムであって、
前記撮像された複数の画像データを受信する複数の中継機器を備え、
前記仮想視点映像の上映シナリオ上の時間軸が隣り合わせになる画像を撮像する前記複数の撮像手段が、異なる前記中継機器にそれぞれ接続されることを特徴とする。
前記撮像された複数の画像データを受信する複数の中継機器を備え、
前記仮想視点映像の上映シナリオ上の時間軸が隣り合わせになる画像を撮像する前記複数の撮像手段が、異なる前記中継機器にそれぞれ接続されることを特徴とする。
本発明によれば、複数のカメラで撮像された映像のデータを伝送する際に生ずる遅延を抑止することが可能となる。
以下、本発明を実施するための形態について図面を用いて説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらに限定する趣旨のものではない。
本実施例では、複数のカメラで撮像された画像データを複数のネットワークHUB等の中継機器を介して撮像画像を処理する画像処理PCに送信する。この送信の際に、1台のネットワークHUBに画像データの送信が集中しないように、カメラとカメラを制御するキャプチャPCとネットワークHUBとを配置する。具体的には、後述する上映シナリオ上で時間軸が隣り合わせになるような画像を撮像するカメラ(とキャプチャPCとの組)を、異なるネットワークHUBに接続する。
図1は、本実施例における映像再生システムの概念図である。図1(a)において、本実施例におけるカメラは、図示しない金属製の枠によって宙吊りの状態で、床102の上に固定されている。固定されたカメラは、例えば仮想視点の移動ルート(R)に沿ってカメラの撮像領域が重複するように配置される。仮想視点105は、図1(a)、図1(b)中に示したように、床102をx−y平面上とし高さ方向をz軸として設定された座標系上にマッピングされる。また、図1(b)は図1(a)を2次元平面に投影したものであり、複数の人がいる場合を想定したものである。図1(b)においては、人104は被写体となる人を表している。
図2は、本実施例における映像再生システムの構成の一例を示す図である。本システムは、カメラ101と、管理サーバPC201と、キャプチャPC202と、画像処理PC203と、画像表示PC204と、ネットワークHUB(第2の中継機器)205と、ネットワークHUB206とを備える。
本システムでは、カメラ1台に対してキャプチャPCが1台接続されている。複数のカメラで撮像された画像データは、異なるキャプチャPCにそれぞれ送信される。複数のキャプチャPCで受信された画像データは、ネットワークHUB206を介してネットワークHUB205にそれぞれ送信される。
ネットワークHUB206とネットワークHUB205とは、カスケード接続されている。ネットワークHUB206を介してネットワークHUB205に送信された画像データは、画像処理PC203に送信される。画像処理PC203は、受信した画像データを画像処理して、画像表示PC204に送信する。画像表示PC204は、受信した画像データを再生する。図1のカメラ101aから101jは、図2のカメラ101aから101jにそれぞれ対応する。
カメラ101は、上映シナリオに従って撮像を行う。上映シナリオとは、キャプチャPC202が、撮像する順番をカメラ101に対して指示するための情報である。キャプチャPC202は、上映シナリオにより、例えば、図1に示す仮想視点の移動ルート(R)に従って撮像するように、カメラ101を制御する。
或るカメラが撮像した一定時間(例えば、1/30秒)後に、或るカメラの隣り合うカメラが撮像する。或るカメラが撮像した画像と、或るカメラの隣り合うカメラが撮像した画像は、上映シナリオ上の時間軸で隣り合わせになる。例えば、カメラ101aが或る時刻に画像を撮像し、その或る時刻から一定時間経過した時刻に、カメラ101aの隣に設置されたカメラ101bが画像を撮像したと仮定する。すると、カメラ101aで撮像された画像と、カメラ101bで撮像された画像とは、上映シナリオ上の時間軸で隣り合わせになる。なお、上映シナリオは、例えば、或るカメラは連続して撮像し、また或るカメラは特定の時間においては撮像しないようなシナリオであってもよい。また、上映シナリオは、カメラ101またはキャプチャPC202が故障した場合、故障したカメラ101または故障したキャプチャPC202に接続されたカメラ101の順番を飛ばして撮像するシナリオであってもよい。さらに、上映シナリオは、故障したカメラ101を、例えば、故障したカメラ101の隣に位置する正常なカメラ101で代替して、撮像するシナリオであってもよい。
図2に示す本システムでは、上映シナリオに従い、指定されたカメラから撮像を開始する。例えば、図1で示す移動ルート(R)に従い、カメラ101aから撮像を開始する。カメラ101aで撮像した画像データは、キャプチャPC202A1に送信され、カメラ101bで撮像した画像データは、キャプチャPC202B1に送信される。キャプチャPC202A1に送信された画像データは、ネットワークHUB206Aに送信され、キャプチャPC202B1に送信された画像データは、ネットワークHUB206Bに送信される。カメラ101cからカメラ101jで撮像された画像データについても同様に、移動ルート(R)に従って順番に、キャプチャPC202を介して、ネットワークHUB206に送信される。
本実施例の構成により、撮像を開始するカメラ101aで撮像される画像データは、ネットワークHUB206Aに送信され、次にカメラ101bで撮像される画像データは、ネットワークHUB206Bに送信されることになる。このため、ネットワークHUB206Aに画像データが連続して送信されず、ネットワークHUB206Aへ画像データが集中して送信されることを抑制することが可能となる。つまり、複数台のネットワークHUBに画像データの送信を分散することが可能となる。
本実施形態では、上映シナリオ(カメラ101へのリクエスト順)を考慮してカメラ101とキャプチャPC202との組をグルーピングして、グループ単位でネットワークHUB206に接続することもできる。例えば、図2で、カメラ101aとキャプチャPC202A1を1つの組としてグルーピングする。
以下、映像再生システムを具体的に説明する。即ち、映像再生システムの各PCの機能の説明、仮想視点映像の生成処理の説明、カメラの選択処理の説明を行なう。
<各PCの機能>
以下、本システムにおける各PCの機能について説明する。
以下、本システムにおける各PCの機能について説明する。
管理サーバPC201は、システム全体を管理するPCであり、システムを操作するため、コンソール画面とキーボード、マウスなどの操作デバイスが接続されている(非図示)。
キャプチャPC202は、カメラ101と同数分用意されている。カメラ101は各キャプチャPC202にHD−SDI(High Definition Serial Digital Interface)ケーブルで接続され、カメラ101で撮像した映像はキャプチャPC202を介して画像処理PC203へ送信される。例えば本実施例ではカメラ101の出力解像度はフルHD解像度(1920×1080画素、秒30フレーム)であり、非常にデータ量が大きい。そのため、全てのカメラ101の映像を一斉に送信すると通信経路の帯域を使い切ってしまい、映像を上映するまでに画像データを処理できなくなるという問題が発生する場合がある。そこで、管理サーバPC201は、予め定められたシナリオを現在使用可能なカメラやPCを用いて再現するための上映コントロール情報を生成し、これに従って映像データを伝送する。なお、不図示の19インチラックが、キャプチャPCと、ネットワークHUBとをそれぞれ備えてもよい。
画像処理PC203は、キャプチャPC202から送信された映像データを受信・加工して画像表示PC204へ送信する。
画像表示PC204は、画像処理PC203から送信された映像を受信してバッファリングし、管理サーバPC201から指定されたタイミングで上映する。
各キャプチャPC202と各画像処理PC203と管理サーバPC201と画像表示PC204とはネットワークHUB205及び206によってLAN接続されており、データの送受信はTCP/IPを用いて行われる。
各PCの機能の詳細は後述する。また、カメラ101は全て同期を取るために、各カメラには同期信号(ジェネロック、GenLock)が供給されている(不図示)。
ネットワークHUB205と画像処理PC203との間の帯域は、例えば、ネットワークHUB206とネットワークHUB205との間の帯域の4倍となっている。これにより、ネットワークHUB205と画像処理PC203との間でボトルネックが生じることを抑止することが可能となる。
<シナリオデータ及び上映コントロール情報>
本実施例における映像再生システムは、固定されたカメラ101を用いて、予め定められたシナリオデータ(例えば、図3(a)を参照)等のデータに沿って移動する仮想視点映像を生成し、これをリアルタイム上映することもできる。以下、本実施例にかかる仮想視点映像の生成及び上映について説明する。
本実施例における映像再生システムは、固定されたカメラ101を用いて、予め定められたシナリオデータ(例えば、図3(a)を参照)等のデータに沿って移動する仮想視点映像を生成し、これをリアルタイム上映することもできる。以下、本実施例にかかる仮想視点映像の生成及び上映について説明する。
図3は、本実施例におけるシナリオデータ及び上映コントロール情報の一例を示す図である。シナリオデータとは、仮想視点映像を再生する際に、どの仮想視点の画像データをどの時間軸のフレームにおいて用いるかを規定するデータである。本実施例では、例えば5分程度の短時間のシナリオが一つのシナリオとして用いられる。図3(a)は、一つのシナリオを表すシナリオデータの例を示している。シナリオデータには、上映時間中の各フレームについて、仮想視点の位置を表現するための仮想視点座標、仮想視点の方向を表現するための仮想視点方向、仮想視点の姿勢を表現するための仮想視点上方向ベクトルが記述される。仮想視点座標と仮想視点方向は、この座標系における仮想視点の位置と向きである。仮想視点上方向ベクトルとは、仮想視点の向きに対して視界がどの程度傾いているかを指定するためのパラメータで、仮想視点方向と仮想視点上方向ベクトルは直交する。これに画角を加えることで、仮想視点からの視界を表現することが出来る。本実施例では、さらにレンズ効果パラメータ(歪曲強度α、周辺光量落ち強度β。詳細は後述)を加えるので、あたかも実際にカメラを移動しながら撮像したかのような自然な映像が生成される。
また、シナリオデータは、後述する仮想視点映像生成処理で用いられる画像処理パラメータである、基準面の高さを含む。基準面の高さは、使用カメラの切り替え時の滑らかさに影響する。例えば本実施例において、ほぼ無人の状態の場合、基準面を床に取るのが望ましいが、図1(b)のように、撮像領域に多数の人が居る場合には、平均身長程度の高さに基準面を取った方が滑らかな映像になる。シナリオデータに基準面の高さを保持することで、被写体の状態に応じて基準面の高さを補正することが可能になる。基準面の高さの補正は、各カメラによる撮像画像データから自動生成しても良いし、マニュアル指定しても良い。
図3(b)及び図3(c)は本実施例における上映コントロール情報の一例を示す図である。上映コントロール情報にはカメラ制御情報とPC制御情報とが含まれる。図3(b)はカメラ制御情報の例を示しており、カメラIDと各フレームとが対応付けられている。図3(c)はPC制御情報の例を示しており、画像処理PCIDと各フレームとが対応付けられている。上映コントロール情報には、上映開始時刻から終了時刻までの各フレームについて、どのカメラの映像をどの画像処理PC203で処理するかが記載される。例えば、カメラ制御情報(図3(b))の値は、0は対応するカメラ101の映像データの送信が不要であることを、1は対応するカメラ101の映像データの送信を行うことを、2は対応するカメラ101のヘッダ情報のみを送信することを意味する。また、PC制御情報(図3(c))の値については、1が対応する画像処理PC203を使用することを、0が対応する画像処理PC203を使用しないことを意味する。図3中に示したように、上映コントロール情報に含まれる時刻は、上映開始時刻を0:00:00.00fとした相対時刻で記述される。
<キャプチャPC>
キャプチャPC202は、カメラ101からの映像をキャプチャし、画像処理PC203へ送信する。
キャプチャPC202は、カメラ101からの映像をキャプチャし、画像処理PC203へ送信する。
図4は、本実施例におけるキャプチャPC202の構成の一例を示す図である。キャプチャPC202は、管理サーバPC201から受け取った上映コントロール情報408に記載のカメラ制御情報に従ってカメラを制御するカメラ制御処理部411を備える。
なお、画像処理PC203で適用する仮想視点映像生成処理には、撮像時のレンズ特性データが用いられる。しかしながら、レンズ特性データはカメラの撮像時設定(例えば、f値、画角、撮像距離)によって変化することが知られている。よって、キャプチャPC202はレンズ補正データを取得するレンズ補正データ取得処理部402を備える。本実施例では、レンズ補正値データベース403を備えることで、撮像時設定に応じたレンズ補正データを得る。送信データ生成部406は、レンズ補正データ取得処理部402が取得したレンズ補正データを、ヘッダ情報として画像データに付加する。レンズ補正データとしては、歪曲、周辺光量、倍率色収差などの様々な補正データが考えられるが、簡単のため本実施例では歪曲と周辺光量の補正データを含むものとする。また、仮想視点映像を生成するためには、カメラ101の位置、方向、姿勢や画角などのカメラ位置・姿勢情報404が用いられる。そこで、送信データ生成部206は画像データにカメラ位置・姿勢情報もヘッダ情報として付加する。このほか、ヘッダ情報には、レンズ補正データやカメラ位置・姿勢情報のほか、キャプチャ時刻、画像サイズ、画像データタイプなどが含まれる。
映像データをキャプチャPC202から画像処理PC203へ送る送信処理は前述のようにTCP/IPで行われる。データを送信する度に画像処理PC203と再接続するのは効率が良くないので、送信処理部405を画像処理PC203の台数分用意して対応する。本実施例では、送信処理部405として送信プログラムが用いられる。すなわち、送信プログラムを画像処理PC203の台数分用意して対応する。また、送信経路の帯域の問題で受信したデータを遅延無く送ることができない場合があるので、キャプチャPC202は、予め指定された秒数分だけバッファリングするバッファ401を有する。
本実施例にかかるキャプチャPC202は、送信処理部405の他に、カメラ101から映像を受け取りヘッダやレンズ補正データを付加して送信用データを作成する送信データ生成部406と、送信処理部405の管理を行う管理部407とを有する。
送信データに含まれる画像データについては、設定ファイルによって圧縮するかどうかを指定できる。ヘッダ情報に含まれる画像データタイプは、圧縮する場合には1、圧縮しない場合には0が指定される。また、ヘッダだけを送信する場合には2が指定される。映像データの圧縮はフレーム単位で行われる。圧縮にはJPEG(Joint Photographic Experts Group)形式を用いてもよいし、DXTC(DirectX Texture Compression)形式を用いてもよい。DXTCはGPUの利用により非常に高速に画像データを圧縮できる。
<画像処理PC>
画像処理PC203は、キャプチャPC202から受信した映像を加工し、画像表示PC204へ送信する。
画像処理PC203は、キャプチャPC202から受信した映像を加工し、画像表示PC204へ送信する。
図5は、本実施例における画像処理PC203の構成の一例を示す図である。キャプチャPC202と同様に、全てのキャプチャPC202と接続した状態を維持するため、キャプチャPC202の台数分の受信処理部501を有する。受信処理部501は、キャプチャPC202の送信処理部508と対応してプログラムとして起動させることができる。
本実施例では、受信処理部501は、画像データタイプに応じた処理として、画像データタイプが1の場合、圧縮データの解凍処理を適用して非圧縮データ(画像データタイプ=0)に変換する。
管理部503は、上映コントロール情報504に従って仮想視点映像生成用のフレーム画像データを選択する。
そして、管理部503は、仮想視点映像再生処理部505に映像生成指示を出す。ただし、映像生成指示後、仮想視点映像生成部505からデータ出力完了通知を受け取っていない場合には、出力完了通知を受信するまで映像生成指示をブロックする。これは、同時に複数の仮想視点映像生成処理を実行すると、既に実行中の映像生成処理のスループットが低下してしまい、リアルタイム再生が出来なくなる可能性が高くなるからである。そのため、管理部503は処理キュー509にデータ出力完了通知の確認と取得を行い、通知を取得してから処理を継続する。
映像生成指示を受けた仮想視点映像生成部505は、管理部503によって選択された映像と上映時刻を用いて、シナリオデータ506に沿った仮想視点映像データを生成する。仮想視点映像生成処理の詳細については後述する。
仮想視点映像生成部505は、生成した仮想視点映像データを送信バッファ507に出力する。
そして、仮想視点映像生成処理部505は、管理部503と送信処理部508にデータ出力完了を通知する。
送信処理部508は、データ出力完了通知を受け、生成した仮想視点映像データを画像表示PC204へ送信する。送信する仮想視点映像データには、キャプチャ時刻、及び画像解像度がヘッダとして付加される。
<画像表示PC>
画像表示PC204は、次の機能を持つ。
(a)画像処理PC203から受信したデータの再生(通常上映)
(b)バックアップ映像の上映(バックアップ上映)
画像表示PC204は、通常、画像処理PC203から受信したデータを再生する。但し、複数のカメラやPCの故障によって、受信したデータを正常に上映できない場合が考えられる。このような場合には、後述する管理サーバPC201上での判定処理によりバックアップ上映への切り替えが行われる。以下では、画像表示PC204の通常上映時及び、バックアップ上映時の処理の詳細について説明する。
画像表示PC204は、次の機能を持つ。
(a)画像処理PC203から受信したデータの再生(通常上映)
(b)バックアップ映像の上映(バックアップ上映)
画像表示PC204は、通常、画像処理PC203から受信したデータを再生する。但し、複数のカメラやPCの故障によって、受信したデータを正常に上映できない場合が考えられる。このような場合には、後述する管理サーバPC201上での判定処理によりバックアップ上映への切り替えが行われる。以下では、画像表示PC204の通常上映時及び、バックアップ上映時の処理の詳細について説明する。
図6は、本実施例における画像表示PC204の構成の一例を示す図である。画像表示PC204は、画像処理PC203と同様に、各画像処理PC203に対応する受信処理部601を持ち、受信したデータを受信バッファ602にバッファリングする。画像表示PC204は大容量のメモリを搭載し、上映対象となる全ての映像をバッファリングできるようにする。これは、バックアップ映像を生成するために好適である。受信処理部601はプログラムとして構成できる。
受信処理部601は、画像処理PC203において生成された映像データを受信し、受信バッファ602に格納する。
受信処理部601は、映像1フレーム分の受信が完了する度に、管理部603にデータ受信完了通知を送信する。
管理部603は、データ受信完了通知を受信したら受信映像管理領域604内の受信映像管理情報を更新する。ここで受信映像管理情報は、受信した映像データのキャプチャ時刻、受信処理部601の識別IDを含むものである。
管理部603は、上映開始時刻まで待機し、上映開始時刻から上映終了時刻までの間、上映管理処理を行う。
管理部603は、再生対象となる映像データを受信バッファ602内から選択する。映像データの選択は、受信映像管理領域604内の各映像データのキャプチャ時刻や受信処理部601の識別IDで利用して行う。ここで、上映コントロール情報606は上映開始時刻を基準とした相対時刻で記述されているため、管理部603は、キャプチャ開始時刻を用いて再生対象となるキャプチャ時刻を計算し、この時刻に対応したフレーム画像データを得る。
管理部603は、このようにして選択した映像データを画像表示部605に通知する。
画像表示部605は、指定された映像データを表示する。
以後、全てのフレームについて再生処理を適用し、全てのフレーム画像を表示したと判定された場合、管理部603は終了処理を実行する。なお、処理の遅延などで対応する映像データが存在しない場合には表示を更新せず、直前に表示した映像をそのまま表示した状態にする。このような処理により、フレームの欠落により上映時間が極端に短くなったり上映した映像が不自然になったりすることを回避できる。
本実施例における終了処理は、全てのフレームデータをファイルに格納する処理である。このファイルは、バックアップ映像として使用する。複数回上映する場合には、上映した全ての映像を保存しても良いし、フレームの欠落が無い場合だけ保存しても良い。
ここで、複数のカメラやPCの故障によって、正常に上映できない場合が考えられる。このような場合には、後述する管理サーバPC201上での判定処理によりバックアップ上映への切り替えを行うことができる。
<管理サーバPC>
管理サーバPC201は、映像再生システム全体を管理する。具体的には、次のような機能を持つ。
(a)映像再生システムを構成するPCやカメラ101の有効判定
(b)各PCにおける映像バッファリング時間の変更
(c)上記(a)、(b)に基づいた上映コントロール情報の生成
(d)シナリオデータ、上映コントロール情報の配布
(e)キャプチャPC202、画像処理PC203の設定ファイルの配布
ここで、PCやカメラ101の有効判定処理について説明する。図7は、本実施例におけるカメラ101やPCの有効判定処理の流れを示すフローチャートである。ステップS701において管理サーバPC201は、まず、画像表示PC204に対して問い合わせを行う。
管理サーバPC201は、映像再生システム全体を管理する。具体的には、次のような機能を持つ。
(a)映像再生システムを構成するPCやカメラ101の有効判定
(b)各PCにおける映像バッファリング時間の変更
(c)上記(a)、(b)に基づいた上映コントロール情報の生成
(d)シナリオデータ、上映コントロール情報の配布
(e)キャプチャPC202、画像処理PC203の設定ファイルの配布
ここで、PCやカメラ101の有効判定処理について説明する。図7は、本実施例におけるカメラ101やPCの有効判定処理の流れを示すフローチャートである。ステップS701において管理サーバPC201は、まず、画像表示PC204に対して問い合わせを行う。
ステップS702において管理サーバPC201は、予め定めた時間TA以内に画像表示PC204から応答が返ってくるかどうかを確認する。ここで、画像表示PC204、画像処理PC203は、問い合わせに対して0を返す。キャプチャPC202は、カメラ101が認識できない場合は1、カメラ101は認識できるがキャプチャエラーが多く発生した場合は2、それ以外の場合は0を返す。
画像表示PC204が応答を返せない場合、カメラ101からの映像を上映できなくなるので、ステップS703において管理サーバPC201はアラート表示をして機材の交換を促して処理を終了する。ステップS703のアラート表示は、例えば画像表示PC204に障害が発生したので上映が実行できない旨を表示することができる。ステップS702において画像表示PC204から応答があった場合、すなわち、画像表示PC204に問題が無い場合には、ステップS704に進む。
ステップS704において管理サーバPC201は、引き続き各画像処理PC203に対しても同様に問い合わせを行い、正常に動作しているか否かを確認する。画像処理PC203は正常に動作している場合、問い合わせに対して0を返す。
ステップS705において管理サーバPC201は、1台でも応答が無い画像処理PC203があった場合には、ステップS711に進みアラート表示をする。そして、ステップS712において管理サーバPC201は画像表示PC204に対してバックアップ上映を指示して処理を終了する。ここでのアラート表示の例としては、どの画像処理PC203から応答がないかを通知したり、バックアップ上映に切替える旨を通知することが挙げられる。
ステップS705において画像処理PC203から応答があった場合、すなわち画像処理PC203にも問題が無い場合、ステップS706に進み、キャプチャPC202に対して問い合わせを行う。キャプチャPC202は、例えばカメラ101が認識できない場合は1、カメラ101は認識できるがキャプチャエラーが多く発生した場合は2、それ以外は0を返す。本実施例では、説明の簡便化のため、上記のケースを例に挙げているが、もちろん、これ以外にも細かい障害要因の種別を特定するための値を返してもよい。キャプチャPC202への問い合わせ結果は図4で示したキャプチャエラー情報410によって検知することができる。すなわち、キャプチャエラー情報410は検知結果を示す情報である。
ステップS707において管理サーバPC201は、問い合わせの結果得られたカメラ101及びキャプチャPC202の状態から、有効カメラリストを生成する。有効カメラリストとは、カメラ101及びキャプチャPC202の状態が正常である組を含むリストのことである。有効カメラリストには、カメラ101及びキャプチャPC202の各組毎に上記のキャプチャエラー情報が関連付けられている。従って、上記のキャプチャエラー情報が0である組が、状態が正常である組を表している。また、上記のキャプチャエラー情報が0以外の値の場合には、その組のカメラ101及びキャプチャPC202の少なくとも一方に障害が発生していることを表している。
ステップS708において管理サーバPC201は、全てのキャプチャPC202が正常であるかを判定する。キャプチャPC202からの応答が不能である場合、あるいは返された値が0以外の個体が存在する場合、ステップS709に進みカメラ選択処理を実行する。カメラ選択処理は、使用不能なカメラを除いた構成で、シナリオに沿った上映をするための上映コントロール情報を生成する処理である。カメラ選択処理の詳細については後述する。
ステップS710において管理サーバPC201は、カメラ選択処理でエラーが発生したか否かを判定する。つまり、使用不能なカメラ101を除いた構成ではシナリオに沿った上映ができないか否かを判定する。カメラ選択処理でエラーが発生した場合には、ステップS711、S712に進み、アラート表示を行った上で、画像表示PC204に対してバックアップ上映を指示して処理を終了する。ここでのアラート表示の例としては、障害が発生しているキャプチャPC202を通知し、バックアップ上映に切替える旨を通知することが挙げられる。
なお、本実施例では、映像再生システムを構成する全てのPCで実行するアプリの設定ファイルは、各PC上に公開された共有フォルダに配置される。したがって、管理サーバPC201から各PCの共有フォルダにアクセスすることで、設定を変更することができる。例えば、各PCにおける映像バッファリング時間や、画像表示PC204でのバックアップ上映指示などは、このような共有フォルダの設定ファイルを変更することによって行うことができる。
<仮想視点映像生成処理>
次に、本実施例のステップS707における仮想視点映像生成処理を説明する。仮想視点映像生成処理では、ある高さ一定の面を基準面として、この基準面にある物体が、カメラ切り替え時にスムーズに接続されるように映像を生成する。この仮想視点映像生成処理では、以下に挙げる映像補正、変換、映像効果付加を一貫して行う。
(1)カメラ映像の歪曲、及び、倍率色収差補正
(2)周辺光量落ち補正
(3)仮想視点映像とカメラ映像の間のパース変換
(4)仮想視点映像に対する周辺光量落ち効果の付加
(5)歪曲効果の付加
この仮想視点映像生成処理は、上記操作を一貫して行うため効率が良く、リアルタイム再生に適した処理である。尚、仮想視点映像生成処理の処理時間が画像表示PC204でフレームを再生する間隔(例えば、秒30コマ表示の場合、1/30秒)よりも長い場合、リアルタイム再生できなくなってしまう。そこで本実施例では、画像処理PC203を複数台用意してインターリーブすることで対応する。例えば画像処理PC203を10台用意した場合、仮想視点映像生成処理は1/3秒未満で処理すれば良い。
次に、本実施例のステップS707における仮想視点映像生成処理を説明する。仮想視点映像生成処理では、ある高さ一定の面を基準面として、この基準面にある物体が、カメラ切り替え時にスムーズに接続されるように映像を生成する。この仮想視点映像生成処理では、以下に挙げる映像補正、変換、映像効果付加を一貫して行う。
(1)カメラ映像の歪曲、及び、倍率色収差補正
(2)周辺光量落ち補正
(3)仮想視点映像とカメラ映像の間のパース変換
(4)仮想視点映像に対する周辺光量落ち効果の付加
(5)歪曲効果の付加
この仮想視点映像生成処理は、上記操作を一貫して行うため効率が良く、リアルタイム再生に適した処理である。尚、仮想視点映像生成処理の処理時間が画像表示PC204でフレームを再生する間隔(例えば、秒30コマ表示の場合、1/30秒)よりも長い場合、リアルタイム再生できなくなってしまう。そこで本実施例では、画像処理PC203を複数台用意してインターリーブすることで対応する。例えば画像処理PC203を10台用意した場合、仮想視点映像生成処理は1/3秒未満で処理すれば良い。
図8は本実施例における画像処理PC203の仮想視点映像生成処理部505において行われる仮想視点映像生成処理を示すフローチャートである。以下、仮想視点映像生成処理の詳細について数式を用いて説明する。
まず、
とする。図9は本実施例における仮想視点映像生成処理で用いられる各パラメータを説明するための図である。図9も併せて参照されたい。
は方向を表すだけのベクトルであるため、長さは1とする。これらのベクトルを表す座標系には、前述の、床面をx−y平面として、高さ方向をz軸とする座標系を用いる。仮想カメラの水平半画角、及び、垂直半画角をそれぞれθh,out、θv,outとする。
仮想視点映像生成処理は、仮想視点映像の画素毎に処理を進めていく。ここで、
とする。まず、仮想視点映像生成処理部505は、仮想視点映像に歪曲効果を持たせるため、ステップS801において歪曲効果の逆変換(歪曲補正)を行い、
を計算する。逆変換の具体的な数式は、どのような歪曲効果を持たせるかに依存するが、例えば、以下の式(1)を用いればよい。
ここで、
は、任意視点映像の中心の画素位置である。
αは歪曲効果の強さをコントロールするパラメータである。
ステップS802では、仮想視点映像生成処理部505は、
に写り、かつ前述の基準面上にある点の、
を求める。以下、基準面の高さをZbaseとする。
は、以下の式(2)〜(5)で求められる。
ここで、Xp,z及びXpixel,zは、それぞれ
のz成分である。
ステップS803では、仮想視点映像生成処理部505は、c番目のカメラ(以下、カメラcとする
)において、
)において、
が写っている
を求める。ここで言う理想画素位置とは、カメラcの映像に歪曲や倍率色収差などの収差が無い場合の画素位置である。
は以下の式(6)〜(9)により求められる。
ここで、式(6)のXp,c,x、Xp,c,y、Xp,c,zは、それぞれ
のx、y、z成分であり、θh,c、θv,cはカメラcの水平半画角と垂直半画角である。式(8)の
はカメラcの位置である。また、式(9)の
は、それぞれカメラcの映像の右方向、上方向、及び、カメラcの向きを表す方向ベクトルである。これらのベクトルの長さは1とする。これら一連の操作は、ビュー変換、射影変換、スクリーン変換と一般に呼ばれる、3つの変換操作をまとめた操作である。
ステップS804では、仮想視点映像生成処理部505は、カメラcの歪曲及び倍率色収差を考慮して、
を、各色毎に、
に変換する。ここで、iは、色のインデックスを表す。この操作は、形式上、以下の式(10)で表すことができる。
この変換の具体的な形は、使用するカメラcの光学系に依存するもので、一般には、この変換は簡単な関数では表現できない。このため、実測値に基づいて、テーブル参照によってこの変換を行う。
次に、仮想視点映像生成処理部505は、カメラcの、
での画素値Ip,c,iを求める。
は小数であるため、バイキュービック補間などを用いて、周辺画素から補間した画素値を取得する。
ステップS805では、仮想視点映像生成処理部505は、カメラcの周辺光量落ちを補正しつつ、仮想視点映像に周辺光量落ちの効果を付加するためのファクターDp,c,iを計算する。このファクターは、以下の式(11)のように、仮想始点映像の光量落ち効果の量Cpと、
におけるカメラcの周辺光量落ちの補正量Cp,c,iの比として定義する。
カメラcの周辺光量落ちの補正量Cp,c,iは、歪曲補正と同様、一般には簡単な関数では表現できない。このため、次のステップS806では、仮想視点映像生成処理部505は、実測値に基づいて補正テーブルを作成して、テーブル参照によって補正を行う。これを形式的に以下の式(12)で表す。
上式のように、周辺光量落ちの画素値依存性をも考慮した補正を行う。
仮想視点映像に付加する周辺光量落ちの効果は、例えば、以下の式(13)を用いる。ここでβは、周辺光量落ちの強度をコントロールするパラメータである。
ステップS807にて、仮想視点映像生成処理部505は、仮想視点映像の画素値Iout,iを式(14)にて計算する。
ステップS807までの処理により、
における、色iでの画素値Iout,iが決定される。ステップS808にて、仮想視点映像生成処理部505は、仮想視点映像の全ての画素が処理されるまで、ステップS801〜ステップS807の処理を繰り返す。これにより、仮想視点映像が生成される。
ここで、仮想視点映像生成処理において、撮像画像の外の座標を参照する場合がある。このような領域については、所定画像を表示して対応する。例えば本実施例では、予め用意した床テクスチャ画像を仮想視点に応じてパース変換して使用する。撮像画像の外を参照した場合の画素値を、パース変換後の床テクスチャ画像の画素値とすることで違和感の無い出力画像を得ることが可能になる。
<カメラ選択処理>
ステップS709における管理サーバPC201でのカメラ選択処理は、正常に動作しているカメラ101に関するカバー率に基づいて実行する。図10は、本実施例におけるカバー率を示す図である。カバー率とは、仮想視点映像生成処理によって得る出力画像に対し、カメラ101による撮像画像が含まれる割合である。したがって、カバー率の算出は、対象フレームの基準面の高さに基づいて行われる。図10(a)は出力画像全ての画素が、撮像画像の画素により得られており、カバー率は100%となる。一方図10(b)は出力画像の一部の領域が撮像範囲の外を参照しており、カバー率は100%未満となる。仮想視点映像の生成処理においては、カバー率が100%であるカメラ101を用いることが好ましい。カバー率が100%でない場合、そのカメラ101では撮像できていない領域が含まれるので、仮想視点映像の画質劣化につながるからである。そこで、本実施例では、カバー率が100%のカメラ101が選択される。
ステップS709における管理サーバPC201でのカメラ選択処理は、正常に動作しているカメラ101に関するカバー率に基づいて実行する。図10は、本実施例におけるカバー率を示す図である。カバー率とは、仮想視点映像生成処理によって得る出力画像に対し、カメラ101による撮像画像が含まれる割合である。したがって、カバー率の算出は、対象フレームの基準面の高さに基づいて行われる。図10(a)は出力画像全ての画素が、撮像画像の画素により得られており、カバー率は100%となる。一方図10(b)は出力画像の一部の領域が撮像範囲の外を参照しており、カバー率は100%未満となる。仮想視点映像の生成処理においては、カバー率が100%であるカメラ101を用いることが好ましい。カバー率が100%でない場合、そのカメラ101では撮像できていない領域が含まれるので、仮想視点映像の画質劣化につながるからである。そこで、本実施例では、カバー率が100%のカメラ101が選択される。
以上説明したカメラ選択処理により、カメラ101やキャプチャPC202の一部に障害が発生した場合でも問題なく上映することが可能になる。特に、画質を考慮したカメラ選択処理を実行し、適切な画質が得られない場合には自動的にバックアップ上映に切り替えることで、長期間の上映に耐え得るシステムを構築することができる。
以上で説明したシステムによって、滑らかな仮想視点映像を生成することが可能になる。
本実施例では、複数のカメラで撮像された画像データを複数のネットワークHUBを介して撮像画像を処理する画像処理PCに送信する。この送信の際に、1台のネットワークHUBに画像データの送信が集中しないように、カメラとカメラを制御するキャプチャPCとネットワークHUBとを配置する。具体的には、上映シナリオ上で時間軸が隣り合わせになるような画像を撮像するカメラとキャプチャPCとの組を、異なるネットワークHUBに接続する。この構成により、複数のカメラで撮像された映像のデータを映像再生するPCへの伝送の遅延を抑止することが可能となる。
実施例1では、カメラ1台に対してキャプチャPC1台が固定して接続される例を説明した。実施例1とは異なり、本実施例では、カメラ101とキャプチャPC202の間にマトリクススイッチャ1101を導入し、カメラとキャプチャPC202の接続を動的に切り替え可能にする。図11は、本実施例における映像再生システムの構成の一例を示す図である。本システムは、カメラ101とキャプチャPC202の間にマトリクススイッチャ1101を導入する以外は、実施例1と同様の構成である。
管理サーバPC201は、予め定められたスイッチング情報に基づいて、マトリクススイッチャ1101のスイッチを切り替える切替部を備える。
スイッチング情報とは、上映シナリオに基づいてマトリクススイッチャ1101を制御する情報のことである。
撮像を開始するカメラ101aと、カメラ101bと、カメラ101fと、カメラ101gとは、マトリクススイッチャ1101Fに接続されている。カメラ101cと、カメラ101dと、カメラ101hと、カメラ101iとは、マトリクススイッチャ1101Gに接続されている。カメラ101eと、カメラ101jとは、マトリクススイッチャ1101Hに接続されている。
複数のカメラで撮像された画像データは、マトリクススイッチャ1101にそれぞれ送信され、管理サーバPC201からの指示に従って選択されたキャプチャPC202へ送信される。複数のキャプチャPCで受信された画像データは、ネットワークHUB206を介してネットワークHUB205に送信される。ネットワークHUB206とネットワークHUB205とは、カスケード接続されている。ネットワークHUB206を介してネットワークHUB205に送信された画像データは、画像処理PC203に送信される。画像処理PC203は、受信した画像データを画像処理して、画像表示PC204に送信する。画像表示PC204は、受信した画像データを再生する。
切替部は、スイッチング情報に基づいて、マトリクススイッチャ1101のスイッチを切り替える。具体的には、上映シナリオ上で時間軸が隣り合わせになるような画像を撮像するカメラとキャプチャPCとの組が異なるネットワークHUBに接続するように、マトリクススイッチャ1101のスイッチを切り替える。なお、実施例2における上映シナリオは、故障したキャプチャPC202を正常なキャプチャPC202で代替して、代替したキャプチャPC202に接続されたカメラ101で撮像するシナリオを含むようにしてもよい。
例えば、上映シナリオによってカメラ101aが3連続のフレームで撮像した場合を考える。この場合、切替部は、1フレーム目でキャプチャPC202A1とカメラ101aとが接続し、2フレーム目でキャプチャPC202B1とカメラ101aとが接続するように、マトリクススイッチャ1101を制御する。次に、切替部は、3フレーム目でキャプチャPC202A1とカメラ101aとが接続するように、マトリクススイッチャ1101を制御する。よって、カメラ101aで撮像された1フレーム目の画像データが、ネットワークHUB206Aに送信され、2フレーム目の画像データが、ネットワークHUB206Bに送信される。そして、3フレーム目の画像データが、ネットワークHUB206Aに送信されることで、同じネットワークHUB206に連続して画像データが送信されることを抑制することが可能となる。
図11において、キャプチャPC202A1からネットワークHUB206Aに画像データが送信され、キャプチャPC202B1が故障した場合を考える。また、カメラ101bが、故障したキャプチャPC202B1に接続されていると仮定する。この場合、カメラ101bの接続先を変更しなければならないが、例えば、カメラ101bをキャプチャPC202A2に接続するようにマトリクススイッチャ1101Fのスイッチを切り替えたとする。すると、先に画像データが送信されたネットワークHUB206Aに、画像データが再び送信されることになり、ネットワークHUB206AとネットワークHUB205の間でボトルネックが発生する可能性がある。
一方、カメラ101bを正常なキャプチャPC202B2に接続するように、切替部がマトリクススイッチャ1101Fのスイッチを切り替えた場合を考える。すると、先に画像データが送信されたネットワークHUB206Aと異なるネットワークHUB206Bに、画像データが送信されることになるため、ネットワークHUB206AとネットワークHUB205の間でボトルネックが発生する可能性が軽減される。
本実施例は、同じネットワークHUBに連続して画像データが送信されないように構成されたスイッチング情報に基づいて、マトリクススイッチャ1101のスイッチが切り替えられる。即ち、上映シナリオ上の時間軸が隣り合う画像を撮像するカメラ101が、異なるネットワークHUB206に接続されるキャプチャPC202にそれぞれ接続されるように、マトリクススイッチャ1101が切り替えられる。したがって、ネットワークHUB206とネットワークHUB205の間でボトルネックが発生することを抑止することが可能となる。
実施例1では、上映シナリオ上の時間軸が隣り合う画像を撮像するカメラ101とキャプチャPC202との組の出力先が、異なるネットワークHUB206に予め接続され、接続が固定されている。一方、本実施例では、カメラ101とキャプチャPC202との組の出力先を、任意の条件に応じて、変更可能にすることができる。つまり、実施例1はネットワークHUB206に接続されるカメラが固定の場合の例、実施例2はネットワークHUB206に接続されるカメラが動的な場合の例である。
<ネットワークHUB毎に配置されるマトリクススイッチャの制御>
以下、本実施例にかかる上映コントロール情報に基づいたスイッチング制御について説明する。
以下、本実施例にかかる上映コントロール情報に基づいたスイッチング制御について説明する。
図12に実施例2における映像再生システムの構成の一例を示す図である。本実施例では、カメラ101とキャプチャPC202の間にマトリクススイッチャ1201を導入し、カメラ101とキャプチャPC202の接続を切り替え可能にする。
カメラ101が100台である場合、128入力のマトリクススイッチャ1201を用いれば、1台でカメラ101とキャプチャPC202との全ての組み合わせを切り替えることができる。しかしながら、システムの安定稼働、およびメンテナンス性を考慮した場合、マトリクススイッチャをネットワークHUB毎に接続し、且つ、同じ19インチラック毎に設置するのが望ましいという見方がある。例えば、マトリクススイッチャ自体が故障した場合、1台のマトリクススイッチャで構成した場合、上映自体が出来なくなってしまう。そこで図12では、32入力32出力のHD−SDI対応マトリクススイッチャ1201を各ネットワークHUBに1台ずつ接続する。図12に示す構成であれば、マトリクススイッチャ1201が1台故障した場合でも、ネットワークHUB1台分の機材を除外する構成に基づいて生成された上映コントロール情報を用いれば、対応可能である。なお、各マトリクススイッチャ1201は管理サーバPC201とUSB接続され、管理サーバPC201側で入力と出力の組み合わせを自由に切り替えることができる。マトリクススイッチャ1201を導入すればカメラ101とキャプチャPC202の台数を等しくする必要は無いが、本実施例ではカメラ101とキャプチャPC202は同数とする。
図13(a)は、本実施例における管理サーバPC201によるマトリクススイッチャ1201の制御の様子を示す図である。管理サーバPC201は、各マトリクススイッチャ1201について、図13(b)に示すようなスイッチング情報を保持しており、この情報に基づいてカメラ101とキャプチャPC202の接続を切り替えながら上映を行う。スイッチング情報には、図3(b)に示した上映コントロール情報と同様に、上映開始時刻から終了時刻までの各フレームに対してカメラ101からの入力とキャプチャPC202への出力、及びその組み合わせに対する状態(ON/OFF)が記載される。ただし、本実施例ではカメラ101とキャプチャPC202の台数が等しいので、カメラ101やキャプチャPC202に障害が発生していない場合には接続状態を更新する必要は無い。
キャプチャPC202が応答しない場合、管理サーバPC201は、スイッチング情報を更新する。スイッチング情報の更新後は、管理サーバPC201は更新したスイッチング情報に基づいてマトリクススイッチャ1201に接続変更指示を出す。接続変更指示を出してから実際に接続変更が完了するまでの時間を考慮して、上映時刻よりも早いタイミングで切り替え指示を出さなくてはならないことに注意が必要である。さらに、管理サーバPC201は接続変更指示を出した時点で、接続が更新されたキャプチャPC202にカメラIDを通知する。キャプチャPC202は通知されたカメラIDに基づいて送信先の画像処理PC203を選択して通信経路を確立し、映像データを送信する。画像処理PC203が映像データを受信した後の処理は実施例1と同様であるので説明を省略する。
本実施例では、実施例1と同様に管理サーバPC201からキャプチャPC202への問い合わせを行い、有効性判定処理を実行する。図14は、本実施例における有効性判定処理の流れを示すフローチャートである。処理の流れは図7に示す実施例1における有効性判定処理と同様であるが、キャプチャPC202の一部が正常動作していない場合の処理の流れが異なる。
なお、図14のステップS1401からステップS1408までの処理は、図7のステップS701からステップS708までの処理にそれぞれ対応する。また、図14のステップS1410からステップS1413までの処理は、図7のステップS709からステップS712までの処理にそれぞれ対応する。
ステップS1408において管理サーバPC201は、全てのキャプチャPC202が正常であるかを判定する。応答を返さないキャプチャPC202がある場合には、ステップS1409において管理サーバPC201上のスイッチング情報を更新して対応する。スイッチング情報更新処理の詳細については後述する。キャプチャPC202からの応答はあるものの、その値がカメラ101やキャプチャPC202の不具合を示す値である場合には、実施例1と同様にステップS1410でカメラ101の選択処理が行われる。
<スイッチング情報更新処理>
スイッチング情報更新処理とは、応答の無いキャプチャPC202(以後、対象PC)の代替PCを決定し、スイッチング情報を更新する処理である。
スイッチング情報更新処理とは、応答の無いキャプチャPC202(以後、対象PC)の代替PCを決定し、スイッチング情報を更新する処理である。
まず、管理サーバPC201は、代替PCを決定する。例えば本実施例では、障害の発生したキャプチャPC202のc2台後に使用するPCを代替PCとして選択する。台数c2は、次の式(15)で示される。
c2=[C/2] (15)
Cは、同じ19インチラックに収納されているキャプチャPC202のうち、正常動作している台数である。また、[]はガウス記号である。
Cは、同じ19インチラックに収納されているキャプチャPC202のうち、正常動作している台数である。また、[]はガウス記号である。
次に、管理サーバPC201は、対象PCの代わりに代替PCを使用するように、スイッチング情報を更新する。例えば本実施例では、次のような手順でスイッチング情報が更新される。まず、管理サーバPC201は、上映コントロール情報を参照し、対象PCに対して映像をリクエストする時刻を取得する。対象PCへのリクエストが連続する場合、連続リクエストの先頭時刻について、次の(1)から(3)の順でスイッチング情報を設定していく。
(1)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された対象PCの状態をOFFにする。
(2)代替PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をOFFにする。
(3)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をONにする。
(1)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された対象PCの状態をOFFにする。
(2)代替PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をOFFにする。
(3)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をONにする。
つまり、代替PC及び対象PCの元々の接続を切り、対象PCに接続されていたカメラ101を代替PCに接続する。
(2)と(3)の間で切替部は、対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101と代替PCとを、マトリクススイッチャ1201内で電気的に接続するように接続変更を行う。
また、連続リクエストの終了時刻の次のフレームで、次の(4)から(6)の順でスイッチング情報を設定していき、元の状態に戻す。
(4)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をOFFにする。
(5)代替PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をONにする。
(6)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された対象PCの状態をONにする。
(4)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をOFFにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をOFFにする。
(5)代替PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された代替PCの状態をONにする。
(6)対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101の状態をONにし、マトリクススイッチャ1201の出力に接続された対象PCの状態をONにする。
対象PCへのリクエストが連続しない場合でも同様に、対象PCへのリクエストが発生する時刻に代替PCの元々の接続を切り、対象PCに接続されていたカメラ101を代替PCに接続する。また、次のフレームで元の状態に戻す。
(4)と(5)の間で切替部は、対象PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101と対象PCとを、マトリクススイッチャ1201内で電気的に接続するように接続変更を行う。次に切替部は、代替PCのIDと同じIDを有しマトリクススイッチャ1201の入力に接続されたカメラ101と代替PCとを、マトリクススイッチャ1201内で電気的に接続するように接続変更を行う。
本実施例の構成によって、上映シナリオに従って生成されたスイッチング情報に基づいて、1台のネットワークHUBに撮像画像のデータの送信が集中しないように、マトリクススイッチャを制御する。
本実施例によれば、実施例1よりも容易に、複数のカメラで撮像された映像のデータを映像再生するPCへの伝送の遅延を抑止することが可能となる。さらに、本実施例によれば、カメラ101とキャプチャPC202の接続を動的に変更可能にすることで、長期間安定動作する映像再生システムを構築することが可能となる。
<その他の実施例>
本発明は上記の実施例に限られず、本発明の効果を得られる限り同様の異なる構成をとることが可能である。例えば、管理サーバPCや画像処理PCの数を変更したり、各構成部の役割の一部を入れ替えたり、各構成部の一部を分割して新たな構成部を設けるようにしてもよい。また、各構成部や処理に用いる情報を、同等の別のものに置き換えてもよい。
本発明は上記の実施例に限られず、本発明の効果を得られる限り同様の異なる構成をとることが可能である。例えば、管理サーバPCや画像処理PCの数を変更したり、各構成部の役割の一部を入れ替えたり、各構成部の一部を分割して新たな構成部を設けるようにしてもよい。また、各構成部や処理に用いる情報を、同等の別のものに置き換えてもよい。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本実施形態の機能を実現するためのプログラムコードを、1つのコンピュータ(CPU、MPU)で実行する場合であってもよいし、複数のコンピュータが協働することによって実行する場合であってもよい。さらに、プログラムコードをコンピュータが実行する場合であってもよいし、プログラムコードの機能を実現するための回路等のハードウェアを設けてもよい。またはプログラムコードの一部をハードウェアで実現し、残りの部分をコンピュータが実行する場合であってもよい。
Claims (8)
- 複数の撮像手段によって撮像された画像データから得られる仮想視点映像を再生する映像再生システムであって、
前記撮像された複数の画像データを受信する複数の中継機器を備え、
前記仮想視点映像の上映シナリオ上の時間軸が隣り合わせになる画像を撮像する撮像手段が、異なる中継機器にそれぞれ接続されることを特徴とする映像再生システム。 - 前記撮像手段は、カメラと該カメラで撮像された画像データを伝送する装置とから構成され、
前記カメラ1台に対して前記伝送する装置が1台接続されていることを特徴とする請求項1に記載の映像再生システム。 - 前記複数の中継機器から送信される画像データをそれぞれ受信する第2の中継機器をさらに備えたことを特徴とする請求項1または請求項2に記載の映像再生システム。
- 前記第2の中継機器が受信した画像データに基づいて、仮想視点映像を生成する画像処理PCをさらに備えたことを特徴とする請求項3に記載の映像再生システム。
- 撮像された画像データから得られる仮想視点映像を再生する映像再生システムであって、
複数のカメラと該カメラで撮像された画像データを伝送する複数の装置と、
各カメラと各装置とを接続する複数のマトリクススイッチャと、
前記マトリクススイッチャから出力される複数の画像データを受信する複数の中継機器と、
上映シナリオに従って生成されたスイッチング情報に基づいて、該上映シナリオ上の時間軸が隣り合わせになる画像を撮像する前記カメラが、前記装置を介して異なる前記中継機器にそれぞれ接続されるように、前記マトリクススイッチャを切り替える切替手段と
を備えたことを特徴とする映像再生システム。 - 1つのマトリクススイッチャは、複数の中継機器に出力が可能に構成されていることを特徴とする請求項5に記載の映像再生システム。
- 1つのマトリクススイッチャは、1つの中継機器に出力が可能に構成されていることを特徴とする請求項5に記載の映像再生システム。
- 撮像された画像データから得られる仮想視点映像を再生する映像再生システムにおける制御方法であって、
前記映像再生システムは、
複数のカメラと該カメラで撮像された画像データを伝送する複数の装置と、
各カメラと各装置とを接続する複数のマトリクススイッチャと、
前記マトリクススイッチャから出力される複数の画像データを受信する複数の中継機器とを備え、
上映シナリオに従って生成されたスイッチング情報に基づいて、該上映シナリオ上の時間軸が隣り合わせになる画像を撮像する前記カメラが、前記装置を介して異なる前記中継機器にそれぞれ接続されるように、前記マトリクススイッチャを切り替えるステップを備えることを特徴とする制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014121580A JP2016001833A (ja) | 2014-06-12 | 2014-06-12 | 映像再生システム、及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014121580A JP2016001833A (ja) | 2014-06-12 | 2014-06-12 | 映像再生システム、及び制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016001833A true JP2016001833A (ja) | 2016-01-07 |
Family
ID=55077227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014121580A Pending JP2016001833A (ja) | 2014-06-12 | 2014-06-12 | 映像再生システム、及び制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016001833A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018070121A1 (ja) * | 2016-10-11 | 2018-04-19 | キヤノン株式会社 | 画像処理システム、画像処理装置、及び、制御方法 |
JP2019071650A (ja) * | 2018-12-27 | 2019-05-09 | キヤノン株式会社 | 制御装置、制御方法、及び、プログラム |
-
2014
- 2014-06-12 JP JP2014121580A patent/JP2016001833A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018070121A1 (ja) * | 2016-10-11 | 2018-04-19 | キヤノン株式会社 | 画像処理システム、画像処理装置、及び、制御方法 |
EP3528200A4 (en) * | 2016-10-11 | 2020-04-29 | C/o Canon Kabushiki Kaisha | IMAGE PROCESSING SYSTEM, IMAGE PROCESSING DEVICE AND CONTROL METHOD |
US11037364B2 (en) | 2016-10-11 | 2021-06-15 | Canon Kabushiki Kaisha | Image processing system for generating a virtual viewpoint image, method of controlling image processing system, and storage medium |
JP2019071650A (ja) * | 2018-12-27 | 2019-05-09 | キヤノン株式会社 | 制御装置、制御方法、及び、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11037364B2 (en) | Image processing system for generating a virtual viewpoint image, method of controlling image processing system, and storage medium | |
JP5570284B2 (ja) | 画像処理装置および方法 | |
JP5562103B2 (ja) | 画像処理装置および方法 | |
CN110073414B (zh) | 图像处理设备、方法和非暂时性计算机可读存储介质 | |
JP7146662B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
EP2490179A1 (en) | Method and apparatus for transmitting and receiving a panoramic video stream | |
US10708469B2 (en) | Image processing apparatus, method of controlling the same, non-transitory computer-readable storage medium, and image processing system | |
JP2005333552A (ja) | パノラマ映像配信システム | |
JP7042571B2 (ja) | 画像処理装置およびその制御方法、プログラム | |
JP2006211006A (ja) | 画像処理装置 | |
JP7237538B2 (ja) | 情報処理装置、それを含むシステム、情報処理方法、およびプログラム | |
JP2019103067A (ja) | 情報処理装置、記憶装置、画像処理装置、画像処理システム、制御方法、及びプログラム | |
CN107835435B (zh) | 一种赛事宽视角直播设备和相关联的直播系统和方法 | |
JP2006033257A (ja) | 画像配信装置 | |
JP2018191251A (ja) | 情報処理システム、情報処理方法、およびプログラム | |
JP2015212876A (ja) | 映像再生システム | |
US10447969B2 (en) | Image processing device, image processing method, and picture transmission and reception system | |
JP2016001833A (ja) | 映像再生システム、及び制御方法 | |
JP6952456B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
US20230162435A1 (en) | Information processing apparatus, information processing method, and storage medium | |
US10841490B2 (en) | Processing method and processing system for video data | |
CN110113628A (zh) | 一种视频拼接服务器和移动状态下的全景直播系统 | |
JP2012015788A (ja) | 映像受信装置、及びその制御方法 | |
JP2015130632A (ja) | 画像処理装置、送受信システム、画像処理方法、およびプログラム | |
WO2016117480A1 (ja) | テレコミュニケーションシステム |