(57)【要約】【課題】カメラ群で撮影された画像データを、衛星回線を利用して監視センタで収集する場合、カメラ数が増えるに従い通信帯域を逼迫する問題がある。【解決手段】複数のカメラが撮影した画像データを監視する計算機システムであって、計算機システムはカメラサーバを備え、カメラサーバは、画像データを格納するキャッシュ部と、イベントの発生を検知し、検知されたイベントを解析する特徴量抽出部とを有し、計算機システムは、イベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する画像データのフレームレートを決定するフレームレート決定部と、決定されたフレームレートに従って、イベントの発生が検知された画像データを撮影したカメラから画像データを取得する画像データ取得部と、を備える。【選択図】図１
2015133561.tif 000002
【特許請求の範囲】
【請求項１】
複数のカメラが撮影した画像データを監視する計算機システムであって、
前記計算機システムは、
前記複数のカメラを制御するカメラサーバと、
前記画像データを監視するモニタ端末と、
ネットワークを介して接続される前記カメラサーバ及び前記モニタ端末との間の通信を制御するＷｅｂサーバと、を備え、
前記カメラサーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のネットワークインタフェースを有し、
前記モニタ端末は、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、及び前記第２のプロセッサに接続される第２のネットワークインタフェースを有し、
前記Ｗｅｂサーバは、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のネットワークインタフェースを有し、
前記カメラサーバは、
前記複数のカメラの各々から受信した前記画像データを格納するキャッシュ部と、
前記画像データを解析することによってイベントの発生を検知し、前記検知されたイベントを解析する特徴量抽出部と、
前記モニタ端末が前記複数のカメラの各々の前記画像データを取得するために送信する画像リクエストを受信した場合に前記キャッシュ部に格納される前記画像データ、及び前記イベントの発生が検知された場合に前記イベントの発生を通知するイベント通知を、前記Ｗｅｂサーバを介して前記モニタ端末に送信するＷｅｂサーバ通信部と、を有し、
前記計算機システムは、
前記カメラサーバによって検知されたイベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する前記画像データの単位時間あたりの取得数であるフレームレートを決定するフレームレート決定部と、
前記決定されたフレームレートに従って、前記イベントの発生が検知された画像データを撮影したカメラから前記画像データを取得する画像データ取得部と、を備えることを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記特徴量抽出部は、
前記キャッシュ部に格納される前記画像データと、新たに受信した前記画像データを用いて動きベクトルを算出し、
前記動きベクトルに基づいて、前記画像データの一部の領域に動きが検知されたか否かを判定し、
前記画像データの一部の領域に動きが検知された場合、前記検知された動きの種別を判定し、
前記動きの種別、及び前記イベントの発生が検知された画像データを撮影したカメラの識別子を含む前記イベント通知を送信することを特徴とする計算機システム。
【請求項３】
請求項２に記載の計算機システムであって、
前記モニタ端末は、
前記フレームレート決定部と、
前記画像データ取得部として、前記画像リクエストを発行する画像リクエスト発行部と、
前記動きの種別及び前記フレームレートの対応関係を管理するイベント対応情報と、を有し、
前記フレームレート決定部は、
前記イベント通知に含まれる前記動きの種別に基づいて前記イベント対応情報を参照することによって、前記イベントの発生が検知された画像データを撮影したカメラから取得する画像データの前記フレームレートを決定し、
前記決定されたフレームレートを前記画像リクエスト発行部に出力し、
前記画像リクエスト発行部は、前記決定されたフレームレートに従って、前記イベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの発行タイミングを調整することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
前記イベント対応情報は、第１のイベント及び第１のフレームレートが対応付けられたエントリを含み、
前記画像リクエスト発行部は、
前記第１のイベントの発生が検知される前では、前記第１のフレームレートより低い第２のフレームレートに従って、前記複数のカメラの各々に対する前記画像リクエストの発行タイミングを調整し、
前記第１のイベントの発生が検知された後では、前記第１のフレームレートに従って、前記第１のイベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの発行タイミングを調整することを特徴とする計算機システム。
【請求項５】
請求項２に記載の計算機システムであって、
前記Ｗｅｂサーバは、
前記フレームレート決定部と、
前記画像データ取得部として、前記画像リクエストを処理するリクエスト処理部と、
前記動きの種別及び前記フレームレートの対応関係を管理するイベント対応情報と、を有し、
前記モニタ端末は、前記画像リクエストを発行する画像リクエスト発行部を有し、
前記フレームレート決定部は、
前記イベント通知に含まれる前記動きの種別に基づいて前記イベント対応情報を参照することによって、前記イベントの発生が検知された画像データを撮影したカメラから取得する画像データの前記フレームレートを決定し、
前記リクエスト処理部は、前記決定されたフレームレートに従って遅延を発生させることによって、前記モニタ端末から受信した前記イベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの送信タイミングを調整することを特徴とする計算機システム。
【請求項６】
請求項５に記載の計算機システムであって、
前記イベント対応情報は、第２のイベント及び第２のフレームレートが対応付けられたエントリを含み、
前記画像リクエスト発行部は、前記第２のフレームレート以上の第３のフレームレートに従って、前記複数のカメラの各々に対して前記画像リクエストを発行し、
前記リクエスト処理部は、
前記第２のイベントの発生が検知される前では、前記第２のフレームレートより小さい第４のフレームレートに従って遅延を発生させることによって、前記複数のカメラの各々に対する前記画像リクエストの送信タイミングを調整し、
前記第２のイベントの発生が検知された後では、前記第２のフレームレートに従って遅延を発生させることによって、前記第２のイベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの送信タイミングを調整することを特徴とする計算機システム。
【請求項７】
複数のカメラが撮影した画像データを監視する計算機システムであって、
前記計算機システムは、
前記複数のカメラを制御するカメラサーバと、
前記カメラサーバが取得した前記画像データを蓄積する蓄積サーバと、を備え、
前記カメラサーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のネットワークインタフェースを有し、
前記蓄積サーバは、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、及び前記第２のプロセッサに接続される第２のネットワークインタフェースを有し、
前記カメラサーバは、
前記複数のカメラから受信した前記画像データを格納するキャッシュ部と、
前記画像データを解析することによってイベントの発生を検知し、前記検知されたイベントを解析する特徴量抽出部と、
前記検知されたイベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する前記画像データの単位時間あたりの取得数であるフレームレートを決定するフレームレート決定部と、
前記決定されたフレームレートに従って、前記キャッシュ部に格納される前記イベントの発生が検知された画像データを撮影した前記カメラの前記画像データを、前記蓄積サーバに送信する蓄積サーバ通信部と、を備えることを特徴とする計算機システム。
【請求項８】
請求項７に記載の計算機システムであって、
前記特徴量抽出部は、
前記キャッシュ部に格納される前記画像データと、新たに受信した前記画像データを用いて動きベクトルを算出し、
前記動きベクトルに基づいて、前記画像データの一部の領域に動きが検知されたか否かを判定し、
前記画像データの一部の領域に動きが検知された場合、前記検知された動きの種別を判定し、
前記動きの種別、及び前記イベントの発生が検知された画像データを撮影したカメラの識別子を含むイベント通知を送信することを特徴とする計算機システム。
【請求項９】
請求項８に記載の計算機システムであって、
前記カメラサーバは、前記動きの種別及び前記フレームレートの対応関係を管理するイベント対応情報を有し、
前記イベント対応情報は、第１のイベント及び第１のフレームレートが対応付けられたエントリを含み、
前記蓄積サーバ通信部は、
前記第１のイベントの発生が検知される前では、前記第１のフレームレートより低い第２のフレームレートに従って、前記キャッシュ部に格納される前記複数のカメラの各々の前記画像データを前記蓄積サーバに送信し、
前記第１のイベントの発生が検知された後では、前記第１のフレームレートに従って、前記キャッシュ部に格納される前記第１のイベントの発生が検知された画像データを撮影したカメラの前記画像データを、前記蓄積サーバに送信することを特徴とする計算機システム。
【請求項１０】
複数のカメラが撮影した画像データを監視する計算機システムにおける画像データ送信方法であって、
前記計算機システムは、前記複数のカメラを制御するカメラサーバと、前記画像データを監視するモニタ端末と、ネットワークを介して接続される前記カメラサーバ及び前記モニタ端末との間の通信を制御するＷｅｂサーバと、を備え、
前記カメラサーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のネットワークインタフェースを有し、
前記モニタ端末は、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、及び前記第２のプロセッサに接続される第２のネットワークインタフェースを有し、
前記Ｗｅｂサーバは、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のネットワークインタフェースを有し、
前記計算機システムは、
前記カメラサーバによって検知されたイベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する前記画像データの単位時間あたりの取得数であるフレームレートを決定するフレームレート決定部と、
前記決定されたフレームレートに従って、前記カメラサーバから前記イベントの発生が検知された画像データを撮影したカメラから前記画像データを取得する画像データ取得部と、を備え、
前記画像データ送信方法は、
前記カメラサーバが、前記複数のカメラの各々から受信した前記画像データをキャッシュ領域に格納する第１のステップと、
前記カメラサーバが、前記画像データを解析することによってイベントの発生を検知し、前記検知されたイベントを解析する第２のステップと、
前記カメラサーバが、前記Ｗｅｂサーバを介して前記イベントの発生を通知するイベント通知を前記モニタ端末に送信する第３のステップと、
前記フレームレート決定部が、前記検知されたイベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する前記画像データの前記フレームレートを決定する第４のステップと、
前記画像データ取得部が、前記決定されたフレームレートに従って、前記モニタ端末が前記イベントの発生が検知された画像データを撮影したカメラの前記画像データを取得するために送信する画像リクエストの送信タイミングを調整する第５のステップと、
前記カメラサーバが、前記画像リクエストを受信した場合、前記Ｗｅｂサーバを介して前記キャッシュ領域に格納される前記イベントの発生が検知された画像データを撮影したカメラの前記画像データを前記モニタ端末に送信する第６のステップと、を含むことを特徴とする画像データ送信方法。
【請求項１１】
請求項１０に記載の画像データ送信方法であって、
前記第２のステップは、
前記カメラサーバに格納される前記画像データと、新たに受信した前記画像データを用いて動きベクトルを算出するステップと、
前記動きベクトルに基づいて、前記画像データの一部の領域に動きが検知されたか否かを判定するステップと、
前記画像データの一部の領域に動きが検知された場合、前記検知された動きの種別を判定するステップと、
前記動きの種別、及び前記イベントの発生が検知された画像データを撮影したカメラの識別子を含む前記イベント通知を送信するステップと、を含むことを特徴とする画像データ送信方法。
【請求項１２】
請求項１１に記載の画像データ送信方法であって、
前記モニタ端末は、前記フレームレート決定部と、前記画像データ取得部として、前記画像リクエストを発行する画像リクエスト発行部と、前記動きの種別及び前記フレームレートの対応関係を管理するイベント対応情報と、を有し、
前記第４のステップは、
前記イベント通知に含まれる前記動きの種別に基づいて前記イベント対応情報を参照することによって、前記イベントの発生が検知された画像データを撮影したカメラから取得する画像データの前記フレームレートを決定するステップと、
前記決定されたフレームレートを前記画像リクエスト発行部に出力するステップと、を含み、
前記第５のステップでは、前記画像リクエスト発行部が、前記決定されたフレームレートに従って、前記イベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの発行タイミングを調整することを特徴とする画像データ送信方法。
【請求項１３】
請求項１２に記載の画像データ送信方法であって、
前記イベント対応情報は、第１のイベント及び第１のフレームレートが対応付けられたエントリを含み、
前記画像データ送信方法は、前記画像リクエスト発行部が、前記第１のイベントの発生が検知される前では、前記第１のフレームレートより低い第２のフレームレートに従って、前記複数のカメラの各々に対する前記画像リクエストの発行タイミングを調整するステップを含み、
前記第５のステップでは、前記第１のフレームレートに従って、前記第１のイベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの発行タイミングを調整することを特徴とする画像データ送信方法。
【請求項１４】
請求項１１に記載の画像データ送信方法であって、
前記Ｗｅｂサーバは、前記フレームレート決定部と、前記画像データ取得部として、前記画像リクエストを処理するリクエスト処理部と、前記動きの種別及び前記フレームレートの対応関係を管理するイベント対応情報と、を有し、
前記モニタ端末は、前記画像リクエストを発行する画像リクエスト発行部を有し、
前記第４のステップでは、前記イベント通知に含まれる前記動きの種別に基づいて前記イベント対応情報を参照することによって、前記イベントの発生が検知された画像データを撮影したカメラから取得する画像データの前記フレームレートを決定し、
前記第５のステップでは、前記リクエスト処理部が、前記決定されたフレームレートに従って遅延を発生させることによって、前記モニタ端末から受信した前記イベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの送信タイミングを調整することを特徴とする画像データ送信方法。
【請求項１５】
請求項１４に記載の画像データ送信方法であって、
前記イベント対応情報は、第２のイベント及び第２のフレームレートが対応付けられたエントリを含み、
前記画像データ送信方法は、
前記画像リクエスト発行部が、前記第２のフレームレート以上の第３のフレームレートに従って、前記複数のカメラの各々に対して前記画像リクエストを発行するステップと、
前記リクエスト処理部が、前記第２のイベントの発生が検知される前では、前記第２のフレームレートより小さい第４のフレームレートに従って遅延を発生させることによって、前記複数のカメラの各々に対する前記画像リクエストの送信タイミングを調整するステップと、を含み、
前記第５のステップでは、前記第２のフレームレートに従って遅延を発生させることによって、前記第２のイベントの発生が検知された画像データを撮影したカメラに対する前記画像リクエストの送信タイミングを調整することを特徴とする画像データ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のカメラを備える計算機システムに関する。
【背景技術】
【０００２】
ＷｅｂカメラなどのＩＰネットワークに接続可能な撮像装置が普及することによって、ＩＰネットワークを利用した広域・大規模監視システムを構築することが可能となった。一方、カメラ台数が増えるに従って、ネットワーク帯域が逼迫するという問題がある。
【０００３】
例えば、有線ネットワークを構築することが困難な地域では、衛星回線のネットワークを使用して、多数のカメラからの情報を収集することがある。この場合、狭帯域で効率よく画像を収集するシステムを構築する必要がある。例えば、海外のプラント建設現場を国内から安全監視する場合、重機等が動くと危険ポテンシャルが高いため、人間等の動きよりも重機の動きを優先的に提示することによって、効率のよい監視を行うことができる。
【０００４】
狭帯域でデータを収集する技術として、特許文献１に記載のような技術が知られている。具体的には、特許文献１には、「センサネットワークシステム１の情報処理装置（中央装置２）に、その情報処理装置に対して情報を要求するための情報要求信号が入力される入出力処理部１０１と、情報要求信号の目的とする情報である目的情報を、その目的情報を構成するのに適した情報である要素情報の組み合わせに分解するとともに、各要素情報の情報源になり得るリソースを特定するためのリソース特定情報に変換する情報変換部１０３およびリソース特定情報認識部１０４と、リソース特定情報に基づいて複数のセンサの中から選択されたセンサでの検知結果のデータを取得するデータ取得部１０７と、取得したデータに基づく情報を出力する入出力処理部１０１とを含める」ことが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１２２７９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１等の従来技術では、情報を取得するカメラ等を選択することは可能であるが、カメラそのものから送信されるデータそのものは削減されていない。そのため、選択されたカメラから高解像度の画像データ等が大量に送信されると、ネットワーク帯域を逼迫することとなる。
【０００７】
そのため、ＩＰネットワークを利用した広域・大規模監視システム上において、狭帯域の回線を利用して画像データを収集する場合、カメラ配置及び撮影対象の優先度に応じて、効率よく画像を収集するシステムが必要となる。
【０００８】
本発明は、カメラによって撮影された画像から取得される情報及びユーザから指定された情報に基づいて画像データのデータ量を決定し、所定のデータ量の画像データを転送するシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の代表的な一例を示せば以下の通りである。すなわち、複数のカメラが撮影した画像データを監視する計算機システムであって、前記計算機システムは、前記複数のカメラを制御するカメラサーバと、前記画像データを監視するモニタ端末と、ネットワークを介して接続される前記カメラサーバ及び前記モニタ端末との間の通信を制御するＷｅｂサーバと、を備え、前記カメラサーバは、第１のプロセッサ、前記第１のプロセッサに接続される第１のメモリ、及び前記第１のプロセッサに接続される第１のネットワークインタフェースを有し、前記モニタ端末は、第２のプロセッサ、前記第２のプロセッサに接続される第２のメモリ、及び前記第２のプロセッサに接続される第２のネットワークインタフェースを有し、前記Ｗｅｂサーバは、第３のプロセッサ、前記第３のプロセッサに接続される第３のメモリ、及び前記第３のプロセッサに接続される第３のネットワークインタフェースを有し、前記カメラサーバは、前記複数のカメラの各々から受信した前記画像データを格納するキャッシュ部と、前記画像データを解析することによってイベントの発生を検知し、前記検知されたイベントを解析する特徴量抽出部と、前記モニタ端末が前記複数のカメラの各々の前記画像データを取得するために送信する画像リクエストを受信した場合に前記キャッシュ部に格納される前記画像データ、及び前記イベントの発生が検知された場合に前記イベントの発生を通知するイベント通知を、前記Ｗｅｂサーバを介して前記モニタ端末に送信するＷｅｂサーバ通信部と、を有し、前記計算機システムは、前記カメラサーバによって検知されたイベントの解析結果に基づいて、当該イベントの発生が検知された画像データを撮影したカメラから取得する前記画像データの単位時間あたりの取得数であるフレームレートを決定するフレームレート決定部と、前記決定されたフレームレートに従って、前記イベントの発生が検知された画像データを撮影したカメラから前記画像データを取得する画像データ取得部と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、複数カメラの各々から取得する画像のフレームレートをイベントに応じて変更することができる。これによって、画像データの容量を削減することができ、また、蓄積する画像データを削減することができる。これによって、ネットワークの負荷を低減し、また、消費する記憶容量を節約することができる。
【００１１】
上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】本発明が適用される計算機システムの構成例を示すブロック図である。
【図２】本発明の実施例１におけるカメラサーバのハードウェア構成の一例を説明するブロック図である。
【図３】本発明の実施例１におけるカメラサーバの機能構成の一例を説明するブロック図である。
【図４】本発明の実施例１におけるＷｅｂサーバの機能構成の一例を説明するブロック図である。
【図５】本発明の実施例１における一時蓄積サーバの機能構成の一例を説明するブロック図である。
【図６】本発明の実施例１におけるモニタの機能構成の一例を説明するブロック図である。
【図７】本発明の実施例１における表示部が表示する表示画面の一例を示す説明図である。
【図８】本発明の実施例１におけるイベント対応テーブルの一例を示す説明図である。
【図９】本発明の実施例１におけるリアルタイム画像データの取得処理の流れを説明するシーケンス図である。
【図１０】本発明の実施例１におけるイベント検知処理の一例を説明するフローチャートである。
【図１１Ａ】本発明の実施例２におけるリアルタイム画像データの蓄積処理及び一時蓄積サーバに格納された蓄積画像データの取得処理の流れを説明するシーケンス図である。
【図１１Ｂ】本発明の実施例２における映像データの取得処理の流れを説明するシーケンス図である。
【図１２Ａ】本発明の実施例２におけるイベント検知処理の一例を説明するフローチャートである。
【図１２Ｂ】本発明の実施例２におけるイベント検知処理の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施例について、図面を参照して説明する。まず、本発明の概要について説明する。
【００１４】
図１は、本発明が適用される計算機システムの構成例を示すブロック図である。
【００１５】
計算機システムは、監視対象であるモニタリング拠点、モニタリング拠点を監視する監視センタ、及びネットワーク１７から構成される。ネットワーク１７は、例えば、狭帯域の衛星回線が考えられるが、本発明は、ネットワーク１７の種別及び接続形式に限定されない。
【００１６】
モニタリング拠点は、複数のカメラ１０、カメラサーバ１１、Ｗｅｂサーバ１２、一時蓄積サーバ１３及び検索サーバ１４が含まれる。カメラサーバ１１、Ｗｅｂサーバ１２、一時蓄積サーバ１３及び検索サーバ１４はそれぞれＬＡＮ等のネットワークを介して接続される。図１に示すモニタリング拠点には、カメラサーバ１１、Ｗｅｂサーバ１２、一時蓄積サーバ１３及び検索サーバ１４がそれぞれ一台ずつ含まれているが、複数含まれてもよい。
【００１７】
カメラ１０は、レンズを含む光学系装置、画像を電気信号に変換する撮像装置及び通信インターフェースを備える。例えば、カメラ１０は、ＩＰネットワークに接続可能なＩＰカメラ、及びシリアルバスで接続可能なＵＳＢカメラを用いることができる。
【００１８】
カメラ１０は、ネットワーク又はシリアルバスを介してカメラサーバ１１に接続される。カメラ１０は、撮影対象領域に設置され、撮影対象領域の画像を撮影することによって画像データを取得し、所定のフレームレート及び解像度で画像データを出力する。本実施例では、建造物内などの複数の固定位置にカメラ１０が設置されるものとする。それぞれのカメラ１０は、遠隔操作によってパン・チルト・ズーム操作が可能である。
【００１９】
以下の説明では、カメラ１０によって取得された画像データをリアルタイム画像データとも記載する。
【００２０】
各カメラ１０には、当該カメラ１０を一意に識別するためのカメラＩＤが予め付与される。カメラＩＤは、例えば、ＩＰアドレス等を用いることが考えられる。一時蓄積サーバ１３等は、カメラ１０に付与されたカメラＩＤに基づいて、カメラ１０を特定することができる。
【００２１】
なお、複数のカメラ１０は、二つ以上のカメラ１０から構成される複数のカメラ群に区分してもよい。例えば、建造物などの所定の領域（例えば、各フロア）に設定される複数のカメラ１０毎、又は、所定の台数のカメラ１０毎に複数のカメラ群に区分される。この場合、一つのカメラ群に対して一台のカメラサーバ１１を設置することができる。
【００２２】
カメラサーバ１１は、カメラ１０からリアルタイム画像データを受信し、Ｗｅｂサーバ１２又は一時蓄積サーバ１３にリアルタイム画像データを送信し、また、検索サーバ１４にリアルタイム画像データから生成されたサムネイル画像を送信する。
【００２３】
本実施例では、カメラサーバ１１は、Ｗｅｂサーバ１２を介してモニタ１５から画像リクエストを受信した場合、カメラ１０に対して画像リクエストを送信することによって最新のリアルタイム画像データ（例えば、１フレームの画像データ）を取得し、取得された最新の画像データをＷｅｂサーバ１２に送信する。
【００２４】
このとき、カメラサーバ１１は、取得されたリアルタイム画像データを一時的にキャッシュ領域に保存する。カメラサーバ１１は、キャッシュ領域に保存された過去のフレームのリアルタイム画像データ等その他の画像データについては、サムネイル画像データの生成及びリアルタイム画像データの特徴量の抽出等の画像処理を実行し、画像処理の結果に応じて一時蓄積サーバ１３にリアルタイム画像データを送信する。また、カメラサーバ１１は、前述した処理の実行後、キャッシュ領域から画像データを消去する。
【００２５】
ここで、サムネイル画像は、カメラ１０が撮影した画像データの解像度を小さくした画像データである。例えば、カメラ１０が６４０×４８０ドット（ＶＧＡ）の解像度の画像データを撮影する場合、カメラサーバ１１は、サムネイル画像として１２８×９６ドットの画像データを生成する。以下の説明では、カメラ１０によって撮影されたリアルタイム画像データ、及びサムネイル画像よりも高解像度の画像データを高精細度画像データとも記載する。
【００２６】
なお、カメラサーバ１１は、周期的に、例えば、１フレーム毎、１ＧＯＰ毎にカメラ１０に対して画像リクエストを送信することによって、カメラ１０からリアルタイム画像データを取得してもよい。画像リクエストを送信する間隔（フレームレート）は、任意に変更することができる。また、カメラサーバ１１を画像受信待機状態に設定し、カメラ１０からリアルタイム画像データを受信する度に、カメラサーバ１１が当該リアルタイム画像データを逐次処理してもよい。
【００２７】
なお、一台のカメラサーバ１１に接続するカメラ１０の数は、カメラサーバ１１が備える計算機リソースに応じて任意に選択することができる。
【００２８】
カメラサーバ１１の詳細な構成については図３を用いて後述する。
【００２９】
Ｗｅｂサーバ１２は、モニタ１５から画像リクエストを受信し、受信した画像リクエストをカメラサーバ１１に送信する。また、Ｗｅｂサーバ１２は、カメラサーバ１１から画像データを受信し、受信した画像データをモニタ１５に送信する。
【００３０】
具体的には、Ｗｅｂサーバ１２は、ネットワーク１７を介して画像リクエストを受信した場合、画像リクエストの宛先ポート番号に基づいてカメラサーバ１１を特定し、画像リクエストのアドレス及びポート番号を特定されたカメラサーバ１１のアドレス及びポート番号に変換し、カメラサーバ１１に当該画像リクエストを送信する。また、Ｗｅｂサーバ１２は、カメラサーバ１１から画像データを受信した場合、画像データの送信元のカメラサーバ１１を特定するポート番号が宛先ポートとして設定された画像データを、ネットワーク１７を介してモニタ１５に送信する。
【００３１】
このため、Ｗｅｂサーバ１２は、ポート番号及びカメラサーバ１１の対応関係を示すカメラＩＤ管理テーブル４０７（図４参照）を保持する。カメラＩＤ管理テーブル４０７に格納される情報は公知のものであるため詳細な説明を省略するが、例えば、画像リクエストを受信したポートと、画像リクエストの転送先の宛先を示すＵＲＬ等とが対応付けられた情報が格納される。
【００３２】
Ｗｅｂサーバ１２の詳細な構成については図４を用いて後述する。
【００３３】
一時蓄積サーバ１３は、カメラサーバ１１からリアルタイム画像データを受信し、当該リアルタイム画像データを撮影したカメラ１０のカメラＩＤ及び当該リアルタイム画像データが取得された時刻を対応付けたリアルタイム画像データを蓄積映像データとして格納する。
【００３４】
また、一時蓄積サーバ１３は、予め設定された時刻又はユーザからの指示に従って、格納される蓄積画像データをエンコードすることによって映像データを生成し、映像蓄積サーバ１６に生成された映像データを送信する。また、一時蓄積サーバ１３は、モニタ１５から送信される画像リクエストに基づいて、格納される蓄積画像データをモニタ１５に送信する。
【００３５】
なお、一時蓄積サーバ１３は、カメラサーバ１１に対して高精細度画像リクエストを送信することによって、画像データを取得してもよい。
【００３６】
一時蓄積サーバ１３の詳細な構成については図５を用いて後述する。
【００３７】
検索サーバ１４は、カメラサーバ１１によって抽出されたリアルタイム画像データの特徴量、及びカメラサーバ１１によって生成されたサムネイル画像データ１０２を格納する。また、検索サーバ１４は、モニタ１５から送信された検索リクエストに基づいて、検索サーバ１４に格納された画像データの特徴量を検索し、検索結果をモニタ１５に送信する。検索結果には、画像データの識別子及び低精細度画像データ等が含まれる。
【００３８】
監視センタは、映像データを蓄積する映像蓄積サーバ１６、及びカメラ１０によって撮影されたリアルタイム画像データを取得し、取得されたリアルタイム画像データを表示するモニタ１５を含む。
【００３９】
モニタ１５は、計算機システムの管理者が操作する計算機であり、複数のカメラ１０よって撮影された全てのリアルタイム画像データ、又は選択されたリアルタイム画像データを表示する。
【００４０】
また、モニタ１５は、所定のイベントの発生が検知された旨を通知するイベント通知を受信した場合、検知されたイベントに関する情報に基づいて、イベントに関係するリアルタイム画像データのフレームレートを変更する。なお、イベントに関する情報には、例えば、画像データ中の一部の領域の動きが検知されたことを示す「動き検知」、及び、画像データ中に人の顔が検知されたことを示す「顔検知」などのイベントの内容が含まれる。
【００４１】
また、モニタ１５は、一時蓄積サーバ１３から管理者によって選択されたカメラ１０に関連する蓄積画像データを取得し、又は蓄積画像データから生成された映像データを取得し、取得された画像データ又は映像データを高精細度で表示する。
【００４２】
映像蓄積サーバ１６は、一時蓄積サーバ１３によって生成された映像データを格納する。
【００４３】
図１では、カメラ１０及び各サーバを別々の装置として説明したが、一つの装置に複数の機能をまとめてもよい。例えば、カメラ１０が備えるプロセッサが、カメラサーバ１１が有する機能を実現するプログラムを実行することによって、カメラサーバ１１の機能を集約してもよい。
【００４４】
本発明では、以下のような特徴的な処理が行われる。
【００４５】
（１）カメラサーバ１１はリアルタイム画像データを解析することによってイベントの発生を検知する。カメラサーバ１１は検知されたイベントに関する情報を含むイベント通知をモニタ１５に送信する。モニタ１５は、イベントに関する情報に基づいて、カメラサーバ１１からリアルタイム画像データを取得するための画像リクエストの発行タイミング、すなわち、取得するリアルタイム画像データのフレームレートを決定する。検知されたイベントに応じてリアルタイム画像データのフレームレートを変更することによって、リアルタイム画像データの送信に伴うネットワーク１７の使用帯域を削減し、かつ、計算機システム全体の処理負荷を低減することができる。さらに、モニタリング拠点の効率的な監視を実現することができる。
【００４６】
（２）カメラサーバ１１はリアルタイム画像データを解析することによってイベントの発生を検知する。カメラサーバ１１は、検知されたイベントに基づいて、一時蓄積サーバ１３に送信するリアルタイム画像データのフレームレートを決定する。これによって、一時蓄積サーバ１３の記憶容量を節約し、また、不要なリアルタイム画像データの送信が抑制されるためモニタリング拠点におけるネットワーク帯域を節約することができる。
【００４７】
以下の説明では、（１）の処理を実施例１として説明し、（２）の処理を実施例２として説明する。
【実施例１】
【００４８】
図２は、本発明の実施例１におけるカメラサーバ１１のハードウェア構成の一例を説明するブロック図である。
【００４９】
カメラサーバ１１は、プロセッサ２１、メモリ２２、及びネットワークインタフェース２３を備える。なお、カメラサーバ１１は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の不揮発性記憶装置を備えてもよい。また、カメラサーバ１１は、マウス、キーボード、タッチパネル、及びディスプレイ等の入出力装置を備えてもよい。
【００５０】
プロセッサ２１は、メモリ２２に格納されるプログラムを実行する。プロセッサ２１がメモリ２２に格納されるプログラムを実行することによって、カメラサーバ１１が有する機能を実現することができる。以下の説明では、機能部を主語にして説明する場合には、当該機能部を実現するプログラムを実行するプロセッサ２１が処理を実行していることを示す。
【００５１】
メモリ２２は、プロセッサ２１によって実行されるプログラム及び当該プログラムの実行に必要な情報を格納する。また、メモリ２２は、一時的なキャッシュ領域を含んでもよい。
【００５２】
ネットワークインタフェース２３は、ネットワークを介して外部の装置と接続する。
【００５３】
なお、Ｗｅｂサーバ１２、一時蓄積サーバ１３、検索サーバ１４、映像蓄積サーバ１６、及びモニタ１５もカメラサーバ１１と同一のハードウェア構成であるものとする。
【００５４】
次に、各サーバの機能構成について説明する。
【００５５】
図３は、本発明の実施例１におけるカメラサーバ１１の機能構成の一例を説明するブロック図である。
【００５６】
カメラサーバ１１は、カメラ通信部３０１、特徴量抽出部３０２、フレームレート決定部３０３、検索サーバ通信部３０４、Ｗｅｂサーバ通信部３０５、一時蓄積サーバ通信部４０６、及び蓄積タイマ３０７を備え、また、イベント対応テーブル３０８を保持する。
【００５７】
カメラ通信部３０１は、カメラ１０との間の通信を行う。本実施例のカメラ通信部３０１は、カメラ１０に対して、所定の間隔（フレームレート）で画像リクエスト１０６を送信することによって、カメラ１０が撮影したリアルタイム画像データ１０１を取得する。また、カメラ通信部３０１は、カメラ１０に対してカメラ制御命令１０５を送信する。カメラ制御命令１０５には、カメラ１０におけるパン、チルト、ズーム等の操作のパラメータが含まれる。
【００５８】
特徴量抽出部３０２は、リアルタイム画像データ１０１から特徴量１０３を抽出する。特徴量１０３を抽出する方法としては、動き検知技術、及び顔検知技術等の画像解析技術が用いられる。動き検知技術は、負荷が軽い処理である背景差分法及びフレーム間差分法、並びに、負荷が大きい処理である動きベクトルを算出する方法等複数の種類があり、各方法を組み合わせてもよい。なお、人感センサ等のセンサの値を特徴量として用いてもよい。
【００５９】
また、特徴量抽出部３０２は、リアルタイム画像データ１０１から低精細度の画像データであるサムネイル画像データ１０２を生成する。特徴量１０３及びサムネイル画像データ１０２には、リアルタイム画像データ１０１を撮影したカメラ１０のカメラＩＤ、撮影時刻、及びリアルタイム画像データ１０１毎に割り振られる画像ＩＤが付与される。特徴量抽出部３０２は、生成されたサムネイル画像データ１０２及び抽出された特徴量１０３を検索サーバ通信部３０４に出力する。
【００６０】
また、特徴量抽出部３０２は、抽出された特徴量１０３を用いたイベント検知処理を実行することによってイベントの発生を検知し、検知されたイベントの解析結果をフレームレート決定部３０３に出力する。
【００６１】
フレームレート決定部３０３は、特徴量抽出部３０２から出力されたイベントの解析結果に基づいてイベント対応テーブル３０８を参照して、一時蓄積サーバ１３に送信するリアルタイム画像データ１０１のフレームレートを決定する。
【００６２】
イベント対応テーブル３０８は、イベントが検知された場合に適用されるリアルタイム画像データ１０１のフレームレートに関する情報を格納する。イベント対応テーブル３０８の詳細については図８を用いて後述する。
【００６３】
検索サーバ通信部３０４は、特徴量抽出部３０２から出力されたサムネイル画像データ１０２及び特徴量１０３を検索サーバ１４に送信する。
【００６４】
一時蓄積サーバ通信部３０６は、一時蓄積サーバ１３との間の通信を行う。本実施例の一時蓄積サーバ１３は、リアルタイム画像データ１０１に、当該リアルタイム画像データ１０１を撮影したカメラ１０のカメラＩＤ、撮影時刻、及び画像ＩＤを付与して、一時蓄積サーバ１３に送信する。また、一時蓄積サーバ通信部４０６は、一時蓄積サーバ１３から蓄積画像データ１０８を受信する。
【００６５】
Ｗｅｂサーバ通信部３０５は、Ｗｅｂサーバ１２との間で通信を行う。本実施例のＷｅｂサーバ通信部３０５は、Ｗｅｂサーバ１２から受信したカメラ制御命令１０５をカメラ通信部３０１に出力する。また、Ｗｅｂサーバ１２から受信した画像リクエスト１０６等の要求に基づいて、リアルタイム画像データ１０１及びイベント通知１０４をＷｅｂサーバ１２に送信する。Ｗｅｂサーバ１２に送信されるリアルタイム画像データ１０１には、リアルタイム画像データ１０１を撮影したカメラ１０のカメラＩＤが付与される。イベント通知１０４には、イベントの発生が検知されたリアルタイム画像データ１０１を撮影したカメラ１０のカメラＩＤ、画像ＩＤ、及びイベントの解析結果が含まれる。
【００６６】
なお、イベントの解析結果に基づいたフレームレートの決定処理については実施例２において説明する。
【００６７】
図４は、本発明の実施例１におけるＷｅｂサーバ１２の機能構成の一例を説明するブロック図である。
【００６８】
Ｗｅｂサーバ１２は、カメラサーバ通信部４０１、リクエスト処理部４０２、リクエスト受付部４０３、モニタ通信部４０４、検索サーバ通信部４０５、及び一時蓄積サーバ通信部４０６を備え、また、カメラＩＤ管理テーブル４０７を保持する。
【００６９】
カメラサーバ通信部４０１は、カメラサーバ１１との間の通信を行う。本実施例のカメラサーバ通信部４０１は、カメラ制御命令１０５及び画像リクエスト１０６をカメラサーバ１１に送信する。また、カメラサーバ通信部４０１は、リアルタイム画像データ１０１及びイベント通知１０４をカメラサーバ１１から受信し、受信したリアルタイム画像データ及びイベント通知１０４をリクエスト処理部４０２に出力する。
【００７０】
リクエスト受付部４０３は、画像リクエスト１０６及びイベントリクエスト１０７をモニタ１５から受信し、受信した画像リクエスト１０６及びイベントリクエスト１０７をリクエスト処理部４０２に出力する。
【００７１】
モニタ通信部４０４は、モニタ１５との間の通信を行う。本実施例のモニタ通信部４０４は、リクエスト処理部４０２の指示に従って、イベント通知１０４、リアルタイム画像データ１０１、蓄積画像データ１０８等をモニタ１５に送信する。
【００７２】
一時蓄積サーバ通信部４０６は、一時蓄積サーバ１３との間の通信を行う。本実施例の一時蓄積サーバ通信部４０６は、蓄積画像リクエスト１０９を一時蓄積サーバ１３に送信し、また、一時蓄積サーバ１３から蓄積画像データ１０８を受信する。蓄積画像リクエスト１０９には、カメラ１０のカメラＩＤ及び画像ＩＤが含まれる。
【００７３】
リクエスト処理部４０２は、各種リクエストを処理し、また、各種データを送信する。具体的には、以下のような処理が実行される。
【００７４】
リクエスト処理部４０２は、リクエスト受付部４０３から画像リクエスト１０６が入力された場合、画像リクエスト１０６に含まれるカメラＩＤに基づいてカメラＩＤ管理テーブル４０７を参照して、当該カメラＩＤに対応するカメラ１０を管理するカメラサーバ１１を特定する。さらに、リクエスト処理部４０２は、カメラサーバ通信部４０１を介して、特定されたカメラサーバ１１に画像リクエスト１０６を送信する。
【００７５】
また、リクエスト処理部４０２は、過去の画像データの取得を要求する画像リクエスト（図示省略）を受信した場合、一時蓄積サーバ通信部４０６を介して、蓄積画像リクエスト１０９を送信する。
【００７６】
また、リクエスト処理部４０２は、カメラサーバ通信部４０１からリアルタイム画像データ１０１が入力された場合、モニタ通信部４０４を介して、モニタ１５にリアルタイム画像データ１０１を送信する。リクエスト処理部４０２は、一時蓄積サーバ通信部４０６から蓄積画像データ１０８が入力された場合、モニタ通信部４０４を介して、モニタ１５に蓄積画像データ１０８を送信する。
【００７７】
また、リクエスト処理部４０２は、リクエスト受付部４０３からイベントリクエスト１０７が入力された場合、イベント待機状態に遷移する。リクエスト処理部４０２は、イベント待機状態である場合にカメラサーバ１１からイベント通知１０４を受信すると、モニタ１５にイベント通知を送信する。
【００７８】
以上がリクエスト処理部４０２が実行する処理の一例である。
【００７９】
検索サーバ通信部４０５は、検索サーバ１４との間の通信を行う。検索サーバ通信部４０５は、モニタ１５からユーザ検索クエリ画像データを含む画像検索リクエスト（図示省略）を受信した場合、ユーザ検索クエリ画像データの特徴量を抽出する。抽出される画像データの特徴量は、カメラサーバ１１が抽出する画像データの特徴量１０３と同一のものである。検索サーバ通信部４０５は、抽出された画像データの特徴量を含む画像検索リクエストを検索サーバ１４に送信する。
【００８０】
この場合、検索サーバ１４は、画像検索リクエストに含まれる特徴量と、検索サーバ１４が保持する画像データの特徴量１０３との間の類似度を算出し、類似度に基づいて、ユーザ検索クエリ画像データに類似するサムネイル画像データ１０２をＷｅｂサーバ１２に送信する。Ｗｅｂサーバ１２は、サムネイル画像データ１０２を受信した場合、モニタ通信部４０４を介して、モニタ１５にサムネイル画像データ１０２を送信する。
【００８１】
図５は、本発明の実施例１における一時蓄積サーバ１３の機能構成の一例を説明するブロック図である。
【００８２】
一時蓄積サーバ１３は、カメラサーバ通信部５０１、Ｗｅｂサーバ通信部５０２、画像リクエスト受付部５０３、画像蓄積部５０４、エンコード部５０５、映像蓄積サーバ通信部５０６、蓄積データ消去部５０７、及びタイマ５０８を備える。
【００８３】
画像蓄積部５０４は、蓄積画像データ１０８を格納する。
【００８４】
カメラサーバ通信部５０１は、カメラサーバ１１との間の通信を行う。本実施例のカメラサーバ通信部５０１は、カメラサーバ１１からリアルタイム画像データ１０１を受信し、当該リアルタイム画像データ１０１を画像蓄積部５０４に格納する。
【００８５】
Ｗｅｂサーバ通信部５０２は、Ｗｅｂサーバ１２との間の通信を行う。本実施例のＷｅｂサーバ通信部５０２は、Ｗｅｂサーバ１２から蓄積画像リクエスト１０９を受信した場合、画像リクエスト受付部５０３に受信した蓄積画像リクエスト１０９を出力する。
【００８６】
画像リクエスト受付部５０３は、Ｗｅｂサーバ通信部５０２から蓄積画像リクエスト１０９が入力された場合、当該蓄積画像リクエスト１０９に含まれるカメラ１０のカメラＩＤ及び画像ＩＤに基づいて、画像蓄積部５０４から蓄積画像データ１０８を取得し、Ｗｅｂサーバ通信部５０２を介して、Ｗｅｂサーバ１２に取得された蓄積画像データ１０８を送信する。
【００８７】
エンコード部５０５は、タイマ５０８又はユーザからの指示に基づいて、画像蓄積部５０４に格納される蓄積画像データ１０８から映像データ１１０を生成する。
【００８８】
映像蓄積サーバ通信部５０６は、映像蓄積サーバ１６との間の通信を行う。本実施例の映像蓄積サーバ通信部５０６は、エンコード部５０５によって生成された映像データ１１０を映像蓄積サーバ１６に送信する。
【００８９】
蓄積データ消去部５０７は、画像蓄積部５０４に格納される蓄積画像データ１０８を消去する。例えば、蓄積データ消去部５０７は、エンコード部５０５によって映像データ１１０にエンコードされた蓄積画像データ１０８を画像蓄積部５０４から消去する。
【００９０】
図６は、本発明の実施例１におけるモニタ１５の機能構成の一例を説明するブロック図である。
【００９１】
モニタ１５は、イベントリクエスト発行部６０１、フレームレート決定部６０２、画像リクエスト発行部６０３、蓄積画像リクエスト発行部６０４、サムネイル画像リクエスト発行部６０５、映像リクエスト発行部６０６、表示部６０７、カメラ制御命令発行部６０８、ユーザ要求受付部６０９、及びタイマ６１０を備え、また、イベント対応テーブル６１１を保持する。
【００９２】
モニタ１５は、Ｗｅｂサーバ１２のリクエスト受付部４０３に対して各種リクエストを発行することによって、リアルタイム画像データ１０１、サムネイル画像データ１０２、イベント通知１０４、及び蓄積画像データ１０８等の各種データを取得する。
【００９３】
イベントリクエスト発行部６０１は、Ｗｅｂサーバ１２に対してイベントリクエスト１０７を発行する。
【００９４】
フレームレート決定部６０２は、Ｗｅｂサーバ１２からイベント通知１０４を受信した場合、当該イベント通知１０４に含まれるイベントの解析結果を抽出する。フレームレート決定部６０２は、イベントの解析結果に基づいてイベント対応テーブル６１１を参照し、当該イベント通知に含まれるカメラ１０のカメラＩＤに対応するカメラ１０から取得する画像データのフレームレートを決定する。また、フレームレート決定部６０２は、カメラ１０のカメラＩＤと共に画像リクエスト発行部６０３に決定されたフレームレートを通知する。
【００９５】
イベント対応テーブル６１１は、イベントが検知された場合に適用されるリアルタイム画像データ１０１のフレームレートに関する情報を格納するイベント対応テーブル６１１はイベント対応テーブル３０８と同一のものである。
【００９６】
画像リクエスト発行部６０３は、Ｗｅｂサーバ１２に対して画像リクエスト１０６を発行する。また、画像リクエスト発行部６０３は、リアルタイム画像データ１０１を受信し、受信したリアルタイム画像データ１０１を表示部６０７に出力する。
【００９７】
本実施例では、画像リクエスト発行部６０３には、基準フレームレート（例えば、１分間に１回）が設定される。画像リクエスト発行部６０３は、通常の状態の場合、すなわち、イベントの発生が検知されていない場合、基準フレームレートに従ってＷｅｂサーバ１２に対して画像リクエスト１０６を発行する。これは、カメラ１０が正常に稼働しているか否かを確認するために行われる。なお、複数のカメラ１０は同一の基準フレームが適用されるものとする。
【００９８】
イベント対応テーブル６１１に登録されたイベントの発生が検知された場合、画像リクエスト発行部６０３は、通知されたカメラ１０のカメラＩＤに対応するカメラ１０に対して、フレームレート決定部６０２によって決定されたフレームレートに従って画像リクエスト１０６を発行する。すなわち、検知されたイベントに応じて画像リクエスト１０６を発行するタイミングが調整される。例えば、通知されたフレームレートが「１０ｆｐｓ」である場合、画像リクエスト発行部６０３は、１秒間に最大１０回の画像リクエスト１０６を発行する。
【００９９】
画像リクエスト発行部６０３は、フレームレート決定部６０２からフレームレートの通知を受けつけるとタイマ６１０を起動し、タイマ６１０から停止命令を受け取るまで、通知されたフレームレートに従ってＷｅｂサーバ１２に対して画像リクエスト１０６を発行する。タイマ６１０は、起動してから所定の時間が経過した後、画像リクエスト発行部６０３に停止命令を発行する。
【０１００】
なお、画像リクエスト発行部６０３は、管理者によって選択されたカメラ１０が撮影したリアルタイム画像データ１０１のフレームレートを最も高く設定するように制御してもよい。
【０１０１】
ユーザ要求受付部６０９は、管理者からの操作を受け付けて、操作に応じた制御内容を蓄積画像リクエスト発行部６０４、映像リクエスト発行部６０６、又はカメラ制御命令発行部６０８に出力する。例えば、所定の蓄積画像データの取得を要求する操作を受け付けた場合、ユーザ要求受付部６０９は、蓄積画像データ１０８の取得指示を蓄積画像リクエスト発行部６０４に出力する。ユーザ要求受付部６０９は、映像データ１１０の取得を要求する操作を受け付けた場合、映像データの取得指示を映像リクエスト発行部６０６に出力する。また、カメラ１０の制御に関する操作を受け付けた場合、ユーザ要求受付部６０９は、カメラ１０の制御指示をカメラ制御命令発行部６０８に出力する。
【０１０２】
蓄積画像リクエスト発行部６０４は、ユーザ要求受付部６０９から蓄積画像データ１０８の取得指示が入力されると、Ｗｅｂサーバ１２に対して一時蓄積サーバ１３に格納される蓄積画像データ１０８を取得するための蓄積画像リクエスト１０９を発行する。また、蓄積画像リクエスト発行部６０４は、Ｗｅｂサーバ１２を介して、一時蓄積サーバ１３から蓄積画像データ１０８を受信し、受信した蓄積画像データ１０８を表示部６０７に出力する。なお、蓄積画像リクエスト１０９には、カメラ１０のカメラＩＤ及び画像ＩＤが含まれる。
【０１０３】
サムネイル画像リクエスト発行部６０５は、Ｗｅｂサーバ１２に対して、検索サーバ１４からサムネイル画像データ１０２を取得するためのサムネイル画像リクエストを発行する。また、サムネイル画像リクエスト発行部６０５は、Ｗｅｂサーバ１２からサムネイル画像データ１０２を受信し、受信したサムネイル画像データ１０２を表示部６０７に出力する。なお、サムネイル画像リクエストにはイベント通知１０４に含まれる画像ＩＤが含まれる。
【０１０４】
映像リクエスト発行部６０６は、Ｗｅｂサーバ１２に対して、一時蓄積サーバ１３から映像データ１１０を取得するための映像リクエスト１１１を発行する。また、映像リクエスト発行部６０６は、Ｗｅｂサーバ１２を介して、一時蓄積サーバ１３から映像データ１１０を受信し、受信した映像データ１１０を表示部６０７に出力する。
【０１０５】
カメラ制御命令発行部６０８は、ユーザ要求受付部６０９からカメラ１０の制御指示が入力されると、Ｗｅｂサーバ１２に対してカメラ１０を制御するためのカメラ制御命令１０５を発行する。
【０１０６】
表示部６０７は、画像リクエスト発行部６０３、蓄積画像リクエスト発行部６０４、サムネイル画像リクエスト発行部６０５、及び映像リクエスト発行部６０６から出力されたリアルタイム画像データ１０１、サムネイル画像データ１０２、蓄積画像データ１０８及び映像データ１１０等に基づいて表示画面を生成し、ユーザに対して表示画面を表示する。ここで、表示部６０７によって表示される表示画面の一例について説明する。
【０１０７】
図７は、本発明の実施例１における表示部６０７が表示する表示画面７００の一例を示す説明図である。
【０１０８】
表示画面７００は、発報画像表示領域７０１、監視映像表示領域７０２、カメラ配置表示領域７０３、及び帯域チャート表示領域７０４を含む。
【０１０９】
発報画像表示領域７０１は、サムネイル画像リクエスト発行部６０５から入力されたサムネイル画像データ１０２が表示される領域である。なお、サムネイル画像データ１０２は、カメラ１０のカメラＩＤと共に表示される。
【０１１０】
監視映像表示領域７０２は、画像リクエスト発行部６０３から入力されたリアルタイム画像データ１０１が表示される領域である。監視映像表示領域７０２には、管理者によって選択された任意の台数のカメラ１０から取得されたリアルタイム画像データ１０１が表示される。図７では、管理者によって４台のカメラ１０が選択された場合の一例を示す。
【０１１１】
なお、監視映像表示領域７０２に表示可能なリアルタイム画像データ１０１の数に制限がある場合、表示部６０７は、イベント通知１０４に対応するリアルタイム画像データ１０１を撮影したカメラ１０を優先的に選択し、現在表示されている一つのリアルタイム画像データ１０１を、選択されたカメラ１０によって撮影されたリアルタイム画像データ１０１に切替えて表示する。なお、切替え対象のリアルタイム画像データ１０１は、管理者によって選択されていないカメラ１０によって撮影されたリアルタイム画像データ１０１の中から、表示時間が長い順に選択するものとする。
【０１１２】
カメラ配置表示領域７０３は、撮影対象領域におけるカメラ１０の物理的な配置位置示すマップを表示する。
【０１１３】
本実施例では、表示部６０７は、カメラ配置表示領域７０３に表示されるカメラ１０のアイコンのうち、イベントの発生が検知されたカメラ１０のアイコンの色を変更することによって、当該アイコンを強調して表示する。これによって、管理者はイベントの発生が検知されたカメラ１０の位置を把握できる。また、表示部６０７は、管理者によってカメラ配置表示領域７０３に表示されたカメラ１０のアイコンが操作された場合、監視映像表示領域７０２に当該カメラ１０に対応するリアルタイム画像データ１０１を表示してもよい。なお、管理者が、カメラ配置表示領域７０３の任意の箇所を選択することによって、周囲のカメラ１０のパン・チルトパラメータを変更するようにしてもよい。
【０１１４】
帯域チャート表示領域７０４は、ネットワーク１７におけるトラフィック量の時間推移を示すグラフを表示する。表示部６０７は、１秒間隔等、所定の時間間隔毎に受信したデータ量をプロットすることによって、逐次グラフを更新する。
【０１１５】
図８は、本発明の実施例１におけるイベント対応テーブル３０８の一例を示す説明図である。
【０１１６】
イベント対応テーブル３０８は、イベント内容８０１、イベント種別８０２及びフレームレート８０３が対応付けられたエントリを含む。
【０１１７】
イベント内容８０１は、カメラサーバ１１によって検知されたイベントの内容を示す情報を格納する。イベント種別８０２は、イベント内容の詳細な種別を示す情報を格納する。例えば、イベント内容８０１が「動き検知」のエントリのイベント種別８０２には、検知された動きの種別を示す情報が格納される。フレームレート８０３は、イベント種別８０２に対応するイベントが検知された場合に適用されるフレームレートを格納する。
【０１１８】
図８に示す例では、イベント内容８０１が「動き検知」、イベント種別８０２が「重機の動き」、フレームレート８０３が「１０ｆｐｓ」であるエントリ、イベント内容８０１が「動き検知」、イベント種別８０２が「人の動き」、フレームレート８０３「５ｆｐｓ」であるエントリが登録される。イベント対応テーブル３０８には、前述した以外のエントリが登録されてもよい。例えば、イベント内容８０１が「動き検知」、イベント種別８０２が「カメラのパン・チルト制御」、フレームレート８０３が「１ｆｐｓ」であるエントリが登録されてもよい。
【０１１９】
図８に示すイベント対応テーブル３０８は一例であって、複数のイベントのそれぞれについて異なったフレームレートを設定することができる。
【０１２０】
図９は、本発明の実施例１におけるリアルタイム画像データ１０１の取得処理の流れを説明するシーケンス図である。
【０１２１】
リアルタイム画像データ１０１の取得処理において、モニタ１５上ではイベント取得スレッド９５１及び画像取得スレッド９５２の二つの処理が並列して実行され、また、Ｗｅｂサーバ１２上ではイベント転送スレッド９６１及び画像転送スレッド９６２の二つの処理が並列して実行される。
【０１２２】
イベント取得スレッド９５１は、イベントリクエスト発行部６０１及びフレームレート決定部６０２が連携することによって実現され、画像取得スレッド９５２はフレームレート決定部６０２及び画像リクエスト発行部６０３が連携することによって実現される。また、イベント転送スレッド９６１は、リクエスト処理部４０２、リクエスト受付部４０３及びモニタ通信部４０４が連携することによって実現され、画像転送スレッド９６２は、カメラサーバ通信部４０１、リクエスト処理部４０２及びモニタ通信部４０４が連携することによって実現される。
【０１２３】
モニタ１５のイベント取得スレッド９５１は、Ｗｅｂサーバ１２に対してイベントリクエスト１０７を発行する。Ｗｅｂサーバ１２のイベント転送スレッド９６１は、イベントリクエスト１０７を受信した場合、イベント待機状態に遷移する（ステップＳ９０１）。なお、モニタ１５の画像取得スレッド９５２は、イベント通知１０４を受信していない場合でも、一定のフレームレート、例えば、一分に一回の頻度でＷｅｂサーバ１２に画像リクエスト１０６を送信しているものとする。これによって、カメラ１０との間の接続状態を確認できる。
【０１２４】
カメラ１０は、所定のフレームレートでリアルタイム画像データ１０１を撮影し、カメラサーバ１１に撮影されたリアルタイム画像データ１０１を送信する。なお、カメラサーバ１１がカメラ１０に対し、所定のフレームレートで画像リクエスト１０６を発行し、カメラ１０が、画像リクエスト１０６を受信した時に撮影したリアルタイム画像データ１０１を送信してもよい。
【０１２５】
カメラサーバ１１は、リアルタイム画像データ１０１を受信した場合、一時的にキャッシュ領域に受信したリアルタイム画像データ１０１を格納する。なお、カメラサーバ１１は、新たなリアルタイム画像データ１０１を受信した場合、キャッシュ領域に空きがあるか否かを判定し、キャッシュ領域に空きがない場合には、現在キャッシュ領域に格納されているリアルタイム画像データ１０１に新たなリアルタイム画像データ１０１を上書きする。例えば、撮影時刻が古いリアルタイム画像データ１０１から順に新たなリアルタイム画像データ１０１を上書きする方法が考えられる。
【０１２６】
カメラサーバ１１は、受信したリアルタイム画像データ１０１を用いてイベント検知処理を実行する。イベント検知処理の詳細については、図１０を用いて後述する。カメラサーバ１１は、イベント検知処理の結果、所定のイベントの発生が検知された場合（ステップＳ９０２）、検知されたイベントの内容、イベントの種別、カメラ１０のカメラＩＤを含むイベント通知１０４をＷｅｂサーバ１２に送信する。
【０１２７】
Ｗｅｂサーバ１２のイベント転送スレッド９６１は、イベント待機状態において、Ｗｅｂサーバ１２からイベント通知１０４を受信した場合、イベント待機状態を解除するとともに受信したイベント通知１０４をモニタ１５に転送する。
【０１２８】
モニタ１５のイベント取得スレッド９５１は、Ｗｅｂサーバ１２からイベント通知１０４を受信した場合、Ｗｅｂサーバ１２に対してイベントリクエスト１０７を発行し、また、フレームレート決定処理を実行する。Ｗｅｂサーバ１２はイベントリクエスト１０７を受信すると再びイベント待機状態に遷移する（ステップＳ９０３）。
【０１２９】
イベント取得スレッド９５１は、フレームレート決定処理によって決定されたフレームレートと共に、イベント通知１０４を画像取得スレッドに出力する。ここで、フレームレート決定処理について説明する。
【０１３０】
フレームレート決定処理では、フレームレート決定部６０２が、イベント通知１０４を受信すると、当該イベント通知１０４からイベントの解析結果、すなわち、イベントの内容及びイベントの種別を抽出する。フレームレート決定部６０２は、イベント対応テーブル６１１を参照して、イベント内容８０１及びイベント種別８０２が抽出されたイベントの内容及びイベントの種別と一致するエントリを検索する。フレームレート決定部６０２は、検索されたエントリのフレームレート８０３を、イベント通知１０４に含まれるカメラＩＤに対応するカメラ１０から取得するリアルタイム画像データ１０１のフレームレートに決定する。以上がフレームレート決定処理の説明である。
【０１３１】
画像取得スレッド９５２は、イベント通知１０４が入力された場合、タイマ６１０を起動し（ステップＳ９０４）、タイマ６１０から割り込みがあるまで、イベント通知１０４とともに入力されたフレームレートに従って、Ｗｅｂサーバ１２に対して画像リクエスト１０６を発行する（ステップＳ９０５）。なお、画像リクエスト発行部６０３は、カメラＩＤとフレームレートを対応付けた制御情報を生成し、当該制御情報に基づいて、各カメラ１０に対して発行する画像リクエスト１０６を調整してもよい。
【０１３２】
Ｗｅｂサーバ１２の画像転送スレッド９６２は、画像リクエスト１０６を受信した場合、カメラサーバ１１に受信した画像リクエスト１０６を送信する。
【０１３３】
カメラサーバ１１は、画像リクエスト１０６を受信した場合、キャッシュ領域に格納されたリアルタイム画像データ１０１をＷｅｂサーバ１２に送信する。なお、カメラサーバ１１は、撮影時刻が最も新しいリアルタイム画像データ１０１を送信するものとする。また、Ｗｅｂサーバ１２の画像転送スレッド９６２は、リアルタイム画像データ１０１を受信した場合、モニタ１５に受信したリアルタイム画像データ１０１を送信する。
【０１３４】
モニタ１５の画像取得スレッド９５２は、リアルタイム画像データ１０１を受信した場合、当該リアルタイム画像データ１０１に基づいて、表示画面７００を更新する。具体的には、画像リクエスト発行部６０３がリアルタイム画像データ１０１を受信し、受信したリアルタイム画像データ１０１を表示部６０７に出力する。表示部６０７は、受信したリアルタイム画像データ１０１を用いて表示画面７００を更新する。
【０１３５】
また、モニタ１５の画像取得スレッド９５２は、リアルタイム画像データ１０１を受信するまでの時間間隔を算出し、算出された時間間隔が現在設定されているフレームレート未満であるか否かを判定する。算出された時間間隔が現在設定されているフレームレート未満である場合、画像取得スレッド９５２は、算出された時間間隔とフレームレートとの差だけ待機し、その後、Ｗｅｂサーバ１２に対して画像リクエスト１０６を発行する。
【０１３６】
例えば、画像リクエスト１０６を送信した時刻をｔ１、リアルタイム画像データ１０１を受信した時刻をｔ２、フレームレートをＴとした場合、画像取得スレッド９５２は、下式（１）を用いて算出される時間だけ待機する。
【０１３７】
【数１】
2015133561.tif 000003
【０１３８】
タイマ６１０は、起動後に所定の時間経過した場合、現在設定されているフレームレートに基づくリアルタイム画像データ１０１の取得を停止させるために、画像取得スレッド９５２に対して割り込みを発生させる（ステップＳ９０６）。
【０１３９】
図１０は、本発明の実施例１におけるイベント検知処理の一例を説明するフローチャートである。図１０では、動き検知技術を用いたイベント解析処理を行うものとする。従って、イベントの内容は「動き検知」となる。
【０１４０】
なお、動き検知技術を用いたイベント解析処理は処理負荷の低い処理がよい。例えば、予め撮影された背景画像とリアルタイム画像データ１０１との差分値を算出する、背景差分法を用いることが考えられる。
【０１４１】
カメラサーバ１１は、カメラ１０からリアルタイム画像データ１０１を受信すると（ステップＳ１００１）、動き検知技術を用いたイベント解析処理を実行する（ステップＳ１００２）。具体的には、カメラ通信部３０１がカメラ１０からリアルタイム画像データ１０１を受信し、特徴量抽出部３０２に受信したリアルタイム画像データ１０１を出力する。特徴量抽出部３０２は、リアルタイム画像データ１０１を用いてイベント解析処理を実行する。
【０１４２】
カメラサーバ１１は、イベント解析処理の結果に基づいて、イベントが発生しているか否かを判定する（ステップＳ１００３）。イベントが発生していないと判定された場合、カメラサーバ１１は処理を終了し、リアルタイム画像データ１０１を受信するまで待機する。
【０１４３】
イベントが発生していると判定された場合、カメラサーバ１１は、発生したイベントの種別を判別するための処理を開始する（ステップＳ１００４からステップＳ１０１３）。すなわち、検知された動きが分類される。
【０１４４】
まず、カメラサーバ１１は、リアルタイム画像データ１０１から特徴点を算出し（ステップＳ１００４）、また、動きベクトルを算出する（ステップＳ１００５）。
【０１４５】
ステップＳ１００４では、リアルタイム画像データ１０１内において、周囲の輝度値との差が極大となるコーナ点等の特徴点が算出される。また、ステップＳ１００５では、特徴点毎に、リアルタイム画像データ１０１と、当該リアルタイム画像データ１０１を受信する前に受信したリアルタイム画像データ１０１とを比較することによって、動きベクトルが算出される。
【０１４６】
カメラサーバ１１は、リアルタイム画像データ１０１内において動きのある領域の大きさを特定するために、算出された動きベクトルから動き方向ヒストグラムを算出する（ステップＳ１００６）。カメラサーバ１１は、算出された動き方向ヒストグラムを参照して、当該ヒストグラムにピークが存在するか否かを判定する（ステップＳ１００７）。
【０１４７】
動き方向ヒストグラムにピークが存在する場合、リアルタイム画像データ１０１内で大きい領域が同一方向に動いていることを表す。一方、ピークが存在しない場合、動きがない、小さい領域が動いて言うこと、又はランダムな方向への動きであることのいずれかを表す。なお、ランダムな方向への動きには、リアルタイム画像データ１０１全体の明るさの変化に起因するものも含まれる。
【０１４８】
動き方向ヒストグラムにピークが存在すると判定された場合、カメラサーバ１１は、大きな領域の動きが重機の動き又はカメラの動きのいずれであるかを判別し、当該判別の結果から重機の動きであるか否かを判定する（ステップＳ１００８）。
【０１４９】
重機の動きであると判定された場合、カメラサーバ１１は、イベントの種別を「重機の動き」に決定し（ステップＳ１００９）、ステップＳ１０１４に進む。一方、重機の動きでない、すなわち、カメラの動きであると判定された場合、カメラサーバ１１は、イベントの種別を「カメラの動き」に決定し（ステップＳ１０１０）、ステップＳ１０１４に進む。
【０１５０】
ステップＳ１００７において、動き方向ヒストグラムにピークが存在しないと判定された場合、カメラサーバ１１は、人の動き又は溶接等の輝度変化のいずれであるかを判別し、当該判別の結果から人の動きであるか否かを判定する（ステップＳ１０１１）。
【０１５１】
人の動きであると判定された場合、カメラサーバ１１は、イベントの種別を「人の動き」に決定し（ステップＳ１０１２）、ステップＳ１０１４に進む。一方、人の動きではない、すなわち、溶接等の輝度の変化であると判定された場合、カメラサーバ１１は、イベントの種別を「溶接等の輝度の変化」に決定し（ステップＳ１０１３）、ステップＳ１０１４に進む。
【０１５２】
このとき、特徴量抽出部３０２は、サムネイル画像データ１０２も生成する。特徴量抽出部３０２は、イベントの内容「動き検知」、決定されたイベントの種別、画像ＩＤ、及びカメラＩＤをＷｅｂサーバ通信部３０５に出力する。
【０１５３】
カメラサーバ１１は、イベント通知１０４を生成して、生成されたイベント通知１０４をＷｅｂサーバ１２に送信し（ステップＳ１０１４）、処理を終了する。カメラサーバ１１は、リアルタイム画像データ１０１を受信するまで待機する。具体的には、Ｗｅｂサーバ通信部３０５が、特徴量抽出部３０２から入力された、イベントの内容、イベントの種別、画像ＩＤ及びカメラＩＤを用いてイベント通知１０４を生成し、生成されたイベント通知１０４をＷｅｂサーバ１２に送信する。
【０１５４】
以上説明したように、実施例１によれば、モニタ１５は、カメラサーバ１１によって検知されたイベントに基づいて、カメラ１０から取得する画像データのフレームレートを決定し、決定されたフレームレートの画像データを取得することができる。すなわち、重要度の高いイベントのフレームレートを高く設定することによって高解像度の画像データを取得でき、重要度の低いイベントのフレームレートを低く設定することによって低解像度の画像データを取得できる。
【０１５５】
これによって、重要度の高いイベントについては、高解像度の画像データを用いた監視が可能となり、重要度の低いイベントについては送信する画像データのデータ量を削減することが可能となる。従って、ネットワーク帯域の負荷を低減し、かつ、効率的な監視を実現することができる。
【０１５６】
（変形例）
実施例１では、モニタ１５が決定されたフレームレートに従って画像リクエスト１０６を発行するタイミングを調整していた。変形例では、Ｗｅｂサーバ１２が、画像リクエスト１０６を送信するタイミングを調整する。
【０１５７】
変形例では、モニタ１５の画像リクエスト発行部６０３には、最も高いフレームレートが基準フレームレートとして設定される。画像リクエスト発行部６０３は、設定されているフレームレートに従ってＷｅｂサーバ１２に対して画像リクエスト１０６を発行する。
【０１５８】
変形例のモニタ１５には、フレームレート決定部６０２及びイベント対応テーブル６１１がなく、Ｗｅｂサーバ１２がフレームレート決定部６０２及びイベント対応テーブル６１１を備える。変形例のカメラサーバ１１及び一時蓄積サーバ１３は、実施例１と同一のものである。
【０１５９】
Ｗｅｂサーバ１２のフレームレート決定部６０２は、カメラサーバ１１からイベント通知１０４を受信した場合に、検知されたイベントに応じてフレームレートを決定し、決定されたフレームレートの情報をリクエスト処理部４０２に出力する。なお、フレームレート決定部６０２がフレームレートを決定する方法は、実施例１と同一の方法であるため説明を省略する。
【０１６０】
Ｗｅｂサーバ１２のリクエスト処理部４０２は、イベントの発生の検知前は、最も低いフレームレートになるようにモニタ１５から受信した画像リクエスト１０６の送信タイミングに遅延を発生させる。一方、リクエスト処理部４０２は、フレームレート決定部６０２からフレームレートの情報が入力されると、カメラＩＤ及び決定されたフレームレートを対応付けた制御情報を生成する。また、リクエスト処理部４０２は、制御情報に従ってモニタ１５から受信した画像リクエスト１０６の送信タイミングを調整する。例えば、リクエスト処理部４０２は、最も高いフレームレートの場合、モニタ１５から受信した画像リクエスト１０６をそのまま送信し、他のフレームレートの場合、所定時間だけ遅延させた後に画像リクエスト１０６を送信する。
【０１６１】
その他の処理は実施例１と同一であるため説明を省略する。
【実施例２】
【０１６２】
次に、実施例２について実施例１との差異を中心に説明する。
【０１６３】
実施例２の各装置のハードウェア構成及び機能構成は実施例１と同一であるため説明を省略する。実施例２では、カメラサーバ１１が、検知されたイベントに応じて一時蓄積サーバ１３に送信するリアルタイム画像データ１０１のフレームレートを変更する。
【０１６４】
図１１Ａは、本発明の実施例２におけるリアルタイム画像データ１０１の蓄積処理及び一時蓄積サーバ１３に格納された蓄積画像データ１０８の取得処理の流れを説明するシーケンス図である。図１１Ｂは、本発明の実施例２における映像データ１１０の取得処理の流れを説明するシーケンス図である。
【０１６５】
なお、図１１Ａ及び図１１Ｂの説明では、イベント取得スレッド９５１、画像取得スレッド９５２、イベント転送スレッド９６１及び画像転送スレッド９６２を省略している。
【０１６６】
まず、図１１Ａを用いてリアルタイム画像データ１０１の蓄積処理及び一時蓄積サーバ１３に格納された蓄積画像データ１０８の取得処理について説明する。
【０１６７】
カメラ１０は、所定のフレームレートでリアルタイム画像データ１０１を撮影し、カメラサーバ１１にリアルタイム画像データ１０１を送信する。なお、カメラサーバ１１がカメラ１０に対し、所定のフレームレートで画像リクエスト１０６を発行し、カメラ１０が、画像リクエスト１０６を受信した時に撮影したリアルタイム画像データ１０１を送信してもよい。
【０１６８】
カメラサーバ１１は、蓄積可能時間における開始時刻が経過すると蓄積処理を開始する（ステップＳ１１０１）。ここで、蓄積可能時間とは、カメラサーバ１１が、一時蓄積サーバ１３にリアルタイム画像データ１０１を蓄積する時間を示す。蓄積可能時間は、管理者によって設定される時間であり、施工現場において作業時間、夜間の監視時間などが設定される。例えば、午前６時から午後６時までを蓄積可能時間として設定した場合、カメラサーバ１１は、午前６時になると蓄積処理を開始し、午後６時になると蓄積処理を停止する。
【０１６９】
本実施例では、カメラサーバ１１は、蓄積可能時間内において、イベントが検知されない場合でも、低いフレームレートでリアルタイム画像データ１０１を一時蓄積サーバ１３に送信する。例えば、カメラサーバ１１は、１分間に１つのフレームレートで、リアルタイム画像データ１０１を一時蓄積サーバ１３に送信する。なお、イベントが検知されない場合には、リアルタイム画像データ１０１を送信しないように制御してもよい。なお、蓄積可能時間以外の時間では、カメラサーバ１１は、一時蓄積サーバ１３へのリアルタイム画像データ１０１を送信しない。
【０１７０】
モニタ１５のイベント取得スレッド９５１は、実施例１と同様に、Ｗｅｂサーバ１２に対してイベントリクエスト１０７を発行する。Ｗｅｂサーバ１２のイベント転送スレッド９６１は、イベントリクエスト１０７を受信した場合、イベント待機状態に遷移する（ステップＳ１１０２）。
【０１７１】
カメラサーバ１１は、リアルタイム画像データ１０１を受信した場合、一時的にキャッシュ領域に受信したリアルタイム画像データ１０１を格納する。また、カメラサーバ１１は、受信したリアルタイム画像データ１０１を用いてイベント検知処理を実行する。イベント検知処理の詳細については、図１２Ａ及び図１２Ｂを用いて後述する。カメラサーバ１１は、イベント検知処理の結果、所定のイベントの発生が検知された場合（ステップＳ１１０３）、検知されたイベントの内容、イベントの種別、画像ＩＤ、及びカメラＩＤを含むイベント通知１０４をＷｅｂサーバ１２に送信する。
【０１７２】
また、カメラサーバ１１は、検知されたイベントの解析結果に基づいて一時蓄積サーバ１３に送信するリアルタイム画像データ１０１のフレームレートを決定し、蓄積タイマ３０７を起動する（ステップＳ１１０４）。その後、カメラサーバ１１は、蓄積タイマ３０７から割り込みがあるまで、決定されたフレームレートに従って、一時蓄積サーバ１３にリアルタイム画像データ１０１を送信する。なお、実施例２ではフレームレート決定処理はイベント検知処理に含まれる。
【０１７３】
一時蓄積サーバ１３は、カメラサーバ１１からリアルタイム画像データ１０１を受信すると、当該リアルタイム画像データ１０１に通し番号を付与して蓄積画像データ１０８として画像蓄積部５０４に格納する。
【０１７４】
モニタ１５のイベント取得スレッド９５１は、Ｗｅｂサーバ１２からイベント通知１０４を受信した場合、Ｗｅｂサーバ１２に対してイベントリクエスト１０７を発行する。Ｗｅｂサーバ１２はイベントリクエスト１０７を受信すると再びイベント待機状態に遷移する（ステップＳ１１０５）。
【０１７５】
カメラサーバ１１は、蓄積タイマ３０７の起動中にイベントの発生が検知された場合（ステップＳ１１０６）、蓄積タイマ３０７を延長する（ステップＳ１１０７）。具体的には、カメラサーバ１１は、蓄積タイマ３０７の経過時間を「０」に設定し、新たにイベントの発生が検知された時刻からカウントを開始する。
【０１７６】
カメラサーバ１１は、新たなイベントの発生が検知されることなく所定の時間が経過すると、蓄積タイマ３０７は、割り込みを発生させる（ステップＳ１１０８）。また、カメラサーバ１１は、蓄積可能時間の終了時刻が経過すると、蓄積処理を停止する（ステップＳ１１０９）。カメラサーバ１１は、蓄積可能時間の開始時刻が経過すると、蓄積処理を再開する。
【０１７７】
モニタ１５は、管理者から一時蓄積サーバ１３に格納される蓄積画像データ１０８の取得指示を受け付けると、Ｗｅｂサーバ１２に対して蓄積画像リクエスト１０９を発行する。蓄積画像リクエスト１０９には、カメラＩＤ及び通し番号が含まれる。
【０１７８】
Ｗｅｂサーバ１２は、蓄積画像リクエスト１０９を受信した場合、一時蓄積サーバ１３に当該蓄積画像リクエスト１０９を送信する。なお、一時蓄積サーバ１３が複数存在する場合、Ｗｅｂサーバ１２は、蓄積画像リクエスト１０９に含まれるカメラＩＤに基づいて、当該カメラＩＤに対応する蓄積画像データ１０８を格納する一時蓄積サーバ１３を特定し、特定された一時蓄積サーバ１３に蓄積画像リクエスト１０９を送信する。
【０１７９】
一時蓄積サーバ１３は、蓄積画像リクエスト１０９を受信した場合、蓄積画像リクエスト１０９に含まれるカメラＩＤ及び通し番号に基づいて画像蓄積部５０４から蓄積画像データ１０８を読み出し、読み出された蓄積画像データ１０８をＷｅｂサーバ１２に送信する。Ｗｅｂサーバ１２は、一時蓄積サーバ１３から蓄積画像データ１０８を受信した場合、モニタ１５に受信した蓄積画像データ１０８を送信する。
【０１８０】
次に、図１１Ｂを用いて映像データ１１０の取得処理について説明する。
【０１８１】
一時蓄積サーバ１３は、周期的又は管理者の指示に従って、画像蓄積部５０４から、カメラ１０毎に所定時間の蓄積画像データ１０８を読み出して、読み出された蓄積画像データ１０８をエンコードすることによって映像データ１１０を生成する（ステップＳ１１１０）。映像データ１１０には、カメラＩＤ及び映像データ１１０の生成に用いられた蓄積画像データ１０８の撮影時刻が付与される。なお、一時蓄積サーバ１３は、所定の時間単位、例えば、１時間単位に蓄積画像データ１０８を区切って、１時間単位毎の映像データ１１０を生成してもよい。
【０１８２】
一時蓄積サーバ１３は、生成された映像データ１１０を映像蓄積サーバ１６に送信する。また、一時蓄積サーバ１３は、映像データ１１０の生成時に読み出された蓄積画像データ１０８を画像蓄積部５０４から消去する（ステップＳ１１１１）。
【０１８３】
モニタ１５は、管理者から映像データ１１０の取得指示を受け付けると、Ｗｅｂサーバ１２に対して映像リクエスト１１１を発行する。映像リクエスト１１１にはカメラＩＤ及び撮影時刻が含まれる。Ｗｅｂサーバ１２は、映像リクエスト１１１を受信した場合、当該映像リクエスト１１１を映像蓄積サーバ１６に送信する。
【０１８４】
映像蓄積サーバ１６は、映像リクエスト１１１を受信した場合、カメラＩＤ及び撮影時刻に基づいて映像データ１１０を特定する。映像蓄積サーバ１６は、特定された映像データ１１０を読み出して、Ｗｅｂサーバ１２に読み出された映像データ１１０を送信する。
【０１８５】
Ｗｅｂサーバ１２は、映像データ１１０を受信した場合、モニタ１５に当該映像データ１１０を送信する。
【０１８６】
図１２Ａ及び図１２Ｂは、本発明の実施例２におけるイベント検知処理の一例を説明するフローチャートである。
【０１８７】
ステップＳ１００１からステップＳ１０１４の処理は実施例１と同一の処理であるため説明を省略する。
【０１８８】
ステップＳ１００３においてイベントが発生していないと判定された場合、カメラサーバ１１はステップＳ１２０３に進む。
【０１８９】
カメラサーバ１１は、イベントの種別を「重機の動き」に決定した後（ステップＳ１００９）、イベント対応テーブル３０８を参照して、イベントの発生が検知されたカメラ１０のリアルタイム画像データ１０１に適用するフレームレートを「１０ｆｐｓ」に設定する（ステップＳ１２０１）。その後、カメラサーバ１１は、ステップＳ１０１４に進む。
【０１９０】
具体的には、特徴量抽出部３０２が、イベントの種別「重機の動き」をフレームレート決定部３０３に出力する。フレームレート決定部３０３は、イベント対応テーブル３０８を参照してイベント種別８０２が「重機の動き」であるエントリを検索する。これによって、フレームレートが「１０ｆｐｓ」に決定される。フレームレート決定部３０３は、カメラＩＤと共に検索されたエントリのフレームレート８０３の値「１０ｆｐｓ」を一時蓄積サーバ通信部３０６に出力する。一時蓄積サーバ通信部３０６は、カメラＩＤ及びフレームレートを対応付けた制御情報を一時的に生成し、当該制御情報に基づいて、各カメラ１０のリアルタイム画像データ１０１の送信タイミングを調整してもよい。
【０１９１】
また、カメラサーバ１１は、イベントの種別を「人の動き」に決定した後（ステップＳ１０１２）、イベント対応テーブル３０８を参照して、イベントの発生が検知されたカメラ１０のリアルタイム画像データ１０１に適用するフレームレートを「５ｆｐｓ」に設定する（ステップＳ１２０２）。その後、カメラサーバ１１は、ステップＳ１０１４に進む。
【０１９２】
具体的には、特徴量抽出部３０２が、イベントの種別「人の動き」をフレームレート決定部３０３に出力する。フレームレート決定部３０３は、イベント対応テーブル３０８を参照してイベント種別８０２が「人の動き」であるエントリを検索する。これによって、フレームレートが「５ｆｐｓ」に決定される。フレームレート決定部３０３は、カメラＩＤと共に検索されたエントリのフレームレート８０３の値「５ｆｐｓ」を一時蓄積サーバ通信部３０６に出力する。一時蓄積サーバ通信部３０６は、カメラＩＤ及びフレームレートを対応付けた制御情報を一時的に生成し、当該制御情報に基づいて、各カメラ１０のリアルタイム画像データ１０１の送信タイミングを調整してもよい。
【０１９３】
例えば、モニタリング拠点がプラント施工の現場である場合、重機が挙動は危険な事象が発生する要因が高いため、最も高いフレームレートを設定する。人の挙動については、次に高いフレームレートを設定する。また、パン・チルト・ズームパラメータの変更に伴うカメラの動き、又は、溶接等の輝度の変化については最も低いフレームレートを設定する。
【０１９４】
本実施例では、カメラサーバ１１は、最も低いフレームレートでリアルタイム画像データ１０１を送信しているため、イベント種別が「カメラの動き」又は「溶接等の輝度変化」に決定された後、特に処理を行っていない。しかし、フレームレート決定部３０３は、ステップＳ１０１０又はステップＳ１０１３の処理の後、一時蓄積サーバ通信部３０６にフレームレートに変更がない旨を出力してもよい。また、イベントの発生が検知される前のフレームレートより低いフレームレートに変更される場合、フレームレート決定部３０３は、決定されたフレームレートを一時蓄積サーバ通信部３０６に出力してもよい。
【０１９５】
カメラサーバ１１は、生成されたイベント通知１０４をＷｅｂサーバ１２に送信した後（ステップＳ１０１４）、リアルタイム画像データ１０１を受信した時刻が蓄積可能時間内であるか否かを判定する（ステップＳ１２０３）。
【０１９６】
リアルタイム画像データ１０１を受信した時刻が蓄積可能時間内でないと判定された場合、カメラサーバ１１は、リアルタイム画像データ１０１の送信を行わず、次にリアルタイム画像データ１０１を受信するまで待機する（ステップＳ１２１１）。
【０１９７】
リアルタイム画像データ１０１を受信した時刻が蓄積可能時間内であると判定された場合、カメラサーバ１１は、受信したリアルタイム画像データ１０１を撮影したカメラ１０におけるフレームレートを変更する必要があるか否かを判定する（ステップＳ１２０４）。具体的には、カメラサーバ１１は、特徴量抽出部３０２から新たなフレームレートの通知が入力されたか否かを判定する。
【０１９８】
受信したリアルタイム画像データ１０１を撮影したカメラ１０におけるフレームレートを変更する必要があると判定された場合、カメラサーバ１１は、蓄積タイマ３０７が起動されているか否かを判定する（ステップＳ１２０５）。
【０１９９】
蓄積タイマ３０７が起動されていると判定された場合、カメラサーバ１１は、蓄積タイマ３０７を延長し（ステップ１２０６）、その後ステップＳ１２０８に進む。
【０２００】
蓄積タイマ３０７が起動されていないと判定された場合、カメラサーバ１１は、蓄積タイマ３０７を起動し（ステップＳ１２０７）、その後ステップＳ１２０８に進む。
【０２０１】
カメラサーバ１１は、転送管理情報を参照して、所定のフレームレートでリアルタイム画像データ１０１を一時蓄積サーバ１３に送信する（ステップＳ１２０８）。その後、次にリアルタイム画像データ１０１を受信するまで待機する。
【０２０２】
例えば、カメラ１０がフレームレート「２０ｆｐｓ」でリアルタイム画像データ１０１を送信し、一時蓄積サーバ１３に転送するフレームレートが「１０ｆｐｓ」である場合、カメラサーバ１１は、二つのリアルタイム画像データ１０１を受信する度に、一つのリアルタイム画像データ１０１を一時蓄積サーバ１３に送信する。
【０２０３】
ステップＳ１１０４において、受信したリアルタイム画像データ１０１を撮影したカメラ１０におけるフレームレートを変更する必要がないと判定された場合、カメラサーバ１１は、蓄積タイマ３０７が起動されているか否かを判定する（ステップＳ１２０９）。
【０２０４】
蓄積タイマ３０７が起動していると判定された場合、カメラサーバ１１は、転送管理情報を参照して、所定のフレームレートでリアルタイム画像データ１０１を一時蓄積サーバ１３に送信する（ステップＳ１２０８）。その後、次にリアルタイム画像データ１０１を受信するまで待機する。
【０２０５】
蓄積タイマ３０７が起動していないと判定された場合、カメラサーバ１１は、既定のフレームレートでリアルタイム画像データ１０１を一時蓄積サーバ１３に送信する（ステップＳ１２１０）。その後、次にリアルタイム画像データ１０１を受信するまで待機する。
【０２０６】
なお、ステップＳ１１０３からステップＳ１１１１までの処理は、一時蓄積サーバ通信部３０６によって実行される。
【０２０７】
以上説明したように、実施例２によれば、カメラサーバ１１は、検知されたイベントに基づいて、一時蓄積サーバ１３に送信する画像データのフレームレートを決定し、決定されたフレームレートの画像データを一時蓄積サーバ１３に送信する。すなわち、重要度の高いイベントのフレームレートを高く設定することによって高解像度の画像データを一時蓄積サーバ１３に格納し、重要度の低いイベントのフレームレートを低く設定することによって低解像度の画像データを一時蓄積サーバ１３に格納する。
【０２０８】
重要度の高いイベントについては高解像度の画像データが格納されるため、必要に応じて高解像度の画像データを取得することができ、また、高解像度の画像データから映像データを生成することができる。また、重要度の低いイベントについては低解像度の画像データが格納されるため、一時蓄積サーバ１３の蓄積容量を節約することができ、また、画像データの転送に伴うネットワークの負荷も低減することができる。従って、ネットワーク帯域の負荷を低減し、かつ、効率的な監視を実現することができる。
【０２０９】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０２１０】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の記憶媒体に置くことができる。
【０２１１】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０２１２】
１０  カメラ
１１  カメラサーバ
１２  Ｗｅｂサーバ
１３  一時蓄積サーバ
１４  検索サーバ
１５  モニタ
１６  映像蓄積サーバ
１７  ネットワーク
２１  プロセッサ
２２  メモリ
２３  ネットワークインタフェース
３０１  カメラ通信部
３０２  特徴量抽出部
３０３  フレームレート決定部
３０４  検索サーバ通信部
３０５  Ｗｅｂサーバ通信部
３０６  一時蓄積サーバ通信部
３０７  蓄積タイマ
３０８  イベント対応テーブル
４０１  カメラサーバ通信部
４０２  リクエスト処理部
４０３  リクエスト受付部
４０４  モニタ通信部
４０５  検索サーバ通信部
４０６  一時蓄積サーバ通信部
４０７  カメラＩＤ管理テーブル
５０１  カメラサーバ通信部
５０２  Ｗｅｂサーバ通信部
５０３  画像リクエスト受付部
５０４  画像蓄積部
５０５  エンコード部
５０６  映像蓄積サーバ通信部
５０７  蓄積データ消去部
５０８  タイマ
６０１  イベントリクエスト発行部
６０２  フレームレート決定部
６０３  画像リクエスト発行部
６０４  蓄積画像リクエスト発行部
６０５  サムネイル画像リクエスト発行部
６０６  映像リクエスト発行部
６０７  表示部
６０８  カメラ制御命令発行部
６０９  ユーザ要求受付部
６１０  タイマ
６１１  イベント対応テーブル
【図１】
2015133561.tif 000004
【図２】
2015133561.tif 000005
【図３】
2015133561.tif 000006
【図４】
2015133561.tif 000007
【図５】
2015133561.tif 000008
【図６】
2015133561.tif 000009
【図８】
2015133561.tif 000010
【図９】
2015133561.tif 000011
【図１０】
2015133561.tif 000012
【図１１Ａ】
2015133561.tif 000013
【図１１Ｂ】
2015133561.tif 000014
【図１２Ａ】
2015133561.tif 000015
【図１２Ｂ】
2015133561.tif 000016
【図７】
2015133561.tif 000017