(57)【要約】【課題】画像変形のための画像処理の効率化を図ることを可能とする。【解決手段】画像の変形を行う画像処理装置は、対象画像上の少なくとも一部の領域を変形領域として設定する変形領域設定部と、変形領域を複数の小領域に分割する変形領域分割部と、小領域を変形することにより変形領域内の画像の変形を行う変形処理部と、を備える。変形処理部は、複数の小領域の内のＮ角形形状の小領域を対象に、変形前の小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形が、変形後の小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形に変形されるように、画像の変形を行う。【選択図】図２２
2008242806.tif 000002
【特許請求の範囲】
【請求項１】
画像の変形を行う画像処理装置であって、
対象画像上の少なくとも一部の領域を変形領域として設定する変形領域設定部と、
前記変形領域を複数の小領域に分割する変形領域分割部と、
前記小領域を変形することにより前記変形領域内の画像の変形を行う変形処理部と、を備え、
前記変形処理部は、前記複数の小領域の内のＮ角形形状の小領域を対象に、変形前の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形が、変形後の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形に変形されるように、画像の変形を行う、画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記変形領域設定部は、前記変形領域に顔の少なくとも一部の画像が含まれるように前記変形領域を設定する、画像処理装置。
【請求項３】
請求項２記載の画像処理装置であって、さらに、
前記対象画像上の顔の画像を表す顔領域を検出する顔領域検出部を備え、
前記変形領域設定部は、検出された前記顔領域に基づき前記変形領域を設定する、画像処理装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、さらに、
前記変形領域内の画像の変形が行われた前記対象画像を印刷する印刷部を備える、画像処理装置。
【請求項５】
画像の変形を行う画像処理方法であって、
（ａ）対象画像上の少なくとも一部の領域を変形領域として設定する工程と、
（ｂ）前記変形領域を複数の小領域に分割する工程と、
（ｃ）前記小領域を変形することにより前記変形領域内の画像の変形を行う工程と、を備え、
前記工程（ｃ）は、前記複数の小領域の内のＮ角形形状の小領域を対象に、変形前の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形が、変形後の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形に変形されるように、画像の変形を行う工程である、画像処理方法。
【請求項６】
画像の変形を行う画像処理のためのコンピュータプログラムであって、
対象画像上の少なくとも一部の領域を変形領域として設定する変形領域設定機能と、
前記変形領域を複数の小領域に分割する変形領域分割機能と、
前記小領域を変形することにより前記変形領域内の画像の変形を行う変形処理機能と、を、コンピュータに実現させ、
前記変形処理機能は、前記複数の小領域の内のＮ角形形状の小領域を対象に、変形前の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形が、変形後の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形に変形されるように、画像の変形を行う機能である、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を変形するための画像処理技術に関する。
【背景技術】
【０００２】
デジタル画像を対象に、画像を変形するための画像処理技術が知られている（例えば特許文献１）。特許文献１には、顔の画像上の一部の領域（頬の画像を表す領域）を補正領域として設定し、補正領域を所定のパターンに従い複数の小領域に分割し、小領域毎に設定された倍率で画像を拡大または縮小することにより、顔の形状を変形する画像処理が開示されている。
【０００３】
【特許文献１】特開２００４−３１８２０４
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来の画像変形のための画像処理では、複数の小領域のそれぞれについて、それぞれの小領域毎に設定された倍率で画像の拡大または縮小が行われるため、処理が煩雑であった。特に、処理に伴い、小領域への分割方法に関する情報等の多くの情報を必要とし、処理の効率化を図ることが困難となっていた。
【０００５】
本発明は、上述した従来の課題を解決するためになされたものであり、画像変形のための画像処理の効率化を図ることを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題の少なくとも一部を解決するために、本発明の画像処理装置は、
画像の変形を行う画像処理装置であって、
対象画像上の少なくとも一部の領域を変形領域として設定する変形領域設定部と、
前記変形領域を複数の小領域に分割する変形領域分割部と、
前記小領域を変形することにより前記変形領域内の画像の変形を行う変形処理部と、を備え、
前記変形処理部は、前記複数の小領域の内のＮ角形形状の小領域を対象に、変形前の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形が、変形後の前記小領域の各頂点と重心とを結ぶ線分により定義されるＮ個の三角形に変形されるように、画像の変形を行う。
【０００７】
この画像処理装置では、変形領域が複数の小領域に分割され、小領域が変形されることにより変形領域内の画像の変形が行われる。このとき、変形前のＮ角形形状の小領域において、小領域の各頂点と重心とを結ぶ線分によりＮ個の三角形が定義される。同様に、変形後のＮ角形形状の小領域においても、小領域の各頂点と重心とを結ぶ線分によりＮ個の三角形が定義される。そして、三角形の領域単位で画像の変形が行われる。ここで、小領域の重心位置は、４つの頂点の座標から算出できる。そのため、変形処理において指定する座標の数を少なくすることができる。従って、この画像処理装置では、画像変形のための画像処理の効率化を図ることができる。
【０００８】
上記画像処理装置において、前記変形領域設定部は、前記変形領域に顔の少なくとも一部の画像が含まれるように前記変形領域を設定するとしてもよい。
【０００９】
このようにすれば、顔の画像を対象とした画像変形のための画像処理の効率化を図ることができる。
【００１０】
また、上記画像処理装置において、さらに、
前記対象画像上の顔の画像を表す顔領域を検出する顔領域検出部を備え、
前記変形領域設定部は、検出された前記顔領域に基づき前記変形領域を設定するとしてもよい。
【００１１】
このようにすれば、対象画像から検出された顔領域に基づき設定された変形領域の画像変形について、画像処理の効率化を図ることができる。
【００１２】
また、上記画像処理装置において、さらに、
前記変形領域内の画像の変形が行われた前記対象画像を印刷する印刷部を備えるとしてもよい。
【００１３】
このようにすれば、画像を変形して印刷する場合において、画像変形のための画像処理の効率化を図ることができる。
【００１４】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理方法および装置、画像変形方法および装置、画像補正方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．第１実施例：
Ａ−１．画像処理装置の構成：
Ａ−２．顔形状補正印刷処理：
Ａ−３．第１実施例の変形例：
Ｂ．その他の変形例：
【００１６】
Ａ．第１実施例：
Ａ−１．画像処理装置の構成：
図１は、本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。本実施例のプリンタ１００は、メモリカードＭＣ等から取得した画像データに基づき画像を印刷する、いわゆるダイレクトプリントに対応したカラーインクジェットプリンタである。プリンタ１００は、プリンタ１００の各部を制御するＣＰＵ１１０と、例えばＲＯＭやＲＡＭによって構成された内部メモリ１２０と、ボタンやタッチパネルにより構成された操作部１４０と、液晶ディスプレイにより構成された表示部１５０と、プリンタエンジン１６０と、カードインターフェース（カードＩ／Ｆ）１７０と、を備えている。プリンタ１００は、さらに、他の機器（例えばデジタルスチルカメラ）とのデータ通信を行うためのインターフェースを備えているとしてもよい。プリンタ１００の各構成要素は、バスを介して互いに接続されている。
【００１７】
プリンタエンジン１６０は、印刷データに基づき印刷を行う印刷機構である。カードインターフェース１７０は、カードスロット１７２に挿入されたメモリカードＭＣとの間でデータのやり取りを行うためのインターフェースである。なお、本実施例では、メモリカードＭＣにＲＧＢデータとしての画像データが格納されており、プリンタ１００は、カードインターフェース１７０を介してメモリカードＭＣに格納された画像データの取得を行う。
【００１８】
内部メモリ１２０には、顔形状補正部２００と、表示処理部３１０と、印刷処理部３２０とが格納されている。顔形状補正部２００は、所定のオペレーティングシステムの下で、後述する顔形状補正処理を実行するためのコンピュータプログラムである。表示処理部３１０は、表示部１５０を制御して、表示部１５０上に処理メニューやメッセージを表示させるディスプレイドライバである。印刷処理部３２０は、画像データから印刷データを生成し、プリンタエンジン１６０を制御して、印刷データに基づく画像の印刷を実行するためのコンピュータプログラムである。ＣＰＵ１１０は、内部メモリ１２０から、これらのプログラムを読み出して実行することにより、これら各部の機能を実現する。
【００１９】
顔形状補正部２００は、プログラムモジュールとして、変形態様設定部２１０と、顔領域検出部２２０と、顔領域調整部２３０と、変形領域設定部２４０と、変形領域分割部２５０と、変形処理部２６０と、を含んでいる。変形態様設定部２１０は、指定取得部２１２を含んでおり、顔領域調整部２３０は、特定領域設定部２３２と、評価部２３４と、決定部２３６と、を含んでいる。これらの各部の機能については、後述の顔形状補正印刷処理の説明において詳述する。
【００２０】
内部メモリ１２０には、また、分割点配置パターンテーブル４１０と分割点移動テーブル４２０とが格納されている。分割点配置パターンテーブル４１０および分割点移動テーブル４２０の内容についても、後述の顔形状補正印刷処理の説明において詳述する。
【００２１】
Ａ−２．顔形状補正印刷処理：
プリンタ１００は、メモリカードＭＣに格納された画像データに基づき、画像の印刷を行う。カードスロット１７２にメモリカードＭＣが挿入されると、表示処理部３１０により、メモリカードＭＣに格納された画像の一覧表示を含むユーザインターフェースが表示部１５０に表示される。図２は、画像の一覧表示を含むユーザインターフェースの一例を示す説明図である。なお、本実施例では、画像の一覧表示は、メモリカードＭＣに格納された画像データ（画像ファイル）に含まれるサムネイル画像を用いて実現される。
【００２２】
本実施例のプリンタ１００は、図２に示すユーザインターフェースにおいて、ユーザにより、１つ（または複数）の画像が選択されると共に通常印刷ボタンが選択されると、選択された画像を通常通り印刷する通常印刷処理を実行する。他方、当該ユーザインターフェースにおいて、ユーザにより、１つ（または複数）の画像が選択されると共に顔形状補正印刷ボタンが選択されると、プリンタ１００は、選択された画像について、画像中の顔の形状を補正して補正後の画像を印刷する顔形状補正印刷処理を実行する。
【００２３】
図３は、本実施例のプリンタ１００による顔形状補正印刷処理の流れを示すフローチャートである。ステップＳ１００では、顔形状補正部２００（図１）が、顔形状補正処理を実行する。本実施例の顔形状補正処理は、画像中の顔の少なくとも一部の形状（例えば顔の輪郭形状や目の形状）を補正する処理である。
【００２４】
図４は、本実施例における顔形状補正処理の流れを示すフローチャートである。ステップＳ１１０では、顔形状補正部２００（図１）が、顔形状補正処理の対象となる対象画像ＴＩを設定する。顔形状補正部２００は、図２に示したユーザインターフェースにおいてユーザにより選択された画像を対象画像ＴＩとして設定する。設定された対象画像ＴＩの画像データは、メモリカードＭＣからカードインターフェース１７０を介してプリンタ１００に取得され、内部メモリ１２０の所定領域に格納される。
【００２５】
ステップＳ１２０（図４）では、変形態様設定部２１０（図１）が、顔形状補正のための画像変形のタイプと画像変形の度合いとを設定する。変形態様設定部２１０は、画像変形のタイプおよび度合いを設定するためのユーザインターフェースを表示部１５０に表示するように表示処理部３１０に指示し、当該ユーザインターフェースを通じてユーザにより指定された画像変形のタイプおよび度合いを選択し、処理に使用する画像変形タイプおよび度合いとして設定する。
【００２６】
図５は、画像変形のタイプおよび度合いを設定するためのユーザインターフェースの一例を示す説明図である。図５に示すように、このユーザインターフェースには、画像変形タイプを設定するためのインターフェースが含まれている。本実施例では、例えば、顔の形状をシャープにする変形タイプ「タイプＡ」や、目の形状を大きくする変形タイプ「タイプＢ」等が選択肢として予め設定されているものとする。ユーザは、このインターフェースを介して画像変形のタイプを指定する。変形態様設定部２１０は、ユーザにより指定された画像変形タイプを、実際の処理に使用する画像変形タイプとして設定する。
【００２７】
また、図５に示すユーザインターフェースには、画像変形の度合い（程度）を設定するためのインターフェースが含まれている。図５に示すように、本実施例では、画像変形の度合いとして、強（Ｓ）、中（Ｍ）、弱（Ｗ）の３段階が選択肢として予め設定されているものとする。ユーザは、このインターフェースを介して画像変形の度合いを指定する。変形態様設定部２１０は、ユーザにより指定された画像変形の度合いを、実際の処理に使用する画像変形の度合いとして設定する。
【００２８】
なお、本実施例では、後述するように、ユーザによる変形態様の詳細指定が可能となっている。図５に示すユーザインターフェースにおいて、ユーザにより、詳細指定を希望する旨のチェックボックスにチェックが入れられた場合には、後述するように、ユーザによる変形態様の詳細指定がなされる。
【００２９】
以降では、画像変形のタイプとして顔の形状をシャープにするための変形タイプ「タイプＡ」が設定され、画像変形の度合いとして程度「中」の度合いが設定され、ユーザによる詳細指定の希望はなかったものとして説明を行う。
【００３０】
ステップＳ１３０（図４）では、顔領域検出部２２０（図１）が、対象画像ＴＩにおける顔領域ＦＡの検出を行う。ここで、顔領域ＦＡとは、対象画像ＴＩ上の画像領域であって、少なくとも顔の一部の画像が含まれる領域を意味している。顔領域検出部２２０による顔領域ＦＡの検出は、例えばテンプレートを利用したパターンマッチングによる方法（特開２００４−３１８２０４参照）といった公知の顔検出方法を用いて実行される。
【００３１】
図６は、顔領域ＦＡの検出結果の一例を示す説明図である。図６に示すように、本実施例で用いた顔検出方法によると、対象画像ＴＩ上の目と鼻と口の画像を含む矩形の領域が顔領域ＦＡとして検出される。なお、図６に示した基準線ＲＬは、顔領域ＦＡの高さ方向（上下方向）を定義すると共に、顔領域ＦＡの幅方向（左右方向）の中心を示す線である。すなわち、基準線ＲＬは、矩形の顔領域ＦＡの重心を通り、顔領域ＦＡの高さ方向（上下方向）に沿った境界線に平行な直線である。
【００３２】
なお、ステップＳ１３０の顔領域ＦＡの検出において、顔領域ＦＡが検出されなかった場合には、その旨が表示部１５０を通じてユーザに通知される。この場合には、顔形状補正を伴わない通常印刷が行われるとしてもよいし、他の顔検出方法を用いた顔領域ＦＡの再度の検出処理が行われるとしてもよい。
【００３３】
ここで、一般に、テンプレートを利用したパターンマッチングによる方法等の公知の顔検出方法は、顔全体や顔の部位（目や口等）について位置や傾き（角度）を詳細に検出するものではなく、対象画像ＴＩ中から顔の画像が概ね含まれると考えられる領域を顔領域ＦＡとして設定するものである。他方、本実施例のプリンタ１００は、後述するように、検出された顔領域ＦＡに基づいて顔形状補正のための画像変形処理を施す領域（後述の変形領域ＴＡ）を設定する。顔の画像は、一般に、観察者の注目度が高いため、設定された変形領域ＴＡと顔の画像との位置や角度の関係によっては、顔形状補正後の画像が不自然なものとなる可能性がある。そこで、本実施例では、より自然で好ましい顔形状補正が実現されるように、ステップＳ１３０で検出された顔領域ＦＡについて、以下に説明する位置調整および傾き調整を行うものとしている。
【００３４】
ステップＳ１４０（図４）では、顔領域調整部２３０（図１）が、ステップＳ１３０で検出された顔領域ＦＡの高さ方向の位置調整を行う。ここで、顔領域ＦＡの高さ方向の位置調整とは、顔領域ＦＡの基準線ＲＬ（図６参照）に沿った位置を調整して、対象画像ＴＩにおける顔領域ＦＡを再設定することを意味している。
【００３５】
図７は、本実施例における顔領域ＦＡの高さ方向の位置調整処理の流れを示すフローチャートである。ステップＳ１４１では、特定領域設定部２３２（図１）が、特定領域ＳＡを設定する。ここで、特定領域ＳＡとは、対象画像ＴＩ上の領域であって、顔領域ＦＡの高さ方向の位置調整を実行する際に参照する所定の参照被写体の画像を含む領域である。本実施例では、参照被写体は「目」と設定され、特定領域ＳＡは「目」の画像を含む領域として設定される。
【００３６】
図８は、特定領域ＳＡの一例を示す説明図である。本実施例では、特定領域設定部２３２が、特定領域ＳＡを顔領域ＦＡとの関係に基づいて設定する。具体的には、顔領域ＦＡの大きさを、基準線ＲＬに直行する方向および基準線ＲＬに平行な方向に、所定比率で縮小（または拡大）した大きさの領域であって、顔領域ＦＡの位置と所定の位置関係を有する領域が、特定領域ＳＡとして設定される。すなわち、本実施例では、顔領域検出部２２０により検出された顔領域ＦＡとの関係に基づき特定領域ＳＡを設定すれば、特定領域ＳＡが両方の目の画像を含む領域となるように、上記所定比率や所定の位置関係が予め設定されている。なお、特定領域ＳＡは、目の画像とまぎらわしい画像（例えば髪の毛の画像）がなるべく含まれないように、両目の画像を含む限りにおいて、なるべく小さい領域として設定されることが好ましい。
【００３７】
また、図８に示すように、特定領域ＳＡは、基準線ＲＬに対して対称な矩形形状の領域として設定される。特定領域ＳＡは、基準線ＲＬにより、向かって左側の領域（以下「左分割特定領域ＳＡ（ｌ）」とも呼ぶ）と、向かって右側の領域（以下「右分割特定領域ＳＡ（ｒ）」とも呼ぶ）とに分割される。特定領域ＳＡは、左分割特定領域ＳＡ（ｌ）と右分割特定領域ＳＡ（ｒ）とのそれぞれに片目の画像が含まれるように設定される。
【００３８】
ステップＳ１４２（図７）では、評価部２３４（図１）が、特定領域ＳＡにおける目の画像の位置を検出するための評価値を算出する。図９は、評価値の算出方法の一例を示す説明図である。本実施例では、ＲＧＢ画像データとしての対象画像ＴＩの各画素のＲ値（Ｒ成分値）が評価値の算出に用いられる。これは、肌の部分の画像と目の部分の画像とではＲ値の差が大きいため、Ｒ値を評価値の算出に用いることにより、目の画像の検出精度を向上させることができると考えられるからである。また、本実施例では、対象画像ＴＩのデータがＲＧＢデータとして取得されているため、Ｒ値を評価値の算出に用いることにより、評価値の算出の効率化を図ることができるからでもある。なお、図９に示すように、評価値の算出は、２つの分割特定領域（右分割特定領域ＳＡ（ｒ）および左分割特定領域ＳＡ（ｌ））のそれぞれについて個別に行われる。
【００３９】
評価部２３４は、図９に示すように、分割特定領域（右分割特定領域ＳＡ（ｒ）および左分割特定領域ＳＡ（ｌ））内に、基準線ＲＬと直行するｎ本の直線（以下「対象画素特定線ＰＬ１〜ＰＬｎ」と呼ぶ）を設定する。対象画素特定線ＰＬ１〜ＰＬｎは、分割特定領域の高さ（基準線ＲＬに沿った大きさ）を（ｎ＋１）等分する直線である。すなわち、対象画素特定線ＰＬ同士の間隔は、すべて等間隔ｓである。
【００４０】
評価部２３４は、対象画素特定線ＰＬ１〜ＰＬｎのそれぞれについて、対象画像ＴＩを構成する画素の中から評価値の算出に用いる画素（以下「評価対象画素ＴＰ」と呼ぶ）を選択する。図１０は、評価対象画素ＴＰの選択方法の一例を示す説明図である。評価部２３４は、対象画像ＴＩを構成する画素の内、対象画素特定線ＰＬと重なる画素を評価対象画素ＴＰとして選択する。図１０（ａ）は、対象画素特定線ＰＬが対象画像ＴＩの画素の行方向（図１０のＸ方向）と平行である場合を示している。この場合には、各対象画素特定線ＰＬと重なる画素行上の画素（図１０（ａ）において○印を付した画素）が、各対象画素特定線ＰＬについての評価対象画素ＴＰとして選択される。
【００４１】
一方、顔領域ＦＡの検出方法や特定領域ＳＡの設定方法によっては、図１０（ｂ）に示すように、対象画素特定線ＰＬが対象画像ＴＩの画素の行方向（Ｘ方向）と平行とはならない場合も生ずる。このような場合にも、原則として、各対象画素特定線ＰＬと重なる画素が、各対象画素特定線ＰＬについての評価対象画素ＴＰとして選択される。ただし、例えば図１０（ｂ）における対象画素特定線ＰＬ１と画素ＰＸａおよびＰＸｂとの関係のように、ある対象画素特定線ＰＬが、対象画像ＴＩの画素マトリクスの同一列に位置する（すなわちＹ座標が同一の）２つの画素と重なる場合には、重なり部分の距離のより短い方の画素（例えば画素ＰＸｂ）は評価対象画素ＴＰから除外される。すなわち、各対象画素特定線ＰＬについて、画素マトリクスの１つの列からは１つの画素のみが評価対象画素ＴＰとして選択される。
【００４２】
なお、対象画素特定線ＰＬの傾きが、Ｘ方向に対して４５度を超える場合には、上記説明において画素マトリクスの列と行との関係が逆転し、画素マトリクスの１つの行から１つの画素のみが評価対象画素ＴＰとして選択されることとなる。また、対象画像ＴＩと特定領域ＳＡとの大きさの関係によっては、１つの画素が複数の対象画素特定線ＰＬについての評価対象画素ＴＰとして選択される場合もある。
【００４３】
評価部２３４は、対象画素特定線ＰＬのそれぞれについて、評価対象画素ＴＰのＲ値の平均値を評価値として算出する。ただし、本実施例では、各対象画素特定線ＰＬについて、選択された複数の評価対象画素ＴＰの内、Ｒ値の大きい一部の画素を評価値の算出対象から除外するものとしている。具体的には、例えば、ある対象画素特定線ＰＬについてｋ個の評価対象画素ＴＰが選択された場合、評価対象画素ＴＰが、Ｒ値の比較的大きい０．７５ｋ個の画素により構成される第１グループと、比較的Ｒ値の小さい０．２５ｋ個の画素により構成される第２グループとの２グループに分けられ、第２グループに属する画素のみが評価値としてのＲ値の平均値の算出対象となる。このように一部の評価対象画素ＴＰを評価値の算出対象から除外する理由については後述する。
【００４４】
以上のように、本実施例では、評価部２３４により各対象画素特定線ＰＬについての評価値が算出される。ここで、対象画素特定線ＰＬは基準線ＲＬに直行する直線であるため、評価値は、基準線ＲＬに沿った複数の位置（評価位置）について算出されると表現することができる。また、評価値は、各評価位置について、基準線ＲＬに直行する方向に沿った画素値の分布の特徴を表す値と表現することができる。
【００４５】
ステップＳ１４３（図７）では、決定部２３６（図１）が、特定領域ＳＡにおける目の位置を検出し、検出結果に基づき高さ基準点Ｒｈを決定する。まず、決定部２３６は、図９の右側に示すように、各分割特定領域について、基準線ＲＬに沿った評価値（Ｒ値の平均値）の分布を表す曲線を作成し、評価値が極小値をとる基準線ＲＬ方向に沿った位置を目の位置Ｅｈとして検出する。なお、左分割特定領域ＳＡ（ｌ）における目の位置ＥｈをＥｈ（ｌ）と表し、右分割特定領域ＳＡ（ｒ）における目の位置ＥｈをＥｈ（ｒ）と表わす。
【００４６】
黄色人種の場合、分割特定領域中の肌の画像を表す部分はＲ値が大きい一方、目（より詳細には目の中央の黒目部分）の画像を表す部分はＲ値が小さいと考えられる。そのため、上述のように、評価値（Ｒ値の平均値）が極小値をとる基準線ＲＬに沿った位置を目の位置Ｅｈと判断することが可能となる。
【００４７】
なお、図９に示すように、分割特定領域には、目の画像以外にもＲ値の小さい他の画像（例えば、眉や髪の毛の画像）が含まれている場合もある。そのため、決定部２３６は、基準線ＲＬに沿った評価値の分布を表す曲線が複数の極小値をとる場合には、極小値をとる位置の内、最も下側の位置を目の位置Ｅｈと判断する。一般に、目の画像より上側には眉や髪の毛等のＲ値の小さい画像が位置することが多い一方、目の画像より下側にはＲ値の小さい画像が位置することが少ないと考えられることから、このような判断が可能となる。
【００４８】
また、上記曲線が、目の画像の位置よりも下側（主に肌の画像に対応した位置）であっても、評価値が大きいながらも極小値をとる可能性があるため、極小値の内、所定の閾値より大きいものは無視するものとしてもよい。あるいは、単純に、各対象画素特定線ＰＬについて算出された評価値の内の最小値に対応した対象画素特定線ＰＬの位置を目の位置Ｅｈとしてもよい。
【００４９】
なお、本実施例では、顔において周囲との色の差が比較的大きいと考えられる部位である目（目の中央の黒目部分）を顔領域ＦＡの位置調整の参照被写体として用いている。しかし、評価値としてのＲ値の平均値は、対象画素特定線ＰＬ上の複数の評価対象画素ＴＰを対象として算出されるため、例えば、黒目の周縁の白目部分の画像の影響により、黒目部分の検出の精度が低下する怖れがある。本実施例では、上述したように、参照被写体とは色の差が大きいと考えられる一部の評価対象画素ＴＰ（例えば上述した第１のグループに属する比較的Ｒ値の大きい画素）を評価値の算出対象から除外することにより、参照被写体の検出精度をより向上させている。
【００５０】
次に、決定部２３６は、検出された目の位置Ｅｈに基づき高さ基準点Ｒｈを決定する。図１１は、高さ基準点Ｒｈの決定方法の一例を示す説明図である。高さ基準点Ｒｈは、顔領域ＦＡの高さ方向の位置調整の際に、基準として用いられる点である。本実施例では、図１１に示すように、左右２つの目の位置Ｅｈ（ｌ）およびＥｈ（ｒ）の中間に位置する基準線ＲＬ上の点が高さ基準点Ｒｈとして設定される。すなわち、左の目の位置Ｅｈ（ｌ）を示す直線ＥｈＬ（ｌ）と基準線ＲＬとの交点と、右の目の位置Ｅｈ（ｒ）を示す直線ＥｈＬ（ｒ）と基準線ＲＬとの交点と、の中点が、高さ基準点Ｒｈとして設定される。
【００５１】
なお、本実施例では、決定部２３６が、検出された目の位置Ｅｈに基づき、顔画像の概略の傾き角（以下「概略傾き角ＲＩ」と呼ぶ）を算出するものとしている。顔画像の概略傾き角ＲＩは、対象画像ＴＩ中の顔の画像が、顔領域ＦＡの基準線ＲＬに対して概ねどれぐらい傾いているかを推定した角度である。図１２は、概略傾き角ＲＩの算出方法の一例を示す説明図である。図１２に示すように、決定部２３６は、まず、左分割特定領域ＳＡ（ｌ）の幅Ｗｓ（ｌ）を半分に分割する直線と直線ＥｈＬ（ｌ）との交点ＩＰ（ｌ）と、右分割特定領域ＳＡ（ｒ）の幅Ｗｓ（ｒ）を半分に分割する直線と直線ＥｈＬ（ｒ）との交点ＩＰ（ｒ）とを決定する。そして、交点ＩＰ（ｌ）と交点ＩＰ（ｒ）とを結ぶ直線に直交する直線ＩＬと、基準線ＲＬとのなす角が、概略傾き角ＲＩとして算出される。
【００５２】
ステップＳ１４４（図７）では、顔領域調整部２３０（図１）が、顔領域ＦＡの高さ方向の位置調整を行う。図１３は、顔領域ＦＡの高さ方向の位置調整方法の一例を示す説明図である。顔領域ＦＡの高さ方向の位置調整は、高さ基準点Ｒｈが、位置調整後の顔領域ＦＡにおける所定の位置に位置することとなるように、顔領域ＦＡを再設定することにより行う。具体的には、図１３に示すように、高さ基準点Ｒｈが、顔領域ＦＡの高さＨｆを所定の比率ｒ１対ｒ２で分けるような位置に位置することとなるように、顔領域ＦＡが基準線ＲＬに沿って上下に位置調整される。図１３の例では、破線で示した調整前の顔領域ＦＡを上方向に移動することにより、実線で示した調整後の顔領域ＦＡが再設定されている。
【００５３】
顔領域ＦＡの位置調整の後、ステップＳ１５０（図４）では、顔領域調整部２３０（図１）が、顔領域ＦＡの傾き調整（角度調整）を行う。ここで、顔領域ＦＡの傾き調整とは、対象画像ＴＩにおける顔領域ＦＡの傾きを顔の画像の傾きに適合するように調整して、顔領域ＦＡを再設定することを意味している。本実施例では、顔領域ＦＡの傾き調整を実行する際に参照する所定の参照被写体は、「両目」と設定されている。本実施例における顔領域ＦＡの傾き調整では、傾き調整の調整角度の選択肢を表す複数の評価方向が設定され、各評価方向に対応した評価特定領域ＥＳＡが両目の画像を含む領域として設定される。そして、各評価方向について評価特定領域ＥＳＡの画像の画素値に基づき評価値が算出され、評価値に基づき決定される傾き調整の調整角度を用いて顔領域ＦＡの傾きが調整される。
【００５４】
図１４は、本実施例における顔領域ＦＡの傾き調整処理の流れを示すフローチャートである。また、図１５は、顔領域ＦＡの傾き調整のための評価値の算出方法の一例を示す説明図である。ステップＳ１５１（図１４）では、特定領域設定部２３２（図１）が、初期評価特定領域ＥＳＡ（０）を設定する。初期評価特定領域ＥＳＡ（０）は、顔領域ＦＡの位置調整後の基準線ＲＬ（図１３参照）と平行な方向（以下「初期評価方向」とも呼ぶ）に対応付けられた評価特定領域ＥＳＡである。本実施例では、位置調整後の顔領域ＦＡに対応した特定領域ＳＡ（図１３参照）が、そのまま初期評価特定領域ＥＳＡ（０）として設定される。なお、顔領域ＦＡの傾き調整における評価特定領域ＥＳＡは、顔領域ＦＡの位置調整時の特定領域ＳＡとは異なり、左右２つの領域に分割されることはない。図１５の最上段には、設定された初期評価特定領域ＥＳＡ（０）が示されている。
【００５５】
ステップＳ１５２（図１４）では、特定領域設定部２３２（図１）が、複数の評価方向と各評価方向に対応した評価特定領域ＥＳＡとを設定する。複数の評価方向は、傾き調整の調整角度の選択肢を表す方向として設定される。本実施例では、基準線ＲＬとのなす角が所定の範囲内である複数の評価方向線ＥＬが設定され、評価方向線ＥＬと平行な方向が評価方向として設定される。図１５に示すように、基準線ＲＬを初期評価特定領域ＥＳＡ（０）の中心点（重心）ＣＰを中心として反時計回りおよび時計回りに所定の角度α刻みで回転させることにより定まる直線が、複数の評価方向線ＥＬとして設定される。なお、基準線ＲＬとのなす角がφ度である評価方向線ＥＬをＥＬ（φ）と表す。
【００５６】
本実施例では、上述した各評価方向線ＥＬと基準線ＲＬとのなす角についての所定の範囲は±２０度と設定される。ここで本明細書では、基準線ＲＬを時計回りに回転させたときの回転角は正の値で表され、基準線ＲＬを反時計回りに回転させたときの回転角は負の値で表される。特定領域設定部２３２は、基準線ＲＬを反時計回りおよび時計回りにα度、２α度・・・と２０度を超えない範囲で回転角を増加させつつ回転させ、複数の評価方向線ＥＬを設定する。図１５には、基準線ＲＬを−α度，−２α度，α度回転させることによりそれぞれ定まる評価方向線ＥＬ（ＥＬ（−α），ＥＬ（−２α），ＥＬ（α））が示されている。なお、基準線ＲＬは、評価方向線ＥＬ（０）とも表現できる。
【００５７】
各評価方向を表す評価方向線ＥＬに対応した評価特定領域ＥＳＡは、初期評価特定領域ＥＳＡ（０）を、中心点ＣＰを中心として、評価方向線ＥＬの設定時の回転角と同じ角度で回転させた領域である。評価方向線ＥＬ（φ）に対応した評価特定領域ＥＳＡは、評価特定領域ＥＳＡ（φ）と表される。図１５には、評価方向線ＥＬ（−α），ＥＬ（−２α），ＥＬ（α）のそれぞれに対応した評価特定領域ＥＳＡ（ＥＳＡ（−α），ＥＳＡ（−２α），ＥＳＡ（α））が示されている。なお、初期評価特定領域ＥＳＡ（０）も評価特定領域ＥＳＡの１つとして扱われるものとする。
【００５８】
ステップＳ１５３（図１４）では、評価部２３４（図１）が、設定された複数の評価方向のそれぞれについて、評価特定領域ＥＳＡの画像の画素値に基づき評価値を算出する。本実施例では、顔領域ＦＡの傾き調整における評価値として、上述した顔領域ＦＡの位置調整における評価値と同様に、Ｒ値の平均値が用いられる。評価部２３４は、評価方向に沿った複数の評価位置についての評価値を算出する。
【００５９】
評価値の算出方法は、上述した顔領域ＦＡの位置調整における評価値の算出方法と同様である。すなわち、評価部２３４は、図１５に示すように、各評価特定領域ＥＳＡ内に、評価方向線ＥＬに直交する対象画素特定線ＰＬ１〜ＰＬｎを設定し、各対象画素特定線ＰＬ１〜ＰＬｎについて評価対象画素ＴＰを選択し、選択された評価対象画素ＴＰのＲ値の平均値を評価値として算出する。
【００６０】
評価特定領域ＥＳＡにおける対象画素特定線ＰＬの設定方法や評価対象画素ＴＰの選択方法は、領域を左右に分割するか否かの違いはあるものの、図９および図１０に示した顔領域ＦＡの位置調整における方法と同様である。なお、顔領域ＦＡの位置調整時と同様に、選択された評価対象画素ＴＰの内の一部（例えばｋ個の評価対象画素ＴＰの内のＲ値の比較的大きい０．７５ｋ個の画素）を評価値の算出対象から除外するとしてもよい。図１５の右側には、各評価方向について、算出された評価値の評価方向線ＥＬに沿った分布を示している。
【００６１】
なお、対象画素特定線ＰＬは評価方向線ＥＬに直行する直線であるため、評価値は、評価方向線ＥＬに沿った複数の位置（評価位置）について算出されると表現することができる。また、評価値は、各評価位置について、評価方向線ＥＬに直行する方向に沿った画素値の分布の特徴を表す値と表現することができる。
【００６２】
ステップＳ１５４（図１４）では、決定部２３６（図１）が、顔領域ＦＡの傾き調整に用いる調整角度を決定する。決定部２３６は、各評価方向について、ステップＳ１５３において算出された評価値の評価方向線ＥＬに沿った分散を算出し、分散の値が最大となる評価方向を選択する。そして、選択された評価方向に対応した評価方向線ＥＬと基準線ＲＬとのなす角を、傾き調整に用いる調整角度として決定する。
【００６３】
図１６は、各評価方向についての評価値の分散の算出結果の一例を示す説明図である。図１６の例では、回転角が−α度である評価方向において、分散が最大値Ｖｍａｘをとる。従って、−α度、すなわち反時計回りにα度の回転角が、顔領域ＦＡの傾き調整に用いる調整角度として決定される。
【００６４】
評価値の分散の値が最大となるときの評価方向に対応した角度が傾き調整に用いる調整角度として決定される理由について説明する。図１５の上から２段目に示すように、回転角が−α度であるときの評価特定領域ＥＳＡ（−α）では、左右の目の中央部（黒目部分）の画像が、概ね対象画素特定線ＰＬに平行な方向（すなわち評価方向線ＥＬに直行する方向）に並ぶような配置となっている。また、このときには、左右の眉の画像も同様に、概ね評価方向線ＥＬに直行する方向に並ぶような配置となる。従って、このときの評価方向線ＥＬに対応した評価方向が、概ね顔の画像の傾きを表す方向であると考えられる。このときには、一般にＲ値が小さい目や眉の画像と一般にＲ値が大きい肌の部分の画像との位置関係が、対象画素特定線ＰＬの方向に沿って両者が重なる部分の小さい位置関係となる。そのため、目や眉の画像の位置における評価値は比較的小さくなり、肌の部分の画像の位置における評価値は比較的大きくなる。従って、評価方向線ＥＬに沿った評価値の分布は、図１５に示すように、比較的ばらつきの大きい（振幅の大きい）分布となり、分散の値は大きくなる。
【００６５】
一方、図１５中の最上段および３段目、４段目に示すように、回転角が０度，−２α度，α度であるときの評価特定領域ＥＳＡ（０），ＥＳＡ（−２α），ＥＳＡ（α）では、左右の目の中央部や左右の眉の画像が、評価方向線ＥＬに直行する方向に並ばず、ずれた配置となっている。従って、このときの評価方向線ＥＬに対応した評価方向は、顔の画像の傾きを表していはいない。このときには、目や眉の画像と肌の部分の画像との位置関係が、対象画素特定線ＰＬの方向に沿って両者が重なる部分の大きい位置関係となる。そのため、評価方向線ＥＬに沿った評価値の分布は、図１５に示すように、比較的ばらつきの小さい（振幅の小さい）分布となり、分散の値は小さくなる。
【００６６】
以上のように、評価方向が顔の画像の傾きの方向に近い場合には、評価方向線ＥＬに沿った評価値の分散の値が大きくなり、評価方向が顔の画像の傾きの方向から遠い場合には、評価方向線ＥＬに沿った評価値の分散の値が小さくなる。従って、評価値の分散の値が最大となるときの評価方向に対応した角度を傾き調整に用いる調整角度として決定すれば、顔領域ＦＡの傾きが顔の画像の傾きに適合するような顔領域ＦＡの傾き調整を実現することができる。
【００６７】
なお本実施例では、評価値の分散の算出結果が、角度の範囲の臨界値、すなわち−２０度または２０度において最大値をとるような結果となった場合には、顔の傾きが正確に評価されていない可能性が高いと考えられるため、顔領域ＦＡの傾き調整を行わないものとしている。
【００６８】
また本実施例では、決定された調整角度が、上述した顔領域ＦＡの位置調整の際に算出された概略傾き角ＲＩと比較される。調整角度と概略傾き角ＲＩとの差が所定の閾値より大きい場合には、顔領域ＦＡの位置調整および傾き調整における評価や決定の際に何らかの誤りが発生したと考えられるため、顔領域ＦＡの位置調整および傾き調整を行わないものとしている。
【００６９】
ステップＳ１５５（図１４）では、顔領域調整部２３０（図１）が、顔領域ＦＡの傾き調整を行う。図１７は、顔領域ＦＡの傾き調整方法の一例を示す説明図である。顔領域ＦＡの傾き調整は、顔領域ＦＡを、初期評価特定領域ＥＳＡ（０）の中心点ＣＰを中心に、ステップＳ１５４において決定された調整角度だけ回転させることにより行う。図１７の例では、破線で示した調整前の顔領域ＦＡを反時計回りにα度回転させることにより、実線で示した調整後の顔領域ＦＡが設定される。
【００７０】
顔領域ＦＡの傾き調整終了後のステップＳ１６０（図４）では、変形領域設定部２４０（図１）が、変形領域ＴＡを設定する。変形領域ＴＡは、対象画像ＴＩ上の領域であって顔形状補正のための画像変形処理の対象となる領域である。図１８は、変形領域ＴＡの設定方法の一例を示す説明図である。図１８に示すように、本実施例では、変形領域ＴＡは、顔領域ＦＡを基準線ＲＬと平行な方向（高さ方向）および基準線ＲＬに直行する方向（幅方向）に伸張（または短縮）した領域として設定される。具体的には、顔領域ＦＡの高さ方向の大きさをＨｆ、幅方向の大きさをＷｆとすると、顔領域ＦＡを、上方向にｋ１・Ｈｆ、下方向にｋ２・Ｈｆだけ伸ばすと共に、左右にそれぞれｋ３・Ｗｆだけ伸ばした領域が、変形領域ＴＡとして設定される。なお、ｋ１，ｋ２，ｋ３は、所定の係数である。
【００７１】
このように変形領域ＴＡが設定されると、顔領域ＦＡの高さ方向の輪郭線に平行な直線である基準線ＲＬは、変形領域ＴＡの高さ方向の輪郭線にも平行な直線となる。また、基準線ＲＬは、変形領域ＴＡの幅を半分に分割する直線となる。
【００７２】
図１８に示すように、変形領域ＴＡは、高さ方向に関しては、概ね顎から額までの画像を含み、幅方向に関しては、左右の頬の画像を含むような領域として設定される。すなわち、本実施例では、変形領域ＴＡが概ねそのような範囲の画像を含む領域となるように、顔領域ＦＡの大きさとの関係に基づき、上述の係数ｋ１，ｋ２，ｋ３が予め設定されている。
【００７３】
ステップＳ１７０（図４）では、変形領域分割部２５０（図１）が、変形領域ＴＡを複数の小領域に分割する。図１９は、変形領域ＴＡの小領域への分割方法の一例を示す説明図である。変形領域分割部２５０は、変形領域ＴＡに複数の分割点Ｄを配置し、分割点Ｄを結ぶ直線を用いて変形領域ＴＡを複数の小領域に分割する。
【００７４】
分割点Ｄの配置の態様（分割点Ｄの個数および位置）は、分割点配置パターンテーブル４１０（図１）により、ステップＳ１２０（図４）において設定される変形タイプと対応付けて定義されている。変形領域分割部２５０は、分割点配置パターンテーブル４１０を参照し、ステップＳ１２０において設定された変形タイプと対応付けられた態様で分割点Ｄを配置する。本実施例では、上述したように、変形タイプとして顔をシャープにするための変形「タイプＡ」（図５参照）が設定されているため、この変形タイプに対応付けられた態様で分割点Ｄが配置される。
【００７５】
図１９に示すように、分割点Ｄは、水平分割線Ｌｈと垂直分割線Ｌｖとの交点と、水平分割線Ｌｈおよび垂直分割線Ｌｖと変形領域ＴＡの外枠との交点とに配置される。ここで、水平分割線Ｌｈおよび垂直分割線Ｌｖは、変形領域ＴＡ内に分割点Ｄを配置するための基準となる線である。図１９に示すように、顔をシャープにするための変形タイプに対応付けられた分割点Ｄの配置では、基準線ＲＬと直行する２本の水平分割線Ｌｈと、基準線ＲＬに平行な４本の垂直分割線Ｌｖとが設定される。２本の水平分割線Ｌｈを、変形領域ＴＡの下方から順に、Ｌｈ１，Ｌｈ２と呼ぶ。また、４本の垂直分割線Ｌｖを、変形領域ＴＡの左から順に、Ｌｖ１，Ｌｖ２，Ｌｖ３，Ｌｖ４と呼ぶ。
【００７６】
水平分割線Ｌｈ１は、変形領域ＴＡにおいて、顎の画像より下方に配置され、水平分割線Ｌｈ２は、目の画像のすぐ下付近に配置される。また、垂直分割線Ｌｖ１およびＬｖ４は、頬のラインの画像の外側に配置され、垂直分割線Ｌｖ２およびＬｖ３は、目尻の画像の外側に配置される。なお、水平分割線Ｌｈおよび垂直分割線Ｌｖの配置は、水平分割線Ｌｈおよび垂直分割線Ｌｖと画像との位置関係が結果的に上述の位置関係となるように予め設定された変形領域ＴＡの大きさとの対応関係に従い実行される。
【００７７】
上述した水平分割線Ｌｈと垂直分割線Ｌｖとの配置に従い、水平分割線Ｌｈと垂直分割線Ｌｖとの交点と、水平分割線Ｌｈおよび垂直分割線Ｌｖと変形領域ＴＡの外枠との交点とに、分割点Ｄが配置される。図１９に示すように、水平分割線Ｌｈｉ（ｉ＝１または２）上に位置する分割点Ｄを、左から順に、Ｄ０ｉ，Ｄ１ｉ，Ｄ２ｉ，Ｄ３ｉ，Ｄ４ｉ，Ｄ５ｉと呼ぶものとする。例えば、水平分割線Ｌｈ１上に位置する分割点Ｄは、Ｄ０１，Ｄ１１，Ｄ２１，Ｄ３１，Ｄ４１，Ｄ５１と呼ばれる。同様に、垂直分割線Ｌｖｊ（ｊ＝１，２，３，４のいずれか）上に位置する分割点Ｄを、下から順に、Ｄｊ０，Ｄｊ１，Ｄｊ２，Ｄｊ３と呼ぶものとする。例えば、垂直分割線Ｌｖ１上に位置する分割点Ｄは、Ｄ１０，Ｄ１１，Ｄ１２，Ｄ１３と呼ばれる。
【００７８】
なお、図１９に示すように、本実施例における分割点Ｄの配置は、基準線ＲＬに対して対称の配置となっている。
【００７９】
変形領域分割部２５０は、配置された分割点Ｄを結ぶ直線（すなわち水平分割線Ｌｈおよび垂直分割線Ｌｖ）により、変形領域ＴＡを複数の小領域に分割する。本実施例では、図１９に示すように、変形領域ＴＡが１５個の矩形の小領域に分割される。
【００８０】
なお本実施例では、分割点Ｄの配置は、水平分割線Ｌｈおよび垂直分割線Ｌｖの本数および位置により定まるため、分割点配置パターンテーブル４１０は水平分割線Ｌｈおよび垂直分割線Ｌｖの本数および位置を定義していると言い換えることも可能である。
【００８１】
ステップＳ１８０（図４）では、変形処理部２６０（図１）が、対象画像ＴＩの変形領域ＴＡを対象とした画像の変形処理を行う。変形処理部２６０による変形処理は、ステップＳ１７０で変形領域ＴＡ内に配置された分割点Ｄの位置を移動して、小領域を変形することにより行われる。
【００８２】
変形処理のための各分割点Ｄの位置の移動態様（移動方向および移動距離）は、分割点移動テーブル４２０（図１）により、ステップＳ１２０（図４）において設定される変形タイプと変形の度合いとの組み合わせに対応付けて、予め定められている。変形処理部２６０は、分割点移動テーブル４２０を参照し、ステップＳ１２０において設定された変形タイプと変形の度合いとの組み合わせに対応付けられた移動方向および移動距離で、分割点Ｄの位置を移動する。
【００８３】
本実施例では、上述したように、変形タイプとして顔をシャープにするための変形「タイプＡ」（図５参照）が設定され、変形度合いとして程度「中」の度合いが設定されているため、これらの変形タイプおよび変形度合いの組み合わせに対応付けられた移動方向および移動距離で、分割点Ｄの位置が移動されることとなる。
【００８４】
図２０は、分割点移動テーブル４２０の内容の一例を示す説明図である。また図２１は、分割点移動テーブル４２０に従った分割点Ｄの位置の移動の一例を示す説明図である。図２０には、分割点移動テーブル４２０により定義された分割点Ｄの位置の移動態様の内、顔をシャープにするための変形タイプと程度「中」の変形度合いとの組み合わせに対応付けられた移動態様を示している。図２０に示すように、分割点移動テーブル４２０には、各分割点Ｄについて、基準線ＲＬと直行する方向（Ｈ方向）および基準線ＲＬと平行な方向（Ｖ方向）に沿った移動量が示されている。なお、本実施例では、分割点移動テーブル４２０に示された移動量の単位は、対象画像ＴＩの画素ピッチＰＰである。また、Ｈ方向については、向かって右側への移動量が正の値として表され、向かって左側への移動量が負の値として表され、Ｖ方向については、上方への移動量が正の値として表され、下方への移動量が負の値として表される。例えば、分割点Ｄ１１は、Ｈ方向に沿って右側に画素ピッチＰＰの７倍の距離だけ移動され、Ｖ方向に沿って上方に画素ピッチＰＰの１４倍の距離だけ移動される。また、例えば分割点Ｄ２２は、Ｈ方向およびＶ方向共に移動量がゼロであるため、移動されない。
【００８５】
なお、本実施例では、変形領域ＴＡの内外の画像間の境界が不自然とならないように、変形領域ＴＡの外枠上に位置する分割点Ｄ（例えば図２１に示す分割点Ｄ１０等）の位置は移動されないものとしている。従って、図２０に示した分割点移動テーブル４２０には、変形領域ＴＡの外枠上に位置する分割点Ｄについての移動態様は定義されていない。
【００８６】
図２１では、移動前の分割点Ｄは白抜きの丸で、移動後の分割点Ｄや位置の移動の無い分割点Ｄは黒丸で示されている。また、移動後の分割点Ｄは分割点Ｄ’と呼ばれるものとする。例えば分割点Ｄ１１の位置は、図２１において右上方向に移動され、分割点Ｄ’１１となる。
【００８７】
なお、本実施例では、基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄの組み合わせ（例えば分割点Ｄ１１とＤ４１との組み合わせ）のすべてが、分割点Ｄの移動後も、基準線ＲＬに対して対称な位置関係を維持するように、移動態様が定められている。
【００８８】
変形処理部２６０は、変形領域ＴＡを構成する各小領域について、分割点Ｄの位置移動前の状態における小領域の画像が、分割点Ｄの位置移動により新たに定義された小領域の画像となるように、画像の変形処理を行う。例えば、図２１において、分割点Ｄ１１，Ｄ２１，Ｄ２２，Ｄ１２を頂点とする小領域（ハッチングを付して示す小領域）の画像は、分割点Ｄ’１１，Ｄ’２１，Ｄ２２，Ｄ’１２を頂点とする小領域の画像に変形される。
【００８９】
図２２は、変形処理部２６０による画像の変形処理方法の概念を示す説明図である。図２２では、分割点Ｄを黒丸で示している。図２２では、説明を簡略化するために、４つの小領域について、左側に分割点Ｄの位置移動前の状態を、右側に分割点Ｄの位置移動後の状態を、それぞれ示している。図２２の例では、中央の分割点Ｄａが分割点Ｄａ’の位置に移動され、その他の分割点Ｄの位置は移動されない。これにより、例えば、分割点Ｄの移動前の分割点Ｄａ，Ｄｂ，Ｄｃ，Ｄｄを頂点とする矩形の小領域（以下「変形前注目小領域ＢＳＡ」とも呼ぶ）の画像は、分割点Ｄａ’，Ｄｂ，Ｄｃ，Ｄｄを頂点とする矩形の小領域（以下「変形後注目小領域ＡＳＡ」とも呼ぶ）の画像に変形される。
【００９０】
本実施例では、矩形の小領域を小領域の重心ＣＧを用いて４つの三角形領域に分割し、三角形領域単位で画像の変形処理を行っている。図２２の例では、変形前注目小領域ＢＳＡが、変形前注目小領域ＢＳＡの重心ＣＧを頂点の１つとする４つの三角形領域に分割される。同様に、変形後注目小領域ＡＳＡが、変形後注目小領域ＡＳＡの重心ＣＧ’を頂点の１つとする４つの三角形領域に分割される。そして、分割点Ｄａの移動前後のそれぞれの状態において対応する三角形領域毎に、画像の変形処理が行われる。例えば、変形前注目小領域ＢＳＡ中の分割点Ｄａ，Ｄｄおよび重心ＣＧを頂点とする三角形領域の画像が、変形後注目小領域ＡＳＡ中の分割点Ｄａ’，Ｄｄおよび重心ＣＧ’を頂点とする三角形領域の画像に変形される。
【００９１】
図２３は、三角形領域における画像の変形処理方法の概念を示す説明図である。図２３の例では、点ｓ，ｔ，ｕを頂点とする三角形領域ｓｔｕの画像が、点ｓ’，ｔ’，ｕ’を頂点とする三角形領域ｓ’ｔ’ｕ’の画像に変形される。画像の変形は、変形後の三角形領域ｓ’ｔ’ｕ’の画像中のある画素の位置が、変形前の三角形領域ｓｔｕの画像中のどの位置に相当するかを算出し、算出された位置における変形前の画像における画素値を変形後の画像の画素値とすることにより行う。
【００９２】
例えば、図２３において、変形後の三角形領域ｓ’ｔ’ｕ’の画像中の注目画素ｐ’の位置は、変形前の三角形領域ｓｔｕの画像中の位置ｐに相当するものとする。位置ｐの算出は、以下のように行う。まず、注目画素ｐ’の位置を、下記の式（１）のようにベクトルｓ’ｔ’とベクトルｓ’ｕ’との和で表現するための係数ｍ１およびｍ２を算出する。
【００９３】
【数１】
2008242806.tif 000003
【００９４】
次に、算出された係数ｍ１およびｍ２を用いて、下記の式（２）により、変形前の三角形領域ｓｔｕにおけるベクトルｓｔとベクトルｓｕとの和を算出することにより、位置ｐが求まる。
【００９５】
【数２】
2008242806.tif 000004
【００９６】
変形前の三角形領域ｓｔｕにおける位置ｐが、変形前の画像の画素中心位置に一致した場合には、当該画素の画素値が変形後の画像の画素値とされる。一方、変形前の三角形領域ｓｔｕにおける位置ｐが、変形前の画像の画素中心位置からはずれた位置となった場合には、位置ｐの周囲の画素の画素値を用いたバイキュービック等の補間演算により、位置ｐにおける画素値を算出し、算出された画素値が変形後の画像の画素値とされる。
【００９７】
変形後の三角形領域ｓ’ｔ’ｕ’の画像中の各画素について上述のように画素値を算出することにより、三角形領域ｓｔｕの画像から三角形領域ｓ’ｔ’ｕ’の画像への画像変形処理を行うことができる。変形処理部２６０は、図２１に示した変形領域ＴＡを構成する各小領域について、上述したように三角形領域を定義して変形処理を行い、変形領域ＴＡにおける画像変形処理を行う。
【００９８】
ここで、本実施例の顔形状補正の態様についてより詳細に説明する。図２４は、本実施例における顔形状補正の態様を示す説明図である。本実施例では、上述したように、変形タイプとして顔をシャープにするための変形「タイプＡ」（図５参照）が設定され、変形度合いとして程度「中」の度合いが設定されている。図２４には、変形領域ＴＡを構成する各小領域の変形態様のイメージを矢印により示している。
【００９９】
図２４に示すように、本実施例の顔形状補正では、基準線ＲＬと平行な方向（Ｖ方向）に関し、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ１１，Ｄ２１，Ｄ３１，Ｄ４１）の位置は上方に移動される一方、水平分割線Ｌｈ２上に配置された分割点Ｄ（Ｄ１２，Ｄ２２，Ｄ３２，Ｄ４２）の位置は移動されない（図２０参照）。従って、水平分割線Ｌｈ１と水平分割線Ｌｈ２との間に位置する画像は、Ｖ方向に関して縮小される。上述したように、水平分割線Ｌｈ１は顎の画像より下方に配置され、水平分割線Ｌｈ２は目の画像のすぐ下付近に配置されるため、本実施例の顔形状補正では、顔の画像の内、顎から目の下にかけての部分の画像がＶ方向に縮小されることとなる。この結果、画像中の顎のラインは上方に移動する。
【０１００】
他方、基準線ＲＬと直行する方向（Ｈ方向）に関しては、垂直分割線Ｌｖ１上に配置された分割点Ｄ（Ｄ１１，Ｄ１２）の位置は右方向に移動され、垂直分割線Ｌｖ４上に配置された分割点Ｄ（Ｄ４１，Ｄ４２）の位置は左方向に移動される（図２０参照）。さらに、垂直分割線Ｌｖ２上に配置された２つの分割点Ｄの内、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ２１）の位置は右方向に移動され、垂直分割線Ｌｖ３上に配置された２つの分割点Ｄの内、水平分割線Ｌｈ１上に配置された分割点Ｄ（Ｄ３１）の位置は左方向に移動される（図２０参照）。従って、垂直分割線Ｌｖ１より左側に位置する画像は、Ｈ方向に関して右側に拡大され、垂直分割線Ｌｖ４より右側に位置する画像は、左側に拡大される。また、垂直分割線Ｌｖ１と垂直分割線Ｌｖ２との間に位置する画像は、Ｈ方向に関して縮小または右側に移動され、垂直分割線Ｌｖ３と垂直分割線Ｌｖ４との間に位置する画像は、Ｈ方向に関して縮小または左側に移動される。さらに、垂直分割線Ｌｖ２と垂直分割線Ｌｖ３との間に位置する画像は、水平分割線Ｌｈ１の位置を中心にＨ方向に関して縮小される。
【０１０１】
上述したように、垂直分割線Ｌｖ１およびＬｖ４は、頬のラインの画像の外側に配置され、垂直分割線Ｌｖ２およびＬｖ３は、目尻の画像の外側に配置される。そのため、本実施例の顔形状補正では、顔の画像の内、両目尻より外側の部分の画像が全体的にＨ方向に縮小される。特に顎付近において縮小率が高くなる。この結果、画像中の顔の形状は、全体的に幅方向に細くなる。
【０１０２】
上述したＨ方向およびＶ方向の変形態様を総合すると、本実施例の顔形状補正により、対象画像ＴＩ中の顔の形状がシャープになる。なお、顔の形状がシャープになるとは、いわゆる「小顔」になると表現することもできる。
【０１０３】
なお、図２４に示す分割点Ｄ２２，Ｄ３２，Ｄ３３，Ｄ２３を頂点とする小領域（ハッチングを付した領域）は、上述した水平分割線Ｌｈ２や垂直分割線Ｌｖ２およびＬｖ３の配置方法によると、両目の画像を含む領域となる。図２０に示すように、分割点Ｄ２２およびＤ３２はＨ方向にもＶ方向にも移動されないため、この両目の画像を含む小領域は変形されない。このように本実施例では、両目の画像を含む小領域については変形しないこととし、顔形状補正後の画像がより自然で好ましいものとなるようにしている。
【０１０４】
ステップＳ１９０（図４）では、顔形状補正部２００（図１）が、顔形状補正後の対象画像ＴＩを表示部１５０に表示するよう表示処理部３１０に指示する。図２５は、顔形状補正後の対象画像ＴＩが表示された表示部１５０の状態の一例を示す説明図である。顔形状補正後の対象画像ＴＩが表示された表示部１５０により、ユーザは、補正結果を確認することができる。ユーザが補正結果に満足せず「戻る」ボタンを選択した場合には、例えば表示部１５０に図５に示した変形タイプおよび変形度合いを選択する画面が表示され、ユーザによる変形タイプや変形度合いの再度の設定が実行される。ユーザが補正結果に満足し、「印刷」ボタンを選択した場合には、以下の補正画像印刷処理が開始される。
【０１０５】
ステップＳ２００（図３）では、印刷処理部３２０（図１）が、プリンタエンジン１６０を制御して、顔形状補正処理後の対象画像ＴＩの印刷を行う。図２６は、本実施例における補正画像印刷処理の流れを示すフローチャートである。印刷処理部３２０は、顔形状補正処理後の対象画像ＴＩの画像データの解像度を、プリンタエンジン１６０による印刷処理に適した解像度に変換し（ステップＳ２１０）、解像度変換後の画像データを、プリンタエンジン１６０における印刷に用いられる複数のインク色で階調表現されたインク色画像データに変換する（ステップＳ２２０）。なお、本実施例では、プリンタエンジン１６０における印刷に用いられる複数のインク色は、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の４色であるものとする。さらに、印刷処理部３２０は、インク色画像データにおける各インク色の階調値に基づいてハーフトーン処理を実行することによって、印刷画素毎のインクドットの形成状態を示すドットデータを生成し（ステップＳ２３０）、ドットデータを配列して印刷データを生成する（ステップＳ２４０）。印刷処理部３２０は、生成された印刷データをプリンタエンジン１６０に供給し、プリンタエンジン１６０に対象画像ＴＩの印刷を行わせる（ステップＳ２５０）。これにより、顔形状補正後の対象画像ＴＩの印刷が完了する。
【０１０６】
Ａ−３．第１実施例の変形例：
第１実施例では、変形タイプとして顔をシャープにするための変形「タイプＡ」（図５参照）が設定され、変形度合いとして程度「中」の度合いが設定された場合の顔形状補正処理について説明した。これらの設定が異なる場合には、異なる顔形状補正印刷処理が実行される。
【０１０７】
上述したように、変形処理のための分割点Ｄの位置の移動態様（移動方向および移動距離）は、分割点移動テーブル４２０（図１）により、変形タイプと変形の度合いとの組み合わせに対応付けて定められている。従って、例えば、変形度合いとして程度「中」の代わりに程度「大」が設定された場合には、分割点移動テーブル４２０に定められた、程度「大」に対応付けられた移動態様で分割点Ｄが移動される。
【０１０８】
図２７は、分割点移動テーブル４２０の内容の他の一例を示す説明図である。図２７には、顔をシャープにするための変形タイプと程度「大」の変形度合いとの組み合わせに対応付けられた分割点Ｄの位置の移動態様を示している。図２７に示した移動態様は、図２０に示した顔をシャープにするための変形タイプと程度「中」の変形度合いとの組み合わせに対応付けられたものと比較して、Ｈ方向およびＶ方向の移動距離の値が大きくなっている。従って、変形度合いとして程度「大」が設定された場合には、変形領域ＴＡを構成する小領域の内、変形される小領域の変形量が大きくなり、結果として、対象画像ＴＩ中の顔の形状がよりシャープになる。
【０１０９】
また、上述したように、変形領域ＴＡにおける分割点Ｄの配置の態様（分割点Ｄの個数および位置）は、分割点配置パターンテーブル４１０（図１）により、設定される変形タイプと対応付けて定義されている。従って、例えば、変形タイプとして、顔をシャープにするための変形タイプの代わりに、目を大きくする変形「タイプＢ」（図５参照）が設定された場合には、目を大きくする変形タイプに対応付けられた態様で分割点Ｄが配置される。
【０１１０】
図２８は、分割点Ｄの他の配置方法の一例を示す説明図である。図２８には、目を大きくする変形タイプに対応付けられた分割点Ｄの配置の態様を示している。図２８に示した分割点Ｄの配置は、図１９に示した顔をシャープにするための変形タイプに対応付けられたものと比較して、水平分割線Ｌｈ４上に位置する６つの分割点Ｄ（Ｄ０４，Ｄ１４，Ｄ２４，Ｄ３４，Ｄ４４，Ｄ５４）が付加された配置となっている。なお、水平分割線Ｌｈ４は、目の画像のすぐ上付近に配置されている。
【０１１１】
図２９は、分割点移動テーブル４２０の内容の他の一例を示す説明図である。図２９には、目を大きくするための変形タイプと程度「中」の変形度合いとの組み合わせに対応付けられた分割点Ｄの位置の移動態様を示している。なお、図２９には、水平分割線Ｌｈ２および水平分割線Ｌｈ４（図２８）上の分割点Ｄのみに関する移動態様を抜き出して示している。図２９に示した分割点Ｄ以外の分割点Ｄはいずれも移動しないものとする。
【０１１２】
図２９に示した態様で分割点Ｄの移動が行われると、分割点Ｄ２２，Ｄ３２，Ｄ３４，Ｄ２４を頂点とする矩形の小領域（図２８でハッチングを付して示す領域）の画像は、基準線ＲＬと平行な方向に沿って拡大されることとなる。従って、対象画像ＴＩ中の目の形状が上下に大きくなる。
【０１１３】
また、上述したように、本実施例では、図５に示すユーザインターフェースを通じて希望された場合には、ユーザによる変形態様の詳細指定が行われる。この場合には、設定された変形タイプに対応付けられたパターンに従った分割点Ｄの配置（図４のステップＳ１７０）の後に、ユーザによる分割点Ｄの移動態様の指定が行われる。
【０１１４】
図３０は、ユーザによる分割点Ｄの移動態様の指定のためのユーザインターフェースの一例を示す説明図である。ユーザにより変形態様の詳細指定が希望された場合には、分割点Ｄの配置の完了後、プリンタ１００の指定取得部２１２（図１）が、表示処理部３１０に、図３０に示したユーザインターフェースを表示部１５０に表示させるよう指示する。図３０に示したユーザインターフェースには、左側に対象画像ＴＩの変形領域ＴＡ上の分割点Ｄの配置を示す画像が表示され、右側に分割点Ｄの移動態様を指定するインターフェースが配置されている。ユーザは、このユーザインターフェースを介して、各分割点ＤについてＨ方向およびＶ方向の移動量を任意に指定することができる。変形処理部２６０（図１）は、このユーザインターフェースを介して指定された移動態様で分割点Ｄを移動することにより、変形処理を行う。
【０１１５】
なお、図３０に示したユーザインターフェースでは、初期状態において、設定された変形タイプ（例えば顔をシャープにするための変形タイプ）に応じて、各分割点ＤのＨ方向およびＶ方向のデフォルトの移動量が定められており、ユーザは所望の分割点Ｄについて移動量を修正するようになっている。このようにすれば、ユーザは、デフォルトの移動量を参照しつつ、移動量を微調整して指定することができ、所望の変形タイプの画像変形を微調整した画像変形処理を実現することができる。
【０１１６】
以上説明したように、本実施例のプリンタ１００による顔形状補正印刷処理では、対象画像ＴＩ上に設定された変形領域ＴＡ内に複数の分割点Ｄが配置され、分割点Ｄ同士を結ぶ直線（水平分割線Ｌｈおよび垂直分割線Ｌｖ）を用いて変形領域ＴＡが複数の小領域に分割される。また、分割点Ｄの位置が移動され、小領域が変形されることにより変形領域ＴＡ内の画像の変形処理が実行される。このように、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡ内に分割点Ｄを配置して、配置された分割点Ｄを移動するだけで画像変形を行うことができ、多様な変形態様に対応した画像変形を、容易に、かつ効率的に実現することができる。
【０１１７】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、複数の変形タイプの中から選択・設定された変形タイプに対応付けられた配置パターンに従って分割点Ｄが配置される。そのため、顔をシャープする変形タイプや目を大きくする変形タイプ等、それぞれの変形タイプに適した分割点Ｄの配置、すなわち変形領域ＴＡの分割が行われ、各変形タイプの画像変形のさらなる容易化を実現することができる。
【０１１８】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、選択・設定された変形タイプと変形度合いとの組み合わせに対応付けられた移動態様（移動方向および移動量）で分割点Ｄが移動される。そのため、変形タイプと変形度合いとを設定すれば、それらの組み合わせに応じた画像変形が実行され、画像変形のさらなる容易化を実現することができる。
【０１１９】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡにおける分割点Ｄの配置は、基準線ＲＬに対して対称の配置となっており、基準線ＲＬに対して対称な位置関係にある２つの分割点Ｄの組み合わせのすべてが、分割点Ｄの移動後も、基準線ＲＬに対して対称な位置関係を維持するように、分割点Ｄの移動態様が定められている。そのため、本実施例の顔形状補正印刷処理では、基準線ＲＬに対して左右対称な画像変形が行われることとなり、より自然で好ましい顔画像の画像変形を実現することができる。
【０１２０】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡを構成する複数の小領域の内の一部の小領域について、変形を行わないようにすることが可能である。すなわち、図２４に示すように、両目の画像を含む小領域については、変形が行われないように、分割点Ｄの配置および移動態様を設定することが可能である。このように、両目の画像を含む小領域については変形を行わないものとすることにより、より自然で好ましい顔画像の画像変形を実現することができる。
【０１２１】
また、本実施例のプリンタ１００による顔形状補正印刷処理において、ユーザにより変形態様の詳細指定が希望された場合には、ユーザインターフェースを介した各分割点ＤについてのＨ方向およびＶ方向の移動量の指定が行われ、指定に従い分割点Ｄの位置が移動される。そのため、よりユーザの希望に近い態様での画像変形を容易に実現することができる。
【０１２２】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡの設定（図４のステップＳ１３０）の前に、検出された顔領域ＦＡの高さ方向に沿った位置調整が実行される（図４のステップＳ１４０）。そのため、対象画像ＴＩ中の顔の画像の位置に、より適合した顔領域ＦＡを設定することができ、顔領域ＦＡに基づき設定される変形領域ＴＡにおける画像変形処理の結果を、より好ましいものとすることができる。
【０１２３】
また、本実施例における顔領域ＦＡの位置調整は、参照被写体としての目の画像の基準線ＲＬに沿った位置を参照して実行される。本実施例では、目の画像を含む領域として設定された特定領域ＳＡにおいて、基準線ＲＬに沿った複数の評価位置について、基準線ＲＬに直行する方向に沿った画素値の分布の特徴を表す評価値が算出されるため、算出された評価値に基づき目の画像の基準線ＲＬに沿った位置を検出することができる。
【０１２４】
より具体的には、基準線ＲＬに直行する複数の対象画素特定線ＰＬについて評価対象画素ＴＰを選択し、評価対象画素ＴＰのＲ値の平均値を評価値として用いることで、目の画像の位置を検出することができる。
【０１２５】
また、目の画像の位置の検出は、それぞれに片目の画像が含まれるように設定された左分割特定領域ＳＡ（ｌ）と右分割特定領域ＳＡ（ｒ）とのそれぞれについて個別に行われる。そのため、目の画像の位置の検出を特定領域ＳＡ全体を対象として実行する場合と比較して、左右の目の基準線ＲＬに沿った位置ずれの影響を排除することができ、検出精度を向上させることができる。
【０１２６】
また、目の画像の位置の検出のための評価値の算出の際には、各対象画素特定線ＰＬについて、選択された複数の評価対象画素ＴＰの内、Ｒ値の大きい一部の画素を評価値の算出対象から除外するものとしている。そのため、参照被写体としての目の画像とは色の差が大きいと考えられる一部の評価対象画素ＴＰを評価値の算出対象から除外することにより、目の画像の位置検出精度をより向上させることができる。
【０１２７】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡの設定（図４のステップＳ１３０）の前に、顔領域ＦＡの傾き調整が実行される（図４のステップＳ１５０）。そのため、対象画像ＴＩ中の顔の画像の傾きに、より適合した顔領域ＦＡを設定することができ、顔領域ＦＡに基づき設定される変形領域ＴＡにおける画像変形処理の結果を、より好ましいものとすることができる。
【０１２８】
また、本実施例における顔領域ＦＡの傾き調整は、参照被写体としての両目の画像の傾きを参照して実行される。本実施例では、基準線ＲＬを種々の角度で回転させた複数の評価方向線ＥＬのそれぞれに対応付けて両目の画像を含む領域が評価特定領域ＥＳＡとして設定される。そして、各評価特定領域ＥＳＡにおいて、評価方向に沿った複数の評価位置について、評価方向に直行する方向に沿った画素値の分布の特徴を表す評価値が算出される。そのため、算出された評価値に基づき、両目の画像の傾きを検出することができる。
【０１２９】
より具体的には、各評価特定領域ＥＳＡについて、評価方向線ＥＬに直行する複数の対象画素特定線ＰＬについて評価対象画素ＴＰを選択し、評価対象画素ＴＰのＲ値の平均値を評価値として算出し、評価値の分散が最大となる評価方向を決定することで、両目の画像の傾きを検出することができる。
【０１３０】
また、両目の画像の傾き検出のための評価値の算出の際には、各対象画素特定線ＰＬについて、選択された複数の評価対象画素ＴＰの内、Ｒ値の大きい一部の画素を評価値の算出対象から除外するものとしている。そのため、参照被写体としての両目の画像とは色の差が大きいと考えられる一部の評価対象画素ＴＰを評価値の算出対象から除外することにより、両目の画像の傾き検出精度をより向上させることができる。
【０１３１】
また、本実施例のプリンタ１００による顔形状補正印刷処理では、変形領域ＴＡを構成する複数の小領域を４つの三角形領域に分割し、三角形領域単位で画像の変形処理を行っている。このとき、変形前および変形後のそれぞれについて、小領域の４つの三角形への分割は、小領域の各頂点と重心ＣＧ（ＣＧ’）とを結ぶ線分を用いて行っている。小領域の重心位置は、４つの頂点の座標から算出できる。そのため、はじめから変形領域ＴＡを三角形の小領域に分割する場合と比較して、指定する座標の数を少なくすることができ、処理の高速化を図ることができる。また、小領域を三角形に分割せずに画像の変形を行う場合には、小領域の各頂点（分割点Ｄ）の移動方向および移動量によっては、小領域が１８０度を超える内角を有する形状となって変形処理に支障をきたす可能性がある。本実施例では、小領域を三角形に分割して変形処理を行っているため、このような不都合の発生を防止することができ、処理の円滑化・安定化を図ることができる。
【０１３２】
Ｂ．その他の変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１３３】
Ｂ１．その他の変形例１：
上記実施例では、顔領域ＦＡの位置調整や傾き調整の際の評価値として、各対象画素特定線ＰＬについてのＲ値の平均値を用いているが（図９および図１５参照）、対象画素特定線ＰＬの方向（すなわち基準線ＲＬに直行する方向）に沿った画素値の分布を表す値であれば、他の値を評価値として採用することも可能である。例えば、輝度値やエッジ量の平均値を用いてもよい。参照被写体としての目の画像の部分は、輝度値やエッジ量が、周囲の肌の部分の画像とは大きく異なると考えられることから、こられの値を評価値として用いることも可能である。
【０１３４】
また、これらの値について、評価値算出の対象となる画素の平均値ではなく、累計値や、閾値以下（または以上）の値を有する画素数などを用いてもよい。例えば、各対象画素特定線ＰＬについてのＲ値の累計値や、Ｒ値が閾値以下の画素の画素数を評価値として用いてもよい。また、上記実施例では、各対象画素特定線ＰＬについて評価対象画素ＴＰの内の一部を評価値の算出に用いないものとしているが、すべての評価対象画素ＴＰを用いて評価値を算出してもよい。
【０１３５】
また、上記実施例では、黄色人種を対象とすることを前提に、評価値としてＲ値の平均値を用いているが、他の人種（白色人種や黒色人種）を対象とする場合には、他の評価値（例えば輝度や明度、Ｂ値等）が用いられるとしてもよい。
【０１３６】
Ｂ２．その他の変形例２：
上記実施例では、顔領域ＦＡの位置調整や傾き調整において、特定領域ＳＡや評価特定領域ＥＳＡにｎ本の対象画素特定線ＰＬを設定し、対象画素特定線ＰＬの位置において評価値を算出している（図９および図１５参照）。しかし、対象画素特定線ＰＬの設定本数はｎ本に固定する必要はなく、対象画像ＴＩに対する特定領域ＳＡや評価特定領域ＥＳＡの大きさに従って可変に設定されるとしてもよい。例えば、対象画素特定線ＰＬのピッチｓを固定とし、特定領域ＳＡや評価特定領域ＥＳＡの大きさに応じて対象画素特定線ＰＬの本数を設定してもよい。
【０１３７】
Ｂ３．その他の変形例３：
上記実施例では、顔領域ＦＡの傾き調整において、基準線ＲＬの方向を中心に時計回りおよび反時計回りに２０度の範囲で評価方向を設定しているが（図１５参照）、顔領域ＦＡの位置調整の際に算出された概略傾き角ＲＩの方向を中心に時計回りおよび反時計回りに２０度の範囲で評価方向を設定するとしてもよい。
【０１３８】
また上記実施例では、一定の角度αのピッチで評価方向が設定されるとしているが、複数の評価方向のピッチは一定である必要はない。例えば、基準線ＲＬの方向に近い範囲では、ピッチを細かくして評価方向を設定し、基準線ＲＬから遠い範囲では、ピッチを粗くして評価方向を設定するとしてもよい。
【０１３９】
また上記実施例では、顔領域ＦＡの傾き調整において、位置調整後の顔領域ＦＡに対応した特定領域ＳＡが初期評価特定領域ＥＳＡ（０）として設定されるとしているが、初期評価特定領域ＥＳＡ（０）は、特定領域ＳＡと独立して設定されるとしてもよい。
【０１４０】
Ｂ４．その他の変形例４：
上記実施例では、顔領域ＦＡの傾き調整において、複数の評価方向が設定され、各評価方向を表す評価方向線ＥＬに対応した評価特定領域ＥＳＡが設定される。この各評価特定領域ＥＳＡは、初期評価特定領域ＥＳＡ（０）を、各評価方向線ＥＬの基準線ＲＬからの回転角と同じ角度で回転させた領域である（図１５参照）。しかし、評価特定領域ＥＳＡは必ずしもこのような領域として設定される必要はない。例えば、各評価方向線ＥＬに対応した評価特定領域ＥＳＡは、すべて初期評価特定領域ＥＳＡ（０）と同じ領域として設定されてもよい。この場合にも、各評価方向線ＥＬと直行する対象画素特定線ＰＬについて同様に評価値としてのＲ値の平均値を算出すればよい。このようにした場合でも、評価値の分散が最大値をとる評価方向を選択すれば、画像の傾きに適合した顔領域ＦＡの傾き調整を実現することができる。
【０１４１】
Ｂ５．その他の変形例５：
上記実施例では、顔領域ＦＡの位置調整や傾き調整において、参照被写体としての目の画像の位置や傾きが検出され、検出された位置や傾きを用いて顔領域ＦＡの位置調整や傾き調整が実行される。しかし、他の画像、例えば鼻や口の画像が参照被写体として用いられるとしてもよい。
【０１４２】
また、本実施例における参照被写体の画像の位置や傾きの検出は、顔領域ＦＡの位置調整や傾き調整を目的とする場合に限らず、広く、対象画像ＴＩ中の参照被写体の画像の位置や傾きを検出する場合に適用可能である。この場合に、参照被写体は、顔の部位に限られず、任意の被写体を参照被写体として採用可能である。
【０１４３】
Ｂ６．その他の変形例６：
上記実施例では、変形領域ＴＡ（図１８参照）は長方形形状の領域として設定されるとしているが、変形領域ＴＡは他の形状、例えば楕円形状や菱形形状の領域として設定されるとしてもよい。
【０１４４】
また、上記実施例における変形領域ＴＡの小領域への分割方法（図１９および図２８参照）は、あくまで一例であり、他の分割方法を採用することも可能である。例えば、変形領域ＴＡにおける分割点Ｄの配置は任意に変更可能である。また、小領域は、長方形形状ではなく、矩形形状や多角形形状であってもよい。また、変形領域ＴＡにおける分割点Ｄの配置を、ユーザ指定に従い行うとしてもよい。
【０１４５】
Ｂ７．その他の変形例７：
上記実施例において、変形領域ＴＡの一部が対象画像ＴＩからはみ出す場合もある。また、その場合に、一部の分割点Ｄが対象画像ＴＩ上に配置できない場合がある。一部の分割点Ｄが対象画像ＴＩ上に配置できない場合には、当該分割点Ｄの位置を定義するための水平分割線Ｌｈおよび垂直分割線Ｌｖ（図１９参照）を削除して、残りの水平分割線Ｌｈおよび垂直分割線Ｌｖにより定義される分割点Ｄのみを用いて変形領域ＴＡの小領域への分割を実行するとしてもよい。あるいは、一部の分割点Ｄが対象画像ＴＩ上に配置できない場合には、顔形状補正を実行しないものとしてもよい。
【０１４６】
Ｂ８．その他の変形例８：
上記実施例において、顔形状補正印刷処理（図３）の内容はあくまで一例であり、各ステップの順番を変更したり、一部のステップの実行を省略したりしてもよい。例えば、顔形状補正（図３のステップＳ１００）の前に、印刷処理の内の解像度変換や色変換（図２６のステップＳ２１０やＳ２２０）が実行されるとしてもよい。
【０１４７】
また、顔領域ＦＡの位置調整（図４のステップＳ１４０）と顔領域ＦＡの傾き調整（図４のステップＳ１５０）との順番を逆にしてもよい。また、これらの処理の一方のみが実行され、他方の処理は省略されるとしてもよい。また、顔領域ＦＡの検出（図４のステップＳ１３０）の直後に変形領域ＴＡの設定（図４のステップＳ１６０）が実行され、設定された変形領域ＴＡを対象に同様の位置調整や傾き調整が行われるとしてもよい。この場合にも、変形領域ＴＡは少なくとも顔の一部の画像を含む領域であるため、顔の画像を含む領域の位置調整や傾き調整が行われるということができる。
【０１４８】
また上記実施例では、顔領域ＦＡの検出（図４のステップＳ１３０）が実行されるが、顔領域ＦＡの検出の代わりに、例えばユーザ指定を介した顔領域ＦＡの情報の取得が行われるとしてもよい。
【０１４９】
Ｂ９．その他の変形例９：
上記実施例では、画像処理装置としてのプリンタ１００による顔形状補正印刷処理（図３）を説明したが、顔形状補正印刷処理は例えば、顔形状補正（図３のステップＳ１００）がパーソナルコンピュータにより実行され、印刷処理（ステップＳ２００）のみがプリンタにより実行されるとしてもよい。また、プリンタ１００はインクジェットプリンタに限らず、他の方式のプリンタ、例えばレーザプリンタや昇華型プリンタであるとしてもよい。
【０１５０】
Ｂ１０．その他の変形例１０：
上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【０１５１】
【図１】本発明の第１実施例における画像処理装置としてのプリンタ１００の構成を概略的に示す説明図である。
【図２】画像の一覧表示を含むユーザインターフェースの一例を示す説明図である。
【図３】本実施例のプリンタ１００による顔形状補正印刷処理の流れを示すフローチャートである。
【図４】本実施例における顔形状補正処理の流れを示すフローチャートである。
【図５】画像変形のタイプおよび度合いを設定するためのユーザインターフェースの一例を示す説明図である。
【図６】顔領域ＦＡの検出結果の一例を示す説明図である。
【図７】本実施例における顔領域ＦＡの高さ方向の位置調整処理の流れを示すフローチャートである。
【図８】特定領域ＳＡの一例を示す説明図である。
【図９】評価値の算出方法の一例を示す説明図である。
【図１０】評価対象画素ＴＰの選択方法の一例を示す説明図である。
【図１１】高さ基準点Ｒｈの決定方法の一例を示す説明図である。
【図１２】概略傾き角ＲＩの算出方法の一例を示す説明図である。
【図１３】顔領域ＦＡの高さ方向の位置調整方法の一例を示す説明図である。
【図１４】本実施例における顔領域ＦＡの傾き調整処理の流れを示すフローチャートである。
【図１５】顔領域ＦＡの傾き調整のための評価値の算出方法の一例を示す説明図である。
【図１６】各評価方向についての評価値の分散の算出結果の一例を示す説明図である。
【図１７】顔領域ＦＡの傾き調整方法の一例を示す説明図である。
【図１８】変形領域ＴＡの設定方法の一例を示す説明図である。
【図１９】変形領域ＴＡの小領域への分割方法の一例を示す説明図である。
【図２０】分割点移動テーブル４２０の内容の一例を示す説明図である。
【図２１】分割点移動テーブル４２０に従った分割点Ｄの位置の移動の一例を示す説明図である。
【図２２】変形処理部２６０による画像の変形処理方法の概念を示す説明図である。
【図２３】三角形領域における画像の変形処理方法の概念を示す説明図である。
【図２４】本実施例における顔形状補正の態様を示す説明図である。
【図２５】顔形状補正後の対象画像ＴＩが表示された表示部１５０の状態の一例を示す説明図である。
【図２６】本実施例における補正画像印刷処理の流れを示すフローチャートである。
【図２７】分割点移動テーブル４２０の内容の他の一例を示す説明図である。
【図２８】分割点Ｄの他の配置方法の一例を示す説明図である。
【図２９】分割点移動テーブル４２０の内容の他の一例を示す説明図である。
【図３０】ユーザによる分割点Ｄの移動態様の指定のためのユーザインターフェースの一例を示す説明図である。
【符号の説明】
【０１５２】
１００…プリンタ
１１０…ＣＰＵ
１２０…内部メモリ
１４０…操作部
１５０…表示部
１６０…プリンタエンジン
１７０…カードインターフェース
１７２…カードスロット
２００…顔形状補正部
２１０…変形態様設定部
２１２…指定取得部
２２０…顔領域検出部
２３０…顔領域調整部
２３２…特定領域設定部
２３４…評価部
２３６…決定部
２４０…変形領域設定部
２５０…変形領域分割部
２６０…変形処理部
３１０…表示処理部
３２０…印刷処理部
４１０…分割点配置パターンテーブル
４２０…分割点移動テーブル
【図１】
2008242806.tif 000005
【図２】
2008242806.tif 000006
【図３】
2008242806.tif 000007
【図４】
2008242806.tif 000008
【図５】
2008242806.tif 000009
【図６】
2008242806.tif 000010
【図７】
2008242806.tif 000011
【図８】
2008242806.tif 000012
【図９】
2008242806.tif 000013
【図１０】
2008242806.tif 000014
【図１１】
2008242806.tif 000015
【図１２】
2008242806.tif 000016
【図１３】
2008242806.tif 000017
【図１４】
2008242806.tif 000018
【図１５】
2008242806.tif 000019
【図１６】
2008242806.tif 000020
【図１７】
2008242806.tif 000021
【図１８】
2008242806.tif 000022
【図１９】
2008242806.tif 000023
【図２０】
2008242806.tif 000024
【図２１】
2008242806.tif 000025
【図２２】
2008242806.tif 000026
【図２３】
2008242806.tif 000027
【図２４】
2008242806.tif 000028
【図２５】
2008242806.tif 000029
【図２６】
2008242806.tif 000030
【図２７】
2008242806.tif 000031
【図２８】
2008242806.tif 000032
【図２９】
2008242806.tif 000033
【図３０】
2008242806.tif 000034