(57)【特許請求の範囲】
【請求項１】
顔の部分を含む画像を記憶する顔画像データベースと、
撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定する適正画像判定部と、
上記適正画像判定部によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正する第１補正部と、
上記適正画像判定部によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、上記顔画像データベースの中から上記失敗画像の中の顔と一致または類似する顔画像を検索し、この検索した顔画像の明るさを補正する第２補正部と、
上記第２補正部によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行う画像合成部と、
を有することを特徴とする顔画像合成装置。
【請求項２】
上記適正画像判定部は、上記撮影画像のヒストグラムを生成し、このヒストグラムに基づいて判定することを特徴とする請求項１に記載の顔画像合成装置。
【請求項３】
上記適正画像判定部は、上記撮影画像の顔の部分の平均的な明るさと背景の明るさの差に基づいて判定することを特徴とする請求項１に記載の顔画像合成装置。
【請求項４】
上記適正画像判定部は、上記撮影画像の顔の部分の中の明暗の差に基づいて判定することを特徴とする請求項１に記載の顔画像合成装置。
【請求項５】
上記第２補正部は、上記検索した顔画像が、上記背景の明るさから、上記撮影画像の顔の部分の平均的な明るさと上記背景の明るさの差に基づく補正量を減算した明るさとなるように補正することを特徴とする請求項１に記載の顔画像合成装置。
【請求項６】
上記第２補正部は、上記撮影画像の顔の部分の中の明暗の差に基づいて失敗画像と判定された場合には、上記検索した顔画像に対して、上記顔の部分の中の明暗差を圧縮するように補正することを特徴とする請求項１に記載の顔画像合成装置。
【請求項７】
上記合成部は、上記第２補正部によって補正された顔画像の目鼻位置を、上記失敗画像の顔画像の目鼻位置と一致するように画像を置き換えることを特徴とする請求項１に記載の顔画像合成装置。
【請求項８】
上記データベースは、人物ごとに、表情と顔の向きが異なる顔画像を記憶することを特徴とする請求項１に記載の顔画像合成装置。
【請求項９】
さらに、画像を表示する表示部と、
上記表示部に表示する画像の表示制御部と、
を有し、
上記表示制御部は、上記撮影画像の顔の部分を拡大表示し、この拡大表示した顔の部分を、上記合成部によって合成された顔画像を拡大表示し、この合成された顔画像を含む撮影画像の元のサイズに縮小表示することを特徴とする請求項１に記載の顔画像合成装置。
【請求項１０】
撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定し、
上記適正画像か否かの判定によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正し、
上記適正画像か否かの判定によって失敗画像と判定され、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、顔の部分を含む画像を記憶する顔画像データベースの中から上記失敗画像の中の顔と一致する顔画像を検索し、この検索した顔画像の明るさを補正し、
上記補正によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行う、
ことを特徴とする顔画像合成方法。
【請求項１１】
顔画像データベースを有するコンピュータにおいて、顔画像合成を行わせるコンピュータプログラムにおいて、
撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定するステップと、
上記適正画像か否かの判定によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正するステップと、
上記適正画像か否かの判定によって失敗画像と判定され、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、上記顔画像データベースの中から上記失敗画像の中の顔と一致する顔画像を検索し、この検索した顔画像の明るさを補正するステップと、
上記補正によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行うステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顔画像合成装置、顔画像合成方法、およびプログラムに関し、詳しくは、逆光状態や陰影の差の激しい屋外等で撮影した失敗画像の復元が可能な顔画像合成装置、顔画像合成方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラ等の撮影機能付き携帯機器（撮影装置）は、画像処理機能が向上し、様々な苦手撮影シーンを克服してきている。例えば、暗いシーンや逆光シーンにおいては、撮像部の感度やゲインを高くし、また、部分的に感度やゲインを切り換えることにより、フィルムカメラの時代では不可能であった処理を行い、失敗を防止している。また、画像処理技術の向上により、露出不足により失敗した撮影画像であっても、画像の明るさを補正することにより適正画像とすることも可能となってきている。
【０００３】
さらに、最近では、画像を合成することにより、撮影者の所望する写真を得るようにした撮影装置が提案されている。例えば、特許文献１には、目を閉じた人物像に対して目を開かせるような画像処理を行い、撮影画像を修正する画像処理方法が提案されている。すなわち、目を閉じた人物画像の目の部分を、開いている目の画像に置き換える合成を行うことが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１９７２９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このように、画像合成により失敗画像を修正する装置や方法は提案されているが、画像合成を利用して露出不良の撮影画像から適正画像を得ることは、何ら開示されていない。すなわち、黒つぶれや白とびのように、背景と顔画像に激しい輝度差がある状況においては、顔の部分の陰影等の情報が失われてしまい、画像の明るさを補正するような画像処理では、救済することができない。一方、撮影画像の内の顔や目の部分等の画像を予め用意した画像に置き換える画像合成は提案されているが、露出不良の撮影画像を救済するものではない。
【０００６】
本発明は、このような事情を鑑みてなされたものであり、黒つぶれや白とび等、撮影画像の内の顔等の部分の陰影に関する情報が失われている撮影画像を簡単に復元することの可能な顔画像合成装置、顔画像合成方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の発明に係わる顔画像合成装置は、顔の部分を含む画像を記憶する顔画像データベースと、撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定する適正画像判定部と、上記適正画像判定部によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正する第１補正部と、上記適正画像判定部によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、上記顔画像データベースの中から上記失敗画像の中の顔と一致または類似する顔画像を検索し、この検索した顔画像の明るさを補正する第２補正部と、上記第２補正部によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行う画像合成部と、を有する。
【００１０】
第２の発明に係わる顔画像合成装置は、上記第１の発明において、上記適正画像判定部は、上記撮影画像のヒストグラムを生成し、このヒストグラムに基づいて判定する。
第３の発明に係わる顔画像合成装置は、上記第１の発明において、上記適正画像判定部は、上記撮影画像の顔の部分の平均的な明るさと背景の明るさの差に基づいて判定する。
第４の発明に係わる顔画像合成装置は、上記第１の発明において、上記適正画像判定部は、上記撮影画像の顔の部分の中の明暗の差に基づいて判定する。
【００１１】
第５の発明に係わる顔画像合成装置は、上記第１の発明において、上記第２補正部は、上記検索した顔画像が、上記背景の明るさから、上記撮影画像の顔の部分の平均的な明るさと上記背景の明るさの差に基づく補正量を減算した明るさとなるように補正する。
【００１２】
第６の発明に係わる顔画像合成装置は、上記第１の発明において、上記第２補正部は、上記撮影画像の顔の部分の中の明暗の差に基づいて失敗画像と判定された場合には、上記検索した顔画像に対して、上記顔の部分の中の明暗差を圧縮するように補正する。
【００１３】
第７の発明に係わる顔画像合成装置は、上記第１の発明において、上記合成部は、上記第２補正部によって補正された顔画像の目鼻位置を、上記失敗画像の顔画像の目鼻位置と一致するように画像を置き換える。
第８の発明に係わる顔画像補正及び合成装置は、上記第１の発明において、上記データベースは、人物ごとに、表情と顔の向きが異なる顔画像を記憶する。
【００１４】
第９の発明に係わる顔画像合成装置は、上記第１の発明において、さらに、画像を表示する表示部と、上記表示部に表示する画像の表示制御部と、を有し、上記表示制御部は、上記撮影画像の顔の部分を拡大表示し、この拡大表示した顔の部分を、上記合成部によって合成された顔画像を拡大表示し、この合成された顔画像を含む撮影画像の元のサイズに縮小表示する。
【００１５】
第１０の発明に係わる顔画像合成方法は、撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定し、上記適正画像か否かの判定によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正し、上記適正画像か否かの判定によって失敗画像と判定され、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、顔の部分を含む画像を記憶する顔画像データベースの中から上記失敗画像の中の顔と一致する顔画像を検索し、この検索した顔画像の明るさを補正し、上記補正によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行う。
【００１６】
第１１の発明に係わるプログラムは、顔画像データベースを有するコンピュータにおいて、顔画像合成を行わせるコンピュータプログラムにおいて、撮影画像の中で顔の部分の明るさに基づいて、適正画像か否かを判定するステップと、上記適正画像か否かの判定によって失敗画像と判定された場合に、上記撮影画像の明るさの補正によって適正画像となる場合に、上記撮影画像を補正するステップと、上記適正画像か否かの判定によって失敗画像と判定され、上記撮影画像の明るさの補正によって適正画像とすることはできない場合に、上記顔画像データベースの中から上記失敗画像の中の顔と一致する顔画像を検索し、この検索した顔画像の明るさを補正するステップと、上記補正によって補正された顔画像を、上記失敗画像の顔画像と置き換える画像合成を行うステップと、をコンピュータに実行させる。
【発明の効果】
【００１７】
本発明によれば、黒つぶれや白とび等、撮影画像の内の顔等の部分の陰影に関する情報が失われている撮影画像を簡単に復元することの可能な顔画像合成装置、顔画像合成方法、およびプログラムを提供することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１実施形態に係わるカメラの主として電気的構成を示すブロック図である。
【図２】本発明の第１実施形態に係わるカメラにおける顔画像の合成について説明する図である。
【図３】本発明の第１実施形態に係わるカメラにおいて、被写体の輝度分布を示す図であり、（ａ）は白とびの被写体の場合の輝度分布を示し、（ｂ）は黒つぶれの被写体の輝度分布を示す図である。
【図４】本発明の第１実施形態に係わるカメラにおいて、被写体の輝度分布の変形例であって、ヒストグラムによって示す図であり、（ａ）は白とびの被写体の場合の輝度分布を示し、（ｂ）は黒つぶれの被写体の輝度分布を示す図である。
【図５】本発明の第１実施形態に係わるカメラの顔補正・合成の動作を示すフローチャートである。
【図６】本発明の第１実施形態の変形例に係わるカメラにおいて、被写体の輝度分布を示す図であり、（ａ）は白とびの被写体の場合の輝度分布を示し、（ｂ）は黒つぶれの被写体の輝度分布を示す図である。
【図７】本発明の第１実施形態の変形例に係わるカメラの顔補正・合成の変形例の動作を示すフローチャートである。
【図８】本発明の第２実施形態に係わるカメラにおける顔画像の合成について説明する図であり、（ａ）は顔全体が暗い領域に入った場合の様子を示し、（ｂ）は（ａ）の顔画像を補完用参照データを用いて合成した画像を示す。
【図９】本発明の第２実施形態に係わるカメラにおける顔画像の合成について説明する図であり、（ａ）は顔の半分が暗い領域に入った場合の輝度分布を示し、（ｂ）は（ａ）の顔画像を補完用参照データを用いて合成した場合の輝度分布を示す。
【図１０】本発明の第２実施形態に係わるカメラにおいて、顔全体が暗いに入った場合の輝度分布を示し、（ａ）は補正・合成前の輝度分布であり、（ｂ）は補正・合成後の輝度分布を示す。
【図１１】本発明の第２実施形態に係わるカメラにおいて、顔部分が輝度差の大きい場合の輝度分布を示し、（ａ）は補正・合成前の輝度分布であり、（ｂ）は補正・合成後の輝度分布を示す。
【図１２】本発明の第２実施形態に係わるカメラの顔補正・合成の動作を示すフローチャートである。
【図１３】本発明の第２実施形態に係わるカメラの失敗顔部判定の動作を示すフローチャートである。
【図１４】本発明の第２実施形態に係わるカメラの失敗度合判定の動作を示すフローチャートである。
【図１５】本発明の第２実施形態に係わるカメラの失敗度に合わせＤＢ顔画像を補正の動作を示すフローチャートである。
【図１６】本発明の第２実施形態の変形例に係わるカメラにおける顔補正・合成した顔部分の表示を示す図である。
【図１７】本発明の第２実施形態の変形例に係わるカメラにおける被写体顔画像と補正ＤＢ顔画像の合成の補正の動作を示すフローチャートである。
【図１８】本発明の第２実施形態に係わるカメラにおいて、顔ＤＢの顔画像の取得を説明する図である。
【図１９】本発明の第２実施形態に係わるカメラにおいて、顔ＤＢの顔画像の取得を説明する図である。
【図２０】本発明の第２実施形態に係わるカメラにおいて、顔ＤＢに記憶された顔画像の一例を示す図である。
【図２１】本発明の第２実施形態に係わるカメラの顔画像ＤＢ作成の動作を示すフローチャートである。
【図２２】本発明の第３実施形態に係わるカメラの主として電気的構成を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、図面に従って、本発明を適用したカメラを用いて好ましい実施形態について説明する。本発明の好ましい一実施形態に係わるカメラは、デジタルカメラであり、撮像部を有し、この撮像部によって被写体像を画像データに変換し、この変換された画像データに基づいて、被写体像を本体の背面に配置した表示部にライブビュー表示する。撮影者はライブビュー表示を観察することにより、構図やシャッタチャンスを決定する。レリーズ操作時には、画像データが記録部に記録される。記録部に記録された画像データは、再生モードを選択すると、表示部に再生表示することができる。また、画像データを記録する際、または記録済みの画像データを再生する際に、逆光等により、被写体の顔の部分が失敗画像となった場合には、顔データベース（ＤＢ）から同一人物の顔の画像データを読出し、周囲の明るさと違和感が生じないように明るさを補正した上で、失敗画像の顔の部分を置き換える画像合成を行う。
【００２０】
図１に示すブロック図を用いて、本発明の第１実施形態に係わるカメラ１０の構成について説明する。カメラ１０は、信号処理及び制御部１、撮像部２、顔検出部３、記録部４、ストロボ部５、操作判定部６、音声収録部７、表示部８、時計部９、フラッシュメモリ１１、通信部１２等から構成される。
【００２１】
撮像部２は、撮影レンズ、シャッタ等の露出制御部、撮像素子、撮像素子の駆動及び読出回路等を含み、撮影レンズによって形成された被写体像を撮像素子によって画像データに変換し、これを出力する。なお、本明細書においては、画像データは、撮像素子から出力される画像信号に限らず、信号処理及び制御部１によって処理された画像データ、および記録部４に記録されている画像データ等についても使用する。
【００２２】
信号処理及び制御部１は、ＣＰＵ（Central Processing Unit：中央処理装置）およびその周辺のハードウエア回路によって構成され、フラッシュメモリ１１に記憶されているプログラムに従ってカメラ１０の全体のシーケンスを制御する。信号処理及び制御部１は、露出不良判定部１ｂを含む。露出不良判定部１ｂは、撮像部２から出力される画像データを分析し、被写体の顔が周囲よりも暗く露出不足になり黒つぶれ、または顔が周囲よりも明るく露出過剰となり白とびとなっているか否かを判定し、また被写体の顔の陰影を分析し、顔の中の一部分が暗くまたは明るいことにより露出不良になっているか否かを判定する。また、信号処理及び制御部１は、画像合成、顔部分のトリミング、補正処理等の種々の画像処理も行う。
【００２３】
顔検出部３は、撮像部２から出力される画像データに基づいて、被写体像の中に人物の顔が含まれているか否かを検出する。顔の検出は、画像内に人間の顔の特徴を有する陰影パターンがあるか否かに基づいて行う。顔が含まれていた場合には、その顔の位置、顔の大きさ、顔の数等の検出も行う。また、同一人であるか否かを判定するに必要な特徴点の抽出も行う。また、表情を判定するための目や口元の特徴や、顔の向きを判定するための鼻筋線２７（図１９参照）等の検出も行う。
【００２４】
記録部４は、カメラ本体に脱着自在な記録媒体、若しくは内蔵の記録媒体から構成される。記録部４には、撮像部２から出力され、信号処理及び制御部１によって画像処理された静止画や動画の画像データや、付随するデータが記録される。付随データとしては、顔検出部３によって検出された顔の位置、大きさ、数等や、また後述する時計部９から取得した撮影日時情報等がある。
【００２５】
記録部４内の顔画像データベース（顔画像ＤＢ）４ｂには、家族や友人等の個人ごとに顔の画像データが記録されている。この顔画像ＤＢ４ｂを用いることにより、撮影画像内の顔画像のどの人かを特定することができる。また、顔画像ＤＢ４ｂに記憶されている画像データは、個人ごとに異なる向きの顔の画像データや異なる表情の顔の画像データが記録されている。露出不足と判定された顔画像に対して、この画像データの顔の部分に対して置き換え合成を行うことにより、失敗画像を復元することができる。上述の信号処理及び制御部１は、撮影画像の顔の部分と一致する人物の顔の画像を、この顔画像ＤＢ４ｂの中から検索可能である。
【００２６】
時計部９は、計時機能を有し、また日時情報を出力する。撮影時には、前述したように日時情報が画像データと共に記録部４の記録媒体に記録される。操作判定部６は、カメラ１０の外装に配置されたレリーズ釦、電源釦、再生釦、メニュー釦等の各種操作部材を有し、この操作部材の操作状態を判定し、この判定結果を画像処理及び制御部１に出力する。
【００２７】
表示部８は、信号処理及び制御部１に接続されており、本体の背面等に配置された液晶や有機ＥＬ等のモニタを有し、ライブビュー表示や、撮影時のレックビュー表示や、記録部４に記録されている記録画像の表示や、メニュー画面等の制御画面を表示する。
【００２８】
ストロボ部５は、信号処理及び制御部１に接続されており、信号処理及び制御部１からの指令に応じて、被写体に対して補助照明を行う。信号処理及び制御部１は、撮影時の被写体が撮影に相応しい明るさや陰影状態となっていない場合に、補助照明の発光指令を行う。
【００２９】
音声収録部７は、マイクを有し、周囲の音声を音声信号に変換し、信号処理及び制御部１に出力する。動画の撮影時等に、画像データの記録と共に、音声データを記録するようにしてもよい。フラッシュメモリ１１は、不揮発性の電気的に書き換え可能なメモリであり、信号処理及び制御部１によって実行されるプログラムを記憶しており、また、カメラ１０の制御に必要な各種データも記憶する。なお、プログラム等を記憶可能であれば、フラッシュメモリに限らず、マスクＲＯＭ等、他の記憶装置であってもよい。通信部１２は、無線または有線によりパーソナルコンピュータ等の外部機器やアクセサリと通信を行い、またインターネット等を通じて外部サーバーとも通信を行う。
【００３０】
次に、図２を用いて、本実施形態における失敗画像の補正および合成による復元について説明する。図２（ａ）は、カメラ１０によって撮影された撮影画像の一例を示す。この例では、被写体Ａ２１は適正露出となっているが、後方にいる被写体Ｂ２２は十分な明るさがないために、露出アンダーとなっている。この場合、被写体Ｂ２２に対して、部分的に画像処理を行うことにより、被写体Ｂ２２の顔の部分を識別できる程度に補正することができる。例えば、黒つぶれと言われる状態であっても、ヒストグラムにおける伸長化または平坦化を行うことにより、黒つぶれのない画像を得ることが可能である。同様に、被写体Ｂ２２の顔の部分が非常に明るく白とびと言われる状態であっても同様の技術により補正が可能である。
【００３１】
しかしながら、極度の黒つぶれの場合には、画像処理により補正を行っても、元の画像の情報量が少ないことから、図２（ｂ）に示すようにノイズの多い画像となってしまう。このような場合、本実施形態においては、図２（ｃ）に示すように、適正露出で撮影された被写体Ｂ２２ａの顔の部分の補完用参照データを用いて、被写体Ｂ２２の顔の部分に対して、被写体Ｂ２２の顔の部分を置き換える画像合成を行うようにしている。
【００３２】
すなわち、撮影画像においては、顔は主要な被写体であることが多く、他の部分より優先して露出やピントを合わせたいという要望がある。このため、近年の撮影装置は顔認識装置を搭載し、顔を認識し、露出やピントを合わせるようにしている。また、近年では、画像処理技術の進歩が著しく、元の撮影画像の一部分を他の画像に置き換える画像処理技術も種々提案されており、例えば、目を閉じている写真に対して、同一人の目の開いている画像をあてはめる画像処理が提案されている。また、アフィン変換による画像合成は一般的になってきており、顔画像への応用も提案されている。そこで、本実施形態においては、この顔認識と画像処理技術を利用し、露出不足であって、画像の明るさの補正によっては適正露出の画像が得られない場合には、画像合成により、顔の部分を置き換える画像合成を行うようにしている。
【００３３】
図３（ａ）は、露光状態（明るさ）を示す輝度分布図であり、ある撮影画像の一例について、横軸に輝度値をとり、縦軸に明るさの度数をとっている。この図３（ａ）に示す撮影画像の一例はアンダー露出の場合であり、輝度値の低い（暗い）部分が多く、いわゆる黒つぶれとなっている。また、図３（ｂ）は他の撮影画像の一例であり、オーバー露出の場合であり、輝度値の高い（明るい）部分が多く、いわゆる白とびとなっている状態である。
【００３４】
図３（ａ）（ｂ）に示すような輝度分布の撮影画像は、撮影者の意図により、また被写体によっては必ずしも失敗写真とは言えない場合もあるが、人物やペット等を対象とした写真においては、殆どの場合が失敗写真と言える。失敗写真と言えるか否かの判定としては、本実施形態においては、黒つぶれの場合には、輝度値ゼロにおける度数Ｕ（図３（ａ）参照）を用いて判定する。また、白とびの場合には、最大輝度値における度数Ｏ（図３（ｂ）参照）を用いて判定する。なお、図３（ａ）（ｂ）に示す輝度分布図ではノイズによる誤判断のおそれがあることから、図４（ａ）（ｂ）に示すように、輝度値幅を粗くしたヒストグラムを用いてもよい。
【００３５】
次に、本実施形態における顔補正・合成の動作について、図５に示すフローチャートを用いて説明する。このフローチャートおよび後述するフローチャートは、フラッシュメモリ１１に記憶されているプログラムに従って信号処理及び制御部１が実行する。この顔補正・合成のフローは、カメラ１０が撮影を行い、画像データを記録部４に記録する際、または、記録済みの画像データを読出し再生表示を行う場合に実行する。
【００３６】
顔補正・合成のフローに入ると、まず、第１の顔部のヒストグラムを作成する（Ｓ１）。ここでは、画像データの中から、顔検出部３によって検出された顔の位置に対応する画像データを用いて、所定幅の輝度値ごとに度数を求め、ヒストグラムを作成する。顔が複数ある場合には、順次、顔の部分を選択してヒストグラムを生成する。
【００３７】
第１の顔部のヒストグラムを生成すると、次に、輝度値ゼロにおける度数Ｕが閾値Ｕthよりも大きいか否かの判定を行う（Ｓ３）。ここでは、露光不足であり、黒つぶれにより失敗画像となっているか否かを判定するために、度数Ｕと閾値Ｕthを比較し、度数Ｕが閾値Ｕthよりも大きい否かを判定する。従って、閾値Ｕthは露光不足で失敗画像といえるか否かを判定できる程度の値であればよい。
【００３８】
ステップＳ３における判定の結果、度数Ｕが閾値Ｕthよりも大きかった場合には、被写体の第１の顔部が暗く、黒つぶれになっている。この場合には、次に、度数Ｕが極限値Ｕlimitよりも大きいか否かを判定する（Ｓ５）。極限値Ｕlimit＞閾値Ｕthの関係があり、画像の明るさ補正により適正画像とすることができるか否かの判定を行う。
【００３９】
ステップＳ５における判定の結果、度数Ｕ≧極限値Ｕlimitでなかった場合には、黒つぶれ補正処理を行う（Ｓ７）。この場合は、閾値Ｕth＜度数Ｕ＜極限値Ｕlimitであり、被写体の第１の顔部は失敗画像といえるが、顔の部分の明るさを画像処理に適正な明るさに補正する所謂、黒つぶれの補正処理によって、適正画像とすることができる。
【００４０】
一方、ステップＳ５における判定の結果、度数Ｕ≧極限値Ｕlimitであった場合には、次に、同一人物の顔画像がある否かの判定を行う（Ｓ９）。この場合は、閾値Ｕth＜極限値Ｕlimit≦度数Ｕであり、被写体は失敗画像であり、しかも極度の黒つぶれであって顔の陰影が殆どないことから、黒つぶれ補正処理によっては、適正画像とすることができない。そこで、画像の内の第１の顔部を、顔画像ＤＢ４ｂに記録されている同一人の顔部に置き換える画像合成を行う。このステップＳ９においては、顔画像ＤＢ４ｂを検索し、同一人の顔部の補完用参照データが顔画像ＤＢ４ｂに記録されているかを判定する。
【００４１】
ステップＳ９における判定の結果、同一人物の顔画像が有った場合には、次に、第１の顔部の補正・合成処理を行う（Ｓ１１）。ここでは、図２に示した例では、被写体Ｂ２２の顔の部分を、同一人の被写体Ｂ２２ａ顔の部分の補完用参照データに置き換える。ただし、被写体Ｂ２２ａの顔の明るさは適正露光であり、そのまま、顔の部分を置き換えると、周囲の明るさと大きく異なり違和感が生ずる。そこで、本実施形態においては、背景の明るさよりも所定段数だけ明るくなる程度に顔の明るさを補正する。補完用参照データに基づく顔部の明るさを補正すると、もとの撮影画像の第１の顔部と置き換える画像合成を行う。なお、顔画像に補正を施してから画像合成を行う以外にも、先に顔画像を合成し、合成後、顔画像とその周辺の画像の露出差が目立たないように画像を補正するようにしてもよい。
【００４２】
ステップＳ３における判定の結果、度数Ｕが閾値Ｕthよりも大きくなかった場合には、次に、最大輝度値における度数Ｏが閾値Ｏthよりも大きいか否かの判定を行う（Ｓ２１）。ここでは、第１の顔部が露光オーバーであり、失敗画像となっているか否かを判定するために、度数Ｏと閾値Ｏthを比較し、度数Ｏが閾値Ｏthよりも大きい否かを判定する。従って、閾値Ｏthは露光オーバーで失敗画像といえるか否かを判定できる程度の値であればよい。
【００４３】
ステップＳ２１における判定の結果、度数Ｏが閾値Ｏthよりも大きかった場合には、被写体の第１の顔部が明るくなっており、露光オーバーの状態である。この場合には、次に、度数Ｏが極限値Ｏlimitよりも大きいか否かを判定する（Ｓ２３）。なお、極限値Ｏlimitは、閾値Ｏth＜極限値Ｏlimitの関係があり、度数Ｏ＜極限値Ｏlimitであれば、第１の顔部の明るさ補正により適正画像とすることができる。
【００４４】
ステップＳ２３における判定の結果、度数Ｏ≧極限値Ｏlimitでなかった場合には、次に、白とび補正処理を行う（Ｓ２５）。この場合は、閾値Ｏth＜度数Ｏ＜極限値Ｏlimitであり、被写体の第１の顔部は失敗画像といえるが、顔部の明るさを画像処理に適正な明るさに補正する所謂、白とび補正処理によって、適正画像とすることができる。
【００４５】
一方、ステップＳ２３における判定の結果、度数Ｏ≧極限値Ｏlimitであった場合には、次に、ステップＳ９と同様に、第１の顔部と同一人物の顔画像がある否かの判定を行う（Ｓ２７）。この場合は、閾値Ｏth＜極限値Ｏlimit≦度数Ｏであり、被写体の第１の顔部は失敗画像であり、しかも極度の白とびであって顔の陰影が殆どないことから、画像処理によっては、適正画像とすることができない。そこで、画像の内の顔の部分を、顔画像ＤＢ４ｂに記録されている同一人の顔に置換する画像合成を行う。このステップＳ２７においては、同一人の顔の部分の補完用参照データが顔画像ＤＢ４ｂに記録されているか否かを判定する。
【００４６】
ステップＳ２７における判定の結果、同一人物の顔画像が有った場合には、次に、第１の顔部の補正・合成処理を行う（Ｓ２９）。ここでは、失敗画像となった顔の部分について、同一人の被写体Ｂ２２ａの顔の部分の補完用参照データに置き換える。ステップＳ１１の場合と同様、そのまま、顔の部分を置き換えると、顔部の背景の明るさと大きく異なり違和感が生ずることから、画像補正を行う。画像補正としては、背景の明るさよりも所定段数だけ暗くすればよい。補完用参照データに基づく顔部の明るさを補正すると、もとの撮影画像の第１の顔部と置き換える画像合成を行う。なお、顔画像に補正を施してから画像合成を行う以外にも、先に顔画像を合成し、合成後、顔画像とその周辺の画像の露出差が目立たないように画像を補正するようにしてもよい。
【００４７】
ステップＳ７、Ｓ１１における処理を行うと、またはステップＳ９における判定の結果、同一人物の顔画像がなかった場合には、またはステップＳ２５、Ｓ２９における処理を行うと、またはステップＳ２７における判定の結果、同一人物の顔画像がなかった場合には、顔補正・合成の処理を終了する。なお、撮影画像の中に複数の顔の部分が含まれている場合には、第２の顔部、第３の顔部と、順次顔部を選択して、顔補正・合成のフローを実行する。
【００４８】
このように、本発明の第１実施形態においては、顔の部分が黒つぶれ、または白とびのために適正露光となっていなかった場合には、顔部の補正処理により、適正画像とする。しかし、補正処理によって適正画像とすることができない場合には（ステップＳ５→Ｙｅｓ、Ｓ２３→Ｙｅｓの場合）、顔画像ＤＢ４ｂに記録されている補完用参照データを用いて、顔の部分を置換する画像合成を行うようにしている（Ｓ１１、Ｓ２９）。このため、逆光等、輝度差が大きい状況において失敗した撮影画像を簡単に復元することができる。特に、輝度差がそれほど大きくない場合には、黒つぶれ補正処理、又は白とび補正処理によって撮影画像を活かして補正を行うようにしている。また、輝度差が大きい場合であっても、顔画像の置換による画像合成を行うようにしているので、厳しい撮影条件の場合であっても、失敗画像を復元することができる。
【００４９】
なお、ステップＳ９またはＳ２７においては、同一人の顔画像が顔画像ＤＢ４ｂに記録されているか否かを判定したが、これに限らず、顔の向き、顔部の画素数、露出やピント状態等、画像合成に適した顔画像があるか否かについても判定するルーチンを挿入するようにしてもよい。さらに、画像合成に適した顔画像の候補が複数ある場合には、顔の向き、表情、輝度、ピント等を勘案して最適の候補を判断するルーチンを挿入するようにしてもよい。
【００５０】
次に、本発明の第１実施形態の変形例について、図６および図７を用いて説明する。第１実施形態においては、黒つぶれや白とびの程度を、度数Ｕまたは度数Ｏを用いて評価していた。これに対して、本変形例においては、黒つぶれの程度を、図６（ａ）に示すように、輝度値ゼロから所定の度数Ｎ以上の度数を有するまでの幅ΔＥｕを用いて判定するようにしている。また、白とびの程度は、図６（ｂ）に示すように、輝度最大値から所定の度数Ｎ以上の幅ΔＥｏを用いて判定するようにしている。
【００５１】
本変形例における顔補正・合成の動作を、図７に示すフローチャートを用いて説明する。このフローチャートにおいて、図５に示すフローチャートと同一の処理を行うステップには、同一のステップ番号を付し、詳しい説明は省略する。
【００５２】
図７に示すフローに入ると、まず、第１の顔部のヒストグラムの作成を行う（Ｓ１）。続いて、輝度値ゼロから所定の度数Ｎ以上の度数を有するまでの幅ΔＥｕが閾値ΔＥuthよりも大きいか否かの判定を行う（Ｓ４）。ここでは、第１の顔部が露光不足であり、失敗画像となっているか否かを判定するために、幅ΔＥｕと閾値Ｕuthを比較し、幅ΔＥｕが閾値Ｕuthよりも大きい否かを判定する。従って、閾値Ｕuthは露光不足により黒つぶれとなり失敗画像といえるか否かを判定できる程度の値であればよい。
【００５３】
ステップＳ４における判定の結果、幅ΔＥｕが閾値Ｅuthよりも小さかった場合には、次に、幅ΔＥｕが極限値Ｅulimitよりも小さいか否かを判定する（Ｓ６）。閾値Ｅuth＞極限値Ｅulimitの関係があり、顔の部分の明るさを補正することにより適正画像にすることができるか否かを判定する。ステップＳ６における判定の結果、極限値Ｅulimit≧幅ΔＥｕでなかった場合には、次に、黒つぶれ補正処理を行う（Ｓ７）。顔の部分の明るさを黒つぶれ補正処理によって、適正画像にする。
【００５４】
ステップＳ６における判定の結果、極限値Ｅulimit≧幅ΔＥｕであった場合には、第１実施形態の場合と同様に、次に、同一人物の顔画像がある否かの判定を行う（Ｓ９）。この場合は、被写体の第１顔部は失敗画像であり、しかも顔の陰影が殆どないことから、撮影画像の顔の部分を、顔画像ＤＢ４ｂに記録されている同一人の顔に置換する画像合成を行う。
【００５５】
ステップＳ９における判定の結果、同一人物の顔画像が有った場合には、次に、第１実施形態と同様に、第１の顔部の補正・合成処理を行う（Ｓ１１）。ここでは、被写体の顔の部分を、同一人の被写体Ｂ２２ａの補完用参照データに置き換える。画像補正としては、画面全体の背景の明るさよりも所定段数だけ明るくすればよい。なお、顔画像に補正を施してから画像合成を行う以外にも、先に顔画像を合成し、合成後、顔画像とその周辺の画像の露出差が目立たないように画像を補正するようにしてもよい。
【００５６】
ステップＳ４における判定の結果、幅ΔＥｏが閾値Ｅothよりも小さくなかった場合には、次に、輝度最大値から所定の度数Ｎ以上の幅ΔＥｏが閾値Ｅothよりも小さいか否かの判定を行う（Ｓ２２）。ここでは、露光オーバーであり、失敗画像となっているか否かを判定するために、幅ΔＥｏと閾値Ｅothを比較し、幅ΔＥｏが閾値Ｅothよりも小さいか否かを判定する。従って、閾値Ｅothは露光オーバーで失敗画像といえるか否かを判定できる程度の値であればよい。
【００５７】
ステップＳ２２における判定の結果、幅ΔＥｏが閾値Ｅothよりも小さかった場合には、顔の部分が明るくなっており、露光オーバーの状態である。この場合には、次に、幅ΔＥｏが極限値Ｅolimitよりも小さいか否かを判定する（Ｓ２４）。なお、極限値Ｅolimitは、極限値Ｅolimit＜閾値Ｅothの関係があり、極限値Ｅolimit＜幅ΔＥoth＜閾値Ｅothであれば、画像の顔の部分の明るさ補正により適正画像とすることができる。
【００５８】
ステップＳ２４における判定の結果、極限値Ｅolimit≧幅ΔＥｏでなかった場合には、次に、第１実施形態と同様に、白とび補正処理を行う（Ｓ２５）。この場合は、極限値Ｅolimit＜幅ΔＥoth＜閾値Ｅothであり、被写体の第１の顔部は失敗画像といえるが、白とび補正処理によって、適正画像とすることができる。
【００５９】
ステップＳ２４における判定の結果、極限値Ｅolimit≧幅ΔＥｏであった場合には、次に、第１実施形態と同様に、同一人物の顔画像がある否かの判定を行う（Ｓ２７）。ここでは、同一人の顔の部分の補完用参照データが顔画像ＤＢ４ｂに記録されているか否かを判定する。
【００６０】
ステップＳ２７における判定の結果、同一人物の顔画像が有った場合には、次に、第１実施形態と同様に、第１の顔部の補正・合成処理を行う（Ｓ２９）。ここでは、失敗画像となった顔の部分について、同一人の被写体Ｂ２２ａの顔の部分の補完用参照データに置き換える。第１実施形態の場合と同様、そのまま、顔の部分を置き換えると、周囲の明るさと大きく異なり違和感が生ずることから、画像補正を行う。画像補正としては、画面全体の背景の明るさよりも所定段数だけ暗くすればよい。なお、顔画像に補正を施してから画像合成を行う以外にも、先に顔画像を合成し、合成後、顔画像とその周辺の画像の露出差が目立たないように画像を補正するようにしてもよい。
【００６１】
ステップＳ７、Ｓ１１における処理を行うと、またはステップＳ９における判定の結果、同一人物の顔画像がなかった場合には、またはステップＳ２５、Ｓ２９における処理を行うと、またはステップＳ２７における判定の結果、同一人物の顔画像がなかった場合には、顔補正・合成の処理を終了する。なお、撮影画像の中に複数の顔の部分が含まれている場合には、第２の顔部、第３の顔部と、順次顔部を選択して、顔補正・合成のフローを実行する。
【００６２】
このように、本発明の第１実施形態の変形例においては、顔画像の部分の黒つぶれや白とびの状態を、輝度値ゼロから所定の度数Ｎ以上の度数を有するまでの幅ΔＥｕや、輝度最大値から所定の度数Ｎ以上の幅ΔＥｏを用いて判定するようにしている。第１実施形態や変形例に示した度数や幅以外であっても、黒つぶれや白とび等の明るさによる失敗画像を判定することができる指標であれば、本発明の実施形態に適用することができる。
【００６３】
なお、第１実施形態や変形例においては、顔の部分の画像データのヒストグラム分析を行うにあたって、顔全体の画像データを使用していた。しかし、これに限らず、顔の中の一部分を選択的に使用するようにしてもよい。例えば、黒髪の部分を除き、黒つぶれや白とびの影響を避けたい部分（例えば、目の周り）のみの画像データを用いてヒストグラム分析を行うようにしても構わない。
【００６４】
次に、本発明の第２実施形態について、図８ないし図２１を用いて説明する。第２実施形態も第１実施形態と同様に、黒つぶれや白とびによって失敗画像となった場合には、画像処理によって適正画像に復元するが、画像の陰影に関する情報が失われ画像処理によって適正画像に復元できない場合には、顔画像ＤＢ４ｂに記録されている補完用参照データの顔画像を合成することによって適正画像を復元するようにしている。また、第１実施形態においては、ステップＳ１１、Ｓ２９において、顔部の合成処理を行う際に、周囲の明るさを考慮し、顔部の明るさを補正していたが、第２実施形態においては、顔部の明るさの具体的な補正方法についても説明する。本実施形態における構成は、図１に示したブロック図と同様であるので、詳しい説明は省略する。
【００６５】
本実施形態における撮影画像の適正画像への復元処理について、図８ないし図１１を用いて説明する。図８（ａ）は、撮影画面の左側は十分に光があたっているが、右側は逆光やストロボ光の配光や発光量の制約により十分に光があたっていない場合を示す。このため、被写体Ａ２１に対しては十分な光があたり適正露光となったものの、被写体Ｂ２２に対しては、十分な光があたらず、失敗写真となった例を示す。被写体Ｂ２２の顔の部分が良く見えない場合には、本実施形態においては、図８（ｂ）に示すように、被写体Ｂ２２の顔画像２２ａを顔画像ＤＢ４ｂから類似の表情の画像を探し、顔の部分を切出し、顔の部分を置き換える画像合成を行う。この場合、切り出した顔の部分をそのまま合成すると、背景の明るさとマッチせず、不自然になることから、背景の明るさに調和するように顔画像２２ｂを補正してから、画像合成を行う。
【００６６】
図８（ｂ）に示す画像合成について、図９（ａ）（ｂ）を用いて説明する。図９（ａ）は、図８（ａ）におけるＹ＝Ｙ１の直線状で得られた輝度分布を示す。被写体Ｂ２２の顔部は、被写体Ａ２１の顔部付近の背景の明るさに対して極度に暗く、よく顔が見ることができない。そこで、本実施形態においては、図９（ｂ）に示すように、顔画像ＤＢ４ｂから読み出した補完用参照データの顔画像に置き換える画像合成を行う。この場合、背景の明るさよりも、顔の部分の明るさを、元の被写体Ｂ２２の顔部の平均輝度と背景輝度の輝度差ΔＥＦの半分（ΔＥＦ／２）程度、画面全体の背景の輝度よりも低下させるような画像処理を施す。顔部の明るさを、背景の明るさを考慮して調整しているので、自然な感じの画像合成となる。なお、本実施形態では、補正量として、元の被写体Ｂ２２の顔部の平均輝度と背景輝度の輝度差ΔＥＦの半分（ΔＥＦ／２）程度を採用している。このように、半分程度とすることにより、背景画像と顔画像の調和をとることが可能となる。しかし、半分に限らず、３分の１程度でも、また３分の２程度にしても構わない。
【００６７】
図１０（ａ）は、被写体Ｂ２２の顔の半分に光が十分あたっているが、残りの半分が影になっている場合を示す。このような状況は、強い日差しや照明下で起こり得る。このような場合には、影の領域に人物が存在しないと思って、画像鑑賞時に見過ごしてしまうことがある。そこで、本実施形態においては、図１０（ｂ）に示すように、被写体Ｂ２２の顔の部分を、顔画像ＤＢ４ｂに記録されている顔画像の中から同一人物の顔画像２２ａを検索し、この顔画像と置換する画像合成を行う。このときも、そのまま画像合成を行うと、違和感のある画像となることから、周囲の明るさを考慮し、さらに顔画像の輝度分布の変化を緩やかするような補正を顔画像２２ｂに施し、画像合成を行う。
【００６８】
図１０（ｂ）で示す画像合成について、図１１（ａ）（ｂ）を用いて説明する。図１１（ａ）は、図１０（ａ）におけるＹ＝Ｙ１の直線状で得られた輝度分布を示す。被写体Ｂ２２の顔部は、明暗差ΔＥＦが大きく、よく顔が見ることができない。そこで、本実施形態においては、図１１（ｂ）に示すように、顔画像ＤＢ４ｂから読み出した補完用参照データの顔画像の明暗差を、明暗差ΔＥＦの１／２となるように補正を施した後に、この補正した顔画像を元の顔画像と置き換える画像合成を行う。
【００６９】
カメラ１０の撮影時における露出量では、被写体Ｂ２２の顔の部分の輝度差が大きくなってしまう。しかし、本実施形態によれば、輝度差を半分にしているので、被写体Ｂ２２の顔を観察し易くなる。また、顔の明るい部分が背景の明るさと略一致するように、顔画像ＤＢ４ｂから読み出した補完用参照データの顔の部分の明るさを補正するので、周囲の明るさとマッチし、自然な感じの画像となる。
【００７０】
次に、本実施形態における顔補正・合成の動作について、図１２に示すフローチャートを用いて説明する。このフローチャートも、フラッシュメモリ１１に記憶されているプログラムに従って信号処理及び制御部１が実行する。また、第１実施形態と同様に、顔補正・合成のフローは、カメラ１０が撮影を行い、画像データを記録部４に記録する際、または、記録済みの画像データを読出し再生表示を行う場合に実行する。
【００７１】
顔補正・合成のフローに入ると、まず、失敗顔部判定を行う（Ｓ１０１）。ここでは、顔検出部３によって顔画像が含まれているか否かを検出する。この検出の結果、顔画像が検出された場合には、信号処理及び制御部１は、顔画像ごとに、十分な光があたっておらず、適正露光になっていない失敗画像となっているか否かを判定する。この失敗顔部判定の詳細な動作については、図１３を用いて後述する。
【００７２】
失敗顔部判定を行うと、次に、失敗顔部が有るか否かの判定を行う（Ｓ１０３）。ここでは、ステップＳ１０１において行った失敗顔部判定の結果に従って判定する。この判定の結果、失敗部顔が有った場合には、次に、補正が可能か否かの判定を行う（Ｓ１０５）。第１実施形態において説明したように、画像に陰影が十分ある場合には、陰影を保ったまま、画像が明るく（または暗く）なるように画像処理を施すことにより適正画像に復元することができる。そこで、このステップＳ１０５において、補正処理が可能か否かを判定する。
【００７３】
ステップＳ１０５における判定の結果、補正が可能であった場合には、補正処理を行う（Ｓ１０７）。ここでは、背景光の明るさのレベルに応じて、信号処理及び制御部１が画像データの増幅率を変更し、顔の部分が適正となるようにした適正画像に復元する。
【００７４】
ステップＳ１０５における判定の結果、補正が可能でなかった場合には、次に、顔特定可能か否かの判定を行う（Ｓ１０９）。顔の部分が、黒つぶれや白とびによって、目鼻等の陰影を認識することができない場合には、類似の顔を検索することが困難である。そこで、ステップＳ１０９では、ステップＳ１０１、Ｓ１０３において失敗顔と判定された顔について、顔画像ＤＢ４ｂから類似の顔を検索できる程度に、失敗顔の特徴部を抽出可能か否かについて判定する。
【００７５】
ステップＳ１０９における判定の結果、顔特定が可能であれば、次に、顔画像ＤＢ４ｂに類似画像があるか否かを判定する（Ｓ１１１）。ここでは、失敗顔と一致または類似している顔の画像を、顔画像ＤＢ４ｂの中から検索する。
【００７６】
ステップＳ１０９における判定の結果、顔特定が可能でなかった場合、またはステップＳ１１１における判定の結果、類似顔画像がなかった場合には、次に、補正不能表示を行う（Ｓ１１３）。ここでは、顔の画像の置き換えによる画像合成によって適正画像に復元することが不能であることから、その旨を表示部８等に表示する。
【００７７】
ステップＳ１１１における判定の結果、類似顔画像が有った場合には、次に、失敗度合判定を行う（Ｓ１１５）。顔の部分が失敗写真となる理由としては、顔の部分が暗くて失敗した場合もあれば、顔の部分の陰影がなくて失敗した場合もある。失敗の理由により、適正画像への復元方法が異なることから、このステップでは、失敗の度合について判定する。なお、顔の部分が暗い場合であっても、陰影の情報が十分にあれば、ステップＳ１０７における補正処理によって復元することが可能である。ステップＳ１１５においては、陰影の情報が十分取れない程、顔の部分が暗すぎて失敗したか否かを判定する。この失敗度合判定の詳しい動作については、図１４を用いて後述する。
【００７８】
失敗度合判定を行うと、次に、失敗度に合わせ顔画像ＤＢ４ｂの顔画像を補正する（Ｓ１１７）。ここでは、顔画像ＤＢ４ｂに記録されていた補完用参照データに基づいて顔の部分を切出し、失敗度合いに応じて、明るさ等を調整した上で、顔の部分を置き換える画像合成を行う。この失敗度に合わせてＤＢ顔画像を補正するための詳しい動作については、図１５を用いて後述する。
【００７９】
ステップＳ１１７において、顔画像ＤＢの顔画像を補正すると、次に、被写体顔画像と補正した顔画像ＤＢの顔画像の大きさと目鼻位置を合わせて画像合成を行う（Ｓ１１９）。ステップＳ１１７において、背景の明るさや顔画像の輝度差に応じて顔画像を補正するので、このステップでは、補正された顔画像を、元の撮影画像中の顔画像と置き換えのための画像合成を行う。画像合成にあたっては、顔の大きさと、顔の目鼻の位置が一致するように行う。
【００８０】
ステップＳ１０３における判定の結果、失敗顔部がなかった場合、またはステップＳ１０７における補正処理を行うと、またはステップＳ１１３における補正不能表示を行うと、または、ステップＳ１１９における画像合成を行うと、顔補正合成のフローを終了する。
【００８１】
次に、ステップＳ１０１における失敗顔部判定の詳しい動作について、図１３に示すフローチャートを用いて説明する。このフローにおいては、図８、図９における被写体Ａ２１の顔を第１の顔と称し、被写体Ｂ２２の顔を第２の顔と称して説明する。
【００８２】
失敗顔部判定のフローに入ると、ステップＳ１３１〜Ｓ１４９において、背景と顔の部分の輝度差が大きく黒つぶれになっているか否かを判定する。まず、第１の顔の平均露出ＥＦ１を算出する（Ｓ１３１）。ここでは、撮像部２から出力される画像データに基づいて、被写体Ａ２１の顔の部分の画像の平均露出ＥＦ１を求める。平均露出ＥＦ１を求めると、次に、第２の顔の平均露出ＥＦ２を算出する（Ｓ１３３）。ここでは、撮像部２から出力される画像データに基づいて、被写体Ｂ２２の顔の部分の画像の平均露出ＥＦ２を求める。
【００８３】
第２の顔の平均露出ＥＦ２を求めると、次に、背景の平均露出ＥＡを求める（Ｓ１３５）。ここでは、撮像部２から出力される画像データのうち、被写体Ａ２１および被写体Ｂ２２の顔の部分以外の領域の画像データに基づいて、背景の平均露出ＥＡを算出する。
【００８４】
続いて、背景の平均露出ＥＡから第１の顔の平均露出ＥＦ１を減算した値が、所定の輝度差ΔＥ１より大きいか否かの判定、すなわち、ＥＡ−ＥＦ１＞ΔＥ１であるか否かの判定を行う（Ｓ１３７）。ここでは、第１の顔が背景の明るさから見て暗いか否かを判定する。ここで輝度差ΔＥ１は、背景と顔の部分の輝度差が大きく黒つぶれによる失敗写真か否かを判定するための値である。
【００８５】
ステップＳ１３７における判定の結果、ＥＡ−ＥＦ１＞ΔＥ１であった場合には、第１の顔は暗いと判定される。この場合には、次に、背景の平均露出ＥＡから第２の顔の平均露出ＥＦ２を減算した値が、所定の輝度差ΔＥ１より大きいか否かの判定、すなわち、ＥＡ−ＥＦ２＞ΔＥ１であるか否かの判定を行う（Ｓ１３９）。
【００８６】
ステップＳ１３９における判定の結果、ＥＡ−ＥＦ２＞ΔＥ１でなかった場合には、第２の顔は暗くなく、第１の顔が暗いことから、第１の顔が失敗と判定する（Ｓ１４３）。一方、ステップＳ１３９における判定の結果、ＥＡ−ＥＦ２＞ΔＥ１であった場合には、第１の顔および第２の顔の両方とも暗いことから、第１および第２の顔が共に失敗と判定する（Ｓ１４１）。
【００８７】
ステップＳ１３７における判定の結果、ＥＡ−ＥＦ１＞ΔＥ１でなかった場合には、第１の顔は暗くないと判定される。この場合には、次に、ステップＳ１３９と同様に、ＥＡ−ＥＦ２＞ΔＥ１であるか否かの判定を行う（Ｓ１４５）。この判定の結果、ＥＡ−ＥＦ２＞ΔＥ１であった場合には、第１の顔は暗くないが、第２の顔が暗いことから、第２の顔が失敗と判定する（Ｓ１４７）。一方、ステップＳ１４５における判定の結果、ＥＡ−ＥＦ２＞ΔＥ１でなかった場合には、第１の顔と第２の顔の両方共暗くないことから、失敗顔なしと判定する（Ｓ１４９）。
【００８８】
ステップＳ１４１、Ｓ１４３、Ｓ１４７、Ｓ１４９において、失敗顔の判定結果を記憶すると、次に、失敗でない顔部の明暗判定を行う（Ｓ１５１）。ステップＳ１３７〜Ｓ１４９における判定は、ステップＳ１３１〜Ｓ１３５において取得した平均露出に基づいて、判定していた。しかし、顔部の中に明暗の輝度差が大きいと、平均露出から判定した場合には失敗顔とはならない場合であっても、図１０を用いて説明したように失敗顔となる場合がある。すなわち、明部が白とびとなり、また逆に暗部が黒つぶれとなっている場合がある。そこで、ステップＳ１５１においては、顔部の中における輝度差を判定する。
【００８９】
ステップＳ１５１において輝度差を検出すると、次に、その輝度差がΔＥ２以上の場合に、失敗顔と判定する（Ｓ１５３）。輝度差ΔＥ２としては、設計値として適宜選択すればよいが、例えば、２段〜３段程度とすればよい。この程度の輝度差があると、明るすぎる部分や暗すぎる部分の陰影を識別することが困難となる。また、明部が白とび、または暗部が黒つぶれとなっている可能性がある。このステップにおいては、詳しく示してないが、第１および第２の顔毎に輝度差がΔＥ２以上あるか否かを判定し、その結果を一時記憶する。ステップＳ１５３において、失敗顔の判定を行うと、元のフローに戻る。
【００９０】
このように失敗顔部判定のフローにおいては、第１および第２の顔について、それぞれ平均露出の差が大きく失敗顔であるか判定し、また第１および第２の顔について、それぞれの顔の中で輝度差が大きく失敗顔であるかを判定する。なお、本フローにおいては、第１および第２の顔のみについて判定する場合を示したが、３以上の顔が存在する場合には、同様に判定すればよい。また、ステップＳ１３１〜Ｓ１４９においては黒つぶれになり、顔部の陰影情報が失われている場合について判定していたが、白とびになって顔部の陰影情報が失われている場合についても判定するようにしてもよい。
【００９１】
次に、ステップＳ１１５における失敗度合判定の詳しい動作について、図１４に示すフローチャートを用いて説明する。失敗度合判定のフローに入ると、まず、第１の顔が暗くて失敗したか否かの判定を行う（Ｓ１６１）。ステップＳ１４３、Ｓ１４１において、陰影の情報が十分取れない程、第１の顔が暗い場合には、失敗顔である旨が一時記憶されることから、この記憶結果に基づいて判定する。
【００９２】
ステップＳ１６１における判定の結果、第１の顔が暗くて失敗した場合には、次に、第１の顔と背景との差ΔＥＦ１を求める（Ｓ１６５）。ここでは、ステップＳ１３５において求めた背景の平均露出ＥＡと、ステップＳ１３１において求めた第１の顔の平均露出ＥＦ１との差分、すなわち、ＥＡ−ＥＦ１＝ΔＥＦ１を演算する。
【００９３】
ステップＳ１６１における判定の結果、第１の顔が暗くて失敗でなかった場合には、次に、第１の顔が陰影で失敗したか否かの判定を行う（Ｓ１６３）。ステップＳ１５１、Ｓ１５３において、第１の顔に陰影があり、明暗がΔＥ２以上であり、黒つぶれ又は白とびの可能性があれば失敗顔と判定し、その旨を一時記憶することから、このステップでは、一時記憶の結果に基づいて判定する。
【００９４】
ステップＳ１６３における判定の結果、第１の顔が陰影で失敗であった場合には、第１の顔の顔内陰影の分布を判定する（Ｓ１６７）。このステップでは、図１１（ａ）を用いて説明したように、顔の中で最高輝度と最低輝度の差ΔＥＦを、撮像部２から出力される画像データに基づいて演算する。
【００９５】
ステップＳ１６３における判定の結果、第１の顔の陰影で失敗でなかった場合、またはステップＳ１６５またはＳ１６７における判定を行うと、次に、第２の顔が暗くて失敗か否かの判定を行う（Ｓ１７１）。ステップＳ１４７、Ｓ１４１において、陰影の情報が十分取れない程、第２の顔が暗い場合には、失敗顔である旨が一時記憶されることから、この記憶結果に基づいて判定する。
【００９６】
ステップＳ１７１における判定の結果、第２の顔が暗くて失敗した場合には、次に、第２の顔と背景との差ΔＥＦ２を求める（Ｓ１７５）。ここでは、ステップＳ１３５において求めた背景の平均露出ＥＡと、ステップＳ１３３において求めた第２の顔の平均露出ＥＦ２との差分、すなわち、ＥＡ−ＥＦ２＝ΔＥＦ２を演算する。
【００９７】
ステップＳ１７１における判定の結果、第２の顔が暗くて失敗でなかった場合には、次に、第２の顔が陰影で失敗したか否かの判定を行う（Ｓ１７３）。ステップＳ１５１、Ｓ１５３において、第２の顔に陰影があり、明暗がΔＥ２以上であり、黒つぶれ又は白とびの可能性があれば失敗顔と判定し、その旨を一時記憶することから、このステップでは、一時記憶の結果に基づいて判定する。
【００９８】
ステップＳ１７３における判定の結果、第２の顔が陰影で失敗であった場合には、第２の顔の顔内陰影の分布を判定する（Ｓ１７７）。このステップでは、図１１（ａ）を用いて説明したように、顔の中で最高輝度と最低輝度の差ΔＥＦを、撮像部２から出力される画像データに基づいて演算する。
【００９９】
ステップＳ１７３における判定の結果、第２の顔の陰影で失敗でなかった場合、またはステップＳ１７５またはＳ１７７における判定を行うと、元のフローに戻る。
【０１００】
このように失敗度合判定のフローにおいては、第１および第２の顔毎に背景との輝度差ΔＥＦ１、ΔＥＦ２を判定し、または第１および第２の顔毎に顔の中における輝度差ΔＥＦを判定し、失敗の度合いを求めている。なお、本フローにおいては、第１および第２の顔のみについて判定する場合を示したが、３以上の顔が存在する場合には、同様に判定すればよい。また、ステップＳ１６１、Ｓ１７１においては顔が暗く黒つぶれになり失敗したかを判定していたが、顔が明るく白とびになって顔部の陰影情報が失われている場合に、背景との輝度差を判定するようにしてもよい。
【０１０１】
次に、ステップＳ１１７における失敗度に合わせＤＢ顔画像を補正の詳しい動作について、図１５に示すフローチャートを用いて説明する。失敗度に合わせＤＢ顔画像を補正のフローに入ると、まず、ステップＳ１６１と同様に、第１の顔が暗くて失敗か否かの判定を行う（Ｓ１８１）。
【０１０２】
ステップＳ１８１における判定の結果、第１の顔が暗くて失敗した場合には、次に、第１の顔のＤＢ画像の露出量を背景マイナスΔＥＦ１／２として合成用画像を作成する（Ｓ１８５）。ここでは、ステップＳ１１１において、顔画像ＤＢ４ｂから検索された失敗顔と類似している顔の画像に対して、ステップＳ１６５において算出された第１の顔の背景との差ΔＥＦ１の半分（すなわち、１／２）だけ、輝度を暗くした顔の画像を、合成用画像として生成する（図９（ｂ）参照）。
【０１０３】
ステップＳ１８１における判定の結果、第１の顔が暗くて失敗でなかった場合には、次に、ステップＳ１６３と同様に、第１の顔が陰影で失敗したか否かの判定を行う（Ｓ１８３）。
【０１０４】
ステップＳ１８３における判定の結果、第１の顔が陰影で失敗であった場合には、次に、第１の顔のＤＢ画像の露出量を画面内の第１の顔に合わせ、その顔内陰影分布を１／２として合成用画像を作成する（Ｓ１８７）。ここでは、ステップＳ１１１において、顔画像ＤＢ４ｂから検索された失敗顔と類似している顔の画像の顔内陰影分を、ステップＳ１６７において算出された第１の顔内の輝度差ΔＥＦの１／２とした合成用画像を生成する（図１１（ｂ）参照）。
【０１０５】
ステップＳ１８３における判定の結果、第１の顔の陰影で失敗でなかった場合、またはステップＳ１８５またはＳ１８７において合成用画像を作成すると、次に、ステップＳ１７１と同様に、第２の顔が暗くて失敗か否かの判定を行う（Ｓ１９１）。
【０１０６】
ステップＳ１９１における判定の結果、第２の顔が暗くて失敗した場合には、次に、第２の顔のＤＢ画像の露出量を背景マイナスΔＥＦ２／２として合成用画像を作成する（Ｓ１９５）。ここでは、ステップＳ１１１において、顔画像ＤＢ４ｂから検索された失敗顔と類似している顔の画像に対して、ステップＳ１６５において算出された第１の顔の背景との差ΔＥＦ２の半分（すなわち、１／２）だけ、輝度を暗くした顔の画像を、合成用画像として生成する（図９（ｂ）参照）。
【０１０７】
ステップＳ１９１における判定の結果、第２の顔が暗くて失敗でなかった場合には、次に、ステップＳ１７３と同様に、第２の顔が陰影で失敗したか否かの判定を行う（Ｓ１９３）。
【０１０８】
ステップＳ１９３における判定の結果、第２の顔が陰影で失敗であった場合には、次に、第２の顔のＤＢ画像の露出量を画面内の第２の顔に合わせ、その顔内陰影分布を１／２として合成用画像を作成する（Ｓ１９７）。ここでは、ステップＳ１１１において、顔画像ＤＢ４ｂから検索された失敗顔と類似している顔の画像の顔内陰影分を、ステップＳ１７７において算出された第２の顔内の輝度差ΔＥＦの１／２とした合成用画像を生成する（図１１（ｂ）参照）。
【０１０９】
ステップＳ１９３における判定の結果、第２の顔の陰影で失敗でなかった場合、またはステップＳ１９５またはＳ１９７において合成用画像を作成すると、元のフローに戻る。元のフローに戻ると前述したように、本フローにおいて合成した顔画像と、元の被写体画像を、目鼻位置が一致するようにして画像合成を行う（Ｓ１１９参照）。
【０１１０】
このように失敗度に合わせＤＢ顔画像を補正のフローにおいては、顔の部分が背景より暗くて陰影の情報が十分取れないために失敗写真となった場合には、顔画像ＤＢ４ｂに記録されている同一人物の顔の部分に置き換える画像合成用の画像を生成するようにしている。この場合、顔画像ＤＢ４ｂに記録されている顔画像をそのまま使用すると背景との明るさの差が大きい場合には、違和感のある画像となることから、本実施形態においては、背景と顔の明るさの差が、実際の撮影より半分となるように補正している（Ｓ１８５、Ｓ１９５参照）。なお、この補正量は、本実施形態では輝度差ΔＥＦ１、ΔＥＦ２の１／２としているが、この値は設計事項として適宜変更してもよい。また、輝度差の定数倍以外にも、一定の輝度差となるようにしても勿論かまわない。
【０１１１】
また、本実施形態においては、顔の中で陰影が大きく失敗した場合には、顔の中の陰影を１／２に圧縮した画像を合成用画像として生成している（Ｓ１８７、Ｓ１９７参照）。これにより自然な感じの陰影のある顔画像に補正することができる。なお、この補正量は、本実施形態では、輝度差ΔＥＶの１／２としたが、これに限らず、設計事項として適宜変更してもよい。
【０１１２】
なお、図１５に示したフローにおいては、第１および第２の顔のみについて判定する場合を示したが、３以上の顔が存在する場合には、同様に判定すればよい。また、顔が明るすぎて白とびとなったことにより失敗顔となった場合には、顔画像ＤＢ４ｂから検索された顔画像を、顔部分と背景との輝度差の半分だけ、明るくし補正し、この補正した顔画像を合成用画像とすればよい。
【０１１３】
次に、ステップＳ１１９において行う画像合成の変形例について、図１６および図１７を用いて説明する。本発明の第１および第２実施形態においては、顔画像ＤＢ４ｂに記録されている顔に置き換える画像合成は、単に、合成時に静止画的に表示するだけであった。第２実施形態の変形例においては、画像合成を行うと、顔画像を置き換える際に動画的表現を行うようにしている。
【０１１４】
今、図１０（ａ）に示す被写体Ｂ２２の顔の部分を顔画像ＤＢ４ｂに記録されている顔画像２２ａに置き換える画像合成を行うとする。この画像合成を行うにあたっては、まず、置き換える被写体Ｂ２２の顔画像を、図１０（ａ）に示す大きさから、図１０（ｂ）に示す大きさにズームアップするように拡大表示する。この拡大表示にあたっては、アニメーション効果で小画像から大画像に変化させながら行う。
【０１１５】
そして、図１０（ｂ）に示すように拡大表示されると、そこで、顔画像ＤＢ４ｂに記録されている補完用参照データの中から同一人物の顔画像２２ａと置換する画像合成を行う。この場合も、図１０および図１１を用いて説明したように、周囲の明るさを考慮すると共に顔の明暗の変化を小さくなるように顔画像２２ｂの明暗を補正してから画像合成するとよい。
【０１１６】
次に、図１６を用いて説明した動画的表現を行うためのフローについて、図１７に示すフローチャートを用いて説明する。被写体顔画像と補正ＤＢ顔画像の合成のフローに入ると、まず、動画表現を行うか否かの判定を行う（Ｓ２０１）。動画的表現を行う場合には、本変形例においては、事前にメニュー画面等において、設定するので、このステップでは、メニュー画面等において、動画表現が設定されているか否かを判定する。
【０１１７】
ステップＳ２０１における判定の結果、動画表現を行う場合には、次に、画面の大きさと被写体の顔の大きさの比Ｒ１、すなわち、Ｒ１＝（画面の大きさ）／（被写体の顔の大きさ）を求める（Ｓ２０３）。ここでは、例えば、図１６（ａ）に示す例では、画面の大きさを、被写体Ｂ２２の顔の大きさで除算を行い、この演算結果をＲ１とする。
【０１１８】
ステップＳ２０３において、画面と顔の大きさの比Ｒ１を求めると、次に、被写体の顔の大きさを次第にＲ１倍する（Ｓ２０５）。ここでは、図１６を用いて説明したように、被写体Ｂ２２の顔の大きさをアニメーション効果で徐々に大きくする。顔部を徐々に拡大表示しながら、Ｒ１倍に達したか否かの判定を行う（Ｓ２０７）。この判定の結果、Ｒ１倍に達していなければ、ステップＳ２０５に戻り、拡大表示を続行する。なお、Ｒ１倍に達すると、被写体Ｂ２２の顔の大きさが、ほぼ画面の大きさとなる。
【０１１９】
ステップＳ２０７における判定の結果、Ｒ１倍に達すると、ＤＢ顔画像を同じ大きさにし、目鼻位置を合わせて、画像に嵌め込む（Ｓ２０９）。顔画像の大きさがＲ１倍に達しているので、顔画像が略画面の大きさとなっている。そこで、略画面の大きさとなった顔画像を、ステップＳ１１７において生成された合成用の顔画像と置き換える画像合成を行う。このとき、もとの顔画像の目鼻位置と、合成用の顔画像の目鼻位置が略一致するように位置合わせを行ったのち、画像の置き換えを行う。画像の置き換えが終わると、ＤＢ顔画像は元のサイズに戻す。
【０１２０】
ステップＳ２０１における判定の結果、動画表現でなかった場合には、本発明の第２実施形態と同様、動画表現を行うことなく顔画像の置き換えの画像合成を行う。このために、まず、被写体の顔の大きさと顔画像ＤＢの顔画像の大きさの比Ｒ２、すなわち、Ｒ２＝（被写体の顔の大きさ）／（ＤＢ顔画像の大きさ）を求める（Ｓ２１１）。ここでは、例えば、図１６に示す例では、図１６（ａ）に示す被写体Ｂ２２の顔の大きさと、図１６（ｃ）に示す顔画像２２ａの大きさで除算を行い、この演算結果をＲ２とする。
【０１２１】
比Ｒ２を求めると、次に、ＤＢ顔画像をＲ２倍して画像に嵌め込みを行う（Ｓ２１３）。ここでは、例えば、顔画像ＤＢ４ｂから検索した同一人物の顔の大きさを、撮影画像の被写体の顔画像と同じ大きさになるように補正した上で、顔画像を置き換える画像合成を行う。ステップＳ２０９またはＳ２１３における画像の置き換えを行うと、元のフローに戻る。
【０１２２】
このように、本発明の第２実施形態の変形例においては、顔画像ＤＢ４ｂから検索された同一人物の顔画像に置き換える画像合成を行う際に、一旦、置き換えの対象となる顔画像を拡大表示し、拡大表示した時点で画像の置き換えを行うようにしている。単に顔部のみ顔画像ＤＢ４ｂから検索された顔画像に置き換えると、服装は暗いのに、顔だけ明るい場合には不自然な写真となる可能性がある。本変形例のように、顔部を拡大し、画面一杯になったところで、顔画像ＤＢ４ｂから検索した画像を置き換えるようにすれば（Ｓ２０５→Ｓ２０９）、より自然な表示が可能となる。
【０１２３】
次に、本発明の第２実施形態における顔画像ＤＢ４ｂにおける顔画像データベースの作成について、図１８ないし図２１を用いて説明する。まず、顔画像データベースに記録する顔画像の生成について説明する。図１８に示す顔画像２３は、カメラ１０で撮影した撮影画像の内の顔の部分を示す。顔画像データベースに記録するにあたって、まず、顔画像２３の顔の大きさを正規化する。すなわち、一定の大きさの正規化顔画像２３ａに、大きさを変更する。また、顔画像データベースに記録するにあたって、鼻筋線２７が鉛直方向となるように、顔画像を回転させる。
【０１２４】
鼻筋線２７を鉛直方向にすると、図１９（ａ）に示すような画像となる。また、同一人物について、図１９（ｃ）に示すように、鼻筋線２７を鉛直した別の顔画像２５が有る場合には、顔画像２３および顔画像２５から、図１９（ｂ）に示すように、モーフィングにより図１９（ｂ）に示すような顔画像２４を生成する。これによって、顔画像２３〜２５の３種類の顔画像を顔画像ＤＢ４ｂに記録することが可能となる。
【０１２５】
図１８および図１９を用いて説明した顔画像の生成を利用して作成した顔画像ＤＢ４ｂに記録される顔画像データベースの一例を図２０に示す。この顔画像データベースは、個人Ａ、Ｂ・・・について、異なる表情ごとにそれぞれ鼻筋線２７が顔の中心から、０度、左に１０度、左に２０度・・・と異なる向きの顔がマトリックス状に記録している。なお、表情１は笑顔の場合であり、表情２は普通の顔の場合であり、表情３は怒っている場合の顔を示している。この例では、顔の向きは１０度おきであり、また、顔の表情は３種類であるが、これに限らず、これよりも少なくまたは多く分類分けを行って、顔画像を記録するようにしても勿論かまわない。また、モーフィングによって中間画像を１つ生成していたが、１つに限らず複数、生成するようにしてもよい。
【０１２６】
次に、上述した顔画像データベースを作成するためのフローについて、図２１に示すフローチャートを用いて説明する。顔画像データベース作成のフローに入ると、まず、個人認証判定を行う（Ｓ３０１）。ここでは、顔検出部３によって検出された顔の特徴を用いて、個人を特定する。
【０１２７】
個人認証判定を行うと、次に、表情・角度判定を行う（Ｓ３０３）。ここでは、顔検出部３による目や口元の検出結果を用いて、笑顔、普通、怒った顔等、顔の表情を判定する。また、顔検出部３によって検出された鼻筋線２７を用いて、顔の向きの角度の判定も行う。
【０１２８】
表情・角度判定を行うと、次に、認証不能か否かの判定を行う（Ｓ３０５）。ここでは、ステップＳ３０１における個人認証判定の結果、個人を特定できたか否かを判定する。この判定の結果、個人認証できなかった場合には、手動タグ付けを行う（Ｓ３０７）。個人認証ができなかった顔画像であることから、ユーザが適宜、個人名等の手動でタグを付する。
【０１２９】
手動タグ付けを行うと、次に、手動タグを付した人物と同一人物が他に有るか否かを判定する（Ｓ３０９）。ここでは、手動タグが付された顔画像の中に同一人物が有るか否かを判定する。この判定の結果、同一人物がいなかった場合には、新しい個人として分類する（Ｓ３１１）。
【０１３０】
ステップＳ３０５における判定の結果、個人認証できた場合には、次に、同一表情・同一角度の顔画像が顔画像ＤＢ４ｂに記録されているか否かを判定する（Ｓ３０７）。図２０を用いて説明したように、顔画像データベースでは、顔の角度と表情に基づいてデータベースを作成しており、既に、記録されている場合には、更なる記録を行わないことから、このステップでは、記録済みか否かを判定する。
【０１３１】
ステップＳ３０７における判定の結果、同一表情・角度の顔画像が記録されていなかった場合、または、ステップＳ３０９における判定の結果、同一人物が有った場合、またはステップＳ３１１において新しい個人として分類した場合には、次に、顔部の画像を切出し、顔画像とする（Ｓ３１３）。ここでは、信号処理及び制御部１によって、顔検出部３によって検出された顔の部分をトリミングする。
【０１３２】
顔画像を生成すると、次に、顔の大きさは画面の１／５に正規化し、また鼻筋を鉛直方向になるように顔画像を回転する（Ｓ３１５）。ここでは、図１８を用いて説明したように、顔の大きさと鼻筋方向を揃える。なお、顔の大きさは例示であり、画面の１／５よりも大きくても小さくても構わないが、１／５程度が通常の撮影画像における顔の大きさを考慮すると扱いやすいサイズである。
【０１３３】
続いて、ステップ３１５で修正された顔画像を、個人対顔画像として登録する（Ｓ３１７）。ここでは、顔画像ＤＢ４ｂに、個人名に対応して顔画像を、図２０に示すように記録する。
【０１３４】
顔画像を登録すると、次に、モーフィングが可能か否かの判定を行う（Ｓ３１９）。モーフィングは、図１９を用いて説明したように、２つの画像を用いて中間画像を生成する画像処理である。このステップでは、図１９（ａ）（ｃ）に示したような、２つの顔画像が有るか否かを判定する。
【０１３５】
ステップＳ３１９における判定の結果、モーフィングが可能であった場合には、角度中間画像を生成する（Ｓ３２１）。ここでは、例えば、図１９に示すように、顔画像２３と顔画像２５から、中間の顔画像２４をモーフィングによって生成する。角度中間画像を生成すると、次に、ステップＳ３１７と同様に、個人対顔画像として登録する（Ｓ３２３）。ここでは、ステップＳ３２１において生成した角度中間画像を、顔画像ＤＢ４ｂに、個人名に対応させて図２０に示すように記録する。
【０１３６】
ステップＳ３２３において顔画像を登録すると、またはステップＳ３１９における判定の結果、モーフィングが不可であった場合、またはステップＳ３０７における判定の結果、同一表情・角度の顔画像が既に登録されていた場合には、顔画像データベース作成のフローを終了し、メインルーチンに戻る。
【０１３７】
以上、説明したように、本発明の第２実施形態においては、失敗画像が補正処理によって適正画像とすることができない場合には（ステップＳ１０５→Ｎｏ）、顔画像ＤＢ４ｂに記録されている補完用参照データを用いて、顔の部分を置き換える画像合成を行うようにしている。このため、逆光等、輝度差が大きい状況において失敗した撮影画像を簡単に復元することができる。
【０１３８】
また、本実施形態においては、顔の部分を置き換えるにあたって、失敗の理由が、顔の部分が全体に暗かったのか、顔の部分の明暗の差が大きかったかに応じて、顔画像ＤＢ４ｂから読み出した顔画像の補完参照データの補正を異ならせている。このため、失敗に応じた適切な画像合成を行うことができる。
【０１３９】
さらに、本実施形態においては、顔画像ＤＢ４ｂから読み出した顔画像の補完参照データを補正するにあたって、周囲の明るさを考慮して、顔の明るさを補正している。このため、復元された写真が自然な感じとすることができる。
【０１４０】
さらに、本実施形態においては、顔画像ＤＢ４ｂから読み出した顔画像の補完参照データで、顔画像を置き換える際に、顔画像の大きさと目鼻の位置を合わせて合成するようにしている。このため、復元された画像の顔が周囲とマッチして自然な感じとなる。なお、大きさと目鼻の両方を揃えることが望ましいが、いずれか一方だけも構わない。
【０１４１】
さらに、本実施形態においては、撮影によって取得した撮影画像に基づいて、図１８ないし図２１に示すように、顔画像データベース用の顔画像を生成している。このため、撮影者が普段の撮影を通じて、顔画像データベースを生成することができる。また、同一人物であっても、表情や顔の角度ごとにデータベースに記録するようにしていることから、撮影状況に応じて、最適な顔画像を選択することが可能となる。図１８ないし図２１に示すような方法により顔画像データベースに種々の顔画像を登録しておいた場合には、ステップＳ１１１において類似顔画像を検索する場合に、顔の向きや表情に応じて最適な顔画像を選択することが可能となる。
【０１４２】
なお、本実施形態において、ステップＳ１０１、Ｓ１０３の失敗顔か否かの判定にあたっては、顔部の輝度と背景の平均輝度の差や、また顔部内での輝度差に基づいて行ったが、これに限らず、第１実施形態において説明したような方法等、他の方法によって判定を行うようにしても勿論かまわない。
【０１４３】
次に、本発明の第３実施形態について、図２２を用いて説明する。第１及び第２実施形態においては、撮像部を有するカメラに本発明を適用した例であったが、本実施形態は、カメラ等において撮影した画像をパーソナルコンピュータ（ＰＣ）等の記録装置に記録する場合や、記録された撮影画像を読出し、再生表示を行う場合や、等を行う場合に、本発明を適用した例である。
【０１４４】
図２１は、本実施形態に係わるＰＣ５０の構成を示すブロック図である。ＰＣ５０は、マイクロコンピュータ６１、操作入力装置７１、表示モニタ７２、外部画像入力装置７３、記録装置７４から構成される。マイクロコンピュータ６１は、プログラム等やデータ等を記録する記憶部、制御部等のハードウエアを有し、これらのハードウエアによって、機能が果たされる各手段を有する。各手段としては、顔部判定手段６２、ヒストグラム生成手段６３、適正度判定手段６４、補正手段６５、合成手段６６を有する。
【０１４５】
顔部判定手段６２は、外部画像入力装置７３から入力した撮影画像の画像データに基づいて、撮影画像の中に顔部が存在するか、また存在した場合には、その大きさや位置、特徴等を判定する。ヒストグラム生成手段６３は、画像データに基づいて、図３、図４、図６等に示したようなヒストグラムを生成する。
【０１４６】
適正度判定手段６４は、ヒストグラム生成手段６３によって生成されたヒストグラムに基づいて、適正画像か否か、言い換えると失敗画像か否かの判定を行う。補正手段６５は、適正度判定手段６４によって失敗画像と判定された場合であっても明るさの補正で適正画像になる場合には明るさの補正を行い、また撮影画像の顔の部分を記録装置７４に記録されている顔画像に置き換える場合には、顔画像の明るさを背景の明るさを考慮して補正する。
【０１４７】
合成手段６６は、撮影画像が失敗画像であって、明るさの補正によっては適正画像とならない場合に、記録装置７４に記録されている顔画像の中から一致する顔を検索し、撮影画像の顔の部分を、検索された顔画像に置き換える画像合成を行う。
【０１４８】
マイクロコンピュータ６１には、操作入力装置７１、表示モニタ７２、外部画像入力装置７３、および記録装置７４が接続され、データや制御命令の通信が可能である。操作入力装置は、キーボードやマウス等の入力指示装置である。表示モニタ７２は、液晶モニタ等の表示装置であり、外部画像入力装置７３によって入力した撮影画像や記録装置７４に記録されている撮影画像の表示を行う。
【０１４９】
外部画像入力装置７３は、カメラ１０等によって撮影した画像をＰＣ５０に入力するための装置であって、ＵＳＢメモリ等の外部メモリの入力装置、またはインターネット等の通信ラインを通じての入力装置である。
【０１５０】
記録装置７４は、ＰＣ５０に内蔵、または外付けのメモリであって、外部画像入力装置７３によって入力した撮影画像や、撮影画像の中から顔画像を利用して作成した顔画像データベース等を記録する。なお、顔画像データベースを有さない場合には、画像合成時に撮影画像から顔の部分を切出し、この顔画像を利用すればよい。
【０１５１】
本実施形態におけるＰＣ５０は、外部画像入力装置７３によって、外部から撮影画像の画像データを入力した際に、第１実施形態に係わる図５または図７に示すフローチャートを実行し、撮影画像を補正・合成処理を行った後に、記録装置７４に画像データの記録を行う。または、外部から入力した撮影画像の画像データをそのまま記録装置７４に記録し、この記録された画像データを読出し、再生する際に、図５または図７に示すフローチャートを実行し、撮影画像を補正・合成処理を施した画像を表示モニタ７２に表示する。
【０１５２】
このように、本発明の第３実施形態に係わるＰＣ５０は、撮影画像を記録装置７４に記録する際、または記録された撮影画像を再生表示する際に、第１実施形態と同様の画像補正・合成を行うようにしている。このため、撮影画像の顔の部分が黒つぶれや白とび等によって失敗画像となった場合であっても、適正画像に復元することができる。
【０１５３】
なお、本実施形態においては、第１実施形態と同様の機能を果たすように、マイクロコンピュータ６２内に各手段を設けるようにしたが、これに限らず、第２実施形態と同様の機能を果たすように各手段を設けるようにしても勿論かまわない。
【０１５４】
また、本実施形態においては、ＰＣ５０がマイクロコンピュータ６１やその他の装置を具備するようにしたが、一部の装置、例えば、記録装置７４等を外部のサーバー内に設けるようにしても勿論かまわない。
【０１５５】
以上説明したように、本発明の各実施形態やその変形例においては、逆光等、輝度差が大きい状況において黒つぶれや白とびによって失敗した撮影画像について、画像の明るさを補正することが可能な場合には、この補正を行い適正画像とする。また、極度の黒つぶれや極度の白とびのために、画像の明るさを補正することによって適正画像にすることができない場合には、データベースに記録されている同一人物の顔部に置き換える画像合成を行うことによって適正画像としている。このため、簡単に失敗した撮影画像を復元することができる。
【０１５６】
また、データベースに記録されている同一人物の顔部に置き換える画像合成を行う際には、背景の明るさを考慮して、顔部の明るさを補正し、合成用の顔画像を生成している。このため、周囲の明るさと違和感のない合成画像を生成することができる。
【０１５７】
なお、本発明の各実施形態や変形例においては、データベースに記憶されている顔画像に対して、明るさ補正を施してから、撮影画像の顔の部分を置き換える画像合成をおこなっている。しかし、これに限らず、撮影画像の顔の部分を、データベースに記憶されている顔画像に置き換えてから、顔の部分の明るさを補正するようにしてもよい。また、顔の部分に対して明るさの補正を行う以外にも、他の方法として、顔の部分の周囲の被写体に対する明るさを補正し、全体として、顔の部分が目立たなくなるような補正を施すようにしてもよい。
【０１５８】
また、本発明の各実施形態や変形例においては、予め、顔の部分のデータベース（例えば、図２０参照）を生成し、これを記録部４（顔画像ＤＢ４ｂ）に記憶している。しかし、顔の部分のデータベースとしては、記録部４に記録されている撮影画像そのものを使用し、顔の部分について画像合成する際に、記録されている撮影画像の中から顔の部分を切出して画像合成を行うようにしても勿論かまわない。
【０１５９】
さらに、本発明の各実施形態や変形例においては、人間の顔に対して、適正画像となるように、補正や合成を行っていたが、ペット等の動物に対しても、同様に適用することができる。この場合には、ペット等の動物の顔を識別するためのデータを用いればよい。
【０１６０】
また、本発明の各実施形態においては、撮影のための機器として、デジタルカメラを用いて説明したが、カメラとしては、デジタル一眼レフカメラでもコンパクトデジタルカメラでもよく、ビデオカメラ、ムービーカメラのような動画用のカメラでもよく、さらに、携帯電話や携帯情報端末（ＰＤＡ：Personal Digital Assist）、ゲーム機器等に内蔵されるカメラでも構わない。
【０１６１】
本発明は、上記実施形態にそのまま限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素の幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１６２】
１・・・信号処理及び制御部、１ｂ・・・露出不良判定部、２・・・撮像部、３・・・顔検出部、４・・・記録部、４ｂ・・・顔画像ＤＢ、５・・・ストロボ部、６・・・操作判定部、７・・・音声収録部、８・・・表示部、９・・・時計部、１０・・・カメラ、１１・・・フラッシュメモリ、１２・・・時計部、２１・・・被写体Ａ、２２・・・被写体Ｂ、２２ａ・・・顔画像、２２ｂ・・・顔画像、２３・・・顔画像、２３ａ・・・正規化顔画像、２４・・・顔画像、２５・・・顔画像、２７・・・鼻筋線、５０・・・パーソナルコンピュータ（ＰＣ）、６１・・・マイクロコンピュータ、６２・・・顔部判定手段、６３・・・ヒストグラム生成手段、６４・・・適正度判定手段、６５・・・補正手段、６６・・・合成手段、７１・・・操作入力装置、７２・・・表示モニタ、７３・・・外部画像入力装置、７４・・・記録装置
【図１】
0005484994.tif 000002
【図２】
0005484994.tif 000003
【図３】
0005484994.tif 000004
【図４】
0005484994.tif 000005
【図５】
0005484994.tif 000006
【図６】
0005484994.tif 000007
【図７】
0005484994.tif 000008
【図８】
0005484994.tif 000009
【図９】
0005484994.tif 000010
【図１０】
0005484994.tif 000011
【図１１】
0005484994.tif 000012
【図１２】
0005484994.tif 000013
【図１３】
0005484994.tif 000014
【図１４】
0005484994.tif 000015
【図１５】
0005484994.tif 000016
【図１６】
0005484994.tif 000017
【図１７】
0005484994.tif 000018
【図１８】
0005484994.tif 000019
【図１９】
0005484994.tif 000020
【図２０】
0005484994.tif 000021
【図２１】
0005484994.tif 000022
【図２２】
0005484994.tif 000023