以下では、本発明の作用・効果をより明確に説明するために、本発明の実施の形態を、次のような順序に従って説明する。
A.本発明の実施例における印刷システムの構成:
B.本発明の実施例における最適化ディザマトリックスの考え方:
C.連続する主走査で形成されるドットの分散性の改善
C−1.第1実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
C−2.第2実施例におけるハーフトーン処理(誤差拡散法):
D.同一主走査で形成される複数色ドットの分散性の改善
D−1.第3実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
D−2.第4実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
D−3.第5実施例におけるハーフトーン処理(誤差拡散法):
D−4.第6実施例におけるハーフトーン処理(誤差拡散法):
E.変形例:
A.本発明の実施例における印刷システムの構成:
図1は、本発明の実施例における印刷システムの構成を示すブロック図である。この印刷システムは、印刷制御装置としてのコンピュータ90と、印刷部としてのカラープリンタ20と、を備えている。なお、カラープリンタ20とコンピュータ90の組み合わせを、広義の「印刷装置」と呼ぶことができる。
コンピュータ90では、所定のオペレーティングシステムの下で、アプリケーションプログラム95が動作している。オペレーティングシステムには、ビデオドライバ91やプリンタドライバ96が組み込まれており、アプリケーションプログラム95からは、これらのドライバを介して、カラープリンタ20に転送するための印刷データPDが出力されることになる。アプリケーションプログラム95は、処理対象の画像に対して所望の処理を行い、また、ビデオドライバ91を介してCRT21に画像を表示する。
プリンタドライバ96の内部には、入力画像の解像度を印刷解像度に変換する解像度変換モジュール97と、RGBをCMYKに色変換する色変換モジュール98と、後述の実施例で生成されるディザマトリックスMを使用して入力階調値をドットの形成で表現可能な出力階調数へ減色する減色モジュール99と、減色データを用いてカラープリンタ20に送信するための印刷データを生成する印刷データ生成モジュール100と、色変換モジュール98が色変換の基準とする色変換テーブルLUTと、減色処理のために各サイズのドットの記録率を決定するための記録率テーブルDTと、が備えられている。プリンタドライバ96は、印刷データPDを生成する機能を実現するためのプログラムに相当する。プリンタドライバ96の機能を実現するためのプログラムは、コンピュータ読み取り可能な記録媒体に記録された形態で供給される。このような記録媒体としては、たとえばCD−ROM126やフレキシブルディスク、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等の、コンピュータが読み取り可能な種々の媒体を利用できる。
図2は、カラープリンタ20の概略構成図である。カラープリンタ20は、紙送りモータ22によって印刷用紙Pを副走査方向に搬送する副走査駆動部と、キャリッジモータ24によってキャリッジ30を紙送りローラ25の軸方向(主走査方向)に往復動させる主走査駆動部と、キャリッジ30に搭載された印刷ヘッドユニット60(「印刷ヘッド集合体」とも呼ぶ)を駆動してインクの吐出およびドット形成を制御するヘッド駆動機構と、これらの紙送りモータ22,キャリッジモータ24,印刷ヘッド10、20を備える印刷ヘッドユニット60および操作パネル32との信号のやり取りを司る制御回路40とを備えている。制御回路40は、コネクタ56を介してコンピュータ90に接続されている。
図3は、印刷ヘッド10、20の下面におけるノズル配列を示す説明図である。印刷ヘッド10の下面には、ブラックインクを吐出するためのブラックインクノズル列Kと、シアンインクを吐出するためのシアンインクノズル列Cと、マゼンタインクを吐出するためのマゼンタインクノズル列Mzと、イエローインクを吐出するためのイエローインクノズルYとが形成されている。
各ノズル列の複数のノズルNzは、副走査方向に沿って一定のノズルピッチk・Dでそれぞれ整列している。ここで、kは整数であり、Dは副走査方向における印刷解像度に相当するピッチ(「ドットピッチ」と呼ぶ)である。本明細書では、「ノズルピッチはkドットである」とも言う。このときの単位[ドット]は、印刷解像度のドットピッチを意味している。副走査送り量に関しても同様に、[ドット]の単位を用いる。
各ノズルNzには、各ノズルNzを駆動してインク滴を吐出させるための駆動素子としてのピエゾ素子(図示せず)が設けられている。印刷時には、印刷ヘッド10、20が主走査方向MSに移動しつつ、各ノズルからインク滴が吐出される。
以上説明したハードウェア構成を有するカラープリンタ20は、紙送りモータ22により印刷用紙Pを搬送しつつ、キャリッジ30をキャリッジモータ24により往復動させ、同時に印刷ヘッド10のピエゾ素子を駆動して、各色インク滴の吐出を行い、大中小のインクドットを形成して印刷用紙P上に視覚系やカラープリンタ20に最適化された画像を形成することができる。具体的には、以下のようにして印刷画像が形成される。以下の説明では、説明を分かりやすくするために、先ず印刷ヘッド10のみを用いたモノクロ印刷の例を示し、次に、これをカラー印刷に拡張する。
図4は、本発明の実施例におけるモノクロ印刷画像の生成方法の一例を示す説明図である。この画像形成方法の例では、主走査と副走査を行いつつインクドットを印刷媒体上に形成することによって印刷画像が生成される。主走査とは、印刷媒体に対して印刷ヘッド10を主走査方向に相対的に移動させる動作を意味する。副走査とは、印刷媒体に対して印刷ヘッド10を副走査方向に相対的に移動させる動作を意味する。印刷ヘッド10は、印刷媒体上にインク滴を吐出してインクドットを形成するように構成されている。印刷ヘッド10は、画素ピッチkの2倍の間隔で図示しない10個のノズルを装備している。
印刷画像の生成は、主走査と副走査を行いつつ以下のように行われる。パス1の主走査では、ラスタ番号が1、3、5、7、9、11、13、15、17、19の10本の主走査ラインのうちで、画素位置番号が1、3、5、7の画素にインクドットが形成される。主走査ラインとは、主走査方向に連続する画素によって形成される線を意味する。各丸は、ドットの形成位置を示している。各丸の中の数字は、同時にインクドットが形成される複数の画素から構成される画素グループを示している。パス1では、第1の画素グループに属する印刷画素にドットが形成される。
パス1の主走査が完了すると、副走査方向に画素ピッチの3倍の移動量Lsで副走査送りが行われる。一般には、印刷媒体を移動させることによって副走査送りは行われるが、本実施例では、説明を分かりやすくするために印刷ヘッド10が副走査方向に移動するものとしている。副走査送りが完了すると、パス2の主走査が行われる。
パス2の主走査では、ラスタ番号が6、8、10、12、14、16、18、20、22、24の10本の主走査ラインのうちで、画素位置番号が1、3、5、7の画素にインクドットが形成される。このようにして、パス2では、第2の画素グループに属する印刷画素にドットが形成される。なお、ラスタ番号が22、24の2本の主走査ラインは、図示が省略されている。パス2の主走査が完了すると、前述と同様の副走査送りが行われた後に、パス3の主走査が行われる。
パス3の主走査では、ラスタ番号が11、13、15、17、19の主走査ラインを含む10本の主走査ラインのうちで、画素位置番号が2、4、6、8の画素にインクドットが形成される。パス4の主走査では、ラスタ番号が16、18、20の3本の主走査ラインを含む10本の主走査ラインのうちで、画素位置番号が2、4、6、8の画素にインクドットが形成される。このようにして、ラスタ番号が15以降の副走査位置に隙間なくインクドットが形成可能であることが分かる。パス3とパス4では、それぞれ第3と第4の画素グループに属する印刷画素にドットが形成される。
このような印刷画像の生成を一定の領域に着目して観察すると、以下のように行われていることが分かる。たとえばラスタ番号が15〜19で画素位置番号が1〜8の領域を着目領域とすると、着目領域では以下のように印刷画像が形成されていることが分かる。
パス1では、着目領域において、ラスタ番号が1〜5で画素位置番号が1〜8の画素位置に形成されたインクドットと同一のドットパターンが形成されていることが分かる。このドットパターンは、第1の画素グループに属する画素に形成されるドットで形成されている。すなわち、パス1では、着目領域において、第1の画素グループに属する画素にドットが形成される。
パス2では、着目領域において、第3の画素グループに属する画素にドットが形成される。パス3では、着目領域において、第2の画素グループに属する画素にドットが形成される。パス4では、着目領域において、第4の画素グループに属する画素にドットが形成される。
このように、本実施例のモノクロ印刷では、第1〜第4の複数の画素グループの各々に属する印刷画素が、共通の印刷領域で相互に組み合わせられることによって印刷画像が形成されることが分かる。
一方、本実施例のカラー印刷では、第1〜第4の複数の画素グループの各々に、印刷ヘッド(図3)からC、Mz、Y、Kの各色のインクが吐出されることによって、カラーの印刷画像が形成される。このように、カラー印刷では、各主走査においてほぼ同時に複数色のインクが吐出されることになる。
図5は、本発明の実施例において複数の画素グループの各々に属する印刷画素が、共通の印刷領域で相互に組み合わせられることによって印刷媒体上に印刷画像が生成される様子を示す説明図である。図5の例では、印刷画像は、所定の中間階調(単色)の印刷画像である。ドットパターンDP1、DP1aは、第1の画素グループに属する複数の画素に形成されたドットパターンを示している。ドットパターンDP2、DP2aは、第1と第2の画素グループとに属する複数の画素に形成されたドットパターンを示している。ドットパターンDP3、DP3aは、第1〜第3の画素グループに属する複数の画素に形成されたドットパターンを示している。ドットパターンDP4、DP4aは、全画素グループに属する複数の画素に形成されたドットパターンを示している。
ドットパターンDP1、DP2、DP3、DP4は、従来技術のディザマトリックスを使用した場合におけるドットパターンである。ドットパターンDP1a、DP2a、DP3a、DP4aは、本願発明のディザマトリックスを使用した場合におけるドットパターンである。図5から分かるように、本願発明のディザマトリックスを使用した場合には、特にドットパターンの重畳が少ないドットパターンDP1a、DP2aにおいて、従来技術のディザマトリックスを使用した場合よりもドットの分散性が均一である。
従来技術のディザマトリックスには、画素グループという概念が無いため最終的に形成される印刷画像(図5の例ではドットパターンDP4)におけるドットの分散性にのみ着目して最適化が行われている。
しかし、本願発明者は、敢えてドットの形成過程におけるドットパターンに着目して印刷画像の画質の解析を行った。この解析の結果、ドットの形成過程におけるドットパターンの疎密に起因して、画像のむらが発生することが分かったのである。この画像のむらは、同一の主走査で形成される複数色のドットの重なり方が不均一であるため、複数色のドットが接触して滲む部分と、複数色のドットが離れていて滲まない部分とが、まだら状に発生することに起因して色むらが生じていることが発明者によって見いだされた。
このような色むらは、1回のパスで印刷画像を形成する場合においても発生し得る。しかし、色むらが印刷画像の全面で均一に発生しても人間の目には近くされにくい。均一に発生している故に、低周波成分を含む不均一な「むら」としてはインクの滲みが発生しないからである。
ところが、同一の主走査でほぼ同時にインクドットが形成される画素グループに形成されるドットパターンにおいて、インクの滲みで人間の目に認識されやすい低周波領域でむらが発生すると、顕著な画質劣化として顕在化することになる。このように、インクドットの形成によって印刷画像を形成する場合には、ほぼ同時にインクドットが形成される画素グループに形成されるドットパターンにも着目してディザマトリックスを最適化することが高画質化につながることを発明者によって初めて見いだされたのである。
さらに、インクの滲みだけでなく、インク凝集むらや光沢むら、ブロンズ現象といったインクの物理現象も画質の劣化として人間の目に顕著に知覚されることも本願発明者によって突き止められた。ブロンズ現象とは、インク滴の染料の凝集等によって、見る角度によって印刷表面がブロンズ色に呈色するなど、印刷用紙表面で反射される光の状態が変化する現象である。加えて、このようなインクの物理現象は、連続するパス(たとえばパス1とパス2)においても発生することが発明者によって突き止められた。さらに、上述の色むらについもて、連続するパスにおいて発生し得ることも発明者によって突き止められた。
さらに、従来技術のディザマトリックスでは、各画素グループの相互の位置関係が予め想定されたとおりになっていることを前提として最適化が図られているので、相互の位置関係がズレた場合には最適性が保証されず、顕著に画質が劣化する原因となっていた。しかし、本願発明のディザマトリックスによれば、各画素グループのドットパターンにおいてもドットの分散性が確保されているので、相互の位置関係のズレに対する高いロバスト性も確保できることが本願発明の発明者の実験によって初めて確認された。
さらに、この技術的思想は、印刷速度の高速化に伴って重要性が増していることも発明者によって突き止められた。印刷速度の高速化は、インクの吸収のための時間が十分に取られないうちに、次の画素グループのドットが形成されることにつながるからである。
B.本発明の実施例における最適化ディザマトリックスの考え方:
図6は、ディザマトリックスの一部を概念的に例示した説明図である。図示したマトリックスには、横方向(主走査方向)に128要素、縦方向(副走査方向)に64要素、合計8192個の要素に、階調値1〜255の範囲から万遍なく選択された閾値が格納されている。なお、ディザマトリックスの大きさは、図6に例示したような大きさに限られるものではなく、縦と横の要素数が同じマトリックスも含めて種々の大きさとすることができる。
図7は、ディザマトリックスを使用したドット形成の有無の考え方を示す説明図である。図示の都合上、一部の要素についてのみ示されている。ドット形成の有無の決定では、図7に示す通り、画像データの階調値と、ディザマトリックス中で対応する位置に記憶されている閾値とが比較される。画像データの階調値の方がディザテーブルに格納された閾値よりも大きい場合にはドットが形成され、画像データの階調値の方が小さい場合にはドットが形成されない。図7中でハッチングを付した画素がドットの形成対象となる画素を意味している。このように、ディザマトリックスを用いれば、画像データの階調値とディザマトリックスに設定されている閾値とを比較するという単純な処理で、画素毎のドットの形成有無を判断することができるので、階調数変換処理を迅速に実施することが可能となる。さらに、画像データの階調値が決まると、各画素にドットが形成されるか否かは、もっぱらディザマトリックスに設定される閾値によって決まることからも明らかなように、組織的ディザ法では、ディザマトリックスに設定する閾値の格納位置によって、ドットの発生状況を積極的に制御することが可能である。
このように、組織的ディザ法は、ディザマトリックスに設定する閾値の格納位置によって、ドットの発生状況を積極的に制御することが可能なので、閾値の格納位置の設定を調整することによってドットの分散性その他の画質を制御することができるという特徴を有している。このことは、ディザマトリクスの最適化処理によってハーフトーン処理を多様な目標状態に対して最適化することが可能であることを意味している。
図8は、ディザマトリクスの調整の簡単な例として、ブルーノイズ特性を有するブルーノイズディザマトリクスの各画素に設定されている閾値の空間周波数特性を概念的に例示した説明図である。ブルーノイズマトリックスの空間周波数特性は、1周期の長さが1周期の長さが2画素付近の高い周波数領域に最も大きな周波数成分を有する特性となっている。このような空間周波数特性は、人間の視覚特性を考慮して設定されたものである。すなわち、ブルーノイズディザマトリクス、高周波領域において感度が低いという人間の視覚特性を考慮して、高周波領域に最も大きな周波数成分が発生するように閾値の格納位置が調整されたディザマトリックスである。
図8には、さらに、グリーンノイズマトリックスの空間周波数特性を破線の曲線として例示している。図示されているように、グリーンノイズマトリックスの空間周波数特性は、1周期の長さが2画素から十数画素の中間周波数領域に最も大きな周波数成分を有する特性となっている。グリーンノイズマトリックスの閾値は、このような空間周波数特性を有するように設定されていることから、グリーンノイズ特性を有するディザマトリックスを参照しながら各画素のドット形成の有無を判断すると、数ドット単位で隣接してドットが形成されながら、全体としてはドットの固まりが分散した状態で形成されることになる。いわゆるレーザープリンタなどのように、1画素程度の微細なドットを安定して形成することが困難なプリンタでは、こうしたグリーンノイズマトリックスを参照してドット形成の有無を判断することで、孤立したドットの発生を抑制することができる。その結果、安定した画質の画像を迅速に出力することが可能となる。逆に言えば、レーザープリンタなどでドットの形成有無を判断する際に参照されるディザマトリックスには、グリーンノイズ特性を有するように調整された閾値が設定されている。
図9(a)は、人間が有する視覚の空間周波数に対する感度特性である視覚の空間周波数特性VTF(Visual Transfer Function)を概念的に示した説明図である。視覚の空間周波数特性VTFを利用すれば、人間の視覚感度を視覚の空間周波数特性VTFという伝達関数としてモデル化することによって、ハーフトーン処理後のドットの人間の視覚に訴える粒状感を定量化することが可能となる。このようにして定量化された値は、粒状性指数と呼ばれる。図9(b)は、視覚の空間周波数特性VTFを表す代表的な実験式を示している。図9(b)中の変数Lは観察距離を表しており、変数uは空間周波数を表している。図9(c)は、粒状性指数を定義する式である。図9(c)中の係数Kは、得られた値を人間の感覚と合わせるための係数である。
このような人間の視覚に訴える粒状感の定量化は、人間の視覚系に対するディザマトリクスのきめ細かな最適化を可能とするものである。具体的には、ディザマトリックスに各入力階調値を入力した際に想定されるドットパターンに対してフーリエ変換を行ってパワースペクトルFSを求めるとともに、視覚の空間周波数特性VTFと乗算した後に全入力階調値で積分(図9(c))することによって得ることができる粒状性指数をディザマトリクスの評価関数として利用することができる。この例では、ディザマトリクスの評価関数が小さくなるように閾値の格納位置を調整すれば最適化が図れることになる。
C.連続する主走査で形成されるドットの分散性の改善
C−1.第1実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
本発明の第1実施例におけるハーフトーン処理は、以下の方法で生成されたディザマトリックスMを使用することによって実現される。
図10は、本発明の第1実施例におけるディザマトリックスの生成方法の処理ルーチンを示すフローチャートである。第1実施例の生成方法では、印刷画像の形成過程において連続する主走査(パス)で形成されるドットの分散性を考慮して最適化を図ることができるように構成されている。この例では、説明を分かりやすくするために8行8列の小さなディザマトリックスを生成するものとしている。ディザマトリックスの最適性をあらわす評価としては、粒状性指数(図9(c))が使用されるものとしている。
ステップS100では、グループ化処理が行われる。グループ化処理とは、本実施例では、印刷画像の形成過程(図4)においてほぼ同時にドットが形成される複数の画素グループに対応する要素毎にディザマトリックスを分割するとともに、時間的に連続してドットが形成されるグループを合成する処理である。
図11は、本発明の第1実施例におけるグループ化処理が行われたディザマトリックスMを示す説明図である。このグループ化処理では、図4における4つの画素グループに分割されるものとしている。ディザマトリックスMの各要素に記載された数字は、各要素が属する画素グループを示している。たとえば1行1列の要素は、第1の画素グループ(図4)に属し、2行1列の要素は、第2の画素グループに属する。
図12は、本発明の第1実施例における4個の分割マトリックスM1〜M4を示す説明図である。分割マトリックスM1は、ディザマトリックスMの要素のうち第1の画素グループに属する画素に対応する複数の要素と、空欄となっている複数の要素である空欄要素とから構成されている。空欄要素は、入力階調値に拘わらず常にドットが形成されない要素である。分割マトリックスM2〜M4は、それぞれディザマトリックスMの要素のうち第2〜第4の画素グループに属する画素に対応する複数の要素と、空欄要素とから構成されている。
このようにして生成された分割マトリックスM2〜M4は、時間的に連続してドットが形成されるもの同士が合成され、第1〜第4の連続画素グループの各々に対応する評定マトリックスM1_2、M2_3、M3_4、M4_1(図13)が生成される。
図13は、本発明の第1実施例において評価対象となる評定マトリックスの一例を示す説明図である。この図では、各評定マトリックスに対応する第1〜第4の連続画素グループに形成されるドットパターンが評価対象となる。第1の連続画素グループは、パス1とパス2とで連続してそれぞれ形成される第1の画素グループと第2の画素グループとを合成した画素グループである。第2の連続画素グループは、同様に第2の画素グループと第3の画素グループとを合成した画素グループである。第3の連続画素グループは、第3の画素グループと第4の画素グループとを合成した画素グループである。第4の連続画素グループは、第4の画素グループと第1の画素グループとを合成した画素グループである。
このように、第1実施例では、連続する主走査でそれぞれ形成されるドットパターンを併せて構成される合成ドットパターンが評定とされているので、後述するように、連続する主走査で形成される全体としてのドットパターンの分散性に着目してディザマトリックスの最適化を図ることができる。
このような合成ドットパターンの分散性に着目してディザマトリックスの最適化を図っているのは、主として以下の2つの理由によるものである。第1に、インク凝集むらや光沢むら、ブロンズ現象といったインクの物理現象が、前述のように連続する主走査(たとえば図4におけるパス1とパス2)においても発生するので、連続する主走査の双方で形成されるドットパターンの分散性を良くすることが高画質化につながるからである。第2に、主走査における位置の相違(たとえば図2における主走査左端Aと主走査右端B)によって発生するドット形成の時間的間隔のバラツキに起因する画質の劣化を抑制するためである。
このような時間的間隔のバラツキは、以下のようにして発生する。たとえば印刷ヘッドユニット60(図2)が往方向に、すなわち主走査左端Aから主走査右端Bに向かって主走査を行いつつドットを形成し、その後に印刷ヘッドユニット60が復方向に、すなわち主走査右端Bから主走査左端Aに向かって主走査を行いつつドットを形成する場合を考える。この場合には、往方向主走査では、印刷ヘッドユニット60が往方向主走査の開始点である主走査左端Aにドットを形成した後、たとえば0.5秒経過後に往方向主走査の終了点である主走査右端Bにドットを形成する。次に、たとえば0.1秒経過後に復方向主走査が開始されるとすると、復方向主走査の開始点である主走査右端Bにドットが形成された後、たとえば0.5秒経過後に復方向主走査の終了点である主走査左端Aにドットが形成される。このケースでは、主走査左端Aでは、ドット形成の時間的間隔は、1.1秒(=0.5秒+0.5秒+0.1秒)となる。一方、主走査右端Bでは、ドット形成の時間的間隔は、0.1秒となる。
このように、主走査左端Aでは、1.1秒の間隔でドットが形成されているのに対して、主走査右端Bでは、0.1秒の間隔でドットが形成されているので、主走査左端Aと主走査右端Bとではインクの物理現象の発生の程度がばらつくことになる。前述のように、インクの物理現象は、印刷画像の全体で均一に発生していれば、画質の劣化として人間の視覚に訴えにくく、補正による改善も可能である。しかし、インクの物理現象のバラツキ(あるいはムラ)は、画質の劣化として人間の視覚に顕著に訴える。本実施例では、このようなバラツキをも抑制することを目的として、連続する主走査の双方で形成されるドットパターンの分散性を良くするようにディザマトリックスMが最適化される。
このようにして、ステップS100のグループ化処理(図10)が完了すると、処理がステップS200に進められる。
ステップS200では、着目閾値決定処理が行われる。着目閾値決定処理とは、格納要素の決定対象となる閾値を決定する処理である。本実施例では、比較的に小さな値の閾値、すなわちドットの形成されやすい値の閾値から順に選択することによって閾値が決定される。このように、ドットが形成されやすい閾値から順に選択すれば、ドットの粒状性が目立つハイライト領域におけるドット配置をコントロールする閾値から順に格納される要素を固定していくことになるので、ドットの粒状性が目立つハイライト領域に対して大きな設計自由度を与えることができるからである。この例では、後述するように8個の閾値が既に決定済みで、9番目の閾値が決定されるものとする。
図14は、本発明の第1実施例におけるディザマトリックス評価処理の処理ルーチンを示すフローチャートである。ステップS310では、決定済み閾値の対応ドットがオンとされる。決定済み閾値とは、格納要素が決定された閾値を意味する。本実施例では、前述のようにドットの形成されやすい値の閾値から順に選択されるので、着目閾値にドットが形成される際には、決定済み閾値が格納された要素に対応する画素には必ずドットが形成されることになる。逆に、着目閾値にドットが形成される最も小さな入力階調値においては、決定済み閾値が格納された要素以外の要素に対応する画素にはドットは形成されないことになる。
図15は、ディザマトリックスMの1〜8番目にドットが形成されやすい閾値が格納された要素に対応する8個の画素の各々にドットが形成された様子を示す説明図である。このようにして構成されるドットパターンDpaは、9番目のドットをどの画素に形成すべきかを決定するために使用される。*印は、格納候補要素を示している。
ステップS320(図14)では、格納候補要素選択処理が行われる。格納候補要素選択処理とは、評定マトリックスとして選択された分割マトリックスM1の要素の中から閾値の格納要素の候補となる格納候補要素を選択する処理である。この例では、*印が付された1行1列の格納要素が格納候補要素として選択されている。
格納候補要素の選択は、たとえばディザマトリックスMの閾値の格納要素として決定済みの8個の格納要素である決定済み要素を除く他の格納要素の全てを順に選択するようにしても良いし、あるいは決定済み要素に隣接しない要素が存在する限り、これを優先的に選択するようにしても良い。
ステップS330(図14)では、選択された格納候補要素にドットがオンされたとの仮定がなされる。これにより、格納候補要素に9番目にドットが形成されやすい閾値が格納されたときのディザマトリックスMの評価を行うことが可能となる。
図16は、ドットパターンDpaが形成された状態を数値化したマトリックス、すなわちドット密度を定量的に表したドット密度マトリックスDdaを示す説明図である。数字0は、ドットが形成されていないことを意味し、数字1は、ドットが形成されていること(ドットが形成されていると仮定されている場合を含む)を意味する。
図17は、ディザマトリックスMの1〜8番目にドットが形成されやすい閾値が格納された要素のうち第1〜第4の連続画素グループの各々に属する印刷画素に形成される4つのドットパターンDp1_2、Dp2_3、Dp3_4、Dp4_1を示す説明図である。換言すれば、ドットパターンDpa(図15)から第1〜第4の連続画素グループの各々に属する印刷画素に形成されるドットパターンを抜き出したものである。図17には、ドットパターンDpa(図15)と同様に*印で格納候補要素に対応する印刷画素も示されている。図18は、4つのドットパターンDp1_2、Dp2_3、Dp3_4、Dp4_1のそれぞれに対応するドット密度マトリックスDd1_2、Dd2_3、Dd3_4、Dd4_1を示す説明図である。
このようにして5つのドット密度マトリックスDda、Dd1_2、Dd2_3、Dd3_4、Dd4_1が決定されると、処理が評価値決定処理(ステップS340)に進められる。
図19は、本発明の第1実施例における評価値決定処理の処理ルーチンを示すフローチャートである。ステップS342では、全画素を評定として粒状性指数が算出される。具体的には、ドット密度マトリックスDda(図16)に基づいて図9(c)の式によって算出される。ステップS344では、第1〜第4の連続画素グループを評定として粒状性指数が算出される。具体的には、ドット密度マトリックスDda、Dd1_2、Dd2_3、Dd3_4、Dd4_1の各々に基づいて(図18)図9(c)の式によって同様に算出される。
ステップS348では、重み付け加算処理が行われる。重み付け加算処理とは、算出された各粒状性指数の各々に重み付けを行うとともに加算する処理である。
図20は、重み付け加算処理に使用する計算式を示す説明図である。この計算式から分かるように、評価値Eは、全画素についての粒状性指数Ga(ステップS342で算出)に重み付け係数Wa(たとえば4)を乗じた値と、第1〜第4の連続画素グループの各々についての4つの粒状性指数G1_2、G2_3、G3_4、G4_1(ステップS344で算出)の和に重み付け係数Wg(たとえば1)を乗じた値と、の和として決定される。
このような格納候補要素選択処理(ステップS320)から評価値決定処理(ステップS340)への一連の処理(図14)は、全ての格納候補要素について行われる(ステップS350)。このようにして、全ての格納候補要素について、それぞれの評価値が決定されると、処理がステップS400(図10)に進められる。
ステップS400では、格納要素決定処理が行われる。格納要素決定処理では、最も評価値が小さな格納候補要素が着目閾値の格納要素として決定される。
このような処理(ステップS200〜ステップS400)は、最終閾値まで、閾値を変更しつつ繰り返される(ステップS500)。最終閾値は、最もドットが形成されにくい最大閾値としても良いし、あるいは予め定められた所定の閾値範囲の中の最大閾値としても良い。この点は、最初に評価対象となる閾値についても同様である。
このように、第1実施例では、連続する主走査でそれぞれ形成される複数のドットパターンを併せて構成される合成ドットパターンの粒状性指数が小さくなるようにディザマトリックスMが最適化されるので、時間的に連続する主走査でそれぞれ形成される複数のドットパターンの相互間で発生するインクの物理現象に起因する画質の劣化を抑制することができる。さらに、双方向印刷においては、主走査における位置の相違によって発生するドット形成の時間的間隔のバラツキに起因する画質の劣化を顕著に抑制することも可能である。
C−2.第2実施例におけるハーフトーン処理(誤差拡散法):
図21は、本発明の第2実施例における誤差拡散法のフローチャートを示す説明図である。この実施例は、通常の誤差拡散に加えて連続画素グループにも別途誤差を拡散する処理を行うことによって誤差拡散法の本来的な特性によって、連続画素グループの各々に属する印刷画素に形成されるドットパターンにも好ましい分散性を与えることができるからである。誤差拡散法では、ドット形成判断の対象となる画素である着目画素を1つずつシフトさせて全ての印刷画素のドットの形成状態が決定される。シフトの方法は、たとえば主走査方向に1つずつ着目画素をシフトさせて、この主走査ラインの全ての画素の処理が完了すると隣接する未処理の主走査ラインに着目画素をシフトさせる方法が一般的である。
ステップS900では、着目画素に対して処理済みの他の複数の画素から拡散されている拡散誤差が読み込まれる。本実施例では、拡散誤差は、全体拡散誤差ERaとグループ拡散誤差ERgとを含む。
全体拡散誤差ERaは、図22に示される誤差拡散全体マトリックスMaを使用して拡散された誤差である。本実施例では、周知のJarvis、Judice & Ninke型の誤差拡散マトリックスを使用して誤差が拡散されている。このような誤差拡散は、一般的な誤差拡散として行われているものである。このような誤差拡散は、従来技術の誤差拡散法と同様に、誤差拡散法の本来的な特性として、最終的なドットパターンに好ましい分散性を与えることを可能とする。
ただし、本実施例では、相互に連続する主走査で形成される画素に形成されるドット群にも好ましい分散性を与えるために、グループ拡散誤差ERgが追加的に拡散されている点で、従来の誤差拡散法と異なる。
図23は、着目画素が属する画素グループへの追加的な誤差拡散を行うための誤差拡散連続主走査グループマトリックスMg1を示す説明図である。誤差拡散連続主走査グループマトリックスMg1は、相互に連続する主走査で形成される画素のみに誤差が拡散されるように構成されている。このような誤差の拡散は、相互に連続しない主走査で形成される画素には誤差が拡散されないように構成することによって実装を容易化することができる。
本実施例では、誤差拡散連続主走査グループマトリックスMg1は、以下の関係を利用して実現されている。
(1)第1の画素グループと第3の画素グループへのドットが連続して形成されない。
(2)第2の画素グループと第4の画素グループへのドットが連続して形成されない。
(3)第1の画素グループと第3の画素グループとの間の位置関係が、第2の画素グループと第4の画素グループとの間の位置関係と同一である。
たとえば、着目画素が第1の画素グループに属する場合には、第3の画素グループに属する画素に誤差を拡散しないように誤差拡散連続主走査グループマトリックスMg1を構成する。すなわち、第1の画素グループに対して第3の画素グループに属する画素位置の要素をブランクとして、その要素を他の画素に配分する。着目画素が第3の画素グループに属する場合には、第1の画素グループと第3の画素グループとの間の位置関係が対象なので、誤差拡散連続主走査グループマトリックスMg1がそのまま利用できる。次に、着目画素が第2の画素グループに属する場合には、第2の画素グループと第4の画素グループとの間の位置関係が第1の画素グループと第3の画素グループとの間の位置関係と同一なので、この場合にも誤差拡散連続主走査グループマトリックスMg1がそのまま利用できる。さらに、着目画素が第4の画素グループに属する場合にも、第2の画素グループと第4の画素グループとの間の位置関係が対象なので、誤差拡散連続主走査グループマトリックスMg1がそのまま利用できる。このように、着目画素がどの画素グループに属していても、誤差拡散連続主走査グループマトリックスMg1が利用可能である。
このように、本実施例では、誤差拡散全体マトリックスMaによる誤差拡散によって最終的なドットパターンに所定の特性を持たせるとともに、誤差拡散連続主走査グループマトリックスMg1による誤差拡散によって相互に連続する主走査で形成される画素に形成されるドットパターンに所定の特性を持たせるように誤差が拡散されている。
ステップS910では、全体拡散誤差ERaおよびグループ拡散誤差ERgの重み付き平均値である平均拡散誤差ERaveが算出される。本実施例では、一例として全体拡散誤差ERaとグループ拡散誤差ERgの重み付けをそれぞれ「4」と「1」としている。平均拡散誤差ERaveは、全体拡散誤差ERaに重み付け「4」を乗じた値と、グループ拡散誤差ERgに重み付け「1」を乗じた値の和を、重み付けの総和「5」で除した値として算出される。
ステップS920では、入力階調値Dtと平均拡散誤差ERaveとが加算されて補正データDcが算出される。
ステップS930では、算出された補正データDcが予め設定されている閾値Threと比較される。この比較の結果、補正データDcが閾値Threよりも大きい場合には、ドットを形成する旨が決定される(ステップS940)。一方、補正データDcが閾値Threよりも小さい場合には、ドットを形成しない旨が決定される(ステップS950)。
ステップS960では、階調誤差が算出されるとともに、階調誤差が周囲の未処理の画素に拡散される。階調誤差は、補正データDcとドットの形成の有無の決定によって生じた現実の階調値との間の差である。たとえば、補正データDcの階調値が「223」で、ドットの形成によって現実に生じた階調値が255であるとすると、階調誤差は、「−32」(=223−255)となる。本ステップ(S960)では、誤差の拡散は、誤差拡散全体マトリックスMaを用いて行われる。
具体的には、着目画素の右隣の画素については、着目画素で生じた階調誤差「−32」に対して誤差拡散全体マトリックスMaのうち右隣の画素に対応する係数「7/48」を乗じた値「−224/48」(=−32×7/48)が拡散される。さらに、着目画素の2つの右隣の画素については、着目画素で生じた階調誤差「−32」に対して誤差拡散全体マトリックスMaのうち2つの右隣の画素に対応する係数「5/48」を乗じた値「−160/48」(=−32×5/48)が拡散される。このような誤差拡散は、従来技術の誤差拡散法と同様に、誤差拡散法の本来的な特性として、最終的なドットパターンに所定の特性を持たせるものである。
ステップS970では、従来の誤差拡散とは異なり、誤差拡散連続主走査グループマトリックスMg1(図23)を用いた誤差拡散が追加的に行われる。前述のように、相互に連続する主走査で形成される画素に形成されるドットパターンにも好ましい分散性を与えるためである。
具体的には、着目画素の右隣の画素については、着目画素で生じた階調誤差「−32」に対して誤差拡散連続主走査グループマトリックスMg1のうち右隣の画素に対応する係数「0」を乗じた値「0」(=−32×0)が拡散される。さらに、着目画素で生じた階調誤差「−32」に対して誤差拡散全体マトリックスMaのうち着目画素の下側に隣接する画素に対応する係数「5/24」を乗じた値「−20/3」(=−32×5/24)が拡散される。
このように、第2実施例の誤差拡散法では、着目画素から連続画素グループへの追加的な誤差拡散によって第1実施例の目的を達成することができる。
図24は、本発明の第2実施例の変形例のフローチャートを示す説明図である。本変形例は、第2実施例の3つのステップS900をステップS900bに入れ替えるとともに、他の2つのステップS910、S970が削除されている点で第2実施例と異なる。一方、従来の誤差拡散と比較すると、誤差拡散に使用される誤差拡散マトリックスのみが相違する。本変形例は、拡散誤差の線形性を利用して第2実施例を拡張したものであるため、処理の内容は、第2実施例と数学的に等価である。
ステップS900bでは、誤差拡散合成マトリックスMg3を用いて拡散された平均拡散誤差ERaveが読み込まれる。平均拡散誤差ERaveは、第2実施例のステップS910aで算出された値と同一である。誤差拡散合成マトリックスMg3は、誤差拡散全体マトリックスMaと、誤差拡散連続主走査グループマトリックスMg1と、を所定の重み付けで合成することによって構成された誤差拡散マトリックスである。所定の重み付けは、順に「4」対「1」である。
誤差拡散合成マトリックスMg3(図25)は、誤差拡散全体マトリックスMaと、重み付け調整済み誤差拡散連続主走査グループマトリックスMg1aの各係数の分母と分子とを単純に加算することによって構成されたマトリックスである。重み付け調整済み誤差拡散連続主走査グループマトリックスMg1aは、このような加算を可能とするために誤差拡散連続主走査グループマトリックスMg1の各係数の分母と分子とに1.5を乗じたものである。これにより、誤差拡散全体マトリックスMaの分子の総和は48となり、重み付け調整済み誤差拡散連続主走査グループマトリックスMg1aの分子の総和は12となるので、分子の総和の比は、誤差拡散全体マトリックスMaと誤差拡散連続主走査グループマトリックスMg1aとで「4」対「1」となっている。一方、各係数の分母を60(=48+12)とすることによって、拡散誤差の係数の総和を「1」とすることができる。なお、誤差拡散合成マトリックスMg3では、分子を整数とするため、分母を120としている。
本変形例は、従来の誤差拡散と同一の処理手順において、誤差拡散マトリックスを入れ替えるだけで本願発明を適用することができるとともに、複数の拡散処理を一度に行えるので処理負担も小さいという利点を有する。
D.同一主走査で形成される複数色ドットの分散性の改善
D−1.第3実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
本発明の第3実施例におけるハーフトーン処理は、以下の方法で生成されたディザマトリックスMを使用することによって実現される。
図26は、本発明の第3実施例におけるディザマトリックスの生成方法の処理ルーチンを示すフローチャートである。この実施例は、グループ化処理(ステップS100)とディザマトリックス評価処理(ステップS300)が、それぞれステップS100aとステップS300aとに変更されているとともに、インク色/マトリックス選択処理とその繰り返し処理(ステップS250、S450)が追加されている点で、第1実施例のディザマトリックス生成方法と異なる。
本実施例のグループ化処理(ステップS100a)は、第1実施例と異なり印刷画像の形成過程(図4)においてほぼ同時にドットが形成される複数の画素グループに対応する要素毎にディザマトリックスMを分割するだけの処理である。
図27は、本発明の第3実施例におけるグループ化処理が行われたディザマトリックスMを示す説明図である。このグループ化処理では、図4における4つの画素グループに分割されるものとしている。ディザマトリックスMの各要素に記載された数字は、各要素が属する画素グループを示している。たとえば1行1列の要素は、第1の画素グループ(図4)に属し、2行1列の要素は、第2の画素グループに属する点は第1実施例と同様である。ディザマトリックスMは、イエローインク用のディザマトリックスであるイエローマトリックスMyと、ブラックインク用のディザマトリックスであるブラックマトリックスMkと、で構成されている。
図28は、本発明の第3実施例における4個の分割マトリックスM1〜M4を示す説明図である。分割マトリックスM1は、第1実施例と同様にディザマトリックスMの要素のうち第1の画素グループに属する画素に対応する複数の要素と、空欄となっている複数の要素である空欄要素とから構成されている。空欄要素は、入力階調値に拘わらず常にドットが形成されない要素である。分割マトリックスM2〜M4は、それぞれディザマトリックスMの要素のうち第2〜第4の画素グループに属する画素に対応する複数の要素と、空欄要素とから構成されている。
インク色/マトリックス選択処理(ステップS250)は、インク色と、このインク色に対応するディザマトリックスと、を選択する処理である。この例では、前述のように説明を分かりやすくするために、ブラックインクとイエローインクとで印刷が行われるものとしている。ここでは、ブラックインクと、ブラックインクに対応するディザマトリックスであるブラックマトリックスとが選択されたものとする。
図29は、本発明の第3実施例において評価対象となるドットパターンの一例を示す説明図である。この図では、分割マトリックスM1に対応する第1画素グループと、ブラックインクと、ブラックマトリックスと、が選択されている場合において、評価対象となる3つのドットパターンが示されている。第1のドットパターンは、全てのブラックドットで構成される全画素ブラックパターンDpakである。第2のドットパターンは、第1画素グループに属する印刷画素に形成されるブラックドットと、第1画素グループに属する印刷画素に形成されるイエロードットと、で構成される第1画素グループ混色パターンDp0kyである。第3のドットパターンは、第1画素グループに属する印刷画素に形成されるブラックドットで構成される第1画素グループブラックパターンDp0kである。
第3実施例のディザマトリックス評価処理(ステップS300a)は、印刷画像の形成過程においてほぼ同時に形成される複数色のドットの分散性を考慮して最適化を図るために、複数色のドットで構成されるドットパターンの粒状性指数に着目してディザマトリックスが評価される点で第1実施例と相違する。このため、ステップS330とステップS340とが、ステップS330aとステップS340aとにそれぞれ変更されている。
図30は、本発明の第3実施例におけるディザマトリックス評価処理の処理ルーチンを示すフローチャートである。ステップS310では、第1実施例と同様に決定済み閾値の対応ドットがオンとされる。
図31は、ブラックマトリックスの1〜8番目にドットが形成されやすい閾値が格納された要素に対応する8個の画素の各々にドットが形成された様子を示す説明図である。このようにして構成されるドットパターンDpakは、9番目のドットをどの画素に形成すべきかを決定するために使用される。
図32は、ドットパターンDpakが形成された状態を数値化したマトリックス、すなわちドット密度を定量的に表したドット密度マトリックスDdakを示す説明図である。数字0は、ドットが形成されていないことを意味し、数字1は、ドットが形成されていることを意味する。
図33および図34は、ドットパターンDp0kyと、これに対応するドット密度マトリックスDd0kyを示す説明図である。ドットパターンDp0kyは、ブラックドットとイエロードットとで構成されている。ブラックドットは、ブラックマトリックスの1〜8番目にドットが形成されやすい閾値が格納された要素に対応する8個の印刷画素のうち分割マトリックスM1に対応する印刷画素の各々に形成されるドットである。イエロードットは、イエローマトリックスの1〜8番目にドットが形成されやすい閾値が格納された要素に対応する8個の印刷画素のうち分割マトリックスM1に属する印刷画素の各々に形成されるドットである。
図35および図36は、ドットパターンDp0kと、これに対応するドット密度マトリックスDd0kを示す説明図である。ドットパターンDp0kは、ブラックマトリックスの1〜8番目にドットが形成されやすい閾値が格納された要素に対応する8個の印刷画素のうち分割マトリックスM1に属する印刷画素の各々に形成されるドットである。
ステップS320(図28)では、第1実施例と同様に格納候補要素選択処理が行われる。格納候補要素選択処理とは、評定マトリックスとして選択された分割マトリックスM1の要素の中から閾値の格納要素の候補となる格納候補要素を選択する処理である。
図37は、分割マトリックスM1の要素の中から格納候補要素が選択される様子を示す説明図である。図37では、評定対象となる3つのドットパターンDpak、Dp0ky、Dp0kについて格納候補要素が選択された状態を示す3つのパターンDpak1、Dp0ky1、Dp0k1が示されている。この例では、*印が付された1行3列の格納要素が格納候補要素として選択されている。
格納候補要素の選択は、たとえばブラックマトリックスの閾値の格納要素として決定済みの1行5列と5行3列の格納要素である決定済み要素と、イエローマトリックスの閾値の格納要素として決定済みの3行3列と7行7列の格納要素である決定済み要素と、を除く他の格納要素の全てを第1画素グループから順に選択するようにしても良い。
ステップS330(図30)では、第1実施例と同様に選択された格納候補要素にドットがオンされたとの仮定がなされる。これにより、格納候補要素に9番目にドットが形成されやすい閾値が格納されたときのブラックマトリックスMkの評価を行うことが可能となる。
図38は、図12において8個の画素の各々にドットが形成された状態に加えて格納候補要素に対応する画素(1行3列)にドットが形成された状態を数値化した3つのドット密度マトリックスDdak1、Dd0ky1、Dd0k1を示す説明図である。これらのドット密度マトリックスDdak1、Dd0ky1、Dd0k1において、要素中の数字0は、ドットが形成されていないことを意味し、数字1は、ドットが形成されていることを意味する。
ステップS340a(図30)では、評価値決定処理が行われる。第3実施例の評価値決定処理は、第1〜第4の画素グループ(図4)が評定となるとともに、複数色のドットが評定となる点で第1実施例と相違する。
図39は、第3実施例の評価値決定処理の処理ルーチンを示すフローチャートである。第3実施例の評価値決定処理は、第1実施例の評価値決定処理のステップS342とS348(図19)がそれぞれステップS342aとS348aに変更され、各連続画素グループの粒状性指数算出処理(ステップS344)が、2つのステップS345、S346に入れ替えられている点で第1実施例の評価値決定処理と相違する。
ステップS342aでは、全画素を評定としてブラックドットについて粒状性指数が算出される。具体的には、ドット密度マトリックスDdak1(図38)に基づいて図9(c)の式によって算出される。ステップS345では、第1の連続画素グループを評定としてブラックドットとイエロードットについて粒状性指数が算出される。具体的には、ドット密度マトリックスDd0ky1に基づいて同様に算出される。ステップS346では、第1の連続画素グループを評定としてブラックドットについて粒状性指数が算出される。具体的には、ドット密度マトリックスDd0k1に基づいて同様に算出される。
第3実施例の重み付け加算処理(ステップS348a)では、一例として図40の評価値算出式1に従って重み付け加算処理が行われる。この計算式から分かるように、評価値Ekは、全画素についての粒状性指数Gakに重み付け係数Wak(たとえば4)を乗じた値と、第1〜第4の画素グループのブラックドットについての粒状性指数Gkに重み付け係数Wg1(たとえば1)を乗じた値と、第1〜第4の画素グループのブラックドットとイエロードットについての粒状性指数Gkyに重み付け係数Wg2(たとえば2)を乗じた値と、の和として決定される。なお、式2〜式5に示される式については後述する。
このように、第3実施例では、ブラックドットとイエロードットの双方のドットの形成状態に基づいて格納候補要素が選択されるとともに粒状性指数が小さくなるように、ブラックマトリックスとイエローマトリックスとが設定されるので、ブラックドットとイエロードットが接触しにくくなるとともに、これらのドットを併せた状態のドットパターンの分散性を向上させることができる。さらに、本願発明は、滲みに起因する画質の劣化を抑制することができるので、従来は、滲みが原因で使用できなかったインクの使用をも可能とするという利点もある。
なお、本実施例では、ブラックドットとイエロードットとを例にとって説明したが、たとえば3色以上のドットについて3個以上のディザマトリックスを生成するように構成しても良いし、あるいは、たとえば滲みやすいインク色についてのみ本発明を適用するようにしても良い。さらに、複数(たとえば5色あるいは7色)のドットを複数のグループに分割して、それぞれにディザマトリックスを生成するようにしても良い。
たとえば、ブラック、マゼンタ、およびイエローの3色に着目する場合には、たとえば式2〜式5(図40)が利用可能である。式2は、式1の評価値に加えてブラックドットとマゼンタドットの混色時の粒状性にも着目した評価値算出式である。式3は、さらに、式2の評価値に加えてイエロードットとマゼンタドットの混色時の粒状性にも着目した評価値算出式である。式4は、ブラックドットとイエロードットの混色時の粒状性と、ブラックドットとマゼンタドットの混色時の粒状性と、イエロードットとマゼンタドットの混色時の粒状性と、をそれぞれ相違する重み付けで着目した評価値算出式なので、特定の混色を重視して最適化が可能である。式5は、ブラックドットとイエロードットとマゼンタドットの混色時の粒状性に着目した評価値算出式である。式5は、ブラックドットとイエロードットやマゼンタドットとイエロードットといった2色混合時の粒状性も同時に改善することができるので、式3よりも少ない計算量で同様の効果を得ることができるという利点がある。なお、3色から4色以上(たとえばブラック、シアン、イエロ、マゼンタ)への拡張も同様に可能である。
図41は、本発明の第3実施例の変形例におけるディザマトリックス評価処理の処理ルーチンを示すフローチャートである。この実施例は、評価値決定処理の処理ルーチン(ステップS340a)にステップS347が追加されている点と、重み付け加算処理(ステップS348a)がステップS348bに変更されている点と、が第3実施例の評価値決定処理と異なる。
ステップS347では、ブラックドットとイエロードットが重ねて形成される重畳ドットの粒状性指数が、分割マトリックスM1〜M4に対応する画素グループ毎に算出される。重畳ドットの発生は、ブラックドットとイエロードットの各ドットの形成率が50%を超えると不可避となる。しかし、発明者は、このようなドットの発生も均一に分散されれば、低周波のムラとならず人間の視覚に訴える画質の劣化とはなり難い点に着目し、このような混色ドットパターン(図示せず)をディザマトリックスの評価対象とすることに想到した。
ステップS348bでは、第3実施例と同様に、図42に示されるように重畳ドットで構成される混色ドットパターンの粒状性指数Gky’に所定の重み付けWg3を乗じて追加的に加算される。これにより、混色ドットパターンの分散性をも良くすることができるので、複数色インクを使用することに起因して発生する画質の劣化を効果的に抑制することができる。
なお、本変形例は、ドット密度マトリックスの生成において、双方のドットが形成される要素の値を、数字2あるいは適当な重み付け(たとえば0.75)を乗じた値(たとえば1.5)とすることによっても実現することができる。さらに、重畳ドットにのみ着目して重畳ドットの分散性のみをよくするようにしてもよい。すなわち、Wg3の重み付けを「1」として他の全ての重み付けを「0」とするようにしてもよい。
D−2.第4実施例におけるハーフトーン処理(ディザマトリックスの生成方法):
本発明の第4実施例におけるハーフトーン処理は、以下の方法で生成されたディザマトリックスMを使用することによって実現される。
図43は、本発明の第4実施例におけるディザマトリックス生成処理の処理ルーチンを示すフローチャートである。この実施例は、ディザマトリックス生成処理にマトリックスシフト処理(ステップS50)が追加されている点と、インク色/マトリックス選択処理(ステップS250、S450)が削除されている点と、が第3実施例のディザマトリックス生成処理(図26)と異なる。本発明の第4実施例では、単一の共用ディザマトリックスをシフトさせてブラックドットとイエロードットの双方の形成状態の決定(ハーフトーン処理)に使用される点が上述の各実施例と相違する。
図44は、本発明の第4実施例におけるマトリックスシフト処理(ステップS50)の内容を示す説明図である。マトリックスシフト処理とは、上述のハーフトーン処理に使用される状態と同一の状態にディザマトリックスをシフトさせて配置する処理である。第4実施例の方法では、ブラックドットとイエロードットのハーフトーン処理に使用される単一の共用ディザマトリックスMcが生成される。共用ディザマトリックスMcは、所定の位置に配置されると、ディザマトリックスMc1としてブラックドットの形成状態の決定に使用される。一方、共用ディザマトリックスMcは、所定の位置から所定のシフトが行われると、ディザマトリックスMc2としてイエロードットの形成状態の決定に使用される。
このシフト処理は、本実施例では説明を分かりやすくするために分割マトリックスM1〜M4が相互に一致するように行われている。この図の例では、主走査方向にSx(4画素)だけシフトされるとともに、副走査方向にSy(4画素)だけシフトされている。ただし、このようなシフトは、主走査方向と副走査方向のシフト量が一致する必要はなく、一方の方向だけシフトを行うようにしても良い。さらに、シフトは、並進移動だけでなく、回転移動を含むようにしても良い。なお、本実施例のように分割マトリックスM1〜M4が相互に一致するようにシフトを行えば、ディザマトリックスの生成処理の負担を小さくすることができると言う利点がある。
本発明の第4実施例では、単一の共用ディザマトリックスMcがブラックドットとイエロードットのハーフトーン処理に使用されるので、インク色/マトリックス選択処理(ステップS250、S450)が不要となる。たとえば図44の行と列とが画素位置を示していると仮定すると、1行1列の画素位置でブラックドットのハーフトーン処理で使用される閾値は、主走査方向と副走査方向とにそれぞれ4画素だけシフトされた画素位置である5行5列の画素位置でイエロードットのハーフトーン処理でも使用されることになる。換言すれば、共用ディザマトリックスMcの最上列最左行の閾値は、1行1列の画素位置でブラックドットのハーフトーン処理で使用されるとともに、5行5列の画素位置でイエロードットのハーフトーン処理でも使用されることになる。
図45および図46は、第4実施例における評定ドットパターンDp0kys1と、これに対応するドット密度マトリックスDd0kys1とを示す説明図である。第4実施例における評定ドットパターンDp0kys1およびドット密度マトリックスDd0kys1は、それぞれ第3実施例における評定ドットパターンDp0ky1(図37)およびドット密度マトリックスDd0ky1(図38)に相当するものである。図45および図46の例では、共用ディザマトリックスMcの分割マトリックスM1に属する要素のうち1行5列の要素と7行3列の要素とに格納される閾値が決定済みである。これにより、1行5列の要素と7行3列の要素とに対応する画素にブラックドットが形成されるとともに、1行5列の要素と7行3列の要素とから主走査方向と副走査方向に4画素ずつシフトした5行1列の要素と3行7列の要素とに対応する画素にイエロードットが形成されている。
図45および図46では、さらに、格納候補要素として1行1列の要素が選択されているので(*印参照)、ドット密度マトリックスDd0kys1では、1行1列の要素と、この要素から主走査方向と副走査方向に4画素ずつシフトした5行5列の要素と、にそれぞれドットが形成されていることを意味する数字1が格納されている。このように、1つの閾値の格納要素の決定に基づいてブラックドットとイエロードットの双方の形成状態が決定されるので、インク色/マトリックス選択処理(ステップS250)を行うことなく、ブラックドットとイエロードットのドットの形成状態を決定する閾値の格納位置を同時に決定することができる。
このように、第4実施例では、単一の共用ディザマトリックスMcをシフトさせて配置することによってハーフトーン処理が行われることが想定されるとともに、このような想定されたハーフトーン処理において複数色のドットの総合的な分散性を良くする方法が実現されている。このようにして生成された共用ディザマトリックスMcは、ハーフトーンに使用するディザマトリックスの数を少なくして印刷システムの処理負担やハードウェア資源の負担を小さくすることができるという利点を有する。さらに、第4実施例のディザマトリックスの生成方法は、インク色/マトリックス選択処理(ステップS250)に起因する処理を削減してディザマトリックス生成処理の負担を小さくすることができるという利点をも有する。
図47は、第4実施例の生成方法で生成された単一の共用ディザマトリックスMcの他の使用方法の一例を示す説明図である。この使用例では、シアンドット、マゼンタドット、およびイエロードットのハーフトーン処理が行われる。第4実施例では、シアンドットの形成状態の決定には、共用ディザマトリックスMcを所定の位置に配置することによって設定されたディザマトリックスMc1が使用され、マゼンタドットの形成状態の決定には、共用ディザマトリックスMcを所定の位置から主走査方向と副走査方向に6画素ずつシフトして配置することによって設定されたディザマトリックスMc2が使用され、イエロードットの形成状態の決定には、共用ディザマトリックスMcを所定の位置から主走査方向と副走査方向に6画素ずつシフトして配置することによって設定されたディザマトリックスMc3が使用される。
この例では、ディザマトリックスMc1で形成状態が決定されるドットと、ディザマトリックスMc2で形成状態が決定されるドットとの間の混色の最適性と、ディザマトリックスMc2で形成状態が決定されるドットと、ディザマトリックスMc3で形成状態が決定されるドットとの間の混色の最適性と、が確保されていることになる。すなわち、シアンドットとマゼンタドットとの間の混色の最適性と、マゼンタドットとイエロードットとの間の混色の最適性と、が確保されていることになるので、マゼンタドットの混色が画質劣化に比較的に大きな影響を有する場合に画質を顕著に向上させることができる。マゼンタドットの混色が画質劣化に比較的に大きな影響を有する場合とは、たとえばマゼンタインクが他のインクと滲みやすい性質を有するような場合である。
ただし、第4実施例の生成方法を拡張して、さらに、シアンドットとイエロードットとの間の混色の最適性にも配慮して共用ディザマトリックスMcを生成するようにしても良い。上述の最適化は、シアンドットとマゼンタドットとの間の混色の最適性と、マゼンタドットとイエロードットとの間の混色の最適性とに、ディザマトリックスの設計自由度を重点的に配分することを意味する。このため、シアンドットとイエロードットとの間の混色の最適性はむしろ低下する傾向にある点に留意して、必要に応じてシアンドットとイエロードットとの間の混色にも着目して評価を行うことが望ましいからである。
このように、複数のインク色を用いて印刷画像を生成するためのハーフトーン処理においては、複数のインク色毎にディザマトリックスを設定するようにしても良いし、あるいは、一部のディザマトリックスを共用するようにしても良い。さらに、複数のインク色の少なくとも一部をグループ分けして、グループ毎にディザマトリックスを準備するようにしても良い。
D−3.第5実施例におけるハーフトーン処理(誤差拡散法):
図48は、第5実施例における誤差拡散法のフローチャートを示す説明図である。この誤差拡散法は、第3、第4実施例と同様の効果を得るためのに誤差が拡散される点で第2実施例の誤差拡散法と相違する。なお、第5実施例は、第2実施例との相違が大きいので第2実施例とは別個に改めて以下に説明する。
ステップS900aでは、着目画素に対して処理済みの他の複数の画素から拡散されている拡散誤差が読み込まれる。本実施例では、説明を分かりやすくするためにブラックドットとイエロードットとについて誤差拡散処理が行われ、イエロードットとの混色を考慮しつつブラックドットのドットの形成状態が決定されるものとしている。拡散誤差は、ブラックドットについては全体拡散誤差ERakとグループ拡散誤差ERgkとを含み、イエロードットについてはイエローグループ拡散誤差ERgyを含む。ここで、本変形例では、説明を分かりやすくするためにイエロードットについては、予め組織的ディザ法等によってハーフトーン処理が完了しているものとしている。
全体拡散誤差ERakは、前述の誤差拡散全体マトリックスMa(図22)を使用して拡散されたブラックドットについて拡散された誤差である。ただし、本実施例では、第1〜第4の複数の画素グループ(図4)の各々にも好ましい分散性を持たせるために、ブラックインクについてのグループ拡散誤差ERgkが追加的に拡散されている点で、従来の誤差拡散法と異なる。さらに、本実施例の誤差拡散法では、イエロードットのグループ拡散誤差ERgyの加算によって、イエロードットとブラックドットの双方のドットパターンを含むドットパターンの全体に、誤差拡散の本来の性質として得られる好ましいドットの分散性を与えるように構成されている。イエロードットのグループ拡散誤差ERgyは、前述のように予め決定されたイエロードットの形成状態に基づいて算出することができる。
図49は、着目画素と同一の画素グループへのグループ拡散誤差ERgk、ERgyを行うための誤差拡散同一主走査グループマトリックスMg1’を示す説明図である。誤差拡散同一主走査グループマトリックスMg1’は、第1〜第4の複数の画素グループのうち着目画素と同一の画素グループに誤差を追加的に拡散するための誤差拡散マトリックスである。4個の分割マトリックスM1〜M4は、図12に示されたものと同一で、第1〜第4の複数の画素グループの位置関係を表すために示されたものである。
たとえば着目画素が第1の画素グループに属する場合には、分割マトリックスM1で「1」の値が格納された要素に対応する画素に誤差が拡散されることになる。誤差拡散同一主走査グループマトリックスMg1’は、このような画素に誤差を拡散するように誤差拡散のための係数が格納された誤差拡散マトリックスとして構成されている。一方、着目画素が同一の主走査(パス)で形成される第2〜第4の画素グループに属する場合においても、着目画素と他の画素の相対的な位置関係が同じであるため、同一の誤差拡散マトリックスが利用可能であることが分かる。
このように、本実施例では、誤差拡散全体マトリックスMaによる誤差拡散によって最終的なドットパターンに所定の特性(好ましい分散性)を持たせるとともに、誤差拡散同一主走査グループマトリックスMg1’による誤差拡散によって複数の画素グループの各々についてブラックドットとイエロードットの双方で構成されるドットパターンに所定の特性を持たせるように誤差が拡散されている。
ステップS910aでは、全体拡散誤差ERakおよびグループ拡散誤差ERgk、ERgyの重み付き平均値である平均拡散誤差ERavekが算出される。本実施例では、一例として全体拡散誤差ERakとグループ拡散誤差ERgk、ERgyの重み付けをそれぞれ「4」と「1」としている。平均拡散誤差ERavekは、全体拡散誤差ERakに重み付け「4」を乗じた値と、ブラックのグループ拡散誤差ERgkに重み付け「1」を乗じた値と、イエローのグループ拡散誤差ERgyに重み付け「1」を乗じた値との和を、ブラックドットについての重み付けの総和「5」で除した値として算出される。
イエロードットについての重み付け「1」を除外したのは、イエロードットの拡散誤差の和が広域においてはゼロとなることが分かっているからである。すなわち、イエロードットのハーフトーン処理が適切に行われ、正確に階調表現が行われていれば、広域においては誤差の総和はゼロとなるので、イエロードットの拡散誤差がブラックドットの配置のみに影響を与え、ドット数に影響を与えないからである。逆に、イエロードットについての重み付け「1」を除外しなければ、重み付けの総和「5」で除した値が過度に小さくなってしまうのでブラックドットのドット数が適正な階調表現に必要な数よりも少なくなってしまうことになる。なお、イエロードットについての重み付けは、「1」に限らず設計パラメータとして種々の値を取り得る。
ステップS920aでは、入力階調値Dtkと平均拡散誤差ERavekとが加算されて正データDcが算出される。
ステップS930では、算出された補正データDckが予め設定されている閾値Threと比較される。この比較の結果、補正データDckが閾値Threよりも大きい場合には、ドットを形成する旨が決定される(ステップS940)。一方、補正データDckが閾値Threよりも小さい場合には、ドットを形成しない旨が決定される(ステップS950)。
ステップS960aでは、階調誤差が算出されるとともに、階調誤差が周囲の未処理の画素に拡散される。誤差の拡散は、全体拡散誤差機構と、後述する2つのグループ拡散誤差機構の3つの誤差拡散機構によって拡散される。全体拡散誤差機構では、ブラックドットの入力階調値データDtkと全体拡散誤差ERakの和と、ドットの形成の有無の決定によって生じた現実の階調値との間の差が拡散される。たとえば、入力階調値データDtkと全体拡散誤差ERakの和の階調値が「223」で、ドットの形成によって現実に生じた階調値が255であるとすると、階調誤差は、「−32」(=223−255)となる。本ステップ(S960a)では、誤差の拡散は、誤差拡散全体マトリックスMa(図22)を用いて行われる。
具体的には、着目画素の右隣の画素については、着目画素で生じた階調誤差「−32」に対して誤差拡散全体マトリックスMa(図22)のうち右隣の画素に対応する係数「7/48」を乗じた値「−224/48」(=−32×7/48)が拡散される。さらに、着目画素の2つの右隣の画素については、着目画素で生じた階調誤差「−32」に対して誤差拡散全体マトリックスMaのうち2つの右隣の画素に対応する係数「5/48」を乗じた値「−160/48」(=−32×5/48)が拡散される。このような誤差拡散は、従来技術の誤差拡散法と同様に、誤差拡散法の本来的な特性として、最終的なドットパターンに所定の特性を持たせるものである。
ステップS970aでは、従来の誤差拡散とは異なり、誤差拡散同一主走査グループマトリックスMg1’(図49)を用いたグループ誤差拡散が追加的に行われる。具体的には、2つのグループ拡散誤差機構、すなわち、着目画素と同一の画素グループへのブランクドットについてのグループ拡散誤差機構(ブラックグループ拡散機構)と、着目画素と同一の画素グループへのイエロードットについてのグループ拡散誤差機構(イエログループ拡散機構)とによって誤差が追加的に拡散される。ブラックグループ拡散機構では、ブラックドットの入力階調値データDtkとブラックドットについてのグループ拡散誤差ERgkの和と、ブラックドットの形成の有無の決定によって生じた現実の階調値との間の差が拡散される。一方、イエログループ拡散機構では、イエロードットの入力階調値データDty(図示せず)とイエロドットについてのグループ拡散誤差ERgyの和と、イエロドットの形成の有無の決定によって生じた現実の階調値との間の差が拡散される。本ステップ(S970a)では、誤差の拡散は、いずれの誤差拡散機構でも誤差拡散同一主走査グループマトリックスMg1’(図49)を用いて全体拡散誤差機構と同様に行われる。
このようなグループ誤差拡散は、第1〜第4の複数の画素グループ(図4)の各々にも所定の特性を持たせるとともに、これらの各々に形成されるドットの数を均等に近づける働きも有する。このように、複数の画素グループの各々に形成されるドットの数を均等に近づける働きを有する理由は以下の通りである。かかる追加的な誤差拡散は、第1〜第4の複数の画素グループの各々の内部で閉じたものなので、他のグループには誤差が拡散されないことになる。このような構成では、入力階調値の総和とドットで表現される階調値の総和が各グループで一致するので、各グループの入力階調値の総和が同一である場合には、ドット数が均等に近づくことになるからである。
このように、第5実施例の誤差拡散法では、着目画素と同一の画素グループへの追加的な誤差拡散と、他色ドットで発生するグループ誤差の追加的な拡散によって第3、第4実施例と同一の目的を達成することが出来る。
なお、上述の方法では、イエローグループ拡散誤差ERgyを用いて、ブラックドットとイエロドットの双方のドットの分散性を改善させているが、たとえば本願発明者が開示した技術(再公表98−003341)を応用して双方のドットの分散性を改善させるようにしても良い。具体的には、イエロードットの入力階調値データDty(図示せず)と、イエロドットの形成の有無の決定によって生じた現実の階調値との間の差(2値化誤差)を、グループ拡散誤差ERgkに加算することによっても双方のドットの分散性を改善させることが可能である。ただし、この構成は、同一の主走査では、ブラックドットとイエロードットが同一のグループに属するととともに、いずれのグループでもイエロードットの誤差の平均値がゼロとなるようにイエロードットのハーフトーン処理がなされている場合に、顕著な効果を奏する。
図50は、第5実施例の変形例における誤差拡散法のフローチャートを示す説明図である。この変形例は、同一の画素グループや同一の画素グループ群への誤差の拡散をインク色毎に一度に行うことができる点で第5実施例と相違する。第5実施例の変形例は、第2実施例に対する前述の変形例と同様の変形を行っている。
この変形例は、第5実施例の3つのステップS900aをステップS900bに入れ替えるとともに、他の2つのステップS910a、S970aが削除されている点で第5実施例と異なる。この変形例は、拡散誤差の線形性を利用して第5実施例を拡張したものであるため、処理の内容は、第5実施例と数学的に等価である。
ステップS900bでは、誤差拡散合成マトリックスMg3(図51)を用いて拡散された平均拡散誤差ERavekが読み込まれる。平均拡散誤差ERavekは、第5実施例のステップS910aで算出された値と同一である。誤差拡散合成マトリックスMg3は、誤差拡散合成マトリックスMg3と、誤差拡散同一主走査グループマトリックスMg1’と、を所定の重み付けで合成することによって構成された誤差拡散マトリックスである。所定の重み付けは、順に「4」対「1」である。
一方、イエロードットの拡散誤差は、第5実施例のように、誤差拡散同一主走査グループマトリックスMg1’を用いて算出されたグループ拡散誤差ERgyとして単純に加算されることになる。
誤差拡散合成マトリックスMg3は、誤差拡散合成マトリックスMg3と、重み付け調整済み誤差拡散同一主走査グループマトリックスMg1a’の各係数の分母と分子とを単純に加算することによって構成されたマトリックスである。重み付け調整済み誤差拡散同一主走査グループマトリックスMg1a’は、このような加算を可能とするために誤差拡散同一主走査グループマトリックスMg1’の各係数の分母と分子とに1.5を乗じたものである。これにより、誤差拡散合成マトリックスMg3の分子の総和は48となり、重み付け調整済み誤差拡散同一主走査グループマトリックスMg1a’の分子の総和は12となるので、分子の総和の比は、誤差拡散合成マトリックスMg3と誤差拡散同一主走査グループマトリックスMg1a’とで「4」対「1」となっている。一方、各係数の分母を60(=48+12)とすることによって、拡散誤差の係数の総和を「1」とすることができる。なお、誤差拡散合成マトリックスMg3では、分子を整数とするため、分母を120としている。
この変形例は、誤差の拡散処理の回数を削減することができるので処理負担が小さいという利点を有する。さらに、この変形例は第5実施例と数学的に等価なので、複数の画素グループの各々に形成されるドットの数を均等に近づける働きを有する点も第5実施例と同様である。
D−4.第6実施例におけるハーフトーン処理(誤差拡散法):
図52は、第6実施例における誤差拡散法のフローチャートを示す説明図である。この変形例は、特に双方向印刷においては、形成されるドットの色順が往方向と復方向とで逆になるので、特に混色に起因する色ムラの低減に関して顕著な効果を奏することができる。たとえば印刷ヘッド10、12(図3)を用いて双方向印刷を行う際には、印刷ヘッド10、12が往方向に主走査を行っている際には、K、C、M、Yの順にドットが形成され、一方、印刷ヘッド10、12が復方向に主走査を行っている際には、Y、M、C、Kの順にドットが形成されるので、いわゆる反転ムラを生じることになる。この実施例は、Y、M、C、Kのドットをトータルで分散させることができるので、このような反転ムラを効果的に抑制することができる。
第6実施例は、第5実施例の3つのステップS900a、S910a、S970aを、それぞれステップS900b、S910b、S970bに入れ替えることで構成されている。
ステップS900bは、同一の主走査方向でドットが形成される2つの要素グループ群M13、M24(図53)に対応する画素についても、第1〜第4の画素グループと同様に誤差が拡散される点で第5実施例と異なる。ここで、要素グループ群M13は、双方向印刷において、同一の主走査方向(たとえば図2において右方向)で形成される画素に対応する2つの分割マトリックスM1、M3を合成して構成された要素グループ群である。要素グループ群M24は、双方向印刷において、同一の主走査方向(たとえば図2において左方向)で形成される画素に対応する2つの分割マトリックスM2、M4を合成して構成された要素グループ群である。このようなグループの合成は、双方向印刷において、同一方向に形成されるドットパターンが一体としてシフトしやすいことに着目して、誤差拡散においても一体として取り扱うことを可能とするために行われたものである。
ステップS910bでは、全体拡散誤差ERakと、ブラックドットのグループ拡散誤差ERg1k、ERg2と、イエロードットのグループ拡散誤差ERg1y、ERg2yと、の重み付き平均値である平均拡散誤差ERavekが算出される。グループ拡散誤差ERg1kは、第5実施例におけるグループ拡散誤差ERgkに相当する拡散誤差である。グループ拡散誤差ERg2kは、要素グループ群M13あるいは要素グループ群M24において拡散される拡散誤差である。一方、グループ拡散誤差ERg1yは、第5実施例におけるグループ拡散誤差ERgyに相当する拡散誤差である。グループ拡散誤差ERg2yは、要素グループ群M13あるいは要素グループ群M24において拡散される拡散誤差である。本実施例では、一例として全体拡散誤差ERaと、グループ拡散誤差ERg1k、グループ拡散誤差ERg2kと、グループ拡散誤差ERg1y、グループ拡散誤差ERg2yと、の重み付けをそれぞれ「4」と「1」と「1」と「2」と「2」としている。平均拡散誤差ERavekは、全体拡散誤差ERakに重み付け「4」を乗じた値と、グループ拡散誤差ERg1k、ERg1yに重み付け「1」を乗じた値と、グループ拡散誤差ERg2k、ERg2yに重み付け「2」を乗じた値と、の和を、ブラックドットについての重み付けの総和「7」で除した値として算出される。
ステップS970bでは、第5実施例の誤差拡散における誤差拡散に加えて、さらに誤差拡散同一主走査方向グループマトリックスMg2(図53)を用いた誤差拡散が追加的に行われる。前述のように、要素グループ群M13、M24に対応する画素グループ群の各々にも好ましい分散性を持たせるためである。
ブラックドットに関するグループ誤差拡散は、具体的には以下のように処理される。たとえば階調誤差を「−32」とすると、着目画素の右隣の画素については、誤差拡散全体マトリックスMa(図22)のうち右隣の画素に対応する係数「7/48」を乗じた値「−224/48」(=−32×7/48)と、階調誤差「−32」に対して誤差拡散同一主走査グループマトリックスMg1’(図49)のうち右隣の画素に対応する係数「0」を乗じた値「0」(=−32×0)と、階調誤差「−32」に対して誤差拡散同一主走査方向グループマトリックスMg2(図53)のうち右隣の画素に対応する係数「8/24」を乗じた値「−256/24」(=−32×8/24)が拡散される。イエロードットに関するグループ誤差拡散も、予め決定されたイエロードットの形成状態に基づいて、誤差拡散同一主走査方向グループマトリックスMg2(図53)を用いて同様に処理される。
このように、第6実施例における誤差拡散法では、着目画素と同一の主走査方向で形成されるドットが形成される画素グループ群への追加的な誤差拡散によって双方向印刷の画質を向上させることができる。
なお、上述の各誤差拡散の各実施例やその変形例では、2値化が行われているが、たとえば複数の閾値との比較によって多値化を行うような構成にも本願発明は適用可能である。
E.変形例:
以上、本発明のいくつかの実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々なる態様での実施が可能である。例えば、本発明は、以下のような変形例についてのディザマトリックスの最適化が可能である。
E−1.第1変形例:上述の実施例では、ディザマトリックスの評価尺度として粒状性指数が使用されているが、たとえば後述するようなRMS粒状度を使用するようにしても良い。この評価尺度は、ドット密度値に対して、ローパスフィルタ(図54)を用いてローパスフィルタ処理を行うとともに、ローパスフィルタ処理がなされた密度値に対して、所定の計算式(図55)を用いて標準偏差を算出することによって決定することができる。
E−2.第2変形例:本発明は、複数の印刷ヘッドを有するプリンタ、たとえば図56に示されるラインプリンタにも適用することができる。図56は、複数の印刷ヘッド251、252を有するラインプリンタ200Lによる印刷状態を示す説明図である。印刷ヘッド251と印刷ヘッド252とは、それぞれ上流側と下流側とに複数個配置されている。ラインプリンタ200Lは、主走査を行うことなく副走査送りのみを行って高速に出力するプリンタである。
図56の右側には、ラインプリンタ200Lによって形成されるドットパターン500が示されている。丸の中の数字1、2は、ドットの形成を担当するのが印刷ヘッド251、252のいずれかであるか示している。具体的には、丸の中の数字が「1」と「2」のドットは、それぞれ印刷ヘッド251と印刷ヘッド252とで形成される。
ドットパターン500の太線の内部は、印刷ヘッド251と印刷ヘッド252の双方でドットが形成されるオーバーラップ領域である。オーバーラップ領域は、印刷ヘッド251と印刷ヘッド252との間のつなぎ目を滑らかにするとともに、印刷ヘッド251、252の両端部で生ずるドット形成位置の誤差を目立たなくするために設けられているものである。印刷ヘッド251、252の両端部では、印刷ヘッド251、252の製造個体差が大きくなってドット形成位置の誤差も大きくなるので、これを目立たなくすることが要請されるからである。
このような場合にも、印刷ヘッド251、252の相互の位置関係の誤差によって、上述の往動時と復動時とでドットの形成位置がずれた場合と同様の現象が生ずることになるので、印刷ヘッド251で形成される画素位置のグループと、印刷ヘッド252で形成される画素位置のグループとして上述の実施例と同様の処理を行うことによって画質の向上を図ることができる。
E−3.第3変形例:上述の実施例では、図4に示されるように4回の主走査を1サイクルとして印刷画像が形成されているが、たとえば図57〜図59に示されるような8回の主走査を1サイクルとして印刷画像を形成するような印刷にも適用することができる。本発明は、主走査と副走査とを行いつつ一定あるいは可変のサイクルで印刷画像を形成する印刷に適用することが可能である。
E−4.上述の実施例や変形例では、プリンタで使用可能な複数色のドットのうち2色以上のドットで構成されるドットパターンの粒状性指数やRMS粒状度を使用して評価値を算出しているが、たとえば、ローパスフィルタ処理後のドット密度が低い画素に対応する要素に閾値を順に格納するポテンシャル法を利用するようにしても良い。なお、ローパスフィルタを使用する場合には、混色の影響に起因する画質劣化の程度に応じて、上述の重み付けだけでなくローパスフィルタの範囲を調整するようにしても良い。たとえばドットの分散性よりも接触や重なりだけを重点的に抑制したい場合には、ローパスフィルタの範囲を小さくすることによって対応することができる。
なお、本願発明の「マトリックス評価値」は、一般に、複数色のドットのうち特定の2色以上のドットの接触の程度を定量化した値を使用して算出された評価値であれば良い。さらに、特定の2色以上のドットの接触の程度を定量化した値は、特定の2色以上のドットで構成されるドットパターンと、結果としてドットの接触の程度が小さくなる状態(ブルーノイズ特性やグリーンノイズ特性)との間の相関係数とするようにしても良い。
E−5.上述の実施例では、1個の閾値の格納要素毎に評価処理が行われているが、たとえば複数個の閾値の格納要素を同時に決定するような場合にも本発明は、適用することができる。具体的には、たとえば上述の実施例において6番目までの閾値の格納要素が決定されていて、7番目と8番目の閾値の格納要素を決定するような場合にも7番目の閾値の格納要素にドットが追加された場合の評価値と、7番目と8番目の閾値の格納要素にそれぞれドットが追加された場合の評価値とに基づいて格納要素を決定するようにしても良いし、あるいは7番目の閾値の格納要素のみを決定するようにしても良い。
E−6.上述の実施例では、粒状性指数やRMS粒状度に基づいてディザマトリックスの最適性を評価しているが、たとえばドットパターンに対してフーリエ変換を行うとともにVTF関数を用いてディザマトリックスの最適性を評価するように構成しても良い。具体的には、ゼロックスのDooleyらが用いた評価尺度(Grainess scale:GS値)をドットパターンに適用して、GS値によってディザマトリックスの最適性を評価するように構成しても良い。ここで、GS値とは、ドットパターンに対して2次元フーリエ変換を含む所定の処理を行って数値化するとともに、視覚の空間周波数特性VTFを乗じるフィルタ処理を行った後に積分することによって得ることができる粒状性評価値である。
E−7.上述の実施例では、閾値の格納要素を順に決定するように構成されているが、たとえば予め準備された初期状態としてのディザマトリックスを調整することによってディザマトリックスを生成するように構成しても良い。たとえば、入力諧調値に応じて画素毎のドットの形成の有無を決定するための複数の閾値を各要素に格納する初期状態としてのディザマトリックスを準備するとともに、各要素に格納された複数の閾値の一部を、ランダムにあるいは組織的に決定された方法で他の要素に格納された閾値と入れ替え、その入替の前後の評価値に基づいて入れ替えるか否かを決定してディザマトリックスを調整して生成するようにしても良い。
E−8.上述の実施例では、ディザマトリックスに設定されている閾値と画像データの階調値とを画素毎に比較することによって、画素毎にドット形成の有無を判断しているが、たとえば閾値と階調値の和を固定値と比較してドット形成の有無を判断するようにしても良い。さらに、閾値を直接使用することなく閾値に基づいて予め生成されたデータと、階調値とに応じてドット形成の有無を判断するようにしても良い。本発明のハーフトーン処理は、一般に、各画素の階調値と、ディザマトリックスの対応する画素位置に設定された閾値とに応じてドットの形成の有無を判断するものであれば良い。
E−9.上述の実施例では、連続する主走査で形成されるドットの分散性の改善(第1、第2実施例)と、同一主走査で形成される複数色ドットの分散性の改善と(第3〜第6実施例)によって、別々に高画質化が図られているが、両者は、組み合わせて実装することも可能である。たとえば連続する主走査で形成されるドットの接触に起因して発生する混色に起因する画質劣化を抑制することも可能である。