(57)【特許請求の範囲】
【請求項１】
画像から被写体の顔領域の一部である第１領域を特定する第１特定部と、
前記第１領域を構成する画素の色と前記第１領域の一部を含む第２領域を構成する画素の色との類似度、想定される前記画像中の前記顔領域の割合、及び前記第２領域を構成する画素の明るさと該画素に隣接する画素の明るさとの類似度を用いて、前記第２領域の状態を示す値を算出する算出部と、
前記算出部が算出する前記第２領域の状態を示す値に基づいて、前記第２領域を肌領域として特定する第２特定部と
を備えることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記第２特定部は、前記算出部が算出する前記第２領域の状態を示す値が最も好ましい値となるまで前記第２領域の形状を変化させ、前記第２領域の状態を示す値が最も好ましい値となったときの前記第２領域を肌領域として特定することを特徴とする画像処理装置。
【請求項３】
請求項１又は請求項２に記載の画像処理装置において、
前記第２特定部は、前記第２領域を拡大する処理、及び縮小する処理の少なくとも一方を行うことを特徴とする画像処理装置。
【請求項４】
請求項１から請求項３のいずれか１項に記載の画像処理装置において、
前記画像から少なくとも1つの目領域、及び口領域を抽出する抽出部を備え、
前記第１領域は、前記目領域における任意の画素と前記口領域における任意の画素とを結ぶ線上に位置する画素の領域、前記目領域のそれぞれにおける任意の画素と前記口領域における任意の画素とを結ぶ三角形の領域、或いは前記目領域のそれぞれにおける任意の画素を頂点とし、前記口領域における任意の画素を底辺に含む矩形の領域のいずれかであることを特徴とする画像処理装置。
【請求項５】
請求項１から請求項４のいずれか１項に記載の画像処理装置において、
前記算出部は、最適解法により前記第２領域の状態を示す値を算出することを特徴とする画像処理装置。
【請求項６】
請求項５に記載の画像処理装置において、
前記最も好ましい値は、最小値であることを特徴とする画像処理装置。
【請求項７】
請求項５に記載の画像処理装置において、
前記最も好ましい値は、局所解であることを特徴とする画像処理装置。
【請求項８】
請求項１から請求項７のいずれか１項に記載の画像処理装置において、
前記第２特定部は、前記第１領域から肌の色でない色の領域を除外してから、前記第２領域の形状を変化させることを特徴とする画像処理装置。
【請求項９】
請求項１から請求項８のいずれか１項に記載の画像処理装置において、
肌の領域として特定された前記第２領域に美肌処理を施す画像処理部を備えることを特徴とする画像処理装置。
【請求項１０】
画像から被写体の顔領域の一部である第１領域を特定する第１特定工程と、
前記第１領域を構成する画素の色と前記第１領域の一部を含む第２領域を構成する画素の色との類似度、想定される前記画像中の前記顔領域の割合、及び前記第２領域を構成する画素の明るさと該画素に隣接する画素の明るさとの類似度を用いて、前記第２領域の状態を示す値を算出する算出工程と、
前記算出工程において算出される前記第２領域の状態を示す値に基づいて、前記第２領域を肌領域として特定する第２特定工程と
をコンピュータで実現することを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理プログラムに関する。
【背景技術】
【０００２】
従来から、画像に含まれる顔の肌領域を特定する方法として、色空間情報を用いる方法や、想定する顔形状近傍に存在する輪郭情報を用いる方法が知られている。例えば、特許文献１では、高い信頼度で抽出した画素群を構成するそれぞれの画素について、画素に隣接する所定領域の色相、彩度及び明度を調べ、所定の条件を満たす領域を肌領域として加え、肌領域を成長させる。そして、成長させるべき近隣の画素がなくなるか、もしくはこの処理の繰り返し回数が所定数に達するまで繰り返すことにより、肌領域を得る。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３３８３７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上述した特許文献１の特定方法では、画素毎に条件比較を行うため、条件となる閾値付近では離散的な領域が発生し、形状が安定しないという問題があった。また、単に色空間における比較を行った場合、被写体の撮影環境、化粧や肌の色に対応するためには、条件幅を広くする必要があるが、顔や肌以外の領域の誤抽出を防止するためには、この条件幅を狭くせざるを得ないため、精度の良い肌領域の抽出が困難であった。
【０００５】
そこで、本発明の画像処理装置及び画像処理プログラムは、顔の肌領域を精度良く特定することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像処理装置は、画像から被写体の顔領域の一部である第１領域を特定する第１特定部と、前記第１領域を構成する画素の色と前記第１領域の一部を含む第２領域を構成する画素の色との類似度、想定される前記画像中の前記顔領域の割合、及び前記第２領域を構成する画素の明るさと該画素に隣接する画素の明るさとの類似度を用いて、前記第２領域の状態を示す値を算出する算出部と、前記算出部が算出する前記第２領域の状態を示す値に基づいて、前記第２領域を肌領域として特定する第２特定部とを備える。
【０００７】
なお、前記第２特定部は、前記算出部が算出する前記第２領域の状態を示す値が最も好ましい値となるまで前記第２領域の形状を変化させ、前記第２領域の状態を示す値が最も好ましい値となったときの前記第２領域を肌領域として特定しても良い。
【０００８】
また、前記第２特定部は、前記第２領域を拡大する処理、及び縮小する処理の少なくとも一方を行っても良い。
【０００９】
また、前記画像から少なくとも1つの目領域、及び口領域を抽出する抽出部を備え、前記第１領域は、前記目領域における任意の画素と前記口領域における任意の画素とを結ぶ線上に位置する画素の領域、前記目領域のそれぞれにおける任意の画素と前記口領域における任意の画素とを結ぶ三角形の領域、或いは前記目領域のそれぞれにおける任意の画素を頂点とし、前記口領域における任意の画素を底辺に含む矩形の領域のいずれかであっても良い。
【００１０】
また、前記算出部は、最適解法により前記第２領域の状態を示す値を算出しても良い。
【００１１】
また、前記最も好ましい値は、最小値であっても良い。
【００１２】
また、前記最も好ましい値は、局所解であっても良い。
【００１３】
また、前記第２特定部は、前記第１領域から肌の色でない色の領域を除外してから、前記第２領域の形状を変化させても良い。
【００１４】
また、肌の領域として特定された前記第２領域に美肌処理を施す画像処理部を備えても良い。
【００１５】
本発明の画像処理プログラムは、画像から被写体の顔領域の一部である第１領域を特定する第１特定工程と、前記第１領域を構成する画素の色と前記第１画像の一部を含む第２領域を構成する画素の色との類似度、想定される前記画像中の前記顔領域の割合、及び前記第２領域を構成する画素の明るさと該画素に隣接する画素の明るさとの類似度を用いて、前記第２領域の状態を示す値を算出する算出工程と、前記算出工程において算出される前記第２領域の状態を示す値に基づいて、前記第２領域を肌領域として特定する第２特定工程とをコンピュータで実現する。
【発明の効果】
【００１６】
本発明の画像処理装置及び画像処理プログラムによれば、顔の肌領域を精度良く特定することができる。
【図面の簡単な説明】
【００１７】
【図１】第１施形態における撮像装置１０の構成を示すブロック図である。
【図２】（ａ）顔領域Ｆ、概略領域Ｒ、及び肌色候補領域Ｓを示す図である。（ｂ）概略領域Ｒ２を示す図である。（ｃ）概略領域Ｒ３を示す図である。
【図３】詳細領域Ｄを示す図である。
【図４】第１実施形態における詳細領域Ｄの特定処理の流れを示すフローチャートである。
【図５】（Ａ）領域Ｉを示す図である。（Ｂ）領域Ｉ’を示す図である。（Ｃ）領域Ｉ’’を示す図である。
【図６】エネルギーの差ΔＥｉと、確率Ｐとの関係を示す図である。
【図７】第２実施形態における詳細領域Ｄの特定処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１８】
（第１実施形態）
以下、図面を用いて本発明の第１実施形態について説明する。図１は、第１実施形態における撮像装置１０の構成を示すブロック図である。図１に示すように、撮像装置１０は、撮像レンズ１１、撮像素子１２、Ａ／Ｄ変換部１３、バッファメモリ１４、表示部１５、フラッシュＲＡＭ１６、記録Ｉ／Ｆ部１７、記録媒体１８、操作部１９、ＣＰＵ２０、バス２１を備える。
【００１９】
撮像レンズ１１は、撮像素子１２の結像面に被写体像を結像する。撮像素子１２は、撮像レンズ１１を通過した被写体光を光電変換し、Ｒ、Ｇ、Ｂの各色に対応するアナログ画像信号を出力する。撮像素子１２から出力される画像信号は、Ａ／Ｄ変換部１３に入力される。Ａ／Ｄ変換部１３は、撮像素子１２から出力されるアナログの画像信号をデジタルの画像信号に変換する。なお、このデジタルの画像信号は、１コマにまとめられ、画像データとしてバッファメモリ１４に記録される。バッファメモリ１４は、後述する画像処理部３２による画像処理の前工程や後工程で画像データを一時的に記録する。
【００２０】
表示部１５は、各種の画像を表示する。表示部１５に表示される各種の画像は、撮像により取得された画像、メニュー画像、後述する記録媒体１８に記録された画像等である。フラッシュＲＡＭ１６は、ファームウェアなどを記憶している。記録Ｉ／Ｆ部１７は、記録媒体１８を接続するためのコネクタを備えている。この記録Ｉ／Ｆ部１７と記録媒体１８とが接続されることにより、記録媒体１８に対してデータの書き込み／読み出しが実行される。
【００２１】
操作部１９は、レリーズ釦２４、十字キー２５等を有する。レリーズ釦２４は、撮像時にユーザにより操作される。十字キー２５は、上記のメニュー画像等で操作される。なお、レリーズ釦２４、十字キー２５の状態はＣＰＵ２０により検知され、検知された釦やキーの状態に基づいたシーケンスが実行される。
【００２２】
ＣＰＵ２０は、所定のシーケンスプログラムにしたがって、撮像装置１０の統括的な制御を行うとともに、撮像時に必要となる各種演算（ＡＦ、ＡＥ等）を実行する。また、ＣＰＵ２０は、抽出部２９、概略領域特定部３０、詳細領域特定部３１、画像処理部３２を備える。図２（ａ）は、処理対象となる画像（符号４０）の一例を示す図である。なお、画像４０としては、撮像により取得した画像でも良いし、記録媒体１８に記録された画像でも良い。
【００２３】
抽出部２９は、画像から、特開２００１−１６５７３号公報などに記載された特徴点抽出処理によって、例えば、眉、目、鼻、唇の各端点、顔の輪郭点、頭頂点や顎の下端点などを抽出する。図２（ａ）の太線で囲まれた領域は、顔領域Ｆを示す。
【００２４】
概略領域特定部３０は、抽出部２９によって抽出された目、唇の各端点に基づいて、概略領域Ｒを特定する。この概略領域Ｒとは、顔領域Ｆの一部であり、確実に顔領域Ｆに含まれていると判断できる領域である。図２（ａ）の点線で囲まれた領域は、概略領域Ｒを示す。図２（ａ）に示すように、概略領域特定部３０は、両目のそれぞれの中心を頂点とし、口の中心を底辺に含む矩形の領域を概略領域Ｒとして特定する。なお、図２（ｂ）に示すように、概略領域特定部３０は、両目のそれぞれの中心と、口の中心とを結んだ三角形の領域を概略領域Ｒ２として特定しても良い。また、図２（ｃ）に示すように、概略領域特定部３０は、片目の中心と、口の中心とを結んだ線上に位置する画素を概略領域Ｒ３として特定しても良い。
【００２５】
詳細領域特定部３１は、肌色候補領域Ｓ、及び詳細領域Ｄを特定する。まず、肌色候補領域Ｓについて説明する。肌色候補領域Ｓは、概略領域Ｒから、肌色が存在するとみなすことができない色座標の画素を除外した領域である。除外対象としては、例えば、目、口、顔に被っているオブジェクト、眼鏡、頬のペインティングなどが想定される。詳細領域特定部３１は、ＲＧＢ色空間の画像データをＨＳＶ色空間の画像データに変換する。そして、詳細領域特定部３１は、ＨＳＶ色空間にて、Ｈｕｅが２０〜５０°の範囲から外れた画素を除外することにより、肌色候補領域Ｓを特定する。概略領域Ｒが矩形の領域である場合、肌色候補領域Ｓは、図２（ａ）の斜線の領域で示される。
【００２６】
次に、詳細領域Ｄについて説明する。詳細領域Ｄは、肌色候補領域Ｓを拡大及び縮小させることにより特定される、顔領域Ｆにおける肌領域である。以下、肌色候補領域Ｓを初期領域とし、初期領域から詳細領域Ｄに至る途中の領域を領域Ｉとする。詳細領域特定部３１は、領域Ｉの状態を示す値を算出し、この値が最も好ましい値となったときの領域Ｉを詳細領域Ｄとして特定する。図３の点で塗られた領域は、詳細領域Ｄを示す。詳細領域Ｄの特定については、後述する。
【００２７】
第１実施形態では、最適解を求める方法として、シュミレーテッドアニーリング（Simulated Annealing）法を用いる。シュミレーテッドアニーリングは、高温で加熱した金属の温度を除々に下げていくことで、欠陥の少ない優れた結晶構造を作る物理プロセス（焼きなまし）を模したもので、逐次的な解の改善操作を繰り返す最適化手法である。この方法では、現在の状態よりエネルギーの低い状態への変化を繰り返すことで、最もエネルギーの低い状態（最適解）に近づけていく。その際、単にエネルギーの低い状態のみ選択し続けると局所解に陥る可能性があるが、ある確率でエネルギーの増加を認めるところに、この方法の特徴がある。
【００２８】
次に、現在の領域Ｉの状態を示すエネルギーＥを以下の（１）式で示す。なお、画像４０の各画素には、肌色又は背景のラベルが割り当てられる。
【００２９】
【数１】
0005874440.tif 000002
【００３０】
（１）式において、Ｖは注目画素、Ｐａは注目画素の４隣接（又は８隣接）画素ペア集団を示す。また、ｕ、ｖはこの画素ペア集団のうち、いずれか２つの画素（以下、隣接画素と称する）であり、δ、γは係数を示す。
【００３１】
また、Ｘは、各画素に割り当てられるラベルであり、
Ｘ＝肌 if 肌である
背景  otherwise.となる。
【００３２】
まず、（１）式の右辺第１項について説明する。（１）式の右辺第１項は、肌らしさと、肌と背景との割合から求められるエネルギーとを表す。すなわち、（１）式の右辺第１項は、肌色のラベルが割り当てられた画素から構成される領域と、実際の肌領域とが一致するほど、また、顔領域Ｆと背景領域との割合が想定した比率に近づくほど、低い値となる。
【００３３】
（１）式の右辺第１項のｇＶ（ＸＶ）を以下の（２）式で示す。
【００３４】
【数２】
0005874440.tif 000003
【００３５】
（２）式において、Ａは肌色候補領域Ｓを構成する画素の色（肌色）、Ｂは注目画素の色、Ａ−Ｂは、肌色候補領域Ｓを構成する画素の色と、注目画素の色との差（色差）、Ｘは注目画素のラベルを示す。例えば、ＲＡ、ＧＡ、ＢＡは、それぞれ肌色候補領域Ｓを構成する画素のＲの平均値、Ｇの平均値、Ｂの平均値とする。また、αは画像４０に対する肌領域の割合を予め決める係数であり、βは肌ラベル画素から求められる肌らしさの度合いを決める係数である。
【００３６】
（２）式の右辺第１項は、画素のラベルが肌であった場合のみ、値β||Ａ−Ｂ||２が与えられることを表す。また、（２）式の右辺第２項は、画素のラベルが肌であった場合にαが、背景であった場合に（１−α）が与えられることを表す。
【００３７】
次に、（１）式の右辺第２項について説明する。（１）式の右辺第２項は、隣接画素間の明るさが同じであるかの度合いを表す。（１）式の右辺第２項のｈｕｖ（Ｘｕ，ＸＶ）を以下の（３）式で示す。
【数３】
0005874440.tif 000004
（３）式において、詳細領域特定部３１は、隣接画素ｕ、ｖのラベルＸｕ、Ｘｖが異なる場合に、κの値を与える。κの値は、隣接画素間の明るさが違うほど小さな値となる。
【００３８】
詳細領域特定部３１は、エネルギーＥを最小に近づけていくように動作する。そして、エネルギーＥが最小となるとき、肌色のラベルが割り当てられた画素から構成される領域が詳細領域Ｄとなる。
【００３９】
画像処理部３２は、バッファメモリ１４に記録された画像データに対して画像処理を施す。なお、この画像処理としては、周知のホワイトバランス調整、色補間、階調変換処理、輪郭強調処理等が挙げられる。また、画像処理部３２は、ＪＰＥＧ（Joint Photographic Experts Group）形式等で圧縮する処理や、圧縮された上記のデータを伸長復元する処理をも実行する。
【００４０】
また、画像処理部３２は、詳細領域特定部３１が特定した詳細領域Ｄに対して、美肌処理を行う。例えば、画像処理部３２は、詳細領域Ｄの露出をオーバー側に補正する露出補正を行う。これにより、被写体の肌が白く表現される。また、画像処理部３２は、ソフトフォーカス処理を行う。これにより、被写体が女性である場合、女性らしさが強調され、柔らかみが生じるとともに、しわや肌荒れ等が目立ちにくくなる。また、画像処理部３２は、彩度や明度のパラメータを補正することにより、肌を白く表現し、くすみ等を軽減する。
【００４１】
バス２１は、バッファメモリ１４、表示部１５、フラッシュＲＡＭ１６、記録Ｉ／Ｆ部１７、ＣＰＵ２０を相互に接続することにより、データや信号の出入力を実行する。
次に、図４のフローチャートを用いて、第１実施形態における詳細領域Ｄの特定処理の流れを説明する。なお、図４のフローチャートは、レリーズ釦２４が全押しされたことを契機に実行される。また、以下、便宜上、１人の人物を撮像した画像４０から詳細領域Ｄを特定する例を示す。
ステップＳ１０１は、概略領域Ｒを特定する処理である。抽出部２９は、撮像により取得した画像４０から目、唇の各端点などを抽出する。そして、概略領域特定部３０は、目、唇の端点に基づいて、概略領域Ｒを特定する。
【００４２】
ステップＳ１０２は、肌色候補領域Ｓを特定する処理である。詳細領域特定部３１は、ＲＧＢ色空間の画像データをＨＳＶ色空間の画像データに変換する。そして、詳細領域特定部３１は、概略領域Ｒから、Ｈｕｅが２０〜５０°の範囲から外れた画素を除外し、肌色候補領域Ｓを特定する。
【００４３】
ステップＳ１０３は、初期エネルギーＥ０を算出する処理である。まず、詳細領域特定部３１は、画像４０に含まれる画素について、肌色候補領域Ｓを構成する画素に肌色のラベルを、残りの画素に背景のラベルを割り当てる。そして、詳細領域特定部３１は、肌色候補領域Ｓを初期領域とし、上述した（１）式〜（３）式を用いて、領域Ｉと初期領域とを同じ領域として初期エネルギーＥ０を算出する。
【００４４】
ステップＳ１０４は、領域を拡大する処理である。詳細領域設定部３１は、現在の領域Ｉに、領域Ｉの外側に隣接する画素ＰＯ１〜ＰＯｎを追加した領域を想定する。以下、画素ＰＯ１から順番に１画素ずつ追加した領域を想定する例を示す。図５（Ａ）の白色の領域は、現在の領域Ｉを示し、斜線が引かれた領域は、領域Ｉの外側に隣接する画素ＰＯ１〜ＰＯｎを示す。
【００４５】
ステップＳ１０５は、受理判定を行う処理である。まず、詳細領域特定部３１は、画素ＰＯ１に肌色のラベルを割り当てた状態のエネルギーを算出し、このエネルギーと、画素ＰＯ１に肌色のラベルを割り当てる前の状態のエネルギーとの差ΔＥｉを算出する。そして、詳細領域特定部３１は、ΔＥｉ＜０である場合は、Ｐ＝１の確率で、画素ＰＯ１に肌色のラベルを割り当てる。一方、ΔＥｉ＞０である場合は、Ｐ＝ｅｘｐ（−ΔＥｉ／ｋＴｃ）の確率で、画素ＰＯ１に肌色のラベルを割り当てる。なお、ｋはボルツマン定数、Ｔｃは温度である。画素ＰＯ１に肌色のラベルを割り当てることにより、領域Ｉは、画素ＰＯ１の分が拡大される。
【００４６】
ＣＰＵ２０は、次の状態が受け入れられる場合（ステップＳ１０５の判定がＹＥＳとなる場合）には、ステップＳ１０６に進む。一方、ＣＰＵ２０は、次の状態が受け入れられない場合（ステップＳ１０５の判定がＮＯとなる場合）には、後述するステップＳ１１３に進む。
【００４７】
ステップＳ１０６は、領域Ｉの外側に隣接する全ての画素ＰＯ１〜ＰＯｎに対してステップＳ１０４、ステップＳ１０５の処理を行ったか否かを判定する処理である。ＣＰＵ２０は、全ての画素に対して処理を行った場合（ステップＳ１０６の判定がＹＥＳとなる場合）には、ステップＳ１０７に進む。一方、ＣＰＵ２０は、全ての画素に対して処理を行っていない場合（ステップＳ１０６の判定がＮＯとなる場合）には、ステップＳ１０４に戻り、拡大した領域を想定する。このように、詳細領域特定部３１は、ステップＳ１０４、ステップＳ１０５の処理を繰り返し、画素ＰＯ１〜ＰＯｎについて、次の状態が受け入れられる場合は、肌色のラベルを割り当てる。拡大後の領域Ｉ’の例を図５（Ｂ）に示す。
【００４８】
ステップＳ１０７は、領域を縮小する処理である。詳細領域設定部３１は、拡大後の領域Ｉ’から、領域Ｉ’の外周部に位置する画素ＰＩ１〜ＰＩｎを除いた領域を想定する。以下、画素ＰＩ１から順番に１画素ずつ除いた領域を想定する例を示す。図５（Ｂ）の点で塗られた領域は、領域Ｉ’の外周部に位置する画素ＰＩ１〜ＰＩｎを示す。
【００４９】
ステップＳ１０８は、受理判定を行う処理である。まず、詳細領域特定部３１は、画素ＰＩ１に背景のラベルを割り当てた状態のエネルギーを算出し、このエネルギーと、画素ＰＩ１に背景のラベルを割り当てる前の状態のエネルギーとの差ΔＥｊを算出する。そして、詳細領域特定部３１は、ΔＥｊ＜０である場合は、Ｐ＝１の確率で、画素ＰＩ１に背景のラベルを割り当てる。一方、ΔＥｊ＞０である場合は、Ｐ＝ｅｘｐ（−ΔＥｊ／ｋＴｃ）の確率で、画素ＰＩ１に背景のラベルを割り当てる。画素ＰＩ１に背景のラベルを割り当てることにより、領域Ｉ’は、画素ＰＩ１の分が縮小される。
【００５０】
ＣＰＵ２０は、次の状態が受け入れられる場合（ステップＳ１０８の判定がＹＥＳとなる場合）には、ステップＳ１０９に進む。一方、ＣＰＵ２０は、次の状態が受け入れられない場合（ステップＳ１０８の判定がＮＯとなる場合）には、後述するステップＳ１１３に進む。
【００５１】
ステップＳ１０９は、領域Ｉ’の外周部に位置する画素ＰＩ１〜ＰＩｎに対してステップＳ１０７、ステップＳ１０８の処理を行ったか否かを判定する処理である。ＣＰＵ２０は、全ての画素に対して処理を行った場合（ステップＳ１０９の判定がＹＥＳとなる場合）には、ステップＳ１１０に進む。一方、ＣＰＵ２０は、全ての画素に対して処理を行っていない場合（ステップＳ１０９の判定がＮＯとなる場合）には、ステップＳ１０７に戻る。このように、詳細領域特定部３１は、ステップＳ１０７、ステップＳ１０８の処理を繰り返し、画素ＰＩ１〜ＰＩｍについて、次の状態が受け入れられる場合は、背景のラベルを割り当てる。縮小後の領域Ｉ’’の例を図５（Ｃ）に示す。
【００５２】
ステップＳ１１０は、状態を変更する処理である。詳細領域特定部３１は、ステップＳ１０７で縮小した領域Ｉ’’を次の状態の領域Ｉ＋１とする。
【００５３】
ステップＳ１１１は、状態変更カウントに１を加算する処理である。
【００５４】
ステップＳ１１２は、状態変更カウントが閾値に達したか否かを判定する処理である。例えば、ＣＰＵ２０は、状態変更カウントが１００より大きいか否かを判定する。そして、ＣＰＵ２０は、状態変更カウントが１００より大きい場合（ステップＳ１１２の判定がＹＥＳとなる場合）には、ステップＳ１１３に進む。一方、ＣＰＵ２０は、状態変更カウントが１００以下である場合（ステップＳ１１２の判定がＮＯ）となる場合には、ステップＳ１０４に戻り、拡大した領域を想定する。
【００５５】
ステップＳ１１３は、終了判定を行う処理である。ＣＰＵ２０は、領域Ｉ＋ｌ（０≦ｌ≦１００）が変化しなくなったか否かを判定する。領域Ｉ＋ｌが変化しなくなった状態とは、温度Ｔｃが十分に低く、領域Ｉ＋ｌのエネルギーが最も低い状態である。また、この状態は、エネルギーが最も低く安定しているため、領域Ｉ＋ｌの外側に隣接する画素に肌色のラベルを割り当てても、常にΔＥｉ＞０となり、領域Ｉ＋ｌの外周部に位置する画素に背景のラベルを割り当てても、常にΔＥｊ＞０となる。
【００５６】
ＣＰＵ２０は、領域Ｉ＋ｌが変化しなくなったと判定した場合（ステップＳ１１３の判定がＹＥＳとなる場合）には、領域Ｉ＋ｌを詳細領域Ｄとする。これにより、顔領域Ｆにおける肌領域が詳細領域Ｄとなる。そして、ＣＰＵ２０は、ステップＳ１１４に進む。一方、ＣＰＵ２０は、領域Ｉ＋ｌが変化すると判定した場合（ステップＳ１１３の判定がＮＯとなる場合）には、ステップＳ１１５に進む。
【００５７】
ステップＳ１１４は、美肌処理を行う処理である。画像処理部３２は、詳細領域Ｄに対して美肌処理を施す。そして、画像処理部３２は、美肌処理後の画像４０’を記録媒体１８に記録し、一連の処理を終了する。
【００５８】
ステップＳ１１５は、ステップＳ１１３の判定がＮＯとなる場合のクーリング処理である。詳細領域特定部３１は、温度Ｔｃを下げる。温度Ｔｃの下げ方は、以下の式で規定される。例えば、γ＝０．９の定数とする。
Ｔｃ＋１＝γＴｃ
【００５９】
ステップＳ１１６は、状態変更カウントをリセットする処理である。詳細領域特定部３１は、状態変更カウントをリセットし、ステップＳ１０４に戻り、拡大した領域を想定する。
図６は、エネルギーの差ΔＥｉと、確率Ｐとの関係を示す図である。なお、横軸はΔＥｉを示し、縦軸は確率Ｐを示す。図６に示すように、ΔＥｉ＜０のとき、Ｐ＝１となり、ΔＥｉ＞０のとき、０＜Ｐ＜１となる。また、ΔＥｉ＞０における確率Ｐは、温度Ｔｃに依存する。すなわち、温度Ｔｃ+1、温度Ｔｃ+2と、温度を下げていくことにより、確率Ｐが０に近づいていき、最適解を算出する方向にしか進まなくなる。
【００６０】
以上説明したように、第１実施形態の撮像装置１０は、領域Ｉの状態を示す値を算出し、その値が最も好ましい値となるような最適解を見つけることにより、詳細領域Ｄを特定する。したがって、第１実施形態の撮像装置１０によれば、詳細領域Ｄを精度良く特定することができる。また、第１実施形態の撮像装置１０によれば、詳細領域Ｄを精度良く特定できるため、適確に詳細領域Ｄに美肌処理などの画像処理を施すことができる。
【００６１】
（第２実施形態）
以下、第２実施形態について説明する。第１実施形態では、シュミレーテッドアニーリング法を用いて、詳細領域Ｄを特定する例を示した。第２実施形態では、温度Ｔｃ＝０の一定とし、初期領域を拡大することにより、詳細領域Ｄを特定する例を示す。ここで、第２実施形態における撮像装置の構成は、図１に示す第１実施形態の撮像装置１０と共通するので重複説明は省略する。
【００６２】
次に、図７のフローチャートを用いて、第２実施形態における詳細領域Ｄの特定処理の流れを説明する。なお、図７のフローチャートは、レリーズ釦２４が全押しされたことを契機に実行される。また、以下、便宜上、１人の人物を撮像した画像４０から詳細領域Ｄを特定する例を示す。
【００６３】
ステップＳ２０１からステップＳ２０４は、図４のフローチャートのステップＳ１０１からステップＳ１０４と同様の処理である。
【００６４】
ステップＳ２０５は、受理判定を行う処理である。詳細領域特定部３１は、画素ＰＯ１に肌色のラベルを割り当てた状態のエネルギーと、肌色のラベルを割り当てる前の状態のエネルギーの差ΔＥｉを算出する。そして、詳細領域特定部３１は、ΔＥｉ＜０である場合は、Ｐ＝１の確率で、画素ＰＯ１に肌色のラベルを割り当てる。一方、ΔＥｉ＞０である場合は、後述するステップＳ２０８に進む。すなわち、第２実施形態では、詳細領域特定部３１は、ΔＥｉ＜０である場合のみ、次の状態を受け入れる。
【００６５】
ＣＰＵ２０は、次の状態が受け入れられる場合（ステップＳ２０５の判定がＹＥＳとなる場合）には、ステップＳ２０６に進む。一方、ＣＰＵ２０は、次の状態が受け入れられない場合（ステップＳ２０５の判定がＮＯとなる場合）には、後述するステップＳ２０７に進む。
【００６６】
ステップＳ２０６は、状態を変更する処理である。詳細領域特定部３１は、ステップＳ２０５で拡大した領域Ｉ’を次の状態の領域Ｉ＋１とする。
【００６７】
ステップＳ２０７は、領域Ｉの外側に隣接する全ての画素ＰＯ１〜ＰＯｎに対してステップＳ２０４〜ステップＳ２０６の処理を行ったか否かを判定する処理である。ＣＰＵ２０は、全ての画素に対して処理を行った場合（ステップＳ２０７の判定がＹＥＳとなる場合）には、ステップＳ２０８に進む。一方、ＣＰＵ２０は、全ての画素に対して処理を行っていない場合（ステップＳ２０７の判定がＮＯとなる場合）には、ステップＳ２０４に戻り、拡大した領域を想定する。
【００６８】
ステップＳ２０８は、終了判定を行う処理である。ＣＰＵ２０は、ステップＳ１１３と同様の処理を行い、領域Ｉ＋ｑが変化しなくなったか否かを判定する。ＣＰＵ２０は、領域Ｉ＋ｑが変化しなくなったと判定した場合（ステップＳ２０８の判定がＹＥＳとなる場合）には、領域Ｉ＋ｑを詳細領域Ｄとする。これにより、顔領域Ｆにおける肌領域が詳細領域Ｄとなる。そして、ＣＰＵ２０は、ステップＳ２０９に進む。一方、ＣＰＵ２０は、領域Ｉ＋ｑが変化すると判定した場合（ステップＳ２０８の判定がＮＯとなる場合）には、ステップＳ２０４に戻り、拡大した領域を想定する。
【００６９】
ステップＳ２０９は、ステップＳ１１４と同様の処理である。
【００７０】
以上説明したように、第２実施形態の撮像装置１０は、領域Ｉの状態を示す値を算出し、その値が最も好ましい値となるような最適解を見つけることにより、詳細領域Ｄを特定する。したがって、第２実施形態の撮像装置１０によれば、第１実施形態と同様の効果を得ることができる。
【００７１】
なお、第１実施形態では、同一温度ＴＣで、ステップＳ１０４からステップＳ１０９の処理を１００回繰り返す例を示したが、これに限らない。例えば、厳密解を求めたい場合は、クーリングにより温度Ｔを下げていくほど、ステップＳ１０４からステップＳ１０９を繰り返す回数を多くすることが好ましい。
【００７２】
また、第１実施形態では、ステップＳ１１２で温度ＴＣを下げる際に、γ＝０．９の定数とする例を示したが、γの値は一例であり、限定されない。
【００７３】
また、第１実施形態では、ステップＳ１１４で詳細領域Ｄに対して美肌処理を行う例を示したが、詳細領域Ｄに対する処理は、これに限らない。また、第２実施形態においても同様とする。
【００７４】
また、第１実施家形態のステップＳ１０４では、１画素ずつ領域Ｉの外側に隣接する画素を追加する例を示したが、複数の画素ずつ追加しても良い。例えば、領域Ｉの外側に隣接する画素から、ランダムに抽出した５％の画素を追加しても良い。また、追加する画素数は、領域Ｉに応じて変化させても良い。例えば、初期領域に近い状態では、追加する画素数を大きくし、領域Ｉが拡大するに従い、追加する画素数を小さくする。これにより、領域Ｉが小さい状態では、演算回数を削減できる。また、最適解に近づいた状態では、細かい変化となるため、正確に詳細領域Ｄを特定することができる。なお、ステップＳ１０７においても同様とする。また、第２実施形態においても同様とする。
【００７５】
また、第１実施形態では、クーリングの回数を規定していないが、クーリングの回数を規定しても良い。この場合、ＣＰＵ２０は、ステップＳ１１６の後で、クーリングの回数が所定の回数Ｓに達したか否かを判定する。そして、ＣＰＵ２０は、クーリングが所定の回数Ｓに達したと判定した場合、温度Ｔｃ＋Ｓ＋１＝０に設定し、ステップＳ１０４からステップＳ１１３の処理を実行する。これにより、詳細領域特定部３１は、温度Ｔｃ＋Ｓ＋１＝０の状態における局所解（ローカルミニマム）を得ることができる。
【００７６】
また、第１実施形態及び第２実施形態では、概略領域を特定する際に、目の中心と口の中心とを結ぶ例を示したが、これに限らない。例えば、目の任意の端点と、口の任意の端点とを結んでも良い。
【００７７】
また、第１実施形態及び第２実施形態では、エネルギーＥを算出する際に、ＲＧＢ色空間を用いる例を示したが、これに限らない。例えば、ＨＳＶ、Ｙｕｖ等の色空間を用いても良い。
【００７８】
また、第１実施形態及び第２実施形態では、１人の人物を撮像した画像４０から詳細領域Ｄを特定する例を示したが、複数の人物を撮像した画像４０から詳細領域Ｄを特定することも可能である。
【００７９】
また、第１実施形態及び第２実施形態では、撮像装置１０を例に挙げて説明したが、これに限らない。例えば、図１に示した以外の構成を有する撮像装置にも本発明を同様に適用することができる。また、パソコン、デジタルフォトフレームなどの画像処理装置にも本発明を同様に適用することができる。さらに、図１に示す機能や、図４、７に示すフローチャートの流れをプログラムとしてコンピュータ読み取り可能な記録媒体に記録し、該プログラムをコンピュータにて実行するようにしても良い。
【符号の説明】
【００８０】
１０…撮像装置、２０…ＣＰＵ、２９…抽出部、３０…概略領域特定部、３１…詳細領域特定部、３２…画像処理部
【図１】
0005874440.tif 000005
【図２】
0005874440.tif 000006
【図３】
0005874440.tif 000007
【図４】
0005874440.tif 000008
【図５】
0005874440.tif 000009
【図６】
0005874440.tif 000010
【図７】
0005874440.tif 000011