(57)【特許請求の範囲】
【請求項１】
画像を複数のブロックに分割し、前記ブロック毎に画素値の統計をとることでブロック統計値を算出する統計値算出部と、
複数の光源にそれぞれ対応する複数のシェーディング推定係数を記憶する推定係数記憶部と、
前記統計値算出部によって算出された前記ブロック統計値と、前記推定係数記憶部によって記憶された前記シェーディング推定係数とに基づいて、画像のシェーディング強度を推定するシェーディング推定部と、
シェーディング強度毎の無彩色判定範囲をあらかじめ記憶し、前記推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定する光源色推定部と、
前記画像中の画素の色座標を算出し、前記設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出する補正係数算出部と、
前記算出したホワイトバランスゲインを用いて前記画像のホワイトバランスを補正する補正部と
を備える画像処理装置。
【請求項２】
前記シェーディング推定部は、前記画像の平坦度に基づいてシェーディング推定の信頼度を算出し、
前記光源色推定部は、前記信頼度が所定値以下であったときに、所定の無彩色判定範囲を前記色空間に設定する
請求項１記載の画像処理装置。
【請求項３】
前記光源色推定部は、前記画像の被写体輝度が所定の範囲内のときに、複数の無彩色判定範囲を選択し、前記複数の無彩色判定範囲に基づいて第２の無彩色判定範囲を生成し、
前記第２の無彩色判定範囲を前記無彩色判定範囲として前記色空間に設定する
請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記シェーディング推定部は、前記画像に複数のシェーディング推定係数を適用して前記画像を適切に補正するシェーディング推定係数を選択し、
前記光源色推定部は、シェーディング推定係数毎に無彩色判定範囲を記憶し、前記選択したシェーディング推定係数に対応する無彩色判定範囲を設定する
請求項１乃至請求項３のいずれか１項記載の画像処理装置。
【請求項５】
前記シェーディング推定係数は、前記ブロックにそれぞれ対応する係数値を有し、
前記シェーディング推定部は、前記ブロック統計値と前記係数値とを乗算して前記画像を適切に補正するシェーディング推定係数を選択して、シェーディング強度を推定し、
前記補正係数算出部は、前記ブロックの色座標を算出し、前記設定した無彩色判定範囲に含まれる色座標を有するブロックの前記ブロック統計値に基づいて、前記ホワイトバランスゲインを算出する
請求項４記載の画像処理装置。
【請求項６】
シェーディング強度毎の無彩色判定範囲を記憶するステップと、
画像を複数のブロックに分割し、前記ブロック毎に画素値の統計をとることでブロック統計値を算出するステップと、
複数の光源にそれぞれ対応する複数のシェーディング推定係数を記憶するステップと、
前記ブロック統計値と、前記シェーディング推定係数とに基づいて、画像のシェーディングを推定するステップと、
前記推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定するステップと、
前記画像中の画素の色座標を算出し、前記設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出するステップと、
前記算出したホワイトバランスゲインを用いて前記画像のホワイトバランスを補正するステップと
を有する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び画像処理方法に関する。
【背景技術】
【０００２】
デジタルスチルカメラ等の画像処理装置は、光源に拘わらず被写体色を正確に再現できるように、ホワイトバランスを調整する。例えば、特許文献１には、画像処理装置が、撮像画像の被写体を照らす光源を推定し、光源推定の信頼度を算出し、カラーフェリアを抑制しつつ撮像画像のホワイトバランスを補正することが記載されている。また、特許文献２にも、画像処理装置が、撮像画像のホワイトバランスを補正することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１１５５７１号公報
【特許文献２】特開２０１５−０９５８１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
背景技術に係る画像処理装置によりホワイトバランスを適切に補正することができる。しかしながら、特許文献１に係る画像処理装置では光源推定の信頼度を複数フレーム分蓄積して処理するために、装置の起動直後などにはカラーフェリアを抑制できないことがあった。
【０００５】
本発明は、このような問題を解決するためになされたものであり、補正する対象の画像を用いて、当該画像の被写体を照らす光源を適切に推定し、カラーフェリアを抑制してホワイトバランスを補正することができる画像処理装置及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、画像のシェーディング強度を推定するシェーディング推定部と、シェーディング強度毎の無彩色判定範囲をあらかじめ記憶し、推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定する光源色推定部と、画像中の画素の色座標を算出し、設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出する補正係数算出部と、算出したホワイトバランスゲインを用いて画像のホワイトバランスを補正する補正部とを備えるものである。
【０００７】
また、本発明に係る画像処理方法は、シェーディング強度毎の無彩色判定範囲を記憶するステップと、画像のシェーディング強度を推定するステップと、推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定するステップと、画像中の画素の色座標を算出し、設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出するステップと、算出したホワイトバランスゲインを用いて画像のホワイトバランスを補正するステップとを有するものである。
【発明の効果】
【０００８】
本発明により、光源を適切に推定し、カラーフェリアを抑制してホワイトバランスを補正する画像処理装置及び画像処理方法を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態に係るデジタルスチルカメラ１００の構成を示すブロック図である。
【図２】代表的な光源の色温度及びシェーディング強度を説明するための図である。
【図３】各光源下で自然画写真を被写体にして撮像した画像のシェーディング推定結果を示す図である。
【図４】実施の形態に係る正規化ゲインの算出方法の処理手順を示すフローチャートである。
【図５】実施の形態に係るブロック重みＢｗの算出方法の処理手順を示すフローチャートである。
【図６】実施の形態に係るＧレベル重みを説明するための図である。
【図７】実施の形態に係るブロック色評価値Ｈｂのヒストグラム及びヒストグラム重みを説明するための図である。
【図８】実施の形態に係るブロック重みＢｗを説明するための図である。
【図９】実施の形態に係る画像処理方法の処理手順を示すフローチャートである。
【図１０】実施の形態に係る光源の推定方法を説明するための図である。
【図１１】実施の形態に係る推定光源毎の無彩色判定範囲を示す図である。
【図１２】実施の形態に係る第２の無彩色判定範囲の生成方法を説明するための図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して本実施の形態に係る画像処理装置及び画像処理方法について説明する。
本実施の形態に係る画像処理装置及び画像処理方法は、撮像時の光源によって撮像画像のシェーディング強度が異なることを利用して、撮像画像のシェーディング強度から被写体を照らす光源を推定し、ホワイトバランスゲインを算出するときの無彩色判定範囲を変更してカラーフェリアを抑制するものである。
【００１１】
まず、本実施の形態に係る画像処理装置の構成について、画像処理装置の一例であるデジタルスチルカメラ１００の構成を用いて説明する。
図１は、本実施の形態に係るデジタルスチルカメラ１００の構成を示すブロック図である。
【００１２】
電子的撮像装置であるデジタルスチルカメラ１００は、レンズ光学系１０２、撮像素子１０４、ＡＦＥ回路１０６、画像信号処理回路１０８、画像表示部１１０、画像記録部１１２、ドライバ１１４、タイミングジェネレータ（ＴＧ）１１６、画像ブロック統計回路１１８、シェーディング制御部１２０、シェーディング補正係数記憶部１２２、ホワイトバランス制御部１３０などを備えている。
【００１３】
レンズ光学系１０２は、レンズ、絞り、シャッターなどを有し、被写体像を撮像素子１０４の撮像面に結像する。撮像素子１０４はＣＣＤやＣＭＯＳなどのイメージセンサであり、撮像素子１０４のレンズ光学系１０２側には赤外カットフィルタ（図示せず）が装着されている。撮像素子１０４は、被写体像を光電変換して画像信号（ＲＧＢ色信号）を取得する。ＡＦＥ回路１０６は、撮像素子１０４が取得し、ＣＤＳ回路（図示せず）が信号処理を施した画像信号をＡ／Ｄ変換してデジタル信号とする。
【００１４】
画像信号処理回路１０８は、ＡＦＥ回路１０６が出力した画像信号に、デモザイキング処理、エッジ強調処理、シェーディング補正処理、ホワイトバランス（ＷＢ）補正処理、ガンマ補正処理などを施す。画像表示部１１０は液晶表示ディスプレイ（ＬＣＤ）などであり、画像信号処理回路１０８で各種処理が施された画像信号を表示する。画像記録部１１２はメモリであり、画像信号処理回路１０８で各種処理が施された画像信号を記録する。
【００１５】
ドライバ１１４は、レンズ光学系１０２のレンズ、絞り、シャッターを駆動する。タイミングジェネレータ１１６は、撮像素子１０４を駆動するためのタイミングを生成する。
画像ブロック統計回路１１８は、ＡＦＥ回路１０６でデジタル信号となった画像信号の撮像画像領域又は撮像画像領域の一部の領域を格子状に分割して複数のブロックとし、ブロック毎にブロック統計値を算出する。画像ブロック統計回路１１８は、ブロック統計値として、各ブロック内のＲＧＢ別の画素積算値又はＲＧＢ別の画素平均値を算出する。
【００１６】
また、画像ブロック統計回路１１８は、被写体輝度、すなわち、撮像画像領域の平均輝度を算出する。平均輝度の算出方法には、例えば、特許文献１記載の方法を採用する。
【００１７】
シェーディング制御部１２０は、シェーディング推定部１２４、シェーディング補正係数算出部１２６などを有している。シェーディング推定部１２４は、画像ブロック統計回路１１８が算出したブロック統計値と、シェーディング補正係数記憶部１２２が記憶するシェーディング推定係数とに基づいてシェーディング強度を推定し、画像に適したシェーディング推定係数を選択する。シェーディング補正係数記憶部１２２には、シェーディング推定係数が光源毎に、また、Ｒ値、Ｇ値、Ｂ値毎に用意されている。シェーディング推定係数は、ブロック毎の係数値を有している。
【００１８】
シェーディング推定係数は、各光源下で撮像した白色チャートの画像を用いて算出する。白色チャートには、標準白色反射板などの分光反射率が対象波長域全般に亘って一定でかつ９０％以上の均等拡散反射面を用いることが望ましい。赤外光が多く含まれる電球などの光源に対しては、画像周辺部のＲ信号を強く補正するシェーディング推定係数が算出される。赤外光があまり含まれない蛍光灯などの光源に対しては、画像周辺部のＲ信号を弱く補正するシェーディング推定係数が算出される。
【００１９】
また、シェーディング推定部１２４は、シェーディング推定の信頼度を算出する。そして、選択したシェーディング推定係数と、算出したシェーディング推定の信頼度とをホワイトバランス制御部１３０に出力する。
【００２０】
シェーディング補正係数算出部１２６は、シェーディング推定部１２４が選択したシェーディング推定係数に対応するシェーディング補正係数をシェーディング補正係数記憶部１２２から選択し、画像信号処理回路１０８において撮像画像のシェーディングを補正する。シェーディング補正係数記憶部１２２には、シェーディング補正係数が光源毎に、また、Ｒ値、Ｇ値、Ｂ値毎に用意されている。シェーディング補正係数は、画素毎又は複数の画素毎の係数値を有している。
【００２１】
シェーディング補正係数記憶部１２２は、シェーディング推定係数とシェーディング補正係数との組みを太陽光、電球、蛍光灯などの光源別に記憶している。多くの場合に、シェーディング推定係数とシェーディング推定係数とは１対１の組みとなっているが、これに限られるものではない。シェーディング推定係数及びシェーディング補正係数は、パソコンなどの外部装置において算出することができる。シェーディング補正係数には、シェーディング推定係数と同一のものと、シェーディング推定係数と異なるものとがある。
【００２２】
ホワイトバランス制御部１３０は、光源色推定部１３２、ホワイトバランス補正係数算出部１３４などを有している。
光源色推定部１３２は、シェーディング推定結果に基づいて撮像画像の被写体を照らす光源又は光源色を推定し、色空間上で色座標範囲を定義する無彩色判定範囲を選択して設定する。具体的には、光源色推定部１３２は、シェーディング推定係数と、光源（光源色）と、無彩色判定範囲とを対応付けて記憶しており、シェーディング推定部１２４で選択されたシェーディング推定係数に対応する無彩色判定範囲を選択する。
このために、光源色推定部１３２は、無彩色判定範囲を記憶する無彩色判定範囲記憶部（図示せず）を有していても良い。
【００２３】
ホワイトバランス補正係数算出部１３４は、画像ブロック統計回路１１８が算出したブロック統計値を前述した色空間上の色座標に変換する。
そして、各ブロックの色座標が、光源色推定部１３２が選択した無彩色判定範囲に含まれるかどうかを判定し、無彩色判定範囲に含まれるブロック、すなわち、無彩色と判定されたブロックのブロック統計値を用いてホワイトバランスゲインを算出する。
【００２４】
なお、シェーディング制御部１２０及びホワイトバランス制御部１３０が実現する各構成要素は、例えば、コンピュータであるシェーディング制御部１２０及びホワイトバランス制御部１３０が備える演算装置（図示せず）の制御によって、プログラムを実行させることにより実現できる。
【００２５】
より具体的には、シェーディング制御部１２０及びホワイトバランス制御部１３０は、記憶部（図示せず）に格納されたプログラムを主記憶装置（図示せず）にロードし、演算装置の制御によってプログラムを実行して実現する。また、各構成要素は、プログラムによるソフトウェアで実現することに限ることなく、ハードウェア、ファームウェア及びソフトウェアのうちのいずれかの組み合わせなどにより実現しても良い。
【００２６】
上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。
【００２７】
非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。
【００２８】
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってシェーディング制御部１２０及びホワイトバランス制御部１３０に供給されても良い。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバなどの有線通信路、または無線通信路を介して、プログラムをコンピュータに供給できる。
【００２９】
次に、本実施の形態に係るデジタルスチルカメラ１００の動作、すなわち、画像処理方法について説明する。
まず、本実施の形態に係るデジタルスチルカメラ１００の光源推定処理の概要について説明する。
図２は、代表的な光源の色温度及びシェーディング強度を説明するための図である。横軸は色温度を、縦軸はシェーディング強度を示している。
【００３０】
色温度に関しては、電球は低色温度を有し、昼光は高色温度を有している。しかしながら、蛍光灯、ＬＥＤは電球色（Ｌ）、白色（Ｗ）、昼白色（Ｎ、Ｄ）と広範囲の色温度を有している。このため、同じ色温度を有していても、異なる光源である可能性があり、色温度から光源を推定することは難しい。
【００３１】
これに対して、シェーディング強度に関しては、近赤外光線を多く含む電球又は昼光などの光源では、撮像画像にシェーディングが強く発生する。また、発光効率を良くするために近赤外光をほとんど含んでいない蛍光灯、ＬＥＤなどの光源では、撮像画像にシェーディングが弱く発生する。このため、撮像画像のシェーディング強度が図２に示す区間α内にあれば光源は電球であり、区間β内にあれば電球又は昼光であり、区間γ内にあれば昼光であり、区間δ内にあれば蛍光灯又はＬＥＤであると、撮像画像のシェーディング強度から光源を推定することができる。
本実施の形態に係る光源推定処理では、このようにして、撮像画像のシェーディング強度から光源を推定する。
【００３２】
また、撮像画像の中には、シェーディング強度と光源とのこのような対応関係がうまく成立しないものもある。例えば、電球、蛍光灯などの複数の光源が存在したり、被写体が青空であったり、昼光下の赤い物体であったりしたときの撮像画像では、上記対応関係がうまく成立しない。
【００３３】
図３は、各光源下で自然画写真を被写体にして撮像した画像のシェーディング推定結果を示す図である。４種類（昼光、白色蛍光灯、ナチュラル色蛍光灯、電球）の光源下で、様々な配色からなる自然画写真７５枚を被写体にして撮像した画像について、シェーディングを推定した結果である。横軸はシェーディング推定係数の種類（シェーディング推定係数の番号）を示し、縦軸はシェーディングを推定した結果、当該番号のシェーディング推定係数が選択された画像の枚数を示している。
【００３４】
例えば、光源が昼光のときは、４０枚近い画像に対して番号６のシェーディング推定係数が当該画像のシェーディングを適切に補正するとして選択されている。ここでは、シェーディング推定係数はその番号が大きいものほどシェーディングの発生が顕著な画像（シェーディング強度が大きい画像）に対応し、シェーディングを強く補正する。
【００３５】
また、各光源下で白色板を被写体にして撮像した画像についてシェーディングを推定したときの推定結果（シェーディング推定係数の番号）に対応する棒にハッチングを付している。例えば、白色蛍光灯下で白色板を撮像した画像については、番号１のシェーディング推定係数が最も適切にシェーディングを補正するので、番号１のシェーディング推定係数の棒にハッチングを付している。
【００３６】
シェーディングは光源によっても被写体色によっても特性が変化するため、いずれの光源の場合にも、自然画写真を撮影した画像のシェーディング推定結果の約半数が、白色板を撮像した画像のシェーディング推定結果と一致している。
そこで、シェーディング推定結果が、白色板を撮像した画像のシェーディング推定結果と一致することを、シェーディング推定結果の信頼度として用いれば、光源を更に適切に推定することができる。
【００３７】
一般に、色分布が一様な被写体が大面積で存在する画像のシェーディング推定結果と、白色板を撮像した画像のシェーディング推定結果とは一致する。
そこで、本実施の形態に係る画像処理方法では、撮像画像が色分布が一様な被写体が大面積で存在する画像であるかどうかを以下のようにブロック重みＢｗを算出して判定し、シェーディング推定結果の信頼度としている。前述したように、シェーディング推定結果の信頼度の算出はシェーディング推定部１２４が行う。
【００３８】
シェーディング推定部１２４は、ホワイトバランスを補正する対象の画像のブロック統計値に、シェーディングを最も弱く補正するシェーディング推定係数（以下、「シェーディング推定初期係数」という。）の係数値を乗算した結果を用いて正規化ゲイン（Ａｖｅｒａｇｅ  Ｇａｉｎ）を算出し、正規化ゲインを用いてブロック色評価値Ｈｂを算出し、ブロック色評価値ＨｂとＧレベル重みとを用いてブロック重みＢｗを算出する。
【００３９】
図４は、本実施の形態に係る正規化ゲインの算出方法の処理手順を示すフローチャートである。
シェーディング推定部１２４は、評価するブロックのＲ、Ｇ、Ｂ値を正規化するため、シェーディング補正前のブロック統計値にシェーディング推定初期係数の係数値を乗算して対象画像のシェーディングを軽減し、正規化ゲインを算出する。
【００４０】
すなわち、ブロック検波データにシェーディング推定初期係数を乗算する（ステップＳ２０１）。ブロック統計値をＲｉ、Ｇｉ、Ｂｉとし、シェーディング推定初期係数の係数値をＮｒ、Ｎｇ、Ｎｂとしたときに、シェーディング推定初期係数を乗算後のブロック統計値Ｒｎ（Ｎ，Ｍ）、Ｇｎ（Ｎ，Ｍ）、Ｂｎ（Ｎ，Ｍ）は（１）式で表される。
【数１】
0006563751.tif 000002
【００４１】
次に、シェーディング推定初期係数を乗算後のブロック統計値Ｒｎ（Ｎ，Ｍ）、Ｇｎ（Ｎ，Ｍ）、Ｂｎ（Ｎ，Ｍ）を全ブロック分積算し（ステップＳ２０２、Ｓ２０３）、そのブロック統計値の比から正規化ゲイン（Ａｖｅｒａｇｅ  Ｇａｉｎ）を算出する。ここでは、Ｇ画素の正規化ゲインは１．０とし、Ｒ画素とＢ画素の正規化ゲインを求める。
【００４２】
具体的には、（２）式を用いて、正規化ゲインを求める。
【数２】
0006563751.tif 000003
【００４３】
すなわち、Ｒｎ（Ｎ，Ｍ）またはＢｎ（Ｎ，Ｍ）の積算値が０か否か判定し（ステップＳ２０４、Ｓ２０７）、０の場合、Ｒ画素またはＢ画素の正規化ゲイン（Ａｖｅｒａｇｅ  Ｇａｉｎ  Ｒ／Ａｖｅｒａｇｅ  Ｇａｉｎ  Ｂ）を１．０とする（ステップＳ２０６、Ｓ２０９）。一方、Ｒｎ（Ｎ，Ｍ）またはＢｎ（Ｎ，Ｍ）の積算値が０ではない場合、Ｒ画素の正規化ゲイン＝Ｇ積算値／Ｒ積算値またはＢ画素の正規化ゲイン＝Ｇ積算値／Ｂ積算値とする（ステップＳ２０５、Ｓ２０８）。また、オーバーフロー防止のため、Ｒ画素またはＢ画素の正規化ゲインは、正規化ゲイン上限値（Ａｖｅｒａｇｅ  Ｇａｉｎ  Ｌｉｍｉｔ）（Ｒ，Ｂ）の値で上限クリップする（上限値とする）。
【００４４】
図５は、本実施の形態に係るブロック重みＢｗの算出方法の処理手順を示すフローチャートである。
図４に示した動作に続いて、シェーディング推定部１２４は、暗部や飽和付近のブロックを評価対象から除外する目的でＧレベル重みを算出する（ステップＳ２１０）。
【００４５】
図６は、本実施の形態に係るＧレベル重みを説明するための図である。
Ｇレベル重みは、シェーディング推定係数を乗算後のブロック統計値のＧ値のレベルを参照し、あらかじめ設定した上限閾値と下限閾値との間のブロックを１．０とし、閾値範囲外のブロックを０．０とする。また、Ｒ画素値、Ｇ画素値、Ｂ画素値のいずれかの値が、予め設定した範囲外のブロックを、評価対象ブロックから除外してもよい。
【００４６】
次に、全ブロックのブロック色評価値Ｈｂを算出する（ステップＳ２１１）。（３）式のように、（１）式及び（２）式で求めた、シェーディング推定初期係数を乗算後のブロック統計値Ｇｎ（Ｎ，Ｍ）、Ｂｎ（Ｎ，Ｍ）に正規化ゲイン（Ａｖｅｒａｇｅ  Ｇａｉｎ）を乗算し、ブロック色評価値Ｈｂ（Ｎ，Ｍ）を算出する。
【数３】
0006563751.tif 000004
【００４７】
次に、ブロック色評価値Ｈｂのヒストグラムを生成し（ステップＳ２１２）、最頻値から離れているブロックを除外する目的でヒストグラム重みを算出する（ステップＳ２１３〜Ｓ２１５、Ｓ２１７）。
図７は、本実施の形態に係るブロック色評価値Ｈｂのヒストグラム及びヒストグラム重みを説明するための図である。ヒストグラムは、ブロック色評価値Ｈｂ＝０．６５〜１．３５の範囲に０．０５刻みのビンを設定したときの例である。
【００４８】
具体的には、ヒストグラムの最頻値を探索し（ステップＳ２１３）、各ブロックについて、ブロック色評価値Ｈｂがヒストグラム最頻値から有効レンジ内か否か判定し（ステップＳ２１４）、図７に示すように、有効レンジ内の場合にヒストグラム重み＝１（ステップＳ２１５）とし、有効レンジ外の場合にヒストグラム重み＝０とする（ステップＳ２１７）。そして、ヒストグラム重み＝１のブロックが、評価対象ブロックとして選択される。
【００４９】
次に、Ｇレベル重みとヒストグラム重みとを乗算してブロック重みＢｗを生成する（ステップＳ２１６）。
図８は、本実施の形態に係るブロック重みＢｗを説明するための図である。画像の周辺部のブロックのブロック重みＢｗが１になっている。
これらの処理（ステップＳ２１４〜Ｓ２１８）を繰り返し、全ブロックについてブロック重みＢｗを算出する。
【００５０】
そして、撮像画像の全ブロック数に対する、ブロック重みＢｗ＝１となったブロック数の比率を算出する。この比率が大きいほど、撮像画像が色分布が一様な被写体が大面積で存在する画像であると判定することができ、この比率をシェーディング推定結果の信頼度とし、信頼度と閾値とを比較して、シェーディング推定結果の信頼性の高さを判断する。
【００５１】
なお、撮像画像が、色分布が一様な被写体が大面積で存在する画像であるかどうかは、他の方法を用いて判定しても良い。例えば、全てのブロック統計値の分散度を用いて、判定しても良い。
すなわち、ブロック重みＢｗ＝１となったブロックの比率、全てのブロック統計値の分散度などの撮像画像の平坦度に基づいて、撮像画像が色分布が一様な被写体が大面積で存在する画像であるかを判定しても良い。
本実施の形態に係る光源推定処理では、このようにして、シェーディング推定結果の確からしさを求め、光源推定の確からしさを求めている。
【００５２】
続いて、本実施の形態に係るデジタルスチルカメラ１００のホワイトバランスゲイン算出処理について説明する。
図９は、本実施の形態に係る画像処理方法の処理手順を示すフローチャートである。
デジタルスチルカメラ１００が被写体を撮像すると、上述したように、画像ブロック統計回路１１８が撮像画像の被写体輝度、ブロック統計値などを算出する。
【００５３】
そして、シェーディング推定部１２４がブロック統計値、シェーディング推定係数などを用いて撮像画像のシェーディングを推定する（ステップＳ１０）。このシェーディング推定処理については、特許文献２、特開２０１３−１９８０４１号公報などに記載された処理方法を採用することができ、ここでは詳細な説明を省略する。シェーディング推定部１２４はシェーディング推定の結果として、撮像画像に適したシェーティング推定係数、シェーディング推定結果の信頼度などを出力する。
【００５４】
次に、光源色推定部１３２が、被写体輝度、シェーディング推定の結果などに基づいて光源を推定し、無彩色判定範囲を選択して設定する（ステップＳ２０）。
図１０は、本実施の形態に係る光源の推定方法を説明するための図である。光源色推定部１３２は、図１０に示すような被写体輝度と、シェーディング推定係数番号と、推定光源との関係を示すテーブルをあらかじめ記憶している。テーブル中の※印は、シェーディング推定の信頼度が低い場合の選択肢を示している。シェーディング推定係数番号が大きいものほど、シェーディング強度が大きい画像に対応して、画像のシェーディングを強く補正する。
【００５５】
図１１は、本実施の形態に係る推定光源毎の無彩色判定範囲を示す図である。Ｇ／Ｒ-Ｇ／Ｂ色空間に設定した推定光源毎の無彩色判定範囲の色座標範囲を示している。
光源色推定部１３２は、図１０に示したテーブルを参照して光源を推定し、図１１に示した無彩色判定範囲を選択する。
【００５６】
例えば、光源色推定部１３２は、被写体輝度が低輝度で、シェーディング推定の結果として選択されたシェーディング推定係数が番号５で、シェーディング推定の信頼度が高いときには、光源は太陽光＋電球（ＨＬ）であると推定して、無彩色判定範囲として太陽光＋電球に対応するもの（ＨＬ）を選択する。
【００５７】
また、光源色推定部１３２は、被写体輝度が低輝度で、シェーディング推定結果のシェーディング推定係数が番号５で、シェーディング推定の信頼度が低いときには、シェーディング推定結果に拘わらず、光源は全光源（Ａ）であると推定して、無彩色判定範囲として全光源に対応するもの（Ａ）を選択する。
【００５８】
また、光源色推定部１３２は、被写体輝度が中輝度で、シェーディング推定結果のシェーディング推定係数が番号５で、シェーディング推定の信頼度が高いときには、光源は太陽光＋電球（ＨＬ）又は太陽光（Ｈ）であると推定し、無彩色判定範囲として太陽光＋電球に対応するもの（ＨＬ）と太陽光に対応するもの（Ｈ）とを、つまり、２つの範囲を選択する。
【００５９】
また、光源色推定部１３２は、被写体輝度が高輝度のときには、シェーディング推定の結果及びシェーディング推定の信頼度に拘わらず、光源は太陽光（Ｈ）であると推定し、無彩色判定範囲として太陽光に対応するもの（Ｈ）を選択する。
なお、被写体輝度は、例えば、Ｂｖ値（Brightness value）の４．０、８．０を境に低輝度、中輝度、高輝度を判断する。
【００６０】
次に、光源色推定部１３２は、ステップＳ２０において、被写体輝度が中輝度で無彩色判定範囲を２つ選択したときに、それらの範囲を用いて新たな範囲（以下、「第２の無彩色判定範囲」という。）を生成する（ステップＳ３０）。
図１２は、本実施の形態に係る第２の無彩色判定範囲の生成方法を説明するための図である。ステップＳ２０において、無彩色判定範囲として、蛍光灯、ＬＥＤに対応するもの（Ｍ）と太陽光に対応するもの（Ｈ）とを選択したときの第２の無彩色判定範囲（Ｓ）を生成する方法を示している。
【００６１】
すなわち、２つの無彩色判定範囲（Ｍ、Ｈ）の境界上にあらかじめ複数の対応点ａ１〜ａ６と対応点ｂ１〜ｂ６とを定義しておき、被写体輝度（Ｂｖ値）に応じて対応点間に補間点ｃ１〜ｃ６を生成し、補間点ｃ１〜ｃ６を線で結んで第２の無彩色判定範囲を生成する。このとき、被写体輝度が低輝度側に近い、すなわち、Ｂｖ値が４に近いのであれば、低輝度側の無彩色判定範囲（Ｍ）の対応点ａ１に近い側に補間点ｃ１を生成し、被写体輝度が高輝度側に近い、すなわち、Ｂｖ値が８に近いのであれば、高輝度側の無彩色判定範囲（Ｈ）の対応点ｂ１に近い側に補間点ｃ１を生成する。例えば、Ｂｖ値が５であれば、対応点ａ１と対応点ｂ１とを１：３に内分する位置に補間点ｃ１を生成する。
なお、無彩色判定範囲をｎ角形で定義しておけば、補間点を線で結んで第２の無彩色判定範囲を生成する処理を簡易化することができる。
【００６２】
次に、ホワイトバランス補正係数算出部１３４が、ブロック毎の色座標を算出し、この色座標がステップＳ２０で選択した無彩色判定範囲又はステップＳ３０で生成した第２の無彩色判定範囲に含まれるか判定し、色座標が無彩色判定範囲又は第２の無彩色判定範囲に含まれるブロックは無彩色であると判断して、無彩色のブロックを用いてホワイトバランスゲインを算出する（ステップＳ４０）。
【００６３】
本実施の形態に係る画像処理方法では、ホワイトバランスゲインの算出方法そのものは、従来技術の算出方法を用いれば良い。例えば、光源色と思われるブロック（無彩色のブロック）の画素平均値に基づいてホワイトバランスゲインを算出しても良い。
そして、ホワイトバランス補正係数算出部１３４が算出したホワイトバランスゲインを画像信号処理回路１０８へ入力し、画像信号処理回路１０８においてホワイトバランス補正を行う。
【００６４】
このように、本実施の形態に係る画像処理装置又は画像処理方法は、撮像時の光源によって撮像画像のシェーディング強度が異なることを利用して、撮像画像のシェーディング強度から被写体を照らす光源を推定し、ホワイトバランスゲインを算出するときの無彩色判定範囲を変更してカラーフェリアを抑制するようにしている。
【００６５】
なお、本実施の形態に係る画像処理装置又は画像処理方法では、シェーディング推定係数の種別により光源を推定し、光源毎に設定した無彩色判定範囲を選択したが、シェーディング推定係数の種別毎に無彩色判定範囲を設定し、シェーディング推定係数の種別により無彩色判定範囲を選択しても良い。すなわち、光源を推定する手順を省略しても良い。
【００６６】
また、本実施の形態に係る画像処理装置又は画像処理方法では、シェーディング推定係数の種別によりシェーディング強度を推定したが、撮像画像の中心部における画素値と画像の周辺部における画素値との比、又は画像の中心部におけるブロック統計値と画像の周辺部におけるブロック統計値との比によりシェーディング強度を推定しても良い。そして、上記画素値の比の範囲毎又は上記ブロック統計値の比の範囲毎にあらかじめ推定光源又は無彩色判定範囲を設定しておき、測定した画素値の比又はブロック統計値の比に応じて無彩色判定範囲を選択するようにしても良い。
【００６７】
また、本実施の形態に係る画像処理装置又は画像処理方法では、被写体輝度、シェーディング推定の結果及びシェーディング推定の信頼度を用いて光源を推定し、無彩色判定範囲を選択するようにしたが、状況に応じて、例えば、処理速度を優先するために、シェーディング推定の信頼度を用いずに、被写体輝度及びシェーディング推定の結果を用いて光源を推定し無彩色判定範囲を選択するようにしても良いし、被写体輝度及びシェーディング推定の信頼度を用いずに、シェーディング推定の結果だけを用いて光源を推定し無彩色判定範囲を選択するようにしても良い。すなわち、シェーディング推定係数の種別と推定光源と無彩色判定範囲とを対応付けて記憶しておき、選択されたシェーディング推定係数の種別に基づいて光源を推定し無彩色判定範囲を選択するようにしても良い。
【００６８】
また、本実施の形態に係る画像処理装置又は画像処理方法では、Ｇ／Ｒ-Ｇ／Ｂ色空間を用いて無彩色判定範囲を設定したが、色空間は別のものを用いても良く、その色空間に合わせた無彩色判定範囲を設定しても良い。
【００６９】
また、本実施の形態に係る画像処理装置又は画像処理方法では、ブロック毎に色座標を算出し、無彩色判定範囲に含まれるか判定してホワイトバランスゲインを算出したが、画素毎に色座標を算出し、当該画素の色座標が無彩色判定範囲に含まれるか判定し、画素値を用いてホワイトバランスゲインを算出しても良い。すなわち、画像処理の各ステップをブロック単位で処理する代わりに画素単位で処理するようにしても良い。
【００７０】
また、本実施の形態に係る画像処理装置又は画像処理方法では、被写体輝度が中輝度のときに、２つの無彩色判定範囲を選択して、第２の無彩色判定範囲を生成し設定したが、２つ以上の無彩色判定範囲を選択して、第２の無彩色判定範囲を生成するようにしても良し、１つの無彩色判定範囲を選択して設定するようにしても良い。
【００７１】
以上、説明したように、本実施の形態に係る画像処理装置１００は、画像のシェーディング強度を推定するシェーディング推定部１２４と、シェーディング強度毎の無彩色判定範囲をあらかじめ記憶し、推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定する光源色推定部１３２と、画像中の画素の色座標を算出し、設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出する補正係数算出部１３４と、算出したホワイトバランスゲインを用いて画像のホワイトバランスを補正する補正部１０８とを備えるものである。
このような構成により、光源を適切に推定し、カラーフェリアを抑制してホワイトバランスを補正することができる。
【００７２】
また、本実施の形態に係る画像処理装置１００は、シェーディング推定部１２４が、画像の平坦度に基づいてシェーディング推定の信頼度を算出し、光源色推定部１３２が、信頼度が所定値以下であったときに、所定の無彩色判定範囲を色空間に設定することが好ましい。
このような構成により、シェーディング推定の信頼度に基づいて光源を更に適切に推定して、カラーフェリアを更に抑制することができる。
【００７３】
また、本実施の形態に係る画像処理装置１００は、光源色推定部１３２が、画像の被写体輝度が所定の範囲内のときに、複数の無彩色判定範囲を選択し、複数の無彩色判定範囲に基づいて第２の無彩色判定範囲を生成し、第２の無彩色判定範囲を無彩色判定範囲として色空間に設定することが好ましい。
このような構成により、第２の無彩色判定範囲として無彩色判定範囲をより適切に設定して、ホワイトバランスゲインをより精度良く算出することができる。
【００７４】
また、本実施の形態に係る画像処理装置１００は、シェーディング推定部１２４が、画像に複数のシェーディング推定係数を適用して画像を適切に補正するシェーディング推定係数を選択し、光源色推定部１３２が、シェーディング推定係数毎に無彩色判定範囲を記憶し、選択したシェーディング推定係数に対応する無彩色判定範囲を設定することが好ましい。
このような構成により、選択したシェーディング推定係数に基づいて光源を簡易に適切に推定して、カラーフェリアを抑制することができる。
【００７５】
また、本実施の形態に係る画像処理装置１００は、画像を複数のブロックに分割し、ブロック毎に画素値を統計したブロック統計値を算出する統計値算出部１１８を更に備え、シェーディング推定係数は、ブロックにそれぞれ対応する係数値を有し、シェーディング推定部１２４は、ブロック統計値と係数値とを乗算して画像を適切に補正するシェーディング推定係数を選択し、補正係数算出部１３４は、ブロックの色座標を算出し、設定した無彩色判定範囲に含まれる色座標を有するブロックのブロック統計値に基づいて、ホワイトバランスゲインを算出することが好ましい。
このような構成により、シェーディング推定からホワイトバランスゲイン算出までの全体の演算量を削減しつつ、光源を適切に推定し、ホワイトバランスを適切に補正することができる。
【００７６】
また、本実施の形態に係る画像処理方法は、シェーディング強度毎の無彩色判定範囲を記憶するステップと、画像のシェーディング強度を推定するステップＳ１０と、推定したシェーディング強度に対応する無彩色判定範囲を色空間に設定するステップＳ２０、Ｓ３０と、画像中の画素の色座標を算出し、設定した無彩色判定範囲に含まれる色座標を有する画素の画素値に基づいて、ホワイトバランスゲインを算出するステップＳ４０と、算出したホワイトバランスゲインを用いて画像のホワイトバランスを補正するステップとを有するものである。
このような構成により、光源を適切に推定し、カラーフェリアを抑制してホワイトバランスを補正することができる。
【符号の説明】
【００７７】
１００    デジタルスチルカメラ
１０８    画像信号処理回路
１１８    画像ブロック統計回路
１２０    シェーディング制御部
１２２    シェーディング補正係数記憶部
１２４    シェーディング推定部
１２６    シェーディング補正係数算出部
１３０    ホワイトバランス制御部
１３２    光源色推定部
１３４    ホワイトバランス補正係数算出部
【図１】
0006563751.tif 000005
【図２】
0006563751.tif 000006
【図３】
0006563751.tif 000007
【図４】
0006563751.tif 000008
【図５】
0006563751.tif 000009
【図６】
0006563751.tif 000010
【図７】
0006563751.tif 000011
【図８】
0006563751.tif 000012
【図９】
0006563751.tif 000013
【図１０】
0006563751.tif 000014
【図１１】
0006563751.tif 000015
【図１２】
0006563751.tif 000016