特許第6046948号(P6046948)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キヤノン株式会社の特許一覧

特許6046948物体検知装置及びその制御方法、プログラム、並びに記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6046948
(24)【登録日】2016年11月25日
(45)【発行日】2016年12月21日
(54)【発明の名称】物体検知装置及びその制御方法、プログラム、並びに記憶媒体
(51)【国際特許分類】
   G08B 13/194 20060101AFI20161212BHJP
   G06T 7/20 20060101ALI20161212BHJP
   H04N 5/232 20060101ALI20161212BHJP
   H04N 7/18 20060101ALI20161212BHJP
【FI】
   G08B13/194
   G06T7/20 200B
   H04N5/232 Z
   H04N7/18 D
   H04N7/18 K
【請求項の数】11
【全頁数】27
(21)【出願番号】特願2012-183596(P2012-183596)
(22)【出願日】2012年8月22日
(65)【公開番号】特開2014-41488(P2014-41488A)
(43)【公開日】2014年3月6日
【審査請求日】2015年8月24日
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100076428
【弁理士】
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100112508
【弁理士】
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100115071
【弁理士】
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100116894
【弁理士】
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【弁理士】
【氏名又は名称】下山 治
(74)【代理人】
【識別番号】100134175
【弁理士】
【氏名又は名称】永川 行光
(72)【発明者】
【氏名】東條 洋
【審査官】 佐田 宏史
(56)【参考文献】
【文献】 特表2005−531844(JP,A)
【文献】 特開2011−070332(JP,A)
【文献】 特開2007−164690(JP,A)
【文献】 Xuli Li et al.,"Abandoned Objects Detection Using Double Illumination Invariant Foreground Masks",20th International Conference on Pattern Recognition, 2010,米国,IEEE,2010年 8月23日,pp.436-439
【文献】 豊島 詩織、外2名,“仮想マシンPCクラスタにおける並列データ処理アプリケーション実行時のストレージアクセスに関する一検討”,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2009年 7月28日,Vol.109, No.168,pp.7-11
(58)【調査した分野】(Int.Cl.,DB名)
G08B 13/194−13/196,25/00
G06T 7/00−7/60
H04N 5/232,7/18
(57)【特許請求の範囲】
【請求項1】
映像を入力する映像入力手段と、
前記入力した映像のフレーム画像から各位置の特徴量を抽出する抽出手段と、
前記各位置の抽出された特徴量と背景モデルにおける対応する位置の1以上の状態の特徴量のそれぞれとを比較する比較手段と、
前記比較の結果、前記抽出された特徴量が前記背景モデルのいずれの状態にも該当しなければ、当該抽出された特徴量を新規な状態の特徴量として前記背景モデルに追加して該状態の継続時間の計測を開始する更新手段と、
前記継続時間に基づいて前記映像から物体領域を検知する検知手段と、
前記物体領域から特徴量を生成する生成手段と
前記物体領域から生成された特徴量と映像中にもともと存在していた物体である背景物体の特徴量とを比較して当該物体領域が背景物体かどうかを判定する判定手段と、
を有することを特徴とする物体検知装置。
【請求項2】
背景物体の領域を選定する選定手段を更に備え、
前記背景物体特徴は、前記選定手段により選定された背景物体領域より生成された特徴量あることを特徴とする請求項1に記載の物体検知装置。
【請求項3】
前記特徴量は、適用するシーンに応じた特徴量であることを特徴とする請求項2に記載の物体検知装置。
【請求項4】
前記選定手段は、適用するシーンに応じた背景物体の領域選定ルールに基づいて選定処理を行うことを特徴とする請求項2または3に記載の物体検知装置。
【請求項5】
前記背景物体の領域選定ルールは、前記物体領域の映像中に出現してからの継続時間に基づくことを特徴とする請求項4に記載の物体検知装置。
【請求項6】
移動物体を検出する検出手段を更に備え、
前記背景物体の領域選定ルールは、前記物体領域より、前記検出手段によって検知された移動物体領域を除外した領域とすることを特徴とする請求項4に記載の物体検知装置。
【請求項7】
前記物体領域が物体の平行移動により検知されたものか面外回転により検知されたものかを判定する平行移動・面外回転判定手段を更に備え、
前記背景物体領域選定ルールは、前記平行移動・面外回転判定手段により平行移動と判定された時に、平行移動に伴って出現した部分背景領域を除外した領域とすることを特徴とする請求項4に記載の物体検知装置。
【請求項8】
前記判定手段は、当該判定の結果に基づいて前記背景モデルを更新する手段を含むことを特徴とする請求項1乃至7のいずれか1項に記載の物体検知装置。
【請求項9】
映像を入力する映像入力手段を有し、当該映像中の物体検知を行う物体検知装置の制御方法であって、
抽出手段が、前記映像入力手段からの入力映像のフレーム画像から各位置の特徴量を抽出する抽出工程と、
比較手段が、前記各位置の抽出された特徴量と背景モデルにおける対応する位置の1以上の状態の特徴量のそれぞれとを比較する比較工程と、
更新手段が、前記比較の結果、前記抽出された特徴量が前記背景モデルのいずれの状態にも該当しなければ、当該抽出された特徴量を新規な状態の特徴量として前記背景モデルに追加して該状態の継続時間の計測を開始する更新工程と、
検知手段が、前記継続時間に基づいて前記映像から物体領域を検知する検知工程と、
生成手段が、前記物体領域から特徴量を生成する生成工程と、
判定手段が、前記物体領域から生成された特徴量と映像中にもともと存在していた物体である背景物体の特徴量とを比較して当該物体領域が背景物体かどうかを判定する判定工程と、
を有することを特徴とする物体検知装置の制御方法。
【請求項10】
映像を入力する映像入力手段を有するコンピュータに読み込ませ実行させることで、前記コンピュータを、請求項1乃至8のいずれか1項に記載の物体検知装置の各手段として機能させるためのプログラム。
【請求項11】
請求項10に記載のプログラムを格納したことを特徴とするコンピュータが読み込み可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像中の物体の検知技術に関するものである。
【背景技術】
【0002】
カメラで撮影した画像から物体を検知する技術として、背景差分法が知られている。背景差分法は、固定したカメラにおいて、予め、検知すべき物体を排除した背景の画像を撮影し、その画像から抽出した特徴量を背景モデルとして記憶する。その後、カメラから入力された画像から抽出した特徴量と背景モデル中の特徴量との差分を求め、異なる領域を前景(物体)として検知する。
【0003】
ここで、例えば、待合室にある椅子のような物体について考える。椅子は待合室にもともと存在しており、人物や或いは人が持ち込んだ鞄のような検知したい対象物ではない。しかし、椅子は人によって頻繁に移動されたり向きを変えられたりする。このような変化が起こると背景モデルとの差分が生じるため、背景差分法では物体として誤検知してしまう。
【0004】
本明細書では、椅子のような背景中にもともと存在していた物体を以下、背景物体と呼ぶこととする。
【0005】
そこで、特許文献1では、背景モデルとの変化領域を検知した後に以下の処理を行うことによって、背景物体か新たに持ち込まれた物体であるかを区別し、誤検知を防いでいる。入力画像の前記変化領域に対応する領域の特徴量(色特徴やエッジ特徴)を、背景モデルより生成した背景画像の前記変化領域に対応する領域の特徴量と比較し、類似していれば背景物体が移動したものと判定している。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2003―346156
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1に係る技術では、背景物体の移動や変化に伴って、背景モデルに含まれていない新たな特徴が出現した場合に誤検知を防ぐことができない。つまり、入力画像と背景モデルより生成した背景画像に含まれる特徴が類似しなくなるので、背景物体の変化と判定されなくなる。例えば、青い壁の前に赤い花瓶が置いてあり、その手間に椅子があった場合は、椅子によって隠れているため背景モデルに赤い花瓶の特徴は含まれない。このときに椅子が移動すると、隠れていた赤い花瓶が映像内に出現することになる。また、背もたれが回転する椅子である場合、背もたれが回転する(面外回転)ことにより、背景モデルに存在していない椅子自身の新たな特徴が映像中に出現することになる。このように背景物体の移動や回転に伴って、これまで存在していなかった新たな特徴が生じるケースはごく一般的に生じるものである。即ち、特許文献1では十分に背景物体の変化による誤検知を抑制できるには至っていない。
【0008】
本発明は係る問題に鑑みなされたものであり、頻出する背景中の物体の変化に伴う誤検知を防ぐ、若しくは低減させる技術を提供しようとするものである。
【課題を解決するための手段】
【0009】
この課題を解決するため、例えば本発明の物体検知装置は以下の構成を備える。すなわち、
映像を入力する映像入力手段と、
前記入力した映像のフレーム画像から各位置の特徴量を抽出する抽出手段と、
前記各位置の抽出された特徴量と背景モデルにおける対応する位置の1以上の状態の特徴量のそれぞれとを比較する比較手段と、
前記比較の結果、前記抽出された特徴量が前記背景モデルのいずれの状態にも該当しなければ、当該抽出された特徴量を新規な状態の特徴量として前記背景モデルに追加して該状態の継続時間の計測を開始する更新手段と、
前記継続時間に基づいて前記映像から物体領域を検知する検知手段と、
前記物体領域から特徴量を生成する生成手段と
前記物体領域から生成された特徴量と映像中にもともと存在していた物体である背景物体の特徴量とを比較して当該物体領域が背景物体かどうかを判定する判定手段とを有する。
【発明の効果】
【0010】
本発明によれば、頻出する背景中の物体の変化に伴う誤検知を防ぐ、或いは低減させることができる。
【図面の簡単な説明】
【0011】
図1】本実施形態の物体検知装置のハードウェア構成を示すブロック図。
図2】本実施形態の物体検知装置の機能構成を示す図。
図3】本実施形態に登録フェーズにおける処理の流れを示すフローチャート。
図4】比較処理の詳細な処理の流れを示すフローチャート。
図5】背景モデルの一例を示す図。
図6】背景モデルの更新処理の詳細な処理の流れを示すフローチャート。
図7】比較結果情報の一例を示す図。
図8】前景背景判定処理の詳細な処理の流れを示すフローチャート。
図9】前景背景情報の一例を示す図。
図10】物体領域出力処理の詳細な処理の流れを示すフローチャート。
図11】物体領域情報の一例を示す図。
図12】第一背景物体領域選定の処理の流れを示すフローチャート。
図13】第一背景物体領域選定処理の処理結果を説明する図。
図14】第一のシーン別背景物体領域選定ルールの一例を示す図。
図15】背景物体候補領域情報の一例を示す図。
図16】第二の特徴量抽出の処理の流れを示すフローチャート。
図17】シーン別特徴量種別情報の一例を示す図。
図18】特徴量情報の一例を示す図。
図19】第一背景物体領域選定の処理の流れを示すフローチャート。
図20】第二背景物体領域選定処理の処理結果を説明する図。
図21】第二のシーン別背景物体領域選定ルールの一例を示す図。
図22】重み付き特徴量情報の一例を示す図。
図23】物体が平行移動した際の物体検知結果を説明する図。
図24】平行移動・面外回転判定の処理の流れを示すフローチャート。
図25】背景物体特徴情報登録の流れを示すフローチャート。
図26】本実施形態に運用フェーズにおける処理の流れを示すフローチャート。
【発明を実施するための形態】
【0012】
以下添付図面に従って本発明に係る実施形態を詳細に説明する。
【0013】
図1は本実施形態における物体検知を行う画像処理装置(以下、物体検知装置)のハードウェア構成を示すブロック図である。本実施形態における物体検知装置は、以下の構成を有する。
【0014】
CPU101は、ROM102やRAM103に格納されたプログラムに従って命令を実行する。ROM102は、不揮発性メモリであり、本発明のプログラムやその他の制御に必要なプログラムやデータを格納する。RAM103は、揮発性メモリであり、フレーム画像データやパターン判別結果などの一時的なデータを記憶する。2次記憶装置104は、ハードディスクドライブやフラッシュメモリーなどの書き換え可能な2次記憶装置であり、OS(オペレーティングシステム)、画像情報や物体検知プログラムや、各種設定内容などを記憶する。これらの情報はRAM103に転送され、CPU101のプログラムとして実行されたり、データとして利用されることになる。
【0015】
画像入力装置105は、デジタルビデオカメラやネットワークカメラ、赤外線カメラなどであり、撮像手段で撮像した映像をデジタルの画像データとして出力するものである。入力装置106は、キーボードやマウスなどであり、ユーザからの入力を可能とするものである。表示装置107は、ブラウン管CRTや液晶ディスプレイなどであり、ユーザに対して処理結果などを表示するものである。ネットワークI/F108は、インターネットやイントラネットなどのネットワークと接続を行うモデムやLANなどである。バス109は、これらを接続して相互にデータの入出力を行う。
【0016】
本実施形態の装置はOS上で動作するアプリケーションとして実装されている。
【0017】
図2は本実施形態の物体検知装置の機能構成を示した図である。以下に示す、各処理部は、CPU101が実行することで実現するものであるが、その一部もしくは全部はハードウェアとして実行しても構わない。
【0018】
201は映像入力部であり、画像入力装置105により構成され、映像を入力するものである。202は第一特徴量抽出部であり、映像より後述の背景モデルを構築するのに必要な特徴量を抽出するものである。203は比較部であり、背景モデル記憶部204(後述)より読み出した背景モデルと入力映像とを比較するものである。204は背景モデル記憶部であり、RAM103または2次記憶装置104により構成され、映像内の各位置の状態を画像特徴量で代表させた背景モデル(詳細は後述する)として記憶するものである。205は背景モデル更新部であり、比較部203の出力に基づいて、背景モデル記憶部204に記憶されている背景モデルの更新を行うものである。206は前景背景判定部であり、比較部203の出力に基づいて、入力映像中の各位置が前景であるか背景であるかを判定するものである。207は物体領域出力部であり、前景背景判定部206の出力に基づいて、検知結果を物体領域ごとにまとめ、出力するものである。
【0019】
208は第一背景物体領域選定部であり、物体領域出力部207の出力である物体領域を背景物体が含まれる領域と含まれない領域に分けるものである。209は第二特徴量抽出部であり、後述の背景物体特徴情報を生成するのに必要な特徴量を、第一背景物体領域選定部208の出力である背景物体候補領域から抽出するものである。210は第二背景物体領域選定部であり、第一背景物体領域選定部208で選定された背景物体候補領域の中を背景物体のみの部分領域に絞り込むものである。
【0020】
211はシーン別背景物体領域選定ルール記憶部であり、本物体検知装置が設置されたシーン(待合室、自動扉のある入り口など)ごとの背景物体領域を選定するためのルールを記憶したものである(詳細は後述する)。判定部208乃至210はこの記憶部211の情報を参照し、所定のルールに従って、背景物体の選定を行う。
【0021】
212は人体検知部であり、映像に含まれる人体の領域を検知するものである。本部は、シーン別背景物体選定ルールに応じて第一背景物体選定部208や第二特徴量抽出部210から呼び出される。213は継続時間判定部であり、物体領域出力部207の出力結果より物体領域の継続時間が所定の条件を満たすかどうかを判定するものである。本部は、シーン別背景物体選定ルールに応じて第一背景物体選定部208から呼び出される。
【0022】
214は平行移動・面外回転判定部であり、背景物体と選定されている領域が、背景物体が平行移動によって生じたものか、面外回転によって生じたものかを判定するものである。本部は、シーン別背景物体選定ルールに応じて第二背景物体領域選定部210から呼び出される。215はフレーム画像記憶部であり、映像入力部201で入力された映像を一時記憶する部である。本記憶部は、平行移動・面外回転判定部214が使用する。216は統計量生成部であり、選定された背景物体領域に含まれる第二特徴量を基に統計量を生成するものである。217は背景物体特徴情報登録部であり、統計量生成部216で生成された統計量を背景物体特徴情報として登録するものである。218は背景物体特徴情報記憶部であり、背景物体特徴情報(詳細は後述する)を記憶するものである。219は背景物体判別部であり、背景物体特徴情報を参照し、検出された物体が背景物体であるかどうかを判定する。判定した結果は、背景モデル更新部205へフィードバックされる。
【0023】
本実施形態における物体検知装置は、大きく分けて、背景物体の登録を行う登録フェーズと、物体の検知を行う運用フェーズが存在する。登録フェーズは、物体検知装置を設定した初期段階、並びに、運用フェーズと並列して実行されるものであるが、それぞれに分けて以下説明を行う。
【0024】
[登録フェーズ]
本実施形態の登録フェーズの1フレーム画像に対する処理の流れについて図3を用いて説明する。同図は、CPU101が実行するアプリケーションにおける登録フェーズに係る部分の処理手順を示しているものである。
【0025】
まず、映像入力部201において撮像などが行われることにより映像が入力され、所定時間ごとにフレーム画像が得られる (ステップS301)。
【0026】
次に、第一特徴量抽出部202において、フレーム画像から特徴量を抽出し、比較部203において、背景モデル記憶部204より背景モデル中の特徴量を読み出して、フレーム画像中の特徴量との比較を行う(ステップS302)。(詳細は後述する)
次に、背景モデル更新部205において、比較部203の結果を背景モデルに反映し、背景モデルの更新を行う(ステップS303)。(詳細は後述する)
次に、前景背景判定部206において、比較部203の結果から継続時間に基づいて前景と背景を判定する(ステップS304)。(詳細は後述する)
次に、検知された物体領域を出力する(ステップS305)。出力された物体領域は、置き去りの発生を検知する置き去り検知装置などで使用される。(詳細は後述する)
次に、第一背景物体候補領域選定部208において、検知された物体領域から背景物体を含んだ領域を選定する第一の背景物体領域の選定を行う(ステップS306)。(詳細は後述する)
次に、第二特徴量抽出部209において、選定された背景物体領域より特徴量を抽出する(ステップS307)。(詳細は後述する)
次に、第二背景物体候補領域選定部210において、第一背景物体領域選定部で選定された背景物体を含んだ領域から更に背景物体のみの領域に絞り込みを行う第二の背景物体領域の選定を行う(ステップS308)。(詳細は後述する)
次に、統計量生成部216にて背景物体領域と選定された領域に含まれる特徴量より統計量を生成し、背景物体特徴情報登録部217にて背景物体特徴情報を背景物体特徴情報記憶部218に登録する(ステップS309)。(詳細は後述する)
ここで、上記処理のステップS302の比較処理(比較部203)の詳細について、図4を用いて説明する。
【0027】
まず、第一特徴量抽出部202において、映像入力部201で取得した入力フレーム画像より各位置の状態を表す値として、画像特徴量を抽出する(ステップS401)。画像特徴量の例としては、輝度、色、エッジなどが挙げられるが、特にこれらに限定されるものではない。また、画素ごとの特徴量であっても、部分領域ごとの特徴量であってもよい。部分領域ごとの特徴量の例としては、8×8画素ブロック内の画素の平均輝度やDCT係数などがあげられる。DCT係数とは、離散コサイン変換(Discrete Cosine Transform)した結果である。入力フレーム画像がJPEG形式で圧縮符号化されている場合は、既に画像圧縮時に特徴量抽出されているのと同じことになる。従ってこの場合は、JPEG形式の入力フレーム画像よりDCT係数を直接取り出し、これを特徴量として使用するようにしてもよい。本実施形態では、画素ごとの輝度であるとする。なお、フレーム画像の左上の画素を開始点とし、以降、左より右へ、行ごとに下へ(ラスタスキャン順)移動しながら以降の処理を行うものとする。
【0028】
次に、背景モデル記憶部204に記憶されている背景モデルより、注目している位置の位置毎背景モデル情報を読み出し、RAM103に一時記憶する(ステップS402)。
【0029】
ここで、背景モデル記憶部204に記憶されている背景モデルについて図5を用いて説明する。背景モデルは、フレーム画像中の各位置の状態を、画像特徴量で現したものである。背景モデルは2つ部分から構成されている。背景モデル管理情報と位置毎背景モデル情報である。
【0030】
背景モデル管理情報は、位置情報と各位置における位置毎背景モデル情報へのポインタから構成される。位置情報はフレーム画像の画素の位置をXY座標で示した値であってもいいし、8×8画素のブロックの位置を、ラスタスキャン順に振った番号であってもよい。なお、本実施形態では、フレーム画像の画素の位置をXY座標で示した値であるものとする。
【0031】
位置毎の背景モデル情報は、各位置に対応する状態を複数保持する。ここで、状態とは、特徴量で代表されるものである。従って、特徴量が類似していなければ、別な状態となる。例えば、青い壁の前に赤い車が走ってきて静止すると、赤い車が静止した領域に含まれる画素については、青い特徴量の状態と、赤い特徴量の二つの状態が保持されることになる。各状態には、状態の番号と、状態を代表する画像特徴量、作成時刻、アクティブフラグが保持されている。状態番号とは、各状態を識別するための番号であり、1番から順に発番されるものである。作成時刻とは、その状態が始めて背景モデル内に作成された時刻であり、時間やフレーム番号で表現される。本実施形態ではフレーム数で表現するものとする。アクティブフラグとは、現在のフレーム画像に対応する状態であることを示すもので、このときに1が設定される(それ以外は0)。そして、フレーム画像内で同じ位置における複数の状態は、背景モデル管理情報のポインタで参照された先に、連続して格納される。図5の例では、座標(0,0)の位置は、1200番地に状態番号1の状態が、続いて、1201番地に状態番号2の状態が格納されている。従って、注目する位置に対応する全ての状態を読み出すためには、次のようにすればよい。すなわち、背景モデル管理情報から注目する位置とその次の位置のポインタを参照し、注目位置のアドレスから次の位置の一つ手前のアドレスの前までを読み出せばよい。
【0032】
上記は一例であり、1つの位置毎背景モデル情報に、状態番号が異なる後続の位置毎背景モデル情報へのポインタを格納するフィールドを設け、そのフィールドに存在しえない値が格納された場合には、その位置毎背景モデルが最後であるものと見なすようにしても良い。
【0033】
図4のステップS402の説明に戻る。背景モデル管理情報より、注目している位置の位置毎背景モデル情報へのポインタを参照し、当該注目位置の全ての状態の位置毎背景モデル情報を読み出す。図5の例で、初めの位置であれば、次の2つの状態の位置毎背景モデル情報を読み出す。一つ目の状態は、1200番地より{状態番号1、特徴量100、作成時刻0、アクティブフラグ1}である。二つ目の状態は1201番地より{状態番号2、特徴量230、作成時刻101、アクティブフラグ0}である。
【0034】
次に、ステップS402で読み出した注目位置の位置毎背景モデル情報中よりひとつの状態の特徴量を読み出す(ステップS403)。そして、アクティブフラグに0を設定する(ステップS404)。これは前回の結果を初期化するためである。そして、入力フレーム画像中の同じ位置の特徴量との差分を算出する(ステップS405)。差分の算出方法として、ここでは2つの特徴量の差の絶対値を用いるが、特にこれに限定されるものではなく、例えば、差を2乗した値であってもよい。そして差分値をRAM103に入力フレーム画像内の位置、差分を算出した状態番号と関連付けて一時記憶する。次に、注目する位置で差分を算出していない状態が存在するかどうかを判定する(ステップS406)。そして、存在する間は位置毎背景モデル情報より次の状態を読み出す(ステップS407)。そして、ステップS403とS405の処理を繰り返す。
【0035】
次に、注目する位置について、入力フレーム画像の特徴量と全ての状態との差分値の中から、最小の値を求める(ステップS408)。
【0036】
次に、注目する位置における最小差分値と閾値Aを比較する(ステップS409)。差分値が閾値より小さければ、背景モデルに記憶されている状態に類似していると判断できる。逆に大きければ、背景モデルに記憶されているどの状態とも違い、新しい状態であると判定できる。
【0037】
ステップS409において新しい状態であると判定されたときは、新しい状態を意味する特殊な番号(例:0)を状態番号として設定する(ステップS410)。状態番号は、背景モデル更新部205で、背景モデル更新時に改めて発番される。次に、現在時刻を本状態が初めて作成された時刻として設定する(ステップS411)。なお、本実施形態では現在のフレーム番号を用いるが、もちろん、何時何分何秒といった通常の時刻表現を用いても構わない。
【0038】
次に、現在フレームに該当する状態であることを示すためアクティブフラグに1を設定する(ステップS412)。
【0039】
次に、状態番号、入力画像の特徴量、作成時刻を入力フレーム画像内の座標に関連付けて比較結果情報としてRAM103に一時記憶する(ステップS413)。
【0040】
次に、フレーム画像中の全ての画素(座標)について、処理を行ったかどうかを判定し(ステップS414)、行っていなければラスタスキャン順に次の画素へ処理を進め(ステップS415)、ステップS401からS413までの処理を繰り返す。
【0041】
次に、全画素のステップS401からS413までの処理を終えていれば、全画素分の比較結果情報(図7はその一例である)を背景モデル更新部205と前景背景判定部206に対して出力する(ステップS416)。
【0042】
このようにして、画素ごとに入力映像に最も近い背景モデル中の状態を求めることができる。
【0043】
なお、本物体検知装置の開始時は背景モデルが記憶されていないので、差分算出の値として、差分値として取り得る最大値などを設定しておく。これらは全て、ステップS409で、新規の状態と判定され、後述の背景モデル更新処理にて、背景モデルに記憶される。このように起動時の入力フレーム画像によって、背景モデルの初期化ができる。
【0044】
以上、ステップS302の比較処理の詳細を説明した。
【0045】
次に、ステップS303の背景モデルの更新処理(背景モデル更新部205)の詳細について図6のフローチャートを用いて説明する。
【0046】
まず、比較部203の出力である比較結果情報(図7)から、フレーム画像の左上の画素を開始点として、順に一画素分の比較結果情報を、座標を参照して、取得する(ステップS601)。
【0047】
現在の画素の状態が新規であるかどうかをチェックする(ステップS602)。これは比較結果情報中の状態番号を参照することにより、0であれば新規、0以外であれば背景モデルに存在する既存の状態、と判断できる。
【0048】
既存の状態であれば、背景モデル(図5)中の対応する位置毎背景モデル情報を更新する。現在の画素の座標から背景モデル中の背景モデル管理情報を参照し、一致する座標の状態へのポインタを取得する。読み出しながら前記ポインタを順に進め、比較結果情報(図7)から読み出した状態番号と一致する位置毎背景モデル情報を参照する(ステップS603)。
【0049】
そして、背景モデル中の特徴量を、比較結果情報(図7)中の入力特徴量で更新する(ステップS604)。これは、照明変化などによる変化に対応するためである。更新の方法としては、例えば、次式(1)に従う。
【0050】
μt=(1−α)・μt-1+α・It …(1)
式(3)において、現在のフレームをt, 1つ前のフレームをt-1とする。μt-1は更新前の特徴量の値、μtは更新後の特徴量の値である。Itは入力フレームの特徴量の値である。αは0から1までの値を持つ重みであり、大きな値であるほど、更新後の値は、入力の値に近くなる。
【0051】
一方、ステップS602において、新規の状態と判定された時は、背景モデルへの追加を行う。
【0052】
まず、現在の画素の座標から背景モデル中の背景モデル管理情報を参照し、一致する座標の状態へのポインタを取得する。そして、次の画素の座標の状態へのポインタまでポインタを進めて、現在の座標の状態の最後の状態番号を取得する(ステップS605)。
【0053】
新規の状態の状態番号を発番する(ステップS606)。具体的には、前記最後の状態番号の次の値を使用する。なお、本物体検知装置の起動時のように初めて背景モデルへ状態を追加するときは1番を割り当てる。
【0054】
現在の画素の最後の状態の次に、新規の状態の追加を行うので、次の画素の座標から背景モデル中の背景モデル管理情報を参照し、一致する座標の状態へのポインタを取得する(ステップS607)。ここに新規の状態として、入力状態情報中の現在の座標の入力特徴量、作成時刻を、前記発番された状態番号と共に挿入する(ステップS608)。
【0055】
次に、フレーム画像中の全ての画素(座標)について、ステップS601からS608までの処理を行ったかどうかを判定する(ステップS609)。行っていなければラスタスキャン順に次の画素へ処理を進め(ステップS610)、ステップS601からS608までの処理を繰り返す。行っていれば、本処理を終了する。
【0056】
以上、ステップS303の背景モデルの更新処理の詳細を説明した。
【0057】
次に、ステップS304の前景背景判定処理(前景背景判定部206)の詳細について、図8を用いて説明する。
【0058】
まず、ステップS302の比較処理の出力である比較結果情報(図7)から、フレーム画像の左上の画素を開始点として、ラスタスキャン順に一つずつ参照して、取得する(ステップS801)。
【0059】
比較結果情報(図7)の作成時刻から、ある状態(特徴)が映像に出現した時刻から現在までの継続時間(現在時刻―作成時刻)を算出し(ステップS802)、背景化時間の閾値と比較する(ステップS803)。背景化時間の閾値とは、この値を境として、前景として検知していたものを、背景として扱う(背景化する)というものである。継続時間が背景化時間の閾値以上であれば、前景フラグを、「背景」を意味する「0」にする(ステップS804)。一方、継続時間が背景化時間の閾値未満であるときは、前景と見なし「1」と判定する(ステップS805)。なお、背景化時間の閾値は通常は、固定値Bであるとする。例えば、5分(30フレーム毎秒であるとすると、9000フレーム)とすると、5分の間は(静止物体を)物体(前景)として検知することが可能となる。
【0060】
次に、前景フラグをフレーム画像中の現在の画素の座標、継続時間と関連付けて、前景背景情報(図9に一例を示す)として一時記憶する(ステップS806)。
【0061】
次に、フレーム画像中の全ての画素(位置)について、処理を行ったかどうかを判定し(ステップS807)、行っていなければ次の画素へ処理を進め(ステップS808)、ステップS801からS806までの処理を繰り返す。全画素のステップS801からS806までの処理を終えていれば、全画素分の前景背景情報(図9)を物体領域出力部207に対して出力する(ステップS809)。
【0062】
次に、図3のS305の物体領域出力処理(物体領域出力部207)の詳細を図10を用いて説明する。
【0063】
物体領域として統合するために、前景フラグ=1の画素を探索したかどうかを示す探索フラグを用意する。この探索フラグはフレーム画像中の各座標に関連付けたものである。探索フラグ=1を探索済みと解釈されるので、全ての座標に対応する探索フラグを0にして、初期化を行う(ステップS1001)。
【0064】
まず、フレーム画像の左上の画素を開始点として、RAM103中の前景背景情報(図9)の座標を参照し、前景フラグを取得するものとする(ステップS1002)。
【0065】
次に、現在の座標の前景フラグが1であるかどうかをチェックする(ステップS1003)。0であれば、背景であるので、現在の画素から、ラスタスキャン順で次の画素に移る(ステップS1004)。
【0066】
一方、ステップS1003で、前景フラグ=1であると判定した場合、その画素は前景に属することになるので、現在の座標の探索済みフラグが0かどうか、つまり、未探索であるかどうかをチェックする(ステップS1005)。1であれば、探索済みであるので、現在の画素から、ラスタスキャン順で次の画素に移る(ステップS1004)。
【0067】
ステップS1005で、探索済みフラグ=0であれば未探索であるので、まず、現在の座標を一時記憶する(ステップS1006)。そして、既に探索を行ったので、探索済みフラグを1にする(ステップS1007)。次に、連続する前景の画素を探索するために近傍の前景フラグを取得する(ステップS1008)。次に、近傍の前景フラグが1であるかどうかをチェックする(ステップS1009)。1であれば、連続する画素であるので、探索済みフラグが0であるかを判定する(ステップS1010)。0であれば未探索であるので、更に近傍を探索するため、制御をステップS1006へ戻す。
【0068】
ステップS1010で、近傍が全て探索済みか(探索済みフラグ=1)、ステップS1009で、近傍が全て背景(前景フラグ=0)となるまで、ステップS1002からステップS1010までの処理を繰り返す。
【0069】
ステップS1002からステップS1010までの処理で連続する前景(物体)の画素が探索されたら、一時的に記憶されている、これらの画素の座標から外接矩形を求め、その外接矩形の左上の座標と右下の座標をRAM103に一時記憶する(ステップS1011)。
【0070】
次に、これらの画素(座標)に対応する継続時間を比較結果情報より取得し、その平均値を求め、RAM103に一時記憶する(ステップS1012)。
【0071】
フレーム画像中の全画素について、ステップS1002からステップS1012までの処理を行ったかどうかを判定し(ステップS1013)、行っていなければ、現在の画素から、ラスタスキャン順で次の画素に移る(ステップS1004)。
【0072】
全画素について、ステップS1002からステップS1012までの処理を行っていれば、一時保存された物体領域の右上の座標と左上の座標、前記平均出現時間を、物体領域情報として出力する(ステップS1014)。図11は物体領域情報の一例であり、2つ分の物体領域の左上座標及び右下座標と平均出現時間が、先頭から順に読み出すことができる。
【0073】
以上が、ステップS305の物体領域出力処理の詳細である。なお、出力された物体領域情報は、置き去りの発生を検知する置き去り検知装置(図示せず)などで使用される。置き去り検知装置では、物体の平均継続時間を参照して、所定の時間が継続した時点で置き去りイベントを発報する。また、当該物体領域の矩形の左上座標と右下座標を参照して矩形を生成し、入力された映像に重ね描きすることで、置き去り物の位置をユーザに対して表示するなどを行う。
【0074】
次に、図3におけるステップS306の第一背景物体領域選定処理(第一背景物体領域選定部208)の詳細について図12を用いて説明する。
【0075】
物体領域情報(図11)中の物体領域から、背景物体を含む物体領域とそうでない物体領域に分けて、背景物体の候補領域を出力する。図13は本処理による処理結果を説明するための図である。図中の符号1301はフレーム画像であり、椅子1302とその前に立っている人物1303と画面内を横切って歩く人物1304が映っている。符号1305は背景差分により検知した物体領域を重ねて描いたものであり、領域1306と1307が物体として検知されている。領域1306内にある椅子は、背景モデルを生成したときと向きが異なっているために、物体の一部として検知されているものとする。第一背景物体領域選定処理は、背景物体(本例では椅子1302)を含んだ物体領域がどれであるかを選別し、符号1308に示したように椅子を含んだ領域1309を背景物体候補領域として出力するものである。以下、詳細に述べる。
【0076】
まず、シーン別背景物体領域選定ルール記憶部211より、ユーザから指定されたシーンIDに対応する第一のシーン別背景物体領域選定ルールを参照する(ステップS1201)。ユーザからの指定に係る構成は図2に特に図示しないが、入力装置106とユーザが確認するための表示装置107から構成され、例えば、画面に表示されたシーンIDリストから選択する形で指定される。ここで、シーンIDとは、本物体検知装置の設置環境などに応じて定義されたものであり、例えば、シーンID=1は待合室、シーンID=2は自動扉などとなっている。ユーザは、設置環境に合わせてこれらのシーンIDを選択することにより、最適な物体検知の結果を得られることとなる。
【0077】
ここで、第一背景物体領域選定処理で読みこまれる第一のシーン別背景物体領域選定ルールについて図14を用いて詳細に述べる。
【0078】
第一のシーン別背景物体領域選定ルールの各ルールは、シーンID、判定条件(判定条件数、判定条件先頭ポインタ)、パラメータ(パラメータ数、パラメータ先頭ポインタ)、採択条件から構成される。ここで、シーンIDは前述した通りである。
【0079】
判定条件とは背景物体領域を選定するための判定条件であり、例えば、物体領域の(平均)継続時間が所定値以上であるか(条件11)、物体領域内に人体領域が存在しているかどうか(条件12)などがある。判定条件は、判定条件数に記述された数だけ存在し、判定条件先頭ポインタの指し示すアドレスより順に読みだすことにより、取得できる。
【0080】
パラメータとは、判定条件で用いられる閾値などのパラメータ値である。パラメータは、パラメータ数に記述された数だけ存在し、パラメータ先頭ポインタの指し示すアドレスより順に読みだすことにより、取得できる。
【0081】
採択条件とは、判定条件をどのように満たした時に背景物体候補領域として採択するかを示したものである。例えば、判定条件を満たした物体領域のみを採択(ONLY)や、一つでも判定条件を満たしたものがあれば全ての物体領域を採択(ALL)などがある。
【0082】
次に、読み込まれた第一の背景物体選定ルールから取得した判定条件をひとつ取得する(ステップS1202)。
【0083】
次のステップS1203からステップS1209において、全ての物体領域について、判定条件を満たすかどうかが判定される。
【0084】
物体領域情報(図11)より物体領域をひとつ取得する(ステップS1203)。ステップS1204とステップS1206は、それぞれ所定の判定条件(11、12)が指定されているかどうかをチェックするものである。判定条件11が指定されていた場合(ステップS1204にてYES)は、本例では継続時間判定処理が行われる(ステップS1205)(詳細は後述する)。判定条件12が指定されていた場合(ステップS1206にてYES)は、本例では人体有無判定処理が行われる(ステップS1207)(詳細は後述する)。判定結果は、現在の物体領域の座標と関連付けて判定条件を満たす時は1、それ以外は0としてRAM103に一時記憶される(ステップS1208)。
【0085】
ステップS1209にて全物体領域について処理したかどうかを判定し、処理していなければステップS1203へ処理を戻して次の物体領域へ進む。全ての物体領域について処理したと判定した場合(ステップS1209にてYES)は、ルールに規定された全ての判定条件について、判定を行ったかどうかを判定する(ステップS1210)。行っていなければステップS1202へ処理を戻して次の判定条件へ進み、行っていればステップS1211へ処理を進める。
【0086】
ルールに規定された採択ルールに従って背景物体候補領域を採択し、採択された物体領域情報を背景物体候補領域情報として出力する(ステップS1211)。図15に一例を示す。背景物体IDとは、背景物体と選定された物体領域に順に1から発番されたIDである。物体領域左上座標、物体領域右下座標は、物体領域情報(図11)と同様のものである。
【0087】
以上の一連の処理について、待合室のシーン、自動扉のシーンの例を用いて、更に詳細を述べる。
【0088】
a.待合室のシーン:
待合室において、典型的な背景物体は椅子である。このような物体は人によって頻繁に動かされたり、回転させられたりする。この度に誤検知が起こるが、動物体ではないので、あたかも静物体が出現したかのように同じ位置で誤検知され続ける。すなわち、継続時間の長い物体領域は背景物体である可能性がある。このことを利用して背景物体(を含む)領域の選定を行う。そこで、背景物体領域選定ルールの判定条件として「11」を指定しておく。ステップS1204にてYESとなり、継続時間判定部213によって継続時間判定が行われる(ステップS1205)。閾値との比較により、十分に長い(平均)継続時間をもった物体領域が条件を満たすものとする。閾値の値は、図14に例示したようにパラメータ値としてルールに記述しておくようにする。このようにして判定条件を検証した後、本シーンの採択ルールはONLYであるのでステップS1211において判定条件11を満たした物体領域のみを背景候補領域とする。
【0089】
b.自動扉のシーン:
自動扉における人物の出入りのシーンにおいて、自動扉が開くことによって移動する扉の枠は、もともと真の背景に存在していた物体である。しかし、動くことにより背景モデルと差分が生じるため、物体として誤検知される。この背景物体(自動扉の枠)は動いていることも、停止していることもある。従って、待合室のシーンの判定条件11(継続時間)によって判定することはできない。自動扉の開閉は人物の出現によって起こる。そこで、人物を含む物体領域が一つでもあれば、このときに検知されている物体領域全てが背景物体の候補となり得る。このことを利用して物体領域から背景物体(を含む)領域を選定する。背景物体領域選定ルールの判定条件として12を指定しておく。ステップS1206にてYESとなり、人体検知部212を用いて人体有無判定が行われる(ステップS1207)。物体領域内で人体が検知されれば、物体領域が条件を満たすものとする。このようにして判定条件を検証した後、ステップS1211において、判定条件12を満たした物体領域が一つでもあれば、物体領域情報(図11)中の全ての物体領域を候補領域とする。
【0090】
ここで、人体検知部212の詳細について述べる。例えば、米国特許公開第2007/0237387号公報がある。これは、所定の大きさの検出ウィンドウを入力画像上で走査させ、検出ウィンドウ内の画像を切り出したパターン画像に対し被写体(人体)であるか否かの2クラス判別を行う。この判別には、アダブーストを使って多くの弱判別器を有効に組み合わせて判別器を構成し、判別精度を向上させる。また、この判別器を直列に繋ぎ、カスケード型の検出器を構成するようにしている。弱判別器はHOG(Histogram of oriented gradients)特徴量で構成されている。そして、カスケード型の検出器は、まず前段の単純な判別器を使って明らかに被写体でないパターンの候補をその場で除去する。それ以外の候補に対してのみ、より高い識別性能を持つ後段の複雑な判別器を使って被写体かどうかの判別を行う。
【0091】
次に、ステップS307の第二特徴量抽出処理(第二特徴量抽出部209)の詳細について図16を用いて説明する。本処理により、前述の第一背景物体領域選定処理により選定された背景物体の候補領域より、シーンに相応しい種別の特徴量を抽出する。
【0092】
まず、図17に例示されたシーン別特徴量種別情報より、現在指定されているシーンに応じた特徴量種別を取得する(ステップS1601)。
【0093】
次に、背景物体候補領域情報(図15)より背景物体候補領域(の座標)をひとつ取得する(ステップS1602)。現在のフレーム画像の背景物体候補領域から特徴量を抽出する。ステップS1603とステップS1605は、それぞれ所定の特徴量の種別(特徴量1、特徴量2)が指定されているかどうかをチェックするものである。特徴量1が指定されていた場合(ステップS1603にてYES)は、本例ではSIFT特徴量抽出処理が行われる(ステップS1604)。SIFT特徴量の詳細は後述する。特徴量2が指定されていた場合(ステップS1605にてYES)は、本例ではHOG特徴量抽出処理が行われる(ステップS1606)。HOG特徴量詳細は後述する。抽出された特徴量は背景物体IDと関連付けて特徴量情報としてRAM103に一時記憶される(ステップS1607)。図18に一例を示す。特徴量数は、背景物体IDの領域内から抽出された特徴量の数である。特徴量ポインタは、特徴量の格納先のアドレスである。特徴量ポインタの指す先から、特徴量の数分、順に特徴量を読み出すことができる。特徴量は、特徴量を抽出した座標と共に座標、特徴量の順に格納されている。
【0094】
ステップS1608にて全背景物体候補領域について処理したかどうかを判定し、処理していなければステップS1602へ処理を戻して次の背景物体候補領域へ進む。
【0095】
全ての全背景物体候補領域について特徴量を抽出した場合(ステップS1608にてYES)は、抽出した特徴量情報を出力する(ステップS1609)。
【0096】
以上の一連の処理について、待合室のシーン、自動扉のシーンの例を用いて、更に詳細を述べる。
【0097】
a.待合室のシーン:
待合室において、典型的な背景物体が椅子であるため形状をよく表す特徴量が望ましい。また、椅子は画面内であらゆるところに置かれる可能性があるため、拡大・縮小や面内回転に不変な特徴量であることが望ましい。このような条件を満たす特徴量であればなんであってもよいが、本実施形態はScale Invariant Feature Transformation(SIFT)特徴量であるものとする。ステップS1603にてYESとなり、SIFT特徴量の抽出処理が行われる(ステップS1604)。
【0098】
SIFT特徴量は、文献『D. G. Lowe, 「“Object recognition from local scale―invariant features“, Proc. of IEEE International Conference on Computer Vision (ICCV), pp.1150−1157,1999.』に詳しい。概略を説明すると以下のようになる。ガウス関数で平滑化されたスケールの異なる複数の画像を生成し、この差分の画像から極値を検出する。この極値となる点(キーポイントと呼ぶ)から特徴を抽出する。そして、キーポイントにおける支配的な勾配の方向を決定し、その方向を基準としキーポイントが抽出された差分画像のスケールに合わせて、特徴量を抽出するガウス窓を設定する。これにより、面内回転・スケールに対して不変という特徴を持つ。従って、本特徴量を使用することにより、背景物体の移動に伴うカメラとの距離変化や、物体の向きの変化(面内回転)が生じても、同じ特徴量で表現できることになる。このような変化が起きるたびに改めて背景物体特徴情報に登録する必要がないため、待合室のシーンに適しいていると言える。特徴量は4×4ブロックに分割され、各ブロックから8方向のヒストグラムを取る。従って、128次元の特徴量となる。
【0099】
b.自動扉のシーン:
自動扉における人物の出入りのシーンにおいて、自動扉が開くことによって表れる扉の枠の形状は矩形であり、キーポイントとなる点が少ないためにSIFT特徴量はあまり抽出できない。また、画面の中で特定の領域のみで移動するためサイズは固定である。従って、待合室のシーンのように拡大縮小や面内回転に不変である必要はない。そこで、本シーンではより相応しい特徴量が必要である。自動扉の形状をよくとらえる特徴量として、本実施形態ではHOG特徴量であるものとする。もちろんこれに限ったものではなく、例えば、輪郭線を抽出しこれを特徴量として使ってもよい。ステップS1605にてYESとなり、HOG特徴量の抽出処理が行われる(ステップS1606)。
【0100】
HOG特徴量は、文献『N.Dalal and B.Triggs,“Histogram of Gradients for Human Detection “, Computer Vision and Pattern Recognition,Vol.1, pp.886−893,2005.』に詳しい。概略を説明すると以下のようになる。入力画像より勾配画像を求め、8×8画素のセルを2×2含むブロックに分割する。各セルで9方向のエッジ強度ヒストグラムを取る。従って、1ブロックから36次元の特徴量が抽出される。エッジ方向ごとのエッジ強度に着目しているため、扉の枠などの形状をとらえるのに適した特徴量である。
【0101】
次に、ステップS308の第二背景物体領域選定処理(第二背景物体領域選定部210)の詳細について図19を用いて説明する。本処理によって第一背景物体領域選定処理によって選定された背景物体候補領域の中を、更に背景物体のみの部分領域への絞り込みを行う。
【0102】
図20は本処理による処理結果を説明するための図である。2001は図13の領域1309に相当し、背景物体候補領域を示している。2002〜2012は第二特徴量抽出処理によって特徴量が抽出された点を示している。この内、2002〜2005は椅子より抽出され、2006〜2012は人物より抽出されている。本例の人物や犬或いは自動車のような被写体は自律的に移動する物体(以下、移動物体)であり、映像中に入ってきたり出て行ったりするものであり、背景物体ではない。従って、移動物体の領域を検知する部により、移動物体領域を背景物体候補領域から除外するようにする。本例では、人体検知部212により人体領域2013を求めることにより、真の背景物体である椅子の特徴量と人体領域内の特徴量に分ける。より具体的には各特徴量に重みを与え、背景物体の特徴量(2002〜2005)の重みを、人物の特徴量(2006〜2012)より大きくなるようにする。即ち、各特徴量の重みは背景物体を構成していると考えられるほど大きな値となる。第二背景物体領域選定処理は、このようにして決定された重み付きの特徴量を出力する。以下、詳細に述べる。
【0103】
まず、シーン別背景物体領域選定ルール記憶部211より、ユーザから指定されたシーンIDに対応する第二のシーン別背景物体領域選定ルールを参照する(ステップS1901)。
【0104】
ここで、第二背景物体領域選定処理で参照される第二のシーン別背景物体領域選定ルールについて図21を用いて詳細に述べる。
【0105】
第二のシーン別背景物体領域選定ルールの各ルールは、シーンID、判定条件(判定条件数、判定条件先頭ポインタ)、パラメータ(パラメータ数、パラメータ先頭ポインタ)から構成される。シーンIDは前述した通りである。
【0106】
判定条件は、第一背景物体領域選定処理により選定された背景物体領域の中で、背景物体とそれ以外に分けるための判定条件である。例えば、人体が存在するか、存在するとすればどの領域か(条件21)、物体が平行移動しているか面外回転しているか(条件22)などがある。判定条件は、判定条件数に記述された数だけ存在し、判定条件先頭ポインタの指し示すアドレスより順に読みだすことにより、取得できる。
【0107】
次に、背景物体特徴情報を生成する際に使用する特徴量に対する重みを特徴量情報(図18)の全ての特徴量に付加し、重み付き特徴量情報(図22は一例である)とする(ステップS1902)。重みは0から1の範囲の値であり、1に近いほど背景物体を構成している度合いが高いものとする。本ステップでは初期値として1を与える。
【0108】
次に、第二の背景物体選定ルール(図21)から取得した判定条件をひとつ取得する(ステップS1903)。
【0109】
ステップS1904とステップS1907は、それぞれ所定の判定条件(21、22)が指定されているかどうかをチェックするものである。判定条件21が指定されていた場合(ステップS1905にてYES)は、本例では人体領域検知処理が行われる(ステップS1906)。判定条件22が指定されていた場合(ステップS1907にてYES)は、本例では平行移動・面外回転判定処理が行われる(ステップS1908)(詳細は後述する)。判定の結果、背景物体を構成していないと選定される領域に含まれる特徴量の重みを小さくする。処理中の背景物体IDから重み付き特徴量情報(図22)より選定領域の座標を基に対応する特徴量を参照する。特徴量の重みを(例えば固定量分減じて)小さくする(ステップS1909)。
【0110】
ステップS1910にて全背景物体候補領域について処理したかどうかを判定し、処理していなければステップS1904へ処理を戻して次の背景物体候補領域へ進む。
【0111】
全ての背景物体候補領域についてルールに規定された判定条件を満たしたかどうかの処理を行ったと判定した場合(ステップS1910にてYES)は、ルールに規定された全ての判定条件について、判定を行ったかどうかを判定する(ステップS1911)。行っていなければステップS1903へ制御を戻して次の判定条件へ進み、行っていればステップS1912へ処理を進める。そして、判定条件に基づいて決定された重みを属性としてもった重み付き特徴量情報(図22)を出力する(ステップS1912)。
【0112】
以上の一連の処理について、待合室のシーン、自動扉のシーンの例を用いて、更に詳細を述べる。
【0113】
a.待合室のシーン:
第一背景物体領域選定部において、継続時間の長い物体領域を背景物体候補領域とした。待合室では人物はしばらく立ち止まったりすることもあるため、人物領域がこのような背景物体候補領域に含まれることがある(図20はその一例)。そこで、背景物体領域選定ルールの判定条件として21を指定しておく。ステップS1905にてYESとなり、人体検知部212によって現在処理対象の背景物体候補領域に対して人体領域の検知を行う(ステップS1906)。そして、人体領域が検知された場合は、ステップS1909にて人体領域内の特徴量の重みを(例えば固定量分減じて)小さくする。また、人体検知部の検知結果の信頼度が出力できるときは、これに反比例するように重みを決定するようにしてもよい。
【0114】
また、待合室における典型的な背景物体である椅子は、人によって平行移動されたり、回転されたりする。同じ位置で(画面外の)回転が行われた場合は、椅子の新しい特徴が出現するが、もちろん背景物体そのものの特徴であるので背景物体特徴情報として登録する必要がある。しかし、平行移動した場合は、椅子によって隠されていた背景の一部(以下、部分背景)の領域も背景モデルとの差分が生じるために背景物体候補領域に含まれてしまう。図23に一例を示す。図示の符号2301は本物体検知装置の起動時に入力されたフレーム画像であり、椅子2302が含まれたまま背景モデルが生成される。符号2303は検知結果であり、この時点ではもちろん何も検知されない。人によって椅子2302が平行移動され、しばらく時間が経過した後の状態が符号2304で示されるフレーム画像である。椅子2302は右へ平行移動されている。そして、椅子2302によって隠されていた壁の模様2305が出現している。背景モデルには椅子2302がフレーム画像2301中の位置にある状態で生成されているので、フレーム画像2304の時点で、椅子2302の移動に伴って表れた領域とも差分が生じる。符号2306は背景差分の結果である。符号2307の斜線で示された矩形領域が物体として検知された領域を示している。そして、符号2307中の太い黒枠で囲まれた矩形領域2308が背景物体である椅子ではない、部分背景の領域である。物体領域2307から特徴量を抽出すると、部分背景領域2308からも、模様2305が存在するために特徴量が抽出されることになる。
【0115】
そこで、背景物体領域選定ルールの判定条件として「21」に加えて「22」を指定しておく。判定条件21の処理後に、ステップS1907にてYESとなり、平行移動・面外回転判定部214によって現在処理対象の背景物体候補領域に対して平行移動・面外回転判定処理を行う(ステップS1908)。
【0116】
ここでステップS1908の平行移動・面外回転判定処理の詳細について図24を用いて説明する。
【0117】
まず、過去のフレーム画像をフレーム画像記憶部215より取得する(ステップS2401)。取得する過去のフレーム画像は物体(図23の椅子2302)が動かされる前のフレーム画像であればよい。例えば、十分に長い固定時間前のフレーム画像とする方法がある。また、フレーム画像に関連づけて物体領域情報も記憶しておけば、次のような方法も可能である。即ち、過去の物体領域情報を参照することで、現在フレームで物体が検知されている当該領域内で物体が検知され始める前の時点のフレーム画像を見つけることができる。或いは、背景モデルより画像を再構成するようにしてもよい。例えば、背景モデルがDCT係数で表現されているならば、逆DCT変換を行ってRGB値で表現される画像に変換する。
【0118】
次に、取得された過去のフレーム画像中の現在処理対象となっている物体領域(図23の符号2307)と同じ領域から、現在のシーンIDに対応する種別の特徴量を取得する(ステップS2402)。本実施形態ではSIFT特徴量となる。
【0119】
次に、前記過去フレーム画像と現在フレーム画像の当該物体領域より取得した特徴量を比較し(ステップS2403)、2つの物体領域に含まれる背景物体(図23の2302)が一致するかどうかを判定する(ステップS2404)。
【0120】
具体的には例えば、文献『中川 祐,高橋友和, 目加田慶人,井手一郎, 村瀬洋, マルチテンプレート生成による実環境下のランドマークシンボル検出, DIA2008講 演論文集(動的物体検知実利用化ワークショップ2008),pp.259−264』に開示されている方法がある。まず、2つのフレーム画像中の物体領域内の特徴量の点(特徴量を抽出した座標)間の対応関係を、特徴量のユークリッド距離を基に決定する。現在フレーム画像中の物体領域内の対応するものがある複数の特徴量の点と過去フレーム画像中の物体領域内の対応特徴量の点との間で、妥当な射影変換行列を求められれば、同様な位置関係を保っていることになる。これにより、対応する特徴量から構成される現在フレームと過去フレームの背景物体(図23の2302)は一致するものであると判定できる。
【0121】
一致していれば、背景物体(図23の2302)が平行移動したものと考えられる。このときは、(図23の部分背景領域2308から抽出された)対応しなかった特徴量を出力する(ステップS2405)。一致していなければ、背景物体が面外回転をしたために新たな特徴量が出現したと考えられる。このときは、現在対象の物体領域に含まれるすべての特徴量は背景物体を構成していると考えられる。
【0122】
以上の後に、現在処理中の背景物体IDと出力された特徴量の座標を基にして重み付き特徴量情報中の、対応するものがなかった特徴量の重みを(例えば固定量分減じて)小さくする(ステップS1909)。
【0123】
b.自動扉のシーン:
第一背景物体領域選定部において、人物が存在する物体領域があったときの全ての物体領域を背景物体候補領域とした。しかし、この中でももちろん人体の領域は背景物体ではない。従って、前記人体検知部212を用いて人体として検出された領域は、背景物体である可能性が低い。そこで、人体検知結果の領域に対応する特徴量の重みを現在処理中の背景物体IDと人体検知結果の領域の座標をもとに重み付き特徴量情報中の人体検出結果領域内に相当する特徴量の重みを小さくする。(例えば固定量分減じる)また、人体検知部の検知結果の信頼度が出力できるときは、これに反比例するように重みを決定するようにしてもよい。
【0124】
次に、ステップS309の背景物体特徴情報登録処理の詳細について図25を用いて述べる。
【0125】
まず、重み付き特徴量情報(図22)よりひとつの背景物体に含まれる特徴量を取得する(ステップS2501)。
【0126】
次に、統計量生成部216において特徴量からヒストグラムを生成する(ステップS2502)。これは「Bag of words」として文献『J. Sivic and A. Zisserman. Video google: A text retrieval approach to object matching in videos. In Proc. ICCV, 2003.』などによって知られている。なお、ヒストグラムのビンは、予め以下の処理によって決定しておくものとする。様々な映像から取得した特徴量を、特徴量空間内でk―means法によりベクトル量子化することにより所定の数(k個)にクラスタリングする。クラスタリングされた単位をビンとする。ヒストグラムを作成することにより、特徴量を抽出した位置の情報は失われてしまうが、照明変動や面外回転などに伴う特徴量の変化を吸収できるようになる。
【0127】
なお、ヒストグラムを取る際は、第二背景物体領域選定部210で算出した重みを考慮し、重みを乗算した値を用いるものとする。これにより、背景物体領域に含まれている可能性の高い特徴量ほど、本ヒストグラム(背景物体特徴ヒストグラム)に大きく反映されることになる。
【0128】
次に、全ての背景物体に含まれる全特徴量について背景物体特徴ヒストグラムを生成したかを判定し(ステップS2503)、NOであれば制御をステップS2501に戻し、背景物体特徴ヒストグラムの生成(ステップS2502)を繰り返す。本実施形態では、全ての背景物体候補に含まれる全特徴量からひとつの背景物体特徴ヒストグラムを生成するものとする。
【0129】
次に、生成された背景物体特徴ヒストグラムを、重みを乗算した特徴量の数の総数を用いて正規化する(ステップS2504)。これは検知される背景物体候補領域内の特徴量の数は、背景物体の数や面外回転方向の向きなどにより一定でないためである。
【0130】
次に、正規化された背景物体特徴ヒストグラムを、背景物体特徴情報として背景物体特徴情報記憶部218へ登録する(ステップS2505)。既に背景物体特徴情報が記憶されているときは、各ビンの頻度値の総和を2で割ることにより、マージする。このようにして登録フェーズにおいて検出された全ての背景物体候補から、本物体検知装置の設置環境(シーン)における背景物体特徴情報を生成する。
【0131】
登録フェーズの間に背景物体は頻繁に動かされることにより、起こり得る全ての変化が観測(検知)される。これらを一つのモデルとすることで現在のシーンに特化した背景モデルを生成できる。
【0132】
以上、説明した方法によれば、一度、検知された物体領域の中から背景物体である領域を選定できる。更に、選定された全ての領域より抽出した特徴量からヒストグラムを取ることにより背景物体の変化にロバストな背景物体特徴情報を構築できる。
【0133】
[運用フェーズ]
次に本実施形態の運用フェーズの1フレーム画像に対する処理の流れについて図26を用いて説明する。ただし、登録フェーズと同じステップS301乃至S305については図3と同じ番号を付し、その説明は省略する。
【0134】
ステップS305の処理の後、シーン別背景物体領域選定ルール記憶部211中のシーン別特徴量種別情報(図17)より現在のシーンに対応する特徴量種別を取得する(ステップS2601)。次に、物体領域情報(図11)より物体領域(の座標)をひとつ取得する(ステップS2602)。そして、登録フェーズのステップS307と同様に取得した物体領域より入力フレーム画像の当該領域より第二特徴量抽出部209にて前記特徴量種別に応じた特徴量を抽出する(ステップS2603)。次に、抽出された特徴量を基に登録フェーズのステップS2502と同様にヒストグラムを取り背景物体特徴ヒストグラムを生成する(ステップS2604)。次に、背景物体判別部219にて現在処理中の物体領域から取得された背景物体特徴ヒストグラムを背景物体特徴情報と比較し(ステップS2605)、背景物体であるかどうかを判定する(ステップS2606)。
【0135】
本判定のために類似度として文献『M.J.Swain and D.H.Ballard: Color Indexing, International Journal of Computer Vision,Vol.7,No.1,pp.11−32(1991)』に開示されているヒストグラムインターセクションを使用する。これは、2つのヒストグラムの対応する各ビンを比較し、最小である方の値の総和として計算される。類似度を所定の閾値と比較することにより、類似度が高ければ背景物体と判定する。
【0136】
ステップS2606で背景物体と判定されたときは、背景モデル更新部205へ対応する領域が通知される。そして、背景モデル記憶部204中の背景モデルの対応領域を背景として追加する。本実施形態では、継続時間によって背景と前景(物体)を判定しているので、背景モデル中の対応領域に含まれる画素の作成時刻を、現在時刻から背景化時間の閾値分さかのぼった時刻に変更する。背景モデル(図5)中の対応領域に含まれる座標のアクティブフラグが1である状態の作成時刻を変更する。これにより、以降、対応領域は物体として検知されなくなるので、背景物体を誤検知することがなくなる。
【0137】
検知された全物体領域についてステップS2602からステップS2607までの処理を行ったかどうかを判定する(ステップS2608)。行っていなければ処理をステップS2602へ戻し、行っていれば本処理を終了し、次フレーム画像へ処理を移す。
【0138】
以上、説明した実施形態によれば、一旦、物体として誤検知してしまっても、背景物体であれば以降、背景として扱えるようになるために誤検知が抑止できるようになる。言いかえれば、物体をもともと背景に存在していた背景物体と新たに持ち込まれた物体とを区別して扱うことができるようになる。
【0139】
[その他の実施形態]
実施形態における背景差分法は、映像から抽出された特徴量が映像中に出現してからの継続時間を基に行われているが、この方法に限定されるものではなく、他の様々な方式にも適用可能である。例えば、初期化時の入力フレーム画像をそのまま背景モデルとして扱い、以降の入力フレーム画像と比較し、所定値以上の差分が生じた画素を物体としてもよい。ただし、この場合に、前述の待合室のシーンでの背景物体特徴情報を生成するためには物体の継続時間を求める部が必要になる。これは、フレーム間で検知された物体領域の位置や特徴量などをもとに対応付けを行うトラッキング部を更に備えることにより、実現が可能である。
【0140】
実施形態では、背景物体特徴情報として背景物体特徴ヒストグラムを用いたが、これに限定されるものではない。例えば、入力フレーム画像より背景物体領域を切り出して、画素データそのものを用いるようにしてもよい。
【0141】
実施形態では、背景物体領域は第一背景物体領域選定部208と第二背景物体領域選定部210によって選定された。しかしながら、ユーザが選定を行うようにしても構わない。例えば、次の方法がある。まず、表示装置107を用いて入力フレーム画像の表示を行い、ユーザが入力装置106を介して背景物体領域の指定をする。また或いは、第一背景物体領域選定部208や第二背景物体領域選定部210によって選定された背景物体領域を一旦、表示装置107を用いて表示する。表示された背景物体領域の中からユーザが入力装置106を介して背景物体領域の補正を行う。以上のような方法によって得られた背景物体領域より統計量生成部216において背景物体特徴ヒストグラムを生成するようにしてもよい。
【0142】
実施形態では、背景物体判別部219にて背景物体と判定された領域は、背景モデル更新部205に出力され、背景モデル更新部205にて背景モデルに当該領域を登録した。これにより、以降の誤検知を抑止している。しかしながら、背景物体と判定された領域を物体検出領域出力部207に出力し、物体検出領域出力部207にて当該領域を物体領域情報(図9)より削除し、物体検知装置から誤検知の出力を抑止するようにしてもよい。
【0143】
図1において各装置はバス109によって接続されているが、一部の装置をネットワークI/F108により接続して構成しても良い。例えば画像入力装置をネットワークI/F108により接続して画像を入力するように構成しても良い。また、全ての部を集積回路チップに納め、画像入力装置105と一体化させてもよい。
【0144】
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26