(57)【特許請求の範囲】
【請求項１】
入力画像データをカラープリンタの色域内に変換する際に使用され、デバイスに独立な色空間上の色に対応する基本色値を出力する前記カラープリンタ用のルックアップテーブルを作成する色処理方法であって、
前記カラープリンタによって印刷されたカラーパッチの測色結果から前記カラープリンタの色域を規定し、
前記デバイスに独立な色空間の色を前記基本色値に変換するとともに、前記カラープリンタの色域外の色を、同一色相を有する前記カラープリンタの色域内の色に変換するルックアップテーブルを前記測色結果から作成し、
複数の色領域それぞれに対して色相調整条件を設定し、
前記設定された複数の色領域それぞれに対する色相調整条件を用いて、前記色領域ごとに前記ルックアップテーブルに格納された前記色域内の基本色値を調整することを特徴とする色処理方法。
【請求項２】
前記色域内の色は輝度値が圧縮されていることを特徴とする請求項1に記載された色処理方法。
【請求項３】
入力画像データをカラープリンタの色域内に変換する際に使用され、デバイスに独立な色空間上の色に対応する基本色値を出力する前記カラープリンタ用のルックアップテーブルを作成する色処理装置であって、
前記カラープリンタによって印刷されたカラーパッチの測色結果から前記カラープリンタの色域を規定する規定手段と、
前記デバイスに独立な色空間の色を前記基本色値に変換するとともに、前記カラープリンタの色域外の色を同一色相を有する前記カラープリンタの色域内の色に変換するルックアップテーブルを前記測色結果から作成する作成手段と、
複数の色領域それぞれに対して色相調整条件を設定する設定手段と、
前記設定手段により設定された複数の色領域それぞれに対する色相調整条件を用いて、前記色領域ごとに前記ルックアップテーブルに格納された前記色域内の基本色値を調整する調整手段とを有することを特徴とする色処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラープリンタの色域外の色をカラープリンタの色域内に変換するルックアップテーブルを作成する色処理装置およびその方法に関する。
【背景技術】
【０００２】
近年、カラーモニタやカラープリンタの有用性が増して、コンピュータのユーザがフルカラーの画像をカラーモニタで観て、カラープリンタによるフルカラー印刷を指示することが日常化している。
【０００３】
しかし、カラープリンタとカラーモニタが形成するカラー画像はそれぞれ異なるものである。とくに、カラーモニタは発光型の装置で、色の形成は一般に赤、緑、青の三基本色の光を加法混色することにより行われる。一方、印刷された画像は単純に周辺光を反射したものであり、周辺光を介して知覚された印刷画像の色は一般にシアン、マジェンタ、イエロー（ときにはブラックも含まれる）の減色法の三基本色に影響される。
【０００４】
これらの混色法は基本的に異なるものであり、結果として、モニタで表示可能な色の範囲はプリンタで印刷可能な色の範囲とは異なっている。図1はCIE 1931色度図を示し、モニタが表示可能な色の範囲（すなわち「色域」、領域A）と、プリンタが印刷可能な色の範囲（すなわち「色域」、領域B）を示している。図1に示すように、モニタが表示できる色の範囲は、一般に、プリンタが印刷できる色の範囲より広い。これは、モニタが光を発する装置であって、より大きな範囲の彩度で色を表示するからである。しかし、領域10のように、減色法による印刷画像の方が、モニタより広い色範囲をもつような低彩度領域も存在する。
【０００５】
印刷可能範囲と表示可能範囲のこのような差異により、以前は表示されたカラー画像の忠実な色再現として認められるようなカラー画像を印刷することは不可能であった。とくに、印刷可能な色の領域Bの外に位置する色域外領域11のような領域の色を印刷することは全く不可能であった。従って、こうした色はカラーモニタ上では見ることができても、カラープリンタで印刷することはできなかった。
【０００６】
米国特許第4,941,038号は、色域外の色をプリンタ色域内の印刷可能な色に修正する際に、その色域外の色から最短のベクトル距離にある印刷可能な色であって、その印刷不可能な色の色相角度を保持した色を選択する。
【０００７】
しかし、人間の色覚に関する実験や観察から、純白色から大きな彩度の色へと引いた一定の色相あるいは色を表す線は、直線ではなく、むしろ曲線であるということが判明している。図2に示す色度図は、これらの曲線のカーブ（いわゆる「アブニー効果」）を示している。青みの緑色領域18のような、一定の色相を示す色線の曲率が比較的小さい領域では、色相角度を保持しても知覚される色相には微かな変化しか現われない。このために、青みの緑色域外の色18aを、その色相角度を保持して、プリンタ色域の縁部10の点18bへ引き戻しても、青みの緑色を印刷することができる。
【０００８】
しかし、青みの紫色領域19のように、一定の色相を示す色線の曲率が比較的大きい領域では、色相角度を保持すると知覚される色相に大きく影響する。かくして、青みの紫色域外の色19aを、その色相角度を保持しながら、プリンタ色域の縁部10の点19bへ引き戻すことは、明らかに青色に見える色相をもつ色を印刷してしまう結果になる。
【０００９】
【特許文献１】特開平4-277978号公報
【特許文献２】特開平2-226870号公報
【特許文献３】特開平3-032162号公報
【特許文献４】米国特許第4,941,038号
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、デバイスに独立な色空間上の色を基本色値に高精度に変換するルックアップテーブルを作成することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１２】
本発明は、入力画像データをカラープリンタの色域内に変換する際に使用され、デバイスに独立な色空間上の色に対応する基本色値を出力するカラープリンタ用のルックアップテーブルを作成する場合に、カラープリンタによって印刷されたカラーパッチの測色結果からカラープリンタの色域を規定し、デバイスに独立な色空間の色を基本色値に変換するとともに、カラープリンタの色域外の色を、同一色相を有するカラープリンタの色域内の色に変換するルックアップテーブルを測色結果から作成し、複数の色領域それぞれに対して色相調整条件を設定し、設定された複数の色領域それぞれに対する色相調整条件を用いて、色領域ごとにルックアップテーブルに格納された色域内の基本色値を調整することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、複数の色領域それぞれに対する色相調整条件を用いて、色領域ごとにルックアップテーブルに格納された色域内の基本色値を調整することで、色領域ごとに高精度に、デバイスに独立な色空間上の色を基本色値に変換するルックアップテーブルを作成することができる。
【発明を実施するための最良の形態】
【００１４】
図3は本発明の実施例にかかわる印刷装置を示すブロック図である。
【００１５】
図3に示すように、印刷装置はホストCPU 20、カラーモニタ30およびカラープリンタ40から成っている。ホストCPU 20は、80286マイクロプロセッサ等の処理回路21、処理回路21のワークエリアであるランダムアクセスメモリ(RAM)22、処理回路21の静的格納エリアであるリードオンリーメモリ(ROM)24、モニタドライバ25およびプリンタドライバ26を有する。
【００１６】
操作者はキーボード27を介しホストCPU 20にアクセスする。キーボード27は、インタフェイス29により処理回路21に接続されている。キーボード27を用いて操作者は、処理回路21に格納されたプログラム命令を実行させ、カラー画像をモニタ30に表示させ、相当するカラー画像をカラープリンタ40に印刷させる。
【００１７】
ホストCPU 20は、ディスクドライブ、テープドライブ、カラービデオインタフェイス、カラースキャナインタフェイス等、他の周辺装置とも接続しているが、こうした装置は説明の簡略化のために、ここでは図示しない。こうした装置は、処理回路21に実行される格納プログラム命令と協同作用して、例えばカラー画像をスキャンしてRAM 22に格納したり、モニタ30に表示させたり、その画像の色を加工したり、その結果処理された画像をプリンタ40に印刷させたりする。
【００１８】
格納されたプログラム命令に従って、処理回路21は、モニタ30上にカラー画像を形成する。処理回路21はカラー画像をモニタドライバ25に提供し、モニタドライバ25はモニタ30の各画素についてのRGB値を生成する。RGB値は、インタフェイス31を介してモニタ30へ提供され、それらの値はモニタ30で表示される。
【００１９】
要請に応じて、処理回路21は、カラープリンタ40による印刷のために、カラー画像をプリンタドライバ26にも提供する。プリンタドライバ26は、処理回路21からの色値に基づいて、カラー画像の各画素についてCMY値を生成する。CMY値は、プリンタテーブル26aまたは境界テーブル26bに従って決定される。プリンタテーブル26aは、プリンタ40に印刷可能な全ての色についてCMY値を提供するテーブルである。境界テーブル26bは、プリンタ40で印刷不可能な色についてのCMY値を提供するテーブルである。なお、プリンタテーブルは、印刷可能な色から印刷不可能な色への遷移を滑らかにするために、幾つかの印刷不可能な色のCMY値をも含んでいてもよい。さらに、ブラック（以下「K」）値を含むようにしてもよい。
【００２０】
CMYK値は、インタフェイス41を介してプリンタ40に提供され、プリンタ40内のビットマップメモリ42に格納される。ビットマップメモリ42は、印刷される画像のフルビットマップ画像を格納してもよいし、あるいは、ある領域または部分のビットマップ画像を格納するようにしてもよい。ビットマップメモリ42に充分なカラーデータが格納されると、カラープリンタヘッド44が記録紙と近接したプラテン上を往復する。本実施例では、プリントヘッド44は、縦四列横八段の32個のインクジェットノズルを備えている。第一列のノズルは全てシアンのインク滴を吐出する。第二列のノズルは全てマジェンタのインク滴を吐出し、第三列のノズルは全てイエローのインク滴を吐出する。第四列のノズルは全てブラックのインク滴を吐出する。プリントヘッド44がプラテンを一往復すると八行の画素が印刷されるように、これらのノズルはビットマップメモリ42のカラーデータに従って独立に制御される。
【００２１】
図4は、プリンタドライバ26が処理回路21に提供されたカラーデータからCMYK値を選択する動作を説明するためのフローチャートである。
【００２２】
プリンタドライバ26は、ビットマップメモリ42内のある位置(x, y)についてのRGB値を得て(S401)、RGB値から装置に依存しない（以下、「デバイス・インディペンデント」という）色座標値を形成する(S402)。好ましくは、このデバイス・インディペンデントな色座標はCIE LAB色座標である。これは、CIE LAB色空間は知覚的に均一で、CIE LAB色空間内の等しい大きさの区間は、いずれにおいても、知覚される色の等しい大きさの変化に一致するためである。さらに、CIE LAB色空間は色相や輝度に関して円柱状の座標にして見ることができるので、色域マップを定義しやすい直覚的な色座標である。
【００２３】
次に、輝度座標がCIE LAB空間のL*軸上で極端な輝度部分（複数）において圧縮される(S403)。なお、圧縮ステップS403は、ステップS402からのL*値を数学的に操作することにより直接的に実行してもよいし、あるいは、修正したCMY値をプリンタテーブル26aや境界テーブル26bに格納することにより間接的に実行するようにしてもよい。幾つかの場合に好ましいことであるが、間接的に行う場合は、プリンタテーブル26aも境界テーブル26bも予め圧縮された値を格納するようにする。即ち、プリンタテーブル26aと境界テーブル26bにおいては、例えば輝度L*=99での値が、実際には輝度L*=94に相当するように調整されている。同様に、輝度L*=7での値は、実際は輝度L*=26に相当する。輝度レンジの中央部分、例えばL*=38〜90における値は未修正のままである。これにより、データ操作による直接的な圧縮を必要とせずに輝度の圧縮が行える。
【００２４】
圧縮ステップS403はオプションのステップであるが、このステップは、極端な輝度を有する色でも輝度の変化を知覚できるように印刷することを保証するもので、そのため、このステップを実行することが好ましい。すなわち、モニタ30は発光体によって色を表示するため、プリンタ40よりも高い輝度値をもつ色を表示できるのに対し、プリンタ40の輝度の最高値はカラー画像が形成される紙の白さにより制限されるからである。さらに、モニタ30は発光体の光を完全に消すことができるため、プリンタ40が印刷したものよりも低い輝度値をもつ色を表示することができる。これは、ブラックのインクですら周辺光をいくらかは反射するからである。従って、ある色の印刷を確実に行うには、たとえ最高値と最低値の輝度で印刷する場合でも、ステップS402で決定した輝度値をプリンタ40で印刷可能な範囲に圧縮することが望ましい。
【００２５】
次に、ステップS402、S403で生成されたL*、a*、b*座標がプリンタテーブル26aに網羅されている範囲内にあるかどうかが調べられる(S404)。そのL*、a*、b*座標がプリンタテーブル26aの範囲内にあるなら、プリンタテーブル26a内でL*、a*、b*座標位置（このL*、a*、b*座標位置は、離散値のみ格納されているので、実際にはそのL*、a*、b*に最も近い位置となる）に相当するCMY値を参照（ルックアップ）する(S405)。
【００２６】
一方、L*、a*、b*座標がプリンタテーブル26aの範囲外にある場合、下記の式に従って、色相角度θをa*、b*値より得る(S406)。それから、境界テーブル26bをルックアップして、輝度L*とステップS406で求めた色相角度θに相当する、境界テーブル内の最も近い位置のCMY値を得る(S407)。
θ = tan-1(b*/a*)
【００２７】
いずれの場合も、それらのCMY値はビットマップメモリ42の(x, y)位置に格納される(S408)。必要であれば、CMY値は格納の前に修正されてもよく、例えば、これらのテーブルに格納された実際のL*、a*、b*値と、上記のように算出された所望の値の差を補間処理により調整するようにしてもよい。
【００２８】
次に、プリンタドライバ26は、ビットマップメモリ42が完成したかどうかを判断する(S409)。ビットマップメモリ42が完成していない場合は、ステップS401へ戻って、ビットマップメモリ42の次の位置(x, y)のために次のRGB値を得る。一方、ビットマップメモリ42全体が完成している場合、あるいは、ビットマップメモリ42内において既に十分な領域（ヘッド44のインクジェットノズルの八行に相当する八行の長さのバンドなど）が完成している場合はガンマ補正が行われる(S410)。ガンマ補正により、輝度を均一に配分するように、ビットマップメモリ42のCMY値が調整される。
【００２９】
次に、下色除去が行なわれてビットマップメモリ42の位置(x, y)に対するブラック値を得る(S411)。本実施例の下色除去はCMY値の中の最小値を選択して、その値をブラック値に割り当てるという単純な方法で行われる。その後、CMY値の夫々はブラック値を引き算されて調整される。ステップS410、S411の順序は決まったものではなく、例えば、連続トーン、ディザ法、誤差拡散法など特定のカラー印刷技術を使用するために順序を入れ替えてもよい。
【００３０】
次に、上記処理の結果得られたCMY値を使用してカラー印刷が開始される(S412)。
【００３１】
図5はプリンタテーブル26aと境界テーブル26bの形成方法を説明するフローチャートである。図5に示すフロー手順は、各プリンタに付き一度だけ行うか、あるいは、再調整の必要が生じた時に行えばよい。図5のフロー手順は、同一の機種番号のプリンタなど一組のプリンタに一度だけ行って、プリンタの工場調整の一部としてソフトの形で操作者に提供する方がより好ましい。
【００３２】
プリンタ40で印刷可能な色の色域または範囲を測定する(S501)。好ましくは、これはプリンタ40で印刷可能な全ての色の、非常に大きいサブセットか、もしくは、完全なセットを印刷することによって行う。例えば、本実施例で使用するプリンタ40においては、C、M、Y、K値のそれぞれが0〜64の数値の65階調で印刷される。このように、例えば、17個のC値、すなわち数値0、4、8、12、...、64が印刷され、そして17個のM値、17個のY値が同様に印刷される。これらそれぞれ17個のCMY値のあらゆる可能な組み合わせが印刷され、結局17×17×17=4,913個のカラーパッチができる。上記有彩色(hued colors)に加えて、全ての可能な無彩色値(gray values)が、この場合は48個の無彩色値が、既に印刷済みの17色の上方に印刷される。
【００３３】
上記のようなプリンタ色域のサンプリングにより、有彩色とともに純粋な無彩色が印刷されるのが了解されるであろう。サンプリング方法に何を使用する場合でも、適当な無彩色の再現はカラー再現において望ましい特性なので、この純粋無彩色の印刷の特性は保持されるべきである。
【００３４】
4,913個のカラーパッチと、付加された48個のグレーパッチのそれぞれについて、色が前述のCIE LAB色空間のようなデバイス・インディペンデントな色空間で測定される。こうして、ステップS501の最後においては、4,913+48=4,961個のユニークなCMY色の組み合わせのそれぞれについて、L*、a*、b*座標が測定され、これによりプリンタ色域を規定する。
【００３５】
次に、CIE LAB座標をCMY座標へ転換するための数学的な平滑化関数を得る(S502)。本実施例では、CIEL AB空間からCMY空間への三次元の最小二乗法によるフィットを選んだ。つまり、C0からC19の係数、m0からm19、y0からy19の係数が、公知の最小二乗法によるフィッテイングの技術を用いて、ステップS501で測定された色域に対して最小二乗の意味で最良のフィットを与えるように得られた。
C = c0 + c1L* + c2a* + c3b* + c4L*2 + c5a*2 + c6b*2 + c7L*a* + c8L*b*
+ c9a*b* + c10L*3 +c11a*3 + c12b*3 + c13L*2a* + c14L*a*2 + c15L*2b*
+ c16L*b*2 + c17a*2b* + c18a*b*2 + c19L*a*b*    …(1)
M = m0 + m1L* + m2a* + m3b* + m4L*2 + m5a*2 + m6b*2 + m7L*a* + m8L*b*
+ m9a*b* + m10L*3 +m11a*3 + m12b*3 + m13L*2a* + m14L*a*2 + m15L*2b*
+ m16L*b*2 + m17a*2b* + m18a*b*2 + m19L*a*b*    …(2)
Y = y0 + y1L* + y2a* + y3b* + y4L*2 + y5a*2 + y6b*2 + y7L*a* + y8L*b*
+ y9a*b* + y10L*3 +y11a*3 + y12b*3 + y13L*2a* + y14L*a*2 + y15L*2b*
+ y16L*b*2 + y17a*2b* + y18a*b*2 + y19L*a*b*    …(3)
【００３６】
ステップS502では、ステップS401の測定値をデバイス・インディペンデントな色座標空間からCMY座標空間へ変換(fit)する何らかの数学関数を使用するようにしてもよい。しかしながら、その変換(mapping)関数は、ステップS501で発生したかも知れない測定誤差を除去するために平滑化処理を含んでいることが望ましい。
【００３７】
さらに、ステップS502で変換を行う前に、ステップS501で測定された幾つかのポイントに重み付け処理することが望ましい。例えば、適切な肌色階調の再現はカラー印刷の重要な特性である。従って、場合によっては、肌色の領域に当たる色の重みを他の色よりも増して処理を行うことが望ましいからである。
【００３８】
次に、デバイス・インディペンデントな色空間、つまりCIE LAB色空間が等しいサイズの区間に分割される(S503)。そうした区間の一つは、L*軸を中心にするなどしてL*軸を含んでいる。このような分割が空白のプリンタテーブル26aを提供する。プリンタテーブル26aのサイズは、典型的なカラーモニタの色域に加えてプリンタ色域も含むようにすることが好ましい。例えば、図1によると、プリンタテーブル26aは、一般には、12で示されるカラー領域を含んでいる方が望ましい。
【００３９】
プリンタテーブル26aの区間のサイズは、プリンタテーブル26aの格納限度に十分な考慮を払って、できるだけ小さいものでなければならない。例えば、微細な色相や彩度の階調変化よりも微細な輝度の階調変化の方がより重要であるということが明らかになっている。輝度軸をΔL*=1（輝度L*の範囲は0〜100）の区間に分割すると、十分な輝度の階調変化が得られることも決まっている。一方、そうした微細な階調変化は通常は色相については必要とされず、Δa*=Δb*=3の区間が適切な色相の階調変化を与えることが分かっている（a*、b*の範囲は輝度軸の中心、すなわち、L*=50の近傍でおよそ-100から+100）。
【００４０】
上述の考慮に加えて、プリンタ色域は各輝度値に対し同一ではないということにも注目しなければならない。とくに、色域は、極端な輝度域では比較的に小さく、輝度軸の中心では比較的大きい。図6はCIE LAB空間のプリンタテーブル26aへの典型的な分割を示している。しかし、ここでは、全ての輝度および色相についての階調変化は説明の簡略化のために図示しない。L*=10のような比較的低い輝度値では、a*、b*軸の比較的小さい矩形グリッドがプリンタ色域を展開するのに適当である。同様に、L*=90のような比較的高い輝度値では、a*、b*軸の比較的小さい矩形グリッドがプリンタ色域を格納するのに適当である。しかし、L*=50のような中間の輝度値では、プリンタ色域を展開するにはa*、b*軸の比較的大きい矩形グリッドが必要である。
【００４１】
さらに、図6に示すように、各輝度レベルの矩形グリッドはL*軸を含んでいる（図5ではL*軸上に集中している）。つまり、矩形グリッド内には正確にa*=b*=0と一致するセルが存在する。その中心点、即ちa*=b*=0は純粋な無彩色に相当し、上述のように、適切なカラー再現のための純粋な無彩色として適当に再現される。
【００４２】
実際は、プリンタテーブル26aにはプリンタ色域よりも多くの色が含まれていることが好ましく、典型的なモニタの色域に見られる色が含まれていることが最も望ましい。これにより、プリンタテーブル26aは、プリンタ色域の縁部分の色を境界テーブル26bの色に滑らかに遷移させ、プリンタ色域の外の領域における色差分を保存する遷移値を含むことになる。
【００４３】
次に、ステップS502で求められた変換関数を用いて、C、M、Y値をプリンタテーブル26aのL*軸周囲に挿入する(S504)。連続階調印刷とは対照的なディジタルカラー印刷に対応して、端数値であるC、M、Y値は切り捨て、または、四捨五入によって整数値にされる。各輝度レベルの矩形グリッド全体は完全に数値で満たされることはなく、プリンタ色域内として知られている部分にのみ数値が入っている。さらに、ちょうどL*軸上のセル、つまりa*=b*=0の点もまた、変換関数によっては変換されない。むしろ、これらの点に対するCMY値は、ステップS501で測定されたプリンタ40の無彩色に相当するL*値を用いて決定することにより、ステップS505で挿入される。これにより、前記変換関数で導入された平滑処理によっては、色相値を純粋無彩値に持ち込まないことが保証される。
【００４４】
次に、プリンタテーブル26aのCMY値を印刷不可能な色に対して修正する(S506、S507)。
【００４５】
印刷不可能な色はステップS502で選択された変換関数による欠陥(artifacts)のために生じるものである。例えば、使用された変換関数では、図7の領域45のような、プリンタ色域にはない不適切な領域がプリンタテーブル26a内に生じる。こうした欠陥は、L*軸周囲の領域に接続していない全ての領域を除去することにより、ステップS506で除去する。
【００４６】
印刷不可能な色は、図8に示すような状況からも生じる。図8において、符号47は任意の輝度値L*に対するプリンタ色域の縁部を表している。L*軸から放射状に延びる線が縁部47と唯一の点で交わらないため、図示のプリンタ色域は放射状の凸形をしていない。とくに、放射状線48は縁部47と49a、49b、49cの三点で交わっている。点49a、49bの間の領域は放射状の凹部を成し、プリンタテーブル26aの不適切なCMY値を生成する要因になる。従って、ステップS507で、プリンタテーブル26aの値を放射状に凸形となるように修正する。
【００４７】
図9はこのプロセスを示している。図9は任意の輝度値L*に対するa*、b*軸内の矩形グリッドを示している。セル51〜55は全てプリンタ色域内の印刷可能な値を含んでいる。しかし、セル59は、角度θの放射状線がプリンタ色域の二つのセル53、56を通るために放射状に凹形である。従って、あるCMY値をセル59に割り当てることによりテーブルを放射状に凸形にする。その値はその色（図中の角度θ）の色相をできるだけ保持し、所望する値に最も近い彩度値を選択することによって選択される。こうして、図では、セル59の値には、セル51から55のうちの、色相値と彩度値においてより近い値を有するセル（複数）に依存して、そのセル51から55のうちの一つのセルの値を割り当てることができる。図9では、C=1、M=18、 Y=14の値が選択されている。
【００４８】
次に、プリンタテーブル26aの遷移色を求める(S508)。図10は遷移色に対するCMY値を選択する様子を示している。図中、符号60はプリンタ色域の縁部であり、61は、上述のように、典型的なカラーモニタの縁部にほぼ一致するプリンタテーブル色域の縁部である。縁部60、61間の領域の遷移色のそれぞれについて、遷移色から一定の角度αの位置にあるプリンタ色域の縁部60上の色を遷移色に対して選択する。なお、輝度のいずれの変化も許容され得るが、それは、輝度変化の範囲が任意のしきい値にリミットされないことを意味する。例えば、遷移色62に対しては、プリンタ色域の縁部60上の点64が選択されるが、これは、点64が点62から角度αの位置にあるからである。同様に、点65のように、遷移領域の各点に対して、点66のような、一定の角度αの位置にあるプリンタ色域の縁部60上の該当する点が選択される。プリンタ色域の最大彩度点67を越える遷移色に対しては、角度αは下向きに取る。逆に、色69のように、最大彩度点67未満の遷移色に対しては、角度αは上向きに取る。最大彩度点67から2αを成すウェッジ(wedge)領域70内の色に対しては、最大彩度点67が選択される。こうして、ウェッジ70内の全色が色67に変換される。
【００４９】
縁部60、61間の遷移色が最も滑らかな色の変化をもたらすことが確実になるためにも、プリンタ色域の縁部60上における彩度については、一定の角度αの展開を行う前に、最小彩度から単調に増加して最大彩度点へ至り、最小彩度へ単調に減少するか否かを確かめることが望ましい。もし彩度の変化が単調ではない場合、一定の角度αの展開の前に、プリンタ色域の縁部60の色彩度をその変化を排除するように修正する。
【００５０】
角度αを15度とすると、彩度を十分に増加させ、かつ、明度に不合理に大きな変化を起こさずに満足な結果を生むということが判明している。αの他の値、例えば10度、20度も適用できる。
【００５１】
次に、境界テーブル26bを作成する(S509)。プリンタテーブル26aが各輝度値に対してa*、b*軸の矩形グリッドとして形成されるのに対し、境界テーブル26bはプリンタテーブル26aの各輝度値に対して一つのホイールとして形成される。こうして、図11に示すように、プリンタテーブル26aが存在する輝度値のそれぞれに対して一つのホイール状の境界テーブルが提供され、一つの境界テーブルはそれぞれのプリンタテーブルに対応する。境界テーブル26bは複数のセルを有し、それらセルはa*、b*座標の関数として次のように計算された色相角度θでアクセスされる。
θ = tan-1(b*/a*)
【００５２】
図12は境界テーブル26bとプリンタテーブル26aの対応を示している。
【００５３】
プリンタテーブル26aが任意の輝度値L*に対する矩形グリッド状のテーブルであるのに対して、境界テーブル26bはa*=b*= 0を中心とするホイール状のテーブルである。境界テーブル26bの個々のセルは、色相に対応するa*、b*軸内の角度θでアクセスされる。実験的には、各境界テーブルにおける360個のセルに相当する1度の増加が、色相の階調変化を適切に与えることが判明している。しかし、これは下記に図13を参照して説明するように修正することができる。
【００５４】
次に、境界テーブル26bの各セルに対するCMY値が、プリンタテーブル26aの遷移色に対するCMY値を選択するのと同様な方法で選択される(S510)。このようにして、境界テーブル色なるものが、境界テーブル26bから一定の角度α（プリンタテーブル26aで使用したものと同一のα）の位置にあるプリンタ色域の縁部色から選択される。前述したように、角度αは、境界テーブル色が最大プリンタ彩度点よりも上にあるか下にあるかによって、上向きまたは下向きに取るようにし、境界色テーブル26bがウェッジ70内にある時は最大プリンタ彩度点にリミットされる。
【００５５】
ステップS510では、境界テーブル26bの色の彩度が滑らかに変化していることを確認するために境界テーブル値を調べる。この様子は、a*軸とb*軸の任意の輝度値L*におけるプリンタ色域70を示す図13で説明される。上述のように、色71のような、プリンタ色域の外に位置する色は、色相角度を保持しながらプリンタ色域の境界色72へ変換される。とくに、領域74のように印刷可能な彩度が急速に変化するような領域では、色相のわずかな変化が境界テーブル26bの彩度に急速な変化をもたらす。例えば、色相角度がθ1からθ2へ変化すると、色相の小さな変化だけでも彩度が比較的大きく変化する。彩度にそうした大きな変化があると、印刷した時に不自然に見える。
【００５６】
このような不自然な印刷結果を避けるために、境界テーブル26bのサイズを、確実に彩度が滑らかに変化するべく色相に充分微細な増加が現われるようになるまで、大きくする。境界テーブル26bが増加されると、ステップS509の計算は、新しい境界テーブル26bのCMY値を満たすように繰り返される。
【００５７】
次に、プリンタテーブル26aのCMY値を調べて修正し、CMYが滑らかに無彩色（L*軸）に混色するのを確実にする(S511)。詳しくは、離散的な輝度レベルでは、L*軸に近いプリンタテーブル色が無彩色に滑らかに混色するように、プリンタテーブル色を再決定する。
【００５８】
次に、プリンタテーブルを矩形に完成する(S512)。より詳しくは、このステップまでは、CMY値はプリンタテーブル26aの、プリンタ色域60内の領域（ステップS504、S505）とプリンタ色域と境界テーブルの間の遷移領域61にしか挿入されていなかった（ステップS509）。ステップS512では、図12に符号69で示すようなプリンタテーブル26aの残りのセルについて色相角度を算出し、図12に符号68で表すような色相角度の境界テーブル色を挿入する。
【００５９】
次に、アブニー効果を補償するために、プリンタテーブル26aと境界テーブル26bの色相角度がワープされる(S513)。具体的には、色域外の色に対するCMY値（この値は、この時点ではプリンタテーブル26aと境界テーブル26bに記憶されている）は、ステップS508に関連して前述したように、全て一定の角度の展開に基づいている。しかし、図2に示すように、彩度の高い色に関しては、一定の角度を保持しながらプリンタ色域の縁部へ戻すという展開を行うと、アブニー効果によって知覚される色相に変化をもたらす。例えば前述のように、一定の角度の展開によって、高い彩度の（しかし印刷不可能な）青みの紫色19aは、プリンタ色域の縁部のより低い彩度の紫色（符号19bで示される）に変えられてしまう。
【００６０】
この効果を補償するために、プリンタテーブル26aと境界テーブル26bの色相角度をワープする（歪ませる）。より詳しくは、プリンタテーブル26aと境界テーブル26bの両方に対して、一つの色相角度に対するCMY値を、他の異なる一つの色相角度へ転移させ、印刷色に知覚される色相を保持するようにする。図14、15は、θ=255°からθ=333°間にある色相角度θにある青/紫の色空間領域について、このワープを示している。
【００６１】
図14はワープ前のプリンタテーブル80と、ワープ後の、そのプリンタテーブル81を示している。図14のこれらのプリンタテーブルはa*、b*面における任意のプリンタテーブル26aに対するものであり、任意の輝度値L*に対するものである。図14に示すワープは、ステップS503で選択されたL*値に対するプリンタテーブル26aのそれぞれについて実行されるということは明らかである。図14に示すように、青色領域82aは相当するワープ青色領域82bへ拡張されている。これにより、色域外の高い彩度の青色を印刷するという命令に対して印刷されるCMY値が、青みの紫よりもむしろ青い色相の色となることが確実になる。例えば、高い彩度の色域外の青色84は、ワープされないテーブル80に従って印刷すると、青みの紫色になるが、ワープされたテーブル81に従って印刷すると青色となる。
【００６２】
さらなる色相角度ワープにより、領域85aのCMY値が領域85bに変換（写像）され、また、領域86aから86bへと変換される。変換の詳細は下記のとおりである。
色相角度255°〜305°：
ワープ角度 [255 + ang] = 255 + 0.5×ang
ただし、0＜ang＜50°
色相角度305°〜309°：
ワープ角度 [305 + ang] = 280 + 1.25×ang
ただし、0＜ang＜4°
色相角度309°〜333°：
ワープ角度 [309 + ang] = 285 + 2×ang
ただし、0＜ang＜24°
【００６３】
こうして、未ワープ領域255°〜280°は領域255°〜305°へ拡張されることによってワープされ、未ワープ領域280°〜285°は領域305°〜309°へ圧縮することによってワープされる。また、未ワープ領域285°〜333°は領域309°〜333°へ圧縮することによってワープされる。これらのワープされた領域は連続性を保っているが、未ワープ領域と同一の端部点（ここでは255°および333°）をもっている。
【００６４】
レッド、シアンにおいても同様のワープを行う。レッドに対するワープ処理は次のとおりである。
色相角度10°〜40°：
ワープ角度 [10 + ang] = 10 + 0.5×ang
ただし、0＜ang＜30°
色相角度40°〜53°：
ワープ角度 [40 + ang] = 25 + 1.25×ang
ただし、0＜ang＜12°
色相角度52°〜76°：
ワープ角度 [52 + ang] = 40 + 1.5×ang
ただし、0＜ang＜24°
【００６５】
このように、未ワープ領域10°〜25°は領域10°〜40°へ拡張されることによってワープされ、未ワープ領域25°〜40°は領域40°〜52°へ圧縮することによってワープされる。また、未ワープ領域40°〜76°は領域52°〜76°へ圧縮することによってワープされる。
【００６６】
シアンに対するワープ処理は次の通りである。
色相角度170°〜195°：
ワープ角度 [170 + ang] = 170 + 2.0×ang
ただし、0＜ang＜25°
色相角度195°〜245°：
ワープ角度 [195 + ang] = 220 + 0.5×ang
ただし、0＜ang＜50°
【００６７】
このように、未ワープ領域170°〜220°は領域170°〜195°へ圧縮することによってワープされ、未ワープ領域220°〜245°は領域195°〜245°へ拡張することによってワープされる。
【００６８】
プリンタテーブル26aに対して行われたのと同じワープ処理が、図15に示すように、境界テーブル26bについても行われる。前述と同様、この処理によって、色87のような色域外の青色の印刷命令に対しては、未ワープの境界テーブル26bに従って印刷すると青みの紫色相として印刷されてしまうが、ワープ処理された境界テーブル26bに従って印刷すると確実に青い色相の色となる。
【００６９】
上記のワープにより、色域内の色も色域外の色もワープさせるため、プリンタテーブル26aおよび境界テーブル26b内の色の滑らかさを保持することができる。色域外色のみについてワープさせることも可能であるが、こうするとプリンタ色域の縁部の色の連続性が悪くなる。さらに、たとえ色域内の色をワープさせたために色がずれたとしても、その色相角度の線は色域内の色については互いに近くなり、高彩度の色域外の色については互いに離れるようになるため、ずれの量はあまり問題にならないということが、実験的に判明している。
【００７０】
上述のワープ技術では、同一色相角度にある全色を彩度とは無関係に等しくワープさせるが、彩度に基づくファクタをワープに導入することも可能である。その場合、さらに高い彩度の色が比較的低い彩度の色へとワープされる。
【００７１】
次に、プリンタテーブル26aおよび境界テーブル26bの黄色領域にある色を、その黄色領域が広がるように修正する(S514)。詳しく説明すると、図2に示すように、プリンタ40の純黄色が大変狭いプリンタ色域に陥ってしまい、ユーザに見つけ難い（モニタ30の黄色範囲はより広いので）ものとなっていた。純黄色に関して印刷可能な範囲は大変狭いため、大抵ユーザは所望の純黄色よりも緑みの黄色を選んでしまう。そこで、ステップS514では黄領域を拡大する。この黄領域の拡大は下記の色相角度のワープで行うことができる。
色相角度87°〜91°：
ワープ角度 [87 + ang] = 87 + 1.25×ang
ただし、0＜ang＜4°
色相角度91°〜97°：
ワープ角度 [91 + ang] = 92
ただし、0＜ang＜6°
色相角度97°〜112°：
ワープ角度 [97 + ang] = 92 + 0.5×ang
ただし、0＜ang＜15°
色相角度112°〜132°：
ワープ角度 [112 + ang] = 99.5 + 1.25×ang
ただし、0＜ang＜20°
色相角度132°〜147°：
ワープ角度 [112 + ang] = 124.5 + 1.5×ang
ただし、0＜ang＜15°
【００７２】
前述のステップS501からS514を自動的に実行するコンピュータプログラムが開発されており、付録のマイクロフィッシュの形で提出されるであろう（特願平5-260847号に関する、平成5年10月22日付け上申書で提出）。
【図面の簡単な説明】
【００７３】
【図１】プリンタで印刷可能な色域とモニタ上に表示可能な色域の関係を示す色度図、
【図２】アブニー効果を特徴付ける一定の色曲線を示す色度図、
【図３】本実施例にかかわる印刷装置を示すブロック図、
【図４】図3の装置のプリンタドライバによる、カラープリンタのCMYK値の選択を説明するフローチャート、
【図５Ａ】プリンタテーブルと境界テーブルの形成方法を説明するフローチャート、
【図５Ｂ】プリンタテーブルと境界テーブルの形成方法を説明するフローチャート、
【図６】CIE LAB色空間からプリンタテーブルへの典型的な分割を示す図、
【図７】未接続領域がプリンタテーブルから除去される様子を示す図、
【図８】プリンタ色域における放射状に凹形の領域を示す図、
【図９】プリンタテーブルを放射状に凸形に形成することにより凹型領域を除去する様子を示す図、
【図１０】プリンタテーブルの遷移領域において、各セルに対してCMY値を選択する様子を示す図、
【図１１】境界テーブルの配置を示す図、
【図１２】任意の輝度値L*に対するCIE LAB色空間におけるプリンタテーブルと境界テーブルの関係を示す図、
【図１３】a*およびb*軸における任意の輝度値L*のプリンタ色域を示す図、
【図１４】プリンタテーブルに対して色相角度をワープさせる様子を示す図、
【図１５】境界テーブルに対して色相角度をワープさせる様子を示す図である。
【図１】
0003684235.tif 000002
【図２】
0003684235.tif 000003
【図３】
0003684235.tif 000004
【図４】
0003684235.tif 000005
【図５Ａ】
0003684235.tif 000006
【図５Ｂ】
0003684235.tif 000007
【図６】
0003684235.tif 000008
【図７】
0003684235.tif 000009
【図８】
0003684235.tif 000010
【図９】
0003684235.tif 000011
【図１０】
0003684235.tif 000012
【図１１】
0003684235.tif 000013
【図１２】
0003684235.tif 000014
【図１３】
0003684235.tif 000015
【図１４】
0003684235.tif 000016
【図１５】
0003684235.tif 000017