(57)【要約】【課題】画像の高輝度領域を補正した上で、立体感のある自然な画像を生成する。【解決手段】本発明の画像処理装置は画像に対応する法線情報を取得する第１の取得手段と、画像に含まれる被写体の高輝度領域に基づいて、実照明パラメータを推定する推定手段と、実照明パラメータに基づいて、仮想照明パラメータを設定する第１の設定手段と、法線情報と仮想照明パラメータに基づいて、画像に対して、ライティング処理を実行するライティング処理手段とを備える。【選択図】図４
2018163648.tif 000002
【特許請求の範囲】
【請求項１】
画像に対応する法線情報を取得する第１の取得手段と、
前記画像に含まれる被写体の高輝度領域に基づいて、実照明パラメータを推定する推定手段と、
前記実照明パラメータに基づいて、仮想照明パラメータを設定する第１の設定手段と、
前記法線情報と前記仮想照明パラメータに基づいて、前記画像に対して、ライティング処理を実行するライティング処理手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１の設定手段は、前記実照明パラメータが示す実照明の向きに基づいて、前記仮想照明パラメータを設定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の設定手段は、前記仮想照明パラメータが示す仮想照明の向きと前記実照明の向きとの成す角度が、所定の角度以上、大きくならないように、前記仮想照明の向きを設定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記推定手段は、前記高輝度領域に含まれる画素の前記法線情報に基づいて、前記実照明パラメータを推定することを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項５】
前記法線情報に対する信頼度を設定する第２の設定手段を備え、
前記推定手段は、前記信頼度により重み付けされた前記法線情報に基づいて、前記実照明パラメータを推定することを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項６】
前記推定手段は、前記画像を撮像した撮像装置における照明装置の位置に基づいて、前記実照明パラメータを推定することを特徴とする請求項１から３のいずれか１項に記載の画像処理装置。
【請求項７】
前記被写体の距離画像データを取得する第２の取得手段を備え、
前記第１の取得手段は、前記距離画像データに基づいて生成される被写体法線画像データと、顔情報と顔法線情報に基づいて生成される顔法線画像データを統合することで、前記法線情報を取得することを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
目標照明パラメータを取得する第３の取得手段を備え、
前記第１の設定手段は、前記実照明パラメータが示す実照明の向きと前記目標照明パラメータが示す目標照明の向きに基づいて、前記仮想照明パラメータを設定し、
前記目標照明パラメータは、前記被写体に、所望のハイライトを付与するように予め設定されることを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項９】
目標照明パラメータを取得する第３の取得手段と、
前記被写体に、優先的にハイライトを付与するハイライト候補領域を設定する第３の設定手段と
を備え、
前記第１の設定手段は、前記実照明パラメータが示す実照明の向きと前記目標照明パラメータが示す目標照明の向きに基づいて、前記仮想照明パラメータを設定し、
前記第３の取得手段は、前記ハイライト候補領域と前記法線情報に基づいて、前記目標照明パラメータを取得することを特徴とする請求項１から７のいずれか１項に記載の画像処理装置。
【請求項１０】
前記ライティング処理手段は、前記画像の撮像時の実照明による光沢を減算することで、前記ライティング処理を実行することを特徴とする請求項１から９のいずれか１項に記載の画像処理装置。
【請求項１１】
前記ライティング処理手段は、前記画像の撮像時の実照明による陰影を抑制し、仮想照明による陰影を付与することで、前記ライティング処理を実行することを特徴とする請求項１から１０のいずれか１項に記載の画像処理装置。
【請求項１２】
前記画像における被写体の高輝度領域を補正する輝度補正手段を有し、
前記ライティング処理手段は、前記法線情報と前記仮想照明パラメータに基づいて、前記輝度補正手段により補正された画像に対して、ライティング処理を実行することを特徴とする請求項１に記載の画像処理装置。
【請求項１３】
取得手段により、画像に対応する法線情報を取得する取得ステップと、
推定手段により、前記画像に含まれる被写体の高輝度領域に基づいて、実照明パラメータを推定する推定ステップと、
設定手段により、前記実照明パラメータに基づいて、仮想照明パラメータを設定する設定ステップと、
ライティング処理手段により、前記法線情報と前記仮想照明パラメータに基づいて、前記画像に対して、ライティング処理を実行するライティング処理ステップと
を含むことを特徴とする画像処理方法。
【請求項１４】
コンピュータを、請求項１から１２のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の高輝度領域を補正し、所望の光沢を付与する画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
屋外で写真や映像を撮像する場合、太陽光と被写体の位置関係によっては被写体の顔等で光が強く反射することになり、結果、テカリ（即ち、肌が光って見える状態）が発生することになる。また、屋内でストロボ等の照明機材を用いて撮像する場合も、照明光の強さや向きを適切に調整しないと、同様にテカリが発生することになり、詰まるところ、撮像画像は好ましくない写真写りとなる。
【０００３】
このような撮影画像を補正する方法として、例えば、特許文献１の画像補正装置が知られている。特許文献１の画像補正装置では、肌の色強度と高輝度強度に基づいてテカリ強度を算出し、テカリ強度が高いほど輝度値が下がるように、画像を補正している。但し、特許文献１に示されるような、テカリの強度に応じて輝度値を下げる処理では、テカリを抑制することで、被写体の顔領域における輝度値の変動が小さくなり、結果、補正された画像は平坦な印象を与えることになる。即ち、補正された画像において、立体感が損なわれることになる。
【０００４】
そこで、このように、立体感がない画像（即ち、立体感が損なわれた画像）に対して、例えば、陰影を付与することで、立体感を作り出す画像作成装置が開示されている（特許文献２）。この特許文献２の画像作成装置では、指定された領域に基づいて推定した仮想照明と、撮像画像に対応する３次元情報から陰影情報を生成し、撮像画像とブレンドすることで、立体感を作り出している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−３２７００９号公報
【特許文献２】特開２０１３−２３５５３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２の画像作成装置では、仮想照明を設定する上で、実光源の向きが考慮されていない。そのため、仮想照明の向きと実光源の向きとが大きく異なる場合には、光沢及び陰影が実光源で照らした場合と大きく異なる位置に付されることになり、不自然な画像が作成される可能性がある。
【０００７】
本発明は、前記従来の問題に鑑みてなされたものであって、その目的は、画像の高輝度領域を補正した上で、立体感のある自然な画像を生成することである。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の画像処理装置は、画像に対応する法線情報を取得する第１の取得手段と、前記画像に含まれる被写体の高輝度領域に基づいて、実照明パラメータを推定する推定手段と、前記実照明パラメータに基づいて、仮想照明パラメータを設定する第１の設定手段と、前記法線情報と前記仮想照明パラメータに基づいて、前記画像に対して、ライティング処理を実行するライティング処理手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、画像の高輝度領域を補正した上で、立体感のある自然な画像を生成することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態１に係る画像処理装置を備えた撮像装置の外観を示す図である。
【図２】実施形態１に係る画像処理装置を備えた撮像装置の内部構成を示すブロック図である。
【図３】実施形態１に係る画像処理装置の機能構成を示すブロック図である。
【図４】実施形態１に係る画像処理装置における処理の手順を示すフローチャートである。
【図５】カラー画像データと距離画像データを示す図である。
【図６】顔領域と器官位置を示す図である。
【図７】法線生成部における法線画像データ生成処理の手順を示すフローチャートである。
【図８】被写体法線画像データ生成処理の概要を示す図である。
【図９】顔法線画像データ生成処理の概要を示す図である。
【図１０】法線画像データ統合処理の概要を示す図である。
【図１１】高輝度領域補正処理の概要を示す図である。
【図１２】照明パラメータ設定部における照明パラメータ設定処理の手順を示すフローチャートである。
【図１３】照明パラメータ設定処理の概要を示す図である。
【図１４】ライティング処理の概要を示す図である。
【図１５】補正画像データを示す図である。
【図１６】実施形態２に係る画像処理装置で用いる重みマップを示す図である。
【図１７】実施形態３に係る画像処理装置の照明パラメータ設定部における照明パラメータ設定処理の手順を示すフローチャートである。
【図１８】実施形態３に係る画像処理装置で用いるハイライト候補領域を示す図である。
【図１９】実施形態４に係る画像処理装置における処理の手順を示すフローチャートである。
【図２０】ライティング処理の説明を補足するための図である。
【図２１】カラー画像データにおいて、被写体の陰影や光沢を補正した図である。
【発明を実施するための形態】
【００１１】
（撮像装置の外観）
図１は、実施形態に係る画像処理装置を備えた撮像装置の外観を示す図であり、図１（ａ）は撮像装置の前面、図１（ｂ）は背面の外観を各々、示している。撮像装置１０１は、光学部１０２、撮像ボタン１０３、ストロボ１０４、距離画像取得部１０５、表示部１０６、及び操作ボタン１０７を備える。
【００１２】
光学部１０２は、ズームレンズ、フォーカスレンズ、ブレ補正レンズ、絞り、及びシャッターによって構成される鏡筒であり、被写体の光情報を集光する。撮像ボタン１０３は、ユーザが撮像の開始を撮像装置１０１に指示するためのボタンである。ストロボ１０４は、ユーザの指示に従って、撮像の開始に合わせて発光させることができる照明である。距離画像取得部１０５は、撮像指示に応じて被写体の距離画像データを取得する。ここで、距離画像データとは、画像の各画素の画素値として、その画素に対応する被写体距離を格納した画像データのことを意味する。
【００１３】
距離画像取得部１０５は、赤外光を発光する赤外発光部と、被写体に反射した赤外光を受光する受光部とを備え、発光した赤外光が被写体に反射し、受光するまでの時間に基づいて、撮像装置から被写体までの距離値を算出する。そして、算出した距離値と受光部のセンサ画素数や画角等を含む距離撮像情報に基づいて、被写体の位置情報を算出し、距離画像データを生成する。なお、距離画像データの取得方法は、必ずしもこれに限られない。したがって、例えば、距離画像取得部１０５の代わりに光学部１０２と同様の光学系を設け、異なる２つの視点から撮像された画像データ間の視差に基づいて、三角測量を行うことにより距離画像データを取得することもできる。
【００１４】
表示部１０６は、撮像装置１０１にて処理された画像データや他の各種データを表示する、液晶ディスプレイ等の表示装置である。なお、図１に示すように、撮像装置１０１は光学ファインダを備えていないので、フレーミング操作（ピントや構図の確認）は表示部１０６を用いて行われる。即ち、撮像装置１０１に関して、表示部１０６においてライブビュー画像を確認しながら撮像が行われるので、フレーミングやフォーカシングの操作が行われるとき、表示部１０６は、電子ファインダとしても機能する。その他、表示部１０６では、カメラ設定メニュー等も表示する。
【００１５】
操作ボタン１０７は、撮像装置１０１の動作モードの切り換え操作や、撮像時の各種パラメータ等をユーザが撮像装置１０１に指示するためのボタンである。なお、撮像装置１０１は、動作モードの一つとして、撮像された画像における照明の当たり具合を撮像後に補正するライティング補正処理モードを備える。そのため、ユーザは、操作ボタン１０７又は撮像ボタン１０３を用いて、ライティング補正処理モードへの切り替え、ライティング補正に用いる仮想照明の照明パラメータの設定、さらに照明の当たり具合を調整（補正）する被写体の選択等を行うことができる。また、ユーザは補正された画像データを出力する際に、距離画像データを出力するか否か等の指示をすることもできる。その他、表示部１０６は、タッチスクリーン機能を備えていてもよく、その場合、タッチスクリーンを用いたユーザ指示を操作ボタン１０７の入力として扱うことも可能である。
【００１６】
（撮像装置の内部構成）
図２は、実施形態に係る画像処理装置を備えた撮像装置の内部構成を示すブロック図である。ＣＰＵ２０１は、各構成の処理の全てに関わり、ＲＯＭ（Read Only Memory）２０２や、ＲＡＭ（Random Access Memory）２０３に格納された命令を順に読み込み、解釈し、その解釈結果に従って処理を実行する。
【００１７】
ＲＯＭ２０２は、ＣＰＵ２０１により実行されるプログラムを記憶する。なお、本実施形態において、ＲＯＭ２０２は、顔法線情報を格納しているものとする。顔法線情報は、所定の形状の顔に対応する、顔表面における法線ベクトルを画素値に格納した法線画像データと、法線画像データにおける目・鼻・口等の器官位置を示す器官位置情報とを含む。ＲＡＭ２０３は、ＣＰＵ２０１により実行されるプログラムを記憶する。
【００１８】
光学系制御部２０４は、光学部１０２に対して、フォーカスを合わせる、シャッターを開く、絞りを調整する等のＣＰＵ２０１から指示された制御を行う制御回路である。制御部２０５は、撮像ボタン１０３や操作ボタン１０７からのユーザ指示を受取り、撮像、ライティング補正処理モードへの切り換え、被写体領域の選択、照明パラメータの設定等の制御を行う制御回路である。カラー撮像素子部２０６は、光学部１０２にて集光された光情報を電流値に変換する撮像素子である。カラー撮像素子部２０６は、ベイヤ配列等の所定の配列を有するカラーフィルタを備え、光学部１０２において集光された光から被写体の色情報を取得する。
【００１９】
Ａ／Ｄ変換部２０７は、カラー撮像素子部２０６において検知された被写体の色情報をデジタル信号値に変換し、ＲＡＷ画像データとする処理回路である。なお、本実施形態では、同時刻に撮像した距離画像データとＲＡＷ画像データを取得できるものとする。画像処理部２０８は、Ａ／Ｄ変換部２０７で取得されたＲＡＷ画像データに対して現像処理を行い、カラー画像データを生成する。また、画像処理部２０８は、カラー画像データや距離画像データを用いて、カラー画像データにライティング補正を施した補正画像データを生成する等の各種画像処理を実行する。なお、画像処理部２０８の内部構成及び機能は、後述の図３を用いて詳述する。
【００２０】
キャラクタージェネレーション部２０９は、文字やグラフィック等を生成する処理回路である。キャラクタージェネレーション部２０９により生成された文字やグラフィックは、表示部１０６において、画像データや補正画像データ等に重畳して表示される。エンコーダ部２１０は、画像処理部２０８において生成されたカラー画像データや補正画像データ等の各種画像データをＪｐｅｇ等のファイルフォーマットに変換する。メディアＩ／Ｆ２１１は、ＰＣ／メディア２１３（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカード等）に、画像データを送受信するためのインタフェースである。メディアＩ／Ｆ２１１としては、例えば、ＵＳＢ（Universal Serial Bus）等が用いられる。システムバス２１２は、データを送受信するためのバスである。
【００２１】
（画像処理部の内部構成）
図３は、実施形態における画像処理装置（画像処理部２０８）の機能構成を示すブロック図である。現像処理部３０１は、Ａ／Ｄ変換部２０７から取得したＲＡＷ画像データに対して、ホワイトバランス処理、デモザイク処理、ノイズリダクション処理、色変換処理、エッジ強調処理及びガンマ処理等を施し、カラー画像データを生成する。なお、撮像装置１０１は、現像処理部３０１において生成されたカラー画像データを表示部１０６に出力して表示することや、ＲＡＭ２０３、ＰＣ／メディア２１３等の記憶装置に記憶することができる。また、本実施形態において、現像処理部３０１は、ガンマ処理を施すことなく、カラー画像データを生成し、その生成したカラー画像データをライティング処理部３０７に出力する。
【００２２】
顔検出部３０２は、現像処理部３０１より取得したカラー画像データから被写体の顔情報を取得する。なお、被写体の顔情報には、カラー画像データにおいて被写体の顔が占める領域を示す顔領域と、顔に含まれる目や口等のカラー画像データにおける位置を示す器官位置とに関する情報が少なくとも含まれる。距離補正部３０３は、カラー画像データに基づいて、距離画像データを補正することで、補正距離画像データを生成する。具体的には、距離画像データにおける距離値の欠損や、輪郭部の不一致等を補正する。
【００２３】
法線生成部３０４は、距離補正部３０３において生成された補正距離画像データに基づいて、被写体法線画像データを生成する。また、法線生成部３０４は、顔検出部３０２より取得した顔情報と、現像処理部３０１より取得したカラー画像データとに基づいて、ＲＯＭ２０２に格納された顔法線情報を補正することで、顔法線画像データを生成する。法線生成部３０４は、被写体法線画像データと顔法線画像データを生成すると、さらに、それらの画像を統合（合成）することで、統合法線画像データを生成する。
【００２４】
高輝度領域補正処理部３０５は、現像処理部３０１より取得したカラー画像データにおいて、顔検出部３０２より取得した顔情報に基づいて特定された被写体の顔領域のうち、高輝度領域の輝度値を抑制することで、高輝度領域補正画像データを生成する。また、高輝度領域補正処理部３０５は、高輝度領域補正画像データの生成において、制御部２０５から取得したユーザ操作に基づいて、高輝度領域補正パラメータを設定し、高輝度領域補正処理の強度を決定する。
【００２５】
照明パラメータ設定部３０６は、カラー画像データにおける被写体の高輝度領域と統合法線画像データに基づいて、照明パラメータを設定する。具体的には、照明パラメータ設定部３０６は、後述するように閾値処理を実行する等して、被写体の高輝度領域を抽出する。そして、その抽出した被写体の高輝度領域の法線ベクトルから推定される、撮像時の実照明位置に基づいて、後工程のライティング処理で使用する照明パラメータを設定する。なお、実照明位置を推定する際に、顔情報に基づいて、法線ベクトルに重み付けをすることもできる。
【００２６】
ライティング処理部３０７は、補正距離画像データ、統合法線画像データ、及び照明パラメータに基づいて、高輝度領域補正画像データに対してライティング処理を実行し、被写体にハイライトを付与する。そして、このように、被写体にハイライトを付与することで、立体感のある画像が生成される。なお、撮像装置１０１は、ライティング処理により生成された補正画像データをＲＡＭ２０３やＰＣ／メディア２１３等の記憶装置に出力して記憶することや、表示部１０６に出力して表示することができる。また、補正画像データを出力する事前に、ガンマ処理等の色処理を行ってもよい。
【００２７】
（画像処理部の処理フロー）
図４は、実施形態に係る画像処理装置（画像処理部２０８）における処理の手順を示すフローチャートである。
【００２８】
図４に示す処理において、画像処理部２０８は、先ず、カラー画像データに対応する統合法線画像データを生成する。画像処理部２０８は、次に、顔情報に基づいて特定された被写体の顔領域の高輝度領域に対して、輝度を抑制する処理を施し、高輝度領域補正画像データを生成する。画像処理部２０８は、さらに、被写体の高輝度領域の法線情報から推定した撮像時の実照明位置に基づいて、照明パラメータを設定する。そして、画像処理部２０８は、統合法線画像データと照明パラメータに基づいて、高輝度領域補正画像データに対して、ハイライトを付与した補正画像データを生成する。
【００２９】
以下、画像処理部２０８の処理手順に関して、詳述する。現像処理部３０１は、Ａ／Ｄ変換部２０７より取得したＲＡＷ画像データに基づいて、カラー画像データを生成する（Ｓ４０１）。カラー画像データは、例えば、図５（ａ）のように示され、また、カラー画像データ５０１の画素Ｉ（ｉ，ｊ）にはＲＧＢ値が画素値として格納されており、各々Ｉｒ（ｉ、ｊ）、Ｉｇ（ｉ、ｊ）、Ｉｂ（ｉ、ｊ）として示される。なお、カラー画像データの取得方法は、必ずしもこれに限られない。したがって、例えば、ＲＡＭ２０３やＰＣ／メディア２１３に記憶されているＲＡＷ画像データを取得し、現像処理部３０１により、その取得したＲＡＷ画像データからカラー画像データを生成することもできる。また、ＲＡＭ２０３やＰＣ／メディア２１３に記憶されているカラー画像データを直接、取得することもできる。
【００３０】
距離補正部３０３は、距離画像取得部１０５から距離画像データを取得する（Ｓ４０２）。距離画像データは、例えば、図５（ｂ）のように示され、また、距離画像データ５０２の画素Ｄ（ｉ，ｊ）には、撮像装置から被写体までの距離値が格納されている。なお、距離画像データの取得方法は、必ずしもこれに限られない。したがって、例えば、ＲＡＭ２０３やＰＣ／メディア２１３に記憶されている距離画像データを直接、取得することもできる。
【００３１】
画像処理部２０８は、ＲＡＭ２０３よりフラグＳＷ１の状態を取得し、フラグＳＷ１の状態に基づいて補正処理を行うか否かを判定する。画像処理部２０８は、フラグＳＷ１がＯＦＦの場合は補正処理を行わないと判定し、ステップＳ４０４に処理を移行する。また、フラグＳＷ１がＯＮの場合は補正処理を行うと判定し、ステップＳ４０５に処理を移行する。
【００３２】
ステップＳ４０３において補正処理を行わないと判定された場合、画像処理部２０８は、ＲＡＭ２０３からフラグＳＷ２の状態を取得する（Ｓ４０４）。画像処理部２０８は、フラグＳＷ２がＯＦＦの場合はカラー画像データのみを、フラグＳＷ２がＯＮの場合はカラー画像データと距離画像データをＰＣ／メディア２１３に出力し、記録する。また、画像処理部２０８は、画像データを表示部１０６に出力し、表示させることで、ユーザが確認できるようにすることもできる。なお、画像処理部２０８は、ステップＳ４０４における処理を実行すると、図４に示す処理を終了する。
【００３３】
また、ステップＳ４０３において補正処理を行うと判定された場合、顔検出部３０２は、カラー画像データ５０１に基づいて、顔情報を取得する（Ｓ４０５）。ここで、顔情報に関して、図６を用いて説明する。図６に示されるように、顔情報には、顔領域６０１及び器官位置６０２が含まれる。顔領域は、画像データにおいて、顔が含まれる領域の画素の集合として示される。器官位置６０２は、顔領域内における目、鼻、口等に対応する座標として示される。なお、顔領域６０１及び器官位置６０２には、各々信頼度が設定されており、信頼度が高いほど正確な位置情報が取得できている可能性が高いものとする。
【００３４】
顔領域、器官位置の検出方法については、既存のアルゴリズムを適用することができる。既存のアルゴリズムとしては、テンプレートマッチングを用いたアルゴリズムや、Ｈａａｒ−Ｌｉｋｅ特徴量を用いたアルゴリズム等があり、本実施形態では、テンプレートマッチングを適用することで、顔領域・器官位置を検出する。
【００３５】
テンプレートマッチングを適用した検出では、先ず、カラー画像データに対して、閾値処理を実行することで、肌色の領域を顔候補領域として抽出する。次に、様々な大きさの顔画像のテンプレートを用いて、顔候補領域に対してマッチング処理を実行し、尤度を算出する。そして、その算出した尤度に基づいて、顔領域か否かの判定処理を実行し、顔領域を抽出する。器官位置についても、抽出された顔領域に対して、目、鼻、口の画像のテンプレートを用いて、同様にマッチング処理を実行し、尤度を算出する。そして、この尤度の大きさに基づいて、顔領域・器官位置の信頼度を算出する。以上の処理を実行することで、顔領域６０１、器官位置６０２を取得する。
【００３６】
距離補正部３０３は、距離画像データを補正する（Ｓ４０６）。具体的には、距離補正部３０３は、距離画像データには距離値が欠損した画素が存在することがあるため、それらを周囲の画素の距離値に基づいて補完する。また、距離補正部３０３は、輪郭部等においてカラー画像データと合致しない箇所が存在することがあるため、カラー画像データを参照画像とする平滑化処理を行うことにより、これらの領域を補正する。なお、平滑化処理において、カラー画像データを参照画像とするジョイントバイラテラルフィルタ等を適用することができる。距離補正部３０３は、以上の処理を距離画像データに適用することで、補正距離画像データを生成する。
【００３７】
法線生成部３０４は、カラー画像データに対応する統合法線画像データを生成する（Ｓ４０７）。法線生成部３０４は、先ず、補正距離画像データに基づいて、被写体法線画像データを生成する。法線生成部３０４は、次に、顔情報と顔法線情報に基づいて、顔法線画像データを生成する。そして、生成した被写体法線画像データと顔法線画像データを統合することで、統合法線画像データを生成する。なお、統合法線画像データ生成処理の詳細については、後述する。
【００３８】
高輝度領域補正処理部３０５は、カラー画像データにおいて、被写体の顔領域のうち、高輝度領域の輝度値を抑制することで、高輝度領域補正画像データを生成する（Ｓ４０８）。なお、高輝度領域補正処理の詳細については、後述する。
【００３９】
照明パラメータ設定部３０６は、カラー画像データにおける被写体の高輝度領域と統合法線画像データに基づいて、照明パラメータを設定する（Ｓ４０９）。なお、照明パラメータ設定処理の詳細については、後述する。
【００４０】
ライティング処理部３０７は、補正距離画像データ、統合法線画像データ、及び照明パラメータに基づいて、高輝度領域補正画像データにおける被写体に対して、ハイライトを付与した補正画像データを生成する（Ｓ４１０）。なお、ライティング処理の詳細については後述する。
【００４１】
ライティング処理部３０７は、制御部２０５より取得したユーザ操作に基づいて、補正処理を終了するか否かを判定する（Ｓ４１１）。そして、補正処理を終了する場合はステップＳ４１２に処理を移行し、補正処理を終了しない場合はステップＳ４０８に処理を移行し、再度、高輝度補正処理やライティング処理を実行する。
【００４２】
補正処理を終了する場合（Ｓ４１１ Ｙｅｓ）、ライティング処理部３０７は、ＲＡＭ２０３からフラグＳＷ２の状態を取得し、そのフラグＳＷ２の状態に基づいて、各種データを出力する（Ｓ４１２）。ライティング処理部３０７は、フラグＳＷ２がＯＦＦの場合は補正画像データ及びカラー画像データを、フラグＳＷ２がＯＮの場合は補正画像データ、カラー画像データ、及び距離画像データをＰＣ／メディア２１３に出力し、記録する。その後、画像処理部２０８は、図４に示す処理を終了する。
【００４３】
（法線画像データ生成処理）
ここでは、ステップＳ４０７において、法線生成部３０４により実行される法線画像データ生成処理について説明する。ステップＳ４０７における法線画像データ生成処理として、法線生成部３０４は、先ず、距離補正部３０３より取得した補正距離画像データに基づいて、被写体法線画像データを生成する。法線生成部３０４は、次に、ＲＯＭ２０２より取得した顔法線情報及び顔器官法線情報に基づいて、顔法線画像データを生成する。法線生成部３０４は、被写体法線画像データと顔法線画像データを生成すると、さらに、それらの画像を統合し、統合法線画像データを生成する。
【００４４】
図７は、法線生成部３０４における法線画像データ生成処理手順を示すフローチャートである。法線生成部３０４は、補正距離画像データに基づいて、被写体法線画像データを生成する（Ｓ７０１）。ここでは、先ず、補正距離画像データにおける各画素の２次元的な座標値と各画素に格納された距離値に基づいて、画素毎に３次元的な座標値を算出する。法線生成部３０４は、次に、３次元的な座標値に基づいて、画素毎に対応する法線ベクトルを算出する。
【００４５】
法線ベクトルの算出する方法としては、３次元的な座標値から算出した勾配に基づいて算出する方法や、画素毎に平面を当て嵌め、その平面における垂線を法線ベクトルとして算出する方法があり、本実施形態では、後者の方法により、法線ベクトルを算出する。
【００４６】
以下、法線ベクトルを算出する手順を詳述する。先ず、法線ベクトルの算出対象とする画素とその近傍に位置する画素の三次元的な座標値を（ｘ０、ｙ０、ｚ０）、・・・、（ｘｎ−１，ｙｎ−１，ｚｎ−１）とする。なお、ここで、ｘ座標値は２次元的な座標値の水平方向の座標値、ｙ座標値は２次元的な座標値の垂直方向の座標値に基づいて求められる。また、ｚ座標値は距離値に基づいて求められる。次に、これらの座標値に対して、平面ａｘ＋ｂｙ＋ｃ＝ｚを当て嵌め、下式に示される関数Ｅが最小となるａ、ｂ、ｃを求める。
【００４７】
【数１】
2018163648.tif 000003
【００４８】
なお、数式１において、ａ、ｂ、ｃは下式で算出することができる。また、数式において示されるｉは、画素のインデックス値として示される。
【００４９】
【数２】
2018163648.tif 000004
【００５０】
そして、平面ａｘ＋ｂｙ＋ｃ＝ｚに垂直なベクトルｎ＝（ｎｘ、ｎｙ、ｎｚ）は、下式のように算出することができる。
【００５１】
【数３】
2018163648.tif 000005
【００５２】
このように（即ち、数式３に示されるように）、対象画素における法線ベクトルを算出する。そして、同様の処理を、画像データにおける各々の画素に対して実行し、法線ベクトルを算出することで、被写体法線画像データを生成する。即ち、被写体法線画像データは、画素（ｉ，ｊ）に法線ベクトル（Ｎｘ（ｉ，ｊ）、Ｎｙ（ｉ，ｊ）、Ｎｚ（ｉ，ｊ））が格納された画像データとして示される。
【００５３】
なお、図８は、被写体法線画像データ生成処理の概要を示す図であり、図８（ａ）は補正距離画像データ８０１を、図８（ｂ）は、上述の方法に従って算出した法線ベクトルに基づいて生成された被写体法線画像データ８０２を示す図である。
【００５４】
法線生成部３０４は、被写体法線画像データを生成すると、顔法線情報に基づいて顔法線画像データを生成する（Ｓ７０２）。以下、顔法線画像データを生成する処理に関して、図９を用いて詳述する。図９は、顔法線画像データ生成処理の概要を示す図であり、図９（ａ）はＲＯＭ２０２に記憶された顔法線情報および顔法線器官位置情報を、図９（ｂ）は顔法線情報を変形する処理を、その一例として示すものである。
【００５５】
図９（ａ）に示す顔法線情報９０１は、一般的な顔形状に基づいて生成された顔の法線情報を、画素値として保持する画像データであり、顔領域に対応する画素（ｉ，ｊ）には画素値として法線ベクトルの各要素が格納されている。顔領域以外の画素には法線ベクトルがないことを示す値が格納されており、これにより、画素値（即ち、法線ベクトル）に基づいて、顔領域と顔領域以外の領域とを判別することができる。また、図９（ａ）に示すように、顔法線器官位置情報９０２は、目、鼻、口等の顔器官に対応している。
【００５６】
次に、図９（ｂ）を用いて、顔法線情報を変形する処理について説明する。法線生成部３０４は、カラー画像内に含まれる被写体の器官位置６０２と、顔法線情報に含まれる顔法線器官位置情報９０２に基づいて、顔法線情報を、カラー画像データにおける被写体に合わせて変形するための変形パラメータを算出する。
【００５７】
なお、顔法線情報の変形方法として、例えば、アフィン変換、射影変換等を適用することができる。本実施例では、数式４に示すアフィン変換を用いて顔法線情報９０１を変換するものとする。
【００５８】
【数４】
2018163648.tif 000006
【００５９】
上式（数式４）において、変換パラメータ（ａ０，ａ１，ａ２，ａ３，ａ４，ａ５）は、器官位置６０２と顔法線器官位置情報９０２の右目、左目、鼻、口の座標を各々対応付けた上で、最小二乗法等を適用することにより算出することができる。
【００６０】
変形パラメータを算出すると、法線生成部３０４は、図９（ｂ）の９０３に示すように、その算出した変形パラメータに基づいて、顔法線情報９０１を変形し、顔法線画像データ９０３を生成する。なお、顔法線画像データ９０３において、顔領域以外の画素には法線情報がないことを示す値が画素値として格納される。
【００６１】
法線生成部３０４は、被写体法線画像データと顔法線画像データを統合することで、統合法線画像データを生成する（Ｓ７０３）。以下、統合処理の概要を、図１０を用いて説明する。法線生成部３０４は、先ず、被写体法線画像データ８０２に顔法線画像データ９０３の法線情報のある画素の画素値を上書き等することで、被写体法線画像データ８０２と顔法線画像データ９０３を合成する。そして、合成結果である法線画像データ１００１に対して、カラー画像データ５０１を参照画像とする平滑化処理を実行する。なお、平滑化処理は、カラー画像データ５０１を参照画像とするジョイントバイラテラルフィルタ等を、法線画像データ１００１の各画素に適用することで実行される。
【００６２】
法線生成部３０４は、平滑化処理を実行すると、各画素における法線ベクトルの大きさが１になるように、正規化処理を実行する。法線生成部３０４は、以上の処理を実行することにより、統合法線画像データ１００２を生成する。なお、本実施形態では、補正距離画像データに基づく被写体法線画像データ８０２と顔情報に基づく顔法線画像データ９０３を統合した画像を法線画像データ（即ち、統合法線画像データ１００２）として生成したが、法線画像データは必ずしもこれに限られない。したがって、統合法線画像データ１００２の代わりに、例えば、補正距離画像データに基づく被写体法線画像データ８０２を法線画像データとして用いることも、顔情報に基づく顔法線画像データ９０３を法線画像データとして用いることもできる。
【００６３】
（高輝度領域補正処理）
ここでは、ステップＳ４０８において、高輝度領域補正処理部３０５により実行される高輝度領域補正処理について説明する。ステップＳ４０８における高輝度領域補正処理として、高輝度領域補正処理部３０５は、カラー画像データにおいて、顔情報に基づいて特定された被写体の顔領域のうち、高輝度領域の輝度値を抑制することで、高輝度領域補正画像データを生成する。具体的には、高輝度領域補正処理部３０５は、高輝度領域における画素が肌の色に近づくように画素値を補正する。
【００６４】
以下、高輝度領域を補正する処理に関して、図１１を用いて説明する。高輝度領域補正処理部３０５は、先ず、カラー画像データ５０１の顔領域６０１に含まれる画素の画素値から、頻度の高い色を被写体の顔色として抽出する。高輝度領域補正処理部３０５は、次に、その抽出した顔色に基づいて、補色を算出する。高輝度領域補正処理部３０５は、顔色に基づいて補色を算出すると、図１１（ｂ）に示すような、顔領域の中央付近ほど大きな重みを有し、顔領域以外の領域において重みが０となるような重みマップ１１０１を、顔領域６０１に基づいて生成する。重みマップ１１０１は補正処理における各画素の補正度合いを示しており、重みが大きい画素ほど強い補正がかかるものとする。
【００６５】
そして、高輝度領域補正処理部３０５は、重みマップ１１０１を生成すると、顔色の補色Ｕと重みマップｗに基づいて、下式（５）に従って高輝度領域補正画像データＩ’を生成する。
【００６６】
【数５】
2018163648.tif 000007
【００６７】
ここで、数式（５）において、Ｉｒ、Ｉｇ、Ｉｂはカラー画像データＩの画素値、Ｉ’ｒ、Ｉ’ｇ、Ｉ’ｂは高輝度領域補正画像データＩ’の画素値、Ｙはカラー画像データのＩの輝度値、ｔは補正度合いを制御するパラメータである。
【００６８】
加えて、重みｇは、輝度値Ｙが大きくなるほど、大きな値となる関数として設定される。即ち、重みｇにより、輝度値の大きな画素ほど強い補正がかかるようにすることができる。なお、補正度合いを制御するパラメータｔや重みｇは、ユーザ操作に基づいて設定することもできる。また、高輝度領域の補正処理（補正方法）は、必ずしも上記の処理に限られるものではない。したがって、例えば、輝度値に基づいて高輝度領域を抽出した後に、高輝度領域に関して、その高輝度領域の周囲の画素の画素値と類似する色に補正することもできる。
【００６９】
以上のように、輝度が高い画素ほど大きな重みにして顔色の補色で差し引くことにより、高輝度領域に関して、輝度を小さくしつつ、また顔色に近い色として補正することができる。なお、高輝度領域補正処理部３０５により補正された高輝度領域補正画像１１０２は、図１１（ｃ）のように示される。
【００７０】
（照明パラメータ設定処理）
ここでは、ステップＳ４０９において、照明パラメータ設定部３０６により実行される照明パラメータ設定処理について説明する。ステップＳ４０９における照明パラメータ設定処理として、照明パラメータ設定部３０６は、カラー画像データ５０１における被写体の高輝度領域と統合法線画像データに基づいて、照明パラメータに含まれる照明の向き（姿勢）を設定する。即ち、照明パラメータ設定部３０６は、仮想照明パラメータ設定手段として機能する。
【００７１】
以下、照明パラメータを設定する処理に関して、図１２を用いて説明する。照明パラメータ設定部３０６は、先ず、カラー画像データ５０１において高輝度領域を抽出する（Ｓ１２０１）。照明パラメータ設定部３０６は、例えば、カラー画像データに対して、輝度値に基づく閾値処理を適用し、所定の閾値より輝度値が大きな画素のみを抽出することで、高輝度領域を取得する。なお、照明パラメータ設定部３０６は、カラー画像データ５０１と高輝度領域補正画像データとの差分に基づいて、高輝度領域を抽出することもできる。ここで、照明パラメータ設定部３０６により、カラー画像データ５０１から抽出した高輝度領域１３０１は、図１３（ａ）の１３０１のように示される。
【００７２】
照明パラメータ設定部３０６は、次に、高輝度領域１３０１と統合法線画像データ１００２に基づいて、被写体に対する実照明の向きを推定する（Ｓ１２０２）。実照明の向きは、図１３（ｂ）に示すような統合法線画像データ１００２より抽出した高輝度領域１３０１に含まれる画素の法線ベクトルに基づいて推定される。より具体的には、照明パラメータ設定部３０６は、統合法線画像データ１００２の高輝度領域１３０１に含まれる画素の法線ベクトルを平均し、さらに、その平均したベクトルの逆ベクトルを実照明パラメータ（具体的には、実照明の向きＵ’）として推定する。
【００７３】
なお、ステップＳ１２０２において、高輝度領域１３０１に含まれる画素の法線ベクトルを平均する代わりに、頻度の高い法線ベクトルを用いて、実照明の向きを推定することもできる。このように実照明の向きを推定することで、明らかに異なる方向を向いた少数の法線ベクトルの影響を低減することができる。
【００７４】
照明パラメータ設定部３０６は、ステップＳ１２０２において実照明の向きＵ’を推定すると、その実照明の向きＵ’に基づいて、仮想照明の向きＵを設定する（Ｓ１２０３）。本実施形態では、下式（６）に従って、実照明の向きＵ’と予め設定しておいた目標照明パラメータＵ”（具体的には、目標照明の向きＵ”）との重み付けにより、仮想照明の向きＵを設定する。
【００７５】
【数６】
2018163648.tif 000008
【００７６】
ここで、数式（６）において、ｗ’は目標照明の向きＵ”の重みであり、仮想照明の向きＵが実照明の向きＵ’から所定の角度以上離れないように（開かないように）設定することが望ましい。したがって、目標照明の向きＵ”の重みｗ’は、照射対象画素から実照明までの向きＵ’と、その照射対象画素から目標照明までの向きＵ”の成す角度θが大きくなるに従って、小さくなるように設定すればよい。
【００７７】
理解を容易にするために、目標照明の向きＵ”の重みｗ’の設定に関して、図１３（ｃ）〜（ｅ）を用いて補足する。先ず、図１３（ｃ）に示すように、実照明の向きＵ’と目標照明の向きＵ”の成す角度θが所定の角度よりも小さい場合は、目標照明の向きＵ”のｗ’を１に設定することにより、Ｕ＝Ｕ”とする（即ち、仮想照明の向きＵを目標照明の向きＵ”に合わせる）。
【００７８】
次に、図１３（ｄ）と（ｅ）として、実照明の向きＵ’と目標照明の向きＵ”の成す角度θが所定の角度よりも大きい場合を示す。この場合、目標照明の向きＵ”の重みｗ’を１より小さい値に設定する（即ち、実照明の向きＵ’を踏まえ、仮想照明の向きＵを調整する）。また、図１３（ｄ）と（ｅ）の関係に示されるように、角度θが所定の角度よりも大きくなるにつれて、目標照明の向きＵ”の重みｗ’を小さくすることで、仮想照明の向きＵと実照明の向きＵ’との成す角度φが一定の値以上にならないように制限している。これは、このように制限しない場合、仮想照明の向きＵと実照明の向きＵ’との成す角度φが大きくなると、実照明で生じる陰影と後工程のライティング処理で付されるハイライトとの関係で、違和感が生じてしまうからである。
【００７９】
なお、目標照明の向きＵ”の重みｗ’は、例えば、下式（７）のように設定することができる。
【００８０】
【数７】
2018163648.tif 000009
【００８１】
上式（７）に示すように、実照明の向きＵ’と目標照明の向きＵ”の成す角度θに応じて、目標照明の向きＵ”の重みｗ’を設定する。具体的には、角度θが所定の角度θthより大きい場合に、角度θが大きくなるに従って、目標照明の向きＵ”の重みｗ’は小さく設定される。即ち、仮想照明の向きＵと実照明の向きＵ’との成す角度φは一定の角度θthとなる（図１３（ｄ）、（ｅ））。また、実照明の向きＵ’と目標照明の向きＵ”の成す角度θが所定の角度θth以下の場合、仮想照明の向きＵと実照明の向きＵ’との成す角度φは角度θとなる（図１３（ｃ））。
【００８２】
以上、照明パラメータを設定する処理に関して説明したが、目標照明の向きＵ”を用いることなく、推定した実照明の向きＵ’に対して所定の値だけ角度を変更することで、仮想照明の向きＵを設定することもできる。したがって、例えば、推定した実照明の向きＵ’に基づいて、より上方向から照らすように法線ベクトルの向きを補正したものを、仮想照明の向きＵとして設定することもできる。また、ストロボ１０４を使用して撮像した場合は、実照明の向きＵ’をストロボの位置に基づいて、設定することもできる。例えば、ストロボが図１に示すように配置される場合、撮像装置の光軸と略平行な向きを実照明の向きＵ’として設定することができる。なお、この場合、ステップＳ１２０１とステップＳ１２０２の処理を省略することができる。
【００８３】
（ライティング処理）
ここでは、ステップＳ４１０において、ライティング処理部３０７により実行されるライティング処理について説明する。ステップＳ４１０におけるライティング処理として、ライティング処理部３０７は、補正距離画像データ、統合法線画像データ、及び照明パラメータに基づいて、高輝度領域補正画像データにおける被写体に対してハイライトを付与した補正画像データを生成する。
【００８４】
なお、本実施形態では、照明パラメータとして仮想照明の向きＵ、強度α、光源色Ｌが設定され、下式（８）に従って、補正画像データＩ”を生成するものとする。
【００８５】
【数８】
2018163648.tif 000010
【００８６】
ここで、Ｉ”ｒ、Ｉ”ｇ、Ｉ”ｂは補正画像データＩ”の画素値、Ｌｒｍ、Ｌｇｍ、Ｌｂｍはｍ番目の照明の色である。ｓは、仮想照明による光沢の強度を示す値であり、既存の鏡面反射を表すＢｌｉｎｎ-ＰｈｏｎｇモデルやＴｏｒｒａｎｃｅ-Ｓｐａｒｒｏｗモデル等に従って算出することができ、例えば、下式（９）で示される。
【００８７】
【数９】
2018163648.tif 000011
【００８８】
以下、数式（９）に関して、図１４を用いて説明する。数式（９）において、βは鏡面反射率、ｃは光沢の広がりを示すパラメータである。パラメータｃに関して、その値が大きいほど鋭い光沢となり、その値が小さいほど柔らかな光沢となる。また、式（９）に示されるように、光沢は、法線ベクトルＮで表される形状に対して敏感に変化する。なお、Ｈはハーフベクトルであり、図１４に示すように画素（ｉ、ｊ）の位置Ｐから仮想照明に向かう単位ベクトルＶと、位置Ｐから撮像装置１０１に対応する位置Ｃに向かう単位ベクトルＥとの平均ベクトルを大きさ１に正規化したものである。また、本実施形態においては、単位ベクトルＶを仮想照明の向きＵの逆ベクトルとする。
【００８９】
この数式（９）に示されるように、高輝度領域補正画像データにおいて、法線ベクトルＮがハーフベクトルＨと同じ方向を向いている画素ほど、高いハイライトを付与することで、所望の画素位置に適切な光沢を付与することができる。補足として、ステップＳ４１０に示す処理により、被写体に対してハイライトを付与した補正画像データ１５０１を図１５として示す。また、このライティング処理は、顔領域６０１に基づいて、処理の適用範囲を顔周辺に限定して実行することもできる。
【００９０】
以上のように、実施形態に係る画像処理装置によれば、撮像時の照明により発生した被写体の高輝度領域を補正した上で、仮想照明により被写体に光沢を付与することで、立体感のある画像を生成することができる。
【００９１】
（実施形態２）
前述の実施形態１では高輝度領域に含まれる法線ベクトルのみに基づいて実光源の向きを推定したが、本実施形態では、各法線ベクトルに対して、法線マップの信頼度に基づいて重み付けを実行することで実光源の向きを推定する。即ち、本実施形態では、実照明の向きを推定する処理が、実施形態１の処理と異なり、また、照明パラメータ設定部３０６は、信頼度を設定する信頼度設定手段を備える。
【００９２】
実施形態２では、図１６に示すような統合法線画像データに対応する重みマップ１６０１に基づいて、信頼度の高い法線ベクトルに対して、大きな重みが付されるように重み付けを実行する。そして、高輝度領域に含まれる法線ベクトルを重み付け平均し、さらに、その重み付け平均したベクトルの逆ベクトルを実照明の向きＵ’として推定する。
【００９３】
ここで、重みマップ１６０１は、距離マップや顔情報に含まれる顔領域、器官位置等に基づいて作成される。本実施形態では、信頼度を４段階に設定し、器官位置周辺の領域、器官位置周辺以外の顔領域、顔領域の近傍領域（即ち、顔領域から距離の近い、所定の範囲内にある領域）、その他の領域の順に信頼度を高く設定している。
【００９４】
なお、顔領域と器官位置に関しては検出時の信憑性に応じて、信頼度を変更させることもできる。したがって、例えば、口の器官位置に対応する信憑性が低い場合は、口の周辺領域のみ他の器官位置よりも小さい重みとし、顔領域と同じ重みに設定することもできる。
【００９５】
また、顔領域、器官位置等に基づいて設定する重みの他に、カラー画像データを参照し、輝度値の高い法線ベクトルほど大きな重みが設定されるように重み付けすることもできる。このように重み付けすることで、光源の方向を向いていると考えられる輝度値の大きな画素の法線ベクトルを優先して用いることができるため、より確からしい照明の向きを取得することができる。以上の処理により、信頼度の低い法線ベクトルの影響を小さくした上で、実光源の向きを推定することができる。
【００９６】
（実施形態３）
上述の実施形態では目標照明向きＵ”に関して予め所定の値を設定していたが、本実施形態ではＵ”の値を統合法線画像データとハイライト候補領域に基づいて算出する。即ち、本実施形態では、Ｓ４０９における照明パラメータ設定処理が、上述の実施形態における処理と異なる。
【００９７】
図１７は、実施形態３における照明パラメータの設定処理の手順を示すフローチャートである。照明パラメータ設定部３０６は、統合法線画像データとハイライト候補領域に基づいて、目標照明向きＵ”を算出する（Ｓ１７０１）。なお、照明パラメータ設定部３０６は、ハイライト候補領域を設定するハイライト候補領域設定手段を備え、本実施形態において、ハイライト候補領域は、器官位置に基づいて設定される。
【００９８】
図１８は、ハイライト候補領域１８０１をその一例として示す図である。ハイライト候補領域として、顔を立体的に見せる上で効果的な領域が、器官位置に基づいて優先的に設定される。したがって、例えば、図１８に示すように、ハイライト候補領域として、鼻の器官位置に基づいて設定された鼻筋領域、口の器官位置に基づいて設定された顎領域、目の器官位置に基づいて設定された目じり領域等が挙げられる。そして、統合法線画像データから、これらのハイライト候補領域に含まれる法線ベクトルを平均し、さらに、その平均したベクトルの逆ベクトルを目標照明向きＵ”として算出する。
【００９９】
なお、ハイライト候補領域は予め設定することも、ユーザ操作に基づいて複数領域から選択することもできる。また、ステップＳ１７０２からステップＳ１７０４の処理は、実施形態１で説明した処理と同様の処理である。以上の処理により、目標照明向きＵ”を算出することで、被写体に応じて好ましい位置にハイライトを付与することができる。
【０１００】
（実施形態４）
上述の実施形態では、高輝度領域補正処理部３０５により高輝度補正処理を実行することで、被写体の高輝度領域を補正した。本実施形態では、ライティング処理部３０７によりライティング処理を実行することで、被写体の高輝度領域の補正と、ハイライトの付与を行う。
【０１０１】
図１９は、本実施形態に係る画像処理装置（画像処理部２０８）における処理の手順を示すフローチャートである。図１９に示されるように、図４に示すフローチャート（即ち、実施形態１に係る画像処理装置における処理の手順を示すフローチャート）とは、高輝度領域補正処理を実行しない点で異なっている。また、上述のように、ライティング処理Ｓ１９０９の処理内容が異なる。なお、その他の処理については、図４に示す処理と同様である。
【０１０２】
（ライティング処理）
ここでは、ステップＳ１９０９において、ライティング処理部３０７により実行されるライティング処理について説明する。具体的には、ライティング処理として、補正距離画像データ、統合法線画像データ、及び照明パラメータに基づいて、カラー画像データにおける被写体に対してハイライトを補正した補正画像データを生成する処理について説明する。
【０１０３】
なお、本実施形態において、照明パラメータとして、仮想照明の向きＵ、強度α、光源色Ｌ、及び実照明の向きＵ′、強度α′、光源色Ｌ′ を設定する。これらのパラメータは複数設定可能であり、仮想照明の数ｍ、実光源の数ｎに応じて、各々設定することができる。
【０１０４】
そして、カラー画像データに対して仮想照明の向きＵ、強度α、光源色Ｌに対応する仮想照明の効果を加算し、実照明の向きＵ′、強度α′、光源色Ｌ′に対応する仮想照明の効果を減算することにより補正画像データを生成する。具体的には、下式（１０）に従って、補正画像データＩ”を生成するものとする。
【０１０５】
【数１０】
2018163648.tif 000012
【０１０６】
ここで、Ｓ＋は、加算光沢成分であり、下式（１１）のように示される。Ｓ＋をカラー画像データに加算することにより、被写体に対して適切な光沢を付与することができる。なお、仮想照明の数ｍは、加算する仮想照明の数に対応する。
【０１０７】
【数１１】
2018163648.tif 000013
【０１０８】
また、Ｓ−は、減算光沢成分であり、下式（１２）のように示される。Ｓ−をカラー画像データから減算することにより、被写体の高輝度領域を抑制することができる。なお、実光源の数ｎは、減算する仮想照明の数に対応する。
【０１０９】
【数１２】
2018163648.tif 000014
【０１１０】
以下、ｓｍ及びｓ′ｎについて、図２０を用いて、説明を補足する。また、ここでは、仮想照明Ａの向きをＵ、仮想照明Ｂの向きをＵ′とする。図２０に示されるように、仮想照明Ｂの向きＵ′は実光源の向きに対応している。
【０１１１】
ｓｍは、仮想照明の向きＵに基づく光沢の強度を示す値である。具体的には、ｓｍを、Ｕの逆ベクトルＶ及び単位ベクトルＥから求められるハーフベクトルＨと、法線ベクトルＮとに基づいて、式（９）に従って算出する。さらに、本実施形態では、ｓｍに基づいて、加算光沢成分Ｓ＋を算出する。
【０１１２】
ｓ′ｎは、実照明の向きＵ′に基づく光沢の強度を示す値である。具体的には、ｓ′ｎを、Ｕ′の逆ベクトルＶ′及び単位ベクトルＥから求められるハーフベクトルＨ′と、法線ベクトルＮとに基づいて、式（９）に従って算出する。さらに、本実施形態では、ｓ′ｎに基づいて、減算光沢成分Ｓ−を算出する。
【０１１３】
そして、撮影時の実光源による光沢成分に対応する減算光沢成分Ｓ−をカラー画像データから減算することにより、撮影時の光沢による高輝度領域を補正する。
【０１１４】
以上のように、本実施形態に係る画像処理装置によれば、ライティング処理により、被写体の高輝度領域を補正し、被写体に光沢を付与することで、立体感のある画像を生成することができる。
【０１１５】
（実施形態５）
上述の実施形態では、被写体の高輝度領域（即ち、光沢）のみを補正した。本実施形態では、被写体の光沢だけでなく、陰影も併せて補正する。本実施形態では、実施形態４と比較して、式（１０）の内容が異なる。具体的には、下式（１３）に従って、補正画像データＩ”を生成するものとする。
【０１１６】
【数１３】
2018163648.tif 000015
【０１１７】
ここで、Ｉ′′′は、カラー画像データから減算光沢成分Ｓ−を減算したものであり、式（１４）のように示される。
【０１１８】
【数１４】
2018163648.tif 000016
【０１１９】
また、Ｔ＋は、加算陰影成分であり、下式（１５）のように示される。Ｔ＋を加算することにより、仮想照明による陰影を付与することができる。
【０１２０】
【数１５】
2018163648.tif 000017
【０１２１】
さらに、Ｔ−は、減算陰影成分であり、下式（１６）のように示される。Ｔ−を減算することにより、実照明による陰影を抑制することができる。
【０１２２】
【数１６】
2018163648.tif 000018
【０１２３】
ここで、ｔｍ及びｔｎは、仮想照明による陰影の強度を示す値であり、拡散反射を示す既存のＰｈｏｎｇモデル等に従って、例えば、下式（１７）に従って算出することができる。なお、δは拡散反射率を示すパラメータである。
【０１２４】
【数１７】
2018163648.tif 000019
【０１２５】
以下、ｔｍ及びｔｎについて、説明を補足する。ｔｍは、仮想照明の向きＵに基づく陰影の強度を示す値である。具体的には、ｔｍは、Ｕの逆ベクトルＶと法線ベクトルＮに基づいて、式（１７）に従って算出される。本実施形態では、上述のように、ｔｍに基づいて加算陰影成分Ｔ＋を算出する。
【０１２６】
ｔｎは、実照明の向きＵ′に基づく陰影の強度を示す値である。具体的には、ｔｎは、Ｕ′の逆ベクトルＶ′と法線ベクトルＮに基づいて、式（１７）に従って算出される。本実施形態では、上述のように、ｔｎに基づいて減算陰影成分Ｔ−を算出する。
【０１２７】
そして、上述のように、実光源による光沢及び陰影を減算光沢成分Ｓ−及び減算陰影成分Ｔ−として除去し、また、仮想照明による光沢及び陰影を加算光沢成分Ｓ＋及び加算陰影成分Ｔ＋として付加する。
【０１２８】
以上の処理をカラー画像データに適用することにより、図２１に示されるように、カラー画像データ２１０１における被写体の陰影や光沢を補正画像データ２１０２のように補正することができる。
【０１２９】
なお、本実施形態では、ライティング処理部３０７により高輝度領域を補正する処理を実行したが、上述の実施形態１から実施形態３と同様に、高輝度領域補正処理部３０５により高輝度領域を補正してもよい。この場合、式（１４）で算出されるＩ′′′を式（５）で算出されるＩ′に置き換えればよい。
【０１３０】
以上のように、本実施形態に係る画像処理装置によれば、被写体の光沢及び陰影を補正することにより、立体感のある画像を生成することができる。
【０１３１】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１３２】
２０８  画像処理部
３０４  法線生成部
３０５  高輝度領域補正処理部
３０６  照明パラメータ設定部
３０７  ライティング処理部
【図１】
2018163648.tif 000020
【図２】
2018163648.tif 000021
【図３】
2018163648.tif 000022
【図４】
2018163648.tif 000023
【図５】
2018163648.tif 000024
【図６】
2018163648.tif 000025
【図７】
2018163648.tif 000026
【図８】
2018163648.tif 000027
【図９】
2018163648.tif 000028
【図１０】
2018163648.tif 000029
【図１１】
2018163648.tif 000030
【図１２】
2018163648.tif 000031
【図１３】
2018163648.tif 000032
【図１４】
2018163648.tif 000033
【図１５】
2018163648.tif 000034
【図１６】
2018163648.tif 000035
【図１７】
2018163648.tif 000036
【図１８】
2018163648.tif 000037
【図１９】
2018163648.tif 000038
【図２０】
2018163648.tif 000039
【図２１】
2018163648.tif 000040