(57)【特許請求の範囲】
【請求項１】
デバイスに独立な色空間内の色に対応する基本色値を提供するカラープリンタ用のルックアップテーブルを作成する色処理方法であって、
前記カラープリンタによって印刷されたカラーパッチの測色結果から前記カラープリンタの色域を規定し、
前記デバイスに独立な色空間の色を前記基本色値に変換するとともに、前記カラープリンタの色域外の色を前記色域内に変換するルックアップテーブルを前記測色結果から作成し、
アブニー効果を補償するために、前記ルックアップテーブルの色相角を調整することを特徴とする色処理方法。
【請求項２】
前記調整には、彩度に応じたファクタも用いることを特徴とする請求項1に記載された色処理方法。
【請求項３】
前記調整は、青色領域の色相角を伸張し、青紫色および紫色領域の色相角を圧縮することを特徴とする請求項1に記載された色処理方法。
【請求項４】
デバイスに独立な色空間内の色に対応する基本色値を提供するカラープリンタ用のルックアップテーブルを作成する色処理装置であって、
前記カラープリンタによって印刷されたカラーパッチの測色結果から前記カラープリンタの色域を規定する規定手段と、
前記デバイスに独立な色空間の色を前記基本色値に変換するとともに、前記カラープリンタの色域外の色を前記色域内に変換するルックアップテーブルを前記測色結果から作成する作成手段と、
アブニー効果を補償するために、前記ルックアップテーブルの色相角を調整する調整手段とを有することを特徴とする色処理装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、デバイスに独立な色空間内の色に対応する基本色値を提供するカラープリンタ用のルックアップテーブルを作成する色処理装置およびその方法に関する。
【０００２】
【従来の技術】
近年、カラーモニタやカラープリンタの有用性が増して、コンピュータのユーザがフルカラーの画像をカラーモニタで見て、カラープリンタによるフルカラー印刷を指示することが日常化して来ている。
しかしながら、カラープリンタとカラーモニタの形成するカラー画像はそれぞれ異なるものである。特に、カラーモニタは発光型の装置であって、色の形成は一般に赤、緑、青の３基本色の光を加法混色することにより行なわれる。一方、印刷された画像は単純に周辺光を反射したものであり、周辺光を介して知覚された印刷画像の色は一般にシアン、マジェンタ、イエロー（時にはブラックも含まれる）の減色法の３基本色に影響される。
【０００３】
【発明が解決しようとする課題】
これらの混色法は基本的に異なるものであり、結果として、モニタで表示可能な色の範囲はプリンタで印刷可能な色の範囲とは異なっている。１図は、ＣＩＥ１９３１色度図であり、モニタに表示可能な色の範囲（即ち「色域」）（領域Ａ）と、プリンタに印刷可能な色の範囲（即ち「色域」）（領域Ｂ）を示している。図示のように、モニタが表示出来る色の範囲は一般にプリンタが印刷出来る色の範囲より広い。これは、モニタが光を発する装置であって、より大きな範囲の彩度で色を表示するからである。しかしながら、領域１０のように、減色法によるものであるのに印刷画像の方がモニタより広い色範囲を持つような低彩度領域も存在する。
【０００４】
印刷可能範囲と表示可能範囲のこのような差異により、以前は表示されたカラー画像の忠実な色再現として認められるようなカラー画像を印刷することは不可能であった。特に、印刷可能な色の領域Ｂの外に位置する色域外領域１１のような領域の色を印刷することは全く不可能であった。従って、こうした色はカラーモニタ上では見ることが出来ても、カラープリンタで印刷することは出来なかった。
【０００５】
米国特許第４，９４１，０３８号では、色域外色をプリンタ色域内の印刷可能な色に修正するに際し、その色域外色から最短のベクトル距離にある印刷可能な色であって、その印刷不可能な色の色相角度を保持した色を選択するようにしている。しかしながら、人間の色覚に関する実験や観察から、純白色から大きな彩度の色へと引いた一定の色相あるいは色を表す線なるものは、直線ではなくむしろ曲線であるということが判明している。２図の色度図はこれらの曲線のカーブ（いわゆる「アブニー効果」）を示している。青みの緑色領域１８のような、一定の色相を示す色線の曲率が比較的小さい領域では、色相角度を保持すると知覚された色相には微かな変化しか現われない。このために、青みの緑色域外の色１８ａについて、その色相角度をプリンタ色域の縁部１０の点１８ｂへ引き戻しても、青みの緑色を印刷することができる。しかし、青みの紫色領域１９のように、一定の色を示す線からなる曲率が比較的大きい領域では、色相角度を保持するようにすると、知覚される色相に大きく影響する。かくして、青みの紫色域外色１９ａに対する色相角度を保持しながら、その色相をプリンタ色域の縁部１０の点１９ｂへ引き戻すことは、明らかに青色に見える色相を持つ色が印刷されてしまうという結果になる。
【０００６】
本発明は、上述の問題を解決するためのもので、デバイスに独立な色空間の色を基本色値に変換するとともに、カラープリンタの色域外の色を色域内に変換するルックアップテーブルを作成する際にアブニー効果を補償することを目的とする。
【０００７】
【課題を解決するための手段】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【０００８】
本発明は、デバイスに独立な色空間内の色に対応する基本色値を提供するカラープリンタ用のルックアップテーブルを作成する際に、カラープリンタによって印刷されたカラーパッチの測色結果からカラープリンタの色域を規定し、デバイスに独立な色空間の色を基本色値に変換するとともに、カラープリンタの色域外の色を色域内に変換するルックアップテーブルを測色結果から作成し、アブニー効果を補償するために、ルックアップテーブルの色相角を調整することを特徴とする。
【０００９】
【実施例】
３図は本発明の実施例に係わる印刷装置を示すブロック図である。
図示のように、印刷装置はホストＣＰＵ２０と、カラーモニタ３０と、カラープリンタ４０から成っている。ホストＣＰＵ２０は８０２８６マイクロプロセッサ等の処理回路２１と、処理回路２１のワークエリアであるランダムアクセスメモリ（「ＲＡＭ」）２２と、処理回路２１の静的格納エリアであるリードオンリーメモリ（「ＲＯＭ」）２４と、モニタドライバ２５と、プリンタドライバ２６とを有する。操作者はキーボード２７を介しホストＣＰＵ２０にアクセスする。キーボード２７はインタフェース２９により処理回路２１に接続されている。キーボードを用いて、操作者は処理回路２１に格納されたプログラム命令を実行させて、カラー画像をモニタ３０に表示させ、相当するカラー画像をカラープリンタ４０に印刷させる。
【００１０】
ホストＣＰＵ２０はディスクドライブ、テープドライブ、カラービデオインタフェース、カラースキャナインタフェース等、他の周辺装置とも接続しているが、こうした装置は説明の簡略化のためにここでは図示されない。こうした装置は、処理回路２１に実行される格納プログラム命令と協同作用して、例えばカラー画像をスキャンしてＲＡＭ２２に格納したり、モニタ３０に表示させたり、その画像の色を加工したり、その結果処理された画像をプリンタ４０に印刷させたりする。
【００１１】
格納されたプログラム命令に従って、処理回路２１はモニタ３０上にカラー画像を形成する。処理回路２１はカラー画像をモニタドライバ２５に提供し、モニタドライバ２５はモニタ３０の各画素についてのＲＧＢ値を生成する。ＲＧＢ値はインタフェース３１を介しモニタ３０へ提供され、それらの値はモニタ３０で表示される。
【００１２】
要請に応じて、処理回路２１は、カラープリンタ４０による印刷のために、カラー画像をプリンタドライバ２６にも提供する。プリンタドライバ２６は処理回路２１からの色値に基づいて、カラー画像の各画素についてＣＭＹ値を生成する。ＣＭＹ値はプリンタテーブル２６ａまたは境界テーブル２６ｂに従って決定される。プリンタテーブル２６ａはプリンタ４０に印刷可能な全ての色についてＣＭＹ値を提供するテーブルである。境界テーブル２６ｂはプリンタ４０で印刷不可能な色についてのＣＭＹ値を提供するテーブルである。尚、プリンタテーブルは、印刷可能な色から印刷不可能な色への遷移を滑らかにするために、幾つかの印刷不可能な色のＣＭＹ値をも含んでいてもよい。さらに、ブラック（以下「Ｋ」）値を含むようにしてもよい。ＣＭＹＫ値はインタフェース４１を介してプリンタ４０に提供され、プリンタ４０内のビットマップメモリ４２に格納される。ビットマップメモリ４２は印刷される画像のフルビットマップ画像を格納してもよいし、あるいは、ある領域あるいは部分のビットマップ画像を格納するようにしてもよい。ビットマップメモリ４２に十分なカラーデータが格納されると、カラープリンタヘッド４４が記録紙と近接したプラテン上を往復する。本実施例では、プリントヘッド４４は縦４列横８段の３２個のインクジェットノズルを備えている。第１列のノズルは全てシアンのインク滴を吐出する。第２列のノズルは全てマジェンタのインク滴を吐出し、第３列のノズルは全てイエローのインク滴を吐出する。第４列のノズルは全てブラックのインク滴を吐出する。プリントヘッド４４がプラテンを１往復すると８行の画素が印刷されるように、これらのノズルはビットマップメモリ４２のカラーデータに従って独立に制御される。
【００１３】
４図は、プリンタドライバ２６が処理回路２１に提供されたカラーデータからＣＭＹＫ値を選択する動作を説明するためのフローチャートである。ステップＳ４０１では、プリンタドライバ２６は、ビットマップ４２内のある位置（ｘ、ｙ）についてのＲＧＢ値を得る。ステップＳ４０２では、プリンタドライバ２６はＲＧＢ値から装置に依存しない（以下、「デバイス・インディペンデント」という）色座標値を形成する。好ましくは、このデバイス・インディペンデントな色座標はＣＩＥＬＡＢ色座標である。これは、ＣＩＥＬＡＢ色空間は知覚的に均一で、ＣＩＥＬＡＢ色空間内の等しい大きさの区間は、いずれにおいても、知覚される色の等しい大きさの変化に一致するためである。さらに、ＣＩＥＬＡＢ色空間は色相や輝度に関して円柱状の座標にして見ることができるので、色域マップを定義しやすい直覚的な色座標である。
【００１４】
ステップＳ４０３では、輝度座標がＣＩＥＬＡＢ空間のＬ＊軸上で極端な輝度部分（複数）において圧縮される。尚、圧縮ステップＳ４０３は、ステップＳ４０２からのＬ＊値を数学的に操作することにより直接的に実行してもよいし、あるいは、修正したＣＭＹ値をプリンタテーブルや境界テーブルに格納することにより間接的に実行するようにしてもよい。幾つかの場合には好ましいことであるが、間接的に行う場合には、プリンタテーブルも境界テーブルも予め圧縮された値を格納するようにする。即ち、プリンタテーブルと境界テーブルに於ては、例えば輝度Ｌ＊＝９９での値が実際には輝度Ｌ＊＝９４に相当するように調整されている。同様に、輝度Ｌ＊＝７の値は実際は輝度Ｌ＊＝２６に相当する。輝度レンジの中央部分、例えばＬ＊＝３８〜９０における値は未修正のままである。これにより、データ操作による直接的な圧縮を必要とせずに輝度の圧縮が行なえる。
【００１５】
圧縮ステップＳ４０３はオプションのステップである。しかし、このステップは極端な輝度を有する色でも輝度の変化を知覚できるように印刷することを保証するものなので、そのためこのステップを実行することが好ましい。即ち、モニタ３０は発光体によって色を表示するため、プリンタ４０よりも高い輝度値を持つ色を表示できようになっているのに対し、プリンタ４０の輝度の最高値はカラー画像が形成される紙の白さにより制限されるからである。さらに、モニタ３０は発行体の光を完全に消すことができるため、プリンタ４０が印刷したものよりも低い輝度値を持つ色を表示できる。これは、ブラックのインクですら周辺光をいくらかは反射するからである。従って、ある色の印刷を確実に行うためには、たとえ最高値と最低値の輝度で印刷する場合でも、ステップＳ４０２で決定した輝度値をプリンタ４０で印刷可能な範囲に圧縮することが望ましい。
【００１６】
ステップＳ４０４では、ステップＳ４０２、Ｓ４０３で生成されたＬ＊、ａ＊、ｂ＊座標がプリンタテーブル２６ａに網羅されている範囲内にあるかどうかが調べられる。そのＬ＊、ａ＊、ｂ＊座標がプリンタテーブル２６ａの範囲内であるなら、ステップＳ４０５へ進んで、プリンタテーブル２６ａ内でＬ＊、ａ＊、ｂ＊座標位置（このＬ＊、ａ＊、ｂ＊座標位置は、離散値のみ格納されているので、実際にはそのＬ＊、ａ＊、ｂ＊に最も近い位置となる）に相当するＣＭＹ値を参照（ルックアップ）する。一方、Ｌ＊、ａ＊、ｂ＊座標がプリンタテーブル２６ａの範囲外であった場合、ステップＳ４０６へ進み、下記の式に従って、色相角度θをａ＊、ｂ＊値より得る。
【００１７】
θ  ＝  ａｒｃｔａｎ  （ｂ＊／ａ＊）
それから、境界テーブルをルックアップするステップＳ４０７へ進み、輝度Ｌ＊とステップＳ３０６で求めた色相角度θに相当する境界テーブル内の最も近い位置のＣＭＹ値をルックアップする。
いずれの場合もステップＳ４０８へ進み、それらのＣＭＹ値はビットマップメモリ４２の（ｘ，ｙ）位置に格納される。必要であれば、ＣＭＹ値は格納の前に修正されてもよく、例えば、これらのテーブルに格納された実際のＬ＊、ａ＊、ｂ＊値と上記のように算出された所望の値との差を補間処理により調整するようにしてもよい。
【００１８】
ステップＳ４０９では、プリンタドライバ２６がビットマップメモリが完成したかどうかを判断する。ビットマップメモリが完成していない場合は、ステップＳ４０１へ戻って、ビットマップメモリの次の位置（ｘ，ｙ）のために次のＲＧＢ値を得る。一方、ビットマップメモリ全体が完成している場合、あるいは、ビットマップメモリ内において既に十分な領域（ヘッド４４のインクジェットノズルの８行に相当する８行の長さのバンドなど）が完成している場合、ステップＳ４１０へ進み、ガンマ補正が行なわれる。ガンマ補正により、輝度を均一に配分するように、ビットマップメモリのＣＭＹ値が調整される。ステップＳ４１１では、下色除去が行なわれてビットマップメモリの位置（ｘ、ｙ）に対するブラック値を得る。本実施例の下色除去はＣＭＹ値の中の最小値を選択してその値をブラック値に割り当てるという単純な方法で行なわれる。その後、ＣＭＹ値の夫々はブラック値を引き算されて調整される。
【００１９】
ステップＳ４１０、Ｓ４１１の順序は決まったものではなく、例えば、連続トーンや、ディザ法や誤差拡散法など特定のカラー印刷技術を使用するために順序を入れ替えてもよい。
ステップＳ４１２では、上記処理の結果得られたＣＭＹ値を使用してカラー印刷が始められる。
【００２０】
５図はプリンタテーブル２６ａと境界テーブル２６ｂの形成方法を説明するフローチャートである。図示のフロー手順は各プリンタに付き１度だけ行なうか、あるいは再調整の必要が生じた時に行なえばよい。５図のフロー手順は同一の機種番号のプリンタなど１組のプリンタに１度だけ行なって、プリンタの工場調整の一部としてソフトの形で操作者に提供する方がより好ましい。
【００２１】
ステップＳ５０１では、プリンタ４０で印刷可能な色の色域または範囲を測定する。好ましくは、これはプリンタ４０で印刷可能な全ての色の、非常に大きいサブセットか若しくは完全なセットを印刷することによって行なう。例えば、本実施例で使用するプリンタにおいては、ＣＭＹ、Ｋ値の夫々が０〜６４の数値の６５階調で印刷される。このように、例えば、１７個のＣ値、即ち数値０、４、８、１２、．．．６４が印刷され、そして１７個のＭ値、１７個のＹ値が同様に印刷される。これら夫々１７個のＣＭＹ値のあらゆる可能な組み合わせが印刷され、結局１７×１７×１７＝４，９１３個のカラーパッチができる。
【００２２】
上記有彩色（ｈｕｅｄ  ｃｏｌｏｒｓ）に加えて、全ての可能な無彩色値（ｇｒａｙ  ｖａｌｕｅｓ）が、この場合は４８個の無彩色値が既に印刷済みの１７色の上に印刷される。
上記のようなプリンタ色域のサンプリングにより、有彩色と共に純粋な無彩色が印刷されるのが了解されるであろう。サンプリング方法に何を使用する場合でも、適当な無彩色の再現はカラー再現において望ましい特性なので、この純粋無彩色の印刷の特性は保持されるべきである。
【００２３】
４，９１３個のカラーパッチと付加された４８個のグレーパッチの各々について色が前述のＣＩＥＬＡＢ色空間のようなデバイス・インディペンデントな色空間で測定される。こうして、ステップＳ５０１の最後においては、４，９１３＋４８＝４，９６１個のユニークなＣＭＹ色の組み合わせの各々について、Ｌ＊、ａ＊、ｂ＊座標が測定され、これによりプリンタ色域を規定する。
【００２４】
ステップＳ５０２では、ＣＩＥＬＡＢ座標をＣＭＹ座標へ転換するための数学的な平滑化関数を得る。本実施例では、ＣＩＥＬＡＢ空間からＣＭＹ空間への３次元の最少二乗法によるフィットを選んだ。つまり、Ｃ０からＣ１９の係数、ｍ０からｍ１９、ｙ０からｙ１９の係数が、公知の最少二乗法によるフィッテイングの技術を用いて、ステップＳ５０１で測定された色域に対して最少二乗の意味で最良のフィットを与えるように得られた。
【００２５】
Ｃ  ＝  ｃ０  ＋  ｃ１Ｌ＊  ＋  ｃ２ａ＊  ＋  ｃ３ｂ＊  ＋  ｃ４Ｌ＊２  ＋  ｃ５ａ＊２  ＋  ｃ６ｂ＊２  ＋  ｃ７Ｌ＊ａ＊  ＋  ｃ８Ｌ＊ｂ＊  ＋  ｃ９ａ＊ｂ＊  ＋  ｃ１０Ｌ＊３  ＋ｃ１１ａ＊３  ＋  ｃ１２ｂ＊３  ＋  ｃ１３Ｌ＊２ａ＊  ＋  ｃ１４Ｌ＊ａ＊２  ＋  ｃ１５Ｌ＊２ｂ＊  ＋  ｃ１６Ｌ＊ｂ＊２  ＋  ｃ１７ａ＊２ｂ＊  ＋  ｃ１８ａ＊ｂ＊２  ＋  ｃ１９Ｌ＊  ａ＊ｂ＊      …（１）
Ｍ  ＝  ｍ０  ＋  ｍ１Ｌ＊  ＋  ｍ２ａ＊  ＋  ｍ３ｂ＊  ＋  ｍ４Ｌ＊２  ＋  ｍ５ａ＊２  ＋  ｍ６ｂ＊２  ＋  ｍ７Ｌ＊ａ＊  ＋  ｍ８Ｌ＊ｂ＊  ＋  ｍ９ａ＊ｂ＊  ＋  ｍ１０Ｌ＊３  ＋ｍ１１ａ＊３  ＋  ｍ１２ｂ＊３  ＋  ｍ１３Ｌ＊２ａ＊  ＋  ｍ１４Ｌ＊ａ＊２  ＋  ｍ１５Ｌ＊２ｂ＊  ＋  ｍ１６Ｌ＊ｂ＊２  ＋  ｍ１７ａ＊２ｂ＊  ＋  ｍ１８ａ＊ｂ＊２  ＋  ｍ１９Ｌ＊  ａ＊ｂ＊    …（２）
Ｙ  ＝  ｙ０  ＋  ｙ１Ｌ＊  ＋  ｙ２ａ＊  ＋  ｙ３ｂ＊  ＋  ｙ４Ｌ＊２  ＋  ｙ５ａ＊２  ＋  ｙ６ｂ＊２  ＋  ｙ７Ｌ＊ａ＊  ＋  ｙ８Ｌ＊ｂ＊  ＋  ｙ９ａ＊ｂ＊  ＋  ｙ１０Ｌ＊３  ＋ｙ１１ａ＊３  ＋  ｙ１２ｂ＊３  ＋  ｙ１３Ｌ＊２ａ＊  ＋  ｙ１４Ｌ＊ａ＊２  ＋  ｙ１５Ｌ＊２ｂ＊  ＋  ｙ１６Ｌ＊ｂ＊２  ＋ｙ１７ａ＊２ｂ＊  ＋  ｙ１８ａ＊ｂ＊２  ＋  ｙ１９Ｌ＊  ａ＊ｂ＊    …（３）
ステップＳ５０２では、ステップＳ４０１の測定値をデバイス・インディペンデントな色座標空間からＣＭＹ座標空間へ変換（ｆｉｔ）する何らかの数学関数を使用するようにしてもよい。しかしながら、その変換（ｍａｐｐｉｎｇ）関数は、ステップＳ５０１で発生したかも知れない測定誤差を除去するために平滑化処理を含んでいることが望ましい。
【００２６】
さらに、ステップＳ５０２で変換を行なう前に、ステップＳ５０１で測定された幾つかのポイントに重み付け処理することが望ましい。例えば、適切な肌色階調の再現はカラー印刷の重要な特性である。従って、場合によっては、肌色の領域に当たる色を他の色より重みを増して処理を行なうことが望ましいからである。
【００２７】
ステップＳ５０３では、デバイス・インディペンデントな色空間、つまりＣＩＥＬＡＢ色空間が等しいサイズの区間に分割される。そうした区間の１つは、Ｌ＊軸を中心にするなどしてＬ＊軸を含んでいる。このような分割が空白のプリンタテーブルを提供する。プリンタテーブルのサイズは、典型的なカラーモニタの色域に加えてプリンタ色域も含むようにすることが好ましい。例えば、図１によると、プリンタテーブルは一般には１２で示されるカラー領域を含んでいる方が望ましい。プリンタテーブルの区間のサイズは、プリンタテーブルの格納限度に十分な考慮を払って、できるだけ小さいものでなければならない。例えば、微細な色相や彩度の階調変化よりも微細な輝度の階調変化の方がより重要であるということが明らかになっている。輝度軸をΔＬ＊  ＝  １（輝度Ｌ＊の範囲は０〜１００）の区間に分割すると、十分な輝度の階調変化が得られることも決まっている。一方、そうした微細な階調変化は通常は色相については必要とされず、Δａ＊  ＝  Δｂ＊  ＝  ３の区間が適切な色相の階調変化を与えることが分かっている（ａ＊、ｂ＊の範囲は輝度軸の中心、即ち、Ｌ＊  ＝  ５０の近傍でおよそ−１００から＋１００）。
【００２８】
上述の考慮に加えて、プリンタ色域は各輝度値に対し同一ではないということにも注目しなければならない。特に、色域は、極端な輝度域では比較的に小さく、輝度軸の中心では比較的大きい。６図はＣＩＥＬＡＢ空間のプリンタテーブルへの典型的な分割を示している。しかし、ここでは、全ての輝度および色相についての階調変化は説明の簡略化のために図示されない。Ｌ＊  ＝  １０のような比較的低い輝度値では、ａ＊、ｂ＊軸の比較的小さい矩形グリッドがプリンタ色域を展開するのに適当である。同様に、Ｌ＊  ＝  ９０のような比較的高い輝度値では、ａ＊、ｂ＊軸の比較的小さい矩形グリッドがプリンタ色域を格納するのに適当である。しかし、Ｌ＊  ＝  ５０のような中間の輝度値では、プリンタ色域を展開するにはａ＊、ｂ＊軸の比較的大きい矩形グリッドが必要である。
【００２９】
さらに６図に示すように、各輝度レベルの矩形グリッドはＬ＊軸を含んでいる（５図ではＬ＊軸上に集中している）。つまり、矩形グリッド内には正確にａ＊  ＝ｂ＊  ＝  ０と一致するセルが存在する。その中心点、即ちａ＊  ＝  ｂ＊  ＝  ０は純粋な無彩色に相当し、上述のように、適切なカラー再現のための純粋な無彩色として適当に再現される。
【００３０】
実際は、プリンタテーブルにはプリンタ色域よりも多くの色が含まれていることが好ましく、典型的なモニタの色域に見られる色が含まれていることが最も望ましい。これにより、プリンタテーブルは、プリンタ色域の縁部分の色を境界テーブルの色に滑らかに遷移させ、プリンタ色域の外の領域における色差分を保存する遷移値を含むことになる。
【００３１】
ステップＳ５０４では、ステップＳ５０２で求められた変換関数を用いて、Ｃ、Ｍ、Ｙ値をプリンタテーブルのＬ＊軸周囲に挿入する。連続階調印刷とは対照的なディジタルカラー印刷に対応して、端数値であるＣ、Ｍ、Ｙ値は切り捨てあるいは四捨五入によって整数値にされる。各輝度レベルの矩形グリッド全体は完全に数値で満たされることはなく、プリンタ色域内として知られている部分にのみ数値が入っている。さらに、ちょうどＬ＊軸上のセル、つまりａ＊  ＝  ｂ＊  ＝  ０の点もまた、変換関数によっては変換されない。むしろ、これらの点に対するＣＭＹ値は、ステップＳ５０１で測定されたプリンタの無彩色を相当するＬ＊値を用いて決定することにより、ステップＳ５０５で挿入される。これにより、前記変換関数で導入された平滑処理によっては色相値を純粋無彩値に持ち込まないことが保証される。
【００３２】
ステップＳ５０６、Ｓ５０７では、プリンタテーブルのＣＭＹ値を印刷不可能な色に対して修正する。印刷不可能な色はステップＳ５０２で選択された変換関数による欠陥（ａｒｔｉｆａｃｔｓ）のために生じるものである。例えば、使用された変換関数では、７図の領域４５のような、プリンタ色域にはない不適切な領域がプリンタテーブル内に生じる。こうした欠陥は、Ｌ＊軸周囲の領域に接続していない全ての領域を除去することにより、ステップＳ５０６で除去する。
【００３３】
印刷不可能な色は８図に示すような状況からも生じる。８図において、符号４７は任意の輝度値Ｌ＊に対するプリンタ色域の縁部を表している。Ｌ＊軸からの凡ゆる放射状の線が縁部４７と唯一の点で交わらないため、図示のプリンタ色域は放射状の凸形をしていない。特に、放射状線４８は縁部４７と４９ａ、４９ｂ、４９ｃの３点で交わっている。４９ａ、４９ｂの間の領域は放射状の凹部を成し、プリンタテーブルの不適切なＣＭＹ値を生成する要因になっている。従って、ステップＳ５０７で、プリンタテーブルの値を放射状に凸形となるように修正する。
【００３４】
９図はこのプロセスを示している。９図は任意の輝度値Ｌ＊に対するａ＊、ｂ＊軸内の矩形グリッドを示している。セル５１〜５５は全てプリンタ色域内の印刷可能な値を含んでいる。しかしながら、セル５９は、角度θの放射状線がプリンタ色域の２つのセル（５３、５６）を通るために放射状に凹形である。従って、あるＣＭＹ値をセル５９に割り当てることによりテーブルを放射状に凸形にする。その値はその色（図中角度θ）の色相をできるだけ保持し、所望する値に最も近い彩度値を選択することによって選択される。こうして、９図では、セル５９の値には、セル５１から５５のうちの、色相値と彩度値においてより近い値を有するセル（複数）に依存して、そのセル５１から５５のうちの１つのセルの値を割り当てることができる。９図では、Ｃ  ＝  １、Ｍ  ＝  １８、  Ｙ  ＝  １４の値が選択されている。
【００３５】
ステップＳ５０８で各プリンタテーブルの遷移色を求める。１０図は遷移色に対するＣＭＹ値を選択する様子を示している。図中、符号６０はプリンタ色域の縁部であり、６１は、上述のように、典型的なカラーモニタの縁部にほぼ一致するプリンタテーブル色域の縁部である。縁部６０、６１間の領域の遷移色の各々について、遷移色から一定の角度αの位置にあるプリンタ色域の縁部６０上の色を遷移色に対して選択する。尚、輝度のいずれの変化も許容され得るが、それは、輝度変化の範囲が任意のしきい値にリミットされないことを意味する。例えば、遷移色６２に対しては、プリンタ色域の縁部６０上の点６４が選択されるが、これは、点６４が点６２から角度αの位置にあるからである。同様に、点６５のように、遷移領域の各点に対して、点６６のような、一定の角度αの位置にあるプリンタ色域の縁部６０上の該当する点が選択される。プリンタ色域の最大彩度点６７を越える遷移色に対しては、角度αは下向きに取る。逆に、色６９のように、最大彩度点６７未満の遷移色に対しては、角度αは上向きに取る。最大彩度点６７から２αを成すウェッジ（ｗｅｄｇｅ）領域７０内の色に対しては、最大彩度点６７が選択される。こうして、ウェッジ７０内の全色が色６７に変換される。縁部６０、６１間の遷移色が最も滑らかな色の変化をもたらすことが確実になるためにも、プリンタ色域の縁部６０上における彩度については、一定の角度αの展開を行う前に、最小彩度から単調に増加して最大彩度点へ至り、最小彩度へ単調に減少するか否かを確かめることが望ましい。もし彩度の変化が単調ではない場合、一定の角度の展開の前に、プリンタ色域の縁部の色彩度をその変化を排除するように修正する。
【００３６】
角度αを１５°とすると、彩度を十分に増加させ、且つ、明度に不合理に大きな変化を起こさずに満足な結果を生むということが判明している。αの他の値、例えば１０°、２０°も適用できる。
ステップＳ５０９では境界テーブル２６ｂを作成する。プリンタテーブル２６ａが各輝度値に対してａ＊、ｂ＊軸の矩形グリッドとして形成されるのに対し、境界テーブルはプリンタテーブルの各輝度値に対して１つのホイールとして形成される。こうして、１１図に示すように、プリンタテーブルが存在する輝度値の夫々に対して１つのホイール状の境界テーブルが提供され、１つの境界テーブルは夫々のプリンタテーブルに対応している。境界テーブルは複数のセルを有し、それらセルはａ＊，ｂ＊座標の関数として次のように計算された色相角度θでアクセスされる。
【００３７】
θ  ＝  ａｒｃｔａｎ  （ｂ＊／ａ＊）
１２図は境界テーブルとプリンタテーブルの対応を示している。プリンタテーブル２６ａが任意の輝度値Ｌ＊に対する矩形グリッド状のテーブルであるのに対し、境界テーブル２６ｂはａ＊  ＝  ｂ＊  ＝  ０を中心とするホイール状のテーブルである。境界テーブルの個々のセルは、色相に対応するａ＊、ｂ＊軸内の角度θでアクセスされる。実験的には、各境界テーブルにおける３６０個のセルに相当する１度の増加が、色相の階調変化を適切に与えることが判明している。しかし、これは下記に１３図を参照して説明するように修正することができる。
【００３８】
ステップＳ５１０では、境界テーブルの各セルに対するＣＭＹ値が、プリンタテーブルの遷移色に対するＣＭＹ値を選択するのと同様な方法で選択される。このようにして、境界テーブル色なるものが、境界テーブルから一定の角度α（プリンタテーブルで使用したものと同一のα）の位置にあるプリンタ色域の縁部色から選択される。前述したように、角度αは、境界テーブル色が最大プリンタ彩度点よりも上にあるか下にあるかによって、上向き又は下向きに取るようにし、境界色テーブルがウェッジ７０内にある時は最大プリンタ彩度点にリミットされる。
【００３９】
ステップＳ５１０では、境界テーブルの色の彩度が滑らかに変化していることを確認するために境界テーブル値を調べる。この様子は、ａ＊軸とｂ＊軸の任意の輝度値Ｌ＊におけるプリンタ色域７０を示す１３図で説明される。上述のように、色７１のような、プリンタ色域の外に位置する色は、色相角度を保持しながらプリンタ色域の境界色７２へ変換される。特に、領域７４のように印刷可能な彩度が急速に変化するような領域では、色相のわずかな変化が境界テーブルの彩度に急速な変化をもたらす。例えば、色相角度がθ１からθ２へ変化すると、色相の小さな変化だけでも彩度が比較的大きく変化する。彩度にそうした大きな変化があると、印刷した時に不自然に見える。
【００４０】
このように不自然な印刷結果を避けるために、境界テーブルのサイズを、確実に彩度が滑らかに変化するべく色相に十分微細な増加が現われるようになるまで、大きくする。境界テーブルが増加されると、ステップＳ５０９の計算は新しい境界テーブルのＣＭＹ値を満たすように繰り返される。
ステップＳ５１１では、プリンタテーブルのＣＭＹ値を調べて修正し、ＣＭＹが滑らかに無彩色（Ｌ＊軸）に混色するのを確実にする。詳しくは、離散的な輝度レベルでは、Ｌ＊軸に近いプリンタテーブル色が無彩色に滑らかに混色するように、プリンタテーブル色を再決定する。
【００４１】
ステップＳ５１２では、プリンタテーブルを矩形に完成する。より詳しくは、このステップまででは、ＣＭＹ値は、プリンタテーブルの、プリンタ色域６０内の領域（ステップＳ５０４、Ｓ５０５）とプリンタ色域と境界テーブルとの間の遷移領域６１にしか挿入されていなかった（ステップＳ５０９）。ステップＳ５０２では、１２図の６９のようなプリンタテーブルの残りのセルについて色相角度を算出し、１２図の６８で表すような色相角度の境界テーブルの色を挿入する。
【００４２】
ステップＳ５１３では、アブニー効果を補償するために、プリンタテーブルと境界テーブルの色相角度がワープされる。具体的には、色域外の色に対するＣＭＹ値（この値は、この時点ではプリンタテーブルと境界テーブルに記憶されている）は、ステップＳ５０８に関連して前述したように、全て一定の角度の展開に基づいている。しかし、２図に示すように、彩度の高い色に関しては、一定の角度を保持しながらプリンタ色域の縁部へ戻すという展開を行うと、アブニー効果によって知覚される色相に変化をもたらす。例えば前述のように、一定の角度の展開によって、高い彩度の（しかし印刷不可能な）紫みの青色１９ａは、プリンタ色域の縁部のより低い彩度の紫色（１９ｂで示される）に変えられてしまう。
【００４３】
この効果を補償するために、プリンタテーブルと境界テーブルの色相角度をワープさせる（歪ませる）。より詳しくは、プリンタテーブルと境界テーブルの両方に対して、１つの色相角度に対するＣＭＹ値を他の異なる１つの色相角度へ転移させ、印刷色に知覚される色相を保持するようにする。１４、１５図は、θ＝２５５°からθ＝３３３°間にある色相角度θにある青／紫の色空間領域について、このワープを示している。
【００４４】
１４図はワープ前のプリンタテーブル８０と、ワープ後におけるそのプリンタテーブル８１を示している。１４図のこれらのプリンタテーブルはａ＊、ｂ＊面における任意のプリンタテーブルに対するものであり、任意の輝度値Ｌ＊に対するものである。１４図に示すワープは、ステップＳ５０３で選択されたＬ＊値に対するプリンタテーブルの各々について実行されるということは明らかである。１４図に示すように、青色領域８２ａは相当するワープ青色領域８２ｂへ拡張されている。これにより、色域外の高い彩度の青色を印刷するという命令に対して印刷されるＣＭＹ値が、紫みの青よりもむしろ青い色相の色となることが確実にされる。例えば、高い彩度の色域外の青色８４は、ワープされないテーブル８０に従って印刷すると、紫みの青色になるが、ワープされたテーブル８１に従って印刷すると青色となる。
【００４５】
さらなる色相角度ワープにより、領域８５ａのＣＭＹ値が領域８５ｂに変換（写像）され、また、領域８６ａから８６ｂへと変換される。変換の詳細は下記の通りである。
色相角度２５５°〜３０５°：
ワープ角度［２５５＋ａｎｇ］＝２５５＋０．５＊ａｎｇ
但し、０＜ａｎｇ＜５０°である。
色相角度３０５°〜３０９°：
ワープ角度［３０５＋ａｎｇ］＝２８０＋１．２５＊ａｎｇ
但し、０＜ａｎｇ＜４°である。
色相角度３０９°〜３３３°：
ワープ角度［３０９＋ａｎｇ］＝２８５＋２＊ａｎｇ
但し、０＜ａｎｇ＜２４°である。
こうして、未ワープ領域２５５°〜２８０°は領域２５５°〜３０５°へ拡張されることによってワープされ、未ワープ領域２８０°〜２８５°は領域３０５°〜３０９°へ圧縮することによってワープされる。また、未ワープ領域２８５°〜３３３°は領域３０９°〜３３３°へ圧縮することによってワープされる。これらのワープされた領域は連続性を保っているが、未ワープ領域と同一の端部点（ここでは２５５°及び３３３°）を持っている。
【００４６】
レッド、シアンにおいても同様のワープを行なう。レッドに対するワープ処理は次の通りである。
色相角度１０°〜４０°：
ワープ角度［１０＋ａｎｇ］＝１０＋０．５＊ａｎｇ
但し、０＜ａｎｇ＜３０°である。
色相角度４０°〜５３°：
ワープ角度［４０＋ａｎｇ］＝２５＋１．２５＊ａｎｇ
但し、０＜ａｎｇ＜１２°である。
色相角度５２°〜７６°：
ワープ角度［５２＋ａｎｇ］＝４０＋１．５＊ａｎｇ
但し、０＜ａｎｇ＜２４°である。
このように、未ワープ領域１０°〜２５°は領域１０°〜４０°へ拡張されることによってワープされ、未ワープ領域２５°〜４０°は領域４０°〜５２°へ圧縮することによってワープされる。また、未ワープ領域４０°〜７６°は領域５２°〜７６°へ圧縮することによってワープされる。
【００４７】
シアンに対するワープ処理は次の通りである。
色相角度１７０°〜１９５°：
ワープ角度［１７０＋ａｎｇ］＝１７０＋２．０＊ａｎｇ
但し、０＜ａｎｇ＜２５°である。
色相角度１９５°〜２４５°：
ワープ角度［１９５＋ａｎｇ］＝２２０＋０．５＊ａｎｇ
但し、０＜ａｎｇ＜５０°である。
このように、未ワープ領域１７０°〜２２０°は領域１７０°〜１９５°へ圧縮することによってワープされ、未ワープ領域２２０°〜２４５°は領域１９５°〜２４５°へ拡張することによってワープされる。
【００４８】
プリンタテーブルに対して行なわれたのと同じワープ処理が、１５図に示すように、境界テーブルについても行なわれる。前述と同様、この処理によって、色８７のような色域外の青色の印刷命令に対しては、未ワープ境界テーブルに従って印刷すると紫みの青の色相として印刷されてしまうが、ワープ処理された境界テーブルに従って印刷すると確実に青い色相の色となる。
【００４９】
上記のワープにより、色域内の色も色域外の色もワープさせるため、プリンタテーブル及び境界テーブル内の色に滑らかさを保持することができる。色域外色のみについてワープさせることも可能であるが、こうするとプリンタ色域の縁部の色の連続性が悪くなる。さらに、たとえ色域内の色をワープさせたために色がずれたとしても、その色相角度の線は色域内の色については互いに近くなり、高彩度の色域外の色については互いに離れるようになるため、ずれの量はあまり問題にならないということが、実験的に判明している。
【００５０】
上述のワープ技術では、同一色相角度にある全色を彩度とは無関係に等しくワープさせるが、彩度に基づくファクタをワープに導入することも可能である。その場合、さらに高い彩度の色が比較的低い彩度の色へとワープされる。
ステップＳ５１４では、プリンタテーブル及び境界テーブルの黄色領域にある色を、その黄色領域が広がるように修正する。詳しく説明すると、２図に示すように、プリンタの純黄色が大変狭いプリンタ色域に陥ってしまい、ユーザに見つけ難い（モニタの黄色範囲はより広いので）ものとなっていた。純黄色に関して印刷可能な範囲は大変狭いため、大抵ユーザは所望の純黄色よりも緑みの黄色を選んでしまう。そこで、ステップＳ５１４では黄領域を拡大する。この黄領域の拡大は下記の色相角度のワープで行うことができる。
色相角度８７°〜９１°：
ワープ角度［８７＋ａｎｇ］＝８７＋１．２５＊ａｎｇ
但し、０＜ａｎｇ＜４°である。
色相角度９１°〜９７°：
ワープ角度［９１＋ａｎｇ］＝９２
但し、０＜ａｎｇ＜６°である。
色相角度９７°〜１１２°：
ワープ角度［９７＋ａｎｇ］＝９２＋０．５＊ａｎｇ
但し、０＜ａｎｇ＜１５°である。
色相角度１１２°〜１３２°：
ワープ角度［１１２＋ａｎｇ］＝９９．５＋１．２５＊ａｎｇ
但し、０＜ａｎｇ＜２０°である。
色相角度１３２°〜１４７°：
ワープ角度［１１２＋ａｎｇ］＝１２４．５＋１．５＊ａｎｇ
但し、０＜ａｎｇ＜１５°である。
前述のステップＳ５０１からＳ５１４を自動的に実行するコンピュータプログラムが開発されており、付録のマイクロフィッシュの形で提出されるであろう。
【００５１】
【発明の効果】
以上説明したように、本発明によれば、デバイスに独立な色空間の色を基本色値に変換するとともに、カラープリンタの色域外の色を色域内に変換するルックアップテーブルを作成する際にアブニー効果を補償することができる。
【図面の簡単な説明】
【図１】プリンタで印刷可能な色域とモニタ上に表示可能な色域の関係を示す色度図である。
【図２】アブニー効果を特徴付ける一定の色曲線を示す色度図である。
【図３】本実施例に関わる印刷装置を示すブロック図である。
【図４】３図の装置のプリンタドライバによる、カラープリンタのＣＭＹＫ値の選択を説明するフローチャートである。
【図５ａ】プリンタテーブルと境界テーブルの形成方法を説明するフローチャートである。
【図５ｂ】プリンタテーブルと境界テーブルの形成方法を説明するフローチャートである。
【図６】ＣＩＥＬＡＢ色空間からプリンタテーブルへの典型的な分割を示す図である。
【図７】未接続領域がプリンタテーブルから除去される様子を示す図である。
【図８】プリンタ色域における放射状に凹形の領域を示す図である。
【図９】プリンタテーブルを放射状に凸形に形成することにより凹型領域を除去する様子を示す図である。
【図１０】プリンタテーブルの遷移領域において、各セルに対してＣＭＹ値を選択する様子を示す図である。
【図１１】境界テーブルの配置を示す図である。
【図１２】任意の輝度値Ｌ＊に対するＣＩＥＬＡＢ色空間におけるプリンタテーブルと境界テーブルの関係を示す図である。
【図１３】ａ＊及びｂ＊軸における任意の輝度値Ｌ＊のプリンタ色域を示す図である。
【図１４】プリンタテーブルに対して色相角度をワープさせる様子を示す図である。
【図１５】境界テーブルに対して色相角度をワープさせる様子を示す図である。
【図１】
0003591855.tif 000002
【図２】
0003591855.tif 000003
【図３】
0003591855.tif 000004
【図４】
0003591855.tif 000005
【図５ａ】
0003591855.tif 000006
【図５ｂ】
0003591855.tif 000007
【図６】
0003591855.tif 000008
【図７】
0003591855.tif 000009
【図８】
0003591855.tif 000010
【図９】
0003591855.tif 000011
【図１０】
0003591855.tif 000012
【図１１】
0003591855.tif 000013
【図１２】
0003591855.tif 000014
【図１３】
0003591855.tif 000015
【図１４】
0003591855.tif 000016
【図１５】
0003591855.tif 000017