以下、図面を参照して本発明の実施形態を詳細に説明する。
図1は、本発明の一実施形態に係るインクジェットプリンタを模式的に示す図である。本実施形態のプリンタはフルラインタイプの記録装置であり、図1に示すように、プリンタの構造材をなすフレーム上に4つのノズル列101〜104を備える。ノズル列101〜104の夫々には、記録用紙106の幅に対応した同じ種類のインクを吐出する複数のノズルが、1200dpiのピッチでx方向に配列されている。ノズル列101〜104のぞれぞれは、ブラック(K)、シアン(C)、マゼンタ(M)、イエロー(Y)のインクを吐出する。これら複数種類のインクを吐出するノズル列101〜104が、図のようにy方向に並列することにより、本実施形態の記録ヘッドが画成されている。
記録媒体としての記録用紙106は、搬送ローラ105(および他の不図示のローラ)がモータ(不図示)の駆動力によって回転することにより、図中x方向と交差するy方向に搬送される。記録用紙106が搬送される間に、記録ヘッド101〜104それぞれの複数のノズルからは、記録用紙106の搬送速度に対応した周波数で、記録データに従った吐出動作が行われる。これにより、各色のドットが記録データに対応して所定の解像度で記録され、記録用紙106一頁分の画像が形成される。
Y方向における記録ヘッド101〜104よりも下流の位置には、記録ヘッド101〜104と並列する状態で所定のピッチで読み取り素子が配列したスキャナ107が配備されている。スキャナ107は、記録ヘッド101〜104で記録した画像を読み取り、RGBの多値データとして出力することが出来る。
なお、本発明を適用可能な記録装置は、以上説明したフルラインタイプの装置に限られない。例えば、記録ヘッドやスキャナを記録用紙の搬送方向と交差する方向に走査して記録を行う、いわゆるシリアルタイプの記録装置にも本発明を適用することはできる。
図2は、本発明の一実施形態に係る記録システムを示すブロック図である。同図に示すように、この記録システムは、図1に示したプリンタ100と、そのホスト装置としてのパーソナルコンピュータ(PC)300を有して構成される。
ホストPC300は、主に以下の要素を有して構成される。CPU301は、HDD303やRAM302に保持されているプログラムに従った処理を実行する。RAM302は、揮発性のストレージであり、プログラムやデータを一時的に保持する。HDD303は、不揮発性のストレージであり、同じくプログラムやデータを保持する。本実施形態では、後述する本発明特有のMCSデータも、HDD303に格納される。データ転送I/F(インターフェース)304はプリンタ100との間におけるデータの送受信を制御する。このデータ送受信の接続方式としては、USB、IEEE1394、LAN等を用いることができる。キーボード・マウスI/F305は、キーボードやマウス等のHID(Human Interface Device)を制御するI/Fであり、ユーザは、このI/Fを介して入力を行うことができる。ディスプレイI/F306は、ディスプレイ(不図示)における表示を制御する。
一方、プリンタ100は、主に以下の要素を有して構成される。CPU311は、ROM313やRAM312に保持されているプログラムに従い、後述する各実施形態の処理を実行する。RAM312は、揮発性のストレージであり、プログラムやデータを一時的に保持する。ROM313は不揮発性のストレージであり、後述する処理で使用するテーブルデータやプログラムを保持することができる。
データ転送I/F314はPC300との間におけるデータの送受信を制御する。ヘッドコントローラ315は、図1に示したそれぞれの記録ヘッド101〜104に対して記録データを供給するとともに、記録ヘッドの吐出動作を制御する。具体的には、ヘッドコントローラ315は、RAM312の所定のアドレスから制御パラメータと記録データを読み込む構成とすることができる。そして、CPU311が、制御パラメータと記録データをRAM312の上記所定のアドレスに書き込むと、ヘッドコントローラ315により処理が起動され、記録ヘッドからのインク吐出が行われる。スキャナコントローラ317は、図1に示したスキャナ107の個々の読み取り素子を制御しつつ、これらから得られたRGBデータをCPU311に出力する。
画像処理アクセラレータ316は、CPU311よりも高速に画像処理を実行可能なハードウェアである。具体的には、画像処理アクセラレータ316は、RAM312の所定のアドレスから画像処理に必要なパラメータとデータを読み込む構成とする。そして、CPU311が上記パラメータとデータをRAM312の上記所定のアドレスに書き込むと、画像処理アクセラレータ316が起動され、上記データに対し所定の画像処理が行われる。本実施形態では、後述されるMCS処理部で用いるテーブルのパラメータを作成する処理をCPU311によるソフトウェアで行う。一方、MCS処理部の処理を含む記録の際の画像処理については、画像処理アクセラレータ316によるハードウェア処理で行う。なお、画像処理アクセラレータ316は必須な要素ではく、プリンタの仕様などに応じて、CPU311による処理のみで上記のテーブルパラメータの作成処理および画像処理を実行してもよい。
以上説明した記録システムにおいて、複数種類のインクを用いて画像を記録する場合の、複数のノズル間の吐出特性のばらつきに起因して生じる色ずれを低減するための実施形態を以下に説明する。
図3(a)〜(c)は、従来のヘッドシェーディングを行った状態で、2色のインクの重ね合わせによって表現されるブルー画像を記録した際に発生する色ずれの様子を説明する図である。図3(a)において、102はシアンインクを吐出する記録ヘッド、103はマゼンタインクを吐出する記録ヘッドをそれぞれ示している。同図では、説明および図示の簡略化のため、それぞれの記録ヘッドにおける複数のノズルのうち8つのノズルのみが示されている。また、シアンおよびマゼンタインクによってブルーを記録する場合の色ずれを説明するため、シアンとマゼンタの2つの記録ヘッドのみが示されている。
シアンインクの記録ヘッド102の8つのノズル10211、10221は、総て標準的な量のインクを標準的な方向に吐出可能であり、記録媒体には同じ大きさのドットが一定の間隔で記録される。一方、マゼンタの記録ヘッド103の8つのノズルについても、吐出方向は全て正常であるが、図中左側の4つのノズル10311は標準の吐出量、右側の4つのノズル10321は標準よりも多い吐出量とする。よって、図中左側の領域(第1エリア)では、シアンドットと等しい大きさのマゼンタドットが記録されるが、右側の領域(第2エリア)では、シアンドットよりも大きいマゼンタドットが、シアンドットと等しい一定の間隔で記録される。
このような吐出量特性を有する記録ヘッドを用いる場合に、従来のヘッドシェーディングによって画像データの補正を行うと、マゼンタノズル10321に対応する画像データは、より低減する方向に補正される。その結果、最終的にマゼンタノズル10321が記録するドットの数が、マゼンタノズル10311が記録するドットの数よりも少なく抑えられるように、ドットの記録(1)或いは非記録(0)を定めるドットデータ(2値データ)が生成される。
図3(b)は、ベタ画像、すなわちシアンおよびマゼンタのいずれも100%デューティーの画像データに対してヘッドシェーディング補正を行った結果のドットデータに基づいて、記録を行った場合のドットの記録状態を示した図である。ここでは説明のため、シアンドットとマゼンタドットを重複させずに示している。図において、10611はシアンノズル10211によって記録用紙に記録されたドット、10621はシアンノズル10221によって記録用紙に記録されたドットを示している。また、10612はマゼンタノズル10311によって記録用紙に記録されたドット、10622はマゼンタノズル10321によって記録用紙に記録されたドットを示している。なお、図3(a)〜(c)では、個々のノズルの大きさと夫々のノズルによって記録されるドットの大きさを、等しい大きさで示しているが、これは説明上両者の対応をとるためであって、実際にこれらの大きさが等しいわけではない。
図3(b)では、マゼンタノズル10321によって記録用紙に形成されるドット面積が、マゼンタノズル10221によって形成されるドット面積の2倍である場合を示している。この場合、ヘッドシェーディングによって、マゼンタノズル10321の吐出回数を、マゼンタノズル10321の吐出回数の約1/2(4ドット→2ドット)に抑えれば、記録用紙に対するマゼンタの被覆面積をほぼ同等にすることが出来る。但し、このように、2倍の面積のドットの数を1/2に削減するのは本例で説明を簡潔にするためである。実際には、被覆面積と検出される濃度の関係は必ずしも比例関係にあるわけではない。よって、一般的なヘッドシェーディングでは、どのノズル領域でも検出される濃度がほぼ一様になる程度に、各領域に記録されるドット数が調整されるようになっている。
図3(c)は、ヘッドシェーディングによって得られたドットデータに基づいて記録した結果を、シアンドットとマゼンタドットを重複させて示した記録状態である。図3(c)において、記録用紙106における第1エリアには、標準サイズのシアンドットとマゼンタドットが重なって記録され、標準サイズのブルードット10613が形成されている。一方、第2エリアには、標準サイズのシアンドット10623と、標準サイズのシアンドットと2倍サイズのマゼンタドットが重なって形成されるブルードットとが、混在している。更に、標準サイズのシアンドットと2倍サイズのマゼンタドットが重なって形成されるブルードットでは、シアンとマゼンタが完全に重複しているブルーエリア10624と、その周囲にあるマゼンタエリア10625に分類することが出来る。
HS処理では、シアンエリア(ドット)10623の面積の和=ブルーエリア10624の面積の和=マゼンタエリア10625の面積の和となるように、記録されるドットの数が調整されている。よって、シアンエリア10623の光吸収特性とマゼンタエリア10625の光吸収特性の和によって観察される色が、ブルーエリア10624の光吸収特性によって観察される色と等しければ、当該領域はブルーエリア10624とほぼ同色に見える。その結果、記録用紙106において第1エリアのブルー画像と、第2エリアのブルー画像は同じ色に見える。
しかしながら、ブルーエリア10624のように異なる種類の複数のインクが重ねて形成される場合、そのエリアの光吸収特性によって観察される色は、複数のインクそれぞれのエリアの光吸収特性の和によって観察される色とは必ずしも一致しない。その結果、その領域全体は目標とする標準の色からの色ずれを生じ、結果として、記録用紙106において第1エリアのブルー画像と、第2エリアのブルー画像は異なる色として感知されてしまう。
なお、例えば、大、中、小の3段階のドットによって記録を行う4値の記録装置など、ドットの大きさを変更できる多値の記録装置でも、ノズル間の吐出量のばらつきによってそれぞれのサイズのドットの大きさにばらつきを生じることがある。この場合も、従来のヘッドシェーディングによる補正を施しても、上述と同様の理由によって色ずれを生じることがある。従って、2値の記録装置に限らず3値以上の多値記録装置にも本発明を適用することができる。
以下で説明する本発明の実施形態は、量子化前の、複数の色信号の組からなる画像データに対する補正処理によって、以上のような色ずれを低減するものである。
(第1実施形態)
図4(a)は、本発明の第1の実施形態にかかる、インクジェットプリンタが実行する画像処理の構成を示すブロック図である。すなわち、本実施形態は、図2に示したプリンタ100の制御、処理のための各要素によって画像処理部を構成する。なお、本発明の適用はこの形態に限られない。例えば、図2に示したPC300において画像処理部が構成されてもよく、あるいは画像処理部の一部がPC300において構成され、その他の部分がプリンタ100において構成されてもよい。
図4(a)に示すように、入力部401はホストPC300から受信した画像データを、画像処理部402へ出力する。画像処理部402は、入力色変換処理部403、MCS処理部404、インク色変換処理部405、HS処理部406、TRC処理部407、量子化処理部408を有して構成される。
画像処理部402において、先ず、入力色変換処理部403は、入力部401から受信した入力画像データを、プリンタの色再現域に対応した画像データに変換する。入力する画像データは、本実施形態では、モニタの表現色であるsRGB等の色空間座標中の色座標(R,G,B)を示すデータである。入力色変換処理部403は、各8ビットの入力画像データR,G,Bを、マトリクス演算処理や三次元LUTを用いた処理等の既知の手法によって、3要素から構成される色信号であるプリンタの色再現域の画像データ(R´、G´、B´)に変換する。本実施形態では、三次元ルックアップテーブル(LUT)を用い、これに補間演算を併用して変換処理を行う。なお、本実施形態において、画像処理部402において扱われる8ビットの画像データの解像度は600dpiであり、量子化処理部408の量子化によって得られる2値データの解像度は後述のように1200dpiである。
MCS(Multi Color Shading)処理部404は、入力色変換処理部403によって変換された画像データに対して補正処理を行う。この処理も後述するように、三次元ルックアップテーブルからなる補正テーブルを用いて行う。この補正処理によって、出力部409における記録ヘッドのノズル間で吐出特性にばらつきがあっても、それによる上述した色ずれを低減することができる。このMCS処理部404の具体的なテーブルの内容およびそれを用いた補正処理については後述する。
インク色変換処理部405は、MCS処理部404によって処理されたR、G、B各8ビットの画像データをプリンタで用いるインクの色信号データによる画像データに変換する。本実施形態のプリンタ100はブラック(K)、シアン(C)、マゼンタ(M)、イエロー(Y)のインクを用いることから、RGB信号の画像データは、K、C、M、Yの各8ビットの色信号からなる画像データに変換される。この色変換も、上述の入力色変換処理部と同様、三次元ルックアップテーブルに補間演算を併用して行う。なお、他の変換の手法として、上述と同様、マトリクス演算処理等の手法を用いることもできる。
HS(Head Shading)処理部406は、インク色信号の画像データを入力して、インク色ごとにそれぞれ8ビットデータを、記録ヘッドを構成する各ノズルの吐出量に応じたインク色信号の画像データに変換する処理を行う。すなわち、HS処理部406は、従来のヘッドシェーディング処理と同様の処理を行う。本実施形態では、一次元ルックアップテーブルを用いて本HS処理を行う。
TRC(Tone Reproduction Curve)処理部407は、HS処理された各8ビットのインク色信号からなる画像データに対して、インク色毎に、出力部409で記録されるドットの数を調整するための補正を行う。一般に、記録媒体に記録されるドットの数と、その数のドットによって記録媒体で実現される光学濃度は線形関係にない。よって、TRC処理部407は、この関係を線形にすべく各8ビットの画像データを補正して記録媒体に記録されるドットの数を調整する。
量子化処理部408は、TRC処理部407で処理された各8ビット256値のインク色の画像データに対して量子化処理を行い、記録「1」または非記録「0」を表す1ビットの2値データを生成する。本発明を適用する上で、量子化408の形態は特に限定されるものではない。例えば、8ビットの画像データを、直接2値データ(ドットデータ)に変換する形態であってもよいし、一度数ビットの多値データに量子化してから、最終的に2値データに変換する形態であっても良い。また量子化処理方法も、誤差拡散法を用いてもよいし、ディザ法など他の疑似中間調処理を用いてもよい。
出力部409は、量子化によって得られた2値データ(ドットデータ)に基づいて、記録ヘッドを駆動し記録媒体に各色のインクを吐出して記録を行う。本実施形態において、出力部409とは、図1に示した記録ヘッド101〜104を備えた記録機構によって構成される。
図5(a)および(b)は、図4(a)に示したMCS処理部404で用いるテーブルの補正パラメータを生成する工程と、実際の記録時に生成した補正パラメータを用いて画像処理を行う工程を、それぞれ説明するためのフローチャートである。
図5(a)は、MCS処理部404で用いる三次元ルックテーブルの補正パラメータを生成するために、CPU311が実行する各工程を説明するためのフローチャートである。本実施形態において、このようなパラメータ生成処理は、プリンタの製造時に行うほか、後述するように、吐出特性の変動により色むらが懸念される適切なタイミングで行う。当該処理はいわゆるキャリブレーションとして行うことができ、これにより、ルックアップテーブルの内容であるテーブルパラメータが更新される。尚、後述するように、記録媒体上でのインクの発色は記録媒体の種類に応じても異なることから、本実施形態では、複数種類の記録媒体毎に上記のルックアップテーブルを備える構成となっている。以下、図5(a)に記載の、補正パラメータを生成し設定する一連の工程を本明細書では便宜上キャリブレーションと称する。
図5(b)は、プリンタで記録を行う際にその記録データ生成のために、画像処理アクセレータ316が、図4(a)に示した画像処理部402の画像処理の一環として実行する、MCS処理部404の工程を示したフローチャートである。
まず、図5(a)に示すテーブルパラメータを生成するための処理について説明する。本実施形態において、MCS処理部のテーブルパラメータは、HS処理部406のテーブルパラメータが作成されていることを前提に、作成される。このため、本処理が起動されるステップS501の時点では、既にHS処理部のテーブルパラメータは既知の方法によって生成(更新)されている。HS処理部のテーブルパラメータの生成では、インク色ごとに、記録媒体で表現される濃度のばらつきを抑えるため、例えば吐出量の大きいノズルは吐出回数を抑えるように、吐出量の少ないノズルは吐出回数を増やすように、補正パラメータが作成される。よって、例えば図3(a)に示すマゼンタヘッド103のノズル10321については、図3(b)に示すように、ドット数が約半数に抑えられるようなパラメータが作成される。また、シアンヘッド102については、図3(b)に示すように、ドット数が変更されないようなパラメータが作成される。以上のように、本実施形態では、MCS処理部のテーブルパラメータを生成ないし更新するときは、その前にHS処理部のテーブルパラメータを完成させておく。これにより、MCS処理部の補正パラメータ生成のときに、ノズル間の吐出特性のばらつきによる色ずれを、MCS処理部とHS処理部のトータルの処理によって適切に低減することができる。
MSC処理部のテーブルパラメータ生成処理が開始されると、まず、ステップS502で、図1に示した各記録ヘッドの総てのノズルからインクを吐出して記録媒体に測定用画像(パッチ)を記録する。この場合、R、G、Bそれぞれについて、信号値0〜255を、例えば17等分し、17×17×17通りの全ての組合せ(格子点)についてパッチを記録しても良い。また、メモリ及び作業時間を縮小するため、上記格子点のうち、吐出特性によって色ずれが特に大きく変化しやすい格子点を選択し、これらの格子点に対応するR、G、Bの組についてのみ、パッチを記録してもよい。本実施形態では、測定用画像を記録する色(格子点)として、吐出量に応じて色ずれが所定以上大きくなるR、G、Bの組を定め、演算負荷やメモリ容量に応じて、パッチの種類(色信号の組)や数を定めている。
以下、図4(a)に対応付けて、測定用画像の記録方法を説明する。パッチを記録する際、選択された数組の画像データ(R,G,B)は、入力色変換処理部403の処理を施された画像データ(以下、デバイス色画像データD[X]という)として、MCS処理部404の処理を経ずに、インク色変換処理部405に入力する。このような経路は、図4(a)においてバイパス経路として破線410で示されている。バイパス経路による処理は、例えば入力値=出力値となるようなテーブルを用意し、デバイス色画像データD[X]はMCS処理部404に入力されるが、Xによらず入力値のまま出力されるような処理が行われてもよい。
その後、HS処理部406、TRC処理部407、量子化処理部408にて、通常データと同様の処理を施し、出力部409で記録用紙106に測定用画像を記録する。この過程で、(R,G,B)で表される測定用画像の画像データは、インク色変換処理部405によってインクの色信号による画像データ(C,M,Y,K)に変換される。この際、例えば測定用画像の画像データのひとつにR=0、G=0、B=255が含まれていれば、その信号値は、(K、C、M、Y)=(0、255、255、0)の画像データ、すなわち、シアンおよびマゼンタが100%ずつ記録されるデータに変換される。その後、HS処理部406およびそれ以降の処理によって、(K、C、M、Y)=(0、255、255、0)の画像データは、図3(b)に示すドットデータとなって記録される。以下の説明では、説明を簡略化するため、このブルーの測定用画像の画像データを示す格子点に対応したテーブルパラメータのみについてその作成処理を説明する。
ここで、Xとは、図1で示した記録ヘッド101〜104において、x方向における各色のノズルの位置を4ノズル単位で規定する情報である。本実施形態のMCS処理では、このように4ノズルごとに分割した単位で処理を施し、4ノズル単位で画像データを補正する。そして、デバイス色画像データD[X]とは、各インク色のXに相当する4ノズルで記録するべき画像データである。
図6(a)および(b)は、上記ステップS502における測定用画像の記録状態を説明するための図である。図6(a)および(b)において、図3(a)〜(c)に示した要素と同様の要素には同じ符号を付してその説明は省略する。
図6(a)は、図3(a)と同様、マゼンタの記録ヘッド103のノズルのうち第2エリアに相当する4つのノズルが標準より多い吐出量である場合を示している。よって、ブルーを示す画像データ(K、C、M、Y)=(0、255、255、0)に、HS処理が施されることによって、図6(b)に示すようなブルーの測定用画像が記録される。すなわち、吐出量が標準より多いノズルを含む第2エリアに色ずれが生じ、第1エリアの標準的なブルーとは異なる発色のパッチが記録される。
再び図5(a)を参照する。ステップS503では、ステップS502で記録用紙106に記録された測定用画像を、スキャナ107で測定し、各エリアXに対応する色情報B[X](RGBデータ)を得る。本実施形態において、スキャナの解像度すなわちスキャナに配列する読み取り素子の配列ピッチは特に限定されるものではない。記録ヘッドの記録解像度1200dpiより高解像であってもよいし低解像であっても良い。また、スキャナ107は、図1で示したように、必ずしも記録ヘッドと同様のフルラインタイプでなく、図1のx方向に移動しながら所定の周期で側色を行うシリアルタイプのものであっても良い。また、プリンタとは別体に用意されているスキャナであっても構わない。この場合、例えば、スキャナとプリンタを信号接続しスキャナから測定結果を自動的に入力するようにしてもよい。更に、色情報B[X]は、必ずしもRGB情報でなくてもよく、例えば、測色器で測定したL*a*b*等、いずれの形式であってもよい。どのような形態でどのような解像度で側色を行うにせよ、平均化などの様々な処理を施すことによって、4ノズル分に相当するエリアの側色結果B[X]が適切に得られれば、本実施形態に適用することが出来る。
このように、デバイス色画像データD[X]が(R、G、B)=(0、0、255)である格子点のブルーの測定用画像は、図1に示したシアンおよびマゼンタの記録ヘッド102および103によって記録される。そして、スキャナ107によって、4つのノズルに対応したエリアの単位で、色情報B[X]が取得される。
以下、第1エリアをX=1、第2エリアをX=2として、また、第1エリアの色情報をB[1]=(R1、G1、B1)、第2エリアの色情報をB[2]=(R2、G2、B2)として説明する。
ステップS504では、目標色A=(Rt、Gt、Bt)とステップS503で取得した色情報B[X]から、各エリア[X]の色ずれ量T[X]を算出する。ここで、目標色Aとは、(R、G、B)=(0、0、255)信号を本実施形態のプリンタで記録および側色した場合の目標となる側色値であり、実際には標準吐出量のノズルを用いて記録した画像をスキャナ107で測色した結果とすることが出来る。
すなわち、色ずれ量Tは次のように表すことが出来る。
色ずれ量T[1]=B[1]−A=(R1−Rt、G1−Gt、B1−Bt)
色ずれ量T[2]=B[2]−A=(R2−Rt、G2−Gt、B2−Bt)
本例において、第1エリアは、シアンもマゼンタも標準吐出量であるので、基本的にR1=Rt、G1=Gt、B1=Btとなり、色ずれ量はT[1]=0となる。一方、第2エリアは、シアンは標準吐出量であるがマゼンタは標準より大きな吐出量で記録されるので、どうしても目標色(Rt、Gt、Bt)とは異なる値が検出される。例えば、R2<Rt、G2=Gt、B2=Btのように、ここでの発色が目標のブルー色と比べてシアン色が強い場合、T[2]=((R2−Rt≠0)、0、0)となる。
次のステップS505では、各エリア[X]の色ずれ量T[X]から、補正値T-1[X]を算出する。本実施形態では簡単に、逆変換式を用い、
T-1[X]=−T[X]
として補正値を得る。従って、第1エリアおよび第2エリアそれぞれの補正値は、
T-1[1]=−T[1]=A−B[1]=(Rt−R1、Gt−G1、Bt−B1)
T-1[2]=−T[2]=A−B[2]=(Rt−R2、Gt−G2、Bt−B2)
となる。ここで、T[1]=0であるから、第1エリアに対する補正値T-1[1]=0となる。一方、T[2]=((R2−Rt≠0)、0、0)であるから、第2エリアに対する補正値T-1[2]=((Rt−R2≠0)、0、0)となる。R2<Rtの場合、Rt−R2は正の値となり、赤みを強くしシアン色を減少させる補正となる。逆にR2>Rtの場合、Rt−R2は負の値となり、赤みを弱くしシアン色を増加させる補正となる。
ステップS506では、各エリアの補正値T-1[X]から、等価補正値Z-1[X]を算出する。等価補正値とは、測色空間中で得られた補正値T-1[X]を、本実施形態で使用するデバイス空間において実現するための補正値であり、MCS処理部のテーブルパラメータとなる。第1エリアについては、測色空間中の補正値T-1[1]=0であるので、デバイス空間における等価補正値Z-1[1]も0である。一方、第2エリアについては0ではない値が得られ、本例ではデバイス空間におけるシアン色を減少させる補正値となる。
仮に、測定色空間とデバイス色空間が完全に一致している場合には、
Z-1[1]=T-1[1]=−T[1]=A−B[1]=(Rt−R1、Gt−G1、Bt−B1)
Z-1[2]=T-1[2]=−T[2]=A−B[2]=(Rt−R2、Gt−G2、Bt−B2)
となる。しかし、一般的には一致していないこと多いので、色空間変換を行う必要が生じる。この時、両色空間の間で線形変換が可能な場合には、次のようなマトリクス変換等の既知の手法を用いて等価補正値を算出することができる。
ここで、a1〜a9は、測定色空間をデバイス色空間に変換するための変換係数である。
一方、両色空間の間で線形変換が不可能な場合には、三次元ルックアップテーブル方式等の既知の手法を用いて、
Z-1[1]=F(Rt−R1、Gt−G1、Bt−B1)
Z-1[2]=F(Rt−R2、Gt−G2、Bt−B2)
と求めることもできる。ここで、Fは測定色空間をデバイス色空間に変換するための関数であり、ルックアップテーブルの変換関係がこの関数Fに従ったものである。
また、補正値T-1[X]と等価補正値Z-1[X]の関係が色によって異なる場合には、同様に、三次元ルックアップテーブル方式等の既知の手法を用いて、
Z-1[1]=F(Rt、Gt、Bt)−F(R1、G1、B1)
Z-1[2]=F(Rt、Gt、Bt)−F(R2、G2、B2)
と求めることもできる。ここでも、Fは測定色空間をデバイス色空間に変換するための関数である。
以上のようにして、色ずれの傾向が大きく変化する色として選択された格子点について、ノズルに対応したエリア[X]ごとにテーブルパラメータを求めることができる。そして、上記選択された格子点以外の他の格子点のテーブルパラメータについては、上記選択された格子点の間の補間によって求めることができる。この補間によって求める方法は公知の方法を用いることができ、その説明は省略する。
以上のように求められた、各格子点のテーブルパラメータである等価補正値Z-1[X]は、エリア[X]ごとに、その格子点に対応させてメモリに記憶される(補正パラメータ設定)。この時格納されるメモリは、本実施形態ではホストPCのHDD303とするが、プリンタ本体に用意された不揮発性のメモリであってもよい。いずれにしても、作成したテーブルパラメータが、電源OFFしたタイミング等で失われたりしないように取り扱われるのが好ましい。以上で、キャリブレーション処理が終了する。
次に、図5(b)に示すMCS処理部404が実行する処理の工程について説明する。本工程は、通常の記録動作の際に、図4(a)に示す一連の画像処理に従って画像処理アクセレータ316が行う工程の一部であり、図4(a)においては、MCS処理部403にて実行される工程が相当する。
最初に、画像処理アクセレータ316は、ステップS507において、デバイス色画像データD[X](第1の色信号)に対し、図5(a)のようにして作成したテーブルパラメータ、すなわち等価補正値Z-1[X]を用いて、補正を行う。
ここでは、先ず、画像処理の対象である注目画素が、上述したエリア[X]のうちどのエリアに含まれているか、すなわちXの値を判断する。ここで、各エリア[X]は1200dpiの4ノズル分の領域に対応している一方、画像処理における画素の解像度は600dpiであるので、各エリアXには、x方向に2つずつの画素が対応することになる。
注目画素が含まれるエリア[X]の値X=nを得ると、このエリア[n]に対応して作成されたテーブルを参照することにより、注目画素の画像データが示す(R、G、B)から等価補正値Z-1[n]が取得できる。例えば、注目画素の画像データが示すR、G、Bがブルー(0、0、255)であった場合、上述したようにしてエリア[n]に対応するブルー(0、0、255)の等価補正値Z-1[n]が得られる。そして、注目画素の画像データに対して、下記式に従って等価補正値Z-1[n]を加算し、補正後のデバイス色画像データD´[X](第2の色信号)を得る。すなわち、第1の色信号D[X]と第2の色信号D´[X]の関係は以下のようになる。
デバイス色画像データD´[1]=D[1]+Z-1[1]
デバイス色画像データD´[2]=D[2]+Z-1[2]
本例の場合、第1エリアについてはZ-1[1]=0である。従って、D´[1]=D[1]となり、第1エリアの画像データについては、MCS処理における補正は事実上施されない。一方、第2エリアについてはZ-1[2]≠0である。従って、MCS処理において、D´[2]はD[2]よりもシアン色を減少させるような補正が施される。
続くステップS508において、画像処理アクセレータ316は、ステップS507で得られたデバイス色画像データD´[X]に対し、インク色変換処理部405、HS処理部406、TRC処理部407、量子化処理部408による、処理を施す。そして得られた2値データに従って、出力部409によって記録用紙106にドットを記録する。
図7(a)および(b)は、図5(b)のステップS508で記録された画像例を説明する図である。図7(a)は、図6(a)と同様、シアンおよびマゼンタの記録ヘッド102、103におけるノズルの吐出量特性を示す。一方、図7(b)は、本実施形態のMCS処理を行った結果得られるドットの記録状態を、図6(b)で示したHS処理のみを行った結果得られる記録状態と比較して説明するための図である。HS処理のみを行った図6(b)の状態でシアンの色身が強いと判断された第2エリアについては、D[2]よりもシアンの色味が削減されたD´[2]が生成されるようなMCS処理が行われる。その結果、図6(b)で示したHS処理のみを行った結果の記録状態よりも、シアンドット10624の数が低減されている。
D´[1]およびD´[2]に従って実際に記録を行った記録紙上の第1エリアおよび第2エリアでは、吐出量のばらつきなどに起因して、どうしてもある程度の色ずれT[X]は発生するが、目標色Aに十分近い色となる。
第1エリアの実際の発色=D´[1]に対応する紙面上の色+T[1]≒A
第2エリアの実際の発色=D´[2]に対応する紙面上の色+T[2]≒A
ここで、D´[1]は理想的には目標色Aと等しく、T[1]は理想的には0である。また、D´[2]は目標色Aに対してT[2]相当のシアン色が減少したブルー色であり、T[2]はシアン色を増大させるずれ量である。このようにして、第1エリアと第2エリアのブルー色はほぼ同じ色となり、両者の色ずれの差に起因した色むらを低減することができる。
以上説明したように、本実施形態は、色ずれ傾向が大きく変化する色(R、G、Bの組)について記録媒体に測定用画像(パッチ)を記録し、その測定結果に基づいてテーブルパラメータを求める。一般に、色ずれ傾向とは、(1)記録する色そのもの、および(2)記録媒体に対する各色インクの記録特性、の両方に依存する。(1)については、例えば、同じように吐出量のばらつきがあっても、レッドよりもブルーの色ずれの方が目立ちやすい、というようなことである。また、(2)については、吐出量のほか、吐出方向、ドットの形状、浸透率、記録媒体の種類等のように、ドットの大きさや濃度、また重複されたドットにおける各インク色の発色など、に影響を与える要素のことを示す。
なお、色ずれ量は、その色を記録するのに用いられるインク色の記録特性の組み合わせに依存するものであって、用いられないインク色の記録特性には依存しないことは明らかである。つまり、関連するインク色の種類と数は画素毎に異なり、画素によっては1つのインク色しか関連せず、色ずれ量が発生しない場合も有り得る。
また、以上では、同一のエリアに含まれるマゼンタの4つのノズルが総て標準より大きな吐出量である場合を例に説明したが、1つのエリアの中で各ノズルの吐出特性がまちまちであることは十分あり得る。このような場合であっても、同一エリアにおける平均の色ずれ量を取得し、この色ずれを4つのノズルの全てによって補正するような処理を行えば、上述した効果を得ることが出来る。
ところで、記録装置で用いる各インク色の単色で表現できるデータについては、既にHS処理によって濃度が調整されているので、色ずれは発生しない。よって、当該色については、MCS処理部404による補正が必要なくなる。このような状態を、測定色空間とデバイス色空間が完全に一致していた場合を例に、以下に具体的に説明する。
測定色空間とデバイス色空間が完全に一致していた場合、色信号(R=0、G=255、B=255)は、インク色変換処理部において(C=255、M=0、Y=0、K=0)に変換される。シアン単色(C信号)についてはHS処理の一次変換によってすでに適切な濃度調整が行われているので、HS処理で調整された以上にシアンデータを変化させたり、他色データを追加したりしないほうが良い。すなわち、このようなデータを有する場合には、第1エリアおよび第2エリアに対する等価補正値は、Z-1[1]=Z-1[2]=0=(0、0、0)とするのがよい。マゼンタ100%データ(R=255、G=0、B=255)についても、同様である。これに対し、ブルー100%(R=0、G=、B=255)については、記録装置で用いる単色インクで表現できるデータではなく、シアンインクとマゼンタインクの組み合わせによって表現される。よって、図3を用いて既に説明したとおり、HS処理を行っても色ずれが発生する可能性はある。このため、図6(b)に示す例では、
等価補正値Z-1[1]=0=(0、0、0)
等価補正値Z-1[2]=T-1[2]=(Rt−R2、Gt−G2、Bt−B2)≠(0、0、0)となり、MCS処理によって適切な補正が行なわれる。
このように、RGBの三次元空間においては、MCS処理が必要とされる格子点や、必要とされない格子点が存在し、補正の程度も信号値(格子点の位置)によって様々である。従って、色空間の全域で色ずれを抑制したい場合には、2色以上のインクを用いて表現される全てのRGB値について、MCS処理の補正信号値を用意することが望まれる。しかしながら、全てのRGBの組み合わせでパッチを記録したり側色を行ったり、補正値の算出を行なったり、得られた補正値を記録する領域を用意したりすると、処理の負荷が増大し、メモリの大容量化や処理時間の増大化が招致される。よって、本実施形態のように、RGB空間において特に色ずれの補正が必要とされるいくつかの色を選択し、当該色に相当する信号値で測定用画像(パッチ)を記録し、それぞれの等価補正値を取得してテーブルを作成するのが好ましい。但し、特に色ずれの傾向が大きい色が限定されないような場合には、例えば図8に示すように、RGB空間において等間隔に座標を取った27個の格子点それぞれについて、補正値を求める形態であってもよい。いずれにしても、幾つかの特定色信号についてパッチを記録し、そのパッチから得られる補正値をもとにテーブルパラメータを作成すればよい。このようにすれば、実際に画像を記録する際には、複数の飛び飛びのパラメータ情報から補間処理を行って所望の信号値に対応するパラメータを用意することが出来る。
また、以上説明した方法では、テーブルパラメータを作成するに当たり、実際に記録したパッチの測色結果と目標色との差分を算出して、テーブルパラメータを生成する方法で説明したが、補正パラメータの生成方法はこれに限られるものではない。例えば、図8に示すような格子点それぞれについて記録したパッチを測色した結果から、記録装置で表現されるRGB色空間のアウトラインを把握し、目標色を実現するための信号値を推定して、これを補正後のデータとすることも出来る。以下、具体的に説明する。
図8はRGB色空間を表しており、801はレッド軸、802はグリーン軸、803はブルー軸を示している。黒丸で示した格子点は、レッド、グリーン、ブルーについて、0、128および255のいずれかの成分を有する27個の格子点である。本例では、これら27個の格子点それぞれの信号値に基づいてパッチを記録し、エリアごとに測色を行う。測色の結果得られた色をここではデバイス色(Ri、Gi、Bi)と称す。27個のパッチから得られる27個のデバイス色を基に補間処理を行うと、エリアごとのデバイス色空間が得られる。このようなデバイス色空間は、図8のような等間隔且つ平行な直線で構成される色空間とは異なり、一般に、歪んだアウトラインを有する色空間となる。そして、このようなデバイス色空間を利用すると、全ての目標色(Rt、Gt、Bt)に対するエリアごとのデバイス色(Ri、Gi、Bi)を推定することが出来る。また反対に、目標色(Rt、Gt、Bt)に最も近づけるために入力させるべき信号値(Rn、Gn、Bn)をエリアごとに求めることも出来る。すなわち、このようなエリアごとのデバイス色空間を用いて、入力信号(Rt、Gt、Bt)を(Rn、Gn、Bn)に変換するようなテーブルパラメータを作成することが出来る。
以説明したようなキャリブレーション処理および実画像記録時のMCS処理を行うことにより、ノズル間の吐出特性のばらつきに起因して生じる色むらを低減することが可能となる。
ところで、背景技術の項でも説明したように、ノズルの吐出特性および色むらの程度は、個々のノズルの吐出の頻度やその累計に応じて変化する。よって、ある程度長期間使用するプリンタで色むらの目立たない良好な画像を維持するためには、図5(a)で説明したようなキャリブレーション処理は繰り返し行うことが好ましい。この際、あまり頻繁にキャリブレーションを行い、インクや記録媒体あるいはキャリブレーションのための時間を必要以上に消費することは回避したい。その一方で、実画像に色むらが表れる前の、キャリブレーションに適切なタイミングをユーザが判断するのも困難である。よって、本実施形態では、画像処理装置が記録ヘッドにおける個々のノズルの吐出特性の変化を予測判断し、適切なタイミングでキャリブレーションを実行する。
図9は、プリンタのCPU311が実行するキャリブレーション実行判定処理を示すフローチャートである。当該判定処理は、例えば、装置の立ち上げ時、前回の判定処理から所定時間経過したタイミング、所定の記録量(記録媒体数、インク量)の記録が行われたタイミングなどで行うことができる。
本処理が開始されると、CPU311は、まずステップS901において、現時点における個々のノズル領域の吐出量推定値を取得する。取得方法としては、例えば記録ヘッドに配列するノズルの濃度分布が判るような特定パターンを記録媒体に記録し、図1中のスキャナ105で記録したパターンの濃度分布を読み取る方法が挙げられる。この場合、読み取った濃度と吐出量推定値を1対1で対応させたテーブルを事前に用意し、当該テーブルを参照することによって読み取り結果を吐出量推定値に変換することが出来る。ここで、ノズル領域Xにおける現時点でのシアンの吐出量推定値をClat[X]とする。同様に、マゼンタはMlat[X]、イエローはYlat[X]、ブラックはKlat[X]とする。
次にステップS902では、本プリンタが以前にキャリブレーションを実行済みであるか否かを判断する。例えば最初のキャリブレーション処理を実行する際に図5(a)の工程の後にフラグなどを立てておけば、CPU311は当該フラグの有無によってこのような判断を行うことが出来る。ステップS902で、以前にキャリブレーション処理を行ったことがあると判断した場合は、ステップS903に進む。一方、以前にキャリブレーションを行ったことが無いと判断した場合は、ステップS906にジャンプする。
ステップS903では、前回のキャリブレーションの際に記憶した各記録ヘッドにおける個々のノズル領域の吐出量推定値を読み出す。この吐出量推定値は、特にインクの質量や体積を表す単位を持つ物理量に限定されるものでなく、個々のノズル領域の吐出量に準ずる値であって、後述する様々な変換処理によって、個々のノズル領域の相対的な色ずれ量の目安となるうる値であればよい。また、吐出量推定値は、本処理が行われるたびに読み出されたり書き換えられたりするもので、ホストPC300中であればHDD303、プリンタ本体100中であればRAM312等の更新可能な領域に保持される。ここで、例えばノズル領域Xにおけるシアンの吐出量推定値をCprev[X]とする。同様に、マゼンタはMprev[X]、イエローはYprev[X]、ブラックはKprev[X]とする。
続くステップS904では、ステップS901で取得した現時点での吐出量推定値と、ステップS903で読み出した前回のキャリブレーション時点での吐出量推定値の差(変位)を、個々のノズル領域で求める。すなわち、
dc[X] = Cprev[X] - Clat[X]
dm[X] = Mprev[X] - Mlat[X]
dy[X] = Yprev[X] - Ylat[X]
dk[X] = Kprev[X] - Klat[X]
となる。ここで、dc[X]の絶対値はノズル領域Xにおける前回キャリブレーションを行った時点から現時点までのシアンインクの吐出量推定値の変位量(吐出量変化量)となる。更に、ノズル領域毎に、全インク色の吐出量変化量の和α[X]、すなわち、
α[X] = |dc[X]|+ |dm[X]|+ |dy[X]|+ |dk[X]|
を求める。そして、全てのノズル領域Xの中で吐出量変化量の和α[X]の最大値を求め、これを色ずれ量評価値αとする。すなわち、
α = max(α[1], α[2], α[3]・・・α[Xmax])
と表すことが出来る。ここで、Xmaxは、記録ヘッドに含まれる全ノズル領域数に相当する。
色ずれ量評価値αが大きいほど、複数のノズル領域の中のいずれかに、吐出量推定値が大きく変化し色むらが懸念される領域が存在していることを示す。
ステップS905では、色ずれ量評価値αが所定の閾値を越えているか否かを判断する。色ずれ量評価値αが所定の閾値を越えている場合、キャリブレーション処理が必要と判断し、ステップS906へ進む。一方、色ずれ量評価値αが所定の閾値を越えていない場合、まだキャリブレーション処理は必要ないと判断し、本処理を終了する。
ステップS906では、図5(a)示した工程に従って、キャリブレーション処理を実行する。
続くステップ907では、ステップS901で取得した吐出量推定値を所定のメモリ領域に記憶する。以上で本処理が終了する。
なお、以上の説明ではα[X]を吐出量変化量の和すなわち各色の吐出量変化量の一次結合で定義したが、α[X]は下記のような多項式で定義しても良い。
α[X] = a×[dc[X]]2+b×[dm[X]]2+c×[dy[X]]2+d×[dk[X]]2
ここで、a、b、c、dは定数である。
また、吐出量の変位によって色むらの影響がどの程度現れるかは、表現しようとする色相に応じて連続的に且つ複雑に変化する。従って、色むらの程度を見極めるためのパラメータα[X]については、実際には、スキャナで読み取った値に対し上述したような1次式や2次式などを用いて正確に定義できるものではない。このような状況を踏まえ、予めCMYKの4次元ルックアップテーブルを用意することにより、α[X]を各色の吐出量変化量から直接求めるようにしてもよい。このとき、
α[X]= 4D_LUT [dC[X]][dM[X]][dY[X]][dK[X]]
と表すことが出来る。上記4次元のルックアップテーブルは、各色の吐出量を変化させながら記録した複数のテストパターンを測色することにより、実験室レベルで予め作成しておくことが出来る。このような4次元のルックアップテーブルを用意しておけば、実測値に即した信頼性の高いα[X]を吐出量変化量から導き出すことが出来る。
以下、「吐出量の変動によって色むらの影響がどの程度現れるかは色相に応じて連続的に変化する」ことの理由を、具体的に説明する。
図13は、図4(a)で説明したインク色変換処理部への入力信号値(RGB)の一部と、TRCからの出力信号値を記録デューティに変換した結果の関係を示す図である。ここでは、入力信号値(RGB)の一部として、マゼンタ(255,0,255)〜ブルー(0,0,155)〜シアン(0,255,255)の色領域に対する、シアンインクとマゼンタインクの記録デューティをそれぞれ示している。ここで、記録デューティとは、プリンタの記録解像度で配列する全画素数に対し、標準吐出量のインク滴を付与する画素の割合を示す。従って、例えば、全画素に1つずつの標準吐出量のシアンインクを記録する状態では、シアンの記録デューティは100%となる。図からわかるように、マゼンタ領域ではマゼンタ50%シアン0%であった記録デューティが、ブルー領域に向けて徐々に変化し、ブルー領域ではマゼンタ・シアンともに37.5%となっている。そして、シアン領域ではマゼンタ0%シアン50%となっている。このように、インクの記録デューティは、色相に応じて連続的に変化する。
一方、表1は、シアンおよびマゼンタの吐出量が標準吐出量から変化した場合の記録媒体に対する記録デューティの変化量を示した図である。
表中「標準吐出量時の記録デューティ(%)」は、図13のシアンインクとマゼンタインクの記録デューティを表す。また、「吐出量の変化時の記録デューティ変化」は、シアンインク若しくはマゼンタインクの吐出量が変化した3つのケースにおける、記録デューティの変化を示す。ここで、第一のケースは、シアンインクの吐出量が15%増加した場合を示している。第二のケースは、シアンインク・マゼンタインクの両方の吐出量が10%増加した場合を示している。また、第三のケースは、マゼンタインクの吐出量が15%増加した場合を示している。そして、シアンインク及びマゼンタインクそれぞれの記録デューティの変化と、シアンインクとマゼンタインクの合計(Total)での記録デューティの変化例を、上記3つの記録色について示している。
表1から判るように、第一のケースではシアン色(R=0,G=255,B=255) 、第二のケースではブルー色(R=0,G=0,B=255)、第三のケースではマゼンタ色(R=255,G=0,B=255)、での記録デューティの変化が一番大きい。このように、吐出量の変動によって色むらの影響がどの程度現れるかは、表現する色相に応じて連続的に変化する。
更に、実際の記録媒体での発色は記録媒体に対する複数インクの付与の間隔など、様々な要因に応じて複雑且つ非線形に変化し、上述したような一次式や多項式のような変換式を用いる方法では、色むらの程度を判断するのにその正確性が十分ではないことも多い。これに対し、上述したような4次元のLUTを予め実験室レベルで用意しておけば、吐出量変化量から実測値に即したα[X]を1対1で導き出すことが出来るので、キャリブレーションを実行すべき適切なタイミングをより正確に判断することが出来るのである。
但し、4次元のLUTは元々多くのメモリ領域を必要とする上に、このような変換手段は後述するように記録媒体の種類ごとに設けておくことが好ましい。この場合、キャリブレーション実行判定処理のために莫大なメモリ領域が占有され、あまり現実的ではない場合もある。よって、α[X]を上記1次式や多項式のような変換式で求めるか、あるいは4次元LUTで求めるかは、キャリブレーション実行判定の正確性やメモリ容量などとのバランスによって、プリンタのスペックなどに応じて適宜選択されればよい。
ところで、実際の記録媒体での発色は、記録媒体の種類に応じても異なることが知られている。よって、上記変換式や多次元のルックアップテーブルは各記録媒体の種類の分だけ用意しておくことが好ましい。4次元LUTの場合、記録媒体の種類がn種類あるとすると、各記録媒体のα1[X]、α2[X]・・αn[X]をそれぞれ以下のように表すことが出来る。
α1[X]= 4D_LUT[media#1][dC[X]][dM[X]][dY[X]][dK[X]]
α2[X]= 4D_LUT[media#2][dC[X]][dM[X]][dY[X]][dK[X]]
αn[X]= 4D_LUT[media#n][dC[X]][dM[X]][dY[X]][dK[X]]
そして、プリンタのα[X]をこれらn種類の記録媒体に対応するα1[X]、α2[X]・・αn[X]の中の最大値とすると、α[X]は以下のように表すことが出来る。
α[X] = max(α1[X], α2[X] ,α3[X]・・・ αn[X])
このように、複数の記録媒体に対してそれぞれの4次元テーブルあるいは変換式を用意することにより、記録装置がサポート可能な記録媒体の全体に渡って色むらの発生を事前に抑えることが可能となる。また、記録媒体の種類が増減した場合にも、上記のように記録媒体ごとにαi[X](i=1〜n)が管理されている構成であれば、特に大掛かりな修正を行うこともなく、キャリブレーション実行判定処理を柔軟に対応させることが出来る。
なお、以上では、個々の記録媒体でαi[X]を求めこれら評価値の中の最大値をα[X]としたが、記録媒体ごとに評価値を管理し、実際に記録を行おうとする記録媒体の種類ごとに、キャリブレーションの実行の可否を逐次判定する構成であっても構わない。
以上説明した本実施形態によれば、記録ヘッドに配列するノズルの濃度分布が判るような特定パターンを記録し、その濃度分布から吐出量推定値の変位量ひいては色むらの程度を推測する。この際、上記特定パターンは、記録ヘッドの数すなわち使用するインクの数だけ記録すればよい。従って、実際に図5(a)に示したようなキャリブレーション処理を実行して、例えば17×17×17通りの全ての組合せ(格子点)についてパッチを記録する場合に比べて、格段にその処理時間や消費する記録媒体およびインクの量を抑えることが出来る。すなわち、本実施形態のようにキャリブレーション実行判定処理を設けておくことにより、実際のキャリブレーションを必要以上に頻繁に行うことが無くなり、インクや記録媒体あるいは時間を節約することが可能となる。
尚、本実施形態では、4色の吐出量変化量を求めて色むらの発生を推定し、キャリブレーションの実行の可否を判定するようにしている。しかし、記録装置で使用されるインク色より少ない色数の吐出量変化量を求めることによって、一部の色のキャリブレーション処理を省略する構成としてもよい。例えば、シアンCおよびマゼンタMの吐出量変化量から、ブルー100%のキャリブレーションのみの実行可否を判断する構成とすることも可能である。
(変形例)
人間の視覚においては、離間している領域の色の違いよりも、隣接する領域の色の違いの方が敏感に感知される。よって、殆ど吐出量の変化が無い領域において、一部分だけ吐出量の変化が大きいノズル領域が存在すると、上記色ずれ量評価値αが閾値以下であっても、色むらが目立ってしまう場合がある。また、ノズル列の端部からもう片方の端部に向けて徐々に吐出量が変化するような場合には、上記色ずれ量評価値αが閾値以上であっても、色むらは目立たない場合もある。本変形例はこのような状況を鑑み、複数のノズル領域間の吐出量変動量の相対的差も加味してキャリブレーションの実行を決定する。
図10は、本変形例において、プリンタのCPU311が実行するキャリブレーション実行判定処理を示すフローチャートである。図において、ステップS1001〜ステップS1003までの処理は、図9で説明した上記実施形態と等しい処理であるので説明は省略する。
ステップS1004において、本変形例では3種類の色ずれ評価値α、β、γを求める。まず、本変形例において、色ずれ評価値α[X]は、dc[X]、dm[X]、dy[X]および dk[X]夫々の絶対値の和ではなく、そのままの値の和とする。
α[X] = dc[X]+ dm[X]+ dy[X]+ dk[X]
すなわち、本変形例においてα[X]は、負にもなり得る値である。そして、本変形例における色ずれ評価値αは、全ノズル領域における上記α[X]の絶対値の最大値とする。すなわち、
α = max(|α[1]|, |α[2]|, |α[3]|・・・|α[Xmax]|)
となる。
これに対し、色ずれ評価値βは、各ノズル領域の隣接のノズル領域との吐出量変化量の差によって決まる値であり、
β[X]= α[X] - α[X-1]
β = max(|β[1]|, |β[2]|, |β[3]| ・・・|β[Xmax]|)
と表すことが出来る。
更に、色ずれ評価値γは、吐出量変化量の最大値と最小値の差によって決まる値である。すなわち、
γ = |max(α[1], α[2], α[3]・・・α[Xmax]) - min(α[1], α[2], α[3] ・・・α[Xmax])|
と表すことが出来る。本変形例ではこれら3つの色ずれ評価値にそれぞれ独立した閾値を用意する。そして、図10のステップS1005ではこれら3つの色ずれ評価値をそれぞれの閾値と比較する。
ここで、本変形例では一例として、吐出量推定値から変換処理されて得られる色ずれ評価値α、βおよびγが色差ΔEに順ずる値である場合について説明する。一般的に色差ΔEが人間の目で認識されるのは、隣接している領域では約0.8〜1.5程度であるのに対し、離間している領域では1.5〜3.2程度である。このことから、本変形例では色ずれ評価値αのための閾値を2、βのための閾値を1、γのための閾値を2としている。つまり、人間の目は離間する領域よりも隣接する領域の色の違いの方が敏感であるからであるから、βの閾値を一番小さく(厳しく)設定している。
再び図10に戻る。ステップS1005において、3つの色ずれ評価値のうち1つでも閾値を超えるものがあればキャリブレーション処理が必要と判断し、ステップS1006へ進む。一方、3つの色ずれ評価値のいずれもが所定の閾値を越えていない場合、まだキャリブレーション処理は必要ないと判断し、本処理を終了する。
以上説明した本変形例によれば、3種類の色ずれ評価値を用意することにより、上記実施形態よりも、更に人間の目による判断に近い状態で、キャリブレーションの実行を決定することが出来る。例えば、上記実施形態のように色ずれ評価値αのみを用い、隣接する領域間でも色差が目立たないようにするためには、色ずれ評価値αに対する閾値を厳しく(小さく)設定しなくてはならない。この場合、実際に色差が大きいのは離間した領域であって色むらが目立たない状況であるのに、キャリブレーションの実行が決定されてしまう場合が頻発する。すなわち、非常に高い頻度でキャリブレーションが行われるようになってしまう。しかし、本変形例のように、α、βおよびγそれぞれについて適切な閾値を用意することが出来れば、より人間の目で色むらが確認される的確なタイミングで、キャリブレーションを実行することが出来る。
図11は、本変形例のキャリブレーション実行判定処理においてキャリブレーション処理が不要であると判断される2つの例を示した図である。図において、横軸は記録ヘッドに配列する複数のノズルの位置を示し、縦軸は各ノズル領域に対応する色ずれ量評価値α[X]を示している。本図において、各ノズル領域に対する色ずれ量評価値α[X]が1101のような場合は、色ずれ評価値α=2、β=0およびγ=0となる。本変形例では上述したようにα、β、γ用の閾値をそれぞれ2、1、2としているので、ステップS1005では3つの色ずれ評価値のいずれも閾値を超えることは無いと判断され、キャリブレーション処理は実行されない。また、各ノズル領域に対する色ずれ量評価値α[X]が1102のような場合は、色ずれ評価値α=2、β=1およびγ=2となる。この場合についても、ステップS1005では3つの色ずれ評価値のいずれも閾値を超えることは無いと判断され、キャリブレーション処理は実行されない。
一方、図12は、本変形例のキャリブレーション実行判定処理においてキャリブレーション処理が必要であると判断される2つの例を示した図である。本図において、各ノズル領域に対する色ずれ量評価値α[X]が1201のような場合は、色ずれ評価値α=3、β=0およびγ=0となる。この場合、ステップS1005では3つの色ずれ評価値のうち、βとγは閾値を超えないが(β=0<1、γ=0<2)、αは閾値を超える(α=3>2)と判断され、ステップS1006でキャリブレーション処理が実行される。また、各ノズル領域に対する色ずれ量評価値α[X]が1202のような場合は、色ずれ評価値α=2、β=1およびγ=3となる。この場合、ステップS1005では3つの色ずれ評価値のうち、αとβは閾値を超えないがγは閾値を超える(γ=3>2)と判断され、ステップS1006でキャリブレーション処理が実行される。
図11の1102と図12の1202を比較するとき、どちらも色ずれ評価値α=2である。よって、図9のフローチャートに従った色ずれ評価値をαの1つしか設けない形態であれば、いずれの場合もキャリブレーション処理は実行されない。しかし本変形例の場合、色ずれ評価値γを導入することによって、図11の1102ではγ=2、図12の1202ではγ=3となり、1202の場合にはキャリブレーション処理が実行される。このように、本変形例では上記実施形態で使用した色ずれ評価値αのほかに新たな色ずれ評価値βおよびγを導入することにより、人間の目で色むらが確認される状態をより的確に判断し、好適なタイミングでキャリブレーションを実行することが出来る。
なお、本変形例では隣接するノズル領域間の色ずれを判断するための色ずれ評価値β[X]を β[X]= α[X] - α[X-1]と定義したが、β[X] はα[X] の単純な差分ではなくてもよい。例えば、フィルタ処理や空間周波数の算出等、空間中のエッジ強度を評価する既知の手法を併用して定義することも出来る。また、本変形例では、色ずれ評価値βおよびγを算出するのに色ずれ評価値αを用いたが、本変形例の効果を得るための構成は、このような構成に限定されるものではない。色ずれ評価値βおよびγは、隣接するノズル領域色ずれや、離間するノズル領域間の色ずれの指標となるような値であれば、色ずれ評価値αを用いずに各ノズル領域の吐出量の変動から直接算出する構成とすることも出来る。
また、以上の実施形態及び変形例では、ステップS905或いはステップS1005においてキャリブレーション処理が必要と判断した場合には、ステップS906あるいはステップS1106において自動的にキャリブレーションが実行される内容で説明した。しかし、本発明はこのような構成に限定されるものではない。本発明においては、キャリブレーション実行判定処理がキャリブレーション処理に先立って行われるようにすれば良いのであって、必ずしも、キャリブレーションが自動的に行われる必要はない。例えば、キャリブレーション実行判定処理がキャリブレーションが必要であると判断した場合は、ユーザにキャリブレーションの実行を促す表示を行い、キャリブレーションはユーザの判断と指示の元に実行される形態にしても構わない。また、ユーザがキャリブレーション処理を必要と判断した場合には、キャリブレーション実行判定処理を行うことなく、直接キャリブレーション処理を実行するように構成しても構わない。
更に、以上の実施形態では、図1に示したような4色のインクを吐出可能な記録ヘッドを備えたプリンタを例に説明してきたが、無論本発明はこのようなインクの組み合わせに限定されるものではない。例えば淡シアン、淡マゼンタ、淡イエロー、グレーインク等の色材濃度を低く抑えたインク、またはレッド、ブルー、グリーン、オレンジ、バイオレット等のCMYKとは異なる色相のインク等を用いることも出来る。
また、図4(a)を参照するに、以上では一連の画像処理においてMCS処理404を入力色変換処理部403とインク色変換処理部405の間に位置づけたが、本発明はこのような構成に限定されるものではない。図4(b)〜(d)は、本発明に適用可能な画像処理の構成の別例を示すブロック図である。例えば、図4(b)は、入力色変換処理部403とMCS処理部404による処理を一体の処理部として構成した例を示している。また、図4(c)は、MCS処理部404の処理を、入力色変換処理部403の処理の前に実施する構成となっている。更に図4(d)は、図4(a)〜(c)では用意したHS処理部406を省いた形態になっている。上記いずれの構成であっても、夫々のMCS処理部における適切な変換処理を実行するための3次元LUTを、上記キャリブレーション処理によって作成することは可能であり、上記実施形態と同様の効果を得ることが出来る。