(57)【要約】【課題】より簡単かつ迅速に画像から特徴量を抽出できるようにする。【解決手段】ｘｙ方向に分離可能なガウシアンステアラブルフィルタを構成する各基底フィルタを、矩形フィルタで近似する。さらに、近似により得られた矩形フィルタであるフィルタＲ１ｘとフィルタＲ１ｙを線形結合することで、近似的に得られるガウシアンステアラブルフィルタを記録する。特徴量の抽出時においては、特徴量の抽出対象となる画像から、インテグラルイメージを生成し、このインテグラルイメージを参照することで、フィルタＲ１ｘとフィルタＲ１ｙの演算を行なう。そして、それらのフィルタの演算結果を線形結合することにより、近似的に得られたガウシアンステアラブルフィルタによるフィルタ処理の出力を得る。本発明は、画像処理装置に適用することができる。【選択図】図６
2012089076.tif 000002
【特許請求の範囲】
【請求項１】
複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタを記録する記録手段と、
入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量を抽出するフィルタ処理手段と
を備える画像処理装置。
【請求項２】
前記入力画像のインテグラルイメージを生成するインテグラルイメージ生成手段をさらに備え、
前記フィルタ処理手段は、前記インテグラルイメージの画素の画素値を参照して、前記入力画像に対する前記矩形フィルタを用いたフィルタ処理の演算を行い、前記複数の前記矩形フィルタのそれぞれの演算結果を線形結合することにより、前記ガウシアンステアラブルフィルタを用いたフィルタ処理の演算を行なう
請求項１に記載の画像処理装置。
【請求項３】
前記矩形フィルタは、互いに垂直な２方向に分離可能なガウシアンステアラブルフィルタの基底フィルタを近似することにより得られるフィルタである
請求項２に記載の画像処理装置。
【請求項４】
認識対象が含まれる学習画像、および前記認識対象が含まれない学習画像から抽出された前記特徴量を用いた統計学習により得られた識別器と、前記入力画像から抽出された前記特徴量とに基づいて、前記入力画像から前記認識対象を検出する検出手段をさらに備える
請求項２に記載の画像処理装置。
【請求項５】
前記入力画像上の注目画素に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行って、前記注目画素の主方向を計算する主方向計算手段と、
前記主方向により定まる前記入力画像上の前記注目画素近傍のいくつかの画素から抽出された前記特徴量と、前記注目画素から抽出された前記特徴量とを合成し、前記注目画素における最終的な前記特徴量とする特徴量生成手段と
をさらに備え、
前記検出手段は、前記特徴量生成手段により生成された前記最終的な前記特徴量と、前記識別器とに基づいて、前記認識対象を検出する
請求項４に記載の画像処理装置。
【請求項６】
前記入力画像上の注目画素に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行って、前記注目画素の主方向を計算する主方向計算手段と、
前記入力画像上において、前記主方向が前記注目画素における前記主方向と同じ方向であり、かつ前記注目画素から最も近い画素をペアリング画素として検出するペアリング画素検出手段と、
前記注目画素から抽出された前記特徴量、前記注目画素における前記主方向、前記ペアリング画素から抽出された前記特徴量、および前記ペアリング画素における前記主方向を合成し、前記注目画素における最終的な前記特徴量とする特徴量生成手段と
をさらに備え、
前記検出手段は、前記特徴量生成手段により生成された前記最終的な前記特徴量と、前記識別器とに基づいて、前記認識対象を検出する
請求項４に記載の画像処理装置。
【請求項７】
複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタを記録する記録手段と、
入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量を抽出するフィルタ処理手段と
を備える画像処理装置の画像処理方法であって、
前記フィルタ処理手段が、前記記録手段から読み出した前記ガウシアンステアラブルフィルタを用いて前記フィルタ処理を行い、前記入力画像から前記特徴量を抽出する
ステップを含む画像処理方法。
【請求項８】
複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタを記録手段から読み出して、入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量を抽出する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および方法、並びにプログラムに関し、特に、より簡単かつ迅速に画像から特徴量を抽出できるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、画像から特定の物体を検出する物体認識等の画像処理では、フィルタが用いられて画像から所望の特徴の特徴量が抽出されることが多い。
【０００３】
例えば、特徴量として任意の線分の方向を抽出する方法として、ガボアフィルタを用いる手法がよく知られている（例えば、非特許文献１参照）。ガボアフィルタは２次元のフィルタであるが、このガボアフィルタを用いて線分の方向を抽出する場合には、様々な方向や周波数に対応するために、多数のフィルタを保持しておく必要がある。例えば、８方向５周波数であれば、４０種類のフィルタが必要となる。
【０００４】
そこで特徴量を抽出するにあたり、計算時間とメモリの使用容量を低減させるために、Gaussian Derivatives（ガウス関数の導関数）を効率的に計算するSteerable Filters法も提案されている（例えば、非特許文献２参照）。
【０００５】
この方法では、８方向のフィルタを用いて、各方向の特徴量を抽出するのに、（導関数の次数（微分次数）＋１）個の基底フィルタを保持していればよい。例えば、１次導関数であれば２個の基底フィルタ、２次導関数であれば３個の基底フィルタがあればよい。さらに、この方法では、フィルタ処理の演算を速くするために、ｘ，ｙの２方向に分離可能なフィルタが用いられており、メモリの記録容量を節約することもできる。
【０００６】
また、フィルタを用いた特徴量の抽出方法として、矩形フィルタを用いて回転フィルタの演算を行なう方法も提案されている（例えば、非特許文献３参照）。例えば、回転フィルタの演算を行なって得られた所定の特徴点の特徴量と、近傍の他の特徴点の特徴量とを組み合わせれば、局所特徴量を構成することもできる。このような局所特徴量は物体認識で多く用いられており（例えば、非特許文献４参照）、局所特徴量の算出を高速化できれば、物体認識の高速化につながるため、高い効果が期待できるようになる。
【先行技術文献】
【特許文献】
【０００７】
【非特許文献１】Javier Movellan「Tutorial on Gabor Filters」インターネット〈http://mplab.ucsd.edu/tutorials/gabor.pdf〉
【０００８】
【非特許文献２】W.Freeman and E.Adelson「The Design and Use of Steerable Filters」PAMI, 1991
【０００９】
【非特許文献３】Lienhart, R. and Maydt, J.「An extended set of Haar-like features for rapid object detection」ICIP02, pp. I: 900-903, 2002
【００１０】
【非特許文献４】David G. Lowe「Distinctive image features from scale-invariant keypoints」International Journal of Computer Vision, 60, 2 (2004), pp. 91-110
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上述した技術では、画像から所望の特徴の特徴量を、簡単かつ迅速に抽出することはできなかった。
【００１２】
例えばSteerable Filters法では、所望の画素点のフィルタ出力を求めるためには、多くの画素点（多くの場合、画像上の全画素点となる）においてフィルタの演算をし、それらの演算結果を用いて、隣接する画素点のフィルタ出力値も演算しなければならなかった。すなわち、フィルタ出力を得るには、多くの演算処理が必要であった。
【００１３】
また、矩形フィルタを用いて回転フィルタの演算を行なう方法では、回転フィルタの方向として、４５度刻みの方向のフィルタ出力しか得ることができず、所望する特徴の特徴量が得られない場合があった。つまり、任意の方向のフィルタ出力を得ることができなかった。
【００１４】
本発明は、このような状況に鑑みてなされたものであり、画像から所望の特徴の特徴量を、より簡単かつ迅速に抽出することができるようにするものである。
【課題を解決するための手段】
【００１５】
本発明の一側面の画像処理装置は、複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタを記録する記録手段と、入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量を抽出するフィルタ処理手段とを備える。
【００１６】
画像処理装置には、前記入力画像のインテグラルイメージを生成するインテグラルイメージ生成手段をさらに設け、前記フィルタ処理手段には、前記インテグラルイメージの画素の画素値を参照して、前記入力画像に対する前記矩形フィルタを用いたフィルタ処理の演算を行い、前記複数の前記矩形フィルタのそれぞれの演算結果を線形結合することにより、前記ガウシアンステアラブルフィルタを用いたフィルタ処理の演算を行なわせることができる。
【００１７】
前記矩形フィルタは、互いに垂直な２方向に分離可能なガウシアンステアラブルフィルタの基底フィルタを近似することにより得られるフィルタとすることができる。
【００１８】
画像処理装置には、認識対象が含まれる学習画像、および前記認識対象が含まれない学習画像から抽出された前記特徴量を用いた統計学習により得られた識別器と、前記入力画像から抽出された前記特徴量とに基づいて、前記入力画像から前記認識対象を検出する検出手段をさらに設けることができる。
【００１９】
画像処理装置には、前記入力画像上の注目画素に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行って、前記注目画素の主方向を計算する主方向計算手段と、前記主方向により定まる前記入力画像上の前記注目画素近傍のいくつかの画素から抽出された前記特徴量と、前記注目画素から抽出された前記特徴量とを合成し、前記注目画素における最終的な前記特徴量とする特徴量生成手段とをさらに設け、前記検出手段には、前記特徴量生成手段により生成された前記最終的な前記特徴量と、前記識別器とに基づいて、前記認識対象を検出させることができる。
【００２０】
画像処理装置には、前記入力画像上の注目画素に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行って、前記注目画素の主方向を計算する主方向計算手段と、前記入力画像上において、前記主方向が前記注目画素における前記主方向と同じ方向であり、かつ前記注目画素から最も近い画素をペアリング画素として検出するペアリング画素検出手段と、前記注目画素から抽出された前記特徴量、前記注目画素における前記主方向、前記ペアリング画素から抽出された前記特徴量、および前記ペアリング画素における前記主方向を合成し、前記注目画素における最終的な前記特徴量とする特徴量生成手段とをさらに設け、前記検出手段には、前記特徴量生成手段により生成された前記最終的な前記特徴量と、前記識別器とに基づいて、前記認識対象を検出させることができる。
【００２１】
本発明の一側面の画像処理方法またはプログラムは、複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタを記録手段から読み出して、入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量を抽出するステップを含む。
【００２２】
本発明の一側面においては、複数の矩形フィルタを基底フィルタとして、前記複数の前記矩形フィルタを線形結合することで近似的に得られたガウシアンステアラブルフィルタが記録手段から読み出されて、入力画像に対して、前記ガウシアンステアラブルフィルタを用いたフィルタ処理を行うことで、前記入力画像から特徴量が抽出される。
【発明の効果】
【００２３】
本発明の一側面によれば、画像から所望の特徴の特徴量を、より簡単かつ迅速に抽出することができる。
【図面の簡単な説明】
【００２４】
【図１】ステアラブルフィルタについて説明する図である。
【図２】ステアラブルフィルタについて説明する図である。
【図３】ステアラブルフィルタについて説明する図である。
【図４】基底フィルタについて説明する図である。
【図５】ｘｙ方向に分離可能なステアラブルフィルタについて説明する図である。
【図６】本発明の基底フィルタについて説明する図である。
【図７】インテグラルイメージについて説明する図である。
【図８】本発明を適用したフィルタと他のフィルタの比較について説明する図である。
【図９】本発明を適用した人識別システムの一実施の形態の構成例を示す図である。
【図１０】服装識別器生成部の詳細な構成例を示す図である。
【図１１】輪郭特徴量計算部の詳細な構成例を示す図である。
【図１２】輪郭特徴量の抽出について説明する図である。
【図１３】輪郭特徴量について説明する図である。
【図１４】学習処理を説明するフローチャートである。
【図１５】服装特徴点の抽出について説明する図である。
【図１６】服装特徴量を説明する図である。
【図１７】服装識別器生成処理を説明するフローチャートである。
【図１８】服装特徴点のペアごとの服装特徴量のサンプリングについて説明する図である。
【図１９】弱識別器の設定について説明する図である。
【図２０】服装特徴点のペアについて説明する図である。
【図２１】輪郭特徴点の抽出について説明する図である。
【図２２】輪郭特徴量計算処理を説明するフローチャートである。
【図２３】人検出処理を説明するフローチャートである。
【図２４】対象物体の認識結果の表示例を示す図である。
【図２５】本発明を適用した画像処理システムの一実施の形態の構成を示す図である。
【図２６】特徴量抽出部の構成例を示す図である。
【図２７】特徴量を説明する図である。
【図２８】特徴点ペアリング部の構成例を示す図である。
【図２９】特徴点のペアリングの例を説明する図である。
【図３０】特徴量選択部の構成例を示す図である。
【図３１】識別器生成部の構成例を示す図である。
【図３２】学習処理を説明するフローチャートである。
【図３３】学習用モデル画像特徴量抽出処理を説明するフローチャートである。
【図３４】学習用モデル画像特徴量ペアリング処理を説明するフローチャートである。
【図３５】特徴量選択処理を説明するフローチャートである。
【図３６】特徴量選択処理を説明する図である。
【図３７】識別器生成処理を説明するフローチャートである。
【図３８】画像認識処理を説明するフローチャートである。
【図３９】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００２５】
以下、図面を参照して、本発明を適用した実施の形態について説明する。
【００２６】
〈本発明の概要〉
まず、本発明を適用した特徴量の抽出方法について説明する。
【００２７】
例えば、ガウシアンステアラブルフィルタ（Gaussian Steerable Filters）と呼ばれるガウス関数の導関数を利用したフィルタでは、任意の方向のフィルタ出力を、基底出力の線形結合で表現できることが知られている。
【００２８】
いま、互いに直交するｘ方向およびｙ方向を軸とするｘｙ座標系において、ｘ座標とｙ座標をｘ，ｙとすると、ガウス関数Ｇは次式（１）で表される。なお、式（１）において、σはガウス幅を示している。
【００２９】
【数１】
2012089076.tif 000003
【００３０】
そして、このようなガウス関数Ｇの各方向および各次数の導関数とラプラシアンは、次式（２）乃至式（９）で表される。
【００３１】
【数２】
2012089076.tif 000004
【００３２】
すなわち、式（２）乃至式（５）は、ｘ方向の１次導関数、ｙ方向の１次導関数、ｘ方向の２次導関数、およびｙ方向の２次導関数を示している。また、式（６）は、ｘ方向の１次導関数をさらにｙ方向に微分して得られた２次導関数を示している。さらに、式（７）乃至式（９）は、ｘ方向の３次導関数、ｙ方向の３次導関数、およびラプラシアンを示している。
【００３３】
例えば、ｘ方向の１次導関数Ｇｘがフィルタとして用いられる場合、画像上の注目する画素を中心とする所定領域内の画素ごとに、導関数Ｇｘが用いられて、それらの画素ごとの係数が算出される。そして、所定領域の各画素の画素値に算出された係数が乗算され、係数が乗算された画素値の和が、注目する画素のフィルタ処理後の画素値（フィルタ出力値）とされる。
【００３４】
ここで、画素ごとの係数は、上述の所定領域の互いに直交する２つの方向をｘｙ座標系のｘ方向およびｙ方向に対応させたときの画素の位置を示す座標（ｘ，ｙ）を、１次導関数Ｇｘに代入して得られる値とされる。
【００３５】
以下において、所定の関数を用いたフィルタとは、上述した導関数Ｇｘを用いたフィルタと同様に、その関数と各画素の位置とから、各画素に乗算される係数が定められるフィルタであるものとして、説明を続ける。
【００３６】
ところで、ｘ方向およびｙ方向を０度および９０度の方向とし、任意の角度をθとすると、ガウス関数Ｇのθ方向のｎ次導関数Ｇｎ（θ）は、次式（１０）で表される。
【００３７】
【数３】
2012089076.tif 000005
【００３８】
なお、式（１０）における係数ｋｎｉ（θ）は、ｎ＝１，２，３である場合、それぞれ次式（１１）、式（１２）、および式（１３）で示される関数とされる。
【００３９】
【数４】
2012089076.tif 000006
【００４０】
すなわち、導関数Ｇｎ（θ）の次数ｎが１である場合、ガウス関数Ｇのθ方向の１次導関数Ｇ１（θ）は、次式（１４）で表される。このような関数の微分方向θは、フィルタの方向を示している。この方向θを変化させることは、ガウス関数Ｇの導関数をｘｙ平面上においてθだけ回転させることに対応する。
【００４１】
【数５】
2012089076.tif 000007
【００４２】
同様に、導関数Ｇｎ（θ）の次数ｎが２である場合、ガウス関数Ｇのθ方向の２次導関数Ｇ２（θ）は、次式（１５）で表される。なお、式（１５）における係数ｋ２i（θ）（但し、ｉ＝１，２，３）は、式（１６）で示される関数である。
【００４３】
【数６】
2012089076.tif 000008
【００４４】
さらに、導関数Ｇｎ（θ）の次数ｎが３である場合、ガウス関数Ｇのθ方向の３次導関数Ｇ３（θ）は、次式（１７）で表される。なお、式（１７）における係数ｋ３i（θ）（但し、ｉ＝１，２，３，４）は、式（１８）で示される関数である。
【００４５】
【数７】
2012089076.tif 000009
【００４６】
このようなガウス関数Ｇのθ方向のｎ次導関数Ｇｎ（θ）を用いたフィルタが、ガウシアンステアラブルフィルタ（Gaussian Steerable Filters）と呼ばれるフィルタである。
【００４７】
ガウシアンステアラブルフィルタを用いる場合には、例えば図１に示すように、方向θおよびガウス幅σの異なるいくつかの基底フィルタ（基底関数）を用意すれば、それらの基底フィルタの線形結合により、任意の方向θのフィルタを表現することができる。より具体的には、ｎ次導関数Ｇｎ（θ）を用いたフィルタを得るには、（ｎ＋１）個の基底フィルタがあればよい。
【００４８】
図１において、１番上の列の画像は、左から順番にガウス幅σ＝１である場合における１次導関数Ｇ１（０°）および１次導関数Ｇ１（９０°）のフィルタを表している。
【００４９】
より詳細には、これらの画像はフィルタのカーネルであり、画像上の各画素の画素値が、その画素に対応する位置にある、フィルタ処理される画像の画素に乗算されるフィルタ係数である。なお、フィルタの画像における図中、横方向および縦方向は、ｘｙ座標系のｘ方向およびｙ方向に対応している。
【００５０】
これらの１次導関数Ｇ１（０°）と１次導関数Ｇ１（９０°）のフィルタを基底とすれば、上述した式（１４）で示されるように、任意の方向θの１次導関数Ｇ１（θ）のフィルタを得ることができる。
【００５１】
同様に、図中、中央に並ぶ画像は、左から順番にガウス幅σ＝１である場合における２次導関数Ｇ２（０°）のフィルタ、２次導関数Ｇ２（６０°）のフィルタ、２次導関数Ｇ２（１２０°）のフィルタ、およびラプラシアンを表している。
【００５２】
２次導関数Ｇ２（０°）、２次導関数Ｇ２（６０°）、および２次導関数Ｇ２（１２０°）のフィルタを基底として用いれば、式（１５）に示したように、任意の方向θの２次導関数Ｇ２（θ）のフィルタを得ることができる。
【００５３】
さらに、図中、下側に並ぶ画像は、左から順番にガウス幅σ＝１である場合における３次導関数Ｇ３（０°）、３次導関数Ｇ３（４５°）、３次導関数Ｇ３（９０°）、および３次導関数Ｇ３（１３５°）のフィルタを表している。これらの４つの３次導関数のフィルタを基底として用いれば、式（１７）に示したように、任意の方向θの３次導関数Ｇ３（θ）のフィルタを得ることができる。
【００５４】
また、ガウス関数Ｇにおけるガウス幅σを変化させると、各ｎ次導関数Ｇｎ（θ）のフィルタを得るための基底フィルタの大きさも変化する。
【００５５】
例えば、ガウス幅σを２とすると、各基底フィルタは図２に示すようになる。すなわち、図２において、１番上の列の画像は、左から順番にガウス幅σ＝２である場合における１次導関数Ｇ１（０°）および１次導関数Ｇ１（９０°）のフィルタを表している。
【００５６】
また、図中、中央に並ぶ画像は、左から順番にガウス幅σ＝２である場合における２次導関数Ｇ２（０°）のフィルタ、２次導関数Ｇ２（６０°）のフィルタ、２次導関数Ｇ２（１２０°）のフィルタ、およびラプラシアンを表している。
【００５７】
同様に、図中、下側に並ぶ画像は、左から順番にガウス幅σ＝２である場合における３次導関数Ｇ３（０°）、３次導関数Ｇ３（４５°）、３次導関数Ｇ３（９０°）、および３次導関数Ｇ３（１３５°）のフィルタを表している。
【００５８】
さらに例えば、ガウス幅σを４とすると、各基底フィルタは図３に示すようになる。すなわち、図３において、１番上の列の画像は、左から順番にガウス幅σ＝４である場合における１次導関数Ｇ１（０°）および１次導関数Ｇ１（９０°）のフィルタを表している。
【００５９】
また、図中、中央に並ぶ画像は、左から順番にガウス幅σ＝４である場合における２次導関数Ｇ２（０°）のフィルタ、２次導関数Ｇ２（６０°）のフィルタ、２次導関数Ｇ２（１２０°）のフィルタ、およびラプラシアンを表している。
【００６０】
同様に、図中、下側に並ぶ画像は、左から順番にガウス幅σ＝４である場合における３次導関数Ｇ３（０°）、３次導関数Ｇ３（４５°）、３次導関数Ｇ３（９０°）、および３次導関数Ｇ３（１３５°）のフィルタを表している。
【００６１】
このような各導関数Ｇｎ（θ）の３次元形状は、図４に示すようになる。なお、図４において、図中、左上には１次導関数Ｇ１（θ）の形状が示されており、右上には２次導関数Ｇ２（θ）の形状が示されている。また、図中、左下には３次導関数Ｇ３（θ）の形状が示されており、右下にはラプラシアンの形状が示されている。
【００６２】
例えば図４では、図中、右斜め上方向はｘ方向に対応し、左斜め上方向はｙ方向に対応している。また、図中、縦方向は各導関数の値（出力値）を示しており、各位置における導関数の値が、その位置と対応する位置にある、フィルタ処理される画像の画素に乗算されるフィルタ係数となる。
【００６３】
以上のように図１乃至図３に示した基底フィルタを用いれば、ガウス関数Ｇの任意の方向のｎ次導関数Ｇｎ（θ）を用いたフィルタの出力を、少ない計算で効率的に求めることができる。しかしながら、これらの基底フィルタを用いた演算では、２次元の畳み込みが行なわれるため、それなりに時間がかかってしまう。
【００６４】
これに対して、ガウス関数の導関数をｘ方向およびｙ方向に分離することができれば、フィルタ処理の演算として、１次元の畳み込み演算を２度行えばよいことになり、フィルタ処理の演算時間をより短くすることができるようになる。
【００６５】
例えば、次式（１９）に示すｘｙ座標系上の２次元のガウス関数Ｇσ（ｘ，ｙ）を考えると、このガウス関数Ｇσ（ｘ，ｙ）はｘ方向とｙ方向とに分離することができる。なお、式（１９）において、σはガウス幅である。
【００６６】
【数８】
2012089076.tif 000010
【００６７】
このガウス関数Ｇσ（ｘ，ｙ）は、変数ｙを含まず変数ｘのみを含む項と、変数ｘを含まず変数ｙのみを含む項との積で表されており、ガウス関数Ｇσ（ｘ，ｙ）をｘ方向とｙ方向に分離できることが分かる。一般にｘ方向とｙ方向の２方向に分離可能なフィルタは、ｘｙSeparableなフィルタと呼ばれ、Hij＝Fi×Gjのようなかたちで表現される。
【００６８】
このようにフィルタが２方向に分離可能であることは、２次元のカーネルで畳み込んだ演算結果と、１次元のカーネルでｘ方向とｙ方向に畳み込んだ演算結果が同じであることを示している。ｘ方向とｙ方向に分離可能なフィルタは、計算時間の大幅な短縮と、カーネル用のメモリの削減という大きな利点を有している。
【００６９】
ところで、上述したガウス関数Ｇのｎ次導関数Ｇｎ（θ）のフィルタをｘ方向とｙ方向に分離することを考えた場合、図１乃至図３に示したフィルタを基底フィルタとすると、ｎ次導関数Ｇｎ（θ）のフィルタをｘ方向とｙ方向に分離できないことが分かる。
【００７０】
例えば、図１に示した２次導関数Ｇ２（６０°）、２次導関数Ｇ２（１２０°）、３次導関数Ｇ３（４５°）、および３次導関数Ｇ３（１３５°）のフィルタは、ｘ方向とｙ方向に分離することができない。
【００７１】
これに対して、例えば図５に示すように、ガウス関数Ｇをｘ方向またはｙ方向に微分して得られる導関数のフィルタを基底フィルタとして用いれば、ｘ方向とｙ方向に分離可能な、任意方向θのｎ次導関数Ｇｎ（θ）のフィルタを得ることができる。
【００７２】
図５において、左側１番上の列の画像は、左から順番にガウス関数Ｇのｘ方向の１次導関数Ｇｘ、およびｙ方向の１次導関数Ｇｙのフィルタを表している。
【００７３】
より詳細には、これらの画像はフィルタのカーネルであり、画像上の各画素の画素値が、その画素に対応する位置にある、フィルタ処理される画像の画素に乗算されるフィルタ係数である。なお、フィルタの画像における図中、横方向および縦方向は、ｘｙ座標系のｘ方向およびｙ方向に対応している。また、１次導関数Ｇｘ、および１次導関数Ｇｙは、それぞれ上述した式（２）および式（３）で表される関数である。
【００７４】
１次導関数Ｇｘと１次導関数Ｇｙを用いたフィルタを基底フィルタとし、次式（２０）に示すように、これらの基底フィルタの出力値の線形結合を求めれば、ガウス関数Ｇの任意の方向θの１次導関数Ｇ１（θ）を用いたフィルタを得ることができる。このフィルタは、ｘ方向とｙ方向に分離可能なものである。
【００７５】
【数９】
2012089076.tif 000011
【００７６】
同様に、図５の左側の上から２番目の列の画像は、左から順番にガウス関数Ｇのｘ方向の２次導関数Ｇｘｘ、ｘｙ方向の２次導関数Ｇｘｙ、およびｙ方向の２次導関数Ｇｙｙのフィルタを表している。２次導関数Ｇｘｘ、２次導関数Ｇｙｙ、および２次導関数Ｇｘｙは、それぞれ上述した式（４）乃至式（６）で表される関数である。
【００７７】
これらの２次導関数Ｇｘｘ、２次導関数Ｇｙｙ、および２次導関数Ｇｘｙを用いたフィルタを基底とし、次式（２１）に示すように、これらの基底フィルタの出力値の線形結合を求めれば、ガウス関数Ｇの任意の方向θの２次導関数Ｇ２（θ）を用いたフィルタを得ることができる。このフィルタは、ｘ方向とｙ方向に分離可能なものである。
【００７８】
【数１０】
2012089076.tif 000012
【００７９】
また、図５の左側の上から３番目の列の画像は、左から順番にガウス関数Ｇのｘ方向の３次導関数Ｇｘｘｘ、３次導関数Ｇｘｘｙ、３次導関数Ｇｘｙｙ、およびｙ方向の３次導関数Ｇｙｙｙのフィルタを表している。
【００８０】
ここで、３次導関数Ｇｘｘｘおよび３次導関数Ｇｙｙｙは、上述した式（７）および式（８）で表される関数である。また、３次導関数Ｇｘｘｙは、２次導関数Ｇｘｘをさらにｙ方向に微分して得られる導関数であり、３次導関数Ｇｘｙｙは、２次導関数Ｇｘｙをさらにｙ方向に微分して得られる導関数である。
【００８１】
これらの３次導関数Ｇｘｘｘ、３次導関数Ｇｘｘｙ、３次導関数Ｇｘｙｙ、および３次導関数Ｇｙｙｙを用いたフィルタを基底とし、次式（２２）に示すように、これらの基底フィルタの出力値の線形結合を求めれば、ガウス関数Ｇの任意の方向θの３次導関数Ｇ３（θ）を用いたフィルタを得ることができる。このフィルタも、ｘ方向とｙ方向に分離可能なものである。
【００８２】
【数１１】
2012089076.tif 000013
【００８３】
さらに、図５の左側の１番下の列の画像は、左から順番にガウス関数Ｇのｘ方向の４次導関数Ｇｘｘｘｘ、４次導関数Ｇｘｘｘｙ、４次導関数Ｇｘｘｙｙ、４次導関数Ｇｘｙｙｙ、およびｙ方向の４次導関数Ｇｙｙｙｙのフィルタを表している。
【００８４】
ここで、４次導関数Ｇｘｘｘｙは、３次導関数Ｇｘｘｘをさらにｙ方向に微分して得られる導関数であり、４次導関数Ｇｘｘｙｙは、３次導関数Ｇｘｘｙをさらにｙ方向に微分して得られる導関数である。また、４次導関数Ｇｘｙｙｙは、３次導関数Ｇｘｙｙをさらにｙ方向に微分して得られる導関数である。
【００８５】
これらの５つの４次導関数を用いたフィルタを基底とし、次式（２３）に示すように、これらの基底フィルタの出力値の線形結合を求めれば、ガウス関数Ｇの任意の方向θの４次導関数Ｇ４（θ）を用いたフィルタを得ることができる。このフィルタも、ｘ方向とｙ方向に分離可能なものである。
【００８６】
【数１２】
2012089076.tif 000014
【００８７】
なお、図５に示される各フィルタは、より詳細には、２つの１次元のフィルタのセットを２次元のフィルタで表現したものである。例えば、３次導関数Ｇｘｘｙのフィルタによる演算は、ｘ方向に２次導関数Ｇｘｘのフィルタでフィルタ処理した後、ｙ方向に１次導関数Ｇｙのフィルタでフィルタ処理することに対応する。
【００８８】
このように図５における場合においても、図１における場合と同様にｎ次導関数Ｇｎ（θ）を用いたガウシアンステアラブルフィルタを得るには、（ｎ＋１）個の基底フィルタがあればよい。
【００８９】
また、図５の右側には、ガウス関数Ｇのガウス幅σを変化させたときの基底フィルタ等が示されている。例えば、矢印Ｗ１１に示される画像は、ガウス幅σが異なる２つのガウス分布を示す画像である。
【００９０】
また、矢印Ｗ１２に示される画像には、ガウス幅σが異なる場合における導関数Ｇｘと導関数Ｇｙのフィルタのセットが、図中、上下に並べられて示されている。同様に、矢印Ｗ１３に示される画像には、ガウス幅σが異なる場合における導関数Ｇｘｘ、導関数Ｇｘｙ、および導関数Ｇｙｙのフィルタのセットが、図中、上下に並べられて示されている。さらに、矢印Ｗ１４に示される画像には、ガウス幅σが異なる場合における導関数Ｇｘｘｘ、導関数Ｇｘｘｙ、導関数Ｇｘｙｙ、および導関数Ｇｙｙｙのフィルタのセットが、図中、上下に並べられて示されている。
【００９１】
以上のように、ｘ方向およびｙ方向に分離可能な式（２０）乃至式（２３）の各導関数のフィルタを用いれば、より簡単かつ迅速に画像に対するフィルタ処理の演算を行なうことができる。
【００９２】
ここで、図５に示した各基底フィルタを、より演算量の少ない矩形フィルタで近似することができれば、フィルタ処理の演算や、その演算時に必要となるメモリの記録容量をさらに低減させることができる。
【００９３】
そこで、本発明を適用した特徴量抽出処理においては、図６に示すように、図５に示した各基底フィルタが、矩形フィルタであるレクタングルフィルタで近似されて、これらのレクタングルフィルタを用いたフィルタ処理により、画像から特徴量が抽出される。
【００９４】
すなわち、図６の左側の１番上の列には、左から順番にガウス関数Ｇの１次導関数Ｇｘ、および１次導関数Ｇｙのフィルタが並べられている。本発明を適用した特徴量抽出処理では、これらの１次導関数Ｇｘ、および１次導関数Ｇｙのフィルタは、図６中、右側の１番上の列に並べられているフィルタＲ１ｘおよびフィルタＲ１ｙに置き換えられる。
【００９５】
ここで、フィルタＲ１ｘのカーネルには、フィルタ係数としての画素値が「１」である画素からなる矩形の領域Ｄ１と、画素値が「−１」である画素からなる矩形の領域Ｄ２とがあり、カーネルにおけるその他の領域の画素の画素値は「０」である。
【００９６】
例えば、１次導関数Ｇｘのフィルタ（以下、適宜、フィルタＧｘと称する）のカーネルと、フィルタＲ１ｘのカーネルとが同じ大きさであり、フィルタＧｘのカーネルを構成する画素の画素値の取り得る値の範囲が−１から１であるとする。
【００９７】
この場合、フィルタＧｘのカーネル上の画素のうち、画素値が「１／２」以上である画素からなる矩形の領域Ｄ１’（図示せず）が特定され、領域Ｄ１’と同じ位置にある、フィルタＲ１ｘのカーネル上の領域が、画素値が「１」である画素からなる領域Ｄ１とされる。
【００９８】
なお、領域Ｄ１’とされる領域は、フィルタＧｘの画素値の最大値の半分以上の値を画素値としてもつ画素の領域に限らず、特定の値以上の画素値をもつ画素からなる領域とされればよい。また、以下、矩形フィルタのカーネル上において、領域Ｄ１のように、画素値が「１」である画素からなる矩形領域を、白色領域とも称することとする。
【００９９】
さらに、フィルタＧｘのカーネル上の画素のうち、画素値が「−１／２」以下である画素からなる矩形の領域Ｄ２’（図示せず）が特定され、領域Ｄ２’と同じ位置にあるフィルタＲ１ｘのカーネル上の領域が、画素値が「−１」である画素からなる領域Ｄ２とされる。
【０１００】
なお、領域Ｄ２’とされる領域は、フィルタＧｘの画素値の最小値の半分以下の値を画素値としてもつ画素の領域に限らず、特定の値以下の画素値をもつ画素からなる領域とされればよい。また、以下、矩形フィルタのカーネル上において、領域Ｄ２のように、画素値が「−１」である画素からなる矩形領域を、黒色領域とも称することとする。
【０１０１】
同様に、フィルタＲ１ｙのカーネルにも黒色領域である領域Ｄ３と、白色領域である領域Ｄ４とがあり、カーネルにおけるその他の領域の画素の画素値は「０」とされている。このフィルタＲ１ｙは、導関数Ｇｙのフィルタに対して、フィルタＲ１ｘにおける場合と同様の近似を行なうことで得られた矩形フィルタである。
【０１０２】
このように、本発明を適用した特徴量抽出処理では、上述した式（２０）における導関数Ｇｘおよび導関数Ｇｙのフィルタが、近似により得られたフィルタＲ１ｘおよびフィルタＲ１ｙに置き換えられる。
【０１０３】
すなわち、次式（２４）に示すように、フィルタＲ１ｘとフィルタＲ１ｙが基底フィルタとされ、これらの基底フィルタの出力値の線形結合により得られる関数が、ガウス関数Ｇの任意の方向θの１次導関数Ｆ１（θ）とされる。この１次導関数Ｆ１（θ）のフィルタは、矩形フィルタを基底として線形結合することにより近似的に得られた、ガウシアンステアラブルフィルタである。
【０１０４】
【数１３】
2012089076.tif 000015
【０１０５】
具体的には、画像上の注目画素に対するフィルタ処理が行われる場合、画像上の注目画素を含むカーネルと同じ大きさの領域内の各画素の画素値に対して、その画素と同じ位置にあるフィルタＲ１ｘの画素の画素値（フィルタ係数）が乗算される。そして、フィルタ係数が乗算された各画素値の和が、フィルタＲ１ｘによるフィルタ処理の出力値とされる。
【０１０６】
さらに、フィルタＲ１ｘと同様の処理が行われてフィルタＲ１ｙによるフィルタ処理の出力値が求められ、その出力値にsinθが乗算された値と、フィルタＲ１ｘによるフィルタ処理の出力値にcosθが乗算された値との和が、注目画素の新たな画素値とされる。つまり、得られた和の値が方向θの１次導関数Ｆ１（θ）のフィルタの出力値とされる。
【０１０７】
また、図６の左側の上から２番目の列には、左から順番にガウス関数Ｇの２次導関数Ｇｘｘ、２次導関数Ｇｘｙ、および２次導関数Ｇｙｙのフィルタが並べられている。本発明を適用した特徴量抽出処理では、これらの２次導関数Ｇｘｘ、２次導関数Ｇｘｙ、および２次導関数Ｇｙｙのフィルタは、図６中、右側の上から２番目の列に並べられているフィルタＲ２ｘｘ、フィルタＲ２ｘｙ、およびフィルタＲ２ｙｙに置き換えられる。
【０１０８】
フィルタＲ２ｘｘのカーネルには、白色領域である領域Ｄ５、黒色領域である領域Ｄ６、および白色領域である領域Ｄ７が並べられて設けられている。また、フィルタＲ２ｘｙのカーネルには、黒色領域である領域Ｄ８、白色領域である領域Ｄ９および領域Ｄ１０、並びに黒色領域である領域Ｄ１１が設けられている。さらに、フィルタＲ２ｙｙのカーネルには、白色領域である領域Ｄ１２、黒色領域である領域Ｄ１３、および白色領域である領域Ｄ１４が並べられて設けられている。
【０１０９】
これらのフィルタＲ２ｘｘ、フィルタＲ２ｘｙ、およびフィルタＲ２ｙｙは、導関数Ｇｘｘ、導関数Ｇｘｙ、および導関数Ｇｙｙに対して、フィルタＲ１ｘにおける場合と同様の近似を行なうことで得られた矩形フィルタである。なお、これらのフィルタのカーネル上において、白色領域でも黒色領域でもない領域の画素の画素値は「０」とされる。
【０１１０】
本発明を適用した特徴量抽出処理では、上述した式（２１）における導関数Ｇｘｘ乃至導関数Ｇｙｙのフィルタが、近似により得られたフィルタＲ２ｘｘ乃至フィルタＲ２ｙｙに置き換えられる。
【０１１１】
すなわち、次式（２５）に示すように、フィルタＲ２ｘｘ、フィルタＲ２ｘｙ、およびフィルタＲ２ｙｙが基底フィルタとされ、これらの基底フィルタの出力値の線形結合により得られる関数が、ガウス関数Ｇの任意の方向θの２次導関数Ｆ２（θ）とされる。この２次導関数Ｆ２（θ）のフィルタは、矩形フィルタを基底として線形結合することにより近似的に得られた、ガウシアンステアラブルフィルタである。
【０１１２】
【数１４】
2012089076.tif 000016
【０１１３】
さらに、図６の左側の１番下の列には、左から順番にガウス関数Ｇの３次導関数Ｇｘｘｘ、３次導関数Ｇｘｘｙ、３次導関数Ｇｘｙｙ、および３次導関数Ｇｙｙｙのフィルタが並べられている。本発明を適用した特徴量抽出処理では、これらの３次導関数Ｇｘｘｘ乃至３次導関数Ｇｙｙｙのフィルタは、図６中、右側の１番下の列に並べられているフィルタＲ３ｘｘｘ、フィルタＲ３ｘｘｙ、フィルタＲ３ｘｙｙ、およびフィルタＲ３ｙｙｙに置き換えられる。
【０１１４】
フィルタＲ３ｘｘｘのカーネルには、白色領域である領域Ｄ１５、黒色領域である領域Ｄ１６、白色領域である領域Ｄ１７、および黒色領域である領域Ｄ１８が並べられて設けられている。また、フィルタＲ３ｘｘｙのカーネルには、黒色領域である領域Ｄ１９、白色領域である領域Ｄ２０、黒色領域である領域Ｄ２１、白色領域である領域Ｄ２２、黒色領域である領域Ｄ２３、および白色領域である領域Ｄ２４が設けられている。
【０１１５】
フィルタＲ３ｘｙｙのカーネルには、白色領域である領域Ｄ２５、黒色領域である領域Ｄ２６、白色領域である領域Ｄ２７、黒色領域である領域Ｄ２８、白色領域である領域Ｄ２９、および黒色領域である領域Ｄ３０が並べられて設けられている。さらに、フィルタＲ３ｙｙｙのカーネルには、黒色領域である領域Ｄ３１、白色領域である領域Ｄ３２、黒色領域である領域Ｄ３３、および白色領域である領域Ｄ３４が設けられている。
【０１１６】
これらのフィルタＲ３ｘｘｘ、フィルタＲ３ｘｘｙ、フィルタＲ３ｘｙｙ、およびフィルタＲ３ｙｙｙは、導関数Ｇｘｘｘ、導関数Ｇｘｘｙ、導関数Ｇｘｙｙ、および導関数Ｇｙｙｙに対し、フィルタＲ１ｘにおける場合と同様の近似を行なうことで得られた矩形フィルタである。なお、これらのフィルタのカーネル上において、白色領域でも黒色領域でもない領域の画素の画素値は「０」とされる。
【０１１７】
本発明を適用した特徴量抽出処理では、上述した式（２２）における導関数Ｇｘｘｘ乃至導関数Ｇｙｙｙのフィルタが、近似により得られたフィルタＲ３ｘｘｘ乃至フィルタＲ３ｙｙｙに置き換えられる。
【０１１８】
すなわち、次式（２６）に示すように、フィルタＲ３ｘｘｘ、フィルタＲ３ｘｘｙ、フィルタＲ３ｘｙｙ、およびフィルタＲ３ｙｙｙが基底フィルタとされ、これらの基底フィルタの出力値の線形結合により得られる関数が、ガウス関数Ｇの任意の方向θの３次導関数Ｆ３（θ）とされる。この３次導関数Ｆ３（θ）のフィルタは、矩形フィルタを基底として線形結合することにより近似的に得られた、ガウシアンステアラブルフィルタである。
【０１１９】
【数１５】
2012089076.tif 000017
【０１２０】
以上のように、矩形フィルタ（Rectangle Steerable Filters）を基底として近似的に求められた、ガウス関数Ｇのｎ次導関数Ｆｎ（θ）のフィルタを用いれば、画像から所望の特徴の特徴量をより簡単かつ迅速に抽出することができる。
【０１２１】
しかも、ｎ次導関数Ｆｎ（θ）のフィルタの基底フィルタは矩形フィルタであるので、基底フィルタを用いたフィルタ処理に、インテグラルイメージを用いると、さらにフィルタ処理の演算を迅速に行なうことができるようになる。
【０１２２】
例えば、図７の左側に示す画像Ｐ１１に対して、１次導関数Ｆ１（θ）のフィルタを用いたフィルタ処理を行うために、画像Ｐ１１に対して、フィルタＲ１ｘによりフィルタ処理を施す場合を考える。
【０１２３】
そのような場合、まず画像Ｐ１１のインテグラルイメージが生成される。インテグラルイメージは、画像Ｐ１１と同じ大きさの画像であり、インテグラルイメージ上の画素の画素値は、その画素と同じ位置にある画像Ｐ１１上の画素と、画像Ｐ１１の特定の一頂点とを頂点として有する矩形領域内の画素の画素値の総和とされる。
【０１２４】
例えば画像Ｐ１１上の画素Ｑ１１に注目した場合、画像Ｐ１１の図中、左上の頂点と、画素Ｑ１１とを頂点として有する領域Ｄ５１について、領域Ｄ５１内にある各画素の画素値の総和が求められる。そして、求められた総和の値が、インテグラルイメージにおける、画素Ｑ１１と同じ位置の画素の画素値とされる。
【０１２５】
インテグラルイメージが生成されると、次にインテグラルイメージの画素の画素値が参照されて、フィルタＲ１ｘによるフィルタ処理の演算が行なわれる。
【０１２６】
例えば、画像Ｐ１１上において、画素Ｑ１１を中心とするフィルタＲ１ｘのカーネルと同じ大きさの領域を領域ＦＤ（図示せず）とする。この場合、実質的には以下の処理が行われる。
【０１２７】
すなわち、領域ＦＤとフィルタＲ１ｘのカーネルとを重ねたときに、領域ＦＤにおいて領域Ｄ１と同じ位置にある領域ＦＤａ内の画素の画素値に、フィルタ係数「１」が乗算されて、それらの画素値の和Ｗａが算出される。また、領域ＦＤにおいて領域Ｄ２と同じ位置にある領域ＦＤｂ内の画素の画素値に、フィルタ係数「−１」が乗算されて、それらの画素値の和Ｗｂが算出され、これらの和Ｗａと和Ｗｂの和が、フィルタＲ１ｘによるフィルタ処理後の画素Ｑ１１の画素値とされる。
【０１２８】
ここで、本発明を適用した特徴量抽出処理では、和Ｗａと和Ｗｂの絶対値が、インテグラルイメージが用いられて算出される。
【０１２９】
例えば、図中、右側に示すように画像Ｐ１１上の領域ＦＤａが、点ＰＡ乃至点ＰＤを頂点とする領域であるとすると、和Ｗａの絶対値は、画像Ｐ１１上の領域ＦＤａ内の画素の画素値の総和である。一方、画像Ｐ１１の点ＰＤと同じ位置にあるインテグラルイメージの画素の画素値は、画像Ｐ１１の図中、左上の頂点と点ＰＤとを頂点として有する矩形領域の画素の画素値の総和である。
【０１３０】
したがって、画像Ｐ１１上の点ＰＡ乃至点ＰＤと同じ位置にある、インテグラルイメージの画素の画素値を画素値ＩＡ乃至画素値ＩＤとすると、画素値ＩＤと画素値ＩＡの和から、画素値ＩＢと画素値ＩＣの和を減算することにより、和Ｗａの絶対値が求まる。同様にして、インテグラルイメージの４点（画素）を参照すれば和Ｗｂの絶対値も求まり、これらの和Ｗａの絶対値と和Ｗｂの絶対値の差分から、フィルタＲ１ｘによるフィルタ処理後の画素Ｑ１１の画素値が求まることになる。
【０１３１】
このように、インテグラルイメージを利用して矩形フィルタの演算を行なえば、フィルタ処理の演算をさらに迅速に行なうことができるようになる。
【０１３２】
以上において説明した、本発明を適用した特徴量抽出処理と、従来の他のフィルタを用いた特徴量抽出処理とを比較すると、図８に示すようになる。
【０１３３】
図８では、従来のフィルタとしてガボアフィルタ（Gabor Filters）と、ステアラブルフィルタ（Steerable Filters）が例として挙げられて、本発明を適用したｎ次導関数Ｆｎ（θ）のフィルタ（Rectangle Steerable Filters）と比較されている。
【０１３４】
まず、各フィルタを構成する基底フィルタの数として、ガボアフィルタは２次元のフィルタが、（フィルタの方向の数×周波数の数）個だけ必要であり、ステアラブルフィルタは、１次元のフィルタが、（２方向×基底数）個だけ必要となる。これに対して、ｎ次導関数Ｆｎ（θ）のフィルタでは、各次数の導関数Ｆｎ（θ）について、基底フィルタの白色領域と黒色領域の位置および大きさを特定する矩形パラメータがあればよく、フィルタを記録しておくメモリの必要な記録容量が少なくて済む。
【０１３５】
また、フィルタ処理の演算中にメモリに記録させておくデータとして、ガボアフィルタでは、２次元の各基底フィルタを記録しておく必要がある。ステアラブルフィルタではｘ方向およびｙ方向の１次元の基底フィルタのそれぞれについて、それらの基底フィルタによるフィルタ処理の演算結果を記録しておく必要がある。これに対して、ｎ次導関数Ｆｎ（θ）のフィルタでは、インテグラルイメージだけを記録しておけばよい。
【０１３６】
さらに、ガボアフィルタを用いた場合、フィルタ処理時には２次元の畳み込み演算が行なわれるため、その演算速度は遅くなってしまう。また、ステアラブルフィルタを用いたフィルタ処理では、１次元の畳み込み演算が２度行なわれるので、ガボアフィルタを用いる場合よりは演算速度が速くなる。これに対して、ｎ次導関数Ｆｎ（θ）のフィルタを用いた場合には、インテグラルイメージ上の４画素を参照するだけであるので、フィルタ処理の演算を高速に行なうことができる。
【０１３７】
〈第１の実施の形態〉
［人識別システムの構成例］
次に、上述したｎ次導関数Ｆｎ（θ）のフィルタを利用した特徴量抽出処理を、画像から所望の対象物体を検出する人識別システムに適用した実施の形態について説明する。
【０１３８】
図９は、本発明を適用した人識別システムの一実施の形態の構成例を示す図である。この人識別システムは、学習装置１１、識別器記録部１２、および認識装置１３からなり、入力された画像における、対象物体としての人間の画像のある領域を認識させるものである。
【０１３９】
学習装置１１は、入力された学習画像に基づいて、認識装置１３において画像上における対象物体の有無を識別する処理を行うときに用いられる、識別用特徴量および統合識別器を生成し、識別器記録部１２に記録させる。認識装置１３は、識別器記録部１２に記録されている識別用特徴量および統合識別器を用いて、入力された入力画像に対象物体である人の画像が存在するか否かを識別し、その識別結果を出力する。
【０１４０】
学習装置１１は、服装特徴点抽出部２１、服装特徴量計算部２２、服装識別器生成部２３、輪郭特徴点抽出部２４、輪郭特徴量計算部２５、輪郭識別器生成部２６、および統合識別器生成部２７から構成される。
【０１４１】
服装特徴点抽出部２１は、入力された学習画像から、その学習画像の画素のいくつかを服装識別器を生成するときに用いられる服装特徴点として抽出し、抽出した服装特徴点と学習画像とを服装特徴量計算部２２に供給する。ここで、服装識別器とは、統計学習により生成された、複数の弱識別器からなる強い識別器であり、人の服装の特徴を利用して、入力された画像中に人の画像の領域が存在するか否かを識別するときに用いられる。
【０１４２】
服装特徴量計算部２２は、服装特徴点抽出部２１からの各服装特徴点について、その服装特徴点と、他の服装特徴点とを１つのペアとするペアリングを行う。また、服装特徴量計算部２２は、服装特徴点抽出部２１からの学習画像に基づいて、服装特徴点のペアごとに、任意の２つの領域のテクスチャの距離を示す服装特徴量を計算し、求められた服装特徴量と学習画像とを服装識別器生成部２３に供給する。
【０１４３】
服装識別器生成部２３は、服装特徴量計算部２２から供給された学習画像および服装特徴量に基づいて、例えばAdaboostによる統計学習処理を行い、対象物体である人を認識する服装識別器を生成する。また、服装識別器生成部２３は、生成した服装識別器を統合識別器生成部２７に供給する。
【０１４４】
輪郭特徴点抽出部２４は、入力された学習画像から、その学習画像の画素のいくつかを輪郭識別器を生成するときに用いられる輪郭特徴点として抽出し、抽出した輪郭特徴点と学習画像とを輪郭特徴量計算部２５に供給する。ここで、輪郭識別器とは、統計学習により生成された、複数の弱識別器からなる強い識別器であり、人の輪郭を利用して、入力された画像中に人の画像の領域が存在するか否かを識別するときに用いられる。
【０１４５】
輪郭特徴量計算部２５は、輪郭特徴点抽出部２４からの学習画像に基づいて、上述したｎ次導関数Ｆｎ（θ）のフィルタを用いたフィルタ処理により、輪郭特徴点ごとに、抽出された輪郭を示す輪郭特徴量を計算し、求められた輪郭特徴量と学習画像とを輪郭識別器生成部２６に供給する。輪郭識別器生成部２６は、輪郭特徴量計算部２５から供給された学習画像および輪郭特徴量に基づいて、例えばAdaboostによる統計学習処理を行い、対象物体である人を認識する輪郭識別器を生成する。また、輪郭識別器生成部２６は、生成した輪郭識別器を統合識別器生成部２７に供給する。
【０１４６】
統合識別器生成部２７は、服装識別器生成部２３からの服装識別器と、輪郭識別器生成部２６からの輪郭識別器とを統合して統合識別器を生成し、生成した統合識別器を識別器記録部１２に供給して記録させる。また、統合識別器生成部２７は、統合識別器を用いて対象物体の認識を行うときに用いられる服装特徴点のペアの服装特徴量、および輪郭特徴点の輪郭特徴量を、識別用特徴量として識別器記録部１２に供給し、記録させる。
【０１４７】
また、認識装置１３は、服装特徴点抽出部３１、服装特徴量計算部３２、輪郭特徴点抽出部３３、輪郭特徴量計算部３４、識別計算部３５、および識別結果出力部３６から構成される。なお、認識装置１３の服装特徴点抽出部３１乃至輪郭特徴量計算部３４のそれぞれは、対象物体を認識しようとする入力画像に対して、学習装置１１の服装特徴点抽出部２１、服装特徴量計算部２２、輪郭特徴点抽出部２４、および輪郭特徴量計算部２５のそれぞれと同様の処理を行うものであるので、その説明は省略する。
【０１４８】
識別計算部３５は、識別器記録部１２に記録されている識別用特徴量および統合識別器を読み出す。また、識別計算部３５は、服装特徴量計算部３２からの服装特徴量、および輪郭特徴量計算部３４からの輪郭特徴量のうちの識別用特徴量に対応するものを、読み出した統合識別器に代入して演算を行う。識別結果出力部３６は、識別計算部３５における演算結果を取得し、その演算結果に基づいて、対象物体が入力画像で認識されたか否かの識別結果を出力する。
【０１４９】
［服装識別器生成部の構成例］
次に、図１０を参照して、図９の服装識別器生成部２３のより詳細な構成例について説明する。図１０は、服装識別器生成部２３のより詳細な構成例を示す図である。
【０１５０】
服装識別器生成部２３は、サンプリング部６１、重み設定部６２、並び替え部６３、識別器設定部６４、識別器選択部６５、および重み更新部６６から構成される。
【０１５１】
サンプリング部６１は、重み設定部６２により設定される学習画像単位の重みに応じて、服装特徴点のペアごとに、複数の学習画像のそれぞれの同じ位置の服装特徴点のペアの服装特徴量から、Ｍ個の服装特徴量をサンプリングして並び替え部６３に供給する。
【０１５２】
並び替え部６３は、各服装特徴点のペアについて、サンプリングされたＭ個の服装特徴量を昇べきの順、または降べきの順に並び替えて識別器設定部６４に供給する。
【０１５３】
識別器設定部６４は、服装特徴量が抽出された学習画像に認識しようとする対象物体が含まれているか否かを示す正誤情報に基づいて、昇べきの順、または降べきの順に並び替えられた各ペアの服装特徴量のそれぞれについて、閾値を変化させながら誤り率計算部６４ａを制御して、誤り率を計算させ、誤り率が最小となるように閾値を設定する（この閾値が、弱識別器として設定される）。さらに、識別器設定部６４は、弱識別器ごとの誤り率を識別器選択部６５に供給する。
【０１５４】
なお、より詳細には、学習画像には、その学習画像に対象物体が含まれているか否かを示す正誤情報（ラベル）が付加されており、識別器設定部６４は、服装特徴量計算部２２から供給された学習画像に付加されている正誤情報に基づいて、弱識別器の設定を行う。
【０１５５】
識別器選択部６５は、弱識別器のうち、誤り率が最小となる弱識別器を選択して、弱識別器からなる服装識別器を更新し、最終的な服装識別器および各弱識別器に対応する服装特徴量を統合識別器生成部２７に供給する。さらに、識別器選択部６５は、選択した弱識別器の誤り率に基づいて信頼度を計算し、重み更新部６６に供給する。
【０１５６】
重み更新部６６は、供給された信頼度に基づいて学習画像ごとの重みを再計算すると共に、重みを正規化して更新し、更新結果を重み設定部６２に供給する。重み設定部１０２は、重み更新部６６より供給されてくる重みの更新結果に基づいて、学習画像単位の重みを設定する。
【０１５７】
なお、図９の輪郭識別器生成部２６は、図１０に示した服装識別器生成部２３と同様の構成とされるため、その図示および説明は省略する。
【０１５８】
［輪郭特徴量計算部の構成例］
また、図１１は、図９の輪郭特徴量計算部２５のより詳細な構成例を示す図である。
【０１５９】
輪郭特徴量計算部２５は、フィルタ記録部９１、インテグラルイメージ生成部９２、インテグラルイメージ記録部９３、主方向計算部９４、１次フィルタ処理部９５、２次フィルタ処理部９６、３次フィルタ処理部９７、および特徴量生成部９８から構成される。
【０１６０】
フィルタ記録部９１は、上述したｎ次導関数Ｆｎ（θ）を用いたフィルタを記録している。より詳細には、フィルタ記録部９１は、１次導関数Ｆ１（θ）、２次導関数Ｆ２（θ）、および３次導関数Ｆ３（θ）の各基底フィルタのそれぞれにおける、白色領域と黒色領域を特定する矩形パラメータを記録している。
【０１６１】
インテグラルイメージ生成部９２は、輪郭特徴点抽出部２４から供給された学習画像のインテグラルイメージを生成し、インテグラルイメージ記録部９３に供給して記録させる。インテグラルイメージ記録部９３は、記録しているインテグラルイメージを、適宜、主方向計算部９４乃至３次フィルタ処理部９７に供給する。
【０１６２】
主方向計算部９４は、輪郭特徴点抽出部２４から供給された輪郭特徴点ごとに、輪郭特徴点における主方向α（＝atan(F1(90°)/F1(0°))）を求め、１次フィルタ処理部９５乃至３次フィルタ処理部９７に供給する。
【０１６３】
すなわち、主方向計算部９４は、フィルタ記録部９１に記録されている１次導関数Ｆ１（θ）のフィルタを用いて、インテグラルイメージ記録部９３に記録されているインテグラルイメージを参照し、輪郭特徴点に対して１次導関数Ｆ１（０°）のフィルタを用いたフィルタ処理を行う。同様にして、主方向計算部９４は、輪郭特徴点に対して１次導関数Ｆ１（９０°）のフィルタを用いたフィルタ処理を行い、それらのフィルタ処理の結果の比を求め、その比のアークタンジェントを求めることにより、主方向αを算出する。
【０１６４】
１次フィルタ処理部９５は、輪郭特徴点抽出部２４から供給された輪郭特徴点ごとに、輪郭特徴点に対して１次導関数Ｆ１（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部９８に供給する。
【０１６５】
より詳細には、図１２に示すように、輪郭特徴点の画素が注目画素Ｊ１であり、注目画素Ｊ１に対して水平方向（ｘ方向に対応）に５画素、および垂直方向（ｙ方向に対応）に５画素だけ離れている学習画像上の各画素を、画素Ｊ２乃至画素Ｊ５とする。
【０１６６】
この場合、１次フィルタ処理部９５は、図１３に示すように、学習画像上において、注目画素Ｊ１を中心として、主方向計算部９４から供給された主方向αだけ画素Ｊ２乃至画素Ｊ５を回転させ、回転後の画素Ｊ２乃至画素Ｊ５を画素Ｊ２’乃至画素Ｊ５’とする。
【０１６７】
そして、１次フィルタ処理部９５は、１次導関数Ｆ１（θ）のフィルタのガウス幅σと方向θを変化させながら、注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’に対して、１次導関数Ｆ１（θ）のフィルタを用いたフィルタ処理を行い、その演算結果を特徴量とする。
【０１６８】
このとき、１次フィルタ処理部９５は、インテグラルイメージ記録部９３に記録されているインテグラルイメージを参照し、フィルタ記録部９１に記録されている１次導関数Ｆ１（θ）のフィルタを用いて、フィルタ処理を行う。
【０１６９】
例えば、１次フィルタ処理部９５は、ガウス幅σを３つの所定値（例えば、ガウス幅σ１，σ２，σ３＝１，２，４）に変化させ、ガウス幅σごとに所定の４方向（例えば、θ＝θ１＋α，θ２＋α，θ３＋α，θ４＋α）について、フィルタ処理を行う。ここで、αは、上述の主方向αである。
【０１７０】
したがって、１つの輪郭特徴点（注目画素Ｊ１）について、６０（＝５（画素）×３（ガウス幅）×４（方向））個の特徴量が抽出されることになる。なお、特徴量が抽出される画素Ｊ２’乃至画素Ｊ５’は、主方向αにより定まる、注目画素Ｊ１近傍の画素であれば、どのような画素であってもよい。
【０１７１】
２次フィルタ処理部９６は、輪郭特徴点抽出部２４から供給された輪郭特徴点ごとに、輪郭特徴点に対して２次導関数Ｆ２（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部９８に供給する。
【０１７２】
２次フィルタ処理部９６においても、１次フィルタ処理部９５における場合と同様に、主方向計算部９４からの主方向αにより定まる５つの画素について、３つのガウス幅σごとに、４つの方向に対してフィルタ処理が行われる。このとき、２次フィルタ処理部９６は、インテグラルイメージ記録部９３に記録されているインテグラルイメージを参照し、フィルタ記録部９１に記録されている２次導関数Ｆ２（θ）のフィルタを用いて、フィルタ処理を行う。
【０１７３】
３次フィルタ処理部９７は、輪郭特徴点抽出部２４から供給された輪郭特徴点ごとに、輪郭特徴点に対して３次導関数Ｆ３（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部９８に供給する。
【０１７４】
３次フィルタ処理部９７においても、１次フィルタ処理部９５における場合と同様に、主方向計算部９４からの主方向αにより定まる５つの画素について、３つのガウス幅σごとに、４つの方向に対してフィルタ処理が行われる。このとき、３次フィルタ処理部９７は、インテグラルイメージ記録部９３に記録されているインテグラルイメージを参照し、フィルタ記録部９１に記録されている３次導関数Ｆ３（θ）のフィルタを用いて、フィルタ処理を行う。
【０１７５】
特徴量生成部９８は１次フィルタ処理部９５、２次フィルタ処理部９６、および３次フィルタ処理部９７からの特徴量を並べて、輪郭特徴点における輪郭特徴量とし、輪郭特徴量と、輪郭特徴点抽出部２４からの学習画像とを輪郭識別器生成部２６に供給する。
【０１７６】
このように、輪郭特徴量計算部２５では、ガウス関数の導関数を近似して得られた、方向θおよびガウス幅σに選択性を持つフィルタが用いられて、導関数の次数ごとに異なる特徴量（輪郭）が抽出され、輪郭特徴量とされる。
【０１７７】
なお、図９の輪郭特徴量計算部３４は、図１１の輪郭特徴量計算部２５と同様の構成とされるため、その図示および説明は省略する。
【０１７８】
［学習処理の説明］
ところで、学習装置１１に学習画像が入力され、統合識別器の生成が指示されると、学習装置１１は、学習処理を開始して統計学習により統合識別器を生成する。以下、図１４のフローチャートを参照して、学習装置１１による学習処理について説明する。
【０１７９】
ステップＳ１１において、服装特徴点抽出部２１は、入力された学習画像から服装特徴点を抽出して、抽出した服装特徴点および学習画像を服装特徴量計算部２２に供給する。
【０１８０】
ステップＳ１２において、服装特徴量計算部２２は、服装特徴点抽出部２１から供給された服装特徴点と学習画像とに基づいて、各服装特徴点について、服装特徴点のペアリングを行う。
【０１８１】
ステップＳ１３において、服装特徴量計算部２２は、ペアリングによりペアとされた服装特徴点の各ペアについて服装特徴量を計算し、これにより得られた服装特徴量および学習画像を服装識別器生成部２３に供給する。
【０１８２】
例えば、図１５に示す学習画像が服装特徴点抽出部２１に入力された場合、服装特徴点抽出部２１は、予め定められたマージン（のりしろ）と、サンプリングスキップ数とに基づいて、学習画像から服装特徴点を抽出する。なお、図１５において、学習画像上の円は、服装特徴点とされた画素を示している。
【０１８３】
ここで、マージンとは、学習画像において、学習画像の端から服装特徴点の抽出の対象となる領域までの画素数をいう。また、サンプリングスキップ数とは、服装特徴点とされる学習画像上の画素と画素との間隔をいう。
【０１８４】
したがって、例えばマージンが５画素であり、サンプリングスキップ数が５画素である場合、服装特徴点抽出部２１は、学習画像の端から５画素以内の位置にある画素からなる領域を学習画像から除外し、残りの領域Ｅ１１を服装特徴点の抽出の対象とする。そして、服装特徴点抽出部２１は、領域Ｅ１１内の画素のうち、互いに５画素だけ離れている位置の画素を服装特徴点として抽出する。つまり、図中、縦方向または横方向に互いに隣り合う服装特徴点間の距離は５画素とされ、各服装特徴点は、領域Ｅ１１内の画素とされる。
【０１８５】
次に、服装特徴量計算部２２は、予め定められた最小半径および最大半径に基づいて、各服装特徴点のペアリングを行う。例えば、最小半径がＲ１１であり、最大半径がＲ１２である場合、所定の服装特徴点ＫＴ１に注目したとき、服装特徴量計算部２２は、服装特徴点ＫＴ１からの距離が、最小半径Ｒ１１以上であり、かつ最大半径Ｒ１２以内である全ての服装特徴点について、その服装特徴点と、服装特徴点ＫＴ１とを１つのペアとする。
【０１８６】
したがって、例えば、服装特徴点ＫＴ１からの距離が、最小半径Ｒ１１以上であり、かつ最大半径Ｒ１２以内である服装特徴点がＮ個存在する場合、Ｎ個の服装特徴点のペアが得られることになる。服装特徴量計算部２２は、全ての服装特徴点について、他の服装特徴点とのペアリングを行う。
【０１８７】
さらに、服装特徴量計算部２２は、ペアリングにより得られた服装特徴点の各ペアについて、ペアとなる各服装特徴点を中心とする所定の形の所定の大きさの領域同士のテクスチャの距離を服装特徴量として計算する。
【０１８８】
例えば、図１５に示す服装特徴点ＫＴ１と服装特徴点ＫＴ２とのペアについての服装特徴量をSAD（Sum of Absolute Distance）により求める場合、服装特徴量計算部２２は、服装特徴点ＫＴ１を中心とする所定の領域を領域ＴＸ１とし、服装特徴点ＫＴ２を中心とする領域ＴＸ１と同じ大きさの領域を領域ＴＸ２とする。そして、服装特徴量計算部２２は、領域ＴＸ１内の画素の画素値と、その画素に対応する領域ＴＸ２内の画素の画素値との差分の絶対値和を求め、求められた差分の絶対値和を服装特徴量とする。
【０１８９】
なお、服装特徴量は、SADに限らず、SSD（Sum of Square Distance）や、正規化相関などとされてもよい。
【０１９０】
このようにして、服装特徴量計算部２２は、学習画像から抽出された服装特徴点の各ペアについて、服装特徴量を求める。なお、より詳細には、学習装置１１には、対象物体が含まれているいくつかの学習画像と、対象物体が含まれていないいくつかの学習画像とからなる複数の学習画像が入力される。そして、入力された学習画像ごとに、服装特徴点の抽出および服装特徴量の計算が行われる。
【０１９１】
したがって、例えばＭ個（但し、Ｍは自然数）の学習画像ＰＩ１乃至学習画像ＰＩＭが学習装置１１に入力された場合には、図１６に示すように、Ｍ個の学習画像ＰＩｉ（但し、１≦ｉ≦Ｍ）について、服装特徴点のペアごとの服装特徴量が得られる。
【０１９２】
図１６では、１つの四角形は、１つの服装特徴点のペアの服装特徴量を表している。また、図中、縦方向に並べられた四角形の列は、１つの学習画像ＰＩｉ（但し、１≦ｉ≦Ｍ）から得られた服装特徴量の列を表しており、１つの列には、その学習画像ＰＩｉから得られた服装特徴点のペアの数だけ服装特徴量が並んでいる。つまり、１つの学習画像ＰＩｉから得られた服装特徴点のペアの数が、その学習画像ＰＩｉの服装特徴量の次元となる。
【０１９３】
さらに、各学習画像ＰＩｉの服装特徴量の列の図中、下側には、その学習画像ＰＩｉに対象物体が含まれているか否かを示すラベル（正誤情報）が示されている。例えば、学習画像ＰＩ１の服装特徴量の列の図中、下側に示されるラベル「＋１」は、学習画像ＰＩ１に対象物体が含まれることを表しており、学習画像ＰＩＭの服装特徴量の列の図中、下側に示されるラベル「−１」は、学習画像ＰＩＭに対象物体が含まれていないことを表している。
【０１９４】
図１４のフローチャートの説明に戻り、ステップＳ１３において、服装特徴量が求められると、ステップＳ１４において、服装識別器生成部２３は、服装識別器生成処理を行って、服装識別器を生成する。
【０１９５】
ここで、図１７のフローチャートを参照して、ステップＳ１４の処理に対応する服装識別器生成処理について説明する。
【０１９６】
ステップＳ５１において、重み設定部６２は、例えば、図１６で示される学習画像ＰＩｉ（１≦ｉ≦Ｍ）毎の重みＷｉを全て１／Ｍに初期化し、識別器選択部６５は、カウンタｊを１に、弱識別器の和からなる服装識別器Ｒ（ｘ）を０にそれぞれ初期化する。
【０１９７】
ここで、ｉは、図１６における学習画像ＰＩｉを識別するものであり、１≦ｉ≦Ｍである。ステップＳ５１の処理により、全ての学習画像ＰＩｉの重みＷｉは、いずれも正規化された同一の重み（＝１／Ｍ）とされる。また、カウンタｊは、予め定められた、服装識別器Ｒ（ｘ）を更新する回数を示している。
【０１９８】
ステップＳ５２において、サンプリング部６１は、各服装特徴点のペアごとに、複数の学習画像ＰＩｉのそれぞれの同じ位置の服装特徴点のペアの服装特徴量から、学習画像ＰＩｉの重みＷｉに応じて、Ｍ個の服装特徴量を選択し、並び替え部６３に供給する。
【０１９９】
例えば、服装特徴量計算部２２からサンプリング部６１に、図１８に示すように、Ｍ個の学習画像ＰＩ１乃至学習画像ＰＩＭの服装特徴量が供給されたとする。図１８では、図中、横方向に学習画像ＰＩｉ（但し、１≦ｉ≦Ｍ）から得られた服装特徴量が並べられており、学習画像を表す文字ＰＩｉの図中、左側の数字「＋１」または「−１」は、その学習画像ＰＩｉに付加されたラベル（正誤情報）を示している。
【０２００】
すなわち、図中、一番上側に横方向に並んでいる（Ａ１，Ａ２，Ａ３，・・・，ＡＮ）は、学習画像ＰＩ１の服装特徴点の各ペアの服装特徴量のそれぞれを表しており、学習画像ＰＩ１を示す文字「ＰＩ１」の図中、左側の文字「＋１」は、学習画像ＰＩ１に対象物体が含まれている旨のラベルを表している。
【０２０１】
同様に、図中、上から二番目の横方向に並んでいる（Ｂ１，Ｂ２，Ｂ３，・・・，ＢＮ）は、学習画像ＰＩ２の服装特徴点の各ペアの服装特徴量のそれぞれを表しており、学習画像ＰＩ２を示す文字「ＰＩ２」の図中、左側の文字「＋１」は、学習画像ＰＩ２に対象物体が含まれている旨のラベルを表している。
【０２０２】
また、図中、上から三番目の横方向に並んでいる（Ｃ１，Ｃ２，Ｃ３，・・・，ＣＮ）は、学習画像ＰＩ３の服装特徴点の各ペアの服装特徴量のそれぞれを表しており、文字「ＰＩ３」の図中、左側の文字「−１」は、学習画像ＰＩ３に対象物体が含まれていない旨のラベルを表している。さらに、図中、上からＭ番目の横方向に並んでいる（Ｍ１，Ｍ２，Ｍ３，・・・，ＭＮ）は、学習画像ＰＩＭの服装特徴点の各ペアの服装特徴量のそれぞれを表しており、文字「ＰＩＭ」の図中、左側の文字「−１」は、学習画像ＰＩＭに対象物体が含まれていない旨のラベルを表している。
【０２０３】
このように、図１８の例では、１つの学習画像ＰＩｉからは、服装特徴点のＮ個のペアのそれぞれの服装特徴量が得られる。また、図１８では、縦方向に並んだＭ個の服装特徴量Ａｋ乃至服装特徴量Ｍｋ（但し、１≦ｋ≦Ｎ）が１つのグループＧｒｋとされており、このグループＧｒｋに属す服装特徴量は、各学習画像ＰＩｉにおける同じ位置の服装特徴点のペアの服装特徴量とされている。
【０２０４】
例えば、グループＧｒ１は、縦方向に並んだ服装特徴量Ａ１乃至服装特徴量Ｍ１からなり、服装特徴量Ａ１が求められる学習画像ＰＩ１のペアとなる２つの服装特徴点と、グループＧｒ１に属す他の服装特徴量、例えば服装特徴量Ｍ１が求められる学習画像ＰＩＭのペアとなる２つの服装特徴点とは、学習画像上の同じ位置にある。なお、以下において、各学習画像ＰＩｉにおける服装特徴点のペアであって、グループＧｒｋ（１≦ｋ≦Ｎ）に属す服装特徴量が求められるペアをペアｋと称する。
【０２０５】
サンプリング部６１に、図１８に示される学習画像ＰＩｉごとの服装特徴量が供給された場合、サンプリング部６１は、ペアｋごと、つまりグループＧｒｋごとに、そのグループに属す服装特徴量から学習画像ＰＩｉの重みＷｉに応じて、Ｍ個の服装特徴量を抽選で選択する。例えば、サンプリング部６１は、重みＷｉに応じて、グループＧｒ１に属す服装特徴量Ａ１乃至服装特徴量Ｍ１から、Ｍ個の服装特徴量を選択する。なお、最初の処理においては、いずれの重みＷｉも１／Ｍであり、等しいため、Ｍ個が抽選されると、確率的には全ての服装特徴量が選択されることになる。そのため、ここでは、最初の処理では各グループＧｒｋにおいて、全ての服装特徴量が選択されたものとする。もちろん、実際には、同一の服装特徴量が重複して選択されることもある。
【０２０６】
なお、重みＷｉは、服装特徴点のペアごとのエラー計算に用いることもできる。この場合、データ重み係数（重みＷｉ）がエラー値に掛け合わされてエラー計算が行われる。
【０２０７】
ステップＳ５３において、並び替え部６３は、Ｎ個のグループＧｒｋのそれぞれについて、グループＧｒｋ、つまりペアｋごとに選択されたＭ個の服装特徴量を昇べきの順、または降べきの順に並び替えて、識別器設定部６４に供給する。例えば、図１８のグループＧｒ１に属す服装特徴量から選択された、Ｍ個の服装特徴量が順番に並び替えられる。
【０２０８】
ステップＳ５４において、識別器設定部６４は、服装特徴量計算部２２から供給された学習画像に付加されている正誤情報（ラベル）に基づいて、グループＧｒｋごと、つまり服装特徴点のペアｋごとに、閾値を変化させながら誤り率計算部６４ａを制御して、誤り率ｅｊｋを計算させ、誤り率ｅｊｋが最小となるように閾値を設定する。
【０２０９】
ここで、服装特徴点のペアｋごとの閾値ｔｈｊｋが、１個の弱識別器ｆｊｋとなる。識別器設定部６４は、弱識別器ｆｊｋごとの誤り率ｅｊｋを識別器選択部６５に供給する。すなわち、Ｎ個のペアｋのそれぞれに対して、Ｎ個の弱識別器ｆｊｋのそれぞれが設定され、Ｎ個の弱識別器ｆｊｋのそれぞれについて誤り率ｅｊｋが求められることになる。なお、弱識別器ｆｊｋは、認識しようとする対象物体を含む場合「＋１」を出力し、認識しようとする対象物体を含まない場合「−１」を出力する関数である。
【０２１０】
例えば、図１９に示すように、ｊ＝１であって、服装特徴点のペアｋ＝１の服装特徴量がＬ１，Ａ１，Ｃ１，Ｂ１，・・・，Ｍ１の順に並べられた場合、閾値ｔｈ１１が服装特徴量Ａ１とＣ１の間に設定される。そして、閾値ｔｈ１１より小さい範囲では、認識しようとする対象物体がないと認識され（「−１」で示されている範囲）、閾値ｔｈ１１より大きい範囲では、認識しようとする対象物体があると認識される（「＋１」で示されている範囲）とき、図中の点線で囲まれた服装特徴量Ａ１は、認識しようとする対象物体が含まれた学習画像の服装特徴量であるので、エラーであるとみなされる。また、服装特徴量Ｃ１，Ｍ１は、逆に、認識しようとする対象物体が含まれていない学習画像の服装特徴量であるので、エラーであるとみなされる。
【０２１１】
図１９の例では、閾値ｔｈ１１は、誤り率ｅｊｋが最小となる位置に設定されている。例えば、図１９に示す閾値ｔｈ１１が、誤り率ｅｊｋが最小となる位置ではない場合には、識別器設定部６４は、閾値ｔｈ１１の位置を変化させて、各位置における誤り率ｅｊｋを参照しながら、誤り率ｅｊｋが最小となる閾値ｔｈ１１の位置を探し出し、その位置を閾値ｔｈ１１の位置とする。
【０２１２】
誤り率計算部６４ａは、以下の式（２７）で示されるように、学習画像の正誤情報（ラベル）に基づいて、エラーであるとみなされた服装特徴量が抽出された学習画像の重みＷｉを加算し、誤り率ｅｊｋを計算する。
【０２１３】
【数１６】
2012089076.tif 000018
【０２１４】
ここで、ｙ≠ｆｊｋはエラーとなっている服装特徴点のペアｋの条件を示しており、Ｅｗは、エラーの発生したペアｋにおける重みが加算されることを示している。
【０２１５】
ステップＳ５５において、識別器選択部６５は、識別器設定部６４から供給されたペアｋごとのＮ個の誤り率ｅｊｋに基づいて、Ｎ個の弱識別器ｆｊｋのうち、誤り率ｅｊｋが最小となる弱識別器ｆｊｋを選択する。そして、識別器選択部６５は、識別器設定部６４から選択した弱識別器ｆｊｋを取得する。
【０２１６】
ステップＳ５６において、識別器選択部６５は、選択した弱識別器ｆｊｋの誤り率ｅｊｋに基づいて、以下の式（２８）で示される信頼度ｃｊを計算し、計算結果を重み更新部６６に供給する。
【０２１７】
【数１７】
2012089076.tif 000019
【０２１８】
なお、式（２８）において、ｅｊは、誤り率ｅｊｋのうち、選択された弱識別器ｆｊｋの誤り率ｅｊｋ、つまりＮ個の誤り率ｅｊｋのうちの最小の誤り率ｅｊｋを示している。また、以下において、ステップＳ５５の処理において選択されたペアｋの弱識別器を、弱識別器ｆｊとも称し、その弱識別器ｆｊｋの誤り率ｅｊｋを誤り率ｅｊとも称する。
【０２１９】
ステップＳ５７において、重み更新部６６は、供給された信頼度ｃｊに基づいて、以下の式（２９）を計算することで、学習画像ＰＩｉごとに重みＷｉを再計算すると共に、全ての重みＷｉを正規化して更新し、更新結果を重み設定部６２に供給する。重み設定部６２は、重み更新部６６より供給されてくる重みの更新結果に基づいて、学習画像ごとの重みを設定する。
【０２２０】
【数１８】
2012089076.tif 000020
【０２２１】
すなわち、式（２９）においては、エラーの発生した服装特徴量を含む学習画像の重みＷｉが大きくなることが示されている。
【０２２２】
ステップＳ５８において、識別器選択部６５は、新たに求められた弱識別器ｆｊを用いて、保持している服装識別器Ｒ（ｘ）を更新する。すなわち、識別器選択部６５は、次式（３０）を計算することで服装識別器Ｒ（ｘ）を更新する。
【０２２３】
Ｒ（ｘ）＝Ｒ’（ｘ）＋ｃｊ×ｆｊ（ｘ）      ・・・（３０）
【０２２４】
なお、式（３０）において、Ｒ’（ｘ）は、識別器選択部６５が保持している更新前の服装識別器を表しており、ｆｊ（ｘ）は、新たに求められた弱識別器ｆｊを表している。すなわち、識別器選択部６５は、保持している服装識別器に、信頼度ｃｊが乗算されて重み付けされた、新たに求められた弱識別器を加算することで服装識別器を更新する。
【０２２５】
ステップＳ５９において、識別器選択部６５は、誤り率ｅｊｋが最小となる弱認識器ｆｊｋに対応する服装特徴点のペアｋの服装特徴量を、識別用特徴量として保持する。
【０２２６】
ステップＳ６０において、識別器選択部６５は、カウンタｊがＬ以上であるか否かを判定する。ステップＳ６０において、カウンタｊがＬ以上でないと判定された場合、ステップＳ６１において、識別器選択部６５は、カウンタｊをインクリメントする。そして、その後、処理はステップＳ５２に戻り、上述した処理が繰り返される。
【０２２７】
すなわち、新たに設定された学習画像ごとの重みＷｉが用いられて、Ｎ個のペアｋについて、新たな弱識別器ｆｊｋが設定され、それらの弱識別器ｆｊｋから誤り率ｅｊｋが最小となる弱認識器ｆｊｋが選択される。そして、選択された弱認識器ｆｊｋにより、服装識別器が更新される。
【０２２８】
これに対して、ステップＳ６０において、カウンタｊがＬ以上であると判定された場合、ステップＳ６２において、識別器選択部６５は、保持している服装識別器および識別用特徴量を統合識別器生成部２７に出力する。そして、その後、処理は図１４のステップＳ１５に進む。
【０２２９】
以上の処理により、Ｌ個の比較的誤り率の低い弱識別器ｆｊ（１≦ｊ≦Ｌ）からなる服装識別器が統合識別器生成部２７に供給されるとともに、それぞれの弱識別器ｆｊで使用されるべき服装特徴点のペアｋの服装特徴量が統合識別器生成部２７に供給される。ここでＬは、Ｌ≦Ｎである。
【０２３０】
なお、式（３０）の服装識別器を用いて、服装特徴量を代入した服装識別器が正である場合に「＋１」を出力し、服装識別器が負である場合に「−１」を出力する識別器（関数）を生成すると、その識別器は、Ｌ個の弱識別器の多数決により、認識しようとする対象物体の有無を出力する関数であると言える。また、図１７のフローチャートを参照して説明した弱識別器を学習処理により重み付けしつつ付加することを繰り返し、識別器を生成する学習処理は、Descrete Adaboost Algorithmと呼ばれている。
【０２３１】
すなわち、以上の服装識別器生成処理により、誤り率の高い学習画像の服装特徴量の重みが順次大きくなり、誤り率の低い服装特徴量の重みが小さくなるように、服装特徴点のペアごとに弱識別器と誤り率が計算される処理が繰り返されることになる。したがって、繰り返し処理（ステップＳ５２乃至Ｓ６１の処理）の中で、弱識別器を設定する際に選択される服装特徴量（ステップＳ５２で選択される服装特徴量）は、徐々に誤り率の高いものが選択されやすくなる。その結果、認識し難い学習画像の服装特徴量がより多く選択され、最終的に高い認識率にすることが可能となる。
【０２３２】
また、繰り返し処理（ステップＳ５２乃至Ｓ６１の処理）の中で、識別器選択部６５は、常に誤り率の最も低いペアに対応する弱識別器を選択することになる。したがって、学習処理の繰り返しにより、常に信頼度の最も高い服装特徴点のペアについての弱識別器が選択されて服装識別器に加算されることになる。つまり、処理が繰り返されるごとに精度の高い弱識別器が、服装識別器に順次加算されることになる。
【０２３３】
さらに、服装識別器は、服装特徴量を用いて画像に対象物体としての人が含まれているか否かを識別する識別器である。そして、服装識別器を構成する各弱識別器に代入される服装特徴量に対応する服装特徴点のペアは、服装特徴点のペアのうち、入力された画像から対象物体を検出するのに適したペアである。
【０２３４】
例えば、服装識別器に代入される服装特徴量に対応するペアは、図２０に示すように、画像中の対象物体としての人の周囲にある服装特徴点のペアとされている。図２０では、点線の直線は、ペアとなる２つの服装特徴点を結ぶ直線を表しており、その点線の端を中心とする四角形は、服装特徴量を求めるときに用いられるテクスチャの領域を表している。
【０２３５】
図２０の例では、画像上の人が身に着けている、その人の上半身の洋服内にある２つの服装特徴点からなり、テクスチャ間の距離、つまり服装特徴量が小さくなるペアや、人の洋服内の服装特徴点と、人ではなく背景上の服装特徴点とからなり、服装特徴量が大きくなるペアなどが選択されていることが分かる。
【０２３６】
図１４のフローチャートの説明に戻り、ステップＳ１５において、輪郭特徴点抽出部２４は、入力された学習画像から輪郭特徴点を抽出する。
【０２３７】
例えば、輪郭特徴点抽出部２４に図２１Ａに示す学習画像が入力された場合、輪郭特徴点抽出部２４は、図２１Ｂに示すように、学習画像において所定の間隔で並んでいる画素を、輪郭特徴点として抽出する。なお、図２１Ｂにおいて、学習画像上の円は輪郭特徴点とされた画素を表している。
【０２３８】
図２１Ａおよび図２１Ｂに示す学習画像は、図中、横方向に３２画素、縦方向に６４画素からなる学習画像であり、輪郭特徴点抽出部２４は、学習画像上の画素を、横方向および縦方向に２画素おきに輪郭特徴点とする画素として選択する。これにより、学習画像において、図中、横方向に１２画素、縦方向に２８画素、合計３３６（＝１２×２８）画素が輪郭特徴点として選択される。
【０２３９】
輪郭特徴点抽出部２４は、学習画像から輪郭特徴点を抽出すると、抽出した輪郭特徴点と、入力された学習画像とを輪郭特徴量計算部２５に供給する。
【０２４０】
ステップＳ１６において、輪郭特徴量計算部２５は、輪郭特徴量計算処理を行い、輪郭特徴点抽出部２４から供給された輪郭特徴点および学習画像に基づいて、各輪郭特徴点の輪郭特徴量を計算する。
【０２４１】
ここで、図２２のフローチャートを参照して、ステップＳ１６の処理に対応する輪郭特徴量計算処理について説明する。
【０２４２】
ステップＳ１０１において、インテグラルイメージ生成部９２は、輪郭特徴点抽出部２４から供給された学習画像に基づいて、学習画像のインテグラルイメージを生成し、インテグラルイメージ記録部９３に供給する。インテグラルイメージ記録部９３は、インテグラルイメージ生成部９２から供給されたインテグラルイメージを一時的に記録する。
【０２４３】
ステップＳ１０２において、輪郭特徴量計算部２５、より詳細には、主方向計算部９４、１次フィルタ処理部９５、２次フィルタ処理部９６、および３次フィルタ処理部９７は、輪郭特徴点抽出部２４から供給された輪郭特徴点のうち、未処理の輪郭特徴点の１つを注目画素として選択する。
【０２４４】
ステップＳ１０３において、主方向計算部９４は、インテグラルイメージ記録部９３に記録されているインテグラルイメージを参照して、注目画素における主方向αを計算し、１次フィルタ処理部９５乃至３次フィルタ処理部９７に供給する。
【０２４５】
例えば主方向計算部９４は、フィルタ記録部９１から取得した１次導関数Ｆ１（θ）のフィルタのガウス幅σをσ３とし、注目画素に対して１次導関数Ｆ１（０°）および１次導関数Ｆ１（９０°）のフィルタを用いたフィルタ処理を行うことで、主方向αを求める。
【０２４６】
ステップＳ１０４において、輪郭特徴量計算部２５は、方向θｑを示すカウンタｑを１とする。これにより、方向θｑはθ１とされる。
【０２４７】
ステップＳ１０５において、輪郭特徴量計算部２５は、ガウス幅σｐを示すカウンタｐを１とする。これにより、ガウス幅σｐはσ１とされる。
【０２４８】
ステップＳ１０６において、１次フィルタ処理部９５は、１次フィルタ処理を行う。すなわち、１次フィルタ処理部９５は、主方向計算部９４から供給された主方向αに基づいて、フィルタ処理の対象となる図１３の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’とを特定する。
【０２４９】
また、１次フィルタ処理部９５は、フィルタ記録部９１から取得した１次導関数Ｆ１（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑ＋αとする。そして、１次フィルタ処理部９５は、インテグラルイメージ記録部９３に記録されたインテグラルイメージを参照しながら、学習画像上の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素に対して、１次導関数Ｆ１（θｑ＋α）のフィルタを用いたフィルタ処理を行う。
【０２５０】
例えば、１次フィルタ処理部９５は、フィルタＲ１ｘおよびフィルタＲ１ｙのそれぞれを用いて、注目画素Ｊ１に対するフィルタ処理を行い、それらのフィルタ処理の結果得られた画素値を、上述した式（２４）にしたがって線形結合する。具体的には、１次フィルタ処理部９５は、フィルタＲ１ｘを用いたフィルタ処理結果にcos(θq＋α)を乗じた値と、フィルタＲ１ｙを用いたフィルタ処理結果にsin(θq＋α)を乗じた値とを加算し、得られた値を注目画素Ｊ１についての特徴量とする。
【０２５１】
１次フィルタ処理部９５は、注目画素Ｊ１における場合と同様の処理を行って、画素Ｊ２’乃至画素Ｊ５’の各画素の特徴量を計算し、注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素から得られた特徴量を、特徴量生成部９８に供給する。
【０２５２】
ステップＳ１０７において、２次フィルタ処理部９６は、２次フィルタ処理を行う。
【０２５３】
すなわち、２次フィルタ処理部９６は、主方向計算部９４から供給された主方向αに基づいて、フィルタ処理の対象となる図１３の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’とを特定する。
【０２５４】
また、２次フィルタ処理部９６は、フィルタ記録部９１から取得した２次導関数Ｆ２（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑ＋αとする。そして、２次フィルタ処理部９６は、インテグラルイメージ記録部９３に記録されたインテグラルイメージを参照しながら、学習画像上の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素に対して、２次導関数Ｆ２（θｑ＋α）のフィルタを用いたフィルタ処理を行う。
【０２５５】
例えば、２次フィルタ処理部９６は、フィルタＲ２ｘｘ、フィルタＲ２ｘｙ、およびフィルタＲ２ｙｙのそれぞれを用いて、注目画素Ｊ１に対するフィルタ処理を行い、それらのフィルタ処理の結果得られた画素値を、上述した式（２５）にしたがって線形結合する。具体的には、２次フィルタ処理部９６は、フィルタＲ２ｘｘを用いたフィルタ処理結果にcos２(θq＋α)を乗じた値、フィルタＲ２ｘｙを用いたフィルタ処理結果に-2cos(θq＋α)sin(θq＋α)を乗じた値、およびフィルタＲ２ｙｙを用いたフィルタ処理結果にsin２(θq＋α)を乗じた値を加算し、得られた値を注目画素Ｊ１についての特徴量とする。
【０２５６】
２次フィルタ処理部９６は、注目画素Ｊ１における場合と同様の処理を行って、画素Ｊ２’乃至画素Ｊ５’の各画素の特徴量を計算し、注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素から得られた特徴量を、特徴量生成部９８に供給する。
【０２５７】
ステップＳ１０８において、３次フィルタ処理部９７は、３次フィルタ処理を行う。
【０２５８】
すなわち、３次フィルタ処理部９７は、主方向計算部９４から供給された主方向αに基づいて、フィルタ処理の対象となる図１３の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’とを特定する。
【０２５９】
また、３次フィルタ処理部９７は、フィルタ記録部９１から取得した３次導関数Ｆ３（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑ＋αとする。そして、３次フィルタ処理部９７は、インテグラルイメージ記録部９３に記録されたインテグラルイメージを参照しながら、学習画像上の注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素に対して、３次導関数Ｆ３（θｑ＋α）のフィルタを用いたフィルタ処理を行う。
【０２６０】
例えば、３次フィルタ処理部９７は、フィルタＲ３ｘｘｘ、フィルタＲ３ｘｘｙ、フィルタＲ３ｘｙｙ、およびフィルタＲ３ｙｙｙのそれぞれを用いて、注目画素Ｊ１に対するフィルタ処理を行い、それらのフィルタ処理の結果得られた画素値を、上述した式（２６）にしたがって線形結合する。
【０２６１】
具体的には、３次フィルタ処理部９７は、フィルタＲ３ｘｘｘ乃至フィルタＲ３ｙｙｙを用いたフィルタ処理結果のそれぞれに、cos３(θq＋α)、-3cos２(θq＋α)sin(θq＋α)、3cos(θq＋α)sin２(θq＋α)、および-sin３(θq＋α)のそれぞれを乗じて、その結果得られた各値の和を注目画素Ｊ１についての特徴量とする。３次フィルタ処理部９７は、注目画素Ｊ１における場合と同様の処理を行って、画素Ｊ２’乃至画素Ｊ５’の各画素の特徴量を計算し、注目画素Ｊ１と画素Ｊ２’乃至画素Ｊ５’の各画素から得られた特徴量を、特徴量生成部９８に供給する。
【０２６２】
このように、主方向αに応じて特徴量を抽出する画素の位置を変化（回転）させることで、学習画像上の対象物体の回転に対して、不変な特徴量を得ることができる。また、特徴量の抽出に、インテグラルイメージと矩形フィルタを用いることで、より簡単かつ迅速に特徴量を抽出することができる。
【０２６３】
ステップＳ１０９において、輪郭特徴量計算部２５は、ガウス幅σｐがσ３であるか、つまりカウンタｐ＝３であるか否かを判定する。ステップＳ１０９において、ガウス幅σｐがσ３でないと判定された場合、ステップＳ１１０において、輪郭特徴量計算部２５は、カウンタｐをインクリメントする。例えば、カウンタｐ＝１であった場合、カウンタｐがインクリメントされてｐ＝２とされ、これによりガウス幅σｐはσ２とされる。カウンタｐがインクリメントされると、処理はステップＳ１０６に戻り、上述した処理が繰り返される。
【０２６４】
一方、ステップＳ１０９において、ガウス幅σｐがσ３であると判定された場合、ステップＳ１１１において、輪郭特徴量計算部２５は、方向θｑがθ４であるか否か、つまりカウンタｑ＝４であるか否かを判定する。
【０２６５】
ステップＳ１１１において、方向θｑがθ４でないと判定された場合、ステップＳ１１２において、輪郭特徴量計算部２５は、カウンタｑをインクリメントする。例えば、カウンタｑ＝１であった場合、カウンタｑがインクリメントされてｑ＝２とされ、これにより方向θｑはθ２とされる。カウンタｑがインクリメントされると、処理はステップＳ１０５に戻り、上述した処理が繰り返される。
【０２６６】
これに対して、ステップＳ１１１において、方向θｑがθ４であると判定された場合、処理はステップＳ１１３に進む。ステップＳ１１３において、特徴量生成部９８は、１次フィルタ処理部９５、２次フィルタ処理部９６、および３次フィルタ処理部９７から供給された演算結果を輪郭特徴量として合成し、１つの輪郭特徴点に対する輪郭特徴量を生成する。
【０２６７】
ステップＳ１１４において、輪郭特徴量計算部２５は、全ての輪郭特徴点について処理が終了したか否かを判定する。例えば、輪郭特徴点抽出部２４から供給された全ての輪郭特徴点について、輪郭特徴量が求められた場合、処理が終了したと判定される。
【０２６８】
ステップＳ１１４において、全ての輪郭特徴点について処理が終了していないと判定された場合、処理はステップＳ１０２に戻り、次の輪郭特徴点が注目画素として選択される。
【０２６９】
これに対して、ステップＳ１１４において、全ての輪郭特徴点について処理が終了したと判定された場合、特徴量生成部９８は、輪郭特徴点抽出部２４から供給された学習画像と、生成された各輪郭特徴点の輪郭特徴量とを輪郭識別器生成部２６に供給する。そして、その後、処理は図１４のステップＳ１７に進む。
【０２７０】
なお、以上においては、輪郭特徴点と、その周辺の画素とから、ｎ次導関数Ｆｎ（θｑ＋α）のフィルタが用いられて特徴量が抽出されると説明したが、輪郭特徴点のみから、ｎ次導関数Ｆｎ（θｑ）のフィルタが用いられて特徴量が抽出されるようにしてもよい。
【０２７１】
図１４のフローチャートの説明に戻り、各輪郭特徴点の輪郭特徴量が求められると、ステップＳ１７において、輪郭識別器生成部２６は、輪郭特徴量計算部２５から供給された学習画像および輪郭特徴量に基づいて、輪郭識別器生成処理を行い、輪郭識別器を生成する。なお、この輪郭識別器生成処理は、図１７を参照して説明した服装識別器生成処理と同様であるので、その説明は省略する。
【０２７２】
すなわち、服装識別器生成処理と輪郭識別器生成処理とは、処理対象となる特徴量が服装特徴量であるか、または輪郭特徴量であるかという点のみが異なる。したがって、輪郭識別器生成処理においては、最も誤り率の低い輪郭特徴点の輪郭特徴量に対応する弱識別器の和から輪郭識別器が生成される。輪郭識別器生成部２６は、生成した輪郭識別器および識別用特徴量を統合識別器生成部２７に出力する。
【０２７３】
ステップＳ１８において、統合識別器生成部２７は、服装識別器生成部２３から供給された服装識別器と、輪郭識別器生成部２６から供給された輪郭識別器とを統合して統合識別器を生成する。
【０２７４】
例えば、Adaboostによる統計学習処理により得られた識別器は、弱識別器の線形結合により表現されるので、統合識別器生成部２７は、服装識別器と輪郭識別器とをLate Fusion方式により統合する。
【０２７５】
具体的には、統合識別器生成部２７は、次式（３１）を計算することで、服装識別器Ｒ（ｘ）と輪郭識別器Ｔ（ｘ）とを線形結合し、識別器和Ｕ（ｘ）を求める。
【０２７６】
Ｕ（ｘ）＝β・Ｒ（ｘ）＋γ・Ｔ（ｘ）      ・・・（３１）
【０２７７】
なお、式（３１）において、βおよびγは所定の定数、つまりチューニングパラメータであり、例えば統計学習処理に用いられる学習画像に対する識別率などにより求められる。また、輪郭識別器Ｔ（ｘ）は、式（３０）により示される服装識別器Ｒ（ｘ）と同様に、信頼度が乗算された弱識別器の和とされる。
【０２７８】
さらに、統合識別器生成部２７は、求められた識別器和Ｕ（ｘ）を用いて、次式（３２）により示される統合識別器を生成する。
【０２７９】
統合識別器＝sign（Ｕ（ｘ））      ・・・（３２）
【０２８０】
なお、式（３２）において、sign（Ｕ（ｘ））は、識別器和Ｕ（ｘ）が正の場合、認識しようとする対象物体が、入力画像中に存在することを示す「＋１」を出力し、識別器和Ｕ（ｘ）が負の場合、認識しようとする対象物体が、入力画像中に存在しないことを示す「−１」を出力する関数である。
【０２８１】
このようにして、統合識別器が生成されると、統合識別器生成部２７は、生成した統合識別器を識別器記録部１２に供給して記録させる。また、統合識別器生成部２７は、服装識別器生成部２３から供給された識別用特徴量に、輪郭識別器生成部２６から供給された識別用特徴量を付加して最終的な識別用特徴量とし、最終的な識別用特徴量を識別器記録部１２に供給して記録させ、学習処理は終了する。
【０２８２】
以上のようにして、学習装置１１は、学習画像から服装特徴点を抽出して、服装特徴点のペアの服装特徴量を求め、統計学習により服装識別器を生成するとともに、学習画像から輪郭特徴点を抽出して輪郭特徴量を求め、統計学習により輪郭識別器を生成する。そして、学習装置１１は、服装識別器と輪郭識別器とを線形結合により統合して、統合識別器を生成する。
【０２８３】
このように、服装識別器と輪郭識別器とを統合して統合識別器を生成することで、画像からより確実に対象物体を検出できる統合識別器を提供することができる。すなわち、統合識別器は、対象物体の服装の特徴を利用した服装識別器と、対象物体の輪郭を利用した輪郭識別器とが統合されたものであるので、入力された画像から、少なくとも一方の特徴量を充分に抽出することができれば、画像から対象物体を検出することができる。
【０２８４】
画像から対象物体としての人を検出する場合、対象物体としての人は、服装が変化しても、人として検出されるべきである。そのため、従来は、人の服装の輝度によらない特徴量として、輪郭だけが用いられて画像からの人の検出が行われていた。
【０２８５】
これに対して、学習装置１１では、人の服装の特徴を利用した、人の服装のパターンの変化に対して不変な服装特徴量が、画像からの人の検出に用いられている。この服装特徴量は、統計的に、人が上半身（シャツ）で同じテクスチャの繰り返しのパターンであり、下半身（ズボン）で同じテクスチャの繰り返しのパターンである洋服を着用することが多いことに着目し、新たに定義された特徴量である。
【０２８６】
つまり、服装特徴量は、画像上の任意の２つの領域のテクスチャ、すなわち輝度のパターンの似ている度合い（類似度）を示している。例えば、人の上半身の２つの領域間のテクスチャの類似度は高く、上半身と下半身や、人の服装と背景とのテクスチャの類似度は低い。学習装置１１では、このような２つの領域のテクスチャの類似度を利用して、画像から人を検出する服装識別器が用いられ、統合識別器が生成される。
【０２８７】
したがって、例えば、入力された画像から輪郭が充分に抽出できなくても、画像から２つの領域のテクスチャの類似の特徴を充分に抽出できれば、統合識別器を用いて、画像から人を検出することができる。逆に、画像中において、人の着用している洋服が繰り返しでないパターンの服であったり、バッグなどで洋服が部分的に隠れていたりする場合には、画像からテクスチャの類似の特徴を充分に抽出できない恐れがあるが、画像から輪郭を充分に抽出することができれば、統合識別器により画像から人を検出することができる。
【０２８８】
［人検出処理の説明］
ところで、認識装置１３に入力画像が入力され、対象物体としての人の検出が指示されると、認識装置１３は、人検出処理を開始して、入力画像から対象物体を検出する。以下、図２３のフローチャートを参照して、認識装置１３による人検出処理について説明する。
【０２８９】
なお、ステップＳ１５１の処理乃至ステップＳ１５３の処理のそれぞれは、図１４のステップＳ１１の処理乃至ステップＳ１３の処理のそれぞれと同様であるので、その説明は省略する。すなわち、服装特徴点抽出部３１は、入力された入力画像から服装特徴点を抽出し、服装特徴量計算部３２は、服装特徴点抽出部３１により抽出された服装特徴点のペアリングを行って、各ペアの服装特徴量を計算する。そして、服装特徴量計算部３２は、各ペアについて求めた服装特徴量を識別計算部３５に供給する。
【０２９０】
ステップＳ１５４において、輪郭特徴点抽出部３３は、図１４のステップＳ１５の処理と同様の処理を行い、入力された入力画像から輪郭特徴点を抽出し、入力画像とともに輪郭特徴量計算部３４に供給する。
【０２９１】
ステップＳ１５５において、輪郭特徴量計算部３４は、輪郭特徴点抽出部３３からの入力画像および輪郭特徴点に基づいて、輪郭特徴量計算処理を行い、各輪郭特徴点の輪郭特徴量を計算する。そして、輪郭特徴量計算部３４は、求められた輪郭特徴量を識別計算部３５に供給する。なお、この輪郭特徴量計算処理は、図２２を参照して説明した輪郭特徴量計算処理と同様の処理であるため、その説明は省略する。
【０２９２】
ステップＳ１５６において、識別計算部３５は、識別器記録部１２から識別用特徴量および統合識別器を読み出して、読み出した統合識別器に特徴量を代入して計算する。すなわち、識別計算部３５は、服装特徴量計算部３２からの服装特徴量、および輪郭特徴量計算部３４からの輪郭特徴量のうちの識別用特徴量に対応するものを、式（３２）により示される統合識別器に代入して演算を行う。
【０２９３】
ここで、統合識別器を構成する弱識別器に代入される特徴量は、識別用特徴量とされた特徴量が求められた、学習画像の服装特徴点のペアまたは輪郭特徴点と同じ位置にある、入力画像上の服装特徴点のペアまたは輪郭特徴点から求められた特徴量である。また、識別用特徴量とされる特徴量は、統計学習処理時において、統合識別器を構成する弱識別器の設定に用いられた特徴量である。
【０２９４】
式（３２）の演算が行われると、その演算の結果として、入力画像中に対象物体としての人が存在することを示す「＋１」、または入力画像中に対象物体としての人が存在しないことを示す「−１」が得られる。識別計算部３５は、統合識別器での演算結果を識別結果出力部３６に供給する。
【０２９５】
ステップＳ１５７において、識別結果出力部３６は、識別計算部３５からの演算結果に基づいて、人の検出結果を出力し、人検出処理は終了する。すなわち、対象物体が入力画像で認識されたか否かの識別結果が出力される。
【０２９６】
例えば、対象物体が入力画像で認識されたか否かの識別結果として、図２４に示すように、対象物体としての人が検出された領域に枠が表示された入力画像が、識別結果出力部３６に表示されるようにしてもよい。
【０２９７】
図２４に示す入力画像は、対象物体としての２人の人が写っている画像であり、入力画像には、それぞれの人を囲む枠が表示されている。この場合、識別結果出力部３６にも入力画像が入力され、識別計算部３５は、演算結果とともに入力画像における対象物体が検出された領域を示す情報を識別結果出力部３６に供給する。すると、識別結果出力部３６は、識別計算部３５からの演算結果および領域を示す情報に基づいて、入力画像から対象物体が検出された場合には、入力画像とともに、対象物体が検出された領域を囲む枠を表示する。
【０２９８】
このようにして、認識装置１３は、入力画像から服装特徴点を抽出して、服装特徴点のペアの服装特徴量を求めるとともに、入力画像から輪郭特徴点を抽出して輪郭特徴量を求める。そして、認識装置１３は、求めた服装特徴量および輪郭特徴量と、識別器記録部１２に記録されている統合識別器とを用いて、入力画像から対象物体を検出する。
【０２９９】
このように、服装特徴量および輪郭特徴量を用いて入力画像から対象物体を検出することで、より確実に画像から対象物体を検出することができる。すなわち、入力画像から服装特徴量または輪郭特徴量の少なくとも何れか一方を充分に抽出することができれば、入力画像から対象物体を確実に検出することができる。
【０３００】
なお、以上においては、対象物体として人を検出すると説明したが、対象物体は、人に限らず、物体の表面のパターンが、同じテクスチャの繰り返しのパターンとなるものであれば、どのようなものであってもよい。
【０３０１】
また、以上においては、Descrete Adaboost Algorithmに基づいて、統計学習処理を実行する例について説明してきたが、それ以外のBoosting Algorithmを適用するようにしてもよく、例えば、Gentle Adaboost Algorithmを用いるようにしてもよい。Descrete Adaboost Algorithmと、Gentle Adaboost Algorithmとは、前者の識別器の出力結果が離散変量であるのに対して、後者は、連続変量である点で異なる。しかしながら、前者においては、信頼度が乗じられるため、出力結果は、実質的に連続変量として扱われており、本質的に処理の違いはない。
【０３０２】
さらに、その他、SVM（Support Vector Machine）やBaysianなどにより統計学習処理を行い、服装識別器や輪郭識別器を生成するようにしてもよい。なお、統計学習処理において、Adaboostなどで特徴量（服装特徴量または輪郭特徴量）を選択するようにすると、認識装置１３における統合識別器を用いた人の検出時に、より高速に処理を行うことができるようになる。
【０３０３】
〈第２の実施の形態〉
［画像処理システムの構成例］
次に、本発明を適用した他の実施の形態について説明する。
【０３０４】
図２５は、本発明を適用した画像処理システムの一実施の形態の構成を示す図である。
【０３０５】
本発明を適用した画像処理システムは、画像中の対象物体を認識させる、いわゆる画像認識処理を実現させるものである。
【０３０６】
学習装置１３１は、認識しようとする対象物体が含まれている画像からなる複数の学習用モデル画像と、認識しようとする対象物体が含まれている画像、および対象物体が含まれていない画像のいずれもが含まれている複数の学習用入力画像とに基づいて、画像認識装置１３２による画像認識処理において必要とされる認識用特徴量と、識別器を生成し、それぞれ認識用特徴量記録部１３３、および識別器記録部１３４に記録させる。
【０３０７】
画像認識装置１３２は、入力画像に基づいて、認識用特徴量記録部１３３に記録されている認識用特徴量と、識別器記録部１３４に記録されている識別器に基づいて、入力画像中に対象物体が存在するか否かを判定する。
【０３０８】
学習装置１３１の特徴点抽出部１５１は、例えば、Harris Corner Ditectorなどからなり、学習用モデル画像の各画素について特徴を有する位置、すなわち特徴点を抽出し、特徴量抽出部１５２に供給する。
【０３０９】
特徴量抽出部１５２は、特徴点抽出部１５１より供給される特徴点のそれぞれについて、ｎ次導関数Ｆｎ（θ）のフィルタを用いたフィルタ処理により特徴量を抽出し、特徴点ペアリング部１５３に供給する。
【０３１０】
特徴点ペアリング部１５３は、特徴量抽出部１５２より供給される各特徴点の特徴量のうち、後述する主方向の情報に基づいて、２個の特徴点をペアリングし、それぞれの特徴量を１個の特徴量（以下、学習用モデル特徴量とも称する）として、学習用モデル特徴量記録部１５４に記録させる。
【０３１１】
特徴点抽出部１５５、特徴量抽出部１５６、および特徴点ペアリング部１５７は、学習用入力画像に対して、特徴点抽出部１５１、特徴量抽出部１５２、および特徴点ペアリング部１５３と同様の処理を実行するものであるので、その説明は省略する。なお、以下、特徴点ペアリング部１５７から特徴量選択部１５８に供給される、学習用入力画像から抽出された２個の特徴点の特徴量がペアリングされて得られた特徴量を、学習用入力特徴量とも称するものとする。
【０３１２】
特徴量選択部１５８は、学習用モデル特徴量記録部１５４に記録されている学習用モデル特徴量ごとに、最も相関の高い学習用入力特徴量を選択し、識別器生成部１５９に供給する。
【０３１３】
なお、特徴点抽出部１５１、特徴量抽出部１５２、および特徴点ペアリング部１５３は、複数の学習用モデル画像より学習用モデル特徴量を抽出して学習用モデル特徴量記録部１５４に記録させる。この際、学習用モデル画像を区別することはない。一方、特徴量選択部１５８は、学習用入力画像のそれぞれについて区別して学習用入力特徴量を選択して、識別器生成部１５９に供給する。
【０３１４】
識別器生成部１５９は、学習用モデル特徴量ごとに、最も相関の高い学習用入力特徴量を用いてAdaboostによる統計学習処理を実行し、対象物体を認識する識別器を生成して、識別器記録部１３４に記録させる。この際、識別器生成部１５９は、識別器の学習の過程で、対象物体を認識するのに大きく影響する学習用モデル特徴量のみを抽出し、認識用特徴量として認識用特徴量記録部１３３に記録させる。
【０３１５】
特徴点抽出部１７１、特徴量抽出部１７２、および特徴点ペアリング部１７３は、対象物体を認識しようとする入力画像に対して、特徴点抽出部１５１、特徴量抽出部１５２、および特徴点ペアリング部１５３と同様の処理を実行するものであるので、その説明は省略する。なお、以下、特徴点ペアリング部１７３から特徴量選択部１７４に供給される、入力画像から抽出された２個の特徴点の特徴量がペアリングされて得られた特徴量を、入力特徴量とも称するものとする。
【０３１６】
特徴量選択部１７４は、認識用特徴量記録部１３３に記録されている認識用特徴量ごとに、最も相関の高い入力特徴量を選択し、識別計算部１７５に供給する。
【０３１７】
識別計算部１７５は、識別器記録部１３４に記録されている識別器を読み出して、特徴量選択部１７４から供給された入力特徴量を、識別器に代入して演算を行い、その演算結果を識別結果出力部１７６に供給する。識別結果出力部１７６は、識別計算部１７５より供給される演算結果に基づいて、対象物体が入力画像で認識されたか否かの認識結果を出力する。
【０３１８】
［特徴量抽出部の構成例］
また、図２５の特徴量抽出部１５２は、より詳細には図２６に示すように構成される。すなわち、特徴量抽出部１５２は、フィルタ記録部２０１、インテグラルイメージ生成部２０２、インテグラルイメージ記録部２０３、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、主方向計算部２０７、および特徴量生成部２０８から構成される。
【０３１９】
なお、フィルタ記録部２０１乃至インテグラルイメージ記録部２０３は、図１１のフィルタ記録部９１乃至インテグラルイメージ記録部９３と同様であるので、その説明は省略する。この例では、インテグラルイメージ記録部２０３には、学習用モデル画像から生成されたインテグラルイメージが記録されることになる。
【０３２０】
１次フィルタ処理部２０４は、特徴点抽出部１５１から供給された特徴点ごとに、特徴点に対して１次導関数Ｆ１（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部２０８に供給する。
【０３２１】
より詳細には、特徴点の画素と、その画素に対して水平方向（ｘ方向に対応）に５画素、および垂直方向（ｙ方向に対応）に５画素だけ離れている学習用モデル画像上の４つの画素とのそれぞれから、特徴量が抽出される。つまり、特徴量が抽出される画素は、学習用モデル画像において、図１２の注目画素Ｊ１および画素Ｊ２乃至画素Ｊ５に対応する画素である。以下、特徴量が抽出されるこれらの画素を、適宜、注目画素Ｊ１および画素Ｊ２乃至画素Ｊ５とも称することとする。
【０３２２】
１次フィルタ処理部２０４は、１次導関数Ｆ１（θ）のフィルタのガウス幅σと方向θを変化させながら、注目画素Ｊ１と画素Ｊ２乃至画素Ｊ５に対して、１次導関数Ｆ１（θ）のフィルタを用いたフィルタ処理を行い、その演算結果を特徴量とする。
【０３２３】
このとき、１次フィルタ処理部２０４は、インテグラルイメージ記録部２０３に記録されているインテグラルイメージを参照し、フィルタ記録部２０１に記録されている１次導関数Ｆ１（θ）のフィルタを用いて、フィルタ処理を行う。
【０３２４】
例えば、１次フィルタ処理部２０４は、ガウス幅σを３つの所定値（例えば、ガウス幅σ１，σ２，σ３＝１，２，４）に変化させ、ガウス幅σごとに所定の４方向（例えば、θ＝θ１，θ２，θ３，θ４）について、フィルタ処理を行う。
【０３２５】
したがって、１つの特徴点（注目画素Ｊ１）について、６０（＝５（画素）×３（ガウス幅）×４（方向））個の特徴量が抽出されることになる。
【０３２６】
２次フィルタ処理部２０５は、特徴点抽出部１５１から供給された特徴点ごとに、特徴点に対して２次導関数Ｆ２（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部２０８に供給する。
【０３２７】
２次フィルタ処理部２０５においても、１次フィルタ処理部２０４における場合と同様に、特徴点である注目画素Ｊ１と、その周囲の画素Ｊ２乃至画素Ｊ５について、３つのガウス幅σごとに、４つの方向に対してフィルタ処理が行われる。このとき、２次フィルタ処理部２０５は、インテグラルイメージ記録部２０３に記録されているインテグラルイメージを参照し、フィルタ記録部２０１に記録されている２次導関数Ｆ２（θ）のフィルタを用いて、フィルタ処理を行う。
【０３２８】
３次フィルタ処理部２０６は、特徴点抽出部１５１から供給された特徴点ごとに、特徴点に対して３次導関数Ｆ３（θ）のフィルタによりフィルタ処理を施して特徴量を抽出し、特徴量生成部２０８に供給する。
【０３２９】
３次フィルタ処理部２０６においても、１次フィルタ処理部２０４における場合と同様に、特徴点である注目画素Ｊ１と、その周囲の画素Ｊ２乃至画素Ｊ５について、３つのガウス幅σごとに、４つの方向に対してフィルタ処理が行われる。このとき、３次フィルタ処理部２０６は、インテグラルイメージ記録部２０３に記録されているインテグラルイメージを参照し、フィルタ記録部２０１に記録されている３次導関数Ｆ３（θ）のフィルタを用いて、フィルタ処理を行う。
【０３３０】
主方向計算部２０７は、特徴点抽出部１５１から供給された特徴点ごとに、ガウス幅σを上述した３個の所定値の最大値、つまりガウス幅σ＝σ３として主方向α（＝atan(F1(90°)/F1(0°))）を求める。主方向計算部２０７は、求めた主方向αを特徴量として特徴量生成部２０８に供給する。
【０３３１】
すなわち、主方向計算部２０７は、フィルタ記録部２０１に記録されている１次導関数Ｆ１（θ）のフィルタを用いて、インテグラルイメージ記録部２０３に記録されているインテグラルイメージを参照し、特徴点に対して１次導関数Ｆ１（０°）のフィルタを用いたフィルタ処理を行う。同様にして、主方向計算部２０７は、特徴点に対して１次導関数Ｆ１（９０°）のフィルタを用いたフィルタ処理を行い、それらのフィルタ処理の結果の比を求め、その比のアークタンジェントを求めることにより、主方向αを算出する。
【０３３２】
特徴点の特徴量の主方向αは、ガウス関数Ｇのｘ方向（０°方向）の１次導関数Ｆ１（０°）と、ｙ方向（９０°方向）の１次導関数Ｆ１（９０°）により決定される値である。
【０３３３】
例えば、図２７の左側に示されるように、画素Ｊ２乃至画素Ｊ５が、水平方向および垂直方向に平行で、かつ注目画素Ｊ１から等距離に位置するような状態で、注目画素Ｊ１の主方向が角度αであったとする。この状態から、図２７の右側に示すように、注目画素Ｊ１に対して画素Ｊ２乃至画素Ｊ５が、それぞれ角度αだけ回転移動するようなことがあっても、主方向はαから２αとなるだけである。したがって、特徴点における特徴量は、特徴点を中心とした回転に対して不変である。
【０３３４】
特徴量生成部２０８は、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、および主方向計算部２０７から供給された特徴量を並べて、特徴点における特徴量とし、特徴点ペアリング部１５３に供給する。このとき、特徴量生成部２０８は、各特徴点の位置の情報についても併せて特徴点ペアリング部１５３に供給する。
【０３３５】
１つの特徴点と、その特徴点の周囲の４画素とからは、導関数の次数ごとに４つの方向θについて、それぞれ３つのガウス幅σの特徴量が抽出され、さらに特徴点からは主方向αも特徴量として抽出される。したがって、１つの特徴点からは、合計１８１個（＝３（次数）×５（画素数）×４（方向θ）×３（ガウス幅σ）＋１（主方向）のパラメータが特徴量として抽出されることになる。なお、このような各特徴点の特徴量は、特徴点を中心として回転不変であるため、特に回転不変局所記述子とも称される。
【０３３６】
［特徴点ペアリング部の構成例］
次に、図２８を参照して、特徴点ペアリング部１５３の構成について説明する。
【０３３７】
特徴量バッファ２３１は、特徴量抽出部１５２から供給された特徴量を特徴点に対応付けて一旦記録する。主方向抽出部２３２は、特徴量バッファ２３１に記録されている特徴点の特徴量ごとに、主方向αの情報を抽出し、特徴点の情報とともに同一主方向特徴量検索部２３３に供給する。
【０３３８】
同一主方向特徴量検索部２３３は、主方向抽出部２３２から供給された主方向αの情報に基づいて、特徴点（注目画素）の主方向αに対して、主方向の角度が所定の角度（α−φ）乃至角度（α＋φ）の範囲内である他の特徴点のうち、注目画素から最も近い位置にある特徴点をペアリング特徴点として検索する。そして、同一主方向特徴量検索部２３３は、注目画素とされている特徴点とペアリング特徴点とを特徴量合成部２３４に供給する。
【０３３９】
例えば、図２９に示すように、特徴点Ｖ１乃至特徴点Ｖ６が存在するものとする。なお、図２９においては、各特徴点Ｖ１乃至特徴点Ｖ６から伸びている矢印が各特徴点における主方向であるものとする。注目画素となる特徴点Ｖ１における主方向αに対して、主方向が、角度（α−φ）乃至角度（α＋φ）の範囲内である特徴点は、特徴点Ｖ５である。したがって、図２９において、同一主方向特徴量検索部２３３は、特徴点Ｖ１と、特徴点Ｖ１のペアリング特徴点としての特徴点Ｖ５とを特徴量合成部２３４に供給する。同一主方向特徴量検索部２３３は、特徴点ごとに、ペアリング特徴点を抽出して、特徴量合成部２３４に供給する。
【０３４０】
特徴量合成部２３４は、同一主方向特徴量検索部２３３から供給された各特徴点と、そのペアリング特徴点との特徴量を特徴量バッファ２３１から読み出して合成し、ペアリング特徴量とする。特徴量合成部２３４は、得られたペアリング特徴量を学習用モデル特徴量として、学習用モデル特徴量記録部１５４に記録させる。
【０３４１】
すなわち、特徴点ペアリング部１５３は、図２９の特徴点Ｖ１の特徴量を、特徴点Ｖ１における特徴量と、特徴点Ｖ１の主方向αに対して、主方向が角度α±φの範囲である特徴点であって、最も近い位置に存在する特徴点Ｖ５における特徴量とを併せたものとする。したがって、特徴点１点についてｎ次導関数Ｆｎ（θ）のフィルタにより得られるパラメータが１８１個であるので、特徴点がペアリングされることにより各特徴点の特徴量（ペアリング特徴量）のパラメータは３６２個となる。つまり、ここでは、各特徴点における主方向という幾何学的な弱い拘束により決定される２個の特徴点の特徴量が、１個の特徴点の特徴量（ペアリング特徴量）として扱われることになる。
【０３４２】
結果として、学習用モデル特徴量記録部１５４には、各特徴点について３６２個のパラメータからなる特徴量が学習用モデル特徴量として記録されることになる。
【０３４３】
なお、上述したように、特徴点抽出部１５５乃至特徴点ペアリング部１５７については、特徴点抽出部１５１乃至特徴点ペアリング部１５３と同様の構成となっている。特徴点抽出部１５１乃至特徴点ペアリング部１５３では、認識対象物体を含んだ画像からなる学習用モデル画像が対象とされるのに対して、特徴点抽出部１５５乃至特徴点ペアリング部１５７では、認識対象物体を含む画像と、含まない画像からなる学習用入力画像に対して同様の処理が行われる。
【０３４４】
［特徴量選択部の構成例］
次に、図３０を参照して、特徴量選択部１５８の構成について説明する。
【０３４５】
ペアリング特徴量記録部２６１は、特徴点ペアリング部１５７から供給された学習用入力画像から抽出されたペアリング特徴量を特徴点毎に一時的に記録する。相関係数生成部２６２は、学習用モデル特徴量記録部１５４に記録されているペアリング特徴量ごとに、ペアリング特徴量記録部２６１に記録されている各ペアリング特徴量との相関係数を生成し、最大相関係数探索部２６３に供給する。
【０３４６】
より具体的には、ペアリング特徴量が、ｎ次元のパラメータから構成される場合（今の場合、ｎ＝３６２である）、各特徴点における特徴量は、ｎ次元のベクトルであるとみなすことができる。
【０３４７】
例えば、学習用モデル特徴量記録部１５４にＮ個の特徴点（複数の学習用モデル画像の特徴点）に対応するＮ個のペアリング特徴量（学習用モデル特徴量）が記録されているとする。また、ペアリング特徴量記録部２６１にＳ個の特徴点（１個の学習用入力画像の特徴点）に対応するＳ個のペアリング特徴量（学習用入力特徴量）が記録されているとする。
【０３４８】
このような場合、相関係数生成部２６２は、学習用モデル特徴量であるＮ個のｎ次元のベクトルｇｉ（ｉ＝１，２，３，・・・Ｎ）のそれぞれに対して、学習用入力特徴量であるＳ個のｎ次元のベクトルｈｊ（ｊ＝１，２，３，・・・Ｓ）との内積を求める。そして、相関係数生成部２６２は、ベクトルｇｉ，ｈｊのそれぞれの長さの積で除することにより相関係数を計算し、それぞれ最大相関係数探索部２６３に供給する。すなわち、学習用モデル特徴量であるＮ個のベクトルｇｉのそれぞれについて、学習用入力特徴量であるＳ個のベクトルｈｊのそれぞれとの相関係数Ｄｉｊが求められることになる。
【０３４９】
相関係数は、具体的には（ベクトルｇｉ・ベクトルｈｊ）／（｜ベクトルｇｉ｜×｜ベクトルｈｊ｜）で表される。ここで、「（ベクトルｇｉ・ベクトルｈｊ）」はベクトルｇｉとベクトルｈｊとの内積を示し、「｜ベクトルｇｉ｜」および「｜ベクトルｈｊ｜」は、それぞれベクトルｇｉおよびベクトルｈｊの絶対値を示している。
【０３５０】
最大相関係数探索部２６３は、相関係数生成部２６２から供給された相関係数のうち、学習用モデル特徴量ごとに（ベクトルｇｉごとに）、最大の相関係数Ｄｉｊとなるものを探索し、探索結果を選択部２６４に供給する。
【０３５１】
選択部２６４は、最大相関係数探索部２６３から供給された各学習用モデル特徴量の最大の相関係数Ｄｉｊを構成する学習用入力特徴量（ベクトルｈｊ）を選択し、識別器生成部１５９に供給する。すなわち、今の場合、学習用モデル特徴量がＮ個である（ベクトルｇｉ（ｉ＝１，２，３，・・・Ｎ））ことが前提であるので、１個の学習用入力画像につき、Ｎ個の学習用モデル特徴量のそれぞれに対して、最も相関の高い学習用入力特徴量が選択されることになる。換言すれば、ベクトルｇｉ（ｉ＝１，２，３，・・・Ｎ）について、最も相関の高いベクトルｈｊが選択されることになる。
【０３５２】
［識別器生成部の構成例］
次に、図３１を参照して、識別器生成部１５９の構成について説明する。なお、上述した特徴量選択部１５８により１個の学習用入力画像毎にＮ個の学習用入力特徴量が選択される。そのため、複数のＭ個の学習用入力画像が用いられた場合、識別器生成部１５９にはＭ個の学習用入力画像ごとに、Ｎ個の学習用モデル特徴量のそれぞれについて、最も相関の高い学習用入力特徴量が供給されてくることになる。換言すれば、Ｍ個の学習用入力画像毎に、Ｎ個の学習用モデル特徴量のそれぞれに対して最も相関の高い学習用入力特徴量をパラメータとしたＮ次元のベクトルが生成されていることになる。
【０３５３】
識別器生成部１５９は、サンプリング部２９１、重み設定部２９２、並び替え部２９３、識別器設定部２９４、識別器選択部２９５、および重み更新部２９６から構成され、識別器設定部２９４は、誤り率計算部２９４ａを備えている。
【０３５４】
なお、サンプリング部２９１乃至識別器設定部２９４、および重み更新部２９６は、図１０のサンプリング部６１乃至識別器設定部６４、および重み更新部６６と同様であるので、その説明は省略する。ここで、識別器設定部２９４では、Ｎ個の学習用入力特徴量に応じたＮ個の弱識別器が設定され、Ｎ個のそれぞれについて誤り率が求められることになる。
【０３５５】
識別器選択部２９５は、Ｎ個の弱識別器のうち、誤り率が最小となる弱識別器を選択して、識別器記録部１３４に記録させると共に、弱識別器に対応する学習用モデル特徴量を学習用モデル特徴量記録部１５４から読み出し、認識用特徴量記録部１３３に記録させる。さらに、識別器選択部２９５は、選択した弱識別器の誤り率に基づいて信頼度を計算し、重み更新部２９６に供給する。
【０３５６】
［学習処理の説明］
次に、図３２のフローチャートを参照して、学習装置１３１による学習処理について説明する。
【０３５７】
ステップＳ１８１において、特徴点抽出部１５１は、入力される複数の学習用モデル画像から、特徴点としてハリスコーナ点などを抽出し、特徴量抽出部１５２に供給する。
【０３５８】
ステップＳ１８２において、特徴量抽出部１５２は、学習用モデル画像特徴量抽出処理を実行し、供給された特徴点における特徴量を各学習用モデル画像から抽出し、特徴点ペアリング部１５３に供給する。
【０３５９】
ここで、図３３のフローチャートを参照して、特徴量抽出部１５２による学習用モデル画像特徴量抽出処理について説明する。
【０３６０】
ステップＳ２１１において、インテグラルイメージ生成部２０２は、供給された学習用モデル画像に基づいて、学習用モデル画像のインテグラルイメージを生成し、インテグラルイメージ記録部２０３に供給する。インテグラルイメージ記録部２０３は、インテグラルイメージ生成部２０２から供給されたインテグラルイメージを一時的に記録する。
【０３６１】
ステップＳ２１２において、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、および主方向計算部２０７は、それぞれ特徴点抽出部１５１から供給された特徴点の情報のうち、未処理の特徴点を注目画素として選択する。
【０３６２】
ステップＳ２１３において、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、および主方向計算部２０７は、注目画素に対応する参照画素を抽出する。すなわち、上述した注目画素Ｊ１に対して、図２７の画素Ｊ２乃至画素Ｊ５が参照画素として抽出される。つまり、この場合、注目画素を含む５画素が処理対象画素として抽出されることになる。
【０３６３】
ステップＳ２１４において、１次フィルタ処理部２０４、２次フィルタ処理部２０５、および３次フィルタ処理部２０６は、注目画素および参照画素からなる処理対象画素のうち未処理の処理対象画素を選択する。
【０３６４】
ステップＳ２１５において、方向θを示すカウンタｑが１に初期化される。従って、この時点では、方向θｑは方向θ１となる。
【０３６５】
ステップＳ２１６において、ガウス幅σを示すカウンタｐが１に初期化される。従って、この時点では、ガウス幅σｐはガウス幅σ１となる。
【０３６６】
ステップＳ２１７において、１次フィルタ処理部２０４は、１次フィルタ処理を行う。すなわち、１次フィルタ処理部２０４は、フィルタ記録部２０１から取得した１次導関数Ｆ１（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑとする。そして、１次フィルタ処理部２０４は、インテグラルイメージ記録部２０３に記録されたインテグラルイメージを参照しながら、学習用モデル画像上の処理対象画素に対して、１次導関数Ｆ１（θｑ）のフィルタを用いたフィルタ処理を行う。１次フィルタ処理部２０４は、フィルタ処理により得られた特徴量を特徴量生成部２０８に供給する。
【０３６７】
ステップＳ２１８において、２次フィルタ処理部２０５は、２次フィルタ処理を行う。
【０３６８】
すなわち、２次フィルタ処理部２０５は、フィルタ記録部２０１から取得した２次導関数Ｆ２（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑとする。そして、２次フィルタ処理部２０５は、インテグラルイメージ記録部２０３に記録されたインテグラルイメージを参照しながら、学習用モデル画像上の処理対象画素に対して、２次導関数Ｆ２（θｑ）のフィルタを用いたフィルタ処理を行う。２次フィルタ処理部２０５は、フィルタ処理により得られた特徴量を特徴量生成部２０８に供給する。
【０３６９】
ステップＳ２１９において、３次フィルタ処理部２０６は、３次フィルタ処理を行う。
【０３７０】
すなわち、３次フィルタ処理部２０６は、フィルタ記録部２０１から取得した３次導関数Ｆ３（θ）のフィルタにおけるガウス幅σをσｐとするとともに、方向θをθｑとする。そして、３次フィルタ処理部２０６は、インテグラルイメージ記録部２０３に記録されたインテグラルイメージを参照しながら、学習用モデル画像上の処理対象画素に対して、３次導関数Ｆ３（θｑ）のフィルタを用いたフィルタ処理を行う。３次フィルタ処理部２０６は、フィルタ処理により得られた特徴量を特徴量生成部２０８に供給する。
【０３７１】
なお、ステップＳ２１７乃至ステップＳ２１９において、処理対象となる画素は、ステップＳ２１４において選択された画素である。このように、特徴量の抽出に、インテグラルイメージと矩形フィルタを用いることで、より簡単かつ迅速に特徴量を抽出することができるようになる。
【０３７２】
ステップＳ２２０において、ガウス幅σｐがσ３であるか否かが判定され、ガウス幅σｐがσ３ではないと判定された場合、ステップＳ２２１において、カウンタｐは、１インクリメントされ、処理はステップＳ２１７に戻る。
【０３７３】
また、ステップＳ２２０において、ガウス幅σｐがσ３であると判定された場合、処理は、ステップＳ２２２に進む。
【０３７４】
ステップＳ２２２において、方向θｑが方向θ４であるか否かが判定され、方向θｑが方向θ４ではないと判定された場合、ステップＳ２２３において、カウンタｑは１インクリメントされ、処理はステップＳ２１６に戻る。
【０３７５】
また、ステップＳ２２２において、方向θｑが方向θ４であると判定された場合、処理はステップＳ２２４に進む。
【０３７６】
ステップＳ２２４において、１次フィルタ処理部２０４、２次フィルタ処理部２０５、および３次フィルタ処理部２０６は、注目画素および参照画素の全てについて、特徴量が抽出される処理がなされたか否かを判定する。ステップＳ２２４において、まだ、注目画素および参照画素の全てにおいて、処理がなされていないと判定された場合、処理はステップＳ２１４に戻り、上述した処理が繰り返される。
【０３７７】
一方、ステップＳ２２４において、注目画素および参照画素の全てにおいて処理がなされたと判定された場合、処理はステップＳ２２５に進む。
【０３７８】
ステップＳ２２５において、主方向計算部２０７は、インテグラルイメージ記録部２０３に記録されているインテグラルイメージを参照して、注目画素（特徴点）における主方向αを計算し、特徴量生成部２０８に供給する。
【０３７９】
例えば主方向計算部２０７は、フィルタ記録部２０１から取得した１次導関数Ｆ１（θ）のフィルタのガウス幅σをσ３とし、注目画素に対して１次導関数Ｆ１（０°）と１次導関数Ｆ１（９０°）のフィルタを用いたフィルタ処理を行うことで、主方向αを求める。
【０３８０】
ステップＳ２２６において、特徴量生成部２０８は、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、および主方向計算部２０７から供給された特徴量を合成し、１個の特徴点に対する特徴量を生成する。
【０３８１】
ステップＳ２２７において、１次フィルタ処理部２０４、２次フィルタ処理部２０５、３次フィルタ処理部２０６、および主方向計算部２０７は、全ての特徴点について処理が終了したか否かを判定する。ステップＳ２２７において、まだ全ての特徴点について処理が終了していないと判定された場合、処理は、ステップＳ２１２に戻り、上述した処理が繰り返される。
【０３８２】
これに対して、ステップＳ２２７において、全ての特徴点について処理が終了したと判定された場合、学習用モデル画像特徴量抽出処理は終了し、その後、処理は図３２のステップＳ１８３に進む。以上の処理により、複数の認識対象を含む画像における特徴点の特徴量が抽出されたことになる。
【０３８３】
ここで、図３２のフローチャートの説明に戻る。
【０３８４】
ステップＳ１８３において、特徴点ペアリング部１５３は、ステップＳ１８２の学習用モデル画像特徴量抽出処理により、複数の学習用モデル画像の特徴点から抽出された特徴量の情報を用いて、学習用モデル画像特徴量ペアリング処理を実行する。この学習用モデル画像特徴量ペアリング処理により、各特徴点の特徴量と、各特徴点の主方向の条件に基づいたペアリング特徴点の特徴量とがペアリング（合成）され、ペアリング特徴量が生成される。
【０３８５】
ここで、図３４のフローチャートを参照して、特徴点ペアリング部１５３による学習用モデル画像特徴量ペアリング処理について説明する。
【０３８６】
ステップＳ２５１において、特徴量バッファ２３１は、特徴量抽出部１５２から供給された特徴量を特徴点に対応付けて記録する。
【０３８７】
ステップＳ２５２において、主方向抽出部２３２は、特徴量バッファ２３１に記録された各特徴点の特徴量から主方向の情報を抽出し、同一主方向特徴量検索部２３３に供給する。
【０３８８】
ステップＳ２５３において、同一主方向特徴量検索部２３３は、処理対象とする未処理の特徴点の主方向の情報を決定する。
【０３８９】
ステップＳ２５４において、同一主方向特徴量検索部２３３は、処理対象として決定した未処理の特徴点の主方向と同一の主方向の特徴点を１個検索し、検索結果となる特徴点と、処理対象の特徴点とを特徴量合成部２３４に供給する。より詳細には、同一主方向特徴量検索部２３３は、処理対象として決定した未処理の特徴点の主方向が角度αである場合、その他の特徴点の主方向α’がα−φ＜α’＜α＋φの範囲であるとき、同一主方向の特徴点とみなす。
【０３９０】
なお、複数の同一主方向の特徴点が検索された場合、処理対象とする特徴点から最も近い位置に存在する特徴点が検索される。また、主方向α’が、α−φ＜α’＜α＋φの範囲となる特徴点が検索されない場合、同一主方向特徴量検索部２３３は、主方向α’が、α−φ＜α’＜α＋φの範囲に最も近い特徴点を検索する。
【０３９１】
ステップＳ２５５において、特徴量合成部２３４は、処理対象となっている特徴点の特徴量と、処理対象となっている特徴点と主方向が同一の特徴点の特徴量とを合成し、処理対象となっている特徴点の特徴量（ペアリング特徴量）とする。特徴量合成部２３４は、得られたペアリング特徴量を学習用モデル特徴量記録部１５４に供給する。
【０３９２】
ステップＳ２５６において、同一主方向特徴量検索部２３３は、処理対象とする未処理の特徴点があるか否かを判定し、未処理の特徴点があると判定された場合、処理はステップＳ２５３に戻る。
【０３９３】
一方、ステップＳ２５６において、未処理の特徴点がないと判定された場合、学習用モデル画像特徴量ペアリング処理は終了し、処理は図３２のステップＳ１８４に進む。
【０３９４】
以上の処理により、全ての特徴点の特徴量と、全ての特徴点における同一主方向の特徴点の特徴量とがペアリングされる。結果として、各特徴点における特徴量には、特徴点における主方向に応じた特徴量が付加されることになるため、特徴点毎に特徴量に幾何学的な弱い拘束が付加されることになる。
【０３９５】
ここで、図３２のフローチャートの説明に戻る。
【０３９６】
ステップＳ１８４において、学習用モデル特徴量記録部１５４は、特徴点ペアリング部１５３から供給された特徴点ごとに、特徴点の特徴量と、主方向に基づいてペアリングされた特徴点の特徴量とが合成されたペアリング特徴量を記録する。
【０３９７】
ステップＳ１８１乃至Ｓ１８４の処理により、複数の学習用モデル画像における特徴点のペアリング特徴量が、学習用モデル特徴量記録部１５４に記録されることになる。
【０３９８】
ステップＳ１８５において、特徴点抽出部１５５は、入力される学習用入力画像から、特徴点としてハリスコーナ点などを抽出し、特徴量抽出部１５６に供給する。
【０３９９】
ステップＳ１８６において、特徴量抽出部１５６は、学習用入力画像特徴量抽出処理を実行し、供給された特徴点における特徴量を各学習用入力画像から抽出して、特徴点ペアリング部１５７に供給する。なお、学習用入力画像特徴量抽出処理は、図３３の学習用モデル画像特徴量抽出処理と同様であるので、その説明は省略する。
【０４００】
ステップＳ１８７において、特徴点ペアリング部１５７は、学習用入力画像特徴量ペアリング処理を実行し、主方向が同一で、かつ距離の近い位置に存在する２個の特徴点における特徴量をペアリングしてペアリング特徴量を生成し、特徴量選択部１５８に供給する。
【０４０１】
なお、学習用入力画像特徴量ペアリング処理は、図３４の学習用モデル画像特徴量ペアリング処理と同様であるので、その説明は省略する。
【０４０２】
ステップＳ１８８において、特徴量選択部１５８は特徴量選択処理を実行し、各学習用入力画像について、学習用モデル特徴量ごとに学習用入力特徴量（何れもペアリング特徴量）を選択して識別器生成部１５９に供給する。なお、ステップＳ１８６乃至Ｓ１８８の処理については、何れの処理においても、処理結果は、学習用入力画像ごとに区別されて出力される。
【０４０３】
ここで、図３５のフローチャートを参照して、特徴量選択処理について説明する。
【０４０４】
ステップＳ２７１において、ペアリング特徴量記録部２６１は特徴点ペアリング部１５７から供給された、学習用入力画像から抽出されたペアリング特徴量を、各学習用入力画像の全ての特徴点について一時的に取得し、記録する。
【０４０５】
ステップＳ２７２において、相関係数生成部２６２は、ペアリング特徴量記録部２６１に記録された学習用入力特徴量に対応する学習用入力画像のうち、未処理の学習用入力画像を選択する。
【０４０６】
ステップＳ２７３において、相関係数生成部２６２は、学習用モデル特徴量記録部１５４に記録されている未処理の学習用モデル特徴量を読み出す。
【０４０７】
ステップＳ２７４において、相関係数生成部２６２は、ステップＳ２７２の処理で選択された学習用入力画像の学習用入力特徴量のうち、未処理の学習用入力特徴量（ペアリング特徴量）を選択する。
【０４０８】
ステップＳ２７５において、相関係数生成部２６２は、ステップＳ２７３の処理で選択された学習用モデル特徴量と、ステップＳ２７４の処理で選択された学習用入力画像における学習用入力特徴量との相関係数を生成し、最大相関係数探索部２６３に供給する。
【０４０９】
ステップＳ２７６において、相関係数生成部２６２は、ステップＳ２７２の処理で選択された学習用入力画像における学習用入力特徴量のうち、未処理の学習用入力特徴量が存在するか否かを判定し、存在する場合、処理はステップＳ２７４に戻る。
【０４１０】
ステップＳ２７６において、未処理の学習用入力特徴量がないと判定された場合、処理はステップＳ２７７に進む。ステップＳ２７７において、最大相関係数探索部２６３は、相関係数生成部２６２から供給された相関係数のうち最大相関係数を探索し、選択部２６４に供給する。選択部２６４は、最大相関係数となるペアリング特徴量を、ペアリング特徴量記録部２６１から取得する。
【０４１１】
ステップＳ２７８において、相関係数生成部２６２は、未処理の学習用モデル特徴量が学習用モデル特徴量記録部１５４に記録されているか否かを判定し、例えば、未処理の学習用モデル特徴量があると判定された場合、処理はステップＳ２７３に戻る。
【０４１２】
ステップＳ２７８において、未処理の学習用モデル特徴量が学習用モデル特徴量記録部１５４に記録されていないと判定された場合、ステップＳ２７９において、相関係数生成部２６２は、未処理の学習用入力画像があるか否かを判定する。
【０４１３】
ステップＳ２７９において、未処理の学習用入力画像があると判定された場合、処理はステップＳ２７２に戻り、上述した処理が繰り返される。
【０４１４】
ステップＳ２７９において、未処理の学習用入力画像がないと判定された場合、特徴量選択処理は終了し、その後、処理は図３２のステップＳ１８９に進む。以上の処理により、学習用入力画像１個ごとに、学習用モデル特徴量記録部１５４に記録されている学習用モデル特徴量のそれぞれに最も相関の高い学習用入力特徴量が抽出されることになる。
【０４１５】
すなわち、例えば、学習用モデル特徴量記録部１５４に、図３６の上部で示されるようにＸ個の学習用モデル画像ＰＭ１乃至ＰＭｘのそれぞれの特徴点より抽出されるＮ個のモデル特徴量が記録されているものとする。ここで、認識しようとする対象物体は、学習用モデル画像ＰＭ１乃至ＰＭｘの全ての画像に含まれている自動車の画像である。
【０４１６】
特徴量選択処理により、例えば図３６の下部で示されるＭ個の学習用入力画像ＰＩ１乃至ＰＩＭのそれぞれについて、特徴点毎に最も相関の高いＮ個の入力特徴量のベクトル（Ａ１，Ａ２，・・・ＡＮ），（Ｂ１，Ｂ２，・・・ＢＮ），・・・，（Ｍ１，Ｍ２，・・・ＭＮ）が構成され、識別器生成部１５９に出力されることになる。ここで、学習用入力画像ＰＩ１乃至ＰＩＭには、認識しようとする対象物体を含むものと含まないものが有り、図３６においては、認識しようとする対象物体を含む学習用入力画像ＰＩｉについては「＋１」と表記されており、認識しようとする対象物体を含まない学習用入力画像ＰＩｉについては「−１」と表記されている。
【０４１７】
ここで、図３２のフローチャートの説明に戻る。
【０４１８】
ステップＳ１８９において、識別器生成部１５９は、特徴量選択処理により選択された学習用入力特徴量を用いて、識別器生成処理を実行する。識別器生成処理により識別器が生成されると、生成された識別器が識別器記録部１３４に記録されると共に、生成された識別器を使用するための学習用モデル特徴量が読み出され、認識用特徴量として認識用特徴量記録部１３３に記録される。
【０４１９】
ここで、図３７のフローチャートを参照して、識別器生成部１５９による識別器生成処理について説明する。
【０４２０】
ステップＳ２９１において、重み設定部２９２は、例えば、図３６で示される学習用入力画像ＰＩｉ毎の重みＷｉを全て１／Ｍに初期化すると共に、カウンタｊを１に、識別器Ｈ（ｘ）を０にそれぞれ初期化する。ここで、ｉは、図３６における学習用入力画像ＰＩｉを識別するものであり、１＜ｉ＜Ｍである。
【０４２１】
ステップＳ２９２において、サンプリング部２９１は、学習用モデル特徴量が抽出される特徴点ｋ（ｋ＝１，２，３，・・・Ｎ）毎に、学習用入力画像ＰＩｉの重みＷｉに応じて学習用入力特徴量をＭ個選択し、並び替え部２９３に供給する。
【０４２２】
例えば、図１８における例と同様に、特徴点ｋの学習用入力特徴量は、グループＧｒｋを構成する（Ａｋ，Ｂｋ，Ｃｋ，・・・Ｍｋ）である。サンプリング部２９１は、特徴点ｋ毎に、各学習用入力画像ＰＩｉに設定された重みに応じて、学習用入力特徴量をＭ個抽選で抽出する。
【０４２３】
ステップＳ２９３において、並び替え部２９３は、Ｎ個の特徴点のそれぞれについてサンプリングされたＭ個の特徴量のグループＧｒｋ毎に、学習用入力特徴量を昇べきの順、または降べきの順に並び替えて、識別器設定部２９４に供給する。
【０４２４】
ステップＳ２９４において、識別器設定部２９４は、学習用入力特徴量が抽出された学習用入力画像に認識しようとする対象物体が含まれている画像であるか否かを示す情報に基づいて、特徴点ｋ毎に、閾値を変化させながら誤り率計算部２９４ａを制御して、誤り率ｅｊｋを計算させ、誤り率ｅｊｋが最小となるように閾値を設定する。なお、誤り率ｅｊｋは、上述した式（２７）と同様の計算により求められる。
【０４２５】
ここで、特徴点ｋ毎の閾値ｔｈｊｋが、１個の弱識別器ｆｊｋとなる。識別器設定部２９４は、弱識別器毎の誤り率ｅｊｋを識別器選択部２９５に供給する。すなわち、各特徴点ｋに対して弱識別器ｆｊｋが設定され、Ｎ個の弱識別器ｆｊｋのそれぞれについて誤り率ｅｊｋが求められることになる。ここで、弱識別器ｆｊｋは、認識しようとする対象物体を含む場合「＋１」を出力し、認識しようとする対象物体を含まない場合「−１」を出力する関数である。
【０４２６】
ステップＳ２９５において、識別器選択部２９５は、Ｎ個の弱識別器ｆｊｋのうち、誤り率ｅｊｋが最小となる弱識別器ｆｊｋを選択する。
【０４２７】
ステップＳ２９６において、識別器選択部２９５は、選択した弱識別器ｆｊｋの誤り率ｅｊｋ（＝ｅｊ）に基づいて、上述した式（２８）と同様の演算を行なって信頼度ｃｊを計算し、計算結果を重み更新部２９６に供給する。
【０４２８】
ステップＳ２９７において、重み更新部２９６は、供給された信頼度ｃｊに基づいて、上述した式（２９）と同様の演算を行なって、学習用入力画像毎に重みＷｉを再計算すると共に、全ての重みＷｉを正規化して更新し、更新結果を重み設定部２９２に供給する。重み設定部２９２は、重み更新部２９６から供給された重みの更新結果に基づいて、学習用入力画像毎の重みを設定する。
【０４２９】
ステップＳ２９８において、識別器選択部２９５は、新たに求められた弱識別器ｆｊｋ（以下、弱識別器ｆｊとも称する）を用いて、識別器記録部１３４が記録している識別器Ｈ（ｘ）を更新する。すなわち、識別器選択部２９５は、次式（３３）を計算することで識別器Ｈ（ｘ）を更新する。
【０４３０】
Ｈ（ｘ）＝Ｈ’（ｘ）＋ｃｊ×ｆｊ（ｘ）      ・・・（３３）
【０４３１】
なお、式（３３）において、Ｈ’（ｘ）は、識別器記録部１３４が記録している更新前の識別器を表しており、ｆｊ（ｘ）は、新たに求められた弱識別器ｆｊを表している。
【０４３２】
また、より詳細には、識別器記録部１３４には、sign（Ｈ（ｘ））の形式で、識別器Ｈ（ｘ）が記録されている。ここで、sign（Y）は、Ｙが正の場合、認識しようとする対象物体が、入力画像中に存在することを示す「＋１」を出力し、Ｙが負の場合、認識しようとする対象物体が、入力画像中に存在しないことを示す「−１」を出力する関数である。
【０４３３】
ステップＳ２９９において、識別器選択部２９５は、弱識別器ｆｊｋの特徴点ｋに対応する学習用モデル特徴量を学習用モデル特徴量記録部１５４から読み出し、認識用特徴量記録部１３３に記録させる。
【０４３４】
ステップＳ３００において、識別器選択部２９５は、カウンタｊがＬより大きいか否かを判定し、Ｌよりも大きくないと判定された場合、処理はステップＳ３０１に進み、カウンタｊが１インクリメントされる。そして、その後、処理はステップＳ２９２に戻り、上述した処理が繰り返される。
【０４３５】
ステップＳ３００において、カウンタｊがＬよりも大きいと判定された場合、識別器生成処理は終了する。識別器生成処理が終了すると、図３２の学習処理も終了する。
【０４３６】
以上の処理により、Ｌ個の比較的誤り率の低い弱識別器ｆｊ（１＜ｊ＜Ｌ）からなる識別器Ｈ（ｘ）が識別器記録部１３４に記録されると共に、それぞれの弱識別器ｆｊで使用されるべき特徴点ｋの学習用モデル特徴量が認識用特徴量記録部１３３に記録される。ここで、Ｌは、Ｌ≦Ｎである。
【０４３７】
なお、識別器記録部１３４に、sign（Ｈ（ｘ））の形式で記録されている識別器は、Ｌ個の弱識別器の多数決により、認識しようとする対象物体の有無を出力する関数であると言える。
【０４３８】
以上の学習処理により、特徴点毎に幾何学的な拘束が付加された特徴量を用いて、誤り率ｅｊの低いＬ個の弱識別器ｆｊ（１＜ｊ＜Ｌ）からなる識別器Ｈ（ｘ）が生成されることになる。結果として、信頼度の高い弱識別器のみからなる識別器が構成されることになるので、限られた個数の弱識別器で信頼度の高い識別器を構成することが可能となり、後述する画像認識処理における演算処理量を低減させつつ、認識精度を向上させることが可能となる。
【０４３９】
さらに、学習の過程において使用される各特徴点の特徴量は、特徴点における回転不変な特徴量と、主方向が同一で、かつ最も近い位置の特徴点における特徴量とがペアリングされた特徴量である。そのため、空間的に弱い幾何学的な拘束を含んだ学習がなされることになり、例えば、認識対象となる物体が回転していたり、視点が異なるような画像であっても認識することが可能となる。
【０４４０】
［画像認識処理］
次に、図３８のフローチャートを参照して、画像認識装置１３２による画像認識処理について説明する。
【０４４１】
ステップＳ３２１において、特徴点抽出部１７１は、認識しようとする対象物体の有無を認識しようとする入力画像より、特徴点としてハリスコーナ点などを抽出し、特徴量抽出部１７２に供給する。
【０４４２】
ステップＳ３２２において、特徴量抽出部１７２は、入力画像特徴量抽出処理を実行し、供給された特徴点における特徴量を入力画像より抽出して、特徴点ペアリング部１７３に供給する。なお、入力画像特徴量抽出処理は、図３３の学習用モデル画像特徴量抽出処理と同様であるので、その説明は省略する。
【０４４３】
ステップＳ３２３において、特徴点ペアリング部１７３は、入力画像特徴量ペアリング処理を実行し、主方向の条件に応じて２個の特徴点における特徴量をペアリングして、ペアリング特徴量を生成する。なお、入力画像特徴量ペアリング処理は、図３４の学習用モデル画像特徴量ペアリング処理と同様であるので、その説明は省略する。
【０４４４】
ステップＳ３２４において、特徴量選択部１７４は、認識用特徴量記録部１３３に記録された特徴量を用いて、特徴量選択処理を実行して特徴量を選択し、識別計算部１７５に供給する。なお、特徴量選択処理は、学習用モデル特徴量記録部１５４に記録されている特徴量を用いる点と、認識用特徴量記録部１３３に記録された特徴量を用いる点で異なるが、その他の処理については、図３５の特徴量選択処理と同様であるので、その説明は、省略する。
【０４４５】
ステップＳ３２５において、識別計算部１７５は、識別器記録部１３４に記録されている識別器を読み出し、特徴量選択部１７４から供給された入力画像の特徴量に基づいて、識別器を計算する。すなわち、上述したように、特徴量選択部１７４から供給された特徴量（入力特徴量）は、識別器Ｈ（ｘ）を構成する弱識別器ｆｊの計算に必要な特徴量であるので、識別計算部１７５は、供給された特徴量を各弱識別器ｆｊに代入して識別器Ｈ（ｘ）を計算する。そして、識別計算部１７５は、識別器Ｈ（ｘ）の計算結果を識別結果出力部１７６に供給する。
【０４４６】
ステップＳ３２６において、識別結果出力部１７６は、識別計算部１７５から供給された計算結果に基づいて、認識しようとする対象物体の有無の判定結果を出力する。
【０４４７】
すなわち、識別計算部１７５より供給されてくる計算結果は、sign（Ｈ（ｘ））の演算結果である。したがって、演算結果として「＋１」が供給されてきた場合、認識しようとする対象物体が入力画像に含まれているという結果が出力される。また、演算結果として「−１」が供給されてきた場合、認識しようとする対象物体が入力画像に含まれていないという結果が出力される。
【０４４８】
以上の処理により、識別器Ｈ（ｘ）が用いられて、入力画像から対象物体が検出される。このように、学習により得られた識別器Ｈ（ｘ）を用いて対象物体の検出を行なうことで、より高い精度で対象物体を検出することが可能となる。
【０４４９】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０４５０】
図３９は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０４５１】
コンピュータにおいて、CPU（Central Processing Unit）５０１，ROM（Read Only Memory）５０２，RAM（Random Access Memory）５０３は、バス５０４により相互に接続されている。
【０４５２】
バス５０４には、さらに、入出力インターフェース５０５が接続されている。入出力インターフェース５０５には、キーボード、マウス、マイクロホンなどよりなる入力部５０６、ディスプレイ、スピーカなどよりなる出力部５０７、ハードディスクや不揮発性のメモリなどよりなる記録部５０８、ネットワークインターフェースなどよりなる通信部５０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５１１を駆動するドライブ５１０が接続されている。
【０４５３】
以上のように構成されるコンピュータでは、CPU５０１が、例えば、記録部５０８に記録されているプログラムを、入出力インターフェース５０５及びバス５０４を介して、RAM５０３にロードして実行することにより、上述した一連の処理が行われる。
【０４５４】
コンピュータ（CPU５０１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア５１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０４５５】
そして、プログラムは、リムーバブルメディア５１１をドライブ５１０に装着することにより、入出力インターフェース５０５を介して、記録部５０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部５０９で受信し、記録部５０８にインストールすることができる。その他、プログラムは、ROM５０２や記録部５０８に、あらかじめインストールしておくことができる。
【０４５６】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０４５７】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０４５８】
１１  学習装置，  １２  識別器記録部，  １３  認識装置，  ２５  輪郭特徴量計算部，  ３４  輪郭特徴量計算部，  ９１  フィルタ記録部，  ９２  インテグラルイメージ生成部，  ９４  主方向計算部，  ９５  １次フィルタ処理部，  ９６  ２次フィルタ処理部，  ９７  ３次フィルタ処理部，  １３１  学習装置，  １３２  画像認識装置，  １５２  特徴量抽出部，  １５６  特徴量抽出部，  １７２  特徴量抽出部，  ２０１  フィルタ記録部，  ２０２  インテグラルイメージ生成部，  ２０４  １次フィルタ処理部，  ２０５  ２次フィルタ処理部，  ２０６  ３次フィルタ処理部，  ２０７  主方向計算部
【図１】
2012089076.tif 000021
【図２】
2012089076.tif 000022
【図３】
2012089076.tif 000023
【図４】
2012089076.tif 000024
【図５】
2012089076.tif 000025
【図６】
2012089076.tif 000026
【図７】
2012089076.tif 000027
【図８】
2012089076.tif 000028
【図９】
2012089076.tif 000029
【図１０】
2012089076.tif 000030
【図１１】
2012089076.tif 000031
【図１２】
2012089076.tif 000032
【図１３】
2012089076.tif 000033
【図１４】
2012089076.tif 000034
【図１５】
2012089076.tif 000035
【図１６】
2012089076.tif 000036
【図１７】
2012089076.tif 000037
【図１８】
2012089076.tif 000038
【図１９】
2012089076.tif 000039
【図２０】
2012089076.tif 000040
【図２１】
2012089076.tif 000041
【図２２】
2012089076.tif 000042
【図２３】
2012089076.tif 000043
【図２４】
2012089076.tif 000044
【図２５】
2012089076.tif 000045
【図２６】
2012089076.tif 000046
【図２７】
2012089076.tif 000047
【図２８】
2012089076.tif 000048
【図２９】
2012089076.tif 000049
【図３０】
2012089076.tif 000050
【図３１】
2012089076.tif 000051
【図３２】
2012089076.tif 000052
【図３３】
2012089076.tif 000053
【図３４】
2012089076.tif 000054
【図３５】
2012089076.tif 000055
【図３６】
2012089076.tif 000056
【図３７】
2012089076.tif 000057
【図３８】
2012089076.tif 000058
【図３９】
2012089076.tif 000059