(57)【要約】【課題】  画像中に存在するオブジェクトを高精度に検出する。【解決手段】  入力画像を入力し、前記入力画像の小数画素位置に画素を補完してサブピクセル画像を生成し、前記入力画像の整数画素位置に対してオブジェクト検出処理を行い、オブジェクト検出結果情報を生成し、前記オブジェクト検出結果情報に基づいて、前記サブピクセル画像においてサブピクセル探索を行う領域を決定し、サブピクセル探索領域情報を生成し、前記サブピクセル探索領域情報に基づいて、前記サブピクセル画像においてオブジェクト検出処理を行い、前記サブピクセル画像におけるオブジェクト検出結果情報を生成し、前記サブピクセル探索ステップで生成した前記オブジェクト検出結果情報に基づいたオブジェクト検出結果情報を出力する。【選択図】  図１
2010039968.tif 000002
【特許請求の範囲】
【請求項１】
入力画像が入力される画像入力部と、
前記入力画像の小数画素位置に画素を補間してサブピクセル画像を生成するサブピクセル画像作成部と、
前記入力画像の整数画素位置に対してオブジェクト検出処理を行い、オブジェクト検出結果情報を生成する整数画素探索部と、
前記オブジェクト検出結果情報に基づいて、前記サブピクセル画像においてサブピクセル探索を行う領域を決定し、サブピクセル探索領域情報を生成するサブピクセル探索位置決定部と、
前記サブピクセル探索領域情報に基づいて、前記サブピクセル画像単位のオブジェクト検出処理を行い、前記サブピクセル画像におけるオブジェクト検出結果情報を生成するサブピクセル探索部と、
前記サブピクセル探索部で生成した前記オブジェクト検出結果情報に基づいたオブジェクト検出結果情報を出力する出力部とを
有することを特徴とするオブジェクト検出装置。
【請求項２】
前記出力部は、
前記整数画素探索部で生成した前記オブジェクト検出結果情報と前記サブピクセル探索部で生成した前記オブジェクト検出結果情報とから、前記入力画像における新たなオブジェクト検出結果情報を生成する
ことを特徴とする請求項１に記載のオブジェクト検出装置。
【請求項３】
前記サブピクセル探索位置決定部は、
前記整数画素探索部で生成した前記オブジェクト検出結果情報が示す検出結果が特定オブジェクトであることを示す尤度値と予め設定された閾値とを比較し、前記尤度値が前記閾値の範囲内である整数画素位置を中心とした小数画素位置を、前記サブピクセル探索を行う領域として決定する
ことを特徴とする請求項１または２に記載のオブジェクト検出装置。
【請求項４】
前記サブピクセル探索位置決定部は、
前記整数画素探索部で生成した前記オブジェクト検出結果情報が示す検出結果が特定オブジェクトであることを示す尤度値の分布から、オブジェクトが存在する小数画素位置を推定し、前記小数画素位置を、前記サブピクセル探索を行う領域として決定する
ことを特徴とする請求項１または２に記載のオブジェクト検出装置。
【請求項５】
前記サブピクセル探索位置決定部は、
前記整数画素探索部で生成した前記オブジェクト検出結果情報に基づいて、前記サブピクセル探索部における処理時間や検出するオブジェクト数を制御する
ことを特徴とする請求項１乃至４に記載のオブジェクト検出装置。
【請求項６】
入力画像が入力される画像入力ステップと、
前記入力画像の小数画素位置に画素を補完してサブピクセル画像を生成するサブピクセル画像作成ステップと、
前記入力画像の整数画素位置に対してオブジェクト検出処理を行い、オブジェクト検出結果情報を生成する整数画素探索ステップと、
前記オブジェクト検出結果情報に基づいて、前記サブピクセル画像においてサブピクセル探索を行う領域を決定し、サブピクセル探索領域情報を生成するサブピクセル探索位置決定ステップと、
前記サブピクセル探索領域情報に基づいて、前記サブピクセル画像においてオブジェクト検出処理を行い、前記サブピクセル画像におけるオブジェクト検出結果情報を生成するサブピクセル探索ステップと、
前記サブピクセル探索ステップで生成した前記オブジェクト検出結果情報に基づいたオブジェクト検出結果情報を出力する出力ステップとを
有することを特徴とするオブジェクト検出方法。
【請求項７】
前記出力ステップは、
前記整数画素探索ステップで生成した前記オブジェクト検出結果情報と前記サブピクセル探索ステップで生成した前記オブジェクト検出結果情報とから、前記入力画像における新たなオブジェクト検出結果情報を生成する
ことを特徴とする請求項６に記載のオブジェクト検出方法。
【請求項８】
前記サブピクセル探索位置決定ステップは、
前記整数画素探索ステップで生成した前記オブジェクト検出結果情報が示す検出結果が特定オブジェクトであることを示す尤度値と予め設定された閾値とを比較し、前記尤度値が前記閾値の範囲内である整数画素位置を中心とした小数画素位置を、前記サブピクセル探索を行う領域として決定する
ことを特徴とする請求項６または７に記載のオブジェクト検出方法。
【請求項９】
前記サブピクセル探索位置決定ステップは、
前記整数画素探索ステップで生成した前記オブジェクト検出結果情報が示す検出結果が特定オブジェクトであることを示す尤度値の分布から、オブジェクトが存在する小数画素位置を推定し、前記小数画素位置を、前記サブピクセル探索を行う領域として決定する
ことを特徴とする請求項６または７に記載のオブジェクト検出方法。
【請求項１０】
前記サブピクセル探索位置決定ステップは、
前記整数画素探索ステップで生成した前記オブジェクト検出結果情報に基づいて、前記サブピクセル探索部における処理時間や検出するオブジェクト数を制御する
ことを特徴とする請求項６乃至９に記載のオブジェクト検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像中から顔などの特定オブジェクトを検出する技術に関する。
【背景技術】
【０００２】
入力画像中から顔などの特定オブジェクトを検出する方法として、例えば非特許文献１がある。
【０００３】
【特許文献１】特開２００８−１７３６２８
【非特許文献１】P. Viola, M. Jones, ”Rapid Object Detection using a Boosted Cascade of Simple Features,”  Proceedings IEEE Conf. on Computer Vision and Pattern Recognition, 2001
【発明の開示】
【発明が解決しようとする課題】
【０００４】
非特許文献１に記載した技術は、例えば20x20画素の顔の画像をハールと呼ばれる画像の特徴パターンを用いて判別するものである。しかし、監視カメラのように被写体の距離が遠く離れた画像に対しては、例えば10x10画素といったより小さい顔を検出する技術が求められる。これに対して非特許文献１では、所定の場所だけ画像を拡大することで小さい顔を検出する手法を提案している。しかし、拡大画像を扱う場合、顔検出の処理を行う箇所が大きく増えるため処理時間が増大する。また、小さい画像を拡大した画像は元々の顔が持つ特徴パターンと違いが生じるため精度が劣化するという課題がある。このため、小さい顔のまま高精度に検出する技術が求められる。
【０００５】
本発明は上記課題を鑑みてなされたものであり、本発明の目的は、高精度なオブジェクト検出を行う技術を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一実施の態様は、例えば特許請求の範囲に記載されるように構成すればよい。
【発明の効果】
【０００７】
本発明によれば、画像中に存在するオブジェクトを高精度に検出することが可能になる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施例１を説明する。
【実施例１】
【０００９】
図１は、本発明におけるオブジェクト検出装置の一実施例を示したものである。オブジェクト検出装置（１００）は、画像入力部（１１０）、サブピクセル画像作成部（１２０）、整数画素探索部（１３０）、サブピクセル探索位置決定部（１４０）、サブピクセル探索部（１５０）、検出結果統合部（１６０）、出力部（１７０）より構成される。上記の各部はハードウェアによって構成されてもよいし、ソフトウェアによって構成されていてもよい。また、ハードウェアとソフトウェアを組み合わせたモジュールであってもよい。
【００１０】
図１に示したオブジェクト検出装置の動作について説明する。オブジェクト検出装置にて検出するオブジェクトとしては、顔以外にも、人、車、標識等、その他のオブジェクトを対象としてもよい。説明の簡略化のため、以下ではオブジェクト検出動作の一例として、入力画像から人物の顔領域を抽出する動作を例に説明する。
【００１１】
画像入力部（１１０）はカメラからの出力画像や、あらかじめ記録された画像の再生画像等を受信し、入力画像（１１５）をサブピクセル画像作成部（１２０）に出力する。サブピクセル画像作成部（１２０）は、入力画像（１１５）を小数画素分ずらしたサブピクセル画像を作成する。サブピクセル画像の作成方法については後述する。整数画素探索部（１３０）は入力画像（１１５）に対して顔検出を行い、画像の各位置・各スケールに対する顔検出結果を出力する。サブピクセル探索位置決定部（１４０）は、整数画素探索部（１３０）から得られた顔検出結果に基づいてサブピクセル探索を行う位置を決定する。サブピクセル探索部（１５０）は、サブピクセル画像作成部（１２０）で作成されたサブピクセル画像に対して、サブピクセル探索位置決定部（１４０）で決定したサブピクセル探索位置に基づいて顔検出を実行し、検出結果を検出結果統合部（１６０）に出力する。検出結果統合部（１６０）では、整数画素探索部（１３０）で得られた顔検出結果とサブピクセル探索部（１５０）で得られた顔検出結果を統合し、最終的な顔検出結果を出力部（１７０）に出力する。ここで、統合とは、複数の検出結果のうち一つの検出結果を選択することや、複数の検出結果の平均値を算出するなど、複数の検出結果に基づいて一つの検出結果を導き出すことをいう。出力部（１７０）は、本オブジェクト検出装置における最終的な顔検出結果を出力する。
【００１２】
上記の構成を取ることで、入力画像の小数画素位置に対しても顔検出処理を行うことができるため、顔位置が小数画素ずれたことによって生じる検出漏れを抑制でき、小さい顔も高精度に検出することが可能となる。
【００１３】
図１のサブピクセル画像作成部（１２０）の動作の詳細について図２を用いて説明する。図２(a)において、ａij（ｉ＝０，２，４、ｊ＝０，２，４）は画像入力部（１１０）より出力された入力画像（１１５）に含まれる画素の画素値を示す。サブピクセル画像作成部（１２０）では上記の入力画像（１１５）に元々存在しない画素ｂij（ｉ＝０〜４、ｊ＝０〜４）を補間してサブピクセル画像を生成する。
【００１４】
例えば、図２における画素ａ00とａ02の水平方向の中間位置（１／２画素の位置）に当たる画素をｂ01とするとき、画素値ｂ01は以下の式１により求めることが可能である。
【００１５】
ｂ01＝（ａ00＋ａ02）／２・・・数式１
同様に画素ａ00とａ20の垂直方向の中間位置に当たる補間画素ｂ10についても、以下の式２から求めることが可能である。
【００１６】
ｂ10＝（ａ00＋ａ20）／２・・・数式２
さらに、水平方向、垂直方向いずれも中間位置となる画素ｂ11は、２つの補間画素ｂ01、ｂ21から、以下の式３により算出することが可能である。
【００１７】
ｂ11＝（ｂ01＋ｂ21）／２
＝（ａ00＋ａ02＋ａ20＋ａ22）／４・・・数式３
上記した１／２画素位置での補間画素の生成は、水平方向、垂直方向ともに２タップフィルタを用いて生成した動作例であるが、上記に限定されないことはもちろんであり、上記以外の補間画像生成方法についても適用可能である。
【００１８】
図２(b)は、図２(a)で示した１／２画素位置での補完画素を元に作成したサブピクセル画像を示している。サブピクセル画像２１０は、図２(a)の１／２画素位置、ｂ01、ｂ03、ｂ05などの画素値を持ち、入力画像（１１５）に対して（x、y）＝（0.5、0）画素ずれた画像となる。同様に、図２(c)のサブピクセル画像２２０は（x,y）＝（0、0.5）画素ずれた画像、図２(d)のサブピクセル画像２３０は（x,y）＝（0.5、0.5）画素ずれた画像である。以上の方法により、入力画像（１５０）に対して小数画素ずれたサブピクセル画像（２１０）（２２０）（２３０）が生成できる。
【００１９】
本実施例では、サブピクセル画像として１／２画素位置の補間画素を作成した例を元に解説するが、行うオブジェクト検出の処理によっては上記に限定されず、１／２画素とは異なる小数精度画素を持つサブピクセル画像を作成してもよい。また、あらかじめ入力画像（１１５）に対するサブピクセル画像を作成しているが、サブピクセル探索位置決定部（１４０）で指定された領域のみのサブピクセル画像を作成してもよい。
【００２０】
図２(b)(c)(d)は、小数画素を分解し、複数のサブピクセル画像にした例である。図２(a)のように、１／２画素位置の補間画素を持つ一つの拡大画像（１／２画素補間なら画像の縦横がそれぞれ２倍の画像）を使用してもよいが、本実施例では複数のサブピクセル画像に分解した例を元に説明する。拡大画像を扱う場合、扱う画素数が多くなるため各画素値の参照に時間を要する。小数画素毎にサブピクセル画像を作成することで、一つ一つの画像が小さくなり、各画素値の参照が容易となり、顔検出の処理時間削減を図ることができる。
【００２１】
図１における整数画素探索部（１３０）の動作の詳細について説明する。整数画素探索部（１３０）では、画像入力部（１１０）より出力される入力画像（１１５）に対して顔検出処理を行う。図３に整数画素探索部（１３０）における顔検出処理のフローチャートを示す。図３において、画像入力部（１１０）より出力される入力画像（１１５）の中から顔か非顔かの判定を行う判定領域を取得する（３１０）。次に、（３１０）で取得した判定領域に対して顔判定処理を行い（３２０）、その結果を判定結果マップに保持する（３３０）。上記で判定処理を行った判定領域が入力画像中の最後の領域であるかを判定し（３４０）、まだ顔判定処理を行っていない領域がある場合（３４０の判定結果が”ＮＯ”の時）は、検出領域を更新して（３５０）、対象となる判定領域の取得を行う（３１０）。一方、顔判定処理を行っていない領域がない場合（３４０の判定結果が”ＹＥＳ”の時）は、上記で検出処理を行ったスケールが最後のスケールかどうかを判定し（３６０）、まだ顔判定処理を行っていないスケールがある場合（３６０の判定結果が”ＮＯ”の時）は、検出スケールを更新して（３７０）、対象となる判定領域の取得を行う（３１０）。一方、顔判定処理を行っていないスケールがない場合（３６０の判定結果が”ＹＥＳ”の時）は、各スケール・位置における全ての判定結果を格納した顔判定結果マップを出力（３８０）し、処理を終了する。
【００２２】
図３の顔判定処理（３２０）の動作について図４、図５を用いて詳細に説明する。図４は、顔判定処理（３２０）を実行するために用いるカスケード型識別器を示したものである。カスケード型識別器は複数個の識別器を縦続接続した構成となっている。以下に、図４の動作について説明する。最初に、図３の判定領域取得（３１０）にて取得した判定領域を識別器１（４１０）に入力する。識別器１（４１０）では、判定領域を、オブジェクト特徴パターン１（４４０）と比較し、判定領域が顔か非顔かを判定する。ここで、判定領域が非顔と判定された場合（識別器１（４１０）の判定結果が”Ｆａｌｓｅ”の時）は処理を終了し、判定結果値としてＰ0を出力する。一方、判定領域が顔と判定された場合（識別器１（４１０）の判定結果が”Ｔｒｕｅ”の時）は、判定領域を識別器２（４２０）に入力する。識別器２（４２０）では、判定領域を、オブジェクト特徴パターン２（４５０）と比較し、同様に判定領域が顔か非顔かを判定する。上記の処理を識別器Ｎ（４６０）まで実施する。
【００２３】
図５は上記のカスケード型識別器（図４）において、どの識別器で非顔と判定されたかに応じて、図３の顔判定処理（３２０）からの出力値を選択するためのテーブルを示したものである。一例として、判定領域が識別器２で非顔と判定された場合には、図３の顔判定処理（３２０）からはＰ1が判定結果値として出力されることとなる。ここで、テーブル（図５）の出力値Ｐi（ｉ＝０，１，２・・・Ｎ）は、判定領域（図３（３１０）出力）に関する尤度、即ち”検出対象オブジェクトに対するもっともらしさ（＝どの程度、検出対象オブジェクトに近い画像であるか）”を示す値であり、テーブル（図５）ではＰ  i＞＝Ｐi-1（ｉ＝０，１，２・・・Ｎ）とする。
【００２４】
図３の判定領域更新（３５０）の動作について図６を用いて説明する。図６（ａ）において（１１５）は図１における入力画像（１１５）である。また、（６１０）は図３における判定領域（３１０）である。図３の判定領域更新（３５０）の処理では、図６の矢印で示すように、入力画像（１１５）の左上から顔判定処理（図３（３２０））を開始し、判定処理が終わるごとに位置を右下方向にずらしていくものであり、これにより入力画像（１１５）全体に対して顔判定処理を行うことで画像中に存在する顔を検出することが可能となる。
【００２５】
また、図６（ｂ）は、図６（ａ）に対して顔検出を行い、各判定領域における顔判定処理（図３（３２０））の結果、得られた判定結果値を格納した判定結果マップ（６２０）の例を示している。判定結果マップ（６２０）では、入力画像（１５０）上の各判定領域に対応する形で顔判定処理（３２０）の出力である判定結果値が格納される。
【００２６】
図１のサブピクセル探索位置決定部（１４０）の動作の詳細について図７を用いて説明する。サブピクセル探索位置決定部（１４０）では、整数画素探索部（１３０）で行われた入力画像に対する顔検出によって得られた判定結果マップを元に、サブピクセル探索部（１５０）において顔判定処理を行う領域を「サブピクセル判定領域」として決定する。図７(a)は、図６（ｂ）の顔判定結果マップ６２０を説明のために１／２画素間隔で表示した例である。判定結果値が書かれている位置が整数画素位置、それ以外の位置が１／２画素位置を示している。サブピクセル位置探索部（１４０）では、顔検出結果マップ（６２０）の各画素が保持している判定結果値をあらかじめ決められた２つの閾値T１、T2と比較し、T1＜判定結果値＜T2であれば、周辺に顔が存在する可能性が高いと判定し、その画素の周囲の小数画素位置をサブピクセル判定領域とする。図７(a)では、その一例として、閾値T1＝10、T2＝20とし、閾値判定の結果、周囲に顔が存在する可能性が高いと判定された整数画素の周囲８近傍の小数画素位置を「サブピクセル判定領域」とした場合の様子を示している。このとき、判定結果値＝１１となる整数画素（７a）に対するサブピクセル判定領域は（７００１）、（７００２）、（７００３）、（７００４）、（７００５）、（７００８）、（７００９）、（７０１０）となる。同様に、判定結果値＝１２となる整数画素（７b）に対するサブピクセル判定領域は（７００６）、（７００７）、（７００８）、（７０１１）、（７０１２）、（７０１３）、（７０１４）、（７０１５）となる。
【００２７】
閾値T1によって高い判定結果値をもつ画素の周辺のみをサブピクセル判定領域とすることで、サブピクセル画像に対して顔判定処理を行う領域を顔らしい位置のみに絞り込むことができる。また、閾値T2は、顔判定処理（３２０）において全ての識別器で顔と判定された際の出力値ＰNを設定する。整数画素探索部（１３０）における判定結果値がＰN以上となる領域は顔と判定される領域であるため、その周辺のサブピクセル探索を行う必要がないので、閾値T2によってサブピクセル探索位置の対象外とする。
【００２８】
図７(b)は、サブピクセル探索位置決定部（１４０）の出力である各サブピクセル画像に対する判定領域マップを示している。判定領域マップ（７１０）は、図２に示したサブピクセル画像（２１０）に対して顔判定処理を行う判定領域を示している。同様に、判定領域マップ（７２０）はサブピクセル画像（２２０）に対する判定領域を、判定領域マップ（７３０）はサブピクセル画像（２３０）に対する判定領域を示している。各判定領域マップでは、顔判定処理を行わない領域を「０」、顔判定処理を行う位置を「１」で示している。探索位置マップ７１０の顔判定領域（７１０４）、（７１０５）、（７１１１）、（７１１２）は、図７(a)の顔判定領域（７００４）、（７００５）、（７０１１）、（７０１２）を示している。
【００２９】
図７では、サブピクセル判定領域を整数画素の周囲８近傍の画素としたが、周囲のどの小数画素をサブピクセル判定領域としてもよい。
【００３０】
例えば、整数画素の斜め４近傍（左上、右上、左下、右下）としてもよい。この場合、サブピクセル判定領域は全て図７(b)の探索位置マップ（７３０）上の画素上に存在することになる。つまり、図２のサブピクセル画像（２３０）に対してだけサブピクセル探索部（１５０）で顔検出処理を行うことになる。このため、サブピクセル画像作成部（１２０）では、サブピクセル画像（２３０）だけを生成すればよくなり、サブピクセル探索位置決定部（１４０）が出力する判定領域マップも（７４０）のみとなる。これにより、メモリ使用量と処理時間を大きく削減することができる。
【００３１】
図１のサブピクセル探索部（１５０）の動作の詳細について図８を用いて説明する。図８は、あるサブピクセル画像に対する顔検出処理の流れを示すフローチャートである。まず、Step８１０では、現在の判定領域が顔判定処理を行う対象か対象ではないかを、サブピクセル探索位置決定部（１４０）から得られた判定領域マップを元に判定する。顔判定処理の対象でなければStep８５０に飛び、次の判定領域に対する処理を行う。顔判定処理の対象であれば、Step８２０において、サブピクセル画像作成部（１２０）より出力されるサブピクセル画像の中から顔判定を行う判定領域を取得する。次に、取得した判定領域に対してStep８３０で顔検出処理を行い、Step８４０で、その判定結果値を保持する。Step８５０では、上記で検出処理を行った検出領域が入力画像中の最後の領域であるかを判定し、まだ判定処理を行っていない領域がある場合（Step８５０の判定結果が”ＮＯ”の時）は、Step８６０にて判定領域を更新して、Step８１０に戻り、その判定領域に対する処理を行う。一方、判定処理を行っていない領域がない場合（Step８５０の判定結果が”ＹＥＳ”の時）は、Step８７０にて上記で判定処理を行ったスケールが最後のスケールかを判定し、まだ判定処理を行っていないスケールがある場合（Step８７０の判定結果が”ＮＯ”の時）は、Step８８０にて検出スケールを更新して、Step８１０の対象となる領域の取得に戻る。一方、判定処理を行っていないスケールがない場合（Step８７０の判定結果が”ＹＥＳ”の時）は、Step８９０にて全ての判定結果値を格納した判定結果マップを出力し、処理を終了する。
【００３２】
以上の処理を対象である全てのサブピクセル画像に対して行い、全てのサブピクセル画像から顔判定結果マップを得る。
【００３３】
ここでStep８３０の顔判定処理は、図４の識別器Ｍ〜Ｎだけを用いて行う（１＜Ｍ＜Ｎ）。今、顔判定処理を行う判定領域は、整数画素探索部（１３０）における顔判定処理で閾値T1を超えた領域の周辺領域であるため、多くの識別器で「True」を出力する可能性が高い。このため、識別器Ｍ以降だけを用いて顔判定処理を行うことで無駄な判定処理を削減することができる。
【００３４】
サブピクセル探索部（１５０）では、サブピクセル探索位置決定部（１４０）から得られた判定領域マップに従い、決められた場所に、決められた識別器だけを用いて顔探索を行えばよいので高速にサブピクセル画像に対する顔判定結果マップが得られる。
【００３５】
図１の検出結果統合部（１６０）の動作の詳細について図９を用いて説明する。検出結果統合部（１６０）では、整数画素探索部（１３０）とサブピクセル探索部（１４０）で得られた顔判定結果マップから、顔の尤度を示す顔判定結果値が閾値T2以上となる位置を見つけ、その位置とスケールを顔枠として決定する。図９(a)は顔判定結果マップから得られた顔枠を入力画像（１１５）上に示した例である。入力画像１１５に対して検出結果の顔枠（９０１）〜（９０３）が得られる。サブピクセル画像に対して顔検出を行うことで、顔の周辺位置に複数の顔枠が出現するため、検出結果統合部（１６０）では各顔枠が同じ顔領域を表しているかどうかを判定し、同じ顔領域を表している複数の顔枠を一つの顔枠として統合する処理を行う。統合処理を行った結果の例を図９(b)に示す。顔枠（９０１）、（９０２）（９０３）から統合後の顔枠（９１１）が得られる。こうして得られた顔枠（９１１）を最終的な顔検出結果として出力部（１７０）に出力する。
【００３６】
以上説明した実施例１におけるオブジェクト検出装置および検出方法によれば、画像中に存在するオブジェクトを高精度に検出することが可能になる。
【実施例２】
【００３７】
本発明の第２の実施例について図１０を用いて説明する。本実施例におけるオブジェクト検出装置の構成、動作は、サブピクセル探索位置決定部の動作を除いて実施例１のオブジェクト検出装置と同じ構成、動作であるため、その他の構成、動作については説明を省略する。
【００３８】
第２の実施例は、図１のサブピクセル探索位置決定部（１４０）において、顔が存在する小数画素位置を推定することを特徴とする。図１０は、サブピクセル探索位置決定部（１４０）が整数画素探索部（１３０）から得た顔判定結果マップをグラフ化した一例である。横軸が入力画像（１１５）のｘ座標を、縦軸が各ｘ座標で得られた顔判定結果値を示している。この顔判定結果マップから得られたグラフ（１００１）から、小数画素精度の顔判定結果のグラフ（１００２）を推定することで、顔が存在すると考えられる小数画素位置X´を推定する。
【００３９】
この小数画素位置X´の推定は、顔確率値が閾値T1を超える画素に対して行われる。以下、図１０のグラフ（１００１）を例として、画素X4に対する推定方法を説明する。ここでは、画素X4の周囲の点の判定結果値を元にグラフの頂点となる位置を推定する。例えば、周囲の点X2、X3、X4、X5、X6の判定結果値Ｐ（Xi）（i＝2〜6）を用いて、数式４などにより各画素の重心位置を求め、得られた重心位置を顔が存在する小数画素位置として決定する。
【００４０】
Ｘ´＝Σ{Ｘi＊Ｐ（Ｘi）}／Σ{ Ｐ（Ｘi）}  （i＝2〜6）・・・数式４
図１０の閾値T1を超える画素X5では、周囲の点X3、X4、X5、X6、X7の判定結果を用いて同様に顔位置の推定を行う。こうして画素X4とX5から得られた小数画素位置は、それぞれを判定領域としてもよいし、同じ位置を示していると判定できれば統合してもよい。
【００４１】
こうして得られたサブピクセル判定領域Ｘ´に対してサブピクセル探索部（１５０）で顔判定処理を行い、顔を検出する。
【００４２】
上記の処理を行うことで、サブピクセル探索部（１５０）で顔判定処理を行う必要がある位置を大きく削減することができるため、処理時間を削減できる。また、所定の小数画素位置Ｘ´のサブピクセル画像が得られるよう、サブピクセル画像作成部（１２０）に要求することで、より正確な領域のサブピクセル画像を得ることができるため高精度に顔検出を行うことができる。
【００４３】
以上説明した実施例２におけるオブジェクト検出装置および検出方法によれば、オブジェクト探索処理時間を削減することができる。また、画像中に存在するオブジェクトを高精度に検出することが可能になる。
【実施例３】
【００４４】
本発明の第３の実施例について図１１を用いて説明する。本実施例におけるオブジェクト検出装置の構成、動作は、サブピクセル探索位置決定部の動作を除いて実施例１のオブジェクト検出装置と同じ構成、動作であるため、その他の構成、動作については説明を省略する。
【００４５】
第３の実施例は、図１のサブピクセル探索位置決定部（１４０）において、サブピクセル判定領域を決定する際に、閾値Ｔ1を制御することで検出する顔の個数や、処理時間を制御することを特徴とする。図１１は、本発明における第３の実施例のサブピクセル探索位置決定部（１４０）にて作成するテーブルである。このテーブルは、整数画素探索部（１３０）から得た顔判定結果マップを元に、ある顔判定値Ｐiを持つ画素数Ｃiをカウントしたものである。また、ある顔確率値Ｐiを示す画素周辺のサブピクセル判定領域に対して顔判定処理を行った際の予想処理時間Ｃｌｋiを求め、テーブル上に保持しておく。この予想処理時間Ｃｌｋiは、画素数Ｃiと、ある整数画素に対するサブピクセル判定領域の個数Ａ（周囲８近傍探索ならＡ＝８となる）、サブピクセル探索部（１５０）で行う識別器Ｍ〜Ｎを用いた顔判定処理の演算時間Ｂ、顔判定値Ｐiから決定する定数αiによって以下の数式５で得られる。
【００４６】
Ｃｌｋi＝Ｃi×Ａ×Ｂ×αi・・・数式５
ここで、αiはカスケード型識別器の打ち切りによる演算数削減率を示すパラメータであり、例えば０〜１の実数値を持つ。ここで、０＜α1＜α2＜…＜αN＜１である。判定結果値Ｐiが大きいほど、そのサブピクセル判定領域でも多くの識別器を用いて顔判定処理を行うことになると予想されるため、αiも大きくなる。本実施例におけるサブピクセル探索位置決定部（１４０）では、このテーブルを用いて閾値Ｔ１を制御する。例えば、テーブル（１１００）と今までの処理時間から、最終的な処理時間が所定の時間で終了するような顔判定値Ｐiを閾値T１とする。また、検出する顔の最大数に制限があるときなどは、顔判定値Ｐiの画素数Ｃiによって閾値Ｔ１を制御することで、より顔判定値が高い位置のみから顔を検出でき、誤検出を抑制することができる。
【００４７】
以上説明した実施例３におけるオブジェクト検出装置および検出方法によれば、画像中に存在するオブジェクトを高精度に検出することが可能になる。
【実施例４】
【００４８】
図１２により、本発明の実施例４に係る装置の構成について説明する。本実施例は、実施例１乃至３に係るオブジェクト検出装置を撮像装置やディスプレイ等に実装した例である。
【００４９】
図１２は本発明の実施の形態４に係るオブジェクト検出装置の構成を示す構成図である。図１２において、オブジェクト検出装置（１２００）は、画像入力部（１２０９）、画像メモリ（１２０２）、ＣＰＵ（１２０３）、ＲＡＭ（１２０４）、ＲＯＭ（１２０５）、検出結果記録部（１２０６）、インタフェース（１２０７）、出力装置（１２０８）から構成されている。
【００５０】
本実施の形態のオブジェクト検出装置（１２００）では、撮像部（１２０１）であるカメラで得られた画像から対象となるオブジェクトを検出する。本実施の形態のオブジェクト検出装置（１２００）におけるＣＰＵ（１２０３）が、実施の形態１の図１に示すオブジェクト検出部（１００）に相当し、オブジェクト検出部（１００）の各演算処理を、プログラムとして実行しＣＰＵ（１２０３）により演算処理することにより実現している。
【００５１】
本実施の形態では、オブジェクト検出部（１００）における検出方法に従ってＣＰＵ（１２０３）において演算処理が行われ、オブジェクトが検出される。
【００５２】
シーケンス毎のオブジェクト検出結果は、検出結果記録部（１２０６）に記録されることとなる。検出結果は、インタフェース（１２０７）を通じて適切な形にデータ変換され、出力装置（１２０８）に出力される。ここで、出力装置としてはディスプレイや、プリンタ、ＰＣなどが考えられる。
【００５３】
本実施の形態では、コンピュータなどの情報処理装置により、オブジェクト検出装置としての演算処理を行うことが可能である。
【００５４】
以上説明した実施例４によれば、画像中に存在するオブジェクトを高精度に検出するオブジェクト検出機能を有する撮像装置やディスプレイ等を実現できる。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施例１のオブジェクト検出装置の構成ブロック図である。
【図２】図１のサブピクセル画像作成部の入出力画像の例を示す説明図である。
【図３】図１の整数画素探索部の動作例を示すフローチャートである。
【図４】図３の顔判定処理を行うカスケード型識別器を示す図である。
【図５】図４のカスケード型識別器の判定結果と顔判定処理の出力値処の関係を示すテーブルである。
【図６】図３の検出領域更新の例とその結果得られる顔判定結果マップを示す図である。
【図７】図１のサブピクセル探索位置決定部においてサブピクセル判定領域の決定方法を示す図である。
【図８】図１のサブピクセル素探索部の動作例を示すフローチャートである。
【図９】図１の検出結果統合部の処理例を示す図である
【図１０】本発明の実施例２におけるサブピクセル位置決定部での顔の小数画素位置推定方法を示す図である。
【図１１】本発明の実施例３におけるサブピクセル位置決定部で作成するテーブルである。
【図１２】本発明の実施例４に関わるオブジェクト検出装置の構成を示す構成図である。
【符号の説明】
【００５６】
１００…オブジェクト検出装置
１１０…画像入力部
１１５…入力画像
１２０…サブピクセル画像作成部
１３０…整数画素探索部
１４０…サブピクセル探索位置決定部
１５０…サブピクセル探索部
１６０…結果統合部
１７０…出力部
２１０、２２０、２３０…サブピクセル画像
４１０…識別器１
４２０…識別器２
４３０…識別器Ｎ
４４０…オブジェクト特徴パターン１
４５０…オブジェクト特徴パターン２
４６０…オブジェクト特徴パターンＮ
５００…テーブル
６１０…判定領域
６２０…顔検出結果マップ
７ａ、７ｂ…顔検出結果マップ上の整数画素
７００１〜７０１５…サブピクセル判定領域
７１０…サブピクセル画像２１０に対する探索位置マップ
７２０…サブピクセル画像２２０に対する探索位置マップ
７３０…サブピクセル画像２３０に対する探索位置マップ
９０１〜９０３…サブピクセル探索結果の顔枠
９１１…統合結果の顔枠
１００１…顔判定結果マップのグラフ
１００２…顔判定結果マップから推定した小数画素間隔のグラフ
１１００…テーブル
１２０１…撮像部
１２０２…画像メモリ
１２０３…ＣＰＵ
１２０４…ＲＡＭ
１２０５…ＲＯＭ
１２０６…計測結果記録部
１２０７…インタフェース
１２０８…出力装置
１２０９…画像入力部
【図１】
2010039968.tif 000003
【図２】
2010039968.tif 000004
【図３】
2010039968.tif 000005
【図４】
2010039968.tif 000006
【図５】
2010039968.tif 000007
【図６】
2010039968.tif 000008
【図７】
2010039968.tif 000009
【図８】
2010039968.tif 000010
【図９】
2010039968.tif 000011
【図１０】
2010039968.tif 000012
【図１１】
2010039968.tif 000013
【図１２】
2010039968.tif 000014