JP2003101806A - 画像処理装置および画像処理方法 - Google Patents

画像処理装置および画像処理方法

Info

Publication number
JP2003101806A
JP2003101806A JP2001292488A JP2001292488A JP2003101806A JP 2003101806 A JP2003101806 A JP 2003101806A JP 2001292488 A JP2001292488 A JP 2001292488A JP 2001292488 A JP2001292488 A JP 2001292488A JP 2003101806 A JP2003101806 A JP 2003101806A
Authority
JP
Japan
Prior art keywords
point data
grid point
interpolation
data
image processing
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.)
Pending
Application number
JP2001292488A
Other languages
English (en)
Inventor
Satoru Suzuki
覚 鈴木
Takashi Ishikawa
尚 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2001292488A priority Critical patent/JP2003101806A/ja
Publication of JP2003101806A publication Critical patent/JP2003101806A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Color, Gradation (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Abstract

(57)【要約】 【課題】 R、G、Bデータに画像処理を行ないY、
M、C、Bkのプリントデータを得る画像処理装置にお
ける、LUT(ルックアップテーブル)と補間演算を併
用した色変換を、メモリの容量増大を伴わずにかつ高速
に行なうことを可能とする。 【解決手段】 LUTをバーストモードのデータ読出し
が可能なSDRAMにより構成する。R、G、Bの上位
ビットデータに基づくアドレッシングにより、まず、こ
のSDRAMのバンクが選択され、次にローアドレスが
確定(バンクがアクティブ)した後、次のローアドレス
に変化するまで、すなわち、バンクアクティブの間、C
LK(クロック)信号の1クロック毎にコラムアドレス
が変化してそれぞれ8ビットの格子点データD0〜D7
が読み出される。このように、上記の上位ビットデータ
による一回のアドレッシングで8つの格子点データを読
み出すことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像処理装置およ
び画像処理方法に関し、詳しくは、ルックアップテーブ
ルを用いた補間演算によって、例えばR(赤)、G
(緑)、B(青)等の画像データをY(イエロー)、M
(マゼンタ)、C(シアン)、Bk(ブラック)等のプ
リントデータに変換する画像処理における上記ルックア
ップテーブルのデータ読み出しの構成に関するものであ
る。
【0002】
【従来の技術】画像処理における変換として、例えば画
像信号の非線形変換(ガンマ変換,log変換等)は、
ルックアップテーブル(以下、単に「LUT」ともい
う)を用いて行われることが多い。これは、これらの非
線形変換を演算によって求めようとする場合、その演算
が極めて複雑になり、また、その演算回路の規模が大き
くなるからである。これに対し、例えば8ビットのビデ
オ信号に所定の非線形変換を行う処理を、LUTを用い
て行う場合には、そのメモリ容量は256バイトで足
り、また、演算も比較的簡易なものとすることができ
る。なお、このように1つの画像信号を別の種類の1つ
の画像信号に変換する処理で用いられるLUTは、一般
に1次元LUTと呼ばれている。
【0003】一方、近年のデスクトップパブリッシング
(以下、DTPと略す)環境の普及に伴い、カラー画像
の扱いが容易となり、扱われる機会も多くなりつつあ
る。DTPにおけるカラー画像の入力機器としては、ス
キャナ,ビデオカメラ等が一般に知られており、また、
出力機器としてはインクジェット方式,染料熱昇華方式
あるいは電子写真方式等の各種カラープリンタが知られ
ている。これらのカラー入、出力機器は、それぞれ固有
の色空間を有しており、このため、あるスキャナから得
たカラー画像データを、そのまま他のカラープリンタに
転送して画像をプリント出力する場合、その画像の色が
オリジナルの画像の色と一致することは少ない。このよ
うな場合において、両者の色を一致させてカラープリン
タにおいて良好な色再現を行なうには、いわゆる入力デ
バイス(スキャナやビデオカメラ等)の色空間を、出力
デバイス(各種カラープリント等)の色空間に変換する
といった処理が必要になる(以下では、この処理を色変
換処理と称する)。この色変換処理は、具体的には入力
デバイスの色空間をなす3色(一般的には、R(赤)、
B(青)、G(緑)の3色)の画像信号を参照して、出
力デバイス側の色空間を成す、例えばY(イエロー)、
M(マゼンタ)、C(シアン)の3色あるいはこれにB
k(ブラック)を加えた4色のそれぞれの画像信号に変
換するものである。
【0004】ところで、このような入力デバイスの3色
の画像信号を、出力デバイスの複数色のそれぞれの1色
に変換する処理を、上述したようにLUTだけを用いて
行う場合には、画像信号の1色を8ビットで表すとき、
入力24ビット、出力8ビットのLUTとなり16M
(メガ)バイトの容量のメモリが必要となり、さらに、
出力デバイスで用いられる色の数分だけ上述のメモリが
必要となる。この場合、総メモリ容量は、48〜64M
バイトとなって、比較的大容量のメモリを必要とするこ
とになる。
【0005】これはコストの点などで実用的でなく、そ
のため、色変換処理でLUTを用いる場合は、LUTの
メモリ容量を少なくすべく、LUTと補間処理を併用す
ることが一般的に行われる。この補間方法としてはいく
つか知られているが、その一つとして例えば8点補間が
よく知られている。以下、これについて説明する。
【0006】色変換の対象である3つの色信号Ri、G
i、Bi(各色n+mビット)を、Ri=Rh・2
Rf、Gi=Gh・2+Gf、Bi=Bh・2+B
fと表わすとき、それらの上位nビット信号Rh、G
h、Bhと、下位mビット信号Rf、Gf、Bfを用い
て補間処理を行なう。すなわち、LUTには上位nビッ
ト信号Rh、Gh、Bhが入力し、これに基づく8つの
アドレスによってそれぞれに対応する8つのテーブルデ
ータが読み出される。そして、この8つのテーブルデー
タに対して下位mビット信号Rf、Gf、Bfを係数と
した補間演算を行ない、上記3つの色信号Ri、Gi、
Biに対する変換後のデータ、例えばY、M、C、Bk
の一つの色データがそれぞれ求められる。
【0007】さらに詳しくは、LUTには、上位nビッ
ト信号Rh、Gh、Bhについて、それぞれ2個の値
Rh=0、1、2、…、2−1、Gh=0、1、2、
…、2−1、Bh=0、1、2、…、2−1のすべ
ての組み合わせ(23n通り)に対応して読み出される
べき色データが格納されている。換言すれば、LUTの
内容はこれらの組み合わせを3次元空間の座標とすると
きにその座標によって特定される点(以下では、格子点
ともいう)において読み出される色データ(以下では、
格子点データともいう)が対応づけられるものとして説
明される。すなわち、これら格子点データは、上位ビッ
ト信号Rh、Gh、Bh信号を連結した3・nビットの
データをアドレスとして読み出されるものである。
【0008】そして、補間処理は、以上のようにしてL
UTから読出される格子点データを、図1に示す立方体
の8つの頂点(格子点)に対応した格子点データとする
とき、各格子点間を分割した2個の点の座標である下
位ビット信号(Rf、Gf、Bf)の値により求められ
る内分点として表される補間対象点、すなわち変換対象
である3つの色信号Ri、Gi、Biで表わされる点に
ついて、上記8つの格子点データに上記下位ビット信号
(Rf、Gf、Bf)の値により求められる内分比を係
数として乗じることにより変換データを求めるものであ
る。
【0009】より具体的には、図1に示す補間空間とし
ての立方体の各々の格子点における格子点データをD
(R座標、G座標、B座標)とし、8点補間処理によっ
て求める変換データをHi(Ri、Gi、Bi)とする
とき、変換データHiは、以下の演算 Hi(Ri,Gi,Bi)=2-3m・[(2m-Rf)・(2m-Gf)・(2m-Bf)・D(Rh,Gh,Bh) +Rf・(2m-Gf)・(2m-Bf)・D(Rh+1,Gh,Bh) +(2m-Rf)・Gf・(2m-Bf)・D(Rh,Gh+1,Bh) +(2m-Rf)・(2m-Gf)・Bf・D(Rh,Gh,Bh+1) +Rf・Gf・(2m-Bf)・D(Rh+1,Gh+1,Bh) +(2m-Rf)・Gf・Bf・D(Rh,Gh+1,Bh+1) +Rf・(2m-Gf)・Bf・D(Rh+1,Gh,Bh+1) +Rf・Gf・Bf・D(Rh+1,Gh+1,Bh+1)] …(1) によって求めることができる。
【0010】ところで、1つのLUTを用いて上述の補
間演算を行うのに必要な8つの格子点データを読み出す
場合、そのLUTから格子点データを順次読出して、上
記演算を行い変換データを求めることになる。しかし、
この場合には、演算時間が長く、高速に変換データを得
ることができない。このため、従来の構成では、同一内
容のLUTを8個用意し、上記補間演算に必要な格子点
データDを8個並列に読出し、各々の格子点データに上
記(1)式で示される所定の係数を乗じてこれらを加算
することにより、8点補間演算結果を求めるのが一般的
である。
【0011】
【発明が解決しようとする課題】しかしながら、上記従
来例では、高速に8点補間演算処理を行おうとする場
合、LUTが8個必要になる。この場合において、変換
されるべき色信号の上位ビット数、すなわち格子点を規
定するデータのビット数をn=4とし、かつLUTの出
力データ幅を8ビットとするとき、1つのLUTの容量
は、1色あたり約4.9kバイト(アドレス12ビッ
ト、出力8ビット)となり、トータルではおよそ4.9
kバイト×8個=約40kバイト分のテーブルメモリが
必要となる。このため、上述のような従来のデータ変換
装置は、比較的コストが高くなるという問題点を有して
いた。
【0012】一方、広くメモリの分野において、シンク
ロナイズドDRAM(SDRAM)を用いたバーストモ
ードが知られている。これは、一つの読み出しデータを
指定することにより、あるまとまったデータを読み出す
ことができるものである。しかし、このSDRAMをデ
ータ変換の分野においてLUTとして用い、しかも上記
のような格子点データを読み出す場合のメモリの読み出
し制御や格子点データの格納の仕方などは知られていな
い。
【0013】本発明は、上記従来の観点からなされたも
のであり、その目的とするところは、LUTと補間演算
を併用した色変換において、メモリの容量増大を伴わず
にかつ高速に変換結果を得ることが可能な画像処理装置
および画像処理方法を提供することにある。
【0014】
【課題を解決するための手段】そのため本発明では、ル
ックアップテーブルを参照して当該ルックアップテーブ
ルから格子点データを読み出し、該読み出した格子点デ
ータを用いた補間演算を行なう画像処理装置であって、
前記ルックアップテーブルは前記補間演算の補間空間を
構成する複数の格子点それぞれの格子点データを当該補
間空間ごとに格納し、前記補間空間ごとの格子点データ
は1回のアドレッシングで読み出すことが可能に構成さ
れたことを特徴とする。
【0015】また、ルックアップテーブルを参照して当
該ルックアップテーブルから格子点データを読み出し、
該読み出した格子点データを用いた補間演算を行なう画
像処理方法であって、前記ルックアップテーブルは前記
補間演算の補間空間を構成する複数の格子点それぞれの
格子点データを当該補間空間ごとに格納し、前記補間空
間ごとの格子点データを1回のアドレッシングで読み出
すことを特徴とする。
【0016】以上の構成によれば、ルックアップテーブ
ルが補間演算の補間空間を構成する複数の格子点それぞ
れの格子点データをその補間空間ごとに格納し、また、
この補間空間ごとの格子点データを1回のアドレッシン
グで読み出すので、一つのルックアップテーブルから、
補間空間を構成する複数の格子点データを読出すのに要
する時間を少なくすることができる。
【0017】
【発明の実施の形態】以下、図面を参照して本発明の実
施形態を詳細に説明する。
【0018】(実施形態1)本発明の第一の実施形態
は、3次元ルックアップテーブルとこれから読み出され
る8つの格子点データを用いる8点補間演算により、
R、G、B各色12ビットの画像データをY、M、C、
Bk各色8ビットのプリントデータに変換する色変換回
路に関するものであり、より具体的にはプリンタで用い
るプリントデータを作成する画像処理の一環として実行
される色変換処理に本発明を適用したものである。
【0019】図2は、この色変換回路の構成を示すブロ
ック図であり、同回路は、上述のとおり、画像処理装
置、具体的にはパーソナルコンピュータのハードウエア
とそこで動作するプリンタドライバのようなソフトウエ
アとの協働によって実現されるものである。なお、本発
明は、このようなパーソナルコンピュータとプリンタと
の組合せにのみ適用されるものでなく、複写機など広く
プリント装置で用いるプリントデータを作成する画像処
理に適用でき、従って、プリンタや複写機などのプリン
ト装置自体が以下で示す色変換処理を行なう構成も本発
明の範囲に含まれることはもちろんである。
【0020】図2において、色変換回路10に入力した
R、G、Bのデータ(Ri,Gi,Bi)は、各々上位
4ビット(Rh,Gh,Bh)が3次元ルックアップテ
ーブル(3DLUT)11の参照アドレスとして用いら
れ、下位8ビットデータ(Rf,Gf,Bf)は係数演
算部12で係数演算されて8点補間演算部13による補
間演算に供される。
【0021】すなわち、LUT11は、図3、図4にて
後述されるように、一つの参照アドレス(Rh,Gh,
Bh)によって8つの格子点データ出力する。すなわ
ち、3つの上位4ビットデータ(Rh,Gh,Bh)
は、図1に示したような一つの立方体における一つの頂
点の座標に対応することによってその立方体を補間空間
として特定する。具体的には、LUT11は上記一つの
頂点を含む上記の立方体の8つの頂点(格子点)に対応
したデータとして、8つの格子点データD(Rh,G
h,Bh)、D(Rh+1,Gh,Bh)、D(Rh+
1,Gh,Bh+1)、D(Rh,Gh,Bh+1)、
D(Rh,Gh+1,Bh)、D(Rh+1,Gh+
1,Bh)、D(Rh+1,Gh+1,Bh+1)およ
びD(Rh,Gh+1,Bh+1)を出力する。
【0022】一方、係数演算部12は、3つの下位8ビ
ットデータ(Rf,Gf,Bf)に基づき、上述した
(1)式における(2−Rf)・(2−Gf)・
(2−Bf)など、上記のようにLUTが出力した格
子点データの係数を演算する。この係数は、図1から明
らかなように、補間対象点(Ri,Gi,Bi)が属す
る補間空間における上記対象点の各格子点間の内分比に
係わるものである。
【0023】8点補間演算部13は、上述のように3次
元LUTから出力される8つの格子点データと、係数演
算部12によって得られる係数とを用いて、上記演算式
(1)に従い、積和演算を行ない、色変換データ、すな
わち、本実施形態ではY、M、C、Bkの一つのデータ
であるHi(Ri,Gi,Bi)を出力する。そして、
以上説明した補間演算をY、M、C、Bkのそれぞれに
ついて行ない、Y、M、C、Bkの色変換データを得る
ことができる。
【0024】本実施形態の3次元ルックアップテーブル
11は、SDRAMを用い、その読出しをバーストモー
ドとすることにより、一度のアドレッシングで8つの格
子点データを読み出せるように(出力するように)構成
したものである。すなわち、上述した補間空間としての
一つの立方体単位、つまり、8つの格子点データの単位
で、これらをLUT11を構成するSDRAMに格納す
るとともに、この1単位のデータを1度のアドレッシン
グによって出力するようにする。以下、本実施形態のL
UTにおける格子点データの格納およびその読出しの構
成を詳細に説明する。
【0025】図3は、本実施形態にかかるSDRAMの
メモリ構造を示す図である。
【0026】図3に示すように、SDRAMのメモリ構
造は4つのバンク0〜3から構成され、それぞれのバン
クでは、ローアドレスとコラムアドレスによって特定さ
れるアドレスに1単位のデータが格納される。この1単
位のデータは、32ビットの奥行きを有したセルアレイ
に格納可能であり、このセルアレイのデータはDQM
(データマスク)信号によってバイト単位で制御するこ
とができる。このメモリ構成において、アドレッシング
は、まずBS(バンクセレクト)信号がデコードされて
一つのバンクが選択される。そしてその選択されたバン
クのローアドレスが確定(バンクアクティブ)し、次に
コラムアドレスが確定して格納されたデータが読み出さ
れる。この読出しの際、上述したようにDQM信号によ
ってその読出し量がバイト単位で制御される。
【0027】以上のメモリ構成におけるバーストモード
は、ローアドレスが確定(バンクがアクティブ)した
後、次のローアドレスに変化するまで、すなわち、バン
クアクティブの間、CLK(クロック)信号の1クロッ
ク毎にコラムアドレスが変化して所定のコラムアドレス
分(バーストレングス)のデータを読み出すモードであ
る。そして、この所定のコラムアドレス分のデータをす
べて読み出した後、プリチャージが行われる。
【0028】以上説明したメモリ構造を有するSDRA
MからなるLUT11からの格子点データの読出しは次
のように行なわれる。図4はその読出しに関する各信号
のタイミングチャートである。なお、同図に示すタイミ
ング〜○14…は、図から明らかなように、クロック
信号の1クロックごとのタイミングを示している。
【0029】LUT11を構成するSDRAMは、バー
ストレングスが8(コラムアドレス分)のバーストモー
ドに設定されており、最初に、上述した上位4ビットデ
ータ(Rh,Gh,Bh)に基づいて生成されるBS信
号(不図示)をデコードすることによって一つのバンク
が選択される。
【0030】次に、図4に示すように、タイミング
で、同様に上位4ビットデータ(Rh,Gh,Bh)に
基づいて生成されるローアドレスが確定する。さらにタ
イミングで、コラムアドレスが確定し、同時にリード
コマンドが発行される。このような、バンクの選択から
最終的に一つのコラムアドレスを確定する一回のアドレ
ッシングは、8つの格子点からなる補間空間(立方体;
図1参照)における一つの格子点のアドレスを確定する
ものであり、本実施形態では、格子点(Rh,Gh,B
h)のアドレスを確定する。
【0031】次に、タイミング〜○12で、上記8つ
の格子点に対応した8つのコラムアドレスにより、設定
したバーストレングスの8個の格子点データD0〜D
7、すなわち、D(Rh,Gh,Bh)、D(Rh+
1,Gh,Bh)、D(Rh+1,Gh,Bh+1)、
D(Rh,Gh,Bh+1)、D(Rh,Gh+1,B
h)、D(Rh+1,Gh+1,Bh)、D(Rh+
1,Gh+1,Bh+1)およびD(Rh,Gh+1,
Bh+1)が、CLK信号に同期して読み出される。こ
の際、DQM信号(不図示)によって、1個の読出しデ
ータは1バイトに制御される。換言すれば、それぞれ1
バイトで表される格子点データは、各バンクのセルアレ
イにおける最初の8ビット(1バイト)に格納されたも
のである。以上の読出しの後、タイミング○13で、そ
の選択にかかるバンクのプリチャージを行う。
【0032】以上のとおり、8バイト分(1バイト×8
格子点)の格子点データを一括して読み出すバーストリ
ードモードでは、1度のアドレッシングを含む14クロ
ックで上記8バイトのデータを読み出すことができる。
【0033】図5は、比較例として、1バイト単位でデ
ータを読み出した場合のタイミングチャートである。
【0034】図5に示すように、タイミングで、ロー
アドレスが確定し、タイミングでコラムアドレスの確
定およびリードコマンドの発行がされるのは上述の実施
形態と同様である。しかし、1バイトごとの読出しで
は、タイミングで、1バイトの格子点データが読み出
された後、タイミングで、バンクのプリチャージを行
ない、以下、同様の処理を8回繰り返す。このため、1
バイト単位のメモリアクセスで8バイトのデータを読み
出すには、56クロック(7クロック×8回繰り返し)
必要となる。なお、図5に示す1バイト単位のメモリア
クセスを実施するメモリとして、SRAMを用いた場
合、SDRAMと同等の容量を実現するには比較的にコ
ストが高くなる。
【0035】以上のように本実施形態によれば、LUT
11からの格子点データの読出しでは、ローアドレスお
よびコラムアドレスが確定した後、バーストレングスの
分だけ、SDRAM自身がCLK信号のクロックに同期
して自動的にコラムアドレスをインクリメントしデータ
を読み出すので、LUT11に対するアドレッシングは
一度で済む。すなわち、3次元ルックアップテーブルを
構成する立方体の一つ(の一つの格子点)を指定すれ
ば、その立方体の8つの格子点データを1度に読み出す
ことができ、従来例のように、LUTを8個用意する必
要がなくなり回路を簡略化することができる。また、1
つのLUTから逐次読出して、上記演算を行い色変換デ
ータを求める方法と異なり、一度のアドレッシングで8
つの格子点データを読み出すことができるので、演算時
間が短く、高速に変換データを得ることが可能となる。
【0036】LUTに用いるメモリの容量について、さ
らに詳しく説明する。図6は、本実施形態のLUTの内
容を格子点によって示す図であり、図1に示した一つの
補間空間(補間立体)が3次元的に複数連続したものと
して示したものである。
【0037】同図に示すように、R、G、Bデータのそ
れぞれ上位4ビットをLUT11の参照アドレスとして
いることから、それぞれれの格子点は、R、G、B各軸
について16分割して得られる座標0000〜1111
によって特定することができる。ここで、前述したよう
に、一回のアドレッシングで立方体を指定するためのア
ドレスを同図に示す座標で(Rh,Gh,Bh)とする
と、読み出される立方体の格子点データは、図1に示す
ような、D(Rh,Gh,Bh)、D(Rh+1,G
h,Bh)、D(Rh+1,Gh,Bh+1)、D(R
h,Gh,Bh+1)、D(Rh,Gh+1,Bh)、
D(Rh+1,Gh+1,Bh)、D(Rh+1,Gh
+1,Bh+1)およびD(Rh,Gh+1,Bh+
1)で表される8つの格子点データである。
【0038】本実施形態では、変換される色信号の上位
ビット数は4ビットであり、かつLUTの出力データ幅
が8ビットであるから、そのメモリに必要な容量は、補
間空間を構成する立方体(図1)の総数(16×16×
16=4096個)×1度に読み出される格子点数(8
個)×一つの格子データの量(8ビット)×4色であ
り、約131Kバイトになる。一方、従来例でLUTを
8個並列に用いた場合は、LUTの総格子点数(491
3)×一つの格子データの量(8ビット)×4色×LU
T8個=約157Kバイト)となり、本実施形態のLU
Tは26Kバイト容量が少なくて済むことになる。
【0039】(実施形態2)上述の第一の実施形態で
は、それぞれの補間空間の8つの格子点データは、バー
ストレングスで表される一組のデータとして格納され
る。すなわち、アドレッシングによって特定される補間
空間が異なれば、その格子点データはその補間空間の一
組の格子点データとして個々に格納される。この結果、
LUT全体の空間では、格子点は最大8つの補間空間に
よって共有され、従って、最大8つの格子点データが重
複して格納されることになる。本発明の第二の実施形態
では、このような格子点データの重複した格納を低減す
るものである。
【0040】本実施形態のLUTは、格子点を共有する
補間空間が最大2つとなるように格子点データを格納す
るものである。すなわち、図7に示すように、LUT1
1を構成する補間空間としての立方体を一つ置きに配置
し、これにより、一つの格子点が最大2つの立方体によ
って共有されるようにし、重複して格納する格子点デー
タを2つとする。
【0041】図7において、8つの格子点データを格納
する立方体はグレーまたは黒で示される立方体であり、
これらはR、G、Bの各軸方向において一つおきに配置
される。そして、同図から明らかなように、これらの立
方体で隣接する(グレート黒で示される)二つの立方体
は一つの格子点を共有する。このように一つの格子点を
共有する立方体は最大2つであり、従って、重複して格
納される格子点データは2つとなる。なお、以下で説明
する例外的な立方体の格子点データ読出しの説明から明
らかなように、LUT全体では一つの格子点につきさら
に一つの格子点データが重複して格納されるが、ここで
は、その数は算入されていない。
【0042】以上説明した本実施形態のLUTの読み出
しは次のとおりである。
【0043】最初にアドレッシングが8つの格子点デー
タが格納された立方体(グレーまたは黒で示される立方
体)を補間空間とするときは、上記第一の実施形態と同
様に読出しを行なうことができる。
【0044】第2に、8つの格子点データが格納されて
いない立方体で、左右(もしくは奥および手前)または
上下において隣接する、格子点データが格納された二つ
の立方体が存在する立方体(図において、「格子点デー
タが格納されていない立方体」として示される立方体)
の格子点データの読み出しは、その立方体の左もしくは
右(奥もしくは手前)、または上もしくは下にある格子
点データが格納されている二つの立方体の格子点データ
を第一の実施形態と同様に読出し、それぞれの一部をそ
の立方体に対応する8つの格子点データ(図1)とする
ことができる。なお、以下の説明では、立方体を特定す
るのに、その立方体の格子点の座標のうち、3つの座標
値がそれぞれ最も小さな値である座標によって特定す
る。図1に示す例では、座標(Rh,Gh,Bh)が該
当する。後述の(実施形態3)の説明でも同様である。
【0045】このような格子点データが格納されていな
い立方体、例えば、座標(0001,0000,000
0)で示される立方体の格子点データを読み出すには、
その立方体の右側にある8つの格子点データが格納され
ている立方体(座標(0010,0000,0000)
の立方体)と、その左側にある8つの格子点データが格
納されている立方体(座標(0000,0000,00
00)の立方体)それぞれの格子点データを読み出して
用いる。
【0046】第3に、座標(0001,0000,00
01)で示される立方体のような、その立方体に隣接す
る、格子点データが格納されている立方体が二つ存在し
ない立方体(図において、「例外的な立方体」として示さ
れる立方体)の格子点データの読み出しは、その立方体
の奥側で隣接する、格子点データが格納されている一つ
の立方体(座標(0001,0001,0001)の立
方体)の格子点データを読み出して用いるとともに、不
足する格子点の格子点データは、以下に説明するよう
に、これらをまとめて第一の実施形態と同様にLUTに
格納し、また、同様に読出しを行なう。
【0047】このような例外的な立方体、例えば、座標
(0001,0000,0001)で示される立方体の
格子点データの読出しは、第一の実施形態で前述したよ
うにアドレス(0001,0001,0001)のアド
レッシングで、奥側の立方体の8個の格子点データを読
み出し、そのうち、4つの格子点データを用いる。ま
た、残りの格子点(0001,0000,0001)、
(0010,0000,0001)、(0010,00
00,0010)、(0001,0000,0010)
の格子点データは、これらの格子点で表される4つの格
子点データの組を、SDRAMよりなるLUT11に第
一の実施形態と同様に格納しておき、これら4つの格子
点データを、例えばアドレス(0001,0000,0
001)のバーストモードによる一度のアドレッシング
で読み出す。この場合、バーストレングスは4(コラム
アドレス分)となる。そして、これら読み出した格子点
データと上述のアドレス(0001,0001,000
1)による一度のアドレッシングで読み出した格子点デ
ータの中の4つの格子点データとの組み合わせにより、
例外的な立方体である、座標(0001,0000,0
001)の立方体の格子点データを読み出すことができ
る。
【0048】以上のように、本実施形態では、最大2回
のメモリアクセスで任意の立方体の8つの格子点データ
を得ることができる。
【0049】図7に示す例では、変換されるべき色信号
の上位ビット数は4ビットであり、例外的な立方体に必
要なメモリ容量は、例外的な立方体の総数が384個
(各平面64個×6面)であり、一つの立方体について
4つの格子点データを格納するので、例外的な立方体に
必要なメモリ容量は、1536バイトである。この結
果、本実施形態のLUTに必要なメモリ容量は、8つの
格子点データが格納されている立方体の総数(1024
個)×格子点数(8個)×8ビットと、例外的立方体の
格子点データに必要な上記容量(1536バイト)の総
和であり、さらに4色必要なので、総容量は38.91
2Kバイトとなる。これは、上記第一の実施形態による
131Kバイトのおよそ三分の一である。また、LUT
から逐次読出して、上記演算を行う場合に比べ、最大2
回のアドレッシングで8つの格子点データを読み出すこ
とができるので、演算時間が短くかつ高速に変換データ
Hiを得ることも可能となる。
【0050】(実施形態3)本発明の第三の実施形態と
上述した第二の実施形態とが異なる点は、複数の立方体
によって共有される格子点データを無くしたものであ
る。すなわち、本実施形態のLUTに必要なメモリ容量
は、3次元ルックアップテーブルにおける全格子点数
(4913)×8ビット×4色であり、19.652K
バイトとなる。これは、本実施形態で用いる3次元ルッ
クアップテーブルを構成するのに必要なメモリ容量が最
も小さい場合である。
【0051】図8は本実施形態のLUTのデータ格納を
示す図であり、同図に示すように、8つの格子点データ
が格納される立方体を上下または左右(および奥と手
前)方向において1つ置きに配されるようにして、複数
の立方体が共有する格子点データを無くすような格子点
データの格納を行なう。
【0052】そして、図8において、格子点データが格
納されていない立方体(グレーで示される立方体以外の
立方体で、座標(0001,0000,0000)の立
方体など)の格子点データの読出しは、その立方体の左
右または上下にある格子点データが格納されている立方
体(座標(0001,0000,0000)の場合、そ
の左右の座標(0000,0000,0000)と座標
(0010,0000,0000)の立方体)の格子点
データを用い、その8つの格子点データを読出すデータ
とする。すなわち、2回のアドレッシングで必要な8つ
の格子点データの読出しを行なうことができる。
【0053】また、格子点データが格納されていない立
方体の上下または左右に格子点データが格納されている
二つの立方体が無い場合、例えば、座標(0001,0
001,0001)や座標(0001,0000,00
01)の立方体などの場合は、格子点データが格納され
ている立方体の8つまたは4つの格子点データを第一の
実施形態と同様バーストモードで読出し、そこから必要
な8つの格子点データ8個を得ることができる。すなわ
ち、斜め方向に隣接する4つまたは8つの格子点データ
が格納されている立方体の格子点データを得るべく、4
回または8回のアドレッシングでこれら立方体の格子点
データを読み出すことができる。
【0054】なお、図8に示すルックアップテーブルを
構成する立方体は、図9に示す8個の立方体を単位とし
た立方体の集合として表すことができる。ここで、この
単位立方体におけるそれぞれの立方体がアドレッシング
される確率を八分の一とすると、それぞれの立方体の8
個の格子点データを読み出すまでの平均アドレッシング
回数は3.375回となる。このように、本実施形態に
よれば、LUTから逐次読出して補間演算を行う従来例
の8回に比べ、アクセス回数が少なく、高速に変換デー
タHiを得ることができる。また、通常、入力画像のデ
ータは局所的な相関性が高いので、数個の立方体の格子
点をキャッシングすることにより、平均アクセス時間を
さらに低減することができる。
【0055】図8に示した本実施形態のLUTは、同図
を参照して説明した格子点データの読出し処理では対応
できない処理が存在する。図10は、この例外的処理を
説明する図であり、図8に示したLUTのアドレス(1
111,1111,1111)付近の格子点データの格
納を示す図である。
【0056】図において、R、G、Bの値が(111
1)である軸によって形成される3つの平面は本実施形
態のLUTに入力するR、G、Bデータが作る空間の境
界であり、その外側に格子点データは存在しない。この
ため、これらの平面を含む補間空間としての立方体は読
出しおよびその格子点データの格納において例外的な扱
いがなされる。
【0057】この場合二種類の例外的な扱いとなり、第
1は、座標(1110,1011,1101)で示され
る立方体のように、上記(1111)の軸を含まない立
方体の扱いである。この場合は図7にて上述した第2の
実施形態の格子点データが格納されない立方体(例外的
な立方体)と同様に扱う。すなわち、その立方体の左側
の座標(1101,1011,1101)で示される、
8つの格子点データが格納された立方体の格子点データ
と、LUTにおいて別個に格納された格子点データであ
る、格子点(1111,1011,1101)、(11
11,1100,1101)、(1111,1100,
1110)および(1111,1011,1110)の
格子点データを読み出して用いる。
【0058】第2の扱いは、図10における立方体の座
標が(1110,1110,1110)をはじめ、(1
110,1101,1110)、……、などの上記R、
G、Bの値が(1111)である軸を含む立方体の扱い
である。この例外的な立方体は、予めR、G、Bの各軸
1111上の格子点データを個別に格納し、このデータ
および上記第1の扱いに関して別個に格納した格子点デ
ータ、さらには8つの格子点データが格納された立方体
の格子点データを読み出して、8つの格子点データを得
るようにする。
【0059】図8に示す本実施形態のLUTは、変換さ
れる色信号の上位ビット数は4ビットであり、上述の例
外的な処理に必要なメモリ容量は、RGBの上述した軸
1111上の格子点データの数49個と第二の実施形態
と同様の例外処理に必要な格子点データの数192個を
格納する分であり、全例外処理に必要なメモリ容量は、
817バイトとなる。
【0060】従って、本実施形態のLUTに要するメモ
リ容量はデータが格納されている立方体512個×8頂
点×8ビットと、全例外処理に必要なメモリ容量817
バイトを加算し、さらに4色であることから、合計1
9.652Kバイトとなる。これは、本実施形態の3次
元ルックアップテーブルを構成する格子点に格子点デー
タを格納する場合の容量に該当する。すなわち、ルック
アップテーブルを構成するのに必要な最小メモリ容量
で、任意の立方体の格子点データを、平均約3回のメモ
リアクセスで読み出すことができ、LUTから逐次読出
す場合に比べ、演算時間が短く、高速に変換データを得
ることができる。
【0061】(他の実施形態)本発明は上述のように、
複数の機器(たとえばホストコンピュータ、インタフェ
ース機器、リーダ、プリンタ等)から構成されるシステ
ムに適用しても一つの機器(たとえば複写機、ファクシ
ミリ装置)からなる装置に適用してもよい。
【0062】また、前述した実施形態の機能を実現する
ように各種のデバイスを動作させるように該各種デバイ
スと接続された装置あるいはシステム内のコンピュータ
に、前記実施形態機能を実現するためのソフトウェアの
プログラムコードを供給し、そのシステムあるいは装置
のコンピュータ(CPUあるいはMPU)を格納された
プログラムに従って前記各種デバイスを動作させること
によって実施したものも本発明の範疇に含まれる。
【0063】またこの場合、前記ソフトウェアのプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコード自体、およびそのプロ
グラムコードをコンピュータに供給するための手段、例
えばかかるプログラムコードを格納した記憶媒体は本発
明を構成する。
【0064】かかるプログラムコードを格納する記憶媒
体としては例えばフロッピー(登録商標)ディスク、ハ
ードディスク、光ディスク、光磁気ディスク、CD−R
OM、磁気テープ、不揮発性のメモリカード、ROM等
を用いることができる。
【0065】またコンピュータが供給されたプログラム
コードを実行することにより、前述の実施形態の機能が
実現されるだけではなく、そのプログラムコードがコン
ピュータにおいて稼働しているOS(オペレーティング
システム)、あるいは他のアプリケーションソフト等と
共同して前述の実施形態の機能が実現される場合にもか
かるプログラムコードは本発明の実施形態に含まれるこ
とは言うまでもない。
【0066】さらに供給されたプログラムコードが、コ
ンピュータの機能拡張ボードやコンピュータに接続され
た機能拡張ユニットに備わるメモリに格納された後その
プログラムコードの指示に基づいてその機能拡張ボード
や機能格張ユニットに備わるCPU等が実際の処理の一
部または全部を行い、その処理によって前述した実施形
態の機能が実現される場合も本発明に含まれることは言
うまでもない。
【0067】
【発明の効果】以上説明したように、本発明によれば、
ルックアップテーブルが補間演算の補間空間を構成する
複数の格子点それぞれの格子点データをその補間空間ご
とに格納し、また、この補間空間ごとの格子点データを
1回のアドレッシングで読み出すので、一つのルックア
ップテーブルから、補間空間を構成する複数の格子点デ
ータを読出すのに要する時間を少なくすることができ
る。
【0068】この結果、ルックアップテーブルと補間演
算を併用して行なう画像処理を、メモリの容量増大を伴
わずに、かつ高速に行なうことを可能となる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る、3つの入力データ
(Ri,Gi,Bi)の上位ビットで規定される補間空
間を概念的に示す模式図である。
【図2】本発明の一実施形態に係る色変換回路の構成を
示すブロック図である。
【図3】上記色変換回路におけるLUTを構成するSD
RAMの構造を模式的に示す図である。
【図4】上記SDRAMによって構成されるLUTおけ
るデータ読出しの際の各信号のタイミングを示すタイミ
ングチャートである。
【図5】比較例にかかるデータ読出しの際の各信号のタ
イミングを示すタイミングチャートである。
【図6】本発明の第一の実施形態にかかるLUTの格子
点データの格納状態を模式的に示す図である。
【図7】本発明の第二の実施形態にかかるLUTの格子
点データの格納状態を模式的に示す図である。
【図8】本発明の第三の実施形態にかかるLUTの格子
点データの格納状態を模式的に示す図である。
【図9】上記第三の実施形態のLUTのアクセス回数を
説明するための図である。
【図10】上記第三の実施形態のLUTにおける格子点
データの格納およびその読出しを説明するための図であ
る。
【符号の説明】
10 色変換回路 11 ルックアップテーブル(LUT) 12 係数演算部 13 補間演算部
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 2C262 AA02 AA03 AA04 AA24 AA26 AA27 AB11 AC02 AC04 AC08 BA02 BC01 BC19 EA12 GA14 5B057 CA01 CA08 CA12 CA16 CB01 CB08 CB12 CB16 CC01 CE18 CH11 5C077 LL18 MP08 PP32 PP33 PQ12 PQ22 PQ23 RR19 5C079 HB01 HB03 HB12 LB02 MA01 MA04 MA11 NA10 NA11

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 ルックアップテーブルを参照して当該ル
    ックアップテーブルから格子点データを読み出し、該読
    み出した格子点データを用いた補間演算を行なう画像処
    理装置であって、 前記ルックアップテーブルは前記補間演算の補間空間を
    構成する複数の格子点それぞれの格子点データを当該補
    間空間ごとに格納し、前記補間空間ごとの格子点データ
    は1回のアドレッシングで読み出すことが可能に構成さ
    れたことを特徴とする画像処理装置。
  2. 【請求項2】 前記ルックアップテーブルはSDRAM
    により構成され、前記補間空間ごとの格子点データの読
    み出しは前記SDRAMのバーストモードで行なわれ、
    当該バーストレングスは前記補間空間を構成する格子点
    の数に対応することを特徴とする請求項1に記載の画像
    処理装置。
  3. 【請求項3】 前記ルックアップテーブルにおいて、所
    定の補間空間について格子点データを格納せずに、重複
    して格納される格子点データの数を減少させたことを特
    徴とする請求項1または2に記載の画像処理装置。
  4. 【請求項4】 格子点データが格納されていない補間空
    間について、少なくとも、該補間空間に隣接する、格子
    点データが格納された補間空間の格子点データを読み出
    して補間演算に用いることを特徴とする請求項3に記載
    の画像処理装置。
  5. 【請求項5】 前記ルックアップテーブルは、格子点デ
    ータが格納されていない補間空間のうち、さらに所定の
    補間空間について、所定数の格子点データを当該補間空
    間の格子点データとして格納し、当該所定数の格子点デ
    ータが1回のアドレッシングで読み出すことが可能に構
    成されたことを特徴とする請求項4に記載の画像処理装
    置。
  6. 【請求項6】 ルックアップテーブルを参照して当該ル
    ックアップテーブルから格子点データを読み出し、該読
    み出した格子点データを用いた補間演算を行なう画像処
    理方法であって、 前記ルックアップテーブルは前記補間演算の補間空間を
    構成する複数の格子点それぞれの格子点データを当該補
    間空間ごとに格納し、前記補間空間ごとの格子点データ
    を1回のアドレッシングで読み出すことを特徴とする画
    像処理方法。
  7. 【請求項7】 前記ルックアップテーブルはSDRAM
    により構成され、前記補間空間ごとの格子点データの読
    み出しは前記SDRAMのバーストモードで行なわれ、
    当該バーストレングスは前記補間空間を構成する格子点
    の数に対応することを特徴とする請求項6に記載の画像
    処理方法。
  8. 【請求項8】 前記ルックアップテーブルにおいて、所
    定の補間空間について格子点データを格納せずに、重複
    して格納される格子点データの数を減少させたことを特
    徴とする請求項6または7に記載の画像処理方法。
  9. 【請求項9】 格子点データが格納されていない補間空
    間について、少なくとも、該補間空間に隣接する、格子
    点データが格納された補間空間の格子点データを読み出
    して補間演算に用いることを特徴とする請求項8に記載
    の画像処理方法。
  10. 【請求項10】 前記ルックアップテーブルは、格子点
    データが格納されていない補間空間のうち、さらに所定
    の補間空間について、所定数の格子点データを当該補間
    空間の格子点データとして格納し、当該所定数の格子点
    データが1回のアドレッシングで読み出すことが可能に
    構成されたことを特徴とする請求項9に記載の画像処理
    方法。
  11. 【請求項11】 ルックアップテーブルを参照して当該
    ルックアップテーブルから格子点データを読み出し、該
    読み出した格子点データを用いた補間演算を行なう画像
    処理を、画像処理装置に実行させるプログラムであっ
    て、 前記画像処理は、前記ルックアップテーブルは前記補間
    演算の補間空間を構成する複数の格子点それぞれの格子
    点データを当該補間空間ごとに格納し、前記補間空間ご
    との格子点データを1回のアドレッシングで読み出すこ
    とを特徴とするプログラム。
  12. 【請求項12】 画像処理装置によって読取り可能にプ
    ログラムを記憶した記憶媒体であって、 前記プログラムは、ルックアップテーブルを参照して当
    該ルックアップテーブルから格子点データを読み出し、
    該読み出した格子点データを用いた補間演算を行なう画
    像処理を画像処理装置に実行させるプログラムであり、 前記画像処理は、前記ルックアップテーブルは前記補間
    演算の補間空間を構成する複数の格子点それぞれの格子
    点データを当該補間空間ごとに格納し、前記補間空間ご
    との格子点データを1回のアドレッシングで読み出す処
    理であることを特徴とする記憶媒体。
