(57)【要約】【課題】濃度むらを抑制することを目的とする。【解決手段】（１）媒体に流体を噴射するノズルが所定方向に並ぶノズル列と、（２）前記ノズル列と媒体とを前記所定方向と交差する方向に相対移動させる移動機構と、（３）前記ノズルから噴射される流体によって形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記移動機構によって前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する制御部であって、前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正する制御部と、（４）を有することを特徴とする流体噴射装置である。【選択図】図１１
2010228228.tif 000002
【特許請求の範囲】
【請求項１】
（１）媒体に流体を噴射するノズルが所定方向に並ぶノズル列と、
（２）前記ノズル列と媒体とを前記所定方向と交差する方向に相対移動させる移動機構と、
（３）前記ノズルから噴射される流体によって形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記移動機構によって前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する制御部であって、
前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正する制御部と、
（４）を有することを特徴とする流体噴射装置。
【請求項２】
請求項１に記載の流体噴射装置であって、
受信した前記所定の階調数の画素データが、前記所定の階調数よりも高い階調数に対応する補正値によって前記高い階調数の画素データが補正された後に前記所定の階調数の画素データに変換された補正済みデータであるのか、それとも、前記高い階調数に対応する補正値によって補正されていない補正前データであるのか、を識別し、
受信した前記所定の階調数の画素データが前記補正前データであれば、前記補正値によって前記補正前データを補正する、
流体噴射装置。
【請求項３】
請求項２に記載の流体噴射装置であって、
ある前記画素列データに属する複数の前記画素データのうち、その前記画素列データに対応する前記補正値に基づく数の前記画素データを補正する、
流体噴射装置。
【請求項４】
請求項２または請求項３に記載の流体噴射装置であって、
前記所定の階調数の画素データを補正する前記補正値は、前記高い階調数に対応する補正値である、
流体噴射装置。
【請求項５】
請求項４に記載の流体噴射装置であって、
前記高い階調数に対応する補正値は複数の階調値に対して設定され、
前記複数の階調値の中の第１の階調値に対応する補正値を、前記形成可能なドットの中の第１のドットに対応する第１補正値とし、
前記複数の階調値の中の第２の階調値に対応する補正値を、前記形成可能なドットの中の第２のドットに対応する第２補正値とし、
ある前記画素列データに属する複数の前記画素データの中で前記第１のドットが形成される画素データのうち、その前記画素列データに対応する前記第１補正値に基づく数の前記画素データを補正し、
ある前記画素列データに属する複数の前記画素データの中で前記第２のドットが形成される画素データのうち、その前記画素列データに対応する前記第２補正値に基づく数の前記画素データを補正する、
流体噴射装置。
【請求項６】
請求項１または請求項２に記載の流体噴射装置であって、
前記所定の階調数の所定数の前記画素データの組み合わせに応じた前記補正値を記憶し、
前記画素列データに属する複数の前記画素データを、前記対応する方向の一方側から順に、前記所定数の前記画素データごとに、前記所定数の前記画素データの組み合わせに応じた前記補正値を決定し、
決定した前記補正値を積算して積算値を算出し、
前記積算値が閾値に達した時に、前記画素データを補正する、
流体噴射装置。
【請求項７】
請求項１から請求項６のいずれか一項に記載の流体噴射装置であって、
前記画素列データに対応する媒体上の領域を淡く補正する場合には、補正する前記画素データに基づいて前記ノズルから噴射させる流体量を減らし、
前記画素列データに対応する媒体上の領域を濃く補正する場合には、補正する前記画素データに基づいて前記ノズルから噴射させる流体量を増やす、
流体噴射装置。
【請求項８】
媒体に流体を噴射するノズルが所定方向に並ぶノズル列と媒体とを前記所定方向と交差する方向に相対移動させる流体噴射装置であって、前記流体噴射装置が形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する流体噴射装置において、
前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正することを特徴とする画素データの補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、流体噴射装置、及び、画素データの補正方法
【背景技術】
【０００２】
流体噴射装置の１つとして、紙や布、フィルムなどの各種媒体にノズルからインクを噴射して印刷を行うインクジェットプリンター（以下、プリンター）がある。ユーザーが形成した画像データは高い階調数で表現される。そのため、プリンタードライバーによって、高い階調数のデータをプリンターが形成可能な低い階調数のデータにハーフトーン処理する。そして、ハーフトーン処理されたデータに基づいてプリンターが印刷を行う。
【０００３】
また、このようなプリンターでは、ノズルの加工精度等の問題により、媒体上の正しい位置にインク滴が着弾しなかったり、インク噴射量にばらつきが生じたりしてしまい、濃度むらが発生する場合がある。例えば、あるノズルからのインク滴が飛行曲がりする場合に、そのノズルによって形成される画像片だけでなく、その画像片と隣接する画像片の濃度にも影響を及ぼす。また、印刷方法によっては、あるノズルに形成される画像片と隣接する画像片を形成するノズルが毎回同じノズルとは限らない。そのため、単にノズルに対応付けた補正値では濃度むらを抑制することができない。
【０００４】
そこで、画像片が形成される媒体上の領域（以下、列領域）ごとに補正値を算出する方法が提案されている（例えば、特許文献１を参照）。この補正値は、ハーフトーン処理前の高い階調数のデータに対して濃度補正処理を行うための補正値である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１１４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
プリンタードライバーによって濃度補正処理とハーフトーン処理がなされたデータがプリンターに送信されるに限らず、他のアプリケーションプログラムによって、濃度補正処理はなされていないが、ハーフトーン処理はなされたデータが、プリンターに送信される場合がある。他のアプリケーションプログラムから送信されたそのままの印刷データに基づいて印刷を行うと、印刷画像に濃度むらが発生してしまう。
【０００７】
そこで、本発明は濃度むらを抑制することを目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決する為の主たる発明は、（１）媒体に流体を噴射するノズルが所定方向に並ぶノズル列と、（２）前記ノズル列と媒体とを前記所定方向と交差する方向に相対移動させる移動機構と、（３）前記ノズルから噴射される流体によって形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記移動機構によって前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する制御部であって、前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正する制御部と、（４）を有することを特徴とする流体噴射装置である。  
本発明の他の特徴は、本明細書、及び添付図面の記載により、明らかにする。
【図面の簡単な説明】
【０００９】
【図１】図１Ａはプリンターの全体構成ブロック図であり、図１Ｂはプリンターの一部の斜視図である。
【図２】ヘッドの下面におけるノズル配列を示す図である。
【図３】図３Ａ及び図３Ｂは、通常印刷の説明図である。
【図４】先端印刷及び後端印刷の説明図である。
【図５】図５Ａは理想的にドットが形成されたときの説明図であり、図５Ｂは濃度むらが発生したときの説明図であり、図５Ｃは補正値によってドットが形成されたときの様子の説明図である。
【図６】図６Ａはテストパターンを示す図であり、図６Ｂは補正用パターンを示す図である。
【図７】シアンの補正用パターンをスキャナーで読み取った結果である。
【図８】図８Ａ及び図８Ｂは濃度むら補正値の算出方法を示す図である。
【図９】補正値テーブルを示す図である。
【図１０】各階調値に対応した補正値を算出する様子を示す図である。
【図１１】図１１Ａは比較例の濃度補正処理（印刷処理）のフローであり、図１１Ｂは本実施形態の濃度補正処理（印刷処理）のフローである。
【図１２】図１２Ａはドット生成率テーブルの説明図であり、図１２Ｂはディザ法によるドットのオン・オフ判定の様子を示す図であり、図１２Ｃは誤差拡散法の様子を示す図である。
【図１３】識別部の処理フローである。
【図１４】図１４Ａは実施例１の補正値を示し、図１４Ｂ及び図１４Ｃは４階調の画素データを補正する様子を示す図である。
【図１５】図１５Ａは実施例２の補正値を示し、図１５Ｂ及び図１５Ｃは４階調の画素データを補正する様子を示す図である。
【図１６】図１６Ａは実施例３の補正値を示し、図１６Ｂは４階調の画素データを補正する様子を示す図である。
【発明を実施するための形態】
【００１０】
＝＝＝開示の概要＝＝＝
本明細書の記載、及び添付図面の記載により、少なくとも次のことが明らかとなる。
【００１１】
即ち、（１）媒体に流体を噴射するノズルが所定方向に並ぶノズル列と、（２）前記ノズル列と媒体とを前記所定方向と交差する方向に相対移動させる移動機構と、（３）前記ノズルから噴射される流体によって形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記移動機構によって前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する制御部であって、前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正する制御部と、（４）を有することを特徴とする流体噴射装置である。  
このような流体噴射装置によれば、ハーフトーン処理後のデータに対して、例えば濃度むら補正を行うことができる。
【００１２】
かかる流体噴射装置であって、受信した前記所定の階調数の画素データが、前記所定の階調数よりも高い階調数に対応する補正値によって前記高い階調数の画素データが補正された後に前記所定の階調数の画素データに変換された補正済みデータであるのか、それとも、前記高い階調数に対応する補正値によって補正されていない補正前データであるのか、を識別し、受信した前記所定の階調数の画素データが前記補正前データであれば、前記補正値によって前記補正前データを補正すること。  
このような流体噴射装置によれば、確実に補正が行われた画素データに基づいてノズル列から流体を噴射させることができる。
【００１３】
かかる流体噴射装置であって、ある前記画素列データに属する複数の前記画素データのうち、その前記画素列データに対応する前記補正値に基づく数の前記画素データを補正すること。  
このような流体噴射装置によれば、補正値に応じて画素データを補正することができる。
【００１４】
かかる流体噴射装置であって、前記所定の階調数の画素データを補正する前記補正値は、前記高い階調数に対応する補正値であること。  
このような流体噴射装置によれば、高い階調数に対応する補正値を有効利用することができ、補正値を記憶するメモリーなどの容量を少なくできる。
【００１５】
かかる流体噴射装置であって、前記高い階調数に対応する補正値は複数の階調値に対して設定され、前記複数の階調値の中の第１の階調値に対応する補正値を、前記形成可能なドットの中の第１のドットに対応する第１補正値とし、前記複数の階調値の中の第２の階調値に対応する補正値を、前記形成可能なドットの中の第２のドットに対応する第２補正値とし、ある前記画素列データに属する複数の前記画素データの中で前記第１のドットが形成される画素データのうち、その前記画素列データに対応する前記第１補正値に基づく数の前記画素データを補正し、ある前記画素列データに属する複数の前記画素データの中で前記第２のドットが形成される画素データのうち、その前記画素列データに対応する前記第２補正値に基づく数の前記画素データを補正すること。  
このような流体噴射装置によれば、階調値に応じた補正値によって画素データを補正することができる。
【００１６】
かかる流体噴射装置であって、前記所定の階調数の所定数の前記画素データの組み合わせに応じた前記補正値を記憶し、前記画素列データに属する複数の前記画素データを、前記対応する方向の一方側から順に、前記所定数の前記画素データごとに、前記所定数の前記画素データの組み合わせに応じた前記補正値を決定し、決定した前記補正値を積算して積算値を算出し、前記積算値が閾値に達した時に、前記画素データを補正すること。  
このような流体噴射装置によれば、補正値に応じて画素データを補正することができる。
【００１７】
かかる流体噴射装置であって、前記画素列データに対応する媒体上の領域を淡く補正する場合には、補正する前記画素データに基づいて前記ノズルから噴射させる流体量を減らし、前記画素列データに対応する媒体上の領域を濃く補正する場合には、補正する前記画素データに基づいて前記ノズルから噴射させる流体量を増やすこと。  
このような流体噴射装置によれば、画像の濃度むらを補正することができる。
【００１８】
また、媒体に流体を噴射するノズルが所定方向に並ぶノズル列と媒体とを前記所定方向と交差する方向に相対移動させる流体噴射装置であって、前記流体噴射装置が形成可能なドットの種類に応じた所定の階調数の画素データに基づいて、前記ノズル列と媒体とを前記交差する方向に相対移動させながら前記ノズル列から流体を噴射する流体噴射装置において、前記画素データ上において前記交差する方向と対応する方向に並ぶ複数の前記画素データである画素列データごとに設定された補正値によって、前記所定の階調数の画素データを補正することを特徴とする画素データの補正方法である。  
このような画素データの補正方法によれば、ハーフトーン処理後のデータに対して、例えば濃度むら補正を行うことができる。
【００１９】
＝＝＝印刷システムについて＝＝＝
以下、流体噴射装置としてインクジェットプリンター（以下、プリンター１）を例に挙げ、プリンター１とコンピューター６０が接続された印刷システムについて説明する。
【００２０】
図１Ａは、本実施形態のプリンター１の全体構成ブロック図であり、図１Ｂは、プリンター１の一部の斜視図である。外部装置であるコンピューター６０から印刷データを受信したプリンター１は、コントローラー１０により、各ユニット（搬送ユニット２０、キャリッジユニット３０、ヘッドユニット４０）を制御し、用紙Ｓ（媒体）に画像を形成する。また、プリンター１内の状況を検出器群５０が監視し、その検出結果に基づいて、コントローラー１０は各ユニットを制御する。
【００２１】
コントローラー１０は、プリンター１の制御を行うための制御ユニットである。インターフェース部１１は、外部装置であるコンピューター６０とプリンター１との間でデータの送受信を行うためのものである。ＣＰＵ１２は、プリンター１全体の制御を行うための演算処理装置である。メモリー１３は、ＣＰＵ１２のプログラムを格納する領域や作業領域等を確保するためのものである。ＣＰＵ１２は、ユニット制御回路１４により各ユニットを制御する。
【００２２】
搬送ユニット２０は、用紙Ｓを印刷可能な位置に送り込み、印刷時に搬送方向（所定方向に相当）に所定の搬送量で用紙Ｓを搬送させるためのものである。  
キャリッジユニット３０（移動機構に相当）は、ヘッド４１を搬送方向と交差する方向（以下、移動方向という、交差する方向に相当）に移動させるためのものである。  
ヘッドユニット４０は、用紙Ｓにインクを噴射するためのものであり、ヘッド４１有する。ヘッド４１の下面にはインク噴射部であるノズルが複数設けられている。また、各ノズルに対応付けられたピエゾ素子を駆動することによって、ノズルからインクが噴射される。
【００２３】
図２は、ヘッド４１の下面におけるノズル配列を示す図である。１８０個のノズル（＃１〜＃１８０）が所定のノズルピッチｋ・Ｄにて搬送方向に並んだノズル列が形成されている。ヘッド４１には４つのノズル列が形成され、それぞれ異なる色のインクを噴射する。本実施形態のヘッド４１では、イエローインクを噴射するイエローノズル列Ｙと、マゼンタインクを噴射するマゼンタノズル列Ｍと、シアンインクを噴射するシアンノズル列Ｃと、ブラックインクを噴射するブラックノズル列Ｋと、を有する。
【００２４】
このような構成のシリアル式のプリンター１では、印刷データに基づいて、キャリッジユニット３０によって移動方向に移動するヘッド４１からインクを断続的に噴射させて用紙Ｓ上に移動方向に沿うドット列（ラスタライン）を形成するドット形成動作と、搬送ユニット２０によって用紙Ｓを搬送方向に搬送する搬送動作と、を交互に繰り返す。その結果、先のドット形成動作により形成されたドットの位置とは異なる位置にドットを形成することができ、用紙上に２次元の画像を形成することが出来る。
【００２５】
＜印刷データについて＞
コンピューター６０からプリンター１に送信される印刷データは、コンピューター６０のメモリーに記憶されているプリンタードライバーに従って作成される。以下、印刷データの作成処理の概要について説明する。
【００２６】
まず、解像度変換処理にて、各種アプリケーションプログラムから出力された画像データを用紙Ｓに印刷する際の解像度に変換する。解像度変換処理後の画像データはＲＧＢ色空間により表される２５６階調のＲＧＢデータである。なお、複数の画素データが集まって画像データを構成している。  
次に色変換処理にて、ＲＧＢデータをプリンター１のインクに対応したＣＭＹＫデータに変換する。  
その後、ハーフトーン処理にて、高い階調数の２５６階調のデータをプリンター１が形成可能な低い階調数のデータに変換する。本実施形態のプリンター１は３種類のドットを形成可能とするため４階調のデータに変換する。  
最後に、ラスタライズ処理にて、マトリクス状の画像データをプリンター１に転送すべき順にデータごとに並べ替える。
【００２７】
これらの処理を経たデータは、印刷方式に応じたコマンドデータ（搬送量など）と共に、印刷データとしてプリンタードライバーによりプリンター１に送信される。
【００２８】
＝＝＝インターレース印刷について＝＝＝
本実施形態のプリンター１は、通常、インターレース印刷を行うとする。インターレース印刷では、１回のパスで記録されるラスタライン間に、他のパスのラスタラインが形成される。インターレース印刷では、印刷の始めと終わりの印刷方法が通常と異なるため、通常印刷と先端印刷及び後端印刷とに分けて説明する。
【００２９】
図３Ａ及び図３Ｂは、通常印刷の説明図である。図３Ａはパスｎ〜パスｎ＋３の様子を示し、図３Ｂはパスｎ〜パスｎ＋４の様子を示す。説明の便宜上、ノズル列のノズル数を少なくし、また、ノズル列と用紙Ｓとの相対位置を示すためにヘッド４１（ノズル列）が用紙Ｓに対して移動しているように描く。同図において、黒丸で示されたノズルはインク噴射ノズルであり、白丸で示されたノズルはインク非噴射ノズルである。また、同図において、黒丸で示されたドットは、最後のパスで形成されたドットであり、白丸で示されたドットは、それ以前のパスで形成されたドットである。
【００３０】
インターレース印刷の通常印刷では、用紙Ｓが搬送方向に一定の搬送量Ｆで搬送されるごとに、各ノズルが、その直前のパスで記録されたラスタラインの直ぐ上（先端側）のラスタラインを記録する。このように搬送量を一定にして記録を行うためには、（１）インクを吐出可能なノズル数Ｎ（整数）はｋ（ノズルピッチｋ・Ｄ）と互いに素の関係にあること、（２）搬送量ＦはＮ・Ｄに設定されること、が条件となる。ここでは、Ｎ＝７、ｋ＝４で、Ｆ＝７・Ｄである。しかし、これでは、印刷の始めと終わりに、ラスタラインを形成されない箇所がある。その為、先端印刷及び後端印刷では、通常印刷とは異なる印刷方法を行う。
【００３１】
図４は、先端印刷及び後端印刷の説明図である。最初の５回のパスが先端印刷であり、最後の５回のパスが後端印刷である。先端印刷では、通常印刷時の搬送量（７・Ｄ）よりも少ない搬送量（１・Ｄ又は２・Ｄ）にて、用紙Ｓが搬送される。そして、先端印刷と後端印刷では、インクを噴射するノズルが一定していない。これにより、印刷の初めと終わりにも、搬送方向に連続して並ぶ複数のラスタラインを形成することができる。また、先端印刷では３０本のラスタラインが形成され、後端印刷でも３０本のラスタラインが形成される。これに対し、通常印刷では、用紙Ｓの大きさにもよるが、およそ数千本のラスタラインが形成される。
【００３２】
通常印刷により印刷される領域（以下、通常印刷領域）のラスタラインの並び方には、インク噴射可能なノズル数（ここではＮ＝７個）と同じ数のラスタラインごとに規則性がある。通常印刷で最初に形成されたラスタラインから７番目までのラスタラインは、それぞれ、ノズル♯３、♯５、♯７、♯２、♯４、♯６、♯８、により形成され、次の８番目以降の７本のラスタラインも、これと同じ順序の各ノズルで形成されている。一方、先端印刷により印刷される領域（以下、先端印刷領域）及び後端印刷により印刷される領域（以下、後端印刷領域）のラスタラインの並びには、通常印刷領域のラスタラインと比べると、規則性を見出し難い。
【００３３】
＝＝＝濃度むらについて＝＝＝
以下の説明のため、「画素領域」と「列領域」を設定する。「画素領域」とは用紙Ｓ上に仮想的に定められた矩形状の領域を指し、印刷解像度に応じて大きさが決定する。用紙Ｓ上の１つの「画素領域」と画像データ上の１つの「画素データ」が対応する。また、「列領域」とは移動方向に並ぶ複数の画素領域によって構成される領域である。「列領域」は、画像データ上の複数の画素データが移動方向に対応する方向に沿って並ぶ「画素列データ」と対応する。
【００３４】
図５Ａは、理想的にドットが形成されたときの説明図である。理想的にドットが形成されるとは、画素領域の中心に規定量のインク滴が着弾し、ドットが形成されることである。
【００３５】
図５Ｂは、濃度むらが発生したときの説明図である。２番目の列領域に形成されたラスタラインは、ノズルから吐出されたインク滴の飛行曲がりにより、３番目の列領域側に寄って形成される。その結果、２番目の列領域は淡くなり、３番目の列領域は濃くなる。一方、５番目の列領域に吐出されたインク滴のインク量は規定量よりも少なく、５番目の列領域に形成されるドットが小さくなっている。その結果、５番目の列領域は淡くなる。このように濃淡の違う列領域からなる画像を巨視的に見ると、キャリッジの移動方向に沿う縞状の濃度むらが視認される。
【００３６】
図５Ｃは、本実施形態で使用する補正値（後述）によってドットが形成されたときの様子の説明図である。濃く視認されやすい列領域に対しては、淡く画像片が形成されるように、その列領域に対応する画素データの示す階調値を補正する。また、淡く視認されやすい列領域に対しては、濃く画像片が形成されるように、その列領域に対応する画素データの示す階調値を補正する。例えば、淡く視認される２番目と５番目の列領域のドット発生率を高くし、濃く視認される３番目の列領域のドット発生率が低くする。そうすることで、画像の濃度むらを抑制できる。
【００３７】
ここで、図５Ｂにおいて、３番目の列領域に形成される画像片の濃度が濃くなる理由は、３番目の列領域にラスタラインを形成するノズルの影響によるものではなく、隣接する２番目の列領域にラスタラインを形成するノズルの影響によるものである。このため、３番目の列領域にラスタラインを形成するノズルが別の列領域にラスタラインを形成する場合、その列領域に形成される画像片が濃くなるとは限らない。図３及び図４に示すインターレース印刷においても、あるノズルに割り当てられる列領域に隣接する列領域が毎回同じノズルとは限らない。
【００３８】
つまり、同じノズルにより形成された画像片であっても、隣接する画像片を形成するノズルが異なれば、濃度が異なる場合がある。このような場合、単にノズルに対応付けた補正値では、濃度むらを抑制することができない。そこで、本実施形態では、列領域ごと（画素列データごと）に濃度むら補正値Ｈを設定する。
【００３９】
＝＝＝濃度むら補正値Ｈについて＝＝＝
濃度むらはノズルの加工精度等の問題により発生するため、列領域ごと（画素列データごと）の補正値Ｈは、プリンター１の製造工程などにおいて、プリンター１ごとに算出する。補正値Ｈを算出するプリンター１には、スキャナーとコンピューターが接続される。そして、コンピューターには、テストパターン（後述）をプリンター１に印刷させるためのプリンタードライバーと、スキャナーが読み取った読取データに基づいて補正値Ｈを算出するための補正値取得プログラムがインストールされている。以下、補正値Ｈの取得方法について説明する。
【００４０】
＜テストパターンの印刷＞
図６Ａは、テストパターンを示す図であり、図６Ｂは、補正用パターンを示す図である。テストパターンは、異なる色のノズル列ごと（シアン・マゼンタ・イエロー・ブラック）に形成された４つの補正用パターンによって構成される。各補正用パターンは３種類の濃度の帯状パターンから構成される。帯状パターンはそれぞれ一定の階調値の画像データから生成されたものである。帯状パターンを形成するための階調値を指令階調値と呼び、濃度３０％の帯状パターンの指令階調値をＳａ（７６）、濃度５０％の帯状パターンの指令階調値をＳｂ（１２８）、濃度７０％の帯状パターンの指令階調値をＳｃ（１７９）と表す。なお、高い階調値が濃い濃度を示し、低い階調値が淡い濃度を示すとする。
【００４１】
また、各帯状パターンは、前述のインターレース印刷において、先端印刷による３０個のラスタラインと、通常印刷による５６個のラスタラインと、後端印刷による３０個のラスタラインから構成される。即ち、合計１１６個の列領域から帯状パターンは構成される。
【００４２】
＜読取階調値の取得＞
次に、テストパターンをスキャナーで読み取らせ、色ごと、濃度ごとの読取階調値を取得する。また、スキャナーの読取データにおいて、１つの画素列データ（移動方向に対応する方向に並ぶ複数の画素データ）と、補正用パターンにおける１つの列領域（１つのラスタライン）とを対応付ける。
【００４３】
図７は、シアンの補正用パターンをスキャナーで読み取った結果である。以下、シアンの読取データを例に説明する。画素列データと列領域（ラスタライン）を一対一で対応させた後、帯状パターンごとに、各列領域の濃度を算出する。ある列領域に対応する画素列データに属する各画素データの読取階調値の平均値を、その列領域の読取階調値とする。図７のグラフでは、横軸を列領域番号とし、縦軸を各列領域の読取階調値とする。
【００４４】
各帯状パターンは、それぞれの指令階調値で一様に形成されたにも関わらず、図７に示すように列領域ごとに読取階調値にばらつきが生じる。例えば、図７のグラフにおいて、ｉ列領域の読取階調値Ｃｂｉは他の列領域の読取階調値よりも低く、ｊ列領域の読取階調値Ｃｂｊは他の列領域の読取階調値よりも高い。即ち、ｉ列領域は淡く視認され、ｊ列領域は濃く視認される。このような各列領域の読取階調値のばらつきが、印刷画像の濃度むらである。
【００４５】
＜濃度むら補正値Ｈの算出＞
濃度むらを改善するために、列領域ごとの読取階調値のばらつきを低減したい。即ち、各列領域の読取階調値を一定の値に近づけたい。そこで、同一の指令階調値（例えばＳｂ・濃度５０％）において、全列領域の読取階調値（Ｃｂ１〜Ｃｂ１１６）の平均値Ｃｂｔを、「目標値Ｃｂｔ」として設定する。そして、指令階調値Ｓｂにおける各列領域の読取階調値を目標値Ｃｂｔに近づけるように、各列領域に対応する画素列データの示す階調値を補正する。
【００４６】
具体的には、図７において目標値Ｃｂｔよりも読取階調値の低い列領域ｉに対応する画素列データの示す階調値を、指令階調値Ｓｂよりも濃い階調値を補正する。一方、目標値Ｃｂｔよりも読取階調値の高い列領域ｊに対応する画素列データの示す階調値を、指令階調値Ｓｂよりも淡い階調値に補正する。このように、同一の階調値に対して、全列領域の濃度を一定の値に近づけるために、各列領域に対応する画素列データの階調値を補正する補正値Ｈを算出する。
【００４７】
図８Ａ及び図８Ｂは、濃度むら補正値Ｈの具体的な算出方法を示す図である。まず、図８Ａは目標値Ｃｂｔよりも読取階調値の低いｉ列領域において、指令階調値（例Ｓｂ）における目標指令階調値（例Ｓｂｔ）を算出する様子を示す。横軸が階調値を示し、縦軸がテストパターン結果における読取階調値を示す。グラフ上には、指令階調値（Ｓａ，Ｓｂ，Ｓｃ）に対する読取階調値（Ｃａｉ，Ｃｂｉ，Ｃｃｉ）がプロットされている。例えば指令階調値Ｓｂに対してｉ列領域が目標値Ｃｂｔにて表されるための目標指令階調値Ｓｂｔは次式（直線ＢＣに基づく線形補間）により算出される。  
Ｓｂｔ＝Ｓｂ＋｛（Ｓｃ−Ｓｂ）×（Ｃｂｔ−Ｃｂｉ）／（Ｃｃｉ−Ｃｂｉ）｝
同様に、図８Ｂに示すように、目標値Ｃｂｔよりも読取階調値の高いｊ列領域において、指令階調値Ｓｂに対してｊ列領域が目標値Ｃｂｔにて表されるための目標指令階調値Ｓｂｔは次式（直線ＡＢに基づく線形補間）により算出される。  
Ｓｂｔ＝Ｓａ＋｛（Ｓｂ−Ｓａ）×（Ｃｂｔ−Ｃａｊ）／（Ｃｂｊ−Ｃａｊ）｝
こうして、指令階調値Ｓｂに対する各列領域の目標指令階調値Ｓｂｔが算出される。そうして、次式により、各列領域の指令階調値Ｓｂに対するシアンの補正値Ｈｂを算出する。同様にして、他の指令階調値（Ｓａ，Ｓｃ）に対する補正値、及び、他の色（イエロー，マゼンタ，ブラック）に対する補正値も算出する。  
Ｈｂ＝（Ｓｂｔ−Ｓｂ）／Ｓｂ
図９は、インターレース印刷の通常印刷領域のシアンに関する補正値テーブルを示す図である。前述のように、通常印刷領域では７個のラスタラインごとに規則性があるため、通常印刷領域に関しては指令階調値（Ｓａ，Ｓｂ，Ｓｃ）ごとに７個の補正値を算出する。例えば規則性のある１番目の列領域の指令階調値Ｓａに対する補正値を「Ｈａ_１」と示す。なお、補正用パターン（図６Ｂ）では通常印刷領域の５６個のラスタラインを印刷しているので、７個おきの合計８個の列領域の読取階調値の平均値に基づいて補正値Ｈを算出すればよい。
【００４８】
このような補正値テーブルを、先端印刷領域および後端印刷領域に関しても作成する（不図示）。また、他の色（イエロー・マゼンタ・ブラック）に関しても、先端印刷領域、通常印刷領域、後端印刷領域の各補正値テーブルを作成する。そうして、補正値Ｈを算出するためにテストパターンを印刷したプリンター１のメモリー１３に記憶させる。その後、プリンター１はユーザーのもとへ出荷される。
【００４９】
＝＝＝比較例の濃度補正処理について＝＝＝
ユーザーは、プリンター１の使用開始時に、プリンター１に接続するコンピューター６０にプリンタードライバーをインストールする。そうすると、プリンタードライバーはプリンター１に対してメモリー１３に記憶されている補正値Ｈをコンピューター６０に送信するように要求する。プリンタードライバーは、プリンター１から送信される補正値Ｈをコンピューター６０内のメモリーに記憶する。
【００５０】
図１０は、シアンのｎ番目の列領域に関して各階調値に対応した補正値Ｈを算出する様子を示す図である。横軸を補正前の階調値Ｓ_ｉｎとし、縦軸を補正前の階調値Ｓ_ｉｎに対応した補正値Ｈ_ｏｕｔとする。図１１Ａは、比較例の濃度補正処理（印刷処理）のフローを示す図である。前述のように、プリンタードライバーは、ユーザーからの印刷命令を受けると、図１１Ａのフローに従って印刷データを生成し、印刷データをプリンター１に送信する。
【００５１】
まず、プリンタードライバーは、ユーザーの印刷命令と共に各種アプリケーションソフトから画像データを受信する（Ｓ００１）。その画像データは、印刷解像度に応じた解像度に変換され（Ｓ００２）、プリンター１が有するインクの色ＹＭＣＫに応じて色変換される（Ｓ００３）。
【００５２】
そして、プリンタードライバーは、ＹＭＣＫの２５６階調のデータに対して補正値Ｈを用いて濃度補正処理を行う（Ｓ００４）。即ち、画像データを構成する各画素データの２５６階調の階調値（補正前の階調値Ｓ_ｉｎ）を、色ごと、及び、その画素データが対応する列領域ごとに設定された補正値Ｈによって、補正する。
【００５３】
補正前の階調値Ｓ_ｉｎが指令階調値のいずれかＳａ,Ｓｂ,Ｓｃと同じであれば、各指令階調値に対応した補正値Ｈであってコンピューター６０のメモリーに記憶されている補正値Ｈａ,Ｈｂ,Ｈｃをそのまま用いることができる。例えば、補正前の階調値Ｓ_ｉｎ＝Ｓｃであれば、補正後の階調値Ｓ_ｏｕｔは次式により求められる。  
Ｓ_ｏｕｔ＝Ｓｃ×（１＋Ｈｃ）
補正前の階調値Ｓ_ｉｎが指令階調値と異なる場合、補正前の階調値Ｓ_ｉｎに応じた補正値Ｈ_ｏｕｔを算出する。例えば、図１０に示すように補正前の階調値Ｓ_ｉｎが指令階調値ＳａとＳｂの間であるとき、指令階調値Ｓａの補正値Ｈａと指令階調値Ｓｂの補正値Ｈｂの線形補間によって次式により補正値Ｈ_ｏｕｔを算出し、補正後の階調値Ｓ_ｏｕｔを算出する。  
Ｈ_ｏｕｔ＝Ｈａ＋｛（Ｈｂ−Ｈａ）×（Ｓ_ｉｎ−Ｓａ）／（Ｓｂ−Ｓａ）｝
Ｓ_ｏｕｔ＝Ｓ_ｉｎ×（１＋Ｈ_ｏｕｔ）
なお、補正前の階調値Ｓ_ｉｎが指令階調値Ｓａよりも小さい場合には、最低階調値０と指令階調値Ｓａの線形補間により補正値Ｈ_ｏｕｔを算出し、補正前の階調値Ｓ_ｉｎが指令階調値Ｓｃよりも大きい場合には、最高階調値２５５と指令階調値Ｓｃの線形補間によって補正値Ｈ_ｏｕｔを算出する。
【００５４】
こうして、色ごと、画素データが属する列領域ごと、階調値ごとに設定された補正値Ｈによって、２５６階調の画素データの示す階調値Ｓ_ｉｎが補正される。そうすることで、濃度が淡く視認される列領域に対応する画素データの階調値Ｓ_ｉｎは濃い階調値Ｓ_ｏｕｔに補正され、濃度が濃く視認される列領域に対応する画素データの示す階調値Ｓ_ｉｎは淡い階調値Ｓ_ｏｕｔに補正される。その結果、印刷画像に発生する濃度むらを低減することができる。
【００５５】
そして、プリンタードライバーは、補正後の２５６階調の画素データ（Ｓ_ｏｕｔ）をハーフトーン処理によって、プリンター１が形成可能なドットの種類に応じた４階調の画素データに変換する（図１１ＡのＳ００５）。本実施形態のプリンター１は３種類のドット（大ドット・中ドット・小ドット）を形成可能とし、２５６階調の８ビットのデータがハーフトーン処理によって２ビットの４階調（所定の階調数に相当）のデータに変換される。例えば、「大ドット形成」を示す画素データは「１１」に変換され、「中ドット形成」を示す画素データは「１０」に変換され、「小ドット形成」を示す画素データは「０１」に変換され、「ドット無し」を示す画素データは「００」に変換される。以下、ハーフトーン処理の具体的な方法について説明する。
【００５６】
図１２Ａは、ドット生成率テーブルの説明図である。グラフの横軸は階調値（０〜２５５）であり、縦軸は左側がドットの生成率（０〜１００％）であり、右側がレベルデータである。図１２Ｂは、ディザ法によるドットのオン・オフ判定の様子を示す図である。図１２Ｃは、誤差拡散法の様子を示す図である。
【００５７】
「ドットの生成率」とは、一定の階調値に応じて一様な領域が再現されるときに、その領域内の画素のうちのドットが形成される画素の割合を意味する。例えば１６×１６画素の全ての画素データの階調値が一定値である場合において、その１６×１６画素にｎ個のドットが形成されるとき、その階調値におけるドット生成率は、｛ｎ／（１６×１６）｝×１００（％）として表される。図中の点線で示されるプロファイルＳＤが小ドットの生成率を示しており、また、細い実線で示されるプロファイルＭＤが中ドットの生成率を示しており、太い実線で示されるプロファイルＬＤが大ドットの生成率を示している。また、「レベルデータ」とは、ドットの生成率を値０〜２５５の２５６段階で表したデータをいう。
【００５８】
まず、プリンタードライバーは、ある画素データの階調値に応じて、大ドットレベルデータを設定する。例えば、ある画素データの階調値が図中に示すｇｒであれば、大ドットレベルデータは、プロファイルＬＤに基づいて、１ｄに設定される。その大ドットレベルデータが、図１２Ｂに示すディザマトリクスの各画素に対して設定された閾値より大きいか否かを判定する。閾値は、ディザマトリクスの各画素に対して異なる値が設定されている。本実施形態では、１６×１６の画素ブロックに、０〜２５５までの値が示されるマトリックスを用いる。
【００５９】
例えば、図１２Ｂの左上の画素に関して、大ドットレベルデータが「１８０」に設定されたとする。この画素に対応するディザマトリクス上の閾値は「１」である。プリンタードライバーは大ドットレベルデータ「１８０」と閾値「１」とを比較する。この場合、大ドットレベルデータが閾値よりも大きいと判定され、左上の画素の画素データを「１１（大ドット形成）」に変換し、その画素データの処理を終了する。図１２Ｂではドットが形成される画素を斜線で示す。
【００６０】
一方、大ドットレベルデータが閾値以下である場合、プリンタードライバーは中ドットレベルデータを設定する。階調値がｇｒの画素データでは、中ドットレベルデータはプロファイルＭＤに基づいて２ｄに設定される。そして、その中ドットレベルデータの方が閾値よりも大きい場合、その画素の画素データは「１０（中ドット形成）」に変換され、その画素データの処理を終了する。なお、ディザマトリクスの閾値はドットの種類ごとに設定されている。
【００６１】
そして、中ドットレベルデータが閾値以下である場合、小ドットレベルデータが閾値よりも大きいか否かが判定される。小ドットレベルデータが閾値よりも大きい場合、その画素の画素データが「０１（小ドット形成）」に変換され、小ドットレベルデータが閾値以下である場合、その画素の画素データが「００（ドット無し）」に変換され、その画素データに対する処理を終了する。こうして、２５６階調の画素データが４階調の画素データに変換される。なお、図１２Ａ中の階調値ｇｒでは小ドットのレベルデータが０であるため、小ドットは発生しない。
【００６２】
また、本実施形態では、ハーフトーン処理の際に、図１２Ｃに示すように、誤差拡散法を適用する。誤差拡散法では、ドット形成の有無を判定している画素のレベルデータと、その画素に対応する閾値との差（誤差）を未処理の画素に分配する（拡散する）。そして、誤差が分配された未処理の画素では、自身の画素のレベルデータとその誤差の合計値と、ディザマトリクスの対応する閾値とを比較し、ドット形成の有無が判定される。
【００６３】
例えば、図１２Ｃでは、プリンタードライバーは、左上の画素のレベルデータとディザマトリクスの閾値とを比較し、左上の画素にドットを形成すると判定した後に、レベルデータと閾値との誤差「１７９（＝１８０−１）」を算出する。その誤差を、左上の画素とＸ方向に並ぶ画素やＹ方向に並ぶ画素に分配する。なお、レベルデータよりも閾値の方が大きい場合にはマイナスの誤差を周辺の画素に分配する。そうすることで、局所的な濃度誤差を低減することができ、画像全体の濃度を滑らかにすることが出来る。
【００６４】
特に、補正値Ｈによって階調値を補正した場合には、誤差拡散法を行うことが好ましい。補正値Ｈによって各画素データの階調値が増加したり減少したりする補正量は微小である。例えば、列領域を濃くするために、その列領域に属する画素データの階調値を補正値Ｈによって高くし、レベルデータの値を高くしても、ディザマトリクスの閾値によってはドットの数を増やしたりドットのサイズを大きくしたりすることが出来ない虞がある。そのため、ある画素の階調値を高く補正し、レベルデータの値を高く補正したが、閾値との関係によりその画素にドットが形成されなくとも、レベルデータと閾値との誤差が周辺の画素に分配されることで、誤差が積算されていく過程で未処理の画素の何れかの画素に新たなドットが発生する。そのため、その列領域を濃く印刷することが出来る。逆に、ある画素の階調値を低く補正した場合には、その分だけマイナスの誤差が分配され、何れかの画素のドットを発生しなくすることができる。
【００６５】
そのため、補正値Ｈによって増減させた階調値による誤差（レベルデータと閾値の誤差）が同じ列領域に属する画素に反映されるように、ある画素データの誤差を、その画素データとＹ方向（搬送方向に対応）に並ぶ画素データよりも、その画素データとＸ方向（移動方向に対応）に並ぶ画素データ、即ち、同じ列領域に属する画素データに多く分配してもよい。例えば、図１２Ｃでは、左上の画素の誤差「１７９」を、同じ列領域に属する３つの画素データと、Ｙ方向に並ぶ１つの画素データと、に分配している。また、未処理の画素に誤差を分配する際に、均等に分配してもよいし、重み付けを変えて、誤差が発生した画素に近い画素ほど多く分配してもよい。このように、誤差拡散法によるハーフトーン処理によって、補正値Ｈに応じて確実にドット発生率を変動させることができ、濃度むらを解消することができる。
【００６６】
こうしてハーフトーン処理された低階調数の画素データは、図１１Ａに示すように、ラスタライズ処理され（Ｓ００６）、コマンドデータなどと共に印刷データとしてプリンター１に送信される。プリンター１は印刷データを受信すると（Ｓ００７）、その印刷データに基づいて印刷を行う（Ｓ００８）。
【００６７】
以上をまとめると、比較例の濃度補正処理では、プリンタードライバーがインストールされたコンピューター６０とプリンター１が接続された印刷システムにおいて、プリンタードライバーが、ハーフトーン処理前の高階調数（２５６階調）の画素データ（階調値）を補正値Ｈによって補正し、その後、ハーフトーン処理が行われ、補正された高階調数の画素データが低階調数（４階調）の画素データに変換される。プリンター１はその低階調数の画素データに基づいて印刷を行う。そうすることで、印刷画像の濃度むらを低減することができる。
【００６８】
＝＝＝本実施形態の濃度補正処理について＝＝＝
図１１Ｂは、本実施形態の濃度補正処理（印刷処理）のフローを示す図である。比較例の濃度補正処理では、プリンタードライバーが、ハーフトーン処理前の画素データを補正値Ｈによって補正する。しかし、プリンター１に対応したプリンタードライバーによって印刷データがプリンター１に送信されるに限らず、プリンタードライバーとは異なるアプリケーションプログラム（例えば他社製品のプログラム、以下、他のプログラムと呼ぶ）によってハーフトーン処理された印刷データがプリンター１に送信される場合がある。
【００６９】
プリンタードライバーと同様に、他のプログラムにおいても、図１１ＢのＳ１０１（斜線のブロック部）において、ユーザーが形成した画像データは、印刷解像度に合わせて解像度変換され、色変換され、ハーフトーン処理される。ただし、プリンタードライバーは、プリンター１のメモリー１３から補正値Ｈを取得し、その補正値Ｈによって２５６階調の画素データを補正した後にハーフトーン処理を行うのに対して、他のプログラムでは２５６階調の画素データが補正されずにハーフトーン処理が行われてしまう。即ち、プリンタードライバーとは異なる他のプログラムからプリンター１に送信される印刷データは、濃度補正処理が行われていない４階調の画素データである。仮に、プリンター１が、他のプログラムから送信された印刷データをそのまま用いて印刷を行うと、印刷画像に濃度むらが発生してしまう。
【００７０】
そのため、本実施形態では、プリンタードライバーとは異なる他のプログラムから送信された４階調の画素データ（所定の階調数の画素データに相当）に対して濃度補正処理を行い、印刷画像の濃度むらを抑制することを目的とする。
【００７１】
図１３は、識別部１６がプリンター１に送信される印刷データを処理するフローである。プリンター１のコントローラー１０内の識別部１６（図１）によって、プリンター１に送信される印刷データが、補正済みデータ（補正値Ｈによって濃度補正処理がなされた印刷データ）であるのか、それとも、補正前データ（補正値Ｈによって濃度補正処理がなされていない印刷データ）であるのかが識別される。そして、送信された印刷データが補正済みデータであると識別部１６が判断した場合（Ｓ２０１→ＹＥＳ）、プリンター１はその印刷データに基づいて印刷を行う（図１１ＡのＳ００８）。
【００７２】
一方、送信された印刷データが補正前データであると識別部１６が判断した場合（Ｓ２０１→ＮＯ）、その印刷データを濃度補正処理した後に（図１１ＢのＳ１０３）、印刷を行う（Ｓ１０４）。なお、プリンター１のコントローラー１０内部の濃度補正処理部１５によって、補正前データに対する濃度補正処理が行われる。また、補正済みデータであるか否かで判断するに限らず、プリンター１に対応するプリンタードライバーから送信されたデータであるのか、それとも、他のプログラムから送信されたデータであるのかを識別し、プリンタードライバーからのデータはそのまま印刷に使用し、他のプログラムから送信されたデータに対しては濃度補正処理を行うようにしてもよい。以下、ハーフトーン処理済みの４階調の画素データに対する濃度補正処理方法について説明する。
【００７３】
＜濃度補正処理：実施例１＞
実施例１では、他のプログラムによってハーフトーン処理された４階調の画素データを、プリンター１のメモリー１３に記憶されている補正値Ｈを利用して濃度補正処理を行う。しかし、この補正値Ｈ（以下、高階調補正値Ｈ・高い階調数に対応する補正値に相当）は、プリンタードライバーが濃度補正処理する際に（図１１ＡのＳ００４）、２５６階調の画素データに対して使用する補正値Ｈである。ただし、２５６階調の画素データを補正するための補正値Ｈであっても、その画素データに対応する列領域の濃淡を補正する補正値に変わりはない。
【００７４】
例えば、高階調補正値Ｈによって、ある列領域に対応する２５６階調の画素列データ（データ上で移動方向に対応する方向に並ぶ複数の画素データ）を濃い階調値に補正する場合、ある列領域に対応する４階調の画素列データをある列領域が濃く視認されるように補正すればよい。逆に、高階調補正値Ｈによって、ある列領域に対応する２５６階調の画素列データを淡い階調値に補正する場合、ある列領域に対応する４階調の画素列データをある列領域が淡く視認されるように補正すればよい。即ち、ある列領域に対応する高階調補正値Ｈによって、ある列領域に対応する４階調の画素データを、濃く補正するのか、それとも、淡く補正するのかを判断できる。なお、高階調補正値Ｈは次式により表される。Ｓｔは目標の読取階調値であり、Ｓは実際の読取階調値である。  
Ｈ＝（Ｓｔ−Ｓ）／Ｓ
そのため、ある列領域の高階調補正値Ｈがプラスの値を示す場合にはその列領域を濃く補正し、ある列領域の高階調補正値Ｈがマイナスの値を示す場合にはその列領域を淡く補正する。
【００７５】
４階調の画素データはドット発生の有無やドットの大きさを示す。また、高階調補正値Ｈは、実際の濃度Ｓに対する、目標の濃度Ｓｔと実際の濃度Ｓの差の割合を示している。そのため、実施例１では、４階調の画素列データを高階調補正値Ｈによって補正する場合、ある列領域に対応する４階調の画素列データに属する画素データのうち、高階調補正値Ｈの割合に相当する数の画素データの補正を行う。具体的には、生成するドット数を変えたり、ドットサイズを変えたりする。そうすることで、各列領域の補正値Ｈに応じて、各列領域の濃度を補正する度合いを変えることが出来る。
【００７６】
例えば、同じ濃度を濃くする列領域であっても、一方の列領域に対応する補正値Ｈの方が他方の列領域に対応する補正値Ｈよりも大きい場合、一方の列領域の方が他方の列領域よりも、濃度を濃くする度合いが大きくなる。そのため、高階調補正値Ｈの割合に相当する数の画素データを補正することで、一方の列領域に対応する画素列データの補正数の方が他方の列領域に対応する画素列データの補正数よりも多くなり、新たに発生したドット数やサイズが大きくなったドット数を増やすことができ、濃度を濃くする度合いを大きくすることが出来る。
【００７７】
図１４Ａは、実施例１において、プリンター１のメモリー１３に記憶される補正値テーブルを示す図である。プリンター１のメモリー１３には図９に示すように、色ごと、列領域ごと、指令階調値（Ｓａ，Ｓｂ，Ｓｃ）ごとの高階調補正値Ｈが記憶される。また、指令階調値の線形補間によって、２５６階調の各階調値（０〜２５５）に対応した補正値Ｈを算出することが出来る。
【００７８】
４階調の画素データに対して、色ごと、列領域ごとに分かれた高階調補正値Ｈを使用することが出来る。しかし、４階調の画素データに対して、２５６階調の各階調値に応じた補正値Ｈを使い分けることは難しい。そこで、実施例１では、プリンター１のメモリー１３に、図１４Ａに示すように、３つの指令階調値（Ｓａ，Ｓｂ，Ｓｃ）の各補正値（Ｈａ，Ｈｂ，Ｈｂ）の平均値Ｈａｖｅも記憶させておく。そして、この平均の高階調補正値Ｈａｖｅに基づいて、４階調の画素データを補正する。なお、平均の高階調補正値Ｈａｖｅをメモリー１３に記憶させるに限らず、濃度補正処理部１５が濃度補正を行う際に３つの補正値から算出してもよい。
【００７９】
図１４Ｂおよび図１４Ｃは、１つの列領域に対応する画素列データを高階調補正値Ｈによって補正する様子を示す図である。以下、平均の高階調補正値Ｈａｖｅによる４階調の画素データの具体的な補正方法について説明する。図１４Ｂおよび図１４Ｃに描かれるマス目の１つが画素に相当する。そして、大ドットを形成する画素には「大」と示し、中ドットを形成する画素には「中」を示し、小ドットを形成する画素には「小」と示し、ドットを形成しない画素には「×」を示す。
【００８０】
例えば、図１４Ｂに示すように、列領域１の平均の高階調補正値Ｈａｖｅ_１が「＋１０％」であったとする。この場合、濃度補正処理部１５は、列領域１に対応する画素列データをＸ方向（データ上で移動方向に対応する方向）の左側の画素データから順に、１０個の画素データごとに１つの画素データを「大ドット形成」に補正する。
【００８１】
具体的には、濃度補正処理部１５は、列領域１に対応する４階調の画素データを補正する際に、プリンター１のメモリー１３に記憶されている補正値テーブル（図１４Ａ）を参照し、列領域１に対応する平均の高階調補正値「＋１０％」を取得する。その後、列領域１に対応する画素列データのうち、Ｘ方向の最も左側の画素データを「小ドット形成」から「大ドット形成」に変換する。同様に、濃度補正処理部１５は、Ｘ方向の左から１１個目の画素データ、２１個目の画素データ…と、１０個おきの画素データを「大ドット形成」に変換する。そうすることで、列領域１に対応する平均の高階調補正値Ｈａｖｅ_１（＋１０％）が示す通りに、列領域１の濃度を濃く印刷できる。
【００８２】
このとき、濃度補正処理部１５は１０個おきの補正前の画素データが何を示すのかに関わらず、画素データを「大ドット形成」に変換する。そのため、Ｘ方向の左側から１１個目の画素データのように、元々「大ドット形成」を示していると、ドットサイズが大きくならない場合がある。ただし、ある１０個おきの画素データのドットサイズが大きくなるように変更されなくとも、他の１０個おきの画素データでは、元々ドットが形成されなかったのに、大ドットが形成されるように変更される場合もあり、列領域１を濃く印刷することが出来る。このように、濃度補正処理部１５は、１０個おきの画素データが何を示すかに関係なく、１０個おきの画素データを「大ドット形成」に変換することで、濃度補正処理時間を短縮できる。
【００８３】
また、図１４Ｃに示すように、列領域２の平均の高階調補正値Ｈａｖｅ_１が「−１０％」であったとする。この場合、濃度補正処理部１５は、列領域２に対応する画素列データをＸ方向の左側の画素データから順に、１０個の画素データごとに１つの画素データを「ドット無し」に補正する。このときも、１０個おきの画素データが何を示すかに関係なく、その画素データを「ドット無し」に変換する。図示するように、濃度補正処理部１５は、列領域２の一番左端の画素データを「中ドット形成」から「ドット無し」に変更し、列領域２の左から１１番目の画素データを「小ドット形成」から「ドット無し」に変更する。そうすることで、列領域２に対応する平均の高階調補正値Ｈａｖｅ_２（−１０％）が示す通りに、列領域２の濃度を淡く印刷できる。
【００８４】
このように、濃度補正処理部１５は、他のプログラムから受信した印刷データを受信すると、各画素列データに対応する平均の高階調補正値Ｈａｖｅに基づいて、Ｙ方向（データ上で搬送方向に対応する方向）に並ぶ複数の画素列データを順に、図１４Ｂや図１４Ｃに示すように補正する。
【００８５】
図１４Ｄ及び図１４Ｅは、平均の高階調補正値Ｈａｖｅによって４階調の画素列データを補正する変形例を示す図である。前述の図１４Ｂ及び図１４Ｃでは、平均の高階調補正値Ｈａｖｅに応じて補正する画素データの補正前のデータに関係なく、濃く補正する場合には「大ドット形成」に画素データを変更し、淡く補正する場合には「ドット無し」に画素データを変更している。ただし、これに限らず、補正対象の画素データが補正前に示すデータに応じて、変更するデータを異ならせてもよい。例えば、濃度を濃くする場合には、補正前の画素データが示すドットサイズよりも１つ大きいサイズのドットが形成されるように画素データを補正し、逆に、濃度を淡くする場合には、補正前の画素データが示すドットサイズよりも小さいサイズのドットが形成されるように画素データを補正してもよい。
【００８６】
図１４Ｄでは、列領域３に対応する平均の高階調補正値Ｈａｖｅは「＋２０％」であるため、列領域３に対応する画素列データのうち、５個おきの画素データを補正する。列領域３に対応する画素列データに属する複数の画素データのうち、Ｘ方向における一番左の画素データは、補正前に「中ドット形成」を示すため、濃度補正処理部１５は、その画素データを「大ドット形成」に変更する。同様に、左から６個目の補正前の画素データは「ドット無し」を示すため、濃度補正処理部１５はその画素データを「小ドット形成」に補正する。このように、濃度補正処理部１５は、補正前の画素データが「ドット無し」を示す場合には、「小ドット形成」に変更し、補正前の画素データが「小ドット形成」を示す場合には、「中ドット形成」に変更し、補正前の画素データが「中ドット形成」を示す場合には、「大ドット形成」に変更する。そうすることで、列領域に対応する高階調補正値Ｈ（濃くする補正値）が示す通りに、列領域の濃度を濃く印刷できる。
【００８７】
ただし、補正前の画素データが「大ドット形成」を示す場合には、それ以上ドットを大きくすることは出来ない。前述の図１４Ｂ及び図１４Ｃでは、補正対象の画素データが補正前に示すデータに関係なく、その画素データを「大ドット形成」に変更するため、補正前の画素データが「大ドット形成」を示す場合には、ドットサイズは大きく補正されなかった。
【００８８】
しかし、これに限らず、補正対象の画素データが「大ドット形成」を示す場合には、その補正対象の画素データの近傍の他の画素データを補正してもよい。図１４Ｄでは、左から１１番目の画素データは「大ドット形成」を示すため、濃度補正処理部１５は、１２番目の「小ドット形成」を示す画素データを「中ドット形成」に変更する。こうすることで、確実に列領域の濃度を濃く印刷できる。また、補正対象の画素データの隣の画素データに限らず、補正対象の画素データが「大ドット形成」を示す場合には、５個おきの画素データ群（例えば１１番目から１５番目の画素データ）の中の何れかの画素データを補正してもよい。
【００８９】
同様に、図１４Ｅに示す列領域４では、対応する平均の高階調補正値Ｈａｖｅが「−２０％」であるため、列領域４に対応する画素列データのうち、５個おきの画素データを補正する。例えば、列領域４に対応する画素列データのうちのＸ方向の一番左の画素データは補正前に「中ドット形成」を示すため、その画素データを「小ドット形成」に変更する。同様に、左から６個目の補正前の画素データは「大ドット形成」を示すため、その画素データを「中ドット形成」に補正する。
【００９０】
このように、濃度補正処理部１５は、列領域を淡く補正する場合に、補正前の画素データが「大ドット形成」を示す場合には、「中ドット形成」に変更し、補正前の画素データが「中ドット形成」を示す場合には、「小ドット形成」に変更し、補正前の画素データが「小ドット形成」を示す場合には、「ドット無し」に変更する。そうすることで、列領域に対応する高階調補正値Ｈ（淡くする補正値）が示す通りに、列領域の濃度を淡く印刷できる。また、補正対象の画素データが補正前に「ドット無し」を示す場合には、近傍の他の画素データを補正するとよい。例えば、図１４Ｅの１１番目の画素データは「ドット無し」を示すため、隣の１２番目の画素データを「小ドット形成」から「ドット無し」に補正してもよい。
【００９１】
以上をまとめると、実施例１では、プリンター１のメモリー１３に記憶されている高階調補正値Ｈを、ハーフトーン処理済みの４階調の画素データに使用するために、ある列領域に対応する画素列データに属する複数の画素データのうち、その列領域の高階調補正値Ｈに対応する数の画素データを補正する。列領域の濃度を濃く補正する場合には、補正対象の画素データに新たにドットを形成したり、形成するドットサイズを大きくしたりし、逆に、列領域の濃度を淡く補正する場合には、補正対象の画素データに形成されるはずであったドットを形成しなくしたり、形成するドットサイズを小さくしたりする。そうすることで、他のプログラムから受信したハーフトーン処理済みの４階調の画素データに対しても、濃度補正処理を行うことができ、印刷画像の濃度むらを低減できる。
【００９２】
なお、図１４Ｄ及び図１４Ｅでは、補正前の画素データの示すドットよりも１段階ドットを大きくしたり小さくしたりしているが、これに限らない。例えば、「小ドット形成」を示す画素データを「大ドット形成」に補正するように、ドットサイズを２段階補正してもよい。また、１つの列領域に対応する画素列データのうち、高階調補正値Ｈに対応する数の画素データを補正するに限らず、１つの列領域に対応する画素データであって、ドットを形成する画素データのうち、高階調補正値Ｈに対応する数の画素データを補正してもよい。また、プリンター１のメモリー１３に記憶されている高階調の補正値Ｈを使用するに限らず、高階調補正値Ｈとは異なる４階調用の補正値を別に設定し、プリンター１のメモリー１３に記憶させてもよい。例えば、１つの列領域に対応する画素列データに属する複数の画素データのうち、４階調用の補正値に対応する数の画素データを補正するとよい。
【００９３】
また、４階調の画素データに対する濃度補正処理を、プリンター１のコントローラー１０内部の濃度補正処理部１５が行う場合には、コントローラー１０が制御部に相当し、プリンター１が流体噴射装置に相当する。ただしこれに限らず、これらの処理を、プリンタードライバーに行わせてもよい。即ち、プリンター１が他のプログラムから印刷データを受信した場合には、プリンター１は印刷データをプリンタードライバーに送信して、プリンタードライバーが濃度補正処理を行った印刷データを、プリンター１に戻してもよい。この場合、プリンタードライバーがインストールされたコンピューター６０とプリンター１のコントローラー１０が制御部に相当し、プリンター１とコンピューター６０の接続された印刷システムが流体噴射装置に相当する。
【００９４】
＜濃度補正処理：実施例２＞
図１５Ａは、実施例２において使用する高階調補正値Ｈを示す図であり、図１５Ｂおよび図１５Ｃは、実施例２における４階調の画素データを補正する様子を示す図である。ところで、図１２Ａのドット生成率テーブルから分かるように、濃度が低い画像（階調値の低い画像）を構成するドットは小ドットが多く、中間の濃度の画像を構成するドットは中ドットが多く、濃度が高い画像（階調値の高い画像）を構成するドットは大ドットが多くなる。
【００９５】
特に、本実施形態のドット生成率テーブルによると、指令階調値Ｓａ（第１の階調値）によって形成された濃度３０％の帯状パターン（図６Ｂ）は小ドット（第１のドット）のみから構成され、指令階調値Ｓｂ（第２の階調値）によって形成された濃度５０％の帯状パターンは中ドット（第２のドット）のみから構成され、指令階調値Ｓｃによって形成された濃度７０％の帯状パターンは大ドットのみから構成される。そのため、指令階調値Ｓａに対応する補正値Ｈａは、多くの小ドットから構成される画像の濃度を補正するために適した補正値であり、指令階調値Ｓｂに対応する補正値Ｈｂは、多くの中ドットから構成される画像の濃度を補正するために適した補正値であり、指令階調値Ｓｃに対応する補正値Ｈｃは、多くの大ドットから構成される画像の濃度を補正するために適した補正値となる。
【００９６】
そこで、実施例２では、濃度の低い指令階調値Ｓａ（７６）に対応する補正値Ｈａを「小ドット用の補正値Ｈｓ（例えば第１補正値に相当）」に設定し、中間の濃度の指令階調値Ｓｂ（１２８）に対応する補正値Ｈｂを「中ドット用の補正値Ｈｍ（例えば第２補正値に相当）」に設定し、高い濃度の指令階調値Ｓｃ（１７９）に対応する補正値Ｈｃを「大ドット用の補正値Ｈｌ」に設定する。そして、１つの列領域に対応する画素列データに属する画素データにおいて、各サイズのドットを形成する画素データのうち、各サイズのドットの補正値Ｈｓ，Ｈｍ，Ｈｌに対応する数の画素データを補正する。以下、濃度補正処理部１５の具体的な処理について説明する。
【００９７】
図１５Ｂは列領域１に対応する画素列データの補正の様子を示す。列領域１に対応する補正値は列領域１を濃くするための補正値であるとし、具体的に、小ドット用の補正値Ｈｓを「＋５％」、中ドット用の補正値Ｈｍを「＋１０％」、大ドット用の補正値Ｈｌを「＋１５％」とする。濃度補正処理部１５は、列領域１に対応する画素列データの中で、小ドットが形成される画素の数（Ｎ１個）と、中ドットが形成される画素の数（Ｎ２個）と、大ドットが形成される画素の数（Ｎ３個）を算出する。
【００９８】
そして、濃度補正処理部１５は、小ドットが形成される画素データのうち、小ドット用補正値Ｈｓに対応する数の画素データ（Ｎ１個×０．０５）を、「中ドット形成」に変換し、中ドットが形成される画素データのうち、中ドット用補正値Ｈｍに対応する数の画素データ（Ｎ２個×０．１）を、「大ドット形成」に変換する。そして、大ドットが形成される画素データでは、形成するドットを大ドットよりも大きく変更することができないため、ドットが形成されない画素に新たに大ドットを発生させる。なお、大ドットに限らず、小ドットや中ドットを発生させてもよい。即ち、濃度補正処理部１５は、大ドットが形成される画素データのうち、大ドット用補正値Ｈｌに対応する数の画素データ（Ｎ３個×０．１５）を、「大ドット形成」に変換する。なお、補正対象の画素データは、Ｘ方向にバランスよく並ぶ画素データとする。
【００９９】
また、図１５Ｂでは、説明のため、列領域１に属する画素データは、「ドット無し画素」から「大ドット形成画素」まで存在しているが、実際には、図１２Ａのドットの生成率テーブルから分かるように、階調値（濃度）によって発生するドットの種類が異なる。そのため、濃度の淡い列領域では小ドットが多く発生し、中間の濃度の列領域では中ドットが多く発生し、濃度の濃い列領域では大ドットが多く発生する。
【０１００】
また、本実施形態のプリンター１の高階調補正値Ｈ（図１０）では、濃度が濃くなるほど、補正値Ｈの値が大きく（Ｈｓ＜Ｈｍ＜Ｈｌ）、多くの画素データのドットサイズを大きくしたり、新たに大ドットを発生させたりする必要がある。つまり、濃度の淡い列領域ほど補正量は小さくてよく、濃度の濃い列領域ほど補正量は大きくする必要がある。そして、実施例２の濃度補正処理によれば、濃度の淡い列領域に対応する画素列データでは小ドット形成の画素が多いため、小さい補正値Ｈｓにより、補正対象の画素データの数は少なく、補正量を小さく出来る。逆に、濃度の濃い列領域に対応する画素列データでは大ドット形成の画素が多いため、大きい補正値Ｈｌにより、補正対象の画素データの数を多く出来る。
【０１０１】
同様に、図１５Ｃは列領域２を淡く補正する様子を示す。淡く補正する場合も同様に、濃度補正処理部１５は、小ドットを形成する画素数「Ｎ４個」と、中ドットを形成する画素数「Ｎ５個」と、大ドットを形成する画素数「Ｎ６個」を算出する。そして、小ドットを形成する画素のうち、小ドット用補正値「−５％」に対応する数の画素データ（Ｎ４個×０．０５）を「ドット無し」に変換し、中ドットを形成する画素のうち、中ドット用補正値「−１０％」に対応する数の画素データ（Ｎ５個×０．１）を「小ドット形成」に変換し、大ドットを形成する画素のうち、大ドット用補正値「−１５％」に対応する数の画素データ（Ｎ６個×０．１５）を「中ドット形成」に変換する。そうすることで、列領域２を淡く補正することができる。
【０１０２】
このように実施例２では、淡い指令階調値Ｓａの補正値Ｈａを小ドット用の補正値Ｈｓに設定し、列領域の濃度が淡く小ドットを形成する画素データを多く含む場合には、淡い濃度用の補正値Ｈａ（＝Ｈｓ）に基づく数の画素データを補正することができ、中間の指令階調値Ｓｂの補正値Ｈｂを中ドット用の補正値Ｈｍに設定し、列領域が中間の濃度で中ドットを形成する画素データを多く含む場合には、中間濃度用の補正値Ｈｂ（＝Ｈｍ）に基づく数の画素データを補正することができ、濃い指令階調値Ｓｃの補正値Ｈｃを大ドット用の補正値Ｈｌに設定し、列領域の濃度が濃く大ドットを形成する画素データを多く含む場合には、濃い濃度用の補正値Ｈｃ（＝Ｈｌ）に基づく数の画素データを補正することができる。そのため、濃度に応じた補正を行うことができ、より濃度むらを解消することが出来る。なお、プリンター１のメモリー１３に記憶されている高階調補正値Ｈを使用するに限らず、高階調補正値Ｈとは異なる各ドット用補正値Ｈｓ，Ｈｍ，Ｈｌを別に設定し、プリンター１のメモリー１３に記憶させてもよい。
【０１０３】
＜濃度補正処理：実施例３＞
図１６Ａは、実施例３にて使用する４階調画素データに対する補正値を示す図であり、図１６Ｂは、実施例３における画素列データの補正の様子を示す図である。前述の実施例では、プリンター１のメモリー１３に記憶された高階調補正値Ｈ（図９）を用いて、他のプログラムからの４階調の画素データを補正しているが、これに限らない。新たに４階調用の補正値Ｈを設定してもよい。この４階調用の補正値も、列領域ごと（画素列データごと）に設定する。また、４階調用の補正値を色ごとに設定してもよい。そして、淡く視認される列領域は、濃く印刷されるような補正値Ｈを設定し、濃く視認される列領域は淡く印刷されるような補正値Ｈを設定することで、濃度むらをより解消することが出来る。
【０１０４】
この実施例３では、図１６Ａに示すように、２つの画素データごと（所定数の画素データごと）に補正値Ｈを決定する。１つの画素データは４階調にて表現されるため、２つの画素データの組み合わせは１０通りとなる。そのため、４階調用の補正値Ｈも１０個設定する。なお、２つの画素データの並び順は関係ないとする。例えば、列領域１の補正値テーブル（図１６Ａ）によると、２つの画素データが共に「ドット無し」を示す場合の補正値は「Ｈ１_１」に設定され、一方の画素データが「ドット無し」を示し、他方の画素データが「小ドット形成」を示す場合の補正値は「Ｈ２_１」に設定される。
【０１０５】
また、本実施形態のプリンター１では、図１０に示すように、階調値が高くなるにつれて、高階調補正値Ｈが大きく、濃度の補正量が大きくなる。そのため、２つの画素データが共に、ドット無しであったり、小ドット形成であったりする場合、その画素データに対応する列領域は、比較的に濃度が淡い列領域と想定される。そのため、ドットが形成されなかったり、小ドットが形成されたりする画素データの組み合わせでは、補正値Ｈを比較的に小さい値に設定するとよい。逆に、大ドットが形成される画素データの組み合わせでは、補正値Ｈを比較的に大きく設定するとよい。こうすることで、列領域の濃度に応じて濃度補正を行うことが出来る。
【０１０６】
そして、濃度補正処理部１５は、１つの列領域に対応する画素列データにおいて、Ｘ方向の左側から順に、２つの画素データごとに補正値を決定し、その補正値を積算する。例えば、図１６Ｂでは、列領域１に対応する画素列データにおいて、Ｘ方向の最も左側の２つの画素データの組み合わせは、「小ドット形成」と「ドット無し」である。濃度補正処理部１５は、この２つの画素データに対応する補正値＋５％を、補正値テーブル（図１６Ａ）を参照して決定する。次に、濃度補正処理部１５は、左から３番目と４番目の２つの画素データの組み合わせ（中ドット形成・小ドット形成）に基づいて、この２つの画素データに対応する補正値「＋７％」を決定する。そして、濃度補正処理部１５は、その前の２つの画素データの補正値「＋５％」と「＋７％」を積算し、積算値を算出する。
【０１０７】
このように、濃度補正処理部１５は、２つの画素列データごとに補正値Ｈを決定し、その補正値Ｈを積算して積算値を算出し、その積算値が１００％に達した時点で、その２つの画素列データを補正する。図１６Ｂでは、積算値が１０２％となった２つの画素データにおいて、一方の画素データ「ドット無し」から「大ドット形成」に変更している。なお、２つの画素データの両方のデータを変換してもよく、ドットサイズを１段階だけ大きくしてもよい。また、２つの画素データが共に大ドット形成であった場合には、隣の画素データを変換してもよい。逆に、列領域を淡く印刷する場合には、マイナスの補正値Ｈが設定されており、積算値が「−１００％」に達した時点で、２つの画素データのドットサイズを小さく補正したり、ドットを発生させなくしたりする。
【０１０８】
そして、濃度補正処理部１５は、積算値が＋１００％か−１００％に達した後は、その積算値から１００％分を引いた値を積算値とし、次の２つの画素データの補正値を決定し、再び積算していく。こうすることで、他のプログラムから受信した４階調の画素データに対して、濃度補正処理を行うことが出来る。
【０１０９】
＝＝＝その他の実施の形態＝＝＝
上記の各実施形態は、主としてインクジェットプリンターを有する印刷システムについて記載されているが、濃度むら補正方法の開示が含まれている。また、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることはいうまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
【０１１０】
＜その他のプリンターについて＞
前述の実施形態では、ヘッド４１がノズル列と交差する移動方向に移動しながら画像を形成する動作と媒体をノズル列方向に搬送する動作とを交互に繰り返しシリアル式のプリンターを例に挙げているが、これに限らない。例えば、紙幅長さに亘ってノズルが並び、その長いノズル列の下を媒体が停まることなく搬送されるライン式のプリンターでもよい。また、印刷領域に搬送された連続紙に対して、連続紙の搬送方向に沿ってヘッドが移動しながら画像を形成する動作と、搬送方向と交差する紙幅方向に複数のヘッドを移動する動作を繰り返し、画像を形成した後に、連続紙を搬送方向に搬送するプリンターでもよい。
【０１１１】
＜流体噴射装置について＞
前述の実施形態では、流体噴射装置としてインクジェットプリンターを例示していたが、これに限らない。流体噴射装置であれば、プリンター（印刷装置）ではなく、様々な工業用装置に適用可能である。例えば、布地に模様をつけるための捺染装置、カラーフィルター製造装置や有機ＥＬディスプレイ等のディスプレイ製造装置、チップへＤＮＡを溶かした溶液を塗布してＤＮＡチップを製造するＤＮＡチップ製造装置等であっても、本件発明を適用することができる。また、液体を噴射するに限らず、例えば粉体などの流体を噴射する装置であってもよい。  
また、流体の噴射方式は、駆動素子（ピエゾ素子）に電圧をかけて、インク室を膨張・収縮させることにより流体を噴射するピエゾ方式でもよいし、発熱素子を用いてノズル内に気泡を発生させ、その気泡によって液体を噴射させるサーマル方式でもよい。
【符号の説明】
【０１１２】
１  プリンター、１０  コントローラー、１１  インターフェース部、
１２  ＣＰＵ、１３  メモリー、１４  ユニット制御回路、
１５  濃度補正処理部、１６  識別部、２０  搬送ユニット、
３０  キャリッジユニット、３１  キャリッジ、
４０  ヘッドユニット、４１  ヘッド、
５０  検出器群、６０  コンピューター
【図１】
2010228228.tif 000003
【図２】
2010228228.tif 000004
【図３】
2010228228.tif 000005
【図４】
2010228228.tif 000006
【図５】
2010228228.tif 000007
【図７】
2010228228.tif 000008
【図８】
2010228228.tif 000009
【図９】
2010228228.tif 000010
【図１０】
2010228228.tif 000011
【図１１】
2010228228.tif 000012
【図１２】
2010228228.tif 000013
【図１３】
2010228228.tif 000014
【図１４】
2010228228.tif 000015
【図１５】
2010228228.tif 000016
【図１６】
2010228228.tif 000017
【図６】
2010228228.tif 000018