(57)【要約】【課題】より良好な粒状性が得られる量子化処理を可能とする。【解決手段】記録媒体上にインクを吐出することで形成されるインクドットにより、画像を記録する画像形成装置に出力する画像データを生成する画像処理装置であって、入力画像に基づいて、前記インクに対応する少なくとも１種類以上の前記インクドットについて、前記１種類以上の前記インクドットそれぞれの生成量を画素毎に示す生成量データと、前記インクドットが形成されない空白ドットに対応し、画素毎に前記空白ドットの階調情報を示すドット生成量データとを生成する生成手段と、前記１種類以上の前記インクドットに対応する生成量データ及び前記空白ドットのドット生成量データを用いた量子化処理を行って、前記１種類以上の前記インクドットそれぞれの配置を示すドット配置パターンを決定する処理手段と、を備えることを特徴とする。【選択図】図３
2019134416.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体上にインクを吐出することで形成されるインクドットにより、画像を記録する画像形成装置に出力する画像データを生成する画像処理装置であって、
入力画像に基づいて、前記インクに対応する少なくとも１種類以上の前記インクドットについて、前記１種類以上の前記インクドットそれぞれの生成量を画素毎に示す生成量データと、前記インクドットが形成されない空白ドットに対応し、画素毎に前記空白ドットの階調情報を示すドット生成量データとを生成する生成手段と、
前記１種類以上の前記インクドットに対応する生成量データ及び前記空白ドットのドット生成量データを用いた量子化処理を行って、前記１種類以上の前記インクドットそれぞれの配置を示すドット配置パターンを決定する処理手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記生成手段は、前記入力画像における各画素の階調値に応じて前記インクドットそれぞれの生成量を決定することにより、前記インクドットに対応する生成量データを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記画像形成装置は、前記インクについて、ｎ種類（ｎ≧２）のサイズの異なるインクドットを吐出でき、前記生成手段は、前記ｎ種類のインクドットそれぞれの生成量データを取得し、
前記処理手段は、前記ｎ種類のインクドットのうち少なくとも１つの種類のインクドットについては、前記空白ドットのドット生成量データに基づいて前記ドット配置パターンを決定される
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記１種類以上の前記インクドットに対応する生成量データ及び前記空白ドットのドット生成量データは、画素値としてとり得る最大値は同じであり、
前記生成手段は、各画素について、前記最大値から、前記１種類以上の前記インクドットに対応する生成量データにおける画素の画素値を減算した値を、前記空白ドットの階調情報として算出することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記処理手段は、前記階調値が暗部であることを示す場合、前記ｎ種類のインクドットのうち少なくとも１つのドットよりも空白ドットを優先して量子化することを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記処理手段は、前記ｎ種類のインクドット及び前記空白ドットについての優先順位を決定し、
前記処理手段は、決定された優先順位に従って、各ドットの配置を決定する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項７】
前記処理手段は、前記優先順位を、前記入力画像の画素単位で決定することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記ｎ種類のインクドットは、前記入力画像の各画素における階調値の濃度レベルに応じて分類され、
前記処理手段は、前記各画素のうち暗部階調に属する画素に対しては、前記空白ドットの優先順位を、前記ｎ種類のインクドットよりも高くすることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記処理手段は、前記各画素について、前記ｎ種類のインクドットのうち濃度レベルが高い方のドットのドット生成量が、前記空白ドットのドット生成量以上の場合、当該空白ドットの優先順位を、前記ｎ種類のインクドットよりも高くすることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記処理手段は、前記各画素について、前記ｎ種類のインクドットのうち濃度レベルが高い方のドットのドット生成量が０より大きい場合、前記空白ドットの優先順位を、前記インクドットよりも高くすることを特徴とする請求項８に記載の画像処理装置。
【請求項１１】
前記処理手段は、前記入力画像の各画素のうち暗部階調に属する画素に対しては、前記空白ドットが高分散となるように、各ドットの配置を決定することを特徴とする請求項６に記載の画像処理装置。
【請求項１２】
前記処理手段は、前記入力画像の各画素のうち暗部階調に属する画素に対しては、前記空白ドットと、前記ｎ種類のインクドットのうち濃度レベルが低い方のドットとのトータルで高分散となるように、各ドットの配置を決定することを特徴とする請求項６に記載の画像処理装置。
【請求項１３】
前記ｎ種類のインクドットは、入力画像の各画素における階調値の濃度レベルに応じて分類されて、複数の色材の色毎に形成され、
前記処理手段は、前記優先順位を、前記複数の色材に対応する画像プレーン単位で決定する
ことを特徴とする請求項６に記載の画像処理装置。
【請求項１４】
前記処理手段は、
前記ｎ種類のインクドットで表現される画像において、粒状性が重視される場合は、前記空白ドットの優先順位を、前記ｎ種類のインクドットのうち濃度レベルが高い方のドットよりも高くし、
前記ｎ種類のインクドットで表現される画像において、筋ムラの抑制が重視される場合は、前記ｎ種類のインクドットのうち濃度レベルが高い方のドットの優先順位を、前記空白ドットよりも高くする、
ことを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記生成手段は、
前記ｎ種類のインクドットそれぞれについての階調毎のドット生成量を記した分解テーブルを用いて、前記ｎ種類のインクドットのドット生成量データを生成する
ことを特徴とする請求項３に記載の画像処理装置。
【請求項１６】
前記生成手段は、前記１種類以上のインクドット及び前記空白ドットそれぞれについての階調毎のドット生成量を記した分解テーブルを用いて、前記１種類以上のインクドット及び前記空白ドットのドット生成量データを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項１７】
前記処理手段は、前記１種類以上のインクドット及び前記空白ドットがそれぞれ排他となるように各ドットの配置を決定することを特徴とする請求項６のいずれか１項に記載の画像処理装置。
【請求項１８】
前記ｎ種類のインクドットは、表現をカラーで行うための複数の色材に応じて分類され、
前記処理手段は、前記入力画像の各画素に対して、前記空白ドットの優先順位を、前記ｎ種類のインクドットよりも高くする
ことを特徴とする請求項６に記載の画像処理装置。
【請求項１９】
前記ｎ種類のインクドットは、色成分が同じであり、互いに濃度レベルが異なることを特徴とする請求項３に記載の画像処理装置。
【請求項２０】
少なくとも１種類以上のインクドットにより画像を形成された記録媒体であって、
暗部の領域においては、前記１種類以上のインクドットが吐出されていない紙白に相当するドットの分散性が、前記１種類以上のインクドットのうち少なくとも１つのドットの分散性よりも高く、明部の領域においては前記１種類以上のインクドットのうち少なくとも１つのドットの分散性が、紙白に相当するドットの分散性よりも高い
ことを特徴とする記録媒体。
【請求項２１】
記録媒体上にインクを吐出することで形成されるインクドットにより、画像を記録する画像形成装置に出力する画像データを生成する方法であって、
入力画像に基づいて、前記インクに対応する少なくとも１種類以上の前記インクドットについて、前記１種類以上の前記インクドットそれぞれの生成量を画素毎に示す生成量データと、前記インクドットが形成されない空白ドットに対応し、画素毎に前記空白ドットの階調情報を示すドット生成量データとを生成するステップと、
前記１種類以上の前記インクドットに対応する生成量データ及び前記空白ドットのドット生成量データを用いた量子化処理を行って、前記１種類以上の前記インクドットそれぞれの配置を示すドット配置パターンを決定する処理ステップと、
を含むことを特徴とする方法。
【請求項２２】
コンピュータを、請求項１乃至１９のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インクなどに代表される色材を用いて画像を形成するために、入力画像の階調数を、より少ない階調数へ変換する量子化処理に関する。
【背景技術】
【０００２】
従来、コンピュータ等が処理した画像を多色多階調で印刷する技術として、インク等の色材によりドットを形成して紙等の記録媒体上に画像を形成する画像形成装置が広く用いられている。このような画像形成装置では記録速度の向上や高画質化等を目的として、ドットの配置制御に関する様々な手法が提案されている。たとえば、特許文献１ には、同一色について濃度の異なるインクを使用するインクジェット方式の印刷装置において、濃度が高いインクから順にドット配置を決定することで濃淡インクのドットが高分散となるようにする技術が開示されている。また、特許文献２には、形成可能なサイズの異なる各ドットの配置がトータルで高分散となるように決定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開ＷＯ９８／０３３４１
【特許文献２】特開２００７−６３９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１及び２は、複数種類のドットに対応する多値のインク値データに対して誤差拡散法による量子化処理を行うことにより、インクが吐出されるドットの配置を決定している。つまり、これら従来技術では、インクが吐出されない紙白部に対応する画素は、いかなるドットも配置されない余り部分として決定されていた。その結果、例えば特許文献１では、濃インクのドットと淡インクのドットそれぞれでは高い分散性が得られても、制御対象外である紙白部については分散性が悪いことがあった。また、特許文献２では、大中小の各ドットのトータルのドット配置において高い分散性が得られても、紙白部も含めた全体では十分な分散性が得られない場合があった。このように、紙白部に対応する画素に着目した場合、従来技術では良好な粒状性を実現できずに画質を低下させる場合があった。
【０００５】
本発明は上記の課題に鑑みてなされたものであり、より良好な粒状性が得られる量子化処理を可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理装置は、記録媒体上にインクを吐出することで形成されるインクドットにより、画像を記録する画像形成装置に出力する画像データを生成する画像処理装置であって、入力画像に基づいて、前記インクに対応する少なくとも１種類以上の前記インクドットについて、前記１種類以上の前記インクドットそれぞれの生成量を画素毎に示す生成量データと、前記インクドットが形成されない空白ドットに対応し、画素毎に前記空白ドットの階調情報を示すドット生成量データとを生成する生成手段と、前記１種類以上の前記インクドットに対応する生成量データ及び前記空白ドットのドット生成量データを用いた量子化処理を行って、前記１種類以上の前記インクドットそれぞれの配置を示すドット配置パターンを決定する処理手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明に係る画像処理装置によれば、より良好な粒状性を実現することができる。 
【図面の簡単な説明】
【０００８】
【図１】（ａ）は画像形成装置の構成の一例を示す図、（ｂ）は画像処理部の主要なハードウェア構成を示すブロック図
【図２】実施形態１に係る、分解処理部及び量子化処理の内部構成を示す機能ブロック図
【図３】実施形態１に係る、画像処理部内の処理の流れを示すフローチャート
【図４】実施形態１に係る、ドット分解テーブルの一例を示す図
【図５】暗部階調において空白ドットの配置を優先して決定した場合の効果を説明する図
【図６】実施形態１に係る、量子化処理の詳細を示すフローチャート
【図７】誤差拡散係数の説明図
【図８】（ａ）〜（ｄ）は、誤差ラインバッファの一例を示す図
【図９】実施形態２に係る、量子化処理の詳細を示すフローチャート
【図１０】（ａ）〜（ｃ）は、誤差ラインバッファの一例を示す図
【図１１】（ａ）及び（ｂ）は、実施形態２の手法による量子化処理の効果を説明する図
【図１２】実施形態３に係る、分解処理部及び量子化処理部の内部構成を示す機能ブロック図
【図１３】実施形態３に係る、画像処理部内の処理の流れを示すフローチャート
【図１４】実施形態３に係る、ドット分解テーブルの一例を示す図
【図１５】実施形態４に係る、量子化処理の詳細を示すフローチャート
【図１６】実施形態５に係る、量子化処理の詳細を示すフローチャート
【図１７】実施形態６に係る、分解処理部及び量子化処理の内部構成を示す機能ブロック図
【図１８】実施形態６に係る、画像処理部内の処理の流れを示すフローチャート
【図１９】実施形態６に係る、量子化処理の詳細を示すフローチャート
【図２０】ディザ法による量子化処理の説明図
【図２１】実施形態７に係る、分解処理部及び量子化処理の内部構成を示す機能ブロック図
【図２２】実施形態６に係る、画像処理部内の処理の流れを示すフローチャート
【発明を実施するための形態】
【０００９】
以下、添付の図面を参照して、本発明を実施する形態について説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【実施形態１】
【００１０】
（印刷システムの構成）
図１（ａ）は、本実施形態に係る、インクジェット方式で印刷を行う画像形成装置の構成の一例を示す図である。本実施形態の画像形成装置１１０は、画像処理部１１０と画像形成部１２０とにより構成される。ユーザの印刷指示を受け付けると、画像処理部１１０でインク色毎にｎ種類（本実施形態では、大中小の３種類）のドットに対応するドット配置データを生成し、このドット配置データに基づいて画像形成部１２０が印刷を実行する。
【００１１】
図１（ｂ）は、画像処理部１１０の主要なハードウェア構成を示すブロック図である。画像処理部１１０は、ＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、分解処理部１１４及び量子化処理部１１５からなる。ＣＰＵ１１１は、ＲＯＭ１１３に格納されたプログラムに基づいて全体を統括制御する。ＲＡＭ１１２は、ＣＰＵ１１１の作業領域として使用される。分解処理部１１４は、印刷対象の入力画像データから各インク色について、ｎ（ｎは１以上の整数。本実施形態ではｎ＝３）＋１個のドット生成量データを生成する。ドット生成量データは、画素毎に階調情報を示す値が保存されたデータである。
【００１２】
量子化処理部１１５は、分解処理部１１４から入力されたｎ＋１個のドット生成量データを用いて量子化処理（ハーフトーン処理）を行い、各インク色について、より少ない階調数で表現されたｎ個のドット配置データを生成する。各ドット配置データは、画素毎にドットを配置するか否かを示す情報が保存されたデータである。
【００１３】
分解処理部１１４と量子化処理部１１５の詳細については後述する。画像処理部１１０を構成する上記２つの処理部（分解処理部１１４及び量子化処理部１１５）は、ロジック回路で構成することで高速処理を可能としている。なお、画像処理部１１０には、γ補正を行う処理部やカラーマッチングを行う処理部など、上述したもの以外の構成要素を含み得るものであるが、本発明の主眼ではないので説明を省略している。また、画像処理部１１０を例えば一般的なパーソナルコンピュータなど画像形成装置とは独立した装置として構成してもよい。この場合は当該装置にインストールされたプリンタドライバによって上述した画像処理部１１０の機能が実現され得る。
【００１４】
画像形成部１２０は、ドット配置データに従って、例えばＣＭＹＫ（シアン、マゼンタ、イエロー、ブラック）４色の色材を用いて紙等の記録媒体上に画像を印刷する。画像の記録方式は特に限定されないが、本実施形態ではインクジェット方式を例に説明を行う。インクジェット方式の場合、ＣＭＹＫ各色について設けられたノズル列が並ぶラインヘッドから各色のインク滴を吐出して画像形成を行う。ラインヘッドは、例えば用紙の搬送方向と垂直な幅方向について描画領域の全範囲をカバーするノズル配列を備えた長尺ヘッド（ページワイドヘッド、或いはフルライン型ヘッドとも呼ばれる）である。長尺ヘッドの場合、用紙の搬送方向に対して略垂直方向に延在させるように配置され、当該ヘッドに対して用紙を１回（シングルパス方式）又は複数回（マルチパス方式）相対移動させることにより、所定解像度の画像を形成する。ラインヘッドのノズル内にはピエゾ素子が設けられており、当該ピエゾ素子に印加する電圧によってノズルの開口部から吐出するインクの量が調整される。なお、インクヘッドにも様々なタイプが存在し、長尺ヘッドは一例であってこれに限定されないことはいうまでもない。
【００１５】
本実施形態においては、ＣＭＹＫ各色において、３段階の異なるサイズのドットを形成可能に構成される。本明細書ではノズルから実際にインクが吐出されて形成されるドットを総称して「実ドット（又はインクドット）」と呼び、吐出されるインク量の多い順に「大ドット」、「中ドット」、「小ドット」と呼ぶこととする。これら大、中、小の実ドットに、ノズルからインクを吐出しない吐出量ゼロのドットを足した４種類のドットによって、１つのノズルにおいて４段階の濃度レベルが表現可能となっている。本明細書においては、インクが吐出されないことで形成される紙白部に対応するドットを「空白ドット（又はゼロドット）」と呼ぶこととする。なお、インクを吐出するヘッドは、ピエゾ吐出方式に限定されるものではなく、サーマル吐出方式を採用してもよい。サーマル吐出方式では、それぞれ吐出量の異なるラインヘッドを複数備えることで、濃度レベルの異なる３段階のインクを吐出可能な構成とすることができる。
【００１６】
（分解処理部と量子化処理部）
続いて、本実施形態の特徴である、分解処理部１１４と量子化処理部１１５について詳しく説明する。図２は、本実施形態に係る、分解処理部１１４及び量子化処理１１５の内部構成を示す機能ブロック図である。図２に示すとおり、分解処理部１１４は、色分解処理部２０１、実ドット生成量決定部２０２及び空白ドット生成量決定部２０３を有する。また、量子化処理部１１５は、優先順決定部２０４、ドット配置決定部２０５及びデータ出力部２０６を有する。以下、図３に示すフローチャートに沿って説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【００１７】
Ｓ３０１では、画像形成装置１００が外部の情報処理装置（不図示）等から受信した印刷対象の画像データが、分解処理部１１４の色分解処理部２０１に入力される。この入力画像データは、例えばレッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の３つの色成分を例えば２５６階調で表現した多値のＲＧＢ画像データである。続くＳ３０２では、色分解処理部２０１が、予め用意した色分解テーブルを用いて、ＲＧＢ画像データに対して色分解処理を行ない、各インク色に対応するＣＭＹＫごとの画像データ（ＣＭＹＫのインク色に対応する画像プレーン）に変換する。得られたＣＭＹＫごとの画像データ（以下、まとめてCMYK画像データとも表記する）は、実ドット生成量決定部２０２に送られる。
【００１８】
ステップ３０３では、実ドット生成量決定部２０２が、予め用意したドット分解テーブルを用いて、各ＣＭＹＫ画像データに対しドットサイズ分解処理を行うことで、大中小のドットサイズ毎のドット生成量データを取得する。具体的には、ＣＭＹＫ各色に対応する画像プレーンを、さらに１ドットに対応するインク吐出量が異なる大中小の実ドット毎のデータ（大中小の各ドットプレーン）へ分解する。図４は、本実施形態に係る、ドット分解テーブルの一例を示す図である。横軸が色分解処理後の各インク色に対応する画像プレーンにおける階調値、縦軸が大中小の実ドット毎の生成量（単位面積当たりに形成されるドットの比率）を示している。図４の場合、縦軸と横軸ともに最大値は２５５である。このようなドット分解テーブルを例えばＣＭＹＫ各色について用意・保持しておき、本ステップにおいて読み出して参照する。例えば、図４がシアンのドット分解テーブルであると仮定し、シアンの画像プレーン（Ｃプレーン）における階調値が“２００”であったとする。この場合、Ｃプレーンにおける大ドットの生成量は“１４５”、中ドットの生成量は“７５”、小ドットの生成量は“１８”となる。こうしてＣプレーンについての、大ドットの生成量を示すデータＣ_large、中ドットの生成量を示すデータＣ_medium、小ドットの生成量を示すデータＣ_smallが生成される。マゼンタ、イエロー、ブラックについても同様のドット生成量データが生成される。すなわち、Ｍプレーンについて、Ｍ_large、Ｍ_medium、Ｍ_small、Ｙプレーンについて、Ｙ_large、Ｙ_medium、Ｙ_small、Ｋプレーンについて、Ｋ_large、Ｋ_medium、Ｋ_smallが生成されることになる。こうして生成された、ＣＭＹＫ毎の、大中小の実ドットの生成量を示すデータ（計１２個のドットプレーン）は、量子化処理部１１５に送られる。
【００１９】
Ｓ３０４では、空白ドット生成量決定部２０３が、空白ドットのドット生成量データを、ＣＭＹＫの各画像プレーンについて生成する。本実施形態では、ＣＭＹＫ各色で、大中小の３種類の実ドットを階調値に応じて組み合わせることにより入力画像を表現することとしている。従って、各画素における３種類の実ドットのドット生成量の合計は、理論上の最大値が２５５である。そのため、最大値２５５と３種類の実ドットのドット生成量の合計の差分が、空白ドットによって表現すべき階調値（生成量に相当する）とみなすことができる。そこで、ＣＭＹＫの各画像プレーンにおける空白ドットの生成量を示すデータ、Ｃ_zero、Ｍ_zero、Ｙ_zero、Ｋ_zeroは、それぞれ以下の式（１）〜式（４）で表される。
Ｃ_zero＝２５５−（Ｃ_large＋Ｃ_medium＋Ｃ_small）  ・・・式（１）
Ｍ_zero＝２５５−（Ｍ_large＋Ｍ_medium＋Ｍ_small）  ・・・式（２）
Ｙ_zero＝２５５−（Ｙ_large＋Ｙ_medium＋Ｙ_small）  ・・・式（３）
Ｋ_zero＝２５５−（Ｋ_large＋Ｋ_medium＋Ｋ_small）  ・・・式（４）
【００２０】
上記のようにして得られた各色における空白ドットの生成量を示すデータ（ゼロドットプレーン）は、量子化処理部１１５に送られる。そして、ＣＭＹＫ毎の４種類（大中小＋ゼロ）のドット生成量データを使用して、次のＳ３０５においてＣＭＹＫ各色のドット配置が決定されることになる。本実施形態においては、暗部の階調（シャドウ領域）においては、大中小の実ドットに先駆けて空白ドットの配置を決定するよう制御される。暗部階調において視覚的に目立つ紙白部のドット配置の分散性が低いと粒状性を悪化させる要因となる。そのため、暗部の階調において空白ドットの配置を実ドットよりも優先的に決定することで、高分散性を確保する。本実施形態の手法は、紙白部に対応する空白ドットについてもドット生成量データを生成し、その配置を実ドットに対して優先して決定することで粒状性の向上を図るものである。
【００２１】
Ｓ３０５では、量子化処理部１１５が、ＣＭＹＫ毎に、４種類（大中小＋ゼロ）のドット生成量データに基づいて量子化処理を行ない、ドット配置データを生成する。この際、上記４種類のドットの中で優先順位を決定し、優先順位の高いドットからドット配置を順次決定していく。図５は、暗部階調において空白ドットの配置を優先して決定した場合の効果を説明する図である。図５の（ａ）〜（ｄ）は、空白ドットの配置を優先して決定した場合における各ドットの配置例を示している。ここでは、階調値“２００”を例とする。図５（ａ）は空白ドットの配置、同（ｂ）は小ドットの配置、同（ｃ）は中ドットの配置、同（ｄ）は大ドットの配置である。なお図５(ａ)において、空白ドットは本来インクを吐出しない画素であるが、ここではドット配置を明示するため、黒ドットにより空白ドットが配置される位置を示している。また、図５（ｂ）〜（ｄ）についても、図５（ａ）と同様に、同じサイズの黒ドットにより各ドットが配置される位置を示している。図５（ａ）を見ると、空白ドットは他の実ドットに優先してその配置を決定しているため、高分散となっている。一方、図５（ｂ）〜（ｄ）を見ると、大中小の実ドットは空白ドットと排他するようにその配置を決定しているため、各々のドットを優先的に配置決定する場合と比べると分散性は悪くなっている。図５（ｅ）〜（ｈ）は、図５（ａ）〜（ｄ）のドット配置に基づき、各ドット単体で用紙にインクドットを形成した場合のイメージ図である。空白ドットに関してはインク吐出量がゼロのため、ドットが形成されていない（図５（ｅ））。小ドット、中ドット、大ドットに関しては、それぞれ対応する吐出量でインクが吐出され、実ドットが形成される（図５（ｆ）、（ｇ）、（ｈ））。図５（ｉ）は、図５（ａ）〜（ｄ）のドット配置に基づき、大中小の実ドットを同一用紙上に形成した場合のイメージ図である。空白ドットの配置を優先して決定しているので、視覚的に目立つ紙白部によるドットの配置の分散性が高く、粒状性の良好な画像を得られることがわかる。量子化処理の詳細については、別のフローチャートを用いて詳しく説明する。
【００２２】
（量子化処理の詳細）
続いて、Ｓ３０５の量子化処理の詳細について、図６のフローチャートに沿って説明する。この処理はＣＭＹＫ各色で同一のため、以下、ブラック（Ｋ）を代表例として説明するものとする。また、以下ではドット生成量データを誤差拡散法により量子化して２値のドット配置データに変換する場合を例に説明を行っているが、量子化の手法は誤差拡散法に限定されるものではなく、例えばディザ法を用いてもよい。なお、以下の説明において記号「Ｓ」はステップを表す。
【００２３】
Ｓ６０１において、優先順決定部２０４は、Ｋプレーンにおける未処理の画素を注目画素にとして設定し、注目画素に対して、分解処理部１１４で生成された上記４種類（大中小＋ゼロ）のドット生成量データについて優先順位を決定する。ここでは、優先順位の高い方から順に、Ｐ１、Ｐ２、Ｐ３、Ｐ４で表すものとする。この場合において、明部の階調においては濃度レベルの高い濃いドットほど（すなわち、大きなインクドットほど）目立ち、暗部の階調においては濃度レベルの低い明るいドットほど（すなわち、小さなドット（ゼロドット）ほど）目立つ。従って、階調において目立ちやすいドットほど優先順位を高くすることが望ましい。ここで図４に示すように、一般的には、暗部階調であるほど、大ドットの生成量を多くして紙白部分を少なくする。そのため、階調値に応じて決まる、大ドットと空白ドットそれぞれの生成量を比較することで、明部階調であるか暗部階調であるかを判別できる。また、ドット数が少ないほど、ドット配置の自由度が高く、高分散に配置を決定することができる。よって、各ドットのドット生成量データを比較し、ドット数が少なくなる方を優先させるように優先順位を決定することで、目立つ方のドット配置における分散性をより効果的に向上させることができる。以上のような考え方に基づき、例えば、以下の１）、２）或いは３）のような方法で優先順位を決定する。
【００２４】
１）  大ドットとゼロドットのドット生成量データに基づく決定方法
まず、注目画素位置（ｘ，ｙ）に対応する大ドット生成量データＫ_large（ｘ，ｙ）とゼロドット生成量データＫ_zero（ｘ，ｙ）を読み出し、両者を比較する。比較の結果、Ｋ_large（ｘ，ｙ）＜Ｋ_zero（ｘ，ｙ）であれば、注目画素は明部階調に属すると判定し、当該注目画素における優先順位を、Ｐ１＝Ｋ_large、Ｐ２＝Ｋ_medium、Ｐ３＝Ｋ_small、Ｐ４＝Ｋ_zeroとする。一方、Ｋ_large（ｘ，ｙ）≧Ｋ_zero（ｘ，ｙ）であれば、注目画素は暗部階調に属すると判定し、当該注目画素における優先順位を、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeとする。
【００２５】
２）  大ドットのドット生成量データのみに基づく決定方法
まず、注目画素位置（ｘ，ｙ）に対応する大ドット生成量データを参照する。そして、Ｋ_large（ｘ，ｙ）＝０であれば、注目画素は明部階調に属すると判定し、当該注目画素における優先順位をＰ１＝Ｋ_large、Ｐ２＝Ｋ_medium、Ｐ３＝Ｋ_small、Ｐ４＝Ｋ_zeroとする。一方、Ｋ_large（ｘ，ｙ）＞０であれば、注目画素は暗部階調に属すると判定し、当該注目画素における優先順位をＰ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeとする。
【００２６】
３）  大、中、小ドットとゼロドットのドット生成量データに基づく決定方法
注目画素位置（ｘ，ｙ）に対応する大、中、小ドット生成量データを参照する。そして、当該注目画素における優先順位をドット生成量データが小さい順に、Ｐ１、Ｐ２、Ｐ３、Ｐ４とする。 例えば、Ｋ_large（ｘ，ｙ）＜Ｋ_zero（ｘ，ｙ）＜Ｋ_small（ｘ，ｙ）＜Ｋ_medium（ｘ，ｙ）の場合、Ｐ１＝Ｋ_large、Ｐ２＝Ｋ_zero、Ｐ３＝Ｋ_small、Ｐ４＝Ｋ_mediumとする。
【００２７】
上記１）及び２）いずれの決定方法でも、暗部階調に属する注目画素に対しては、空白ドットの配置を優先させることができる。また、上記３）の決定方法でも、ドット数が少なくなる方を優先させるように優先順位を決定することで、目立ちやすいドットのドット配置における分散性を効果的に向上させることができる。
【００２８】
ここでは、注目画素が暗部階調に属しており、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeに決定されたものとして説明を続ける。こうして決定された優先順位の情報（以下、優先順情報）は、ドット配置決定部２０５とデータ出力部２０６において参照される。図６の説明に戻る。
【００２９】
続くＳ６０２及びＳ６０３において、ドット配置決定部２０５は、優先順情報に基づき、最も優先順位の高いＰ１のドット生成量データ（ここではＫ_zero）に対して誤差拡散法による量子化処理を行い、ドット配置を決定する。図７は、誤差拡散法によって周辺画素に誤差を拡散する際に使用する係数の一例を示している。本実施形態では、Ｋ１〜Ｋ４の４つの係数を持つものとし、例えば、Ｋ１＝７／１６、Ｋ２＝３／１６、Ｋ３＝５／１６、Ｋ４＝１／１６とする。なお、上記の誤差拡散係数は一例でありこれに限定されないことはいうまでもない。このような誤差拡散係数によって誤差を拡散し累積するために、ドット配置決定部２０５は、ｎ種類（ここでは大中小なので、ｎ＝３）の実ドットに空白ドットを加えたｎ＋１種類のドットに対応した、ｎ＋１個の誤差ラインバッファを備える。ドット種にそれぞれ対応する誤差ラインバッファを持つことで、優先順位が変わっても、ドット種毎のドットパターンの連続性を保つことができる。図８（ａ）〜（ｄ）に本実施形態の誤差ラインバッファの一例を示す。図８（ａ）は大ドットに対応する誤差ラインバッファ、同（ｂ）は中ドットに対応する誤差ラインバッファ、同（ｃ）は小ドットに対応する誤差ラインバッファ、同（ｄ）は空白ドットに対応する誤差ラインバッファである。各誤差ラインバッファは、入力画像における横画素数Ｗ＋１個の記憶領域（Ｅ_Ｋ_large（ｘ）、Ｅ_Ｋ_medium（ｘ）、Ｅ_Ｋ_small（ｘ）、Ｅ_Ｋ_zero（ｘ）。ｘ＝１〜Ｗ＋１））を有する。そして各記憶領域に、後述する方法で量子化誤差が格納されていく。なお、誤差ラインバッファは処理開始前に、初期値（＝０）或いはランダム値によって全て初期化される。ここでは、各誤差ラインバッファを優先順が高い順に、Ｅ_Ｐ１、Ｅ_Ｐ２、Ｅ_Ｐ３、Ｅ_Ｐ４で表すものとする。いま優先順は、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeである。よって、Ｅ_Ｐ１＝Ｅ_Ｋ_zero、Ｅ_Ｐ２＝Ｅ_Ｋ_small、Ｅ_Ｐ３＝Ｅ_Ｋ_medium、Ｅ_Ｐ４＝Ｅ_Ｋ_largeとなる。
【００３０】
Ｓ６０２では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ１（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のドット生成量データＰ１’は、以下の式（５）で表される。
Ｐ１’＝Ｐ１（ｘ，ｙ）＋Ｅ_Ｐ１（ｘ）    ・・・式（５）
【００３１】
そして、Ｓ６０３では、Ｐ１’と閾値Ｔｈとの比較による量子化がなされる。Ｐ１’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ１’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ１’に対する量子化結果をＯ_Ｐ１で表すこととする。こうして、暗部階調においては、Ｐ１に対応する空白ドットの配置が実ドットに優先して決定されることになる。
【００３２】
次に、Ｓ６０４〜Ｓ６０６において、ドット配置決定部２０５は、優先順位が２番目に高いＰ２のドット生成量データ（ここではＫ_small）に対して量子化処理を行い、ドット配置を決定する。
【００３３】
まず、Ｓ６０４では、より優先順が高いドット（ここでは空白ドット）の配置決定結果に基づく補正量Ｈが算出される。そして、得られた補正量Ｈを、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対して反映させる処理がなされる。この場合おいて、補正量Ｈは以下の式（６）で表され、補正量Ｈを反映後のドット生成量データＰ２’は以下の式（７）で表される。
Ｈ＝Ｐ１（ｘ，ｙ）−Ｏ_Ｐ１（ｘ，ｙ）    ・・・式（６）
Ｐ２’＝Ｐ２（ｘ，ｙ）＋Ｈ                ・・・式（７）
【００３４】
上述の処理により、より優先順の高いＰ１に対応するドットの配置に対して排他的に、Ｐ２に対応するドット（ここでは小ドット）の量子化結果を得ることが可能になる。
【００３５】
次に、Ｓ６０５では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ２（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のドット生成量データＰ２’’は、以下の式（８）で表される。
Ｐ２’’＝Ｐ２’＋Ｅ_Ｐ２（ｘ）          ・・・式（８）
【００３６】
そして、Ｓ６０６では、Ｐ２’’と閾値Ｔｈとの比較による量子化がなされる。Ｐ２’’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ２’’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ２’’に対する量子化結果をＯ_Ｐ２で表すこととする。次に、Ｓ６０７〜Ｓ６０９において、ドット配置決定部２０５は、優先順位が３番目に高いＰ３のドット生成量データ（ここではＫ_medium）に対して量子化処理を行い、ドット配置を決定する。
【００３７】
まず、Ｓ６０７では、より優先順が高いドット（ここでは空白ドットと小ドット）の配置決定結果に基づく補正量Ｈが更新される。そして、得られた補正量Ｈを、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ３（ｘ，ｙ）に対して反映させる処理がなされる。この場合おいて、更新後の補正量Ｈは以下の式（９）で表され、補正量Ｈを反映後のドット生成量データＰ３’は以下の式（１０）で表される。
Ｈ＝Ｈ＋Ｐ２（ｘ，ｙ）−Ｏ_Ｐ２（ｘ，ｙ）    ・・・式（９）
Ｐ３’＝Ｐ３（ｘ，ｙ）＋Ｈ                ・・・式（１０）
【００３８】
上述の処理により、より優先順の高いＰ１及びＰ２に対応するドットの配置に対して排他的に、Ｐ３に対応するドット（ここでは中ドット）の量子化結果を得ることが可能になる。
【００３９】
Ｓ６０８では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ３（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ３（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のドット生成量データＰ３’’は、以下の式（１１）で表される。
Ｐ３’’＝Ｐ３’＋Ｅ_Ｐ３（ｘ）          ・・・式（１１）
【００４０】
そして、Ｓ６０９では、Ｐ３’’と閾値Ｔｈとの比較による量子化がなされる。Ｐ３’’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ３’’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ３’’に対する量子化結果をＯ_Ｐ３で表すこととする。次に、Ｓ６１０〜Ｓ６１２において、ドット配置決定部２０５は、優先順位が４番目のＰ４のドット生成量データ（ここではＫ_ｌａｒｇｅ）に対して量子化処理を行い、ドット配置を決定する。
【００４１】
まず、Ｓ６１０では、より優先順が高いドット（ここでは、空白ドット、小ドット及び中ドット）の配置決定結果に基づく補正量Ｈが更新される。そして、得られた補正量Ｈを、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ４（ｘ，ｙ）に対して反映させる処理がなされる。この場合おいて、更新後の補正量Ｈは以下の式（１２）で表され、補正量Ｈを反映後のドット生成量データＰ４’は以下の式（１３）で表される。
Ｈ＝Ｈ＋Ｐ３（ｘ，ｙ）−Ｏ_Ｐ３（ｘ，ｙ）    ・・・式（１２）
Ｐ４’＝Ｐ４（ｘ，ｙ）＋Ｈ                ・・・式（１３）
【００４２】
上述の処理により、より優先順の高いＰ１〜Ｐ３に対応するドットの配置に対して排他的に、Ｐ４に対応するドット（ここでは大ドット）の量子化結果を得ることが可能になる。
【００４３】
Ｓ６１１では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ４（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ４（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のドット生成量データＰ４’’は、以下の式（１４）で表される。
Ｐ４’’＝Ｐ４’＋Ｅ_Ｐ４（ｘ）          ・・・式（１４）
となる。
【００４４】
そして、Ｓ６１２では、Ｐ４’’と閾値Ｔｈとの比較による量子化がなされる。Ｐ４’’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ４’’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ４’’に対する量子化結果をＯ_Ｐ４で表すこととする。続いて、Ｓ６１３では、量子化処理を施す前の値Ｐ１’’、Ｐ２’’、Ｐ３’’、Ｐ４’’と各量子化結果Ｏ_Ｐ１、Ｏ_Ｐ２、Ｏ_Ｐ３、Ｏ_Ｐ４との差分が算出される。ここで算出される差分をＥＲＲ_Ｐ１、ＥＲＲ_Ｐ２、ＥＲＲ_Ｐ３、ＥＲＲ_Ｐ４とすると、それぞれ以下の式（１５）〜式（１８）で表される。
ＥＲＲ_Ｐ１  ＝  Ｐ１’’−  Ｏ_Ｐ１  ・・・式（１５）
ＥＲＲ_Ｐ２  ＝  Ｐ２’’−  Ｏ_Ｐ２  ・・・式（１６）
ＥＲＲ_Ｐ３  ＝  Ｐ３’’−  Ｏ_Ｐ３  ・・・式（１７）
ＥＲＲ_Ｐ４  ＝  Ｐ４’’−  Ｏ_Ｐ４  ・・・式（１８）
【００４５】
そして、Ｓ６１４では、算出された誤差が上述の誤差拡散係数に従って、注目画素の周囲の画素に拡散される。具体的には、Ｐ１〜Ｐ４における誤差ＥＲＲ_Ｐ１、ＥＲＲ_Ｐ２、ＥＲＲ_Ｐ３、ＥＲＲ_Ｐ４が、それぞれ対応する誤差ラインバッファに以下のとおり格納される。
【００４６】
まず、Ｐ１に対応する誤差ＥＲＲ_Ｐ１は、Ｅ_Ｐ１＝Ｅ_Ｋ_zeroであるため、Ｋ_zeroの誤差ラインバッファＥ_Ｋ_zeroに以下のように格納される。
Ｅ_Ｋ_zero(ｘ＋１)＝Ｅ_Ｋ_zero(ｘ＋１)＋ＥＲＲ_Ｐ１×７／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_zero(ｘ−１)＝Ｅ_Ｋ_zero(ｘ−１)＋ＥＲＲ_Ｐ１×３／１６  (ｘ＞１)
Ｅ_Ｋ_zero(ｘ)＝Ｅ_Ｋ_zero(Ｗ＋１)＋ＥＲＲ_Ｐ１×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｋ_zero(ｘ)＝Ｅ_Ｋ_zero(Ｗ＋１)＋ＥＲＲ_Ｐ１×８／１６  (ｘ＝１)
Ｅ_Ｋ_zero(ｘ)＝Ｅ_Ｋ_zero(Ｗ＋１)＋ＥＲＲ_Ｐ１×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｋ_zero(Ｗ＋１)＝ＥＲＲ_Ｐ１×１／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_zero(Ｗ＋１)＝０  (ｘ＝Ｗ)
【００４７】
Ｐ２に対応する誤差ＥＲＲ_Ｐ２は、Ｅ_Ｐ２＝Ｅ_Ｋ_smallであるため、Ｋ_smallの誤差ラインバッファＥ_Ｋ_smallに以下のように格納される。
Ｅ_Ｋ_small(ｘ＋１)＝Ｅ_Ｋ_small(ｘ＋１)＋ＥＲＲ_Ｐ２×７／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_small(ｘ−１)＝Ｅ_Ｋ_small(ｘ−１)＋ＥＲＲ_Ｐ２×３／１６  (ｘ＞１)
Ｅ_Ｋ_small(ｘ)＝Ｅ_Ｋ_small(Ｗ＋１)＋ＥＲＲ_Ｐ２×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｋ_small(ｘ)＝Ｅ_Ｋ_small(Ｗ＋１)＋ＥＲＲ_Ｐ２×８／１６  (ｘ＝１)
Ｅ_Ｋ_small(ｘ)＝Ｅ_Ｋ_small(Ｗ＋１)＋ＥＲＲ_Ｐ２×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｋ_small(Ｗ＋１)＝ＥＲＲ_Ｐ２×１／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_small(Ｗ＋１)＝０  (ｘ＝Ｗ)
【００４８】
Ｐ３に対応する誤差ＥＲＲ＿Ｐ３は、Ｅ_Ｐ３＝Ｅ_Ｋ_mediumであるため、Ｋ_mediumの誤差ラインバッファＥ_Ｋ_mediumに以下のように格納される。
Ｅ_Ｋ_medium(ｘ＋１)＝Ｅ_Ｋ_medium(ｘ＋１)＋ＥＲＲ_Ｐ３×７／１６  (ｘ＜Ｗ)Ｅ_Ｋ_medium(ｘ−１)＝Ｅ_Ｋ_medium(ｘ−１)＋ＥＲＲ_Ｐ３×３／１６  (ｘ＞１)Ｅ_Ｋ_medium(ｘ)＝Ｅ_Ｋ_medium(Ｗ＋１)＋ＥＲＲ_Ｐ３×５／１６  (１＜ｘ＜Ｗ)Ｅ_Ｋ_medium(ｘ)＝Ｅ_Ｋ_medium(Ｗ＋１)＋ＥＲＲ_Ｐ３×８／１６  (ｘ＝１)
Ｅ_Ｋ_medium(ｘ)＝Ｅ_Ｋ_medium(Ｗ＋１)＋ＥＲＲ_Ｐ３×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｋ_medium(Ｗ＋１)＝ＥＲＲ_Ｐ３×１／１６  (ｘ＜Ｗ)
Ｅ＿Ｋ_medium(Ｗ＋１)＝０  (ｘ＝Ｗ)
【００４９】
Ｐ４に対応する誤差ＥＲＲ_Ｐ４は、Ｅ_Ｐ４＝Ｅ_Ｋ_largeであるため、Ｋ_largeの誤差ラインバッファＥ_Ｋ_largeに以下のように格納される。
Ｅ_Ｋ_large(ｘ＋１)＝Ｅ_Ｋ_large(ｘ＋１)＋ＥＲＲ_Ｐ４×７／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_large(ｘ−１)＝Ｅ_Ｋ_large(ｘ−１)＋ＥＲＲ_Ｐ４×３／１６  (ｘ＞１)
Ｅ_Ｋ_large(ｘ)＝Ｅ_Ｋ_large(Ｗ＋１)＋ＥＲＲ_Ｐ４×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｋ_large(ｘ)＝Ｅ_Ｋ_large(Ｗ＋１)＋ＥＲＲ_Ｐ４×８／１６  (ｘ＝１)
Ｅ_Ｋ_large(ｘ)＝Ｅ_Ｋ_large(Ｗ＋１)＋ＥＲＲ_Ｐ４×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｋ_large(Ｗ＋１)＝ＥＲＲ_Ｐ４×１／１６  (ｘ＜Ｗ)
Ｅ_Ｋ_large(Ｗ＋１)＝０  (ｘ＝Ｗ)
【００５０】
Ｓ６１５では、データ出力部２０６が、優先順決定部２０４から受け取った優先順情報に基づいて、ラインヘッドによって形成可能な大中小の各ドットに対応したドット配置データを出力する。いま、優先順情報では、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeとなっている。この場合には、注目画素位置（ｘ，ｙ）についてのＫインク吐出用のドット配置データとして以下の３つのデータが画像形成部１２０へ出力されることになる。
大ドット：Ｏ_Ｐ４（ｘ，ｙ）
中ドット：Ｏ_Ｐ３（ｘ，ｙ）
小ドット：Ｏ_Ｐ２（ｘ，ｙ）
【００５１】
そして、Ｓ６１６では、Ｋプレーンの全画素についての処理が完了したか否かが判定される。未処理の画素があればＳ６０１に戻って、次の画素を注目画素として処理が続行される。一方、全画素の処理が完了していれば、本処理を終える。以上が、本実施形態の手法による量子化処理の内容である。
【００５２】
（変形例）
本実施形態では、ＣＭＹＫ各色について、大中小とサイズが３段階に分類された実ドットに空白ドットを足した４種類のドットによって、１つのノズルで４段階の濃度レベルを表現可能な構成を前提として説明を行った。しかしながら、本実施形態は、同一色相で濃度の異なる複数のインク（例えば、通常インクと淡インク）を用い、２種類のインクドット（濃ドットと淡ドット）と空白ドットとを組み合わせて階調表現を行う画像形成装置にも適用可能である。この場合、濃淡の２段階に分類された実ドットに空白ドットを加えた３種類のドットを対象として上述した処理を行い、濃淡＋ゼロの３種類のドットのドット生成量データと優先順情報に基づき、ドット配置を行なうことになる。この際は、「実ドット生成量決定部」において、階調値と濃淡２種類の実ドットのドット生成量とを対応付けた分解テーブルを用いて、濃淡ドットのドット生成量データを生成するように構成する。そして、インク色に応じた各画像プレーンについての空白ドットの生成量を示すデータを、前述の式（１）〜（４）に準じて求めればよい。この場合、例えばシアンについて、濃ドットのドット生成量をＣ_deep、淡ドットのドット生成量をＣ_lightとすると、空白ドットのドット生成量Ｃ_zeroは、以下の式（１）’で表される。
Ｃ_zero＝２５５−（Ｃ_deep＋Ｃ_light）  ・・・式（１）’
【００５３】
本実施形態では、インクが吐出されない紙白部を空白ドットとみなして、単位面積当たりの空白ドットの生成量データを、実ドットの生成量データに基づいて生成し、量子化する。このような手法で量子化することによって、濃度レベルの異なる実ドットのドット配置データを得る際に、色材によって形成されない空白ドットの配置を考慮することができる。また、入力画像内の暗部階調に属する画素ついては空白ドットを最優先にドット配置を決定するようにしているので、シャドウ領域で目立つ紙白部を高分散にすることができる。
【００５４】
以上の本実施形態によるドットの配置について説明する。全画素が同じ画素値からなるベタ画像に対して本実施形態を適用した場合を考えると、画像プレーンが明部のベタ画像である場合、大ドットのドット配置の分散性が最も高い。一方、画像プレーンが暗部のベタ画像である場合、実ドットのドット配置よりも紙白部（空白ドット）の配置の分散性が最も高い。これにより、暗部において紙白部の粒状性が目立ち、画質が低下することを抑制できる。
【実施形態２】
【００５５】
実施形態１では、４種類（大中小＋ゼロ）のドットを対象にドット配置の際の優先順を画素単位で決定し、暗部階調に属する画素については空白ドットの配置を優先させることで、シャドウ領域で目立つ紙白部を高分散にするようにしていた。次に、シャドウ領域において、中小＋ゼロの３種類のドットのトータルでの配置が高分散となるように決定する態様を、実施形態２として説明する。
【００５６】
前述のとおり、シャドウ領域においては、視覚的に目立つ空白ドットの配置を高分散に配置した方が、視覚的に良好な画像が得られる。しかしながら、シャドウ領域では、紙白部に対応する空白ドットだけでなく、画像濃度に比べて明るい実ドット（インク吐出量が相対的に少ないドット）も視覚的に目立ちやすい。また、インク吐出量の少ないドットは、紙面上のドット径が小さく、着弾位置ズレなどによって紙白部として露出する可能性が高い。そこで、空白ドットだけでなく、ドット径が比較的小さい実ドットについても高分散となるように、中小＋ゼロのドットのトータルで配置を決定する手法を説明する。なお、実施形態１と共通する画像形成装置の基本構成や分解処理部についてはその説明を省略し、以下では差異点である量子化処理部の内容を中心に説明を行うものとする。
【００５７】
本実施形態の量子化処理部１１５の内部構成は実施形態１のそれと基本的に同じである。すなわち、優先順決定部２０４、ドット配置決定部２０５及びデータ出力部２０６で構成される。ただし、本実施形態の優先順決定部２０４は、注目画素単位で優先順を決定するのではなく、ＣＭＹＫの画像プレーン単位で優先順を決定する点で実施形態１とは異なる。また、本実施形態のドット配置決定部２０５は、インクが吐出される各ドット種にそれぞれ対応するｎ個の誤差ラインバッファを備える点で、実施形態１とは異なる。
【００５８】
図９は、本実施形態に係る、量子化処理の流れを示すフローチャートである。本実施形態における量子化処理もＣＭＹＫの各色で同一のため、以下、ブラック（Ｋ）を代表例として説明するものとする。なお、以下の説明において記号「Ｓ」はステップを表す。
【００５９】
まず、Ｓ９０１において、優先順決定部２０４が、Ｋプレーン全体についての、分解処理部１１４で生成された空白ドットと大中小の各ドットのドット生成量データに対する優先順位（Ｐ１、Ｐ２、Ｐ３、Ｐ４）を決定する。本実施形態では、シャドウ領域における粒状性を向上を重視し、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeと決定されたものとする。
【００６０】
次に、Ｓ９０２〜９０４において、優先順位が上位３つのドット生成量データの合計値を用いて、注目画素に対しての量子化処理を行い、Ｐ１、Ｐ２、Ｐ３のトータルでのドット配置が決定される。
【００６１】
Ｓ９０２では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）の合計値（以下、「Ｐ１２３」と表記）が算出される。合計値Ｐ１２３は、以下の式（１９）で表される。
Ｐ１２３＝Ｐ１（ｘ，ｙ）＋Ｐ２（ｘ，ｙ）＋Ｐ３（ｘ，ｙ）  ・・・式（１９）
【００６２】
Ｓ９０３では、注目画素位置（ｘ，ｙ）に対応するドット生成量データの合計値Ｐ１２３に対し、その対応する誤差Ｅ_Ｐ１２３（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後の合計値データＰ１２３’は、以下の式（２０）で表される。
Ｐ１２３’＝Ｐ１２３＋Ｅ_Ｐ１２３（ｘ）  ・・・式（２０）
【００６３】
Ｓ９０４では、Ｐ１２３’と閾値Ｔｈとの比較による量子化がなされる。Ｐ１２３’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ１２３’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ１２３’に対する量子化結果をＯ_Ｐ１２３で表すこととする。こうして、Ｐ１２３に対応する３種類のドット（ここではゼロ、小、中の各ドット）のトータルで高分散になるようにしたドット配置が決定されることになる。そして、Ｐ１、Ｐ２、Ｐ３の高分散配置の余りに対して、Ｐ４に対応するドット（ここでは大ドット）のドット配置が決定されることになる。
【００６４】
そして、Ｓ９０５では、Ｐ１２３’の量子化結果（Ｏ_Ｐ１２３）がオンであるか、オフであるかが判定される。Ｏ_Ｐ１２３がオン（＝２５５）の場合は、Ｓ９０６に進む。一方、Ｏ_Ｐ１２３がオフ（＝０）の場合は、Ｓ９１６に進む。
【００６５】
次に、Ｓ９０６〜Ｓ９０８において、優先順位が上位２つのドット生成量データの合計値を用いて、注目画素に対しての量子化処理を行い、Ｐ１、Ｐ２のトータルでのドット配置が決定される。
【００６６】
Ｓ９０６では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）の合計値（以下、「Ｐ１２」と表記）が算出される。合計値Ｐ１２は、以下の式（２１）で表される。
Ｐ１２＝Ｐ１（ｘ，ｙ）＋Ｐ２（ｘ，ｙ）    ・・・式（２１）
【００６７】
Ｓ９０７では、注目画素位置（ｘ，ｙ）に対応するドット生成量データの合計値Ｐ１２に対し、その対応する誤差Ｅ_Ｐ１２（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後の合計値データＰ１２’は、以下の式（２２）で表される。
Ｐ１２’＝Ｐ１２＋Ｅ_Ｐ１２（ｘ）  ・・・式（２２）
【００６８】
Ｓ９０８では、Ｐ１２’と閾値Ｔｈとの比較による量子化がなされる。Ｐ１２’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ１２’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ１２’に対する量子化結果をＯ_Ｐ１２で表すこととする。こうして、Ｐ１２に対応する２種類のドット（ここではゼロドットと小ドット）のトータルで高分散になるようにしたドット配置が決定されることになる。そして、Ｐ１、Ｐ２の高分散配置の余りに対して、Ｐ３に対応するドット（ここでは中ドット）のドット配置が決定されることになる。
【００６９】
そして、Ｓ９０９では、Ｐ１２’の量子化結果（Ｏ_Ｐ１２）がオンであるか、オフであるかが判定される。Ｏ_Ｐ１２がオン（＝２５５）の場合は、Ｓ９１０に進む。一方、Ｏ_Ｐ１２がオフ（＝０）の場合は、Ｓ９１５に進む。次に、Ｓ９１０及びＳ９１１において、優先順位が最上位のドット生成量データＰ１を用いて、注目画素に対しての量子化処理を行い、Ｐ１のドット配置が決定される。
【００７０】
Ｓ９１０では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ１（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のデータＰ１’は、以下の式（２３）で表される。
Ｐ１’＝Ｐ１（ｘ，ｙ）＋Ｅ_Ｐ１（ｘ）    ・・・式（２３）
【００７１】
Ｓ９１１では、Ｐ１’と閾値Ｔｈとの比較による量子化がなされる。Ｐ１’が閾値Ｔｈよりも大きい場合は量子化結果はオン（＝２５５）であり、Ｐ１’が閾値Ｔｈ以下の場合は量子化結果はオフ（＝０）である。ここで、Ｐ１’に対する量子化結果をＯ_Ｐ１で表すこととする。
【００７２】
そして、Ｓ９１２では、Ｐ１’の量子化結果（Ｏ_Ｐ１）がオンであるか、オフであるかが判定される。Ｏ_Ｐ１がオン（＝２５５）の場合は、Ｓ９１３に進む。一方、Ｏ_Ｐ１がオフ（＝０）の場合は、Ｓ９１４に進む。
【００７３】
続くＳ９１３〜Ｓ９１６では、注目画素位置（ｘ，ｙ）におけるＰ１、Ｐ２、Ｐ３、Ｐ４の量子化結果をＯＮにする処理（ここでは、量子化値として２５５を設定）がなされる。すなわち、Ｓ９１３ではＯ_Ｐ１（ｘ，ｙ）がオンに設定され、Ｓ９１４ではＯ_Ｐ２（ｘ，ｙ）がオンに設定され、Ｓ９１５ではＯ_Ｐ３（ｘ，ｙ）がオンに設定され、Ｓ９１６ではＯ_Ｐ４（ｘ，ｙ）がオンに設定される。
【００７４】
次に、Ｓ９１７及びＳ９１８において、上記量子化処理によって生じる量子化誤差が、所定の誤差拡散係数に従って拡散されて、誤差ラインバッファに格納される。
【００７５】
Ｓ９１７では、量子化処理を施す前の画素値Ｐ１２３’、Ｐ１２’、Ｐ１’と各量子化結果Ｏ_Ｐ１２３、Ｏ_Ｐ１２、Ｏ_Ｐ１との差分が算出される。ここで、算出される差分をＥＲＲ１２３、ＥＲＲ１２、ＥＲＲ１とすると、それぞれ以下の式（２４）〜式（２６）で表される。
ＥＲＲ１２３  ＝  Ｐ１２３’−  Ｏ_Ｐ１２３（ｘ，ｙ）    ・・・式（２４）
ＥＲＲ１２  ＝  Ｐ１２’−  Ｏ_Ｐ１２（ｘ，ｙ）  ・・・式（２５）
ＥＲＲ１  ＝  Ｐ１’−  Ｏ_Ｐ１（ｘ，ｙ）  ・・・式（２６）
【００７６】
Ｓ９１８では、算出された誤差が所定の誤差拡散係数（前述の図７を参照）に従って、注目画素の周囲の画素に拡散される。図１０（ａ）〜（ｃ）に本実施形態の誤差ラインバッファの一例を示す。図１０（ａ）は、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）の合計値Ｐ１２３に対応する誤差ラインバッファである。そして、図１０（ｂ）はＰ１（ｘ，ｙ）とＰ２（ｘ，ｙ）の合計値Ｐ１２に対応する誤差ラインバッファ、同（ｃ）はＰ１（ｘ，ｙ）に対応する誤差ラインバッファである。各誤差ラインバッファは、入力画像における横画素数Ｗ＋１個の記憶領域（Ｅ_Ｐ１２３（ｘ）、Ｅ_Ｐ１２（ｘ）、Ｅ_Ｐ１（ｘ）。ｘ＝１〜Ｗ＋１））を有する。そして各記憶領域に量子化誤差が格納されていく。具体的には、Ｐ１２３、Ｐ１２、Ｐ１における誤差ＥＲＲ１２３、ＥＲＲ１２、ＥＲＲ１が、それぞれ対応する誤差ラインバッファに以下のとおり格納される。
Ｅ_Ｐ１２３(ｘ＋１)＝Ｅ_Ｐ１２３(ｘ＋１)＋ＥＲＲ１２３×７／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１２３(ｘ−１)＝Ｅ_Ｐ１２３(ｘ−１)＋ＥＲＲ１２３×３／１６  (ｘ＞１)
Ｅ_Ｐ１２３(ｘ)＝Ｅ_Ｐ１２３(Ｗ＋１)＋ＥＲＲ１２３×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｐ１２３(ｘ)＝Ｅ_Ｐ１２３(Ｗ＋１)＋ＥＲＲ１２３×８／１６  (ｘ＝１)
Ｅ_Ｐ１２３(ｘ)＝Ｅ_Ｐ１２３(Ｗ＋１)＋ＥＲＲ１２３×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｐ１２３(Ｗ＋１)＝ＥＲＲ１２３×１／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１２３(Ｗ＋１)＝０  (ｘ＝Ｗ)
Ｅ_Ｐ１２(ｘ＋１)＝Ｅ_Ｐ１２(ｘ＋１)＋ＥＲＲ１２×７／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１２(ｘ−１)＝Ｅ_Ｐ１２(ｘ−１)＋ＥＲＲ１２×３／１６  (ｘ＞１)
Ｅ_Ｐ１２(ｘ)＝Ｅ_Ｐ１２(Ｗ＋１)＋ＥＲＲ１２×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｐ１２(ｘ)＝Ｅ_Ｐ１２(Ｗ＋１)＋ＥＲＲ１２×８／１６  (ｘ＝１)
Ｅ_Ｐ１２(ｘ)＝Ｅ_Ｐ１２(Ｗ＋１)＋ＥＲＲ１２×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｐ１２(Ｗ＋１)＝ＥＲＲ１２×１／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１２(Ｗ＋１)＝０  (ｘ＝Ｗ)
Ｅ_Ｐ１(ｘ＋１)＝Ｅ_Ｐ１(ｘ＋１)＋ＥＲＲ１×７／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１(ｘ−１)＝Ｅ_Ｐ１(ｘ−１)＋ＥＲＲ１×３／１６  (ｘ＞１)
Ｅ_Ｐ１(ｘ)＝Ｅ_Ｐ１(Ｗ＋１)＋ＥＲＲ１×５／１６  (１＜ｘ＜Ｗ)
Ｅ_Ｐ１(ｘ)＝Ｅ_Ｐ１(Ｗ＋１)＋ＥＲＲ１×８／１６  (ｘ＝１)
Ｅ_Ｐ１(ｘ)＝Ｅ_Ｐ１(Ｗ＋１)＋ＥＲＲ１×１３／１６  (ｘ＝Ｗ)
Ｅ_Ｐ１(Ｗ＋１)＝ＥＲＲ１×１／１６  (ｘ＜Ｗ)
Ｅ_Ｐ１(Ｗ＋１)＝０  (ｘ＝Ｗ)
【００７７】
続くＳ９１９において、データ出力部２０６が、優先順決定部２０４から受け取った優先順情報に基づいて、ラインヘッドが形成可能な大中小の実ドットに対応したドット配置データを出力する。いま、優先順情報では、Ｐ１＝Ｋ_zero、Ｐ２＝Ｋ_small、Ｐ３＝Ｋ_medium、Ｐ４＝Ｋ_largeとなっている。この場合には、注目画素位置（ｘ，ｙ）についてのインク吐出用のドット配置データとして以下の３つのデータが画像形成部１２０へ出力されることになる。
【００７８】
大ドット：Ｏ_Ｐ４（ｘ，ｙ）
中ドット：Ｏ_Ｐ３（ｘ，ｙ）
小ドット：Ｏ_Ｐ２（ｘ，ｙ）
【００７９】
そして、Ｓ９２０では、Ｋプレーンの全画素についての処理が完了したか否かが判定される。未処理の画素があればＳ９０２に戻って、次の画素を注目画素として処理が続行される。一方、全画素の処理が完了していれば、本処理を終える。
【００８０】
以上が、本実施形態の手法による量子化処理の内容である。図１１（ａ）及び（ｂ）は本実施形態の手法による量子化処理の効果を説明する図である。図１１（ａ）は、暗部階調において中小＋ゼロの３種類のドットのトータルで高分散配置となるようにドット配置を決定した一例、同（ｂ）は比較のために、大中小の３種類のドットのトータルで高分散配置となるようにドット配置を決定した一例である。両者を比較すると、図１１（ｂ）のドットパターンの方は、サイズの小さい（濃度レベルの低い）ドットにおける分散性が低いことが分かる。
【００８１】
なお、本実施形態のようにシャドウ領域での粒状性向上を重視して、前述の図４に示すようなドット分解テーブルを用いる場合、ハイライト領域の各画素においては大ドットは使用されず、中ドットと小ドットのみでインクドットの形成がなされることになる。しかしながら、例えば筋ムラ（バンディング）の抑制を重視したい場合、ハイライト領域の画素についても大ドットを混在させるようなドット分解テーブルが用いられることもある。この場合は、大中小の３種類の実ドットのトータルで高分散になるよう配置した方が、良好な画像を得ることができる。そのため、ユーザの望む画質が、粒状性重視なのか筋ムラ抑制重視なのかに応じて（使用するドット分解テーブルに応じて）、優先順の決定基準を適宜変更するのが好適である。たとえば、筋ムラの抑制を重視したい場合は、処理対象の画像プレーン毎に設定する優先順を、例えばＰ１＝Ｋ_large、Ｐ２＝Ｋ_medium、Ｐ３＝Ｋ_small、Ｐ４＝Ｋ_zeroのように決定すればよい。
【００８２】
本実施形態によれば、暗部階調において明るく目立つ画素の配置が高分散となり、粒状性の良好な画像を得ることができる。
【実施形態３】
【００８３】
実施形態１及び２では、紙白部に相当する空白ドットのドット生成量データを、ｎ種類の実ドットのドット生成量データに基づいて生成していた。次に、空白ドットの情報を含むドットサイズ分解テーブルを用いて、ｎ種類の実ドットのドット生成量データと空白ドットのドット生成量データとを同時に生成する態様を、実施形態３として説明する。なお、実施形態１及び２と共通する内容についてはその説明を省略し、以下では差異点を中心に説明を行うものとする。
【００８４】
図１２は、本実施形態に係る、分解処理部１１４’及び量子化処理部１１５の内部構成を示す機能ブロック図である。図１２に示すとおり、分解処理部１１４’は、色分解処理部２０１及びドット生成量決定部１２０１で構成される。量子化処理部１１５は、実施形態１と同様、優先順決定部２０４、ドット配置決定部２０５及びデータ出力部２０６で構成される。以下、図１３に示すフローチャートに沿って、本実施形態に係る、実ドットのドット生成量データと空白ドットのドット生成量データとを同時に生成する処理を説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【００８５】
Ｓ１３０１では、画像形成装置１００が外部の情報処理装置（不図示）等から受信した多値のＲＧＢ画像データが、分解処理部１１４’の色分解処理部２０１に入力される。続くＳ１３０２では、色分解処理部２０１が、予め用意した色分解テーブルを用いて、ＲＧＢ画像データに対して色分解処理を行ないＣＭＹＫ画像データに変換する。得られたＣＭＹＫ画像データは、ドット生成量決定部１２０１に送られる。
【００８６】
Ｓ１３０３では、ドット生成量決定部１２０１が、予め用意したドット分解テーブルを用いて、ＣＭＹＫ画像データに対しドットサイズ分解処理を行う。本実施形態では、ＣＭＹＫの各画像プレーンを、それぞれ４種類（大中小＋ゼロ）のドットプレーンへ分解する。図１４は、本実施形態で使用するドット分解テーブルの一例を示す図である。前述の図４のドット分解テーブルと異なり、空白ドットについても階調毎のドット生成量が記されている。このような空白ドットについての階調毎の生成量を示す情報をも含むドット分解テーブルを用いることによって、ＣＭＹＫの各画像プレーンは、それぞれ４種類（大中小＋ゼロ）のドットプレーンへ同時に分解される。そして、当該４種類のドット生成量データを使用して、次のＳ１３０４において、実施形態１及び２で説明した量子化処理がなされ、ＣＭＹＫの各画像プレーンにおけるドット配置が決定されることになる。
【００８７】
（変形例）
本実施形態では、「色分解処理」と「実ドット＋空白ドットのドット生成量データ決定処理」とを別々に行なっているが、さらにこれらの処理を同時に行ってもよい。同時に行う場合は、例えば各ＲＧＢ値に対応する、ＣＭＹＫそれぞれについての、ｎ＋１種類のドット毎の値が格納された分解テーブルを保持しておく。そして、当該分解テーブルを参照して、入力ＲＧＢ画像データを、以下に示すようなＣＭＹＫ毎の４種類のドットプレーンへ分解する。
・Ｃ_large，Ｃ_medium，Ｃ_small，Ｃ_zero
・Ｍ_large，Ｍ_medium，Ｍ_small，Ｍ_zero
・Ｙ_large，Ｙ_medium，Ｙ_small，Ｙ_zero
・Ｋ_large，Ｋ_medium，Ｋ_small，Ｋ_zero
【００８８】
また、ドット生成量決定部１２０１と優先順決定部２０４とを統合した処理部を設け、色分解後のＣＭＹＫ画像データから、優先順位が付されたドットサイズ毎のドット生成量データを直接生成するように構成してもよい。実施形態２にこの考え方を適用する場合は、例えば以下のようになる。まず、ユーザが望む画質（粒状性重視又は筋ムラ抑制重視）に応じたドット分解テーブルを用意する。さらに、粒状性重視のときには空白ドットを最優先とし、筋ムラ抑制重視のときには大ドットを最優先とするような優先順位の基準情報を別途用意しておく。そして、ユーザがどちらを重視するかによって、使用するドット分解テーブル及び優先順位基準情報を切り替え、４つ（Ｐ１〜Ｐ４）のドット生成量データを出力する。例えば粒状性重視の場合、各ドットのドット生成量を記述した分解テーブルと空白ドットを最優先とする優先順位基準情報に従って、Ｐ１＝ゼロドット用、Ｐ２＝小ドット用、Ｐ３＝中ドット用、Ｐ４＝大ドット用の各ドット生成量データが出力されることになる。なお、筋ムラ重視の場合には、大中小の実ドットのドット生成量が決まれば、残りの空白ドットについては自ずとその生成量は決まるので、この場合はＰ１〜Ｐ３までの３つのドット生成量データの出力で済ませてもよい。
【００８９】
以上のとおり本実施形態では、図１４に示すような、空白ドットの情報をも含めたドットサイズ毎の分解テーブルを用いることで、ｎ＋１種類の各ドットについてのドット生成量データを同時に生成する。本実施形態の場合、空白ドット生成量決定部が不要となるため、分解処理部の構成をより簡易なものにできる。また、空白ドットの生成量を階調毎に細かく指定することができるため、紙白部の画素をより直接的に制御することが可能となる。
【実施形態４】
【００９０】
実施形態１〜３では、大中小＋ゼロの各ドットに対応するドット生成量データを用いて、優先順位の高いドットから優先的にドット配置を決定していた。つまり、ｎ＋１種類の各ドットがそれぞれ完全排他を前提としてドット配置が決定されていた。次に、ｎ＋１種類の各ドットの配置を決定する際に完全排他を前提とせず、種類の異なるドット同士の重複を許容する態様を実施形態４として説明する。なお、以下では実施形態１をベースとして、差異点を中心に説明を行うものとする。
【００９１】
図１５は、本実施形態に係る、ドット配置決定部２０５における、種類の異なるドット同士の重複を許容する量子化処理の流れを示すフローチャートである。実施形態１の図６のフローチャートとの違いは、Ｓ６０４、Ｓ６０７、Ｓ６１０に相当するステップが存在しない点にある。以下、図１５のフローに沿って説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【００９２】
まず、Ｓ６０１と同様、処理対象の画像プレーンの注目画素に対し、分解処理部１１４で生成された４種類（大中小＋ゼロ）のドット生成量データについて優先順位（Ｐ１、Ｐ２、Ｐ３、Ｐ４）が決定される（Ｓ１５０１）。次に、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ１（ｘ）が加算され、誤差加算後のドット生成量データＰ１’が取得される（Ｓ１５０２）。そして、Ｐ１’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１５０３）。以下、同様に、Ｐ２（ｘ，ｙ）、Ｐ３（ｘ，ｙ）、Ｐ４（ｘ，ｙ）について処理される。すなわち、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ２（ｘ）が加算され、誤差加算後のドット生成量データＰ２’が取得される（Ｓ１５０４）。そして、Ｐ２’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１５０５）。次に、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ３（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ３（ｘ）が加算され、誤差加算後のドット生成量データＰ３’が取得される（Ｓ１５０６）。そして、Ｐ３’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１５０７）。さらに、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ４（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ４（ｘ）が加算され、誤差加算後のドット生成量データＰ４’が取得される（Ｓ１５０８）。そして、Ｐ４’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１５０９）。
【００９３】
続いて、量子化処理を施す前の値Ｐ１’、Ｐ２’、Ｐ３’、Ｐ４’と各量子化結果との差分である誤差が算出され（Ｓ１５１０）、算出された誤差が所定の誤差拡散係数に従って、注目画素の周囲の画素に拡散される（Ｓ１５１１）。
【００９４】
そして、優先順情報に基づいて、大中小の各ドットに対応したドット配置データが出力される（Ｓ１５１２）。前述のとおり、ラインヘッドの場合には、１つのノズルから同一位置に対し１種類のドットに対応する量のインクしか吐出できない。そのため、データ出力部２０６は、大中小＋ゼロの各ドットの中から、優先順情報に基づき対象ドットを１つ決定してそのドット配置データの出力を行う。すなわち、優先順情報に従って１つのドット種を決定して、そのドット配置データを出力する。例えば、暗部階調に属する画素については、Ｐ１＝ゼロドット用なのでこれを除き、Ｐ２＝小ドット用、Ｐ３＝中ドット用、Ｐ４＝大ドット用の優先順で実ドットのドット配置データを出力する。たとえば、Ｐ２に対応するドット配置データを出力する場合は、Ｐ１のドット配置の余りの位置からＰ２のドット配置を出力（Ｐ２のドットのうちＰ１のドットと重複していない位置のものだけを出力）する。また、同様に、Ｐ３に対応するドット配置データを出力する場合は、Ｐ１とＰ２のドット配置の余りの位置からＰ３のドット配置を出力（Ｐ３のドットのうちＰ１とＰ２のドットと重複していない位置のものだけを出力）する。さらに、Ｐ４に対応するドット配置データを出力する場合は、Ｐ１〜Ｐ３のドット配置の余りの位置からＰ４のドット配置を出力（Ｐ４のドットのうちＰ１〜Ｐ３のドットと重複していない位置のものだけを出力）する。この際、他のドット配置との間で重複が生じた個所においては予定されたすべてのドットが形成されないことから、最終出力結果において目標濃度に達しないことになる。そこで、本実施形態の場合は、そのような可能性を考慮してドット分解テーブルを設計し、各ドットのドット生成量を決定することが望ましい。
【００９５】
上述した処理が全画素について繰り返される（Ｓ１５１３）。以上が、本実施形態の手法による量子化処理の内容である。
【００９６】
本実施形態によれば、種類の異なるドット同士がそれぞれ完全排他を前提とせずにドット配置を決定する場合にも、先に述べた実施形態における効果を得ることができる。
【実施形態５】
【００９７】
実施形態１〜４では、インク吐出量（＝ドットサイズ）の異なる複数種類のドットの配置を決定する際に、紙白部に相当する空白ドットの配置を優先的に決定する態様を説明した。次に、ＣＭＹＫ各色の実ドットに対して、紙白部に相当する空白ドットの配置を優先的に決定する態様を、実施形態５として説明する。
【００９８】
なお、以下では、色毎のドット配置の決定に実施形態１の手法を適用した場合を例に説明を行うものとするが、他の実施形態の手法を適用して色毎のドット配置を決定する構成でもよい。
【００９９】
ＣＭＹＫ各色の実ドットの配置決定に実施形態１を適用する場合、分解処理部１１４及び量子化処理部１１５の構成は、前述の図２に示す構成でよい。すなわち、分解処理部１１４は、色分解処理部２０１、実ドット生成量決定部２０２及び空白ドット生成量決定部２０３で構成される。また、量子化処理部１１５は、優先順決定部２０４、ドット配置決定部２０５及びデータ出力部２０６で構成される。以下、実施形態１で説明した図３のフローに沿って説明する。
【０１００】
印刷対象のカラー（ＲＧＢ）画像データが入力されると（Ｓ３０１）、色分解処理部２０１がＲＧＢ画像データに対して色分解処理を行ない、各インク色に対応するＣＭＹＫ画像プレーンに変換する（Ｓ３０２）。そして、実ドット生成量決定部２０２が、ＣＭＹＫ画像データに対しドットサイズ分解処理を行い、大中小のドットサイズ毎のドット生成量データを生成する（Ｓ３０３）。これにより、以下の１２個のドットプレーンが得られる。
・Ｃプレーン  →  Ｃ_large、Ｃ_medium、Ｃ_small
・Ｍプレーン  →  Ｍ_large、Ｍ_medium、Ｍ_small
・Ｙプレーン  →  Ｙ_large、Ｙ_medium、Ｙ_small
・Ｋプレーン  →  Ｋ_large、Ｋ_medium、Ｋ_small
【０１０１】
こうして生成された計１２個のドットプレーンを用いて、空白ドット生成量決定部２０３は、どの色の実ドットも形成されない紙白部に相当する空白ドットに対応したドット生成量データＤ_zeroを生成する（Ｓ３０４）。つまり、先の実施形態では、ＣＭＹＫの色毎にゼロドット生成量データ（Ｃ_zero、Ｍ_zero、Ｙ_zero、Ｋ_zero）を生成していたのに対して、本実施形態では色間共通のゼロドット生成量データＤ_zeroが生成される。この場合において、ＣＭＹＫ各色における大中小の累計ドット生成量データＣ_all、Ｍ_all、Ｙ_all、Ｋ_allは、それぞれ以下の式（２７）〜式（３０）で表される。
Ｃ_all＝Ｃ_large＋Ｃ_medium＋Ｃ_small    ・・・式（２７）
Ｍ_all＝Ｍ_large＋Ｍ_medium＋Ｍ_small    ・・・式（２８）
Ｙ_all＝Ｙ_large＋Ｙ_medium＋Ｙ_small    ・・・式（２９）
Ｋ_all＝Ｋ_large＋Ｋ_medium＋Ｋ_small    ・・・式（３０）
【０１０２】
そして、色間共通のゼロドット生成量データＤ_zeroは、以下の式（３１）で表される。
Ｄ_zero＝２５５−Ｋ_all−Ｃ_all−Ｍ_all−Ｙ_all    ・・・式（３１）
【０１０３】
なお、Ｄ_zeroが０より小さくなる場合は、Ｄ_zero＝０にクリッピングする。こうして、量子化処理部１１５には、ＣＭＹＫ各色における大中小の累計ドット生成量データと、色間共通の空白ドットのドット生成量データが入力される。
【０１０４】
そして、量子化処理部１１５は、すべての実ドットを形成した後のＣＭＹＫ各プレーンを重ね合わせた最終出力結果において、紙白部に相当する空白ドットの配置を優先させる量子化処理を行う（Ｓ３０５）。図１６は、本実施形態のドット配置決定部２０５における、色毎の累計ドット配置を制約として各色における各ドットの配置を決定する量子化処理の流れを示すフローチャートである。以下、図１６のフローに沿って説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【０１０５】
まず、Ｓ１６０１では、優先順決定部２０４が、注目画素における、ＣＭＹＫ各色の累計ドット生成量データ及び色間共通のゼロドット生成量データに対し、優先順を決定する。ここで、優先順が高い順にＰｘ（ｘ＝１〜５）で表すものとする。また、Ｐｘに属する大ドットのドット生成量データをＰｘ_large、中ドットのドット生成量データをＰｘ_medium、小ドットのドット生成量データをＰｘ_smallで表すものとする。例えば、暗部階調に属する注目画素の場合、Ｐ１＝Ｄ_zero、Ｐ２＝Ｋ_all、Ｐ３＝Ｍ_all、Ｐ４＝Ｃ_all、Ｐ５＝Ｙ_allと決定する。これにより、シャドウ領域において目立つドットのドット配置を優先して高分散にすることができる。
【０１０６】
そして、Ｓ１６０２〜Ｓ１６１８において、ドット配置決定部２０５が、決定された優先順に従って、累計ドット生成量データ（Ｐｘ）を２値のドット配置データ（Ｏ_Ｐｘ）に変換する。具体的には以下のとおりである。
【０１０７】
まず、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ１（ｘ）が誤差ラインバッファから読み出されて加算される（Ｓ１６０１）。そして、Ｐ１’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１６０３）。こうして、暗部階調においては、Ｐ１に対応する空白ドットの配置が各色の実ドットに優先して決定されることになる。
【０１０８】
次に、優先順位が２番目に高いＰ２のドット生成量データ（ここではＫ_all）に対して量子化処理がなされ、ドット配置が決定される。まず、より優先順が高いドット（ここではゼロドット）の配置決定結果に基づく補正量Ｈが算出され、得られた補正量Ｈが、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対して反映される（Ｓ１６０４）。そして、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ２（ｘ）が誤差ラインバッファから読み出されて加算される（Ｓ１６０５）。そして、Ｐ２’’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１６０６）。
【０１０９】
次に、優先順位が３番目に高いＰ３のドット生成量データ（ここではＭ_all）に対して量子化処理がなされ、ドット配置が決定される。まず、より優先順が高いドット（ここではゼロとＫのドット）の配置決定結果に基づく補正量Ｈが算出され、得られた補正量Ｈが、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ２（ｘ，ｙ）に対して反映される（Ｓ１６０７）。そして、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ３（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ３（ｘ）が誤差ラインバッファから読み出されて加算される（Ｓ１６０８）。そして、Ｐ３’’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１６０９）。
【０１１０】
次に、優先順位が４番目に高いＰ４のドット生成量データ（ここではＣ_all）に対して量子化処理がなされ、ドット配置が決定される。まず、より優先順が高いドット（ここではゼロ、Ｋ、Ｍのドット）の配置決定結果に基づく補正量Ｈが算出され、得られた補正量Ｈが、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ３（ｘ，ｙ）に対して反映される（Ｓ１６１０）。そして、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ４（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ４（ｘ）が誤差ラインバッファから読み出されて加算される（Ｓ１６１１）。そして、Ｐ４’’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１６１２）。
【０１１１】
次に、優先順位が５番目に高いＰ５のドット生成量データ（ここではＹ_all）に対して量子化処理がなされ、ドット配置が決定される。まず、より優先順が高いドット（ここではゼロ、Ｋ、Ｍ、Ｃのドット）の配置決定結果に基づく補正量Ｈが算出され、得られた補正量Ｈが、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ４（ｘ，ｙ）に対して反映される（Ｓ１６１３）。そして、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ５（ｘ，ｙ）に対し、その対応する誤差Ｅ_Ｐ５（ｘ）が誤差ラインバッファから読み出されて加算される（Ｓ１６１４）。そして、Ｐ５’’と閾値Ｔｈとの比較による量子化がなされる（Ｓ１６１５）。
【０１１２】
続いて、量子化処理を施す前の値Ｐ１’’、Ｐ２’’、Ｐ３’’、Ｐ４’’、Ｐ５’’と各量子化結果Ｏ_Ｐ１、Ｏ_Ｐ２、Ｏ_Ｐ３、Ｏ_Ｐ４、Ｏ_Ｐ５との差分が算出される（Ｓ１６１６）。そして、算出された誤差が前述の誤差拡散係数に従って、注目画素の周囲の画素に拡散される（Ｓ１６１７）。具体的には、Ｐ１〜Ｐ５における誤差ＥＲＲ_Ｐ１、ＥＲＲ_Ｐ２、ＥＲＲ_Ｐ３、ＥＲＲ_Ｐ４、ＥＲＲ_Ｐ５、が、それぞれ対応する誤差ラインバッファに格納される。
【０１１３】
そして、入力画像の全画素についての処理が完了したか否かが判定される（Ｓ１６１８）。未処理の画素があれば、次の画素を注目画素として処理が続行される。一方、全画素の処理が完了していれば、Ｓ１６１９へ進む。
【０１１４】
次に、ドット配置データ（Ｏ_Ｐｘ（ｘ＝１〜５））と、夫々の大中小のドット生成量データ（Ｐｘ_large，Ｐｘ_medium，Ｐｘ_small（ｘ＝１〜５））に基づいて、ＣＭＹＫ毎の大中小のドット配置データが生成される（Ｓ１６１９）。決定済みのドット配置データ（Ｏ_Ｐｘ（ｘ＝１〜５））を制約とした、色毎の大中小のドット配置の決定には、例えば特許文献２に開示された従来技術を適宜用いればよい。なお、対象のドット配置データＯ_Ｐｘが、大中小のドット生成量データを有さない空白ドットのドット配置データである場合は、本処理の適用外としてスキップされる。
【０１１５】
そして、優先順情報に基づいて、ラインヘッドによって形成可能な大中小の各ドットに対応したドット配置データが出力される（Ｓ１６２０）。優先順情報が、Ｐ１＝Ｄ_zero、Ｐ２＝Ｋ_all、Ｐ３＝Ｍ_all、Ｐ４＝Ｃ_all、Ｐ５＝Ｙ_allの場合、ブラックから順番に大中小のドット配置データが出力されることになる。
【０１１６】
以上が、本実施形態の手法に係る、量子化処理の内容である。本実施形態によれば、色間のドット配置の分散性が高い、粒状性の良好な画像を得ることができる。
【０１１７】
（変形例）
実施形態１〜５では、優先順位を示す優先順情報に基づいて量子化処理を実行した。しかしながら必ずしもドット生成量データに基づいて優先順情報を生成しなくても、同様の処理を実現することはできる。例えば、ＣＭＹＫ各色に対応する画像プレーンについて、各画素の階調値を所定の閾値と比較する。所定の閾値未満である場合は大ドット、中ドット、小ドット、空白ドットの順に量子化する量子化処理部が注目画素における各ドットの生成量を量子化する。階調値が所定の閾値以上である場合は、空白ドット、小ドット、中ドット、大ドットの順に量子化する量子化処理部が注目画素における各ドットの生成量を量子化する。このような分岐処理にすることで、優先順情報の処理を必要としない構成により実現することができる。
【０１１８】
また実施形態１〜５では、全画素について、紙白部に対応する空白ドットの生成量データを算出する処理を実行した。しかしながら、暗部階調の場合に、空白ドットを優先的に分散性が高くなるように配置することが望ましい。従って、階調が明部である場合は、従来の実ドットに対応するドット生成量データのみを用いて各ドットの配置を決定し、階調が暗部である場合に、上述の実施形態を適用してもよい。あるいは、階調が明部である画素は、空白ドットの生成量を示すデータを“０”とすることでも、明部における処理を簡略化することができる。
【０１１９】
また実施形態１〜５では、暗部階調の場合、紙白部に対応する空白ドットを他の実ドットよりも優先的に配置した。しかしながら例えば記録媒体が白ではなく、グレーなど色のある記録媒体である場合、暗部階調において目立ちやすいドットは順に、小ドット、空白ドット、中ドット、大ドットであることもある。このような場合は、暗部の階調において、優先順位を小ドット、空白ドット、中ドット、大ドットとすればよい。
【実施形態６】
【０１２０】
次に、空白ドットの配置を量子化処理により優先して決定し、実際にインクを吐出する実ドットをその余りの位置に配置する態様を実施形態６として説明する。なお、本実施形態では、各インク色の画像プレーンにおいて単一ドットサイズで画像形成を行う場合を例に説明を行うものとする。
図１７は、本実施形態に係る、分解処理部１１４及び量子化処理部１１５の内部構成を示す機能ブロック図である。図１７に示すとおり、分解処理部１１４は、実ドット生成量取得部１７０１及び空白ドット生成量決定部１７０２を備える。実ドット生成量取得部１７０１は、画像形成部１２０で吐出されるインク色と同じ色種、色数並びに解像度を持った階調画像を取得する。空白ドット生成量決定部１７０２は、実ドットが形成されない紙白部に対応する空白ドットの生成量を決定する。量子化処理部１１５は、ドット配置決定部１７０３及びデータ出力部１７０４を備える。ドット配置決定部１７０３は、空白ドット生成量データに対して誤差拡散法による量子化処理を行い、空白ドットの配置を決定する。データ出力部１７０４は、ドット配置決定部１７０３から受け取った空白ドット配置データに基づいて、ラインヘッドによって形成可能な実ドットのドット配置データを出力する。
【０１２１】
以下、図１８に示すフローチャートに沿って、図１７に示す各部の処理について詳しく説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【０１２２】
Ｓ１８０１において、実ドット生成量取得部１７０１は、実ドットのドット生成量データを不図示の前処理部から取得する。すなわち、実ドット生成量取得部１７０１の前段において、図示しない前処理部により、色変換や解像度変換などの必要な前処理が行われ、当該前処理後の画像データが取得されるものとする。この場合において、実ドットのドット生成量データは、画像形成部１２０で使用されるインク色と同じ色種、色数並びに解像度を持った画像データである。例えば、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、黒（Ｋ）の４色インクを用いて出力解像度１２００ｄｐｉを実現するインクジェット方式の場合であれば、ＣＭＹＫの各色それぞれ８ｂｉｔ（２５６階調）を持った多値の画像データが、実ドットのドット生成量データとして取得されることになる。なお、以降の処理はＣＭＹＫ各色で同一のため、以下、ブラック（Ｋ）を代表例として説明するものとする。
【０１２３】
Ｓ１８０２において、空白ドット生成量決定部１７０２は、Ｓ１８０１で取得した実ドットのドット生成量データに基づき、実ドットが形成されない紙白部に対応する空白ドットの生成量を決定する。具体的には、取得した実ドットのドット生成量データを画素単位で反転（２５５−実ドット生成量）することで、空白ドットのドット生成量データを得る。こうして得られた空白ドットのドット生成量データは、量子化処理部１１５に送られる。
【０１２４】
Ｓ１８０３において、ドット配置決定部１７０３は、空白ドットのドット生成量データに対して誤差拡散法による量子化処理を行い、空白ドットのドット配置を決定する。これにより、画素毎にドットのオン或いはオフが示された空白ドットのドット配置データが得られる。ここでの量子化処理の詳細については後述する。量子化処理によって得られた空白ドットのドット配置データは、データ出力部１７０４に送られる。
【０１２５】
Ｓ１８０４において、データ出力部１７０４は、ドット配置決定部１７０３から受け取った空白ドットのドット配置データに基づいて、ラインヘッドによって形成可能な実ドットのドット配置データを出力する。具体的には、空白ドットのドット配置データを画素単位で反転（オンをオフ、オフをオンに変更）することで、実ドットのドット配置データとする。
【０１２６】
以上が、本実施形態に係る、分解処理部１１４及び量子化処理部１１５における処理の概要である。
【０１２７】
（量子化処理の詳細）
続いて、Ｓ１８０３の量子化処理の詳細について、図１９のフローチャートに沿って説明する。ここでは、空白ドットのドット生成量データに対する量子化処理を誤差拡散法によって行う場合を例に説明を行う。この場合、誤差を拡散し累積するための、空白ドットに対応した誤差ラインバッファが用意される。この誤差ラインバッファは、処理開始前に初期値（＝０）或いはランダム値によって全て初期化される。
【０１２８】
Ｓ１９０１では、注目画素位置（ｘ，ｙ）に対応するドット生成量データＰ１（ｘ，ｙ）に対し、その対応する誤差Ｅ＿Ｐ１（ｘ）が誤差ラインバッファから読み出され、加算される。誤差加算後のドット生成量データＰ１’は、以下の式（３２）で表される。
Ｐ１’＝Ｐ１（ｘ，ｙ）＋Ｅ_Ｐ１（ｘ）    ・・・式（３２）
【０１２９】
そして、Ｓ１９０２では、Ｐ１’と閾値Ｔｈとの比較による量子化がなされる。Ｐ１’が閾値Ｔｈよりも大きい場合は量子化結果はオンであり、Ｐ１’が閾値Ｔｈ以下の場合は量子化結果はオフである。ここで、Ｐ１’に対する量子化結果をＯ＿Ｐ１で表すこととする。こうして、Ｐ１に対応する空白ドットの配置が実ドットに優先して決定されることになる。
【０１３０】
次に、Ｓ１９０３では、量子化処理を施す前の値Ｐ１’と量子化結果Ｏ＿Ｐ１との差分が量子化誤差として算出される。続く、Ｓ１９０４では、算出された量子化誤差（Ｐ１’−Ｏ_Ｐ１）が誤差拡散係数に従って注目画素の周囲の画素に拡散（誤差ラインバッファに格納）される。
【０１３１】
そして、Ｓ１９０５では、Ｋプレーンの全画素についての処理が完了したか否かが判定される。未処理の画素があればＳ１９０１に戻って、次の画素を注目画素として処理が続行される。一方、全画素の処理が完了していれば、本処理を終える。
【０１３２】
以上が、本実施形態の手法による量子化処理の内容である。
【０１３３】
（変形例）
本実施形態では、誤差拡散法を用いた量子化処理の場合を例に説明したが、ディザ法を用いた量子化処理でもよい。ディザ法による場合は、所定サイズのマトリクス内に異なる閾値を配置したディザマトリクスを予め用意し、このディザマトリクスを入力画像データ上にタイル状に順次展開し、入力画像データの階調値と対応する閾値との大小比較を行う。そして、階調値が閾値よりも大きければドットをオンにし、階調値が閾値よりも小さければドットをオフにする。ディザ法は、誤差拡散法と比較すると処理速度が速く、量子化誤差のフィードバックを必要としないので簡易な回路によって構成することができるという利点がある。
【０１３４】
ディザ法による場合の量子化処理について、図２０の（ａ）〜（ｃ）を参照して説明する。この場合において、図２０（ａ）に示す空白ドットのドット生成量データをＰ１とおき、Ｐ１における画素位置（ｘ，ｙ）にある階調値をＰ１（ｘ，ｙ）で表すこととする。
【０１３５】
図２０（ａ）のドット生成量データＰ１における注目する画素位置（ｘ，ｙ）に対して、空白ドットのドット生成量データの階調値Ｐ１（ｘ，ｙ）と、図２０（ｂ）に示すディザマトリクスＭ（ｘ，ｙ）における対応する閾値との大小関係を比較する。そして、階調値が閾値より大きければ空白ドットを配置することを表す値（オン）を、そうでなければ空白ドットを配置しないことを表す値（オフ）を、出力値として決定する。いま、図２０（ａ）に示す空白ドットのドット生成量データはどの画素位置の階調値も“３３”である。したがって、図２０（ｂ）に示すディザマトリクスＭにおける閾値が“３２”以下となるような画素位置において、空白ドットがオンに決定されることになる。ドット配置決定部１７０３は、このような処理を入力画像データの全体に対して、ディザマトリクスの位置を移動させながら繰り返し適用して、決められた生成量の空白ドットの配置を決定する。図２０（ｃ）は最終的な量子化結果としての出力画像を示しており、黒画素が空白ドットのオンを、白画素が空白ドットのオフを表している。
【０１３６】
以上のとおり、ドット配置決定部１７０３における量子化処理をディザ法によって実現することもできる。
【０１３７】
（変形例）
本実施形態では、各インク色の画像プレーンにおいて単一ドットサイズで画像形成を行う場合を例に説明を行ったが、これに限定されない。データ出力部１７０４が出力した単一ドットサイズの実ドットのドット配置データにおけるドット配置を、複数ドットサイズの実ドットのドット配置に分配し直すことで、複数ドットサイズに対応可能である。分配方法としては、例えば、単一ドットサイズの実ドットのドット配置データにおいてドットがオンになっている画素を、大中小のドットサイズ毎の画像プレーンにランダムに分配する。或いは、誤差拡散法やディザ法を用いて分散性が良好になるように分配してもよい。また、複数ドットサイズへの分配比率は、予め定めた一定の分配比率で分配してもよいし、空白ドットのドット生成量に応じて分配比率を変更するようにしてもよい。なお、複数ドットサイズへの分配による濃度変化に関しては、画像処理部１１０に含まれるγ補正を行う処理部等で濃度補正を行うことで、入力値に対する出力濃度を調整することが可能である。
【０１３８】
以下に、ディザ法を用いて、空白ドットのドット生成量に基づいた一定比率で複数ドットサイズに分配する場合の一例を説明する。ここでは、図２０（ｃ）に示す出力画像において、空白ドットがオフとなる白画素の位置から、複数ドットサイズの実ドットのドット配置を決定する。具体的には、ディザマトリクスの閾値が、空白ドットのドット生成量データＰ１の画素値以上になる画素位置において、単一ドットサイズの実ドットを、各ドットサイズの実ドットへと振り分ける。この際、例えば、ディザマトリクス内の対応する閾値が、Ｐ１以上、かつ、１２８＋Ｐ１／２以下となるような画素位置のドットを小ドットに決定する。そして、空白ドットも小ドットも置かれない位置（ディザマトリクス内の対応する閾値が、１２８＋Ｐ１／２より大きくなるような画素位置）のドットを大ドットに決定する、といった具合である。このような手法によって、複数ドットサイズの実ドットにも、本実施形態を適用することができる。
【０１３９】
以上のとおり本実施形態では、空白ドットの配置を量子化処理により優先して決定し、実際にインクを吐出する実ドットをその余りの位置に配置する。これにより、空白ドットの配置が実ドットに優先して決定され、空白ドットのドット分散性が良好な実ドットの配置を決定することができる。特に、暗部においては、紙白が空白ドットとして視認されやすいため、暗部階調においてより高分散性を保つことができる。なお本実施形態では、ＣＭＹＫ各色のデータに対して実行するものとしたが、例えば暗部階調において空白ドットが目立ちやすいＫのみなど、一部の色において空白ドットの配置に基づいて実ドット配置を決定するようにしてもよい。
【実施形態７】
【０１４０】
用紙等の記録媒体には、打ち込み可能な単位面積当たりのインク総量に制限（以下「インクデューティ制限」と呼ぶ）がある。インクデューティ制限を超えて記録媒体にインクを吐出すると、インクが記録媒体に吸収されずにあふれを生じさせ、画質の低下を招いてしまう。このため、印刷品質を確保するためにインク打ち込み量をインクデューティ制限の範囲内に抑える必要がある。そこで、実施形態６をベースとして、記録媒体に応じたインクデューティ制限を考慮しつつ空白ドットの配置を高分散に決定する態様を、実施形態７として説明する。
【０１４１】
図２１は、本実施形態に係る、分解処理部１１４及び量子化処理部１１５の内部構成を示す機能ブロック図である。図２１に示すとおり、本実施形態の分解処理部１１４は、前述の図１７に示す実ドット生成量取得部１７０１と空白ドット生成量取得部１７０２に加えて、インクデューティ制限設定部２１０１を備える。量子化処理部１１５の内部構成には違いはない。
【０１４２】
インクデューティ制限設定部２１０１は、印刷品質を確保するために、記録媒体の種類（普通紙、光沢紙、マット紙など）に応じたインクデューティ制限を設定する。設定方法に限定はなく、例えばユーザが、画像形成装置１００における操作パネル（不図示）や外部ＰＣにインストールされたプリンタドライバを介して、任意の値を指定して設定してもよい。また、予め使用する記録媒体種別とインクデューティ制限とを対応付けたテーブルを保持しておき、ユーザが記録媒体種別を指定することで、対応するインクデューティ制限が自動で設定されるようにしてもよい。
【０１４３】
以下、図２２に示すフローチャートに沿って、図２１に示す各部の処理について詳しく説明する。ただし、実施形態６の図１８のフローと共通する部分については説明を省略ないしは簡略化して説明を行うこととする。なお、以下の説明において記号「Ｓ」はステップを表す。
【０１４４】
Ｓ２２０１において、実ドット生成量取得部１７０１は、画像形成部１２０で使用されるインク色と同じ色種、色数並びに解像度を持った、実ドットのドット生成量データを不図示の前処理部から取得する。なお、以降の処理はＣＭＹＫ各色で同一のため、以下、ブラック（Ｋ）を代表例として説明するものとする。
【０１４５】
Ｓ２２０２において、インクデューティ制限設定部２１０１は、ユーザ指示に基づき、使用する記録媒体に対応したインクデューティ制限を設定する。上述のとおり、インクデューティ制限は、記録媒体毎に規定される打ち込み可能な単位面積当たりのインクの総量を示すものであり、実ドットのドット生成量の最大値を表しているといえる。
【０１４６】
Ｓ２２０３において、空白ドット生成量決定部１７０２は、Ｓ２２０１で取得した実ドットのドット生成量データと、Ｓ２２０２で設定されたインクデューティ制限に基づき、空白ドットのドット生成量データを決定する。具体的には、実ドットのドット生成量データを反転（２５５−実ドット生成量）した値と、インクデューティ制限で示される実ドットのドット生成量の最大値を反転（２５５−インクデューティ制限量）した値とを画素単位で比較する。そして、大きい方の値を、空白ドットのドット生成量として決定する。こうして得られた空白ドットのドット生成量データは、量子化処理部１１５に送られる。
【０１４７】
Ｓ２２０３において、ドット配置決定部１７０３は、空白ドット生成量データに対してＳ１８０３と同様の量子化処理を行い、空白ドットのドット配置を決定する。これにより、画素毎にドットのオン或いはオフが示された空白ドットのドット配置データが得られる。量子化処理によって得られた空白ドットのドット配置データは、データ出力部１７０４に送られる。
【０１４８】
Ｓ２２０４において、データ出力部１７０４は、ドット配置決定部１７０３から受け取った空白ドットのドット配置データに基づいて、ラインヘッドによって形成可能な実ドットのドット配置データを出力する。具体的には、空白ドットのドット配置データを画素単位で反転（オンをオフ、オフをオンに変更）することで、実ドットのドット配置データとする。
【０１４９】
以上が、本実施形態に係る、分解処理部１１４及び量子化処理部１１５における処理の概要である。なお、上述した手法においては、空白ドットについての量子化処理を別枠で行うために１プレーン分だけ量子化処理を多く行うことになる。しかしながら、空白ドットを含めた各ドットのドット生成量の内、最も生成量が多いドットのプレーンを余りプレーン（優先順位を最下位）と定義し、当該余りプレーンへのドット配置を最後にすることで、余りプレーンについての量子化処理を省略できる。よって、本手法においても従来と同様に、ｎ個のプレーンの入力に対し、ｎ個の量子化処理で実現できる。
【０１５０】
以上のとおり本実施形態では、実ドットのドット生成量データと、記録媒体に応じたインクデューティ制限に基づき、空白ドットのドット生成量データを決定する。さらに、空白ドットの配置を量子化処理により優先して決定し、実ドットをその余りの位置に配置する。これにより、印刷品質を確保しつつ、空白ドットのドット分散性が良好な実ドットのドット配置を決定することができる。
【０１５１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１５２】
１００  画像形成装置
１１０  画像処理部
１１４  分解処理部
１１５  量子化処理部
【図１】
2019134416.tif 000003
【図２】
2019134416.tif 000004
【図３】
2019134416.tif 000005
【図４】
2019134416.tif 000006
【図５】
2019134416.tif 000007
【図６】
2019134416.tif 000008
【図７】
2019134416.tif 000009
【図８】
2019134416.tif 000010
【図９】
2019134416.tif 000011
【図１０】
2019134416.tif 000012
【図１１】
2019134416.tif 000013
【図１２】
2019134416.tif 000014
【図１３】
2019134416.tif 000015
【図１４】
2019134416.tif 000016
【図１５】
2019134416.tif 000017
【図１６】
2019134416.tif 000018
【図１７】
2019134416.tif 000019
【図１８】
2019134416.tif 000020
【図１９】
2019134416.tif 000021
【図２０】
2019134416.tif 000022
【図２１】
2019134416.tif 000023
【図２２】
2019134416.tif 000024