以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
実施の形態1.
図1は本発明に係る画像形成装置の内部構成を説明するブロック図である。本発明に係る画像形成装置は、制御部1、画像入力部2、画像処理部3、画像出力部7、記憶部8、及び操作部9を備えている。制御部1は、前記ハードウェア各部を制御するCPUと、制御の際に必要なデータ等を一時的に保持するRAMとにより構成されている。記憶部8は、例えば、不揮発性の半導体メモリであり、ハードウェア各部を制御するための制御プログラム、色変換処理に必要な各種テーブル等を記憶している。制御部1は電源投入時等に記憶部8から制御プログラム、各種テーブルをロードし、ロードした制御プログラムを実行することにより、全体として本発明に係る画像形成装置として動作させる。また、操作部9は、利用者からの操作指示を受付けるための各種ハードウェアキーを備えている。
画像入力部2は、原稿の画像を光学的に読取る手段であり、読取用の原稿に光を照射する光源、CCD(Charge Coupled Device)のようなイメージセンサ等を備えている。画像入力部2では、所定の読取り位置にセットされた原稿からの反射光像を当該イメージセンサに結像させ、RGB(R : Red, G : Green, B : Blue)のアナログ電気信号を出力する。画像入力部2が出力したアナログ電気信号は画像処理部3に入力される。
画像処理部3は、画像入力部2から出力されるアナログ電気信号をデジタル信号に変換した後、画像の種類に応じた各種の処理を施し、出力用の画像信号を生成する。生成した画像信号は画像出力部7に出力される。本実施の形態では、出力用の画像信号としてCMYK信号(C : Cyan, M : Magenta, Y : Yellow, K : Black)を生成するようにしている。なお、画像処理部3の内部構成、動作等については後述することとする。
画像出力部7は、画像処理部3が出力する画像信号に基づいて用紙、OHPフィルム等のシート上に画像形成を行う手段である。そのため、画像出力部7は、感光体ドラム、該感光体ドラムを所定の電位に帯電させる帯電器、外部から受付けた画像データに応じてレーザ光を発して感光体ドラム上に静電潜像を生成させるレーザ書込装置、感光体ドラム表面に形成された静電潜像にトナーを供給して顕像化する現像器、感光体ドラム表面に形成されたトナー像を用紙上に転写する転写器等(不図示)を備えており、電子写真方式にて利用者が所望する画像を用紙上に形成する。なお、レーザ書込装置を用いた電子写真方式により画像形成を行う他、インクジェット方式、熱転写方式、昇華方式等により画像形成を行う構成であってもよい。
なお、本実施の形態では、画像入力部2を画像の読取手段として構成し、画像出力部7を画像形成手段として構成したが、外部から画像データを受信する手段、外部に画像データを送信する手段として構成するようにしてもよい。
図2は画像処理部3の構成を説明するブロック図である。画像処理部3は、AD変換部31、シェーディング補正部32、入力階調補正部33、領域分離処理部34、色補正部35A、黒生成・下色除去部36、空間フィルタ処理部37、出力階調補正部38、階調再現処理部39を備えている。
AD変換部31は、画像入力部2から入力されたアナログRGB信号をデジタルRGB信号に変換する。シェーディング補正部32は、AD変換部31から出力されたデジタル形式のRGB信号に対して、画像入力部2の照明系、結像系、撮像系で生じる各種の歪みを取り除く処理を施す。なお、本実施の形態では、AD変換、シェーディング補正を画像処理部3の内部で行う構成としたが、AD変換及びシェーディング補正を施して得られたデジタルRGB信号を外部から受付ける構成であってもよい。
入力階調補正部33は、RGBの反射率信号を濃度信号に変換すると共に、下地濃度の補正やコントラストなどの画質調整処理を実行する。入力階調補正部33では、前述した処理に加えてカラーバランスを整える処理を行っても良い。
領域分離処理部34は、RGB信号に基づいて入力画像中の各画素を文字領域、網点領域、写真領域の何れかに分離するものである。領域分離処理部34は、分離結果に基づき、各画素がどの領域に属しているかを示す領域識別信号を色補正部35A、黒生成・下色除去部36、空間フィルタ処理部37、出力階調補正部38、及び階調再現処理部39に出力すると共に、入力階調補正部33が出力したRGB信号をそのまま後段の色補正部35Aに出力する。
以下、領域分離処理部34が実行する処理について説明する。入力画像を文字領域、網点領域、写真領域に分離する手法としては、例えば、特開2002−232708号公報に記載されている方法を用いることができる。この方法は、注目画素を含むn×mのブロック(例えば、15×15)における最小濃度値と最大濃度値との差分である最大濃度差と、隣接する画素の濃度差の絶対値の総和である総和濃度繁雑度とを算出し、予め定められる複数の閾値と比較することにより下地領域・印画紙(写真)領域と文字エッジ領域・網点領域に分離するものである。
領域分離を行うにあたっては、下記の特徴量を用いる。
(1)下地領域の濃度分布は、通常、濃度変化が少ないので最大濃度差及び総和濃度繁雑度ともに非常に小さくなる。
(2)印画紙写真領域の濃度分布は、滑らかな濃度変化をしており、最大濃度差及び総和濃度繁雑度はともに小さく、かつ、下地領域よりは多少大きくなる。
(3)網点領域の濃度分布は、最大濃度差は網点によりさまざまであるが、総和濃度繁雑度が網点の数だけ濃度変化が存在するので、最大濃度差に対する総和濃度繁雑度の割合が大きくなる。したがって、最大濃度差と文字・網点判定閾値(上記複数の閾値の1つ)との積よりも総和濃度繁雑度が大きい場合には、網点画素であると判別することが可能である。
(4)文字領域の濃度分布は、最大濃度差が大きく、それに伴い総和濃度繁雑度も大きくなるが、網点領域よりも濃度変化が少ないため、網点領域よりも総和濃度繁雑度は小さくなる。したがって、最大濃度差と文字・網点判定閾値との積よりも総和濃度繁雑度が小さい場合には、文字エッジ画素であると判別することが可能である。
前述の特徴量を用いて領域分離を下記の通り実行することができる。
まず、算出された最大濃度差と最大濃度差閾値との比較、及び算出された総和濃度繁雑度と総和濃度繁雑度閾値との比較を行う。そして、最大濃度差が最大濃度差閾値よりも小さく、かつ、総和濃度繁雑度が総和濃度繁雑度閾値よりも小さいと判断されたときは、注目画素は下地・印画紙領域であると判定し、そうでない場合は、文字・網点領域であると判定する。
次に、上記下地・印画紙領域であると判断された場合、算出された最大濃度差と下地・印画紙判定閾値との比較を行い、最大濃度差の方が小さければ下地領域であると判定し、最大濃度差の方が大きければ印画紙領域であると判定する。
そして、上記文字・網点領域であると判断された場合、算出された総和濃度繁雑度と最大濃度差に文字・網点判定閾値を掛けた値との比較を行い、総和濃度繁雑度の方が小さければ文字エッジ領域であると判定し、総和濃度繁雑度の方が大きければ、網点領域であると判定する。
以下、説明を図2に戻して画像処理部3の残りのハードウェア構成について説明する。
色補正部35Aは、色再現の忠実化実現のために不要吸収成分を含むCMY色材の分光特性に基づいた色濁りを取り除く処理を行うものである。本発明は、特にこの色補正部35Aに関わるものであり、1次元ルックアップテーブル(以下、1次元LUTという)を用いた非線形性の補正を、領域分離処理部34から出力される領域識別信号に応じて行い、続いて3次元ルックアップテーブル(以下、3次元LUTという)に基づいて色変換を行う。なお、色補正部35Aの詳細については後述することとする。
黒生成・下色除去部36は、色補正後のCMYの3色信号から黒(K)信号を生成する黒生成処理、元のCMY信号から黒生成で得たK信号を差し引いて新たなCMY信号を生成する処理を行うものであり、CMYの3色信号をCMYKの4色信号に変換する。黒生成・下色除去処理の一例として、スケルトンブラックによる方法が知られている。この方法では、スケルトンカーブの入力特性をy=f(x)、入力されるデータをC,M,Y、出力されるデータをC’,M’,Y’,K’、下色除去率をα(0<α<1)とすると、黒生成・下色除去処理は、K’=f{min(C,M,Y)}、C’=C−αK’、M’=M−αK’、Y’=Y−αK’のように表すことができる。
空間フィルタ処理部37は、黒生成・下色除去部36より入力されるCMYK信号の画像データに対し、領域識別信号を基にデジタルフィルタによる空間フィルタ処理を行い、空間周波数特性を補正することによって出力画像のぼやけ、粒状性劣化等を防ぐ処理を行うものである。例えば、領域分離処理部34により文字として分離された領域は、特に黒文字又は色文字の再現性を高めるために鮮鋭強調処理を行い、高周波数成分を強調する。領域分離処理部34により網点領域として分離された領域に関しては、入力網点成分を除去するためのローパスフィルタ処理を施す。
出力階調補正部38では、濃度信号などの信号を出力先の特性に応じた網点面積率に変換する出力階調補正処理を行う。
階調再現処理部39では、最終的に画像を画素に分離してそれぞれの階調を再現できるように処理する階調再現処理を行う。例えば、領域分離処理部34にて写真に分離された領域に関しては、階調再現性を重視したスクリーンでの二値化又は多値化処理を行い、領域分離処理部34にて文字に分離された領域に関しては、高周波数の再現性に適した高解像度のスクリーンでの二値化又は多値化処理を行う。
次に、色補正部35Aの動作について説明する。図3は実施の形態1に係る色補正部35Aの動作を説明する模式的説明図であり、図4は色補正部35Aで用いる1次元LUTの概念図、図5は同じく3次元LUTの概念図である。前述したように、色補正部35Aには領域分離処理部34から出力されるRGB信号及び領域識別信号が入力される。色補正部35Aでは、領域分離処理部34から出力される領域識別信号に基づいて補正対象の画素が網点領域、文字領域、写真領域の何れに属するかを識別することができ、この識別結果に基づいて利用する1次元LUTを切替え、非線形性の補正を各色成分毎(R,G,Bの各色成分毎)に行う。この1次元LUTを用いた補正では、識別した領域に応じてRGB色空間の異なる領域にマッピングされている3次元LUT(色補正テーブル)にアクセスできるように変換する。そして、3次元LUTを用いた色補正では、そのRGB色空間に対して規定した1つの3次元LUTを用いて色補正を行う。
1次元LUTは、入力画像の各画素が属する領域に応じて出力信号の範囲が異なるように設定されている。例えば、入力画像の各画素が印画紙写真領域(第1領域とする)に属する場合、図4(a)に示した1次元LUTを用いて画素値の変換を行うことにより非線形性の補正を行い、入力画像の各画素が文字領域又は網点領域(第2領域とする)に属する場合、図4(b)に示した1次元LUTを用いて画素値の変換を行うことにより非線形性の補正を行う。なお、図4に示したグラフの横軸は入力信号の画素値、縦軸は出力信号の画素値を示しており、各グラフに描かれた曲線は入力信号と出力信号との間の変換曲線を示している。これらの変換曲線はルックアップテーブル(1次元LUT)として規定されている。これらの変換曲線に従って画素値の変換を行った場合、第1領域に属する画素は、画素値が256〜511の範囲内に属するように変換され、第2領域に属する画素は、画素値が0〜255の範囲内に属するように変換される。
このように画素の属する領域に応じて異なる範囲の値を出力する1次元LUTを用いることにより、色空間上では互いに異なる領域内の点にマッピングされることとなる。すなわち、第1領域用の1次元LUTを用いた場合、図5に示したように、256≦R≦511、256≦G≦511、256≦B≦511(ここで、R,G,Bは1次元LUTによって変換した各色成分の画素値を示す)を満たす領域内の点にマッピングされ、第2領域用の1次元LUTを用いた場合、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、第1領域用3次元LUT及び第2領域用3次元LUTを1つのテーブルで記述した3次元LUT)を用意しておくことにより、領域識別信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。
次に、3次元LUTを用いた色補正について説明する。図6は入力色空間を示す模式図である。本実施の形態ではRGB色空間を入力色空間としており、原点PK [0,0,0]をブラック、対角の点PW [1,1,1]をホワイトとし、PK PR をR成分、PK PG をG成分、PK PBをB成分として色空間を形成している。このRGB色空間において、任意の色は、0〜1の間のパラメータr,g,bを用いてrPR +gPG +bPB のように表すことができる。入力色空間をRGB色空間とすることにより、PK[0,0,0]とPW [1,1,1]とを結ぶ軸が対角線上となり、このグレー軸を保持することでK成分の連続性を保つことができ、画質が落ちないという利点を有する。
本実施の形態では、入力色空間上の点(画素)に対し前述した1次元LUTにより画素値の変換を行い、図5に示す3次元LUTを用いて色変換処理を行う。この色変換処理で用いる3次元LUTとしては、本出願人が特願2004−160043にて提案している色補正テーブルを利用することができる。この色補正テーブルでは、色補正値が格納されている格子点数が従来のように17や33に固定されるものではなく、例えば、ある色成分の格子点数を他の色成分を基準に増加又は減少させるなど、色成分毎に決められており、格子点数の増加又は減少に応じて入力画像データの色成分の変換を行う。なお、格子点の間隔は全色成分で一定である。そのため、領域分離結果である文字領域、網点領域、写真領域に応じて、又は後述する原稿種別判定結果に応じて、3次元LUTを柔軟に設定することができるので、色変換精度の低下(画質の低下)を抑制しつつメモリ容量を効率的に使用することができる。
3次元LUTを用いた色補正では色空間の分割方法に応じて数種類に分類されるが、ここでは四面体を用いた色補正について説明する。四面体を用いた色補正では、入力色空間を3色の軸に沿って単純に8つの格子点からなる複数の単位格子に分割した後、更にその単位格子を四面体により分割する。図7は単位格子を四面体により分割した様子を示す模式図である。図7(a)〜図7(f)の各図において破線は単位格子を表し、実線は分割した四面体を表している。例えば、図7(a)に示した四面体T1は、入力信号のRGB値がR≧G≧Bの条件を満たす四面体である。他の四面体T2〜T6についても同様である。
図8は出力信号の算出手法を説明する説明図であり、図9は出力信号を算出する際に用いるパラメータをまとめた図表である。出力信号を算出する場合、入力信号の色成分の大小によって何れの四面体(T1〜T6)に属するかを判定した後、4つの頂点に対応させて予め3次元LUTに格納してある色補正値と、入力信号によって計算された重み付けとの積和を算出し、出力信号(補間値)としている。例えば、単位格子の各頂点PK ,PR ,PG ,PB,PC ,PM ,PY ,PW の座標を図8に示したように規定した場合、この単位格子に属する任意の点P(x,y,z)の補間結果は、
bK×PK +bP×PP +bS×PS +bW×PW
のように表すことができる。ここで、PP は、点Pが属する四面体に応じて選択される一次色(RGB)の座標を、PS は、点Pが属する四面体に応じて選択される二次色(CMY)の座標を表している(図9参照)。また、bK,bW,bP,bSは、それぞれ、点PK,PW ,PP ,PS の重み付けを示し、点Pが属する四面体に応じて図9に示した値をとる。ここで、図9の図表に示したfR,fG,fBは、ベクトルPKPの各軸方向の長さを表しており、fR=(x−x0 )/(x1 −x0 )、fG=(y−y0)/(y1 −y0 )、fB=(z−z0 )/(z1 −z0)となる。
なお、本実施の形態では、3次元LUTを用いた色補正として四面体補間を用いる構成としたが、四面体補間では、3次元空間を形成する最小の立体であり、一度にアクセスする個数が4つであるため、計算コストが少なくてすむというメリットがある反面、3次元空間を細かく分割することとなるため境界での不連続性が生じる虞が生じる。そのため、採用する補間方法は、四面体補間に限定せずに、計算コスト、精度、デバイス特性等を考慮して柔軟に定めることが望ましい。
本実施の形態では、このような色補正をハードウェアの処理により実現する。図10は実施の形態1に係る色補正部35Aの内部構成を説明するブロック図である。色補正部35Aは、1次元LUTを用いて非線形性の補正を行う1次元LUT計算部351と3次元LUTを用いた色補正を行う3次元LUT計算部352とにより構成される。なお、1次元LUT計算部351で用いる1次元LUT、及び3次元LUT計算部352で用いる3次元LUTは予め記憶部8に格納されており、画像形成装置の電源が投入されたときに制御部1内のRAMにロードするように構成されている。
1次元LUT計算部351には、領域分離処理部34から出力されるRGB信号、及び領域識別信号が入力される。1次元LUT計算部351のアドレス参照部351aは、入力されたRGB信号及び領域識別信号に基づき、制御部1内にロードされた第1領域用又は第2領域用の1次元LUTにアクセスし、非線形性を補正したRGB信号を取得する。すなわち、1次元LUT計算部351は、本発明の色変換装置における変換手段として機能する。1次元LUT計算部351によって非線形性が補正されたRGB信号は、3次元LUT計算部352の重み付け計算部352a及びアドレス計算部352bに出力される。
重み付け計算部352aは、入力された信号から所望の重み付けを算出し、補間演算部352cに値を渡す。一方、アドレス計算部352bは、入力された信号からアクセスすべきアドレスを算出し、制御部1内のRAMにアクセスすることによって3次元LUTに保持されている色補正値を取得する。アドレス計算部352bが取得した色補正値は補間演算部352cに出力される。補間演算部352cは、重み付け計算部352aから出力された重み付けとアドレス計算部352bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。すなわち、3次元LUT計算部352は本発明の色変換装置における演算手段として機能する。
なお、本実施の形態の3次元LUT計算部352では、補間演算により出力信号を求める構成であったが、補間演算を行わずに、全ての入力画像データの組み合わせに対する出力画像データを予め計算したテーブルを用いる直接変換法によって色補正値を取得する構成であってもよい。この場合、3次元LUT計算部352には重み付け計算部352a及び補間演算部352cが不要であり、アドレス計算部352bのみにより構成されることとなる。
実施の形態2.
実施の形態1に示した色補正部35Aでは、領域識別信号に応じて1次元LUTを切替える構成としたが、1次元LUTを切替える代わりに入力信号(RGB信号)に対して異なるオフセット量を加算し、1つの1次元LUTを用いて非線形性の補正を行う構成であってもよい。本実施の形態で用いる色補正部35Bの動作については図11で説明し、内部構成については図13で説明する。色補正部35B以外の構成については実施の形態1と同様であるため、その説明を省略することとする。
図11は実施の形態2に係る色補正部35Bの動作を説明する模式的説明図であり、図12は色補正部35Bで用いる1次元LUTの概念図である。色補正部35Bには領域分離処理部34から出力されるRGB信号及び領域識別信号が入力される。色補正部35Bでは、領域識別信号に基づいて補正対象の画素が網点領域、文字領域、写真領域の何れに属するかを識別することができ、この識別結果に基づいてRGB信号に加算すべきオフセット量を設定する。そして、設定されたオフセット量をRGB信号に加算した後、非線形性の補正を行うために1次元LUTを用いた画素値の変換を各色成分毎(R,G,Bの各色成分毎)に行う。この1次元LUTを用いた画素値の変換では、加算したオフセット量に応じてRGB色空間の異なる領域にマッピングされている3次元LUT(色補正テーブル)にアクセスできるように変換する。また、3次元LUTを用いた色補正では、そのRGB色空間に対して規定された1つの3次元LUTを用いて色補正を行う。
本実施の形態では、領域に応じてオフセット量を切替えることにより入出力の範囲を異ならせている。例えば、入力画像の各画素が印画紙写真領域(第1領域とする)に属する場合、オフセット量を256に設定することによって入力信号の画素値の範囲を256〜511に変換することができ、図12に示した1次元LUTを用いることで出力信号の画素値の範囲を256〜511に変換することができる。また、入力画像の各画素が文字領域又は網点領域(第1領域とする)に属する場合、オフセット量を0に設定することよって入力信号の画素値の範囲を0〜255にすることができ、同じく図12に示した1次元LUTを用いることで出力信号の画素値の範囲を0〜255にすることができる。
このように画素の属する領域に応じて異なる範囲の値を出力する1次元LUTを用いることにより、色空間上では互いに異なる領域内の点にマッピングされることとなる。すなわち、第1領域に属する画素に関しては、256≦R≦511、256≦G≦511、256≦B≦511(ここで、R,G,Bは1次元LUTによって変換した画素の各色成分の画素値を示す)を満たす領域内の点にマッピングされ、第2領域に属する画素に関しては、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、第1領域用3次元LUT及び第2領域用3次元LUTを1つのテーブルで記述した3次元LUT)を用意しておくことにより、領域識別信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。
図13は実施の形態2に係る色補正部35Bの内部構成を説明するブロック図である。色補正部35Bは、領域識別信号に応じたオフセット量を設定するオフセット計算部353、1次元LUTを用いて非線形性の補正を行う1次元LUT計算部354、及び3次元LUTを用いた色補正を行う3次元LUT計算部355により構成される。なお、1次元LUT計算部354で用いる1次元LUT、及び3次元LUT計算部355で用いる3次元LUTは予め記憶部8に格納されており、画像形成装置の電源が投入されたときに制御部1内のRAMにロードするように構成されている。
オフセット計算部353には、領域分離処理部34から出力されるRGB信号、及び領域識別信号が入力される。オフセット計算部353のオフセット量切替部353bは、入力された領域識別信号に応じて加算すべきオフセット量を切替える。例えば、第1領域に属する画素の場合にはオフセット量を256に設定し、第2領域に属する画素の場合にはオフセット量を0に設定する。オフセット量切替部353bにて設定されたオフセット量はオフセット量加算部353aに出力され、入力されたRGB信号に加算される。
オフセット量が加算されたRGB信号は、1次元LUT計算部354に出力される。1次元LUT計算部354のアドレス参照部354aは、RGB信号にオフセット量が加算された値に基づき、制御部1内にロードされた1次元LUTにアクセスし、非線形性を補正したRGB信号を取得する。1次元LUT計算部354によって非線形性が補正されたRGB信号は、3次元LUT計算部355の重み付け計算部355a及びアドレス計算部355bに出力される。
重み付け計算部355aは、入力された信号から所望の重み付けを算出し、補間演算部355cに値を渡す。一方、アドレス計算部355bは、入力された信号からアクセスすべきアドレスを算出し、制御部1内のRAMにアクセスすることによって3次元LUTに保持されている色補正値を取得する。アドレス計算部355bが取得した色補正値は補間演算部355cに出力される。補間演算部355cは、重み付け計算部355aから出力された重み付けとアドレス計算部355bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。
以上のような構成で色補正を行う場合、オフセット量の切替のみを行えばよく、領域識別信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。
実施の形態3.
実施の形態2に示した色補正部35Bでは、領域識別信号に応じて異なるオフセット量を入力信号(RGB信号)に加算し、1次元LUTを用いた非線形性の補正と、3次元LUTを用いた色補正とを順に行う構成としたが、1次元LUTを用いて非線形性の補正を行った後、領域識別信号に応じたオフセット量を加算し、3次元LUTを用いた色補正を行う構成としてもよい。本実施の形態で用いる色補正部35Cの動作については図14で説明し、内部構成については図16で説明する。色補正部35C以外の構成については実施の形態1と同様であるため、その説明を省略することとする。
図14は実施の形態3に係る色補正部35Cの動作を説明する模式的説明図であり、図15は色補正部35Cで用いる3次元LUTの概念図である。色補正部35Cには領域分離処理部34から出力されるRGB信号及び領域識別信号が入力される。色補正部35Cでは、まず、予め用意してある1次元LUTを用いて入力信号(RGB信号)に対する非線形性の補正を行う。また、色補正部35Cでは、領域識別信号に基づいて補正対象の画素が網点領域、文字領域、写真領域の何れに属するかを識別することができるため、この識別結果に基づいて、非線形性が補正されたRGB信号に加算すべきオフセット量を各色成分毎に設定する。そして、設定されたオフセット量をRGB信号に加算した後、3次元LUTを用いて色補正を行う。本実施の形態では、各画素の属する領域に応じてRGB色空間の異なる領域にマッピングされるようにオフセット量を設定する。
本実施の形態では、1次元LUTを用いて非線形性の補正を行った後、領域に応じたオフセット量を加算している。例えば、入力画像の各画素が印画紙写真領域(第1領域とする)に属する場合、R信号に対するオフセット量を256、G信号及びB信号に対するオフセット量を0に設定し、入力画像の各画素が文字領域又は網点領域(第2領域とする)に属する場合、RGBの各信号に対するオフセット量を0に設定する。その結果、図15に示すように、第1領域に属する画素に関しては、256≦R≦511、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなり、第2領域に属する画素に関しては、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、第1領域用3次元LUT及び第2領域用3次元LUTを1つのテーブルで記述した3次元LUT)を用意しておくことにより、領域識別信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。また、前述した実施の形態とは異なり、色補正値を対角線上にしか保持できなかったため、無駄になっていたテーブルメモリを効率的に配置できるようになり、テーブルメモリの効率的な保持が可能となる。
図16は実施の形態3に係る色補正部35Cの内部構成を説明するブロック図である。色補正部35Cは、1次元LUTを用いて非線形性の補正を行う1次元LUT計算部356、領域識別信号に応じたオフセット量を設定するオフセット計算部357、及び3次元LUTを用いた色補正を行う3次元LUT計算部358により構成される。なお、1次元LUT計算部356で用いる1次元LUT、及び3次元LUT計算部358で用いる3次元LUTは予め記憶部8に格納されており、画像形成装置の電源が投入されたときに制御部1内のRAMにロードするように構成されている。
1次元LUT計算部356には、領域分離処理部34から出力されるRGB信号が入力される。1次元LUT計算部356のアドレス参照部356aは、入力されたRGB信号に基づき、制御部1内にロードされた1次元LUTにアクセスし、非線形性を補正したRGB信号を取得する。1次元LUT計算部356によって非線形性が補正されたRGB信号はオフセット計算部357へ出力される。
オフセット計算部357には、1次元LUT計算部356から出力されるRGB信号、領域分離処理部34から出力される領域識別信号が入力される。オフセット計算部357のオフセット量切替部357bは、入力された領域識別信号に応じて加算すべきオフセット量を切替える。例えば、第1領域に属する画素の場合にはR信号に対するオフセット量を256、G信号及びB信号に対するオフセット量を0に設定する。また、第2領域に属する画素の場合にはRGBの各信号に対してオフセット量を0に設定する。オフセット量切替部357bにて設定されたオフセット量はオフセット量加算部357aに出力され、入力されたRGB信号に加算される。オフセット量が加算されたRGB信号は、3次元LUT計算部358の重み付け計算部358a及びアドレス計算部358bに出力される。
重み付け計算部358aは、入力された信号から所望の重み付けを算出し、補間演算部358cに値を渡す。一方、アドレス計算部358bは、入力された信号からアクセスすべきアドレスを算出し、制御部1内にロードされた3次元LUTにアクセスし色補正値を取得する。アドレス計算部358bが取得した色補正値は補間演算部358cに出力される。補間演算部358cは、重み付け計算部358aから出力された重み付けとアドレス計算部358bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。
以上のような構成で色補正を行う場合、オフセット量の切替のみを行えばよく、領域識別信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTの効率的な保持が可能となる。
図17は本実施の形態の変形例を説明する模式的説明図である。前述した実施の形態では、3次元LUT計算部358の前段でオフセット量を加算する構成としたが、1次元LUT計算部356の前段で第1のオフセット量を加算し、3次元LUT計算部358の前段で第2のオフセット量を加算する構成としてもよい。
例えば、第1のオフセット量の加算では、実施の形態2と同様に、第1領域に属する画素の場合にはオフセット量を256に設定し、第2領域に属する画素の場合にはオフセット量を0に設定する。一方、第2のオフセット量の加算では、第1領域に属する画素の場合、R信号に対するオフセット量を0、G信号及びB信号に対するオフセット量を−256に設定し、第2領域に属する画素の場合、RGBの各信号に対するオフセット量を0に設定する。その結果、図15に示したものと同様に、第1領域に属する画素に関しては、256≦R≦511、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなり、第2領域に属する画素に関しては、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、第1領域用3次元LUT及び第2領域用3次元LUTを1つのテーブルで記述した3次元LUT)を用意しておくことにより、領域識別信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。また、テーブルメモリを効率的に配置できるようになり、テーブルメモリの効率的な保持が可能となる。
実施の形態4.
前述した実施の形態では、領域識別信号に応じて適切な色補正処理を行う形態について説明したが、領域識別信号ではなく、入力画像の元となる原稿の種別に応じて適切な色補正処理を行う構成であってもよい。
図18は実施の形態4に係る画像形成装置が備える画像処理部4の構成を示すブロック図である。なお、画像処理部4以外の構成については実施の形態1と全く同様であるため、その説明を省略することとする。画像処理部4は、AD変換部41、シェーディング補正部42、原稿種別判定部43、入力階調補正部44、領域分離処理部45、色補正部46、黒生成・下色除去部47、空間フィルタ処理部48、出力階調補正部49A、階調再現処理部49Bを備えている。
本実施の形態の画像処理部4では、原稿種別判定部43の前段の処理として、AD変換部41にてアナログRGB信号をデジタルのRGB信号に変換し、シェーディング補正部42にて画像入力部2(図1参照)の照明系、結像系、撮像系で生じる各種の歪みを取り除く処理、及びカラーバランスを調整する処理を行う。
原稿種別判定部43では、シェーディング補正部42にて各種の歪みが取り除かれ、カラーバランスの調整がなされたRGB信号(RGBの反射率信号)を濃度信号(例えば、CMY信号)に変換すると共に、入力された原稿画像が、文字原稿、印刷写真原稿、印画紙写真原稿であるか、又はそれらを組み合わせた文字/印刷写真原稿であるかなど原稿種別の判別を行うものである。
原稿種別の判定方法としては、例えば、特開2002−218232号公報に記載された手法を用いることができる。この手法は、プレスキャンを行い、濃度ヒストグラムより、予め定められる閾値より小さい低度数濃度区分の数、第1の最大度数の濃度区分、第1の最大度数の濃度区分に隣接する濃度区分以外で最大度数値をもつ第2の最大度数の濃度区分を求め、第1の最大度数値の総画素数に対する割合、(第1の最大度数値−第2の最大度数値)の総画素数に対する割合を算出する。これらの値を予め定められる第1の閾値、第2の閾値、第3の閾値と比較することにより、原稿を文字、写真、文字/写真の何れかに分類する。
また、写真と判断された場合、入力画像データを二値化し、注目画素を含む複数の画素よりなるマスクを設定し、主走査方向・副走査方向での「0」から「1」、「1」から「0」への変化点数の和を求めて(高速化のために主走査方向の変化点数だけでも良い)、予め定められる閾値以上である場合には印刷写真(印刷写真の場合、局所領域における画像信号の変動が大きい。)、閾値未満である場合には印画紙写真と判別する。
原稿種別の判定は前述にようにプレスキャンを行って判定しても良く、シェーディング補正後の画像信号をハードディスクなどの記憶媒体に格納しておき、格納されている画像信号を読出して行っても良い。
原稿種別の判定結果としての原稿種別判定信号は色補正部46に出力される。色補正部46では、入力階調補正部44にて下地濃度、コントラスト等の画質の調整を行い、領域分離処理部45にて領域分離処理を行った後、原稿種別判定信号に応じた色補正処理を行う。この色補正処理では、例えば、印画紙写真原稿、文字印画紙写真原稿である場合、図4(a)に示した第1領域用の1次元LUTと、図5に示した第1領域用の3次元LUTとを用いて色補正処理を行う。また、文字原稿、文字印刷写真原稿、印刷写真原稿である場合には、図4(b)に示した第2領域用の1次元LUTと、図5に示した第2領域用の3次元LUTとを用いて色補正処理を行う。
色補正部46にて色補正処理を施した後、黒生成・下色除去部47、空間フィルタ処理部48、出力階調補正部49A、階調再現処理部49Bにおいて、実施の形態1と同様の処理を行う。
なお、本実施の形態では、原稿種別判定部43にて原稿の種別を判定する構成としたが、利用者によるマニュアル入力に基づいて原稿の種別を判定する構成であってもよい。この場合、操作部9を通じて原稿の種別に係る情報を受付け、受付けた情報に基づいて制御部1が原稿の種別を判定する構成となる。制御部1は判定結果としての原稿種別判定信号を色補正部46に出力し、色補正部46ではこの原稿種別判定信号に応じて適切な色補正処理を行う。
また、図18では原稿種別の判定結果である原稿種別判定信号を色補正部46にのみフィードバックしているが、入力階調補正部44、領域分離処理部45、空間フィルタ処理部48、及び階調再現処理部49Bに入力し、原稿の種別に応じた処理を行う構成としてもよい。
実施の形態5.
前述した実施の形態では、何れもハードウェアにより構成した画像形成装置により本発明を実現する構成としたが、ソフトウェアの処理により本発明を実現する構成であってもよい。
図19は本発明に係るコンピュータプログラムがインストールされた画像処理装置の内部構成を説明するブロック図である。図中10は、本実施の形態に係る画像処理装置であり、具体的にはパーソナルコンピュータ、ワークステーション等である。画像処理装置10はCPU11を備えており、このCPU11がバス12に接続されたROM13から各種の制御プログラムをRAM14にロードして実行し、操作部15、補助記憶部16、記憶部17、画像入力IF18、画像出力IF19等のハードウェアを制御する。
操作部15は、処理対象となる画像データの選択、画像処理に必要なパラメータの入力、画像処理の開始指示等を受付けるために、キーボード、マウス等を備える。補助記憶部16は、本発明のコンピュータプログラムを記録した記録媒体20からコンピュータプログラムを読取るための読取装置を備えている。記録媒体20としては、FD(Flexible Disk)、CD−ROM等を用いることができる。記憶部17は、ディスク状の磁気記録媒体を有するハードディスク装置を備えており、補助記憶部16により読取られたコンピュータプログラム、画像入力IF18を通じて入力された画像データ等を記憶する。
画像入力IF18は、画像入力装置21を接続するためのインタフェースである。画像入力IF18としてSCSI、USBのようなインタフェースを利用することでき、この画像入力IF18に接続する画像入力装置21としては、スキャナ装置、デジタルスチルカメラ等を挙げることができる。画像出力IF19は、画像出力装置22を接続するためのインタフェースである。画像出力IF19としてUSBのようなインタフェースを利用することができ、この画像出力IF19に接続する画像出力装置22としては、プリンタ装置、デジタル複合機等を挙げることができる。
なお、本発明に係るコンピュータプログラムを記録する記録媒体20としては、前述したFD及びCD−ROMの他に、MO、MD、DVD等の光ディスク、ハードディスクのような磁気記録媒体、ICカード、メモリカード、光カード等のカード型記録媒体、マスクROM、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read Only Memory)、フラッシュROM等による半導体メモリの利用も可能である。
また、画像処理装置10が通信ネットワークを介してサーバ装置等に接続するための通信手段としてモデム等を備えている場合には、サーバ装置に予め本発明のコンピュータプログラムを記憶させておき、当該サーバ装置から前記コンピュータプログラムをダウンロードし、画像処理装置10内にインストールする構成であってもよい。
図20は画像処理装置10が実行する色補正処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域分離処理を行う(ステップS11)。領域分離処理は、実施の形態1で説明した手法と同様の手法を用いることができ、各画素が属する領域に関する情報(領域識別情報)を生成する。なお、この領域分離処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、領域識別情報に基づいて切替えた1次元LUTを用いて、入力画像データの変換を実行する(ステップS12)。例えば、対象の画素が印画紙写真領域(第1領域とする)に属すると判断できる場合、図4(a)に示したような1次元LUTを用いて画素値の変換を行うことにより非線形性の補正を行い、文字領域又は網点領域(第2領域とする)に属すると判断できる場合、図4(b)に示したような1次元LUTを用いて画素値の変換を行うことにより非線形性の補正を行う。
なお、この変換で用いる1次元LUTは本発明のコンピュータプログラムの内部パラメータとして提供される形態であってもよく、コンピュータプログラムとは別に提供される形態であってもよい。
次いで、CPU11は、変換したデータを用いて重み付けを算出するとともに(ステップS13)、変換したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS14)。すなわち、領域に応じた1次元LUTを用いて画素値の変換を行うことにより、変換先が色空間上の異なる領域にマッピングされることとなるため、例えば、図5に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。
なお、この色変換で用いる3次元LUTは本発明のコンピュータプログラムの内部パラメータとして形態される構成であってもよく、コンピュータプログラムとは別に提供される形態であってもよい。
次いで、CPU11は、ステップS13で算出した重み付け、及びステップS14で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS15)。
このように、本実施の形態では、領域識別情報に基づいて利用する1次元LUTを切替え、切替えた1次元LUTを用いて画素値の変換を行った後、3次元LUTを用いた色変換を行う。すなわち、実施の形態1で説明した画像形成装置をソフトウェアによる処理で実現している。
実施の形態6.
実施の形態5では、実施の形態1の画像形成装置を実現するコンピュータプログラムについて説明したが、実施の形態2で説明した色補正部35Bをコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置10の内部構成は実施の形態5に説明したものと同様である。
図21は画像処理装置10が実行する色変換処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域分離処理を行う(ステップS21)。領域分離処理は、実施の形態1で説明した手法と同様の手法を用いることができ、各画素が属する領域に関する情報(領域識別情報)を生成する。なお、この領域分離処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、生成した領域識別情報に基づいて画素毎のオフセット量を設定し(ステップS22)、設定したオフセット量を入力画像データに加算する。(ステップS23)。そして、図12に示したような1次元LUTを用いて、オフセット量を加算したデータに対する変換を実行する(ステップS24)。例えば、入力画像データの各画素が印画紙写真領域(第1領域とする)に属する場合、オフセット量を256に設定することによって入力画像データの画素値の範囲を256〜511にすることができ、図12に示したような1次元LUTを用いることで出力画像データの画素値の範囲を256〜511にすることができる。また、入力画像データの各画素が文字領域又は網点領域(第2領域とする)に属する場合、オフセット量を0に設定することよって入力画像データの画素値の範囲を0〜255にすることができ、同じく図12に示したような1次元LUTを用いることで出力画像データの画素値の範囲を0〜255にすることができる。
次いで、CPU11は、変換したデータを用いて重み付けを算出するとともに(ステップS25)、変換したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS26)。すなわち、ステップS24の処理では、領域に応じて変換先が色空間上の異なる領域にマッピングされるため、例えば、図5に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。
次いで、CPU11は、ステップS25で算出した重み付け、及びステップS26で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS27)。
このように、本実施の形態では、オフセット量の切替のみを行えばよく、領域識別情報により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色変換処理を施すことが可能となる。
実施の形態7.
実施の形態5では、実施の形態1の画像形成装置を実現するコンピュータプログラムについて説明したが、実施の形態3で説明した色補正部35Cをコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置10の内部構成は実施の形態5に説明したものと同様である。
図22は画像処理装置10が実行する色変換処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域分離処理を行う(ステップS31)。領域分離処理は、実施の形態1で説明した手法と同様の手法を用いることができ、各画素が属する領域に関する情報(領域識別情報)を生成する。なお、この領域分離処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、1次元LUTを用いて、入力画像データの変換を実行する(ステップS32)。この変換で用いる1次元LUTは一種類であり、領域識別情報による切替えは行わないものとする。
次いで、CPU11は、変換された入力画像データに対し、領域識別情報に応じたオフセット量を加算する(ステップS33)。例えば、領域識別情報に基づいて対象の画素が第1領域に属する場合、R信号に対してオフセット量256を加算し、G信号及びB信号に対してオフセット量0を加算する。また、領域識別情報に基づいて対象の画素が第2領域に属する場合、RGBの各信号に対してオフセット量0を加算する。
次いで、CPU11は、オフセット量を加算したデータを用いて重み付けを算出するとともに(ステップS34)、オフセット量を加算したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS35)。すなわち、ステップS33で領域に応じたオフセット量を加算することにより、色空間上の異なる領域にマッピングすることができるため、例えば、図15に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。
次いで、CPU11は、ステップS34で算出した重み付け、及びステップS35で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS36)。
このように、本実施の形態では、オフセット量の切替のみを行えばよく、領域識別信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTを効率的な保持が可能となる。
実施の形態8.
前述した実施の形態では、領域識別信号または原稿種別判定信号に応じて適切な色補正処理を行う形態について説明したが、これらの信号を用いる代わりに入力画像のコンテンツに応じて色補正を行う構成としてもよい。ここで、入力画像のコンテンツとは、画像データを色空間と原稿画像平面上において、ある意味のあるまとまりとして、分類分けされたものである。例えば、色空間上で青色領域であり、それらの画素が原稿画像平面上でまとまりとなって画像全体を覆っている場合、海や空と予想ができる。また、肌色が原稿画像平面上でまとまっていれば、人物画像であると予想できる。そして、それらそれぞれに対して色補正で強調処理をすることにより好ましく見えるようになる。
このように特定のコンテンツに対して、人間は個人の先入観や期待観により経験的に養われた記憶色によって印象が左右される。これは、例えば、肌色は健康的で明るい色が、植物の花や葉は鮮やかな色が好まれることに基づいている。そして、特に肌色や植物の緑、空の青などは記憶色に近づくような選択的強調処理を施すことで視覚的に良い印象を与えるということが提案されている。そして、この実施の形態では、色分布情報を用いることで、例えば、画像データの色空間において青領域が多い場合、海や空であると判断し、その領域に対してのみ彩度を強調した色補正ができるようになる。また、肌色の領域が多い場合は、人物画像と判断し、人肌に対してのみ、明度を強調した色補正ができるようになる。このように入力画像のコンテンツごとに色補正処理を切り替えることで、好ましい色再現をすることが可能になるのである。
図23は実施の形態8に係る画像形成装置が備える画像処理部5の構成を示すブロック図である。画像処理部5は、AD変換部51、シェーディング補正部52、原稿種別判定部53、入力階調補正部54、色分布情報抽出部55、領域分離処理部56、色補正部57、黒生成・下色除去部58、空間フィルタ処理部59、出力階調補正部60A、階調再現処理部60Bを備えている。これらの構成要素のうち、色分布情報抽出部55以外の構成要素については、例えば、実施の形態4に示した画像処理部4の各構成要素と全く同様である。
色分布情報抽出部55では、入力階調補正部54の出力信号(CMY信号)に基づいて入力画像中に青色領域、緑色領域、肌色領域など特定の領域が含まれているか否かを判定し、各画素がどの領域に属しているかを示す色分布情報信号を出力する。前述した特定の領域に含まれない場合、色分布情報信号は特定領域に含まれない領域として出力される。そして、色分布情報信号を色補正部57へ出力すると共に、入力階調補正部54から入力されたCMY信号をそのまま後段の領域分離処理部56に出力する。なお、図23では、色分布情報抽出部55は領域分離処理部56の前段に設けられているが、領域分離処理部56の後段に設けてもよい。また、原稿種別判定部53は必ずしも必要ではない。原稿種別判定部53を設けない場合には、シェーディング補正部52から出力されるRGB信号が入力階調補正部54に入力され、入力階調補正部54にて階調補正されたRGB信号が色分布情報抽出部55に入力される。
以下、色分布情報抽出部55における処理について説明する。図24は色分布情報抽出部55の内部構成を説明するブロック図である。色分布情報抽出部55では、予めカラーチャート原稿の各カラーパッチを測色器で測色し、例えば、CIE1976L* a* b* 信号(CIE : Commission International del'Eclairage、L* :明度、a* ,b*:色度)などを求め、入力階調補正部54から出力されるCMY信号(原稿種別判定部53を搭載しない場合にはRGB信号)から色空間変換特性を定式化しておく。色分布情報抽出部55の信号変換部551では、このような変換式を用いることにより、入力されたRGB信号を機器の特性に依存しないL*a* b* 色信号に変換する。この変換はマスキング方程式で実現可能である。
そして、判定部554は、抽出すべき絵柄部分(この場合、青色領域、緑色領域、肌色領域であり、入力画像のコンテンツを表す)を構成する色空間内、すなわちCIE1976L* a* b* 色空間内の領域を特定し、L*a* b* 色信号に基づいてその領域内に含まれる画素を抽出する。具体的な抽出方法は、以下の通りである。予めサンプル画像などから抽出すべき絵柄部分における各輝度(L* )とそれに対応する色差情報(色度)の平均値(a* バー,b* バー)、分散値(σa* ,σb*)とを求める。そして、これを各輝度(L* )に対応したLUT553として保持しておく。入力階調補正部54の出力信号を色変換した信号をL*,a* ,b* とした場合、抽出すべき絵柄部分に属しているか否かの判定は、以下の式に当てはめて同時に満たすか否かによって行う。
ここで、nは自然数である。この式は、色度a* ,b* が所定の範囲内にあるか否か判定する判定式を表している。色分布情報抽出部55では、色変換した輝度信号L* に対する色差情報の平均値(a* バー,b* バー)と分散値(σa* ,σb*)とをLUT553を参照することにより求める。なお、予め各輝度に対して色差情報の平均値及び分散値を定式化しておけば、LUT553を持たず、各輝度に応じた色差情報の平均値及び計算部552で直接求めることも可能である。そして、計算部552では、数式1に示したように色差情報の分散値(σa*,σb* )に自然数nを掛け、色差情報の平均値(a* バー,b* バー)に加減算した値を求めて判定部554に出力する。判定部554では、色変換した色差情報(a*,b* )が数式1のように計算部552で求めた値の範囲内にあるか否かを判定する。更に、判定部554では、数式1により抽出された画素の総数が全画像の画素数に対して予め定めた閾値より大きいかどうか判定も行う。例えば、数式1により抽出された画素が青領域にあっても、全画像の画素数に対して、ほんのわずか(例えば、約1%)である場合、青領域は画像全体を覆っていないため、空や海であると判断できない(むしろ、突発的なノイズと判定する)。逆に、全画像の画素数に対して、例えば約50%以上であれば、画像全体を覆っていると考えられ、空や海であると判断できる。このように抽出された画素の総数が予め定めた閾値より大きい場合、判定部は抽出された画素が抽出すべき絵柄部分に属していると判定し、抽出すべき絵柄部分の領域を示す値を色分布情報信号として出力する。
色分布情報抽出はプレスキャン時に行ってもよく、シェーディング補正処理が施された後の画像信号をハードディスクなどの記憶媒体に格納しておき、格納している画像信号を読み出して行ってもよい。
次に、色補正部57(色変換装置)の動作について説明する。図25は実施の形態8に係る色補正部57の動作を説明する模式的説明図であり、図26は色補正部57で用いる1次元LUTの概念図、図27は同じく3次元LUTの概念図である。前述したように、色補正部57には領域分離処理部56からのCMY信号、及び色分布情報抽出部55から出力される色分布情報信号が入力される。本実施の形態では、まず、色分布情報信号に応じて切替えたオフセット量を入力されたCMY信号に加算し(第1のオフセット加算)、オフセットを加算したCMY信号について1次元LUTを用いたデータ変換を行う。そして、変換されたデータに対し、色分布情報信号に応じて切り替えたオフセット量を加算し(第2のオフセット加算)、オフセットを加算したCMYについて3次元LUTを用いた色補正を行う。本実施の形態で用いる3次元LUTは、格子点の間隔(格子幅)全てが2n で構成されていて(nは整数)、格子点数は任意である。例えば、3次元LUTの格子幅が16(=24)である場合、前段の1次元LUTの出力値の範囲が0〜255であれば、格子点数は17点(256/16+1)になり、前段の1次元LUTの出力値の範囲が0〜335であれば、格子点数は22点(336/16+1=22)になる。
図28は実施の形態8に係る色補正部57の内部構成を示すブロック図である。例えば、入力階調補正部54の出力信号CMYが(255,255,30)であり、青色領域(図26に示した第1領域とする)に属するものとした場合、オフセット計算部571内のオフセット量切替部571bは、色分布情報信号によりオフセット量を(0,0,0)に切替える。このオフセット量をオフセット量加算部571aがCMY信号に加算することにより、オフセット計算部571が出力する信号は(255,255,30)となる。加算された信号は1次元LUT計算部572に入力されて、加算された信号値に基づいてアドレス参照部572aが1次元LUTにアクセスし、それに対応する値を取得する。このとき、加算された信号は、図26に示した第1領域(0〜255の範囲)内であるため、第1領域用の1次元LUTを用いることになる。今、1次元LUTから取得した信号を(255、255、20)とする。次に、オフセット計算部573内のオフセット量切替部573bが色分布情報信号に基づいて設定するオフセット量を(256、0、0)とした場合、オフセット量加算部573aは、そのオフセット量を1次元LUTから取得した信号(255、255、20)に加算するため、オフセット計算部573が出力する信号は(511、255、20)になる。オフセット計算部573の出力信号は、3次元LUT計算部574に入力される。3次元LUT計算部574に信号(511、255、20)が入力された場合、その信号は図27に示した第1領域用(Cは256〜511、Mは0〜255、Yは0〜255の範囲)に属していることから、第1領域用の3次元LUTを用いて色補正処理を行う。なお、3次元LUTを用いた色補正処理方法は、実施の形態1に記載されている補間演算方法と同様の方法を用いることができる。この第1領域用の3次元LUTは、例えば、青色の彩度が高くなるようなデータを保持している。
緑色(第2領域)、肌色(第3領域)、そして、いずれにも属さない領域(第4領域)においても、同様にして色補正処理が行われる。第2領域用の3次元LUTは、第1領域の場合と同様、緑色の彩度が高くなるようなデータを保持しており、第3領域用の3次元LUTは肌色の明度が高くなるようなデータを保持している。
色補正部57にて色補正処理を施した後、黒生成・下色除去部58、空間フィルタ処理部59、出力階調補正部60A、階調再現処理部60Bにおいて、実施の形態1と同様の処理を行う。
なお、図23では色分布情報抽出の判定結果である色分布情報信号を色補正部57にのみフィードバックしているが、空間フィルタ処理部59、及び階調再現処理部60Bに入力し、入力画像のコンテンツに応じた処理を行う構成としてもよい。また、前述の実施の形態で用いられている領域分離識別信号や原稿種別判定信号と組み合わせることにより、様々な原稿とコンテンツに適応した色補正も可能になる。
また、この実施の形態では、オフセット計算部571,573を1次元LUT計算部572の前後に配置した構成としたが、実施の形態2のようにオフセット計算部が1次元LUT計算部572の前だけにある構成であってもよく、実施の形態3のようにオフセット計算部が1次元LUT計算部572の後だけにある構成であってもよい。なお、1次元LUTにおける入出力関係は、図26だけでなく、図4や図12のようにすることも可能である。
以上のような構成で色補正を行う場合、オフセット量の切替のみを行えばよく、色分布情報信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する色の領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTを効率的な保持が可能となる。
実施の形態9.
実施の形態8では、ハードウェアにより本発明を実現する構成としたが、実施の形態8で行った処理をコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置の内部構成は実施の形態5に説明したものと同様である。すなわち、本実施の形態に係るコンピュータプログラムがインストールされる画像処理装置10は、CPU11を備えており、このCPU11がRAM14上に前記コンピュータプログラムをロードして実行することにより、記憶部17から読み出した画像データ、又は画像入力IF18を通じて入力された画像データに対して色補正処理を施すように構成される。
図29は画像処理装置10が実行する色補正処理の処理手順を説明するフローチャートである。画像処理装置10内のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して色分布情報抽出処理を行う(ステップS41)。色分布情報抽出処理は、実施の形態8で説明した手法と同様の手法を用いることができ、各画素が属する領域に関する情報(色分布情報)を生成する。なお、この色分布情報抽出処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。また、領域分離処理と組み合わせてもよい。
次いで、CPU11は、生成した色分布情報に基づいて画素毎のオフセット量を設定し(ステップS42)、設定したオフセット量を入力画像データに加算する。(ステップS43)。そして、図26に示したような1次元LUTを用いて、オフセット量を加算したデータに対してデータ変換を実行する(ステップS44)。例えば、入力画像データの各画素が青色領域(第1領域とする)に属する場合、CMY(RGB)の各信号に対してオフセット量を0に設定することによって入力画像データの画素値の範囲を0〜256にすることができ、図26に示す1次元LUTを用いることで出力画像データの画素値の範囲を0〜255にすることができる。また、入力画像データの各画素が緑色領域(第2領域とする)に属する場合、オフセット量を256に設定することよって入力画像データの画素値の範囲を256〜511にすることができ、同じく図26に示す1次元LUTを用いることで出力画像データの画素値の範囲を0〜255にすることができる。同様にして、肌色領域(第3領域とする)に属する場合はオフセット量を512に、それ以外の領域(第4領域とする)に属する場合はオフセット量を768に設定すればよい。
次いで、CPU11は、色分布情報に応じたオフセット量を変換後のデータに加算し(ステップS45)、オフセット量を加算したデータを用いて重み付けを算出する(ステップS46)。そして、オフセット量を加算したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS47)。すなわち、ステップS45で色分布情報に応じたオフセット量を加算することにより、色空間上の異なる領域に振り分けることができるため、例えば、図27に示したような3次元LUTを用いることによって色分布情報に応じた適切な色補正を行うことができる。
次いで、CPU11は、ステップS46で算出した重み付け、及びステップS47で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS48)。なお、補間演算方法は、実施の形態1で説明した手法と同様の手法を用いることができる。
また、この実施の形態では、オフセット量の加算が1次元LUTによるデータ変換処理の前後にある工程であるが、実施の形態6のようにオフセット量の加算が1次元LUTによるデータ変換処理の前だけにある工程でも、実施の形態7のようにオフセット量の加算が1次元LUTによるデータ変換処理の後だけにある工程であってもよい。なお、1次元LUTにおける入出力関係は、図26だけでなく、図4や図12のようにすることも可能である。
このように、本実施の形態では、オフセット量の切替のみを行えばよく、色分布情により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTを効率的な保持が可能となる。
実施の形態10.
前述した実施の形態では領域識別信号、原稿種別判定信号、色分布情報信号に応じて適切な色補正処理を行う形態について説明したが、これらの信号を用いる代わりに、入力画像データが色空間内の予め定めた領域に属するか否かを示す色空間内位置信号に応じて補正を行う構成としてもよい。
図30は実施の形態10に係る画像形成装置が備える画像処理部6の構成を示すブロック図である。画像処理部6は、AD変換部61、シェーディング補正部62、入力階調補正部63、色空間内位置信号生成部64、領域分離処理部65、色補正部66A、黒生成・下色除去部67、空間フィルタ処理部68、出力階調補正部69A、階調再現処理部69Bを備えている。これらの構成要素のうち、色空間内位置信号生成部64以外の構成要素については、例えば、実施の形態1に示した画像処理部3の各構成要素と全く同様である。
色空間内位置信号生成部64では、入力階調補正部63の出力信号(RGB信号)に基づいてRGB色空間内の予め定められた領域に属するか否かを示す信号(色空間内位置信号)を生成し、後段の色補正部66Aに出力する。色補正部66Aでは、色空間内位置信号生成部64からの色空間内位置信号に応じて1次元LUTを切替え、切替えた1次元LUTを用いてデータ変換を行う。そして、変換されたデータに対して3次元LUTを用いた色補正を行う。
以下、色空間内位置信号生成部64における処理を説明する。図31は色空間内位置信号生成部64の内部構成を説明するブロック図である。色空間内位置信号生成部64は信号生成部641を備えており、この信号生成部641には入力階調補正部63からのRGB信号が入力される。また、色空間内位置信号生成部64は、入力階調補正部63からのRGB信号をそのまま後段の領域分離処理部65へ出力する。
色空間内位置信号生成部64内の信号生成部641は、判定テーブル641aに従って色空間内位置信号を生成し、色補正部66Aに出力する。図32は判定テーブル641aの一例を説明する概念図である。判定テーブル641aでは色空間内の特定の領域を画素値の範囲により規定している。図32に示した例では、240≦R≦255、240≦G≦255、240≦B≦255の範囲により示される領域をハイライト領域として規定してあり、その他の領域をベース領域として規定している。すなわち、信号生成部641は、判定テーブル641aを参照することにより入力されたRGB信号がハイライト領域に属するか、又はベース領域に属するかを判定することができ、ハイライト領域に属する場合には色空間内位置信号として「1」を、ベース領域に属する場合には色空間内位置信号として「0」を出力する。
なお、本実施の形態では、色空間内の領域を画素値の範囲により予め規定してあり、信号生成部641にて何れの領域に属するかを判定する構成としたが、利用者自身が識別すべき領域を任意に設定できるようにしてもよい。
次に、色補正部66A(色変換装置)の動作について説明する。図33は実施の形態10に係る色補正部66Aの動作を説明する模式的説明図であり、図34は色補正部66Aで用いる1次元LUTの概念図、図35は同じく3次元LUTの概念図である。前述したように、色補正部66Aには領域分離処理部65からのRGB信号、及び色空間内位置信号生成部64から出力される色空間内位置信号が入力される。本実施の形態では、まず、色空間内位置信号に応じて切り替えた1次元LUTを用いてデータ変換を行い、次いで変換されたデータについて3次元LUTを用いた色補正を行う。
1次元LUTは、入力画像の各画素が属する領域に応じて出力信号の範囲が異なるように設定されている。例えば、入力画像の各画素がハイライト領域に属している場合、図34(a)に示した1次元LUTを用いて画素値の変換を行う。また、入力画像の各画素がベース領域に属している場合には、図34(b)に示した1次元LUTを用いて画素値の変換を行う。なお、図34に示したグラフの横軸は入力信号の画素値、縦軸は出力信号の画素値を示しており、各グラフに描かれた曲線は入力信号と出力信号との間の変換曲線を示している。これらの変換曲線はルックアップテーブル(1次元LUT)として規定されている。これらの変換曲線に従って画素値の変換を行った場合、ハイライト領域に属する画素は、画素値が256〜319の範囲内に属するように変換され、ベース領域に属する画素は、画素値が0〜255の範囲内に属するように変換される。
このように画素の属する領域に応じて異なる範囲の値を出力する1次元LUTを用いることにより、色空間上では互いに異なる領域内の点にマッピングされることとなる。すなわち、ハイライト用の1次元LUTを用いた場合、図35に示したように、256≦R≦319、256≦G≦319、256≦B≦319を満たす領域内の点にマッピングされ、ベース用の1次元LUTを用いた場合、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、ハイライト用の3次元LUT、及びベース用の3次元LUT)を用意しておくことにより、色空間内位置信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。
本実施の形態で用いる3次元LUTは、格子点の間隔(格子幅)すべてが2n で構成されていて(nは整数)、格子点数は任意である。例えば、ベース用の3次元LUTは、格子幅が16(=24)であり、格子点数はRGBの各色成分あたり17点の大きさを持っている。一方、ハイライト領域では、1次元LUTにおいて色成分あたり15のレンジが色成分あたり63のレンジに拡大されている。そのため、格子幅を16として、色成分あたりの格子点を更に4点増やすことができる。すなわち、ハイライト領域については、細かい精度で色補正を行うことが可能となる。ハイライト領域の実際のレンジは15であるため、実際の格子幅は4(=16×16/64)となる。つまり、このハイライト領域の3次元LUTは、実際の格子幅が4となり、より詳細な補間を実行していることになる。
図36は実施の形態10に係る色補正部66Aの内部構成を説明するブロック図である。色補正部66Aは、1次元LUTを用いてデータ変換を行う1次元LUT計算部661と3次元LUTを用いた色補正を行う3次元LUT計算部662とにより構成される。
1次元LUT計算部661には、色空間内位置信号生成部64から出力される色空間内位置信号、及び領域分離処理部65から出力されるRGB信号が入力される。1次元LUT計算部661のアドレス参照部661aは、入力されたRGB信号及び色空間内位置信号に基づき、ハイライト用又はベース用の1次元LUTにアクセスし、変換後のRGB信号を取得する。1次元LUT計算部661によって変換したRGB信号は、3次元LUT計算部662の重み付け計算部662a及びアドレス計算部662bに出力される。
重み付け計算部662aは、入力された信号から所望の重み付けを算出し、補間演算部662cに値を渡す。一方、アドレス計算部662bは、入力された信号からアクセスすべきアドレスを算出し、そのアドレスを基に3次元LUTにアクセスすることにより色補正値を取得する。アドレス計算部662bが取得した色補正値は補間演算部662cに出力される。補間演算部662cは、重み付け計算部662aから出力された重み付けとアドレス計算部662bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。
このように、本実施の形態では、1次元LUTを用いることにより色空間内の位置ごとで異なる点にマッピングされるため、その位置に対応する点で色補正値を保持しておけば、色空間内位置信号に応じて適切な色補正処理を行うことができる。このとき、色空間内位置信号に応じて1次元LUTを切り替えるのみで3次元LUTの切り替えは不要となる。また、メモリのスタートアドレスなども保持する必要はなく、従来の技術を使えるため、複雑なメモリアクセスの計算を行う必要がない。そのため、簡易なハードウェアで適切な処理が行える色変換装置、画像形成装置を提供することができる。
実施の形態11.
実施の形態10では、ハードウェアにより本発明を実現する構成としたが、実施の形態10で行った処理をコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置の内部構成は実施の形態5に説明したものと同様である。すなわち、本実施の形態に係るコンピュータプログラムがインストールされる画像処理装置10は、CPU11を備えており、このCPU11がRAM14上に前記コンピュータプログラムをロードして実行することにより、記憶部17から読み出した画像データ、又は画像入力IF18を通じて入力された画像データに対して色補正処理を施すように構成される。
図37は画像処理装置10が実行する色補正処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域判定処理を行う(ステップS51)。領域判定処理は、実施の形態10で説明した手法と同様の手法を用いることができ、各画素が色空間内の何れの領域に属するかを示す情報(色空間内位置情報)を生成する。なお、この領域判定処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、領域判定情報に基づいて切替えた1次元LUTを用いて、入力画像データの変換を実行する(ステップS52)。例えば、対象の画素がハイライト領域に属すると判断できる場合、図34(a)に示したような1次元LUTを用いて画素値の変換を行う。また、ハイライト領域に属さないと判断できる場合、すなわち、ベース領域に属すると判断できる場合、図34(b)に示したような1次元LUTを用いて画素値の変換を行う。
次いで、CPU11は、変換したデータを用いて重み付けを算出するとともに(ステップS53)、変換したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS54)。すなわち、領域に応じた1次元LUTを用いて画素値の変換を行うことにより、変換先が色空間上の異なる領域にマッピングされることとなるため、例えば、図35に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。そして、CPU11は、ステップS53で算出した重み付け、及びステップS54で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS55)。
このように、本実施の形態では、色空間内位置情報に基づいて利用する1次元LUTを切替え、切替えた1次元LUTを用いて画素値の変換を行った後、3次元LUTを用いた色変換を行う。すなわち、実施の形態1で説明した画像形成装置をソフトウェアによる処理で実現している。
実施の形態12.
実施の形態10に示した色補正部66Aでは、色空間内位置信号に応じて1次元LUTを切替える構成としたが、1次元LUTを切替える代わりに入力信号(RGB信号)に対して異なるオフセット量を加算し、1つの1次元LUTを用いて非線形性の補正を行う構成であってもよい。本実施の形態で用いる色補正部66Bの動作について図38で説明し、その内部構成について図39で説明する。色補正部66B以外の構成については実施の形態10と同様である。
図38は実施の形態12に係る色補正部66Bの動作を説明する模式的説明図であり、図39は色補正部66Bで用いる1次元LUTの概念図である。色補正部66Bには色空間内位置信号生成部64から出力される色空間内位置信号、及び領域分離処理部65から出力されるRGB信号が入力される。色補正部66Bでは、色空間内位置信号に基づいて色空間内の何れの領域(例えば、ハイライト領域、又はベース領域)に属するかを判定することができ、この判定結果に基づいてRGB信号に加算すべきオフセット量を設定する。そして、設定されたオフセット量をRGB信号に加算した後、非線形性の補正を行うために1次元LUTを用いた画素値の変換を各色成分毎に行う。この1次元LUTを用いた画素値の変換では、加算したオフセット量に応じてRGB色空間の異なる領域にマッピングされている3次元LUT(色補正テーブル)にアクセスできるように変換する。また、3次元LUTを用いた色補正では、そのRGB色空間に対して規定された1つの3次元LUTを用いて色補正を行う。
本実施の形態では、判定した領域に応じてオフセット量を切替えることにより入出力の範囲を異ならせている。例えば、入力画像の各画素がハイライト領域に属する場合、オフセット量を256に設定することによって入力信号の画素値の範囲を256〜271に変換することができ、図39に示した1次元LUTを用いることで出力信号の画素値の範囲を256〜319に変換することができる。また、入力画像の各画素がベース領域に属する場合、オフセット量を0に設定することによって入力信号の画素値の範囲を0〜255にすることができ、同じく図39に示した1次元LUTを用いることで出力信号の画素値の範囲を0〜255にすることができる。
このように画素の属する領域に応じて異なる範囲の値を出力する1次元LUTを用いることにより、色空間上では互いに異なる領域内の点にマッピングされることとなる。すなわち、ハイライト領域に属する画素に関しては、256≦R≦511、256≦G≦511、256≦B≦511を満たす領域内の点にマッピングされ、ベース領域に属する画素に関しては、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、ベース用3次元LUT及びハイライト用3次元LUTを1つのテーブルで記述した3次元LUT)を用意しておくことにより、色空間内位置信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。
図40は実施の形態12に係る色補正部66Bの内部構成を説明するブロック図である。色補正部66Bは、色空間内位置信号に応じたオフセット量を設定するオフセット計算部663、1次元LUTを用いて画素値の範囲を変換する1次元LUT計算部664、及び3次元LUTを用いた色補正を行う3次元LUT計算部665により構成される。
オフセット計算部663には、領域分離処理部65から出力されるRGB信号、及び色空間内位置信号生成部64から出力される色空間内位置信号が入力される。オフセット計算部663のオフセット量切替部663bは、入力された色空間内位置信号に応じて加算すべきオフセット量を切替える。例えば、ハイライト領域に属する画素の場合にはオフセット量を256に設定し、ベース領域に属する画素の場合にはオフセット量を0に設定する。オフセット量切替部663bにて設定されたオフセット量はオフセット量加算部663aに出力され、入力されたRGB信号に加算される。
オフセット量が加算されたRGB信号は、1次元LUT計算部664に出力される。1次元LUT計算部664のアドレス参照部664aは、RGB信号にオフセット量が加算された値に基づいて1次元LUTにアクセスし、非線形性を補正したRGB信号を取得する。1次元LUT計算部664によって非線形性が補正されたRGB信号は、3次元LUT計算部665の重み付け計算部665a及びアドレス計算部665bに出力される。
重み付け計算部665aは、入力された信号から所望の重み付けを算出し、補間演算部665cに値を渡す。一方、アドレス計算部665bは、入力された信号からアクセスすべきアドレスを算出し、そのアドレスを基に3次元LUTにアクセスして色補正値を取得する。アドレス計算部665bが取得した色補正値は補間演算部665cに出力される。補間演算部665cは、重み付け計算部665aから出力された重み付けとアドレス計算部665bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。
以上のような構成で色補正を行う場合、オフセット量の切替のみを行えばよく、色空間内位置信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。
実施の形態13.
実施の形態12では、ハードウェアにより本発明を実現する構成としたが、実施の形態12で行った処理をコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置の内部構成は実施の形態5に説明したものと同様である。すなわち、本実施の形態に係るコンピュータプログラムがインストールされる画像処理装置10は、CPU11を備えており、このCPU11がRAM14上に前記コンピュータプログラムをロードして実行することにより、記憶部17から読み出した画像データ、又は画像入力IF18を通じて入力された画像データに対して色補正処理を施すように構成される。
図41は画像処理装置10が実行する色変換処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域判定処理を行う(ステップS61)。領域判定処理は、実施の形態10で説明した手法と同様の手法を用いることができ、各画素が色空間内の何れの領域に属するかを示す情報(色空間内位置情報)を生成する。なお、この領域判定処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、生成した色空間内位置情報に基づいて画素毎のオフセット量を設定し(ステップS62)、設定したオフセット量を入力画像データに加算する。(ステップS63)。そして、1次元LUTを用いて、オフセット量を加算したデータに対する変換を実行する(ステップS64)。例えば、入力画像データの各画素がハイライト領域に属する場合、オフセット量を256に設定することによって入力画像データの画素値の範囲を256〜271にすることができ、図39に示したような1次元LUTを用いることで出力画像データの画素値の範囲を256〜319にすることができる。また、入力画像データの各画素がベース領域に属する場合、オフセット量を0に設定することよって入力画像データの画素値の範囲を0〜255にすることができ、同じく図39に示したような1次元LUTを用いることで出力画像データの画素値の範囲を0〜255にすることができる。
次いで、CPU11は、変換したデータを用いて重み付けを算出するとともに(ステップS65)、変換したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS66)。すなわち、ステップS64の処理では、領域に応じて変換先が色空間上の異なる領域にマッピングされるため、例えば、図35に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。そして、CPU11は、ステップS65で算出した重み付け、及びステップS66で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS67)。
このように、本実施の形態では、オフセット量の切替のみを行えばよく、色空間内位置情報により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色変換処理を施すことが可能となる。
実施の形態14.
実施の形態12に示した色補正部66Bでは、色空間内位置信号に応じて異なるオフセット量を入力信号(RGB信号)に加算し、1次元LUTを用いた非線形性の補正と、3次元LUTを用いた色補正とを順に行う構成としたが、1次元LUTを用いて非線形性の補正を行った後、色空間内位置信号に応じたオフセット量を加算し、3次元LUTを用いた色補正を行う構成としてもよい。本実施の形態で用いる色補正部66Cの動作については図42で説明し、内部構成については図44で説明する。色補正部66C以外の構成については実施の形態12と同様である。
図42は実施の形態14に係る色補正部66Cの動作を説明する模式的説明図であり、図43は色補正部66Cで用いる3次元LUTの概念図である。色補正部66Cには色空間内位置信号生成部64から出力される色空間内位置信号、及び領域分離処理部65から出力されるRGB信号が入力される。色補正部66Cでは、まず、予め用意してある1次元LUTを用いて入力信号(RGB信号)に対する非線形性の補正を行う。また、色補正部66Cでは、色空間内位置信号に基づいて対象の画素が色空間内の何れの領域(例えば、ハイライト領域、又はベース領域)に属するかを判定することができるため、この判定結果に基づいて非線形性が補正されたRGB信号に加算すべきオフセット量を各色成分毎に設定する。そして、設定されたオフセット量をRGB信号に加算した後、3次元LUTを用いて色補正を行う。本実施の形態では、各画素の属する領域に応じてRGB色空間の異なる領域にマッピングされるようにオフセット量を設定する。
本実施の形態では、1次元LUTを用いて非線形性の補正を行った後、領域に応じたオフセット量を加算している。例えば、入力画像の各画素がハイライト領域に属する場合、R信号に対するオフセット量を256、G信号及びB信号に対するオフセット量を0に設定し、入力画像の各画素がベース領域に属する場合、RGBの各信号に対するオフセット量を0に設定する。その結果、図43に示すように、ハイライト領域に属する画素に関しては、256≦R≦319、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなり、ベース領域に属する画素に関しては、0≦R≦255、0≦G≦255、0≦B≦255を満たす領域内の点にマッピングされることとなる。そこで、各領域内の点に対応させた色補正テーブル(すなわち、ハイライト用の3次元LUTとベース用3次元LUTとを1つのテーブルで記述した3次元LUT)を用意しておくことにより、色空間内位置信号に応じた3次元LUTの切替えが不要となり、それぞれの領域に対する適切な色補正処理が可能となる。また、前述した実施の形態とは異なり、色補正値を対角線上にしか保持できなかったため、無駄になっていたテーブルメモリを効率的に配置できるようになり、テーブルメモリの効率的な保持が可能となる。
図44は実施の形態14に係る色補正部66Cの内部構成を説明するブロック図である。色補正部66Cは、1次元LUTを用いて非線形性の補正を行う1次元LUT計算部666、領域識別信号に応じたオフセット量を設定するオフセット計算部667、及び3次元LUTを用いた色補正を行う3次元LUT計算部668により構成される。
1次元LUT計算部666には、領域分離処理部65から出力されるRGB信号が入力される。1次元LUT計算部666のアドレス参照部666aは、入力されたRGB信号に基づいて1次元LUTにアクセスし、非線形性を補正したRGB信号を取得する。1次元LUT計算部666によって非線形性が補正されたRGB信号はオフセット計算部667へ出力される。
オフセット計算部667には、1次元LUT計算部666から出力されるRGB信号、色空間内位置信号生成部64から出力される色空間内位置信号が入力される。オフセット計算部667のオフセット量切替部667bは、入力された色空間内信号に応じて加算すべきオフセット量を切替える。例えば、ハイライト領域に属する画素の場合にはR信号に対するオフセット量を256、G信号及びB信号に対するオフセット量を0に設定する。また、ベース領域に属する画素の場合にはRGBの各信号に対してオフセット量を0に設定する。オフセット量切替部667bにて設定されたオフセット量はオフセット量加算部667aに出力され、入力されたRGB信号に加算される。オフセット量が加算されたRGB信号は、3次元LUT計算部668の重み付け計算部668a及びアドレス計算部668bに出力される。
重み付け計算部668aは、入力された信号から所望の重み付けを算出し、補間演算部668cに値を渡す。一方、アドレス計算部668bは、入力された信号からアクセスすべきアドレスを算出し、そのアドレスを基に3次元LUTにアクセスし色補正値を取得する。アドレス計算部668bが取得した色補正値は補間演算部668cに出力される。補間演算部668cは、重み付け計算部668aから出力された重み付けとアドレス計算部668bから出力された色補正値とに基づいて3次元補間演算を行い、出力信号(CMY信号)を生成する。
以上のような構成で色補正を行う場合、オフセット量の切替のみを行えばよく、領域識別信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTの効率的な保持が可能となる。
実施の形態15.
実施の形態14では、ハードウェアにより本発明を実現する構成としたが、実施の形態14で行った処理をコンピュータプログラムにより実現してもよい。なお、本実施の形態に係るコンピュータプログラムをインストールする画像処理装置の内部構成は実施の形態5に説明したものと同様である。すなわち、本実施の形態に係るコンピュータプログラムがインストールされる画像処理装置10は、CPU11を備えており、このCPU11がRAM14上に前記コンピュータプログラムをロードして実行することにより、記憶部17から読み出した画像データ、又は画像入力IF18を通じて入力された画像データに対して色補正処理を施すように構成される。
図45は画像処理装置10が実行する色変換処理の手順を説明するフローチャートである。画像処理装置10のCPU11は、記憶部17から読出した画像データ、画像入力IF18を通じて入力された画像データに対して領域判定処理を行う(ステップS71)。領域判定処理は、実施の形態10で説明した手法と同様の手法を用いることができ、各画素が色空間内の何れの領域に属するかを示す情報(色空間内位置情報)を生成する。なお、この領域判定処理の前処理として、シェーディング補正、入力階調補正等の処理を行う構成であってもよい。
次いで、CPU11は、予め用意してある1次元LUTを用いて入力画像データの変換を実行する(ステップS72)。また、CPU11は、色空間内位置情報に基づいて信号毎にオフセット量を設定し(ステップS73)、設定したオフセット量を信号毎に加算する(ステップS74)。例えば、入力画像の各画素がハイライト領域に属する場合、R信号に対するオフセット量を256、G信号及びB信号に対するオフセット量を0に設定し、1次元LUTを用いて変換されたデータに対してこれらのオフセットを加算する。また、入力画像の各画素がベース領域に属する場合、各信号に対するオフセット量を0に設定する。
次いで、CPU11は、オフセット量を加算したデータを用いて重み付けを算出するとともに(ステップS75)、オフセット量を加算したデータを用いてアドレスを求め、3次元LUTから色補正値の読出しを行う(ステップS76)。すなわち、ステップS73で領域に応じたオフセット量を加算することにより、色空間上の異なる領域にマッピングすることができるため、例えば、図43に示したような3次元LUTを用いることによって領域に応じた適切な色変換を行うことができる。そして、CPU11は、ステップS75で算出した重み付け、及びステップS76で読出した補正値に基づいて補間演算を実行し、出力画像データを生成する(ステップS77)。
このように、本実施の形態では、オフセット量の切替のみを行えばよく、領域識別信号により1次元LUT及び3次元LUTを切り替えることなく、入力画像の各画素が属する領域に応じて適切な色補正処理を施すことが可能となる。また、3次元LUTを効率的な保持が可能となる。
実施の形態16.
前述した実施の形態では、入力画像データの各画素がハイライト領域又はベース領域の何れに属するかを判定する構成としたが、判定領域は必ずしも2つに限定する必要はなく、3つ以上の判定領域を設ける構成としてもよい。また、実施の形態12では、色空間内位置信号に応じて異なるオフセット量を入力信号(RGB信号)に加算した後、1次元LUTを用いた非線形性の補正、3次元LUTを用いた色補正を行う構成について説明し、実施の形態14では、1次元LUTを用いた非線形性の補正を行った後、色空間内位置信号に応じたオフセット量を加算し、その上で3次元LUTを用いた色補正を行う構成について説明したが、1次元LUTによる非線形性の補正の前後で色空間内位置信号に応じたオフセット量を加算する構成としてもよい。
図46は色空間内位置信号生成部64の信号生成部641が用いる判定テーブル641aの他の例を示す概念図である。図46に示した例では、0≦R≦47、0≦G≦47、0≦B≦47の範囲により示される領域をダーク領域、0≦R≦63、0≦G≦63、80≦B≦143の範囲により示される領域をブルー領域、240≦R≦255、240≦G≦255、240≦B≦255の範囲により示される領域をハイライト領域として規定している。また、これらの領域の何れにも属さない領域をベース領域として規定している。すなわち、信号生成部641は、判定テーブル641aを参照することにより入力されたRGB信号がダーク領域、ブルー領域、ハイライト領域、ベース領域の何れに属するかを判定することができ、判定された領域に応じて異なる色空間内位置信号を出力することができる。
図47は実施の形態16に係る色補正処理を説明する模式的説明図である。本実施の形態では、まず、色空間内位置信号に応じて切替えたオフセット量をRGB信号に加算し(第1のオフセット加算)、オフセットを加算したRGB信号について1次元LUTを用いたデータ変換を行う。そして、変換されたデータに対し、色空間内位置信号に応じて切り替えたオフセット量を加算し(第2のオフセット加算)、オフセットを加算したRGB信号について3次元LUTを用いた色補正を行う。
本実施の形態では、まず、判定した領域に応じてオフセット量を切替え、1次元LUTを用いてデータ変換を行うことで入出力の範囲を異ならせている。図48は本実施の形態で用いる1次元LUTの一例を示す概念図であり、図49は各エリアについて規定したオフセットとマッピング先との関係をまとめた図表である。1次元LUTに格納する順番は、ベース領域、ダーク領域、ブルー領域、ハイライト領域と仮定する。ダーク領域用の1次元LUTがベース領域用の1次元LUTの直後に格納され、ベース領域用の1次元LUTは255までであるため、ダーク領域のオフセット量は256となる。すなわち、ダーク領域のRGBの最小値はそれぞれ256にマッピングされる。一方、最大値は、(ベースエリアの格子点距離)×(各色成分のグリッド数−1)+(各成分の最小値−1)で表すことができる。ダーク領域の入力信号の最大値は47であったが、格子点数が9になるため、16×(9−1)+256−1=383となる。
次に、ブルー領域の例について示す。ブルー領域は、ダーク領域の次に格納するようにしているため、ダークエリアの最大マッピング値である383の次の値である384から格納される。ブルーエリアのR成分、G成分の入力最小値はそれぞれ0のため、384がオフセット量となる。しかし、ブルー領域のB成分の最小値は80であるため、80が385にマッピングされるために、オフセット量を305としている。最大値に関しては、補間する格子点距離が8、各色成分のグリッド数が11、オフセット量がR成分、G成分については385、B成分には305であるため、R成分、G成分の最大値は、16×(11−1)+383−1=543、B成分の最大値は、16×(11−1)+383−1=543となる。
このような計算手法により1次元LUT及びオフセット量を決定し、入力データの画素値の変換を行う。また、図50の概念図に示した3次元LUTを用いて色補正を行うことにより、各領域に応じて適切な色補正を行うことができる。
以上では、色空間内位置信号に応じて適切な色補正処理を行う方法について説明したが、色空間内位置信号だけではなく領域識別信号と連動して、適切な色補正処理を行うようにしても良い。例えば、領域識別信号が写真領域(印画紙写真などの連続階調領域)であり、色空間内位置信号がハイライトである場合のみ、前述した何れかの方法を用いて格子点間隔を小さくして補間処理をするなどの、処理が可能となる。
また、色空間内位置信号と原稿種別判定信号とに基づいて、適切な色補正処理を行うようにしてもよい。例えば、原稿種別が印画紙写真原稿、又は、文字印画紙写真原稿と判別され、色空間内位置信号が、ダーク領域、ブルー領域、ハイライト領域の場合に、図48及び図50に示される1次元LUT、3次元LUTを用いて処理を行うことが挙げられる。あるいは、印刷写真原稿、文字印刷写真原稿に対して、印画紙写真原稿、文字印画紙写真原稿とは異なる領域にダーク領域、ブルー領域、ハイライト領域用の色補正テーブルを設け、処理を行うようにしても良い。