以下、図面を用いて実施形態を説明する。
図1は、画像処理装置および画像処理方法の一実施形態を示す。
図1に示した画像処理装置100は、例えば、スマートフォン等の携帯通信端末あるいはデジタルカメラに搭載される。画像処理装置100は、例えば、補正部10、第1判定部20、第2判定部30および変更部40を有する。なお、画像処理装置100は、ハードディスク装置等の記憶装置を有するコンピュータ装置でもよい。
補正部10は、例えば、携帯通信端末あるいはデジタルカメラに含まれるメモリ等の記憶部に格納された画像から輝度および色温度等を算出する。画像から算出される輝度および色温度等は、画像に含まれる画素の情報の一例である。補正部10は、算出した輝度および色温度等の画像に含まれる画素の情報に基づいて、携帯通信端末あるいはデジタルカメラの記憶部に格納されるシェーディング補正用の複数の補正テーブルのいずれかを選択する。そして、補正部10は、選択した補正テーブルを用いて、画像にシェーディング補正を実行し、補正画像を生成する。
なお、画像の輝度および色温度等の画素の情報は、補正部10の代わりに、画像処理装置100の他の要素により算出されてもよい。また、画像処理装置100がコンピュータ装置である場合、補正部10は、画像処理装置100に接続された携帯通信端末あるいはデジタルカメラ等に格納された画像に対して、シェーディング補正を実行し、補正画像を生成してもよい。
第1判定部20は、補正画像の中央部分の色味(例えば、色差Cb,Crの値)に基づいて、補正画像に色むらが発生しているか否かを判定する第1判定を実行する。例えば、不適切な補正テーブルを用いて補正画像が生成された場合、補正画像に色むらが発生することがある。以下、色むらを発生させた補正テーブルをシェーディング補正に用いることは、補正テーブルの誤適用とも称される。なお、第1判定部20による第1判定の処理は、補正画像の中央部分の色味に基づいて実行されるため、補正画像の中央部分に位置する被写体が有する色味の影響を受ける場合がある。例えば、適正な補正テーブルを用いて生成された補正画像の中央部分における色味が、被写体が有する本来の色味である場合でも、第1判定部20は、補正画像に色むらが発生していると判定する虞がある。
そこで、第1判定部20による第1判定により、補正画像に色むらが発生していると判定された場合、第2判定部30は、色むらを有する基準画像と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する第2判定を実行する。基準画像と補正画像との比較に基づく第2判定の処理は、画像全体を比較することで実行されるため、第2判定部30は、第1判定部20による誤った判定を検出することができる。
変更部40は、第2判定において、補正画像に色むらが発生していると判定された場合、補正部10が用いる補正テーブルを変更する。これにより、画像処理装置100は、適正な補正テーブルを用いて補正画像を生成することが可能となる。
なお、基準画像と補正画像との比較に基づく第2判定の処理は、画像全体を比較することで実行されるため、補正画像の中央部分の色味に基づく第1判定の処理と比べて演算量が多い。図1に示した実施形態では、画像処理装置100は、第1判定部20による第1判定により、補正テーブルの誤適用が疑われる画像(補正画像の中央部分の色味から色むらが発生と判定された画像)に、第2判定部30による第2判定を実行する。第1判定の処理と比べて演算量が多い、第2判定の処理が実行される画像の数を減らすことで、画像処理装置100は、演算量の増加を抑制しつつ、補正テーブルの誤適用を回避することができる。すなわち、画像処理装置100は、シェーディング補正に用いる補正テーブルの選択における演算量の増加を抑制できる。
図2は、画像処理装置および画像処理方法の別の実施形態を示す。図1で説明した要素と同一または同様の機能を有する要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。
画像処理装置100aは、例えば、スマートフォン等の携帯通信端末あるいはデジタルカメラに搭載される。画像処理装置100aは、例えば、補正部10、第1判定部20a、第2判定部30aおよび変更部40を有する。なお、画像処理装置100aは、ハードディスク装置等の記憶装置を有するコンピュータ装置等でもよい。
第1判定部20aは、補正部10により生成された補正画像における互いに交差する第1方向と第2方向(例えば、水平走査方向と垂直走査方向)との色分布に基づいて、補正画像に色むらが発生しているか否かを判定する第1判定を実行する。なお、第1判定部20aによる第1判定の処理は、補正画像における互いに交差する2つの方向の色分布に基づいて実行されるため、規則性がある模様(例えば、縞模様および格子形状等)を有する被写体の影響を受ける場合がある。例えば、適正な補正テーブルを用いて生成された補正画像における2つの方向の色分布が、被写体が有する本来の模様が示すパターンと同様である場合でも、第1判定部20aは、補正画像に色むらが発生していると判定する虞がある。
そこで、第1判定部20aによる第1判定により、補正画像に色むらが発生していると判定された場合、第2判定部30aは、色むらを有する基準画像と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する第2判定を実行する。基準画像と補正画像との比較に基づく第2判定の処理は、画像全体を比較することで実行されるため、第2判定部30aは、第1判定部20aによる誤った判定を検出することができる。
なお、基準画像と補正画像との比較に基づく第2判定の処理は、画像全体を比較することで実行されるため、補正画像における互いに交差する2つの方向の色分布に基づく第1判定の処理と比べて演算量が多い。図2に示した実施形態では、画像処理装置100aは、第1判定部20aによる第1判定により、補正テーブルの誤適用が疑われる画像(補正画像における2つの方向の色分布から色むらが発生と判定された画像)に、第2判定部30aによる第2判定を実行する。第1判定の処理と比べて演算量が多い、第2判定の処理が実行される画像の数を減らすことで、画像処理装置100aは、演算量の増加を抑制しつつ、補正テーブルの誤適用を回避することができる。すなわち、画像処理装置100aは、シェーディング補正に用いる補正テーブルの選択における演算量の増加を抑制できる。
図3は、画像処理装置および画像処理方法の別の実施形態を示す。図3に示す画像処理装置100bは、例えば、デジタルカメラ200に搭載される。デジタルカメラ200は、画像処理装置100bとともに、レンズ210、撮像素子220、AD(Analog-to-Digital)変換部230、記憶部240および出力装置250を有する。なお、画像処理装置100bは、スマートフォン等の携帯通信端末等に搭載されてもよい。
レンズ210は、例えば、ズームレンズやフォーカシングレンズを含む複数のレンズ群である。なお、図3に示したレンズ210は1枚のレンズとして示す。
撮像素子220は、例えば、レンズ210を透過した光束で結像される被写体を撮像するCCD(Charge Coupled Device)またはCMOS(Complementary metal-oxide-semiconductor)等である。撮像素子220の受光面には、赤外線カットフィルタとともに、複数のフォトダイオードがマトリックス状に配列される。撮像素子220の各フォトダイオードには、赤色(R:Red)、緑色(G:Green)および青色(B:Blue)成分のカラーフィルタがベイヤ配列等に従って配置される。これにより、撮像素子220の各フォトダイオードは、カラーフィルタでの色分解によってそれぞれの色成分に対応するアナログ信号をAD変換部230に出力する。例えば、デジタルカメラ200に含まれるプロセッサ等の制御部がデジタルカメラ200に含まれるシャッタ釦等の操作部材から撮像の指示を示す信号を受ける場合、撮像素子220は、被写体を撮影しRGB成分のアナログ信号を出力する。
AD変換部230は、例えば、撮像素子220から出力されたベイヤ配列のRGB成分のアナログ信号を、12ビット等のデジタル信号に変換する。AD変換部230は、変換したデジタル信号を画像処理装置100bに出力する。
記憶部240は、デジタルカメラ200の制御部が実行する画像処理プログラム等を格納する領域を有する。また、記憶部240は、デジタルカメラ200により撮影された画像のファイルを格納する領域を有する。さらに、記憶部240は、シェーディング補正に用いるN個の補正テーブル50(50(1)−50(N))を格納する領域を有する。補正テーブル50には、太陽光等の屋外における光源の色温度に応じた補正テーブルが含まれる。また、補正テーブル50には、日陰あるいは蛍光灯等の屋内における補正テーブルが含まれる。なお、以下の説明では、補正テーブル50の数Nを“2”とする。すなわち、補正テーブル50(1)は、太陽光のD(Daylight)65の補正テーブルとし、補正テーブル50(2)は、蛍光灯のCW(Cool White)の補正テーブルとする。
また、記憶部240は、色むらを有する画像に基づいて予め生成されたテンプレート画像60を格納する領域を有する。テンプレート画像60は、基準画像の一例である。
テンプレート画像60は、例えば、白い壁等の白色の被写体を撮影した画像に基づいて生成される。デジタルカメラ200は、例えば、蛍光灯の屋内において白い壁等の白い被写体を撮影し、画像を生成する。補正部110は、生成された画像に含まれる画素の情報と異なる太陽光の補正テーブル50(1)を用い、生成された画像にシェーディング補正を実行する。色温度が4150ケルビンの蛍光灯の光には、6500ケルビンの太陽光と比べてR成分の光が多く含まれることから、補正テーブル50(1)を用いてシェーディング補正が実行された画像には、R成分が残留し、赤味の色むらが発生する。画像処理装置100bは、例えば、補正テーブル50(1)でシェーディング補正された画像の各画素における色差Cb、Crを求め、各画素の色差Cb、Crから画像の中心の色差Cb、Crを差し引いた差分ΔCb、ΔCrを算出する。
一方、デジタルカメラ200は、例えば、太陽光の屋外において白い壁等の白い被写体を撮影し、画像を生成する。補正部110は、生成された画像に含まれる画素の情報と異なる蛍光灯の補正テーブル50(2)を用い、生成された画像にシェーディング補正を実行する。色温度が6500ケルビンの太陽光には、4150ケルビンの蛍光灯の光と比べてR成分の光が少ないことから、補正テーブル50(2)を用いてシェーディング補正が実行された画像には、R成分が過剰に除去され、青味の色むらが発生する。画像処理装置100bは、例えば、補正テーブル50(2)でシェーディング補正された画像の各画素における色差Cb、Crを求め、各画素の色差Cb、Crから画像の中心の色差Cb、Crを差し引いた差分ΔCb、ΔCrを算出する。
画像処理装置100bは、例えば、補正テーブル50(1)でシェーディング補正された画像と、補正テーブル50(2)でシェーディング補正された画像との差分ΔCb、ΔCrをそれぞれ加算平均する。画像処理装置100bは、加算平均した差分ΔCb、ΔCrの画像をテンプレート画像60として記憶部240に格納する。
出力装置250は、有機EL(Electro-Luminescence)パネルあるいは液晶パネル等のディスプレイである。出力装置250は、画像処理装置100bにより画像処理された画像を表示する。また、出力装置250は、デジタルカメラ200の設定を行う画面等を表示する。
画像処理装置100bは、補正部110、色味判定部120、色差判定部130および変更部140を有する。例えば、画像処理装置100bは、デジタルカメラ200の制御部が記憶部240に格納された画像処理プログラムを実行することで、補正部110、色味判定部120、色差判定部130および変更部140として動作する。
補正部110は、例えば、デジタルカメラ200により撮影された画像(以下、撮影画像とも称される)から輝度および色温度等を算出する。補正部110は、算出した輝度および色温度等の撮影画像に含まれる画素の情報に基づいて、シェーディング補正に用いる補正テーブルを、補正テーブル50(1)、50(2)からを選択する。そして、補正部110は、選択した補正テーブル50を用いて、シェーディング補正を撮影画像に実行し、補正画像を生成する。
なお、撮影画像の輝度および色温度等の画素の情報は、補正部110の代わりに、画像処理装置100bの他の要素により算出されてもよい。また、補正部110は、例えば、デジタルカメラ200が含む測光センサにより測光された測光データから、輝度および色温度等の画素の情報を算出してもよい。
なお、補正部110は、シェーディング補正とともに、色補間およびホワイトバランス補正等の補間処理を撮影画像に実行してもよい。
色味判定部120は、補正部110で補正された補正画像の中央部分の色味に基づいて、補正画像に色むらが発生しているか否かを判定する色味判定を実行する。色味判定部120は、補正画像のRGB成分の画素値から色差Cb、Crを算出する。色味判定部120は、算出した色差Cb、Crのうち、補正画像の中央部分における色差Cb、Crの平均値をそれぞれ求める。色味判定部120は、例えば、求めた補正画像の中央部分の色差Cb、Crの平均値に基づいて、補正画像の中央部分が赤味あるいは青味を示すか否かを判定する。色味判定部120は、補正画像の中央部分において、赤味あるいは青味を示す場合、補正画像に色むらが発生していると判定する。色味判定部120の動作については、図4で説明する。
なお、色味判定部120は、補正画像のRGB成分の画素値から色差Cb、Crを算出したが、L*a*b*等の色空間の値を算出してもよい。また、補正部110により生成された補正画像の画素が輝度Yと色差Cb、Crとを有する場合、色味判定部120は、補正画像が有する色差Cb、Crをそのまま用いてもよい。
また、補正画像の中央部分とは、例えば、画像の中心を中心とする所定サイズ(例えば、補正画像の水平走査方向および垂直走査方向それぞれの画像サイズの5分の1等の大きさ)の矩形の領域である。
なお、色味判定部120による色味判定の処理は、補正画像の中央部分の色味に基づいて実行されるため、補正画像の中央部分に位置する被写体が有する色味の影響を受ける場合がある。例えば、補正画像の中央部分における色味が、被写体が有する本来の色味である場合で、適正な補正テーブルを用いて補正画像が生成された場合に、色味判定部120は、補正画像に色むらが発生していると判定する虞がある。
そこで、色差判定部120による色味判定により、補正画像に色むらが発生していると判定された場合、色差判定部130は、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。色差判定部130は、補正画像において、各画素の色差Cb、Crから画像の中心の色差Cb、Crを差し引いた差分ΔCb、ΔCrをそれぞれ算出する。色差判定部130は、テンプレート画像60と補正画像との差分ΔCb、ΔCrを互いに減算し、減算した値の絶対値を加算する。色差判定部130は、加算した値が閾値Th1以下の場合、テンプレート画像60と補正画像との差分ΔCb、ΔCrの分布が同じであると判定し、補正画像に赤味または青味の色むらが発生していると判定する。すなわち、色差判定部130は、選択された補正テーブル50が誤りと判定する。また、テンプレート画像60と補正画像との比較に基づく色差判定の処理は、画像全体を比較することで実行されるため、色差判定部130は、色味判定部120による誤った判定を検出することができる。
一方、色差判定部130は、加算した値が閾値Th1より大きい場合、テンプレート画像60と補正画像との差分ΔCb、ΔCrの分布が異なると判定し、補正画像に色むらが発生していないと判定する。すなわち、色差判定部130は、選択された補正テーブル50は適正であると判定する。なお、色差判定部130は、赤味を有する画像と青味を有する画像とに基づいて生成されたテンプレート画像60を用いることで、画像の被写体が有する色に依らず、色差判定の処理を実行することができる。
なお、色差判定部130による色差判定の処理において、テンプレート画像60と補正画像との画像サイズは、デジタルカメラ200により撮影された画像と同一でもよい。あるいは、色差判定部130は、色差判定を実行するために、テンプレート画像60と補正画像との画像サイズを縮小してもよい。色差判定部130がテンプレート画像60と補正画像との画像サイズを縮小することで、画像処理装置100bは、シェーディング補正に用いる補正テーブル50の選択における演算量の増加を抑制することができる。
変更部140は、色差判定部130による色差判定により、補正画像に色むらが発生していると判定された場合、撮影画像に適用する補正テーブル50を変更する。そして、補正部110は、変更部140により変更された補正テーブル50を用いて、シェーディング補正を撮影画像に実行し、新たな補正画像を生成する。
図4は、図3に示した色味判定部120による色味に基づいた判定処理の一例を示す。図4は、横軸が色差Cb、縦軸が色差Crとする色差空間を示す。図4に示した色差空間は、2つの矩形の領域BL、RDを有する。領域BLは、色差Cbが色差Crより大きな値を示す領域である。例えば、補正画像の中心部分における色差Cb、Crの平均値が領域BLに含まれる場合、色差Cbの平均値が色差Crより大きな値を示すことから、色味判定部120は、補正画像の中央部分が青味を示すと判定する。すなわち、色味判定部120は、選択された補正テーブル50が誤りと判定する。
一方、領域RDは、色差Crが色差Cbより大きな値を示す領域である。例えば、補正画像の中心部分における色差Cb、Crの平均値が領域RDに含まれる場合、色差Crの平均値が色差Cbより大きな値を示すことから、色味判定部120は、補正画像の中央部分が赤味を示すと判定する。すなわち、色味判定部120は、選択された補正テーブル50が誤りと判定する。なお、補正画像の中心部分における色差Cb、Crの平均値が領域BL、RDに含まれない場合、色味判定部120は、補正画像の中央部分が赤味および青味を示さないと判定し、選択された補正テーブル50が適正と判定する。
また、領域BL、RDの位置を示す情報(例えば、四隅の座標等)は、記憶部240に予め格納される。補正画像の中心部分が赤味を示す領域RDおよび青味を示す領域BLがそれぞれ設定されたが、2以上の領域がそれぞれ設定されてもよい。また、赤味および青味を示す領域BL、RDは、矩形に限定されず、円形、あるいは色差空間の原点を中心とする扇の形状で設定されてもよい。
また、赤味および青味を示す領域BL、RDは、撮像素子220に設けられた赤外線フィルタおよびレンズ210等に応じて変化することから、デジタルカメラ200の機種に応じて適宜設定されるのがよい。
図5は、図3に示した画像処理装置100bにおける画像処理の一例を示す。図5に示したステップS100からステップS160の動作は、デジタルカメラ200の制御部が画像処理プログラムを実行することにより実現される。すなわち、図5は、画像処理方法の別の実施形態を示す。なお、図5に示す処理は、デジタルカメラ200に搭載されるハードウェアにより実行されてもよい。この場合、図3に示した補正部110、色味判定部120、色差判定部130および変更部140は、デジタルカメラ200内に配置される回路により実現される。
ステップS100では、補正部110は、図3で説明したように、デジタルカメラ200により撮影された画像の画素の情報に基づいて、シェーディング補正で用いる補正テーブル50を、複数の補正テーブル50から選択する。例えば、補正部110は、蛍光灯の屋内の補正テーブル50(2)を選択する。
ステップS110では、補正部110は、図3で説明したように、ステップS100で選択した補正テーブル50(2)を用いて、シェーディング補正を撮影画像に実行し、補正画像を生成する。
ステップS120では、色味判定部120は、図3および図4で説明したように、補正画像の中央部分の色味に基づいて、補正画像に色むらが発生しているか否かを判定する色味判定を実行する。例えば、色味判定部120は、補正画像のRGB成分の画素値を用い、補正画像の中央部分における色差Cb、Crの平均値をそれぞれ算出する。色味判定部120は、算出した補正画像の中央部分の色差Cb、Crの平均値が、図4に示した領域BL、RDのいずれかに含まれるか否かを判定する。色味判定部120は、補正画像の中心部分における色差Cb、Crの平均値が領域BL、RDのいずれかに含まれる場合、補正画像の中央部分が赤味または青味を示すと判定し、補正画像に色むらが発生していると判定する(ステップS120のYes)。すなわち、色味判定部120は、ステップS100で選択された補正テーブル50(2)が誤りと判定する。そして、画像処理装置100bの動作は、ステップS130に移る。このように、画像処理装置100bは、ステップS100で選択された補正テーブル50が誤りの可能性がある場合、ステップS130の色差判定の処理を実行し、ステップS100で選択された補正テーブル50が誤りか否かを決定する。
一方、色味判定部120は、補正画像の中心部分の色差Cb、Crの平均値が領域BL、RDのいずれにも含まれない場合、補正画像に色むらが発生していないと判定する(ステップS120のNo)。すなわち、色味判定部120は、ステップS100で選択された補正テーブル50(2)が適正と判定する。そして、画像処理装置100bの動作は、ステップS160に移る。
ステップS130では、色差判定部130は、図3で説明したように、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。例えば、色差判定部130は、テンプレート画像60と補正画像との差分ΔCb、ΔCrを互いに減算し、減算した値の絶対値を加算する。色差判定部130は、加算した値が閾値Th1以下の場合、補正画像に色むらが発生していると判定する(ステップS130のYes)。すなわち、色差判定部130は、ステップS100で選択された補正テーブル50(2)が誤りと判定する。そして、画像処理装置100bの動作は、ステップS140に移る。一方、色差判定部130は、加算した値が閾値Th1より大きい場合、補正画像に色むらが発生していないと判定する(ステップS130のNo)。すなわち、色差判定部130は、ステップS100で選択された補正テーブル50(2)が適正と判定する。そして、画像処理装置100bの動作は、ステップS160に移る。
ステップS140では、変更部140は、図3で説明したように、ステップS120およびステップS130で、補正画像に色むらが発生していると判定された場合、シェーディング補正に用いる補正テーブル50を変更する。例えば、変更部140は、ステップS100で選択された蛍光灯の屋内の補正テーブル50(2)から、太陽光の屋外の補正テーブル50(1)に変更する。
ステップS150では、補正部110は、変更部140により変更された補正テーブル50を用いて、シェーディング補正を撮影画像に実行し、補正画像を生成する。
ステップS160では、画像処理装置100bは、ステップS110またはステップS150で生成された補正画像を出力装置250に出力する。
そして、画像処理装置100bは、処理を終了する。なお、図5の処理は、デジタルカメラ200により画像が撮影される度に実行される。また、画像処理装置100bは、ステップS110またはステップS150で生成された補正画像のファイルを、記憶部240に格納してもよい。
なお、画像処理装置100bは、補正テーブル50の数Nが3以上の場合、ステップS150の処理を実行した後、ステップS120の処理に移ってもよい。
なお、画像処理装置100bは、赤味の色むらを有する画像と青味の色むらを有する画像との差分ΔCb、ΔCrをそれぞれ加算平均した画像を、テンプレート画像60としたが、これに限定されない。例えば、画像処理装置100bは、赤味の色むらを有する画像の差分ΔCb、ΔCrの画像、および青味の色むらを有する画像の差分ΔCb、ΔCrの画像をそれぞれ、テンプレート画像60として記憶部240に格納してもよい。そして、色差判定部130は、赤味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。また、色差判定部130は、青味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。色差判定部130は、2つの比較の結果に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行してもよい。
以上、図3から図5に示した実施形態では、画像処理装置100bは、画像に含まれる画素の情報に基づいて選択した補正テーブル50を用いて、シェーディング補正を画像に実行し、補正画像を生成する。画像処理装置100bは、生成された補正画像の中央部分における色味に基づいて、補正画像に色むらが発生しているか否かを判定する色味判定を実行する。また、画像処理装置100bは、色味判定により、補正画像に色むらが発生していると判定された場合、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。
なお、テンプレート画像60と補正画像との比較に基づく色差判定の処理は、画像全体を比較することで実行されるため、補正画像の中央部分の色味に基づく色味判定の処理と比べて演算量が多い。そこで、画像処理装置100bは、色味判定部120による色味判定により、補正テーブルの誤適用が疑われる画像(補正画像の中央部分の色味から色むらが発生と判定された画像)に、色差判定部130による色差判定を実行する。これにより、色味判定の処理と比べて演算量が多い、色差判定の処理が実行される撮影画像の数を減らすことで、画像処理装置100bは、演算量の増加を抑制しつつ、補正テーブルの誤適用を回避することができる。すなわち、画像処理装置100bは、シェーディング補正に用いる補正テーブルの選択における演算量の増加を抑制できる。
図6は、画像処理装置および画像処理方法の別の実施形態を示す。図3で説明した要素と同一または同様の機能を有する要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。
画像処理装置100cは、補正部110、色分布判定部150、色差判定部130aおよび変更部140を有する。例えば、画像処理装置100cは、デジタルカメラ200に含まれるプロセッサ等の制御部が記憶部240に格納された画像処理プログラムを実行することで、補正部110、色分布判定部150、色差判定部130aおよび変更部140として動作する。また、画像処理装置100cは、スマートフォン等の携帯通信端末等に搭載されてもよい。
色分布判定部150は、例えば、補正画像における水平走査方向と垂直走査方向との色分布に基づいて、補正画像に色むらが発生しているか否かを判定する色分布判定を実行する。色分布判定部150は、補正画像のRGB成分の画素値から、画像の中心を通る水平走査方向と垂直走査方向との直線上にある各画素の色差Cb、Crを算出する。色分布判定部150は、算出した水平走査方向および垂直走査方向それぞれの色差Cb、Crの分布に基づいて、補正画像に色むらが発生しているか否かを判定する色分布判定を実行する。色分布判定部150の動作については、図7で説明する。
なお、色分布判定部150は、補正画像のRGB成分の画素値から色差Cb、Crを算出したが、L*a*b*等の色空間の値を算出してもよい。また、補正部110により生成された補正画像の画素が輝度Yと色差Cb、Crとを有する場合、色分布判定部150は、補正画像が有する色差Cb、Crをそのまま用いてもよい。
なお、色分布判定部150による色分布判定の処理は、補正画像における互いに交差する2つの方向の色分布に基づいて実行されるため、規則性がある模様(例えば、縞模様および格子形状等)を有する被写体の影響を受ける場合がある。例えば、補正画像における2つの方向の色分布が、被写体が有する本来の模様が示すパターンと同様である場合で、適正な補正テーブルを用いて補正画像が生成された場合に、色分布判定部150は、補正画像に色むらが発生していると判定する虞がある。
そこで、色分布判定部150による色分布判定により、補正画像に色むらが発生していると判定された場合、色差判定部130aは、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。なお、色差判定部130aによる色差判定は、図3に示した色差判定部130による色差判定と同一または同様であり、詳細な説明を省略する。
なお、色差判定部130aによる色差判定の処理において、テンプレート画像60と補正画像との画像サイズは、デジタルカメラ200により撮影された画像と同一でもよい。あるいは、色差判定部130aは、色差判定を実行するために、テンプレート画像60と補正画像との画像サイズを縮小してもよい。色差判定部130aがテンプレート画像60と補正画像との画像サイズを縮小することで、画像処理装置100cは、シェーディング補正に用いる補正テーブル50の選択における演算量の増加を抑制することができる。
図7は、色差Cb、Crの分布の一例を示す。図7(a)および図7(b)は、補正画像に赤味の色むらが発生している場合に、水平走査方向(または垂直走査方向)における色差Cb、Crの分布を示す。また、図7(c)および図7(d)は、補正画像に青味の色むらが発生している場合に、水平走査方向(または垂直走査方向)における色差Cb、Crの分布を示す。なお、図7(a)から図7(d)では、横軸は、水平走査方向(または垂直走査方向)の画素の位置を示し、縦軸は、色差Cbまたは色差Crを示す。また、図7(a)から図7(d)では、補正画像は、水平走査方向(または垂直走査方向)にM個の画素の画像サイズを有し、2分のM個目の画素が補正画像の中心位置を示す。
補正画像に赤味の色むらが発生している場合、図7(a)および図7(b)に示すように、色差Cbは、画像の中心位置で最小値となる下に凸の分布を示し、色差Crは、画像の中心位置で最大値となる上に凸の分布を示す。一方、補正画像に青味の色むらが発生している場合、図7(c)に示した色差Cbは、図7(a)に示した色差Cbと同様に下に凸の分布を示し、図7(d)に示した色差Crは、補正画像の中心位置で色差Cbの最小値よりも小さな最小値となる下に凸の分布を示す。
図7(a)から図7(d)に示すように、色差Cb、Crの分布は、例えば、補正画像の水平走査方向(または垂直走査方向)の画像サイズを0.5波長(周波数0.5ヘルツ)とする構造を示す。そこで、色分布判定部150は、水平走査方向および垂直走査方向の色差Cb、Crの分布それぞれに、1.0ヘルツの正弦波(sin波)および余弦波(cos波)を畳み込むことで、離散的フーリエ変換おける1.0ヘルツの正弦波および余弦波の振幅を求める。色分布判定部150は、求めた正弦波および余弦波の振幅を用いて、各方向の色差Cb、Crそれぞれにおける1.0ヘルツのパワーを算出する。色分布判定部150は、算出した各方向の色差Cb、Crの分布における1.0ヘルツのパワーと、2つの閾値Th2、Th3(Th2<Th3)とを比較する。色分布判定部150は、算出した水平走査方向および垂直走査方向の色差Cbあるいは色差Crにおいて、1.0ヘルツのパワーが閾値Th2と閾値Th3との範囲内である場合、補正画像に赤味または青味の色むらが発生していると判定する。すなわち、色分布判定部150は、選択された補正テーブル50が誤りと判定する。
一方、色分布判定部150は、算出した水平走査方向および垂直走査方向の色差Cb、Crにおける1.0ヘルツのパワーが閾値Th2より小さい、あるいは閾値Th3より大きい場合、補正画像に赤味および青味の色むらが発生していないと判定する。すなわち、色分布判定部150は、選択された補正テーブル50が適正と判定する。なお、色分布判定部150は、算出した水平走査方向および垂直走査方向の色差Cb、Crの1.0ヘルツのパワーが閾値Th3より大きい場合、色差Cb、Crの1.0ヘルツのパワーは、補正画像の色むらでなく、被写体が有する模様のパターンと判定してもよい。
また、色分布判定部150は、各方向の色差Cb、Crの分布における1.0ヘルツのパワーを算出したが、被写体が有する模様のパターンと異なる0.5ヘルツ等の周波数における各方向の色差Cb、Crのパワーを算出してもよい。これにより、色分布判定部150は、被写体が有する模様のパターンと異なる周波数におけるパワーを算出することで、被写体の模様の影響を受けることなく、色分布判定を実行することができる。
図8は、図6に示した画像処理装置100cにおける画像処理の一例を示す。なお、図8に示したステップの処理のうち、図5に示したステップと同一または同様の処理を示すものについては、同一のステップ番号を付し、詳細な説明を省略する。図8に示したステップS100、ステップS110、ステップS125、ステップS130からステップS160の動作は、デジタルカメラ200の制御部が画像処理プログラムを実行することにより実現される。すなわち、図8は、画像処理方法の別の実施形態を示す。なお、図8に示す処理は、デジタルカメラ200に搭載されるハードウェアにより実行されてもよい。この場合、図6に示した補正部110、色分布判定部150、色差判定部130aおよび変更部140は、デジタルカメラ200内に配置される回路により実現される。
図8の動作では、図5に示したステップS120の代わりに、ステップS125が実行される。例えば、画像処理装置100cは、図8に示したステップS100およびステップS110の処理を実行した後、ステップS125の処理を実行する。
ステップS125では、色分布判定部150は、図6および図7で説明したように、補正画像における水平走査方向および垂直走査方向の色分布に基づいて、補正画像に色むらが発生しているか否かを判定する色分布判定を実行する。例えば、色分布判定部150は、補正画像のRGB成分の画素値から、画像の中心を通る水平走査方向と垂直走査方向との直線上にある各画素の色差Cb、Crを算出する。色分布判定部150は、算出した水平走査方向および垂直走査方向の色差Cb、Crの分布それぞれに、1.0ヘルツの正弦波および余弦波を畳み込むことで、離散的フーリエ変換における1.0ヘルツのパワーをそれぞれ算出する。色分布判定部150は、算出した各方向の色差Cb、Crの分布における1.0ヘルツのパワーと、2つの閾値Th2、Th3とを比較する。
色分布判定部150は、算出した水平および垂直走査方向の色差Cb、Crにおける1.0ヘルツのパワーが閾値Th2より小さい、あるいは閾値Th3より大きい場合、補正画像に赤味および青味の色むらが発生していないと判定する(ステップS125のNo)。すなわち、色分布判定部150は、ステップS100で選択された補正テーブル50が適正と判定する。そして、画像処理装置100cは、ステップS160の処理に移る。すなわち、画像処理装置100cは、補正画像に色むらが発生していない場合、ステップS160を実行し、画像処理を終了する。
一方、色分布判定部150は、水平および垂直走査方向の色差Cbあるいは色差Crにおいて、1.0ヘルツのパワーが閾値Th2と閾値Th3との範囲内である場合、補正画像に赤味または青味の色むらが発生していると判定する(ステップS125のYes)。すなわち、色分布判定部150は、ステップS100で選択された補正テーブル50が誤りと判定する。そして、画像処理装置100cの動作は、ステップS130の処理に移る。このように、画像処理装置100cは、ステップS100で選択された補正テーブル50が誤りの可能性がある場合、ステップS130の色差判定の処理を実行し、ステップS100で選択された補正テーブル50が誤りか否かを決定する。
画像処理装置100cは、ステップS130の処理を実行した後、図8に示したステップS140からステップS160の処理を実行する。そして、画像処理装置100cは、処理を終了する。なお、図8の処理は、デジタルカメラ200により画像が撮影される度に実行される。また、画像処理装置100cは、ステップS110またはステップS150で生成された補正画像のファイルを、記憶部240に格納してもよい。
なお、画像処理装置100cは、補正テーブル50の数Nが3以上の場合、ステップS150の処理を実行した後、ステップS125の処理に移ってもよい。
なお、画像処理装置100cは、赤味の色むらを有する画像と青味の色むらを有する画像との差分ΔCb、ΔCrをそれぞれ加算平均した画像を、テンプレート画像60としたが、これに限定されない。例えば、画像処理装置100cは、赤味の色むらを有する画像の差分ΔCb、ΔCrの画像、および青味の色むらを有する画像の差分ΔCb、ΔCrの画像をそれぞれ、テンプレート画像60として記憶部240に格納してもよい。そして、色差判定部130aは、赤味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。また、色差判定部130aは、青味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。色差判定部130aは、2つの比較の結果に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行してもよい。
以上、図6から図8に示した実施形態では、画像処理装置100cは、画像に含まれる画素の情報に基づいて選択した補正テーブル50を用いて、シェーディング補正を画像に実行し、補正画像を生成する。画像処理装置100cは、生成された補正画像における互いに交差する2つの方向の色分布に基づいて、補正画像に色むらが発生しているか否かを判定する色分布判定を実行する。また、画像処理装置100cは、色分布判定により、補正画像に色むらが発生していると判定された場合、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。
なお、テンプレート画像60と補正画像との比較に基づく色差判定の処理は、画像全体を比較することで実行されるため、補正画像における互いに交差する2つの方向の色分布に基づく色味判定の処理と比べて演算量が多い。そこで、画像処理装置100cは、色分布判定部150による色分布判定により、補正テーブルの誤適用が疑われる画像(補正画像における2つの方向の色分布から色むらが発生と判定された画像)に、色差判定部130aによる色差判定を実行する。これにより、色分布判定の処理と比べて演算量が多い、色差判定の処理が実行される撮影画像の数を減らすことで、画像処理装置100cは、演算量の増加を抑制しつつ、補正テーブルの誤適用を回避することができる。すなわち、画像処理装置100cは、シェーディング補正に用いる補正テーブルの選択における演算量の増加を抑制できる。
図9は、画像処理装置および画像処理方法の別の実施形態を示す。図6で説明した要素と同一または同様の機能を有する要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。
画像処理装置100dは、補正部110、色味判定部120、色分布判定部150、色差判定部130aおよび変更部140を有する。例えば、画像処理装置100dは、デジタルカメラ200に含まれるプロセッサ等の制御部が記憶部240に格納された画像処理プログラムを実行することで、補正部110、色味判定部120、色分布判定部150、色差判定部130aおよび変更部140として動作する。また、画像処理装置100dは、スマートフォン等の携帯通信端末等に搭載されてもよい。
図10は、図9に示した画像処理装置100dにおける画像処理の一例を示す。なお、図9に示したステップの処理のうち、図5および図8に示したステップと同一または同様の処理を示すものについては、同一のステップ番号を付し、詳細な説明を省略する。図10に示したステップS100、ステップS110、ステップS120、ステップS125、ステップS130からステップS160の動作は、デジタルカメラ200の制御部が画像処理プログラムを実行することにより実現される。すなわち、図10は、画像処理方法の別の実施形態を示す。なお、図10に示す処理は、デジタルカメラ200に搭載されるハードウェアにより実行されてもよい。この場合、図9に示した補正部110、色味判定部120、色分布判定部150、色差判定部130aおよび変更部140は、デジタルカメラ200内に配置される回路により実現される。
図10の動作では、図8に示したステップS125が図5に示した動作に追加さている。例えば、ステップS125は、色味判定部120による色味判定により、補正画像に色むらが発生していると判定された場合に実行される(ステップS120のYes)。このように、画像処理装置100dは、図10に示したステップS100、ステップS110、ステップS120、ステップS125、ステップS130からステップS160の処理を実行する。
なお、画像処理装置100dは、補正テーブル50の数Nが3以上の場合、ステップS150の処理を実行した後、ステップS120の処理に移ってもよい。
なお、画像処理装置100dは、赤味の色むらを有する画像と青味の色むらを有する画像との差分ΔCb、ΔCrをそれぞれ加算平均した画像を、テンプレート画像60としたが、これに限定されない。例えば、画像処理装置100dは、赤味の色むらを有する画像の差分ΔCb、ΔCrの画像、および青味の色むらを有する画像の差分ΔCb、ΔCrの画像をそれぞれ、テンプレート画像60として記憶部240に格納してもよい。そして、色差判定部130aは、赤味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。また、色差判定部130aは、青味の色むらを有する画像に基づいて生成されたテンプレート画像60と補正画像とを比較する。色差判定部130aは、2つの比較の結果に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行してもよい。
以上、図9および図10に示した実施形態では、画像処理装置100dは、画像に含まれる画素の情報に基づいて選択した補正テーブル50を用いて、シェーディング補正を画像に実行し、補正画像を生成する。画像処理装置100dは、生成された補正画像の中央部分における色味に基づいて、補正画像に色むらが発生しているか否かを判定する色味判定を実行する。また、画像処理装置100dは、色味判定により、補正画像に色むらが発生していると判定された場合、補正画像おける互いに交差する2つの方向の色分布に基づいて、補正画像に色むらが発生しているか否かを判定する色分布判定を実行する。さらに、画像処理装置100dは、色分布判定により、補正画像に色むらが発生していると判定された場合、テンプレート画像60と補正画像との比較に基づいて、補正画像に色むらが発生しているか否かを判定する色差判定を実行する。
なお、テンプレート画像60と補正画像との比較に基づく色差判定の処理は、画像全体を比較することで実行されるため、色味判定の処理および色分布判定の処理と比べて演算量が多い。そこで、画像処理装置100dは、色味判定および色分布判定により、補正テーブルの誤適用が疑われる画像(色味判定および色分布判定により色むらが発生と判定された画像)に、色差判定部130aによる色差判定を実行する。これにより、色味判定の処理と比べて演算量が多い、色差判定の処理が実行される撮影画像の数を減らすことで、画像処理装置100dは、演算量の増加を抑制しつつ、補正テーブルの誤適用を回避することができる。すなわち、画像処理装置100dは、シェーディング補正に用いる補正テーブルの選択における演算量の増加を抑制できる。
図11は、図1、図2、図3、図6および図9に示した画像処理装置100(100a、100b、100c、100d)のハードウェアの一例を示す。図1から図9で説明した要素と同一または同様の機能を有する要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。
デジタルカメラ200は、レンズ210、撮像素子220、AD変換部230、出力装置250、プロセッサ300、メモリ310および入力装置320を有する。出力装置250、プロセッサ300、メモリ310および入力装置320は、バスを介し互いに接続される。
プロセッサ300は、AD変換部230を介して、例えば、撮像された画像の信号を撮像素子220より受信する。
メモリ310は、デジタルカメラ200のオペレーティングシステムとともに、プロセッサ300が画像処理を実行するためのアプリケーションプログラムを格納する。また、メモリ310は、N個の補正テーブル50およびテンプレート画像60を予め格納する。
入力装置320は、例えば、タッチパネルあるいはボタン等である。デジタルカメラ200を使用するユーザは、入力装置320を操作し、例えば、撮影の実行の指示とともに、画像処理の設定等を行う。
なお、画像処理を実行するためのアプリケーションプログラムは、例えば、CD(Compact Disc)あるいはDVD(Digital Versatile Disc)等のリムーバブルディスクに記録して頒布することができる。また、デジタルカメラ200は、デジタルカメラ200に含まれるネットワークインタフェースを介し、ネットワークから画像処理を実行するためのアプリケーションプログラムをダウンロードし、メモリ310に格納してもよい。
また、プロセッサ300は、画像処理のアプリケーションプログラムを実行することで、図1に示した補正部10、第1判定部20、第2判定部30および変更部40として機能する。また、プロセッサ300は、画像処理のアプリケーションプログラムを実行することで、図2に示した補正部10、第1判定部20a、第2判定部30aおよび変更部40として機能する。また、プロセッサ300は、画像処理のアプリケーションプログラムを実行することで、図3に示した補正部110、色味判定部120、色差判定部130および変更部140として機能する。また、プロセッサ300は、画像処理のアプリケーションプログラムを実行することで、図6に示した補正部110、色分布判定部150、色差判定部130aおよび変更部140として機能する。さらに、プロセッサ300は、画像処理のアプリケーションプログラムを実行することで、図9に示した補正部110、色味判定部120、色分布判定部150、色差判定部130aおよび変更部140として機能する。
すなわち、画像処理装置100は、プロセッサ300およびメモリ310の協働によって実現する。
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
シェーディング補正用の複数の補正テーブルのいずれかを画像に含まれる画素の情報に基づいて選択し、
選択した前記補正テーブルを用いて前記シェーディング補正を画像に実行することで補正画像を生成し、
前記補正画像の中央部分の色味に基づいて、前記補正画像に色むらが発生しているか否かを判定する第1判定を実行し、
前記第1判定により、前記補正画像に色むらが発生していると判定された場合、色むらを有する基準画像と前記補正画像との比較に基づいて、前記補正画像に色むらが発生しているか否かを判定する第2判定を実行し、
前記第2判定により、前記補正画像に色むらが発生していると判定された場合、シェーディング補正に用いる補正テーブルを変更する
ことを特徴とする画像処理方法。
(付記2)
付記1に記載の画像処理方法において、
前記第1判定により、前記補正画像に色むらが発生していると判定された場合、前記第2判定の前に、前記補正画像における互いに交差する第1方向と第2方向との色分布に基づいて、前記補正画像に色むらが発生しているか否かを判定する第3判定を実行し、
前記第3判定により、前記補正画像に色むらが発生していると判定された場合、前記第2判定を実行する
ことを特徴とする画像処理方法。
(付記3)
付記1または付記2に記載の画像処理方法において、
前記基準画像は、赤味の色むらを有する画像と青味の色むらを有する画像とを用いて予め生成されることを特徴とする画像処理方法。
(付記4)
シェーディング補正用の複数の補正テーブルのいずれかを画像に含まれる画素の情報に基づいて選択し、
選択した前記補正テーブルを用いて前記シェーディング補正を画像に実行することで補正画像を生成し、
前記補正画像における互いに交差する第1方向と第2方向との色分布に基づいて、前記補正画像に色むらが発生しているか否かを判定する第1判定を実行し、
前記第1判定により、前記補正画像に色むらが発生していると判定された場合、色むらを有する基準画像と前記補正画像との比較に基づいて、前記補正画像に色むらが発生しているか否かを判定する第2判定を実行し、
前記第2判定により、前記補正画像に色むらが発生していると判定された場合、シェーディング補正に用いる補正テーブルを変更する
ことを特徴とする画像処理方法。
(付記5)
付記4に記載の画像処理方法において、
前記第1判定の前に、前記補正画像の中央部分の色味に基づいて、前記補正画像に色むらが発生しているか否かを判定する第3判定を実行し、
前記第3判定により、前記補正画像に色むらが発生していると判定された場合、前記第1判定を実行する
ことを特徴とする画像処理方法。
(付記6)
付記4または付記5に記載の画像処理方法において、
前記基準画像は、赤味の色むらを有する画像と青味の色むらを有する画像とを用いて予め生成されることを特徴とする画像処理方法。
(付記7)
シェーディング補正用の複数の補正テーブルのいずれかを画像に含まれる画素の情報に基づいて選択し、選択した前記補正テーブルを用いて前記シェーディング補正を画像に実行することで補正画像を生成する補正部と、
前記補正画像の中央部分の色味に基づいて、前記補正画像に色むらが発生しているか否かを判定する第1判定を実行する第1判定部と、
前記第1判定部により前記補正画像に色むらが発生していると判定された場合、色むらを有する基準画像と前記補正画像との比較に基づいて、前記補正画像に色むらが発生しているか否かを判定する第2判定を実行する第2判定部と、
前記第2判定部により前記補正画像に色むらが発生していると判定された場合、シェーディング補正に用いる補正テーブルを変更する変更部と、
を備えることを特徴とする画像処理装置。
(付記8)
付記7に記載の画像処理装置において、
前記第1判定部により前記補正画像に色むらが発生していると判定された場合、前記第2判定の前に、前記補正画像における互いに交差する第1方向と第2方向との色分布に基づいて、前記補正画像に色むらが発生しているか否かを判定する第3判定を実行する第3判定部を備え、
前記第2判定部は、前記第3判定部により前記補正画像に色むらが発生していると判定された場合、前記第2判定を実行する
ことを特徴とする画像処理装置。
(付記9)
付記7または付記8に記載の画像処理装置において、
前記基準画像は、赤味の色むらを有する画像と青味の色むらを有する画像とを用いて予め生成されることを特徴とする画像処理装置。
(付記10)
シェーディング補正用の複数の補正テーブルのいずれかを画像に含まれる画素の情報に基づいて選択し、選択した前記補正テーブルを用いて前記シェーディング補正を画像に実行することで補正画像を生成する補正部と、
前記補正画像における互いに交差する第1方向と第2方向との色分布に基づいて、前記補正画像に色むらが発生しているか否かを判定する第1判定を実行する第1判定部と、
前記第1判定部により前記補正画像に色むらが発生していると判定された場合、色むらを有する基準画像と前記補正画像との比較に基づいて、前記補正画像に色むらが発生しているか否かを判定する第2判定を実行する第2判定部と、
前記第2判定部により前記補正画像に色むらが発生していると判定された場合、シェーディング補正に用いる補正テーブルを変更する変更部と、
を備えることを特徴とする画像処理装置。
(付記11)
付記10に記載の画像処理装置において、
前記第1判定の前に、前記補正画像の中央部分の色味に基づいて、前記補正画像に色むらが発生しているか否かを判定する第3判定を実行する第3判定部を備え、
前記第1判定部は、前記第3判定部により前記補正画像に色むらが発生していると判定された場合、前記第1判定を実行する
ことを特徴とする画像処理装置。
(付記12)
付記10または付記11に記載の画像処理装置において、
前記基準画像は、赤味の色むらを有する画像と青味の色むらを有する画像とを用いて予め生成されることを特徴とする画像処理装置。