JP2002304621A - 大きいカラー・ルックアップテーブルの高速補間 - Google Patents

大きいカラー・ルックアップテーブルの高速補間

Info

Publication number
JP2002304621A
JP2002304621A JP2001388850A JP2001388850A JP2002304621A JP 2002304621 A JP2002304621 A JP 2002304621A JP 2001388850 A JP2001388850 A JP 2001388850A JP 2001388850 A JP2001388850 A JP 2001388850A JP 2002304621 A JP2002304621 A JP 2002304621A
Authority
JP
Japan
Prior art keywords
color space
vertex
color
function
current
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
JP2001388850A
Other languages
English (en)
Inventor
R Victor Klassen
ヴィクター クラッセン アール
Raja Bala
バラ ラジャ
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.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of JP2002304621A publication Critical patent/JP2002304621A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6019Conversion to subtractive colour signals using look-up tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 第一の色空間から第二の色空間への、色の変
換を効率的に行う。 【解決手段】 最初の色空間内で表される画素値を、処
理装置内に受信し、最終色空間内で、予め定義されたル
ックアップテーブル内の、上記画素値及び中間点補間の
関数として上記画素値を表す、変換された画素値を特定
し、出力装置を介して、上記最終色空間内で、上記変換
された画素値を生成する方法。及び、第一の色空間で、
指定された色値を特定するための手段と、ルックアップ
テーブルからの、変換された色空間値であって、上記指
定された色値及び中間点補間の関数として予め決定さ
れ、最終色空間で指定された色を表す上記色空間値、を
受信するための処理装置と、上記変換された色空間値を
格納するためのメモリ装置と、上記変換された色空間値
を生成するための出力装置を備えた、最終色空間で、指
定された色を生成するシステム。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、第一の色空間から
第二の色空間への、色の変換に関連する。本発明は、3
次元ルックアップテーブル内の補間と関連して適用で
き、3次元ルックアップテーブル内の補間を特に参照す
ることによって説明される。しかし、本発明はまた、他
の同様の適用も可能であることを理解して欲しい。
【0002】
【従来の技術】色画像の色訂正あるいは色変換は、画像
を、一つの色空間から他の色空間に変換するために実行
される。画像は、装置に依存しない色空間あるいは装置
依存の色空間を用いることによって表され得る。装置に
依存しない色空間は、入力及び出力装置間の、独立した
色画像化を可能とするために、特定の入力及び出力装置
から独立した色画像を表す。一般的に、色画像は、色画
像がレンダーされる前に、元画像の測色法がその再製画
像に整合することを保証するために、出力装置の装置に
依存する色空間に変換される。そのような変換は、元画
像が装置依存の色空間で定義されているか、あるいは装
置から独立した色空間で定義されているか関らずに実行
される。例えば、外部装置と接続されていないスキャナ
とプリンタからなる、閉じたシステムは、元色画像が装
置に依存しない色空間に変換されることを必要としな
い。そのような閉じたシステムは、第一の色空間によっ
て表される色画像を生成し、引き続きその色空間を、再
製前に、第二の色空間に変換する色変換システムを持
つ。独立色画像化が可能な色変換システムは、複数の画
像出力装置間ですぐに変換可能な、第三のあるいは装置
から独立した色空間内の色画像を表す。
【0003】色画像は、スキャナ、あるいはカラーワー
クステーション上で動作する色画像生成プログラムのよ
うな、入力画像端末によって生成され得る。スキャナあ
るいはワークステーションによって処理される色画像
は、画素(ピクセル)の2次元配列からなる。画像の各
画素の色は、複数の色空間を用いて表され得る。スキャ
ナ出力は、共通に、例えば、赤,緑,及び青(RGB)の
加色三原色色空間のような三刺激値の色空間に変換され
る。これらの値は、一般的に、CIE色空間の標準XY
Z座標の線形な変換であるか、あるいは、それらの値の
訂正された変換である。コンピュータによって生成され
た画像の場合、コンピュータワークステーションは、ワ
ークステーションのカラーモニタ上の色画像を、生成
し、編集し、あるいは “ソフトコピー”を眺めるため
に、ユーザによって動作させられる。ワークステーショ
ンのユーザインターフェースにて、ユーザによって選択
された色はまた、加色混合の三原色RGBのような3刺
激値の色空間内で、定義され得る。
【0004】画像入力端末によって生成された画像は、
プリンタのような画像出力端末上での再製前に、減法三
原色のシアン、マゼンタ、黄色、及び黒(CMYK)あ
るいは(簡単にCMY)色空間に変換されなければなら
ない。CMY色空間は、一般的に、色の付いた染料、あ
るいは紙の上のトナーの調合物を表現するために用いら
れる。プリンタは一般的に、各ページ上に、複数のイン
クあるいは染料の層を付加することによって動作する。
プリンタによる色の付加の応答は、比較的非線形となる
傾向がある。従って、色は、特定のプリンタために定義
され、それにより、プリンタのために定義された空間
は、装置依存である。従って、プリンタは、装置依存の
色空間内で、例えばワークステーションから情報を受信
する。プリンタはその後、その情報を、その装置依存の
色空間に変換しなければならない。ここに、スキャナあ
るいはワークステーションにおいて生成された、複数の
画像の複数の色空間と、プリンタにおいて生成されるべ
き画像の色空間の間の変換を行うための多くの異なった
方法が存在する。
【0005】色訂正は、3次元色空間から、3次元ある
いはそれ以上の次元の色空間へのマッピングポントから
なる。このマッピングは、記号付け装置あるいはプリン
タシステムの(上述のように一般的には非線形である)
物理的性質に依存する。この問題を解決するための、効
果的なアプローチは、補間を伴った、粗い3次元ルック
アップテーブルを用いることである。ルックアップテー
ブルは、異なる装置間の任意のマッピングを提供し、補
間は、テーブルのサイズを減少させるので、多くの数の
サンプル点を格納するために、多くのメモリの量が必要
とされない。一般的に、ルックアップテーブルは、色空
間の3つの色座標の各々のための、均一の格子の上の値
を含む。補間のための共通のアプローチは、全ての8つ
の頂点の線形な重み付けを与える、3つの線に囲まれた
補間である。また、四面体の補間では、平行六面体が四
面体に分割される。各四面体内の点は、その4つの頂点
に基づいて補間される。四面体の補間は、163の節点の
ルックアップテーブルにおける個々の点を発見するため
に適切である一方、643の節点、あるいはそれ以上の節
点のテーブルと共に用いられたときには、不必要な計算
を実行する。
【0006】より詳細には、色は、3つの変数とともに
定義されるので、3次元ルックアップテーブルが共通に
用いられる。RGB空間では、スキャナあるいはコンピ
ュータで、空間は、黒が3次元座標システムの原点0,
0,0にあり、白が3次元座標システムの最大値(8ビッ
トシステムでは255,255,255に位置することになる)
にある、3次元として定義され得る。それゆえ、原点か
ら広がる3軸の各々が、赤,緑,及び青のそれぞれを定
義する。プリンタのために、各軸がシアン,マゼンタ,
及び黄色を表す、同様の構成がなされ得る。しかしなが
ら、提案されている8ビットシステムでは、1600万以上
(即ち2563)の可能な色が存在することになり、合理性
のある空間の量の範囲内では、この数は、RGBからC
MYへの1:1マッピングとしては多すぎる。従って、R
GBからCMYへのマッピングを行うためには、比較的
少ない数のサンプルだけが伝統的に用いられている。
【0007】ルックアップテーブルは、伝統的に、測定
されたデータを数学的モデリングと結合する、遅い方法
を用いて構成されている。そのようなサイズが163の範
囲のテーブルを構成するために必要とされる時間の範囲
は、使用される方法に従って、数分から1〜2時間まで
である。2563(補間が必要とされない)あるいは643
大きなテーブルサイズであっても、それぞれ、4096ある
いは64倍の長さの時間を必要とする。例えば、一つのエ
ントリを計算するためにもし1秒が必要だとすると、163
テーブルの4096エントリを計算するのに68分かかること
になる。その比率でいくと、2563テーブルで224=16,7
77,216エントリを計算するのに194日かかり、643テー
ブルで 218=262,144エントリを計算するのに49分か
かることになる。従って、伝統的な技術を用いてそのよ
うな高い密度のテーブルを計算することは、実際的では
ない。
【0008】
【発明の概要】本発明は、上述の問題等を克服する、新
規で改善された方法及び装置を提供する。
【0009】第一の色空間から第二の色空間への指定さ
れた色値を変換するための方法は、第一の色空間内で指
定された色値を特定する。変換された色空間値は、最終
ルックアップテーブルから受信される。変換された色空
間値は、指定された色値及び中間点の補間の関数として
事前に決定されており、第二の色空間内の指定された色
を表す。変換された色空間値は、メモリ装置内に格納さ
れる。
【0010】本発明の一つの面に従って、変換された色
空間値が受信される前に、最終ルックアップテーブル
が、最終ルックアップテーブルと比べてより低い解像度
を持ち、複数の変換テーブルを含む、最初のルックアッ
プテーブルの関数として生成される。
【0011】本発明の他の面に従って、関心のある現在
の色のために、最終ルックアップテーブルの解像度の関
数として、いくつかの中間点補間が実行される本発明の
より限定された面に従って、最終ルックアップテーブル
内で現在の色の関数として定義される、アンカー頂点を
決定することによって、そして、最終ルックアップテー
ブル内で現在の色及びアンカー頂点の関数として定義さ
れる、現在の頂点を決定することによって、中間点補間
が実行される。現在の中間色は、アンカー頂点及び現在
の頂点の関数として、中間点補間を実行することによっ
て決定される。
【0012】本発明の、更により限定された面に従っ
て、もし、一つの中間点以上の補間が実行されれば、最
終ルックアップテーブル内で定義される第二の現在の頂
点が、現在の色,アンカー頂点、及び現在の頂点、の関
数として定義される。第二の現在の中間色が、第二の現
在の頂点の関数及びアンカー頂点及び第一の現在の頂点
のうちの一つの関数として、中間点補間を実行すること
によって決定される。
【0013】本発明の他の面に従って、指定された色の
対応する座標より小さくて、かつ最大の座標を持つ、第
一の色空間内の節点の関数として、最終ルックアップテ
ーブル内で定義される頂点、を決定することによって、
アンカー頂点及び現在の頂点が決定される。
【0014】本発明の他の面に従って、もし最終ルック
アップテーブルが予め規定された解像度より小さいなら
ば、複数の中間色空間変換値が、最終ルックアップテー
ブルから受信される。変換された色空間値が、中間色空
間変換値の関数として決定される。
【0015】本発明の更に限定された面に従って、も
し、予め規定された解像度が、入力色の解像度の半分で
あれば、2つの変換値が、最終ルックアップテーブルか
ら受信される。
【0016】
【発明の実施の形態】以下の議論を簡易化するために、
ルックアップテーブルの一つの次元に沿った節点間の複
数の空間の番号を、テーブル“解像度”として引用する
こととする。従って、173=4913の節点を持つ17×17×1
7テーブルは、16の解像度を持つ。テーブルはまた,16
×16×16の立方体(各々が8個の節点を持つ)を含むと
して観察され得る。ガンマウト境界におけるものを除
く、全ての立方体は、それらの全ての頂点(節点)を、
隣の立方体と共有する。ガンマウト境界における節点
は、それらの頂点の全てでは無く、そのいくつかを、隣
接する立方体と共有する。与えられた立方体は、その、
より低い左前面の頂点の位置(即ち、最も小さい座標値
を持つ頂点)によって特定される。いくつかの立方体の
ための正面の頂点で、下方の左にある、全ての節点のた
めのテーブルへの索引には4ビット必要なので、テーブ
ルは4ビット解像度を持つと言われる。
【0017】図1及び2を参照する。第一の(最初の)
色空間から第二の(最終)色空間への、指定された色値
(画素値)の変換をするためのシステム10には、入力装
置12(例えば走査装置),表示装置14,メモリ装置16,
処理装置20,及び出力装置22を含む。処理装置20は、メ
モリ装置16及び出力装置22の双方と通信する。好ましい
実施例では、メモリ装置16は、処理装置20内に含まれ
る。しかし、他の構成もまた考えられる。第一及び第二
の色空間は、例えば、装置依存の色空間(例えばRGB
あるいはCMYK)あるいは測色上の色空間(例えばL
*a*b)でありうることを理解して欲しい。更に、入力
及び出力装置12,22がそれぞれ、CMYK色空間で動作
する一方、表示装置14は、例えば、RGB色空間で動作
し得る。
【0018】第一の色空間から第二の色空間へ、指定さ
れた色値(画素値)を変換するための方法24は、ステッ
プAで開始する。複数の色空間の間で色値を変換するた
めに、好ましくはメモリ装置16に格納される3次元ルッ
クアップテーブルは、3あるいは4ビットの解像度(即
ち9×9×9あるいは17×17×17節点)を持つことが想定
される。以下に更に詳細に説明されるように、6,7,
あるいは8ビット解像度(即ち65×65×65,129×129×
129、あるいは257×257×257)節点を持つ最終ルックア
ップテーブルは、ステップBで決定される。最終ルック
アップテーブルは、ステップCで、メモリ装置16に格納
される。最初のルックアップテーブルよりも、最終ルッ
クアップテーブルはより多くの節点を持つので、最終ル
ックアップテーブルは、最初のルックアップテーブルに
比較してより高い解像度を持つ。ルックアップテーブル
の節点は、対応する色値(画素値)を変換(変形)する
ための、最初の色空間から最終色空間への変換値(変形
値)を含む。
【0019】一旦最終ルックアップテーブルが決定され
ると、ステップDで、画像30がメモリ装置内16に走査さ
れる。画像30は、最初の色空間(例えば、RGBのよう
な装置依存の色空間)で走査され、メモリ装置16に格納
される前に、第二の色空間(例えば、L*a*bのような
測色上の色空間)に変換されることを理解して欲しい。
更に、画像データは、画素毎に変換される。
【0020】変換されるべき現在の画素値(指定された
色)が、画像30内で、ステップEで特定される。現在の
画素値の関数として選択される変換値(変形値)は、ス
テップFで、最終ルックアップテーブルから処理装置20
内に受信される。もし最終ルックアップテーブルの解像
度が8ビットより小さいなら、複数の中間変換値が選択
され、処理はステップGとともに継続する。もし最終ル
ックアップテーブルの解像度が8ビット以上なら、単一
変換値が選択され、処理はステップHに移る。ステップ
Gでは、単一変換値が複数の変換値から計算される。単
一変換値は、ステップHで、メモリ装置16に格納され
る。このやり方で、現在の画素値は、第一の色空間から
第二の色空間に変換され、メモリ装置16に格納される。
【0021】出力装置22のために、現在の画素値を適切
な色空間に変換するために、類似の変換工程が実行され
得ることを理解して欲しい。この場合には、現在の画素
値は、ステップIで、出力装置22を介して、オプション
で生成される。出力装置22は、好ましくは、ゼログラフ
ィー環境で動作し、白黒あるいはカラー出力のいずれか
を生成する、デジタル出力装置(例えば印刷装置)であ
る。
【0022】ステップJで、より多くの画素値が、画像
30内で変換されるために維持されるか否かの決定がなさ
れる。もし、より多くの画素値が変換されるべきなら、
次の現在の画素値を特定するために、制御はステップE
に戻る。もし、より多くの画素値が変換されるべきでな
いなら、工程を停止するために、制御はステップKに移
る。
【0023】図3を参照する。現在の画素を変換するス
テップGは、ステップG1で開始する。好ましい実施例
では、最終ルックアップテーブルの解像度は、27(129
×129×129節点)と想定される。関心のある現在の色
は、ステップG2で特定される。
【0024】図3及び図4を参照する。最終ルックアッ
プテーブルは、129×129×129節点(頂点)の立方体40
として表される。その後、問題の(ガンマウト境界以外
の)位置(頂点)だけが、球体で印されたこれらの点4
2a,42b,42c,42d,42e,42f,42
g,42h(頂点)である。他の点は、他の同様の立方
体と共有される。もし、最終ルックアップテーブルが7
ビット解像度を持つなら、何らかの8ビット解像度の点
を発見するためには、頂点42a,42b,42c,4
2d,42e,42f,42g,42h(アンカー頂
点)の一つと、アンカー頂点の7つの隣接点の一つを平
均することで十分であることが図4から明らかである。
例えば、下側の左の頂点42aが、ステップG3で、アン
カー頂点として選ばれる。その後、7つの隣接する頂点
42b,42c,42d,42e,42f,42g,4
2hの一つが、ステップG4で、現在の頂点(例えば42
b)として選ばれる。アンカー頂点42aは、最初の色空
間で、現在の興味の対象である色の座標より小さい座標
を持つ、最も近い節点である。現在の頂点42bは、現在
の興味の対象である色が、アンカー頂点及び現在の頂点
42bからの線に沿って中間に位置するように選択され
る。即ち、現在の興味の対象である色を含む立方体を特
定するのは、その節点である。中間頂点(中間色)42i
は、ステップG5で、アンカー頂点42aと現在の頂点42
bの間の中間点補間を介して決定される。工程はステッ
プG6で停止する。
【0025】第二の実施例では、最終テーブルの解像度
は26、あるいは6ビットである。変換を決定する単純な
方法は、第一に中間節点の組を突き止めることである。
これらの中間節点は、現在の興味の対象である色のため
の、変換された画素値の計算に貢献する、仮定的27ビッ
ト格子の節点である。これらの節点は、その後、7ビッ
ト解像度から8ビット解像度に変換するための方法に類
似する方法で計算される。最終の色を得るために、7ビ
ット解像度から8ビット解像度に変換するための、中間
節点が用いられる。この単純な変換は、明らかに、7ビ
ット解像度から8ビット解像度に行くために要求される
操作の3倍の操作を含み、2つの中間節点を得るための
2倍の操作を含み、それらを使用するために1回の操作
が必要である。しかし、以下に説明されるように、7ビ
ット解像度から8ビット解像度に行くためのコストの2
倍以下にコストを低減することが可能である。
【0026】本発明で議論される中間点補間平均操作
は、四面体及び他の伝統的な補間方法より、極めて少な
い計算コストしか伴わない。2つの点q及びrの間の中
間点pが、
【数1】p=(q+r)/2 によって数学的に求められる。ソフトウェアの実行によ
れば、これは、
【数2】p=((q+r+1)>>1) によって表現され得る。従って、中間点細分には、2つ
の加算及び一つのシフトが必要とされる。もし、2つの
中間点平均化操作を計算することを望むなら、
【数3】p=((s+(q+r)/2)/2) なる式があり、これはソフトウェアでは、
【数4】p=(q+r+(s<<1)+2)>>2) (これは、3つの加算と2つのシフトを必要とする)に
翻訳される。更に、2つの別々の中間点細分に比べて、
そのような計算は平均的にはより正確である。中間点平
均化には、一般的な補間技術に比較して、乗算,大きな
ゲインが必要でないことを知って欲しい。以下に述べる
ように、各入力色のための3次元補間は、出力分離当
り、2つの中間点平均化操作、よりは少ない操作で実行
されうる。
【0027】上述のように、図4の立方体は、色空間の
64×64×64タイリング(即ち、64個の立方体、あるいは
65個の節点が、各方向に存在する)を示す。7ビット表
現の、どこの点も、64×64×64タイリング内の2つの節
点間の中間点補間を介して決定される。8ビット表現を
持つ全ての点の中で、低位ビット0のものは、257×257
×257格子と129×129×129格子の双方の上に位置する。
これらは、おおよそ、各8つの点に対して1つを表す。
それらの位置以外の、8ビット解像度の点は、仮定的7
ビット解像度表現内の、2つの節点(少なくともその内
一つは64×64×64タイリング内の頂点である)の間の中
間点補間を介して決定される。元64×64×64タイリング
の少なくとも一つの頂点を最終中間点補間で用いること
ができ、最終中間点補間で用いられる他の頂点が、元64
×64×64タイリングからの中間点補間を用いて計算され
うるので、この方法は、2つの中間点補間のみを必要と
する。このやり方では、常に、最大で2つの平均化(64
×64×64タイリングからの、最大で3つの点を含む)が
存在する。
【0028】64の場合には、平均化は不要であるが、
論理を単純にするため、この場合は、その点自身で平均
化がなされる。その場合及び付加的な7つの場合には、
最初の平均化の結果は、必要な結果をもたらす。
【0029】中間点平均化技術の実行では、6ビットの
解像度を持つ最終色ルックアップテーブルが与えられる
こと、あるいは計算されていることが想定される。例え
ば、RGB色空間内の単一点は、セル索引j,k,及び
Lを得るために、6つの高位ビットを用いることによっ
て補間される。低位ビットは、
【数5】低索引(LowIndex)=(R&0x3)|((G&0x3)<<2)
|(B<<4) に従って連鎖される。
【0030】平均化においてどの節点が用いられるかの
選択は、高速の補償にはさほど適していない。例えば、
図4で球として表された全ての節点は、2つの節点を、
立方体の頂点において平均化することによって計算され
得る。平均して、どの節点が他の節点であるべきかを計
算することは困難ではないが、一旦節点42aがアンカー
節点として選択されると、その情報を、計算されるべき
節点の、低位ビット上に索引付けされたルックアップテ
ーブルに格納する方がより早い。第二の例として、節点
42c(前面の左端)と42e(主対角線に沿っている)の
間の点(図示せず)を考慮してほしい。その節点は、立
方体の頂面の中心に位置する、節点42a及び中間節点
(図示せず)の平均として計算されることになる。これ
らの3つの節点及びそれらの補間の順序を選択するため
に、ルックアップ技術を使用することは、第一の例にお
けるよりも、より魅力的である。
【0031】以上に照らして、低索引(LowIndex)の全
てのビットが、256要素ルックアップテーブルへの索引
として用いられる。256要素ルックアップテーブル内の
エントリは、64節点毎に反復する。10個の1ビットの
数b0...b9(ソフトウェア環境ではバイトとして
格納されうる)は、テーブルから検索される。もしb0
が0なら、一つの平均のみが必要である。必要とされる
平均は、その後、ルックアップテーブルから、以下の関
数として検索されることになる。
【数6】((LUT[j+b1][k+b2][L+b3]+LUT[j+b4][k+b5]
[L+b6]+1)>>1(時間で7/64番め),(ここでLUTは“ルッ
クアップテーブル”を表す) もしb0が0でなければ、以下の2つの平均化操作が必要
となる。
【数7】(q+r+(s<<1)+2)>>2)
【数8】((LUT[j+b1][k+b2][L+b3]+LUT[j+b4][k+b5][L+
b6]+LUT[j+b7][k+b8][L+b9]<<1)+2>>2 このバージョンは、(2つあるいは1つの補間のいずれ
が必要か、に従って)一つの分岐を含み、(現代の機器
にとっては典型的なような)分岐が高価な機器に利用可
能である。代替の手段(依然として1つの分岐を持つ
が、この場合には、ジャンプテーブルを通しての分岐で
あり、ルックアップは1つ少ない)は、スイッチ命令文
のための制御変数として、低索引(LowIndex)を用い
る。要約すると、必要な操作カウントは以下に与えられ
る。ここで、Nは出力次元の数である。
【0032】
【0033】分岐,乗算,及び3次元ルックアップを節
約することは、余分のシフト,スイッチ,あるいは1次
元ルックアップを行うことに、容易に勝ることが予想さ
れる。
【0034】上述の技術は64×64×64ルックアップテー
ブルを要求する一方、そのような大きなルックアップテ
ーブルが、色マネジメントシステムに付きまとう必要は
無いことに気づいて欲しい。画像を処理する少し前に、
容易に伝統的なサイズの(例えば16×16×16から64×64
×64までの)ルックアップテーブルをアップサンプル
(upsample)することができる。実際、今述べた上述の
技術は、ルックアップテーブルを、各次元において2の
因数によって、必要なサイズに至るまで、反復してアッ
プサンプル(upsample)するために可能な一つの方法を
提供する。しかし、補間方法は常に立方体からの限られ
た数の頂点を使用するので、再帰的に用いられた場合、
満足できる結果を提供しにくい。それゆえ、線形補間あ
るいは立方体補間を用いて、テーブルをアップサンプル
(upsample)するための方法が提供される。
【0035】伝統的な(データあるいはモデルベース
の)技術を用いて、スパーステーブル(疎テーブル)が
構築されることを理解して欲しい。そして、フルテーブ
ルが、その後、補間を用いて作られる。補間は、高速二
分技術を用いる。アプリケーションに応じて、3次線形
あるいは3次立方体補間のいずれかが使用されうる。典
型的なテーブルサイズは9×9×9あるいは17×17×17で
ある。上述の方法は、最終テーブル上で高速補間を用い
るが、速度を犠牲にすることによって、四面体の補間、
あるいは3次線形補間を用いる補間もまた用いられるこ
とができる。
【0036】上述のように、高密度3-4色変換テーブル
の構築は、遅い(典型的なワークステーション上での現
行の技術を用いて、17×17×17テーブルをもたらす典型
的な特性付けには、9分かかる。しかし、マルチプル・
レンダリング,プリントモード,メディア等を意図する
場合、フルの特性付けには、数時間かかりうる)。特徴
付けは、比較的なめらかである。その意味は、例え、最
も要求の厳しいアプリケーションでも、立方体の補間で
8×8×8テーブルで十分、と考えられるということであ
る。ハイエンドのアプリケーションに対して、フルのテ
ーブルを生成する(即ち256×256×256=224のエント
リ)ことさえ可能であるが、エントリの数に比例して時
間がかかり、もし173テーブルで9分かかるなら、(お
およそ212のエントリ)、その後、フルテーブルには、4
000倍の時間、あるいは1ヶ月近くを必要とすることに
なる。
【0037】小さなルックアップテーブル(例えば5×5
×5)は、2との問題を提示する。第一に、変換プロセ
スに固有の非線形性の捕捉に失敗しうる(これは、装置
に依存する。そして、潜在する関数が高曲率を持つ領域
での大きな誤差が存在することを明白にする)。第二
に、節点間で発生する線形補間によるアーティファクト
が発生しうる(補間値生成におけるよじれから潜在的に
生成されるアーティファクトは、より、ぎこちなく走査
される)。適度のサイズのテーブル(例えば9×9×9)
は、継続して線形の補間アーティファクトを持ち得る
が、より良く装置のふるまいを捕捉し得る。17×17×17
のテーブルは、典型的特徴付けの全ての情報内容を含む
が、最も要求が厳しいアプリケーションにとって、線形
補間は依然として問題となることがあり得る。33×33×
33を越えると、線形補間が画像品質の問題をもたらす可
能性は非常に低い。しかし、非常に大きなテーブルは、
補間の必要性を減少させ、あるいは除去させる。RGB
からL*a*b(スキャナ用)へ変換する、256×256×25
6テーブルは、一つのテーブルルックアップにおいて必
要な色をリターンさせるが、48Mバイトのメモリを必要
とする。129×129×129テーブルは、たった6Mバイトの
メモリ(及び補間用の2つの加算とシフト)を必要とす
る。各補間は中間点細分なので、たとえ129×129×129
テーブルであっても、多くの計算の節約がなされる。
【0038】補間されるか否かに関らず、大きなテーブ
ルを用いることには価値があるので本発明はそのような
大きなテーブルの構築を扱う。中間点細分は、曲線及び
表面を計算する、既知の、高速な手段である。そして、
このことは、ボリューム(volume)に一般化できる。中
間点細分は数値的に安定だが、補間を行うための唯一の
方法では無い。例えば、何らかのサイズの何らかの補間
値を伴ったテーブルを構築するために、前方差分化を用
いることができる。そして、大きなスケールファクター
にとっては、これは更に高速である。しかし、(以下
の)タイミングテストに示されるように、中間点細分
は、ほとんどのアプリケーションのために、十分に高速
である。
【0039】線形補間 もし、大きなテーブルに行くことによる唯一の改善が速
度である位、入力テーブルが十分高い密度である場合、
入力テーブルサイズから最終テーブルサイズへの変換
は、以下のように、反復中間点細分によって為され得
る。
【0040】計算されるテーブル(最終テーブル)が、
次元当り2n+1のエントリを持ち、入力テーブルが2m+1の
エントリを持つと仮定する(ここでn>m)。浮動小数
点の実施においては、入力テーブルの各エントリがその
最終位置内にあるように、まずテーブルをまばらに格納
し、その後、各次元毎に、k=mからn-1まで、存在す
るエントリの各組ei,ei+2 n-kについて、新たなエン
トリ
【数9】ei+2 n-k-1=0.5*(ei+ei+2 n-k) を形成する。
【0041】ここで、iは現在の次元における指標,k
はテーブルサイズの現在のロガリズム(底が2),そし
て、他の次元は固定されている。
【0042】kのループの各繰り返しでは、現在の次元
において、テーブルサイズは、2倍になる。そして、こ
れは、テーブルが、現在の次元における、その最終サイ
ズに達するまで継続する。これが各次元で繰り返され
る。このようにして、テーブルは、9×9×9から9×9×1
7へ,9×9×33へ,・・・9×9×257へ、その後、9×17
×257へ,・・・、そして最終的に、129×257×257から
257×257×257へ成長し得る。
【0043】固定小数点では、値は、n−m防御ビット
とともに、事前にロードされねばならない。その後、新
しいエントリを形成するための表現は、単純に、
【数10】ei+2 n-k-1=(ei+ei+2 n-k)>>1 である。一旦、テーブルが完全に計算されると、防御ビ
ットは破棄されねばならない。
【数11】 ei+2 n-m-1=(ei+2 n-m-1 + 2n-m-1)>>(n-m) テストの実施によって、17×17×17から257×257×257
への成長には、分離あたり、たった13秒しかかからない
ことが発見された。
【0044】立方体補間 より少ない入力テーブルあるいは、より高い精度のため
に、立方体補間を使用し得る。ベジェ立方体は、節点の
補間、及び、適切に配列された“中間節点”C1の連続
性を提供する。他の方法もまた使用できる。ひとつの次
元で、工程は2つのステップで進む。 1.中間節点を以下のように生成:
【数12】n4i=pi
【数13】n4i+1=pi+(pi+1-pi-1)/4
【数14】n4i+2=pi+1+(pi-pi+2)/4
【数15】n4i+3=pi+1 2.各レベル毎に、i=0,3,6,・・・毎に、セグメン
トni・・・ni+3を以下のように細分する。ni,i+1
(ni+ni+1)/2として計算し、同様に、ni+1,i+2及び
i+2,i+3を計算する。今計算された、3つの隣接する
組を平均して、ni,i+2及びni+1,i+3を得る。今計算さ
れた組を平均して、ni,i+3を得る。このセグメント
を、2つのセグメントni,ni,i+1 ,ni,i+2 ,n
i,i+3及びni,i+3 ,ni+1,i+3 ,ni+2,i+3,ni+3
に置換する。最後の反復で、加入した新しいセグメン
ト結合だけが維持される必要がある。これが、各次元
で、3次線形補間として反復される。固定点補間での正
確性のために、細分のレベル当り、3つの防御ビットが
必要とされる。これは、依然として非常に高速の(フル
の257×257×257テーブルのために、1分離当り約80
秒)線形補間に比べて、約6倍の費用がかかる。
【0045】アプリケーション 既に触れた一つのアプリケーションは、非常に大きいテ
ーブル(257×257×257あるいは129×129×129)であ
る。他のアプリケーションは、装置の高速再特徴付けで
ある。もし装置が、8×8×8テーブルの情報によって、
うまく特徴付けされているが、線形補間アーティファク
トを避けるために、システムが16×16×16あるいは更に
32×32×32を用いるなら、8×8×8テーブルは、16×16
×16の1/8の時間で、あるいは、32×32×32の1/64の時
間で(つまり数分で)計算され得、その後、立方体中間
点補間によって、1秒以内にスケールアップされる(た
とえ32×32×32のケースであっても)。
【図面の簡単な説明】
【図1】本発明に従って第一の色空間から第二の色空間
へ色値を変換するためののシステム。
【図2】本発明に従って第一の色空間から第二の色空間
へ色値を変換するためのフローチャート。
【図3】本発明に従ってルックアップテーブルを決定す
るためのフローチャート。
【図4】本発明に従った色空間の部分。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ラジャ バラ アメリカ合衆国 ニューヨーク州 14580 ウェブスター イースト ハイ ヴィス タ トレイル 1050 Fターム(参考) 5B057 CA01 CA08 CA13 CA16 CB01 CB08 CB13 CB16 CC01 CE18 CH01 CH07 CH11 DB03 DB06 DB09 5C077 MP01 MP08 PP20 PP32 PP33 PP36 PQ12 PQ22 PQ23 RR19 TT02 5C079 HB01 HB03 HB05 HB08 HB12 LA37 MA01 MA04 MA11 NA04 PA03

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 最初の色空間内で表される画素値を、処
    理装置内に受信し、 上記画素値及び予め定義されたルックアップテーブル内
    の中間点補間の関数として、最終色空間内での上記画素
    値を表す、変換された画素値を特定し、 出力装置を介して、上記最終色空間内で、上記変換され
    た画素値を生成するステップを含む、 最終色空間で画素値を生成するための方法。
  2. 【請求項2】 請求項1に記載の、最終色空間内で画素
    値を生成する方法であって、上記特定するステップが、 上記ルックアップテーブルの解像度の関数として、複数
    の中間点補間を実行し、 上記画素値の関数として、上記ルックアップテーブル内
    で定義される、アンカー頂点を決定し、 上記画素値及び当該アンカー頂点の関数として、上記ル
    ックアップテーブル内で定義される、現在の頂点を決定
    し、 上記アンカー頂点及び当該現在の頂点の関数として、上
    記中間点補間を実行することによって、現在の中間画素
    値を決定し、そして、 現在の色,上記アンカー頂点,及び上記現在の頂点の関
    数として、最終ルックアップテーブル内で定義される、
    第二の現在の頂点を決定し、そして、 当該第二の現在の頂点の関数、及び、上記アンカー頂点
    と上記第一の現在の頂点のうちの一つの関数として、中
    間点補間を実行することによって、第二の現在の中間色
    を決定するステップを含む、請求項1に記載の、最終色
    空間内で画素値を生成する方法。
  3. 【請求項3】 第一の色空間で、指定された色値を特定
    するための手段と、 ルックアップテーブルからの、変換された色空間値であ
    って、上記指定された色値及び中間点補間の関数として
    予め決定され、最終色空間で指定された色を表す上記色
    空間値、を受信するための処理装置と、 上記変換された色空間値を格納するためのメモリ装置
    と、 上記変換された色空間値を生成するための出力装置を備
    えた、最終色空間で、指定された色を生成するためのシ
    ステム。
  4. 【請求項4】 上記処理装置が、画素値の関数として上
    記ルックアップテーブル内で定義されたアンカー頂点の
    関数として、及び当該画素値と当該アンカー頂点の関数
    として上記ルックアップテーブル内で定義された第一の
    現在の頂点の関数として、上記中間点補間を実行し、現
    在の中間画素値が上記中間点補間を介して上記アンカー
    頂点と上記第一の現在の頂点の関数として決定される、
    請求項3に記載の最終色空間で画素値を生成するための
    システム。
  5. 【請求項5】 上記処理装置が、現在の画素値,上記ア
    ンカー頂点,及び上記第一の現在の頂点の関数として上
    記ルックアップテーブル内で定義された第二の現在の頂
    点の関数として、付加的な中間点補間を実行し、第二の
    現在の中間画素値が、当該中間点補間を介して、上記第
    二の現在の頂点の関数、及び上記アンカー頂点と上記第
    一の現在の頂点のうち一つの関数として決定される、請
    求項4に記載の最終色空間内で画素値を生成するための
    システム。
JP2001388850A 2000-12-28 2001-12-21 大きいカラー・ルックアップテーブルの高速補間 Pending JP2002304621A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/750552 2000-12-28
US09/750,552 US7215440B2 (en) 2000-12-28 2000-12-28 Fast interpolation of large color lookup tables

Publications (1)

Publication Number Publication Date
JP2002304621A true JP2002304621A (ja) 2002-10-18

Family

ID=25018306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001388850A Pending JP2002304621A (ja) 2000-12-28 2001-12-21 大きいカラー・ルックアップテーブルの高速補間

Country Status (5)

Country Link
US (1) US7215440B2 (ja)
EP (1) EP1221812B1 (ja)
JP (1) JP2002304621A (ja)
BR (1) BR0106513A (ja)
DE (1) DE60135537D1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3684158B2 (ja) * 2001-01-29 2005-08-17 キヤノン株式会社 色情報処理方法およびプログラム
US6801212B1 (en) * 2002-03-29 2004-10-05 Cypress Semiconductor Corp. Apparatus and method for color data interpolation
US6975331B2 (en) * 2002-04-26 2005-12-13 Xerox Corporation Method and system for efficient interpolation using programmable node spacing
US7382489B2 (en) * 2002-07-01 2008-06-03 Xerox Corporation Efficient interpolation technique using programmable node spacing
KR20040107614A (ko) * 2003-06-05 2004-12-23 삼성전자주식회사 Mpd에 색재현을 위한 색신호 처리장치 및 그 방법
JP3734175B2 (ja) * 2003-11-26 2006-01-11 デンセイ・ラムダ株式会社 遅延装置、電源装置および信号遅延用プログラム
JP2008505533A (ja) * 2004-06-30 2008-02-21 アドビ システムズ, インコーポレイテッド N次元面体補間
US7755817B2 (en) * 2004-12-07 2010-07-13 Chimei Innolux Corporation Color gamut mapping
US7876330B2 (en) * 2007-03-30 2011-01-25 Kabushiki Kaisha Toshiba Color conversion apparatus, filter processing apparatus and color conversion method
US7864366B2 (en) * 2007-09-11 2011-01-04 Xerox Corporation Method and system for improved space filling interpolation
US20090213135A1 (en) * 2008-02-26 2009-08-27 Nokia Corporation Providing color space conversion
US9323438B2 (en) 2010-07-15 2016-04-26 Apple Inc. Media-editing application with live dragging and live editing capabilities
US8963947B2 (en) * 2011-01-25 2015-02-24 Dolby Laboratories Licensing Corporation Enhanced lookup of display driving values
US8775480B2 (en) 2011-01-28 2014-07-08 Apple Inc. Media clip management
US9997196B2 (en) 2011-02-16 2018-06-12 Apple Inc. Retiming media presentations
US11747972B2 (en) 2011-02-16 2023-09-05 Apple Inc. Media-editing application with novel editing tools
US10733957B2 (en) * 2018-09-26 2020-08-04 Apple Inc. Method and system for display color calibration
CN113450440B (zh) * 2021-06-22 2023-05-26 网易(杭州)网络有限公司 渲染图像的方法、装置、计算机可读存储介质和电子设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4837722A (en) * 1986-05-14 1989-06-06 Massachusetts Institute Of Technology Digital high speed 3-dimensional interpolation machine
JPH0644236B2 (ja) * 1989-03-08 1994-06-08 富士ゼロックス株式会社 記録装置のモニタ制御装置
DE4012905A1 (de) * 1990-04-23 1991-10-24 Linotype Ag Verfahren und vorrichtung zur erzeugung einer digitalen drucktabelle fuer druckfarben bei bildreproduktionsgeraeten
US5432892A (en) * 1992-11-25 1995-07-11 International Business Machines Corporation Volummetric linear interpolation
US5390035A (en) * 1992-12-23 1995-02-14 International Business Machines Corporation Method and means for tetrahedron/octahedron packing and tetrahedron extraction for function approximation
US5751926A (en) * 1992-12-23 1998-05-12 International Business Machines Corporation Function approximation using a centered cubic packing with tetragonal disphenoid extraction
US5471324A (en) * 1994-04-05 1995-11-28 Xerox Corporation Color printer calibration with improved color mapping linearity
US5481583A (en) * 1994-08-24 1996-01-02 Picker International, Inc. Higher order preinterpolator for backprojection
JPH0877341A (ja) * 1994-08-29 1996-03-22 Xerox Corp カラー画像処理装置及び方法
US5748176A (en) * 1995-07-20 1998-05-05 Hewlett-Packard Company Multi-variable colorimetric data access by iterative interpolation and subdivision
US5917963A (en) * 1995-09-21 1999-06-29 Canon Kabushiki Kaisha Image processing apparatus and image processing method
US5862253A (en) * 1996-05-03 1999-01-19 Harlequin Group Plc Color imaging system and process with high-speed rendering
US5870077A (en) * 1997-02-26 1999-02-09 Hewlett-Packard Company Method for tristimulus color data non-linear storage, retrieval, and interpolation
US6163617A (en) * 1997-11-26 2000-12-19 Picker International, Inc. Backprojection with a multi-color rendering engine
US6040925A (en) * 1997-12-12 2000-03-21 Hewlett-Packard Company Radial and pruned radial interpolation
US6049400A (en) * 1997-12-12 2000-04-11 Hewlett-Packard Company Non-symmetric tetrahedral and non-symmetric pruned tetrahedral interpolation
US6278747B1 (en) * 1998-03-13 2001-08-21 International Business Machines Corporation Method and apparatus for performing digital detection of data stored on an optical medium
US6985543B1 (en) * 1998-03-27 2006-01-10 Marvell International Ltd. Digital servo channel for recording apparatus
US6760489B1 (en) * 1998-04-06 2004-07-06 Seiko Epson Corporation Apparatus and method for image data interpolation and medium on which image data interpolation program is recorded
US6496608B1 (en) * 1999-01-15 2002-12-17 Picsurf, Inc. Image data interpolation system and method

Also Published As

Publication number Publication date
US20020122207A1 (en) 2002-09-05
EP1221812B1 (en) 2008-08-27
EP1221812A3 (en) 2005-07-20
DE60135537D1 (de) 2008-10-09
BR0106513A (pt) 2002-09-24
US7215440B2 (en) 2007-05-08
EP1221812A2 (en) 2002-07-10

Similar Documents

Publication Publication Date Title
JP4290296B2 (ja) 入力カラーを出力カラーに変換する方法、及び電子画像形成システム
EP0611231B1 (en) Method for cross-device color calibration and enhancement using explicit constraints
EP0700198B1 (en) System for correcting color images using tetrahedral interpolation over a hexagonal lattice
JP3371964B2 (ja) カラー出力装置の特性表示の方法と装置
JP2002304621A (ja) 大きいカラー・ルックアップテーブルの高速補間
JP3493104B2 (ja) カラー画像処理装置
US7684084B2 (en) Multiple dimensional color conversion to minimize interpolation error
JPH0795431A (ja) 色較正のための凸補間の方法および装置
EP0681396A2 (en) Method and apparatus for calibrating a four color printer
JP3273204B2 (ja) 4色カラープリンタの色分解画像処理方法及び装置
JPH0730772A (ja) 画像処理装置
JPH08237495A (ja) 選択されたカラーを正確に描写するためのカラープリンタ校正方法
JP3976849B2 (ja) 補間器入力データを生成する装置
US6707938B2 (en) Principal axis look-up for color correction
JPH11205620A (ja) 3次元ルックアップテーブルの補正法およびこれを行う画像処理装置ならびにこれを備えたデジタルカラープリンタ
Bala et al. Efficient color transformation implementation
JP4429439B2 (ja) カラー変換方法及び変換プロセッサ
EP0923048B9 (en) Apparatus for tetrahedral and pruned tetrahedral interpolation
EP0923049A2 (en) Apparatus for tetrahedral and pruned tetrahedral interpolation
US5966474A (en) Non-symmetric radial and non-symmetric pruned radial interpolation
EP0923037B1 (en) Common pruned radial and pruned tetrahedral interpolation hardware implementation
JPH11220630A (ja) 3次元ルックアップテーブルの作成法およびこれを行う画像処理装置ならびにこれを備えたデジタルカラープリンタ
JP2001320593A (ja) 画像処理装置およびそれを備えた画像形成装置ならびに画像処理方法
JP2005167503A (ja) 画像処理装置およびそれを備えた画像形成装置
JPH09107485A (ja) 色変換方法および色変換装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080317

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080414