(57)【要約】【課題】リライティング処理に用いる仮想光源の位置を柔軟に制御して被写体の陰影を補正可能な画像処理装置およびその制御方法を提供する。【解決手段】陰影状態検出部２０７は、画像中の被写体領域について、陰影の状態を表す評価値を算出する。そして、仮想光源制御部２０８が、評価値に基づいて仮想光源を設定し、仮想光源が照射する仮想光の影響を仮想光付加部２０９で画像に反映させる。【選択図】図２
2019037004.tif 000002
【特許請求の範囲】
【請求項１】
画像中の被写体領域について、陰影の状態を表す評価値を算出する算出手段と、
前記評価値に基づいて仮想光源を設定する設定手段と、
前記仮想光源が照射する仮想光の影響を前記画像に反映させる補正手段と、
を有することを特徴とする画像処理装置。
【請求項２】
画像処理装置の制御方法であって、
前記画像処理装置の算出手段が、画像中の被写体領域について、陰影の状態を表す評価値を算出する算出工程と、
前記画像処理装置の設定手段が、前記評価値に基づいて仮想光源を設定する設定工程と、
前記画像処理装置の補正手段が、前記仮想光源が照射する仮想光の影響を前記画像に反映させる補正工程と、
を有することを特徴とする画像処理装置の制御方法。
【請求項３】
コンピュータを、請求項１に記載の画像処理装置が有する各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、その制御方法、プログラムに関し、特には画像の明るさを補正する技術に関する。
【背景技術】
【０００２】
従来、画像中の被写体に対して、仮想光の効果を適用することで、被写体の暗い部分の明るさを補正する技術が知られている（特許文献１）。これにより、環境光によって生じた被写体の陰影を、撮影後に調整することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−１３５９９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
被写体の陰影は、被写体の３次元形状と、被写体を照射する光の方向とによって決まる。また、被写体を照射する光の方向は、仮想光源と被写体との相対的な位置関係によって決まる。そのため、仮想光によって被写体の陰影を補正するリライティング処理では、仮想光源の位置を適切に決定する必要がある。しかし、特許文献１に記載された技術は、被写体の陰を低減させることを目的として環境光とは逆方向に被写体を照射するものであり、リライティング処理で実現可能な陰影の調整内容が制限される。
【０００５】
本発明はこのような従来技術の課題に鑑みてなされたものであり、リライティング処理に用いる仮想光源の位置を柔軟に制御して被写体の陰影を補正可能な画像処理装置およびその制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述の目的は、画像中の被写体領域について、陰影の状態を表す評価値を算出する算出手段と、評価値に基づいて仮想光源を設定する設定手段と、仮想光源が照射する仮想光の影響を画像に反映させる補正手段と、を有することを特徴とする画像処理装置によって達成される。
【発明の効果】
【０００７】
本発明によれば、リライティング処理に用いる仮想光源の位置を柔軟に制御して被写体の陰影を補正可能な画像処理装置およびその制御方法を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明におけるデジタルカメラの構成を示すブロック図
【図２】本発明における画像処理部の構成を示すブロック図
【図３】（ａ）は本発明の第１の実施形態における陰影状態検出部の処理を示すフローチャート、（ｂ）は被写体および被写体領域の例を示す模式図
【図４】第１の実施形態における仮想光源制御部の処理を示すフローチャートである。
【図５】第１の実施形態における仮想光の照射方向の決定方法を説明するための模式図
【図６】第２の実施形態における被写体と仮想光源の関係を模式的に示す図
【図７】第２の実施形態における仮想光源制御部の処理を示すフローチャート
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の例示的な実施形態について詳細に説明する。
●（第１の実施形態）
図１は、本発明の第１の実施形態に係る画像処理装置の一例としてのデジタルカメラ１００の構成例を示すブロック図である。本発明は撮影された画像に適用する画像処理、より具体的にはリライティング処理の方法に特徴を有する。従って、撮影や記録に関する構成は必須では無い。
【００１０】
図１において、レンズ群１０１は、フォーカスレンズを含むズームレンズである。絞り機能を備えるシャッター１０２が、レンズ群１０１と撮像部１０３との間に設けられている。撮像部１０３は、レンズ群１０１によって撮像面に形成される光学像を画素単位の電気信号に変換するＣＣＤ／ＣＭＯＳイメージセンサを代表とする撮像素子を有する。Ａ／Ｄ変換器１０４は、撮像部１０３が出力するアナログ信号をデジタル信号（画像データ）に変換する。
【００１１】
画像処理部１０５は、Ａ／Ｄ変換器１０４から出力される画像データに対し、色補間（デモザイク）、ホワイトバランス調整、γ補正などの各種画像処理を行う。画像処理部１０５はまた、撮影された画像に対するリライティング処理を行う。画像メモリ１０６は画像データを一時的に記憶する。メモリ制御部１０７は、画像メモリ１０６の読み書きを制御する。Ｄ／Ａ変換器１０８は、画像データをアナログ信号に変換する。表示部１０９はＬＣＤや有機ＥＬディスプレイ等の表示装置を有し、各種ＧＵＩやライブビュー画像、記録媒体１１２から読み出して再生した画像などを表示する。コーデック部１１０は、画像メモリ１０６に記憶されている画像データを記録媒体に記録するために予め定められた方法で符号化したり、画像ファイルに含まれる符号化画像データを例えば表示のために復号したりする。
【００１２】
インタフェース（Ｉ／Ｆ）１１１は、例えば半導体メモリカードやカード型ハードディスクなどの着脱可能な記録媒体１１２を、デジタルカメラ１００と機械的および電気的に接続する。システム制御部５０は例えばＣＰＵやＭＰＵなどのプログラマブルなプロセッサであってよい。システム制御部５０は、例えば不揮発性メモリ１２１や内蔵する不揮発性メモリに記録されたプログラムを実行して必要なブロックや回路を制御することにより、デジタルカメラ１００の機能を実現する。
【００１３】
顔検出部１１３は、撮影された画像に含まれる顔領域を検出し、検出された顔領域のそれぞれについて、位置、大きさ、信頼度などの顔情報を求める。なお、顔検出部１１３はニューラルネットワークに代表される学習を用いた手法、目、鼻、口などの特徴部位を、画像領域からテンプレートマッチングを用い探し出し類似度が高ければ顔とみなす手法など、任意の方法を用いて顔領域を検出することができる。
【００１４】
操作部１２０は、ユーザがデジタルカメラ１００に各種の指示を入力するためのボタンやスイッチなどの入力デバイスをまとめて記載したものである。表示部１０９がタッチディスプレイである場合、タッチパネルは操作部１２０に含まれる。また、音声入力や視線入力など、非接触で指示を入力するタイプの入力デバイスが操作部１２０に含まれてもよい。
【００１５】
不揮発性メモリ１２１は電気的に消去・記録可能な、例えばＥＥＰＲＯＭ等であってよい。不揮発性メモリ１２１は、各種の設定値、ＧＵＩデータをはじめ、システム制御部５０がＭＰＵやＣＰＵである場合には、システム制御部５０が実行するためのプログラムが記録される。
システムメモリ１２２は、システム制御部５０の動作用の定数、変数、不揮発性メモリ１２１から読みだしたプログラム等を展開するために用いる。
【００１６】
次に、デジタルカメラ１００における撮影時の動作について説明する。
例えば撮像部１０３は、シャッター１０２が開いている際にレンズ群１０１が撮像面に形成する被写体像を撮像素子によって光電変換し、アナログ画像信号としてＡ／Ｄ変換器１０４へ出力する。Ａ／Ｄ変換器１０４は撮像部１０３から出力されるアナログ画像信号をデジタル画像信号（画像データ）に変換し画像処理部１０５に出力する。
【００１７】
画像処理部１０５は、Ａ／Ｄ変換器１０４からの画像データ、又は、メモリ制御部１０７からの画像データに対し、同時化処理（デモザイク処理）、γ補正などの各種画像処理を行う。
【００１８】
また、画像処理部１０５では、撮影で得られた画像データを用いて輝度やコントラストなどに関する所定の演算処理を行い、得られた演算結果に基づいてシステム制御部５０が焦点調節や露光制御を行う。焦点検出や露出制御に顔検出部１１３の検出結果を考慮してもよい。このように、本実施形態のデジタルカメラ１００では、ＴＴＬ（スルー・ザ・レンズ）方式のＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理を行う。画像処理部１０５ではさらに、撮影で得られた画像データを用いたオートホワイトバランス（ＡＷＢ）調整も行う。
【００１９】
画像処理部１０５から出力された画像データは、メモリ制御部１０７を介して画像メモリ１０６に書き込まれる。画像メモリ１０６は、撮像部１０３から出力された画像データや、表示部１０９に表示するための画像データを格納する。
【００２０】
また、Ｄ／Ａ変換器１０８は、画像メモリ１０６に格納されている画像表示用のデータをアナログ信号に変換して表示部１０９に供給する。表示部１０９は、ＬＣＤ等の表示装置に、Ｄ／Ａ変換器１０８からのアナログ信号に応じた表示を行う。
【００２１】
コーデック部１１０は、画像メモリ１０６に記録された画像データをＪＰＥＧやＭＰＥＧなどの規格に基づき符号化する。システム制御部５０は符号化した画像データに対して予め定められたヘッダなどを付与して画像ファイルを形成し、インタフェース１１１を介して記録媒体１１２に記録する。
【００２２】
なお、現在のデジタルカメラでは、撮影スタンバイ状態においては動画撮影を行い、撮影された動画を表示部１０９に表示し続けることにより表示部１０９を電子ビューファインダ（ＥＶＦ）として機能させるのが一般的である。この場合、シャッター１０２は開いた状態とし、撮像部１０３のいわゆる電子シャッターを用いて例えば３０フレーム／秒の撮影を行う。
【００２３】
そして、操作部１２０に含まれるシャッターボタンが半押しされると上述のＡＦ，ＡＥ制御が行われ、全押しされると本撮影により記録用の静止画撮影が実行され、記録媒体１１２に記録される。また、動画撮影ボタンなどにより動画撮影が指示された場合は、記録媒体１１２への動画記録を開始する。
【００２４】
図２は、画像処理部１０５の、リライティング処理に関係する機能構成例を示すブロック図である。なお、図２に示す機能ブロックの１つ以上は、マイクロプロセッサとソフトウェアの組み合わせよって実現されてもよいし、ＡＳＩＣ(Application Specific Integrated Circuit)やＰＬＤ(Programmable Logic Device)のようなハードウェアによって実現されてもよい。ＰＬＤにはＦＰＧＡ(Field-Programmable Gate Array）、ＰＬＡ(Programmable Logic Array)などが含まれる。
【００２５】
なお、リライティング処理は
・リライティング処理の実行が指定された状態で撮影された画像
・メニュー画面等からリライティング処理の実施が指示された、例えば記録媒体１１２に記録済の画像
に対して実施することができる。なお、リライティング処理において撮影時の情報が必要な場合、不揮発性メモリ１２１またはシステムメモリ１２２から読み出したり、画像ファイルのヘッダなどから取得したりするものとする。
【００２６】
リライティング処理部としての画像処理部１０５は、画像信号生成部２０１、ＷＢ増幅部２０２、ガンマ処理部２０３、デガンマ処理部２０４、仮想光付加部２０５、再ガンマ処理部２０６、陰影状態検出部２０７、仮想光源制御部２０８を有する。
【００２７】
図１のＡ／Ｄ変換器１０４から画像処理部１０５に入力された画像信号は、画像信号生成部２０１に入力される。画像信号生成部２０１は、画素あたり１色（Ｒ，Ｇ，Ｂのいずれか１つ）の情報を有する画像信号に同時化処理（デモザイク処理）を行い、各画素が３色（ＲＧＢ）の情報を有する画像信号を生成する。画像信号生成部２０１は、生成した画像信号をＷＢ増幅部２０２へ出力する。
【００２８】
ＷＢ増幅部２０２は、画像信号からホワイトバランスゲイン値を算出し、画像信号の色成分Ｒ，Ｇ，Ｂにホワイトバランスゲインを適用する。ＷＢ増幅部２０２は、ホワイトバランス調整後の画像信号Ｒ，Ｇ，Ｂをガンマ処理部２０３および陰影状態検出部２０７へ出力する。
【００２９】
陰影状態検出部２０７は、入力された画像信号Ｒ，Ｇ，Ｂに基づき、撮影時に被写体を照らしている環境光によって被写体領域に生じた陰影の状態を表す評価値を算出する。また、陰影状態検出部２０７は、環境光の照射方向を検出する。ここで、環境光とは、撮影時に被写体を照射した光源であり、太陽光や室内照明など、デジタルカメラ１００の制御対象外の光源と、内蔵および／または外部フラッシュなど、デジタルカメラ１００が制御する光源とを含む。陰影状態検出部２０７は、評価値と環境光の照射方向を陰影情報として、仮想光源制御部２０８へ出力する。陰影状態検出部２０７の動作の詳細については後述する。
【００３０】
仮想光源制御部２０８は、陰影情報に基づき、被写体をリライティングする仮想光の照射方向を決定し、仮想光源情報として仮想光付加部２０５へ出力する。仮想光の照射方向の決定方法の詳細については後述する。なお、本実施形態は、仮想光源の放射特性（点光源、線光源、面光源など）に依存しないため、仮想光の照射方向という表現を用いるが、例えば仮想光源が点光源であれば、仮想光の照射方向の延長線上に仮想点光源を配置することになる。従って、仮想光の照射方向の決定は、仮想点光源を配置する方向の決定と同義である。
【００３１】
一方、ガンマ処理部２０３は、画像信号Ｒ，Ｇ，Ｂにガンマ補正を適用し、補正後の画像信号Ｒ，Ｇ，Ｂを、デガンマ処理部２０４へ出力する。なお、リライティング処理を行わない撮影の場合、ガンマ処理部２０３は補正後の画像信号Ｒ，Ｇ，Ｂをメモリ制御部１０７を通じて画像メモリ１０６へ出力する。撮影画像にリライティング処理を適用するか否かは例えばユーザ設定に応じて決定されてよい。なお、ここでは撮影時にリライティング処理を行うものとして説明するが、記録後に記録媒体１１２から読み出した画像に対してリライティング処理を行うことも可能である。
【００３２】
デガンマ処理部２０４は、入力された画像信号Ｒ，Ｇ，Ｂに対し、デガンマ処理を行い、ガンマ補正前の画像信号Ｒ，Ｇ，Ｂを生成し、仮想光付加部２０５へ出力する。なお、リライティング処理を行う撮影の場合には、ＷＢ増幅部２０２から仮想光付加部２０５へ画像信号Ｒ，Ｇ，Ｂを直接入力するように構成してもよい。
【００３３】
仮想光付加部２０５では、仮想光源情報に基づいて仮想光源を配置し、入力された画像信号Ｒ，Ｇ，Ｂに対して仮想光の影響を反映させるリライティング処理を行う。仮想光付加部２０５は、リライティング処理後の画像信号Ｒ，Ｇ，Ｂを、再ガンマ処理部２０６へ出力する。再ガンマ処理部２０６では、入力されたリライティング後の画像信号に対して、ガンマ処理部２０３と同様のガンマ補正を適用し、メモリ制御部１０７を通じて画像メモリ１０６へ出力する。
【００３４】
次に、陰影状態検出部２０７が、環境光によって生じている被写体の陰影状態を表す評価値の算出と、環境光の照射方向の検出とを行う処理の詳細について、図３（ａ）に示すフローチャートを用いて説明する。
Ｓ３０１で陰影状態検出部２０７は、ＷＢ増幅部２０２から入力された画像信号Ｒ，Ｇ，Ｂのうち、リライティング処理の対象とする被写体領域に対応する画像信号を抽出する。例えば、顔検出部１１３で検出した人物の顔領域をリライティング処理の対象とする場合、陰影状態検出部２０７は顔検出部１１３から顔情報を取得し、対応する顔領域の画像信号Ｒ，Ｇ，Ｂを抽出する。リライティング処理の対象とする被写体領域に特に制限はなく、顔検出部１１３のように画像の特徴から自動検出される領域であってもよいし、ユーザが操作部１２０を通じて指定した領域であってもよい。以下では一例として、顔領域をリライティング処理の対象とする場合について説明する。
【００３５】
図３（ｂ）は、人物被写体と顔領域の例を示し、斜線は陰になっている領域を表している。そして、検出された顔領域４０１は、陰の領域を含んでいる。
Ｓ３０２で陰影状態検出部２０７は、抽出した顔領域４０１に含まれる画像信号Ｒ，Ｇ，Ｂに基づいて、顔領域の明るさ情報を算出する。具体的には、図３（ｂ）に示すように顔領域４０１を複数（例えば、縦８×横８＝６４個）のブロックに分割し、ブロックごとに画素の輝度平均値と、色平均値を算出する。なお、Ｒ，Ｇ，Ｂの信号値から輝度信号値および色信号値を求めるには、例えばＲＧＢ→ＹＵＶ（ＹＣｂＣｒ）やＲＧＢ→ＨＳＬなどの色空間変換処理を行えばよい。
【００３６】
Ｓ３０３で陰影状態検出部２０７は、リライティング処理の対象とする領域内の被写体の陰影状態を表す評価値として、色の近いブロック間のコントラスト値を算出する。例えば、陰影状態検出部２０７は、色平均値に基づいて、類似色を有するブロックをグループ化し、グループ内で平均輝度値が最大のブロック（ブロック４０２とする）と最小のブロック（ブロック４０３とする）を検出する。そして、最大平均輝度値と最小平均輝度値の比をコントラスト値として算出する。なお、類似色の判定条件については予め定めておくことができる。また、リライティング処理を行う領域の色が予め想定できる場合には、想定される色信号の範囲を予め定めておき、その範囲に該当する色信号値を有するブロックについてコントラスト値を算出するように構成してもよい。例えば顔領域に対してリライティング処理を行う場合、肌の色として想定される色信号の範囲を予め定めておき、その範囲に該当する色信号値を有するブロックについてコントラスト値を算出することができる。なお、複数のグループについてコントラスト値を算出した場合、陰影状態検出部２０７は１つを代表値として選択して出力してもよいし、全てを出力してもよい。代表値は例えば最大のコントラスト値であってよい。
【００３７】
Ｓ３０４で陰影状態検出部２０７は、環境光の照射方向を推定する。陰影状態検出部２０７は、公知の種々の方法を用いて環境光の照射方向を推定する。例えば、被写体の中で正反射が生じている（もっとも明るい）領域を検出して、その領域の法線ベクトルに対して視点位置と対称の位置からその領域に向かう方向を環境光の照射方向として推定してもよい。また、被写体領域が人物の顔領域であれば、鼻などの器官を検出し、その陰(shade)や影(shadow)の方向と逆の方向を環境光の照射方向と推定してもよい。陰影状態検出部２０７は、算出したコントラスト値と、推定した環境光の方向情報とを、陰影情報として仮想光源制御部２０８へ出力する。
【００３８】
次に、仮想光源制御部２０８が、陰影情報と環境光の照射方向の情報とに基づいて、仮想光の照射方向を決定する仮想光源制御処理について説明する。
図５は、リライティング処理を適用する被写体領域と、環境光および仮想光の照射方向の関係を、鉛直上方から俯瞰した様式で模式的に示す図である。ここでは、図３（ｂ）と同様、顔領域４０１にリライティング処理を適用するものとする。
【００３９】
図５において、リライティング処理を適用する被写体領域である顔領域４０１は、簡単のため平面で表している。また、法線ベクトル６０２は、顔領域４０１の向きを表す代表的な法線ベクトルである。被写体領域の向きを表す法線ベクトルは、公知の方法を用いて算出することができる。例えば、被写体領域に含まれる被写体の距離情報から被写体の立体形状を推定し、法線ベクトルを算出することができる。被写体の距離情報は、例えば焦点検出処理において合焦距離を変えながら取得した複数の画像から、合焦部分と合焦距離との関係に基づいて取得したり、測距センサを用いて取得した距離画像から取得したりすることができるが、これらに限定されない。
【００４０】
また、被写体領域が人物の顔領域のように、向きによって特徴部位の大きさ、形状や、特徴部位間の位置関係が変化する特徴部位を有する領域の場合、特徴部位の検出結果に基づいて被写体の向きを推定し、代表的な法線ベクトルを算出することができる。例えば顔領域の場合、顔の輪郭や、目や鼻などの器官の検出結果を特徴部位として用いて顔の向きを推定し、代表的な法線ベクトルを算出することができる。
【００４１】
また、被写体の向きを表す法線ベクトルは、被写体領域を分割した領域ごとに算出した法線ベクトルを平均化することで算出してもよい。または、リライティングの対象とする被写体領域の中心または重心位置での法線ベクトルを、被写体の向きを表す代表的な法線ベクトルとして用いてもよい。
【００４２】
環境光６０３が、代表的な法線ベクトル６０２と顔領域４０１とが交わる座標（画素）６１０を、陰影状態検出部２０７が推定した方向から照射している。６０４ａは仮想点光源６０４ａ’から、６０４ｂは仮想点光源６０４ｂ’から、座標６１０を照射する仮想光のイメージである。仮想点光源６０４ａ’と６０４ｂ’は、法線ベクトル６０２に対して対称的な位置に配置されている。ここで、法線ベクトルと照射方向とがなす角度が、反時計回りに正の値を取るものとすると、仮想点光源６０４ａ’と仮想点光源６０４ｂ’が法線ベクトルとなす角度は、絶対値が等しく、符号が逆となる。なお、仮想点光源６０４ａ’および６０４ｂ’と、顔領域４０１との距離は、適宜定めればよい。
【００４３】
次に、図４のフローチャートを用いて、仮想光源制御部２０８の処理の詳細について説明する。
Ｓ５０１で仮想光源制御部２０８は、リライティング処理によって実現する、コントラスト値の目標値を例えばシステム制御部５０から取得する。目標値は例えば不揮発性メモリ１２１に予め設定しておくことができる。なお、目標値はリライティング処理を行う被写体領域の種類に応じて異なる値が設定されていてもよい。
【００４４】
Ｓ５０２で仮想光源制御部２０８は、撮像画像から陰影状態検出部２０７が検出した、環境光によって生じたコントラスト値を取得する。
Ｓ５０３で仮想光源制御部２０８は、検出されたコントラスト値と目標値とを比較し、検出値が目標値より高い場合はＳ５０４へ、検出値が目標値以下の場合はＳ５０５へ、それぞれ処理を進める。
【００４５】
Ｓ５０４へ進むのは、環境光による被写体領域のコントラストが高いと判定された場合である。このため、Ｓ５０４で仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの符号が、環境光の照射方向が法線ベクトル６０２となす角βの符号とは逆となるように、仮想光の照射方向を決定する。なお、角αは、仮想光源の座標と法線ベクトルの始点（法線ベクトルと被写体領域との交点）とを結ぶ直線と、法線ベクトルとがなす角とも言える。同様に、角βは、環境光源の座標と法線ベクトルの始点（法線ベクトルと被写体領域との交点）とを結ぶ直線と、法線ベクトルとがなす角とも言える。
【００４６】
図５の例であれば、仮想光６０４ｂの照射方向を、法線ベクトル６０２に対して例えば−４５度の方向（α＝−４５°）としたり、環境光と法線ベクトル６０２を挟んで対称となる方向（−β）としたりすることができる。ただし、これらは単なる例であり、被写体の陰の部分を仮想光によって明るく補正し、被写体領域のコントラストを下げることができれば、これらに限定されない。仮想光の照射方向を決定すると、仮想光源制御部２０８は処理をＳ５０８へ進める。
【００４７】
一方、Ｓ５０５へ進むのは、環境光による被写体領域のコントラストが低いと判定された場合である。そのため、仮想光源制御部２０８は、環境光と仮想光の照射範囲が重複するように仮想光源の配置を決定することで、コントラストを高める。
具体的には、Ｓ５０５で仮想光源制御部２０８は、検出されたコントラスト値が所定の下限閾値未満であるか否かを判定し、所定の下限閾値未満である場合はＳ５０６へ、所定の下限閾値以上の場合はＳ５０７へ、処理を進める。
【００４８】
Ｓ５０６へ進む場合は、環境光が被写体領域のほぼ正面から被写体領域をほぼ一様に照射していて、環境光による陰影がほとんど生じていない場合である。このような場合には、被写体の立体感に乏しいため、仮想光によるリライティング処理により被写体に自然な陰影を付加し、被写体の立体感を高めるようにする。従って、仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの符号が、環境光の照射方向が法線ベクトル６０２となす角βの同一符号となるように、仮想光の照射方向を決定する。特に、Ｓ５０６ではコントラストを大きく高めるため、仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの絶対値が、４５°を中心とした所定の範囲内となるように、仮想光の照射方向を決定する。これは、一般的な被写体に対して、法線ベクトル６０２に対して４５°の角度から照射すると、適切なコントラストとなる場合が多いことによる。具体的には、仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの絶対値が、４５°±１５°、好ましくは４５°±１０°、さらに好ましくは４５°±５°の範囲内で決定することができる。もちろん、α＝４５°の固定値としてもよい。仮想光の照射方向を決定すると、仮想光源制御部２０８は処理をＳ５０８へ進める。
【００４９】
Ｓ５０７へ進む場合は、環境光によってある程度被写体に陰影が生じているが、目標のコントラストは得られていない場合である。このような場合も、仮想光によるリライティング処理により被写体に自然な陰影を付加し、被写体の立体感を高めるようにする。従って、仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの符号が、環境光の照射方向が法線ベクトル６０２となす角βの同一符号となるように、仮想光の照射方向を決定する。ただし、環境光によってある程度のコントラストは得られているため、Ｓ５０６の場合と異なり、角αの範囲は制限されない。
【００５０】
しかし、リライティング処理の対象とならない他の領域における陰影との調和という観点から、環境光の照射方向を基準として仮想光の照射方向を決定することができる。この場合、仮想光源制御部２０８は、仮想光の照射方向が法線ベクトル６０２となす角αの絶対値が、｜β｜±１５°、好ましくは｜β｜±１０°、さらに好ましくは｜β｜±５°の範囲内で決定することができる。あるいは、α＝β、すなわち、環境光と同じ照射方向を仮想光の照射方向として決定してもよい。仮想光の照射方向を決定すると、仮想光源制御部２０８は処理をＳ５０８へ進める。
【００５１】
Ｓ５０８で仮想光源制御部２０８は、決定した仮想光の照射方向を、仮想光源情報として、仮想光付加部２０５へ出力する。なお、仮想光源制御部２０８は、仮想光源情報として、予め設定された、仮想光源の位置（被写体までの距離）の情報も仮想光付加部２０５へ出力してもよい。
【００５２】
次に、仮想光付加部２０５での、仮想光を反映させるリライティング処理について説明する。本実施形態では、仮想光付加部２０５は、仮想光によって照射された処理対象画素の出力ＲＧＢ値（Ｒｏｕｔ，Ｇｏｕｔ，Ｂｏｕｔ）を、以下の式に従って算出する。
Ｒｏｕｔ＝［Ｒｔ＋Ａ×cos(θ)×（１／Ｄ＾２）×Ｒｖ］／Ｍ
Ｇｏｕｔ＝［Ｇｔ＋Ａ×cos(θ)×（１／Ｄ＾２）×Ｇｖ］／Ｍ
Ｂｏｕｔ＝［Ｂｔ＋Ａ×cos(θ)×（１／Ｄ＾２）×Ｂｖ］／Ｍ
ここで、（Ｒｔ，Ｇｔ，Ｂｔ）は処理対象の画素値、Ａは仮想光源の強度を表す所定の定数、Ｄは仮想光源と、リライティング対象領域内の被写体との距離、（Ｒｖ，Ｇｖ，Ｂｖ）は光源反射色である。また、Ｍはリライティング後の出力ＲＧＢ値を正規化するための予め設定された定数、角度θは、仮想光源制御部２０８が決定した仮想光の照射方向と、処理対象画素の被写体の法線ベクトルとがなす角度である。ここで、角度θは、リライティング対象領域の各画素に対して被写体の法線ベクトルを算出し、法線ベクトルの方向と仮想光の照射方向とから算出することができる。
【００５３】
あるいは、図３（ｂ）に示したようにリライティング対象の被写体領域を複数のブロックに分割し、ブロックごとに法線ベクトルを算出して、ブロック単位で角度θを算出するようにしてもよい。または、リライティング対象の領域が人物の顔領域である場合のように、対象領域に含まれる被写体の３次元形状が予め想定される場合は、対象画素の領域内における位置から画素に対応する被写体の法線ベクトルを推定し、角度θを算出してもよい。
【００５４】
また、光源反射色（Ｒｖ，Ｇｖ，Ｂｖ）は、仮想光が被写体表面で反射した時の色を表し、予め設定された仮想光源色と、処理対象の画素の色から推定することができる。また、仮想光源の強度Ａは、コントラスト値の検出値と目標値との差分に応じて決定すればよい。従って、コントラスト値の検出値がコントラスト下限閾値未満の場合と、コントラスト下限閾値以上の場合とでは、前者の方が仮想光源の強度Ａが大きく決定される。コントラスト値の検出値と目標値との差分と強度Ａとの具体的な関係については、予め定めておくことができる。
【００５５】
以上説明したように、本実施形態ではリライティング処理の対象とする被写体領域について陰影の状態を表す評価値を算出し、評価値が目標値に近づくように仮想光の照射方向を決定する。具体的には、評価値が目標値より低い場合には環境光による陰影を強めるように、評価値が目標値より高い場合には環境光による陰影を弱めるように、仮想光の照射方向を決定する。そのため、環境光による陰影を弱めるリライティング処理だけでなく、強めるリライティング処理も実現できる。さらに、陰影の少なさに応じて異なる方向を基準として照射方向を決定するため、効果的に陰影を増やすことを重視した調整や、環境光との調和を重視した調整を実現することができる。
【００５６】
なお、本実施形態ではリライティング処理の対象領域の陰影状態を表す評価値として、コントラストの情報を用いる場合について説明したが、他の評価値を用いることもできる。例えば、環境光によって生じた被写体の陰の領域を検出し、その領域の境界の特性を表す情報を陰影の状態を表す評価値として用いてもよい。具体的には、被写体の陰の領域の境界近傍における明るさの勾配を算出し、勾配が所定の目標より高い（低い）場合は、環境光による陰影を弱める（強める）ように、仮想光の照射方向を決定することができる。これにより、被写体の陰の境目がくっきりとしている場合には被写体の陰の領域の境界が目立たなくし、被写体の陰がぼんやりとしている場合には被写体の陰を強調するようなリライティング処理が可能であり、好ましい陰影の画像を得ることができる。
【００５７】
また、被写体領域中の陰の面積を算出し、その結果を被写体の陰影の状態を表す評価値として用いてもよい。具体的には、被写体領域中に占める陰の領域の割合を算出し、割合が所定の目標より高い場合は、環境光による陰影を弱めるように、仮想光の照射方向を決定することができる。また、割合が所定の目標より低い場合、仮想光源制御部２０８は、被写体領域の輝度を所定量低減して陰の面積（平均輝度値が予め定められた閾値以下である領域の面積）を増やす。そして、角αと角βの符号が同じで、角αの絶対値が角βの絶対値以上となるように仮想光の照射方向を決定することができる。これにより、被写体領域に陰が多い場合には陰の面積を減らし、被写体領域に陰が少ない場合には陰の面積を増やすようなリライティング処理が可能であり、好ましい陰影の画像を得ることができる。
【００５８】
また、被写体領域内の画素の輝度ヒストグラムを算出し、その度数分布の偏りに応じて、仮想光の照射方向を決定してもよい。具体的には、所定の閾値未満の輝度値範囲に対応する度数の合計を評価値として用い、評価値が所定の目標より高い場合は、環境光による陰影を弱めるように、仮想光の照射方向を決定することができる。また、評価値が所定の目標より低い場合、仮想光源制御部２０８は、被写体領域の輝度を所定量低減するとともに、角αと角βの符号が同じで、角αの絶対値が角βの絶対値以上となるように仮想光の照射方向を決定することができる。
【００５９】
また、本実施形態では、陰影の状態を表す評価値の目標値を予め定めておくものとして説明したが、目標値を動的に設定してもよい。例えば、画像の撮影時の撮影モードや、カメラパラメータに応じた目標値を設定してもよい。カメラパラメータに基づく目標値の動的設定の例としては、画像の記録時やガンマ処理部２０３で用いられたガンマカーブの特性に応じた目標値の設定がある。例えば、ガンマカーブの特性（形状）がコントラストを強く表現する特性であれば目標値を高く、ガンマカーブの特性（形状）がコントラストを弱く表現する特性であれば目標値を低く設定するようにすることができる。
【００６０】
また、リライティング処理の対象領域の背後、又は、周囲に位置する背景被写体のコントラストに応じて、目標値を設定するようにしてもよい。具体的には、背景被写体のコントラストが高い（低い）場合は目標値も高く（低く）設定することで、リライティング処理の対象とする被写体のコントラストを、周囲の被写体のコントラストと近づけることができる。これにより、リライティング処理による不自然さを抑制することができる
【００６１】
また、本実施形態では、評価値と目標値との比較結果に応じて仮想光の照射方向を決定する構成について説明した。しかし、被写体の陰影情報に基づいて仮想光の照射方向を決定する方法であれば、他の方法を用いても構わない。例えば、被写体領域のコントラスト値が所定の閾値以上（未満）であれば仮想光により環境光で得られた陰を弱める（強める）ように決定することができる。このようにすることで、評価値の目標値を定めない場合でも、リライティング処理を制御することができる。または、評価値と目標値との差分が、所定の閾値以下である場合には、リライティング処理を行わないよう制御してもよい。
【００６２】
また、リライティング処理の対象としない被写体に対しても、明るさの補正処理を行うようにしてもよい。具体的には、リライティング処理の対象とする被写体のリライティング後のコントラスト値を算出し、リライティング処理の対象としない被写体のコントラストが、その値に近づくよう明るさを補正する。このようにすることで、リライティング処理の対象となる被写体と、対象とならない被写体との間で生ずる違和感を低減することが可能となる。リライティング処理の対象外の被写体については、画素の明るさを一律に調整するようにしてよい。
【００６３】
また、本実施形態では、仮想光の照射方向を、リライティング処理の対象領域の代表的な法線ベクトルと仮想光の方向とが成す角度によって決定する構成を説明したが、他の方法で決定してもよい。例えば、リライティング処理の対象領域内の被写体に対して上下左右のどちらから照射するかを決定するようにしてもよい。
【００６４】
また、本実施形態では、リライティング処理の対象領域が１つの場合を説明したが、複数あってもよい。例えば、顔検出部１１３で複数の顔領域が検出された場合、個々の顔領域をリライティング処理の対象領域としてもよい。この場合、顔領域内の被写体の向きは個々に異なる可能性があるため、上述した陰影状態検出部２０７、仮想光源制御部２０８、および仮想光付加部２０５の処理を、個々の顔領域について実施する。ただし、陰影状態を表す評価値の種類と目標値は、全部の顔領域について共通とする。これによって、リライティング処理の被写体領域が複数ある場合でも、それぞれの陰影の状態を好ましい状態とするようリライティング処理することが可能となる。
【００６５】
または、複数の被写体が撮影された場合、その中で最も主要な被写体の陰影の状態を基準に仮想光源の位置を決め、他の被写体に対しても同一の位置の仮想光源を用いてリライティングするように制御してもよい。このようにすることで、同じ環境の中にいる被写体が、互いに異なる方向から照明されるような不自然さを防止することが可能となる。
【００６６】
また、本実施形態では、仮想光源を点光源として説明したが、仮想光源の特性は本発明に直接影響せず、他の特性の光源としてもよい。例えば、平行光を照射する仮想光源を用いてもよい。この場合、仮想光の照射方向が平行光の照射方向となる。
【００６７】
また、上述の説明においては簡単のために、法線ベクトルならびに環境光、仮想光の照射方向等を水平面内における２次元的な観点で説明した。しかし、実際にはこれらは３次元空間内のベクトルならびに方向として処理を行う。
【００６８】
●（第２の実施形態）
次に、図６および図７を参照して、本発明の第２の実施形態について説明する。第１の実施形態では、リライティング処理の対象とする領域内の被写体の陰影状態を表す評価値と環境光の照射方向とに基づいて、仮想光の照射方向を決定したが、本実施形態では、より詳細に仮想光の照射方向を決定する。
【００６９】
本実施形態も、第１の実施形態で説明したデジタルカメラ１００および画像処理部１０５の構成を用いて実施可能である。そのため、第１の実施形態で説明した事項の説明は省略し、陰影状態検出部２０７、仮想光源制御部２０８、および仮想光付加部２０５の動作について説明する。
【００７０】
図６（ａ）は、第２の実施形態における被写体７００と、リライティング処理の対象となる画像中の被写体領域７０１とを模式的に示している。
陰影状態検出部２０７は、被写体領域７０１を複数（縦８×横８＝６４個）のブロックに分割し、ブロックごとに画素の輝度平均値を算出する。
また、本実施形態では、陰影状態検出部２０７はさらに、被写体領域７０１に占める陰の領域の面積の割合（陰割合）も算出する。具体的には、陰影状態検出部２０７は、（平均輝度値が予め定められた閾値以下であるブロックの数）／（ブロック総数）として陰割合を算出する。さらに陰影状態検出部２０７は、ブロックごとに被写体の法線ベクトルの方向を算出する。
【００７１】
図６（ｂ）は、図６（ａ）のブロックＢ１〜Ｂ８について算出した法線ベクトル７０２の例を、被写体７００のＡ−Ａ水平断面形状とともに模式的に示している。第１の実施形態では簡単のため、被写体表面の全体を１平面とみなして説明したが、本実施形態では、被写体表面を分割したブロック単位の平面として扱う点が異なる。
陰影状態検出部２０７は、算出したブロックごとの法線ベクトルの情報と、リライティング処理の対象とする領域内の被写体の陰影状態を表す評価値としての陰割合とを、仮想光源制御部２０８へ出力する。
【００７２】
次に、図７に示すフローチャートを用いて、第２の実施形態における仮想光源制御部２０８による仮想光源制御処理について説明する。
Ｓ８０１で仮想光源制御部２０８は、リライティング処理により実現する、被写体の陰影状態の目標値として、目標陰割合を例えばシステム制御部５０から取得する。
【００７３】
Ｓ８０２で仮想光源制御部２０８は、撮影画像から陰影状態検出部２０７が算出した、被写体領域７０１のブロックごとの法線ベクトルの情報と、陰割合とを取得する。
Ｓ８０３で仮想光源制御部２０８は、陰割合を目標値と比較し、その差が所定の閾値範囲内であるか否か（すなわち、陰割合が目標範囲内であるか否か）を判定する。仮想光源制御部２０８は目標範囲内の陰割合が得られていればリライティング処理が不要であると判断して処理を終了し、画像を再ガンマ処理部２０６へ出力する。目標範囲内の陰割合が得られていない場合には処理をＳ８０４へ進める。
【００７４】
Ｓ８０４で仮想光源制御部２０８は、陰割合が目標範囲の上限値を超えているか否かを判定し、超えていれば処理をＳ８０５へ進め、超えていなければ（すなわち、目標割合の下限値未満であれば）処理をＳ８０６へ進める。
【００７５】
Ｓ８０５で仮想光源制御部２０８は、現在の陰領域（平均輝度値が閾値以下のブロック）の一部に仮想光が照射されるように仮想光源の位置の初期値を設定し、処理をＳ８０８へ進める。仮想光源の位置は、リライティング処理の中心（図６（ｂ）の７０５、７０６に対応する）の座標と、その中心の点から仮想光源までの距離との２つの情報で規定するものとする。なお、仮想光が照射する範囲は、領域（ブロック）の法線ベクトルに対して９０°度を超える方向からの光は到達しないことを利用し、仮想光源の位置と、被写体領域の各ブロックの法線ベクトルの方向から判別することができる。
【００７６】
一方、Ｓ８０６で仮想光源制御部２０８は、まず、陰割合が目標範囲の上限を超えるまで被写体領域の輝度を低下させる（輝度を一定量低下させ、陰影状態検出部２０７で陰割合を算出する処理を、陰割合が目標範囲の上限を超えるまで繰り返す）。
そして、Ｓ８０７で仮想光源制御部２０８は、輝度を低下させたことによって増加した陰領域（陰領域に相当する輝度になった領域）の一部が仮想光で照射されるように仮想光源の位置の初期値を設定し、処理をＳ８０８へ進める。
【００７７】
Ｓ８０８で仮想光源制御部２０８は、設定した仮想光源の位置を仮想光付加部２０５に出力してリライティング処理を行い、陰影状態検出部２０７で処理後の被写体領域について陰割合を算出する。具体的には、仮想光付加部２０５は、仮想光と法線ベクトルがなす角が９０°以下の領域に含まれる画素（処理対象画素）の出力ＲＧＢ値（Ｒｏｕｔ，Ｇｏｕｔ，Ｂｏｕｔ）を、以下の式に従って算出する。
Ｒｏｕｔ＝［Ｒｔ＋Ａ×cos(θ＿ｎ)×（１／Ｄｎ＾２）×Ｒｖ］／Ｍ
Ｇｏｕｔ＝［Ｇｔ＋Ａ×cos(θ＿ｎ)×（１／Ｄｎ＾２）×Ｇｖ］／Ｍ
Ｂｏｕｔ＝［Ｂｔ＋Ａ×cos(θ＿ｎ)×（１／Ｄｎ＾２）×Ｂｖ］／Ｍ
【００７８】
ここで、（Ｒｔ，Ｇｔ，Ｂｔ）は処理対象の画素値、Ａは仮想光源の強度を表す所定の定数、Ｄは仮想光源と、リライティング対象領域内の被写体との距離、（Ｒｖ，Ｇｖ，Ｂｖ）は光源反射色である。また、Ｍはリライティング後の出力ＲＧＢ値を正規化するための予め設定された定数である。θ＿ｎは、ｎ番目（ｎは１から６４までの整数）のブロックの法線ベクトルと、法線ベクトルの始点（ブロックの中心）と仮想光源の位置とを結ぶ直線とがなす角度、Ｄｎは、ｎ番目のブロックの中心と仮想光源との距離である。
【００７９】
そして、仮想光源制御部２０８は、仮想光付加部２０５が算出した出力ＲＧＢ値を取得して陰影状態検出部２０７に出力し、リライティング処理後の陰割合を求めさせる。具体的には、陰影状態検出部２０７は、分割したブロックのそれぞれに対して平均輝度値を算出し、（平均輝度値が所定の閾値を下回るブロックの総数）／分割数（６４）としてリライティング処理後の陰割合を算出し、仮想光源制御部２０８に出力する。
【００８０】
Ｓ８０９で仮想光源制御部２０８は、算出したリライティング処理後の陰割合と目標値とから、Ｓ８０３と同様に判定を行う。仮想光源制御部２０８はリライティング処理後の陰割合が目標範囲内であれば処理を終了し、リライティング処理後の画像を再ガンマ処理部２０６へ出力する。一方、所定の閾値範囲外であれば仮想光源制御部２０８は処理をＳ８１１へ進める。
【００８１】
Ｓ８１１で仮想光源制御部２０８は、Ｓ８０４と同様に、リライティング後の陰割合が目標範囲の上限値を超えているか否かを判定し、超えていれば処理をＳ８１２へ進め、超えていなければ（すなわち、目標割合の下限値未満であれば）処理をＳ８１３へ進める。
【００８２】
Ｓ８１２で仮想光源制御部２０８は、陰領域のブロックの１部の平均輝度が増加するように仮想光源の位置を変更し、再設定して処理をＳ８０８に戻す。
Ｓ８１３で仮想光源制御部２０８は、陰領域のブロックの１部の平均輝度が減少するように仮想光源の位置を変更し、再設定して処理をＳ８０８に戻す。
【００８３】
ここで、Ｓ８１２とＳ８１３における仮想光源位置の変更方法について図６（ｂ）を用いて説明する。図６（ｂ）において７０７は、環境光源を模式的に示している。一般に、環境光源と仮想光源の特性が同一の場合、位置が同一であれば、仮想光と環境光の照射範囲が変わらないため、被写体領域の陰割合はリライティング処理の前後で変化しない。そして、環境光源と仮想光源とが離れるほど、リライティング処理による陰割合の低下は大きくなる。
【００８４】
例えば、図６（ｂ）の仮想光源７０３からの仮想光はブロックＢ１〜Ｂ６の範囲に到達するが、ブロックＢ７、Ｂ８には到達しない。また、仮想光源７０４からの仮想光はブロックＢ３〜Ｂ８の範囲に到達するが、ブロックＢ１、Ｂ２には到達しない。したがって、仮想光源制御部２０８は、仮想光源の位置を適切に決めることにより、リライティング処理で明るく補正される被写体領域を制御することができるので、被写体の陰領域の面積割合を所定の目標値に近づけることが可能となる。特に、ブロックＢ１、Ｂ２のように、リライティング前には陰となっていた領域に仮想光が当たるようになると、リライティング後の陰割合は大きく減少する。このため、目標とする陰割合の値との差が大きければ、低輝度ブロックに仮想光が照射されるように仮想光源の位置を設定することで、効率的に陰割合を目標値に近づけることができる。
【００８５】
一方、陰割合を増やす必要がある場合、Ｓ８０６での輝度低下によって増加した陰領域について、前回のリライティング時よりも仮想光が照射する範囲を狭くするか、仮想光の光量が少なくなるように仮想光源の位置を変更する。これは、リライティング処理の中心位置の変更と、リライティングの中心位置からの距離の調整の少なくとも一方を調整することで実現できる。
【００８６】
このようにして、仮想光源制御部２０８は、リライティング後の被写体の陰割合が所定の閾値範囲内になるまでＳ８０８以降の処理を繰り返す。ただし、この繰り返し回数に上限を設け、上限に達した場合には処理を終了するように構成してもよい。
【００８７】
なお、本実施形態では被写体の陰影の状態を表す評価値として、陰割合を用いた場合について説明したが、第１の実施形態で説明したコントラスト値を用いても同様の制御を行うことができる。この場合、コントラスト値を高めたい場合には陰領域でない領域を仮想光で照射するように、コントラスト値を下げたい場合には陰領域を仮想光で照射するように仮想光源の位置を決定すればよい。また、照射範囲をＳ８１２，Ｓ８１３で調整することで所望の目標値の範囲を実現することができる。
【００８８】
なお、本実施形態では、陰割合が所定の目標範囲内になるまで、仮想光源の位置の再設定を繰り返す構成を説明したが、再設定は必須ではない。例えば、検出した陰割合と目標値との差分の大きさに基づいて、仮想光源の位置を１回で決めるようにしてもよい。例えば目標値より陰割合が大きいほど、陰領域のうち仮想光の照射範囲に含まれる面積が大きくなるように仮想光源の位置を決定することができる。また、目標値より陰割合が小さいほど、輝度低下で生じた陰領域のうち、仮想光の照射範囲に含まれる面積が小さくなるように仮想光源の位置を決定することができる。このようにすることで、仮想光源の配置を何度も決め直すことなく、目標とする陰影の状態に近づけるようリライティング処理を行うことが可能となる。
【００８９】
このように、本実施形態によれば、第１の実施形態と同様の効果に加え、仮想光源の位置をよりきめ細く調整することができ、柔軟な陰影状態の調整を実現することが可能になる。
【００９０】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００９１】
５０…システム制御部、１０１…光学系、１０３…撮像部、１０５…画像処理部、１０６…画像メモリ、１０７…メモリ制御部、１０９…表示部、１１３…顔検出部、１２０…操作部、１２１…不揮発性メモリ、１２２…システムメモリ
【図１】
2019037004.tif 000003
【図２】
2019037004.tif 000004
【図３】
2019037004.tif 000005
【図４】
2019037004.tif 000006
【図５】
2019037004.tif 000007
【図６】
2019037004.tif 000008
【図７】
2019037004.tif 000009
【手続補正書】
【提出日】平成30年12月25日(2018.12.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像中の被写体領域について、陰影の状態を評価する評価手段と、
前記被写体領域の法線ベクトルを特定する特定手段と、
前記被写体領域に対して仮想的な光である仮想光を照射した効果を付与する補正手段と、
前記評価手段により評価された陰影の状態と、前記特定手段により特定された前記被写体領域の法線ベクトルとに基づき、前記補正手段により付与される前記仮想光を照射した効果の度合いを決定する決定手段とを有する画像処理装置。
【請求項２】
前記被写体領域として顔領域を検出する検出手段をさらに有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記検出手段は、前記被写体領域から特定の器官をさらに検出し、
前記特定手段は、前記検出手段により検出された特定の器官の情報に基づき、前記被写体領域の法線ベクトルを特定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記特定手段は、前記被写体領域を分割し、前記分割した領域ごとの法線ベクトルを特定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項５】
前記決定手段は、前記分割した領域ごとの法線ベクトルに基づき、各法線ベクトルを有する領域のそれぞれに対して前記補正手段により付与される前記仮想光を照射した効果の度合いを決定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記決定手段は、前記評価手段により評価された前記被写体領域の陰影の状態に基づき、前記仮想光の照射方向を決定することを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記仮想光を照射した効果の度合いは、前記仮想光の照射方向と前記法線ベクトルとがなす角度に応じて変化することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記被写体領域の被写体の距離情報を取得する取得手段をさらに有し、
前記特定手段は、前記取得手段により取得された距離情報に基づき前記法線ベクトルを特定することを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記取得手段は、焦点検出処理において合焦距離を変えながら複数の画像を取得し、前記複数の画像に基づき前記距離情報を取得することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記画像は、撮像素子を用いて得られた画像であることを特徴とする請求項１乃至９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記画像を取得するための撮像手段と、
前記撮像手段による撮像の前に、前記補正手段による補正を指示する指示手段とを有し、
前記補正手段は、前記指示手段により前記補正が指示された状態で前記撮像手段により撮像された画像に対し、前記仮想光を照射した効果を付与することを特徴とする請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
画像処理装置の制御方法であって、
評価手段が、画像中の被写体領域について、陰影の状態を評価する評価工程と、
特定手段が、前記被写体領域の法線ベクトルを特定する特定工程と、
決定手段が、前記評価工程において評価された陰影の状態と、前記特定工程において特定された前記被写体領域の法線ベクトルとに基づき、前記仮想光を照射した効果の度合いを決定する決定工程と、
補正手段が、前記決定工程で決定された効果の度合いに従って、前記被写体領域に対して仮想的な光である仮想光を照射した効果を付与する補正工程と、
を有する画像処理装置の制御方法。
【請求項１３】
コンピュータを、請求項１から１１のいずれか１項に記載の画像処理装置が有する各手段として機能させるためにプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
上述の目的は、画像中の被写体領域について、陰影の状態を評価する評価手段と、被写体領域の法線ベクトルを特定する特定手段と、被写体領域に対して仮想的な光である仮想光を照射した効果を付与する補正手段と、評価手段により評価された陰影の状態と、特定手段により特定された被写体領域の法線ベクトルとに基づき、補正手段により付与される仮想光を照射した効果の度合いを決定する決定手段とを有する画像処理装置によって達成される。