続いて、実施例2に係る監視装置について説明する。図2は、実施例2に係る監視装置の構成を示すブロック図である。図2に示すように、監視装置10は、表示部11と、カメラ12と、記憶部13と、制御部14とを有する。
このうち、表示部11は、モニタ、ディスプレイやタッチパネルなどの表示デバイスである。一例としては、表示部11は、後述のカメラ12により入力される監視画像や後述の撮像妨害判定部16による撮像妨害の判定結果などを表示する。
カメラ12は、CCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)などの撮像デバイスである。このカメラ12は、店舗やオフィスなどの私的空間、道路や駅などの公共空間のいずれに設けられてもよく、この他、監視装置10の管理者が監視対象と定めるエリアを撮像可能な任意の場所に任意の数のカメラを設置できる。また、ここでは、カメラ12が一定のエリアを撮像できるように撮像方向が固定される場合を想定するが、カメラ12の撮像方向を切り替え、1つのカメラ12で複数のエリアを撮像するようにしてもよい。この場合には、各々の撮像方向で撮像されたエリアについて後述の静的領域抽出部15による処理を行うこととすればよい。
なお、図2に示す例では、監視装置10がカメラ12を有する構成を例示したが、必ずしも監視装置10がカメラ12を有する必要はない。一例としては、カメラ12により撮像された画像または外部装置に記憶された画像を所定のネットワークを介して取得することとしてもよい。かかるネットワークには、インターネット(Internet)、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。他の一例としては、所定の読取装置を介して、フレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの記録媒体から、監視対象が収められた画像を取得することとしてもよい。
記憶部13は、例えば、フラッシュメモリ(flash memory)などの半導体メモリ素子、または、ハードディスク(hard disk)、光ディスクなどの記憶装置である。なお、記憶部13は、上記の種類の記憶装置に限定されるものではなく、RAM(Random Access Memory)、ROM(Read Only Memory)であってもよい。
記憶部13は、制御部14で実行されるOS(Operating System)や監視用のアプリケーションなどの各種プログラムを記憶する。さらに、記憶部13は、制御部14で実行されるプログラムの実行に必要なデータを記憶する。一例として、記憶部13は、フレーム履歴データ13aと、静的領域抽出用画像13bと、静的領域データ13cとを併せて記憶する。
フレーム履歴データ13aは、カメラ12により撮像された映像に含まれるフレームに関する履歴データである。このフレーム履歴データ13aの一態様としては、同一の監視エリアが撮像された複数の画像における差分量の履歴が含まれる。
かかる差分量の一例としては、カメラ12により時系列に撮像されたフレーム間で画像全体の領域のうち輝度値が異なる画素の量がフレーム間差分量として後述の差分量算出部13aにより登録される。ここで言う「画素の量」は、フレーム間でそれぞれ対応する画素のうち輝度値が異なる画素の数であってもよいし、また、輝度値が異なる画素を足しあわせた面積であってもよい。なお、フレーム間差分量は、カメラ12により画像が撮像される度に後述の差分量算出部13aにより1つ前のフレームとの間で差分量が算出され、算出されたフレーム間差分量が時系列に履歴登録される。
静的領域抽出用画像13bは、静的領域を抽出するために使用される画像データである。かかる静的領域抽出用画像13bは、監視対象とするエリアのうち、移動体による動きが検出された領域が動的領域として定義されるとともに、移動体による動きが検出されない領域が静的領域として定義された画像である。
この静的領域抽出用画像13bの一例として、動的領域および静的領域が白および黒の二値画像として描画される場合を想定する。なお、動的領域を形成する画素は、輝度値「255」、すなわち「白」として描画される。また、静的領域を形成する画素は、輝度値「0」、すなわち「黒」として描画される。
ここで、静的領域抽出用画像13bは、後述の動的領域描画部15bにより動的領域の更新が開始される前の初期状態では画像全体を静的領域とし、黒く塗りつぶされている。この静的領域抽出用画像13bは、カメラ12により撮像された映像のフレーム間で輝度値の変化が検出されると、その画素に対応する静的領域抽出用画像13bの画素を動的領域として白く塗りつぶす描画処理が後述の動的領域描画部15bにより実行される。
このとき、フレーム間で輝度値の変化が検出されることにより1度でも白く塗りつぶされた画素は、後述の終了判定部15dにより画像全体を黒く塗りつぶすリセットが要請されない限りは、黒に戻されることはない。つまり、初期状態では黒く塗りつぶされていた静的領域抽出用画像13bは、カメラ12により撮像された映像がフレームごとに入力される度に輝度値の変化が検出された画素を累積して白く塗りつぶす描画処理が後述の動的領域描画部15bにより実行される。
このように、フレームごとに静的領域抽出用画像13bに対する動的領域の描画更新が行われる度に動的領域として描画されている画素の量、例えば画素を足しあわせた面積がフレーム履歴データ13aとして後述の動的領域描画部15bにより登録される。すなわち、フレーム履歴データ13aには、上述したフレーム間差分量とともに動的領域の面積がフレームごとに履歴登録されることになる。
静的領域データ13cは、静的領域に関する各種のデータである。この静的領域データ13cの一例としては、後述の終了判定部15dにより静的領域が確定された静的領域抽出用画像13bが静的領域画像として登録される。他の一例としては、後述の閾値算出部15cによりフレーム履歴データ13aを用いて算出された撮像妨害閾値が登録される。なお、撮像妨害閾値は、撮像妨害を判定するための閾値であり、後述の撮像妨害判定部16により静的領域で輝度の変化が検出される画素量との比較する閾値として使用される。
制御部14は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路またはCPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。
制御部14は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部14は、図2に示すように、静的領域抽出部15と、撮像妨害判定部16とを有する。
図2に示す静的領域抽出部15は、カメラ12により時系列に撮像された複数の画像から各画像内で被写体の映り方が変化しない領域を静的領域として抽出する処理部である。
これを説明すると、静的領域抽出部15では、カメラ12により撮像された映像のフレーム間で輝度値の変化が検出される度に、その画素に対応する静的領域抽出用画像13bの画素を動的領域として白く塗りつぶす描画処理を繰り返し実行する。
このとき、静的領域抽出用画像13bに対する動的領域の描画処理をどの程度の期間にわたって実行すればよいのかという基準を適切に規定することが要求される。なぜなら、期間が不十分である場合には、静的領域抽出用画像13bでは黒に描画された静的領域であったしても、現状で輝度値の変化が検出されていないだけでその先には移動体が画像に映り込むことが十分に考えられるからである。その一方で、監視対象とするエリア内を移動体が動き尽くすのにどれだけの期間を費やせばよいかは監視対象とするエリアによって異なる。
そこで、静的領域抽出部15は、画像全体のうち所定の割合の画素が変化するという条件1を満たし、かつ動的領域の大きさが変化しないという条件2とが所定の期間にわたって継続するという条件3を先の描画処理を繰り返す期間を定める条件として定型化した。そして、静的領域抽出部15は、上記の条件3を満たした時点で静的領域抽出用画像13bに描画されている黒色部分の画素を静的領域と確定する。
図3は、静的領域の抽出要領を説明するための説明図である。図3に示す符号31は、画像全体の変化量と経過時間との関係を示すグラフであり、縦軸は画像全体の変化量を示し、横軸は経過時間を示す。ここで言う経過時間とは、カメラ12により映像が入力されるのにしたがって経過する時間を指す。図3に示す符号31a〜符号31dは、グラフ31における画像全体の変化量が所定の閾値(threshold)を上下する時点により経過時間を区切った観測区間を示す。なお、図3に示す例では、グラフ31の縦軸である画像全体の変化量をフレーム間差分量とする場合を例示して説明を行うが、移動体が映っていない背景のみの背景画像と、カメラ12により撮像されたフレームとの間で得られた差分量としもよい。また、ここでは、フレーム間差分量と比較する閾値を固定とする場合を想定して説明を行うが、フレームごとに閾値を動的に変更することとしてもよい。
また、図3に示す符号32は、静的領域の面積と経過時間との関係を示すグラフであり、縦軸は静的領域の面積を示し、横軸は経過時間を示す。図3に示す符号32a〜符号32dは、グラフ31における静的領域の面積の変化が一定となる起点または終点により経過時間を区切った観測区間を示す。なお、図3に示す例では、グラフ32の縦軸を静的領域の面積としたが、静的領域の面積と表裏一体に導出可能な動的領域の面積を縦軸としてもかまわない。
図4A〜図4Cは、カメラから入力される入力画像の一例を示す図である。図4A〜図4Cに示す符号40A〜符号40Cは、いずれも映像の前後の複数フレームを重ね合わせた画像である。図4A〜図4Cに示す符号41は、監視対象とするエリアに含まれる天井の一部を示す。図4A〜図4Cに示す符号42は、監視対象とするエリアに含まれる壁の一部である。また、図4A〜図4Cに示す符号43は、監視対象とするエリアに含まれる床の一部である。なお、図4A及び図4Bの例では、移動体として人物を例示しており、複数フレーム間における同一人物の移動前を網掛け無しで図示し、移動後を網掛け有りで図示している。
図3に示すグラフ31における観測区間31aでは、フレーム間差分量が閾値以下であり、図4Aに示すように、監視対象とするエリアに存在する人がまだらであり、人物の移動が緩やかな映像がカメラ12により撮像されることになる。また、図3に示すグラフ31における観測区間31cでは、フレーム間差分量がゼロまたはゼロに近い値しか検出されない。この場合には、図4に示すように、監視対象とするエリア内に人が存在しない、あるいは存在しても図4Aの場合よりも人物の移動が緩やかな映像がカメラ12により撮像されることになる。
また、図3に示すグラフ31における観測区間31b及び観測区間31dでは、フレーム間差分量が閾値に達している状態が継続する。この場合には、図4Bに示すように、監視対象とするエリアに存在する人が多く、人物の移動が激しい映像がカメラ12により撮像されることになる。
ここで、静的領域抽出部15は、静的領域を抽出するに際して、上記の条件1および条件2を採用するのは、人や動物などの移動体に監視対象とするエリア内で最大限に動き回らせた上で動的領域の描画更新を終えるためである。
すなわち、静的領域抽出用画像13bに対する動的領域の描画処理を長期間にわたって行ったとしても、移動体の数がまだらであり、その動きが緩やかである場合には、監視対象とするエリア内で人が動き得る場所の全てを移動体が移動し終えているとは限らない。また、静的領域抽出用画像13bに対する動的領域の描画処理を短期間しか行わなかったとしても、移動体の数が多く、その動きが激しい場合には、監視対象とするエリア内で移動体が動き得る場所の全てを移動体が移動し終えている場合もある。このため、静的領域抽出部15は、監視対象とするエリア内で移動体が動き得る場所の全てを移動させるために上記の条件1および条件2を採用する。
図3に示したグラフ31の例で言えば、静的領域抽出部15は、静的領域抽出用画像13bに対する動的領域の描画処理を行って静的領域を抽出するに際して、観測区間31aおよび観測区間31cで得られる映像は使用しない。なぜなら、観測区間31aや観測区間31cに撮像された映像を静的領域の抽出に使用した場合には、人の数がまだらであり、その動きが緩やかであるため、人が動き得る壁42や床43の全てを人が移動し終えていない可能性が高まるからである。
このため、静的領域抽出部15は、静的領域を抽出するに際して、観測区間31bや観測区間31dで得られる映像、すなわちフレーム間差分量が閾値を超える映像を使用する。これら観測区間31bや観測区間31dに撮像された映像を静的領域の抽出に使用した場合には、人の数が多く、その動きが激しいため、人が動き得る壁42や床43の全てを人が移動し終える可能性が高まる。
さらに、静的領域抽出部15は、静的領域を抽出するに際して、上記の条件3、すなわち条件1および条件2の両方を満たす状態が所定の期間にわたって継続するという条件を採用するのは、動的領域の拡張が収束した段階で描画処理を終了するためである。
図3に示したグラフ32の例で言えば、静的領域抽出部15は、静的領域抽出用画像13bに対する動的領域の描画処理を行って静的領域を抽出するに際して、観測区間32aおよび観測区間32cでは動的領域の描画処理を終了しない。なぜなら、観測区間32aや観測区間32cでは、静的領域の面積の減少、すなわち動的領域の面積の増加が検出されており、静的領域の一部に動的領域とされ得る余地がある領域が残されているからである。つまり、人が動き得る壁42や床43の領域を残したまま、動的領域の描画処理を終了してしまう可能性が高いからである。
このため、静的領域抽出部15は、静的領域を抽出するに際して、観測区間31bまたは観測区間31dに含まれ、かつ観測区間32bまたは観測区間32dに含まれる区間33Aまたは区間33Bで動的領域の描画処理を終了する。これら区間33A及び区間33Bの中では、動的領域の面積が小さい値で収束する区間33Bの方が動的領域の面積が一時的に収束した区間33Aよりも人が動き得る壁42や床43の全てを人が移動し終えた可能性が高い。よって、静的領域抽出部15は、動的領域の収束が余りにも短い区間でないと推定できるように規定された期間と、上記の条件1および条件2を満たす状態が継続した期間とを比較する。これにより、静的領域抽出部15は、区間33Aで動的領域の描画処理を終了することを避け、区間33Bで動的領域の描画処理を終了し、静的領域を確定する。
このように、静的領域抽出部15は、フレーム間で移動体による動きがあるにもかかわらず、動的領域が変化しない状態、すなわち監視対象とするエリア内で移動体が最大限に動き回って動的領域が収束した状態で動的領域の描画処理を終了できる。これにより、人が移動し得ない天井41だけが映り方に変化がなく、天井41の部分を静的領域として抽出できる。
さらに、静的領域抽出部15の処理内容を詳細に説明する。図2に示すように、静的領域抽出部15は、差分量算出部15aと、動的領域描画部15bと、閾値算出部15cと、終了判定部15dとを有する。
このうち、差分量算出部15aは、カメラ12により入力される映像のフレーム間における差分量を算出する処理部である。一例としては、差分量算出部15aは、カメラ12により画像が撮像される度に1つ前のフレームとの間で画像全体の領域のうち輝度値が異なる画素の量をフレーム間差分量Sdftとして算出する。そして、差分量算出部15aは、このようにして算出したフレーム間差分量Sdftをフレーム履歴データ13aとして時系列に履歴登録する。
なお、ここでは、連続するフレーム間で差分量を算出する場合を説明したが、開示の装置はこれに限定されない。例えば、新たに入力された画像とその画像から任意のフレーム数を遡った画像との間で差分量を算出してもよい。また、ここでは、フレームごとに差分量を算出する場合を説明したが、任意のフレーム数おきに差分量を算出するようにしてもよい。
動的領域描画部15bは、記憶部13に記憶された静的領域抽出用画像13bの動的領域を描画する処理部である。一例としては、動的領域描画部15bは、カメラ12により撮像された映像がフレームごとに入力されると、フレーム間で輝度値の変化が検出された画素に対応する静的領域抽出用画像13bの画素を白く塗りつぶす動的領域の描画処理を実行する。
これを説明すると、動的領域描画部15bは、差分量算出部15aにより算出されたフレーム間差分量Sdftがゼロであるか否かを判定する。このように、フレーム間差分量Sdftがゼロであるか否かを判定するのは、静的領域抽出用画像13bを更新する余地があるかどうかを判別するためである。このとき、フレーム間差分量Sdftがゼロである場合には、フレーム間で画像が同一であるので、静的領域抽出用画像13bの更新は行わない。
一方、フレーム間差分量Sdftがゼロでない場合には、静的領域抽出用画像13bを更新する余地がある。この場合、動的領域描画部15bは、カメラ12により新たに入力されたフレームと1つ前のフレームとの間で輝度値の変化が検出された画素に対応する静的領域抽出用画像13bの画素を動的領域として白く塗りつぶす描画処理を実行する。
また、動的領域描画部15bは、静的領域抽出用画像13bにおける白色の画素を集計することにより動的領域の面積Sdatを算出する。そして、動的領域描画部15bは、このようにして算出した動的領域の面積Sdatをフレーム履歴データ13aとして時系列に履歴登録する。
ここで、静的領域抽出用画像13bに対する動的領域の描画要領を説明する。図5A〜図5Dは、カメラから入力される入力画像の一例を示す図である。図5A〜図5Dに示す符号50A〜符号50Dは、いずれも映像の前後の複数フレームを重ね合わせた画像である。図5A〜図5Dに示す符号51は、監視対象とするエリアに含まれる天井の一部を示す。図5A〜図5Dに示す符号52は、監視対象とするエリアに含まれる壁の一部である。また、図5A〜図5Dに示す符号53は、監視対象とするエリアに含まれる床の一部である。これら図5A〜図5Dに示す入力画像50A〜50Dは、図5A、図5B、図5C、図5Dの順にカメラ12により撮像されたものとする。なお、図5B〜図5Dの例では、移動体として人物を例示しており、複数フレーム間における同一人物の移動前を網掛け無しで図示し、移動後を網掛け有りで図示し、また、移動方向を矢印で図示している。
図6A〜図6Dは、静的領域抽出用画像の一例を示す図である。図6Aに示す符号60Aは、図5Aに示した画像50Aが撮像された時点での静的領域抽出用画像である。図6Bに示す符号60Bは、図5Bに示した画像50Bが撮像された時点での静的領域抽出用画像である。図6Cに示す符号60Cは、図5Cに示した画像50Cが撮像された時点での静的領域抽出用画像である。また、図6Dに示す符号60Dは、図5Dに示した画像50Dが撮像された時点での静的領域抽出用画像である。
図5A〜図5Dに示すように、カメラ12により画像50A、画像50B、画像50C、画像50Dが順次撮像される。これに伴って、図6A〜図6Dに示すように、動的領域描画部15bは、始めは画像全体が静的領域を表す黒色で占められていた静的領域抽出用画像13bの壁52、床53の順に動的領域を表す白色に塗りつぶされてゆく。そして、最終的には、人が動き得る壁52や床53の部分がほぼ白く塗りつぶされ、人が移動し得ない天井51とほぼ同様の部分だけが静的領域として残る結果となる。
図2の説明に戻り、閾値算出部15cは、記憶部13にフレーム履歴データ13aとして記憶されたフレーム間差分量の算出履歴を用いて、フレーム間における画像全体の輝度の変化を判定するための閾値Thを算出する。この閾値Thは、条件1を満たすか否かを判定するための閾値であるので、以下では条件1判定用の閾値Thと呼ぶ。
一例としては、閾値算出部15cは、フレーム間差分量Sdftの算出履歴のうち最小のフレーム間差分量Sminおよび最大のフレーム間差分量Smaxを用いて、SminとSmaxの中間のフレーム間差分量Smidを条件1判定用閾値Thとして算出する。この中間のフレーム間差分量Smidは、(Smin+Smax)/2の演算を行うことにより導出される。他の一例としては、閾値算出部15cは、全てのフレーム間差分量Sdftを平均することにより、平均のフレーム間差分量Smeanを算出する。
このように、閾値算出部15cは、条件1判定用閾値Thとして中間のフレーム間差分量Smidまたは平均のフレーム間差分量Smeanを算出する。これにより、監視対象とするエリアにおける移動体の数および動きがバラツキなく変化しているか否か、すなわち条件1を正確に判定できる。さらに、閾値算出部15cは、フレームごとに条件1判定用閾値Thを動的に算出するので、時間経過に従ってより適切な閾値に収束させることもできる。
終了判定部15dは、静的領域の抽出を終了するか否かを判定する処理部である。これを説明すると、終了判定部15dは、差分量算出部15aにより算出されたフレーム間差分量Sdftが閾値算出部15cにより算出された条件1判定用閾値Thよりも大きいか否か、すなわち条件1を満たすか否かを判定する。このとき、フレーム間差分量Sdftが条件1判定用閾値Thよりも大きい場合には、終了判定部15dは、動的領域描画部15bにより算出された動的領域の面積が1つ前のフレームと比べて変化がないか否か、すなわち条件2を満たすか否かを判定する。すなわち、終了判定部15dは、動的領域描画部15bにより今回算出された動的領域の面積Sdat2と、前回算出された動的領域の面積Sdat1との差がゼロ、すなわちSdat2−Sdat1=0であるか否かを判定する。
このとき、条件1および条件2を満たすと判定された場合には、終了判定部15dは、条件1および条件2を連続して満たすフレーム数を観測するための観測フレーム数をインクリメント(increment)する。なお、条件1または条件2に反すると判定された場合には、終了判定部15dは、観測フレーム数をリセット(reset)する。
ここで、終了判定部15dは、観測フレーム数が条件3判定用閾値Fnumを超えたか否かを判定する。このとき、終了判定部15dは、動的領域描画部15bにより算出された動的領域の面積を暫定動的領域面積DSとし、このDSを最小のフレーム間差分量Sminで除した値、すなわちDS/Sminを条件3判定用閾値Fnumとして算出して使用する。これにより、監視対象とするエリアに出現する移動体の数、大きさ、動きが最小と仮定した場合に移動体が動き得る場所の全てを移動するのに要すると推定されるフレーム数を静的領域の抽出の終了条件とすることができる。
このとき、観測フレーム数が条件3判定用閾値Fnumを超えた場合には、終了判定部15dは、静的領域抽出用画像13bに対する動的領域の更新を終了し、静的領域を確定する。すなわち、終了判定部15dは、記憶部13に記憶された静的領域抽出用画像13bを静的領域画像と確定するとともに、差分量算出部15aにより最後に算出された最大のフレーム間差分量Smaxを撮像妨害閾値Tcと設定する。そして、終了判定部15dは、これら静的領域画像及び撮像妨害閾値Tcを静的領域データ13cとして記憶部13へ登録する。
なお、条件3判定用閾値Fnumは、上記の算出結果を用いることに限定されない。例えば、予め規定された固定値を用いることとしてもかまわない。なお、ここでは、条件3を満たすか否かをフレーム数で判定することとしたが、期間に関する閾値を設定して条件3を満たすか否かを判定することとしてもよい。
撮像妨害判定部16は、記憶部13に記憶された静的領域データ13cを用いて、カメラ12に対する撮像妨害が行われたか否かを判定する処理部である。一例としては、撮像妨害判定部16は、カメラ12により画像が撮像される度に新たに撮像されたフレームと1つ前のフレームとの間で静的領域のうち輝度値が異なる画素の量を輝度変化面積として算出する。その上で、撮像妨害判定部16は、輝度変化面積が撮像妨害閾値Tc以上である場合に、カメラ12に対する撮像妨害が行われたと判定する。
このように、撮像妨害判定部16は、撮像妨害閾値Tcとして最大のフレーム間差分量Smaxを使用する。すなわち、静的領域画像に規定されている静的領域は、必ずしも人が移動し得ない天井などの映り方に変化がない完全な静的領域とは限らない。このため、静的領域で輝度の変化が発生することは想定されるが、監視対象とするエリアでそれまでに最大であったフレーム間差分量Smaxが静的領域で発生することは想定されにくく、この場合には撮像妨害が行われたものと推定できる。なお、撮像妨害閾値Tcは、上記の算出結果を用いることに限定されない。例えば、予め規定された固定値を用いることとしてもかまわない。
[処理の流れ]
次に、本実施例に係る監視装置の処理の流れについて説明する。なお、ここでは、静的領域抽出部15により実行される(1)静的領域抽出処理を説明してから、撮像妨害判定部16により実行される(2)撮像妨害判定処理を説明することとする。
(1)静的領域抽出処理
図7は、実施例2に係る静的領域抽出処理の手順を示すフローチャートである。この静的領域抽出処理は、カメラ12が新たなエリアを監視対象として場所の設置が変更された場合に起動する処理である。一例として、監視装置10が始めて起動した場合、あるいは監視装置10の管理者による操作を受け付けた場合に処理が起動する。
図7に示すように、カメラ12により撮像された映像が入力されると(ステップS301)、差分量算出部15aは、1つ前のフレームとの間で画像全体の領域のうち輝度値が異なる画素の量をフレーム間差分量Sdftとして算出する(ステップS302)。
そして、動的領域描画部15bは、差分量算出部15aにより算出されたフレーム間差分量Sdftがゼロであるか否かを判定する(ステップS303)。なお、フレーム間差分量Sdftがゼロである場合(ステップS303否定)には、フレーム間で画像が同一であるので、静的領域抽出用画像13bの更新は行わず、ステップS301の処理へ戻る。
このとき、フレーム間差分量Sdftがゼロでない場合(ステップS303肯定)には、静的領域抽出用画像13bを更新する余地がある。この場合、動的領域描画部15bは、フレーム間で輝度値の変化が検出された画素に対応する静的領域抽出用画像13bの画素を動的領域として白く塗りつぶす描画処理を実行し、動的領域描画部15bは、動的領域の面積Sdatを算出する(ステップS304)。
続いて、閾値算出部15cは、記憶部13にフレーム履歴データ13aとして記憶されたフレーム間差分量の算出履歴を用いて、フレーム間における画像全体の輝度の変化を判定するための条件1判定用閾値Thを算出する(ステップS305)。
ここで、終了判定部15dは、差分量算出部15aにより算出されたフレーム間差分量Sdftが閾値算出部15cにより算出された条件1判定用閾値Thよりも大きいか否かを判定する(ステップS306)。この結果、フレーム間差分量Sdftが条件1判定用閾値Thよりも大きい場合(ステップS306肯定)には、終了判定部15dは、次のような処理を行う。すなわち、終了判定部15dは、動的領域描画部15bにより算出された動的領域の面積が1つ前のフレームと比べて変化がないか否かをさらに判定する(ステップS307)。
このとき、フレーム間差分量Sdftが条件1判定用閾値Th以下である場合(ステップS306否定)、または動的領域の面積が1つ前のフレームと比べて変化した場合(ステップS307否定)には、次のような処理を行う。すなわち、終了判定部15dは、観測フレーム数をリセットし(ステップS308)、ステップS301の処理へ戻る。
また、動的領域の面積が1つ前のフレームと比べて変化がない場合(ステップS307肯定)、終了判定部15dは、条件1および条件2を連続して満たすフレーム数を観測するための観測フレーム数をインクリメントする(ステップS309)。
そして、終了判定部15dは、観測フレーム数が条件3判定用閾値Fnumを超えたか否かを判定する(ステップS310)。このとき、観測フレーム数が条件3判定用閾値Fnum以下である場合(ステップS310否定)には、ステップS301の処理へ戻る。
また、観測フレーム数が条件3判定用閾値Fnumを超えた場合(ステップS310肯定)には、終了判定部15dは、静的領域抽出用画像13bに対する動的領域の更新を終了して静的領域を確定し(ステップS311)、処理を終了する。
(2)撮像妨害判定処理
図8は、実施例2に係る撮像妨害判定処理の手順を示すフローチャートである。この撮像妨害判定処理は、上記の静的領域抽出処理が終了している場合に、監視装置10の電源がオン状態である限り、再帰的に繰り返し実行される処理である。
図8に示すように、カメラ12から映像が入力されると(ステップS501)、撮像妨害判定部16は、新たに撮像されたフレームと1つ前のフレームとの間で静的領域のうち輝度値が異なる画素の量を輝度変化面積として算出する(ステップS502)。
ここで、撮像妨害判定部16は、輝度変化面積が撮像妨害閾値Tc以上であるか否かを判定する(ステップS503)。このとき、輝度変化面積が撮像妨害閾値Tc以上である場合(ステップS503肯定)には、撮像妨害判定部16は、カメラ12に対する撮像妨害が行われたと判定し(ステップS504)、監視装置10の管理者へ報知を行い、処理を終了する。
一方、輝度変化面積が撮像妨害閾値Tc未満である場合(ステップS503否定)には、撮像妨害判定部16は、カメラ12に対する撮像妨害が行われていないと判定し(ステップS505)、そのまま処理を終了する。
[実施例2の効果]
上述してきたように、本実施例に係る監視装置10は、カメラ12により撮像される画像の中でも監視対象とするエリアに移動体が出現してもしなくても映り方が変化しない静的領域を対象にして撮像妨害を判定する。つまり、本実施例に係る監視装置10では、カメラ12により撮像された画像全体を均一に用いて撮像妨害を判定することはしない。なぜなら、画像全体には、移動体の出現による影響と、撮像妨害による影響との両方が現れ得る一方で、静的領域には、画像全体の場合よりも移動体の出現による影響が現れる可能性が低く、撮像妨害による影響だけが現れる可能性が高いからである。それゆえ、本実施例に係る監視装置10では、監視対象とするエリアに出現する移動体の影響によらず、撮像妨害が行われたか否かを判定できる。したがって、本実施例に係る監視装置10によれば、監視対象とするエリアに移動体が出現する場合でも、カメラ12に対する妨害を適切に検知することが可能になる。
また、本実施例に係る監視装置10は、画像全体のうち所定の割合の画素が変化するという条件1を満たし、かつ動的領域の大きさが変化しないという条件2とが所定の期間にわたって継続するという条件3を先の描画処理を繰り返す期間を定める条件として定型化した。そして、静的領域抽出部15は、上記の条件3を満たした時点で静的領域抽出用画像13bに描画されている黒色部分の画素を静的領域と確定する。このため、本実施例に係る監視装置10では、フレーム間で移動体による動きがあるにもかかわらず、動的領域が変化しない状態、すなわち監視対象とするエリア内で移動体が最大限に動き回って動的領域が収束した状態で動的領域の描画処理を終了できる。それゆえ、本実施例に係る監視装置10によれば、移動体が移動し得ない領域だけが映り方に変化がなく、静的領域を正確に抽出することが可能になる。
さらに、本実施例に係る監視装置10は、フレーム間における画像全体の輝度の変化を判定するための条件1判定用閾値Thとして中間のフレーム間差分量Smidまたは平均のフレーム間差分量Smeanを算出する。これにより、本実施例に係る監視装置10では、監視対象とするエリアにおける移動体の数および動きがバラツキなく変化しているか否かを適切に判定することが可能になる。さらに、本実施例に係る監視装置10では、フレームごとに条件1判定用閾値Thを動的に算出するので、時間経過に従ってより適切な閾値に収束させることもできる。
また、本実施例に係る監視装置10は、フレーム間の差分量の算出履歴を用いて、静的領域で輝度の変化が検出される画素の量との比較により撮像妨害を判定するための撮像妨害閾値Tcを導出する。その上で、本実施例に係る監視装置10は、先に抽出した静的領域で輝度の変化が検出された画素の量が撮像妨害閾値Tc以上である場合に、カメラ12に対する撮像妨害が行われたと判定する。これにより、本実施例に係る監視装置10では、カメラ12に対する妨害をより適切に検知することが可能になる。
さて、上記の実施例2では、フレーム間の差分量の算出履歴を用いて、画像全体の輝度の変化を判定するための条件1判定用閾値Thを算出する場合を説明したが、開示の装置はこれに限定されるものではない。そこで、実施例3では、フレーム間の差分量の算出履歴以外のデータを用いて、条件1判定用閾値Thを算出する場合を説明する。
図9は、実施例3に係る監視装置の構成を示すブロック図である。図9に示すように、監視装置20は、図2に示した監視装置20と比較して、記憶部23に記憶される情報および制御部24で動作する機能部の一部が異なる。なお、以下では、図2に示した監視装置10と対比しながら説明することとし、上記の実施例2と同様の機能を発揮するものついては同一の符号を付すとともにその説明を省略する。
記憶部23は、図2に示した記憶部13に比較して、所定の期間にわたって画像全体の領域で輝度値の変化が継続して検出されない画像、すなわち移動体が含まれない背景画像23dを記憶する点が異なる。
制御部24は、図2に示した制御部14に比較して、静的領域抽出部25に含まれる差分量算出部25a、閾値算出部25c及び終了判定部25bの処理動作の一部が異なる点で相違する。
差分量算出部25aは、図2に示した差分量算出部15aに比較して、カメラ12により画像が撮像される度に入力画像と背景画像23dとの間で画像全体の領域のうち輝度値が異なる画素の量を対背景差分量Sbgtとしてさらに算出する点が異なる。そして、差分量算出部25aは、このようにして算出した対背景差分量Sbgtをフレーム履歴データ23aとして時系列に履歴登録する。
閾値算出部25cは、図2に示した閾値算出部15cに比較して、フレーム間差分量Sdftの代わりに対背景差分量Sbgtを用いて、背景画像に対するフレームの画像全体の輝度の変化を判定するための閾値Thを算出する点が異なる。この閾値Thは、条件1に類する条件1′を満たすか否かを判定するための閾値であるので、条件1′判定用閾値Thと呼ぶ。
一例としては、閾値算出部25cは、対背景差分量Sbgtの算出履歴のうち最小の対背景差分量SBminおよび最大の対背景差分量SBmaxを用いて、SBminとSBmaxの中間の対背景差分量SBmidを条件1′判定用閾値Thとして算出する。この中間の対背景差分量SBmidは、(SBmin+SBmax)/2の演算を行うことにより導出される。他の一例としては、閾値算出部15cは、全ての対背景差分量Sbgtを平均することにより、平均の対背景差分量SBmeanを算出する。
このように、閾値算出部25cは、条件1′判定用閾値Thとして、中間の対背景差分量SBmidまたは平均の対背景差分量SBmeanを算出する。これにより、上記の実施例2と同様、監視対象とするエリアにおける移動体の数および動きがバラツキなく変化しているか否か、すなわち条件1′を正確に判定できる。さらに、閾値算出部15cは、フレームごとに条件1′判定用閾値Thを動的に算出するので、時間経過に従ってより適切な閾値に収束させることもできる。
終了判定部25dは、図2に示した終了判定部15dに比較して、条件1の代わりに条件1′を満たすか否かを判定する点が異なる。すなわち、終了判定部25dは、差分量算出部25aにより算出された対背景差分量Sbgtが閾値算出部25cにより算出された条件1′判定用閾値Thよりも大きいか否かを満たすか否かを判定する。
また、終了判定部25dは、観測フレーム数が条件3′判定用閾値Fnumを超えたか否かを判定する。このとき、終了判定部25dは、動的領域描画部15bにより算出された動的領域の面積を暫定動的領域面積DSとし、このDSを最小の対背景差分量SBminで除した値、すなわちDS/SBminを条件3′判定用閾値Fnumとして算出して使用する。
このとき、観測フレーム数が条件3′判定用閾値Fnumを超えた場合には、終了判定部25dは、静的領域抽出用画像13bに対する動的領域の更新を終了し、静的領域を確定する。すなわち、終了判定部25dは、記憶部23に記憶された静的領域抽出用画像13bを静的領域画像と確定するとともに、差分量算出部25aにより最後に算出された最小の対背景差分量SBminを撮像妨害閾値Tc′と設定する。そして、終了判定部25dは、これら静的領域画像及び撮像妨害閾値Tc′を静的領域データ23cとして記憶部23へ登録する。
また、撮像妨害判定部26は、図2に示した撮像妨害判定部26に比較して、輝度変化面積との比較に用いる撮像妨害閾値Tc′が最小の対背景差分量SBminである点が異なる。
図10は、実施例3に係る静的領域抽出処理の手順を示すフローチャートである。この静的領域抽出処理は、カメラ12が新たなエリアを監視対象として場所の設置が変更された場合に起動する処理である。一例として、監視装置10が始めて起動した場合、あるいは監視装置10の管理者による操作を受け付けた場合に処理が起動する。
図10に示すように、カメラ12により撮像された映像が入力される(ステップS701)。これを受けて、差分量算出部25aは、フレーム間差分量Sdft算出するとともに、入力画像と背景画像との間で画像全体の領域のうち輝度値が異なる画素の量を対背景差分量Sbgtとして算出する(ステップS702)。
そして、動的領域描画部25bは、差分量算出部25aにより算出されたフレーム間差分量Sdftがゼロであるか否かを判定する(ステップS703)。なお、フレーム間差分量Sdftがゼロである場合(ステップS703否定)には、フレーム間で画像が同一であるので、静的領域抽出用画像13bの更新は行わず、ステップS701の処理へ戻る。
このとき、フレーム間差分量Sdftがゼロでない場合(ステップS703肯定)には、静的領域抽出用画像13bを更新する余地がある。この場合、動的領域描画部15bは、フレーム間で輝度値の変化が検出された画素に対応する静的領域抽出用画像13bの画素を動的領域として白く塗りつぶす描画処理を実行し、動的領域描画部15bは、動的領域の面積Sdatを算出する(ステップS704)。
続いて、閾値算出部25cは、対背景画像差分量Sbgtの算出履歴を用いて、背景画像に対するフレームの画像全体の輝度の変化を判定するための条件1′判定用閾値Thを算出する(ステップS705)。
ここで、終了判定部25dは、差分量算出部25aにより算出された対背景差分量Sbgtが閾値算出部25cにより算出された条件1′判定用閾値Thよりも大きいか否かを満たすか否かを判定する(ステップS706)。この結果、対背景差分量Sbgtが条件1′判定用閾値Thよりも大きい場合(ステップS706肯定)には、終了判定部25dは、次のような処理を行う。すなわち、終了判定部25dは、動的領域描画部15bにより算出された動的領域の面積が1つ前のフレームと比べて変化がないか否かをさらに判定する(ステップS707)。
このとき、対背景差分量Sbgtが条件1′判定用閾値Th以下である場合(ステップS706否定)、または動的領域の面積が1つ前のフレームと比べて変化した場合(ステップS707否定)には、次のような処理を行う。すなわち、終了判定部25dは、観測フレーム数をリセットし(ステップS708)、ステップS701の処理へ戻る。
また、動的領域の面積が1つ前のフレームと比べて変化がない場合(ステップS707肯定)、終了判定部25dは、条件1′および条件2を連続して満たすフレーム数を観測するための観測フレーム数をインクリメントする(ステップS709)。
そして、終了判定部15dは、観測フレーム数が条件3′判定用閾値Fnumを超えたか否かを判定する(ステップS710)。このとき、観測フレーム数が条件3′判定用閾値Fnum以下である場合(ステップS710否定)には、ステップS701の処理へ戻る。
また、観測フレーム数が条件3′判定用閾値Fnumを超えた場合(ステップS710肯定)には、終了判定部25dは、静的領域抽出用画像13bに対する動的領域の更新を終了して静的領域を確定し(ステップS711)、処理を終了する。
[実施例3の効果]
このように、本実施例に係る監視装置20は、フレームごとに、所定の期間にわたって画像全体の領域で輝度値の変化が継続して検出されない画像、すなわち移動体が含まれない背景画像との間で輝度値が異なる画素の量を対背景画像の差分量として算出する。そして、本実施例に係る監視装置20は、各フレームの対背景画像の差分量の算出履歴から、背景画像に対するフレームの画像全体の輝度の変化を判定するための閾値を条件1′判定用閾値Thとして算出する。その上で、本実施例に係る監視装置20は、対背景画像の差分量が条件1′判定用閾値Thよりも大きいか否かに基づき、背景画像に対するフレームの画像全体の輝度が変化したか否かを判定する。
これにより、本実施例に係る監視装置20では、上記の実施例2と同様、監視対象とするエリアにおける移動体の数および動きがバラツキなく変化しているか否かを適切に判定することが可能になる。さらに、本実施例に係る監視装置20では、フレームごとに条件1′判定用閾値Thを動的に算出するので、時間経過に従ってより適切な閾値に収束させることもできる。