(57)【特許請求の範囲】
【請求項１】
入力された入力画像から検出対象物を抽出し、抽出した結果を出力する物体検出装置であって、
前記入力画像の全体から、検出対象物らしさを評価した結果が予め設定された第１の条件を満たす領域を検出対象物の領域として抽出する第１抽出手段と、
前記入力画像において、前記第１抽出手段にて抽出された領域の少なくとも一部を含む周辺領域から、検出対象物らしさを評価した結果が、前記第１の条件より検出対象物を検出しやすい条件に予め設定された第２の条件を満たす周辺領域を検出対象物の領域として抽出する第２抽出手段と、
を有する、ことを特徴とする物体検出装置。
【請求項２】
前記第２抽出手段は、前記第１抽出手段にて抽出された領域の少なくとも一部を含む周辺領域を検出窓領域とし、当該検出窓領域の画像の検出対象物らしさを評価した結果が前記第２の条件を満たす場合に当該検出窓領域を検出対象物の領域として抽出し、
前記第２の条件は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が大きいほど検出対象物を検出しやすい条件に予め設定される、ことを特徴とする請求項１に記載の物体検出装置。
【請求項３】
前記第２抽出手段は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が予め設定された下限値以下である場合、前記第２の条件が満たされていても当該検出窓領域を検出対象物の領域として抽出しない、ことを特徴とする請求項２に記載の物体検出装置。
【請求項４】
前記第２抽出手段は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が予め設定された上限値以上である場合は、前記第２の条件が満たされていても当該検出窓領域を検出対象物の領域として抽出しない、ことを特徴とする請求項２または３に記載の物体検出装置。
【請求項５】
前記第１抽出手段は、前記入力画像中の領域の検出対象物らしさを表すスコアを算出する複数の強識別器をカスケード接続した識別器にて構成され、
前記第２抽出手段は、前記識別器の各強識別器にて算出された前記スコアを用いて検出対象物の領域を抽出する、ことを特徴とする請求項１から４のいずれか１項に記載の物体検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視カメラ等から取得された画像から検出対象物を検出する物体検出装置に関する。
【背景技術】
【０００２】
従来、人物等の検出対象物の全体が映っている画像を学習データとして用いて学習した識別器により、１フレームの画像から検出対象物に対応した画像領域が含まれるか否かを検出する物体検出装置が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許出願公開第２００２／０１０２０２４号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、検出対象物に重なりがある（オクルージョンが発生している）画像に対して検出処理を行う場合、検出対象物の全体が映っている画像を用いて学習を行う従来の物体検出装置では、前面にある検出対象物は検出できるが、その検出対象物の背面にあり一部が隠されている検出対象物の検出は困難である。
【０００５】
一部が隠されている検出対象物も漏れなく検出するために、例えば、識別器の検出閾値を緩めて検出を行うことが考えられる。しかしながら、検出閾値を緩めて検出を行うと、オクルージョンが発生している検出対象物は検出しやすくなるが、検出対象物でないものを誤って検出対象物として検出してしまう可能性も高まる。
【０００６】
本発明は、オクルージョンが発生している検出対象物が画像中に存在しても、検出漏れを回避すると共に画像中の検出対象物を精度良く検出する物体検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様は、入力された入力画像から検出対象物を抽出し、抽出した結果を出力する物体検出装置であって、前記入力画像の全体から、検出対象物らしさを評価した結果が予め設定された第１の条件を満たす領域を検出対象物の領域として抽出する第１抽出手段と、前記入力画像において、前記第１抽出手段にて抽出された領域の少なくとも一部を含む周辺領域から、検出対象物らしさを評価した結果が、前記第１の条件より検出対象物を検出しやすい条件に予め設定された第２の条件を満たす周辺領域を検出対象物の領域として抽出する第２抽出手段と、を有する、ことを特徴とする物体検出装置である。これにより、前面にある検出対象物をまず検出し、検出された検出対象物が隠蔽物となりうる周囲の領域に限定して背面の検出対象物を検出しやすく変更した条件で検出することができる。
【０００８】
本発明の一態様において、前記第２抽出手段は、前記第１抽出手段にて抽出された領域の少なくとも一部を含む周辺領域を検出窓領域とし、当該検出窓領域の画像の検出対象物らしさを評価した結果が前記第２の条件を満たす場合に当該検出窓領域を検出対象物の領域として抽出し、前記第２の条件は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が大きいほど検出対象物を検出しやすい条件に予め設定されていてよい。
【０００９】
本発明の一態様において、前記第２抽出手段は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が予め設定された下限値以下である場合、前記第２の条件が満たされていても当該検出窓領域を検出対象物の領域として抽出しないものであってよい。これにより、前面にある検出対象物と背面にある検出対象物との重なりが少ない場合に、共に前面にある検出対象物として二重に検出されてしまうことを防止できる。
【００１０】
本発明の一態様において、前記第２抽出手段は、前記第１抽出手段にて抽出された領域と前記検出窓領域との重複部分の前記検出窓領域に占める割合が予め設定された上限値以上である場合は、前記第２の条件が満たされていても当該検出窓領域を検出対象物の領域として抽出しないものであってよい。これにより、同一の検出対象物を多重に検出してしまうことを防止できる。
【００１１】
本発明の一態様において、前記第１抽出手段は、前記入力画像中の領域の検出対象物らしさを表すスコアを算出する複数の強識別器をカスケード接続した識別器にて構成され、前記第２抽出手段は、前記識別器の各強識別器にて算出された前記スコアを用いて検出対象物の領域を抽出するものであってよい。これにより、検出処理の処理量増加を抑制できる。
【発明の効果】
【００１２】
本発明によると、オクルージョンが発生している検出対象物が画像中に存在しても、検出漏れを回避すると共に画像中の検出対象物を精度良く検出できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態における物体検出装置の構成例を示す機能ブロック図である。
【図２】物体の検出処理を説明する図である。
【図３】識別器の構成例を示す図である。
【図４】重なり候補領域を選定する処理を説明する図である。
【図５】物体検出装置の処理手順の例を示すフローチャートである。
【図６】人物識別処理の詳細手順の例を示すフローチャートである。
【図７】検出窓領域の位置設定処理の手順の例を示すフローチャートである。
【図８】人物識別処理の部分的な手順の例を示すフローチャートである。
【図９】人物の判定処理の詳細手順の例を示すフローチャートである。
【図１０】オクルージョン判定処理の詳細手順の例を示すフローチャートである。
【図１１】物体検出装置の構成の他の例を示す機能ブロック図である。
【図１２】頭部検出を行う場合の重なり候補領域選定処理を説明する図である。
【図１３】物体検出装置の処理手順の他の例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
本発明の実施の形態における物体検出装置１は、図１に示すように、画像取得部２、信号処理部３、記憶部４及び出力部５を含んで構成される。物体検出装置１は、所定の監視空間を撮像した画像を取得し、画像内に撮像された人や物等の検出対象物を検出する。画像取得部２、信号処理部３、記憶部４及び出力部５は互いに情報伝達可能に接続される。
【００１５】
なお、本実施の形態では、画像内に写った人を検出対象物とする例について説明する。ただし、これに限定されるものではなく、流通下に置かれる商品等の物品、通行する車等を検出する場合等にも適用することができる。
【００１６】
画像取得部２は、ＣＣＤ素子やＣ−ＭＯＳ素子等の撮像素子、光学系部品、アナログ／デジタル変換器等を含んで構成されるカメラを含む。また、画像取得部２は、インターネットのネットワークを介して画像を取得するものであってもよい。画像取得部２は、撮像した画像を入力画像２００として信号処理部３へ送信する。画像を取得する間隔は一定の時間間隔でなくてもよい。また、画像取得部２は、固定した場所に設置されていてもよいし、移動可能に設置されていてもよい。
【００１７】
画像は、例えば、幅３２０ピクセル、高さ２４０ピクセル、各ピクセルがＲ（赤）、Ｇ（緑）、Ｂ（青）をそれぞれ２５６階調で表現したカラー画像である。
【００１８】
信号処理部３は、ＣＰＵ、ＤＳＰ、ＭＣＵ、ＩＣ等の演算回路を含んで構成される。信号処理部３は、画像取得部２、記憶部４および出力部５と情報伝達可能に接続される。信号処理部３は、検出窓領域選択手段３０、走査手段３１、識別器３２、人物判定手段３３、人物重なり候補領域選定手段３４、オクルージョン判定手段３５等の各手段での処理を記述したプログラムを記憶部４から読み出して実行することによりコンピュータを各手段として機能させる。
【００１９】
図２を参照し、信号処理部３は、入力画像２００から検出対象物を検出する。説明の都合上、入力画像２００の左上を原点Ｘ＝０，Ｙ＝０とし、横方向にＸ軸、縦方向にＹ軸とし、Ｘ軸は右方向、Ｙ軸は下方向に正に増加するものとする。入力画像２００には、領域２０３，２０４の位置に検出対象物（人）が写っており、矩形２０１，２０２は検出窓領域を示している。
【００２０】
物体検出装置１は、検出窓領域を少しずつずらしながら走査し、検出窓領域に人が写っている否かを判定する。矢印は、検出窓領域をずらす際の左上の座標を示すものであり、検出窓領域は入力画像２００全体を漏れなく探索するように走査する。領域２０３，２０４付近にある矩形は、検出処理の結果、人であると判定された検出窓領域（人候補領域）を示す。人が写っている画像領域付近では、人であると判定される検出窓領域が複数抽出される場合があるが、検出窓領域を纏める処理を行うことで最終的な検出窓領域（図２中の太線：人領域）を得る。
【００２１】
検出窓領域選択手段３０は、検出窓領域の幅と高さを決定する。画像内に様々な大きさで写る人に対応するため検出窓領域の幅と高さを変更しながら、検出窓領域を走査して画像内に人が写っているか否かを判定する。なお、検出窓領域の幅と高さは、検出対象物の画像上での大きさを考慮して、予め記憶部４に１または複数を記憶している。ただし、予め幅と高さを記憶していなくとも、所定の規則に従って決定してもよい。
【００２２】
走査手段３１は、検出窓領域をずらす間隔（走査間隔）を決定し、決定した走査間隔に基づいて検出窓領域をずらす。
【００２３】
識別器３２は、検出窓領域内の画像がどれだけ人に似ているか、類似度を計算する。識別器３２は、多数の「人」の画像データ、「人以外」の画像データを用いて予め学習させる。
【００２４】
類似度は、図３に示す処理手順で計算される。図３のカスケード型識別器３２０は、図１の識別器３２の具体例である。
【００２５】
まず、入力画像２００から切り出された検出窓領域内の画像３１０が、カスケード型識別器３２０に入力される。カスケード型識別器３２０は、強識別器３２１，３２２，３２３のような複数の強識別器が直列に並んだ識別器である（ここではＮ個の強識別器が直列に並んでいる例を示す）。個々の強識別器は、ヒストグラム・オブ・オリエンティッド・グラディエント（ＨＯＧ：Histograms of Oriented Gradients）特徴を用いてアダブースト（AdaBoost）で予め学習させる。すなわち、検出対象物である人の様々な画像と人が写っていない画像を大量に用意し、各画像に対して検出対象物の画像であるか否か正解付けを行っておき、これらのデータを用いて両者が識別できるようにアダブーストで学習させる。類似度を計算するときは、各強識別器は、入力された画像からＨＯＧ特徴を計算し、アダブーストで選択された特徴量より類似度を計算する。
【００２６】
強識別器３２１〜３２３はあらかじめ計算する順序が決まっており、最初に計算する強識別器３２１が１、次に計算する強識別器３２２が２・・・Ｎのように各強識別器には計算する順番と同じ番号を割り当てる。
【００２７】
各強識別器３２１〜３２３は、検出窓領域として切り出された画像を入力とし、類似度を計算する。最先の強識別器３２１以外の強識別器３２２，３２３等は、前段で計算された類似度が閾値より大きい場合のみ（図中Ｔの矢印）、類似度を計算する。前段で計算された類似度が閾値以下の場合（図中Ｆの矢印）、強識別器３２２，３２３等は類似度の計算を行わない。閾値は、例えば０に設定し、０より大きければ人に似ており、０以下であれば人に似ていないと判定する。以下、類似度を算出した強識別器の個数、すなわち、最後に類似度を算出した強識別器の番号を判定段数という。類似度と判定段数は、検出窓領域の大きさ（幅、高さ）と中心座標と共に、記憶部４に判定情報履歴４０として記憶される。
【００２８】
再び図１を参照し、本発明の第１抽出手段の一態様である人物判定手段３３は、記憶部４に記憶されている判定情報履歴４０を用いて、画像中のどこに人が写っているかを決定する。例えば、判定情報履歴４０に含まれるデータの中で、判定段数が最後の強識別器の番号と同じでありかつ類似度が閾値以上（例えば、閾値は０に設定される）の検出窓領域を人候補領域として抽出する。人候補領域がない場合は、入力画像中に人領域はないということで終了する。
【００２９】
人候補領域があった場合、人候補領域を纏める処理を行う。例えば、検出窓領域の大きさと中心座標を用いて、一定以上（例えば、検出窓領域の面積の半分以上）の領域が重なっている人候補領域を纏める。纏めた人候補領域の中で類似度が一番高い検出窓領域を人領域（図２の太線領域）として選択する。纏めた領域毎に選択された検出窓領域を人領域とし、選択された検出窓領域の情報を人物重なり候補領域選定手段３４に対して出力する。また、この人領域の検出窓領域の情報および画像を出力部５に対して出力する。人候補領域を纏める処理の他の例では、まず類似度が最も大きい人候補領域を選択し、その人候補領域の中心座標から一定の範囲内（例えば幅１０ピクセル以内、高さ１０ピクセル以内）の領域に他の人候補領域が存在するか否かを調べる。他の人候補領域が存在する場合は、当該他の人候補領域を候補から除外する。この処理を類似度が高い順にすべての人候補領域に対して行った時点で残っている人候補領域を人領域とし、この人領域の情報を人物重なり候補領域選定手段３４に対して出力する。
【００３０】
人物重なり候補領域選定手段３４は、人物判定手段３３が抽出した人領域の周辺の入力画像中の領域を、オクルージョンが発生している可能性がある領域（人物重なり候補領域）として選定する。
【００３１】
図４を参照し、人物重なり候補領域の選定処理を説明する。図４の入力画像２００には、人物４０１，４０３，４０５，４０７が写っている。人物４０１および人物４０５は、その全身が写っていることから、人物判定手段３３により、各人物４０１，４０５を含む各領域４０２，４０８が人領域として抽出されたとする。人物重なり候補領域選定手段３４は、例えば、人領域４０２の周辺の人物重なり候補領域として、人領域４０２を含む矩形４０４を選定する。ここで、人領域４０２の左上座標（ｘ１，ｙ１）、幅Ｗ１、高さＨ１とし、矩形４０４の左下座標（ｘ１−Ｗ１／２，ｙ１＋Ｈ１）、右上座標（ｘ１＋３×Ｗ１／２，ｙ１−Ｈ１）である。さらに、人領域４０８の周辺の人物重なり候補領域として、例えば人領域４０８を含む矩形４０６を選定する。ここで、人領域４０８の左上座標（ｘ２，ｙ２）、幅Ｗ２、高さＨ２とし、矩形４０６の左下座標（ｘ２−Ｗ２／２，ｙ２＋Ｈ２）、右上座標（ｘ２＋３×Ｗ２／２，ｙ２−Ｈ２）である。このように選定された人物重なり候補領域４０４，４０６に対し、次に説明するオクルージョン判定手段３５において、人物判定手段３３よりも人領域を検出しやすい条件で人領域の判定が再び行われる。
【００３２】
図１の説明に戻り、本発明の第２抽出手段の一態様であるオクルージョン判定手段３５は、人物重なり候補領域について、人物判定手段３３よりも人領域を検出しやすい条件で人領域の判定を行う。例えば、オクルージョン判定手段３５は、記憶部４の判定情報履歴４０から、人物重なり候補領域との間に重複部分を有する検出窓領域のデータを読み出し、読み出したデータの中で、判定段数が閾値以上であり、かつ類似度が閾値以上の検出窓領域を人候補領域とする。このとき、判定段数の閾値および類似度の閾値として、人物判定手段３３で用いられる各閾値よりも小さい値を用いる。このことから、オクルージョン判定手段３５における人領域の検出の条件は、人物判定手段３３における人領域の検出の条件よりも人領域を検出しやすい条件であると言える。人候補領域がない場合は、入力された人物重なり候補領域中にオクルージョンの発生している人領域はないということで終了する。
【００３３】
オクルージョン判定手段３５で用いられる判定段数の閾値および類似度の閾値は、検出窓領域と人物判定手段３３で検出された人領域との重複部分の検出窓領域に対する割合に応じて異なる値にしてもよい。例えば、重複部分の面積を計算し、検出窓領域の面積に対する重複部分の面積の割合が大きいほど、各閾値をより小さくし（条件を緩める）、重複部分の面積の割合が小さいほど、各閾値をより大きく設定する（条件を厳しくする）。例えば、人物判定手段３３における判定段数の閾値が１３、類似度の閾値が０である場合に、重複部分の面積の割合が１／５以下なら、判定段数の閾値を１２、類似度の閾値を−１．０とし、重複部分の面積の割合が１／５〜２／５の間なら、判定段数の閾値を１１、類似度の閾値を−１．２とし、割合が２／５以上なら判定段数の閾値を１０、類似度の閾値を−１．５とすることが考えられる。
【００３４】
オクルージョン判定手段３５で人候補領域が検出された場合、検出窓領域の中心座標が近いものを纏める処理を行う。この処理の手順は、人物判定手段３３に関して既に説明した人候補領域を纏める処理と同様であってよい。纏めた人候補領域の中で、人物判定手段３３で判定された人領域との重複部分が一定範囲以内である人候補領域を、オクルージョンの発生している人領域とする。この人領域の検出窓領域の情報および画像を出力部５に対して出力する。
【００３５】
記憶部４は、ＲＯＭ、ＲＡＭ等のメモリ装置等で構成され、信号処理部３と接続される。記憶部４は、各種プログラム及び各種データを記憶することができ、信号処理部３からの要求に応じてこれらの情報を読み書きする。記憶部４は、信号処理部３の各手段の処理の手順を記述したプログラムを記憶する。記憶部４は、判定情報履歴４０として、人候補領域である検出窓領域の大きさ（幅、高さ）と中心座標、判定段数、および類似度を互いに関連づけて記憶する。
【００３６】
出力部５は、報知音を出力する音響出力手段や入力画像を表示する表示手段を含んで構成することができる。例えば、人物判定手段３３やオクルージョン判定手段３５で人領域が検出された場合に、スピーカー、ブザー等の音響出力手段で警報を鳴らしたり、ディスプレイ等の外部表示装置に入力画像を表示したりする。また、出力部５は、コンピュータをネットワークや電話回線に接続するためのインターフェースを含んでもよい。この場合、出力部５は、電話回線やインターネット等の情報伝達手段を介して、センタ装置（図示しない）に入力画像や人領域の情報を送出する。なお、センタ装置は、画像内の検出対象物を監視するセンタ等に設置されるホストコンピュータである。
【００３７】
以下、物体検出装置１の動作の例を説明する。
【００３８】
図５は、物体検出装置１の処理手順の例を示すフローチャートである。
【００３９】
ステップＳ１０では、画像取得部２において画像を取得し、取得された画像が信号処理部３に入力される。画像の取得タイミングは決まった時間間隔とする。
【００４０】
ステップＳ２０では、入力画像の各領域に人がいる可能性を計算する処理、すなわち、人物識別処理が行なわれる。人物識別処理の詳細について図６を用いて説明する。
【００４１】
ステップＳ２１０で、検出窓領域の大きさ（幅と高さ）を決定する。検出窓領域の大きさを予め設定した複数の大きさに順次変更しつつ、各大きさの検出窓領域で画像全体を走査する。また、本実施の形態では検出窓領域は矩形としたので大きさとして幅と高さのみを決定すればよいが、検出窓領域は任意の形状であってよく、その場合には形状と大きさを決定する。この処理は検出窓領域選択手段３０にて行われる。
【００４２】
ステップＳ２２０からステップＳ２３０の処理は、ステップＳ２１０で設定した検出窓領域の大きさで画像全体を走査し終わるまで繰り返す。
【００４３】
ステップＳ２２０において、検出窓領域の位置を決定する。この処理は走査手段３１で行われ、図７のフローチャートを用いて説明する。なお、ここでは検出窓領域の左上の座標を開始点と呼び、決定すべき検出窓領域の開始点を（ＳＸ，ＳＹ）、前回の検出窓領域の開始点を（ＢＸ，ＢＹ）とする。
【００４４】
ステップＳ２２０１において、検出窓領域の大きさが変更されたかどうかの判定を行う。検出窓領域の大きさが変更された直後の場合には、ステップＳ２２０５において検出窓領域の開始点（ＳＸ，ＳＹ）を（０，０）に設定してステップＳ２３０に移行する。検出窓領域の大きさ変更後、初めての判定処理ではない場合にはステップＳ２２０２へ移行する。
【００４５】
ステップＳ２２０２では、前回の検出窓領域の開始点（ＢＸ，ＢＹ）を読み出す。ステップＳ２２０３では、ステップＳ２２０２で読み出した前回の検出窓領域の開始点（ＢＸ，ＢＹ）から、画像の右端まで調査したか否かを判定する。前回の検出窓領域で画像の右端まで走査が終了した場合、すなわち検出窓領域の右端ＢＸ＋Ｗ（ただし、Ｗは検出窓領域の幅）が画像の右端に一致した場合には、ステップＳ２２０６において検出窓領域の開始点を（ＳＸ，ＳＹ）＝（０，ＢＹ＋ｑ）と設定し、ステップＳ２３０に移行する。ただし、ｑは予め定めた定数とする。例えば、入力画像が幅３２０ピクセル、高さ２４０ピクセルの場合にはｑ＝４ピクセルに設定する。右端まで走査していない場合にはステップＳ２２０４に移行する。
【００４６】
ステップＳ２２０４において、Ｘ方向に検出窓領域をｐピクセルずらし、Ｙ方向にはずらさないように検出窓領域の開始点（ＳＸ，ＳＹ）を決定する。すなわち、検出窓領域の開始点（ＳＸ，ＳＹ）＝（ＢＸ＋ｐ，ＢＹ）とする。ただし、ｐは予め定めた定数とする。例えば、入力画像が幅３２０ピクセル、高さ２４０ピクセルの場合にはｐ＝４ピクセルに設定する。その後、処理は図６のステップＳ２３０に移行する。
【００４７】
ステップＳ２３０では、ステップＳ２２０で設定された検出窓領域内の画像がどれだけ人に似ているかを示す類似度を計算する。これは、図３に示すカスケード型識別器３２０の処理である。識別処理の手順について図８のフローチャートを用いて説明する。
【００４８】
ステップＳ２３０１では、現在の検出窓領域からＨＯＧ特徴量を計算する。ただし、この処理はステップＳ１０（図５）とステップＳ２１０（図６）との間で、入力画像の各ピクセルのエッジの強度と角度を計算し、エッジの角度ごとのインテグラル画像を作成しておくことで高速に計算することが可能になる。
【００４９】
ステップＳ２３０２では、Ｎ個の強識別器３２１，３２２，・・・のすべてを調査し終わったか否かの判定を行う。すべての強識別器を調査し終わった場合はステップＳ２３０６に移行し、終わっていない場合にはステップＳ２３０３に移行し、次の強識別器での調査を行う。ステップＳ２３０３では、検出窓領域内の画像が人に似ているか否かを判定するための類似度を計算する。
【００５０】
ステップＳ２３０４では、ステップＳ２３０３において計算した類似度を判定した強識別器の番号と共に一時的な記憶領域に記憶する。
【００５１】
ステップＳ２３０５では、ステップＳ２３０３において計算した類似度が閾値（通常、閾値は０に設定される）より大きいか否かを判定する。閾値より大きい場合はステップＳ２３０２に移行し、閾値以下の場合はステップＳ２３０６に移行する。
【００５２】
ステップＳ２３０６では、現在の検出窓領域の大きさ（幅と高さ）および中心座標と、現時点で一時的に記憶されている類似度および強識別器の番号（すなわち判定段数）と、を互いに関連づけて判定情報履歴４０として記憶部４に記憶させる。これは、後述の人物判定処理（ステップＳ３０）およびオクルージョン判定処理（ステップＳ５０）等で用いられる。
【００５３】
ステップＳ２３０６の後、次の検出窓領域に対しステップＳ２２０，Ｓ２３０（図６）の処理を行う。
【００５４】
再び図６を参照し、ステップＳ２４０では、すべての大きさの検出窓領域について検出処理が終了したか否かを判定する。すべての大きさの検出窓領域について調査が終わった場合はステップＳ３０（図５）に移行し、終わっていない場合はステップＳ２１０に処理を戻す。
【００５５】
再び図５を参照し、ステップＳ３０では、ステップＳ２０で求めて判定情報履歴４０として記憶部４に記憶されている各検出窓領域の大きさ（幅、高さ）、中心座標、類似度、および判定段数から最終的に人が写っている位置を決定する。この処理は人物判定手段３３で行われ、図９のフローチャートを用いて説明する。
【００５６】
ステップＳ３０１〜ステップＳ３０２の処理は、ステップＳ２０で求めて判定情報履歴４０として記憶されているすべての検出窓領域について行われる。判定情報履歴４０は、上述のとおり、各検出窓領域のデータとして、検出窓領域の大きさ、中心座標、類似度、および判定段数を含む。
【００５７】
ステップＳ３０１では、検出窓領域を人候補領域とする条件を検出窓領域のデータが満たすか否かを判定する。本例では、「判定段数が最後の強識別器の番号Ｎであり、かつ、類似度が閾値より大きい」との条件を満たすか否かを判定する。「判定段数がＮである」とは、当該検出窓領域について最後の強識別器で類似度が計算されたことを意味する。例えば、Ｎ＝１３に設定される。また、類似度の閾値は、通常は０に設定される。
【００５８】
ステップＳ３０１の条件を満たす場合はステップＳ３０２に移行し、条件を満たさない場合は未処理の検出窓領域についてステップＳ３０１の判定を行う。ステップＳ３０２では、ステップＳ３０１で条件を満たした検出窓領域を人候補領域に追加する。
【００５９】
判定情報履歴４０に記憶された情報に対してステップＳ３０１〜ステップＳ３０２を繰り返すことで求めた人候補領域は、図２に示すように、人が写っている近くに複数抽出される場合がある。ステップＳ３０３〜ステップＳ３０５では、複数の人候補領域から人領域を最終的に選択する。
【００６０】
ステップＳ３０３では、人候補領域として抽出された検出窓領域の大きさと中心座標を用いて、一定以上（例えば、検出窓領域の面積の半分以上）の領域が重なっている人候補領域をグループとして纏める。ステップＳ３０４では、ステップＳ３０３で作成されたグループ毎に人候補領域の中で類似度が一番高い検出窓領域を人領域として選択する。ステップＳ３０５では、ステップＳ３０４で選択された検出窓領域を人領域とし、ステップＳ４０（図５）に移行する。
【００６１】
再び図５を参照し、ステップＳ３０で決定した各人領域に対し、ステップＳ４０〜ステップＳ５０の処理が行われる（ステップＳ３５でＹＥＳ）。ステップＳ３０で決定された人領域が存在しない場合は（ステップＳ３５でＮＯ）、その旨を出力し（ステップＳ６０）、処理を終了する。ステップＳ３５でＮＯの場合、出力処理は省略してもよい。
【００６２】
ステップＳ４０では、ステップＳ３０で決定した各人領域に基づいて、オクルージョンが発生している可能性がある領域（人物重なり候補領域）を選定する。例えば、人領域の開始点を基準に予め定められた大きさの範囲の領域を人物重なり候補領域とする。この処理は人物重なり候補領域選定手段３４で行われる。この処理の具体例は、図４を参照して既に説明したとおりである。
【００６３】
ステップＳ５０では、ステップＳ４０で選定した人物重なり候補領域に対して人物判定処理を行うことで、オクルージョンが発生している人の有無を判定する。この処理は、オクルージョン判定手段３５によって、人物判定手段３３の人物判定処理（ステップＳ３０）よりも検出窓領域を人候補領域と判定しやすい条件を用いて行われる。この処理は、例えば図１０に示すフローチャートに従って行われる。
【００６４】
図１０を参照し、判定情報履歴４０に含まれるデータのうち、中心座標が人物重なり候補領域に含まれるすべての検出窓領域について、ステップＳ５０１〜ステップＳ５０３の処理が行われる。
【００６５】
ステップＳ５０１では、現在の処理対象の検出窓領域と、現在の処理対象の人物重なり候補領域中のステップＳ３０で判定された人領域と、の重複部分の検出窓領域に対する割合を求める。例えば、現在の検出窓領域の大きさおよび中心座標と、人領域である検出窓領域の大きさおよび中心座標と、を用いて重複部分の面積を求め、求めた面積の現在の検出窓領域の面積に対する割合を求めればよい。
【００６６】
ステップＳ５０２では、検出窓領域を人候補領域とする条件を現在の検出窓領域のデータが満たすか否かを判定する。この条件は、人物判定処理（ステップＳ３０）のステップＳ３０１で用いられる人候補領域の判定条件よりも緩やかな条件、つまり、人候補領域と判定しやすい条件に予め設定される。また、この条件は、検出窓領域と人領域との間の重複部分の検出窓領域に対する割合を用いて定義され、この条件の評価にはステップＳ５０１で求めた割合が用いられる。本例では、ステップＳ５０２の条件は、「判定段数が閾値θ１より大きく、かつ、類似度が閾値θ２より大きい」に設定される。ただし、閾値θ１，θ２は、人物判定手段３３がステップＳ３０１で用いる判定段数および類似度の各閾値よりも小さい値に設定される。よって、本例では、判定段数の閾値θ１は、カスケード型識別器３２０における最後の強識別器の番号Ｎよりも小さい値に設定され、類似度の閾値θ２は、０よりも小さい値に設定される。閾値θ１，θ２は、さらに、検出窓領域と人領域との間の重複部分の検出窓領域に対する割合が大きい程、人候補領域を検出しやすい値（ここでは、より小さい値）を用いるように設定される。閾値θ１，θ２の具体例として、人物判定手段３３によるステップＳ３０１の判定における判定段数の閾値がＮ＝１３であり、類似度の閾値が０である場合、ステップＳ５０１で求めた重複部分の割合が１／５以下なら閾値θ１＝１２，θ２＝−１．０、割合が１／５〜２／５なら閾値θ１＝１１，θ２＝−１．２、割合が２／５以上なら閾値θ１＝１０，θ２＝−１．５としてもよい。
【００６７】
ステップＳ５０２の条件を満たす場合はステップＳ５０３に移行し、条件を満たさない場合はステップＳ５０１に戻り、未処理の検出窓領域についてステップＳ５０１以降の処理を行う。ステップＳ５０３では、ステップＳ５０２で条件を満たした検出窓領域を人候補領域に追加する。
【００６８】
ステップＳ５０１〜ステップＳ５０３の処理では、上述のようにステップＳ５０２で人候補領域の判定条件として人物判定処理（ステップＳ３０）よりも緩やかな条件を用いるため、人物判定処理で検出された人領域の人物と重なり合って一部が隠れている人物を含む検出窓領域も人候補領域として検出され得る。また、ステップＳ５０１〜ステップＳ５０３の処理は、入力画像の全体ではなく、人物判定処理で検出済みの人領域の周辺で選定された人物重なり候補領域に限定して行われることから、例えば入力画像の全体に対して緩やかな判定条件を用いて検出を行う技術と比較して、誤検出の可能性を低減できる。
【００６９】
ステップＳ４０で設定した人物重なり領域に中心座標がある検出窓領域に対してステップＳ５０１〜ステップＳ５０３を繰り返すことで求めた人候補領域は、人が写っている近くに複数抽出される場合がある。ステップＳ５０４〜ステップＳ５０８では、複数の人候補領域から人領域を最終的に決定する。
【００７０】
ステップＳ５０４では、人候補領域として抽出された検出窓領域の大きさと中心座標を用いて、一定以上（例えば、検出窓領域の面積の半分以上）の領域が重なっている人候補領域をグループとして纏める。ステップＳ５０５では、ステップＳ５０４で作成されたグループ毎に人候補領域の中で類似度が一番高い検出窓領域を選択する。
【００７１】
ステップＳ５０５で各グループについて選択された検出窓領域のそれぞれについて、ステップＳ５０６〜ステップＳ５０８の処理を行う。
【００７２】
ステップＳ５０６では、ステップＳ５０５で選択された検出窓領域と現在の人物重なり候補領域中のステップＳ３０で判定された人領域との重複部分の当該検出窓領域に対する割合を計算する。
【００７３】
ステップＳ５０７では、ステップＳ５０６で求めた割合が下限値Ｌより大きく、かつ上限値Ｕより小さいか否かを判定する。下限値Ｌおよび上限値Ｕは、予め設定して記憶部４に記憶させておけばよい。下限値Ｌは、例えば０．０５に設定され、上限値Ｕは、例えば０．５に設定される。ステップＳ５０７の条件を満たす場合、選択された検出窓領域を、オクルージョンが発生している人の領域であると判定し、ステップＳ５０８で当該検出窓領域を人領域とする。ステップＳ５０７の条件を満たさない場合、オクルージョンが発生している人の領域でないと判定し、未処理のグループについて選択された検出窓領域に対しステップＳ５０６以降の処理を行う。
【００７４】
ステップＳ５０７の判定条件は、選択された検出窓領域がオクルージョンの発生している人の領域であるか否かを判定する条件であると言える。各グループについて選択された検出窓領域が、ステップＳ３０で検出済みの人領域との間に下限値Ｌ以下の割合の重複部分を有する場合、当該検出窓領域もまた、ステップＳ３０で人領域として検出済みである可能性が高い。また、選択された検出窓領域が、ステップＳ３０で検出済みの人領域との間に上限値Ｕ以上の割合の重複部分を有する場合、当該検出窓領域の人は、当該人領域の人と同一人物である可能性が高い。以上より、ステップＳ５０７では、重複部分の割合が下限値Ｌ〜上限値Ｕの範囲外の値である検出窓領域について、オクルージョンの発生している人領域でないと判定する。
【００７５】
ステップＳ５０５で選択された各グループの検出窓領域に対するステップＳ５０６〜Ｓ５０８の処理が終了すると、処理は図５のステップＳ６０に移行する。
【００７６】
再び図５を参照し、ステップＳ６０では、ステップＳ５０で人領域と判定された検出窓領域が１以上存在する場合に、判定情報履歴４０中の当該検出窓領域の情報を当該検出窓領域の画像と共に異常信号としてセンタ装置へ送出する。この処理は出力部５で行われる。
【００７７】
以下、本発明の実施の形態の変形例を説明する。
【００７８】
変形例では、上述した実施の形態の処理において、入力画像に変化があった領域を特定する背景差分処理や、入力画像中の人物の頭部の候補を検出する頭部候補検出処理をさらに行ってもよい。例えば、画像取得部２が固定カメラなどであり、検出対象物が写っていない場合の画像が固定されている場合、検出対象物が写っていないときの背景画像に対して変化のあった領域を背景差分処理により特定し、特定した領域に対してのみ、上述の人物判定処理などを行ってもよい。また例えば、頭部候補検出処理によって検出した人物の頭部の候補を基準として、人物重なり候補領域を選定するようにしてもよい。
【００７９】
背景差分処理および頭部候補検出処理を行う場合の物体検出装置１の構成例を図１１に示す。図１１において、図１の物体検出装置１と同様の構成要素には図１と同様の符号を付し、その詳細な説明を省略する。
【００８０】
図１１の物体検出装置１は、信号処理部３において、図１と同様の各手段に加えて、背景差分抽出手段３６および頭部候補検出手段３７を備える。また、図１１の物体検出装置１の記憶部４には、判定情報履歴４０に加えて、背景画像４２が記憶される。背景画像４２は、例えばシステムの起動直後など、検出対象物が存在しないときに画像取得部２により取得された画像である。
【００８１】
背景差分抽出手段３６は、入力画像２００から、背景画像４２との間の差分（背景差分）を抽出する。抽出した差分の領域の情報は、走査手段３１、識別器３２、および頭部候補検出手段３７に対して出力される。背景差分抽出手段３６は、例えば、システムの起動直後など、通行者が存在しないときに画像取得部２が取得した画像を背景画像４２として記憶部４に記憶させておく。画像取得部２から新たな画像を受け取ると、受け取った画像と背景画像４２との差分処理により背景画像４２に存在しない像を背景差分として抽出する。
【００８２】
走査手段３１は、背景差分の領域の少なくとも一部を検出窓領域が含むように検出窓領域の走査間隔を決定して検出窓領域をずらす。これにより、識別器３２は、背景差分の領域の少なくとも一部を含む検出窓領域のみに対して識別処理を行うことになる。
【００８３】
頭部候補検出手段３７は、背景差分の領域内で人体頭部の画像特徴である円形状を有する頭部領域を検出し、検出された頭部領域の情報を人物重なり候補領域選定手段３４に出力する。頭部候補検出手段３７は、例えば、入力画像からエッジ画像を生成し、エッジ画像において背景差分の領域に対応する部分から円を検出し、検出された円を頭部領域とする。円の検出はハフ変換により行えばよい。円の検出においては、検出漏れを防ぐため、事前の実験に基づき円の検出感度を高めに設定しておいてよい。この場合、検出される頭部領域には真の頭部以外にも丸みを帯びた部分が含まれることがある。なお、ハフ変換によらず、円パターンを用いたパターンマッチングによって円を検出してもよい。
【００８４】
図１１の人物重なり候補領域選定手段３４は、人物判定手段３３で人がいると判定された人領域の情報に加えて、頭部候補検出手段３７が検出した頭部領域の情報を用いて人物重なり候補領域を選定する。例えば、人物判定手段３３が抽出した人領域の周辺に存在する頭部領域を特定し、特定した頭部領域の周辺の領域を人物重なり候補領域として選定する。
【００８５】
図１２を参照し、図１１の人物重なり候補領域選定手段３４による人物重なり候補領域の選定の具体例を説明する。図１２は、図４と同様の人物４０１，４０３，４０５，４０７が写っている入力画像２００を表す。また、図１２の入力画像２００中に示す円は、頭部候補検出手段３７が検出した頭部領域である。図１２において太線の矩形４０２，４０８で示される領域は、それぞれ、図４と同様、人物判定手段３３により抽出された人物４０１，４０５を含む人領域である。人物重なり候補領域選定手段３４は、人領域４０２の周辺領域として矩形４０４を設定し、この矩形４０４の領域内に存在する頭部候補であって人領域４０２の外にある頭部候補を特定する。特定した頭部候補の周辺の領域４０９，４１０，４１１を人物重なり候補領域として選定する。同様に人領域４０８については、その周辺領域として矩形４０６を設定し、この矩形４０６の領域内に存在する頭部候補であって人領域４０８の外にある頭部候補を特定する。特定した頭部候補の周辺の領域４１２，４１３を人物重なり候補領域として選定する。特定した各頭部候補の周辺の領域の大きさは、例えば、関連する人領域の大きさと等しい大きさにしておく。あるいは、予め設定された大きさにしてもよい。以上のように頭部候補を用いて選定された人物重なり候補領域４０９，４１０，４１１，４１２，４１３に対し、オクルージョン判定手段３５による処理が行われる。
【００８６】
図１３は、図１１に示す物体検出装置１の処理手順の例を示すフローチャートである。図１３において、図５と同様の処理ステップには図５と同様の符号を付し、その詳細な説明を省略する。
【００８７】
図１３を参照し、ステップＳ１０の画像取得処理の後、背景差分抽出処理（ステップＳ１３）および頭部候補検出処理（ステップＳ１６）を行ってから、ステップＳ２０の人物識別処理を行う。
【００８８】
ステップＳ１３では、入力画像と背景画像４２との差分処理により、背景画像４２に存在しない像を抽出する。また、抽出した像を含む背景差分画像を２値化することで、入力画像のうち、背景画像４２に存在しない画像を含む領域である背景差分領域を特定する。この処理は背景差分抽出手段３６で行われる。
【００８９】
ステップＳ１６では、背景差分領域から頭部候補を検出する。例えば、入力画像における背景差分領域内の輝度画像に対してＳｏｂｅｌ等のフィルタ処理を行うことでエッジ画像を生成する。このエッジ画像に対して、円を検出するハフ変換を行い、頭部候補を検出する。ここでは、真の頭部以外にも、肩など、丸みを帯びた部分が頭部候補として検出され得る。
【００９０】
ステップＳ２０の人物識別処理では、すべての検出窓領域について識別器３２による識別処理（図６のステップＳ２３０）を行う代わりに、背景差分領域の少なくとも一部を含む検出窓領域についてのみ識別処理を行えばよい。このため、例えば、検出窓領域の位置設定処理（ステップＳ２２０，図７）において、ステップＳ２２０４、ステップＳ２２０６、またはステップＳ２２０５の後、開始点（ＳＸ，ＳＹ）の検出窓領域が背景差分領域の少なくとも一部を含むか否かを判定し、含む場合にのみステップＳ２３０に進むようにすればよい。開始点（ＳＸ，ＳＹ）の検出窓領域が背景差分領域を含まない場合には、ステップＳ２２０３，Ｓ２２０４，Ｓ２２０６の処理により、さらに次の開始点を求めるようにする。
【００９１】
図１３のステップＳ３０は、図５および図９を参照して説明した人物判定処理と同様に行えばよい。ステップＳ３０で人領域が決定された場合（ステップＳ３５でＹＥＳ）、図１３では、図５のステップＳ４０の代わりに、ステップＳ４０１〜Ｓ４０３の処理によって人物重なり候補領域を選定する。ステップＳ４０１〜Ｓ４０３は、人物重なり候補領域選定手段３４で行われる。なお、ステップＳ３０で人領域が検出されなければ（ステップＳ３５でＮＯ）、その旨を出力し（ステップＳ６０）、処理を終了する。ステップＳ３５でＮＯの場合、出力処理は省略してもよい。
【００９２】
ステップＳ３０で抽出された人領域のそれぞれに対して、ステップＳ４０１〜Ｓ４０３およびステップＳ５０の処理が行われる。
【００９３】
ステップＳ４０１では、各人領域の開始点の座標を基準に予め定められた大きさの範囲の領域を選定する。図１２に示す領域４０４，４０６は、ステップＳ４０１で選定される領域の例である。
【００９４】
ステップＳ４０２では、ステップＳ４０１で選定した領域の範囲内にある頭部候補であって人領域の外にある頭部候補を選定する。例えば、ステップＳ１６で検出された頭部候補の中心座標がステップＳ４０１で選定した領域内であって人領域の外にあれば、その頭部候補を選定すればよい。
【００９５】
ステップＳ４０２で選定された頭部候補のそれぞれに対して、ステップＳ４０３およびステップＳ５０の処理が行われる。
【００９６】
ステップＳ４０３では、ステップＳ４０２で選定された頭部候補を含む領域を人物重なり候補領域として抽出する。本例では、当該頭部候補に対応するステップＳ４０１で選定された領域内の人領域と等しい大きさの領域を人物重なり候補領域として抽出する。例えば、図１２に示す人物重なり候補領域４０９，４１０，４１１は、それぞれ、領域４０４内の人領域４０２と等しい大きさを有する。また、図１２に示す人物重なり候補領域４１２，４１３は、それぞれ、領域４０６内の人領域４０８と等しい大きさを有する。
【００９７】
ステップＳ５０では、ステップＳ４０３で抽出された人物重なり候補領域に対して、図５および図１０を参照して説明したのと同様のオクルージョン判定処理を行う。
【００９８】
ステップＳ６０は、図５のステップＳ６０の出力処理と同様である。
【００９９】
なお、さらに他の変形例では、背景差分抽出処理および頭部候補検出処理のいずれか一方のみを行ってもよい。背景差分抽出処理だけを行う場合、物体検出装置１の処理手順は、図５のフローチャートにおいて、ステップＳ１０とステップＳ２０との間に背景差分抽出処理（図１３のステップＳ１３）を追加した手順となる。そして、ステップＳ２０の人物識別処理において、上述のように背景差分抽出処理の結果を用いればよい。また、頭部候補検出処理だけを行う場合、物体検出装置１の処理手順は、図１２のフローチャートにおいてステップＳ１３を省略した手順となる。本変形例の場合、ステップＳ１６の頭部候補検出処理において、背景差分領域を処理対象とする代わりに、入力画像の全体を処理対象とすればよい。また、ステップＳ２０は、背景差分領域の情報を用いずに、図５〜図８を参照して説明した例と同様に行えばよい。
【０１００】
上述の実施の形態および変形例では、検出窓領域と人物判定手段３３で検出された人領域との重複部分をマスクせずにそのまま処理に用いるため、オクルージョン判定手段３５でも判定情報履歴４０を用いているが、重複部分をマスクさせて、識別器で類似度を再計算させてもよい。例えば、類似度計算をする際に重複部分の特徴量をゼロにさせることで、重複部分のマスクを実現することができる。また、強識別器を構成する弱識別器の中で重複部分を処理する弱識別器の出力をゼロにし、すなわち、弱識別器の判定を行わないことで、重複部分のマスクを実現することができる。
【０１０１】
また、上述の実施の形態および変形例では、入力画像中の検出対象物の検出において、カスケード型識別器３２０を用いるが、他の手法を用いて検出を行ってもよい。例えば、パターン認識、分類器、ニューラル・ネットワークなどの手法を用いることができる。いずれの手法を用いる場合も、人物判定手段３３よりもオクルージョン判定手段３５の方が検出対象物を検出しやすいように各手段の判定条件を設定しておけば、上述の実施の形態と同様の処理を実現できる。
【０１０２】
上述の実施の形態では、物体検出装置１の各部の機能を１つのコンピュータで実現する態様を説明したがこれに限定されるものではない。物体検出装置１の各部の機能は一般的なコンピュータをプログラムにより制御することによって実現できるものであり、これらの装置の各機能を適宜組み合わせて１つのコンピュータで処理させてもよいし、各機能をネットワーク等で接続された複数のコンピュータで分散処理させてもよい。
【符号の説明】
【０１０３】
１  物体検出装置、２  画像取得部、３  信号処理部、４  記憶部、５  出力部、３０  検出窓領域選択手段、３１  走査手段、３２  識別器、３３  人物判定手段、３４  人物重なり候補領域選定手段、３５  オクルージョン判定手段、３６  背景差分抽出手段、３７  頭部候補検出手段、３２０  カスケード型識別器、３２１，３２２，３２３  強識別器。
【図１】
0005385182.tif 000002
【図２】
0005385182.tif 000003
【図３】
0005385182.tif 000004
【図４】
0005385182.tif 000005
【図５】
0005385182.tif 000006
【図６】
0005385182.tif 000007
【図７】
0005385182.tif 000008
【図８】
0005385182.tif 000009
【図９】
0005385182.tif 000010
【図１０】
0005385182.tif 000011
【図１１】
0005385182.tif 000012
【図１２】
0005385182.tif 000013
【図１３】
0005385182.tif 000014