(57)【要約】【課題】  被写体の姿勢や表情に合わせた陰影を付与した画像を得る。【解決手段】  画像処理装置であって、被写体を撮像することにより得られたカラー画像を取得する取得手段と、前記カラー画像において前記被写体の顔の領域を顔領域として特定する特定手段と、前記カラー画像における前記顔領域の少なくとも一部の明るさが変更された補正画像を生成する生成手段を有することを特徴とする。【選択図】  図４
2019205205.tif 000002
【特許請求の範囲】
【請求項１】
被写体を撮像することにより得られた画像を取得する取得手段と、
前記カラー画像において前記被写体の顔の領域を顔領域として特定する特定手段と、
前記カラー画像における前記顔領域の少なくとも一部の明るさが変更された補正画像を生成する生成手段を有することを特徴とする画像処理装置。
【請求項２】
前記生成手段は、前記顔の形状に応じて明るさが変更された画像を前記補正画像として生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記生成手段は、前記顔領域における明るさが変更された度合いが、前記特定手段が前記顔領域を特定した被写体および前記被写体の近傍の領域を除く背景の領域、における明るさが変更された度合いよりも、大きくなるように前記補正画像を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記特定手段は、前記カラー画像における被写体のうち、人物の顔のみを前記顔領域として特定することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記生成手段は、前記顔領域における形状に応じた陰影を付与することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記カラー画像における前記顔領域の明るさから前記補正画像における前記顔領域の明るさへの変更の度合いは、前記カラー画像における前記顔領域の明るさに応じていることを特徴とする請求項１に記載の画像処理装置。
【請求項７】
前記補正画像において、前記顔領域に含まれる第１の画素と、前記顔領域に含まれ、前記第１の画素における撮像装置との距離と撮像装置からの距離が同じで、第１の画素における法線方向と異なる法線方向が対応する第２の画素とについて、前記カラー画像における前記第１の画素および前記第２の画素それぞれの明るさからの変更の度合いが異なることを特徴とする請求項１乃至６の何れか一項に記載の画像処理装置。
【請求項８】
前記生成手段は、前記特定手段が特定した前記顔領域と前記顔領域の近傍とを除く領域においては、被写体の法線方向に応じた明るさの変更はしないことを特徴とする請求項１に記載の画像処理装置。
【請求項９】
コンピュータを請求項１乃至８のいずれか一項に記載の画像処理装置として機能させるプログラム。
【請求項１０】
被写体を撮像することにより得られたカラー画像の明るさを変更された補正画像を生成する画像処理方法であって、
前記カラー画像を取得し、
前記カラー画像において前記被写体の顔の領域を顔領域として特定し、
前記カラー画像における前記顔領域の少なくとも一部の明るさが変更された前記補正画像を生成することを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに陰影を付与する技術に関する。
【背景技術】
【０００２】
撮像装置を用いて被写体を撮影する場合、被写体に対する光の当たり方によって得られる画像は大きく変わる。例えば逆光の状態で撮影した場合、被写体の全体あるいは一部が影になり暗く写ってしまう。また、ストロボを用いて被写体に光を照射して撮影を行う場合には、光の影響により被写体の陰影が飛ばされ、被写体が平坦に見えるような場合もある。これらの画像を補正する方法として、特定の方向から疑似的に光を当てたように被写体の暗部を補正する方法が知られている（特許文献１）。特許文献１に記載の技術では、仮想光源の影響をガウス分布で表現する。この際、別途設定したライティング方向に従って輝度補正のガウス分布を偏らせることにより、仮想的に所望の方向から照明を与えたような画像を得ることができる。
【０００３】
また、被写体に対応する３Ｄモデルを用いて所定の仮想照明条件下でＣＧのレンダリング処理を行い、レンダリングしたＣＧ画像を、撮影により得られた画像中の被写体像と置き換えることで被写体のライティングを変更する方法も知られている（特許文献２）。特許文献２に記載の技術では、あらかじめ用意しておいた３Ｄモデルの中から被写体と置き換える３Ｄモデルを決定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５２８１８７８号公報
【特許文献２】特許第５０８８２２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
撮影者が所望する照明条件下で撮影したかのような別の画像を撮影画像から生成する場合、被写体の姿勢や表情に合わせた陰影を付与した画像が得られることが好ましい。しかしながら特許文献１、２の技術では以下のような課題がある。
【０００６】
特許文献１に記載の技術のように仮想光源の影響をガウス分布で表現する場合、人間の顔のような複雑な形状の被写体に対して自然な陰影を付与することは困難である。また、特許文献２に記載の技術のように、被写体の３Ｄモデルを用いてレンダリングした結果で画像中の被写体像を置きかえる場合、置き換えた後の被写体の姿勢や表情が３Ｄモデルの姿勢や表情に置き換わってしまい不自然な結果となってしまう。そこで、本発明は被写体の姿勢や表情に合わせた陰影を付与した画像を得ることを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明に係る画像処理装置は、被写体を撮像することにより得られたカラー画像を取得する取得手段と、前記カラー画像において前記被写体の顔の領域を顔領域として特定する特定手段と、前記カラー画像における前記顔領域の少なくとも一部の明るさが変更された補正画像を生成する生成手段を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、被写体の姿勢や表情に合わせた陰影を付与した画像を得ることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態１に係る撮像装置の外観を示す図。
【図２】本発明の実施形態１に係る撮像装置の内部構成を示す図。
【図３】本発明の実施形態１に係る画像処理部の構成を示すブロック図。
【図４】本発明の実施形態１に係る処理の流れを示すフローチャート。
【図５】本発明の実施形態１に係る画像データの例を示す図。
【図６】本発明の実施形態１に係る顔情報を示す図。
【図７】本発明の実施形態１に係る距離補正処理の流れを示すフローチャート。
【図８】本発明の実施形態１に係る距離補正処理の概要を表す図。
【図９】本発明の実施形態１に係る法線補正処理の流れを示すフローチャート。
【図１０】本発明の実施形態１に係る法線補正処理の概要を表す図。
【図１１】本発明の実施形態１に係る法線平滑化処理の概要を表す図。
【図１２】本発明の実施形態１に係るライティング処理の流れを示すフローチャート。
【図１３】本発明の実施形態１に係るライティング処理の概要を示す図。
【図１４】本発明の実施形態１に係るライティング処理の効果を表す図。
【図１５】本発明の実施形態２に係る補正係数の例を示す図。
【図１６】本発明の実施形態３に係るライティング処理の効果を表わす図。
【図１７】本発明の実施形態４に係る処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１０】
［実施形態１］
＜撮像装置の外観＞
図１は本実施形態に係る撮像装置の外観を示す図であり、図１（ａ）は撮像装置の前面、図１（ｂ）は背面の外観を示している。撮像装置１０１は、光学部１０２、撮像ボタン１０３、ストロボ１０４、距離取得部１０５、表示部１０６、および操作ボタン１０７を有している。
【００１１】
光学部１０２はズームレンズ、フォーカスレンズ、ブレ補正レンズ、絞り、およびシャッターによって構成される鏡筒であり、被写体の光情報を集光する。撮像ボタン１０３は、ユーザが撮像の開始を撮像装置１０１に指示するためのボタンである。ストロボ１０４は、ユーザ指示に従い撮像の開始に合わせて発光させることができる照明である。距離取得部１０５は、撮像指示に応じて被写体の距離画像データを取得する距離取得モジュールである。距離画像データとは、画像の各画素の画素値としてその画素に対応する被写体距離を格納した画像データのことを意味する。距離取得部１０５は、赤外光を発光する赤外発光部と、被写体に反射した赤外光を受光する受光部とを含み、発光した赤外光が被写体に反射し受光するまでの時間を基に撮像装置から被写体までの距離値を算出する。そして、算出した距離値と受光部のセンサ画素数や画角等を含む距離撮像情報に基づき被写体の位置情報を算出し距離画像データを生成する。なお、距離画像データの取得方法はこれに限られない。例えば距離取得部１０５の代わりに光学部１０２と同様の光学系を設け、異なる２つの視点から撮像された画像データの間の視差に基づいて、三角測量を行うことにより距離画像データを取得するようにしてもよい。
【００１２】
表示部１０６は、撮像装置１０１にて処理された画像データや他の各種データなどを表示する、液晶ディスプレイなどのディスプレイである。本実施形態では撮像装置１０１に光学ファインダを設けていないので、フレーミング操作（ピントや構図の確認）は、表示部１０６を用いて行われる。すなわち、表示部１０６でライブビュー画像を確認しながら撮像が行われるので、フレーミングやフォーカシングの操作を行っている間は、表示部１０６は電子ファインダとして機能すると言える。表示部１０６では、撮像範囲をリアルタイムに表示するライブビュー表示が行われる他、カメラ設定メニューが表示される。
【００１３】
操作ボタン１０７は、撮像装置１０１の動作モードの切り換え操作や、撮像時の各種パラメータなどをユーザが撮像装置１０１に指示するためのボタンである。なお、本実施形態では動作モードの一つとして、撮像された画像における照明の当たり具合を撮像後に補正するライティング補正処理モードが含まれる。ユーザは操作ボタン１０７、あるいは撮像ボタン１０３を用いてライティング補正処理モードへの切り替えや、ライティング補正に用いる仮想照明の照明パラメータの設定や、照明の当たり具合を調整する被写体の選択などを行うことができる。また、ユーザは補正された画像データを出力する際に、距離画像データを出力するかどうか等の指示をすることもできるものとする。なお、表示部１０６はタッチスクリーン機能を有していても良く、その場合はタッチスクリーンを用いたユーザ指示を操作ボタン１０７の入力として扱うことも可能である。
【００１４】
＜撮像装置の内部構成＞
図２は本実施形態における撮像装置１０１の内部構成を示すブロック図である。
【００１５】
ＣＰＵ２０２は、各構成の処理すべてに関わり、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３や、ＲＡＭ（Ｒｏｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４に格納された命令を順に読み込み、解釈し、その結果に従って処理を実行する。システムバス２１２はデータを送受信するためのバスである。なお、本実施形態において、ＲＯＭ２０３には、人間の顔に対応する顔法線モデルが格納されているものとする。顔法線モデルは、所定の形状の顔に対応する、顔表面の法線ベクトルを画素値に格納した法線画像データと、法線画像データにおける人の、目や口などの器官位置を示す器官位置情報とを含む。
【００１６】
制御部２０６は、撮像ボタン１０３や操作ボタン１０７からのユーザ指示を受取り、撮像、ライティング補正処理モードの切り換え、被写体領域の選択、照明パラメータの設定などの制御を行う制御回路である。光学系制御部２０５は光学部１０２に対して、フォーカスを合わせる、シャッターを開く、絞りを調整するなどのＣＰＵ２０２から指示された制御を行う制御回路である。
【００１７】
カラー撮像素子部２０１は、光学部１０２にて集光された光情報を電流値へと変換する撮像素子である。カラー撮像素子部２０１にはベイヤ配列などの所定の配列を有するカラーフィルタが備えてあり、光学部１０２にて集光された光から被写体の色情報が取得される。
【００１８】
Ａ／Ｄ変換部２０８は、カラー撮像素子部２０１にて検知された被写体の色情報をデジタル信号値に変換しＲＡＷ画像データとする処理回路である。なお、本実施形態では同時刻に撮像した距離画像データとＲＡＷ画像データが取得可能であるとする。
【００１９】
画像処理部２０９はＡ／Ｄ変換部２０８で取得されたＲＡＷ画像データに対して現像処理を行い、カラー画像データを生成する。また、画像処理部２０９はカラー画像データや距離画像データを用いて、カラー画像データにライティング補正を行った補正画像データを生成するなどの、各種画像処理を行う。画像処理部２０９の内部構造は後に詳述する。
【００２０】
また、キャラクタージェネレーション部２０７は文字やグラフィックなどを生成する処理回路である。キャラクタージェネレーション部２０７により生成された文字やグラフィックは、画像データや補正画像データなどに重畳して表示部１０６に表示される。
【００２１】
エンコーダ部２１０は、画像処理部２０９にて処理したカラー画像データやライティング補正処理によって生成される補正画像データを含む各種画像データをＪｐｅｇなどのファイルフォーマットに変換する処理を行う。
【００２２】
メディアＩ／Ｆ２１１は、ＰＣ／メディア２１３（例えば、ハードディスク、メモリカード、ＣＦカード、ＳＤカードなど）に画像データを送受信するためのインタフェースである。メディアＩ／Ｆ２１１としては、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などが用いられる。
【００２３】
＜画像処理部の内部構成＞
図３は本実施形態における画像処理部２０９の機能構成を示すブロック図である。現像処理部３０１は、Ａ／Ｄ変換部２０８から取得したＲＡＷ画像データに対してホワイトバランス処理、デモザイク処理、ノイズリダクション処理、色変換処理、エッジ強調処理およびガンマ処理等を施し、カラー画像データを生成する。生成したカラー画像データは表示部１０６へ出力して表示したり、ＲＡＭ２０４、ＰＣ／メディア２１３などの記憶装置に記憶することができる。なお、本実施形態では、現像処理部３０１はガンマ処理を施さずにカラー画像データを生成し、ライティング部３０５に出力する。
【００２４】
距離補正部３０２は、カラー画像データ、顔情報、ユーザにより選択された被写体位置に基づいて、距離画像データから選択された被写体に対応する補正距離データを生成する。本実施形態では、補正距離データは、主に選択された被写体位置に対応した人物と、それ以外の背景に対応する距離値を格納しているものとする。
【００２５】
顔検出部３０３は、現像処理部３０１から取得したカラー画像データから被写体の顔情報を取得する。被写体の顔情報には、少なくともカラー画像データにおいて被写体の顔が占める領域を示す顔領域と、顔に含まれる目や口などのカラー画像データにおける位置を示す器官位置とに関する情報が含まれる。
【００２６】
法線補正部３０４は、顔検出部３０３から取得した顔情報と、現像部３０１から取得したカラー画像データとに基づいて、ＲＯＭ２０３に格納された顔法線モデルを補正する。
【００２７】
ライティング処理部３０５は、距離補正部３０２から取得した補正距離データと、法線補正部３０４から取得した補正法線データと、制御部２０６から取得した照明パラメータとに基づいて、カラー画像データに対してライティング処理を行う。ライティング処理により生成された補正画像データはＲＡＭ２０４やＰＣ／メディア２１３などの記憶装置に出力して記憶したり、表示部１０６へ出力して表示したりすることができる。
【００２８】
＜画像処理部の処理フロー＞
図４は本実施形態の撮像装置における画像処理部２０９の動作手順を示すフローチャートである。本実施形態において、画像処理部２０９は、カラー画像データから取得した顔情報と、ユーザ指示に基づき取得した被写体位置Ｐ０とを用いて、選択された被写体に対応する補正距離データを距離画像データから生成する。そして、被写体の顔情報と、あらかじめ保持していた顔法線モデルとに基づき、被写体の顔に合わせた法線画像データを生成する。その後、ユーザ操作によって設定された照明パラメータ、補正距離データ及び生成された法線画像データに基づき、カラー画像データに仮想光源を追加するライティング処理を行い補正画像データを生成する。以下、画像処理部２０９の動作手順の詳細について述べる。
【００２９】
ステップＳ４０１において、現像処理部３０１がＡ／Ｄ変換部２０８から取得したＲＡＷ画像データにデモザイク処理などの現像処理を施してカラー画像データを生成する。本実施形態におけるカラー画像データについて図５（ａ）を用いて説明する。カラー画像データＩ５０１の画素（ｉ，ｊ）にはＲＧＢ値が画素値として格納されているものとし、それぞれＩｒ（ｉ，ｊ）、Ｉｇ（ｉ，ｊ）、Ｉｂ（ｉ，ｊ）と表すものとする。なお、カラー画像データの取得方法はこれに限るものではない。例えば、ＲＡＭ２０４やＰＣ／メディア２１３に記憶されているＲＡＷ画像データを取得し現像処理部３０１がカラー画像データを生成してもよい。あるいは、既に現像処理が行われたカラー画像データをＲＡＭ２０４やＰＣ／メディア２１３から取得してもよい。そして、ステップＳ４０２において、現像部３０１はステップＳ４０１で取得したカラー画像データを表示部１０６に出力する。ユーザは、表示部１０６での表示に基づいて、ライティング補正処理を行うかどうかの判断を行う。
【００３０】
ステップＳ４０３において、制御部２０６が操作部１０７からの入力に従い、ライティング補正処理を行う指示が入力されているか否かの判定を行う。ライティング補正処理を行う指示が入力されていない場合はステップＳ４０４に進む。ライティング補正処理を行う指示が入力されている場合は、制御部２０６はライティング補正を行うことを示す信号を現像部３０１と距離補正部３０２とに出力してステップＳ４０６に進む。
【００３１】
ステップＳ４０４において、制御部２０６は、ユーザにより画像の出力指示が入力されているかどうかを判定する。ユーザにより画像の出力指示が入力されていると判定された場合は、ステップＳ４０５に進む。ユーザにより画像の出力指示が入力されていると判定されない場合は、ステップＳ４０３に戻る。
【００３２】
ステップＳ４０５において、制御部２０６は画像の出力指示を現像部３０１に出力し、現像部３０１は、カラー画像データをＰＣ／メディア２１３に出力して処理を終了する。
【００３３】
ステップＳ４０６において、距離補正部３０２が距離取得部１０５から距離画像データを取得する。本実施形態における距離画像データについて図５（ｂ）を用いて説明する。距離画像データＤ５０２の画素（ｉ，ｊ）には画素値として撮像装置から被写体までの距離値Ｄ（ｉ，ｊ）を格納しているものとする。なお、距離画像データの取得方法はこれに限るものではない。例えば、ＲＡＭ２０４やＰＣ／メディア２１３に記憶されている距離画像データを取得してもよい。
【００３４】
ステップＳ４０７において、現像部３０１は顔検出部３０３にカラー画像データを出力し、顔検出部３０３は入力されたカラー画像データから被写体の顔情報を取得する。本実施形態における顔情報について図６を用いて説明する。本実施形態における顔情報は、顔領域６０１および器官位置６０２を示す情報を含む。顔領域は、カラー画像データ５０１において顔が含まれる領域の画素の集合を表す。器官位置６０２は、顔領域内における目や口に対応する座標を表す。顔領域、器官位置の検出方法については既存のアルゴリズムが適用可能である。例として、テンプレートマッチングを用いたアルゴリズムや、Ｈａａｒ−Ｌｉｋｅ特徴量を用いたアルゴリズムなどが挙げられる。本実施形態では、テンプレートマッチングによって顔領域・器官位置を検出する。まず、カラー画像データに対してしきい値処理を行うことで肌色の領域を顔候補領域として抽出する。すなわち、様々な肌色に基づいて決定された画素値の範囲の中に画素値が収まる画素を、顔候補領域として抽出する。そして、様々な大きさの顔画像テンプレートを用いて顔候補領域に対してマッチング処理を行い、顔領域としての尤度を算出する。最後に、算出された尤度が所定の閾値以上である領域を顔領域として抽出する。また、顔検出部３０３は、抽出された顔領域に対して目、口画像テンプレートを用いて同様のテンプレートマッチングを行い、目および口に対応する座標を抽出する。以上の処理により顔領域６０１、器官位置６０２が取得される。顔検出部３０３は、取得した顔情報を法線補正部３０４に出力する。なお、検出する器官としては、目や口以外にも鼻や耳など別の器官を抽出してもよい。
【００３５】
ステップＳ４０８において、距離補正部３０２はユーザによって指定された被写体の位置を決定する。本実施形態において、ユーザは表示部１０６に設けられたタッチパネルや、操作ボタン１０７を用いて、ライティング補正処理を行いたい被写体の位置を指定する。距離補正部３０２は、ユーザ操作により入力された被写体選択位置Ｐ０’を制御部２０６から取得する。そして、取得した被写体選択位置Ｐ０’に基づいて、カラー画像データにおける指定された被写体位置Ｐ０を算出する。本実施形態では、タッチスクリーン機能を有した表示部１０６にカラー画像データを表示し、表示画面中の被写体をユーザがタッチする操作を受け付け、距離補正部３０２はユーザがタッチした位置を被写体選択位置Ｐ０’として制御部２０６から取得する。この際、被写体選択位置Ｐ０’は表示部１０６の画素位置に対応する。距離補正部３０２は、この表示部１０６上での画素位置を、カラー画像データの画素位置に変換することで被写体位置Ｐ０を算出する。
【００３６】
ステップＳ４０９において、距離補正部３０２が、ステップＳ４０８で取得した被写体位置Ｐ０と、現像部３０１から取得したカラー画像データとを用いて、ステップＳ４０６で取得した距離画像データから補正距離データを生成する。補正距離データ生成処理の詳細については後述する。距離補正部３０２は、生成した補正距離データをライティング部３０５に出力する。
【００３７】
ステップＳ４１０において、法線補正部３０４が顔検出部３０３から取得した顔情報と、現像部３０１から入力されたカラー画像データとに基づいて、被写体の顔に合わせた法線画像データである補正法線データを生成する。補正法線データ生成処理の詳細については後述する。法線補正部３０４は、生成した補正法線データをライティング部３０５に出力する。
【００３８】
ステップＳ４１１において、ライティング部３０５が、入力された補正距離データと補正法線データとに基づいて、カラー画像データに対して仮想的な光源を加えるなどのライティング処理を行い補正画像データを生成する。ライティング処理の詳細については後述する。
【００３９】
ステップＳ４１２において、ライティング部３０５が制御部２０６から、ライティング処理に用いる照明パラメータの設定の変更が入力されたかどうかを判定する。照明パラメータの設定が変更されたと判定された場合はステップＳ４１１に戻り再びライティング処理を行う。照明パラメータの設定が変更されていないと判定された場合はステップＳ４１３に進む。
【００４０】
ステップＳ４１３では、ライティング部３０５が、制御部２０６から画像の出力指示が入力されたかどうかを判定する。画像の出力指示が入力されたと判定された場合は、ステップＳ４１４に進む。画像の出力指示が入力されていないと判定された場合はステップＳ４１２に戻る。ステップＳ４１４では、ライティング処理部３０５が、生成された補正画像データをＰＣ／メディア２１３に出力して処理を終了する。以上が本実施形態の画像処理部２０９で行われる処理の流れである。以上の処理によれば、被写体に合わせて変形した顔法線モデルを用いてライティング処理を行うことができるので、被写体の姿勢や表情に合わせた自然な陰影を付与した画像を得ることができる。以下、画像処理部２０９の各構成部で行われる処理の詳細について説明する。
【００４１】
＜補正距離データ生成処理＞
ここでは、ステップＳ４０９で距離補正部３０２が行う補正距離データ生成処理について、図７に示すフローチャートを参照して説明する。ステップＳ７０１において、距離補正部３０２は、顔情報と被写体位置Ｐ０と距離画像データとに基づき被写体候補領域の抽出を行う。図８（ａ）（ｂ）を用いて本ステップの処理を説明する。まず、距離補正部３０２は、顔情報が示す顔領域の中から被写体位置Ｐ０に最も近い顔領域６０１を選択する。そして、選択された顔領域中の各画素の距離値を距離画像データから取得し、それらの平均値を顔領域の距離値として算出する。その後、距離補正部３０２は、顔領域の距離値との距離値の差が所定の閾値以下となる画素とそれ以外の画素とに分けた二値画像８０１を生成する。すなわち、ここで行われる処理は、選択された被写体からの距離が所定の範囲に含まれる被写体とそれ以外の被写体とを判別する処理である。ここで、二値画像８０１において、顔領域の距離値との距離値の差が閾値以下である画素を被写体候補領域８０２とする。なお、ここで行われる被写体候補領域の判別は上記の方法に限られず、単に選択された被写体位置からの距離値の差が所定の閾値以内となる領域を被写体候補領域として決定してもよい。
【００４２】
ステップＳ７０２において、距離補正部３０２は、二値画像８０１に対して小成分除去処理や穴埋め処理を施すことにより被写体候補領域に含まれる小さな連結成分を除去したり、穴を埋める整形処理を行う。小成分除去処理・穴埋め処理としては、モルフォロジ演算を用いた方法やラベリング処理を利用した方法などが適用可能である。ここではモルフォロジ演算を用いた方法を利用する。距離補正部３０２は小成分除去処理として、二値画像８０１に含まれる被写体候補領域に対してオープニング処理を行う。そして、その後の穴埋め処理としては、被写体候補領域に対してクロージング処理を行う。図８（ｃ）に本ステップによって得られる二値画像８０３の例を示す。
【００４３】
ステップＳ７０３において、距離補正部３０２は、ステップＳ７０２で整形処理が行われた二値画像８０３に対して平滑化処理を施し、多値の補正距離データ８０４（図８（ｄ））を生成する。例えば、二値画像８０３のうち被写体候補領域８０２に含まれる画素の画素値を２５５、その他の画素の画素値を０とした画像に対して平滑化処理を行うこと、一画素あたり８ビットの距離情報を有する補正距離データ８０４を生成する。このとき、画素値が大きいほど被写体までの距離が小さいものとする。
【００４４】
なお、平滑化処理としては、ガウシアンフィルタやカラー画像データの画素値を参照しつつ平滑化を行うジョイントバイラテラルフィルタ等が適用可能である。本実施形態では以下の式（１）で表されるジョイントバイラテラルフィルタを利用するものとする。
【００４５】
【数１】
2019205205.tif 000003
【００４６】
ｓは処理対象画素、Ωはｓの近傍領域、ｐはΩに含まれる画素、Ｉは平滑化を行う画像データ、Ｒは参照用画像データ、ｆはｐとｓと間の距離に基づく重み、ｇは画素値に基づく重みを表す。ｆはｓとｐとの距離が大きくなるほど重みが小さくなるように設定される。ｇは参照用画像の画素ｐと画素ｓの画素値の差が大きいほど重みが小さくなるように設定する。式（１）ではＹは画素ｐと画素ｓの画素値の輝度差を表すものとする。ステップＳ７０３では、Ｉとして補正距離データ８０３を、Ｒとしてカラー画像データを使用し平滑化処理を行う。カラー画像データを参照しつつ二値画像８０３に対してジョイントバイラテラルフィルタを利用することにより、カラー画像データ内の画素値の近い画素のみを利用して平滑化処理を施すことができる。これにより、被写体領域８０２の輪郭を、カラー画像データ中の被写体の輪郭に合わせつつ平滑化をおこなう事ができる。なお、平滑化処理の方法はこれに限るものではない。例えば、ｆの設定方法として近傍領域内で等しい重み与えても構わない。また、ｇの設定方法として輝度値の代わりに色差に基づいて重みを構わない。あるいは、画素値が一定値以内であれば重みを一定にするなどしても良い。
【００４７】
また、補正距離データ８０４を多値画像で取得することにより、ステップＳ４０９で行うライティング処理の際に被写体輪郭部の違和感を軽減することができる。以上の処理により、距離補正部３０２は、主に手前の被写体とそれ以外の背景に分割され、それぞれに対応する距離値が格納された補正距離データ８０４を取得することができる。なお、ここで行われるフィルタ処理はジョイントバイラテラルフィルタである必要はなく、カラー画像データの画素値を基準とするフィルタ処理であればどのようなものを利用してもよい。
【００４８】
＜法線画像データ生成処理＞
ここでは、ステップＳ４１０で法線生成部３０４が行う補正法線データ生成処理について説明する。本実施形態における補正法線データ生成処理は、ＲＯＭ２０３やＰＣ／メディア２１３に格納された顔法線モデルを、カラー画像データに基づいて補正する処理である。以下、補正法線データ生成処理の詳細について図９に示すフローチャートを参照して述べる。
【００４９】
ステップＳ９０１において、顔法線モデルをカラー画像データに合わせて変形する際の変形パラメータを算出する。本実施形態の顔法線情報の例を図１０（ａ）に示す。顔法線モデルには顔法線画像データ１００１と、それに対応する器官位置情報１００２が含まれている。顔法線画像データ１００１は、画素Ｎ（ｉ，ｊ）に画素値として顔の向きの法線ベクトル（Ｎｘ（ｉ，ｊ）、Ｎｙ（ｉ，ｊ）、Ｎｚ（ｉ，ｊ））を格納した画像データである。Ｎｘ（ｉ，ｊ）、Ｎｙ（ｉ，ｊ）、Ｎｚ（ｉ，ｊ）はそれぞれ画素（ｉ，ｊ）に格納された法線ベクトルの、互いに直交する３本の座標軸であるｘ軸、ｙ軸、ｚ軸方向の成分である。また、顔法線画像データ１００１に含まれる法線ベクトルは全て単位ベクトルとする。顔の領域に対応する画素は顔表面に垂直な方向のベクトルが法線ベクトルとして格納されており、顔以外の領域に対応する画素は撮像装置の光軸とは逆方向のベクトルが法線ベクトルとして格納されているものとする。本実施形態ではｚ軸を撮像装置の光軸と逆方向とし、顔以外の領域に対応する画素では法線ベクトルとして（０，０，１）が格納されるものとする。器官位置情報１００２は、顔法線画像データ１００１中の右目、左目、口の座標値を示す。
【００５０】
本ステップでは、法線補正部３０４が、顔法線モデルに対応する器官位置１００２と、カラー画像データの顔情報に含まれる器官位置６０２とから、カラー画像データ５０１と顔法線画像データ１００１との右目、左目、口の座標を対応づける。そして、法線補正部３０４は、顔法線画像データ１００１の器官位置１００２を器官位置６０２に合わせるための変形パラメータを算出する。変形パラメータとしては、アフィン変換に用いるためのアフィン変換係数を算出する。アフィン変換係数の算出法としては最小二乗法などが利用可能である。すなわち、器官位置１００２をアフィン変換した際の、器官位置６０２との誤差の事情輪が最小になるアフィン変換係数が、ここでの変換パラメータとして決定される。なお、本実施形態では顔法線画像データ１００１は画素値として法線ベクトルのｘ軸、ｙ軸、ｚ軸方向の成分を保有しているが、例えば３チャンネル８ｂｉｔカラー画像データの各チャンネルにこれらを割り当てても構わない。例えば、法線ベクトルの各軸方向の成分は−１．０から１．０の値をとるため、この間の値を０から２５５に割り当てることで法線ベクトルの情報を３チャンネル８ｂｉｔカラー画像データとして保有することができる。
【００５１】
ステップＳ９０２において、法線補正部３０４は、ステップＳ９０１で算出したアフィン変換係数を用いて顔法線画像データ１００１を変換し法線画像データ１００３を生成する。これにより、カラー画像データ５０１に含まれる顔領域に顔法線画像データ１００１をフィッティングした法線画像データ１００３が生成される。法線画像データ１００３は、画素Ｎ’（ｉ，ｊ）には画素値として法線ベクトル（Ｎ’ｘ（ｉ，ｊ）、Ｎ’ｙ（ｉ，ｊ）、Ｎ’ｚ（ｉ，ｊ））を格納した画像データである。法線画像データ１００３の法線ベクトルは、顔法線画像１００１に対応する領域（図１０（ｂ））については、顔法線画像１００１の各画素に格納された法線ベクトル（Ｎｘ，Ｎｙ，Ｎｚ）に基づいて算出される。そして、顔法線画像１００１に対応しない領域については、撮像装置の光軸と逆方向の法線ベクトル（０，０，１）が格納されるものとする。本ステップにより顔法線画像１００１中の顔領域をカラー画像データ中の顔領域に概ね合わせる事ができる。しかし、顔の輪郭など器官以外の位置は正確に合わせられない場合があるため、以降のステップでこれを補正する。
【００５２】
ステップＳ９０３において、法線補正部３０４は、法線画像データ１００３をｘ軸、ｙ軸、ｚ軸方向の成分毎に分け、ｘ軸成分法線データ１１０１、ｙ軸成分法線データ１１０２、ｚ軸成分法線データ１１０３の３つの画像データに分解する（図１１（ａ））。これにより、二値画像８０３と同様の平滑化処理が適用可能となる。本実施形態では、法線補正部３０４は、ステップＳ７０３と同様にジョイントバイラテラルフィルタを作用させる。
【００５３】
ステップＳ９０４において、法線補正部３０４は、ｘ軸成分法線データ１１０１に対して平滑化処理を行い、平滑化ｘ軸成分法線データ１１０４を生成する。平滑化処理としては、カラー画像データ５０１を参照画像とするジョイントバイラテラルフィルタを適用する。本処理によって得られる平滑化ｘ軸成分法線データ１１０４は各画素に平滑化されたｘ軸成分の値Ｎ”ｘが格納されているものとする。
【００５４】
ステップＳ９０５において、法線補正部３０４は、ｙ軸成分法線データ１１０２に対して平滑化処理を行い、平滑化ｙ軸成分法線データ１１０５を生成する。平滑化処理としては、カラー画像データ５０１を参照画像とするジョイントバイラテラルフィルタを適用する。本処理によって得られる平滑化ｙ軸成分法線データ１１０５は各画素に平滑化されたｙ軸成分の値Ｎ”ｙが格納されているものとする。
【００５５】
ステップＳ９０６において、法線補正部３０４は、ｚ軸成分法線データ１１０３に対して平滑化処理を行い、平滑化ｚ軸成分法線データ１１０６を生成する。平滑化処理としては、カラー画像データ５０１を参照画像とするジョイントバイラテラルフィルタを適用する。本処理によって得られる平滑化ｚ軸成分法線データ１１０６は各画素に平滑化されたｚ軸成分の値Ｎ”ｚが格納されているものとする。
上記ステップＳ９０４からステップＳ９０６により、法線画像データの１００３中の顔の輪郭を、カラー画像データ中の被写体の輪郭に合わせる事ができる。
【００５６】
ステップＳ９０７において、法線補正部３０４は平滑化ｘ軸成分法線データ１１０４、平滑化ｙ軸成分法線データ１１０５、平滑化ｚ軸成分法線データ１１０６を統合し、平滑化法線画像データ１１０７を生成する（図１１（ｂ））。平滑化法線画像データ１１０７は画素（ｉ，ｊ）に法線ベクトル（Ｎ”ｘ（ｉ，ｊ）、Ｎ”ｙ（ｉ，ｊ）、Ｎ”ｚ（ｉ，ｊ））を格納した画像データである。
【００５７】
ステップＳ９０８において、平滑化法線画像データ１１０７の各画素に格納された法線ベクトルを単位ベクトルになるように正規化する。ステップＳ９０４からステップＳ９０６では、各軸成分ごとに平滑化処理を行ったため、画素によって格納されている法線ベクトルの大きさが異なる。これを補正するため、本ステップでは式（２）のように法線ベクトルの大きさが１になるように正規化を行う。
【００５８】
【数２】
2019205205.tif 000004
【００５９】
これにより、画素（ｉ，ｊ）に大きさ１の法線ベクトル（Ｎ’’’ｘ（ｉ，ｊ）、Ｎ’’’ｙ（ｉ，ｊ）、Ｎ’’’ｚ（ｉ，ｊ））を格納した補正法線データが取得される。
【００６０】
以上により、法線補正部３０４は補正法線データを取得する。以上の処理によれば、被写体の顔に合わせて顔法線モデルを補正することができるので、ライティング処理において被写体の顔に対して自然な陰影を付与することができる。また、上記のように各座標軸成分について独立に平滑化処理を行うことで、法線方向が平滑化処理により大きく変わることを防ぐことができる。
【００６１】
＜ライティング処理＞
ここでは、ステップＳ４１１で行われるライティング処理について説明する。本実施形態におけるライティング処理は、補正距離データ、補正法線データに基づき、ユーザ操作によって設定された照明パラメータに応じてカラー画像データに対して仮想光源を加える処理を行って補正画像を生成する処理である。以下、ライティング処理の詳細について図１２に示すフローチャートを参照して説明する。
【００６２】
ステップＳ１２０１において、ライティング部３０５が制御部２０６からユーザによって設定された、ライティング処理に用いる照明パラメータを取得する。本実施形態では、ユーザは操作部１０７の操作により照明パラメータとして仮想照明の位置Ｑ、姿勢Ｕ、強度α、光源色Ｌを設定する。
【００６３】
ステップＳ１２０２において、ライティング部３０５が補正距離データ８０４、法法線画像データ１００３、ステップＳ１１０１で取得された照明パラメータに基づいて、カラー画像データ５０１の画素値の補正を行う。本実施形態では式（３）に従ってカラー画像データの画素値を補正し、補正画像データをＩ’を生成するものとする。
【００６４】
【数３】
2019205205.tif 000005
【００６５】
ここで、Ｉ’ｒ、Ｉ’ｇ、Ｉ’ｂは補正画像データＩ’の画素値、Ｌｒｍ、Ｌｇｍ、Ｌｂｍはｍ番目の照明の色、ｋｍはｍ番目の照明に対する画素値の補正度合いを表す。ｋｍは照明の明るさα、位置Ｑ、姿勢Ｕおよび画素（ｘ、ｙ）に対応する距離値、法線ベクトルＶに基づいて決定する。例えば式（４）のように求めることができる。
【００６６】
【数４】
2019205205.tif 000006
【００６７】
式（４）について図１３を用いて説明する。ｔは仮想光源による補正度合いを調整する補正係数である。本実施形態ではｔ＝１とする。αは照明の明るさを表す変数である。Ｑは光源の位置を表すベクトルである。Ｐは画素（ｉ、ｊ）の三次元的な位置を表すベクトルであり、補正距離データ８０４から下記のように算出される。まず、補正距離データ８０４の画素値に基づき、撮像装置１０１から各画素に対応する被写体位置までの仮想的な距離値を算出する。この際、補正距離データ８０４において画素値の大きな画素ほど撮像装置１０１からの距離が小さいものとする。続いて、ライティング部３０５は各画素に対応する仮想的な距離値と、撮像装置１０１の画角とカラー画像データ５０１の画像サイズなどに基づき、画素（ｉ、ｊ）の三次元的な位置Ｐを算出する。Ｗは画素（ｉ、ｊ）の位置Ｐから光源の位置Ｑまでの距離が大きくなるに従い大きな値を返す関数である。ρはＱからＰ（ｉ，ｊ）に向かうベクトルと、照明の姿勢Ｕのなす角度を表す。Ｋはρが小さいほど大きな値となるような関数である。Ｎ（ｉ，ｊ）は画素（ｉ、ｊ）に対応する法線ベクトル、Ｖ（ｉ，ｊ）はＱからＰ（ｉ，ｊ）に向かう方向を表す単位ベクトルである。本実施形態のように補正画像を生成することにより、照明の位置と被写体の形状に応じた明るさの補正が可能である。以上のように、仮想光源からの距離に応じて画素値を加算するライティング処理が行われる。以上の処理により、仮想光源に近く、仮想光源から画素（ｉ，ｊ）に向かうベクトルと法線ベクトルとのなす角が小さい画素ほど明るくなるように補正することができる。これにより、図１４に示すように、仮想照明により被写体を照らしたかのような補正画像１４０１を得る事ができる。
【００６８】
ステップＳ１２０３において、ライティング部３０５は、画素値の補正を行った補正画像データを表示部１０６に表示して処理を終了する。ユーザは、ここで表示部１０６に表示された補正画像データを見て、照明パラメータの変更指示や画像の出力指示を入力する。
【００６９】
以上の処理によれば、被写体に合わせて変形した顔法線モデルを用いてライティング処理を行うことができるので、被写体の姿勢や表情に合わせた自然な陰影を付与した画像を得ることができる。
【００７０】
［実施形態２］
実施形態１では被写体の画素値によらずにカラー画像データの画素値を補正する例について生成した。実施形態２では、被写体の輝度値に基づいて補正量を制御する方法について説明する。被写体の輝度値に基づいて補正量を制御することにより、あらかじめ輝度値の高い領域を補正した場合に発生する白とびや、暗部を補正した際に発生するノイズ増加を抑制することができる。
【００７１】
本実施形態の撮像装置１０１の構成と、基本的な処理の流れは実施形態１と同様であるので説明を省略する。実施形態２において実施形態１と異なる点は、ライティング処理部３０５で行われるライティング処理において、式４に示す補正係数ｔが各画素の輝度値によって決定される点である。
【００７２】
本実施形態における補正係数ｔの決定方法の例を図１５を参照して説明する。図１５（ａ）では、あらかじめ設定したしきい値ｔｈ１、ｔｈ２に基づいて補正係数ｔが決定される例を示している。この例では、画素の輝度値Ｙが０≦Ｙ＜ｔｈ１の区間ではｔ＝１、ｔｈ１≦Ｙ＜ｔｈ２の区間ではｔが単調に減少、ｔｈ２≦Ｙの区間ではｔ＝０となるように補正係数ｔが決定される。このように補正係数ｔを決定すると、輝度値の大きな画素ほど仮想光源による補正度合いを小さくすることができる。そのため、仮想光源の影響により輝度値の高い画素が白とびするのを抑制する効果が得られる。なお、図１５（ａ）では、ｔｈ１≦Ｙ＜ｔｈ２の区間でｔがＹの一次関数となるように直線的に減少させているが、減少のさせかたはこれに限らない。ｔをＹの一次関数とした場合、補正画像Ｉ’はカラー画像データＩの画素値の二次関数として表現される。この場合、ｔｈ１≦Ｙ＜ｔｈ２の区間に補正画像の画素値が極大となり、階調反転が発生してしまう場合がある。これを抑制する手段として、ｔｈ１≦Ｙ＜ｔｈ２の区間における減少を二次曲線や三角関数等を利用して表現してもよい。こうすることによって、補正画像における階調反転の発生を抑制することができる。あるいは、図１５（ｂ）に示すように補正係数ｔを決めることもできる。図１５（ｂ）では、あらかじめ設定したしきい値ｔｈ１、ｔｈ２、ｔｈ３によって決定される補正係数の例を示している。この例では、輝度値Ｙが０≦Ｙ＜ｔｈ３の区間ではｔが単調増加、ｔｈ３≦Ｙ＜ｔｈ１の区間ではｔ＝１、ｔｈ１≦Ｙ＜ｔｈ２の区間ではｔが単調減少、ｔｈ２≦Ｙの区間ではｔ＝０となるように補正係数ｔが決定される。図１５（ｂ）のように補正係数ｔを設定することにより、白とびに加え輝度値の小さい暗部のノイズが、ライティング処理により強調されることを抑制することができる。また、輝度値Ｙが０≦Ｙ＜ｔｈ３の区間における増加や、ｔｈ１≦Ｙ＜ｔｈ２の区間における減少を二次曲線や三角関数等を利用して表現する方法することで、図１５（ａ）の場合と同様に、階調反転の発生を抑制することができる。
【００７３】
以上のように、本実施形態の処理によれば、あらかじめ輝度値の高い領域を補正した場合に発生する白とびや、暗部を補正した際に発生するノイズ増加を抑制することができる。
【００７４】
［実施形態３］
実施形態１、実施形態２ではシーンに対して仮想光源を付与することにより暗く写っている被写体を明るくするようなライティング処理を行う例について説明した。実施形態３では、ストロボの発光の影響などで平坦に写ってしまった被写体に対して影を付与することにより、被写体の立体感を強調する方法について説明する。
【００７５】
本実施形態の撮像装置１０１の構成と、基本的な処理の流れは実施形態１と同様であるので説明を省略する。実施形態３において実施形態１と異なる点は、ステップＳ１２０２で行われる画素値補正の処理が異なる点である。以下、本実施形態のステップＳ１２０２で行われる処理について説明する。本実施形態ノステップＳ１２０２では、実施形態１とは異なり、以下の式（５）に基づいて画素値の補正が行われる。
【００７６】
【数５】
2019205205.tif 000007
【００７７】
式（３）との違いは、ｋ’ｍに応じてカラー画像データの画素値が小さくなるように画素値を補正している点である。すなわち、本実施形態で行われるのは、仮想光源からの距離に応じて画素値を減算するライティング処理である。ｋ’ｍは照明の明るさα、位置Ｑ、姿勢Ｕおよび画素（ｘ、ｙ）に対応する距離値、法線ベクトルＶに基づいて決定する。例えば式（６）のように求めることができる。
【００７８】
【数６】
2019205205.tif 000008
【００７９】
式（４）との違いは、主に法線ベクトルＮ（ｉ，ｊ）とＶ（ｉ，ｊ）のなす角の影響である。式（４）では法線ベクトルＮが仮想光源方向を向いているほどｋの値は大きくなったが、式（６）では逆に法線ベクトルＮが仮想光源方向を向いているほどｋの値は小さくなる。つまり、式（６）により、仮想照明に近く法線ベクトルＮが仮想光源方向を向いていない画素ほど強い影を付与することができる。これにより、図１６に示す補正画像１６０１のように、法線画像データに基づき顔の頬や鼻にのみ影を付与することが可能となる。
【００８０】
以上の処理によれば、ストロボの発光などの影響により平坦に写ってしまった被写体に対して立体感が出るように影を付与する補正を行うことができる。
【００８１】
［実施形態４］
上記の実施形態では、シーンに仮想的な光源を付与するリライティング処理と、画像に影を付与するリライティング処理とについて説明した。実施形態４では、上記の２つの処理を撮影条件に基づいて切り替える方法について説明する。図１７は、実施形態４における画像処理部２０９の動作手順を示すフローチャートである。実施形態１と比較し、新たにステップＳ１７０１とステップＳ１７０２とが加わっている点が異なる。
【００８２】
ステップＳ１７０１では、ライティング部３０５が、実光源に関する情報を取得する。ここで、実光源とは被写体を撮像する空間において実際に存在する光源のことである。本実施形態では、制御部２０６がユーザによるストロボ使用の指示や、ストロボ１０４からの入力信号に基づいてストロボ発光の有無を判定し、画像データの撮像時にストロボが用いられたかどうかをライティング部３０５に出力するとする。画像データの撮像時にストロボが用いられたと判定された場合は所定の位置Ｑ’に配置されたストロボが発光しているものとして取得される。なお、実光源の情報の取得方法はこれに限られず、例えば選択された被写体の顔領域の画素の平均輝度を求め、平均輝度が閾値以上である場合には撮像時にストロボが発光されたものとして判定してもよい。
【００８３】
ステップＳ１７０２では、ライティング部３０５が、ステップＳ１７０１で取得された実光源情報に基づいて、ライティング処理のモードを設定する。このステップでは、ステップＳ１７０１で、撮像時にストロボが発光されていないと判定された場合は、実施形態１に示す仮想光源を付与するライティングモードが設定される。そして、ステップＳ１７０１で、撮像時にストロボが発光されていると判定された場合は、実施形態３に示す影を付与するライティングモードが設定される。
【００８４】
そして、ステップＳ４１１では、ライティング部３０５が、ステップＳ１７０２で設定されたライティングモードに対応するライティング処理をカラー画像データに対して行い、補正画像データを生成する。
【００８５】
以上が本実施形態における処理の流れである。以上の処理によれば、被写体を撮像した時の光源の状態に応じて、適切なライティング処理を選択することができる。
【００８６】
なお、本実施形態の処理は上記に限られるものではない。例えば、ステップＳ１７０１において実光源情報としてストロボ光の位置Ｑ’を取得し、ステップＳ４１１のライティング処理において、照明パラメータの初期値としてストロボ光の位置Ｑ’を入力するようにしてもよい。また、カラー画像データにおいて輝度が所定の閾値よりも大きな領域にはストロボ以外の実光源が存在しているとし、検出された実光源が被写体よりも撮像装置１０１に近い位置に存在する場合に、ライティングモードを影付与モードとするようにしてもよい。また、カラー画像データから実光源の位置を取得して、照明パラメータの初期値に入力してもよい。
【００８７】
＜その他の実施形態＞
本発明の実施形態は上記に示す実施形態に限定されるものではない。例えば、ライティング処理において法線画像データを用いずに、被写体の距離情報を直接用いてライティング処理を行うようにしてもよい。この場合は、上記の式とは異なる計算式を用いる必要があるため処理が煩雑になるが、本発明と同様の効果を得ることができる。また、その際に顔法線モデルの代わりに所定の顔の３Ｄモデルを保持しておいてもよい。すなわち、本発明の実施において、被写体の３次元形状を示す情報を広く用いることが可能である。また、顔法線モデルの代わりに所定の顔の３Ｄモデルを保持しておき、変形した３Ｄモデルに基づいて法線情報を取得するようにしてもよい。
【００８８】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８９】
３０１  現像部
３０２  距離補正部
３０３  顔検出部
３０４  法線補正部
３０５  ライティング部
【図１】
2019205205.tif 000009
【図２】
2019205205.tif 000010
【図３】
2019205205.tif 000011
【図４】
2019205205.tif 000012
【図５】
2019205205.tif 000013
【図６】
2019205205.tif 000014
【図７】
2019205205.tif 000015
【図８】
2019205205.tif 000016
【図９】
2019205205.tif 000017
【図１０】
2019205205.tif 000018
【図１１】
2019205205.tif 000019
【図１２】
2019205205.tif 000020
【図１３】
2019205205.tif 000021
【図１４】
2019205205.tif 000022
【図１５】
2019205205.tif 000023
【図１６】
2019205205.tif 000024
【図１７】
2019205205.tif 000025