(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-21
(45)【発行日】2024-05-29
(54)【発明の名称】画像処理装置、画像処理装置の制御方法及びプログラム
(51)【国際特許分類】
H04L 12/28 20060101AFI20240522BHJP
【FI】
H04L12/28 200Z
(21)【出願番号】P 2019224023
(22)【出願日】2019-12-11
【審査請求日】2022-12-02
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】熊取谷 昭彦
【審査官】中川 幸洋
(56)【参考文献】
【文献】特開2009-021700(JP,A)
【文献】特開2010-154130(JP,A)
【文献】特開2017-211827(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/28
(57)【特許請求の範囲】
【請求項1】
複数の撮影装置により同期して撮影を行う撮影システムにおける、第1画像処理装置及び第2画像処理装置と接続された画像処理装置であって、
前記第1画像処理装置から、前記第1画像処理装置により処理された画像データを受信する受信手段と、
前記受信手段により受信した前記画像データを、前記第2画像処理装置に転送する転送手段と、
前記受信手段により受信した前記画像データのヘッダ情報に基づいて、前記受信手段により受信した前記画像データの前記第2画像処理装置への転送が終了することを検知する検知手段と、
前記検知手段により前記受信手段により受信した前記画像データの前記第2画像処理装置への転送が終了することが検知されたことに基づいて、前記画像処理装置が処理した画像データを前記第2画像処理装置に送信する送信手段と、
前記複数の撮影装置による撮影の同期信号に基づいて、時間を計測する計測手段と、
を
有し、
前記送信手段は、前記計測手段により計測する時間が所定時間を経過する前に前記検知手段により前記転送の終了が検知されない場合、前記画像処理装置が処理した画像データを破棄することを特徴とする画像処理装置。
【請求項2】
前記ヘッダ情報はフラグフィールドを含み、
前記検知手段は、前記ヘッダ情報の前記フラグフィールドを参照し、後続するフラグメントデータがないことを検知することにより、前記転送が終了することを検知することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記ヘッダ情報は生存時間フィールドを含み、
前記検知手段は、前記ヘッダ情報の前記生存時間フィールドを参照し、前記生存時間フィールドの値に基づいて、前記受信手段により受信された画像データが、前記第1画像処理装置により処理された画像データであることをさらに検知することを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記ヘッダ情報はフラグフィールドを含み、
前記検知手段は、前記ヘッダ情報の前記フラグフィールドを参照し、前記第1画像処理装置により処理される画像データの残りのパケットが
所定の値であることを検知することにより、前記転送が終了することを検知することを特徴とする請求項1に記載の画像処理装置。
【請求項5】
前記画像処理装置と関連づけられた撮影装置により撮影された画像データを前記撮影装置から取得する取得手段をさらに備え、
前記送信手段は、前記取得手段により取得されて前記画像処理装置により処理された画像データを、前記第2画像処理装置へ送信することを特徴とする請求項1乃至
4の何れか1項に記載の画像処理装置。
【請求項6】
前記受信手段により受信される画像データは、前記第1画像処理装置と関連づけられた第1撮影装置により撮影されて前記第1画像処理装置により処理された画像データであることを特徴とする請求項1乃至
5の何れか1項に記載の画像処理装置。
【請求項7】
前記画像処理装置は、前記第1画像処理装置及び前記第2画像処理装置を含む複数の画像処理装置とカスケード接続されていることを特徴とする請求項1乃至
6の何れか1項に記載の画像処理装置。
【請求項8】
前記複数の画像処理装置のうち前記カスケード接続における最も下流にある他の画像処理装置はスイッチングハブを介してサーバ装置と接続されており、
前記画像処理装置が処理した各画像データは、前記カスケード接続を介して前記サーバ装置に送信されることを特徴とする請求項
7に記載の画像処理装置。
【請求項9】
複数の撮影装置により同期して撮影を行う撮影システムにおける、第1画像処理装置及び第2画像処理装置と接続された画像処理装置の制御方法であって、
前記第1画像処理装置から、前記第1画像処理装置により処理された画像データを受信する受信工程と、
前記受信工程により受信した前記画像データを、前記第2画像処理装置に転送する転送工程と、
前記受信工程により受信した前記画像データのヘッダ情報に基づいて、前記受信工程により受信した前記画像データの前記第2画像処理装置への転送が終了することを検知する検知工程と、
前記検知工程により前記受信工程により受信した前記画像データの前記第2画像処理装置への転送が終了することが検知されたことに基づいて、前記画像処理装置が処理した画像データを前記第2画像処理装置に送信する送信工程と、
前記複数の撮影装置による撮影の同期信号に基づいて、時間を計測する計測工程と、
を有
し、
前記送信工程では、前記計測工程により計測する時間が所定時間を経過する前に前記検知工程により前記転送の終了が検知されない場合、前記画像処理装置が処理した画像データを破棄することを特徴とする画像処理装置の制御方法。
【請求項10】
コンピュータを、請求項1乃至
8の何れか1項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、画像処理装置の制御方法及びプログラムに関するものである。
【背景技術】
【0002】
近年、複数のカメラを異なる位置に設置して多視点で同期撮影し、当該撮影により得られた複数の画像を用いて仮想視点画像を生成する技術が注目されている。このような仮想視点画像を生成する技術によれば、例えば、サッカーやバスケットボールのハイライトシーンを様々な角度から視聴することができるため、通常の画像と比較してユーザに高臨場感を与えることができる。
【0003】
また、仮想視点画像の生成及び閲覧は、複数のカメラが撮影した画像をサーバなどに集約し、当該サーバにおいて三次元モデル生成やレンダリングなどの処理を施し、ユーザ端末に伝送を行うことで実現できる。このような仮想視点画像を生成するシステムでは、複数のカメラが複数の画像を取得し、サーバに伝送することが必要であり、伝送経路の十分な帯域が確保できないと生成する仮想視点画像の画質劣化を招くことになる。また、シーンによりカメラ毎に必要となる伝送帯域が動的に変化する場合には適応的に帯域を割り当てる必要がある。
【0004】
これに対して、特許文献1は、トークン制御方式によりデータ送信を行う伝送手法を開示している。トークンを使用してカメラ毎に撮影データの送信タイミングを決定することにより、カメラ毎に無駄のない帯域割り当てが可能である。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載の技術では、撮影データの伝送だけでなくトークンをカメラ間で還流させて制御するための仕組みが必要である。また、カメラの台数が増えるとトークンを取得して送信を開始するまでのオーバーヘッドが大きくなる。
【0007】
本発明は、上記の課題に鑑みてなされたものであり、画像処理装置において、処理された画像データを適切に送信するための技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の目的を達成する本発明に係る画像処理装置の一態様は、
複数の撮影装置により同期して撮影を行う撮影システムにおける、第1画像処理装置及び第2画像処理装置と接続された画像処理装置であって、
前記第1画像処理装置から、前記第1画像処理装置により処理された画像データを受信する受信手段と、
前記受信手段により受信した前記画像データを、前記第2画像処理装置に転送する転送手段と、
前記受信手段により受信した前記画像データのヘッダ情報に基づいて、前記受信手段により受信した前記画像データの前記第2画像処理装置への転送が終了することを検知する検知手段と、
前記検知手段により前記受信手段により受信した前記画像データの前記第2画像処理装置への転送が終了することが検知されたことに基づいて、前記画像処理装置が処理した画像データを前記第2画像処理装置に送信する送信手段と、
前記複数の撮影装置による撮影の同期信号に基づいて、時間を計測する計測手段と、
を有し、
前記送信手段は、前記計測手段により計測する時間が所定時間を経過する前に前記検知手段により前記転送の終了が検知されない場合、前記画像処理装置が処理した画像データを破棄することを特徴とする。
【発明の効果】
【0009】
本発明によれば、画像処理装置において、処理された画像データを適切に送信することが可能となる。
【図面の簡単な説明】
【0010】
【
図1】一実施形態における撮影システムの構成を説明するための図である。
【
図2】一実施形態におけるカメラ及びカメラアダプタの配置と注視点の位置とを説明するための図である。
【
図3】(a)一実施形態におけるカメラアダプタのハードウェア構成の一例を示す図であり、(b)一実施形態におけるカメラアダプタの機能構成の一例を示す図である。
【
図4】一実施形態におけるヘッダフォーマットを示した図である。
【
図5】実施形態1における転送動作の手順を示すフローチャートである。
【
図6】実施形態1における送信動作の手順を示すフローチャートである。
【
図7】実施形態1における撮影システムの動作シーケンスを示した図である。
【
図8】実施形態2における転送動作の手順を示すフローチャートである。
【
図9】実施形態2における送信動作の手順を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0012】
(実施形態1)
まず、
図1を参照しながら、競技場(スタジアム)やコンサートホールなどの施設に複数のカメラを設置して撮影を行う撮影システムについて説明する。撮影システム100は、カメラ(撮影装置)112a-112h、カメラアダプタ(画像処理装置)120a-120h、スイッチングハブ180、画像コンピューティングサーバ200、タイムサーバ290、及びコントローラ300を含んで構成される。
【0013】
本実施形態において、特別な説明がない場合は、カメラ112aからカメラ112hまでを区別せずカメラ112と記載する。同様にカメラアダプタ120a-120hも特別な説明がない場合は区別せず、カメラアダプタ120と記載する。
【0014】
なお、本実施形態では、特に断りがない限り、画像という文言が、動画と静止画の概念を含むものとして説明する。すなわち、本実施形態の撮影システム100は、静止画及び動画の何れについても撮影可能である。
【0015】
本実施形態の撮影システム100では、スイッチングハブ180に対して画像コンピューティングサーバ200、タイムサーバ290、カメラアダプタ120aが接続されている。そして、画像コンピューティングサーバ200に対してコントローラ300が接続されている。また、カメラアダプタ120a-120hはデイジーチェーン接続されている。また、カメラ112a-112hは、それぞれ1台ずつのカメラアダプタ120a-120hと関連づけられ、接続されている。
【0016】
カメラアダプタ120は、カメラ112と接続し、カメラ112の制御、撮影した画像の取得、同期信号の提供、及び時刻設定などを行う機能を有している。カメラ112の制御には、例えば撮影パラメータ(画素数、色深度、フレームレート、及びホワイトバランスの設定など)の設定及び参照、カメラ112の状態(撮影中、停止中、同期中、及びエラーなど)の取得、撮影の開始及び停止や、ピント調整などがある。同期信号の提供は、カメラアダプタ120がタイムサーバ290と同期した時刻を利用し、撮影タイミング(制御クロック)をカメラ112に提供することで行われる。時刻設定は、カメラアダプタ120がタイムサーバ290と同期した時刻を、例えばSMPTE12Mのフォーマットに準拠したタイムコードで提供することで行われる。これにより、カメラ112から受け取る画像データに提供したタイムコードが付与されることになる。なお、タイムコードのフォーマットはSMPTE12Mに限定されるわけではなく、他のフォーマットであってもよい。
【0017】
コントローラ300は、撮影システム100のネットワークを介してカメラアダプタ120a-120hに制御信号を送ることによりカメラ112a-112hの撮影を制御する。また、コントローラ300は、ネットワークを介してカメラ112a-112hが撮影した画像データを画像コンピューティングサーバ200に転送するとともに画像コンピューティングサーバ200から選択した画像データを取り出す。
【0018】
図2は、一実施形態における注視点及びカメラ配置を説明する図である。カメラ112a-112hおよびカメラアダプタ120a-120hは、フィールド250を取り囲むように設置されている。また、カメラ112a-112hは、各々光軸が注視点Aを向くようになっている。
【0019】
<ハードウェア構成>
図3(a)を用いて、画像処理装置として機能するカメラアダプタ120のハードウェア構成について説明する。カメラアダプタ120は、CPU211、ROM212、RAM213、補助記憶装置214、通信I/F215、及びバス216を有する。
【0020】
CPU211は、ROM212やRAM213に格納されているコンピュータプログラムやデータを用いてカメラアダプタ120の全体を制御することで、
図1に示すカメラアダプタ120の各機能を実現する。なお、カメラアダプタ120がCPU211とは異なる1又は複数の専用のハードウェアを有し、CPU211による処理の少なくとも一部を専用のハードウェアが実行してもよい。専用のハードウェアの例としては、ASIC(特定用途向け集積回路)、FPGA(フィールドプログラマブルゲートアレイ)、およびDSP(デジタルシグナルプロセッサ)などがある。ROM212は、変更を必要としないプログラムなどを格納する。RAM213は、補助記憶装置214から供給されるプログラムやデータ、及び通信I/F215を介して外部から供給されるデータなどを一時記憶する。補助記憶装置214は、例えばハードディスクドライブ等で構成され、画像データや音声データなどの種々のデータを記憶する。
【0021】
通信I/F215は、カメラアダプタ120の外部の装置との通信に用いられる。例えば、カメラアダプタ120が外部の装置と有線で接続される場合には、通信用のケーブルが通信I/F215に接続される。カメラアダプタ120が外部の装置と無線通信する機能を有する場合には、通信I/F215はアンテナを備える。バス216は、カメラアダプタ120の各部をつないで情報を伝達する。
【0022】
<機能構成>
次に、
図3(b)を用いて、画像処理装置として機能するカメラアダプタ120の機能構成について説明する。
図3(b)は、特にカメラアダプタ120の送受信処理部130周辺の構成を示している。
図3(b)に示すように、カメラアダプタ120は、撮影データ生成部121、送受信処理部130、ポート122、及びポート123を備えている。送受信処理部130は、受信データ保持部131、受信処理部132、送信処理部133、送品データ保持部134、カウンタ135、及びカウンタ136を備えている。
【0023】
撮影データ生成部121は、カメラ112が撮影した画像データを送信する。ポート122及びポート123は、隣接するカメラアダプタ120間でパケットを送受信するための入力部及び出力部である。
【0024】
送受信処理部130は、カメラアダプタ120が送受信するパケットを処理する。受信データ保持部131は、ポート122が受信したパケットを一時保持する。受信処理部132は、受信データ保持部131に一時保持した受信パケットのヘッダ情報に基づいて受信処理を行う。
【0025】
送信処理部133は、受信処理部132で受信処理された受信データおよび撮影データ生成部121で生成された撮影データを送信するための送信処理を行う。送信データ保持部134は、送信処理部133で送信処理された送信データを一時保持する。
【0026】
カウンタ135は、カメラ112の垂直同期信号に基づくフレーム開始時にリセットされた後、クロックをカウントする。所定値に達すると、カメラアダプタ120における転送を不可の状態にする。カウンタ136は、カメラ112の垂直同期信号に基づくフレーム開始時にリセットされた後、クロックをカウントする。所定値に達すると、カメラ112が生成した撮影データが破棄される。
【0027】
<ヘッダフォーマット>
図4は、インターネットプロトコルのヘッダフォーマットを示す図である。本実施形態においては、
図1に示したネットワーク上でカメラアダプタ120から画像コンピューティングサーバ200に、カメラ112の撮影データにヘッダを付加したパケットを送信する。本実施形態では、ヘッダの生存時間フィールド402に全てのカメラアダプタ120に共通の初期値を与えカメラアダプタ120を1つ経由する毎に1減じていく。このため転送するパケットの生存時間フィールド402の値が"初期値-1"であれば1つ上流の隣接したカメラアダプタ120が送信した撮影データであることが判別できる。また本実施形態では、フラグフィールド401のビット2を参照してフラグメント化された後続のパケットがあるかどうかを判別する。
【0028】
<カメラアダプタの転送動作>
図5は、実施形態1におけるカメラアダプタ120、特に送受信処理部130の転送動作の手順を示すフローチャートである。
【0029】
ステップS501において、送受信処理部130は、カメラ112の垂直同期信号をモニタしており、フレーム開始を検知する。そして、フレーム開始を検知した後、カウンタ135はクロックのカウントを開始し、ステップS502へ進む。一方、フレーム開始を検知していない場合、検知するまで待機する。
【0030】
ステップS502において、送受信処理部130は、カウンタ135のカウント値があらかじめ設定された値に達してタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合、ステップS508へ進む。一方、タイムアウトしていないと判定された場合、ステップS503へ進む。
【0031】
ステップS503において、カメラアダプタ120は、ポート122を介して上流側のカメラアダプタ120から転送されたパケットを受信したか否かを判定する。パケットを受信した場合、ステップS504へ進む。一方、パケットを受信していない場合、ステップS502に戻る。
【0032】
ステップS504において、受信処理部132は、送受信処理部130内の転送ステータスが転送可になっているか否かを判定する。本実施形態では、送受信処理部130は上流側のカメラアダプタ120が送信する撮影データを全て転送したと判断するまでは転送ステータスは転送可であり、全ての転送が終了した後は転送不可となる。転送可であると判定された場合、ステップS505へ進む。一方、転送不可であると判定された場合、ステップS509へ進む。
【0033】
ステップS505において、転送ステータスが転送可であるため、カメラアダプタ120は、ポート123を介して下流側のカメラアダプタ120にデータを転送する。
【0034】
ステップS506において、カメラアダプタ120は、受信したパケットのヘッダ情報を参照し、生存時間フィールド402から、受信パケットが隣接しているカメラアダプタ120の撮影データであるか否かを判定する。前述したように受信パケットの生存時間フィールド402が初期値-1であれば隣接したカメラアダプタ120の送信データを転送していると判定することができる。そして、隣接するカメラアダプタ120の撮影データであると判定された場合、ステップS507へ進む。一方、隣接するカメラアダプタ120の撮影データではないと判定された場合、ステップS510へ進む。
【0035】
ステップS507において、受信処理部132は、受信パケットのフラグフィールド401を参照し、後続するフラグメントデータがあるか否か、すなわちラストフラグであるか否かを判定する。後続するフラグメントデータがあると判定された場合は、ラストフラグではないので、ステップS510へ進む。一方、後続するフラグメントデータがないと判定された場合は、ラストフラグであるので、ステップS508へ進む。
【0036】
ステップS508において、受信処理部132は、転送ステータスを転送不可に変更する。例えば、ステップS507からステップS508へ遷移した場合、転送したパケットが隣接したカメラアダプタ120の最後のパケットであるため、上流側のカメラアダプタ120の撮影データを全て転送したと判定し、転送ステータスを転送不可に変更する。
【0037】
ステップS509において、受信処理部132は、受信したパケットを破棄し、ステップS510に進む。
【0038】
ステップS510において、送受信処理部130は、次のフレーム開始を検知する。そして、次のフレーム開始が検知されない場合は、ステップS502に戻る。一方、次のフレーム開始が検知された場合は、ステップS511へ進む。
【0039】
ステップS511において、送受信処理部130は、転送ステータスを転送可に変更した後、ステップS512へ進む。
【0040】
ステップS512において、カメラアダプタ120は、処理を終了するか否かを判定する。処理を終了しない場合、ステップS502に戻り、一連の処理を繰り返す。
【0041】
なお、ステップS508以降、次のフレームになるまで送受信処理部130は通常はパケットを受信しない。しかし、異常なケースとしてパケットを受信した場合、ステップS502からステップS503、ステップS504へ進み、転送ステータスが転送不可であるためステップS509へ進み、その結果、受信した異常なパケットは破棄されることになる。
【0042】
<カメラアダプタの送信動作>
図6は、実施形態1におけるカメラアダプタ120、特に送受信処理部130の送信動作の手順を示すフローチャートである。
【0043】
ステップS601において、送受信処理部130は、カメラ112の垂直同期信号をモニタしており、フレーム開始を検知する。そして、フレーム開始を検知した後、カウンタ136はクロックのカウントを開始し、ステップS602へ進む。一方、フレーム開始を検知していない場合、検知するまで待機する。
【0044】
ステップS602において、送受信処理部130は、カウンタ136のカウント値があらかじめ設定された値に達してタイムアウトしたか否かを判定する。タイムアウトしたと判定された場合、ステップS605へ進む。一方、タイムアウトしていないと判定された場合、ステップS603へ進む。
【0045】
ステップS603において、受信処理部132は、送受信処理部130内の転送ステータスを参照し、転送ステータスが転送可になっているか否かを判定する。転送可であると判定された場合、ステップS602に戻る。一方、転送不可であると判定された場合、ステップS604へ進む。
【0046】
ステップS604において、送受信処理部130は、送信データ保持部134に一時保持していた送信データを、ポート123を介して次のカメラアダプタ120に送信する。なお、送信データ保持部134に一時保持していた送信データは、カメラ112が撮影したデータに送信処理部133がヘッダを付加したものである。
【0047】
ステップS605において、送受信処理部130は、送信データ保持部134に一時保持していた送信データを破棄する。このように、所定時間内に転送の終了が検知されない場合、カメラアダプタ120が処理した画像データを破棄する。
【0048】
ステップ606において、カメラアダプタ120は、処理を終了するか否かを判定する。処理を終了しない場合、ステップS601に戻り、一連の処理を繰り返す。
【0049】
なお、所定時間内に転送の終了が検知されない場合には、カメラアダプタ120が処理した画像データの下流側のカメラアダプタへの送信を開始するようにしてもよい。
【0050】
<撮影システムの動作>
図7は、実施形態1における撮影システム100の動作シーケンスを示した図である。
【0051】
ステップS701において、コントローラ300が、各カメラアダプタ120を介してカメラ112の撮影条件を決定するカメラパラメータを設定する。また、コントローラ300は、カメラアダプタ120およびカメラ112の時刻同期を行う。
【0052】
ステップS702において、コントローラ300は、各カメラアダプタ120に送受信制御に関する送受信パラメータを設定する。ステップS703において、コントローラ300は、カメラアダプタ120を介してカメラ112に撮影を開始させる。
【0053】
ステップS704において、カメラ112は、1フレーム期間、撮影を行う。ステップS705において、カメラ112は、カメラアダプタ120に対して1フレーム分の画像データを出力する。ステップS706において、カメラアダプタ120hは、カメラ112hが撮影したデータにヘッダを付加して隣接するカメラアダプタ120gに送信する。
【0054】
ステップS707において、カメラアダプタ120gは、隣接するカメラアダプタ120hからカメラ112hが撮影したデータを受信し、隣接するカメラアダプタ120fに転送する。同様に、カメラアダプタ120fから、カメラ112hが撮影したデータを、カメラアダプタ120e、カメラアダプタ120d、カメラアダプタ120c、カメラアダプタ120bと順次転送する。
【0055】
そして、ステップS712において、カメラアダプタ120bから、カメラ112hが撮影したデータをカメラアダプタ120aに転送する。その後、ステップS713において、カメラアダプタ120aから、カメラ112hが撮影したデータを画像コンピューティングサーバ200に転送する。このようにして、カメラアダプタ120hからカメラ112hが撮影したデータを画像コンピューティングサーバ200に送信することができる。
【0056】
一方、ステップS707において、カメラアダプタ120gが、カメラ112hが撮影したデータの転送を終了したことを検知すると、ステップS714において、カメラアダプタ120gはカメラ112gが撮影したデータをカメラアダプタ120fに送信する。そして、カメラ112hの場合と同様にカメラ112gが撮影したデータは最終的に画像コンピューティングサーバ200に転送される。同様の手順で、カメラ112fからカメラ112aが各々撮影したデータを画像コンピューティングサーバ200に送信する。
【0057】
以上説明したステップS706以降に示したカメラ112が撮影したデータの画像コンピューティングサーバ200への送信は1フレーム期間内に完了する必要がある。カメラ112は、ステップS704に示した撮影動作と撮影データの伝送動作とを並行して行うことができる。そのため、カメラアダプタ120は、画像コンピューティングサーバ200bへの1フレーム分の伝送が終了した後、次のフレームの伝送動作を開始することができる。
【0058】
以上説明したように、本実施形態によれば、トークンパケットを使用することなく、IPヘッダの情報のみでカスケード接続した複数台のカメラの撮影データを順次隙間なく伝送することができる。
【0059】
(実施形態2)
本実施形態では、カメラの撮影データの転送動作と送信動作とを一部同時に行う例を説明する。本実施形態では、実施形態1で示した転送ステータスに加えて送信ステータスを導入し、送信ステータスが送信可のときに送信を行うものとする。また、
図4に示したヘッダフォーマットを一部変更し、フラグメント化された最後の4パケットにおいてフラグフィールド401のビット0を1にして送信する。残りが4パケットと少ないパケットになっていることが分かるので、送信が終了することを検知することができる。そして、下流側のカメラアダプタ120は、隣接したカメラアダプタ120の最後の4パケットを受信したときに、送信ステータスを送信可に変更して送信を開始する。なお、最後の4パケットは一例であり、最後の3パケット、最後の2パケットなどその他の数を設定してもよい。
【0060】
なお、撮影システム100に含まれる装置構成については実施形態1と同様であるので、詳細な説明は省略する。
【0061】
<カメラアダプタの転送動作>
図8は、実施形態2におけるカメラアダプタ120、特に送受信処理部130の転送動作の手順を示すフローチャートである。
【0062】
ステップS801からステップS804までの各処理は、実施形態1におけるステップS501からステップS504までの各処理と同じ動作であるので説明を省略する。また、ステップS810の処理は、ステップS508の処理と同じ動作であるので説明を省略する。
【0063】
ステップS805において、カメラアダプタ120は、受信したパケットのヘッダ情報を参照し、生存時間フィールド402から受信パケットが隣接しているカメラアダプタ120の撮影データであるか否かを判定する。前述したように受信パケットの生存時間フィールド402が初期値-1であれば隣接したカメラアダプタ120の送信データを転送していると判定することができる。そして、隣接するカメラアダプタ120の撮影データであると判定された場合、ステップS50806へ進む。一方、隣接するカメラアダプタ120の撮影データではないと判定された場合、ステップS811へ進む。
【0064】
ステップS806において、カメラアダプタ120は、受信パケットのフラグフィールド401のビット0を参照し、受信パケットの最後の4パケットであるか否か、すなわち送信可能であるか否かを判定する。最後の4パケットである場合は、送信可能であると判定できるため、ステップS807へ進む。一方、最後の4パケットではない場合は、送信可能ではないと判定できるため、ステップS811へ進む。
【0065】
ステップS807において、送受信処理部130は、初期状態で送信不可である送信ステータスを送信可に変更する。
【0066】
ステップS808において、受信処理部132は、受信パケットのフラグフィールド401を参照し、後続するフラグメントデータがあるか否か、すなわちラストフラグであるか否かを判定する。後続するフラグメントデータがあると判定された場合は、ラストフラグではないので、ステップS811へ進む。一方、後続するフラグメントデータがないと判定された場合は、ラストフラグであるので、ステップS809へ進む。ステップS809において、受信処理部132は、転送したパケットが隣接したカメラアダプタ120の最後のパケットであるため、上流のカメラアダプタ120の撮影データを全て転送したと判定し、転送ステータスを転送不可に変更する。
【0067】
ステップS810において、受信処理部132は、受信したパケットを破棄し、ステップS811に進む。ステップS811において、送受信処理部130は、カメラ112の垂直同期信号に基づいて次のフレーム開始を検知する。そして、次のフレーム開始が検知されない場合は、ステップS802に戻る。一方、次のフレーム開始が検知された場合は、ステップS812へ進む。
【0068】
ステップS812において、送受信処理部130は、送信ステータスを送信不可に変更する。続いて、ステップS813において、送受信処理部130は、転送ステータスを転送可に変更する。
【0069】
ステップS814において、カメラアダプタ120は、処理を終了するか否かを判定する。処理を終了しない場合、ステップS802に戻り、一連の処理を繰り返す。
【0070】
なお、ステップS809以降、次のフレームになるまで送受信処理部130は通常はパケットを受信しない。しかし、異常なケースとしてパケットを受信した場合、ステップS802からステップS803へ進み、転送ステータスが転送不可であるためステップS810へ進み、その結果、受信した異常なパケットは破棄されることになる。
【0071】
<カメラアダプタの送信動作>
図9は、実施形態2におけるカメラアダプタ120、特に送受信処理部130の送信動作の手順を示すフローチャートである。
【0072】
ステップS901において、送受信処理部130は、カメラ112の垂直同期信号をモニタしており、フレーム開始を検知する。そして、フレーム開始を検知した後、ステップS902へ進む。
【0073】
ステップS902において、送受信処理部130は、送信ステータスを参照し、送信ステータスが送信可になっているか否かを判定する。送信可であると判定された場合、ステップS903へ進む。一方、送信可ではないと判定された場合、送信可になるまで待機する。
【0074】
ステップS903において、送受信処理部130は、送信データ保持部134に一時保持していた送信データを、ポート123を介して次のカメラアダプタ120へ送信する。
【0075】
以上説明したように、本実施形態によれば、トークンパケットを使用することなく、IPヘッダの情報のみでカスケード接続した複数台のカメラの撮影データを順次隙間なく伝送することができる。さらに、本実施形態によればカメラの撮影データの転送動作と送信動作とを一部同時に行うことが可能となる。
【0076】
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0077】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。
【符号の説明】
【0078】
112:カメラ、120:カメラアダプタ、121:撮影データ生成部、122,123:ポート、130:送受信処理部、131:受信データ保持部、132:受信処理部、133:送信処理部、134:送信データ保持部、135,136:カウンタ、180:スイッチングハブ、200:画像コンピューティングサーバ、290:タイムサーバ、300:コントローラ