(57)【要約】【課題】  サンプル画像を用いて学習した複数の識別器が出力した基準値を用いて、識別対象画像に所定対象物が含まれるか否かを識別するに際し、識別器の設定を複雑にしたり、サンプル画像の種類を増やすことなく誤検出を少なくする。【解決手段】  識別対象画像に顔が含まれるか否かを識別するために多数のサンプル画像を用いて学習を行った識別器が出力した識別ポイントの総和を算出する。総和が顔が含まれると識別する第１の閾値Ｔｈ１より小さく、顔が含まれないと識別する第２の閾値Ｔｈ２より大きい場合に、識別ポイントの総和をあらかじめ分類した複数のカテゴリごとに算出し、カテゴリ別総和が第３の閾値Ｔｈ３以上となったカテゴリの数が第４の閾値Ｔｈ４以上の場合に、識別対象画像に顔が含まれると識別する。【選択図】          図１
2005250771.tif 000002
【特許請求の範囲】
【請求項１】
識別対象画像の入力を受け付ける画像入力手段と、
前記識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、所定対象物の識別に用いる少なくとも１つの特徴量を算出する特徴量算出手段と、
前記所定サイズの範囲内の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれにおいて算出した前記特徴量の入力により、前記所定対象物が含まれる前記識別対象画像と前記所定対象物が含まれない前記識別対象画像とを識別するための基準値を出力する、前記複数種類の画素群にそれぞれ対応する複数の識別器を備え、前記複数の識別器のそれぞれが、該複数の識別器のそれぞれに対応する画素群の前記所定サイズの範囲内の位置に応じて複数のカテゴリに分類されてなる識別手段であって、前記識別対象画像上の前記所定サイズの範囲における前記特徴量の入力を受け付け、該特徴量の入力により前記識別器が出力した前記基準値の前記複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和を算出し、該カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かを判定し、該判定が肯定された場合に、前記識別対象画像に前記所定対象物が含まれると識別する識別手段とを備えたことを特徴とする対象物識別装置。
【請求項２】
前記識別手段は、前記複数の識別器について、前記識別対象画像に前記所定対象物が含まれると識別する精度が高い順に前記基準値の重み付け総和を逐次算出して、該基準値の重み付け総和を算出した識別器の数に応じて定められる第１の閾値と前記基準値の重み付け総和とを該総和を算出する各段階において比較し、該基準値の重み付け総和が前記第１の閾値以下の場合には、前記カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定を行うことなく、前記識別対象画像に前記所定対象物は含まれないと識別し、前記基準値の重み付け総和が前記第１の閾値より大きい場合には、前記基準値の重み付け総和を算出する前記識別器の数を増やして前記第１の閾値と前記基準値の重み付け総和とを比較することをすべての識別器が出力した前記基準値の重み付け総和を算出するまで繰り返し、すべての識別器が出力した前記基準値の重み付け総和が前記第１の閾値よりも大きい第２の閾値以上の場合に前記識別対象画像に前記所定対象物が含まれると識別し、該基準値の重み付け総和が該第２の閾値よりも小さい第３の閾値以下の場合に前記識別対象画像に前記所定対象物が含まれないと識別し、該基準値の重み付け総和が前記第２の閾値より小さくかつ前記第３の閾値より大きい場合に、前記カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定を行う手段であることを特徴とする請求項１記載の対象物識別装置。
【請求項３】
前記識別器が、前記所定対象物であることが分かっている前記所定サイズを有する複数のサンプル画像と、前記所定対象物でないことが分かっている前記所定サイズを有する複数のサンプル画像とからなるサンプル画像群について、前記サンプル画像上の前記所定位置における画素の組み合わせからなる複数種類の画素群を設定し、該画素群のそれぞれを構成する画素において算出した特徴量をマシンラーニングの手法によりあらかじめ学習することにより得られてなることを特徴とする請求項１または２記載の対象物識別装置。
【請求項４】
前記少なくとも１つの特徴量は、画像上の各画素における勾配ベクトルの方向、該勾配ベクトルの大きさおよび色情報の少なくとも１つであることを特徴とする請求項１から３のいずれか１項記載の対象物識別装置。
【請求項５】
識別対象画像の入力を受け付け、
前記識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、所定対象物の識別に用いる少なくとも１つの特徴量を算出し、
前記所定サイズの範囲内の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれにおいて算出した前記特徴量の入力により、前記所定対象物が含まれる前記識別対象画像と前記所定対象物が含まれない前記識別対象画像とを識別するための基準値を出力する、前記複数種類の画素群にそれぞれ対応する複数の識別器を備え、前記複数の識別器のそれぞれが、該複数の識別器のそれぞれに対応する画素群の前記所定サイズの範囲内の位置に応じて複数のカテゴリに分類されてなる識別手段に対する、前記識別対象画像上の前記所定サイズの範囲における前記特徴量の入力を受け付け、
該特徴量の入力により前記識別器が出力した前記基準値の前記複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和を算出し、
該カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かを判定し、
該判定が肯定された場合に、前記識別対象画像に前記所定対象物が含まれると識別することを特徴とする対象物識別方法。
【請求項６】
識別対象画像の入力を受け付ける手順と、
前記識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、所定対象物の識別に用いる少なくとも１つの特徴量を算出する手順と、
前記所定サイズの範囲内の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれにおいて算出した前記特徴量の入力により、前記所定対象物が含まれる前記識別対象画像と前記所定対象物が含まれない前記識別対象画像とを識別するための基準値を出力する、前記複数種類の画素群にそれぞれ対応する複数の識別器を備え、前記複数の識別器のそれぞれが、該複数の識別器のそれぞれに対応する画素群の前記所定サイズの範囲内の位置に応じて複数のカテゴリに分類されてなる識別手段に対する、前記識別対象画像上の前記所定サイズの範囲における前記特徴量の入力を受け付ける手順と、
該特徴量の入力により前記識別器が出力した前記基準値の前記複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和を算出する手順と、
該カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かを判定する手順と、
該判定が肯定された場合に、前記識別対象画像に前記所定対象物が含まれると識別する手順とを有することを特徴とする対象物識別方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像に顔等の所定対象物が含まれるか否かを識別する対象物識別装置および方法並びに対象物識別方法をコンピュータに実行させるためのプログラムに関するものである。
【背景技術】
【０００２】
デジタルカメラにおいて取得した画像データや、フイルムに記録された画像を読み取ることにより取得した画像データを、プリント等のハードコピーとしてあるいはディスプレイ上にソフトコピーとして再現することが行われている。このような画像データにより表される画像は人物の顔が含まれることが多く、顔が適切な明るさや色を有するものとなるように画像データに対して明るさ、階調、色、シャープネス等を修正したり、赤目を修正する画像処理を施すことが行われている。このように画像データに対して画像処理を施す場合には、画像データにより表される画像から人物の顔に対応する顔領域を検出する必要がある。このため、画像に顔等の所定対象物が含まれるか否かを識別する各種方法が提案されている。
【０００３】
例えば非特許文献１は、顔を検出する際に用いられる特徴量である輝度値を正規化し、顔について学習を行ったニューラルネットワークの学習結果を参照して、画像に顔が含まれるか否かを識別する手法である。また非特許文献２は、画像中に含まれるエッジのような高周波成分を対象物の検出に使用する特徴量として求めてこの特徴量を正規化し、ブースティングと称されるマシンラーニング（machine learning）の手法を用いての特徴量についての学習結果を参照して、画像に対象物が含まれるか否かを識別する手法である。これら非特許文献１，２の手法は、顔等の対象物の検出に使用する特徴量を正規化しているため、画像に対象物が含まれるか否かを精度よく識別することができる。
【０００４】
また、所定対象物であることが分かっている複数のサンプル画像と、所定対象物でないことが分かっている複数のサンプル画像とからなる多数のサンプル画像群のそれぞれから算出された特徴量を、マシンラーニングの手法によりあらかじめ学習することにより得られた、特徴量の入力により所定対象物が含まれる識別対象画像と所定対象物が含まれない識別対象画像とを識別するための基準値を出力する複数の識別器を備え、この複数の識別から出力された基準値の重み付け総和があらかじめ定めた閾値を超えた場合に、識別対象画像に所定対象物が含まれると識別する手法が本出願人により提案されている（特許文献２〜４参照）。この特許文献２から４に記載された手法を用いることにより、例えば、サンプル画像として顔を学習させた場合には、識別対象画像に顔が含まれるか否かを良好に識別することができる。
【非特許文献１】Henry A. Rowley, Shumeet Baluja, and Takeo Kanada, "Neural Network-Based Face Detection", volume 20, number 1, pages 23-38, January 1998.
【非特許文献２】Rainer Lienhart, Jochen Maydt, "An Extended Set of Haar-like Features for Rapid Object Detection", International Conference on Image Processing.
【特許文献１】特開平５−２８２４５７号公報
【特許文献２】特願２００３−３１６９２４号
【特許文献３】特願２００３−３１６９２５号
【特許文献４】特願２００３−３１６９２６号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献２〜４の手法において、サンプル画像として顔の画像を用いた場合には、顔の一部が手で覆われていたり、笛を吹いている画像のように顔の部分に顔以外の異物を含む画像を識別対象画像とすると場合、その識別対象画像には顔が含まれないと判定してしまう。このため、顔の部分に顔以外の異物を含む画像をサンプル画像として用いて学習を行うことが考えられる。しかしながら、このように顔の部分に顔以外の異物を含む画像をサンプル画像として学習を行うと、顔でないのに顔と識別する誤検出が多くなってしまうという問題がある。また、識別器を学習により構成することなく人為的に設定する場合においても、その設定が複雑なものとなる。
【０００６】
本発明は上記事情に鑑みなされたものであり、識別器の設定を複雑にすることなく誤検出を少なくすることを第１の目的とする。
【０００７】
また、本発明は、サンプル画像の種類を増やすことなく誤検出を少なくすることを第２の目的とする。
【課題を解決するための手段】
【０００８】
本発明による対象物識別装置は、識別対象画像の入力を受け付ける画像入力手段と、
前記識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、所定対象物の識別に用いる少なくとも１つの特徴量を算出する特徴量算出手段と、
前記所定サイズの範囲内の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれにおいて算出した前記特徴量の入力により、前記所定対象物が含まれる前記識別対象画像と前記所定対象物が含まれない前記識別対象画像とを識別するための基準値を出力する、前記複数種類の画素群にそれぞれ対応する複数の識別器を備え、前記複数の識別器のそれぞれが、該複数の識別器のそれぞれに対応する画素群の前記所定サイズの範囲内の位置に応じて複数のカテゴリに分類されてなる識別手段であって、前記識別対象画像上の前記所定サイズの範囲における前記特徴量の入力を受け付け、該特徴量の入力により前記識別器が出力した前記基準値の前記複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和を算出し、該カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かを判定し、該判定が肯定された場合に、前記識別対象画像に前記所定対象物が含まれると識別する識別手段とを備えたことを特徴とするものである。
【０００９】
「所定対象物」とは、ほぼ一定形状をなしており、ほぼ一定の大きさとなるようにサイズを揃えることが可能な対象物が挙げられる。具体的には、人物の顔、車両および道路標識等を所定対象物とすることができる。
【００１０】
「特徴量」とは、画像の特徴を表すパラメータを指し、その画像における各画素の濃度勾配を表す勾配ベクトル、各画素の色情報（色相、彩度）、濃度、テクスチャーの特徴、奥行情報、その画像に含まれるエッジの特徴等、いかなる特徴を表すものであってもよい。
【００１１】
「基準値」とは、特徴量を指標とした、所定対象物とそうでない対象物とを識別する値を指す。
【００１２】
「カテゴリに分類する」とは、１つの識別器が１つのカテゴリにのみ分類されるものであってもよく、学習を行った特徴量を算出した画素群のサンプル画像上の位置によっては、１つの識別器が複数のカテゴリに分類されるものであってもよい。なお、各カテゴリに分類される識別器は少なくとも１つあればよい。
【００１３】
「カテゴリ別重み付け総和」には、すべての基準値に対して重みが１の総和も含む。
【００１４】
「所定数」は、所定対象物の検出精度、所定対象物の種類あるいは識別した画像の用途等に応じて定めればよい。
【００１５】
なお、本発明による対象物識別装置においては、前記識別手段を、前記複数の識別器について、前記識別対象画像に前記所定対象物が含まれると識別する精度が高い順に前記基準値の重み付け総和を逐次算出して、該基準値の重み付け総和を算出した識別器の数に応じて定められる第１の閾値と前記基準値の重み付け総和とを該総和を算出する各段階において比較し、該基準値の重み付け総和が前記第１の閾値以下の場合には、前記カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定を行うことなく、前記識別対象画像に前記所定対象物は含まれないと識別し、前記基準値の重み付け総和が前記第１の閾値より大きい場合には、前記基準値の重み付け総和を算出する前記識別器の数を増やして前記第１の閾値と前記基準値の重み付け総和とを比較することをすべての識別器が出力した前記基準値の重み付け総和を算出するまで繰り返し、すべての識別器が出力した前記基準値の重み付け総和が前記第１の閾値よりも大きい第２の閾値以上の場合に前記識別対象画像に前記所定対象物が含まれると識別し、該基準値の重み付け総和が該第２の閾値よりも小さい第３の閾値以下の場合に前記識別対象画像に前記所定対象物が含まれないと識別し、該基準値の重み付け総和が前記第２の閾値より小さくかつ前記第３の閾値より大きい場合に、前記カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定を行う手段としてもよい。
【００１６】
「重み付け総和」には、すべての基準値に対して重みが１の総和も含む。この場合、基準値の重み付け総和を算出する順序は、任意に設定すればよい。
【００１７】
また、本発明による対象物識別装置においては、前記識別器を、前記所定対象物であることが分かっている前記所定サイズを有する複数のサンプル画像と、前記所定対象物でないことが分かっている前記所定サイズを有する複数のサンプル画像とからなるサンプル画像群について、前記サンプル画像上の前記所定位置における画素の組み合わせからなる複数種類の画素群を設定し、該画素群のそれぞれを構成する画素において算出した特徴量をマシンラーニングの手法によりあらかじめ学習することにより得られてなるものとしてもよい。
【００１８】
「マシンラーニング（machine learning）」とは、計算機を使用してパターンの識別を行う識別器を生成する手法のことであり、機械による学習（機械学習）または単に学習と称される。マシンラーニングの手法としては、例えば、ニューラルネットワーク、サポートベクタマシン、最近傍識別器、およびブースティング等の手法が挙げられる。
【００１９】
また、本発明による対象物識別装置においては、前記少なくとも１つの特徴量は、画像上の各画素における勾配ベクトルの方向、該勾配ベクトルの大きさおよび色情報の少なくとも１つとしてもよい。
【００２０】
「勾配ベクトル」とは、画像の各画素における濃度が変化する方向および変化の大きさを表すものである。
【００２１】
本発明による対象物識別方法は、識別対象画像の入力を受け付け、
前記識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、所定対象物の識別に用いる少なくとも１つの特徴量を算出し、
前記所定サイズの範囲内の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれにおいて算出した前記特徴量の入力により、前記所定対象物が含まれる前記識別対象画像と前記所定対象物が含まれない前記識別対象画像とを識別するための基準値を出力する、前記複数種類の画素群にそれぞれ対応する複数の識別器を備え、前記複数の識別器のそれぞれが、該複数の識別器のそれぞれに対応する画素群の前記所定サイズの範囲内の位置に応じて複数のカテゴリに分類されてなる識別手段に対する、前記識別対象画像上の前記所定サイズの範囲における前記特徴量の入力を受け付け、
該特徴量の入力により前記識別器が出力した前記基準値の前記複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和を算出し、
該カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かを判定し、
該判定が肯定された場合に、前記識別対象画像に前記所定対象物が含まれると識別することを特徴とするものである。
【００２２】
なお、本発明による対象物識別方法をコンピュータに実行させるためのプログラムとして提供してもよい。
【発明の効果】
【００２３】
本発明によれば、識別対象画像上の所定サイズの範囲内の画素のそれぞれについて、少なくとも１つの特徴量が算出される。そして、識別対象画像上の所定サイズの範囲における特徴量の入力が受け付けられる。ここで、識別器は対応する画素群の所定サイズの範囲内の位置に応じて複数のカテゴリに分類されており、特徴量の入力により識別器が出力した基準値の複数のカテゴリごとの重み付け総和であるカテゴリ別重み付け総和が算出される。そして、カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上である場合に、識別対象画像に所定対象物が含まれると識別される。
【００２４】
ここで、すべての識別器から出力された基準値の重み付け総和が閾値を超えた場合に識別対象画像に所定対象物が含まれると識別する場合において、所定対象物の部分に所定対象物以外の異物を含む識別対象画像については、所定対象物を含まないと識別する可能性が高い。一方、所定対象物の部分に所定対象物以外の異物を含む場合にも所定対象物を含むと識別するように識別器を設定する場合には、その設定が煩雑なものとなる。さらに、所定対象物の部分に所定対象物以外の異物を含む画像をサンプル画像として用いて識別器の学習を行った場合は、所定対象物を含まないのに所定対象物を含むと識別する誤検出が多くなってしまうという問題がある。
【００２５】
本発明においては、カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上である場合に、識別対象画像に所定対象物が含まれると識別するようにしたため、所定対象物を含むがその一部が異物等により所定対象物と一致しなくなっている識別対象画像と、所定対象物を含まないにもかかわらず全体的に見ると所定対象物に類似しているが局所的には所定対象物とは一致しないような識別対象画像とを識別することができることとなる。したがって、識別器の設定を複雑にすることなく、さらには識別器をサンプル画像を用いて学習させる場合においては、学習するサンプル画像の種類を増やすことなく、識別対象画像に所定対象物が含まれるか否かを識別する際の誤検出を防止することができる。
【００２６】
また、請求項２の発明においては、複数の識別器について識別対象画像に所定対象物が含まれると識別する精度が高い順に基準値の重み付け総和が逐次算出されて、この算出の各段階において、基準値の重み付け総和を算出した識別器の数に応じて定められる第１の閾値と基準値の重み付け総和とが比較される。そして、基準値の重み付け総和が第１の閾値以下の場合には、カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定が行われることなく、識別対象画像に所定対象物は含まれないと識別される。一方、基準値の重み付け総和が第１の閾値より大きい場合には、基準値の重み付け総和を算出する識別器の数が増やされて第１の閾値と基準値の重み付け総和との比較がすべての識別器が出力した基準値の重み付け総和が算出されるまで繰り返される。そして、すべての識別器が出力した基準値の重み付け総和が第１の閾値よりも大きい第２の閾値以上の場合には、識別対象画像に所定対象物が含まれると識別され、基準値の重み付け総和が第２の閾値よりも小さい第３の閾値以下の場合には識別対象画像に所定対象物が含まれないと識別される。さらに、基準値の重み付け総和が第２の閾値より小さくかつ第３の閾値より大きい場合に、カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定が行われる。
【００２７】
ここで、識別対象画像に所定対象物が含まれない場合には、正答率が高い識別器が出力した基準値は、所定対象物が含まれる場合の基準値よりも低いものとなる。したがって、正答率が高い順に算出した、識別器が出力した基準値の重み付け総和が第１の閾値以下の場合に、直ちに識別対象画像に所定対象物が含まれないと識別することにより、識別対象画像に所定対象物が含まれない場合に、識別の処理の比較的早い段階において識別対象画像に所定対象物が含まれないと識別されるため、識別の処理を高速に行うことができる。
【００２８】
また、すべての識別器から出力された基準値の重み付け総和が第２の閾値以上の場合に識別対象画像に所定対象物が含まれると識別し、重み付け総和が第３の閾値以下の場合に識別対象画像に所定対象物が含まれないと識別し、重み付け総和が第２の閾値より小さくかつ第３の閾値より大きい場合に、カテゴリ別重み付け総和が所定の閾値以上となったカテゴリの数が所定数以上であるか否かの判定を行うようにすれば、識別対象画像に所定対象物が含まれるか否かが明確でない場合に、カテゴリ別重み付け総和が所定の閾値を超えたカテゴリの数が所定数以上であるか否かの判定が行われるため、識別対象画像に所定対象物が含まれるか否かを識別する際の誤検出を確実に防止することができる。
【００２９】
また、識別器をマシンラーニングの手法によりあらかじめ学習することにより得られたものとすることにより、所定対象物の識別性能をより向上させることができる。
【００３０】
また、少なくとも１つの特徴量を画像上の各画素における勾配ベクトルの方向、大きさおよび色情報の少なくとも１つとすることにより、識別対象画像に含まれる比較的算出しやすい特徴量を用いて精度よく構成部品の位置を識別できる。
【発明を実施するための最良の形態】
【００３１】
以下、図面を参照して本発明の実施形態について説明する。図１は本発明の実施形態による対象物識別装置の構成を示す概略ブロック図である。図１に示すように、本実施形態による対象物識別装置１は、識別対象画像を表す識別対象画像データＳ０の入力を受け付ける画像入力部２、識別対象画像データＳ０により表される識別対象画像（以下画像についても参照符号Ｓ０を用いる）Ｓ０から特徴量Ｃ１を算出する特徴量算出部４、後述する参照データＲ１が格納されているメモリ６、特徴量算出部４が算出した特徴量Ｃ１とメモリ６内の参照データＲ１とに基づいて、識別対象画像Ｓ０に所定対象物である人物の顔が含まれているか否かを識別する識別部８、並びに識別部８による識別結果を出力する出力部１０とを備える。
【００３２】
特徴量算出部４は、顔の識別に用いる特徴量Ｃ１を識別対象画像Ｓ０から算出する。具体的には、特徴量Ｃ１として、識別対象画像Ｓ０の勾配ベクトル（すなわち方向および大きさ）を算出する。以下、勾配ベクトルの算出について説明する。まず、特徴量算出部４は、識別対象画像Ｓ０に対して図２（ａ）に示す水平方向のエッジ検出フィルタによるフィルタリング処理を施して識別対象画像Ｓ０における水平方向のエッジを検出する。また、特徴量算出部４は、識別対象画像Ｓ０に対して図２（ｂ）に示す垂直方向のエッジ検出フィルタによるフィルタリング処理を施して識別対象画像Ｓ０における垂直方向のエッジを検出する。そして、識別対象画像Ｓ０上の各画素における水平方向のエッジの大きさＨおよび垂直方向のエッジの大きさＶとから、図３に示すように、各画素における勾配ベクトルＫを算出する。
【００３３】
そして、この勾配ベクトルＫを特徴量Ｃ１とする。具体的には勾配ベクトルＫの所定方向（例えば図３におけるｘ方向）を基準とした０から３５９度の値および大きさを特徴量Ｃ１とする。
【００３４】
なお、このようにして算出された勾配ベクトルＫは、図４（ａ）に示すような人物の顔の場合、図４（ｂ）に示すように、目および口のように暗い部分においては目および口の中央を向き、鼻のように明るい部分においては鼻の位置から外側を向くものとなる。また、口よりも目の方が濃度の変化が大きいため、勾配ベクトルＫの大きさは口よりも目の方が大きくなる。
【００３５】
ここで、特徴量Ｃ１である勾配ベクトルＫの大きさは正規化される。この正規化は、識別対象画像Ｓ０内の全画素における勾配ベクトルＫの大きさのヒストグラムを求め、その大きさの分布が識別対象画像Ｓ０の各画素が取り得る値（８ビットであれば０〜２５５）に均一に分布されるようにヒストグラムを平滑化して勾配ベクトルＫの大きさを修正することにより行う。例えば、勾配ベクトルＫの大きさが小さく、図５（ａ）に示すように勾配ベクトルＫの大きさが小さい側に偏ってヒストグラムが分布している場合には、大きさが０〜２５５の全領域に亘るものとなるように勾配ベクトルＫの大きさを正規化して図５（ｂ）に示すようにヒストグラムが分布するようにする。なお、演算量を低減するために、図５（ｃ）に示すように、勾配ベクトルＫのヒストグラムにおける分布範囲を例えば５分割し、５分割された頻度分布が図５（ｄ）に示すように０〜２５５の値を５分割した範囲に亘るものとなるように正規化することが好ましい。
【００３６】
ここで、撮影を行う際には、照明の明るさや照明の方向が撮影時の条件に応じて様々であるため、明るさや照明の方向は識別対象画像Ｓ０ごとに異なる。このように明るさや照明の方向が異なる識別対象画像Ｓ０のそれぞれについてそのまま勾配ベクトルＫを求めていたのでは、同じ顔であるのに目の位置における勾配ベクトルの大きさが異なってしまい、顔が含まれるか否かを精度よく識別することができない。このため、本実施形態においては、勾配ベクトルＫの大きさを識別対象画像Ｓ０の全体について正規化している。
【００３７】
なお、特徴量算出部４は、後述するように識別対象画像Ｓ０の変形の各段階において特徴量Ｃ１を算出する。
【００３８】
メモリ６内に格納されている参照データＲ１は、後述するサンプル画像上の所定位置における複数画素の組み合わせからなる複数種類の画素群のそれぞれについて、各画素群を構成する各画素における特徴量Ｃ１の組み合わせに対する識別条件を規定したものである。
【００３９】
参照データＲ１中の、各画素群を構成する各画素における特徴量Ｃ１の組み合わせおよび識別条件は、顔であることが分かっている複数のサンプル画像と顔でないことが分かっている複数のサンプル画像とからなるサンプル画像群の学習により、あらかじめ決められたものである。
【００４０】
なお、本実施形態においては、顔であることが分かっているサンプル画像として、３０×３０画素サイズを有し、図６に示すように、１つの顔の画像について両目の中心間の距離が１０画素、９画素および１１画素であり、垂直に立った顔を基準として平面上±１５度の範囲において３度単位で段階的に回転させた（すなわち、回転角度が−１５度，−１２度，−９度，−６度，−３度，０度，３度，６度，９度，１２度，１５度）サンプル画像を用いるものとする。したがって、１つの顔の画像につきサンプル画像は３×１１＝３３通り用意される。ここで、顔が垂直に立った状態において上下方向における目の位置はすべてのサンプル画像において同一である。なお、図６においては−１５度、０度および＋１５度に回転させたサンプル画像のみを示す。また、回転の中心はサンプル画像の対角線の交点である。また、顔でないことが分かっているサンプル画像としては、３０×３０画素サイズを有する任意の画像を用いるものとする。
【００４１】
ここで、顔であることが分かっているサンプル画像として、両目の中心間距離が１０画素であり、平面上の回転角度が０度（すなわち顔が垂直な状態）のもののみを用いて学習を行った場合、参照データＲ１を参照して顔が含まれると識別されるのは、両目の中心間距離が１０画素で全く回転していない識別対象画像Ｓ０のみである。識別対象画像Ｓ０に含まれる可能性がある顔のサイズは一定ではないため、顔が含まれるか否かを識別する際には、後述するように識別対象画像Ｓ０を拡大縮小して、サンプル画像のサイズに適合するサイズの顔を識別できるようにしている。しかしながら、両目の中心間距離を正確に１０画素とするためには、識別対象画像Ｓ０のサイズを拡大率として例えば１．１単位で段階的に拡大縮小しつつ識別を行う必要があるため、演算量が膨大なものとなる。
【００４２】
また、識別対象画像Ｓ０に含まれる可能性がある顔は、図７（ａ）に示すように平面上の回転角度が０度のみではなく、図７（ｂ）、（ｃ）に示すように回転している場合もある。しかしながら、両目の中心間距離が１０画素であり、顔の回転角度が０度のサンプル画像のみを使用して学習を行った場合、顔であるにも拘わらず、図７（ｂ）、（ｃ）に示すように回転した顔については識別を行うことができなくなってしまう。
【００４３】
このため、本実施形態においては、顔であることが分かっているサンプル画像として、図６に示すように両目の中心間距離が９，１０，１１画素であり、各距離において平面上±１５度の範囲にて３度単位で段階的に顔を回転させたサンプル画像を用いて、参照データＲ１の学習に許容度を持たせるようにしたものである。これにより、識別対象画像Ｓ０を、拡大率として１１／９単位で段階的に拡大縮小すればよいため、識別対象画像Ｓ０のサイズを例えば拡大率として１．１単位で段階的に拡大縮小する場合と比較して、演算時間を低減できる。また、図７（ｂ）、（ｃ）に示すように回転している顔も識別することができる。
【００４４】
以下、図８のフローチャートを参照しながらサンプル画像群の学習手法の一例を説明する。
【００４５】
学習の対象となるサンプル画像群は、顔であることが分かっている複数のサンプル画像と、顔でないことが分かっている複数のサンプル画像とからなる。なお、顔であることが分かっているサンプル画像は、１つのサンプル画像につき両目の中心位置が９，１０，１１画素であり、各距離において平面上±１５度の範囲にて３度単位で段階的に顔を回転させたものを用いる。各サンプル画像には、重みすなわち重要度が割り当てられる。まず、すべてのサンプル画像の重みの初期値が等しく１に設定される（ステップＳ１）。
【００４６】
次に、サンプル画像上の所定位置における画素の組み合わせからなる複数種類の画素群のそれぞれに対応して複数の識別器が作成される（ステップＳ２）。例えば、図９に示すように顔であることが分かっているサンプル画像の目の近傍において横方向に隣接する３つの画素からなる画素群Ｇ１、向かって右側の頬の近傍において縦方向に隣接する３つの画素からなる画素群Ｇ２、サンプル画像上の離れた３点に位置する３つの画素からなる画素群Ｇ３およびあごの近傍において横方向に隣接する４つの画素からなる画素群Ｇ４のように４種類の画素群が設定されている場合、４種類の画素群Ｇ１〜Ｇ４のそれぞれに対応して４つの識別器が作成される。一方、顔でないことが分かっているサンプル画像についても、顔であることが分かっているサンプル画像に対応する画素からなる画素群が設定される。なお、図９に示す画素群は説明を容易にするための例であって、実際には多数の画素群のそれぞれに対応して識別器が作成される。
【００４７】
ここで、それぞれの識別器とは、１つの画素群を構成する各画素における特徴量Ｃ１の組み合わせを用いて、顔の画像と顔でない画像とを識別する基準を提供するものである。本実施形態においては、１つの画素群を構成する各画素における特徴量Ｃ１の組み合わせについてのヒストグラムを識別器として使用する。
【００４８】
図１０を参照しながらある識別器の作成について説明する。図１０の左側のサンプル画像に示すように、この識別器を作成するための画素群を構成する各画素を、顔であることが分かっている複数のサンプル画像上における、右目の中心にある画素Ｐ１、右側の頬の部分にある画素Ｐ２、額の部分にある画素Ｐ３および左側の頬の部分にある画素Ｐ４とする。なお、ある識別器を作成するための画素群を構成する各画素の座標位置はすべてのサンプル画像において同一である。そして顔であることが分かっているすべてのサンプル画像について全画素Ｐ１〜Ｐ４における特徴量Ｃ１の組み合わせが求められ、そのヒストグラムが作成される。ここで、特徴量Ｃ１は勾配ベクトルＫの方向および大きさを表すが、勾配ベクトルＫの方向は０〜３５９の３６０通り、勾配ベクトルＫの大きさは０〜２５５の２５６通りあるため、これをそのまま用いたのでは、組み合わせの数は１画素につき３６０×２５６通りの４画素分、すなわち（３６０×２５６）4通りとなってしまい、学習および検出のために多大な時間およびメモリを要することとなる。このため、本実施形態においては、勾配ベクトルの方向を０〜３５９を０〜４４と３１５〜３５９（右方向、値：０），４５〜１３４（上方向値：１），１３５〜２２４（左方向、値：２），２２５〜３１４（下方向、値３）に４値化し、勾配ベクトルの大きさを３値化（値：０〜２）する。そして、以下の式を用いて組み合わせの値を算出する。
【００４９】
組み合わせの値＝０（勾配ベクトルの大きさ＝０の場合）
組み合わせの値＝（（勾配ベクトルの方向＋１）×勾配ベクトルの大きさ（勾配ベクトルの大きさ＞０の場合）
これにより、組み合わせ数が９4通りとなるため、特徴量Ｃ１のデータ数を低減できる。
【００５０】
同様に、顔でないことが分かっている複数のサンプル画像についても、ヒストグラムが作成される。なお、顔でないことが分かっているサンプル画像については、顔であることが分かっているサンプル画像上における上記画素Ｐ１〜Ｐ４の位置に対応する画素（同様に参照符号Ｐ１〜Ｐ４を用いる）が用いられる。これらの２つのヒストグラムが示す頻度値の比の対数値を取ってヒストグラムで表したものが、図１０の一番右側に示す、識別器として用いられるヒストグラムである。この識別器のヒストグラムが示す各縦軸の値を、以下、識別ポイントと称する。この識別器によれば、正の識別ポイントに対応する特徴量Ｃ１の分布を示す画像は顔である可能性が高く、識別ポイントの絶対値が大きいほどその可能性は高まると言える。逆に、負の識別ポイントに対応する特徴量Ｃ１の分布を示す画像は顔でない可能性が高く、やはり識別ポイントの絶対値が大きいほどその可能性は高まる。ステップＳ２では、識別に使用され得る複数種類の画素群を構成する各画素における特徴量Ｃ１の組み合わせについて、上記のヒストグラム形式の複数の識別器が作成される。
【００５１】
続いて、ステップＳ２で作成した複数の識別器のうち、画像が顔であるか否かを識別するのに最も有効な識別器が選択される。最も有効な識別器の選択は、各サンプル画像の重みを考慮して行われる。この例では、各識別器の重み付き正答率が比較され、最も高い重み付き正答率を示す識別器が選択される（ステップＳ３）。すなわち、最初のステップＳ３では、各サンプル画像の重みは等しく１であるので、単純にその識別器によって画像が顔であるか否かが正しく識別されるサンプル画像の数が最も多いものが、最も有効な識別器として選択される。一方、後述するステップＳ５において各サンプル画像の重みが更新された後の２回目のステップＳ３では、重みが１のサンプル画像、重みが１よりも大きいサンプル画像、および重みが１よりも小さいサンプル画像が混在しており、重みが１よりも大きいサンプル画像は、正答率の評価において、重みが１のサンプル画像よりも重みが大きい分多くカウントされる。これにより、２回目以降のステップＳ３では、重みが小さいサンプル画像よりも、重みが大きいサンプル画像が正しく識別されることに、より重点が置かれる。
【００５２】
次に、それまでに選択した識別器の組み合わせの正答率、すなわち、それまでに選択した識別器を組み合わせて使用して各サンプル画像が顔の画像であるか否かを識別した結果が、実際に顔の画像であるか否かの答えと一致する率が、所定の閾値を超えたか否かが確かめられる（ステップＳ４）。なお、所定の閾値としては本実施形態においては０を用いる。ここで、組み合わせの正答率の評価に用いられるのは、現在の重みが付けられたサンプル画像群でも、重みが等しくされたサンプル画像群でもよい。所定の閾値を超えた場合は、それまでに選択した識別器を用いれば画像に顔が含まれるか否かを十分に高い確率で識別できるため、学習は終了する。所定の閾値以下である場合は、それまでに選択した識別器と組み合わせて用いるための追加の識別器を選択するために、ステップＳ６へと進む。
【００５３】
ステップＳ６では、直近のステップＳ３で選択された識別器が再び選択されないようにするため、その識別器が除外される。
【００５４】
次に、直近のステップＳ３で選択された識別器では顔が含まれるか否かを正しく識別できなかったサンプル画像の重みが大きくされ、顔が含まれるか否かを正しく識別できたサンプル画像の重みが小さくされる（ステップＳ５）。このように重みを大小させる理由は、次の識別器の選択において、既に選択された識別器では正しく識別できなかった画像を重要視し、それらの画像に顔が含まれるか否かを正しく識別できる識別器が選択されるようにして、識別器の組み合わせの効果を高めるためである。
【００５５】
続いて、ステップＳ３へと戻り、上述したように重み付き正答率を基準にして次に有効な識別器が選択される。
【００５６】
以上のステップＳ３からＳ６を繰り返して、顔が含まれるか否かを識別するのに適した識別器として、特定の画素群を構成する各画素における特徴量Ｃ１の組み合わせに対応する識別器が選択されたところで、ステップＳ４で確認される正答率が所定の閾値を超えたとすると、顔が含まれるか否かの識別に用いる識別器の種類と識別条件とが確定され（ステップＳ７）、これにより参照データＲ１の学習を終了する。なお、このような学習により最初に作成した複数の識別器の一部の識別器のみが参照データＲ１として使用されることとなるが、すべての識別器が参照データＲ１として使用されることもある。
【００５７】
なお、上記の学習手法を採用する場合において、識別器は、特定の画素群を構成する各画素における特徴量Ｃ１の組み合わせを用いて顔の画像と顔でない画像とを識別する基準を提供するものであれば、上記のヒストグラムの形式のものに限られずいかなるものであってもよく、例えば２値データ、閾値または関数等であってもよい。また、同じヒストグラムの形式であっても、図１０の中央に示した２つのヒストグラムの差分値の分布を示すヒストグラム等を用いてもよい。
【００５８】
また、学習の方法としては上記手法に限定されるものではなく、ニューラルネットワーク等他のマシンラーニングの手法を用いることができる。なお、第１および第２の参照データＲ１，Ｒ２は、熟練した技術者により経験的に定められたものであってもよい。
【００５９】
また、上記ステップＳ２において作成した複数の識別器について、マニュアル操作により顔が含まれるか否かの正答率が高い識別器を所定数（例えば１００個）選択し、選択した所定数の識別器を正答率が高い順に大きい重み付けとなるように重みを決定することにより参照データＲ１を生成してもよい。
【００６０】
また、上述したように確定された識別器は、対応する画素群の位置に応じて複数のカテゴリに分類される。本実施形態においては、図１１に示すように、サンプル画像を５×５画素のブロックからなる３６の領域に分割し、対応する画素群がいずれの領域に属するかに応じて、識別器を３６のカテゴリＫ１〜Ｋ３６に分類する。なお、画素群が複数の領域にまたがっている場合がある。例えば上記図９に示す画素群Ｇ３は３つの領域にまたがっている。このような場合は、その識別器は３つの領域に対応するカテゴリのそれぞれに重複して分類されることとなる。また、画素群が隣接して存在する場合に画素群内にカテゴリの境界が存在する場合にも、その画素群に対応する識別器は境界に隣接する２つのカテゴリに重複して分類されることとなる。
【００６１】
識別部８は、複数種類の画素群を構成する各画素における特徴量Ｃ１の組み合わせのすべてについて参照データＲ１が学習した識別条件を参照して、各々の画素群を構成する各画素における特徴量Ｃ１の組み合わせについての識別ポイントを求め、すべての識別ポイントを総合して識別対象画像Ｓ０に顔が含まれるか否かを識別する。この際、特徴量Ｃ１である勾配ベクトルＫの方向は４値化され大きさは３値化される。本実施形態では、すべての識別ポイントの総和を算出し、識別ポイントの総和と第１および第２の閾値Ｔｈ１，Ｔｈ２との関係によって識別を行うものとする。
【００６２】
例えば、識別ポイントの総和が第１の閾値Ｔｈ１以上である場合には識別対象画像Ｓ０には顔が含まれると識別し、第２の閾値Ｔｈ２以下である場合には顔は含まれないと識別する。なお、上述した学習の際に用いた所定の閾値が０であるため、第１の閾値Ｔｈ１は０よりも大きい値を、第２の閾値Ｔｈ２は０よりも小さい値を用いる。
【００６３】
一方、識別ポイントの総和が第１の閾値Ｔｈ１より小さく第２の閾値Ｔｈ２より大きい場合には、下記のように識別を行う。まず、分類した３６のカテゴリＫ１〜Ｋ３６ごとに識別ポイントの総和（以下カテゴリ別総和とする）を算出し、カテゴリＫ１〜Ｋ３６ごとにカテゴリ別総和が第３の閾値Ｔｈ３（ここでは０とする）以上となったか否かを判定する。そして、カテゴリ別総和が第３の閾値Ｔｈ３以上となったカテゴリの数が第４の閾値Ｔｈ４以上となった場合に、識別対象画像Ｓ０には顔が含まれると識別し、第４の閾値Ｔｈ２未満である場合には顔は含まれないと識別する。なお、第４の閾値Ｔｈ４は識別の精度に応じて設定すればよく、例えば本実施形態においては、カテゴリの総数３６の約８０％である２９を第４の閾値Ｔｈ４として設定する。
【００６４】
なお、本実施形態においては、識別ポイントの総和と第１および第２の閾値Ｔｈ１，Ｔｈ２との関係によって識別を行うに際し、複数の識別器について、正答率が高い順に識別ポイントの総和を逐次算出し、識別ポイントの総和を算出した識別器の数に応じて定められる第５の閾値Ｔｈ５と識別ポイントの総和とを総和の算出の各段階において比較し、識別ポイントの総和が第５の閾値Ｔｈ５以下の場合には、識別ポイントの総和と第１および第２の閾値Ｔｈ１，Ｔｈ２との関係によって識別を行うことなく、識別対象画像Ｓ０には顔が含まれないと識別する。なお、上述した学習の際に用いた所定の閾値が０であるため、第５の閾値Ｔｈ５は０よりも小さい値を用いる。また、総和を算出した識別器の数に応じて第５の閾値Ｔｈ５を変更してもよいものである。また、第１の閾値Ｔｈ１は第５の閾値Ｔｈ５よりも大きいものとするが、第２の閾値Ｔｈ２と第５の閾値Ｔｈ５との大小関係は任意に設定してよいものである。
【００６５】
この際、識別ポイントの総和が第５の閾値Ｔｈ５以下とならない場合には、現在総和を算出した識別器に、次に正答率が高い識別器を加えて、さらに識別ポイントの総和が第５の閾値Ｔｈ５以下となるか否かを判定する。これによっても識別ポイントの総和が第５の閾値Ｔｈ５以下とならない場合には、すべての識別器が出力した識別ポイントについて総和を算出するまで識別ポイントの総和が第５の閾値Ｔｈ５以下となるか否かの判定を繰り返す。そして、すべての識別器が出力した識別ポイントの総和が第５の閾値以下とならない場合に、識別ポイントの総和と第１および第２の閾値Ｔｈ１，Ｔｈ２との関係によって識別を行うものとする。
【００６６】
ここで、識別対象画像Ｓ０のサイズは３０×３０画素のサンプル画像とは異なり、各種サイズを有するものとなっている。また、顔が含まれる場合、平面上における顔の回転角度が０度であるとは限らない。このため、識別部８は、図１２に示すように、識別対象画像Ｓ０を縦または横のサイズが３０画素となるまで段階的に拡大縮小するとともに平面上で段階的に３６０度回転させつつ（図１２においては縮小する状態を示す）、各段階において拡大縮小された識別対象画像Ｓ０上に３０×３０画素サイズのマスクＭを設定し、マスクＭを拡大縮小された識別対象画像Ｓ０上において１画素ずつ移動させながら、マスク内の画像が顔の画像であるか否かの識別を行うことにより、識別対象画像Ｓ０に顔が含まれるか否かを識別する。
【００６７】
なお、参照データＲ１の生成時に学習したサンプル画像として両目の中心位置の画素数が９，１０，１１画素のものを使用しているため、識別対象画像Ｓ０の拡大縮小時の拡大率は１１／９とすればよい。また、参照データＲ１の生成時に学習したサンプル画像として、顔を平面上で±１５度の範囲において回転させたものを使用しているため、識別対象画像Ｓ０は３０度単位で３６０度回転させればよい。
【００６８】
ここで、特徴量算出部４は、識別対象画像Ｓ０の拡大縮小および回転という変形の各段階において特徴量Ｃ１を算出する。
【００６９】
そして、識別部８は、識別対象画像Ｓ０に顔が含まれるか否かの識別を、識別対象画像Ｓ０の拡大縮小および回転の全段階の識別対象画像Ｓ０について行い、一度でも顔が含まれると識別された場合には、識別対象画像Ｓ０には顔が含まれると識別する。また、顔が含まれると一度も識別されなかった場合には、識別対象画像Ｓ０には顔が含まれないと識別する。
【００７０】
出力部１０は、識別部８が識別対象画像Ｓ０に顔が含まれないと識別した場合に、識別対象画像Ｓ０には顔が含まれない旨の識別結果を出力する。一方、識別部８が識別対象画像Ｓ０に顔が含まれると識別した場合、顔が含まれると識別された段階におけるサイズおよび回転角度の識別対象画像Ｓ０から、顔が含まれると識別されたマスクＭの位置に対応する３０×３０画素の領域を顔として抽出し、抽出された顔の画像を表す顔画像データＳ１を出力する。
【００７１】
次いで、本実施形態において行われる処理について説明する。図１３は本実施形態において行われる処理を示すフローチャートである。まず、画像入力部２が識別対象画像データＳ０の入力を受け付ける（ステップＳ１１）。この際、多数の画像に関する一連の画像データＳ０の入力を連続的に受け付けてもよい。次いで、特徴量算出部４が識別対象画像Ｓ０の拡大縮小および回転の各段階において、識別対象画像Ｓ０の勾配ベクトルＫを特徴量Ｃ１として算出する（ステップＳ１２）。そして、識別部８がメモリ６から参照データＲ１を読み出し（ステップＳ１３）、識別対象画像Ｓ０に顔が含まれるか否かの識別を行う（ステップＳ１４）。
【００７２】
図１４は識別の処理を示すフローチャートである。本実施形態において、識別部８は、すべての識別器について正答率が高い順に識別器が出力した識別ポイントの総和を算出する。このため、まず識別部８は、識別ポイントの総和を算出する識別器を最初の識別器（すなわち正答率が最も高い識別器）に設定する（ステップＳ３１）。そして、識別器が出力した識別ポイントまたは識別ポイントの総和が、総和を算出した識別器の数に応じて定められる第５の閾値Ｔｈ５以下であるか否かを判定する（ステップＳ３２）。なお、最初の段階においては、識別器は１つのみであるため、最初の識別器が出力した識別ポイントが第５の閾値Ｔｈ５以下であるか否かを判定する。ステップＳ３２が肯定されると、識別対象画像Ｓ０には顔が含まれないと識別し（ステップＳ３３）、識別の処理を終了する。
【００７３】
ステップＳ３２が否定されると、すべての識別器について識別ポイントの総和を算出したか否かを判定し（ステップＳ３４）、ステップＳ３４が否定されると、次に正答率が高い識別器を含めて識別ポイントの総和を算出し（ステップＳ３５）、ステップＳ３２に戻る。
【００７４】
ステップＳ３４が肯定されると、すべての識別器の識別ポイントの総和が第５の閾値Ｔｈ５よりも大きい第１の閾値Ｔｈ１以上であるか否かを判定する（ステップＳ３６）。ステップＳ３６が肯定されると識別対象画像Ｓ０に顔が含まれると識別し（ステップＳ３７）、識別の処理を終了する。
【００７５】
ステップＳ３６が否定されると識別ポイントの総和が第１の閾値Ｔｈ１よりも小さい第２の閾値Ｔｈ２以下であるか否かを判定する（ステップＳ３８）。ステップＳ３８が肯定されるとステップＳ３３に進み、識別対象画像Ｓ０に顔が含まれないと識別し、識別の処理を終了する。
【００７６】
ステップＳ３８が否定されると、カテゴリＫ１〜Ｋ３６ごとに識別ポイントの総和（カテゴリ別総和）を算出し（ステップＳ３９）、カテゴリ別総和が第３の閾値Ｔｈ３以上となったカテゴリの数が第４の閾値Ｔｈ４以上であるか否かを判定する（ステップＳ４０）。ステップＳ４０が肯定されるとステップＳ３７に進み、識別対象画像Ｓ０に顔が含まれると識別して処理を終了する。ステップＳ４０が否定されるとステップＳ３３に進み、識別対象画像Ｓ０に顔が含まれないと識別して処理を終了する。
【００７７】
図１３に戻り、識別により識別対象画像Ｓ０に顔が含まれると識別された場合、出力部１０が識別対象画像Ｓ０から識別された顔を抽出し、抽出された顔の画像を表す顔画像データＳ１を出力し（ステップＳ１５）、処理を終了する。なお、複数の顔を抽出してもよい。一方、識別対象画像Ｓ０に顔が含まれないと識別された場合、出力部１０がその旨を表す識別結果を出力し（ステップＳ１６）、処理を終了する。
【００７８】
ここで、すべての識別器から出力された識別ポイントの総和がある閾値を超えた場合に識別対象画像Ｓ０に顔が含まれると識別する場合において、顔以外の異物を含む識別対象画像Ｓ０については、顔が含まれないと識別する可能性が高い。一方、顔以外の異物を含む画像をサンプル画像に加えて参照データの学習を行った場合は、顔を含まないのに顔を含むと識別する誤検出が多くなってしまうという問題がある。
【００７９】
本発明においては、識別ポイントの総和が第１の閾値Ｔｈ１より小さく第２の閾値Ｔｈ２より大きいという、識別対象画像Ｓ０に顔が含まれるか否か明確でない場合において、カテゴリごとに識別ポイントの総和を算出し、カテゴリ別総和が第３の閾値Ｔｈ３以上となったカテゴリの数が第４の閾値Ｔｈ４以上である場合に、識別対象画像Ｓ０に顔が含まれると識別するようにしたため、顔を含むがその一部が異物等により顔と一致しなくなっている識別対象画像Ｓ０と、顔を含まないにもかかわらず全体的に見ると顔に類似しているが局所的には顔とは一致しないような識別対象画像Ｓ０とを識別することができることとなる。したがって、学習するサンプル画像の種類を増やさなくても、識別対象画像Ｓ０に顔が含まれるか否かを識別する際の誤検出を防止することができる。
【００８０】
また、識別器の正答率が高い順に識別ポイントの総和を逐次算出し、識別ポイントの総和が総和を算出した識別器の数に応じた第５の閾値Ｔｈ５以下の場合には、顔が含まれないと識別しているため、識別対象画像Ｓ０に顔が含まれない場合には、比較的早い段階において識別対象画像Ｓ０に顔が含まれないと識別されるため、識別の処理を高速に行うことができる。
【００８１】
なお、上記実施形態においては、参照データＲ１は装置１内のメモリ６に格納されているものとしたが、特徴量算出部４および識別部８が参照データＲ１にアクセスできる限り、参照データＲ１は、装置１とは別個の装置やＣＤ−ＲＯＭ等の差替可能な媒体に記憶されたものであってもよい。
【００８２】
また、上記実施形態においては、特徴量Ｃ１として勾配ベクトルＫの傾きを用いているが、識別対象画像Ｓ０の色相や彩度等の色情報を特徴量Ｃ１として用いてもよい。
【００８３】
また、上記実施形態においては、顔を識別対象物として識別対象画像Ｓ０に顔が含まれるか否かを識別しているが、ほぼ一定形状をなしており、参照データの学習を行う際にサイズを揃えることが可能な自動車や道路標識等を識別の対象物としてもよい。
【００８４】
また、上記実施形態においては、出力部１０が識別対象画像Ｓ０から顔を抽出しているが、識別対象画像Ｓ０における顔の位置を表す顔位置情報（例えば識別された顔を囲む矩形領域の四隅の座標）を識別対象画像データＳ０に付与し、顔位置情報が付与された識別対象画像データＳ０を出力してもよい。ここで、顔位置情報を識別対象画像データＳ０に付与するには、識別対象画像データＳ０のヘッダやタグに顔位置情報を記述したり、識別対象画像データＳ０とファイル名が同一で拡張子が異なる例えばテキストファイルに顔位置情報を記述して、識別対象画像データＳ０とテキストファイルとを一体不可分とする手法を用いることができる。なお、識別対象画像Ｓ０には顔が含まれないと識別された場合には、その識別結果を表す識別情報を識別対象画像データＳ０に付与して出力してもよい。
【００８５】
また、顔を抽出するのに代えて、識別した顔についてストロボを用いた撮影により赤目となっているか否かを検出し、赤目を修正する処理を行うようにしてもよい。
【００８６】
また、上記実施形態においては、識別の処理を行う際に、すべての識別器あるいは各カテゴリごとの識別器が出力した識別ポイントの総和を算出しているが、各識別器が出力した識別ポイントに重み付けを行って、重み付け総和を算出するようにしてもよい。
【００８７】
また、上記実施形態においては、ステップＳ３１からステップＳ３８において、識別器の正答率が高い順に識別ポイントの総和を逐次算出し、識別ポイントの総和が総和を算出した識別器の数に応じた第５の閾値Ｔｈ５以下の場合には顔が含まれないと識別し、すべての識別器について識別ポイントの総和が第５の閾値Ｔｈ５よりも大きい場合に、さらに、識別ポイントの総和が第１の閾値Ｔｈ１以上であるか否か、さらには識別ポイントの総和が第２の閾値Ｔｈ２以下であるか否かを判定しているが、ステップＳ３１からステップＳ３８の処理を行うことなく、直ちにステップＳ３９以降の処理を行うようにしてもよい。
【００８８】
以上、本発明の実施形態に係る装置について説明したが、コンピュータを、上記の画像入力部２、特徴量算出部４、メモリ６、識別部８、および出力部１０に対応する手段として機能させ、識別対象画像Ｓ０に顔が含まれるか否かを識別する処理を行わせるプログラムも、本発明の実施形態の１つである。また、そのようなプログラムを記録したコンピュータ読取可能な記録媒体も、本発明の実施形態の１つである。これらの場合においても、参照データは、プログラム内あるいは同一の記録媒体内に含まれているものであってもよいし、外部の装置や別個の媒体から提供されるものであってもよい。
【図面の簡単な説明】
【００８９】
【図１】本発明の実施形態による対象物識別装置の構成を示す概略ブロック図
【図２】（ａ）は水平方向のエッジ検出フィルタを示す図、（ｂ）は垂直方向のエッジ検出フィルタを示す図
【図３】勾配ベクトルの算出を説明するための図
【図４】（ａ）は人物の顔を示す図、（ｂ）は（ａ）に示す人物の顔の目および口付近の勾配ベクトルを示す図
【図５】（ａ）は正規化前の勾配ベクトルの大きさのヒストグラムを示す図、（ｂ）は正規化後の勾配ベクトルの大きさのヒストグラムを示す図、（ｃ）は５値化した勾配ベクトルの大きさのヒストグラムを示す図、（ｄ）は正規化後の５値化した勾配ベクトルの大きさのヒストグラムを示す図
【図６】顔であることが分かっているサンプル画像の例を示す図
【図７】顔の回転を説明するための図
【図８】参照データの学習手法を示すフローチャート
【図９】サンプル画像に設定される画素群を説明するための図
【図１０】識別器の導出方法を示す図
【図１１】カテゴリの分類を説明するための図
【図１２】識別対象画像の段階的な変形を説明するための図
【図１３】本実施形態において行われる処理を示すフローチャート
【図１４】識別の処理を示すフローチャート
【符号の説明】
【００９０】
１    対象物識別装置
２    画像入力部
４    特徴量算出部
６    メモリ
８    識別部
１０    出力部
【図１】
2005250771.tif 000003
【図２】
2005250771.tif 000004
【図３】
2005250771.tif 000005
【図４】
2005250771.tif 000006
【図５】
2005250771.tif 000007
【図６】
2005250771.tif 000008
【図７】
2005250771.tif 000009
【図８】
2005250771.tif 000010
【図９】
2005250771.tif 000011
【図１０】
2005250771.tif 000012
【図１１】
2005250771.tif 000013
【図１２】
2005250771.tif 000014
【図１３】
2005250771.tif 000015
【図１４】
2005250771.tif 000016