(57)【特許請求の範囲】
【請求項１】
画像処理装置であって、
顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する顔向き推定部と、
前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる画像補正部と、
を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記画像補正部は、前記振りの程度が或る値よりも大きい場合には、前記振りの程度が前記或る値よりも小さい場合よりも前記補正対象領域の変形度合いを小さくする、画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置において、
前記画像補正部は、前記補正対象領域のうち前記顔の向きと反対側の領域の変形度合いを、前記顔の向きと同じ側の領域の変形度合いよりも小さくする、画像処理装置。
【請求項４】
請求項１ないし請求項３のいずれか一項に記載の画像処理装置において、
前記画像補正部は、前記振りの程度が所定の閾値よりも大きい場合には、前記補正対象顔領域のうち少なくとも前記顔の向きと反対側の領域は変形させない、画像処理装置。
【請求項５】
請求項１ないし請求項４のいずれか一項に記載の画像処理装置において、
前記顔向き推定部は、前記顔の向きと前記振りの程度とを推定する際に、
（ｉ）前記対象画像における顔の器官の画像を含む領域を器官領域として検出し、
（ｉｉ）前記器官領域に基づき、前記顔の幅に相関のある指標としての参照幅と前記顔の高さに相関のある指標としての参照高さとを算出し、
（ｉｉｉ）前記参照幅と前記参照高さとの比に基づき、前記顔の向きと前記振りの程度とを推定する、画像処理装置。
【請求項６】
画像処理方法であって、
（ａ）顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する工程と、
（ｂ）前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる工程と、
を備える、画像処理方法。
【請求項７】
画像処理のためのコンピュータプログラムであって、
顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する機能と、
前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる機能と、
をコンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顔画像を含む画像において顔画像を変形させる画像処理技術に関する。
【背景技術】
【０００２】
デジタル画像を対象に、人物の見栄えを良くすることなどを目的として画像を変形する画像処理技術が知られている。例えば、人物等の顔を含む画像（以下、単に「顔画像」とも呼ぶ）上の一部の領域（頬の画像を表す領域）を補正領域として設定し、補正領域を所定のパターンに従い複数の小領域に分割し、小領域毎に設定された倍率で画像を拡大または縮小することにより、顔画像の形状を変形する画像処理が提案されている（下記特許文献１参照）。
【０００３】
【特許文献１】特開２００４−３１８２０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来、このような画像処理においては、正面向きの顔についての画像を対象とすることを想定していたため、顔の向きが正面向きではなく、左振りや右振り、又は上振りや下振りの場合には、変形処理後の顔画像が不自然なものとなるおそれがあった。
【０００５】
本発明は、顔画像を含む画像について、顔画像に含まれる顔が正面以外を向いている場合においても、見栄え良く顔画像を変形させることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する顔向き推定部と、前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる画像補正部と、を備える、画像処理装置。
【０００８】
適用例１の画像処理装置は、顔画像の少なくとも一部を含む補正対象領域を、顔画像に含まれる顔の向きと振りの程度とに応じて変形させるので、顔が正面以外の方向を向いている場合においても適切な程度や範囲で変形させることができ、見栄え良く顔画像を変形させることができる。
【０００９】
［適用例２］適用例１に記載の画像処理装置において、前記画像補正部は、前記振りの程度が或る値よりも大きい場合には、前記振りの程度が前記或る値よりも小さい場合よりも前記補正対象領域の変形度合いを小さくする、画像処理装置。
【００１０】
このようにすることで、顔の振りの程度が相対的に大きく、変形により顔画像が不自然なものとなる可能性が高い場合には変形度合いを小さくするので、変形後の顔画像が不自然なものとなることを抑制することができる。また、顔の振りの程度が相対的に小さく、変形により顔画像が不自然なものとなる可能性が低い場合には変形度合いを大きくするので、変形により所期の見栄えを得ることが可能となる。
【００１１】
［適用例３］適用例１または適用例２に記載の画像処理装置において、前記画像補正部は、前記補正対象領域のうち前記顔の向きと反対側の領域の変形度合いを、前記顔の向きと同じ側の領域の変形度合いよりも小さくする、画像処理装置。
【００１２】
このようにすることで、顔の向きと反対側の領域は変形に適さない部分となるおそれがあるところ、かかる領域については変形度合いを相対的に小さくするので、変形後の顔画像が不自然なものとなることを抑制することができる。また、顔の向きと同じ側の領域は変形に適する部分となる可能性が高いものであるところ、かかる領域については変形度合いを相対的に大きくするので、変形により所期の見栄えを得ることが可能となる。
【００１３】
［適用例４］適用例１ないし適用例３のいずれか一例に記載の画像処理装置において、前記画像補正部は、前記振りの程度が所定の閾値よりも大きい場合には、前記補正対象顔領域のうち少なくとも前記顔の向きと反対側の領域は変形させない、画像処理装置。
【００１４】
このようにすることで、顔の振りの程度が所定の閾値よりも大きい場合には、顔の向きと反対側の領域（変形により不自然となるおそれがある領域）を少なくとも含む領域については変形させないので、変形後の顔画像が不自然なものとなることを抑制することができる。
【００１５】
［適用例５］適用例１ないし適用例４のいずれか一例に記載の画像処理装置において、前記顔向き推定部は、前記顔の向きと前記振りの程度とを推定する際に、（ｉ）前記対象画像における顔の器官の画像を含む領域を器官領域として検出し、（ｉｉ）前記器官領域に基づき、前記顔の幅に相関のある指標としての参照幅と前記顔の高さに相関のある指標としての参照高さとを算出し、（ｉｉｉ）前記参照幅と前記参照高さとの比に基づき、前記顔の向きと前記振りの程度とを推定する、画像処理装置。
【００１６】
このようにすることで、顔の幅に相関のある参照幅と顔の高さに相関のある参照高さとの比は、顔の振りの方向と振りの程度とに応じて変化すると考えられるため、参照幅と参照高さとの比に基づいて、顔の振りの向きと振りの程度とを推定することができる。
【００１７】
［適用例６］画像処理方法であって、（ａ）顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する工程と、（ｂ）前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる工程と、を備える、画像処理方法。
【００１８】
適用例６の画像処理方法では、顔画像の少なくとも一部を含む補正対象領域を、顔画像に含まれる顔の向きと振りの程度とに応じて変形させるので、顔が正面以外の方向を向いている場合においても適切な程度や範囲で変形させることができ、見栄え良く顔画像を変形させることができる。
【００１９】
［適用例７］画像処理のためのコンピュータプログラムであって、顔画像が含まれる対象画像において、前記顔画像に含まれる顔の正面向きを基準とした前記顔の向きと振りの程度とを推定する機能と、前記顔画像の少なくとも一部を含む、補正対象とする補正対象領域を、前記振りの程度に応じて変形させる機能と、をコンピュータに実現させる、コンピュータプログラム。
【００２０】
適用例７のコンピュータプログラムでは、顔画像の少なくとも一部を含む補正対象領域を、顔画像に含まれる顔の向きと振りの程度とに応じて変形させるので、顔が正面以外の方向を向いている場合においても適切な程度や範囲で変形させることができ、見栄え良く顔画像を変形させることができる。
【００２１】
なお、本発明は、種々の形態で実現することが可能であり、例えば、上記コンピュータプログラムを記録した記録媒体等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明を実施するための最良の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１の実施例：
Ｂ．第２の実施例：
Ｃ．第３の実施例：
Ｄ．第４の実施例：
Ｅ．第５の実施例：
Ｆ．変形例：
【００２３】
Ａ．第１の実施例：
Ａ１．装置構成：
図１は、本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。このプリンタ１００は、メモリカードＭＣ等から取得した画像データに基づき画像を印刷する、いわゆるダイレクトプリントに対応したカラーインクジェットプリンタである。プリンタ１００は、内部メモリ１２０と、ＣＰＵ１１０と、操作部１４０と、表示部１５０と、プリンタエンジン１６０と、カードインターフェース（カードＩ／Ｆ）１７０と、カードスロット１７２とを備えている。
【００２４】
内部メモリ１２０は、ＲＯＭやＲＡＭによって構成されており、顔形状補正処理部２００と、表示処理部３１０と、印刷処理部３２０と、分割点配置パターンテーブル４１０と、分割点移動テーブル４２０とを備えている。顔形状補正処理部２００は、所定のオペレーティングシステムの下で、後述する顔形状補正処理を実行するためのコンピュータプログラムである。この顔形状補正処理部２００は、プログラムモジュールとして、顔領域検出部２１０と、器官領域検出部２２０と、顔向き推定部２３０と、変形領域設定部２４０と、変形領域分割部２５０と、分割領域変形部２６０と、分割点移動テーブル決定部２７０とを含んでいる。表示処理部３１０は、表示部１５０を制御して、表示部１５０上に処理メニュー，メッセージ及び画像を表示させるディスプレイドライバである。印刷処理部３２０は、画像データから印刷データを生成し、プリンタエンジン１６０を制御して画像の印刷を実行するためのコンピュータプログラムである。ＣＰＵ１１０は、上述したこれらのプログラムを内部メモリ１２０から読み出して実行することにより、これら各部の機能をそれぞれ実現する。
【００２５】
操作部１４０は、ボタンやタッチパネルを備えておりユーザによる指示等の入力を受け付ける。表示部１５０は、液晶ディスプレイで構成されている。プリンタエンジン１６０は、印刷処理部３２０から送信される印刷データに基づき印刷を行う印刷機構である。カードＩ／Ｆ１７０は、カードスロット１７２に挿入されたメモリカードＭＣとの間でデータのやり取りを行うためのインターフェースである。なお、このカードＩ／Ｆ１７０以外にも他の機器（例えばデジタルスチルカメラやパーソナルコンピュータ）とのデータ通信を行うためのインターフェースを備える構成とすることもできる。以上の各構成要素は、バスを介して互いに接続されている。
【００２６】
上記構成を有するプリンタ１００は、顔画像を含む画像に対して後述する顔形状補正処理を実行することにより、顔画像の一部を含む領域を小さく変形させる（以下、「小顔化する」又は「スリムにする」とも呼ぶ）ことができる。このとき、顔画像に含まれる顔の向きが正面でない場合であっても、見栄え良く変形させるように構成されている。
【００２７】
なお、前述の顔向き推定部２３０と器官領域検出部２２０とは、請求項における顔向き推定部に相当する。また、変形領域設定部２４０と変形領域分割部２５０と分割領域変形部２６０と分割点移動テーブル決定部２７０とは、請求項における画像補正部に相当する。
【００２８】
Ａ２．顔形状補正処理：
図２は、顔形状補正処理の手順を示すフローチャートである。カードスロット１７２（図１）にメモリカードＭＣが挿入され、ユーザによる操作部１４０を介した所定の操作が行われると、顔形状補正処理が開始される。
【００２９】
ステップＳ１００では、顔形状補正処理部２００（図１）は、処理対象となる対象画像を設定する。具体的には、顔形状補正処理部２００は、対象画像設定のための所定のユーザインタフェースを表示部１５０に表示するように表示処理部３１０に指示する。そして、顔形状補正処理部２００は、このユーザインタフェースからの入力に従って対象画像を設定する。
【００３０】
図３は、表示部１５０に表示される対象画像設定用ユーザインタフェースの一例を示す説明図である。この対象画像設定用ユーザインタフェース（以下、「対象画像設定用ＵＩ」とも呼ぶ）５００は、表示部１５０（図１）に表示されたユーザインタフェース用画像として構成されている。具体的には、画像表示用ＵＩ５００は、画像表示欄ＩＡと、画像切替用の２つのボタンＢ１，Ｂ２と、決定用ボタンＢ１０と、キャンセル用ボタンＢ１１とを備えている。ユーザは、対象画像設定用ＵＩ５００を見ながら２つの画像切替用ボタンＢ１，Ｂ２を操作して対象画像を選択し、決定用ボタンＢ１０を押下することで対象画像を設定することができる。図３の例では、２人の人物Ｐ１，Ｐ２が写った画像ＴＩが対象画像として選択されており、この状態でユーザが決定用ボタンＢ１０を押下することで、顔形状補正処理部２００は、画像ＴＩを対象画像として設定する。なお、対象画像設定用ＵＩ５００においてメモリカードＭＣ内の複数の画像を一覧表示する構成とすることもできる。
【００３１】
ステップＳ２００（図２）では、顔領域検出部２１０（図１）は、対象画像における顔領域の検出を行う。「顔領域」とは、対象画像における画像領域であって、少なくとも顔の一部の画像を含む領域である。顔領域検出部２１０は、対象画像を解析して顔の画像を含むと想定される矩形の領域を顔領域として検出する。この顔領域の検出は、例えばテンプレートを利用したパターンマッチングによる方法（特開２００６−２７９４６０参照）といった公知の検出方法を用いて実行される。
【００３２】
図４は、ステップＳ２００における顔領域の検出結果の一例を示す説明図である。図４の例では、対象画像ＴＩに人物Ｐ１と人物Ｐ２との２人の顔の画像が含まれているため、人物Ｐ１の顔の画像を含む領域Ｆｄ１と人物Ｐ２の顔の画像を含む領域Ｆｄ２とが検出されている。ここで、２つの顔領域Ｆｄ１，Ｆｄ２は、それぞれ両目と鼻と口の各画像をすべて含む矩形の領域となっている。顔領域検出部２１０は、これら２つの顔領域Ｆｄ１，Ｆｄ２を、それぞれ、顔領域の４つの頂点の座標により特定する。
【００３３】
前述のステップＳ２００（図２）において、顔領域の検出に成功しなかった場合は（ステップＳ３００：Ｎｏ）、その旨が表示部１５０を介してユーザに通知される。この場合には、ユーザに他の画像を対象画像として選択させるために、対象画像設定用ＵＩ５００（図３）が表示部１５０に再度表示され、対象画像の再設定（図２：ステップＳ１００）が行われる。なお、ステップＳ１００の再実行に代えて、メッセージの通知の後に顔形状補正処理を終了させる構成とすることもできる。
【００３４】
一方、前述のステップＳ２００において、顔領域の検出に成功した場合には（ステップＳ３００：Ｙｅｓ）、器官領域検出部２２０（図１）は、対象画像における器官領域の検出を行う（ステップＳ４００）。「器官領域」とは、対象画像における画像領域であって、少なくとも顔の器官の一部の画像を含む領域を意味する。本実施例では、顔の器官として被写体の人物の右目と左目と口とが設定されており、器官領域として、「右目の画像を含む右目領域」と、「左目の画像を含む左目領域」と、「口の画像を含む口領域」とが検出対象となる。器官領域検出部２２０は、対象画像において顔領域を解析して、右目を含むと想定される矩形領域を「右目領域」として検出する。同様に、器官領域検出部２２０は、左目を含むと想定される矩形領域を「左目領域」として、口を含むと想定される矩形領域を「口領域」として、それぞれ検出する。この器官領域の検出は、顔領域の検出と同様に、例えばテンプレートを利用したパターンマッチングによる方法といった公知の検出方法を用いて実行することができる。
【００３５】
図５は、ステップＳ４００における器官領域の検出結果の一例を示す説明図である。図５の例では、人物Ｐ１の顔領域Ｆｄ１において、右目領域Ｅｒ１と左目領域Ｅｌ１と口領域Ｍａ１とが検出されている。同様に、人物Ｐ２の顔領域Ｆｄ２において、右目領域Ｅｒ２と左目領域Ｅｌ２と口領域Ｍａ２とが検出されている。器官領域検出部２２０は、検出した各器官領域Ｅｒ１，Ｅｌ１，Ｍａ１，Ｅｒ２，Ｅｌ２，Ｍａ２を、それぞれの領域の４つの頂点の座標によって特定することができる。
【００３６】
なお、本実施例では、信頼度設定部２２２（図１）が、検出された各器官領域について信頼度指標を設定する。信頼度指標は、検出された器官領域が、真に顔の器官の画像を含む領域であることの確からしさを表す指標である。本実施例では、信頼度指標として、テンプレートを変更しつつ複数回のパターンマッチングを行った際におけるマッチ回数を用いる。
【００３７】
ステップＳ４００（図２）において、器官領域の検出に成功した場合には（ステップＳ５００：Ｙｅｓ）、処理はステップＳ６００に進む。ここで、本実施例では、器官領域の検出に成功した場合とは、「右目領域」と「左目領域」と「口領域」との３つの器官領域がすべて検出され、かつ、すべての器官領域について信頼度指標の表す確からしさが所定の閾値より大きい場合を意味する。３つの器官領域の内のいずれか１つでも検出されなかった場合や、３つの器官領域の内のいずれか１つの信頼度指標の表す確からしさが所定の閾値より小さい場合には、器官領域の検出に成功しなかったこととなる。
【００３８】
ステップＳ６００（図２）では、顔向き推定部２３０（図１）は、対象画像に含まれる顔の向きと振りの程度とを推定して、内部メモリ１２０に格納する。ここで、「顔の向き」とは、顔の正面向き（観察者から被写体である人物の顔に向かう方向）を基準とした向きを意味する。また、「顔の振りの程度」とは、顔の正面向きを基準（０°）としたときの顔の向きの角度を意味する。
【００３９】
図６は、ステップＳ６００における顔の向きと程度とを推定する方法を概念的に示す説明図である。図６において、右目領域Ｅｒの中心点Ｃｅ（ｒ）と左目領域Ｅｌの中心点Ｃｅ（ｌ）とを結ぶ線分ＣＬの長さを参照幅Ｗｒと呼び、口領域Ｍａの中心点Ｃｍと線分ＣＬとの距離を参照高さＨｒと呼ぶものとする。図６から明らかなように、参照幅Ｗｒは顔の幅に相関のある指標であり、参照高さＨｒは顔の高さに相関のある指標である。
【００４０】
顔向き推定部２３０は、参照高さＨｒと参照幅Ｗｒとを算出すると共に参照高さＨｒと参照幅Ｗｒとの比（Ｈｒ／Ｗｒ）を判定指標ＤＩとして算出し、判定指標ＤＩに基づき顔向き推定を行う。すなわち、図６に示すように、判定指標ＤＩの値が閾値Ｔ１以上で閾値Ｔ２未満である場合には、顔の向きが正面向きであると推定される。また、判定指標ＤＩの値が閾値Ｔ１未満である場合には、顔の向きが上振りまたは下振りであると推定され、判定指標ＤＩの値が閾値Ｔ２以上である場合には、顔の向きが右振りまたは左振りであると推定される。
【００４１】
ここで、「左振り」とは、被写体である人物の顔が対象画像の観察者から見て左を向いている（すなわち人物は実際には右を向いている）場合の顔の向きを意味し、「右振り」とは、人物の顔が画像の観察者から見て右を向いている（すなわち人物は実際には左を向いている）場合の顔の向きを意味する。また、「上振り」とは、被写体である人物の顔が画像の観察者から見て上を向いている場合の顔の向きを意味し、「下振り」とは、人物の顔が画像の観察者から見て下を向いている場合の顔の向きを意味する。
【００４２】
顔の向きが右振りまたは左振りである場合には、正面向きである場合と比較して、参照高さＨｒはほとんど変わらない一方、参照幅Ｗｒは小さいものと考えられる。従って、顔の向きが右振りまたは左振りである場合には、正面向きである場合と比較して判定指標ＤＩ（＝Ｈｒ／Ｗｒ）の値が大きくなる。反対に、顔の向きが上振りまたは下振りである場合には、正面向きである場合と比較して参照幅Ｗｒはほとんど変わらない一方、参照高さＨｒは小さいものと考えられる。従って、顔の向きが上振りまたは下振りである場合には、正面向きである場合と比較して、判定指標ＤＩ（＝Ｈｒ／Ｗｒ）の値が小さくなる。閾値Ｔ１および閾値Ｔ２は、所定数の顔のサンプル画像の判定指標ＤＩ（参照幅Ｗｒと参照高さＨｒとの比）から統計的に定められる。予め定められた閾値Ｔ１および閾値Ｔ２は内部メモリ１２０内の所定の領域に格納されており（図示省略）、顔向き推定部２３０は、対象画像の判定指標ＤＩと閾値Ｔ１および閾値Ｔ２とを用いて、顔向き推定を行う。
【００４３】
なお、図６から明らかなように、判定指標ＤＩは、顔の正面向きを基準とした顔の振りの程度を示す指標であると言える。例えば、右振りまたは左振りと推定された２つの顔画像において、判定指標ＤＩの値がより大きい一方の顔は、他の一方の顔と比較して、正面向きからの振りの程度がより大きいと推定することができる。また、閾値Ｔ１および閾値Ｔ２を決定することは、顔の向きが厳密な正面向き（顔と撮像装置（観察者）とが正対している状態）からどの程度振りのある顔画像までを「正面向き」であるとして推定するかを設定することに相当する。
【００４４】
図７（Ａ）は、図５に示す対象画像ＴＩが得られた際の人物Ｐ１と撮像装置との位置関係を示す説明図である。図７（Ａ）の例では、撮影時における二人の人物Ｐ１，Ｐ２と撮像装置（デジタルスチルカメラ）８００との位置関係を上方より示している。２人の人物Ｐ１，Ｐ２は、互いにデジタルスチルカメラ８００からほぼ同じ距離に位置している。このとき、人物Ｐ１は、デジタルスチルカメラ８００に正対している。したがって、図５に示すように、人物Ｐ１の顔の向きは正面向きとなっている。
【００４５】
図７（Ｂ）は、図５に示す対象画像ＴＩが得られた際の人物Ｐ２と撮像装置との位置関係を示す説明図である。図７（Ｂ）も図７（Ａ）と同様に、撮影時における二人の人物Ｐ１，Ｐ２とデジタルスチルカメラ８００との位置関係を上方より示している。人物Ｐ２は、デジタルスチルカメラ８００と正対する方向（顔の正面向き）を基準として右側に３０°（＋３０°）だけ振った方向を向いている。このような位置関係で撮像されて得られた対象画像ＴＩ（図５）において、顔向き推定部２３０は、上述した判定指標ＤＩを用いて、例えば、以下のごとく各顔の向きと振りの程度とを推定することができる。
【００４６】
図８（Ａ）は、顔向き推定において正面向きと推定された結果の一例を示す説明図である。図８（Ａ）の例では、人物Ｐ１の顔画像についての顔向き推定の結果、判定指標ＤＩの値が閾値Ｔ１以上で閾値Ｔ２未満であるために、「正面向き」であると推定されている。そして、この場合、顔の振りの方向を示す値として「正面向き」と、顔の振りの程度（角度）を示す値として「０°」とが、顔領域Ｆｄ１を示す値（矩形領域の各頂点の座標等）と対応付けて内部メモリ１２０に格納される。なお、顔の振り角度は、判定指標ＤＩと角度とを対応付けた角度テーブル（図示省略）を用いて決定することができる。この角度テーブル（図示省略）は、予め実験によって判定指標ＤＩ毎の振り角度を求めて設定し、内部メモリ１２０に格納しておく。
【００４７】
図８（Ｂ）は、顔向き推定において右振りと推定された結果の一例を示す説明図である。図８（Ｂ）では、人物Ｐ２の顔画像についての顔向き推定の結果、判定指標Ｄ１がＴ２以上であるために、「右振り」または「左振り」と推定される。さらに、顔向き推定部２３０は、右振りと左振りとのうち、いずれかであるかを推定する。この推定は、例えば、右目領域Ｅｒの幅Ｗｅｒと左目領域Ｅｌの幅Ｗｅｌとを比較することにより実現可能である。すなわち、右目領域Ｅｒの幅Ｗｅｒの方が大きければ右振りであると推定され、左目領域Ｅｌの幅Ｗｅｌの方が大きければ左振りであると推定される。図８（Ｂ）の例では、右目領域Ｅｒ２の幅Ｗｅｒ２の方が左目領域Ｅｌ２の幅Ｗｅｌ２よりも大きいので、「右振り」であると推定されている。また、顔向き推定部２３０は、得られた判定指標Ｄ１に基づき、上述した角度テーブル（図示省略）を参照して人物Ｐ２についての顔画像の振り角度（＋３０°）を求めることができる。そして、顔向き推定部２３０は、「右振り」及び「＋３０°」を、顔領域Ｆｄ２を示す値と対応付けて内部メモリ１２０に格納する。
【００４８】
ステップＳ７００（図２）では、分割点移動テーブル決定部２７０は、後述するステップＳ８００の変形処理で用いる分割点移動テーブルを決定する。分割点移動テーブル４２０（図１）は、顔の向き及び振りの程度に応じて予め用意された複数のテーブルから構成されており、分割点移動テーブル決定部２７０は、これら複数のテーブルから変形処理で用いるテーブルを選択して決定する。例えば、人物Ｐ１の顔画像についての変形処理で用いる分割点移動テーブルとしては、上述のように顔の向きが正面向き（振りの程度＝０°）であるので、正面向き用（０°用）に用意された分割点テーブルが選択される。また、人物Ｐ２の顔画像についての変形処理で用いる分割点移動テーブルとしては、上述のように顔の向きが右振りであり振りの程度が＋３０°であるので、＋３０°右振り用に用意された分割点移動テーブルが決定される。なお、分割点移動テーブル４２０の詳細は後述する。そして、分割点移動テーブルが決定されると、顔画像の変形処理が実行される（ステップＳ８００）。
【００４９】
図９は、ステップＳ８００の変形処理の詳細手順を示すフローチャートである。ステップＳ８１０では、変形領域設定部２４０（図１）は、変形領域を設定する。「変形領域」とは、対象画像上の領域であって顔形状補正のための変形処理の対象となる領域を意味する。また、この変形領域は、請求項における補正対象領域に相当する。
【００５０】
図１０は、変形領域の設定方法の一例を示す説明図である。図１０の例では、顔領域Ｆｄ１についての変形領域の設定例を示している。図１０において、太い実線の矩形（ＴＡ１）は、顔領域Ｆｄ１について設定される変形領域ＴＡ１を示す。また、基準線ＲＬは、顔領域Ｆｄ１の高さ方向（上下方向）を定義すると共に、顔領域Ｆｄ１の幅方向（左右方向）の中心を示す線である。すなわち、基準線ＲＬは、矩形の顔領域Ｆｄ１の重心を通り、顔領域Ｆｄ１の高さ方向（上下方向）に沿った境界線に平行な直線である。
【００５１】
図１０に示すように、本実施例では、変形領域ＴＡ１は、顔領域Ｆｄ１を基準線ＲＬと平行な方向（高さ方向）および基準線ＲＬに直行する方向（幅方向）に伸張（または短縮）した領域として設定される。具体的には、顔領域Ｆｄ１の高さ方向（縦）の長さをＨ１、幅方向（横）の大きさをＷ１とすると、顔領域Ｆｄ１を、上方向にｋ１・Ｈ１、下方向にｋ２・Ｈ１だけ伸ばすと共に、左右にそれぞれｋ３・Ｗ１だけ伸ばした領域が、変形領域ＴＡ１として設定される。なお、ｋ１，ｋ２，ｋ３は、所定の係数である。このようにして変形領域ＴＡ１が設定されると、顔領域Ｆｄ１の高さ方向（縦）の輪郭線に平行な直線である基準線ＲＬは、変形領域ＴＡ１の高さ方向（縦）の輪郭線にも平行な直線となる。また、基準線ＲＬは、変形領域ＴＡ１の幅（横の長さ）を半分に分割する直線となる。
【００５２】
図１０に示すように、変形領域ＴＡ１は、高さ方向に関しては、概ね顎から額までの画像を含み、幅方向に関しては、左右の頬の画像を含むような領域として設定される。すなわち、本実施例では、補正領域が概ねそのような範囲の画像を含む領域となるように、上述の係数ｋ１，ｋ２，ｋ３を予め実験により求めて設定されている。
【００５３】
ステップＳ８２０（図９）では、変形領域分割部２５０は、ステップＳ８１０において設定した変形領域を複数の小領域に分割する。
【００５４】
図１１は、変形領域の小領域への分割方法の一例を示す説明図である。図１１では、前述の図１０に示す顔領域Ｆｄ１と変形領域ＴＡ１とを記載している。変形領域分割部２５０は、変形領域ＴＡ１に複数の分割点Ｄを配置し、分割点Ｄを結ぶ直線を用いて変形領域ＴＡ１を複数の小領域に分割する。
【００５５】
ここで、分割点Ｄの配置の態様（分割点Ｄの個数および位置）は、分割点配置パターンテーブル４１０（図１）により定義されている。変形領域分割部２５０は、分割点配置パターンテーブル４１０を参照して分割点Ｄを配置する。なお、本実施例では、顔の形状をスリムにするための小顔化が行われるものとしており、分割点配置パターンテーブル４１０には、そのような小顔化に対応した態様で分割点Ｄの配置パターンが予め定義されている。
【００５６】
図１１の例では、分割点Ｄは、水平分割線Ｌｈと垂直分割線Ｌｖとの交点と、水平分割線Ｌｈおよび垂直分割線Ｌｖと変形領域ＴＡ１の外枠との交点とに配置される。ここで、水平分割線Ｌｈおよび垂直分割線Ｌｖは、変形領域ＴＡ１内に分割点Ｄを配置するための基準となる線である。図１１に示すように、本実施例における分割点Ｄの配置では、基準線ＲＬと直行する２本の水平分割線Ｌｈと、基準線ＲＬに平行な４本の垂直分割線Ｌｖとが設定される。２本の水平分割線Ｌｈを、変形領域ＴＡの下方から順に、Ｌｈ１，Ｌｈ２と呼ぶ。また、４本の垂直分割線Ｌｖを、変形領域ＴＡの左から順に、Ｌｖ１，Ｌｖ２，Ｌｖ３，Ｌｖ４と呼ぶ。
【００５７】
水平分割線Ｌｈ１は、変形領域ＴＡ１において、顎の画像より下方に配置され、水平分割線Ｌｈ２は、目の画像付近に配置される。また、垂直分割線Ｌｖ１およびＬｖ４は、頬のラインの画像の外側に配置され、垂直分割線Ｌｖ２およびＬｖ３は、目尻の画像の外側に配置される。なお、水平分割線Ｌｈおよび垂直分割線Ｌｖの配置は、水平分割線Ｌｈおよび垂直分割線Ｌｖと画像との位置関係が結果的に上述の位置関係となるように予め設定された変形領域ＴＡ１の大きさとの対応関係に従い実行される。
【００５８】
上述した水平分割線Ｌｈと垂直分割線Ｌｖとの配置に従い、水平分割線Ｌｈと垂直分割線Ｌｖとの交点と、水平分割線Ｌｈおよび垂直分割線Ｌｖと変形領域ＴＡ１の外枠との交点とに、分割点Ｄが配置される。図１１に示すように、水平分割線Ｌｈｉ（ｉ＝１または２）上に位置する分割点Ｄを、左から順に、Ｄ０ｉ，Ｄ１ｉ，Ｄ２ｉ，Ｄ３ｉ，Ｄ４ｉ，Ｄ５ｉと呼ぶものとする。例えば、水平分割線Ｌｈ１上に位置する分割点Ｄは、Ｄ０１，Ｄ１１，Ｄ２１，Ｄ３１，Ｄ４１，Ｄ５１と呼ばれる。同様に、垂直分割線Ｌｖｊ（ｊ＝１，２，３，４のいずれか）上に位置する分割点Ｄを、下から順に、Ｄｊ０，Ｄｊ１，Ｄｊ２，Ｄｊ３と呼ぶものとする。例えば、垂直分割線Ｌｖ１上に位置する分割点Ｄは、Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３と呼ばれる。なお、図１１に示すように、本実施例における分割点Ｄの配置は、基準線ＲＬに対して対称の配置となっている。
【００５９】
変形領域分割部２５０は、配置された分割点Ｄを結ぶ直線（すなわち水平分割線Ｌｈおよび垂直分割線Ｌｖ）によって変形領域ＴＡ１を複数の小領域に分割する。図１１の例では、変形領域ＴＡ１は、１５個の矩形の小領域に分割されている。
【００６０】
ステップＳ８３０（図９）では、分割領域変形部２６０（図１）は、前述のステップＳ７００（図２）において決定された分割点移動テーブルに従い分割点Ｄの位置を移動して小領域を変形することによって、変形領域を変形させる。
【００６１】
図１２は、顔の向きが正面向き（振りの程度＝０°）用の分割点移動テーブル（０°用テーブル）の詳細例を示す説明図である。分割点移動テーブル４２０（図１）を構成する各テーブルでは、ステップＳ８２０で配置された各分割点Ｄ１１〜Ｄ４２（図１１）について、基準線ＲＬと直行する方向（Ｈ方向）に沿った移動量及び基準線ＲＬと平行な方向（Ｖ方向）に沿った移動量が設定されている。なお、本実施例では、この移動量の単位は、対象画像の画素ピッチＰＰである。また、Ｈ方向については、向かって右側への移動量が正の値として表され、向かって左側への移動量が負の値として表され、Ｖ方向については、上方への移動量が正の値として表され、下方への移動量が負の値として表される。例えば、図１２の例では、０°用テーブルｔｂ０において分割点Ｄ１１については、Ｈ方向に沿って右側に画素ピッチＰＰの７倍の距離の移動量が設定され、Ｖ方向に沿って上方に画素ピッチＰＰの１４倍の距離の移動量が設定されている。また、分割点Ｄ２２については、Ｈ方向およびＶ方向共に移動量としてゼロが設定されている。
【００６２】
図１３は、図１２に示す０°用テーブルｔｂ０に従った分割点Ｄの位置の移動の一例を示す説明図である。図１３の例では、変形領域ＴＡ１について分割点Ｄの位置を移動させて変形する際の具体的な変形態様を示している。分割領域変形部２６０は、変形領域ＴＡ１を構成する各小領域について、分割点Ｄの位置移動前の状態における小領域の画像が分割点Ｄの位置移動により新たに定義された小領域の画像となるように、画像の変形処理を行う。例えば、図１３において、分割点Ｄ１１，Ｄ２１，Ｄ２２，Ｄ１２を頂点とする小領域（ハッチングを付して示す小領域）の画像は、分割点Ｄ’１１，Ｄ’２１，Ｄ２２，Ｄ’１２を頂点とする小領域の画像に変形される。なお、この小領域画像の変形処理の詳細については後述する。
【００６３】
図１３に示すように、ステップＳ８３０における分割点の移動の結果、基準線ＲＬと平行な方向（Ｖ方向）に関し、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ１１，Ｄ２１，Ｄ３１，Ｄ４１）の位置は上方に移動される一方、水平分割線Ｌｈ２上に配置された分割点Ｄ（Ｄ１２，Ｄ２２，Ｄ３２，Ｄ４２）の位置は移動されない（図１２参照）。従って、水平分割線Ｌｈ１と水平分割線Ｌｈ２との間に位置する画像は、Ｖ方向に関して縮小される。上述したように、水平分割線Ｌｈ１は顎の画像より下方に配置され、水平分割線Ｌｈ２は目の画像のすぐ下付近に配置されるため、本実施例の顔形状補正では、顔画像の内、顎から目の下にかけての部分の画像がＶ方向に縮小されることとなる。この結果、画像中の顎のラインは上方に移動する。
【００６４】
他方、基準線ＲＬと直行する方向（Ｈ方向）に関しては、垂直分割線Ｌｖ１上に配置された分割点Ｄ（Ｄ１１，Ｄ１２）の位置は右方向に移動され、垂直分割線Ｌｖ４上に配置された分割点Ｄ（Ｄ４１，Ｄ４２）の位置は左方向に移動される（図１２参照）。さらに、垂直分割線Ｌｖ２上に配置された２つの分割点Ｄの内、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ２１）の位置は右方向に移動され、垂直分割線Ｌｖ３上に配置された２つの分割点Ｄの内、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ３１）の位置は左方向に移動される（図１２参照）。従って、垂直分割線Ｌｖ１より左側に位置する画像は、Ｈ方向に関して右側に拡大され、垂直分割線Ｌｖ４より右側に位置する画像は、左側に拡大される。また、垂直分割線Ｌｖ１と垂直分割線Ｌｖ２との間に位置する画像は、Ｈ方向に関して縮小または右側に移動され、垂直分割線Ｌｖ３と垂直分割線Ｌｖ４との間に位置する画像は、Ｈ方向に関して縮小または左側に移動される。さらに、垂直分割線Ｌｖ２と垂直分割線Ｌｖ３との間に位置する画像は、水平分割線Ｌｈ１の位置を中心にＨ方向に関して縮小される。
【００６５】
上述したように、垂直分割線Ｌｖ１およびＬｖ４は、頬のラインの画像の外側に配置され、垂直分割線Ｌｖ２およびＬｖ３は、目尻の画像の外側に配置される。そのため、本実施例では、顔画像の内、両目尻より外側の部分の画像が全体的にＨ方向に縮小される。特に顎付近において縮小率が高くなる。この結果、画像中の顔の形状は、全体的に幅方向に細くなる。以上のＨ方向およびＶ方向の変形態様を総合すると、ステップＳ８３０の処理によって、変形領域ＴＡ１に含まれる人物Ｐ１の顔の形状はスリム（小顔）になる。
【００６６】
ここで、プリンタ１００では、変形領域ＴＡ１の内外の画像間の境界が不自然とならないように、変形領域ＴＡ１の外枠上に位置する分割点Ｄ（例えば図１３に示す分割点Ｄ１０等）の位置は移動されないものとしている。従って、分割点移動テーブル４２０を構成する各テーブルでは、変形領域の外枠上に位置する分割点Ｄについての移動量は設定されていない。例えば、０°用テーブルｔｂ０（図１２）では、変形領域ＴＡ１の外枠上に位置する分割点Ｄ（分割点Ｄ１０やＤ２０等）についての移動量は設定されていない。
【００６７】
また、０°用テーブルｔｂ０（図１２）では、基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄの組み合わせ（例えば分割点Ｄ１１とＤ４１との組み合わせ）のすべてが、分割点Ｄの移動後も、基準線ＲＬに対して対称な位置関係を維持するように各分割点Ｄの移動量が設定されている。しかしながら、分割点移動テーブル４２０（図１）のうち、この０°用テーブルｔｂ０以外のテーブルでは、基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄは、分割点Ｄの移動後において基準線ＲＬに対して対象な位置関係とならないように、各分割点Ｄの移動量が設定されている。
【００６８】
図１４は、第１の実施例における分割点移動テーブル４２０の詳細構成を示す説明図である。分割点移動テーブル４２０は、顔の向きと振りの程度に応じて用意された複数のテーブルから構成されている。図１４の例では、上述した０°用テーブルｔｂ０の他、＋５°用テーブルｔｒ５と、＋１０°用テーブルｔｒ１０と、＋３０°用テーブルｔｒ３０と、＋９０°用テーブルｔｒ９０と、−５°用テーブルｔｌ５と、−１０°用テーブルｔｌ１０と、−３０°用テーブルｔｌ３０と、−９０°用テーブルｔｌ９０とを例示している。また、０°用テーブルｔｂ０と＋３０°用テーブルｔｒ３０とについては、詳細な設定内容を示している。なお、０°用テーブルｔｂ０の詳細については、図１２と同じである。図１４の例では、顔の向きが左振り（マイナスの角度）及び右振り（プラスの角度）のケースにおいて５°おきに分割点移動テーブルが用意されている。なお、５°おきに限らず、任意の角度おきにテーブルを用意することもできる。
【００６９】
前述のステップＳ７００では、これらの各テーブルから前述の変形処理（ステップＳ８００）で用いるテーブルが設定される。なお、上下振りの場合には、本実施例では、０°用テーブルｔｂ０がステップＳ７００において決定される。
【００７０】
図１４に示すように、＋３０°用テーブルｔｒ３０に設定された各分割点Ｄの移動量のうち、分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量は、０°用テーブルｔｂ０と比べて小さくなっている。具体的には、分割点Ｄ１１，Ｄ２２については、０°用テーブルｔｂ０では、移動量（Ｈ，Ｖ）が（７，１４）であるのに対し、＋３０°用テーブルｔｒ３０では、（５，１１）となっている。また、分割点Ｄ１２については、０°用テーブルｔｂ０では、移動量（Ｈ，Ｖ）が（７，０）であるのに対し、＋３０°用テーブルｔｒ３０では、（５，０）となっている。一方、分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量については、＋３０°用テーブルｔｒ３０と０°用テーブルｔｂ０とで同じ値となっている。なお、分割点Ｄ２２，Ｄ３２については、２つのテーブルｔｂ０，ｔｒ３０とでいずれも移動量がゼロとなっている。ここで、分割点Ｄ１１，Ｄ２１，Ｄ１２は変形領域において向かって左側に位置する分割点であり、分割点Ｄ３１，Ｄ４１，Ｄ４２は変形領域において向かって右側に位置する分割点である（図１３参照）。したがって、＋３０°用テーブルｔｒ３０では、基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄの組合せ（Ｄ１１とＤ４１、Ｄ２１とＤ３１、Ｄ１２とＤ４２）において、それぞれ顔の向きと反対側（向かって左側）の分割点の移動量が顔の向きと同じ側（向かって右側）の分割点の移動量よりも小さくなっている。
【００７１】
図１５は、図１４に示す０°用テーブルｔｂ０と＋３０°用テーブルｔｂ３０とをそれぞれ適用した場合の各分割点Ｄの移動例を示す説明図である。図１５において上段は０°用テーブルｔｂ０の適用例を示し、下段は＋３０°用テーブルｔｒ３０の適用例を示す。なお、下段における太い実線の矩形枠は、人物Ｐ２の顔領域Ｆｄ２（図５）に基づき設定された変形領域ＴＡ２を示す。
【００７２】
人物Ｐ１についての変形領域ＴＡ１については、上述したように、左右対称に変形している（図１３参照）。一方、人物Ｐ２についての変形領域ＴＡ２については、向かって右側の領域については変形領域ＴＡ１とほぼ同じ程度に変形（小顔化）しているのに対して、左側の領域については変形領域ＴＡ１よりも変形（小顔化）度合いが小さい。これは、上述したように、変形領域ＴＡ２の変形において用いる＋３０°用テーブルｔｒ３０において向かって左側に位置する分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量が、０°用テーブルｔｂ０に比べて小さいことに起因している。
【００７３】
図１６は、＋３０°用テーブルｔｂ３０を用いた場合の変形領域ＴＡ２の具体的変形態様を示す説明図である。図１６では、比較の便宜のため、変形前の人物Ｐ２の輪郭を破線で示している。人物Ｐ１の変形領域ＴＡ１の変形と同様に（図１３）、人物Ｐ２の変形領域ＴＡ２においても人物Ｐ２の顔の形状はスリム（小顔）となっている。このとき、向かって右側に位置する頬から顎までの輪郭ＰＡ１は、比較的変形度合いが大きい。これに対して、向かって左側に位置する頬から顎までの輪郭ＰＡ２は、比較的変形度合いが小さい。このような変形によって、人物Ｐ２の顔の向きが右振りであっても、不自然な顔画像とならずに見栄え良く小顔化が実現されている。
【００７４】
図１７は、比較例として０°用テーブルｔｂ０を用いた場合の変形領域ＴＡ２の具体的態様を示す説明図である。図１７における破線の輪郭の意味は図１６と同じである。従来のように分割点移動テーブル４２０として、０°用テーブルｔｂ０のみが用意されており、この０°用テーブルｔｂ０を変形領域ＴＡ２に適用すると、図１７に示すように変形後の顔画像は不自然なものとなる。具体的には、左側の輪郭ＰＡ２の一部が不自然にへこんだように見える。これは、輪郭ＰＡ２のうち、変形領域ＴＡ２に含まれる輪郭ＰＡ２１は比較的大きく変形されるのに対して、変形領域ＴＡ２に含まれない輪郭ＰＡ２２は変形されないためである。
【００７５】
なお、仮に、変形領域ＴＡ２が輪郭ＰＡ２全てを含むように設定された場合であっても、変形後の顔画像は不自然なものとなる。これは、顔の方向が右振りであるために、変形処理（ステップＳ８００）において予定している顔の輪郭の部分とは異なる部分が変形対象となるために、所期の見栄えを得ることができなくなるからである。
【００７６】
このことからも理解できるように、顔の振りの程度が大きくなればなるほど、変形後の顔画像は不自然なものとなり得る。そこで、プリンタ１００では、顔の振りの程度が大きくなるほど、変形度合いが小さくなるように、上述した分割点移動テーブル４２０を構成する各テーブルにおいて分割点Ｄの移動量を設定している。
【００７７】
図１８は、分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。図１８において上段は向かって左側に位置する分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量を示し、下段は向かって右側に位置する分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量を示す。また、上下段のいずれにおいても、横軸は顔の振りの程度（角度）を示し、縦軸は移動量を示す。ここで、図１８における「移動量」は、説明の便宜のため、顔の向きが正面（０°）における移動量を基準（１．０）とした場合の相対的な移動量を示す。また、この移動量は、Ｈ方向の移動量とＶ方向の移動量とをあわせた移動量（ベクトルの大きさ）を示す。
【００７８】
向かって左側の分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量は、顔の向きが右振り（０°〜＋９０°）の場合において、振りの程度が大きくなるほど移動量が小さくなっている。また、顔の向きが左振り（−９０°〜０°）の場合においては、振りの程度に関わらず一定となっている。
【００７９】
これに対して、向かって右側の分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量は、顔の向きが右振りの場合において、振りの程度に関わらず一定となっている。また、顔の向きが左振りの場合において、振りの程度が大きくなるほど移動量が小さくなっている。
【００８０】
このように分割点Ｄの移動量を設定することで、変形領域のうち、顔の向きと反対側の領域については、振りの程度が大きくなるほど変形度合いが小さくなる。ここで、振りの程度が大きくなるほど、顔の向きと反対側の領域において変形を予定していない輪郭部分を変形する可能性が高くなる。したがって、このような構成とすることで、振りの程度の大小に関わらず変形後の顔画像が不自然となることを抑制することができる。また、＋３０°用テーブルｔｒ３０（図１４）と同様に、０°用テーブルｔｂ０を除く他のテーブルにおいては、それぞれ顔の向きと反対側の分割点の移動量が顔の向きと同じ側の分割点の移動量よりも小さくなるように設定されている。したがって、顔の向きと同じ側については、変形を予定している輪郭部分を変形する可能性が高いので、変形度合いを比較的大きくして所期の程度に小顔化を行うことができる。一方、顔の向きと反対側については、変形を予定していない輪郭部分を変形する可能性が高いので、変形度合いを比較的小さくして変形後の顔画像が不自然となることを抑制することができる。
【００８１】
以上説明したように、第１の実施例のプリンタ１００では、顔の振りの程度に応じて変形領域を変形させているので、変形後の顔画像が不自然な顔画像とならずに見栄え良く小顔化を実現することができる。また、プリンタ１００では、顔の向きと反対側の領域の変形度合いは顔の向きと同じ側の領域の変形度合いに比べて小さくなるように構成されている。したがって、変形後の顔画像が不自然となることを抑制しつつ、少なくとも顔の向きと同じ側の利輪郭部分について所期の程度に小顔化を行うことができる。
【００８２】
Ａ３．小領域画像の変形処理の詳細：
図１９は、上述したステップＳ８３０において実行される小領域画像の変形処理を概念的に示す説明図である。図１９では、分割点Ｄを黒丸で示している。また、説明を簡略化するために、４つの小領域について、左側に分割点Ｄの位置移動前の状態を、右側に分割点Ｄの位置移動後の状態を、それぞれ示している。図１９の例では、中央の分割点Ｄａが分割点Ｄａ’の位置に移動され、その他の分割点Ｄの位置は移動されない。これにより、例えば、分割点Ｄの移動前の分割点Ｄａ，Ｄｂ，Ｄｃ，Ｄｄを頂点とする矩形の小領域（以下「変形前注目小領域ＢＳＡ」とも呼ぶ）の画像は、分割点Ｄａ’，Ｄｂ，Ｄｃ，Ｄｄを頂点とする矩形の小領域（以下「変形後注目小領域ＡＳＡ」とも呼ぶ）の画像に変形される。
【００８３】
本実施例では、矩形の小領域を小領域の重心ＣＧを用いて４つの三角形領域に分割し、三角形領域単位で画像の変形処理を行っている。図１９の例では、変形前注目小領域ＢＳＡが、変形前注目小領域ＢＳＡの重心ＣＧを頂点の１つとする４つの三角形領域に分割される。同様に、変形後注目小領域ＡＳＡが、変形後注目小領域ＡＳＡの重心ＣＧ’を頂点の１つとする４つの三角形領域に分割される。そして、分割点Ｄａの移動前後のそれぞれの状態において対応する三角形領域毎に、画像の変形処理が行われる。例えば、変形前注目小領域ＢＳＡ中の分割点Ｄａ，Ｄｄおよび重心ＣＧを頂点とする三角形領域の画像が、変形後注目小領域ＡＳＡ中の分割点Ｄａ’，Ｄｄおよび重心ＣＧ’を頂点とする三角形領域の画像に変形される。
【００８４】
図２０は、三角形領域における画像の変形処理方法の概念を示す説明図である。図２０の例では、点ｓ，ｔ，ｕを頂点とする三角形領域ｓｔｕの画像が、点ｓ’，ｔ’，ｕ’を頂点とする三角形領域ｓ’ｔ’ｕ’の画像に変形される。画像の変形は、変形後の三角形領域ｓ’ｔ’ｕ’の画像中のある画素の位置が、変形前の三角形領域ｓｔｕの画像中のどの位置に相当するかを算出し、算出された位置における変形前の画像における画素値を変形後の画像の画素値とすることにより行う。
【００８５】
例えば、図２０において、変形後の三角形領域ｓ’ｔ’ｕ’の画像中の注目画素ｐ’の位置は、変形前の三角形領域ｓｔｕの画像中の位置ｐに相当するものとする。位置ｐの算出は、以下のように行う。まず、注目画素ｐ’の位置を、下記の式（１）のようにベクトルｓ’ｔ’とベクトルｓ’ｕ’との和で表現するための係数ｍ１およびｍ２を算出する。
【００８６】
【数１】
0005071162.tif 000002
【００８７】
次に、算出された係数ｍ１およびｍ２を用いて、下記の式（２）により、変形前の三角形領域ｓｔｕにおけるベクトルｓｔとベクトルｓｕとの和を算出することにより、位置ｐが求まる。
【００８８】
【数２】
0005071162.tif 000003
【００８９】
変形前の三角形領域ｓｔｕにおける位置ｐが、変形前の画像の画素中心位置に一致した場合には、当該画素の画素値が変形後の画像の画素値とされる。一方、変形前の三角形領域ｓｔｕにおける位置ｐが、変形前の画像の画素中心位置からはずれた位置となった場合には、位置ｐの周囲の画素の画素値を用いたバイキュービック等の補間演算により、位置ｐにおける画素値を算出し、算出された画素値が変形後の画像の画素値とされる。
【００９０】
変形後の三角形領域ｓ’ｔ’ｕ’の画像中の各画素について上述のように画素値を算出することにより、三角形領域ｓｔｕの画像から三角形領域ｓ’ｔ’ｕ’の画像への画像変形処理を行うことができる。このようにして、分割領域変形部２６０（図１）は、変形領域を構成する各小領域について、上述したように三角形領域を定義して変形処理を行う。
【００９１】
Ｂ．第２の実施例：
図２１は、第２の実施例における顔形状補正処理の手順を示すフローチャートである。第２の実施例のプリンタは、顔形状補正処理において、ステップＳ６００とステップＳ７００との間においてステップＳ６５０を追加して実行する点において、上述したプリンタ１００（図１）と異なり、他の構成は第１の実施例と同じである。
【００９２】
具体的には、ステップＳ６００において顔の方向と振りの程度とを推定した後、ステップＳ６５０では、顔向き推定部２３０（図１）は、振りの程度が−６０°以上かつ＋６０°以下の範囲内にあるか否かを判定する。そして、振りの程度がかかる範囲内にあるときは、前述のステップＳ７００，Ｓ８００（図９）が実行される。一方、振りの程度が−６０°よりも小さい、或いは、＋６０°よりも大きい場合、前述のＳ７００，Ｓ８００は実行されず顔形状補正処理は終了する。
【００９３】
以上の構成を有する第２の実施例のプリンタは、第１の実施例と同様な効果を奏する。また、このような構成により、顔の向きが左右のいずれかの方向に非常に大きく振っている場合には、小顔化を行わないようにすることができる。顔の向きが左右のいずれかの方向に非常に大きく振った場合、顔画像の左右のどちら側においても、変形を予定していない輪郭部分を変形してしまうおそれがある。ところが、第２の実施例のプリンタでは、この場合には小顔化を行わないので、顔形状補正処理によって不自然な顔画像に変形してしまうことを抑制することができる。なお、顔の振りの程度が大きい場合（ステップＳ６５０：ＮＯ）には、所定のメッセージを表示部１５０（図１）に表示させることもできる。また、変形処理の実行可否を判断するために用いる閾値としては、前述の「−６０°」及び「＋６０°」以外にも任意の角度を採用することができる。また、振りの程度が所定の範囲を超えて大きい場合に変形（小顔化）を行わない領域を、全ての領域ではなく、顔の向きと反対側の領域のみとすることもできる。一般には、本発明の画像処理装置において、少なくとも、変形を予定していない輪郭部分を変形する可能性の高い「顔の向きと反対側の領域」について変形（小顔化）を行わない構成とすることができる。
【００９４】
Ｃ．第３の実施例：
図２２は、第３の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。図２２において上段は、図１８の上段と同じ意味を有する。同様に、図２２の下段は、図１８の下段と同じ意味を有する。また、図２２の上下段における横軸は図１８の上下段における横軸と同じであり、図２２の上下段における縦軸は図１８の上下段における縦軸と同じである。
【００９５】
第３の実施例のプリンタは、各テーブルに設定されている分割点Ｄの移動量において上述したプリンタ１００（図１）と異なり、他の構成は第１の実施例と同じである。具体的には、向かって左側に位置する分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量については、顔の向きが左振りの場合には、第１の実施例では一定であったが（図１８参照）、第３の実施例では、顔振りの程度が大きくなる（角度がマイナス側に大きくなる）にしたがって移動量（相対的移動量）が小さくなっている。なお、顔の向きが右振りの場合のこれら分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量は、第１の実施例と同じである。
【００９６】
一方、向かって右側に位置する分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量については、顔の向きが右振りの場合には、第１の実施例では一定であったが、第３の実施例では、顔振りの程度が大きくなる（角度がプラス側に大きくなる）にしたがって移動量（相対的移動量）が小さくなっている。なお、顔の向きが左振りの場合のこれら分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量は、第１の実施例と同じである。
【００９７】
以上の構成を有する第３の実施例のプリンタは、第１の実施例のプリンタ１００と同様な効果を奏する。また、上述のように各テーブルを設定することで、例えば、顔の向きが右振りの場合において、変形領域の右側に変形を予定していない輪郭部分が入ってしまっても、かかる輪郭部分の変形度合いを比較的小さくすることができ、不自然な顔画像となってしまうことを抑制することができる。
【００９８】
Ｄ．第４の実施例：
図２３は、第４の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。図２３において上段は、図１８の上段と同じ意味を有する。同様に、図２３の下段は、図１８の下段と同じ意味を有する。また、図２３の上下段における横軸は図１８の上下段における横軸と同じであり、図２３の上下段における縦軸は図１８の上下段における縦軸と同じである。
【００９９】
第４の実施例のプリンタは、各テーブルに設定されている分割点Ｄの移動量において上述したプリンタ１００（図１）と異なり、他の構成は第１の実施例と同じである。具体的には、第１の実施例のプリンタ１００では、向かって左側に位置する分割点Ｄ１１，Ｄ２１，Ｄ１２については、顔の向きが右振りの場合には、振りの程度が大きくなる（角度がプラス側に大きくなる）にしたがって移動量が連続的に小さくなるように設定されていた（図１８参照）。これに対して、第４の実施例のプリンタでは、これら分割点Ｄ１１，Ｄ２１，Ｄ１２については、顔の向きが右振りの場合には、振りの程度が大きくなるにしたがって移動量が階段状に小さくなるように設定されている。
【０１００】
同様に、向かって右側に位置する分割点Ｄ３１，Ｄ４１，Ｄ４２については、顔の向きが左振りの場合において、振りの程度が大きくなる（角度がマイナス側に大きくなる）にしたがって移動量（相対的移動量）が階段状に小さくなるように設定されている。なお、顔の向きが左振りの場合における分割点Ｄ１１，Ｄ２１，Ｄ１２の移動量、及び顔の向きが右振りの場合における分割点Ｄ３１，Ｄ４１，Ｄ４２の移動量については、いずれも第１の実施例と同様に一定である。
【０１０１】
以上の構成を有する第４の実施例のプリンタについても、大局的に見ると、変形領域のうち、顔の向きと反対側の領域については、振りの程度が大きくなるほど変形度合いが小さくなる。例えば、左側の分割点Ｄ１１，Ｄ２１，Ｄ１２について考えると、＋３０°よりも小さい角度（例えば、０°）と、−３０°よりも大きい角度（例えば、＋９０°）とで、移動量を比較すると、０°については移動量が「１．０」であるのに対し、＋９０°については移動量がゼロとなっている。このような構成を有する第４の実施例のプリンタも、第１の実施例のプリンタ１００と同様な効果を奏する。なお、以上の第４の実施例及び上述した第１ないし第３の実施例からも理解できるように、振りの程度が或る値（上記の例では＋３０°）よりも大きい場合には、振りの程度がこの或る値よりも小さい場合に比べて移動量が小さく設定され変形度合いが小さくなるような任意の構成を、本発明の画像処理装置に採用することができる。
【０１０２】
Ｅ．第５の実施例：
図２４は、第５の実施例における分割点移動テーブル４２０の詳細構成を示す説明図である。第５の実施例のプリンタは、分割点移動テーブル４２０として、上述した左右振りに対応する各テーブルｔｒ５〜ｔｒ９０，ｔｌ５〜ｔｌ９０（図１４）に加えて、上下振りに対応するテーブルを備えている点において、上述したプリンタ１００（図１）と異なり、他の構成は第１の実施例と同じである。
【０１０３】
具体的には、第５の実施例における分割点移動テーブル４２０は、テーブルｔｒ５〜ｔｒ９０，ｔｌ５〜ｔｌ９０に加えて、顔の向きが上振り（プラスの角度）の場合に用いられるテーブルと、下振り（マイナスの角度）の場合に用いられるテーブルとを備えている。図２４の例では、上振りの場合に用いられるテーブルとして、＋５°用テーブルｔｕ５と、＋１０°用テーブルｔｕ１０と、＋３０°用テーブルｔｕ３０と、＋９０°用テーブルｔｕ９０とを例示している。また、下振りの場合に用いられるテーブルとして、−５°用テーブルｔｄ５と、−１０°用テーブルｔｄ１０と、−３０°用テーブルｔｄ３０と、−９０°用テーブルｔｄ９０とを例示している。
【０１０４】
そして、第５の実施例では、第１の実施例と同様に、振りの程度が大きいほど各分割点Ｄの移動量は小さくなるように設定されている。しかしながら、第５の実施例では、第１の実施例とは異なり、振りの度合いに関わらず基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄの組合せ（Ｄ１１とＤ４１、Ｄ２１とＤ３１、Ｄ１２とＤ４２）において、それぞれ顔の向きと反対側と同じ側とで同じ移動量が設定されている。例えば、＋３０°用テーブルｔｕ３０では、分割点Ｄ１１の移動量（５，１１）と、基準線ＲＬに対して対称の位置関係にある分割点Ｄ４１の移動量（−５，１１）とで、移動量（ベクトルの大きさ）は同じである。
【０１０５】
図２５は、第５の実施例において＋３０°用テーブルｔｕ３０と０°用テーブルｔｂ０とをそれぞれ適用した場合の各分割点Ｄの移動例を示す説明図である。図２５において上段は＋３０°用テーブルｔｕ３０の適用例を示し、下段は０°用テーブルｔｂ０の適用例を示す。なお、上下段における太い実線の矩形枠は、＋３０°だけ上を向いた人物の顔領域（図示省略）に基づき設定された変形領域ＴＡ３を示す。
【０１０６】
図２５に示すように、いずれのテーブルｔｂ０，ｔｕ３０を適用した場合でも、左右対称に変形している。このとき、各移動点の移動量は、＋３０°用テーブルｔｕ３０を適用した場合（上段）のほうが０°用テーブルｔｂ０を適用した場合（下段）に比べてより小さい。したがって、＋３０°用テーブルｔｕ３０を適用した場合のほうが、変形度合いがより小さくなる。
【０１０７】
図２６は、＋３０°用テーブルｔｂ３０を用いた場合の変形領域ＴＡ３と、０°用テーブルｔｂ０を用いた場合の変形領域ＴＡ３との具体的変形態様を示す説明図である。図２６では、図１６と同様に、比較の便宜のため、変形前の人物の輪郭を破線で示している。顔の向きが上振りで振りの程度が＋３０°の場合において、＋３０°用テーブルｔｕを適用した場合には（上段）、頬と顎の部分がスリムに変形され、見栄えの良い自然な顔画像となっている。
【０１０８】
一方、従来のように分割点移動テーブル４２０として、０°用テーブルｔｂ０のみが用意されており、この０°用テーブルｔｂ０を顔の向きが上振りで振りの程度が＋３０°の場合に適用すると（下段）、変形後の顔画像は不自然なものとなる。具体的には、右側の輪郭ＰＡ３の一部と、左側の輪郭ＰＡ４の一部とが不自然にへこんだように見える。これは、輪郭ＰＡ３のうち、変形領域ＴＡ３に含まれる輪郭ＰＡ３２は比較的大きく変形されるのに対して、変形領域ＴＡ３に含まれない輪郭ＰＡ３１は変形されないためである。同様に、左側の輪郭ＰＡ４のうち、変形領域ＴＡ３に含まれる輪郭ＰＡ４２は比較的大きく変形されるのに対して、変形領域ＴＡ３に含まれない輪郭ＰＡ４１は変形されないためである。
【０１０９】
なお、仮に、変形領域ＴＡ３が輪郭ＰＡ３，ＰＡ４を全てを含むように設定された場合であっても、変形後の顔画像は不自然なものとなる。これは、顔の向きが上振りであるために、変形処理（ステップＳ８００）において予定している顔の輪郭の部分とは異なる部分（例えば首等）が、変形対象となるために、所期の見栄えを得ることができなくなるからである。
【０１１０】
図２７は、第５の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。図２７において横軸は図１８の上下段における横軸と同じであり、縦軸は図１８の上下段における縦軸と同じである。
【０１１１】
上述した各実施例では、各分割点移動テーブルに設定されている移動量は、向かって左側の分割点Ｄと向かって右側の分割点Ｄとで異なるものであったが（図１８等参照）、第５の実施例では、いずれの分割点Ｄにおいても図２３に示すグラフとなっている。また、上述した各実施例では、顔の向きと同じ側の分割点Ｄの移動量は、反対側の分割点Ｄの移動量に比べて大きくなっていたが、第４の実施例では、顔の向きと同じ側と反対側とで同じ移動量が設定されている。したがって、例えば、顔の向きが上振りで振りの程度が＋３０°の場合と、顔の方向が下振りで振りの程度が−３０°の場合とで、各分割点Ｄに設定される移動量は同じとなっている。
【０１１２】
このような構成を有する第５の実施例のプリンタも、振りの程度が上下のいずれかの方向に大きくなるほど変形度合いを小さくすることができる。ここで、振りの程度が上下のいずれかの方向に大きくなるほど、変形を予定していない輪郭部分を変形する可能性が高くなる。したがって、このような構成とすることで、顔の向きが上下振りであっても、振りの程度の大小に関わらず変形後の顔画像が不自然となることを抑制することができる。
【０１１３】
Ｆ．変形例：
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１１４】
Ｆ１．変形例１：
上述した第１ないし第４の実施例では、ステップＳ６００において顔の向きとして、左右振りのいずれかであるかまで推定していたが、これに代えて、左右振りであるとまで推定し、左右のいずれの方向であるかまで推定しないようにすることもできる。この場合、第１の実施例とは異なり、各分割点移動テーブルとして、振りの程度のみに応じたテーブルを用意しておく。このような各分割点移動テーブルとしては、例えば、第５の実施例におけるテーブルを用いることができる（図２７参照）。このようにすることで、第５の実施例と同様に、振りの程度の大小に関わらず変形後の顔画像が不自然となることを抑制することができる。
【０１１５】
Ｆ２．変形例２：
上述した各実施例における顔の向きの推定方法（図２および図２１のステップＳ６００）の方法は、あくまで一例であり、他の任意の方法により顔の向きを推定することができる。例えば、単純に右目領域Ｅｒの幅Ｗｅｒと左目領域Ｅｌの幅Ｗｅｌを比較して、右目領域Ｅｒの幅Ｗｅｒの方が所定割合以上で大きい場合には右振りであると、左目領域Ｅｌの幅Ｗｅｌの方が所定割合以上で大きい場合には左振りであると、それ以外の場合には正面向きであると、推定することもできる。なお、幅Ｗｅｒと幅Ｗｅｌとの比によって振りの程度を推定することもできる。
【０１１６】
あるいは、単純に口領域Ｍａの幅Ｗｍと目領域Ｅｒ（又はＥｌ）の幅Ｗｅｒ（又はＷｅｌ）とを比較して、口領域Ｍａの幅Ｗｍの方が所定割合以上で大きい場合には上振りであると、目領域Ｅｒ（又はＥｌ）の幅Ｗｅｒ（又はＷｅｌ）の方が所定割合以上で大きい場合には下振りであると、それ以外の場合には正面向きであると、推定することもできる。なお、幅Ｗｍと幅Ｗｅｒ（又はＷｅｌ）との比によって振りの程度を推定することもできる。
【０１１７】
また、顔領域と器官領域との関係に基づいて顔向き推定を行うこともできる。例えば、顔領域における目領域Ｅｒ，Ｅｌの位置に基づき、右振りまたは左振りであると推定することもできる。また、顔領域における口領域Ｍａの位置に基づき、上振りまたは下振りであると推定することもできる。
【０１１８】
また、上述したような顔領域や器官領域に基づき顔の方向と振りの程度を推定する方法に代えて、他の任意の方法によって顔の方向と振りの程度を推定する方法を本発明の画像処理装置に採用することもできる。例えば、画像データとは別に、顔の向きと振りの程度とを示すデータがメモリカードＭＣに記録されている場合には、かかるデータに基づいて顔の向きと振りの程度と推定することもできる。
【０１１９】
Ｆ３．変形例３：
上述した各実施例及び変形例における顔向き推定では、推定される顔の向きの種類として、正面向き、左右振り、上下振りの３種類、あるいは、正面向き、右振り、左振り、上振り、下振りの５種類が採用されているが、顔の向きの種類として、正面向きか正面以外向きかの２種類が採用されるとしてもよい。また、顔の向きの種類として、右上振り、右下振り、左上振り、左下振りなどを採用することもできる。
【０１２０】
Ｆ４．変形例４：
上述した各実施例では、顔形状補正処理によって変形領域を小顔化（スリムに）していたが、小顔化に代えて、他の任意の変形を行う構成とすることもできる。例えば、若干ふくよかな顔に修正する大顔化を行うこともできる。この構成においても、変形（大顔化）の後の顔画像が不自然なものでなく見栄え良く大顔化をすることもできる。また、上述した各実施例では、振りの程度が或る値よりも大きい場合には、振りの程度がこの或る値よりも小さい場合に比べて変形度合いが小さくなるようにしていたが、本発明では、これとは逆の構成とすることもできる。例えば、顔のデフォルメ（不自然な変形）を目的とする画像処理を行うような場合には、振りの程度が或る値よりも大きい場合には振りの程度がこの或る値よりも小さい場合に比べて変形度合いを大きくし、顔画像を意図的に不自然に変形させることもできる。
【０１２１】
Ｆ５．変形例５：
上述した各実施例では、顔領域を対象として器官検出が行われているが、必ずしも器官検出を行う範囲を顔領域に限定する必要はなく、例えば、対象画像全体を対象として器官検出を行う構成とすることもできる。ただし、顔領域を対象として器官検出を行えば、処理の高速化を図ることができる。また、上述した各実施例では、顔領域の検出が行われているが、必ずしも顔領域の検出を行う必要はない。顔領域の検出を行わない場合であっても、対象画像の所定の範囲（例えば全体）を対象として器官領域の検出を行い、検出された器官領域に基づき、顔の向きの推定を実行することができる。
【０１２２】
Ｆ６．変形例６：
上述した各実施例では、変形領域は、顔領域よりも大きい領域であったが、顔領域と同じ領域或いは顔領域よりも小さい領域とすることもできる。なお、変形領域が顔領域と同じ領域の場合には、ステップＳ８１０（図９）を省略することができる。また、上述した各実施例では、顔領域と変形領域とは、いずれも矩形の領域であったが、これに代えて、顔領域と変形領域とのうち少なくとも一方を、円形や三角形など任意の形状の領域として設定することもできる。
【０１２３】
Ｆ７．変形例７：
上述した各実施例では、顔形状補正処理のステップＳ２００において検出した全ての顔領域について、ステップＳ３００〜Ｓ８００を行って変形（小顔化）するようにしていたが、これに代えて、ユーザの指定した顔領域についてのみ変形する構成とすることもできる。この場合、顔領域の検出に成功した（ステップＳ３００：ＹＥＳ）後に、顔領域を明示する画像（例えば、図４の画像ＴＩ）と、ユーザが変形対象とする顔領域を選択して決定できるようなボタンを備えたユーザインタフェースを、表示部１５０（図１）に表示させることもできる。
【０１２４】
Ｆ８．変形例８：
上述した各実施例では、対象画像について、顔形状補正処理を実行するまでであったが、さらに、顔形状補正処理の結果得られた画像についてプリンタエンジン１６０を用いて印刷を実行したり、内部メモリ１２０に格納したりすることもできる。
【０１２５】
Ｆ９．変形例９：
上述した各実施例では、画像処理装置としてのプリンタ１００による顔形状補正処理について説明したが、この顔形状補正処理の一部又は全部がパーソナルコンピュータやデジタルスチルカメラなどにおいて実行されるものとしてもよい。また、プリンタ１００はインクジェットプリンタに限らず、他の方式のプリンタ、例えばレーザプリンタや昇華型プリンタであるとしてもよい。
【０１２６】
Ｆ１０．変形例１０：
上述した実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【０１２７】
【図１】本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。
【図２】顔形状補正処理の手順を示すフローチャートである。
【図３】表示部１５０に表示される対象画像設定用ユーザインタフェースの一例を示す説明図である。
【図４】ステップＳ２００における顔領域の検出結果の一例を示す説明図である。
【図５】ステップＳ４００における器官領域の検出結果の一例を示す説明図である。
【図６】ステップＳ６００における顔の振りの方向と程度とを推定する方法を概念的に示す説明図である。
【図７】図５に示す対象画像ＴＩが得られた際の人物Ｐ１と撮像装置との位置関係を示す説明図及び対象画像ＴＩが得られた際の人物Ｐ２と撮像装置との位置関係を示す説明図である。
【図８】顔向き推定において正面向きと推定された結果の一例を示す説明図及び顔向き推定において右振りと推定された結果の一例を示す説明図である。
【図９】ステップＳ８００の変形処理の詳細手順を示すフローチャートである。
【図１０】変形領域の設定方法の一例を示す説明図である。
【図１１】変形領域の小領域への分割方法の一例を示す説明図である。
【図１２】顔の向きが正面向き（顔振りの程度＝０°）用の分割点移動テーブル（０°用テーブル）の詳細例を示す説明図である。
【図１３】図１２に示す０°用テーブルｔｂ０に従った分割点Ｄの位置の移動の一例を示す説明図である。
【図１４】第１の実施例における分割点移動テーブル４２０の詳細構成を示す説明図である。
【図１５】図１４に示す０°用テーブルｔｂ０と＋３０°用テーブルｔｂ３０とをそれぞれ適用した場合の各分割点Ｄの移動例を示す説明図である。
【図１６】＋３０°用テーブルｔｂ３０を用いた場合の変形領域ＴＡ２の具体的変形態様を示す説明図である。
【図１７】比較例として０°用テーブルｔｂ０を用いた場合の変形領域ＴＡ２の具体的態様を示す説明図である。
【図１８】分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。
【図１９】上述したステップＳ８３０において実行される小領域画像の変形処理を概念的に示す説明図である。
【図２０】三角形領域における画像の変形処理方法の概念を示す説明図である。
【図２１】第２の実施例における顔形状補正処理の手順を示すフローチャート。
【図２２】第３の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。
【図２３】第４の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。
【図２４】第５の実施例における分割点移動テーブル４２０の詳細構成を示す説明図である。
【図２５】第５の実施例において＋３０°用テーブルｔｕ３０と０°用テーブルｔｂ０とをそれぞれ適用した場合の各分割点Ｄの移動例を示す説明図である。
【図２６】＋３０°用テーブルｔｂ３０を用いた場合の変形領域ＴＡ３と０°用テーブルｔｂ０を用いた場合の変形領域ＴＡ３との具体的変形態様を示す説明図である。
【図２７】第５の実施例において分割点移動テーブル４２０を構成する各テーブルに設定されている分割点Ｄの移動量を模式的に示す説明図である。
【符号の説明】
【０１２８】
１００…プリンタ
１１０…ＣＰＵ
１２０…内部メモリ
１４０…操作部
１５０…表示部
１６０…プリンタエンジン
１７０…カードインターフェース
１７２…カードスロット
ＭＣ…メモリカード
２００…顔形状補正処理部
２１０…顔領域検出部
２２０…器官領域検出部
２２２…信頼度設定部
２３０…顔向き推定部
２４０…変形領域設定部
２５０…変形領域分割部
２６０…分割領域変形部
２７０…分割点移動テーブル決定部
３１０…表示処理部
３２０…印刷処理部
４１０…分割点配置パターンテーブル
４２０…分割点移動テーブル
８００…デジタルスチルカメラ
５００…対象画像設定用ユーザインタフェース
Ｄ…分割点
ＰＡ１〜ＰＡ４２…輪郭
Ｂ１，Ｂ２…画像切替用ボタン
Ｂ１０…決定用ボタン
Ｂ１１…キャンセル用ボタン
Ｐ１，Ｐ２…人物
ＩＡ…画像表示欄
ＴＡ…変形領域
ＴＩ…対象画像
ＤＩ…判定指標
ＲＬ…基準線
Ｍａ…口領域
Ｅｒ…右目領域
Ｅｌ…左目領域
Ｃｅ…中心点
Ｌｈ…水平分割線
Ｃｍ…中心点
Ｗｒ…参照幅
Ｅｒ…目領域
Ｌｖ…垂直分割線
ＴＡ１，ＴＡ２，ＴＡ３…変形領域
１０…制御回路
【図１】
0005071162.tif 000004
【図２】
0005071162.tif 000005
【図３】
0005071162.tif 000006
【図４】
0005071162.tif 000007
【図５】
0005071162.tif 000008
【図６】
0005071162.tif 000009
【図７】
0005071162.tif 000010
【図８】
0005071162.tif 000011
【図９】
0005071162.tif 000012
【図１０】
0005071162.tif 000013
【図１１】
0005071162.tif 000014
【図１２】
0005071162.tif 000015
【図１３】
0005071162.tif 000016
【図１４】
0005071162.tif 000017
【図１５】
0005071162.tif 000018
【図１６】
0005071162.tif 000019
【図１７】
0005071162.tif 000020
【図１８】
0005071162.tif 000021
【図１９】
0005071162.tif 000022
【図２０】
0005071162.tif 000023
【図２１】
0005071162.tif 000024
【図２２】
0005071162.tif 000025
【図２３】
0005071162.tif 000026
【図２４】
0005071162.tif 000027
【図２５】
0005071162.tif 000028
【図２６】
0005071162.tif 000029
【図２７】
0005071162.tif 000030