JP3927715B2 - 色変換方法および色変換装置 - Google Patents
色変換方法および色変換装置 Download PDFInfo
- Publication number
- JP3927715B2 JP3927715B2 JP37428198A JP37428198A JP3927715B2 JP 3927715 B2 JP3927715 B2 JP 3927715B2 JP 37428198 A JP37428198 A JP 37428198A JP 37428198 A JP37428198 A JP 37428198A JP 3927715 B2 JP3927715 B2 JP 3927715B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- data
- storing
- block
- blocks
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Color Image Communication Systems (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
【発明の属する技術分野】
本発明は、ルックアップテーブル(以下、「LUT」ともいう)に補間演算処理を併用して複数(多次元)の色信号を別の色信号に変換する色変換方法および色変換装置に関する。
【0002】
【従来の技術】
ディジタル化された画像信号のガンマ変換やlog変換といった非線形変換は、LUTを用いて行なわれることが多い。これは、上述のような非線形変換を演算回路で求めようとすると、その演算が比較的複雑なものになり、また、処理時間も長くなるからである。また、このようなLUTは、例えば、8ビットのビデオ信号に何らかの非線形変換を行なう場合、256バイトの容量のメモリがあれば実現することが出来る。因に、この8ビットビデオ信号に対する変換は1つの画像信号を別の性質のもう1つの画像信号に変換するものであるため、そこで使用されるLUTは1次元LUTと呼ばれる。
【0003】
ところで、最近のデスクトップパブリッシング(以下、「DTP」と略す)環境の著しい進歩に伴い、誰もが容易にカラー画像をあつかうことが出来るようになりつつある。DTPにおけるカラー画像の入力機器は、スキャナ、ビデオカメラ等が主であり、出力機器はインクジェット、染料熱昇華型あるいは電子写真等のそれぞれの方式による各種カラープリンタ等である。これらのカラー入,出力機器は、それぞれ固有の色空間を有しており、例えばあるスキャナで得たカラー画像データを、そのまま別のカラープリンタに転送して、画像を出力した場合、その画像の色がスキャナによって読取られたオリジナルの画像の色と一致することはほとんどない。両者の色を一致させるには、いわゆる入力デバイス(入力機器)の色空間を、出力デバイス(出力機器)の色空間に変換するといった処理が必要になる(以下では、この処理を「色変換処理」と称す)。
【0004】
この色変換処理は、具体的には、入力γ補正,輝度濃度変換,マスキング,黒生成,UCR,出力γ補正等の一連の画像処理の全体、もしくはその中の一定の処理をいうが、入力デバイスの3色(一般的には、Red,Blue,Greenの3色、以下、それぞれ「R」,「G」,「B」と略す)の画像信号を同時に参照して、出力デバイス側の3色(例えば、シアン,マゼンタ,イエロー)あるいは4色(例えば、シアン,マゼンタ,イエロー,ブラック)の画像信号に変換するものである。
【0005】
この入力デバイスの3色の画像信号を、出力デバイスの複数色中の1色に変換する処理を、LUTだけを用いて行なうとすると、画像信号1色が8ビットで表わされる場合、入力24ビット、出力8ビットのLUTとなり16M(メガ)バイトの容量のメモリが必要になる。その上、出力デバイスの色数分だけ上述のメモリが必要になるため、実際のメモリ容量は、48〜64Mバイトといった大容量になり、コスト的にも実用的ではない。
【0006】
そこで、LUTを用いた色変換処理では、補間処理を併用してするのが一般的であり、これにより、LUTのためのメモリ容量の大幅な削減を実現している。
【0007】
LUTを用いた入,出力の対応付けに補間演算を用いた色変換処理の一従来例を以下に説明する。
【0008】
まず、入力色データとして、例えばR,G,Bの3つの色信号(各色n+mビット)をそれぞれXi=Xh・2m +Xf、Yi=Yh・2m +Yf、Zi=Zh・2m +Zfと表わす。ここで、Xh,Yh,ZhはXi,Yi,Ziデータの各々の上位nビット信号を表わし、Xf,Yf,ZfはXi,Yi,Ziデータ各々の下位mビット信号を表わす。
【0009】
LUTには、Xh=0,1,2,・・・,2n −1、Yh=0,1,2,・・・,2n −1、Zh=0,1,2,・・・,2n −1の全ての組み合わせ(23n通り)のそれぞれに対して、変換後の色データが格子点データとして格納されており、この格子点データはXh,Yh,Zhを連結した3nビットのアドレス信号によって読みだされる。
【0010】
入力色信号データ(Xi,Yi,Zi)各々の下位mビット、即ちXf,Yf,Zfが、全て“0”の場合は、上記のアドレス信号によってLUTから読みだされる格子点データが、そのまま変換後の色データとなる。そうでない場合には、Xf,Yf,Zfの値に応じて補間処理が行なわれる。
【0011】
この補間演算処理は、格子点データをいくつ用いるか、又、どのような関係の格子点データを用いるかによって、いくつかの方法がある。一般的に、格子点データを多く用いると補間精度は向上するが補間演算処理が複雑になり、処理時間が長くなる。補間精度をそれほど低下させずに比較的簡易な演算処理が可能な補間方法としては、4点補間と称されるものが従来より知られている。これは4つの格子点データを用いて補間処理を行なうものであり、例えば特公昭58−16180号公報において開示されている。以下にその概略を説明する。
【0012】
下位ビット信号Xf,Yf,Zfが3つとも0でない場合、すなわち、Xf≠0、Yf≠0、Zf≠0の場合、変換前の色データは、図1に示すように、8つの格子点で形成される立方体の中に位置する。この立方体は、上位ビット信号(Xh,Yh,Zh)で指定される部分補間空間をなすものであり、また、格子点の間隔は2m であって、下位ビット信号Xf,Yf,Zfによって、この立方体の各格子点間を2m 個に分割した点の1つが規定される。
【0013】
図1に示す立方体を3つの平面(Xf=Yfで規定される平面、Yf=Zfで規定される平面、およびZf=Xfで規定される平面)で分割すると、6つの4面体が定義され、各4面体は、例えば図2に示すように、4つの格子点を有する。変換される入力色データにより定義される上述の部分補間空間上の点(Xi,Yi,Zi)はこの6つの4面体のどれか1つに含まれることになる(境界面はその境界を共有する4面体のいずれかに含まれるものとする)。入力色データ(Xi,Yi,Zi)がいずれの4面体に属するかは、Xf,Yf,Zfの大小関係で定まる。例えば入力色データにXf>Yf>Zfの関係がある場合、入力色データは図2に示す4面体内に位置し、補間処理に用いられる格子点の座標は(Xh,Yh,Zh)、(Xh+1,Yh,Zh)、(Xh+1,Yh+1,Zh)、(Xh+1,Yh+1,Zh+1)の4点となる。各々の格子点座標についてLUTにより対応付けられるデータ、すなわち格子点データをdd(X座標,Y座標,Z座標)と表わし、入力色データ(Xi,Yi,Zi)に対してLUTを用いた補間後のデータをP(Xi,Yi,Zi)と表わすとき、この補間後のデータPは、
となる。上記補間式は、前述した6つの4面体毎に異なることは勿論である。
【0014】
以上のように、補間演算処理は、(1)式に示すように、各々の4面体に対応する4つの格子点データと入力色データの下位ビット信号から生成される係数データとの積ならびに4つの項の加算処理からなる。
【0015】
【発明が解決しようとする課題】
しかしながら、上記(1)式からも明らかなように、補間演算処理には、(Xh,Yh,Zh),……,(Xh+1,Yh+1,Zh+1)等、LUTから格子点データを読み出す際に必要なアドレスを演算したり、Xf,Yf,Zfの大小関係を判定したりする比較処理が必要である。この大小関係により、用いる格子点データや処理内容が異なり、このため、例えば複数画素について補間演算を並列に行うことが困難であるという問題がある。
【0016】
すなわち、上記(1)式の演算精度は16ビットもあれば十分である。具体的には、格子点データのビット数は8〜10ビット、入力下位ビットデータXf,Yf,Zfのビット数は3〜5ビットである。また、一般的なその他の画像処理についてもほとんどの場合、演算精度は16ビットもあれば、十分であり、場合によっては、8ビットの演算精度があればよいこともある。
【0017】
これに対して、最近のCPUの性能向上には著しいものがあり、その汎用レジスタが32ビットあるいは64ビットの長さを有したものであることが通常となりつつある。このようなレジスタ長は上記補間に係る画像処理においては、オーバースペックであり、CPUの性能を有効に活用していないことにもなる。
【0018】
一方で、情報処理に関してやりとりされる情報は、以前のテキストベースから、画像ベースへ変わりつつある。このような環境では、JPEGやMPEGといった画像圧縮伸張処理といったものがより重要になると共に、処理の高速性も要求されることになる。こうしたニーズに応えるため、マルチメディアに対応した機能を有するCPUが提供されている。すなわち、これらのCPUでは、64ビットのレジスタを、32ビット×2、16ビット×4あるいは8ビット×8という構成で使用することにより、精度の低い演算を一度に複数個並列処理したり、一度に積和演算を行なうことができる。
【0019】
例えば、上述のJPEGやMPEG等の処理に、上述のマルチメディア対応機能を有効に活用した例は、よく知られたところである。また、画像中の各画素に同じような演算処理を行なうフィルタリング等は、並列処理化が容易で、上記マルチメディア対応機能を有効に活用することもできる。
【0020】
しかしながら、下位ビットデータの大小関係のような条件分岐処理を伴う上述の補間演算は、上記マルチメディア対応機能を有効に活用することができず、処理の高速化を図ることが比較的難しいという問題があった。
【0021】
本発明は、このような問題を解消するためになされたものであり、その目的とするところは、例えばマルチメディア対応機能を有するCPU性能を十分に活用して補間演算の並列処理を実現することが可能な色変換方法および色変換装置を提供することにある。
【0022】
【課題を解決するための手段】
そのために本発明では、ルックアップテーブルに補間演算を併用することによって色変換を行う色変換方法であって、入力色データのうち、当該入力色データの補間空間における位置をその大小関係によって示すデータと、入力色データのうち、ルックアップテーブルのアドレスを示すデータおよび前記位置を大小関係によって示すデータに基づいてルックアップテーブルから読出される格子点データを、前記大小関係に応じて予じめ定められた複数のレジスタに格納し、該複数のレジスタ間において予じめ定められた補間演算式に従い当該レジスタが格納するデータを用いて補間演算を行う、ステップを有したことを特徴とする。
【0023】
また、ルックアップテーブルに補間演算を併用することによって色変換を行う色変換装置であって、入力色データのうち、当該入力色データの補間空間における位置をその大小関係によって示すデータと、入力色データのうち、ルックアップテーブルのアドレスを示すデータおよび前記位置を大小関係によって示すデータに基づいてルックアップテーブルから読出される格子点データを、前記大小関係に応じて予じめ定められた複数のレジスタに格納する格納手段と、該複数のレジスタ間において予じめ定められた補間演算式に従い当該レジスタが格納するデータを用いて補間演算を行う演算手段と、を有したことを特徴とする。
【0024】
以上の構成によれば、入力色データのうちその補間空間における位置を大小関係によって示す、例えば下位ビットデータと、この大小関係に応じてルックアップテーブルから読出される格子点データとが、上記大小関係に応じて予じめ定められた複数のレジスタに格納され、これらのレジスタ間で予じめ定められた補間演算式に従い、それらのレジスタに格納されるデータを用いて補間演算を行うので、本来、上記大小関係に応じて異なる補間演算式もしくはこの式の各項の演算は、各レジスタ間の演算関係を規定する一つの式に統一でき、これにより、例えば複数画素間の補間演算や演算式の各項の計算を並列に行うことができる。
【0025】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【0026】
図3は、本発明の一実施形態として以下で示す実施形態1〜4の色変換処理で行われる処理やハードウェア構成の概略を示すブロック図である。
【0027】
同図に示すように、本発明の一実施形態による色変換処理は、後述のように補間演算に用いられるレジスタ群301と格子点データを格納したイエロー(Y),マゼンタ(M),シアン(C),ブラック(K)のそれぞれに対応したルックアップテーブル(以下、「LUT」という)302Y,302M,302C,302Kを用いて行われる。
【0028】
大小判別部303では、例えば、R,G,B各色毎の8ビットの入力色データXi,Yi,Ziのうち、mビットの下位ビットデータXf,Yf,Zfに基づいて、それらの大小関係が判別される。また、アドレス生成部304では、入力色データのうちnビットの上位ビットデータに基づき、上記大小関係情報を参照して4点補間に係る格子点データをLUTから読出すためのアドレスが生成される。なお、この大小判別部303およびアドレス生成部304は、CPUの実行によるソフトウェアとして構成されてもよく、あるいは、ハードウェアとして構成されてもよい。
【0029】
アドレス生成部304によって生成された各4つのアドレスに基づき、それぞれの色のLUT302Y,302M,302C,302Kからはそれぞれ4つの格子点データが読出されて、後述のようにレジスタ群301の所定のレジスタに格納される。また、レジスタ群301には、下位ビットデータXf,Yf,Zfも、後述のように大小関係に応じて入力し所定のレジスタに格納される。
【0030】
レジスタ群301では、以下の各実施形態で詳述されるように、CPUの制御の下、レジスタ間での減算、積和演算、シフト等が行われることによって補間演算が行われ、最終的に変換色データPを得ることができる。
【0031】
ここで、以下で説明する各実施形態で用いる補間演算式について説明する。まず、補間演算式を簡潔に表現するため、着目する補間立方体の頂点に位置する格子点データを図1のように、A,B,C,D,E,F,G,Hと表わす。そして、この補間演算式は、3つの入力色データXi,Yi,Zi各々に下位mビットデータXf,Yf,Zf間の大小関係によって、すなわち、図2に示すような図面体のうち入力色データXi,Yi,Ziがいずれの4面体に属するかによって、次の異なる6つの補間式のいずれかによって表わされる。
【0032】
また、上記6つの補間式は、それらを単に変形することによって以下の様に表わすこともできる。
【0033】
同様に、さらなる変形によって以下の様に表わすこともできる。
【0034】
(c−1)〜(c−6)は、(b−1)〜(b−6)における第2〜4項を、単にXf,Yf,Zfの順に並び替えたものである。
【0035】
並列処理を実現するための方法は、(a−1)〜(a−6)、(b−1)〜(b−6)、(c−1)〜(c−6)のどの式に基づくかによって、その実現方法は異なるが、以下の第1、第2の実施形態では、(b−1)〜(b−6)式に基づき、第3実施形態では、(a−1)〜(a−6)式に基づき、そして、第4実施形態では、(c−1)〜(c−6)式に基づき、それぞれレジスタを利用して補間演算を行う方法について説明する。
【0036】
(第1の実施形態)
上述したように、本実施形態では、(b−1)〜(b−6)式に基づき、並列処理を実現する方法について説明する。本実施形態の並列処理の概要は次の通りである。
【0037】
(d−1)図3にて上述したCPUの並列演算可能な演算レジスタを用い、そのレジスタ長を64ビットとし、これを、16ビット×4個のレジスタとして使用する。
【0038】
(d−2)色変換される入力色データは、3色(Xi,Yi,Zi)とする。
【0039】
(d−3)処理に係る画像の連続する4画素の色変換処理について並列に処理する。
【0040】
なお、以下の説明では、上記4画素を区別するため、連続する4画素のいずれに係るデータかを添字1,2,3および4で示す。例えば図1に示す格子点データAは、A1,A2,A3,A4と表記する。
【0041】
本実施形態の色変換処理は、以下の手順を行なわれる。図4(a)〜(j)は、それぞれこの手順で用いられるレジスタおよびその内容を示す図である。
【0042】
(1)4つの各画素ごとに、入力色データXi,Yi,Ziの上位ビットデータから部分補間空間(立方体、図1参照)を定め、各立方体中のAに位置する格子点データdd(Xh,Yh,Zh)を、図3に示すLUTから読出し、図4(a)に示すように、各々16ビットデータとして、A1,A2,A3,A4の順に連結し、上述したようにCPUの並列演算可能なレジスタ401に格納する。
【0043】
(2)次に、各画素ごとに入力色データの下位ビットデータの最大値を求め、図4(b)に示すように、それを4つ連結し、レジスタ402に格納する。図4(b)は、1画素目の最大値がYf、2画素目の最大値がXf、3画素目の最大値がZf、4画素目の最大値がXfである例を示している。
【0044】
(3)さらに、各画素毎の上記最大値に応じて、最大値がXfの場合は、(1)の処理で定めた部分補間空間の格子点データB=dd(Xh+1,Yh,Zh)を、最大値がYfの場合は格子点データC=dd(Xh,Yh+1,Zh)を、最大値がZfの場合は格子点データE=dd(Xh,Yh,Zh+1)を、それぞれ選択してLUTから読出し、図4(c)に示すように、それらを4つ連結し、レジスタ403に格納する。図4(c)に示す例では、図4(b)に示す画素毎の最大値となる下位ビットデータに対応して、C1,B2,E3,B4がレジスタ403に格納される。
【0045】
(4)同様に各画素ごとに入力色データの下位ビットデータの中央値を求め、図4(d)に示すようにそれらを4つ連結し、レジスタ404に格納する。図4(d)に示す例は、1画素目の中央値がZf、2画素目の中央値がYf、3画素目の中央値がXf、4画素目の中央値がZfである場合を示している。
【0046】
(5)次に、最大値と中央値が、Xf,Yf,Zfのいずれの組合せになるかに基づいて、格子点データD=dd(Xh+1,Yh+1,Zh),F=dd(Xh+1,Yh,Zh+1),G=dd(Xh,Yh+1,Zh+1)のいずれかを各画素ごとに選択し、LUTから読出し、図4(e)に示すように、それらを4つ連結し、レジスタ405に格納する。例えば図4(e)に示す1画素目の内容は、図4(b),(d)に示すYfとZfの組合せに対応してGが選択される。同様に、2画素目から4画素目については、D2,F3,F4がレジスタ405に格納される。
【0047】
(6)同様に各画素ごとに入力色データの下位ビットデータの最小値を求め、図4(f)に示すように、それらを4つ連結しレジスタ406に格納する。図4(f)に示す例は、1画素目の最小値がXf、2画素目の最小値がZf、3画素目の最小値がYf、4画素目の最小値がYfである場合を示している。
【0048】
(7)最後に、各画素毎に、部分補間空間の格子点データH=dd(Xh+1,Yh+1,Zh+1)を、図4(g)に示すように、4つ連結したH1,H2,H3,H4をレジスタに格納する。
【0049】
以上説明した(1)〜(7)の処理は、その説明からも明らかなように、入力色データで定まる部分補間空間の中から、入力色データの下位ビットデータの大小関係に基づいて補間演算に用いる、4面体を定める処理、もしくはその4面体の格子点データを用意する処理である。本実施形態では、このような処理を所定のレジスタに格納する処理によって置き換えたものともいえる。
【0050】
(8)以上の格納処理の後、各対応する画素のレジスタ毎に、まず、図4(c)に示すレジスタ403の値から、図4(a)に示すレジスタ401の値を引き、次に図4(b)に示すレジスタ402の値を掛け、これをレジスタ408に保持する(図4(h))。
【0051】
(9)同様に、図4(e)に示すレジスタ405の値から、図4(c)に示すレジスタ403の値を引き、次に、図4(d)に示すレジスタ404の値を掛け、これをレジスタ409に保持する(図4(i))。
【0052】
(10)さらに、図4(g)に示すレジスタ407の値から、図4(e)に示すレジスタ405の値を引き、図4(f)に示すレジスタ406の値を掛け、これをレジスタ410に保持する(図4(j))。
【0053】
以上の(8)〜(10)の処理によって、各レジスタ間の差を演算し、その後、レジスタ間の積を演算する処理によって、上記(b−1)〜(b−6)式におけるかっこ内の第2〜4項がそれぞれ求められたことになる。
【0054】
(11)次に、図4(a)に示すレジスタの値を、それぞれ16ビットの中でmビット左へシフトして、上記(b−1)〜(b−6)式のかっこ内第1項、すなわち2m Aが形成され上記で求めた図4(h)、(i)および(j)でそれぞれ示すレジスタ408,409および409の値を加算する。さらに、この結果について、mビット右へシフトする。これによって、4画素分の補間演算が並列に処理されることにより4画素分同時に変換後の例えばシアンについての色データPを得ることができる。
【0055】
以上説明したように、本実施形態では、入力色データの下位ビットデータの大小関係(最大値,中央値,最小値)に応じて、格子点データおよびその大小関係に係る数である下位ビットデータを格納するレジスタを定めていることにより、これら所定のレジスタに上記大小関係に応じてそれぞれのデータを格納する処理((1)〜(7)の処理)を行うだけで、その後の補間演算((8)〜(11)の処理)自体には、上記大小関係もしくはその判別処理が現われないようにすることができる。このことは、本実施形態の上記(8)〜(11)で行われる補間処理が、上記大小関係に応じて異なる6つの(b−1)〜(b−6)式を、1つの統一的な補間式として扱かい、これに従い演算を行うことと等価であることを意味する。この結果、画素毎に入力色データ、従って、その下位ビットデータで定まる大小関係が異なるにもかかわらず、1つの上記統一的な補間式に従い4画素分の補間演算を並列に行うことを可能としている。
【0056】
なお、以上の説明からも明らかなように、並列に処理される画素数は、レジスタのレジスタ長によって制約を受けて定まるものであり、本発明の本質をなすものではない。従って、レジスタ長が許せば、4画素以上の並列処理に可能であり、また、レジスタ長に応じて4画素より少ない画素数での並列処理も本発明の適用範囲である。
【0057】
以上のようにして得る、色変換データが、1画素4色(シアン(c)、マゼンタ(m)、イエロー(y)、ブラック(k))の場合は、上記処理がさらに3色分実行される。例えば、以上説明した処理がシアンに相当し、次の色がマゼンタの場合、図4(a)のレジスタ401にはマゼンタに相当する格子点データ(Am1Am2Am3Am4)がロードされ、図4(c)レジスタ403には(Cm1Bm2Em3Bm4)が、図4(e)のレジスタ405には(Gm1Dm2Fm3Fm4)が、そして、図4(g)のレジスタ407には、(Hm1Hm2Hm3Hm4)データがロードされ、また、その他のレジスタに対応する下位ビットデータがロードされる。その後は、上記(8)〜(11)と同様な並列演算がなされてマゼンタ色の補間演算が実行される。次に、イエロー、ブラック色の補間処理が同様になされる。以下、次4画素(1画素4色)毎に並列処理がなされ、色変換が行われていく。
【0058】
以上の本実施形態の並列処理によって、従来のシーケンシャルな処理に比べて単純計算で4倍の高速化を計ることができる。
【0059】
(第2実施形態)
本発明の第2の実施形態は、上述した第1実施形態のように4つの画素に対してこれらの色変換処理を並列に行なうのではなく、1画素づつ色変換処理を行なうものであるが、前述したCPUの並列演算機能を有効に活用し、補間演算処理を高速に行なう方法に関するものである。
【0060】
本実施形態では、前述の(b−1)〜(b−6)式に基づいて補間演算処理を行ない、その場合の1画素毎に行なう処理は、以下のようになる。
【0061】
(1)4つの格子点データをアクセスするためのアドレスを計算する。
【0062】
(2)格子点データの差分値に掛ける係数を大きい順に並べレジスタに格納する。
【0063】
(3)上記アドレスに基づいて4つの格子点データを読み出しレジスタに格納する。
【0064】
(4)並列演算機能を用いて補間演算処理を行ない、変換色データを求める。
【0065】
上記(1)および(2)の処理は、Xf,Yf,Zfの大小関係に基づいて条件分岐して行なう処理であり、(3)および(4)の処理は、大小関係に基づく条件分岐を必要としないで行なう処理である。すなわち、下位ビットデータの大小関係による条件分岐が現われる処理は、上述の第1実施形態と同様、それぞれの所定のレジスタへ格子点データ等を格納する処理によって置き換えるものである。
【0066】
上述(1)および(2)の処理を示すフローチャートを図5に示す。
【0067】
同図に示すように、まずステップS501では、格子点データAを読み出すためのアドレス情報Adr Aを生成する。すなわち、入力色データXi,Yi,Ziの各上位nビットデータXh,Yh,Zhを連結して得た3nビットの値をAdr Aとする。次に、ステップS503では、格子点データHを読み出すためのアドレス情報Adr Hを生成する。この処理は、上記Adr Aに(22n+2n +1)を加算してAdr Hとする。
【0068】
次に、ステップS505〜513では、下位ビットデータXf,Yf,Zfの大小関係を判別する処理を行う。すなわち、ステップS505は、Xf≧Yfが成り立つか否かを判定する比較処理、ステップS507は、Yf≧Zfが成り立つか否かを判定する比較処理、ステップS509は、Xf≧Zfが成り立つか否かを判定する比較処理、ステップS511は、Zf≧Yfが成り立つか否かを判定する比較処理、ステップS513は、Xf≧Zfが成り立つか否かを判定する比較処理である。
【0069】
以上の各判定に基づき、それぞれステップS521では、ステップS505とステップS507が成り立つ(肯定判断)時に行なう処理、ステップS522では、ステップS505が成り立ち、ステップS507が成り立たたず、ステップS509が成り立つ時に行なう処理、ステップS523では、ステップS505が成り立ち判定507と判定509が成り立たたない時に行なう処理、ステップS524では、ステップS505が成り立たたず、ステップS511が成り立つ時に行なう処理、ステップS525では、ステップS505とステップS501が成り立たたず、ステップS513が成り立つ時に行なう処理、ステップS526では、ステップS505とステップS507とステップS509が全て成り立たない時に行なう処理を行う。
【0070】
すなわち、Xf,Yf,Zfの大小関係が、Xf≧Yf≧Zfの時はステップS521で上記大小関係に応じた四面体の残りの2つの格子点アドレスが生成されるとともに下位ビットデータの大小関係に応じたレジスタへの格納が行われる。同様に、Xf≧Zf>Yfの時はステップS522の処理、Zf>Xf≧Yfの時はステップS523の処理、Zf≧Yf>Xfの時はステップS524の処理、Yf>Xf≧Zfの時はステップS525の処理、Yf>Zf>Xfの時はステップS526の処理がそれぞれ行われる。
【0071】
図6は本実施形態におけるレジスタの構成を示す図である。以上のステップS521〜S526の処理で求められた下位ビットデータ等は、同図に示すレジスタR0に格納される。すなわち、レジスタR0(64ビット)の値は、ステップS521では、2m,Xf,Yf,Zfの値(各16ビット)を連結した値、ステップS522では、2m,Xf,Zf,Yfの値を連結した値、ステップS523では、2m,Zf,Xf,Yfの値を連結した値、ステップS524では、2m,Zf,Yf,Xfの値を連結した値、ステップS525では、2m,Yf,Xf,Zfの値を連結した値、ステップS526では、2m,Yf,Zf,Xfの値を連結した値となる。
【0072】
また、上記(1)に述べたアドレスの計算結果は、格子点Aに隣接する格子点データを読み出すアドレスをAdr next A、格子点Hに隣接する格子点データを読み出すアドレスをAdr before Hとすると、ステップS521では、Adr next A=Adr A+22n,Adr before H=Adr next A+2n ,ステップS522では、Adr next A=Adr A+22n,Adr before H=Adr next A+1,ステップS523では、Adr next A=Adr A+1,Adr before H=Adr next A+22n,ステップS524では、Adr next A=Adr A+1,Adr before H=Adr next A+2n ,ステップS525では、Adr next A=Adr A+2n ,Adr before H=Adr next A+22n,ステップS526では、Adr next A=Adr A+2n ,Adr before H=Adr next A+1となる。
【0073】
以上のステップS521〜526の処理のいずれかが下位ビットデータの大小関係に応じて行われた後は、上述の(3)の処理を行なう。すなわち、ステップS527において、以上の処理で選択された4面体の4つの格子点データを読み出しこれらをレジスタに格納する処理を行う。
【0074】
この処理では、途中結果と最終読み出し結果の2つの値を図6に示すレジスタR1,R2にそれぞれ格納する。すなわち、アドレス値Adr Aで読み出される格子点データを[Adr A]とすると、レジスタR1には、0,[Adr A][Adr next A][Adr before H](各16ビット)を連結した値、レジスタR2には、[Adr A][Adr next A],[Adr before H],[Adr H]を連結した値をそれぞれ格納する。ここで、レジスタR1の内容を16ビット左へシフトした後に、Adr Hから読み出した格子点データHを挿入したものがレジスタR2の内容である。
【0075】
最後にステップS528において、上記(4)に述べた補間演算処理を行なう。図6に示すように、まず、R3=R2−R1の処理を16ビット単位で行なう。これによって前述の(b−1)〜(b−6)式におけるかっこ内の各項がレジスタR3に格納されたことになる。これにより、下位ビットデータの大小関係に基づく異なる6つの補間式にかかわらず、補間演算自体を1つの統一的な処理によって行うことが可能となる。
【0076】
次に、上記のレジスタR3とレジスタR0との間でそれぞれの内容の積和演算を行ない、その結果をレジスタR4に格納する。これにより、レジスタR4の上位32ビットには、対応する2つの16ビットデータの積和演算結果が格納され、下位32ビットにも、対応する2つの16ビットデータの積和演算結果が格納される。そして、この2つの積和を加算し、mビット左へシフトすることによって、変換された色データPを得ることができる。
【0077】
以上説明した1つの入力データ(Xi,Yi,Zi)に対する色変換処理は、変換によって生成される。例えば黄色、シアン、マゼンタ、黒の4色について点順次で行うが、この場合、前述の(1)および(2)の処理は、4色共通で1回のみ行なえば済む。これは、LUTから格子点データを読出すためのアドレスは、入力色データ(例えばR,G,Bの各値)がこれら4色の変換データを得る間変化しないためである。一方、前述の(3)および(4)の処理は変換して得られる色毎にLUTの内容(格子点データ)が異なることから、これらの処理を4色分繰り返すことで、4色分の変換色データを求めることができる。
【0078】
この場合に、上記繰り返し処理を図7に示すように、ループ制御によるものとすると、条件判定(ステップS707)が存在するので処理時間が増す。これに対し、本実施形態では、図8のように、格子点データを読み出して各色毎の図6に示すレジスタへ格納する処理を4色分まとめて行ない(ステップS801〜S807)、その後補間演算処理を4色分まとめて行なうようにすればよい。
【0079】
これにより、1画素4色の補間演算を、従来方式に比べ大幅な高速化を図ることができる。
【0080】
(第3の実施形態)
本発明の第3の実施形態は、前述の(a−1)〜(a−6)式に基づいて補間演算処理を行なうものである。
【0081】
図9は、下位ビットデータの大小関係の判別がなされた後の本実施形態の補間演算処理のうち、Yf≧Zf≧Xfの場合の処理をレジスタ構成によって説明する図である。
【0082】
レジスタR10には、大きさの順に、下位ビットデータ等2m ,Yf,Zf,Xfがロードされる。そしてレジスタR11は、レジスタR10の内容を16ビット左にシフトして、Yf,Zf,Xf,0を格納したものである。次に、レジスタR10−レジスタR11をその内容について実行し、その結果をレジスタR12に格納する。次に、式(a−5)に示されている格子点データA,C,G,HがレジスタR3に格納される。そして、以上のレジスタ間で積和演算(2m −Yf)・A+(Yf−Zf)・Cおよび(Zf−Xf)・C+Xf・Hがなされ、その結果がレジスタR14に格納される。さらに、レジスタR14の上位32ビットの値と下位32ビットの値の加算演算がなされた後、mビット右シフト演算されて、変換色データが得られる。
【0083】
なお、上記演算においては、減算演算結果と積和演算結果は、説明を分かり易くするために各々レジスタR12,R14に格納されるが、演算結果の格納レジスタは、R12,R14に限られたことではなく、空いているレジスタならばどこでも良い。
【0084】
以上の演算についてシアン,マゼンタ,イエロー,ブラックの各色について行う場合、各色のA,C,G,Hに相当すめ格子点データがロードされる点や下位ビットデータが大小関係に応じて格納される処理は、上述の第2実施形態と同様である。これにより、1画素4色の補間演算について、従来方式に比べ大幅な高速化を図ることができる。
【0085】
(第4の実施形態)
本発明の第4の実施形態は、前述の(c−1)〜(c−6)式に基づいて補間演算処理を行なうものである。
【0086】
図10は、下位ビットデータがYf≧Zf≧Xfの場合について本実施形態の補間演算をレジスタ構成によって示す図である。
【0087】
前述の(c−1)〜(c−6)式に示されているように、レジスタR100には、格子点データA,H,C,Gが、またレジスタR101には、格子点データ0,G,A,Cが格納される。そして、その内容についてレジスタR0−レジスタR1が演算され、その結果が、レジストR102に書き込まれる。
【0088】
また、レジストR3には、2m ,Xf,Yf,Zfが格納される。そして、積和演算A+Xf(H−G)およびYf(C−A)+Zf(G−C)が並列に実行される。さらに、それらの結果の加算演算およびmビット右シフト演算がなされて、変換色データが得られる。
【0089】
なお、上記演算において、減算演算結果と積和演算結果は、説明を分かり易くするために各々レジストR102,R104に格納されるが、演算結果の格納レジストは、R102,R104に限られたことではなく、空いているレジスタならばどこでも良い。
【0090】
以上の演算について、シアン,マゼンタ,イエロー,ブラックの各色について行う場合、各色毎の格子点データおよび下位ビットデータの格納処理は、上述した第2実施形態と同様になされる。これにより、1画素4色の補間演算を従来方式に比べ大幅に高速化することができる。
【0091】
<他の実施形態>
本発明は上述のように、複数の機器(たとえばホストコンピュータ、インタフェース機器、リーダ、プリンタ等)から構成されるシステムに適用しても一つの機器(たとえば複写機、ファクシミリ装置)からなる装置に適用してもよい。
【0092】
また、前述した実施形態の機能を実現するように各種のデバイスを動作させるように該各種デバイスと接続された装置あるいはシステム内のコンピュータに、前記実施形態機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)を格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも本発明の範疇に含まれる。
【0093】
またこの場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
【0094】
かかるプログラムコードを格納する記憶媒体としては例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0095】
またコンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけではなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【0096】
さらに供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
【0097】
【発明の効果】
以上説明したように、本発明によれば、入力色データのうちその補間空間における位置を大小関係によって示す、例えば下位ビットデータと、この大小関係に応じてルックアップテーブルから読出される格子点データとが、上記大小関係に応じて予じめ定められた複数のレジスタに格納され、これらのレジスタ間で予じめ定められた補間演算式に従い、それらのレジスタに格納されるデータを用いて補間演算を行うので、本来、上記大小関係に応じて異なる補間演算式もしくはこの式の各項の演算は、各レジスタ間の演算関係や規定する一つの式に統一でき、これにより、例えば複数画素間の補間演算が演算式の各項の計算を並列に行うことができる。
【0098】
この結果、マルチメディア対応機能を有するCPUの並列処理機能を有効に活用することが可能となり、シーケンシャルに色変換処理する場合に比べ処理速度を大幅に高速化できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る、色変換処理で用いるLUTにおける入力色データと格子点データとの関係を示す模式図である。
【図2】上記LUTのうち補間演算に用いる4面体(4つの格子点)の一例を示す模式図である。
【図3】本発明の一実施形態に係る色変換処理の概略構成を示すブロック図である。
【図4】(a)〜(j)は、本発明の第1の実施形態に係り、4画素分の入力色データから4画素分の変換色データを並列に補間演算処理して求める処理をレジスタの構成によって示す図である。
【図5】本発明の第2の実施形態に係り、4つの格子点データをアクセスするためのアドレスを計算する処理と、格子点データの差分値に掛ける係数を大きい順に並べレジストに格納する処理を示すフローチャートである。
【図6】上記第2実施形態の色変換処理における補間演算処理をレジスタ構成によって説明する図である。
【図7】上記第2実施形態との比較例を示し、ループ処理を用いて1画素の入力色データを4色の色データに変換する処理を示すフローチャートである。
【図8】上記第2実施形態に係り、図7に示すループ処理を用いないで1画素の色データを4色の色データに変換する処理を示すフローチャートである。
【図9】本発明の第3実施形態に係る補間演算処理をレジスタ構成によって示す図である。
【図10】本発明の第4実施形態に係る補間演算処理のレジスタ構成によって示す図である。
【符号の説明】
301 レジスタ群
302Y,302M,302C,302K LUT(ルックアップテーブル)303 大小判別部
304 アドレス生成部
401,402,403,404,405,406,407,408,409,410,R0,R1,R2,R3,R4,R10,R11,R12,R13,R14,R100,R101,R102,R103,R104 レジスタ
Claims (11)
- ルックアップテーブルに補間演算を併用することによって色変換を行う色変換方法であって、
入力色データのうち、当該入力色データの補間空間における位置をその大小関係によって示すデータと、入力色データのうち、ルックアップテーブルのアドレスを示すデータおよび前記位置を大小関係によって示すデータに基づいてルックアップテーブルから読出される格子点データを、前記大小関係に応じて予じめ定められた複数のレジスタに格納し、
該複数のレジスタ間において予じめ定められた補間演算式に従い当該レジスタが格納するデータを用いて補間演算を行う、
ステップを有したことを特徴とする色変換方法。 - 前記入力色データはそれぞれ(n+m)ビットの3色のデータXi,Yi,Ziで構成され、該データXi,Yi,Ziを
Xi=Xh・2m +Xf
Yi=Yh・2m +Yf
Zi=Zh・2m +Zf
と表わし、前記ルックアップテーブルのアドレスを示すデータをXh,Yh,Zh、前記位置を大小関係によって示すデータをXf,Yf,Zfとするとき、
前記色変換方法は、(Xh,Yh,Zh)で規定される補間空間の8格子点の内、(Xf,Yf,Zf)の大小関係によって規定される4格子点のデータを用いて補間演算を実行する色変換方法であって、
4画素分の(Xh,Yh,Zh)格子点データをレジスタaに格納するステップと、
4画素分の(Xf,Yf,Zf)の最大値をレジスタbに格納するステップと、
4画素分の(Xh,Yh,Zh)格子点に隣接する格子点データをレジスタcに格納するステップと4画素分の(Xf,Yf,Zf)の中央値をレジスタdに格納するステップと、
4画素分の(Xh+1,Yh+1,Zh+1)格子点に隣接する格子点データをレジスタeに格納するステップと、
4画素分の(Xf,Yf,Zf)の最小値をレジスタfに格納するステップと、
4画素分の(Xh+1,Yh+1,Zh+1)格子点データをレジスタgに格納するステップと、
4画素分並列に(レジスタc−レジスタa)・レジスタbを演算し、その結果をレジスタhに格納するステップと、
4画素分並列に(レジスタe−レジスタc)・レジスタdを演算し、その結果をレジスタiに格納するステップと、
4画素分並列に(レジスタg−レジスタe)・レジスタfを演算し、その結果をレジスタjに格納するステップと、
前記レジスタaの値をmビット左へシフトして、その結果に4画素分並列して、前記レジスタh,レジスタi,レジスタjの値の加算演算をするステップ
により4画素分並列に補間演算処理することを特徴とする請求項1に記載の色変換方法。 - 前記レジスタa,レジスタc,レジスタe,レジスタgのデータをシアン,マゼンタ,イエロー,ブラック毎に変えて色変換処理することを特徴とする請求項2に記載の色変換方法。
- 前記入力色データはそれぞれ(n+m)ビットの3色のデータXi,Yi,Ziで構成され、該データXi,Yi,Ziを
Xi=Xh・2m +Xf
Yi=Yh・2m +Yf
Zi=Zh・2m +Zf
と表わし、前記ルックアップテーブルのアドレスを示すデータをXh,Yh,Zh、前記位置を大小関係によって示すデータをXf,Yf,Zfとするとき、
前記色変換方法は、(Xh,Yh,Zh)で規定される補間空間の8格子点の内、(Xf,Yf,Zf)の大小関係によって規定される4格子点のデータを用いて補間演算を実行する色変換方法であって、
4つのブロックに分割されたレジスタ0の最上位ブロック2m を格納するステップと、
前記レジスタ0の最上位から2番目のブロックに(Xf,Yf,Zf)の最大値を格納するステップと、
前記レジスタ0の最上位から3番目のブロックに(Xf,Yf,Zf)の中央値を格納するステップと、
前記レジスタ0の最上位から4番目のブロックに(Xf,Yf,Zf)の最小値を格納するステップと、 4つのブロックに分割されたレジスタ1の最上位ブロックに0を格納するステップと、
前記レジスタ1の最上位から2番目のブロックに(Xh,Yh,Zh)格子点データを格納するステップと、
前記レジスタ1の最上位から3番目のブロックに(Xh,Yh,Zh)格子点に隣接する格子点データを格納するステップと、
前記レジスタ1の最上位から4番目のブロックに(Xh+1,Yh+1,Zh+1)格子点に隣接する格子点データを格納するステップと、
前記レジスタ1の内容をレジスタ2にロードし、そして、レジスタ2を1ブロック分左へシフトした後、最上位から4番目のブロックに(Xh+1,Yh+1,Zh+1)格子点データを格納するステップと、
4ブロック並列に前記レジスタ2−前記レジスタ1の演算を行ない、その結果をレジスタ3に格納するステップと、
(前記レジスタ0の1ブロック×前記レジスタ3の1ブロック+前記レジスタ0の2ブロック×前記レジスタ3の2ブロック)と(前記レジスタ0の3ブロック×前記レジスタ3の3ブロック+前記レジスタ0の4ブロック×前記レジスタ3の4ブロック)の2つの積和演算を並列に実行し、その結果を各々レジスタ4の1−2ブロックと3−4ブロックに格納するステップと、
前記レジスタ4の1−2ブロックと3−4ブロック値を加算して、mビット右シフトするステップ、
により並列に補間演算処理することを特徴とする請求項1に記載の色変換方法。 - 前記レジスタ1および前記レジスタ2の格子点データをシアン,マゼンタ,イエロー,ブラック毎に変えて色変換処理することを特徴とする請求項4に記載の色変換方法。
- 前記入力色データはそれぞれ(n+m)ビットの3色のデータXi,Yi,Ziで構成され、該データXi,Yi,Ziを
Xi=Xh・2m +Xf
Yi=Yh・2m +Yf
Zi=Zh・2m +Zf
と表わし、前記ルックアップテーブルのアドレスを示すデータをXh,Yh,Zh、前記位置を大小関係によって示すデータをXf,Yf,Zfとするとき、
前記色変換方法は、(Xh,Yh,Zh)で規定される補間空間の8格子点の内、(Xf,Yf,Zf)の大小関係によって規定される4格子点のデータを用いて補間演算を実行する色変換方法であって、
4つのブロックに分割されたレジスタ0の最上位ブロック2m を格納するステップと、
前記レジスタ0の最上位から2番目のブロックに(Xf,Yf,Zf)の最大値を格納するステップと、
前記レジスタ0の最上位から3番目のブロックに(Xf,Yf,Zf)の中央値を格納するステップと、
前記レジスタ0の最上位から4番目のブロックに(Xf,Yf,Zf)の最小値を格納するステップと、 前記レジスタ0の内容をレジスタ1に格納し、1ブロック分左にシフトするステップと、
ブロック毎に並列にそのデータについて(レジスタ0−レジスタ1)の減算演算をし、その結果をレジスタ2に格納するステップと、
4つのブロックに分割されたレジスタ3の最上位ブロックに(Xh,Yh,Zh)格子点データを格納するステップと、
前記レジスタ1の最上位から2番目のブロックに(Xh,Yh,Zh)格子点に隣接する格子点データを格納するステップと、
前記レジスタ1の最上位から3番目のブロックに(Xh+1,Yh+1,Zh+1)格子点に隣接する格子点データを格納するステップと、
前記レジスタ1の最上位から4番目のブロックに(Xh+1,Yh+1,Zh+1)格子点データを格納するステップと、
(前記レジスタ2の1ブロック×前記レジスタ3の1ブロック+前記レジスタ2の2ブロック×前記レジスタ3の2ブロック)と(前記レジスタ2の3ブロック×前記レジスタ3の3ブロック+前記レジスタ2の4ブロック×前記レジスタ3の4ブロック)の2つの積和演算を並列に実行し、その結果を各々レジスタ4の4つに分割される第1,第2ブロックと第3,第4ブロックに格納するステップと、
前記レジスタ4の第1,第2ブロックと第3,第4ブロックのデータを加算して、mビット右シフトするステップ、
により並列に補間演算処理することを特徴とする請求項1に記載の色変換方法。 - 前記レジスタ3の格子点データをシアン,マゼンタ,イエロー,ブラック毎に変えて色変換処理することを特徴とする請求項6に記載の色変換方法。
- 前記入力色データはそれぞれ(n+m)ビットの3色のデータXi,Yi,Ziで構成され、該データXi,Yi,Ziを
Xi=Xh・2m +Xf
Yi=Yh・2m +Yf
Zi=Zh・2m +Zf
と表わし、前記ルックアップテーブルのアドレスを示すデータをXh,Yh,Zh、前記位置を大小関係によって示すデータをXf,Yf,Zfとするとき、
前記色変換方法は、(Xh,Yh,Zh)で規定される補間空間の8格子点の内、(Xf,Yf,Zf)の大小関係によって規定される4格子点のデータを用いて補間演算を実行する色変換方法であって、
4つのブロックに分割されたレジスタ0の最上位ブロックに(Xh,Yh,Zh)格子点データを格納するステップと、
前記レジスタ0の最上位から2番目のブロックに(Xh+1,Yh+1,Zh+1)の格子点データを格納するステップと、
前記レジスタ0の最上位から3番目のブロックに(Xh,Yh,Zh)格子点に隣接する格子点データを格納するステップと、
前記レジスタ0の最上位から3番目のブロックに(Xh+1,Yh+1,Zh+1)格子点に隣接する格子点データを格納するステップと、
4つのブロックに分割されたレジスタ1の最上位ブロックに0を格納するステップと、
前記レジスタ1の最上位から2番目のブロックに(Xh+1,Yh+1,Zh+1)格子点データを格納するステップと、
前記レジスタ1の最上位から3番目のブロックに(Xh,Yh,Zh)格子点データを格納するステップと、
前記レジスタ1の最上位から4番目のブロックに(Xh,Yh,Zh)格子点に隣接する格子点データを格納するステップと、
ブロック毎に並列に(レジスタ0−レジスタ1)の減算演算をし、その結果をレジスタ2に格納するステップと、
4つのブロックに分割されたレジスタ3の最上位ブロックに2m を格納するステップと、
前記レジスタ3の最上位から2番目のブロックに(Xf,Yf,Zf)の最小値を格納するステップと、
前記レジスタ3の最上位から3番目のブロックに(Xf,Yf,Zf)の最大値を格納するステップと、
前記レジスタ3の最上位から4番目のブロックに(Xf,Yf,Zf)の中央値を格納するステップと、
(前記レジスタ2の1ブロック×前記レジスタ3の1ブロック+前記レジスタ2の2ブロック×前記レジスタ3の2ブロック)と(前記レジスタ2の3ブロック×前記レジスタ3の3ブロック+前記レジスタ2の4ブロック×前記レジスタ3の4ブロック)の2つの積和演算を並列に実行し、その結果を各々レジスタ4の4つに分割される第1,第2ブロックと第3,第4ブロックに格納するステップと、
前記レジスタ4の第1,第2ブロックと第3,第4ブロックのデータを加算して、mビットを右シフトするステップ、
により並列に補間演算処理することを特徴とする請求項1に記載の色変換方法。 - 前記レジスタ0、前記レジスタ1の格子点データをシアン,マゼンタ,イエロー,ブラック毎に変えて色変換処理することを特徴とする前記請求項8に記載の色変換方法。
- ルックアップテーブルに補間演算を併用することによって色変換を行う色変換装置であって、
入力色データのうち、当該入力色データの補間空間における位置をその大小関係によって示すデータと、入力色データのうち、ルックアップテーブルのアドレスを示すデータおよび前記位置を大小関係によって示すデータに基づいてルックアップテーブルから読出される格子点データを、前記大小関係に応じて予じめ定められた複数のレジスタに格納する格納手段と、
該複数のレジスタ間において予じめ定められた補間演算式に従い当該レジスタが格納するデータを用いて補間演算を行う演算手段と、
を有したことを特徴とする色変換装置。 - ルックアップテーブルに補間演算を併用することによって色変換を行う色変換処理プログラムを情報処理装置によって読取り可能に記憶した記憶媒体であって、該色変換処理は、
入力色データのうち、当該入力色データの補間空間における位置をその大小関係によって示すデータと、入力色データのうち、ルックアップテーブルのアドレスを示すデータおよび前記位置を大小関係によって示すデータに基づいてルックアップテーブルから読出される格子点データを、前記大小関係に応じて予じめ定められた複数のレジスタに格納し、
該複数のレジスタ間において予じめ定められた補間演算式に従い当該レジスタが格納するデータを用いて補間演算を行う、
ステップを有したことを特徴とする記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37428198A JP3927715B2 (ja) | 1998-12-28 | 1998-12-28 | 色変換方法および色変換装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP37428198A JP3927715B2 (ja) | 1998-12-28 | 1998-12-28 | 色変換方法および色変換装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000196903A JP2000196903A (ja) | 2000-07-14 |
JP3927715B2 true JP3927715B2 (ja) | 2007-06-13 |
Family
ID=18503578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP37428198A Expired - Fee Related JP3927715B2 (ja) | 1998-12-28 | 1998-12-28 | 色変換方法および色変換装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3927715B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4165537B2 (ja) | 2005-06-29 | 2008-10-15 | ブラザー工業株式会社 | 色変換装置および色変換プログラム |
JP4806606B2 (ja) * | 2006-08-30 | 2011-11-02 | 株式会社リコー | 画像処理装置及び画像処理方法 |
JP4901891B2 (ja) | 2008-11-05 | 2012-03-21 | 株式会社東芝 | 画像処理プロセッサ |
-
1998
- 1998-12-28 JP JP37428198A patent/JP3927715B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000196903A (ja) | 2000-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5558767B2 (ja) | 画像処理装置及びその処理方法 | |
US6075514A (en) | Color table look-up having last value memory | |
JP4724413B2 (ja) | データ分類方法 | |
US20020122207A1 (en) | Fast Interpolation of large color lookup tables | |
JP5522890B2 (ja) | 画像処理装置及び方法 | |
JP2011139164A (ja) | 画像処理装置及びその処理方法 | |
JP3927715B2 (ja) | 色変換方法および色変換装置 | |
JPH06320802A (ja) | 画像処理装置 | |
JP4468270B2 (ja) | 正規化方法および多次元補間装置およびプログラム | |
US20080225345A1 (en) | Image processing apparatus and computer readable medium | |
JP4810615B2 (ja) | 多次元補間装置、多次元補間方法、及びコンピュータプログラム | |
US8494261B2 (en) | Image processing apparatus, image processing method, and computer-readable medium | |
JP5267147B2 (ja) | 画像処理装置、画像処理方法、及び、コンピュータプログラム | |
US20030107577A1 (en) | Data processing system having a plurality of processors and executing a series of processings in a prescribed order | |
JP3911898B2 (ja) | 色変換装置および方法 | |
JPH10191089A (ja) | 色変換装置、カラー印刷装置及びカラー画像データ出力装置並びに記録媒体 | |
JP2007174392A (ja) | データ変換装置、データ変換装置の制御方法およびプログラム | |
JP2016163070A (ja) | データ変換装置およびその制御方法、プログラム | |
JP5159115B2 (ja) | 画像処理装置及び画像処理方法 | |
JP4096672B2 (ja) | データ変換方法およびデータ変換装置 | |
JP3512462B2 (ja) | 黒孤立点除去装置 | |
JPH05342340A (ja) | 画像処理方法及びその装置 | |
JP3308940B2 (ja) | 符号化方法および復号化方法 | |
JP2006165649A (ja) | 多次元データ変換装置及び方法 | |
JP3871027B2 (ja) | 色データ変換装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040514 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060526 |
|
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: 20070223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070305 |
|
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: 20100309 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110309 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120309 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130309 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140309 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |