(57)【要約】【課題】より好適なホワイトバランス調整を可能とする。【解決手段】画像処理装置は、入力画像を取得する第１取得手段と、入力画像における代表点と代表点のホワイトバランス係数とを決定する決定手段と、代表点を含む面の傾きを表す第１情報と入力画像における注目画素を含む面の傾きを表す第２情報とを取得する第２取得手段と、第１情報と第２情報とホワイトバランス係数とに基づいて注目画素におけるホワイトバランスを調整する調整手段と、を有する。【選択図】図３
2018182718.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を取得する第１取得手段と、
前記入力画像における代表点と該代表点のホワイトバランス係数とを決定する決定手段と、
前記代表点を含む面の傾きを表す第１情報と前記入力画像における注目画素を含む面の傾きを表す第２情報とを取得する第２取得手段と、
前記第１情報と前記第２情報と前記ホワイトバランス係数とに基づいて、前記注目画素におけるホワイトバランスを調整する調整手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記第１情報は、前記代表点における被写体の法線情報であり、
前記第２情報は、前記注目画素における被写体の法線情報である
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記代表点を決定するための情報をユーザから受け付ける受付手段を有する
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記受付手段は、法線ベクトルの指定をユーザから受け付け、
前記決定手段は、前記入力画像に含まれる画素のうち前記法線ベクトルに対応する画素を前記代表点として決定する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記第１取得手段は、前記入力画像に含まれる各画素の法線情報を更に取得し、
前記画像処理装置は、前記入力画像に含まれる各画素の法線情報に基づいて前記入力画像を領域分割する分割手段を更に有し、
前記調整手段は、前記分割手段により分割された各領域に対してホワイトバランスを調整する
ことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記第１取得手段は、前記入力画像に含まれる各画素における被写体に関する法線情報を更に取得し、
前記調整手段は、前記法線情報に基づいて前記入力画像に含まれる各画素の法線と前記代表点における法線との類似度を算出し、該入力画像に含まれる各画素に対するホワイトバランスを、前記類似度を重み係数とした前記ホワイトバランス係数に基づく補間演算により導出する
ことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項７】
前記決定手段は、前記入力画像における複数の代表点と該複数の代表点に対応するホワイトバランス係数とを決定し、
前記第１取得手段は、前記入力画像に含まれる各画素における被写体に関する法線情報以外の特徴量情報を更に取得し、
前記調整手段は、法線が略一致しかつホワイトバランス係数が異なる代表点が複数存在する場合に、該ホワイトバランス係数に前記法線情報と前記特徴量情報とに基づいた重み係数を乗ずることにより前記入力画像に含まれる各画素に対するホワイトバランスを調整する
ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記調整手段は、前記法線情報に基づいて前記入力画像に含まれる各画素の法線と前記代表点の法線との第１の類似度を算出し、前記特徴量情報に基づいて前記入力画像に含まれる各画素の特徴量と前記代表点の特徴量との第２の類似度を算出し、前記ホワイトバランス係数に前記第１の類似度と前記第２の類似度とに基づいた重み係数を乗ずることにより前記入力画像に含まれる各画素に対するホワイトバランスを調整する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記第１取得手段は、前記入力画像に含まれる被写体を該入力画像とは異なる視点から撮影した補助入力画像を更に取得し、
前記第２取得手段は、前記入力画像と前記補助入力画像とに基づいて、前記第１情報と前記第２情報とを決定する
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
前記第１取得手段は、前記入力画像に含まれる各画素における被写体の距離情報を更に取得し、
前記第２取得手段は、前記距離情報に基づいて、前記第１情報と前記第２情報とを決定する
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１１】
前記第１取得手段は、前記入力画像に含まれる被写体の３Ｄモデルを更に取得し、
前記画像処理装置は、前記入力画像おいてホワイトバランスを調整する調整領域を決定する領域決定手段を更に有し、
前記領域決定手段は、前記３Ｄモデルに基づいて前記代表点の法線と略一致する法線を有すると判定された画素の領域を前記調整領域として決定する
ことを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１２】
画像処理装置の制御方法であって、
入力画像を取得する第１取得工程と、
前記入力画像における代表点と、該代表点のホワイトバランス係数と、を決定する決定工程と、
前記代表点を含む面の傾きを表す第１情報と、前記入力画像における注目画素を含む面の傾きを表す第２情報と、を取得する第２取得工程と、
前記第１情報と前記第２情報と前記ホワイトバランス係数とに基づいて、前記注目画素におけるホワイトバランスを調整する調整工程と、
を含むことを特徴とする制御方法。
【請求項１３】
コンピュータを、請求項１乃至１１の何れか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像のホワイトバランスを調整する技術に関するものである。
【背景技術】
【０００２】
分光分布の異なる複数の光源下で撮像された画像に対してホワイトバランス調整処理を行う技術として、特許文献１では、撮像画像を複数の領域に分割し領域ごとにホワイトバランスを調整する技術が開示されている。より具体的には、ユーザが撮像画像を手動で領域分割し、領域ごとに照らしている光源の色温度を指定する手法が開示されている。また、撮像装置に対する被写体の距離情報に基づき、撮像画像をストロボが届く領域と届かない領域とに分割し領域ごとにホワイトバランスを調整する手法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−５２４２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の技術においては、手動で領域分割を行う場合、ユーザは、被写体がどのように照らされているかを知識や経験に基づいて想像しながら領域分割する必要があり、手間がかかるという課題がある。また、距離情報を用いて領域分割を行う場合、ストロボの発光方向や発光量が想定と異なる場合に適切な領域分割が困難となるという課題がある。
【０００５】
本発明はこのような問題を鑑みてなされたものであり、より好適なホワイトバランス調整を可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述の問題点を解決するため、本発明に係る画像処理装置は以下の構成を備える。すなわち、画像処理装置は、
入力画像を取得する第１取得手段と、
前記入力画像における代表点と、該代表点のホワイトバランス係数と、を決定する決定手段と、
前記代表点を含む面の傾きを表す第１情報と、前記入力画像における注目画素を含む面の傾きを表す第２情報と、を取得する第２取得手段と、
前記第１情報と前記第２情報と前記ホワイトバランス係数とに基づいて、前記注目画素におけるホワイトバランスを調整する調整手段と、
を有する。
【発明の効果】
【０００７】
本発明によれば、より好適なホワイトバランス調整を可能とする技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態に係る画像処理装置のハードウェア構成を示す図である。
【図２】第１実施形態に係る画像処理装置の機能ブロック図である。
【図３】第１実施形態における一連の処理のフローチャートである。
【図４】入力画像および法線情報の例を示す図である。
【図５】ＵＩの例を示す図である。
【図６】調整パラメータ設定処理の詳細フローチャートである。
【図７】座標系を説明する図である。
【図８】法線ベクトルの類似度を説明する図である。
【図９】調整パラメータに基づく補間の例を示す図である。
【図１０】第２実施形態における一連の処理のフローチャートである。
【図１１】代表点配置の例を示す図である。
【図１２】代表法線ベクトルの例を示す図である。
【図１３】入力画像および法線情報、距離情報の例を示す図である。
【図１４】第３実施形態における一連の処理のフローチャートである。
【図１５】ＵＩの例を示す図である。
【図１６】第４実施形態における一連の処理のフローチャートである。
【図１７】標準顔モデルの例を示す図である。
【図１８】第５実施形態における一連の処理のフローチャートである。
【図１９】入力画像データの例を示す図である。
【図２０】ＵＩの例を示す図である。
【図２１】再調整領域設定処理の詳細フローチャートである。
【図２２】第６実施形態における一連の処理のフローチャートである。
【図２３】ＵＩの例を示す図である。
【図２４】第７実施形態における一連の処理のフローチャートである。
【図２５】第８実施形態における一連の処理のフローチャートである。
【発明を実施するための形態】
【０００９】
以下に、図面を参照して、この発明の実施の形態の一例を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１０】
（第１実施形態）
本発明に係る画像処理装置の第１実施形態として、ホワイトバランスの調整パラメータを決定する形態を例に挙げて以下に説明する。ここでは、撮像画像上における座標とホワイトバランス調整パラメータとを与えられた複数の代表点を設定し、代表点と同じ法線方向を向いた面は代表点と共通の光で照らされていると見なして各画素に対するホワイトバランス調整パラメータ（ホワイトバランス係数）を決定する。なお、以下の説明では調整パラメータとして色温度を用いる。
【００１１】
＜装置構成＞
図１は、第１実施形態に係る画像処理装置１００のハードウェア構成を示す図である。画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、ＨＤＤ１０４、ＨＤＤＩ／Ｆ１０５、入力Ｉ／Ｆ１０６、出力Ｉ／Ｆ１０７、システムバス１０８で構成される。
【００１２】
ＣＰＵ１０１は、ＲＡＭ１０２をワークメモリとして、ＲＯＭ１０３及びハードディスクドライブ（ＨＤＤ）１０４に格納されたプログラムを実行し、システムバス１０８を介して後述する各部を制御する。ＨＤＤインタフェイス（Ｉ／Ｆ）１０５は、ＨＤＤ１０４や光ディスクドライブなどの二次記憶装置を接続する、例えばシリアルＡＴＡ（ＳＡＴＡ）等のインタフェイスである。ＣＰＵ１０１は、ＨＤＤＩ／Ｆ１０５を介して、ＨＤＤ１０４からのデータ読み出し、およびＨＤＤ１０４へのデータ書き込みが可能である。
【００１３】
さらに、ＣＰＵ１０１は、ＨＤＤ１０４に格納されたデータをＲＡＭ１０２に展開し、同様に、ＲＡＭ１０２に展開されたデータをＨＤＤ１０４に保存することが可能である。そしてＣＰＵ１０１は、ＲＡＭ１０２に展開したデータをプログラムとみなし、実行することができる。入力インタフェイス（Ｉ／Ｆ）１０６は、マウス・キーボード１０９等の入力デバイスを接続する、例えばＵＳＢ等のシリアルバスインタフェイスである。ＣＰＵ１０１は、入力Ｉ／Ｆ１０６を介してマウス・キーボード１０９から各種信号を読み込むことが可能である。出力インタフェイス（Ｉ／Ｆ）１０７は、ディスプレイ１１０等の表示デバイスを接続する、例えばＤＶＩ等の映像出力インタフェイスである。ＣＰＵ１０１は、出力インタフェイス１０７を介してディスプレイ１１０にデータを送り、表示を実行させることができる。なお、ＵＳＢやＩＥＥＥ１３９４等の双方向通信インタフェイスを利用すれば、入力Ｉ／Ｆ１０６と出力Ｉ／Ｆ１０７を一つにまとめることができる。
【００１４】
図２は、画像処理装置１００の機能ブロック図である。画像データ取得部２０１は、ＨＤＤ１０４からＨＤＤＩ／Ｆ１０５を介して、あらかじめ記憶されている入力画像データと被写体の法線情報を取得する。あるいは、デジタルカメラや３Ｄスキャナなど図示しない撮像装置を画像処理装置１００に接続し、そこから取得してもよい。ここでは、法線情報として法線マップを用いる。
【００１５】
図４は、入力画像および法線情報の例を示す図である。図４（ａ）に示す入力画像データＩにおいて、座標（ｉ，ｊ）には、被写体のＲＧＢ値Ｉr(i,j)、Ｉg(i,j)、Ｉb(i,j)が画素値としてＩ(i,j)に格納されている。また、図４（ｂ）に示す法線マップＮにおいて、座標（ｉ，ｊ）には、被写体に関する単位法線ベクトルの各要素の値が画素値として格納されている。具体的には、入力画像データＩの座標（ｉ，ｊ）に対応する法線ベクトルのｘｙｚ成分値がＮ(i,j)として格納されている。すなわち、画素値Ｎ(i,j)＝（Ｎx(i,j)、Ｎy(i,j)、Ｎz(i,j)）である。なお、ここでは、ｘｙｚ座標を入力画像データにおける座標を基準として設定している。具体的には、入力画像データの水平方向をｘ軸、垂直方向をｙ軸、奥行き方向（すなわち撮像装置の光軸方向）をｚ軸としている。取得された入力画像データと法線マップはパラメータ設定部２０２へ送られる。
【００１６】
パラメータ設定部２０２は、代表点に関する設定を行うためのＵＩを、出力Ｉ／Ｆ１０７を介してディスプレイ１１０に表示する。また、このＵＩ上においてユーザに指示された値を入力Ｉ／Ｆ１０６を介して受付け、代表点の入力画像上における座標と、当該代表点に対する調整パラメータを設定する。そして、設定した代表点の座標および調整パラメータと法線マップとを用いて、入力画像中の各画素に対する調整パラメータを決定する。これらの処理の詳細は後述する。決定された調整パラメータは、色処理部２０３へ送られる。
【００１７】
色処理部２０３は、調整パラメータを用いて入力画像データのホワイトバランスを調整し、出力画像データを生成する。生成された出力画像データは、ディスプレイ１１１へ送られて表示される。
【００１８】
＜装置の動作＞
図３は、第１実施形態における一連の処理のフローチャートである。この一連の処理は、以下に示す手順を記述したコンピュータ実行可能なプログラムを、ＲＯＭ１０３あるいはＨＤＤ１０４からＲＡＭ１０２上に読み込んだ後に、ＣＰＵ１０１によって該プログラムを実行することによって実現される。
【００１９】
ステップＳ３０１では、画像データ取得部２０１は、入力画像データとこれに対応する法線情報である法線マップを、ＨＤＤ１０４または撮像装置から取得する。ステップＳ３０２では、パラメータ設定部２０２は、Ｓ３０１で取得した入力画像データと、代表点に関する設定を行うためのＵＩとをディスプレイ１１０へ出力して表示する。
【００２０】
図５は、代表点に関する設定を行うためのＵＩの例を示す図である。画像表示領域５０１は、入力画像データが表示される領域である。ユーザは表示された入力画像データを参照しながら、ＵＩを介して代表点の設定を行うことができる。
【００２１】
ステップＳ３０３では、パラメータ設定部２０２は、Ｓ３０２で表示したＵＩ上においてユーザに指示された値を取得し、代表点の座標および調整パラメータを設定する。図５の例では、「追加」ボタン５０２を押下すると、新規にＩＤを割り当てられた代表点が１つ生成され、当該ＩＤがＩＤ選択リスト５０３にて選択される。ユーザにより座標設定欄５０４に座標値が入力されると、選択リスト５０３で選択されている代表点の座標としてその値が設定される。また、ユーザにより調整パラメータ設定欄５０５に色温度の値が入力されると、選択されている代表点に対する調整パラメータ（代表パラメータ）として色温度が設定される。既存の代表点の座標や調整パラメータを変更する場合は、当該代表点のＩＤをＩＤ選択リスト５０３で選択した状態で、座標設定欄５０４や調整パラメータ設定欄５０５に新たな値を入力する。なお、座標値は数値を直接入力する他、画像表示領域５０１内の１点をマウスでクリックすることにより、その点に対応する画像上での座標値（ｉ，ｊ）を取得して座標設定欄５０４に入力してもよい。また、色温度は数値を直接入力する他、スライダ５０６を介して入力してもよいし、プリセット光源リスト５０７を介して選択された光源に対応する値を入力してもよい。以下、生成された代表点の総数をＫ、代表点に割り振られたＩＤをｋ（ｋ＝１，２，…，Ｋ）として説明する。
【００２２】
ステップＳ３０４では、パラメータ設定部２０２は、Ｓ３０３で設定した各代表点Ｓk（ｋ＝１，２，…，Ｋ）の座標（ｉsk，ｊsk）に対応する法線ベクトルＮ(isk,jsk)を法線マップから取得し、これを代表法線ベクトルＮskとする。ここで、Ｎ(isk,jsk)＝（Ｎx(isk,jsk)，Ｎy(isk,jsk)，Ｎz(isk,jsk)）である。なお、座標（ｉsk，ｊsk）の近傍画素に対応する法線ベクトルの平均値や中央値を代表法線ベクトルＮskとしてもよい。
【００２３】
ステップＳ３０５では、パラメータ設定部２０２は、入力画像を構成する画素のうち、調整パラメータが設定されていないものを１つ選択し、注目画素Ｐ(ip,jp)とする。ステップＳ３０６では、パラメータ設定部２０２は、Ｓ３０５で選択した注目画素Ｐの座標（ｉp，ｊp）に対応する法線ベクトルＮp＝（Ｎx(ip,jp)，Ｎy(ip,jp)，Ｎz(ip,jp)）を法線マップから取得する。ステップＳ３０７では、パラメータ設定部２０２は、Ｓ３０５で選択した注目画素に対して調整パラメータを設定する。
【００２４】
図６は、調整パラメータ設定処理（Ｓ３０７）の詳細フローチャートである。以下の説明では、ｋ＝２に関して説明するが、Ｓ６０２〜６０５においてｋ＝３〜Ｋに関して同様の処理を行う。
【００２５】
ステップＳ６０１では、パラメータ設定部２０２は、代表点Ｓ1の色温度Ｔs1を注目画素Ｐの暫定色温度Ｔ’pとして記憶する。また、代表法線ベクトルＮs1を注目画素Ｐの中間法線ベクトルＮ’pとして記憶する。
【００２６】
ステップＳ６０２では、パラメータ設定部２０２は、ｋ番目の代表点と注目画素との法線ベクトルの類似度αを算出する。具体的には、注目画素に対応する法線ベクトルＮp、代表法線ベクトルＮskおよび中間法線ベクトルＮ’pを極座標表示に変換する。各法線ベクトルの直交座標（ｘ，ｙ，ｚ）から極座標（ｒ，θ，φ）への変換は、以下の数式（１）に従う。
【００２７】
【数１】
2018182718.tif 000003
【００２８】
図７は、座標系を説明する図である。具体的には、直交座標系のパラメータであるｘ，ｙ，ｚと、極座標系のパラメータであるｒ，θ，φとの関係を示している。この図の例では、入力画像データ中に写っている（すなわち、撮像装置の方向を向いている）被写体の法線ベクトルのｚ成分は負の値をとる。また、φはπから２πまでの範囲の値をとり、θは０からπまでの範囲の値をとる。なお、ここでは法線マップには単位法線ベクトルを格納しているため、数式（１）よりｒの値は常に”１”となる。
【００２９】
次に、極座標で表された代表法線ベクトルＮsk、注目画素の法線ベクトルＮp、中間法線ベクトルＮ’pを用いて類似度αを算出する。
【００３０】
図８は、法線ベクトルの類似度αを説明する図である。図８は、ｋ＝２の時の各法線ベクトルをθ−φ平面上にプロットした例であり、直線Ｌは点Ｎ’pと点Ｎskを通る直線、点Ｍは点Ｎpから直線Ｌへ下ろした垂線の足である。ここでは、図８における点Ｎ’pから点Ｍまでの距離ｄを点Ｎ’pから点Ｎskまでの距離Ｄで正規化する。そして、その値を注目画素の法線ベクトルＮpと代表法線ベクトルＮskとの類似度αとして用いる。このとき、αは、以下の数式（２）で表される。
【００３１】
【数２】
2018182718.tif 000004
【００３２】
類似度αは、点Ｍが中間法線ベクトルＮ’pと一致する時にα＝０となり、点Ｍが代表法線ベクトルＮskと一致するときにα＝１となる。
【００３３】
ステップＳ６０３では、パラメータ設定部２０２は、Ｓ６０２で算出した類似度αに基づき注目画素の色温度を補間演算により導出する。ここでは代表点の色温度Ｔsk、暫定色温度Ｔ’p、および類似度αを用いる。そして、以下の数式（３）に従い注目画素Ｐの座標（ｉp，ｊp）の色温度Ｔp(ip,jp)を導出する。
【００３４】
【数３】
2018182718.tif 000005
【００３５】
ここで、Ｔth0，Ｔth1はそれぞれ予め定めた色温度の下限値および上限値である。代表的な照明光である太陽光や照明器具の色温度は、夕日やろうそくの炎などの低いもので２０００［Ｋ］程度、晴天の空などの高いもので１２０００［Ｋ］程度である。したがって、ここではＴth0＝２０００，Ｔth1＝１２０００とする。数式（３）において、補間が外挿となる（α＜０または１＜α）場合は、色温度Ｔ’p，Ｔskの値およびこれらの差分値ΔＴに応じて補間方法が切り替わる。
【００３６】
図９は、調整パラメータに基づく補間の例を示す図である。図９（ａ）〜（ｆ）は、数式（３）を用いた際の補間の例を示している。図９（ａ）、（ｂ）は、暫定色温度Ｔ’pおよび代表点の色温度Ｔskが共に［Ｔth0，Ｔth1］の間にある場合の例である。これらの場合、注目画素の色温度Ｔpは［Ｔth0，Ｔth1］の範囲内で補間される。図９（ｃ）〜（ｆ）は、代表点の色温度Ｔskが［Ｔth0，Ｔth1］の間にない場合の例である。これらの場合、注目画素の色温度Ｔpは［Ｔth0，Ｔth1］の範囲の外側に向かわないように補間される。
【００３７】
ステップＳ６０４では、パラメータ設定部２０２は、Ｓ６０２で算出した類似度αに基づき、以下の数式（４）に従い図８における点Ｍに相当する法線ベクトルを求め、これを注目画素の新たな中間法線ベクトルＮ’pとして記憶する。
【００３８】
【数４】
2018182718.tif 000006
【００３９】
ステップＳ６０５では、パラメータ設定部２０２は、ｋ＜Ｋの場合、注目画素の色温度Ｔp(ip,jp)を新たな暫定色温度Ｔ’pとして記憶する。そして、ｋの値を１増加させてＳ６０２へ戻る。また、ｋ＝Ｋの場合、注目画素の色温度をＴp(ip,jp)に決定する。
【００４０】
ステップＳ３０８では、パラメータ設定部２０２は、入力画像中の全画素について調整パラメータが設定されているか判定する。全画素について設定が完了していればＳ３０９へ進み、完了していなければＳ３０５へ戻る。
【００４１】
ステップＳ３０９では、色処理部２０３は、Ｓ３０７で設定された各画素の調整パラメータを用いて入力画像データのホワイトバランスを調整し、出力画像データを生成する。具体的には、以下の数式（５）に従い入力画像データ中の各画素のＲＧＢ値Ｉr(i,j)，Ｉg(i,j)，Ｉb(i,j)に、色温度Ｔp(i,j)に対応するゲイン係数Ｇr(Tp(i,j))，Ｇg(Tp(i,j))，Ｇb(Tp(i,j))をそれぞれ乗算する。そして、得られる値を出力画像のＲＧＢ値Ｉ’r(i,j)，Ｉ’g(i,j)，Ｉ’b(i,j)とする。
【００４２】
【数５】
2018182718.tif 000007
【００４３】
ゲイン係数Ｇr(Tp(i,j))，Ｇg(Tp(i,j))，Ｇb(Tp(i,j))は、予め記憶しておいた色温度とゲイン係数との対応関係を定めたテーブルを参照して決定する。なお、Ｔp(i,j)と一致する色温度がテーブル上に存在しない場合は、その近傍の色温度に対応するゲイン係数から補間により求めればよい。
【００４４】
ステップＳ３１０では、色処理部２０３は、Ｓ３０９で生成した出力画像データをディスプレイ１１０へ出力して表示する。
【００４５】
以上説明したとおり第１実施形態によれば、画像内の被写体に対応する法線情報を用いて簡便かつ適切に撮像画像のホワイトバランスを調整することができる。
【００４６】
なお、上述のＳ３０３の説明においては、全ての代表点をユーザの指示に基づき設定する例を説明したが、一部の代表点を入力画像データや法線マップに基づき自動で設定してもよい。例えば、ｋ＝１番目の代表点Ｓ1の色温度Ｔs1として入力画像データＩ全体から公知のオートホワイトバランス手法を用いて求めた色温度を設定してもよい。また、代表法線ベクトルＮ１として法線マップＮの法線ベクトルの平均値または中央値を設定してもよい。
【００４７】
また、上述の説明においては、ｋ＝２〜Ｋの代表点ごとに上述の数式（３）を繰り返し用いて注目画素の色温度を補間する例を説明したが、他の方法を用いて補間してもよい。法線ベクトルの向きが似ている代表点ほど対応する色温度が補間結果に大きく反映される任意の手法を用いて補間が可能である。例えば、色温度Ｔをθ−φ平面に垂直な軸に対応付け、この３次元空間においてＫ個の代表点を通る曲面を公知のスプライン補間等を用いて求めることにより、注目画素の法線ベクトルに対応する曲面上の点から注目画素の色温度を算出してもよい。
【００４８】
（第２実施形態）
第２実施形態では、法線情報を用いて自動で代表点を設定する例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は第１実施形態（図１及び図２）と同様である。以下では各機能部の動作において第１実施形態と異なる点を中心に説明する。
【００４９】
パラメータ設定部２０２は、予め定めておいた代表点配置に基づき代表法線ベクトルを決定する。また、代表法線ベクトルを用いて入力画像データを領域分割し、各領域の色情報に基づいて、代表法線ベクトルに対応するホワイトバランス調整パラメータを決定する。
【００５０】
図１０は、第２実施形態における一連の処理のフローチャートである。ステップＳ３０１、Ｓ３０５〜３１０は第１実施形態と同一であるため説明を省略する。
【００５１】
ステップＳ１００２では、パラメータ設定部２０２は、予め定めておいた代表点配置をＨＤＤ１０４等の記憶装置から取得する。そして、Ｓ３０１で取得した法線マップ中の対応する座標に格納されている法線ベクトルを取得して代表法線ベクトルＮsk（ｋ＝１，２，…，Ｋ）とする。
【００５２】
図１１は、代表点配置の例を示す図である。この図において、黒点が代表点の位置を表している。法線マップ上における座標を求める際には、代表点配置の横軸と縦軸をそれぞれ法線マップの横幅および縦幅に応じてスケーリングすればよい。なお、代表点配置は図１１の例に限らず、撮影モードやピント合わせのための測距点の配置に応じて異なる配置としてもよい。
【００５３】
ステップＳ１００３では、パラメータ設定部２０２は、Ｓ１００２で決定した代表法線ベクトルを用いて、法線ベクトルの似た画素が同一領域に属するように、Ｓ３０１で取得した入力画像データを領域分割する。具体的には、入力画像データＩの座標（ｉ，ｊ）に対応する法線ベクトルＮ(i,j)について各代表法線ベクトルＮsk（ｋ＝１，２，…，Ｋ）との内積をそれぞれ算出する。そして、その値が最大となるときの代表法線ベクトルのＩＤ（ｋ＝kmin）を求めて、領域Ｒkminに座標（ｉ，ｊ）の画素を加える。
【００５４】
ステップＳ１００４では、パラメータ設定部２０２は、代表法線ベクトルＮskに対応するホワイトバランス調整パラメータＴskを、領域Ｒkに属する画素の色情報に基づいて決定する。色情報に基づくホワイトバランス調整パラメータの決定には、公知のオートホワイトバランス調整手法を利用可能である。例えば、領域Ｒkに属する画素の平均ＲＧＢ値Ｉrk，Ｉgk，Ｉbkが無彩色となるようなゲイン係数（Ｇrk，Ｇgk，Ｇbk）を以下の数式（６）に従い算出する。
【００５５】
【数６】
2018182718.tif 000008
【００５６】
次に、予め記憶しておいたゲイン係数と色温度との対応関係を定めたテーブルを参照してゲイン係数（Ｇrk，Ｇgk，Ｇbk）に対応する色温度を求める。そして、これを代表法線ベクトルＮskに対応するホワイトバランス調整パラメータＴskとする。
【００５７】
以上説明したとおり第２実施形態によれば、第１実施形態に比較し更に簡便に撮像画像のホワイトバランスを調整することができる。
【００５８】
なお、上述のＳ１００２の説明においては、予め定めておいた代表点配置に基づき法線マップから代表法線を取得する例を説明したが、予め定めておいた複数の単位法線ベクトルを代表法線として取得してもよい。図１２は、代表法線の例を示す図である。
【００５９】
また、例えば、第１実施形態で説明したＳ３０２〜Ｓ３０４の処理でユーザに指示された代表点の座標から代表法線ベクトルを取得し、第２実施形態で説明したＳ１００３〜Ｓ１００４の処理で代表法線ベクトルに対応する色温度を決めるよう構成してもよい。
【００６０】
更に、第１及び第２実施形態では、ホワイトバランス調整パラメータとして色温度を用いる例を説明したが、ゲイン係数をホワイトバランス調整パラメータとしてもよい。すなわち、Ｓ３０３やＳ１００４において代表法線ベクトルに対するゲイン係数を設定し、Ｓ３０７において各画素に対するゲイン係数を補間するように構成してもよい。
【００６１】
また、第１及び第２実施形態では、入力画像データとこれに対応する法線情報とを用いてホワイトバランス調整パラメータを求める例を説明したが、さらに距離情報を併用してもよい。例えば、入力画像データを距離情報に基づき前景領域と背景領域に分離し、各領域に対して上述の処理を適用してもよい。その場合、前景と背景の照明環境が大きく異なり、かつ、前景と背景に類似した法線ベクトルをもつ被写体が存在しても、適切にホワイトバランスを調整することが可能となる。
【００６２】
（第３実施形態）
第３実施形態では、入力画像データとこれに対応する法線情報に加えて、法線情報以外の特徴量を規定する特徴量情報を併用してホワイトバランス調整パラメータを決定する例について説明する。特に、特徴量情報として、距離情報を用いる例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は第１実施形態（図１及び図２）と同様である。なお、以下の説明では、特徴量情報として距離情報を用い、調整パラメータとしてゲイン係数を用いる。
【００６３】
画像データ取得部２０１は、入力画像データと被写体の法線情報に加えて、被写体の距離情報を取得する。ここでは、距離情報として距離マップを用いる。
【００６４】
図１３は、入力画像および法線情報、距離情報の例を示す図である。図１３（ａ）、（ｂ）、（ｃ）は、入力画像データＩ、法線マップＮ、距離マップＺの例を示している。図１３（ｃ）に示す距離マップＺの座標（ｉ，ｊ）はそれぞれ入力画像データＩの座標（ｉ，ｊ）と対応付けられている。距離マップの画素Ｚ(i,j)には、入力画像データを撮像した撮像装置から入力画像データの画素Ｉ(i,j)に対応する被写体までの距離（光軸方向の被写体距離）が画素値として格納されている。
【００６５】
パラメータ設定部２０２は、第１実施形態と同様に代表点に関する設定を行うためのＵＩをディスプレイ１１０に表示し、代表点の入力画像上における座標と、当該代表点に対する調整パラメータを設定する。そして、設定した代表点の座標および調整パラメータと法線マップ、距離マップを用いて、入力画像中の各画素に対する調整パラメータを算出する。その際、法線情報が略一致しかつ調整パラメータが異なる代表点が複数存在する場合に、距離情報に基づいて各代表点の調整パラメータに対する適用量（重み係数）を算出する。これらの処理の詳細は後述する。決定された調整パラメータは、色処理部２０３へ送られる。
【００６６】
図１４は、第３実施形態における一連の処理のフローチャートである。
【００６７】
ステップＳ１４０１では、画像データ取得部２０１は、入力画像データとこれに対応する法線マップと距離マップを、ＨＤＤ１０４または撮像装置から取得する。ステップＳ１４０２では、パラメータ設定部２０２は、Ｓ１４０１で取得した入力画像データと、代表点に関する設定を行うためのＵＩとをディスプレイ１１０へ出力して表示する。
【００６８】
図１５は、ＵＩの例を示す図である。入力画像データは、図１５の画像表示領域１５０１に表示される。ユーザは表示された入力画像データを参照しながら、ＵＩを介して代表点の設定を行うことができる。
【００６９】
ステップＳ１４０３では、パラメータ設定部２０２は、Ｓ１４０２で表示したＵＩを介してユーザに指示された値を取得し、代表点の座標および調整パラメータを設定する。図１５の例では、画像表示領域１５０１上の１点を選択すると、新規にＩＤを割り当てられた代表点が１つ代表点リスト１５０２に追加され、選択された点に対応する画像上での座標（ｉ，ｊ）が当該代表点の座標として設定される。また、ＵＩ上の各代表点に対応する行のプリセット光源リスト１５０３から光源を選択すると、その光源に対応するゲイン係数が当該代表点の調整パラメータとして設定される。
【００７０】
調整パラメータリストの各行に設けられたチェックボックス１５０４がチェックされた状態で「削除」ボタン１５０５が押下されると、チェックされた行が調整パラメータリストから削除され、対応する代表点に関する設定が破棄される。なお、光源として「色温度」が選択された場合には、その行の色温度設定欄１５０６に入力された色温度に対応するゲイン係数が調整パラメータとして設定される。また、「クリックホワイトバランス」が選択された場合には、その代表点に対応する入力画像データのＲＧＢ値を無彩色に変換するようなゲイン係数が調整パラメータとして設定される。
【００７１】
ステップＳ１４０４では、パラメータ設定部２０２は、Ｓ１４０３で設定されたＫ個の代表点の中から２つの代表点Ｓk，Ｓk'（ｋ，ｋ’＝１，２，…，Ｋ，ｋ＜ｋ’）を選んで代表点のペアを作る。
【００７２】
ステップＳ１４０５では、パラメータ設定部２０２は、Ｓ１４０４で選択したペアの代表点間において、法線情報が一致するか否かを判定する。具体的には、代表点Ｓk，Ｓk'の各座標に対応する単位法線ベクトルＮsk，Ｎsk'を法線マップから取得する。そして、これらの内積が予め定めた閾値以上となる場合に法線ベクトルが一致すると判定する。法線ベクトルが一致すると判定された場合はＳ１４０６へ進み、一致しないと判定された場合はＳ１４１１へ進む。
【００７３】
ステップＳ１４０６では、パラメータ設定部２０２は、Ｓ１４０５で法線ベクトルが一致すると判定されたペアの代表点間において、調整パラメータが異なるか否かを判定する。具体的には、代表点Ｓkに対応するゲイン係数と、Ｓk'に対応するゲイン係数が、以下の数式（７）を満たす場合に調整パラメータが異なると判定する。ここで、代表点Ｓkに対応するゲイン係数は、Ｇrk，Ｇgk，Ｇbkである。Ｓk'に対応するゲイン係数は、Ｇrk'，Ｇgk'，Ｇbk'である。
【００７４】
【数７】
2018182718.tif 000009
【００７５】
ここで、ＴｈGはゲイン係数の比に関して予め定めた閾値である。例えばＴｈG＝０とすると、Ｇ（グリーン）に対するＲ（レッド）およびＢ（ブルー）のゲイン係数の比が代表点ＳkとＳk'の間で完全に一致する場合以外は、調整パラメータが異なると判定される。調整パラメータが異なると判定された場合はＳ１４０７へ進み、それ以外の場合はＳ１４１０へ進む。
【００７６】
ステップＳ１４０７では、パラメータ設定部２０２は、Ｓ１４０５、Ｓ１４０６で法線情報が一致しかつ調整パラメータが異なると判定されたペアの代表点間において、距離情報が異なるか否かを判定する。具体的には、代表点Ｓk，Ｓk'の各座標に対応する被写体距離Ｚsk，Ｚsk'を距離マップから取得する。そして、これらの差分の絶対値が予め定めた閾値以上となる場合に被写体距離が異なると判定する。被写体距離が異なると判定された場合はＳ１４０８へ進み、それ以外の場合はＳ１４０９へ進む。
【００７７】
ステップＳ１４０８では、パラメータ設定部２０２は、Ｓ１４０５〜Ｓ１４０７で法線情報が一致しかつ調整パラメータおよび被写体距離が異なると判定されたペアの代表点Ｓk，Ｓk'を、距離重み算出対象に分類する。
【００７８】
ステップＳ１４０９では、パラメータ設定部２０２は、Ｓ１４０５〜Ｓ１４０７で法線情報および距離情報が一致し、かつ、調整パラメータが異なると判定されたペアの代表点のうち、片方を無効に設定する。ここでは、先にユーザに指示された調整パラメータよりも後から指示された調整パラメータを優先し、ＩＤの若い代表点Ｓkを無効とする。なお、Ｓ１４０３において各代表点を設定した際のタイムスタンプを座標や調整パラメータとともに記憶しておき、タイムスタンプの古い方を無効としてもよい。
【００７９】
ステップＳ１４１０では、パラメータ設定部２０２は、Ｓ１４０５、Ｓ１４０６で法線情報および調整パラメータが一致すると判定されたペアの代表点を統合する。具体的には、ペアの代表点Ｓk，Ｓk'に対応する単位法線ベクトルおよびゲイン係数から、単位法線ベクトルの平均値とゲイン係数の平均値をそれぞれ求める。そして、これらを後に設定された代表点Ｓk'に対する新たな法線情報および調整パラメータとして記憶する。そして、先に設定された代表点Ｓkに関する設定を破棄する。あるいは、Ｓ１４０９と同様に、片方の代表点を無効に設定してもよい。
【００８０】
ステップＳ１４１１では、パラメータ設定部２０２は、設定されている代表点から成る全てのペアについてＳ１４０５の比較を完了したか否かを判定する。全ペアについて比較を完了していればＳ１４１２へ進み、完了していなければＳ１４０４へ戻る。
【００８１】
ステップＳ１４１２では、パラメータ設定部２０２は、入力画像を構成する座標（ｉ，ｊ）の画素に対する調整パラメータを算出する。まず、設定されている全ての代表点Ｓkに関して、以下の数式（８）に従い座標（ｉ，ｊ）との法線ベクトルの類似度に基づく重み係数Ｗnk(i,j)を算出する。
【００８２】
【数８】
2018182718.tif 000010
【００８３】
ここで、Ｃvalidは有効な（すなわち、無効と設定されていない）代表点を示すＩＤの集合である。また、Ｎij，Ｎskは、それぞれ、法線マップから取得した座標（ｉ，ｊ）および代表点Ｓkに対応する単位法線ベクトルである。
【００８４】
数式（８）のβk(i,j)は、座標（ｉ，ｊ）の法線ベクトルと代表点Ｓkの法線ベクトルの類似度に相当し、座標（ｉ，ｊ）と代表点Ｓkの法線ベクトルが似ているほど大きな値となる。数式（８）の重み係数Ｗnk(i,j)は、有効な代表点に関しては、無効な代表点を除く全代表点での総和を用いて法線ベクトルの類似度を正規化した値となる。そして、βk(i,j)が大きいほど大きな値となる（０≦Ｗnk(i,j)≦１）。また、無効な代表点に関しては、重み係数Ｗnk(i,j)は常に”０”となる。
【００８５】
次に、同じく全ての代表点Ｓkに関して、以下の数式（９）に従い座標（ｉ，ｊ）との距離の類似度に基づく重み係数Ｗzk(i,j)を算出する。
【００８６】
【数９】
2018182718.tif 000011
【００８７】
ここで、Ｃ（Ｓk）は距離重み算出対象に分類された代表点のうち、代表点Ｓkと法線ベクトルが一致するものを示すＩＤの集合である。また、Ｚij，Ｚskは、それぞれ、距離マップＺから取得した座標（ｉ，ｊ）および代表点Ｓkに対応する被写体距離であり、ΔｚmaxはΔｚl(i,j)（ｌ∈Ｃ（Ｓk））の最大値である。数式（９）のγk(i,j)は、座標（ｉ，ｊ）の被写体距離と代表点Ｓkの被写体距離の類似度に相当し、座標（ｉ，ｊ）と代表点Ｓkの被写体距離が似ているほど大きな値となる。
【００８８】
数式（９）の重み係数Ｗzk(i,j)は、距離重み算出対象の代表点に関しては、法線ベクトルが一致する全代表点での総和を用いて被写体距離の類似度を正規化した値となる。そのため、γk(i,j)が大きいほど大きな値となる（０≦Ｗzk(i,j)≦１）。また、距離重み算出対象に分類されなかった代表点に関しては、重み係数Ｗzk(i,j)は常に”１”となる。
【００８９】
最後に、各代表点のゲイン係数Ｇrk，Ｇgk，Ｇbkと重み係数Ｗnk(i,j)，Ｗzk(i,j)を用いて、以下の数式（１０）に従い座標（ｉ，ｊ）のゲイン係数Ｇr(i,j)，Ｇg(i,j)，Ｇb(i,j)を算出する。
【００９０】
【数１０】
2018182718.tif 000012
【００９１】
ここで、重み係数の積Ｗnk(i,j)＊Ｗzk(i,j)は、代表点Ｓkの調整パラメータの座標（ｉ，ｊ）の画素への適用量に相当する。数式（１０）で得られるゲイン係数には、座標（ｉ，ｊ）の法線ベクトルと向きが似ている法線ベクトルを持つ代表点ほど、その代表点のゲイン係数が大きく反映される。さらに、法線情報が略一致する複数の代表点に対して異なるゲイン係数が設定されている場合には、同じ法線ベクトルをもつ代表点の中で座標（ｉ，ｊ）の被写体距離と似ている被写体距離を持つ代表点ほど、そのゲイン係数が大きく反映される。なお、無効な代表点に関しては数式（８）においてＷnk(i,j)＝０としているため、当該代表点の調整パラメータについては適用量が”０”となる。
【００９２】
ステップＳ１４１３では、色処理部２０３は、Ｓ１４１２で算出された各画素の調整パラメータを用いて、以下の数式（１１）に従い出力画像データのＲＧＢ値を生成する。具体的には、入力画像データ中の各画素のＲＧＢ値Ｉr(i,j)，Ｉg(i,j)，Ｉb(i,j)を変換し、出力画像データのＲＧＢ値Ｉ’r(i,j)，Ｉ’g(i,j)，Ｉ’b(i,j)を生成する。
【００９３】
【数１１】
2018182718.tif 000013
【００９４】
ステップＳ１４１４では、色処理部２０３は、Ｓ１４１３で生成した出力画像データをディスプレイ１１０へ出力して表示する。
【００９５】
以上説明したとおり第３実施形態によれば、類似した法線ベクトルを持つ被写体表面が、照明環境が異なる領域に跨って存在する場合においても、適切に撮像画像のホワイトバランスを調整することが可能となる。
【００９６】
なお、上述の説明においては、法線情報以外の特徴量として被写体距離を用いる例を説明したが、他の特徴量を用いてもよい。例えば、被写体の３次元位置座標や、２次元画像平面上における座標、入力画像データの色情報（明度、彩度、色度、色相など）、入力画像データに対して公知のオブジェクト認識処理を適用して得られる被写体の認識結果などを利用可能である。さらに、これらの特徴量を複数併用してもよい。いずれの場合も、Ｓ１４０７においてペアの代表点間で法線情報以外の特徴量が異なるか否かを判定し、異なると判定されたペアをＳ１４０８において特徴量に基づく重みの算出対象に分類すればよい。Ｓ１４１２において特徴量に基づく重みを算出する際には、注目画素と特徴量が類似している代表点ほど大きな重みとなるように、各々の特徴量の類似度に基づき重み係数を算出すればよい。
【００９７】
また、上述のＳ１４０４で選択したペアの代表点間で座標が一致する場合には、ユーザが当該座標に対する調整の指示をやり直したと見なし、先に設定された代表点を無効としてもよい。その場合、Ｓ１４０５〜Ｓ１４０７の処理を省いてＳ１４０９へ進めばよい。  
【００９８】
（第４実施形態）
第４実施形態では、法線情報の分布に基づいて代表法線ベクトルを決定する例について説明する。また、入力画像データ中の各画素に対するホワイトバランス調整パラメータを、画素が属する領域に応じて決定する例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は前述の実施形態（図１及び図２）と同様である。以下では各機能部の動作において前述の実施形態と異なる点を中心に説明する。
【００９９】
図１６は、第４実施形態における一連の処理のフローチャートである。Ｓ３０１、Ｓ１００３、Ｓ３０９〜３１０は前述の実施形態と同一であるため説明を省略する。
【０１００】
ステップＳ１６０２では、パラメータ設定部２０２は、Ｓ３０１で取得した法線マップに含まれる法線ベクトルの分布を解析し、代表法線ベクトルＮsk（ｋ＝１，２，...，Ｋ）を算出する。具体的には、法線マップ中の法線ベクトルを公知のクラスタリング手法を用いてK個のクラスタに分類し、各クラスタの中心に相当するベクトルを代表法線ベクトルとする。このとき、クラスタの個数Kは予め定めておいた個数でもよいし、法線マップに含まれる法線ベクトルの分散が大きいほど多くの個数としてもよい。
【０１０１】
ステップＳ１６０４では、パラメータ設定部２０２は、Ｓ１００３で分割した領域ごとに、ホワイトバランス調整パラメータとしての色温度を決定する。各領域は類似した法線ベクトルを持つ画素の集合であるので、入力画像データ中の各画素について、属する領域Ｒkに対応する色温度Ｔskを当該画素に対する色温度として決定する。領域に対する色温度の決定には、Ｓ１００４と同様に、公知のオートホワイトバランス調整手法を利用可能である。
【０１０２】
以上説明したとおり第４実施形態によれば、被写体の法線ベクトルの分布に応じて、被写体の面の向きを過不足なく代表する代表法線ベクトルを設定することができる。また、簡易な処理で各画素に対するホワイトバランス調整パラメータを決定することができる。
【０１０３】
（第５実施形態）
第５実施形態では、法線情報として主要被写体の立体形状を表す３Ｄモデルデータを用いる例について説明する。また、初めに画像全体のホワイトバランスを調整した後に、ユーザからの入力に応じて部分的に再調整を行う例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は前述の実施形態（図１及び図２）と同様である。
【０１０４】
画像データ取得部２０１は、入力画像データと主要被写体の３Ｄモデルデータを取得する。ここでは、人物の顔が写っている入力画像データに対し、標準的な顔の概略形状を呈するポリゴンモデルデータ（以後、標準顔モデルデータと呼ぶ）を３Ｄモデルデータとして用いる。図１７は、標準顔モデルの例を示す図である。取得された入力画像データと標準顔モデルデータはパラメータ設定部２０２へ送られる。
【０１０５】
パラメータ設定部２０２は、初期調整に用いる調整パラメータを入力画像データに基づき決定する。また、代表点に関する設定を行うためのＵＩをディスプレイ１１０に表示し、このＵＩ上においてユーザに指示された値と標準顔モデルデータとに基づいて、再調整に用いる調整パラメータを決定する。処理の詳細は後述する。決定された調整パラメータは、色処理部２０３へ送られる。
【０１０６】
色処理部２０３は、設定された調整パラメータを用いて各種画像データのホワイトバランスを調整する。調整後の画像データは、ディスプレイ１１１へ送られて表示される。
【０１０７】
図１８は、第５実施形態における一連の処理のフローチャートである。
【０１０８】
ステップＳ１８０１では、画像データ取得部２０１は、入力画像データをＨＤＤ１０４または撮像装置から取得する。また、標準顔モデルデータをHDD１０４から取得する。図１９（ａ）は、入力画像データの例を示す図である。この図の例では、画像のホワイトバランスが全体的に合っておらず、さらに、人物の一部に他の部分と異なる色温度の光が強く当たっている。
【０１０９】
ステップＳ１８０２では、パラメータ設定部２０２は、初期調整に用いる調整パラメータとしてゲイン係数（Ｇra，Ｇga，Ｇba）を１組決定する。例えば、入力画像データ全体に対して公知のオートホワイトバランス技術を用いることが出来る。
【０１１０】
ステップＳ１８０３では、色処理部２０３は、Ｓ１８０２で設定された初期調整パラメータを用いて、入力画像データ全体のホワイトバランスを調整する。具体的には、入力画像データ中の全画素のRGB値にゲイン係数（Ｇra，Ｇga，Ｇba）をそれぞれ乗算する。図１９（ｂ）は、図１９（ａ）の入力画像に初期調整を施して得られる画像の例を示す図である。すなわち、図１９（ｂ）は、被写体の大部分を照らす光の色温度Ｌaに合わせて調整パラメータを決定し、その調整パラメータを用いて全画素のホワイトバランスを一律に調整した結果の例である。この例では、Ｌaとは異なる色温度Ｌpの光が強く当たっている部分では、調整パラメータを決定する際に想定した色温度と実際に当たっている光の色温度とが合わないため、色被りが生じている。
【０１１１】
ステップＳ１８０４では、色処理部２０３は、Ｓ１８０３で行った初期調整後の画像データをディスプレイ１１０へ出力して表示する。
【０１１２】
ステップＳ１８０５では、パラメータ設定部２０２は、代表点に関する設定を行うためのＵＩをディスプレイ１１０へ出力して表示する。そして、ＵＩを介して代表点の設定に関する入力が行われた場合はステップＳ１８０６へ進み、入力が無ければ一連の処理を終了する。図２０は、本実施形態における代表点に関する設定を行うためのＵＩの例を示す図である。画像表示領域２００１は、ホワイトバランス調整後の画像データが表示される領域である。ユーザは表示された画像データを参照しながら、さらに調整を加えたい場合にはＵＩを介して代表点の設定を行うことができる。
【０１１３】
ステップＳ１８０６では、パラメータ設定部２０２は、Ｓ１８０５で表示したＵＩ上においてユーザに指示された値を取得し、代表点Ｓの座標および調整パラメータを設定する。図２０の例では、画像表示領域２００１内の１点をマウスでクリックすることにより、その点に対応する画像上での座標値（ｉ，ｊ）が代表点Ｓの座標として設定される。また、ユーザによりスライダ２００２が操作されると、スライダの位置に対応するゲイン係数（Ｇrp，Ｇgp，Ｇbp）が代表点に対する調整パラメータとして設定される。スライダの位置とゲイン係数との関係は、例えば、スライダが左端にある場合に２０００［Ｋ］、右端にある場合に１２０００［Ｋ］に相当するゲイン係数とし、中間の位置にある場合は両端からの距離の比に基づく補間により対応するゲイン係数を決定する。
【０１１４】
ステップＳ１８０７では、パラメータ設定部２０２は、Ｓ１８０６で設定した代表点Ｓの座標に基づいて、再調整領域を決定（領域決定）する。図２１は、再調整領域設定処理（Ｓ１８０７）の詳細フローチャートである。
【０１１５】
ステップＳ２１０１では、パラメータ設定部２０２は、入力画像上において被写体の顔が写っている領域（顔領域）を公知の顔領域抽出技術を用いて抽出し、その領域内にＳ１８０６で設定した代表点Ｓが含まれるか否かを判定する。代表点Ｓが顔領域内に含まれる場合はＳ２１０２へ進み、含まれない場合はＳ２１０６へ進む。
【０１１６】
ステップＳ２１０２では、パラメータ設定部２０２は、Ｓ２１０１で抽出した顔領域に含まれる画素に関して、入力画像平面上での位置と、標準顔モデルを構成するポリゴン上での位置とを対応付ける変換を、顔器官の位置や顔領域の大きさ等に基づいて求める。対応付けには、公知の３Ｄ−２Ｄ位置合わせ技術を利用可能である。
【０１１７】
ステップＳ２１０３では、パラメータ設定部２０２は、Ｓ２１０２で求めた変換を用いて、Ｓ１８０６で設定した代表点Ｓの座標に対応する標準顔モデル上での位置Ｓｍを求める。
【０１１８】
ステップＳ２１０４では、パラメータ設定部２０２は、標準顔モデルを構成するポリゴンの中から、Ｓ２１０３で求めた位置Ｓｍのポリゴンと面の傾きが似ているものを抽出する。ここでは、２つのポリゴン間における傾きの類似度として各ポリゴンの単位法線ベクトル同士の内積を用い、位置Ｓｍのポリゴンとの類似度が予め定めた閾値よりも大きいポリゴンを抽出する。
【０１１９】
ステップＳ２１０５では、パラメータ設定部２０２は、Ｓ２１０４で抽出したポリゴンが入力画像平面上において占める領域を求め、これを再調整領域とする。具体的には、Ｓ２１０２で求めた変換の逆変換を用いてポリゴンの頂点に対応する画素位置を求め、これらを結んでできる図形内を再調整領域Ｒｐとする。
【０１２０】
ステップＳ２１０６では、パラメータ設定部２０２は、入力画像全体からＳ２１０１で抽出した顔領域を除いた領域を、再調整領域Ｒｐとする。
【０１２１】
ステップＳ１８０８では、色処理部２０３は、Ｓ１８０６で設定された代表点Ｓの調整パラメータを用いて、再調整領域Ｒｐのホワイトバランスを調整する。具体的には、入力画像データ中の再調整領域Ｒｐに含まれる画素のRGB値にゲイン係数（Ｇrp，Ｇgp，Ｇbp）をそれぞれ乗算する。なお、Ｓ２１０４において傾きの似たポリゴンを抽出する際に算出した類似度を記憶しておき、その類似度が小さい場合には乗算するゲイン係数を１に近づける（すなわち、再調整による画素値の変化量が小さくなる）ように調節してもよい。図１９（ｃ）は、図１９（ｂ）に示す初期調整後の画像に対して×印の位置に代表点Ｓを設定し、再調整を施して得られる画像の例を示す図である。この例では、代表点Ｓは図１９（ｂ）において色被りが生じている部分に設定されている。また、この代表点Ｓの位置に基づき、図１９（ｃ）中の点線で囲まれた領域が再調整領域Ｒｐとして設定される。再調整領域Ｒｐ内のホワイトバランスを代表点Ｓの調整パラメータを用いて調整することにより、初期調整後に生じていた色被りが軽減される。
【０１２２】
ステップＳ１８０９では、色処理部２０３は、Ｓ１８０８で行った再調整後の画像データをディスプレイ１１０へ出力して表示し、Ｓ１８０５へ戻る。
【０１２３】
なお、Ｓ２１０１で抽出する顔領域やＳ２１０２で求める変換は、再調整領域設定処理（Ｓ１８０７）を繰り返すたびに求める必要はなく、２度目以降は流用可能である。
【０１２４】
以上説明したとおり第５実施形態によれば、主要被写体に関して面の傾きに基づいたホワイトバランス調整が可能となる。
【０１２５】
（第６実施形態）
第６実施形態では、ユーザがＵＩを介して代表法線ベクトルを設定する例について説明する。また、入力画像の一部分について法線情報が得られない場合の例について説明する。ここでは、法線情報として法線マップを用いる。ただし、画素（ｉ，ｊ）において被写体の法線ベクトルが不明である場合には、法線マップの画素値Ｎ（ｉ，ｊ）としてゼロベクトル（０，０，０）が格納されているものとする。なお、画像処理装置のハードウェア構成および機能ブロック構成は前述の実施形態（図１及び図２）と同様である。
【０１２６】
パラメータ設定部２０２は、ホワイトバランス調整に関する設定を行うためのＵＩを、出力Ｉ／Ｆ１０７を介してディスプレイ１１０に表示する。また、このＵＩ上においてユーザに指示された値を入力Ｉ／Ｆ１０６を介して取得し、法線ベクトルが不明な場合に用いる調整パラメータと、代表法線ベクトルおよびこれに対応する調整パラメータとを設定する。そして、これらの設定に基づき、法線マップを用いて入力画像中の各画素に対する調整パラメータを決定する。
【０１２７】
図２２は、第６実施形態における一連の処理のフローチャートである。Ｓ３０１とＳ１８０２〜１８０４は前述の実施形態と同一であるため説明を省略する。
【０１２８】
ステップＳ２２０２では、パラメータ設定部２０２は、法線ベクトルが不明な場合に用いる色温度（以後、ベース色温度と呼ぶ）として、初期調整に用いたゲイン係数に対応する色温度を設定する。また、ホワイトバランス調整に関する設定を行うためのＵＩをディスプレイ１１０へ出力して表示する。図２３（ａ）は、本実施形態におけるＵＩの初期状態の例を示す図である。画像表示領域２３０１には初期調整後の入力画像データが表示される。また、色温度の設定を変更した場合に影響を受ける領域が、点線２３０２で囲まれるなどして強調表示される。ベースパラメータ表示領域２３０３の色は、ベース色温度を表している。アイコン２３０４は、スライダ２３０５の操作により設定が変更される対象として、ベース色温度が選択されていることを表している。球形セレクタ２３０６は、法線ベクトルの向きと調整に用いられる色温度との対応関係を模式的に表している。球形セレクタ２３０６上の各点は、その点における球面の法線ベクトルに対応づけられており、各点の色は、その点に対応付けられた法線ベクトルを持つ画素を調整する際に用いられる色温度を表している。ここでは、初期調整において画像全体に対し同じ色温度（＝ベース色温度）を用いているため、球形セレクタ２３０６全体がベース色温度に対応する色相で描画される。なお、この図における入力画像の例では、シーン全体を照らす環境光の他に、被写体に対して３方向から異なる色温度の光が当たっている。そのため、部分ごとに異なる色被りが生じている。
【０１２９】
ステップＳ２２０３では、パラメータ設定部２０２は、Ｓ２２０２で表示したＵＩを介してユーザからの入力を取得する。そして、設定の変更に関する入力が行われた場合はＳ２２０４へ進み、そうでなければＳ２２０７へ進む。以下、具体例を説明する。
【０１３０】
＜ベース色温度の変更＞
図２３（ａ）の状態においてユーザによりスライダ２３０５が操作されると、ベース色温度がスライダの位置に対応する色温度に変更され、Ｓ２２０４へ進む。このとき、ベースパラメータ表示領域２３０３は、変更後の色温度に応じた色で再描画される。
【０１３１】
＜代表法線ベクトルの新規設定＞
図２３（ａ）の状態においてユーザにより球形セレクタ２３０６上の一点２３０７が指定されると、パラメータ設定部２０２は、その点に対応する法線ベクトルを代表法線ベクトルＮｓ１として設定する。また、ベース色温度と同じ色温度を、代表法線ベクトルＮｓ１に対応する色温度Ｔｓ１として設定する。さらに、Ｓ３０１で取得した法線マップに基づいて各画素における法線ベクトルと代表法線ベクトルＮｓ１との類似度を算出し、類似度の高い画素領域Ｒｓ１を抽出する。そして、ＵＩを図２３（ｂ）の状態に更新する。
【０１３２】
図２３（ｂ）において、代表パラメータ表示領域２３０８の端点は、ユーザにより指定された点２３０７を指している。また、代表パラメータ表示領域２３０８の色は、代表法線ベクトルＮｓ１に対応づけられた色温度Ｔｓ１を表している。アイコン２３０４は、スライダ２３０５の操作により設定が変更される対象として、代表法線ベクトルＮｓ１に対応する色温度Ｔｓ１が選択されていることを表している。アイコン２３０９は、設定が変更される対象としてベース色温度が選択されていないことを表している。点線２３０２は、代表法線ベクトルＮｓ１と似た法線ベクトルを持つ領域Ｒｓ１を強調表示している。この領域は、代表法線ベクトルＮｓ１に対応する色温度Ｔｓ１を変更した場合に影響を受ける領域である。この状態においてユーザによりスライダ２３０５が操作されると、代表法線ベクトルＮｓ１に対応する色温度Ｔｓ１がスライダの位置に対応する色温度に変更され、Ｓ２２０４へ進む。このとき、ＵＩは図２３（ｃ）の状態に遷移する。
【０１３３】
図２３（ｃ）では、代表パラメータ表示領域２３０８の色が、変更後の色温度Ｔｓ１を表す色に変化している。また、球形セレクタ２３０６上において、点２３０７の周辺（すなわち、法線ベクトルが代表法線ベクトルＮｓ１と似ている領域）の色相が、変更後の色温度Ｔｓ１に対応する色相に変化している。
【０１３４】
＜設定の完了＞
図２３（ａ）の状態においてユーザにより設定完了ボタン２３００が押下されると、Ｓ２２０７へ進む。
【０１３５】
ステップＳ２２０４では、パラメータ設定部２０２は、Ｓ２２０１で取得した法線マップとＳ２２０３での変更を反映した代表法線ベクトルおよび色温度とを用いて、入力画像データの各画素に対する調整パラメータを設定する。本実施形態では、入力画像データ中の画素Ｐ(ip,jp)に対するゲイン係数Ｇrp ，Ｇgp ，Ｇbp を以下の数式（１２）に従い算出する。
【０１３６】
【数１２】
2018182718.tif 000014
【０１３７】
【数１３】
2018182718.tif 000015
【０１３８】
ここで、ＧrB ，ＧgB ，ＧbBは、ベース色温度に対応するゲイン係数である。Ｇrk ，Ｇgk ，Ｇbkは、代表法線ベクトルＮｓｋに対応づけられた色温度Ｔｓｋに対応するゲイン係数である。αｓｋは、代表法線ベクトルＮｓｋと画素Ｐの法線ベクトルＮｐとの類似度である。Ｔｈαは、予め定めた類似度に関する閾値である。類似度αｓｋ（＝０〜１）は、代表法線ベクトルＮｓｋと画素Ｐの法線ベクトルＮｐとが一致する場合に最大となり、ＮｓｋとＮｐとのなす角が一定値（ｃｏｓ−１（Ｔｈα））以上の場合にゼロとなる。αｓＭＡＸは、類似度αｓｋ（ｋ＝１〜Ｋ）の最大値である。数式（１２）では、画素Pにおける法線ベクトルNpが不明な場合、画素Ｐに対するゲイン係数はベース色温度に対応するゲイン係数と同じ値となる。その他の場合は、法線ベクトルの類似度に基づいた補間により値が決定される。
【０１３９】
ステップＳ２２０５では、色処理部２０３は、入力画像データのホワイトバランスを調整する。具体的には、Ｓ２２０４で設定した各画素に対するゲイン係数Ｇrp ，Ｇgp ，Ｇbp を入力画像データの画素値に乗算する。
【０１４０】
ステップＳ２２０６では、色処理部２０３は、Ｓ２２０５で行った調整後の画像データをディスプレイ１１０へ出力し、画像表示領域２３０１の表示を更新する。このとき、ＵＩは図２３（ｄ）の状態に遷移する。図２３（ｄ）では、画像表示領域２３０１にはＳ２２０５の調整後の画像データが表示されており、点線２３０２で囲まれた領域の色が調整により変化している。（代表法線ベクトルＮｓ１に対応する色温度Ｔｓ１を用いて調整されたことにより、領域Ｒｓ１で生じていた色被りが軽減されている。）
【０１４１】
Ｓ２２０６で画像データの表示が更新されると、処理はＳ２２０３へ戻り、パラメータ設定部２０２が再びユーザからの入力を取得する。ユーザは更新された画像データを参照しながら、さらに調整を加えたい場合にはＵＩを介して代表法線ベクトルの追加や設定の変更を行うことができる。図２３（ｅ）は、図２３（ｄ）の状態からユーザにより点２３１０とそれに対応する色温度が入力され、これに従ってＳ２２０４〜２２０６の処理を行った例であり、点線で囲まれた部分の色被りが軽減されている。また、図２３（ｆ）は、図２３（ｅ）の状態からさらに代表法線ベクトルが追加された場合の例である。なお、アイコン２３０９を押下することにより、一度設定されたベース色温度または代表法線ベクトルに対する色温度を、再度変更の対象とするようにしてもよい。また、代表パラメータ表示領域２３０８に付属する×ボタンを押下することにより、対応する代表法線ベクトルに関して設定を削除するようにしてもよい。
【０１４２】
ステップＳ２２０７では、パラメータ設定部２０２は、Ｓ３０１で取得した法線マップと、現在設定されている代表法線ベクトルとに基づき、ホワイトバランス調整に関して設定の確認が必要か否かを判定する。本実施形態では、ある画素について被写体表面の向きがどの代表法線ベクトルの向きとも似ていない場合、その画素では法線情報が不明な画素と同じ調整パラメータが用いられる。しかしながら、そのような画素では代表法線ベクトルを追加してホワイトバランスを微調整することで、より好ましい調整結果が得られる可能性がある。そこで、Ｎ（ｉ，ｊ）≠（０，０，０）である入力画像データ中の各画素について数式（１３）に従い法線ベクトルの類似度αｓｋを算出し、画素ごとに類似度の最大値αｓＭＡＸを求める。そして、画像全体の画素数に対してαｓＭＡＸ＝０である画素数が予め定めた割合以上である場合に、設定の確認が必要であると判定する。確認が必要と判定された場合はＳ２２０８へ進み、そうでなければＳ２２１０へ進む。
【０１４３】
ステップＳ２２０８では、パラメータ設定部２０２は、調整に適した代表法線ベクトルの候補をユーザへ報知する。具体的には、Ｓ２２０７で求めたαｓＭＡＸ＝０である画素に関して法線ベクトルの中央値を算出し、これを代表法線ベクトルの候補としてＵＩ上に表示する。Ｓ２２０３において図２３（ｄ）の状態で設定完了ボタン２３００が押下された場合の例を、図２３（ｇ）に示す。図２３（ｇ）において、代表パラメータ表示領域２３０８の端点は、球形セレクタ２３０６上において代表法線ベクトルの候補に対応する点を指している。アイコン２３１１は、代表パラメータ表示領域２３０８が指し示す法線ベクトルが、代表法線ベクトルの候補であることを表している。点線２３０２は、代表法線ベクトルの候補と似た法線ベクトルを持つ領域を強調表示している。この領域は、代表法線ベクトルの候補を代表法線ベクトルとして設定し、対応する色温度を変更した場合に影響を受ける領域である。
【０１４４】
ステップＳ２２０９では、パラメータ設定部２０２は、Ｓ２２０３と同様にＵＩを介してユーザからの入力を取得する。そして、設定の変更に関する入力が行われた場合はＳ２２０４へ戻り、そうでなければＳ２２１０へ進む。以下、具体例を説明する。
【０１４５】
＜代表法線ベクトルの追加＞
図２３（ｇ）の状態においてユーザによりスライダ２３０５が操作されると、代表法線ベクトルの候補（すなわち、アイコン２３１１付きの代表パラメータ表示領域２３０８が指し示す法線ベクトル）が代表法線ベクトルに追加される。さらに、その代表法線ベクトルに対応する色温度としてスライダの位置に対応する色温度が設定され、Ｓ２２０４へ戻る。
【０１４６】
＜候補の棄却＞
図２３（ｇ）の状態において設定完了ボタン２３００が押下されると、代表法線ベクトルの候補は代表法線ベクトルに追加されずにＳ２２１０へ進む。
【０１４７】
ステップＳ２２１０では、色処理部２０３は、ホワイトバランス調整後の画像データをＨＤＤ１０４等の記憶装置に保存する。そして、ＵＩを図２３（ｈ）の状態に更新して保存が完了したことを報知する。
【０１４８】
以上で説明した第６実施形態によれば、ＵＩを介した直観的な操作により、ユーザが代表法線ベクトルを設定することができる。
【０１４９】
なお、ステップＳ２２１０において、調整に用いたベース色温度、および、代表法線ベクトルとそれに対応する色温度を、調整パラメータ情報として別途保存してもよい。その場合、Ｓ３０１において入力画像データおよび法線情報とともに保存しておいた調整パラメータ情報を取得すれば、一度行った調整を異なる入力画像データにも容易に適用可能となる。
【０１５０】
（第７実施形態）
第７実施形態では、異なる複数の視点位置から被写体を撮像した画像に基づいて法線情報を算出し、これを用いてホワイトバランス調整を行う例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は前述の実施形態（図１及び図２）と同様である。
【０１５１】
画像データ取得部２０１は、入力画像データと、入力画像データ中の被写体を異なる視点位置から撮像したサブ入力画像データ（補助入力画像）とを取得する。また、これらの画像データを撮像した際のカメラパラメータ（カメラの位置姿勢やレンズの歪みを表す情報）を取得する。以後、これらの画像データとカメラパラメータとを併せて多視点画像データ呼ぶ。本実施形態では、ステレオカメラで撮像して得られる２つの画像のうち、片方の画像データを入力画像データとし、もう一方をサブ入力画像データとして用いる。
【０１５２】
パラメータ設定部２０２は、多視点画像データを用いて代表法線ベクトルを算出する。処理の詳細は後述する。
【０１５３】
図２４は、第７実施形態における一連の処理のフローチャートである。Ｓ３０２〜３０３、Ｓ３０５、Ｓ３０７〜３１０は第１実施形態と同一であるため説明を省略する。
【０１５４】
ステップＳ２４０１では、画像データ取得部２０１は、多視点画像データをＨＤＤ１０４または撮像装置から取得する。
【０１５５】
ステップＳ２４０４では、パラメータ設定部２０２は、Ｓ２４０１で取得した多視点画像データを用いて、Ｓ３０３で設定した代表点を含む面の向きを求めることにより、代表法線ベクトルを算出する。まず、入力画像データおよびサブ入力画像データからそれぞれ特徴点を抽出し、画像間において特徴点の対応付けを行う。この処理には公知の特徴ベースマッチング技術を利用可能である。次に、対応付けされた特徴点の中から、入力画像上において代表点を内部に含む最小の三角形を形成する３点を選択する。次に、選択された３点の特徴点それぞれについて、各画像上での位置とカメラパラメータとに基づき、三次元座標を推定する。そして、得られた三次元座標を用いて３点が形成する三角形の面の単位法線ベクトルを算出し、これを代表法線ベクトルとする。
【０１５６】
ステップＳ２４０６では、パラメータ設定部２０２は、Ｓ２４０１で取得した多視点画像データを用いて、Ｓ３０５で選択した注目画素に対応する法線ベクトルを算出する。具体的には、Ｓ２４０４における代表点を注目画素に置き換えて同様の処理を行う。なお、特徴点の対応付けは再度行う必要はなく、Ｓ２４０４で行った結果を流用可能である。また、三次元座標の推定や単位法線ベクトルの算出についても、用いる特徴点が同一である場合には一度算出した結果を流用可能である。
【０１５７】
以上で説明した第７実施形態によれば、多視点画像データから法線情報を算出し、これに基づいてホワイトバランス調整を行うことができる。
【０１５８】
なお、サブ入力画像データは入力画像データを撮像したカメラとは別のカメラで撮像された画像であってもよいし、２画像以上であってもよい。また、メインレンズと撮像素子との間にマイクロレンズアレイを配置したPlenopticカメラを用いて被写体を撮像し、得られる複数の画像データのうち１つを入力画像データ、その他をサブ入力画像データとしてもよい。
【０１５９】
（第８実施形態）
第８実施形態では、距離情報に基づいて法線情報を算出し、これを用いてホワイトバランス調整を行う例について説明する。なお、画像処理装置のハードウェア構成および機能ブロック構成は前述の実施形態（図１及び図２）と同様である。
【０１６０】
画像データ取得部２０１は、入力画像データと、入力画像データを撮像した際の撮像装置の画角および焦点距離を取得する。また、被写体の距離情報を取得する。ここでは、距離情報として距離マップを用いる。
【０１６１】
パラメータ設定部２０２は、距離マップに基づいて各種の法線ベクトルを算出する。処理の詳細は後述する。
【０１６２】
図２５は、第８実施形態における一連の処理のフローチャートである。Ｓ３０２〜３０３、Ｓ３０５、Ｓ３０７〜３１０は第１実施形態と同一であるため説明を省略する。
【０１６３】
ステップＳ２５０１では、画像データ取得部２０１は、入力画像データ、撮影時の画角および焦点距離、距離マップをＨＤＤ１０４または撮像装置から取得する。
【０１６４】
ステップＳ２５０４では、パラメータ設定部２０２は、Ｓ２５０１で取得した距離マップに基づいて、Ｓ３０３で設定した代表点を含む面の向きを求めることにより、代表法線ベクトルを算出する。まず、撮影時の画角および焦点距離と、距離マップとを用いて、入力画像の各画素に対応する被写体表面上の点の三次元座標を算出する。
【０１６５】
次に、入力画像を複数の領域に分割し、画素に対応する三次元の点群データに対して、領域ごとに平面をフィッティングする。入力画像の分割は、予め定めた分割数に従ったブロック分割でもよいし、画素値に基づく一般的な領域分割手法を用いた分割でもよい。平面のフィッティングは、例えば、領域内に含まれる画素に対応する点群との二乗距離の総和が最小となる平面を求めればよい。そして、代表点が含まれる領域にフィッティングした平面の単位法線ベクトルを、代表法線ベクトルとする。
【０１６６】
ステップＳ２５０６では、パラメータ設定部２０２は、Ｓ２５０４における代表点をＳ３０５で選択した注目画素に置き換えて同様の処理を行い、注目画素に対応する法線ベクトルを算出する。なお、平面のフィッティングは再度行う必要はなく、Ｓ２５０４で行った結果を流用可能である。
【０１６７】
以上で説明した第８実施形態によれば、距離マップから法線情報を算出し、これに基づいてホワイトバランス調整を行うことができる。
【０１６８】
なお、本実施形態では、距離マップに基づいて算出した三次元の点群データに平面をフィッティングすることで被写体を構成する面を求めたが、距離マップから三次元形状を生成する他の形状モデル生成技術を用いて被写体表面を求めてもよい。
【０１６９】
また、距離マップから法線マップを生成し、第１〜４、６実施形態を適用してもよい。距離マップから法線マップを生成する方法については、種々の手法が一般に知られており、本発明の主眼ではないため、詳細な説明を省略する。
【０１７０】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１７１】
１００  画像処理装置；  １０４  ＨＤＤ；  １１１  ディスプレイ；  ２０１  画像データ取得部；  ２０２  パラメータ設定部；  ２０３  色処理部
【図１】
2018182718.tif 000016
【図２】
2018182718.tif 000017
【図３】
2018182718.tif 000018
【図４】
2018182718.tif 000019
【図５】
2018182718.tif 000020
【図６】
2018182718.tif 000021
【図７】
2018182718.tif 000022
【図８】
2018182718.tif 000023
【図９】
2018182718.tif 000024
【図１０】
2018182718.tif 000025
【図１１】
2018182718.tif 000026
【図１２】
2018182718.tif 000027
【図１３】
2018182718.tif 000028
【図１４】
2018182718.tif 000029
【図１５】
2018182718.tif 000030
【図１６】
2018182718.tif 000031
【図１７】
2018182718.tif 000032
【図１８】
2018182718.tif 000033
【図１９】
2018182718.tif 000034
【図２０】
2018182718.tif 000035
【図２１】
2018182718.tif 000036
【図２２】
2018182718.tif 000037
【図２３】
2018182718.tif 000038
【図２４】
2018182718.tif 000039
【図２５】
2018182718.tif 000040