以下、本発明の一実施の形態例について、添付図面を参照して説明する。本実施の形態例では、撮影対象物の映像データとともにメタデータを生成する監視カメラから得られたメタデータを解析して、異常を検出し、アラームを出力する監視システム100に適用した例としてある。
<本発明のベースとなる環境>
図1は、本実施形態例における監視システム100の接続構成を示した図である。図1に示すように、監視システム100は、1台、もしくは複数台のメタデータ生成カメラ1a〜1nを管理する。監視システム100は、監視対象物を撮影し、映像データを生成するとともに映像データからメタデータを生成するメタデータ生成カメラ1a〜1nと、取得した映像データとメタデータを解析し、保存するとともに異常を検出するとアラームを出力する管理クライアント3と、メタデータ生成カメラ1a〜1nと管理クライアント3とを接続するネットワーク2とで構成される。管理クライアント3が、ネットワーク2を介してメタデータ生成カメラ1a〜1nから取得した映像データベースとメタデータは、メタデータと映像データを蓄積し、再生するメタデータレコーディングシステム7に保存される。
管理クライアント3は、一つもしくは複数のフィルタを組み合わせて構成されるフィルタパッケージ(以下パッケージとも称する。)4を定義している。管理クライアント3は、フィルタパッケージ4にメタデータを通すことで、パッケージ4に定義されているメタデータフィルタ(以下フィルタとも称する。)4a〜4fの条件を満たす動体数や動体位置などからアラーム情報に変換する。そして、管理クライアント3は、データを解析する解析処理部5に変換したアラーム情報を供給して、アラーム情報の解析を行う。アラーム情報の解析結果は、ディスプレイモニタからなる表示部6に表示する。そして、管理クライアント3は、メタデータ生成カメラ1a〜1nのそれぞれに対して、アラーム情報の解析結果に基づくカメラ動作(ズーム倍率を変える、ブザーを鳴らす等)を自動的に指示する。このように、管理クライアント3は、自動的に、もしくは使用者が手動で設定したとおりに、それぞれのメタデータ生成カメラ1a〜1nの最適なカメラ動作を制御している。
ここで、映像データとメタデータの構成について説明する。映像データとメタデータは、データ本体とリンク情報とで構成している。データ本体は、映像データの場合、メタデータ生成カメラ1a〜1nが撮影した監視映像の映像データである。またメタデータの場合、監視対象を示す情報等と、この情報の記述方式を定義した属性情報を記述したものである。リンク情報は、映像データとメタデータとの関連付けを示す関連付け情報と、この情報の内容の記述方式を定義した属性情報等を記述したものである。
関連付け情報は、例えば映像データを特定するためのタイムスタンプやシーケンス番号を使用する。タイムスタンプは、映像データの生成時刻を与える情報(時刻情報)である。シーケンス番号は、コンテンツデータの生成順序を与える情報(順序情報)である。タイムスタンプの等しい監視映像が複数存在するような場合、タイムスタンプの等しい映像データの生成順序を識別することができる。また、関連付け情報には、映像データを生成する機器を特定するための情報(例えば製造会社名や機種名、製造番号等)を使用するものとしてもよい。
ここで、リンク情報やメタデータ本体の記述は、ウェブ(WWW:World Wide Web)上で交換される情報を記述するために定義されたマークアップ言語を用いる。マークアップ言語を用いると、ネットワーク2を介した情報の交換を容易に行うことができる。さらに、マークアップ言語として、例えば文書や電子データの交換に利用されているXML(Extensible Markup Language)を用いることで、映像データとメタデータの交換も容易に行うことができる。XMLを用いるものとした場合、情報の記述方式を定義した属性情報は、例えばXMLスキーマを使用する。
メタデータ生成カメラ1a〜1nで生成した映像データやメタデータは、1つのストリームとして管理クライアント3に供給するものとしてもよい。また、映像データとメタデータを別のストリームで非同期に管理クライアント3に供給するものとしてもよい。
次に、管理クライアント3で用いる部位とデータベースの相関例について、図2の機能ブロック図を参照して説明する。ただし、管理クライアント3の各機能ブロックは、ハードウェアで構成するものとしてもよく、またソフトウェアで構成するものとしてもよい。
管理クライアント3は、メタデータと映像データを蓄積し、再生するメタデータレコーディングシステム7と、メタデータを解析処理する解析処理部5とで構成される。まず、メタデータレコーディングシステム7の構成例について説明する。メタデータレコーディングシステム7は、メタデータ生成カメラ1a〜1nから映像データを取得する映像バッファ部42と、メタデータ生成カメラ1a〜1nからメタデータを取得するメタデータバッファ部41と、フィルタ処理に応じたフィルタ設定を蓄積するフィルタ設定データベース55と、メタデータのフィルタ処理を行うメタデータフィルタ部38と、メタデータ生成カメラ1a〜1nに設定変更を通知するルール切替部35と、映像データを蓄積する映像データ蓄積データベース56と、メタデータを蓄積するメタデータ蓄積データベース57と、映像データを再生する映像データ再生部39と、メタデータを再生するメタデータ再生部40と、メタデータと映像データとの再生を同期させる再生同期部36と映像データ等を表示する表示部とを備えている。
映像バッファ部42は、メタデータ生成カメラ1a〜1nから映像データを取得し、符号化されている映像データの復号化処理を行う。そして、映像バッファ部42は、得られた映像データを映像バッファ部42に設けられている図示しないバッファに保持する。さらに、映像バッファ部42は、図示しないバッファに保持している映像データを順次、画像を表示する表示部6に供給する処理も行う。このように図示しないバッファに映像データを保持することで、メタデータ生成カメラ1a〜1nからの映像データの受信タイミングに依らず、表示部6に対して順次映像データを供給できる。また、映像バッファ部42は、後述するルール切替部35から供給される録画要求信号に基づき、保持している映像データを映像データ蓄積データベース56に蓄積させる。なお、映像データ蓄積データベース56には、符号化されている映像データを蓄積して、後述する映像データ再生部39で復号化を行うものとしてもよい。
メタデータバッファ部41は、メタデータバッファ部41に設けられている図示しないバッファに、メタデータ生成カメラ1a〜1nから取得したメタデータを保持する。また、メタデータバッファ部41は、保持しているメタデータを表示部6に順次供給する。また、図示しないバッファに保持しているメタデータを後述するメタデータフィルタ部38に供給する処理も行う。このように図示しないバッファにメタデータを保持することで、メタデータ生成カメラ1a〜1nからのメタデータの受信タイミングに依らず、表示部6に対して順次メタデータを供給できる。また、映像データと同期させてメタデータを表示部6に供給できる。さらに、メタデータバッファ部41は、メタデータ生成カメラ1a〜1nから取得したメタデータをメタデータ蓄積データベース57に蓄積させる。ここで、メタデータをメタデータ蓄積データベース57に蓄積する際に、メタデータと同期する映像データの時刻情報を付加しておく。このようにすることで、メタデータの内容を読み出して時刻を判別しなくとも、付加されている時刻情報を利用して、所望の時刻のメタデータをメタデータ蓄積データベース57から読み出すことが可能となる。
フィルタ設定データベース55は、後述するメタデータフィルタ部38で行うフィルタ処理に応じたフィルタ設定をフィルタ処理に応じたフィルタ設定を蓄積するとともに、フィルタ設定をメタデータフィルタ部38に供給する。このフィルタ設定とは、アラーム等の出力やメタデータ生成カメラ1a〜1nの撮像動作の切替を行う必要があるか否かの判断基準等を、メタデータに含まれている監視対象に関する情報ごとに示す設定である。このフィルタ設定を用いてメタデータのフィルタ処理を行うことで、監視対象に関する情報ごとにフィルタ処理結果で示すことができる。フィルタ処理結果には、アラーム等の出力を行う必要があることや、メタデータ生成カメラ1a〜1nの撮像動作の切替が必要であることが示される。
メタデータフィルタ部38は、フィルタ設定データベース55に蓄積されているフィルタ設定を用いてメタデータのフィルタ処理を行う。そして、メタデータフィルタ部38は、メタデータバッファ部41で取得したメタデータ、あるいはメタデータ蓄積データベース57から供給されたメタデータのフィルタ処理を行い、フィルタ処理結果をルール切替部35と後述するフィルタパッケージ部33に通知する。
ルール切替部35は、メタデータフィルタ部38から通知されたフィルタ処理結果に基づいて、設定変更信号を生成し、メタデータ生成カメラ1a〜1nに設定変更を通知する。例えば、メタデータフィルタ部38から得られたフィルタ処理結果に基づき、監視に適した監視映像が得られるようにメタデータ生成カメラ1a〜1nの動作を切り替える。また、ルール切替部35は、フィルタ処理結果に基づき、映像データ蓄積データベース56に録画要求信号を供給して、映像バッファ部42で取得した映像データを映像データ蓄積データベース56に蓄積させる。また、ルール切替部35は、映像データの蓄積モードを選択可能とする。蓄積モードには、例えば動的検索モードと最小限モードのいずれかを選択可能としている。
動的検索モードがユーザによって選択されている場合、ルール切替部35は、フィルタ処理結果によって動体が検出されていることが示されたとき、映像バッファ部42で取得した映像データを映像データ蓄積データベース56に蓄積させる。動的検索モードが選択されたときは、動体が検出されているときの映像データが蓄積される。このため、後述する映像データ再生部39によって、蓄積されている映像データを再生して、再生された映像データと同期するメタデータに対して所望のフィルタ設定でフィルタ処理を行うものとすれば、このフィルタ設定を満たす映像データを検索できる。
最小限モードが選択されている場合、ルール切替部35は、フィルタ処理結果によって注意報やアラームの出力を行うような状態が生じたと判別したとき、映像バッファ部42で取得した映像データを映像データ蓄積データベース56に蓄積させる。最小限モードが選択されたときは、注意報やアラームの出力を行うような状態の映像データを容易かつ速やかに再生できる。また、蓄積する映像データのデータ量を少なくできる。
映像データ蓄積データベース56は、映像バッファ部42で取得された映像データを蓄積する。メタデータ蓄積データベース57は、メタデータバッファ部41で取得されたメタデータを蓄積する。
映像データ再生部39は、映像データ蓄積データベース56に蓄積されている映像データの再生処理を行う。すなわち、映像データ再生部39は、ユーザによって指示された再生位置から順次映像データを読み出して、読み出した映像データを表示部6に供給する。また、映像データ再生部39は、再生している映像データの再生位置(再生時刻)を再生同期部36に供給する。
メタデータと映像データとの再生を同期させる再生同期部36は、映像データ再生部39から供給された再生位置と、メタデータ再生部40で、メタデータ蓄積データベース57に蓄積されているメタデータを再生するときの再生位置が同期するように、同期制御信号をメタデータ再生部40に供給して、メタデータ再生部40の動作を制御する。
メタデータ再生部40は、メタデータ蓄積データベース57に蓄積されているメタデータの再生処理を行う。すなわち、メタデータ再生部40は、ユーザによって指示された再生位置から順次メタデータを読み出して、読み出したメタデータをメタデータフィルタ部38と表示部6に供給する。また、映像データとメタデータの双方を再生する場合、メタデータ再生部40は、上述のように再生同期部36から供給された同期制御信号に基づいて再生動作を制御して、映像データに同期したメタデータを出力する。
表示部6は、映像バッファ部42から供給された映像データや映像データ再生部39から供給された映像データ、メタデータバッファ部41から供給されたメタデータやメタデータ再生部40から供給されたメタデータを表示する。また、表示部6は、メタデータフィルタ部38からのフィルタ設定に基づき、監視映像やメタデータの映像やフィルタ設定の映像のいずれか、あるいはこれらを合成した映像を用いて、フィルタ処理結果に基づく監視結果を示す映像を表示する。また、表示部6は、グラフィカルユーザインタフェース(GUI:Graphical User Interface)として機能している。使用者は、図示しない操作キーやリモートコントローラ等を用いて表示部6に表示されたメニュー等を選択することで、パッケージやフィルタを定義したり、既存の処理部の情報のほかに、パッケージやアラーム情報の解析結果等をGUI表示したりすることができる。
そして、本実施の形態例にかかる監視システム100は、解析処理、複数のフィルタを組み合わせてアラームを発生させるかどうかを判断するフィルタパッケージ部33と、フィルタパッケージ内のフィルタ情報及び、フィルタ間の関連付け(論理設定)を保存するパッケージ設定データベース53と、フィルタパッケージ部33から出力されたアラーム情報を、後述する解析ルール設定データベース54の設定値を元に解析するアラーム情報解析部34と、スケジュールを監視し、指定時間帯に指定の解析ルールとパッケージとアクション(ネットワークに接続された外部機器に対する動作指示)の設定を行うスケジュール設定部31と、パッケージとアクションの設定を記録するスケジュール設定データベース51と、各種カメラや周辺機器にアクションを指示するアクション設定部32と、アクションの設定を記録するアクション設定データベース52とを備えることを特徴としている。
以下では、各部とデータベースの機能例について詳細に説明する。
フィルタパッケージ部33は、メタデータフィルタ部38から得られたフィルタ処理結果を複数種類組み合わせて、より詳細な状況についてパッケージが出力するアラームの発生を判断する。最適なカメラ動作は、使用者がフィルタ単位またはパッケージ単位で予め設定することができる。例えば、使用者が、あるパッケージに5種類のフィルタ(フィルタA〜フィルタE)を設定したと想定する。設定可能なフィルタの種類としては、例えば以下の7種類があり、このうち、任意のフィルタの種類を選択することができる。
Appearance(存在):物体があるエリア内に存在するか否かを判別するためのフィルタ
Disappearance(消失):物体があるエリア(領域)に現れ、エリアから出たか否かを判別するためのフィルタ
Passing(通過):ある境界線を物体が越えたか否かを判別するためのフィルタ
Capacity(物体数制限):あるエリア内の員数が所定値を超えたか否かを判別するためのフィルタ
Loitering(滞留):所定の時間を超えて、あるエリア内に物体が滞留しているか否かを判別するためのフィルタ
Unattended(置き去り):所定の時間を越えて、あるエリア内に侵入し動かない物体が存在するか否かを判別するためのフィルタ
Removed(持ち去り):あるエリア内に存在した物体が取り除かれたことを検出するためのフィルタ
パッケージの設定は、全てのフィルタの条件を満たした場合にアラーム情報を出力したり、フィルタAかつフィルタBの設定を満たした場合か、フィルタCかつフィルタDの設定を満たした場合のどちらかでアラーム情報を出力したりするなど、フィルタ間の論理を自由に組み合わせて設定できる。例えば、ある場所に人が侵入(ある場所のフィルタA“存在”が真)し、かつ警備員が所定の場所にいない(別の場所のフィルタB“消失”が真)場合のみパッケージアラーム情報を発生させる等が行われる。
パッケージ設定データベース53は、フィルタパッケージ部33に定義したパッケージを保存することができるデータベースである。データベースが持つべき情報例について以下に記載する。
1.パッケージ番号(またはパッケージ名):フィルタパッケージを一意に識別する。
2.フィルタ番号(またはフィルタ名称):フィルタアラーム情報を一意に識別する。カメラごとにフィルタアラーム番号が振られている場合、カメラ番号も必要になる可能性がある。
3.フィルタ間論理:フィルタをいかにして組み合わせるかの論理である。論理積(AND、またはシーケンシャル)組み合わせ、及び論理和(OR、またはパラレル)組み合わせからなる。
アラーム情報解析部34は、フィルタパッケージ部33から得られるアラーム情報を解析し、カメラや周辺機器に最適な動作を行わせ、表示部6に情報を与える。解析種類は“連続時間”(指定した時間だけアラームが連続で来る場合、インパルス波アラームであっても方形波アラームとみなす)、“発生頻度”(指定時間内に指定数以上アラーム情報が得られる)、“占有面積”(指定範囲内に指定比率以上の物体が存在)、等が選べ、使用者が新たに定義することも可能である。解析した結果を元に、パッケージの再選択や各種アクションの実行、スケジュールの変更が行われる。
解析ルール設定データベース54は、アラーム情報解析部34に定義した解析ルールを保存することができるデータベースである。データベースが持つべき情報例について以下に記載する。
1.解析ルール番号(または解析ルール名):アラーム解析情報を一意に識別する。
2.パッケージ番号(またはパッケージ名称):アラーム解析に用いるパッケージを一意に特定する。
3.解析種類:“連続時間”,“発生頻度”,“占有面積”などの解析タイプ。
4.解析詳細設定:解析タイプに必要な詳細設定項目(時間や閾値頻度など)、アクションの実行、パッケージの変更、解析ルールの変更など、条件を満たした場合の動作。
スケジュール設定部31は、時間帯により解析ルールを変更する。例えば、営業時間内は“発生頻度”ルールで解析して自動ドアの挟み込みといった状況を判別し、閉店後は“侵入”アラームに切り替えて侵入自体でアラーム状況と判断させるなどの使い道が想定できる。
スケジュール設定データベース51は、スケジュール設定部31に定義したスケジュールを保存することができるデータベースである。データベースが持つべき情報例について以下に記載する。
1.スケジュール番号(またはスケジュール名):スケジュール情報を一意に識別する。
2.開始時間:スケジュールを開始する年月日時分秒。
3.終了時間:スケジュールを終了する年月日時分秒。
4.解析ルール番号:スケジュール内に適用する解析ルールを特定するための番号。
アクション設定部32は、アラーム情報解析結果に基づいて、指定したアクションを実行する。“追跡”,“ズーム”,“ライトON”などの動きを指定しておけば、アラーム情報の持つ動体数や位置情報を元に、自動的にズーム倍率やパンチルト角度が指定される。手動で詳細動作を設定することもできる。また、カメラの設定を変更することができる。さらに、カメラの設定を変更する以外にも、動体があったときは必ず映像を録画して後で動的にフィルタを変更してそれに該当する映像を検索できる動的検索モードと、フィルタがかかったときのみ録画をする最小限録画モードと2つの録画モードの切り替えができる。
アクション設定データベース52は、アクション設定を保存することができるデータベースである。データベースが持つべき情報例について以下に記載する。
1.アクション番号(またはアクション名):アクション設定情報を一意に識別する。
2.アクションタイプ:“パンチルト”,“ズーム”,“ライトON”など。
3.詳細設定:手動設定の場合の詳細情報を設定する。
<動作の説明>
次に、管理クライアント3の各部の処理例について説明する。
まず、フィルタパッケージ部33の処理例について、図3を参照して説明する。フィルタパッケージ部33は、複数のフィルタ間を論理で結びつけてパッケージを作成し、通知する処理を行う。始めに、フィルタパッケージ部33は、メタデータバッファ部41から関連するフィルタのアラーム情報を取得する(ステップS1)。次に、フィルタパッケージ部33は、各パッケージが用いるパッケージ設定データベース53により、アラーム情報を処理する(ステップS2)。
フィルタパッケージ部33は、アラーム情報を処理すると、アラーム情報解析部34に通知が必要か否かを判断する(ステップS3)。通知が必要でないと判断した場合、フィルタパッケージ部33は、ステップS1の処理に戻す。一方、通知が必要であると判断した場合、フィルタパッケージ部33は、フィルタアラームとパッケージアラームとを組み合わせた通知内容を作成する(ステップS4)。そして、フィルタパッケージ部33は、通知内容をアラーム情報解析部34に通知する(ステップS5)。
次に、フィルタパッケージ部33は、パッケージの設定変更要求があるか否かを判断する(ステップS6)。設定変更要求がないと判断した場合、フィルタパッケージ部33は、ステップS1の処理に戻す。一方、設定変更要求があると判断した場合、フィルタパッケージ部33は、パッケージの設定を変更する(ステップS7)。
そして、フィルタパッケージ部33は、終了要求があるか否かを判断する(ステップS8)。終了要求がないと判断した場合、フィルタパッケージ部33は、ステップS1の処理に戻す。一方、終了要求があると判断した場合、フィルタパッケージ部33は、処理を終了する。
次に、アラーム情報解析部34の処理例について、図4を参照して説明する。アラーム情報解析部34は、取得したアラーム情報を解析し、アクションの実行やスケジュールの変更、パッケージの変更を指示する処理を行う。始めに、アラーム情報解析部34は、フィルタパッケージ部33から関連するフィルタのアラーム情報を取得する(ステップS11)。次に、アラーム情報解析部34は、解析ルール設定データベース54を用いてアラーム情報を処理する(ステップS12)。
アラーム情報解析部34は、アラーム情報を処理すると、アクションの実行が必要か否かを判断する(ステップS13)。アクションの実行が必要でないと判断した場合、アラーム情報解析部34は、ステップS11の処理に戻す。一方、アクションの実行が必要であると判断した場合、アラーム情報解析部34は、実行するアクションを記述した通知内容を作成する(ステップS14)。そして、アラーム情報解析部34は、通知内容をアクション設定部32に通知する(ステップS15)。
次に、アラーム情報解析部34は、スケジュールの変更要求があるか否かを判断する(ステップS16)。スケジュールの変更要求がないと判断した場合、ステップS11の処理に戻す。一方、スケジュールの変更要求があると判断した場合、アラーム情報解析部34は、設定するスケジュール内容を記述した通知内容を作成する(ステップS17)。そして、アラーム情報解析部34は、通知内容をスケジュール設定部31に通知する(ステップS18)。
次に、アラーム情報解析部34は、パッケージの変更要求があるか否かを判断する(ステップS19)。パッケージの変更要求がないと判断した場合、ステップS11の処理に戻す。一方、パッケージの変更要求があると判断した場合、アラーム情報解析部34は、設定するパッケージ内容を記述した通知内容を作成する(ステップS20)。そして、アラーム情報解析部34は、通知内容をフィルタパッケージ設定部33に通知する(ステップS21)。
そして、アラーム情報解析部34は、終了要求があるか否かを判断する(ステップS22)。終了要求がないと判断した場合、アラーム情報解析部34は、ステップS11の処理に戻す。一方、終了要求があると判断した場合、アラーム情報解析部34は、処理を終了する。
次に、スケジュール設定部31の処理例について、図5を参照して説明する。スケジュール設定部31は、スケジュールを作成し、スケジュールの期間内に指定した解析ルールを実行する処理を行う。始めに、スケジュール設定部31は、各スケジュールを、スケジュール設定データベース51を用いて、スケジュール情報を処理する(ステップS31)。
スケジュール設定部31は、スケジュール情報を処理すると、スケジュール内であるか否かを判断する(ステップS32)。スケジュール内でないと判断した場合、スケジュール設定部31は、ステップS31の処理に戻す。一方、スケジュール内であると判断した場合、スケジュール設定部31は、解析ルールを記述した通知内容を作成する(ステップS33)。そして、スケジュール設定部31は、通知内容をアラーム情報解析部34に通知する(ステップS34)。
そして、スケジュール設定部31は、スケジュールの設定変更要求があるか否かを判断する(ステップS35)。スケジュールの設定変更要求がないと判断した場合、スケジュール設定部31は、ステップS31の処理に戻す。一方、スケジュールの設定変更要求があると判断した場合、スケジュール設定部31は、スケジュール設定データベース51を用いて、スケジュールの設定を変更する(ステップS36)。
そして、スケジュール設定部31は、終了要求があるか否かを判断する(ステップS37)。終了要求がないと判断した場合、スケジュール設定部31は、ステップS31の処理に戻す。一方、終了要求があると判断した場合、スケジュール設定部31は、処理を終了する。
次に、アクション設定部32の処理例について、図6を参照して説明する。アクション設定部32は、アクションを作成し、カメラや周辺機器にアクションを実行させる処理を行う。始めに、アクション設定部32は、各アクションを、アクション設定データベース52を用いて、アクション内容を処理する(ステップS41)。
アクション設定部32は、アクション内容を処理すると、アクションの実行要求があるか否かを判断する(ステップS42)。アクションの実行要求がないと判断した場合、アクション設定部32は、ステップS41の処理に戻す。一方、アクション実行要求があると判断した場合、アクション設定部32は、アクションの設定変更や、パンチルト等のアクションを記述した通知内容を作成する(ステップS43)。そして、アクション設定部32は、通知内容をカメラや周辺機器等に通知する(ステップS44)。
そして、アクション設定部32は、終了要求があるか否かを判断する(ステップS45)。終了要求がないと判断した場合、アクション設定部32は、ステップS41の処理に戻す。一方、終了要求があると判断した場合、アクション設定部32は、処理を終了する。
次に、各処理部間における関連処理の例について説明する。
まず、複数のメタデータ生成カメラ1a〜1nから受信したメタデータに対し、パッケージ(フィルタ群)を適用して、一つの結果を得る処理の例について、図7を参照して説明する。始めに、使用者は、フィルタパッケージ部33により、“存在”や“滞留”等のフィルタを登録し(ステップS51)、フィルタ間論理を設定する(ステップS52)。設定内容は、パッケージ設定データベース53に保存される。
そして、フィルタパッケージ部33は、アラーム情報をアラーム情報解析部34に送信する(ステップS53)。アラーム情報解析部34は、フィルタパッケージ部33からアラーム情報を受信する(ステップS54)。受け取ったアラーム情報には、各フィルタからのフィルタアラーム以外に、新たにフィルタ間論理に合致したパッケージからのパッケージアラームが含まれる。
アラーム情報解析部34は、解析ルール設定データベース54を元に、受信したアラーム情報を解析し、解析ルールに沿った動作を行う(ステップS55)。そして、アラーム情報解析部34は、アクション設定部32、フィルタパッケージ部33、スケジュール設定部31に必要な指示を送信する。アクションの実行を行う場合はアクション設定部32にアクション番号を指定する(ステップS56)。アクション設定部32は、指定されたアクション番号に基づくアクションを、アクション設定データベース52から読み出し、アクションを実行する。フィルタやパッケージの再選択を行う場合は、フィルタパッケージ部33に設定変更を指示する(ステップS56)。フィルタパッケージ部33は、パッケージ設定データベース53からフィルタやパッケージを読み出すとともに、再選択したフィルタやパッケージをパッケージ設定データベース53に書き込む。スケジュールの変更を行う場合は、スケジュール設定部31に設定変更を指示する(ステップS58)。スケジュール設定部31は、スケジュール設定データベース51からスケジュールを読み出すとともに、変更したスケジュールをスケジュール設定データベース51に書き込む。
次に、フィルタ(もしくはパッケージ)からフレームごとに出力されるインパルス状のアラーム発生をまとめて、方形波として波形の立ち上がり時と、立下り時のみアラームを上げる処理の例について、図8と図9を参照して説明する。
まず、図8を参照して処理について説明する。始めに、アラーム情報解析部34は、“解析種類・滞在時間”及び閾値となる時間を解析ルール設定データベース54から取得する(ステップS61)。
そして、フィルタパッケージ部33は、検出したアラーム情報を、アラーム情報解析部34に送信する(ステップS62)。アラーム情報解析部34は、フィルタパッケージ部33からアラーム情報を受信する(ステップS63)。そして、アラーム情報解析部34は、滞在時間内の微少時間以下で連続して起こるインパルス情報を方形波に変換する(ステップS64)。アラーム情報解析部34は、立ち上りタイミングと立下りタイミングで監視対象の異常を判断するため、アラーム情報(立下りタイミング)をフィルタパッケージ部33が検出するまでステップS62〜ステップS64の処理を繰り返す。
フィルタパッケージ部33がアラーム情報(立下りタイミング)を検出すると、アラーム情報(立下りタイミング)をアラーム情報解析部34に送信する(ステップS65)。アラーム情報解析部34は、連続したインパルス情報を変換した方形波が、所定の時間を超過したか否かを判断する(ステップS66)。
アラーム情報解析部34は、方形波が所定の時間以内であれば、異常がないと判断して、処理を終了する。方形波が所定の時間を超過していれば、アラーム情報解析部34は、アクション設定部32、フィルタパッケージ部33、スケジュール設定部31に必要な指示を送信する。アクションの実行を行う場合はアクション設定部32にアクション番号を指定する(ステップS67)。アクション設定部32は、指定されたアクション番号に基づくアクションを、アクション設定データベース52から読み出し、アクションを実行する。フィルタやパッケージの再選択を行う場合は、フィルタパッケージ部33に設定変更を指示する(ステップS68)。フィルタパッケージ部33は、パッケージ設定データベース53からフィルタやパッケージを読み出すとともに、再選択したフィルタやパッケージをパッケージ設定データベース53に書き込む。スケジュールの変更を行う場合は、スケジュール設定部31に設定変更を指示する(ステップS69)。スケジュール設定部31は、スケジュール設定データベース51からスケジュールを読み出すとともに、変更したスケジュールをスケジュール設定データベース51に書き込む。
次に、駐車場に駐車する車両の時間超過を検出するために監視システム100を用いる例について図9を参照して説明する。
図9(a)は、駐車場に駐車した車両の例である。駐車場には、車両91を駐車したことを検知する検知エリア92を設けてある。検知エリア92に車両91が駐車されると、アラーム情報を出力する。
図9(b)は、従来のアラーム情報を示すヒストグラムの例である。従来、“存在”フィルタで検出するアラーム情報では、検知エリア92に車両91が存在しているか否かしか判断することができなかった。つまり、車両91の駐車時間が、駐車場で決められた所定の時間を超えた場合であっても、どれだけの時間超えたのかを知ることができなかった。
図9(c)は、アラーム情報を方形波に変換した例である。“存在”フィルタで検出するアラーム情報を解析ルール“滞在時間”で解析処理を行う。そして、インパルス波の集合を方形波として管理している。このようにすると、アラーム情報の立ち上がりと立ち下がりに注視することが可能となり、車両91の超過した駐車時間を知ることができるようになった。
次に、画面上の変動頻度を元に、アラーム処理を行い、所定の条件を満たした場合アクションを実行する(新しい解析ルールに変更する、スケジュールを変更するなど)処理の例について、図10〜図14を参照して説明する。
まず、図10を参照して処理について説明する。始めに、アラーム情報解析部34は、“解析種類・滞在時間”及び閾値となる時間を解析ルール設定データベース54から取得する(ステップS71)。閾値となる確率、及びフィルタの組み合わせは複数種類取得できる。
フィルタパッケージ部33が所定時間毎に動体を検出すると、アラーム情報をアラーム情報解析部34に送信する(ステップS72)。アラーム情報解析部34は、アラーム情報をフィルタパッケージ部33から受信する(ステップS73)。検出した動体数が、所定の閾値を超過したか否かを判断する(ステップS74)。予め定義された時間内頻度を超える動体数を得た場合、アラーム条件に合致するとみなす。
アラーム情報解析部34は、検出した動体数が、所定の閾値以内であれば、異常がないと判断して、処理を終了する。検出した動体数が、所定の閾値を超過していれば、アラーム情報解析部34は、アクション設定部32、フィルタパッケージ部33、スケジュール設定部31に必要な指示を送信する。アクションの実行を行う場合はアクション設定部32にアクション番号を指定する(ステップS75)。アクション設定部32は、指定されたアクション番号に基づくアクションを、アクション設定データベース52から読み出し、アクションを実行する。フィルタやパッケージの再選択を行う場合は、フィルタパッケージ部33に設定変更を指示する(ステップS76)。フィルタパッケージ部33は、パッケージ設定データベース53からフィルタやパッケージを読み出すとともに、再選択したフィルタやパッケージをパッケージ設定データベース53に書き込む。スケジュールの変更を行う場合は、スケジュール設定部31に設定変更を指示する(ステップS77)。スケジュール設定部31は、スケジュール設定データベース51からスケジュールを読み出すとともに、変更したスケジュールをスケジュール設定データベース51に書き込む。
次に、スケジュールごとにフィルタパッケージを切り替える処理の例について、図11を参照して説明する。まず、スケジュール設定部31は、“開始時間”や“終了時間”、“解析ルール”等の設定情報をスケジュール設定データベース51から取得する(ステップS81)。
スケジュール設定部31は、設定されたスケジュールになると、アラーム情報解析部34に解析ルールの変更を指示する(ステップS82)。アラーム情報解析部34は、解析ルール設定データベース54を元に解析ルールを変更する(ステップS83)。
次に、アクションを実行する処理の例について、図12を参照して説明する。まず、アラーム情報解析部34は、アクション設定部32にアクションの実行指示を行う(ステップS91)。アクション設定部32は、該当するアクションをアクション設定データベース52から取得してアクションを行う(ステップS92)。アクションが行われる対象は、カメラの設定変更、パンチルト動作、ズーム動作、ライトのON/OFF等が該当する。
次に、異常の検出内容を時間帯によって変更する場合の処理例について、図13を参照して説明する。異常の検出内容として、昼間はドアを行き来する人数を検出し、夜間は侵入者を検出する。この場合、フィルタパッケージ等を以下のように設定している。
1.解析ルール:“発生頻度”を設定する(10回/10分)。
2.解析ルール:“侵入”を設定する。
3.アクション:“ブザー”を設定する。
4.アクション:“パンチルト”を設定する。
5.フィルタパッケージ:“双方向通過”を設定する。
6.フィルタパッケージ:“一方向通過”を設定する。
7.スケジュール:“10時〜21時”を設定する。
8.スケジュール:“21時〜翌10時”を設定する。
図13(a)は、昼間(10時〜21時)の監視状態の例を示す。建物の出入り口に設けられたドア61に対して、メタデータ生成カメラ1aのレンズが向けられている。ドア61を行き来する対象者64をメタデータ生成カメラ1aが撮影し、メタデータベースを生成するとともに、管理クライアント3に送信しており、後述する管理ヒストグラムを作成する。対象者64のドア61に対する右または左のいずれかの通過方向64を“双方向通過”と称している。解析ルールとしては、“発生頻度”が設定してあり、ドア61を対称者64が双方向通過する回数を数える。
図13(b)は、昼間の監視状態における管理ヒストグラムの例を示す。管理ヒストグラムは、縦軸を双方向通過した人数、横軸を10分ごとの時間としてデータを表示している。本例では、対象者が双方向通過した回数が、10分間で閾値10回を超えると異常とみなし、アラームを発生する。異常とみなされたアラームデータ71は、閾値10回を超過していることが分かる。異常時には、アクションとしてブザーが鳴らされる。
図13(c)は、夜間(21時〜翌10時)の監視状態の例を示す。ドア61に対して、メタデータ生成カメラ1aのレンズが向けられている。夜間においては、ドア61に対して左方向の侵入方向67で侵入しようとする侵入者68を検出すると、メタデータ生成カメラ1aはアラームを出力する。そして、メタデータ生成カメラ1aは、パンチルト方向65にパンチルトすることで撮影範囲66を拡大するとともに侵入者68を追尾する。このとき、他のメタデータ生成カメラと連動して侵入者68を追尾するようにしてもよい。
図14は、異常の検出内容を時間帯によって変更する場合の処理例を示す。まず、昼間の監視処理を実行する。始めに、スケジュールの“10時〜21時”を開始する(ステップS101)。そして、解析ルールの“発生頻度”を実行する(ステップS102)。さらに、フィルタパッケージの“双方向通過”を選択する(ステップS103)。
そして、“発生頻度”が閾値(10回/10分)を超えたか否かを判断する。“発生頻度”が閾値を越えていない場合は、ステップS102の処理に戻る。“発生頻度”が閾値を越えている場合は、アクションとして、“ブザー”を実行する(ステップS105)。そして、スケジュールが終了したか否かを判断する(ステップS106)。監視時間が、“10時〜21時”以内であれば、ステップS102の処理に戻る。監視時間が“10時〜21時”以外であれば、夜間の監視処理に移行する。
夜間の監視処理では、始めに、スケジュールの“21時〜翌10時”を開始する(ステップS107)。そして、解析ルールの“侵入”を実行する(ステップS108)。さらに、フィルタパッケージの“一方向通過”を選択する(ステップS109)。
そして、“侵入”があるか否かを判断する。“侵入”がない場合は、ステップS108の処理に戻る。“侵入”がある場合は、アクションとして、“パンチルト”を実行し(ステップS111)、侵入者を追尾する。そして、スケジュールが終了したか否かを判断する(ステップS112)。監視時間が、“21時〜翌10時”以内であれば、ステップS102の処理に戻る。監視時間が“21時〜翌10時”以外であれば、終了要求があるか否かを判断する(ステップS113)。終了要求がなければ、処理をステップS101に移し、昼間の監視処理に移行する。終了要求があれば、処理を終了する。
図15は、夜間監視時に他のカメラと連動して侵入者を追尾する場合の例について示している。店舗81には、夜間警備する警備員83を配しており、警備員83は、管理クライアント3を収納する警備室82で映像を監視している。管理クライアント3には、監視モニタとして表示部6が接続してあり、複数台のカメラからの撮影画像が表示されている。商品を陳列する複数の商品棚84を監視するために、店舗81内には、カメラ1bを設定してある。通常監視時において、カメラ1bは、他の場所(通路等)を監視するようにしている。
使用者は、スケジュール“21時〜翌10時”において、ドア61の“通過”フィルタが真かつ警備室の“存在”フィルタが偽の場合のパッケージを作成する。ドア61の“通過”フィルタが真かつ警備室の“存在”フィルタが偽となると、商品棚エリアの“滞留”フィルタによる検知を開始する。侵入者68が、ドア61から侵入すると、カメラ1aは、アラームを管理クライアント3に出力するとともに、パンチルト方向65に沿って、侵入者68を追尾する。カメラ1aからのアラームを受けて、カメラ1bは、商品棚84に対してパンチルト方向85に沿ってパンチルト撮影を開始し、侵入者68を追尾する。“滞留時間”が一定時間を越えるとアラーム情報を表示部6(監視モニタ)に表示する。さらに時間が経つと、“ブザー“アクションを実行する。アラームや撮影した映像データ、メタデータは、管理クライアント3に随時伝送され、警備員83は侵入者68や商品棚84の状況を把握することができる。
以上説明した本実施の形態例では、複数のフィルタ群をフィルタパッケージとしてまとめることで複数の条件に合致した異常を検出し、アラームを出力することができる。このため、従来見分けることができなかった異常であっても、正常、異常の切り分けを正しく行うことができ、使用者の負担を軽減できるという効果がある。また、1台のカメラであっても複数の機能を有することができるため、設置コスト、運用コスト等を減らせる効果がある。
また、既存のメタデータフィルタを用いたシステムでは、動体の数や位置などの情報しか分からなかったが、アラーム情報解析部を用いることにより、より詳細なアラーム情報を出力することが可能になった。例えば、ある扉について、通常、開いて閉じるという動作が、1時間に1回位のはずが、10分間ごと、30秒ごとに繰り返されていると、何らかの異常が発生しているとしてアラーム処理を行う要望がある。このような場合、10分おきの発生頻度が閾値を超えるとアラーム情報を上げるといった処理が可能になる。
また、スケジュールごとに解析ルールを変更できることにより、例えば夜間の動作と昼間の動作を別の解析ルールを用いて処理できるようになる。このため、アラームを出力する条件をより詳細に設定することができるようになる。そして、昼夜の区別だけでなく、より詳細に時間帯を設定して、時間帯に応じたアラーム条件を区別することができるという効果がある。
また、従来用いられた“存在”フィルタはインパルス波の集合体であったため、使用者は、あるエリア内に動体がいるか、いないかしか分からなかった。しかしながら、解析ルールを適用することで、インパルス波の集合体を方形波に変換し、アラーム情報の立ち上がり、立ち下がりタイミングを捉えることができる。このため、例えば1時間以上車両が同じ場所に駐車していた場合、表示部にアラームメッセージを表示させるといった動作を行うことができる。この場合、駐車時間を超過した時間であっても通知することができる。
また、フィルタパッケージの概念により、アラーム出力条件をより多彩に設定することができるようになった。既存のフィルタ単位ではなしえなかった、ある場所に動体が存在していてかつ別の場所に動体がいない場合にアラームがほしいといった実際に起こりうる状況に対してより有効にアラームを出力することができる。
また、アラーム情報解析部34が、アクション設定、スケジュール設定、解析ルール変更を行えるため、自動的に最適な行動を監視システムで行うことが可能となる。例えば、あるパッケージ(フィルタ)を通過した場合はパンチルトで追跡したり、一定時間以上存在している動体については、パッケージやフィルタを滞留条件に変えて、ズームを下げて範囲全体を見渡すようにしたりするなどの行動をとることができる。
また、アラームの解析をパッケージアラームとフィルタアラームと2種類を区別して用いることで、パッケージの結果によるアクション設定や、フィルタ1のみの結果によるアクション設定など、アクションの条件に合わせて多彩に定義することができる。例えば、フィルタAのみONになればライトを点灯し、フィルタBがONになればズームを行い、フィルタCを条件に加え、フィルタA〜Cが全てONになった場合にのみブザー音を鳴らすといった使い方が想定できる。このように、条件を様々に変えて、監視対象に適した監視動作を設定できるという効果がある。
また、同様に滞留フィルタと通過フィルタを組み合わせたパッケージを設定することであるラインを通過するのに何分以上かかった、何%通過したといったアラーム情報を取得することができる。このため、従来人員を配置して手動計測していた店舗内の動線管理などに適用することができ、リアルタイムで店舗内の動線を得ることができる。このため、店舗の内部配置の検討や顧客動向等を容易に分析することができるという効果がある。
なお、サーバ機能とクライアント機能を分割した管理サーバと閲覧用クライアントで構成された監視システムに適用しても上述した実施の形態例と同様の機能、効果を得ることができる。図16は、管理サーバと閲覧用クライアントで構成された監視システム200の構成例である。監視システム200は、監視対象物を撮影し、映像データを生成するとともに映像データからメタデータを生成するメタデータ生成カメラ1a〜1nと、取得した映像データとメタデータを解析し、保存するとともに異常を検出するとアラームを出力する管理サーバ103と、メタデータ生成カメラ1a〜1nと管理クライアント103とを接続するネットワーク102と、管理サーバ103に接続される閲覧クライアント106とで構成される。
管理サーバ103が、ネットワーク102を介してメタデータ生成カメラ1a〜1nから取得した映像データベースとメタデータは、メタデータと映像データを蓄積し、再生するメタデータレコーディングシステム7に保存される。管理サーバ103は、フィルタパッケージを用いてメタデータにフィルタをかけてアラーム情報を解析処理する。映像データ、メタデータ、アラーム情報は、管理サーバ103から閲覧クライアント106に供給され、閲覧クライアント106のモニタでアラーム情報等がGUI表示される。閲覧クライアント106では、フィルタ設定とフィルタパッケージ設定を行って、管理サーバに設定を送信できる。このように、サーバ機能とクライアント機能を分割することで、処理性能が高い装置(管理サーバ)で大量にデータを処理し、処理性能が低い装置では、処理結果を閲覧するといった使い分けが可能となる。このように機能分散することでより柔軟性に富む監視システム200を構築できるという効果がある。
1a〜1n…メタデータ生成カメラ、2…ネットワーク、3…管理クライアント、4…フィルタパッケージ、5…解析処理部、6…表示部、7…メタデータレコーディングシステム、31…スケジュール設定部、32…アクション設定部、33…フィルタパッケージ部、34…アラーム情報解析部、35…ルール切替部、36…再生同期部、38…メタデータフィルタ部、39…映像データ再生部、40…メタデータ再生部、51…スケジュール設定データベース、52…アクション設定データベース、53…パッケージ設定データベース、54…解析ルール設定データベース、55…フィルタ設定データベース、56…映像データ蓄積データベース、57…メタデータ蓄積データベース