<<実施形態1>>
以下、添付図面に従って本発明に係る各実施形態について説明する。
(ハードウェア構成)
図1は本発明の実施形態における情報処理装置のハードウェア構成を示すブロック図である。本実施形態に係る情報処理装置は、CPU101、ROM102、RAM103、2次記憶装置104、画像取得装置105、入力装置106、表示装置107、ネットワークインターフェース(ネットワークI/F)108、及びバス109を含む。
CPU101は、ROM102やRAM103に格納されたプログラムに従って命令を実行する演算装置である。ROM102は、不揮発性メモリであり、本発明のプログラムやその他の制御に必要なプログラムやデータを格納する。RAM103は、揮発性メモリであり、画像データやパターンの判別結果などの一時的なデータを記憶する。2次記憶装置104は、例えばハードディスクドライブやフラッシュメモリーなどの書き換え可能な2次記憶装置である。2次記憶装置は画像情報や情報処理プログラムや各種設定内容などを記憶し、記憶された情報はRAM103に転送されてから、CPU101により利用される。
画像取得装置105は、例えば、デジタルビデオカメラ、ネットワークカメラ、又は赤外線カメラなどの撮影装置で撮影された画像を取得する。また、画像取得装置105は、ハードディスクなどに蓄積された撮影画像を取得してもよい。入力装置106は、例えばキーボード、マウス、又はカメラに取り付けられたボタンなどであり、ユーザからの入力の受付、及び入力情報の取得をする。入力装置106は、例えばマイクと音声認識装置により構成されてもよく、音声によりユーザからの入力の受付、及び入力情報の取得をしてもよい。表示装置107は、ブラウン管CRTや液晶ディスプレイ、あるいはスピーカなど、ユーザの視覚や聴覚を通じて情報を提示する装置であり、例えば処理結果を画面に表示する。ネットワークI/F108は、例えば、インターネットやイントラネットなどのネットワークと接続を行うモデムである。バス109は、これらを接続して相互にデータの入出力を行う。本実施形態に係る情報処理装置は、オペレーティングシステムの上で動作するアプリケーションとして実装される。
(機能構成)
図2は本実施形態に係る情報処理装置の機能構成を表すブロック図である。201は画像取得手段であり、画像取得装置105を用いて解析対象の画像を取得する。202は特徴量抽出手段であり、画像取得手段201において取得された画像(以下「取得画像」という)を解析し、画像の中に含まれる特徴量を抽出する。203は差分算出手段であり、後述の記憶手段204に記憶された背景モデルに含まれる特徴量情報と、取得画像の特徴量との差分を求め、背景モデルと解析対象の画像の特徴量を比較するものである。204は記憶手段であり、RAM103、又は2次記憶装置104により構成される。記憶手段204は、画像中の各位置における状態を、特徴量抽出手段202で抽出された特徴量を示す特徴量情報や、後述する確信度を示す確信度情報を含む、背景モデルとして記憶する。ここで画像中の位置とは、例えば画素を表す位置であり、画像中の左上の端点を原点とする座標で表される。205は状態判定手段であり、差分算出手段203の結果に応じて、記憶手段204に記憶された状態の情報の中から、取得画像に類似する状態が存在するか否かを判定する。そして、取得画像に類似する状態が存在しない場合はその旨を示す情報を、取得画像に類似する状態が存在する場合は、その類似する状態を示す情報を出力する。206は前景検出手段であり、状態判定手段205の結果に基づいて、取得画像中の各位置が前景部分であるか背景部分であるかを判定し、前景である領域を検出する。207は被写体判定手段であり、前景検出手段206において前景と判定された領域から、検出対象である特定の被写体が存在する領域を検出する。なお、本実施形態では、特定の被写体は人体である例について説明する。208は確信度算出手段であり、被写体判定手段207の結果に基づいて、画像の各位置の被写体として確信度を算出する。209は背景モデル更新手段であり、状態判定手段205と確信度算出手段208の結果に基づいて、記憶手段204に記憶されている背景モデルの更新を行う。
本実施形態に係る情報処理装置は、前景部分と背景部分を区別するために、被写体(例えば人体)が表されていることの確からしさを示す指標である確信度という概念を導入する。そして、情報処理装置は、過去に解析された画像に関する特徴量情報、及び確信度情報を用いて、解析対象の取得画像の領域において、確信度情報が一定の値を超える過去の状態と類似する領域は、時間の経過によらず前景として取り扱う。これにより、人物など特定の被写体を、時間の経過と共に背景と判定することを防ぎ、恒常的に検出することが可能となる。
(動作フロー)
続いて、本実施形態に係る全体の処理の流れについて図3を用いて説明する。まず、画像取得手段201は、例えば所定時間ごとに撮像された画像を取得する(S301)。特徴量抽出手段202は取得画像から特徴量を抽出する。続いて、差分算出手段203は、記憶手段204より背景モデルに含まれる特徴量情報を読み出して、取得画像の特徴量との差分を計算する(S302)。
状態判定手段205は、差分算出手段203の結果に基づいて、記憶手段204中に記憶された状態の中から、取得画像の状態に類似する状態が存在するか否かを判定する。そして、類似する状態が存在する場合、その状態がどの状態であるかを判定する(S303)。前景検出手段206は、取得画像について、背景モデルに含まれる確信度情報や状態の出現時間などにより前景領域を検出する(S304)。被写体判定手段207は、例えば、被写体と同様の特徴を有する画像に基づいて、前景領域に被写体が存在しているか否かの判定を行う(S305)。そして、被写体判定の結果に関する情報が出力される(S306)。ここで、情報処理装置は、出力された情報に基づき、取得画像に矩形を重ね描きして表示装置107に表示することにより、ユーザに検出対象の存在を通知することができる。また、情報処理装置は、出力された情報に基づいて、侵入検出や置き去り検出などを実行することができる。
被写体判定手段の検出結果は、確信度算出手段208にも入力され、確信度算出手段208は、被写体判定手段207の検出結果に基づいて確信度を算出する(S307)。背景モデル更新手段209は、状態判定手段205と確信度算出手段208の結果に基づいて、記憶手段204に記憶されている背景モデルの更新を行う(S308)。そして、電源OFFなどによるユーザからの終了指示の判定を行う(S309)。終了指示が行われるまで、S301からS308の処理を繰り返す。なお、本フローにおいては、S308の後に終了指示の判定を実行するが、これに限られない。例えば、電源OFFされた場合は、いかなるステップにおいても直ちに処理を中止し、直近のS301から中止された時点までの処理により得られた情報を破棄することとしてもよい。
上記の説明における各ステップは例示であり、全てのステップが実行されなくてもよい。例えば、画像を取得し(S301)、過去の取得画像に対応する確信度情報を用いて前景検出(S304)を実行し、確信度算出(S307)で確信度を算出して、前景検出後に確信度情報を更新(S308)することとしてもよい。これによれば、確信度情報を用いて前景を検出することで、確信度情報の高い被写体が存在する領域を恒常的に前景として検出し続けることが可能となる。先に計算され記憶された確信度を用いることで、画像を取得(S301)後、高速に前景検出を実行することができる。
(差分算出処理)
S302の差分算出処理の詳細について、図4を用いて説明する。まず、特徴量抽出手段202において、各位置における取得画像の状態を表す値として、特徴量を抽出する(S401)。
特徴量は、例えば、輝度、色、エッジを用いることができ、これらを組み合わせたものとしてもよく、また、特にこれらに限定されない。また、特徴量は、例えば画素ごとに抽出してもよく、画素ごとでなく、複数の画素の集合である部分領域ごとに抽出してもよい。なお、本説明においては、画素と部分領域とを区別して説明しているが、これらを区別する必要はなく、1つの画素も、一定の範囲を占めるという意味で領域である。部分領域ごとの特徴量は、例えば、8ピクセル四方の画素ブロック内の画素の平均輝度やDCT係数である。DCT係数とは、計数を求める画像の範囲について、離散コサイン変換(Discrete Cosine Transform)を実行した結果の数値である。取得画像がJPEG形式で符号化されている場合は、結果として符号化時に特徴量抽出が完了していることとなる。従って、この場合は、JPEG形式の取得画像よりDCT係数を直接取り出し、これを特徴量として使用するようにしてもよい。なお、本実施形態では、特徴量として、画素ごとの輝度を用いる場合について説明する。また、本実施形態においては、画像の左上の画素を開始点とし、以降、左より右へ、行ごとに下へ(ラスタスキャン順に)移動しながら以降の処理を行う。ただし、処理の順序はラスタスキャン順でなくてもよく、画像全てについて処理が実行されるものであれば、他のどのような順序であってもよい。
続いて、差分算出手段203は、記憶手段204に記憶されている背景モデルより、処理の対象となる画素の位置に対応する背景モデル情報を取得する(S402)。
ここで、記憶手段204に記憶されている背景モデルについて図5を用いて説明する。背景モデルは、画像内での各位置において、画像の特徴量を用いて状態を表したものである。背景モデルは、管理情報と背景モデル情報の2つの部分から構成される。管理情報は、画像内での位置と、各位置における背景モデル情報へのポインタとを対応付けた情報である。画像内での位置は、画像の画素の位置をXY位置で示した値であってもいいし、8ピクセル四方の画素のブロックの位置をラスタスキャン順に割り振った番号であってもよい。なお、本実施形態では、画像の画素の位置をXY位置で示した値とする。
背景モデル情報は、各位置における状態に関する情報を保持する。なお、画像内の一つの位置に対して複数の状態が存在する場合、各状態に対してそれぞれ背景モデル情報の要素が作成される。例えば花瓶などの新たな静止物体が出現することなどにより背景が変化すると、画像のある位置において状態が変化することとなる。この場合、記憶手段204は、その位置における状態の情報を新しく作成し、背景モデル情報に含める。この結果、背景モデル情報は、その位置に関して背景変化前と背景変化後の2つの情報を保持することとなる。
背景モデル情報における状態に関する情報は、図5に示すように、例えば、状態番号、特徴量情報、作成時刻、出現時間、及び確信度情報を含む。状態番号とは、画像内の同一の位置における複数の状態を識別するための、1番から順に発番される番号である。作成時刻とは、取得画像で初めてその状態が出現した時刻、または、背景モデル内に、初めてその状態に関する情報が作成された時刻である。出現時間は、作成時刻から現在までに、取得した画像内でその状態、あるいはその状態に類似した状態が出現した通算の期間である。作成時刻及び出現時間は、例えば、時間やフレーム番号及びフレーム数で表現される。なお、本実施形態では作成時間をフレーム番号で、出現時間をフレーム数で表現するものとする。確信度情報とは、その位置が被写体(本実施形態では人体)の一部であると確信される度合いを示す値である。被写体判定手段207の検出結果に基づき、確信度算出手段208により確信度が算出され、それに基づいて確信度情報が記憶される。なお、確信度または確信度情報は、本実施形態においては、0から100の範囲に値を持つものとし、最も確信度が高い場合の値を100とする。確信度及び確信度情報の算出方法については後述する。
画像の同一の位置について複数の状態の情報が作成される場合、背景モデル情報において、それらの情報を、例えばRAMや2次記憶装置の連続した番地に格納する。図5の例では、位置(0、0)について、1200番地に状態番号1の状態が、続いて、1201番地に状態番号2の状態が格納されている。これにより、管理情報において注目する位置とその次の位置のポインタを参照し、注目する位置のアドレスから次の位置のアドレスの一つ前までのデータを読み出すことで、当該位置の複数の状態をまとめて読み出すことができる。
図4の説明に戻る。差分算出手段203は、処理の対象となる位置に対応するポインタを管理情報から取得し、取得したポインタに基づいて、背景モデル情報からその位置に関する全ての状態の情報を取得する。図5の例では、画像の注目する位置が(0、0)である場合、差分算出手段203は、1200番地と1201番地の情報について、それぞれ状態番号、特徴量情報、作成時刻、出現時間、および確信度情報を取得する。
差分算出手段203は、S402で取得した、処理の対象となる位置に関する複数の状態の情報の中から、ひとつの状態について、特徴量情報を読み出す(S403)。そして、差分算出手段203は、取得画像の同じ位置の特徴量と、読み出した特徴量情報との差分を計算する(S404)。差分の計算においては、例えば、ここでは2つの特徴量の差の絶対値を用いるが、特にこれに限定されない。例えば、差を2乗した値や、2つの特徴量の比であってもよく、さらに、比の対数値であってもよい。そして差分値は、画像内での位置及び差分を計算した対象の状態番号と関連付けて、RAM103に一時的に記憶される。続いて、処理の対象となる位置における状態の情報で、差分を計算していないものが存在するか否かを判定する(S405)。そして、差分を計算していない状態の情報が存在する間は、S402で取得した処理の対象となる位置に関する複数の状態の情報の中から、差分の計算を実行していない状態について特徴量情報を読み出し(S406)、S403とS404の処理を繰り返す。
次に、差分算出手段203は、処理の対象となる位置において、S404で一時的に記憶した差分値のうち、最小値(以下、最小差分値という)を与える状態の情報を抽出する(S407)。そして、抽出された状態の情報の画像中の位置、状態番号、作成時刻、出現時間並びに確信度情報、及び取得画像の特徴量を、その状態における最小差分値と関連付けて、RAM103に一時的に記憶する(S408)。つまり、各位置において、差分算出手段203は、最小差分値を与える状態について、特徴量情報を取得画像の特徴量に置き換え、最小差分値を加えたものを一時的に記憶する。なお、以下では、この一時的に記憶された情報を最小差分値情報という。
最小差分値情報の一例を図6に示す。図6では、例えば、図5の背景モデルを用いるときに、画像中の位置(0、0)に注目し、当該位置における取得した画像の特徴量が105であった場合の例を示している。この場合、位置(0、0)に対応する状態の情報は、図5に示すように、2つ存在する。まず状態番号が「1」の状態の情報に着目すると、この情報における特徴量は「100」である。このため、差分値は|105−100|=5となる。一方、状態番号が「2」の場合、差分値は、|105−230|=125となる。このため、最小差分値は5であり、それを与えるのは、状態番号が「1」の状態の情報となる。このため、位置(0、0)における最小差分値情報では、状態番号は「1」、及び当該状態番号に対応して、作成時刻は「0」、出現時間は「300」、確信度情報は「0」、最小差分値は「5」となる。また、位置(0、0)における取得画像の特徴量は105であるので、位置(0、0)における最小差分値情報の、取得画像の特徴量も「105」とする。
次に、差分算出手段203は、画像中の全ての位置について、処理を実行したか否かを判定する(S409)。実行していなければラスタスキャン順に次の画素へ処理を進め(S410)、S401からS408までの処理を繰り返す。全位置についてS401からS408までの処理を実行した後に、一時記憶した全位置に対応する最小差分値情報を状態判定手段205に対して出力する(S411)。
なお、本実施形態に係る情報処理の開始時は背景モデルが記憶されていないため、例えば、最小差分値は取り得る最大値とする。このようにすることにより、後述するように、取得画像の全位置における状態が新規の状態と判定され背景モデルに記憶される。これにより、起動時の取得画像によって背景モデルの初期化を実行することができる。
(状態判定処理)
次に、図3のS303で実行される状態判定処理の詳細について、図7を用いて説明する。まず、図7の処理が開始されると、画像の左上の位置を開始位置として、最小差分値情報に含まれる位置を参照し、その位置についての最小差分値を取得する (S701)。次に、処理の対象となる位置における最小差分値を第一の所定値(A)と比較する(S702)。状態判定手段205は、処理の対象となる位置において、最小差分値が第一の所定値より小さければ、取得画像は最小差分値情報の状態番号で表される状態にあると判定する。一方、状態判定手段205は、最小差分値が第一の所定値以上であれば、背景モデルに記憶されているどの状態とも異なる、新しい状態であると判定する。なお、S302の差分算出処理の詳細説明で述べたように、本情報処理装置の開始時の画像については、最小差分値は最大値に設定されるので、全て新規の状態と判定される。
状態判定手段205は、S702において最小差分値が第一の所定値より小さいと判定されたときは、処理の対象となる位置における最小差分値情報中の出現時間を増加させ(S703)、S708へ進む。具体的には、本実施形態では出現時間を累積のフレーム数で表現しているため、出現時間を1つ増加(インクリメント)させる。
状態判定手段205は、S702において最小差分値が第一の所定値以上であると判定されたときは、処理の対象となる位置における最小差分値情報について、新しい状態を意味する特殊な番号(例:0)を状態番号として設定する(S704)。状態番号は、背景モデル更新手段209で、背景モデル更新時に改めて発番され、0以外の番号となる。次に、最小差分値情報の作成時刻を、状態番号0の状態が初めて作成された時刻、つまり、現在時刻に設定する(S705)。なお、本実施形態においては、上述の通り、作成時刻をフレーム番号で表しているため、取得画像のフレーム番号とする。そして、この状態が出現したのは現在の1フレームのみであるため、最小差分値情報の出現時間を1に設定し(S706)、確信度は、まだ被写体検出を行っていないので、0に設定する(S707)。
S703又はS704〜707の処理の結果に基づき、処理の対象となる位置、状態番号、取得画像の特徴量、作成時刻、出現時間、及び確信度情報を関連付けて状態判定情報としてRAM103に一時記憶する(S708)。そして、画像中の全ての位置について上述の処理を実行したか否かを判定し(S709)、実行が完了していなければラスタスキャン順に次の位置へ処理を進め(S710)、S701からS708までの処理を繰り返す。全位置について上述の処理を完了すると、全位置に対応する状態判定情報を前景検出手段206と背景モデル更新手段209へ入力する(S711)。
状態判定情報の一例を図8に示す。図8は、図6の最小差分値情報の例において、例えば第一の所定値Aが10であった場合の例である。この例の場合、状態判定手段205は、位置(0、0)および(1、0)については、最小差分値が第一の所定値より小さいため、状態番号、取得した画像の特徴量、作成時刻、確信度情報はそのままとし、出現時間を1増加させる。一方、位置(2、0)については、最小差分値が第一の所定値以上であるため、状態番号を0に、作成時刻を現在を表すフレーム数である316に、出現時間を1に、そして確信度情報を0に設定する。
状態判定処理では、取得画像の特徴量と近い特徴量情報が記憶手段204に記憶されているか否かを判定することにより取得画像の状態を察知する。そして、本実施形態に係る情報処理装置は、取得画像の特徴量と近い特徴量情報が記憶手段204に記憶されていた場合、当該特徴量情報に対応する情報を用いて後述の処理を実行する。これにより、後述の処理を実行する対象を限定し、処理全体としての処理量を抑えることができ、実行速度を高速化することができる。また、最小差分値が第一の所定値以上である場合、記憶手段204に記憶されている特徴量情報で、取得画像の特徴量に近いものは存在しないと判断し、新しい状態に関する情報を作成する。これにより、取得画像の特徴量が、記憶手段204に記憶されているいずれの特徴量情報にも近くないにもかかわらず、その記憶された情報に基づいて後述の処理を実行してしまうことを防ぐことができる。
(前景検出処理)
次に、図3のS304で実行される、前景検出処理の詳細について、図9を用いて説明する。前景検出処理が開始されると、画像の左上の位置を開始位置として、状態判定情報の位置を参照して、その位置の状態判定情報を取得する(S901)。次に、処理の対象となる位置における状態判定情報から確信度情報を抽出し、第二の所定値Bと比較する(S902)。前景検出手段206は、確信度が第二の所定値以上である場合、処理の対象となる位置における取得画像の状態は、検出対象である被写体の一部として「前景」と判定する(S903)。
一方、前景検出手段206は、S902において確信度が第二の所定値より小さい場合は、処理の対象となる位置における取得画像の状態は前景であると確定することができない。このため、前景検出手段206は、処理の対象となる位置における取得画像の状態が前景であるか否かを状態判定情報に含まれる時間の情報で判断する。ここで、時間の情報は、例えば、出現時間や、ある状態が初めて出現した時刻から現在までの時間(つまり、現在時刻と作成時刻との差の時間)を表す存在時間などを用いることができる。また、これ以外の情報であってもよい。なお、本実施形態では、出現時間を使用する場合について説明する。前景検出手段206は、状態判定情報から出現時間を抽出し、第三の所定値Cと比較する(S904)。出現時間が第三の所定値以上であれば、処理の対象となる位置における取得画像の状態は、過去から現在に至るまで撮影された画像に十分に長い時間写り込んでいる背景と判定する(S905)。一方、出現時間が第三の所定値より小さい場合は、処理の対象となる位置における取得画像の状態は、人間や、鞄、花瓶などといった一時的に出現した物体の一部が検出された結果とみなすことができる。このような一時的に出現した物体は前景と判定する(S903)。なお、前述の状態判定処理で、最小差分値が第一の所定値以上であった場合、状態判定情報の出現時間は1であり、作成時刻は現在のフレーム数となっていることから、このステップで前景として検出されることとなる。
前景検出手段206は、判定結果に基づき、処理の対象となる位置における取得画像の状態について、前景であるか背景であるかを示す前景フラグを前景フラグ情報として一時記憶する(S906)。前景フラグ情報の例を図10に示す。前景フラグ情報には、画像中の位置と前景フラグとが関連付けて保存される。そして、処理の対象となる位置における取得画像が、上述の処理で前景と判定された場合は、当該位置における前景フラグを「1」とし、背景と判定された場合は「0」とする。
図10の例について、図8を参照して説明する。なお、ここでは、第二の所定値Bは60とし、第三の所定値Cは30とする。この場合、位置(1、0)については、確信度情報がBより大きいため、前景と判定される(S902でYes)。一方、位置(0、0)と(2、0)については、確信度情報は共に0であり、この時点では前景と判定されない(S902でNo)。一方、(2、0)については出現時間が1であり、Cより小さい。このため、(2、0)は前景と判定される(S903でYes)。しかしながら、(0、0)については、出現時間がCより大きいため、前景と判定されない(S903でNo)。このため、前景フラグは、(0、0)については「0」であり、(1、0)と(2、0)については「1」となる。
次に、画像中の全ての位置について、処理を完了したか否かを判定し(S907)、完了していなければ次の位置へ処理を進め(S908)、S901からS906までの処理を繰り返す。前景検出手段206は、全位置に対してS901からS906までの処理を完了すると、連続する前景の位置を統合し、連続して前景である領域を求める処理(S909からS920)に移行する。
複数の位置における情報を統合するため、前景フラグ=1の位置を探索したか否かを示す探索フラグ情報を用いる。これは前景フラグ情報と同様に、画像中の位置に探索フラグを関連付けたものであり、探索フラグ=1によりその位置は探索済みであることを表す。前景検出手段206は、まず、全ての位置に対応する探索フラグを0にして、初期化を行う(S909)。
そして、画像の左上の位置を開始位置として、前景フラグ情報に含まれる位置を参照して、その位置の前景フラグを取得し(S910)、現在の位置の前景フラグが1であるか否かをチェックする(S911)。前景フラグが0であれば、その位置は背景であるので、現在の位置から、ラスタスキャン順で次の位置に移る(S912)。そして、次の位置について、前景フラグの取得(S910)及び前景フラグのチェック(S911)を実行する。S911において前景フラグが1であれば、その位置は前景であると判断できる。この場合、現在の位置の探索済みフラグが0か否か、つまり、未探索であるか否かをチェックする(S913)。探索済みフラグが1であればその位置は探索済みであるので、現在の位置から、ラスタスキャン順で次の位置に移る(S912)。
S913において探索済みフラグが0であれば、その位置は未探索であると判断できる。この場合、前景検出手段206は、まず、処理の対象となる位置を一時記憶し(S914)、当該位置における探索済みフラグを1にする(S915)。次に、連続して前景となる位置を探索するため、隣接する位置における前景フラグを取得し(S916)、隣接する位置で、前景フラグが1であるものが存在するか否かをチェックする(S917)。ここで、隣接する位置とは、例えば、位置が画素で表されている場合は、その画素に接する周囲の画素であり、位置が領域で表されている場合は、その領域に接する他の領域である。隣接する位置の少なくとも一つにおいて、前景フラグが1である場合、連続して前景となる位置があると判定できる。そして、前景フラグが1の隣接する位置において、探索済みフラグが0であるか否かを判定する(S918)。探索済みフラグが0であれば未探索であるため、その隣接する位置を一時記憶する(S914)と共に、探索済みフラグを1に設定する(S915)。そして、当該隣接する位置のさらに隣接する位置において前景フラグを取得し(S916)、前景フラグが1の場合は探索済みフラグが0であるか否かを確認する。前景フラグが1である隣接する位置が発見できなくなるまで(S917でNo)、又は、前景フラグが1である隣接する位置が全て探索済みとなるまで(S917でYes、S918でNo)、S914〜S918の処理を繰り返す。
S914からS918までの処理で前景の連続する位置が探索されることにより、この連続する位置により所定の領域が定まる。そして、前景検出手段206は、この領域を含む外接矩形(以下、この外接矩形を「前景領域」という)を求め、当該前景領域の左上の位置と右下の位置を、RAM103に一時記憶する(S919)。次に、これらの位置に対応する出現時間を状態判定情報より取得し、その平均値を求め、RAM103に一時記憶する(S920)。
画像中の全位置について、S910からS920までの処理を行ったか否かを判定し(S921)、行っていなければ、現在の位置から、ラスタスキャン順で次の画素に移る(S912)。なお、ここで言う「現在の位置」とは、S910で取得された位置のことである。全位置について、S910からS920までの処理が完了していた場合、一時保存された前景領域の左上の位置と右下の位置の数をカウントする。そして、前景領域の数とともに、前景領域の左上の位置と右下の位置、平均出現時間を、前景領域情報として一時保存する。前景領域情報は、被写体判定手段207に入力される(S922)。図11は前景領域情報の一例である。図11の例では、前景領域の数が2の場合の例を示している。前景領域の位置及び平均出現時間は、連続したアドレスに記憶され、その先頭アドレスはポインタにより表される。例えば、図11では、前景領域数が2であり、ポインタが1400であることから、前景領域の位置及び平均出現時間の情報は、1400番地と1401番地に格納されていることが分かる。
上述の前景検出処理により、確信度が高い被写体(人物)は常に前景と判定する一方で、確信度の低い置き去り物は時間の経過と共に背景とみなすことで、検出対象と、そうでないものを区別して判定することが可能となる。また、一時的に出現した物体は、少なくとも所定の期間は前景として検出し続けることとなり、例えば検出結果を表示装置107に表示することで、ユーザに画像の変化を通知することができる。さらに、前景領域を求め、前景領域以外の領域においては後述の処理を実行しないようにすることにより、検出精度を向上させ、また、全体の処理量を抑えることが可能となる。
(被写体判定処理)
次に、図3のS305で実行される前景領域からの被写体判定処理、及びS306で実行される物体領域の出力について、図12を用いて詳細に説明する。被写体判定処理では、被写体判定手段207は、上記の前景領域に対して被写体の検出処理を実行し、当該領域に被写体が存在するか否かの判定を行う。処理が開始されると、被写体判定手段207には取得画像が入力される(S1201)。次に、S304の前景検出処理で得られた前景領域情報から、一つの前景領域について、その位置に関する情報を取得する(S1202)。続いて、その位置に関する情報で特定される領域において、被写体の検出処理を実行する(S1203)。
被写体の検出処理については、例えば、人体を検出する方法が米国特許出願公開第2007/0237387号明細書に記載されている。当該文献では、所定の大きさの検出ウィンドウを入力画像上で走査させ、検出ウィンドウにより画像を切り出し、切り出されたパターン画像に対してその画像が被写体であるか否かの判別を行う。また、当該文献では、当該、この判別に用いる判別器を、多くの弱判別器の組み合わせにより構成している。そして、その弱判別器における学習及び判定を統計的学習方法の一つであるアダブーストを用いて実行することで、処理全体としての判別精度を向上させている。弱判別器はHoG(Histogram of oriented gradients)特徴量に基づいて学習及び判定を実行するように構成されている。なお、HoG特徴量は、局所領域の輝度の勾配方向をヒストグラム化したものである。また、米国特許出願公開第2007/0237387号明細書では、この判別器を直列に繋ぎ、カスケード型の検出器を構成するようにしている。カスケード型の検出器では、前段において単純な判別器を用いて、明らかに被写体でないパターンの候補を除去する。そして、前段の判別器で除去されなかった候補に対して、より高い識別性能を持つ後段の判別器を適用し、被写体か否かの判別を行う。
続いて、被写体判定手段207は、S1203において、前景領域内に被写体を検出したか否かを判定し(S1204)、前景領域ごとに被写体フラグを付与し、RAM103等に一時的に記憶する。被写体フラグは、被写体を検出した前景領域については1とし(S1205)、被写体を検出しなかった前景領域については0とする(S1206)。被写体判定手段207は、前景領域情報に含まれる全ての前景領域について処理を実行したか否かを判定する(S1207)。そして、未完了の場合は次の前景領域の処理に移り(S1208)、S1202からS1206までの処理を繰り返す。全前景領域について処理が完了している場合、上述の前景領域情報に被写体フラグを付加したものを物体領域情報として出力する(S1209)。物体領域情報は、本実施形態に係る情報処理装置の外部、及び確信度算出手段208に対して出力される。
図13に、物体領域情報の一例を示す。物体領域情報には、物体領域の数とポインタ、そして物体領域の詳細情報が含まれる。ここで、物体領域の詳細情報は、前景領域の位置及び平均出現時間に被写体フラグを付加した情報である。物体領域情報におけるポインタは、各物体領域の詳細情報にアクセスするためのポインタである。図13の例では、ポインタの指し示す1600番地より1601番地まで順に、2つの物体領域のデータが記憶されている。
なお、本実施形態に係る情報処理装置の出力である物体領域情報は、例えば、以下のように利用される。ユーザが指定した画面内の領域への被写体の侵入を検出する装置では、物体領域情報より被写体フラグ=1の物体領域のみを取得する。そして、物体領域の左上位置と右下位置から、ユーザ指定の範囲に被写体が侵入しているか否かを判定する。また、置き去り物の検出装置では、被写体フラグが0の物体領域のみを取得し、その平均出現時間が、ユーザが指定した時間を超えていれば、置き去り物として検出する。このように本情報処理装置では、置き去り検出のような一時的に検出したい物体の検出と、常に検出したい被写体の検出の両立が可能となる。
なお、上述の説明において、置き去り物の検出を実行しない等の事情により、平均出現時間の情報を利用しない場合は、前景領域情報と物体領域情報の平均出現時間は省略されてもよい。これにより、RAM103等の記憶容量を節約することができる。
(確信度算出処理)
続いて、図3のS307で実行される確信度の算出処理について説明する。被写体判定手段207で、被写体フラグが1の物体領域(以下、「被写体領域」という。)は、被写体として常に検出したい対象が存在する領域である。このため、この領域は、前景検出処理で常に前景と判定されるのが好ましい。本実施形態に係る情報処理では、被写体判定結果を背景モデルに確信度として反映することにより、前景検出処理において、確信度の高い領域は、動きがなくても常に前景として検出されるようにする。
ただし、被写体判定手段207における被写体判定結果は、本来検出されるべきでないものが検出される誤検出が発生する可能性がある。このため、被写体領域をそのまま前景とみなすと、背景モデルの精度が落ちるという問題がある。また、被写体によっては、物体領域の全てが被写体であるとは限らない。例えば、本実施形態では被写体として人体を想定しているところ、人体の共通した特徴は主に人体の輪郭となるため、物体領域として規定される矩形領域には、人体以外の背景の領域が含まれている確率が高い。このため、前景検出処理で高精度な判定をするためには、物体領域内において被写体と背景を区別し、背景の影響を取り除く必要がある。これらの理由により、本実施形態に係る処理では、画像の位置毎に、被写体の一部と確信できる度合いを示す確信度を算出し、背景モデルに追加する。既に説明したように前景検出処理において確信度が高い画素のみを前景として扱うようにすることで、前述の問題を解消する。
確信度の算出方法として、以下に示す3つの方法を例として説明する。ただし、確信度の算出方法はこれらの方法に限定されるものではなく、各位置における確信度を得られる方法であれば他の方法であっても構わない。
<方法1 学習用画像に基づく確信度分布を使用する方法>
前述の被写体判定手段207を構成する弱判別器を機能させるためには、サンプル画像に基づくアダブースト学習(米国特許出願公開第2007/0237387号明細書参照)のような機械学習が必要である。この学習においては、サンプル画像として、被写体と同様の特徴を有する正解画像(ポジティブサンプル)と、特徴の異なる非正解画像(ネガティブサンプル)を用いる。同様の特徴を有する画像とは、例えば被写体が人体である場合は人間が写っている画像であり、被写体が鞄の場合は鞄が写っている画像である。機械学習においては、判別器に被写体である人体に共通の特徴(輪郭など)を学習させるため、正解画像として頭の位置や足の位置を所定のサイズの画像内で揃えた複数の画像が使用される。
方法1では、この正解画像を利用して、検出された領域内の各位置における人体としての確からしさを算出する。この算出方法について、図14の確信度分布を説明する図を用いて詳細に説明する。1401は正解画像を含む領域全体を示している。方法1では、正解画像について、各画素値の変化の度合いを示す濃度勾配を求め、全正解画像についての濃度勾配を平均する。そして、平均した結果において、所定の閾値以上の濃度強度を持つ領域の境界を算出する。1402はこのようにして算出された領域の境界である。すなわち、1402の内部に位置する画素ほど、正解画像における人体の輪郭の位置の内側に存在する確率が高いため、人体である可能性が高い。方法1では、この人体である可能性を、例えば確信度の分布として表現し、これを用いて被写体領域における確信度を算出する。確信度の分布は、例えば、図15のように正規分布に従うものとする。図15の横軸は図14の補助線1403上における位置であり、縦軸は確信度を示す。1501は正規分布に従った確信度分布を表す曲線であり、1502は確信度分布の平均を表し、1503、1504は平均から標準偏差分離れた位置を示している。なお、1502で表される位置における確信度は、確信度の取りうる最大の値とし、例えば100とする。領域全体1401において、位置1503と1504を補助線1403と境界線1402との交点に合わせ、1502を当該交点の中心点に合わせることにより、確信度分布を決定する。このように被写体(人体)を含む正解画像から、統計的な方法で、1401内の全ての位置での確信度を算出することができる。そして、方法1では、算出した各位置での確信度を画素値として規定した、確信度分布画像を用意する。そして、この確信度分布画像を予めROM102や2次記憶装置104に格納しておき、本実施形態に係る情報処理装置の起動時にRAM103に読み込んで、確信度算出手段208で参照可能な状態にしておく。
方法1の動作について、図16のフローチャートを用いて説明する。まず、被写体確信度情報を初期化する(S1601)。被写体確信度情報とは、図18に例示するように、画像の各位置と確信度とを対応づけて記憶したものである。これを全ての位置に対して確信度を0にすることで初期化する。次に、物体領域情報より、被写体領域を一つ取得する(S1602)。
上述の確信度分布画像は、学習時に使用した画像に基づいて決定されるため、学習に使用された画像のサイズと同様のサイズを有する。このため、確信度算出手段208は、被写体領域のサイズと同じサイズとなるように、確信度分布画像を拡大、又は縮小する(S1603)。ここで、拡大、又は縮小は、通常の画像の拡大縮小と同様に最近傍法や線形補完などにより実行される。
次に、被写体領域に相当する領域の確信度を、サイズ変更された確信度分布画像の画素値である確信度に基づき更新する。具体的には、対応する位置において、被写体確信度情報の確信度と確信度分布画像の画素値との和を取り、新たな確信度の値とする(S1604)。このとき、被写体確信度情報を初期化(S1601)の直後である場合は、確信度は全ての位置において0であるため、各位置における確信度は、確信度分布画像の画素値となる。一方、複数の被写体領域に跨る領域では、別の被写体領域についてS1604において算出された確信度と、確信度分布画像の画素値との和を確信度とする。その後、S1604で更新された確信度の値が、値の範囲(0から100)を超えているか否かをチェックする(S1605)。そして、超えていれば確信度の範囲内(例えば100)に補正する(S1606)。次に、全ての被写体領域についてS1602からS1606の処理が完了しているか否かを判定する(S1607)。処理が完了していない場合は、次の被写体領域の処理へ移行し(S1608)、完了している場合は、最終的な被写体確信度情報を背景モデル更新手段209へ出力する(S1609)。
方法1のように、正解画像から確信度を予め統計的に算出した確信度分布画像を用意しておき、その確信度分布画像を取得画像の被写体領域にあてはめることにより、簡単かつ高速に、確信度を算出することが可能となる。
<方法2 被写体判定処理における累積スコアから推定する方法>
被写体判定手段207は、累積スコアを
F(x)=Σtatht(x)・・・(1)
のように計算する。そして、累積スコアが閾値を超えるか否かを判定することにより、最終的に被写体か否かを判定する(米国特許出願公開第2007/0237387号明細書参照)。なお、atは各弱判別器の信頼度、xは検出ウィンドウの位置である。ht(x)は、t番目の弱判別器において被写体と判別したら+1、非被写体と判別したら−1の2値を取る関数であり、t=1からT個の弱判別器が存在する。また、atは、弱判別器がどの程度信頼できるかを示した値である。つまり、累積スコアは、取得画像に対する複数の判別処理の結果を重み付け加算した値となる。この値は、取得画像が被写体の特徴を有していると考えられる度合いとなる。このため、この値が閾値以上の領域では被写体が含まれている確率が十分高いと判定することが可能となる。
累積スコアF(x)は、被写体が出力結果に含まれる確率を直接示した値ではない。そこで、累積スコアをsigmoid関数により変換し、これを被写体が出力結果に含まれる確率P(y=+1|x)として扱う。
P(y=+1|x)=1/(1+exp(−w1F(x)−w0))・・・(2)
ここで、sigmoid関数の重みw1、w0は、正解(被写体の位置)のわかっている複数のサンプル画像に対して実際に検出を行い、累積スコアと被写体の検出結果の関係から、最小二乗法などにより求める。
被写体判定手段207は、被写体領域を決定する前の各検出ウィンドウについて、累積スコアを検出ウィンドウの中心位置と関連付けて累積スコア情報として出力する。図17に累積スコア情報の一例を示す。図中の「位置」は画像内における検出ウィンドウの中心の位置である。確信度算出手段208では、式(2)で算出した確率を、例えば100分率に換算するために100倍して、確信度とすることにより、被写体確信度情報を得ることができる。
以上のように、被写体としての特徴を有すると考えられる度合いである累積スコアを確信度として用いることにより、被写体としての特徴を高確率で有すると考えられる領域には高い確信度が割り当てられる。このため、前景検出処理において、高精度に被写体を検出することが可能となる。
<方法3 前景フラグにより定まる領域と被写体領域の重なりを利用する方法>
方法1と方法2では、処理中の画像における確信度を直接求めたが、本方法では、確信度算出手段208における確信度の算出結果を累積することにより確信度を求める。従って、確信度算出手段208における1回の処理では、累積値を時間微分した確信度の変位量を算出する。そして、背景モデル更新手段209は、後述するように、この確信度の変位量を背景モデル中の確信度情報に反映させる。
具体的には、確信度算出手段208は、被写体と判定された画素、又は領域に対して、確信度の変位量として所定値を与えるようにする。例えば、所定値を10とし、被写体が10フレーム連続して同じ画素に存在した場合、当該画素における確信度情報は10(所定値)x10(フレーム数)で100となる。
ここで、被写体判定手段207において、特に人体のように被写体判定結果に背景部分が含まれる場合は、被写体領域の全面に対して一律に値を与えると、高い精度の確信度を得ることができない。そこで、このような場合には、更に次のような工夫を行う。
まず、確信度算出手段208は、前景検出手段206における図9のS901からS906までの処理の終了時に生成される前景フラグ情報を取得する。確信度算出手段208では、前景フラグ情報から得られる前景フラグが1である位置と、物体領域情報から得られる被写体フラグが1である被写体領域との論理積により定まる重なり領域を求める。図19に一例を示す。1901の多角形で示された領域は、前景検出手段206により前景フラグが1に設定された位置で特定される領域である。1902の矩形で示した領域は被写体領域である。そして、1903の縦線で塗りつぶされた領域は重なり領域であり、前景フラグが1に設定された位置で特定される領域に含まれ、さらに被写体領域でもある領域である。確信度算出手段208は、例えば、ここに確信度の変位量として所定の値Dを付与する。また、被写体領域1902内で重なり領域でない領域1904は、背景に相当する領域と考えられるため、被写体の確信度は低いと解釈できる。このため、確信度算出手段208は、この領域に対しては、例えば負の値−Dを確信度の変位量として付与する。これは、例えば当該領域に、前フレームでは被写体が存在していて、正の確信度の変位量が付与されていたような場合に、現フレームの結果によって打ち消す効果がある。
方法3について、図20のフローチャートを用いて詳細に説明する。まず、確信度算出手段208は、被写体確信度情報を初期化する(S2001)。なお、方法3では、前述の通り確信度そのものではなく、変位量が本処理によって格納される。次に、物体領域情報より、被写体領域を一つ取得する(S2002)。そして、前景検出手段206からの出力である前景フラグ情報によって、被写体領域内の全位置についてその位置が前景か背景かを判定する(S2003)。これにより、確信度算出手段208は、被写体領域かつ前景領域である領域を抽出し、この結果に基づいて、確信度の変位量を決定する。具体的には、被写体領域内の左上等の端の位置から処理を開始し、各位置について前景フラグ情報を取得し、前景フラグが1であるか否かをチェックする(S2003)。前景フラグが1であれば、前景と被写体領域の重なり領域であるので、確信度の変位量として所定の正の値Dを付与する。前景フラグが0であれば背景領域と考えられるので、確信度の変位量として所定の負の値−Dを付与する。なお、被写体領域で前景フラグが0の領域について確信度の変位量を−Dとするだけでなく、被写体領域でない領域についても確信度の変位量を−Dとしてもよい。これにより、被写体以外の領域については確信度の値が抑圧され、被写体でない領域を被写体として検出する誤検出を防止することができる。
次に、被写体領域内の全画素について、S2003からS2005までの処理を実行したか否かを判定する(S2006)。処理が未完了である場合、被写体領域内でラスタスキャン順に次の画素の処理へ移る(S2007)。そして、S2003からS2005までを繰り返す。処理が完了している場合、全ての被写体領域についてS2002からS2007の処理を完了したか否かを判定する(S2008)。処理が未完了である場合は、次の被写体領域へ進む(S2009)。処理が完了している場合、最終的な被写体確信度情報を背景モデル更新手段209へ出力する(S2010)。
なお、上述の説明では、被写体領域であって前景フラグが0の領域について確信度の変位量を負の値としたが、被写体領域でない領域についても同様としてもよい。これにより、確信度が0でない被写体領域外の画素、又は領域において確信度を下げることで、前景検出処理において誤って前景として検出される確率を低減することができる。
(背景モデル更新処理)
次に、S308の背景モデルの更新処理について図21を用いて詳細に説明する。まず、背景モデル更新手段209は、画像の左上の位置を開始位置として、その位置に対応する状態判定情報を取得する(S2101)。続いて、処理の対象となる位置における状態が新規な状態であるか否かをチェックする(S2102)。具体的には、背景モデル更新手段209は、状態判定情報に含まれる状態番号を参照し、0であれば新規の状態であり、0以外であれば背景モデルに存在する既存の状態であると判断する。
既存の状態であれば(S2102でNo)、その既存の状態について背景モデル情報を更新する。具体的には、背景モデル更新手段209は、まず、背景モデルの管理情報からポインタを取得し、状態判定情報に含まれる状態番号と一致する背景モデル情報を取得する(S2103)。そして、背景モデル中の特徴量情報を、状態判定情報の取得画像の特徴量を用いて更新する。特徴量情報の更新は、例えば、以下の式に従って実行される。
μt=(1−α)・μt−1+α・It・・・(3)
式(3)において、現在のフレームをt、1つ前のフレームをt−1とする。μt−1は更新前の特徴量情報の値であり、μtは更新後の特徴量情報の値である。Itは取得画像の特徴量の値である。αは0から1までの値を持つ重みであり、大きな値であるほど、更新後の値は、入力の値からの影響が強くなり、画像の変動への追随性が増す。逆にαが小さいと、更新後の値は、過去の値による影響を強く受け、収束性能が向上する。なお、ここで、αを1とすることにより、記憶手段204に記憶された特徴量情報を、取得画像についての特徴量で置き換えるようにしてもよい。
上述の更新により、取得画像の経時的な特徴量の変化に特徴量情報を追従させ、画像中の物体が移動していないにも関わらず、照明変化などによって前景と判定されてしまうことを防ぐことができる。
続いて、背景モデル更新手段209は、背景モデルの出現時間を更新する(S2105)。出現時間は、状態判定手段205において最新の状態になっているため、背景モデルにおける背景モデル情報の出現時間を状態判定情報の出現時間に置き換える。
次に、確信度情報の更新に移る。確信度情報の更新では、まず、取得画像について算出された確信度を格納している被写体確信度情報から、処理の対象となる位置に対応する確信度を取得する(S2106)。そして、記憶手段204に記憶された確信度情報を、当該確信度情報と被写体確信度情報から取得した確信度に基づいて更新する(S2107)。更新の方法としては、特徴量情報の更新と同様に指数平滑法を用いる方法や、近似メディアンフィルタなどを使用する方法が挙げられる。指数平滑法は具体的には、以下の式に従って実行される。
θM、t=(1−β)・θM、t−1+β・θl、t・・・(4)
式(4)において、現在のフレームをt、 1つ前のフレームをt−1とする。θM、t−1は更新前の背景モデル中の確信度情報の値、θM、tは更新後の確信度情報の値である。θl、tは現在の取得画像に対して、確信度算出手段208で算出された値である。βは0から1までの値を持つ重みであり、大きな値であるほど、現在処理中の画像から算出された値に強く依存することとなり、追従性が増す。一方、βが小さい値であると、現在処理中の画像から算出された値への依存性が弱まり、収束性が増す。
また、近似メディアンフィルタ法は具体的には、以下の数式を満たす。
θM、t>θM、t−1のとき、θM、t=θM、t−1+δ・・・(5)
θM、t<θM、t−1のとき、θM、t=θM、t−1−δ・・・(6)
θM、t=θM、t−1のとき、θM、t=θM、t−1・・・(7)
ただし、任意のtに対して、0≦θM、t≦100であり、δは所定の値である。この値の範囲内で値を増減させることにより、確信度が突発的に大きく変化した場合でも、追随しすぎることがない、というメリットがある。δは増加させるときの式(5)と減少させるときの式(6)で別の値を与えるようにしてもよい。
確信度情報を、当該確信度情報と取得画像の確信度に基づいて更新することにより、瞬時的に出現した物体による確信度情報への影響を低減しつつ、継続的に出現する被写体について十分に高い確信度情報を与えることが可能となる。
また、確信度算出手段208において、方法3として説明したように、確信度の変位量を算出する場合は、例えば、次の式に基づいて更新を行う。
θM、t=θM、t−1+Δθl、t・・・(8)
ただし、任意のtに対して0≦θM、t≦100である。式(8)において、Δθl、tは確信度の変位量であり、前述の通り負の値も取り得る。つまり、方法3を用いる場合、背景モデルに記憶された確信度情報は、確信度の変位量を加算することにより更新される。これにより、被写体である画素、又は領域の確信度情報の値が大きくなるため、精度よく被写体を検出することが可能となる。さらに、確信度の変位量として負の値を用いることにより、被写体以外の領域については確信度の値が抑圧され、さらに被写体の検出精度を向上させることが可能となる。
一方、S2102において、新規の状態と判定された時は、背景モデルへの追加を行う。まず、処理の対象となる位置について、背景モデル中の管理情報を参照し、背景モデル情報のアドレスへのポインタを取得する。そして、当該位置に対応する背景モデル情報の最後の状態番号を取得し(S2108)、新規の状態に対応する状態番号を発番する(S2109)。具体的には、例えば、上述の最後の状態番号の値が「3」である場合、新規の状態に対応する状態番号を、次の値「4」とする。なお、本実施形態に係る情報処理装置の起動時のように初めて背景モデルへ状態を追加するときは、状態番号は「1」を割り当てる。
続いて、当該新規の背景モデル情報に対して、アドレスを割り当てる処理に移る。新規の背景モデル情報は、その新規の背景モデル情報が対応する位置についての最後の背景モデル情報の次に追加される。このため、更新前の背景モデルにおける、新規の背景モデル情報に対応する位置の次の位置の最初の背景モデル情報のアドレスが、更新後の背景モデルにおける当該新規の背景モデル情報のアドレスとなる。このため、背景モデル更新手段209は、次の位置に対応する管理情報を参照し、その管理情報に記憶されたポインタを取得する(S2110)。そして、当該ポインタで示されるアドレスに、新規の背景モデル情報を挿入する(S2111)。ここで、新規の背景モデル情報における特徴量情報、作成時刻及び出現時刻は、状態判定情報に含まれる取得画像の特徴量、作成時刻及び出現時間を格納し、状態番号は、S2109で発番された番号を格納する。また、確信度情報は、確信度算出手段208で算出した値を格納する。なお、本情報処理装置における処理の開始時は取得画像の全ての位置に対して新規の状態となっているので、各位置における状態は全て背景モデルに追加され、これにより背景モデルは初期化されることとなる。
次に、画像中の全ての位置について、S2101からS2111までの処理を実行したか否かを判定する(S2112)。実行が完了していない場合、ラスタスキャン順に次の位置の処理へ移行し(S2113)、S2101からS2111までの処理を繰り返す。実行が完了している場合、本処理を終了する。
本背景モデルの更新処理によって、背景モデル中の各状態に付与されている時間情報と共に、確信度情報へ最新の画像の結果が反映される。従って、前景検出手段206による判定が適切に実行されるようになる。すなわち、立ち止まっている人物(本実施形態における被写体)を常に検知することができるようになり、鞄のような静止物体の一時的な検出、及び時間経過に伴う背景化処理を自動で行うことが可能になる。
なお、上述の実施形態においては、カメラ等で取得した全位置について処理を実行したが、これに限られない。例えば、取得画像の上半分などの一部の領域を対象として上述の処理を実行することもできる。これにより、例えば、恒常的に壁等により視界が遮られている場合に、その視界が遮られている部分についての処理を省略することが可能となる。
<<その他の実施形態>>
図1において各装置はバス109によって接続されているが、一部の装置をネットワークI/F108により接続して構成しても良い。例えば画像取得装置をネットワークI/F108により接続して画像を入力するように構成しても良い。
また、特徴量抽出手段202から背景モデル更新手段209までの全てを集積回路チップに納め、画像取得装置105と一体化させてもよい。或いは、被写体判定手段207のみをPC上に構成し、画像と前景領域情報(図11)を、LANケーブルなどを介して受信し、物体領域情報を送信するようにしてもよい。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。