(57)【要約】【課題】高精度に顔の表情を評価する。【解決手段】画像データ１４ｅが示す画像に含まれる顔の表情を評価する表情評価方法（ステップＳ４００）を行うにあたり、まず前記画像から顔器官の輪郭Ｏ１〜Ｏ４を検出する（ステップＳ１００〜Ｓ３００）。そして、前記輪郭Ｏ１〜Ｏ４によって区画された所定領域Ｕ１，Ｕ２の面積に基づく特徴量ｐ1，ｐ3を少なくとも一つ含んだ複数の特徴量ｐ1〜ｐ4を算出する（ステップＳ４１０〜Ｓ４６０）。当該算出した特徴量ｐ1〜ｐ4を使用して前記顔の表情評価を行う（ステップＳ４７０）。【選択図】図２３
2009237624.tif 000002
【特許請求の範囲】
【請求項１】
画像データが示す画像に含まれる顔の表情を評価する表情評価方法であって、
前記画像から顔器官の輪郭を検出し、
前記輪郭によって区画された所定領域の面積に基づく特徴量を少なくとも一つ含んだ複数の特徴量を使用して前記顔の表情評価を行うことを特徴とする表情評価方法。
【請求項２】
前記複数の特徴量のそれぞれを変数とした非線形関数によって求められた表情評価値に基づいて前記顔の表情評価を行うことを特徴とする請求項１に記載の表情評価方法。
【請求項３】
複数のサンプル顔画像についての官能評価値と、当該複数のサンプル顔画像についての前記特徴量を前記非線形関数に代入したときに得られる前記表情評価値との相関が高くなるように前記非線形関数が予め設定されることを特徴とする請求項２に記載の表情評価方法。
【請求項４】
前記特徴量の少なくとも一つは上唇の上輪郭によって区画された所定領域の面積に基づくことを特徴とする請求項１から請求項３のいずれか一項に記載の表情評価方法。
【請求項５】
前記特徴量の少なくとも一つは下まぶたの輪郭によって区画された所定領域の面積に基づくことを特徴とする請求項１から請求項４のいずれか一項に記載の表情評価方法。
【請求項６】
前記輪郭の凸方向に応じて前記面積の正負の符号が定義されることを特徴とする請求項１から請求項５のいずれか一項に記載の表情評価方法。
【請求項７】
前記画像から少なくとも口の輪郭が検出された場合、当該口の輪郭によって区画された所定領域の面積に基づく特徴量を使用して前記顔の表情評価を行い、
前記画像から口の輪郭が検出されず、かつ、前記画像から目の輪郭が検出された場合、当該目の輪郭によって区画された所定領域の面積に基づく特徴量を使用して前記顔の表情評価を行うことを特徴とする表情評価方法。
【請求項８】
請求項１に記載の表情評価方法によって、複数の前記画像データについてそれぞれ前記表情評価値を算出するとともに、当該表情評価値が上位の前記画像データを印刷する印刷制御装置。
【請求項９】
画像データが示す画像に含まれる顔の表情を評価する表情評価装置であって、
前記画像から顔器官の輪郭を検出する輪郭検出手段と、
前記輪郭によって区画された所定領域の面積に基づく特徴量を少なくとも一つ含んだ複数の特徴量を使用して前記顔の表情評価を行う評価手段とを具備することを特徴とする表情評価装置。
【請求項１０】
画像データが示す画像に含まれる顔の表情を評価する機能をコンピュータに実行させるためのコンピュータ読み取り可能な表情評価プログラムしたであって、
前記画像から顔器官の輪郭を検出する輪郭検出機能と、
前記輪郭によって区画された所定領域の面積に基づく特徴量を少なくとも一つ含んだ複数の特徴量を使用して前記顔の表情評価を行う評価機能とをコンピュータに実行させることを特徴とするコンピュータ読み取り可能な表情評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表情評価方法、印刷制御装置、表情評価装置および表情評価プログラムに関し、特に画像データが示す画像に含まれる顔の表情を評価する表情評価方法、印刷制御装置、表情評価装置および表情評価プログラムに関する。
【背景技術】
【０００２】
「目の端点と口の端点の距離」や「口の横幅の長さ」や「目の横幅の長さ」といった特徴点間の距離で与えられるパラメータを使用して顔の表情評価を行う技術が提案されている（特許文献１、参照。）。かかる文献では、パラメータ空間における評価対象の顔のパラメータの分布位置に基づいて表情の評価を行うこととしている。
【特許文献１】特開２００５−５６３８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、特徴点は目や口などの顔器官の一部の特徴のみを表しているだけであり、目や口などの顔器官全体の状態を表情評価に反映させることができないという問題があった。また、特徴点が局所的なノイズの影響を受けている場合、表情評価の精度が極度に低下するという問題もあった。
【０００４】
本発明は、前記課題にかんがみてなされたもので、高精度に顔の表情を評価する表情評価方法、印刷制御装置および表情評価プログラムの提供を目的とする。
【課題を解決するための手段】
【０００５】
前記課題を解決するために、本発明は、画像データが示す画像に含まれる顔の表情を評価するにあたり、まず前記画像から顔器官の輪郭を検出する。次に、前記輪郭によって区画された所定領域の面積に基づく特徴量を少なくとも一つ含んだ複数の特徴量を使用して前記顔の表情評価を行う。前記輪郭によって区画された所定領域の面積に基づく特徴量によれば前記顔器官の状態が全体的に反映された評価を行うことができる。なお、前記輪郭によって区画された所定領域の面積に基づく特徴量を少なくとも一つ含んだ複数の特徴量であればよく、複数の前記輪郭によって区画された所定領域の面積に基づく複数の特徴量を含んでもよい。例えば、目や口の前記輪郭によって区画された所定領域の面積に基づく特徴量を双方とも含んでもよいし、これらのいずれか一方のみを含んでいてもよい。
【０００６】
さらに、前記複数の特徴量のそれぞれを変数とした非線形関数によって求められた表情評価値に基づいて前記顔の表情評価を行うようにしてもよい。前記複数の特徴量と前記表情評価値との関係が単純な線形的な関係にない場合であっても、精度よく表情評価値を算出することができる。例えば、人間の官能評価に即した前記表情評価値が得られるようにする場合、前記複数の特徴量と前記表情評価値との関係は複雑なものとなる。このような場合でも、非線形関数も用いることによって、精度よく官能評価に即した表情評価値を算出することができる。このような前記非線形関数を設定するための手法の例として、複数のサンプル顔画像についての官能評価値と、当該複数のサンプル顔画像についての前記特徴量を前記非線形関数に代入したときに得られる前記表情評価値との相関が高くなるにしてもよい。
【０００７】
さらに、前記特徴量の具体例として、前記所定領域の少なくとも一つは上唇の上輪郭によって区画された領域の面積に基づく特徴量を使用してもよい。むろん、面積をそのまま特徴量とするものに限られず、面積に基づく面積比を特徴量としてもよい。表情の変化が大きく反映される上唇の上輪郭の全体的な状態に基づいて表情を評価することができるため、精度よい表情評価を行うことができる。さらに、前記特徴量の別の具体例として、前記所定領域の少なくとも一つは下まぶたの輪郭によって区画された領域の面積に基づく特徴量を使用してもよい。
【０００８】
また、前記輪郭の凸方向に応じて前記面積の正負の符号を定義するようにしてもよい。このようにすることにより、表情評価に前記輪郭の凸方向を反映させることができる。さらに、本発明の表情評価方法を印刷制御装置に利用するようにしてもよい。例えば、本発明の表情評価方法によって複数の前記画像データについてそれぞれ前記表情評価値を算出し、当該表情評価値が上位の前記画像データを印刷することにより、印刷対象として好ましい表情の顔が含まれる前記画像データを優先的に印刷させることができる。
【０００９】
さらに、前記顔器官の輪郭として、口と目の輪郭が双方とも検出された場合、双方の輪郭から得られた前記特徴量に基づいて表情評価を行うようにしてもよいし、いずれか一方のみを表情評価に使用してもよい。例えば、前記画像から少なくとも口の輪郭が検出された場合、当該口の輪郭によって区画された所定領域の面積に基づく特徴量を使用して前記顔の表情評価を行うようにするとともに、前記画像から口の輪郭が検出されず、かつ、前記画像から目の輪郭が検出された場合には当該目の輪郭によって区画された所定領域の面積に基づく特徴量を使用して前記顔の表情評価を行うようにしてもよい。すなわち、口の輪郭を優先させて前記顔の表情評価を行うようにし、口の輪郭が検出されない場合のみ目の輪郭に基づく表情判定を行うようにしてもよい。
【００１０】
さらに、本発明の技術的思想は、具体的な顔状態評価方法にて具現化されるのみならず、当該方法を顔状態評価装置において具現化することもできる。すなわち、上述した顔状態評価方法が行う各工程に対応する手段を有する顔状態評価装置としても本発明を特定することができる。むろん、上述した顔状態評価装置がプログラムを読み込んで上述した各手段を実現する場合には、当該各手段に対応する機能を実行させるプログラムや当該プログラムを記録した各種記録媒体においても本発明の技術的思想が具現化できることは言うまでもない。なお、本発明の顔状態評価装置は、単一の装置のみならず、複数の装置によって分散して存在可能であることはいうまでもない。また、プリンタ等の印刷装置やデジタルスチルカメラ等の画像入力装置において本発明の顔状態評価方法を実現するようにしてもよい。
【発明を実施するための最良の形態】
【００１１】
以下、下記の順序に従って本発明の実施形態を説明する。
１．表情評価装置の構成：
２．表情評価処理の流れ：
２−１．顔器官検出処理：
２−２．目の輪郭検出処理：
２−３．口の輪郭検出処理：
２−４．表情評価処理：
２−５．表情評価関数の設定：
３．まとめおよび変形例：
３−１．変形例１：
３−２．変形例２：
３−３．変形例３：
３−４．変形例４：
３−５．変形例５：
３−６．変形例６：
【００１２】
１．表情評価装置の構成
図１は、本発明の顔状態評価装置の一実施形態にかかる表情評価装置を具体的に実現するコンピュータの構成を示している。同図において、コンピュータ１０はＣＰＵ１１とＲＡＭ１２とＲＯＭ１３とハードディスクドライブ（ＨＤＤ）１４と汎用インターフェイス（ＧＩＦ）１５とビデオインターフェイス（ＶＩＦ）１６と入力インターフェイス（ＩＩＦ）１７とバス１８とから構成されている。バス１８は、コンピュータ１０を構成する各要素１１〜１７の間でのデータ通信を実現するものであり、図示しないチップセット等によって通信が制御されている。ＨＤＤ１４には、オペレーティングシステム（ＯＳ）を含む各種プログラムを実行するためのプログラムデータ１４ａが記憶されており、当該プログラムデータ１４ａをＲＡＭ１２に展開しながらＣＰＵ１１が当該プログラムデータ１４ａに準じた演算を実行する。
【００１３】
また、ＨＤＤ１４には、デジタルスチルカメラやスキャナによって画像入力された画像データ１４ｅと、後述するテンプレートマッチングにおいて使用する多数の顔テンプレート１４ｂと目テンプレート１４ｃと口テンプレート１４ｄが記憶されている。ＧＩＦ１５は、例えばＵＳＢ規格に準じたインターフェイスを提供するものであり、外部のプリンタ２０をコンピュータ１０に接続させている。ＶＩＦ１６はコンピュータ１０を外部のディスプレイ４０に接続し、ディスプレイ４０に画像を表示するためのインターフェイスを提供する。ＩＩＦ１７はコンピュータ１０を外部のキーボード５０ａとマウス５０ｂに接続し、キーボード５０ａとマウス５０ｂからの入力信号をコンピュータ１０が取得するためのインターフェイスを提供する。
【００１４】
図２は、コンピュータ１０において実行されるプログラムのソフトウェア構成を示している。同図において、オペレーティングシステム（ＯＳ）Ｐ１と表情評価アプリケーションＰ２とプリンタドライバＰ３が実行されている。ＯＳ Ｐ１は各プログラム間のインターフェイスを提供し、プリンタドライバＰ３はプリンタ２０を制御するための処理を実行する。表情評価アプリケーションＰ２は、顔検出部Ｐ２ａと顔器官検出部Ｐ２ｂと選択部Ｐ２ｃと輪郭検出部Ｐ２ｄと表情評価部Ｐ２ｅとから構成されている。さらに、輪郭検出部Ｐ２ｄは傾き補正部Ｐ２ｄ１とサンプリング部Ｐ２ｄ２とスカラー変換部Ｐ２ｄ３と変換関数設定部Ｐ２ｄ４とパラメータ探索部Ｐ２ｄ５と評価値算出部Ｐ２ｄ６と異常判定部Ｐ２ｄ７とから構成されている。また、表情評価部Ｐ２ｅは、矩形特定部Ｐ２ｅ１と輪郭特徴量算出部Ｐ２ｅ２と表情評価値算出部Ｐ２ｅ３とから構成されている。表情評価アプリケーションＰ２を構成する各モジュールＰ２ａ〜Ｐ２ｅが実行する処理の詳細については後述する表情評価処理の流れとともに説明する。
【００１５】
２．表情評価処理の流れ
図３は、コンピュータ１０が行う処理の全体的な流れを示している。同図に示すように表情評価処理（ステップＳ４００）を行うための前処理として、顔器官検出処理（ステップＳ１００）と目の輪郭検出処理（ステップＳ２００）と口の輪郭検出処理（ステップＳ３００）が行われる。ここでは、顔器官検出処理（ステップＳ１００）から順に説明していく。
【００１６】
２−１．顔器官検出処理
図４は、顔器官検出処理の流れを示している。ステップＳ１１０においては、顔検出部Ｐ２ａが輪郭検出の対象とする画像データ１４ｅをＨＤＤ１４から取得する。本実施形態において輪郭検出の対象とする画像データ１４ｅは、各画素が示す色がＲＧＢ各チャネルの階調値の組み合わせ（ＲＧＢ色空間におけるベクトル）で表現されたビットマップデータである。後述する図面において、便宜的に２値の画像が示される場合があるが、実際には多階調のカラー画像データが処理の対象となる。なお、画像データ１４ｅは、ＨＤＤ１４に記憶されている段階で圧縮されていてもよいし、他の色空間で各画素の色が表現されていてもよい。これらの場合、画像データ１４ｅの展開や色空間の変換を実行して、顔検出部Ｐ２ａがＲＧＢビットマップデータの画像データ１４ｅを取得する。なお、画像データ１４ｅはＨＤＤ１４に記憶されているものに限らず、例えばデジタルスチルカメラやメモリカード等に記憶されているものであってもよい。ディスプレイ４０に表示されたＵＩ画面を参照してキーボード５０ａやマウス５０ｂを操作することにより、輪郭検出処理の対象とする画像データ１４ｅが指定される。ステップＳ１２０においては、顔検出部Ｐ２ａが画像データ１４ｅに含まれる顔を検出する。
【００１７】
図５は、ステップＳ１２０において行われる顔検出の様子を模式的に示している。同図において、顔検出部Ｐ２ａがＨＤＤ１４から取得した複数の顔テンプレート１４ｂが示されている。本実施形態においては、画像データ１４ｅと各顔テンプレート１４ｂとのテンプレートマッチングを行うことにより、画像データ１４ｅから顔を検出する。各顔テンプレート１４ｂは一定の大きさ画像データであり、それぞれ顔が含まれている。各顔テンプレート１４ｂに含まれる顔の大きさおよび位置（中央）は、ほぼ一定となるように規格化されている。また、多様な顔が検出できるように、種々の顔が各顔テンプレート１４ｂに含まれている。顔テンプレート１４ｂとのテンプレートマッチングを行うにあたっては、画像データ１４ｅにおいて矩形状の検出窓ＳＷを生成し、当該検出窓ＳＷの位置と大きさと回転角度を変えながら、検出窓ＳＷの内側の画像と各顔テンプレート１４ｂの画像との類似性を評価する。
【００１８】
そして、類似性が一定の基準を満足するとき、顔が存在すると判定し、そのときの検出窓ＳＷの位置と大きさと回転角度を取得する。なお、本実施形態において、検出窓ＳＷは３０度ずつ回転されるものとする。画像データ１４ｅにおいて回転している顔は、対応する角度だけ検出窓ＳＷを回転させたときにマッチングすることとなる。なお、顔テンプレート１４ｂは、人種や性別や年齢やなど多くの種類の顔を含んでいるとともに、画像面に対する顔向きについても多くの角度の顔を含んでいる。画像データ１４ｅの全体に検出窓ＳＷを移動させることにより、画像データ１４ｅの不特定の位置に存在する単数または複数の顔が存在する検出窓ＳＷの位置と大きさと回転角度を取得することができる。なお、本実施形態では、単一の顔が検出されたものとして以下説明する。
【００１９】
ステップＳ１３０において、顔検出部Ｐ２ａは、顔テンプレート１４ｂとマッチングする検出窓ＳＷの位置と大きさと回転角度に基づいて、当該検出窓ＳＷに含まれる領域の画像を画像データ１４ｅから顔画像データＦＤとして抽出する。このとき、顔画像データＦＤの大きさが一定の大きさとなるように解像度変換が行われる。本実施形態においては、１００×１００画素の大きさとなるように、顔画像データＦＤの画素が内挿または間引きされる。また、画像データ１４ｅにおける顔の回転角に対応して検出窓ＳＷが回転されている場合には、この回転を解消するように顔画像データＦＤを回転させる。ただし、検出窓ＳＷの回転角は３０度ずつであるため、顔画像データＦＤにおいて、±１５度の範囲で顔の回転角が残存し得ることとなる。また、各顔テンプレート１４ｂに含まれる顔の大きさおよび位置が規格化されているため、これとマッチングする顔画像データＦＤにおける顔の位置や大きさもほぼ一定となる。以上のようにして、顔画像データＦＤが得られると、ステップＳ１４０において顔器官検出部Ｐ２ｂが顔器官としての目および口を検出する。
【００２０】
図６は、ステップＳ１４０において顔器官を検出する様子を模式的に示している。顔器官検出部Ｐ２ｂは、ＨＤＤ１４から多数の目テンプレート１４ｃと口テンプレート１４ｄを取得し、これらと顔画像データＦＤとのテンプレートマッチングを行う。ここでも顔画像データＦＤにおいて矩形状の検出窓ＳＷを生成し、検出窓ＳＷの位置を変更していきながら検出窓ＳＷの内側の画像と各目テンプレート１４ｃや各口テンプレート１４ｄとの類似性を比較していく。ただし、顔画像データＦＤにおける顔の位置や大きさもほぼ一定であり、顔の回転角も３０度単位で補正されているため、当該顔に含まれる目や口の回転角には大きなずれはないと考えることができる。従って、ここでは検出窓ＳＷの回転角を変更することなく、検出窓ＳＷの大きさと位置のみを変えながらテンプレートマッチングを行うことができる。
【００２１】
図７は、左右の目と口が存在する検出窓ＳＷが検出された顔画像データＦＤの様子を示している。図７Ａにおいて、左右の目を中央に含む矩形状の検出窓ＳＷ１，ＳＷ２と、口を含む検出窓ＳＷ３が検出されている。このように正面から撮影した顔の場合、通常、左右の目と口が存在する検出窓ＳＷ１，ＳＷ２，ＳＷ３の位置および大きさが検出されることとなる。特に左右の目の検出窓ＳＷ１，ＳＷ２の大きさは互いに同等となる。しかし、図７Ｂのように、顔が画像面に対して正面を向いておらず、所定の方向に顔が向いている場合には、左右の目の検出窓ＳＷ１，ＳＷ２の大きさは同等とならない。例えば、顔向きが右方向に傾いている場合、左目が正面に近い方向を向き、右目は斜めに撮影されることとなるため、左目の検出窓ＳＷ１の方が右目の検出窓ＳＷ２よりも大きく検出されることとなる。反対に顔向きが左方向に傾いている場合、右目の検出窓ＳＷ２の方が左目の検出窓ＳＷ１よりも大きく検出されることとなる。なお、本明細書および図面において、左右（ＬＲ）とは図面を正面から見たときの左右を意味するものとする。従って、現実の顔における左右とは反対となる。なお、左右の目が検出できるように、目テンプレート１４ｃには左目のものと右目のものが多数含まれている。以上のようにして、各顔器官の検出が完了すると、ステップＳ１５０にて顔画像データＦＤおよび検出窓ＳＷ１，ＳＷ２，ＳＷ３の位置および大きさをＨＤＤ１４またはＲＡＭ１２に記憶させ、次の目の輪郭検出処理（ステップＳ２００）に移行する。
【００２２】
２−２．目の輪郭検出処理
図８は、目の輪郭検出処理の流れを示している。ステップ２１０において、顔器官検出の結果を取得するとともに、輪郭検出部２ｃの傾き補正部Ｐ２ｄ１が左右の目を中央に含む検出窓ＳＷ１，ＳＷ２の重心の座標を算出し、当該重心同士を結んだ直線の水平線に対する傾きＳを算出する。上述したように、顔検出の段階で３０度単位の回転角補正がなされているため、ここでは基本的に±１５度以内の角度に対応した傾きＳが算出されることとなる。ステップＳ２２０においては、ステップＳ１４０において検出した検出窓ＳＷ１，ＳＷ２のどちらが大きいかを選択部Ｐ２ｃが判定し、大きい方の検出窓ＳＷ１，ＳＷ２を選択する。すなわち、同一の顔が有する左右の目のうち大きく検出された方の目に対応する検出窓ＳＷ１，ＳＷ２を選択部Ｐ２ｃが選択する。基本的には、顔が画像面に対して正面を向いていない場合、正面に近い方を向いている目に対応する検出窓ＳＷ１，ＳＷ２が選択されることとなる。また、顔向きの角度が大きすぎたり、目に髪等がかっている等の著しい検出阻害要因があったりして一方の目の検出窓ＳＷ１，ＳＷ２しか検出できない場合には、検出された方の大きいものとして選択するものとする。
【００２３】
ステップＳ２３０においては、傾き補正部Ｐ２ｄ１が顔画像データＦＤから選択された方の検出窓ＳＷ１，ＳＷ２に属する領域を、目画像データＥＩとして抽出する。本実施形態では、左目の検出窓ＳＷ１が選択され、当該検出窓ＳＷ１に属する領域が目画像データＥＩとして抽出されるものとする。このとき、目画像データＥＩに対してステップＳ２２０にて算出した傾きＳに応じた傾き補正を行う。
【００２４】
図９は、ステップＳ２３０において傾き補正部Ｐ２ｄ１が実行する傾き補正の様子を概念的に示している。同図において、矩形状の検出窓ＳＷ１の上辺と下辺を傾きＳに応じて傾斜させ、傾斜後の検出窓ＳＷ（破線で図示）に属する画素を抽出する。検出窓ＳＷ１の上辺と下辺が傾きＳに応じて傾斜しているため、抽出された各画素列の位置がずれることとなる。そして、抽出した各画素列の上端・下端位置を揃えることにより、矩形状とし、目画像データＥＩを得る。これにより、目画像データＥＩに含まれる目の傾きを解消することができ、目画像データＥＩにおいて目をほぼ水平とすることができる。なお、本来の画像から画素の位置をずらしているため、輪郭の滑らかさが不正確になったり、目の形状がいびつとなることも考えられるが、±１５度以内に対応する量の傾きを調整するに過ぎないため、問題とはならない。さらに本実施形態においては、２５×２５画素の大きさに規格化されるように、目画像データＥＩの画素を内挿または間引きする。以上のようにして目画像データＥＩが得られると、目画像データＥＩをスカラー量Ｚの画像データに変換する処理をステップＳ５００にて実行する。なお、目画像データＥＩにおける鉛直方向の位置をｙと表し、水平方向の位置をｘと表すとともに、それぞれ左上隅をｘ＝ｙ＝０とする。
【００２５】
図１０は、ステップＳ５００にて実行するスカラー変換処理（スカラー量マップ取得手段）の流れを示している。目画像データＥＩは各画素がＲＧＢ階調（ＲＧＢベクトル）を有する画像データであるが、スカラー変換処理では、目画像データＥＩを各画素がスカラー量Ｚの情報を有する画像データに変換する処理を実行する。まず、ステップＳ５１０において、サンプリング部Ｐ２ｄ２が顔画像データＦＤの一部の画素をサンプリングする。
【００２６】
図１１は、ステップＳ５１０におけるサンプリングの様子を示している。顔画像データＦＤにおいて左右の目を含む検出窓ＳＷ１，ＳＷ２の左下隅と右下隅を結ぶ線分Ｌ１と、左右の検出窓ＳＷ１，ＳＷ２の間において線分Ｌ１を２等分する鉛直方向の線分Ｌ２が示されている。線分Ｌ２の長さは検出窓ＳＷ１，ＳＷ２の幅の平均値と同じとされている。線分Ｌ１，Ｌ２は所定の幅を有しており、線分Ｌ１，Ｌ２に対応する位置の画素を本実施形態のサンプリングの対象とする。線分Ｌ１，Ｌ２は、目の下の略一定の高さの位置と、左右の目の間の位置に対応している。このような位置からサンプリングすることにより、顔の輪郭外や目や眉毛や鼻の穴や口などの色の画素はサンプリングされなくなり、基本的に肌色の画素のみをサンプリングすることができる。また、線分Ｌ１，Ｌ２の双方からサンプリングを行うようにしているため、仮に線分Ｌ１，Ｌ２の一部に眼鏡のフレームや前髪などの肌色以外の画素が含まれたとしても、後述する統計指標への影響を抑えることができる。むろん、ある程度、肌色のみに絞り込むことができればよく、例えば頬や額等の他の領域からサンプリングを行うようにしてもよい。
【００２７】
サンプリング部Ｐ２ｄ２は、サンプリング対象の画素のＲＧＢ階調を取得し、ＲＧＢ階調の平均μ（μR，μG，μB）と分散・共分散行列Ｓを統計指標として算出する（平均値算出手段）。平均μは、ＲＧＢ各チャネルごとに階調の相加平均を算出することによって得ることができる。また、分散・共分散行列Ｓは下記の（１）式によって定義される。
【数１】
2009237624.tif 000003
前記の（１）式において、ＳR，ＳG，ＳBはＲＧＢ各チャネルについての分散を示しており、ＳRG，ＳGB，ＳRBはＲ−Ｇ，Ｇ−Ｂ，Ｒ−Ｂ間の共分散を示している。
【００２８】
図１２は、ステップＳ５１０におけるサンプリングによって得られる平均μ（μR，μG，μB）と分散ＳR，ＳG，ＳBをグラフによって示している。本発明において、サンプリングされた画素が示す色の３次元のＲＧＢ色空間における分布は正規分布Ｎ（μ，Ｓ）であると仮定しており、ＲＧＢ階調分布がそれぞれ平均μ（μR，μG，μB）を中心とした正規分布ＮR（μR，ＳR），ＮG（μG，ＳG），ＮB（μB，ＳB）と仮定されている様子が図示されている。平均μ（μR，μG，μB）は、検出された顔において最も標準的な肌色を示し、分散ＳR，ＳG，ＳBは肌色を示す各チャネルの階調のばらつきの程度を示している。通常、分散ＳR，ＳG，ＳBはそれぞれ異なる大きさとなるが、平均μ（μR，μG，μB）に各分散ＳR，ＳG，ＳBの平方根（標準偏差）を加減算した値で囲まれた範囲の確率は６８．２％となる。
【００２９】
なお、本明細書において”肌色”とは、絶対的な色彩値が特定される特定色を意味するのではなく、平均μ（μR，μG，μB）の付近に分布する色を意味する。従って、処理対象の顔に応じて”肌色”が意味する絶対色が変動することとなる。平均μと分散行列Ｓが得られると、ステップＳ５２０において、スカラー変換部Ｐ２ｄ３は、各画素がＲＧＢ階調を有する目画像データＥＩを取得する。
【００３０】
ステップＳ５３０において、スカラー変換部Ｐ２ｄ３は、目画像データＥＩから一つの画素を順次選択し、選択した画素のＲＧＢ階調（ｒ，ｇ，ｂ）を下記の（２）式に代入することよってマハラノビス平方距離ＤM2に変換する。
【数２】
2009237624.tif 000004
【００３１】
なお、前記の（２ａ）式において、Δｒは（ｒ−μR）であり、Δｇは（ｇ−μG）であり、Δｂは（ｂ−μB）である。マハラノビス平方距離ＤM2は、上述した肌色のサンプリングによって得られた標準的な肌色を示す平均μ（μR，μG，μB）と、選択した画素のＲＧＢ階調（ｒ，ｇ，ｂ）とのＲＧＢ色空間における平方距離（ＲＧＢ階調値のずれ量）に対応する指標値であり、その大きさはＲＧＢ色空間における色のずれ方向に依存しない。すなわち、マハラノビス平方距離ＤM2が同じであれば、平均μ（μR，μG，μB）からの色ずれ方向が異なっていても、確率的には同程度の差を有していると考えることができ、以下においてＲＧＢ色空間における色ずれ方向を無視した処理を行うことができる。
【００３２】
図１３は、ＲＧＢ色空間（ＲＧ平面）におけるマハラノビス平方距離ＤM2の等値線を示している。同図において、横軸はＲ階調（ｒ）を示し、縦軸はＧ階調（ｇ）を示している。等値線は、ＲＧＢ各チャネルの分散ＳR，ＳG，ＳBの相違に起因して、略楕円状となっている。平均μ（μR，μG）においてマハラノビス平方距離ＤM2が０となり、ＲＧ平面において平均μ（μR，μG）から離れるほどマハラノビス平方距離ＤM2が大きくなっている。そのため、目画像データＥＩに含まれる肌色とは異なる白目や黒目の画素は、肌色の画素よりもマハラノビス平方距離ＤM2が大きくなる。このように、画素の色を示すベクトルとしてのＲＧＢ階調（ｒ，ｇ，ｂ）が、標準的な肌色とのＲＧＢ階調値のずれ量を示すスカラーとしてのマハラノビス平方距離ＤM2に変換することができる。目画像データＥＩのすべての画素についてマハラノビス平方距離ＤM2への変換が完了すると、目画像データＥＩはマハラノビス平方距離ＤM2の画像データＤM2（ｘ，ｙ）に変換されたこととなる。
【００３３】
ステップＳ５４０において、スカラー変換部Ｐ２ｄ３は、目画像データＥＩの画素を順次選択し、選択した画素のマハラノビス平方距離ＤM2を下記の（３）式で示す変換関数に代入することによりスカラー量Ｚに変換していく。
【数３】
2009237624.tif 000005
前記の（３）式においてα、ｕは前記変換関数の変換特性を決定付けるパラメータである。本実施形態では、α＝１に固定し、ｕの初期値を３とする。
【００３４】
図１４は、前記変換関数の変換特性を示している。同図において、横軸は変換前のマハラノビス平方距離ＤM2を示し、縦軸は変換後のスカラー量Ｚを示している。また、ある目画像データＥＩの変換前のマハラノビス平方距離ＤM2の分布と、変換後のスカラー量Ｚの分布も示している。スカラー量Ｚは、マハラノビス平方距離ＤM2が０のとき−１となり、マハラノビス平方距離ＤM2がパラメータｕのとき０となる非線形関数によって表される。ここで、横軸のマハラノビス平方距離ＤM2において、パラメータｕ＝３を中心とした領域を第２領域Ａ２と表し、第２領域Ａ２よりもマハラノビス平方距離ＤM2の値が大きくなる領域を第１領域Ａ１と表すものとする。この第２領域Ａ２においては、変換関数の傾きが他の領域よりも急となっており、マハラノビス平方距離ＤM2の単位変動に応じたスカラー量Ｚの変動量が他の領域よりも大きくなっている。第２領域Ａ２よりもマハラノビス平方距離ＤM2が大きくなる第１領域Ａ１においては、変換後のスカラー量Ｚが次第に１に飽和していくような変換特性を有している。第２領域Ａ２は、肌色に対応したマハラノビス平方距離ＤM2の領域と、非肌色に対応したマハラノビス平方距離ＤM2の領域との間に設定されるのが望ましい。この第２領域Ａ２の位置は、パラメータｕによって設定されるが、初期のパラメータｕ＝３は以下の根拠に基づいて設定されている。
【００３５】
図１５は、マハラノビス平方距離ＤM2と確率分布の関係をグラフによって示している。同図において、横軸はマハラノビス平方距離ＤM2を示している。一方、縦軸は、ステップＳ５１０にてサンプリングした肌色の画素のＲＧＢ階調の平均μ（μR，μG，μB）と分散・共分散行列Ｓによって定義される正規分布Ｎ（μ，Ｓ）における確率分布（下側確率）を示している。同図に示すようにマハラノビス平方距離ＤM2は、ｎ次元カイ二乗分布に従う。本実施形態では、ＲＧＢの階調値で表されるカラー画像を処理の対象としており、３次元カイ二乗分布（実線で図示）によって各マハラノビス平方距離ＤM2に対応する確率を推定することができる。マハラノビス平方距離ＤM2＝３のとき、下側確率が約６０％となっている。すなわち、肌色を示す画素のうち約６０％が、マハラノビス平方距離ＤM2が３以下となるということが分かる。マハラノビス平方距離ＤM2が３を超えてくると、その画素が肌色を示すことが疑わしくなっていくということが推測できる。すなわち、マハラノビス平方距離ＤM2が３を超えてくる付近の領域が、肌色に対応したマハラノビス平方距離ＤM2の領域と、非肌色に対応したマハラノビス平方距離ＤM2の領域との間の領域であると推定できる。そのため、本実施形態では、パラメータｕの初期値を３とし、マハラノビス平方距離ＤM2が３となる付近の領域を第２領域Ａ２と設定している。なお、モノクロ画像の場合には、マハラノビス平方距離ＤM2が１次元カイ二乗分布（破線で図示）に従う。
【００３６】
図１４において示した前記変換関数による変換前のマハラノビス平方距離ＤM2の分布においては、マハラノビス平方距離ＤM2＝０を中心とした肌色の分布Ｇ１と目画像データＥＩに含まれる白（白目）の分布Ｇ２と黒（黒目、眉等）の分布Ｇ３が存在する。これに対して変換後のスカラー量Ｚの分布においては、肌色の分布Ｇ１はスカラー量Ｚ＝−１を中心として分布し、目画像データＥＩに含まれる白の分布Ｇ２と黒の分布Ｇ３は分布全体が１にほぼ飽和した値に変換されている。また、平均μ（μR，μG，μB）が示す標準的な肌色と比較して明るめの肌色や暗めの肌色は、パラメータｕの初期値である３付近に位置しており、傾きが急な第２領域Ａ２に存在することとなる。
【００３７】
以上説明した変換関数によって、目画像データＥＩのすべての画素のマハラノビス平方距離ＤM2をスカラー量Ｚに変換することにより、目画像データＥＩをスカラー量Ｚの画像データＺ（ｘ，ｙ）に変換することができる。以下、スカラー量Ｚの画像データＺ（ｘ，ｙ）に変換された目画像データＥＩをＺマップとも表記するものとする。なお、Ｚマップはスカラー量マップに相当する。なお、マハラノビス平方距離ＤM2も肌色らしさを示す指標として使用することが可能であるが、上述した変換関数による変換したスカラー量Ｚによれば、肌色らしいか否かをより明瞭に判別することができる。
【００３８】
ステップＳ５５０において、変換関数設定部Ｐ２ｄ４は、スカラー量Ｚが所定の閾値Ｔｈ１を超える画素を計数し、当該閾値Ｔｈ１を超える画素の個数比率（面積比率）が所定の閾値Ｔｈ２を超えているか否かを判定する。本実施形態では、閾値Ｔｈ１＝０．６とし、閾値Ｔｈ２＝３３％とする。図１４において、閾値Ｔｈ１＝０．６を破線で示しており、閾値Ｔｈ１＝０．６を超える画素は、飽和しているとみなし、肌色らしくない色であると判断する。また、白の分布Ｇ２と黒の分布Ｇ３も、閾値Ｔｈ１＝０．６を超える画素に該当することとなる。すなわち、閾値Ｔｈ１による閾値判定によって目画像データＥＩの各画素が肌色らしいか肌色らしくないかを判定することができる。閾値Ｔｈ１を超える画素の比率が大きいほど、肌色らしくない画素の目画像データＥＩにおける面積比率が大きくなるということが言える。
【００３９】
ここで、目画像データＥＩは、左右いずれかの目とその周辺の領域の画像を示すものであり、目画像データＥＩにおいて目が占める面積は、目画像データＥＩとマッチングする目テンプレート１４ｃと同様となる。上述したとおり目テンプレート１４ｃにおいては目の大きさが規格化されているため、目画像データＥＩにおける目の大きさも目テンプレート１４ｃにて規格化された目の大きさと同様となると考えることができる。従って、Ｚマップにおいて、肌色らしくない画素が占める面積比率も一定の傾向を有すると考えることができる。本実施形態では、肌色らしくない画素が占める面積比率が閾値Ｔｈ２＝３３％を超えることが妥当であると仮定し、肌色らしくない画素が占める面積比率が閾値Ｔｈ２＝３３％以下である場合には、変換関数設定部Ｐ２ｄ４がステップＳ５６０において上述した変換関数のパラメータｕを変更する。パラメータｕは、正規分布Ｎ（μ，Ｓ）を仮定した場合の推測値であるため、本実施形態のように実際の面積比率に基づく妥当性によって調整するのが望ましい。なお、本実施形態における閾値Ｔｈ１，閾値Ｔｈ２は一例であり、異なる値を採用してもよい。また、面積比率の妥当な範囲を閾値Ｔｈ２だけでなく、上限値と下限値によって規定するようにしてもよい。
【００４０】
ステップＳ５６０においては、パラメータｕをもとの値の４倍に変更し、ステップＳ５４０に戻る。そして、ステップＳ５５０において、変更したパラメータｕを前記の（３）式に適用し、再度、目画像データＥＩのマハラノビス平方距離ＤM2をスカラー量Ｚに変換して、再度、Ｚマップを得る。ステップＳ５５０においては、同様にＺマップにおいて肌色らしくない画素の面積比率の妥当性を判定し、妥当でなければ再度パラメータｕを４倍する。以上の処理を繰り返して実行することにより、肌色らしくない画素の面積比率の妥当となるまで、変換関数を最適化してくことができる。
【００４１】
本実施形態では、パラメータｕを順次大きくしていくため、変換関数による変換特性が図１４において破線で示すように推移していく。すなわち、傾きが急となる第２領域Ａ２をマハラノビス平方距離ＤM2が大きくなる方向にシフトさせていくことができる。これにともなって、第１領域Ａ１の幅が狭められることとなる。このようにすることにより、肌色のばらつきが異なる様々な顔についても、適切な変換関数を設定することができる。ステップＳ５５０において、スカラー量Ｚが閾値Ｔｈ１を超える画素の比率が所定の閾値Ｔｈ２を超えていると判定した場合には、パラメータｕの変更を行うことなくスカラー変換処理を終了させ、各画素のＲＧＢ階調がスカラー量Ｚの階調値に変換された目画像データＥＩ（Ｚマップ）をパラメータ探索部Ｐ２ｄ５に出力する。なお、本実施形態では、パラメータｕを変更するようにしたが、第１領域Ａ１と第２領域Ａ２の範囲を調整するためにパラメータαも変更してもよい。第１領域Ａ１を広くするためにはパラメータαを大きくし、第２領域Ａ２を広くするためにはパラメータαを小さくすればよい。むろん、パラメータｕを大きめに設定し、徐々に小さく変更していってもよい。
【００４２】
図１６は、各画素がスカラー量Ｚ（ｘ，ｙ）で表されるＺマップの一例を示している。同図において、目画像データＥＩの鉛直断面と水平断面におけるスカラー量Ｚ（ｘ，ｙ）を示している。鉛直断面において、黒目に対応する部分はスカラー量Ｚ（ｘ，ｙ）が１に近い値となっており、それ以外の肌色に対応する部分は−１〜０付近の間の値となっている。目の輪郭を構成する黒目と肌色との境界においては、鉛直方向の勾配が大きい値となっている。一方、水平断面において、黒目と白目に対応する部分はともにスカラー量Ｚが１に近い値となっており、それ以外の肌色に対応する部分は−１に近い値となっている。目の輪郭を構成する白目と肌色との境界における水平方向の勾配が大きい値となっているが、黒目と白目の境界においては勾配が極めて小さくなっている。ステップＳ２４０（図８）において、パラメータ探索部Ｐ２ｄ５は、目画像データＥＩを変換したＺマップを取得する。ステップＳ１７０において、パラメータ探索部Ｐ２ｄ５は、Ｚマップにおいて目の輪郭パラメータＬ，Ｒ，Ｔ，Ｂを初期設定する（ステップＳ２５０）。
【００４３】
図１７は、Ｚマップにおける輪郭パラメータＬ，Ｒ，Ｔ，Ｂを示している。輪郭パラメータＬ，Ｒ，Ｔ，Ｂは、目の輪郭における目尻と目頭と上頂点と下頂点に対応しており、それぞれ水平方向と鉛直方向の座標によってＬ（ｘL，ｙL），Ｒ（ｘR，ｙR），Ｔ（ｘT，ｙT），Ｂ（ｘB，ｙB）と表される。輪郭パラメータＬ，Ｒ，Ｔ，Ｂの初期値が設定できると、目の輪郭を近似するための輪郭線Ｏ（第１近似曲線）を生成することができる（第１近似手段）。本実施形態において、輪郭線Ｏは、左上部分の曲線Ｏ１と、右上部分の曲線Ｏ２と、左下部分の曲線Ｏ３と、左下部分の曲線Ｏ４によって近似される。各曲線Ｏ１〜Ｏ４は下記の（４）式で表される。
【数４】
2009237624.tif 000006
【００４４】
前記の（４）式において、曲線Ｏ１は輪郭パラメータＴの座標を頂点とし、輪郭パラメータＬの座標を通過する上に凸の２次曲線で表される。ａ1，ａ2は正であり、ａ3，ａ4は負とする。曲線Ｏ２は輪郭パラメータＴの座標を頂点とし、輪郭パラメータＲの座標を通過する上に凸の２次曲線で表される。一方、曲線Ｏ３は輪郭パラメータＢの座標を頂点とし、輪郭パラメータＬの座標を通過する下に凸の２次曲線で表される。曲線Ｏ４は輪郭パラメータＢの座標を頂点とし、輪郭パラメータＲの座標を通過する下に凸の２次曲線で表される。輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を定めると、曲線Ｏ１〜Ｏ４が一意に定まるため、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を初期設定することにより、輪郭線Ｏの位置および形状が初期設定されることとなる。なお、輪郭パラメータＬ，Ｒ，Ｔおよび輪郭パラメータＬ，Ｒ，Ｂのそれぞれ３点の組み合わせの位置関係に注目すると、輪郭パラメータＬ，Ｒの座標が水平方向の両外側に位置する終端点に相当し、輪郭パラメータＴ，Ｂの座標が共通の頂点に相当する。以上のような輪郭線Ｏを配置するために、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの初期値は、少なくともｘL＜ｘT＜ｘR，ｘL＜ｘB＜ｘR，ｙT＜ｙL＜ｙB，ｙT＜ｙR＜ｙBが満足されていればよい。本実施形態では、図１７に図示するように目画像データＥＩの中央鉛直線に対して左右対称、かつ、中央よりやや下の水平線に対して上下対称に設定する。また、目テンプレート１４ｃにて規格化された目の輪郭（破線で図示）よりもやや外側に輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標の初期値を設定する。
【００４５】
以上のようにＺマップにて輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標の初期値が設定されると、ステップＳ２６０においてパラメータ探索部Ｐ２ｄ５と評価値算出部Ｐ２ｄ６が最適な輪郭パラメータＬ，Ｒ，Ｔ，Ｂの探索処理を行う。パラメータ探索部Ｐ２ｄ５が輪郭パラメータＬ，Ｒ，Ｔ，Ｂを更新し、当該更新した輪郭パラメータＬ，Ｒ，Ｔ，Ｂを評価値算出部Ｐ２ｄ６に出力すると、評価値算出部Ｐ２ｄ６は下記の評価値Ｖを算出し、当該評価値Ｖをパラメータ探索部Ｐ２ｄ５に返す。そして、パラメータ探索部Ｐ２ｄ５は評価値Ｖを最大とする輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を探索する。
【００４６】
図１８は、評価値Ｖの概念を模式的に説明している。図１８において、輪郭線Ｏ上において長さｄｌを有する微小線要素と、当該微小線要素の法線単位ベクトルｐが示されている。曲線Ｏ１〜Ｏ４が前記の（４）式によって特定できるため、任意の微小線要素についての法線単位ベクトルｐを求めることができる。なお、法線単位ベクトルｐは内側方向が正となるようにする。すなわち、曲線Ｏ１，Ｏ２上の微小線要素の法線単位ベクトルｐのｙ成分は下方向を正とし、反対に曲線Ｏ３，Ｏ４上の微小線要素の法線単位ベクトルｐのｙ成分は上方向を正とする。また、曲線Ｏ１，Ｏ３上の微小線要素の法線単位ベクトルｐのｘ成分は右方向を正とし、反対に曲線Ｏ２，Ｏ４上の微小線要素の法線単位ベクトルｐのｘ成分は左方向を正とする。勾配ベクトルｇは下記の（５）式で表される。
【数５】
2009237624.tif 000007
【００４７】
前記の（５）式において、勾配ベクトルｇは、水平方向の勾配と鉛直方向の勾配によって与えられ、肌色らしさを示すスカラー量Ｚ（ｘ，ｙ）の変動が激しい領域ほど大きくなる。評価値算出部Ｐ２ｄ６は、以上説明した法線単位ベクトルｐと勾配ベクトルｇを使用し、下記の（６）式によって輪郭線Ｏの輪郭への近似性を評価する評価値Ｖを算出する。
【数６】
2009237624.tif 000008
【００４８】
前記の（６）式において、評価値Ｖは微小線要素に関する法線単位ベクトルｐと勾配ベクトルｇの内積（微小評価値）を輪郭線Ｏに沿って線積分（合計）することにより求められる。ただし、輪郭線Ｏの下側部分の曲線Ｏ３，Ｏ４に関する積分値に対して、輪郭線Ｏの上側部分の曲線Ｏ１，Ｏ２に関する積分値を２倍に重み付けしている。法線単位ベクトルｐと勾配ベクトルｇの内積は、法線単位ベクトルｐと勾配ベクトルｇが同じ方向であり、かつ、勾配ベクトルｇが大きいほど大きい値となる。従って、輪郭線Ｏを構成する各微小線要素がスカラー量Ｚ（ｘ，ｙ）の勾配方向に直交し、かつ、勾配が大きいほど評価値Ｖが大きい値となる。
【００４９】
スカラー量Ｚ（ｘ，ｙ）の勾配は、肌色らしさが変動する程度であると考えることができるため、評価値Ｖが大きいと、輪郭線Ｏが肌色らしさの変動が大きい領域を通過していると評価することができる。すなわち、評価値Ｖが大きいと、輪郭線Ｏが肌色らしさの変動が大きくなる目の輪郭を通過していると考えることができる。特に、スカラー量Ｚ（ｘ，ｙ）は、肌色であることが疑わしい第２領域Ａ２において変動が激しくなるように変換されているため、肌色でない目の輪郭付近では、勾配が極端に大きくなる。一方、図１４で示したように白の分布Ｇ２と黒の分布Ｇ３は、双方とも１に近い値に飽和しており、白目と黒目の境界であってもスカラー量Ｚ（ｘ，ｙ）の勾配は小さいものとなる。すなわち、マハラノビス平方距離ＤM2において白の分布Ｇ２と黒の分布Ｇ３が異なる値を示していても、変換関数によってスカラー量Ｚに変換することにより、白の分布Ｇ２と黒の分布Ｇ３のマハラノビス平方距離ＤM2の差を微小なものに変換することができ、これらの間でスカラー量Ｚの勾配を生じなくさせることができる。従って、白目と黒目の境界について評価値Ｖが大きくなることが防止でき、白目と黒目の境界と目の輪郭を明確に区別することができる。なお、概念的な理解を容易とするために、連続的な画像平面上において評価値Ｖや勾配ベクトルｇや法線ベクトルｎが算出されるように説明したが、現実には離散的な画像平面において等価な演算が行われることとなる。以下に説明する探索処理（探索手段、輪郭検出手段）においては、評価値Ｖを大きくさせる輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を探索していく。
【００５０】
図１９は、探索処理における探索の手順を模式的に説明している。同図において、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの移動パターンが示されており、当該移動パターンが第１〜４フェーズから構成されている。第１フェーズにおいては、現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標（ａ）から対角４方向に２画素分ずれた４座標（ｂ，ｃ，ｄ，ｅ）に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させる。第２フェーズにおいては、現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標（ａ）から鉛直水平方向に２画素分ずれた４座標（ｂ，ｃ，ｄ，ｅ）に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させる。第３フェーズにおいては、現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標（ａ）から対角４方向に１画素分ずれた４座標（ｂ，ｃ，ｄ，ｅ）に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させる。第４フェーズにおいては、現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標（ａ）から鉛直水平方向に１画素分ずれた４座標（ｂ，ｃ，ｄ，ｅ）に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させる。第４フェーズが完了した時点で探索処理を終了する。
【００５１】
図２０は、各フェーズにおける詳細な探索手順を示している。まず直前のフェーズ（第１フェーズにおいては初期値）によって決定された現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標（ａ）を中心として、図１９に示す移動パターンにしたがって輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させる。輪郭パラメータＬ，Ｒ，Ｔ，Ｂを同時に移動させるのではなく、Ｌ→Ｒ→Ｔ→Ｂの順で移動させる。まず現在の輪郭パラメータＬ，Ｒ，Ｔ，Ｂを評価値算出部Ｐ２ｄ６に出力し、評価値Ｖaを算出する。次に輪郭パラメータＲ，Ｔ，Ｂを固定し、輪郭パラメータＬを現在の座標（ａ）のまわりの４座標（ｂ，ｃ，ｄ，ｅ）に順次移動させる。このとき輪郭パラメータＬが移動するごとに、輪郭パラメータＬ，Ｒ，Ｔ，Ｂを評価値算出部Ｐ２ｄ６に出力し、評価値Ｖa，Ｖb，Ｖc，Ｖd，Ｖeを算出する。なお、４座標（ｂ，ｃ，ｄ，ｅ）への移動順序はどのようなものであってもよい。以上のようにして４座標（ａ，ｂ，ｃ，ｄ，ｅ）の輪郭パラメータＬについての評価値Ｖa，Ｖb，Ｖc，Ｖd，Ｖeが得られると、評価値Ｖa，Ｖb，Ｖc，Ｖd，Ｖeに基づいて評価値Ｖを極大化させる輪郭パラメータＬの座標（ｈ）を予測する。
【００５２】
まず、現在の輪郭パラメータＬの座標（ａ）を通過する線分ｂ−ａ−ｃに関する評価値Ｖa，Ｖb，Ｖcを通る２次曲線を算出し、当該２次曲線を極大化させる座標を算出する。なお、当該２次曲線が上に凸であり、かつ、頂点が線分ｂ−ａ−ｃの間にある場合のみ、前記２次曲線を極大化させる座標が算出できる。前記２次曲線を極大化させる座標（ｆ）が算出できない場合には、端の評価値Ｖb，Ｖcのうち大きい方の座標（ｂ）または座標（ｃ）を座標（ｆ）とする。そして、線分ｄ−ａ−ｅに平行かつ座標（ｆ）を通過する直線ｌ１を生成する。次に、現在の輪郭パラメータＬの座標（ａ）を通過し、線分ｂ−ａ−ｃに直交する線分ｄ−ａ−ｅに関する評価値Ｖa，Ｖd，Ｖeを通る２次曲線を算出し、当該２次曲線を極大化させる座標（ｇ）を同様の手順で算出する。そして、線分ｂ−ａ−ｃに平行かつ座標（ｇ）を通過する直線ｌ２を生成する。
【００５３】
以上のようにして直線ｌ１，ｌ２が生成できると、これらの交点の座標を輪郭パラメータＬの座標（ｈ）として算出する。この座標（ｈ）が算出できると、輪郭パラメータＬを座標（ｈ）に移動させ、そのときの評価値Ｖhを算出する。以上のようにして、６個の評価値Ｖa，Ｖb，Ｖc，Ｖd，Ｖe，Ｖhが算出できると、これらのうち最も大きいものに対応する座標を当該フェーズにおける最適な輪郭パラメータＬの座標として決定する。輪郭パラメータＬについて最適な座標が決定すると、次に輪郭パラメータＲについて同様の処理を行って最適な座標を決定する。さらに、輪郭パラメータＴ，Ｂについて順に同様の処理を行って最適な座標を決定し、当該フェーズを終了させ、次のフェーズに移行する。第４フェーズが完了した段階で、最終的に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを確定させる。
【００５４】
以上説明したように、探索の初期の第１，２フェーズにおいては広範囲に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させるため、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標をおおまかに目尻、目頭、上頂点、下頂点に近づけさせることができる。さらに、探索の後期の第３，４フェーズにおいては狭い範囲で局所的に輪郭パラメータＬ，Ｒ，Ｔ，Ｂを移動させるため、より目尻、目頭、上頂点、下頂点に収束するように輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を微調整することできる。ただし、第１〜４フェーズにおける探索距離は、目画像データＥＩの大きさに応じて設定されるべきであり、目画像データＥＩが大きくなるのに応じて探索距離も大きくするのが望ましい。徐々に探索距離を短くすればよく、４フェーズ以上の探索を行うようにしてもよい。また、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの初期値を中央からやや下よりに設定しているため、眉の黒と肌色との輪郭を誤検出することが防止できる。また、初期の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標によって妥当な形状の輪郭線Ｏを設定し、各フェーズにおいて少しずつ輪郭パラメータＬ，Ｒ，Ｔ，Ｂの座標を全体的に移動させるようにしているため、輪郭線Ｏの形状が極端に異常な形状となることもない。例えば、輪郭パラメータＬのみを集中的に移動させることにより、輪郭パラメータＬが黒目と白目の境界等に収束するようなことが防止できる。また、評価値Ｖは、勾配ベクトルｇに対する直交性を輪郭線Ｏの全体について評価するため、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの一点が異常な点に収束することが防止できる。
【００５５】
さらに、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの初期値を目テンプレート１４ｃにて規格化された目の輪郭よりもやや外側に設定しているため、基本的にはフェーズの進行とともに輪郭パラメータＬ，Ｒ，Ｔ，Ｂが内側に移動し、最適な座標に収束することとなる。従って、探索の際に輪郭パラメータＬ，Ｒ，Ｔ，Ｂの位置関係が逆転することが防止できる。輪郭パラメータＬ，Ｒ，Ｔ，Ｂはそれぞれ独立して移動するため、目の輪郭が上下非対称、左右非対称であっても、４個の２次曲線Ｏ１〜Ｏ４によって精度よくフィッティングすることができる。さらに、輪郭パラメータＬ，Ｒ，Ｔ，ＢをＬ→Ｒ→Ｔ→Ｂの順で移動させることにより、まぶたの状態によって大きく位置が変動しがちな輪郭パラメータＴ，Ｂよりも先に、位置が安定する輪郭パラメータＬ，Ｒを探索することができ、全体の探索精度や探索効率を向上させることができる。なお、目の表情によっては、ｙB＜ｙR，ｙB＜ｙLとなることも考えられ、その場合はａ3，ａ4の符号が探索の途中で正に反転することとなる。
【００５６】
なお、図１６に示すように目の輪郭線に対応する領域においては、常に、輪郭の内側に向かってスカラー量Ｚ（ｘ，ｙ）が増加する。すなわち、輪郭線上の微小線要素においては勾配ベクトルｇが常に内側を向くこととなる。一方、法線ベクトルｎの符号も、常に曲線Ｏ１〜Ｏ４の内側方向が正となるように定義されているため、スカラー量Ｚ（ｘ，ｙ）の勾配方向と曲線Ｏ１〜Ｏ４の対応関係を一定に保つことができる。すなわち、輪郭パラメータＴの座標が目の下側の輪郭線上に収束したり、輪郭パラメータＢの座標が目の上側の輪郭線上に収束することが防止できる。また、下側の輪郭線は上側の輪郭線と比較して曖昧となりがちであるため、評価値Ｖにおいて下側の輪郭線よりも上側の輪郭線を重視することにより、曖昧な下側の輪郭線の影響によって全体の検出精度が低下することが防止できる。また、スカラー量Ｚ（ｘ，ｙ）は、目の付近からサンプリングした肌色画素の平均μ（μR，μG，μB）を基準として算出されるため、撮影条件や被写体の（絶対的な意味での）肌色に依存することなく輪郭を検出することができる。
【００５７】
ステップＳ２７０においては、ステップＳ２４０において最適な位置が探索された後の輪郭パラメータＬ，Ｒ，Ｔ，Ｂの位置が正常であるか否かを異常判定部Ｐ２ｄ７が判定する。ここでは、輪郭パラメータＬ，Ｒ，Ｔ，Ｂの位置関係が目の輪郭を表すものとして、正常な範囲のものであるか否かを判定する。ここでは種々の判定基準によって判定を行うことができるが、例えば輪郭パラメータＬ，Ｒ，Ｔ，Ｂの位置関係がｘL＜ｘT＜ｘR，ｘL＜ｘB＜ｘRを満足しない場合には、目の輪郭として明らかに異常であると判定することができる。さらに、ＬＲ間の距離がＴＢ間の距離よりも小さくなった場合には、目の輪郭として明らかに異常であると判定することができる。ステップＳ２７０において正常であると判定された場合には、当該正常な輪郭パラメータＬ，Ｒ，Ｔ，ＢをＨＤＤ１４またはＲＡＭ１２に記憶させて（ステップＳ２９０）、次の口の輪郭検出処理（ステップＳ３００）へ移行する。
【００５８】
ステップＳ２７０において異常であると判定された場合には、選択部Ｐ２ｃがステップＳ２８０において、現在の顔画像データＦＤにおいて輪郭検出の対象とされてない検出窓ＳＷ１，ＳＷ２が残っているか否かを判定する。すなわち、ステップＳ１４０の顔器官検出にて現在の顔画像データＦＤから両目が検出された場合、ステップＳ２２０では検出窓ＳＷ１，ＳＷ２の大きい方が選択されているため、小さい方の検出窓ＳＷ１，ＳＷ２についてはまだ輪郭検出の対象とされていないこととなる。このような場合、輪郭検出の対象とされてない検出窓ＳＷ１，ＳＷ２が残っていると判定される。一方、現在の顔画像データＦＤから片目のみ検出された場合や、両目が検出された場合であって双方とも輪郭検出をすでに行った場合には、輪郭検出の対象とされてない検出窓ＳＷ１，ＳＷ２が残っていないと判定されることとなる。
【００５９】
現在の顔画像データＦＤにおいて輪郭検出の対象とされてない検出窓ＳＷ１，ＳＷ２が残っていると判定された場合には、ステップＳ２８５にて、当該残っている方の検出窓ＳＷ１，ＳＷ２を選択部Ｐ２ｃが選択する。そして、ステップＳ２３０に戻り、当該残っている方の検出窓ＳＷ１，ＳＷ２から傾きＳを補正しつつ目画像データＥＩを抽出し、当該目画像データＥＩを対象として上述した輪郭検出の一連の処理を実行する。一方、現在の顔画像データＦＤにおいて輪郭検出の対象とされてない検出窓ＳＷ１，ＳＷ２が残っていないと判定された場合には、そのままエラー終了する。すなわち、現在の顔画像データＦＤから表情評価をするのに十分な輪郭が検出できなかったとして、現在の顔画像データＦＤについての表情評価を中止する。
【００６０】
以上のように、本実施形態では、顔器官検出処理において大きく検出された方の検出窓ＳＷ１，ＳＷ２のみを選択し、当該選択された検出窓ＳＷ１，ＳＷ２についての輪郭検出を行うとともに、最初に選択された検出窓ＳＷ１，ＳＷ２から正常な輪郭が検出された場合には、目の輪郭検出を終了させるようにしている。大きい方の検出窓ＳＷ１，ＳＷ２においては、正常に輪郭が検出される可能性が高いため、双方の検出窓ＳＷ１，ＳＷ２について輪郭検出を行わせなくても済む。従って、処理を効率化させることができる。ただし、大きい方の検出窓ＳＷ１，ＳＷ２においても正常に輪郭が検出されない可能性があるため、その場合には他方の検出窓ＳＷ１，ＳＷからも輪郭検出を行うようにしている。
【００６１】
２−３．口の輪郭検出処理
図２１は、口の輪郭検出処理の流れを示している。ステップＳ３１０においては、上述した顔器官検出の結果を取得するとともに、口の輪郭検出処理を開始させる。口の輪郭検出処理は、目の輪郭検出処理とほぼ同様の処理によって行うことができる。口の形状は目の相似形状と大きく相違しないため、目の輪郭検出と同様の輪郭パラメータＬ，Ｒ，Ｔ，Ｂおよび曲線Ｏ１〜Ｏ４によって近似することができる。ただし、一つの顔において口は単一であるため、目の輪郭検出においては、検出窓ＳＷ１，ＳＷ２を選択する処理（ステップＳ２２０）に相当する処理は実行しない。なお、輪郭パラメータＬ，Ｒ，が左右の口角に相当し、輪郭パラメータＴが上唇の輪郭（Ｏ１，Ｏ２）の頂点に相当し、輪郭パラメータＴが下唇の輪郭（Ｏ３，Ｏ４）の頂点に相当することとなる。サンプリングも同様に行うことができ、検出窓ＳＷ３から抽出した口画像データＭＩに対して輪郭検出を行う点で相違している。また、肌色と唇との境界付近においてスカラー量Ｚの傾きが大きくなるように、Ｚマップに変換する際のパラメータｕを変更するのが望ましい。さらに、パラメータｕを最適化する際に唇の面積の妥当性を評価する閾値Ｔｈ２も、口テンプレート１４ｄにおいて平均的に口が占める面積に対応させる必要がある。なお、口は、目と異なり１つしか存在し得ないため、ステップＳ３７０において正常な輪郭が検出できないと判定された時点でエラー終了させる。ステップＳ３７０において正常な輪郭が検出できた判定されると、ステップＳ４００の表情評価処理を実行させる。
【００６２】
２−４．表情評価処理
図２２は、表情評価処理の流れを示している。本実施形態の目および口の輪郭検出処理においては正常な輪郭が検出できない場合にエラー終了するようにしていため、左右の目のいずれか一方の輪郭、および、口の輪郭が正常に検出できた場合のみ表情評価処理が行われることとなる。なお、表情評価処理は、図２に示す矩形特定部Ｐ２ｅ１と輪郭特徴量算出部Ｐ２ｅ２と表情評価値算出部Ｐ２ｅ３とからなる表情評価部Ｐ２ｅによって実行される。ステップＳ４１０においては、目画像データＥＩおよび目の輪郭検出結果を取得するとともに、矩形特定部Ｐ２ｅ１が目画像データＥＩにおいて目の輪郭パラメータＬ，Ｒ，Ｔ，Ｂによって囲まれる矩形を特定する。
【００６３】
図２３は、目画像データＥＩにおいて目の輪郭パラメータＬ，Ｒ，Ｔ，Ｂによって囲まれる矩形を示している。ここでは、輪郭パラメータＬ，Ｒ，Ｔ，Ｂのうちｙの最大最小値によって囲まれたｙの範囲と、ｘの最大最小値によって囲まれたｙの範囲によって矩形が特定されている。基本的には、輪郭パラメータＴのｙTがｙの最小値となり、輪郭パラメータＬ，ＲのｘL，ｘRがｘの最大最小値となる。ｙの最大値は、基本的に下まぶたの輪郭（曲線Ｏ３，Ｏ４）の頂点に相当する輪郭パラメータＢのｙBとなる（図２３Ａに図示。）が、下まぶたの輪郭（曲線Ｏ３，Ｏ４）が上に凸となった場合には目尻と目頭に相当する輪郭パラメータＬ，Ｒのうち下の方（ｙL，ｙRが大きい方）となる（図２３Ｂに図示。）。
【００６４】
ステップＳ４２０においては、輪郭特徴量算出部Ｐ２ｅ２が第１輪郭特徴量ｐ1を算出する。第１輪郭特徴量ｐ1は、図２３においてハッチングで示す領域Ｕ１の面積を、破線で囲んだ領域の面積で除算した値である。下まぶたの輪郭（曲線Ｏ３，Ｏ４）が下に凸である場合、ハッチングで示す領域Ｕ１は、ステップＳ４１０にて検出した矩形内であり、かつ、下まぶたの輪郭（曲線Ｏ３，Ｏ４）よりも下方（ｙが大きい方）の領域である。下まぶたの輪郭（曲線Ｏ３，Ｏ４）が下に凸である場合、破線で囲んだ領域は、ステップＳ４１０にて検出した矩形内であり、かつ、輪郭パラメータＬ，Ｒの座標を結んだ線分よりも下方（ｙが大きい方）の領域である。一方、下まぶたの輪郭（曲線Ｏ３，Ｏ４）が上に凸である場合、ハッチングで示す領域Ｕ１は、ステップＳ４１０にて検出した矩形内であり、かつ、下まぶたの輪郭（曲線Ｏ３，Ｏ４）の上頂点Ｂよりも下方（ｙが大きい方）の領域であり、かつ、下まぶたの輪郭（曲線Ｏ３，Ｏ４）よりも上方（ｙが小さい方）の領域である。下まぶたの輪郭（曲線Ｏ３，Ｏ４）が上に凸である場合、破線で囲んだ領域は、ステップＳ４１０にて検出した矩形内であり、かつ、下まぶたの輪郭（曲線Ｏ３，Ｏ４）の上頂点Ｂよりも下方（ｙが大きい方）の領域であり、かつ、輪郭パラメータＬ，Ｒの座標を結んだ線分よりも上方（ｙが小さい方）の領域である。なお、下まぶたの輪郭（曲線Ｏ３，Ｏ４）が下に凸である場合、ハッチングで示す領域Ｕ１の面積の符号を正とし、下まぶたの輪郭（曲線Ｏ３，Ｏ４）が上に凸である場合、ハッチングで示す領域Ｕ１の面積の符号を負に入れ替える。第１輪郭特徴量ｐ1によれば、目の下まぶたの状態を指標値化することができる。ステップＳ４３０においては、輪郭特徴量算出部Ｐ２ｅ２が第２輪郭特徴量ｐ2を算出する。第２輪郭特徴量ｐ2は、ステップＳ４１０にて検出した矩形のｙ方向の長さｈ１を、ｘ方向の長さｗ１で除算した値である。この第２輪郭特徴量ｐ2によれば、目の開き具合を指標値化することができる。以上によって目に関する輪郭特徴量ｐ1，ｐ2の算出を完了すると、次にステップＳ４４０にて口画像データＭＩおよび口の輪郭検出結果を取得するとともに、矩形特定部Ｐ２ｅ１が口画像データＭＩにおいて口の輪郭パラメータＬ，Ｒ，Ｔ，Ｂによって囲まれる矩形を特定する。
【００６５】
図２４は、口画像データＭＩにおいて口の輪郭パラメータＬ，Ｒ，Ｔ，Ｂによって囲まれる矩形を示している。ここでは、輪郭パラメータＬ，Ｒ，Ｔ，Ｂのうちｙの最大最小値によって囲まれたｙの範囲と、ｘの最大最小値によって囲まれたｙの範囲によって矩形が特定されている。基本的には、輪郭パラメータＢのｙBがｙの最大値となり、輪郭パラメータＬ，ＲのｘL，ｘRがｘの最大最小値となる。ｙの最小値は、基本的に上唇の上輪郭（曲線Ｏ１，Ｏ２）の頂点に相当する輪郭パラメータＴのｙTとなる（図２４Ａに図示。）が、上唇の上輪郭（曲線Ｏ１，Ｏ２）が下に凸となった場合には口角に相当する輪郭パラメータＬ，Ｒのうち上の方（ｙL，ｙRの小さい方）となる（図２４Ｂに図示。）。
【００６６】
ステップＳ４５０においては、輪郭特徴量算出部Ｐ２ｅ２が第３輪郭特徴量ｐ3を算出する。第３輪郭特徴量ｐ3は、図２４においてハッチングで示す領域Ｕ２の面積を、破線で囲んだ領域の面積で除算した値である。上唇の上輪郭（曲線Ｏ１，Ｏ２）が上に凸である場合、ハッチングで示す領域Ｕ２は、ステップＳ４４０にて検出した矩形内であり、かつ、上唇の上輪郭（曲線Ｏ１，Ｏ２）よりも上方（ｙが小さい方）の領域である。上唇の上輪郭（曲線Ｏ１，Ｏ２）が上に凸である場合、破線で囲んだ領域は、ステップＳ４４０にて検出した矩形内であり、かつ、輪郭パラメータＬ，Ｒの座標を結んだ線分よりも上方（ｙが小さい方）の領域である。一方、上唇の上輪郭（曲線Ｏ１，Ｏ２）が下に凸である場合、ハッチングで示す領域Ｕ２は、ステップＳ４４０にて検出した矩形内であり、かつ、上唇の下頂点Ｔよりも上方（ｙが小さい方）であり、かつ、上唇の上輪郭（曲線Ｏ１，Ｏ２）よりも下方（ｙが大きい方）の領域である。上唇の上輪郭（曲線Ｏ１，Ｏ２）が下に凸である場合、破線で囲んだ領域は、ステップＳ４４０にて検出した矩形内であり、かつ、輪郭パラメータＬ，Ｒの座標を結んだ線分よりも下方（ｙが大きい方）であり、かつ、上唇の下頂点Ｔよりも上方（ｙが小さい方）である領域である。なお、上唇の上輪郭（曲線Ｏ１，Ｏ２）が上に凸である場合、ハッチングで示す領域Ｕ２の面積の符号を正とし、上唇の上輪郭（曲線Ｏ１，Ｏ２）が下に凸である場合、ハッチングで示す領域Ｕ２の面積の符号を負とする。第３輪郭特徴量ｐ3によれば、上唇の状態を指標値化することができる。ステップＳ４６０においては、輪郭特徴量算出部Ｐ２ｅ２が第４輪郭特徴量ｐ4を算出する。第４輪郭特徴量ｐ4は、ステップＳ４４０にて検出した矩形のｙ方向の長さｈ２を、ｘ方向の長さｗ２で除算した値である。この第４輪郭特徴量ｐ4によれば、口の開き具合を指標値化することができる。以上によって口に関する輪郭特徴量ｐ3，ｐ4の算出を完了する。
【００６７】
ステップＳ４７０においては、表情評価値算出部Ｐ２ｅ３が上述した輪郭特徴量ｐ1〜ｐ4を下記の（７）式で表される表情評価関数に代入することにより、表情評価値Ｅを算出する。
【数７】
2009237624.tif 000009
前記の（７）式の表情評価関数において、添え字ｉは、輪郭特徴量ｐ1〜ｐ4（ｐi）を識別するための数値であり、本実施形態ではｉ＝１〜４となる。ａiとｂiは、各輪郭特徴量ｐ1〜ｐ4（ｐi）について用意された係数であり、ｃは定数を表している。ａiとｂiとｃの設定方法については後述する。また、表情評価値Ｅが大きければ大きいほど、表情として良好なものであると判断することができる。ステップＳ４８０において、表情評価値Ｅが良好である場合（例えば所定の閾値以上である場合）、当該画像データ１４ｅをプリンタドライバＰ３に出力する。すると、プリンタドライバＰ３は、当該画像データ１４ｅに対して解像度変換処理と色変換処理とハーフトーン処理とラスタライズ処理を順次実行させ、プリンタ２０に当該画像データ１４ｅに対応する画像の印刷を実行させる。
【００６８】
なお、表情評価値Ｅを利用して以下のようなことを行うようにしてもよい。例えば、表情評価値Ｅを画像データ１４ｅに対応付けて記憶したり、表情評価値Ｅをディスプレイ４０に表示させたりしてもよい。表情評価値Ｅを画像データ１４ｅに対応付けて記憶しておけば、例えば良好な表情の顔を含む画像データ１４ｅを表情評価値Ｅに基づいて検索やランク付けしたり、表情評価値Ｅが大きい画像データ１４ｅを印刷の推奨とすることができる。また、表情評価値Ｅをディスプレイ４０に表示させれば、ユーザーが画像データ１４ｅを実際に表示させることなく、含まれる顔の表情のよしあしを認識することができる。
【００６９】
２−５．表情評価関数の設定
図２５は、表情評価関数の設定する作業の流れを示している。まず、ステップＳ６００において、多数のサンプル画像を準備する。ここでは、顔が撮影された複数の画像データを印刷用紙に印刷するなどして、多数のサンプル画像を準備する。ステップＳ６１０においては、サンプル画像を複数の被験者が官能評価し、その結果を官能評価値として登録する。例えば、多数のサンプル画像に含まれる多数の顔にそれぞれ識別番号を付与し、それぞれに対して１〜５までの官能評価値を被験者の官能評価に基づいて登録する。被験者がサンプル画像に含まれる顔が良好だと感じた場合には大きい値の官能評価値が登録され、被験者がサンプル画像に含まれる顔が良好でない感じた場合には小さい値の官能評価値が登録される。官能評価は、あくまでも各被験者の主観によるものであり、例えば微笑んだ状態を最良と感じたり、大きく笑った状態を最良と感じる等、各被験者の主観に応じて種々の結果が得られることとなる。
【００７０】
ステップＳ６２０においては、各サンプル画像について、上述した顔器官検出処理と輪郭検出処理を順次実行し、表情評価処理の特徴量ｐ1〜ｐ4を算出（ステップＳ４６０）まで実行する。これにより、サンプル画像に含まれる各顔の官能評価値と、特徴量ｐ1〜ｐ4との対応関係を得ることができる。ステップＳ６３０においては、特徴量ｐ1〜ｐ4を各軸に有する特徴量空間において官能評価値をプロットするとともに、当該官能評価値に前記の（７）式による表情評価値Ｅをフィッティングさせるような各係数ａi，ｂi，ｃを算出する。
【００７１】
図２６は、サンプル画像から得られた第１特徴量ｐ1に対応する官能評価値をプロットしている。同図に示すように、多数のサンプル画像に含まれる多数の顔についての官能評価値が●によってプロットされている。ステップＳ６３０においては、特徴量空間において、前記の（７）式による表情評価値Ｅの曲線を生成し、プロットされた官能評価値に対して最も表情評価値Ｅの曲線が近似する各係数ａi，ｂi，ｃを例えば最小二乗法によって算出する。以上によって、各係数ａi，ｂi，ｃが算出できると、前記の（７）式が設定できたこととなる。前記の（７）式は、連続的な曲線を示すため、任意の特徴量ｐ1〜ｐ4に対して連続的な表情評価値Ｅを出力することができる。そのため、各画像データ１４ｅについてそれぞれ異なる表情評価値Ｅを算出することができ、表情評価値Ｅの大きい順に複数の画像データ１４ｅを並べ替えたり、表情評価値Ｅの上位から印刷の対象とすることができる。
【００７２】
３．まとめおよび変形例
上述した実施形態においては、ステップＳ２２０にて検出窓ＳＷ１，ＳＷ２のどちらが大きいかを判定し、大きい方の検出窓ＳＷ１，ＳＷ２を選択する。このようにすることにより、精度よい輪郭検出が可能な方の目に対する輪郭検出処理を実行させることができる。また、双方の目に対する輪郭検出処理を実行させなくても済むため、処理を効率的とすることができる。さらに、精度よく検出された輪郭に基づいて表情評価処理を行うため、精度よく表情を評価することができる。左右の目は同様の状態となっている場合がほとんどなので、一方の目に基づいて表情評価処理を行っても良好な評価精度を実現することができる。また、表情評価処理においては、輪郭検出によって検出された輪郭（曲線Ｏ１〜Ｏ４）によって区画される面積に基づく特徴量ｐ1，ｐ3を使用して表情評価値Ｅを算出している。輪郭（曲線Ｏ１〜Ｏ４）によって区画される面積に基づく特徴量ｐ1，ｐ3によれば、輪郭の一部の点の位置のみによって評価を行う場合よりも精度よく表情を評価することができる。
【００７３】
３−１．変形例１
上述した実施形態においては、ステップＳ２２０にて検出窓ＳＷ１，ＳＷ２のどちらが大きいかを判定し、大きい方の検出窓ＳＷ１，ＳＷ２を選択するようにしたが、他の判定基準によって検出窓ＳＷ１，ＳＷ２を選択するようにしてもよい。すなわち、検出窓ＳＷ１，ＳＷ２のうち大きい方が輪郭の検出に適すると推定して選択するようにしたが、他の基準によって輪郭の検出に適するか否かを推定することができる。本変形例においては、左右の目のうち画像の正面に近い方向を向いている方を選択する。例えば、大きく撮影された目でも著しく斜めから撮影された場合には、いびつな形状となり、輪郭検出や表情検出には耐えないものとなる。
【００７４】
本変形例の顔器官検出処理においてもステップＳ１２０において、顔検出部Ｐ２ａが顔テンプレート１４ｂとのテンプレートマッチングを行うことにより、画像データ１４ｅにおける顔を検出する。ただし、本変形例のテンプレートマッチングに使用される顔テンプレート１４ｂには、顔向きが右向きのものと、顔向きが右向きのものと、顔向きが正面のものがそれぞれ多数含まれているものとする。このようにすることにより、顔向きのばらつきに対してロバスト性のよい顔検出を実現することができる。
【００７５】
図２７は、顔テンプレート１４ｂの一例を示している。同図において、画像面に対して顔向きが左向きとなっている顔テンプレート１４ｂ１と、正面向きとなっている顔テンプレート１４ｂ２と、右向きとなっている顔テンプレート１４ｂ３がそれぞれ多数用意されている。ステップＳ１２０においては、いずれかの顔テンプレート１４ｂとマッチングした検出窓ＳＷについて、顔向きを特定するための顔向き情報を対応付けて記憶する。すなわち、ステップＳ１１２０において、最もマッチングした顔テンプレート１４ｂが、左向きのもの（顔テンプレート１４ｂ１）であるか、正面向きのもの（顔テンプレート１４ｂ２）であるか、右向きのもの（顔テンプレート１４ｂ３）であるかを特定し、いずれかの顔テンプレート１４ｂとマッチングした検出窓ＳＷの位置や大きさや回転角度とともに、顔向きを特定する顔向き情報を顔検出部Ｐ２ａがＲＡＭ１２等に記憶させる。以降の処理は、上述した実施形態と同様である。
【００７６】
図２８は、本変形例にかかる目の輪郭検出処理の流れを示している。ステップＳ２２０においては、上述した顔向き情報に基づいて顔画像データＦＤに含まれる顔の顔向きを取得する。そして、顔向きが左向きである場合には、ステップＳ２２２において右側に位置する検出窓ＳＷ２を選択する。顔向きが左向きである場合には、右目が画像の正面に近い方向を向いていると考えることができ、正面に近い方向を向いた目を選択することができる。反対に、顔向きが右向きである場合には、ステップＳ２２４において左側に位置する検出窓ＳＷ１を選択する。この場合も、正面に近い方向を向いた目を選択することができる。顔向きが正面向きである場合には、ステップＳ２２６において検出窓ＳＷ１，ＳＷ２のうち大きいものを選択する。
【００７７】
以上説明した本変形例によれば、正面に近い方向を向いた目を選択し、当該目についての輪郭検出を行わせることができる。正面に近い方向を向いた目は、その全体がカメラから一定の距離で撮影されており、形状がいびつとなったり、一部分が途切れているような可能性は低いと考えられる。従って、輪郭検出や表情評価を精度よく実行することができる。また、正面に対する左右の方向の向きが同等である場合でも、上述した実施形態と同様に大きく検出された目に対する輪郭検出や表情評価を行わせることができる。
【００７８】
３−４．変形例４
図２９は、本変形例において、左右の検出窓ＳＷ１，ＳＷ２を選択する様子を示している。同図において、顔画像データＦＤの左右中央に中央線ＣＬが示されており、左右の検出窓ＳＷ１，ＳＷ２の重心と中央線ＣＬとの距離がそれぞれ算出されている。そして、左右の検出窓ＳＷ１，ＳＷ２のうち重心と中央線ＣＬとの距離が短い方を選択する。このようにしても、左右の目のうち正面に近い方向を向いたものを選択することができ、輪郭検出や表情評価を精度よく実行することができる。
【００７９】
３−５．変形例５
上述した実施形態においては、目の輪郭検出を両目とも失敗したと判断（ステップＳ２７０）した場合や、口の輪郭検出を失敗したと判断（ステップＳ３６０）した場合には、いずれもエラー終了するようにしている。しかしながら、目または口のいずれかの輪郭検出の結果に基づいて表情評価を行うことも可能である。本変形例においては、目の輪郭検出を両目とも失敗したと判断（ステップＳ２７０）した場合や、口の輪郭検出を失敗したと判断（ステップＳ３６０）した場合でも、表情評価処理を実行するものとする。
【００８０】
図３０は、本変形例にかかる表情評価処理の流れを示している。ステップＳ１４０５においては、目と口の輪郭検出ができたか否かを判定する。双方とも輪郭検出ができなかった場合には、そのままエラー終了する。一方、目と口の双方の輪郭検出ができた場合、もしくは、口の輪郭のみ検出された場合には、ステップＳ１４１０〜Ｓ１４３０において上述した実施形態と同様に口に関する輪郭特徴量ｐ3〜ｐ4の算出を行う。そして、ステップＳ１４４０においては、前記の（７）式に口に関する輪郭特徴量ｐ3〜ｐ4を代入することにより、表情評価値Ｅを算出する。一方、ステップＳ１４０５において、目の輪郭のみ検出されたと判断された場合には、ステップＳ１４５０〜Ｓ１４７０において上述した実施形態と同様に目に関する輪郭特徴量ｐ1〜ｐ2の算出を行う。そして、ステップＳ１４８０において、前記の（７）式に目に関する輪郭特徴量ｐ1〜ｐ2を代入することにより、表情評価値Ｅを算出する。
【００８１】
なお、ステップＳ１４４０，Ｓ１４８０において使用される前記の（７）式はそれぞれ異なる係数ａi，ｂi，ｃを有しているものとする。すなわち、ステップＳ１４４０で使用される前記の（７）式は、口の輪郭特徴量ｐ3，ｐ4の特徴量空間において官能評価値に対して最も表情評価値Ｅの曲線が近似する各係数ａi，ｂi，ｃ（ｉ＝３，４）を有している。一方、ステップＳ１４８０で使用される前記の（７）式は、目の輪郭特徴量ｐ1，ｐ2の特徴量空間において官能評価値に対して最も表情評価値Ｅの曲線が近似する各係数ａi，ｂi，ｃ（ｉ＝１，２）を有している。以上のように本変形例においては、少なくとも口の輪郭が検出されていれば口の輪郭に基づく輪郭特徴量ｐ3，ｐ4を使用して表情評価値Ｅを算出し、口の輪郭が検出されていない場合には目の輪郭に基づく輪郭特徴量ｐ1，ｐ2を使用して表情評価値Ｅを算出することとしている。口または目の一方のみの輪郭特徴量ｐ1，ｐ2，ｐ3，ｐ4を求めればよいため、効率のよい表情評価を行うことができる。また、口の輪郭は目の輪郭よりも表情が反映されやすいため、口の輪郭特徴量ｐ3，ｐ4を優先的に評価の対象として使用することにより、評価精度を維持することができる。
【００８２】
３−６．変形例６
上述した実施形態においては、左右の目のうち選択した方について輪郭検出するものを例示したが、左右のいずれについても精度よく輪郭検出ができる場合には、双方とも輪郭検出を行うようにしてもよい。この場合、表情評価処理において左右双方の目に関して、それぞれ第２輪郭特徴量ｐ1〜ｐ2を算出することができる。この場合、第２輪郭特徴量ｐ1〜ｐ2を左右の目について平均した値を、前記の（７）に代入すればよい。
【００８３】
なお、以上においては、本発明の顔状態評価方法が、コンピュータ上で実行されるものを例示したが、例えばプリンタやデジタルスチルカメラやスキャナ等の画像機器にて実行されてもよい。プリンタにて本発明の顔状態評価方法を行えば、印刷の際に輪郭に応じた画像処理を実行することができる。また、デジタルスチルカメラにて本発明の顔状態評価方法を行えば、各種撮影制御を顔の状態に応じて行うことができる。
【図面の簡単な説明】
【００８４】
【図１】輪郭検出装置のハードウェア構成を示すブロック図である。
【図２】輪郭検出装置のソフトウェア構成を示すブロック図である。
【図３】表情評価装置が行う処理の全体的な流れを示すフローチャートである。
【図４】顔器官検出処理の流れを示すフローチャートである。
【図５】顔検出の様子を示す図である。
【図６】顔器官検出処理の様子を示す図である。
【図７】顔器官検出後の顔画像データを示す図である。
【図８】目の輪郭検出処理の流れを示す図である。
【図９】傾き補正の様子を示す図である。
【図１０】スカラー変換処理の流れを示すフローチャートである。
【図１１】サンプリングの様子を示す図である。
【図１２】サンプリングによって得られるヒストグラムである。
【図１３】マハラノビス平方距離の等値線を示すグラフである。
【図１４】変換関数による変換特性を示すグラフである。
【図１５】マハラノビス平方距離と確率分布の関係を示すグラフである。
【図１６】Ｚマップの一例を示す図である。
【図１７】Ｚマップにおける輪郭パラメータを示す図である。
【図１８】評価値を説明する図である。
【図１９】探索処理における探索手順を示す模式図である。
【図２０】探索処理の詳細手順を示す模式図である。
【図２１】口の輪郭検出処理の流れを示す図である。
【図２２】表情評価処理の流れを示すフローチャートである。
【図２３】輪郭特徴量を算出する様子を示す図である。
【図２４】輪郭特徴量を算出する様子を示す図である。
【図２５】表情評価関数設定処理の流れを示すフローチャートである。
【図２６】輪郭特徴量と官能評価値との関係をプロットしたグラフである。
【図２７】顔テンプレートの一例を示す模式図である。
【図２８】変形例にかかる目の輪郭検出処理の流れを示すフローチャートである。
【図２９】左右の検出窓ＳＷ１，ＳＷ２を選択する様子を示す図である。
【図３０】変形例にかかる表情評価処理の流れを示すフローチャートである。
【符号の説明】
【００８５】
１０…コンピュータ、１１…ＣＰＵ、１２…ＲＡＭ、１３…ＲＯＭ、１４…ＨＤＤ、１４ａ…プログラムデータ、１４ｂ…顔テンプレート、１４ｃ…目テンプレート、１４ｄ…口テンプレート、１４ｅ…画像データ、１５…ＧＩＦ、１６…ＶＩＦ、１７…ＩＩＦ、１８…バス、２０…プリンタ、４０…ディスプレイ、５０ａ…キーボード、５０ｂ…マウス、Ｐ１…ＯＳ、Ｐ２…表情評価アプリケーション、Ｐ２ａ…顔検出部、Ｐ２ｂ…顔器官検出部、Ｐ２ｃ…選択部、Ｐ２ｄ…輪郭検出部、Ｐ２ｄ１…傾き補正部、Ｐ２ｄ２…サンプリング部、Ｐ２ｄ３…スカラー変換部、Ｐ２ｄ４…変換関数設定部、Ｐ２ｄ５…パラメータ探索部、Ｐ２ｄ６…評価値算出部、Ｐ２ｄ７…異常判定部、Ｐ２ｅ…表情評価部、Ｐ２ｅ１…矩形特定部、Ｐ２ｅ２…輪郭特徴量算出部、Ｐ２ｅ３…表情評価値算出部、Ｐ３…プリンタドライバ。
【図１】
2009237624.tif 000010
【図２】
2009237624.tif 000011
【図３】
2009237624.tif 000012
【図４】
2009237624.tif 000013
【図５】
2009237624.tif 000014
【図６】
2009237624.tif 000015
【図７】
2009237624.tif 000016
【図８】
2009237624.tif 000017
【図９】
2009237624.tif 000018
【図１０】
2009237624.tif 000019
【図１１】
2009237624.tif 000020
【図１２】
2009237624.tif 000021
【図１３】
2009237624.tif 000022
【図１４】
2009237624.tif 000023
【図１５】
2009237624.tif 000024
【図１６】
2009237624.tif 000025
【図１７】
2009237624.tif 000026
【図１８】
2009237624.tif 000027
【図１９】
2009237624.tif 000028
【図２０】
2009237624.tif 000029
【図２１】
2009237624.tif 000030
【図２２】
2009237624.tif 000031
【図２３】
2009237624.tif 000032
【図２４】
2009237624.tif 000033
【図２５】
2009237624.tif 000034
【図２６】
2009237624.tif 000035
【図２７】
2009237624.tif 000036
【図２８】
2009237624.tif 000037
【図２９】
2009237624.tif 000038
【図３０】
2009237624.tif 000039