以下、本発明を図示する実施形態に基づいて説明する。
<<< §1. 基本的実施形態に係る個体の検出装置の構成 >>>
はじめに、本発明に係る個体の検出装置の全体構成について説明する。図1は、本発明の基本的な実施形態に係る撮影画像内の個体の検出装置100の構成を示すブロック図である。この検出装置100は、所定の撮影対象領域内に存在する個体を、静止中の静止個体もしくは動作中の動作個体として検出する個体の検出装置であり、図示のとおり、原画像入力部110と、背景画像格納部120と、背景差分画像作成部130と、フレーム間差分画像作成部140と、重複有無判定部150と、個体認識部160と、検出個体表示部170と、を備えている。
原画像入力部110は、時系列で並んだフレーム単位の画像として得られた各原画像P(t)を入力する構成要素であり、図示の実施形態の場合、入力した各原画像P(t)を一時的に保存する機能も有している。ここで、変数tは時刻を示しており、たとえば、時刻t0で撮影された原画像P(t0),時刻t1で撮影された原画像P(t1),時刻t2で撮影された原画像P(t2),... というように、フレーム単位の原画像が順次入力されることになる。各原画像P(t)は、所定の撮影対象領域に対する撮影によって得られた画像であり、たとえば、所定の監視場所に設置された定点カメラによる撮影によって得られたデジタル画像である。
一方、背景画像格納部120は、上記撮影対象領域についての背景画像BGを格納する構成要素である。ここで、背景画像BGは、この検出装置100による検出対象となる個体が存在しない基準状態において、上記撮影対象領域を撮影することによって得られた画像である。たとえば、この検出装置100が、地下駐車場など、照明環境に変化が生じない屋内の場所に設置された定点カメラの撮影画像を原画像P(t)として入力する装置の場合であれば、予め車両が存在しないときに撮影された原画像P(t)を背景画像BGとして背景画像格納部120に格納しておくようにすればよい。図1における原画像入力部110から背景画像格納部120への矢印は、このような原画像P(t)を背景画像BGとして格納する信号の流れを示している。
一方、この検出装置100が、照明環境に変化が生じる屋外の場所などに設置された定点カメラの撮影画像を原画像P(t)として入力する装置の場合は、たとえば、昼間用の背景画像や夜間用の背景画像といった複数の背景画像を背景画像格納部120内に用意して使い分けるようにしてもよい。ただ、実用上は、背景画像格納部120に、原画像入力部110が過去に入力した複数のフレーム単位の画像に基づいて背景画像BGを作成して格納する機能をもたせておき、背景差分画像作成部130に対して、最新の背景画像BGを提供するようにしておくのが好ましい。
たとえば、原画像入力部110が過去の所定時間内に入力した多数の原画像P(t)を背景画像格納部120に取り込み、これら多数の原画像P(t)についての平均画像を作成し、作成した平均画像をその時点の背景画像BGとする取り扱いをすればよい。具体的には、たとえば、1時間といった長い時間について平均画像を作成すれば、それほど長時間にわたって同位置に存在し続ける検出対象物がない限り、作成した平均画像は背景画像として利用することができる。
背景差分画像作成部130は、原画像入力部110が逐次入力した各原画像P(t)と背景画像格納部120から与えられる背景画像BGとの差をとることにより、背景差分画像D(t)を作成する構成要素である。上述したように、背景画像格納部120が、多数の原画像P(t)の平均画像を作成する機能をもっている場合、背景差分画像作成部130は、背景画像格納部120に格納されている最新の背景画像BGを用いて背景差分画像D(t)を作成することになる。
これに対して、フレーム間差分画像作成部140は、原画像入力部110が逐次入力した各原画像P(t)について、時系列における異なるフレームとの差分を示すフレーム間差分画像を作成する構成要素である。たとえば、時刻t1に与えられた原画像P(t1)については、その前のフレームである原画像P(t0)との差を求め、得られた差分画像をフレーム間差分画像F(t1)として出力する処理を行う。
重複有無判定部150は、背景差分画像作成部130が作成した背景差分画像D(t)内の個々の背景差分領域dについて、フレーム間差分画像作成部140が作成したフレーム間差分画像F(t)内のフレーム間差分領域fに対する重複部分の有無を判定する構成要素である。ここに示す実施例の場合、重複有無判定部150は、判定結果を重複確認画像C(t)という形で出力する機能を有している。この重複確認画像C(t)の作成方法については、後に具体例を示しながら説明する。
個体認識部160は、重複有無判定部150による判定結果に基づいて、原画像P(t)に含まれる個体を静止個体もしくは動作個体と認識する構成要素であり、要するに、原画像P(t)上に現れている個々の個体が、静止個体か動作個体かを認識する役割を果たす。より具体的に説明すれば、この個体認識部160は、背景差分画像作成部130が作成した背景差分画像D(t)に含まれている個々の背景差分領域dについて、重複有無判定部150による判定結果(図示の実施例の場合、重複確認画像C(t))に基づいて、当該背景差分領域dを占める個体を静止個体もしくは動作個体と認識する処理を行う構成要素であり、図示のとおり、静止個体認識部161と動作個体認識部162とを有している。静止個体認識部161は、静止個体の認識処理を行い、動作個体認識部162は、動作個体の認識処理を行う。
なお、本願にいう「個体」とは、1人の人間や、1台の車両、というように、独立して移動可能な検出対象物を指しており、人間の足とか、車両のタイヤといった一部分は、あくまでも「個体」の一部分であって、それ自体は「個体」ではない。また、本願にいう「動作個体」とは、「何らかの動作を行っている最中の個体」を指しており、必ずしも移動している個体(歩行中の人や走行中の車両)だけを指すものではない。たとえば、定位置に止まりながら手を振っている人や、停車しながらウインカーを点滅させている車両などは、本願にいう「動作個体」である。
これに対して、本願にいう「静止個体」とは、「何ら動作を行っていない個体」を指しており、撮影対象領域内に存在する個体のうち、上記「動作個体」以外の個体をいう。たとえば、座ったまま手足などを動かさない人や、駐車中の車両などは、本願にいう「動作個体」である。もっとも、「動作を行っているか否か」は、後述するように、フレーム間差分画像F(t)上でフレーム間差分領域fと認識される部分があるか否かによって判断される事項であり、フレーム間の差分が所定の基準以下にしかならない微細な動作しかしていない個体(たとえば、呼吸動作しかしていない人)は、「静止個体」と判定されることになる。
検出個体表示部170は、個体認識部160によって静止個体もしくは動作個体と認識された個体を、ディスプレイ画面上で識別させるための個体指標を表示する構成要素である。すなわち、静止個体認識部161によって静止個体と認識された個体については静止個体指標sを表示し、動作個体認識部162によって動作個体と認識された個体については動作個体指標mを表示する処理を行う。静止個体指標sは、ディスプレイ画面上に表示されている個体のうち、静止個体と認識された個体を示す指標であり、動作個体指標mは、ディスプレイ画面上に表示されている個体のうち、動作個体と認識された個体を示す指標である。
ここに示す実施例の場合、検出個体表示部170には、原画像入力部110が入力した原画像P(t)が逐次与えられている。したがって、検出個体表示部170は、静止個体指標sまたは動作個体指標mを、原画像P(t)に重畳させることにより個体検出画像Q(t)を作成し、この個体検出画像Q(t)をディスプレイ画面上に表示する。なお、検出個体表示部170は、個体認識部160によって静止個体と認識された個体を示す静止個体指標sと、動作個体と認識された個体を示す動作個体指標mとの双方を、ディスプレイ画面上に表示する際には、両者をそれぞれ視覚的に区別可能な態様で表示する機能を有している。
したがって、この検出装置100を、監視システムとして利用する場合、ディスプレイ画面を見ながら個々の個体を監視する監視員は、個体検出画像Q(t)に含まれている静止個体指標sと動作個体指標mとを区別して認識することにより、画面上の個体が静止個体であるのか動作個体であるのかを視覚的に把握することができる。静止個体指標sと動作個体指標mの具体的な態様については後述する。
以上、図1を参照しながら、本発明の基本的な実施形態に係る個体の検出装置100の基本構成を、個々のブロックで示す機能要素の集合体として説明したが、実用上、この検出装置100は、コンピュータに専用のアプリケーションプログラムを組み込むことにより構成することができる。したがって、実際には、図1に各ブロックで示した構成要素は、コンピュータのハードウェアとプログラムによるソフトウェアとの組み合わせによって実現されることになる。
また、図1に示す実施例では、個体認識部160内に静止個体認識部161と動作個体認識部162との双方が設けられているが、これらは必ずしも双方を設ける必要はない。たとえば、静止個体の認識だけを行えば足りる用途に利用する装置であれば、静止個体認識部161のみを設けておけば足り、検出個体表示部170は静止個体指標sを表示する処理を行えばよい。同様に、動作個体の認識だけを行えば足りる用途に利用する装置であれば、動作個体認識部162のみを設けておけば足り、検出個体表示部170は動作個体指標mを表示する処理を行えばよい。
更に、検出個体表示部170は、静止個体指標sまたは動作個体指標mを原画像P(t)に重畳させることにより個体検出画像Q(t)を作成してディスプレイ画面上に表示する機能を果たす構成要素であるが、個体検出画像Q(t)を表示する必要がない用途に利用する装置の場合は、検出個体表示部170を設ける必要はない。たとえば、監視業務という用途ではなく、個体認識部160が認識した静止個体や動作個体の数を計数し、当該計数値に基づいて統計をとるような用途に利用する装置の場合は、個体認識部160が個々の静止個体や動作個体の認識を行い、これを計数することができれば足りる。このような用途では、監視員のためにディスプレイ画面上に個体検出画像Q(t)を表示する必要はなく、検出個体表示部170は不要である。
<<< §2. 本発明における静止個体と動作個体 >>>
§1で述べたとおり、図1に示す個体の検出装置100の基本的な処理機能は、所定の監視場所に設置された定点カメラによる撮影などによって得られた原画像P(t)を逐次入力して(原画像入力部110への入力)、個体検出画像Q(t)をディスプレイ画面上に逐次出力する(検出個体表示部170からの出力)ことにある。
たとえば、定点カメラによって30フレーム/秒のフレームレートで撮影された原画像P(t)を処理する場合、1/30秒の間隔で与えられる原画像P(t0),P(t1),P(t2),P(t3),...を順次入力しながら、同じく1/30秒の間隔で作成された個体検出画像Q(t1),Q(t2),Q(t3),...を順次出力する処理が行われることになる。なお、個体検出画像Q(t)の作成には、フレーム間差分画像F(t)が必要になるので、上例の場合、時刻t0における個体検出画像Q(t0)は作成されない。
ここで重要な点は、こうして作成された個体検出画像Q(t)には、検出された個々の個体を示す情報だけではなく、当該個体が静止中の個体(静止個体)か動作中の個体(動作個体)か、を示す情報も含まれている点である。以下、本発明にいう「静止個体」と「動作個体」の概念について、具体的な例を示しながら説明する。
図2は、図1の装置に入力された原画像P(t)と図1の装置から出力された個体検出画像Q(t)−Sとの対応関係の具体例を示す図である。まず、図2の左側には、時刻t0,t1,t2,t3,t4の各時点で撮影された原画像P(t0),P(t1),P(t2),P(t3),P(t4)が例示されている。これらの各原画像は、所定の撮影対象領域を撮影するために設置された定点カメラによって撮影されたものである。一般的な動画撮影用のカメラの場合、30フレーム/秒程度のフレームレートでの撮影が行われることになるが、ここでは便宜上、1フレーム/秒程度のフレームレートで、2人の人物が撮影された例を用いて以下の説明を行うことにする。また、背景については図示を省略する。
原画像P(t0)は、時刻t0における撮影によって得られたフレーム画像を示すものであり、左端に第1の個体A(符号A0で示す。以下、大人と呼ぶ)が位置し、右端に第2の個体B(符号B0で示す。以下、子供と呼ぶ)が位置している。この例では、大人Aは図の右側へと移動し、子供Bは図の左側へと移動しているため、時刻t1に撮影された原画像P(t1)では、大人Aの位置(A1)は若干右へずれ、子供Bの位置(B1)は若干左にずれている。ここでは、説明の便宜上、子供Bは時刻t1に移動をやめたものとする。大人Aは移動を続けているため、時刻t2に撮影された原画像P(t2)では、大人Aの位置(A2)は更に右へずれ、子供Bの位置(B2)は元の位置のままである。
ここで、大人Aが時刻t2に移動をやめたものとすると、時刻t3に撮影された原画像P(t3)では、大人Aも子供Bも元の位置のままである。したがって、図示の原画像P(t3)は原画像P(t2)と同じになる。このように、時刻t3に至った時点で、大人Aも子供Bも、その移動動作は中止しているため、両者は定位置に立った状態にある。ただ、この後、大人Aが片手を上げる動作をしたものとしよう。この場合、時刻t4に撮影された原画像P(t4)では、大人Aの位置には変化は生じていないが、その形態が、片手を上げた状態(A4)に変化している。子供Bについては、位置も形態も変化は生じていない。
このように、図2の左側に示す5枚の原画像P(t0)〜P(t4)は、上から下に向かった時系列で撮影されたフレーム単位の画像であり、2組の個体(大人Aと子供B)を被写体として含む画像になっている。以下、説明の便宜上、原画像P(t0)〜P(t4)に含まれている大人Aに対応する個体をA0〜A4と呼び、子供Bに対応する個体をB0〜B4と呼ぶことにする。
もちろん、実際には、これら個体の画像は、背景画像の上に配置されていることになるが、ここでは説明の便宜上、背景を単なる無地の領域で示す。また、大人Aや子供Bが徒歩で移動すれば、手足の動きに応じて、その形態に変化が生じることになるが、ここでは、説明の便宜上、大人A0〜A3は同じ形態として描き(大人A4は手を上げているため、形態は異なったものになる)、子供B0〜B4も同じ形態として描いてある。
さて、ここでこの2つの個体の動きに着目すると、大人Aについては、時刻t0〜t2まで歩行動作中であり、時刻t3で静止し、時刻t4で腕を上げる動作中ということになる。一方、子供Bについては、時刻t0〜t1まで歩行動作中であり、時刻t2〜t4までは静止中ということになる。もちろん、実際には、静止中であっても呼吸などにより微動が生じているが、本発明では、位置や形態に有意な変化が生じていない場合には、静止中と判断することになる。
要するに、本発明に係る検出装置100では、位置および形態のいずれかに有意な実質的な変化が生じている個体を動作中と判断し、そのような個体を「動作個体」と呼んでいる。したがって、本発明にいう「動作個体」には、位置が変化する移動中の個体だけでなく、定位置であってもその形態を変えている個体も含まれることになる。これに対して、本発明にいう「静止個体」は、位置および形態がともに変化していない個体ということになる。もちろん、実際には、「変化していない」という意味は、「所定の基準を超える有意な変化が生じていない」という意味であり、位置変化や形態変化が基準以下である場合には、「静止個体」と認識されることになる。
ここに示す実施例では、ある1枚のフレーム画像上に現れている個体が、動作個体か静止個体かを決定する場合、1つ前のフレーム画像を基準として、位置や形態が有意な実質的な変化を生じているか否かを判定することになる。
たとえば、図示の例の場合、大人A1は、1つ前のA0に対して位置を変えているため「動作個体」と判定され、大人A2は、1つ前のA1に対して位置を変えているため「動作個体」と判定される。これに対して、大人A3は、1つ前のA2に対して位置も形態も変えていないため、「静止個体」と判定される。そして、大人A4は、1つ前のA3に対して位置は変えていないが、形態を変えているため、「動作個体」と判定される。同様に、子供B1は、1つ前のB0に対して位置を変えているため「動作個体」と判定されるが、子供B2〜B4は、1つ前に対して位置も形態も変えていないため、「静止個体」と判定される。
本発明の目的は、定点カメラによる撮影画像に基づいて、動作中か静止中かを区別して、個々の個体を検出することにある。すなわち、撮影画像中に現れている個々の個体を検出するだけでなく、検出した各個体について、それぞれ動作個体であるのか静止個体であるのかを認識することを目的としている。特に、図1に示す実施例の場合、個体認識部160において、各個体が動作個体か静止個体かを認識した上で、更に、検出個体表示部170によって、その認識結果をディスプレイ画面上に表示する機能を有している。
具体的には、検出個体表示部170は、静止個体指標sまたは動作個体指標mを原画像P(t)に重畳させることにより個体検出画像Q(t)を作成してディスプレイ画面上に表示する機能を有している。図2の右側に示す個体検出画像Q(t)−Sは、検出個体表示部170による静止個体の検出結果の表示例を示すものであり、各時刻t1〜t4における原画像P(t1)〜P(t4)の上に、静止個体認識部161によって静止個体と認識された個体を示す静止個体指標sを重畳した画像になっている。図では、静止個体指標sが微細矩形ドットパターンによるハッチング領域として示されている。
まず、時刻t1の原画像P(t1)に対応して得られる個体検出画像Q(t1)−Sを見てみよう。図示の例の場合、個体検出画像Q(t1)−Sは、原画像P(t1)と全く同じ画像になり、いずれも大人A1と子供B1を含む画像になっている。この個体検出画像Q(t1)−Sには、静止個体指標sは表示されていない。これは、大人A1と子供B1がいずれも動作個体であり(1つ前のA0,B0に対して位置を変えている)、静止個体は1つも存在しないためである。
次に、時刻t2の原画像P(t2)に対応して得られる個体検出画像Q(t2)−Sを見てみよう。図示の例の場合、個体検出画像Q(t2)−Sは、原画像P(t2)の上に、静止個体指標s1(t2)を重畳した画像になっている。具体的には、静止個体指標s1(t2)は、子供B2の領域に重なる微細矩形ドットによるハッチング領域として示されている。これは、子供B2が、1つ前のB1に対して位置も形態も変えていない静止個体であるためである。
続いて、時刻t3の原画像P(t3)に対応して得られる個体検出画像Q(t3)−Sを見てみよう。図示の例の場合、個体検出画像Q(t3)−Sは、原画像P(t3)の上に、静止個体指標s1(t3)およびs2(t3)を重畳した画像になっている。具体的には、静止個体指標s1(t3)は、大人A3の領域に重なる微細矩形ドットによるハッチング領域として示されており、静止個体指標s2(t3)は、子供B3の領域に重なる微細矩形ドットによるハッチング領域として示されている。これは、大人A3が、1つ前のA2に対して位置も形態も変えていない静止個体であり、子供B3が、1つ前のB2に対して位置も形態も変えていない静止個体であるためである。
最後に、時刻t4の原画像P(t4)に対応して得られる個体検出画像Q(t4)−Sを見てみよう。図示の例の場合、個体検出画像Q(t4)−Sは、原画像P(t4)の上に、静止個体指標s1(t4)を重畳した画像になっている。具体的には、静止個体指標s1(t4)は、子供B4の領域に重なる微細矩形ドットによるハッチング領域として示されている。これは、子供B4が、1つ前のB3に対して位置も形態も変えていない静止個体であるためである。大人A4は、1つ前のA3に対して位置は変えていないが、形態を変えているため(片手を上げているため)、動作個体になる。
結局、図1に示す個体の検出装置100を監視システムとして利用して、図2の右側に示すような個体検出画像Q(t)−Sをディスプレイ画面上に表示させるようにすれば、定点カメラによる撮影画像(原画像P(t))とともに、各時刻において静止個体と判定された個体を示す静止個体指標sが提示されることになるので、監視員は、静止個体に注意を向けた監視を行うことが可能になる。
たとえば、図2に示す例の場合、時刻t2〜t4の間、ディスプレイ画面上には、子供Bの画像上に微細矩形ドットによるハッチング領域として静止個体指標sが重畳表示されるので、監視員は子供Bがずっと動かない状態であることを認識することができる。すなわち、微細矩形ドットによるハッチング領域からなる静止個体指標sは、子供Bという個体の検出結果を示すだけでなく、当該個体が静止個体であることを示す役割を果たす。したがって、この装置をプール用監視システムとして利用すれば、溺れた可能性のある利用客に注意を向けた監視を行うことができる。
一方、図3は、図1の装置に入力された原画像P(t)と図1の装置から出力された個体検出画像Q(t)−Mとの対応関係の具体例を示す図である。図3の左側に示されている原画像P(t0),P(t1),P(t2),P(t3),P(t4)は、時刻t0,t1,t2,t3,t4の各時点において定点カメラによって撮影されたフレーム単位の画像であり、図2の左側に示した画像と全く同じである。これに対して、図3の右側に示されている個体検出画像Q(t)−Mは、検出個体表示部170による動作個体の検出結果の表示例を示すものである。
上述したとおり、図2の右側に示す個体検出画像Q(t)−Sは、静止個体の検出結果を示す画像であり、各時刻t1〜t4における原画像P(t1)〜P(t4)の上に、静止個体認識部161によって静止個体と認識された個体を示す静止個体指標sを重畳した画像になっている。これに対して、図3の右側に示す個体検出画像Q(t)−Mは、動作個体の検出結果を示す画像であり、各時刻t1〜t4における原画像P(t1)〜P(t4)の上に、動作個体認識部162によって動作個体と認識された個体を示す動作個体指標mを重畳した画像になっている。図では、動作個体指標mが斜線網目パターンによるハッチング領域として示されている。
まず、時刻t1の原画像P(t1)に対応して得られる個体検出画像Q(t1)−Mを見てみよう。図示の例の場合、個体検出画像Q(t1)−Mは、原画像P(t1)の上に、動作個体指標m1(t1)およびm2(t1)を重畳した画像になっている。具体的には、動作個体指標m1(t1)は、大人A1の領域に重なる斜線網目によるハッチング領域として示されており、動作個体指標m2(t1)は、子供B1の領域に重なる斜線網目によるハッチング領域として示されている。これは、大人A1が、1つ前のA0に対して位置を変えた動作個体であり、子供B1が、1つ前のB0に対して位置を変えた動作個体であるためである。
次に、時刻t2の原画像P(t2)に対応して得られる個体検出画像Q(t2)−Mを見てみよう。図示の例の場合、個体検出画像Q(t2)−Mは、原画像P(t2)の上に、動作個体指標m1(t2)を重畳した画像になっている。具体的には、動作個体指標m1(t2)は、大人A2の領域に重なる斜線網目によるハッチング領域として示されている。これは、大人A2が、1つ前のA1に対して位置を変えた動作個体であるためである。
続いて、時刻t3の原画像P(t3)に対応して得られる個体検出画像Q(t3)−Mを見てみよう。図示の例の場合、個体検出画像Q(t3)−Mは、原画像P(t3)と全く同じ画像になり、動作個体指標mは表示されていない。これは、大人A3と子供B3がいずれも静止個体であり(1つ前のA2,B2に対して位置および形態を変えていない)、動作個体は1つも存在しないためである。
最後に、時刻t4の原画像P(t4)に対応して得られる個体検出画像Q(t4)−Mを見てみよう。図示の例の場合、個体検出画像Q(t4)−Mは、原画像P(t4)の上に、動作個体指標m1(t4)を重畳した画像になっている。具体的には、動作個体指標m1(t4)は、大人A4の領域に重なる斜線網目によるハッチング領域として示されている。これは、大人A4が、1つ前のA3に対して位置は変えていないが形態を変えている(片手を上げている)動作個体であるためである。
結局、図1に示す個体の検出装置100を監視システムとして利用して、図3の右側に示すような個体検出画像Q(t)−Mをディスプレイ画面上に表示させるようにすれば、定点カメラによる撮影画像(原画像P(t))とともに、各時刻において動作個体と判定された個体を示す動作個体指標mが提示されることになるので、監視員は、動作個体に注意を向けた監視を行うことが可能になる。
たとえば、図3に示す例の場合、時刻t1,t2,t4において、ディスプレイ画面上には、大人Aの画像上に斜線網目によるハッチング領域として動作個体指標mが重畳表示されるので、監視員は大人Aが何らかの動作を行っていることを認識することができる。すなわち、斜線網目によるハッチング領域からなる動作個体指標mは、大人Aという個体の検出結果を示すだけでなく、当該個体が動作個体であることを示す役割を果たす。したがって、この装置を講演会場などの警備システムとして利用すれば、不審な行動を行っている聴衆者に注意を向けた警備を行うことができる。
図4は、図1の装置に入力された原画像P(t)と図1の装置から出力された個体検出画像Q(t)−SMとの対応関係の具体例を示す図である。図4の左側に示されている原画像P(t0),P(t1),P(t2),P(t3),P(t4)は、時刻t0,t1,t2,t3,t4の各時点において定点カメラによって撮影されたフレーム単位の画像であり、図2や図3の左側に示した画像と全く同じである。これに対して、図4の右側に示されている個体検出画像Q(t)−SMは、検出個体表示部170による静止個体・動作個体の双方の検出結果の表示例を示すものである。
要するに、図4の右側に示す個体検出画像Q(t)−SMは、各時刻t1〜t4における原画像P(t1)〜P(t4)の上に、静止個体認識部161によって静止個体と認識された個体を示す静止個体指標sと、動作個体認識部162によって動作個体と認識された個体を示す動作個体指標mと、の双方を重畳した画像になっている。図では、静止個体指標sが微細矩形ドットパターンによるハッチング領域として示され、動作個体指標mが斜線網目パターンによるハッチング領域として示されている。
すなわち、時刻t1の原画像P(t1)に対応して得られる個体検出画像Q(t1)−SM上では、動作個体である大人A1および子供B1の双方に、動作個体指標m1(t1)およびm2(t1)が重畳されている。また、時刻t2の原画像P(t2)に対応して得られる個体検出画像Q(t2)−SM上では、動作個体である大人A2には動作個体指標m1(t2)が重畳されており、静止個体である子供B2には静止個体指標s1(t2)が重畳されている。そして、時刻t3の原画像P(t3)に対応して得られる個体検出画像Q(t3)−SM上では、静止個体である大人A3および子供B3の双方に、静止個体指標s1(t3)およびs2(t3)が重畳されている。最後に、時刻t4の原画像P(t4)に対応して得られる個体検出画像Q(t4)−SM上では、動作個体である大人A4には動作個体指標m1(t4)が重畳されており、静止個体である子供B2には静止個体指標s1(t4)が重畳されている。
結局、図1に示す個体の検出装置100を監視システムとして利用して、図4の右側に示すような個体検出画像Q(t)−SMをディスプレイ画面上に表示させるようにすれば、定点カメラによる撮影画像(原画像P(t))とともに、各時刻において、静止個体と判定された個体を示す静止個体指標sと、動作個体と判定された個体を示す動作個体指標mとが提示されることになる。しかも、静止個体指標sと動作個体指標mとは、それぞれ視覚的に区別可能な態様で表示されるので(図示の例の場合、微細矩形ドットパターンによるハッチング領域と斜線網目パターンによるハッチング領域)、監視員は、静止個体と動作個体とをそれぞれ区別して認識することができる。
すなわち、監視員は、ハッチングがなされた領域をそれぞれ独立した個体(この例の場合は人)として直観的に把握できるとともに、微細矩形ドットによるハッチングであれば静止中の個体、斜線網目によるハッチングであれば動作中の個体として、それぞれ区別して把握することができる。このため、様々な環境において、静止中の個体に注意を向けた監視や、逆に、動作中の個体に注意を向けた監視を行うことができる。
このように、図1に示す個体の検出装置100は、図2の右側に示すように、静止個体の検出結果を示す個体検出画像Q(t)−Sを表示することもできるし、図3の右側に示すように、動作個体の検出結果を示す個体検出画像Q(t)−Mを表示することもできるし、図4の右側に示すように、静止個体と動作個体の双方の検出結果を示す個体検出画像Q(t)−SMを表示することもできる。なお、個体検出画像Q(t)−Sを表示するだけで十分な装置の場合は、図1に示す動作個体認識部162を設ける必要はなく、動作検出画像Q(t)−Mを表示するだけで十分な装置の場合は、図1に示す静止個体認識部161を設ける必要はない。
図1に示す個体の検出装置100を、図4の右側に示すように、静止個体と動作個体の双方の検出結果を示す個体検出画像Q(t)−SMを表示する装置として捉えると、この装置は、所定の撮影対象領域内に存在する個体を、静止中の静止個体もしくは動作中の動作個体として検出する個体の検出装置であり、所定の撮影対象領域に対する撮影によって時系列で並んだフレーム単位の画像として得られる原画像P(t)を入力する原画像入力部110と、この原画像P(t)上に現れている個々の個体を、静止個体もしくは動作個体と認識する個体認識部160と、この個体認識部160による認識結果に基づいて、原画像P(t)上に、静止個体と認識された個体を示す静止個体指標sと、動作個体と認識された個体を示す動作個体指標mと、を重畳して、かつ、静止個体指標sと動作個体指標mとがそれぞれ視覚的に区別可能となるような態様で表示する検出個体表示部170と、を備えた装置ということができる。
<<< §3. 基本的実施形態に係る個体の検出装置の動作 >>>
上述した§2では、図1に示す個体の検出装置100に対して原画像P(t0)〜P(t4)を入力したときに、どのような個体検出画像Q(t1)〜Q(t4)が出力されるかを、図2〜図4の具体的実例を参照しながら説明し、ディスプレイ画面上に表示された個体検出画像Q(t1)〜Q(t4)によって、監視員に付加的な情報を提供できるメリットがある点についても付言した。結局、図1に示す個体の検出装置100は、与えられた原画像P(t0)〜P(t4)に基づいて、個体検出画像Q(t1)〜Q(t4)を作成して出力する処理を行う装置ということになる。ここでは、図2〜図4に示した具体的な画像を実例として用いながら、個体の検出装置100の各部の具体的な処理動作を述べる。
<3−1.原画像入力部110の動作>
原画像入力部110は、定点カメラなどによる撮影画像を、時系列で並んだフレーム単位の原画像P(t)として入力する処理を行い、必要に応じて、これら原画像P(t)を一時的に保存する処理を行う。図2〜図4には、t=t0,t1,t2,t3,t4の各時点において入力された原画像P(t0)〜P(t4)の実例が示されている。
前述したとおり、一般的な動画撮影用のカメラでは、30フレーム/秒程度のフレームレートで撮影が行われるが、図2〜図4には、説明の便宜上、1フレーム/秒程度のフレームレートで撮影を行った場合を想定した原画像P(t0),P(t1),P(t2),P(t3),...が例示されている。後述するように、フレーム間差分画像作成部140は、時系列で連続的に入力される個々の原画像について、1つ前の原画像との間のフレーム間差分をとる処理を行うことになる。
したがって、定点カメラが30フレーム/秒のフレームレートで撮影を行った場合に、原画像入力部110がこれら撮影画像をそのまま原画像P(t)として入力した合、背景差分画像作成部130は、1/30秒の周期で背景差分画像D(t)を作成し、フレーム間差分画像作成部140は、1/30秒の周期で、1/30秒前の原画像との間で差分をとることによりフレーム間差分画像F(t)を作成することになる。
もっとも、実用上は、背景差分画像D(t)やフレーム間差分画像F(t)を作成する周期は、必ずしも1/30秒程度の短い周期に設定する必要はなく、より長い周期に設定してもかまわない。その場合は、原画像入力部110に、外部から与えられる時系列で並んだフレーム単位の画像を所定のサンプリング周期でサンプリングして入力する機能をもたせておけばよい。この場合、背景差分画像作成部130は、サンプリングされた(時間的に間引きされた)個々の原画像P(t)について背景差分画像D(t)を作成すれば足り、フレーム間差分画像作成部140は、サンプリングされた各フレーム単位の画像について、時系列における直前の画像との間で差分演算を行うことによりフレーム間差分画像F(t)を作成すれば足りる。たとえば、サンプリング周期を1秒に設定すれば、1フレーム/秒程度のフレームレートの原画像を用いた場合と同じになる。
<3−2.背景画像格納部120の動作>
背景画像格納部120は、定点カメラの撮影対象領域についての背景画像BGを格納する構成要素である。§1で述べたとおり、地下駐車場など、照明環境に変化が生じない屋内の場所に設置された定点カメラを利用する場合であれば、背景画像BGとして、検出対象となる個体が存在しない基準状態において、予め撮影しておいた画像を利用することができる。
ただ、照明環境に変化が生じる屋外の場所などに設置された定点カメラを利用する場合は、背景画像格納部120に、原画像入力部110が過去に入力した複数のフレーム単位の画像の平均画像を自動的に作成する機能をもたせておき、所定タイミングで、作成した平均画像を最新の背景画像BGとして切り替えるようにすればよい。このような背景画像の自動作成の技術は公知の技術であるため、本願では詳しい説明は省略する。
<3−3.背景差分画像作成部130の動作>
背景差分画像作成部130は、原画像入力部110が入力した各原画像P(t)について、背景画像BGとの差分を示す背景差分画像D(t)を作成する。図5は、こうして作成された背景差分画像D(t)の具体例を示す図であり、図の左に示す原画像P(t1)〜P(t4)に対して、それぞれ図の右に背景差分画像D(t1)〜D(t4)が作成された例が示されている。図の右上に示す画像BGは背景画像である。
ここでは、説明の便宜上、背景画像BGを無地の画像として図示しているが、実際の背景画像BGは、撮影対象領域の背景のみが写った画像であり、原画像P(t0)〜P(t4)は、いずれもこの背景画像BGの前景に各個体(大人Aおよび子供B)が写った画像になっている。なお、原画像P(t0)に対応する背景差分画像D(t0)も作成することが可能であるが、以下の手順には必要ないため、ここでは背景差分画像D(t0)の作成は省略されている。
背景差分画像D(t)は、原画像P(t)と背景画像BGとの差分演算によって作成される画像である。差分演算の具体的な手順については後述するが、ここで述べる実施例における差分画像は、「0」もしくは「1」のいずれかの画素値を有する画素の集合体からなる画像であり、対象となる2組の画像の対応する画素の画素値が所定の近似範囲内であれば、当該画素を画素値「0」とし、所定の近似範囲外であれば、当該画素を画素値「1」とする演算によって求まる。図5の背景差分画像D(t)では、画素値「1」の部分を黒、画素値「0」の部分を白で示してある。
図5に示す背景差分画像D(t1)は、原画像P(t1)と背景画像BGとの差分演算によって作成される画像であり、大人A1および子供B1が占有する領域部分が黒く示されている。ここでは、大人A1が占有する領域部分を背景差分領域d1(t1)と呼び、子供B1が占有する領域部分を背景差分領域d2(t1)と呼ぶことにする。したがって、背景差分画像D(t1)は、背景差分領域d1(t1)と背景差分領域d2(t1)とを含む画像ということになり、背景差分領域d1(t1)および背景差分領域d2(t1)は、画素値「1」をもった画素の集合体領域によって構成される。
同様に、背景差分画像D(t2)は、原画像P(t2)と背景画像BGとの差分演算によって作成される画像であり、大人A2に対応する背景差分領域d1(t2)と子供B2に対応する背景差分領域d2(t2)とを含む画像になる。また、背景差分画像D(t3)は、原画像P(t3)と背景画像BGとの差分演算によって作成される画像であり、大人A3に対応する背景差分領域d1(t3)と子供B3に対応する背景差分領域d2(t3)とを含む画像になり、背景差分画像D(t4)は、原画像P(t4)と背景画像BGとの差分演算によって作成される画像であり、大人A4に対応する背景差分領域d1(t4)と子供B4に対応する背景差分領域d2(t4)とを含む画像になる。
このように、背景差分画像作成部130は、原画像入力部110が入力した各原画像P(t)について、背景画像BGとの差分を示す背景差分領域di(t)を含む背景差分画像D(t)を作成する構成要素ということになる。ここで、iは、画像中に含まれる背景差分領域(実質的に個々の個体に対応)の番号を示すパラメータであり、以下、「背景差分領域番号」と呼ぶことにする。図5に示す例の場合、i=1もしくは2であり、i=1は大人Aに付与された番号、i=2は子供Bに付与された番号ということになる。
こうして得られた各背景差分領域di(t)は、結局、時刻tにおいて撮影された原画像P(t)内に存在する各個体に対応していることになる。たとえば、背景差分画像D(t1)内の背景差分領域d1(t1)は大人A1に対応し、背景差分領域d2(t1)は子供B1に対応している。したがって、各時刻tにおいて、個々の個体を検出するだけなら、背景差分画像作成部130によって背景差分画像D(t)を作成すれば足り、図5の右側に示された各背景差分画像D(t1)〜D(t4)に含まれている黒い人型(背景差分領域)が、個々の個体(人)を示していることになる。ただ、本発明では、動作中か静止中かを区別して、個々の個体を検出する必要があるため、以下に述べる処理が必要になる。
<3−4.フレーム間差分画像作成部140の動作>
フレーム間差分画像作成部140は、原画像入力部110が入力した各原画像P(t)について、時系列における異なるフレーム(時間的に前のフレーム)との差分を示すフレーム間差分画像F(t)を作成する。図6は、こうして作成されたフレーム間差分画像F(t)の具体例を示す図であり、図の左に示す原画像P(t0)〜P(t4)に基づいて、それぞれ図の右に示すフレーム間差分画像F(t1)〜F(t4)が作成された例が示されている。すなわち、第n番目のフレーム間差分画像は、第n番目のフレームを構成する原画像と第(n−1)番目のフレームを構成する原画像との差分画像になる。
やはり、このフレーム間差分画像も、「0」もしくは「1」のいずれかの画素値を有する画素の集合体からなる画像であり、対象となる2組の画像の対応する画素の画素値が所定の近似範囲内であれば、当該画素を画素値「0」とし、所定の近似範囲外であれば、当該画素を画素値「1」とする演算によって求まる。図6のフレーム間差分画像F(t)では、画素値「1」の部分を黒、画素値「0」の部分を白で示してある。
具体的には、図6に示すフレーム間差分画像F(t1)は、原画像P(t0)と原画像P(t1)との差分演算によって作成される画像であり、大人Aおよび子供Bの移動に起因して生じた画像の変化領域が黒く示されている。ここでは、大人AがA0からA1に移動することにより生じた変化領域をフレーム間差分領域f1(t1)と呼び、子供BがB0からB1に移動することにより生じた変化領域をフレーム間差分領域f2(t1)と呼ぶことにする。したがって、フレーム間差分画像F(t1)は、フレーム間差分領域f1(t1)とフレーム間差分領域f2(t1)とを含む画像ということになり、フレーム間差分領域f1(t1)およびフレーム間差分領域f2(t1)は、画素値「1」をもった画素の集合体領域によって構成される。
図示の例をよく見ると、フレーム間差分領域f1(t1)は、大人Aの影を左右に若干ずらして重ねたような領域となっているが、腕の一部と足の一部に白抜き部分が生じている。この白抜き部分は、左右の大人Aの重複部分に相当し、差分演算時に十分な差が得られなかった領域ということになる。別言すれば、黒い部分は、背景部分と人物部分との差分がとられたために、十分な差が得られた領域であるのに対して、上記白抜き部分は、人物部分同士の差分がとられたため、十分な差が得られなかった領域ということになる。フレーム間差分領域f2(t1)についても同様に、腕の一部と足の一部に白抜き部分が生じている。
なお、前述したとおり、ここでは説明の便宜上、1フレーム/秒程度のフレームレートで、2人の人物が撮影された実例を示しているため、フレーム間差分領域f1(t1)およびフレーム間差分領域f2(t1)は、人物の2つの影が左右にかなりずれて重なった誇張した例になっているが、一般的な動画撮影用のカメラの場合、30フレーム/秒程度のフレームレートでの撮影が行われるので、このずれ量はより小さくなる。
同様に、フレーム間差分画像F(t2)は、原画像P(t1)と、原画像P(t2)との差分演算によって作成される画像である。このフレーム間差分画像F(t2)には、大人AがA1からA2に移動することにより生じた変化領域がフレーム間差分領域f1(t2)として含まれている。子供Bは移動していないため、子供Bに関するフレーム間差分領域は存在しない。
また、フレーム間差分画像F(t3)は、原画像P(t2)と、原画像P(t3)との差分演算によって作成される画像である。このフレーム間差分画像F(t3)は、図示のとおり、実際には空の画像になる。これは、時刻t2〜t3の間は、大人Aも子供Bも移動しておらず、フレーム間差分領域が存在しないためである。
最後のフレーム間差分画像F(t4)は、原画像P(t3)と、原画像P(t4)との差分演算によって作成される画像である。このフレーム間差分画像F(t4)には、大人Aの形態がA3からA4に変化する(手を上げる)ことにより生じた変化領域がフレーム間差分領域f1(t4),f2(t4)として含まれている。子供Bは移動も形態変化もしていないため、子供Bに関するフレーム間差分領域は存在しない。なお、ここでは、領域f1(t4)とf2(t4)とが連結した領域ではなく、若干離れた領域であったものとし、2つの異なる領域として認識された例が示されている。
このように、フレーム間差分画像作成部140は、原画像入力部110が入力した各原画像P(t)について、時系列における前のフレームとの差分を示すフレーム間差分領域fj(t)を含むフレーム間差分画像F(t)を作成する構成要素ということになる。ここで、jは、画像中に含まれるフレーム間差分領域を示すパラメータであり、以下、「フレーム間差分領域番号」と呼ぶことにする。このフレーム間差分領域番号jは、必ずしも個々の個体に対応するものではない。
たとえば、図示するフレーム間差分画像F(t1)には、j=1として第1番目のフレーム間差分領域f1(t1)と、j=2として第2番目のフレーム間差分領域f2(t1)と、が含まれており、j=1はたまたま第1の個体(大人A)に対応し、j=2はたまたま第2の個体(子供B)に対応している。しかしながら、図示するフレーム間差分画像F(t4)には、やはり、j=1として第1番目のフレーム間差分領域f1(t4)と、j=2として第2番目のフレーム間差分領域f2(t4)と、が含まれているが、j=1もj=2も、いずれも第1の個体(大人A)に対応するものになる。
なお、ここで述べる実施形態では、フレーム間差分画像作成部140が、定点カメラから与えられる時系列的に連続した2つのフレーム間の差分画像を作成する典型的な例についての説明を行うことにするが、フレーム間差分画像は、必ずしも時系列的に連続した2つのフレーム間の差分画像である必要はない。たとえば、前述したように、原画像入力部110がサンプリング機能を有している場合、差分の演算対象となる2つのフレーム画像は、定点カメラの撮影によって得られる連続フレーム画像ではなく、サンプリング周期に応じた時間間隔をあけた2つのフレーム画像ということになる。
また、最近は、動体抽出精度を向上させるため、3以上のフレーム画像についての差分画像を作成する技術や、動きベクトルを利用して差分画像を作成する技術なども提案されている。本発明におけるフレーム間差分画像作成部140は、このような技術を用いてフレーム間差分画像を作成してもかまわない。要するに、本発明におけるフレーム間差分画像作成部140は、時系列をもって入力された個々のフレーム画像について、時間的に先行する別なフレーム(直前のフレームとは限らない、また、1つのフレームとは限らない)との差分を示すフレーム間差分領域を含むフレーム間差分画像を作成する処理を行えばよい。
<3−5.重複有無判定部150の動作>
重複有無判定部150は、背景差分画像D(t)内の個々の背景差分領域di(t)について、フレーム間差分画像F(t)内のフレーム間差分領域fj(t)に対する重複部分の有無を判定する構成要素である。特に、ここに示す実施例の場合、重複有無判定部150は、背景差分画像D(t)とフレーム間差分画像F(t)とに基づいて、背景差分領域di(t)とフレーム間差分領域fj(t)との重複部分を示す重複部分領域ci(t)を含む重複確認画像C(t)を作成する機能を有している。図7〜図10は、こうして作成された重複確認画像C(t)の具体例を示す図である。各重複確認画像C(t)では、背景差分領域di(t)とフレーム間差分領域fj(t)との重複部分が黒い領域として示されており、非重複部分が白い領域として示されている。
まず、図7には、図5の時刻t1に示す背景差分画像D(t1)と、図6の時刻t1に示すフレーム間差分画像F(t1)と、に基づいて、重複確認画像C(t1)が作成された状態が示されている。図示のとおり、背景差分画像D(t1)には、背景差分領域d1(t1),d2(t1)が含まれており、フレーム間差分画像F(t1)には、フレーム間差分領域f1(t1),f2(t1)が含まれている。このため、重複確認画像C(t1)上には、背景差分領域d1(t1)とフレーム間差分領域f1(t1)との重複部分に相当する重複部分領域c1(t1)と、背景差分領域d2(t1)とフレーム間差分領域f2(t1)との重複部分に相当する重複部分領域c2(t1)とが、黒い領域として示されている。
図示のとおり、重複部分領域c1(t1)の人型は、背景差分領域d1(t1)の人型の手足の一部を欠いたものになっており、重複部分領域c2(t1)の人型は、背景差分領域d2(t1)の人型の手足の一部を欠いたものになっている。これは、フレーム間差分領域f1(t1)の二重人型やフレーム間差分領域f2(t1)の二重人型が、手足の一部を欠いたものになっているためである。
上述したとおり、ここで述べる実施例の場合、背景差分画像作成部130が作成する背景差分画像D(t)は、画素値「1」もしくは「0」をもった画素の集合体からなる二値画像であり、画素値「1」をもった画素の連続領域(図における黒い領域)として各背景差分領域di(t)が表現されている。また、フレーム間差分画像作成部140が作成するフレーム間差分画像F(t)も、画素値「1」もしくは「0」をもった画素の集合体からなる二値画像であり、画素値「1」をもった画素の連続領域(図における黒い領域)としてフレーム間差分領域fj(t)が表現されている。
したがって、重複有無判定部150は、背景差分画像D(t)とフレーム間差分画像F(t)とについて、対応する画素についての論理積演算を行うことにより、画素値「1」もしくは「0」をもった画素の集合体からなる二値画像である重複確認画像C(t)を作成することができる。この重複確認画像C(t)において、画素値「1」をもつ領域(図における黒い領域)が重複部分領域ci(t)ということになる。
同様に、図8には、図5の時刻t2に示す背景差分画像D(t2)と、図6の時刻t2に示すフレーム間差分画像F(t2)と、に基づいて、重複確認画像C(t2)が作成された状態が示されている。図示のとおり、背景差分画像D(t2)には、背景差分領域d1(t2),d2(t2)が含まれており、フレーム間差分画像F(t2)には、フレーム間差分領域f1(t2)が含まれている。このため、重複確認画像C(t2)上には、背景差分領域d1(t2)とフレーム間差分領域f1(t2)との重複部分に相当する重複部分領域c1(t2)が、黒い領域として示されている。
図示のとおり、重複部分領域c1(t2)の人型は、背景差分領域d1(t2)の人型の手足の一部を欠いたものになっているが、これは、フレーム間差分領域f1(t2)の二重人型が、手足の一部を欠いたものになっているためである。なお、背景差分領域d2(t2)については、重複するフレーム間差分領域が存在しないので、実際には、重複部分領域c2(t2)は形成されないことになるが、図8では、説明の便宜上、重複部分領域c2(t2)を仮想の領域として、その輪郭のみを描いてある。別言すれば、図示の重複部分領域c2(t2)は、その輪郭線部分を含めて実在しない領域であり、実際には、この部分には画素値「0」をもった画素が配置されている。
一方、図9には、図5の時刻t3に示す背景差分画像D(t3)と、図6の時刻t3に示すフレーム間差分画像F(t3)と、に基づいて、重複確認画像C(t3)が作成された状態が示されている。図示のとおり、背景差分画像D(t3)には、背景差分領域d1(t3),d2(t3)が含まれているが、フレーム間差分画像F(t3)には、フレーム間差分領域は全く含まれていない。このため、重複確認画像C(t3)は、重複部分領域を全く含まない空の画像(全領域が非重複部分)になる。ただ、図9では、説明の便宜上、重複部分領域c1(t3),c2(t3)を仮想の領域として、その輪郭のみを描いてある。すなわち、図9に示されている重複部分領域c1(t3),c2(t3)は、その輪郭線部分を含めて実在しない領域であり、実際には、この部分には画素値「0」をもった画素が配置されている。
最後に、図10には、図5の時刻t4に示す背景差分画像D(t4)と、図6の時刻t4に示すフレーム間差分画像F(t4)と、に基づいて、重複確認画像C(t4)が作成された状態が示されている。図示のとおり、背景差分画像D(t4)には、背景差分領域d1(t4),d2(t4)が含まれており、フレーム間差分画像F(t4)には、フレーム間差分領域f1(t4),f2(t4)が含まれている。このため、重複確認画像C(t4)上には、背景差分領域d1(t4)とフレーム間差分領域f1(t4)との重複部分に相当する重複部分領域c1(t4)が、黒い領域として示されている。
なお、図10でも、説明の便宜上、重複部分領域c1(t4),c2(t4)の輪郭を仮想の領域の輪郭として描いてある。すなわち、図10に示されている重複部分領域c1(t4)は、本来は、黒い領域のみによって構成される領域であり、白い部分はその輪郭線部分を含めて実在しない領域である。同様に、重複部分領域c2(t4)も、その輪郭線部分を含めて実在しない領域である。結局、この重複確認画像C(t4)では、黒く塗った腕の部分に相当する領域内の画素のみが画素値「1」をもち、他の画素はすべて画素値「0」をもっていることになる。
この図10に示す例の場合、2組のフレーム間差分領域f1(t4),f2(t4)は、2組の背景差分領域d1(t4),d2(t4)にそれぞれ対応するものではなく、両者間の対応関係は1対1の関係にはなっていない。別言すれば、2組のフレーム間差分領域f1(t4),f2(t4)は、いずれも大人Aの腕に対応する領域であり、いずれも背景差分領域d1(t4)に対応する領域ということになる。このように、背景差分画像D(t)上の背景差分領域di(t)とフレーム間差分画像F(t)上のフレーム間差分領域fj(t)とは、必ずしも1対1の対応関係にはならないが、重複確認画像C(t)を求める上では何ら支障は生じない。
<3−6.個体認識部160の動作>
個体認識部160は、前述したとおり、背景差分画像D(t)に含まれている個々の背景差分領域di(t)について、重複有無判定部150による判定結果に基づいて、当該背景差分領域di(t)を占める個体を静止個体もしくは動作個体と認識する処理を行う構成要素である。ここで述べる実施例の場合、重複有無判定部150は、図7〜図10に示すような重複確認画像C(t1)〜C(t4)を作成する機能を有している。したがって、個体認識部160は、これら重複確認画像C(t1)〜C(t4)を参照することにより重複部分の有無を確認することができ、各個体を静止個体もしくは動作個体と認識することができる。
図11は、これまで例示してきた具体的な原画像P(t0)〜P(t4)と、これらに対応して作成された具体的な重複確認画像C(t1)〜C(t4)との対応関係を示す図である。すなわち、図示の重複確認画像C(t1)〜C(t4)は、図7〜図10に示した重複確認画像C(t1)〜C(t4)と同じものである。
原画像P(t1)〜P(t4)上の各個体(大人Aおよび子供B)は、図5に示す背景差分画像D(t1)〜D(t4)を利用すれば、容易に認識することができる。たとえば、図5に示す例において、時刻t1の原画像P(t1)上には、2組の個体A1,B1が存在しているが、個体A1は、背景差分画像D(t1)上の第1の背景差分領域d1(t1)を占める個体として認識可能であり、個体B1は、背景差分画像D(t1)上の第2の背景差分領域d2(t1)を占める個体として認識可能である。
そこで、図11の左に示す原画像P(t1)〜P(t4)には、個々の個体を示す符号A1〜A4,B1〜B4の後ろに、括弧書きで、当該個体に対応する背景差分領域の符号を付記した。たとえば、時刻t1の原画像P(t1)の場合、個体A1は第1の背景差分領域d1(t1)を占める個体として認識可能であるため、符号「A1」の後ろに括弧書きで「d1(t1)」なる背景差分領域を示す符号を付記し、個体B1は第2の背景差分領域d2(t1)を占める個体として認識可能であるため、符号「B1」の後ろに括弧書きで「d2(t1)」なる背景差分領域を示す符号を付記した。
個体認識部160は、このように、背景差分画像D(t)上の各背景差分領域di(t)を利用することにより、原画像P(t)上で各個体を認識した上で、更に、重複確認画像C(t)を利用することにより、認識した個々の個体が静止個体か動作個体かを判別することができる。
具体的には、静止個体の認識を担う静止個体認識部161は、重複有無判定部150によって、フレーム間差分領域fj(t)に対する実質的な重複部分は無い、との判定結果が得られた背景差分領域di(t)を占める個体を、静止個体と認識すればよい。同様に、動作個体の認識を担う動作個体認識部162は、重複有無判定部150によって、少なくとも一部の領域についてフレーム間差分領域fj(t)に対する実質的な重複部分が有る、との判定結果が得られた背景差分領域di(t)を占める個体を、動作個体と認識すればよい。
別言すれば、個体認識部160は、背景差分画像D(t)に含まれている特定の背景差分領域di(t)について、重複確認画像C(t)上の対応領域を参照し、当該対応領域内に実質的な重複部分領域ci(t)が含まれていない場合には、当該特定の背景差分領域di(t)を占める個体を静止個体と認識し、当該対応領域内に実質的な重複部分領域ci(t)が含まれていた場合には、当該特定の背景差分領域を占める個体を動作個体と認識する処理を行えばよい。
なお、ここで「実質的な重複部分」や「実質的な重複部分領域」という文言を用いているのは、静止中の個体の一部が風などの影響でたなびいたり、画像にノイズが混入したりする要因によって、微細な重複部分が生じていても、そのような微細な重複部分については、本発明の処理上、重複部分としては取り扱わないためである。たとえば、わずか数画素からなる重複部分領域が存在していても、実用上、重複部分は無い、との判定を行うようにするのが好ましい。以下に述べる各実施例や変形例においても、重複部分の有無を判定する際には、実質的な重複部分の有無を判定するのが好ましい。
ここでは、図11に示す具体例に即して、個体認識部160による認識処理をより詳細に説明する。はじめに、時刻t1では、個体認識部160によって、次のような認識処理が行われる。まず、原画像P(t1)上において、背景差分領域d1(t1)を占める個体として大人A1が認識され、背景差分領域d2(t1)を占める個体として子供B1が認識される。
そこで、大人A1に関して、重複確認画像C(t1)上に、背景差分領域d1(t1)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t1)上において、背景差分領域d1(t1)の対応領域と重複部分領域c1(t1)とは完全には一致しないが(重複部分領域c1(t1)の手足の一部に欠けがあるため)、当該対応領域内の一部分として、重複部分領域c1(t1)が含まれている。別言すれば、当該対応領域の少なくとも一部分に、黒く塗られた重複部分が存在することになる。そこで、個体認識部160は、大人A1を動作個体と認識する。
続いて、子供B1に関して、重複確認画像C(t1)上に、背景差分領域d2(t1)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t1)上において、背景差分領域d2(t1)の対応領域と重複部分領域c2(t1)とは完全には一致しないが(重複部分領域c2(t1)の手足の一部に欠けがあるため)、当該対応領域内の一部分として、重複部分領域c2(t1)が含まれている。別言すれば、当該対応領域の少なくとも一部分に、黒く塗られた重複部分が存在することになる。そこで、個体認識部160は、子供B1を動作個体と認識する。
こうして、時刻t1の時点において、原画像P(t1)に含まれている2組の個体A1,B1は、いずれも動作個体と認識されることになる。検出個体表示部170は、このような認識結果に基づいて、図4の時刻t1の欄に示すような個体検出画像Q(t1)−SMを表示することができる。
また、時刻t2では、個体認識部160によって、次のような認識処理が行われる。まず、原画像P(t2)上において、背景差分領域d1(t2)を占める個体として大人A2が認識され、背景差分領域d2(t2)を占める個体として子供B2が認識される。
そこで、大人A2に関して、重複確認画像C(t2)上に、背景差分領域d1(t2)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t2)上において、背景差分領域d1(t2)の対応領域と重複部分領域c1(t2)とは完全には一致しないが(重複部分領域c1(t2)の手足の一部に欠けがあるため)、当該対応領域内の一部分として、重複部分領域c1(t2)が含まれている。別言すれば、当該対応領域の少なくとも一部分に、黒く塗られた重複部分が存在することになる。そこで、個体認識部160は、大人A2を動作個体と認識する。
続いて、子供B2に関して、重複確認画像C(t2)上に、背景差分領域d2(t2)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t2)上において、背景差分領域d2(t2)の対応領域には、黒く塗られた重複部分は全く存在しない。前述したとおり、図には便宜上、重複部分領域c2(t2)の輪郭線が描かれているが、実際には、この重複部分領域c2(t2)は存在しない領域である。したがって、背景差分領域d2(t2)の対応領域内には、重複部分領域は全く含まれていないことになる。そこで、個体認識部160は、子供B2を静止個体と認識する。
こうして、時刻t2の時点において、原画像P(t2)に含まれている2組の個体A2,B2のうち、大人A2は動作個体と認識され、子供B2は静止個体と認識されることになる。検出個体表示部170は、このような認識結果に基づいて、図4の時刻t2の欄に示すような個体検出画像Q(t2)−SMを表示することができる。
続く、時刻t3では、個体認識部160によって、次のような認識処理が行われる。まず、原画像P(t3)上において、背景差分領域d1(t3)を占める個体として大人A3が認識され、背景差分領域d2(t3)を占める個体として子供B3が認識される。
そこで、大人A3に関して、重複確認画像C(t3)上に、背景差分領域d1(t3)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t3)上において、背景差分領域d1(t3)の対応領域には、黒く塗られた重複部分は全く存在しない。前述したとおり、図には便宜上、重複部分領域c1(t3),c2(t3)の輪郭線が描かれているが、実際には、これら重複部分領域c1(t3),c2(t3)は存在しない領域であり、重複確認画像C(t3)は、実質的に全画素が画素値「0」をもった空画像である。したがって、背景差分領域d1(t3)の対応領域内には、重複部分領域は全く含まれていないことになる。そこで、個体認識部160は、大人A3を静止個体と認識する。
全く同様の理由により、個体認識部160は、子供B3を静止個体と認識する。こうして、時刻t3の時点において、原画像P(t3)に含まれている2組の個体A3,B3はいずれも静止個体と認識されることになる。検出個体表示部170は、このような認識結果に基づいて、図4の時刻t3の欄に示すような個体検出画像Q(t3)−SMを表示することができる。
最後に、時刻t4では、個体認識部160によって、次のような認識処理が行われる。まず、原画像P(t4)上において、背景差分領域d1(t4)を占める個体として大人A4が認識され、背景差分領域d2(t4)を占める個体として子供B4が認識される。
そこで、大人A4に関して、重複確認画像C(t4)上に、背景差分領域d1(t4)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t4)上において、背景差分領域d1(t4)の対応領域と重複部分領域c1(t4)とは完全には一致しないが(重複部分領域c1(t4)は、実際には、黒く塗られた腕の部分だけである)、当該対応領域内の一部分として、重複部分領域c1(t4)が含まれている。別言すれば、当該対応領域の少なくとも一部分に、黒く塗られた重複部分が存在することになる。そこで、個体認識部160は、大人A4を動作個体と認識する。
続いて、子供B4に関して、重複確認画像C(t4)上に、背景差分領域d2(t4)と同一位置を占め同一形状をもった対応領域を定義し、当該対応領域内にいずれかの重複部分領域が一部でも含まれているか否かを調べる。図11に示す例の場合、重複確認画像C(t4)上において、背景差分領域d2(t4)の対応領域には、黒く塗られた重複部分は全く存在しない。前述したとおり、図には便宜上、重複部分領域c2(t4)の輪郭線が描かれているが、実際には、この重複部分領域c2(t4)は存在しない領域である。したがって、背景差分領域d2(t4)の対応領域内には、重複部分領域は全く含まれていないことになる。そこで、個体認識部160は、子供B4を静止個体と認識する。
こうして、時刻t4の時点において、原画像P(t4)に含まれている2組の個体A4,B4のうち、大人A4は動作個体と認識され、子供B4は静止個体と認識されることになる。検出個体表示部170は、このような認識結果に基づいて、図4の時刻t4の欄に示すような個体検出画像Q(t4)−SMを表示することができる。
このように、重複有無判定部150によって、背景差分領域di(t)とフレーム間差分領域fj(t)との重複部分を示す重複部分領域を含む重複確認画像C(t)を作成すれば、個体認識部160は、個々の個体に対応する背景差分領域について、重複確認画像C(t)上の対応領域に重複部分があるか否かに基づいて、個々の個体が静止個体か動作個体かを判断することができる。
もっとも、実用上は、重複部分の有無を判定するために、何らかの基準を設けておくようにするのが好ましい。たとえば、図11の右下に示す重複確認画像C(t4)の場合、黒く塗って示されている重複部分領域c1(t4)は、大人A4の片腕に相当する部分である。個体認識部160は、大人A4を示す背景差分領域d1(t4)の対応領域内に、当該重複部分領域c1(t4)が含まれているため、大人A4を動作個体と認識することになる。
上例のように、個体が手を上げる動作を行っている場合は、当該個体を動作個体とする判断は妥当なものになろう。しかしながら、たとえば、髪や服が風になびいたために、フレーム間差分画像F(t)にフレーム間差分領域が生じることになり、その結果、重複確認画像C(t)に微小な重複部分領域が生じた場合はどうであろう。このような場合、微小な重複部分の存在により、当該個体を動作個体と認識してしまうことは、必ずしも妥当とは言えない。
したがって、実用上、個体認識部160は、特定の個体について、その背景差分領域の対応領域内に重複部分が含まれているか否かを判断する際に、当該対応領域内に含まれている重複部分領域の面積が所定の基準に満たない場合には、当該対応領域内に重複部分領域が含まれていないと判断する処理を行うようにするのが好ましい。そうすれば、図11の右下に示す重複確認画像C(t4)のように、ある程度の面積をもった重複部分(腕に相当する重複部分領域c1(t4))が対応領域内に含まれている場合には、大人A4は動作個体として認識されることになるが、髪がたなびく程度の微細な面積をもった重複部分が対応領域内に含まれていた場合には、重複部分領域は含まれていない、との判断がなされ、大人A4は静止個体として認識されることになる。
実際には、前述したとおり、重複確認画像C(t)における重複部分領域は、画素値「1」をもった画素の集合体になる。そこで、個体認識部160は、背景差分画像D(t)に含まれている特定の背景差分領域について、重複確認画像C(t)上の対応領域を参照し、当該対応領域内の画素のうち、画素値「1」をもった画素の総数が所定の基準に満たない場合には、当該特定の背景差分領域を占める個体を静止個体と認識し、当該対応領域内の画素のうち、画素値「1」をもった画素の総数が所定の基準以上である場合には、当該特定の背景差分領域を占める個体を動作個体と認識する処理を行うようにすればよい。
判断基準となる画素の総数は、個々の個体を静止個体として検出するか、動作個体として検出するかを決定する検出感度のパラメータということになる。当該パラメータの値は、装置の設置場所や用途に応じて、適宜、適切な値に設定するようにすればよい。
<3−7.検出個体表示部170の動作>
ここに示す実施例の場合、検出個体表示部170は、静止個体指標sおよび動作個体指標mを原画像P(t)に重畳させることにより個体検出画像Q(t)を作成し、この個体検出画像Q(t)をディスプレイ画面上に表示する役割を果たす。別言すれば、個体認識部160によって静止個体もしくは動作個体と認識された個体に、静止個体もしくは動作個体であることを示す個体指標を付して表示する処理を実行することになる。たとえば、図4に示す実施例の場合、静止個体指標sは微細矩形ドットパターンによるハッチング領域として示され、動作個体指標mは斜線網目パターンによるハッチング領域として示されている。
このように、静止個体と動作個体の双方の検出結果を同じディスプレイ画面上に表示する場合は、静止個体指標sと動作個体指標mとを、それぞれ視覚的に区別可能な態様で表示すればよい。図4に示す例のように、微細矩形ドットパターンによるハッチングからなる静止個体指標sや斜線網目パターンによるハッチングからなる動作個体指標mは、下地が部分的に透けて見える指標であるため、原画像P(t)の上に重ねて表示した場合でも、その下に位置する個体の内容を視覚的に確認することが可能である。
もちろん、原画像P(t)上の各個体を視覚的に確認する必要がない場合には、不透明な指標を用いてもかまわない。たとえば、静止個体指標sとして、ベタ塗りの青色閉領域からなる図形を用い、動作個体指標mとして、ベタ塗りの赤色閉領域からなる図形を用いるようにしてもかまわない。この場合、静止個体指標sや動作個体指標mは、輪郭は個々の個体の輪郭と一致した人型の図形になるが、不透明のベタ塗りの閉領域から構成されるため、その下に位置する個体の内容(たとえば、人の顔や服装)を視覚的に確認することはできない。
要するに、検出個体表示部170は、各個体指標を、対象となる個体が占有する領域の近傍に配置され、内部が所定色によって塗られるかもしくは内部に所定パターンが形成された閉領域指標によって構成し、原画像に当該閉領域指標を重畳させることにより個体検出画像Q(t)を作成すればよい。
図4に示す例のように、静止個体指標sと動作個体指標mとを同一画面上で同時に表示するのであれば、静止個体指標sを、対象となる個体が占有する領域の近傍に配置され、内部が所定色によって塗られるかもしくは内部に所定パターンが形成された第1の閉領域指標によって構成し、動作個体指標mを、対象となる個体が占有する領域の近傍に配置され、内部が所定色によって塗られるかもしくは内部に所定パターンが形成された第2の閉領域指標によって構成すればよい。
このとき、第1の閉領域指標と第2の閉領域指標とは、互いに異なる色によって塗られるかもしくは互いに異なるパターンが形成された閉領域となるようにし、原画像P(t)に第1の閉領域指標および第2の閉領域指標を重畳させることにより個体検出画像Q(t)−SMを作成すればよい。上述したように、第1の閉領域指標および第2の閉領域指標としては、不透明なベタ塗りの着色閉領域を用いてもよいし、不透明なベタ塗りのパターンが埋め込まれた閉領域を用いてもよい。この場合、その下に位置する個体の内容(たとえば、人の顔や服装)を視覚的に確認することはできない。
ただ、実用上は、原画像P(t)上に位置する個体の内容(たとえば、人の顔や服装)を視覚的に確認できるようにした方が好ましい。その場合は、第1の閉領域指標および第2の閉領域指標を、半透明の色で塗られるかもしくは部分的に隙間のあるパターンが形成された閉領域によって構成し、原画像P(t)に各閉領域指標を重畳させた場合に、原画像P(t)が各閉領域指標を通して透けて表示されるようにすればよい。そうすれば、ディスプレイ画面上で、個々の個体の内容を視覚的に確認しつつ、個々の個体が静止個体か動作個体かを直観的に把握することができる。
図4に示す個体検出画像Q(t)−SMは、静止個体指標sおよび動作個体指標mを、部分的に隙間のあるパターン(微細矩形ドットによるハッチングパターンおよび斜線網目によるハッチングパターン)が形成された閉領域指標によって構成した例である。静止個体指標sおよび動作個体指標mを、半透明の色で塗られた閉領域指標によって構成する場合は、たとえば、静止個体指標sを半透明な青色着色領域とし、動作個体指標mを半透明な赤色着色領域とすることができる。この場合、静止個体は、あたかも青色セロファンで覆われたように表示され、動作個体は、あたかも赤色セロファンで覆われたように表示されることになる。
もっとも、静止個体指標sや動作個体指標mは、ディスプレイ画面上を観察している監視員に対して、個々の個体の位置を知らしめるとともに、当該個体が静止個体か動作個体かを知らしめる役割を果たすことができればよいので、この他にも様々な形態の指標を用いることが可能である。以下、静止個体指標sや動作個体指標mとして、これまで説明してきた指標とは異なる形態を使用した変形例を、図12〜図16に例示しておく。
図12は、図4に示す個体検出画像Q(t)−SMの第1の変形例を示す図である。図の左に示す原画像P(t)は、これまで述べてきたものと全く同じであるが、図の右に示す個体検出画像Q(t)−SMは、対象となる個体を囲む矩形の枠状指標によって静止個体指標sおよび動作個体指標mを構成し、これを原画像P(t)に重畳させたものになっている。
具体的には、静止個体指標s1(t2),s1(t3),s2(t3),s1(t4)は、いずれも対象となる静止個体B2,A3,B3,B4を囲む第1の枠状指標(図では破線の枠として示されている)によって構成されており、動作個体指標m1(t1),m2(t1),m1(t2),m1(t4)は、いずれも対象となる動作個体A1,B1,A2,A4を囲む第2の枠状指標(図では実線の枠として示されている)によって構成されている。
結局、図示されている第1の変形例に係る個体検出画像Q(t)−SMは、原画像P(t)の上に、2組の矩形枠を付加したものであり、個々の矩形枠が個々の個体(大人Aおよび子供B)を示すことになる。個々の矩形枠は、個々の個体の移動とともに移動してゆくので、監視員は、ディスプレイ画面上に表示された個体検出画像Q(t)−SMを見ることにより、個々の個体を直観的に把握することができる。しかも、静止個体指標sを構成する矩形枠は破線で示され、動作個体指標mを構成する矩形枠は実線で示されるため、各矩形枠で囲まれた個々の個体について、それが静止個体であるか動作個体であるかを視覚的に認識することができる。
図12に示す第1の変形例は、各個体指標を矩形枠、特に、対象となる個体の外接矩形枠によって構成した例である。個々の個体の外接矩形枠は、図5の右に示す背景差分画像D(t)に含まれる背景差分領域di(t)の外接矩形枠として作成することができる。
ただ、枠状指標は、必ずしも矩形枠にする必要はない。図13は、図4に示す個体検出画像Q(t)−SMの第2の変形例を示す図である。図の左に示す原画像P(t)は、これまで述べてきたものと全く同じであるが、図の右に示す個体検出画像Q(t)−SMは、対象となる個体を囲む楕円形の枠状指標によって静止個体指標sおよび動作個体指標mを構成し、これを原画像P(t)に重畳させたものになっている。各枠状指標は楕円形の枠であるため、必ずしも対象となる個体に接しているわけではないが、静止個体指標sを構成する楕円枠は破線で示され、動作個体指標mを構成する楕円枠は実線で示されており、やはり、各楕円枠で囲まれた個々の個体について、それが静止個体であるか動作個体であるかを視覚的に認識することができる。
なお、静止個体指標sを構成する第1の枠状指標と動作個体指標mを構成する第2の枠状指標とは、図12および図13に示す例の場合、破線と実線とによって相互に区別できるようにしているが、視覚的に区別可能な態様であれば、別な方法で区別してもかまわない。たとえば、同じく線種によって区別する方法を採用する場合であっても、破線と一点鎖線とによって区別させることも可能である。また、青い枠と赤い枠というように色によって区別させてもよいし、太線と細線というように太さによって区別させてもよい。あるいは、静止個体指標sは矩形枠とし、動作個体指標mは楕円枠とする、というように、相互に形状を変えることにより区別させてもよい。
要するに、静止個体指標sとして第1の枠状指標を用い、動作個体指標mとして第2の枠状指標を用いる場合、第1の枠状指標と第2の枠状指標とは、線種、色、形状、太さのうちの少なくとも1つが互いに異なる枠線によって構成されるようにすればよい。図12および図13に示す例は、このような2種類の枠状指標を原画像P(t)に重畳することにより個体検出画像Q(t)−SMを作成した例である。なお、枠状指標は、必ずしも対象となる個体全体をそっくり囲う図形である必要はなく、たとえば、対象となる個体の一部分(たとえば、上半身の部分)のみを囲う図形であってもかまわない。また、図示の例のように、隣接する枠状指標が部分的に重なって表示されてもかまわない。
一方、図14は、図4に示す個体検出画像Q(t)−SMの第3の変形例を示す図である。図の左に示す原画像P(t)は、これまで述べてきたものと全く同じであるが、図の右に示す個体検出画像Q(t)−SMは、対象となる個体の輪郭線を示す輪郭指標によって静止個体指標sおよび動作個体指標mを構成し、これを原画像P(t)に重畳させたものになっている。
具体的には、静止個体指標s1(t2),s1(t3),s2(t3),s1(t4)は、いずれも対象となる静止個体B2,A3,B3,B4の輪郭線を示す輪郭指標(図では破線の輪郭線として示されている)によって構成されており、動作個体指標m1(t1),m2(t1),m1(t2),m1(t4)は、いずれも対象となる動作個体A1,B1,A2,A4の輪郭線を示す輪郭指標(図では実線の輪郭線として示されている)によって構成されている。
結局、図14に示されている第3の変形例に係る個体検出画像Q(t)−SMは、原画像P(t)上に現れている2組の個体のそれぞれに輪郭線を付加したものであり、個々の輪郭線が個々の個体(大人Aおよび子供B)を示すことになる。個々の輪郭線は、個々の個体の移動とともに移動してゆくので、監視員は、ディスプレイ画面上に表示された個体検出画像Q(t)−SMを見ることにより、個々の個体を直観的に把握することができる。しかも、静止個体指標sを構成する輪郭線は破線で示され、動作個体指標mを構成する輪郭線は実線で示されるため、各輪郭線で囲まれた個々の個体について、それが静止個体であるか動作個体であるかを視覚的に認識することができる。
なお、図14に示す例の場合、静止個体指標sを構成する第1の輪郭指標と動作個体指標mを構成する第2の輪郭指標とは、破線と実線とによって相互に区別できるようにしているが、視覚的に区別可能な態様であれば、別な方法で区別してもかまわない。各輪郭指標は、図5の右に示す背景差分画像D(t)に含まれる背景差分領域di(t)の輪郭線を抽出することによって作成することができ、その形状は、対象となる個体の輪郭形状によって定まる。したがって、上述した枠状指標のように、形を変えることによって、静止個体指標sを構成する第1の輪郭指標と動作個体指標mを構成する第2の輪郭指標とを区別することはできないが、輪郭線の線種、色、太さを変えることによって、両者を区別することは可能である。
結局、検出個体表示部170は、静止個体指標sを、対象となる静止個体の輪郭線を示す第1の輪郭指標によって構成し、動作個体指標mを、対象となる動作個体の輪郭線を示す第2の輪郭指標によって構成し、第1の輪郭指標と第2の輪郭指標とは、線種、色、太さのうちの少なくとも1つが互いに異なる輪郭線によって構成されるようにし、原画像P(t)に第1の輪郭指標および第2の輪郭指標を重畳させることにより個体検出画像Q(t)−SMを作成すればよい。
図15は、図2に示す個体検出画像Q(t)−Sの変形例を示す図である。図の左に示す原画像P(t)は、これまで述べてきたものと全く同じであるが、図の右に示す個体検出画像Q(t)−Sは、検出対象となる静止個体を、開口窓を有するマスク画像を用いて示す画像になっている。一方、図16は、図3に示す個体検出画像Q(t)−Mの変形例を示す図である。図の左に示す原画像P(t)は、これまで述べてきたものと全く同じであるが、図の右に示す個体検出画像Q(t)−Mは、検出対象となる動作個体を、開口窓を有するマスク画像を用いて示す画像になっている。
この図15,図16に示す変形例の場合、検出個体表示部170は、検出対象となる個体部分に開口窓が配置され、当該開口窓以外の部分が被覆されたマスク画像によって静止個体指標sまたは動作個体指標mを構成したものであり、原画像P(t)にこのマスク画像を重畳させることにより個体検出画像Q(t)−SもしくはQ(t)−Mを作成することになる。
たとえば、図15は、静止個体の検出結果のみを示す個体検出画像Q(t)−Sの例である。時刻t1の欄に示された個体検出画像Q(t1)−Sは、全面がマスク画像(図では、網目状パターンで示すが、実際には、たとえば、グレーの領域として表示すればよい)で覆われた状態になっている。この場合、全面を覆うマスク画像が静止個体指標sということになる。原画像P(t1)は、この静止個体指標sを構成するマスク画像によって全面被覆状態となっているため、ディスプレイ画面は、全体がグレーで表示された状態になる。これは、現時点では、静止個体は全く検出されていないことを示している。
一方、時刻t2の欄に示された個体検出画像Q(t2)−Sは、静止個体である子供B2の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる静止個体指標sを、原画像P(t2)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t2)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に静止個体である子供B2のみが配置されているように見える。
また、時刻t3の欄に示された個体検出画像Q(t3)−Sは、静止個体である大人A3および子供B3の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる静止個体指標sを、原画像P(t3)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t3)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に静止個体である大人A3と子供B3が配置されているように見える。
そして、時刻t4の欄に示された個体検出画像Q(t4)−Sは、静止個体である子供B4の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる静止個体指標sを、原画像P(t4)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t4)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に静止個体である子供B4のみが配置されているように見える。
このように、図15に示した個体検出画像Q(t)−Sでは、グレーの背景に静止個体のみが表示されることになるので、静止個体のみを明瞭に把握したい用途には最適である。
これに対して、図16は、動作個体の検出結果のみを示す個体検出画像Q(t)−Mの例である。時刻t1の欄に示された個体検出画像Q(t1)−Mは、動作個体である大人A1および子供B1の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる動作個体指標mを、原画像P(t1)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t1)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に動作個体である大人A1と子供B1が配置されているように見える。
一方、時刻t2の欄に示された個体検出画像Q(t2)−Mは、動作個体である大人A2の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる動作個体指標mを、原画像P(t2)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t2)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に動作個体である大人A2のみが配置されているように見える。
また、時刻t3の欄に示された個体検出画像Q(t3)−Mは、全面がマスク画像で覆われた状態になっている。この場合、全面を覆うマスク画像が動作体指標mということになる。原画像P(t3)は、この動作個体指標mを構成するマスク画像によって全面被覆状態となっているため、ディスプレイ画面は、全体がグレーで表示された状態になる。これは、現時点では、動作個体は全く検出されていないことを示している。
そして、時刻t4の欄に示された個体検出画像Q(t4)−Mは、動作個体である大人A4の領域に開口窓が配置され、それ以外の領域が被覆されたマスク画像からなる動作個体指標mを、原画像P(t4)の上に重畳させることによって得られた画像である。開口窓が形成された領域のみ、下地の原画像P(t4)が観察できるので、ディスプレイ画面を観察した場合、グレーの背景に動作個体である大人A4のみが配置されているように見える。
このように、図16に示した個体検出画像Q(t)−Mでは、グレーの背景に動作個体のみが表示されることになるので、動作個体のみを明瞭に把握したい用途には最適である。
なお、図15に示す静止個体指標sを構成するマスク画像や、図16に示す動作個体指標mを構成するマスク画像は、図5の右に示す背景差分画像D(t)に含まれる所定の背景差分領域di(t)の輪郭線を用いて開口窓を形成することによって作成することができる。
図1のブロック図に示されているとおり、この実施例における検出個体表示部170には、原画像入力部110によって入力された原画像P(t)が与えられている。したがって、検出個体表示部170は、ディスプレイ画面上に原画像P(t)をそのまま表示することが可能である。また、個体認識部160には、静止個体認識部161と動作個体認識部162の双方が備わっているため、検出個体表示部170は、図2に例示するように、原画像P(t)に静止個体指標sを重畳させることにより個体検出画像Q(t)−Sを作成し、これをディスプレイ画面上に表示することが可能であり、また、図3に例示するように、原画像P(t)に動作個体指標mを重畳させることにより個体検出画像Q(t)−Mを作成し、これをディスプレイ画面上に表示することも可能である。更に、静止個体指標sと動作個体指標mの双方を用いて、図4に例示するような個体検出画像Q(t)−SMを作成し、これをディスプレイ画面上に表示することも可能である。
そこで、実用上は、上述した4通りの表示態様をそれぞれ別個の表示モードに設定しておき、ユーザ(たとえば、監視員)の要求に応じて、表示モードを適宜切り替えることができるようにしておくのが好ましい。図17は、検出個体表示部170による4通りの表示モードを示す図である。この図17では、説明の便宜上、静止個体指標sおよび動作個体指標mとして図12に示した矩形枠からなる個体指標を用い、時刻t2において得られる画像を例示してある。
この図17に示す実施例の場合、検出個体表示部170は、原画像表示モード、全個体表示モード、静止個体表示モード、動作個体表示モード、という4通りの表示モードによる表示機能を有しており、ユーザからの指示を受けて、任意の表示モードに切り替えて表示を行うことができる。
原画像表示モードは、図17(a) に示すように、ディスプレイ画面上に原画像P(t)のみを表示するモードであり、定点カメラによる撮影画像をそのまま表示するモードである。図示の例では、大人A2および子供B2を個体として含む原画像P(t2)が表示されている。もちろん、大人A2および子供B2は、背景画像の中に溶け込んだ状態で表示されており、監視員は、脳内において、これらを個々の個体として認識することになるが、視覚的な情報として、大人A2および子供B2が個々の個体として提示されているわけではなく、もちろん、静止個体か動作個体かといった情報の提示もなされていない。
一方、全個体表示モードは、図17(b) に示すように、ディスプレイ画面上に静止個体指標sと動作個体指標mと原画像P(t)とを重畳させた個体検出画像Q(t)−SMを表示するモードである。図示の例では、大人A2および子供B2を個体として含む原画像P(t2)が表示されるとともに、実線の矩形枠からなる動作個体指標m1(t2)と破線の矩形枠からなる静止個体指標s1(t2)とが表示されている。監視員は、視覚的に、大人A2を動作個体として認識し、子供B2を静止個体として認識することができる。
また、静止個体表示モードは、図17(c) に示すように、ディスプレイ画面上に静止個体指標sと原画像P(t)とを重畳させた個体検出画像Q(t)−Sを表示するモードであり、動作個体表示モードは、図17(d) に示すように、ディスプレイ画面上に動作個体指標mと原画像P(t)とを重畳させた個体検出画像Q(t)−Mを表示するモードである。前者のモードでは、監視員は、視覚的に、子供B2を静止個体として認識することができ、後者のモードでは、監視員は、視覚的に、大人A2を動作個体として認識することができる。静止個体のみを直観的に認識したい場合は、前者の静止個体表示モードに切り替えるのが好ましく、動作個体のみを直観的に認識したい場合は、後者の動作個体表示モードに切り替えるのが好ましい。
このように、図17に示すようなモード切替機能を設けておけば、ユーザは、監視用途に応じて、最適な表示形態を選択して利用することができるので、利便性を向上させることができる。
<<< §4. 画像演算処理の具体的な方法 >>>
図1に示す個体の検出装置100では、背景差分画像作成部130によって背景差分画像D(t)が作成され、フレーム間差分画像作成部140によってフレーム間差分画像F(t)が作成され、重複有無判定部150によって重複確認画像C(t)が作成される。これら各構成要素によって各画像を作成する処理は、実際には、コンピュータによる画像演算処理によって実行される。ここでは、この画像演算処理の具体的な方法を説明する。
図18は、2枚のカラー画像U,Vについて、二値化差分画像Wを作成し、その差分領域についてラベリング情報を作成する処理の一般的な手順を示す図である。ここでは、図示のような2枚のカラー画像U,Vが与えられた場合を考える。いずれのカラー画像も、3原色R,G,Bの画素値をもった多数の画素の配列から構成されている。
ここに示す手順では、まず、これらカラー画像U,Vをそれぞれモノクロ化して、輝度画像U′,V′に変換する。具体的には、図示のとおり、カラー画像U上の任意の位置に配置された着目画素の画素値を(Ru,Gu,Bu)として、輝度画像U′上の同位置の画素の画素値(輝度値)Yuを、「Yu=0.299Ru+0.587Gu+0.114Bu」なる式で求める。同様に、カラー画像V上の任意の位置に配置された着目画素の画素値を(Rv,Gv,Bv)として、輝度画像V′上の同位置の画素の画素値(輝度値)Yvを、「Yv=0.299Rv+0.587Gv+0.114Bv」なる式で求める。
こうして、輝度値Yuをもった画素の集合からなる輝度画像U′と、輝度値Yvをもった画素の集合からなる輝度画像V′とが求められたら、これら輝度画像U′,V′の同位置にある画素の輝度値の差をとることにより、差分画像W′を作成する。すなわち、差分画像W′を構成する任意の画素の画素値(差分値)ΔYは、輝度画像U′上の同位置にある画素の輝度値Yuと、輝度画像V′上の同位置にある画素の輝度値Yvとの差の絶対値として求められる。別言すれば、ΔYは、「ΔY=|Yu−Yv|」なる式で求まることになる。
続いて、この差分画像W′を二値化することにより、二値化差分画像Wを作成する。具体的には、予め所定の閾値を設定しておき、ΔYが閾値以上となる画素については画素値「1」を与え、ΔYが閾値未満となる画素については画素値「0」を与える処理を行えばよい。こうして得られた二値化差分画像Wは、画素値「1」もしくは「0」をもつ画素の集合体になり、画素値「1」をもった画素の連続領域は、元のカラー画像U,Vを比べた場合に、画素値の差が所定の基準以上の領域、すなわち、有意な差が認められた差分領域ということになる。
図18の左下に示す図は、こうして得られた二値化差分画像Wの画素構成の一例を示す図である。この図において、ハッチングを施した画素は画素値「1」をもった画素であり、残りの白い画素は画素値「0」をもった画素である。図に太線で囲って示すように、画素値「1」をもった画素の連続領域によって2組の差分領域w1,w2が形成されている。これらの差分領域w1,w2は、図5の背景差分画像D(t)に黒い領域として示されている背景差分領域di(t)や、図6のフレーム間差分画像F(t)に黒い領域として示されているフレーム間差分領域fj(t)に相当する。
もっとも、図示されている差分領域w1,w2は、人間が観察した場合、それぞれが画素値「1」をもった一群の画素の集合体領域として把握することができるが、コンピュータが取り扱うデータとしては、まだ、差分領域w1,w2という概念はない。そこで、コンピュータ上、これら差分領域w1,w2を取り扱うためには、ラベリング処理を実行して図18の右下に示すようなラベリング情報Lを作成する必要がある。このラベリング情報Lは、差分画像上の個々の差分領域ごとに所定の差分領域符号を付与した上で、個々の差分領域符号と、対応する差分領域に含まれる画素を特定する画素特定情報と、の関係を示す情報ということになる。
図示の例の場合、ラベリング情報Lは表の形式で作成されており、差分領域符号の欄には、2組の符号w1,w2が収容されている。これらの符号は、図18の左下に示す差分画像に太線で囲って示した2組の差分領域w1,w2に付与された符号である。一方、画素特定情報の欄には、差分領域を構成する個々の画素を特定する情報として、個々の画素の座標値が収容されている。たとえば、差分領域符号w1に対応する画素特定情報の欄に収容されている座標値(1,3),(2,2),(2,3),(3,1),(3,2),(3,3),(4,2),(4,3),(4,4),(4,5)は、図18の左下に示す差分領域w1を構成する10個の画素の座標値である。
このように、ラベリング情報Lは、特定の画素に特定の差分領域符号をラベルづけした情報であり、このラベリング情報Lによって、差分画像上に形成されている個々の差分領域を特定することができる。このようなラベリング情報Lは、差分画像上において画素値「1」をもった1つの画素に着目し、当該着目画素について、同じく画素値「1」をもった隣接画素を特定し、更に、当該隣接画素を着目画素として同様の処理を繰り返し実行する、という手法により作成することができる。このようなラベリング情報Lの作成処理アルゴリズムは、公知の技術であるため、ここでは詳しい説明は省略する。
以上、図18に示す一般的なカラー画像U,Vについて、二値化差分画像Wを作成し、これについてラベリング情報Lを作成する基本手法を述べた。図1の装置における背景差分画像作成部130およびフレーム間差分画像作成部140は、このような基本手法に基づいて、背景差分画像D(t)やフレーム間差分画像F(t)を作成することができ、更に、上述したラベリング処理を行うことにより、背景差分領域のラベリング情報L(D(t))や、フレーム間差分領域のラベリング情報L(F(t))を作成することができる。
結局、図1に示す個体の検出装置100で行う画像処理に、図18に示す手順を導入する場合、各構成要素において次のような処理を行うようにすればよい。まず、原画像入力部110は、三原色RGBの各画素値をもった画素の集合体からなるカラー画像を原画像P(t)として入力し、これを輝度Yを示す画素値をもった画素の集合体からなる輝度画像に変換する処理を行う。すなわち、定点カメラから得られる原画像P(t)がカラー画像である場合には、原画像入力部110において、これをモノクロ化して輝度画像とし、背景差分画像作成部130およびフレーム間差分画像作成部140には、この輝度画像を原画像P(t)として与えるようにする。この場合、背景画像格納部120には、輝度Yを示す画素値をもった画素の集合体からなる、モノクロ化された背景画像BGを格納しておくようにする。
そして、背景差分画像作成部130は、原画像入力部110から与えられるモノクロ化された原画像P(t)(輝度画像)と、背景画像格納部120に格納されているモノクロ化された背景画像BGとについて、それぞれ対応する画素の画素値(輝度値Y)の差の絶対値ΔYを求める処理を行うようにする。こうして求められたΔYを画素値としてもつ画素の集合体は、図18に示す差分画像W′に相当する差分画像になる。そこで、背景差分画像作成部130は、この差分画像を一時的に格納した上で、所定の閾値を用いて二値化することにより二値化差分画像(図18に示す二値化差分画像Wに相当する画像)を作成し、当該二値化差分画像を背景差分画像D(t)として出力する。
より具体的に説明すれば、背景差分画像作成部130は、輝度値の差の絶対値ΔYが閾値以上となる画素については画素値「1」を与え、輝度値の差の絶対値ΔYが閾値未満となる画素については画素値「0」を与えることにより、背景差分画像D(t)を作成することになる。ここで、画素値「1」をもった画素の連続領域は、背景差分領域di(t)になる。そこで、背景差分画像作成部130は、個々の背景差分領域di(t)ごとに背景差分領域符号を付与し、個々の背景差分領域符号に対応する背景差分領域に含まれる画素を特定する画素特定情報を示す背景差分領域のラベリング情報L(D(t))を作成する。
一方、フレーム間差分画像作成部140は、原画像入力部110から時間差をもって与えられる2枚のモノクロ化された原画像P(t)(2枚のフレーム単位の輝度画像)について、それぞれ対応する画素の画素値(輝度値Y)の差の絶対値ΔYを求める処理を行うようにする。こうして求められたΔYを画素値としてもつ画素の集合体は、図18に示す差分画像W′に相当する差分画像になる。そこで、フレーム間差分画像作成部140は、この差分画像を一時的に格納した上で、所定の閾値を用いて二値化することにより二値化差分画像(図18に示す二値化差分画像Wに相当する画像)を作成し、当該二値化差分画像をフレーム間差分画像F(t)として出力する。
より具体的に説明すれば、フレーム間差分画像作成部140は、輝度値の差の絶対値ΔYが閾値以上となる画素については画素値「1」を与え、輝度値の差の絶対値ΔYが閾値未満となる画素については画素値「0」を与えることにより、フレーム間差分画像F(t)を作成することになる。ここで、画素値「1」をもった画素の連続領域は、フレーム間差分領域fj(t)になる。そこで、フレーム間差分画像作成部140は、個々のフレーム間差分領域fj(t)ごとにフレーム間差分領域符号を付与し、個々のフレーム間差分領域符号に対応するフレーム間差分領域に含まれる画素を特定する画素特定情報を示すフレーム間差分領域のラベリング情報L(F(t))を作成する。
重複有無判定部150は、こうして作成された背景差分領域のラベリング情報L(D(t))とフレーム間差分領域のラベリング情報L(F(t))とを利用して、背景差分画像D(t)内の個々の背景差分領域di(t)について、フレーム間差分画像F(t)内のフレーム間差分領域fj(t)に対する重複部分の有無を判定する重複有無判定処理を行うことができる。
図19は、重複有無判定部150による重複有無判定処理の原理を示す図である。ここでは、時刻tについて作成された背景差分画像D(t)とフレーム間差分画像F(t)に基づいて重複確認画像C(t)を作成する処理の基本原理を説明する。
図19の上段左に示されている背景差分画像D(t)は、背景差分画像作成部130によって作成された画像であり、原画像P(t)と背景画像BGとの間で差分演算を行うことにより得られる。上述した手順によれば、この背景差分画像D(t)は、画素値「0」もしくは「1」をもった画素の集合からなる二値化差分画像になっている。図示の背景差分画像D(t)には、ハッチングを施して示すように、2組の背景差分領域d1(t),d2(t)が含まれている。これらの領域は、画素値「1」をもった画素の集合体から構成されている。図では、説明の便宜上、背景差分領域d1(t)を構成する画素として、2つの画素a(xa,ya),b(xb,yb)が例示されており、背景差分領域d2(t)を構成する画素として1つの画素c(xc,yc)が例示されている(括弧内は各画素の座標値)。
上述したとおり、背景差分画像作成部130は、各背景差分領域d1(t),d2(t)について、当該領域に含まれる画素を特定する画素特定情報を含むラベリング情報L(D(t))を作成する。図19の上段右に示されている背景差分領域のラベリング情報L(D(t))は、こうして作成されたラベリング情報である。たとえば、背景差分領域d1(t)については、画素a(xa,ya),画素b(xb,yb)などの座標値が画素特定情報として収容されており、背景差分領域d2(t)については、画素c(xc,yc)などの座標値が画素特定情報として収容されている。
一方、図19の中段左に示されているフレーム間差分画像F(t)は、フレーム間差分画像作成部140によって作成された画像であり、原画像P(t)とその直前の原画像P(t−1)との間で差分演算を行うことにより得られる。上述した手順によれば、このフレーム間差分画像F(t)も、画素値「0」もしくは「1」をもった画素の集合からなる二値化差分画像になっている。図示のフレーム間差分画像F(t)には、ハッチングを施して示すように、3組のフレーム間差分領域f1(t),f2(t),f3(t)が含まれている。これらの領域は、画素値「1」をもった画素の集合体から構成されている。
ここでは、説明の便宜上、図の上段に示す背景差分画像D(t)内に例示した3つの画素a(xa,ya),b(xb,yb),c(xc,yc)と同じ位置にある画素を、図の中段に示すフレーム間差分画像F(t)内に同じ符号を用いて例示してある。ただ、フレーム間差分画像F(t)の場合、画素a(xa,ya)は、ハッチングを施して示すフレーム間差分領域f1(t)内の画素であるため、画素値「1」をもった画素になるが、画素b(xb,yb),c(xc,yc)は、フレーム間差分領域外の画素であるため、画素値「0」をもった画素になる。
上述したとおり、フレーム間差分画像作成部140は、各フレーム間差分領域f1(t),f2(t),f3(t)について、当該領域に含まれる画素を特定する画素特定情報を含むラベリング情報L(F(t))を作成する。図19の中段右に示されているフレーム間差分領域のラベリング情報L(F(t))は、こうして作成されたラベリング情報である。たとえば、フレーム間差分領域f1(t)については、画素a(xa,ya)を含む座標値が画素特定情報として収容されている。
重複有無判定部150の基本的な役割は、背景差分画像D(t)内の個々の背景差分領域d1(t),d2(t)について、フレーム間差分画像F(t)内のフレーム間差分領域f1(t),f2(t),f3(t)に対する重複部分の有無を判定することである。このような判定は、ラベリング情報L(D(t)),L(F(t))を利用して行うことができる。
たとえば、背景差分領域d1(t)について、フレーム間差分領域f1(t),f2(t),f3(t)に対する重複部分の有無を判定する場合は、ラベリング情報L(D(t))のd1(t)の画素特定情報として収容されている座標値と同じ座標値が、ラベリング情報L(F(t))内に、f1(t)〜f3(t)の画素特定情報として収容されているか否かを判定すればよい。図示の例の場合、d1(t)についての座標値(xa,ya)と同じ座標値(xa,ya)が、f1(t)についての画素特定情報として収容されている。このため、背景差分領域d1(t)については、フレーム間差分領域に対する重複部分が有る、との判定がなされ、背景差分領域d1(t)を占める個体は動作個体と認識されることになる。
要するに、基本原理として、重複有無判定部150は、所定の着目背景差分領域d1(t)について重複部分の有無を判定する際に、当該着目背景差分領域d1(t)のラベリング情報内の画素特定情報によって特定された個々の着目画素について、各フレーム間差分領域f1(t)〜f3(t)のラベリング情報内の画素特定情報に同位置の画素が存在するか否かを調べ、存在する場合に重複部分有りとの判定を行えばよい。
図1に示す重複有無判定部150は、このような基本原理に基づく判定を行うために、図7〜図10に例示したような重複確認画像C(t)を作成する機能を有している。具体的には、重複有無判定部150は、背景差分画像D(t)とフレーム間差分画像F(t)とについて、対応する画素についての論理積演算を行うことにより、画素値「1」もしくは「0」をもった画素の集合体からなる二値画像である重複確認画像C(t)を作成する。
たとえば、図19に示す例の場合、上段左の背景差分画像D(t)上の画素a(xa,ya)と中段左のフレーム間差分画像F(t)上の画素a(xa,ya)との論理積演算の結果として、下段左の重複確認画像C(t)上の画素a(xa,ya)が得られることになる。この場合、演算対象となる2組の画素の画素値はいずれも「1」であるので(ハッチング領域内)、重複確認画像C(t)上の画素a(xa,ya)の画素値はその論理積「1」になる。
これに対して、画素b(xb,yb),c(xc,yc)については、背景差分画像D(t)上の画素は画素値「1」(ハッチング領域内)であるが、フレーム間差分画像F(t)上の画素は画素値「0」(白地領域内)であるため、重複確認画像C(t)上の画素b(xb,yb),c(xc,yc)の画素値はその論理積「0」になる。
図19の下段左の重複確認画像C(t)では、画素値「1」が与えられた画素a(xa,ya)を黒画素として示し、画素値「0」が与えられた画素b(xb,yb),c(xc,yc)を白画素として示した。また、背景差分画像D(t)上の背景差分領域d1(t),d2(t)に対応する対応領域を破線で示した。図には、3つの画素a(xa,ya),b(xb,yb),c(xc,yc)しか示されていないが、実際には、画像構成領域内の全画素について、画素値「0」または「1」のいずれかが与えられる。
個体認識部160は、この重複確認画像C(t)を利用することにより、各背景差分領域d1(t),d2(t)を占める個体が、動作個体であるか静止個体であるかを認識することができる。すなわち、重複確認画像C(t)上に、各背景差分領域d1(t),d2(t)の対応領域を定義し(図に破線で示す領域)、この対応領域内に、画素値「1」をもつ画素(黒画素)のみが存在している場合、および画素値「1」をもつ画素(黒画素)と画素値「0」をもつ画素(白画素)とが混在している場合は、当該背景差分領域を占める個体を動作個体と認識し、画素値「0」をもつ画素(白画素)のみが存在している場合は、当該背景差分領域を占める個体を静止個体と認識すればよい。
図示の例の場合、重複確認画像C(t)上に定義された背景差分領域d1(t)の対応領域(図に破線で示す領域)には、黒画素と白画素とが混在しているので、背景差分領域d1(t)を占める個体は動作個体と認識されることになる。一方、重複確認画像C(t)上に定義された背景差分領域d2(t)の対応領域(図に破線で示す領域)には、白画素のみが存在しているので、背景差分領域d2(t)を占める個体は静止個体と認識されることになる。
図11の右に示す各重複確認画像C(t1)〜C(t4)における人型の輪郭をもった個々の領域は、図5の右に示す各背景差分画像D(t1)〜D(t4)に含まれている背景差分領域d1(t1),d2(t1),... に対応する対応領域であり、図19の下段左に示す重複確認画像C(t)に破線で示された領域に相当するものである。この図11の右に示す各重複確認画像C(t1)〜C(t4)において、人型の輪郭内に黒い部分(重複部分)が一部でも含まれていた場合(すなわち、人型の輪郭内が黒い部分のみの場合、および人型の輪郭内に黒い部分と白い部分とが混在している場合)は、当該人型に対応する個体は動作個体と認識され、人型の輪郭内が白い部分(非重複部分)のみの場合は、当該人型に対応する個体は静止個体と認識される点は、既に説明したとおりである。
しかしながら、§3−6で述べたように、実際には、髪や服が風になびいたために、フレーム間差分画像F(t)にフレーム間差分領域が生じることになり、その結果、重複確認画像C(t)に微小な重複部分領域(黒い部分)が生じるケースもある。このようなケースを想定すると、図19の下段左の重複確認画像C(t)において、背景差分領域d1(t)の対応領域(図に破線で示されている領域)内に黒画素(画素値「1」をもった画素)が存在していたとしても、黒画素の数が微小である場合には、これを有意な重複部分として取り扱うのは好ましくない。別言すれば、図示の例において、重複確認画像C(t)上の背景差分領域d1(t)の対応領域内に、黒画素が存在したとしても、その数が所定の基準に満たない場合には、背景差分領域d1(t)を示す個体は、動作個体ではなく、静止個体とするべきである。
このような点を考慮すると、実用上は、個体認識部160は、背景差分画像D(t)に含まれている特定の背景差分領域d1(t)について、重複確認画像C(t)上の対応領域を参照し、当該対応領域内の画素のうち、画素値「1」をもった画素(黒画素)の総数が所定の基準に満たない場合には、当該特定の背景差分領域d1(t)を占める個体を静止個体と認識し、当該対応領域内の画素のうち、画素値「1」をもった画素(黒画素)の総数が所定の基準以上である場合には、当該特定の背景差分領域d1(t)を占める個体を動作個体と認識する処理を行うのが好ましい。
<<< §5. コンピュータによる実用的な処理手順 >>>
図1に示す個体の検出装置100では、背景差分画像作成部130によって背景差分画像D(t)が作成され、フレーム間差分画像作成部140によってフレーム間差分画像F(t)が作成された後、重複有無判定部150において重複部分の有無を判定する処理(重複確認画像C(t)を作成する処理)が実行され、続いて、個体認識部160において、上記判定結果を踏まえて、静止個体および動作個体を認識する処理が実行され、更に、検出個体表示部170によって、静止個体を示す静止個体指標sおよび動作個体を示す動作個体指標mをディスプレイ画面上に表示する処理が実行される。ここでは、このような一連の処理を、コンピュータプログラムで実行する場合に適した実用的な処理手順を説明する。
<5−1.静止個体指標sの作成手順>
図20は、図1の装置の重複有無判定部150、静止個体認識部161、検出個体表示部170の連携作業により静止個体指標sを作成する手順を示す流れ図である。ここでは、背景差分画像作成部130によって、図5に示すような背景差分画像D(t1)〜D(t4)が作成され、フレーム間差分画像作成部140によって、図6に示すようなフレーム間差分画像F(t1)〜F(t4)が作成されるものとして、これら両差分画像に基づいて、重複有無判定部150、静止個体認識部161、検出個体表示部170によって実行される手順を説明する。
まず、ステップS11において、静止個体指標番号kが初期値0に設定される。この静止個体指標番号kは、認識された個々の静止個体に付される連続番号である。実際には、最初に認識された静止個体については、ステップS18においてk=1になるため、静止個体指標番号k=1が付与される。
続くステップS12は、ステップS20までの手順を、i=1〜Imax まで繰り返し実行するループ処理である。ここで、iは、背景差分領域番号を示し、初期値は1、最大値はImax である。したがって、ステップS12からステップS20までのループ処理は、背景差分領域についてのループ処理ということになる。たとえば、図19に示す例の場合、背景差分画像D(t)には、2組の背景差分領域d1(t),d2(t)が含まれているため、Imax =2である。したがって、背景差分領域d1(t)に着目した処理(i=1とする処理)と、背景差分領域d2(t)に着目した処理(i=2とする処理)と、が実行される。
次のステップS13は、ステップS17までの手順を、j=1〜Jmax まで繰り返し実行するループ処理である。ここで、jは、フレーム間差分領域番号を示し、初期値は1、最大値はJmax である。したがって、ステップS13からステップS17までのループ処理は、フレーム間差分領域についてのループ処理ということになる。たとえば、図19に示す例の場合、フレーム間差分画像F(t)には、3組のフレーム間差分領域f1(t),f2(t),f3(t)が含まれているため、Jmax =3である。したがって、フレーム間差分領域f1(t)に着目した処理(j=1とする処理)と、フレーム間差分領域f2(t)に着目した処理(j=2とする処理)と、フレーム間差分領域f3(t)に着目した処理(j=3とする処理)と、が実行される。
そして、ステップS14では、第i番目の背景差分領域di(t)内の各画素について、第j番目のフレーム間差分領域fj(t)内の同位置の画素とのANDをとった論理積画像IMG(AND)を作成する処理が実行される。たとえば、最初に実行されるi=1,j=1の場合の処理では、第1番目の背景差分領域d1(t)内の各画素について、第1番目のフレーム間差分領域f1(t)内の同位置の画素とのANDをとった論理積画像IMG(AND)を作成する処理が実行される。これは、図19に示す例の場合、領域d1(t)と領域f1(t)との論理積画像を求める処理ということになり、領域d1(t),f1(t)の重複部分に位置する画素を黒画素(画素値「1」の画素)、それ以外の画素を白画素(画素値「0」の画素)とする論理積画像IMG(AND)が得られる。
続くステップS15では、ステップS14で得られた論理積画像IMG(AND)内の全画素について、ORをとった総合論理和VAL(OR)が求められる。すなわち、ステップS14で得られた論理積画像IMG(AND)は、画素値「0」(白画素の場合)もしくは画素値「1」(黒画素の場合)のいずれかをもった画素の集合体からなる二値画像であり、当該二値画像を構成する全画素の画素値についての論理和として、総合論理和VAL(OR)が計算される。この総合論理和VAL(OR)は、「0」または「1」のいずれかをとる論理値になる。
別言すれば、総合論理和VAL(OR)の値は、論理積画像IMG(AND)内の全画素が画素値「0」をもつ画素(白画素)であった場合にのみ「0」になり、いずれか1つでも画素値「1」をもつ画素(黒画素)が含まれていた場合は「1」になる。ここで、黒画素は、領域d1(t),f1(t)の重複部分を示す画素であるから、結局、総合論理和VAL(OR)=0であれば、領域d1(t),f1(t)間に重複部分が全くないことを示し、総合論理和VAL(OR)=1であれば、領域d1(t),f1(t)間に重複部分が存在することを示している。
なお、実用上は、§3−6で述べたように、静止している人が、髪や服が風になびいたために動作個体と認識されてしまうことを避けるため、VAL(OR)としては、数学的に完全な論理和を示す値ではなく、黒画素の数が所定の基準に満たない場合には、VAL(OR)=0とし、黒画素の数が所定の基準以上あった場合には、VAL(OR)=1とするような関数を定義するのが好ましい。
続く、ステップS16では、総合論理和VAL(OR)に基く重複部分の有無の判定が行われる。まず、総合論理和VAL(OR)=1の場合は、領域d1(t),f1(t)間に「重複部分有り」との判定がなされ、jのループを抜けて、ステップS20への分岐が行われる。これは、「重複部分有り」の場合は、背景差分領域d1(t)を占める個体は動作個体と認識されるため、静止個体指標sを作成する必要がないためである。このような認識がなされた場合、i=1として行われた背景差分領域d1(t)についての処理は終了する。すなわち、i=1に関しては、j=2,3についての処理を行うまでもなく(領域d1(t),f2(t)についての重複部分の有無や、領域d1(t),f3(t)についての重複部分の有無を調べる必要なしに)、背景差分領域d1(t)を占める個体は動作個体と認識することができる。したがって、ステップS20において、i=2への更新が行われ、ステップS12へ戻り、i=2として、次の背景差分領域d2(t)についての処理が同様に行われる。
一方、ステップS16で、総合論理和VAL(OR)=0と判定された場合は、領域d1(t),f1(t)間には「重複部分は無し」との判定がなされたことになる。この場合は、ステップS17へと分岐し、j=2への更新が行われ、ステップS13へと戻り、i=1,j=2として、領域d1(t),f2(t)についての重複部分の有無を調べる処理(ステップS14,S15)が実行される。ここでも、総合論理和VAL(OR)=0と判定された場合は、再びステップS17へと分岐し、j=3への更新が行われ、ステップS13へと戻り、i=1,j=3として、領域d1(t),f3(t)についての重複部分の有無を調べる処理(ステップS14,S15)が実行される。
こうして、i=1、j=1〜3の組み合わせのすべてについて、総合論理和VAL(OR)=0と判定された場合は、背景差分領域d1(t)は、第1〜第3のフレーム間差分領域f1(t),f2(t),f3(t)のいずれに対しても重複部分をもたないことになるので、背景差分領域d1(t)を占める個体は静止個体と認識できる。そこで、ステップS17からステップS18へと進み、静止個体指標番号k=1に更新し、更に、ステップS19へと進み、第k番目の静止個体指標sk(t)を、第i番目の背景差分領域di(t)に基づいて作成する処理が行われる。
図19に示す例の場合、i=1として実行される背景差分領域d1(t)についての手順では、j=1として実行されるフレーム間差分領域f1(t)との重複確認処理において重複部分有りと判定されるため、ステップS16からステップS20へと分岐することになるが、続いて、i=2として実行される背景差分領域d2(t)についての手順では、j=1〜3として実行されるフレーム間差分領域f1(t),f2(t),f3(t)との重複確認処理において、すべて重複部分無しと判定されるため、ステップS19が実行されることになり、第1番目の静止個体指標s1(t)が、第2番目の背景差分領域d2(t)に基づいて作成される。たとえば、図2に示す例の場合は、微細矩形ドットによるハッチング領域からなる静止個体指標sが作成され、図12に示す例の場合は、破線の矩形枠からなる静止個体指標sが作成される。
なお、ステップS14における論理積画像IMG(AND)の作成処理は、第i番目の背景差分領域di(t)を含む第1の二値画像と、第j番目のフレーム間差分領域fj(t)を含む第2の二値画像と、を互いに同一座標系を用いた同一サイズの画像として作成し、第1の二値画像と第2の二値画像との間で画像の論理積演算を行うことにより実行することができる。
ここで、第1の二値画像および第2の二値画像は、図19に示すようなラベリング情報Lを利用して作成すればよい。§4で述べたとおり、図19に示す背景差分画像D(t)上における各背景差分領域d1(t),d2(t)のコンピュータによる認識は、背景差分領域のラベリング情報L(D(t))に基づいて行われ、フレーム間差分画像F(t)上における各フレーム間差分領域f1(t),f2(t),f3(t)のコンピュータによる認識は、フレーム間差分領域のラベリング情報L(F(t))に基づいて行われる。
したがって、図20のステップS14において、i=1,j=1として、2組の領域d1(t),f1(t)についての論理積画像IMG(AND)を作成するためのコンピュータ上での実際の処理は、これらラベリング情報を用いた処理によって行うことができる。具体的には、所定サイズの空画像(画素値「0」をもった画素の集合体)を用意し、図19に示すラベリング情報L(D(t))内のd1(t)についての画素特定情報として列挙されている座標に位置する画素のみの画素値を「1」に変更すれば、上述した第1の二値画像を作成することができる。同様に、同じサイズの空画像をもう1枚用意し、ラベリング情報L(F(t))内のf1(t)についての画素特定情報として列挙されている座標に位置する画素のみの画素値を「1」に変更すれば、上述した第2の二値画像を作成することができる。そこで、これら両二値画像について論理積演算を行えば、論理積画像IMG(AND)が得られる。
もっとも、具体的な演算手法としては、ラベリング情報L(D(t)),L(F(t))を直接対比する方法を採用することもできる。たとえば、図19に示すラベリング情報L(D(t))内のd1(t)についての画素特定情報として列挙されている各画素の座標値のそれぞれについて、ラベリング情報L(F(t))内のf1(t)についての画素特定情報として列挙されている各画素の座標値に一致するものがあるか否かを調べ、一致するものがある場合には、当該画素の位置に黒画素(画素値「1」の画素)を配置し、一致するものがない場合には、当該画素の位置に白画素(画素値「0」の画素)を配置する、という作業を行うことにより、論理積画像IMG(AND)を作成してもよい。
続いて、図20の流れ図に示す処理の各手順を、図8に示す時刻t2における各画像D(t2),F(t2)を用いて実行する場合を例にとって具体的に説明する。
図21の左側には、図20の流れ図において、i=1,j=1としたときの処理内容が示されている。すなわち、図21(a) は、第i番目(i=1)の背景差分領域d1(t2)を含む第1の二値画像を示しており、図21(b) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。ここで、図21(a) に示す背景差分領域d1(t2)は、図8に示す背景差分画像D(t2)に含まれている2組の背景差分領域のうちの1つであり、実際には、ラベリング情報L(D(t2))内のd1(t2)についての画素特定情報として列挙されている各画素の集合体によって構成されている。同様に、図21(b) に示すフレーム間差分領域f1(t2)は、図8に示すフレーム間差分画像F(t2)に含まれているフレーム間差分領域であり、実際には、ラベリング情報L(F(t2))内のf1(t2)についての画素特定情報として列挙されている各画素の集合体によって構成されている。
図21(a) に示す第1の二値画像および図21(b) に示す第2の二値画像は、図示する矩形の外枠をもった同一サイズの二値画像であり、図の黒い部分は画素値「1」をもった画素によって構成され、図の白い部分は画素値「0」をもった画素によって構成される。上述したとおり、図の黒い部分は、ラベリング情報L内の画素特定情報(構成画素の座標値を羅列したデータ)によって特定される画素の集合体である。これは、後述する図23,図25,図26についても同様である。
図20の流れ図におけるステップS14では、2組の領域d1(t2),f1(t2)についての論理積として、論理積画像IMG(AND)が得られる。実際には、領域d1(t2)を含む第1の二値画像(図21(a) )と領域f1(t2)を含む第2の二値画像(図21(b) )との論理積演算によって、論理積画像IMG(AND)を求めることができる。図21(c) は、こうして得られた論理積画像IMG(AND)を示したものである。
一方、図20の流れ図におけるステップS15では、この論理積画像IMG(AND)内の全画素の画素値についての総合論理和VAL(OR)が求められる。すなわち、図において矩形枠内の画像として示されている論理積画像IMG(AND)内に、黒画素(画素値「1」の画素)が1つでもあれば、VAL(OR)=1となり、黒画素が1つもなければ、VAL(OR)=0となる。
なお、実用上は、上述したとおり、黒画素の数が所定の基準に満たない場合には、VAL(OR)=0とし、黒画素の数が所定の基準以上あった場合には、VAL(OR)=1とするのが好ましい。要するに、2組の領域d1(t2),f1(t2)についての重複部分が所定の面積に満たない場合は、重複部分無しとの判定を行うようにするのが好ましい。
図21(c) に示す論理積画像IMG(AND)の場合は、VAL(OR)=1となり、重複部分有りとの判定がなされることになるので、図20の流れ図において、ステップS16からステップS20へと分岐し、i=1について(背景差分領域d1(t2)について)の静止個体指標は作成されない(ステップS19は実行されない)。図21(d) は、説明の便宜上、i=1についての静止個体指標が作成されないことを示している。
一方、図21の右側には、図20の流れ図において、i=2,j=1としたときの処理内容が示されている。すなわち、図21(e) は、第i番目(i=2)の背景差分領域d2(t2)を含む第1の二値画像を示しており、図21(f) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。図21(e) に示す背景差分領域d2(t2)は、図8に示す背景差分画像D(t2)に含まれている2組の背景差分領域のうちの1つであり、実際には、ラベリング情報L(D(t2))内のd2(t2)についての画素特定情報として列挙されている各画素の集合体によって構成されている。同様に、図21(f) に示すフレーム間差分領域f1(t2)は、図8に示すフレーム間差分画像F(t2)に含まれているフレーム間差分領域であり、実際には、ラベリング情報L(F(t2))内のf1(t2)についての画素特定情報として列挙されている各画素の集合体によって構成されている。
図20の流れ図におけるステップS14では、2組の領域d2(t2),f1(t2)についての論理積として、論理積画像IMG(AND)が得られる。実際には、第1の二値画像(図21(e) )と第2の二値画像(図21(f) )との論理積演算によって、論理積画像IMG(AND)を求めることができる。図21(g) は、こうして得られた論理積画像IMG(AND)を示したものである。この例の場合、領域d2(t2),f1(t2)間には重複部分が全く存在しないため、図21(g) に示す論理積画像IMG(AND)は空の画像になる。
よって、VAL(OR)=0となり、重複部分無しとの判定がなされることになるので、図20の流れ図において、ステップS16からステップS17,S18,S19へと進み、i=2について(背景差分領域d2(t2)について)の静止個体指標s1(t2)が作成されることになる。ここで、「s1」の「1」は、静止個体番号k=1に対応するものである。図21(h) は、こうして作成されたi=2についての静止個体指標s1(t2)を示すものである。ここでは、図2に示す例と同様に、背景差分領域d2(t2)に基づいて、微細矩形ドットによるハッチング領域からなる静止個体指標s1(t2)が作成された例が示されている。
<5−2.動作個体指標mの作成手順>
図22は、図1の装置の重複有無判定部150、動作個体認識部162、検出個体表示部170の連携作業により動作個体指標mを作成する手順を示す流れ図である。ここでも、背景差分画像作成部130によって、図5に示すような背景差分画像D(t1)〜D(t4)が作成され、フレーム間差分画像作成部140によって、図6に示すようなフレーム間差分画像F(t1)〜F(t4)が作成されるものとして、これら両差分画像に基づいて、重複有無判定部150、動作個体認識部162、検出個体表示部170によって実行される手順を説明する。
まず、ステップS21において、動作個体指標番号hが初期値0に設定される。この動作個体指標番号hは、認識された個々の動作個体に付される連続番号である。実際には、最初に認識された動作個体については、ステップS28においてh=1になるため、動作個体指標番号h=1が付与される。
続くステップS22は、ステップS30までの手順を、i=1〜Imax まで繰り返し実行するループ処理である。図20の流れ図と同様に、iは、背景差分領域番号を示し、初期値は1、最大値はImax である。したがって、ステップS22からステップS30までのループ処理は、背景差分領域についてのループ処理ということになる。
次のステップS23は、ステップS27までの手順を、j=1〜Jmax まで繰り返し実行するループ処理である。図20の流れ図と同様に、jは、フレーム間差分領域番号を示し、初期値は1、最大値はJmax である。したがって、ステップS23からステップS27までのループ処理は、フレーム間差分領域についてのループ処理ということになる。
ステップS24の処理は、図20の流れ図におけるステップS14の処理と全く同じであり、第i番目の背景差分領域di(t)内の各画素について、第j番目のフレーム間差分領域fj(t)内の同位置の画素とのANDをとった論理積画像IMG(AND)が作成される。具体的な処理については、既にステップS14の処理として説明したため、ここでは説明は省略する。
また、ステップS25の処理は、図20の流れ図におけるステップS15の処理と全く同じであり、ステップS24で得られた論理積画像IMG(AND)内の全画素について、ORをとった総合論理和VAL(OR)が求められる。具体的な処理については、既にステップS15の処理として説明したため、ここでは説明は省略する。
ステップS26の処理は、図20の流れ図におけるステップS16の処理に対応するものであるが、分岐後の処理が異なっている。これは、図20の流れ図が静止個体指標sを作成する手順を示すものであるのに対して、ここで述べる図22の流れ図は、動作個体指標mを作成する手順を示すものであるためである。
この、ステップS26では、やはり総合論理和VAL(OR)に基く重複部分の有無の判定が行われる。まず、総合論理和VAL(OR)=1の場合は、領域d1(t),f1(t)間に「重複部分有り」との判定がなされる。この場合、背景差分領域d1(t)を占める個体は動作個体と認識できるので、jのループを抜けて、ステップS28への分岐が行われ、動作個体指標番号hを更新し、更に、ステップS29へと進み、第h番目の動作個体指標mh(t)を、第i番目の背景差分領域di(t)に基づいて作成する処理が行われる。
図19に示す例の場合、i=1として実行される背景差分領域d1(t)についての手順において、j=1として実行されるフレーム間差分領域f1(t)との重複確認処理において重複部分有りと判定されるため、ステップS26からステップS28,S29へと進み、第1番目の動作個体指標m1(t)が、第1番目の背景差分領域d1(t)に基づいて作成される。たとえば、図3に示す例の場合は、斜線網目によるハッチング領域からなる動作個体指標mが作成され、図12に示す例の場合は、実線の矩形枠からなる動作個体指標mが作成される。
こうして、ステップS29において、第1番目の動作個体指標m1(t)が作成されると、i=1として行われた背景差分領域d1(t)についての処理は終了する。そこで、ステップS30において、i=2への更新が行われ、ステップS22へ戻り、i=2として、次の背景差分領域d2(t)についての処理が同様に行われる。
一方、ステップS26で、総合論理和VAL(OR)=0と判定された場合は、領域d1(t),f1(t)間には「重複部分は無し」との判定がなされたことになる。この場合は、ステップS27へと分岐し、j=2への更新が行われ、ステップS23へと戻り、i=1,j=2として、領域d1(t),f2(t)についての重複部分の有無を調べる処理(ステップS24,S25)が実行される。ここでも、総合論理和VAL(OR)=0と判定された場合は、再びステップS27へと分岐し、j=3への更新が行われ、ステップS23へと戻り、i=1,j=3として、領域d1(t),f3(t)についての重複部分の有無を調べる処理(ステップS24,S25)が実行される。
こうして、i=1、j=1〜3の組み合わせのすべてについて、総合論理和VAL(OR)=0と判定された場合は、背景差分領域d1(t)は、第1〜第3のフレーム間差分領域f1(t),f2(t),f3(t)のいずれに対しても重複部分をもたないことになるので、背景差分領域d1(t)を占める個体は静止個体と認識できる。このため、背景差分領域d1(t)については、動作個体指標mを作成する処理は実行されないまま、i=1の処理は終了する。そこで、ステップS30において、i=2への更新が行われ、ステップS22へ戻り、i=2として、次の背景差分領域d2(t)についての処理が同様に行われる。
図19に示す例の場合、i=1として実行される背景差分領域d1(t)についての手順では、上述したとおり、第1番目の動作個体指標m1(t)が作成されることになるが、i=2として実行される背景差分領域d2(t)についての手順では、j=1〜3として実行されるフレーム間差分領域f1(t),f2(t),f3(t)との重複確認処理において、すべて重複部分無しと判定されるため、動作個体指標mを作成する処理は実行されないまま、i=2の処理は終了することになる。
ここでも、図22の流れ図に示す処理の各手順を、図8に示す時刻t2における各画像D(t2),F(t2)を用いて実行する場合を例にとって具体的に説明する。
図23の左側には、図22の流れ図において、i=1,j=1としたときの処理内容が示されている。すなわち、図23(a) は、第i番目(i=1)の背景差分領域d1(t2)を含む第1の二値画像を示しており、図23(b) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。また、図23(c) には、図22の流れ図におけるステップS24により作成された論理積画像IMG(AND)が示されている。これら図23(a) ,(b) ,(c) の内容は、図21(a) ,(b) ,(c) の内容と同じであり、詳しい説明は省略する。
図23(c) に示す論理積画像IMG(AND)については、VAL(OR)=1となり、重複部分有りとの判定がなされることになる。このため、図22の流れ図において、ステップS26からステップS28へと分岐し、i=1について(背景差分領域d1(t2)について)、動作個体指標m1(t2)が作成されることになる。ここで、「m1」の「1」は、動作個体番号h=1に対応するものである。図23(d) は、こうして作成されたi=1についての動作個体指標m1(t2)を示すものである。ここでは、図3に示す例と同様に、背景差分領域d1(t2)に基づいて、斜線網目によるハッチング領域からなる動作個体指標m1(t2)が作成された例が示されている。
一方、図23の右側には、図22の流れ図において、i=2,j=1としたときの処理内容が示されている。すなわち、図23(e) は、第i番目(i=2)の背景差分領域d2(t2)を含む第1の二値画像を示しており、図23(f) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。また、図23(g) には、図22の流れ図におけるステップS24により作成された論理積画像IMG(AND)が示されている。これら図23(e) ,(f) ,(g) の内容は、図21(e) ,(f) ,(g) の内容と同じであり、詳しい説明は省略する。
図23(e) に示す論理積画像IMG(AND)は、実際には空の画像であり、VAL(OR)=0となる。したがって、最終的には、図22の流れ図において、ステップS26からステップS27,S30へと進み、i=2について(背景差分領域d2(t2)について)の動作個体指標は作成されない(ステップS29は実行されない)。図23(h) は、説明の便宜上、i=2についての動作個体指標が作成されないことを示している。
<5−3.動作個体指標mの作成手順の変形例>
これまで述べてきたように、図1に示す個体の検出装置100における検出個体表示部170は、静止個体認識部161によって静止個体と認識された個体を示す静止個体指標sと、動作個体認識部162によって動作個体と認識された個体を示す動作個体指標mと、を表示する機能を有している。そして、これまで述べてきた例では、静止個体指標sおよび動作個体指標mを、背景差分画像D(t)に含まれている背景差分画像di(t)に基づいて作成している。
たとえば、図20に示す静止個体指標の作成手順によれば、図21(h) に示すような静止個体指標s1(t2)を作成することができる。この静止個体指標s1(t2)は、図21(e) に示す背景差分領域d2(t2)に基づいて作成されたものである。具体的には、図21(h) に示す静止個体指標s1(t2)は、図21(e) に示す背景差分領域d2(t2)の内部に微細矩形ドットによるハッチングを施すことにより作成することができる。また、図12の個体検出画像Q(t2)−SM内に示されている静止個体指標s1(t2)は、背景差分領域d2(t2)の外接矩形として作成することができる。図13以降に示す様々なバリエーションに係る静止個体指標s1(t2)も、やはり背景差分領域d2(t2)に基づいて作成することができる。
同様に、図22に示す動作個体指標の作成手順によれば、図23(d) に示すような動作個体指標m1(t2)を作成することができる。この動作個体指標m1(t2)は、図23(a) に示す背景差分領域d1(t2)に基づいて作成されたものである。具体的には、図23(d) に示す静止個体指標m1(t2)は、図23(a) に示す背景差分領域d1(t2)の内部に斜線網目によるハッチングを施すことにより作成することができる。また、図12の個体検出画像Q(t2)−SM内に示されている動作個体指標m1(t2)は、背景差分領域d1(t2)の外接矩形として作成することができる。図13以降に示す様々なバリエーションに係る動作個体指標m1(t2)も、やはり背景差分領域d1(t2)に基づいて作成することができる。
このように、これまで述べてきた実施例では、検出個体表示部170は、静止個体を示す静止個体指標sを、当該静止個体が占める背景差分領域di(t)に基づいて作成しており、動作個体を示す動作個体指標mを、当該動作個体が占める背景差分領域di(t)に基づいて作成している。
このため、図20に示す静止個体指標の作成手順では、まず、第i番目の背景差分領域di(t)に着目し(ステップS12)、当該背景差分領域di(t)について重複部分無しとの判定がなされたときには(ステップS16)、当該背景差分領域di(t)に基づいて静止個体指標sk(t)が作成される(ステップS19)。同様に、図22に示す動作個体指標の作成手順では、まず、第i番目の背景差分領域di(t)に着目し(ステップS22)、当該背景差分領域di(t)について重複部分有りとの判定がなされたときには(ステップS26)、当該背景差分領域di(t)に基づいて動作個体指標mh(t)が作成される(ステップS29)。
ここで述べる手順の基本的な考え方は、背景差分領域di(t)ではなく、フレーム間差分領域fj(t)に基づいて指標を作成するというものである。ただ、背景差分領域di(t)が、図5の背景差分画像D(t)に示されているような、背景画像に対する差分を示す領域であるのに対して、フレーム間差分領域fj(t)は、図6のフレーム間差分画像F(t)に示されているような、時間的変化を示す領域である。したがって、背景差分領域di(t)の代わりに、フレーム間差分領域fj(t)に基づいて指標を作成する変形例を採用する場合は、次の2つの点に留意する必要がある。
この変形例についての第1の留意点は、動作個体指標mの作成に適用することはできるが、静止個体指標sの作成に適用することはできない、という点である。たとえば、図6の時刻t1に示すフレーム間差分画像F(t1)には、大人A1と子供B1にそれぞれ対応するフレーム間差分領域f1(t1),f2(t1)が含まれている。しかしながら、時刻t2に示すフレーム間差分画像F(t2)には、大人A2に対応するフレーム間差分領域f1(t2)しか含まれていない。これは、時刻t2において、子供B2は静止しているためである。また、時刻t3に示すフレーム間差分画像F(t3)には、フレーム間差分領域は全く含まれていない。これは、時刻t3において、大人A3,子供B3は双方ともに静止しているためである。
このように、フレーム間差分画像F(t)に含まれているフレーム間差分領域fj(t)は、動作個体の動きによって形成される領域であり、静止個体の情報は含まれていない。このため、フレーム間差分領域fj(t)に基づいて指標を作成するという変形例は、動作個体指標mの作成に利用することはできるが、静止個体指標sの作成に利用することはできない。
そして、この変形例についての第2の留意点は、図5の背景差分画像D(t)に含まれている背景差分領域di(t)が、動作個体・静止個体を問わず、個体の外形(この例では人型)をそのまま表現した領域になっているのに対して、フレーム間差分領域fj(t)は、図6のフレーム間差分画像F(t)に含まれている各例を見ればわかるとおり、個体の外形をそのまま表現した領域になっているわけではない、という点である。したがって、フレーム間差分領域fj(t)に基づいて動作個体指標mを作成する変形例を採用する場合は、フレーム間差分領域fj(t)に対して、必要に応じた補正処理が必要になる。
たとえば、図6の時刻t1に示すフレーム間差分画像F(t1)には、2組のフレーム間差分領域f1(t1),f2(t1)が含まれているが、これらは大人A1と子供B1の外形をそのまま示すものではなく、動きに応じた二重の人型を重ねた形状をなし、しかも手足の一部に白抜きの欠けが生じている。図6の時刻t4に示すフレーム間差分画像F(t4)に至っては、もはや元の個体の全体像は完全に失われ、一部の腕の部分に相当する2組のフレーム間差分領域f1(t4),f2(t4)が残されているだけである。
そこで、ここで述べる変形例の場合、検出個体表示部170は、動作個体を示す動作個体指標mを、当該動作個体が占めるフレーム間差分領域に対して、当該動作個体が占める背景差分領域に基づく補正を施すことにより作成する、という方法を採用することになる。具体的には、動作個体が占めるフレーム間差分領域と当該動作個体が占める背景差分領域とについて、領域を構成する図形の論理和演算を行うことにより、補正を実行すればよい。
たとえば、図6のフレーム間差分画像F(t1)に含まれているフレーム間差分領域f1(t1)を利用して、大人A1(動作個体)についての動作個体指標mを作成する場合であれば、手足の一部に白抜きの欠けが生じているフレーム間差分領域f1(t1)に対して、図5の背景差分画像D(t1)に含まれている背景差分領域d1(t1)に基づく補正を行い、手足の欠けが修復された補正後のフレーム間差分領域f1(t1)に基づいて動作個体指標mを作成することになる。実際には、フレーム間差分領域f1(t1)を構成する図形と背景差分領域d1(t1)を構成する図形とについて、図形の論理和演算を行って論理和画像を作成し、この論理和画像に基づいて動作個体指標mを作成すればよい。
以下、図24を参照しながら、この変形例に係る動作個体指標mの作成手順を説明する。この図24は、図1の装置の重複有無判定部150、動作個体認識部162、検出個体表示部170の連携作業により動作個体指標mを作成する手順を示す流れ図である。ここでも、背景差分画像作成部130によって、図5に示すような背景差分画像D(t1)〜D(t4)が作成され、フレーム間差分画像作成部140によって、図6に示すようなフレーム間差分画像F(t1)〜F(t4)が作成されるものとして、これら両差分画像に基づいて、重複有無判定部150、動作個体認識部162、検出個体表示部170によって実行される手順を説明する。
まず、ステップS31において、動作個体指標番号hが初期値0に設定される。この動作個体指標番号hは、前述したとおり、認識された個々の動作個体に付される連続番号である。実際には、最初に認識された動作個体については、ステップS33においてh=1になるため、動作個体指標番号h=1が付与される。
続くステップS32は、ステップS42までの手順を、j=1〜Jmax まで繰り返し実行するループ処理である。図20,図22の流れ図と同様に、jは、フレーム間差分領域番号を示し、初期値は1、最大値はJmax である。したがって、ステップS32からステップS42までのループ処理は、フレーム間差分領域についてのループ処理ということになる。図20,図22に示す手順は、上述したとおり、静止個体指標sや動作個体指標mを、背景差分画像D(t)に含まれている背景差分画領域di(t)に基づいて作成するため、個々の背景差分領域di(t)に着目した処理を行うことになるが、この図24に示す手順では、フレーム間差分画像F(t)に含まれているフレーム間差分領域fj(t)に基づいて動作個体指標mを作成するため、個々のフレーム間差分領域fj(t)に着目した処理が行われる。
次のステップS33では、動作個体指標番号hがh=h+1に更新され、ステップS34において、第h番目の仮動作個体指標m′h(t)として、第j番目のフレーム間差分領域fj(t)を設定する処理が行われる。たとえば、ステップS32において、j=1のループ処理が開始すると、ステップS33においてh=1に設定され、ステップS34において、第1番目のフレーム間差分領域f1(t)が、第1番目の仮動作個体指標m′1(t)として設定される。ここで、「仮動作個体指標」とは、現段階では正式な動作個体指標mではない「仮」の指標を意味する。
具体的には、たとえば、ステップS32から開始するフレーム間差分領域のループが、図6のフレーム間差分画像F(t1)内のフレーム間差分領域f1(t1)を処理対象とするループであった場合、まず、このフレーム間差分領域f1(t1)が仮動作個体指標m′1(t1)として設定される。当該仮動作個体指標m′1(t1)は、手足の一部に欠けが生じており、正式な動作個体指標mとして利用するためには、後続する手順を経て、ステップS39において補正を行う必要がある。
続くステップS35は、ステップS40までの手順を、i=1〜Imax まで繰り返し実行するループ処理である。図20,図22の流れ図と同様に、iは、背景差分領域番号を示し、初期値は1、最大値はImax である。したがって、ステップS35からステップS40までのループ処理は、背景差分領域についてのループ処理ということになる。このループ処理の目的は、仮動作個体指標m′h(t)に対する補正を、重複している背景差分領域di(t)を利用して行うことにある。
まず、ステップS36において、第j番目のフレーム間差分領域fj(t)内の各画素について、第i番目の背景差分領域di(t)内の同位置の画素とのANDをとった論理積画像IMG(AND)が作成される。実際には、図20のステップS14や図22のステップS24と同様に、領域fj(t)を含む第1の二値画像と領域di(t)を含む第2の二値画像との論理積演算によって、論理積画像IMG(AND)を求めることができる。
続いて、ステップS37において、ステップS36で得られた論理積画像IMG(AND)内の全画素について、ORをとった総合論理和VAL(OR)が求められる。この総合論理和VAL(OR)の値は、既に図20のステップS15や図22のステップS25のおいて説明したとおり、論理積画像IMG(AND)内の全画素が画素値「0」をもつ画素(白画素)であった場合にのみ「0」になり、いずれか1つでも画素値「1」をもつ画素(黒画素)が含まれていた場合は「1」になる。したがって、総合論理和VAL(OR)=0であれば、領域fj(t),di(t)間に重複部分が全くないことを示し、総合論理和VAL(OR)=1であれば、領域fj(t),di(t)間に重複部分が存在することを示している。
なお、実用上は、上述したとおり、黒画素の数が所定の基準に満たない場合には、VAL(OR)=0とし、黒画素の数が所定の基準以上あった場合には、VAL(OR)=1とするのが好ましい。
そこで、次のステップS38において、総合論理和VAL(OR)に基く分岐が行われる。まず、総合論理和VAL(OR)=1の場合は、領域fj(t),di(t)間に「重複部分有り」との判定がなされる。この場合、背景差分領域di(t)はフレーム間差分領域fj(t)と同一の個体についての領域と判定できるので、仮動作個体指標m′h(t)に対する補正に利用することができる。そこで、ステップS39へと進み、仮動作個体指標m′h(t)内の各画素について、第i番目の背景差分領域di(t)の同位置の画素とのORをとった論理和画像IMG(OR)を作成し、これを新たな仮動作個体指標m′h(t)とする処理が行われる。
こうして、ステップS35〜S40のループ処理(iについてのループ処理)がi=1〜Imax まで繰り返し実行されると、フレーム間差分領域fj(t)に対して重複部分有りと判定された背景差分領域di(t)が見つかる度に、当該領域di(t)と、その時点の仮動作個体指標m′h(t)との間でORをとった論理和画像IMG(OR)が作成され、これを新たな仮動作個体指標m′h(t)とする更新処理が行われる。これにより、欠け部分を含んでいた当初の仮動作個体指標m′h(t)は徐々に修復されてゆくことになる。
こうして、iについてのループ処理が完了すると、ステップS41へと進み、第h番目の動作個体指標mh(t)が、その時点での第h番目の仮動作個体指標m′h(t)、すなわち、欠け部分の修復が完了した仮指標に基づいて作成される。たとえば、図3に示す動作個体指標mを用いる場合は、仮動作個体指標m′h(t)を構成する領域の内部に対して斜線網目によるハッチングを施すことにより、動作個体指標mh(t)を作成することができ、図12に示す動作個体指標mを用いる場合は、仮動作個体指標m′h(t)を構成する領域の外接矩形を求めることにより、動作個体指標mh(t)を作成することができる。
こうして、ステップS41において、第h番目の動作個体指標mh(t)が作成されると、ステップS42からステップS32へと戻り、jを更新することにより、新たなフレーム間差分領域に基づいて新たな動作個体指標mを作成するため、ステップS32〜S42のループ処理(jについてのループ処理)がj=1〜Jmax まで繰り返し実行される。
ここでは、図24の流れ図に示す処理の各手順を、図7に示す時刻t1における各画像D(t1),F(t1)に基づいて実行する具体例に即して説明しておく。
図25の上段には、図24の流れ図において、j=1,i=1としたときの処理内容が示されている。まず、図25(a) には、ステップS32において、j=1に設定したときの処理対象となる第j番目(j=1)のフレーム間差分領域f1(t1)を含む第1の二値画像が示されている(図7のF(t1)内に示すものと同じ)。ステップS34では、このフレーム間差分領域f1(t1)が、そのまま第h番目(h=1)の仮動作個体指標m′1(t1)として設定されることになる。図25(b) には、こうして設定された仮動作個体指標m′1(t1)を含む二値画像が示されている(「m′1」の「1」は、動作個体番号h=1に対応する)。図示のとおり、この仮動作個体指標m′1(t1)は、手足の一部に欠けを生じた不完全なものになっており、補正が必要である。
一方、図25(c) には、ステップS35において、i=1に設定したときの処理対象となる第i番目(i=1)の背景差分領域d1(t1)を含む第2の二値画像が示されている(図7のD(t1)内に示すものと同じ)。上述したとおり、ステップS36では、図25(a) に示すフレーム間差分領域f1(t1)を含む第1の二値画像と図25(c) に示す背景差分領域d1(t1)を含む第2の二値画像との間でANDをとった論理積画像IMG(AND)が作成される。図25(d) に示す画像は、このようにして作成された論理積画像IMG(AND)である。
ステップS37において、当該論理積画像IMG(AND)内の全画素についてORをとった総合論理和VAL(OR)を求めれば、図示のIMG(AND)に対しては、VAL(OR)=1となり、重複部分有りとの判定がなされることになる。この判定結果は、図25(c) に示す背景差分領域d1(t1)を利用して、図25(b) に示す現時点での仮動作個体指標m′1(t1)に対して補正を行うことができることを意味する。そこで、ステップS38からステップS39へと移行し、補正処理(論理和画像IMG(OR)を作成して置き換える処理)が実行される。すなわち、仮動作個体指標m′1(t1)を含む二値画像と背景差分領域d1(t1)を含む二値画像との間でORをとることにより、論理和画像IMG(OR)を作成し、これを新たな仮動作個体指標m′1(t1)とする処理が実行される。
図25(e) は、こうして作成された新しい仮動作個体指標m′1(t1)を含む二値画像を示している。図25(b) に示す古い仮動作個体指標m′1(t1)に存在していた手足の欠けの部分が、図25(e) に示す新しい仮動作個体指標m′1(t1)では修復されていることがわかる。
続いて、ステップS40において、i=2への更新が行われ、再びステップS35からの処理が実行される。図25の下段には、図24の流れ図において、j=1,i=2としたときの処理内容が示されている。まず、図25(f) には、i=2に設定したときの処理対象となる第i番目(i=2)の背景差分領域d2(t1)を含む二値画像が示されている(図5のD(t1)内に示すものと同じ)。ステップS36では、図25(a) に示すフレーム間差分領域f1(t1)と図25(f) に示す背景差分領域d2(t1)との間でANDをとった論理積画像IMG(AND)が作成される。図25(g) に示す画像は、このようにして作成された論理積画像IMG(AND)である。図示のとおり、領域f1(t1),d2(t1)には重複部分が全くないため、図25(g) に示す論理積画像IMG(AND)は、実際には空の画像になる。
したがって、ステップS37において、当該論理積画像IMG(AND)内の全画素についてORをとった総合論理和VAL(OR)を求めれば、図示のIMG(AND)に対しては、VAL(OR)=0となり、重複部分無しとの判定がなされることになる。この判定結果は、図25(f) に示す背景差分領域d2(t1)を利用して、図25(e) に示す現時点での仮動作個体指標m′1(t1)に対して補正を行うことはできないことを意味する。そこで、ステップS38からステップS40へと移行し、ステップS39の補正処理(論理和画像IMG(OR)を作成して置き換える処理)は実行されない。
こうして、ステップS35からステップS40までのループ処理が、i=1〜Imax まで完了すると、ステップS41において、図25(e) に示す現時点での仮動作個体指標m′1(t1)に基づいて、正式な動作個体指標m1(t1)を作成する処理が行われる。図25(h) は、こうして作成された正式な動作個体指標m1(t1)を示すものである。この例の場合、図25(e) に示す仮動作個体指標m′1(t1)を構成する領域の内部に対して斜線網目によるハッチングを施すことにより、図25(h) に示す正式な動作個体指標m1(t1)が作成されている。
以上の処理により、第1番目(h=1)の動作個体指標m1(t1)が、フレーム間差分領域f1(t1)に基づいて作成されたことになる。そこで、ステップS42において、j=2への更新が行われ、再びステップS32からの処理が実行される。
図26の上段には、図24の流れ図において、j=2,i=1としたときの処理内容が示されている。まず、図25(a) には、ステップS32において、j=2に設定したときの処理対象となる第j番目(j=2)のフレーム間差分領域f2(t1)を含む第1の二値画像が示されている(図6のF(t1)内に示すものと同じ)。ステップS34では、このフレーム間差分領域f2(t1)が、そのまま第h番目(h=2)の仮動作個体指標m′2(t1)として設定されることになる。図26(b) には、こうして設定された仮動作個体指標m′2(t1)が示されている(「m′2」の「2」は、動作個体番号h=2に対応する)。図示のとおり、この仮動作個体指標m′2(t1)は、手足の一部に欠けを生じた不完全なものになっており、補正が必要である。
一方、図26(c) には、ステップS35において、i=1に設定したときの処理対象となる第i番目(i=1)の背景差分領域d1(t1)を含む第2の二値画像が示されている(図5のD(t1)内に示すものと同じ)。上述したとおり、ステップS36では、図26(a) に示すフレーム間差分領域f2(t1)と図26(c) に示す背景差分領域d1(t1)との間でANDをとった論理積画像IMG(AND)が作成される。実際には、第1の二値画像(図26(a) )と第2の二値画像(図26(c) )との論理積演算によって、論理積画像IMG(AND)を求めることができる。図26(d) に示す画像は、このようにして作成された論理積画像IMG(AND)である。図示のとおり、領域f2(t1),d1(t1)には重複部分が全くないため、図26(d) に示す論理積画像IMG(AND)は、実際には空の画像になる。
したがって、ステップS37において、当該論理積画像IMG(AND)内の全画素についてORをとった総合論理和VAL(OR)を求めれば、図示のIMG(AND)に対しては、VAL(OR)=0となり、重複部分無しとの判定がなされることになる。この判定結果は、図26(c) に示す背景差分領域d1(t1)を利用して、図26(b) に示す現時点での仮動作個体指標m′2(t1)に対して補正を行うことはできないことを意味する。そこで、ステップS38からステップS40へと移行する。このとき、ステップS39の補正処理(論理和画像IMG(OR)を作成して置き換える処理)は実行されない。
続いて、ステップS40において、i=2への更新が行われ、再びステップS35からの処理が実行される。図26の下段には、図24の流れ図において、j=2,i=2としたときの処理内容が示されている。まず、図26(e) には、i=2に設定したときの処理対象となる第i番目(i=2)の背景差分領域d2(t1)を含む二値画像が示されている(図5のD(t1)内に示すものと同じ)。ステップS36では、図26(a) に示すフレーム間差分領域f2(t1)と図26(e) に示す背景差分領域d2(t1)との間でANDをとった論理積画像IMG(AND)が作成される。実際には、第1の二値画像(図26(a) )と第2の二値画像(図26(e) )との論理積演算によって、論理積画像IMG(AND)を求めることができる。図26(f) に示す画像は、このようにして作成された論理積画像IMG(AND)である。
次のステップS37において、当該論理積画像IMG(AND)内の全画素についてORをとった総合論理和VAL(OR)を求めれば、図示のIMG(AND)に対しては、VAL(OR)=1となり、重複部分有りとの判定がなされることになる。この判定結果は、図26(e) に示す背景差分領域d2(t1)を利用して、図26(b) に示す現時点での仮動作個体指標m′2(t1)に対して補正を行うことができることを意味する。そこで、ステップS38からステップS39へと移行し、補正処理(論理和画像IMG(OR)を作成して置き換える処理)が実行される。すなわち、仮動作個体指標m′2(t1)を含む二値画像と背景差分領域d2(t1)を含む二値画像との間でORをとることにより、論理和画像IMG(OR)を作成し、これを新たな仮動作個体指標m′2(t1)とする処理が実行される。
図26(g) は、こうして作成された新しい仮動作個体指標m′2(t1)を含む二値画像を示している。図26(b) に示す古い仮動作個体指標m′2(t1)に存在していた手足の欠けの部分が、図26(g) に示す新しい仮動作個体指標m′2(t1)では修復されていることがわかる。
こうして、ステップS35からステップS40までのループ処理が、i=1〜Imax まで完了すると、ステップS41において、図26(g) に示す現時点での仮動作個体指標m′2(t1)に基づいて、正式な動作個体指標m2(t1)を作成する処理が行われる。具体的には、図26(g) に示す仮動作個体指標m′2(t1)を構成する領域の内部に対して斜線網目によるハッチングを施すことにより、正式な動作個体指標m2(t1)が作成される(図示省略)。
以上の処理により、第2番目(h=2)の動作個体指標m2(t1)が、フレーム間差分領域f2(t1)に基づいて作成されたことになる。
なお、図25および図26に示す実例の場合、ステップS39に示す補正処理を1回行うだけで、仮動作個体指標m′h(t)に対する補正は完了する。たとえば、図25の例の場合、図25(b) に示す仮動作個体指標m′1(t1)に対して、図25(c) に示す背景差分領域d1(t1)とのORをとる補正処理を1回行うだけで、図25(e) に示す新しい仮動作個体指標m′1(t1)を得ることができ、欠けていた手足の一部は完全に修復されている。同様に、図26の例の場合、図26(b) に示す仮動作個体指標m′2(t1)に対して、図26(e) に示す背景差分領域d2(t1)とのORをとる補正処理を1回行うだけで、図26(g) に示す新しい仮動作個体指標m′2(t1)を得ることができ、欠けていた手足の一部は完全に修復されている。
したがって、これらの実施例に関しては、図24に示す流れ図において、ステップS39の補正処理が実行された時点で、iのループを抜けて、ステップS41へ分岐してしまっても問題はない。ただ、実用上は、補正に用いる背景差分領域di(t)が、必ずしも個体全体には対応していないケースもありうるので、図24に示す流れ図では、ステップS39の補正処理が実行された後も、iのループを抜けることなしにステップS40へ進むようにしてある。
たとえば、図25(c) に示す背景差分領域d1(t1)が、何らかの事情により、上半身領域d1(t1)−1と下半身領域d1(t1)−2とに分かれてしまっていた場合(この個体の腹部近傍が背景に近似していた場合、そのような現象が生じる)、領域d1(t1)−1と領域d1(t1)−2とは、iのループにおいて、別々の領域として取り扱われる。この場合、上半身領域d1(t1)−1を用いた補正処理だけでは完全な修復を行うことができないので、引き続いて、下半身領域d1(t1)−2を用いた補正処理が必要になる。図24に示す手順によれば、iのループがi=1〜Imax のすべてについて実施されるため、上例のような場合にも、十分な修復を行うことが可能である。
また、上例は、図24の流れ図に示す手順を、図7に示す時刻t1における各画像D(t1),F(t1)に基づいて実行した例であるため、個々の個体について、それぞれ1つの動作個体指標mh(t)が作成されているが、場合によっては、同一の個体について複数通りの動作個体指標mh(t)が作成されるケースもある。
たとえば、図24の流れ図に示す手順を、図10に示す時刻t4における各画像D(t4),F(t4)に基づいて実行した場合、大人Aについて2通りの動作個体指標m1(t4),m2(t4)が作成される。これは、図10に示すフレーム間差分画像F(t4)には、2組のフレーム間差分領域f1(t4),f2(t4)が含まれており、しかも、これらの領域f1(t4),f2(t4)は、いずれも同一の個体(大人A)についての領域になっているためである。
こうして作成された2通りの動作個体指標m1(t4),m2(t4)は、同一の個体(大人A)に基づいて作成された領域であるため、相互に重複部分を有している。もちろん、同一個体に対して複数の動作個体指標mが作成された場合、検出個体表示部170により、これらをディスプレイ画面上に重複して表示してもかまわないが、実用上は、相互に重複部分を有する複数の指標があった場合には、いずれか1つ(たとえば、面積が最も大きな指標)のみを選択して表示するのが好ましい。
ところで、この§5−3で述べる変形例によって作成される動作個体指標mは、§5−2で述べた実施例によって作成された動作個体指標mとは若干異なる形態を有している。たとえば、図3の個体検出画像Q(t1)−Mに含まれている動作個体指標m1(t1)は、§5−2で述べた実施例の手順によって作成されたものであり、図25(c) に示す背景差分領域d1(t1)を基本として作成されたものである。これに対して、図25(h) に示されている動作個体指標m1(t1)は、§5−3で述べた変形例によって作成されたものであり、図25(a) に示すフレーム間差分画像f1(t1)を基本として作成されたものである。いずれも、個体Aが時刻t1に占有している領域の近傍に配置されている閉領域から構成されているが、前者が個体Aの時刻t1の位置を示す指標になっているのに対して、後者は、個体Aの時刻t0〜t1の動きを示す指標になっている。
図4は、静止個体指標sの作成手順として図20に示す手順を用い、動作個体指標mの作成手順として図22に示す手順を用いた場合について、ディスプレイ画面上に表示される個体検出画像Q(t)−SMの具体例を示す図である。一方、図27は、静止個体指標sの作成手順としては図20に示す手順を用いつつ、動作個体指標mの作成手順として、図24に示す変形例に係る手順を用いた場合について、ディスプレイ画面上に表示される個体検出画像Q(t)−SMの具体例を示す図である。
図4と図27とを比較すると、いずれも左側に示されている原画像P(t)は全く同じであるが、右側に示されている個体検出画像Q(t)−SM上の動作個体指標mについて違いが生じている。たとえば、時刻t1についての個体検出画像Q(t1)−SMを比較すると、図4の場合、動作個体指標m1(t1),m2(t1)は、それぞれ個体A1,B1の時刻t1における位置を示す指標になっているのに対して、図27の場合、動作個体指標m1(t1),m2(t1)は、それぞれ個体A0〜A1への移動,個体B0〜B1への移動を示す指標になっている
前述したとおり、動作個体指標m1(t1),m2(t1)は、原画像P(t1)の上に重ねて表示されるため、図4に示す個体検出画像Q(t1)−SMでは、各指標m1(t1),m2(t1)は、現時点で、原画像P(t1)上に表示されている個体A1,B1を示す役割を果たす。これに対して、図27に示す個体検出画像Q(t1)−SMでは、各指標m1(t1),m2(t1)は、現時点で、原画像P(t1)上に表示されている個体A1,B1だけではなく、その過去の位置に相当する個体A0,B0を併せて示す役割を果たすことになる。
もちろん、原画像P(t1)上には、個体A0,B0は存在していないので、図27に示す個体検出画像Q(t1)−SMに表示されている指標m1(t1),m2(t1)は、個体A1,B1が影を引きずって移動している状態を表現することができる。しかも、引きずる影の大きさは、個体の移動速度に応じたものになるので、速度感も表現されることになる。同様に、図27に示す個体検出画像Q(t4)−SMの場合、動作個体指標m1(t4)は、個体A4の腕の動きを表現することができる(なお、図27に示す動作個体指標m1(t4)は、説明の便宜上、図6のフレーム間差分画像F(t4)に示す2組に分かれたフレーム間差分領域f1(t4),f2(t4)を用いた例ではなく、両差分領域f1(t4),f2(t4)が融合して1つの閉領域を形成していた場合に得られる動作個体指標を示す)。
このような効果は、別な形態の指標を採用した場合も同様である。たとえば、図12に示す個体検出画像Q(t)−SMは、静止個体指標sの作成手順として図20に示す手順を用い、動作個体指標mの作成手順として図22に示す手順を用いた場合について、ディスプレイ画面上に表示される個体検出画像Q(t)−SMの具体例を示す図であるが、個々の指標s,mとして、個体の外接矩形を用いた例である。一方、図28は、静止個体指標sの作成手順としては図20に示す手順を用いつつ、動作個体指標mの作成手順として、図24に示す変形例に係る手順を用いた場合について、ディスプレイ画面上に表示される個体検出画像Q(t)−SMの具体例を示す図である。ここで、静止個体指標sとしては、静止個体の外接矩形を用いているが、動作個体指標mとしては、最終的な仮動作個体指標m′h(t)の外接矩形を用いている。
図12に示す個体検出画像Q(t)−SMと、図28に示す個体検出画像Q(t)−SMとを比較すると、やはり後者の動作個体指標mは、動作個体の動きを表現することができる。たとえば、図28に示す個体検出画像Q(t1)−SMを見ると、個体A1は、矩形からなる動作個体指標m1(t1)の右端に位置しているため、左側に影を引きずりながら右側へ移動中である様子を感じさせることができる。同様に、個体B1は、矩形からなる動作個体指標m2(t1)の左端に位置しているため、右側に影を引きずりながら左側へ移動中である様子を感じさせることができる。
このように、§5−3で述べた変形例を実施すると、検出個体表示部170によって表示される個体検出画像上の動作個体指標mによって、動作個体の動きを表現することができ、しかも、引きずる影の大きさによって、個体が動く速度感も表現できる、という特別な作用効果が生まれることになる。
結局、§5−2で述べた実施例(背景差分画像D(t)を基本として動作個体指標mを作成する実施例)を採用すれば、図4に示すような動作個体指標mを表示することができ、前時刻の残像がない正確な個体を示す指標を用いた表示が可能になる。図4に示す各動作個体指標mは、その時刻における個々の動作個体を、その輪郭線に沿って正確に切り出した形状を示している。
したがって、§5−2で述べた実施例は、個々の動作個体の正確な形状を示す図形の内部に所定パターンを形成したり、当該図形の内部を所定色で塗りつぶしたりする閉領域指標として、動作個体指標mを表現する場合に適している。また、図14に示す例のように、個々の動作個体の輪郭線を示す輪郭指標として動作個体指標mを表現する場合や、図16に示す例のように、個々の動作個体をマスクからの露出部分として示す指標として動作個体指標mを表現する場合にも適している。
これに対して、§5−3で述べた変形例(フレーム間差分画像F(t)を基本として動作個体指標mを作成する実施例)を採用すれば、図27に示すような動作個体指標mを表示することができ、前時刻の残像を含む動きのある動作個体を示すことが可能になる。すなわち、このような動作個体指標mは、観察者に対して、個々の動作個体の移動方向や移動速度を暗示することができ、動作個体の動きをより強調した表現を行いたい場合に好適である。したがって、この§5−3で述べた変形例は、図28に示すような矩形枠(あるいは、楕円枠などでもよい)のような、動作個体を囲む枠状指標として動作個体指標mを表現する場合に適している。
<<< §6. 外接矩形を用いた簡易判定法 >>>
<6−0.外接矩形を用いた簡易判定法の基本概念>
図1に示す個体の検出装置100では、重複有無判定部150によって、背景差分画像D(t)内の個々の背景差分領域di(t)について、フレーム間差分画像F(t)内のフレーム間差分領域fj(t)に対する重複部分の有無が判定され、個体認識部160は、その判定結果に基づいて、特定の背景差分領域di(t)を占める個体を静止個体もしくは動作個体と認識することになる。具体的には、「重複部分無し」との判定結果が得られた場合には静止個体との認識がなされ、「重複部分有り」との判定結果が得られた場合には動作個体との認識がなされる。
この重複有無判定部150による重複有無判定処理は、たとえば図21に示す例の場合、第i番目の背景差分領域di(t)を含む第1の二値画像と、第j番目のフレーム間差分領域fj(t)を含む第2の二値画像と、についての、画像間の論理積演算を行って論理積画像IMG(AND)を作成し、この論理積画像IMG(AND)内の全画素について、ORをとった総合論理和VAL(OR)を求める演算を行うことによりなされる。具体的には、この例の場合、総合論理和VAL(OR)の値が「0」の場合は「重複部分無し」との判定がなされ、総合論理和VAL(OR)の値が「1」の場合は「重複部分有り」との判定がなされる。
しかしながら、実際には、このような画像演算は、コンピュータにとって処理負担の重い演算になる。もちろん、重複有無判定部150としての処理を担当するコンピュータに、画像処理専用のグラフィックチップなどを設けるようにすれば、それなりに画像処理機能を向上させることが可能であるが、一般のパソコンにとっては、上記重複有無判定処理はかなり負担のかかる処理になる。特に、定点カメラとして高解像度カメラを用いた場合、1フレームの画素の数は膨大なものになり、演算負担は極めて重いものになる。
しかも、図1に示す個体の検出装置100の場合、検出個体表示部170が、原画像P(t)の上に静止個体指標sや動作個体指標mを重ねた個体検出画像Q(t)を作成してディスプレイ画面上に表示する処理を実行することになる。したがって、監視カメラで撮影された画像をリアルタイムで監視する業務に利用する場合、重複有無判定部150は、入力される各フレーム画像について、リアルタイムで重複有無判定処理を実行する必要があり、短時間で処理を完了させる必要がある。
このような事情を考慮して、ここでは、重複有無判定部150による重複有無判定処理の負担を軽減するための簡易判定法を説明する。一般的なパソコン程度のコンピュータを用いて、監視カメラで撮影された画像をリアルタイムで監視する業務に利用する装置の場合は、§5で述べた処理手順の代わりに、以下に説明する簡易判定法に基づく処理手順を行うようにするのが好ましい。
ここで述べる簡易判定法の特徴は、2つの領域についての重複部分の有無を判定する際に、当該領域自身の代わりに、これらの外接矩形を用いて簡易判定を行う点にある。すなわち、重複有無判定部150は、背景差分画像D(t)内の背景差分領域di(t)について、フレーム間差分画像F(t)内のフレーム間差分領域fj(t)に対する重複部分の有無を判定する際に、当該背景差分領域di(t)の外接矩形と当該フレーム間差分領域fj(t)の外接矩形とについて、重複部分の有無を判定する簡易判定法を実行することになる。
図29は、この簡易判定法を導入した実施形態における矩形データの取り扱いを説明する図である。図29(a) は、任意形状の図形とその外接矩形との関係を示す図である。図に示す人型図形は任意形状の図形であり、これまでの説明で述べてきた背景差分領域di(t)やフレーム間差分領域fj(t)に対応するものである。このような任意形状の図形は、当該図形の内部に位置する個々の画素をラベリング情報等によって特定することにより表現せざるを得ず、その情報量は膨大なものになる。これに対して、図示の矩形Rは、この任意形状の人型図形に外接する矩形であり、かつ、当該人型図形を、左上位置に原点Oをもち、右方向をX軸、下方向をY軸とするXY二次元座標系上に配置した場合に、上下両辺がX軸に平行になり、左右両辺がY軸に平行になる正則な矩形になる。
ここで、この外接矩形Rの4頂点をA,B,C,Dとすると、図29(a) の右側に記載したとおり、その座標値は、A(xmin ,ymin),B(xmax ,ymin),C(xmin ,ymax),D(xmax ,ymax)になり、外接矩形Rは、これら4頂点の座標値のみによって定義することができる(実際には、外接矩形Rの対角2頂点の座標のみで定義できる)。ここで、座標値「xmin 」は、人型図形を構成する各画素のもつX座標値の最小値、座標値「xmax 」は、その最大値である。同様に、座標値「ymin 」は、人型図形を構成する各画素のもつY座標値の最小値、座標値「ymax 」は、その最小値である。
このような外接矩形Rを用いると、2つの領域についての重複部分の有無を判定する処理は非常に簡単になる。図29(b) は、2つの外接矩形について、重複部分の有無を判定する方法を示す図である。ここでは、第1の外接矩形Raと第2の外接矩形Rbとが、重複部分を有しているか否かを判定する方法が示されている。図示のとおり、この判定方法では、第1の外接矩形Raの左上頂点座標(x1,y1)と、第1の外接矩形Raの右下頂点座標(x2,y2)と、第2の外接矩形Rbの左上頂点座標(x3,y3)と、第2の外接矩形Rbの右下頂点座標(x4,y4)と、を用いて、図29(b) の右側に記載した論理式を演算することにより、判定結果を得ることができる。
具体的には、図示のとおり、VAL(Overlap)=(x1≦x4)AND(x3≦x2)AND(y1≦y4)AND(y3≦y2)なる論理演算式で定義される矩形重複判定値VAL(Overlap)の値を求めればよい。VAL(Overlap)=1であれば「重複部分有り」との判定結果が得られ、VAL(Overlap)=0であれば「重複部分無し」との判定結果が得られる。図示の例の場合は、VAL(Overlap)=1になるため「重複部分有り」との判定結果になる。
したがって、§5で述べた手順において、背景差分領域di(t)とフレーム間差分領域fj(t)とについて論理積画像IMG(AND)を求め、これについて総合論理和VAL(OR)を計算する処理の代わりに、各領域di(t),fj(t)について、図29(a) に示す外接矩形の2頂点A,Dの座標値を求め、図29(b) に示す単純な論理演算式により矩形重複判定値VAL(Overlap)の値を求めれば、2つの領域についての重複部分の有無を示す判定結果を得ることができる。このため、演算負担は大幅に軽減される。
もちろん、領域di(t),fj(t)についての重複部分の有無を示す判定結果と、これらの外接矩形についての重複部分の有無を示す判定結果とは、正確には一致しないので、外接矩形を用いた簡易判定法を採用した場合、検出結果に誤差が含まれることになり、静止個体か動作個体かの認識に誤りが生じる可能性がある。しかしながら、そもそも静止個体か動作個体かの区分けは厳密なものではなく、区分けに多少の誤差が生じたとしても、実用上、大きな支障は生じない。
また、図24の流れ図におけるステップS39では、2つの画像についての論理和画像IMG(OR)を作成する処理が必要になるが、外接矩形を用いると、この論理和画像IMG(OR)を作成する処理も単純化することができる。
図29(c) は、矩形Raを含む画像と矩形Rbを含む画像とについて、論理和画像IMG(OR)を作成する方法を示す図である。具体的には、矩形Raと矩形Rbについて、これらを包摂する包摂矩形Rcを求めれば、当該包摂矩形Rcを含む画像が論理和画像IMG(OR)ということになる。包摂矩形Rcは、図に破線で示すとおり、2つの矩形Ra,Rb全体についての外接矩形に相当するものである。したがって、この包摂矩形Rcの4頂点の座標値は、矩形Ra,Rbの4頂点の座標値に基づいて簡単に決定することができる。
具体的には、図29(c) の右側に記載したとおり、包摂矩形Rcの左上頂点のX座標は、矩形Raの左上頂点のX座標値x1と矩形Rbの左上頂点のX座標値x3のうち、いずれか小さい方になり、包摂矩形Rcの左上頂点のY座標は、矩形Raの左上頂点のY座標値y1と矩形Rbの左上頂点のY座標値y3のうち、いずれか大きい方になる。また、包摂矩形Rcの右下頂点のX座標は、矩形Raの右下頂点のX座標値x2と矩形Rbの右下頂点のX座標値x4のうち、いずれか大きい方になり、包摂矩形Rcの右下頂点のY座標は、矩形Raの右下頂点のY座標値y2と矩形Rbの右下頂点のY座標値y4のうち、いずれか小さい方になる。
このように、図24のステップS39において、2つの画像についての論理和画像IMG(OR)を作成する代わりに、各領域の外接矩形の2頂点の座標値に基づいてその包摂矩形Rcを作成し、この包摂矩形Rcを含む画像を論理和画像IMG(OR)の代わりに用いることにすれば、演算負担は大幅に軽減される。
もちろん、上記包摂矩形Rcは、2つの画像についての論理和画像IMG(OR)に含まれる論理和領域に一致するものではない。たとえば、図25(e) に示す二値画像は、図25(b) に示す二値画像と図25(c) に示す二値画像とに基づいて作成された論理和画像IMG(OR)であり、黒画素の集合として形成された領域m′1(t1)は、二重人型領域になっている。これに対して、図25(b) に示す領域m′1(t1)の外接矩形と図25(c) に示す領域d1(t1)の外接矩形に基づいて、その包摂矩形Rcを作成した場合、得られる包摂矩形Rcは、図25(e) に示す領域m′1(t1)を囲う矩形枠に過ぎず、二重人型領域を示す図形にはならない。
しかしながら、この包摂矩形Rcは、そのまま矩形状の動作個体指標m1(t1)として利用することができる。別言すれば、図25に示す例の場合、最終的に作成される動作個体指標m1(t1)は、図25(h) に示すように、斜線網目によるハッチング領域になるが、外接矩形を用いた簡易判定法を利用した場合には、図28のQ(t1)−SMに示されているような、矩形状の動作個体指標m1(t1)(すなわち、包摂矩形Rc)を表示するようにすればよい。
続いて、§5−1,§5−2,§5−3で述べた各処理手順に、外接矩形を用いた簡易判定法を適用した場合に、具体的にどのような処理が行われるかを、以下に述べる§6−1,§6−2,§6−3でそれぞれ簡単に説明する。
<6−1.簡易判定法による静止個体指標sの作成手順>
§5−1では、図20の流れ図を参照しながら、静止個体指標sを作成する手順を説明した。ここでは、この図20の流れ図に示す手順における重複有無判定処理に、上述した外接矩形を用いた簡易判定法を適用した場合の手順を説明する。
図30は、この簡易判定法を適用した場合の手順を示す流れ図であり、基本的には、図20に示す手順と同様の処理手順になっている。ただ、重複有無判定処理の内容が簡易判定法に置き換えられている。そこで、以下、図20に示す手順(§5−1で述べた手順)と異なる部分についてのみ、説明を行うことにする。具体的には、ステップS11,S12,S13,S17,S18,S20の各ステップは、図20に示す手順の処理と全く同じであり、背景差分領域についてのiのループおよびフレーム間差分領域についてのjのループが繰り返し実行されることになる。
ただ、図20に示すステップS14,S15,S16(重複有無判定処理など)については、図30の流れ図では、ステップS14′およびステップS16′に置き換えられている。また、ステップS19は、ステップS19′に置き換えられている。
まず、ステップS14′では、第i番目の背景差分領域di(t)の外接矩形ddi(t)と、第j番目のフレーム間差分領域fj(t)の外接矩形ffj(t)とが作成される。ここで、各外接矩形を示すデータとしては、たとえば、左上頂点座標と右下頂点座標とを用いることができ、少なくとも2頂点の座標値のみにより、1つの外接矩形を特定することができる。この§6の説明に用いる各図では、便宜上、各外接矩形や包摂矩形を画像上の四角形として示しているが、実際には、これらの各矩形は、画素の集合からなる画像データとして特定されるわけではなく、2頂点の座標値(各頂点のX座標値とY座標値)のデータによって特定されることになる。
次に、これら両外接矩形ddi(t),ffj(t)について、矩形重複判定値VAL(Overlap)が求められる。この矩形重複判定値VAL(Overlap)は、図29(b) の右側に示す論理演算式に基づいて算出される論理値であり、前述したとおり、両外接矩形ddi(t),ffj(t)について、重複部分があればVAL(Overlap)=1となり、重複部分がなければVAL(Overlap)=0になる。
続くステップS16′では、この矩形重複判定値VAL(Overlap)に基づく分岐が行われる。まず、矩形重複判定値VAL(Overlap)=1の場合は、両外接矩形ddi(t),ffj(t)に「重複部分有り」との判定がなされたことになるので、jのループを抜けて、ステップS20への分岐が行われる。一方、矩形重複判定値VAL(Overlap)=0の場合は、両外接矩形ddi(t),ffj(t)に「重複部分無し」との判定がなされたことになるので、ステップS17へと分岐し、j=2への更新が行われ、ステップS13へと戻り、i=1,j=2として、領域d1(t),f2(t)についての重複部分の有無を調べる処理(外接矩形を用いた簡易判定法による判定処理)が実行される。ここでも、矩形重複判定値VAL(Overlap)=0と判定された場合は、再びステップS17へと分岐し、j=3への更新が行われ、ステップS13へと戻り、i=1,j=3として、領域d1(t),f3(t)についての重複部分の有無を調べる処理(外接矩形を用いた簡易判定法による判定処理)が実行される。
こうして、i=1、j=1〜3の組み合わせのすべてについて、矩形重複判定値VAL(Overlap)=0と判定された場合は、背景差分領域d1(t)の外接矩形dd1(t)は、第1〜第3のフレーム間差分領域f1(t),f2(t),f3(t)の外接矩形ff1(t),ff2(t),ff3(t)のいずれに対しても重複部分をもたないことになるので、背景差分領域d1(t)を占める個体は静止個体と認識できる。そこで、ステップS17からステップS18へと進み、静止個体指標番号k=1に更新し、更に、ステップS19′へと進み、第k番目の静止個体指標ssk(t)を、第i番目の背景差分領域di(t)の外接矩形ddi(t)に基づいて作成する処理が行われる。
図20に示すステップS19では、背景差分領域di(t)に基づいて静止個体指標sk(t)が作成されるので、たとえば、図21(h) に示すような人型の静止個体指標s1(t2)を作成することができるが、図30に示すステップS19′では、外接矩形ddi(t)に基づいて静止個体指標ssk(t)が作成されるので、作成される静止個体指標ssk(t)は、図21(h) に示すような人型ではなく、これを取り囲む矩形状の指標になる(たとえば、図12の個体検出画像Q(t2)−SM内に示されている破線の矩形からなるs1(t2)のような指標)。
もっとも、必要があれば、背景差分画像D(t)に含まれている各背景差分領域di(t)の中から、外接矩形ddi(t)内に位置するものを選択し、選択された特定の背景差分領域di(t)に基づいて静止個体指標ssk(t)を作成するようにすれば、図21(h) に示すような人型の指標を作成することができる。もちろん、図13〜図15に例示するようなバリエーションに係る指標を作成することも可能である。
続いて、図30の流れ図に示す処理の各手順を、図8に示す時刻t2における各画像D(t2),F(t2)を用いて実行する場合を例にとって具体的に説明する。
図31の左側には、図30の流れ図において、i=1,j=1としたときの処理内容が示されている。すなわち、図31(a) は、第i番目(i=1)の背景差分領域d1(t2)を含む第1の二値画像を示しており、図31(b) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。ただ、ここで説明する簡易判定法では、図示のとおり、背景差分領域d1(t2)については外接矩形dd1(t2)が作成され、フレーム間差分領域f1(t2)については外接矩形ff1(t2)が作成される。実際には、上述したとおり、各外接矩形の左上頂点座標と右下頂点座標とが決定され、データとして保存される。以後の演算は、実際には、これら2頂点の座標値を利用して行われる。
まず、図31(c) に示すように、これら外接矩形dd1(t2),ff1(t2)についての重複有無判定がなされる(ステップS14′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形dd1(t2),ff1(t2)についての重複有無判定演算を行えばよい。図31(c) に示す例の場合、両矩形はハッチングを施した部分において重複しているので、VAL(Overlap)=1となり、「重複部分有り」との判定結果が得られる。そこで、図30の流れ図において、ステップS16′からステップS20へと分岐し、i=1について(背景差分領域d1(t2)について)の静止個体指標は作成されない(ステップS19′は実行されない)。図31(d) は、説明の便宜上、i=1についての静止個体指標が作成されないことを示している。
一方、図31の右側には、図30の流れ図において、i=2,j=1としたときの処理内容が示されている。すなわち、図31(e) は、第i番目(i=2)の背景差分領域d2(t2)を含む第1の二値画像を示しており、図31(f) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。ここでも、図示のとおり、背景差分領域d2(t2)については外接矩形dd2(t2)が作成され、フレーム間差分領域f1(t2)については外接矩形ff1(t2)が作成される。
そして、図31(g) に示すように、これら外接矩形dd2(t2),ff1(t2)についての重複有無判定がなされる(ステップS14′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形dd2(t2),ff1(t2)についての重複有無判定演算を行えばよい。図31(g) に示す例の場合、両矩形は全く重複していないので、VAL(Overlap)=0となり、「重複部分無し」との判定結果が得られる。そこで、図30の流れ図において、ステップS16′からステップS17,S18,S19′へと進み、i=2について(背景差分領域d2(t2)について)の静止個体指標ss1(t2)が作成されることになる。
図31(h) は、こうして作成されたi=2についての静止個体指標ss1(t2)を示すものである。ステップS19′に示す手順に従えば、静止個体指標ss1(t2)は、背景差分領域d2(t2)の外接矩形dd2(t2)に基づいて作成されることになる。図31(h) に示されている静止個体指標ss1(t2)は、図31(e) に示されている外接矩形dd2(t2)を破線で表現したものになっている。これは、図12の個体検出画像Q(t2)−SM内に示されている静止個体指標s1(t2)と同じ指標である。
要するに、個体認識部160内の静止個体認識部161は、重複有無判定部150が行った上記簡易判定法によって、外接矩形についての重複部分は無い、との判定結果が得られた背景差分領域d2(t2)を占める個体B2を静止個体と認識する。そして、検出個体表示部170は、このような認識に基づいて、図31の右側に示すように、静止個体と認識された個体B2を示す矩形枠からなる静止個体指標ss1(t2)(図31(h) )を、当該静止個体B2が占める背景差分領域d2(t2)の外接矩形dd2(t2)に基づいて作成し、これを個体検出画像Q(t)上に表示することになる。
もっとも、必要があれば、外接矩形dd2(t2)と図5に示す背景差分画像D(t2)とに基づく照合作業を行い、背景差分画像D(t2)に含まれている背景差分領域d1(t2)およびd2(t2)の中から、外接矩形dd2(t2)内に位置するd2(t2)を選択し、選択された背景差分領域d2(t2)に基づいて静止個体指標ss1(t2)を作成するようにすれば、図21(h) に示すような人型の静止個体指標s1(t2)を作成することもできる。もちろん、図13〜図15に例示するようなバリエーションに係る指標を作成することも可能である。
<6−2.簡易判定法による動作個体指標mの作成手順>
§5−2では、図22の流れ図を参照しながら、動作個体指標mを作成する手順を説明した。ここでは、この図22の流れ図に示す手順における重複有無判定処理に、上述した外接矩形を用いた簡易判定法を適用した場合の手順を説明する。
図32は、この簡易判定法を適用した場合の手順を示す流れ図であり、基本的には、図22に示す手順と同様の処理手順になっている。ただ、重複有無判定処理の内容が簡易判定法に置き換えられている。そこで、以下、図22に示す手順(§5−2で述べた手順)と異なる部分についてのみ、説明を行うことにする。具体的には、ステップS21,S22,S23,S27,S28,S30の各ステップは、図22に示す手順の処理と全く同じであり、背景差分領域についてのiのループおよびフレーム間差分領域についてのjのループが繰り返し実行されることになる。
ただ、図22に示すステップS24,S25,S26(重複有無判定処理など)については、図32の流れ図では、ステップS24′およびステップS26′に置き換えられている。また、ステップS29はステップS29′に置き換えられている。
ここで、ステップS24′の処理は、図30に示すステップS14′の処理と同じである。すなわち、第i番目の背景差分領域di(t)の外接矩形ddi(t)と、第j番目のフレーム間差分領域fj(t)の外接矩形ffj(t)とが作成され、これら両外接矩形ddi(t),ffj(t)について、矩形重複判定値VAL(Overlap)が求められる。両外接矩形ddi(t),ffj(t)について、重複部分があればVAL(Overlap)=1となり、重複部分がなければVAL(Overlap)=0になる。
続くステップS26′では、この矩形重複判定値VAL(Overlap)に基づく分岐が行われる。まず、矩形重複判定値VAL(Overlap)=1の場合は、両外接矩形ddi(t),ffj(t)に「重複部分有り」との判定がなされたことになるので、jのループを抜けて、ステップS28への分岐が行われ、動作個体指標番号hを更新し、更に、ステップS29′へと進み、第h番目の動作個体指標mmh(t)を、第i番目の背景差分領域di(t)の外接矩形ddi(t)に基づいて作成する処理が行われる。
このステップS29′では、外接矩形ddi(t)に基づいて動作個体指標mmh(t)が作成されるので、作成される動作個体指標mmh(t)は、図23(d) に示すような人型ではなく、これを取り囲む矩形状の指標になる(たとえば、図12の個体検出画像Q(t2)−SM内に示されている実線の矩形からなるm1(t2)のような指標)。
もっとも、必要があれば、背景差分画像D(t)に含まれている各背景差分領域di(t)の中から、外接矩形ddi(t)内に位置するものを選択し、選択された特定の背景差分領域di(t)に基づいて静止個体指標mmh(t)を作成するようにすれば、図23(d) に示すような人型の指標を作成することができる。もちろん、図13,図14,図16に例示するようなバリエーションに係る指標を作成することも可能である。
続いて、図32の流れ図に示す処理の各手順を、図8に示す時刻t2における各画像D(t2),F(t2)を用いて実行する場合を例にとって具体的に説明する。
図33の左側には、図32の流れ図において、i=1,j=1としたときの処理内容が示されている。すなわち、図33(a) は、第i番目(i=1)の背景差分領域d1(t2)を含む第1の二値画像を示しており、図33(b) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。ただ、ここで説明する簡易判定法では、図示のとおり、背景差分領域d1(t2)については外接矩形dd1(t2)が作成され、フレーム間差分領域f1(t2)については外接矩形ff1(t2)が作成される。
そして、図33(c) に示すように、これら外接矩形dd1(t2),ff1(t2)についての重複有無判定がなされる(ステップS24′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形dd1(t2),ff1(t2)についての重複有無判定演算を行えばよい。図33(c) に示す例の場合、両矩形はハッチングを施した部分において重複しているので、VAL(Overlap)=1となり、「重複部分有り」との判定結果が得られる。そこで、図32の流れ図において、ステップS26′からステップS28,S29′へと進み、i=1について(背景差分領域d1(t2)について)の動作個体指標mm1(t2)が作成されることになる。
図33(d) は、こうして作成されたi=1についての動作個体指標mm1(t2)を示すものである。ステップS29′に示す手順に従えば、動作個体指標mm1(t2)は、背景差分領域d1(t2)の外接矩形dd1(t2)に基づいて作成されることになる。図33(d) に示されている動作個体指標mm1(t2)は、図33(a) に示されている外接矩形dd1(t2)をそのまま表現したものになっている。これは、図12の個体検出画像Q(t2)−SM内に示されている動作個体指標m1(t2)と同じ指標である。
要するに、個体認識部160内の動作個体認識部162は、重複有無判定部150が行った上記簡易判定法によって、外接矩形についての重複部分が有る、との判定結果が得られた背景差分領域d1(t2)を占める個体A2を動作個体と認識する。そして、検出個体表示部170は、このような認識に基づいて、図33の左側に示すように、動作個体と認識された個体A2を示す矩形枠からなる動作個体指標mm1(t2)(図33(d) )を、当該動作個体A2が占める背景差分領域d1(t2)の外接矩形dd1(t2)に基づいて作成し、これを個体検出画像Q(t)上に表示することになる。
もっとも、必要があれば、外接矩形dd1(t2)と図5に示す背景差分画像D(t2)とに基づく照合作業を行い、背景差分画像D(t2)に含まれている背景差分領域d1(t2)およびd2(t2)の中から、外接矩形dd1(t2)内に位置するd1(t2)を選択し、選択された背景差分領域d1(t2)に基づいて動作個体指標mm1(t2)を作成するようにすれば、図23(d) に示すような人型の動作個体指標m1(t2)を作成することもできる。もちろん、図13,図14,図16に例示するようなバリエーションに係る指標を作成することも可能である。
一方、図33の右側には、図32の流れ図において、i=2,j=1としたときの処理内容が示されている。すなわち、図33(e) は、第i番目(i=2)の背景差分領域d2(t2)を含む第1の二値画像を示しており、図33(f) は、第j番目(j=1)のフレーム間差分領域f1(t2)を含む第2の二値画像を示している。ここでも、図示のとおり、背景差分領域d2(t2)については外接矩形dd2(t2)が作成され、フレーム間差分領域f1(t2)については外接矩形ff1(t2)が作成される。
そして、図33(g) に示すように、これら外接矩形dd2(t2),ff1(t2)についての重複有無判定がなされる(ステップS24′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形dd2(t2),ff1(t2)についての重複有無判定演算を行えばよい。図33(g) に示す例の場合、両矩形は全く重複していないので、VAL(Overlap)=0となり、「重複部分無し」との判定結果が得られる。
そこで、図32の流れ図において、ステップS26′からステップS27,S30へと進み、i=2について(背景差分領域d2(t2)について)の動作個体指標は作成されない(ステップS29′は実行されない)。図33(h) は、説明の便宜上、i=2についての動作個体指標が作成されないことを示している。
<6−3.簡易判定法による動作個体指標mの作成手順の変形例>
§5−3では、図24の流れ図を参照しながら、動作個体指標mを作成する変形例に係る手順を説明した。ここでは、この図24の流れ図に示す手順における重複有無判定処理に、上述した外接矩形を用いた簡易判定法を適用した場合の手順を説明する。
図34は、この簡易判定法を適用した場合の手順を示す流れ図であり、基本的には、図24に示す手順と同様の処理手順になっている。ただ、重複有無判定処理の内容が簡易判定法に置き換えられている。そこで、以下、図24に示す手順(§5−3で述べた手順)と異なる部分についてのみ、説明を行うことにする。具体的には、ステップS31,S32,S33,S35,S40,S42の各ステップは、図24に示す手順の処理と全く同じであり、フレーム間差分領域についてのjのループおよび背景差分領域についてのiのループが繰り返し実行されることになる。
ただ、図24に示すステップS34,S36,S37,S38,S39、S41(重複有無判定処理など)については、図34の流れ図では、ステップS34′,S36′,S38′,S39′、S41′に置き換えられている。
ここで、ステップS34′の処理では、第h番目の仮動作個体指標mm′h(t)として、第j番目のフレーム間差分領域fj(t)の外接矩形ffj(t)を設定する処理が行われる。ここで、「仮動作個体指標」とは、現段階では正式な動作個体指標mmではない「仮」の指標を意味する。当該仮動作個体指標mm′h(t)は、正式な動作個体指標mmとして利用するには不完全な形状であり、正式な動作個体指標mmとして利用するためには、後続する手順を経て、ステップS39′において補正を行う必要がある。
続くステップS35は、ステップS40までの手順を、i=1〜Imax まで繰り返し実行するループ処理である。iは、背景差分領域番号を示し、初期値は1、最大値はImax である。したがって、ステップS35からステップS40までのループ処理は、背景差分領域についてのループ処理ということになる。このループ処理の目的は、仮動作個体指標mm′h(t)に対する補正を、重複している背景差分領域di(t)の外接矩形ddi(t)を利用して行うことにある。
まず、ステップS36′において、第j番目のフレーム間差分領域fj(t)の外接矩形ffj(t)と、第i番目の背景差分領域di(t)の外接矩形ddi(t)とが作成され、これら両外接矩形ffj(t),ddi(t)について、矩形重複判定値VAL(Overlap)が求められる。両外接矩形ffj(t),ddi(t)について、重複部分があればVAL(Overlap)=1となり、重複部分がなければVAL(Overlap)=0になる。
続くステップS38′では、この矩形重複判定値VAL(Overlap)に基づく分岐が行われる。まず、矩形重複判定値VAL(Overlap)=1の場合は、両外接矩形ffj(t),ddi(t)に「重複部分有り」との判定がなされたことになるので、ステップS39′への分岐が行われ、仮動作個体指標mm′h(t)と、第i番目の背景差分領域di(t)の外接矩形ddi(t)とについて、包摂矩形を求め、当該包摂矩形を新たな仮動作個体指標mm′h(t)とする処理が行われる。任意の2組の矩形Ra,Rbについて包摂矩形Rcを求める方法は、図29(c) で説明したとおりである。
こうして、ステップS35〜S40のループ処理(iについてのループ処理)がi=1〜Imax まで繰り返し実行されると、フレーム間差分領域fj(t)の外接矩形ffj(t)に対して重複部分有りと判定された背景差分領域di(t)の外接矩形ddi(t)が見つかる度に、当該外接矩形ddi(t)とその時点の仮動作個体指標mm′h(t)を構成する矩形とについての包摂矩形が求められ、これを新たな仮動作個体指標mm′h(t)とする更新処理が行われる。これにより、不完全な矩形であった当初の仮動作個体指標mm′h(t)は徐々に修復されてゆくことになる。
こうして、iについてのループ処理が完了すると、ステップS41′へと進み、第h番目の動作個体指標mmh(t)が、その時点での第h番目の仮動作個体指標mm′h(t)、すなわち、不完全な形状について修復が完了した仮指標に基づいて作成される。たとえば、図28の個体検出画像Q(t1)−SMに含まれている矩形状の動作個体指標m1(t1)は、こうして作成された指標である。
こうして、ステップS41′において、第h番目の動作個体指標mmh(t)が作成されると、ステップS42からステップS32へと戻り、jを更新することにより、新たなフレーム間差分領域に基づいて新たな動作個体指標mmを作成するため、ステップS32〜S42のループ処理(jについてのループ処理)がj=1〜Jmax まで繰り返し実行される。
ここでは、図34の流れ図に示す処理の各手順を、図7に示す時刻t1における各画像D(t1),F(t1)に基づいて実行する具体例に即して説明しておく。
図35の上段には、図34の流れ図において、j=1,i=1としたときの処理内容が示されている。まず、図35(a) には、ステップS32において、j=1に設定したときの処理対象となる第j番目(j=1)のフレーム間差分領域f1(t1)を含む第1の二値画像が示されている。ステップS34′では、このフレーム間差分領域f1(t1)の外接矩形ff1(t1)が作成される。なお、このフレーム間差分領域f1(t1)は、本来は、図7のF(t1)内に示すものと同じであるが、ここでは便宜上、図示のように、すべての足の部分に欠けが生じていたものとして、以下の説明を行うことにする。したがって、フレーム間差分領域f1(t1)についての外接矩形ff1(t1)は、図示のとおり、欠けた足の部分を含まない、若干高さが縮んだ矩形になる。
ステップS34′では、この外接矩形ff1(t1)が、第h番目(h=1)の仮動作個体指標mm′1(t1)として設定されることになる。図35(b) には、こうして設定された仮動作個体指標mm′1(t1)が示されている(「mm′1」の「1」は、動作個体番号h=1に対応する)。図示のとおり、この仮動作個体指標mm′1(t1)は、一部に欠けを生じた不完全な矩形になっており、補正が必要である。
一方、図35(c) には、ステップS35において、i=1に設定したときの処理対象となる第i番目(i=1)の背景差分領域d1(t1)を含む第2の二値画像が示されている。図示のとおり、この背景差分領域d1(t1)については外接矩形dd1(t1)が作成される。背景差分領域d1(t1)は、足の部分に欠けを生じていない完全な個体領域であるので、外接矩形dd1(t1)も欠けが生じていない完全な矩形になる。
そして、図35(d) に示すように、これら外接矩形ff1(t1),dd1(t1)についての重複有無判定がなされる(ステップS36′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形ff1(t1),dd1(t1)についての重複有無判定演算を行えばよい。図35(d) に示す例の場合、両矩形はハッチングを施した部分において重複しているので、VAL(Overlap)=1となり、「重複部分有り」との判定結果が得られる。
この判定結果は、図35(c) に示す外接矩形dd1(t1)を利用して、図35(b) に示す現時点での仮動作個体指標mm′1(t1)に対して補正を行うことができることを意味する。そこで、ステップS38′からステップS39′へと移行し、補正処理(包摂矩形を作成して置き換える処理)が実行される。すなわち、仮動作個体指標mm′1(t1)と外接矩形dd1(t1)とについて、包摂矩形を求め、当該包摂矩形を新たな仮動作個体指標mm′1(t1)とする処理が行われる。
図35(e) は、こうして作成された新しい仮動作個体指標mm′1(t1)を示している。この新しい仮動作個体指標mm′1(t1)内の破線は、包摂矩形の元になった2組の矩形の輪郭を示している。図35(b) に示す古い仮動作個体指標mm′1(t1)を構成する外接矩形において欠けていた部分が、図35(e) に示す新しい仮動作個体指標mm′1(t1)を構成する包摂矩形では修復されていることがわかる。
続いて、ステップS40において、i=2への更新が行われ、再びステップS35からの処理が実行される。図35の下段には、図34の流れ図において、j=1,i=2としたときの処理内容が示されている。まず、図35(f) には、i=2に設定したときの処理対象となる第i番目(i=2)の背景差分領域d2(t1)を含む二値画像が示されている(図5のD(t1)内に示すものと同じ)。この背景差分領域d2(t1)については、図示のとおり、外接矩形dd2(t1)が作成される。
そして、図35(g) に示すように、外接矩形ff1(t1),dd2(t1)についての重複有無判定がなされる(ステップS36′)。図35(g) に示す例の場合、両矩形には重複部分が全くないため、VAL(Overlap)=0となり、「重複部分無し」との判定結果が得られる。
この判定結果は、図35(g) に示す外接矩形dd2(t1)は、図35(e) に示す現時点の仮動作個体指標mm′1(t1)に対する補正には利用できないことを意味する。そこで、ステップS38′からステップS40へと移行し、ステップS39′の補正処理(包摂矩形を作成して置き換える処理)は実行されない。
こうして、ステップS35からステップS40までのループ処理が、i=1〜Imax まで完了すると、ステップS41′において、図35(e) に示す現時点での仮動作個体指標mm′1(t1)に基づいて、正式な動作個体指標mm1(t1)を作成する処理が行われる。図35(h) は、こうして作成された正式な動作個体指標mm1(t1)を示すものである。この例の場合、正式な動作個体指標mm1(t1)は、仮動作個体指標mm′1(t1)と全く同じ矩形状の指標によって構成されており、図28の個体検出画像Q(t1)−SMに示されている動作個体指標m1(t1)と同じものになる。
要するに、個体認識部160内の動作個体認識部162は、重複有無判定部150が行った上記簡易判定法によって、外接矩形についての重複部分が有る、との判定結果が得られたフレーム間差分領域f1(t1)を占める個体A1を動作個体と認識する。そして、検出個体表示部170は、このような認識に基づいて、図35に示すように、動作個体と認識された個体A1を示す矩形枠からなる動作個体指標mm1(t1)(図35(h) )を、当該動作個体A1が占めるフレーム間差分領域f1(t1)の外接矩形ff1(t1)に対して、当該動作個体A1が占める背景差分領域d1(t1)の外接矩形dd1(t1)に基づく補正を施すことにより作成し、これを個体検出画像Q(t)上に表示することになる。
具体的には、検出個体表示部170は、動作個体A1が占めるフレーム間差分領域f1(t1)の外接矩形ff1(t1)と当該動作個体A1が占める背景差分領域d1(t1)の外接矩形dd1(t1)とについて、両外接矩形を包摂する包摂矩形を求め(図35(e) )、求めた包摂矩形に基づいて動作個体指標mm1(t1)を作成する。
以上の処理により、第1番目(h=1)の動作個体指標mm1(t1)が、矩形状図形として作成されたことになる。そこで、ステップS42において、j=2への更新が行われ、再びステップS32からの処理が実行される。
図36の上段には、図34の流れ図において、j=2,i=1としたときの処理内容が示されている。まず、図36(a) には、ステップS32において、j=2に設定したときの処理対象となる第j番目(j=2)のフレーム間差分領域f2(t1)を含む第1の二値画像が示されている。ステップS34′では、このフレーム間差分領域f2(t1)の外接矩形ff2(t1)が作成される。なお、このフレーム間差分領域f2(t1)は、本来は、図7のF(t1)内に示すものと同じであるが、ここでは便宜上、図示のように、すべての足の部分に欠けが生じていたものとして、以下の説明を行うことにする。したがって、フレーム間差分領域f2(t1)についての外接矩形ff2(t1)は、図示のとおり、欠けた足の部分を含まない、若干高さが縮んだ矩形になる。
ステップS34′では、この外接矩形ff2(t1)が、第h番目(h=2)の仮動作個体指標mm′2(t1)として設定されることになる。図36(b) には、こうして設定された仮動作個体指標mm′2(t1)が示されている(「mm′2」の「2」は、動作個体番号h=2に対応する)。図示のとおり、この仮動作個体指標mm′2(t1)は、一部に欠けを生じた不完全な矩形になっており、補正が必要である。
一方、図36(c) には、ステップS35において、i=1に設定したときの処理対象となる第i番目(i=1)の背景差分領域d1(t1)を含む第2の二値画像が示されている。図示のとおり、この背景差分領域d1(t1)については外接矩形dd1(t1)が作成される。背景差分領域d1(t1)は、足の部分に欠けを生じていない完全な個体領域であるので、外接矩形dd1(t1)も欠けが生じていない完全な矩形になる。
そして、図36(d) に示すように、これら外接矩形ff2(t1),dd1(t1)についての重複有無判定がなされる(ステップS36′)。具体的には、図29(b) の右側に示す論理演算式に基づいて、外接矩形ff2(t1),dd1(t1)についての重複有無判定演算を行えばよい。図36(d) に示す例の場合、両矩形には重複部分が全くないため、VAL(Overlap)=0となり、「重複部分無し」との判定結果が得られる。
この判定結果は、図36(c) に示す外接矩形dd1(t1)は、図36(b) に示す現時点の仮動作個体指標mm′2(t1)に対する補正には利用できないことを意味する。そこで、ステップS38′からステップS40へと移行し、ステップS39′の補正処理(包摂矩形を作成して置き換える処理)は実行されない。
続いて、ステップS40において、i=2への更新が行われ、再びステップS35からの処理が実行される。図36の下段には、図34の流れ図において、j=2,i=2としたときの処理内容が示されている。まず、図36(e) には、i=2に設定したときの処理対象となる第i番目(i=2)の背景差分領域d2(t1)を含む二値画像が示されている(図5のD(t1)内に示すものと同じ)。この背景差分領域d2(t1)については、図示のとおり、外接矩形dd2(t1)が作成される。
そして、図36(f) に示すように、外接矩形ff2(t1),dd2(t1)についての重複有無判定がなされる(ステップS36′)。図36(f) に示す例の場合、両矩形はハッチングを施した部分において重複しているので、VAL(Overlap)=1となり、「重複部分有り」との判定結果が得られる。
この判定結果は、図36(e) に示す外接矩形dd2(t1)を利用して、図36(b) に示す現時点での仮動作個体指標mm′2(t1)に対して補正を行うことができることを意味する。そこで、ステップS38′からステップS39′へと移行し、補正処理(包摂矩形を作成して置き換える処理)が実行される。すなわち、仮動作個体指標mm′2(t1)と外接矩形dd2(t1)とについて、包摂矩形を求め、当該包摂矩形を新たな仮動作個体指標mm′2(t1)とする処理が行われる。
図36(g) は、こうして作成された新しい仮動作個体指標mm′2(t1)を示している。この新しい仮動作個体指標mm′2(t1)内の破線は、包摂矩形の元になった2組の矩形の輪郭を示している。図36(b) に示す古い仮動作個体指標mm′2(t1)を構成する外接矩形において欠けていた部分が、図36(g) に示す新しい仮動作個体指標mm′2(t1)を構成する包摂矩形では修復されていることがわかる。
こうして、ステップS35からステップS40までのループ処理が、i=1〜Imax まで完了すると、ステップS41′において、図36(g) に示す現時点での仮動作個体指標mm′2(t1)に基づいて、正式な動作個体指標mm2(t1)を作成する処理が行われる。この例の場合、正式な動作個体指標mm2(t1)は、仮動作個体指標mm′2(t1)と全く同じ矩形状の指標によって構成されており、図28の個体検出画像Q(t1)−SMに示されている動作個体指標m2(t1)と同じものになる。
なお、この§6−3で述べる実施例の場合も、必要があれば、図35(h) に示す包摂矩形mm1(t1)や図36(g) に示す包摂矩形mm2(t1)に基づいて、その内部に含まれるべき人型の領域を探し出し、矩形ではなく人型の動作個体指標mを表示させることは可能であるが、こうして表示させた人型の動作個体指標mは、不適切な指標になる可能性があるため、実用上は避けた方が好ましい。
すなわち、§6−1,§6−2で述べた実施例の場合は、外接矩形をそのまま指標として表示する代わりに、背景差分画像D(t)に含まれている背景差分領域di(t2)の中から、当該外接矩形内に位置するものを選択し、選択された背景差分領域di(t)に基づいて指標を作成するようにすれば、人型の静止個体指標sや動作個体指標mを作成することができ、図13〜図16に例示するようなバリエーションに係る指標を作成することも可能である。
しかしながら、この§6−3で述べる実施例の場合、たとえば、図35(h) に示す包摂矩形mm1(t1)は、特定の背景差分領域di(t)の外接矩形にはなっておらず、より広い領域を占める矩形になる。このため、当該包摂矩形mm1(t1)内に位置する背景差分領域di(t)を正確に特定することはできない。もちろん、図35(h) に示す包摂矩形mm1(t1)は、図35(a) に示すフレーム間差分領域f1(t1)を含む矩形ではあるが、フレーム間差分領域f1(t1)は、欠けた部分を含んだ不完全な個体形状を示すものであり、補正がなされていない状態のものであるから、これに基づいて動作個体指標mを作成することは好ましくない。
したがって、実用上、この§6−3で述べる実施例では、図35(h) に示す例のように、最終的に仮動作個体指標mm′h(t)として得られた包摂矩形に基づいて、矩形状の動作個体指標mmh(t)を作成して表示するのが好ましい。
<<< §7.本発明に係る個体の検出装置を用いた監視システム >>>
これまで述べてきた実施例は、人を検出対象となる個体として用いた例であるが、もちろん、本発明は動物、車両、船舶、航空機、種々の機械器具、玩具など、様々な対象物を個体として検出する用途に利用することが可能である。
また、検出対象となる個体が密集している環境では、原画像P(t)上において複数の個体が重なり合うため、背景差分領域di(t)やフレーム間差分領域fi(t)が、複数の個体を含んだ融合領域になる可能性もあるが、上述した処理を行う上では、たとえば、手をつないだ2人の人物が1つの融合個体として認識されたとしても、何ら支障は生じない。この場合、動作個体指標mは、手をつないだ2人の人物を1つの動作個体として示すことになる。
したがって、図1に示す個体の検出装置100は、種々の環境下で種々の対象物を監視するための監視システムとして利用することが可能である。図37は、本発明に係る個体の検出装置を用いた監視システムの一例を示すブロック図である。図示のとおり、この監視システムは、クライアントシステム200と、このクライアントシステム200に対してネットワーク300(たとえば、インターネット)を介して接続されたサーバシステム400と、によって構成される。
図示のとおり、クライアントシステム200は、定点カメラ210と、ディスプレイ装置220と、クライアントコンピュータ230と、を備えており、サーバシステム400は、サーバコンピュータ410を備えている。クライアントコンピュータ230とサーバコンピュータ410とは、ネットワーク300を介して相互に通信を行うことができる。
定点カメラ210は、所定の撮影対象領域に対して動画撮影を行うことにより、時系列で並んだフレーム単位の画像を取得する機能を有しており、この定点カメラ210が取得したフレーム単位の画像は、これまでの説明で述べた原画像P(t)として、クライアントコンピュータ230に与えられる。クライアントコンピュータ230は、定点カメラ210から与えられた原画像P(t)を入力して、所定の処理を実行する。ディスプレイ装置220は、クライアントコンピュータ230の指示に基づいて画像表示を行う。一方、サーバコンピュータ410は、クライアントコンピュータ230とネットワーク300を介した通信を行いながら、所定の処理を実行する。
クライアントコンピュータ230には、専用のクライアントコンピュータ用プログラムがインストールされており、このクライアントコンピュータ用プログラムに基づく動作により、図1に示す個体の検出装置100としての一部の処理を実行する。一方、サーバコンピュータ410には、専用のサーバコンピュータ用プログラムがインストールされており、このサーバコンピュータ用プログラムに基づく動作により、図1に示す個体の検出装置100としての他の一部の処理(クライアントコンピュータ230側では行われない処理)を実行する。
クライアントコンピュータ230の機能により、ディスプレイ装置220の表示画面には、定点カメラ210による撮影画像(原画像P(t))がリアルタイムで表示され、更に、個体認識部160による認識結果を示す情報(たとえば、静止個体と認識された個体を示す静止個体指標sや動作個体と認識された個体を示す動作個体指標m)が表示される。この監視システムを利用する監視員は、ディスプレイ装置220の表示画面に表示された撮影画像と上記認識結果を示す情報とにより、リアルタイムで撮影画像上に現れている静止個体と動作個体とを視覚的に区別して把握することができる。
また、監視員は、必要に応じて、クライアントコンピュータ230に対して何らかの操作入力を与えることにより、個体の検出装置100としての動作に対して指示を与えることができる。たとえば、図17に例示するような表示モードの切替を行うことができる。このように、この監視システムを利用する監視員にとっては、クライアントシステム200が直接の操作対象ということになるが、サーバシステム400がクラウド環境を提供する役割を果たし、クライアントシステム200に代わって一部の処理を実行することができる。
図1に示す個体の検出装置100の各構成要素の役割を、クライアントシステム200とサーバシステム400との間でどのように分担するかは、当該監視システムの用途、定点カメラ210による撮影画像の情報量、クライアントコンピュータ230の処理能力などを考慮して、適宜定めればよいが、一般的には、リアルタイムでの処理を行うために高速性が要求される処理についてはクライアントシステム200側に担当させるようにし、クライアントコンピュータ230によって処理させるには演算負担が大きすぎる処理についてはサーバシステム400側に担当させるようにするのが好ましい。
なお、図37に示す監視システムでは、図示のとおり、クライアントコンピュータ230が外部に対して警報を発する機能を有している。図示の例の場合、警報は監視員に対してなされるものであり、ランプの点灯やブザーの鳴動などによる報知がなされる。もちろん、ネットワーク300を介して、サーバシステム400やその他の場所に警報を伝えるようにしてもかまわない。
この警報は、個体認識部160による静止個体もしくは動作個体の認識結果に基づいて発せられるものであり、予め設定された発報条件が満たされた場合に、外部に対してなされるものである。たとえば、「静止個体の総数が所定の基準値を超えた場合」あるいは「動作個体の総数が所定の基準値を超えた場合」といった発報条件を設定しておき、個体認識部160に、各時点で認識された静止個体や動作個体の総数を計数する機能をもたせておけば、上記発報条件が満たされた場合に外部へ警報を発することができる。もちろん、「静止個体の総数が所定の基準値を超えた状態が所定の基準時間以上継続した場合」あるいは「動作個体の総数が所定の基準値を超えた状態が所定の基準時間以上継続した場合」というように、時間を含む発報条件を設定することも可能である。
なお、図37に示す監視システムは、クライアントシステム200とサーバシステム400とによって構成され、図1に示す個体の検出装置100として必要な処理を両システムで分担して実行するシステムであるが、もちろん、図示のクライアントコンピュータ230に必要な処理をすべて実行させるようにして、クライアントコンピュータ230のみが独立して、図1に示す個体の検出装置100として機能するようにしてもかまわない。
この場合、クライアントコンピュータ230は、必ずしもネットワーク300に接続されている必要はなく、いわゆるスタンドアロン型のコンピュータであってかまわない。この場合、監視システムは、所定の撮影対象領域に対して動画撮影を行うことにより、時系列で並んだフレーム単位の画像を取得する定点カメラ210と、この定点カメラが取得したフレーム単位の画像を原画像として入力して、所定の処理を実行するコンピュータ230と、このコンピュータ230の指示に基づいて画像表示を行うディスプレイ装置220と、によって構成されることになり、コンピュータ230は、インストールされたプログラムに基づく動作により、図1に示す個体の検出装置100として機能することになる。
図37に示すクライアントシステム200は、定点カメラ210で撮影した画像をクライアントコンピュータ230で即座に処理し、その結果をディスプレイ装置220にリアルタイムで表示する機能をもった監視システムである。このような監視システムを用いれば、監視員は、リアルタイムで監視を行うことが可能になる。ただ、実用上は、必ずしも、このようなリアルタイムの監視が必要になるわけではなく、過去の撮影画像を後に確認しながら不審者の有無を確認するような業務(ここでは、便宜上、事後監視と呼ぶ)を行うケースもある。
このような事後監視を行うためには、たとえば、図37に示すクライアントシステム200において、定点カメラ210の代わりに、事前に撮影された動画データ(所定の撮影対象領域に対して動画撮影を行うことにより得られた、時系列で並んだフレーム単位の画像)を保存した入力用の画像保存装置を用いて監視システムを構成すればよい。入力用の画像保存装置としては、ビデオ録画再生機器やコンピュータ用のハードディスク装置を用いればよい。クライアントコンピュータ230は、定点カメラ210からのフレーム単位の画像を原画像として入力して所定の処理を実行する代わりに、入力用の画像保存装置に保存されているフレーム単位の画像を原画像として入力して、所定の処理を実行することになる。
たとえば、図37に示すクライアントシステム200において、定点カメラ210を入力用の画像保存装置(たとえば、ビデオ録画再生機器)に置き換えることにより事後監視システムを構成しておけば、ビデオ録画再生機器によって過去に撮影された動画を再生し、これをクライアントコンピュータ230によって処理することにより、ディスプレイ装置220上には、静止個体指標や動作個体指標を原画像(再生された動画)に重畳させた個体検出画像を表示させることができるので、リアルタイムではないものの、過去の撮影画像上に存在する不審者を発見する用途に役立てることができる。
もちろん、定点カメラ210と入力用の画像保存装置との双方を設けておけば、クライアントコンピュータ230は、定点カメラ210から入力した画像に基づいてリアルタイムでの監視を行うこともできるし、画像保存装置から入力した画像に基づいて事後監視を行うこともできる。
また、ディスプレイ装置220の代わりに、クライアントコンピュータ230から与えられる画像を保存する出力用の画像保存装置を設けることにより、事後監視に利用することも可能である。たとえば、図37に示すクライアントシステム200において、ディスプレイ装置220を出力用の画像保存装置に置き換えることにより事後監視システムを構成しておけば、クライアントコンピュータ230に、定点カメラ210で撮影された画像に基づいて個体検出画像を作成させ、この個体検出画像からなる動画を、ディスプレイ装置220上に表示させる代わりに、出力用の画像保存装置に保存させることができる。
たとえば、出力用の画像保存装置としてビデオ録画再生機器を用い、クライアントコンピュータ230から出力される個体検出画像からなる動画を、DVD−Rなどの光学式情報記録媒体に保存するようにすれば、保存された動画は、定点カメラ210で撮影された動画に静止個体指標や動作個体指標を重畳させたものになるので、図示のシステムとは全く別のビデオ録画再生機器等によって再生しながら、事後監視業務を行うことも可能である。
もちろん、ディスプレイ装置220と出力用の画像保存装置との双方を設けておけば、クライアントコンピュータ230は、出力画像をディスプレイ装置220に表示させることもできるし、出力用の画像保存装置に保存させることもできる。
また、入力用の画像保存装置と出力用の画像保存装置との双方を設けるようにしてもかまわない。この場合、実用上は、1台の画像保存装置を、入力用の画像保存装置および出力用の画像保存装置として共用することもできる。あるいは、入力用の画像保存装置や出力用の画像保存装置を、クライアントシステム200側ではなくサーバシステム400側に設け、クライアントコンピュータ230が、ネットワーク300を介して原画像を入力し、処理後の個体検出画像をネットワーク300を介してサーバシステム400側に出力して保存するような形態をとることも可能である。