JP2021097300A - Control unit, control method, and program - Google Patents
Control unit, control method, and program Download PDFInfo
- Publication number
- JP2021097300A JP2021097300A JP2019226667A JP2019226667A JP2021097300A JP 2021097300 A JP2021097300 A JP 2021097300A JP 2019226667 A JP2019226667 A JP 2019226667A JP 2019226667 A JP2019226667 A JP 2019226667A JP 2021097300 A JP2021097300 A JP 2021097300A
- Authority
- JP
- Japan
- Prior art keywords
- synchronization signal
- control device
- time
- communication path
- synchronization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
Description
本発明は、複数の撮像手段の同期制御に関するものである。 The present invention relates to synchronous control of a plurality of imaging means.
近年、撮像領域の周囲に複数の撮像装置を配置し、各撮像装置を同期させて撮像領域を撮像することにより得られる複数の撮像画像を用いて、指定された視点(仮想視点)から見た画像(仮想視点画像)を生成する技術が注目されている。このような仮想視点画像を生成する技術によれば、例えば、スポーツの試合やコンサート等のイベントを様々な角度から視聴することが出来るため、ユーザに高臨場感を与えることが出来る。 In recent years, a plurality of imaging devices are arranged around an imaging region, and a plurality of captured images obtained by synchronizing each imaging device to image the imaging region are used and viewed from a designated viewpoint (virtual viewpoint). Technology for generating images (virtual viewpoint images) is attracting attention. According to the technology for generating such a virtual viewpoint image, for example, an event such as a sports match or a concert can be viewed from various angles, so that the user can be given a high sense of presence.
特許文献1には、複数の撮像装置が撮像することにより得られる撮像画像に基づく画像データを用いて、仮想視点画像を生成する方法について記載されている。各撮像装置はデイジーチェーン接続されており、各撮像装置は、デイジーチェーン接続を用いて画像データを画像処理装置に送信する。また、特許文献1には、複数の撮像装置の撮像タイミングを同期させる方法についても記載されている。すなわち、複数の撮像装置は、それぞれ制御装置と接続され、各制御装置がタイムサーバと同期制御処理を行うことにより、各撮像装置による撮像が同期される。
特許文献1に記載のシステムのように、デイジーチェーン接続を介して複数の撮像装置による撮像を同期させる場合、タイムサーバとの同期制御処理のロバスト性を高めるため、例えば2つのタイムサーバが設けられる場合がある。つまり、2つのタイムサーバのそれぞれとデイジーチェーン接続された制御装置は、デイジーチェーン接続が切断されたとしても、一方のタイムサーバから同期信号を得られるので、同期制御処理が可能となる。
When synchronizing imaging by a plurality of imaging devices via a daisy chain connection as in the system described in
しかし、制御装置は、2つのタイムサーバから別のデイジーチェーン接続により、2つの同期信号を取得した場合、制御装置は、取得した2つの同期信号のうち、いずれの同期信号と同期すべきかを適切に判定することができない虞があった。なお、ロバスト性をより向上させるため、タイムサーバが3つ以上設けられる場合であっても同様の課題が生じる。 However, when the control device acquires two synchronization signals from two time servers by another daisy chain connection, the control device appropriately determines which of the two acquired synchronization signals should be synchronized with. There was a risk that it could not be determined. In addition, in order to further improve the robustness, the same problem occurs even when three or more time servers are provided.
本発明は上記の課題に鑑みてなされたものである。その目的は、複数のデイジーチェーン接続を介して制御装置が複数の同期信号を取得した場合に、適切に同期制御処理が行われるようにすることである。 The present invention has been made in view of the above problems. The purpose is to ensure that the synchronization control process is appropriately performed when the control device acquires a plurality of synchronization signals via a plurality of daisy chain connections.
本発明に係る制御装置は、複数の撮像画像を取得する複数の撮像手段による撮像を同期させるための第1の同期信号を生成するタイムサーバから、他の制御装置とデイジーチェーン接続されることにより構成される第1の通信経路を介して通信される前記第1の同期信号と、前記複数の撮像手段による撮像を同期させるための第2の同期信号を生成するタイムサーバから、前記他の制御装置とデイジーチェーン接続されることにより構成される第2の通信経路であって、前記第1の通信経路とは異なる第2の通信経路を介して通信される前記第2の同期信号と、の少なくとも一方を取得する取得手段と、前記取得手段により、前記第1の同期信号と前記第2の同期信号とのいずれか一方が取得された場合、取得された同期信号に基づいて、前記複数の撮像手段による撮像を同期させるように制御する同期制御を行い、前記取得手段により、前記第1の同期信号と前記第2の同期信号との両方が取得された場合、前記第1の同期信号及び前記第2の同期信号のそれぞれに含まれる優先度情報であって、同期信号の優先度を示す優先度情報に基づいて決定される前記第1の同期信号及び前記第2の同期信号のうちいずれか一方の同期信号に基づいて、前記同期制御を行う制御手段とを有することを特徴とする。 The control device according to the present invention is daisy-chained to another control device from a time server that generates a first synchronization signal for synchronizing imaging by a plurality of imaging means that acquire a plurality of captured images. The other control from the time server that generates the first synchronization signal communicated via the configured first communication path and the second synchronization signal for synchronizing the imaging by the plurality of imaging means. A second communication path configured by being daisy-chained to the device, and the second synchronization signal communicated via a second communication path different from the first communication path. When either one of the first synchronization signal and the second synchronization signal is acquired by the acquisition means for acquiring at least one and the acquisition means, the plurality of said ones based on the acquired synchronization signals. When synchronization control is performed to control imaging by the imaging means and both the first synchronization signal and the second synchronization signal are acquired by the acquisition means, the first synchronization signal and the first synchronization signal and the second synchronization signal are acquired. Any of the first synchronization signal and the second synchronization signal, which is priority information included in each of the second synchronization signals and is determined based on the priority information indicating the priority of the synchronization signal. It is characterized by having a control means for performing the synchronization control based on one of the synchronization signals.
本発明によれば、複数のデイジーチェーン接続を介して制御装置が複数の同期信号を取得した場合に、適切に同期制御処理が行われる。 According to the present invention, when the control device acquires a plurality of synchronization signals via a plurality of daisy chain connections, the synchronization control processing is appropriately performed.
以下、本発明の実施形態について、図面を参照しながら説明する。なお、以下の実施形態に記載される構成要素は、本発明の実施の形態の一例を示すものであり、本発明をそれらのみに限定するものではない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. The components described in the following embodiments show an example of the embodiments of the present invention, and the present invention is not limited to them.
(第1の実施形態)
本実施形態においては、仮想視点画像を生成するための処理を行う画像処理システムについて説明する。仮想視点画像とは、仮想視点画像とは、複数の撮像装置による撮像に基づく複数の画像と、指定された任意の視点(仮想視点)とに基づいて、指定された仮想視点からの見えを表す画像である。また、本実施形態における仮想視点画像は、自由視点画像とも呼ばれるものであるが、ユーザが自由に(任意に)指定した視点に対応する画像に限定されず、例えば複数の候補からユーザが選択した視点に対応する画像なども仮想視点画像に含まれる。また、本実施形態における仮想視点画像は、静止画及び動画のいずれであってもよい。また、画像処理システムが扱う画像データについても、静止画及び動画のいずれであってもよい。すなわち、本実施形態の画像処理システムは、静止画及び動画の何れについても処理可能であるものとする。
(First Embodiment)
In the present embodiment, an image processing system that performs processing for generating a virtual viewpoint image will be described. What is a virtual viewpoint image? A virtual viewpoint image represents a view from a designated virtual viewpoint based on a plurality of images taken by a plurality of imaging devices and a designated arbitrary viewpoint (virtual viewpoint). It is an image. Further, the virtual viewpoint image in the present embodiment is also called a free viewpoint image, but is not limited to an image corresponding to a viewpoint freely (arbitrarily) specified by the user, and is selected by the user from a plurality of candidates, for example. Images corresponding to the viewpoint are also included in the virtual viewpoint image. Further, the virtual viewpoint image in the present embodiment may be either a still image or a moving image. Further, the image data handled by the image processing system may be either a still image or a moving image. That is, it is assumed that the image processing system of the present embodiment can process both still images and moving images.
本実施形態における画像処理システムが有する各装置のハードウェア構成について、図12を用いて説明する。ここでは、後述するカメラアダプタを例として説明するが、後述するタイムサーバ、画像コンピューティングサーバ、制御端末、及びユーザ端末等も同様のハードウェア構成となりうる。図12に示すカメラアダプタ101は、CPU1401、ROM1402、RAM1403、補助記憶装置1404、表示部1405、操作部1406、通信I/F1407、及びバス1408を有する。
The hardware configuration of each device included in the image processing system according to the present embodiment will be described with reference to FIG. Here, a camera adapter described later will be described as an example, but a time server, an image computing server, a control terminal, a user terminal, and the like described later may have the same hardware configuration. The
CPU1401は、ROM1402やRAM1403に格納されているコンピュータプログラムやデータを用いてカメラアダプタ101の全体を制御することで、カメラアダプタ101が有する各処理部の機能を実現する。なお、カメラアダプタ101がCPU1401とは異なる1又は複数の専用のハードウェアを有し、CPU1401による処理の少なくとも一部を専用のハードウェアが実行してもよい。専用のハードウェアの例としては、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、およびDSP(デジタルシグナルプロセッサ)などがある。ROM1402は、変更を必要としないプログラムなどを格納する。RAM1403は、補助記憶装置1404から供給されるプログラムやデータ、及び通信I/F1407を介して外部から供給されるデータなどを一時記憶する。補助記憶装置1404は、例えばハードディスクドライブ等で構成され、画像データや音声データなどの種々のデータを記憶する。
The
表示部1405は、例えば液晶ディスプレイやLED等で構成され、ユーザがカメラアダプタ101を操作するためのGUI(Graphical User Interface)などを表示する。操作部1406は、例えばキーボードやマウス、ジョイスティック、タッチパネル等で構成され、ユーザによる操作を受けて各種の指示をCPU1401に入力する。CPU1401は、表示部1405を制御する表示制御部、及び操作部1406を制御する操作制御部として動作する。
The
通信I/F1407は、カメラアダプタ101の外部の装置との通信に用いられる。例えば、カメラアダプタ101が外部の装置と有線で接続される場合には、通信用のケーブルが通信I/F1407に接続される。カメラアダプタ101が外部の装置と無線通信する機能を有する場合には、通信I/F1407はアンテナを備える。バス1408は、カメラアダプタ101の各部をつないで情報を伝達する。
The communication I / F 1407 is used for communication with an external device of the
本実施形態では表示部1405と操作部1406とがカメラアダプタ101の内部に存在するものとするが、表示部1405と操作部706との少なくとも一方がカメラアダプタ101の外部に別の装置として存在していてもよい。また、表示部1405と操作部1406とのいずれか又は両方がない構成であってもよい。これらは、後述するタイムサーバ、画像コンピューティングサーバ、制御端末、及びユーザ端末等についても同様に当てはまる。
In the present embodiment, it is assumed that the
次に、図1を用いて、画像処理システム100の機能構成について説明する。画像処理システム100は、センサシステム190a―センサシステム190z、画像コンピューティングサーバ160、制御端末180、ハブ140、タイムサーバ102a、タイムサーバ102b、及び、ユーザ端末120を有する。以下、各処理部について説明する。
Next, the functional configuration of the
センサシステム190a―センサシステム190zは、それぞれ撮像領域の撮像を行い、撮像により得られた撮像画像に基づく画像データを、後述する画像コンピューティングサーバ160に送信する。センサシステム190a―センサシステム190zは、それぞれ撮像領域を撮像するためのカメラ103a−103z及びセンサシステムを制御するためのカメラアダプタ101a−カメラアダプタ101zを有する。以降の説明においては、特別な説明がない場合は、センサシステム190aからセンサシステム190zまでの26セットのシステムを区別せず、単にセンサシステム190と記載する。各センサシステム190が有するカメラ103a−カメラ103z及びカメラアダプタ101a−カメラアダプタ101zについても同様に、特別な説明がない場合は区別せず、単にカメラ103及びカメラアダプタ101と記載する。なお、センサシステムの台数として26セットと記載しているが、あくまでも一例であり、台数をこれに限定するものではない。
Each of the
また、本実施形態における画像処理システム100は、撮像手段として複数のカメラ130を有する構成であるが、これに限定されない。例えば、一つの筐体に複数の撮像部が含まれる装置を有する構成であってもよい。また、各センサシステム190が有する各カメラ130は同一符号(130)を用いて説明するが、各カメラ130同士の性能、設定及び機種等が異なっていてもよい。
Further, the
本実施形態における複数のセンサシステム190は、デイジーチェーン接続される。この接続形態により、撮像画像の4Kや8Kなどへの高解像度化及び高フレームレート化に伴う画像データの大容量化において、接続ケーブル数の削減や配線作業の省力化ができる効果があることをここに明記しておく。図1に示す各センサシステム190は、それぞれネットワーク110b−110zにより接続される。また、デイジーチェーン接続の終端となるセンサシステム190aが有するカメラアダプタ101aは、ネットワーク110aによりハブ140と接続される。以降の説明において、特別な説明がない場合は、ネットワーク110a−110zを区別せず、単にネットワーク110と記載する。ただし、センサシステム190の接続方法はこれに限定されない。例えば、各センサシステム190a−190zがハブ140に接続されて、ハブ140を経由してセンサシステム190間のデータ送受信を行うスター型のネットワーク構成としてもよい。
The plurality of sensor systems 190 in this embodiment are daisy-chained. It is said that this connection form has the effect of reducing the number of connection cables and labor saving in wiring work in increasing the resolution of captured images to 4K or 8K and increasing the capacity of image data due to the increase in frame rate. I will specify it here. Each sensor system 190 shown in FIG. 1 is connected by a
また、図1ではセンサシステム190a−190zの全てがデイジーチェーン接続されている構成を示したがこれに限定するものではない。例えば、複数のセンサシステム190をいくつかのグループに分割して、分割したグループ単位でセンサシステム190同士がデイジーチェーン接続され、各グループの終端となるカメラアダプタ101がハブ140に接続される構成であってもよい。グループごとにデイジーチェーン接続される構成は、以下のような場合に有効である。例えば、複数フロアにより構成されるスタジアムにおいて、フロア毎にセンサシステム190を配備する場合について考える。このとき、フロア毎又はスタジアムの半周毎にセンサシステム190をグループ分けし、グループごとにデイジーチェーン接続をすることにより、全センサシステム190を1つのデイジーチェーンで接続する配線が困難な場所でもシステムの設置が可能となる。
Further, FIG. 1 shows a configuration in which all of the
また、デイジーチェーン接続により後述する画像コンピューティングサーバ160へ画像データの送信を行うカメラアダプタ101が1つであるか2つ以上であるかに応じて、画像コンピューティングサーバ160での画像処理における処理が異なる場合がある。すなわち、センサシステム190が複数のグループに分割されているか否かに応じて、画像コンピューティングサーバ160における処理が異なる場合がある。画像データの送信を行うカメラアダプタ101が1つである場合、1つのカメラアダプタ101が他のセンサシステム190から送信された画像データも共に送信するため、画像コンピューティングサーバ160は全ての画像データを同時に取得することができる。
Further, processing in image processing in the
しかし、画像コンピューティングサーバ160に画像データの送信を行うカメラアダプタ101が複数ある場合は、カメラアダプタ101によって、画像データを送信するタイミングが異なる場合がある。すなわち、複数のセンサシステム190が複数のグループに分割される場合は、画像コンピューティングサーバ160が画像データを取得するタイミングがそろわない可能性がある。そのため、複数のカメラアダプタ101から画像データが送信される場合は、画像コンピューティングサーバ160は、後述する処理の他に、すべての画像データが取得されたか否かを確認する処理が必要となることを明記しておく。
However, when the
また本実施形態におけるセンサシステム190は、カメラ103及びカメラアダプタ101を有するが、この構成に限定するものではない。例えば、マイク等の音声デバイスや、カメラの向きを制御する雲台等を含んでも良い。このように、センサシステム190が他の処理部を有する構成であってもよい。また例えば、センサシステム190は1台のカメラアダプタ101と、複数のカメラ103により構成されてもよいし、1台のカメラ103と複数のカメラアダプタ101により構成されてもよい。即ち、同期撮影システム100内の複数のカメラ103と複数のカメラアダプタ101はN対M(NとMは共に1以上の整数)で対応する。また、カメラ102とカメラアダプタ101とが同一の筐体により構成されてもよい。また、カメラアダプタ101の機能の少なくとも一部を、後述する画像コンピューティングサーバ160が有していてもよい。また、複数のセンサシステム190のそれぞれが異なる構成であってもよい。
Further, the sensor system 190 in the present embodiment includes the
センサシステム190の動作について説明する。ここで、センサシステム190bを例として説明する。センサシステム190bが有するカメラアダプタ101bは、カメラ103bが撮像することにより取得された撮像画像に対し、後述する画像処理を行うことにより、撮像画像に基づく画像データを取得する。また、取得された画像データは、センサシステム190aと接続される通信路であるネットワーク110bを通して、センサシステム190aのカメラアダプタ101aに送信される。センサシステム190aは、センサシステム190bから送信された画像データを、ハブ140に送信する。また、センサシステム190aが有するカメラアダプタ101aは、カメラ103aが撮像することにより取得された撮像画像に対して、カメラアダプタ101bが行う処理と同様の画像処理を行い、取得された画像データをハブ140に送信する。センサシステム190c−190zも、それぞれ上述の処理と同様の処理を実施する。これにより、センサシステム190a―センサシステム190zが取得した画像データは、センサシステム190aからネットワーク110aを用いてハブ140に送信され、その後、後述する画像コンピューティングサーバ160に送信される。
The operation of the sensor system 190 will be described. Here, the
画像コンピューティングサーバ160は、センサシステム190から送信される画像データに対し、以下の処理を行う。まず、画像コンピューティングサーバ160は、画像データの再構成を行う。画像データは、センサシステム190aによりパケットに分割された画像パケットとして送信される。画像コンピューティングサーバ160は、送信された画像パケットを用いて画像データを再構成する。また、画像コンピューティングサーバ160は、再構成した画像データを、画像データの取得元であるカメラの識別子、及びデータ種別等の情報と関連付けて記憶する。また、画像データが動画である場合は、例えば動画フレームごとに画像データをまとめた形で記憶する。
The
また、画像コンピューティングサーバ160は、制御端末180から取得される情報と、画像データとに基づいて、仮想視点画像の生成を行う。制御端末180は、画像処理システム100を制御するための入力や、仮想視点を指定するための入力を受け付ける。制御端末180と画像処理システム100が有する各処理部とはネットワークにより接続される。ネットワークとしては、例えば、Ethernet(登録商標)であるIEEE標準準拠のGbE(ギガビットイーサーネット)や10GbE等が使用される。しかし、それ以外にもインターコネクトInfiniband、及び産業用イーサーネット等を組合せて構成されてもよい。また、これらに限定されず、他の種別のネットワークであってもよい。例えば、IEEE802.11標準準拠のWireless LANで構築されても良い。
Further, the
画像コンピューティングサーバ160は、制御端末180が受け付けた、仮想視点を指定するための入力を取得し、取得した入力に基づいて指定される仮想視点に対応する仮想視点画像を生成する。このとき、画像コンピューティングサーバ160は、指定された仮想視点に応じて、必要な画像データを読み出し、読み出した画像データを用いてレンダリング処理を行うことにより仮想視点画像を生成する。生成された仮想視点画像は、画像コンピューティングサーバ160からユーザ端末170に送信さる。これにより、ユーザ端末170を操作するユーザは生成された仮想視点画像を閲覧することが出来る。なお、画像コンピューティングサーバ160の機能の少なくとも一部を、制御端末180、センサシステム190、又はユーザ端末170等が有する構成でもよい。制御端末180は、上述した入力の受付の他に、画像処理システム100の操作状態の監視、及び、画像処理システム100が行う処理の処理パラメータの制御等の処理を実行する。
The
タイムサーバ102a及びタイムサーバ102bは、センサシステム190を同期させるための時刻情報を送信する機能を有する。各センサシステム190は、タイムサーバ102a又はタイムサーバ102bと時刻同期を行う。詳細は後述する。なお、本実施形態においては、タイムサーバ102bはセンサシステム190zとネットワーク110aaにより接続されているが、接続方法はこれに限定されない。例えば、タイムサーバ102aと接続状態を対称にするために、センサシステム190zから新たにハブを経由してタイムサーバ102bが接続される構成であってもよい。タイムサーバ102a又はタイムサーバ102bから時刻情報を取得した各カメラアダプタ101は、時刻情報に基づき、各カメラ103をGenlock信号を使用して同期させる。これにより、複数のカメラ103の撮像タイミングが同期される。画像処理システム100は同じタイミングで撮像された複数の撮像画像に基づいて仮想視点画像を生成する。なお、同一のネットワークにおいて複数のタイムサーバを使用してシステム内の時刻同期を実現するに当たり、タイムサーバ同士の能力が一致している状態が望ましい。したがって、本実施形態におけるタイムサーバ102a及びタイムサーバ102bは、互いに同一の機能、設定及び処理能力を有するものとする。以下の説明において、特別な説明がない限り、タイムサーバ102aとタイムサーバ102bとを区別せず、単にタイムサーバ102と記載する。
The
次に、カメラアダプタ101の機能構成について、図2を用いて説明する。カメラアダプタ101は、内部時計201、ネットワーク部202、時計同期部203、時計制御部204、カメラ制御部205、及び、画像処理部206を有する。以下、各処理部について説明する。
Next, the functional configuration of the
内部時計201は、例えば、現在時間を保持するハードウェアクロックである。内部時計201は、カメラアダプタ101内の時刻基準となるリファレンス信号を周期的に出力する。ネットワーク部202は、ネットワーク110により、隣接するカメラアダプタ190、タイムサーバ102a、タイムサーバ102b、及びハブ140の少なくともいずれかと接続されている。ネットワーク部202は、接続されている装置とデータ通信を行う。通信されるデータとしては、画像データ及び同期信号等があり、これらのデータはパケットに分割された状態で送受信される。本実施形態におけるネットワーク部202は、デイジーチェーン接続を構成するために、通信ポートを少なくとも2つ備えているものとする。ネットワーク部202は、例えばNIC(Network Interface Card)であるが、これに限らず、他の装置との間でデータ通信が可能な他の構成が用いられてもよい。ネットワーク部202は、例えばIEEE1588規格に準拠し、タイムサーバ102との間でデータ通信を行った時のタイムスタンプを保存する機能を有する。また、ネットワーク部202は、マルチキャスト機能、及び、送信先が自分ではないパケットを受信したときに、パケットを受信した通信ポートとは異なる通信ポートへパケットを転送する機能等を有する。なお、ネットワーク部202は、パケット受信時及びパケット送信時にもタイムスタンプの保存を行うことが可能である。また、内部時計201の機能がネットワーク部202に内包されている構成であってもよい。
The
時刻同期部203は、タイムサーバ102と時刻同期を行うための同期信号を生成する。時刻同期部203は、例えばIEEE1588−2008規格に準拠した方法により、同期信号として、時刻同期するための通信パケット(以下、時刻同期パケットという)を生成する。生成された時刻同期パケットはネットワーク部202を介してネットワーク110に送出され、タイムサーバ102へ送信される。時刻同期部203は、タイムサーバ102との通信により、内部時計201をタイムサーバ102における時刻と同期させる。また、時刻同期部203は、タイムサーバ102との間でデータ通信を行うことにより、タイムサーバ102とカメラアダプタ101との間の送信遅延を算出する。これにより、カメラアダプタ101における時刻とタイムサーバ102における時刻との誤差(オフセット)を算出することができる。また、時刻同期部203は、時刻同期に使用される時刻同期パケットが自装置内で滞留する時間を計測し、計測により取得された時間を、送信する時刻同期パケットの指定領域に加算する機能を有する。つまり、カメラアダプタ101はIEEE1588−2008規格におけるTransparent Clock(以下、TCという)として動作するものとする。
The
なお、本システムのハブ140もTCにより動作するものとする。その結果、時刻の誤差のうち、時刻同期パケットがネットワークケーブルを通過する時間による誤差と、時刻同期パケットがカメラアダプタ101内を通過する時間による誤差とを分離することが可能となる。この結果、より高精度に時刻同期することが可能となる。なお、時刻同期部203は、算出した誤差を保持し、この誤差の情報を、後述の時刻制御部204に供給しうる。また、時刻同期部203はBest Master Clock Algorithm(以下、BMCAとする)を実行し、自身が同期すべきタイムサーバ102を決定する。本実施形態におけるBMCAの具体的な処理内容は、IEEE1588−2008規格と同様である。BMCAの処理において使用される情報の説明については後述する。また、時刻同期部203はタイマー機能を有し、このタイマー機能はタイムサーバ102との時刻同期処理において使用される。なお、以降の説明において、カメラアダプタ101が時刻同期を行う際の基となる同期信号を生成するタイムサーバ102を、同期マスターという。
The
時刻制御部204は、タイムサーバ102から送信される時刻情報と、タイムサーバ102とカメラアダプタ101との間の時刻の誤差に基づいて、内部時計201を調整する。時刻制御部204は、例えば、タイムサーバ102が保持する時間との誤差に関して閾値を定義し、誤差の値が閾値よりも大きい場合は内部時計201の時刻を大きく変更し、誤差が閾値以下の場合は内部時計201の時間を徐々に補正するように制御する。
The
画像処理部206は、後述するカメラ制御部205が行う制御に基づいてカメラ103が撮像することにより取得された撮像画像に基づいて、仮想視点画像の生成に使用される画像データを取得するための画像処理を行う。画像処理部206は、直接接続されたカメラ103から取得される撮像画像だけでなく、他のカメラアダプタ101から送信された画像データに対しても画像処理を行うことが可能である。
The
画像処理部206が行う画像データを取得するための画像処理の例について説明する。画像処理部206は、撮像画像に基づいて、被写体領域を分離する処理を行う。この処理は、撮像画像における被写体(例えば、選手やボール等)に対応する領域を抽出する処理である。画像処理部206は、複数のカメラ103により連続する時間において撮像された複数の撮像画像同士を比較することにより、画素値に変化のない領域を検出する。画像処理部206は、検出した領域を背景領域であると判定し、背景領域に基づいて背景画像を生成する。また、画像処理部206は、生成した背景画像と撮像画像とを比較し、画像値の差が所定の閾値以上である領域を被写体領域であると判定し、被写体領域を抽出し、被写体領域を示す被写体画像を生成する。なお、被写体領域を抽出する方法は上記に限定されない。画像処理部206は、例えば、連続する時間において撮像された複数の撮像画像同士を比較し、画素値の変化量が所定の閾値以上である領域を被写体領域として抽出してもよい。
An example of image processing for acquiring image data performed by the
画像処理部206は、抽出した被写体領域に基づいて、撮像画像における被写体の領域を示すシルエット画像を生成する。画像処理部206は、撮像画像において被写体領域に対応する画素の値を「1」、及び被写体領域以外の領域に対応する画素の値を「0」とすることにより、シルエット画像を生成する。なお、画素値は一例であり、他の値が使用されてもよい。また、画像処理部206は、抽出した被写体領域に基づいて、被写体の形状を表す形状データに色付けをするためのテクスチャデータを生成する。テクスチャデータは、撮像画像における被写体領域に対応する画素の値に基づいて生成される。
The
画像処理部206は、被写体の形状を表す形状データを生成する。ここでは、形状データとして、被写体の3次元形状を表す3次元モデルデータが生成されるものとする。本実施形態における3次元モデルデータは、シルエット画像に基づいて、視体積交差法を用いて生成される。以上述べたように、画像処理部206は、画像データとして、被写体画像、シルエット画像、テクスチャデータ、及び3次元形状データを生成する。なお、必ずしも画像処理部206が上記の画像処理をすべて行う構成でなくてもよい。例えば、画像処理部206は、画像データとして、被写体画像、シルエット画像、テクスチャデータ、及び3次元形状データのうち少なくともいずれかを生成する画像処理を行う構成であってもよい。また、画像処理部206は、上記の画像処理を行わず、画像データとして撮像画像を扱う構成であってもよい。画像処理部206で行われなかった画像処理が画像コンピューティングサーバ160で行われる構成でもよい。
The
また、画像処理部206は、キャリブレーションに必要な画像データを、後述するカメラ制御部205を介してカメラ103から取得し、画像コンピューティングサーバ160に送信する機能を有する。画像コンピューティングサーバ160は、取得した画像データに基づいて、キャリブレーションに係る演算処理を行う。本実施形態におけるキャリブレーションは、複数のカメラ103それぞれに関するパラメータを対応付けて整合をとる処理である。キャリブレーションとしては、例えば、設置された各カメラ103が保持する世界座標系がカメラ103同士で一致するように調整する処理、及び、カメラ103同士の色のばらつきを抑えるための色補正処理などが行われる。
Further, the
なお、キャリブレーションの具体的な処理内容はこれに限定されない。また本実施形態ではキャリブレーションに係わる演算処理を画像コンピューティングサーバ160で行っているが、演算処理を行う処理部及び装置は画像コンピューティングサーバ160に限定されない。例えば、制御端末180及び各カメラアダプタ101等の他の処理部及び装置においてでキャリブレーションが行われてもよい。また、キャリブレーション処理の一例として、画像データに基づき、予め設定されたパラメータを使用して撮像中にキャリブレーション処理を行う動的キャリブレーションも行われる。
The specific processing content of the calibration is not limited to this. Further, in the present embodiment, the arithmetic processing related to the calibration is performed by the
カメラ制御部205は、カメラ103と接続し、カメラ103の制御、撮像画像の取得、同期信号の提供、及び時刻設定などの処理を行う機能を有している。カメラ103の制御は、例えば撮像パラメータ(画素数、色深度、フレームレート、及びホワイトバランス等)の設定及び参照、カメラ103の状態(撮像中、停止中、同期中、及びエラー状態等)の取得、撮像の開始、停止、及びピント調整の制御等である。同期信号の提供は、時刻同期部203がタイムサーバ102と同期した時刻を利用し、撮像タイミング(制御クロック)をカメラ103に提供することにより行われる。時刻設定は、時刻同期部203がタイムサーバ102と同期した時刻を、例えばSMPTE12Mのフォーマットに準拠したタイムコードを提供することにより行われる。これにより、カメラ103が撮像することにより取得された撮像画像に基づく画像データに、提供したタイムコードが付与される。なおタイムコードのフォーマットはSMPTE12Mに限定されず、他のフォーマットであってもよい。なお、カメラ制御部205は、カメラ103に対するタイムコードの提供はせず、カメラ103から取得した画像データに対してタイムコードを付与してもよい。なお、カメラアダプタ101が一以上のカメラ103と接続される構成の場合、カメラ制御部205は、一以上のカメラ103のそれぞれに対して同期信号の提供等の処理を行う。
The
カメラ制御部205は、カメラ103と接続し、カメラ103の制御、撮像画像の取得、同期信号の提供、及び時刻設定などの処理を行う機能を有している。カメラ103の制御は、例えば撮像パラメータ(画素数、色深度、フレームレート、及びホワイトバランス等)の設定及び参照、カメラ103の状態(撮像中、停止中、同期中、及びエラー状態等)の取得、撮像の開始、停止、及びピント調整の制御等である。なお、本実施形態におけるカメラ制御部205は、カメラ103を介してピント調整を行うが、例えば取り外し可能なレンズがカメラ103に装着されている場合は、カメラアダプタ101がレンズに接続され、直接レンズの位置を調整する構成であってもよい。同期信号の提供は、時刻同期部203がタイムサーバ102と同期した時刻を利用し、撮像タイミング(制御クロック)をカメラ103に提供することにより行われる。時刻設定は、時刻同期制御部233がタイムサーバ1102と同期した時刻を、例えばSMPTE12Mのフォーマットに準拠したタイムコードを提供することにより行われる。これにより、カメラ103が撮像することにより取得された撮像画像に、提供したタイムコードが付与される。なおタイムコードのフォーマットはSMPTE12Mに限定されず、他のフォーマットであってもよい。なお、カメラ制御部205は、カメラ103に対するタイムコードの提供はせず、カメラ103から取得した撮像画像に基づく画像データに対してタイムコードを付与してもよい。
The
次に、タイムサーバ102の機能ブロックについて、図3を用いて説明する。図3は、タイムサーバ102aの機能構成を表す図であるが、タイムサーバ102bも同様の機能構成を有する。タイムサーバ102aは、内部時計301、ネットワーク部302、時刻同期部303、時刻制御部304、GPS(Grobal Positioning System)制御部205、及び、アンテナ306を有する。以下、各処理部について説明する。
Next, the functional block of the
内部時計301は、例えば、現在時間を保持するハードウェアクロックである。内部時計301が保持する建材時間は、後述するGPS処理部305から取得される時刻情報に基づく時刻である。ネットワーク部302は、ネットワーク105を介して、カメラアダプタ101と時刻同期するための同期信号(時刻同期パケット)の送受信を行う。なお、タイムサーバ102aは、ネットワーク150によりハブと接続されるが、タイムサーバ102bは、ネットワーク110aaを介して直接カメラアダプタ101と同期信号の送受信を行う。また、ネットワーク部302は、例えばIEEE1588規格に準拠し、カメラアダプタ101との間でデータを送受信した時のタイムスタンプを保存する機能を有する。また、内部時計301の機能が、ネットワーク部302に含まれていてもよい。
The
時刻同期部303は、例えばIEEE1588−2008規格に準拠した方法により、時刻同期パケットを生成する。生成された時刻同期パケットはネットワーク部302を介してネットワークに送出され、カメラアダプタ101へ送信される。また、時刻同期部303はBMCAを実行し、自身が同期マスターとして動作するか否かを判断する。詳細は後述する。また、時刻同期部303はタイマー機能も保持しており、カメラアダプタ101との時刻同期処理において使用される。
The
時刻制御部304は、後述するGPS処理部305により取得された時刻情報に基づいて、内部時計301の時刻を調整する。本実施形態においては、タイムサーバ102a及びタイムサーバ102bは、GPS衛星310から送信される電波を受信することにより、内部時計301の時刻をGPS衛星310と同期させる。これにより、タイムサーバ102aとタイムサーバ102bとが同一の機能、設定及び処理能力を有する場合、各タイムサーバ102における内部時計301が保持する時刻はほぼ一致する。したがって、1つのネットワーク内において2つの同期マスターが動作しても、システム内の時刻同期ずれ問題が発生しにくい。
The
GPS処理部305は、アンテナ306を用いて、GPS衛星310から送信される時刻情報を受信する。なお、本実施形態におけるタイムサーバ102は、GPS衛星310から送信される電波を受信することにより時刻同期を行うものとしたが、時刻同期の方法はこれに限定されない。ただし、システム全体の同期精度を鑑みると、カメラアダプタ101とタイムサーバ102間の同期精度よりも優れた精度を実現できる方法が望ましい。
The
次に、撮像処理のシーケンスについて、図4を用いて説明する。以下の処理は、カメラアダプタ101及びタイムサーバ102のそれぞれが有するCPUが、ROM又は補助記憶装置に記憶されたプログラムを読み出して実行することにより行われる。なお、以下の説明においては、処理ステップのことを単にSと表記する。タイムサーバ102がGPS衛星310から送信される電波を受信すると、処理が開始される。
Next, the sequence of the imaging process will be described with reference to FIG. The following processing is performed by the CPUs of the
タイムサーバ102は、GPS衛星310から送信される電波を受信する。タイムサーバ102における時刻制御部304は、受信した電波に基づいて内部時計301の時刻を調整することにより、GPS衛星310との時刻同期を行う(S401)。カメラアダプタ101は、タイムサーバ102との間でPTPv2(Precision Time Protocol Version 2)を使用した通信を行い、カメラアダプタ101における内部時計201の時刻を補正する。これにより、タイムサーバ102との時刻同期がされる(S402)。具体的には、カメラアダプタ101における時刻同期部203が、タイムサーバ101から送信される時刻同期パケットに基づいて内部時計201の時刻を補正することにより、タイムサーバ102との時刻同期がされる。
The
カメラアダプタ101は、カメラ103に対して、Genlock信号や3値同期信号等の同期撮像信号及びタイムコードを提供する(S403)。提供されたタイムコートは、後段の処理においてカメラ103が撮像することにより取得された撮像画像に基づく画像データに付与される。なお提供される情報はタイムコードに限定されるものではなく、各画像データを識別できる識別子であれば他の情報でもよい。
The
カメラアダプタ101は、カメラ103に対して撮像開始指示を行う(S404)。複数のカメラアダプタ101はタイムサーバ102との時刻同期がされているため、撮像開始のタイミングが同期される。カメラ103は、撮像開始指示を受けると、Genlock信号に同期して撮像を行う(S405)。カメラ103は、撮像により取得された撮像画像に対し、S402においてカメラアダプタ101から提供されたタイムコードを付与し、撮像画像をカメラアダプタ101へ送信する(S406)。
The
カメラ103が撮像を停止するまで、Genlock信号に同期した撮像(S405)が行われる。このとき、カメラアダプタ101は、撮像途中にタイムサーバ102との間でのPTP時刻補正処理を行い、Genlock信号の発生タイミングを補正する(S407)。必要な補正量が大きくなる場合は、予め設定された補正量が適用されてもよい。以上の処理を行うことにより、画像処理システム100における複数のカメラ103が行う撮像を同期させることができる。なお、ここでは撮像処理について説明したが、センサシステム190がマイクを有する場合、カメラアダプタ101は同期撮像信号及びタイムコードをマイクに対して提供し、マイクによる集音を制御することにより、同期集音を実現することが可能である。
Imaging (S405) synchronized with the Genlock signal is performed until the
次に、タイムサーバ102が実行する処理、及び、カメラアダプタ101が実行する処理について、図5、6及び7を用いて説明する。なお、後述する処理において、タイムサーバ102とカメラアダプタ101とが自身の状態を相手の装置に通知するための通知パケットに含まれる情報について先に説明する。通知パケットには、以下の情報が含まれる。
(1)GM Identity グランドマスター(GM)の識別コード
(2)GM Priority1 GMの優先度1
(3)GM Clock Class GMのトレーサビリティ
(4)GM Clock Accuracy GMの時刻精度
(5)GM OffsetScaled Log Variance GMの位相揺らぎ
(6)GM Priority2 GMの優先度2
(7)StepsRemoved GMからの接続段数
(8)PortIdentity ポート識別番号
(9)PortNumber ポート番号
これらの情報は、タイムサーバ102及びカメラアダプタ101がBMCAを実行するために使用される情報である。以下、各情報について説明する。
Next, the process executed by the
(1) GM Identity Grandmaster (GM) identification code (2) GM
(3) Traceability of GM Lock Class GM (4) Time accuracy of GM Lock Accuracy GM (5) Phase fluctuation of GM OffsetScaled Log Variance GM (6) GM Priority 2 GM priority 2
(7) Number of connection stages from StepsRemoved GM (8) PortIdentity port identification number (9) PortNumber port number These information are information used by the
(1)は8バイトで構成される情報であり、時刻同期パケットの送信元の装置のMACアドレスの上位3バイトと下位3バイトを8バイトのうちの最初の3バイト、及び最後の3バイトにマッピングされる。中央の2バイトは0xFFと0xFEで設定される。(2)は1バイトで構成される情報であり、複数の装置のうちいずれの装置が同期マスターとして選択されるかの優先度を示す優先度情報である。値が少ないほど優先度が高いことを意味する。 (1) is information composed of 8 bytes, and the upper 3 bytes and the lower 3 bytes of the MAC address of the device that is the source of the time synchronization packet are changed to the first 3 bytes and the last 3 bytes of the 8 bytes. It is mapped. The central 2 bytes are set by 0xFF and 0xFE. (2) is information composed of one byte, and is priority information indicating which device among a plurality of devices is selected as the synchronization master. The smaller the value, the higher the priority.
(3)は1バイトで構成される情報であり、例えば、6はGPSのような第一義的な基本時間ソースに同期していることを意味しており、7は当初は第一義的なソースと同期されていたが、それ以降にソースと同期する能力が失われていることを意味する。(4)は1バイトで構成される情報であり、装置の時刻の精度を示す。例えば、(4)の値が0x20hである場合、時刻誤差が25ナノ秒否であることが示される。 (3) is information composed of 1 byte, for example, 6 means that it is synchronized with a primary basic time source such as GPS, and 7 is initially primary. It means that it was synchronized with a new source, but has lost the ability to synchronize with the source since then. (4) is information composed of 1 byte, and indicates the accuracy of the time of the device. For example, when the value of (4) is 0x20h, it is shown that the time error is 25 nanoseconds.
(5)は2バイトで構成される情報であり、PTP分散の推定値でクロックのアラン分散から導き出される。(6)は1バイトで構成される情報であり、複数の装置間で(2)〜(5)の値が等しい場合に、いずれの装置が同期マスターとして選択されるかの優先度を示す優先度情報である。(6)の値は、(1)と同様に、値が低いほど優先度が高いことを意味する。 (5) is information composed of 2 bytes, which is an estimated value of PTP variance and is derived from the allan variance of the clock. (6) is information composed of one byte, and when the values of (2) to (5) are equal among a plurality of devices, priority is given to indicate which device is selected as the synchronization master. It is degree information. Similar to (1), the value of (6) means that the lower the value, the higher the priority.
(7)は2バイトで構成される情報であり、通知パケットが渡される中継装置の数を示す値が含まれる。TCで動作するカメラアダプタ101及びハブ140では、(7)の値は変化しない。(8)は10バイトで構成される情報であり、(1)の情報と、時刻同期パケットの送信者又は受信者が使用したポート番号とから構成される。(9)は、2バイトで構成される情報であり、時刻同期パケットの送信者又は受信者が使用したポート番号を示す値が含まれる。
(7) is information composed of 2 bytes, and includes a value indicating the number of relay devices to which the notification packet is passed. The value of (7) does not change in the
以上説明した(1)〜(9)の情報は、IEEE1588−2008に準拠するものであり、BMCAが実行される際に使用される。BMCAにおいては、(1)〜(9)に含まれる値に基づいて、同期マスターとしてふさわしいか否かの評価が行われる。すなわち、複数の通知パケットが取得された場合、カメラアダプタ101は、BMCAを実行し、各通知パケットに含まれる(1)〜(9)の値を比較する。これにより、より評価の高い情報を含む通知パケットに対応する装置が、同期マスターとして選択される。BMCAの処理においては、まず(1)の値を比較し、(1)の値が異なる場合、(2)、(3)、(4)、(5)、(6)の順番で値の比較が行われる。このとき、例えば(2)の値が異なる場合は、より評価の高い値を含む通知パケットに対応する装置が同期マスターとして選択され、(2)の値が等しい場合は(3)の比較を行う、というように処理が進む。(3)、(4)、(5)、(6)についても同様に、値が等しい場合はその時点で同期マスターが選択され、値が異なる場合に次の値の比較が行われる。なお、(6)の値も等しい場合は、(1)の値が小さい方の通知パケットに対応する装置が同期マスターとして選択される。(1)の値が等しい場合は、(7)、(8)、(9)の値の比較が行われる。
The information in (1) to (9) described above conforms to IEEE1588-2008 and is used when BMCA is executed. In BMCA, evaluation is performed based on the values included in (1) to (9) as to whether or not it is suitable as a synchronization master. That is, when a plurality of notification packets are acquired, the
まず、図5及び6を用いて、タイムサーバ102が行う処理について説明する。以下の処理は、タイムサーバ102が有するCPUがROM又は補助記憶装置に記憶されたプログラムを読み出して実行することにより行われる。図5及び6に示す処理は、タイムサーバ102の電源が投入され、ユーザ操作等に基づいて処理の開始が指示されることにより、開始される。また、本フローが終了し、再度処理を実行するための指示がされた場合も開始される。
First, the process performed by the
S501において、タイムサーバ102は、図4に示すS401において行われる、GPS衛星310との時刻同期を行う。GPS衛星310との時刻同期が完了すると、タイムサーバ102はリスニング状態となる。S502において、タイムサーバ102は、ネットワーク150あるいはネットワーク110aaを介して、通知パケットを送信する。通知パケットにはタイムサーバ102自身の状態に関する情報(1)〜(9)が含まれる。通知パケットとしては、例えば、IEEE1588−2008規格のAnnounceパケット等が使用される。以降の説明において、断りが無い場合、通知パケットのフォーマットはIEEE1588−2008規格のAnnounceパケットであるものとする。
In S501, the
S503において、タイムサーバ102は、通知用タイマーを初期化し、通知用タイマーを開始する。S504において、タイムサーバ102は、S502において自身が送信した通知パケットに含まれる情報よりも評価の高い情報を含む通知パケットを受信したか否かを判定する。通知パケットに含まれる情報の評価にはBMCAが使用されるものとする。より評価の高い情報を含む通知パケットを受信した場合、S517へ処理が進み、受信しなかった場合はS505へ処理が進む。
In S503, the
S505において、タイムサーバ102は、S503で開始した通知用タイマーが発火したか否かを判定する。通知用タイマーが発火した場合はS506へ処理が進み、発火していない場合はS509へ処理が進む。S506において、タイムサーバ102は、自身がリスニング状態であるか否かを判定する。タイムサーバ102がリスニング状態である場合、S507へ処理進み、リスニング状態でない場合はS502へ進む。
In S505, the
S507において、タイムサーバ102は、自身のステータスをグランドマスタ状態へ移行させる。グランドマスタ状態とは、時刻同期における同期マスターとして動作する状態であることを示す。タイムサーバ102がグランドマスタ状態に移行すると、S508へ処理が進む。S508において、タイムサーバ102は、Sync用タイマーを初期化し、Sync用タイマーを開始する。
In S507, the
S509において、タイムサーバ102は、Sync用タイマーが発火したか否かを判定する。Sync用タイマーが発火した場合はS510へ処理が進み、発火していない場合はS513へ処理が進む。S510において、タイムサーバ102は、ネットワーク150あるいはネットワーク110aaを介してSyncパケットを送信し、送信した時刻を保持する。送信した時刻の取得には、ネットワーク部302のタイムスタンプ機能が利用される。Syncパケットとしては、例えば、IEEE1588−2008規格のSyncパケット等が使用される。なお、Syncパケットの送信は、マルチキャスト送信であるものとするが、ユニキャスト送信であっても良い。一般的に、ユニキャスト送信の場合、タイムサーバ102の処理負荷が増加する。以降の説明において、断りが無い場合、SyncパケットはIEEE1588−2008規格のSyncパケットであるものとする。
In S509, the
S511において、タイムサーバ102は、S508と同様にSync用タイマーを初期化し、Sync用タイマーを開始する。S512において、タイムサーバ102は、ネットワーク150あるいはネットワーク110aaを介して、S510で保持した送信時刻が付与されたFollow_Upパケットを送信する。なお、Follow_Upパケットはマルチキャスト送信されるものとするが、ユニキャスト送信であってもかまわない。Follow_Upパケットとしては、例えばIEEE1588−2008規格のFollow_Upパケット等が使用される。以降の説明においては、断りが無い場合、Follow_UpパケットはIEEE1588−2008規格のFollow_Upパケットであるものとする。
In S511, the
S513において、タイムサーバ102は、自身が送信する時刻同期パケットに基づいて時刻同期を行うカメラアダプタ101から、DelayReqパケットを受信したか否かを判定する。タイムサーバ102がDelayReqパケット受信した場合、S514へ処理が進み、受信しなかった場合はS516へ処理が進む。なお、DelayReqパケットとしては、例えば、IEEE1588−2008規格のDelay Requestパケット等が使用される。以降の説明においては、断りが無い場合、DelayReqパケットはIEEE1588−2008規格のDelay Requestパケットであるものとする。また、以降の説明において、同期マスターが生成する時刻同期パケットに基づいて時刻同期を行う装置(本実施形態におけるカメラアダプタ102)を、同期スレーブともいう。
In S513, the
S514において、タイムサーバ102は、S513で受信したDelayReqパケットの受信時刻を保持する。受信時刻の取得には、ネットワーク部302のタイムスタンプ機能が利用される。S515において、タイムサーバ102は、S514で保持した受信時刻が付与されたDelayRespパケットを送信する。送信先は、DelayReqパケットの送信元の同期スレーブである。なお、DelayRespパケットとしては、例えば、IEEE1588−2008規格のDelay Responceパケット等が使用される。以降の説明において、断りが無い場合、DelayRespパケットはIEEE1588−2008規格のDelay Responceパケットであるものとする。
In S514, the
S516において、タイムサーバ102は、ユーザ操作等により処理の終了が指示されたか否かを判定する。処理の終了が指示された場合、本処理は終了し、そうでない場合は、S504へ処理が進む。
In S516, the
図6に示す処理は、図5におけるS504から分岐する処理を示す。S517において、タイムサーバ102は、自身のステータスをスレーブ状態へ移行させる。スレーブ状態とは、自身を同期スレーブとして動作させる状態を示し、スレーブ状態のタイムサーバ102は同期マスターとの時刻同期を行う。S518において、タイムサーバ102は、Sync用タイマー及び通知用タイマーを停止させる。S519において、タイムサーバ102は、一定時間内に、自身が送信する通知パケットに含まれる情報よりも評価の高い通知パケットが受信されたか否かを判定する。評価の高い通知パケットが一定時間受信されない場合、S507へ処理が進み、一定時間内に受信された場合はS520へ処理が進む。一定時間の測定の際、タイムサーバ102は、S518において停止されたSync用タイマー及び通知用タイマーのいずれかを動作させて時間の測定を行う構成であってもよいし、時間測定用の他のタイマーを使用する構成であってもよい。また、通知パケットに含まれる情報の評価は、BMCAを実行することにより行われる。
The process shown in FIG. 6 shows a process of branching from S504 in FIG. In S517, the
S520において、タイムサーバ102は、ユーザ操作等により処理の終了が指示されたか否かを判定する。処理の終了が指示された場合、本処理は終了し、そうでない場合は、S519へ処理が進む。
In S520, the
以上説明したように、タイムサーバ101は、同期マスターとして一定間隔でSyncパケット等の時刻同期パケットの送信を行うことにより、同期スレーブとなるカメラアダプタ101との時刻同期を実現する。
As described above, the
次に、カメラアダプタ101が実行する処理について、図7を用いて説明する。図7の処理は、カメラアダプタ101が同期マスターを設定するための処理を説明するためのフローチャートである。以下の処理は、カメラアダプタ101が有するCPU1401がROM1402又は補助記憶装置1404に記憶されたプログラムを読み出して実行することにより行われる。図7の処理は、カメラアダプタ101の電源が投入され、ユーザ操作等に基づいて処理の開始が指示されることにより開始される。また、本フローが終了し、再度処理を実行するための指示がされた場合も開始される。
Next, the process executed by the
S701において、カメラアダプタ101は、システムの時刻同期を実現するための初期化処理を行う。ここで行われる初期化処理は、例えばネットワーク部202のレジスタ設定等を含む。本処理を終了した時点では、自身が時刻同期する同期マスターは設定されていない。S702において、カメラアダプタ101は、通知パケットを受信したか否かを判定する。カメラアダプタ101が通知パケットを受信した場合、S703へ処理が進み、通知パケットを受信しなかった場合は、S710へ処理が進む。
In S701, the
S703において、カメラアダプタ101は、同期マスターが設定されているか否かを判定する。同期マスターが設定されている場合、S705へ処理が進み、設定されていない場合、S704へ処理が進む。S704において、カメラアダプタ101は、S702で受信した通知パケットの送信元のタイムサーバ102を同期マスターとして設定する。例えば、同期マスターが設定されていない段階で、タイムサーバ102aから送信された通知パケットをカメラアダプタ101が受信した場合、当該カメラアダプタ101の同期マスターとして、タイムサーバ102aが設定される。すなわち、カメラアダプタ101は、同期マスターが設定されていない段階で、タイムサーバ102a及びタイムサーバ102bのいずれか一方から通知パケットを受信すると、通知パケットの送信元を同期マスターとして設定する。
In S703, the
S705において、カメラアダプタ101は、S702で受信した通知パケットの送信元のタイムサーバ102が、設定されている同期マスターであるか否かを判定する。送信元のタイムサーバ102が同期マスターである場合、S707へ処理が進み、同期マスターでない場合、S706へ処理が進む。S706では、BMCAを実行することにより、受信した通知パケットに含まれる情報と、過去に受信した通知パケットに含まれる情報とを比較し、評価の高い情報を含む通知パケットを特定する。なお、過去に受信した通知パケットに含まれる情報は、後述するS707において保持される情報である。S706における処理が行われることにより、同期マスターが更新される。S707において、カメラアダプタ101は、S702において受信した通知パケットに含まれる情報を変更する。ただし、次にBMCAを実行するために、変更前の情報を保持する。ここで保持される情報は、再度S706の処理が行われる際に使用される。
In S705, the
S707において行われる情報の変更について説明する。通知パケットに含まれる情報のうち(2)〜(6)は、タイムサーバ102の初期化処理(S501)が終了した段階では、タイムサーバ102aとタイムサーバ102bとで同一の値になるように調整されているものとする。ただし、初期化処理(S501)においてGPS衛星310と時刻同期が出来なかったタイムサーバ102が存在する場合は、異なる値となる。(6)はシステムの構成を加味して予め調整された値が設定されることが望ましい。本実施形態における画像処理システム100では、タイムサーバ102aはハブ140を介してカメラアダプタ101と接続する一方で、タイムサーバ102bは直接カメラアダプタ101と接続している。この場合、例えば、ハブ140の同期能力がカメラアダプタ101と同等であるものとし、タイムサーバ102aに対応する通知パケットに含まれる(6)の値は、タイムサーバ102bに対応する通知パケットに含まれる(6)の値よりも1多いものとする。このように、ネットワーク構成が対称でない場合に(6)を事前調整しておくことで、カメラアダプタ101の同期マスターが切り替わる境界を変更することが可能となる。なお、調整量は、本実施形態のように、タイムサーバ102とカメラアダプタ101とを接続する通信経路に含まれる装置(例えば、ハブ140等)の数により決定されてもよいし、通信経路に含まれる装置の同期能力に応じて決定されてもよい。また、タイムサーバ102aとタイムサーバ102bとで(6)の値が同一であってもよい。
The change of information made in S707 will be described. Of the information included in the notification packet, (2) to (6) are adjusted so that the
本実施形態においては、S707で変更されるのは、(6)の値である。カメラアダプタ101は、受信した通知パケットに含まれる(6)の値を1インクリメントする。IEEE1588−2008規格のBMCAにおいては、通知パケットに含まれる(3)〜(5)の値はタイムサーバ102の同期能力の良し悪しを示す。同期能力の異なるタイムサーバ102を同一ネットワーク上で複数台運用してしまうと、システム全体での同期精度が悪くなる恐れがある。したがって、本実施形態においてはタイムサーバ102aとタイムサーバ102bとが同一の機能、設定及び処理能力を有するものとし、BMCAによって(2)〜(5)までが等しいことを確認してから(6)を比較する。(6)の値は、通知パケットがカメラアダプタ101に送信される度に1インクリメントされ、デイジーチェーン接続される次のカメラアダプタ101に送信される。すなわち、(6)は同期信号が送信される通信経路に含まれるカメラアダプタ101の数に相当する値となる。
In the present embodiment, what is changed in S707 is the value of (6). The
BMCAにおいては、(2)〜(5)の値が同一である場合、(6)の値がより小さい方の通知パケットの送信元が同期マスターとして決定される。この構成により、複数のタイムサーバ102を有するネットワークにおいて、各カメラアダプタ101は自身とタイムサーバ102とを接続する通信経路に含まれる装置の数がより少ない方のタイムサーバ102を同期マスターとして決定することが可能となる。本実施形態では、タイムサーバ102aと通信するための通信経路(ここでは、第1の通信経路とする)と、タイムサーバ102bと通信するための通信経路(ここでは、第2の通信経路とする)について、通信経路に含まれる装置の数が比較される。第1の通信経路に含まれる装置の数が、第2の通信経路に含まれる装置の数未満である場合、カメラアダプタ101は、タイムサーバ102aを同期マスターとし、タイムサーバ102aから送信される同期信号に基づいて時刻同期を行う。また、第1の通信経路に含まれる装置の数が、第2の通信経路に含まれる装置の数以上である場合、カメラアダプタ101は、タイムサーバ102bを同期マスターとし、タイムサーバ102bから送信される同期信号に基づいて時刻同期を行う。なお、(6)の値(通信経路に含まれる装置の数)が同一であった場合の処理については、タイムサーバ102aを同期マスターとする構成であってもよい。このような構成により、本実施形態における画像処理システム100は、同期マスターが1台のみのシステムよりも同期精度を向上させることができる。
In BMCA, when the values of (2) to (5) are the same, the source of the notification packet having the smaller value of (6) is determined as the synchronization master. With this configuration, in a network having a plurality of
なお、S707において(2)の値を変更した場合、(2)の値が小さい通知パケットに対応するタイムサーバ102が常に同期マスターとして設定される。これは、BMCAにおいて情報の評価が行われる場合に、(2)が優先して評価される為である。この構成の場合、例えば同期マスターとして設定されたタイムサーバ102aに不具合が生じ、GPS衛星310との時刻同期が行えなくなっても、継続してタイムサーバ102aが同期マスターとして設定されるということが起こりうる。これにより、十区の精度の低いタイムサーバ102aとカメラアダプタ101とが同期され、システム全体の同期精度が低下する可能性がある。このような状況を回避するため、本実施形態においては、S707で変更される情報は(6)の値であるものとする。
When the value of (2) is changed in S707, the
なお、S707において(6)の値が254である場合、カメラアダプタ101インクリメントを実施しない。(6)の値が255である場合、対応する通知パケットの送信元のタイムサーバ102は同期マスターになれないことを示すため、(6)のインクリメントは254までとする。これにより、タイムサーバ102のそれぞれが同期マスターになりうる状態となる。
When the value of (6) is 254 in S707, the
S708において、カメラアダプタ101は、S707で変更した通知パケットを、ネットワーク110を介して、デイジーチェーン接続された下流のカメラアダプタ101に送信する。これにより、下流のカメラアダプタ101は、優先度情報(6)が変更された通知パケットを取得し、取得した通知パケットに基づいて同期マスターを決定売る処理を行うことが可能になる。S709において、カメラアダプタ101は、現在設定されている同期マスターを解除するためのタイマーを初期化し、タイマーを開始する。S710において、カメラアダプタ101は、S709で開始したタイマーが発火したか否かを判定する。タイマーが発火した場合、S711へ処理が進み、タイマーが発火していない場合、S712へ処理が進む。S711において、カメラアダプタ101は、現在設定されているベストマスターを解除する。同期マスターとなったタイムサーバ102は一定時間ごとに通知パケットを送り続ける。このとき、同期マスターから通知パケットが届かなくなった場合は、その同期マスターに不具合が発生している可能性がある。したがって、通知パケットが受信できなくなった場合に新たに同期マスターをシステム内に設定するため、S709〜S711の処理が行われる。
In S708, the
S712において、カメラアダプタ101は、ユーザ操作等による処理終了の指示がされたか否かを判定する。処理の終了が指示された場合、カメラアダプタ101は処理を終了し、処理の終了の指示がない場合は、S702以降の処理を再度実行する。
In S712, the
以上説明したように、カメラアダプタ101は、受信した通知パケットに含まれる情報を変更し、他のカメラアダプタ101に送信する。デイジーチェーン接続においては、カメラアダプタ101は、タイムサーバ101aから送信される通知パケットと、タイムサーバ101bから送信される通知パケットとの両方を取得しうる。この場合に、BMCAを実行し、通知パケットの(6)の値に基づいて、同期マスターを決定する。この構成により、カメラアダプタ101は、複数のタイムサーバ102のうち、同期信号を取得する通信経路に含まれる他の装置(ハブやカメラアダプタ102等)がより少ない方のタイムサーバ102を同期マスターとして設定することが可能となる。したがって、本実施形態における画像処理システム100は、複数の同期マスターを有することにより、システム全体の同期精度を向上させることができる。
As described above, the
次に、カメラアダプタ101が同期信号を受信したときのフローについて、図8を用いて説明する。図8は、カメラアダプタ101がタイムサーバ102と時刻同期を行うための処理を説明するためのフローチャートである。なお、以下の説明においては、カメラアダプタ101は、同期信号として、時刻同期パケットを受信するものとする。また、時刻同期パケットは、Syncパケット/Follow_Upパケット/DelayReqパケット/DelayRespパケットのいずれかをであるものとする。カメラアダプタ101がタイムサーバ102から送信される時刻同期パケットを受信すると、以下の処理が開始される。
Next, the flow when the
S801において、カメラアダプタ101は、時刻同期パケットを受信し、且つ時刻同期パケットを受信した時点で同期マスターが設定されているか否かを判定する。同期マスターが設定されている場合、S802へ処理が進み、設定されていない場合、S805へ処理が進む。S802において、カメラアダプタ101は、受信した時刻同期パケットの送信元のタイムサーバ102が同期マスターか否かを判定する。送信元が同期マスターである場合、S806へ処理が進み、同期マスターでない場合、S803へ処理が進む。
In S801, the
S803において、カメラアダプタ101は、受信した時刻同期パケットがDelayReqパケットであるか否かを判定する。DelayReqパケットである場合、S804へ処理が進み、DelayReqパケットではない場合、S805へ処理が進む。S804において、カメラアダプタ101は、S801で受信した時刻同期パケット(DelayReqパケット)を、ネットワーク110を介して他の装置(ハブ、他のカメラアダプタ101又はタイムサーバ102)に転送する。ただし、時刻同期パケットを転送する際、カメラアダプタ101は時刻同期パケットを受信したときの受信時刻と転送時の送信時刻とをタイムスタンプ機能により取得し、DelayReqパケットが自身の内部で滞留していた時間を算出して保持する。S804の処理が終了すると、本フローは終了する。なお、カメラアダプタ101は、保持した値を使用するため、受信した時刻同期パケットの送信元のタイムサーバ102を示す情報も記憶しておく。S805において、カメラアダプタ101は、S803においてDelayReqパケットではないと判定された時刻同期パケットを、ネットワーク110を介して他の装置(ハブ、他のカメラアダプタ101又はタイムサーバ102)に転送する。S805の処理が終了すると、本フローは終了する。
In S803, the
S806において、カメラアダプタ101は、受信した時刻同期パケットがSyncパケットか否かを判定する。Syncパケットである場合、S807へ処理が進み、Syncパケットではない場合、S809へ処理が進む。S807において、カメラアダプタ101は、受信した時刻同期パケット(Syncパケット)の受信時刻をタイムスタンプ機能により取得する。S808において、カメラアダプタ101は、受信した時刻同期パケット(Syncパケット)を、ネットワーク110を介して他の装置(ハブ、他のカメラアダプタ101又はタイムサーバ102)に転送する。このとき、カメラアダプタ101は、S807において取得した受信時刻と、転送時の送信時刻とから、Syncパケットが自身の内部で滞留していた時間を算出し、Syncパケット内の所定領域に加算して転送する。所定領域は、PTPヘッダのCorrection Field(8バイト)である。S808の処理が終了すると、本フローは終了する。
In S806, the
S809において、カメラアダプタ101は、受信した時刻同期パケットがFollow_Upパケットか否かを判定する。Follow_Upパケットである場合、S810へ処理が進み、Follow_Upパケットではない場合、S812へ処理が進む。S810において、カメラアダプタ101は、受信した時刻同期パケット(Follow_Upパケット)に含まれる、同期マスターのSyncパケット送信時刻を取得する。また、カメラアダプタ101は、受信した時刻同期パケット(Follow_Upパケット)を、ネットワーク110を介して他の装置(ハブ、他のカメラアダプタ101又はタイムサーバ102)に転送する。S811において、カメラアダプタ101は、同期マスターにDelayReqパケットを送信する。なお、カメラアダプタ101は、DelayReqパケットの送信時に送信時刻をタイムスタンプ機能により取得する。S811の処理が終了すると、本フローは終了する。
In S809, the
S812において、カメラアダプタ101は、受信した時刻同期パケットの送信先が自身であるか否かを判定する。送信先が自身である場合、S813へ処理が進み、送信先が自身ではない場合、S815へ処理が進む。S813において、カメラアダプタ101は、受信した時刻同期パケット(DelayRespパケット)に含まれる、同期マスターがDelayReqパケットを受信した時刻を取得する。また、カメラアダプタ101は、受信した時刻同期パケットに含まれる、DelayReqパケットの滞留時間の総和を取得する。S814において、カメラアダプタ101は、取得した情報を基に内部時計201の時刻の調整を行う。調整の処理の詳細は後述する。S814の処理が終了すると、本フローは終了する。
In S812, the
S815において、カメラアダプタ101は、S804で保持したDelayReqの滞留時間を、受信した時刻同期パケットの所定領域に加算し、時刻同期パケットを転送する。なお、所定領域は、S808と同様、PTPヘッダのCorrection Fieldである。ただし、加算される滞留時間は、S804で記憶した送信元とS815の送信先とで一致の取れたものである。S815の処理が終了すると、本フローは終了する。
In S815, the
以上説明した図8の処理と、図5及び図6のタイムサーバ102が実行する処理とが行われることにより、同期マスターであるタイムサーバ102とカメラアダプタ101との間で時刻同期が行われる。
By performing the process of FIG. 8 described above and the process executed by the
次に、タイムサーバ102とカメラアダプタ101との間の時刻同期をするための処理について、図9を用いて説明する。以下の処理においては、タイムサーバ102が送信するSyncパケット及びFollow_Upパケットはマルチキャスト送信されるものとして説明するが、送信方法はマルチキャスト送信に限定されない。また、図9は、説明のため、カメラアダプタ101z及びカメラアダプタ101yの同期マスターとしてタイムサーバ102bが設定されている状況を表し、通知パケットの送受信は図9から省略されているものとする。なお、タイムサーバ101a及びタイムサーバ101aと同期するカメラアダプタ101についても、図9と同様の処理により動作する。
Next, a process for synchronizing the time between the
S1101において、タイムサーバ102bは、ネットワーク110aaを介してカメラアダプタ101zにSyncパケットを送信する。このとき、タイムサーバ102bはSyncパケットの送信時刻T1を保持しておく(S510に相当)。Syncパケットを受信したカメラアダプタ101zは、Syncパケットの受信時刻T2aを取得し(S807に相当)、Syncパケットの転送を行う(S1102)。なお、転送時には送信時刻を取得しておき、カメラアダプタ101z内でのSyncパケットの滞留時間Tr1aを算出し、Syncパケットの指定領域に加算して転送する(S808に相当)。Syncパケットを受信したカメラアダプタ101yは受信時刻T2bを取得し(S807に相当)、同様の方法で滞留時間Tr1bを算出して、所定領域にTr1bを加算して転送を行う。
In S1101, the
S1103において、タイムサーバ102bは、Follow_Upパケットを送信する。なお、Follow_UpパケットにはS1101で保持していた送信時刻T1の情報が含まれている(S512に相当)。S1104において、カメラアダプタ101zは、受信したFollow_Upパケットに含まれる送信時刻T1を取得し、カメラアダプタ101yに転送する(S810に相当)。
In S1103, the
S1105において、カメラアダプタ101zは、DelayReqパケットをタイムサーバ102bへ送信し、DelayReqパケットの送信時刻T3aを取得する(S811に相当)。DelayReqパケットを受信したタイムサーバ102は、DelayReqパケットの受信時刻であるT4aを保持する(S514に相当)。
In S1105, the
S1106において、タイムサーバ102bは、S1105で受信したDelayReqパケットを送信したカメラアダプタ101zに対し、DelayRespパケットを送信する。なお、DelayRespパケットには、S1105で保持したDelayReqパケットの受信時刻T4aの情報が含まれている(S515に相当)。自分宛のDelayRespパケットを受信したカメラアダプタ101zは、DelayRespに含まれるT4bの情報を取得し(S813に相当)、内部時計201の時刻の調整を行う(S814に相当)。なお、カメラアダプタ101zは同期マスターと隣接しているため、SyncパケットやDelayReqパケットの滞留時間はゼロとなっている。
In S1106, the
S1107において、カメラアダプタ101yは、DelayReqパケットをカメラアダプタ101zへ送信し、DelayReqパケットの送信時刻T3bを取得する(S811に相当)。S1108において、カメラアダプタ101zは、カメラアダプタ101yから送信されたDelayReqパケットを、タイムサーバ102bに転送する。ここで、カメラアダプタ101zは、DelayReqパケットの受信時刻、及び、DelayReqパケットの転送時の送信時刻から、DelayReqパケットの滞留時間Tr2を算出し保持する(S804に相当)。DelayReqパケットを受信したタイムサーバ102bは、その受信時刻であるT4bを保持する(S514に相当)。
In S1107, the
S1109において、タイムサーバ102bは、S1106と同様に、S1108で受信したDelayReqパケットを送信したカメラアダプタ101yに対し、DelayRespパケットを送信する。なお、DelayRespパケットには、S1108で保持したDelayReqパケットの受信時刻T4bの情報が含まれている(S515に相当)。S1110において、自分宛ではないDelayRespパケットを受信したカメラアダプタ101zは、DelayRespパケットの送信先を確認する。そして、その送信先と対応するDelayReqパケットの滞留時間(ここでは、Tr2)をDelayReqpパケットの所定領域に加算し、DelayReqpパケットを転送する(S815に相当)。
In S1109, the
自分宛のDelayRespパケットを受信したカメラアダプタ101yは、DelayRespパケットに含まれるT4bの情報とDelayReqパケットの滞留時間(Tr2)とを取得し、内部時計201の時刻の調整を行う(S813、814に相当)。なお、図9の処理はカメラアダプタ101が2台であるものとしたが、カメラアダプタ101が3台以上の場合は、Syncパケット及びDelayReqパケットに含まれる滞留時間は総和として算出される。
The
ここで、図9に示す処理により得られる送受信時刻(T1〜T4b)及び滞留時間(Tr1a〜Tr2)を使用して時刻同期を行う方法について、カメラアダプタ101yを例として説明する。同期マスターであるタイムサーバ102bと同期スレーブであるカメラアダプタ101yとの間の平均送信路遅延は以下のように求められる。
平均送信路遅延=((T4b−T1)−(T3b−T2b))−(Tr1a+Tr2)/2
Here, a method of performing time synchronization using the transmission / reception times (T1 to T4b) and residence times (Tr1a to Tr2) obtained by the processing shown in FIG. 9 will be described using the
Average transmission path delay = ((T4b-T1)-(T3b-T2b))-(Tr1a + Tr2) / 2
また、この平均送信路遅延と、Syncパケットの滞留時間とを用いることで、同期マスターであるタイムサーバ102bとの時刻補正量(オフセット)は以下のように求められる。
補正量=T2−T1−平均送信路遅延−Tr1a
Further, by using this average transmission path delay and the residence time of the Sync packet, the time correction amount (offset) with the
Correction amount = T2-T1-Average transmission path delay-Tr1a
上記の計算式により、カメラアダプタ101yに関する平均送信路遅延及び補正量が算出される。すなわち、平均送信路遅延及び補正量を一般式に変換すると、以下のようになる。
平均送信路遅延=((DelayReq受信時刻−Sync送信時刻)−(Sync受信時刻−DelayReq送信時刻))−(Sync滞留時間の総和+DelayReq滞留時間の総和)/2
補正量=Sync受信時刻−Sync送信時刻−平均送信路遅延−Sync滞留時間の総和もしくはDelayReq滞留時間の総和
The average transmission path delay and correction amount for the
Average transmission path delay = ((DelayReq reception time-Sync transmission time)-(Sync reception time-DelayReq transmission time))-(Total Sync residence time + Total DeliveryReq residence time) / 2
Correction amount = Sync reception time-Sync transmission time-Average transmission path delay-sum of Sync residence time or total of DelayReq residence time
上記の計算式により算出された補正量を用いて内部時計201を補正することにより、カメラアダプタ101は同期マスターとなるタイムサーバ102の時刻と同期することが可能となる。なお、本実施形態においては、時刻同期方法として2step(SyncパケットとFollow_Upパケットとの2種類の時刻同期パケットを使用する方法)が使用される例について説明したが、これに限定されない。すなわち、時刻同期方法として、1step(Follow_Upパケットを送信しない方法)が使用されてもよい。1stepが使用される場合、タイムサーバ101bのSync送信時間(T1)はSyncパケットに付与される。また、カメラアダプタ101が計算するSyncパケットの滞留時間(Tr1a,Tr1b…)は、Syncパケットに加算される。
By correcting the
以上、本実施形態において説明した方法により、カメラアダプタ101は複数のタイムサーバ102のうち、自身が時刻同期を行う同期マスターを決定する。このとき、カメラアダプタ101は、複数のタイムサーバ102のうち、タイムサーバ102と自身とを接続する通信経路に含まれる他の装置(ハブ及び他のカメラアダプタ101等)がより少ないタイムサーバ102を同期マスターとして選択する。すなわち、画像処理システム100は、同期マスターが複数存在しうる構成となる。この構成により、同期マスターが1つのみの構成と比較して、画像処理システム100全体の同期精度が低下することを抑制することができる。
As described above, according to the method described in the present embodiment, the
(第2の実施形態)
第1の実施形態においては、タイムサーバ102a及びタイムサーバ102bのうち、通信経路に含まれる他の装置の数がより少ないタイムサーバ102が同期マスターとして決定されるカメラアダプタ101の構成について説明した。しかしながら、第1の実施形態の方法によれば、タイムサーバ101aと時刻同期を行うカメラアダプタ101にとって、タイムサーバ102bから送信される通知パケットは時刻同期に不要である。したがって、不要な通知パケットの送受信が行われることにより、各ネットワーク110の通信帯域が圧迫される。第2の実施形態においては、第1の実施形態の効果に加え、ネットワーク110の通信帯域の効率化を実現する方法について説明する。
(Second embodiment)
In the first embodiment, the configuration of the
画像処理システム100、及び、画像処理システム100が有する各装置の機能構成及びハードウェア構成は、第1の実施形態と同一であるため説明を省略する。また、以下の説明においては、画像処理システム100が有する各装置が実行する処理のうち、第1の実施形態と異なる部分についてのみ説明する。また、第1の実施形態と同一の処理部及び処理ステップについては、第1の実施形態と同一の符号を付すものとする。
Since the functional configuration and the hardware configuration of the
第2の実施形態におけるカメラアダプタが実行する処理について、図10を用いて説明する。なお、ここでは、第1の実施形態における処理と異なる処理ステップについて説明する。S1201において、カメラアダプタ101は、S796で実行されたBMCAにより、同期マスターが変更されたか否かを判定する。同期マスターが変更された場合、S707へ処理が進み、変更されない場合、S1202へ処理が進む。S1202において、カメラアダプタ101は、受信した通知パケットを転送せずに破棄する。処理終了後、S710へ進む。デイジーチェーン接続された複数のカメラアダプタ101を有する構成においては、同期マスターにならない通知パケットが隣接するカメラアダプタ101へ転送されても、転送先でもその通知パケットの送信元は同期マスターにならないことが予想される。したがって、同期マスターとならない送信元からの通知パケットは、次のカメラアダプタ101に転送せずに破棄することにより、ネットワーク110の通信帯域を効率よく使用することができる。
The process executed by the camera adapter in the second embodiment will be described with reference to FIG. Here, a processing step different from the processing in the first embodiment will be described. In S1201, the
(第3の実施形態)
第2の実施形態においては、条件に合致する通知パケットの転送を行わないことにより、ネットワーク110の通信帯域を効率よく使用する方法について説明した。第3の実施形態においては、通知パケットだけでなく条件に合致する同期パケットの転送を行わないことにより、更なるネットワーク帯域の効率化を実現する方法について説明する。
(Third Embodiment)
In the second embodiment, a method of efficiently using the communication band of the
画像処理システム100、及び、画像処理システム100が有する各装置の機能構成及びハードウェア構成は、第1の実施形態又は第2の実施形態と同一であるため説明を省略する。また、以下の説明においては、画像処理システム100が有する各装置が実行する処理のうち、第1の実施形態及び第2の実施形態と異なる部分についてのみ説明する。また、第1の実施形態及び第2の実施形態と同一の処理部及び処理ステップについては、第1の実施形態と同一の符号を付すものとする。
Since the functional configuration and hardware configuration of the
同期撮影システム100、カメラアダプタ101、タイムサーバ102の構成は実施例1と同一のため説明を割愛する。また、同期撮影システム100の同期撮影シーケンスおよびタイムサーバ102の時刻同期フローも実施例1と同一のため説明を割愛する。カメラアダプタ101の時刻同期フローは実施例2と同一のため、説明を割愛する。BMCAのフローおよびタイムサーバ102とカメラアダプタ101間の時刻同期シーケンスは実施例1と同等であるので説明を割愛する。
Since the configurations of the
第3の実施形態におけるカメラアダプタ101が実行する処理について、図11を用いて説明する。なお、ここでは、第1の実施形態における処理と異なる処理ステップについて説明する。S1301において、カメラアダプタ101は、S801において受信した同期パケットを破棄する。S1301の処理が終了すると、本フローは終了する。S1301の処理が実行される際に受信される時刻同期パケットは、Syncパケット及びFollow_Upパケットのいずれかである。自身が時刻同期しないタイムサーバ102の時刻同期パケット(Syncパケット及びFollow_Upパケット)を転送しても、転送先でもそれらのパケットに含まれる情報が活用されることは無い。すなわち、不要なSyncパケット及びFollow_Upパケットの転送を行うことにより、ネットワーク110の通信帯域を圧迫したり、カメラアダプタ101の処理負荷を増加させるおそれがある。したがって、カメラアダプタ101は、受信された時刻同期パケットのうち、S1301の処理が実行される場合の時刻同期パケットは、転送せずに破棄する。この構成により、ネットワーク110の通信帯域をより効率的に使用することができる。
The process executed by the
(その他の実施形態)
上述した実施形態においては、タイムサーバ102が2つである場合について説明したが、これに限定されない。例えば、タイムサーバ102が3台以上の場合も、上述した実施形態と同様の構成により、各カメラアダプタ101は同期マスターを決定することが可能である。3台以上の場合は、例えば、3台のタイムサーバ102と複数のカメラアダプタ101とをデイーチェーン接続する、又は、カメラアダプタ101aからカメラアダプタ101zの間にハブを新しく設け、ハブにタイムサーバを接続する等の構成が考えられる。
(Other embodiments)
In the above-described embodiment, the case where the number of
また、デイジーチェーン接続された複数のカメラアダプタ101の始点と終点とが同一のタイムサーバに接続される構成であってもよい。例えば、図1におけるカメラアダプタ101aとカメラアダプタ101zとがハブ140に接続され、ハブ140を介してタイムサーバ102aと同期信号の送受信を行う構成である。この場合、タイムサーバ102aからカメラアダプタ101へ同期信号を送信する通信経路として、カメラアダプタ101a側から送信する第1の通信経路と、カメラアダプタ101z側から送信する第2の通信経路とが考えられる。この場合も、カメラアダプタ101は、第1の通信経路と第2の通信経路とで、通信経路に含まれる装置(カメラアダプタ101)の数がより少ない通信経路を用いて取得された同期信号に基づいて時刻同期を行う。この構成により、時刻同期の精度の低下を抑制することができる。
Further, the start point and the end point of the plurality of
また、本実施形態においては、タイムサーバ102aが送信する同期信号と、タイムサーバ102bが送信する同期信号とが、同じネットワーク110を介して送信される例について説明した。すなわち、タイムサーバ102aが送信する同期信号は、ネットワーク110bから110zの順で送信され、タイムサーバ102bが送信する同期信号は、ネットワーク110zから110bの順で送信される。しかしながら、これに限定されず、タイムサーバ102aが送信する同期信号とタイムサーバ102bが送信する同期信号とが、異なるネットワークを介して送信される構成でもよい。この場合、複数のカメラアダプタ190は2本のネットワークを有し、各ネットワークがそれぞれタイムサーバ102a及びタイムサーバ102bからの同期信号を送信する。
Further, in the present embodiment, an example in which the synchronization signal transmitted by the
また上述した実施形態におけるカメラアダプタ101は、通信経路に含まれる装置の数に基づく優先度に基づいて、いずれのタイムサーバ102を同期マスターとして決定するかを決定する。しかしながら、これに限定されない。カメラアダプタ101は、例えば、複数のタイムサーバ102のうち、カメラアダプタ101とタイムサーバ102とを接続するケーブルの長さ、あるいはカメラアダプタ101とタイムサーバ102との物理的な距離等に基づいて同期マスターを決定してもよい。
Further, the
なお、上述した第1、第2及び第3の実施形態は、任意の実施形態を組み合わせて実施することが可能である。また、上述した実施形態においては、仮想視点画像を生成するシステムを例として説明したが、これに限定されない。すなわち、上述した実施形態は、複数の撮像装置を同期させて撮像を行う種々のシステムに適用可能である。本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。 The first, second, and third embodiments described above can be implemented by combining any of the embodiments. Further, in the above-described embodiment, the system for generating the virtual viewpoint image has been described as an example, but the present invention is not limited to this. That is, the above-described embodiment can be applied to various systems in which a plurality of imaging devices are synchronized to perform imaging. The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or storage medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
101 カメラアダプタ
202 ネットワーク部
203 時刻同期部
101
Claims (17)
複数の撮像画像を取得する複数の撮像手段による撮像を同期させるための第1の同期信号を生成するタイムサーバから、他の制御装置とデイジーチェーン接続されることにより構成される第1の通信経路を介して通信される前記第1の同期信号と、前記複数の撮像手段による撮像を同期させるための第2の同期信号を生成するタイムサーバから、前記他の制御装置とデイジーチェーン接続されることにより構成される第2の通信経路であって、前記第1の通信経路とは異なる第2の通信経路を介して通信される前記第2の同期信号と、の少なくとも一方を取得する取得手段と、
前記取得手段により、前記第1の同期信号と前記第2の同期信号とのいずれか一方が取得された場合、取得された同期信号に基づいて、前記複数の撮像手段による撮像を同期させるように制御する同期制御を行い、前記取得手段により、前記第1の同期信号と前記第2の同期信号との両方が取得された場合、前記第1の同期信号及び前記第2の同期信号のそれぞれに含まれる優先度情報であって、同期信号の優先度を示す優先度情報に基づいて決定される前記第1の同期信号及び前記第2の同期信号のうちいずれか一方の同期信号に基づいて、前記同期制御を行う制御手段と
を有することを特徴とする制御装置。 It ’s a control device,
A first communication path configured by daisy-chaining with another control device from a time server that generates a first synchronization signal for synchronizing imaging by a plurality of imaging means that acquire a plurality of captured images. The time server that generates the first synchronization signal communicated via the above and the second synchronization signal for synchronizing the imaging by the plurality of imaging means is daisy-chained to the other control device. A second communication path composed of the above, and an acquisition means for acquiring at least one of the second synchronization signal communicated via a second communication path different from the first communication path. ,
When either one of the first synchronization signal and the second synchronization signal is acquired by the acquisition means, the imaging by the plurality of imaging means is synchronized based on the acquired synchronization signal. When both the first synchronization signal and the second synchronization signal are acquired by the acquisition means by performing the synchronization control to be controlled, the first synchronization signal and the second synchronization signal are respectively. Based on the synchronization signal of either one of the first synchronization signal and the second synchronization signal, which is the priority information included and is determined based on the priority information indicating the priority of the synchronization signal. A control device including a control means for performing the synchronous control.
前記第2の同期信号に含まれる優先度情報は、前記第2の通信経路において第2の同期信号を生成するタイムサーバと前記制御装置との間で前記制御装置とデイジーチェーン接続された他の制御装置の数に基づいて決定される優先度の情報を含む
ことを特徴とする請求項1に記載の制御装置。 The priority information included in the first synchronization signal is daisy-chained to the control device between the time server and the control device that generate the first synchronization signal in the first communication path. Contains priority information that is determined based on the number of controllers
The priority information included in the second synchronization signal is daisy-chained to the control device between the time server and the control device that generate the second synchronization signal in the second communication path. The control device according to claim 1, wherein the control device includes information on the priority determined based on the number of control devices.
前記取得手段により、前記第1の通信経路を介して前記第1の同期信号が取得された場合、前記第1の同期信号に含まれる優先度情報が示す優先度を下げることにより変更された第1の同期信号が、前記第1の通信経路における下流の他の制御装置に送信されるように制御し、
前記取得手段により、前記第2の通信経路を介して前記第2の同期信号が取得された場合、前記第2の同期信号に含まれる優先度情報が示す優先度を下げることにより変更された第2の同期信号が、前記第2の通信経路における下流の他の制御装置に送信されるように制御する
ことを特徴とする請求項4に記載の制御装置。 The control means
When the first synchronization signal is acquired by the acquisition means via the first communication path, the first synchronization signal is changed by lowering the priority indicated by the priority information included in the first synchronization signal. The synchronization signal of 1 is controlled so as to be transmitted to another control device downstream in the first communication path.
When the second synchronization signal is acquired by the acquisition means via the second communication path, the second synchronization signal is changed by lowering the priority indicated by the priority information included in the second synchronization signal. The control device according to claim 4, wherein the synchronization signal of 2 is controlled so as to be transmitted to another control device downstream in the second communication path.
前記取得手段により取得される第2の同期信号に含まれる優先度情報は、前記第2の通信経路において第2の同期信号を生成するタイムサーバと前記制御装置との間で前記制御装置とデイジーチェーン接続された他の制御装置により変更される
ことを特徴とする請求項4又は5に記載の制御装置。 The priority information included in the first synchronization signal acquired by the acquisition means is the control device and the daisy between the time server and the control device that generate the first synchronization signal in the first communication path. Changed by other chained controllers
The priority information included in the second synchronization signal acquired by the acquisition means is the control device and the daisy between the time server and the control device that generate the second synchronization signal in the second communication path. The control device according to claim 4 or 5, wherein the control device is modified by another control device connected in a chain.
前記取得手段により前記第1の同期信号と前記第2の同期信号との両方が取得され、且つ前記第1の同期信号に基づいて前記同期制御を行うと決定した場合、前記第2の同期信号を、前記第2の通信経路における下流の他の制御装置に送信する処理が実行されないように制御し、
前記取得手段により前記第1の同期信号と前記第2の同期信号との両方が取得され、且つ前記第2の同期信号に基づいて前記同期制御を行うと決定した場合、前記第1の同期信号を、前記第1の通信経路における下流の他の制御装置に送信する処理が実行されないように制御する
ことを特徴とする請求項4乃至6のいずれか1項に記載の制御装置。 The control means
When both the first synchronization signal and the second synchronization signal are acquired by the acquisition means and it is determined that the synchronization control is performed based on the first synchronization signal, the second synchronization signal Is controlled so as not to execute the process of transmitting the signal to another control device downstream in the second communication path.
When both the first synchronization signal and the second synchronization signal are acquired by the acquisition means and it is determined that the synchronization control is performed based on the second synchronization signal, the first synchronization signal The control device according to any one of claims 4 to 6, wherein the process of transmitting the signal to another downstream control device in the first communication path is controlled so as not to be executed.
複数の撮像画像を取得する複数の撮像手段による撮像を同期させるための第1の同期信号を生成するタイムサーバから、他の制御装置とデイジーチェーン接続されることにより構成される第1の通信経路を介して通信される前記第1の同期信号と、前記複数の撮像手段による撮像を同期させるための第2の同期信号を生成するタイムサーバから、前記他の制御装置とデイジーチェーン接続されることにより構成される第2の通信経路であって、前記第1の通信経路とは異なる第2の通信経路を介して通信される前記第2の同期信号と、の少なくとも一方を取得する取得工程と、
前記取得工程において、前記第1の同期信号と前記第2の同期信号とのいずれか一方が取得された場合、取得された同期信号に基づいて、前記複数の撮像手段による撮像を同期させるように制御する同期制御を行い、前記取得工程において、前記第1の同期信号と前記第2の同期信号との両方が取得された場合、前記第1の同期信号及び前記第2の同期信号のそれぞれに含まれる優先度情報であって、同期信号の優先度を示す優先度情報に基づいて決定される前記第1の同期信号及び前記第2の同期信号のうちいずれか一方の同期信号に基づいて、前記同期制御を行う制御工程と
を有することを特徴とする制御方法。 It is a control method for controlling a control device.
A first communication path configured by daisy-chaining with another control device from a time server that generates a first synchronization signal for synchronizing imaging by a plurality of imaging means that acquire a plurality of captured images. The time server that generates the first synchronization signal communicated via the above and the second synchronization signal for synchronizing the imaging by the plurality of imaging means is daisy-chained to the other control device. A second communication path composed of the above, and an acquisition step of acquiring at least one of the second synchronization signal communicated via a second communication path different from the first communication path. ,
When either one of the first synchronization signal and the second synchronization signal is acquired in the acquisition step, imaging by the plurality of imaging means is synchronized based on the acquired synchronization signal. When both the first synchronization signal and the second synchronization signal are acquired in the acquisition step by performing the synchronization control to be controlled, the first synchronization signal and the second synchronization signal are respectively. Based on the synchronization signal of either one of the first synchronization signal and the second synchronization signal, which is the priority information included and is determined based on the priority information indicating the priority of the synchronization signal. A control method comprising a control step for performing the synchronous control.
前記第2の同期信号に含まれる優先度情報は、前記第2の通信経路において第2の同期信号を生成するタイムサーバと前記制御装置との間で前記制御装置とデイジーチェーン接続された他の制御装置の数に基づいて決定される優先度の情報を含む
ことを特徴とする請求項11に記載の制御方法。 The priority information included in the first synchronization signal is daisy-chained to the control device between the time server and the control device that generate the first synchronization signal in the first communication path. Contains priority information that is determined based on the number of controllers
The priority information included in the second synchronization signal is daisy-chained to the control device between the time server and the control device that generate the second synchronization signal in the second communication path. The control method according to claim 11, wherein the control method includes information on the priority determined based on the number of control devices.
前記取得工程において、前記第1の通信経路を介して前記第1の同期信号が取得された場合、前記第1の同期信号に含まれる優先度情報が示す優先度を下げることにより変更された第1の同期信号が、前記第1の通信経路における下流の他の制御装置に送信されるように制御され、
前記取得工程において、前記第2の通信経路を介して前記第2の同期信号が取得された場合、前記第2の同期信号に含まれる優先度情報が示す優先度を下げることにより変更された第2の同期信号が、前記第2の通信経路における下流の他の制御装置に送信されるように制御される
ことを特徴とする請求項14に記載の制御方法。 In the control step,
In the acquisition step, when the first synchronization signal is acquired via the first communication path, the first synchronization signal is changed by lowering the priority indicated by the priority information included in the first synchronization signal. The synchronization signal of 1 is controlled so as to be transmitted to another control device downstream in the first communication path.
In the acquisition step, when the second synchronization signal is acquired via the second communication path, the second synchronization signal is changed by lowering the priority indicated by the priority information included in the second synchronization signal. The control method according to claim 14, wherein the synchronization signal of 2 is controlled so as to be transmitted to another control device downstream in the second communication path.
前記取得工程において取得される第2の同期信号に含まれる優先度情報は、前記第2の通信経路において第2の同期信号を生成するタイムサーバと制御装置との間で前記制御装置とデイジーチェーン接続された他の制御装置により変更される
ことを特徴とする請求項14又は15に記載の制御方法。 The priority information included in the first synchronization signal acquired in the acquisition step is the control device and the daisy chain between the time server and the control device that generate the first synchronization signal in the first communication path. Changed by other connected controllers
The priority information included in the second synchronization signal acquired in the acquisition step is the control device and the daisy chain between the time server and the control device that generate the second synchronization signal in the second communication path. The control method according to claim 14 or 15, characterized in that it is modified by another connected control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019226667A JP2021097300A (en) | 2019-12-16 | 2019-12-16 | Control unit, control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019226667A JP2021097300A (en) | 2019-12-16 | 2019-12-16 | Control unit, control method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021097300A true JP2021097300A (en) | 2021-06-24 |
Family
ID=76431697
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019226667A Pending JP2021097300A (en) | 2019-12-16 | 2019-12-16 | Control unit, control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021097300A (en) |
-
2019
- 2019-12-16 JP JP2019226667A patent/JP2021097300A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11985419B2 (en) | Data transmission systems and data transmission methods | |
JP7000649B2 (en) | Beacon-based wireless synchronization | |
TWI489293B (en) | Collaborative image control | |
JP5377663B2 (en) | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, AND TIME SYNCHRONIZATION METHOD | |
WO2017179608A1 (en) | Timing synchronization method, sensor embedding terminal, and sensor network system | |
US11050992B2 (en) | Control apparatus, image processing system, control method, and medium | |
WO2021092839A1 (en) | Data transmission method, electronic devices, system and storage medium | |
JP2021097300A (en) | Control unit, control method, and program | |
JP6682326B2 (en) | Information processing apparatus, information processing method, and program | |
JP2021093695A (en) | Synchronous control device, control method thereof, and program | |
JP2019140643A (en) | Transmission equipment | |
US20230155949A1 (en) | Communication apparatus, control method for communication apparatus, and storage medium | |
US20240072919A1 (en) | Communication apparatus and control method therefor | |
JP2021090127A (en) | Control unit, control method, and program | |
JP7467130B2 (en) | Information processing device, information processing method, and program | |
JP2023097645A (en) | Communication device, control method of communication device and program | |
JP2024033864A (en) | Synchronous control device, synchronized photographing device, synchronized control method and program | |
JP2022028499A (en) | Communication device, communication method, and program | |
JP2024054943A (en) | Communication device and control method thereof | |
JP7492331B2 (en) | IMAGE PROCESSING APPARATUS, CONTROL METHOD AND PROGRAM FOR IMAGE PROCESSING APPARATUS | |
JP2023019552A (en) | Communication device, communication method, and program | |
JP2024048661A (en) | Communication device and control method thereof | |
JP2022169044A (en) | Communication device and method for controlling the same | |
JP2021106328A (en) | Synchronization control device and method | |
JP6153812B2 (en) | Communication mediation apparatus, communication system, and communication method |