(57)【特許請求の範囲】
【請求項１】
画像を時系列に取り込む入力手段と、
上記取り込まれた入力画像から複数の背景画像を登録する背景画像記憶手段と、
上記複数の背景画像と新たに取り込んだ画像とを画素ごとに比較して差分絶対値の最小値である相異度を求め、相違度画像として該画素単位に記憶する相異度画像記憶手段と、
上記相異度が所定値以上の画素の連結成分の面積と該連結成分の外接矩形の大きさとに基づいて侵入物体の有無を判定する判定手段とを有することを特徴とする監視装置。
【請求項２】
上記背景画像は、画素単位に登録されていることを特徴とする請求項１記載の監視装置。
【請求項３】
所定時間内に入力される複数の上記相異度画像について、該相異度画像を構成するブロック毎に、該相異度の平均値、差分値及び総和値を求め、
上記ブロック毎に上記平均値、上記差分値、上記総和値の時系列変化に基づいて背景画像が変化したかを判定し、該背景画像が変化したと判断した場合には該相異度画像に対応する入力画像を上記背景画像として登録することを特徴とする請求項１又は２に記載の監視装置。
【請求項４】
上記背景画像が変化したと判断されたブロックを構成する画素のうち、上記相異度が所定値以上の画素を上記背景画像として登録することを特徴とする請求項２又は３に記載の監視装置。
【請求項５】
上記背景画像について、該背景画像を構成する画素毎に、上記登録されてから最も新しい参照時までの時間及び該最も新しい参照時から現在までの時間とに基づいて削除するか判定し、
上記削除すると判定された画素については上記背景画像記憶手段から削除することを特徴とする請求項２乃至４の何れかに記載の監視装置。
【請求項６】
上記判定手段が「侵入物体有り」と判定した場合に、上記新たに取り込んだ画像を録画する記録手段を有することを特徴とする請求項１乃至５の何れかに記載の監視装置。
【請求項７】
入出力手段と、ＣＰＵと、メモリとを備えたコンピュータで実行される監視プログラムが記録された記録媒体において、上記プログラムは、
上記入出力手段から画像を時系列に取り込むステップと、
上記画像から複数の背景画像を上記メモリに登録するステップと、
上記複数の背景画像と新たに取り込んだ画像との画素ごとの差分絶対値の最小値である相異度を求めて、相異度画像として該画素単位で上記メモリに記憶するステップと、
上記相異度が所定値以上の画素の連結成分の面積と該連結成分の外接矩形の大きさとに基づいて侵入物体の有無を判定するステップとを有することを特徴とする監視プログラムが記録された記録媒体。
【請求項８】
請求項７に記載の記録媒体において、
上記背景画像は、画素毎に登録されていることを特徴とする監視プログラムが記録された記録媒体。
【請求項９】
請求項８に記載の記録媒体において、上記監視プログラムは、さらに、
上記背景画像について、該背景画像を構成する画素毎に、上記登録されてから最も新しい参照時までの時間及び該最も新しい参照時から現在までの時間とに基づいて削除するか判定し、
上記削除すると判定された画素については上記背景画像記憶手段から削除することを特徴とする監視プログラムが記録された記録媒体。
【請求項１０】
請求項７乃至９の何れかに記載の記録媒体において、上記監視プログラムは、さらに、
上記判定手段が「侵入物体有り」と判定した場合に、上記新たに取り込んだ画像を録画するステップを有することを特徴とする監視プログラムが記録された記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，監視システムの分野で使われる監視装置、及び、これをコンピュータで実現するためのソフトウェアプログラムに関わる。特に、本発明は、低コストかつ撮影環境の変動にロバストな監視装置、及び、これを実現するソフトウェアプログラムを提供する。
【０００２】
【従来の技術】
現在，道路，踏み切り，公共施設，銀行のサービスフロア，コンビニエンスストア，または、マンションのエレベータ等のいたる場所でカメラによる監視が行われている。これら監視の目的は，事故や犯罪の未然防止と事後の速やかな処置を行うことである。
【０００３】
電力，ガス，または、水道等の公共施設の監視システムでは，屋内だけでなく，屋外にも複数の監視カメラが設置されている。これによって，監視員は監視センタのモニタテレビで現場の状況をリアルタイムで把握できる。しかし，複数の監視カメラの映像を長時間に渡って見続ける作業は，疲労によって「見落とし」などを引き起こす。そこで、必要な時のみモニタテレビで確認できる監視システムとして，侵入物体や異常を検出した場合のみ警報音を鳴らして通知する方法が一般的に採用されている。この検出には，赤外線センサー，ドアセンサー，または、温度センサーなど各種センサーを用いる方法や、監視カメラの映像を直接解析する方法がある。前者は、確実性は高いが、監視カメラ以外に新たなセンサを多数設置する必要がありコスト高になる。後者は特別なセンサーの設置が不要であるため低コストである。しかし，屋外のような環境変動が激しいところのカメラ映像では，木立の揺れ，雨や雪，水面の反射などによる映像の変化があるため、誤って警報を出力するという問題がある。
【０００４】
たとえば，特開平５−１４８９３の監視装置では，時間方向の平滑化処理で作成した背景画像と入力画像との比較によって，侵入物体を検出するため，背景が変動しない場合は，正常に侵入物体が検出できる。屋外等の背景が絶えず変動している環境下では，原理上，過剰に検出するという問題がまだ残されている。
【０００５】
【発明が解決しようとする課題】
以上のように従来の監視装置では，確実性を高めるとコスト高になり，低コストにすると誤報が増加するという問題があった。本発明が解決しようとする課題は低コストかつ環境変動にロバストな監視装置、及び、これを実現するソフトウェアプログラムの提供にある。
【０００６】
【課題を解決するための手段】
上記の課題を解決するために，時系列に入力した複数の画像を記憶する背景画像記憶手段と、上記複数の画像と新たに入力した画像との画素ごとの差分絶対値の最小値（相異度）を求めて記憶する相異度画像記憶手段と、上記相異度を用いて侵入物体の有無を判定する判定手段を具備する。
【０００７】
【発明の実施の形態】
図１は，本発明の監視装置の侵入物体検出の原理を示す図である。監視カメラの映像中に侵入物体が映っているかどうかは，予め侵入物体が映っていない背景画像１７４を記憶しておき，これと入力した画像１７３と比較して，変化する画像部分を検出して，侵入物体の有無を判定する。その際，背景画像は，何通りかのパターンを記憶しておき，それらすべての背景画像と入力画像との比較を行うようにする。たとえば，背景の木の枝が揺れる可能性があれば，それらの揺れたパターンを何通りか記憶しておく。このようにすることで，たとえ，風で木の枝が揺れたとしても，それらのパターンは予め記憶してあるので，背景画像のいずれかと入力画像が一致する。したがって，従来は，木の枝が揺れただけで，誤って侵入物体ありと判定しがちであったが，本発明では，背景の変動に対して，頑健な，侵入物体検出が達成される。
【０００８】
図２は，本発明の監視装置を利用した監視システムの一例である。監視カメラ２００からの映像信号は，監視装置１００のビデオ入力端子１１０から入力され，ディジタル画像に変換される。ディジタル画像はビデオ出力端子１１０からアナログ画像としてデイスプレィ２２０に表示される。また侵入物体ありと判定したときに発せられる警報信号はモデム端子１４０から電話回線を通して監視センタへ送られる。その際，携帯電話２１０なども利用可能である。監視装置１００は赤外線受光部１３０を介して，リモコンからの指示によって制御される。
【０００９】
以上のように本発明の監視装置１００に接続される監視機器として、従来のアナログの監視カメラやディスプレイがそのまま利用可能である。さらにモデムを介して遠方に警報信号を伝送できる。
【００１０】
図３は本発明の監視装置を汎用コンピュータにより実現する際のシステム構成図の一実施例である。すなわち、汎用コンピュータでソフトウェアプログラムを実行することによって本発明の監視装置を実現する。
【００１１】
まず１１１は監視カメラからの映像信号２１０をディジタル画像に変換するA/D変換器である。変換されたディジタル画像はインタフェース１１２を介してメモリ１７０に取り込むと同時にビデオメモリ１１８に取り込まれる。
【００１２】
ビデオメモリ１１８はディスプレィ２２０に表示される画像をディジタルデータとして格納する。１１９は，一般にRAMDACとも呼ばれている種類のD/A変換器であり，ビデオメモリ１１８に書かれたデータを走査線スピードに合わせて逐次読みとり，ディスプレイ２２０に描画する。したがって，ビデオメモリ１１８のデータを更新すると，その更新内容がディスプレイ２２０の表示内容に直ちに反映される。
【００１３】
ディスプレイ２２０は，画像を表示するためのデバイスであり，例えば，小型のCRTやプラズマディスプレイであっても良いし，液晶タイプの表示デバイスであっても構わない。こうした画像の取り込みを，秒３０回程度の頻度で繰り返すことで，ディスプレイ上で連続的な動画の表示が行える。
【００１４】
補助記憶装置１６０は，ハードディスク等の大容量記録装置であり，ディジタルデータを半永久的に記録するための装置である。これは，PCMCIA方式のハードディスクカードのように記憶装置ごと本体から着脱できたり，あるいは，DVD-RAM，フラッシュメモリ等のように，記録媒体のみを着脱できるタイプの記録装置であっても構わない。
【００１５】
ＣＰＵ１５０は，侵入物体検出のための制御をはじめ，本発明の監視装置の機能を実現するためのソフトウエアプログラムを実行する。プログラムは，メモリ１７０に常駐し，プログラムの実行に必要となるデータもここに必要に応じて格納される。
【００１６】
モデム１３９は録画した画像や警報情報を電話回線を通じて伝送する。赤外線受光部１３０はリモコンからの情報入力デバイスである。入力情報は，インタフェース１３１を介して，ＣＰＵ１５０に伝えられ，適宜処理される。１８０は，以上述べた各デバイス間を相互につなぐデータバスである。
【００１７】
以上の監視装置のシステム構成において，本実施例では，まずメモリ１７０内に格納された侵入物体検出制御プログラム１７２によって，取り込まれた画像をメモリ１７０に入力画像データ１７３として格納しながら，逐次ビデオメモリ１１８に転送し，ディスプレィ２２０に表示する。さらに侵入物体検出処理の後，必要に応じて画像を補助記憶装置１６０に録画データとして格納する。また，侵入物体ありと判定した場合はモデム１３９を介して警報信号を出力する。
【００１８】
図４は，本発明の監視装置に指示を与えるリモコンの一実施例である。リモコン４００からのすべての指示コマンドは赤外線発光部４２０からの赤外線信号を介して発行される。４１０は電源のON/OFFを指示するボタンである。４３０は侵入物体の検出を指示するボタン，４３２は侵入物体検出の制御パラメータを設定するボタン，４３３は各種データを設定するボタン，４３４は項目を選択するパドルスイッチ１であり，左右上下に押すことができる。４３５は０から９までの数値を設定するパドルスイッチ２であり，上を押すと大きな値になり，９が上限である。一方，下側を押すと小さな値になり，０が下限である。
【００１９】
次に，制御パラメータ設定ボタン４３２，検出ボタン４３０の操作について以下に説明する。制御パラメータ設定ボタン４３２が押されると，ディスプレィ２２０には図５に示す侵入物体検出のための制御パラメータ設定画面が表示される。図において５００はカーソル，５１０は背景画像数入力領域，５１１は、登録した背景を消去する時間である背景忘却時間入力領域，５１２は物体判定サイズ入力領域である。
【００２０】
カーソルをパドルスイッチ１を操作して，背景画像数入力領域５１０の所定の桁に移動して，パドルスイッチ２を操作して，所望の背景画像数を入力する。次に設定領域５３０にカーソルを移動して設定ボタン４３３を押すと，最大に記憶できる背景画像数がパラメータとして設定される。
【００２１】
また同様にして，カーソルをパドルスイッチ１を操作して，背景忘却時間入力領域５１１の所定の桁に移動して，パドルスイッチ２を操作して，所望の背景忘却時間を入力する。次に設定領域５３１にカーソルを移動して設定ボタン４３３を押すと，最短の背景忘却時間がパラメータとして設定される。
【００２２】
さらに，カーソルをパドルスイッチ１を操作して，物体判定サイズ入力領域５１２の所定の桁に移動して，パドルスイッチ２を操作して，所望の物体判定サイズを入力する。次に設定領域５３２にカーソルを移動して設定ボタン４３３を押すと，最小限の物体判定サイズがパラメータとして設定される。
【００２３】
最後に領域５４０にカーソルを移動して設定ボタン４３３を押すと制御パラメータ設定画面が終了する。なお、リモコンを用いず、監視装置自体にボタンやパドルスイッチを備えてももかわまない。また、汎用コンピュータで本発明の監視装置を実現する場合は、リモコンの代わりにキーボードのキーにそれぞれのボタンやパドルスイッチの機能を割り当ててもよい。
【００２４】
検出ボタン４３０が押されると，ディスプレィ２２０には図６に示す基本画面が表示される。図６において６００は入力画像の表示領域，６１０は侵入物体を検出して録画した画像を一覧表示する領域であり，録画した画像６１１は縮小して並べて表示される。その際，物体の存在領域６１２や検出した時刻情報６１３も表示される。また６２０，６３０，６４０は侵入物体検出のために現在設定されているパラメータを表示しており，６２０は背景画像数，６３０は背景忘却時間，６４０は物体判定サイズである。
【００２５】
この基本画面によりユーザは現在から過去に至る侵入物体の検出状況がすばやく把握できるという効果がある。
【００２６】
図７は本発明の監視装置を実現するための侵入物体検出制御プログラム１７２の一実施例である。まずステップ９００は初期化処理であり，ディスプレィに図６の基本画面を表示する。そしてステップ９０５で検出の状態を制御する変数STATUSを０にリセットする。
【００２７】
そして，監視装置の電源が入っている間（ステップ９２０），以下の制御処理を実行する。
【００２８】
まずステップ９３０でリモコンのボタンの状態をチェックし，以下のステップ９４０の判定処理を行う。
【００２９】
もし制御パラメータ設定ボタン４３２が押された場合は，ステップ９４１で制御パラメータ設定処理を実行する。この処理はユーザとの対話処理であって，システムは図５の制御パラメータ設定画面をディスプレイへ表示した後，ユーザがリモコン４００を操作して数値を入力する。処理が終了すると，デイスプレィの表示は図６の基本画面に戻す。
【００３０】
次に，ステップ９５０の判定処理を行う。
【００３１】
もし変数STATUSが０で検出ボタン４３０が押された場合は，検出初期化処理９５１を実行する。検出初期化処理では，侵入物体の映った画像を録画する際の、録画データのヘッダ情報である，録画開始年月日，録画開始時刻，録画個数Ｎを補助記憶装置１６０に書き込む。録画個数は最初は０とする。また，入力画像のフレーム番号を１に初期化するとともに，監視カメラから画像を入力して背景画像データ１７４として登録しておく。さらにまた，検出のための制御データ１７６を初期状態に設定する。
【００３２】
そしてステップ９５２で変数STATUSに１をセットし，検出中の状態にする。
【００３３】
もし変数STATUSが１で検出ボタン４３０が押された場合は，ステップ９５３を実行し，変数STATUSを０にリセットし，検出終了の状態とする。
【００３４】
次にステップ９６０の判定処理で，STATUSが１の場合はステップ９６１で検出処理を行い，侵入物体が検出された場合は補助記憶装置１６０に画像を書き込むとともに，警報信号を出力する。この検出処理の詳細は後で，図１３を用いて説明する。その前に検出処理で使用される各種のデータ構造を説明する。
【００３５】
図８は本発明の録画データ１６１のデータ構造の一実施例である。録画データはヘッダ部と画像部から構成される。ヘッダ部には，録画開始年月日１６１−１，録画開始時刻１６１−２，録画個数１６１−３を記録する。画像部には，取得画像毎にフレーム番号１６１−４，画像取得年月日１６１−５，画像取得時刻１６１−６，画像データ１６１−７を記録する。
【００３６】
図９は入力画像と背景画像のデータ構造である。１７３は入力画像であり横Ｗ画素，縦がＨ画素である。標準のＮＴＳＣ規格の画像ではＷは６４０，Ｈは４８０となる。１７４は背景画像である。背景画像１７４−２は、(ｉ，ｊ)位置の画素ごとにその画素値を最大Ｋ個まで登録したものである。背景登録回数配列１７４−１は、画素ごとに、背景画素値を登録した回数を記憶する配列である。
【００３７】
また、背景画像としての参照履歴情報を画素毎に記憶しておくための登録時のフレーム番号配列１７４−３は、及び、参照された最新のフレーム番号配列１７４−４を具備する。登録時のフレーム番号配列は、登録した画素値のフレーム番号を記憶しておく配列である。すなわち、背景画像を登録した時間を管理するものである。
【００３８】
参照された最新のフレーム番号配列は、最新に参照した画素値のフレーム番号を記憶しておく配列である。すなわち、背景画像として最後に使われた時間を管理するものである。
【００３９】
本発明では，背景画像の参照履歴情報は画素毎に記憶しているので，背景画像の登録や消去は画素単位に細かく行える。すなわち，画面上の一部分だけが周期的に変化するような撮影状況では，その変化部分だけを背景部分として追加して登録したり消去したりできる。
【００４０】
図１０は、画素ごとの、入力画像と複数の背景画像との差分絶対値の最小値（相異度）からなる相異度画像のデータ構造である。１７５−１は複数の背景画像と入力画像の差の絶対値が最小となる値を画素毎に算出した最小値からなる画像である。これにより、画素単位に背景画像と入力画像の相異がわかる。１７５−１−１は、差分絶対値が最小となるときの背景画素番号を記憶する最小値背景番号配列である。最小値背景番号配列の内容により，どの背景画素が入力画素と最も類似していたかがわかる。これを用いると，背景画素の参照履歴情報が簡単に更新できるようになる。
【００４１】
１７５−2は最小値画像１７５−１を横Ｑブロック，縦Ｒブロックに分割し，各ブロック内の値の平均値を記憶したブロック別平均値画像である。本実施例ではＱは１６，Ｒは１２を使用するが，この値に限定されるものではない。このようにブロック別の平均値を求めることによってブロック単位に背景画像と入力画像の相異がわかる。侵入物体は通常ある程度の大きさがあるので，このようにブロック単位に大まかな相異を判定することで，検出性能をよりロバストにすることができる。
【００４２】
１７５−３はブロック別平均値画像１７５−2が所定の閾値より大であれば１，そうでなければ０とする処理によって得られたブロック別変化領域画像である。これにより変化したブロックは１の値となる。
【００４３】
図１１は検出のための制御データの構造である。１７６−１は過去Ｍフレーム分のブロック別の平均値画像を記憶するＦＩＦＯ型（fast in fast out）のシフトバッファである。時系列にブロック毎の相異度の変化を解析するときに参照する。１７６−２は過去Ｍフレーム分のブロック別の変化領域画像を記憶するＦＩＦＯ型（fast in fast out）のシフトバッファである。
【００４４】
１７６−３はブロック別変化領域画像１７５−３の値が１の連結成分毎に、個々の連結成分を区別するため同一のラベルを割り当てたブロック別連結画像である。１７６−４はブロック別連結画像１７６−３のラベル毎に外接長方形の左上座標（ＸＳ，ＹＳ），右下座標（ＸＥ，ＹＥ）及び面積を記憶した特徴量テーブルである。侵入物体かそれ以外かの最終判定はこの特徴量が所定の基準に合致するかどうかで決まる。
【００４５】
図１２は本発明の各ブロックの相異度の時間波形の例を示す。図12(a)は背景の構造変化が無い場合の例であり，相異度は小さい値が続く。一方，図12(ｂ)は背景の構造変化がある場合の例であり，相異度は高い値でフラットな状態が続く。背景の構造変化がある場合とは、例えば、監視中の場所に、車が来て駐車したよう場合である。車は最初は背景の一部ではないが、駐車後は背景の一部となる。このように背景が以前の状態とまったく変わった場合，本発明では入力画像を新たに背景画像として登録する。図12(c)は侵入物体がある場合の例であり，相異度は短時間だけ高い値となる。例えば、監視中の場所を人が通り過ぎたような場合である。このような変化をするブロックを検出した場合，本発明ではさらにそのブロックでの変化回数の多少や、空間的な変化ブロックの広がりを判定して、背景の周期変化と真の侵入物体に分類する。
【００４６】
図12(d)は風などの影響で背景が周期的に変化している場合のブロック変化の時間波形の例である。このような場合は、短時間に多数の変化が発生する。本発明ではこのようなブロックを検出した場合，このブロックを変動する背景部分と判定して，このブロックの部分の入力画像を画素ごとに新たに背景画像として登録する。
【００４７】
本発明の複数の背景を画素毎に登録する機能によって，揺れる木や水面の反射などが監視カメラで撮影されても，侵入物体と誤って判定し，警報を出し続けるということがなくなる。なお，本実施例では過去の参照時間範囲δは2秒間すなわち６０フレーム分（Ｍ＝６０）としているが，この値に限定されるものではない。
【００４８】
図１３は本発明の検出処理９６１の詳細を示すフローチャートである。
【００４９】
まず，ステップ１０００で監視カメラ２００から画像を入力して，入力画像１７３としてメモリ１７０に格納する。
【００５０】
次にステップ１０１０で、入力画像１７３と背景画像１７４−２の差分の絶対値を画素毎に計算し，すべての背景画像との間で最小となる値を計算し，最小値画像１７５−１を作成する。また，最小値をとる背景画像の番号を最小値背景番号配列１７５−１−１に格納する。
【００５１】
そして，ステップ１０２０で，ブロック毎に最小値画像１７５−１の値の平均値を計算し，ブロック別平均値画像１７５−２を作成する。作成したブロック別平均値画像１７５−２はさらにステップ１０３０のシフトバッファ１７６−１へ転送する。
【００５２】
次にステップ１０４０でブロック別変化領域画像１７５−２を作成する。このステップの詳細は，後で図１４を用いて説明する。そしてステップ１０５０でブロック別変化領域画像１７５−２をシフトバッファ１７６−２へ転送する。
【００５３】
以上の処理ステップで作成したデータを参照して，ステップ１０６０で侵入物体判定処理，ステップ１０７０で背景画像登録処理，ステップ１０８０で背景画像消去処理を行う。最後にステップ１０９０でフレーム番号を1つ更新する。
【００５４】
本発明では，以上述べた処理によって，監視カメラで撮影中の背景に変動が生じても，自動的に背景を更新し，侵入物体だけを安定に検出可能になる。
【００５５】
以下，ステップ１０４０，１０６０，１０７０，１０８０について，図１４，図１５，図１６，図１７を参照してさらに詳細に説明する。
【００５６】
図１４はブロック別変化領域作成処理の詳細を示すフローチャートである。本実施例は画面全体をＱ×Ｒ＝１６×１２ブロックに分割するが，大きな物体の検出が目的の場合はブロックの分割数を少なくしてもよい。ブロック別変化領域作成処理は以下の処理をすべてのブロックについて実行することで，達成できる。
【００５７】
まず各ブロックが変化しているかどうかを判定するための変数ＬＩＰＰＬＥと変数ＨＥＩＧＨＴを計算する。ステップ１１１０でブロック別平均値画像が格納されたシフトバッファ１７６―１のシフト区間内のブロック(ｉ,j)の最大値と最小値の差を計算して，変数ＬＩＰＰＬＥに格納する。次に現在フレームのブロック別平均値画像１７５―２のブロック(ｉ,j)の値を変数ＨＥＩＧＨＴに格納する。
【００５８】
そしてステップ１１２０で変数ＨＥＩＧＨＴ(現在フレームのブロック平均値)が所定の閾値ｔｈ１より大きく，かつ，変数ＬＩＰＰＬＥ(シフト区間内のブロック平均値の最大値と最小値の差)も所定の閾値ｔｈ２より大きいかどうかを判定する。もしもいずれも大きければ，図１２（ｃ）に示した状態と判定し，ステップ１１２５でブロック別変化領域画像１７５―３のブロック(ｉ,j)に１を設定する。一方，いずれかでも小さければ，ステップ１１３０でブロック別変化領域画像１７５―３のブロック(ｉ,j)に０を設定する。ここで本実施例では，ｔｈ１もｔｈ２も５であるが、他の値を用いてもかわまない。なお，画素の値がとる範囲は０から２５５である。
【００５９】
またステップ１１３２で変数ＨＥＩＧＨＴが所定の閾値ｔｈ１より小さく，かつ，変数ＬＩＰＰＬＥも所定の閾値ｔｈ２より小さいかどうかを判定する。もしもいずれも小さければ，図１２（ａ）に示した状態と判定し，ステップ１１３５からステップ１１５５の背景画像の参照履歴情報の更新処理を実行する。
【００６０】
ステップ１１３５はブロック(ｉ,j)の実際の画像上でのアドレスの範囲を計算する。そして，ブロック内の背景画素について，参照された背景画素の参照履歴情報を更新する。
【００６１】
まず，ステップ１１５０最小値背景番号配列１７５―１―１の点(ｉ２,j２)の値を変数ｋに代入する。次にステップ１１５０で参照された最新のフレーム番号を記録した配列１７４―４の点（ｉ２,j２,ｋ）を現在のフレーム番号に更新する。このように本実施例では，現在入力した画像と背景画像がブロックとして一致した場合，該当するすべてのブロック内の背景画素の参照履歴情報が更新される。
【００６２】
図１５は侵入物体の有無の判定処理の詳細を示すフローチャートである。
【００６３】
まず，侵入物体の領域を検出するために必要な特徴量すなわち侵入物体を取り囲む外接長方形の座標と面積を求める。そのためにステップ１２００では，ブロック別変化領域画像１７５―３の値が１のブロックについて，左、右、上、または下のブロックが１の場合は同一の連結した成分と判定して，同一のラベルを付与する処理を行い，ブロック別連結画像１７６―３を作成する。そしてステップ１２０５で，ブロック別連結画像１７６―３の同一ラベルの連結成分毎に外接長方形と面積を求め，特徴量テーブル１７６―４に格納する。
【００６４】
次にステップ１２１０からステップ１２３０で侵入物体の有無を調べる。まずステップ１２１０で変数ＦＬＡＧを０にリセットする。このＦＬＡＧが以降の処理によって１に変化した時，侵入物体が存在すると判定する。すべてのラベルについて，ステップ１２２０からステップ１２３０の処理を繰り返す。ステップ１２２０では，特徴量テーブル１７６―４のラベルｉの外接長方形座標と面積を読み出し，変数ＸＳ,ＸＥ,ＹＳ,ＹＥ,ＡＲＥＡにセットする。そしてステップ１２２５で(ＸＥ-ＸＳ+１)×(ＹＥ-ＹＳ+１)>ｔｈ４かつＡＲＥＡ>ｔｈ５の条件を判定し，条件が満足した場合，ステップ１２３０で変数ＦＬＡＧを１にセットする。
【００６５】
本実施例で，外接長方形の大きさと面積の大きさの両方を判定しているのは，人間などの侵入物体と揺れた木の枝などの侵入物体では形状の性質が異なるので，それらの違いを区別するために両方の特徴を用いている。ここで，閾値ｔｈ４，ｔｈ５の具体的な値は検出すべき侵入物体により異なるので，予め適切な値をユーザが設定しておく。本実施例ではｔｈ４もｔｈ５も２である。
【００６６】
最後にステップ１２３５で変数ＦＬＡＧが1かどうかを判定し，１の場合は，ステップ１２４０からステップ１２５５の侵入物体有り時の処理を実行する。ステップ１２４０では録画個数１６１―３を１つ更新する。そして，ステップ１２４５で現在の入力画像１７３をフレーム番号，画像取得年月日，画像取得時刻とともに録画データとして補助記憶装置１６０に書き込む。次にステップ１２５０で入力画像１７３を縮小してディスプレイ２２０へ表示する。その際，画像中の侵入物体を囲む外接長方形を上書き表示し，さらに検出時刻も表示してもよい。このように表示しておくと，ユーザは現在から過去にさかのぼった侵入物体の検出状況が一瞬にして把握できるようになる。ステップ１２５５ではさらに警報信号をモデム１４０を介して外部に出力する。
【００６７】
図１６は背景画像登録処理の詳細を示すフローチャートである。背景画像登録処理は以下の処理をすべてのブロックについて実行することで，達成できる。まず各ブロックが変化しているかどうかを判定するための変数ＬＩＰＰＬＥと変数ＨＥＩＧＨＴと変数ＳＵＭを計算する。ステップ１３１０でブロック別平均値画像が格納されたシフトバッファ１７６―１のシフト区間内のブロック(ｉ,j)の最大値と最小値の差を計算して，変数ＬＩＰＰＬＥに格納する。次にステップ１３１５でシフトバッファ１７６―１のシフト区間内のブロック(ｉ,j)の値の平均値を計算して，変数ＨＥＩＧＨＴに格納する。
【００６８】
さらにステップ１３２０でブロック別変化領域画像が格納されたシフトバッファ１７６―２のシフト区間内のブロック(ｉ,j)の値の総和を計算して変数ＳＵＭに格納する。
【００６９】
次にステップ１３２５で背景画像の登録条件を判定する。登録の条件は2つ有り，一つは，ＨＥＩＧＨＴ>ｔｈ１  &  ＬＩＰＰＬＥ<ｔｈ２であり，図１２（ｂ）の状況を検出した場合である。もう一つは，ＳＵＭ>ｔｈ３であり，図１２（ｄ）の状況を検出した場合である。前者は背景の構造変化であり，たとえば背景中に新たに車が駐車してしまったような状況が該当する。後者は背景の周期的な変化であり，たとえば強風で木の枝が絶えず揺れているような状況が該当する。このような状況を検出すると背景画像を新たに登録するためにステップ１２３０から１３７０を実行する。ここで本実施例ではｔｈ３は３０である。これは，過去の参照時間範囲δが２秒，すなわちＭ＝６０とした場合の値であり，過去５０％以上が変化している状況を検出することを意味する。
【００７０】
ステップ１３３０はブロック(ｉ,j)の実際の画像上でのアドレスの範囲を計算する。そして，ブロック内の画素について相異度が著しく大きい場合のみ，画素毎に入力画像の画素値を背景画像として部分的に登録する。
【００７１】
まずステップ１３４５で差分絶対値の最小値画像１７５―１の点（ｉ２,j２)の値を変数ＤＩＦＦに設定する。次にステップ１３５０で変数ＤＩＦＦがｔｈ１より大きいかどうか判定する。大きい場合は現在登録されているどの背景画素とも入力画像の画素が異なっているので，ステップ１３５５から１３７０の背景画素の登録の処理を実行する。
【００７２】
まずステップ１３５５で背景画像１７４―２の点（ｉ２,j２)の空いている背景の登録部分の番号を変数ｋに設定する。次にステップ１３６０で背景画像１７４―２の点（ｉ２,j２,ｋ)に入力画像１７３の点（ｉ２,j２)の画素値を新たに背景画素として登録し，ステップ１３６５で背景登録回数を記録する配列１７４―１の点（ｉ２,j２)の値を１つ更新する。最後にステップ１３７０で，背景の参照履歴情報の初期化のため，登録時のフレーム番号配列１７４―３と参照された最新のフレーム番号配列１７４―４の点（ｉ２,j２,ｋ）に現在のフレーム番号を書き込む。
【００７３】
図１７は背景画像消去処理の詳細を示すフローチャートである。この処理は，図１６で説明した背景画像を動的に登録してゆく処理とは反対に，使われなくなった背景画像を動的に消去してゆく処理である。この処理によって，装置に必要なメモリ容量を少なくし，侵入物体検出に要する計算時間が短縮できる。また，不必要な多数の背景画像を記憶することによる検出感度の劣化を防止することができる。
【００７４】
まず，すべての背景画像の画素について，ステップ１４１０からステップ１４５０の処理を実行する。ステップ１４１０では，背景登録回数配列１７４―１の点（ｉ,j）の値を変数ｎにセットする。そして変数ｋについて１からｎ回まで以降の処理を実行する。
【００７５】
まずステップ１４２０で，登録時のフレーム番号配列の点（ｉ,j,ｋ）の値が１以上かどうかを判定する。1以上の場合はまだ背景画素が消去されていないと判断し，ステップ１４２５からステップ１４５０までの処理を実行する。ステップ１４２５では参照された最新のフレーム番号配列１７４―４の点（ｉ,j,ｋ）の値と登録時のフレーム番号配列１７４―３の点（ｉ,j,ｋ）の値の差を計算し，変数ＥＶＡLに格納する。この変数ＥＶＡＬの値は該当する背景画素の参照された期間である。ステップ１４３０では変数ＥＶＡＬが所定の閾値ｔｈ６より小さいかどうか判定し，もし小さければ，ステップ１４３５で閾値ｔｈ６を変数ＥＶＡＬに書き込む。ここで閾値ｔｈ６は任意の値が設定できる。長く設定すると背景として長時間覚えておくことが可能である。本実施例では，ｔｈ６は１０秒程度に相当するフレーム枚数の値すなわち３００に設定しておく。変数ＥＶＡＬが所定の閾値ｔｈ６より小さいときに、閾値ｔｈ６を変数ＥＶＡＬに書き込むのは、参照期間が短いものをすぐに消去しないためである。
【００７６】
次にステップ１４４０で現在のフレーム番号と参照された最新のフレーム番号配列１７４―４の点（ｉ,j,ｋ）の値の差を計算し，変数ＰＥＲＩＯＤに格納する。この変数ＰＥＲＩＯＤは現在までに参照されていない期間である。
【００７７】
この参照された期間ＥＶＡＬと参照されていない期間ＰＥＲＩＯＤの２つを変数とした関数から現時点の重要性を判定し，消去すべきかどうかを決定する。実施例ではステップ１４４５で（ＰＥＲＩＯＤ-ＥＶＡＬ）が正かどうかで判定しているが，別の判定基準として，（ＰＥＲＩＯＤ-ＥＶＡＬ/Ｋ）が正かどうかで判定しても良い。ここでＫは定数である。そして消去すべきと判定した場合、ステップ１４５０で登録時のフレーム番号配列１７４―３の点（ｉ,j,ｋ）の値を０にリセットする。これにより，該当する背景画素は消去されたことになる。
【００７８】
【発明の効果】
本発明では，監視カメラの映像から侵入物体が検出できるため，監視カメラ以外に新たなセンサを設置する必要がなく，低コストな監視装置が提供できるという効果がある。さらに，屋外のような環境変動が激しいところのカメラ映像から，複数の背景映像を自動的に登録できるため，木立の揺れ，雨や雪，水面の反射などによる環境変動があっても誤報を出さないロバストな監視装置が提供できるという効果がある。さらにまた、使用されなくなった背景画像は自動的に消去されるため，検出速度の低下や検出感度の劣化が防止できるという効果がある。
【図面の簡単な説明】
【図１】本発明の侵入物体検出の原理を示す図である。
【図２】本発明の監視装置を利用した監視システムの一例である。
【図３】本発明の監視装置のシステム構成図である。
【図４】本発明のリモコンの一実施例である。
【図５】本発明の制御パラメータ設定画面の一実施例である。
【図６】本発明の基本画面の一実施例である。
【図７】本発明の侵入物体検出制御プログラムのフローチャートである。
【図８】本発明の録画データのデータ構造の一実施例である。
【図９】本発明の入力画像と背景画像のデータ構造の一実施例である。
【図１０】本発明の相異度画像のデータ構造の一実施例であるである。
【図１１】本発明の制御データの一実施例である。
【図１２】本発明の相異度の時間波形の例である。
【図１３】本発明の検出処理のフローチャートである。
【図１４】本発明のブロック別変化領域画像作成のフローチャートである。
【図１５】本発明の侵入物体判定処理のフローチャートである。
【図１６】本発明の背景画像登録処理のフローチャートである。
【図１７】本発明の背景画像消去処理のフローチャートである。
【符号の説明】
１００…監視装置，１１０…ビデオ入力端子，１１１…A/D変換器，１１８…ビデオメモリ，１１９…D/A変換器，１２０…ビデオ出力端子，１３０…赤外線受光部，１３９…モデム，１４０…モデム端子，１５０…ＣＰＵ，１６０…補助記憶装置，１７０…メモリ，１８０…データバス，２００…監視カメラ，２１０…携帯電話，２２０…デイスプレィ，４００…リモコン。
【図１】
0003873554.tif 000002
【図２】
0003873554.tif 000003
【図３】
0003873554.tif 000004
【図４】
0003873554.tif 000005
【図５】
0003873554.tif 000006
【図６】
0003873554.tif 000007
【図７】
0003873554.tif 000008
【図８】
0003873554.tif 000009
【図９】
0003873554.tif 000010
【図１０】
0003873554.tif 000011
【図１１】
0003873554.tif 000012
【図１２】
0003873554.tif 000013
【図１３】
0003873554.tif 000014
【図１４】
0003873554.tif 000015
【図１５】
0003873554.tif 000016
【図１６】
0003873554.tif 000017
【図１７】
0003873554.tif 000018