以下、本発明の実施の形態について、図を用いて説明する。
(実施の形態1)
図1は本発明の実施の形態1における画像処理装置のブロック図である。このブロック図を説明する前に、本実施の形態における画像処理方法について図2から図6を用いて説明する。
図2は目標色度値曲線の説明図である。入力されたカラー画像信号は3次元の色空間にマッピングすることができる。図2では明度Lの軸21、色度CRの軸22、色度CBの軸23の3次元の色空間で表現している。なお、明度LをNTSC信号の輝度Y、色度CRを色差R−Y、色度CBを色差B−Yとしてもよいし、等色色空間の各要素を用いても良い。カラー画像信号としてRGB信号が入力された場合は、一般に良く知られた式で明度と色度の値に変換すればよい。図2において目標色度値曲線28は点24(記号O)、点25(記号A)、点26(記号B)、点27(記号Z)を結ぶ曲線である。なお、各点間を直線(線分)で結ぶことにより計算が容易になる。
本実施の形態では、目標色度値曲線は各明度値に1つの目標色度値をとるようにしている。なお、目標色度値曲線は、色調整したい要素によって複数設けてもよい。例えば、肌色用の目標色度値曲線、空色用の目標色度値曲線、および草木色用の目標色度値曲線の3つを設定してもよい。以降の実施の形態でも同様である。
目標色度値曲線28を色度CR,CBの2次元平面(色度面)に写像したものを図3に示す。すべての明度値に対する色度値を平面上に写像しているので、直線で結ばれた形状をしている。特定の明度値で3次元空間を切り取った場合、目標色度値は色度平面上の1点で表される。点25(記号A)の明度値をLa、色度値をCRa,CBaとすると、明度値Laの場合の目標色度値は点25の色度値CRa,CBaとなる。なお、図3では、平面上の例えば点25の座標をA(La,CRa,CBa)と示す。同様に明度値Lbの場合の目標色度値は点26(記号B)の色度値CRb,CBbとなる。また明度値Laより大きく明度値Lbより小さい場合の目標色度値は線分AB上の色度値となる。
ここで、入力されたカラー画像の1つの画素X(Lx,CRx、CBx)の明度値LxがLsの場合(Lx=Ls)を考える(Xは図示していない)。
図3に示すように、目標色度値は明度値Lsの場合の目標色度値曲線上の点29(記号S)の明度値CRs,CBsとなる。線分AB上の目標色度値CRsは点A、点Bの値を用いて下記(数1)、また目標色度値CBsは下記(数2)で表すことができる。
@0002
このように目標色度値は明度値に応じて与えられる。
次に、入力されたカラー画像の1つの画素X(Lx,CRx、CBx)をその目標色度値CRs,CBsに近づける方法について説明する。なお、以降の説明では2つの色度値をまとめた1つの記号での表現も用いる。例えば、CRs,CBsの場合はCsと表す。したがって、画素XはX(Lx、Cx)と表すこともできる。
色度値Cxを目標色度値Csに近づける場合、CsとCx間の色度の2次元平面内の距離を用いてもよいが、その場合、調整したい色の範囲が円もしくは単純な矩形領域に限定される。
そこで、本実施の形態では複数の三角形領域を用いて調整色度領域を構成することにより、調整したい色の範囲が複雑な領域でも高速に計算することができるようにした。以下、その方法について説明する。
図4は三角形領域を合成した調整色度領域の説明図である。本実施例における調整色度領域C0C1C2C3は三角形領域31〜34を合成したものである。この図において、調整色度領域35内の色度のみ目標色度値Csに近づける。なお、本実施の形態では、調整色度領域として三角形領域4つを合成した四角形領域を構成しているが、合成する三角形領域は4つに限定されるものではなく、3つ以上の三角形領域であればいくつでもよい。また、調整色度領域は凸領域の方が色の連続性を保つことができる。
入力されたカラー画像の1つの画素の色度値Cx(以降、入力色度値と呼ぶ)を目標色度値Csに近づける場合、入力色度値と目標色度値を結ぶ直線と調整色度領域の周囲の辺である三角形の各頂点を結んだ直線との交点の色度値と、目標色度値とを結ぶ線分において、入力色度値の内分比を調べる。この内分比を目標色度値および調整色度領域の境界に対する入力色度値の位置関係を評価するのに用いる。4つの三角形領域で構成された調整色度領域においては、一般に4つの内分比を求めることができる。そのうち適当な内分比を選択する。
図5は入力色度値と目標色度値を結ぶ直線と調整色度領域の周囲の三角形の各頂点を結ぶ直線との交点の説明図である。入力色度値Cxと目標色度値Csを結ぶ直線42と調整色度領域の周囲の三角形の頂点C0C1を結ぶ直線43は交点44で交わる。したがって、入力色度値Cxが目標色度値Csと交点44とを結ぶ線分をどのくらいの割合で内分しているかを計算することができる。同様に、直線C1C2との交点46、直線C2C3との交点48、直線C3C0との交点50を求めることができる。なお、入力色度値Cxが交点44のとき内分比「0」、入力色度値Cxが目標色度値Csのとき内分比「1」であるとすると、入力色度値Cxが交点46および交点48の場合は内分比は1より大きい値となる。
また、CsよりCxに近い交点は、調整色度領域が凸領域の場合、直線C0C1との交点より外に他の直線との交点が存在する。これにより、直線C0C1上にはない他の交点との内分比は直線C0C1の交点44の場合の内分比より大きくなる。したがって、最も小さい内分比が求める内分比となる。
次に、入力色度値が調整色度領域外に存在する場合(図5の点51の場合)を考える。この場合、点36の場合と同様に交点46,48は1より大きい値となる。交点50の場合は正の値となるが、交点44の場合は負の値となる。つまり、入力色度値が調整色度領域外に存在する場合は内分比が負の場合が発生する。したがって、最小の内分比が負の場合は色調整を行わないようにすればよい。
図6は三角形領域の説明図である。図6を用いて内分比Ki(x)を求める方法を説明する。ここで、iは調整色領域の周囲の三角形の各頂点の番号を示す。入力色度値Cx36の内分比Ki(x)は下記(数3)で求めることができる。
@0003
色度CRi,CBiは頂点61の色度値Ciで、色度CRi+1,CBi+1は頂点62の色度値Ci+1である。またCRs,CBsは目標色度値Cs29で、CRx,CBxが入力色度値Cx36である。
ここで注目すべき点は、入力色度値Cx36以外は明度値を所定の間隔で表す場合に予め求めておくことができる点である。例えば、明度値を整数値(0〜255)で表す場合、Csは256パターンのデータであり、また三角形領域の頂点である色度値Ci,Ci+1も固定値もしくは明度値によって変化する所定数のパターンのいずれかの値となる。したがって、分子のCRxの項の係数を分母で割った値も所定数のパターンの値を持ち、分子のCBxの項の係数を分母で割った値も同様で、分子の残りの項を分母で割った値も同じことがいえる。つまり、予め明度値によって変化するこれらの値を求めておけば、内分比Ki(x)は2回の乗算と2回の加算によって高速に求めることができるようになる。
調整色度領域内のすべての三角形領域において内分比Ki(x)を求め、つぎに最小のKmin(x)を求める。求めた最小の内分比を所定のしきい値Kth1と比較し、Kth1より小さい場合は内分比をKth1に変更する。Kth1の値としては例えば値「0」がある。所定のしきい値Kth1は調整色度領域内外の色調整を制限するためのものであり、特に調整色度領域外を全く変化させないか少し変化させるかを変えることもできる。
以上の内分比の選択式を以下の(数4)に示す。
@0004
また、求めた内分比をそのまま用いてもよいが、さらに所定のしきい値Kth2と比較して、Kth2よりも大きい場合はKth2に内分比を置き換える。Kth2としては、例えば値「0.6」がある。この場合の選択式は(数5)のように表すことができる。所定のしきい値Kth2は、目標色度値近辺の入力色度値を目標色度値へ近づける場合の変化を抑える働きをしている。
@0005
ここでnは調整色度領域における三角形領域の数である。Km(x)が求める内分比である。
このように調整色度領域を三角形領域で合成し、各三角形領域に対応する内分比を求めれば、調整色度領域が円や単純な矩形の領域でなくとも、目標色度値および調整色度領域の境界に対する入力色度値の位置関係を簡単に定めることができる。
この内分比Km(x)を用いて入力色度値Cxから出力色度値Cx’63を求める。以下にCR’x,CB’xを求めるための式の一例を示す。
@0007
これらの式に従えば、入力色度値Cxが目標色度値Csと調整色度領域の境界との中間にあるときには、入力色度値Cxと較べて出力色度値Cx’は大きく目標色度値Csに近づき、入力色度値Cxが目標色度値Csや調整色度領域の境界近傍にあるときには、入力色度値Cxとあまり変わらない。これにより、色の自然さが損なわれない。
なお、所定のしきい値Kth1,Kth2を固定値としたが、明度値や変えたい色(目標色度値)によって変化させてもよい。
以上の画像処理方法をハードウェアで実現したものが、図1に示す画像処理装置である。この画像処理装置は、色調整手段1、目標色度値曲線発生手段2、目標色度値発生手段3、および色調整係数発生手段4を備えている。
目標色度値曲線発生手段2から目標色度値曲線情報16が出力される。目標色度値発生手段3は目標色度値曲線情報16と入力明度値13を用いて目標色度値17,18を出力する。色調整係数発生手段4は目標色度値17,18および入力色度値11,12を用いて色調整を行うための色調整係数19を生成する。ここで、色調整係数19としては内分比を用いるとよい。なお、色調整係数を生成する場合に明度値13をさらに用いてもよい。色調整手段1は色調整係数19と目標色度値17,18を用いて、入力色度値11,12の値を調整し、出力色度値14,15を出力する。
目標色度値発生手段3はルックアップテーブル(もしくは計算)を用い、明度値13を入力として、色度値17,18を生成すればよい。前述の画像処理方法の説明における入力明度値Lxから目標色度値Cs(CRs,CBs)を求める方法で目標色度値曲線として複数の直線を合成したものを用いれば、直線の方程式から容易に目標色度値Csを求めることができる。
図7は色調整係数発生手段4の一例である第1色調整係数発生回路のブロック図である。第1色調整係数発生回路は、内分比計算係数発生手段71、内分比計算手段72、および内分比選択手段73を備える。目標色度値発生手段3から出力された目標色度値17,18は内分比計算係数発生手段71に入力される。内分比計算係数発生手段71は、目標色度値17,18および調整色度領域の周囲の頂点である三角形領域の頂点の色度値を用いて、内分比を計算するための係数を発生する。内分比計算係数は複数の三角形領域ごとに求める。なお、内分比を計算するために用いる調整色度領域を明度値13によって変化させてもよい。内分比計算手段72は、内分比計算係数発生手段71から出力される複数の内分比計算係数81と入力色度値11,12を用いて各三角形領域における複数の内分比82を求める。内分比選択手段73は、内分比計算手段72から出力される複数の内分比82およびしきい値を用いて内分比19を選択する。
図8は図7に示す内分比計算係数発生手段71の一例である内分比計算係数発生回路のブロック図である。内分比計算係数発生回路は、減算器91〜95、加算器96、乗算器97〜101、除算器102〜104を備える。内分比計算係数発生回路は、前述の画像処理方法で説明した(数3)の分子の第1項のCRxの係数を分母で割った値81Ai、分子の第2項のCBxの係数を分母で割った値81Bi、分子の残りの項を分母で割った値81Ciを求める回路である。
三角形領域の頂点iの色度値CRi(信号線110)から別の頂点i+1の色度値CRi+1(信号線111)が減算器92で引かれ、演算結果は信号線115に出力され、目標色度値発生手段3から出力された信号線18の目標色度値CBsと乗算器99で乗算される。得られた信号線120の値が(数3)の分母の第1項の値である。同様に、目標色度値発生手段3から出力された信号線17の目標色度値CRsが信号線111の色度値CRi+1から減算器93で引かれ、演算結果(信号線116)は乗算器100で信号線112の三角形領域の頂点iの色度値CBiと乗算される。得られた信号線121の値が(数3)の分母の第2項である。また、目標色度値CRs(信号線17)から、信号線110の色度値CRiが減算器91で引かれ、演算結果(信号線114)は、信号線113の三角形領域の頂点i+1の色度値CBi+1と乗算器101で乗算される。得られた信号線123の値が(数3)の分母の第3項である。加算器96は信号線120,121,123の値を加算し、得られた(数3)の分母の値を信号線124に出力する。
減算器95は、信号線113の色度値CBi+1から信号線112の色度値CBiを引き、結果を信号線122に出力する。この値が(数3)の分子のCRxの係数となる。除算器104は、信号線122の値を(数3)の分母の値である信号124の値で割る。したがって、除算器104からは、(数3)のCRxの係数(信号線81Ai)が出力されることになる。
また、除算器102は、信号線115の値を(数3)の分母の値を示す信号線124の値で割るので、CBxの係数(信号線81Bi)が求められることになる。
乗算器97は、信号線111の色度値CRi+1に信号線112の色度値CBiを乗算し、結果を信号線117に出力する。また、乗算器98は信号線110の色度値CRiに信号線113の色度値CBi+1を乗算し、結果を信号線118に出力する。これらの値は減算器94で減算され、結果は信号線119に出力される。除算器103は、信号線119の値を信号線124の(数3)の分母の値で割る。したがって、入力色度値CRx,CBxの係数以外の値が信号線81Ciに出力されることになる。
なお、図8では1つの三角形領域での内分比計算係数を発生させる回路について説明したが、他の複数の三角形領域の場合も同様の回路を複数構成することによって実現できる。
図9は図7に示す内分比計算手段72の一例である内分比計算回路のブロック図である。内分比計算回路131〜134は、乗算器135,136、加算器137を備える。なお、ブロック132〜134はブロック131と同じ構成で実現できる。
内分比計算係数発生手段71から出力された内分比計算係数81A0,81B0,81C0を通してブロック131へ入力される。なお、信号線の添え字の「0」は1つ目の三角形領域の内分比計算係数であることを示している。信号線11から入力される入力画像の色度値CRxは、乗算器135で、信号線81A0の値である(数3)のCRxの係数と乗算され、結果は信号線141へ出力される。同様に信号線12から入力される入力画像の色度値CBxは、乗算器136で、信号線81B0の値である(数3)のCBxの係数と乗算され、結果は信号線142へ出力される。加算器137は信号線141の値と信号線142の値、そして(数3)の残りの項の値を示す信号線81C0の値を加算し、得られた内分比K0(x)を信号線82Aに出力する。
本実施の形態では4つの三角形領域で調整色度領域を構成している。したがって、2つ目の三角形領域の内分比計算係数は信号線81A1,81B1,81C1を通してブロック132へ入力され、内分比K1(x)は信号線82Bに出力される。また、3つ目の三角形領域の内分比計算係数は信号線81A2,81B2,81C2を通してブロック133へ入力され、内分比K2(x)は信号線82Cに出力される。同様に、4つ目の三角形領域の内分比計算係数は信号線81A3,81B3,81C3を通してブロック134へ入力され、内分比K3(x)は信号線82Dに出力される。
図10は図7に示す内分比選択手段73の一例である第1内分比選択回路のブロック図である。第1内分比選択回路151は、比較器152〜155、セレクタ156〜159を備えている。
第1内分比選択回路151は、複数の内分比の最小値を求めて所定のしきい値Kth1と比較し、最小の内分比が所定のしきい値Kth1より小さい場合は内分比としてKth1を出力し、それ以外の場合は最小の内分比を出力する回路である。また、三角形領域は4つある場合を示している。
1つ目の三角形領域における内分比は信号線82Aから比較器152に入力されるとともに、セレクタ156にも入力される。また、2つ目の三角形領域における内分比は信号線82Bから比較器152に入力され、セレクタ156にも入力される。比較器152は1つ目と2つ目の内分比を比較し、その結果を信号線161に出力する。セレクタ156は信号線161の比較結果をもとに小さい方の内分比の値を信号線162に出力する。3つ目の三角形領域における内分比は信号線82Cに入力され、また4つ目の三角形領域における内分比は信号線82Dに入力され、比較器153で比較される。比較結果は信号線163に出力され、その結果を受けてセレクタ157は小さい方の内分比を信号線164に出力する。信号線162,164の内分比は比較器154で比較され、その結果は信号線165に出力される。セレクタ158は比較器154の結果に基づき、小さい方の内分比を信号線166に出力する。したがって、信号線166には4つの三角形領域における内分比の最小値が出力されることになる。信号線167からは所定のしきい値Kth1が入力される。所定のしきい値Kth1としては、例えば値「0」がある。比較器155は、最小の内分比とKth1を比較し、比較結果を信号線168に出力する。セレクタ159は比較結果から、大きい方の値を内分比として信号線19に出力する。
図11は図7に示す内分比選択手段73の他の例である第2内分比選択回路のブロック図である。第2内分比選択回路は、図10で示したブロック151に加え、比較器171、セレクタ172を備える。
ブロック151から出力される内分比は信号線182に出力される。信号線181からは所定の第2のしきい値Kth2が入力される。Kth2としては例えば値「0.6」がある。比較器171は信号線182の内分比とKth2を比較し、比較結果を信号線183に出力する。セレクタ172は小さい方の値を最終的な内分比として信号線19に出力する。これは前述の画像処理方法で説明した(数4)を実現するための回路である。
図12は図1に示す色調整係数発生手段4の他の例である第2色調整係数発生回路のブロック図である。第2色調整係数発生回路は、内分比計算係数発生手段191、内分比計算係数記憶手段192、内分比計算手段193、内分比選択手段194を備えている。
目標色度値発生手段3から出力された目標色度値17,18は内分比計算係数発生手段191に入力される。内分比計算係数発生手段191は、目標色度値17,18、および調整色度領域の周囲の頂点である三角形領域の頂点の色度値を用いて、内分比を計算するための係数を発生する。内分比計算係数201は複数の三角形領域ごとに求める。なお、内分比を計算するために用いる調整色度領域を明度値によって変化させてもよい。内分比計算係数発生手段191から出力される内分比計算係数201は、内分比係数記憶手段192に記憶される。以上の処理を入力画像の取りうるすべての明度値に対して行う。例えば、明度値が0〜255のレベルをとる場合は、256パターンの内分比計算係数を記憶することになる。これらを前処理として実行する。
内分比計算係数記憶手段192は、入力画像の明度値13が入力されると、三角形領域ごとの内分比計算係数202を内分比計算手段193に出力する。内分比計算手段193は、複数の内分比計算係数202と入力色度値11,12を用いて、各三角形領域における複数の内分比203を求める。内分比選択手段194は、内分比計算手段193から出力される複数の内分比203およびしきい値を用いて内分比19を選択する。
内分比計算係数発生手段191、内分比計算手段193、内分比選択手段194はそれぞれ、図7に示す第1色調整係数発生回路で説明した内分比計算係数発生手段71、内分比計算手段72、内分比選択手段73と同様の回路によって構成することができる。また、内分比計算係数記憶手段192はルックアップテーブル(メモリ)で実現することができる。
図12の構成をとることにより、入力明度値ごとに内分比計算係数を計算する必要がなくなり、内分比の計算を高速に行うことができるようになる。
なお、内分比計算係数発生手段191を用いずに、予めパソコン等計算した内分比計算係数を内分比計算係数記憶手段192に記憶させておいてもよい。
図13は図1に示す色調整手段1の一例である色調整回路211,212のブロック図である。色調整回路211,212は、乗算器213,214、減算器215、加算器216を備える。ブロック211は調整される色度値CR’xを求めるための回路で、ブロック212は色度値CB’xを求めるためのものである。ブロック212はブロック211と同様の回路で実現できる。
信号線17から入力される目標色度値CRsと信号線19から入力される内分比Km(x)は乗算器213で乗算される。信号線221からは値「1」が入力され、1−Km(x)の値が減算器215から信号線222に出力される。乗算器214は、信号線11から入力される入力色度値CRxに減算器215からの出力を乗算し、結果を信号線224に出力する。加算器216は信号線223,224の値を加算し、出力色度値CR’xを信号線14に出力する。同様に、信号線18からは目標色度値CBs、信号線12からは入力色度値CBxが入力され、ブロック212は信号線15に出力色度値CB’xを出力する。
以上の構成を取ることにより実施の形態1における画像処理装置では、目標色度値を明度値によって変化させるので、出力される画像の色が均一で不自然になることが防止される。
また、調整する色空間を円や単純な矩形に限定する必要がなくなるので、より自然な画像を高速に得ることができるようになる。
(実施の形態2)
図14は本発明の実施の形態2における画像処理装置を示すブロック図、図15は目標値表示手段の一例である目標値表示装置を示す説明図である。
図14に示す画像処理装置は、色調整手段231、目標色度値曲線発生手段232、目標色度値発生手段233、色調整係数発生手段234、および目標色度値表示手段236を備えている。
目標色度値曲線発生手段232は、目標色度値曲線情報246を目標色度値発生手段233へ出力する。また、目標色度値曲線発生手段232は、目標色度値表示手段236へ表示用の目標色度値曲線情報250を出力する。目標色度値曲線情報246と表示用の目標色度値曲線情報250は同じ情報でもよい。目標色度値表示手段236は、表示用の目標色度値曲線情報250を用いて目標色度値曲線を画像データに変換して表示する。目標色度値発生手段233は、目標色度値曲線情報246と入力明度値243を用いて目標色度値247,248を出力する。色調整係数発生手段234は、目標色度値247,248および入力色度値241,242を用いて色調整を行うための色調整係数249を生成する。色調整係数249としては内分比を用いるとよい。なお、利用者が目標色度値表示手段236で表示される画像を見て色調整中止信号251を入力した場合、色調整係数発生手段234は色調整を行わないような色調整係数249を出力する。なお、色調整係数を生成する場合に、明度値243をさらに用いてもよい。色調整手段231は、色調整係数249と目標色度値247,248を用いて、入力色度値241,242の値を調整し、出力色度値244,245を出力する。
ここで、図14に示す実施の形態2の画像処理装置が図1に示す実施の形態1における画像処理装置と異なるのは、目標色度値表示手段236を備えた点であり、その他は実施の形態1の画像処理装置と同じ手段で実現される。
色調整処理は自然の色や人の記憶色をベースに行うことが多いが、色が利用者の感性とずれていたり、実際に入力画像が設定した記憶色と異なっている場合もある。その場合、一様に目標色に向けて色調整を行っても求める画像とはならない。そこで、目標色度値表示手段236を設け、目標色度値曲線上の色を表示する。利用者は表示された色をもとに色調整処理を行うか否かを決めればよい。利用者が色調整しない場合、色調整中止信号251を用いて、内分比として値「0」が信号線249から出力するようにすればよい。これは、色調整係数発生手段234の出力段にセレクタを入れれば回路を構成できる(図示せず)。
図15は目標色度値表示手段236の一例である目標色度値表示装置の説明図である。目標色度値表示装置は、目標色度値曲線の明度値に従って目標の色を表示する。図15では明度値が低い方261から高い方262へ目標の色を表示する形状にしている。これにより、あらゆる明度値において、どの色に近づいていくかを利用者が目視で確認できるようになる。なお、目標色度値表示手段236の表示形式はこれに限られるものではない。
以上の構成をとることにより、利用者が色調整をするか否かを調整前に決定できるようになり、無駄なプリントアウトをしなくてもよくなる。
(実施の形態3)
図16は本発明の実施の形態3における画像処理装置を示すブロック図、図17は目標色度値曲面を示す説明図、図18は2次元平面に写像した2つの目標色度値曲線を示す説明図、図19は2次元平面に写像した目標色度値曲線の選択方法を示す説明図、図20は目標色度値曲線選択手段の一例である目標色度値曲線選択装置を示す説明図である。
先ず、画像処理装置を説明する前に、本実施の形態の画像処理方法について図17から図19を用いて説明する。
図17は目標色度値曲面の説明図である。図17は、図2と同様に、明度Lの軸301、色度CRの軸302、色度CBの軸303で表現される色空間である。図2では目標色度値曲線について説明したが、本実施の形態では目標色度値曲面を設定し、目標色度値曲面から目標色度値曲線を選択する。目標色度値曲面として、本実施の形態では2つの目標色度値曲線を含む領域を設定している。また、目標色度値曲線としては3つの線分を接続することによって実現している。つまり、点304(記号O)、点305(記号E)、点306(記号F)、点307(記号Z)、点308(記号G)、そして点309(記号H)を通る曲面である。面にしたことにより、1つの明度値に対して複数の色度値を持つことになる。
図18は2次元平面(色度平面)に写像した2つの目標色度値曲線の説明図である。1つ目の目標色度値曲線311は、点E、点Fを通る複数の直線で構成された曲線であり、もう1つの目標色度値曲線312は、点G、点Hを通る複数の直線で構成された曲線である。説明を簡単にするため、点E、点Gの明度値は等しいとし、また点F、点Hの明度値も等しいとする。また、線分EFおよび線分GHのみを用いて説明する。
利用者が目標色度値曲線(直線)を選択する場合、目標色度値曲線の一端は点Eと点Gを結ぶ線分EGの間(矢印313)になるようにする。また、目標色度値曲線のもう一方の一端は点Fと点Hを結ぶ線分FHの間(矢印314)になるようにする。こうすることによって、利用者は目標色度値曲線を選択できる。
図19は2次元平面に写像した目標色度値曲線の選択方法の説明図である。選択した目標色度値曲線上の点321(記号P)、および点322(記号Q)を求める。点Eの明度をLeと2つの色度値をCRe,CBeとし、E(Le,CRe,CBe)と表す。同様に、点G、点Pはそれぞれ、G(Lg,CRg,CBg)、P(Lp、CRp、CBp)と表すと点Pの色度値は以下の式で表すことができる。
@0009
ここで、Wは利用者が調整する間隔を示し、posは調整点(利用者が選択した点)を示す。例えば、Wを値「10」とし、調整点posが0〜10の整数値をとるように設定できる。
(数8)および(数9)を用いることによって、点Pの色度値を求めることができる。なお、点Eと点Gの明度値が異なる場合は、明度値についても補間を行えばよい。点Fと点Hについても同様で、点Qの色度値を求めることができる。
図16に示す画像処理装置は、色調整手段271、目標色度値曲面発生手段272、目標色度値曲線選択手段275、目標色度値発生手段273、色調整係数発生手段274を備えている。
目標色度値曲面発生手段272は、目標色度値曲面情報290を目標色度値曲線選択手段275に出力する。目標色度値選択手段275では、利用者が目標色度値曲線を選択する。選択方法としては、予め定めておいた情報、例えば赤っぽい肌色や黄色っぽい肌色などの情報をもとに利用者が選択する方法がある。選択された目標色度値曲線情報291は、目標色度値発生手段273へ出力される。
目標色度値発生手段273は、目標色度値曲線情報291と入力明度値283を用いて目標色度値287,288を出力する。色調整係数発生手段274は、目標色度値287,288および入力色度値281,282を用いて色調整を行うための色調整係数289を生成する。色調整係数289としては内分比を用いるとよい。なお、色調整係数を生成する場合に明度値283をさらに用いてもよい。色調整手段271は、色調整係数289と目標色度値287,288を用いて、入力色度値281,282の値を調整し、出力色度値284,285を出力する。
図16に示す本実施の形態の画像処理装置が図1に示す実施の形態1における画像処理装置と異なるのは、目標色度値曲線発生手段2の代わりに、目標色度値曲面発生手段272と目標色度値曲線選択手段275を用いて、目標色度値曲線を生成する点であり、その他は図1に示す画像処理装置と同じ回路で実現される。
図20は目標色度値曲線選択手段278の一例である目標色度値曲線選択装置の説明図である。目標色度値曲線選択装置331は可動部332を備えており、可動部332は可動範囲333の間を動く。この可動範囲が(数8)および(数9)における間隔Wに相当し、可動部332の位置が調整点posを示す。つまり、可動部332を動かすことによって目標とする色度値曲線が変化することになり、変化した後の目標色度値曲線情報291が目標色度値発生手段273に出力される。
以上の構成をとることにより、利用者が目標色度値曲線自体を選択できるようになるため、利用者が望む色を目標として調整できるようになる。
(実施の形態4)
図21は本発明の実施の形態4における画像処理装置を示すブロック図である。
図21に示す画像処理装置は、色調整手段341、目標色度値曲面発生手段342、目標色度値曲線選択手段345、目標色度値表示手段346、目標色度値発生手段343、色調整係数発生手段344を備えている。
目標色度値曲面発生手段342は、目標色度値曲面情報356を目標色度値曲線選択手段345に出力する。目標色度値選択手段345では、利用者が目標色度値曲線を選択できるが、まず標準の目標色度値曲線情報358を目標色度値表示手段346に出力する。目標色度値表示手段346は、目標色度値曲線情報358を用いて目標色度値を明度値ごとに表示する。利用者は目標色度値表示手段346で表示された画像をもとに目標色度値曲線選択手段345で好みの目標色度値曲線を選択する。選択された目標色度値曲線情報358は目標色度値表示手段346に入力され、選択された目標色度値の画像が表示される。最終的に目標色度値曲線選択手段345で選択された目標色度値曲線情報は357は、目標色度値発生手段343へ出力される。目標色度値発生手段343は、目標色度値曲線情報357と入力明度値353を用いて目標色度値359,360を出力する。色調整係数発生手段344は、目標色度値359,360および入力色度値351,352を用いて色調整を行うための色調整係数361を生成する。色調整係数361としては内分比を用いるとよい。なお、色調整係数を生成する場合に明度値353をさらに用いてもよい。色調整手段341は、色調整係数361と目標色度値359,360を用いて入力色度値351,352の値を調整し、出力色度値354,355を出力する。
図21に示す本実施の形態の画像処理装置が図16に示す実施の形態3における画像処理装置と異なるのは、目標色度値表示手段346を備えた点であり、その他は実施の形態3の画像処理装置と同じ手段で実現される。また、目標色度値表示手段346は、図14に示す実施の形態2における画像処理装置の目標色度値表示手段236と同様の手段で実現される。
以上の構成をとることにより、目標色度値曲線選択手段345で選択した目標色度値曲線の情報を目標色度値表示手段346で表示できるので、微妙な色を目視しながら設定できるようになり、利用者の好みの画像を得ることができるようになる。
(実施の形態5)
図22は本発明の画像処理技術をソフトウェアで実現するためのCPUシステムを示すブロック図である。なお、このCPUシステムは、実施の形態5から8における画像処理用プログラムを実現するときに用いられる。
図22に示すCPUシステムは、CPU(セントラル・プロセッシング・ユニット)372、ROM(リード・オンリー・メモリ)371、RAM(ランダム・アクセス・メモリ)373、入出力ポート374からなる。
このCPUシステムにおいて、CPU372はROM371に格納されているプログラムを作業メモリであるRAM373を使い実行する。入出力ポート374は画像の入力382および出力383を行う。画像データは入出力ポート374からRAM373に転送され、ROM371のプログラムに従い、画像処理が実行される。なお、プログラムを入出力ポート374からバス381を通し、RAM373に転送して、RAM上で実行してもよい。処理が終わると画像データは入出力ポート383を通して出力される。なお、画像処理はパーソナルコンピュータやワークステーション等の上で行ってもよい。
図23は本発明の実施の形態5における画像処理用プログラムのフローチャートである。実施の形態5における画像処理用プログラムは、実施の形態1における画像処理装置の処理内容をソフトウェア化したものである。
なお、実施の形態5から8において説明する画像処理用プログラムは、コンピュータ読み取り可能なHDD、MO、FD、CD−ROMなど、種々の記録形態の情報記録媒体に格納することができる。
本発明の画像処理用プログラムがスタートする(ステップ1)と、まずステップ2で初期設定を行う。初期設定ではまず、目標色度値曲線情報を設定する。ステップ3で、入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、よく知られた色空間の変換を行う。例えば、RGB信号からY,R−Y,B−Y信号に変換する。ステップ4では、注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ5では、ステップ4で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いてもよい。ステップ6では、ステップ5で得られた色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ7では、全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ3に戻り、全画素終了した場合は色調整処理を終わる(ステップ8)。
図24は図23で示した色調整係数生成ステップ5の内容をより詳しく説明したフローチャートである。
ステップ11では、前述した内分比計算係数を生成する。生成した内分比計算係数を用いてステップ12では、1つ目の三角形領域での内分比を計算する。ステップ13では、調整色度領域を構成するすべての三角形領域について内分比を求めたかをチェックし、すべて終了していない場合はステップ11に戻る。すべての三角形領域における内分比の計算が終了したら、ステップ14で内分比を選択する。
なお、ステップ2の初期設定で、図12で説明したように内分比計算係数をすべての明度値について予め計算し、テーブル化(配列化)しておくと、全体の処理時間を短くすることができる。この場合、ステップ4の目標色度値発生は必要なく、ステップ3で注目画素の読み取りを行って得られた明度値、および色度値を用いて、ステップ5で色調整係数を直接生成する流れとなる。したがって、ステップ11の内分比計算係数生成をステップ2内で行うことになる。なお、高速化方法については以降の実施の形態でも同じである。
(実施の形態6)
図25は本発明の実施の形態6における画像処理用プログラムのフローチャートである。実施の形態6における画像処理用プログラムは実施の形態2における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ21)と、まずステップ22で、予め設定した目標色度値曲線の情報を用いて、各明度値に対応した目標色度値画像を表示する。なお、目標色度値画像は入出力ポート374を通して、表示装置に出力されるようにすればよい。利用者は表示された目標色度値画像をもとに色調整を行うか否かをステップ23で選択する。色調整を行わない場合、ステップ30に進んで処理を終了する。色調整を行う場合、ステップ24で初期設定を行う。初期設定ではまず、目標色度値曲線情報を設定する。ステップ25で、入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、よく知られた色空間の変換を行う。例えば、RGB信号からY,R−Y,B−Y信号に変換する。ステップ26では、注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ27では、ステップ26で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いてもよい。ステップ28では、ステップ27で得られた色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ29では、全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ25に戻り、全画素終了した場合は色調整処理を終わる(ステップ30)。
(実施の形態7)
図26は本発明の実施の形態7における画像処理用プログラムのフローチャートである。実施の形態7における画像処理用プログラムは実施の形態3における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ31)と、まずステップ32で、目標色度値曲面から目標色度値曲線を選択する。ステップ33の初期設定ではまず、目標色度値曲線情報を設定する。ステップ34で、入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、よく知られた色空間の変換を行う。例えば、RGB信号からY,R−Y,B−Y信号に変換する。ステップ35では、注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ36では、ステップ35で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いてもよい。ステップ37では、ステップ36で得られた色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ38では、全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ34に戻り、全画素終了した場合は色調整処理を終わる(ステップ39)。
(実施の形態8)
図27は本発明の実施の形態8における画像処理用プログラムのフローチャートである。実施の形態8における画像処理用プログラムは実施の形態4における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ41)と、まずステップ42で、予め設定した目標色度値曲線の情報を用いて、各明度値に対応した目標色度値画像を表示する。なお、目標色度値画像は入出力ポート374を通して、表示装置に出力されるようにすればよい。利用者は表示された目標色度値画像をもとに、この目標色度値曲線で色調整を行うか否かをステップ43で選択する。この目標色度値曲線で色調整を行わない場合、ステップ44に進んで目標色度値曲線を選択(調整)する。ステップ42〜44を繰り返し、利用者が好みの目標色度値曲線を選択する。目標色度値曲線が選択されると、ステップ45で初期設定を行う。初期設定ではまず、選択された目標色度値曲線情報を設定する。
ステップ46で、入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、よく知られた色空間の変換を行う。例えば、RGB信号からY,R−Y,B−Y信号に変換する。ステップ47では、注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ48では、ステップ47で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いてもよい。ステップ49では、ステップ48で得られた色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ50では、全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ46に戻り、全画素終了した場合は色調整処理を終わる(ステップ51)。
(実施の形態9)
実施の形態1のように、得られた内分比Km(x)を色調整にそのまま使わず、所定の値を乗算して変化の度合いを制御することもできる。
すべての明度値に対して内分比Km(x)を用いて出力色度値Cx’63を求めても良いが、変化させたい色の明度値を限定することによって、不要な色の変化を防ぐことができる。例えば、緑色の色調整を行う場合、明度値が高い緑は草木の緑ではない可能性が高く、一様に変化させると画質が劣化する場合がある。
そこで、Km(x)に明度値ごとに定めた第1ゲインG(L)を乗じることにより、内分比Km(x)を擬似的に小さくして色の変化を抑制する。図28は第1ゲインGの説明図である。点392(記号T)から点393(記号U)までは内分比Km(x)を変化させずにそのまま用いる。すなわち、第1ゲインGを1.0にする。点392(記号T)は図2における点25(記号A)と同じ明度値とし、点393(記号U)を図2における点26(点B)と同じ明度値としてもよい。T〜U領域以外の明度部分については第1ゲインを減衰させていく。T〜U領域内の一点の第1ゲインを1.0とし、その点から離れるに従って減衰させる方法もあるが、一般に色調整したい色の明度値が1点であることは少なく、実用的ではない。
@0010
ここでG(Lx)は入力明度値Lxでの第1ゲインを示す。(数10)により求めた修正した内分比Kg(x)を用いて入力色度値Cxから出力色度値Cx’63を求める。以下の(数11)(数12)に、CR’x,CB’xを求めるための式の一例を示す。
@0012
このような第1ゲインを用いる画像処理方法をハードウェアで実現したものが、図29に示す画像処理装置である。この画像処理装置は色調整手段1、目標色度値曲線発生手段2、目標色度値発生手段3、および色調整係数発生手段4に加えて、第1ゲイン生成手段5、および第1色調整係数修正手段6を備えている。
第1ゲイン生成手段5は明度値13を用いて、第1ゲイン10を生成する。第1色調整係数修正手段6では色調整係数19に第1ゲイン10を乗じて色調整係数19を修正して修正色調整係数20を生成する。この実施の形態では、色調整手段1は修正色調整係数20と目標色度値17,18を用いて、入力色度値11,12の値を調整し、出力色度値14,15を出力する。
図30はこの第1ゲイン生成手段5の一例である第1ゲイン生成回路、および第1色調整係数修正手段6の一例である第1色調整係数修正回路のブロック図である。第1ゲイン生成回路はルックアップテーブル401で構成することができる。ルックアップテーブルに格納する第1ゲインのデータとして図28で示したデータがある。なお、ルックアップテーブルの代わりに図28に示すゲインデータ値を入力明度値に応じて毎回計算しても良い。
第1ゲイン生成回路から出力された第1ゲイン10は第1色調整係数修正回路に入力される。第1色調整係数修正回路は乗算器402で生成することができる。第1色調整係数修正回路6に入力された色調整係数である内分比19は乗算器402で第1ゲインと乗算され、第1修正色調整係数20として出力される。
この場合、色調整回路では、図31に示すように、信号線17から入力される目標色度値CRsと信号線20から入力される第1修正色調整係数である内分比Kg(x)は乗算器213で乗算される。信号線221からは値「1」が入力され、1−Kg(x)の値が減算器215から信号線222に出力される。乗算器214は信号線11から入力される入力色度値CRxに、減算器215からの出力を乗算し、結果を信号線224に出力する。加算器216は信号線223,224の値を加算し、出力色度値CR’xを信号線14に出力する。同様に信号線18からは目標色度値CBs、信号線12からは入力色度値CBxが入力され、ブロック212は信号線15に出力色度値CB’xを出力する。
以上の構成を取ることにより実施の形態9における画像処理装置では、目標色度値を明度値によって変化させ、出力される画像の色が均一で不自然になることを防ぎ、さらに入力明度値から第1ゲインを生成して、不要な明度値における色調整を抑制するので、色調整による画質の劣化を防ぎ高画質を得ることができるようになる。
(実施の形態10)
図32は本発明の実施の形態10における画像処理装置のブロック図である。この画像処理装置は色調整手段231、目標色度値曲線発生手段232、目標色度値発生手段233、色調整係数発生手段234、第2ゲイン生成手段411、そして第2色調整係数修正手段412を備えている。
目標色度値曲線発生手段232は目標色度値曲線情報246を目標色度値発生手段233へ出力する。目標色度値発生手段233は目標色度値曲線情報246と入力明度値243を用いて目標色度値247,248を出力する。色調整係数発生手段234は目標色度値247,248および入力色度値241,242を用いて色調整を行うための色調整係数249を生成する。色調整係数249としては内分比を用いると良い。第2ゲイン生成手段411は、入力色度値241,242を用いて、無彩色に近いほど小さくなる第2ゲイン421を生成する。第2色調整係数修正手段412は、色調整係数249を第2ゲイン421を用いて修正し、修正色調整係数251を生成する。色調整手段231は修正色調整係数251と目標色度値247,248を用いて、入力色度値241,242の値を調整し、出力色度値244,245を出力する。
実施の形態9における画像処理装置と異なるのは、第1ゲイン生成手段の代わりに第2ゲイン生成手段411を備え、第1色調整係数修正手段の代わりに第2色調整係数修正手段412を備えた点であり、その他の手段は実施の形態1の画像処理装置と同じ手段で実現できる。
図33は第2ゲインの説明図である。第2ゲインは有彩色から無彩色(原点O)に近づくにつれて小さくなるゲインである。色調整を行う場合、有彩色部分の変化に比べ、無彩色部分の変化に対して人間は敏感である。本来、無彩色である物に色がついている場合、同じ色差であっても有彩色の色の変化よりも不自然さを覚えやすい傾向にある。そこで、無彩色に近づくほど小さくなる第2ゲインを設けて、無彩色に近い色の調整を抑制する。図33では、円437内部の入力色度値の場合(例えば入力色度値436)に、第2ゲインを1.0以下にして、色調整係数を擬似的に小さくするようにしている。
図34は第2ゲインの変動の説明図で、横軸が原点からの距離、縦軸が第2ゲインを表している。点446の距離447が、図33における原点Oから目標色度値Csまでの色度平面上の距離に相当する。このときの第2ゲインを1.0とし、原点に近いほど、第2ゲインを小さくする。なお、第2ゲインを生成する方法はこれに限られるものではない。
図35は図32における第2ゲイン生成手段411の実施例である第2ゲイン生成回路と、第2色調整係数修正手段412の実施例である第2色調整係数修正回路のブロック図を示したものである。第2ゲイン生成回路は、乗算器451,452、加算器453、ルックアップテーブル454を備えている。
入力色度値CRx241は乗算器451で2乗され、同様に入力色度値CBx242も乗算器452で2乗される。2乗された値461,462は加算器453で加算され、得られた値463はルックアップテーブル454に入力される。
ルックアップテーブルは、原点Oからの距離に応じて、第2ゲイン421を出力する。なお、ルックアップテーブルに入力する前に値463の平方根を計算して原点Oからの距離を生成しても良い。
第2色調整係数修正回路は乗算器455で構成することができる。色調整係数249と第2ゲイン421が乗算器455で乗算され、修正色調整係数422が生成される。
以上のように無彩色に近いほど小さくなる第2ゲインで色調整係数を修正することにより、色調整による不用意な無彩色に近い部分の色の変化を抑制できるようになり高画質を得ることができる。
(実施の形態11)
図36は本発明の実施の形態11における画像処理装置のブロック図である。この画像処理装置は色調整手段471、目標色度値曲線発生手段472、目標色度値発生手段473、色調整係数発生手段474、第1ゲイン生成手段476、第2ゲイン生成手段475、第3色調整係数修正手段478を備えている。
目標色度値曲線発生手段472は目標色度値曲線情報486を目標色度値発生手段473へ出力する。目標色度値発生手段473は目標色度値曲線情報486と入力明度値483を用いて目標色度値487,488を出力する。色調整係数発生手段474は目標色度値487,488および入力色度値481,482を用いて色調整を行うための色調整係数489を生成する。色調整係数489としては内分比を用いると良い。なお、色調整係数を生成する場合に明度値483をさらに用いてもよい。第1ゲイン生成手段476は明度値483を用い第1ゲイン492を生成する。第2ゲイン生成手段475は、入力色度値481,482と目標色度値487,488を用いて、無彩色に近いほど小さくなる第2ゲイン491を生成する。第3色調整係数修正手段478は、色調整係数489を第1ゲイン492と第2ゲイン491を用いて修正し、修正色調整係数490を生成する。色調整手段471は修正色調整係数490と目標色度値487,488を用いて、入力色度値481,482の値を調整し、出力色度値484,485を出力する。
実施の形態9における画像処理装置と異なるのは、第2ゲイン生成手段475が付加され、第1色調整係数修正手段の代わりに第3色調整係数修正手段478を備えた点であり、その他の手段は実施の形態9の画像処理装置と同じ手段で実現できる。
図37は第2ゲイン生成手段475の一例である(別の)第2ゲイン生成回路のブロック図である。第2ゲイン生成回路は、乗算器501〜504、加算器505,506、除算器507、ルックアップテーブル508を備える。
入力色度値CRx481は乗算器503で2乗され、同様に入力色度値CBx482も乗算器504で2乗される。2乗された値513,514は加算器506で加算され、得られた値516は除算器507に入力される。同様に目標色度値487,488の値もそれぞれ2乗されて加算され、得られた値515は除算器507に入力される。除算器507は値516の値515に対する比を求める。
比517はルックアップテーブル508に入力される。比517が1以上の場合、ルックアップテーブルは第2ゲイン491を1.0とし、1より小さい場合はその平方根の値を第2ゲイン491として出力する。
なお、第2ゲイン生成手段475は、本実施の形態では入力色度値481、482以外に目標色度値487,488を用いているが、入力色度値481,482のみで構成してもよく、その場合図35に示す回路で実現できる。
図38は第3色調整係数修正手段478の実施の形態である第3色調整係数修正回路のブロック図である。第3色調整係数修正回路は乗算器521〜524を備える。第1ゲイン492は第1ゲイン修正手段526である乗算器524で値532と乗算される。値532は操作者が設定する値であり、第1ゲイン492をそのまま用いる場合は1.0の値を用い、第1ゲインを小さくする場合は1.0より小さい値を設定すれば良い。同様に第2ゲイン491は第2ゲイン修正手段525である乗算器523で修正される。第1修正ゲイン534は乗算器521で色調整係数489と乗算され、得られた修正色調整係数533は乗算器522で第2修正ゲイン535と乗算される。得られた値が修正色調整係数490である。
なお、操作者が第1ゲインおよび第2ゲインを修正する方法は、本実施の形態の方法に限られるものではなく、例えば、ゲインの傾きを変えたり、ゲインが一定となる範囲を変える方法もある。
また、本実施の形態では第1ゲイン修正手段526と第2ゲイン修正手段525を設けて、操作者が第1ゲインと第2ゲインを修正できるようにしたが、どちらか一方だけ、もしくは両方とも修正できない構成にしても良い。
以上の構成を備えることにより、実施の形態9の利点に加え、実施の形態10の利点も備え、さらに細かいゲイン調整ができるようになる。例えば、第2ゲインで色調整係数を修正するため、第1ゲインによる修正量を、第1ゲインだけの場合に比べ少なくすることができるという効果も生じる。
実施の形態9、10、11では目標色度値曲線を予め定めた曲線として説明したが、実施の形態と同様に、目標色度値曲面を設定し、曲面内から目標色度値曲線自体を操作者が選択できるようにすると、操作者の感性に合った色調整を行えるようになる。
色調整処理は自然の色や人の記憶色をベースに行うことが多いが、色が操作者の感性とずれていたり、実際に入力画像が設定した記憶色と異なっている場合もある。その場合、一様に目標色に向けて色調整を行っても求める画像とはならない。このため、実施の形態2で説明したような目標色度値表示手段236を用い、目標色度値曲線上の色を表示する。操作者は表示された色をもとに色調整処理を行うか否かを決めればよい。また、目標色度値曲線選択手段278とともに用いることにより、選択した目標色度値曲線の情報を表示できるので、微妙な色を目視しながら設定できるようになり、操作者の好みの画像を得ることができるようになる。
なお、操作者が目標色度値曲面から目標色度値曲線を選択する場合に、様々な目標色度値曲線について同じ第1ゲインおよび第2ゲインを用いる必要はなく、選択された目標色度値曲線に応じて第1ゲインもしくは第2ゲイン、またはその両方を変化させるようにしてもよい。
(実施の形態12)
実施の形態12から実施の形態14は、実施の形態9から実施の形態11をソフトウェアで実現したものである。このソフトウェアを動作させるCPUシステムには、実施の形態5で説明したものを用いることができる。
図39は本発明の実施の形態12における画像処理用プログラムのフローチャートである。実施の形態12における画像処理用プログラムは実施の形態9における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ61)と、まずステップ62で初期設定を行う。初期設定ではまず、目標色度値曲線情報を設定する。ステップ63で入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、良く知られた色空間の変換を行い、明度値と色度値を生成する。例えば、RGB信号からY,Cr,Cb信号に変換する。ステップ64では注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ65ではステップ64で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いても良い。なお、色調整係数生成ステップ65の詳細は、実施の形態5で説明した通りである。ステップ66では所定の明度範囲から離れるにしたがっては小さくなる第1ゲインを生成する。ステップ67ではステップ66で得られた第1ゲインを用いて、ステップ65で生成した色調整係数を修正する。ステップ68では、ステップ67で得られた修正色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ69では全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ63に戻り、全画素終了した場合は色調整処理を終わる(ステップ70)。
(実施の形態13)
図40は本発明の実施の形態13における画像処理用プログラムのフローチャートである。実施の形態13における画像処理用プログラムは実施の形態10における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ81)と、まずステップ82で初期設定を行う。初期設定ではまず、目標色度値曲線情報を設定する。ステップ83で入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、良く知られた色空間の変換を行い、明度値と色度値を生成する。例えば、RGB信号からY,Cr,Cb信号に変換する。ステップ84では注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ85ではステップ84で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いても良い。ステップ86では無彩色に近いほど小さくなる第2ゲインを生成する。ステップ87ではステップ86で得られた第2ゲインを用いて、ステップ85で生成した色調整係数を修正する。ステップ88では、ステップ87で得られた修正色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ89では全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ83に戻り、全画素終了した場合は色調整処理を終わる(ステップ90)。
(実施の形態14)
図41は本発明の実施の形態14における画像処理用プログラムのフローチャートである。実施の形態14における画像処理用プログラムは実施の形態11における画像処理装置の処理内容をソフトウェア化したものである。
本発明の画像処理用プログラムがスタートする(ステップ101)と、まずステップ102で予め設定した目標色度値曲線の情報を用いて、各明度値に対応した目標色度値画像を表示する。なお、目標色度値画像は入出力ポート374を通して、表示装置に出力されるようにすれば良い。操作者は表示された目標色度値画像をもとに、この目標色度値曲線で色調整を行うか否かをステップ103で選択する。この目標色度値曲線で色調整を行わない場合、ステップ104に進んで目標色度値曲線を選択(調整)する。ステップ102〜104を繰り返し、操作者が好みの目標色度値曲線を選択する。目標色度値曲線が選択されると、ステップ105で初期設定を行う。初期設定ではまず、目標色度値曲線情報を設定する。ステップ106で入力画像データにおける注目画素データの読み取りを行う。なお、入力画像データが明度、色度で表されていない場合は、良く知られた色空間の変換を行い、明度値と色度値を生成する。例えば、RGB信号からY,Cr,Cb信号に変換する。ステップ107では注目画素の入力明度値および目標色度値曲線を用いて目標色度値を生成する。ステップ108ではステップ107で得られた目標色度値、注目画素の入力明度値、注目画素の入力色度値、調整色度領域を構成する三角形領域の頂点の色度値を用いて、色調整を行うための色調整係数を生成する。色調整係数としては内分比を用いても良い。ステップ109では所定の明度範囲から離れるにしたがっては小さくなる第1ゲインを生成する。ステップ110では無彩色に近いほど小さくなる第2ゲインを生成する。ステップ111ではステップ109で得られた第1ゲイン、およびステップ110で得られた第2ゲインを用いて、ステップ108で生成した色調整係数を修正する。ステップ112では、ステップ111で得られた修正色調整係数を用いて注目画素の入力色度値の色調整を行う。ステップ113では全画素の色調整が終了したか否かを検査し、全画素終了していない場合はステップ106に戻り、全画素終了した場合は色調整処理を終わる(ステップ114)。
なお、すべての実施の形態では色調整する色を1つの色にして説明したが、調整する色は1つに限るものではなく、複数の色を調整するようにしてもよい。
また、目標色度値曲面や目標色度値曲線を用いたが、代わりに目標色度値の集合を用いても良い。
また、目標色度値曲線を表示する場合、すべての明度値について表示する必要はなく、所定の明度範囲や特定の明度値のみについて表示するようにしても良い。
また、実施の形態では第1修正色調整係数を入力明度値によって選択された色調整係数を用いて生成したが、選択する前に色調整係数に第1ゲインを乗算しておき、得られた第1修正色調整係数を選択するように構成しても良い。
また、本実施の形態において、目標色度値Csまでの色度平面上の距離を第2ゲインを求めるために用いたが、この方法に限られるものではなく、例えば目標色度値Csに関係なく、無彩色に近づくほど小さくなる第2ゲインを設定しても良い。
また、上述の実施の形態においては、集中処理系として、単体の画像処理装置に適用したが、これに限らず、例えば、画像処理系としての画像処理システムに適用することも可能である。もちろん、分散処理システムに画像処理用プログラムを実施することによって、分散処理システムを画像処理システムとして機能させることも可能である。