(57)【要約】【課題】画像中から検出された顔領域に基づき設定された対象画像領域を対象とした所定の補正処理を行う際に、補正結果が不自然なものとなる事態の発生を抑制することを可能とする。【解決手段】画像処理装置は、対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う顔領域検出部と、検出された顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う器官領域検出部と、検出された顔領域に基づき設定された対象画像領域を対象に、器官領域の検出結果に基づき設定された補正内容で所定の補正処理を実行する補正処理部と、を備える。【選択図】図１３
2009217609.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う顔領域検出部と、
検出された前記顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う器官領域検出部と、
検出された前記顔領域に基づき設定された対象画像領域を対象に、前記器官領域の検出結果に基づき設定された補正内容で、所定の補正処理を実行する補正処理部と、を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記補正処理部は、前記器官領域の検出が成功しなかった場合の補正の程度が前記器官領域の検出が成功した場合の補正の程度より小さくなるように、前記補正内容を設定する、画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置であって、さらに、
前記器官領域の検出結果に基づき、検出された前記器官領域が真に器官の画像に対応する画像領域であることの確からしさを表す器官領域信頼度を算出する器官領域信頼度算出部を備え、
前記補正処理部は、前記器官領域の検出が成功した場合における前記器官領域信頼度に基づき、前記補正内容を設定する、画像処理装置。
【請求項４】
請求項３に記載の画像処理装置であって、
前記補正処理部は、前記器官領域信頼度が小さいほど補正の程度が小さくなるように、前記補正内容を設定する、画像処理装置。
【請求項５】
請求項３または請求項４に記載の画像処理装置であって、
前記器官領域検出部は、
前記顔領域における互いに異なる複数の画像領域を順に判定対象画像領域に設定する判定対象設定部と、
前記判定対象画像領域について、顔の器官の画像に対応する画像領域であることの確からしさを表す少なくとも１つの評価値を算出する評価値算出部と、
前記評価値に基づき、前記判定対象画像領域が器官の画像に対応するか否かを判定する判定部と、
器官の画像に対応すると判定された１つまたは複数の互いに一部が重複する前記判定対象画像領域の位置および大きさに基づき、前記器官領域を設定する器官領域設定部と、を有し、
前記器官領域信頼度算出部は、前記器官領域の設定の際に参照された前記判定対象画像領域の数と前記評価値との少なくとも１つに基づき、前記器官領域信頼度を算出する、画像処理装置。
【請求項６】
請求項１ないし請求項５のいずれかに記載の画像処理装置であって、
前記顔の器官は、右目と左目と口との少なくとも１つである、画像処理装置。
【請求項７】
画像処理方法であって、
（ａ）対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う工程と、
（ｂ）検出された前記顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う工程と、
（ｃ）検出された前記顔領域に基づき設定された対象画像領域を対象に、前記器官領域の検出結果に基づき設定された補正内容で、所定の補正処理を実行する工程と、を備える、画像処理方法。
【請求項８】
画像処理のためのコンピュータプログラムであって、
対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う顔領域検出機能と、
検出された前記顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う器官領域検出機能と、
検出された前記顔領域に基づき設定された対象画像領域を対象に、前記器官領域の検出結果に基づき設定された補正内容で、所定の補正処理を実行する補正処理機能と、を、コンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顔領域に基づき設定された画像領域を対象とした補正処理に関する。
【背景技術】
【０００２】
画像データの表す画像中から部分画像を順次切り出し、切り出した部分画像が顔に対応する画像であるか否かを判定することにより、画像中から顔の画像に対応する顔領域を検出する技術が知られている（例えば特許文献１ないし３）。
【０００３】
【特許文献１】特開２０００−１４９０１８
【特許文献２】特開２００７−１０８９９０
【特許文献３】特開２０００−１３７７８８
【発明の開示】
【発明が解決しようとする課題】
【０００４】
顔領域の検出の際には、顔の画像に対応していない画像領域を誤って顔領域として検出する誤検出が発生する場合がある。また、検出された顔領域は顔の画像に対応する画像領域ではあるものの、当該顔の画像が、顔の一部が例えばマスクのような遮蔽物により遮蔽された画像である場合もある。
【０００５】
顔検出により検出された顔領域は、例えば所定の補正処理（例えば肌色補正）の対象となる対象画像領域の設定に用いられる。顔領域が、誤検出によるものであったり、顔の一部が遮蔽物により遮蔽された画像に対応する画像領域であったりした場合には、顔領域に基づき設定された対象画像領域を対象とした所定の補正処理の結果が不自然なものとなる恐れがあった。
【０００６】
本発明は、上記の課題を解決するためになされたものであり、画像中から検出された顔領域に基づき設定された対象画像領域を対象とした所定の補正処理を行う際に、補正結果が不自然なものとなる事態の発生を抑制することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題の少なくとも一部を解決するために、本発明は、以下の形態または適用例として実現することが可能である。
【０００８】
［適用例１］画像処理装置であって、
対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う顔領域検出部と、
検出された前記顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う器官領域検出部と、
検出された前記顔領域に基づき設定された対象画像領域を対象に、前記器官領域の検出結果に基づき設定された補正内容で、所定の補正処理を実行する補正処理部と、を備える、画像処理装置。
【０００９】
この画像処理装置では、検出された顔領域に基づき設定された対象画像領域を対象に、器官領域の検出結果に基づき設定された補正内容で所定の補正処理が実行される。例えば顔領域が誤検出によるものであったり顔の一部が遮蔽物により遮蔽された画像に対応する画像領域であったりした場合には、顔領域が正しく検出されたものであったり顔が何ら遮蔽されてはいない画像に対応する画像領域であったりした場合とは、器官領域の検出結果が異なってくる。従って、この画像処理装置では、器官領域の検出結果に基づき補正内容を設定することにより、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００１０】
［適用例２］適用例１に記載の画像処理装置であって、
前記補正処理部は、前記器官領域の検出が成功しなかった場合の補正の程度が前記器官領域の検出が成功した場合の補正の程度より小さくなるように、前記補正内容を設定する、画像処理装置。
【００１１】
この画像処理装置では、器官領域の検出が成功しなかった場合の補正の程度を器官領域の検出が成功した場合の補正の程度より小さく設定することにより、顔領域に基づき設定された対象画像領域を対象とした所定の補正処理を行う際に、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００１２】
［適用例３］適用例１または適用例２に記載の画像処理装置であって、さらに、
前記器官領域の検出結果に基づき、検出された前記器官領域が真に器官の画像に対応する画像領域であることの確からしさを表す器官領域信頼度を算出する器官領域信頼度算出部を備え、
前記補正処理部は、前記器官領域の検出が成功した場合における前記器官領域信頼度に基づき、前記補正内容を設定する、画像処理装置。
【００１３】
例えば顔領域が誤検出によるものであったり顔の一部が遮蔽物により遮蔽された画像に対応する画像領域であったりした場合には、顔領域が正しく検出されたものであったり顔が何ら遮蔽されてはいない画像に対応する画像領域であったりした場合とは、器官領域信頼度が異なってくる。従って、この画像処理装置では、器官領域の検出結果、すなわち器官領域信頼度に基づき補正内容を設定することにより、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００１４】
［適用例４］適用例３に記載の画像処理装置であって、
前記補正処理部は、前記器官領域信頼度が小さいほど補正の程度が小さくなるように、前記補正内容を設定する、画像処理装置。
【００１５】
この画像処理装置では、器官領域信頼度が小さいほど補正の程度が小さくなるように補正内容を設定することにより、顔領域に基づき設定された対象画像領域を対象とした所定の補正処理を行う際に、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００１６】
［適用例５］適用例３または適用例４に記載の画像処理装置であって、
前記器官領域検出部は、
前記顔領域における互いに異なる複数の画像領域を順に判定対象画像領域に設定する判定対象設定部と、
前記判定対象画像領域について、顔の器官の画像に対応する画像領域であることの確からしさを表す少なくとも１つの評価値を算出する評価値算出部と、
前記評価値に基づき、前記判定対象画像領域が器官の画像に対応するか否かを判定する判定部と、
器官の画像に対応すると判定された１つまたは複数の互いに一部が重複する前記判定対象画像領域の位置および大きさに基づき、前記器官領域を設定する器官領域設定部と、を有し、
前記器官領域信頼度算出部は、前記器官領域の設定の際に参照された前記判定対象画像領域の数と前記評価値との少なくとも１つに基づき、前記器官領域信頼度を算出する、画像処理装置。
【００１７】
この画像処理装置では、器官領域信頼度を器官領域が真に顔の器官の画像に対応する画像領域であることの確からしさを表す指標値として算出することができ、器官領域信頼度に基づき補正内容を設定することにより、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００１８】
［適用例６］適用例１ないし適用例５のいずれかに記載の画像処理装置であって、
前記顔の器官は、右目と左目と口との少なくとも１つである、画像処理装置。
【００１９】
この画像処理装置では、右目と左目と口との少なくとも１つである器官領域の検出結果に基づき補正内容を設定することにより、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００２０】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理方法および装置、顔領域検出方法および装置、信頼度算出方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２１】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１実施例：
Ａ−１．画像処理装置の構成：
Ａ−２．顔領域・器官領域検出処理：
Ａ−３．信頼度算出の他の方法：
Ｂ．第２実施例：
Ｃ．変形例：
【００２２】
Ａ．第１実施例：
Ａ−１．画像処理装置の構成：
図１は、本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。本実施例のプリンタ１００は、メモリカードＭＣ等から取得した画像データに基づき画像を印刷する、いわゆるダイレクトプリントに対応したインクジェット式カラープリンタである。プリンタ１００は、プリンタ１００の各部を制御するＣＰＵ１１０と、ＲＯＭやＲＡＭによって構成された内部メモリ１２０と、ボタンやタッチパネルにより構成された操作部１４０と、液晶ディスプレイにより構成された表示部１５０と、プリンタエンジン１６０と、カードインターフェース（カードＩ／Ｆ）１７０と、を備えている。プリンタ１００は、さらに、他の機器（例えばデジタルスチルカメラやパーソナルコンピュータ）とのデータ通信を行うためのインターフェースを備えているとしてもよい。プリンタ１００の各構成要素は、バスを介して互いに接続されている。
【００２３】
プリンタエンジン１６０は、印刷データに基づき印刷を行う印刷機構である。カードインターフェース１７０は、カードスロット１７２に挿入されたメモリカードＭＣとの間でデータのやり取りを行うためのインターフェースである。なお、本実施例では、メモリカードＭＣに画像データを含む画像ファイルが格納されている。
【００２４】
内部メモリ１２０には、画像処理部２００と、表示処理部３１０と、印刷処理部３２０と、が格納されている。画像処理部２００は、所定のオペレーティングシステムの下で、後述する顔領域・器官領域検出処理等の処理を実行するためのコンピュータプログラムである。表示処理部３１０は、表示部１５０を制御して、表示部１５０上に処理メニューやメッセージ、画像等を表示させるディスプレイドライバである。印刷処理部３２０は、画像データから印刷データを生成し、プリンタエンジン１６０を制御して、印刷データに基づく画像の印刷を実行するためのコンピュータプログラムである。ＣＰＵ１１０は、内部メモリ１２０から、これらのプログラムを読み出して実行することにより、これら各部の機能を実現する。
【００２５】
画像処理部２００は、プログラムモジュールとして、領域検出部２１０と、信頼度算出部２２０と、情報付加部２３０と、を含んでいる。領域検出部２１０は、対象画像データの表す対象画像における所定の画像（例えば顔の画像や顔の器官の画像）に対応する画像領域の検出を行う。領域検出部２１０は、判定対象設定部２１２と、評価値算出部２１４と、判定部２１６と、領域設定部２１８と、を含んでいる。これら各部の機能については、後述の顔領域・器官領域検出処理の説明において詳述する。なお、後述するように、領域検出部２１０は、顔の画像に対応する顔領域の検出および顔の器官の画像に対応する器官領域の検出を行うため、本発明における顔領域検出部および器官領域検出部に相当する。
【００２６】
信頼度算出部２２０は、領域検出部２１０により所定の画像（例えば顔の画像や顔の器官の画像）に対応する画像領域として検出された画像領域が、真に当該所定の画像に対応する画像領域であることの確からしさを表す信頼度を算出する。信頼度算出部２２０は、原信頼度算出部２２２を含んでいる。原信頼度算出部２２２の機能については、後述の顔領域・器官領域検出処理の説明において詳述する。なお、原信頼度算出部２２２は、後述の顔領域原信頼度の算出および器官領域原信頼度の算出を行うため、本発明における顔領域原信頼度算出部および器官領域原信頼度算出部に相当する。
【００２７】
情報付加部２３０は、対象画像データを含む画像ファイルに後述する所定の情報（例えば顔領域および器官領域の位置を示す情報）を付加する。
【００２８】
内部メモリ１２０には、また、領域検出部２１０による領域検出に用いられる顔学習データＦＬＤおよび顔器官学習データＯＬＤが格納されている。顔学習データＦＬＤおよび顔器官学習データＯＬＤの内容については、後述の顔領域・器官領域検出処理の説明において詳述する。
【００２９】
Ａ−２．顔領域・器官領域検出処理：
図２は、顔領域・器官領域検出処理の流れを示すフローチャートである。顔領域・器官領域検出処理は、対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行うと共に、検出された顔領域における顔の器官の画像に対応する画像領域である器官領域の検出を行う処理である。本実施例では、顔の器官とは、右目と左目と口との３つの器官を意味している。
【００３０】
ステップＳ１１０では、画像処理部２００（図１）が、対象画像を表す対象画像データを取得する。本実施例のプリンタ１００では、カードスロット１７２にメモリカードＭＣが挿入されると、メモリカードＭＣに格納された画像ファイルのサムネイル画像が表示部１５０に表示される。ユーザは、表示されたサムネイル画像を参照しつつ、操作部１４０を介して処理の対象となる１つまたは複数の画像を選択する。画像処理部２００は、選択された１つまたは複数の画像に対応した画像データを対象画像データに設定し、対象画像データを含む画像ファイルをメモリカードＭＣより取得して内部メモリ１２０の所定の領域に格納する。
【００３１】
ステップＳ１２０（図２）では、領域検出部２１０（図１）が、対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行う。図３は、顔領域検出処理の流れを示すフローチャートである。また、図４は、顔領域検出処理の概要を示す説明図である。図４の最上段には対象画像データの表す対象画像ＴＩｍｇの一例を示している。
【００３２】
顔領域検出処理（図３）におけるステップＳ３１０では、領域検出部２１０（図１）が、対象画像データから顔検出用画像ＦＤＩｍｇを表す顔検出用画像データを生成する。本実施例では、図４に示すように、顔検出用画像ＦＤＩｍｇは横３２０画素×縦２４０画素のサイズの画像である。領域検出部２１０は、必要により対象画像データの解像度変換を行うことにより、顔検出用画像ＦＤＩｍｇを表す顔検出用画像データを生成する。
【００３３】
ステップＳ３２０（図３）では、判定対象設定部２１２（図１）が、判定対象画像（後述）の設定に用いるウィンドウＳＷのサイズを初期値に設定する。ステップＳ３３０では、判定対象設定部２１２が、ウィンドウＳＷを顔検出用画像ＦＤＩｍｇ上の初期位置に配置する。ステップＳ３４０では、判定対象設定部２１２が、顔検出用画像ＦＤＩｍｇ上に配置されたウィンドウＳＷにより規定される画像領域を、顔の画像に対応する顔領域であるか否かの判定（以下「顔判定」とも呼ぶ）の対象となる判定対象画像領域ＪＩＡに設定する。図４の中段には、顔検出用画像ＦＤＩｍｇ上に初期値のサイズのウィンドウＳＷが初期位置に配置され、ウィンドウＳＷにより規定される画像領域が判定対象画像領域ＪＩＡに設定された様子を示している。本実施例では、後述するように、正方形形状のウィンドウＳＷのサイズおよび位置が変更されつつ判定対象画像領域ＪＩＡの設定が順に行われるが、ウィンドウＳＷのサイズの初期値は最大サイズである横２４０画素×縦２４０画素であり、ウィンドウＳＷの初期位置はウィンドウＳＷの左上の頂点が顔検出用画像ＦＤＩｍｇの左上の頂点に重なるような位置である。
【００３４】
ステップＳ３５０（図３）では、評価値算出部２１４（図１）が、判定対象画像領域ＪＩＡについて、顔判定に用いる累計評価値Ｔｖを算出する。なお、本実施例では、顔判定は予め設定された特定顔傾き毎に実行される。すなわち、特定顔傾き毎に、判定対象画像領域ＪＩＡが当該特定顔傾き分だけ傾いた顔の画像に対応する画像領域であるか否かの判定が行われる。そのため、累計評価値Ｔｖも特定顔傾き毎に算出される。ここで、特定顔傾きとは、画像面内（インプレーン）における顔の画像の回転角度を意味している。本実施例では、特定顔傾きとして、画像の上下方向に沿って顔の画像が位置している状態（頭が上方向を向き顎が下方向を向いた状態）を基準（特定顔傾き＝０度）とし、顔の画像の傾きを時計回りに３０度ずつ増加させた計１２個の傾き（０度、３０度、６０度、・・・、３３０度）が設定されている。
【００３５】
図５は、顔判定に用いる累計評価値Ｔｖの算出方法の概要を示す説明図である。本実施例では、累計評価値Ｔｖの算出にＮ個のフィルタ（フィルタ１〜フィルタＮ）が用いられる。各フィルタの外形はウィンドウＳＷと同じアスペクト比を有しており（すなわち正方形形状であり）、各フィルタにはプラス領域ｐａとマイナス領域ｍａとが設定されている。評価値算出部２１４は、判定対象画像領域ＪＩＡにフィルタＸ（Ｘ＝１，２，・・・，Ｎ）を順に適用して評価値ｖＸ（すなわちｖ１〜ｖＮ）を算出する。具体的には、評価値ｖＸは、フィルタＸのプラス領域ｐａに対応する判定対象画像領域ＪＩＡ上の領域内に位置する画素の輝度値の合計から、マイナス領域ｍａに対応する判定対象画像領域ＪＩＡ上の領域内に位置する画素の輝度値の合計を差し引いた値である。
【００３６】
算出された評価値ｖＸは、各評価値ｖＸに対応して設定された閾値ｔｈＸ（すなわちｔｈ１〜ｔｈＮ）と比較される。本実施例では、評価値ｖＸが閾値ｔｈＸ以上である場合には、フィルタＸに関しては判定対象画像領域ＪＩＡが顔の画像に対応する画像領域であると判定され、フィルタＸの出力値として値「１」が設定される。一方、評価値ｖＸが閾値ｔｈＸより小さい場合には、フィルタＸに関しては判定対象画像領域ＪＩＡが顔の画像に対応するとは考えられない画像領域であると判定され、フィルタＸの出力値として値「０」が設定される。各フィルタＸには重み係数ＷｅＸ（すなわちＷｅ１〜ＷｅＮ）が設定されており、すべてのフィルタについての出力値と重み係数ＷｅＸとの積の合計が、累計評価値Ｔｖとして算出される。
【００３７】
なお、顔判定に用いられるフィルタＸの態様や閾値ｔｈＸ、重み係数ＷｅＸ、後述の閾値ＴＨは、上記１２個の特定顔傾きのそれぞれについて予め設定されており、顔学習データＦＬＤ（図１）として内部メモリ１２０に格納されている。顔学習データＦＬＤは、サンプル画像を用いた学習によって設定される。図６は、学習に用いられるサンプル画像の一例を示す説明図である。学習には、顔の画像に対応した画像であることが予めわかっている複数の顔サンプル画像によって構成された顔サンプル画像群と、顔の画像に対応した画像ではないことが予めわかっている複数の非顔サンプル画像によって構成された非顔サンプル画像群と、が用いられる。
【００３８】
学習による顔学習データＦＬＤの設定は特定顔傾き毎に実行されるため、図６に示すように、顔サンプル画像群は、１２個の特定顔傾きのそれぞれに対応したものが準備される。例えば０度の特定顔傾きについての顔学習データＦＬＤの設定は、０度の特定顔傾きに対応した顔サンプル画像群と非顔サンプル画像群とを用いて実行され、３０度の特定顔傾きについての顔学習データＦＬＤの設定は、３０度の特定顔傾きに対応した顔サンプル画像群と非顔サンプル画像群とを用いて実行される。
【００３９】
各特定顔傾きに対応した顔サンプル画像群は、画像サイズに対する顔の画像の大きさの比が所定の値の範囲内であると共に顔の画像の傾きが特定顔傾きに等しい複数の顔サンプル画像（以下、「基本顔サンプル画像」とも呼ぶ）を含む。また、顔サンプル画像群は、少なくとも１つの基本サンプル画像について、基本サンプル画像を例えば１．２倍から０．８倍までの範囲の所定の倍率で拡大および縮小した画像（例えば図６における画像ＦＩａおよびＦＩｂ）や、基本顔サンプル画像を時計回りおよび反時計回りに例えば１５度の範囲で所定の角度だけ回転させた画像（例えば図６における画像ＦＩｃおよびＦＩｄ）をも含む。
【００４０】
サンプル画像を用いた学習は、例えばニューラルネットワークを用いた方法や、ブースティング（例えばアダブースティング）を用いた方法、サポートベクターマシーンを用いた方法等により実行される。例えば学習がニューラルネットワークを用いた方法により実行される場合には、各フィルタＸ（すなわちフィルタ１〜フィルタＮ、図５参照）について、ある特定顔傾きに対応した顔サンプル画像群と非顔サンプル画像群とに含まれるすべてのサンプル画像を用いて評価値ｖＸ（すなわちｖ１〜ｖＮ）が算出され、所定の顔検出率を達成する閾値ｔｈＸ（すなわちｔｈ１〜ｔｈＮ）が設定される。ここで、顔検出率とは、顔サンプル画像群を構成する顔サンプル画像の総数に対する、評価値ｖＸによる閾値判定によって顔の画像に対応する画像であると判定される顔サンプル画像の数の割合を意味している。
【００４１】
次に、各フィルタＸに設定された重み係数ＷｅＸ（すなわちＷｅ１〜ＷｅＮ）が初期値に設定され、顔サンプル画像群および非顔サンプル画像群の中から選択された１つのサンプル画像についての累計評価値Ｔｖが算出される。後述するように、顔判定においては、ある画像について算出された累計評価値Ｔｖが所定の閾値ＴＨ以上の場合には、当該画像は顔の画像に対応する画像であると判定される。学習においては、選択されたサンプル画像（顔サンプル画像または非顔サンプル画像）について算出された累計評価値Ｔｖによる閾値判定結果の正誤に基づき、各フィルタＸに設定された重み係数ＷｅＸの値が修正される。以降、サンプル画像の選択と、選択されたサンプル画像について算出された累計評価値Ｔｖによる閾値判定、および判定結果の正誤に基づく重み係数ＷｅＸの値の修正が、顔サンプル画像群および非顔サンプル画像群に含まれるすべてのサンプル画像について繰り返し実行される。以上の処理が特定顔傾き毎に実行されることにより、特定顔傾き毎の顔学習データＦＬＤが設定される。
【００４２】
判定対象画像領域ＪＩＡについて特定顔傾き毎に累計評価値Ｔｖが算出されると（図３のステップＳ３５０）、判定部２１６（図１）は、累計評価値Ｔｖを特定顔傾き毎に設定された閾値ＴＨと比較する（ステップＳ３６０）。ある特定顔傾きについて累計評価値Ｔｖが閾値ＴＨ以上である場合には、領域検出部２１０が、判定対象画像領域ＪＩＡは当該特定顔傾き分だけ傾いた顔の画像に対応する画像領域であるとして、判定対象画像領域ＪＩＡの位置、すなわち現在設定されているウィンドウＳＷの座標と、当該特定顔傾きと、を記憶する（ステップＳ３７０）。一方、いずれの特定顔傾きについても累計評価値Ｔｖが閾値ＴＨより小さい場合には、ステップＳ３７０の処理はスキップされる。
【００４３】
ステップＳ３８０（図３）では、領域検出部２１０（図１）が、現在設定されているサイズのウィンドウＳＷにより顔検出用画像ＦＤＩｍｇ全体がスキャンされたか否かを判定する。未だ顔検出用画像ＦＤＩｍｇ全体がスキャンされていないと判定された場合には、判定対象設定部２１２（図１）が、ウィンドウＳＷを所定の方向に所定の移動量だけ移動する（ステップＳ３９０）。図４の下段には、ウィンドウＳＷが移動した様子を示している。本実施例では、ステップＳ３９０において、ウィンドウＳＷがウィンドウＳＷの水平方向の大きさの２割分の移動量で右方向に移動するものとしている。また、ウィンドウＳＷがさらに右方向には移動できない位置に配置されている場合には、ステップＳ３９０において、ウィンドウＳＷが顔検出用画像ＦＤＩｍｇの左端まで戻ると共に、ウィンドウＳＷの垂直方向の大きさの２割分の移動量で下方向に移動するものとしている。ウィンドウＳＷがさらに下方向には移動できない位置に配置されている場合には、顔検出用画像ＦＤＩｍｇ全体がスキャンされたこととなる。ウィンドウＳＷの移動（ステップＳ３９０）の後には、移動後のウィンドウＳＷについて、上述のステップＳ３４０以降の処理が実行される。
【００４４】
ステップＳ３８０（図３）において現在設定されているサイズのウィンドウＳＷにより顔検出用画像ＦＤＩｍｇ全体がスキャンされたと判定された場合には、ウィンドウＳＷの所定のサイズがすべて使用されたか否かが判定される（ステップＳ４００）。本実施例では、ウィンドウＳＷのサイズとして、初期値（最大サイズ）である横２４０画素×縦２４０画素の他に、横２１３画素×縦２１３画素、横１７８画素×縦１７８画素、横１４９画素×縦１４９画素、横１２４画素×縦１２４画素、横１０３画素×縦１０３画素、横８６画素×縦８６画素、横７２画素×縦７２画素、横６０画素×縦６０画素、横５０画素×縦５０画素、横４１画素×縦４１画素、横３５画素×縦３５画素、横２９画素×縦２９画素、横２４画素×縦２４画素、横２０画素×縦２０画素（最小サイズ）、の合計１５個のサイズが設定されている。未だ使用されていないウィンドウＳＷのサイズがあると判定された場合には、判定対象設定部２１２（図１）が、ウィンドウＳＷのサイズを現在設定されているサイズの次に小さいサイズに変更する（ステップＳ４１０）。すなわち、ウィンドウＳＷのサイズは、最初に最大サイズに設定され、その後、順に小さいサイズに変更されていく。ウィンドウＳＷのサイズの変更（ステップＳ４１０）の後には、変更後のサイズのウィンドウＳＷについて、上述のステップＳ３３０以降の処理が実行される。
【００４５】
ステップＳ４００（図３）においてウィンドウＳＷの所定のサイズがすべて使用されたと判定された場合には、領域設定部２１８（図１）が、顔領域設定処理を実行する（ステップＳ４２０）。図７および図８は、顔領域設定処理の概要を示す説明図である。領域設定部２１８は、図３のステップＳ３６０において累計評価値Ｔｖが閾値ＴＨ以上であると判定されステップＳ３７０において記憶されたウィンドウＳＷの座標と特定顔傾きとに基づき、顔の画像に対応する画像領域としての顔領域ＦＡを設定する。具体的には、特定顔傾きが０度である場合には、ウィンドウＳＷにより規定される画像領域（すなわち判定対象画像領域ＪＩＡ（図４参照））が、そのまま顔領域ＦＡとして設定される。一方、特定顔傾きが０度以外である場合には、ウィンドウＳＷにより規定される画像領域（判定対象画像領域ＪＩＡ）を所定の点（例えばウィンドウＳＷの重心）を中心として時計回りに特定顔傾き分だけ回転させた画像領域が顔領域ＦＡとして設定される。例えば図７（ａ）に示すように、３０度の特定顔傾きについて累計評価値Ｔｖが閾値ＴＨ以上であると判定された場合には、図７（ｂ）に示すように、ウィンドウＳＷにより規定される画像領域をウィンドウＳＷの重心を中心として時計回りに３０度回転させた画像領域が顔領域ＦＡとして設定される。
【００４６】
また、領域設定部２１８は、ステップＳ３７０において、ある特定顔傾きについて互いに一部が重複する複数のウィンドウＳＷが記憶された場合には、各ウィンドウＳＷにおける所定の点（例えばウィンドウＳＷの重心）の座標の平均の座標を重心とし、各ウィンドウＳＷのサイズの平均のサイズを有する１つの新たなウィンドウ（以下、「平均ウィンドウＡＷ」とも呼ぶ）を設定する。例えば図８（ａ）に示すように、互いに一部が重複する４つのウィンドウＳＷ（ＳＷ１〜ＳＷ４）が記憶された場合には、図８（ｂ）に示すように、４つのウィンドウＳＷのそれぞれの重心の座標の平均の座標を重心とし、４つのウィンドウＳＷのそれぞれのサイズの平均のサイズを有する１つの平均ウィンドウＡＷが定義される。このとき、上述したのと同様に、特定顔傾きが０度である場合には、平均ウィンドウＡＷにより規定される画像領域がそのまま顔領域ＦＡとして設定される。一方、特定顔傾きが０度以外である場合には、平均ウィンドウＡＷにより規定される画像領域を所定の点（例えば平均ウィンドウＡＷの重心）を中心として時計回りに特定顔傾き分だけ回転させた画像領域が顔領域ＦＡとして設定される（図８（ｃ）参照）。
【００４７】
なお、図７に示したように、他のウィンドウＳＷと重複しない１つのウィンドウＳＷが記憶された場合にも、図８に示した互いに一部が重複する複数のウィンドウＳＷが記憶された場合と同様に、１つのウィンドウＳＷ自身が平均ウィンドウＡＷであると解釈することも可能である。
【００４８】
本実施例では、学習の際に用いられる顔サンプル画像群（図６参照）に、基本顔サンプル画像を例えば１．２倍から０．８倍までの範囲の所定の倍率で拡大および縮小した画像（例えば図６における画像ＦＩａおよびＦＩｂ）が含まれているため、ウィンドウＳＷの大きさに対する顔の画像の大きさが基本サンプル画像と比べてわずかに大きかったり小さかったりする場合にも、顔領域ＦＡが検出されうる。従って、本実施例では、ウィンドウＳＷのサイズとして上述した１５個の離散的なサイズのみが設定されているが、あらゆる大きさの顔の画像について顔領域ＦＡが検出されうる。同様に、本実施例では、学習の際に用いられる顔サンプル画像群に、基本顔サンプル画像を時計回りおよび反時計回りに例えば１５度の範囲で所定の角度だけ回転させた画像（例えば図６における画像ＦＩｃおよびＦＩｄ）が含まれているため、ウィンドウＳＷに対する顔の画像の傾きが基本サンプル画像とはわずかに異なっている場合にも、顔領域ＦＡが検出されうる。従って、本実施例では、特定顔傾きとして上述した１２個の離散的な角度のみが設定されているが、あらゆる角度の顔の画像について顔領域ＦＡが検出されうる。
【００４９】
顔領域検出処理（図２のステップＳ１２０）において、顔領域ＦＡが検出されなかった場合には（ステップＳ１３０：Ｎｏ）、顔領域・器官領域検出処理は終了する。一方、少なくとも１つの顔領域ＦＡが検出された場合には（ステップＳ１３０：Ｙｅｓ）、信頼度算出部２２０の原信頼度算出部２２２（図１）が、検出された顔領域ＦＡについての顔領域原信頼度を算出する（ステップＳ１４０）。顔領域原信頼度は、顔領域検出処理の結果に基づき算出される指標であって、顔領域検出処理により検出された顔領域ＦＡが真に顔の画像に対応する画像領域であることの確からしさを表す指標である。顔領域検出処理では、顔の画像に対応しない画像領域、すなわち、顔の画像をまったく含まない画像領域や顔の画像の一部を含むが顔の画像に真に対応する画像領域ではない画像領域が、誤って顔領域ＦＡとして検出される可能性がある。顔領域原信頼度は、顔領域検出処理が、誤検出ではなく正しい検出であることの確からしさを表している。
【００５０】
本実施例では、重複ウィンドウ数を最大重複ウィンドウ数で除した値を顔領域原信頼度として用いている。ここで、重複ウィンドウ数は、各顔領域ＦＡの設定の際に参照された判定対象画像領域ＪＩＡの数、すなわち判定対象画像領域ＪＩＡを規定するウィンドウＳＷの数である。例えば、図８（ｃ）に示した顔領域ＦＡの設定の際には、図８（ａ）および（ｂ）に示した互いに一部が重複する４つのウィンドウＳＷ（ＳＷ１〜ＳＷ４）が参照されているため、重複ウィンドウ数は４となる。また、最大重複ウィンドウ数は、顔領域検出処理において顔検出用画像ＦＤＩｍｇ（図４参照）上に配置されたすべてのウィンドウＳＷの内、少なくとも一部が平均ウィンドウＡＷ（図８（ｂ）参照）に重複するウィンドウＳＷの数である。最大重複ウィンドウ数は、ウィンドウＳＷの移動ピッチやサイズ変更のピッチにより一義的に定まる。
【００５１】
検出された顔領域ＦＡが真に顔の画像に対応する画像領域である場合には、位置およびサイズが互いに近似する複数のウィンドウＳＷについて、判定対象画像領域ＪＩＡが顔の画像に対応する顔領域であると判定される可能性が高い。一方、検出された顔領域ＦＡが顔の画像に対応する画像領域ではなく誤検出である場合には、あるウィンドウＳＷについては判定対象画像領域ＪＩＡが顔の画像に対応する顔領域であると判定されたとしても、当該ウィンドウＳＷに位置およびサイズが近似する別のウィンドウＳＷについては判定対象画像領域ＪＩＡが顔の画像に対応する顔領域ではないと判定される可能性が高い。そのため、本実施例では、重複ウィンドウ数を最大重複ウィンドウ数で除した値を顔領域原信頼度として用いている。
【００５２】
ステップＳ１５０（図２）では、領域検出部２１０（図１）が、ステップＳ１２０において検出された顔領域ＦＡの１つを選択する。ステップＳ１６０では、領域検出部２１０が、選択された顔領域ＦＡにおける顔の器官の画像に対応する画像領域である器官領域の検出を行う。上述したように、本実施例では、顔の器官とは、右目と左目と口との３つの器官を意味している。図９は、器官領域検出処理の流れを示すフローチャートである。また、図１０は、器官領域検出処理の概要を示す説明図である。図１０の最上段には、顔検出処理に用いられた顔検出用画像ＦＤＩｍｇ（図４参照）の一例を示している。
【００５３】
器官領域検出処理（図９）におけるステップＳ５１０では、領域検出部２１０（図１）が、顔検出用画像ＦＤＩｍｇを表す顔検出用画像データから器官検出用画像ＯＤＩｍｇを表す器官検出用画像データを生成する。本実施例では、図１０に示すように、器官検出用画像ＯＤＩｍｇは、顔検出用画像ＦＤＩｍｇにおける顔領域ＦＡに対応した画像であって、横６０画素×縦６０画素のサイズの画像である。領域検出部２１０は、必要により顔検出用画像データのトリミング、アフィン変換、解像度変換を行うことにより、器官検出用画像ＯＤＩｍｇを表す器官検出用画像データを生成する。
【００５４】
器官検出用画像ＯＤＩｍｇからの器官領域の検出は、上述した顔検出用画像ＦＤＩｍｇからの顔領域ＦＡの検出と同様に行われる。すなわち、図１０に示すように、正方形形状のウィンドウＳＷがそのサイズおよび位置が変更されつつ器官検出用画像ＯＤＩｍｇ上に配置され（図９のステップＳ５２０，Ｓ５３０，Ｓ５８０〜Ｓ６１０）、配置されたウィンドウＳＷにより規定される画像領域が顔の器官の画像に対応する器官領域であるか否かの判定（以下「器官判定」とも呼ぶ）の対象となる判定対象画像領域ＪＩＡとして設定される（図９のステップＳ５４０）。設定された判定対象画像領域ＪＩＡについて、顔器官学習データＯＬＤ（図１）を用いて、器官（右目、左目、口）毎に、器官判定に用いられる累計評価値Ｔｖが算出される（図９のステップＳ５５０）。顔器官学習データＯＬＤは、累計評価値Ｔｖの算出や器官判定に用いられるフィルタＸの態様や閾値ｔｈＸ、重み係数ＷｅＸ、閾値ＴＨ（図５参照）を規定するデータである。なお、顔器官学習データＯＬＤの設定のための学習は、顔学習データＦＬＤの設定のための学習と同様に、顔の器官の画像を含むことが予めわかっている複数の器官サンプル画像によって構成された器官サンプル画像群と、顔の器官の画像を含まないことが予めわかっている複数の非器官サンプル画像によって構成された非器官サンプル画像群と、を用いて実行される。
【００５５】
なお、顔領域ＦＡの検出（図３）においては累計評価値Ｔｖが特定顔傾き毎に算出され、特定顔傾き毎に顔判定が行われるのに対し、器官検出用画像ＯＤＩｍｇからの器官領域の検出では、累計評価値Ｔｖは１つの判定対象画像領域ＪＩＡについて傾き０度に対応した１つの値のみが算出され、傾き０度に対応した器官の画像についての器官判定のみが行われる。これは、顔の器官の傾きは、顔全体の傾きに概ね一致するものと考えられるからである。ただし、器官領域の検出においても、所定の傾き毎に累計評価値Ｔｖが算出され、所定の傾き毎に器官判定が行われるものとしてもよい。
【００５６】
器官毎に算出された累計評価値Ｔｖが所定の閾値ＴＨ以上である場合には、判定対象画像領域ＪＩＡは顔の当該器官の画像に対応する画像領域であるとして、判定対象画像領域ＪＩＡの位置、すなわち現在設定されているウィンドウＳＷの座標が記憶される（図９のステップＳ５７０）。一方、累計評価値Ｔｖが閾値ＴＨより小さい場合には、ステップＳ５７０の処理はスキップされる。ウィンドウＳＷの所定のサイズのすべてについて、ウィンドウＳＷにより器官検出用画像ＯＤＩｍｇ全体がスキャンされた後に、器官領域設定処理が実行される（図９のステップＳ６２０）。器官領域設定処理は、顔領域設定処理（図８参照）と同様に、平均ウィンドウＡＷを設定して、平均ウィンドウＡＷにより規定される画像領域を器官領域として設定する処理である。
【００５７】
以上の処理により、器官検出用画像ＯＤＩｍｇにおいて、右目の画像に対応する画像領域である右目領域ＥＡ（ｒ）と、左目の画像に対応する画像領域である左目領域ＥＡ（ｌ）と、口の画像に対応する画像領域である口領域ＭＡと、の検出が行われる。図１１は、器官領域の検出結果の一例を示す説明図である。
【００５８】
ステップＳ１６０（図２）において少なくとも１つの器官領域が検出された場合には（ステップＳ１７０：Ｙｅｓ）、信頼度算出部２２０の原信頼度算出部２２２（図１）が、検出された器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）についての器官領域原信頼度を算出する（ステップＳ１８０）。器官領域原信頼度は、器官領域検出処理の結果に基づき算出される指標であって、器官領域検出処理により検出されたある器官についての器官領域が真に顔の当該器官の画像に対応する画像領域であることの確からしさを表す指標である。器官領域検出処理では、顔の器官の画像に対応しない画像領域、すなわち、顔の器官の画像をまったく含まない画像領域や顔の器官の画像の一部を含むが顔の器官の画像に真に対応する画像領域ではない画像領域が、誤って器官領域として検出される場合がある。器官領域原信頼度は、器官領域検出処理が、誤検出ではなく正しい検出であることの確からしさを表している。
【００５９】
本実施例では、上述した顔領域原信頼度と同様に、候補重複ウィンドウ数を最大重複ウィンドウ数で除した値が器官領域原信頼度として用いられる。なお、ステップＳ１６０において器官領域が検出されなかった場合には（ステップＳ１７０：Ｎｏ）、ステップＳ１８０の処理はスキップされる。
【００６０】
ステップＳ１９０（図２）では、信頼度算出部２２０（図１）が、顔領域の検出結果、すなわちステップＳ１４０において算出された顔領域原信頼度と、器官領域の検出結果、すなわちステップＳ１６０における器官領域の検出の成否およびステップＳ１８０において算出された器官領域原信頼度と、に基づき、顔領域総合信頼度を算出する。顔領域総合信頼度は、顔領域の検出結果（顔領域原信頼度）に加えて器官領域の検出結果（器官領域の検出の成否および器官領域原信頼度）を考慮して算出される、顔領域ＦＡが真に顔の画像に対応する画像領域であることの確からしさを表す指標である。顔領域総合信頼度は、本発明における顔領域信頼度に相当する。
【００６１】
本実施例では、顔領域総合信頼度は、顔領域原信頼度に各器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）についての器官領域原信頼度を加算した値である。このとき、ステップＳ１６０において検出されなかった器官領域についての器官領域原信頼度はゼロとする。すなわち、すべての器官（右目、左目、口）についての器官領域が検出されなかった場合には、顔領域総合信頼度は顔領域原信頼度に等しい。
【００６２】
検出された顔領域ＦＡが真に顔の画像に対応する画像領域である場合には、顔領域ＦＡに器官の画像が含まれている可能性が高いため、顔領域ＦＡにおいて器官領域が検出される可能性が高く、また器官領域原信頼度が大きいと考えられる。一方、検出された顔領域ＦＡが顔の画像に対応する画像領域ではなく誤検出である場合には、顔領域ＦＡに器官の画像が含まれていないため、顔領域ＦＡにおいて器官領域が検出される可能性は低く、仮に器官領域が検出された場合にも、その検出は誤検出であるため器官領域原信頼度は小さいと考えられる。そのため、顔領域原信頼度に各器官領域についての器官領域原信頼度を加算した値を顔領域総合信頼度として用いることにより、対象画像中の顔領域ＦＡの検出における信頼度をより精度良く算出することができる。
【００６３】
ステップＳ１５０（図２）において選択された顔領域ＦＡについての顔領域総合信頼度の算出（ステップＳ１９０）の完了後、ステップＳ１２０において検出された顔領域ＦＡでステップＳ１５０における選択が未だなされていない顔領域ＦＡが存在するか否かが判定される（ステップＳ２００）。未だ選択されていない顔領域ＦＡが存在すると判定された場合には（ステップＳ２００：Ｎｏ）、ステップＳ１５０に戻って未選択の顔領域ＦＡの１つが選択され、ステップＳ１６０以降の処理が実行される。一方、検出されたすべての顔領域ＦＡが選択されたと判定された場合には（ステップＳ２００：Ｙｅｓ）、処理はステップＳ２１０に進む。
【００６４】
ステップＳ２１０（図２）では、情報付加部２３０（図１）が、対象画像における検出された顔領域ＦＡおよび器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）の位置（座標）を示す情報と、算出された顔領域原信頼度、器官領域原信頼度および顔領域総合信頼度とを、対象画像データを含む画像ファイルに付属情報として付加する。これにより、対象画像データと、対象画像における顔領域および器官領域の位置（座標）を示す情報と、顔領域原信頼度、器官領域原信頼度および顔領域総合信頼度とが含まれた画像ファイルが生成される。
【００６５】
生成された画像ファイルに含まれる種々の情報は、種々の用途に利用可能である。例えば、顔領域ＦＡ、あるいは顔領域ＦＡに基づき設定された画像領域を対象画像領域として所定の補正処理を行う場合に、顔領域総合信頼度に基づき補正処理内容を設定することが可能である。例えば、所定の補正処理が対象画像領域内の画像の変形である場合には、顔領域総合信頼度が比較的小さいときの変形量が、顔領域総合信頼度が比較的大きいときの変形量より小さい値に設定される。あるいは、顔領域総合信頼度が所定の閾値より小さい場合には、画像の変形が実行されない（すなわち変形量がゼロに設定される）。このようにすれば、対象画像領域に対する変形処理の結果をより自然なものとすることができる。一般に、顔領域総合信頼度が比較的小さい場合には、顔領域総合信頼度が比較的大きい場合より、所定の補正処理における補正の程度が小さい値に設定されることが好ましい。
【００６６】
以上説明したように、第１実施例のプリンタ１００では、顔領域の検出結果（すなわちステップＳ１４０において算出された顔領域原信頼度）と、器官領域の検出結果（すなわちステップＳ１６０における器官領域の検出の成否およびステップＳ１８０において算出された器官領域原信頼度）と、に基づき、顔領域ＦＡが真に顔の画像に対応する画像領域であることの確からしさを表す指標である顔領域総合信頼度が算出される。そのため、第１実施例のプリンタ１００では、対象画像中の顔領域ＦＡの検出における信頼度をより精度良く算出することができる。
【００６７】
Ａ−３．信頼度算出の他の方法：
上述した顔領域原信頼度および器官領域原信頼度（以下、まとめて「原信頼度」とも呼ぶ）の算出方法は種々変形可能である。例えば、顔領域検出処理（図３）のステップＳ３５０や器官領域検出処理（図９）のステップＳ５５０において算出された累計評価値Ｔｖ（図５参照）を原信頼度（顔領域原信頼度、器官領域原信頼度）として用いるとしてもよい。顔領域（または器官領域）が真に顔の画像（または顔の器官の画像）に対応する画像領域である場合には累計評価値Ｔｖは大きい値になる可能性が高いため、累計評価値Ｔｖを原信頼度として用いることが可能である。なお、顔領域や器官領域の設定の際に複数のウィンドウＳＷが考慮された場合には（図８参照）、各ウィンドウＳＷに対応した判定対象画像領域ＪＩＡについて算出された累計評価値Ｔｖの平均を原信頼度として用いればよい。
【００６８】
また、累計評価値Ｔｖの算出のために算出された各フィルタＸについての評価値ｖＸ（図５参照）を用いて原信頼度を算出するとしてもよい。すなわち、累計評価値Ｔｖの算出の際には、評価値ｖＸは、閾値ｔｈＸとの比較判定によって１または０の値に変換された後に重み係数ＷｅＸを乗じられていたが、評価値ｖＸそのものと重み係数ＷｅＸとを乗算し、その積の合計を原信頼度として用いるとしてもよい。顔領域（または器官領域）が真に顔の画像（または顔の器官の画像）に対応する画像領域である場合には上記積の合計は大きい値になる可能性が高いため、上記積の合計を原信頼度として用いることが可能である。なお、顔領域や器官領域の設定の際に複数のウィンドウＳＷが考慮された場合には、各ウィンドウＳＷに対応した判定対象画像領域ＪＩＡについて算出された評価値ｖＸと重み係数ＷｅＸとの積の合計の平均を原信頼度として用いればよい。
【００６９】
また、顔領域原信頼度については、ある特定顔傾きについて設定された顔領域ＦＡに重複する他の特定顔傾きについて設定された顔領域ＦＡの数を顔領域原信頼度として用いるとしてもよい。この場合に、特定顔傾きの差が所定値以上の場合には、重複数に含めないとすることが好ましい。
【００７０】
また、上記実施例のように、候補重複ウィンドウ数を最大重複ウィンドウ数で除した値を原信頼度（顔領域原信頼度、器官領域原信頼度）として用いる場合に、候補重複ウィンドウ数が所定数以上となった場合には、原信頼度は最大値であるとみなし、それ以降、重複する位置にウィンドウＳＷを配置しないようにしてもよい。このようにすれば、処理の高速化を図ることができる。
【００７１】
上述した顔領域総合信頼度の算出方法も種々変形可能である。例えば、顔領域原信頼度に各器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）についての器官領域原信頼度に応じて設定された値（器官領域原信頼度が大きいほど小さく設定される値）を減算した値を顔領域総合信頼度として用いるとしてもよい。このとき、ステップＳ１６０において少なくとも１つの顔の器官についての器官領域が検出されなかった場合には、顔領域総合信頼度をゼロとするとしてもよい。また、顔領域原信頼度と各器官領域についての器官領域原信頼度との平均値を顔領域総合信頼度として用いるとしてもよい。
【００７２】
また、上記実施例では、器官領域原信頼度は、顔の器官（右目、左目、口）毎に算出されているが、すべての顔の器官に対応した１つの器官領域原信頼度が算出されるとしてもよい。
【００７３】
Ｂ．第２実施例：
図１２は、本発明の第２実施例における画像処理装置としてのプリンタ１００ａの構成を概略的に示す説明図である。第２実施例のプリンタ１００ａは、画像処理部２００の構成が図１に示した第１実施例のプリンタ１００と異なっている。すなわち、第２実施例のプリンタ１００ａの画像処理部２００は、信頼度算出部２２０（図１参照）を含まず、原信頼度算出部２２２が信頼度算出部２２０から独立した要素となっている。また、第２実施例のプリンタ１００ａの画像処理部２００は、情報付加部２３０（図１参照）を含まず、補正処理部２４０を含んでいる。プリンタ１００ａのその他の構成は、第１実施例のプリンタ１００と同じである。
【００７４】
補正処理部２４０は、領域検出部２１０により検出された顔領域ＦＡ（図７および図８参照）に基づき設定された対象画像領域を対象に、所定の補正処理を実行する。具体的には、補正処理部２４０は、顔領域ＦＡそのものを対象画像領域として、肌の画像に対応した画像領域の色を好ましい肌色に補正する肌色補正を実行する。
【００７５】
図１３は、顔領域補正処理の流れを示すフローチャートである。顔領域補正処理は、対象画像データの表す対象画像における顔の画像に対応する画像領域である顔領域の検出を行うと共に、検出された顔領域を対象画像領域として、肌色補正を実行する処理である。顔領域補正処理は、ユーザにより操作部１４０を介した処理の対象となる１つまたは複数の画像の選択に応じて開始される。
【００７６】
顔領域補正処理（図１３）のステップＳ１１０からＳ２００までの処理内容は、第１実施例における顔領域・器官領域検出処理（図２）のステップＳ１１０からＳ２００までの処理内容と同じである。ただし、第２実施例の顔領域補正処理では、第１実施例の顔領域・器官領域検出処理における顔領域原信頼度算出のステップ（図２のステップＳ１４０）と顔領域総合信頼度算出のステップ（図２のステップＳ１９０）とは実行されない。すなわち、第２実施例の顔領域補正処理では、算出される信頼度は、ステップＳ１８０において算出される器官領域原信頼度のみである。
【００７７】
第２実施例の顔領域補正処理における顔領域検出（図１３のステップＳ１２０）では、顔の器官（右目、左目、口）の少なくとも１つが遮蔽物（例えばマスクやサングラス）で遮蔽された顔の画像のように、顔の器官の少なくとも１つが表現されていない画像であっても、顔領域ＦＡとして検出されうる。図１４および図１５は、顔の器官の少なくとも１つが表現されていない画像の一例を示す説明図である。図１４（ａ）には、口がマスクで遮蔽された顔の画像に対応して検出された顔領域ＦＡの例を示しており、図１４（ｂ）には、顔領域ＦＡにおいて検出された右目領域ＥＡ（ｒ）および左目領域ＥＡ（ｌ）の例を示している。図１４（ｂ）の例では、口領域ＭＡは検出されていない。また、図１５（ａ）には、両目がサングラスで遮蔽された顔の画像に対応して検出された顔領域ＦＡの例を示しており、図１５（ｂ）には、顔領域ＦＡにおいて検出された口領域ＭＡの例を示している。図１５（ｂ）の例では、右目領域ＥＡ（ｒ）および左目領域ＥＡ（ｌ）は検出されていない。第２実施例では、顔学習データＦＬＤ（図１）を設定するための学習に用いられる顔サンプル画像群（図６参照）に、例えば口がマスクで遮蔽された顔のサンプル画像や両目がサングラスで遮蔽された顔のサンプル画像が含まれているため、顔領域検出において、顔の器官の少なくとも１つが表現されていない画像であっても、顔領域ＦＡとして検出可能となっている。
【００７８】
顔領域補正処理におけるステップＳ２３０（図１３）では、補正処理部２４０（図１２）が、検出された顔領域ＦＡを対象画像領域として、顔領域補正としての肌色補正を実行する。このとき補正処理部２４０は、器官領域の検出結果に基づき、肌色補正における補正内容を設定する。具体的には、補正処理部２４０は、器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）の少なくとも１つの検出が成功しなかった場合には、肌色補正における補正の程度を最低（すなわち、補正量＝ゼロ（補正しない））に設定する。一方、補正処理部２４０は、すべての器官領域の検出が成功した場合には、顔領域ＦＡ内の画素値に基づき肌色補正の程度を設定する。
【００７９】
以上説明したように、第２実施例のプリンタ１００ａによる顔領域補正処理では、器官領域の検出結果に基づき、肌色補正における補正内容が設定される。具体的には、器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）の少なくとも１つの検出が成功しなかった場合には、肌色補正における補正量はゼロに設定され、肌色補正は実行されない。検出された顔領域ＦＡにおいて器官領域の少なくとも１つの検出が成功しなかった場合には、当該顔領域ＦＡは真に顔の画像に対応する画像領域ではあるものの、検出されなかった顔の器官が例えば遮蔽物で遮蔽され画像上に表現されていない可能性がある。このような場合に顔領域ＦＡを対象として肌色補正のような補正処理を行うと、画像中の当該遮蔽物の画像の影響により補正結果が不自然なものとなる恐れがある。第２実施例の顔領域補正処理では、器官領域の少なくとも１つの検出が成功しなかった場合には肌色補正は実行されないため、補正結果が不自然なものとなる事態の発生を抑制することができる。
【００８０】
Ｃ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００８１】
Ｃ１．変形例１：
上記第１実施例では、情報付加部２３０により、対象画像における検出された顔領域ＦＡおよび器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）の位置（座標）を示す情報と、算出された顔領域原信頼度、器官領域原信頼度および顔領域総合信頼度とが、対象画像データを含む画像ファイルに付属情報として付加されているが、必ずしも画像ファイルにこのような情報がすべて付加される必要はなく、このような情報の一部のみが付加されるものとしてもよい。例えば、顔領域ＦＡの位置を示す情報と顔領域総合信頼度とのみが、付属情報として画像ファイルに付加されるとしてもよい。また、顔領域ＦＡの位置を示す情報と算出された顔領域総合信頼度とに加えて、器官領域の位置を示す情報と、顔領域原信頼度と、器官領域原信頼度と、の少なくとも１つが、付属情報として画像ファイルに付加されるとしてもよい。また、顔領域ＦＡおよび器官領域の位置を示す情報、顔領域原信頼度、器官領域原信頼度、顔領域総合信頼度は、１つまたは複数のデータファイルとして内部メモリ１２０に格納され、画像ファイルと関連づけられるものとしてもよい。
【００８２】
Ｃ２．変形例２：
上記第２実施例では、器官領域（右目領域ＥＡ（ｒ）、左目領域ＥＡ（ｌ）、口領域ＭＡ）の少なくとも１つの検出が成功しなかった場合には、肌色補正における補正量がゼロに設定され、肌色補正は実行されないとしているが、器官領域の少なくとも１つの検出が成功しなかった場合にも、すべての器官領域の検出が成功した場合における肌色補正の程度と比較して小さい補正の程度で肌色補正が実行されるとしてもよい。
【００８３】
また、上記第２実施例では、器官領域の検出結果に基づき顔領域補正処理における肌色補正の程度が設定されているが、本発明は、他の補正処理における補正内容の設定に適用可能である。例えば、顔領域ＦＡを所定の倍率で拡大または縮小した画像領域が変形領域として設定され、補正処理として変形領域の画像変形が行われる場合に、器官領域の検出結果に基づき画像変形の変形量が設定されるとしてもよい。例えば、器官領域の少なくとも１つの検出が成功しなかった場合には、すべての器官領域の検出が成功した場合における変形量と比較して小さい変形量で画像変形が行われるとしてもよいし、変形量がゼロに設定され画像変形が行われないものとしてもよい。
【００８４】
また、上記第２実施例では、器官領域の少なくとも１つの検出が成功しなかった場合に、肌色補正における補正量がゼロに設定され、肌色補正は実行されないとしているが、器官領域のすべての検出が成功しなかった場合にのみ肌色補正が実行されないものとしてもよい。あるいは、右目領域ＥＡ（ｒ）と左目領域ＥＡ（ｌ）とが共に検出されなかった場合にのみ肌色補正が実行されないものとしてもよい。
【００８５】
また、上記第２実施例において、検出された器官領域の器官領域原信頼度に基づき、肌色補正における補正の程度が設定されるとしてもよい。例えば、すべての器官領域の検出が成功した場合であっても、各器官領域の器官領域原信頼度が小さいほど補正の程度が小さくなるように、補正の程度が設定されるとしてもよい。
【００８６】
また、上記第２実施例において、器官領域原信頼度の算出（図１３のステップＳ１８０）は必ずしも実行される必要はない。
【００８７】
Ｃ３．変形例３：
上記各実施例における顔領域検出処理（図３）や器官領域検出処理（図９）の態様はあくまで一例であり、種々変更可能である。例えば顔検出用画像ＦＤＩｍｇ（図４参照）のサイズは３２０画素×２４０画素に限られず、他のサイズであってもよいし、対象画像ＴＩｍｇそのものを顔検出用画像ＦＤＩｍｇとして用いることも可能である。同様に、器官検出用画像ＯＤＩｍｇ（図１０参照）のサイズは６０画素×６０画素に限られず、他のサイズであってもよいし、顔検出用画像ＦＤＩｍｇにおける顔領域ＦＡのサイズそのものを器官検出用画像ＯＤＩｍｇのサイズとして用いることも可能である。また、使用されるウィンドウＳＷのサイズやウィンドウＳＷの移動方向および移動量（移動ピッチ）は上述したものに限られない。また、上記各実施例では、顔検出用画像ＦＤＩｍｇおよび器官検出用画像ＯＤＩｍｇのサイズが固定され、複数種類のサイズのウィンドウＳＷが顔検出用画像ＦＤＩｍｇおよび器官検出用画像ＯＤＩｍｇ上に配置されることにより複数サイズの判定対象画像領域ＪＩＡが設定されているが、複数種類のサイズの顔検出用画像ＦＤＩｍｇおよび器官検出用画像ＯＤＩｍｇが生成され、固定サイズのウィンドウＳＷが顔検出用画像ＦＤＩｍｇおよび器官検出用画像ＯＤＩｍｇ上に配置されることにより複数サイズの判定対象画像領域ＪＩＡが設定されるものとしてもよい。
【００８８】
また、上記各実施例では、累計評価値Ｔｖを閾値ＴＨと比較することにより顔判定および器官判定を行っているが（図５参照）、顔判定および器官判定を複数の判別器を用いた判別等の他の方法によって行ってもよい。顔判定および器官判定の方法に応じて、顔学習データＦＬＤおよび顔器官学習データＯＬＤの設定に用いられる学習方法も変更される。また、顔判定および器官判定は、必ずしも学習を用いた判別方法により行われる必要はなく、パターンマッチング等の他の方法により行われるとしてもよい。
【００８９】
また、上記各実施例では、３０度刻みの１２種類の特定顔傾き（図６参照）が設定されているが、より多くの種類の特定顔傾きが設定されてもよいし、より少ない種類の特定顔傾きが設定されてもよい。また、必ずしも特定顔傾きが設定される必要はなく、０度の顔傾きについての顔判定が行われるとしてもよい。また、上記各実施例では、顔サンプル画像群に基本サンプル画像を拡大・縮小した画像や回転させた画像が含まれるとしているが、顔サンプル画像群に必ずしもこのような画像が含まれる必要はない。
【００９０】
上記各実施例において、あるサイズのウィンドウＳＷにより規定される判定対象画像領域ＪＩＡについての顔判定（または器官判定）で顔の画像（または顔の器官の画像）に対応する画像領域であると判定された場合には、当該サイズより所定の比率以上小さいサイズのウィンドウＳＷを配置する場合には、顔の画像に対応する画像領域であると判定された判定対象画像領域ＪＩＡを避けて配置するものとしてもよい。このようにすれば、処理の高速化を図ることができる。
【００９１】
上記各実施例では、顔領域検出処理（図２のステップＳ１２０）が完了した後に顔領域原信頼度の算出（図２のステップＳ１４０）が実行されるとしているが、顔領域原信頼度の算出は顔領域検出処理の途中で実行されるとしてもよい。例えば、顔領域検出処理においてウィンドウＳＷのサイズ毎に顔領域設定処理（図３のステップＳ４２０）が行われ、設定された顔領域ＦＡについての顔領域原信頼度の算出が実行されるとしてもよい。器官領域原信頼度の算出（図２のステップＳ１８０）についても同様に変形可能である。
【００９２】
上記各実施例では、メモリカードＭＣに格納された画像データが対象画像データに設定されているが、対象画像データはメモリカードＭＣに格納された画像データに限らず、例えばネットワークを介して取得された画像データであってもよい。
【００９３】
上記各実施例では、顔の器官として、右目と左目と口とが設定されており、器官領域として、右目領域ＥＡ（ｒ）と左目領域ＥＡ（ｌ）と口領域ＭＡとの検出が行われるが、顔の器官として顔のどの器官を設定するかは変更可能である。例えば、顔の器官として、右目と左目と口とのいずれか１つまたは２つのみが設定されるとしてもよい。また、顔の器官として、右目と左目と口とに加えて、または右目と左目と口との少なくとも１つに代わり、顔のその他の器官（例えば鼻や眉）が設定され、器官領域としてこのような器官の画像に対応する領域が検出されるとしてもよい。
【００９４】
上記各実施例では、顔領域ＦＡおよび器官領域は矩形の領域であるが、顔領域ＦＡおよび器官領域は矩形以外の形状の領域であってもよい。
【００９５】
上各記実施例では、画像処理装置としてのプリンタ１００（または１００ａ）による顔領域・器官領域検出処理（または顔領域補正処理）を説明したが、処理の一部または全部がパーソナルコンピュータやデジタルスチルカメラ、デジタルビデオカメラ等の他の種類の画像処理装置により実行されるものとしてもよい。また、プリンタ１００（または１００ａ）はインクジェットプリンタに限らず、他の方式のプリンタ、例えばレーザプリンタや昇華型プリンタであるとしてもよい。
【００９６】
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【００９７】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア（コンピュータプログラム）は、コンピュータ読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスクやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種のＲＡＭやＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスク等のコンピュータに固定されている外部記憶装置も含んでいる。
【図面の簡単な説明】
【００９８】
【図１】本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。
【図２】顔領域・器官領域検出処理の流れを示すフローチャートである。
【図３】顔領域検出処理の流れを示すフローチャートである。
【図４】顔領域検出処理の概要を示す説明図である。
【図５】顔判定に用いる累計評価値Ｔｖの算出方法の概要を示す説明図である。
【図６】学習に用いられるサンプル画像の一例を示す説明図である。
【図７】顔領域設定処理の概要を示す説明図である。
【図８】顔領域設定処理の概要を示す説明図である。
【図９】器官領域検出処理の流れを示すフローチャートである。
【図１０】器官領域検出処理の概要を示す説明図である。
【図１１】器官領域の検出結果の一例を示す説明図である。
【図１２】本発明の第２実施例における画像処理装置としてのプリンタ１００ａの構成を概略的に示す説明図である。
【図１３】顔領域補正処理の流れを示すフローチャートである。
【図１４】顔の器官の少なくとも１つが表現されていない画像の一例を示す説明図である。
【図１５】顔の器官の少なくとも１つが表現されていない画像の一例を示す説明図である。
【符号の説明】
【００９９】
１００…プリンタ
１１０…ＣＰＵ
１２０…内部メモリ
１４０…操作部
１５０…表示部
１６０…プリンタエンジン
１７０…カードインターフェース
１７２…カードスロット
２００…画像処理部
２１０…領域検出部
２１２…判定対象設定部
２１４…評価値算出部
２１６…判定部
２１８…領域設定部
２２０…信頼度算出部
２２２…原信頼度算出部
２３０…情報付加部
２４０…補正処理部
３１０…表示処理部
３２０…印刷処理部
【図１】
2009217609.tif 000003
【図２】
2009217609.tif 000004
【図３】
2009217609.tif 000005
【図４】
2009217609.tif 000006
【図５】
2009217609.tif 000007
【図６】
2009217609.tif 000008
【図７】
2009217609.tif 000009
【図８】
2009217609.tif 000010
【図９】
2009217609.tif 000011
【図１０】
2009217609.tif 000012
【図１１】
2009217609.tif 000013
【図１２】
2009217609.tif 000014
【図１３】
2009217609.tif 000015
【図１４】
2009217609.tif 000016
【図１５】
2009217609.tif 000017