JP2001292488A 2001-09-25 2001-09-25 画像処理装置および画像処理方法 Pending JP2003101806A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001292488A JP2003101806A (ja) 2001-09-25 2001-09-25 画像処理装置および画像処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001292488A JP2003101806A (ja) 2001-09-25 2001-09-25 画像処理装置および画像処理方法

Publications (1)

Publication Number Publication Date
JP2003101806A true JP2003101806A (ja) 2003-04-04

Family

ID=19114444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001292488A Pending JP2003101806A (ja) 2001-09-25 2001-09-25 画像処理装置および画像処理方法

Country Status (1)

Country Link
JP (1) JP2003101806A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003075280A1 (en) * 2002-03-06 2003-09-12 Ricoh Company, Ltd. Semiconductor storing device
JP2005078592A (ja) * 2003-09-03 2005-03-24 Brother Ind Ltd メモリ制御装置及び画像形成装置
US7821689B2 (en) 2006-07-27 2010-10-26 Infoprint Solutions Company Llc Mapping an input color value in an input color space to an output color value in an output color space
JP2016165076A (ja) * 2015-03-06 2016-09-08 キヤノン株式会社 データ処理装置およびその制御方法、プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003075280A1 (en) * 2002-03-06 2003-09-12 Ricoh Company, Ltd. Semiconductor storing device
US6990039B2 (en) 2002-03-06 2006-01-24 Ricoh Company, Ltd. Semiconductor storing device
JP2005078592A (ja) * 2003-09-03 2005-03-24 Brother Ind Ltd メモリ制御装置及び画像形成装置
US7346752B2 (en) 2003-09-03 2008-03-18 Brother Kogyo Kabushiki Kaisha Memory controller and image forming device provided with the same
US7821689B2 (en) 2006-07-27 2010-10-26 Infoprint Solutions Company Llc Mapping an input color value in an input color space to an output color value in an output color space
JP2016165076A (ja) * 2015-03-06 2016-09-08 キヤノン株式会社 データ処理装置およびその制御方法、プログラム

