JP2004213100A - Color conversion processor and color conversion processing method - Google Patents
Color conversion processor and color conversion processing method Download PDFInfo
- Publication number
- JP2004213100A JP2004213100A JP2002378614A JP2002378614A JP2004213100A JP 2004213100 A JP2004213100 A JP 2004213100A JP 2002378614 A JP2002378614 A JP 2002378614A JP 2002378614 A JP2002378614 A JP 2002378614A JP 2004213100 A JP2004213100 A JP 2004213100A
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- color conversion
- color
- offset
- row
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 249
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 239000011159 matrix material Substances 0.000 claims abstract description 261
- 238000000034 method Methods 0.000 claims description 59
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 abstract description 15
- 230000009466 transformation Effects 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 14
- 239000003086 colorant Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
Images
Landscapes
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
- Color, Gradation (AREA)
- Image Processing (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、色変換行列を用いて色変換処理を行う技術に関するものである。
【0002】
【従来の技術】
カラー画像の読取、生成、表示、プリント、通信などを行うカラー画像処理装置あるいはパーソナルコンピュータシステムなどでは、近年、ICC(International Color Consortium)プロファイルなどの普及に伴い、種々の色空間に対応することが必須となって来ている。例えば、ICCプロファイルのディスプレイ用プロファイルにはディスプレイ装置の特性などが記述されており、その中にディスプレイ装置の3原色の相対CIEXYZ色度および白色点の相対CIEXYZ色度も記述されている。これらの色度から3行3列の行列を生成し、これを用いてディスプレイ装置のRGB強度信号をCIEXYZ信号に変換する。また、上述の行列の逆行列を用いて、CIEXYZ信号からディスプレイ装置のRGB強度信号に逆変換することもできる。一般に色空間変換では、ある色空間から他の色空間への一方向だけの変換だけではなく、逆方向への変換も行われることが多い。CIEXYZのような基準的な色空間との相互変換は、特に一般的である。
【0003】
上述のように、種々の色空間について色空間変換を実施しなくてはならないが、例えば種々のディスプレイに対応するためには、種々の3原色について上述の行列を求め、その行列を用いて色空間変換することが可能でなければならない。従って、通常、ディスプレイプロファイルの3原色相対CIEXYZ色度および白色点の相対CIEXYZ色度を読み取り、これらの色度を用いて行列を求め、この行列を用いてカラー画像などの入力色信号を色変換している。
【0004】
例として式1.1及び式1.2にCIEXYZ色空間と“Xerox Color Encoding Standard”に定義されているRGB色空間との相互変換式を示す。
【数1】
【0005】
図7は、デバイスRGB色空間とCIEXYZ色空間の相互変換の概念図である。上述のCIEXYZのような基準的な色空間の特徴として、種々の入出力装置色空間(以下、デバイス色空間とする)の色域を十分に表現できるように、色域が大きくとられている点が挙げられる。例えばデバイスRGB色空間における色域が図7(A)に示す領域であるとすると、CIEXYZ色空間における色域は図7(B)に示すように大きな色域を有している。
【0006】
色域が大きい基準色空間から、色域がそれよりも小さいデバイス色空間への変換は、これを幾何学的な変換と考えると、拡大変換となる。つまり、色変換行列の行列式の絶対値が1よりも大きくなることを意味している。逆に、色域が小さいデバイス色空間から色域が大きい基準色空間への変換は、縮小変換となり、行列式の絶対値が1よりも小さくなる。例えば上述の式1.1に示したCIEXYZからRGBへの変換における行列式の絶対値は約8.7、式1.2に示した逆変換の場合は約0.22となっている。
【0007】
図8は、色クリップ処理の必要の有無を示す概念図である。図8では、説明を簡単にするため、2次元色空間の変換前後の領域、および、その変換行列を示している。荒いハッチングを施した部分が変換前の領域を示し、細かいハッチングを施した部分が変換後の領域を表している。なお、ここでは変換後も変換前の領域に収めるものとする。図8(A)、(B)に示した2つの例とも、行列式の絶対値が0.62となる。しかし、図8(A)に示す例では変換後の領域が元の領域内に内包されていないのに対し、図8(B)に示す例では内包されている。つまり、行列式の絶対値が1以下の縮小変換でも内包されない場合がある。
【0008】
上述の式1.1に示した変換の場合、図8(A)に示す例と同様に、色変換された結果が出力信号の信号域、例えば出力信号が8ビットで表現されている場合は0から255までの範囲からはみ出してしまう場合がある。そのため、はみ出た出力信号を出力信号域に収めなければならない。このようにはみ出した出力信号を出力信号域に収めるため、一般的には最終段にクリップ処理手段を設け、各出力信号毎に、はみ出た信号が負値であれば0に、255を越えていれば255にクリップするという処理を行っている。
【0009】
このようなクリップ処理は、色空間によっては不要な場合もある。すなわち図8(B)に示す例のように、変換後の領域が範囲内に収まっていればよい。しかしながら、種々の色空間が入出力となっても対応できるようにするために、クリップ処理が不要な場合でもクリップ処理手段によって出力信号の範囲内であるか否かの判定を行っており、処理速度が低下する要因となっていた。
【0010】
例えば特許文献1に記載されているように、行列色変換の乗算部分を予め変換テーブルとして構成しておき、変換テーブルの参照と加算によって行列演算を行うことが考えられている。これによって、乗算に要する時間を変換テーブルの参照のみとして、変換処理を高速化することができる。しかし、変換テーブルにより乗算を代替しても、その後の加算において出力信号域をはみだしてしまう可能性は残る。そのため、種々の色空間を入出力とするためには、やはり加算の後にクリップ処理を行う必要があった。また、変換テーブルを用いているため、乗数が0未満あるいは1を越えている場合には変換結果を0あるいは255にクリップするしかなく、色変換精度が低下する可能性がある。式1.1に示したように、特に標準色空間からデバイス色空間への変換の場合には、乗数が0未満あるいは1を越える場合が多く、種々の色空間を入出力とすることが困難であった。
【0011】
【特許文献1】
特開平1−108867号公報
【0012】
【発明が解決しようとする課題】
本発明は、上述した事情に鑑みてなされたもので、種々の色空間に対応でき、しかもそれぞれの色変換行列に最適な色変換処理を行うことによって高速に処理が可能な色変換処理装置及び色変換処理方法を提供することを目的とするものである。
【0013】
【課題を解決するための手段】
本発明は、色変換行列を用いて色変換処理を行う色変換処理装置及び色変換処理方法において、複数の行列型の各々に対応した複数の行列色変換手段を設けておき、色変換行列の特徴に基づいて色変換行列を複数の行列型に分類し、分類した行列型に対応した行列色変換処理を選択して、色変換行列に従った色変換処理を行うことを特徴とするものである。例えば、出力色信号を出力域内にクリップする色クリップ処理が必要な行列型か否かを判定し、色クリップ処理が不要な行列型であると判定された場合には色クリップ処理を行わない行列色変換手段を選択して色変換処理を行うように構成することができる。これによって、クリップ処理が不要な行列型であれば処理速度を向上させることができる。また、色クリップ処理が必要な行列型であると判定された場合には色クリップ処理を行う行列色変換手段を選択して色変換処理及び色クリップ処理を行うように構成することによって、汎用性を損なわずに構成することができる。
【0014】
クリップ処理の要不要は、色変換行列がオフセット値無しの行列であるとき、色変換行列の全ての要素が各々0以上1以下で、かつ、各行の要素の総和も0以上1以下であるか否かを検査し、この条件を満たしていれば色変換行列は色クリップ処理が不要な行列型であると判定することができる。また、色変換行列がオフセット値付きの行列であるときには、色変換行列の全てのオフセット要素が各々0以上1以下で、かつ、各行のオフセット要素と当該行におけるオフセット以外の各要素との和も全て0以上1以下で、かつ、各行のオフセット以外の要素の総和と当該行におけるオフセット要素との和も0以上1以下であるか否かを検査し、この条件を満たしていれば、色変換行列は前記色クリップ処理が不要な行列型であると判定することができる。なお、色変換行列がオフセット値付きである場合でも、行列の全てのオフセット要素が0であればオフセット値を取り除いたオフセット値無しの行列として、色クリップ処理の要否を判定することができる。また、色変換行列がm行n列の行列であるとき、この行列をm個の1行n列の行列に分割して扱って、行列型の判定を行うように構成することもできる。
【0015】
【発明の実施の形態】
図1は、本発明の実施の一形態を示すブロック図である。図中、1〜4は行列色変換部、5は行列決定部、6,7はセレクタである。行列色変換部1〜4は、それぞれが異なる行列型に対応した色変換処理を行うものである。ここでは行列色変換部1はオフセット値が無く、クリップ処理が必要な行列型の色変換行列を用いて色変換処理を行うものであり、内部に色クリップ処理部を有している。行列色変換部2はオフセット値が無く、クリップ処理も必要ない行列型の色変換行列を用いて色変換処理を行うものである。行列色変換部3はオフセット値を有し、クリップ処理が必要な行列型の色変換行列を用いて色変換処理を行うものであり、内部に色クリップ処理部を有している。行列色変換部4はオフセット値を有し、クリップ処理の必要がない行列型の色変換行列を用いて色変換処理を行うものである。この例では、上述のような4つの行列色変換部を設けた例を示しているが、本発明ではこれに限らず、行列型に応じて複数設けられていればよい。
【0016】
行列決定部5は、与えられた色変換行列のデータをもとに、色変換行列の特徴を判断して、色変換行列を複数の行列型に分類する。そして分類結果に従ってセレクタ6,7及び行列色変換部1〜4を制御し、分類された行列型に対応する行列色変換部に色変換処理(及び必要に応じてクリップ処理)を行わせる。ここではオフセット値の有無とクリップ処理の要否を判断して、4つの行列型のいずれかに分類する。この時、オフセット値があっても要素がすべて0であれば、オフセット値無しの行列型として分類することができる。そして、それぞれの行列型に対応した行列色変換部1〜4のいずれかによって色変換処理を行わせるように制御する。なお、この動作の一例については後述する。
【0017】
セレクタ6は、行列決定部5の制御に従い、入力色信号を入力する行列色変換部を選択する。またセレクタ7は、行列決定部5の制御に従い、行列色変換部のいずれかで色変換処理が施された出力色信号を選択して出力する。
【0018】
図2は、行列色変換部1の一例を示す構成図である。図中、11〜19は乗算部、21〜23は加算部、31〜33はクリップ部、41〜43は信号複写部、51は行列係数保持部である。ここではCIEXYZ色空間からRGB色空間への色空間変換処理を行うものとして図示している。上述のように、行列色変換部1はオフセット値が無く、クリップ処理が必要な行列型の色変換行列を用いて色変換処理を行うものである。この場合の変換式は
【数2】
であるものとする。
【0019】
行列決定部5から渡される色変換行列の要素は、行列係数保持部51に保持される。一方、セレクタ6を介して入力されるX、Y、Z信号は、それぞれ、信号複写部41〜43で3つに分岐される。信号複写部41で分岐されたX信号は乗算部11,14,17へ、信号複写部42で分岐されたY信号は乗算部12,15,18へ、信号複写部43で分岐されたZ信号は乗算部13,16,19へ、それぞれ入力される。
【0020】
乗算部11〜19は、信号複写部41〜43から入力された信号と、行列係数保持部51に保持されている該当する要素との乗算を行い、加算部21〜23に対して出力する。具体的には乗算部11はa11×Xの演算を、乗算部12はa12×Yの演算を、乗算部13はa13×Zの演算を、乗算部14はa21×Xの演算を、乗算部15はa22×Yの演算を、乗算部16はa23×Zの演算を、乗算部17はa31×Xの演算を、乗算部18はa32×Yの演算を、乗算部19はa33×Zの演算を、それぞれ行う。
【0021】
加算部21〜23は、乗算部11〜19から出力された乗算結果をそれぞれ3個ずつ加算する。具体的には、加算部21は乗算部11〜13からの出力を加算し、a11×X+a12×Y+a13×Zを演算する。加算部22は乗算部14〜16からの出力を加算し、a21×X+a22×Y+a23×Zを演算する。加算部23は乗算部17〜19からの出力を加算し、a31×X+a32×Y+a33×Zを演算する。
【0022】
クリップ部31〜33は、加算部21〜23から出力された行列演算結果に対して、出力域内にクリップする処理を行い、最終的な出力値とするものである。例えば図8(A)に示したようにはみ出る部分が存在する場合、加算部21〜23から出力された値が出力域内の値であるか否かを判定し、出力域からはみ出している場合には出力域内の値となるようにクリップ処理を行う。
【0023】
図3は、行列色変換部2の一例を示す構成図である。図中、図2と同様の部分には同じ符号を付してある。上述のように、行列色変換部2はオフセット値が無く、クリップ処理も必要ない行列型の色変換行列を用いて色変換処理を行うものである。この図3に示した行列色変換部2の構成例は、図2に示した行列色変換部1の構成のうち、クリップ部31〜33を除いたものである。
【0024】
上述の図2に示した行列色変換部1の構成例は、従来よりオフセット値がない場合の色変換処理に用いられている構成である。この構成のみで色変換処理を行う場合、必ずクリップ部31〜33による処理が行われる。そのため、クリップ処理が不要であってもクリップ部31〜33による処理のための遅延が発生する。これに対して図3に示した構成では、クリップ部31〜33が設けられていないため、クリップ処理が不要な場合に行列色変換部2を選択すれば、高速に処理を行うことが可能である。
【0025】
図4は、行列色変換部3の一例を示す構成図である。図中、図2と同様の部分には同じ符号を付して説明を省略する。24〜26は加算部である。上述のように、行列色変換部3はオフセット値があり、クリップ処理が必要な行列型の色変換行列を用いて色変換処理を行うものである。この場合の変換式は
【数3】
であるものとする。このようなオフセット値が存在する場合の変換は、一般にアフィン変換と呼ばれている。
【0026】
加算部24〜26は、行列係数保持部51から渡されるオフセット値を、加算部21〜23の出力と加算するものである。具体的には、加算部24は加算部21の出力とオフセット値b1 を加算し、a11×X+a12×Y+a13×Z+b1 を演算する。加算部25は加算部22の出力とオフセット値b2 を加算し、a21×X+a22×Y+a23×Z+b2 を演算する。加算部26は加算部23の出力とオフセット値b3 を加算し、a31×X+a32×Y+a33×Z+b3 を演算する。そして、オフセット値の加算結果をそれぞれクリップ部31〜33に渡し、出力域からはみ出した値を出力域内の値に修正して出力する。
【0027】
この行列色変換部3の構成では、行列色変換部1の構成に加えてオフセット値を加算する加算部24〜26を設けているので、オフセット値が存在するアフィン変換に対して広く適用できる構成である。ただし、オフセット値が0である場合にも加算部24〜26が0の加算動作を行うため、オフセット値が0であれば図2に示した行列色変換部1により色変換処理を行った方が加算部24〜26の演算時間の分だけ高速に処理を行うことが可能である。
【0028】
図5は、行列色変換部4の一例を示す構成図である。図中、図4と同様の部分には同じ符号を付してある。上述のように、行列色変換部4はオフセット値があるが、クリップ処理の必要がない行列型の色変換行列を用いて色変換処理を行うものである。この図5に示した行列色変換部4の構成例は、図4に示した行列色変換部3の構成のうち、クリップ部31〜33を除いたものである。
【0029】
上述の図4に示した行列色変換部3の構成例では、必ずクリップ部31〜33による処理が行われる。そのため、クリップ処理が不要であってもクリップ部31〜33による処理のための遅延が発生する。これに対して図5に示した構成では、クリップ部31〜33が設けられていないため、クリップ処理が不要な場合に行列色変換部4を選択すれば、高速に処理を行うことが可能である。ただし、オフセット値が0である場合にも加算部24〜26が0の加算動作を行うため、オフセット値が0であれば図3に示した行列色変換部2により色変換処理を行った方が加算部24〜26の演算時間の分だけ高速に処理を行うことが可能である。
【0030】
なお、図2〜図5においては、いずれの例もCIEXYZ色空間とRGB色空間を用いて説明したが、当然のことながら、入出力色空間としては任意のものを用いることができる。また、入出力色空間の次元数も任意であり、次元数に応じた構成を取ることができる。もちろん、図2〜図5に示した構成も一例であって、例えばテーブルを用いて演算を行うなど、他の構成を取ることも可能である。
【0031】
図6は、本発明の実施の一形態における行列型の決定処理の一例を示すフローチャートである。図6に示す処理の開始前に、例えば色変換を制御する図示しない色変換制御手段等から、行列決定部5に対して色変換行列のデータが渡され、色変換行列の決定が指示される。
【0032】
S61において、行列決定部5は、色変換行列がオフセット値付きのアフィン型であるか否かを検査する。これには、例えば色変換行列データ中にアフィン型を示すフラグを用意しておいて、このフラグを検査することによって行うことができる。あるいは、行列データとは別に色変換制御手段等から明示的に指示されるなど、他の種々の実現方法でも構わない。もし、アフィン型でなければS62へ進み、アフィン型であればS63に進み、それぞれ行列の各要素を検査する。
【0033】
アフィン型ではない場合、S62において、行列の全ての要素aijが各々0以上1以下で、かつ、各行の要素の総和も0以上1以下であるか否かを検査する。もし、この条件に合致しなければS64に進み、合致すればS65に進む。
【0034】
S62の条件に合致しない場合には、クリップ処理が必要な行列型の場合である。S64において、図2に示した通常のクリップ処理付きの行列色変換部1を選択して行列色変換部1に色変換行列のデータを設定し、またセレクタ6,7を行列色変換部1に切り替えて、行列色変換部1に色変換処理を行わせる。
【0035】
またS62の条件に合致している場合には、色変換行列はクリップ処理を必要としない場合である。この場合には、クリップ処理を省くことが出来るため、S65において、図3に示したクリップ処理無しの行列色変換部2を選択して行列色変換部2に色変換行列のデータを設定し、またセレクタ6,7を行列色変換部2に切り替えて、行列色変換部2に色変換処理を行わせる。この場合、上述のようにクリップ部によるクリップ処理を行わないため、高速な処理を実現することができる。
【0036】
S61で色変換行列がアフィン型であると判断された場合には、S63において、行列の全てのオフセット要素bi が各々0以上1以下で、かつ、各行のオフセット要素bi とその行におけるオフセット以外の各要素aijとの和も全て0以上1以下で、かつ、各行のオフセット以外の要素aijの総和とその行におけるオフセット要素bi との和も0以上1以下になるか否かを検査する。もし、この条件に合致しなければS66に進み、合致すればS67に進む。
【0037】
S63の条件に合致しない場合には、クリップ処理が必要な行列型の場合である。S66において、図4に示したクリップ処理付きのアフィン変換型の行列色変換部3を選択して行列色変換部3に色変換行列のデータを設定し、またセレクタ6,7を行列色変換部3に切り替えて、行列色変換部3に色変換処理を行わせる。
【0038】
またS63の条件に合致している場合には、色変換行列はクリップ処理を必要としない場合である。この場合には、クリップ処理を省くことが出来るため、S67において、図5に示したクリップ処理無しのアフィン変換型の行列色変換部4を選択して行列色変換部4に色変換行列のデータを設定し、またセレクタ6,7を行列色変換部4に切り替えて、行列色変換部4に色変換処理を行わせる。この場合、上述のようにクリップ部によるクリップ処理を行わないため、高速な処理を実現することができる。
【0039】
なお、S61において色変換行列がアフィン変換型であるか否かを判定する際に、色変換行列がアフィン変換型の行列であっても、全てのオフセット要素bi が0であれば、オフセット値を取り除いたオフセット値無しの行列としてS62に進み、クリップ処理の要否を判定するように構成してもよい。
【0040】
さらに、m行n列の行列を各出力毎にm個の1行n列の行列に分割してから行列型の判定を行うこともできる。これによって、色変換処理をより高速にすることも可能である。
【0041】
もちろん、オフセット値が付加されないことが予め分かっている場合にはS61,S63,S66,S67の処理は不要であり、また構成として行列色変換部3,4を設けずに構成することができる。また逆に、オフセット値が付加されていない場合には0のオフセット値を加えて行列色変換部3,4のみで構成してもよい。この場合にはS62,S64,S65の処理及び行列色変換部1,2は不要である。
【0042】
【発明の効果】
以上の説明から明らかなように、本発明によれば、色変換行列を行列型に分類し、それぞれの行列型において最適な行列色変換手段を用いて色変換処理を行うので、種々の色空間にも対応できる汎用性を有したまま、無駄な演算を減らし、高速な色変換を実現することができるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の一形態を示すブロック図である。
【図2】行列色変換部1の一例を示す構成図である。
【図3】行列色変換部2の一例を示す構成図である。
【図4】行列色変換部3の一例を示す構成図である。
【図5】行列色変換部4の一例を示す構成図である。
【図6】本発明の実施の一形態における行列型の決定処理の一例を示すフローチャートである。
【図7】デバイスRGB色空間とCIEXYZ色空間の相互変換の概念図である。
【図8】色クリップ処理の必要の有無を示す概念図である。
【符号の説明】
1〜4…行列色変換部、5…行列決定部、6,7…セレクタ、11〜19…乗算部、21〜26…加算部、31〜33…クリップ部、41〜43…信号複写部、51…行列係数保持部。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a technique for performing a color conversion process using a color conversion matrix.
[0002]
[Prior art]
2. Description of the Related Art In recent years, with the spread of ICC (International Color Consortium) profiles and the like, a color image processing apparatus or a personal computer system that performs reading, generation, display, printing, communication, and the like of a color image can cope with various color spaces. It has become mandatory. For example, the display profile of the ICC profile describes the characteristics of the display device and the like, and also describes the relative CIEXYZ chromaticity of the three primary colors and the relative CIEXYZ chromaticity of the white point of the display device. A matrix of 3 rows and 3 columns is generated from these chromaticities, and the matrix is used to convert the RGB intensity signal of the display device into a CIEXYZ signal. Further, it is also possible to inversely convert the CIEXYZ signal into the RGB intensity signal of the display device by using an inverse matrix of the above matrix. Generally, in color space conversion, not only conversion in one direction from one color space to another color space, but also conversion in the opposite direction is often performed. Interconversion with a standard color space such as CIEXYZ is particularly common.
[0003]
As described above, the color space conversion must be performed for various color spaces. For example, in order to support various displays, the above-described matrix is obtained for various three primary colors, and the color is calculated using the matrix. It must be possible to perform spatial transformation. Therefore, usually, the three primary colors relative CIEXYZ chromaticity of the display profile and the relative CIEXYZ chromaticity of the white point are read, a matrix is obtained using these chromaticities, and an input color signal such as a color image is color-converted using the matrix. are doing.
[0004]
As an example, Equations 1.1 and 1.2 show a mutual conversion equation between the CIEXYZ color space and the RGB color space defined in “Xerox Color Encoding Standard”.
(Equation 1)
[0005]
FIG. 7 is a conceptual diagram of the mutual conversion between the device RGB color space and the CIEXYZ color space. As a feature of the standard color space such as CIEXYZ described above, the color gamut is set large so that the color gamut of various input / output device color spaces (hereinafter, referred to as device color space) can be sufficiently expressed. Points. For example, if the color gamut in the device RGB color space is the area shown in FIG. 7A, the color gamut in the CIEXYZ color space has a large color gamut as shown in FIG. 7B.
[0006]
Conversion from a reference color space with a large color gamut to a device color space with a smaller color gamut is an enlargement conversion, considering this as a geometric conversion. In other words, it means that the absolute value of the determinant of the color conversion matrix is larger than 1. Conversely, conversion from a device color space with a small color gamut to a reference color space with a large color gamut is a reduction conversion, and the absolute value of the determinant is smaller than 1. For example, the absolute value of the determinant in the conversion from CIEXYZ to RGB shown in Equation 1.1 above is about 8.7, and the inverse transformation shown in Equation 1.2 is about 0.22.
[0007]
FIG. 8 is a conceptual diagram showing whether color clip processing is necessary. FIG. 8 shows regions before and after the conversion in the two-dimensional color space and the conversion matrix thereof for the sake of simplicity. A portion with rough hatching indicates a region before conversion, and a portion with fine hatching indicates a region after conversion. Here, it is assumed that the data after conversion is also stored in the area before conversion. In both of the examples shown in FIGS. 8A and 8B, the absolute value of the determinant is 0.62. However, in the example shown in FIG. 8A, the converted area is not included in the original area, whereas in the example shown in FIG. 8B, it is included. That is, there is a case where the absolute value of the determinant is not included even in the reduced conversion of 1 or less.
[0008]
In the case of the conversion shown in the above equation 1.1, as in the example shown in FIG. 8A, when the result of the color conversion is a signal area of the output signal, for example, when the output signal is represented by 8 bits There is a case where it goes out of the range of 0 to 255. Therefore, the protruding output signal must be included in the output signal area. In general, a clip processing means is provided at the last stage in order to store the output signal that has protruded into the output signal area. For each output signal, if the protruded signal is a negative value, the output signal exceeds 0 and exceeds 255. If it is, a process of clipping to 255 is performed.
[0009]
Such clip processing may not be necessary depending on the color space. That is, as in the example shown in FIG. 8B, the converted area only needs to be within the range. However, in order to be able to cope with input / output of various color spaces, even if clip processing is unnecessary, the clip processing means determines whether or not the output signal is within the range of the output signal. This was a factor in reducing speed.
[0010]
For example, as described in
[0011]
[Patent Document 1]
JP-A-1-108877
[Problems to be solved by the invention]
The present invention has been made in view of the above circumstances, and has a color conversion processing apparatus that can support various color spaces and that can perform high-speed processing by performing optimal color conversion processing for each color conversion matrix. It is an object to provide a color conversion processing method.
[0013]
[Means for Solving the Problems]
The present invention provides a color conversion processing device and a color conversion processing method for performing a color conversion process using a color conversion matrix, wherein a plurality of matrix color conversion means corresponding to each of a plurality of matrix types are provided, and The color conversion matrix is classified into a plurality of matrix types based on the feature, a matrix color conversion process corresponding to the classified matrix type is selected, and the color conversion process is performed according to the color conversion matrix. is there. For example, it is determined whether or not the matrix type requires the color clipping process of clipping the output color signal into the output area, and if it is determined that the matrix type does not require the color clipping process, the matrix that does not perform the color clipping process The color conversion means can be selected to perform the color conversion processing. This makes it possible to improve the processing speed if the matrix type does not require clip processing. In addition, when it is determined that the matrix type requires the color clipping process, a matrix color conversion unit that performs the color clipping process is selected to perform the color conversion process and the color clipping process. Can be configured without deteriorating.
[0014]
The necessity of clip processing is that when the color conversion matrix is a matrix having no offset value, whether all the elements of the color conversion matrix are 0 or more and 1 or less, and whether the sum of the elements in each row is 0 or more and 1 or less. Whether the color conversion matrix is of a matrix type that does not require color clipping can be determined if this condition is satisfied. When the color conversion matrix is a matrix with an offset value, all the offset elements of the color conversion matrix are each 0 or more and 1 or less, and the sum of the offset element of each row and each element other than the offset in the row is also obtained. It is checked whether all the values are 0 or more and 1 or less, and the sum of the sum of the elements other than the offset of each row and the offset element in the row is also 0 or more and 1 or less. If this condition is satisfied, the color conversion is performed. The matrix can be determined to be of a matrix type that does not require the color clipping process. Even when the color conversion matrix has an offset value, if all the offset elements of the matrix are 0, the necessity of the color clipping process can be determined as a matrix having no offset value by removing the offset value. When the color conversion matrix is a matrix of m rows and n columns, the matrix may be divided into m 1-row and n-column matrices, and the matrix type may be determined.
[0015]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a block diagram showing one embodiment of the present invention. In the figure,
[0016]
The
[0017]
The selector 6 selects a matrix color conversion unit for inputting an input color signal under the control of the
[0018]
FIG. 2 is a configuration diagram illustrating an example of the matrix
It is assumed that
[0019]
The elements of the color conversion matrix passed from the
[0020]
The
[0021]
Each of the
[0022]
The clipping units 31 to 33 perform a process of clipping the matrix operation results output from the adding
[0023]
FIG. 3 is a configuration diagram illustrating an example of the matrix
[0024]
The above-described configuration example of the matrix
[0025]
FIG. 4 is a configuration diagram illustrating an example of the matrix
It is assumed that Transformation in the presence of such an offset value is generally called affine transformation.
[0026]
The
[0027]
In the configuration of the matrix
[0028]
FIG. 5 is a configuration diagram illustrating an example of the matrix
[0029]
In the configuration example of the matrix
[0030]
In FIGS. 2 to 5, all of the examples have been described using the CIEXYZ color space and the RGB color space. However, as a matter of course, any input / output color space can be used. Also, the number of dimensions of the input / output color space is arbitrary, and a configuration corresponding to the number of dimensions can be taken. Of course, the configuration shown in FIGS. 2 to 5 is also an example, and other configurations such as performing an operation using a table are possible.
[0031]
FIG. 6 is a flowchart illustrating an example of a matrix type determination process according to an embodiment of the present invention. Prior to the start of the processing shown in FIG. 6, data of a color conversion matrix is passed to the
[0032]
In S61, the
[0033]
If it is not the affine type, it is checked in S62 whether all the elements a ij of the matrix are each 0 or more and 1 or less, and whether the sum of the elements in each row is 0 or more and 1 or less. If the condition is not met, the process proceeds to S64, and if the condition is met, the process proceeds to S65.
[0034]
If the condition of S62 is not met, this is the case of a matrix type that requires clip processing. In S64, the matrix
[0035]
If the condition of S62 is met, the color conversion matrix does not require clip processing. In this case, since clip processing can be omitted, in S65, the matrix
[0036]
When the color conversion matrix is determined to be affine type in S61, in S63, all offsets element b i of the matrix are each 0 or 1 or less, and the offset in the offset component b i and the row of each row other sum in all 0 to 1 inclusive and each element a ij, and, whether the sum of the offset component b i in the sum and the row of elements a ij other than row offset also becomes 0 or more and 1 or less Inspect If the condition is not met, the process proceeds to S66, and if the condition is met, the process proceeds to S67.
[0037]
If the condition of S63 is not met, this is the case of a matrix type requiring clip processing. In S66, the affine transformation type matrix
[0038]
When the condition of S63 is satisfied, the color conversion matrix does not require clip processing. In this case, since the clipping process can be omitted, in S67, the affine transformation type matrix
[0039]
Note that in determining whether an affine transformation color conversion matrix in S61, also the color conversion matrix is a matrix of affine transformation type, if all of the offset component b i is 0, the offset value The process may proceed to S62 as a matrix with no offset value from which is removed, and may be configured to determine whether clip processing is necessary.
[0040]
Further, it is also possible to divide the matrix of m rows and n columns into m matrices of 1 row and n columns for each output and then determine the matrix type. As a result, the color conversion processing can be performed at a higher speed.
[0041]
Of course, if it is known in advance that the offset value is not added, the processing of S61, S63, S66, and S67 is unnecessary, and the configuration can be made without the matrix
[0042]
【The invention's effect】
As is apparent from the above description, according to the present invention, the color conversion matrix is classified into a matrix type, and the color conversion process is performed using the optimal matrix color conversion means in each matrix type. There is an effect that wasteful operations can be reduced and high-speed color conversion can be realized while having versatility that can cope with the above.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an embodiment of the present invention.
FIG. 2 is a configuration diagram illustrating an example of a matrix
FIG. 3 is a configuration diagram illustrating an example of a matrix
FIG. 4 is a configuration diagram illustrating an example of a matrix
FIG. 5 is a configuration diagram illustrating an example of a matrix
FIG. 6 is a flowchart illustrating an example of a matrix type determination process according to an embodiment of the present invention.
FIG. 7 is a conceptual diagram of mutual conversion between a device RGB color space and a CIEXYZ color space.
FIG. 8 is a conceptual diagram showing whether color clip processing is necessary.
[Explanation of symbols]
1 to 4 matrix color conversion unit, 5 matrix determination unit, 6, 7 selector, 11 to 19 multiplication unit, 21 to 26 addition unit, 31 to 33 clip unit, 41 to 43 signal copy unit, 51: Matrix coefficient holding unit.
Claims (14)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002378614A JP4355893B2 (en) | 2002-12-26 | 2002-12-26 | Color conversion processing apparatus and color conversion processing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002378614A JP4355893B2 (en) | 2002-12-26 | 2002-12-26 | Color conversion processing apparatus and color conversion processing method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004213100A true JP2004213100A (en) | 2004-07-29 |
| JP4355893B2 JP4355893B2 (en) | 2009-11-04 |
Family
ID=32815396
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002378614A Expired - Fee Related JP4355893B2 (en) | 2002-12-26 | 2002-12-26 | Color conversion processing apparatus and color conversion processing method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4355893B2 (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006148606A (en) * | 2004-11-19 | 2006-06-08 | Sony Corp | Image processing apparatus and image processing method |
| JP2008127230A (en) * | 2006-11-17 | 2008-06-05 | Jfe Ferrite Corp | MnZnNi FERRITE |
| JP2008536448A (en) * | 2005-04-13 | 2008-09-04 | トムソン ライセンシング | Method and apparatus for video encoding |
| CN113920961A (en) * | 2020-07-10 | 2022-01-11 | 苏州佳世达电通有限公司 | Display device and color adjustment method |
-
2002
- 2002-12-26 JP JP2002378614A patent/JP4355893B2/en not_active Expired - Fee Related
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006148606A (en) * | 2004-11-19 | 2006-06-08 | Sony Corp | Image processing apparatus and image processing method |
| JP2008536448A (en) * | 2005-04-13 | 2008-09-04 | トムソン ライセンシング | Method and apparatus for video encoding |
| JP2008536447A (en) * | 2005-04-13 | 2008-09-04 | トムソン ライセンシング | Method and apparatus for video decoding |
| US8718134B2 (en) | 2005-04-13 | 2014-05-06 | Thomson Licensing | Luma and chroma decoding using a common predictor |
| US8724699B2 (en) | 2005-04-13 | 2014-05-13 | Thomson Licensing | Luma and chroma encoding using a common predictor |
| US8750376B2 (en) | 2005-04-13 | 2014-06-10 | Thomson Licensing | Luma and chroma decoding using a common predictor |
| US8761251B2 (en) | 2005-04-13 | 2014-06-24 | Thomson Licensing | Luma-chroma coding with one common or three distinct spatial predictors |
| US8767826B2 (en) | 2005-04-13 | 2014-07-01 | Thomson Licensing | Luma and chroma encoding using a common predictor |
| US10123046B2 (en) | 2005-04-13 | 2018-11-06 | Thomson Licensing | Method and apparatus for video decoding |
| JP2008127230A (en) * | 2006-11-17 | 2008-06-05 | Jfe Ferrite Corp | MnZnNi FERRITE |
| CN113920961A (en) * | 2020-07-10 | 2022-01-11 | 苏州佳世达电通有限公司 | Display device and color adjustment method |
| CN113920961B (en) * | 2020-07-10 | 2023-03-03 | 苏州佳世达电通有限公司 | Display device and color adjustment method |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4355893B2 (en) | 2009-11-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5678033A (en) | Multi-stage interpolation processor | |
| US8570627B2 (en) | Image processing apparatus for data compression, control method, and computer-readable medium | |
| JP6251029B2 (en) | Control device, image processing device, control method, and program | |
| JP5013805B2 (en) | Processor-readable storage medium | |
| US20170094098A1 (en) | Image forming apparatus, storage medium, and color conversion method | |
| US7302116B2 (en) | Method and apparatus for reduced size image | |
| US20040008381A1 (en) | System and method for converting color data to gray data | |
| US6574004B1 (en) | System and method for converting color data to gray data | |
| CN106296614B (en) | Image processing apparatus and image processing method | |
| JP4355893B2 (en) | Color conversion processing apparatus and color conversion processing method | |
| US8379266B2 (en) | Systems and methods for generating luminance look-up table based on color component values | |
| JPWO2004100529A1 (en) | Image processing for gradation expression | |
| JP2012119968A (en) | Image processing device and image processing program | |
| JP2001016442A (en) | Image processing method and apparatus | |
| JP4443838B2 (en) | Hue-specific color adjustment processing circuit and method | |
| JP3006522B2 (en) | Color reduction processing device | |
| JP4720236B2 (en) | Image processing device | |
| JP4930503B2 (en) | Image processing apparatus and image processing program | |
| JP2001320593A (en) | Image processing apparatus, image forming apparatus having the same, and image processing method | |
| JP2008048261A (en) | Image processor and image processing method | |
| EP0893912A2 (en) | Image processing method and apparatus, and recording medium | |
| JP4483604B2 (en) | Color space conversion device and color space conversion program | |
| JP2004228919A (en) | Method, device and program for preparing definition of color conversion | |
| JPH0668250A (en) | Image processing device | |
| JP2002237944A (en) | Image processing method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051124 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090318 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090430 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090708 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090721 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120814 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120814 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130814 Year of fee payment: 4 |
|
| LAPS | Cancellation because of no payment of annual fees |