(58)【調査した分野】(Int.Cl.,DB名)
前記第1のR信号から前記第1のG信号を減算した第2の差分値が第2の閾値を超えたら、前記第1のG信号に乗算される前記第5の補正係数を1に近付け、前記第1のR信号及び第1のB信号にそれぞれ乗算される前記第4及び第6の補正係数を0に近付けるように補正するG係数補正部をさらに備える請求項1に記載の色補正装置。
前記第2のR信号に、前記第2のR信号、第2のG信号、第2のB信号のうちの任意の2つの組み合わせの差分値に複数の補正係数よりなる第10の補正係数を乗算することによって得られた第1の彩度補正値を加算し、前記第2のG信号に、前記差分値に複数の補正係数よりなる第11の補正係数を乗算することによって得られた第2の彩度補正値を加算し、前記第2のB信号に、前記差分値に複数の補正係数よりなる第12の補正係数を乗算することによって得られた第3の彩度補正値を加算して、第3のR信号、第3のG信号、第3のB信号を生成する色差マトリクス回路を備え、
前記第2の彩度補正値は、前記撮像装置がR、G、Bの全ての色成分を含む広帯域の波長を有する第1の光源下で被写体を撮像するときに前記第3のG信号を減衰させるように負の値とされており、
前記撮像装置がBの色成分を主とする狭帯域の波長を有する第2の光源下で被写体を撮像するとき、前記第3のG信号が前記第2の彩度補正値によって負方向に補正されないように、前記第11の補正係数における一部の補正係数を0に近付けるよう補正する彩度係数補正部をさらに備える
請求項1または2に記載の色補正装置。
前記彩度係数補正部は、前記撮像装置が前記第2の光源下で被写体を撮像するとき、前記第3のR信号が前記第1の彩度補正値によって負方向に補正されないように、前記第10の補正係数における一部の補正係数を0に近付けるよう補正する請求項3に記載の色補正装置。
前記撮像装置がRの色成分を主とする含む狭帯域の波長を有する第3の光源下で被写体を撮像するとき、前記彩度係数補正部は、前記第11の補正係数における他の一部の補正係数を0に近付けるよう補正する請求項3または4に記載の色補正装置。
前記色差マトリクス回路は、色空間を複数の領域に分割して前記第2のR信号、第2のG信号、第2のB信号を前記領域ごとに補正して、前記領域ごとに前記第3のR信号、第3のG信号、第3のB信号を生成し、
前記第10〜第12の補正係数は、前記領域ごとに前記差分値に乗算される補正係数の組み合わせとして設定されており、
前記彩度係数補正部は、前記撮像装置が前記第2の光源下で被写体を撮像するとき、前記複数の領域のうちの第1の特定の領域において設定された補正係数の少なくとも一部を0に近付けるよう補正する
請求項5に記載の色補正装置。
前記彩度係数補正部は、前記撮像装置が前記第3の光源下で被写体を撮像するとき、第2の特定の領域において設定された補正係数の少なくとも一部を0に近付けるよう補正する請求項6に記載の色補正装置。
前記色差マトリクス回路は、色空間を、G−B=0、B−R=0、R−G=0を示す直線によって6つの領域に分割し、前記6つの領域ごとに、前記第2のR信号、第2のG信号、第2のB信号を補正して前記第3のR信号、第3のG信号、第3のB信号を生成する請求項6または7に記載の色補正装置。
【発明を実施するための形態】
【0011】
以下、一実施形態の色補正装置について、添付図面を参照して説明する。
図1に示す一実施形態の色補正装置の構成及び動作を説明する前に、
図2を用いて、基本的な構成の色補正装置を備える撮像装置の構成及び動作を説明する。
【0012】
図2において、被写体からの光はレンズ1を介してプリズム2に入射される。レンズ1は複数枚のレンズを含む。プリズム2は、入射した光を赤色(R)、緑色(G)、青色(B)の波長帯に分離する。R用、G用、B用の撮像素子3r、3g、3bは、それぞれ、R信号R3、G信号G3、B信号B3を生成して出力する。撮像素子3r、3g、3bは例えばCMOSセンサであり、デジタル信号のR信号R3、G信号G3、B信号B3を出力する。
【0013】
撮像素子3r、3g、3bの代わりに、ベイヤ配列に代表されるカラーフィルタを備える単板の撮像素子が用いられてもよい。この場合には、単板の撮像素子より出力されたR信号、G信号、B信号が1フレーム内に混在する撮像信に基づいて、R信号、G信号、B信号それぞれのフレームの映像信号を生成するデモザイク処理回路が設けられる。なお、プリズム2は不要である。
【0014】
黒調整部4は、R信号R3、G信号G3、B信号B3の黒レベルを調整して、R信号R4、G信号G4、B信号B4を出力する。ホワイトバランス調整部5は、R信号R4、G信号G4、B信号B4に乗算するゲインを調整し、ホワイトバランスを調整したR信号R5、G信号G5、B信号B5を出力する。
【0015】
リニアマトリクス回路6は、R信号R5、G信号G5、B信号B5を補正してR信号R6、G信号G6、B信号B6を出力する。
【0016】
具体的には、リニアマトリクス回路6には、補正係数発生部10が発生したR信号用の補正係数kRR、kRG、kRBと、G信号用の補正係数kGR、kGG、kGBと、B信号用の補正係数kBR、kBG、kBBが入力される。リニアマトリクス回路6は、式(1)に示す行列式によって、R信号R5、G信号G5、B信号B5と、3行×3列の補正係数とをマトリクス演算して、R信号R5、G信号G5、B信号B5をR信号R6、G信号G6、B信号B6に変換する。
【0018】
補正係数kRR、kRG、kRB、kGR、kGG、kGB、kBR、kBG、kBBは、太陽またはハロゲンランプのようなR、G、Bの全ての色成分を含む広帯域の波長を有する光源下で被写体を撮像したときに自然な色となるような値に設定されている。R、G、Bの全ての色成分を含む広帯域の波長を有する光源を第1の光源と称することとする。
【0019】
補正係数発生部10は、マイクロコンピュータの中央処理装置(CPU)によって構成することができる。勿論、補正係数発生部10がCPU以外によって構成されていてもよい。
【0020】
なお、3行×3列の補正係数において、補正係数kRRは補正係数kRG及びkRBより格段に大きい値であり、補正係数kGGは補正係数kGR及びkGBより格段に大きい値であり、補正係数kBBは補正係数kBR及びkBGより格段に大きい値である。
【0021】
色差マトリクス回路7は、R信号R6、G信号G6、B信号B6の色の彩度を補正してR信号R7、G信号G7、B信号B7を出力する。色差マトリクス回路7の具体的な動作は次のとおりである。
【0022】
色差マトリクス回路7には、補正係数発生部10が発生した補正係数kR01及びkR02、kG01及びkG02、kB01及びkB02、kY01及びkY02、kM01及びkM02、kC01及びkC02が入力される。
【0023】
補正係数kR01及びkR02、kG01及びkG02、kB01及びkB02は、それぞれ、R、G、Bの彩度を補正するための補正係数である。補正係数kY01及びkY02、kM01及びkM02、kC01及びkC02は、それぞれ、イエロ(Ye)、マゼンタ(Mg)、シアン(Cy)の彩度を補正するための補正係数である。
【0024】
図3は、色空間を平面的に示しており、円の周方向が色相を示し、径方向が彩度を示す。色空間はG−B=0、B−R=0、R−G=0を示す直線で6分割されている。6つの領域をAr1〜Ar6とする。領域Ar1〜Ar6には、それぞれ、Mg、B、Cy、G、Ye、Rの各色が存在している。
【0025】
色差マトリクス回路7は、各画素が
図3に示す領域Ar1〜Ar6のどこに位置しているかによって、画素単位でR信号R6、G信号G6、B信号B6を補正する。各画素が領域Ar1〜Ar6のどこに位置しているかは、R信号R6、G信号G6、B信号B6の各差分値(G6−B6)、(B6−R6)、(R6−G6)の正負の符号によって決まる。
【0026】
色差マトリクス回路7は、画素が領域Ar1〜Ar6に位置しているとき、それぞれ、式(2)〜(7)に基づいてR信号R7を生成し、式(8)〜(13)に基づいてG信号G7を生成し、式(14)〜(19)に基づいてB信号B7を生成する。
【0027】
領域Ar1:R7=R6+{kR01(R6−B6)+kM01(B6−G6)} …(2)
領域Ar2:R7=R6+{kM01(R6−G6)−kB01(B6−R6)} …(3)
領域Ar3:R7=R6+{−kB01(B6−G6)−kC01(G6−R6)} …(4)
領域Ar4:R7=R6+{−kG01(G6−B6)−kC01(B6−R6)} …(5)
領域Ar5:R7=R6+{kY01(R6−B6)−kG01(G6−R6)} …(6)
領域Ar6:R7=R6+{kR01(R6−G6)+kY01(G6−B6)} …(7)
【0028】
領域Ar1:G7=G6+{−kR02(R6−B6)−kM02(B6−G6)} …(8)
領域Ar2:G7=G6+{−kB01(B6−R6)−kM02(R6−G6)} …(9)
領域Ar3:G7=G6+{kC02(G6−R6)−kB01(B6−G6)} …(10)
領域Ar4:G7=G6+{kG02(G6−B6)+kC02(B6−R6)} …(11)
領域Ar5:G7=G6+{kG02(G6−R6)+kY01(R6−B6)} …(12)
領域Ar6:G7=G6+{kY01(G6−B6)−kR02(R6−G6)} …(13)
【0029】
領域Ar1:B7=B6+{kM01(B6−G6)−kR02(R6−B6)} …(14)
領域Ar2:B7=B6+{kB02(B6−R6)+kM01(R6−G6)} …(15)
領域Ar3:B7=B6+{kB02(B6−G6)+kC02(G6−R6)} …(16)
領域Ar4:B7=B6+{kC02(B6−R6)−kG01(G6−B6)} …(17)
領域Ar5:B7=B6+{−kG01(G6−R6)−kY02(R6−B6)} …(18)
領域Ar6:B7=B6+{−kR02(R6−G6)−kY02(G6−B6)} …(19)
【0030】
式(2)〜(7)において、R信号R6に加算される値を第1の彩度補正値、式(8)〜(13)において、G信号G6に加算される値を第2の彩度補正値、式(14)〜(19)において、B信号B6に加算される値を第3の彩度補正値と称することとする。
【0031】
各色の彩度を高くしたり、低くしたりするために、補正係数kR01及びkR02、kG01及びkG02、kB01及びkB02、kY01及びkY02、kM01及びkM02、kC01及びkC02は、正の値または負の値とされる。補正係数kR01及びkR02、kG01及びkG02、kB01及びkB02、kY01及びkY02、kM01及びkM02、kC01及びkC02は、第1の光源下で被写体を撮像したときに自然な色となるような値に設定されている。
【0032】
ガンマ補正部8は、R信号R7、G信号G7、B信号B7をガンマ補正して、R信号R8、G信号G8、B信号B8を出力する。輝度色差変換部9は、公知の変換式を用いて、R信号R8、G信号G8、B信号B8を輝度信号Yと色差信号Cb及びCrに変換して出力する。
【0033】
図2において、撮像素子3r、3g、3bより出力される映像信号(R信号R3、G信号G3、B信号B3)は、人間の目に対応する理想の分光特性ではない。これは、プリズム2等の光学系の特性、撮像素子3r、3g、3bの分光感度特性が人間の目の特性とは異なるからである。色を補正しないと、輝度信号Yと色差信号Cb及びCrを図示していないモニタに表示させて人間が見たときの被写体の色と被写体の実際の色とが異なってしまう。
【0034】
そこで、リニアマトリクス回路6及び色差マトリクス回路7によって、モニタの色空間に合うように色を補正することによって、モニタに表示された被写体を人間が見たときの色と被写体の実際の色とを近付けることができる。
【0035】
一般的に、人間の見た目に近いRGBの分光特性は、CIE (1931) 2-deg color matching functionsで知られている特性である。
図4は、その特性をITU(国際電気通信連合)規格のREC709の色空間に変換した特性である。
図4の横軸は波長、縦軸は三刺激値であり、実線はR信号の特性、一点鎖線はG信号の特性、破線はB信号の特性を示している。
【0036】
撮像装置のRGBの総合特性を、リニアマトリクス回路6及び色差マトリクス回路7によって
図4に近付ければ、人間が見たときの色と被写体の実際の色とを近付けることができる。但し、撮像装置では、R信号、G信号、B信号を負に補正したとしても負の波長領域では0にクリップされる。
【0037】
ITU709では、輝度色差変換部9は、式(20)に基づいて輝度信号Yを生成することが規格化されている。式(20)におけるR、G、Bの値は、
図2においてはガンマ補正部8より出力されたR信号R8、G信号G8、B信号B8の値である。
Y=0.2126R+0.7152G+0.0722B …(20)
【0038】
第1の光源下で被写体を撮像する場合には、RGBの総合特性をリニアマトリクス回路6及び色差マトリクス回路7によって
図4に近付けたとしても、式(20)に基づき輝度信号Yを生成することができる。これは、第1の光源下で被写体に照射される光は、R、G、Bの全ての色成分を含む広帯域の波長を有するからである。
【0039】
しかしながら、青色LED光源のようなBの色成分のみを含む狭帯域の波長を有する光源下で被写体が撮像される場合がある。この場合、被写体にはBの色成分のみの光が照射されることもあるし、Bの色成分の光と、他の光源からのわずかな他の色成分を有する光とが混在することもある。このようなBの色成分が主である状態での撮像を第2の光源下での撮像と称することとする。
【0040】
第2の光源下で被写体を撮像する場合には、RGBの総合特性をリニアマトリクス回路6及び色差マトリクス回路7によって
図4に近付けようとしても、輝度信号Yを適切に生成することができない。これは次の理由による。被写体に照射される光の波長域の大部分はBの波長域であり、B信号とR信号及びG信号との差が非常に大きい。RGBの総合特性を
図4に近付けようとすると、R信号及びG信号が負方向に補正されて0にクリップされて、輝度信号Yの値が極めて小さくなるか、輝度信号Yの値が0になって輝度信号Yが生成されない。
【0041】
リニアマトリクス回路6によってRGBの総合特性を
図4に近付けるために、式(1)に示す行列式における補正係数kRRは正、補正係数kRGは負の値とされる。補正係数kRBは前段の光学特性等に応じて正の場合も負の場合もあり得る。また、補正係数kGGは正、補正係数kGR及びkGBは負の値とされる。このようにリニアマトリクス回路6で用いられる補正係数は負の値を含むので、第2の光源下においてはR信号R5またはG信号G5が負の方向に補正されて0にクリップされてしまい、輝度信号Yが適切に生成されない。
【0042】
よって、第2の光源下では、青色で輝度の階調のない不自然な映像となってしまう。以上説明したLED光源下で発生する不具合は、青色LED光源下に限らず、赤色LED光源のようなRの色成分を主とする狭帯域の波長を有する第3の光源下、または、青色LED光源と赤色LED光源との双方が存在して被写体にマゼンタの光が照射される場合にも同様に発生する。
【0043】
次に、
図1を用いて、LED光源下で発生する不具合を解消するようにリニアマトリクス回路6及び色差マトリクス回路7を動作させる一実施形態の色補正装置の構成及び動作を説明する。
図1において、
図2と同一部分には同一符号を付し、その説明を省略する。
【0044】
図1において、減算器11は、画素ごとに、ホワイトバランス調整部5より出力されたB信号B5からG信号G5を減算して差分値(B5−G5)を生成して、R係数補正部13に供給する。減算器12は、画素ごとに、ホワイトバランス調整部5より出力されたR信号R5からG信号G5を減算して差分値(R5−G5)を生成して、G係数補正部14に供給する。
【0045】
R係数補正部13は、差分値(B5−G5)の大きさに応じて、R信号用の補正係数kRR、kRG、kRBの大きさを補正する。G係数補正部14は、差分値(R5−G5)の大きさに応じて、G信号用の補正係数kGR、kGG、kGBの大きさを補正する。
【0046】
具体的には、R係数補正部13は、差分値(B5−G5)が所定の閾値thを超えたら、補正係数kRR、kRG、kRBの大きさを補正するための補正係数の大きさを減衰係数slope_BGの割合で減衰させる。ここでは減衰の精度が10ビットである場合を例とする。(B5−G5)−thの値をAとすると、(B5−G5)<thであるとき、またはB5<G5であるとき、A=0である。slope_BG×A/1024の値をslopeとする。
【0047】
なお、減衰係数は、R係数補正部13、G係数補正部14、及び、後述するR彩度係数補正部18、B彩度係数補正部19、Mg彩度係数補正部20が生成する補正係数の傾斜部分の傾きを示す。
【0048】
R信号用の補正係数kRR、kRG、kRBの大きさを補正する補正係数をk13とすると、R係数補正部13は、k13=1024−slope、slope≧1024のときk13=0と正規化する。
図5は、補正係数k13を示す。
【0049】
R係数補正部13は、式(21)〜(23)のように補正係数kRR、kRG、kRBを補正して、補正係数kRR’、kRG’、kRB’を生成する。
kRR’=(kRR−1)×k13/1024+1 …(21)
kRG’=kRG×k13/1024 …(22)
kRB’=kRB×k13/1024 …(23)
【0050】
図5に示す補正係数k13の特性及び式(21)〜(23)より分かるように、R係数補正部13は、差分値(B5−G5)が閾値thを超えたら、差分値(B5−G5)が大きくなるほど補正係数kRG及びkRBを0に近付け、補正係数kRRを1に近付ける。R係数補正部13は、このように生成した補正係数kRR’、kRG’、kRB’をリニアマトリクス回路6に供給する。
【0051】
同様に、G係数補正部14は、差分値(R5−G5)が所定の閾値thを超えたら、補正係数kGR、kGG、kGBの大きさを補正するための補正係数を減衰係数slope_RGの割合で減衰させる。(R5−G5)−thの値をAとすると、(R5−G5)<thであるとき、またはR5<G5であるとき、A=0である。slope_RG×A/1024の値をslopeとする。
【0052】
G信号用の補正係数kGR、kGG、kGBの大きさを補正する補正係数をk14とすると、G係数補正部14は、k14=1024−slope、slope≧1024のときk14=0と正規化する。補正係数k14は
図5に示す補正係数k13と同様の特性である。但し、補正係数k14における閾値thと減衰係数slope_RGは、補正係数k13における閾値thと減衰係数slope_BGとは同じ値とは限らない。閾値thと減衰係数slope_RGは補正係数k14に対応して設定される。
【0053】
G係数補正部14は、式(24)〜(26)のように補正係数kGR、kGG、kGBを補正して、補正係数kGR’、kGG’、kGB’を生成する。
kGR’=kGR×k14/1024 …(24)
kGG’=(kGG−1)×k14/1024+1 …(25)
kGB’=kGB×k14/1024 …(26)
【0054】
補正係数k14及び式(24)〜(26)より分かるように、G係数補正部14は、差分値(R5−G5)が閾値thを超えたら、差分値(R5−G5)が大きくなるほど補正係数kGR及びkGBを0に近付け、補正係数kGGを1に近付ける。G係数補正部14は、このように生成した補正係数kGR’、kGG’、kGB’をリニアマトリクス回路6に供給する。
【0055】
リニアマトリクス回路6は、式(1)に示す行列式によって、補正係数kRR、kRG、kRBの代わりにR係数補正部13より供給された補正係数kRR’、kRG’、kRB’を用いてR信号R5をR信号R6に変換する。リニアマトリクス回路6は、式(1)に示す行列式によって、補正係数kGR、kGG、kGBの代わりにG係数補正部14より供給された補正係数kGR’、kGG’、kGB’を用いてG信号G5をG信号G6に変換する。
【0056】
リニアマトリクス回路6は、式(1)に示す行列式によって、補正係数発生部10より供給された補正係数kBR、kBG、kBBをそのまま用いてB信号B5をB信号B6に変換する。
【0057】
さらに
図1において、減算器15は、画素ごとに、リニアマトリクス回路6より出力されたR信号R6からG信号G6を減算して差分値(R6−G6)を生成して、R彩度係数補正部18に供給する。減算器16は、画素ごとに、リニアマトリクス回路6より出力されたB信号B6からG信号G6を減算して差分値(B6−G6)を生成して、B彩度係数補正部19に供給する。減算器16は、画素ごとに、R信号R6とB信号B6とのうちの大きい方の信号RBmaxからG信号G6を減算して差分値(RBmax−G6)を生成して、Mg彩度係数補正部20に供給する。
【0058】
R彩度係数補正部18は、差分値(R6−G6)の大きさに応じて、補正係数kR02の大きさを補正する。B彩度係数補正部19は、差分値(B6−G6)の大きさに応じて、補正係数kB01の大きさを補正する。Mg彩度係数補正部20は、差分値(RBmax−G6)の大きさに応じて、補正係数kM02の大きさを補正する。
【0059】
具体的には、R彩度係数補正部18は、差分値(R6−G6)が所定の閾値thを超えたら、補正係数kR02の大きさを補正するための補正係数を減衰係数slope_RGの割合で減衰させる。(R6−G6)−thの値をAとすると、(R6−G6)<thであるとき、またはR6<G6であるとき、A=0である。slope_RG×A/1024の値をslopeとする。
【0060】
R信号の彩度を補正するための補正係数kR02の大きさを補正する補正係数をk18とすると、R彩度係数補正部18は、k18=1024−slope、slope≧1024のときk18=0と正規化する。R彩度係数補正部18は、式(27)または(28)のように補正係数kR02を補正して、補正係数kR02’を生成する。
【0061】
kR02’=kR02×k18/1024 (kR02>0であるとき) …(27)
kR02’=kR02 (kR02>0以外であるとき) …(28)
【0062】
補正係数k18は
図5と同様の特性であるが、補正係数k18における閾値thと減衰係数slope_RGは、補正係数k13における閾値thと減衰係数slope_BGまたは補正係数k14における閾値thと減衰係数slope_RGとは同じ値とは限らない。閾値th及び減衰係数slope_RGは補正係数k18に対応して設定される。
【0063】
式(27)及び(28)より分かるように、R彩度係数補正部18は、補正係数kR02が正の値であれば、差分値(R6−G6)が大きくなるほど補正係数kR02を0に近付け、補正係数kR02が負の値であれば、差分値(R6−G6)の大きさにかかわらず、そのままの値とする。R彩度係数補正部18は、補正係数kR01と、以上のように補正した補正係数kR02’とを色差マトリクス回路7に供給する。
【0064】
同様に、B彩度係数補正部19は、差分値(B6−G6)が所定の閾値thを超えたら、補正係数kB01の大きさを補正するための補正係数を減衰係数slope_BGの割合で減衰させる。(B6−G6)−thの値をAとすると、(B6−G6)<thであるとき、またはB6<G6であるとき、A=0である。slope_BG×A/1024の値をslopeとする。
【0065】
B信号の彩度を補正するための補正係数kB01の大きさを補正する補正係数をk19とすると、B彩度係数補正部19は、k19=1024−slope、slope≧1024のときk19=0と正規化する。B彩度係数補正部19は、式(29)または(30)のように補正係数kB01を補正して、補正係数kB01’を生成する。
【0066】
kB01’=kB01×k19/1024 (kB01>0であるとき) …(29)
kB01’=kB01 (kB01>0以外であるとき) …(30)
【0067】
補正係数k19は
図5と同様の特性であるが、補正係数k19における閾値thと減衰係数slope_BGは、補正係数k18における閾値thと減衰係数slope_RGとは同じ値とは限らない。閾値thと減衰係数slope_BGは補正係数k19に対応して設定される。
【0068】
式(29)及び(30)より分かるように、B彩度係数補正部19は、補正係数kB01が正の値であれば、差分値(B6−G6)が大きくなるほど補正係数kB01を0に近付け、補正係数kB01が負の値であれば、差分値(B6−G6)の大きさにかかわらず、そのままの値とする。B彩度係数補正部19は、以上のように補正した補正係数kB01’と、補正係数kB02とを色差マトリクス回路7に供給する。
【0069】
Mg彩度係数補正部20は、差分値(RBmax−G6)が所定の閾値thを超えたら、補正係数kM02の大きさを補正するための補正係数を減衰係数slope_RBmaxの割合で減衰させる。(RBmax−G6)−thの値をAとすると、(RBmax−G6)<thであるとき、またはRBmax<G6であるとき、A=0である。slope_RBmax×A/1024の値をslopeとする。
【0070】
Mg信号の彩度を補正するための補正係数kM02の大きさを補正する補正係数をk20とすると、Mg彩度係数補正部20は、k20=1024−slope、slope≧1024のときk20=0と正規化する。Mg彩度係数補正部20は、式(31)または(32)のように補正係数kM02を補正して、補正係数kM02’を生成する。
【0071】
kM02’=kM2×k20/1024 (kM02>0であるとき) …(31)
kM02’=kM02 (kM02>0以外であるとき) …(32)
【0072】
補正係数k20は
図5と同様の特性であるが、補正係数k20における閾値thと減衰係数slope_RBmaxは、補正係数k18における閾値thと減衰係数slope_RG、補正係数k19における閾値thと減衰係数slope_BGとは同じ値とは限らない。閾値thと減衰係数slope_RBmaxは補正係数k20に対応して設定される。
【0073】
式(31)及び(32)より分かるように、Mg彩度係数補正部20は、補正係数kM02が正の値であれば、差分値(RBmax−G6)が大きくなるほど補正係数kM02を0に近付け、補正係数kM02が負の値であれば、差分値(RBmax−G6)の大きさにかかわらず、そのままの値とする。Mg彩度係数補正部20は、補正係数kM01と、以上のように補正した補正係数kM02’とを色差マトリクス回路7に供給する。
【0074】
色差マトリクス回路7は、式(2)〜(19)によって、補正係数kR01及びkR02’、kG01及びkG02、kB01’及びkB02、kY01及びkY02、kM01及びkM02’、kC01及びkC02を用いて、R信号R7、G信号G7、B信号B7を生成する。
【0075】
式(8)〜(10)及び(13)より分かるように、補正係数kR02、kB01、kM02が正の値であれば、補正係数kR02、kB01、kM02は輝度信号Yの主成分であるG信号G7を減少させ輝度信号Yを低減させるように作用する。一方、補正係数kR02、kB01、kM02が負の値であれば、補正係数kR02、kB01、kM02はG信号G7を増加させ輝度信号Yを増大させるように作用する。
【0076】
なお、通常、第1の光源下での撮像時にRGBの総合特性を
図4に近付けようとするために、補正係数kR02、kB01、kM02は正の値とされる。
【0077】
以上のように構成される色補正装置を備える撮像装置において、第1の光源下で通常の被写体を撮像するときには、差分値(B5−G5)及び差分値(R5−G5)は閾値thを超えない。よって、リニアマトリクス回路6は、第1の光源下で被写体を撮像したときに自然な色となるようにR信号R5、G信号G5、B信号B5をR信号R6、G信号G6、B信号B6に変換する。
【0078】
さらに、色差マトリクス回路7は、式(2)〜(19)に基づき、R信号R6、G信号G6、B信号B6に、領域Ar1〜Ar6ごとに設定された色差の成分を加算または減算する。第1の光源下で補正係数kR02、kB01、kM02が正の値であるとき、G信号G6に加算される第2の彩度補正値(特に、領域Ar1及びAr2における第2の彩度補正値)は負の値である。よって、色差マトリクス回路7は、第1の光源下でさらに自然な色となるようにG信号G7を減衰するように色を補正する。
【0079】
第2の光源下では、差分値(B5−G5)及び差分値(R5−G5)は閾値thを超える。よって、リニアマトリクス回路6は、R信号R5、G信号G5、B信号B5と、補正係数kRR’、kRG’、kRB’、kGR’、kGG’、kGB’、kBR、kBG、kBBよりなる正係数とをマトリクス演算する。これにより、リニアマトリクス回路6は、第2の光源下で被写体を撮像したときに適したR信号R6、G信号G6、B信号B6を生成する。
【0080】
第2の光源下では差分値(B5−G5)は閾値thを超えるのでB信号B6のみが大きな値となり、R信号R6及びG信号G6は小さな値となる。よって、差分値(B6−G6)及び(RBmax−G6)は大きな値となる。B彩度係数補正部19は、補正係数kB01が正であれば、補正係数kB01を小さな値または0とする補正係数kB01’を生成する。Mg彩度係数補正部20は、補正係数kM02が正であれば、補正係数kM02を小さな値または0とする補正係数kM02’を生成する。
【0081】
補正係数kB01’は、領域Ar2において式(3)を用いてR信号R7を生成するとき、及び、領域Ar3において式(4)を用いてR信号R7を生成するときに用いられる。このとき、式(3)の差分値(B6−R6)及び式(4)の差分値(B6−G6)は大きな値であるが、補正係数kB01’は小さな値または0に補正されているから、式(3)の−kB01(B6−R6)及び式(4)の−kB01(B6−G6)の項は小さな値または0となる。
【0082】
差分値(R6−G6)及び(G6−R6)の値は小さな値であるから、式(3)のkM01(R6−G6)及び式(4)の−kC01(G6−R6)の項は小さな値または0となる。
【0083】
従って、領域Ar2及びAr3におけるR信号R7はR信号R6とほぼ同じ値となり、負方向に補正されない。
【0084】
また、補正係数kB01’及びkM02’は、領域Ar2において式(9)を用いてG信号G7を生成するときに用いられる。このとき、補正係数kM02’は小さな値または0に補正されており、差分値(R6−G6)の値は小さな値であるから、−kM02(R6−G6)の項は小さな値または0となる。差分値(B6−R6)は大きな値であるが、補正係数kB01’は小さな値または0に補正されているため、−kB01(B6−R6)の項は小さな値または0となる。
【0085】
従って、領域Ar2におけるG信号G7はG信号G6とほぼ同じ値となり、負方向に補正されない。
【0086】
式(20)より分かるように、G信号G7が負の値とならなれなければ、好ましくはR信号R7及びG信号G7が負の値とならなれなければ、輝度色差変換部9は、大きな値であるB信号B7に基づくB信号B8によって輝度信号Yを生成することができる。
【0087】
以上のように構成される色補正装置によれば、第2の光源下で、G信号G7がG信号G6に加算される第2の彩度補正値によって負方向に補正されず、R信号R7もR信号R6に加算される第1の彩度補正値によって負方向に補正されない。よって、撮像装置は、輝度信号Yを生成することができ、階調がある自然な映像を得ることができる。
【0088】
また、第3の光源下では差分値(R5−G5)は閾値thを超えるのでR信号R6のみが大きな値となり、G信号G6及びB信号B6は小さな値となる。よって、差分値(R6−G6)及び(RBmax−G6)は大きな値となる。R彩度係数補正部18は、補正係数kR02が正であれば、補正係数kR02を小さな値または0とする補正係数kR02’を生成する。Mg彩度係数補正部20の動作は第2の光源下の場合と同様である。
【0089】
補正係数kR02’は、領域Ar1及びAr6において式(8)及び(13)を用いてG信号G7を生成するときに用いられる。式(8)において、差分値(R6−B6)は大きな値であるが、補正係数kR02’は小さな値または0に補正されているため、−kR02(R6−B6)の項は小さな値または0となり、−kM02(B6−G6)の項も小さな値または0となる。
【0090】
式(13)において、差分値(R6−G6)は大きな値であるが、補正係数kR02’は小さな値または0に補正されているため、−kR02(R6−G6)の項も小さな値または0となり、kY01(G6−B6)の項も小さな値または0となる。
【0091】
従って、領域Ar1及びAr6におけるG信号G7はG信号G6とほぼ同じ値となり、負方向に補正されない。同様に、輝度色差変換部9は、大きな値であるB信号B7に基づくB信号B8によって輝度信号Yを生成することができる。よって、以上のように構成される色補正装置を備える撮像装置は、第3の光源下においても階調がある自然な映像を得ることができる。
【0092】
青色LED光源と赤色LED光源との双方が存在して被写体にマゼンタの光が照射される場合も同様に、輝度色差変換部9は輝度信号Yを生成することができるので、撮像装置は、階調がある自然な映像を得ることができる。
【0093】
なお、補正係数kR02、kB01、kM02が負の値とされる場合には、第2の光源下、第3の光源下、青色LED光源及び赤色LED光源との双方が存在して被写体にマゼンタの光が照射される場合のいずれであっても、負の値である補正係数kR02、kB01、kM02の値がそのまま維持される。従って、R信号R7及びG信号G7が負方向に補正されることはなく、輝度色差変換部9は輝度信号Yを生成することができる。
【0094】
図1において、補正係数発生部10がCPUによって構成される場合、補正係数k13、k14、k18〜k20の各閾値th及び減衰係数は、CPUによって個別に設定することができる。補正係数発生部10は、光源からの光の色温度に応じて閾値th及び減衰係数を設定してもよい。
【0095】
本発明は、以上説明した実施形態に限定されることはなく、本発明の要旨を逸脱しない範囲において種々変更可能である。補正係数k13、k14、k18〜k20の特性は、
図5に示すような閾値thを超えたら、係数値が線形的に漸減する特性に限定されない。係数値が曲線状に漸減する特性であってもよい。
【0096】
図1に示す撮像装置または色補正装置を構成する際、ハードウェアとソフトウェア(コンピュータプログラム)との使い分けは任意である。
図1において、レンズ1、プリズム2、撮像素子3r、3g、3b以外の部分はハードウェアによる回路で構成されていてもよいし、ソフトウェアで構成されていてもよいし、両者が混在して構成されていてもよい。
【0097】
図1に示す撮像装置が第3の光源下で使用されることがなく、第1及び第2の光源下で使用されることのみを考慮すれば十分であるときには、G係数補正部14及びR彩度係数補正部18を省略してもよい。また、
図1に示す撮像装置が第2の光源下で使用されることがなく、第1及び第3の光源下で使用されることのみを考慮すれば十分であるときには、R係数補正部13及びB彩度係数補正部19を省略してもよい。
【0098】
以上説明した実施形態は、リニアマトリクス回路6及び色差マトリクス回路7を備える構成であるが、色差マトリクス回路7を省略した構成とすることができる。この場合、減算器15〜17、R彩度係数補正部18、B彩度係数補正部19、Mg彩度係数補正部20も省略される。上記のように色差マトリクス回路7はリニアマトリクス回路6より出力されたR信号R6、G信号G6、B信号B6の色の彩度を補正するものであるから、リニアマトリクス回路6のみを備えてR信号R5、G信号G5、B信号B5を補正するだけでも十分に効果的である。
【0099】
以上説明した実施形態の色補正装置の構成及び動作をまとめると次のとおりである。色補正装置はリニアマトリクス回路6を備える。R信号R5、G信号G5、B信号B5をそれぞれ第1のR信号、第1のG信号、第1のB信号とする。R信号R6、G信号G6、B信号B6を第2のR信号、第2のG信号、第2のB信号とする。
【0100】
リニアマトリクス回路6で用いられる3行×3列の補正係数において、補正係数kRR、kRG、kRBをそれぞれ第1〜第3の補正係数、補正係数kGR、kGG、kGBをそれぞれ第4〜第6の補正係数、補正係数kBR、kBG、kBBをそれぞれ第7〜第9の補正係数とする。リニアマトリクス回路6は、第1のR信号、第1のG信号、及び第1のB信号に3行×3列の補正係数をマトリクス演算して、第2のR信号、第2のG信号、第2のB信号を生成する。
【0101】
R係数補正部13は、第1のB信号から第1のG信号を減算した第1の差分値が第1の閾値を超えたら、第1の差分値が大きくなるほど、第1のR信号に乗算される第1の補正係数を1に近付け、第1のG信号及び第1のB信号にそれぞれ乗算される第2及び第3の補正係数を0に近付けるように補正する。撮像装置が第2の光源下で被写体を撮像するとき、第1の差分値は第1の閾値を超える。
【0102】
以上の構成及び動作によって、撮像装置が第2の光源下で被写体を撮像する場合であっても、階調がある自然な映像を得ることができる。
【0103】
色補正装置は、第1のR信号から第1のG信号を減算した第2の差分値が第2の閾値を超えたら、第1のG信号に乗算される第5の補正係数を1に近付け、第1のR信号及び第1のB信号にそれぞれ乗算される第4及び第6の補正係数を0に近付けるように補正するG係数補正部14をさらに備えることが好ましい。撮像装置が第3の光源下で被写体を撮像するとき、第2の差分値は第2の閾値を超える。
【0104】
色補正装置は、第2のR信号、第2のG信号、第2のB信号の色の彩度を補正する色差マトリクス回路7をさらに備えることが好ましい。
【0105】
式(2)〜(7)において用いられる複数の補正係数を第10の補正係数、式(8)〜(13)において用いられる複数の補正係数を第11の補正係数、式(14)〜(19)において用いられる複数の補正係数を第12の補正係数とする。R信号R7、G信号G7、B信号B7を第3のR信号、第3のG信号、第3のB信号とする。
【0106】
色差マトリクス回路7は、第2のR信号に、第2のR信号、第2のG信号、第2のB信号のうちの任意の2つの組み合わせの差分値に第10の補正係数を乗算することによって得られた第1の彩度補正値を加算して、第3のR信号を生成する。
【0107】
色差マトリクス回路7は、第2のG信号に、上記の差分値に第11の補正係数を乗算することによって得られた第2の彩度補正値を加算して、第3のG信号を生成する。色差マトリクス回路7は、第2のB信号に、上記の差分値に第12の補正係数を乗算することによって得られた第3の彩度補正値を加算して、第3のB信号を生成する。
【0108】
ここで、撮像装置が第1の光源下で被写体を撮像するとき、第2の彩度補正値は、第3のG信号を減衰させるために負の値とされているとする。
【0109】
色補正装置は彩度係数補正部をさらに備える。彩度係数補正部は、R彩度係数補正部18、B彩度係数補正部19、Mg彩度係数補正部20によって構成されている。但し、彩度係数補正部が複数の彩度係数補正部によって構成されることに限定されない。
【0110】
撮像装置が第2の光源下で被写体を撮像するとき、彩度係数補正部は、第3のG信号が第2の彩度補正値によって負方向に補正されないように、第11の補正係数における一部の補正係数を0に近付けるよう補正する。
【0111】
色差マトリクス回路7及び彩度係数補正部を備えることによって、撮像装置が第2の光源下で被写体を撮像する場合であっても、階調があって、さらに自然な映像を得ることができる。
【0112】
彩度係数補正部は、撮像装置が第2の光源下で被写体を撮像するとき、第3のR信号が第1の彩度補正値によって負方向に補正されないように、第10の補正係数における一部の補正係数を0に近付けるよう補正することが好ましい。また、彩度係数補正部は、撮像装置が第3の光源下で被写体を撮像するとき、第11の補正係数における他の一部の補正係数を0に近付けるよう補正することが好ましい。
【0113】
色差マトリクス回路7は、色空間を複数の領域に分割して、第2のR信号、第2のG信号、第2のB信号を領域ごとに補正して、領域ごとに第3のR信号、第3のG信号、第3のB信号を生成することが好ましい。色空間の領域の分割数は6に限定されないが、
図3に示すように、G−B=0、B−R=0、R−G=0を示す直線で6分割するのがよい。
【0114】
色空間が複数の領域に分割されている場合、第10〜第12の補正係数は、領域ごとに上記の差分値に乗算される補正係数の組み合わせとして設定されていればよい。彩度係数補正部は、撮像装置が第2の光源下で被写体を撮像するとき、複数の領域のうちの第1の特定の領域において設定された補正係数の少なくとも一部を0に近付けるよう補正すればよい。一例として、領域Ar1〜Ar3が第1の特定の領域である。
【0115】
彩度係数補正部は、撮像装置が第3の光源下で被写体を撮像するとき、複数の領域のうちの第2の特定の領域において設定された補正係数の少なくとも一部を0に近付けるよう補正すればよい。一例として、領域Ar1及びAr6が第2の特定の領域である。第1の特定の領域と第2の特定の領域とは一部が重複していてもよい。
【0116】
以上の構成及び動作により、実施形態の色補正装置は、光源の種類に応じて自然な色となるように撮像信号の色を自動的に補正することができる。