JP2016206697A - 物体検出装置のエラー制御方法及びエラー制御プログラム - Google Patents
物体検出装置のエラー制御方法及びエラー制御プログラム Download PDFInfo
- Publication number
- JP2016206697A JP2016206697A JP2015083084A JP2015083084A JP2016206697A JP 2016206697 A JP2016206697 A JP 2016206697A JP 2015083084 A JP2015083084 A JP 2015083084A JP 2015083084 A JP2015083084 A JP 2015083084A JP 2016206697 A JP2016206697 A JP 2016206697A
- Authority
- JP
- Japan
- Prior art keywords
- error
- object detection
- control method
- data
- accelerator
- 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
- Image Processing (AREA)
Abstract
【課題】システムを正常な状態へと復旧することができる物体検出装置のエラー制御方法及びエラー制御プログラムを提供する。【解決手段】物体検出装置のエラー制御方法として、ネットワークカメラから画像データを取得できない第1のエラーである場合、該当するネットワークカメラの初期化又は除外を行う第1のエラー処理段階と(31→315)、サーバコンピュータから1つのアクセラレータ装置へ画像データを送信できない第2のエラーである場合、該当するアクセラレータ装置の初期化又は切替を行う第2のエラー処理段階と(35→316)、1つのアクセラレータ装置からサーバコンピュータへ返信された計算結果が予期しない値となる第3のエラーである場合、該当するアクセラレータ装置のデータ更新又は初期化又は切替を行う第3のエラー処理段階と(311→317)を有する。【選択図】図3
Description
本発明は、画像データから物体検出処理を行う物体検出装置のエラー制御方法及びエラー制御プログラムに関する。
近年、与えられたデータを高速で処理することができ、かつ、短時間で大量の処理要求をこなすことができるデータ処理システムに対する要望が益々高まっている。
例えば、ネットワーク上に存在するデータを解析する情報通信サービスでは、取り扱うデータ量の増加に伴って、サーバあるいはデータセンタ側のデータ処理システムにおける処理能力の増強が求められている。このような要求に対し、一般的なデータセンタにおける既存システムでは、サーバコンピュータの台数を増やし、複数のサーバコンピュータに対する負荷を分散することで、負荷が集中するのを防ぐ方法がとられている(非特許文献1)。又、この負荷分散を最適に行うためのアルゴリズムの検討が行われている。
しかしながら、一般的なサーバコンピュータの処理方法であるソフトウェアを使った処理は、ハードウェアを使った処理に比べ低速であるといった問題がある。又、処理量の増大に伴って設置面積や消費電力の増加が問題となる。従って、今後益々増大する処理量に対し、このような分散処理のみで対処するのは困難となっている。
そこで、処理量の増加を抑える方法として、ハードウェア構成によるアクセラレータをデータ処理システムに接続し、入力データのフィルタリング処理をアクセラレータで行うことで、データ処理システムの処理負荷を低減する方法がある。高速に画像処理が行えるアクセラレータとして非特許文献2に示されるようなものがある。このようなアクセラレータを用いて、解析に用いるデータを事前にフィルタリングすることで、サーバあるいはデータセンタ側のデータ処理システムで解析する情報量を減らして、処理負荷を低減することができる。
松岡 聡、「アクセラレータ,再び アクセラレータ技術の影と光」、情報処理学会誌、Vol. 50, No. 2, 2009年2月, pp. 95-99
内苑 孝俊、他5名、「同期シフトデータ転送による2次元アレイ型トラッキングハードウェア」、電子情報通信学会技術研究報告、Vol. 111, No.397, 2012年1月18日, pp. 19-24
小田 哲、他3名、「Jubatus : Big Dataのリアルタイム処理を可能にする分散処理技術」、電子情報通信学会技術研究報告、Vol. 111, No.409, 2012年1月19日,pp. 35-40
ネットワークカメラから得た画像データに対して、その画像データに存在する物体の詳細な情報を機械学習手法によって解析するデータ処理システムとして、非特許文献3に示されるような分散処理フレームワークを用いたソフトウェア処理によって処理を行うものがある。この構成による画像データの解析では画像全体が解析対象となるため、不必要な情報に対してまで処理を行わなければならない。そのため、低フレームレート処理かつネットワークカメラ1台につき1台以上のサーバコンピュータが必要になる。
これに対して、サーバコンピュータに物体検出処理を行うアクセラレータ装置を組み合わせることで、複数台のネットワークカメラから取得した画像データに対して処理対象とする物体領域を抽出することができる。
このようなシステムにおいては、ネットワークカメラからの応答が途切れた場合や、アクセラレータ装置においてハードエラー又はソフトエラーが起こった場合に対して、システムを正常な状態へと復旧する復旧方法が課題の一つとなっている。
本発明は上記課題に鑑みなされたもので、システムを正常な状態へと復旧することができる物体検出装置のエラー制御方法及びエラー制御プログラムを提供することを目的とする。
上記課題を解決する第1の発明に係る物体検出装置のエラー制御方法は、
1台以上のネットワークカメラから画像データを取得する1台以上のサーバコンピュータと、前記サーバコンピュータの各々に複数接続され、前記ネットワークカメラの各々の参照データに基づいて、前記画像データの物体検出処理を行うアクセラレータ装置とからなる物体検出装置のエラー制御方法であって、
前記ネットワークカメラから画像データを取得できたかを確認し、前記画像データを取得できない第1のエラーである場合、該当する前記ネットワークカメラの初期化又は除外を行う第1のエラー処理段階と、
前記サーバコンピュータから1つの前記アクセラレータ装置へ画像データを送信できたかを確認し、前記画像データを送信できない第2のエラーである場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行う第2のエラー処理段階と、
前記1つの前記アクセラレータ装置から前記サーバコンピュータへ返信された計算結果に予期しない値がないかを確認し、当該計算結果が予期しない値となる第3のエラーである場合、該当する前記アクセラレータ装置のデータ更新又は初期化又は切替を行う第3のエラー処理段階と、
を有する
ことを特徴とする。
1台以上のネットワークカメラから画像データを取得する1台以上のサーバコンピュータと、前記サーバコンピュータの各々に複数接続され、前記ネットワークカメラの各々の参照データに基づいて、前記画像データの物体検出処理を行うアクセラレータ装置とからなる物体検出装置のエラー制御方法であって、
前記ネットワークカメラから画像データを取得できたかを確認し、前記画像データを取得できない第1のエラーである場合、該当する前記ネットワークカメラの初期化又は除外を行う第1のエラー処理段階と、
前記サーバコンピュータから1つの前記アクセラレータ装置へ画像データを送信できたかを確認し、前記画像データを送信できない第2のエラーである場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行う第2のエラー処理段階と、
前記1つの前記アクセラレータ装置から前記サーバコンピュータへ返信された計算結果に予期しない値がないかを確認し、当該計算結果が予期しない値となる第3のエラーである場合、該当する前記アクセラレータ装置のデータ更新又は初期化又は切替を行う第3のエラー処理段階と、
を有する
ことを特徴とする。
上記課題を解決する第2の発明に係る物体検出装置のエラー制御方法は、
上記第1の発明に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続して起こったかを判定し、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの初期化又は除外を行い、
前記第1のエラーが連続した場合、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする。
上記第1の発明に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続して起こったかを判定し、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの初期化又は除外を行い、
前記第1のエラーが連続した場合、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする。
上記課題を解決する第3の発明に係る物体検出装置のエラー制御方法は、
上記第2の発明に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの応答を確認し、
前記応答がある場合には、該当する前記ネットワークカメラを初期化する初期化を行い、
前記応答がない場合には、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする。
上記第2の発明に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの応答を確認し、
前記応答がある場合には、該当する前記ネットワークカメラを初期化する初期化を行い、
前記応答がない場合には、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする。
上記課題を解決する第4の発明に係る物体検出装置のエラー制御方法は、
上記第1〜第3のいずれか1つの発明に記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続して起こったかを判定し、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行い、
前記第2のエラーが連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記第1〜第3のいずれか1つの発明に記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続して起こったかを判定し、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行い、
前記第2のエラーが連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記課題を解決する第5の発明に係る物体検出装置のエラー制御方法は、
上記第4の発明に記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の応答を確認し、
前記応答がある場合には、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行うと共に、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記応答がない場合には、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記第4の発明に記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の応答を確認し、
前記応答がある場合には、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行うと共に、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記応答がない場合には、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記課題を解決する第6の発明に係る物体検出装置のエラー制御方法は、
上記第1〜第5のいずれか1つの発明に記載の物体検出装置のエラー制御方法において、
前記第3のエラー処理段階は、
前記第3のエラーが連続して起こったかを判定し、
前記第3のエラーが連続していない場合、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記第3のエラーが1回連続した場合、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行い、
前記第3のエラーが2回以上連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記第1〜第5のいずれか1つの発明に記載の物体検出装置のエラー制御方法において、
前記第3のエラー処理段階は、
前記第3のエラーが連続して起こったかを判定し、
前記第3のエラーが連続していない場合、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記第3のエラーが1回連続した場合、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行い、
前記第3のエラーが2回以上連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする。
上記課題を解決する第7の発明に係る物体検出装置のエラー制御プログラムは、
上記第1〜第6のいずれか1つの発明に記載の物体検出装置のエラー制御方法を前記サーバコンピュータ及び前記アクセラレータ装置に実行させる
ことを特徴とする。
上記第1〜第6のいずれか1つの発明に記載の物体検出装置のエラー制御方法を前記サーバコンピュータ及び前記アクセラレータ装置に実行させる
ことを特徴とする。
本発明によれば、ネットワークカメラから画像データを取得できたか確認して、このエラーを復旧する第1のエラー処理段階と、アクセラレータ装置に画像データを送信できたか確認して、このエラーを復旧する第2のエラー処理段階と、アクセラレータ装置から送られた結果に予期しない値がないか確認して、このエラーを復旧する第3のエラー処理段階とを有しているので、ネットワークカメラからの応答が途切れた場合、アクセラレータ装置においてエラーが起こった場合でも、システムを正常な状態へと復旧することができる。
以下、本発明に係る物体検出装置のエラー制御方法及びエラー制御プログラムの好ましい実施の形態について、図面を参照して説明する。
本実施形態において、画像処理装置は、図1に示すように、1台以上のネットワークカメラ10と、ネットワーク11と、1台以上のフィルタリングシステム12(物体検出装置)と、1台以上のデータ解析サーバ15と、から構成される。詳細は図2を参照して説明するが、フィルタリングシステム12は、画像処理サーバ13と、1台以上の画像処理アクセラレータ14と、から構成される。これらのネットワークカメラ10、フィルタリングシステム12及びデータ解析サーバ15は、ネットワーク11を介して接続されている。
そして、本実施形態では、ネットワークカメラ10からネットワーク11を通してフィルタリングシステム12が画像データを取得し、画像データ内に存在する物体検出を行い、物体の情報のみをデータ解析サーバ15に送信する。データ解析サーバ15では受け取った物体情報をもとにデータ解析を行っている。このような構成により、画像データから物体情報を抽出する画像処理装置として機能している。
画像処理サーバ13は一般的なサーバコンピュータである。画像処理サーバ13は、図2に示すように、1台以上のネットワークカメラ10からネットワーク11を介して画像データを取得する画像取得部20と、画像データや計算過程で発生する各種データを保持するデータ保持部21と、圧縮された画像データを伸張するデータデコード部22と、画像処理サーバ13と1台以上の画像処理アクセラレータ14の間の通信用インタフェースである通信I/F部23と、画像処理アクセラレータ14で検出した物体の座標を計算する物体座標計算部29と、画像処理サーバ13とデータ解析サーバ15の間の通信用インタフェースである通信I/F部210と、画像処理サーバ13の各ブロックを制御するソフトウェア制御部212と、画像処理アクセラレータ14の動作を制御するハードウェア制御部213と、を備えている。
画像処理サーバ13と1台以上の画像処理アクセラレータ14の間の通信は通信路24を通して行われる。具体的な通信路の例として、“PCI Express”(登録商標)や“Ethernet”(登録商標)などを用いることができる。
なお、データデコード部22は、画像データが圧縮されていなければ、デコードしなくても良い。又、画像処理サーバ13ではなく、後述する画像処理アクセラレータ14にデータデコード部を設け、画像処理アクセラレータ14で画像データをデコードするようにしても良い。
又、各々の画像処理アクセラレータ14はアクセラレータ装置であり、図2に示すように、再構成可能デバイス214を用いることでハードウェア処理を実現している。再構成可能デバイス214は、再構成可能なLSI(Large-Scale Integrated circuit)、FPGA(Field Programmable Gate Array)などによって構成することができる。再構成可能デバイス214内で実行される処理は、FPGA内に実装する単位処理回路、即ち、個々の処理回路によって行われる処理であり、既存のIP(Intellectual Property)コアや、事前に作成した専用の論理回路ブロックや、メモリ回路ブロックなどとして構成することができる。又、画像処理アクセラレータ14は、1つ以上のFPGAを搭載した1枚のボード(ハードウェア基板)として構成することができる。
このような画像処理アクセラレータ14は、画像処理サーバ13と画像処理アクセラレータ14の間の通信用インタフェースである通信I/F部25と、ハードウェア制御部213の命令に基づき各機能ブロックを制御するIP制御部26と、画像データに存在する物体を検出する物体検出部27と、入出力時や計算で生じたデータを保持するデータ保持部28と、を備えている。物体検出処理に用いる参照データも、このデータ保持部28にネットワークカメラ10の台数分保存されている。
物体検出部27では、非特許文献2に示されるような機構を用いて物体検出を行うことで、高速に処理を行うことが可能である。検出した結果は、画像処理サーバ13において座標情報へと変換される。以上により高速にフィルタリング処理を行うことができる。
物体検出の方法としては背景差分を用いた方法などがある。このような方法では、入力された画像データとデータ保持部28に保存されている参照データとを用いて物体検出処理が行われる。参照データとしては各時刻の画像データを基に計算された背景画像の特徴量データなどを用いる。又、参照データの更新は物体検出処理時もしくは後述するリフレッシュ処理時に行われる。
このようにして、フィルタリングシステム12は、1台以上のネットワークカメラ10からネットワーク11を介して画像データを取得し、物体検出処理を行った後、物体情報を画像処理サーバ13の通信I/F部210から指定したデータ解析サーバ15の通信I/F部211に送信する。
図3は、フィルタリングシステム12の処理手順を示すフローチャートである。このフィルタリングシステム12の動作は、まず、処理回数k=1とし、ステップ30において、後述する管理テーブル40に従って選択したネットワークカメラ10からフレーム(画像データ)を画像取得部20が取得する。次に、ステップ31において正しく画像データが取得できたかを判定する。できなかった場合(失敗の場合)は、ステップ315において後述するエラー処理1(第1のエラー処理段階)を行い、その後、ステップ30に戻って、次のネットワークカメラ10から画像データを取得する。画像データを正しく取得できた場合(成功の場合)は、ステップ32において、取得した画像データをデータ保持部21に保存する。
ここで、正しく画像データが取得できたかどうかの判定は、画像ファイルの破損チェックにより行っている。例えば、ネットワークカメラ10より取得するデータはHTTP(Hyper Text Transfer Protocol)形式のレスポンスメッセージとなっているため、上記ステップ30では取得データから画像データの分離が必要となる。このとき、なんらかの原因(カメラ不具合、ネットワーク不具合、ソフトエラーなど)によりレスポンスメッセージが破損していた場合、正常な画像データを取り出せないことが考えられるため、取り出した画像データの破損チェックが必要となり、画像データの破損がない場合、正しく画像データが取得できたと判定している。
保存した画像データはステップ33においてデータデコード部22でデコードされ、ステップ34においてデコード画像データを画像処理サーバ13から画像処理アクセラレータ14内のデータ保持部28に通信I/F部23、通信路24、通信I/F部25を介して送信する。
ステップ35では、デコード画像データが正しく画像処理アクセラレータ14内のデータ保持部28に送信できたかを判定し、できなかった場合(失敗の場合)は、ステップ316において後述するエラー処理2(第2のエラー処理段階)を行い、その後、ステップ30に戻って、次のネットワークカメラ10から画像データを取得する。画像データを正しく送信できた場合(成功の場合)は、ステップ36においてデータ保持部28に保持された参照データを用いて、物体検出部27で物体検出処理又は参照データを最新のデータに更新するリフレッシュ処理を行い、その結果はデータ保持部28に格納される。
ここで、デコード画像データが正しく送信できたかどうかの判定は、通信エラーの有無により判定している。ここでの通信には、一般的なDMA(Direct Memory Access)転送を用いており、その仕様に基づいて通信の成否がソフト側に通知されており、対象のデコード画像データを通信エラーなしにデータ保持部28に転送できた場合、正しく送信できたと判定している。
次に、ステップ37において、物体検出処理及びリフレッシュ処理を行った処理回数kが規定値(N回)であるかを判定し、一致していなければ、処理回数kをインクリメント(k=k+1)した上でステップ30に戻り、ステップ30〜ステップ37の処理を繰り返す。一致していた場合には、k=1とした上で、ステップ38において、データ保持部28に保持された計算結果を画像処理サーバ13に通信I/F部25、通信路24、通信I/F部23を介して送信する。
画像処理サーバ13に送られた結果はステップ39においてデータ保持部21に保存される。そして、ステップ310において、それぞれの結果に対し物体座標の計算を物体座標計算部29で行う。ステップ311では、計算した物体座標が予期しない異常値でないか判定し、異常値だった場合(異常検知がYesの場合)は、ステップ317において後述するエラー処理3(第3のエラー処理段階)を行い、その後、ステップ30に戻って、次のネットワークカメラ10から画像データを取得する。正常値であった場合(異常検知がNoの場合)は、ステップ312において、データ保持部21に物体座標を保存する。
ここで、計算した物体座標が予期しない異常値でないかどうかの判定は、計算した物体座標が事前に指定した範囲内の座標にあるかどうかで判定している。事前に指定した範囲外の座標から物体検出がされた場合、計算した物体座標が異常値であると判定する。
次に、ステップ313において得られた物体座標を基に物体情報のみを特定のデータ解析サーバ15に向けて通信I/F部210を介して送信する。その後、フィルタリングシステム12の処理継続判定をステップ314で行い、外部より停止命令が来ない限りステップ30に戻り、上記の動作を繰り返す。
図4は、1台以上のネットワークカメラ10に対してフィルタリング処理を行う際の管理方法を説明する図である。フィルタリングシステム12は、ソフトウェア制御部212に格納されている管理テーブル40によって1台以上のネットワークカメラ10に対するフィルタリング処理を管理する。管理テーブル40は、画像の取得順番を表すフレーム番号41と、画像データを取得するネットワークカメラ10を一意に識別する識別番号となるカメラID42と、自身の処理順番が回ってきた際に通常処理(物体検出処理)を行うかリフレッシュ処理を行うかを判定するためのRST(リセット)フラグ43と、を有する。
フィルタリングシステム12の動作は管理テーブル40を基に繰り返し行われる。RSTフラグ43は、フレーム番号41に対応するカメラID42を変えた際、即ち、画像を取得するネットワークカメラ10を切替えた際に「1」になる。このRSTフラグ43に従ってリフレッシュ処理を行うことで、物体検出処理を行う際に参照する参照データを、切り替え後のネットワークカメラ10から得たデータに更新することができ、ノイズの発生を回避することができる。
つまり、フレーム番号41に対するカメラID42は、ネットワークカメラ10の取得順番を登録することと同義であり、又、RSTフラグ43は、登録されているネットワークカメラ10の変更の有無を示すことと同義である。そして、登録されているネットワークカメラ10に変更がない場合にRSTフラグ43を「0」とし、このときに物体検出処理が行われ、登録されているネットワークカメラ10に変更がある場合にRSTフラグ43を「1」とし、このときにリフレッシュ処理が行われる。なお、カメラID42に「0」が設定されているときは、これらの処理をスキップする。
なお、図4に示した管理テーブル40においては、フレーム番号41が「2」のカメラID42が「2」に変わったので、RSTフラグ43が「1」となって、リフレッシュ処理を行うことを示しており、フレーム番号41が「N−1」、「N」のカメラID42が共に「0」であるので、処理をスキップすることを示している。
図5は、ネットワークカメラ10から画像データを取得できない第1のエラーが起きた場合のエラー処理1(図3におけるステップ315)の手順を示すフローチャートである。
このフローでは、まず、ステップ50において、同じネットワークカメラ10に対して連続してエラーが起きたかを判定する。連続したエラーであった場合は、後述するステップ55に進む。連続したエラーではなかった場合は、ステップ51において、対象となるネットワークカメラ10から応答があるか確認する。
ここで、連続してエラーが起きたかどうかの判定は、エラー処理1におけるエラー時にカウンタをインクリメントし、通常処理時にカウンタをクリアすることにより、連続エラーの判定を行うことができる。
次に、ステップ52において、応答の有無を判定し、応答がなかった場合(失敗の場合)は、後述するステップ55に進む。応答があった場合(成功の場合)は、ステップ53において、対象となるネットワークカメラ10の初期化を行い、ステップ54においてエラーログを出力する。
ステップ50で連続したエラーであった場合、ステップ52で応答がなかった場合は、ステップ55において、対象となるネットワークカメラ10を異常と判断して、今後のデータ解析対象から除外し、ステップ56において、管理者に対してアラート通知を行う。その後、ステップ54でエラーログを出力する。以上の動作により、異常動作を行ったネットワークカメラ10に対して、復旧もしくは除外を行うことができる。
図6は、画像処理サーバ13から1つの画像処理アクセラレータ14へ画像データを送信できない第2のエラーが起きた場合のエラー処理2(図3におけるステップ316)の手順を示すフローチャートである。つまり、画像処理アクセラレータ14のハードエラーを検知した場合の手順を示している。
このフローでは、まず、ステップ60において、画像処理アクセラレータ14に対して画像データの送信が連続して失敗したかを判定する。連続したエラーであった場合は、後述するステップ66に進む。連続したエラーではなかった場合は、ステップ61において、画像処理アクセラレータ14から応答があるか確認する。
ここでも、連続してエラーが起きたかどうかの判定は、エラー処理2におけるエラー時にカウンタをインクリメントし、通常処理時にカウンタをクリアすることにより、連続エラーの判定を行うことができる。
次に、ステップ62において、応答の有無を判定し、応答がなかった場合(失敗の場合)は、後述するステップ66に進む。応答があった場合(成功の場合)は、ステップ63において、画像処理アクセラレータ14に実装された再構成可能デバイス214の初期化を行う。その後、ステップ64では、画像処理サーバ13において全てのRSTフラグを「1」にする。その後、ステップ65において、エラーログを出力する。
ここでは、全てのRSTフラグを「1」にすることにより、全ての参照データをリフレッシュしている。これは、最初のエラー時にFPGA内に実装した回路に不具合があった可能性があり、不具合のある回路で計算された参照データが誤っている可能性もあるからであり、そのため、一度全ての参照データをリフレッシュすることにしている。
ステップ60で連続したエラーであった場合、ステップ62で応答がなかった場合は、ステップ66において、対象となる画像処理アクセラレータ14から他の画像処理アクセラレータ14への切り替えを行い、ステップ67において、管理者に対してアラート通知を行う。その後、ステップ65でエラーログを出力する。以上の動作により、ハードエラーを起こした画像処理アクセラレータ14に対して、復旧もしくは交換を行うことができる。
図7は、1つの画像処理アクセラレータ14から画像処理サーバ13へ返信された計算結果が予期しない値となる第3のエラーが起きた場合のエラー処理3(図3におけるステップ317)の手順を示すフローチャートである。つまり、画像処理アクセラレータ14のソフトエラーを検知した場合の手順を示している。
このフローでは、まず、ステップ70において、画像処理サーバ13のデータ保持部21に保持された計算結果を破棄する。次に、ステップ71において、同一のネットワークカメラ10から得た画像データに対する計算結果に異常値が連続して発生したかを判定する。連続したエラーではなかった場合(連続エラー回数=0の場合)は、後述するステップ72へ進み、連続したエラーであった場合は、後述するステップ74に進む。
ここでも、連続してエラーが起きたかどうかの判定は、エラー処理3におけるエラー時にカウンタをインクリメントし、通常処理時にカウンタをクリアすることにより、連続エラーの判定を行うことができる。
1回連続したエラーであるとステップ74において判定された場合は、ステップ75において、画像処理アクセラレータ14に実装された再構成可能デバイス214の初期化を行い、ステップ72に進む。2回以上連続したエラーであるとステップ74において判定された場合は、ステップ76において、対象となる画像処理アクセラレータ14から他の画像処理アクセラレータ14への切り替えを行い、ステップ77において、管理者に対してアラート通知を行い、その後、ステップ72に進む。
ステップ72においては、画像処理サーバ13において全てのRSTフラグを「1」にして、ステップ73でエラーログを出力する。以上の動作により、ソフトエラーを起こした画像処理アクセラレータ14に対して、復旧もしくは交換を行うことができる。
ここでも、全てのRSTフラグを「1」にすることにより、全ての参照データをリフレッシュしている。これは、最初のエラー時にFPGA内に実装した回路に不具合があった可能性があり、不具合のある回路で計算された参照データが誤っている可能性もあるからであり、そのため、一度全ての参照データをリフレッシュすることにしている。
このように、本実施形態では、ネットワークカメラ10から画像データを取得できたか確認して、このエラーを復旧するエラー処理1と、画像処理アクセラレータ14に画像データを送信できたか確認して、このエラーを復旧するエラー処理2と、画像処理アクセラレータ14から送られた結果に予期しない値がないか確認して、このエラーを復旧するエラー処理3とを有しているので、ネットワークカメラ10からの応答が途切れた場合、画像処理アクセラレータ14においてエラーが起こった場合でも、システムを正常な状態へと復旧することができる。
そして、上述したエラー処理を行うと共に、ネットワークカメラからの画像データ取得を行う画像処理サーバ13と物体検出を行う画像処理アクセラレータ14とを組み合わせることにより、1台以上のネットワークカメラ10から取得した画像データに対してフィルタリングを行うことができる。
本発明は、複数のネットワークカメラから得た画像データに存在する物体の詳細な情報を機械学習手法によって解析するデータ処理システムに好適なものである。
10 ネットワークカメラ
11 ネットワーク
12 フィルタリングシステム
13 画像処理サーバ
14 画像処理アクセラレータ
15 データ解析サーバ
20 画像取得部
21 データ保持部
22 データデコード部
23 通信I/F部
24 通信路
25 通信I/F部
26 IP制御部
27 物体検出部
28 データ保持部
29 物体座標計算部
210 通信I/F部
211 通信I/F部
212 ソフトウェア制御部
213 ハードウェア制御部
214 再構成可能デバイス
11 ネットワーク
12 フィルタリングシステム
13 画像処理サーバ
14 画像処理アクセラレータ
15 データ解析サーバ
20 画像取得部
21 データ保持部
22 データデコード部
23 通信I/F部
24 通信路
25 通信I/F部
26 IP制御部
27 物体検出部
28 データ保持部
29 物体座標計算部
210 通信I/F部
211 通信I/F部
212 ソフトウェア制御部
213 ハードウェア制御部
214 再構成可能デバイス
Claims (7)
- 1台以上のネットワークカメラから画像データを取得する1台以上のサーバコンピュータと、前記サーバコンピュータの各々に複数接続され、前記ネットワークカメラの各々の参照データに基づいて、前記画像データの物体検出処理を行うアクセラレータ装置とからなる物体検出装置のエラー制御方法であって、
前記ネットワークカメラから画像データを取得できたかを確認し、前記画像データを取得できない第1のエラーである場合、該当する前記ネットワークカメラの初期化又は除外を行う第1のエラー処理段階と、
前記サーバコンピュータから1つの前記アクセラレータ装置へ画像データを送信できたかを確認し、前記画像データを送信できない第2のエラーである場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行う第2のエラー処理段階と、
前記1つの前記アクセラレータ装置から前記サーバコンピュータへ返信された計算結果に予期しない値がないかを確認し、当該計算結果が予期しない値となる第3のエラーである場合、該当する前記アクセラレータ装置のデータ更新又は初期化又は切替を行う第3のエラー処理段階と、
を有する
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項1に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続して起こったかを判定し、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの初期化又は除外を行い、
前記第1のエラーが連続した場合、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項2に記載の物体検出装置のエラー制御方法において、
前記第1のエラー処理段階は、
前記第1のエラーが連続していない場合、該当する前記ネットワークカメラの応答を確認し、
前記応答がある場合には、該当する前記ネットワークカメラを初期化する初期化を行い、
前記応答がない場合には、該当する前記ネットワークカメラを前記画像データの取得対象から除外する除外を行う
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項1から請求項3のいずれか1つに記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続して起こったかを判定し、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の初期化及びデータ更新又は切替を行い、
前記第2のエラーが連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項4に記載の物体検出装置のエラー制御方法において、
前記第2のエラー処理段階は、
前記第2のエラーが連続していない場合、該当する前記アクセラレータ装置の応答を確認し、
前記応答がある場合には、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行うと共に、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記応答がない場合には、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項1から請求項5のいずれか1つに記載の物体検出装置のエラー制御方法において、
前記第3のエラー処理段階は、
前記第3のエラーが連続して起こったかを判定し、
前記第3のエラーが連続していない場合、該当する前記アクセラレータ装置が参照する前記参照データを最新のデータに更新するデータ更新を行い、
前記第3のエラーが1回連続した場合、該当する前記アクセラレータ装置に実装された再構成可能デバイスを初期化する初期化を行い、
前記第3のエラーが2回以上連続した場合、該当する前記アクセラレータ装置から他の前記アクセラレータ装置に切り替える切替を行う
ことを特徴とする物体検出装置のエラー制御方法。 - 請求項1から請求項6のいずれか1つに記載の物体検出装置のエラー制御方法を前記サーバコンピュータ及び前記アクセラレータ装置に実行させる
ことを特徴とする物体検出装置のエラー制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015083084A JP2016206697A (ja) | 2015-04-15 | 2015-04-15 | 物体検出装置のエラー制御方法及びエラー制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015083084A JP2016206697A (ja) | 2015-04-15 | 2015-04-15 | 物体検出装置のエラー制御方法及びエラー制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016206697A true JP2016206697A (ja) | 2016-12-08 |
Family
ID=57487098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015083084A Pending JP2016206697A (ja) | 2015-04-15 | 2015-04-15 | 物体検出装置のエラー制御方法及びエラー制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016206697A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108347357A (zh) * | 2017-01-24 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 一种数据通信方法、应用客户端、加速节点服务器及系统 |
-
2015
- 2015-04-15 JP JP2015083084A patent/JP2016206697A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108347357A (zh) * | 2017-01-24 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 一种数据通信方法、应用客户端、加速节点服务器及系统 |
CN108347357B (zh) * | 2017-01-24 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 一种数据通信方法、应用客户端、加速节点服务器及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877935B2 (en) | Stream computing system and method | |
US9569339B1 (en) | Debugging in an actor-based system | |
CN110830285B (zh) | 用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统 | |
JP6325001B2 (ja) | 階層データ構造のノードにおいて再帰的イベントリスナを用いる方法およびシステム | |
CN109522363B (zh) | 基于区块链的云平台同步方法、系统、设备及存储介质 | |
US9471412B2 (en) | Encoding diagnostic data in an error message for a computer program | |
US9436539B2 (en) | Synchronized debug information generation | |
CN104965727A (zh) | 一种重启服务器的方法及装置 | |
CN111106944A (zh) | 一种故障告警信息处理方法及设备 | |
US10318385B2 (en) | Service recovery using snapshots and interservice messages | |
US20170091044A1 (en) | Replicating data in a data storage system | |
CN104579717A (zh) | Dcn的故障定位方法及装置 | |
JP2016206697A (ja) | 物体検出装置のエラー制御方法及びエラー制御プログラム | |
CN116701053B (zh) | 生产环境数据库的数据备份恢复方法、装置、设备及介质 | |
US9690639B2 (en) | Failure detecting apparatus and failure detecting method using patterns indicating occurrences of failures | |
US10452285B2 (en) | Storage system based host computer monitoring | |
RU2698766C1 (ru) | Способ и устройство для передачи, отправки и получения информации | |
US10402234B2 (en) | Fine-grain synchronization in data-parallel jobs | |
US9990491B2 (en) | Methods and systems for assessing and remediating online servers with minimal impact | |
CN111290873B (zh) | 故障处理方法和装置 | |
JP2016206696A (ja) | 物体検出装置、物体検出装置の制御方法及び制御プログラム | |
US20140089396A1 (en) | Rebuild system for a storage network | |
CN111258845A (zh) | 事件风暴的检测 | |
CN116418600B (zh) | 节点安全运维方法、装置、设备以及存储介质 | |
US8935494B2 (en) | Backing up an image in a computing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20170421 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170421 |