JP2015212876A - Video reproduction system - Google Patents

Video reproduction system Download PDF

Info

Publication number
JP2015212876A
JP2015212876A JP2014095213A JP2014095213A JP2015212876A JP 2015212876 A JP2015212876 A JP 2015212876A JP 2014095213 A JP2014095213 A JP 2014095213A JP 2014095213 A JP2014095213 A JP 2014095213A JP 2015212876 A JP2015212876 A JP 2015212876A
Authority
JP
Japan
Prior art keywords
video
imaging
camera
failure
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
Application number
JP2014095213A
Other languages
Japanese (ja)
Inventor
良隆 佐々木
Yoshitaka Sasaki
良隆 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014095213A priority Critical patent/JP2015212876A/en
Publication of JP2015212876A publication Critical patent/JP2015212876A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Studio Devices (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a reproduction system of virtual viewpoint video where a stable system runs for a long period of time.SOLUTION: A video reproduction system reproduces virtual viewpoint video obtained from image data imaged by a plurality of imaging means. When occurrence of failure of the imaging means is detected, the imaging means where the failure occurs is restarted after starting reproduction of the virtual viewpoint video obtained from the image data imaged by the other imaging means except the imaging means.

Description

本発明は、複数のカメラの映像を利用して仮想視点映像を生成して再生する映像再生システムに関するものである。より詳細には、映像再生システムにおいて障害が発生した場合の再起動に関するものである。   The present invention relates to a video playback system that generates and plays back a virtual viewpoint video using videos from a plurality of cameras. More specifically, the present invention relates to restart when a failure occurs in the video reproduction system.

複数台のカメラで同一シーンを撮像し、移動する仮想視点から見た映像(仮想視点映像)を表現する映像再生システムが提案されている。このような映像再生システムでは多数のカメラや制御PCが必要となる。このような多数の機器を用いるシステムを長期間安定して稼動させる方法として、特許文献1に記載されているように障害が発生した機器の処理を他の機器で代替する方法がある。   There has been proposed a video playback system that captures the same scene with a plurality of cameras and expresses a video viewed from a moving virtual viewpoint (virtual viewpoint video). Such a video reproduction system requires a large number of cameras and control PCs. As a method for stably operating such a system using a large number of devices for a long period of time, there is a method of replacing the processing of a device in which a failure has occurred with another device as described in Patent Document 1.

特開2003−087834号公報JP 2003-087834 A

仮想視点映像を生成して再生するシステムにおいては、個々のカメラがシナリオに応じてそれぞれ意味のある映像を撮像するので、別のカメラでの代替が困難な場合がある。このようなシステムにおいて、単純に障害が発生したデバイスを再起動したり、障害が発生したデバイスを取り除く処理は、生成される仮想視点映像の劣化につながったり、映像自体の再生の停止にもつながる恐れがある。   In a system that generates and reproduces a virtual viewpoint video, each camera captures a meaningful video in accordance with a scenario, so that replacement with another camera may be difficult. In such a system, simply restarting the failed device or removing the failed device will lead to degradation of the generated virtual viewpoint video or to stop playback of the video itself. There is a fear.

本発明に係る映像再生システムは、複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムであって、
前記撮像手段の障害の発生を検知する検知手段と、前記障害の発生した撮像手段を、該撮像手段を除く他の撮像手段によって撮像された画像データから得られる仮想視点映像の再生の開始後に再起動する制御手段とを有することを特徴とする。
A video playback system according to the present invention is a video playback system that plays back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
The detection means for detecting the occurrence of a fault in the imaging means and the imaging means in which the fault has occurred are re-established after the start of reproduction of a virtual viewpoint video obtained from image data taken by other imaging means other than the imaging means. And a control means for starting.

本発明によれば、障害の発生した機器を検知し、上映シナリオの状況に応じて当該機器を再起動することで長期間安定して仮想視点映像を再生することが可能になる。   According to the present invention, it is possible to stably reproduce a virtual viewpoint video for a long period of time by detecting a failed device and restarting the device according to the state of a screening scenario.

実施例1による映像再生システムの説明図である。It is explanatory drawing of the video reproduction | regeneration system by Example 1. FIG. 実施例1におけるシナリオデータ、および上映コントロール情報の例である。It is an example of the scenario data in Example 1, and screening control information. 実施例1のシステム構成を表す図である。1 is a diagram illustrating a system configuration of Embodiment 1. FIG. 実施例1におけるキャプチャPCでの処理を示す図である。FIG. 6 is a diagram illustrating processing performed by a capture PC according to the first exemplary embodiment. 実施例1におけるキャプチャPCの処理の流れを示すフローチャートである。6 is a flowchart illustrating a process flow of a capture PC according to the first exemplary embodiment. 実施例1における画像処理PCでの処理を示す図である。FIG. 6 is a diagram illustrating processing performed by the image processing PC according to the first exemplary embodiment. 実施例1における画像処理PCでの処理の流れを示すフローチャートである。3 is a flowchart illustrating a flow of processing in the image processing PC according to the first exemplary embodiment. 実施例1における画像表示PCでの処理を示す図である。FIG. 6 is a diagram illustrating processing performed by the image display PC according to the first embodiment. 実施例1における通常上映処理の流れを示すフローチャートである。4 is a flowchart showing a flow of normal screening processing in Embodiment 1. 実施例1におけるカメラやPCの有効判定処理の流れを示すフローチャートである。3 is a flowchart illustrating a flow of camera and PC validity determination processing according to the first exemplary embodiment. 実施例1における電源コントローラでの処理を示す図である。It is a figure which shows the process in the power supply controller in Example 1. FIG. 実施例1における電源コントローラでの処理の流れを示すフローチャートである。3 is a flowchart illustrating a process flow in a power supply controller according to the first exemplary embodiment. 実施例1における仮想視点映像生成処理の流れを示すフローチャートである。3 is a flowchart illustrating a flow of virtual viewpoint video generation processing in Embodiment 1. 実施例1における仮想視点映像生成処理で用いるパラメータを説明する図である。It is a figure explaining the parameter used by the virtual viewpoint image | video production | generation process in Example 1. FIG. 実施例1におけるカバー率を説明する図である。It is a figure explaining the coverage in Example 1. FIG. 実施例1におけるカメラ選択処理の流れを示すフローチャートである。3 is a flowchart illustrating a flow of camera selection processing according to the first exemplary embodiment. 実施例2における電源コントローラでの処理の流れを示すフローチャートである。10 is a flowchart illustrating a flow of processing in a power supply controller according to the second embodiment. その他の実施例におけるシステム構成を表す図である。It is a figure showing the system configuration | structure in another Example.

以下、添付の図面を参照して、本発明を好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。   Hereinafter, the present invention will be described in detail based on preferred embodiments with reference to the accompanying drawings. In addition, the structure shown in the following Examples is only an example, and this invention is not limited to the structure shown in figure.

図1は、本実施例における、固定された複数の撮像用カメラを用いて仮想視点映像を生成し、これをリアルタイム上映する映像再生システムを示す図である。図1(a)に示したように、本実施例における固定カメラは仮想視点の移動ルートに沿ってカメラの撮像領域が重複するように配置する。図1(a)において、カメラ101は床102上に図示しない金属製の枠によって宙吊りの状態で固定されている。仮想視点105は、床102をx−y平面上に含み、高さ方向をz軸とする座標系上にマッピングされる。また、図1(b)は図1(a)を2次元平面に投影したものであり、複数の人がいる場合を想定したものである。図1(b)においては、被写体となる人104を表している。   FIG. 1 is a diagram showing a video playback system that generates a virtual viewpoint video using a plurality of fixed imaging cameras and shows the video in real time in the present embodiment. As shown in FIG. 1A, the fixed cameras in the present embodiment are arranged so that the imaging areas of the cameras overlap along the virtual viewpoint movement route. In FIG. 1A, a camera 101 is fixed on a floor 102 in a suspended state by a metal frame (not shown). The virtual viewpoint 105 is mapped on a coordinate system including the floor 102 on the xy plane and having the height direction as the z axis. FIG. 1 (b) is a projection of FIG. 1 (a) onto a two-dimensional plane and assumes a case where there are a plurality of people. FIG. 1B shows a person 104 who is a subject.

図2は、本実施例におけるシナリオデータの一例を示す図である。シナリオデータとは仮想視点映像を生成し、再生する際に、どの仮想視点の画像データをどの時間軸のフレームにおいて用いるかを規定するデータのことである。本実施例では、例えば5分程度の短時間のシナリオを一つのシナリオとして用いる。図2(a)は、一つのシナリオを表すシナリオデータの例を示している。シナリオデータには、上映時間中の各フレームについて、仮想視点の位置を表現するための仮想視点座標、仮想視点の方向を表現するための仮想視点方向、仮想視点の姿勢を表現するための仮想視点上方向ベクトルを記述する。仮想視点座標と仮想視点方向は、この座標系における仮想視点の位置と向きである。仮想視点上方向ベクトルとは、仮想視点の向きに対して視界がどの程度傾いているかを指定するためのパラメータで、仮想視点方向と仮想視点上方向ベクトルは直交する。これに画角を加えることで、仮想視点からの視界を表現することが出来る。本実施例では、さらにレンズ効果パラメータ(歪曲強度α、周辺光量落ち強度β。詳細は後述)を加えることで、あたかも実際にカメラを移動しながら撮像したかのような自然な映像を生成する。   FIG. 2 is a diagram illustrating an example of scenario data in the present embodiment. Scenario data is data that defines which virtual viewpoint image data is used in which time-axis frame when a virtual viewpoint video is generated and reproduced. In this embodiment, for example, a short-time scenario of about 5 minutes is used as one scenario. FIG. 2A shows an example of scenario data representing one scenario. Scenario data includes virtual viewpoint coordinates for expressing the position of the virtual viewpoint, virtual viewpoint direction for expressing the direction of the virtual viewpoint, and virtual viewpoint for expressing the attitude of the virtual viewpoint for each frame during the screening time. Describes the upward vector. The virtual viewpoint coordinates and the virtual viewpoint direction are the position and orientation of the virtual viewpoint in this coordinate system. The virtual viewpoint upward vector is a parameter for designating how much the field of view is inclined with respect to the direction of the virtual viewpoint, and the virtual viewpoint direction and the virtual viewpoint upward vector are orthogonal to each other. By adding an angle of view to this, it is possible to express the field of view from a virtual viewpoint. In this embodiment, by adding lens effect parameters (distortion strength α, peripheral light amount drop strength β, details will be described later), a natural video image as if it was actually captured while moving the camera is generated.

また、シナリオデータは、仮想視点映像生成処理で用いる画像処理パラメータである、基準面の高さを保持する。基準面の高さは、使用カメラの切り替え時の滑らかさに影響する。例えば本実施例において、ほぼ無人の状態の場合、基準面を床に取るのが望ましいが、図1(b)のように、撮像領域に多数の人が居る場合には、平均身長程度の高さに基準面を取った方が滑らかな映像になる。シナリオデータに基準面の高さを保持することで、被写体の状態に応じて基準面の高さを補正することが可能になる。基準面の高さの補正は、各カメラによる撮像画像データから自動生成しても良いし、マニュアル指定しても良い。   The scenario data holds the height of the reference plane, which is an image processing parameter used in the virtual viewpoint video generation process. The height of the reference plane affects the smoothness when the camera used is switched. For example, in the present embodiment, it is desirable to take the reference plane on the floor in the almost unmanned state. However, when there are a large number of people in the imaging area as shown in FIG. If the reference plane is taken, the video will be smoother. By holding the height of the reference plane in the scenario data, it is possible to correct the height of the reference plane according to the state of the subject. The correction of the height of the reference plane may be automatically generated from captured image data obtained by each camera, or may be manually designated.

図3は、本実施例を実現するためのシステムの構成を示す図である。本システムは、複数のカメラ101と管理サーバPC301と複数のキャプチャPC302と複数の画像処理PC303と画像表示PC304とHUB305と電源コントローラ306とを含む。   FIG. 3 is a diagram illustrating a configuration of a system for realizing the present embodiment. This system includes a plurality of cameras 101, a management server PC 301, a plurality of capture PCs 302, a plurality of image processing PCs 303, an image display PC 304, a HUB 305, and a power supply controller 306.

管理サーバPC301は、システム全体を管理するPCであり、システムを操作するため、コンソール画面とキーボード、マウスなどの操作デバイスが接続されている。   The management server PC 301 is a PC that manages the entire system, and a console screen and operation devices such as a keyboard and a mouse are connected to operate the system.

キャプチャPC302は、カメラ101と同数分用意されている。キャプチャPC302は各カメラ101とHD−SDI(High Definition Serial Digital Interface)ケーブルで接続される。カメラ101で撮像した映像はキャプチャPC302を介して画像処理PC303へ送信される。ここで、カメラ101の出力解像度がフルHD解像度(1920×1080画素、秒30コマ)の場合、非常にデータ量が大きくなる。そのため、全てのカメラ101の映像を一斉に送信すると、通信経路の帯域を使い切ってしまうという問題が発生する。そこで、予め定められたシナリオを現在使用可能なカメラや画像処理PCを用いて再現するための上映コントロール情報を生成し、これに従って映像を伝送する。   The same number of capture PCs 302 as the cameras 101 are prepared. The capture PC 302 is connected to each camera 101 by an HD-SDI (High Definition Serial Digital Interface) cable. Video captured by the camera 101 is transmitted to the image processing PC 303 via the capture PC 302. Here, when the output resolution of the camera 101 is full HD resolution (1920 × 1080 pixels, 30 frames per second), the amount of data becomes very large. Therefore, if all the images of the camera 101 are transmitted all at once, there is a problem that the bandwidth of the communication path is used up. Therefore, screening control information for reproducing a predetermined scenario using a camera or an image processing PC that can be used at present is generated, and a video is transmitted in accordance with this.

図2(b)及び図2(c)は上映コントロール情報の一例を示す図である。上映コントロール情報にはカメラ制御情報とPC制御情報とが含まれる。図2(b)はカメラ制御情報の例を示しており、カメラIDと各フレームとが対応付けられている。図2(c)はPC制御情報の例を示しており、画像処理PCIDと各フレームとが対応付けられている。上映コントロール情報には、上映開始時刻から終了時刻までの各フレームについて、どのカメラの映像をどの画像処理PCで処理するかを記載する。例えば本実施例では、上映コントロール情報のうち、カメラ制御情報(図2(b))の値は、0は対応するカメラの映像データの送信が不要、1は対応するカメラの映像データの送信、2は対応するカメラのヘッダ情報のみの送信を意味する。また、PC制御情報(図2(c))の値は、1が対応する画像処理PCを使用することを、0は使用しないことを意味する。尚、図2中に示したように、上映コントロール情報に含まれる時刻は、上映開始時刻を0:00:00.00fとした相対時刻で記述する。   FIGS. 2B and 2C are diagrams showing an example of the screening control information. The screening control information includes camera control information and PC control information. FIG. 2B shows an example of camera control information, in which a camera ID is associated with each frame. FIG. 2C shows an example of PC control information, in which an image processing PCID is associated with each frame. The screening control information describes which camera video is processed by which image processing PC for each frame from the screening start time to the end time. For example, in the present embodiment, of the screening control information, the value of the camera control information (FIG. 2 (b)) is 0, the transmission of the video data of the corresponding camera is unnecessary, 1 is the transmission of the video data of the corresponding camera, 2 means transmission of only the header information of the corresponding camera. Further, the value of the PC control information (FIG. 2C) means that 1 uses the corresponding image processing PC, and 0 means not use it. As shown in FIG. 2, the time included in the screening control information is described as a relative time with the screening start time set to 0: 00: 00.00f.

画像処理PC303は、キャプチャPC302から送信された映像を受信・加工して画像表示PC304へ送信する。   The image processing PC 303 receives and processes the video transmitted from the capture PC 302 and transmits it to the image display PC 304.

画像表示PC304は、画像処理PC303から送信された映像を受信してバッファリングし、管理サーバPC301から指定されたタイミングで上映する。尚、各キャプチャPCと各画像処理PCと管理サーバPCと画像表示PCとはネットワークHUB305によってLAN接続されており、データの送受信はTCP/IPを用いて行う。   The image display PC 304 receives and buffers the video transmitted from the image processing PC 303 and plays it at a timing designated by the management server PC 301. Each capture PC, each image processing PC, the management server PC, and the image display PC are connected to each other via a network HUB 305, and transmission / reception of data is performed using TCP / IP.

電源コントローラ306は、管理サーバPC301、カメラ101、キャプチャPC302の電源に個別接続されている。電源コントローラ306は、キャプチャエラーを検出した場合など、何らかの障害が発生したカメラ101やキャプチャPC302を選択的に再起動することが可能である。   The power controller 306 is individually connected to the power sources of the management server PC 301, the camera 101, and the capture PC 302. The power supply controller 306 can selectively restart the camera 101 or the capture PC 302 in which some kind of failure has occurred, such as when a capture error is detected.

各PCの機能の詳細は後述する。また、カメラ101は全て、同期を取る必要があるので、同期信号(ジェネロック、GenLock)が供給されている。   Details of the functions of each PC will be described later. Since all the cameras 101 need to be synchronized, a synchronization signal (Genlock, GenLock) is supplied.

<キャプチャPC>
キャプチャPC302は、カメラ101からの映像をキャプチャし、画像処理PC303へ送信する。
<Capture PC>
The capture PC 302 captures the video from the camera 101 and transmits it to the image processing PC 303.

図4は、キャプチャPC302の構成の例を示す図である。図4を用いてキャプチャPCの動作を説明する。キャプチャPC302は、管理サーバPC301から受け取った上映コントロール情報408に記載のカメラ制御情報に従ってカメラを制御するカメラ制御部411を備える。なお、画像処理PC303で適用する仮想視点映像生成処理には、撮像時のレンズ特性データが必要となる。しかしながら、レンズ特性データはカメラの撮像時設定(例えば、f値、画角、撮像距離)によって変化することが知られているので、キャプチャPC302は、レンズ補正データを取得するレンズ補正データ取得処理部402を備える。本実施例では、レンズ補正値データベース403を備えることで、撮像時設定に応じたレンズ補正データを得る。取得したレンズ補正データは、映像データにヘッダ情報として付加して送信する。レンズ補正データには、歪曲、周辺光量、倍率色収差などの様々な補正データが考えられるが、簡単のため本実施例では歪曲と周辺光量の補正データを格納する。また、仮想視点映像を生成するためには、カメラ101の位置、方向、姿勢や画角などのカメラ位置・姿勢情報404が必要となる。そこで、画像データにカメラ位置・姿勢情報もヘッダ情報として付加する。このほか、ヘッダ情報には、レンズ補正データやカメラ位置・姿勢情報のほか、キャプチャ時刻、画像サイズ、画像データタイプなどが含まれる。   FIG. 4 is a diagram illustrating an example of the configuration of the capture PC 302. The operation of the capture PC will be described with reference to FIG. The capture PC 302 includes a camera control unit 411 that controls the camera according to the camera control information described in the screening control information 408 received from the management server PC 301. Note that the virtual viewpoint video generation processing applied by the image processing PC 303 requires lens characteristic data at the time of imaging. However, since it is known that the lens characteristic data changes depending on the setting (for example, f value, angle of view, imaging distance) of the camera, the capture PC 302 has a lens correction data acquisition processing unit that acquires lens correction data. 402. In this embodiment, by providing the lens correction value database 403, lens correction data corresponding to the setting at the time of imaging is obtained. The acquired lens correction data is added to the video data as header information and transmitted. Although various correction data such as distortion, peripheral light amount, and lateral chromatic aberration can be considered as lens correction data, in this embodiment, correction data for distortion and peripheral light amount are stored for simplicity. In addition, in order to generate a virtual viewpoint video, camera position / posture information 404 such as the position, direction, posture, and angle of view of the camera 101 is required. Therefore, camera position / posture information is also added to the image data as header information. In addition, the header information includes capture time, image size, image data type, etc. in addition to lens correction data and camera position / posture information.

映像データをキャプチャPC302から画像処理PC303へ送る送信処理は前述のようにTCP/IPで行う。データを送信する度に画像処理PC303と再接続するのは効率が良くないので、送信処理部405を画像処理PC303の台数分用意して対応する。本実施例では、送信処理部として送信スレッドを用いる。すなわち、送信スレッドを画像処理PCの台数分用意して対応する。また、送信経路の帯域の問題で受信したデータを遅延無く送ることができない場合があるので、予め指定された秒数分だけバッファリングする送信バッファ401を有する。   Transmission processing for sending video data from the capture PC 302 to the image processing PC 303 is performed by TCP / IP as described above. Since it is not efficient to reconnect to the image processing PC 303 every time data is transmitted, the transmission processing units 405 are prepared for the number of image processing PCs 303 to cope with them. In this embodiment, a transmission thread is used as the transmission processing unit. That is, transmission threads are prepared for the number of image processing PCs. In addition, since there is a case where the received data cannot be transmitted without delay due to a bandwidth problem of the transmission path, the transmission buffer 401 is provided for buffering for a predetermined number of seconds.

尚、キャプチャPCには、送信処理部405の他に、カメラから映像を受け取りヘッダやレンズ補正データを付加して送信用データを作成する送信データ生成部406、および送信処理部405の管理を行う管理部407がある。   In addition to the transmission processing unit 405, the capture PC manages the transmission data generation unit 406 that receives video from the camera and adds header and lens correction data to create transmission data, and the transmission processing unit 405. There is a management unit 407.

図5は、キャプチャPC302での処理を示すフローチャート図である。ステップS501において送信データ生成部406はまず管理部407に対してどの送信処理部405を使用するかを確認する。   FIG. 5 is a flowchart showing processing in the capture PC 302. In step S <b> 501, the transmission data generation unit 406 first confirms which transmission processing unit 405 is used with respect to the management unit 407.

ステップS502において管理部407は、後述する管理サーバPC301から受け取った上映コントロール情報408に含まれるPC制御情報に従って送信先の画像処理PC303を選択する。そして、選択された画像処理PC303に対応する送信処理部405を送信データ生成部406に通知する。   In step S502, the management unit 407 selects a destination image processing PC 303 according to the PC control information included in the screening control information 408 received from the management server PC 301 described later. Then, the transmission processing unit 405 corresponding to the selected image processing PC 303 is notified to the transmission data generation unit 406.

ステップS503において送信データ生成部406は、まず管理部407から指示された送信処理部405の送信バッファ401内の送信データ領域を取得する。   In step S503, the transmission data generation unit 406 first acquires the transmission data area in the transmission buffer 401 of the transmission processing unit 405 instructed by the management unit 407.

次に、ステップS504において送信データ生成部406は、取得した送信データ領域に、キャプチャした映像を含む送信データを生成する。   Next, in step S504, the transmission data generation unit 406 generates transmission data including the captured video in the acquired transmission data area.

そして、ステップS505において送信データ生成部406は生成した送信データを送信バッファ401に出力し、管理部407にデータ出力完了を通知する。   In step S505, the transmission data generation unit 406 outputs the generated transmission data to the transmission buffer 401, and notifies the management unit 407 of completion of data output.

ステップS506において管理部407はデータ出力完了通知を受け取ったデータを送信キュー409に追加して、送信処理を実行する。送信処理においては、管理部407は自身が備える送信キューに格納されているデータが有効かどうかを判定する。この判定は、対象データのキャプチャ時間T0と、上映開始時間T1との差が予め定められた時間TLを超えたかどうかで判定する。有効で無い場合には送信処理をスキップする。有効な場合には管理部407は送信処理部405に送信指示を出し送信処理を実行する。   In step S506, the management unit 407 adds the data that has received the data output completion notification to the transmission queue 409, and executes transmission processing. In the transmission process, the management unit 407 determines whether the data stored in the transmission queue included in the management unit 407 is valid. This determination is made based on whether the difference between the capture time T0 of the target data and the screening start time T1 exceeds a predetermined time TL. If it is not valid, the transmission process is skipped. If valid, the management unit 407 issues a transmission instruction to the transmission processing unit 405 and executes transmission processing.

送信データに含まれる画像データは、設定ファイルによって圧縮するかどうかを指定できる。ここで、ヘッダ情報に含まれる画像データタイプは、圧縮する場合には1、しない場合には0を指定する。また、ヘッダだけを送信する場合には2を指定する。映像データの圧縮はフレーム単位で行う必要がある。圧縮はJPEG(Joint Photographic Experts Group)形式を用いてもよいし、DXTC(DirectX Texture Compression)形式を用いてもよい。DXTCはGPUの利用により非常に高速に画像データを圧縮できる。   Whether the image data included in the transmission data is to be compressed can be specified by the setting file. Here, as the image data type included in the header information, 1 is specified when compression is performed, and 0 is specified when it is not compressed. Also, 2 is specified when only the header is transmitted. It is necessary to compress video data in units of frames. For the compression, a JPEG (Joint Photographic Experts Group) format or a DXTC (DirectX Texture Compression) format may be used. DXTC can compress image data at a very high speed by using a GPU.

なお、送信データ生成部406はカメラからの映像をキャプチャする際、キャプチャエラーが発生した割合をカウントし、後述する管理サーバPCからの有効判定応答時にキャプチャエラー情報410として状態を返せるようにする。キャプチャエラーは、カメラとキャプチャPCとの距離が長く(例えば、100m超)、映像が秒30コマ正しく取得できない、などの内容で発生する可能性がある。あるいは、キャプチャエラーはカメラ側またはキャプチャPC側の不具合で生じる可能性がある。本実施例では、キャプチャエラーによって取得できなかったフレーム数が、例えばキャプチャ対象フレーム数の10%を超えた時点で、「キャプチャエラーが多い」と判定する。   Note that the transmission data generation unit 406 counts the rate at which a capture error has occurred when capturing video from the camera so that the status can be returned as capture error information 410 when a valid determination response is sent from the management server PC described later. The capture error may occur due to the fact that the distance between the camera and the capture PC is long (for example, more than 100 m) and the video cannot be acquired correctly at 30 frames per second. Alternatively, the capture error may be caused by a malfunction on the camera side or capture PC side. In this embodiment, when the number of frames that could not be acquired due to a capture error exceeds, for example, 10% of the number of frames to be captured, it is determined that “capture errors are many”.

<画像処理PC>
画像処理PC303は、キャプチャPC302から受信した映像を加工し、画像表示PC304へ送信する。
<Image processing PC>
The image processing PC 303 processes the video received from the capture PC 302 and transmits it to the image display PC 304.

図6は、画像処理PC303の構成の例を示す図である。図6を用いて画像処理PC303の動作を説明する。キャプチャPC302と同様に、全てのキャプチャPC302と接続した状態を維持するため、キャプチャPC302の台数分の受信処理部601を起動する。受信処理部601は、キャプチャPC302の送信処理部と対応してスレッドとして起動させることができる。   FIG. 6 is a diagram illustrating an example of the configuration of the image processing PC 303. The operation of the image processing PC 303 will be described with reference to FIG. Similarly to the capture PCs 302, the reception processing units 601 corresponding to the number of capture PCs 302 are activated in order to maintain the connection state with all the capture PCs 302. The reception processing unit 601 can be activated as a thread corresponding to the transmission processing unit of the capture PC 302.

図7は、画像処理PC303の処理を示すフローチャートである。まず、ステップS701において受信処理部601は、受信したデータは画像データタイプに応じた処理が必要なデータであるか否かを判定する。処理が必要なデータである場合、ステップS702に進み、受信処理部601は、受信したデータに対して画像データタイプに応じた画像処理を適用し、ステップS703で受信バッファ602に格納する。本実施例では、画像データタイプに応じた処理として、画像データタイプが1の場合、圧縮データの解凍処理を適用して非圧縮データ(画像データタイプ=0)に変換する。   FIG. 7 is a flowchart showing the processing of the image processing PC 303. First, in step S701, the reception processing unit 601 determines whether the received data is data that needs to be processed according to the image data type. If the data requires processing, the process advances to step S702, and the reception processing unit 601 applies image processing corresponding to the image data type to the received data, and stores the received data in the reception buffer 602 in step S703. In the present embodiment, when the image data type is 1, as processing according to the image data type, decompression processing of compressed data is applied to convert it into uncompressed data (image data type = 0).

ステップS704において受信処理部601は、受信したデータを受信バッファ602に格納した後、管理部603にデータ受信完了を通知する。   In step S704, the reception processing unit 601 stores the received data in the reception buffer 602, and then notifies the management unit 603 of the completion of data reception.

次にステップS705において管理部603は、上映コントロール情報604に従って仮想視点映像生成用のフレーム画像データを選択する。そして、ステップS706において管理部603は、仮想視点映像生成処理部605に映像生成指示を出す。ただし、映像生成指示後、仮想視点映像生成処理部605からデータ出力完了通知を受け取っていない場合には、出力完了通知を受信するまで映像生成指示をブロックする。これは、同時に複数の仮想視点映像生成処理を実行すると、既に実行中の映像生成処理のスループットが低下してしまい、リアルタイム再生が出来なくなる可能性が高くなるからである。そのため、管理部603は処理キュー609にデータ出力完了通知の確認と取得を行い、通知を取得してから処理を継続する。   In step S <b> 705, the management unit 603 selects frame image data for virtual viewpoint video generation according to the screening control information 604. In step S706, the management unit 603 issues a video generation instruction to the virtual viewpoint video generation processing unit 605. However, if a data output completion notification has not been received from the virtual viewpoint video generation processing unit 605 after the video generation instruction, the video generation instruction is blocked until an output completion notification is received. This is because if a plurality of virtual viewpoint video generation processes are executed at the same time, the throughput of the video generation process already being executed is reduced, and there is a high possibility that real-time playback cannot be performed. Therefore, the management unit 603 confirms and acquires the data output completion notification in the processing queue 609, and continues processing after acquiring the notification.

ステップS707において、映像生成指示を受けた仮想視点映像生成処理部605は、管理部603によって選択された映像と上映時刻を用いて、シナリオデータ606に沿った仮想視点映像データを生成する。処理の詳細については後述する。   In step S707, the virtual viewpoint video generation processing unit 605 that has received the video generation instruction generates virtual viewpoint video data according to the scenario data 606 using the video selected by the management unit 603 and the presentation time. Details of the processing will be described later.

ステップS708において仮想視点映像生成処理部605は、生成した仮想視点映像データを送信バッファ607に出力する。そして、ステップS709において仮想視点映像生成処理部605は、管理部603と送信処理部608にデータ出力完了を通知する。   In step S708, the virtual viewpoint video generation processing unit 605 outputs the generated virtual viewpoint video data to the transmission buffer 607. In step S709, the virtual viewpoint video generation processing unit 605 notifies the management unit 603 and the transmission processing unit 608 of the completion of data output.

ステップS710において送信処理部608は、データ出力完了通知を受け、生成した仮想視点映像データを画像表示PC304へ送信する。送信する仮想視点映像データには、キャプチャ時刻、および画像解像度をヘッダとして付加する。   In step S710, the transmission processing unit 608 receives the data output completion notification and transmits the generated virtual viewpoint video data to the image display PC 304. Capture time and image resolution are added as headers to the virtual viewpoint video data to be transmitted.

<画像表示PC>
画像表示PC304は、次の機能を持つ。
(a)画像処理PCから受信したデータの再生(通常上映)
(b)バックアップ映像の上映(バックアップ上映)
画像表示PC304は、通常、画像処理PC303から受信したデータを再生する。但し、複数のカメラやPCの故障によって、正常に上映できない場合が考えられる。このような場合には、後述する管理サーバPC301上での判定処理によりバックアップ上映への切り替えを行う。以下では、画像表示PC304の通常上映時及び、バックアップ上映時の処理の詳細について説明する。
<Image display PC>
The image display PC 304 has the following functions.
(A) Reproduction of data received from image processing PC (normal screening)
(B) Backup video screening (backup screening)
The image display PC 304 normally reproduces data received from the image processing PC 303. However, there may be a case where screening cannot be performed normally due to a failure of a plurality of cameras or PCs. In such a case, switching to backup screening is performed by determination processing on the management server PC 301 described later. In the following, details of processing during normal screening and backup screening of the image display PC 304 will be described.

図8は、画像表示PC304の構成の例を示す図である。図8を用いて画像表示PC304の動作を説明する。画像表示PC304は、画像処理PC303と同様に、画像処理PC303の台数分の受信処理部801を持ち、受信したデータを受信バッファ802にバッファリングする。本PCには大容量のメモリを搭載し、上映対象となる全ての映像をバッファリングできるようにする。これは、バックアップ映像を生成するために必要である。受信処理部801はスレッドとして構成できる。   FIG. 8 is a diagram illustrating an example of the configuration of the image display PC 304. The operation of the image display PC 304 will be described with reference to FIG. Similar to the image processing PC 303, the image display PC 304 has reception processing units 801 corresponding to the number of the image processing PCs 303, and buffers received data in the reception buffer 802. This PC is equipped with a large-capacity memory so that all videos to be screened can be buffered. This is necessary to generate a backup video. The reception processing unit 801 can be configured as a thread.

図9は、画像表示PC304における通常上映処理を示すフローチャートである。ステップS901において受信処理部801は、画像処理PC303において生成された映像データを受信し、受信バッファ802に格納する。ステップS902において受信処理部801は、映像1フレーム分の受信が完了する度に、管理部803にデータ受信完了通知を送信する。   FIG. 9 is a flowchart showing normal screening processing in the image display PC 304. In step S <b> 901, the reception processing unit 801 receives video data generated by the image processing PC 303 and stores it in the reception buffer 802. In step S902, the reception processing unit 801 transmits a data reception completion notification to the management unit 803 every time reception of one frame of video is completed.

ステップS903において管理部803は、データ受信完了通知を受信したら受信映像管理領域804内の受信映像管理情報を更新する。ここで受信映像管理情報は、受信した映像データのキャプチャ時刻、受信処理部801の識別IDを含むものである。ステップS904において管理部803は、上映開始時刻まで待機し、上映開始時刻から上映終了時刻までの間、ステップS905以降の上映管理処理を行う。   In step S903, the management unit 803 updates the received video management information in the received video management area 804 upon receiving the data reception completion notification. Here, the received video management information includes the capture time of the received video data and the identification ID of the reception processing unit 801. In step S904, the management unit 803 stands by until the screening start time, and performs a screening management process after step S905 from the screening start time to the screening end time.

ステップS905において管理部803は、再生対象となる映像データを受信バッファ802内から選択する。映像データの選択は、受信映像管理領域内の各映像データのキャプチャ時刻や受信処理部801の識別IDを利用して行う。ここで、上映コントロール情報806は上映開始時刻を基準とした相対時刻で記述されているため、キャプチャ開始時刻を用いて再生対象となるキャプチャ時刻を計算し、この時刻に対応したフレーム画像データを得る。ステップS906において管理部803は、このようにして選択した映像データを画像表示部805に通知する。   In step S905, the management unit 803 selects video data to be reproduced from the reception buffer 802. Selection of video data is performed using the capture time of each video data in the received video management area and the identification ID of the reception processing unit 801. Here, since the screening control information 806 is described in a relative time based on the screening start time, the capture time to be reproduced is calculated using the capture start time, and frame image data corresponding to this time is obtained. . In step S906, the management unit 803 notifies the image display unit 805 of the video data selected in this way.

ステップS907において画像表示部805は、指定された映像データを表示する。以後、全てのフレームについて再生処理を適用し、ステップS908において全てのフレーム画像を表示したと判定した場合、ステップS909において管理部は終了処理を実行する。なお、処理の遅延などで対応する映像データが存在しない場合には表示を更新せず、直前に表示した映像をそのまま表示した状態にする。このような処理により、フレームの欠落により上映時間が極端に短くなったり上映した映像が不自然になったりすることを回避できる。   In step S907, the image display unit 805 displays the designated video data. Thereafter, when the reproduction process is applied to all frames and it is determined in step S908 that all frame images have been displayed, the management unit executes an end process in step S909. If there is no corresponding video data due to processing delay or the like, the display is not updated and the video displayed immediately before is displayed as it is. By such processing, it is possible to avoid that the screening time is extremely shortened due to the lack of frames or that the displayed video becomes unnatural.

本実施例におけるステップS909の終了処理は、全てのフレームデータをファイルに格納する処理である。このファイルは、バックアップ映像として使用する。複数回上映する場合には、上映した全ての映像を保存しても良いし、フレームの欠落が無い場合だけ保存しても良い。   In the present embodiment, the end process of step S909 is a process of storing all the frame data in a file. This file is used as a backup video. In the case of multiple screenings, all the displayed videos may be stored, or only when there are no missing frames.

次に、バックアップ上映時の処理について説明する。本実施例では、バックアップ上映する映像として、通常上映の結果保存されたファイルのうち最新のものを用いる。予め指定したファイルを上映しても良いことは言うまでも無い。バックアップ上映時の処理も基本的に図9に示す処理と同様であり、異なる部分のみ説明する。バックアップ上映では、ステップ901の受信処理を行う代わりにバックアップデータ読込み処理部808を介してバックアップ映像データ809をメモリ上に読み込む。その後は通常上映と同様に上映処理を実行するため詳細な説明は省略する。尚、バックアップ上映の場合には、上映データのファイル出力、即ちステップS909の終了処理に相当する処理は行わない。   Next, processing at the time of backup screening will be described. In the present embodiment, the latest one of the files saved as a result of the normal screening is used as the video to be backed up. Needless to say, a file designated in advance may be screened. The processing at the time of backup screening is basically the same as the processing shown in FIG. 9, and only different parts will be described. In the backup screening, the backup video data 809 is read into the memory via the backup data read processing unit 808 instead of performing the reception process in step 901. After that, since the screening process is executed in the same manner as the normal screening, detailed description is omitted. In the case of a backup screening, the file output of the screening data, that is, the processing corresponding to the end processing in step S909 is not performed.

<管理サーバPC>
管理サーバPCは、システム全体を管理する。具体的には、次のような機能を持つ。
(a)システムを構成するPCやカメラの有効判定
(b)各PCにおける映像バッファリング時間の変更
(c)上記のa、bに基づいた上映コントロール情報の生成
(d)シナリオデータ、上映コントロール情報の配布
(e)キャプチャPC、画像処理PCの設定ファイルの配布
ここで、有効判定処理について図10のフローチャート図を参照して説明する。ステップS1001において管理サーバPCは、まず、画像表示PC304に対して問い合わせを行う。ステップS1002において管理サーバPCは、予め定めた時間TA以内に画像表示PCから応答が返ってくるかどうかを確認する。ここで、画像表示PC304は正常に動作している場合、問い合わせに対して0を返す。画像表示PC304が応答を返せない場合、上映ができなくなるので、ステップS1003において管理サーバPCはアラート表示をして機材の交換を促して処理を終了する。ステップS1003のアラート表示は、例えば画像表示PCに障害が発生したので上映が実行できない旨を表示することができる。
<Management server PC>
The management server PC manages the entire system. Specifically, it has the following functions.
(A) Validity determination of PC or camera constituting system (b) Change of video buffering time in each PC (c) Generation of screening control information based on above a and b (d) Scenario data and screening control information (E) Distribution of setting files of capture PC and image processing PC Here, the validity determination process will be described with reference to the flowchart of FIG. In step S1001, the management server PC first makes an inquiry to the image display PC 304. In step S1002, the management server PC confirms whether a response is returned from the image display PC within a predetermined time TA. Here, when the image display PC 304 is operating normally, 0 is returned in response to the inquiry. If the image display PC 304 cannot return a response, the screening cannot be performed. Therefore, in step S1003, the management server PC displays an alert, prompts replacement of the equipment, and ends the process. The alert display in step S1003 can indicate that the screening cannot be executed because a failure has occurred in the image display PC, for example.

ステップS1002において画像表示PC304から応答があった場合、すなわち、画像表示PC304に問題が無い場合には、ステップS1004に進む。ステップS1004において管理サーバPCは、引き続き各画像処理PC303に対しても同様に問い合わせを行い、正常に動作しているか否かを確認する。画像処理PC303は正常に動作している場合、問い合わせに対して0を返す。ステップS1005において管理サーバPCは、1台でも応答が無い画像処理PC303があった場合には、ステップS1011に進みアラート表示をする。そして、ステップS1012において管理サーバPCは画像表示PC304に対してバックアップ上映を指示して処理を終了する。ここでのアラート表示の例としては、どの画像処理PCから応答がないかを通知したり、バックアップ上映に切替える旨を通知することが挙げられる。   If there is a response from the image display PC 304 in step S1002, that is, if there is no problem with the image display PC 304, the process proceeds to step S1004. In step S1004, the management server PC continues to make an inquiry to each image processing PC 303 in the same manner, and confirms whether or not it is operating normally. If the image processing PC 303 is operating normally, 0 is returned in response to the inquiry. In step S1005, if there is even one image processing PC 303 that does not respond, the management server PC proceeds to step S1011 and displays an alert. In step S1012, the management server PC instructs the image display PC 304 to perform backup screening and ends the process. Examples of alert display here include notifying from which image processing PC there is no response or notifying switching to backup screening.

ステップS1005において画像処理PCから応答があった場合、すなわち画像処理PC303にも問題が無い場合、ステップS1006に進み、キャプチャPC302に対して問い合わせを行う。キャプチャPC302は、例えばカメラが認識できない場合は1、カメラは認識できるがキャプチャエラーが多く発生した場合は2、それ以外は0を返す。本実施例では、説明の簡便化のため、上記のケースを例に挙げているが、もちろん、これ以外にも細かい障害要因の種別を特定するための値を返してもよい。キャプチャPC302への問い合わせ結果は図4で示したキャプチャエラー情報410によって検知することができる。すなわち、キャプチャエラー情報は検知結果を示す情報である。   If there is a response from the image processing PC in step S1005, that is, if there is no problem with the image processing PC 303, the process proceeds to step S1006 and an inquiry is made to the capture PC 302. The capture PC 302 returns, for example, 1 when the camera cannot be recognized, 2 when the camera can be recognized but many capture errors occur, and 0 otherwise. In the present embodiment, the above case is taken as an example for the sake of simplification of explanation, but it goes without saying that a value for specifying the type of a fine failure factor may be returned. The inquiry result to the capture PC 302 can be detected by the capture error information 410 shown in FIG. That is, the capture error information is information indicating a detection result.

ステップS1007において管理サーバPCは、問い合わせの結果得られたカメラ及びキャプチャPCの状態から、有効カメラリストを生成する。有効カメラリストとは、カメラ及びキャプチャPCの状態が正常である組を含むリストのことである。有効カメラリストには、カメラ及びキャプチャPCの各組毎に上記のキャプチャエラー情報が関連付けられている。従って、上記のキャプチャエラー情報が0である組が、状態が正常である組を表している。また、上記のキャプチャエラー情報が0以外の値の場合には、その組のカメラ及びキャプチャPCの少なくとも一方に障害が発生していることを表している。   In step S1007, the management server PC generates a valid camera list from the camera and capture PC states obtained as a result of the inquiry. The effective camera list is a list including a pair in which the state of the camera and the capture PC is normal. In the valid camera list, the above-described capture error information is associated with each set of camera and capture PC. Therefore, a pair whose capture error information is 0 represents a pair whose state is normal. Further, when the capture error information is a value other than 0, it indicates that a failure has occurred in at least one of the camera and the capture PC of the set.

ステップS1008において管理サーバPCは、全てのキャプチャPCが正常であるかを判定する。キャプチャPC302からの応答が不能である場合、あるいは返された値が0以外の個体が存在する場合、ステップS1009に進みカメラ選択処理を実行する。カメラ選択処理は、使用不能なカメラを除いた構成で、シナリオに沿った上映をするための上映コントロール情報を生成する処理である。カメラ選択処理の詳細については後述する。   In step S1008, the management server PC determines whether all capture PCs are normal. If the response from the capture PC 302 is impossible, or if there is an individual whose returned value is other than 0, the process proceeds to step S1009 to execute camera selection processing. The camera selection process is a process for generating screening control information for screening according to a scenario with a configuration excluding unusable cameras. Details of the camera selection process will be described later.

ステップS1010において管理サーバPCは、カメラ選択処理でエラーが発生したか否かを判定する。つまり、使用不能なカメラを除いた構成ではシナリオに沿った上映ができないか否かを判定する。エラーが発生した場合には、ステップS1011、S1012に進み、アラート表示を行った上で、画像表示PC304に対してバックアップ上映を指示して処理を終了する。ここでのアラート表示の例としては、障害が発生しているキャプチャPCを通知し、バックアップ上映に切替える旨を通知することが挙げられる。   In step S1010, the management server PC determines whether an error has occurred in the camera selection process. That is, it is determined whether or not the screening according to the scenario cannot be performed with the configuration excluding the unusable camera. If an error has occurred, the process proceeds to steps S1011 and S1012 to display an alert, and then instruct backup display to the image display PC 304 to end the process. As an example of the alert display here, it is possible to notify a capture PC in which a failure has occurred and to notify that it is switched to backup screening.

なお、本実施例では、上映システムを構成する全てのPCで実行するアプリの設定ファイルは、各PC上に公開された共有フォルダに配置する。したがって、管理サーバから各PCの共有フォルダにアクセスすることで、設定を変更することができる。例えば、各PCにおける映像バッファリング時間や、画像表示PCでのバックアップ上映指示などは、このような共有フォルダの設定ファイルを変更することによって行うことができる。   In the present embodiment, the setting file of the application executed on all PCs constituting the screening system is placed in a shared folder disclosed on each PC. Therefore, the setting can be changed by accessing the shared folder of each PC from the management server. For example, the video buffering time in each PC, the backup screening instruction on the image display PC, and the like can be performed by changing such a shared folder setting file.

<電源コントローラ>
図11は、電源コントローラ306の構成例を示す図である。図11を用いて電源コントローラ306の動作を説明する。電源コントローラ306は管理サーバPC301から有効カメラリスト1102と上映コントロール情報1103とを取得し、その情報に応じてカメラ101及びキャプチャPC302の電源を制御する。
<Power controller>
FIG. 11 is a diagram illustrating a configuration example of the power supply controller 306. The operation of the power supply controller 306 will be described with reference to FIG. The power controller 306 acquires the valid camera list 1102 and the screening control information 1103 from the management server PC 301 and controls the power of the camera 101 and the capture PC 302 according to the information.

図12は、電源コントローラ306において、障害が発生した機器を再起動する処理を示すフローチャートである。ステップS1201においてまず、管理部1101は、管理サーバPC301から有効カメラリスト1102を取得する。先に説明したように有効カメラリストとは、カメラ及びキャプチャPCの状態を示すリストのことである。つまり、有効カメラリストは障害が発生しているカメラ及びキャプチャPCの組を表すリストとも言える。   FIG. 12 is a flowchart showing processing for restarting a device in which a failure has occurred in the power supply controller 306. In step S <b> 1201, the management unit 1101 first acquires the valid camera list 1102 from the management server PC 301. As described above, the valid camera list is a list indicating the states of the camera and the capture PC. In other words, the valid camera list can be said to be a list representing a set of a camera and a capture PC in which a failure has occurred.

ステップS1202において管理部1101は、上映コントロール情報1103を取得し、処理キューに上映開始時間を格納する保持する。ステップS1203において管理部1101は処理キューに格納されている上映開時刻を参照して上映開始時間まで待機する。上映開始時間まで待機する理由は、上映開始までの間に有効カメラリスト及び上映コントロール情報が更新される可能性があるからである。本実施例ではシステムの安定性を高めるために、データ更新等の影響が少ない上映開始時刻経過後(このとき有効カメラリスト及び上映コントロール情報は確定している)に再起動を行なう。つまり、本実施例では、障害が発生したデバイスを無条件で再起動するのではなく、上映シナリオの状況に応じて再起動をする。すなわち、上映開始後にはその上映シナリオにおいて使用しておらず、かつ障害が発生しているデバイスが確定する。そこで、上映シナリオに影響がないことが確定した時点で障害の発生しているデバイスを個別に自動的に再起動する。なお、上映時間中に再起動を行うのは、次回の上映コントロール情報生成までに再起動を終了させておき、次回の上映コントロール情報生成時において有効カメラリストに有効な組として含めるためである。なお、再起動は必ずしも上映開始後に行う必要はなく、上映する仮想視点映像の生成に用いられる有効カメラリストおよび上映コントロール情報が確定していれば、どのようなタイミングで再起動を行うようにしてもよい。すなわち、仮想視点映像を生成するために用いる画像データの設定後に再起動するようにしてもよい。   In step S1202, the management unit 1101 acquires the screening control information 1103 and stores the screening start time in the processing queue. In step S1203, the management unit 1101 waits until the screening start time with reference to the screening opening time stored in the processing queue. The reason for waiting until the screening start time is that the valid camera list and the screening control information may be updated before the screening starts. In this embodiment, in order to improve the stability of the system, the system is restarted after the screening start time with little influence of data update or the like has elapsed (at this time, the valid camera list and the screening control information are confirmed). That is, in this embodiment, the device in which the failure has occurred is not restarted unconditionally, but is restarted according to the state of the screening scenario. That is, after the start of the screening, a device that is not used in the screening scenario and has a failure is determined. Therefore, when it is determined that there is no influence on the screening scenario, the device in which the failure has occurred is automatically restarted individually. The reason why the restart is performed during the screening time is that the restart is completed before the next screening control information generation and is included in the valid camera list when the next screening control information is generated. It is not always necessary to restart after the start of the screening. If the effective camera list and screening control information used to generate the virtual viewpoint video to be screened is confirmed, the restart should be performed at any timing. Also good. In other words, the image data used for generating the virtual viewpoint video may be restarted after setting.

上映が開始されると、ステップS1204において管理部1101は、有効カメラリスト1102を参照して障害が発生しているデバイスの再起動を電源処理部1103に指示する。先に説明したように、有効カメラリストには、カメラとキャプチャPCの組に対応付けてステータスを示す値が含まれている。ステータスはカメラとキャプチャPCの状態を示している。例えば、ステータスが1の場合は、キャプチャPCがカメラを認識できない状態を示している。そこで、電源処理部1103は該当するキャプチャPC電源管理部1105に再起動を指示する。ステータスが2の場合は、キャプチャエラーが多いことを示している。そこで、電源処理部1103は該当するカメラ監視部1104に再起動を指示する。ステータスが0の場合はキャプチャPCとカメラが正常に動作しているため再起動は行わない。このように、ステータスに応じてキャプチャPCとカメラの電源を個別に管理可能である。尚、システムのとり得るステータスはこれに限られるものではなく、他のステータスも取り得る。また、ステータスによってはキャプチャPCとカメラを同時に再起動させることも可能である。   When the screening starts, in step S1204, the management unit 1101 refers to the valid camera list 1102 and instructs the power supply processing unit 1103 to restart the device in which the failure has occurred. As described above, the valid camera list includes a value indicating a status in association with a pair of a camera and a capture PC. The status indicates the state of the camera and the capture PC. For example, when the status is 1, the capture PC cannot recognize the camera. Therefore, the power processing unit 1103 instructs the corresponding capture PC power management unit 1105 to restart. A status of 2 indicates that there are many capture errors. Therefore, the power processing unit 1103 instructs the corresponding camera monitoring unit 1104 to restart. When the status is 0, the capture PC and the camera are operating normally, so the restart is not performed. In this way, the power sources of the capture PC and the camera can be individually managed according to the status. The statuses that the system can take are not limited to this, and other statuses can also be taken. Depending on the status, the capture PC and the camera can be restarted at the same time.

ステップS1205において電源処理部1103は、ステップS1204で指示した全ての機器の再起動が完了したことを確認し、管理部1101に再起動完了を通知する。   In step S1205, the power supply processing unit 1103 confirms that the restart of all the devices instructed in step S1204 is completed, and notifies the management unit 1101 of the completion of the restart.

なお、上記の例では、電源コントローラ306が有効カメラリストと上映コントロール情報を取得して再起動指示を行なう例を説明した。しかしながら、例えば管理サーバPC301が有効カメラリストと上映コントロール情報を取得して再起動を行なう対象とタイミングを決定して電源コントローラ306に通知してもよい。そして、電源コントローラ306はこの通知された内容に従って再起動指示を行なってもよい。   In the above example, the example in which the power supply controller 306 acquires the valid camera list and the screening control information and issues a restart instruction has been described. However, for example, the management server PC 301 may acquire the valid camera list and the screening control information, determine the target and timing for restarting, and notify the power controller 306 of it. Then, the power supply controller 306 may issue a restart instruction according to the notified contents.

<仮想視点映像生成処理>
次に、本実施形態のステップS707における仮想視点映像生成処理を説明する。仮想視点映像生成処理では、ある高さ一定の面を基準面として、この基準面にある物体が、カメラ切り替え時にスムーズに接続されるように映像を生成する。この仮想視点映像生成処理では、以下に挙げる映像補正、変換、映像効果付加を一貫して行う。
<Virtual viewpoint video generation processing>
Next, the virtual viewpoint video generation processing in step S707 of this embodiment will be described. In the virtual viewpoint video generation process, a video with a constant height is used as a reference plane, and an image is generated so that objects on the reference plane are smoothly connected when the camera is switched. In this virtual viewpoint video generation process, the following video correction, conversion, and video effect addition are performed consistently.

(1)カメラ映像の歪曲、および、倍率色収差補正
(2)周辺光量落ち補正
(3)仮想視点映像とカメラ映像の間のパース変換
(4)仮想視点映像に対する周辺光量落ち効果の付加
(5)歪曲効果の付加
この仮想視点映像生成処理は、上記操作を一貫して行うため効率が良く、リアルタイム性に適した処理である。尚、仮想視点映像生成処理の処理時間が画像表示PC304でフレームを再生する間隔(例えば、秒30コマ表示の場合、1/30秒)よりも長い場合、リアルタイム再生できなくなってしまう。そこで本実施例では、画像処理PC303を複数台用意してインターリーブすることで対応する。例えば画像処理PC303を10台用意した場合、仮想視点映像生成処理は1/3秒未満で処理すれば良い。
(1) Camera image distortion and magnification chromatic aberration correction (2) Peripheral light amount correction (3) Perspective conversion between virtual viewpoint image and camera image (4) Addition of peripheral light amount drop effect to virtual viewpoint image (5) Addition of Distortion Effect This virtual viewpoint video generation process is efficient because it performs the above operations consistently, and is a process suitable for real-time performance. Note that if the processing time of the virtual viewpoint video generation processing is longer than the interval at which frames are reproduced on the image display PC 304 (for example, 1/30 seconds in the case of displaying 30 frames per second), real-time reproduction becomes impossible. In this embodiment, a plurality of image processing PCs 303 are prepared and interleaved. For example, when ten image processing PCs 303 are prepared, the virtual viewpoint video generation process may be performed in less than 1/3 second.

図13は画像処理PC303の仮想視点映像生成処理部605において行われる仮想視点映像生成処理を示すフローチャートである。以下、仮想視点映像生成処理の詳細について数式を用いて説明する。   FIG. 13 is a flowchart showing virtual viewpoint video generation processing performed in the virtual viewpoint video generation processing unit 605 of the image processing PC 303. Hereinafter, details of the virtual viewpoint video generation processing will be described using mathematical expressions.

まず、仮想カメラの物理的な位置を   First, the physical position of the virtual camera

Figure 2015212876
Figure 2015212876

仮想カメラの方向を The direction of the virtual camera

Figure 2015212876
Figure 2015212876

仮想カメラの画面上方向を指すベクトルを A vector pointing up on the virtual camera screen

Figure 2015212876
Figure 2015212876

仮想カメラの画面右方向を指すベクトルを A vector pointing to the right direction of the virtual camera screen

Figure 2015212876
Figure 2015212876

とする。図14は仮想視点映像生成処理で用いられる各パラメータを説明するための図である。図14も併せて参照されたい。 And FIG. 14 is a diagram for explaining each parameter used in the virtual viewpoint video generation processing. Please also refer to FIG.

Figure 2015212876
Figure 2015212876

は方向を表すだけのベクトルであるため、長さは1とする。これらのベクトルを表す座標系には、前述の、床面をx-y平面として、高さ方向をz軸とする座標系を用いる。仮想カメラの水平半画角、および、垂直半画角をそれぞれθh,out、θv,outとする。 Is a vector that only represents the direction, so the length is 1. As the coordinate system representing these vectors, the above-described coordinate system having the floor surface as the xy plane and the height direction as the z axis is used. The horizontal half field angle and the vertical half field angle of the virtual camera are θ h, out and θ v, out , respectively.

仮想視点映像生成処理は、仮想視点映像の画素毎に処理を進めていく。ここで、
画素値を決定しようとしている画素の座標を
The virtual viewpoint video generation process proceeds for each pixel of the virtual viewpoint video. here,
The coordinates of the pixel whose pixel value is to be determined

Figure 2015212876
Figure 2015212876

とする。まず、仮想視点映像に歪曲効果を持たせるため、ステップS1301において歪曲効果の逆変換(歪曲補正)を行い、 And First, in order to give a distortion effect to the virtual viewpoint video, in step S1301, reverse transformation (distortion correction) of the distortion effect is performed.

仮想視点映像の歪曲補正後の画素座標 Pixel coordinates after distortion correction of virtual viewpoint video

Figure 2015212876
Figure 2015212876

を計算する。逆変換の具体的な数式は、どのような歪曲効果を持たせるかに依存するが、例えば、以下の式(1)を用いればよい。 Calculate A specific mathematical formula for the inverse transformation depends on what kind of distortion effect is given, but for example, the following formula (1) may be used.

Figure 2015212876
Figure 2015212876

ここで、 here,

Figure 2015212876
Figure 2015212876

は、任意視点映像の中心の画素位置である。 Is the center pixel position of the arbitrary viewpoint video.

Figure 2015212876
Figure 2015212876

は歪曲効果の強さをコントロールするパラメータである。 Is a parameter that controls the strength of the distortion effect.

ステップS1302は、   Step S1302

画素 Pixel

Figure 2015212876
に写り、かつ前述の基準面上にある点の、3次元空間上の位置
Figure 2015212876
The position in the three-dimensional space of the point on the reference plane described above

Figure 2015212876
を求めるステップである。以下、基準面の高さをZbaseとする。
Figure 2015212876
This is a step for obtaining. Hereinafter, the height of the reference plane is set as Z base .

位置 position

Figure 2015212876
Figure 2015212876

は、以下の式(2)〜(5)で求められる。 Is obtained by the following formulas (2) to (5).

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

ここで、Xp,zおよびXpixel,zは、それぞれ Where X p, z and X pixel, z are respectively

Figure 2015212876
Figure 2015212876

および and

Figure 2015212876
Figure 2015212876

のz成分である。 Z component.

ステップS1303は、c番目のカメラ(以下、カメラcとする)において、   In step S1303, in the c-th camera (hereinafter referred to as camera c),

位置 position

Figure 2015212876
Figure 2015212876

が写っている Is reflected

理想画素位置 Ideal pixel position

Figure 2015212876
Figure 2015212876

を求めるステップである。ここで言う理想画素位置とは、カメラcの映像に歪曲や倍率色収差などの収差が無い場合の画素位置である。 This is a step for obtaining. The ideal pixel position mentioned here is a pixel position when there is no aberration such as distortion or lateral chromatic aberration in the image of the camera c.

理想画素位置 Ideal pixel position

Figure 2015212876
は以下の式(6)〜(9)により求められる。
Figure 2015212876
Is obtained by the following equations (6) to (9).

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

Figure 2015212876
Figure 2015212876

ここで、式(6)のXp,c,x、Xp,c,y、Xp,c,zは、それぞれ Here, X p, c, x , X p, c, y , X p, c, z in equation (6) are respectively

Figure 2015212876
Figure 2015212876

のx、y、z成分であり、θh,c、θv,cはカメラcの水平半画角と垂直半画角である。式(8)の X, y, and z components, and θ h, c , θ v, c are the horizontal and vertical half angles of view of the camera c. Of formula (8)

Figure 2015212876
Figure 2015212876

はカメラcの位置である。また、式(9)の Is the position of the camera c. Further, the equation (9)

Figure 2015212876
Figure 2015212876

は、それぞれカメラcの映像の右方向、上方向、および、カメラcの向きを表す方向ベクトルである。これらのベクトルの長さは1とする。これら一連の操作は、ビュー変換、射影変換、スクリーン変換と一般に呼ばれる、3つの変換操作をまとめた操作である。 Are direction vectors representing the right direction, the upward direction, and the direction of the camera c, respectively. The length of these vectors is 1. These series of operations are operations in which three conversion operations generally called view conversion, projective conversion, and screen conversion are combined.

ステップS1304では、カメラcの歪曲および倍率色収差を考慮して、   In step S1304, taking into account the distortion and lateral chromatic aberration of the camera c,

理想画素位置 Ideal pixel position

Figure 2015212876
Figure 2015212876

を、各色毎に、 For each color,

実際の画素位置 Actual pixel position

Figure 2015212876
Figure 2015212876

に変換する。ここで、iは、色のインデックスを表す。この操作は、形式上、以下の式(10)で表すことができる。 Convert to Here, i represents a color index. This operation can be represented by the following formula (10) in terms of form.

Figure 2015212876
Figure 2015212876

この変換の具体的な形は、使用するカメラcの光学系に依存するもので、一般には、この変換は簡単な関数では表現できない。このため、実測値に基づいて、テーブル参照によってこの変換を行う。 The specific form of this conversion depends on the optical system of the camera c to be used. In general, this conversion cannot be expressed by a simple function. For this reason, this conversion is performed by referring to the table based on the actual measurement value.

ステップS1305では、カメラcの、   In step S1305, the camera c

画素位置 Pixel position

Figure 2015212876
Figure 2015212876

での画素値Ip,c,iを求める。 The pixel values I p, c, i at are obtained.

画素位置 Pixel position

Figure 2015212876
Figure 2015212876

は小数であるため、バイキュービック補間などを用いて、周辺画素から補間した画素値を取得する。 Since is a decimal, pixel values interpolated from surrounding pixels are obtained using bicubic interpolation or the like.

ステップS1306では、カメラcの周辺光量落ちを補正しつつ、仮想視点映像に周辺光量落ちの効果を付加するためのファクターDp,c,iを計算する。このファクターは、以下の式(11)のように、仮想始点映像の光量落ち効果の量Cと、 In step S1306, factors D p, c, i for adding a peripheral light amount drop effect to the virtual viewpoint image are calculated while correcting the peripheral light amount drop of the camera c. This factor is expressed by the following formula (11): the amount of light drop effect C p of the virtual start image,

画素位置 Pixel position

Figure 2015212876
Figure 2015212876

におけるカメラcの周辺光量落ちの補正量Cp,c,iとの比として定義する。 Is defined as a ratio to the correction amount C p, c, i of the peripheral light amount drop of the camera c.

Figure 2015212876
Figure 2015212876

カメラcの周辺光量落ちの補正量Cp,c,iは、歪曲補正と同様、一般には簡単な関数では表現できない。このため、実測値に基づいて補正テーブルを作成して、テーブル参照によって補正を行う。これを形式的に以下の式(12)で表す。 The correction amount C p, c, i for the peripheral light amount drop of the camera c cannot be generally expressed by a simple function, like the distortion correction. For this reason, a correction table is created based on the actually measured values, and correction is performed by referring to the table. This is formally expressed by the following formula (12).

Figure 2015212876
Figure 2015212876

上式のように、周辺光量落ちの画素値依存性をも考慮した補正を行う。 As shown in the above equation, correction is performed in consideration of the dependency of the peripheral light amount drop on the pixel value.

仮想視点映像に付加する周辺光量落ちの効果は、例えば、以下の式(13)を用いる。ここでβは、周辺光量落ちの強度をコントロールするパラメータである。   For example, the following expression (13) is used for the effect of the decrease in the amount of peripheral light added to the virtual viewpoint video. Here, β is a parameter for controlling the intensity of the peripheral light amount drop.

Figure 2015212876
ステップS1307にて、仮想視点映像の画素値Iout,iを式(14)にて計算する。
Figure 2015212876
In step S1307, the pixel value I out, i of the virtual viewpoint video is calculated by the equation (14).

Figure 2015212876
Figure 2015212876

ステップS1307までの処理により、 Through the processing up to step S1307,

仮想視点映像の画素位置 Pixel position of virtual viewpoint video

Figure 2015212876
Figure 2015212876

における、色iでの画素値Iout,iが決定される。ステップS1308にて、仮想視点映像の全ての画素が処理されるまで、ステップS1301〜ステップS1307を繰り返す。これにより、仮想視点映像が生成される。 The pixel value I out, i for color i is determined. Steps S1301 to S1307 are repeated until all the pixels of the virtual viewpoint video are processed in step S1308. Thereby, a virtual viewpoint video is generated.

ここで、仮想視点映像生成処理において、撮像画像の外の座標を参照する場合がある。このような領域については、所定画像を表示して対応する。例えば本実施例では、予め用意した床テクスチャ画像を仮想視点に応じてパース変換して使用する。撮像画像の外を参照した場合の画素値を、パース変換後の床テクスチャ画像の画素値とすることで違和感の無い出力画像を得ることが可能になる。   Here, in the virtual viewpoint video generation process, coordinates outside the captured image may be referred to. Such a region is dealt with by displaying a predetermined image. For example, in this embodiment, a floor texture image prepared in advance is used after being parse-converted according to a virtual viewpoint. By setting the pixel value when referring to the outside of the captured image as the pixel value of the floor texture image after the perspective conversion, it is possible to obtain an output image without a sense of incongruity.

<カメラ選択処理>
ステップS1009における管理サーバPCでのカメラ選択処理は、正常に動作しているカメラ101に関するカバー率に基づいて実行する。図15は、カバー率を示す図である。カバー率とは、仮想視点映像生成処理によって得る出力画像に対し、カメラによる撮像画像が含まれる割合である。したがって、カバー率の算出は、対象フレームの基準面の高さに基づいて行う。図15(a)は出力画像全ての画素が、撮像画像の画素により得られており、カバー率は100%となる。一方図15(b)は出力画像の一部の領域が撮像範囲の外を参照しており、カバー率は100%未満となる。仮想視点映像の生成処理においては、カバー率が100%であるカメラを用いることが好ましい。カバー率が100%でない場合、そのカメラでは撮像できていない領域が含まれるので、仮想視点映像の画質劣化につながるからである。そこで、本実施例では、カバー率が100%のカメラを選択する。
<Camera selection process>
The camera selection process in the management server PC in step S1009 is executed based on the coverage ratio regarding the camera 101 that is operating normally. FIG. 15 is a diagram illustrating the coverage rate. The coverage is the ratio at which the image captured by the camera is included in the output image obtained by the virtual viewpoint video generation process. Accordingly, the cover ratio is calculated based on the height of the reference plane of the target frame. In FIG. 15A, all the pixels of the output image are obtained from the pixels of the captured image, and the coverage is 100%. On the other hand, in FIG. 15B, a partial area of the output image refers to outside the imaging range, and the coverage is less than 100%. In the virtual viewpoint video generation process, it is preferable to use a camera with a coverage rate of 100%. This is because, when the coverage is not 100%, an area that cannot be captured by the camera is included, leading to deterioration of the image quality of the virtual viewpoint video. Therefore, in this embodiment, a camera with a coverage rate of 100% is selected.

図16は、管理サーバPCにおけるカメラ選択処理を示すフローチャートである。ステップS1601において管理サーバPCは、カメラ101とキャプチャPC302との組み合わせが正常に動作しているか否かを確認する。本実施例では有効カメラリストを取得する。有効カメラリストは、ステップS1006で生成したリストを利用する。   FIG. 16 is a flowchart showing camera selection processing in the management server PC. In step S1601, the management server PC confirms whether the combination of the camera 101 and the capture PC 302 is operating normally. In this embodiment, an effective camera list is acquired. The valid camera list uses the list generated in step S1006.

次に、ステップS1602において管理サーバPCは、上映コントロール情報を参照して上映開始時刻から上映終了時刻までの各フレームについて、有効カメラリストに登録されている各カメラのカバー率を算出する。すなわち、上映コントロール情報と有効カメラリストとを用いて各カメラのカバー率を算出する。   Next, in step S1602, the management server PC calculates the coverage of each camera registered in the valid camera list for each frame from the screening start time to the screening end time with reference to the screening control information. That is, the coverage rate of each camera is calculated using the screening control information and the valid camera list.

次に、ステップS1603において管理サーバPCは、ステップS1602で算出したカバー率が100%のカメラについて、選択処理を実行する。選択処理については後述する。ステップS1604において選択されたカメラが存在するかを判定する。選択処理によってカメラが選択されなかった場合、ステップS1605に進み選択処理モード設定を読み込んで判定を行う。選択処理モード設定とは、カバー率100%でないカメラを選択対象とするかどうかの設定で、選択対象とする場合には閾値Tx(%)を指定する。   Next, in step S1603, the management server PC executes a selection process for the camera with the 100% coverage calculated in step S1602. The selection process will be described later. It is determined whether the camera selected in step S1604 exists. If no camera has been selected by the selection process, the process advances to step S1605 to perform determination by reading the selection process mode setting. The selection processing mode setting is a setting as to whether or not a camera with a coverage rate of 100% is to be selected. When the selection processing mode is to be selected, a threshold Tx (%) is designated.

ステップS1605においてカバー率100%でないカメラを選択対象とすると判定した場合、ステップS1606にすすみ、カバー率がTx%以上のカメラを対象として選択処理を実行する。ステップS1605における判定がカバー率100%でないカメラを対象としない場合、及びステップS1606の選択処理でもカメラが選択されなかった場合(S1607のNo)は、ステップS1611でエラーを通知して処理を終了する。ステップS1611のエラーは、カメラが選択できなかったことを示す通知である。   If it is determined in step S1605 that a camera whose cover rate is not 100% is to be selected, the process proceeds to step S1606, and selection processing is executed for a camera whose cover rate is equal to or higher than Tx%. If the determination in step S1605 does not target a camera whose coverage is not 100%, and if no camera is selected in the selection process in step S1606 (No in S1607), an error is notified in step S1611 and the process ends. . The error in step S1611 is a notification indicating that the camera could not be selected.

ステップS1608では、全てのフレームを選択したかを判定し、全てのフレームを選択した場合はステップS1609に進み、そうでない場合はステップS1602に進む。   In step S1608, it is determined whether all frames have been selected. If all frames have been selected, the process proceeds to step S1609; otherwise, the process proceeds to step S1602.

上映コントロール情報によって全てのフレームに対してカメラが選択できた場合、ステップS1609において管理サーバPCは、カメラの再選択処理を実行する。例えば、1フレーム分の映像データの送信処理が1/30秒以内に終わらない場合、特定のキャプチャPCからの送信処理が長時間連続するとリアルタイム上映できなくなってしまう。また、選択カメラが頻繁に切り替わるとフレーム間の画質も合わせて変化してしまい、上映する映像のちらつきとなって現れてしまう。したがって、できるだけカメラの切り替え頻度を少なくしながらも、その上で特定カメラにリクエストが長時間継続しないようにする必要がある。再選択処理の詳細については後述する。   If the camera can be selected for all frames according to the screening control information, the management server PC executes a camera reselection process in step S1609. For example, when the transmission processing of video data for one frame does not end within 1/30 seconds, real-time screening cannot be performed if transmission processing from a specific capture PC continues for a long time. In addition, if the selected camera is frequently switched, the image quality between frames also changes and appears as flickering of the screened video. Therefore, it is necessary to make the request to the specific camera not continue for a long time while reducing the switching frequency of the camera as much as possible. Details of the reselection processing will be described later.

ステップS1610において管理サーバPCは再選択処理が正常終了したかを判定する。再選択処理でエラーが発生した場合には、ステップS1611に進み、エラーを通知して処理を終了する。尚、カメラ選択処理でエラーを通知した場合には通常上映では適切な画質が得られないと判断し、ステップS1011で説明したように自動的にバックアップ上映に切り替わる。   In step S1610, the management server PC determines whether or not the reselection process has been completed normally. If an error has occurred in the reselection process, the process advances to step S1611 to notify the error and end the process. When an error is notified in the camera selection process, it is determined that an appropriate image quality cannot be obtained by normal screening, and the screen is automatically switched to backup screening as described in step S1011.

<選択処理>
次に、ステップS1603とS1606の選択処理について説明する。選択処理では、まず、対象となるフレームfにおける注視点Pfの物理座標と、仮想カメラから注視点PfまでのベクトルVfとを算出する。また、内積最大値Imaxを0に初期化しておく。次に、ステップS1603の選択処理においては、有効カメラリストに登録されているカメラのうち、カバー率が100%のカメラについて以下で述べる処理を実行する。一方、ステップS1606の選択処理においてはカバー率がTx%以上のカメラについて以下で述べる処理を実行する。
<Selection process>
Next, the selection processing in steps S1603 and S1606 will be described. In the selection process, first, the physical coordinates of the gazing point Pf in the target frame f and the vector Vf from the virtual camera to the gazing point Pf are calculated. The inner product maximum value Imax is initialized to zero. Next, in the selection process of step S1603, the process described below is executed for a camera with a coverage rate of 100% among the cameras registered in the valid camera list. On the other hand, in the selection process in step S1606, the process described below is executed for a camera having a coverage ratio of Tx% or more.

まず、カメラcから注視点Pfまでの単位方向ベクトルVcを計算する。このベクトルVcとベクトルVfの内積をとり、内積が最大となるカメラcを選択する。このような処理を行うことで、仮想カメラからの視点に最も近い位置のカメラを選択することが出来る。   First, a unit direction vector Vc from the camera c to the gazing point Pf is calculated. The inner product of the vector Vc and the vector Vf is taken, and the camera c having the maximum inner product is selected. By performing such processing, the camera closest to the viewpoint from the virtual camera can be selected.

<再選択処理>
次に、ステップS1609の再選択処理を説明する。本実施例による上映システムでは、仮想視点の移動ルートに沿ってカメラを配置している。したがって、カメラを順次切り替えて使用しながら仮想視点映像を生成することになる。
<Reselection process>
Next, the reselection process in step S1609 will be described. In the screening system according to the present embodiment, cameras are arranged along the movement route of the virtual viewpoint. Therefore, the virtual viewpoint video is generated while sequentially switching and using the cameras.

まず、ある時点で選択されているカメラをc_selとする。次に、その一つ前に選択されたカメラc_prevを取得する。一つ前に選択されたカメラとは、直前フレームで選択されたカメラのことではなく、現在選択されているカメラよりも直前に選択されていたカメラのことを指す。同様に、二つ前に選択されたカメラc_prev2を取得する。   First, let c_sel be the camera selected at a certain time. Next, the camera c_prev selected immediately before is acquired. The camera selected immediately before refers not to the camera selected in the previous frame but to the camera selected immediately before the currently selected camera. Similarly, the camera c_prev2 selected two times before is acquired.

続いて、直前フレームと同じカメラが選択された状態かどうかをチェックする。直前フレームと同じカメラが選択されているかどうかで処理が異なる。
(a)直前フレームと同じカメラが選択されている場合
この場合は、連続選択回数を考慮したカメラ選択処理を実行する。本実施例では、連続選択回数の上限をNとする。まず、連続選択回数がN回未満であれば、このカメラを選択したままとする。N回以上連続選択されている場合には、特定カメラにリクエストが長時間継続しないようにシナリオ上次に選択されることになるカメラc_nextで代用可能かどうかを確認する。ここで、代用可能かどうかは、カバー率に基づいて判断する。代用可能な場合、現在処理中のフレーム以降でカメラc_selが連続選択されているフレームについて、選択カメラをc_nextに変更する。代用可能でない場合、エラーを通知して処理を終了する。
(b)直前フレームと異なるカメラが選択されている場合
この場合は、カメラ切り替え頻度を考慮したカメラ選択処理を実行する。まず、選択されているカメラc_selが、2つ前に選択されたカメラc_prev2と同じかどうかを判定する。同じ場合、選択カメラがc_selとc_prevとで交互に切り替わっている可能性があるので、これを回避する処理を実行する。
Subsequently, it is checked whether or not the same camera as the previous frame is selected. Processing differs depending on whether the same camera as the previous frame is selected.
(A) When the same camera as the previous frame is selected In this case, camera selection processing is performed in consideration of the number of continuous selections. In this embodiment, the upper limit of the number of continuous selections is N. First, if the number of continuous selections is less than N, this camera remains selected. If the request is continuously selected N times or more, it is confirmed whether the camera c_next to be selected next in the scenario can be substituted so that the request to the specific camera does not continue for a long time. Here, whether or not substitution is possible is determined based on the coverage. When the substitution is possible, the selected camera is changed to c_next for frames in which the camera c_sel is continuously selected after the currently processed frame. If the substitution is not possible, an error is notified and the process is terminated.
(B) When a camera different from the previous frame is selected In this case, camera selection processing is performed in consideration of the camera switching frequency. First, it is determined whether the selected camera c_sel is the same as the camera c_prev2 selected two times before. In the same case, there is a possibility that the selected camera is alternately switched between c_sel and c_prev, and therefore processing for avoiding this is executed.

まず、直前フレームの段階でカメラc_prevを連続M回以上使用しているかを確認する。連続M回以上使用していない場合、カメラ切り替え頻度が高くなっている可能性があるので、c_selの代わりにc_prevが使用可能かどうかを確認する。c_prevで代用可能な場合、選択カメラをc_prevに変更する。   First, it is confirmed whether the camera c_prev is used continuously M times or more at the stage of the immediately preceding frame. If the camera has not been used more than M times consecutively, the camera switching frequency may be high, so it is confirmed whether c_prev can be used instead of c_sel. If c_prev can be substituted, the selected camera is changed to c_prev.

そうでない場合、直前のフレームに対し、c_prev2での代用を試みる。c_prev2で代用可能な場合、直前フレーム以前でc_prevを連続選択しているフレーム全ての選択カメラをc_prev2に変更する。代用できない場合、エラーを通知して処理を終了する。   Otherwise, it tries to substitute c_prev2 for the previous frame. When c_prev2 can be substituted, the selected cameras of all frames in which c_prev is continuously selected before the previous frame are changed to c_prev2. If it cannot be substituted, an error is notified and the process is terminated.

これらの処理を全てのカメラの処理が終了するまで繰り返す。尚、再選択処理においてエラーを通知した場合、自動的にバックアップ上映に切り替える。   These processes are repeated until all the cameras have been processed. When an error is notified in the reselection process, the screen is automatically switched to the backup screening.

本実施例で述べたカメラの再選択処理では、(b)の処理を適用した結果、連続選択回数がN回以上になる可能性がある。したがって、この処理の後で連続選択回数を確認し、(a)と同様の処理によってこの状態を回避しても良いことは言うまでもない。   In the camera reselection process described in the present embodiment, as a result of applying the process (b), there is a possibility that the number of continuous selections is N or more. Therefore, it goes without saying that the number of continuous selections may be confirmed after this processing, and this state may be avoided by processing similar to (a).

説明した本実施例により、カメラやキャプチャPCの一部に障害が発生した場合、それらの機器を用いていないシナリオを上映中に当該機器を再起動して次回上映時に利用することが可能になる。その結果、長期間に渡って安定して仮想視点映像を生成することが可能なシステムを構築することが可能になる。   According to the present embodiment described above, when a failure occurs in a part of the camera or the capture PC, it becomes possible to restart the device during a scenario in which those devices are not used and use it at the next screening. . As a result, it is possible to construct a system capable of generating a virtual viewpoint video stably over a long period of time.

実施例1では、シナリオ上映中に障害が発生した機器を再起動する例を説明した。ここで、機器の障害が映像の上映に与える影響が少ない場合などは特定の再起動条件を満たす場合にのみ再起動を指示することにしても良い。図17は再起動条件に応じて電源コントローラ306における処理を切り替える例を示すフローチャート図である。ステップS1701、S1702
S1703、S1705、S1706は、図12のステップS1201〜S1205と同様である。本実施例では、ステップS1704において所望の条件で機器の再起動を指示するか否かを判定する。再起動条件は例えば、有効カメラ台数が90%以下の場合や、キャプチャエラーが10%以上の場合など任意に設定可能である。また、障害の度合いによっては再起動のみでは障害が解消されないことも考えられる。そこで、ステップS1704では障害要因の解消を確認したか否かを再起動条件として設定してもよい。尚、ステップS1705の判定処理以外は図12で説明したフローチャートと同様の処理のため説明は省略する。
In the first embodiment, an example has been described in which a device in which a failure has occurred during scenario presentation is restarted. Here, when the influence of the device failure has little influence on the video presentation, the restart may be instructed only when a specific restart condition is satisfied. FIG. 17 is a flowchart showing an example of switching processing in the power supply controller 306 in accordance with the restart condition. Steps S1701 and S1702
S1703, S1705, and S1706 are the same as steps S1201 to S1205 in FIG. In this embodiment, in step S1704, it is determined whether or not an instruction to restart the device is given under a desired condition. The restart condition can be arbitrarily set, for example, when the number of effective cameras is 90% or less, or when the capture error is 10% or more. In addition, depending on the degree of failure, it may be possible that the failure cannot be resolved only by restarting. Therefore, in step S1704, whether or not the failure factor has been confirmed may be set as a restart condition. Since the processing other than the determination processing in step S1705 is the same as the flowchart described with reference to FIG.

<その他の実施例>
実施例1及び実施例2では、規模の大きな映像再生システムの例を説明したが、多眼カメラのようなデバイスにも適用可能である。図18は多眼カメラの構成を示す模式図である。図18において、レンズ1801を通って撮像センサ1802で受光した光はA/D変換部1808を介してデジタル信号に変換される。変換されたデータはバス1807を通ってメモリ1804に記録される。記録されたデータはプロセッサ1803で処理されプレビューモニタ1805に表示される。このような、多眼カメラの構成において、センサ電源コントローラ1806を備えることで、カメラ全体を初期化する必要がなくなる。
<Other examples>
In the first and second embodiments, an example of a large-scale video reproduction system has been described. However, the present invention can also be applied to a device such as a multi-view camera. FIG. 18 is a schematic diagram showing the configuration of a multi-view camera. In FIG. 18, light received by the image sensor 1802 through the lens 1801 is converted into a digital signal via the A / D converter 1808. The converted data is recorded in the memory 1804 through the bus 1807. The recorded data is processed by the processor 1803 and displayed on the preview monitor 1805. In such a multi-lens camera configuration, the sensor power supply controller 1806 is provided, so that it is not necessary to initialize the entire camera.

また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。   The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

また、本実施形態の機能を実現するためのプログラムコードを、1つのコンピュータ(CPU、MPU)で実行する場合であってもよいし、複数のコンピュータが協働することによって実行する場合であってもよい。さらに、プログラムコードをコンピュータが実行する場合であってもよいし、プログラムコードの機能を実現するための回路等のハードウェアを設けてもよい。またはプログラムコードの一部をハードウェアで実現し、残りの部分をコンピュータが実行する場合であってもよい。   Further, the program code for realizing the function of the present embodiment may be executed by one computer (CPU, MPU), or may be executed by a plurality of computers cooperating. Also good. Further, the program code may be executed by a computer, or hardware such as a circuit for realizing the function of the program code may be provided. Alternatively, a part of the program code may be realized by hardware and the remaining part may be executed by a computer.

Claims (17)

複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムであって、
前記撮像手段における障害の発生を検知する検知手段と、
前記複数の撮像手段のうち、前記検知手段により障害の発生が検知された撮像手段を再起動する制御手段とを有し、
前記制御手段は、前記障害の発生が検知された撮像手段を、前記障害の発生が検知された撮像手段を除く他の撮像手段によって撮像された画像データから生成された仮想視点映像の再生の開始後に再起動することを特徴とする映像再生システム。
A video playback system for playing back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
Detecting means for detecting occurrence of a failure in the imaging means;
A control unit that restarts the imaging unit in which the occurrence of the failure is detected by the detection unit among the plurality of imaging units;
The control means starts the reproduction of the virtual viewpoint video generated from the image data picked up by the image pickup means other than the image pickup means other than the image pickup means in which the occurrence of the failure is detected. A video playback system that is restarted later.
前記撮像手段は、カメラと該カメラで撮像された画像データを伝送する装置とを含むことを特徴とする請求項1に記載の映像再生システム。   The video reproduction system according to claim 1, wherein the imaging unit includes a camera and a device that transmits image data captured by the camera. 前記検知手段は、前記カメラ及び前記装置からの応答に基づいて前記障害の発生を検知することを特徴とする請求項2に記載の映像再生システム。   The video reproduction system according to claim 2, wherein the detection unit detects the occurrence of the failure based on responses from the camera and the device. 前記検知手段は、前記カメラからの応答がない場合、前記装置から応答がない場合、またはキャプチャエラーが所定の割合で発生しているとの応答があった場合に、前記障害が発生していると検知することを特徴とする請求項3に記載の映像再生システム。   The detection means has the failure when there is no response from the camera, when there is no response from the device, or when there is a response that a capture error has occurred at a predetermined rate. The video reproduction system according to claim 3, wherein the video reproduction system is detected. 前記検知手段は、検知した内容に基づいて障害の種別を決定することを特徴とする請求項2から4のいずれか一項に記載の映像再生システム。   The video reproduction system according to any one of claims 2 to 4, wherein the detection unit determines a type of failure based on the detected content. 前記制御手段は、前記障害の発生しているカメラまたは装置の少なくとも一方の電源を前記障害の種別に応じて再起動することを特徴とする請求項5に記載の映像再生システム。   6. The video reproduction system according to claim 5, wherein the control unit restarts at least one power source of the camera or device in which the failure has occurred according to the type of the failure. 前記撮像手段の再起動に必要な条件を判定する判定手段をさらに有し、
前記制御手段は、前記障害の発生した撮像手段を、該撮像手段を除く他の撮像手段によって得られた画像データから得られる仮想視点映像の再生の開始後であり、かつ前記判定手段で条件を満たすと判定された場合に再起動することを特徴とする請求項1から6のいずれか一項に記載の映像再生システム。
A determination unit for determining a condition necessary for restarting the imaging unit;
The control unit is configured to set the imaging unit in which the failure has occurred after the start of reproduction of a virtual viewpoint video obtained from image data obtained by another imaging unit excluding the imaging unit, and to determine a condition in the determination unit. The video reproduction system according to any one of claims 1 to 6, wherein the video reproduction system is restarted when it is determined that it is satisfied.
前記仮想視点映像の各フレームの生成に用いられる画像データに対応する撮像手段を示す上映コントロール情報と前記検知手段による検知結果とに基づいて前記仮想視点映像の生成に用いられる画像データに対応する撮像手段を選択する選択手段と
前記選択手段で選択された撮像手段により撮像された画像データを用いて生成された前記仮想視点映像を再生する再生手段と
をさらに有することを特徴とする請求項1から7のいずれか一項に記載の映像再生システム。
Imaging corresponding to image data used for generation of the virtual viewpoint video based on screening control information indicating imaging means corresponding to image data used for generation of each frame of the virtual viewpoint video and a detection result by the detection means The apparatus further comprises: selection means for selecting means; and playback means for playing back the virtual viewpoint video generated using the image data picked up by the image pickup means selected by the selection means. The video reproduction system according to any one of claims 7 to 9.
前記選択手段により有効な撮像手段が選択されない場合、前記再生手段は、バックアップ上映を行い、
前記制御手段は、前記バックアップ上映の開始後に前記障害の発生した撮像手段を再起動することを特徴とする請求項8に記載の映像再生システム。
When an effective imaging unit is not selected by the selection unit, the reproduction unit performs a backup screening,
9. The video reproduction system according to claim 8, wherein the control unit restarts the imaging unit in which the failure has occurred after the backup screening is started.
前記撮像手段は、レンズと撮像センサとを有するカメラであり、
前記システムは、多眼カメラを備える撮像装置であることを特徴とする請求項1から9のいずれか一項に記載の映像再生システム。
The imaging means is a camera having a lens and an imaging sensor,
The video reproduction system according to claim 1, wherein the system is an imaging device including a multi-view camera.
映像再生のシナリオに規定されたタイミングでそれぞれの撮像を行なう複数の撮像手段と、
前記撮像手段における障害の発生を検知する検知手段と、
前記検知手段により障害の発生が検知された撮像手段を、前記シナリオに規定された前記撮像のタイミングを外して再起動する制御手段と、
を有することを特徴とする映像再生システム。
A plurality of image capturing means for capturing each image at a timing defined in a video playback scenario;
Detecting means for detecting occurrence of a failure in the imaging means;
A control unit that restarts the imaging unit in which the occurrence of the failure is detected by the detection unit, removing the timing of the imaging defined in the scenario;
A video playback system comprising:
複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムであって、
前記撮像手段における障害の発生を検知する検知手段と、
前記複数の撮像手段によって撮像された画像データのうち、前記障害の発生が検知された撮像手段を除く撮像手段により撮像された画像データの中から、前記仮想視点映像を生成するために用いる画像データを設定する設定手段と、
前記検知手段により障害の発生が検知された撮像手段を、前記設定手段による前記仮想視点映像を生成するために用いる画像データの設定後に再起動する制御手段とを有することを特徴とする映像再生システム。
A video playback system for playing back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
Detecting means for detecting occurrence of a failure in the imaging means;
Image data used to generate the virtual viewpoint video from among the image data captured by the imaging unit excluding the imaging unit in which the occurrence of the failure is detected, among the image data captured by the plurality of imaging units. A setting means for setting
And a control unit that restarts the imaging unit in which the occurrence of the failure is detected by the detection unit after setting of the image data used for generating the virtual viewpoint video by the setting unit. .
複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムにおける電源管理装置であって、
障害の発生した撮像手段を示す情報と、前記仮想視点映像の上映開始時刻を示す情報とを取得する取得手段と、
前記障害の発生した撮像手段の電源を、前記仮想視点映像の上映開始時刻の後に再起動する制御手段と
を有することを特徴とする電源管理装置。
A power management device in a video playback system for playing back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
An acquisition unit that acquires information indicating an imaging unit in which a failure has occurred and information indicating a display start time of the virtual viewpoint video;
A power management apparatus, comprising: a control unit that restarts the power of the imaging unit in which the failure has occurred after the presentation start time of the virtual viewpoint video.
複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムにおける制御方法であって、
前記撮像手段における障害の発生を検知する検知ステップと、
前記複数の撮像手段のうち、前記検知手段により障害の発生が検知された撮像手段を再起動する制御ステップとを含み、
前記制御ステップは、前記障害の発生が検知された撮像手段を、前記障害の発生が検知された撮像手段を除く他の撮像手段によって撮像された画像データから生成された仮想視点映像の再生の開始後に再起動するステップであることを特徴とする制御方法。
A control method in a video playback system for playing back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
A detection step of detecting the occurrence of a failure in the imaging means;
A control step of restarting the imaging unit in which the occurrence of the failure is detected by the detection unit among the plurality of imaging units,
The control step starts the reproduction of the virtual viewpoint video generated from the image data captured by the other imaging unit excluding the imaging unit in which the occurrence of the failure is detected. A control method which is a step of restarting later.
映像再生のシナリオに規定されたタイミングでそれぞれの撮像を行なう複数の撮像手段を有する映像再生システムにおける制御方法であって、
前記撮像手段の障害の発生を検知する検知ステップと、
前記検知ステップで障害の発生が検知された撮像手段を、前記シナリオに規定されたタイミングを外して再起動するステップと、
を有することを特徴とする制御方法。
A control method in a video playback system having a plurality of imaging means for capturing images at a timing specified in a video playback scenario,
A detection step of detecting the occurrence of a failure of the imaging means;
Re-starting the imaging means in which the occurrence of a failure is detected in the detection step, removing the timing defined in the scenario;
A control method characterized by comprising:
複数の撮像手段によって撮像された画像データから生成された仮想視点映像を再生する映像再生システムにおける電源管理装置であって、
障害の発生した撮像手段を示す情報と、前記仮想視点映像の上映開始時刻を示す情報とを取得する取得ステップと、
前記障害の発生した撮像手段の電源を、前記仮想視点映像の上映開始時刻の経過後に再起動するステップと
を有することを特徴とする電源管理方法。
A power management device in a video playback system for playing back a virtual viewpoint video generated from image data captured by a plurality of imaging means,
An acquisition step of acquiring information indicating an imaging unit in which a failure has occurred and information indicating a start time of the virtual viewpoint video;
And a step of restarting the power supply of the imaging means in which the failure has occurred after the elapse of the presentation start time of the virtual viewpoint video.
コンピュータを請求項1から12のいずれか一項に記載の映像再生システムにおける各手段として機能させるためのプログラム。   The program for functioning a computer as each means in the video reproduction system as described in any one of Claims 1-12.
JP2014095213A 2014-05-02 2014-05-02 Video reproduction system Pending JP2015212876A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014095213A JP2015212876A (en) 2014-05-02 2014-05-02 Video reproduction system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014095213A JP2015212876A (en) 2014-05-02 2014-05-02 Video reproduction system

Publications (1)

Publication Number Publication Date
JP2015212876A true JP2015212876A (en) 2015-11-26

Family

ID=54697107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014095213A Pending JP2015212876A (en) 2014-05-02 2014-05-02 Video reproduction system

Country Status (1)

Country Link
JP (1) JP2015212876A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017212592A (en) * 2016-05-25 2017-11-30 キヤノン株式会社 Controller, control method, and program
CN109803072A (en) * 2017-11-17 2019-05-24 群光电子股份有限公司 Image capture unit with power supply function of reset
JP2019134428A (en) * 2019-02-13 2019-08-08 キヤノン株式会社 Control device, control method, and program
EP3574963A1 (en) * 2018-03-23 2019-12-04 Canon Kabushiki Kaisha Information processing apparatus and control method thereof

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017212592A (en) * 2016-05-25 2017-11-30 キヤノン株式会社 Controller, control method, and program
CN109644265A (en) * 2016-05-25 2019-04-16 佳能株式会社 Control device, control method and storage medium
CN109803072A (en) * 2017-11-17 2019-05-24 群光电子股份有限公司 Image capture unit with power supply function of reset
CN109803072B (en) * 2017-11-17 2021-01-22 群光电子股份有限公司 Image pick-up device with power supply reset function
EP3574963A1 (en) * 2018-03-23 2019-12-04 Canon Kabushiki Kaisha Information processing apparatus and control method thereof
US10834477B2 (en) 2018-03-23 2020-11-10 Canon Kabushiki Kaisha Information processing apparatus and control method thereof
JP2019134428A (en) * 2019-02-13 2019-08-08 キヤノン株式会社 Control device, control method, and program

Similar Documents

Publication Publication Date Title
JP5562103B2 (en) Image processing apparatus and method
JP5570284B2 (en) Image processing apparatus and method
CN110073414B (en) Image processing apparatus, method, and non-transitory computer readable storage medium
JP6496093B1 (en) Exposure control of 3D 360 degree virtual reality camera
US20180204381A1 (en) Image processing apparatus for generating virtual viewpoint image and method therefor
JP6894687B2 (en) Image processing system, image processing device, control method, and program
US20190310472A1 (en) Streaming virtual reality video
US11463624B2 (en) Imaging device, imaging method, display device, and display method that capture a particular capturing region corresponding to a selected cutout image
US20160037068A1 (en) System and method of stitching together video streams to generate a wide field video stream
WO2018100928A1 (en) Image processing device and method
JP6497965B2 (en) Image processing apparatus and image processing method
JP7042571B2 (en) Image processing device and its control method, program
JP2015212876A (en) Video reproduction system
JP2019050451A (en) Image processing apparatus and method for controlling the same, and program, and image processing system
JP2019057891A (en) Information processing apparatus, imaging apparatus, information processing method, and program
US20130342712A1 (en) Photographing control apparatus and photographing control method
JP6971624B2 (en) Information processing equipment, control methods, and programs
JP2015171042A (en) Picture processing system and picture imaging apparatus
US11622099B2 (en) Information-processing apparatus, method of processing information, and program
JP6952456B2 (en) Information processing equipment, control methods, and programs
JP7458713B2 (en) Image processing device, image processing system, control method, and program
US20230162435A1 (en) Information processing apparatus, information processing method, and storage medium
JP6157220B2 (en) Output device and method
JP6261191B2 (en) Display control apparatus, display control method, and program
JP2008301191A (en) Video monitoring system, video monitoring control device, video monitoring control method, and video monitor controlling program