Similar Documents

Publication Publication Date Title
US5241373A (en) Apparatus for correction of color signal values
US8022957B2 (en) Apparatus and method for processing data
EP0272655A2 (en) Method and apparatus for generating look-up table data
JPH08251425A (ja) 第1の三次元色空間刺激色を第2の三次元色空間刺激色に変換する装置
JP3976849B2 (ja) 補間器入力データを生成する装置
JP4724413B2 (ja) データ分類方法
JP2004038693A (ja) データ変換方法および画像処理装置
JP2003101806A (ja) 画像処理装置および画像処理方法
US5365252A (en) Color quantization apparatus and method for frame buffer display
JP2007067956A (ja) 多次元補間装置および多次元補間方法
JP4810615B2 (ja) 多次元補間装置、多次元補間方法、及びコンピュータプログラム
JP2004072397A (ja) 画像処理装置および画像処理方法
JP4096672B2 (ja) データ変換方法およびデータ変換装置
JP6501561B2 (ja) データ処理装置およびその制御方法、プログラム
US8175381B2 (en) Image processing method and apparatus
JP2961953B2 (ja) 色補正方法および装置
JP2002354276A (ja) 色変換方法および色変換装置
US6141024A (en) Generating color text
JP2003069841A (ja) 色変換装置、色変換方法および記録媒体
US20140253583A1 (en) Systems and methods for mapping color data
JPH01229382A (ja) 画像処理システム
JPH05113928A (ja) 画像メモリ装置
JPH07230539A (ja) データ変換装置、画像形成装置およびテーブルデータ格納方法
JP2767815B2 (ja) 画像データ変換回路
JP2001275002A (ja) 色データ変換装置、画像読取装置、画像形成装置、画像処理装置、色データ変換方法、画像読取方法、画像形成方法、および画像処理方法