===開示の概要===
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかとなる。
すなわち、第1ノズル列が形成するドット径と第2ノズル列が形成するドット径が異なり、所定の階調値に基づき前記第1ノズル列からある色のインクを吐出して形成したパターンの濃度と、前記所定の階調値に基づき前記第2ノズル列から前記ある色のインクを吐出して形成したパターンの濃度とが異なる印刷装置が、第1指令階調値に基づき前記第1ノズル列を用いて第1テストパターンを形成し、第2指令階調値に基づき前記第2ノズル列を用いて第2テストパターン形成するステップと、前記第1テストパターンをスキャナに読み取らせ第1読取階調値を取得し、前記第2テストパターンを前記スキャナに読み取らせ第2読取階調値を取得するステップと、前記第1読取階調値に基づいて第1補正値を算出し、前記第2読取階調値に基づいて第2補正値を算出するステップと、前記第1補正値に基づき前記第1ノズル列を用いて印刷し、前記第2補正値に基づき前記第2ノズル列を用いて印刷するステップと、を有する印刷方法であって、前記第1指令階調値と前記第2指令階調値が異なること、を特徴とする印刷方法が実現できること。
このような印刷方法によれば、スキャナが正確に読み取れるテストパターンを形成することができる。
かかる印刷方法であって、前記第1ノズル列の形成するドット径の方が、前記第2ノズル列の形成するドット径よりも大きく、前記第2指令階調値は前記第1指令階調値よりも大きいこと。
このような印刷方法によれば、第2ノズル列が形成する第2テストパターンも、第1ノズル列が形成される第1テストパターンと同様に濃く印刷される。その結果、スキャナが正確に読み取れるテストパターンを形成することができる。
かかる印刷方法であって、前記第1ノズル列と前記第2ノズル列は、それぞれ大きさの異なる複数のドットを形成し、前記第1ノズル列が形成する複数のドットのうちの少なくとも1つのドット径は、前記第2ノズル列が形成するドット径とは異なること。
このような印刷方法によれば、第2テストパターンも第1テストパターンと同様に濃く印刷される。その結果、スキャナが正確に読み取れるテストパターンを形成することができる。
かかる印刷方法であって、前記印刷装置は、媒体とノズルを所定方向に相対的に動かしながら、前記ノズルからインクを吐出させることで、前記媒体に画像を形成する印刷装置であり、前記所定方向に対応する方向に並ぶ複数の画素の指令階調値に基づいてラスタラインが形成され、前記第1テストパターンと前記第2テストパターンは、前記所定方向と交差する方向に複数の前記ラスタラインが並ぶことにより構成され、前記第1テストパターンの読取結果のうちの前記複数の画素に対応する部分の読取階調値を第1読取階調値として取得し、前記第2テストパターンの読取結果のうちの前記複数の画素に対応する部分の読取階調値を第2読取階調値として取得し、前記第1読取階調値に基づいて第1補正値を算出し、前記第2読取階調値に基づいて第2補正値を算出し、前記複数の画素の階調値は、前記第1補正値と前記第2補正値に基づき補正されること。
このような印刷方法によれば、隣接する画像片を形成するノズルの影響も考慮されるので、より正確な補正値が算出される。
かかる印刷方法であって、前記第1指令階調値と前記第2指令階調値がそれぞれ複数の指令階調値から構成される場合、前記第1指令階調値のうちの少なくとも1つの前記指令階調値は、前記第2指令階調値と異なること。
このような印刷方法によれば、スキャナが正確に読み取れるテストパターンを形成することができる。例えば、第1ノズル列が形成する複数のドットのうちのあるドット径の方が、第2ノズル列が形成する複数のドットのうちのあるドット径よりも大きい場合、大きさの異なるドットが生成される指令階調値だけ高く設定してもよい。
かかる印刷方法であって、前記第1指令階調値と前記第2指令階調値がそれぞれ複数の指令階調値から構成され、前記第1指令階調値と前記第2指令階調値に基づき前記第1ノズル列を用いてパターンを形成し、前記パターンを前記スキャナに読み取らせ、前記パターンの各読取階調値を取得した場合、前記第1指令階調値のうちの最低指令階調値に対応する前記読取階調値と前記第1指令階調値のうちの最高指令階調値に対応する前記読取階調値の差は、前記第2指令階調値のうちの最低指令階調値に対応する前記読取階調値と前記第2指令階調値のうちの最高指令階調値に対応する前記読取階調値の差よりも大きいこと。
このような印刷方法によれば、より正確な補正値が算出される。例えば、1つのノズル列に対して複数のテストパターンが印刷される場合、各テストパターンの読取階調値の差が大きい方が、より正確な補正値を算出することができる。そのため、第1指令階調値は第1ノズル列に対する補正値を算出するために適した値に設定し、第2指令階調値は第2ノズル列に対する補正値を算出するために適した値に設定する。
===本実施形態のシステム構成===
図1は、本実施形態のシステム構成図である。プリンタ1とスキャナ70がコンピュータ60に接続されている。本実施形態では、プリンタ1の濃度むらの改善を行うために、製造工場等において完成したプリンタ1がテストパターンを印刷する。そして、そのテストパターンはスキャナ70で読み取られる。読み取られた画像データはコンピュータ60に送信され、コンピュータ60は画像データを基に濃度むらを改善するための補正値Hを算出する。補正値Hはプリンタ1のメモリ53に記憶される。なお、本実施形態では、プリンタ1をインクジェットプリンタとして説明する。
〈インクジェットプリンタの構成〉
図2は、本実施形態のプリンタ1の全体構成ブロック図である。図3Aは、プリンタ1の全体構成の概略図である。図3Bは、プリンタ1の全体構成の断面図である。外部装置であるコンピュータ60から印刷データを受信したプリンタ1は、コントローラ50により、各ユニット(搬送ユニット10、キャリッジユニット20、ヘッドユニット30)を制御し、媒体S(以下、紙Sとする)に画像を形成する。また、プリンタ1内の状況を検出器群40が監視し、その検出結果に基づいて、コントローラ50は各ユニットを制御する。
コントローラ50は、プリンタ1の制御を行うための制御ユニットであり、インターフェース部51と、CPU52と、メモリ53と、ユニット制御回路54とを有する。インターフェース部51は、外部装置であるコンピュータ60とプリンタ1との間でデータの送受信を行うためのものである。CPU52は、プリンタ1全体の制御を行うための演算処理装置である。メモリ53は、CPU52のプログラムを格納する領域や作業領域等を確保するためのものであり、RAM、EEPROM等の記憶手段を有する。CPU52は、メモリ53に格納されているプログラムに従って、ユニット制御回路を有して各ユニットを制御する。
搬送ユニット10は、紙Sを印刷可能な位置に送り込み、印刷時、搬送方向に所定の搬送量で紙Sを搬送させるためのものであり、給紙ローラ11と、搬送モータ12と、搬送ローラ13と、プラテン14と、排紙ローラ15とを有する。
ヘッドユニット30は、紙Sにインクを吐出するためのものであり、ヘッド31とヘッド駆動回路32を有する。ヘッド31は、インク吐出部であるノズルを複数有する。そして、各ノズルには、各ノズルを駆動してインクを吐出させるための駆動素子であるピエゾ素子PZTとインクが入った圧力室(不図示)が設けられている。
キャリッジユニット20は、ヘッド31を移動方向に移動させるためのものであり、キャリッジ21と、キャリッジモータ22とを有する。
検出器群40には、リニア式エンコーダ41、ロータリー式エンコーダ42、紙検出センサ43、および光学センサ44等が含まれる。
図4は、ヘッド31の下面(ノズル面)におけるノズルの配列を示す説明図である。ヘッド31の下面には、イエローインクノズル列Yと、ブラックインクノズル列Kと、シアンインクノズル列DCと、ライトシアンインクノズル列LCと、マゼンタインクノズル列DMと、ライトマゼンタインクノズル列LMが形成されている。各ノズル列は、各色のインクを吐出するための吐出口であるノズルを180個備えている。180個のノズルのうち、下流側のノズルほど若い番号が付されている(#i=#1〜#180)。また、各ノズル列のノズルは、搬送方向に沿って、一定の間隔k・Dでそれぞれ整列している。
通常、カラー印刷ではシアン、マゼンタ、イエロー、ブラックの4色のインクが用いられる。しかし、本実施形態では、粒状性を改善し、よりなめらかな階調表現を実現するためにライトシアンとライトマゼンタが使用される。以下、シアンインクをダークシアンインク、マゼンタインクをダークマゼンタインクとする。そして、紙S上では、シアンはライトシアンインクとダークシアンインクによって表現され、マゼンタはライトマゼンタインクとダークマゼンタインクによって表現される。また、ダークシアン、ダークマゼンタ、イエロー、ブラックをダークインクとし、ライトシアンとライトマゼンタをライトインクとする。
〈印刷手順〉
まず、コントローラ50は、コンピュータ60から印刷命令及び印刷データを受信する(印刷命令受信)。コントローラ50は、印刷データに含まれる各種コマンドの内容を解析し、各ユニットを用いて、以下の処理を行う。
次に、コントローラ50は、給紙ローラ11を回転させ、印刷すべき紙Sを搬送ローラ13まで送る(給紙処理)。紙検出センサ43が、給紙ローラ11から送られてきた紙Sの先端の位置を検出すると、コントローラ50は搬送ローラ13を回転させ紙Sを印刷開始位置(頭出し位置)に位置決めする。紙Sが印刷開始位置に位置決めされたとき、ヘッド31の少なくとも一部のノズルは、紙Sと対向している。
そして、コントローラ50は、キャリッジモータ22を駆動し、キャリッジ21を移動方向に移動させる。ヘッド31は、キャリッジ21に設けられているため、ヘッド31もキャリッジ21と共に移動方向に移動する。キャリッジ21の移動方向への1回の移動をパスという。そして、コントローラ50は、キャリッジ21の移動中に、印刷データに基づいてノズルからインクを吐出させる。ノズルから吐出されたインク滴が紙S上に着弾すれば、紙S上にドットが形成される(ドット形成処理)。移動するヘッド31からインクが断続的に吐出されるので、紙S上には移動方向に沿ったドット列(ラスタライン)が形成される。なお、キャリッジ21の移動方向の位置をリニア式エンコーダ41が検出し、キャリッジ21(ヘッド31)に取り付けられている光学センサ44が紙Sの端部の位置を検出する。
その後、コントローラ50は、搬送モータ12を駆動し、搬送ローラ13を回転させて、紙Sを搬送方向に所定の搬送量分だけ搬送する(搬送処理)。これにより、ヘッド31は、先ほどのドット形成処理によって形成されたドットの位置とは異なる位置に、ドットを形成することが可能になる。紙Sの搬送量は、搬送ローラ13の回転量に応じて定まり、搬送ローラ13の回転量はロータリー式エンコーダ42によって検出される。なお、印刷中の紙Sはプラテン14によって支持される。
最後に、コントローラ50は、印刷中の紙Sの排紙の判断を行う(排紙処理)。印刷中の紙Sに印刷すべきデータが残っていれば、排紙は行われず、印刷すべきデータがなくなるまで、ドット形成処理と搬送処理とを交互に繰り返し、画像を完成させる。印刷中の紙Sに印刷すべきデータがなくなったところで、排紙ローラ15の回転により紙Sは排紙される。
〈印刷データについて〉
図5は、印刷データ作成処理のフロー図である。コンピュータ60からプリンタ1に送信される印刷データは、コンピュータ60のメモリに記憶されているプリンタドライバに従って作成される。つまり、プリンタドライバは、コンピュータ60に印刷データを作成させて、印刷データをプリンタ1へ送信させるためのプログラムである。
解像度変換処理(S001)は、アプリケーションプログラムから出力された画像データを、紙Sに印刷する際の解像度に変換する処理である。紙Sに印刷する際の解像度が720×720dpiに指定されている場合、アプリケーションプログラムから受け取った画像データを720×720dpiの解像度の画像データに変換する。なお、解像度変換処理後の画像データは、RGB色空間により表される256階調のデータ(RGBデータ)である。
ここで、画像データとは、画素データの集まりである。そして、画素とは画像を構成する単位要素であり、この画素が2次元的に並ぶことにより画像が構成される。画像データが256階調のデータということは、1つの画素が256階調で表現されることであり、1つの画素データは8ビットのデータとなる(2の8乗=256)。
色変換処理(S002)は、RGBデータを、プリンタ1のインクに対応したCMYK色空間により表されるCMYKデータに変換する処理である。この色変換処理は、RGBデータの階調値とCMYKデータの階調値とを対応づけたテーブル(不図示)をプリンタドライバが参照することによって行われる。
濃度補正処理(S003)は、各画素データの階調値を、その画素データが属する列領域に対応する補正値に基づいて、階調値を補正する処理である。詳細は後述する。
ハーフトーン処理(S004)は、高階調数のデータ(256階調)を、プリンタが形成可能な階調数(4階調)のデータに変換する処理である。詳細は後述する。
ラスタライズ処理(S005)は、マトリクス状の画像データを、プリンタ1に転送すべきデータ順に、画素データ毎に並べ替えられる処理である。これらの処理を経て生成された印刷データは、印刷方式に応じたコマンドデータ(搬送量など)と共に、プリンタドライバによりプリンタ1に送信される。
〈スキャナの構成〉
図6Aは、スキャナ70の縦断面図である。図6Bは、上蓋71を外した状態のスキャナ70の上面図である。スキャナ70は、上蓋71と、原稿72が置かれる原稿台ガラス73と、この原稿台ガラス73を介して原稿72と対面しつつ副走査方向に移動する読取キャリッジ74と、読取キャリッジ74を副走査方向に案内する案内部75と、読取キャリッジ74を移動させるための移動機構76と、スキャナ70内の各部を制御するスキャナコントローラ(不図示)とを備えている。読取キャリッジ74には、原稿72に光を照射する露光ランプ77と、副走査方向と垂直な方向である主走査方向のラインの像を検出するラインセンサ78と、原稿72からの反射光をラインセンサ78へ導くための光学系79とが設けられている。図中の読取キャリッジ74の内部の破線は、光の軌跡を示している。
原稿72の画像を読み取るとき、操作者は、上蓋71を開いて原稿72を原稿台ガラス73に置き、上蓋71を閉じる。そして、スキャナコントローラが、露光ランプ77を発光させた状態で読取キャリッジ74を副走査方向に沿って移動させ、ラインセンサ78により原稿72の表面の画像を読み取る。スキャナコントローラは、読み取った画像データをコンピュータ60のスキャナドライバへ送信し、これにより、コンピュータ60は、原稿72の画像データを取得する。
===ハーフトーン処理について===
ハーフトーン処理では、高階調数のデータが低階調数のデータに変換される。1つの画素データが示す階調数を低くすることで、プリンタ1が各画素を表現することが可能となる。例えば、1つの画素が2階調を示すということは、プリンタ1が画素に「ドットを形成する」、もしくは「ドットを形成しない」ことにより、画像が表現される。しかし、ドットを形成するかしないかだけで印刷された画像は粒状性が悪い(ざらつきが目立つ)。そこで、1つの画素に複数のサイズのドットを形成することで、粒状性を改善することができる。本実施形態では、プリンタ1が画素に「ドットを形成しない」、もしくは「小ドット」、「中ドット」、「大ドット」を形成することにより、画像が表現される。即ち、本実施形態のプリンタ1は、1つの画素に対して4階調表現を可能とする。
図7Aは、ドット生成率テーブルの説明図である。グラフの横軸は階調値(0〜255)であり、縦軸の左側がドット生成率(0〜100%)、右側がレベルデータである。図中の点線が小ドットの生成率SDを示し、細い実線が中ドットの生成率MDを示し、太い実線が大ドットの生成率LDを示している。ここで、ドットの生成率は、ある単位領域に属する画素の階調値が一定である場合に、その単位領域内の画素にドットが形成される割合を示す。例えば、単位領域が16×16画素から構成され、単位領域に属する画素データの階調値が一定値であり、単位領域内にn個のドットが形成される場合、その階調値におけるドット生成率は、{n/(16×16)}×100(%)となる。また、レベルデータとは、ドットの生成率を値0〜255の256階調で表したデータをいう。
図7Bは、ディザ法によるドットのオン・オフ判定の様子を示す図である。プリンタドライバは各ドットのレベルデータが閾値より大きいか否かを判定する。閾値は、ディザマトリクスの各画素に対して異なる値が設定されている。説明の簡略のため、図中では4×4画素のディザマトリクスを用いているが、実際には16×16画素など広い範囲に対応するディザマトリクスを使用している。
ハーフトーン処理前の画像データは、CMYK色空間により表される256階調のCMYKの画素データの集合である。以下、ブラックの画素データ(以下、K画素データとする)を例に説明する。まず、プリンタドライバは、CMYKの画像データの中からのK画素データを順に取り出す。プリンタドライバは、取り出したK画素データの階調値に応じて、大ドットレベルデータを設定する。例えば、あるK画素データの階調値がgrであれば、K画素データの大ドットレベルデータは3dに設定される。
そして、K画素データが図7Bに示す一番左上の画素であり、大ドットレベルデータが「3d=180」であったとする。この場合、一番左上の画素に対応する大ドット用のディザマトリクス上の閾値は「1」であり、プリンタドライバは大ドットレベルデータ(=180)の方が閾値(=1)よりも大きいと判定する。そうすると、その画素の画素データを「11」に変換し、その画素データに対する処理を終了する。そして、一番左上の画素には大ドットが形成されることになる。
もし、一番左上の画素の大ドットレベルデータが閾値以下であると判定された場合、次に、プリンタドライバは、中ドットレベルデータを設定する。あるK画素データの階調値がgrであれば、中ドットレベルデータは2dに設定される。そして、プリンタドライバは中ドットレベルデータの方が閾値よりも大きいと判定した場合、その画素の画素データを「10」に変換し、その画素データに対する処理を終了する。その画素には中ドットが形成される。
また、中ドットレベルデータが閾値以下であると判定された場合、小ドットレベルデータを設定する。あるK画素データの階調値がgrであれば、小ドットレベルデータは1dに設定される。そして、プリンタドライバは、小ドットレベルデータの方が閾値よりも大きいと判定した場合、その画素の画素データを「01」に変換し、その画素データに対する処理を終了する。その画素には小ドットが形成される。小ドットレベルデータが閾値以下の場合は、その画素の画素データを「00」に変換し、その画素データに対する処理を終了する。その画素にドットは形成されない。
このようにして、CMYKの画像データの中から256階調を示すK画素データが取り出され、4階調を示す2ビットデータに変換される。同様に、256階調のイエローの画素データも4階調のデータに変換される。但し、ライトインクを使用するシアンとマゼンタの画素データのハーフトーン処理方法は、ブラックの画素データのハーフトーン処理方法と異なる。
図8は、シアンの階調値変換テーブルの説明図である。横軸は入力階調値であり、縦軸は出力階調値である。図中の点線がライトシアンの階調値を示し、実線がダークシアンの階調値を示す。色変換処理の際に、256階調のシアンの各画素データは、階調値変換テーブルをもとに、ライトシアンの256階調の画素データと、ダークシアンの256階調の画素データに変換される。例えば、シアンのある画素データの階調値がgrである場合、ライトシアンの階調値が5d、ダークシアンの階調値が4dと設定される。同様に、256階調のマゼンタの各画素データも、階調値変換テーブルをもとに、ライトマゼンタの256階調の画素データと、ダークマゼンタの256階調の画素データに変換される。
そして、ハーフトーン処理において、前述のイエローのハーフトーン処理と同様に、設定された256階調のライトシアンの階調値(5d)と、256階調のダークシアンの階調値(4d)は、それぞれ4階調の画素データに変換される。このようにして、256階調のCMYK画像データが、プリンタ1の6色のインクに対応した4階調のC(DC・LC)M(DM・CM)YKの画像データに変換される。
===駆動信号生成回路について===
次に、ノズルからインクが吐出される仕組みについて説明する。図9は、駆動信号生成回路55とヘッド駆動回路32の説明図である。図中のかっこ内の数字は、部材又は信号が対応するノズルの番号を示している。図10は、駆動信号DRVの説明図である。プリンタ1のコントローラ50内の駆動信号生成回路55により駆動信号DRVが生成され、ヘッドユニット30内のヘッド駆動回路32によりインク吐出のオン・オフを制御している。
ヘッド駆動回路32は、第1シフトレジスタ551と第2シフトレジスタ552とスイッチ56が180個ずつ(ノズル数分)と、ラッチ回路553と、データセレクタ554を有する。なお、ヘッド駆動回路32は、各ノズル列毎に設けられている。
駆動信号DRVは、ラッチ信号LATの立ち上がりパルスから次の立ち上がりパルスまでを繰り返し周期Tとする。この繰り返し周期T内に、駆動信号DRVは、第1駆動パルスW1と第2駆動パルスW2と第3駆動パルスW3を有する。
まず、ヘッド駆動回路32に印刷信号PRTがシリアル伝送される。印刷信号PRTは、各ノズルが担当する1画素の画素データに対応した信号である。画素データは4階調を示す2ビットのデータである。印刷信号PRTとして180個の2ビットデータが1度に伝送される。
シリアル伝送された印刷信号PRTは、まず、180個の第1シフトレジスタ551に1ビットずつ入力される。その後、180個の第2シフトレジスタ552に1ビットずつ入力される。次に、ラッチ信号LATの立ち上がりパルスがラッチ回路553に入力されたとき、各シフトレジスタの360個のデータがラッチ回路553にラッチされる(ラッチ回路がデータを保持する)。
そして、ラッチ信号LATの立ち上がりパルスがラッチ回路553に入力されるとき、データセレクタ554にもラッチ信号LATの立ち上がりパルスが入力される。データセレクタ554は、立ち上がりパルスが入力されると、初期状態になる。初期状態となったデータセレクタ554は、次の立ち上がりパルスが入力される前に、180個の2ビットデータである印刷信号PRTをラッチ回路553から選択する。そして、各ノズル#iの印刷信号PRT(i)の内容に合ったスイッチ制御信号SW(i)を各スイッチ56(i)に出力する。
スイッチ制御信号SWは、スイッチ56がオン又はオフするタイミングを示す。このスイッチ56のオン・オフ動作が駆動信号DRVをピエゾ素子PZTに入力もしくは遮断している。例えば、スイッチ制御信号SW(i)のレベルが「1」のとき、スイッチ56(i)はオンとなり、駆動信号DRVが有する駆動パルスをそのまま通過させ、駆動パルスがピエゾ素子に入力される。一方、スイッチ制御信号SW(i)のレベルが「0」のとき、スイッチ56(i)はオフとなり、駆動信号DRVが有する駆動パルスを遮断する。なお、駆動信号DRVは、あるノズル列に属する180個のピエゾ素子PZTに対して共通に供給される。
そして、スイッチ56(i)を通過した駆動信号DRV(i)の駆動パルスに応じて、ピエゾ素子PZT(i)が変形する。ピエゾ素子PZT(i)が変形すると、圧力室の一部を区画する弾性膜(側壁)が変形し、圧力室内のインクがノズル#iから吐出される。
本実施形態では、サイズの異なる3種類のドット(小ドット、中ドット、大ドット)が形成される。ノズルから吐出されるインク量を変化させることにより、サイズの異なるドットを形成する。図10に示す駆動パルス(W1、W2、W3)の形状は、吐出されるインク量に応じて、あらかじめ定められている。つまり、駆動パルスの違いにより、大きさの異なるドットを形成することが出来る。
図11は、ダークインクとライトインクの大ドット径の違いを示す図である。ダークインク(ダークマゼンタ、ダークシアン、イエロー、ブラック)の大ドット径の方が、ライトインク(ライトマゼンタ、ライトシアン)の大ドット径よりも大きい。これは、ダークインクノズル列から吐出されるインク量とライトインクノズル列から吐出されるインク量が異なるからである。大ドットを形成するためにダークインクノズル列から21plのインクが吐出される。大ドットを形成するためにライトインクノズル列からは14plのインクが吐出される。なお、小ドットと中ドットに関しては、ダークインクノズル列もライトインクノズル列も同じサイズのドットを形成する。小ドットを形成するためのインク量が2.5plで、中ドットを形成するためのインク量が7plである。
本実施形態では、粒状性を改善するために、ダークインクとライトインクの大ドット径を変えている。ドットサイズの大きさが小さい方が、粒状性が改善される。しかし、隙間なく塗りつぶして印刷する(べた塗り印刷の)場合に、ドット径が小さいと、塗りつぶすことができず、隙間ができてしまうおそれがある。またドット径が小さいと、ドットをたくさん形成する必要があり、印刷時間がかかってしまう。そこで、べた塗り印刷する場合には、ダークインクの大ドットように、ドット径が大きいドットが吐出されると、印刷時間が短縮される。
図7Aのドット生成率テーブルでいえば、単位領域内の全ての画素データの階調値が255のとき、べた塗り印刷となる。即ち、べた塗り印刷では、大ドットの生成率が100%で、単位領域内の全ての画素に大ドットが形成される。ところで、図8に示すように、ライトインクが使用されるシアンの画素データの階調値が階調値255である場合、ライトシアンの画素データの階調値が0、ダークシアンの画素データの階調値が255と設定される。つまり、シアンのべた塗り印刷のとき、ライトシアンのドットは形成されないので、ライトシアンの大ドット径はダークシアンの大ドット径ほど大きくする必要がない。また、ライトシアンのべた塗り印刷は行われない。そこで、ダークシアンの大ドット径よりもライトシアンの大ドット径を小さくすることで、粒状性が改善される。ライトマゼンタの大ドットに関しても同様のことがいえる。
さて、図10に示すように、本実施形態の駆動信号DRVは3つの駆動パルス(W1、W2、W3)から構成される。そして、ピエゾ素子に3つの駆動パルスが入力もしくは遮断されることにより、ドットが打ち分けられる。
まず、ダークインクのスイッチ制御信号SW(i)と駆動パルスの関係について説明する。ダークインクのスイッチ制御信号SW(i)が「110」の場合、ピエゾ素子PZT(i)に第1駆動パルスW1及び第2駆動パルスW2が入力され、ダークインクの大ドット(21pl)が形成される。スイッチ制御信号SW(i)「010」の場合に、ピエゾ素子PZT(i)に第2駆動パルスW2が入力され、中ドットが形成される。スイッチ制御信号SW(i)が「001」の場合に、ピエゾ素子PZT(i)に第3駆動パルスW3が入力され、小ドットが形成される。スイッチ制御信号SW(i)が「000」の場合、ピエゾ素子PZT(i)に駆動パルスが入力されないので、ドットは形成されない。
そして、ライトインクのスイッチ制御信号SW(i)が「100」の場合、ピエゾ素子PZT(i)に第1駆動パルスW1が入力され、ライトインクの大ドット(14pl)が形成される。ライトインクの中ドットと小ドットとドット無しの形成については、ダークインクのスイッチ制御信号SW(i)と駆動パルスの関係と同じである。このように、ピエゾ素子に入力する駆動パルスの違いにより、ダークインクとライトインクの大ドットのサイズを変えている。
そして、ヘッド駆動回路32内では、2ビットの画素データが3ビットのスイッチ制御信号SW(i)に変換され、その画素が割り当てられたノズルのピエゾ素子PZT(i)にスイッチ制御信号SW(i)が入力される。その結果、画素データに応じたドットのインク量がノズルから吐出される。なお、本実施形態では、全てのノズル列の駆動信号DRVを共通にしたが、ダークインクノズル列とライトインクノズル列の駆動信号を別の駆動信号にしてもよい。
===インターレース印刷について===
本実施形態のプリンタ1は、通常、インターレース印刷を行う。インターレース印刷とは、1回のパスで記録されるラスタラインの間に、他のパスで記録されるラスタラインが挟まれるような印刷方法である。インターレース印刷では、印刷の始めと終わりの印刷方法が中間の印刷と異なるため、通常印刷と先端・後端印刷に分けて説明する。
図12A及び図12Bは、通常印刷の説明図である。図12Aは、パスn〜パスn+3におけるヘッド31の位置とドットの形成の様子を示し、図12Bは、パスn〜パスn+4におけるヘッド31の位置とドットの形成の様子を示している。説明の便宜上、一つのノズル列のみを示し、ノズル列のノズル数も少なくしている。また、ヘッド31(ノズル列)が紙Sに対して移動しているように描かれているが、同図はヘッド31と紙Sとの相対的な位置を示すものであって、実際には紙Sが搬送方向に移動する。同図において、黒丸で示されたノズルがインク吐出可能で、白丸で示されたノズルがインク吐出不可である。また、同図おいて、黒丸で示されたドットは、最後のパスで形成されたドットであり、白丸で示されたドットは、それ以前のパスで形成されたドットである。
インターレース印刷では、紙Sが搬送方向に一定の搬送量Fで搬送される毎に、各ノズルが、その直前のパスで記録されたラスタラインのすぐ上のラスタラインを記録する。このように搬送量を一定にして記録を行うためには、(1)インク吐出可能なノズル数N(整数)はk(ノズル間隔k・Dのk)と互いに素の関係にあること、(2)搬送量FはN・Dに設定されること、が条件となる。ここでは、N=7、k=4、F=7・Dである。しかし、これでは、印刷の始めと終わりに、ラスタラインを形成されない箇所がある。その為、先端印刷及び後端印刷では、通常印刷とは異なる印刷方法を行う。
図13は、先端印刷及び後端印刷の説明図である。最初の5回のパスが先端印刷であり、最後の5回のパスが後端印刷である。先端印刷では、通常印刷時の搬送量(7・D)よりも少ない搬送量(1・D又は2・D)にて、紙Sが搬送される。そして、先端印刷では、インクを吐出するノズルが一定していない。後端印刷も同様に印刷される。これにより、印刷の初めと終わりにも、搬送方向に連続して並ぶ複数のラスタラインが形成される。また、先端印刷では30本のラスタラインが形成され、後端印刷でも30本のラスタラインが形成される。これに対し、通常印刷では、紙Sの大きさにもよるが、およそ数千本のラスタラインが形成される。
なお、通常印刷により印刷される領域(以下、通常印刷領域とする)のラスタラインの並び方には、インク吐出可能なノズル数(ここではN=7個)と同じ数のラスタライン毎に、規則性がある。図13の通常印刷で最初に形成されたラスタラインから7番目までのラスタラインは、それぞれ、ノズル♯3、♯5、♯7、♯2、♯4、♯6、♯8、により形成され、次の8番目以降の7本のラスタラインも、これと同じ順序の各ノズルで形成されている。一方、先端印刷により印刷される領域(以下、先端印刷領域とする)及び後端印刷により印刷される領域(以下、後端印刷領域とする)のラスタラインの並びには、通常印刷領域のラスタラインと比べると、規則性を見出し難い。
===濃度むらについて===
〈濃度むら〉
以下の説明のため、「画素領域」と「列領域」を設定する。画素領域とは、紙S上に仮想的に定められた矩形状の領域を指し、印刷解像度に応じて大きさや形が定められる。そして、1つの画素領域には、画像データを構成する1つの画素が対応している。例えば、印刷解像度が720dpi(移動方向)×720dpi(搬送方向)の場合、画素領域は、約35.28μm×35.28μm(≒1/720インチ×1/720インチ)の大きさの正方形状の領域になる。また、「列領域」とは、移動方向に並ぶ複数の画素領域によって構成される領域をさす。
図14Aは、理想的にドットが形成されたときの様子の説明図である。理想的にドットが形成されるとは、画素領域の中心位置にインク滴が着弾し、そのインク滴が紙S上に広がって、画素領域にドットが形成されることである。各ドットが各画素領域に正確に形成されるということは、ラスタラインが列領域に正確に形成されることである。
図14Bは、濃度むらが発生したときの説明図である。2番目の列領域に形成されたラスタラインは、ノズルから吐出されたインク滴の飛行方向のばらつきにより、3番目の列領域側(搬送方向上流側)に寄って形成されている。その結果、2番目の列領域は淡くなり、3列目の列領域は濃くなる。また、5番目の列領域に吐出されたインク滴のインク量は規定のインク量よりも少なく、5番目の列領域に形成されるドットが小さくなっている。その結果、5列目の列領域は淡くなる。
このように濃淡の違うラスタラインからなる印刷画像を巨視的に見ると、キャリッジの移動方向に沿う縞状の濃度むらが視認される。この濃度むらは、印刷画像の画質を低下させる原因となる。
〈濃度むらの補正〉
図14Cは、本実施形態の印刷方法によりドットが形成されたときの様子の説明図である。本実施形態では、濃く視認されやすい列領域に対しては、淡く画像片が形成されるように、その列領域に対応する画素の画素データの階調値を補正する。また、淡く視認されやすい列領域に対しては、濃く画像片が形成されるように、その列領域に対応する画素の画素データの階調値を補正する。
例えば、図中では、淡く視認される2番目と5番目の列領域のドットの生成率が高くなり、濃く視認される3番目の列領域のドットの生成率が低くなり、各列領域に対応する画素の画素データの階調値が補正される。これにより、各列領域のラスタラインのドット生成率が変更され、列領域の画像片の濃度が補正されて、印刷画像全体の濃度むらが抑制される。
ところで、図14Bにおいて、3番目の列領域に形成される画像片の濃度が濃くなる理由は、3番目の列領域にラスタラインを形成するノズルの影響によるものではなく、隣接する2番目の列領域にラスタラインを形成するノズルの影響によるものである。このため、3番目の列領域にラスタラインを形成するノズルが別の列領域にラスタラインを形成する場合、その列領域に形成される画像片が濃くなるとは限らない。つまり、同じノズルにより形成された画像片であっても、隣接する画像片を形成するノズルが異なれば、濃度が異なる場合がある。このような場合、単にノズルに対応付けた補正値では、濃度むらを抑制することができない。そこで、本実施形態では、列領域毎に設定される補正値に基づいて、画素データの階調値を補正している。
<プリンタ製造工場での濃度むら補正処理について>
図15は、プリンタ製造後の検査工程で行われる補正値取得処理のフロー図である。検査のため、図1に示したように、濃度むらの検査対象となるプリンタ1と、スキャナ70はコンピュータ60に接続される。コンピュータ60には、予め、テストパターンをプリンタ1に印刷させるためのプリンタドライバと、スキャナ70を制御するためのスキャナドライバと、スキャナ70から読み取ったテストパターンの画像データに対して画像処理や解析等を行うための補正値取得プログラムがインストールされている。
===比較例のテストパターンの印刷===
まず、コンピュータ60のプリンタドライバは、プリンタ1にテストパターンを印刷させる。はじめに、比較例のテストパターンを説明した後、本実施形態のテストパターンについて説明する。
比較例のテストパターンは、検査インクとしてライトマゼンタインクのみを用いて、単色印刷される。即ち、ブラックやイエロー等のノズル列からもライトマゼンタインクが吐出される。また、大ドットを形成するためにダークインクノズル列からは21plのインクが吐出され、ライトインクノズル列からは14plのインクが吐出される。つまり、ダークインクノズル列とライトインクノズル列が形成するドットの大きさは異なるが、各ノズル列が形成するテストパターンは、いずれもライトマゼンタインクにより形成される。
図16Aは、比較例のテストパターンの説明図である。図16Bは、比較例として、ダークインクを吐出するノズル列が形成する補正用パターンを示す図である。図16Cは、比較例として、ライトインクを吐出するノズル列が形成する補正用パターンである。テストパターンは、6つノズル列ごとに形成された6つの補正用パターンによって構成されている。各補正用パターンは、3種類の濃度の帯状パターンと、上罫線と、下罫線と、左罫線と、右罫線とにより構成されている。帯状パターンは、それぞれ一定の階調値の画像データから生成されたものであり、左の帯状パターンから順に、ドット生成率テーブル(図7)においてドット生成率に対応させるための階調値76(濃度30%)、128(濃度50%)、179(濃度70%)となり、順に濃い濃度の帯状パターンとなっている。なお、これらの3種類の階調値を「比較例の指令階調値」とし、記号でSa(=76)、Sb(=128)、Sc(=179)と表す。なお、テストパターンは、720dpi(移動方向)×720dpi(搬送方向)の解像度で印刷される。
そして、各帯状パターンは、先端印刷、通常印刷、後端印刷により形成される。各帯状パターンは、先端印刷領域の30個のラスタラインと、通常印刷領域の56個のラスタラインと、後端印刷領域の30個のラスタラインとから構成されている。なお、通常の印刷では、通常印刷領域に数千個のラスタラインが形成されるが、補正用パターンの通常印刷領域には8周期分(7個×8周期)のラスタラインが形成される。また、上罫線は、帯状パターンを構成する先端側から1番目のラスタラインにより形成され、下罫線は、先端側から116番目のラスタラインにより形成される。
以上のように、比較例の6つの補正用パターンは、同じインク(ライトマゼンタ)で、同じ指令階調値(Sa、Sb、Sc)で印刷される。しかし、図16Bと図16Cに色の違いで示したように、ダークインクノズル列により形成された補正用パターンよりも、ライトインクノズル列により形成された補正用パターンの方が淡く印刷される。なぜなら、ライトインクノズル列が形成する大ドット径の方が、ダークインクノズル列が形成する大ドット径よりも小さく、隙間が空いてしまうからである。
図17Aは、コンピュータ60のスキャナドライバに設定されているグレースケールの説明図である。グレースケールは濃淡を持たせた白黒だけで色を表現し、各色と階調値(読取階調値)が対応している。本実施形態のグレースケールは、白から黒まで256段階に分かれて変化し、白が階調値0で、階調値が増加するにつれて黒に近付く。テストパターンを印刷した後、コンピュータ60の補正値取得プログラムは、補正用パターンをスキャナ70に読み取られる(S102)。スキャナドライバの設定は白黒読取りモードに設定され、ライトマゼンタで印刷された6つの補正用パターンは白黒の画像として読み取られる。その際に、コンピュータ60は、スキャナドライバに設定されているグレースケールに基づき、補正用パターンを構成する画素領域ごとに読取階調値を取得する。即ち、印刷された補正用パターンの濃淡と一致するグレースケールの色の階調値が、補正用パターンの読取階調値となる。なお、補正用パターンを構成する画素領域は、スキャナ70の読取解像度により設定される(詳細は後述)。
図17Bは、指令階調値Sa=76(濃度30%)のダークシアンインクノズル列とライトシアンインクノズル列が形成する帯状パターンの読取階調値を示すグラフである。各列領域に属する画素データ(移動方向に並ぶ複数の画素)の読取階調値の平均値を、各列領域の読取階調値としてグラフに示す。横軸が列領域番号であり、縦軸が各列領域の読取階調値である。ライトシアンインクノズル列によって形成された濃度30%の帯状パターンの読取階調値は、ダークシアンインクノズル列によって形成された濃度30%の帯状パターンの読取階調値に比べて小さい。つまり、スキャナ70で読み取った結果からも、ライトシアンインクノズル列によって印刷された補正用パターンは、シアンインクノズル列によって印刷された補正用パターンに比べて淡く印刷されることが分かる。同じことがライトマゼンタインクノズル列によって印刷された補正用パターンにもいえる。
このように、同じインクで、同じ指令階調値で補正用パターンが印刷されても、印刷するノズル列の違いにより、印刷された補正用パターンに濃淡が生じてしまう。このことについて、以下に説明する。
図18Aは、ライトインクノズル列が形成する大ドット径とダークインクノズル列が形成する大ドット径の違いを示す図である。図18Bは、4画素×4画素の単位領域を示す図である。図18Cは、ダークインクノズル列が単位領域(図18B)の全ての画素に大ドットを形成した画像であり、図18Dは、ライトインクノズル列が単位領域の全ての画素に大ドットを形成した画像である。ダークインクノズル列の大ドットは画素領域外に、はみ出す程の大きさであるため、図18Cの単位領域にはほとんど余白がない。それに対して、ライトインクノズル列の大ドットは画素領域内に収まる程度の大きさであるため、図18Dの単位領域は余白が目立つ。つまり、ライトインクノズル列の大ドット径はダークインクノズル列の大ドット径よりも小さいため、同じ階調値で画像を印刷しても、その画像に大ドットが含まれると、ライトインクノズル列によって形成される画像の方がダークインクノズル列によって形成される画像よりも淡く印刷される。
そして、図7Aのドット生成率テーブルより、比較例の3つの指令階調値(Sa、Sb、Sc)に対する大ドット生成率は0より大きいことが分かる。即ち、比較例の補正用パターンの3つの帯状パターンには全て大ドットが形成される。そのため、ライトインクノズル列が形成する濃度30%の帯状パターンは、ダークインクノズル列が形成する濃度30%の帯状パターンよりも淡く印刷される。同様に、ライトインクノズル列が形成する濃度50%の帯状パターンはダークインクノズル列が形成する濃度50%の帯状パターンよりも淡く印刷され、ライトインクノズル列が形成する濃度70%の帯状パターンはダークインクノズル列が形成する濃度70%の帯状パターンよりも淡く印刷される。
たとえ、ライトインクノズル列が形成する補正用パターンの方が、ダークインクノズル列が形成する補正用パターンよりも淡く印刷されたとしても、スキャナ70が正確な読取階調値を取得できれば、濃度むらを改善するための正確な補正値を算出することが出来る。しかし、実際には、淡く印刷された画像をスキャナ70で読み取った際に、読取階調値が不安定となる現象が生じた。これは、紙Sのうねり等により、紙Sの場所によってスキャナ70の光源と紙Sの距離に差が生じ、その差の影響を濃い画像よりも淡い画像の方が受けやすいこと等が原因として考えられる。そして、読取階調値が階調値N(閾値)よりも低い場合に、スキャナ70の読取が不安定になることが、経験上分かっている。つまり、ライトインクノズル列が形成する補正用パターンの読取階調値が階調値Nよりも低い場合、読取階調値が正確でないおそれがある。
図17Bに注目すると、一番淡い濃度で印刷される濃度30%の帯状パターンの場合、ダークシアンインクノズル列により形成される帯状パターンの読取階調値は階調値Nよりも高い(濃い)が、ライトシアンインクノズル列により形成される濃度30%の帯状パターンの読取階調値は階調値Nよりも低い(淡い)ことが分かる。つまり、ライトシアンインクノズル列により形成された濃度30%の帯状パターンの読取階調値が不安定な値であるおそれがある。ダークインクノズル列が形成する補正用パターンよりもライトインクノズル列が形成する補正用パターンの方が淡く印刷されるため、ダークインクノズル列が形成する補正用パターンの読取階調値よりもライトインクノズル列が形成する補正用パターンよりも読取階調値の方が不安定になりやすいともいえる。そして、もし、読み取り階調値が不安定であると、濃度むらの補正値を算出しようとしても、濃度むらを改善することは出来ず、濃度むらを悪化させてしまうことも考えられる。
図17Bのダークシアンインクノズル列が形成した濃度30%の帯状パターンの読取階調値は、階調値Nよりも高く、スキャナ70に正確に読みとられたことが分かる。このように補正用パターンがスキャナ70に正確に読み取られれば、以下に示す方法により、列領域ごとの濃度むらを改善することが出来る。図17Bのダークシアンインクノズル列の読取階調値の結果から、同じ指令階調値(Sa=76、濃度30%)で形成された帯状パターンであっても、列領域によって、読取階調値にばらつきが生じることが分かる。この読取階調値のばらつきが濃度むらとなる。そして、詳細は後述するが、本実施形態では、列領域ごとに濃度むらを補正する。各列領域の読取階調値を、ある一定の値である目標値Catに近づけることで、濃度むらが改善される。なお、目標値Catは、ダークシアンインクノズル列が形成する濃度30%の帯状パターンの各列領域の読取階調値の平均値である。
これに対して、図17Bのライトシアンインクノズル列が形成した濃度30%の帯状パターンの読取階調値は、階調値Nよりも低く、読取階調値の結果が正確でないおそれがある。そうすると、各列領域の読取階調値を目標値LCatに近づけても、濃度むらが改善されない(目標値LCatは、ライトシアンインクノズル列が形成する濃度30%の帯状パターンの各列領域の読取階調値の平均値である)。例えば、ライトシアンインクノズル列の読取階調値のうちのi列領域の読取階調値は、本来、目標値LCatよりも高いとする。しかし、スキャナ70の読取が不安定であったため、i列領域の読取階調値が目標値LCatよりも小さく読み取られてしまったとする。その結果、i列領域に対応する画像は、実際には、目標の濃度よりも濃く印刷されているのに、淡く印刷されていると判断されたことになる。そうすると、i列領域に対応する画像が濃く印刷されるように補正される。即ち、i列領域に対応する画像は、更に、目標の濃度よりも濃く印刷され、濃度むらが悪化する。
つまり、この比較例のように、補正用パターンの読取階調値が、スキャナ70の読み取りが不安定となる階調値N(閾値)よりも低い場合、濃度むらに対する正確な補正値が算出されないことがある。そのため、本実施形態では、スキャナ70が正確に読み取れる補正用パターンを形成することが課題となる。
===S101:本実施形態のテストパターンの印刷===
そこで、本実施形態では、ライトインクノズル列の指令階調値をダークインクノズル列の指令階調値を異ならせる。つまり、ライトインクノズル列の指令階調値をダークインクノズル列の指令階調値よりも高く設定し、スキャナ70の読み取りが不安定となる階調値N(閾値)よりも、ライトインクノズル列が形成する補正用パターンの読取階調値の方が高くなるようにする。その結果、ライトインクノズル列が形成する補正用パターンもスキャナ70によって正確に読み取られ、濃度むらに対する正確な補正値が算出される。
図19Aは、本実施形態のテストパターンの説明図である。図19Bは、本実施形態のダークインクノズル列が形成する補正用パターンの説明図である。図19Cは、ライトインクノズル列が形成する補正用パターンの説明図である。
比較例と同様に、本実施形態のテストパターンは、検査インクとしてライトマゼンタインクのみを用いて、720dpi(移動方向)×720dpi(搬送方向)の解像度で印刷される。
そして、テストパターンは、6つノズル列ごとに形成された補正用パターンによって構成される。補正用パターンは全てライトマゼンタインクで印刷される。但し、ダークインクノズル列が形成する大ドットの方が、ライトインクノズル列が形成する大ドットよりも大きい。また、補正用パターンは、3種類の濃度の帯状パターンと、上罫線と、下罫線と、左罫線と、右罫線とにより構成されている。そして、補正用パターンは先端印刷領域の30個のラスタラインと、通常印刷領域の56個のラスタラインと、後端印刷領域の30個のラスタラインとから構成されている。
ダークインクノズル列(ダークシアン、ダークマゼンタ、イエロー、ブラック)が形成する帯状パターンは、それぞれ一定の階調値の画像データから生成されたものであり、左の帯状パターンから順に階調値76(濃度30%)、128(濃度50%)、179(濃度70%)となっている。ライトインクノズル列(ライトシアン、ライトマゼンタ)が形成する帯状パターンは、左の帯状パターンから順に階調値128(濃度50%)、179(濃度70%)、230(濃度90%)となっている。図7Aに示すように、ダークインクノズル列の指令階調値を、Sa(=76)、Sb(=128)、Sc(=179)と表し、ライトインクノズル列の指令階調値は、Sb(=128)、Sc(=179)、Sd(=230)を表す。つまり、ライトインクノズル列の指令階調値は、ダークインクノズル列の指令階調値よりも高く設定されている。そして、本実施形態のライトインクノズル列の指令階調値は、比較例のライトインクノズル列の指令階調値よりも高く設定されている。なお、ダークインクノズル列に関しては、本実施形態の指令階調値と比較例の指令階調値は同じである。
図20は、ダークシアンインクノズル列が形成する濃度30%の帯状パターンの読取階調値とライトシアンインクノズル列が形成する濃度50%の帯状パターンの読取階調値を示すグラフである。各列領域に属する画素データの読取階調値の平均値をグラフに示し、横軸が列領域番号、縦軸が読取階調値である。ダークシアンインクノズル列が形成する補正用パターンのうちの一番淡い濃度で印刷される濃度30%の帯状パターンの読取階調値は階調値Nよりも高い。そして、ライトシアンインクノズル列が形成する補正用パターンのうちの一番淡い濃度で印刷される濃度50%の帯状パターンの読取階調値も階調値Nよりも高い。つまり、本実施形態の全ての補正用パターンは、スキャナ70に正確に読み取られる。その結果、濃度むらに対する正確な補正値を算出でき、濃度むらが改善される。
なお、本実施形態のライトインクノズル列の指令階調値(Sb=128、Sc=179、Sd=230)は、比較例のライトインクノズル列の指令階調値(Sa=76、Sb=128、Sc=179)よりも高く設定したが、ダークインクノズル列の指令階調値(Sa、Sb、Sc)は比較例と本実施形態とで同じである。これは、ダークインクノズル列が形成する濃度30%(Sa=76)の帯状パターンの読取階調値は階調値Nよりも大きく、スキャナ70に正確に読み取られるからである。
図30は、仮に、ダークインクノズル列が各階調値に基づきパターンを印刷した場合の読取階調値の結果を示す参考図である。ここでは、ダークインクノズル列が各階調値に基づき検査インク(ライトマゼンタインク)を吐出することによりパターン(256種類のパターン)を印刷し、各パターンをスキャナに読み取らせた場合の読取階調値の結果をグラフに示している。図30の横軸がパターンの各階調値を示し、縦軸が読取階調値の結果を示す。図30より、階調値(横軸)と読取階調値(縦軸)が必ずしも一致するわけではなく、階調値と読取階調値は比例の関係でないことが分かる。例えば、指令階調値128(=Sb)近傍の階調値の変化に対する読取階調値の変化の割合は、指令階調値179(=Sc)近傍の階調値の変化に対する読取階調値の変化の割合よりも大きくなっている。
もし、仮に、ダークインクノズル列の指令階調値をライトインクノズル列の指令階調値(Sb=128、Sc=179、Sd=230)と同様に高く設定してしまうと、濃度むらに対する正確な補正値を算出できない。なぜなら、ダークインクノズル列がライトマゼンタインクを吐出することで形成するテストパターンの場合、指令階調値179(=Sc)前後の階調値の変化に対する読取階調値の変化の割合の方が、指令階調値128(=Sb)前後の階調値の変化に対する読取階調値の変化の割合よりも小さいからである。そのため、図30に示すように、ライトインクノズル列の指令階調値のうちの最高指令階調値Sd=230と最低指令階調値Sb=128の各読取階調値の差Yは、ダークインクノズル列の指令階調値のうちの最高階調値Sc=179と最低階調値Sa=76の各読取階調値の差Xよりも小さくなる。つまり、仮に、ダークインクノズル列の指令階調値を高く設定すると(Sb、Sc、Sd)、狭い範囲の濃度のテストパターンが印刷されてしまう。即ち、隣り合う帯状パターンの濃淡差が小さくなるため、指令階調値以外の階調値に対する濃度むらの補正値を正確に線形補間できない。
これに対して、ダークインクノズル列の指令階調値を高く設定せずに、指令階調値128(=Sb)前後の階調値を指令階調値(Sa、Sb、Sc)とすることで、比較的広い範囲の濃度のテストパターンを印刷することができる。そのため、隣り合う帯状パターンの濃淡差が大きくなるため、指令階調値以外の階調値に対する濃度むらの補正値を正確に線形補間できる。
また、ライトインクノズル列がライトマゼンタインクを吐出することで形成する補正用パターンの場合、階調値の変化に対する読取階調値の変化の割合が階調値179(=Sc、濃度70%)前後で一番大きくなる(不図示)。そのため、ライトインクノズル列が濃度50%、70%、90%の帯状パターンから構成される補正用パターンを形成することで、濃度むらに対する補正値をより正確に算出することができる。
===S102:補正用パターンの読み取り===
次に、印刷されたテストパターンをスキャナ70で読み取る。テストパターンが印刷された原稿をスキャナ70にセットする際に、ラスタラインの方向がスキャナ70の主走査方向になり、複数のラスタラインの並ぶ方向がスキャナ70の副走査方向になるようにセットする。図19Aの矢印のかっこ内にスキャナ70のセット方向を示す。
そして、本実施形態では、テストパターンを主走査方向について720dpiの解像度で読み取らせ、副走査方向について2880dpiの解像度で読み取らせる。複数のラスタラインの並ぶ方向(副走査方向)は印刷解像度(720dpi)の4倍の解像度で読み取るのは、列領域の範囲の特定を容易にするためである。逆に、主走査方向が副走査方向に対して読み取り解像度を下げているのは、読み取るデータ量を削減し、読み取り速度を上げるためである。
また、読み取ったテストパターンの画像の左上のスキャン原点を基準とし、読み取り範囲を特定する。図19Aに示すように、イエローインクノズル列が形成した補正用パターンを囲む一点鎖線の範囲を、イエローインクノズル列が形成した補正用パターンの読み取り範囲とする。なお、読み取り範囲を特定するためのパラメータSX1、SY1、SW1及びSH1は、補正値取得プログラムによって予めスキャナドライバに設定されている。また、補正用パターンよりも大きい範囲を読み取り範囲としているので、原稿が多少ずれてスキャナ70にセットされても、イエローインクノズル列が形成した補正用パターンの全体を読み取ることができる。同様に、他のノズル列が形成した補正用パターンの読取範囲を特定する。
===補正用パターンの傾き検出(S103)及び回転処理(S104)===
次に、補正値取得プログラムは、読み取った各ノズル列の画像データ(一点鎖線の読み取り範囲:SW1×SH1の長方形の画像)に含まれる補正用パターンの画像の傾きθを検出し、画像データに対して傾きθに応じた回転処理を行う。
図21Aは、傾き検出の際の画像データの説明図である。以下、コンピュータ60内の座標系(x方向、y方向)を用いて説明する。そして、画像データの左上を原点とする。なお、実際には6つの補正用パターンがx方向に並んでいるので、読み取り範囲内には、他の補正用パターンの上罫線や下罫線などが含まれるが、図21Aでは省略する。図21Bは、上罫線の位置の検出の説明図である。図21Cは、回転処理後の画像データの説明図である。また、実際には、y方向(ラスタラインの並ぶ方向)のデータ量はx方向のデータ量の4倍であるため、補正用パターンの画像は、y方向に4倍引き伸ばされた画像となっている。しかし、ここでは、説明の容易のため、見た目が印刷時の補正用パターンと同じに見えるように補正用パターンのy方向を1/4に圧縮して図示してある。
傾きθを算出するため、補正値取得プログラムは、読み取られた画像データの中から、左からKX1の画素であって上からKH個の画素の画素データと、左からKX2の画素であって上からKH個の画素の画素データと、を取り出す。このとき取り出される画素の中に上罫線が含まれ、右罫線及び左罫線が含まれないように、パラメータKX1、KX2、KHが定められている。そして、補正値取得プログラムは、上罫線の位置を検出するため、取り出されたKH個の画素データの階調値の重心位置KY1、KY2をそれぞれ求める。そして、補正値取得プログラムは、パラメータKX1、KX2と、重心位置KY1、KY2に基づいて、次式より補正用パターンの画像の傾きθを算出する。
θ=tan−1{(KY2−KY1)/(KX2−KX1)}
その後、算出された傾きθに基づいて、補正用パターンの画像の回転処理を行う。
===S105:トリミング===
次に、コンピュータ60の補正値取得プログラムは、画像データの中から不要な画素をトリミングする。図22Aは、トリミングの際の画像データの説明図である。図22Bは、上罫線でのトリミング位置の説明図である。ここでも、図21Aと同様にy方向の補正用パターンを1/4に圧縮するように図示してある。
補正値取得プログラムは、画像データの中から、左からKX1の画素であって上からKH個の画素の画素データと、左からKX2の画素であって上からKH個の画素の画素データを取り出す。そして、補正値取得プログラムは、上罫線の位置を検出するため、取り出されたKH個の画素データの階調値の重心位置をそれぞれ求め、2つの重心位置の平均値を算出する。そして、平均した重心位置から列領域の幅(4画素分)の1/2だけ上側の位置において最も近い画素の境界をトリミング位置に決定する。そして、補正値取得プログラムは、決定されたトリミング位置よりも上側の画素を切り取り、トリミングを行う。
図22Cは、下罫線でのトリミング位置の説明図である。上罫線側と同様に、下罫線の重心位置を算出する。そして、重心位置から列領域の幅の1/2だけ下側の位置において最も近い画素の境界よりも下側の画素を切り取り、トリミングを行う。
===S106:解像度変換===
次に、補正値取得プログラムは、y方向の画素数を、補正用パターンのラスタラインの数(列領域の数)と同数になるように、トリミングされた画像データを解像度変換する。つまり、x方向に並ぶ画素データ(以下、画素列とする)と列領域が一対一で対応することになる。例えば、一番上に位置する画素列は1番目の列領域に対応し、その下に位置する画素列は2番目の列領域に対応する。
720dpiで印刷されたラスタライン116個が、2880dpiの解像度で読み取られたので、トリミング後の画像データのy方向の画素数は464個(=116×4)になる。つまり、ラスタラインの数と画素列の数を同数にするために、1/4の倍率で解像度変換(縮小処理)を行う。ここでは解像度変換にバイキュービック法が用いられる。なお、x方向のデータは720dpiで読み取られたので、解像度変換を行う必要がない。
しかし、実際には補正用パターンの印刷時の誤差や、スキャナ70による読み取り誤差の影響により、画像データのy方向の画素数が464個にならないこともある。この場合、例えば、y方向の画素数は470個であったら、116/470(=[ラスタラインの数]/[y方向の画素数])の倍率で解像度変換(縮小処理)を行う。
===S107:列領域の濃度を測定===
次に、補正値取得プログラムは、各列領域における3種類の帯状パターンの各列領域の測定値を算出する。以下、ダークインクノズル列が形成した補正用パターンのうちの濃度30%の左側の帯状パターンの1番目の列領域の測定値について説明する。なお、他の列領域、他の帯状パターンの濃度の測定も同様に行なわれる。
図23Aは、左罫線の検出の際の画像データの説明図である。補正値取得プログラムは、解像度変換された画像データの中から、上からH2の画素であって、左からKX個の画素の画素データを取り出す。このとき取り出される画素の中に左罫線が含まれるように、パラメータKXが予め定められている。そして、補正値取得プログラムは、取り出されたKX個の画素の画素データから左罫線の重心位置を求める。
図23Bは、1番目の列領域の濃度30%の帯状パターンの濃度の測定範囲の説明図である。左罫線の重心位置からX2だけ右側に、幅W3の濃度30%の帯状パターンが存在していることは、補正用パターンの形状から既知である。そこで、補正値取得プログラムは濃度30%の帯状パターンのうちの左右W4の範囲を除いた点線の範囲の画素データを列領域毎に抽出する。抽出した画素データの階調値の平均値が各列領域の濃度30%の測定値となる。このようにして、補正値取得プログラムは、3種類の帯状パターンの濃度を列領域毎にそれぞれ測定する。
図24Aは、イエローインクノズル列が形成した3種類の帯状パターンの濃度の測定結果をまとめた測定値テーブルである。図24Bは、ライトシアンインクノズル列が形成した3種類の帯状パターンの濃度の測定結果をまとめた測定値テーブルである。このように、補正値取得プログラムは、列領域毎に、3種類の帯状パターンの濃度の測定値を対応付けて、測定値テーブルを作成する。なお、イエローインクノズル列の指令階調値Sa(=76)に対するn番目の測定値を測定値Ya_nとし、指令階調値Sb(=128)に対するn番目の測定値を測定値Yb_nとし、指令階調値Sc(=179)に対するn番目の測定値を測定値Yc_nとして、図24Aに示す。同様に、ライトシアンインクノズル列の指令階調値Sbに対するn番目の測定値を測定値LCb_nとし、指令階調値Scに対するn番目の測定値を測定値Lc_nとし、指令階調値Sd(=230)に対するn番目の測定値を測定値LCd_nとして、図24Bに示す。つまり、ダークインクノズル列の各測定値テーブルは、指令階調値Sa(=76、濃度30%)、Sb(=128、濃度50%)、Sc(=179、濃度70%)に対する各列領域の測定値を基に作成される。そして、ライトインクノズル列の各測定値テーブルは、指令階調値Sb(=128、濃度50%)、Sc(=179、濃度70%)、Sd(=230、濃度90%)に対する各列領域の測定値を基に作成される。
図25は、イエローインクノズル列の指令階調値Sa、Sb、Scの帯状パターンの測定値のグラフである。横軸が列領域番号であり、縦軸が測定値である。各帯状パターンは、それぞれの指令階調値で一様に形成されたにもかかわらず、測定値に、ばらつきが生じている。このばらつきが列領域毎の濃淡差であり、印刷画像の濃度むらの原因である。
さて、濃度むらをなくすためには、同一の階調値における列領域ごとの測定値のばらつきをなくすことである。即ち、各列領域の測定値を一定の値に近づけることで、濃度むらが改善される。そこで、本実施形態では、同一の階調値において、全ての列領域の測定値の平均値を目標値とし、各列領域の測定値を目標値に近づけるように指令階調値を補正する。例えば、指令階調値Sb(濃度50%)のイエローインクノズル列の目標値をYbtとし、目標値Ybtよりも測定値が低い列領域iでは、指令階調値Sbの設定よりも濃く印刷されるように階調値を補正する。一方、目標値Ybtよりも測定値が高い列領域jでは、指令階調値Sbの設定よりも淡く印刷されるように階調値を補正する。
===S108:補正値の算出===
補正値の算出方法を説明するために、イエローインクノズル列が形成した濃度50%(指令階調値Sb=128)の帯状パターンの列領域iと列領域jを例に挙げて説明する。列領域iの測定値は目標値Ybtよりも低く、列領域jの測定値は目標値Ybtよりも高い。
図26Aは、列領域iにおける指令階調値Sbに対する目標指令階調値Sbtの説明図である。列領域iでは、目標値Ybtの濃度のパターンを印刷させるために、プリンタドライバは、次式(直線BCに基づく線形補間)により算出される目標指令階調値Sbtに基づいて指令すればよい。
Sbt=Sb+(Sc−Sb)×{(Ybt−Yb)/(Yc−Yb)}
図26Bは、列領域jにおける指令階調値Sbに対する目標指令階調値Sbtの説明図である。列領域jでは、目標値Ybtの濃度のパターンを印刷させるために、プリンタドライバは、次式(直線ABに基づく線形補間)により算出される目標指令階調値Sbtに基づいて指令すればよい。
Sbt=Sb−(Sb−Sa)×{(Ybt−Yb)/(Ya−Yb)}
このようにして目標指令階調値Sbtを算出した後、補正値取得プログラムは、次式により、その列領域における指令階調値Sbに対する補正値Hbを算出する。
Hb=(Sbt−Sb)/Sb
そして、補正値取得プログラムは、列領域毎に、階調値Sbに対する補正値Hbを算出する。
また、補正値取得プログラムは、最低階調値(=0)に対する測定値を0(点D)、最高階調値255に対する測定値を255(点E)として、他の指令階調値(Sa及びSc)に対する補正値(Ha及びHc)を算出する。点D(0,0)と点Aと点Bに基づいて(直線DAまたは直線ABに基づく線形補間)、指令階調値Saに対する補正値Haを列領域毎に算出する。そして、点Bと点Cと点E(255,255)に基づいて(直線BCまたは直線CEに基づく線形補間)、指令階調値Scに対する補正値Hcを算出する。そして、全てのダークインクノズル列について、列領域毎に、3つの補正値(Ha、Hb、Hc)が算出される。同様にして、ライトインクノズル列の3つの指令階調値(Sb、Sc、Sd)に対する3つの補正値(Hb、Hc、Hd)も算出される。
ところで、補正用パターンの通常領域には56個のラスタラインが印刷された。しかし、56個の列領域毎の補正値は算出せず、7個おきの8個の列領域の各濃度の測定値の平均に基づいて、7個の補正値を算出する。通常領域では7個のラスタライン毎に規則性があるため、7個の補正値を規則性に基づいて使用する。例えば、イエローの濃度50%の帯状パターンにおける、通常印刷領域の1番目の列領域の測定値Ybは、通常印刷領域の1、8、15、22、29、36、43、50番目の8個の列領域の測定値の平均値が用いられる。同様に、その他の濃度の測定値(Ya、Yc)も8個の列領域の平均値が用いられる。そして、平均値化された測定値に基づいて、通常領域の1番目の列領域の補正値(Ha、Hb、Hc)が算出される。
===S109:補正値の記憶===
図27は、イエローインクノズル列の補正値テーブルの説明図である。次に、補正値取得プログラムは、補正値をプリンタ1のメモリ53に記憶する。補正値テーブルには、先端印刷用、通常印刷用、後端印刷用の3種類ある。各ノズル列の補正値テーブルには、3つの補正値(Ha、Hb、Hc)が、列領域毎に対応付けられている。例えば、各列領域のn番目のラスタラインには、3つの補正値(Ha_n、Hb_n、Hc_n)が対応付けられている。そして、メモリ53には、各ノズル列の補正値テーブルが記憶される。
プリンタ1のメモリ53に補正値を記憶させた後、補正値取得処理は終了する。そして、プリンタドライバを記憶したCD−ROMがプリンタ1に同梱され、プリンタ1が工場から出荷される。
===ユーザー下での処理について===
プリンタ1を購入したユーザーは、所有するコンピュータ60(プリンタ製造工場のコンピュータとは別のコンピュータ)に、プリンタ1を接続する。
次に、ユーザーは、同梱されているCD−ROMを記録再生装置80にセットし、プリンタドライバをインストールする。コンピュータ60にインストールされたプリンタドライバは、プリンタ1に対して、メモリ53に記憶されている補正値をコンピュータ60に送信するように要求する。プリンタ1は、要求に応じて、補正値テーブルをコンピュータ60へ送信する。プリンタドライバは、プリンタ1から送られてくる補正値をコンピュータ60内のメモリに記憶する。これにより、このコンピュータ60で作成された画像データをプリンタ1で印刷することが可能となる。
そして、プリンタドライバは、ユーザーからの印刷命令を受けると、印刷データを生成し、印刷データをプリンタ1に送信する。プリンタ1は、印刷データに従って、印刷処理を行う。なお、印刷データの作成方法は前述の通りである(図5)。
===濃度補正処理について===
以下、濃度補正処理について詳しく説明する。濃度補正処理とは、各画素データに対する階調値(補正前の階調値S_in)を、その画素データが属する列領域に対応する補正値Hに基づいて階調値を補正する(補正後の階調値S_out)処理である。以下、イエローインクノズル列の濃度補正処理について説明する。
補正前の階調値S_inがイエローインクノズル列の指令階調値のいずれか(Sa、Sb、Sc)と同じであれば、階調値S_inをコンピュータ60のメモリに記憶されている補正値Ha、Hb、Hcをそのまま用いることができる。例えば、補正前の階調値S_in=Scであれば、補正後の階調値S_outは次式により求められる。
S_out=Sc×(1+Hc)
図28は、イエローインクノズル列のn番目の列領域の濃度補正処理の説明図である。横軸を補正前の階調値S_inとし、縦軸を補正後の階調値S_outとする。同図は、補正前の階調値S_inが指令階調値(Sa、Sb、Sc)とは異なる場合の補正方法を示す図である。なお、図中の点線は、階調値を補正する必要がない場合であり、補正値Hが0のときのグラフである。階調値S_inに対する補正後の階調値S_outを、指令階調値Saの補正値Haと指令階調値Sbの補正値Hbを基に線形補間によって次式により算出する。
S_out=Sat+(Sbt−Sat)×{(S_in−Sa)/(Sb−Sa)}
他に、各指令階調値に対応する各補正値(Hb、Hc、Hd)の間を線形補間して階調値S_inに対応する補正値H_outを算出し、算出された補正値H_outに基づいて補正後の階調値S_outを次式により算出してもよい。
S_out=S_in×(1+H_out)
先端印刷の1番目〜30番目の各列領域の画素データに対しては、プリンタドライバは、先端印刷用の補正値テーブルに記憶されている1番目〜30番目の各列領域に対応する補正値Hに基づいて、濃度補正処理を行う。同様に、後端印刷では、後端印刷の1番目〜30番目の各列領域の画素データに対して、プリンタドライバは、後端印刷用の補正値テーブルに記憶されている1番目〜30番目の各列領域に対応する補正値Hに基づいて、濃度補正処理を行う。
通常印刷では7個の列領域毎に規則性があるため、プリンタドライバは、およそ数千ある列領域を7個の列領域毎に、7個の補正値Hを順に繰り返し用いて濃度補正処理を行う。これにより、記憶すべき補正値Hのデータ量を削減することができる。
そして、プリンタドライバは、イエローインクノズル列だけでなく他のノズル列の画素データの階調値に対しても、同様に濃度補正処理を行う。なお、ライトインクを使用するシアンでは、シアンの階調値がライトシアンの階調値とダークシアンの階調値に変換された後に、変換された階調値に対してそれぞれ濃度補正処理が行われる。即ち、図8に示す出力階調値に対して濃度補正処理を行う。マゼンタの階調値も、ライトマゼンタの階調値とダークマゼンタの階調値を変換された後に、濃度補正処理が行われる。
以上の濃度補正処理により、濃く視認されやすい列領域に対しては、その列領域に対応する画素の画素データの階調値が低くなるように補正される。逆に、淡く視認されやすい列領域に対しては、その列領域に対応する画素の画素データの階調値が高くなるように補正される。言い換えると、図14Cに示したように、濃く視認されやすい列領域では、その列領域の画素データの階調値が低くなるように補正されているので、その列領域のラスタラインを構成するドットのドット生成率が低くなる。逆に、淡く視認されやすい列領域では、ドット生成率が高くなる。そして、印刷画像全体の濃度むらが改善される。
即ち、本実施形態の印刷装置では、第1ノズル列が形成するドット径と第2ノズル列が形成するドット径が異なり(ダークインクノズル列が形成する大ドットの方が、ライトインクノズル列が形成する大ドットよりも大きく)、所定の階調値(比較例の指令階調値、Sa、Sb、Sc)に基づき前記第1ノズル列(ダークインクノズル列)からある色(ライトマゼンタ)のインクを吐出して形成したパターンの濃度と、前記所定の階調値に基づき前記第2ノズル列(ライトインクノズル列)から前記ある色のインクを吐出して形成したパターンの濃度が異なる(図16B、図16C)。そのため、第1指令階調値(ダークインクノズル列の指令階調値)に基づき前記第1ノズル列を用いて第1テストパターンを形成する。そして、第1指令階調値と異なる第2指令階調値(ライトインクノズル列の指令階調値)に基づき前記第2ノズル列を用いて第2テストパターン形成する。その後、前記第1テストパターンをスキャナに読み取らせ第1読取階調値を取得し、前記第1読取階調値に基づいて第1補正値を算出する。同様に、前記第2テストパターンを前記スキャナに読み取らせ第2読取階調値を取得し、前記第2読取階調値に基づいて第2補正値を算出する。そして、前記第1補正値に基づき前記第1ノズル列を用いて印刷し、前記第2補正値に基づき前記第2ノズル列を用いて印刷する。第1指令階調値と第2指令階調値を異ならせた結果、正確な補正値を算出でき、印刷画像の濃度むらが改善される。
===参考例:各インクによるテストパターンの印刷===
前述の実施形態では、テストパターンを印刷する際に、ライトマゼンタインクのみが使用されている。本発明はある色のインクでテストパターンが印刷されるが、参考例として、ノズル列に対応するインクでテストパターンが印刷される場合についても説明する。ここでは、ブラックインクノズル列が形成する補正用パターンは、ブラックインクで印刷され、ライトシアンインクノズル列が形成する補正用パターンは、ライトシアンインクで印刷される。前述の実施形態は、出荷前の製造工場等で濃度むら改善のためのテストパターンが印刷される場合に実施され、この参考例では、出荷後の修理時等に濃度むら改善のためのテストパターンが印刷される場合に実施される。
参考例の比較例として、全てのノズル列の補正用パターンが、階調値76(濃度30%)、128(濃度50%)、179(濃度70%)の3つの帯状パターンから構成されるとする。なお、補正用パターンは前述の実施形態のダークインクの補正用パターンと同様とする(図19B参照)。但し、前述の実施形態は全てライトマゼンタで印刷されていたのに対し、参考例の比較例では各ノズル列に対応するインクにより、補正用パターンが印刷される。
図29Aは、比較例として、階調値76(濃度30%)の帯状パターンの6つのノズル列の読取階調値を示すグラフである。各列領域に属する画素データの読取階調値の平均値をグラフに示し、横軸が列領域番号であり、縦軸が読取階調値である。また、読取階調値が図中の階調値N(閾値)よりも低い場合には、スキャナ70の読取が不安定であったおそれがある。
図29Aより、ブラックインクノズル列と、ダークシアンインクノズル列と、ダークマゼンタインクノズル列により形成される濃度30%の帯状パターンの読取階調値は階調値Nよりも高い(濃い)。それに対して、イエローインクノズル列とライトシアンインクノズル列とライトマゼンタインクノズル列により形成される濃度30%の帯状パターンの読取階調値は階調値Nよりも低い(淡い)。
ライトインクノズル列(ライトシアン、ライトマゼンタ)はダークインクノズル列に比べ、大ドット径が小さいので、ダークインクの補正用パターンよりもライトインクの補正用パターンの方が淡く印刷される。そして、補正用パターンのうち、一番淡く印刷される濃度30%の帯状パターンは、スキャナ70による読み取りが不安定になるおそれがあることは前述の実施形態の比較例で説明している。なお、前述の実施形態の比較例では、ライトシアンとライトマゼンタの補正用パターンをライトマゼンタインクで印刷したのに対し、この参考例では各ノズル列に対応するインクで補正用パターンを印刷する。しかし、ライトマゼンタとライトシアンのインクの濃さは同程度であるため、ライトシアンインクで印刷された濃度30%の帯状パターンの読取階調値も階調値Nよりも低くなる。
そして、ライトインクだけでなく、イエローインクノズル列により形成される濃度30%の帯状パターンの読取階調値も階調値Nよりも低く、スキャナ70による読み取りが不安定になるおそれがある。これは、前述の実施形態で検査インクとして使用したライトマゼンタインクよりもイエローインクの方が淡いインクであるからである。前述の実施形態では、イエローインクノズル列から吐出されたライトマゼンタインクにより補正用パターンが印刷されていたので、イエローインクノズル列の濃度30%の帯状パターンの読取階調値は階調値Nよりも高かった。
つまり、各ノズル列に対応するインクにより、濃度30%、50%、70%の帯状パターンから構成される補正用パターンを印刷した場合、ライトシアンインクノズル列とライトマゼンタインクノズル列とイエローインクノズル列が印刷する濃度30%の帯状パターンのスキャナ70による読み取りが不安定になるおそれがある。そうすると、濃度むらに対する正確な補正値が算出されずに、濃度むらが改善されない。
そこで、この参考例では、ライトシアンインクノズル列とライトマゼンタインクノズル列とイエローインクノズル列の指令階調値を、ブラックインクノズル列とダークシアンインクノズル列とダークマゼンタインクノズル列の指令階調値よりも高くする設定する。即ち、ライトシアン、ライトマゼンタ、イエローの補正用パターンは、前述の実施形態のライトインクノズル列の補正用パターンと同じである(図19C)。そして、ライトシアンインクノズル列とライトマゼンタインクノズル列とイエローインクノズル列の指令階調値は、Sb=128、Sc=179、Sd=230に設定される。それに対して、ダークシアン、ダークマゼンタ、ブラックの補正用パターンは、前述の実施形態のダークインクノズル列の補正用パターンと同じである(図19B)。そして、ブラックインクノズル列とダークシアンインクノズル列とダークマゼンタインクノズル列の指令階調値は、Sa=76、Sb=128、Sc=179に設定される。
図29Bは、参考例のライトインクノズル列とイエローインクノズル列の階調値128(濃度50%)の帯状パターンの読取階調値を示すグラフである。各列領域に属する画素データの読取階調値の平均値をグラフに示し、横軸が列領域番号であり、縦軸が読取階調値である。図29Bより、イエローとライトシアンとライトマゼンタの補正用パターンのうち一番淡い濃度で印刷される濃度50%の帯状パターンの読取階調値は階調値Nよりも高くなる。即ち、イエローとライトシアンとライトマゼンタの補正用パターンもスキャナ70に正確に読み取られ、濃度むらに対する正確な補正値が算出される。
以上をまとめると、参考例のようにノズル列に対応するインクで補正用パターンを印刷する場合には、イエローなどの淡いインクが吐出されるノズル列の指令階調値を高く設定し、補正用パターンを印刷する。
===その他の実施形態===
上記の各実施形態は、主としてインクジェット方式のプリンタを有する印刷システムについて記載されているが、濃度パターンを印刷する指令階調値の決定方法等の開示が含まれている。また、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
〈列領域ごとの補正値について〉
前述の実施形態では、補正用パターンの帯状パターンを構成する列領域ごとに補正値を算出しているが、これに限らない。例えば、帯状パターン全体に対する補正値を1つのみ算出しても良い。しかし、前述の実施形態の方が、隣接する画像片を形成するノズルの影響も考慮されるので、より濃度むらが改善される。
〈プリンタ1について〉
前述の実施形態では、ヘッド31が移動方向に移動しながらラスタラインを形成するプリンタを例に挙げて説明したが、これに限らない。例えば、搬送方向に停まることなく搬送される紙に、搬送方向と交差する方向(紙幅方向)に並んだノズルからインクが吐出されることによって画像を完成させるラインヘッドプリンタにおいても本件発明が適用される。この場合、ラスタラインは搬送方向に沿って形成され、補正用パターンは紙幅方向に並んだ複数のラスタラインから構成される。そして、列領域とは、搬送方向に並ぶ複数の画素領域によって構成される領域をさす。
〈指令階調値について〉
前述の実施形態では、ライトインクノズル列の3つの指令階調値の全てを、ダークインクノズル列の3つの指令階調値よりも高く設定しているが、これに限らない。例えば、ライトインクノズル列の最も低い指令階調値のみを高く設定しても良い。即ち、スキャナの読み取りが不安定になる可能性が高い、最も淡く印刷される帯状パターンのみ濃く印刷してもよい。
また、前述の実施形態では、ライトインクノズル列が形成する3つの帯状パターンの全てに大ドットが形成されるため、ライトインクノズル列の指令階調値を全て高く設定している。例えば、ダークインクノズル列が形成する小ドット径の大きさのみが、ライトインクノズル列が形成する小ドット径よりも大きく(大ドット径は同じ大きさ)、最も淡く印刷される帯状パターンにのみ小ドットが形成される場合には、最も低い指令階調値だけを高く設定してもよい。即ち、ドット径サイズの異なるドットが含まれる帯状パターンの指令階調値のみを異ならせても良い。