(57)【要約】【課題】画像内のオブジェクトを効率的に検出する検出装置等を提供する。【解決手段】本発明に係る検出装置１は、対象画像５からオブジェクトを検出する検出装置１であって、オブジェクトの分類情報に応じて形成された複数の強識別器１３を連結したカスケード識別器を含むノード部１２と、ノード部１２を階層的に形成した検出器１０と、検出器１０のノード部１２に対象画像５を入力する入力手段と、を備え、検出器１０のノード部１２は、カスケード識別器によって、入力手段により入力された対象画像５がオブジェクトか否かを識別し、入力手段は、ノード部１２により対象画像５がオブジェクトであると識別された場合に、対象画像５をノード部１２の下層のノード部１２へ入力し、ノード部１２による識別と入力手段によるノード部１２の下層のノード部１２への入力とを繰り返し実行することでオブジェクトを検出することを特徴とする。【選択図】図２
2016071702.tif 000002
【特許請求の範囲】
【請求項１】
対象画像からオブジェクトを検出する検出装置であって、
前記オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部と、
前記ノード部を階層的に形成した検出器と、
前記検出器の前記ノード部に前記対象画像を入力する入力手段と、を備え、
前記検出器の前記ノード部は、前記カスケード識別器によって、前記入力手段により入力された前記対象画像が前記オブジェクトか否かを識別し、
前記入力手段は、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、
前記ノード部による識別と前記入力手段による前記ノード部の下層の前記ノード部への入力とを繰り返し実行することで前記オブジェクトを検出することを特徴とするオブジェクト検出装置。
【請求項２】
前記強識別器は、前記強識別器を含む前記ノード部と他の前記ノード部の強識別器と、弱識別器を共有することを特徴とする請求項１に記載のオブジェクト検出装置。
【請求項３】
前記強識別器は、ジョイントブースティングを用いて機械学習により生成されることを特徴とする請求項２に記載のオブジェクト検出装置。
【請求項４】
前記ジョイントブースティングに用いる特徴量は、ＥＭＢＬＢＰ値であることを特徴とする請求項３に記載の検出装置。
【請求項５】
オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部と、前記ノード部を階層的に形成した検出器と、
を備える、対象画像から前記オブジェクトを検出するオブジェクト検出装置によるオブジェクト検出方法であって、
前記検出器の前記ノード部に前記対象画像を入力する入力ステップと、
前記検出器の前記ノード部が、前記カスケード識別器によって、前記入力ステップにより入力された前記対象画像が前記オブジェクトか否かを識別する識別ステップと、を含み、
前記入力ステップは、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、
前記識別ステップと前記入力ステップとを繰り返し実行することで前記オブジェクトを検出することを特徴とするオブジェクト検出方法。
【請求項６】
コンピュータを対象画像からオブジェクトを検出するオブジェクト検出装置として機能させるプログラムであって、
前記コンピュータを、
前記オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部、
前記ノード部を階層的に形成した検出器、
前記検出器の前記ノード部に前記対象画像を入力する入力手段、として機能させ、
前記検出器の前記ノード部は、前記カスケード識別器によって、前記入力手段により入力された前記対象画像が前記オブジェクトか否かを識別し、
前記入力手段は、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、
前記ノード部による識別と前記入力手段による前記ノード部の下層の前記ノード部への入力とを繰り返し実行することで前記オブジェクトを検出することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像内に含まれるオブジェクトを検出する技術に関する。特に、マルチクラス分類に対応したオブジェクトの検出技術に関する。
【背景技術】
【０００２】
画像内のオブジェクト検出として、顔検出が一例に挙げられる。例えば、正面の顔の検出においては、ＶｉｏｌａとＪｏｎｅｓによるアルゴリズムが知られており、Ｈａａｒ−Ｌｉｋｅ特徴量の使用、アダブースティングによる識別器の学習、分類のカスケード構造という３つのアイデアで構成されている。
【０００３】
一方、複数の方向を向いた顔などのオブジェクト検出は、一般的にはマルチクラスの分類問題であり、カスケード構造に代わる分類構造が必要である。マルチクラスに対応した検出器は、精度・速度の両面で高性能を達成するのは非常に困難な課題である。従来、以下のような分類構造が提案されている。
【０００４】
（パラレスカスケード構造）
非特許文献１に記載のパラレルカスケード構造では、図１７に示すようにオブジェクトの各方向（ビュー）に対し、個々のカスケード構造を構成することでマルチビュー検出に対応している。この分類構造によれば、検出精度は良好であるが、１つの方向の検出器をビュー分用意するため、分類処理の計算時間はビュー数倍となる。
【０００５】
（スカラー木構造）
非特許文献２に記載のスカラー木構造では、図１８に示すように各強識別器をノードとして分類の際に分岐していく木構造を採用している。各ノードでオブジェクトとして検出された場合は、全ての分岐ルートにつながるノードを通る。ノードのレベルが下がるごとに、強識別器はより細分化されたビューに対応する。このように、最初は大まかにオブジェクトと非オブジェクトに分類した後に、ビューを細分化しながら分類していくＣｏｒｓｅ  ｔｏ  Ｆｉｎｅ戦略によってオブジェクトの分類のロバスト性が高くなる。この構造では、パラレルカスケードと比べると少ない強識別器の構成で速度改善が見込まれるが、ノードにつながる全ての子ノードを通るため、分類処理が低速になる問題が依然としてある。
【０００６】
（ＢＦＳ木構造）
特許文献１では上記した問題に対し、マルチクラスに対応した強識別器を用いたＢＦＳ（Ｂｒｅａｄｔｈ  Ｆｉｒｓｔ  Ｓｅａｒｃｈ）木構造を提案している（図１９）。マルチクラスブースティングを用いた分類木構造をとることで、オブジェクトの分類のロバスト性と分類速度を向上させている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−１０９２２９号公報
【非特許文献】
【０００８】
【非特許文献１】Bo Wu, Haizhou Ai, Chang Huang,and Shihong Lao. Fast rotation invariant multi-view face detection based onreal adaboost. In Automatic Face and Gesture Recognition, 2004. Proceedings.Sixth IEEE International Conference on, pages 79-84. IEEE, 2004.
【非特許文献２】FrancoisFleuret and Donald Geman. Coarse-to-fine face detection. International Journalof computer vision, 41(1-2):85-107, 2001.
【非特許文献３】MichaelJones and Paul Viola. Fast multi-view face detection. Mitsubishi ElectricResearch Lab TR-20003-96, 3:14, 2003.
【非特許文献４】ntonioTorralba, Kevin P Murphy, and William T Freeman. Sharing visual features formulticlass and multiview object detection. Pattern Analysis and MachineIntelligence, IEEE Transactionson, 29(5):854-869, 2007.
【非特許文献５】Jiri Trefny and Jiri Matas.Extended set of local binary patterns for rapid object detection. InProceedings of the Computer Vision Winter Workshop, volume 2010, 2010.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら特許文献１のＢＦＳ木構造は、処理の最終段階に至るまでは非オブジェクトの排除が効果的に行われず、効率的なオブジェクト検出を実現する理想的な分類構造とは言えない。
【００１０】
本発明は上記課題に鑑みてなされたものであり、その目的は、画像内のオブジェクトを効率的に検出する検出装置等を提供することにある。
【課題を解決するための手段】
【００１１】
前述した課題を解決する第１の発明は、対象画像からオブジェクトを検出する検出装置であって、前記オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部と、前記ノード部を階層的に形成した検出器と、前記検出器の前記ノード部に前記対象画像を入力する入力手段と、を備え、前記検出器の前記ノード部は、前記カスケード識別器によって、前記入力手段により入力された前記対象画像が前記オブジェクトか否かを識別し、前記入力手段は、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、前記ノード部による識別と前記入力手段による前記ノード部の下層の前記ノード部への入力とを繰り返し実行することで前記オブジェクトを検出することを特徴とするオブジェクト検出装置である。
第１の発明によれば、対象画像からのオブジェクトの検出処理が、各ノード部におけるカスケード識別と、下層の各ノード部への入力（分岐）と、を交互に繰り返すことで、実現される。特に、各ノード部は複数の強識別器を連結したカスケード識別器によりオブジェクト識別を行うことで、各ノード部において効果的に非オブジェクトを排除することが可能である。従来のＢＦＳ木（図１９参照）では、オブジェクト検出処理の最終段階である葉ノードにカスケード識別器を設けることで、非オブジェクトを効果的に排除するように構成している。しかしながら、葉ノードに辿り着くまでは非オブジェクトを多く含んでおり、非オブジェクトを早期段階で排除することができなかった。この点、第１の発明においては、各ノード部がカスケード識別器により非オブジェクトを効果的に排除しながら、下層の各ノード部へ分岐していくことで、従来に比べオブジェクト検出処理をより効率的なものとしている。
【００１２】
前記強識別器は、前記強識別器を含む前記ノード部と他の前記ノード部の強識別器と、弱識別器を共有することが望ましい。
これによれば、各ノード部で弱識別器（特徴量）を共有しながらカスケード識別器が形成されるため、各ノード部単独でカスケード識別器を形成する場合に比べ、弱識別器の全体個数を削減できる。このため、オブジェクト検出処理において、弱識別器（特徴量）の計算コストを大幅に軽減でき、オブジェクト検出処理の効率性を更に向上させることができる。
【００１３】
前記強識別器は、ジョイントブースティングを用いて機械学習により生成されることが望ましい。
これによれば、ジョイントブースティングを用いて各ノード部で弱識別器（特徴量）を共有するようにクラス間で弱識別器（特徴）を共有するように強識別器が学習形成される。また、ジョイントブースティングは、検出対象であるオブジェクトの確からしさを確率密度などで確率的に出力するような弱識別器を使用するため、オブジェクトの識別精度の向上が実現される。
【００１４】
前記ジョイントブースティングに用いる特徴量は、ＥＭＢＬＢＰ値であることが望ましい。
これによって、ＥＭＢＬＢＰ（Ｅｘｔｅｎｄｅｄ  Ｍｕｌｔｉ  Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）値を特徴量としてジョイントブースティングによりカスケード識別器が学習形成される。ＥＭＢＬＢＰ値は照明不変の特徴を有するため、異なる照明下のオブジェクト検出に強い。また、ＥＭＢＬＢＰはあらゆる方向のパターンを複合して抽出するため、オブジェクトの複雑な特徴について精度の高い情報が得られる。さらに、ＥＭＢＬＢＰは強い特徴を持つため、弱識別器の数が少なくて済み、オブジェクト検出処理時の計算効率性をより向上させる。
【００１５】
前述した課題を解決する第２の発明は、オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部と、前記ノード部を階層的に形成した検出器と、を備える、対象画像から前記オブジェクトを検出するオブジェクト検出装置によるオブジェクト検出方法であって、前記検出器の前記ノード部に前記対象画像を入力する入力ステップと、前記検出器の前記ノード部が、前記カスケード識別器によって、前記入力ステップにより入力された前記対象画像が前記オブジェクトか否かを識別する識別ステップと、を含み、前記入力ステップは、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、前記識別ステップと前記入力ステップとを繰り返し実行することで前記オブジェクトを検出することを特徴とするオブジェクト検出方法である。
【００１６】
前述した課題を解決する第３の発明は、コンピュータを対象画像からオブジェクトを検出するオブジェクト検出装置として機能させるプログラムであって、
前記コンピュータを、前記オブジェクトの分類情報に応じて形成された複数の強識別器を連結したカスケード識別器を含むノード部、前記ノード部を階層的に形成した検出器、前記検出器の前記ノード部に前記対象画像を入力する入力手段、として機能させ、前記検出器の前記ノード部は、前記カスケード識別器によって、前記入力手段により入力された前記対象画像が前記オブジェクトか否かを識別し、前記入力手段は、前記ノード部により前記対象画像が前記オブジェクトであると識別された場合に、前記対象画像を前記ノード部の下層の前記ノード部へ入力し、前記ノード部による識別と前記入力手段による前記ノード部の下層の前記ノード部への入力とを繰り返し実行することで前記オブジェクトを検出することを特徴とするプログラムである。
【発明の効果】
【００１７】
本発明によれば、画像内のオブジェクトを効率的に検出することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】検出装置１のハードウェア構成の例を示す図
【図２】検出器１０の分類構造を示す概念図
【図３】検出器１０の学習の様子を示す図
【図４】検出器１０の学習の様子を示す概念図
【図５】オブジェクト検出処理を示すフローチャート
【図６】カスケード識別処理を示すフローチャート
【図７】カスケード識別処理の概念図
【図８】顔検出器３０の分類構造を示す概念図
【図９】顔検出器３０の学習の様子を示す概念図
【図１０】顔検出器３０の学習の様子を示す概念図
【図１１】ＬＢＰを示す図
【図１２】（ａ）ｔＭＢＬＢＰを示す図（ｂ）ｄＭＢＬＢＰを示す図
【図１３】顔検出処理を示すフローチャート
【図１４】検出装置３へ入力する対象画像の例を示す図
【図１５】顔検出窓を走査しながら顔検出処理を実行する様子を示す図
【図１６】顔検出結果の例を示す図
【図１７】パラレルカスケード構造を示す図
【図１８】スカラー木構造を示す図
【図１９】ＢＦＳ木構造を示す図
【発明を実施するための形態】
【００１９】
以下、図面を参照しながら本発明の第１の実施形態について説明する。
【００２０】
＜検出装置１のハードウェア構成＞
図１は、第１の実施形態に係る検出装置１のハードウェア構成の一例を示す図である。検出装置１は、主に、制御部１０１、記憶部１０２、入力部１０３、表示部１０４、バス１０５から構成される。
【００２１】
制御部１０１は、ＣＰＵ、ＲＯＭ、ＲＡＭ等で構成される。ＣＰＵは、記憶部１０２、ＲＯＭ、記録媒体等に格納されるプログラムをＲＡＭ上のワークメモリ領域に 呼び出して実行することで、検出装置１が行う全ての処理を行う。ＲＯＭは、不揮発性メモリであり、プログラムやデータ等を恒久的に保持している。ＲＡＭは、揮発性メモリであり、記憶部１０２、ＲＯＭ等からロードしたプログラム、データ等を一時的に保持するとともに、制御部１０１が各種処理を行う為に使用するワークエリアを備える。
【００２２】
記憶部１０２は、フラッシュメモリ（Ｆｌａｓｈ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される。フラッシュメモリやＲＯＭには、コンピュータのブートプログラムやＢＩＯＳ等のプログラム、アプリケーション、データ等を保持している。ＲＡＭは、ＲＯＭ等からロードしたプログラム、データ等を一時的に保持するとともに、制御部１０１が各種処理を行う為に使用するワークエリアを備える。
本実施形態においては、図１に示すように、オブジェクトを検出する対象である「対象画像５」、オブジェクトを検出する「検出器１０」などが記憶部１０２に記憶されている。検出器１０は、後述するように機械学習により生成されたものである。
【００２３】
入力部１０３は、データの入力を行い、例えば、テンキー、小型キーボード等の入力装置を有する。入力部１０３を介して、検出装置１に対して、操作指示、動作指示、データ入力等を行うことができる。
また、入力部１０３は、ＣＣＤ（Ｃｈａｒｇｅ−Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅｓ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ−Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサ等のカメラを備えてもよい。これにより、カメラにより撮像した画像を、オブジェクトの検出対象である対象画像５とすることもできる。
【００２４】
表示部１０４は、液晶パネル等のディスプレイ装置、ディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等（ビデオアダプタ等）を有する。なお、入力部１０３及び表示部１０４は、タッチパネルディスプレイのように、一体となって構成されても良い。
【００２５】
＜検出器１０の分類構造＞
図２は、本実施形態におけるオブジェクトを検出する検出器１０の分類構造を示す概念図である。検出器１０は、検出装置１で実行可能なプログラムであり、先に述べたように予め検出装置１の記憶部１０２に記憶されている。
【００２６】
図２に示すように、オブジェクトの検出器１０は、複数のノード部１２を階層的に形成しており、上層のノード部１２から下層のノード部１２へと分岐を繰り返す構造となっている。各ノード部１２は、オブジェクトの分類情報に応じて形成された識別器（後述するカスケード識別器）を含んでいる。ここで、オブジェクトの分類情報とは、各ノード部が識別（分類）対象とするオブジェクトの種類（人、顔、車など）や、オブジェクトの向き（姿勢）などを指す。
例えば、オブジェクトの分類情報を、オブジェクトの向き（姿勢）によって規定する場合、上層のノード部１２では、広い範囲（様々な方向）のオブジェクトの向きに応じた識別器を形成し、一方、下層のノード部１２はより限定した範囲のオブジェクトの向きに応じた識別器を形成するのが望ましい。これによって、検出器１０の上層では、大まかなオブジェクトと非オブジェクトの識別（分類）を行い、下層に進むにつれ、オブジェクトの特定の向きに応じた詳細な識別（分類）を行っていく。
【００２７】
また、検出器１０の最下層に位置するノード部１２（図２のＣ１、Ｃ２、・・・、ＣＭ−１、ＣＭ）が、最終的にオブジェクトが属する分類（クラス）である。後述するように、対象画像５を下層のノード部１２へ分岐させながらオブジェクトの識別を行い、最下層のノード部１２でオブジェクトが識別（正識別）された場合、当該ノード部１２を該当クラスとして決定する。
【００２８】
そして、検出器１０の各々のノード部１２は、オブジェクトの分類情報に応じて形成された、複数のノード（図２の強識別器１３）を連結した「カスケード識別器」から構成されている。このように、各ノード部１２をカスケード識別器により構成することで、各ノード部１２において効果的な非オブジェクトの排除を実現することが可能となる。
後述するように、カスケード識別器は機械学習によって形成され、検出器１０の構成の一部として予め記憶部１０２に記憶されている。
【００２９】
尚、ノード部１２に繋がる下層のノード部１２の数は１であってもよい（つまり、検出器１０は、非分岐のノード部１２を含んでいてもよい）。
【００３０】
＜検出器１０の学習＞
上記した検出器１０は、予め用意した学習データを用いて機械学習により形成される。学習の手順について図３及び図４を参照しながら説明する。
図３に示すように、検出器１０の「第１層」では、Ｍ１個のノード部１２１−１、１２１−２、・・・、１２１−Ｍ１において各カスケード識別器が学習形成される。具体的には、Ｍ１個の分類にラベル分けされたポジティブ画像とネガティブ画像の学習データを用いて、各ノード部内で、偽陽性率（非オブジェクトを誤ってオブジェクトと検出した割合）が所定の値より低くなるまで、ノード１３（強識別器）を生成・連結させカスケード識別器を形成していく。そして、偽陽性率が所定の値より低くなると、ノード１３（強識別器）の生成・連結を終了し、「第１層」のノード部１２１−１、１２１−２、・・・、１２１−Ｍ１（カスケード識別器）が形成される。
【００３１】
次に、図４に示すように、第１層の各ノード部から分岐した「第２層」のＭ２個のノード部１２２−１、１２２−２、・・・、１２２−Ｍ２においても同様に各々カスケード識別器が学習形成される。このとき、第１層で正識別された学習データを今度はＭ２個の分類にラベル分けし、各ノード部内で、偽陽性率（非オブジェクトを誤ってオブジェクトと検出した割合）が所定の値より低くなるまで、ノード１３（強識別器）を生成・連結させカスケード識別器を形成していく。そして、偽陽性率が所定の値より低くなると、ノード１３（強識別器）の生成・連結を終了し、「第２層」の各ノード部１２２−１、１２２−２、・・・、１２２−Ｍ２（カスケード識別器）が形成される。
【００３２】
以降、同様に第３層、・・・、第Ｌ−１層、第Ｌ層と、ノード部を分岐させながら分岐元のノード部で通過した学習データを新たな学習データとして用いてカスケード識別器を学習させていき、最終的に検出器１０が形成される。
【００３３】
また、学習に用いる特徴量は、検出する目的のオブジェクトに応じて適宜選択される。例えば、エッジ特徴量、Ｈａｒｒ−Ｌｉｋｅ、ピクセル差分、ＥＯＨ（Ｅｄｇｅ  ｏｆ  Ｏｒｉｅｎｔａｔｉｏｎ  Ｈｉｓｔｏｇｒａｍｓ）、ＬＢＰ（Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）、ＨＯＧ(Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔｓ)、Ｅｄｇｅｌｅｔ、Ｊｏｉｎｔ  Ｈａｒｒ−Ｌｉｋｅ、Ｊｏｉｎｔ−ＨＯＧ  Ｓｈａｐｅｌｅｔなどを適宜選択できる。
【００３４】
尚、検出器１０の学習は、検出装置１で実行されてもよいし、その他のコンピュータ等で実行されてもよい。いずれにしても、学習生成された検出器１０は、予め検査装置１の記憶部１０２に記憶されているものとする。
【００３５】
＜オブジェクト検出処理＞
次に、オブジェクトを検出する処理を説明する。オブジェクト検出は、検出器１０の各ノード部１２を上層から下層へノード部１２を分岐させながら辿っていくことで行われ、最下層のノード部１２においてオブジェクトが識別（正識別）された場合に、オブジェクトが検出されたものと判断し、最下層に到達するルートが一つも存在しなかった場合、オブジェクトが検出されなかったものと判断する。
以降、図５及び図６のフローチャートは参照しながら、オブジェクト検出処理の一例を説明する。
【００３６】
ステップＳ１において、検出装置１の制御部１０１は、オブジェクトを検出する対象である対象画像５の入力を受付ける。
このとき、所定のサイズの検出窓を用いて、対象画像５から検出窓のサイズの画像を切り出し、当該切り出した画像を対象画像５として、入力しても良い。これにより、オブジェクト以外の背景を含む対象画像５から、目的のオブジェクトを検出することもできる。
【００３７】
ステップＳ２において、検出装置１の制御部１０１は、入力された対象画像５を下層の検出器１０の各ノード部１２へ入力する（分岐させる）。ステップＳ２を初めて通るときは、図２の検出器１０の第１層の各ノード部１２に対象画像５が入力される。
【００３８】
ステップＳ３において、検出装置１の制御部１０１は、対象画像５が入力された各ノード部１２（カスケード識別器）によりオブジェクトの識別を行う。
【００３９】
ここで、ステップＳ３における各ノード部１２により実行されるカスケード識別処理について図６、及び図７のフローチャートを参照しながら説明する。
図６のステップＳ１１において、ノード部１２内のノード（強識別器）は、対象画像５から計算される特徴量に基づいて、オブジェクトの識別を行う。ステップＳ１１を初めて通るときは、カスケード識別器の初段の強識別器１３−１（図７参照）によりオブジェクトの識別処理が行われる。
ステップＳ１２において、当該ノード（強識別器）で、オブジェクトが識別されなかった場合（ステップＳ１２の「Ｎｏ」）、ステップＳ１３へ移行し、オブジェクトが正識別されなかったものと判断し、カスケード識別処理を終了する。一方、オブジェクトが識別された場合（ステップＳ１２の「Ｙｅｓ」）、ステップＳ１４へ移行する。ここで、当該ノード（強識別器）がノード部１２内の末端のノードである場合（ステップＳ１４の「Ｙｅｓ」、例えば当該ノードが図７の強識別器１３−Ｎの場合）、ステップＳ１６へ移行し、オブジェクトが正識別されたものと判断し、カスケード識別処理を終了する。
【００４０】
一方、当該ノード（強識別器）がノード部１２の末端のノードでない場合（ステップＳ１４の「Ｎｏ」、例えば当該ノードが図７の強識別器１３−１の場合）、ステップＳ１５へ移行する。
ステップＳ１５において、当該ノードから更に下層のノード（例えば当該ノードが図７の強識別器１３−１であれば下層の強識別器１３−２）に対象画像５を入力する。そして、ステップＳ１１に戻り、同様の処理を順次繰り返す。
【００４１】
以上、カスケード識別処理は、途中のノード（強識別器）でオブジェクトでない（非オブジェクト）と識別されるとそれ以降のノード（強識別器）によるオブジェクトの識別処理は破棄され、対象画像５からオブジェクトが識別されなかったものと判断し、一方で、最後のノード（図７の強識別器１３―Ｎ）においてオブジェクトであると識別された場合にのみ、対象画像５からオブジェクトが識別（正識別）されたものと判断する。
【００４２】
ここで、カスケード識処理器により非オブジェクトが効果的に排除されることを概念的に説明しておく。例えば、カスケード識別器の各強識別器において、オブジェクト画像を通過させる割合をＴ（０＜Ｔ＜１）、非オブジェクト画像を通過させる割合をＦ（０＜Ｆ＜１）とすると、カスケード識別器のｎ番目のノード（強識別器）を通過後は、オブジェクト画像はＴｎだけ通過していることになり、例えば、Ｔ＝０．９９９、Ｆ＝０．５とした場合、ｎ＝２０のカスケード識別器のオブジェクト画像の通過率は０．９９９２０≒０．９８、非オブジェクト画像の通過率は０．５２０≒９．５×１０−７となり、非オブジェクト画像をほとんど通過させないことが分かる。
【００４３】
図６のフローチャートの説明に戻る。
対象画像５が入力されたノード部１２のうち、オブジェクトが正識別されたノード部１２が存在しない場合（ステップＳ４の「Ｎｏ」）、ステップＳ５へ移行し、検出器１０は対象画像５からオブジェクトが検出されなかったものと判断する（オブジェクト検出処理を終了する）。一方、オブジェクトが正識別されたノード部１２が存在する場合（ステップＳ４の「Ｙｅｓ」）、ステップＳ６へ移行する。
【００４４】
ステップＳ６において、正識別されたノード部１２に下層のノード部１２が存在するか否かを更に判断する。下層のノード部１２が存在しない場合（ステップＳ６の「Ｎｏ」）、ステップＳ７へ移行し、正識別されたノード部１２に該当するクラス（図２のＣ１、Ｃ２、・・・、ＣＭ−１、ＣＭのいずれか）のオブジェクトを検出したものと判断する（オブジェクト検出処理を終了する）。一方、下層のノード部１２が存在する場合（ステップＳ６の「Ｙｅｓ」）、ステップＳ２に戻り、対象画像５を更に下層の各ノード部１２へ入力する（分岐させる）。そして、ステップＳ２〜ステップＳ６の処理は、正識別されたノード部１２が存在しなくなるまで（ステップＳ４において「Ｎｏ」）、若しくは、最下層のノード部１２において正識別されるまで（ステップＳ６において「Ｎｏ」）、繰り返し実行される。
【００４５】
以上、オブジェクト検出処理を説明した。尚、オブジェクト検出処理の手順はあくまで一例であり、検出器１０のノードを辿って行く順序等は、種々選択できる。
【００４６】
本実施形態によれば、各ノード部１２におけるカスケード識別と、下層の各ノード部１２への入力（分岐）と、を交互に繰り返すことで、オブジェクト検出を行う。特に、本実施形態では、各ノード部１２によりカスケード識別を行うことで、各ノード部１２において効果的に非オブジェクトを排除することが可能である。従来のＢＦＳ木（図１９参照）では、オブジェクト検出処理の最終段階である葉ノードにカスケード識別器を設けることで、非オブジェクトを効果的に排除するように構成している。しかしながら、葉ノードに辿り着くまでは非オブジェクトを多く含んでおり、非オブジェクトを早期段階で排除することができなかった。この点、本実施形態では、各ノード部１２がカスケード識別器により非オブジェクトを効果的に排除しながら、下層の各ノード部１２へ分岐していくことで、従来に比べオブジェクト検出処理を一層効率的なものとしている。
【００４７】
［実施例］
次に、具体的なオブジェクト検出の実施例として、複数の顔向きの検出（Ｍｕｌｔｉ  Ｖｉｅｗ  Ｆａｃｅ  Ｄｅｔｅｃｔｏｒ：ＭＶＦＤ）を例に挙げて説明する。
【００４８】
＜顔検出器３０の分類構造＞
図８は、検出装置３の顔検出器３０の分類構造を示す図である。顔検出器３０の各ノード部１２は、識別対象とする顔の向きに応じて形成された識別器（カスケード識別器）を含む。以降、この識別器が張る空間をサブ顔空間とも呼ぶ。ここで、下層のノード部１２のサブ顔空間に対応する顔の向きは、上層のノード部１２のサブ顔空間に対応する顔の向きの一部又は全部を含むように構成される（言い換えると、上層のノード部１２のサブ顔空間に対応する顔の向きは、当該ノード部から分岐する下層のサブ顔空間に対応する顔の向きを全て包含している）。これによって、上層のノード部では下層のノード部より広い範囲の顔の向きに応じた識別器（カスケード識別器）が形成され、下層のノード部では上層の顔の向きを細分化した識別器（カスケード識別器）が形成される。具体的には、図８の「第１層」に示すように、検出器３０は、サブ顔空間を３分割したノード部１２ａ、１２ｂ、１２ｃで形成される。ここで、ノード部１２ａは、１つの顔を平面外回転させた正面の顔（±３０°）に対応するサブ顔空間、ノード部１２ｂは、半左向き〜全左向きの顔（−３０°〜  −９０°）に対応するサブ顔空間、ノード部１２ｃは、半右向きの顔〜全右向きの顔（＋３０°〜＋９０°）に対応するサブ顔空間に相当する。３つのサブ顔空間に分割されたノード部１２ａ、１２ｂ、１２ｃは、各々がノード（強識別器）を複数連結させたカスケード識別器により構成される。
【００４９】
次に、「第２層」において、５つのノード部１２ａ１、１２ｂ１、１２ｂ２、１２ｃ１、１２ｃ２に分割される。ここで、ノード部１２ｂ１及び１２ｂ２は、分岐元のノード部１２ｂの半左向き〜全左向きの顔のサブ顔空間を分割したものであり、半左向きの顔［−３０°〜  −６０°］及び全左向きの顔［−６０°〜  −９０°］に対応するサブ顔空間に相当する。
また、ノード部１２ｃ１及び１２ｃ２は、分岐元のノード部１２ｃの半右向きの顔〜全右向きの顔のサブ顔空間を分割したものであり、半右向きの顔［＋３０°〜＋６０°］及び全右向きの顔［＋６０°〜＋９０°］のサブ顔空間に相当する。
ノード部１２ａ１は、ノード部１２ａの正面の顔（±３０°）に対応するサブ顔空間と同様である。
そして、５つのサブ顔空間に分割されたノード部１２ａ１、１２ｂ１、１２ｂ２、１２ｃ１、１２ｃ２は、各々がノード（強識別器）を複数連結させたカスケード識別器により構成される。
【００５０】
以下同様に、「第３層」において、垂直方向の平面外回転［−１０°〜  −１５°］、正面、［＋１０°〜  ＋１５°］のサブ顔空間に相当するノード部に分割し、最下層（「第４層」）において、平面内回転を、−４５°、正面、４５°のサブ顔空間に相当するノード部へ分割する。
以上の分類構造により、顔検出器３０は、最下層（「第４層」）において顔の向きを４５分類する。
【００５１】
＜顔検出器３０の学習＞
上記した検出器３０を学習生成する手段について図９及び図１０を参照しながら説明する。
【００５２】
最初に、図９に示すように、ノード部１２ａ、１２ｂ、１２ｃの３つのカスケード識別器の初段のノード１３ａ-１、１３ｂ-１、１３ｃ-１（強識別器）が学習形成される。具体的には、３つのノード１３ａ-１、１３ｂ-１、１３ｃ-１（強識別器）は、対応する３つのサブ顔空間でラベル分けされた顔画像（ポジティブ画像）と非顔画像（ネガティブ画像）を用いて、ジョイントブースティングによってマルチクラス学習される。ジョイントブースティングを用いることにより、図９に示すように、ノード間で弱識別器を共有するように各ノード（強識別器）が学習される。
続いて、次段のノード１３ａ２、１３ｂ２、１３ｃ２（強識別器）が、初段のノード１３ａ１、１３ｂ１、１３ｃ１を通過したネガティブ画像を新たにネガティブ画像として用いて同様にジョイントブースティングにより学習される。このときも初段と同様にノード間において弱識別器を共有するように各ノード（強識別器）が学習される。
【００５３】
偽陽性率（顔でない画像を顔と検出した割合）が所定の値より低くなったら、ノード（強識別器）の学習を止め、第１層の各ノード部１２ａ、１２ｂ、１２ｃのカスケード識別器が形成される。
【００５４】
次に、ノード部１２ｂはノード部１２ｂ１、１２ｂ２へ分岐し、ノード部１２ｃはノード部１２ｃ１、１２ｃ２に分岐する。ノード部１２ａは、ノード部１２ａ１へ分岐せずに接続される。
【００５５】
そして、図１０に示すように、ノード部{１２ｂ１，１２ｂ２}は、分岐元のノード部１２ｂ（カスケード識別器）で正識別された学習データを用いて、ジョイントブースティングによって、ノード間で弱識別器を共有するように、各ノード（強識別器）を生成・連結させながらカスケード識別器を学習形成する。
また、同様に、ノード部{１２ｃ１，１２ｃ２}は、分岐元のノード部１２ｂ（カスケード識別器）で正識別された学習データを用いて、ジョイントブースティングによって、ノード間で弱識別器を共有するように、カスケード識別器を学習形成する。
一方、ノード部ａ１では、ノード部ａで正識別された学習データを用いて、カスケード識別器を学習形成する。
【００５６】
以降、各ノード部の分岐と、分岐した各ノード部におけるカスケード識別器の学習と、を目的の偽陽性率を満たすまでを繰り返す。本実施例では、この手順により、第２層のノード部から更に垂直方向の平面外回転［−１０°〜  −１５°］、 正面、［＋１０°〜  ＋１５°］に相当する第３層のノード部へ分岐させ、最後に平面内回転、−４５°、正面、４５°に相当する第４層（最下層）のノード部へ分岐する。
【００５７】
以上、本実施例の顔検出器３０は、ジョイントブースティングを用いて学習し形成される。ジョイントブースティングは、高精度な２クラス識別器の学習方法であるジェントルブースティングをマルチクラス分類に拡張したものである。この手法は、弱識別器（特徴量）をクラス間で共有することができるため、計算効率性の高い識別器を構築するとこができる。以降、ジョイントブースティングによる機械学習について理論的側面から説明する。
【００５８】
（ジョイントブースティング）
ジョイントブースティングでは、各クラスが特徴を共有する様々なサブセット（クラスの組合わせ）の強識別器を生成する。３クラスを例に示すと、サブセットＳ（ｎ）は（１，２，３）、（１，２）、（２，３）、（１，３）、（１）、（２）、（３）となる（ｎはサブセットのインデックスを示す）。サブセットに対応した強識別器をＧＳ（ｎ）(ｖ)（ｖ：特徴量）とすると、各クラスの強識別器は以下のように表される。
【００５９】
【数１】
2016071702.tif 000003
【００６０】
上式に示すように、例えば、クラス１とクラス２ではＧ１,２,３（ｖ）、Ｇ１,２（ｖ）を共有していることが分かる。このようにクラス間で特徴を共有できるため、計算効率性が向上する。各サブセットの強識別器は、対応したサブセットの弱識別器ｈｍｎ（ｖ）の加算モデルで次のように表される。ｍは学習のラウンド数を示す。
【００６１】
【数２】
2016071702.tif 000004
【００６２】
ジョイントブースティングは、ジェントルブースティングの拡張バージョンとして提案されている。ジェントルブースティングは、２値クラスのブースティング手法であり、検出対象である確からしさを確率密度などで確率的に出力するような弱識別器を使用することで、従来のアダブースティングよりも識別精度の向上を実現している。
【００６３】
ジョイントブースティングでは、クラスごとに学習データの重みwｉｃ（ｃ：クラス、ｉ：学習データのインデックス）を持たせており、各クラスのラベルは、該当クラスが「１」、それ以外が「―１」となるｚｉｃが用いられる。選択したサブセットではジェントルブースティングを行い、サブセットのクラスにおける重み・ラベルで確率的に判別値を出力する弱識別器を生成する。サブセット外のクラスに対しては、弱識別器は超平面を設けず、該当クラスのラベルを確率的に出力する。
【００６４】
また、本実施形態では、ジョイントブースティングの学習に用いる特徴量として、ＥＭＢＬＢＰ（Ｅｘｔｅｎｄｅｄ  Ｍｕｌｔｉ  Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）値を採用する。ＥＭＢＬＢＰ値は、画像固有のバイナリパターンを数値化したものである。ＥＭＢＬＢＰ値の２５６階調分の判別値を用意する弱識別器は以下のように表される。
【００６５】
【数３】
2016071702.tif 000005
【００６６】
ここで、ｖｉｆは学習データｉのｆ番目の特徴量（ＥＭＢＬＢＰ値）である。このようにサブセットに含まれるクラスにおいて、特定特徴量に対応した判別値を確率的に算出している。また、弱識別器はサブセットに対しｆ番目の特徴量に応じた２５６階調のＬＵＴ（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ）で表される。ブースティングにおけるラウンドの評価として、以下のように最小自乗問題で表されるエラーを最小にするものが最適な弱識別器として選択される。
【００６７】
【数４】
2016071702.tif 000006
【００６８】
このエラー値を全てのサブセットと特徴量で評価し、最小となった時に対象となるサブセット、その弱識別器（ＬＵＴ）、使用する特徴量の番号ｆが決定される。
【００６９】
尚、１回の学習ラウンドが終了すると、次のラウンドでは、重みが以下の式で更新される。
【００７０】
【数５】
2016071702.tif 000007
【００７１】
以上説明したジョイントブースティングによる機械学習の疑似コードを以下に示す。
【００７２】
【数６】
2016071702.tif 000008
【００７３】
（特徴量）
上記したように、本実施例においては、画像データの特徴量としてＥＭＢＬＢＰ値を採用している。ＥＭＢＬＢＰはＬＢＰ（Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）を改良した特徴量であり、ＭＢＬＢＰ(Ｍｕｌｔｉ−Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ)、ｍＭＢＬＢＰ(ｍｅａｎ  Ｍｕｌｔｉ−Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ)、ｄＭＢＬＢＰ(ｄｉｒｅｃｔｉｏｎ  Ｍｕｌｔｉ−Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ)、ｔＭＢＬＢＰ（ｔｒａｎｓｉｔｉｏｎ  Ｍｕｌｔｉ−Ｂｌｏｃｋ  Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）を併用したものである。ＥＭＢＬＢＰは画像上のあらゆる方向のパターンを複合して抽出するため、顔の複雑な特徴について精度の高い情報が得られるメリットがある。
【００７４】
以下、ＥＭＢＬＢＰ値を構成する各特徴量（ＬＢＰ、ＭＢＬＢＰ、ｍＭＢＬＢＰ、ｄＭＢＬＢＰ、ｔＭＢＬＢＰ）について説明する。
【００７５】
図１１は、ＬＢＰを示す図である。ＬＢＰは３×３の画素ブロックにおいて、中央画素と周辺画素の値を比較し、値の大小に応じてバイナリ値｛０，１｝に変換する。ＬＢＰは、周辺画素のバイナリ値を並べ、８ビットの整数値に変換したものを特徴値とする。ＬＢＰは以下の式で求められる。
【００７６】
【数７】
2016071702.tif 000009
【００７７】
ここで、ｇｃを中心画素値、ｇｐを周辺画素値とする。このようなバイナリパターンは明るさに依らない画像内の特徴を表すことができる。
【００７８】
ＭＢＬＢＰはＬＢＰをマルチブロック型に拡張したものであり、ある画像範囲を３×３のブロックで表す。各ブロックの平均値を用いて、３×３の画素ブロックのように扱い、ＬＢＰと同様の特徴値を算出する。
【００７９】
ｍＭＢＬＢＰは、ＭＢＬＢＰ同様にマルチブロック構造を採用するが、ＭＢＬＢＰのように中央ブロックと周辺ブロックの比較ではなく、全体の平均値と周辺ブロックの比較により、ＬＢＰと同様の特徴値を算出する。
【００８０】
ｔＭＢＬＢＰはＭＢＬＢＰのマルチブロック構造を用いて、周囲ブロックのみでバイナリパターンを抽出した特徴量である。
図１２（ａ）は、ｔＭＢＬＢＰを示す図である。
周囲ブロックを回転するように、隣り合うブロックの平均値同士で値を比較し、バイナリパターンを生成する。ｔＭＢＬＢＰは以下の式で求められる。
【００８１】
【数８】
2016071702.tif 000010
【００８２】
ここで、ｇｐは周囲ブロックの平均値であり、ｇ０をブロック周回の開始地点を示す。
【００８３】
ｄＭＢＬＢＰは、ｔＭＢＬＢＰと同様にマルチブロック構造を採用しており、特定の直線方向に並んだ３ブロックからバイナリパターンを抽出する。
図１２（ｂ）は、ｄＭＢＬＢＰを示す図である。図１２（ｂ）に示すように、１方向につき２ビットのパターンで表す直線を４方向与え、最終的に８ビットのバイナリパターンを得る。ある１方向のバイナリパターンは１ビット目を中心ブロックの値が最大若しくは最小であるか否かで判定している。また２ビット目では、中心ブロックと隣り合う２ブロックの差分値を比較し、いずれの差分値が高いか否かでバイナリ値を決定する。ｄＭＢＬＢＰは以下の式で求められる。
【００８４】
【数９】
2016071702.tif 000011
【００８５】
ここで、Ｐ’は周囲ブロックの半周分であり、Ｐ＝２Ｐ’となる。ｇｐ’は半周中にあるブロックの平均値であり、ｇｃは中心ブロックの平均値である。
【００８６】
ＥＭＢＬＢＰは、上記したマルチブロック型のＬＢＰ特徴量を用い、３×３の画素ブロックからスタートし、徐々にマルチブロック型に拡大しながら３つの特徴量を計算していく。例えば、３×３画素ブロックの次は２×２画素ブロックが３×３で並んだ６×６の画素範囲で各ＭＢＬＢＰが計算される。また、ＭＢＬＢＰでは各ブロックサイズで画像内を１画素ずつ走査して特徴量を抽出していく。
このようにＥＭＢＬＢＰはあらゆる方向のパターンを複合して抽出するため、顔の複雑な特徴について精度の高い情報が得られる。
【００８７】
＜顔検出処理＞
最後に、図１３のフローチャートを参照しながら、検出装置３が顔検出を行う処理について説明する。
【００８８】
ステップＳ２１において、まず、検出装置３の制御部１０１は、顔検出を行う対象画像５の入力を受け付ける。
図１４は入力された対象画像５の例を示す図である。
【００８９】
ステップＳ２２において、検出装置３の制御部１０１は、対象画像５に対し所定のサイズの顔検出窓５１を走査させながら、顔検出窓５１で切り出した画像に対して逐次、顔検出処理を実行する（図１５参照）。
以下、顔検出窓５１で切り出した１つの画像（以降、当該画像を「対象画像５」と呼ぶ）に対して、顔検出処理を行う手順を説明する。
【００９０】
検出装置３の制御部１０１は、まず、対象画像５を顔検出器３０の「第１層」、つまり、正面の顔（±３０°）と、半左向き〜全左向きの顔（−３０°〜  ―９０°）と、半右向きの顔〜全右向きの顔（＋３０°〜＋９０°）の３つの顔向きのサブ顔空間に対応するノード部１２ａ、１２ｂ、１２ｃへ入力する（分岐させる）。そして、３つのサブ顔空間に分割する３つのノード部内において、カスケード識別を行う。この際、カスケード識別器の各ノードは、対象画像５から計算されるＥＭＢＬＢＰ値に基づく弱識別器をノード部間で共有しながらオブジェクト識別を行う。これにより、各ノードにおける識別処理の計算コストを低減させることができる。
【００９１】
第１層のノード部における識別処理によって、３つのサブ顔空間外の非顔画像が効果的に排除される。
【００９２】
そして、ノード部１２ａ、１２ｂ、１２ｃのうち、顔識別（正識別）されたノード部があれば、対象画像５を「第２層」の各ノード部へ入力する（分岐させる）。
例えば、ノード部１２ｂにおいて正識別された場合、対象画像５を、半左向きの顔（−３０°〜−６０°）と全左向きの顔（−６０°〜−９０°）の２つのサブ顔空間に対応するノード部１２ｂ１、１２ｂ２へ入力する（分岐させる）。そして、２つのノード部１２ｂ１、１２ｂ２内において、カスケード識別を行う。この場合も、ノード部１２ｂ１、１２ｂ２間で弱識別器を共有しながらカスケード識別を行うため、識別処理の計算コストを低減させることができる。
また例えば、ノード部３２ｃにおいて正識別された場合、対象画像５を、半右向きの顔（＋３０°〜＋６０°）と全右向きの顔（＋６０°〜＋９０°）の２つのサブ顔空間に対応するノード部１２ｃ１、１２ｃ２へ入力する（分岐させる）。そして、２つのサブ顔空間に分割する２つのノード部１２ｃ１、１２ｃ２内において、カスケード識別を行う。同様に、ノード部１２ｃ１、１２ｃ２間で弱識別器を共有しながらカスケード識別を行うため、識別処理の計算コストを低減させることができる。また、ノード部１２ａにおいて正識別された場合は、対象画像５をノード部１２ａ１へ入力し、ノード部１２ａ１内においてカスケード識別を行う。
【００９３】
以上、第２層のノード部における識別処理によって、第１層の３つのサブ顔空間内にあり、且つ、第２層のサブ顔空間外の非顔画像を効果的に排除することができる。
【００９４】
以下、同様に第３層における識別処理、第４層における識別処理を実行し、第４層（最下層）のノード部において顔識別（正識別）された場合、当該ノード部に相当するクラスを該当クラスとて決定する（顔検出されたものと判断する）。一方、第４層（最下層）のノード部に達するルートが１つも存在しない場合、顔検出されなかったものと判断する。
【００９５】
以上の顔検出処理を、画像全体又は画像の所定領域上で顔検出窓５１を走査させながら逐次実行する。
【００９６】
そして、ステップ２３において、検出装置３の制御部１０１は、顔検出結果を表示部１０４に表示する。図１６は対象画像５の顔検出結果の例を示す図である。図１６に示すように、制御部１０１は、顔が検出された顔検出エリア５２を対象画像５上に表示する。
【００９７】
以上、オブジェクト検出の具体的な実施例として、複数の向きの顔を検出可能な検出装置３等について説明した。本実施例によれは、ノード部間（分類間）で弱識別器（特徴）を共有可能な機械学習法としてジョイントブースティングを導入することにより、異なるノード部間（分類間）で特徴を共有するカスケード識別器を用いて非顔を排除する。これにより、各ノード部単独でカスケード識別器を形成する場合に比べ、弱識別器の全体個数を削減できる。このため、顔検出処理において、弱識別器（特徴量）の計算コストを大幅に軽減でき、顔検出処理の効率性を向上させることができる。特に、本実施例では、特徴量として、ＥＭＢＬＢＰ値を採用した。ＥＭＢＬＢＰ値は照明不変の特徴を有するため、異なる照明下の検出に強い。また、ＥＭＢＬＢＰはあらゆる方向のパターンを複合して抽出するため、顔の複雑な特徴について精度の高い情報が得られる。さらに、ＥＭＢＬＢＰは強い特徴を持つため、弱識別器の数が少なくて済み、顔検出処理時の計算効率性をより向上させる。
また、本実施例では、非顔画像の排除が、顔検出器３０の上層と下層で非顔が存在するサブ顔空間が異なることで効果的に実現されている。例えば、顔検出器３０の第１層では対象のサブ顔空間外の非顔をカスケード識別器により排除し、第２層においては第１層の対象サブ顔空間内にありながら、第２層の対象サブ顔空間外にある非顔をカスケード識別器により排除する。つまり、第１層では排除できないサブ顔空間にあるものを第２層において排除することが可能であり、また、第３層においても第２層で排除できないサブ顔空間にあるものを排除する。第４層においても同様である。このように、上層で排除できないサブ顔空間を下層において確実に排除することで、非顔排除が効果的に実現されている。尚、顔検出器３０の上層のノード部１２のサブ顔空間は、顔の向きを広く網羅するため、顔に共通する特徴に基づいて顔識別を行う傾向が強い。このため、明らかに顔と相違する背景画像等は顔検出処理の早期段階で排除することができる。
【００９８】
以上、添付図面を参照しながら、本発明に係る検出装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【００９９】
１  ……………検出装置
５  ……………対象画像
１０……………検出器
１２……………ノード部
１３……………強識別器
【図１】
2016071702.tif 000012
【図２】
2016071702.tif 000013
【図３】
2016071702.tif 000014
【図４】
2016071702.tif 000015
【図５】
2016071702.tif 000016
【図６】
2016071702.tif 000017
【図７】
2016071702.tif 000018
【図８】
2016071702.tif 000019
【図９】
2016071702.tif 000020
【図１０】
2016071702.tif 000021
【図１１】
2016071702.tif 000022
【図１２】
2016071702.tif 000023
【図１３】
2016071702.tif 000024
【図１４】
2016071702.tif 000025
【図１５】
2016071702.tif 000026
【図１６】
2016071702.tif 000027
【図１７】
2016071702.tif 000028
【図１８】
2016071702.tif 000029
【図１９】
2016071702.tif 000030