(57)【要約】【課題】  画像の中から人の顔画像が存在する可能性が高い領域を高速かつ正確に検索できる新規な顔画像候補領域検索方法及び検索システム並びに検索プログラムの提供。【解決手段】検索対象画像Ｇ内を所定の領域毎に順次選択してから当該選択領域の画像特徴ベクトルを生成し、その後、予め複数の学習用のサンプル画像の画像特徴ベクトルを学習済みのサポートベクタマシン３０にその画像特徴ベクトルを入力し、その識別超平面に対する位置関係に応じて当該選択領域に顔画像が存在するか否かを判定する。これによって、検索対象画像Ｇの中から人の顔画像が存在する可能性が高い領域を高速かつ精度良く検索できる。【選択図】        図１
2005134966.tif 000002
【特許請求の範囲】
【請求項１】
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索する方法であって、
前記検索対象画像内を所定の領域毎に順次選択してから当該選択領域の画像特徴ベクトルを生成し、その後、予め複数の学習用のサンプル画像の画像特徴ベクトルを学習済みのサポートベクタマシンにその画像特徴ベクトルを入力し、その識別超平面に対する位置関係に応じて当該選択領域に顔画像が存在するか否かを判定するようにしたことを特徴とする顔画像候補領域検索方法。
【請求項２】
請求項１に記載の顔画像候補領域検索方法において、
前記選択領域の画像特徴ベクトルが前記サポートベクタマシンの識別超平面で区画された非顔領域であって、かつ、前記識別超平面から距離が所定の閾値以上であるときは、その選択画像領域の近傍に顔画像が存在しないと判定するようにしたことを特徴とする顔画像候補領域検索方法。
【請求項３】
請求項１又は２に記載の顔画像候補領域検索方法において、
前記サポートベクタマシンの識別関数として、非線形のカーネル関数を使用することを特徴とする顔画像候補領域検索方法。
【請求項４】
請求項１〜３のいずれかに記載の顔画像候補領域検索方法において、
前記画像特徴ベクトルは、顔の特徴を反映する、各画素の対応した値を用いるようにしたことを特徴とする顔画像候補領域検索方法。
【請求項５】
請求項１〜３のいずれかに記載の顔画像候補領域検索方法において、
前記画像特徴ベクトルは、各画素におけるエッジの強さ、または各画素におけるエッジの分散値、または各画素における輝度のいずれか、あるいは組み合わせた値を用いて生成することを特徴とする顔画像候補領域検索方法。
【請求項６】
請求項５に記載の顔画像候補領域検索方法において、
前記各画素におけるエッジの強さ、またはエッジの分散値は、Ｓｏｂｅｌのオペレータを用いて生成することを特徴とする顔画像候補領域検索方法。
【請求項７】
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索するシステムであって、
前記検索対象画像内の選択領域及び学習用のサンプル画像を読み取る画像読取手段と、
前記画像読取手段で読み取った前記検索対象画像内の選択領域及び学習用のサンプル画像の画像特徴ベクトルを生成する特徴ベクトル生成手段と、
前記特徴ベクトル生成手段で生成した学習用のサンプル画像の画像特徴ベクトルから識別超平面を求めると共に、その識別超平面に対する前記特徴ベクトル生成手段で生成した前記検索対象画像内の選択領域の画像特徴ベクトルの関係から当該選択領域に顔画像が存在するか否かを判定するサポートベクタマシンと、を備えたことを特徴とする顔画像候補領域検索システム。
【請求項８】
請求項６に記載の顔画像候補領域検索システムにおいて、
前記サポートベクタマシンの識別関数は、非線形のカーネル関数を使用することを特徴とする顔画像候補領域検索システム。
【請求項９】
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索するためのプログラムであって、前記検索対象画像内の選択領域及び学習用のサンプル画像を読み取る画像読取手段と、
前記画像読取手段で読み取った前記検索対象画像内の選択領域及び学習用のサンプル画像の画像特徴ベクトルを生成する特徴ベクトル生成手段と、
前記特徴ベクトル生成手段で生成した学習用のサンプル画像の画像特徴ベクトルから識別超平面を求めると共に、その識別超平面に対する前記特徴ベクトル生成手段で生成した前記検索対象画像内の選択領域の画像特徴ベクトルの関係から当該選択領域に顔画像が存在するか否かを判定するサポートベクタマシンとして機能させることを特徴とする顔画像候補領域検索プログラム。
【請求項１０】
請求項９に記載の顔画像候補領域検索プログラムにおいて、
前記サポートベクタマシンの識別関数は、非線形のカーネル関数を使用することを特徴とする顔画像候補領域検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン認識（Ｐａｔｔｅｒｎ  ｒｅｃｏｇｎｉｔｉｏｎ）やオブジェクト認識技術に係り、特に画像の中から人物の顔画像が存在する可能性が高い領域を高速に検索するための方法及び検索システム並びに検索プログラムに関するものである。
【背景技術】
【０００２】
近年のパターン認識技術やコンピュータ等の情報処理装置の高性能化に伴って文字や音声の認識精度は飛躍的に向上してきているが、人物や物体・景色等が映っている画像、例えば、ディジタルカメラ等によって取り込まれた画像のパターン認識のうち、特にその画像中に人の顔が映っているか否かを正確かつ高速に識別するといった点に関しては未だに極めて困難な作業であることが知られている。
【０００３】
しかしながら、このように画像中に人の顔が映っているか否か、さらにはその人物が誰であるのかをコンピュータ等によって自動的に正確に識別することは、生体認識技術の確立やセキュリティの向上、犯罪捜査の迅速化、画像データの整理・検索作業の高速化等を実現する上で極めて重要なテーマとなってきており、このようなテーマに関しては従来から多くの提案がなされている。
【０００４】
例えば、以下の特許文献１等では、ある入力画像について、先ず、人物肌色領域の有無を判定し、人物肌色領域に対して自動的にモザイクサイズを決定し、候補領域をモザイク化し、人物顔辞書との距離を計算することにより人物顔の有無を判定し、人物顔の切り出しを行うことによって、背景等の影響による誤抽出を減らし、効率的に画像中から人間の顔を自動的に見つけるようにしている。
【特許文献１】特開平９−５０５２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記従来技術では、「肌色」を元に画像中から人間の顔を検出するようにしているが、この「肌色」は照明等の影響により、色範囲が異なることがあり、顔画像の検出漏れや逆に背景によっては絞り込みが効率的に行えない等の問題がある。
一般に画像内では顔画像領域よりも背景の方が大きな面積を占めるために、高速に顔画像領域を検出するために絞り込みが効率的に行えることが重要である。
【０００６】
そこで、本発明はこのような課題を有効に解決するために案出されたものであり、その目的は、画像の中から人の顔画像が存在する可能性が高い領域を高速、かつ精度良く検索することができる新規な顔画像候補領域検索方法及び検索システム並びに検索プログラムを提供するものである。
【課題を解決するための手段】
【０００７】
〔発明１〕
上記課題を解決するために発明１の顔画像候補領域検索方法は、
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索する方法であって、前記検索対象画像内を所定の領域毎に順次選択してから当該選択領域の画像特徴ベクトルを生成し、その後、予め複数の学習用のサンプル画像の画像特徴ベクトルを学習済みのサポートベクタマシンにその画像特徴ベクトルを入力し、その識別超平面に対する位置関係に応じて当該選択領域に顔画像が存在するか否かを判定するようにしたことを特徴とするものである。
【０００８】
すなわち、本発明では生成された画像特徴ベクトルの識別手段として、サポートベクタマシンを利用するようにしたものであり、これによって検索対象画像中から人の顔画像が存在する可能性が高い領域を高速、かつ精度良く検索することが可能となる。
ここで本発明で用いる、「サポートベクタマシン（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ：以下、適宜「ＳＶＭ」と称する）」とは、後に詳述するが、１９９５年にＡＴ＆ＴのＶ．Ｖａｐｎｉｋによって統計的学習理論の枠組みで提案され、マージンという指標を用いて全ての２クラスの入力データを線形分離するのに最適な超平面を求めることができる学習機械のことであり、パターン認識の能力において最も優秀な学習モデルの一つであることが知られている。また、後述するように、線形分離不可能な場合でもカーネルトリックというテクニックを用いることにより、高い識別能力を発揮することが可能となっている。
【０００９】
〔発明２〕
発明２の顔画像候補領域検索方法は、
請求項１に記載の顔画像候補領域検索方法において、前記が、識別超平面で区画された非顔領域であって、かつ、前記識別超平面から距離が所定の閾値以上であるときは、その選択画像領域に顔画像が存在しないと判定するようにしたことを特徴とするものである。
【００１０】
すなわち、この閾値以上の非顔領域である場合にはその領域近傍には顔領域が存在する可能性がないとみなし、顔画像が存在するか否かの判定を行わないことにより、高速に顔画像領域候補の検索を行うものである。
〔発明３〕
発明３の顔画像候補領域検索方法は、
請求項１又は２に記載の顔画像候補領域検索方法において、前記サポートベクタマシンの識別関数として、非線形のカーネル関数を使用することを特徴とするものである。
【００１１】
すなわち、このサポートベクタマシンの基本的な構造は、線形しきい素子であるが、これでは原則として線形分離不可能なデータである高次元の画像特徴ベクトルに適用することができない。
一方、このサポートベクタマシンによって非線形な分類を可能とする方法として高次元化が挙げられる。これは、非線形写像によって元の入力データを高次元特徴空間に写像して特徴空間において線形分離を行うという方法であり、これによって、結果的に元の入力空間においては非線形な識別を行う結果となるものである。
【００１２】
しかし、この非線形写像を得るためには膨大な計算を必要とするため、実際にはこの非線形写像の計算は行わずに「カーネル関数」という識別関数の計算に置き換えることができる。これをカーネルトリックといい、このカーネルトリックによって非線形写像を直接計算することを避け、計算上の困難を克服することが可能となっている。
従って、本発明で用いるサポートベクタマシンの識別関数として、この非線形な「カーネル関数」を用いれば、本来線形分離不可能なデータである高次元の画像特徴ベクトルでも容易に分離することができる。
【００１３】
〔発明４〕
発明４の顔画像候補領域検索方法は、
発明１〜３のいずれかに記載の顔画像候補領域検索方法において、前記画像特徴ベクトルは、顔の特徴を反映する、各画素の対応した値を用いるようにしたことを特徴とするものである。
【００１４】
これによって、顔画像以外のオブジェクト等を顔画像と誤判別することがなくなり、判定対象となる各選択領域に顔画像が存在するか否かを精度良く識別することができる。
〔発明５〕
発明５の顔画像候補領域検索方法は、
発明１〜３のいずれかに記載の顔画像候補領域検索方法において、前記画像特徴ベクトルは、各画素におけるエッジの強さ、または各画素におけるエッジのエッジの分散値、または各画素における輝度のいずれか、あるいは組み合わせた値を用いて生成することを特徴とするものである。
【００１５】
これによって、顔画像を精度良く判別することが可能となり、各選択領域の画像が顔画像か否かをより正確に判別することができる。
〔発明６〕
発明６の顔画像候補領域検索方法は、
発明５に記載の顔画像候補領域検索方法において、前記各画素におけるエッジの強さ、またはエッジの分散値は、Ｓｏｂｅｌのオペレータを用いて生成することを特徴とするものである。
【００１６】
すなわち、この「Ｓｏｂｅｌのオペレータ」とは、画像中のエッジや線のように濃淡が急激に変化している箇所を検出するための差分型のエッジ検出オペレータの一つであり、特に人間の顔の輪郭等を検出するのには最適なオペレータであることが知られている。
従って、このような「Ｓｏｂｅｌのオペレータ」を用いて各画素におけるエッジの強さ、またはエッジの分散値を生成することにより、画像特徴ベクトルを生成することができる。
【００１７】
尚、この「Ｓｏｂｅｌのオペレータ」の形状は、図１０（ａ：横方向のエッジ）、（ｂ：横方向のエッジ）に示す通りであり、それぞれのオペレータで生成した結果を二乗和した後、平方根をとることでエッジの強度を求めることができる。
〔発明７〕
発明７の顔画像候補領域検索システムは、
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索するシステムであって、前記検索対象画像内の選択領域及び学習用のサンプル画像を読み取る画像読取手段と、前記画像読取手段で読み取った前記検索対象画像内の選択領域及び学習用のサンプル画像の画像特徴ベクトルを生成する特徴ベクトル生成手段と、前記特徴ベクトル生成手段で生成した学習用のサンプル画像の画像特徴ベクトルから識別超平面を求めると共に、その識別超平面に対する前記特徴ベクトル生成手段で生成した前記検索対象画像内の選択領域の画像特徴ベクトルの関係から当該選択領域に顔画像が存在するか否かを判定するサポートベクタマシンと、を備えたことを特徴とするものである。
【００１８】
これによって、発明１と同様に、検索対象画像中から人の顔画像が存在する可能性が高い領域を高速、かつ精度良く検索することが可能となる。
〔発明８〕
発明８の顔画像候補領域検索システムは、
発明６に記載の顔画像候補領域検索システムにおいて、前記サポートベクタマシンの識別関数は、非線形なカーネル関数を使用することを特徴とするものである。
【００１９】
これによって、発明３と同様に線形分離不可能なデータである高次元の画像特徴ベクトルでも容易に分離することができる。
〔発明９〕
発明９の顔画像候補領域検索プログラムは、
顔画像が含まれているか否かが判明しない検索対象画像中から当該顔画像が存在する可能性が高い顔画像候補領域を検索するためのプログラムであって、前記検索対象画像内の選択領域及び学習用のサンプル画像を読み取る画像読取手段と、前記画像読取手段で読み取った前記検索対象画像内の選択領域及び学習用のサンプル画像の画像特徴ベクトルを生成する特徴ベクトル生成手段と、前記特徴ベクトル生成手段で生成した学習用のサンプル画像の画像特徴ベクトルから識別超平面を求めると共に、その識別超平面に対する前記特徴ベクトル生成手段で生成した前記検索対象画像内の選択領域の画像特徴ベクトルの関係から当該選択領域に顔画像が存在するか否かを判定するサポートベクタマシンと、をコンピュータに機能させることを特徴とするものである。
【００２０】
これによって、発明１と同様な効果が得られると共に、パソコン等の汎用のコンピュータシステムを用いてソフトウェア上でそれらの各機能を実現することができるため、それぞれ専用のハードウェアを製作して実現する場合に比べて、経済的かつ容易に実現することが可能となる。また、プログラムの書き換えだけでそれら各機能の改良も容易に行うことができる。
【００２１】
〔発明１０〕
発明１０の顔画像候補領域検索プログラムは、
発明９に記載の顔画像候補領域検索プログラムにおいて、前記サポートベクタマシンの識別関数は、非線形なカーネル関数を使用することを特徴とするものである。
これによって、発明３と同様な効果が得られると共に、発明９と同様にパソコン等の汎用のコンピュータシステムを用いて実現することができるため、専用のハードウェアを製作して実現する場合に比べて、経済的かつ容易に実現することが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態を添付図面を参照しながら詳述する。
図１は、本発明に係る顔画像候補領域検索システム１００の実施の一形態を示したものである。
図示するように、この顔画像候補領域検索システム１００は、学習用のサンプル画像と検索対象画像を読み取る画像読取手段１０と、この画像読取手段１０で読み取った画像の特徴ベクトルを生成する特徴ベクトル生成手段２０と、この特徴ベクトル生成手段２０で生成した特徴ベクトルから前記検索対象画像が顔画像候補領域であるか否かを識別するＳＶＭ（サポートベクタマシン）３０とから主に構成されている。
【００２３】
この画像読取手段１０は、具体的には、ディジタルスチルカメラやディジタルビデオカメラ等のＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ：電荷結合素子）カメラやビジコンカメラ、イメージスキャナ、ドラムスキャナ等であり、読み込んだ検索対象画像内の所定の選択領域及び学習用のサンプル画像となる複数の顔画像と非顔画像とをＡ／Ｄ変換してそのディジタルデータを特徴ベクトル生成手段２０へ順次送る機能を提供するようになっている。
【００２４】
特徴ベクトル生成手段２０は、さらに、画像中の輝度（Ｙ）を生成する輝度生成部２２と、画像中のエッジの強度を生成するエッジ生成部２４と、このエッジ生成部２４で生成されたエッジの強度又は前記輝度生成部２２で生成された輝度の平均又はエッジの強度の分散値を求める平均・分散値生成部２６とから構成されており、この平均・分散値生成部２６でサンプリングされる画素値からサンプル画像及び検索対象画像毎の画像特徴ベクトルを生成してこれをＳＶＭ３０に順次送る機能を提供するようになっている。
【００２５】
ＳＶＭ３０は、前記特徴ベクトル生成手段２０で生成した学習用のサンプルとなる複数の顔画像及び非顔画像の画像特徴ベクトルを学習すると共に、その学習結果から特徴ベクトル生成手段２０で生成した検索対象画像内の所定の領域が顔像候補領域であるか否かを識別する機能を提供するようになっている。
このＳＶＭ３０は、前述したようにマージンという指標を用いて全ての入力データを線形分離するのに最適な超平面を求めることができる学習機械のことであり、線形分離不可能な場合でもカーネルトリックというテクニックを用いることにより、高い識別能力を発揮できることが知られている。
【００２６】
そして、本実施の形態で用いるＳＶＭ３０は、１．学習を行うステップと、２．識別を行うステップに分かれる。
先ず、１．学習を行うステップは、図１に示すように学習用のサンプル画像となる多数の顔画像及び非顔画像を画像読取手段１０で読み取った後、特徴ベクトル生成部２０で各画像の特徴ベクトルを生成し、これを画像特徴ベクトルとして学習するものである。
【００２７】
その後、２．識別を行うステップでは、検索対象画像内の所定の選択領域を順次読み込んでこれを同じく特徴ベクトル生成部２０でその画像特徴ベクトルを生成し、これを特徴ベクトルとして入力し、入力された画像特徴ベクトルがその識別超平面に対していずれの領域に該当するかで顔画像が存在する可能性が高い領域か否かを検出するものである。
ここで、学習に用いられるサンプル用の顔画像及び非顔画像の大きさは、例えば２０×２０ｐｉｘｅｌ（画素）で行われ、また、顔画像の検出に際しても同じ大きさの領域について行われることになる。
【００２８】
さらに、このＳＶＭについて「パターン認識と学習の統計学」（岩波書店、麻生英樹、津田宏治、村田昇著）ｐｐ．１０７〜１１８の記述に基づいて多少詳しく説明すると、識別する問題が非線形である場合、ＳＶＭでは非線形なカーネル関数を用いることができ、この場合の識別関数は以下の数式１で示される。
すなわち、数式１の値が「０」の場合に識別超平面になり、「０」以外の場合は与えられた画像特徴ベクトルから計算した識別超平面からの距離の距離となる。また、数式１の結果が非負の場合は、顔画像、負の場合は非顔画像である。
【００２９】
【数１】
2005134966.tif 000003
【００３０】
ｘ、ｘｉは画像特徴ベクトルであり、特徴ベクトル生成部２０で生成された値を用いる。Ｋはカーネル関数であり、本実施の形態では以下の数式２の関数を用いる。
【００３１】
【数２】
2005134966.tif 000004
【００３２】
尚、この顔画像候補領域検索システム１００を構成する特徴ベクトル生成手段２０、ＳＶＭ３０並びに画像読取手段１０等は、実際には、ＣＰＵやＲＡＭ等からなるハードウェアと、専用のコンピュータプログラム（ソフトウェア）とからなるパソコン（ＰＣ）等のコンピュータシステムによって実現されるようになっている。
すなわち、この顔画像候補領域検索システム１００を実現するためのコンピュータシステムは、例えば図２に示すように、各種制御や演算処理を担う中央演算処理装置であるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０と、主記憶装置（Ｍａｉｎ  Ｓｔｒａｇｅ）に用いられるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４１と、読み出し専用の記憶装置であるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４２と、ハードディスクドライブ装置（ＨＤＤ）や半導体メモリ等の補助記憶装置（Ｓｅｃｏｎｄａｒｙ  Ｓｔｏｒａｇｅ）４３、及びモニタ（ＬＣＤ（液晶ディスプレイ）やＣＲＴ（陰極線管））等からなる出力装置４４、イメージスキャナやキーボード、マウス、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等の撮像センサ等からなる入力装置４５と、これらの入出力インターフェース（Ｉ／Ｆ）４６等との間を、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスやＩＳＡ（Ｉｎｄｕｓｔｒｉａｌ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ；アイサ）バス等からなるプロセッサバス、メモリバス、システムバス、入出力バス等の各種内外バス４７によってバス接続したものである。
【００３３】
そして、例えば、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フロッピー（登録商標）ディスク等の記憶媒体、あるいは通信ネットワーク（ＬＡＮ、ＷＡＮ、インターネット等）Ｎを介して供給される各種制御用プログラムやデータを補助記憶装置９３等にインストールすると共にそのプログラムやデータを必要に応じて主記憶装置９１にロードし、その主記憶装置９１にロードされたプログラムに従ってＣＰＵ９０が各種リソースを駆使して所定の制御及び演算処理を行い、その処理結果（処理データ）をバス９７を介して出力装置９４に出力して表示すると共に、そのデータを必要に応じて補助記憶装置９３によって形成されるデータベースに適宜記憶、保存（更新）処理するようにしたものである。
【００３４】
次に、このような構成を顔画像候補領域検索システム１００を用いた顔画像候補領域検索方法の一例を説明する。
図３は、実際に検索対象となる画像に対する顔画像候補領域検索方法の一例を示すフローチャートであるが、実際に識別を行う前には、前述したように識別に用いるＳＶＭ３０に対する学習用のサンプル画像となる顔画像及び非顔画像を学習させるステップを経る必要がある。
【００３５】
この学習ステップは、従来通り、サンプル画像となる顔画像及び非顔画像毎の特徴ベクトルを生成してその特徴ベクトルを顔画像であるか非顔画像であるかの情報と共に入力するものである。尚、予め学習させる学習画像が、所定の画素数、例えば「２０×２０」よりも大きい場合には、「２０×２０」の大きさにリサイズされた後、特徴ベクトル生成手段２０の平均・分散値生成部２６によってその画像が「２０×２０」のブロックにモザイク化処理されてから特徴ベクトルが得られるようになっている。
【００３６】
そして、このようにしてＳＶＭ３０に対してサンプル画像の特徴ベクトルの学習が行われたならば、図３のステップＳ１０１に示すように、先ず検索対象画像Ｇ内の識別対象となる領域を選択する。
この時、検索対象画像Ｇ内のどの位置に顔画像が含まれているかは勿論、顔画像が含まれているか否かも分かっていないため、しらみ潰しに探索するようにその領域が選択されることになる。
【００３７】
例えば、この検索対象画像Ｇが図４に示すような男女の若いカップルの写真であった場合、先ず最初に選択される領域としては、検索対象画像Ｇの左上の角部を始点とし、その画像Ｇの横方向をｘ、縦方向をｙとし、選択領域Ｚの大きさを学習用のサンプル画像と同じ「２０×２０」ｐｉｘｅｌの矩形領域とすると、最初の選択領域Ｚはａ（ｘ０＝０，ｙ０＝０）からｂ（ｘ１＝１９、ｙ１＝１９）の領域となる。
【００３８】
そして、このようにして顔画像の検索対象となる最初の選択領域Ｚが選択されたならば、図３に示すように、次のステップＳ１０２に移行してその最初の選択領域Ｚが閾値を越えた領域の近傍か否かを判断するが、最初の領域については当然にその判断が不可能なため、「Ｎｏ」が選択されてステップＳ１０３に移行し、その選択領域Ｚについての画像特徴ベクトルを算出する。その後、ステップＳ１０５に移行してその特徴ベクトルについてＳＶＭ３０を用いて識別超平面からの距離を算出すると共に、その特徴ベクトルの位置がＳＶＭ３０の識別超平面で仕切られた非負領域（顔領域）か否かを判断する（ステップＳ１０７）。
【００３９】
この判断ステップＳ１０７にて、その特徴ベクトルが非負領域に存在している（Ｙｅｓ）と判断した場合は、その選択領域Ｚが顔画像存在領域である可能性が極めて高いと考えることから、そのまま直ちにステップＳ１１３までジャンプすることになるが、非負領域でない、すなわち、その特徴ベクトルの位置がＳＶＭ３０の識別超平面で仕切られた負領域（非顔領域）に存在している（Ｎｏ）と判断した場合は、次のステップＳ１０９に移行してその特徴ベクトルに対する識別超平面からの距離が負領域に設定された閾値以上か否かを判断する。
【００４０】
すなわち、本実施の形態では、算出された選択領域Ｚの特徴ベクトルが非負領域であった場合は当然にその選択領域Ｚを顔領域と判断するが、その特徴ベクトルがＳＶＭ３０の識別超平面を境とした負領域（非顔領域）であった場合でも直ちにその選択領域Ｚを非顔領域と判断するのではなく、識別超平面より負領域側に閾値を設け、この閾値を越えた場合にのみその選択領域Ｚを非顔領域と判断するようにしたものである。
【００４１】
これによって、単に識別超平面を境に選択領域Ｚの特徴ベクトルが負領域に存在しているだけで、顔画像が存在しているにもかかわらず当該選択領域Ｚを排除してしまうような誤判定を未然に防止することが可能となる。
そして、ステップＳ１１１では、このようにして識別超平面からの距離が閾値を越えた選択領域Ｚを記憶するテーブルを更新すると共に、ステップＳ１１３ではこの閾値を越えた選択領域Ｚは勿論、識別した全ての領域を記憶するテーブルを更新することになる。
【００４２】
その後、このようにして両テーブルの更新処理が終了したならば、ステップＳ１１５に移行して全ての選択領域Ｚについて識別処理が終了したか否かを判断し、終了したと判断したとき（Ｙｅｓ）はその処理を終了することになるが、終了していないと判断したとき（Ｎｏ）は、最初のステップＳ１０１に移行して次の識別対象領域Ｚを選択してからステップＳ１０２に移行し、その選択領域Ｚが、前回に選択され、かつ閾値を越えると判断された領域Ｚの近傍か否かを判断し、「Ｙｅｓ」であれば、その領域Ｚについての以降の処理を省略して最初のステップＳ１０１に戻り、さらに次の領域Ｚを選択して同様な処理を繰り返すことになる。
【００４３】
これによって、高速な顔画像が存在する可能性が極めて低い領域についてのステップＳ１０３以降の判断処理が省略されるため、より高速な顔画像領域検索を実行することが可能となる。
例えば、図４に示すように最初の選択領域Ｚ（ｘ０＝０，ｘ１＝１９，ｙ０＝０，ｙ１＝１９）についての識別処理が終了したならば、次に図５に示すようにその選択領域Ｚを検索対象画像Ｇに対して横方向（ｘ方向）に「５」ｐｉｘｅｌだけ移動させた領域を２番目の選択領域Ｚ（ｘ０＝５，ｘ１＝２４，ｙ０＝０，ｙ１＝１９）として選択する（ステップＳ１０１）。
【００４４】
そして、そのままステップＳ１０２に移行し、その２番目に選択された領域Ｚが前回（最初）に選択された領域の近傍であって閾値を越えた領域の近傍であるか否かを判断し、「Ｙｅｓ」の場合は、その領域についてのそれ以降の処理を省略し、さらに最初のステップ１０１に戻って検索対象画像Ｇをさらに「５」ｐｉｘｅｌだけ横方向（ｘ方向）に移動させた領域を３番目の選択領域Ｚ（ｘ０＝１０，ｘ１＝２９，ｙ０＝０，ｙ１＝１９）として選択して同様な処理を繰り返すことになる。
【００４５】
すなわち、最初の選択領域Ｚ（ｘ０＝０，ｘ１＝１９，ｙ０＝０，ｙ１＝１９）がその後の判断フローで結果的に閾値を越えた領域（顔画像が存在する可能性が極めて少ない）であると判断された場合には、この領域Ｚの近傍である２番目に選択された領域Ｚ（ｘ０＝５，ｘ１＝２４，ｙ０＝０，ｙ１＝１９）にも顔画像存在する可能性が低いと考えることができることから、その２番目の領域Ｚについてのその後の判断を省略し、直ちにその次の３番目の選択領域Ｚ（ｘ０＝１０，ｘ１＝２９，ｙ０＝０，ｙ１＝１９）について判断処理を実行することで、顔画像存在する可能性が低い領域（２番目の選択領域Ｚ）について無駄な処理を両酌することができるため、より高速な顔画像検索処理を達成することが可能となる。
【００４６】
そして、このようにして検索対象画像Ｇの最上段の横ラインについてのｘ方向への領域Ｚの選択が終了したならば、次は図６に示すように最初の選択領域Ｚ（ｘ０＝０，ｘ１＝１９，ｙ０＝０，ｙ１＝１９）から縦方向（ｙ方向）に「５」ｐｉｘｅｌだけ移動させた領域を次の選択領域Ｚ（ｘ０＝０，ｘ１＝１９，ｙ０＝５，ｙ１＝２４）として選択し、その選択領域Ｚを次の横ラインの始点として同様の処理を行った後、順に「５」ｐｉｘｅｌずつ横方向（ｘ方向）にずらした領域を選択してその横ラインの右端に至るまで同様の処理を繰り返し、さらに縦方向（ｙ方向）に「５」ｐｉｘｅｌだけ次の横ラインに移動して同様の処理を検索対象画像Ｇの右下の領域に至るまで順次繰り返すことになる。
【００４７】
これによって、検索対象画像Ｇの全ての領域Ｚを選択してその全ての選択領域Ｚについての判断処理を実行することができる。
図７（ａ）は、前記ステップＳ１１３で説明した既識別選択領域テーブルの一例を、同図（ｂ）は前記ステップＳ１１１で説明した閾値を越えた識別選択領域テーブルの一例をそれぞれ示したものである。
【００４８】
すなわち、図７（ａ）では、４つの選択領域（１，２，３，４）について既に識別が終了したことを示し、図７（ｂ）では、その４つの選択領域（１，２，３，４）のうち、２つ目の選択領域（ｘ０＝５，ｘ１＝２４，ｙ０＝０，ｙ１＝１９）が閾値を越えた領域、つまり顔画像が存在する可能性が極めて少なくて候補から排除する領域ということになる。
【００４９】
図８は、図５に示すように選択領域Ｚを検索対象画像Ｇ内を横方向（ｘ方向）に移動させながら各選択領域Ｚについての識別超平面からの距離（１／１０００）を示した一例である。尚、図中「０」のラインが識別超平面であり、これより上方の領域が顔領域（非負領域）、その下方の領域が非顔領域（負領域）を示している。また、各プロット点（黒点）がそれぞれの選択領域についての識別超平面からの距離を示し、また、本図においては非顔領域側の「−１」のラインが閾値となっている。また、横軸は画素数を示したものであり、実際の画素数は、当該数値の５倍の数となっている。
【００５０】
図において、画素数「７１」〜「８１」付近のエリアのみが、唯一、識別超平面である「０」のラインを超えていることから、この例では、当該エリアが顔画像が存在する可能性が最も高いと判断することができる。一方、画素数「１１」以下の付近、画素数「６１」〜「７１」付近、画素数「１２１」〜「１３１」の付近、画素数「１６１」付近は、いずれも閾値である「−１」のラインを大きく越えている（下回っている）ことから、この付近には、顔画像が存在する可能性が極めて少ないと判断することができる。
【００５１】
従って、この図の例では、画素数「１１」以下の付近、画素数「６１」〜「７１」付近、画素数「１２１」〜「１３１」の付近、画素数「１６１」付近を除く他の領域、すなわち、１．画素数「１１」〜「６１」のエリア、２．画素数「７１」〜「１２１」のエリア、３．画素数「１３１」〜「１６１」のエリアといった３つのエリアに顔画像が存在する可能性が高いと判断することができ、しかも、その可能性の大小関係も例えば「２のエリア」→「１のエリア」→「３のエリア」というように容易に判定することが可能となる。
【００５２】
一方、図９は、図６のように、選択領域Ｚを検索対象画像Ｇ内を縦方向（ｙ方向）に移動させながら各選択領域Ｚについての識別超平面からの距離（１／１０００）を示した一例である。尚、図８と同様に「０」のラインが識別超平面であり、「−１」が閾値となっている。また、同様に横軸の数値も実際の画素数の５倍の値を示したものである。
図において、画素数「５５」付近の領域のみが、識別超平面である「０」のラインを超えていることから、この例では、当該領域に顔画像が存在する可能性が最も高いと判断することができる。一方、この画素数「５５」付近の両側の領域、及び画素数「１４５」付近は、閾値である「−１」のラインを大きく越えている（下回っている）ことから、この付近には、顔画像が存在する可能性が極めて少ないと判断することができる。
【００５３】
従って、この図の例では、画素数「５５」付近の両側の領域、及び画素数「１４５」付を除く他の領域、すなわち、１．画素数「１９」付近、２．「５５」付近、３．「７３」〜「１２７」付近、４．「１６３」〜「２１７」付近といった４つのエリアに顔画像が存在する可能性が高いと判断することができ、しかも、その可能性の大小関係も「２のエリア」→「１のエリア」→「４のエリア」→「３のエリア」というように容易に判別することが可能となる。
【００５４】
また、閾値を越えて顔画像の存在する可能性が極めて少ないと判断された領域の近傍の領域も「０」のラインを超えたことがなく、顔画像が存在する可能性が少ないと判断することができるため、図３のステップ１０２に示すように顔画像の存在する可能性が極めて少ないと判断された領域の近傍の領域について判断処理を省略してもなんら問題ないと判断することができる。
【００５５】
尚、図８及び図９の例では、識別した結果が顔画像候補領域と非顔画像候補領域とで入れ替わっている箇所があるが、識別超平面からの距離が非顔候補領域に大きい画素の近傍では顔画像と判定される領域がないことが分かる。
また、識別超平面からの距離に関する閾値を上記のように「−１」とした場合、顔領域が出現しない近傍の画素距離は「５０」画素とすることができる。
【００５６】
ただし、閾値、近傍とみなす画素距離は、学習用のサンプル画像やテスト画像、カーネル関数の詳細等に依存することから、適宜変更し得るものであることは勿論である。
このようにサポートベクタマシン３０を用いて各選択領域Ｚ毎に識別超平面からの距離を求めることによって検索対象画像Ｇ中から人の顔画像が存在する可能性が高い領域を高速、かつ正確に検索することが可能となる。
【００５７】
尚、本発明及び本実施の形態は、検索対象として極めて有用な「人間の顔」を対象としたものであるが、このようにサポートベクタマシン３０を用いて各選択領域Ｚ毎に識別超平面からの距離を求める手法によれば、「人間の顔」のみならず、「人間の体型」や「動物の顔、姿態」、「自動車等の乗り物」、「建造物」、「植物」、「地形」等といった他のあらゆるオブジェクトへの適用も可能である。
【００５８】
また、図１０は、本発明で適用可能な差分型エッジ検出オペレータの一つである「Ｓｏｂｅｌのオペレータ」を示したものである。
図１０（ａ）に示すオペレータ（フィルタ）は、注目画素を囲む８つの画素値のうち、左列及び右列に位置するそれぞれ３つの画素値を調整することで横方向のエッジを強調し、図１０（ｂ）に示すオペレータは、注目画素を囲む８つの画素値のうち、上行及び下列に位置するそれぞれ３つの画素値を調整して縦方向のエッジを強調することで縦横のエッジを検出するものである。
【００５９】
そして、このようなオペレータで生成した結果を二乗和した後、平方根をとることでエッジの強度を求め、各画素におけるエッジの強さ、またはエッジの分散値を生成することにより、画像特徴ベクトルを精度良く検出することができる。尚、前述したように、この「Ｓｏｂｅｌのオペレータ」の代えて「Ｒｏｂｅｒｔｓ」や「Ｐｒｅｗｉｔｔ」等の他の差分型エッジ検出オペレータや、テンプレート型エッジ検出オペレータ等を適用することも可能である。
【図面の簡単な説明】
【００６０】
【図１】顔画像候補領域検索システムの実施の一形態を示すブロック図である。
【図２】顔画像候補領域検索システムを実現するハードウェア構成を示す図である。
【図３】顔画像候補領域検索方法の実施の一形態を示すフローチャート図である。
【図４】検索対象画像の一例を示す図である。
【図５】検索対象画像内の選択領域を横方向にずらして選択する状態を示す図である。
【図６】検索対象画像内の選択領域を縦方向にずらして選択する状態を示す図である。
【図７】選択領域テーブルの一例を示す図である。
【図８】識別超平面からの距離と横方向への移動距離との関係を示すグラフ図である。
【図９】識別超平面からの距離と縦方向への移動距離との関係を示すグラフ図である。
【図１０】Ｓｏｂｅｌのオペレータの形状を示す図である。
【符号の説明】
【００６１】
１０…画像読取手段、２０…特徴ベクトル生成手段、２２…輝度生成部、２４…エッジ生成部、２６…平均・分散値生成部、３０…ＳＶＭ（サポートベクタマシン）、１００…顔画像候補領域検索システム、４０…ＣＰＵ、４１…ＲＡＭ、４２…ＲＯＭ、４３…補助記憶装置、４４…出力装置、４５…入力装置、４６…入出力インターフェース（Ｉ／Ｆ）、４７…バス、Ｇ…検索対象画像、Ｚ…選択領域。
【図１】
2005134966.tif 000005
【図２】
2005134966.tif 000006
【図３】
2005134966.tif 000007
【図４】
2005134966.tif 000008
【図５】
2005134966.tif 000009
【図６】
2005134966.tif 000010
【図７】
2005134966.tif 000011
【図８】
2005134966.tif 000012
【図９】
2005134966.tif 000013
【図１０】
2005134966.tif 000014