(57)【特許請求の範囲】
【請求項１】
対象物体を含んだ画像を取得する画像取得工程と、
前記画像を拡大または縮小して、階層画像を生成する階層画像生成工程と、
前記階層画像に基づいて、前記対象物体の少なくとも一部の領域を第一検出領域として検出する第一検出工程と、
前記第一検出領域に基づいて、第一推定領域を推定する第一推定工程と、
前記第一推定領域に基づいて、前記階層画像の階層を限定する階層限定工程と、前記階層限定工程によって限定された階層の階層画像において、前記対象物体の少なくとも一部の領域を第二検出領域として検出する第二検出工程と、
前記第二検出領域に基づいて、第二推定領域を推定する第二推定工程と、
前記第一推定工程で推定された第一推定領域と、前記第二推定工程で推定された第二推定領域とを統合する統合工程を有する物体検出方法。
【請求項２】
前記統合工程は、前記第一推定領域と、前記第二推定領域の重なり率に基づいて、前記第一推定領域と第二推定領域とを統合することを特徴とする請求項１に記載の物体検出方法。
【請求項３】
前記第一検出工程および、前記第二検出工程は、少なくとも１以上の前記対象物体のモデルを用いて、検出を行うことを特徴とする請求項１または２に記載の物体検出方法。
【請求項４】
前記第一推定工程は、前記第一検出領域の座標・サイズに基づいて、前記第一推定領域を推定することを特徴とする請求項１乃至３のいずれか１項に記載の物体検出方法。
【請求項５】
前記第二推定工程は、前記第二検出領域の検出結果の座標・サイズに基づいて、前記第二推定領域を推定することを特徴とする請求項１乃至４のいずれか１項に記載の物体検出方法。
【請求項６】
前記階層限定工程は、前記第一推定工程で推定された第一推定領域の位置と、前記第二検出工程で用いられるモデルのサイズに基づいて、前記第二検出工程で行う検出処理の処理範囲を限定することを特徴とする前記請求項１乃至５のいずれか１項に記載の物体検出方法。
【請求項７】
前記第一検出工程は、頭部を含んだ領域を検出することを特徴とする請求項１乃至６のいずれか１項に記載の物体検出方法。
【請求項８】
前記第二検出工程は、人体を検出することを特徴とする請求項１乃至７のいずれか１項に記載の物体検出方法。
【請求項９】
対象物体を含んだ画像を取得する画像取得手段と、
前記画像を拡大または縮小して、階層画像を生成する階層画像生成手段と、
前記階層画像に基づいて、前記対象物体の少なくとも一部の領域を検出する第一検出手段と、
前記第一検出手段で検出された第一検出領域に基づいて、第一推定領域を推定する第一推定手段と、
前記第一推定領域に基づいて、前記階層画像の階層を限定する階層限定手段と、前記階層限定手段によって限定された階層の階層画像において、前記対象物体の少なくとも一部の領域を検出する第二検出手段と、
前記第二検出手段で検出された第二検出領域に基づいて、第二推定領域を推定する第二推定手段と、
前記第一推定手段で推定された第一推定領域と、前記第二推定手段で推定された第二推定領域とを統合する統合手段を有する物体検出装置。
【請求項１０】
請求項１乃至８の何れか１項に記載された物体検出方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は精度を維持しつつ高速に検出処理を行う方法に関する。
【背景技術】
【０００２】
従来、画像から対象を検出する方法する際、一度学習したモデルを用いて検出処理をし、検出結果をもとに探索する階層範囲を限定し、より高精度のモデルで検出処理を行う方法がある。
【０００３】
特許文献１には、階層画像に対して第一検出を行い、次の入力画像に対して第一検出で検出できた同じ階層画像に対してのみ第二検出を行う方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第０４４９８２９６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では階層を同じ階層に限定しているため、次の入力画像においても同じ階層が最も検出しやすいとは限らない。また、第一検出と第二検出で異なるモデルを使用する場合、第一検出と第二検出において検出しやすい階層が同じ階層になるとは限らないため、全体の検出精度が低下する問題がある。
【０００６】
本発明は、以上の課題に鑑みてなされたものであり、検出精度を維持したまま第二検出を高速に行い、全体処理を高速化することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、例えば、本発明の物体検出方法は、対象物体を含んだ画像を取得する画像取得工程と、前記画像を拡大または縮小して、階層画像を生成する階層画像生成工程と、前記階層画像に基づいて、前記対象物体の少なくとも一部の領域を第一検出領域として検出する第一検出工程と、前記第一検出領域に基づいて、第一推定領域を推定する第一推定工程と、前記第一推定領域に基づいて、前記階層画像の階層を限定する階層限定工程と、前記階層限定工程によって限定された階層の階層画像において、前記対象物体の少なくとも一部の領域を第二検出領域として検出する第二検出工程と、前記第二検出領域に基づいて、第二推定領域を推定する第二推定工程と、前記第一推定工程で推定された第一推定領域と、前記第二推定工程で推定された第二推定領域とを統合する統合工程を有する。
【発明の効果】
【０００８】
本発明によれば、検出精度を維持したまま第二検出を高速に行い、全体処理を高速化することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第一の実施形態に係る物体検出方法の構成を示す図である。
【図２】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図３】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図４】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図５】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図６】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図７】本発明の第一の実施形態に係る物体検出方法の処理過程を示す図である。
【図８】本発明の第二の実施形態に係る物体検出方法の構成を示す図である。
【図９】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１０】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１１】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１２】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１３】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１４】本発明の第二の実施形態に係る物体検出方法の処理過程を示す図である。
【図１５】本発明の第三の実施形態に係る構成を示す図である。
【図１６】本発明の第三の実施形態に係る物体検出方法の処理過程を示す図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の実施形態に従って詳細に説明する。
【００１１】
［第１の実施形態］
本実施形態に係る検出方法は、画像に映る対象を安定して検出する方法で、画像取得部についてはカメラやビデオカメラ、ネットワークカメラを用いて撮影した画像を使用してもよいし、あらかじめ撮影し保存されている画像を使用してもよい。以下に図を用いて例を示す。
【００１２】
本実施形態では、人物を含んだ画像を撮影し、得られた画像から、検出したい人物を検出する場合について説明する。なお、本実施形態に係る検出対象は人物としているが、これに限定するものではない。例えば、動物や植物等にも本発明を適用することが出来る。
【００１３】
図１は本実施形態に係る物体検出方法の概略を示す図である。
【００１４】
図１に示すように、本実施形態に係る物体検出方法は、画像取得部１０１と特徴量生成部１０２と第一検出部１０３と第一推定部１０４と階層限定部１０５と第二検出部１０６と第二推定部１０７と統合部１０８とを備える。
【００１５】
画像取得部１０１は、カメラや、あらかじめ撮影した画像から、画像を取得するものである。取得した画像は特徴量生成部１０２とへと送られる。
【００１６】
特徴量生成部１０２は、画像取得部１０１で取得した画像に対して、図２に示すように一定のスケールで拡大・縮小を行って階層画像２０１を作成し、各階層画像に対して特徴量を生成する。このように、階層画像とは、画像を一定のスケールで拡大・縮小した画像のことをいう。生成する特徴量はＨＯＧ特徴量でもよいし、Ｈａａｒ−Ｌｉｋｅ特徴量でも色特徴量でもよいし、それらの積分画像にしてもよい。生成された階層特徴量は第一検出部１０３と階層限定部１０５へと出力される。
【００１７】
第一検出部１０３は、特徴量生成部１０２で生成した階層画像２０１の特徴量に対して検出処理を行う。
【００１８】
図３に示しているように、本実施形態では第一検出部１０３は、階層特徴量２０１のある一つの階層画像３０２の特徴量に対して人物の頭部周辺領域を検出している。ここでいう頭部周辺領域とは、人物の頭部だけでなく、肩まで含んだ領域を指している。なお、人物の頭部周辺領域に限定するものではなく、腕、胴体、足等でもかまわない。また、本実施形態では１つの階層に対して検出処理を行っているが、階層画像全体に対して検出処理を行ってもかまわない。
【００１９】
物体の検出方法は、ＨＯＧ＋ＳＶＭ（参考文献：ｈｉｓｔｏｇｒａｍｓ  ｏｆ  ｏｒｉｅｎｔｅｄ  ｇｒａｄｉｅｎｔｓ  ｆｏｒ  ｈｕｍａｎ  ｄｅｔｅｔｃｔｉｏｎ、Ｎ。Ｄａｌａｌ、ＣＶＰＲ２００５）やＩＳＭ（Ｃｏｍｂｉｎｅｄ  Ｏｂｊｅｃｔ  Ｃａｔｅｇｏｒｉｚａｔｉｏｎ  ａｎｄ  Ｓｅｇｍｅｎｔａｔｉｏｎ  ｗｉｔｈ  ａｎ  Ｉｍｐｌｉｃｉｔ  Ｓｈａｐｅ  Ｍｏｄｅｌ、Ｂ。Ｌｅｉｂｅ、ＥＣＣＶ２００４）、Ｌａｔｅｎｔ−ＳＶＭ（参考文献：Ｏｂｊｅｃｔ  Ｄｅｔｅｃｔｉｏｎ  ｗｉｔｈ  Ｄｉｓｃｉｒｍｉｎａｔｅｉｖｅｌｙ  Ｔｒａｉｎｅｄ  Ｐａｒｔ  Ｂａｓｅｄ  Ｍｏｄｅｌｓ，Ｐ．Ｆｅｌｚｅｎｓｗａｌｂ，Ｒ．Ｇｉｒｓｃｈｉｃｋ，Ｄ．ＭｃＡｌｌｅｓｔｒ，Ｄ．Ｒａｍａｎａｎ、ＩＥＥＥ  ＰＡＭＩ，Ｖｏｌ．３２、Ｎｏ．９，  ２０１０）などの公知の技術を用いて検出処理を行う。ある階層画像３０２の特徴量内において第一検出部１０３により、検出された結果が３０３である。
【００２０】
また、第一検出部１０３は画像取得部１０１により取得した画像に対しても、対象となる物体の領域を検出する検出処理を行ってもよい。その際、検出処理はパターンマッチング等の公知の技術を用いて検出処理を行う。
【００２１】
第一の検出部１０３による、頭部周辺領域の検出結果３０３は、第一推定部１０４へと送られる。
【００２２】
第一推定部１０４は、第一検出部１０３から取得した検出結果２０２を用いて、特定パーツ領域の推定を行う。本実施形態では、特定パーツ領域として、頭部領域を推定している。ここでいう頭部とは、上記の、頭部だけでなく、肩まで含んだ頭部周辺領域に対して、頭部のみをいう。本発明では、第一の検出部１０３で、頭部周辺領域を検出し、第一の推定部１０４で頭部のみを推定することとしている。もっとも、第一の検出部で、頭部周辺以外の領域を検出する場合は、第一の推定部１０４で推定する領域も頭部でないことはいうまでもない。
【００２３】
以下、頭部領域推定の方法について説明する。頭部領域推定の方法は、頭部周辺領域の検出結果３０３の位置座標を用いて、次の式によって求めることができる。
【００２４】
【数１】
0006000602.tif 000002
【００２５】
ここで、ｘ１，ｙ１は検出結果領域３０３の左上の座標、ｘ２，ｙ２は検出結果領域の右下座標を表している。
【００２６】
Ａは、頭部から肩の領域を含んだルートフィルタ３０３と、ルートフィルタ３０３の一部を表す複数のパーツフィルタ３０３１〜３０３４で構成される検出結果を行列の形式にしたものである。また、検出結果を行列形式に変換する際、各パーツフィルタ３０３１〜３０３４の中心座標を検出位置においての検出結果領域３０３の中心座標で差分をとる。差分をとった座標のｘ座標を検出結果領域３０３の幅ｗで、ｙ座標を検出結果領域３０３の高さｈで正規化する。正規化した各パーツフィルタの中心座標ｘ、ｙを行列（行は１個の検出結果のパーツフィルタ正規化座標、列は各検出結果を意味する）にしたものである。
【００２７】
ｐは、学習データに対して検出処理を行い、検出結果と実際の頭部サイズをもとに、頭部領域サイズを線形予測するための係数をベクトルにしたもの（正規化したパーツフィルタの各中心座標にかける係数が並んでいる）である。学習データとは、予め用意した人物が写っている画像群のことをいう。
【００２８】
図２に示しているように、頭部検出領域３０３から頭部領域推定を行った結果３０４が得られる。この頭部領域推定結果３０４は、階層限定部１０５と統合部１０８へと出力される。
【００２９】
階層限定部１０５は、特徴量生成部１０２で生成された特徴量と、第一推定部１０３で推定した頭部領域３０４とをもとに、第二検出部１０６において検出処理をする階層を決定する。決定方法としては式（２）を用いて階層を求める。
【００３０】
図４に示す４０５は、前述の学習データについて、第一検出部１０３の検出結果の階層を横軸にし、第二検出部１０６の検出された階層を縦軸とした検出結果のヒストグラムの分布図である。
【００３１】
また、４０６は、前述の学習データについて、第一推定部１０３で推定した頭部領域の幅サイズから線形予測により推定した階層を横軸とし、第二検出部１０６によって検出された結果の階層を縦軸とした検出結果のヒストグラムの分布図である。
【００３２】
図４で示されるように、頭部領域サイズをもとに検出に適した階層の分布を示しているが、頭部領域推定結果を用いた方が、階層の分布が小さくなることが確認できる。これから、学習データから得られた分布４０６を基に、最小二乗法を用いて係数ｃｏｅｆｆを算出する。
【００３３】
【数２】
0006000602.tif 000003
【００３４】
ここで、Ａは学習データの対数をとった頭部領域サイズの結果を行列にしたもので、Ｂは第二検出部の検出結果における階層を行列にしたものである。算出した係数ｃｏｅｆｆを用いて、式（３）により階層を決定する。
【００３５】
【数３】
0006000602.tif 000004
【００３６】
ｗｉｄｔｈは頭部領域の幅、ｈｅｉｇｈｔは頭部領域の高さである。
【００３７】
式（３）により求めた階層が、一致するか、若しくはもっとも近い階層画像５０７の特徴量にのみ検出処理を行うようにし、それ以外の階層５０９の特徴量には検出処理を適用しないようにする。
【００３８】
限定された階層画像５０７は、第二検出部１０６へと出力される。
【００３９】
第二検出部１０６は、特徴量生成部１０４と階層限定部１０５をもとに、限定された階層画像５０７の特徴量にのみ検出処理を行う。本実施形態では、人体の全身を検出している。もちろん、第二検出部１０６で検出する対象は、人体の全身以外に限られない。
【００４０】
検出処理方法としては、ＳＶＭやＢｏｏｓｔｉｎｇなどの学習手法を用いてあらかじめ学習したモデル５０８を、スライディングウィンドウにより各位置で検出処理が実行される。
【００４１】
図６に示すように検出処理により取得された検出結果が、６１０〜６１２である。得られた検出結果６１０〜６１２は、第二推定部１０７へと出力される。
【００４２】
第二推定部１０７は、第二検出部１０６で取得した矩形領域で表される検出結果６１０〜６１２に対して、特定パーツ領域を推定する。本実施形態では、特定パーツとして頭部領域を推定している。もちろん、第二推定部１０７で推定する特定パーツは、頭部領域に限られないが、第一推定部１０３で推定された領域と同じであることが必要である。その理由は、後述の統合部１０８で、第一推定部１０３で推定した領域と、第二推定部１０７で推定した領域を統合するからである。
【００４３】
推定方法は、第一推定部１０３で使用している式（１）を使って求めることができる。図６に示すよう、求めた矩形領域で表される頭部領域６２０〜６２２は、統合部１０８へと出力される。
【００４４】
統合部１０８は、第一推定部１０３で取得した頭部枠２０３と第二推定部１０７で取得した６２０〜６２２を統合し、最終検出結果を出力する。
【００４５】
統合方法としては、頭部領域２０３と、頭部領域６２０〜６２２のそれぞれとの、重なり率を算出し、もっとも重なり率が高い頭部枠を、同一の対象を検出しているとして選択する。
【００４６】
図６に示すように、頭部枠２０３は、頭部枠６１０と最も重なり率が高いので、その二つの検出結果が組み合わせとして選択され、最終検出結果として６１０が出力される。検出結果６１１と６１２は誤検出として出力されない。
【００４７】
以上が、本実施形態に関する構成部分である。
【００４８】
続いて、図７に示したフローチャートを用いて、本実施形態における物体検出方法１００が行う処理について説明する。なお、同フローチャートに従ったプログラムコードは、本実施形態の方法内の、不図示のＲＡＭやＲＯＭなどのメモリに格納され、不図示のＣＰＵなどにより読み出され、実行される。
【００４９】
（ステップＳ１００）
処理全体がステップＳ１００において開始されると、まずステップＳ１０１へと進んで、画像取得部１０１によりカメラや画像ファイルなどから画像２０１を取得する。取得した画像２０１はと特徴量生成部１０２へと送られ、処理はステップＳ１０２へと進む。
【００５０】
（ステップＳ１０２）
ステップＳ１０２では、画像取得部１０１で取得した画像に対して画像の拡大・縮小処理を実施して階層画像２０１を作成し、各階層画像に対して特徴量を生成する。
【００５１】
生成する特徴量はＨＯＧ特徴量でもＨａａｒ−Ｌｉｋｅ特徴量でも色特徴量でもよい。この処理の結果として階層特徴量が得られる。生成した特徴量は、第一検出部１０３と階層限定部１０５へと出力され、処理はステップＳ１０３へと進む。
【００５２】
（ステップＳ１０３）
ステップＳ１０３では、第一検出部１０３により検出処理が行われる。第一検出部１０３は階層画像２０１の特徴量の一つの階層画像３０２の特徴量に対して検出処理を行う。
【００５３】
また、第一検出部１０３は生成した階層特徴量２０１に検出処理を行ってもよいし、画像取得部１０１で取得した画像に対してパターンマッチング等で検出処理を行ってもかまわない。
【００５４】
検出方法としてはＨＯＧ＋ＳＶＭやＩＳＭなどの公知の技術を用いて行われる。また、本実施形態で第一検出部１０３は、人物の頭部領域を検出しているが、本発明ではそれに限定したものではない。検出処理により取得した検出結果３０３は第一推定部１０３へと出力され、処理はステップＳ１０４へと進む。
【００５５】
（ステップＳ１０４）
ステップＳ１０４では、第一検出結果が取得できているかを判定する。検出結果がなければ処理は終了し、検出結果３０３があれば処理はステップＳ１０５へと進む。
【００５６】
（ステップＳ１０５）
ステップＳ１０５では、第一検出部１０３から取得した検出結果３０３に対して、第一推定部１０３において特定パーツの領域を推定する。
【００５７】
本実施形態では特定パーツとして頭部領域を推定するようになっているが、本発明では頭部領域に限定しない。第一推定部では式（１）を用いて検出結果から頭部領域３０４を推定する。
【００５８】
全ての頭部領域推定処理が終われば、得られた頭部領域３０４は、階層限定部１０５と統合部１０８へと出力され、処理はステップＳ１０６へと進む。
【００５９】
（ステップＳ１０６）
ステップＳ１０６では、階層限定部１０５は、第一推定部１０３で推定した頭部領域３０４を用いて、特徴量生成部１０２で生成した特徴量に対して、第二検出部１０６で検出処理を行う階層を限定する。
【００６０】
階層を限定する方法は、第一推定部１０３と第二推定部１０７の結果を統合した最終結果を学習データとして式（２）を用いて係数を求め、式（３）による頭部枠と係数の線形予測により階層を算出する。
【００６１】
これにより、第二検出部１０６において検出処理を行うのにもっともよい階層の特徴量を決定することができる。図５に示すように、決定した階層により検出処理が実行される階層画像５０７の特徴量と、検出処理が実行されない階層画像５０９の特徴量にわけられ、処理はステップＳ１０７へと進む。
【００６２】
（ステップＳ１０７）
ステップＳ１０７では、第二検出部１０６により検出処理が実行される。
【００６３】
検出方法としては、ＳＶＭやＢｏｏｓｔｉｎｇなどの学習手法を用いて、あらかじめ学習したモデル５０８を、スライディングウィンドウにより各位置で検出処理が実行される。また実施形態でモデルは全身の人体を検出しているが、本発明は、これに限定されない。
【００６４】
図６に示すように、第二検出部１０６の検出処理により、検出結果６１０〜６１２が取得され、検出結果６１０〜６１２は第二推定部１０７へと出力され、処理はステップＳ１０８へと進む。
【００６５】
（ステップＳ１０８）
ステップＳ１０８では、第二検出部１０６から取得した検出結果６１０〜６１２に対して第二推定部１０７で特定パーツの推定が行われる。
【００６６】
本実施形態では特定パーツとして、頭部領域の推定を行っているが、本発明は、これに限定されない。頭部領域の推定方法は、第一推定部１０３で使用している式（１）を用いて行われる。
【００６７】
図６に示すように、第二推定部１０７で推定した頭部領域推定結果６２０〜６２２が取得される。取得した頭部領域推定結果６２０〜６２２は、統合部１０８へと出力され、処理はステップＳ１０９へと進む。
【００６８】
（ステップＳ１０９）
ステップＳ１０９では、第一推定部１０２で推定した頭部枠２０３と、第二推定部１０７で推定した頭部領域６２０〜６２２とを、統合部１０８で統合処理を行う。
【００６９】
統合処理方法としては、頭部枠２０３と、頭部枠６２０〜６２２との、それぞれの重なり率を算出し、もっとも重なり率が高い組み合わせの結果を、同一の対象を検出しているとして選択する。
【００７０】
図６に示すように頭部枠２０３と頭部枠６２０の重なり率が最も高いので、その二つの推定枠が組み合わせとして選択され、検出結果６１０が最終検出結果として出力される。また、検出結果６１１と６１２は統合部１０８により誤検出として処理される。
【００７１】
以上で、全体の処理は終了となる。
【００７２】
［第２の実施形態］
図８は、本実施形態に係る物体検出方法８００の概略を示す図である。
【００７３】
図８に示すように、物体検出方法８００は、画像取得部８０１と特徴量生成部８０２と複数の検出モデルを持つ第一検出部８０３と第一推定部８０４と階層限定部８０５と複数の検出モデルを持つ第二検出部８０６と第二推定部８０７と統合部８０８とを備える。
【００７４】
画像取得部８０１は、カメラや、あらかじめ撮影した画像から画像９０１を取得する。取得した画像９０１は、特徴量生成部８０２とへと送られる。
【００７５】
特徴量生成部８０２は、画像取得部８０１で取得した画像９０１に対して、図１０に示すように画像を一定のスケールで拡大・縮小処理を行って階層画像１００２を作成し、階層画像１００２の各階層に対して特徴量を生成する。生成する特徴量はＨＯＧ特徴量でもよいしＨａａｒ−Ｌｉｋｅ特徴量や色特徴量でもよい。
【００７６】
生成された階層特徴量は、第一検出部８０３と階層限定部８０５へと出力される。
【００７７】
第一検出部８０３は、特徴量に対して検出処理を行う。図１０のように、第一検出部８０３では、複数の人物の頭部領域をモデルとして持ち、各モデルを階層画像１００１の特徴量に対してスライディングウィンドウにより各位置で検出処理を行い、対象物体の領域を検出する。本実施形態では、第一検出部８０３は人物の頭部周辺領域を検出しているが、ここでいう頭部周辺領域とは、人物の頭部だけでなく、肩まで含んだ領域を指している。なお、人物の頭部周辺領域に限定するものではなく、腕、胴体、足等でもかまわない。
【００７８】
頭部領域の検出は、第一の実施形態で述べた、公知の技術を使用して行われる。
【００７９】
階層画像１００１の特徴量内において、第一検出部８０２により検出された結果が１１０４〜１１０６である。検出結果１１０４〜１１０４は第一推定部８０４へと送られる。
【００８０】
第一推定部８０４は、第一検出部８０３で取得した頭部周辺領域の検出結果１１０４〜１１０６をもとに特定パーツ領域の推定を行う。本実施形態では、頭部領域を推定しているが、本発明はこれに限定されない。
【００８１】
頭部領域推定の方法は、第一検出部８０３による検出結果の位置座標を用いて、次の式（４）によって求めることができる。
【００８２】
ここで、ｘ１,ｙ１は検出結果枠の左上の座標、ｘ２,ｙ２は検出結果枠の右下座標を表していている。
【００８３】
Ａは１個の検出結果に対してパーツフィルタの左上座標、右下座標をルートフィルタの中心座標・サイズで正規化した値を行列に変換したものである。
Ｐｍは学習によって得られる係数（ｍはモデル数）をベクトルにしたものである。このとき、Ｐｍは正解の頭部枠と第二検出部の枠とをセットで持った学習データに対して、最小二乗法を使ってパラメーラをモデル別に求めておく。
【００８４】
【数４】
0006000602.tif 000005
【００８５】
図１１のように、頭部領域検出結果１１０４〜１１０６に対して推定した頭部領域推定結果１１１５〜１１１６である。この頭部領域推定結果１１１４〜１１１６は、階層限定部８０５と統合部８０８へと出力される。
【００８６】
階層限定部８０５は、第一推定部８０４で推定した頭部枠１１１４〜１１１６をもとに第二検出部８０６において階層画像１００２の特徴量に対して検出処理をする階層を決定する。
【００８７】
図１２に示す分布は、学習データについて、統合部１０８から出力された最終検出結果において、そのときの頭部領域サイズと第二検出部８０６から出力された結果がどの階層の特徴量において検出されたかを分布にしたものである。
【００８８】
１２０１は立位の全身人物で、１２０２は前傾の全身人物で、１２０３はしゃがみの全身人物である。このように姿勢が異なる場合、頭部領域サイズから推定に適した階層が異なる。そのため、モデル別に係数を最小二乗法によって学習し、式（５）により係数をもとめる。
【００８９】
【数５】
0006000602.tif 000006
【００９０】
ここで、Ａmはモデル別に学習データの対数をとった頭部枠サイズの結果を行列にしたもので、Ｂｍはモデル別に第二検出部の検出結果における階層を行列にしたものである。求めた係数を使用して、式（６）を用いて検出する階層を算出する。
【００９１】
【数６】
0006000602.tif 000007
【００９２】
この頭部領域に対して、係数の重み付け和をとることで、第二検出部８０６において検出処理を行うのにもっともよい階層を決定することができる。図１３に示すように、決定した階層１３０７により、検出処理される階層１３０７と、検出処理されない階層１３０８にわけられる。
【００９３】
第二検出部８０６は、特徴量生成部８０２と階層限定部８０５をもとに、限定した階層画像１３０７にのみ検出処理を実行する。
【００９４】
図１３に示すように、検出処理方法としては、ＳＶＭやＢｏｏｓｔｉｎｇなどの学習手法を用いてあらかじめ学習した各モデル１３０９をスライディングウィンドウにより各位置で処理が実行される。本実施形態では、モデルは、全身の人体を検出しているが、本発明は、これに限定されない。
【００９５】
また、本実施形態では第二検出部８０６はあるモデルでは立位の人物を、別のモデルではしゃがんだ人物などをモデルが異なり、姿勢変動に対応した人体を検出することができる。図１４に示すように、検出処理により姿勢が異なる全身人物の検出結果１４１０〜１４１５が取得される。得られた検出結果１４１０〜１４１５は第二推定部１０７へと出力される。
【００９６】
第二推定部８０７は、第二検出部８０６から取得した検出結果１４１０〜１４１５に対して、特定パーツの領域を推定する。実施形態では頭部領域を推定しているが、本発明はこれに限定するものではない。もちろん、第二推定部８０７で推定する特定パーツは、頭部領域に限られないが、第一推定部８０４で推定された領域と同じであることが必要である。その理由は、後述の統合部１０８で、第一推定部８０４で推定した領域と、第二推定部８０７で推定した領域を統合するからである。
【００９７】
推定方法は、第一推定部８０４と式（４）を使ってモデル別に頭部領域を推定する。これにより、求めた頭部枠１４２０〜１４２５は統合部８０８へと出力される。
【００９８】
統合部１０８は、第一の実施形態と同様に、第一推定部８０４の頭部領域１１１４〜１１１６と、第二推定部８０７の頭部領域１４２０〜１４２５とに対して統合処理を行う。最終的に本実施形態では１４１０、１４１１、１４１２が最終検出結果として出力される。
【００９９】
以上が、本実施形態に関する構成部分である。
【０１００】
［第３の実施形態］
図１５は第３の実施形態に係る物体検出方法１５００の概略を示す図である。
【０１０１】
図１５のように、物体検出方法１５００は、以下の構成を備える。即ち、画像取得部１０１と特徴量生成部８０２と複数の検出モデルを持つ第一検出部８０３と第一推定部８０４と階層・範囲限定部１５０５と複数の検出モデルを持つ第二検出部１５０６と第二推定部８０７と統合部１０８とを備える。
【０１０２】
本実施形態では、階層・範囲限定部１５０６において、第二検出部１５０６で用いる各モデル別に階層と検出処理範囲を限定して検出処理を行う。第一推定部８０４から得られた頭部の推定サイズと位置をもとに、各モデル別に検出を行う階層画像の特徴量を決定する。
【０１０３】
まず、立位の人物に対して、式（６）を用いて階層を算出し、階層画像１６０１を算出する。
【０１０４】
次に頭部推定領域の位置１６０２とモデル１６０３のフィルタサイズから、頭部推定位置１６０２を中心として上下左右にモデル１６０３のフィルタが含まれる範囲をくまなく検出できるよう検出処理範囲１６０４を決定する。このとき、検出処理範囲１６０４は領域としてもメモリに確保してもよいし、検出処理範囲１６０４内をラベルづけたマップとして保持してもよい。
【０１０５】
第二検出部１６０５は、決定した検出処理範囲１６０４に対応するモデルのみで検出処理を行う。
【０１０６】
同様にしゃがみの人物に対しては、階層画像１６０５の特徴量に対して頭部領域１６０６の位置とモデル１６０７のサイズから検出処理範囲１６０８を決定する。  前傾の人物に対しても、階層画像１６０８の特徴量に対して頭部領域１６１０の位置とモデル１６１１のサイズから検出処理範囲１６１２を決定する。
【０１０７】
以上により、全体検出処理をより高速に行うことができる。
【０１０８】
なお、第１〜３の実施形態では様々な実施形態について説明したが、何れも、下記の構成の一例に過ぎず、下記の構成に基づいていれば、他の実施形態についても本発明の範疇である。
【０１０９】
即ち、対象物体を含んだ画像を取得する（画像取得工程）。そして、前記画像を複数の異なる倍率で変倍して、階層画像を生成する（階層画像生成工程）。そして、前記階層画像に基づいて、前記対象物体の少なくとも一部の領域を検出する（第一検出工程）。そして、前記階層画像に基づいて、前記対象物体の少なくとも一部の領域を検出する第一検出工程と、前記第一検出工程で検出された第一検出領域に基づいて、第一特定パーツ領域を推定する（第一推定工程）。そして、前記第一特定パーツ領域と、あらかじめ学習した学習データとに基づいて、前記階層画像の階層を限定する（階層限定工程）。そして、前記階層限定工程によって限定された階層の階層画像において、前記対象物体の少なくとも一部の領域を検出する（第二検出工程）。そして、前記第二検出工程で検出された第二検出領域に基づいて、第二特定パーツ領域を推定する（第二推定工程）。そして、前記第一推定工程で推定された推定結果と、前記第二推定工程で推定された推定結果とを統合し、前記対象物体の特定パーツ領域として決定する（統合工程）。
【０１１０】
以上、実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラム、もしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１１１】
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
【０１１２】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１１３】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１１４】
コンピュータプログラムを供給するためのコンピュータ読み取り可能な記憶媒体としては以下が挙げられる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【０１１５】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記憶媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【０１１７】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどとの協働で実施形態の機能が実現されてもよい。この場合、ＯＳなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
【０１１８】
さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行なう。
【符号の説明】
【０１１９】
１０１  画像取得部
１０２  第一検出部
１０３  第一推定部
１０４  特徴量推定部
１０５  階層限定部
１０６  第二限定部
１０７  第二推定部
１０８  統合部
【図１】
0006000602.tif 000008
【図２】
0006000602.tif 000009
【図３】
0006000602.tif 000010
【図４】
0006000602.tif 000011
【図５】
0006000602.tif 000012
【図６】
0006000602.tif 000013
【図７】
0006000602.tif 000014
【図８】
0006000602.tif 000015
【図９】
0006000602.tif 000016
【図１０】
0006000602.tif 000017
【図１１】
0006000602.tif 000018
【図１２】
0006000602.tif 000019
【図１３】
0006000602.tif 000020
【図１４】
0006000602.tif 000021
【図１５】
0006000602.tif 000022
【図１６】
0006000602.tif 000023