以下、図面にもとづいて本発明の実施形態を説明する。図1は、本発明の一実施形態にかかる色修正システムをブロック図により示しており、図2は具体的ハードウェア構成例をブロック図により示している。同図において、画像入力装置10はカラー画像についての色画像データを色修正装置20へ入力し、同色修正装置20は同色画像データについて色修正したデータを画像出力装置30に出力する。ここにおいて、色修正装置20が出力するデータは画像出力装置30にて画像出力せしめたときに元色に忠実となるように修正されたデータであり、偏差取得手段と色修正手段とを備えている。
ここにおいて、画像入力装置10の具体例はスキャナ11やデジタルスチルカメラ12あるいはビデオカメラ14などが該当し、画像処理装置20の具体例はコンピュータ21とハードディスク22とキーボード23とCD−ROMドライブ24とフロッピーディスクドライブ25とモデム26などからなるコンピュータシステムが該当し、画像出力装置30の具体例はプリンタ31やディスプレイ32等が該当する。ただし、本実施形態においては、これらの画像出力装置30のうちプリンタ31について特に詳細に説明していく。なお、モデム26については公衆通信回線に接続され、外部のネットワークに同公衆通信回線を介して接続し、ソフトウェアやデータをダウンロードして導入可能となっている。
図3はプリンタ31の概略構成を示しており、三つの印字ヘッドユニット31a1からなる印字ヘッド31aと、この印字ヘッド31aを制御する印字ヘッドコントローラ31bと、当該印字ヘッド31aを桁方向に移動させる印字ヘッド桁移動モータ31cと、印字用紙を行方向に送る紙送りモータ31dと、これらの印字ヘッドコントローラ31bと印字ヘッド桁移動モータ31cと紙送りモータ31dにおける外部機器とのインターフェイスにあたるプリンタコントローラ31eとから構成されている。
このプリンタ31は印字インクとして四色の色インクを使用するものであり、各印字ヘッドユニット31a1にはそれぞれ独立した二列の印字ノズルが形成されている。供給する色インクは印字ノズルの列単位で変えることができ、この場合は図示左方の印字ヘッドユニット31a1については二列とも黒色インク(K)を供給し、図示右方の印字ヘッドユニット31a1については左列にマゼンタ色インク(M)を供給するとともに右列にイエロー色インク(Y)を供給し、図示真ん中の印字ヘッドユニット31a1については左列にシアン色インク(C)を供給するとともに右列は不使用としている。ここにおいて、各印字ヘッドユニット31a1の左列と右列との製造誤差は比較的小さく、ほぼ無視できる。
しかしながら、印字ヘッドユニット31a1ごとの間ではインクの吐出量に差が生じやすく、後述するようにして測定された各印字ヘッドユニット31a1ごとの色インクの吐出量を計測したデータを保持できるようにPROMエリアを備えている。なお、この吐出量の偏りが本発明にいう偏差に相当する。そして、上述した印字ヘッドコントローラ31bにはこの印字ヘッドユニット31a1における各ノズルを駆動して色インクを吐出させる印字ヘッド駆動部31b1とともに同PROMエリアを参照するためのPROMインターフェイス31b2を備えており、プリンタコントローラ31eを介して入力される印字データに基づいて印字ヘッド駆動部31b1にて印字させるとともに、要求に応じてPROMエリアに保持された色インクの吐出量のデータを出力可能となっている。
また、このようなPROMエリアは必ずしも印字ヘッドユニット31a1に備えなければならないわけではなく、少なくともプリンタ31内に装着してあればよく、図3の二点鎖線に示すように印字ヘッド31aとは別個に備えても良い。ただし、印字ヘッドユニット31a1に備えられている場合には少なくとも当該印字ヘッドユニット31a1を組み上げた状態で検査して吐出量を計測したデータを保持できるというメリットがある。特に、印字ヘッドと色インクタンクとが一体的に形成されるようなものにおいては、かかるカートリッジごとにデータを記録するようにしてもよい。
さらに、このようなデータを記録するという意味ではディップスイッチのようなものを備えてプリンタコントローラ31eに接続し、計測時に作業者が同ディップスイッチを設定するようにしても良い。このようにすれば同プリンタコントローラ31eを介して同ディップスイッチの設定内容を読みとることができ、同データを偏差として入力できるからである。あるいは、単に計測結果をシール用紙のようなものに印字し、印字ヘッド31aに貼付せしめ、ユーザーがそのシール用紙に印字されたデータを入力するということも可能である。
なお、本実施形態においては、四色の色インクを使用しているが、図4に示すプリンタ31の印字ヘッド31aのように三つの印字ヘッドユニット31a1における二列の印字ノズルを最大限に利用して六色の色インクを使用することも可能である。この場合、シアンとマゼンタについては濃色インクと淡色インクとを使用するものとし、さらにイエローとブラックとを使用して合計六色となっている。
本実施形態においては、画像出力装置30としてカラー印刷可能なプリンタ31を使用しているが、図5に示すディスプレイ32であるとか、図6に示すカラーファクシミリ機33や、図7に示すカラーコピー機34などに適用可能である。この場合、ディスプレイ32についてはRGBの各陰極線の出力特性に偏差が生じることがあるし、カラーファクシミリ機33やカラーコピー機34などにおいてはプリンタ31と同様に色インクなどの使用量に偏差が生じることがある。また、本実施形態においては、プリンタ31に対して色画像データを修正するコンピュータシステムを使用しているが、図8に示すようにカラープリンタ35内にかかる色修正システムを内蔵し、ネットワークなどから供給される色画像データを直に入力して印字するような構成も可能である。
色修正装置20を実現するコンピュータ21は機能的に偏差取得手段と色修正手段とを構成するが、むろん、これら以外の機能を有するものとすることも可能であり、プリンタ31を出力装置とすれば表色空間を変換する色変換手段と階調を変換する階調変換手段を兼用することも可能である。
まず、偏差取得手段について説明するものの、この偏差を取得する手法に関連して具体例は大きく変化する。図9は上述したようにプリンタ31自体が色インクの吐出量の偏差を保持する場合の色修正の手順を示している。前半の手順S11と手順S12とでプリンタ31に同偏差を表すデータを記録しておき、後半の手順S13〜S15で色修正の準備をしている。
図10は印字ヘッド31aにおける色インク吐出量を示している。印字する際にプリンタドライバはRGBデータをCMYKデータに色変換するとともにハーフトーン処理するが、これは印字ヘッド31aの色インクを考慮した対応関係に基づいている。そして、この対応関係は当然に色インクの吐出量にも関係している。すなわち、同図の上段(基準)に示すようにある印字データに対応して吐出されるべき色インク量が40ngであることを前提としてプリンタドライバが色変換するにもかかわらず、実際には下段(サンプル)のようにずれてしまう。むろん、このずれを小さくすることも可能であるが、印字ヘッドユニット31a1の製造歩留まりを悪化させてしまう。
このような色インクの吐出量の計測(手順S11)は、印字ヘッド31aを組み付けた状態で全ての印字ヘッドユニット31a1にシアン色インクを供給し、所定の用紙に25%といった適当な密度で図11に示すようにベタのパッチを印刷させ、その濃度を濃度計で測定する。むろん、図に示す六つのパッチは六列の印字ノズルのそれぞれだけで印字する。全ての印字ノズルが同じシアン色インクを吐出するようにしているため、測定される濃度は印字ノズルごとの吐出量に概ね比例する。
この結果、図12に示すように各ノズルが25%の基準で印字するようにしているにもかかわらず、サンプルされた結果にはバラツキが生じる。この例で言えば、同じ印字ヘッドユニット31a1で印字されるマゼンタとイエローに使用することになる印字ノズルの吐出量がやや少なく(23%)、シアンに使用することになる印字ノズルの吐出量がやや多く(27%)なっており、ブラックに使用することになる印字ノズルの吐出量が基準値と一致している(25%)。そして、このような計測結果は計測後に印字ヘッド31aにおけるPROMエリアに書き込む(手順S12)。従って、上述したようにプリンタ31に組み付けられたときには印字ヘッドコントローラ31bを介して印字ヘッドユニット31a1ごとの吐出量を読出可能となる。なお、必ずしもシアン色インクを使用する必要はない。
コンピュータ21においては、上述した手順S13〜S15をプリンタドライバなどが実行する。プリンタドライバの通常の印刷手順を図13に示している。ステップS110でRGBデータ(赤緑青の三色の要素色についての階調表示データを指すものとする)からなる色画像データを入力したら、先ず、ステップS120ではCMYKデータ(シアン、マゼンタ、イエロー、ブラックの四色の要素色についての階調表示データを指すものとする)に変換する。このような異なる色空間での色変換については公知の手法で行われ、ここでは詳述しない。色変換されたCMYKデータは、基準量の色インクが吐出されてこそRGBデータと同色を表現できることになるものの、上述したように色インクの吐出量に誤差があれば色再現性は劣化してしまう。従って、ステップS130に示すように色インクの吐出量の偏差を見越したC’M’Y’K’データに修正する必要がある。例えば、色インクの吐出量が少ない色についてはCMYKデータの値を大きめにしておけば差し引きしてちょうど良くなるし、色インクの吐出量が多い色についてはCMYKデータの値を小さめにしておけば差し引きしてちょうど良くなるといえる。そして、このようにして得られたC’M’Y’K’データを使ってステップS140にて二値化し、ステップS150で印刷すれば、色再現性は向上する。
ただし、このようなステップS130での色修正は、上述したプリンタドライバがその起動時に色修正ルックアップテーブルを作成するとともに、色変換ルックアップテーブルに組み入れることによって実質的に行われる。すなわち、同プリンタドライバは、まず、手順S13に示すようにバラツキデータのPROMからの読み込みを実行する。ここにおける実行主体はコンピュータ21のCPUであるし、かかる手順自体はハードディスク22に記録されたプリンタドライバプログラムであり、CPUは適宜必要なプログラムを読み込んでRAM上に展開して実行している。
バラツキデータの読み込みはCPUが周辺機器との双方向通信を実行することによって行われる。このような周辺機器との双方向通信はROM等に記録された基本プログラム等も利用して行われる。具体的にはCPUはプリンタ31と通信し、プリンタコントローラ31eと印字ヘッドコントローラ31bとを介して印字ヘッド31aのPROMエリアに記憶された吐出量のデータを読み出す。すなわち、このようにして吐出量のデータを読み出す手順およびハードウェア環境こそが偏差取得手段を構成する。
吐出量のデータが印字ヘッド31aに保持されている場合のメリットとして基準からのずれが分かるということも上げられる。後述するようにしてパッチを印刷することにより印字ノズル間での相対的な強弱を判別する場合、例えば相対的に弱い方については基準よりも弱い結果なのか他方が強すぎる故であるのかといったことは判別できない。しかしながら、このように工場などで計量した結果が保持されていれば絶対的な意味での偏差が分かる。
偏差が分れば、手順S14では色修正のためのルックアップテーブルを作成する。図12に示すように、シアンは基準よりも強く、マゼンタとイエローは基準よりも弱いから、図14に示すように元のシアンCのデータに対して修正されたシアンC’のデータは全体的に弱めとするとともに、元のマゼンタMとイエローYのデータに対して修正されたマゼンタM’とイエローY’のデータは全体的に強めとする対応関係をルックアップテーブルに形成する。また、ブラックについては基準通りであるため、入出力間で特性を変化させていない。なお、ここで示す入出力の変換特性についての詳細は後述する。
次なる手順S15ではこの色修正のためのルックアップテーブルを使って色変換ルックアップテーブルの値を書き換える。従って、RGBデータに基づいて同色変換ルックアップテーブルを参照すればCMYKへの色空間の変換と同時にプリンタ31の出力特性の偏差を見越したC’M’Y’K’データへの修正も同時に行われる。すなわち、手順S14,S15という前準備をしておいたルックアップテーブルを使用してプリンタドライバが色変換する作業およびそのハードウェア構成が色修正手段を構成しているといえる。
上述した例では、濃度を介して間接的に色インクの吐出量を計測しているが、同吐出量を直に計測しても良い。むろん、1ドット(ショット)で吐出される色インクの重量は計測困難であるから、数万ショットで使用される色インクの重量を計測し、ショット数で除算して1ショットあたりの色インクの吐出量を計測することもできる。
図15は各印字ヘッドユニット31a1において1ショットで使用される色インクのインク重量とそのクラス分けの対応表を示している。この例では1ショットあたりの色インク量が20.5〜21.0ngであるときを基準として「1」〜「21」のクラス分けを行ない、各クラスをIDと呼んでいる。図から明らかなようにIDが小さいほどインク重量が重いので色インクをたくさん使用しており、逆にIDが大きいほど少しの色インクを使用している。従って、IDが大きい場合にはデータが表す濃度を濃いめにすればずれを打ち消すことになるし、逆にIDが小さい場合は濃度を薄めにすれずれを打ち消すことができるようになる。
故に、予め、IDに対応して図16に示すように入力データと出力データとの間で変換される色修正ルックアップテーブルLUT1〜LUT21を用意しておき、この色修正ルックアップテーブルLUT1〜LUT21に従ってデータの変換を行えばずれは解消される。なお、図16に示す関数はよく知られているγ補正のトーンカーブであり、256階調のRGBデータを前提とすれば、γ曲線はY=255×(X/255)**γとなる入出力関係を意味しており、γ=1において入出力間で強調を行わず、γ>1において入力に対して出力が弱くなり、γ<1において入力に対して出力が強くなる。本実施形態においては、予めIDに対応して印刷結果が最もリニアになるトーンカーブのγを実験によって求めてあり、各IDに対応したルックアップテーブルLUT1〜LUT21を生成してある。
ところで、これまでは偏差取得手段を実現するにあたってプリンタ31に偏差を表すデータが記録されているという前提であった。しかし、プリンタ31に偏差を記録する手法では、ハードウェアに対する調整を行うことなく色再現性を向上させることはできるものの、それだけでは経年変化などに対応することができない。
工場調整をすることなく経年変化に対応するためにはユーザーの側で容易に調整できる必要がある。このようにすれば、経年変化に対応可能であるし、さらにはプリンタ31が偏差を表すデータを保持しない場合であっても対応可能である。
図17はこのような場合の手順を示しており、現実にはプリンタドライバが起動されたときに以下の手順を実行することになる。手順S21〜S24はパッチの印刷とユーザーの入力であり、これによってコンピュータ21は偏差を取得する。まず、この偏差の取得手法について説明する。
図18および図19はコンピュータ21にてプリンタ31に印刷させるパッチとそのデータを示している。手順S21では、紙面上に(1)〜(5)の符号を伴った五つの色偏りパッチを印刷させるものとし、その印刷の色データは赤成分を微妙に変化させたものとなっている。図19に示すように、緑成分と青成分とを階調値「64」で固定しつつ赤成分だけについては階調値「48」〜「80」の範囲で「8」刻みとしている。この刻み幅は全体としての傾向を見る必要があり、細かくしすぎる必要はない。(1)のように赤成分が弱ければシアンぽいグレイが印刷され、(5)のように赤成分が強ければ赤っぽいグレイが印刷される傾向にある。
色データを見れば分かるように、本来であれば(3)のパッチにおいて赤緑青の各成分が一致するのでグレイで出力されるべきであるが、上述したようにこの色データに基づいてプリンタ31が印刷する場合に色インクの吐出量の偏差によっては必ずしも(3)のパッチがグレイで出力されるとは限らない。
手順S22ではユーザーがこのパッチを見てグレイに近いパッチNo.を選択してキーボード23から入力する。ここで、(3)のパッチがグレイであれば修正する必要はないといえる。しかしながら、(4)や(5)のパッチがグレイに近いと判断されたならばシアンが強いことを裏付け、(1)や(2)のパッチがグレイに近いと判断されたならばシアンが弱いことを裏付けることになる。すなわち、この選択はプリンタ31における各要素色ごとの強弱のバランスを判定することに対応する。
ここにおいて、図13にも示したようにRGBデータをCMYKデータに変換する色変換を実行する前提があるのであれば、シアンが強い場合にこの色変換の前であっても後であってもプリンタ31による印刷結果に影響を与えることは可能である。上述した例ではCMYKデータを修正する例を示したので、ここでは図20に示すようにRGBデータを修正する例を説明することにする。
図21〜図23は手順S22においてユーザが選択したパッチが(4)または(5)であり、シアンが強くなる傾向の場合の色修正を示している。
プリンタドライバでは手順S22にて(4)または(5)が選択された場合に赤成分を強調する色修正が必要であると判断し、どの程度の強調修正をすべきか判定するために手順S23にてグレイスケールパターンを印刷する。ここでいうグレイスケールパターンとは赤成分についてトーンカーブを利用した強調修正を行うものとし、その強調程度を変えて階調値の異なるグレイを連続したパッチ状に印刷したものを意味している。図21はトーンカーブの符号とともにそのグレイスケールを印刷しており、図22は各トーンカーブにおける入出力間の対応関係を示している。図に示すように、トーンカーブの符号が大きいものほど強調度が大きいことが分かる。
本実施形態においては、トーンカーブとしてγ補正を採用し、同γを「0.05」刻みで変化させてグレイスケールを印刷してみたところ、良好な結果を得た。
むろん、トーンカーブとしては、γ補正に限られる必要はなく、図23に示すようなスプライン曲線もよく利用される。この例では256階調のRGBデータを前提において、赤成分について階調値「64」のデータをどの程度強調させるかを「8」刻みで「64」〜「88」の範囲で選択可能としている。すなわち、階調値「0」と階調値「64」と階調値「255」において入出力が(0,0),(64,a),(255,255)を通り、その間で緩やかなトーンカーブを描くように修正する。なお、階調値「64」の近辺での修正を利用しているのは人間の感覚として全階調範囲における1/4〜1/3程度の範囲を中程と感じる傾向が見られるからである。また、このようなトーンカーブを利用しないとすれば、各階調値ごとにどの程度修正すべきかを個別に指示しなければならなくなるから、極めて煩雑になる。
手順S24ではユーザーがトーンカーブの選択を実行するが、これは強調態様の選択にあたる。そして、手順S25はこのようにして選択された強調態様に基づいてRGBデータを色修正するためのルックアップテーブルを作成し、手順S26ではそのようなルックアップテーブルを色変換ルックアップテーブルに組み入れる。従って、この場合もRGBデータに基づいて同色変換ルックアップテーブルを参照すればプリンタ31の出力特性の偏差を見越したR’G’B’データへの修正と同時にCMYKへの色空間の変換も行われる。
すなわち、手順S21〜S24が偏差取得手段を構成するといえるし、手順S25,S26という前準備をしておいたルックアップテーブルを使用してプリンタドライバが色変換する作業およびそのハードウェア構成が色修正手段を構成しているといえる。
なお、プリンタ31に偏差を保持する場合についても説明したように、このようなパッチの中からユーザーがグレイに近いものを選択する場合にはどちらが相対的なずれは分かるものの基準との偏差は分からない。従って、トーンカーブについても同じ赤成分を強くするという前提のもとで、図24に示すように赤成分だけを強調するトーンカーブも可能であるし、図25に示すように赤成分を少し強調しつつ緑成分と青成分とを少し弱くするといったトーンカーブを適用することも可能となる。
上述した実施例においては、色ずれが二つの印字ヘッドユニット31a1の間の機体差によって生じるものであったため、図19に示すように、緑成分と青成分とを固定しつつ赤成分だけについては階調値を変化させれば色ずれを解消させる方向性が分かった。しかしながら、赤成分と緑成分と青成分とがそれぞれ独立した印字ヘッドユニットを備えている場合には単に一つの成分を増減させるだけではグレイを得ることはできない。このような場合の手順を図26に示している。
以下、この手順について詳述する。手順S31では第一段階のテストパターンであるカスタムAパターンを印刷させる。カスタムAパターンを図27および図28に示しており、成分データが少しずつ異なる円形の複数の灰色パッチから構成されている。また、図27は256階調のRGBデータで成分データを表示しており、図28はCMYKデータの%表示で成分データを表示しており、図29はそれを一覧で示している。
それぞれの灰色パッチの成分データについては所定の規則性に従って少しずつ変化させてあり、中央の灰色パッチにおいて成分データが均等しており、紙面上方に向かうにつれて赤(R)成分が大きくなるとともに下方に向かうにつれて同赤成分が小さくなり、また、紙面左下方向に向かうにつれて緑(G)成分が大きくなるとともに右上方向に向かうにつれて同緑成分が小さくなり、また、紙面右下方向に向かうにつれて青(B)成分が大きくなるとともに左上方向に向かうにつれて同青成分が小さくなる。すなわち、上方から下方に向かうに方向に要素色たる赤成分の座標軸を設定するとともに、左斜め下方から右斜め上方に向かうに方向に要素色たる緑成分の座標軸を設定するとともに、右斜め下方から左斜め上方に向かうに方向に要素色たる青成分の座標軸を設定し、これらの座標軸によって定まる座標に比例して各成分データが増減している。
従って、このカスタムAパターン内において全ての要素色のバランスを一定の範囲内で変化させた全ての組が表示されることになる。むろん、この成分データ通りに色インクが吐出されれば中央のA1の灰色パッチが無彩色に見え、その周縁では要素色のバランスが崩れていずれかの要素色の影響が表れた灰色となるはずである。また、中央から離れるに従ってバランスのずれの量も大きくなっている。
しかしながら、印字ヘッドユニットにおけるインク使用量に偏りがある場合には予定通りの量の色インクが吐出されないため、A1の灰色パッチではなく、他の灰色パッチにおいてバランスすることになる。その関係を逆算した対応関係を図15のクラス分けを利用して図30に示している。例えば、A1が無彩色に見えるのであればシアンの色インクの使用量のIDは「11」となり、マゼンタの色インクの使用量のIDは「11」となり、イエローの色インクの使用量のIDは「11」となるのでまさしく均衡していることになるが、C4が無彩色に見えるのであればシアンの色インクの使用量のIDは「11」となり、マゼンタの色インクの使用量のIDは「15」となり、イエローの色インクの使用量のIDは「7」となっていることが分かる。すなわち、イエロー、シアン、マゼンタの順で吐出するインク重量が少しずつ小さくなっており、各要素色間の強弱の偏差が分かる。
なお、灰色パッチは中央のA1と、その一回り外のB1〜B6と、さらに一回り外のC1〜C12と、最外周のD1〜D16とから構成されているが、ハードウェアのチェックでは必ずC1〜C12よりも外側にずれないようにしている。それにもかかわらずD1〜D16を印字するのは、無彩色を選択する際に一定の傾向で成分データがずれる複数の灰色パッチにおいて両側の灰色パッチと比較することによって正確に判断できる事実に鑑み、必ず両側に灰色パッチが存在するようにするためである。
また、図27および図28に示すカスタムAパターンではそれぞれの灰色パッチについてはCMYの各要素色で印刷するものの、用紙の下部には切取線とともに黒色インクだけで階調値「128」に対するリファレンスパッチを印刷している。灰色パッチがたくさん並ぶと、無彩色であるか否かの判断を付けにくくなる場合がある。特に、紙色や照明の加減によっては分かりにくくなる可能性がある。しかしながら、黒色インクだけで印刷されたリファレンスパッチがあればこれと対比することによって無彩色の基準が確認できるので、灰色パッチの中から無彩色を選択する際の正確度が向上する。
ところで、カスタムAパターンで灰色パッチを選択した場合、その強弱の程度も分かった感じもするが、ここで判断された強弱の偏差はあくまでも階調値であれば「128」近辺での偏差に過ぎず、全階調にわたってシアン、マゼンタ、イエローのIDが「11」、「15」、「7」とするのが最適であるとは限らない。
従って、手順S32にてユーザーはカスタムAパターンの中から無彩色と思われる灰色パッチを選択してキーボード23からコンピュータ21に対して入力すると、同コンピュータ21は次の手順S33にて図16に示した色修正ルックアップテーブルLUT1〜LUT21の候補を選択し、手順S34にて図31に示すカスタムBパターンを印刷する。カスタムBパターンは紙面上横方向に一つの色修正ルックアップテーブルに従って成分データを変化させた灰色パッチを印刷しつつ、紙面上縦方向にその色修正ルックアップテーブルを変化させ、最終的には紙面上に27のグラデーション風のグレイスケールパターンを印刷して構成されている。
カスタムAパターンにおいてA1を無彩色として選んだ場合であっても成分データが「128」の近辺においてたまたまバランスが取れただけであり、他の階調値ではわずかにリニアでないこともある。従って、カスタムAパターンで選択された各要素色のIDについて前後プラスマイナス「1」の範囲で三つのIDを候補とし、それぞれを組み合わせた合計27個の色修正ルックアップテーブルを利用して図31に示す成分データを修正し、カスタムBパターンを印刷する。
図32はカスタムAパターンにおいてA1を無彩色として選んだ場合であり、完全に理想通りであれば14番目のグレイスケールパターンが全階調にわたって無彩色に見えるはずである。しかしながら、他の階調値のバランスからすると他のグレイスケールパターンの方が全体的に無彩色に見えることもあり得る。また、図33はカスタムAパターンにおいてC4を無彩色として選んだ場合であり、先に得られたIDを基準に27個のグレイスケールパターンの中から全階調にわたって無彩色に見えるものを選択すればよい。
選択結果は手順S35にてキーボード23からコンピュータ21に入力すると、最終的に選択されたIDに従って色修正ルックアップテーブルも決定され、プリンタドライバが色変換に使用する色変換ルックアップテーブルに組み込むべく同プリンタドライバに設定する。
ところで、これまでの例では四色インクの例であったり、RGBのデータというように所定の要素色が一色であった。従って、トーンカーブを変えるといった入出力間の特性変換が有効である。しかしながら、上述したようにシアンとマゼンタについては濃色と淡色を備えた六色インクの場合もあり、このようにある要素色において複数の濃度を選択できる場合には、濃色と淡色の選択及び混合割合を変えることによっても入出力の変換特性を変えることができる。
例えば、シアンについて濃色をC、淡色をcで表すとともにマゼンタについても同様に濃色をM、淡色をmで表すとすると、図13に示すようにRGBデータをCMYKデータ色変換するステップS120においては図34(a)に示すようにCcMmYKの六色への色変換LUTを参照することになる。一方、シアンを強調したい場合にはシアンの濃色の割合を多くして淡色の割合を少なくすればよいし、逆にシアンを弱くしたい場合にはシアンの濃色の割合を少なくして淡色の割合を多くすればよい。あるいは、濃度の影響を考えるならば濃色だけの割合だけを多くしたり少なくしたりすることも可能である。
従って、図34(b)に示すようにCcMmYKへの色変換LUTについてシアンやマゼンタについての濃色と淡色の割合を一律に変化させたり、同図(c)に示すように濃色だけについて変化させたりすることにより、色修正が可能となる。むろん、このように複数の濃度を選択できる場合においてもトーンカーブによる修正を行うことも可能である。
上述した実施例においては、印字ヘッド31aのPROMエリアに予め書き込まれている偏差を読み込むか、使用者等が複数のパッチから目視で判断したものを選択して入力するようにしているが、偏差を取得する手段としては、これらに限られるものではなく、印刷したパッチをスキャナ11などの撮像手段で読み込んだ後、判断するようにしても良い。
図35は、図17に示す手順で示した偏差取得部分において一部をスキャナ11とコンピュータ21とを利用して実施する例を示している。すなわち、手順S21と同様にして手順S41では紙面上に五つの色偏りパッチを印刷させ、手順S42でスキャナで読み込む。このスキャナによる読み込みでは、先ず、スキャナ11にて紙面全体を読み込み、次にこの五つの色偏りパッチ部分を切り出し、各パッチ部分でのRGB成分のバランスを判断して最もグレイに近いものを判断する。この場合、切り出した位置に対応して色偏りパッチを印刷せしめたデータを認識することができるから、どの成分が強いのかということが判断できる。
この判断結果に基づけばどの成分を強調すべきかが分かるから、手順S43では手順S23の場合と同様にして強調程度を判定するためのグレイスケールパターンを印刷する。そして、手順S44にて再度スキャナにて読み込む。この場合も、先ず、スキャナ11にて紙面全体を読み込み、次に強調程度毎のグレイスケールパターンの帯を切り出すとともに、その中での階調毎にパッチを切り出す。そして、各強調程度毎にグレイスケールパターンを構成するパッチのグレイ度を次のようにして判断する。すなわち、印刷したパッチごとに緑成分に対する赤成分と青成分の偏差を積算してグレイ度とする。よって、各パッチを階調毎にiで識別するとすると、
(グレイ度)=Σ{|Ri−Gi|+|Bi−Gi|}
と表せる。
このグレイ度をトーンカーブごとに演算し、最も最小になる強調程度を選択することになる。以後の手順については手順S25,S26と同様である。
さらに、スキャナ11のように撮像手段を別個に備えるのではなく、プリンタ31内に色判断可能な程度の撮像手段を組み入れるようにしても良い。図36はこのようなプリンタ31の例を示しており、印字ヘッド31aと並べてRGBの各成分を読み取り可能な撮像素子31fを配置するとともに、印字ヘッドコントローラ31bには撮像I/O部31b3を備えている。むろん、コンピュータ21はプリンタコントローラ31eと同印字ヘッドコントローラ31bの撮像I/O部31b3を介して撮像素子31fの撮像結果を読み取り可能としておく。かかる構成としておくことにより、印字ヘッド31aにてパッチを印刷する際に桁移動しながら撮像素子31fはパッチを撮像できる。
図37はかかるプリンタ31を利用して上述した手順S41〜S44と同様の処理を簡易に行うためのパッチデータを示している。パッチの印刷と撮像を平行して行えることから、基準値としての階調値を「15」「31」「47」…と移行させながら赤成分だけをその前後で「8」階調数だけずらして五つのパッチを印刷する。そして、各パッチを撮像しながらその読み取り成分値に基づいてどのパッチが最もグレイに近いかを判断する。このようにすれば、離散的ではあるものの256階調の全範囲においてグレイバランスを整わせることができるための偏差が分かることになる。従って、この偏差を元に手順S25,S26と同様にして色変換ルックアップテーブルを書き換えればよい。なお、このように自動化できる場合には、パッチデータの刻み幅をより細かくして実行すれば完全な偏差が分かるようになる。また、この場合は絶対的な色成分を判断できるため、各成分毎に偏差を求めて調整することも可能になる。
次に、上記構成からなる本実施形態の動作を説明する。製造工程においては、三個の印字ヘッドユニット31a1を一組として印字ヘッド31aを組み付ける。印字ヘッド31aが色インクの吐出量を書き込み可能なPROMエリアを備えるものである場合、各印字ヘッドユニット31a1に対してシアン色インクを充填し、25%濃度となるデューティで図11に示すようなベタのパッチを印刷させる。次に、このパッチを濃度計で計測し、同計測した濃度を表すデータを上記PROMエリアに書き込む。むろん、この作業が手順S11,S12に相当する。この後、当該印字ヘッド31aのシアン色インクを洗い流して空にし、プリンタ31を組み上げる。
一方、ユーザーの側ではプリンタ31を購入した後、各人のコンピュータシステムなどに接続してプリンタドライバなどをインストールするが、このときに色修正装置の適用例である色修正プログラムを記録されたフロッピーディスクやCD−ROMなどの媒体から当該色修正プログラムを読み込み、コンピュータシステムのハードディスク22などにインストールする。むろん、インストールはかかるフロッピーディスクやCD−ROMなどの具体的な媒体に限らず、モデム26を介して公衆通信回線などを介してインストールすることも可能である。
かかる色修正プログラムを起動させると、同コンピュータシステムはプリンタ31と通信し、プリンタコントローラ31eと印字ヘッドコントローラ31bを介して印字ヘッド31aのPROMエリアに記録されているデータを読み出す(手順S13)。このデータは上述したように実際に計測された濃度を表すデータであり、これが基準値より上回っていたり下回っていた場合には色修正ルックアップテーブルを作成し(手順S14)、次に、この色修正のためのルックアップテーブルを使って色変換ルックアップテーブルの値を書き換えて(手順S15)当該プログラムは終了する。従って、これにさかのぼってプリンタドライバがインストールされている必要があるが、色修正のためのルックアップテーブルを作成するだけでこのプログラムを終了しておき、プリンタドライバが起動されたときに色修正のためのルックアップテーブルを使って色変換ルックアップテーブルの値を書き換えるようにしてもよい。
一方、このようにして色変換ルックアップテーブルを書き換えておくことにより、アプリケーションなどから印刷を実行したときにプリンタドライバが起動されると、プリンタドライバは図13に示すステップS110にて色画像データを入力し、ステップS120にてこの色画像データ基づいて上記色変換ルックアップテーブルを参照する。この色変換ルックアップテーブルで参照されるCMYKデータにはプリンタ31における出力特性の偏差を見越して既に書き換えられているので、読み出されるCMYKデータはステップS130の色修正を完了したデータとなっている。
従って、ステップS140にて二値化し、ステップS150にてプリンタ31に印刷させたときには当該プリンタ31における印刷ヘッドユニット31a1の偏差によって生じるはずの色ずれが生じない。
この場合はコンピュータシステムに使用する例であるが、例えば、図8に示すようにかかる色修正システムをカラー印刷装置内に収容している場合にはハードウェアの調整をしなくても、電源をオンにしたときに手順S13,S14に示すような色修正ルックアップテーブルを作成し入力される色画像データを色修正して印刷するため、元の色に忠実な色で印刷することが可能となる。
一方、このように印字ヘッド31aにPROMエリアがないような場合や、あったとしても経年変化などによって色のずれを感じるようになった場合、さらには、色のついた紙に印刷したいといった場合には図17に示すような手順に従って色変換ルックアップテーブルを作成する。
すなわち、プリンタ31を購入した後、各人のコンピュータシステムなどに接続し、プリンタドライバのインストールを行なうとともに、色修正プログラムを起動する。すると、最初に図18に示すような五つの色偏りパッチを印刷する(手順S21)ので、この五つの色偏りパッチのうち、最もグレイに近いものを選択してコンピュータシステムに入力する(手順S22)。このときに(3)に示すパッチを選択しなかった場合には各要素色間に偏りがあるものと判断され、偏りのある要素色を所定のトーンカーブで修正するために修正レベルを異ならせたグレイスケールパターンを印刷するので(手順S23)、その中で最もグレイらしいものを選択して同様に入力する(手順S24)。
この時点で色修正プログラムはどの要素色についてどの程度で修正を掛けてやればプリンタ31における出力特性の偏差を打ち消すことができるかが分かるようになる。従って、かかる情報に基づいて色修正ルックアップテーブルを作成し(手順S25)、続いて色変換ルックアップテーブルを書き換える(手順S26)。
このようにして色変換ルックアップテーブルを書き換えておけば、先程の場合と同様に、アプリケーションなどから印刷を実行したときにプリンタドライバが起動されると、プリンタドライバは図20に示すステップS210にて色画像データを入力し、書き換えられた色変換ルックアップテーブルを参照することによってステップS220,S230の色修正と色変換とを同時に行う。そして、この後のステップS240にて二値化し、ステップS250にて印刷させたときには当該プリンタ31における印刷ヘッドユニット31a1の偏差によって生じるはずの色ずれが生じない。
このように、プリンタ31における出力特性の偏差を印字ヘッドユニット31a1のPROMエリアに書き込むとともに同PROMエリアを読み込んだり、あるいは所定の調整用パターンを印刷させるとともにその中からグレイに近いものを選択して入力させることにより、上記プリンタ31における出力特性の偏差を取得するとともに、この偏差を打ち消すように色変換すべく色修正ルックアップテーブルを作成して色変換ルックアップテーブルを書き換えておくことにより、実際に色画像データに基づいて印刷を行ったときに書き換えられた色変換ルックアップテーブルを参照して偏差を見越した色修正が行われるため、結果として印刷物における色は当該プリンタ31におけるハードウェアに既存した偏差は生じなくなり、忠実に色再現することが可能となる。