(57)【要約】【課題】顔画像に対する補正を簡便に行う。【解決手段】顔画像を撮像して取得する撮像装置１００であって、取得された顔画像における顔の特徴部の位置を検出して、検出された顔の特徴部の位置を基準とした、顔の擬似輪郭線を生成して、生成された擬似輪郭線に基づいて、顔画像に対して補正処理を行う画像処理部４を備える。【選択図】図１
2010152871.tif 000002
【特許請求の範囲】
【請求項１】
顔画像を取得する取得手段と、
前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する特徴部位検出手段と、
前記特徴部位検出手段によって検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する輪郭生成手段と、
前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う補正手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記特徴部位検出手段は、
前記取得手段によって取得された顔画像から顔の目の位置を検出する目位置検出手段を備え、
前記輪郭生成手段は、前記目位置検出手段によって検出された目の位置を基準として、当該顔の擬似輪郭線を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記輪郭生成手段は、前記目位置検出手段によって検出された目の位置に基づいて顔の傾き及び左右目間距離を算出し、この算出結果に基づいて当該顔の擬似輪郭線を生成することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記特徴部位検出手段は、更に、前記特徴部の大きさを検出し、
前記輪郭生成手段は、前記特徴部位検出手段によって検出された前記特徴部の位置及び大きさに基づいて、当該顔の擬似輪郭線を生成することを特徴とする請求項１〜３の何れか一項に記載の画像処理装置。
【請求項５】
前記補正手段は、前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像を変形させる処理を行うことを特徴とする請求項１〜４の何れか一項に記載の画像処理装置。
【請求項６】
前記補正手段は、前記顔画像中の画素の各々について前記擬似輪郭線との距離をそれぞれ算出し、算出された当該距離に応じて各画素における移動量を決定し、決定された当該移動量に応じて前記顔画像を変形させる処理を実行することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記補正手段による前記補正処理の処理強度を設定する設定手段を更に備え、
前記補正手段は、更に、前記設定手段によって設定された前記処理強度に応じて前記補正処理を行うことを特徴とする請求項１〜６の何れか一項に記載の画像処理装置。
【請求項８】
顔画像を取得する取得手段を備える画像処理装置に、
前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する処理と、
検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する処理と、
生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う処理と、
を実行させることを特徴とする画像処理方法。
【請求項９】
顔画像を取得する取得手段を備える画像処理装置のコンピュータを、
前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する特徴部位検出手段、
前記特徴部位検出手段によって検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する輪郭生成手段、
前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う補正手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、取得した顔画像に対して補正処理を行う画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、入力された画像データの顔の一部の領域を補正するプリンタが知られている（例えば、特許文献１参照）。また、被写体を撮像して当該被写体の画像データを補正する写真シール販売機も知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２４２９２１号公報
【特許文献２】特開２００５−２７７７７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１、２等にあっては、被写体の画像データを修正して目を大きくしたり、顔の輪郭を少し小さくしたりする場合、ユーザがタッチペン等を操作して修正したい場所を指定しなければならず作業が頻雑であった。
【０００５】
そこで、本発明の課題は、顔画像に対する補正を簡便に行うことができる画像処理装置、画像処理方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、請求項１に記載の発明の画像処理装置は、
顔画像を取得する取得手段と、前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する特徴部位検出手段と、前記特徴部位検出手段によって検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する輪郭生成手段と、前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う補正手段と、を備えたことを特徴としている。
【０００７】
請求項２に記載の発明は、請求項１に記載の画像処理装置において、
前記特徴部位検出手段は、前記取得手段によって取得された顔画像から顔の目の位置を検出する目位置検出手段を備え、前記輪郭生成手段は、前記目位置検出手段によって検出された目の位置を基準として、当該顔の擬似輪郭線を生成することを特徴としている。
【０００８】
請求項３に記載の発明は、請求項２に記載の画像処理装置において、
前記輪郭生成手段は、前記目位置検出手段によって検出された目の位置に基づいて顔の傾き及び左右目間距離を算出し、この算出結果に基づいて当該顔の擬似輪郭線を生成することを特徴としている。
【０００９】
請求項４に記載の発明は、請求項１〜３の何れか一項に記載の画像処理装置において、
前記特徴部位検出手段は、更に、前記特徴部の大きさを検出し、前記輪郭生成手段は、前記特徴部位検出手段によって検出された前記特徴部の位置及び大きさに基づいて、当該顔の擬似輪郭線を生成することを特徴としている。
【００１０】
請求項５に記載の発明は、請求項１〜４の何れか一項に記載の画像処理装置において、
前記補正手段は、前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像を変形させる処理を行うことを特徴としている。
【００１１】
請求項６に記載の発明は、請求項５に記載の画像処理装置において、
前記補正手段は、前記顔画像中の画素の各々について前記擬似輪郭線との距離をそれぞれ算出し、算出された当該距離に応じて各画素における移動量を決定し、決定された当該移動量に応じて前記顔画像を変形させる処理を実行することを特徴としている。
【００１２】
請求項７に記載の発明は、請求項１〜６の何れか一項に記載の画像処理装置において、
前記補正手段による前記補正処理の処理強度を設定する設定手段を更に備え、前記補正手段は、更に前記設定手段によって設定された前記処理強度に応じて前記補正処理を行うことを特徴としている。
【００１３】
請求項８に記載の発明の画像処理方法は、
顔画像を取得する取得手段を備える画像処理装置に、前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する処理と、検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する処理と、生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う処理と、を実行させることを特徴としている。
【００１４】
請求項９に記載の発明のプログラムは、
顔画像を取得する取得手段を備える画像処理装置のコンピュータを、前記取得手段によって取得された顔画像における顔の特徴部の位置を検出する特徴部位検出手段、前記特徴部位検出手段によって検出された前記特徴部の位置を基準とした、顔の擬似輪郭線を生成する輪郭生成手段、前記輪郭生成手段によって生成された擬似輪郭線に基づいて、前記顔画像に対して補正処理を行う補正手段、として機能させることを特徴としている。
【発明の効果】
【００１５】
本発明によれば、顔画像に対する補正を簡便に行うことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明を適用した一実施形態の撮像装置の概略構成を示すブロック図である。
【図２】図１の撮像装置による目位置検出処理の一例を説明するための図である。
【図３】図１の撮像装置により生成された疑似輪郭線の一例を示す図である。
【図４】画像の補正処理を説明するための図である。
【図５】図１の撮像装置による補正処理の一例を説明するための図である。
【図６】図５の補正処理における顔画像の一部分の移動量を模式的に示す図である。
【図７】図１の撮像装置による画像補正処理に係る動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
図１は、本発明を適用した一実施形態の撮像装置１００の概略構成を示すブロック図である。
【００１８】
本実施形態の撮像装置１００は、顔画像を取得して当該顔画像における顔の特徴部を検出し、検出された特徴部に基づいて顔の擬似輪郭線ｌ１を生成して、当該擬似輪郭線ｌ１に基づいて顔画像に対して補正処理を行う。
具体的には、図１に示すように、撮像装置１００は、撮像レンズ部１、電子撮像部２と、撮像処理部３と、画像処理部４と、記録媒体５と、表示部６と、表示処理部７と、操作入力部８と、データメモリ９と、プログラムメモリ１０と、ＣＰＵ１１とを備えている。
【００１９】
撮像レンズ部１は、複数のレンズから構成され、ズームレンズ１ａやフォーカスレンズ１ｂ等を備えている。また、撮像レンズ部１は、図示は省略するが、被写体の撮像の際に、ズームレンズ１ａを光軸方向に移動させるズーム駆動部、フォーカスレンズ１ｂを光軸方向に移動させる合焦駆動部等を備えている。
【００２０】
電子撮像部２は、被写体を撮像して顔画像の画像データを生成する。具体的には、電子撮像部２は、ＣＣＤ（Charge Coupled Device）やＣＭＯＳ（Complementary Metal-oxide Semiconductor）等から構成され、撮像レンズ部１の各種レンズを通過した被写体像を二次元の画像信号に変換する。
【００２１】
撮像処理部３は、図示は省略するが、タイミング発生器、垂直ドライバなどを備えている。そして、撮像処理部３は、タイミング発生器、垂直ドライバにより電子撮像部２を走査駆動させて、所定周期毎に被写体像を電子撮像部２により二次元の画像信号に変換させ、当該電子撮像部２の撮像領域から１画面分ずつ画像フレームを読み出して画像処理部４に出力する。
ここで、撮像レンズ部１、電子撮像部２及び撮像処理部３は、顔画像の画像データを取得する取得手段を構成している。
【００２２】
また、撮像処理部３は、ＡＥ（自動露出処理）、ＡＦ（自動合焦処理）、ＡＷＢ（自動ホワイトバランス）の制御などを行う。
【００２３】
画像処理部４は、撮像処理部３から転送された画像フレームに基づいて、画質調整処理や解像度変換処理や画像圧縮処理等を行って表示用画像データや記録用画像データを生成する。具体的には、画像処理部４は、撮像処理部３から転送された画像フレームのアナログ値の信号に対してＲＧＢの各色成分毎に適宜ゲイン調整した後に、サンプルホールド回路（図示略）でサンプルホールドして、Ａ／Ｄ変換器（図示略）でデジタルデータに変換して、カラープロセス回路（図示略）で画素補間処理及びγ補正処理を含むカラープロセス処理を行った後、デジタル値の輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒを生成する。
カラープロセス回路から出力される輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒは、図示しないＤＭＡコントローラを介して、バッファメモリとして使用されるデータメモリ９にＤＭＡ転送される。
【００２４】
また、画像処理部４は、ＣＰＵ１１の制御下にて、電子撮像部２により生成された画像フレームから所定の顔検出方法を用いて顔を検出する顔検出部４ａを具備している。
顔検出部４ａは、撮像処理部３から転送された顔画像の画像フレーム内から顔画像領域を検出し、その検出した各領域内から目、鼻、口等に相当する特徴部（顔パーツ）を検出する。この顔検出処理は、公知の技術であるので、ここでは詳細な説明を省略する。
ここで、ＣＰＵ１１及び顔検出部４ａは、電子撮像部２及び撮像処理部３によって生成された顔画像の画像フレーム内の顔の特徴部の位置を検出する特徴部位検出手段を構成している。
【００２５】
また、顔検出部４ａは、ＣＰＵ１１の制御下にて、顔画像の画像フレームから検出された顔の目の位置を検出する目位置検出部４ｂを具備している。
目位置検出部４ｂは、顔の左右両目の各々の中心、例えば、黒目の中心の座標（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）を検出する（図２参照）。
ここで、ＣＰＵ１１及び目位置検出部４ｂは、顔画像から顔の目の位置を検出する目位置検出手段を構成している。
【００２６】
また、画像処理部４は、ＣＰＵ１１の制御下にて、顔の擬似輪郭線ｌ１を生成する輪郭生成部４ｃを具備している。
輪郭生成部４ｃは、顔の特徴部として目位置検出部４ｂにより検出された左右両目の各々の位置（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）に基づいて、当該顔の輪郭に沿って描かれるであろう理想的な擬似輪郭線ｌ１を生成する。具体的には、輪郭生成部４ｃは、目位置検出部４ｂにより検出された左右両目の各々の位置（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）に基づいて、顔の傾き及び左右目間距離を算出し、この算出結果に基づいて当該顔の擬似輪郭線ｌ１を生成する。即ち、輪郭生成部４ｃは、下記式（１）に基づいて、左右両目のｘ軸方向の長さ「delta_x」及び左右両目のｙ軸方向の長さ「delta_y」の絶対値からｘ軸に対する顔の傾き角度θを算出する（図３（ａ）参照）。
【数１】
2010152871.tif 000003
ここで、delta_xは、「rightEyeX - leftEyeX」であり、delta_yは、「rightEyeY - leftEyeY」である。
また、輪郭生成部４ｃは、下記式（２）に基づいて、左右両目のｘ軸方向の長さ「delta_x」及び左右両目のｙ軸方向の長さ「delta_y」から左右目間距離（dis_lr_eye）を算出する（図２参照）。
【数２】
2010152871.tif 000004
また、輪郭生成部４ｃは、下記式（３）に基づいて、左右両目の中心座標（wcx, wcy）、顔の傾き角度θ及び左右目間距離（dis_lr_eye）から擬似輪郭が楕円であると想定した擬似輪郭線ｌ１を生成する（図３（ａ）参照）。
【数３】
2010152871.tif 000005
ここで、aは、左右目間距離「dis_lr_eye」である。
このように、ＣＰＵ１１及び輪郭生成部４ｃは、顔検出部４ａによって検出された特徴部（例えば、目）に基づいて、顔の擬似輪郭線ｌ１を生成する輪郭生成手段を構成している。
【００２７】
また、画像処理部４は、ＣＰＵ１１の制御下にて、輪郭生成部４ｃによって生成された擬似輪郭線ｌ１に基づいて、顔画像に対して補正処理を行う。具体的には、画像処理部４は、輪郭生成部４ｃによって生成された擬似輪郭線ｌ１に基づいて、顔画像の左右両目よりも下側部分を変形させるワープ処理を行う。
即ち、画像処理部４は、顔画像中の画素の各々について擬似輪郭線ｌ１との距離をそれぞれ算出し、算出された当該距離に応じてワープ処理の際の各画素における移動量を規定する移動量マップmap(x, y)を生成する移動量マップ生成部４ｄを具備している。
ここで、移動量マップmap(x, y)は、入力された顔画像と同じサイズ（例えば、ＶＧＡサイズの顔画像であれば、６４０×４８０画素）に設定されており、各画素についてｘ軸方向及びｙ軸方向のそれぞれの移動量を規定するものである。なお、本実施形態にあっては、計算量を削減して処理の高速化を図る上で、各画素のｘ軸方向の移動量のみを規定する移動量マップを生成する。
また、ワープ処理とは、各画素における移動量を規定する移動量マップmap(x, y)（図４（ａ）参照）に基づいて、入力画像（図４（ｂ）参照）の各画素を移動させて所望の出力画像（図４（ｃ）参照）を得る処理である。例えば、図４（ａ）〜図４（ｃ）に示すように、ある一の画素（例えば、黒で塗りつぶした丸印で示す）の移動量を規定するmap(x, y) = (1.4, 0)（図４（ａ）参照）を用いて、入力画像（図４（ｂ）参照）の対応する画素をｘ軸方向に１．４画素移動させた画素（例えば、白抜きの丸印で示す）を含んでなる出力画像（図４（ｃ）参照）を取得する。
【００２８】
移動量マップ生成部４ｄは、ワープ処理に係る各画素のｘ軸方向の移動量を、擬似輪郭線ｌ１からのｘ軸方向の距離（deltaX）に応じて変化させるように、即ち、擬似輪郭線ｌ１からｘ軸方向に離れる画素ほど当該移動量が小さくなるように算出する（図５及び図６参照）。
具体的には、移動量マップ生成部４ｄは、下記式（４）に基づいて、顔画像中の画素の各々について擬似輪郭線ｌ１からのｘ軸方向の距離（deltaX）をそれぞれ算出した後、下記式（５）の指数関数に基づいて、式（４）を用いて算出されたｘ軸方向の距離（deltaX）及びガウス分布の分散σXからワープ処理における各画素のｘ軸方向の移動量に係るｘ軸係数（gw_x）を算出する（図５参照）。
【数４】
2010152871.tif 000006
【数５】
2010152871.tif 000007
ここで、分散σXは、左右目間距離（dis_lr_eye）に任意の調整用係数kxを乗算した値に比例する値である。つまり、分散σXは、左右目間距離（dis_lr_eye）に応じて変化する値であり、これによって、左右目間距離（dis_lr_eye）、即ち、顔の大きさに応じて自動的にｘ軸係数（gw_x）を調整することができる。
なお、調整用係数kxは、ユーザによる操作入力部８の所定操作に基づいて入力された画像補正レベル（処理強度；後述）に応じて設定されるようにしても良い。
【００２９】
移動量マップ生成部４ｄは、ワープ処理に係る各画素のｘ軸方向の移動量を、顎と目の中間位置を通過する中間線ｍからのｙ軸方向の距離（deltaY）に応じて変化させるように、即ち、中間線ｍからｙ軸方向に離れる画素ほど当該移動量が小さくなるように算出する。
具体的には、移動量マップ生成部４ｄは、顎と目の中間位置を通過する中間線ｍからのｙ軸方向の距離（deltaY）を算出した後、下記式（６）の指数関数に基づいて、中間線ｍからのｙ軸方向の距離（deltaY）及びガウス分布の分散σYからワープ処理における各画素のｘ軸方向の移動量に係るｙ軸係数（gw_y）を算出する（図５参照）。
【数６】
2010152871.tif 000008
ここで、分散σYは、左右目間距離（dis_lr_eye）に任意の調整用係数kyを乗算した値に比例する値である。つまり、分散σYは、左右目間距離（dis_lr_eye）に応じて変化する値であり、これによって、左右目間距離（dis_lr_eye）、即ち、顔の大きさに応じて自動的にｙ軸係数（gw_y）を調整することができる。
なお、調整用係数kyは、ユーザによる操作入力部８の所定操作に基づいて入力された画像補正レベル（処理強度；後述）に応じて設定されるようにしても良い。
【００３０】
また、移動量マップ生成部４ｄは、ワープ処理に係る各画素の左右両目の中心座標（wcx, wcy）に対するｘ軸方向の位置に応じて移動量マップmap(x, y)を生成する。
具体的には、ワープ処理に係る各画素のｘ座標が左右両目の中心のｘ座標よりも大きい場合（x ＞ wcx）、即ち、顔の左側に係る画素に対しては、移動量マップ生成部４ｄは、下記式（７）に基づいて、算出されたｘ軸係数（gw_x）とｙ軸係数（gw_y）を乗算した値を当該画素のｘ座標から減算することにより移動量マップmap(x, y)を生成する。一方、ワープ処理に係る各画素のｘ座標が左右両目の中心のｘ座標よりも小さい場合（x ＜ wcx）、即ち、顔の右側に係る画素に対しては、移動量マップ生成部４ｄは、下記式（８）に基づいて、算出されたｘ軸係数（gw_x）とｙ軸係数（gw_y）を乗算した値と当該画素のｘ座標を加算することにより移動量マップmap(x, y)を生成する。
【数７】
2010152871.tif 000009
なお、ワープ処理に係る各画素のｘ座標が左右両目の中心のｘ座標と等しい場合、即ち、顔画像のｘ軸方向中央の画素に対しては、移動量マップmap(x, y)を生成しないか、或いは、入力画像と出力画像とで画素位置が同じとなるように移動量マップmap(x, y)を生成する。
このように、擬似輪郭線ｌ１からｘ軸方向に離れる画素ほどｘ軸係数（gw_x）が小さくなることから、移動量マップ生成部４ｄは、擬似輪郭線ｌ１からｘ軸方向に離れる画素ほど移動量が小さくされた移動量マップmap(x, y)を生成することができる。
なお、図６にあっては、擬似輪郭線ｌ１の左頬部及びその周辺の一部分Ａの画素の移動量を模式的に矢印の長さ及び向きで表しており、当該矢印の長さが長いほど移動量が大きくされているものとする。
【００３１】
また、画像処理部４は、移動量マップ生成部４ｄにより生成された移動量マップmap(x, y)に規定された各画素の移動量に応じて当該各画素のワープ処理を行う。これにより、例えば、ｘ座標の値が左右両目の中心よりも大きい画素（x ＞ wcx）に対しては、各画素の移動量に応じて左側に位置するようにワープ処理を行い、且つ、ｘ座標の値が左右両目の中心よりも小さい画素（x ＜ wcx）に対しては、各画素の移動量に応じて右側に位置するようにワープ処理を行うことで、顔の左右両目よりも下側部分をより細くするように顔画像を変形させる。
なお、ワープ処理は、ユーザによる操作入力部８の所定操作に基づいて設定された画像補正レベルに応じて顔画像の変形の程度を変更するようになっている。また、ワープ処理は、移動量マップmap(x, y)に基づいて顔画像を変形させる処理の一例であって、これに限られるものではない。
このように、ＣＰＵ１１及び画像処理部４は、擬似輪郭線ｌ１に基づいて、顔画像に対して補正処理を行う補正手段を構成している。
【００３２】
記録媒体５は、例えば、不揮発性メモリ（フラッシュメモリ）等により構成され、画像処理部４のＪＰＥＧ圧縮部（図示略）により符号化された撮像画像の記録用画像データを記憶する。また、記録媒体５は、画像補正処理が実行されることにより生成された画像補正後の画像の記録用画像データを記憶する。
【００３３】
表示処理部７は、データメモリ９に一時的に記憶されている表示用データを読み出して表示部６に表示させる制御を行う。具体的には、表示処理部７は、ＶＲＡＭ、ＶＲＡＭコントローラ、デジタルビデオエンコーダなどを備えている。そして、デジタルビデオエンコーダは、ＣＰＵ１１の制御下にてデータメモリ９から読み出されてＶＲＡＭ（図示略）に記憶されている輝度信号Ｙ及び色差信号Ｃｂ，Ｃｒを、ＶＲＡＭコントローラを介してＶＲＡＭから定期的に読み出して、これらのデータを元にビデオ信号を発生して表示部６に出力する。
【００３４】
表示部６は、表示処理部７からのビデオ信号に基づいて電子撮像部２により撮像された画像などを表示画面に表示する。具体的には、表示部６は、撮像モードにて、電子撮像部２による被写体の撮像により生成された複数の画像フレームに基づいてライブビュー画像を表示したり、本撮像画像として撮像されたレックビュー画像を表示する。
【００３５】
操作入力部８は、当該撮像装置１００の所定操作を行うためのものである。具体的には、操作入力部８は、図示は省略するが、被写体の撮影指示に係るシャッターボタン、機能選択や表示設定等に係るメニュー画面の表示指示に係るメニューボタン、動作モード等の選択や決定指示に係る選択決定ボタン、ズーム量の調整指示に係るズームボタン等を備え、これらのボタンの操作に応じて所定の操作信号をＣＰＵ１１に出力する。
【００３６】
また、操作入力部８の選択決定ボタンは、ユーザによるメニューボタンの所定操作に基づいて表示部６に表示されたメニュー画面にて、画像補正処理における画像補正レベル（例えば、レベル１〜３等；処理強度）の設定指示を入力する。そして、当該操作入力部８の操作に応じて所定の設定信号をＣＰＵ１１に出力する。
ＣＰＵ１１は、入力された設定信号に従って、画像補正処理における画像補正レベルを設定する。
ここで、操作入力部８及びＣＰＵ１１は、画像補正処理の処理強度を設定する設定手段を構成している。
【００３７】
ＣＰＵ１１は、撮像装置１００の各部を制御するものである。具体的には、ＣＰＵ１１は、プログラムメモリ１０に記憶された撮像装置１００用の各種処理プログラムに従って各種の制御動作を行うものである。
【００３８】
データメモリ９は、例えば、フラッシュメモリ等により構成され、ＣＰＵ１１によって処理されるデータ等を一時記憶する。
【００３９】
プログラムメモリ１０は、ＣＰＵ１１の動作に必要な各種プログラムやデータを記憶している。
このプログラムは、後述する顔検出制御処理ルーチン、目位置検出制御処理ルーチン、輪郭生成制御処理ルーチン、補正制御処理ルーチンを含む。
ここでいうルーチンとは、コンピュータのプログラムの部分をなし、ある機能をもった一連の命令群のことである。
【００４０】
顔検出制御処理ルーチンは、電子撮像部２により生成された顔画像の画像フレームから顔の目、鼻、口等に相当する特徴部（顔パーツ）を検出させ、当該顔を顔検出部４ａに検出させる処理に係る機能をＣＰＵ１１に実現させるための命令群を含む。
【００４１】
目位置検出制御処理ルーチンは、顔検出部４ａにより検出された顔の目の位置を目位置検出部４ｂに検出させる処理に係る機能をＣＰＵ１１に実現させるための命令群を含む。
【００４２】
輪郭生成制御処理ルーチンは、顔検出部４ａによって検出された左右の目等の顔の特徴部に基づいて、顔の擬似輪郭線ｌ１を輪郭生成部４ｃに生成させる処理に係る機能をＣＰＵ１１に実現させるための命令群を含む。具体的には、この輪郭生成制御処理ルーチンにより、ＣＰＵ１１は、目位置検出部４ｂによって検出された目の位置に基づいて顔の傾き及び左右目間距離を輪郭生成部４ｃに算出させ、この算出結果に基づいて当該顔の擬似輪郭線ｌ１を輪郭生成部４ｃに生成させる。
【００４３】
補正制御処理ルーチンは、輪郭生成部４ｃによって生成された擬似輪郭線ｌ１に基づいて、顔画像に対する補正処理を画像処理部４に行わせる処理に係る機能をＣＰＵ１１に実現させるための命令群を含む。具体的には、この補正制御処理ルーチンにより、ＣＰＵ１１は、輪郭生成部４ｃによって生成された擬似輪郭線ｌ１に基づいて、顔画像を変形させるワープ処理を画像処理部４に行わせる。即ち、ＣＰＵ１１は、顔画像中の画素の各々について擬似輪郭線ｌ１との距離をそれぞれ画像処理部４の移動量マップ生成部４ｄに算出させ、算出された当該距離に応じて各画素における移動量を規定する移動量マップを移動量マップ生成部４ｄに生成させ、当該移動量マップの移動量に応じて顔画像のワープ処理を画像処理部４に行わせる。
【００４４】
次に、撮像装置１００による画像処理方法に係る画像補正処理について図７を参照して説明する。
図７は、画像補正処理に係る動作の一例を示すフローチャートである。
【００４５】
画像補正処理は、ユーザによる操作入力部８の所定操作に基づいて、メニュー画面にて画像補正モードが選択された場合に実行される処理である。
図７に示すように、先ず、ＣＰＵ１１は、ユーザによる操作入力部８のシャッターボタンの所定操作に基づいて、撮像処理部３に合焦条件や露出条件やホワイトバランスを調整させて、電子撮像部２に被写体となる顔画像を撮影させる処理を実行する（ステップＳ１）。これにより、撮像処理部３は、電子撮像部２の撮像領域から顔画像に係る画像フレームを読み出して画像処理部４に出力する。
【００４６】
ＣＰＵ１１は、顔検出制御処理ルーチンにより、顔画像の画像フレームから顔の目、鼻、口等に相当する特徴部（顔パーツ）を検出させて、当該特徴部から顔を顔検出部４ａに検出させる顔検出処理を実行する（ステップＳ２）。
続けて、ＣＰＵ１１は、目位置検出制御処理ルーチンにより、顔検出部４ａにより検出された顔の左右両目の各々の中心の座標（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）を目位置検出部４ｂに検出させる処理を実行する（ステップＳ３）。
【００４７】
次に、ＣＰＵ１１は、輪郭生成制御処理ルーチンにより、式（１）に基づいて、左右両目のｘ軸方向の長さ「delta_x( = rightEyeX - leftEyeX)」及び左右両目のｙ軸方向の長さ「delta_y( = rightEyeY - leftEyeY)」の絶対値からｘ軸に対する顔の傾き角度θを輪郭生成部４ｃに算出させるとともに、下記式（２）に基づいて、左右両目のｘ軸方向の長さ「delta_x」及び左右両目のｙ軸方向の長さ「delta_y」から左右目間距離（dis_lr_eye）を輪郭生成部４ｃに算出させる（ステップＳ４）。
【数８】
2010152871.tif 000010
【数９】
2010152871.tif 000011
続けて、ＣＰＵ１１は、式（３）に基づいて、左右両目の中心座標（wcx, wcy）、顔の傾き角度θ及び左右目間距離（dis_lr_eye）から擬似輪郭線ｌ１を輪郭生成部４ｃに生成させる（ステップＳ５）。
【数１０】
2010152871.tif 000012
【００４８】
次に、ＣＰＵ１１は、補正制御処理ルーチンにより、顔画像中の画素の各々について擬似輪郭線ｌ１との距離を移動量マップ生成部４ｄにそれぞれ算出させ、算出された当該距離に応じて各画素における移動量を規定する移動量マップmap(x, y)を移動量マップ生成部４ｄに生成させる（ステップＳ６）。
具体的には、ＣＰＵ１１は、先ず、式（４）に基づいて、顔画像中の画素の各々について擬似輪郭線ｌ１からのｘ軸方向の距離（deltaX）をそれぞれ移動量マップ生成部４ｄに算出させた後、式（５）の指数関数に基づいて、ｘ軸方向の距離（deltaX）及びガウス分布の分散σXから各画素のｘ軸方向の移動量に係るｘ軸係数（gw_x）を移動量マップ生成部４ｄに算出させる。
【数１１】
2010152871.tif 000013
【数１２】
2010152871.tif 000014
続けて、ＣＰＵ１１は、顎と目の中間位置を通過する中間線ｍからのｙ軸方向の距離（deltaY）を移動量マップ生成部４ｄに算出させた後、式（６）の指数関数に基づいて、中間線ｍからのｙ軸方向の距離（deltaY）及びガウス分布の分散σYから各画素のｘ軸方向の移動量に係るｙ軸係数（gw_y）を移動量マップ生成部４ｄに算出させる。
【数１３】
2010152871.tif 000015
そして、ＣＰＵ１１は、ワープ処理に係る各画素のｘ座標が左右両目の中心のｘ座標よりも大きい場合（x ＞ wcx）、式（７）に基づいて、ｘ軸係数（gw_x）とｙ軸係数（gw_y）を乗算した値を当該画素のｘ座標から減算させることにより移動量マップmap(x, y)を移動量マップ生成部４ｄに生成させる一方で、各画素のｘ座標が左右両目の中心のｘ座標よりも小さい場合（x ＜ wcx）、式（８）に基づいて、ｘ軸係数（gw_x）とｙ軸係数（gw_y）を乗算した値と当該画素のｘ座標を加算させることにより移動量マップmap(x, y)を移動量マップ生成部４ｄに生成させる。
【数１４】
2010152871.tif 000016
【００４９】
次に、ＣＰＵ１１は、移動量マップmap(x, y)に規定された各画素の移動量に応じて当該各画素についてのワープ処理を画像処理部４に行わせ、ｘ座標の値が左右両目の中心よりも大きい画素（x ＞ wcx）は、各画素の移動量に応じて左側に移動させ、且つ、ｘ座標の値が左右両目の中心よりも小さい画素（x ＜ wcx）は、各画素の移動量に応じて右側に移動させることで、当該顔画像を補正する（ステップＳ７）。
【００５０】
その後、ＣＰＵ１１は、ワープ処理により補正された画像の画像データを記録媒体５に記録させて、当該画像補正処理を終了する。
【００５１】
以上のように、本実施形態の撮像装置１００によれば、電子撮像部２による顔画像の撮像により取得された当該顔画像における顔の特徴部を検出して、当該特徴部に基づいて、顔の擬似輪郭線ｌ１を生成することができる。具体的には、特徴部としての顔の左右両目の位置（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）を検出して、検出された左右両目の位置（rightEyeX, rightEyeY），（leftEyeX, leftEyeY）に基づいて顔の傾きθ及び左右目間距離（dis_lr_eye）を算出し、この算出結果に基づいて、当該顔の擬似輪郭線ｌ１を生成することができるので、顔の特徴部の検出並びに顔の傾きθ及び左右目間距離（dis_lr_eye）の算出をより適正に行うことができ、顔の特徴部に基づいた当該顔の疑似輪郭線ｌ１の生成をより適正に行うことができる。
そして、生成された擬似輪郭線ｌ１に基づいて、取得した顔画像に対して補正処理を行うことができる。即ち、顔の擬似輪郭線ｌ１に基づいて、顔画像を変形させるワープ処理を行うことができる。具体的には、顔画像中の画素の各々について擬似輪郭線ｌ１との距離をそれぞれ算出し、算出された当該距離に応じて各画素における移動量を規定する移動量マップmap(x, y)を生成し、当該移動量マップmap(x, y)の移動量に応じて顔画像のワープ処理を行うので、顔の擬似輪郭線ｌ１に基づいて顔画像に対する補正処理をより適正に行うことができる。
従って、電子撮像部２により顔画像を撮像するだけで、顔の左右両目よりも下側部分の輪郭をより細くするように顔画像に対する補正を行うことができることから、画像補正処理にてユーザが特別な処理を行う必要がなくなって、顔画像に対する補正をより簡便なものとすることができる。
【００５２】
また、ユーザによる操作入力部８の所定操作に基づいて画像補正処理における画像補正レベルを設定して、当該画像補正レベルに応じて顔画像に対する補正処理を行うので、画像補正処理における処理強度、即ち、顔を細くする度合いをユーザ所望のレベルに設定することができ、より使い勝手の良い撮像装置１００を提供することができる。
【００５３】
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
例えば、上記実施形態にあっては、顔検出処理にて検出された顔の大きさに応じて画像補正処理を行うか否かを決定するようにしても良い。即ち、検出された顔が所定の範囲内になく所定値よりも大きくなったり小さくなる場合、つまり、左右目間距離が所定値よりも大きくなったり小さくなる場合には、顔の擬似輪郭線ｌ１を生成しないようにしても良く、これにより画像補正処理を行わないようにすることができる。
また、検出された顔の大きさに応じて移動量マップにおけるｘ軸方向の移動量を変化させるようにしても良い。即ち、検出された顔が大きいほどｘ軸方向の移動量が大きくなるように、調整用係数kxの大きさを変化させて式（５）にて算出されるｘ軸係数（gw_x）の大きさを変化させたり、ｘ軸係数（gw_x）に所定の係数を乗算することによりｘ軸方向の移動量を変化させることで、顔画像全体に対する顔の大きさを考慮して、画像補正処理をより適正に行うことができる。
【００５４】
さらに、上記実施形態にあっては、顔の特徴部として目を検出するようにしたが、これに限られるものではなく、例えば、鼻、口、まゆげ等を検出しても良い。
【００５５】
また、上記実施形態にあっては、擬似輪郭線ｌ１の生成の際に目の位置を基準とするようにしたが、擬似輪郭線ｌ１の生成の基準はこれに限られるものではなく、顔画像における顔の特徴部であれば如何なる部位を基準としても良い。例えば、鼻や口等の各々の位置を基準としても良いし、これら複数の部位を基準としても良い。
さらに、目の位置に加えて鼻や口の位置を基準とすることによって、より正確な擬似輪郭線ｌ１を生成することができ、画像補正処理をより適正に行うことができるという格別の効果を得ることができる。
【００５６】
また、上記実施形態にあっては、擬似輪郭線ｌ１の生成の際に目の位置を基準とするようにしたが、擬似輪郭線ｌ１の基準はこれに限られるものではなく、目の位置に加えて目の大きさを基準としても良い。即ち、目位置検出部４ｂは、目の位置に加えて目の大きさを検出して、当該目の位置及び大きさに基づいて、当該顔の擬似輪郭線ｌ１を生成するようにしても良い。
これによって、より正確な擬似輪郭線ｌ１を生成することができ、画像補正処理をより適正に行うことができるという格別の効果を得ることができる。
【００５７】
さらに、上記実施形態にあっては、画像補正処理にて、楕円の擬似輪郭線ｌ１を用いたが、顔の擬似輪郭線はこれに限られるものではなく、顔の輪郭に沿うような曲線であれば如何なるものであっても良い。例えば、図３（ｂ）に示すように、l2 = ax2+bx+c(a,b,cは、任意の数)で表されるような放物線であっても良く、かかる擬似輪郭線ｌ２を用いても、上記実施形態と同様に、顔画像に対する補正処理をより適正に行うことができる。
【００５８】
また、上記実施形態にあっては、顔の左右両目より下側部分の輪郭をより細くするように顔画像に対する補正を行うようにしたが、これに限られるものではなく、例えば、ワープ処理に係る各画素のｘ座標が左右両目の中心のｘ座標よりも大きい場合（x ＞ wcx）、式（８）に基づいて移動量マップmap(x, y)を生成し、各画素のｘ座標が左右両目の中心のｘ座標よりも小さい場合（x ＜ wcx）、式（７）に基づいて移動量マップmap(x, y)を生成することで、顔の左右両目よりも下側部分の輪郭をより太くするように顔画像に対する補正を行うようにしても良い。
【００５９】
さらに、上記実施形態にあっては、顔検出処理にて検出された顔の人の年齢を推定して、当該人の年齢を考慮して顔の擬似輪郭線ｌ１を生成しても良い。即ち、例えば、大人に比べて子供ほど目の位置が低くなっているように、年齢に応じて顔全体に対する目の位置が変化するため、人の年齢を考慮することで顔の擬似輪郭線ｌ１をより正確に生成することができる。
また、顔の擬似輪郭線ｌ１の生成にあたって、男女、人種等を考慮しても良い。
【００６０】
また、上記実施形態にあっては、ライブビュー画像に補正処理を行い、補正後の画像をライブビュー画像として表示するようにしてもよい。つまり、移動量マップmap(x, y)を生成し、逐次入力されるライブビュー画像をこの移動量マップmap(x, y)に基づいて補正処理する。この補正処理された顔画像をライブビュー画像として表示する。この間、ユーザによる操作入力部８の所定操作に基づいて、補正処理における画像補正レベルを調整することができる。調整された画像補正レベルに応じた顔画像がライブビュー画像として表示される。これにより、ユーザは画像を記録する前に設定された画像補正レベルで補正処理した顔画像を確認することができる。その後、ユーザにより操作入力部８のシャッターボタンが押されると、記録用画像の撮影を行ない、ライブビュー画像表示時に設定された画像補正レベルで記録用画像に対して補正処理を実行し、補正後の画像を記録媒体に記録する。
【００６１】
また、撮像装置１００の構成は、上記実施形態に例示したものは一例であり、これに限られるものではない。
さらに、画像処理装置として撮像装置１００を例示したが、これに限られるものではなく、必ずしも撮像レンズ部１、電子撮像部２、撮像処理部３等を備える必要はない。即ち、顔画像を取得して当該顔画像における顔の特徴部を検出し、検出された特徴部に基づいて顔の擬似輪郭線ｌ１を生成して、当該擬似輪郭線ｌ１に基づいて顔画像に対して補正処理を行うことができる手段を備える画像処理装置（例えば、パーソナルコンピュータ等）であれば如何なるものであっても良い。
【００６２】
加えて、上記実施形態にあっては、顔検出手段、特徴部位検出手段、輪郭生成手段、補正手段としての機能を、ＣＰＵ１１の制御下にて、画像処理部４（顔検出部４ａ、目位置検出部４ｂ、輪郭生成部４ｃ、移動量マップ生成部４ｄ）が駆動することにより実現される構成としたが、これに限られるものではなく、ＣＰＵ１１によって所定のプログラム等が実行されることにより実現される構成としても良い。
即ち、プログラムメモリに、顔検出処理ルーチン、特徴部位検出処理ルーチン、輪郭生成処理ルーチン、補正処理ルーチンを含むプログラムを記憶して、顔検出処理ルーチンによりＣＰＵ１１を顔検出手段として機能させ、また、特徴部位検出処理ルーチンによりＣＰＵ１１を特徴部位検出手段として機能させ、また、輪郭生成処理ルーチンによりＣＰＵ１１を輪郭生成手段として機能させ、また、補正処理ルーチンによりＣＰＵ１１を補正手段として機能させるようにしても良い。
【符号の説明】
【００６３】
１００  撮像装置
４      画像処理部
４ａ    顔検出部
４ｂ    目位置検出部
４ｃ    輪郭生成部
４ｄ    移動量マップ生成部
８      操作入力部
１０    プログラムメモリ
１１    ＣＰＵ
【図１】
2010152871.tif 000017
【図２】
2010152871.tif 000018
【図３】
2010152871.tif 000019
【図４】
2010152871.tif 000020
【図５】
2010152871.tif 000021
【図６】
2010152871.tif 000022
【図７】
2010152871.tif 000023