(57)【要約】【課題】  多値誤差拡散処理におけるドット形成のばらつきによる画質劣化要因を除去し、画質を向上させる。【解決手段】  同一の出力レベルで複数のドット配置の種類をもつ記録装置における量子化において、複数のドット配置の種類を広域的（マクロ的）に発生する確率を同程度にするため、画素における記録ドットの位置毎に誤差拡散の誤差を管理する。【選択図】  図１
2006082411.tif 000002
【特許請求の範囲】
【請求項１】
画素を複数の同一色記録ドットにより階調を表現する記録方式において、
画素における記録ドットの位置毎に誤差拡散の誤差を管理すること、
を特徴とする誤差拡散処理。
【請求項２】
注目画素の入力値と、前記注目画素の周辺画素から伝播する記録ドットの位置毎の誤差と、
を合計した合計値に応じて出力のレベルを決定すること、
を特徴とする請求項１に記載の誤差拡散処理。
【請求項３】
同一の出力のレベルに対して、記録ドットの位置に毎の誤差を比較して出力するドットの位置構成を決定すること、
を特徴とする請求項１もしくは請求項２に記載の誤差拡散処理。
【請求項４】
出力するドットの位置構成に応じて、前記記録ドットの位置毎に誤差伝播量を決定すること、
を特徴とする請求項1から請求項３いずれかに記載の誤差拡散処理。
【請求項５】
画素を複数の同一色記録液滴により階調を表現する記録方式において、
画素における前記記録液滴を複数の記録素子郡で形成する記録液滴記録手段と、
前記複数の記録素子郡毎に誤差拡散の誤差を管理する誤差拡散処理手段と、
を有することを特徴とする記録装置。
【請求項６】
誤差拡散処理手段は、注目画素の入力値と、前記注目画素の周辺画素から伝播する前記複数の記録素子郡毎の誤差と、を合計した合計値に応じて出力のレベルを決定する処理、
を有することを特徴とする請求項５に記載の記録装置。
【請求項７】
誤差拡散処理手段は、同一の出力のレベルに対して、前記複数の記録素子郡毎の誤差を比較して出力する記録素子を決定する処理、
を有することを特徴とする請求項５から請求項６に記載の記録装置。
【請求項８】
前記複数の記録素子郡の使用に応じて、前記複数の記録素子郡毎に誤差伝播量を決定する処理、を有することを特徴とする請求項５から請求項７に記載の記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対称形インクジェット記録における多値画像の誤差拡散処理による３値化以上の量子化処理に関するものである。
【背景技術】
【０００２】
誤差拡散処理は画像の表示装置および印字装置に広く使われている。その中でもインクジェット記録装置において誤差拡散処理は画像の品位に対して重要な要因となっている。今日のインクジェット記録装置は１画素に対して塗付する液滴の数によって複数の階調表現を行う技術が提供されている。
【０００３】
最も汎用性のある液滴の使い方としては、第１レベルがインク滴なし、第２レベルが１つのインク滴、第３レベルが２つのインク滴、で表現する３値表現である。また、最高レベルを２つのインク滴で構成する場合、画素に対してインク滴で形成される２つのドットを市松状に配置するのが被覆率の観点で最も効率がよい。
【０００４】
多値の画像を３値化する際には誤差拡散が用いられる（特許文献１参照）。従来の誤差拡散における３値化は入力に対して第１と第２の２つの閾値を持ち、３値の出力を０、１、２とすると、入力が第１の閾値未満の場合には出力を０、入力が第１の閾値以上で第２の閾値未満の場合には出力を１、入力が第２の閾値以上の場合には出力を２としている。各出力による出力値の多値換算レベルは、出力が１である第１の出力値の場合は入力の最高値の１／２とし、出力が２である第２の出力値の場合は入力の最高値とすることが一般的である。またこの際に第１の閾値は入力の最高値の１／４とし、第２の閾値は入力の最高値の３／４とするのが一般的である。
【特許文献１】特開２００２−１０１３０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、２つのドットを市松状に配置をすると、第２レベルで１つのインク滴を配置する場合に、左右（上下）のどちらか一方に配置しなければならない。すなわち、３値化で第２レベルの出力を得た場合に２つの配置のどちらかに決める手段が必要である。最も一般的な手法としてどちらか一方に固定する手法である。しかし、この場合にはノズル列毎に使用頻度の偏りが生じる。
【０００６】
そこで本発明は、同一の出力レベルで複数のドット配置の種類をもつ記録装置における量子化において、前記複数のドット配置の種類を広域的（マクロ的）に発生する確率を同程度にする方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の記録装置は、複数の記録ドット及び配置の異なる複数のドットで単位画素を構成する記録時の誤差拡散による量子化手段において、複数のドット配置ごとに誤差を管理し、前記複数のドット配置に対するドットの発生確率が同じであることを特徴とする。
【発明の効果】
【０００８】
本発明は、３値以上の誤差拡散による量子化において、同一の出力レベルで複数のドット配置の種類をもつ記録装置における量子化において、前記複数のドット配置の種類を広域的（マクロ的）に発生する確率を同程度にする方法を提供することが可能となった。
【０００９】
また、２列の記録素子群を広域的（マクロ的）に使用する確率を同程度したことで、記録素子群がもつ記録ドットの位置精度およびドット形状に起因するムラを平滑化する効果も得られる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施形態を図面に基づいて説明する。
【００１１】
（第１の実施形態）
本アルゴリズムで処理される画像において、各画素は横をX座標、縦をY座標で表し、画像左上を原点（X、Y）＝（０、０）とし、画像右下を（X、Y）＝（Xmax、Ymax）とする。すなわち、右側の方の画素ほどＸが大きく、下側の画素ほどＹが大きくなる。
【００１２】
また、図２には処理の対象となる画像における画素の誤差拡散処理に対する入力と出力の関係を説明する説明図である。
【００１３】
各画素の入力レベルはP（X、Y）で表すこととし、各画素に対して３値化による画像の画素種類はPout（X、Y）とする。前記P（X、Y）は人間が視覚的に判別限界である２５６階調とし０から２５５の整数で表現して取り扱うこととする。
前記Pout（X、Y）は、“００”、“０１”、“１０”、“１１”の数値で表現して取り扱う。
【００１４】
ここで、“００”は空白画素とする。“０１”は右側列の記録素子を用いて１ドットを形成する。“１０”は左側列の記録素子を用いて１ドットを形成する。“１１”は右側列の記録素子及び左側列の記録素子を用いて２ドットを形成する。なお、“０１”と“１０”はともに１ドットで構成される画素なので同じ階調を表現することになる。
【００１５】
誤差拡散による３値化で用いる第１の閾値をLth1、第２の閾値をLth2とする。３値化により第２のレベルを出力した場合の画素の多値による出力レベルをＬ１、３値化により第３のレベルを出力した場合の画素の多値による出力レベルをＬ２とする。また、３値化により第１のレベルを出力した場合の画素の多値による出力レベルは０である。
【００１６】
本実施形態では、Lth1＝６４、Lth2＝１９２、Ｌ１＝１２７、Ｌ２＝２５５とした。
【００１７】
図３は前記P（X、Y）に対する、記録ドットの配置を説明する図である。
【００１８】
“００”は空白画素としてドットは配置しない。
【００１９】
“０１”は右側列の記録素子を用いて画素の右下に１ドットを形成する。
【００２０】
“１０”は左側列の記録素子を用いて画素の左上に１ドットを形成する。
【００２１】
“１１”は右側列の記録素子及び左側列の記録素子を用いて、右下に１ドット、左上に１ドットを形成する。
【００２２】
以後、右下に１ドットを下側とし、左上に１ドットを上側として説明する。
【００２３】
図１は本発明に用いる３値化のアルゴリズムを説明するフローチャートである。
【００２４】
本アルゴリズムにおいて、各画素に振りまかれる誤差を上側と下側で独立して扱うこととし、上側に振りまかれる誤差をEU(X、Y)、下側に振りまかれる誤差をED(X、Y)とする。
【００２５】
また、誤差拡散により周辺画素に誤差を振りまく際の配分は、右の画素をＡ、右下の画素をＢ、下の画素をＣ、左下の画素をＤとする。
【００２６】
図１において、まず１００１で処理を開始する。１００２で処理を行う画素のＹ座標を０すなわち上端とする。１００３で処理を行う画素のＸ座標を０すなわち画像の左端とする。まず、１００４で元の画素の画素レベルP（X、Y）と、周辺画素の３値化で発生する上側の誤差EU(X、Y)、及び下側の誤差ED(X、Y)との足し合わせをP‘（X、Y）、すなわち、
P‘（X、Y）＝P（X、Y）＋EU(X、Y)＋ED(X、Y)                （１）
の足し合わせを行い、１００５に進む。
【００２７】
１００５では処理を行う画素と３値化で用いる第１の閾値の比較を行う。
【００２８】
この際の比較は前記P‘（X、Y）と３値化で用いる第１の閾値Ｌth1の比較式
P‘（X、Y）≧Ｌth1                                        （２）
で判断される。
【００２９】
（２）式の比較式が偽の場合は１００８に進む。１００８では、処理画素の周辺画素の誤差を含んだ画素レベルが第１の閾値より小さいことになり、３値化による出力は第１レベルであり、出力する画素の種類であるPout（X、Y）を“００”とする。さらに１００９に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝P（X、Y）/2＋EU(X、Y)                            （３）
として算出して、１０１０に進む。１０１０では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝P（X、Y）/2＋ED(X、Y)                            （４）
として算出して、１０２０に進む。
【００３０】
（２）式の比較式が真の場合は１００６に進む。１００６では処理を行う画素と３値化で用いる第２の閾値の比較を行う。この際の比較は前記P‘（X、Y）と３値化で用いる第２の閾値Ｌth2の比較式
P‘（X、Y）≧Ｌth2                                        （５）
で判断される。
【００３１】
（５）式の比較式が偽の場合は１００７に進む。この場合、処理画素の周辺画素の誤差を含んだ画素レベルが第１の閾値以上で第２の閾値より小さいことになり、３値化による出力は第２レベルである“０１”または“１０”である。１００７では、出力する画素の種類を、次式
EU（X、Y）＞ED（X、Y）                                    （６）
で判断する。
【００３２】
（６）式の比較式が偽の場合は、１０１１に進む。１０１１では出力する画素の種類であるPout（X、Y）を“０１”とする。さらに１０１２に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝P（X、Y）/２＋EU(X、Y)
として算出して、１０１３に進む。１０１３では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝P（X、Y）/２＋ED(X、Y)−Ｌ１                      （７）
とし算出して、１０２０に進む。
【００３３】
（６）式の比較式が真の場合は１０１４に進む。１０１４では出力する画素の種類であるPout（X、Y）を“１０”とする。さらに１０１５に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝P（X、Y）/２＋EU(X、Y)−Ｌ１                      （８）
として算出て、１０１６に進む。１０１６では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝P（X、Y）/２＋ED(X、Y)                            （９）
として算出して１０２０に進む。これらの処理は上側と下側どちらか一方をドット配置する場合に、上側と下側の誤差を比較して、誤差の大きい方を出力し、他方を出力しないようにしている。
【００３４】
（５）式の比較式が真の場合は１０１７に進む。１０１７では、処理画素の周辺画素の誤差を含んだ画素レベルが第２の閾値以上であることになり、３値化による出力は第３レベルであり、出力する画素の種類であるPout（X、Y）を“１１”とする。さらに１０１８に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝P（X、Y）/２＋EU(X、Y)−Ｌ２/２                  （１０）
として算出し、１０１９に進む。１０１９では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝P（X、Y）/２＋ED(X、Y)−Ｌ２/２                  （１１）
とし１０２０に進む。
【００３５】
１０２０では、処理画素の上側に対する誤差を次式にしたがって周辺画素の上側に対して振りまく処理を行う。
【００３６】
EU（X＋１、Ｙ）＝EU（X＋１、Ｙ）＋ErrorU×A              （１２）
EU（X＋１、Ｙ＋１）＝EU（X＋１、Ｙ＋１）＋ErrorU×Ｂ      （１３）
EU（X、Ｙ＋１）＝EU（X、Ｙ＋１）＋ErrorU×Ｃ              （１４）
EU（X−１、Ｙ＋１）＝EU（X−１、Ｙ＋１）＋ErrorU×Ｄ      （１５）
（１２）式は処理画素の右の画素に対して誤差を振りまくことになり、（１３）式は処理画素の右下の画素に対して誤差を振りまくことになり、（１４）式は処理画素の下の画素に対して誤差を振りまくことになり、（１５）式は処理画素の左下の画素に対して誤差を振りまくことになる。
【００３７】
次に１０２１に進み、上側と同様にして処理画素の下側に対する誤差を次式にしたがって周辺画素の下側に対して振りまく処理を行う。
【００３８】
ED（X＋１、Ｙ）＝ED（X＋１、Ｙ）＋ErrorD×A              （１６）
ED（X＋１、Ｙ＋１）＝ED（X＋１、Ｙ＋１）＋ErrorD×Ｂ      （１７）
ED（X、Ｙ＋１）＝ED（X、Ｙ＋１）＋ErrorD×Ｃ              （１８）
ED（X−１、Ｙ＋１）＝ED（X−１、Ｙ＋１）＋ErrorD×Ｄ      （１９）
すなわち、１０２０及び１０２１における誤差の振りまき処理は図３に示したようになる。
【００３９】
本実施例において画素の振りまき配分である、Ａ、Ｂ、Ｃ、Ｄは、
Ａ＝７／１６、Ｂ＝１／１６、Ｃ＝５／１６、Ｄ＝３／１６        （１３）
とした。本実施例誤差拡散では、
Ａ＋Ｂ＋Ｃ＋Ｄ＝１                                            （１４）
であれば、上記（１３）式の配分以外でも十分な効果を得る。
【００４０】
１０２１の処理後１０２２に進む。１０２２では処理画素が１走査線分終了したかをＸ座標が右端の画素を示すXmaxかどうかで判断する。１０２２でＸ座標が右端に達していない場合は１０２３に進む。１０２３では処理を行う画素の指定を１画素分右に指定して、１００４の処理に移る。１０２２でＸ座標が右端に達している場合は１０２４に進む。１０２４では処理画素が画像の全領域分終了したかをＹ座標が下端の画素を示すYmaxかどうかで判断する。１０２４でＹ座標が下端に達していない場合は１０２５に進む。１０２５では処理を行う走査線の指定を１走査線分下に指定して、１００３の処理に移る。１０２４でＹ座標が下端に達している場合は全画像領域の処理を終えたことになり、１０２６に進んで３値化処理を終了する。
【００４１】
（第２の実施形態）
前実施形態では３値化であったが、本実施形態では５値化である。
【００４２】
本アルゴリズムで処理される画像において、各画素の座標は前実施例と同一とする。
【００４３】
また、前実施形態と同様に、各画素の入力レベルはP（X、Y）、５値化による画像の画素種類はPout（X、Y）とする。
【００４４】
図５には処理の対象となる画像における画素の誤差拡散処理に対する入力と出力の関係を説明する説明図である。
【００４５】
Pout（X、Y）は、“００００”、“０００１”、“１０００”、“１００１”、“１０１１”、“１１０１”、“１１１１”、の数値で表現して取り扱う。
【００４６】
ここで、“００００”は空白画素とする。“０００１”は右側列の記録素子を用いて１ドットを形成する。“１０００”は左側列の記録素子を用いて１ドットを形成する。“１００１”は右側列の記録素子及び左側列の記録素子を用いて２ドットを形成する。“１０１１”は右側列の記録素子を用いて２ドット、左側列の記録素子を用いて１ドットを形成する。“１１０１”は右側列の記録素子を用いて１ドット、左側列の記録素子を用いて２ドットを形成する。“１１１１”は右側列の記録素子を用いて２ドット、左側列の記録素子を用いて２ドットを形成する。
【００４７】
なお、“０００１”と“１０００”はともに１ドットで構成される画素なので同じ階調を表現することになり、“１０１１”と“１１０１”もともに３ドットで構成される画素なので同じ階調を表現することになる。
【００４８】
誤差拡散による５値化で用いる第１の閾値をLth1、第２の閾値をLth2、第３の閾値をLth3、第３の閾値をLth3とする。５値化により第２のレベルを出力した場合の画素の多値による出力レベルをＬ１、第３のレベルを出力した場合の画素の多値による出力レベルをＬ２、第４のレベルを出力した場合の画素の多値による出力レベルをＬ３、第５のレベルを出力した場合の画素の多値による出力レベルをＬ４とする。また、５値化により第１のレベルを出力した場合の画素の多値による出力レベルは０である。
【００４９】
本実施形態では、Lth1＝３２、Lth2＝９６、Lth3＝１６０、Lth4＝２２４、Ｌ１＝６３、Ｌ２＝１２７、Ｌ３＝１９１、Ｌ４＝２５５とした。
【００５０】
図４は前記P（X、Y）に対する、記録ドットの配置を説明する図である。
【００５１】
“００００”は空白画素としてドットは配置しない。
【００５２】
“０００１”は右側列の記録素子を用いて画素の右下に１ドットを形成する。
【００５３】
“１０００”は左側列の記録素子を用いて画素の左上に１ドットを形成する。
【００５４】
“１００１”は右側列の記録素子を用いて右下に１ドット、左側列の記録素子を用いて左上に１ドットを形成する。
【００５５】
“１０１１”は右側列の記録素子を用いて右下に１ドットと左下に１ドット、左側列の記録素子を用いて左上に１ドットを形成する。
【００５６】
“１１０１”は右側列の記録素子を用いて左下に１ドット、左側列の記録素子を用いて左上に１ドットと右上に１ドットを形成する。
【００５７】
図６及び図７は本発明に用いる５値化のアルゴリズムを説明するフローチャートである。
【００５８】
前記実施形態と同様に本アルゴリズムにおいても、各画素に振りまかれる誤差を上側と下側で独立して扱うこととし、上側に振りまかれる誤差をEU(X、Y)、下側に振りまかれる誤差をED(X、Y)とする。また、誤差拡散により周辺画素に誤差を振りまき方も前記実施形態と同様である。
【００５９】
図６において、まず２００１で処理を開始し、２０１０で一連の処理が終了する。一連の処理の内、５値化を行う画素の処理の順番を管理する２００２、２００３、２００６、２００７、２００８、２００９での処理は、前記実施形態における１００２、１００３、１０２２、１０２３、１０２４、１０２５の処理と同じである。また、周辺画素の下側に対して振りまく処理である２００４、２００５は、前記実施形態における１０２０、１０２１の処理と同じである。
【００６０】
図７は、図６におけるAからBへの処理のアルゴリズムを示したフローチャートである。
【００６１】
まず、３００１で上側に対する周辺画素の誤差を含んだ画素レベルPU（X、Y）を次式で得る。
【００６２】
PU（X、Y）＝P（X、Y）／２＋EU(X、Y)              （１５）
次に３００２に進み、下側に対する周辺画素の誤差を含んだ画素レベルPD（X、Y）を次式で得る。
【００６３】
PD（X、Y）＝P（X、Y）／２＋ED(X、Y)              （１６）
次に３００３に進み、上側と下側の周辺画素の誤差を含んだ画素レベルの足し合わせてP‘（X、Y）を次式で得る。
【００６４】
P‘（X、Y）＝PU（X、Y）＋PD(X、Y)                  （１７）
本実施形態における３００１、３００２、３００３の処理は、前記実施形態の１００４の処理で得られる結果と同じである。本実施形態では上側と下側の誤差を個別に管理する思考を強調するために、前記実施形態の１００９、１０１０、１０１２、１０１３、１０１５、１０１６、１０１８、１０１９で行っていた計算の一部を、３００１、３００２で行うことにした。
【００６５】
３００４では処理を行う画素と５値化で用いる第１の閾値の比較を行う。
【００６６】
この際の比較は前記P‘（X、Y）と５値化で用いる第１の閾値Ｌth1の比較式
P‘（X、Y）≧Ｌth1                                （１８）
で判断される。
【００６７】
（１８）式の比較式が偽の場合は３０１０に進む。３０１０では、処理画素の周辺画素の誤差を含んだ画素レベルが第１の閾値より小さいことになり、５値化による出力は第１レベルであり、出力する画素の種類であるPout（X、Y）を“００００”とする。さらに３０１１に進み、この画素で発生する上側に対しての誤差ErrorUをErrorU＝PU(X、Y)として、３０１２に進む。３０１２では、この画素で発生する下側に対しての誤差ErrorDをErrorD＝PD(X、Y)として、３０３１に進む。
【００６８】
（１８）式の比較式が真の場合は３００５に進む。３００５では処理を行う画素と５値化で用いる第２の閾値の比較を行う。この際の比較は前記P‘（X、Y）と５値化で用いる第２の閾値Ｌth2の比較式
P‘（X、Y）≧Ｌth2                                （１９）
で判断される。
【００６９】
（１９）式の比較式が偽の場合は３００６に進む。この場合、処理画素の周辺画素の誤差を含んだ画素レベルが第１の閾値以上で第２の閾値より小さいことになり、５値化による出力は第２レベルである“０００１”または“１０００”である。３００６では、出力する画素の種類を、次式
EU（X、Y）＞ED（X、Y）                          （２０）
で判断する。
【００７０】
（２０）式の比較式が偽の場合は、３０１３に進む。３０１３では出力する画素の種類であるPout（X、Y）を“０００１”とする。さらに３０１４に進み、この画素で発生する上側に対しての誤差ErrorUをErrorU＝PU(X、Y)として、１０１３に進む。１０１３では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝PD(X、Y)−Ｌ１                          （２１）
とし算出して、３０３１に進む。
【００７１】
（１９）式の比較式が真の場合は３００７に進む。３００７では処理を行う画素と５値化で用いる第３の閾値の比較を行う。この際の比較は前記P‘（X、Y）と５値化で用いる第３の閾値Ｌth3の比較式
P‘（X、Y）≧Ｌth3                                （２２）
で判断される。
【００７２】
（２２）式の比較式が偽の場合は３０１９に進む。３０１９では、処理画素の周辺画素の誤差を含んだ画素レベルが第２の閾値以上で第３の閾値より小さいことになり、５値化による出力は第３レベルであり、出力する画素の種類であるPout（X、Y）を“１００１”とする。さらに３０２０に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝PU(X、Y)−L2／2                          （２３）
として算出して、３０２１に進む。３０２１では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝PD(X、Y)−L2／2                          （２４）
として算出して、３０３１に進む。
【００７３】
（２２）式の比較式が真の場合は３００８に進む。３００８では処理を行う画素と５値化で用いる第４の閾値の比較を行う。この際の比較は前記P‘（X、Y）と５値化で用いる第４の閾値Ｌth4の比較式
P‘（X、Y）≧Ｌth4                                （２５）
で判断される。
【００７４】
（２５）式の比較式が偽の場合は３００９に進む。この場合、処理画素の周辺画素の誤差を含んだ画素レベルが第３の閾値以上で第４の閾値より小さいことになり、５値化による出力は第４レベルである“１０１１”または“１１０１”である。３００９では、出力する画素の種類を、次式
EU（X、Y）＞ED（X、Y）                            （２６）
で判断する。
【００７５】
（２６）式の比較式が偽の場合は、３０２２に進む。３０２２では出力する画素の種類であるPout（X、Y）を“１０１１”とする。さらに３０２４に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorD＝PU（X、Y）−Ｌ３／３                      （２７）
とし算出して、３０２４に進む。３０２４では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝PD(X、Y)−Ｌ３×２／３                    （２８）
とし算出して、３０３１に進む。
【００７６】
（２６）式の比較式が真の場合は、３０２５に進む。３０２５では出力する画素の種類であるPout（X、Y）を“１１０１”とする。さらに３０２６に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorD＝PU（X、Y）−Ｌ３×２／３                  （２９）
とし算出して、３０２７に進む。３０２７では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝PD(X、Y)−Ｌ３／３                        （３０）
とし算出して、３０３１に進む。
【００７７】
（２５）式の比較式が真の場合は３０２８に進む。３０２８では、処理画素の周辺画素の誤差を含んだ画素レベルが第４の閾値以上であることになり、５値化による出力は第５レベルであり、出力する画素の種類であるPout（X、Y）を“１１１１”とする。さらに３０２９に進み、この画素で発生する上側に対しての誤差ErrorUを
ErrorU＝PU(X、Y)−Ｌ４/２                          （３１）
として算出し、３０３０に進む。３０３０では、この画素で発生する下側に対しての誤差ErrorDを
ErrorD＝PD(X、Y)−Ｌ４/２                          （３２）
とし３０２１に進む。
【００７８】
本実施形態では５値化における第２レベルと第４レベルに、使用する記録素子群を切り替える２種類のドット配置で同一の階調表現を行った。このような場合でも、複数のドット配置を分類して誤差を管理することで広域的に発生するドット配置を同じにすることが可能となる。
【００７９】
（他の実施形態）
前述の実施形態はいずれも、配置の異なる複数の記録ドットで画素の階調を表現していた。
【００８０】
インクジェット記録方式の場合、同一位置に対して付着させるインク液滴の数に応じて、記録ドットの濃度や記録ドットの面積が増加する。この現象を用いて階調表現を行うことが可能である。
【００８１】
この階調表現における複数のインク液滴の吐出を個別の記録素子で行う場合、前述した階調表現と同様に記録素子の使用頻度の偏りを解消する必要が生じる。この問題に対しても、使用する記録素子郡毎に誤差を管理し、前記記録素子郡毎に印字データの割り当てることにより、前述した実施形態と同様の効果を得る。
【００８２】
より具体的には図１０に示す様に、記録素子郡を記録素子郡Ａと記録素子郡Ｂの２つで構成する。
【００８３】
図において矢印は記録媒体と記録素子郡との相対的な移動方向を示している。
【００８４】
図１０の構成ならば、記録素子郡Ａと記録素子郡Ｂは画素において同一位置に記録ドットを配置することが可能である。
【００８５】
また図１１は記録媒体の搬送と記録ヘッドの記録による往復走査を繰り返すシリアルスキャン型の記録である。
【００８６】
図に示す様に、記録素子郡Ａおよび記録素子郡Ｂを記録走査方向に対して直角に配置している。
【００８７】
また各記録走査間で記録媒体に対して記録走査直角方向（副走査方向）に相対的に移動する。
【００８８】
この場合、記録素子郡Ａの走査による記録媒体の記録位置が、次の記録素子郡Ｂの走査による記録媒体の記録位置に重なる様に移動させる。
【００８９】
図１１の構成であっても、記録素子郡Ａと記録素子郡Ｂは画素において同一位置に記録ドットを配置することが可能である。
【００９０】
上述の構成において、第１の実施形態で処理されて出力される画素種類のデータPoutに対して、“００”は記録ドットなし、“０１”は記録素子郡Ａにより１液滴の記録、“１０”は記録素子郡Ｂにより１液滴の記録、“１１”は記録素子郡Ａにより１液滴と記録素子郡Ｂにより１液滴の合計２液滴の記録とする。これにより前述の同一位置に対して付着させるインク液滴の数で階調表現を行い、異なる記録素子を用いた場合の問題を解消することができる。
【００９１】
また、前述の実施形態はインクジェット記録方式であったが、複数の記録素子を用いる他の記録方式に対しても本発明の効果は発揮される。より具体的には、熱転写記録方式、昇華記録方式などである。
【図面の簡単な説明】
【００９２】
【図１】本発明の第１実施形態に用いる３値化のアルゴリズムを説明するフローチャートである。
【図２】本発明で用いた３値化の入力レベルと出力レベルを説明したグラフである。
【図３】本発明の第１実施形態における出力と記録ドットの位置の関係を示した説明図。
【図４】本発明の第２実施形態における出力と記録ドットの位置の関係を示した説明図。
【図５】本発明で用いた５値化の入力レベルと出力レベルを説明したグラフである。
【図６】本発明の第２実施形態に用いるアルゴリズムを説明するフローチャートである。
【図７】本発明の第２実施形態に用いる５値化のアルゴリズムを説明するフローチャートである。
【図８】本発明に用いる誤差拡散での誤差の周辺画素への振りまきを示す説明図。
【図９】従来例の３値化アルゴリズムを示したフローチャートである。
【図１０】画素の同一位置に複数の記録素子郡で階調表現を行う具体的な構成例を示す概念図。
【図１１】画素の同一位置に複数の記録素子郡で階調表現を行うシリアルスキャン型の具体的な構成例を示す概念図。
【符号の説明】
【００９３】
Ｐ（Ｘ、Ｙ）  画素の入力レベル
Ｌｔｈ１  第１の閾値
Ｌｔｈ２  第２の閾値
Ｌ１  第１の出力相当レベル
Ｌ２  第２の出力相当レベル
【図１】
2006082411.tif 000003
【図２】
2006082411.tif 000004
【図３】
2006082411.tif 000005
【図４】
2006082411.tif 000006
【図５】
2006082411.tif 000007
【図６】
2006082411.tif 000008
【図７】
2006082411.tif 000009
【図８】
2006082411.tif 000010
【図９】
2006082411.tif 000011
【図１０】
2006082411.tif 000012
【図１１】
2006082411.tif 000013