(57)【要約】【課題】  合焦していない被写体に対しても違和感の少ないリライティング処理を行うこと。【解決手段】  画像データを取得して、画像中の被写体を検出する検出手段と、検出された被写体の合焦度を算出する合焦度算出手段と、前記被写体に仮想的な光を照射する１以上の仮想光源のパラメータを設定する設定手段と、前記被写体に照射した前記仮想的な光のうち、前記被写体の法線の方向の第１の反射成分を算出する第１の反射成分算出手段と、前記被写体により反射された前記仮想的な光の反射光のうち、視線の方向の第２の反射成分を算出する第２の反射成分算出手段と、前記第１の反射成分と前記第２の反射成分とを、前記画像データに付加する付加手段と、を有し、前記第２の反射成分算出手段は、前記合焦度が前記合焦度が第１の値である場合に、前記第１の値よりも大きい第２の値である場合よりも、前記第２の反射成分が少なくなるように調整することを特徴とする。【選択図】  図５
2019149719.tif 000002
【特許請求の範囲】
【請求項１】
画像データを取得して、画像中の被写体を検出する検出手段と、
前記検出手段により検出された被写体の合焦度を算出する合焦度算出手段と、
前記被写体に仮想的な光を照射する１以上の仮想光源のパラメータを設定する設定手段と、
前記被写体に照射した前記仮想的な光のうち、前記被写体の法線の方向の第１の反射成分を算出する第１の反射成分算出手段と、
前記被写体により反射された前記仮想的な光の反射光のうち、視線の方向の第２の反射成分を算出する第２の反射成分算出手段と、
前記第１の反射成分と前記第２の反射成分とを、前記画像データに付加する付加手段と、を有し、
前記第２の反射成分算出手段は、前記合焦度が前記合焦度が第１の値である場合に、前記第１の値よりも大きい第２の値である場合よりも、前記第２の反射成分が少なくなるように調整することを特徴とする画像処理装置。
【請求項２】
前記第２の反射成分算出手段は、前記合焦度が前記第１の値である場合に、前記第２の値である場合よりも、前記反射光の強度を低くすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２の反射成分算出手段は、前記合焦度が前記第１の値である場合に、前記第２の値である場合よりも、前記第２の反射成分の強度を低くすることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記仮想的な光の反射光は、前記仮想的な光の色の成分と、前記被写体の色の成分とを含み、前記第２の反射成分算出手段は、前記第２の反射成分を算出する際に、前記合焦度が第１の値である場合に、前記第２の値である場合よりも、前記第２の反射成分における前記被写体の色の成分を大きくし、前記仮想的な光の色の成分を小さくすることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
距離情報と、撮影時の撮像手段の設定値情報を取得する取得手段と、を更に有し、
前記合焦度算出手段は、前記距離情報と前記設定値情報とに基づいて、前記合焦度を算出することを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記検出された被写体の被写体情報に基づいて、予め設定された複数の法線情報のいずれかを選択する選択手段と、
平滑化フィルタを用いて、前記法線情報を平滑化する平滑化手段と、を更に有し、
前記平滑化手段は、前記合焦度が前記第１の値の場合に、前記第２の値である場合よりも、平滑化の度合いが高い平滑化フィルタを用いることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記平滑化フィルタは複数の光学系に対応して設けられ、
前記平滑化手段は、前記画像の撮影時に用いた光学系に応じた前記平滑化フィルタを用いることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
光学系により結像された光を光電変換して、画像データを出力する撮像手段と、
請求項１乃至７のいずれか１項に記載の画像処理装置と
を有することを特徴とする撮像装置。
【請求項９】
検出手段が、画像データを取得して、画像中の被写体を検出する検出工程と、
合焦度算出手段が、前記検出工程で検出された被写体の合焦度を算出する合焦度算出工程と、
設定手段が、前記被写体に仮想的な光を照射する１以上の仮想光源のパラメータを設定する設定工程と、
第１の反射成分算出手段が、前記被写体に照射した前記仮想的な光のうち、前記被写体の法線の方向の第１の反射成分を算出する第１の反射成分算出工程と、
第２の反射成分算出手段が、前記被写体により反射された前記仮想的な光の反射光のうち、視線の方向の第２の反射成分を算出する第２の反射成分算出工程と、
付加手段が、前記第１の反射成分と前記第２の反射成分とを、前記画像データに付加する付加工程と、を有し、
前記第２の反射成分算出工程では、前記合焦度が前記合焦度が第１の値である場合に、前記第１の値よりも大きい第２の値である場合よりも、前記第２の反射成分が少なくなるように調整することを特徴とする画像処理方法。
【請求項１０】
コンピュータを、請求項１乃至７のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び方法、及び撮像装置に関し、特に入力された画像の明るさを補正する技術に関するものである。
【背景技術】
【０００２】
従来、撮影後の画像中の被写体に対して、仮想的な光源からの光を照射し、リライティングを行う画像処理技術が知られている。この画像処理はリライティング処理と呼ばれ、リライティング処理を行うことにより、ユーザーが画像中の被写体に任意の陰影を付けることができる。
【０００３】
例えば、特許文献１では、被写体の顔領域に対して予め用意した陰影パターンを当てはめて陰影を付与することで、処理負荷を抑えつつ、望ましい陰影を持つ被写体の画像を得ることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１０５０１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載のリライティング処理の手法では、予め用意した陰影パターンは被写体が合焦している条件で生成されたものであるため、合焦していない被写体にリライティング処理を行う場合に違和感が生じることがある。特に、急峻な輝きの仮想光源を設定する場合に違和感が生じやすい。
【０００６】
本発明は上記問題点を鑑みてなされたものであり、合焦していない被写体に対しても違和感の少ないリライティング処理を行うことを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の画像処理装置は、画像データを取得して、画像中の被写体を検出する検出手段と、前記検出手段により検出された被写体の合焦度を算出する合焦度算出手段と、前記被写体に仮想的な光を照射する１以上の仮想光源のパラメータを設定する設定手段と、前記被写体に照射した前記仮想的な光のうち、前記被写体の法線の方向の第１の反射成分を算出する第１の反射成分算出手段と、前記被写体により反射された前記仮想的な光の反射光のうち、視線の方向の第２の反射成分を算出する第２の反射成分算出手段と、前記第１の反射成分と前記第２の反射成分とを、前記画像データに付加する付加手段と、を有し、前記第２の反射成分算出手段は、前記合焦度が前記合焦度が第１の値である場合に、前記第１の値よりも大きい第２の値である場合よりも、前記第２の反射成分が少なくなるように調整する。
【発明の効果】
【０００８】
本発明によれば、合焦していない被写体に対しても違和感の少ないリライティング処理を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態に係るデジタルカメラの構成を示すブロック図。
【図２】実施形態に係る画像処理部の構成を示すブロック図。
【図３】実施形態に係る合焦度算出部における合照度算出処理を示すフローチャート。
【図４】実施形態に係る合焦度算出部で用いる重みパラメータＷ＿Ａｖと絞り値の関係を示す図。
【図５】第１の実施形態に係るリライティング処理部の構成を示すブロック図。
【図６】第１の実施形態に係るリライティング処理部の処理を示すフローチャート。
【図７】第１の実施形態に係るリライティングによる拡散反射成分及び鏡面反射成分を説明する図。
【図８】第１の実施形態に係る仮想光源鏡面反射成分算出部のパラメータと合焦度との関係を表す図。
【図９】第２の実施形態に係るリライティング処理部の構成を示すブロック図。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明を実施するための形態を詳細に説明する。なお、本実施形態では、本発明を適用する画像処理装置として、撮像装置であるデジタルカメラを例に取って説明する。
【００１１】
＜第１の実施形態＞
図１は、本実施形態にかかるデジタルカメラ１００の構成を示すブロック図である。デジタルカメラ１００は、光学系１０１、撮像素子１０２、Ａ／Ｄ変換部１０３、画像処理部１０４、測距部１０５、顔検出部１０６、記録部１０７、制御部１０８、メモリ１０９、操作部１１０、表示部１１１を備えている。光学系１０１にはフォーカスレンズや絞り、シャッターが含まれる。この光学系１０１は、撮影時にはフォーカスレンズを駆動して被写体のピント合わせを行い、絞りやシャッターを制御することにより露光量の調節をする。撮像素子１０２は、光学系１０１により結像された被写体光を、光電変換によって電気信号にするＣＣＤやＣＭＯＳ等の光電変換素子である。Ａ／Ｄ変換部１０３では、入力された電気信号をデジタル化する。デジタル化された電気信号（画像信号）は、画像処理部１０４において、同時化処理、ホワイトバランス補正処理、合焦度算出処理、リライティング処理、ガンマ処理などが行われ、得られた画像データが記録部１０７に出力される。
【００１２】
測距部１０５は、撮影時の被写体までの距離情報を取得して、距離マップを生成する。距離マップとは、撮影した画像の画素単位での被写体までの距離情報を示す、二次元配列のでデータである。顔検出部１０６は、画像処理部１０４で行うリライティング処理の被写体領域を決めるため、撮影画像中の人物の顔領域を検出する。顔領域の検出方法の一例として、例えば、右目、左目、口などの顔器官座標を検出して、右目と左目の距離など各顔器官同士の距離を算出し、この算出した距離に基づいて、背景領域を含まないように顔器官座標の重心座標を中心とする楕円領域を設定する。そして、この設定した楕円領域を顔領域として検出する。そして、顔検出部１０６は、検出した顔器官座標、顔領域、及び顔領域の中心座標を示す顔座標を含む顔情報（被写体情報）を出力する。
【００１３】
記録部１０７は、画像処理部１０４から出力された画像データをＪＰＥＧ等の画像形式に変換し、記録する。制御部１０８は、本実施形態のデジタルカメラ１００全体の動作制御を行う。例えば、撮影直前の被写体の明るさから、光学系１０１で目標とする露光量を算出する。他にも、撮影した画像に基づいて所定の評価値を算出し、画像処理部１０４で行う画像処理のパラメータを決定する。メモリ１０９には、画像処理部１０４で用いる情報を格納してあり、必要に応じて画像処理部１０４に出力する。操作部１１０は、ユーザーがデジタルカメラ１００に対して操作指示を行うために用いられる。表示部１１１は、例えばカメラ背面に設置された液晶ディスプレイ等であり、撮影時の操作の補助を行うための画面や、記録部１０７に保存されている画像等を表示する。
【００１４】
次に、図２を参照して、画像処理部１０４について詳細に説明する。図２は本実施形態にかかる画像処理部１０４の構成を示すブロック図である。画像処理部１０４は、同時化処理部２０１、ホワイトバランス補正処理部２０２、合焦度算出部２０３、リライティング処理部２０４、ガンマ処理部２０５を備えている。
【００１５】
画像処理部１０４の処理の流れについて説明する。なお、本実施形態では、撮像素子１０２はベイヤー配列のカラーフィルタにより覆われているものとする。従って、撮像素子１０２の各画素からはＲ、Ｇ、Ｂいずれかの画像信号が出力される。そして、画像処理部１０４には、Ａ／Ｄ変換部１０３で変換されたベイヤー配列の画像信号が入力される。画像処理部１０４に入力した画像信号Ｒ、Ｇ、Ｂに対して、まず、同時化処理部２０１において同時化処理を行い、各画素について色信号ＲＧＢを生成する。生成した色信号ＲＧＢはホワイトバランス補正処理部２０２に入力され、ホワイトバランス補正処理部２０２は、制御部１０８が算出したホワイトバランスゲイン値に基づいて色信号ＲＧＢにゲインをかけてホワイトバランスを調整する。ホワイトバランスが調整された色信号ＲＧＢはリライティング処理部２０４に出力される。
【００１６】
一方、合焦度算出部２０３は、測距部１０５から距離マップを入力すると共に、顔検出部１０６から顔情報を入力する。更に、合焦度算出部２０３は、メモリ１０９に格納された撮影時のカメラの設定値情報を読み込む。そして、設定値情報に含まれる撮影時にフォーカスを合わせた被写体の位置と、顔情報に含まれる顔座標が示す位置の距離マップの値とを比較することで、合焦度Ｖ＿Ｆｏｃｕｓを算出する。算出した合焦度Ｖ＿Ｆｏｃｕｓは、リライティング処理部２０４に出力される。なお、合焦度Ｖ＿Ｆｏｃｕｓの算出方法については、詳細に後述する。
【００１７】
リライティング処理部２０４は、ホワイトバランス補正処理部２０２から色信号ＲＧＢを、測距部１０５から距離マップＤ＿ＭＡＰを、顔検出部１０６から顔情報を、そして合焦度算出部２０３から合焦度Ｖ＿Ｆｏｃｕｓを受ける。そして、色信号ＲＧＢに対して、仮想光を照射した画像を生成し（リライティング処理）、処理後の色信号Ｒ＿ｏｕｔ、Ｇ＿ｏｕｔ、Ｂ＿ｏｕｔをガンマ処理部２０５に出力する。ガンマ処理部２０５は、リライティング処理された色信号Ｒ＿ｏｕｔ、Ｇ＿ｏｕｔ、Ｂ＿ｏｕｔに対してガンマ処理を施し、ガンマ処理後の色信号Ｒｇ、Ｇｇ、Ｂｇを記録部１０７に出力する。
【００１８】
次に、合焦度算出部２０３における合焦度Ｖ＿Ｆｏｃｕｓの算出処理について、図３、図４を用いて詳細に説明する。図３は、合焦度算出部２０３における処理を示すフローチャート、図４は、合焦度算出部２０３における重みパラメータＷ＿Ａｖと絞り値の関係を示す図である。
【００１９】
合焦度算出部２０３は、Ｓ３０１において、メモリ１０９から撮影時のカメラの設定値情報を取得する。ここで取得する設定値情報は、絞り値と、フォーカスレンズの位置とを含む。
【００２０】
次にＳ３０２において、測距部１０５から距離マップ、顔検出部１０６から顔情報を取得する。Ｓ３０３では、距離マップを参照し、顔情報に含まれる顔座標における距離値Ｄ＿Ｆａｃｅと、撮影時にフォーカスを合わせた被写体の位置の距離値Ｄ＿Ｆｏｃｕｓとを取得する。そして、式（１）に示すように、Ｄ＿ＦａｃｅとＤ＿Ｆｏｃｕｓの差分絶対値であるＤ＿Ｓｕｂを算出する。
Ｄ＿Ｓｕｂ = ｜Ｄ＿Ｆａｃｅ − Ｄ＿Ｆｏｃｕｓ｜      …（１）
【００２１】
Ｓ３０４では、重みパラメータＷ＿Ａｖを取得する。重みパラメータＷ＿Ａｖは、図４に示すように、撮影時の絞り値が大きい程、重みが小さくなる特性を持つ。閾値Ｔｈ＿Ａｖは、予め定めた、被写界深度が十分に深い絞り値である。
【００２２】
Ｓ３０５では、Ｄ＿Ｓｕｂの値と重みパラメータＷ＿Ａｖを用いて、式（２）に示すように合焦度Ｖ＿Ｆｏｃｕｓを求める。
Ｖ＿Ｆｏｃｕｓ ＝ １／（Ｄ＿Ｓｕｂ×Ｗ＿Ａｖ＋１）      …（２）
【００２３】
ここで、重みパラメータＷ＿Ａｖについてさらに説明する。絞り値が異なる場合、Ｄ＿ＦａｃｅとＤ＿Ｆｏｃｕｓの差分絶対値Ｄ＿Ｓｕｂが同じ値であっても、ぼけ具合が異なる。具体的には、差分絶対値Ｄ＿Ｓｕｂが同じ値であっても、絞り値が小さい場合、被写界深度が浅くなるためぼけ具合は大きく、絞り値が大きい場合には、被写界深度が深くなるためぼけ具合は小さくなる。そこで、絞り値が小さいほど重みパラメータＷ＿Ａｖを大きくすることで、合焦度Ｖ＿Ｆｏｃｕｓの値が小さくなるようにして、合焦度の敏感度を調整する。なお、式（２）の右辺の「＋１」は、差分絶対値Ｄ＿Ｓｕｂが０（すなわち、顔に焦点が合っている場合）に、分母が０とならないようにするために加算しているが、これにより、被写体にフォーカスが合っている場合に最大値の１をとることになる。そして、差分絶対値Ｄ＿Ｓｕｂが大きくなるほど（すなわち、顔がぼけるほど）分母が大きくなるため、０〜１の値をとる合焦度Ｖ＿Ｆｏｃｕｓを求めることができる。
【００２４】
最後にＳ３０６において、算出した合焦度Ｖ＿Fｏｃｕｓをリライティング処理部２０４に出力する。
【００２５】
なお、上述した例では、距離値Ｄ＿Ｆｏｃｕｓを、カメラの設定値情報に含まれるフォーカスを合わせた被写体の位置と、距離マップとから取得した。しかしながら、本発明はこれに限るものでは無く、カメラの設定値情報にフォーカスレンズ位置が含まれている場合、このフォーカスレンズ位置に基づいて合焦位置までの距離を求め、これを距離値Ｄ＿Ｆｏｃｕｓとしても良い。
【００２６】
続いて、リライティング処理部２０４の処理について、図５及び図６を用いて詳細に説明する。図５はリライティング処理部２０４の構成を示すブロック図、図６はリライティング処理部２０４における処理を示すフローチャートである。
【００２７】
リライティング処理部２０４は、仮想光源設定部５００、法線取得部５０１、仮想光拡散反射成分算出部５０２、仮想光鏡面反射成分算出部５０３、仮想光付加処理部５０４を備える。
【００２８】
まずＳ６０１において、リライティング処理部２０４は、測距部１０５から距離マップ、ホワイトバランス補正処理部２０２から色信号ＲＧＢ、顔検出部１０６から顔情報、合焦度算出部２０３から合焦度Ｖ＿Ｆｏｃｕｓを入力する。
【００２９】
Ｓ６０２では、法線取得部５０１において、顔検出部１０６から入力された顔情報に含まれる顔座標の位置における被写体の法線情報を取得する。法線情報は、本実施形態では一般的な人物の顔の法線情報をメモリ１０９に予め格納しておき、顔情報に含まれる顔器官座標から顔の向きを求め、最も撮影時の被写体に近い顔の法線情報を取得する。なお、顔検出部１０６において顔の向きが求められている場合、顔情報の１つとして取得しても良い。このようにして取得した法線情報を仮想光拡散反射成分算出部５０２と、仮想光鏡面反射成分算出部５０３へ出力する。
【００３０】
Ｓ６０３において、仮想光源設定部５００は、顔検出部１０６から入力された顔情報を基に、仮想光源のパラメータを設定する。例えば、顔全体が暗い被写体に対して顔の明るさを全体的に明るくしたい場合においては、顔全体が仮想光源から仮想的に照射される光（以下、「仮想光」と呼ぶ。）の照射範囲に含まれるように、仮想光源の位置、仮想光の照射範囲、強度、色などのパラメータを制御する。なお、取得した画像に対してユーザが任意に仮想光源のパラメータを設定できるようにしても良い。
【００３１】
Ｓ６０４では、仮想光拡散反射成分算出部５０２において、拡散反射成分Ｒｄ、Ｇｄ、Ｂｄを算出する。ここで、拡散反射成分の一般的な算出方法について、図７を用いて説明する。図７は撮影時のカメラ１００と被写体７０１と仮想光源７０２との位置関係と、仮想光の反射特性を示した図である。なお、図７では説明の簡略化のために撮影画像の水平方向についてのみ示しているが、紙面に対して垂直な方向が撮影画像の垂直方向となる。以下の説明では、撮影画像における水平画素位置ＰＨと不図示の垂直画素位置ＰＶに対応する、被写体７０１上の点Ｐにおける仮想光の反射成分の算出方法について説明する。
【００３２】
図７において、仮想光源７０２は被写体７０１に対して設定した仮想光源である。カメラ１００で撮影された撮影画像の位置（ＰＨ，ＰＶ）における仮想光の反射成分は、被写体７０１上の点Ｐにおける法線ベクトルＮと仮想光源７０２の光源方向ベクトルＬとの内積に比例し、仮想光源７０２と点Ｐとの距離Ｋの二乗に反比例する値となる。なお、法線ベクトルＮと光源方向ベクトルＬは、水平方向、垂直方向、及び奥行き方向（図７の距離Ｄで示す方向）からなる３次元のベクトルである。また、光源方向ベクトルＬは、仮想光源７０２の位置と被写体７０１上の点Ｐの位置から求めることができる。この関係を数式で表現すると、仮想光の被写体７０１上の点Ｐにおける拡散反射成分強度Ｐｄは以下の式（３）で表すことができ、色ごとの拡散反射成分Ｒｄ、Ｇｄ、Ｂｄは以下の式（４）で表すことができる。
【００３３】
2019149719.tif 000003
Ｒｄ ＝ Ｐｄ×Ｒｗ×Ｒ
Ｇｄ ＝ Ｐｄ×Ｇｗ×Ｇ      …（４）
Ｂｄ ＝ Ｐｄ×Ｂｗ×Ｂ
【００３４】
ここで、式（３）におけるαは仮想光の強度、ｋｄは被写体の拡散反射率である。また、式（４）におけるＲ、Ｇ、Ｂはホワイトバランス補正処理部２０２から入力された色信号ＲＧＢ、Ｒｗ、Ｇｗ、Ｂｗは、仮想光の色（以下、「仮想光源色」と呼ぶ。）を示すパラメータ（光源色情報）である。
【００３５】
Ｓ６０５では、仮想光鏡面反射成分算出部５０３において、鏡面反射成分Ｒｓ、Ｇｓ、Ｂｓを算出する。拡散反射成分Ｒｄ、Ｇｄ、Ｂｄの算出方法と同様に図７を用いて鏡面反射成分Ｒｓ、Ｇｓ、Ｂｓの算出方法を説明する。鏡面反射成分の強度は、被写体７０１の点Ｐにおける鏡面反射方向ベクトルＳ（仮想光の反射角の方向）と、被写体７０１上の点Ｐから撮影時のカメラ１００の方向ベクトルＶ（視線の方向）の内積に比例する。この関係を数式で表現すると、仮想光源による鏡面反射成分強度Ｐｓ（すなわち、被写体による反射光の強度）は式（５）で表すことができる。
【００３６】
2019149719.tif 000004
【００３７】
ここで、式（５）におけるαは仮想光の強度、ｋｓは被写体の鏡面反射率、βは反射した光の広がり具合を示す輝き係数であり、この値が大きくなると鏡面反射特性が急峻になる。
【００３８】
次に、鏡面反射成分強度Ｐｓを用いて仮想光の照射時に照射対象に反映される鏡面反射色を算出する。まず、仮想光源色を反映させる第一の鏡面反射色成分Ｒｓ１、Ｇｓ１、Ｂｓ１を光源色情報Ｒｗ、Ｇｗ、Ｂｗを用いて、式（６）のように表す。
Ｒｓ１ ＝ Ｐｓ×Ｒｗ
Ｇｓ１ ＝ Ｐｓ×Ｇｗ      …（６）
Ｂｓ１ ＝ Ｐｓ×Ｂｗ
【００３９】
また、被写体色を反映させる第二の鏡面反射色成分Ｒｓ２、Ｇｓ２、Ｂｓ２を、色信号ＲＧＢを用いて式（７）のように表す。
Ｒｓ２ ＝ Ｐｓ×Ｒ
Ｇｓ２ ＝ Ｐｓ×Ｇ      …（７）
Ｂｓ２ ＝ Ｐｓ×Ｂ
【００４０】
さらに第一の鏡面反射色成分Ｒｓ１、Ｇｓ１、Ｂｓ１と第二の鏡面反射色成分Ｒｓ２、Ｇｓ２、Ｂｓ２と、０〜１の値をとる合成比率ａと、０〜１の値をとる鏡面反射ゲインｂを用いて、鏡面反射成分Ｒｓ、Ｇｓ、Ｂｓを式（８）のように表すことができる。
Ｒｓ ＝ ｂ×（ａ×Ｒｓ１＋（１−ａ）×Ｒｓ２）
Ｇｓ ＝ ｂ×（ａ×Ｇｓ１＋（１−ａ）×Ｇｓ２）      …（８）
Ｂｓ ＝ ｂ×（ａ×Ｂｓ１＋（１−ａ）×Ｂｓ２）
【００４１】
合成比率ａの値が１に近づくほど鏡面反射成分の色は光源色に近づき、合成比率ａの値が０に近づくほど、鏡面反射成分の色は被写体色に近づく。なお、仮想光源は複数設定することも可能であり、仮想光源毎にパラメータを制御することが可能である。
【００４２】
本実施形態における式（５）に記載の輝き係数βと、式（８）に記載の合成比率ａと鏡面反射ゲインｂは、それぞれ図８に示す特性によって算出される。図８は、輝き係数βと合成比率ａと鏡面反射ゲインｂの、合焦度Ｖ＿Ｆｏｃｕｓとの関係を示した図である。図８における閾値Ｔｈ１とＴｈ２は常にＴｈ１＜Ｔｈ２の値をとる。閾値Ｔｈ１は、被写体に鏡面反射の効果を十分に反映させるか否かを示す閾値であり、閾値Ｔｈ２は、被写体が十分に合焦しているか否かを判別する閾値である。合焦度Ｖ＿Ｆｏｃｕｓが閾値Ｔｈ１以下の場合、輝き係数βは値域の最小値をとり、合成比率ａは最小値０をとり、鏡面反射ゲインｂは単調増加する。合焦度Ｖ＿Ｆｏｃｕｓが閾値Ｔｈ１より大きく、閾値Ｔｈ２より小さい場合、輝き係数βと、合成比率ａは単調増加し、鏡面反射ゲインは最大値１をとる。合焦度Ｖ＿Ｆｏｃｕｓが閾値Ｔｈ２以上の場合、輝き係数βは値域の最大値となり、合成比率ａは常に最大値１となり、鏡面反射ゲインｂは常に最大値１をとる。
【００４３】
この特性に従って求められた輝き係数β、合成比率ａと鏡面反射ゲインｂによって鏡面反射成分Ｒｓ、Ｇｓ、Ｂｓを算出する。
【００４４】
Ｓ６０６では、仮想光付加処理部５０４において、仮想光拡散反射成分算出部５０２で算出した拡散反射成分Ｒｄ、Ｇｄ、Ｂｄと、仮想光鏡面反射成分算出部５０３で算出した鏡面反射成分Ｒｓ、Ｇｓ、Ｂｓを、色信号Ｒ、Ｇ、Ｂに付加する処理を行う。仮想光源照射後の色信号Ｒ＿ｏｕｔ、Ｇ＿ｏｕｔ、Ｂ＿ｏｕｔは、式（９）のように表すことができる。
Ｒ＿ｏｕｔ ＝ Ｒ＋Ｒｄ＋Ｒｓ
Ｇ＿ｏｕｔ ＝ Ｇ＋Ｇｄ＋Ｇｓ      …（９）
Ｂ＿ｏｕｔ ＝ Ｂ＋Ｂｄ＋Ｂｓ
【００４５】
Ｓ６０７において、このように算出した仮想光照射後の色信号Ｒ＿ｏｕｔ、Ｇ＿ｏｕｔ、Ｂ＿ｏｕｔ（仮想光照射画像）を、ガンマ処理部２０５に出力する。
【００４６】
なお、第１の実施形態では、リライティング処理による仮想光の照射対象の被写体を人物とし、画像中の被写体領域を撮影時に自動取得するために顔検出部１０６を用いている。しかし、仮想光の照射対象の被写体は人物に限らず、被写体に応じた被写体領域取得手段を用いても良い。
【００４７】
また、第１の実施形態では法線情報をメモリ１０９から直接取得する例について説明したが、法線情報ではなくても、被写体の立体形状を示すものであればどのような情報であっても構わない。例えば、被写体の立体形状を示す３次元のワイヤーフレーム情報であってもよい。この場合、ワイヤーフレームの各点の角度情報から法線を算出することができる。
【００４８】
また、第１の実施形態では、撮影画像に対して常にリライティング処理を行うものとして説明したが、リライティング処理を行わない場合には、仮想光源設定部５００により設定される強度αを０にすればよい。または、リライティング処理部２０４をバイパスする構成としても良い。リライティング処理のオン／オフは、例えば、操作部１１０によりユーザが指示することができる。また、例えば、予め決められた撮影環境（例えば逆光）に応じて、自動的にオン／オフするような構成としても良い。
【００４９】
また、リライティング処理を行わずに一旦記憶された画像を、後でリライティング処理しても良い。その場合、ガンマ処理部２０５におけるガンマ処理と逆の特性の演算（デガンマ処理）を行ってリニアデータに変換した後、リライティング処理部２０４により処理を行う構成とする。従って、本願発明は、撮像手段を有さない画像処理装置に適用することが可能であり、その場合、画像処理部１０４は、例えば、記憶媒体から読み出された画像データやネットワークなどを介して入力される画像データ等に対して、リライティング処理を行うことができる。
【００５０】
上記の通り第１の実施形態によれば、被写体が合焦していない場合にも、違和感の少ないリライティング処理を行うことができる。
【００５１】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第２の実施形態では、リライティング処理部２０４において、第１の実施形態とは異なる処理を行う。図９は、第２の実施形態におけるリライティング処理部２０４の構成を示すブロック図である。第２の実施形態では、第１の実施形態で説明した図５に示す構成に対し、法線平滑化部９０１を追加し、合焦度算出部２０３で算出した合焦度に基づいて鏡面反射成分を制御する構成ではなく、合焦度に応じて取得した法線情報を制御する。なお、上記以外の構成及び制御は、第１の実施形態で説明したものと同様であるため、ここでは説明を省略する。
【００５２】
法線平滑化部９０１は、合焦度算出部２０３から入力された被写体の合焦度に合わせた平滑化を行い、平滑化済み法線情報を、仮想光拡散反射成分算出部５０２と、仮想光鏡面反射成分算出部５０３に出力する。平滑化の方法としては、法線平滑化部９０１は、被写体の合焦度に応じて、メモリ１０９に格納されている平滑化フィルタを選択し、法線取得部５０１から入力された法線情報に適用する。平滑化フィルタは撮影時のレンズによって異なり、メモリ１０９にはレンズ毎に合焦度に応じたフィルタが格納されている。法線平滑化部９０１は撮影時のレンズ情報を参照し、メモリ１０９に格納された撮影時のレンズにおける、被写体の合焦度に応じたフィルタを選択し、選択したフィルタを用いて平滑化を行う。
【００５３】
第２の実施形態においても、第１の実施形態と同様にメモリ１０９に記憶されている法線情報を用いるが、この法線情報はフォーカスが合い、被写体の凹凸がはっきりしている状態における情報である。従って、フォーカスがずれて被写体の凹凸がぼけるほど、より滑らかな（より平滑化の度合いが高い）、凹凸の無い表面に対応した法線情報となるような平滑化フィルタを選択する。また、レンズによってぼけ具合が異なるため、本実施形態では、レンズ毎に合焦度に応じた平滑化フィルタを選択している。なお、レンズ毎では無く、合焦度のみに応じて平滑化フィルタを選択するようにしても良く、その場合であっても、平滑化を行わない場合よりもぼけ具合に応じた法線情報にすることができると共に、メモリ１０９の記憶領域を節約することができる。
【００５４】
このようにして平滑化された法線情報を用いて、仮想光拡散反射成分算出部５０２及び仮想光鏡面反射成分算出部５０３により、仮想光拡散反射成分と、仮想光鏡面反射成分とを算出して、画像データに付加する。
【００５５】
上記構成により、仮想光拡散反射成分にも合焦度を反映させることが可能になり、被写体が合焦していない場合にも、より違和感の少ないリライティング処理を行うことが可能になる。
【００５６】
＜他の実施形態＞
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５７】
１００：デジタルカメラ、１０１：光学系、１０２：撮像素子１０２、１０４：画像処理部、１０５：測距部、１０６：顔検出部、１０８：制御部、１０９：メモリ、１１０：操作部、２０３：合焦度算出部、２０４：リライティング処理部、５００：仮想光源設定部、５０１：法線取得部、５０２：仮想光拡散反射成分算出部、５０３：仮想光鏡面反射成分算出部、５０４：仮想光付加処理部
【図１】
2019149719.tif 000005
【図２】
2019149719.tif 000006
【図３】
2019149719.tif 000007
【図４】
2019149719.tif 000008
【図５】
2019149719.tif 000009
【図６】
2019149719.tif 000010
【図７】
2019149719.tif 000011
【図８】
2019149719.tif 000012
【図９】
2019149719.tif 000013