(57)【要約】      （修正有）【課題】ビデオ監視システムにおけるサムネイル画像の要求を処理する。【解決手段】それぞれが少なくとも１つのビデオ監視カメラから受け取られたビデオデータを格納する複数の記録サーバを備えるビデオ監視システムにおいて、特定のビデオカメラ及び特定の録画サーバを示す情報を含むサムネイル要求を、メインキュー２００が受け取る。サムネイル要求は、特定の記録サーバに対応する記録サーバキュー２５０に割り当てられる。記録サーバキューに関連付けられたアイドル状態のリソースプロセッサ２６０がサムネイル要求を処理するために利用可能でない場合、記録サーバキューに関連付けられたリソースプロセッサの数が判定され、これが最大数未満である場合、サムネイル要求を処理するために新しいリソースプロセッサが開始され、サムネイル要求を処理した後、新しいリソースプロセッサはアイドル状態にされる。【選択図】図２
2020087466.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが少なくとも１つのビデオ監視カメラから受け取られたビデオデータを格納する複数の記録サーバを備えるビデオ監視システムにおいてサムネイル画像の要求を処理する方法であって、
サムネイル画像を要求する特定のビデオカメラと、前記特定のビデオカメラからのビデオデータを格納する特定の記録サーバと、を示す情報を含む、メインキューへのサムネイル要求を受け取ることと、
前記サムネイル要求を、前記特定の記録サーバに対応する記録サーバキューに割り当てることと、
前記記録サーバキューに関連付けられたアイドル状態のリソースプロセッサが前記サムネイル要求を処理するために利用可能であるかどうかを判定することと、
アイドル状態のリソースプロセッサが利用可能である場合、前記リソースプロセッサを用いて前記サムネイル要求を処理することと、
アイドル状態のリソースプロセッサが利用可能ではない場合、
（ｉ）前記記録サーバキューに関連付けられているリソースプロセッサの数を判定することと、
（ｉｉ）前記リソースプロセッサの数が最大数未満である場合、新しいリソースプロセッサを開始して前記サムネイル要求を処理し、
（ｉｉｉ）前記新しいリソースプロセッサを、前記サムネイル要求を処理した後にアイドル状態にすることと、
を含む方法。
【請求項２】
前記最大数のリソースプロセッサが前記記録サーバキューに関連付けられている場合、リソースプロセッサが利用可能になるまで、前記サムネイル要求が前記記録サーバキューに保持される、請求項１に記載の方法。
【請求項３】
リソースプロセッサは、サムネイル要求を処理することなく予め定められた期間アイドル状態にある場合に、終了される、請求項１又は２に記載の方法。
【請求項４】
各リソースプロセッサがビデオカメラに関連付けられ、前記アイドル状態のリソースプロセッサが前記サムネイル要求を処理するために利用可能であるかどうかを判定することは、前記サムネイル画像が要求される前記特定のカメラに関連付けられたアイドル状態のリソースプロセッサが利用可能であるかどうかを判定することを含む、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記サムネイル画像が要求される前記カメラに関連付けられているアイドル状態のリソースプロセッサが利用可能ではなく、前記最大数のリソースプロセッサが前記記録サーバに関連付けられている場合に、前記記録サーバに関連付けられたアイドル状態のリソースプロセッサが存在するかどうかを判定し、存在する場合、前記アイドル状態のリソースプロセッサのうちの１つを終了して、前記サムネイル画像が要求される前記カメラに関連付けられる新しいリソースプロセッサを開始することを含む、請求項４に記載の方法。
【請求項６】
前記記録サーバキューの全体にわたってアクティブになることができるアクティブなリソースプロセッサの最大の総数が存在し、新しいリソースプロセッサを開始する又はアイドル状態のリソースプロセッサをアクティブ化する前に、前記アクティブなリソースプロセッサの最大の総数に達しているかどうかを確認することを含む、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記アクティブなリソースプロセッサの最大の総数に達している場合、前記記録サーバキューに前記サムネイル要求を維持する、請求項６に記載の方法。
【請求項８】
サムネイル要求が処理されるとき、前記記録サーバからサムネイル画像が取得され、サムネイルキャッシュに格納される、請求項１から７のいずれか１項に記載の方法。
【請求項９】
前記サムネイル要求が前記メインキューによって受け取られたときに、前記要求されたサムネイル画像が前記サムネイルキャッシュに格納されているかどうかを判定し、格納されている場合、前記サムネイルキャッシュから前記サムネイル画像を取得する、請求項８に記載の方法。
【請求項１０】
前記サムネイルキャッシュは最大容量を有し、前記最大容量に達したときに、最も過去に使用されたサムネイル画像が前記サムネイルキャッシュから削除される、請求項８又は９に記載の方法。
【請求項１１】
サムネイル画像が、予め定められた期間使用されていない場合に、前記サムネイルキャッシュから削除される、請求項８から１０のいずれか１項に記載の方法。
【請求項１２】
記録サーバキューは、所定期間にわたって、保留中のサムネイル要求を有しておらず及び新たな要求を受け取っていない場合に、終了される、請求項１から１１のいずれか１項に記載の方法。
【請求項１３】
前記特定のビデオカメラからのビデオデータが格納されている記録サーバに対応する記録サーバキューが存在しない場合に、記録サーバキューの総数が最大数未満であるかどうかを判定することと、前記最大数未満である場合に、前記特定のビデオカメラからのビデオデータが格納されている前記記録サーバに対応する新しい記録サーバキューを生成することと、を含む、請求項１から１２のいずれか１項に記載の方法。
【請求項１４】
前記記録サーバキューの最大数に達しており、新しい記録サーバキューが必要とされ、前記記録サーバキューのうちの１つが保留中のサムネイル要求を有していない場合、保留中のサムネイル要求を有していない前記記録サーバキューが終了され、前記新しい記録サーバキューが開始される、請求項１３に記載の方法。
【請求項１５】
前記ビデオ監視システム内のクライアント装置によって実行される、請求項１から１４のいずれか１項に記載の方法。
【請求項１６】
前記新しいリソースプロセッサを開始することが、ログイン処理と、前記記録サーバと前記クライアント装置との間のセッショントークンの交換とを含む、請求項１５に記載の方法。
【請求項１７】
コンピュータに、請求項１から１６のいずれか１項に記載の方法を実行させるためのプログラム。
【請求項１８】
請求項１７に記載のプログラムを格納する、コンピュータ読み取り可能な記憶媒体。
【請求項１９】
それぞれが少なくとも１つのビデオ監視カメラから受け取られたビデオデータを格納する複数の記録サーバを備えるビデオ監視システムにおいて、サムネイル画像の要求を処理するように構成されたクライアント装置であって、
サムネイル画像を要求する特定のビデオカメラと、前記特定のビデオカメラからのビデオデータを格納する特定の記録サーバと、を示す情報を含むサムネイル要求を受け取るように構成されたメインキューと、
サムネイル要求処理手段であって、
前記サムネイル要求を、前記特定の記録サーバに対応する記録サーバキューに割り当て、
前記記録サーバキューに関連付けられたアイドル状態のリソースプロセッサが前記サムネイル要求を処理するために利用可能であるかどうかを判定し、
アイドル状態のリソースプロセッサが利用可能である場合、前記リソースプロセッサを用いて前記サムネイル要求を処理し、
アイドル状態のリソースプロセッサが利用可能ではない場合、
（ｉ）前記記録サーバキューに関連付けられているリソースプロセッサの数を判定し、
（ｉｉ）前記リソースプロセッサの数が最大数未満である場合、新しいリソースプロセッサを開始して前記サムネイル要求を処理し、
（ｉｉｉ）前記新しいリソースプロセッサを、前記サムネイル要求を処理した後にアイドル状態にする、
ように構成されているサムネイル要求処理手段と、
を備えるクライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ監視システムにおいてサムネイル画像の要求を処理するための方法及び装置に関する。
【背景技術】
【０００２】
ビデオ監視システムは、典型的には複数の記録サーバを備え、各サーバは複数のビデオカメラからビデオデータを受け取り、格納する。ユーザがライブ又は記録されたビデオデータを見ることができるクライアント装置は、モバイル装置、又はディスプレイを含むＰＣなどのオペレータコンソールとすることができる。クライアント装置は、特定のカメラが格納のためにビデオデータを送る記録サーバに接続することによって、任意のカメラからライブストリーム又は記録されたデータのいずれかを要求することができる。
【０００３】
クライアント装置は、ユーザが記録サーバに格納されているビデオデータを検索するための検索機能も提供する。様々な検索基準を使用することができ、様々なビデオ解析ソフトウェアを使用して検索結果を判定することができる。例えば、検索は、オブジェクト又は顔認識、又は動きに基づくことができる。検索は、格納されたビデオデータに関連付けられたメタデータを検索することによって実行されてもよい。
【０００４】
検索結果は、それぞれが検索基準を満たすビデオデータの時間セグメントを表す、複数のサムネイル画像の形でディスプレイ上でユーザに表示されてもよい。サムネイル画像は、ビデオの時間セグメントからの代表的なフレームである。次に、ユーザは、各サムネイル画像をクリックしてビデオデータのセグメントを見ることができる。結果リストは潜在的に数千の結果を含むことができ、各結果は、ビデオ記録の関連付けられたセグメントのサムネイルと共に表示される。このようなサムネイルを適切な記録サーバから取得することは、（時間的及びメモリ的に）費用がかかる動作となり得る。サムネイル画像を取得するためには、適切な記録サーバと通信し、サムネイルを取り出す責任を負うリソースプロセッサを初期化する必要がある。リソースプロセッサの初期化はハンドシェイク又はログイン処理及びセッショントークンの交換などのために、時間及びメモリを消費する可能性がある。
【０００５】
ユーザはまた、結果が迅速に表示されることを期待するので、サムネイルは並行して取り出されなければならない。サムネイルが要求に応じて取り出されるだけであれば、これはすぐにメモリの問題へとエスカレートし、またサムネイルを配信するリソースプロセッサを確立することに伴う多くの不必要なオーバーヘッドを追加することになるだろう。このことは、サムネイルを配信する責任を負う記録サーバとクライアント装置の両方に望ましくない圧力をかけ、潜在的にいずれかのメモリを使い果たさせてクラッシュさせるだろう。
【発明の概要】
【０００６】
本発明は、それぞれが少なくとも１つのビデオ監視カメラから受け取られたビデオデータを格納する複数の記録サーバを備えるビデオ監視システムにおいてサムネイル画像の要求を処理する方法であって、
サムネイル画像を要求する特定のビデオカメラと、前記特定のビデオカメラからのビデオデータを格納する特定の記録サーバと、を示す情報を含む、メインキューへのサムネイル要求を受け取ることと、
前記サムネイル要求を、前記特定の記録サーバに対応する記録サーバキューに割り当てることと、
前記記録サーバキューに関連付けられたアイドル状態のリソースプロセッサが前記サムネイル要求を処理するために利用可能であるかどうかを判定することと、
アイドル状態のリソースプロセッサが利用可能である場合、前記リソースプロセッサを用いて前記サムネイル要求を処理することと、
アイドル状態のリソースプロセッサが利用可能ではない場合、
（ｉ）前記記録サーバキューに関連付けられているリソースプロセッサの数を判定することと、
（ｉｉ）前記リソースプロセッサの数が最大数未満である場合、新しいリソースプロセッサを開始して前記サムネイル要求を処理し、
（ｉｉｉ）前記新しいリソースプロセッサを、前記サムネイル要求を処理した後にアイドル状態にすることと、
を含む方法を提供する。
【０００７】
したがって、１つ１つのサムネイル要求について新しいリソースプロセッサを初期化するのではなく、リソースプロセッサは再利用できるようにアイドル状態にされる。これは、クライアント装置と記録サーバとの間のハンドシェイク及びセッショントークンの交換を要求する不必要な初期化処理によって使用される時間及びメモリの量を低減する。さらに、各記録サーバキュー内のリソースプロセッサの数は最大数に制限される。
【０００８】
この方法の好ましい特徴は、請求項２から１６に記載されている。
【０００９】
本発明はさらに、プロセッサによって実行されたときに、上述の方法のステップを含む処理を実行するようにプロセッサを制御するように構成されたコンピュータプログラムと、この方法のステップを含む動作を実行するようにプロセッサによって実行可能なコンピュータプログラムを有形に符号化しているコンピュータ可読記憶媒体とを提供する。
【００１０】
本発明はさらに、それぞれが少なくとも１つのビデオ監視カメラから受け取られたビデオデータを格納する複数の記録サーバを備えるビデオ監視システムにおいて、サムネイル画像の要求を処理するように構成されたクライアント装置であって、
サムネイル画像を要求する特定のビデオカメラと、前記特定のビデオカメラからのビデオデータを格納する特定の記録サーバと、を示す情報を含むサムネイル要求を受け取るように構成されたメインキューと、
サムネイル要求処理手段であって、
前記サムネイル要求を、前記特定の記録サーバに対応する記録サーバキューに割り当て、
前記記録サーバキューに関連付けられたアイドル状態のリソースプロセッサが前記サムネイル要求を処理するために利用可能であるかどうかを判定し、
アイドル状態のリソースプロセッサが利用可能である場合、前記リソースプロセッサを用いて前記サムネイル要求を処理し、
アイドル状態のリソースプロセッサが利用可能ではない場合、
（ｉ）前記記録サーバキューに関連付けられているリソースプロセッサの数を判定し、
（ｉｉ）前記リソースプロセッサの数が最大数未満である場合、新しいリソースプロセッサを開始して前記サムネイル要求を処理し、
（ｉｉｉ）前記新しいリソースプロセッサを、前記サムネイル要求を処理した後にアイドル状態にする、
ように構成されているサムネイル要求処理手段と、
を備えるクライアント装置を提供する。
【図面の簡単な説明】
【００１１】
次に、単なる例として、添付の図面を参照しながら、実施形態について説明する:
【００１２】
【図１】ビデオ監視システムを示す図。
【図２】キューの構成の概略図。
【図３】サムネイル要求を処理するシーケンスを示す。
【図４】サムネイル要求を処理する代替のシーケンスを示す。
【発明を実施するための形態】
【００１３】
図１は、本発明の実施形態を実装することができるビデオ監視システム１００の一例を示す。システム１００は、管理サーバ１３０及び複数の記録サーバ１５０を備える。複数のビデオ監視カメラ１１０ａ、１１０ｂ、１１０ｃは、ビデオデータを各記録サーバ１５０に送る。したがって、各カメラは、そのカメラからのビデオデータが格納される対応する記録サーバを有する。カメラ１１０ａ、１１０ｂ、１１０ｃは画像データをキャプチャし、これを複数のビデオデータストリームとしてそれぞれの記録サーバ１５０に送る。記録サーバ１５０はビデオカメラ１１０ａ、１１０ｂ、１１０ｃによってキャプチャされたビデオデータストリームを格納し、ライブデータ又は格納データのいずれかをクライアント装置１２０に向けてストリーミングすることができる。
【００１４】
クライアント装置１２０は、オペレータがカメラ１１０ａ、１１０ｂ、１１０ｃからのビデオデータ、又は記録サーバ１５０からの記録されたビデオデータをライブで見ることができるインターフェースを提供する。クライアント装置１２０はさらに、ユーザが、例えば顔認識又は動き検出に基づいて検索を実行することができる検索インターフェースを提供する。検索はビデオデータ自体を解析すること、例えば、動きに基づく検索を含むことができる。この場合、検索を実行する記録サーバ１５０に要求が発行される。代替的に、検索は、解析ソフトウェアによって生成されたメタデータの検索であってもよく、その場合、メタデータを検索し、検索基準に一致するビデオセグメントを示す結果を返すメタデータインデックス化サーバ（不図示）に要求が送られてもよい。
【００１５】
管理サーバ１３０は、アラーム条件、取り付けられた周辺機器（ハードウェア）の詳細、どのデータストリームがでの記録サーバに記録されるか、などの、監視／モニタリングシステム１００の構成に関する情報を管理する管理ソフトウェアを含んでいる。また、管理サーバ１３０は、オペレータのパーミッションなどのユーザ情報を管理する。クライアント装置１２０がシステムに接続されたとき、又はユーザがログインしたとき、管理サーバ１３０は、ユーザがビデオデータを見ることを許可されているかどうかを判定する。また、管理サーバ１３０は、管理サーバ１３０が構成データをクライアント装置１２０に送る初期化又はセットアップ手順を開始する。この構成データは、システム内のカメラ、及び各カメラがどの記録サーバに接続されているかを定義する。次に、クライアント装置１２０は、構成データをキャッシュにローカルに格納する。この構成データは、クライアント装置１２０がカメラを識別し、カメラ及び／又は記録サーバからデータを取得するために必要な情報を含む。管理サーバ１３０はまた、クライアント装置１２０がその構成データを更新することを要求する変更が行われた場合、クライアント装置１２０と通信する。例えば、記録サーバがシステムに追加され又はシステムから取り除かれる場合、又は新しいカメラが追加されて特定の記録サーバに関連付けられる場合である。したがって、クライアント装置１２０は、特定のカメラからのビデオデータが、どの記録サーバに格納されているかを識別することができる。
【００１６】
同様に、構成データは初期化又はセットアップ手順の間に、管理サーバ１３０から記録サーバ１５０に送られる。特定の記録サーバ１５０に関連する管理サーバ１３０における何らかの設定に何らかの変更がなされた場合、管理サーバはこれらの変更を特定の記録サーバ１５０に通信し、記録サーバ１５０はそれに応じてその構成データを更新することができる。
【００１７】
したがって、管理サーバはクライアント装置及び記録サーバのための構成データの「マスタコピー」を維持し、クライアント装置及び記録サーバにデータを送って、管理サーバ１３０で何らかの関連する変更が行われたときに、その構成データを更新する。
【００１８】
クライアント装置１２０はカメラ１１０ａ、１１０ｂ、１１０ｃの出力をモニタ又はレビューするために、警備員又は他のユーザによる使用のために提供される。クライアント装置１２０は、ＰＣのような固定コンソールであってもよく、又はネットワークを介してビデオ管理システムに接続されたモバイル装置であってもよい。クライアント装置１２０は、管理サーバ１３０上の管理ソフトウェアと対話するためのインターフェースを表示することができるディスプレイを含む。クライアント装置１２０はビデオをリアルタイムで見るために、カメラ１１０ａ、１１０ｂ、１１０ｃのうちの１つ又は複数からのビデオデータストリームを要求することができ、又は、クライアント装置１２０は記録サーバ１５０のいずれかに格納された記録ビデオデータを要求することができる。
【００１９】
クライアント装置１２０は、第１のネットワーク／バス１２１を介して、管理サーバ１３０及び記録サーバ１５０と通信するように構成されている。各記録サーバ１５０は、第２のネットワーク／バス１２２を介してカメラ１１０ａ，１１０ｂ，１１０ｃと通信する。
【００２０】
クライアント装置１２０は、ビデオデータからイベントを検索するための検索ソフトウェアを実行することができる。様々な検索基準を使用することができ、様々なビデオ解析ソフトウェアを使用して検索結果を判定することができる。例えば、検索は、オブジェクト又は顔認識、又は動きに基づくことができる。検索は、ビデオデータ自体、又は格納されたビデオデータに関連付けられたメタデータを検索することによって実行されてもよい。検索はビデオデータ自体を解析すること、例えば、動きに基づく検索を含むことができる。この場合、検索を実行する記録サーバ１５０に要求が発行される。検索が、解析ソフトウェアによって生成されたメタデータの検索である場合、メタデータを検索してどのビデオセグメントが検索基準に一致するかを示す結果を返すメタデータインデックス化サーバ（不図示）に、要求は送られ得る。しかしながら、異なる検索方法に共通することは、各々が、ビデオのセグメント、及びこのビデオセグメント内で検索ヒットが見つかった位置を示す「トリガ時間」を示すデータとして、検索結果を返すことである。
【００２１】
検索結果は、それぞれが検索基準を満たすビデオデータの時間セグメントを表す、複数のサムネイル画像の形でディスプレイ上でユーザに表示される。サムネイル画像は、「トリガ時刻」に撮影された、ビデオの時間セグメントからの代表的なＪＰＥＧフレームである。「トリガ時間」は、検索のタイプに依存するだろう。例えば、動きベースの検索では、表示のために選択される「トリガ時間」及びサムネイル画像は、動きが検出されたビデオセグメント内の最初の画像となるだろう。検索が例えば「赤い車」のメタデータ検索である場合、「トリガ時間」は、赤い車が識別された最初のフレームとなるだろう。典型的には、結果として、「トリガ時間」の前に予め定められた間隔を空けて開始するであろうビデオセグメントを提供するように検索が構成されるであろうから、「トリガ時間」は必ずしもビデオセグメント内の最初のフレームではないだろう。検索結果が表示されると、ユーザは、各サムネイル画像をクリックしてビデオデータのセグメントを見ることができる。
【００２２】
クライアント装置１２０がサムネイル画像を取得するためには、クライアント装置１２０は、まずサムネイルが抽出されるビデオデータが格納されている記録サーバ１５０を識別し、次いで、適切な記録サーバ１５０と通信してサムネイルを取り出す責任を負うリソースプロセッサを初期化することが必要である。リソースプロセッサの初期化はクライアント装置１２０と記録サーバ１５０との間のログイン処理を含み、ハンドシェイク及びセッショントークンの交換などを伴う。
【００２３】
図２は、クライアント装置１２０によるサムネイル要求を処理するためのネストされたキューシステムの概略図である。
【００２４】
クライアント装置１２０は、サムネイル要求をメインキュー２００に送る。サムネイル要求がメインキュー２００に送られると、まず、要求されたサムネイルがサムネイルキャッシュ２１０に存在するかどうかが確認される。存在する場合、サムネイルはサムネイルキャッシュ２１０から抽出され、クライアントに返される。次に、メインキュー２００は各サムネイル要求を１つずつ処理し、その要求を検査して、どの記録サーバ１５０からサムネイル画像を取り出さなければならないかを判定する。次に、サムネイルが取り出される記録サーバ１５０に対応する記録サーバキュー２５０に、要求を渡す。要求された記録サーバ１５０のための記録キュー２５０が存在しない場合、以下でより詳細に説明する制限構成を条件として、新しい記録サーバキュー２５０が作成される。適切な記録サーバキュー２５０が存在せず、制限構成のために新しい記録サーバキューを作成することができない場合、サムネイル要求は、後の処理のためにメインキュー２００内に残る。メインキュー２００はクライアント装置１２０がメインキュー２００を処分するまで、サムネイル要求を適切な記録サーバキュー２５０に渡し続けるだろうが、この処分は通常、クライアント装置１２０がシャットダウンしたときにのみ起こるだろう。
【００２５】
各記録サーバキュー２５０はキューに送られたサムネイル要求を１つずつ処理し、どのカメラに要求が関連付けられているのかを見るために要求を検査する。次に、要求を、所望のカメラについてのサムネイルを適切な記録サーバ１５０から実際に取り出す責任を負う適切なリソースプロセッサ２６０に渡す。適切なカメラに関連付けられたリソースプロセッサ２６０が存在しない場合、以下でより詳細に説明される制限構成を条件として、新しいものが作成されて初期化される。適切なリソースプロセッサ２６０が存在せず、制限構成のために新しいリソースプロセッサを作成することができない場合、サムネイル要求は、後の処理のために記録サーバキュー２５０内に残る。
【００２６】
各記録サーバキュー２５０は、記録サーバキュー２５０が長すぎる間アイドル状態にある（アイドルタイマ・タイムアウト）か、又はメインキュー２００がシャットダウンすることを要求するまで、サムネイル要求を適切なリソースプロセッサ２６０に渡し続けるだろう。アイドルタイマ・タイムアウトは、記録サーバキュー２５０が保留中のサムネイル要求（又は処理中の要求）を有しておらず、予め定められた期間にわたって新しいサムネイル要求を受け取っていないときに起こる。メインキュー２００は、記録サーバキュー２５０が保留中のサムネイル要求（又は処理中の要求）を有しておらず、新しい記録サーバキュー２５０が要求され及び存在する記録キューの数についての制限に達した場合に、この記録サーバキュー２５０にシャットダウンするように要求することができる。これは、記録サーバキュー２５０がアイドル状態にあるが、アイドルタイマ・タイムアウト期間にまだ達していない場合に起こり得る。
【００２７】
リソースプロセッサ２６０がサムネイルを取り出すと、その結果をクライアント装置１２０に返すが、さらにそのサムネイルをサムネイルキャッシュ２１０に置く。
【００２８】
サムネイルキャッシュ２１０は最近取得されたサムネイルを格納し、その結果、同じサムネイルに対する新たな要求がメインキュー２００によって受け取られた場合に、サムネイルキャッシュからそれを抽出することができるようにする。サムネイルキャッシュ２１０には予め定められた容量を有しており、満容量に達すると、最も過去に使用されているという基準でサムネイルが削除される。さらに、各サムネイルは有効期間を有するので、サムネイルが使用されずに有効期間の間サムネイルキャッシュ２１０内にあった場合、キャッシュ２１０から自動的に削除される。
【００２９】
最初に作成されるとき、リソースプロセッサ２６０は初期化する必要がある。これは、クライアント装置１２０と記録サーバ１５０との間のログイン処理、及びセッショントークンの交換などのため、時間がかかる可能性がある。一旦初期化されると、リソースプロセッサ２６０は、同じ記録サーバからの同じカメラについての要求を扱うために複数回使用することができる。リソースプロセッサ２６０は要求を処理すると、アイドル状態に遷移し、同じ記録サーバ及びカメラに対する新しい要求が処理を必要とする場合、記録サーバキュー２５０によって再アクティブ化され得る。リソースプロセッサ２６０がアイドル状態の間に再起動された場合、要求を直接処理するか（同じカメラの場合）、又は、異なるカメラの場合には再初期化して要求を処理することができる。この場合、小さな性能最適化のみが達成される。リソースプロセッサ２６０が予め定められた期間アイドル状態である場合、メモリ負荷を低減するためにシャットダウンされる。
【００３０】
［制限構成］
メインキューは「制限構成」で初期化され、これは、常にアクティブにできる記録サーバキューとリソースプロセッサの数を制限する。制限構成を以下に示す。
【００３１】
［最大同時記録サーバキュー数］
任意の時においてアクティブにできる記録サーバキューの絶対的な最大数を定義する。メインキューが、現在アクティブな記録サーバキューが存在しない記録サーバに格納されたビデオデータからのサムネイル画像を要求するサムネイル要求を処理しているために、新たな記録サーバキューが必要とされる場合、記録サーバキューの総数が最大同時記録サーバキュー数に達したかどうかが確認される。最大数に達していない場合、新しい記録サーバキューを開始することができる。最大数に達した場合、アイドル状態の記録サーバキューが存在するかどうかが判定される。アイドル状態の記録サーバキューはキュー内に保留中のサムネイル要求を有していないが、アイドルタイムアウト期間にまだ達していない。アイドル状態の記録サーバキューが存在する場合、それはシャットダウンされることができ、新しい記録サーバキューを開始することができる。アイドル状態の記録サーバキューがない場合、サムネイル要求は、後の処理のためにメインキューに残る。
【００３２】
［記録サーバあたりの最大リソースプロセッサ数］
これは、任意の時において、所与の記録サーバキューについてのリソースプロセッサの絶対的な最大数を定義する。最大リソースプロセッサ数に達すると、次のサムネイル要求はアイドル状態のリソースプロセッサに送られ、アイドル状態のリソースプロセッサが利用可能でない場合、サムネイル要求は記録サーバキューに残る。
【００３３】
［最大の処理中同時要求総数］
これは、任意の時に、すべての記録サーバキュー（すなわち、アイドル状態のリソースプロセッサを含まない、要求を処理しているリソースプロセッサ）にわたって、扱うことができるサムネイル要求の絶対的な最大数を定義する。この最大値に達した場合、記録サーバキュー内の次のサムネイル要求は、記録サーバ当たりの最大リソースプロセッサ数に達していなくても、記録サーバキュー内に残る。サムネイル要求は、ある要求が処理を終了してリソースプロセッサが利用可能になるまで、記録サーバキューに残るだろう。
【００３４】
［最大記録サーバキューアイドル時間］
これは、自動的にシャットダウンする前に、記録サーバキューがアイドル状態（すなわち、サムネイル要求がキューに入っておらず、リソースプロセッサによって処理されもいない）のままであることができる、アイドルタイマ・タイムアウト期間を定義する。
【００３５】
［リソースプロセッサの最大アイドル時間］
これは、リソースプロセッサが自動的にシャットダウンされる前に、アイドル状態（すなわち、サムネイル要求を処理していない）になり得る期間を定義する。
【００３６】
［サムネイルキャッシュ有効］
これは、サムネイルキャッシュ２１０が有効かどうかを決める。無効にされた場合、すべての要求はキューを介して処理されなければならない。
【００３７】
［サムネイルキャッシュの最大容量］
これは、サムネイルキャッシュ２１０にキャッシュできるサムネイルの絶対的な最大数を定義する。このキャッシュは最も過去に使用された（ＬＲＵ）キャッシュとして実装され、したがって、最大値に達し、新しいサムネイルが追加される場合、使用されずに（すなわち取り出されずに）最も長い期間キャッシュ内にあったサムネイルがキャッシュから除去され、その代わりに新しいサムネイルが追加される。
【００３８】
［サムネイルキャッシュの有効期限］
これは、サムネイルが使用されずに（すなわち、取り出されずに）サムネイルキャッシュ２０５に残ることができる最大期間を定義する。この制限に達すると、サムネイルは自動的にサムネイルキャッシュ２１０から除去され、メモリ消費を最小限に抑える。
【００３９】
図３は、キューを介するサムネイル要求の１つの可能な流れを示す。
【００４０】
最初にクライアント装置１２０がメインキュー２００にサムネイル要求を送り、メインキュー２００は最初にサムネイルキャッシュ２１０を確認し、要求されたサムネイルがサムネイルキャッシュ２１０にないと判定する。
【００４１】
次に、メインキュー２００は、どの記録サーバ１５０からのサムネイルが要求されているか、及び対応する記録サーバキュー２５０があるかどうかを確認する。次に、要求を既存の記録サーバキューに渡すか、又は上述の制限構成を条件として新しい記録サーバキューを作成するか、又は新しい記録サーバキューの作成が制限構成によって許可されるまでメインキュー２００に要求を保持する。
【００４２】
サムネイル要求が記録サーバキュー２５０に渡されると、記録サーバキューは、サムネイル画像が要求されるカメラについての適切なリソースプロセッサ２６０が利用可能であるかどうかを確認する。アイドル状態にある適切なリソースプロセッサ２６０がある場合、要求はそのリソースプロセッサ２６０によって処理される。適切なリソースプロセッサがなく、制限構成により許される場合、新しいリソースプロセッサ２６０が開始されて、要求を処理する。制限構成が新しいリソースプロセッサの初期化を許さない場合、サムネイル要求は、新しいリソースプロセッサの初期化が可能になるまで、記録サーバキュー２５０に留まる。
【００４３】
リソースプロセッサ２６０は、サムネイル要求を処理すると、記録サーバに格納されているビデオデータからサムネイルを取り出し、サムネイル画像をサムネイルキャッシュ２１０に置き、これをクライアントに返す。
【００４４】
図４は、要求されたサムネイル画像が以前に要求され、サムネイルキャッシュ２１０に格納されたものであるときのサムネイル要求の別の可能な流れを示す。サムネイル要求はメインキュー２００に送られ、メインキュー２００は要求されたサムネイルがサムネイルキャッシュ２１０に入っているかどうかを確認し、これがサムネイルキャッシュ２１０に入っていることを発見し、これを取得してクライアントに返す。
【００４５】
本発明は実施形態を参照して説明されたが、本発明は開示された実施形態に制限されないことを理解されたい。本発明は、特許請求の範囲により規定された本発明の主な特徴から逸脱することなく、様々な形態で実装されることができる。
【図１】
2020087466.tif 000003
【図２】
2020087466.tif 000004
【図３】
2020087466.tif 000005
【図４】
2020087466.tif 000006