(57)【要約】【課題】鏡面反射領域以外の高輝度部分が含まれている被写体であっても、適切な領域で高輝度部分を補正できるようにする。【解決手段】撮影画像から被写体の所定の部位の位置の情報を取得する取得手段と、前記所定の部位の位置情報、色情報、輝度情報のうち少なくとも１つの情報に基づいて前記被写体の状態を検出する状態検出手段と、前記状態検出手段により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定する決定手段と、前記決定手段によって決定された補正対象領域内の高輝度部の領域を補正する補正手段と、を有する。【選択図】図２
2019032714.tif 000002
【特許請求の範囲】
【請求項１】
撮影画像から被写体の所定の部位の位置の情報を取得する取得手段と、
前記所定の部位の位置に係る輝度情報に基づいて前記被写体の状態を検出する状態検出手段と、
前記状態検出手段により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定する決定手段と、
前記決定手段によって決定された補正対象領域内の高輝度領域を補正する補正手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記状態検出手段は、前記被写体の状態として、鏡面反射によって生成された高輝度領域とは異なる高輝度領域が前記被写体に含まれるか否かの状態を検出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記鏡面反射によって生成された高輝度領域とは異なる高輝度領域が前記補正対象領域に含まれないようにすることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記被写体は人の顔であり、前記鏡面反射によって生成された高輝度領域とは異なる高輝度領域とは人の歯を含む領域であることを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
前記被写体は人の顔であり、前記鏡面反射によって生成された高輝度領域とは異なる高輝度領域とは帽子を含む領域であることを特徴とする請求項２又は３に記載の画像処理装置。
【請求項６】
前記決定手段は、前記取得手段によって取得された所定の部位の位置の情報に基づいて仮の補正対象領域を決定した後に、前記状態検出手段により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定することを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
前記決定手段は、前記撮影画像を複数のラインで分け、ライン毎に輝度値を閾値と比較することにより前記被写体の補正対象領域を決定することを特徴とする請求項１〜６の何れか１項に記載の画像処理装置。
【請求項８】
前記補正手段は、前記補正対象領域の中心からの距離に応じて補正の重みが異なるようにすることを特徴とする請求項１〜７の何れか１項に記載の画像処理装置。
【請求項９】
撮影画像から被写体の所定の部位の位置の情報を取得する取得工程と、
前記所定の部位の位置に係る輝度情報に基づいて前記被写体の状態を検出する状態検出工程と、
前記状態検出工程により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定する決定工程と、
前記決定工程において決定された補正対象領域内の高輝度領域を補正する補正工程と、
を有することを特徴とする画像処理方法。
【請求項１０】
撮影画像から被写体の所定の部位の位置の情報を取得する取得工程と、
前記所定の部位の位置に係る輝度情報に基づいて前記被写体の状態を検出する状態検出工程と、
前記状態検出工程により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定する決定工程と、
前記決定工程において決定された補正対象領域内の高輝度領域を補正する補正工程と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、鏡面反射などによって生じた高輝度領域を適切に補正するために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、撮影画像において、被写体の高輝度領域に対して補正を行う技術が知られている。これにより、環境光によって生じた顔のテカリなど（以下、肌などで反射により通常よりも高輝度に映ってしまった部分を総称してテカリと呼ぶ）の鏡面反射領域を補正し、好ましい画像を得ることが可能となる。例えば、特許文献１には、被写体の所定部位を検出し、検出結果に基づいてテカリ領域を補正する方法が提案されている。具体的には、被写体の顔や目などの所定部位を検出し、その所定部位を主に占める色成分から各画素の色成分がどれくらい近いか遠いかによりテカリ補正の程度を決定している。これにより、輝度や明度を下げる必要のない部位についてはその高い輝度や明度が維持され、輝度を下げる必要のある肌のテカリが生じている部位のみに対して補正することができるとしている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４３９６３８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の特許文献１に記載の方法では、所定部位が顔の場合に、各画素が顔の肌色成分からどれくらい近いか遠いかによりテカリ補正強度を画素単位で制御している。しかしながら、例えば、暖色系の環境光下で白色系の帽子を被っている被写体など顔領域内に肌のテカリ以外の高輝度領域が含まれている場合に、その高輝度領域内を誤ってテカリ補正してしまい、補正後の画質が損なわれる可能性がある。
【０００５】
本発明は前述の問題点に鑑み、鏡面反射領域以外の高輝度部分が含まれている被写体であっても、適切な領域で高輝度部分を補正できるようにすることを目的としている。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、撮影画像から被写体の所定の部位の位置の情報を取得する取得手段と、前記所定の部位の位置に係る輝度情報に基づいて前記被写体の状態を検出する状態検出手段と、前記状態検出手段により検出された前記被写体の状態に応じて、前記被写体の補正対象領域を決定する決定手段と、前記決定手段によって決定された補正対象領域内の高輝度領域を補正する補正手段と、を有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、鏡面反射領域以外の高輝度部分が含まれている被写体であっても、適切な領域で高輝度部分を補正することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係るデジタルカメラの構成例を示すブロック図である。
【図２】画像処理部の詳細な構成例を示すブロック図である。
【図３】テカリ補正処理部の詳細な構成例および補正重みを説明するための図である。
【図４】白い帽子や歯などの高輝度領域を含んでいない場合のテカリ補正の例を示す図である。
【図５】高輝度領域である歯が見えている場合のテカリ補正の例を示す図である。
【図６】歯が見えている被写体に対するテカリ補正の処理手順の一例を示すフローチャートである。
【図７】白い帽子を被っている場合のテカリ補正の例を示す図である。
【図８】白い帽子を被っている被写体に対するテカリ補正の処理手順の一例を示すフローチャートである。
【図９】画像を複数のブロックに分割した状態を説明するための図である。
【図１０】画像処理部による詳細な処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に、本発明の好ましい実施形態を、添付の図面に基づいて詳細に説明する。本実施形態では、画像処理装置としてデジタルカメラに適用した例について説明する。以下、図１〜９を参照して、本発明の実施形態におけるデジタルカメラにより、顔の肌で鏡面反射したことによって生じた高輝度領域を補正（以下、テカリ補正）する処理について説明する。
【００１０】
図１は、本実施形態に係るデジタルカメラ１００の構成例を示すブロック図である。
図１において、レンズ１０１はズームレンズ、フォーカスレンズを含むレンズ群であり、シャッター１０２は絞り機能を備えるシャッターである。撮像部１０３は光学像を電気信号に変換するＣＣＤやＣＭＯＳ素子等で構成される。Ａ／Ｄ変換器１０４は、アナログ信号をデジタル信号に変換する。画像処理部１０５は、Ａ／Ｄ変換器１０４から出力される画像データに対し、ホワイトバランス処理や、γ処理、輪郭強調、色補正処理、テカリ補正処理などの各種画像処理を行う。
【００１１】
画像メモリ１０６は表示用または記録用の画像データを一時的に格納するメモリであり、メモリ制御部１０７は画像メモリ１０６を制御する。Ｄ／Ａ変換器１０８は入力されたデジタル信号をアナログ信号に変換する。表示部１０９はＬＣＤ等の表示器であり、コーデック部１１０は、画像データの圧縮符号化または復号化を行う。
【００１２】
記録Ｉ／Ｆ１１１は記録媒体１１２とのインタフェースであり、記録媒体１１２はメモリカードやハードディスク等である。顔・顔器官検出部１１３は、撮影画像中から顔が映っている領域及び目、口などの器官情報を検出する。システム制御部５０は、デジタルカメラ１００のシステム全体を制御する。
【００１３】
また、操作部１２０はユーザがメニューの設定や画像選択などの操作をすることが可能な操作部である。ユーザが操作部１２０を操作することにより、メニュー画面から、撮影設定でテカリ補正処理を行うか否かを選択することができる。不揮発性メモリ１２１は、プログラムやパラメータなどを格納するＥＥＰＲＯＭなどのメモリであり、システムメモリ１２２はシステム制御部５０の動作用の定数、変数、不揮発性メモリ１２１から読み出したプログラム等を展開するメモリである。
【００１４】
次に、上記のように構成されたデジタルカメラ１００における被写体撮影時の基本動作について説明する。
撮像部１０３は、レンズ１０１及びシャッター１０２を介して入射した光を光電変換し、アナログ画像信号としてＡ／Ｄ変換器１０４へ出力する。Ａ／Ｄ変換器１０４は撮像部１０３から出力されるアナログ画像信号をデジタル画像信号（画像データ）に変換し、画像処理部１０５に出力する。
【００１５】
画像処理部１０５は、Ａ／Ｄ変換器１０４からの画像データ、又は、メモリ制御部１０７からの画像データに対し、ホワイトバランスなどの色変換処理、γ処理、輪郭強調処理などを行う。また、画像処理部１０５では、顔・顔器官検出部１１３の顔検出結果及び顔器官検出結果、撮像した画像データを用いて所定の評価値算出処理（図示しない）を行い、得られた評価値に基づいてシステム制御部５０が露光制御、測距制御を行う。これにより、ＴＴＬ（スルー・ザ・レンズ）方式のＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理、テカリ補正処理などを行う。
【００１６】
画像処理部１０５から出力された画像データは、メモリ制御部１０７を介して画像メモリ１０６に書き込まれる。画像メモリ１０６は、撮像部１０３から出力された画像データや、表示部１０９に表示するための画像データを格納する。また、Ｄ／Ａ変換器１０８は、画像メモリ１０６に格納されている画像表示用の画像データをアナログ画像信号に変換して表示部１０９に供給する。表示部１０９は、ＬＣＤ等の表示器上に、Ｄ／Ａ変換器１０８からのアナログ画像信号に応じた表示を行う。
【００１７】
コーデック部１１０は、画像メモリ１０６に記録された画像データをＪＰＥＧ、ＭＰＥＧなどの規格に基づきそれぞれ圧縮符号化する。システム制御部５０は符号化した画像データを関連付けて、記録Ｉ／Ｆ１１１を介して記録媒体１１２に格納する。
【００１８】
上記の基本動作以外に、システム制御部５０は、前述した不揮発性メモリ１２１に記録されたプログラムを実行することで、後述する本実施形態の各処理を実現する。ここでいうプログラムとは、本実施形態にて後述する各種フローチャートを実行するためのプログラムのことである。この際、システム制御部５０の動作用の定数、変数、不揮発性メモリ１２１から読み出したプログラム等をシステムメモリ１２２に展開する。
【００１９】
次に、画像処理部１０５の詳細について、図２及び図１０を用いて説明する。図２は、画像処理部１０５の詳細な構成例を示すブロック図である。
図２において、画像処理部１０５は、同時化処理部２００、ＷＢ増幅部２０１、テカリ補正処理部２０２、被写体状態検出部２０３、補正対象領域決定部２０４、及び輝度・色信号生成部２０５を備えている。さらに、画像処理部１０５は、輪郭強調処理部２０６、輝度ガンマ処理部２０７、色変換処理部２０８、色ガンマ処理部２０９、及び色差信号生成部２１０を備えている。
【００２０】
次に、画像処理部１０５における図２の各部の処理について、図１０のフローチャートに従って説明する。
図１０は、本実施形態に係る画像処理部１０５による詳細な処理手順の一例を示すフローチャートである。
ステップＳ１００１において、同時化処理部２００は、Ａ／Ｄ変換器１０４からベイヤーＲＧＢの画像データを入力し、入力した画像データに対して同時化処理を行い、色信号Ｒ，Ｇ，Ｂ（ＲＧＢ信号）を生成する。
【００２１】
次に、ステップＳ１００２において、ＷＢ増幅部２０１は、システム制御部５０が算出するホワイトバランスゲイン値に基づき、ＲＧＢ信号にゲインをかけ、ホワイトバランスを調整する。
次に、ステップＳ１００３において、被写体状態検出部２０３は、顔・顔器官検出部１１３から顔検出結果及び顔器官検出結果の情報を入力する。そして、その情報とステップＳ１００２においてＷＢ増幅部２０１が出力したＲＧＢ信号とを基に、被写体の口が開いて歯が見えているか、白色系の帽子やアクセサリーなどの装着物を付けているか、髪の毛が白髪であるかなどといった被写体の状態を検出する。なお、被写体の状態の検出方法の詳細については後述する。
【００２２】
ステップＳ１００４において、補正対象領域決定部２０４は、ステップＳ１００３における被写体状態検出部２０３の検出結果に応じて、テカリ補正を行う補正対象領域を決定する。なお、補正対象領域の決定方法の詳細については後述する。
ステップＳ１００５において、テカリ補正処理部２０２は、ＲＧＢ信号におけるステップＳ１００４において補正対象領域決定部２０４で決定された補正対象領域内の高輝度領域を補正（テカリ補正）する。そして、テカリ補正されたＲＧＢ信号を輝度・色信号生成部２０５に出力する。
【００２３】
ステップＳ１００６において、輝度・色信号生成部２０５は、ＲＧＢ信号から輝度信号Ｙを生成し、生成した輝度信号Ｙを輪郭強調処理部２０６へ出力し、ＲＧＢ信号を色変換処理部２０８へ出力する。
ステップＳ１００７において、輪郭強調処理部２０６は、輝度信号Ｙに対して輪郭強調処理を行い、輝度ガンマ処理部２０７へ出力する。一方、色変換処理部２０８は、ＲＧＢ信号に対するマトリクス演算などにより、所望のカラーバランスへＲＧＢ信号を変換する。
【００２４】
ステップＳ１００８において、輝度ガンマ処理部２０７は、輝度信号Ｙに対してガンマ補正を行い、輝度信号Ｙを画像メモリ１０６に出力する。一方、色ガンマ処理部２０９は、ＲＧＢ信号に対してガンマ補正を行う。
ステップＳ１００９において、色差信号生成部２１０は、ＲＧＢ信号から色差信号Ｒ−Ｙ、Ｂ−Ｙを生成し、画像メモリ１０６に出力する。
【００２５】
次に、画像処理部１０５内のテカリ補正処理部２０２の詳細な処理について、図３を用いて説明する。
図３（ａ）は、テカリ補正処理部２０２の詳細な構成例を示すブロック図である。
図３（ａ）において、テカリ補正処理部２０２は、輝度信号生成部３０１、輝度補正重み生成部３０２、距離補正重み生成部３０３、乗算処理部３０４、鏡面反射補正信号生成部３０５、補正信号減算処理部３０６を備えている。
【００２６】
上記構成のテカリ補正処理部２０２の動作について説明する。
輝度信号生成部３０１は、ＲＧＢ信号から輝度信号Ｙを生成し、生成した輝度信号Ｙを輝度補正重み生成部３０２に出力する。輝度補正重み生成部３０２では、輝度信号Ｙの輝度値に応じて輝度補正重みを算出し、輝度補正重み信号Y＿weightを生成する。ここで、輝度補正重みの例を、図３（ｂ）に示す。横軸が輝度値を表し、縦軸が輝度補正重みを表しており、本実施形態では輝度信号Ｙの輝度値が低ければ輝度補正重みを小さくし、輝度値が高ければ輝度補正重みを大きくするよう制御している。
【００２７】
距離補正重み生成部３０３は、補正対象領域決定部２０４から補正対象領域の情報を取得し、補正対象領域内の距離補正重みを高くし、補正対象領域外の距離補正重みを小さくするような距離補正重み信号D＿weightを生成する。図３（ｃ）には、補正対象領域決定部２０４が出力する補正対象領域の楕円の中心を補正対象領域の中心とした場合の距離補正重みの例を示す。横軸が補正対象領域の中心からの距離を表し、縦軸が距離補正重みを表しており、本実施形態では補正対象領域の中心からの距離が近ければ距離補正重みを大きくし、補正対象領域の中心からの距離が遠ければ距離補正重みを小さくするよう制御している。
【００２８】
乗算処理部３０４は、輝度補正重み生成部３０２が出力した輝度補正重み信号Y＿weightと距離補正重み生成部３０３が出力した距離補正重み信号D＿weightとを乗算した総合補正重み信号YD＿weightを生成する。そして、この総合補正重み信号YD＿weightを鏡面反射補正信号生成部３０５に出力する。鏡面反射補正信号生成部３０５は、予め算出された肌色の補色成分（ＲS，ＧS，ＢS）に総合補正重み信号YD＿weightを乗算し、補正信号（Ｒ'，Ｇ'，Ｂ'）を生成する。ここで、補正信号（Ｒ'，Ｇ'，Ｂ'）は下記の式（１）で算出される。なお、αはゲイン量を示す。
Ｒ'＝α×ＲS×YD＿weight
Ｇ'＝α×ＧS×YD＿weight      ・・・（１）
Ｂ'＝α×ＢS×YD＿weight
【００２９】
生成した補正信号（Ｒ'，Ｇ'，Ｂ'）は、補正信号減算処理部３０６に出力される。補正信号減算処理部３０６は、入力されたＲＧＢ信号（Ｒ，Ｇ，Ｂ）から鏡面反射補正信号生成部３０５で生成した補正信号（Ｒ'，Ｇ'，Ｂ'）を減算し、減算したＲＧＢ信号を出力する。これにより、鏡面反射領域の輝度を低減させると共に、所望の肌色に近づけることでテカリ補正することが可能となる。
【００３０】
図４には、画像処理部１０５によりテカリ補正した例を示す。図４（ａ）はテカリ補正前の撮影画像の例を示し、図４（ｂ）は補正対象領域決定部２０４で決定した補正対象領域を撮影画像に重ねた例を示している。また、図４（ｃ）はテカリ補正後の撮影画像の例を示している。図４（ａ）に示す例では、顔領域のおでこや頬にテカリ領域４０１が存在するが、図４（ｂ）に示す補正対象領域４０２内においてテカリ補正を行うことで、図４（ｃ）に示すようにテカリ領域が補正される。
【００３１】
図４に示した例は、白い帽子や歯などの高輝度領域を含んでいない場合の例である。本実施形態に係るデジタルカメラ１００は、テカリ補正すべきでない白い帽子や歯などの高輝度領域を含んでいる場合であっても、適切に肌領域をテカリ補正することができる。次に、肌以外の高輝度領域として、例えば口が開いて白い歯が見えている被写体のシーンに対し、テカリ補正処理部２０２でテカリ補正する処理について説明する。
【００３２】
図５には、口が開いて歯が見えている被写体の撮影画像の例を示す。図５（ａ）はテカリ補正処理前の撮影画像を示し、図５（ｂ）は被写体状態検出部２０３が検出する被写体状態情報を使用しなかった場合の仮の補正対象領域５０２を撮影画像に重ねた例を示す。図５（ｃ）は被写体状態検出部２０３が検出する被写体状態情報を使用して、口領域を除外した最終的な補正対象領域５０３を撮影画像に重ねた例を示し、図５（ｄ）はテカリ補正処理後の撮影画像の例を示す。図５（ａ）に示す例では、顔領域のおでこや頬にテカリ領域５０１が存在するが、図５（ｃ）に示すような口領域５０４を除外した最終的な補正対象領域５０３内のテカリをテカリ補正処理する。これにより、図５（ｄ）に示すように歯をテカリ補正せずにテカリ領域５０１を適切に補正できるようにする。
【００３３】
次に、システム制御部５０の制御により図５に示す例のように動作するテカリ補正処理部２０２の処理手順について、図６のフローチャートを用いて説明する。
【００３４】
図６は、システム制御部５０の制御に基づいてテカリ補正処理部２０２が動作する手順の一例を示すフローチャートである。以下、図６のフローチャートに従って、システム制御部５０の制御に基づいてテカリ補正処理部２０２によりテカリ補正を行う動作について説明する。
まず、ステップＳ６０１において、システム制御部５０は前述した一連の動作により被写体を撮像し、画像データを生成する。
【００３５】
次に、ステップＳ６０２において、システム制御部５０は、現在の撮影設定でテカリ補正処理が選択されているか否かを判定する。即ち、テカリ補正処理部２０２による処理を行うか否かを判定する。テカリ補正を行う場合はステップＳ６０３に進み、そうでない場合はステップＳ６１１に進む。
ステップＳ６０３においては、補正対象領域決定部２０４は顔・顔器官検出部１１３から被写体の顔検出結果及び顔器官検出結果の情報を取得し、補正対象領域決定部２０４が仮の補正対象領域を決定する。具体的には、まず、顔・顔器官検出部１１３から撮影画像中から顔が映っている被写体の顔のパーツである目、鼻、口などの座標位置の位置情報を取得し、それらの位置情報から顔領域を検出する。補正対象領域決定部２０４は、検出した顔領域の位置情報から、補正対象領域決定部２０４は顔領域内に仮の補正対象領域を決定する。
【００３６】
ステップＳ６０４においては、被写体状態検出部２０３は、顔領域の輝度情報を取得する。具体的には、ＷＢ増幅部２０１からＲＧＢ信号を取得して輝度信号Ｙを生成し、顔・顔器官検出部１１３から出力される各器官の位置情報を基に、口領域を除外した顔領域の平均輝度値Ｙavefaceを算出する。
ステップＳ６０５においては、被写体状態検出部２０３は、口領域内の輝度情報を取得する。具体的には、顔・顔器官検出部１１３から出力される口器官の座標情報を基に口が含まれる領域内の平均輝度値Ｙavemouthを算出する。
【００３７】
ステップＳ６０６においては、被写体状態検出部２０３は、顔領域の平均輝度値Ｙavefaceと口領域の平均輝度値Ｙavemouthとの輝度バランスが崩れているか否かを判定する。具体的には、ステップＳ６０５で取得した口領域の平均輝度値ＹavemouthをステップＳ６０４で取得した顔領域の平均輝度値Ｙavefaceで除算し、除算結果が所定の閾値ｔｈよりも大きいか否かを判定する。そして、閾値ｔｈよりも大きかった場合（（Ｙavemouth／Ｙaveface）＞ｔｈ）は輝度バランスが崩れていると判定する。この場合、被写体状態検出部２０３は、補正対象領域決定部２０４に対し、被写体は口が開いて歯が見えている状態であるという被写体状態情報を出力し、ステップＳ６０７に進む。逆に、除算結果が閾値ｔｈ以下であった場合（（Ｙavemouth／Ｙaveface）≦ｔｈ）は、輝度バランスが崩れていないと判定する。この場合、被写体状態検出部２０３は、補正対象領域決定部２０４に対し、被写体は口を閉じている状態であるという被写体状態情報を出力し、ステップＳ６０８に進む。
【００３８】
ステップＳ６０７においては、補正対象領域決定部２０４は、被写体状態検出部２０３からの被写体は口が開いて歯が見えている状態であるという被写体状態情報に基づき、補正対象領域から口領域を除外する。
ステップＳ６０８においては、補正対象領域決定部２０４は、最終的な補正対象領域を決定する。
【００３９】
ステップＳ６０９においては、テカリ補正処理部２０２は、補正対象領域決定部２０４で最終決定した補正対象領域内で高輝度領域を検出する。具体的には、まず、輝度信号生成部３０１がＲＧＢ信号から輝度信号Ｙを生成する。次に、輝度補正重み生成部３０２は輝度が高いほど輝度補正重みを高くするような輝度補正重み信号Y＿weightを生成するとともに、距離補正重み生成部３０３は補正対象領域の中心からの距離に応じた距離補正重み信号D＿weightを生成する。
【００４０】
ステップＳ６１０においては、テカリ補正処理部２０２は、ステップＳ６０９において検出された高輝度領域をテカリ補正する。具体的には、図３（ａ）を用いて前述した通り、乗算処理部３０４が輝度補正重み信号Y＿weightと距離補正重み信号D＿weightとを乗算することにより、総合補正重み信号YD＿weightを算出する。また、鏡面反射補正信号生成部３０５が予め算出された肌色の補色成分（ＲS，ＧS，ＢS）に総合補正重み信号YD＿weightを乗算し、補正信号（Ｒ'，Ｇ'，Ｂ'）を生成する。そして、補正信号減算処理部３０６がＲＧＢ信号（Ｒ，Ｇ，Ｂ）から補正信号（Ｒ'，Ｇ'，Ｂ'）を減算することで、テカリ補正する。補正信号（Ｒ'，Ｇ'，Ｂ'）は、前述した式（１）により算出する。
【００４１】
ステップＳ６１１においては、画像処理部１０５は後段のガンマ補正など前述した画像処理を行い、処理を終了する。以上のように、肌のテカリ以外の高輝度領域として、例えば口が開いて歯が見えている被写体のシーンであっても、適切にテカリ補正を行うことができる。
【００４２】
次に、肌のテカリ以外の高輝度領域として、白色系の帽子を被っている被写体や髪の毛が白髪の被写体などのシーンを撮影し、テカリ補正処理部２０２でテカリ補正する処理について説明する。後述の説明は、白色系の帽子を被っている被写体のシーンについて説明するが、アクセサリーを装着しているシーンや白髪の被写体のシーンも同様の処理が適用できる。
【００４３】
図７には、白色系の帽子７０２を被っている被写体を含む撮影画像の例を示す。図７（ａ）はテカリ補正処理前の撮影画像の例を示し、図７（ｂ）は被写体状態検出部２０３が検出する被写体状態情報を使用しなかった場合の仮の補正対象領域７０３を撮影画像に重ねた例を示す。図７（ｃ）は被写体状態検出部２０３が検出する被写体状態情報を使用して、帽子領域を除外した最終的な補正対象領域７０４を撮影画像に重ねた例を示し、図７（ｄ）はテカリ補正処理後の撮影画像の例を示す。図７（ａ）に示す例では、顔領域のおでこや頬にテカリ領域７０１があるが、図７（ｃ）に示す帽子領域を除外した補正対象領域７０４内のテカリをテカリ補正処理する。これにより、図７（ｄ）に示すように帽子７０２をテカリ補正せずにテカリ領域７０１を適切に補正できるようにする。
【００４４】
次に、システム制御部５０の制御により、図７に示す例のように動作するテカリ補正処理部２０２の処理手順について、図８のフローチャートを用いて説明する。
【００４５】
図８は、システム制御部５０の制御に基づいてテカリ補正処理部２０２が動作する手順の一例を示すフローチャートである。以下、図８のフローチャートに従って、システム制御部５０がテカリ補正処理部２０２においてテカリ補正処理する動作について説明する。本処理においては、図９に示すように、画面全体を複数のブロックに分割し、ブロック毎の輝度情報と色情報とをライン毎に評価することで、補正対象領域を決定する。
【００４６】
まず、ステップＳ８０１〜Ｓ８０３は、それぞれ図６のステップＳ６０１〜Ｓ６０３と同様であるため、説明は省略する。
ステップＳ８０４においては、被写体状態検出部２０３は、顔領域の輝度情報と色情報とを取得する。具体的には、顔・顔器官検出部１１３から出力される各器官の位置情報を基に顔領域を検出する。そして、ＷＢ増幅部２０１からＲＧＢ信号を取得して輝度信号Ｙを生成し、顔領域内の平均輝度値及び平均ＲＧＢ値を算出する。
【００４７】
ステップＳ８０５においては、被写体状態検出部２０３は、目領域より上のＮライン目の輝度情報と色情報とを取得する。具体的には、図９に示したように、画面全体をブロック分割した場合に顔・顔器官検出部１１３から出力される顔器官の位置情報を基に、目より上のＮライン目にあるブロック毎の輝度値およびＲＧＢ値の平均値を取得する。
【００４８】
ステップＳ８０６においては、被写体状態検出部２０３は、顔領域の平均ＲＧＢ値とＮライン目の各ブロックのＲＧＢ値の平均値とを比較し、色バランスが崩れているか否かを判定する。色バランスが崩れているか否かの判定方法については特に限定されないが、例えば、各色信号で差分を取り、差分の絶対値の合計が閾値を超えているか否かを判定するなど、様々な方法が適用できる。この判定の結果、色バランスが崩れている場合はステップＳ８０７に進み、色バランスが崩れていない場合はステップＳ８０８に進む。
【００４９】
ステップＳ８０７においては、被写体状態検出部２０３は、取得したＮライン目の各ブロックの輝度値の平均値が閾値Ａよりも大きいか否かを判定する。Ｎライン目の各ブロックの輝度値の平均値が閾値Ａよりも大きい場合は、補正対象領域決定部２０４に対し、被写体は白色系の帽子を装着している状態であるという被写体状態情報を出力し、ステップＳ８０９に進む。一方、輝度値の平均値が閾値Ａ以下である場合は、被写体状態がまだ確定できない状態であることから、ステップＳ８１０に進む。
【００５０】
ここで、閾値Ａは例えば日本人の髪の毛の色といった暗い輝度値よりも大きい程度の値である。色バランスが崩れている場合とは、Ｎライン目の各ブロックで、白色系の帽子を認識した場合と黒色の髪の毛を認識した場合とが考えられる。黒色の髪の毛と顔領域の肌色とで色バランスが崩れていた場合は、被写体は白色系の帽子を装着しているなどの可能性がまだあるため、ステップＳ８１０へ進むようにしている。
【００５１】
一方、ステップＳ８０８においては、被写体状態検出部２０３は、取得したＮライン目の各ブロックの輝度値の平均値が閾値Ｂよりも大きいか否かを判定する。Ｎライン目の各ブロックの輝度値の平均値が閾値Ｂよりも大きい場合は、補正対象領域決定部２０４に対し、被写体は白色系の帽子を装着している状態であるという被写体状態情報を出力し、ステップＳ８０９に進む。一方、輝度値の平均値が閾値Ｂ以下である場合は、被写体状態がまだ確定できない状態であることから、ステップＳ８１０に進む。
【００５２】
ここで、閾値Ｂは閾値Ａよりも高い輝度値であり、色バランスが崩れていない場合においても、突出して輝度値が高いブロック領域があれば被写体は白色系の帽子を装着している状態と判定可能にしている。例えば暖色系の環境光下において、被写体が被っている白色系の帽子が照らされた場合に、色バランスだけでは白色系の帽子であると判定できない。そこで、帽子の輝度値が閾値Ｂよりも大きい場合に白い帽子を装着していると判定可能にしている。
【００５３】
ステップＳ８０９においては、補正対象領域決定部２０４は、被写体状態検出部２０３から出力される被写体状態情報を基に、Ｎライン目のブロック領域を補正対象領域の境界として決定する。
そして、ステップＳ８１２において、補正対象領域決定部２０４は、最終的な補正対象領域を決定する。
【００５４】
一方、ステップＳ８１０においては、被写体状態検出部２０３は、現在評価しているラインが、ステップＳ８０３において決定した仮の補正対象領域の上限に達しているか否かを判定する。この判定の結果、仮の補正対象領域の上限に達している場合はステップＳ８１２へ進み、上限に達していない場合はステップＳ８１１へ進む。
ステップＳ８１１においては、被写体状態検出部２０３は、評価しているラインの位置を１ライン上げ、Ｎ＝Ｎ＋１に更新して、ステップＳ８０５へ進む。このように、補正対象領域決定部２０４において決定した仮の補正対象領域の上限に達するまで、ステップＳ８０５〜Ｓ８１０までの処理を繰り返す。
【００５５】
ステップＳ８１３〜Ｓ８１５は、それぞれ図６のステップＳ６０９〜Ｓ６１１と同様である。以上のように、被写体が白色系の帽子を被っている場合であっても、適切にテカリ補正を行うことができる。
【００５６】
以上のように本実施形態によれば、被写体状態検出部２０３により被写体の状態（白い歯や帽子の有無など）を検出し、適切な補正対象領域を決定するようにしたので、適切にテカリ補正を行うことができる。なお、本実施形態では、白い歯を見せている被写体の場合と、白い帽子等を装着している場合とでのテカリ補正について説明したが、白い帽子等を被ってかつ白い歯を見せている被写体についても同様にテカリ補正を行うことができる。この場合、例えば図８のステップＳ８０３の後に、図６のステップＳ６０４〜Ｓ６０８の処理を行い、その後、ステップＳ８０４に進むようにしてもよい。もしくは、図８のステップＳ８１２の段階で仮の補正対象領域とし、その後、ステップＳ６０４〜Ｓ６０８の処理を行って、最終的な補正対象領域を決定してもよい。
【００５７】
また、本実施形態では、デジタルカメラ１００内のテカリ補正処理部２０２においてテカリ補正処理する例について説明したが、これに限るものではない。例えば、顔・顔器官検出部１１３の検出結果が関連付けて記録された撮影画像を外部装置から入力し、画像処理装置においてテカリ補正する構成にしても良い。
【００５８】
また、本実施形態では、顔領域内の肌以外の高輝度領域として、歯や白色系の帽子、アクセサリー、白髪などといった例を挙げたがこれに限るものではない。また、本実施形態では、撮影設定によりテカリ補正処理が選択されている場合に、図６の処理を行うか図８の処理を行うかを予め選択するようにしてもよく、被写体を撮像してからどちらの処理を行うかをシステム制御部５０が判断するようにしてもよい。後者の場合には、例えば、顔・顔器官検出部１１３の検出結果から、口が開いているか否か、帽子らしきものが検出されたかなどの情報に基づいてシステム制御部５０がどちらの処理を行うかを判断してもよい。
【００５９】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６０】
２０２  テカリ補正処理部
２０３  被写体状態検出部
２０４  補正対象領域決定部
【図１】
2019032714.tif 000003
【図２】
2019032714.tif 000004
【図３】
2019032714.tif 000005
【図４】
2019032714.tif 000006
【図５】
2019032714.tif 000007
【図６】
2019032714.tif 000008
【図７】
2019032714.tif 000009
【図８】
2019032714.tif 000010
【図９】
2019032714.tif 000011
【図１０】
2019032714.tif 000012