(57)【要約】【課題】  偽色の影響を抑えたカラーバランス調整処理を行うことができる技術を提供することを目的とする。【解決手段】  所定の無彩物体色範囲の色を有する無彩物体色画素のエッジ量を算出し、エッジ量が比較的小さな無彩物体色画素の画素値がカラーバランス補正値に対して与える影響が比較的大きく、かつ、エッジ量が比較的大きな無彩物体色画素の画素値がカラーバランス補正値に対して与える影響が比較的小さくなるように、カラーバランス補正値を算出する。【選択図】  図４
2005252756.tif 000002
【特許請求の範囲】
【請求項１】
処理対象画像のカラーバランスを調整するための画像処理装置であって、
前記処理対象画像に存在する画素に対して、前記処理対象画像における無彩色の撮像対象を表す部分が示し得る色を含む所定の無彩物体色範囲の色を有するか否かを判断する無彩物体色判断部と、
前記無彩物体色範囲の色を有する無彩物体色画素に関し、エッジ量を算出するエッジ量算出部と、
前記無彩物体色画素の画素値とエッジ量とに基づいてカラーバランス補正値を算出するカラーバランス補正値算出部と、
前記カラーバランス補正値を用いて前記処理対象画像全体に対してカラーバランス調整を実行するカラーバランス調整実行部と、を備え、
前記カラーバランス補正値算出部は、前記エッジ量が比較的小さな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的大きく、かつ、前記エッジ量が比較的大きな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的小さくなるように、前記カラーバランス補正値を算出する、
画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記カラーバランス補正値算出部は、前記エッジ量に基づいて前記エッジ量が大きいほど小さい重みを決定する重み決定部を備え、さらに、前記カラーバランス補正値を、前記無彩物体色画素の各画素の画素値に前記重みを付して用いることによって算出する、
画像処理装置。
【請求項３】
請求項２に記載の画像処理装置であって、
前記重みは、前記エッジ量が所定のしきい値以上である場合にゼロに設定される、画像処理装置。
【請求項４】
請求項１に記載の画像処理装置であって、
前記カラーバランス補正値算出部は、前記カラーバランス補正値を、前記エッジ量が所定のしきい値以下である無彩物体色画素のみの画素値を用いて算出する、画像処理装置。
【請求項５】
処理対象画像のカラーバランスを調整するための画像処理方法であって、
（ａ）前記処理対象画像に存在する画素に対して、前記処理対象画像における無彩色の撮像対象を表す部分が示し得る色を含む所定の無彩物体色範囲の色を有するか否かを判断する工程と、
（ｂ）前記無彩物体色範囲の色を有する無彩物体色画素に関し、エッジ量を算出する工程と、
（ｃ）前記無彩物体色画素の画素値とエッジ量とに基づいてカラーバランス補正値を算出する工程と、
（ｄ）前記カラーバランス補正値を用いて前記処理対象画像全体に対してカラーバランス調整を実行する工程と、
を備え、
前記工程（ｃ）では、前記エッジ量が比較的小さな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的大きく、かつ、前記エッジ量が比較的大きな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的小さくなるように、前記カラーバランス補正値が算出される、
画像処理装置。
【請求項６】
処理対象画像のカラーバランスを調整するための画像処理をコンピュータに実行させるためのコンピュータプログラムであって、
（ａ）前記処理対象画像に存在する画素に対して、前記処理対象画像における無彩色の撮像対象を表す部分が示し得る色を含む所定の無彩物体色範囲の色を有するか否かを判断する機能と、
（ｂ）前記無彩物体色範囲の色を有する無彩物体色画素に関し、エッジ量を算出する機能と、
（ｃ）前記無彩物体色画素の画素値とエッジ量とに基づいてカラーバランス補正値を算出する機能と、
（ｄ）前記カラーバランス補正値を用いて前記処理対象画像全体に対してカラーバランス調整を実行する機能と、
をコンピュータに実現させるコンピュータプログラムであり、
前記機能（ｃ）では、前記エッジ量が比較的小さな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的大きく、かつ、前記エッジ量が比較的大きな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的小さくなるように、前記カラーバランス補正値が算出される、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像のカラーバランス調整技術に関するものである。
【背景技術】
【０００２】
デジタルスチルカメラやビデオカメラなどの画像生成装置で撮影した画像に関しては、画像全体にカラーバランス調整と呼ばれる処理が行われる（例えば特許文献１、２参照）。
【０００３】
【特許文献１】特開平１１−２７５５９９号公報
【特許文献２】特開平１０−２１０４９４号公報
【０００４】
カラーバランス調整を行うと、画像に生じている色カブリを低減して、元々白色であった撮像対象を正しく白色で再現できるようになる。このようなカラーバランス調整は、しばしば、無彩色に近い白い領域を利用して行われるので、ホワイトバランス調整とも呼ばれる。
【０００５】
ところで、画像データにおいて、再現されるべき本来の色とは異なる色を示す部分が生じることがある。例えば、単板式撮像素子（ＣＣＤ等）では、光を検出する受光部が、複数種類の色成分（例えば、ＲＧＢの各色成分）毎に互いに重ならない位置に配列されている（例えば、ベイヤー配列）。このような単板式撮像素子からは、１つの画素位置に１つの色成分のみの階調値が割り付けられている画像データ（しばしば、「RAW画像データ」と呼ばれる）が得られる。このようなRAW画像データから、全ての画素位置に複数の色成分の階調値を割り付けた画像データ（例えば、「Bitmap画像データ」）を生成する際には、画像中の各画素の色が、その周辺部分に割り付けられた階調値を用いて設定される。ここで、撮像対象の部分によっては、注目している部分の色が周辺部分の色と大きく異なる場合がある。すると、このような部分を表す画素の色が、異なる色を再現するための階調値を用いて設定されてしまうので、再現されるべき色から大きくずれた色（偽色と呼ばれる）となる場合がある。
【０００６】
また、画像データを圧縮する方法として、一部の色成分の階調値に関し、隣接する複数の画素に対して共通の階調値を割り当てる方法（例えば、JPEG圧縮におけるCb色成分とCr色成分）が、しばしば、用いられている。このような圧縮済み画像データを伸長する際にも、周辺部分と色が大きく異なる撮像対象部分を表す画素に対して、再現されるべき色と大きくずれた色（偽色）が設定される場合がある。
【０００７】
このような偽色が無彩色に近い色を示し、さらに、カラーバランス調整に利用されると、意図しないカラーバランス調整を実行してしまう場合があった。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、上述した従来の課題を解決するためになされたものであり、偽色の影響を抑えたカラーバランス調整処理を行うことができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題の少なくとも一部を解決するため、本発明における画像処理装置は、処理対象画像のカラーバランスを調整するための画像処理装置であって、前記処理対象画像に存在する画素に対して、前記処理対象画像における無彩色の撮像対象を表す部分が示し得る色を含む所定の無彩物体色範囲の色を有するか否かを判断する無彩物体色判断部と、前記無彩物体色範囲の色を有する無彩物体色画素に関し、エッジ量を算出するエッジ量算出部と、前記無彩物体色画素の画素値とエッジ量とに基づいてカラーバランス補正値を算出するカラーバランス補正値算出部と、前記カラーバランス補正値を用いて前記処理対象画像全体に対してカラーバランス調整を実行するカラーバランス調整実行部と、を備え、前記カラーバランス補正値算出部は、前記エッジ量が比較的小さな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的大きく、かつ、前記エッジ量が比較的大きな無彩物体色画素の画素値が前記カラーバランス補正値に対して与える影響が比較的小さくなるように、前記カラーバランス補正値を算出する。
【００１０】
この画像処理装置によれば、エッジ量が比較的小さな無彩物体色画素の画素値から受ける影響が比較的大きなカラーバランス補正値を用いてカラーバランス調整処理が実行されるので、エッジ量が比較的大きな画素で生じやすい偽色の影響を抑えたカラーバランス調整処理を行うことができる。
【００１１】
上記画像処理装置において、前記カラーバランス補正値算出部は、前記エッジ量に基づいて前記エッジ量が大きいほど小さい重みを決定する重み決定部を備え、さらに、前記カラーバランス補正値を、前記無彩物体色画素の各画素の画素値に前記重みを付して用いることによって算出してもよい。
【００１２】
この構成によれば、重みを用いて偽色の影響を容易に低減することができる。
【００１３】
上記画像処理装置において、前記重みは、前記エッジ量が所定のしきい値以上である場合にゼロに設定されることが好ましい。
【００１４】
この構成によれば、カラーバランス調整処理に対して、エッジ量がしきい値以上である画素が影響を与えることを防止することができる。
【００１５】
上記画像処理装置において、前記カラーバランス補正値算出部は、前記カラーバランス補正値を、前記エッジ量が所定のしきい値以下である無彩物体色画素のみの画素値を用いて算出してもよい。
【００１６】
この構成によれば、カラーバランス調整処理に対して、エッジ量がしきい値以上である画素が影響を与えることを防止することができる。
【００１７】
なお、本発明は種々の形態で実現することが可能であり、例えば、画像処理方法および画像処理装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
【発明を実施するための最良の形態】
【００１８】
次に、この発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．装置の構成：
Ｂ．第１実施例：
Ｃ．第２実施例：
Ｄ．第３実施例：
Ｅ．変形例：
【００１９】
Ａ．装置の構成：
図１は、本発明の一実施例としての画像処理システムの構成を示す説明図である。このシステムは、画像生成装置としてのデジタルカメラ１００と、画像処理装置としてのコンピュータ２００と、画像出力装置としてのプリンタ３００とを含んでいる。コンピュータ２００は、データ処理部２１０を備えている。データ処理部２１０はＣＰＵとメモリとを有しており、コンピュータプログラムを実行することによって種々の機能を実現することが可能である。図１の例では、データ処理部２１０は、データ形式変換部２１２と、カラーバランス調整部２１４と、印刷データ生成部２１６との機能を有している。
【００２０】
データ形式変換部２１２は、入力された画像データ（図示省略）の形式を、カラーバランス調整部２１４による処理に適した形式に変換する。例えば、カラーバランス調整部２１４を、RGB画像データを対象とした処理を実行するものとすることができる。このとき、データ形式変換部２１２は、デジタルカメラ１００が生成したRAW画像データを入力画像データとして用いる場合には、RAW画像データをRGB画像データへ変換する。また、デジタルカメラ１００が生成したJPEG画像データを入力画像データとして用いる場合には、JPEG画像データを伸長してRGB画像データへ変換する。RAW画像データやJPEG画像データを、RGB画像データへ変換する処理は、周知の種々の方法によって実現可能であるので、ここでは詳細な説明を省略する。なお、カラーバランス調整部２１４が用いる画像データの形式や、入力画像データの形式としては、他の種々の形式を採用することができる。
【００２１】
カラーバランス調整部２１４は、処理対象の画像データのカラーバランスを調整する処理を実行する（詳細は後述）。
【００２２】
印刷データ生成部２１６は、カラーバランス調整部２１４が処理した処理済み画像データに基づいて、プリンタ３００が利用可能な印刷データを生成し、印刷データをプリンタ３００へ供給する。具体的には、処理済み画像データをプリンタ３００が利用可能なインクのインク量データ（例えば、ＣＭＹＫ画像データ）に変換し、各インク毎にハーフトーン処理を実行することによって、印刷画素毎にドットの形成状態を示すドット形成データを生成する。さらに、印刷データ生成部２１６は、ドット形成データを配列し、印刷データを生成する。
【００２３】
プリンタ３００は、印刷データに基づいて印刷を実行する。プリンタ３００は、主走査駆動機構や、副走査駆動機構、印刷ヘッド、印刷ヘッド駆動回路などの種々の構成要素を有しているが、ここではその説明を省略する。
【００２４】
なお、印刷データ生成部２１６の機能は、いわゆるプリンタドライバによって実現される。また、データ形式変換部２１２とカラーバランス調整部２１４との機能は、いわゆる画像処理アプリケーションによって実現される。この代わりに、データ形式変換部２１２とカラーバランス調整部２１４と印刷データ生成部２１６との機能をプリンタドライバによって実現してもよい。
【００２５】
このようなプリンタドライバや画像処理アプリケーションの機能を実現するためのプログラムは、コンピュータ読み取り可能な記録媒体に記録された形態で供給され得る。このような記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等の、コンピュータが読み取り可能な種々の媒体を利用できる。
【００２６】
Ｂ．第１実施例：
図２は、第１実施例におけるカラーバランス調整部２１４の内部構成を示すブロック図である。第１実施例のカラーバランス調整部２１４は、無彩物体色画素選択部２２０と、エッジ量算出部２２２と、カラーバランス補正値算出部２２６と、カラーバランス調整実行部２２８と、を備えている。カラーバランス補正値算出部２２６は、重み決定部２２４を備えている。
【００２７】
図３は、カラーバランス調整部２１４（図２）におけるカラーバランス調整処理の手順を示すフローチャートである。ステップＳ１００では、カラーバランス補正値算出部２２６（図２）が、無彩物体色画素を用いてカラーバランス補正値を算出する。次の、ステップＳ１１０では、カラーバランス調整実行部２２８が、カラーバランス調整処理を実行する。
【００２８】
図４は、カラーバランス調整部２１４（図２）におけるカラーバランス調整値の算出処理の手順を示すフローチャートである。この処理は、図３のステップＳ１００で実行される処理である。ステップＳ２００では、無彩物体色画素選択部２２０（図２）が、処理対象画像データに含まれる各画素に関して、無彩物体色範囲の色を有しているか否かの判定を行う。無彩物体色範囲の色を有するとの判定が成立した画素（以下「無彩物体色画素」と呼ぶ。ステップＳ２００：Ｙｅｓ）については、後述するステップＳ２１０〜Ｓ２３０の処理が実行される。判定が成立しなかった画素（ステップＳ２００：Ｎｏ）は、カラーバランス補正値の算出には用いられない。
【００２９】
図５は、無彩物体色範囲の一例を示す説明図である。第１実施例では、無彩物体色範囲は、３つの色成分（Y,Cb,Cr）を用いて設定されている。図５において、縦軸は「Cr/Y」を示し、横軸は「Cb/Y」を示しており、無彩物体色範囲ＡＲが斜線で示されている。図中の軌跡Ｐは、白色軌跡（黒体軌跡とも呼ぶ）を示している。第１実施例では、無彩物体色範囲ＡＲは、白色軌跡を含むように設定されている。なお、各色成分の階調値（Y,Cb,Cr）を算出する式としては、種々のものを利用可能であり、例えば、JPEG圧縮・伸長に用いられるRGB表色系とYCbCr表色系との色変換式を用いることができる。
【００３０】
図６は、処理対象画像ＰＩの一例を示す説明図である。この処理対象画像ＰＩは、青色の色紙を背景に、絵柄が描画された白いカップＣＩを撮像した画像である。図中では、背景と、カップＣＩに描画された絵柄が斜線で表されている。このような処理対象画像ＰＩでは、カップＣＩの白い領域ＡＡの画素が、無彩物体色範囲の色を表す無体物体色画素として採用される（図４：ステップＳ２００：Ｙｅｓ）。白い領域ＡＡの内側には、白い領域の縁を除いた内側領域ＡＡｉが点線で示されている（詳細は後述）。
【００３１】
次のステップＳ２１０（図４）では、エッジ量算出部２２２（図２）が、注目している画素（無彩物体色画素）のエッジ量を算出する。図７は、エッジ量の算出に用いられる８近傍ラプラシアンフィルタを示す説明図である。この８近傍ラプラシアンフィルタは、注目している画素と周囲の８つの画素のそれぞれに対する係数（以下「エッジ重み」と呼ぶ）を示している。なお、第１実施例では、処理対象画像データにおいて、複数の画素がＸ軸方向と、それと直行するＹ軸方向とに沿って配置されているものとしている。
【００３２】
エッジ量算出部２２２は、注目している画素と周囲の８つの画素の輝度値Ｙのそれぞれに、８近傍ラプラシアンフィルタで設定されたエッジ重みを乗じて得られる値の合計値の絶対値をエッジ量として採用する。このようにして得られるエッジ量は、注目している画素と周囲の画素との輝度値Ｙの差が大きいほど、大きな値となる。すなわち、このエッジ量は、注目している画素位置における輝度値Ｙの変化の大きさを示すこととなる。例えば、図６に示す処理対象画像ＰＩでは、白領域ＡＡ内部の内側領域ＡＡｉに位置する画素については小さなエッジ量が得られ、白領域ＡＡの輪郭（内側領域ＡＡｉの外側）に位置する画素については大きなエッジ量が得られる。なお、各画素の輝度値Ｙを算出する式としては、種々の色空間の輝度値または明度値を用いることが可能であり、例えば、JPEG圧縮での輝度値Ｙや、L*a*b*表色系での明度値Ｌを用いることが可能である。
【００３３】
次のステップＳ２２０（図４）では、重み決定部２２４（図２）が、注目している画素の重みを決定する。図８は、エッジ量から重みを求めるためのグラフの一例と、種々のカラーバランス調整パラメータとを示す説明図である。図８のグラフにおいて、横軸はエッジ量Ｅを示し、縦軸は重みｋを示している。この重みｋは、注目画素をカラーバランス補正値の算出に用いる重みを意味しており、重みｋがゼロであることは、カラーバランス補正値の算出に用いないことを意味している（詳細は後述）。
【００３４】
エッジ量Ｅがゼロから第１しきい値Ｅｔｈ１に至る範囲では、重みｋは最大値である１．０に設定される。エッジ量Ｅが第１しきい値Ｅｔｈ１から第２しきい値Ｅｔｈ２に至る範囲では、重みｋは、１．０から直線的に減少する。エッジ量Ｅが第２しきい値Ｅｔｈ２以上の範囲では、重みｋはゼロに設定される。
【００３５】
重みｋが図８のように設定される理由は、以下の通りである。エッジ量Ｅが大きい画素は、撮像対象の輪郭近傍や撮像対象の細かい構造を表す部分等の空間周波数の高い部分を表す場合が多い。このように空間周波数の高い部分では、注目画素が表す撮像対象の色が、その周辺部分の色と大きく異なる場合が多いので、注目画素が表す色が、再現されるべき色と大きく異なっている可能性がある（偽色）。従って、エッジ量Ｅの大きな画素については、カラーバランス補正値の算出に用いる重みが小さい方が好ましい。
【００３６】
一方、エッジ量Ｅの小さな画素は、空間周波数の低い部分を表す場合が多い。このように空間周波数の低い部分では偽色が生じにくいので、エッジ量Ｅの小さな画素をカラーバランス補正値の算出に積極的に用いることが好ましい。
【００３７】
そこで、図８に示す実施例では、エッジ量Ｅが第２しきい値Ｅｔｈ２以上の範囲では、重みｋをゼロに設定することによって、カラーバランス補正値の算出に用いられないようにしている。また、エッジ量Ｅが第１しきい値Ｅｔｈ１以下の範囲では、重みｋを最大値である１．０に設定することによって、カラーバランス補正値の算出に積極的に用いるようにしている。また、第１しきい値Ｅｔｈ１と第２しきい値Ｅｔｈ２との間では、エッジ量が大きくなるに従って重みｋが小さくなるように、重みｋを直線的に減少させている。例えば、図６に示す処理対象画像ＰＩでは、内側領域ＡＡｉに位置する画素については大きな重みが設定され、白領域ＡＡの輪郭に位置する画素については小さな重みが設定される。なお、重みｋは、直線的に変化させる代わりに曲線的に変化させてもよく、また、連続的に変化させる代わりに不連続的に変化させてもよい。また、第１しきい値Ｅｔｈ１と第２しきい値Ｅｔｈ２との値は、種々の対象物を撮像して得られる画像データに生じた偽色とエッジ量とを比較して決定することができる。
【００３８】
次のステップＳ２３０（図４）では、カラーバランス補正値算出部２２６（図２）が、各色成分（この例ではＲＧＢ）毎の階調値を累積する。ここで、カラーバランス補正値算出部２２６は、各画素のＲＧＢ階調値に各画素毎に決定された重み（図４：ステップＳ２２０）を付した値を累積する。その結果、以下の（１ａ）〜（１ｃ）式に従ったＲＧＢ各色の累積値SumR,SumG,SumBが算出される。
【００３９】
SumR = Σ（ki × Ri）  ...（１ａ）
SumG = Σ（ki × Gi）  ...（１ｂ）
SumB = Σ（ki × Bi）  ...（１ｃ）
【００４０】
ここで、Ri,Gi,Biは各色成分の階調値である。kiは、重み決定部２２４が決定した重みである。Σは、無彩物体色画素（図４：ステップＳ２００）の全てについての和をとることを意味している。
【００４１】
次のステップＳ２４０（図４）では、カラーバランス調整部２１４（図２）は、処理対象画像データの全ての画素について処理が終了したか否かの判定を行う。未処理の画素が存在する場合には（ステップＳ２４０：Ｎｏ）、再びステップＳ２００に戻り、上述した処理を繰り返し実行する。
【００４２】
全ての画素に対する処理が終了したら（ステップＳ２４０：Ｙｅｓ）、カラーバランス補正値算出部２２６（図２）は、ＲＧＢ各色成分の累積値SumR,SumG,SumBを用いて３種類のカラーバランス補正値AWB_R,AWB_G,AWB_Bを算出する（ステップＳ２５０）。第１実施例では、カラーバランス補正値AWB_R,AWB_G,AWB_Bは、以下の（２ａ）〜（２ｃ）式に従って算出される。
【００４３】
AWB_R = SumG / SumR        ...（２ａ）
AWB_G = SumG / SumG = 1.0  ...（２ｂ）
AWB_B = SumG / SumB        ...（２ｃ）
【００４４】
このように、３つのカラーバランス補正値（AWB_R,AWB_G,AWB_B）は、Ｇ成分の重み付き階調値の累積値（SumG）を、ＲＧＢの各色成分のそれぞれの重み付き階調値の累積値（SumR,SumG,SumB）で割った値である。これは、無彩物体色画素の各色成分の累積値が表す色と、Ｇ成分を基準とする無彩色とのズレを表している。従って、（２ａ）〜（２ｃ）式で与えられる補正値（AWB_R,AWB_G,AWB_B）を用いて処理対象画像の全体にカラーバランス調整を行えば、処理対象全体のカラーバランスを適切に調整することができる。
【００４５】
カラーバランス補正値（AWB_R,AWB_G,AWB_B）が算出されると、図３のステップＳ１１０において、カラーバランス調整実行部２２８（図２）は、カラーバランス調整を実行し、処理済み画像データを生成する。図９は、補正値（AWB_R,AWB_G,AWB_B）を用いて実行されるカラーバランス調整の内容を示すグラフである。カラーバランス調整は、処理対象画像データのＲＧＢの各色成分に関して階調補正を実行する処理である。第１実施例では、処理済み画像データにおける各色成分の階調値Rout,Gout,Boutは、以下の（３ａ）〜（３ｃ）式に従って算出される。
【００４６】
Rout = AWB_R × Rin        ...（３ａ）
Gout = AWB_G × Gin = Gin  ...（３ｂ）
Bout = AWB_B × Bin        ...（３ｃ）
【００４７】
ここで、Rin,Gin,Binは、処理対象画像データにおける各色成分の階調値である。このように、第１実施例では、処理済み画像データにおける階調値（Rout,Gout,Bout）は、元々の階調値（Rin,Gin,Bin）に、各色成分の補正値を乗じて得られる値である。なお、第１実施例では、各色成分の補正値がＧ成分を基準として設定されているので、Ｇ成分の階調値は調整前後で同じ値となる。
【００４８】
このように、第１実施例では、無彩物体色画素を利用して処理対象画像のカラーバランス補正値を決定するので、処理対象画像の色かぶりを低減することができる。また、無彩物体色画素の中のエッジ量が比較的大きな画素については、カラーバランス補正値の算出に用いる重みが比較的小さく抑えられている。従って、エッジ量が比較的大きな無彩物体色画素の画素値のカラーバランス補正値に与える影響を小さく抑え、エッジ量が大きな画素で生じやすい偽色の影響を抑えたカラーバランス調整を行うことができる。また、エッジ量の比較的大きな無彩物体色画素の画素数が、エッジ量の比較的小さな無彩物体色画素の画素数と同程度であっても、エッジ量の比較的大きな無彩物体色画素の画素値には比較的小さな重みが付されるので、偽色の影響を抑えることができる。
【００４９】
Ｃ．第２実施例：
図１０は、第２実施例における、エッジ量Ｅと重みｋとの関係を説明するグラフである。図２〜図９に示した第１実施例との差異は、エッジ量Ｅと重みｋとの関係が異なる点だけであり、他の構成や動作は第１実施例と同じである。
【００５０】
図１０の例では、図８の例と異なり、エッジ量Ｅが第１しきい値Ｅｔｈ１１以下である範囲では重みｋが１．０に設定され、エッジ量Ｅが第１しきい値Ｅｔｈ１１よりも大きい範囲では重みｋがゼロに設定されている。その結果、カラーバランス補正値の算出には、エッジ量Ｅが第１しきい値Ｅｔｈ１１以下である無彩物体色画素のみが用いられる。その結果、偽色の影響を抑えたカラーバランス調整を行うことができる。
【００５１】
なお、第２実施例では、カラーバランス調整部２１４（図２）において、重み決定部２２４を省略することができる。この場合には、カラーバランス補正値算出部２２６が、エッジ量が第１しきい値Ｅｔｈ１１以下である無彩物体色画素のみを用いて補正値を算出すればよい。このとき、図４のフローチャートにおいては、ステップＳ２２０を省略することができる。また、カラーバランス補正値算出部２２６は、エッジ量Ｅが第１しきい値Ｅｔｈ１１以下であるか否かを判定し、さらに、ステップＳ２３０で、重み付き階調値の代わりに、エッジ量Ｅが第１しきい値Ｅｔｈ１１以下である画素のみの階調値を累積すればよい。
【００５２】
Ｄ．第３実施例：
図１１は、第３実施例におけるカラーバランス調整の内容を説明する説明図である。図９に示した第１実施例との差異は、処理対象画像データのＲＧＢの各色成分に関してトーンカーブ補正を実行する点であり、他の構成や動作は第１実施例と同じである。
【００５３】
第３実施例では、カラーバランス補正値算出部２２６は、上述した手順で算出された補正値（AWB_R,AWB_G,AWB_B）を用いて、トーンカーブ補正値ΔC(R),ΔC(G),ΔC(B)を、以下の（４ａ）〜（４ｃ）式に従って算出する。
【００５４】
ΔC(R) = a × ( AWB_R - 1.0 )        ...（４ａ）
ΔC(G) = a × ( AWB_G - 1.0 ) = 0.0  ...（４ｂ）
ΔC(B) = a × ( AWB_B - 1.0 )        ...（４ｃ）
【００５５】
ここで、ａは所定の係数である。トーンカーブ補正値ΔC(R),ΔC(G),ΔC(B)は、入力基準値Ｄrefにおける出力値を無変換特性からシフトさせるずらし量に相当する。入力基準値Ｄrefとしては、例えば、上述した無彩物体色画素の平均輝度値の値を用いることができ、あるいは、所定の一定値（例えば192）を用いることもできる。図１１の例では、ＲＧＢの各色成分に対して入力基準値Ｄrefに対するΔC(R),ΔC(G),ΔC(B)を一つずつ指定することによって、各色成分のトーンカーブの形状が決定される。なお、第３実施例では、各色成分の補正値がＧ成分を基準として設定されているので、Ｇ成分の階調値は調整前後で同じ値となる。なお、係数ａとしては、カラーバランス調整が過剰とならないような値を採用すればよく、画像の調整結果の官能評価に基づいて決めた値を採用してもよい。また、この実施例では、トーンカーブ補正値が、本発明における「カラーバランス補正値」に相当すると考えることもできる。
【００５６】
このように、第３実施例では、トーンカーブ補正値（ΔC(R),ΔC(G),ΔC(B)）が無彩物体色画素を利用して決定されているので、各色成分のトーンカーブを調整することによって、適切なカラーバランス調整を行うことができる。また、各色成分のトーンカーブ補正値（ΔC(R),ΔC(G),ΔC(B)）が、エッジ量に基づく重みを考慮して算出されているので、偽色の影響を抑えることができる。
【００５７】
Ｅ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【００５８】
Ｅ１．変形例１：
上述した各実施例では、無彩物体色範囲が「Cr/Y」と「Cb/Y」とを用いて設定されているが、他の色成分（例えば、彩度値Ｓと輝度値Ｙ）を用いて設定されていてもよい。また、無彩物体色範囲は、白色軌跡を含む範囲に限らず、処理対象画像データにおける無彩色の撮像対象を表す部分（画素）が示し得る色を含む範囲であればよい。例えば、ＣＩＥ（国際照明委員会）で定められた昼光軌跡を含む範囲を採用してもよく、また、彩度値Ｓがしきい値よりも低く、かつ、輝度値Ｙがしきい値よりも高い所定の色範囲を採用してもよい。なお、彩度値Ｓとしては、ＨＳＬ（Hue/Saturation/luminance)色空間やＨＳＢ(Hue/Saturation/Brightness)色空間などの種々の色空間の彩度値を用いることが可能である。また、輝度値Ｙとしても、ＨＳＬ色空間やＨＳＢ色空間などの種々の色空間の明度値または輝度値を用いることが可能である。
【００５９】
Ｅ２．変形例２：
上述した各実施例では、エッジ量の算出に８近傍ラプラシアンフィルタを用いているが、この代わりに、４近傍ラプラシアンフィルタやプレウィットフィルタ、ソーベルフィルタといった、注目の画素位置における階調値の変化の大きさを算出可能なフィルタを用いてもよい。また、注目画素とその周辺の画素とにおける「最大輝度値−最小輝度値」をエッジ量として用いてもよい。輝度値を比較する画素の範囲としては、注目画素を中心とした３×３画素範囲や５×５画素範囲といった矩形範囲を採用してもよく、また、他の種類の範囲を採用してもよい。
【００６０】
なお、上述したように、偽色は、撮像対象の輪郭を表す部分に限らず、撮像対象の細かい構造を表す部分にも生じる可能性がある。また、偽色は、輝度値Ｙに限らず種々の色成分の変化の大きな部分で生じる可能性もある。従って、エッジ量は、注目の画素位置における種々の色成分（例えば、ＲＧＢの各色成分や、ＹＣｂＣｒの各色成分）の階調値の変化の大きさを表す指標であればよく、また、注目の画素位置における種々の色成分の空間周波数が高いほど大きくなるような値を採用することができる。例えば、ＲＧＢ色成分のＧ成分に上述のフィルタを用いて算出した値をエッジ量として用いてもよく、また、ＲＧＢ各色成分毎に算出した色別エッジ量の合計値をエッジ量として用いてもよい。
【００６１】
Ｅ３．変形例３：
上述の各実施例では、重みｋ（図８、図１０）がＲＧＢの各色成分に対して共通に用いられているが、この代わりに、色成分毎に異なる重みを用いることとしてもよい。また、上述の各実施例では、重みｋは、エッジ量Ｅの最も大きな一部の範囲（例えば、図８の例の第２しきい値Ｅｔｈ２以上の範囲）においてゼロに設定されているが、この代わりに、エッジ量の全範囲においてゼロより大きな値となるように設定されていてもよい。いずれの場合も、重みｋを、エッジ量Ｅが大きいほど小さくなるように設定すれば、偽色の影響を抑えたカラーバランス調整を行うことができる。このとき、図８、１０に示すように、重みｋがエッジ量Ｅの一部の範囲において一定値であってもよい。また、エッジ量Ｅの増大に伴って重みｋが増大しないことが好ましい。
【００６２】
Ｅ４．変形例４：
上述した各実施例において、カラーバランス補正値を算出する際に、処理対象画像データに含まれる画素の一部を間引いてもよい。例えば、画像中の画素配列において、一定の割合で均等に画素を間引いた残り（例えば、１画素おきに３画素間引いた残り）の画素の中から、無彩物体色画素を選択してもよい。
【００６３】
ここで、間引く割合をエッジ量に基づいて調整してもよい。このような方法として、例えば、任意のエッジ量に対して、画像中のいずれの画素を利用するかを予め指定しておく方法を用いることができる。このような画素の指定方法としては、例えば、エッジ量が所定のしきい値以上の場合には、１画素おきに５画素間引き、エッジ量が所定のしきい値以下の場合には、１画素おきに２画素間引く指定方法を用いることができる。このとき、画像中の各画素は、その画素のエッジ量に対してその画素を利用すると指定されている場合に、利用される。ここで、利用すると指定される画素の割合（以下「利用指定割合」と呼ぶ）が、図８や図１０に示す重みと同様に、エッジ量が大きいほど小さいことが好ましい。こうすれば、エッジ量が小さな無彩物体色画素ほど利用される割合が高くなるので、エッジ量が比較的大きな無彩物体色画素の画素値がカラーバランス補正値に与える影響をより小さくすることができる。このとき、重みを付さずに無彩物体色画素の階調値を用いてカラーバランス補正値を算出してもよい。
【００６４】
Ｅ５．変形例５：
カラーバランス補正値の算出方法としては、上述した式を用いる方法や、利用指定割合をエッジ量に基づいて調整する方法の代わりに、無彩物体色画素の画素値とエッジ量とに基づいてカラーバランス補正値を算出する種々の方法を採用することが可能である。例えば、（２ａ）〜（２ｃ）式において、ＲＧＢ各色の累積値SumR,SumG,SumBの代わりに、ＲＧＢ各色の階調値の平均値AveR,AveG,AveBを用いてもよい。この場合には、平均値が表す色と、Ｇ成分を基準とする無彩色とのズレに基づいて補正値が決定されることとなる。このとき、エッジ量に基づく重みを考慮した重み付き平均値を採用すれば、偽色の影響を抑えることができる。重み付き平均値は、例えば、以下の（５ａ）〜（５ｄ）式に従って算出することができる。
【００６５】
Neff = Σ ki                   ...（５ａ）
AveR = {Σ (ki × Ri)} / Neff  ...（５ｂ）
AveG = {Σ (ki × Gi)} / Neff  ...（５ｃ）
AveB = {Σ (ki × Bi)} / Neff  ...（５ｄ）
【００６６】
ここで、Ri,Gi,Biは各色成分の階調値である。kiは、重み決定部２２４（図２）が決定した重みである。Σは、無彩物体色画素の全てについての和をとることを意味している。Neffは、重みを考慮した有効画素数を意味している。
【００６７】
また、上述の（２ａ）〜（２ｃ）式において、Ｇ成分の累積値SumG（（５ａ）〜（５ｄ）式を適用する場合には平均値AveG）を基準として用いる代わりに、輝度値Ｙを基準として用いる形式を用いてもよい。いずれの場合も、カラーバランス補正値の算出方法は、エッジ量が比較的小さな無彩物体色画素の画素値がカラーバランス補正値に与える影響が比較的大きく、かつ、エッジ量が比較的大きな無彩物体色画素の画素値がカラーバランス補正値に与える影響が比較的小さくなるように算出する方法であることが好ましい。
【００６８】
ここで、画素値がカラーバランス補正値へ与える影響の強さは、例えば、グレー点（カラーバランス調整によって無彩色に調整される色）の色相値を用いて評価することができる。仮に、エッジ量と色相値とが互いに異なる２種類の無彩物体色画素を、それぞれ、同数ずつ含む画像データを処理する場合を考える。ここで、エッジ量が小さい無彩物体色画素の色相値を「小エッジ量色相値」と呼び、エッジ量が大きい無彩物体色画素の色相値を「大エッジ量色相値」と呼ぶ。このとき、グレー点の色相値が大エッジ量色相値よりも小エッジ量色相値に近ければ、エッジ量が比較的小さな画素の影響が強いということができる。上述した各実施例では、エッジ量が小さいほど大きくなるように重みが設定されているので（図８、図１０）、小エッジ量色相値により近い色相を有する色が無彩色となるようにカラーバランス補正値が算出される。なお、評価を行う際には、２種類の無彩物体色画素に関し、彩度値と輝度値とを同じとすることが好ましい。
【００６９】
また、無彩物体色画素の画素値の変化に対するグレー点の変化の度合いを用いて影響の強さを評価してもよい。仮に、全ての色成分の階調値が同じでエッジ量のみが互いに異なる２種類の無彩物体色画素（エッジ量の小さい方を「小エッジ量画素」と呼び、エッジ量の大きい方を「大エッジ量画素」と呼ぶ）を、それぞれ、同数ずつ含む画像データを処理する場合を考える。ここで、小エッジ量画素の色相値を一定値だけ変化させた場合のグレー点の色相値の変化量が、大エッジ量画素の色相値を同じ一定値だけ変化させた場合のグレー点の色相値の変化量よりも大きければ、エッジ量が比較的小さな画素の影響が強いということができる。また、色相値の変化の代わりに彩度値の変化を用いて評価してもよい。
【００７０】
なお、色相値としては、ＨＳＬ色空間やＨＳＢ色空間などの種々の色空間の色相値を用いることができる。
【００７１】
Ｅ６．変形例６：
上述の各実施例では、コンピュータ２００は、プリンタ３００が利用可能な印刷データを生成する印刷データ生成部２１６を備えていたが、この代わりに、ＬＣＤディスプレイやプロジェクタ等の画像表示部が利用可能な表示データを生成する表示データ生成部を備えていてもよい。こうすれば、カラーバランス調整の処理済みの画像データに基づいて画像を表示することができる。また、コンピュータ２００が、カラーバランス調整の処理済みの画像データを格納する画像ファイルを生成する画像ファイル生成部を備えていてもよい。また、上述の各実施例では、コンピュータ２００がカラーバランス調整部２１４の機能を有しているが、カラーバランス調整部２１４の機能は、デジタルカメラ１００等の画像生成装置に設けられていても良く、また、プリンタ３００やＬＣＤディスプレイ等の画像出力装置に設けられていてもよい。
【００７２】
なお、本明細書において、「デジタルカメラ」とは、静止画を撮影するデジタルスチルカメラと、動画を撮影するデジタルビデオカメラとの両方を含んでいる。また、上述したように、単板式撮像素子を用いたデジタルカメラにおいては、種々の色成分の階調値の変化が大きい部分で偽色が生じ易いので、このようなデジタルカメラで生成された画像データのカラーバランスを調整する場合には、特に、偽色の影響を抑える効果が顕著となる。
【００７３】
Ｅ７．変形例７：
上述の各実施例では、カラーバランス調整部２１４は、自動的にカラーバランス補正値を決定していたが、さらに、ユーザがグレー点を指定するマニュアル設定動作モードを有していてもよい。この動作モードでは、カラーバランス補正値算出部２２６は、グレー点（色）を指定するユーザの指示を受け取り、そのグレー点が無彩色に近づく（彩度が小さくなる）ように、カラーバランス補正値を決定する。グレー点を指定する方法としては、例えば、図６のような処理対象画像をディスプレイ（図示省略）に表示し、さらに、その中の無彩色に調整したい色を有する画素を指定するユーザの指示を受け取る方法を用いることができる。ここで、ユーザが指定した画素のエッジ量が所定のしきい値（例えば、図８の第２しきい値Ｅｔｈ２）以上である場合に、カラーバランス補正値算出部２２６がユーザに警告を通知すれば、偽色に基づいてカラーバランス調整を行うことを抑制することができる。
【００７４】
Ｅ８．変形例８：
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【図面の簡単な説明】
【００７５】
【図１】本発明の一実施例としての画像処理システムの構成を示す説明図。
【図２】第１実施例におけるカラーバランス調整部２１４の内部構成を示すブロック図。
【図３】カラーバランス調整部２１４におけるカラーバランス調整処理の手順を示すフローチャート。
【図４】カラーバランス調整部２１４におけるカラーバランス調整値の算出処理の手順を示すフローチャート。
【図５】無彩物体色範囲の一例を示す説明図。
【図６】処理対象画像ＰＩの一例を示す説明図。
【図７】エッジ量の算出に用いられる８近傍ラプラシアンフィルタを示す説明図。
【図８】エッジ量から重みを求めるためのグラフの一例と種々のカラーバランス調整パラメータとを示す説明図。
【図９】補正値（AWB_R,AWB_G,AWB_B）を用いて実行されるカラーバランス調整の内容を示すグラフ。
【図１０】第２実施例におけるエッジ量Ｅと重みｋとの関係を説明するグラフ。
【図１１】第３実施例におけるカラーバランス調整の内容を説明する説明図。
【符号の説明】
【００７６】
１００...デジタルカメラ
２００...コンピュータ
２１０...データ処理部
２１２...データ形式変換部
２１４...カラーバランス調整部
２１６...印刷データ生成部
２２０...無彩物体色画素選択部
２２２...エッジ量算出部
２２４...重み決定部
２２６...カラーバランス補正値算出部
２２８...カラーバランス調整実行部
３００...プリンタ
ＡＲ...無彩物体色範囲
Ｐ...白色軌跡
ＰＩ...処理対象画像
【図１】
2005252756.tif 000003
【図２】
2005252756.tif 000004
【図３】
2005252756.tif 000005
【図４】
2005252756.tif 000006
【図５】
2005252756.tif 000007
【図６】
2005252756.tif 000008
【図７】
2005252756.tif 000009
【図８】
2005252756.tif 000010
【図９】
2005252756.tif 000011
【図１０】
2005252756.tif 000012
【図１１】
2005252756.tif 000013