(57)【要約】【課題】  吐出量のバラツキが補償された処理済み画像データを用いて、高画質の画像を形成し得る技術を提供する。【解決手段】  分類部３１は、複数個のノズルに対応する複数個の特性データのうち、分類対象の対象ブロックに属するノズルに対応する特性データを用いて、対象ブロックが、使用ブロックと非使用ブロックとのどちらであるのかを決定する。画像処理部３２は、使用ブロックに属する各ノズルが使用され、非使用ブロックに属する各ノズルが使用されないように、画像処理を実行して処理済み画像データを生成する。画像処理部３２は、使用ブロックに属する各ノズルから吐出される液滴の吐出量のバラツキを補償するために、処理対象の対象画像データ内の注目画素に対して、注目画素に対応する印刷媒体上の位置にドットを形成する注目ノズルであって、使用ブロックに属する注目ノズルのための補正用データを用いて、特定の処理を実行する。【選択図】  図１
2011131473.tif 000002
【特許請求の範囲】
【請求項１】
２個以上のブロックに区分される複数個のノズルが形成された印刷ヘッドを含む印刷実行部に印刷を実行させるための制御装置であって、
前記２個以上のブロックを、印刷に使用されるべき使用ブロックと、印刷に使用されるべきでない非使用ブロックと、に分類する分類部と、
特定の画像データに対して画像処理を実行することによって、処理済み画像データを生成する画像処理部と、
前記処理済み画像データを前記印刷実行部に供給する供給部と、
を備え、
前記分類部は、前記複数個のノズルに対応する複数個の特性データのうち、分類対象の対象ブロックに属するノズルに対応する特性データを用いて、前記対象ブロックが、前記使用ブロックと前記非使用ブロックとのどちらであるのかを決定し、
前記特性データは、対応するノズルから吐出される液滴の吐出量に関係するデータであり、
前記画像処理部は、
前記使用ブロックに属する各ノズルが使用され、前記非使用ブロックに属する各ノズルが使用されないように、前記画像処理を実行して前記処理済み画像データを生成し、
前記画像処理を実行する際に、前記使用ブロックに属する前記各ノズルから吐出される液滴の吐出量のバラツキを補償するために、対象の画像データ内の注目画素に対して、前記注目画素に対応する印刷媒体上の位置にドットを形成する注目ノズルであって、前記使用ブロックに属する前記注目ノズルのための補正用データを用いて、特定の処理を実行し、
前記補正用データは、前記注目ノズルに対応する前記特性データを用いて得られるデータである、制御装置。
【請求項２】
前記分類部は、前記対象ブロックに属する前記ノズルに対応する前記特性データと、前記使用ブロックとして決定済みの基準ブロックに属するノズルに対応する前記特性データと、を用いて、前記決定を実行する、請求項１に記載の制御装置。
【請求項３】
前記分類部は、前記対象ブロックに属する前記ノズルに対応する前記特性データと、前記基準ブロックに属する前記ノズルに対応する前記特性データと、を用いて得られる第１種の値が、閾値以下である場合に、前記対象ブロックを前記使用ブロックとして決定し、
前記第１種の値が、前記閾値よりも大きい場合に、前記対象ブロックを前記非使用ブロックとして決定する、請求項２に記載の制御装置。
【請求項４】
前記印刷実行部は、
前記印刷ヘッドが第１の回数の主走査を実行することによって、前記画像データによって表わされる画像を、第１の印刷解像度で前記印刷媒体に印刷する第１の印刷モードと、
前記印刷ヘッドが前記第１の回数よりも大きい第２の回数の主走査を実行することによって、前記画像データによって表わされる前記画像を、第２の印刷解像度で前記印刷媒体に印刷する第２の印刷モードと、
で動作可能であり、
前記第２の印刷解像度は、前記第１の印刷解像度よりも高い解像度、又は、前記第１の印刷解像度と同じ解像度であり、
前記分類部は、
前記印刷実行部が前記第１の印刷モードで動作すべき場合に、第１の値を前記閾値として選択し、
前記印刷実行部が前記第２の印刷モードで動作すべき場合に、前記第１の値と異なる第２の値を前記閾値として選択する、請求項３に記載の制御装置。
【請求項５】
前記分類部は、前記対象ブロックが前記使用ブロックとして決定される場合に、前記対象ブロックを前記基準ブロックに追加し、新たな対象ブロックについての前記決定を実行する、請求項２から４のいずれか一項に記載の制御装置。
【請求項６】
前記２個以上のブロックは、前記印刷ヘッドの主走査方向と直交する副走査方向に沿って並んでおり、
前記基準ブロックは、前記副走査方向において前記印刷ヘッドの中央付近に形成されたノズルが属する中央ブロックを含み、
前記分類部は、前記基準ブロックに近いブロックから順に、前記対象ブロックとして選択する、請求項２から５のいずれか一項に記載の制御装置。
【請求項７】
前記２個以上のブロックは、前記印刷ヘッドの主走査方向と直交する副走査方向に沿って並んでおり、
前記分類部は、さらに、
前記副走査方向において前記印刷ヘッドの中央付近に形成されたノズルが属する中央ブロックが、前記使用ブロックとして決定される場合に、前記中央ブロックを前記基準ブロックとして選択し、
前記中央ブロックが、前記非使用ブロックとして決定される場合に、前記２個以上のブロックのうちの前記中央ブロック以外の各ブロックについて、当該ブロックに属するノズルに対応する前記特性データを用いて得られる第２種の値を算出し、最小の前記第２種の値が算出される特定のブロックを前記基準ブロックとして選択する、請求項２から５のいずれか一項に記載の制御装置。
【請求項８】
前記分類部は、前記使用ブロックに分類される２個のブロックの間に、前記非使用ブロックに分類されるブロックが存在しないように、前記分類を実行する、請求項１から７のいずれか一項に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、液滴を吐出するための複数個のノズルが形成された印刷ヘッドを含む印刷実行部に印刷を実行させるための制御装置に関する技術を開示する。
【背景技術】
【０００２】
多くのインクジェットプリンタは、ＣＭＹＫ形式で記述された複数個の画素を含むＣＭＹＫ画像データに対して画像処理（例えばハーフトーン処理）を実行することによって、二値（ドット無、ドット有）又は三値以上（ドット無、小ドット、中ドット、大ドット等）で記述された複数個の画素を含む処理済み画像データを生成する。インクジェットプリンタは、処理済み画像データ内の複数個の画素のそれぞれについて、当該画素に対応する印刷媒体上の位置に、当該画素の値に従ってドットを形成する。これにより、処理済み画像データによって表わされる画像が、印刷媒体に形成される。
【０００３】
特許文献１のインクジェットプリンタは、印刷ヘッドに形成された複数個のノズルのそれぞれについて、当該ノズルから吐出されるインク滴の吐出量に関係する特性データを記憶している。具体的には、特性データは、予め決められている目標の吐出量に対して何パーセントの増減があるのかを示すデータである。このインクジェットプリンタは、各ノズルの特性データを用いて、ＣＭＹＫ画像データを補正する。例えば、ＣＭＹＫ画像データ内の特定の画素のＫ値がＫであり、上記の特定の画素に対応する印刷媒体上の位置にドットを形成するノズルの特性データがＸ％である場合には、Ｋ×（１００％−Ｘ％）という計算式によって、上記の特定の画素のＫ値が補正される。ＣＭＹＫ画像データ内の各画素について、上記の補正が実行される。インクジェットプリンタは、補正後のＣＭＹＫ画像データに対してハーフトーン処理を実行する。この結果、複数個のノズルから吐出されるインク滴の吐出量のバラツキ（以下では単に「吐出量のバラツキ」と呼ぶことがある）が補償された処理済み画像データが生成される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２５２１２号公報
【特許文献２】特開平１１−５８７０４号公報
【特許文献３】特開２００１−３８８９２号公報
【特許文献４】特開２００５−２２５１９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
印刷媒体に印刷される画像の画質を向上させることが求められている。本明細書では、高画質の画像を印刷し得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される技術は、２個以上のブロックに区分される複数個のノズルが形成された印刷ヘッドを含む印刷実行部に印刷を実行させるための制御装置として具現化される。この制御装置は、分類部と、画像処理部と、供給部と、を備える。分類部は、２個以上のブロックを、印刷に使用されるべき使用ブロックと、印刷に使用されるべきでない非使用ブロックと、に分類する。画像処理部は、特定の画像データに対して画像処理を実行することによって、処理済み画像データを生成する。供給部は、処理済み画像データを印刷実行部に供給する。上記の分類部は、複数個のノズルに対応する複数個の特性データのうち、分類対象の対象ブロックに属するノズルに対応する特性データを用いて、対象ブロックが、使用ブロックと非使用ブロックとのどちらであるのかを決定する。特性データは、対応するノズルから吐出される液滴の吐出量に関係するデータである。画像処理部は、使用ブロックに属する各ノズルが使用され、非使用ブロックに属する各ノズルが使用されないように、画像処理を実行して処理済み画像データを生成する。さらに、画像処理部は、画像処理を実行する際に、使用ブロックに属する各ノズルから吐出される液滴の吐出量のバラツキを補償するために、対象の画像データ内の注目画素に対して、注目画素に対応する印刷媒体上の位置にドットを形成する注目ノズルであって、使用ブロックに属する注目ノズルのための補正用データを用いて、特定の処理を実行する。補正用データは、注目ノズルに対応する特性データを用いて得られるデータである。
【０００７】
例えば、印刷ヘッドに形成された複数個のノズルの中に他のノズル群と比べて大きく吐出量が異なるノズル群が存在する場合には、換言すれば、複数個のノズルから吐出される液滴の吐出量のバラツキが比較的に大きい場合には、吐出量のバラツキを補償するための補償処理を実行しても、吐出量のバラツキを適切に補償することが困難なことがある。上記の制御装置によると、分類部は、分類対象の対象ブロックに属するノズルに対応する特性データ（液滴の吐出量に関係するデータ）を用いて、対象ブロックが使用ブロックと非使用ブロックとのどちらであるのかを決定する。従って、分類部は、例えば、対象ブロックに属するノズルから吐出される液滴の吐出量が、他のブロックに属するノズルから吐出される液滴の吐出量と大きく異なる場合に、当該対象ブロックを非使用ブロックとして決定することができる。この結果として、吐出量のバラツキが比較的に小さいブロック群が、使用ブロックとして分類されることになる。この場合、画像処理部は、非使用ブロックに属する各ノズルが使用されず、吐出量のバラツキが比較的に小さい使用ブロックに属する各ノズルが使用されるように、画像処理を実行することができる。この画像処理の際に、画像処理部は、使用ブロックに属する各ノズルの吐出量のバラツキを補償するための補償処理（上記の特定の処理）を実行する。使用ブロックに属する各ノズルの吐出量のバラツキが比較的に小さいために、画像処理部は、吐出量のバラツキが適切に補償された処理済み画像データを生成し得る。その処理済み画像データが印刷実行部に供給されるために、印刷実行部は、処理済み画像データを用いて、高画質の画像を印刷媒体に印刷し得る。
【０００８】
なお、上記した制御装置の機能を実現するための制御方法、及び、コンピュータプログラムも、新規で有用である。
【図面の簡単な説明】
【０００９】
【図１】ネットワークシステムの構成を示す。
【図２】印刷ヘッドのノズル面の平面図を示す。
【図３】特性データテーブルを示す。
【図４】複数個のブロックに区分されるＫ用ノズル群を示す。
【図５】第１の印刷モードで形成されるラスタ群を示す。
【図６】第２の印刷モードにおいて印刷媒体が搬送される様子を示す。
【図７】第２の印刷モードで形成されるラスタ群を示す。
【図８】ＰＣが実行する分類処理のフローチャートを示す。
【図９】Ｋ用ノズル群の各ノズル番号と、当該ノズル番号に対応する特性データの関係を表わすグラフを示す。
【図１０】Ｋ用ノズル群の各ノズル番号と、当該ノズル番号に対応する特性データの関係を表わすグラフを示す。
【図１１】ＰＣが実行する二値データ生成処理のフローチャートを示す。
【図１２】変換済みＲＧＢ画像データ内の各画素を示す。
【図１３】ＣＭＹＫ画像データ内の各画素を示す。
【図１４】ＣＭＹＫ画像データ内の各画素の誤差値を示す。
【図１５】ＣＭＹＫ画像データ内の各画素の誤差値を算出するための式を示す。
【図１６】第２実施例で生成される補正済み画像データ内の各画素を示す。
【図１７】第３実施例の第３の印刷モードで形成されるラスタ群を示す。
【発明を実施するための形態】
【００１０】
（第１実施例）
（システムの構成）
図面を参照して第１実施例を説明する。図１は、本実施例のネットワークシステム２の概略図を示す。ネットワークシステム２は、ＬＡＮ４とＰＣ１０とプリンタ５０とを備える。ＰＣ１０とプリンタ５０とは、ＬＡＮ４に接続されている。ＰＣ１０とプリンタ５０とは、ＬＡＮ４を介して、相互に通信可能である。
【００１１】
（ＰＣ１０の構成）
ＰＣ１０は、操作部１２と、表示部１４と、ネットワークインターフェイス１６と、記憶部２０と、制御部３０と、を備える。操作部１２は、マウスとキーボードとによって構成される。ユーザは、操作部１２を操作することによって、様々な指示をＰＣ１０に入力することができる。表示部１４は、様々な情報を表示するためのディスプレイである。ネットワークインターフェイス１６は、ＬＡＮ４に接続されている。
【００１２】
記憶部２０は、ワーク領域２２を備える。ワーク領域２２は、例えば、印刷対象のデータを記憶する。印刷対象のデータは、例えば、ＰＣ１０内のアプリケーションによって生成されるデータであってもよいし、外部装置から取得されるデータであってもよい。ＰＣ１０内のアプリケーションの例として、ワープロソフト、表計算ソフト等を挙げることができる。外部装置の例として、インターネット上のサーバ、ＬＡＮ４に接続されているデバイス、持ち運び可能な記憶媒体等を挙げることができる。記憶部２０は、さらに、プリンタ５０のためのプリンタドライバ２４を記憶する。プリンタドライバ２４は、プリンタ５０に様々な指示（例えば印刷指示）を送信するためのソフトウェアである。プリンタドライバ２４は、例えば、プリンタドライバ２４を格納しているコンピュータ読取可能媒体からＰＣ１０にインストールされてもよいし、インターネット上のサーバからＰＣ１０にインストールされてもよい。
【００１３】
制御部３０は、記憶部２０に格納されているプログラム（例えばプリンタドライバ２４）に従って、様々な処理を実行する。制御部３０がプリンタドライバ２４に従って処理を実行することによって、分類部３１と画像処理部３２と供給部４８の機能が実現される。画像処理部３２は、色変換処理部３４と、取得部３６と、補正用データ算出部３８と、ハーフトーン処理部４０と、を備える。ハーフトーン処理部４０は、補正部４２と、決定部４４と、誤差値算出部４６と、を備える。
【００１４】
（プリンタ５０の構成）
プリンタ５０は、ネットワークインターフェイス５２と、操作部５３と、表示部５４と、制御部５５と、記憶部５６と、印刷実行部７０と、を備える。ネットワークインターフェイス５２は、ＬＡＮ４に接続されている。操作部５３は、複数個のキーによって構成される。表示部５４は、様々な情報を表示するためのディスプレイである。制御部５５は、記憶部５６に記憶されているプログラム６４に従って、様々な処理を実行する。印刷実行部７０は、記憶部５６に記憶されているプログラム６４に従って、ＰＣ１０から供給される二値データによって表される画像を印刷媒体に印刷する。印刷実行部７０は、印刷ヘッド８０を備える。印刷実行部７０は、印刷ヘッド８０の他にも、印刷ヘッド８０の駆動機構、印刷媒体の搬送機構等（これらは図示省略）を備える。
【００１５】
印刷ヘッド８０の駆動機構は、キャリッジと、キャリッジを移動させるモータと、を備える。印刷ヘッド８０は、キャリッジに着脱可能に搭載される。キャリッジは、プリンタ５０の筐体内を所定方向に往復移動する。キャリッジが移動すると、印刷ヘッド８０も移動する。キャリッジの往復移動方向、即ち、印刷ヘッド８０の往復移動方向のことを「主走査方向」と呼ぶ。印刷ヘッド８０の駆動機構は、さらに、印刷ヘッド８０に駆動信号を供給する回路を備える。印刷ヘッド８０に駆動信号が供給されると、印刷ヘッド８０に形成されたノズル群８４ｋ等（図２参照）からインク滴が吐出される。１回の主走査の往路の間に、ノズル群８４ｋ等からインク滴が吐出されるように、駆動信号が印刷ヘッド８０に供給される。なお、１回の主走査の復路の間には、ノズル群８４ｋ等からインク滴が吐出されない。印刷媒体の搬送機構は、主走査方向に垂直の方向に印刷媒体を搬送する。印刷媒体の搬送方向のことを「副走査方向」と呼ぶ。なお、本実施例では、印刷ヘッド８０が１回の往復移動を行うことを「１回の主走査」と呼ぶ。別の実施例では、印刷ヘッド８０の１回の往復移動の往路と復路の両方の間に、ノズル群８４ｋ等からインク滴が吐出されるように、駆動信号が印刷ヘッド８０に供給されてもよい。この場合、印刷ヘッド８０の１回の往復移動のうち、往路と復路のそれぞれを「１回の主走査」ということができる。
【００１６】
図２に示されるように、印刷ヘッド８０は、３種類の有彩色（シアン、マゼンタ、イエロ）のインク滴を吐出するための３組のノズル群８４ｃ，８４ｍ，８４ｙと、ブラックのインク滴を吐出するための１組のノズル群８４ｋと、が形成されたノズル面８２を備える。Ｋ用ノズル群８４ｋは、ｎ個（ｎは２以上の整数）のＫ用ノズルによって構成される。Ｋ用ノズル群８４ｋは、副走査方向に伸びる６本のノズル列Ｌｋ１〜Ｌｋ６を形成する。Ｋ用ノズル群８４ｋのｎ個のＫ用ノズルは、６本のノズル列Ｌｋ１等のいずれかに属する。例えば、Ｋ用ノズルＮｋ１，Ｎｋ７等はノズル列Ｌｋ１に属し、Ｋ用ノズルＮｋ４等はノズル列Ｌｋ２に属し、Ｋ用ノズルＮｋ２等はノズル列Ｌｋ３に属する。１本のノズル列に属する隣接する２個のＫ用ノズル（例えばノズル列Ｌｋ１に属するＫ用ノズルＮｋ１とＫ用ノズルＮｋ７）の間には、副走査方向において、他の５本のノズル列に属する５個のＫ用ノズル（例えばＮＫ２〜ＮＫ６）が位置する。なお、本明細書では、Ｋ用ノズル群８４ｋのうち、副走査方向の最も下流側（図２の上側）に存在するＫ用ノズルの参照番号として「Ｎｋ１」を採用しており、副走査方向の上流側（図２の下側）に向かうにつれて、Ｋ用ノズルの参照番号が大きくなる（例えばＮｋ２、Ｎｋ３・・・）。
【００１７】
他の色に対応するノズル群８４ｃ等は、Ｋ用ノズル群８４ｋと同様の構成を備える。従って、ノズル面８２には、合計で４ｎ個のノズルが形成されている。なお、以下では、ＣＭＹＫの４色のインク滴を吐出する全てのノズルのことを「４ｎ個のノズル」と呼ぶ。他の色のノズル群８４ｃ等についても、Ｋ用ノズル群８４ｋの場合と同様に参考番号が設定されている。なお、４個のノズル群８４ｋ等が同様の構成を備えるために、ＣＭＹＫの４色に対応する４個のノズルは、副走査方向において同じ位置に配置されている。例えば、副走査方向において、４個のノズルＮｋ１，Ｎｃ１，Ｎｍ１，Ｎｙ１が同じ位置に配置されていると共に、４個のノズルＮｋ２，Ｎｃ２，Ｎｍ２，Ｎｙ２が同じ位置に配置されている。
【００１８】
印刷ヘッド８０に形成されている４組のノズル群８４ｋ等のそれぞれは、複数個のブロックに区分される。図４に示されるＰｋ１、Ｐｋ２等は、副走査方向に沿って伸びる投影線ＰＬが設定された場合に、Ｋ用ノズル群８４ｋを構成するＫ用ノズルＮｋα、Ｎｋα＋１等を主走査方向に投影することによって得られる投影点を示す。ｎ個のＫ用ノズルを備えるＫ用ノズル群８４ｋは、副走査方向に沿って並ぶｎ／６個のブロックＮｋｂ０〜Ｎｋｂ７等に区分される。即ち、本実施例では、１個のブロックには、副走査方向に連続して並ぶ６個のＫ用ノズルが含まれる。なお、ブロックＮｋｂ０は、ｎ個のＫ用ノズルの中で、副走査方向の中央に配置されたノズルＮｋ２／ｎを含むブロックである。即ち、例えば、ｎが３００である場合には、ブロックＮｋｂは、ノズルＮｋ１５０を含む。以下では、ブロックＮｋｂ０のことを「中央ブロックＮｋｂ０」と呼ぶ。なお、他のＣ用、Ｍ用、Ｙ用の各ノズル群８４ｃ、８４ｍ、８４ｙは、Ｋ用ノズル群８４ｋの場合と同様に、複数個のブロックに区分される。
【００１９】
記憶部５６は、特性データテーブル６０と、閾値テーブル６２と、プログラム６４と、を記憶する。プログラム６４は、印刷実行部７０によって実行される印刷のためのプログラムを含む。図３に示されるように、特性データテーブル６０には、印刷ヘッド８０に形成された４ｎ個のノズルのそれぞれについて、当該ノズルのノズル番号と、当該ノズルから吐出されるインク滴の吐出量に関係する特性データと、が対応づけて登録されている。図３の特性データテーブル６０では、ノズルのノズル番号として、当該ノズルの参照番号（図２のＮｋ１等）を採用している。例えば、ノズル番号Ｎｋ１に対応する特性データ「６」は、ブラックのインク滴を吐出するためのＫ用ノズルＮｋ１（図２参照）の特性データを示す。特性データテーブル６０に登録されている各特性データは、プリンタ５０のベンダによって予め調査されている。具体的には、次の手法によって調査される。
【００２０】
図示省略しているが、印刷ヘッド８０は、４ｎ個のノズルからインク滴を吐出させるためのアクチュエータユニットを備える。アクチュエータユニットは、４ｎ個のノズルに対応する４ｎ個の個別電極を備える。個別電極に上記の駆動信号が供給されると、当該個別電極に対応するノズルから１個のインク滴が吐出される。プリンタ５０のベンダは、Ｋ用ノズル群８４ｋに属するｎ個のＫ用ノズルに対応するｎ個の個別電極のそれぞれに１個の駆動信号を供給する。なお、ここで供給されるｎ個の駆動信号は、同じ信号である。上記のｎ個の駆動信号が供給されると、ｎ個のＫ用ノズルから所定の媒体に向けてｎ個のブラックのインク滴が吐出される。この結果、ｎ個のＫ用ノズルに対応するｎ個のブラックのドットが上記の所定の媒体上に形成される。
【００２１】
ベンダは、ｎ個のブラックのドットのそれぞれについて、当該ドットの濃度（例えば単位面積当りのブラックの濃さ）を測定する。ベンダは、Ｋ用ノズル群８４ｋのうち、最も濃度が低い特定のドットの濃度を２５６階調の最大値である「２５５」に決定する。次いで、ベンダは、他のＫ用ノズルが形成するドットの濃度を、最も濃度が低い特定のドットの濃度を基準にして特定する。このため、他のＫ用ノズルが形成するドットの濃度は、２５５以上の値で特定される。続いて、ベンダは、各Ｋ用ノズルが形成したドットの濃度と、最も濃度が低い特定のドットの濃度（即ち２５５）と、の差分に基づいて、当該Ｋ用ノズルの特性データを決定する。このため、本実施例では、最も濃度が低い特定のドットを形成するＫ用ノズルの特性データは、ゼロに決定される。そして、他のＫ用ノズルが形成するドットの濃度は、ゼロ以上の値に決定される。例えば、図３に示されるノズル番号Ｎｋ１に対応する特性データは「６」である。これは、Ｋ用ノズルＮｋ１が形成したドットの濃度（２６１）と、最も濃度が低い特定のドットの濃度（２５５）と、の差分が、「６」であることを意味する。ベンダは、ブラックの場合と同様に、シアン、マゼンタ、イエローのそれぞれについても、各ノズルの特性データを決定する。例えば、ベンダは、Ｃ用ノズル群８４ｃのうち、最も濃度が低い特定のドットを形成する特定のＣ用ノズルの特性データをゼロに決定する。さらに、ベンダは、他のＣ用ノズルが形成するドットの濃度と、上記の特定のドットの濃度と、の差分に基づいて、当該他のＣ用ノズルの特性データを決定する。ベンダは、調査結果に基づいて特性データテーブル６０を生成し、特性データテーブル６０を記憶部５６に格納させる。プリンタ５０は、出荷段階において、特性データテーブル６０を既に記憶している。
【００２２】
図１に示されるように、閾値テーブル６２には、印刷実行部７０が実行する複数の印刷モードのそれぞれについて、当該印刷モードにおける第１種の閾値Ｔｈａが登録されている。複数の印刷モードは、パス数が異なる。パス数は、１ノズルピッチの間にドット群を形成する印刷を行うために必要な印刷ヘッド８０の主走査回数である。１ノズルピッチは、副走査方向において隣接する２個のノズル（例えばＮｋ１とＮｋ２）の間の距離である。例えば、「１パス」は、１ノズルピッチの間に印刷を行なうために１回の主走査が必要であることを示す。また、上記の第１種の閾値Ｔｈａは、ＰＣ１０による分類処理（図８参照）において、分類部３１による決定の基準となる数値である。プリンタ５０は、出荷段階において、閾値テーブル６２を既に記憶している。
【００２３】
（印刷モードについて）
続いて、プリンタ５０の印刷実行部７０が動作可能な印刷モードについて説明する。ＰＣ１０の画像処理部３２（図１参照）は、後述する二値データ生成処理（図１１参照）を実行することによって、二値データを生成する。画像処理部３２は、第１の印刷解像度（例えば３００ｄｐｉ）、第２の印刷解像度（例えば６００ｄｐｉ）、及び、第３の印刷解像度（例えば１２００ｄｐｉ）のうちの１つの印刷解像度が指定された場合、当該印刷解像度に対応する二値データを生成する。ＰＣ１０の供給部４８（図１参照）は、画像処理部３２によって生成された二値データをプリンタ５０に送信する。プリンタ５０の印刷実行部７０は、第１の印刷解像度に対応する二値データが供給される場合に、第１の印刷モードで動作し、第２の印刷解像度に対応する二値データが供給される場合に、第２の印刷モードで動作し、第３の印刷解像度に対応する二値データが供給される場合に、第３の印刷モードで動作する。
【００２４】
（第１の印刷モード（１パス））
後で詳しく述べるが、Ｋ用ノズル群８４ｋを構成する複数個のブロックは、使用ブロックと不使用ブロックとに分類される。本実施例では、使用ブロックに属するノズル群のみを使用して印刷が実行される。図１に示されるＫ用ノズルＮｋαは、使用ブロックに属するノズル群のうち、副走査方向の最も下流側に配置されたノズルである。また、図１に示されるＫ用ノズルＮｋβは、使用ブロックに属するノズル群のうち、副走査方向の最も上流側に配置されたノズルである。なお、本実施例では、使用ブロックに属するＫ用ノズルの数がγ個である。印刷実行部７０は、印刷ヘッド８０の１回の主走査の間に、二値データに基づいて、各Ｋ用ノズルＮｋα等からインク滴を吐出させる。この結果、例えば、１個のＫ用ノズルＮｋαから吐出される複数個のブラックのインク滴によって、主走査方向に沿って並ぶ複数個のブラックのドットが印刷媒体上に形成される。同様に、１個のＫ用ノズルＮｋα＋１から吐出される複数個のブラックのインク滴によって、主走査方向に沿って並ぶ複数個のブラックのドットが印刷媒体上に形成される。白黒印刷の場合には、印刷ヘッド８０の１回の主走査において、１個のＫ用ノズルによって形成される複数個のブラックのドットの並びのことを「１本のラスタ（raster）」と呼ぶ。従って、各ラスタは、主走査方向に沿って伸びる。白黒印刷の場合には、印刷ヘッド８０の１回の主走査において、例えば、７個のＫ用ノズルＮｋα〜Ｎｋα＋６は、７本のラスタＲα〜Ｒα＋６を形成する。
【００２５】
上述したように、例えば、ノズルＮｋαとノズルＮｃαとノズルＮｍαとノズルＮｙαとは、副走査方向において同じ位置に配置されている（図２参照）。従って、カラー印刷の場合には、印刷ヘッド８０の１回の主走査において、４個のノズルＮｋα，Ｎｃα，Ｎｍα，Ｎｙαは、副走査方向において同じ位置にドットを形成する。従って、カラー印刷の場合には、印刷ヘッド８０の１回の主走査において、４個のノズルＮｋα，Ｎｃα，Ｎｍα，Ｎｙαによって形成される複数個のＣＭＹＫのドットの並びのことを「１本のラスタ」と呼ぶ。
【００２６】
第１の印刷モードでは、印刷ヘッド８０の１回目の主走査において、副走査方向に沿って並ぶγ本のラスタが形成される。印刷実行部７０は、印刷ヘッド８０の１回目の主走査が終了すると、印刷媒体の搬送を実行する。第１の印刷モードでは、ここでの搬送距離として第１の距離を採用している。第１の距離は、γノズルピッチ分の距離である。１ノズルピッチは、副走査方向において隣接する２個のノズル（例えばＮαとＮα＋１）の間の距離である。即ち、１ノズルピッチは、隣接する２個の投影点（例えばＰｋαとＰｋα＋１）の間の距離である。次いで、印刷実行部７０は、印刷ヘッド８０の２回目の主走査を実行する。これにより、γ本のラスタが新たに形成される。印刷実行部７０は、印刷媒体の第１の距離の搬送と、印刷ヘッド８０の主走査と、の組合せを繰り返し実行する。これにより、二値データによって表わされる画像が、印刷媒体に印刷される。
【００２７】
上述した説明から明らかなように、第１の印刷モードでは、隣接する２本のラスタの間の距離が、ほぼ１ノズルピッチである。上記の第１の印刷解像度は、副走査方向の印刷解像度を意味する。即ち、上記の第１の印刷解像度は、「隣接する２本のラスタの間の距離が、ほぼ１ノズルピッチである印刷解像度」と言い換えることができる。換言すると、第１の印刷モードでは、１ノズルピッチの間に１本のラスタが形成される。即ち、第１の印刷モードでは、１ノズルピッチの間にドット群を印刷するために１回の主走査が必要であり、１パス印刷が実行される。
【００２８】
（第２の印刷モード（２パス））
白黒印刷の場合を例にして、第２の印刷モードについて説明する。図６に示されるように、第２の印刷モードでは、印刷実行部７０は、まず、印刷媒体１５０の部分１５２に対して印刷が実行されるように、印刷ヘッド８０の１回目の主走査を実行する。部分１５２は、印刷媒体１５０のうち、副走査方向の最も下流側に位置する部分である。本実施例の第２の印刷モードでは、副走査方向の最も上流側に配置される１個のＫ用ノズルＮｋβを使用しない。１回目の主走査では、Ｋ用ノズルＮｋβを除くγ−１個のＫ用ノズルＮｋα等のうち、副走査方向の上流側（図６の下側）に存在するγ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβ−１が、部分１５２上にγ／２本のラスタを形成する。なお、上記の「ｍ」は、γ／２−１である。図７には、１回目の主走査によって、８個のＫ用ノズルＮｋα＋ｍ〜Ｎｋα＋ｍ＋７（図７では投影点Ｐｋα＋ｍ〜Ｐｋα＋ｍ＋７を示す）が、８本のラスタＲα＋ｍ〜Ｒα＋ｍ＋７を形成する様子が示されている。
【００２９】
次いで、印刷実行部７０は、印刷媒体１５０の搬送を実行する。第２の印刷モードでは、ここでの搬送距離として第２の距離を採用している。本実施例では、第２の距離は、（γ―１）／２ノズルピッチ分の距離である。この搬送が実行されると、図７に示されるように、副走査方向の下流側（図６の上側）に存在するγ／２−１個のＫ用ノズルＮｋα〜Ｎｋα＋ｍ−１のそれぞれが、１回目の主走査によって形成された隣接する２本のラスタ（例えばＲｋα＋ｍとＲｋα＋ｍ＋１）の間に位置する。この状態で、印刷実行部７０は、印刷ヘッド８０の２回目の主走査を実行する。これにより、γ／２−１個のＫ用ノズルＮｋα〜Ｎｋα＋ｍ−１のそれぞれが、１回目の主走査によって印刷媒体１５０の部分１５２に形成された隣接する２本のラスタの間に、１本のラスタを形成する。図７には、２回目の主走査において、７個のＫ用ノズルＮｋα〜Ｎｋα＋６（図７では投影点Ｐｋα〜Ｐｋα＋６を示す）が、７本のラスタＲα〜Ｒα＋６を形成する様子が示されている。２回目の主走査では、さらに、副走査方向の上流側（図６の下側）に存在するγ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβ−１が、印刷媒体１５０の部分１５４（図８の中央の図参照）上にγ／２本のラスタを形成する。部分１５４は、部分１５２に隣接する部分であり、副走査方向において、部分１５２の上流側に位置する部分である。
【００３０】
印刷実行部７０は、印刷媒体１５０の第２の距離の搬送と、印刷ヘッド８０の主走査と、の組合せを繰り返し実行する。これにより、例えば、３回目の主走査では、γ／２−１個のＫ用ノズルＮｋα〜Ｎｋα＋ｍ−１のそれぞれが、２回目の主走査によって印刷媒体１５０の部分１５４に形成された隣接する２本のラスタの間に、１本のラスタを形成する。３回目の主走査では、さらに、γ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβ−１が、印刷媒体１５０の部分１５６（図６の最も右の図参照）上にγ／２本のラスタを形成する。部分１５６は、部分１５４に隣接する部分であり、副走査方向において、部分１５４の上流側に位置する部分である。印刷実行部７０は、印刷媒体の第２の距離の搬送と、印刷ヘッド８０の主走査と、の組合せを繰り返し実行する。これにより、二値データによって表わされる画像が、印刷媒体に印刷される。なお、カラー印刷の場合の第２の印刷モードは、他の色のノズル群８４ｃ等が利用される点を除けば、白黒印刷の場合と同様である。
【００３１】
上述した説明から明らかなように、第２の印刷モードでは、隣接する２本のラスタの間の距離が、ほぼ１／２ノズルピッチである。上記の第２の印刷解像度は、副走査方向において、上記の第１の印刷解像度の２倍の印刷解像度である。上記の第２の印刷解像度は、「隣接する２本のラスタの間の距離が、ほぼ１／２ノズルピッチである印刷解像度」と言い換えることができる。換言すると、第２の印刷モードでは、１ノズルピッチの間に２本のラスタが形成される。即ち、第２の印刷モードでは、１ノズルピッチの間にドット群を印刷するために２回の主走査が必要であり、２パス印刷が実行される。
【００３２】
（第３の印刷モード（４パス））
第３の印刷モードは、隣接する２本のラスタの間の距離が、ほぼ１／４ピッチである印刷モードである。即ち、第３の印刷モードでは、１回目の主走査によって形成された隣接する２本のラスタの間に、２回目〜４回目の主走査によって３本のラスタが形成される。上記の第３の印刷解像度は、副走査方向において、上記の第２の印刷解像度の２倍の印刷解像度である。上記の第３の印刷解像度は、「隣接する２本のラスタの間の距離が、ほぼ１／４ピッチである印刷解像度」と言い換えることができる。換言すると、第３の印刷モードでは、１ノズルピッチの間に４本のラスタが形成される。即ち、第３の印刷モードでは、１ノズルピッチの間にドット群を印刷するために４回の主走査が必要であり、４パス印刷が実行される。なお、以下では、第２の印刷モード及び第３の印刷モードに対応する印刷のことを「インターレース印刷」と呼ぶことがある。
【００３３】
（ＰＣ１０が実行する処理）
次いで、ＰＣ１０の制御部３０が実行する処理について説明する。ユーザは、所望のデータを選択し、当該データによって表わされる画像を印刷するための操作を操作部１２に加えることができる。上記の操作は、ユーザが第１の印刷解像度〜第３の印刷解像度の中から、１つの印刷解像度を選択する操作を含む。この場合、ＰＣ１０の制御部３０は、プリンタドライバ２４に従って、まず、図８の分類処理を実行し、次いで、図１１の二値データ生成処理を実行する。
【００３４】
（分類処理）
分類処理では、Ｋ用ノズル群８４ｋを構成する複数個のブロックが、印刷に使用されるべき使用ブロックと、印刷に使用されるべきでない非使用ブロックと、に分類される。以下では、図８を参照して、Ｋ用ノズル群８４ｋについての分類処理を説明する。他の色のノズル群８４についての分類処理は、同様に実行される。
【００３５】
分類部３１（図１参照）は、プリンタ５０に格納されている閾値テーブル６２を取得するための所定のコマンドをプリンタ５０に送信する。プリンタ５０は、上記の所定のコマンドに応じて、記憶部５６に格納されている閾値テーブル６２をＰＣ１０に送信する。この結果、分類部３１は、閾値テーブル６２を取得する（Ｓ２）。次いで、分類部３１は、閾値テーブル６２内から、ユーザによって選択された印刷解像度（即ち印刷モード）に対応する第１種の閾値Ｔｈａの値を特定する（Ｓ４）。例えば、ユーザによって第１の印刷解像度（即ち第１の印刷モード）が選択された場合、分類部３１は、「第１の印刷モード（１パス）」に対応する値「１０」を、第１種の閾値Ｔｈａとして特定する。
【００３６】
次いで、分類部３１は、Ｋ用ノズル群８４ｋのうち、副走査方向において印刷ヘッド８０の中央に形成されたＫ用ノズルＮｋ２／ｎが属するブロックを中央ブロックＮｋｂ０（図４参照）として特定する（Ｓ６）。次いで、分類部３１は、プリンタ５０に格納されている特性データテーブル６０を取得するための所定のコマンドをプリンタ５０に送信する。プリンタ５０は、上記の所定のコマンドに応じて、記憶部５６に格納されている特性データテーブル６０をＰＣ１０に送信する。この結果、分類部３１は、特性データテーブル６０を取得する（Ｓ８）。分類部３１は、取得した特性データテーブル６０を、ワーク領域２２に格納する。
【００３７】
次いで、分類部３１は、中央ブロックＮｋｂ０に含まれる６個のノズルに対応する６個の特性データを、特性データテーブル６０から特定する。さらに、分類部３１は、６個の特性データのうちの最大値（ｍａｘ）と最小値（ｍｉｎ）を特定し、それらの差分を計算する（Ｓ１０）。分類部３１は、Ｓ１０で計算した差分が、Ｓ４で特定した第１種の閾値Ｔｈａより大きいか否かを判断する（Ｓ１２）。Ｓ１２でＮＯの場合、即ち、上記の差分が第１種の閾値Ｔｈａ以下である場合、分類部３１は、Ｓ６で特定した中央ブロックを、印刷に使用されるべき使用ブロックとして決定する（Ｓ１４）。Ｓ１０で計算した差分が第１種の閾値Ｔｈａ以下であるということは、中央ブロックＮｋｂ０に含まれる６個のノズルの吐出量のバラツキが、ユーザによって選択された印刷モードで印刷を行う場合に許容可能な範囲内にあることを意味する。次いで、分類部３１は、使用ブロックとして決定された中央ブロックＮｋｂ０を、基準ブロックとして決定する（Ｓ１６）。Ｓ１６を終えると、Ｓ２４に進む。
【００３８】
一方、Ｓ１２でＹＥＳの場合、即ち、上記の差分が第１種の閾値Ｔｈａより大きい場合、分類部３１は、Ｓ６で特定した中央ブロックを、印刷に使用されるべきでない非使用ブロックとして決定する（Ｓ１８）。即ち、Ｓ１０で計算した差分が第１種の閾値Ｔｈａより大きいということは、中央ブロックＮｋｂ０に含まれる６個のノズルの吐出量のバラツキが、ユーザによって選択された印刷モードで印刷を行う場合に許容可能な範囲外にあることを意味する。次いで、分類部３１は、複数個のブロックのうち、中央ブロックＮｋｂ０以外の各ブロックについて、当該ブロックに含まれる６個のノズルに対応する６個の特性データのうちの最大値（ｍａｘ）と最小値（ｍｉｎ）を特定し、それらの差分を計算する（Ｓ２０）。次いで、分類部３１は、最小の差分が算出されたブロックを基準ブロックとして決定する（Ｓ２２）。Ｓ２２を終えると、Ｓ２４に進む。
【００３９】
Ｓ２４では、分類部３１は、分類対象の対象ブロックを特定する。具体的には、分類部３１は、基準ブロックに隣接するブロックを対象ブロックとして特定する。例えば、中央ブロックＮｋｂ０が基準ブロックとして決定された場合（Ｓ１６が実行された場合）には、分類部３１は、基準ブロックＮｋｂ０の副走査方向の下流側（図４の上側）において基準ブロックＮｋｂ０と隣接するブロックＮｋｂ１を、対象ブロックとして特定する。また、例えば、最小の差分が算出されたブロックが基準ブロックとして決定された場合（Ｓ２２が実行された場合）には、分類部３１は、当該基準ブロックの副走査方向の下流側において当該基準ブロックと隣接するブロックを、対象ブロックとして特定する。
【００４０】
次いで、分類部３１は、対象ブロックに含まれる６個のノズルに対応する６個の特性データと、基準ブロックに含まれる複数個（１回目のＳ２６の処理では６個）のノズルに対応する複数個の特性データと、を特性データテーブル６０から特定する。さらに、分類部３１は、特定された特性データ群（例えば１２個の特性データ）のうちの最大値（ｍａｘ）と最小値（ｍｉｎ）を特定し、それらの差分を計算する（Ｓ２６）。次いで、分類部３１は、Ｓ２６で計算した差分が、Ｓ４で特定した第１種の閾値Ｔｈａより大きいか否かを判断する（Ｓ２８）。Ｓ２８でＮＯの場合、分類部３１は、Ｓ２４で特定した対象ブロックを使用ブロックとして決定する（Ｓ３０）。次いで、分類部３１は、当該対象ブロックを基準ブロックに追加する（Ｓ３２）。１回目のＳ３２の処理が実行された場合には、基準ブロックは、２個のブロックを含む。Ｓ３２を終えると、Ｓ３４に進む。
【００４１】
Ｓ３４では、分類部３１は、Ｋ用ノズル群８４ｋのうちの全てのブロックを対象ブロックとして特定したか否かを判断する。Ｓ３４でＮＯの場合、Ｓ２４に戻り、分類部３１は、新たな対象ブロックを特定する。この場合も、分類部３１は、基準ブロックに隣接するブロックを対象ブロックとして特定する。前回のＳ２４の処理で、基準ブロックの副走査方向の下流側に隣接するブロックを対象ブロックとして特定した場合、分類部３１は、今回のＳ２４の処理では、基準ブロックの副走査方向の上流側に隣接するブロックを対象ブロックとして特定する。逆に、前回のＳ２４の処理で、基準ブロックの副走査方向の上流側に隣接するブロックを対象ブロックとして特定した場合、分類部３１は、今回のＳ２４の処理では、基準ブロックの副走査方向の下流側に隣接するブロックを対象ブロックとして特定する。例えば、前回のＳ２４の処理でブロックＮｋｂ１が対象ブロックとして特定された場合には、分類部３１は、今回のＳ２４の処理では、ブロックＮｋｂ２を対象ブロックとして特定する。この場合、次回のＳ２４の処理では、分類部３１は、ブロックＮｋｂ３を対象ブロックとして特定する。Ｓ２４で対象ブロックを特定した後のＳ２６以降の処理は、上記と同様である。例えば、２回目のＳ２６の処理では、分類部３１は、２個の基準ブロックに属する１２個のＫ用ノズルに対応する１２個の特性データと、対象ブロックに属する６個のＫ用ノズルに対応する６個の特性データと、を含む１８個の特性データの中から、最大値と最小値を特定し、それらの差分を計算する。
【００４２】
なお、Ｓ３４でＹＥＳの場合、Ｋ用ノズル群８４ｋを構成する全てのブロックが、使用ブロックとして決定されたことを意味する。この場合、分類部３１は、Ｋ用ノズル群８４ｋを構成する全てのブロックを使用ブロックに分類し（Ｓ３８）、分類処理を終了する。
【００４３】
一方において、Ｓ２８でＹＥＳの場合、分類部３１は、Ｓ２４で特定した対象ブロックを非使用ブロックとして決定する（Ｓ３６）。次いで、分類部３１は、現時点における基準ブロックに含まれるブロックを使用ブロックに分類するとともに、他の全てのブロックを非使用ブロックに分類する（Ｓ３８）。例えば、図４に示される８個のブロックＮｋｂ０〜Ｎｋｂ７が基準ブロックに含まれる場合には、分類部３１は、８個のブロックＮｋｂ０〜Ｎｋｂ７を使用ブロックに分類し、他の全てのブロックＮｋｂ８等（図示省略）を非使用ブロックに分類する。Ｓ３８を終えると、分類処理が終了する。
【００４４】
以上の分類処理を行うことにより、図２に示すように、ｎ個のＫ用ノズル群８４ｋの複数個のブロックが、印刷に使用されるべきＫ用の使用ブロックＵｋ（図２中の破線部内参照）と、印刷に使用されるべきでないＫ用の非使用ブロック（符号省略）と、に分類される。上述したように、Ｋ用の使用ブロックＵｋは、Ｎｋα〜Ｎｋβのγ個のノズルを含む。なお、上記の説明では、Ｋ用ノズル群８４ｋを例に説明したが、分類部３１は、同様の分類処理をＣ用、Ｍ用、Ｙ用の各ノズル群８４ｃ、８４ｍ、８４ｙについても実行する。その分類処理の結果、図２に示すように、印刷に使用されるべきＣ用の使用ブロックＵｃ’、Ｍ用の使用ブロックＵｍ’、Ｙ用の使用ブロックＵｙ’（図２の破線部内参照）が、それぞれ特定される。
【００４５】
図２の例では、各使用ブロックＵｃ’、Ｕｍ’、Ｕｙ’の範囲は、副走査方向の下流方向（図２の上方向）に向かって、Ｋ用の使用ブロックＵｋよりも広い。また、Ｃ用及びＹ用の各使用ブロック使用ブロックＵｃ’、Ｕｙ’の範囲は、副走査方向の上流方向に向かって、Ｋ用の使用ブロックＵｋよりも広い。また、副走査方向の上流方向において、Ｍ用の使用ブロックＵｍ’の範囲は、Ｋ用の使用ブロックＵｋの範囲と同じである。従って、４つの使用ブロックＵｋ、Ｕｃ’、Ｕｍ’、Ｕｙ’のうち、Ｋ用の使用ブロックＵｋが、副走査方向の上流方向及び下流方向のどちらの方向においても、最も狭い範囲を有する使用ブロックとなる。この場合、分類部３１は、各使用ブロックＵｃ’、Ｕｍ’、Ｕｙ’を、Ｋ用の使用ブロックＵｋの範囲に合わせて縮小した範囲を、新たな使用ブロックＵｃ、Ｕｍ、Ｕｙ（図２中のハッチングで示される範囲）として決定する。この結果、４個の使用ブロックＵｋ、Ｕｃ、Ｕｍ、Ｕｙは、副走査方向の上流側の位置が一致するとともに、副走査方向の下流側の位置が一致する。Ｕｃ、Ｕｍ、Ｕｙには、それぞれ、Ｎｃα〜Ｎｃβ、Ｎｍα〜Ｎｍβ、Ｎｙα〜Ｎｙβのγ個のノズルが含まれる。
【００４６】
図９、図１０は、Ｋ用ノズル群８４ｋのノズル番号と、各ノズル番号に対応する特性データを示すグラフである。図９、図１０に示されるように、一般的に、製造上の都合で、印刷ヘッド８０は、端部に位置するＡ１、Ａ３、Ａ４、Ａ６の付近に形成される少数のノズルのインク滴の吐出量はバラツキが大きく、中央付近Ａ２、Ａ５に形成される多数のノズルのインク滴の吐出量と大きく異なってしまう傾向がある。分類部３１は、図８の分類処理を実行することにより、領域Ａ２、Ａ５に相当するブロック群を使用ブロックとして分類し、領域Ａ１、Ａ３、Ａ４、Ａ６に相当するブロック群を非使用ブロックとして分類し得る。この場合、領域Ａ１、Ａ３、Ａ４、Ａ６のブロック群が印刷に使用されず、比較的に吐出量のバラツキが小さい領域Ａ２、Ａ５のブロック群のみが印刷に使用されることになる。
【００４７】
（二値データ生成処理）
ＰＣ１０の制御部３０は、分類処理が終了すると、プリンタドライバ２４に従って、図１１の二値データ生成処理を実行する。なお、本実施例では、印刷対象のデータとして、ＲＧＢのビットマップ形式の画像データ（以下では「ＲＧＢ画像データ」と呼ぶ）がユーザによって選択されたものとして、処理の内容を説明する。他の形式のデータ（例えば、テキストデータ、ＲＧＢ以外のビットマップ形式の画像データ、テキストとビットマップとの複合データ等）が選択された場合には、制御部３０は、ユーザによって選択されたデータを、公知の手法を用いて、ＲＧＢ画像データに変換する。
【００４８】
画像処理部３２（図１参照）は、ＲＧＢ画像データを取得し、当該ＲＧＢ画像データをワーク領域２２に格納する（Ｓ５０）。次いで、画像処理部３２は、公知の手法を用いて、ＲＧＢ画像データに対して解像度変換処理を実行することによって、変換済みＲＧＢ画像データを生成する（Ｓ５４）。Ｓ１４では、画像処理部３２は、ＲＧＢ画像データを、ユーザによって選択された印刷解像度に応じた解像度に変換する。例えば、ユーザによって第１の印刷解像度が選択された場合には、第１の印刷解像度に対応する変換済みＲＧＢ画像データが生成され、ユーザによって第２の印刷解像度が選択された場合には、第２の印刷解像度に対応する変換済みＲＧＢ画像データが生成される。解像度変換処理によって、図１２に示される変換済みＲＧＢ画像データ２００が得られる。変換済みＲＧＢ画像データ２００内の各画素２０１，２０２，２０６，２０７等は、Ｒ値（例えばＲ（ｉ，ｊ））と、Ｇ値（例えばＧ（ｉ，ｊ））と、Ｂ値（例えばＢ（ｉ，ｊ））と、によって構成される。Ｒ値、Ｇ値、Ｂ値は、それぞれ、２５６階調（０〜２５５）の多値データである。なお、図１２に示される各画素内のｘ座標は、各画素の列番号を示し、ｙ座標は、各画素の行番号を示す。
【００４９】
次いで、色変換処理部３４（図１参照）は、公知の手法を用いて、色変換処理を実行する（Ｓ５６）。Ｓ５６では、色変換処理部３４は、変換済みＲＧＢ画像データ２００を、ＣＭＹＫのビットマップ形式の画像データ（以下では「ＣＭＹＫ画像データ」と呼ぶ）に変換する。色変換処理によって、図１３に示されるＣＭＹＫ画像データ２１０が得られる。変換済みＲＧＢ画像データ２００内の１個の画素（例えば画素２０１）から、ＣＭＹＫ形式で記述された１個の画素（例えば画素２１１）が得られる。従って、ＣＭＹＫ画像データ２１０の画素数は、変換済みＲＧＢ画像データ２００の画素数に等しい。ＣＭＹＫ画像データ２１０内の各画素２１１，２１２，２１６，２１７等は、Ｃ値（例えばＣ（ｉ，ｊ））と、Ｍ値（例えばＭ（ｉ，ｊ））と、Ｙ値（例えばＹ（ｉ，ｊ））と、Ｋ値（例えばＫ（ｉ，ｊ））と、によって構成される。Ｃ値、Ｍ値、Ｙ値、Ｋ値は、それぞれ、２５６階調（０〜２５５）の多値データである。なお、図１３に示される各画素内のｘ座標は、各画素の列番号を示し、ｙ座標は、各画素の行番号を示す。
【００５０】
続いて、ハーフトーン処理部４０等（図１参照）は、ＣＭＹＫ画像データ２１０を用いて、ハーフトーン処理を実行する。ハーフトーン処理は、Ｓ５８〜Ｓ７６の処理を含む。ハーフトーン処理部４０の補正部４２（図１参照）は、まず、ＣＭＹＫ画像データ２１０内の１個の画素を特定する（Ｓ５８）。Ｓ５８における画素の特定順序は、予め決められている。具体的に言うと、１回目のＳ５８の処理では、補正部４２は、ＣＭＹＫ画像データ２１０のうち、図１３の最も上の行に属する複数個の画素のうち、最も左の列に属する１個の画素を特定する。２回目以降のＳ５８の処理では、補正部４２は、前回に特定された画素（以下では「前回特定画素」と呼ぶ）と同じ行に属する１個の画素であって、前回特定画素の右隣の列に属する１個の画素を特定する。なお、前回特定画素が最も右の列に属する場合には、補正部４２は、前回特定画素が属する行の１つ下の行に属する複数個の画素のうち、最も左の列に属する１個の画素を特定する。
【００５１】
以下では、Ｓ５８で特定される１個の画素のことを「注目画素」と呼ぶ。補正部４２は、注目画素を構成するＣＭＹＫの４個の値の中から、１個の値（例えばＫ値）を特定する（Ｓ６０）。以下では、Ｓ６０で特定される１個の値のことを「ＰＶ（Pixel Value）」と呼ぶ。続いて、補正部４２は、Ｓ６０で特定されたＰＶを補正する（Ｓ６２）。具体的に言うと、補正部４２は、注目画素より前にＳ６０〜Ｓ７２の処理が終了している処理済み画素群のうち、注目画素の近傍に位置する複数個の近傍画素について算出された複数個の誤差値を用いて、注目画素のＰＶを補正する。例えば、注目画素が図１４の画素２１６である場合には、画素２１１〜２１５についてのＳ６０〜Ｓ７２の処理が終了している。従って、画素２１１〜２１５のそれぞれについては、後述のＳ７０で、ＣＭＹＫに対応する４個の誤差値が算出済みである。例えば、画素２１１については、Ｃに対応する誤差値と、Ｍに対応する誤差値と、Ｙに対応する誤差値と、Ｋに対応する誤差値と、が算出済みである。なお、図１４では、図示の便宜上、ＣＭＹＫの４色に対応する４個の誤差値を区別することなく「ΔＥ」で表現している。なお、以下では、例えば、Ｋに対応する誤差値を「ΔＥｋ」と表現することがある。本実施例では、注目画素２１６の左上、上、右上、及び、左に位置する４個の画素２１１，２１２，２１３，２１５を、注目画素２１６の近傍画素として採用する。なお、別の実施例では、注目画素２１６の近傍画素として、さらに、注目画素２１１の左の画素、画素２１２の上の画素、画素２１４、画素２１５の左の画素等を採用してもよい。
【００５２】
補正部４２は、注目画素２１６の４個の近傍画素２１１，２１２，２１３，２１５のうちの１個の近傍画素２１１について算出済みの４個の誤差値ΔＥ（ｉ−１，ｊ−１）の中から、現在の補正対象のＰＶの色（例えばＫ）に対応する１個の誤差値（例えばＫに対応する誤差値ΔＥｋ（ｉ−１，ｊ−１））を特定する。同様に、補正部４２は、他の３個の近傍画素２１２，２１３，２１５のそれぞれについて、当該近傍画素について算出済みの４個の誤差値の中から、現在の補正対象のＰＶの色に対応する１個の誤差値を特定する。この結果、現在の補正対象のＰＶの色に対応する４個の誤差値が特定される。次いで、補正部４２は、特定された４個の誤差値を用いて、図１４の画素２１６内に示される数式に従って、注目画素２１６のＰＶを補正することによって、補正済みの値ＰＶ’を算出する。なお、数式内のｓ１，ｓ２，ｓ３，ｓ４は、注目画素２１６と各近傍画素との間の位置関係に応じて、予め決められている係数である。例えば、注目画素２１６のＰＶ（ｉ，ｊ）がＫ値（Ｋ（ｉ，ｊ））である場合には、補正部４２は、４個の近傍画素２１１，２１２，２１３，２１５のそれぞれについて、当該近傍画素の誤差値ΔＥｋ（例えば近傍画素２１１のΔＥｋ（ｉ−１，ｊ−１））と、当該近傍画素に対応する係数（例えば近傍画素２１１に対応するｓ１）と、を乗算することによって、乗算値を算出する。次いで、補正部４２は、注目画素２１６のＫ値（ｉ，ｊ）（即ちＰＶ（ｉ，ｊ））と、４個の近傍画素２１１，２１２，２１３，２１５について算出された４個の乗算値と、の和を算出することによって、補正済みの値Ｋ’（ｉ，ｊ）（即ちＰＶ’（ｉ，ｊ））を算出する。
【００５３】
続いて、決定部４４（図１参照）は、Ｓ６２で得られた補正済みの値ＰＶ’（例えばＫ’（ｉ，ｊ））が、予め決められている第２種の閾値Ｔｈｂ（例えば１２８）よりも大きいのか否かを判断する（Ｓ６４）。ここでＹＥＳの場合、決定部４４は、判断対象の補正済みの値ＰＶ’に対応する色のドットを印刷媒体に形成することを決定する。次いで、決定部４４は、注目画素と同じ位置の新たな画素の値をワーク領域２２に格納する（Ｓ６６）。ここで格納される値は、補正済みの値ＰＶ’に対応する色のドット出力値「１」である（Ｓ６６）。例えば、注目画素２１６の補正済みの値ＰＶ’がＫ’（ｉ，ｊ）である場合には、Ｓ６６では、決定部４４は、注目画素２１６と同じ位置の新たな画素の値として「Ｋ＝１」をワーク領域２２に格納する。このような情報を含む二値データがプリンタ５０に供給されると、注目画素２１６に対応する印刷媒体上の位置に向けて、ブラックのインク滴が吐出される。即ち、注目画素２１６に対応する印刷媒体上の位置にブラックのドットが形成される。Ｓ６６を終えると、Ｓ７０に進む。
【００５４】
一方において、Ｓ６４でＮＯの場合、決定部４４は、判断対象の補正済みの値ＰＶ’に対応する色のドットを印刷媒体に形成しないことを決定する。次いで、決定部４４は、注目画素と同じ位置の新たな画素の値をワーク領域２２に格納する（Ｓ６８）。ここで格納される値は、補正済みの値ＰＶ’に対応する色のドット出力値「０」である。例えば、注目画素２１６の補正済みの値ＰＶ’がＫ’（ｉ，ｊ）である場合には、Ｓ６８では、決定部４４は、注目画素２１６と同じ位置の新たな画素の値として「Ｋ＝０」をワーク領域２２に格納する。このような情報を含む二値データがプリンタ５０に供給されると、注目画素２１６に対応する印刷媒体上の位置に向けて、ブラックのインク滴が吐出されない。即ち、注目画素２１６に対応する印刷媒体上の位置にブラックのドットが形成されない。Ｓ６８を終えると、Ｓ７０に進む。
【００５５】
なお、例えば、Ｓ６０においてＰＶとしてＣ値が特定された場合には、Ｓ６６では、注目画素と同じ位置の新たな画素の値として「Ｃ＝１」が格納され、Ｓ６８では、注目画素と同じ位置の新たな画素の値として「Ｃ＝０」が格納される。前者の場合には、注目画素に対応する印刷媒体上の位置にシアンのドットが形成され、後者の場合には、注目画素に対応する印刷媒体上の位置にシアンのドットが形成されない。Ｓ６０においてＭ値又はＹ値が特定された場合も、Ｓ６０でＫ値又はＣ値が特定された場合と同様に処理が実行される。
【００５６】
次いで、誤差値算出部４６（図１参照）は、誤差値を算出する（Ｓ７０）。Ｓ７０の処理は、Ｓ６４の判断結果に応じて変わる。まず、Ｓ６４でＹＥＳと判断された場合（Ｓ６６が実行された場合）のＳ７０の処理について説明する。ハーフトーン処理部４０は、注目画素（例えば画素２１６）に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号（以下では「注目ノズル番号」と呼ぶ）を特定する。なお、例えば、ＰＶ’に対応する色がＫである場合には、注目ノズルとしてＫ用ノズルが特定される。以下では、注目ノズルとしてＫ用ノズルが特定されるべき場合には、「注目Ｋ用ノズル」と呼ぶ。注目Ｋ用ノズル番号を特定するための手法について、次に詳しく説明する。
【００５７】
まず、第１の印刷解像度に対応する第１の印刷モードがユーザによって選択された場合（即ち、Ｓ５６で第１の印刷解像度のＣＭＹＫ画像データ２１０が生成された場合）に、ハーフトーン処理部４０が実行する処理について説明する。上述したように、第１の印刷解像度に対応する第１の印刷モードは、使用ブロックに属する各ノズルのみを使用して、図５に示されるように実行される。即ち、１回目の主走査では、γ個のＫ用ノズルＮｋα〜Ｎｋβが、第１の印刷解像度のＣＭＹＫ画像データ２１０の１〜γ行目に対応するラスタを形成する。さらに、第１の印刷モードの搬送距離（上記の第１の距離）は、γノズルピッチ分の距離である。これらの内容に基づけば、第１の印刷解像度のＣＭＹＫ画像データ２１０のＬ行目に対応するラスタを形成する注目Ｋ用ノズルを特定することができる。
【００５８】
続いて、第２の印刷解像度に対応する第２の印刷モードがユーザによって選択された場合（即ち、Ｓ５６で第２の印刷解像度のＣＭＹＫ画像データ２１０が生成された場合）に、ハーフトーン処理部４０が実行する処理について説明する。上述したように、第２の印刷解像度に対応する第２の印刷モードは、図７に示されるように実行される。即ち、１回目の主走査では、γ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβ―１が、第２の印刷解像度のＣＭＹＫ画像データ２１０の１〜γ−１行目のうちの奇数行目に対応するラスタを形成する。第２の印刷モードの搬送距離（上記の第２の距離）は、第２の距離は（γ―１）／２ノズルピッチ分の距離である。さらに、２回目以降の主走査では、γ−１個のＫ用ノズルＮｋα〜Ｎｋβ―１のそれぞれがラスタを形成する。これらの内容に基づけば、第２の印刷解像度のＣＭＹＫ画像データ２１０のＬ行目に対応するラスタを形成する注目Ｋ用ノズルを特定することができる。
【００５９】
第３の印刷解像度に対応する第３の印刷モードがユーザによって選択された場合（即ち、Ｓ５６で第３の印刷解像度のＣＭＹＫ画像データ２１０が生成された場合）には、上述した第３の印刷モードが実現されるように、第３の印刷解像度のＣＭＹＫ画像データ２１０のＬ行目に対応するラスタを形成する注目Ｋ用ノズルが特定される。
【００６０】
Ｓ６０で特定されるＰＶに対応する色が３種類の有彩色ＣＭＹのいずれかである場合には、ハーフトーン処理部４０は、上記のＫの場合と同様に、注目ノズル番号を特定する。
【００６１】
上述したように、制御部３０は、図８のＳ８において、特性データテーブル６０を取得済みである。取得部３６（図１参照）は、特性データテーブル６０から、注目ノズル番号に対応づけられている特性データ（以下では「注目特性データ」と呼ぶ）を取得する。次いで、補正用データ算出部３８（図１参照）は、注目特性データに「２５５」を加算することによって補正用データ（以下では「注目補正用データ」と呼ぶ）を算出する。誤差値算出部４６は、Ｓ６２で得られた補正済みの値ＰＶ’から注目補正用データを減算することによって、誤差値を算出する。このようにして誤差値を算出するための式が、図１５の画素２１６内に示されている。即ち、注目画素が図１５の画素２１６であり、Ｓ６２で得られるＰＶ’（ｉ，ｊ）が第２種の閾値Ｔｈｂより大きい場合（Ｓ６４でＹＥＳの場合）には、誤差値算出部４６は、ＰＶ’（ｉ，ｊ）から注目補正用データを減算することによって、画素２１６に対応する誤差値ΔＥ（ｉ，ｊ）を算出する。例えば、Ｓ６０で特定されるＰＶに対応する色がＫである場合には、画素２１６のＫに対応する誤差値が算出される。同様に、Ｓ６０で特定されるＰＶに対応する色が他の色である場合には、画素２１６のうちの上記の他の色に対応する誤差値が算出される。
【００６２】
続いて、Ｓ６４でＮＯと判断された場合（Ｓ６８が実行された場合）のＳ７０の処理について説明する。Ｓ６４でＮＯの場合、誤差値算出部４６は、Ｓ６２で得られた補正済みの値ＰＶ’を誤差値として特定する。このようにして誤差値を算出するための式が、図１５の画素２１７内に示されている。即ち、注目画素が図１５の画素２１７であり、Ｓ６２において得られるＰＶ’（ｉ＋１，ｊ）が第２種の閾値Ｔｈｂより小さい場合（Ｓ６４でＮＯの場合）には、誤差値算出部４６は、図１５の画素２１７内の式を用いて、画素２１７に対応する誤差値ΔＥ（ｉ＋１，ｊ）を特定する。即ち、誤差値算出部４６は、注目補正用データを用いずに、補正済みの画素値ＰＶ’を用いて、誤差値を算出する。
【００６３】
Ｓ７０を終えると、制御部３０は、注目画素に対応する誤差値として、Ｓ７０で特定された誤差値（例えばΔＥ（ｉ，ｊ））を記憶する（Ｓ７２）。ここで記憶された誤差値は、後に実行されるＳ６２の処理で利用される。例えば、Ｓ７２で画素２１６のＫに対応する誤差値ΔＥ（ｉ，ｊ）が記憶された場合には、当該誤差値ΔＥ（ｉ，ｊ）は、Ｓ６２で画素２１７のＫ値に対応するＫ’（ｉ，ｊ）を算出する際に利用される。
【００６４】
上述したように、ドット出力値＝１の場合に実行されるＳ７０では、ΔＥ＝ＰＶ’−注目補正用データ（２５５＋注目特性データ）という数式によって、誤差値ΔＥを算出する。注目補正用データとして「２５５＋注目特性データ」を利用するということは、注目ノズルが形成するドットの濃度を「２５５＋注目特性データ」と仮定していることを意味する。例えば、最小の吐出量のノズルに対応する特性データ（以下では「最小特性データ」と呼ぶ）は「０」であるために、最小の吐出量のノズルが形成するドットの濃度が「２５５」と仮定されている。このような手法で誤差値を算出することにより、各ノズルの吐出量のバラツキを補償することができる。Ｓ７０では、実際に表現されるべき注目画素の値ＰＶ’と、仮定されたドットの濃度「２５５＋注目特性データ」と、の差分が、誤差値ΔＥとして算出される。この差分が、上記のＳ６２の処理で近傍画素に拡散される。一方において、ドット出力値＝０の場合に実行されるＳ７０では、ΔＥ＝ＰＶ’という数式によって、誤差値ΔＥを算出する。即ち、実際に表現されるべき注目画素の値ＰＶ’と、ドットが形成されない場合の濃度「０」と、の差分が、誤差値ΔＥとして算出される。この差分が、上記のＳ６２の処理で近傍画素に拡散される。
【００６５】
続いて、ハーフトーン処理部４０は、注目画素を構成するＣＭＹＫの４個の画素値（Ｃ値、Ｍ値、Ｙ値、Ｋ値）の全てについて、Ｓ６０〜Ｓ７２の処理を実行したのか否かを判断する（Ｓ７４）。ここでＮＯの場合、ハーフトーン処理部４０は、Ｓ６０に戻って、注目画素を構成するＣＭＹＫの４個の値の中から、Ｓ６０〜Ｓ７２の処理が実行されていない値を特定する。Ｓ７４でＹＥＳの場合には、制御部３０は、ＣＭＹＫ画像データ２１０を構成する全ての画素について、Ｓ５８〜Ｓ７４の処理が終了したのか否かを判断する（Ｓ７６）。ここでＮＯの場合、ハーフトーン処理部４０は、Ｓ５８に戻って、現在の注目画素の次の画素（基本的には右隣りの画素）を、新たな注目画素として特定する。Ｓ７６でＹＥＳの場合には、二値データ生成処理が終了する。
【００６６】
なお、本実施例では、画像処理部３２は、さらに、二値データ内の複数個の画素を構成する各行に対して、当該行に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号（ＣＭＹＫの４色に対応する４個のノズル番号）を付加する。上記の注目ノズル番号を特定する手法を用いれば、各行に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号を特定することができる。例えば、第１の印刷解像度が選択された場合には、二値データの１行目に対して、ＣＭＹＫに対応する４個のノズル番号Ｎｋα，Ｎｃα，Ｎｍα，Ｎｙαが付加される。なお、各行に対してノズル番号を付加する手法の代わりに、以下の手法を用いてもよい。例えば、上記のＳ６６において、注目画素のＰＶに対応する色のドット出力値「１」と、当該注目画素に対応する印刷媒体上の位置に、当該ＰＶに対応する色のドットを形成するノズルのノズル番号（即ち注目ノズル番号）と、を対応づけて、ワーク領域２２に格納してもよい。
【００６７】
上記の説明から明らかなように、二値データ生成処理では、ＣＭＹＫ画像データ２１０を構成する１個の画素から、Ｃ＝０又は１と、Ｍ＝０又は１と、Ｙ＝０又は１と、Ｋ＝０又は１と、によって構成される新たな１個の画素が生成される。従って、二値データの画素数は、ＣＭＹＫ画像データ２１０の画素数に等しい。さらに、二値データでは、各行に対して、当該行に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号が付加されている。供給部４８（図１参照）は、二値データと、いずれの印刷モードが選択されたのかを示すモード情報と、をプリンタ５０に送信する。この結果、プリンタ５０の印刷実行部７０は、二値データに応じて、印刷処理を実行する。即ち、印刷実行部７０は、二値データに含まれるＫ＝１を示す画素に対応する印刷媒体上の位置にブラックのドットが形成されるように、当該画素を含む行に対して付加されているＫ用ノズル番号に対応するＫ用ノズルに対応する個別電極に、駆動信号を供給する。同様に、印刷実行部７０は、二値データに従って、他の色のドットが形成されるように、駆動信号を供給する。これにより、印刷実行部７０は、非使用ブロックが使用されず、使用ブロックＵｋ，Ｕｃ，Ｕｍ，Ｕｙが使用されるように、印刷を実行することができる。この結果、図１１のＳ５０で取得されるＲＧＢ画像データによって表わされる画像（即ち、Ｓ５４で得られる変換済みＲＧＢ画像データ２００によって表わされる画像、Ｓ５６で得られるＣＭＹＫ画像データ２１０によって表わされる画像、二値データによって表わされる画像）が、印刷媒体に形成される。
【００６８】
本実施例について詳しく説明した。本実施例では、図８のＳ１２、Ｓ２８の処理のように、分類部３１は、対象ブロックに属するノズルに対応する特性データと、基準ブロックに属するノズルに対応する特性データと、の最大値と最小値との差分が、第１種の閾値Ｔｈａ以下の場合に、対象ブロックを使用ブロックとして決定し、上記の差分が、閾値よりも大きい場合に、対象ブロックを非使用ブロックとして決定する。そのため、分類部３１は、第１種の閾値Ｔｈａを基準として対象ブロックが使用ブロックか非使用ブロックかを決定することができる。その結果、吐出量のバラツキが比較的に小さいブロック群を使用ブロックとして分類することができる。従って、画像処理の際に、画像処理部３２は、使用ブロックに属する各ノズルの吐出量のバラツキを補償する処理を実行する。その結果、使用ブロックに属する各ノズルのバラツキが比較的に小さいために、吐出量の吐出量のバラツキが適切に補償された二値データが生成される。その二値データを用いて印刷を実行し得るため、高画質の画像を印刷媒体に印刷しうる。
【００６９】
本実施例では、図１の閾値テーブル６２に示すように、パス数が小さい程、第１種の閾値Ｔｈａが小さい。通常、印刷のパス数が小さい程、印刷された画像において、吐出量のバラツキに起因する濃度ムラが目立ち易い。本実施例では、パス数が小さい程、吐出量のバラツキが小さくなるように、使用ブロックとして採用される基準を厳しくしている（即ち第１種の閾値Ｔｈａが小さい）。
【００７０】
本実施例では、図８のＳ１４、Ｓ１６の処理のように、分類部３１は、中央ブロックが、使用ブロックとして決定される場合に、中央ブロックを基準ブロックとして選択する。そのため、分類部３１は、比較的に吐出量のバラツキが小さい中央付近の各ブロックを、対象ブロックとして順に選択することができる。また、分類部３１は、図８のＳ１８〜Ｓ２２に示すように、中央ブロックが、非使用ブロックとして決定される場合に、２個以上のブロックのうちの中央ブロック以外の各ブロックについて、当該ブロックに属するノズルに対応する特性データの最大値と最小値の差分を算出し、最小の差分が算出されるブロックを基準ブロックとして選択する。さらに、中央ブロックが使用ブロックと決定される場合であっても、非使用ブロックと決定される場合であっても、基準ブロックを確実に選択することができる。
【００７１】
本実施例では、図８のＳ２４の処理のように、基準ブロックに隣接するブロックを対象ブロックとして特定する。従って、分類部３１は、使用ブロックに分類される２個のブロックの間に、非使用ブロックに分類されるブロックが存在しないように、分類を実行する。そのため、使用ブロックに分類される２個のブロックは連続する。
【００７２】
本実施例の各要素と本発明の各要素との対応関係を記載しておく。ＰＣ１０の制御部３０が「制御装置」の一例である。図８の処理が、「分類」の一例である。図１の第１種の閾値Ｔｈａが、「閾値」の一例である。図８のＳ２６の処理で算出される差分が、「第１種の値」の一例である。図８のＳ２０の処理で算出される差分が、「第２種の値」の一例である。本実施例のＲＧＢ画像データ２００、ＣＭＹＫ画像データ２１０、図１１の処理で生成される二値データ、がそれぞれ、「特定の画像データ」、「対象画像データ」、「処理済み画像データ」の一例である。図１１のＳ５６の色変換処理とＳ５８〜Ｓ８０のハーフトーン処理とが「画像処理」の一例であり、図１１のＳ７４でドット出力＝１の場合に実行される誤差値算出処理が「特定の処理」の一例である。
【００７３】
（第２実施例）
上述の第１実施例では、各ノズルの吐出量のバラツキを補償するための補償処理（ドット出力値＝１の場合に実行される図１１のＳ７０の処理）を実行している。補償処理では、「ΔＥｋ＝ＰＶ’（即ちＫ’）−注目補正用データ（＝２５５＋注目特性データ）」という数式を採用している。仮に、各ノズルの吐出量のバラツキを補償するための補償処理を実行しない場合には、図１１のＳ７０において、注目画素のＫに対応する誤差値を算出するための数式として、「ΔＥｋ＝ＰＶ’（即ちＫ’）−固定値２５５」が採用される。上記の２つの数式から明らかなように、補償処理が実行される場合には、補償処理が実行されない場合と比べると、ＰＶ’から減算される値（即ち注目補正用データ）が大きくなる。この場合、誤差値が小さくなり（例えば誤差値がマイナスの場合には誤差値の絶対値が大きくなり）、その誤差値が拡散される近傍画素のＫ値（即ち近傍画素が表現すべきＫの濃度）が小さくなる。即ち、補償処理が実行される場合には、補償処理が実行されない場合と比べて、印刷される画像の濃度が低下する。第１実施例の補償処理で採用している数式では、最小の吐出量を有する最小Ｋ用ノズルが形成するドットの濃度を「２５５（ＣＭＹＫ画像データ２１０内のＫ値が採り得る最大値）」と仮定している。即ち、ｎ個のＫ用ノズルのうちの最小Ｋ用ノズルの吐出量を基準として補償処理が実行される。この場合、補償処理に起因する濃度低下が起こり、印刷される画像の濃度が、最小Ｋ用ノズルの特性データ（図１０中のｔ１（即ちゼロ））に対応する濃度になる。図１０の例では、最小値ｔ１に対応する濃度の画像が印刷される。
【００７４】
本実施例では、補償処理に起因する濃度低下を抑制するために、以下の処理を実行する。本実施例では、誤差値算出部４６は、ドット出力値＝１の場合のＳ７０において、使用ブロック（図１０のＡ５に相当する範囲）に属するγ個のＫ用ノズルのうちの最小の吐出量を有するＫ用ノズル（以下では「特定のＫ用ノズル」と呼ぶ）に対応する特性データｔ２（図１０参照）を特定する。次いで、誤差値算出部４６は、「ΔＥｋ＝ＰＶ’（即ちＫ’）−（２５５＋注目特性データ−ｔ２）」を用いて、誤差値を算出する。この数式では、例えば、注目ノズルが上記の特定のＫ用ノズルである場合に、「ΔＥｋ＝ＰＶ’（即ちＫ’）−２５５」が得られる。即ち、上記の特定のＫ用ノズルが形成するドットの濃度を「２５５」と仮定していることに等しい。換言すると、上記の特定のＫ用ノズルの吐出量を基準として、補償処理が実行される。この場合、補償処理に起因する濃度低下は起こるが、印刷される画像の濃度は、上記の特定のＫ用ノズルの特性データ（図１０中のｔ２）に対応する濃度になる。即ち、本実施例によると、ｔ１よりも高濃度の画像を印刷することができる。
【００７５】
（第３実施例）
本実施例では、ＰＣ１０の制御部３０が実行する二値データ生成処理の内容が上記の第１実施施例とは異なる。図８を参照しながら、本実施例の二値データ生成処理の内容について説明する。Ｓ５０〜Ｓ５６は、第１実施例と同様である。Ｓ５６を終えると、色変換処理部３４は、ＣＭＹＫ画像データ２１０（図１３参照）から補正済み画像データ２５０（図１６参照）を生成する補正処理を実行する。
【００７６】
図１６を参照しながら、補正処理の内容を説明する。補正処理では、色変換処理部３４は、ＣＭＹＫ画像データ２１０の中から１個の画素（以下では「注目画素」と呼ぶ）を特定する。以下では、画素２１６が注目画素である場合を例として、説明を続ける。次いで、色変換処理部３４は、注目画素２１６を構成する４個の値の中から、１個の値ＰＶ（ｉ，ｊ）を特定する。色変換処理部３４は、ＰＶ（ｉ，ｊ）を補正することによって、補正済みの値ＰＶ’’（ｉ，ｊ）を算出する。具体的に言うと、色変換処理部３４は、第１実施例の図１１のＳ７０の場合と同様の手法を用いて、ＰＶ（ｉ，ｊ）に対応する注目ノズル番号を特定する。次いで、取得部３６は、特性データテーブル６０から、注目ノズル番号に対応する注目特性データを特定する。続いて、補正用データ算出部３８は、（２５５＋最小の特性データ）／（２５５＋注目特性データ）を計算することによって、注目補正用データＣＤ（ｉ，ｊ）を算出する。なお、上記の「最小の特性データ」は、ＰＶ（ｉ，ｊ）に対応する色のインク滴を吐出するｎ個のノズルに対応するｎ個の特性データのうち、最小の吐出量を示す特性データ（即ち「０」）である。色変換処理部３４は、ＰＶ（ｉ，ｊ）に注目補正用データＣＤ（ｉ，ｊ）を乗算することによって、補正済みの値ＰＶ’’（ｉ，ｊ）を算出する。色変換処理部３４は、注目画素２１６を構成する他の３個の値のそれぞれについて、補正済みの値ＰＶ’’（ｉ，ｊ）を算出する。これにより、注目画素２１６に対応する４個の補正済みの値ＰＶ’’（ｉ，ｊ）が生成される。さらに、色変換処理部３４は、画素２１６以外の各画素についても、同様の手法を用いて、４個の補正済みの値ＰＶ’’（ｉ，ｊ）を算出する。これにより、補正済み画像データ２５０が生成される。
【００７７】
補正済み画像データ２５０を生成すると、ハーフトーン処理部４０は、ハーフトーン処理（図１１の５１８〜Ｓ７６参照）を実行する。本実施例のハーフトーン処理では、Ｓ５８において、補正部４２は、補正済み画像データ２５０内の１個の画素を注目画素として特定する。次いで、Ｓ６０において、補正部４２は、注目画素の４個の補正済みの値ＰＶ’’（ｉ，ｊ）の中から、１個の補正済みの値ＰＶ’’（ｉ，ｊ）を特定する。さらに、Ｓ６２において、補正部４２は、Ｓ６０で特定されたＰＶ’’（ｉ，ｊ）に誤差値を加算することによって、ＰＶ’を算出する。さらに、Ｓ７０において、誤差値算出部４６は、ドット出力＝１の場合に、ＰＶ’から固定値２５５を減算することによって、誤差値を算出する。その他の処理は、第１実施例の場合と同様である。即ち、二値データでは、各行に対して、当該行に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号が付加される。この結果、プリンタ５０の印刷実行部７０は、非使用ブロックが使用されず、使用ブロックＵｋ，Ｕｃ，Ｕｍ，Ｕｙが使用されるように、印刷を実行することができる。
【００７８】
本実施例では、色変換処理と補正処理とハーフトーン処理とが「画像処理」の一例である。変換済みＲＧＢ画像データ２００が、「特定の画像データ」及び「対象の画像データ」の一例である。また、変換済みＲＧＢ画像データ２００内の各画素に対して実行される色変換処理及び補正処理が、「特定の処理」の一例である。
【００７９】
（第４実施例）
本実施例では、プリンタ５０の印刷実行部７０が上記の第１〜第３の印刷モードの他に、第４の印刷モードを実行することができる。なお、以下では、第４の印刷モードによって実行される印刷のことを「シングリング（singling）」と呼ぶことがある。なお、シングリングのことを「オーバーラップ方式」と言い換えることもできる。
【００８０】
図１７を参照しながら、本実施例の白黒印刷のシングリングについて説明する。なお、カラー印刷の場合には、Ｋ用の使用ブロックＵｋに加えて、他の色の使用ブロックＵｃ、Ｕｍ、Ｕｙ等も利用して、白黒印刷の場合と同様に、シングリングが実行される。第１実施例の第１の印刷モード〜第３の印刷モードのいずれでも、印刷ヘッド８０の１回の主走査によって、１個のＫ用ノズルが１本のラスタを形成する。これに対し、シングリングでは、印刷ヘッド８０の２回の主走査によって、２個のＫ用ノズルが１本のラスタを形成する。例えば、図１７に示されるように、印刷ヘッド８０の１回目の主走査において、Ｋ用ノズルＮｋα＋ｍ＋３が、ドット群Ｄｋα＋ｍ＋３を形成する。次いで、印刷ヘッド８０の２回目の主走査において、Ｋ用ノズルＮｋα＋３が、ドット群Ｄｋα＋３を形成する。ドット群Ｄｋα＋ｍ＋３とドット群Ｄｋα＋３とによって、１本のラスタＲα＋３が構成される。上記の説明から明らかなように、１回目の主走査において、二値データの特定の行を構成する複数個の画素のうちの半分に相当する第１の画素群に従って、ドット群Ｄｋα＋ｍ＋３が形成され、２回目の主走査において、上記の特定の行を構成する残りの第２の画素群に従って、ドット群Ｄｋα＋３が形成される。第１の画素群と第２の画素群とは、二値データの上記の特定の行において、交互に位置する関係を有する。即ち、第１の画素群のそれぞれは、例えば偶数列に属する画素であり、第２の画素群のそれぞれは、例えば奇数列に属する画素である。
【００８１】
本実施例では、１回目の主走査では、γ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβのそれぞれが、第１のドット群（図１７のドットＤｋα＋ｍ＋３参照）を形成する。次いで、印刷実行部７０は、印刷媒体１５０の搬送を実行する。シングリングでは、ここでの搬送距離として第３の距離を採用している。第３の距離は、γ／２ノズルピッチ分の距離である。この搬送が実行されると、図１７に示されるように、下流側に配置されたγ／２個のＫ用ノズルＮｋα〜Ｎｋα＋ｍ−１のそれぞれが、副走査方向において、上記の第１のドット群と同じ位置に配置される。例えば、Ｋ用ノズルＮｋα＋３が、ドットＤｋα＋ｍ＋３と同じ位置に配置される。この状態で、印刷実行部７０は、印刷ヘッド８０の２回目の主走査を実行する。これにより、下流に配置されたγ／２個のＫ用ノズルＮｋα〜Ｎｋα＋ｍ−１のそれぞれが、第２のドット群（図１７のドットＤｋα＋３参照）を形成する。上記の第１のドット群と上記の第２のドット群とによって、γ／２本のラスタＲ１等が構成される。なお、２回目の主走査では、上流側に配置されたγ／２個のＫ用ノズルＮｋα＋ｍ〜Ｎｋβも、ドット群を形成する。印刷実行部７０は、印刷媒体１５０の第３の距離の搬送と、印刷ヘッド８０の主走査と、の組合せを繰り返し実行する。これにより、二値データによって表わされる画像が、印刷媒体に印刷される。
【００８２】
上記の説明から明らかなように、シングリングの副走査方向の印刷解像度は、第１の印刷モードの第１の印刷解像度と同じである。ただし、シングリングの印刷結果は、第１の印刷モードの印刷結果よりも濃度ムラが目立ちにくい。例えば、第１の印刷モードでは、１個のノズルが１本のラスタを形成するために、各ノズルの吐出量の差が、各ラスタの濃度差として顕著に現れる。これに対し、シングリングでは、２個のノズルが１本のラスタを形成するために、各ノズルの吐出量の差が、各ラスタの濃度差として現れ難い。
【００８３】
本実施例では、ユーザは、所望の画像データを印刷するための操作をＰＣ１０の操作部１２に実行する際に、第１〜第４の印刷モードの中から、１つの印刷モードを選択することができる。第４の印刷モードが選択された場合には、分類部３１は、図８のＳ４において、第１種の閾値Ｔｈａとして、第２の印刷モードに対応する「２０」を特定する（図１参照）。即ち、第４の印刷モードが選択された場合には、分類部３１は、第１の印刷モードに対応する第１種の閾値「１０」よりも大きい閾値「２０」を特定する。図８の分類処理におけるその他の処理は、第１実施例と同様である。
【００８４】
また、第４の印刷モードが選択された場合には、図１１の二値データ生成処理のＳ７０の処理では、誤差値算出部４６は、図１７の第４の印刷モードが実現されるように、注目ノズル番号を特定する。さらに、本実施例では、第４の印刷モードが選択された場合には、二値データを構成する複数個の画素のそれぞれに対して、当該画素に対応する印刷媒体上の位置にドットを形成するノズルのノズル番号（ＣＭＹＫの４色に対応する４個のノズル番号）が付加される。例えば、図１７から明らかなように、二値データの１行目の奇数列の画素群に対して、Ｋ用ノズル番号Ｎｋαが付加され、１行目の偶数列の画素群に対して、Ｋ用ノズル番号Ｎｋα＋ｍが付加される。これにより、プリンタ５０の印刷実行部７０は、非使用ブロックが使用されず、使用ブロックＵｋ，Ｕｃ，Ｕｍ，Ｕｙが使用されるように、印刷を実行することができる。
【００８５】
本実施例について説明した。シングリングでは、吐出量のバラツキに起因する濃度ムラが目立ち難い。このため、第１の印刷モードと比べて、使用ブロックとして採用される基準が厳しくない（即ち第１種の閾値Ｔｈａが大きい）。上記の説明から明らかなように、本実施例の第４の印刷モードが、第１の印刷解像度と第２の印刷解像度とが同じ場合の「第２の印刷モード」の一例である。
【００８６】
上記の各実施例の変形例を以下に列挙する。
（１）上記した実施例では、ＰＣ１０の制御部３０が画像処理部３２と供給部４８とを備えているが、これに代えて、プリンタ５０が画像処理部３２と供給部４８とを備えていてもよい。
【００８７】
（２）上記した実施例では、対象ブロックが使用ブロックか否かの判断は、対象ブロックと基準ブロックとに含まれるノズルの特性データのうちの最大値（ｍａｘ）と最小値（ｍｉｎ）を特定し、それらの差分を計算し、その差分が第１種の閾値Ｔｈａより大きいか否かを判断して行っていた。しかしながら、対象ブロックが使用ブロックか否かの判断方法は、この方法に限られない。例えば、対象ブロックに含まれるノズルの特性データの平均値と、基準ブロックに含まれるノズルの特性データの平均値とを算出し、それらの差分を計算し、その差分が所定の閾値より大きいか否かによって、対象ブロックが使用ブロックか否かを判断してもよい。また、対象ブロックと基準ブロックとに含まれるノズルの特性データの標準偏差（又は分散）を算出し、その標準偏差（又は分散）が所定の閾値より大きいか否かによって、対象ブロックが使用ブロックか否かを判断してもよい。一般的に言うと、「第１種の値」は、対象ブロックが含むノズルと基準ブロックが含むノズルの吐出量のバラツキに関する値であればよい。
【００８８】
（３）上記した実施例では、ＰＣ１０は、ユーザからの印刷指示があった後に、特性データテーブル６０をプリンタ５０から取得する。しかしながら、ＰＣ１０は、プリンタドライバ２４がＰＣ１０にインストールされたタイミングで、特性データテーブル６０をプリンタ５０から取得し、特性データテーブル６０を保持しておいてもよい。また、ＰＣ１０は、図１１のＳ７２の処理を実行する毎に、必要な特性データをプリンタ５０から取得してもよい。
【００８９】
（４）上記した実施例では、ハーフトーン処理部４０は、ドット出力＝１と、ドット出力＝０と、を示す二値データを生成する。しかしながら、ハーフトーン処理部４０は、三値以上のデータを生成してもよい。例えば、ハーフトーン処理部４０は、大ドットに対応する値「３」と、中ドットに対応する値「２」と、小ドットに対応する値「１」と、ドット無に対応する「０」と、を示す四値データを生成してもよい。この場合、ハーフトーン処理部４０は、図１１のＳ６４で利用する閾値として、大ドットと中ドットとを区分するための第２種の閾値Ｔｈｂ１（例えば１９１）と、中ドットと大ドットとを区分するための第２種の閾値Ｔｈｂ２（例えば１２７）と、小ドットとドット無とを区分するための第２種の閾値Ｔｈｂ３（例えば６３）と、を利用してもよい。この例の場合、ハーフトーン処理部４０は、形成されるべきドットサイズに応じて、図１１のＳ７０で算出される注目補正用データを変えてもよい。例えば、ハーフトーン処理部４０は、中ドットが形成される場合には、（２５５＋注目特性データ）×（中ドットで表現されるべき濃度）／（大ドットで表現されるべき濃度（例えば２５５））を注目補正用データとして特定し、小ドットが形成される場合には、（２５５＋注目特性データ）×（小ドットで表現されるべき濃度）／（大ドットで表現されるべき濃度（例えば２５５））を注目補正用データとして特定してもよい。
【００９０】
（５）上記の第３実施例では、ハーフトーン処理部４０は、誤差拡散法を用いて、ハーフトーン処理を実行しているが、これに代えて、ディザ法を用いて、ハーフトーン処理を実行してもよい。
【００９１】
（６）図３の特性データテーブル６０において、吐出量が最小であるノズルに対応する特性データを２５５に設定してもよい。即ち、特性データは、図３に示される値に２５５を加算することによって得られる値でもよい。この場合、図１１のＳ７０で注目特性データ（例えば２５５）を取得することは、注目補正用データを取得することに等しい。即ち、本変形例では、「特性データ」と「補正用データ」とが等しい。本変形例も、「補正用データは、注目ノズルに対応する特定の特性データを用いて得られるデータである」という構成に含まれる。
【００９２】
（７）本明細書で開示される技術は、インク滴を用いた印刷以外に、基板のパターンを形成するためのパターニング装置等にも利用することができる。
【符号の説明】
【００９３】
２：ネットワークシステム、１２：操作部、１４：表示部、１６：ネットワークインターフェイス、２０：記憶部、２２：ワーク領域、２４：プリンタドライバ、３０：制御部、３１：分類部、３２：画像処理部、３４：色変換処理部、３６：取得部、３８：補正用データ算出部、４０：ハーフトーン処理部、４２：補正部、４４：決定部、４６：誤差値算出部、４８：供給部、５０：プリンタ、５２：ネットワークインターフェイス、５３：操作部、５４：表示部、５５：制御部、５６：記憶部、６０：特性データテーブル、６４：プログラム、７０：印刷実行部、８０：印刷ヘッド、８４ｋ，８４ｃ，８４ｍ，８４ｙ：ノズル群、２００：変換済みＲＧＢ画像データ、２１０：ＣＭＹＫ画像データ、２５０：補正済み画像データ
【図１】
2011131473.tif 000003
【図２】
2011131473.tif 000004
【図３】
2011131473.tif 000005
【図４】
2011131473.tif 000006
【図５】
2011131473.tif 000007
【図６】
2011131473.tif 000008
【図７】
2011131473.tif 000009
【図８】
2011131473.tif 000010
【図９】
2011131473.tif 000011
【図１０】
2011131473.tif 000012
【図１１】
2011131473.tif 000013
【図１２】
2011131473.tif 000014
【図１３】
2011131473.tif 000015
【図１４】
2011131473.tif 000016
【図１５】
2011131473.tif 000017
【図１６】
2011131473.tif 000018
【図１７】
2011131473.tif 000019