(57)【要約】【課題】誤検知を防止して、不動体の検知を可能にする画像処理方法を提供する。【解決手段】例えば重み付き混合正規分布のように、１または複数の画素の輝度が、輝度に関する複数個の輝度分布のいずれに属するかを判定し、属すると判定された輝度分布についての重みを漸増すると共に、その他の輝度分布についての重みを漸減するようにして、複数個の輝度分布の重みを算出する。算出された重みに基づいて、１または複数の画素の輝度の時間的な変化状態を、安定クラス、中間クラス、不安定クラスを少なくとも含む複数クラスに分類し、その時間的遷移を判別する。クラスの時間的遷移が、不安定クラスから、中間クラスを経由して安定クラスになった時点を輝度変化検出タイミングとし、そのときの基準輝度値と変化後輝度値とを比較し、その比較結果から不動体の検知判定を行なう。【選択図】図１
2006331306.tif 000002
【特許請求の範囲】
【請求項１】
時系列方向に連続した画像を取り込む画像取り込み手段と、
前記画像取り込み手段で取り込んだ画像の１または複数画素ごとに、当該１または複数の画素の輝度が、複数個の輝度分布のいずれに属するかを判定し、属すると判定された輝度分布についての重みを漸増すると共に、その他の輝度分布についての重みを漸減するようにして、前記複数個の輝度分布の重みを算出する算出手段と、
前記算出手段で算出された前記輝度分布の重みに基づいて、前記１または複数の画素の輝度の時間的な変化状態を、前記１または複数の画素の輝度が所定の範囲内で安定している安定クラスおよび前記１または複数の画素の輝度が前記複数個の輝度分布のいずれに属するかが確定できない不安定クラスおよび前記安定クラスと前記不安定クラスとの中間状態である中間クラスを少なくなくとも含む複数のクラスに分類するクラス分類手段と、
前記１または複数の画素毎に、前記クラス分類手段によって分類されたクラスの時間的遷移を判別するクラス遷移判別手段と、
前記１または複数の画素の輝度の時間的な変化状態が前記安定クラスにあるとされたときに前記重みが最大である輝度分布の代表輝度値を、前記１または複数の画素の基準輝度値として取得し、時間変化に応じて更新する基準輝度値更新手段と、
前記クラス遷移判別手段で判別された前記クラスの時間的遷移が、前記不安定クラスから、前記中間クラスを経由して前記安定クラスになった時点を輝度変化検出タイミングとし、当該輝度変化検出タイミングにおいて、前記複数個の輝度分布中の前記重みが最大である輝度分布の代表輝度値と、前記基準輝度値とを比較して、前記１または複数画素について輝度の変化があったかどうかを検出する輝度変化検出手段と、
前記輝度変化検出手段で前記輝度の変化があったと検出されたときに、その変化のあった前記１または複数画素の前記画像中の位置を識別するための情報と、当該変化があった時間の情報とを記憶する変化検出記憶手段と、
を備え、前記変化検出記憶手段に記憶された情報に基づいて、時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分を検出することを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記算出手段は、前記１または複数の画素ごとに、輝度に関する複数個の正規分布と前記重みからなる重み付き混合正規分布を算出するものであり、
前記代表輝度値は、前記正規分布の平均輝度値である
ことを特徴とする画像処理装置。
【請求項３】
請求項１に記載の画像処理装置において、
前記クラス分類手段は、前記複数個の分類のうちの前記重みが大きい上位２個の分類についての前記重みの関係に基づいて、前記複数のクラスに分類する
ことを特徴とする画像処理装置。
【請求項４】
請求項３に記載の画像処理装置において、
前記重みが大きい上位２個の分類についての前記重みの関係は、前記上位２個の分類の前記重みの比である
ことを特徴とする画像処理装置。
【請求項５】
請求項１に記載の画像処理装置において、
前記基準輝度値更新手段は、前記前記クラス遷移判別手段で前記輝度の時間的な変化状態が前記安定クラスから前記中間クラスを経由して前記不安定クラスでなったときに、前記基準輝度値を更新する
ことを特徴とする画像処理装置。
【請求項６】
請求項１に記載の画像処理装置において、
前記輝度変化検出タイミングで前記輝度変化を検出してから所定時間以内は、前記基準輝度値の更新を禁止するようにした
ことを特徴とする画像処理装置。
【請求項７】
時系列方向に連続した画像を取り込む画像取り込み工程と、
前記画像取り込み工程で取り込んだ画像の１または複数画素ごとに、当該１または複数の画素の輝度が、複数個の輝度分布のいずれに属するかを判定し、属すると判定された輝度分布についての重みを漸増すると共に、その他の輝度分布についての重みを漸減するようにして、前記複数個の輝度分布の重みを算出する算出工程と、
前記算出工程で算出された前記輝度分布の重みに基づいて、前記１または複数の画素の輝度の時間的な変化状態を、前記１または複数の画素の輝度が所定の範囲内で安定している安定クラス、前記１または複数の画素の輝度が前記複数個の輝度分布のいずれに属するかが確定できない不安定クラスおよび前記安定クラスと前記不安定クラスとの中間状態である中間クラスを少なくなくとも含む複数のクラスに分類するクラス分類工程と、
前記１または複数の画素毎に、前記クラス分類工程によって分類されたクラスの時間的遷移を判別するクラス遷移判別工程と、
前記１または複数の画素の輝度の時間的な変化状態が前記安定クラスにあるとされたときに前記重みが最大である輝度分布の代表輝度値を、前記１または複数の画素の基準輝度値として取得し、時間変化に応じて更新する基準輝度値更新工程と、
前記クラス遷移判別工程で判別された前記クラスの時間的遷移が、前記不安定クラスから、前記中間クラスを経由して前記安定クラスになった時点を輝度変化検出タイミングとし、当該輝度変化検出タイミングにおいて、前記複数個の輝度分布中の前記重みが最大である輝度分布の代表輝度値と、前記基準輝度値とを比較して、前記１または複数画素について輝度の変化があったかどうかを検出する輝度変化検出工程と、
前記輝度変化検出工程で前記輝度の変化があったと検出されたときに、その変化のあった前記１または複数画素の前記画像中の位置を識別するための情報と、当該変化があった時間の情報とを記憶する変化検出記憶工程と、
を備え、前記変化検出記憶工程に記憶された情報に基づいて、時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分を検出することを特徴とする画像処理方法。
【請求項８】
時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分を検出するためにコンピュータを、
時系列方向に連続した画像を取り込む画像取り込み手段、
前記画像取り込み手段で取り込んだ画像の１または複数画素ごとに、当該１または複数の画素の輝度が、複数個の輝度分布のいずれに属するかを判定し、属すると判定された輝度分布についての重みを漸増すると共に、その他の輝度分布についての重みを漸減するようにして、前記複数個の輝度分布の重みを算出する算出手段、
前記算出手段で算出された前記輝度分布の重みに基づいて、前記１または複数の画素の輝度の時間的な変化状態を、前記１または複数の画素の輝度が所定の範囲内で安定している安定クラス、前記１または複数の画素の輝度が前記複数個の輝度分布のいずれに属するかが確定できない不安定クラスおよび前記安定クラスと前記不安定クラスとの中間状態である中間クラスを少なくなくとも含む複数のクラスに分類するクラス分類手段、
前記１または複数の画素毎に、前記クラス分類手段によって分類されたクラスの時間的遷移を判別するクラス遷移判別手段、
前記１または複数の画素の輝度の時間的な変化状態が前記安定クラスにあるとされたときに前記重みが最大である輝度分布の代表輝度値を、前記１または複数の画素の基準輝度値として取得し、時間変化に応じて更新する基準輝度値更新手段、
前記クラス遷移判別手段で判別された前記クラスの時間的遷移が、前記不安定クラスから、前記中間クラスを経由して前記安定クラスになった時点を輝度変化検出タイミングとし、当該輝度変化検出タイミングにおいて、前記複数個の輝度分布中の前記重みが最大である輝度分布の代表輝度値と、前記基準輝度値とを比較して、前記１または複数画素について輝度の変化があったかどうかを検出する輝度変化検出手段、
前記輝度変化検出手段で前記輝度の変化があったと検出されたときに、その変化のあった前記１または複数画素の前記画像中の位置を識別するための情報と、当該変化があった時間の情報とを記憶する変化検出記憶手段、
前記変化検出記憶手段に記憶された情報に基づいて、時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分の検出出力を出力する出力手段
として機能させるための画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、時間経過に応じて画像中に新たに加わって静止した物体（画像部分）または画像中から消失した物体（画像部分）を検出するための画像処理装置、画像処理方法および画像処理プログラムに関する。
【背景技術】
【０００２】
カメラから得た映像を基に、画像処理により、監視領域内に新たに加わって静止した状態の物体や監視領域内から消失した物体（画像部分）（以下、不動体という）を検出する画像処理装置が従来から提案されている。
【０００３】
例えば、特許文献１（特許第２９１３８８２号）には、路上に現れた障害物や落下物を検知する方法や装置が提案されており、順次更新される基準背景画像と撮影画像のとの差分の正負符号の変化で、路上物体の発生と消滅を判定し検出している。
【０００４】
ところで、基準背景画像の更新方法としては、種々のものがあるが、その１つとして指数平滑法がある。この指数平滑法は、時刻ｔにおける背景画像をＢｔ、入力画像をＣｔ、平滑定数α（０≦α≦１）とすると、背景画像Ｂｔを、図１７に示す式（１）に示すようにして更新する方法である。
【０００５】
この指数平滑法においては、平滑定数αの値を大きくすることで入力画像の影響を小さくでき、入力画像に移動体が撮影された場合にもその影響を小さくできる。ただし、移動体が多い場合はかなり影響が残ってしまうという問題がある。
【０００６】
この問題を改善することができる基準背景画像の更新方法として、重み付き混合正規分布を用いる方法がある。この重み付き混合正規分布を用いる方法は、１画素毎に、輝度の時間的な変化を検出するもので、次のようなものである。
【０００７】
現在（時点ｔ）の画素の輝度Ｘｔの確立Ｐ（Ｘｔ）は、一般に、図１７に示す式（２）のように表わすことができる。式（２）における確立密度関数ηは、図１７に示す式（３）のように表わすことができる。このとき、共分散行列Σｋ，ｉは、図１７に示す式（４）と仮定している。
【０００８】
この重み付き混合正規分布を用いる方法においては、各画素の輝度は、ｋ個（ｋは正の整数）の正規分布のいずれに属するかを探す。例えば、１画素の輝度データが８ビットで現される画像データの場合、図１８（Ａ）に示すような４個の輝度正規分布を用意し、各画素の輝度が、当該４個の輝度正規分布のどれに属するかを探す。
【０００９】
ある画素の輝度Ｘｔが、例えば、その輝度正規分布の平均値μｋ±２σｋ以内の値であるか否か判定し、以内であれば当該輝度正規分布に属していると判定し、以外であれば当該輝度正規分布に属していないと判定する。もしも、いずれの輝度正規分布にも属さないときには、ｋ個の輝度正規分布のうち後述する重みが最も小さい輝度正規分布の平均値μを、そのときの画素の輝度Ｘｔに置き換える。
【００１０】
そして、画素毎に、当該画素の輝度Ｘｔが属した輝度正規分布の重みを大きく、属さなかった輝度正規分布の重みは小さくするように、各輝度正規分布の重みωｋ、ｔを更新する。すなわち、例えば、画素の輝度Ｘｔが属した輝度正規分布の重みωｋ、ｔは、図１７に示す式（５）にしたがって更新し、また、属さなかった輝度正規分布の重みωｋ、ｔは、図１７に示す式（６）にしたがって更新する。なお、式（５）および式（６）において、αは重みの更新速度であり、０≦α≦１である。
【００１１】
そして、各輝度正規分布の平均値μｔと分散σは、図１７に示す式（７）、式（８）、式（９）に基づいて、更新される。
【００１２】
以上により、各画素毎について、複数個の輝度正規分布のそれぞれの重みωｋ、ｔの情報が、図１８（Ｂ）に示すように更新されてゆく。この方法で得られた一番重みの重い輝度正規分布の平均値は、基本的に移動体を除いた静止した状態の画像部分の画素の輝度を示すことになる。
【００１３】
したがって、重みが一番大きい輝度正規分布の平均値の変化に注目すれば、移動体の影響をかなり受けずに、物が移動してなくなった状態と、物が移動して停止している状態を画素毎に検知することができる。そして、画素毎の検知結果を位置的に統合して画像部分の塊として不動体を検出することができる。
【００１４】
上記の特許文献は、次の通りである。
【特許文献１】特許２９１３８８２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、上述した重み付き混合正規分布を用いて背景画像の更新を行なう方法において、単に、重みが一番大きい輝度正規分布の平均値の変化を注目して不動体を検知しようとした場合には、例えば風による木の揺れや水面の揺らぎのように、頻繁に輝度が変化する場合には、当該輝度の変化により頻繁に不動体が検知されてしまう誤検知を生じてしまう問題がある。
【００１６】
この問題について、複数個の輝度正規分布のうち、重みの大きさが上位となる２つ正規分布の重みの推移を参照しながら、さらに説明する。
【００１７】
例えば、カメラによる撮影監視領域に車が入ってきて停止した場合、停車した画像領域の、或る１画素の輝度を時間方向に注目すると、はじめ背景の輝度であったのが、車の輝度に変化するものとなる。このような状況で、上述した重み付き混合正規分布を算出したときの、上位２つの重みの推移を図１９に示す。
【００１８】
図１９において、ｆ１（ｗ１＿ｔ, ｍ１＿ｔ）は、時刻ｔで、重みｗ１＿ｔと輝度（輝度正規分布の平均値）ｍ１＿ｔとを持つ背景を表し、ｆ２（ｗ２＿ｔ，ｍ２＿ｔ）は、時刻ｔで、重みｗ２＿ｔと輝度（輝度正規分布の平均値）ｍ２＿ｔとを持つ車を表している。重みも、輝度（輝度正規分布の平均値）も、前述した式（５）、式（６）、式（７）により時間ｔの経過に伴って更新される。
【００１９】
図１９に示すように、最初は、背景の重みｗ１＿ｔが大きく、停車すると徐々に車の重みｗ２＿ｔが増し、それに伴い背景の重みｗ１＿ｔが減り、最終的には車の重みｗ２＿ｔが最大になる。したがって、重みが一番大きい輝度正規分布の平均値（輝度）の変化、すなわち、図１９の場合であれば、ｍ１＿ｔとｍ２＿ｔの差を検知すれば、注目画素の部分が背景から停止している車に変化したことがわかる。
【００２０】
次に、車が監視領域内を通過した場合について、重みの大きさが上位となる２つ輝度正規分布の重みの推移を図２０に示す。図１９と同様に、ｆ１（ｗ１＿ｔ,ｍ１＿ｔ）は背景を、ｆ２（ｗ２＿ｔ， ｍ２＿ｔ）は車を、それぞれ表している。
【００２１】
この図２０に示すように、車が通過している最中は、注目画素の部分については、車の重みは増し、背景の重みは減少するが、車が通過した後、注目画素の部分が背景に戻れば、その重みもすぐに元の状態に戻る。この場合は、車の通過速度が低速でない限り、重みが一番大きい分布は変化がないので、注目画素の輝度変化はなかったことになる。
【００２２】
したがって、重みが一番大きい輝度正規分布の平均値（画素の輝度値）の変化に注目すれば、移動体の影響をかなり受けずに、監視領域において、物が移動してなくなった状態と、物が移動して停止している状態を検知することができる。
【００２３】
しかしながら、木の揺れや水面の揺らぎの場合のように、同じくらいの頻度で輝度が変化する場合には、重みの大きさが上位となる２つ輝度正規分布の重みの推移は、図２１に示すようになり、重みが一番大きい輝度正規分布が絶えず入れ替わり、誤検知の原因となる。
【００２４】
この発明は、以上の点にかんがみ、上述のような誤検知を防止して、不動体の検知を可能にする画像処理装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００２５】
上記の課題を解決するために、この発明による画像処理装置においては、
時系列方向に連続した画像を取り込む画像取り込み手段と、
前記画像取り込み手段で取り込んだ画像の１または複数画素ごとに、当該１または複数の画素の輝度が、輝度に関する複数個の輝度分布のいずれに属するかを判定し、属すると判定された輝度分布についての重みを漸増すると共に、その他の輝度分布についての重みを漸減するようにして、前記複数個の輝度分布の重みを算出する算出手段と、
前記算出手段で算出された前記輝度分布の重みに基づいて、前記１または複数の画素の輝度の時間的な変化状態を、前記１または複数の画素の輝度が所定の範囲内で安定している安定クラス、前記１または複数の画素の輝度が前記複数個の輝度分布のいずれに属するかが確定できない不安定クラスおよび前記安定クラスと前記不安定クラスとの中間状態である中間クラスを少なくなくとも含む複数のクラスに分類するクラス分類手段と、
前記１または複数の画素毎に、前記クラス分類手段によって分類されたクラスの時間的遷移を判別するクラス遷移判別手段と、
前記１または複数の画素の輝度の時間的な変化状態が前記安定クラスにあるとされたときに前記重みが最大である輝度分布の代表輝度値を、前記１または複数の画素の基準輝度値として取得し、時間変化に応じて更新する基準輝度値更新手段と、
前記クラス遷移判別手段で判別された前記クラスの時間的遷移が、前記不安定クラスから、前記中間クラスを経由して前記安定クラスになった時点を輝度変化検出タイミングとし、当該輝度変化検出タイミングにおいて、前記複数個の輝度分布中の前記重みが最大である輝度分布の代表輝度値と、前記基準輝度値とを比較して、前記１または複数画素について輝度の変化があったかどうかを検出する輝度変化検出手段と、
前記輝度変化検出手段で前記輝度の変化があったと検出されたときに、その変化のあった前記１または複数画素の前記画像中の位置を識別するための情報と、当該変化があった時間の情報とを記憶する変化検出記憶手段と、
を備え、前記変化検出記憶手段に記憶された情報に基づいて、時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分を検出することを特徴とする。
【００２６】
この発明においては、算出手段は、１または複数の画素について、複数個の輝度分布のそれぞれの重みを算出する。クラス分類手段は、算出手段で算出された前記輝度分布の重みに基づいて、安定クラス、中間クラス、不安定クラスを少なくとも含む複数のクラスに分類する。
【００２７】
クラス遷移判別手段は、１または複数の画素毎に、クラス分類手段によって分類されたクラスの時間的遷移を判別し、判別されたクラスの時間的遷移が、不安定クラスから、中間クラスを経由して安定クラスになった時点を輝度変化検出タイミングとする。
【００２８】
輝度変化検出手段は、前記輝度変化検出タイミングにおいて、複数個の輝度分布中の重みが最大である輝度分布の代表輝度値と、１または複数の画素の輝度の時間的な変化状態が安定クラスにあるとされたときに重みが最大である輝度分布の代表輝度値からなる基準輝度値とを比較して、前記１または複数画素について輝度の変化があったかどうかを検出する。
【００２９】
変化検出記憶手段は、輝度変化検出手段で輝度の変化があったと検出されたときに、その変化のあった１または複数画素の画像中の位置を識別するための情報と、当該変化があった時間の情報とを記憶する。そして、その記憶された情報に基づいて、時間経過に応じて画像中に新たに加わって静止した画像部分または画像中から消失した画像部分が検出される。
【００３０】
この発明においては、単に、重みが一番大きい輝度分布の平均値の変化を注目するのではなく、不安定クラスから、中間クラスを経由して安定クラスになった時点の輝度変化を検出するようにするので、木の揺れや水面の揺らぎの場合のように、同じくらいの頻度で輝度が変化する場合は、不動体の輝度の変化とは検出されなくなり、誤検知が防止される。
【発明の効果】
【００３１】
この発明によれば、画像中の不動体を検出する場合において、木の揺れや水面の揺らぎの場合のように、同じくらいの頻度で輝度が変化する場合を誤検知することなく、不動体を検知することができる。
【発明を実施するための最良の形態】
【００３２】
以下、この発明による画像処理装置および方法の実施形態を、図を参照しながら説明する。
【００３３】
以下に説明する実施形態は、前述した重み付き混合正規分布を用いて背景画像を更新することにより、監視カメラで撮影した監視領域の画像中から不動体を検出する画像処理装置および方法の場合である。したがって、この実施形態では、輝度分布の代表輝度値は、当該分布における輝度の平均値とされる。
【００３４】
図２は、実施形態の画像処理装置を含む監視カメラシステムの構成例を示すブロック図であり、これは監視領域における不動体の検出装置を構成するものである。
【００３５】
図２のおいて、監視カメラ１１は、監視領域を撮影するのに適当な場所に設置されたもので、この監視カメラ１１で撮像された監視領域の画像の輝度情報Ｙが、Ａ／Ｄ変換器１２に供給されて、例えば１画素が、３原色信号Ｒ，Ｇ，Ｂのデータからなるデジタル画像信号ＤＹとされる。このデジタル画像信号ＤＹは、画像処理装置の実施形態としての画像処理部１３に供給される。
【００３６】
この画像処理部１３は、この実施形態では、コンピュータにより構成されている。すなわち、画像処理部１３は、この例では、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１００に対して、システムバス１０１を介して、プログラムＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２と、ワークエリア用ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３と、Ｉ／Ｏポート１０４および１０５と、メモリインタフェース１０６とが接続されて構成されている。
【００３７】
そして、Ａ／Ｄ変換器１２からのデジタル画像信号ＤＹがＩ／Ｏポート１０４を通じてシステムバス１０１に取り込まれる。また、この画像処理部１３からの不動体検知出力が、Ｉ／Ｏポート１０５を通じて不動体検知報知部１４に供給される。この不動体検知報知部１４は、画像処理部１３からの不動体検知出力が不動体を検知したことを示すものであるときに、例えばアラーム音を鳴らしたり、表示部に報知メッセージを表示したりすることにより、不動体の検知をユーザに報知するようにする。
【００３８】
また、メモリインタフェース１０６には、画像メモリ１５が接続されている。この画像メモリ１５には、画像処理部１３が後述する不動体検知のための画像処理の過程で作成された画像データが一時的に記憶される。
【００３９】
ＲＯＭ１０２には、後述する不動体検知のための画像処理を実行するためのプログラムが記憶されており、ＣＰＵ１００は、このプログラムにしたがって、ＲＡＭ１０３をワークエリアとして用いて、前記画像処理を実行する。
【００４０】
この実施形態における不動体検知のための画像処理においては、基本的には、上述した重み付き混合正規分布を算出して、背景画像を更新すると共に、一番重みの大きい輝度正規分布の平均値としての輝度の変化を検出することにより、不動体を検出するものであるが、以下の点で、従来の方法とは異なる。
【００４１】
すなわち、この実施形態では、一番重みが大きい輝度正規分布が交替したときの全てにおいて輝度の変化を検出するのではなく、背景画像の輝度として確実に変化していると予想されるタイミングにおいてのみ、画素の輝度の変化を検出するようにする。
【００４２】
このため、この実施形態では、重み付き混合正規分布算出手段で算出された輝度正規分布の重みに基づいて、画素の輝度の時間的な変化状態を、当該画素の輝度が所定の範囲内で安定している安定クラス、当該画素の輝度が複数個の輝度正規分布のいずれに属するかが確定できない不安定クラスおよび安定クラスと不安定クラスとの中間状態である中間クラスを少なくなくとも含む複数のクラスに分類する。この例では、安定クラスと、中間クラスと、不安定クラスとの３クラスに分類するようにする。
【００４３】
そして、分類したクラスの時間的な遷移を判別し、クラスの時間的遷移が、不安定クラスから、中間クラスを経由して安定クラスになったとき、その安定クラスの適当な時点を輝度変化検出タイミングとし、当該輝度変化検出タイミングにおいて、複数個の輝度正規分布中の重みが最大である輝度正規分布の代表輝度値である輝度平均値と、それまでの当該画素の輝度である基準輝度値とを比較して、当該画素について、輝度の変化があったかどうかを検出する。そして、その輝度の変化の検出出力に基づいて、不動体の検知を行なうようにする。
【００４４】
クラス分類の方法としては、複数個の分布の重みの大きさの関係に基づいてクラスを分ける方法など、種々の方法が考えられるが、この実施形態では、重みの大きさの上位２つの輝度正規分布の重みの関係、特にこの例では、上位２つの輝度正規分布の重みの比に基づいてクラス分類する方法を用いる。この実施形態では、上位２つの輝度正規分布の重みのうち、重みの大きさが大きい方をｗｂ、小さい方をｗｓとしたときに、
比ｒ＝ｗｂ／ｗｓ  ・・・式（１０）  
であらわされる比ｒの値に基づいてクラス分類する。
【００４５】
この場合、比ｒ＝１および１近傍のときには、画素の輝度は、上位２つの輝度正規分布のどちらに属するかが不安定な状態であるので、不安定クラスとする。
【００４６】
そして、比ｒが所定値以上であれば、上位２つの輝度正規分布の重みに大きな違いがあり、いずれの輝度正規分布に画素の輝度が属するかは安定に判定できるので、安定クラスとする。そして、安定クラスと、不安定クラスとの中間の状態は、中間クラスとする。
【００４７】
比ｒの値に対する各クラス分けのための閾値は、例えば試行錯誤により決定される。この例では、例えば、
不安定クラス  ；  １≦ｒ＜１．１〜１．２
中間クラス    ；  １．１〜１．２≦ｒ＜１．５
安定クラス    ；  １．５≦ｒ
・・・・式（１１）
とする。
【００４８】
前述した図１９の例の監視領域に車が入ってきて停止した場合における上位２つの重みの推移に関連して、上記の３つのクラスを示すと、図３に示すようなものとなる。この実施形態では、上位２つの重みの大きさについて交替があり、画素の輝度についてのクラス遷移を見たときに、不安定クラス→中間クラス→安定クラスの順に遷移するときに、その安定クラスの適当な時点を輝度変化検出タイミングとする。
【００４９】
図３の例では、不安定クラス→中間クラス→安定クラスの順に遷移して安定クラスになった時点ｔ２の後の、安定クラスを所定時間継続した後の時点ｔ３を、輝度変化検出タイミングとする。時点ｔ２ではなく、安定クラスを所定時間継続した後の時点ｔ３とするのは、安定クラスになって後、すぐに中間クラスに戻ってしまうようなものを検知対象から外すためである。
【００５０】
そして、当該輝度変化検出タイミングにおいて、複数個の輝度正規分布中の重みが最大である輝度正規分布の代表輝度値である輝度平均値を、当該安定クラスにある画素の輝度値、つまり変化後の画素の輝度値として検出する。
【００５１】
そして、検出した画素の輝度値（以下、これを変化後輝度値という）と、変化前の当該画素の輝度値（以下、これを基準輝度値という）とを比較して、輝度値に有意差があれば、つまり、画素の変化後輝度値と基準輝度値とが、異なる輝度正規分布に属するものであると判定されたときには、当該画素は背景から他の物（不動体）に変化したとして検知する。
【００５２】
この実施形態のような不動体の検出方法によれば、前述の図２０に示した風による木の揺れや水面の揺らぎのように、頻繁に輝度が変化する場合における上位２つの重みの推移は、図４に示すように、不安定クラスと中間クラスを繰り返すようなものとなり、輝度変化検出タイミングは発生しないので、誤検出を防止することができる。
【００５３】
ここで、基準輝度値は、図３の時点ｔ３で得た変化後輝度値を、そのまま用いることが考えられるが、それでは、その後、長時間、安定クラスになっているときには、基準輝度値が古いものとなってしまう。
【００５４】
また、時点Ｔ３で得た輝度値を、常に基準輝度値にしてしまうと、短時間だけ滞在（停止）して移動したような物も不動体として検出してしまう。これは、前述の木の揺れや水面の揺らぎの場合と同様な場合において、前述した時点ｔ３の輝度変化検出タイミングが発生してしまうような場合をも、排除することをも狙っている。
【００５５】
すなわち、常に、輝度変化検出タイミングで得た変化後輝度値を基準輝度値に更新したときには、図５に示すように、僅かな時間だけ、安定クラスになり、その後、不安定クラスに移行するような滞在時間の短い物があった場合、次の輝度変化検出タイミングにおいて移動後の背景と、移動した物との輝度を比較することになり、不動体として検出してしまうことになる。つまり、図５の例では、時点ｔ３と、時点ｔ６とが輝度変化検出タイミングとなるが、時点ｔ３と時点ｔ６とでは、最大の重みが属する分布が異なるので、時点ｔ６でも不動体を検出してしまうのである。
【００５６】
この実施形態では、変化後輝度値を得る輝度変化検出タイミングと、基準輝度値を更新するタイミングとを異ならせるとともに、滞在時間が短い物のときには、基準輝度値を更新しないことで、基準輝度値に滞在時間が短い物の輝度値を反映させず、滞在時間が短い物が入ってくる前の背景の基準輝度値のままとすることにより、当該滞在時間が短い物が不動体として検出されないようにしている。
【００５７】
そして、この実施形態では、基準輝度値は、注目画素の輝度が交替する直前の輝度値を取得して、できるだけ最新の基準輝度値を用いることができるようにする。このため、この実施形態では、安定クラスから中間クラスを経て、不安定クラスになった時点を更新タイミングとし、当該更新タイミングのときに、重みが最も大きい輝度正規分布の平均値を、基準輝度値として取得することにより基準輝度値を更新するようにする。図３の例の場合には、更新タイミングは、時点ｔ１である。
【００５８】
そして、滞在時間が短い物のときに、基準輝度値を更新しないようにする方法は、この実施形態では次のようにする。すなわち、輝度変化検出タイミングで変化後輝度値を取得した時点から、つまり、画素の輝度値が変化した時点から、予め定めた所定時間（指定滞在時間）を経過するまでは、次の輝度更新タイミングでの基準輝度値の更新は禁止するようにする。この実施形態では、これにより、滞在時間の短い物を不動体として検出しないようにしている。
【００５９】
すなわち、図５においては、安定クラスから中間クラスを経由して不安定クラスになる時点ｔ１が、基準輝度値の更新タイミングとなり、重みがその時点で最大である輝度正規分布の平均値を基準輝度値として取得して更新する。
【００６０】
図５の例においては、時点ｔ１の後、輝度変化検出タイミングの時点ｔ３で重みが最大になる輝度正規分布の平均値を取得することで、変化後輝度値を取得し、基準輝度値と比較することにより、監視領域内に何等かの物が入ってきたことを認識する。しかし、後述するように、この実施形態では、単に監視領域内に何等かの物が入ってきた段階では、不動体を検出した旨の出力は出力せず、前記監視領域内に入ってきた物が、指定滞在時間以上、監視領域内に滞在したときに不動体を検出した旨の出力を出力する。
【００６１】
次に、この時点ｔ３の後、次に安定クラスから中間クラスを経由して不安定クラスになる時点ｔ４が、前記時点ｔ３から前記指定滞在時間よりも短いときには、この時点ｔ４での基準輝度値は更新しないようにする。このため、基準輝度値は、時点ｔ１で更新された背景の輝度値となっており、監視領域内に新たに入ってきた物の輝度値とはならない。
【００６２】
したがって、時点ｔ４の後、次に不安定クラスから中間クラスを経由して安定クラスになる輝度変化検出タイミングの時点ｔ６では、入ってきた物がなくなって、元の背景に戻った画素の輝度値が変化後輝度値として取得される。このとき取得された変化後輝度値は背景の輝度値である。そして、前述したように、そのときの基準輝度値は背景の輝度値となっている。したがって、時点ｔ６で比較される変化後輝度値と基準輝度値とは同じ背景の輝度値となり、不動体は検出されない。
【００６３】
以上のことを実現する画像処理部１３における不動体検知の処理機能を、機能ブロックで表わした機能構成図を、図１に示す。この図１の処理は、後述する不動体検知処理のうちの画素単位の検知処理に対応するものである。
【００６４】
すなわち、輝度信号取込手段１１１は、Ａ／Ｄ変換器１２からの画素単位のデジタル輝度信号ＤＹを受信して取り込み、取り込んだ画素の輝度値を重み付き混合正規分布算出手段１１２に送る。
【００６５】
重み付き混合正規分布算出手段１１２は、前述したように、取り込んだ画素の輝度値が複数個の輝度正規分布のいずれに属するかを判定し、前記複数個の輝度正規分布のそれぞれについての重みを更新すると共に、平均値を更新する。そして、重み付き混合正規分布算出手段１１２は、その算出結果（少なくとも各分布の重みおよび平均値（平均輝度値））を上位重み抽出手段１１３に供給する。
【００６６】
上位重み抽出手段１１３は、複数個の輝度正規分布のうち、重みの大きさが上位２個の分布の重みをクラス分類手段１１４に供給すると共に、重みが最大である分布の平均輝度値を基準輝度値更新手段１１５および変化後輝度値検出手段１１６に供給する。
【００６７】
クラス分類手段１１４は、重みの大きさが上位２個の分布の重みを用いて、前述した式（１０）および式（１１）に基づいて、現時点における画素の輝度の変化状態についてクラス分類し、その分類結果のクラスの情報をクラス遷移判別手段１１７に供給する。
【００６８】
クラス遷移判別手段１１７は、クラス分類手段１１４からのクラスの情報の時間的な遷移を判別する。そして、クラス遷移判別手段１１７は、この実施形態では、判別したクラス遷移に基づいて、基準輝度値の更新タイミング信号Ｓstおよび輝度変化検出タイミング信号Ｓchを生成する。
【００６９】
図６に、上位２つの重みの比に基づいて、画素の輝度の状態を安定クラス、中間クラス、不安定クラスの３つのクラスに分類したときの遷移状態を示す。
【００７０】
この図６では、便宜上、安定クラスをＡ、中間クラスをＢ、不安定クラスをＣとし、遷移状態を表す値、遷移状態値をＳＴＡＴＥ＿Ｘとする。ここで、遷移状態値ＳＴＡＴＥ＿ＸにおけるＸは、不安定クラスＣになったときには、Ｃ（ＳＴＡＴＥ＿Ｃ）となるが、その他の時には、前のクラスの状態を考慮した値とされる。
【００７１】
すなわち、ＳＴＡＴＥ＿ＡおよびＳＴＡＴＥ＿Ｂは、初期状態がＡクラスおよびＢクラスの場合の遷移状態値である。初期状態がＣクラスのときにも遷移状態値は、ＳＴＡＴＥ＿Ｃとなる。ＳＴＡＴＥ＿ＢＡは、ＡクラスからＢクラスに遷移したとき、または、ＢクラスからＡクラスに遷移したときの遷移状態値である。ＳＴＡＴＥ＿ＣＢは、ＢクラスからＣクラスに遷移したとき、または、ＣクラスからＢクラスに遷移したときの遷移状態値である。さらに、ＳＴＡＴＥ＿ＣＢＡは、ＡクラスからＢクラス、さらにＣクラスに遷移したとき、または、ＣクラスからＢクラス、さらにＡクラスに遷移したときの遷移状態値である。
【００７２】
初期状態の遷移状態値をＳＴＡＴＥ＿Ａとし、例えば安定→中間→不安定と遷移した場合、遷移状態値はＳＴＡＴＥ＿ＡからＳＴＡＴＥ＿ＢＡ、さらにＳＴＡＴＥ＿Ｃと変化する。
【００７３】
また、例えば、ＳＴＡＴＥ＿Ａは、最大重みの分布が変わらず、変化がないことを示す。また、ＳＴＡＴＥ＿ＣＢＡは、重みの大きさが２番目から最大に変化した分布であることを示し、いままで、監視領域中に在った物がなくなったか、新たに静止状態のものが監視領域内に入ったことを表している。
【００７４】
したがって、不動体を検知するタイミング、つまり、輝度変化検出タイミングは、この実施形態では、遷移状態値がＳＴＡＴＥ＿ＣＢＡであるときとする。そして、この実施形態では、安定性を上げるため、クラス遷移判別手段１１７は、遷移状態値がＳＴＡＴＥ＿ＣＢＡになったときに即座に輝度変化検出タイミングとするのではなく、ＳＴＡＴＥ＿ＣＢＡの状態がある所定時間継続したときを輝度変化検出タイミングとして、輝度変化検出タイミング信号Ｓchを生成し出力する。
【００７５】
例えば、この実施の形態では、輝度変化検出（不動体検出）は、監視カメラ１１からの画像信号の毎フレームではなく、例えば４フレームごとに行なうようにしており、ＳＴＡＴＥ＿ＣＢＡの状態が、例えば３０回（４秒）続いた後を、輝度変化検出タイミングとする。例えば、図３の例について説明すると、時点ｔ２は遷移状態値がＳＴＡＴＥ＿ＣＢＡになった時刻であり、輝度変化検出タイミングは、時点ｔ３である。 
また、クラス遷移判別手段１１７は、基準輝度値を更新するタイミングを、上位２つの重みの関係が不安定クラスであって、かつ、前回の遷移状態値が、かつて安定したクラスに属していたことを示すＳＴＡＴＥ＿ＢＡかＳＴＡＴＥ＿ＣＢＡの場合とする。そして、クラス遷移判別手段１１７は、この基準輝度値の更新タイミングの時点で、基準輝度値の更新タイミング信号Ｓstを生成する。この更新タイミングの時点は、図３の例であれば、時点ｔ１のタイミングである。
【００７６】
ただし、クラス遷移判別手段１１７は、前述した滞在時間の短い物を不動体として検出しないようにするために、更新タイミングの時点と判定される時点であっても、前回の輝度変化検出タイミング信号Ｓchの生成時点から指定滞在時間以上経過していないときには、基準輝度値の更新タイミング信号Ｓstは生成せず、基準輝度値は更新しないようにする。
【００７７】
このために、この実施形態では、基準輝度値の更新を許可するかどうかを示すフラグ（以下、更新フラグという）を用意する。この更新フラグは、初期状態では「ｆａｌｓｅ（＝偽）」として、更新を許可する状態とする。すなわち、更新タイミング時点において、この更新フラグを参照し、更新フラグが「ｆａｌｓｅ」の時には、更新タイミング信号Ｓstを生成して出力することを許可する。
【００７８】
そして、この実施形態では、基準輝度値を更新タイミングで更新したときに、つまり、更新タイミング信号Ｓstを出力したときに、更新フラグを「ｔｒｕｅ（＝真）」として、更新の禁止状態にする。クラス遷移判別手段１１７は、更新フラグが「ｔｒｕｅ」の状態のときには、更新タイミング信号Ｓstを出力しない。
【００７９】
クラス遷移判別手段１１７では、検出すべき不動体の指定滞在時間以上、更新フラグが「ｔｒｕｅ」の状態が継続したときには、「ｆａｌｓｅ」に戻して、更新タイミング信号Ｓstの出力を許可するようにする。また、クラス遷移判別手段１１７は、画素の輝度変化がないと判断できるときに、更新フラグを「ｔｒｕｅ」から「ｆａｌｓｅ」の状態に戻すようにしても良い。
【００８０】
以上のようにして、クラス遷移判別手段１１７は、基準輝度値の更新タイミング信号Ｓstを生成して、生成した基準輝度値の更新タイミング信号Ｓstを基準輝度値更新手段１１５に供給する。基準輝度値更新信号手段１１５は、この基準輝度値の更新タイミング信号Ｓstにより、重みが最大である輝度正規分布の平均値を、基準輝度値として取得して更新する。
【００８１】
また、クラス遷移判別手段１１７は、上述のようにして生成した輝度変化検出タイミング信号Ｓchを変化後輝度値検出手段１１６に供給する。変化後輝度値検出手段１１６は、この輝度変化検出タイミング信号Ｓchにより、重みが最大である輝度正規分布の平均値を、変化後輝度値として取得する。
【００８２】
そして、基準輝度値更新手段１１５で更新された基準輝度値が比較手段１１８に供給されると共に、変化後輝度値検出手段１１６で取得された変化後輝度値が比較手段１１８に供給される。さらに、クラス遷移判別手段１１７からの輝度変化検出タイミング信号Ｓchが、比較タイミング信号として比較手段１１８に供給される。
【００８３】
比較手段１１８では、変化後輝度値検出手段１１６で取得された変化後輝度値と、基準輝度値更新手段１１５で更新された基準輝度値とが比較されて、両者に有意差があるかどうか判定され、その比較判定結果が不動体検知判定手段１１９に供給される。
【００８４】
不動体検知判定手段１１９では、比較手段１１８からの比較判定結果を受けて、当該比較判定結果が前記変化後輝度値と基準輝度値との間に有意差があることを示しているときに、そのときの時間例えばフレーム番号を不動体検知時間として保存する。そして、比較判定結果が前記変化後輝度値と基準輝度値との間に有意差があることを示している状態が、その後継続しているときには、予め定められた時間後、不動体の検知を報知するように、画像処理部１３から不動体検知報知部１４に不動体検知出力が供給されて、この不動体検知報知部１４により例えばアラームが発せられる。
【００８５】
前述した図３および図５の場合について、上述した画像処理部１３における処理動作をさらに説明する。
【００８６】
例えば、図３において、初期状態ｔ＝ｔ０では更新フラグ＝ｆａｌｓｅ、基準輝度値をｍ１＿ｔ０とする。図３に示す時点ｔ＝ｔ１では、更新フラグ＝ｆａｌｓｅであり、上位２つの重みの関係から、画素の輝度の状態は不安定クラスであり、かつ、前回の遷移状態値がＳＴＡＴＥ＿ＢＡなので、更新タイミング信号Ｓstが発生し、基準輝度値を、ｍ１＿ｔ０からｍ１＿ｔ１に更新し、更新フラグ＝ｔｒｕｅにする。
【００８７】
そして、時点ｔ＝ｔ３では、輝度変化検出タイミング信号Ｓchが発生するので、基準輝度値ｍ１＿ｔ１と変化後輝度値ｍ２＿ｔ３とを比較して、画素の輝度値の変化を検知する。このとき、基準輝度値ｍ１＿ｔ１と変化後輝度値ｍ２＿ｔ３との間には、有意差があるので、画像処理部１３は、そのときの時間例えばフレーム番号を検知時間として保存しておく。そして、画像処理部１３は、その後変化がなければ，指定時間後アラームを出す。
【００８８】
次に、指定した滞在検知時間に満たないで、一旦静止したものが移動した場合の図５の場合における処理動作について述べる。
【００８９】
図５において、前述したように、ｆ１（ｗ１＿ｔ, ｍ１＿ｔ）は道路についての、ｆ２（ｗ２＿ｔ, ｍ２＿ｔ）は車についての、重みの変化を示す。 初期状態ｔ０では、更新フラグを「ｆａｌｓｅ」、 基準輝度値をｍ１＿ｔ０とする。
【００９０】
図５においては、時点ｔ１では、上位２つの重みの関係は、不安定クラスの状態で、前回の遷移状態値がＳＴＡＴＥ＿ＢＡなので、基準輝度値をｍ１＿ｔ０からｍ１＿ｔ１に更新し、更新フラグを「ｔｒｕｅに」する。
【００９１】
そして、時点ｔ３で、基準輝度値ｍ１＿ｔ１と、変化後輝度値ｍ２＿ｔ３とを比較して、画素の輝度の変化を検知する。次の時点ｔ４では、前の輝度変化検出タイミング時点ｔ３から指定滞在時間以内であるので、更新フラグは「ｆａｌｓｅ」に戻ることなく、「ｔｒｕｅ」のままである。このため、この時点ｔ４では、基準輝度値の更新は行われない。
【００９２】
したがって、このときには次の輝度変化検出タイミングである時点ｔ６では、基準輝度値ｍ１＿ｔ１と、当該時点ｔ６での変化後輝度値ｍ１＿ｔ６とを比較するので、画素の輝度は変化無しと検出される。このようにして、図６の場合のように、指定滞在時間よりも短い時間停止で移動してしまう物の場合には、指定した滞在検知時間に満たないと検出されて、不動体検知結果のアラームは報知されない。
【００９３】
以上は図１の機能ブロック図についての説明であるが、実際的には、この実施の形態では、画像処理部１３におけるソフトウエア処理により、上述の不動体検知の画像処理がなされる。以下、このソフトウエア処理による画像処理を、フローチャートを参照しながら説明する。なお、以下に示す各フローチャートの各ステップの処理は、ｃｐｕ１００が、ＲＯＭ１０２に格納されている処理プログラムにしたがって、ＲＡＭ１０３をワークエリアとして使用して実行するものである。
【００９４】
図７は、画像処理部１３における画像処理の全体の流れを示すフローチャートである。まず、初期化を実行したかどうかを判断するための初期化フラグを「ｆａｌｓｅ」に設定して、処理を開始する。
【００９５】
そして、入力データとして監視カメラ１１からの、入力画像の情報と時間を計測するためのフレーム番号とを取り込む（ステップＳ１）。
【００９６】
次に、初期化フラグが「ｆａｌｓｅ」であるか否か判別し（ステップＳ２）、初期化フラグが「ｆａｌｓｅ」であるの場合は、“初期化”を実行する（ステップＳ８）。このステップＳ８の“初期化”についての処理の流れを、図８のフローチャートに示す。
【００９７】
このステップＳ８の“初期化”では、使用するメモリと変数の初期化を行なう（ステップＳ２１）。図８において、ｎは、輝度正規分布の平均値と重みの数（したがって、輝度正規分布の数）を示し、例えばｎ＝４としている。ｋは、ｋ番目の分布の平均値と重みを示している。また、ｉは、画素番号を示しており、０≦ｉ＜Ｍ（＝画像サイズに応じた画素数の最大値）である。
【００９８】
そして、この実施形態では、メモリに記憶する変数データおよびフラグ情報は、
・分布の平均値を示す:平均[ｎ][ｉ]（ただし、０≦ｉ＜Ｍ）、
・重みを示す:重み[ｎ][ｉ]（ただし、０≦ｉ＜Ｍ）、
・遷移状態値がＳＴＡＴＥ＿ＣＢＡになってから、それを継続している時間を示す:継続カウント数ｆ＿ｃｏｕｎｔｅｒ[ｉ]（ただし、０≦ｉ＜Ｍ）、
・基準輝度値を示す:基準輝度値[ｉ]（ただし、０≦ｉ＜Ｍ）、
・輝度変化を検知したときの時間：検知時間[ｉ]（ただし、０≦ｉ＜Ｍ）、
・輝度変化の有無を示すフラグ：検知フラグ[ｉ]（ただし、０≦ｉ＜Ｍ）、
・基準輝度の更新可能の有無を示すフラグ：更新フラグ[ｉ]（ただし、０≦ｉ＜Ｍ）、
・上位２個の重みの遷移状態値を示す：ｓｔａｔｅ[ｉ]（ただし、０≦ｉ＜Ｍ）、
・基準輝度の更新時間を示す:更新時間[ｉ]（ただし、０≦ｉ＜Ｍ）、
とされている。
【００９９】
そして、このステップＳ２１の初期化処理においては、図８に示すように、全画素（０≦ｉ＜Ｍ）に対し、平均［０］［ｉ］は入力画像の画素ｉの輝度値を初期値とし、重み［０］［ｉ］は最大値ＷＥＩＧＨＴ＿ＭＡＸ例えば１．０とする。また、平均［ｋ］［ｉ］（ｋ＝１, ２,・・・，ｎ−１）は０、重み［ｋ］［ｉ］（ｋ＝１, ２,・・・，ｎ−１）は０、継続カウント数ｆ＿ｃｏｕｎｔｅｒ［ｉ］は０、基準輝度値［ｉ］は０、検知時間［ｉ］は０、検知フラグ［ｉ］は「ｆａｌｓｅ」、更新フラグ［ｉ］は「ｆａｌｓｅ」、更新時間［ｉ］は０、をそれぞれ初期値とする。
【０１００】
入力画像には、移動体が含まれている場合があるので、この段階では最大重みの分布の平均値：平均［０］［ｉ］に移動体が含まれている場合がある。このため、このまま不動体の検知処理を始めると、移動体の画素が背景に変化したことを検知してしまうので、最大重みを示す分布の平均値が、移動体でなくなるように“前準備処理”を行なう必要がある。そのため、ステップＳ２１の次にはステップＳ２２に進み、そのときに使用する前準備カウンタと前準備フラグを初期化する。すなわち、前準備カウンタを０に、前準備フラグを「ｆａｌｓｅ」に設定する。
【０１０１】
以上のステップＳ２１およびステップＳ２２の処理が終了したら、最後に初期化フラグを、初期化が済んでいることを示す「ｔｒｕｅ」に設定して（ステップＳ２３）、この図７の初期化処理を終了する。
【０１０２】
以上の初期化処理が終了したら、図７のステップＳ１０に進む。このステップＳ１０では、入力画像を、ズレ補正のためのズレ基準画像として保存する。すなわち、監視カメラは、固定されていても、振動などで、監視領域の画像がずれることがあるので、この実施形態では、そのズレ補正を行なうようにする。ステップＳ１０では、このズレ補正のためのズレ基準画像を保存するもので、ここでは、その初期画像として、入力画像を保存するものである。
【０１０３】
このズレ基準画像の更新は、不動体検知処理のたびに行なっても良いし、画像のズレを検知する画像ズレ検知手段を設けて、当該画像ズレ検知手段で画像ズレを検知したときは必ず更新するようにしてもよい。この実施形態では、後述するように、不動体検知処理のたびに、この例では４フレームおきのタイミングで、ズレ基準画像の更新を実行するようにする。このステップＳ１０の後は、ステップＳ１に戻り、次の入力画像待ちになる。
【０１０４】
そして、ステップＳ２で、初期化フラグが「ｔｒｕｅ」であって、初期化が済んでいると判別したときには、“ずれ補正”（ステップＳ３）に進み、現入力画像と保存してあるズレ基準画像とでズレ量を求め、ズレていたら内部データを補正する。その後、“分布と重みの作成”（ステップＳ４）を行なう。
【０１０５】
図９およびその続きである図１０に、このステップＳ４の“分布と重みの作成”について処理のフローチャートを示す。前述もしたように、ｉは画素番号を示している。ｎは正規分布の平均値と重みの個数を示し、ｋはｋ番目の分布の平均値と重みを示すものとされている。このステップＳ４の“分布と重みの作成”では、各画素について、以下の処理を行なう。
【０１０６】
先ず、入力画像の画素の１番目を処理対象画素［ｉ］として指定する（ステップＳ３１）。次に、処理対象画素［ｉ］の輝度値と、分布の平均値［ｋ］［ｉ］（０≦ｋ≦ｎ−１）の差の絶対値が最小となるときのｋ＝ｋ＿ｍｉｎを求め、そのときの差の絶対値を、処理対象画素［ｉ］の３原色データｒ, Ｇ, Ｂのそれぞれについて、値ｓｕｂＲ、ｓｕｂＧ、ｓｕｂＢとして求める（ステップＳ３２）。
【０１０７】
次に、処理対象画素［ｉ］の輝度がいずれの分布にも属さない場合もあるので、それを判別するためのフラグｆｌａｇを「ｆａｌｓｅ」（いずれの分布にも属していないことを示す）で初期化しておく（ステップＳ３３）。次に、ｋ＝０として、最初の分布を指定する（ステップＳ３４）。
【０１０８】
そして、ｋ＝ｋｍｉｎであるかどうか判別し（ステップＳ３５）、そうでなければ、前述した式（６）により、そのｋ番目の重みを小さくする（ステップＳ３９）。そして、図１０のステップＳ４１に進み、ｋ＝ｋ＋１として、次の分布を指定する。そして、指定後のｋの値がｎ（分布の数の最大値）であるか否か判別し（ステップＳ４２）、ｎでなければ、ステップＳ３５に戻って、このステップＳ３５以降の処理ステップを繰り返す。
【０１０９】
ステップＳ３５で、ｋ＝ｋｍｉｎであると判別したときには、処理対象画素［ｉ］の輝度は、このｋ＿ｍｉｎ番目の分布に属する可能性があるので、値ｓｕｂＲ、ｓｕｂＧ、ｓｕｂＢのすべてが閾値ｔｈ（例えばｔｈ＝２σ）以内かどうかを調べる（ステップＳ３６）。
【０１１０】
ステップＳ３６で、閾値ｔｈ以内ではないと判別したときには、前述した式（６）により、そのｋ番目の重みを小さくする（ステップＳ３９）。そして、図１０のステップＳ４１に進み、ｋ＝ｋ＋１として、次の分布を指定する。そして、指定後のｋの値がｎ（分布の数の最大値）であるか否か判別し（ステップＳ４２）、ｎでなければ、ステップＳ３５に戻って、このステップＳ３５以降の処理ステップを繰り返す。
【０１１１】
ステップＳ３６で、閾値ｔｈ以内であると判別したときには、処理対象画素［ｉ］の輝度は、その分布に属するとして、前述した式（５）および式（７）により重みと平均値の更新を行ない（ステップＳ３７）、フラグｆｌａｇを「ｔｒｕｅ」にする（ステップＳ３８）。このとき、平均値の更新は、画素データの３原色データＲ、Ｇ、Ｂについて、それぞれ独立に行っている。なお、分散σを更新させると、だんだん急峻な正規分布になり、閾値の幅が小さくなるため、この実施形態では、分散σは固定値（例えば８）としている。
【０１１２】
そして、ステップＳ３８の次には、図１０のステップＳ４１に進み、ｋ＝ｋ＋１として、次の分布を指定する。そして、指定後のｋの値がｎ（分布の数の最大値）であるか否か判別し（ステップＳ４２）、ｎでなければ、ステップＳ３５に戻って、このステップＳ３５以降の処理ステップを繰り返す。
【０１１３】
そして、ステップＳ４２において、ｋ＝ｎであると判別したときには、全ての分布についての処理が終了したので、フラグｆｌａｇの状態を調べ（ステップＳ４３）、フラグｆｌａｇが「ｆａｌｓｅ」なら、どの分布にも属さなかったことになるので、その場合は、重みが一番小さいｋ＝ｋ＿ｍｉｎ２を求め、その平均［ｋ＿ｍｉｎ２］［ｉ］に処理対象画素［ｉ］の輝度値を代入し、重み［ｋ＿ｍｉｎ２］［ｉ］をαとする（ステップＳ４４）。
【０１１４】
ステップＳ４３で、フラグｆｌａｇが「ｔｒｕｅ」であると判別したとき、また、ステップＳ４４の処理が終了した後は、ステップＳ４５に進み、ｉ＝ｉ＋１として、次の画素を処理対象画素［ｉ］を指定する。そして、指定された次の画素番号から全画素についての上記処理が終了したか否かを判別し（ステップＳ４６）、全画素の処理が終了していないと判別したときには、ステップＳ３に戻り、このステップＳ３以降の処理を繰り返す。
【０１１５】
また、ステップＳ４６で、全画素の処理が終了したと判別したときには、この“分布と重みの作成”処理を終了する。
【０１１６】
図７に戻り、上述したステップＳ４の“分布と重み作成”の処理が終了すると、図８のステップＳ２３で説明した前準備フラグを調べることにより、前準備が終了したか否か判別する（ステップＳ５）。ステップＳ５で、前準備フラグが「ｆａｌｓｅ」であると判別したときには、“前準備”処理を行なう（ステップＳ９）。
【０１１７】
前述したように、この実施形態では、分布の平均値の初期値として、入力画像の輝度をそのまま使用しているので、移動体が含まれている場合もある。そのため、いきなり不動体の検知を始めると、移動体がいなくなったことを検知してしまう。これを回避するためには、“分布と重みの作成”を繰り返し実行して、移動体に相当する画素の最大重みの分布の平均値を、移動体から背景に変化させる必要がある。 
図１１に、“前準備”についての処理のフローチャートの一例を示す。
【０１１８】
まず、ステップＳ５で、前準備フラグが「ｆａｌｓｅ」であると判別したことを受けて、前述した“初期化”処理のステップＳ２２で０に初期化した前準備カウンタのカウント値をインクリメントする（ステップＳ５１）。
【０１１９】
そして、前準備カウンタのカウント値が閾値Ｃｔｈ、例えば３００となったか否か判別し（ステップＳ５２）、前準備カウンタのカウント値が閾値Ｃｔｈに満たないと判別したときには、この“前準備”処理を終了して、図７のステップＳ１０に戻り、ズレ補正用の基準画像の更新を行ない、さらにステップＳ１に戻って、次の入力画像を待ち、上述したステップＳ１以降の処理を、前準備カウンタのカウント値が閾値Ｃthに等しくなるまで繰り返す。
【０１２０】
ステップＳ５２で、前準備カウンタのカウント値が閾値Ｃthに等しくなったと判別したときには、前準備”の最終処理として以下のことを行なう。
【０１２１】
先ず、重み［ｋ］［ｉ］（０≦ｋ≦ｎ−１）の中から、大きさの大きい上位２つの重みに相当するｋ１、ｋ２（ｋ１≧ｋ２）を求める（ステップＳ５４）。次に、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］とを比較し（ステップＳ５５）、その比較結果を用いて、前述した３つのクラス（安定クラス、中間クラス、不安定クラス）に分ける。例えば、ｋ１／ｋ２≧１．５なら安定クラスとし、ｋ１／ｋ２＜１．５かつｋ１／ｋ２≧１．１なら中間クラスとし、その以外を不安定クラスとする。
【０１２２】
そして、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］との比較結果により、安定クラスに属するか否かを判別し（ステップＳ５６）、安定クラスに属すると判別した場合は、状態遷移値ｓｔａｔｅ［ｉ］をＳＴＡＴＥ＿Ａとする（ステップＳ５７）。また、ステップＳ５６で、安定クラスに属しないと判別した場合は、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］との比較結果により、中間クラスに属するか否かを判別し（ステップＳ５８）、中間クラスに属すると判別した場合は、状態遷移値ｓｔａｔｅ［ｉ］をＳＴＡＴＥ＿Ｂとする（ステップＳ５９）。また、ステップＳ５８で、中間クラスに属しないと判別した場合は、不安定クラスに属すると判別し、状態遷移値ＳＴＡＴＥ［ｉ］をＳＴＡＴＥ＿Ｃに設定する（ステップＳ６０）。
【０１２３】
ステップＳ５７、ステップＳ５９またステップＳ６０の次には、ステップＳ６１に進み、最大重みに相当するｋ１の分布の平均値：平均［ｋ１］［ｉ］を、基準輝度値［ｉ］とする。
【０１２４】
次に、全画素について処理し終わったか否か判別し（ステップＳ６２）、いまだ未処理の画素があれば、次の画素番号を指定して（ステップＳ６３）、ステップＳ５４に戻り、このステップＳ５４以降の処理を繰り返す。ステップＳ６２で、全画素についての処理が終了したと判別したときには、前準備フラグを「ｔｒｕｅ」にして（ステップＳ６４）、この“前準備”処理を終了する。
【０１２５】
図７に戻り、上述したステップＳ９の“前準備”の処理が終了すると、ステップＳ１０に戻って、ズレ補正用の基準画像の更新を行ない、次の入力画像待ちになる。
【０１２６】
図７のステップＳ５において、前準備フラグが「ｔｒｕｅ」であって、前準備が終了していると判別したときには、“不動体検知処理”のステップＳ６に進む。図１２に、この“不動体検知処理”のフローチャートの一例を示す。
【０１２７】
図１２に示すように、この実施形態における“不動体検知処理”においては、先ず、“画素単位の検知”の処理を行なう（ステップＳ７１）。図１３に、この“画素単位の検知”の処理のフローチャートの一例を示す。
【０１２８】
先ず、画素番号を示すｉを、ｉ＝０と初期化して（ステップＳ８１）、各画素に対して以下の処理を行なう。
【０１２９】
次に、前回の状態遷移値を保存するために、前回の状態遷移値を示すｐｒｅ＿ＳＴＡＴＥにＳＴＡＴＥ［ｉ］を代入する（ステップＳ８２）。重み［ｋ］［ｉ］（０≦ｋ≦ｎ−１）の中から、大きさの大きい上位２つの重みに相当するｋ１、ｋ２（ｋ１≧ｋ２）を求める（ステップＳ８３）。次に、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］とを比較し（ステップＳ８４）、その比較結果を用いて、前述した３つのクラス（安定クラス、中間クラス、不安定クラス）に分ける。前述したように、例えば、ｋ１／ｋ２≧１．５なら安定クラスとし、ｋ１／ｋ２＜１．５かつｋ１／ｋ２≧１．１なら中間クラスとし、その以外を不安定クラスとする。
【０１３０】
前述したように、この実施形態では、基準輝度値は更新されると、更新フラグが「ｆａｌｓｅ」から「ｔｒｕｅ」に変更され、更新フラグが「ｔｒｕｅ」のときには、基準輝度値が更新できないようにされている。この実施形態では、基準輝度値の更新ができない状態が長時間続くのを避けるために、安全策として基準輝度値が更新された時間と、現在のフレーム番号から、基準輝度値が更新されてから現在までどれくらい経過しているかを判定し、その更新後経過時間が、指定滞在検知時間、例えば６０分過ぎたら、基準輝度値の更新をできる状態にする。
【０１３１】
つまり、更新フラグ［ｉ］が「ｔｒｕｅ」となっているかどうかを判別し（ステップＳ８５）、更新フラグ［ｉ］が「ｔｒｕｅ」となっている場合は、更新時間［ｉ］（基準輝度値が更新された時間（時間はフレーム番号として取得））と現在のフレーム番号の差から更新後継続時間［ｉ］を求め、その更新後継続時間［ｉ］と閾値Ｔthとを比較して、更新後継続時間［ｉ］が閾値Ｔthを超えているかどうかを判別する（ステップＳ８６）。ステップＳ８６で、更新後継続時間［ｉ］が閾値Ｔthを超えていると判別したときには、更新フラグ［ｉ］を「ｆａｌｓｅ」に設定する（ステップＳ８７）。
【０１３２】
なお、更新後継続時間は、検知時間［ｉ］（画素の変化があって、変化後輝度値が取得された時間（時間はフレーム番号として取得））と現在のフレーム番号の差から求めるようにしても良い。その場合には、あるものが監視領域内に入って停止してからの時間が、更新後継続時間として求められることになる。
【０１３３】
ステップＳ８５で更新フラグが「ｆａｌｓｅ」であると判別したとき、また、ステップＳ８７で、更新フラグ［ｉ］を「ｆａｌｓｅ」に設定した後には、ステップＳ８４での比較結果を用いて、クラス分類をする。
【０１３４】
すなわち、先ず、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］との比較結果から、安定クラスに属するかどうか判別し（ステップＳ８８）、安定クラスに属すると判別したときには、安定クラスの処理を行なう（ステップＳ８９）。
【０１３５】
また、ステップＳ８８で、安定クラスに属しないと判別した場合は、重み［ｋ１］［ｉ］と重み［ｋ２］［ｉ］との比較結果により、中間クラスに属するか否かを判別し（ステップＳ９０）、中間クラスに属すると判別した場合は、中間クラスの処理を行なう（ステップＳ９１）。
【０１３６】
また、ステップＳ９０で、中間クラスに属しないと判別した場合は、不安定クラスに属すると判別し、不安定クラスの処理を行なう（ステップＳ９２）。
【０１３７】
ステップＳ８９、ステップＳ９１またステップＳ９２の次には、ステップＳ９３に進み、全画素について処理し終わったか否か判別し、いまだ未処理の画素があれば、次の画素番号を指定して（ステップＳ９４）、ステップＳ８１に戻り、このステップＳ８１以降の処理を繰り返す。ステップＳ９３で、全画素についての処理が終了したと判別したときには、この“画素単位の検知”処理を終了する。
【０１３８】
図１４に、ステップＳ８９の安定クラスの処理の一例のフローチャートを示す。この安定クラスの処理においては、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥを調べ、先ず、この前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢであるか否か判別する（ステップＳ１０１）。
【０１３９】
ステップＳ１０１で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢであると判別された場合は、不安定クラスから中間クラスを経て安定クラスに遷移したことを示すＳＴＡＴＥ＿ＣＢＡに状態遷移値ＳＴＡＴＥ［ｉ］を更新し、画素［ｉ］についての状態遷移値ＳＴＡＴＥ＿ＣＢＡの継続時間を計測する継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］を０に初期化する（ステップＳ１０４）。ここで、状態遷移値ＳＴＡＴＥ＿ＣＢＡの継続時間を計測するのは、一時停止してすぐに監視領域からなくなってしまうものを検知対象からはずすためである。
【０１４０】
また、ステップＳ１０１で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢではないと判別された場合は、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｂであるか否か判別し（ステップＳ１０２）、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｂであると判別したときには、中間クラスから安定クラスに遷移したことを示すＳＴＡＴＥ＿ＢＡに状態遷移値ＳＴＡＴＥ［ｉ］を更新する（ステップＳ１０５）。
【０１４１】
また、ステップＳ１０２で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｂでないと判別したときには、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢＡであるか否か判別し（ステップＳ１０３）、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢＡであると判別したときには、画素［ｉ］についての状態遷移値ＳＴＡＴＥ＿ＣＢＡの継続時間を計測する継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］をインクリメントする（ステップＳ１０６）。
【０１４２】
そして、ステップＳ１０４、ステップＳ１０５、またはステップＳ１０６の次には、ステップＳ１０７に進み、継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］が閾値ｔｈ＿ｃｏｕｎｔ、例えば３０になったか否か判別する。
【０１４３】
ステップＳ１０７で、継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］が閾値ｔｈ＿ｃｏｕｎｔ未満であると判別したときには、この図１４の安定クラスの処理を終了して、図１３のフローチャートに戻る。
【０１４４】
また、ステップＳ１０７で、継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］が閾値ｔｈ＿ｃｏｕｎｔと等しくなったと判別したときには、当該画素［ｉ］の基準輝度値［ｉ］と、最大重みｋ１に対応する輝度正規分布の平均値：平均［ｋ１］［ｉ］とを比較して（ステップＳ１０８）、両者の間に有意差があるか否か判別する（ステップＳ１０９）。
【０１４５】
ステップＳ１０９で、有意差があると判別したときには、つまり、画素［ｉ］の輝度の変化があると判別すると、検知フラグ［ｉ］を「ｔｒｕｅ」にし、そのときのフレーム番号を、検知時間［ｉ］として記憶保持する（ステップＳ１１０）。
【０１４６】
ステップＳ１０９で、有意差がない、つまり、画素［ｉ］の輝度に変化がないと判別すると、検知フラグ［ｉ］は「ｆａｌｓｅ」にする（ステップＳ１１１）。ステップＳ１１０およびステップＳ１１１の後には、安定クラスの処理を終了して、図１３のフローチャートに戻る。
【０１４７】
次に、図１５に、ステップＳ９１の中間クラスの処理の一例のフローチャートを示す。この中間クラスの処理においては、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥを調べ、先ず、この前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｃであるか否か判別する（ステップＳ１２１）。
【０１４８】
ステップＳ１２１で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｃであると判別された場合は、不安定クラスから中間クラスに遷移したことを示すＳＴＡＴＥ＿ＣＢに状態遷移値ＳＴＡＴＥ［ｉ］を更新する（ステップＳ１２２）。
【０１４９】
また、ステップＳ１０１で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ｃではないと判別された場合は、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ａであるか否か判別し（ステップＳ１２３）、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿Ａであると判別したときには、安定クラスから中間クラスに遷移したことを示すＳＴＡＴＥ＿ＢＡに状態遷移値ＳＴＡＴＥ［ｉ］を更新する（ステップＳ１２４）。
【０１５０】
そして、ステップＳ１２２およびステップＳ１２４の後には、この中間クラスの処理を終了して、図１３のフローチャートに戻る。
【０１５１】
次に、図１６に、図１３のステップＳ９２の不安定クラスの処理の一例のフローチャートを示す。この不安定クラスの処理においては、先ず、状態遷移値ＳＴＡＴＥ［ｉ］を、ＳＴＡＴＥ＿Ｃに更新する（ステップＳ１３１）。
【０１５２】
そして、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥを調べ、この前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢＡまたはＳＴＡＴＥ＿ＢＡであるか否か判別する（ステップＳ１３２）。
【０１５３】
ステップＳ１３２で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢＡまたはＳＴＡＴＥ＿ＢＡであると判別したときには、基準輝度値［ｉ］を更新するかどうかを調べる。すなわち、更新フラグが「ｆａｌｓｅ」であるか否か判別し（ステップＳ１３３）、更新フラグが「ｆａｌｓｅ」であると判別したときには、更新可能であるので、基準輝度値［ｉ］を、最大重みｋ１に対応する輝度正規分布の平均値：平均［ｋ１］［ｉ］に更新すると共に、更新後に、更新フラグを「ｔｒｕｅ」に変更する。また、更新時間［ｉ］として、当該フレーム番号を記憶保持する（ステップＳ１３４）。
【０１５４】
ステップＳ１３２で、前回の状態遷移値ｐｒｅ＿ＳＴＡＴＥがＳＴＡＴＥ＿ＣＢＡまたはＳＴＡＴＥ＿ＢＡではないと判別したときには、ステップＳ１３５に進む。また、ステップＳ１３３で、更新フラグが「ｔｒｕｅ」のとき、また、ステップＳ１３４の処理の後にも、ステップＳ１３５に進む。そして、ステップＳ１３５では、検知フラグを「ｆａｌｓｅ」にすると共に、状態遷移値ＳＴＡＴＥ＿ＣＢＡの継続時間を計測する継続カウント値ｆ＿ｃｏｕｎｔｅｒ［ｉ］を０に初期化する。
【０１５５】
ステップＳ１３５の後には、この不安定クラスの処理を終了して、図１３のフローチャートに戻る。
【０１５６】
図１２に戻り、以上説明したような画素単位の検知処理が終了すると、画像処理部１３は、画素単位で検知した検知領域をまとめるために検知フラグを基に、“ブロック化”処理を行なう（ステップＳ７２）。
【０１５７】
このブロック化処理は、例えば、縦×横＝４×４画素の範囲を１つのブロックとした場合に、そのブロック範囲中に検知画素が半分以上あれば、そのブロック内の画素の全部を不動体として検知したことにし、反対に、前記ブロック範囲中の検知画素が半分未満ならば、そのブロック範囲内は不動体とは検知しなかったことにする。
【０１５８】
ブロック範囲の動かし方は、1画素ずつずらしていくのでもいいし、例えば４画素飛ばしでも良い。
【０１５９】
次に、“ブロック化”した検知領域に対して、ラベリングを行ない（ステップＳ７３）、各検知領域の面積、外接四角形の位置などラベルデータを取得する（ステップＳ７４）。
【０１６０】
次に、ステップＳ７４で取得したラベルデータを基に、面積や外接四角形の位置、大きさなどで、指定した閾値に満たないものや超えるものは、ノイズとして削除する（ステップＳ７５）。
【０１６１】
次に、時間差があって検出されたものは、接している場合でも別々の不動体として検知したいので、残った検知領域に対して、検知時間を基に、時間方向でのラベリングを行なう（ステップＳ７６）。例えば１分以内の場合は、同じラベルとする。
【０１６２】
次に、同じ検知物には同じＩＤ番号（識別番号）を付け、フレーム間の関係を明示する（ステップＳ７７）。そして、指定された検知時間を越えて滞在した不動体に対して、位置、検知時間、滞在時間等のデータとともにアラームを出力する（ステップＳ７８）。以上で、不動体検知処理を終了する。
【０１６３】
図７に戻り、上述のようにして、“不動体検知”処理が終了すると、終了信号が出ているか調べて（ステップＳ７）、終了信号が出ていなければ、ステップＳ１０に戻り、ズレ補正用の基準画像の更新を行ない、次の入力画像待ちになって上記の処理を繰り返す。また、ステップＳ７で、終了信号が出ていると判別したときには、この実施形態の処理を終了する。
【０１６４】
［他の実施形態］
上述の説明では、基準輝度値は１個であったが、別の不動体検知方法として、基準輝度値を２種類持つ方法もある。
【０１６５】
実際に処理を行なうと、長時間の不動体検知の間に天候の変化などにより、一度検知した対象物に対して、再度変化を検知してしまう場合がある。いま、時間方向でもラベリングをして、時間差があって検知された場合は、接していても区別をしているので１つの物体が細かく分かれてしまうことがある。
【０１６６】
そこで、上述した“画素単位の検知”の安定クラスの処理において、画素の輝度の変化を検知する際に、更新フラグに従って作成した基準輝度値Ｙ１とは別に、もう１つ基準輝度値Ｙ２との比較を行なう。例えば、基準輝度値Ｙ２は、更新フラグに関係なしに不安定クラスになったときの最大重みの分布の平均値とする。
【０１６７】
例えば、道路に車が停車して、しばらくして車の輝度が変化した場合について考える。例えば、日が当たっている反射していた車の輝度が、日陰になったために、変化した場合などがこの例である。
【０１６８】
この場合に、道路の輝度をＩ＿ｒｏａｄ、 変化前の車の輝度Ｉ＿ｃａｒ１、変化後の車の輝度Ｉ＿ｃａｒ２とすると、Ｉ＿ｒｏａｄを基準輝度値として処理を行なうと、Ｉ＿ｒｏａｄとＩ＿ｃａｒ１との輝度差から車が停車したことを検知し、その後、Ｉ＿ｒｏａｄとＩ＿ｃａｒ２との輝度差から変化を再検知し、検知時間を更新してしまう。すると、後に時間方向でラベリングしたときに、２つに別れてしまう。
【０１６９】
そこで、基準輝度値Ｙ２としてＩ＿ｃａｒ１を設定し、Ｉ＿ｃａｒ１とＩ_ｃａｒ２の輝度差を調べ、輝度差がないときは検知時間を更新しないようにする。つまり、画素の輝度の変化を検知する際に、基準輝度値Ｙ１とは差があり、基準輝度値Ｙ２とは差がない場合は、検知時間を更新しないようにして検知物が細かく分かれてしまうのを防ぐ。
【０１７０】
［実施形態の効果］
上述したこの実施形態によれば、混合正規分布の上位２つの重みの関係を複数のクラスに分類し、そのクラスの遷移状態を見ることで、以下の要因により、移動体が混在する映像の中からより安定に長時間滞在している不動体を検知することができる。
【０１７１】
・検知すべき不動体の前を移動体が通過してカメラから見えない状態が瞬時生じても影響を受けない。
【０１７２】
・木の揺れや水面の揺らぎなどの影響が受けにくくなる。
【０１７３】
・画素ごとに基準輝度の更新を適切なタイミングで行うことができる。
【０１７４】
・ゆっくりした環境変化に追従できる。
【０１７５】
・過去の画像データを大量に持たなくても長時間の不動体の検知が行える。
【０１７６】
［その他の変形例］
以上の説明では、重み付き混合正規分布を用いた検知方法としたので、輝度分布は正規分布のみであったが、この発明は、輝度分布が正規分布でなくとも、上述と同様にして、各分布の重みを更新する方法のいずれにも適用可能である。上述の実施形態では各分布は正規分布であるので、各分布の代表輝度値は、平均値であったが、代表輝度値は、分布に応じたものでよいことはいうまでもない。
【０１７７】
また、上述の実施形態では、不動体検知は、画素単位の輝度値で行なうようにしたが、複数の画素単位、例えば縦×横＝２×２＝４画素のブロック単位で、その４画素の平均値をブロック単位の輝度値として、上述と同様の処理を行なうようにすることもできる。
【０１７８】
また、上述の実施形態では、クラス分類は、上位２個の重みの関係、例えば２個の重みの比に基づいて行なうようにしたが、これに限られるものではない。例えば、上位２個の重みの交替と、最上位の重みの大きさからクラス分類するようにしても良い。つまり、上位２個の重みの交替時点近傍を不安定クラスとし、また、最上位の重みが大きいときを安定クラスとし、不安定クラスと安定クラスの中間を中間クラスとするように分類することもできる。
【図面の簡単な説明】
【０１７９】
【図１】この発明による画像処理装置の実施形態の機能ブロック図である。
【図２】この発明による画像処理装置の実施形態を用いた監視システムの構成例を示すブロック図である。
【図３】この発明による画像処理方法の実施形態の要部を説明するための図である。
【図４】この発明による画像処理方法の実施形態の要部を説明するための図である。
【図５】この発明による画像処理方法の実施形態の要部を説明するための図である。
【図６】この発明による画像処理方法の実施形態の要部を説明するための図である。
【図７】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図８】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図９】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１０】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１１】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１２】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１３】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１４】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１５】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１６】この発明による画像処理方法の実施形態における画像処理動作を説明するためのフローチャートである。
【図１７】この発明による画像処理方法の実施形態に用いる重み付き混合正規分布を説明する際に用いる図である。
【図１８】この発明による画像処理方法の実施形態に用いる重み付き混合正規分布を説明する際に用いる図である。
【図１９】この発明による画像処理方法の実施形態に用いる重み付き混合正規分布を説明する際に用いる図である。
【図２０】この発明による画像処理方法の実施形態に用いる重み付き混合正規分布を説明する際に用いる図である。
【図２１】この発明による画像処理方法の実施形態に用いる重み付き混合正規分布を説明する際に用いる図である。
【符号の説明】
【０１８０】
１３…画像処理部、１１２…重み付き混合正規分布算出手段、１１４…クラス分類手段、１１５…基準輝度値更新手段、１１６…変化後輝度値検出手段、１１７…クラス遷移判別手段、１１８…比較手段、１１９…不動体検知判定手段
【図１】
2006331306.tif 000003
【図２】
2006331306.tif 000004
【図３】
2006331306.tif 000005
【図４】
2006331306.tif 000006
【図５】
2006331306.tif 000007
【図６】
2006331306.tif 000008
【図７】
2006331306.tif 000009
【図８】
2006331306.tif 000010
【図９】
2006331306.tif 000011
【図１０】
2006331306.tif 000012
【図１１】
2006331306.tif 000013
【図１２】
2006331306.tif 000014
【図１３】
2006331306.tif 000015
【図１４】
2006331306.tif 000016
【図１５】
2006331306.tif 000017
【図１６】
2006331306.tif 000018
【図１７】
2006331306.tif 000019
【図１８】
2006331306.tif 000020
【図１９】
2006331306.tif 000021
【図２０】
2006331306.tif 000022
【図２１】
2006331306.tif 000023