(57)【特許請求の範囲】
【請求項１】
画素において表すことができる濃度範囲内に設定された所定範囲において離散的に設定された複数の濃度値の各々を、複数の均一濃度画素マトリックスの各々における全画素の濃度値として、前記均一濃度画素マトリックス毎に誤差拡散法にて前記濃度値をオン／オフのいずれかに２値化し、この２値化された均一濃度画素マトリックスの濃度値に基づいて、ディザマトリックスにおける各画素の閾値を設定するディザマトリックス作成方法であって、
前記均一濃度画素マトリックスが、主走査方向の先端縁部の画素と後端縁部の画素とが連続した画素配置状態で２値化処理されていることを特徴とするディザマトリックス作成方法。
【請求項２】
前記均一濃度画素マトリックスの主走査方向の後端縁部の画素が、主走査方向の先端縁部の画素の内で副走査方向の次の画素ラインの画素へ連続した画素配置状態で２値化処理されていることを特徴とする請求項１記載のディザマトリックス作成方法。
【請求項３】
前記２値化された均一濃度画素マトリックスの副走査方向における一部の特定領域の濃度値に基づいて、ディザマトリックスにおける各画素の閾値を設定することを特徴とする請求項１または２記載のディザマトリックス作成方法。
【請求項４】
前記特定領域は、前記誤差拡散法の処理が開始された副走査方向における先頭画素ライン部分を含まないことを特徴とする請求項３記載のディザマトリックス作成方法。
【請求項５】
前記特定領域は、前記誤差拡散法の処理が終了する副走査方向における最終画素ライン部分を含むことを特徴とする請求項３または４記載のディザマトリックス作成方法。
【請求項６】
請求項１〜５のいずれかに記載のディザマトリックス作成方法により作成されたディザマトリックスを、該ディザマトリックスの主走査方向の先端縁部にて副走査方向に並んだ閾値要素列から後端縁部にて副走査方向に並んだ閾値要素列にかけて、各閾値要素列を副走査方向にずらしたことにより、副走査方向の先端縁部および後端縁部を前記主走査方向に対して不一致とさせたディザマトリックスとして形成することを特徴とするディザマトリックス作成方法。
【請求項７】
前記ディザマトリックスが、副走査方向の先端縁部および後端縁部を主走査方向に対して所定の角度を有する直線状とした平行四辺形に形成されていることを特徴とする請求項６記載のディザマトリックス作成方法。
【請求項８】
請求項１〜５のいずれかに記載のディザマトリックス作成方法により作成されたディザマトリックスを、該ディザマトリックスの主走査方向の先端縁部にて副走査方向に並んだ閾値要素列から後端縁部にて副走査方向に並んだ閾値要素列にかけて、前記ディザマトリックスの副走査方向の先端縁部および後端縁部が前記主走査方向に対して不一致となるように各閾値要素列を副走査方向にずらした閾値の配置に基づいて画像データの各画素の濃度値を２値化することを特徴とする画像データ２値化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、多値画像を２値画像化するためのディザマトリックスの作成方法および画像データ２値化方法に関する。
【０００２】
【従来の技術】
画像を構成するデータは通常８ビット程度の濃淡階調で表現されている。しかし、この画像データを人が見ることのできる画像として出力する機器、例えばプリンタなどの出力機器においては、機構が簡単であることや制御の容易性から、インク等の色素を記録紙にドットとして付着させるか否かしか行わない、いわゆる２値記録が一般的である。
【０００３】
このような２値記録の出力機器を使用して、８ビット濃淡階調で表された画像を記録する場合には、単に各画素の値を閾値で判断してインクを付着させるか否かを決定することになる。しかし、このように閾値で単純に２値化するだけでは、８ビット濃淡階調が持つ豊富な濃淡状態（１色なら２５６階調、３原色が各２５６階調ならば、約１６７０万色を表すことができる。）を表現することは不可能となる。そのため、このような２値記録の出力機器でも疑似的に濃淡状態を表現する方法が考えられている。すなわち、所定の面積の中で配置されるドット数によって濃淡を表現しようと言う面積階調の考え方である。
【０００４】
この考え方を実現する方法としては種々の提案がなされている。例えば、誤差拡散法、乱数発生型ディザ法、組織的ディザ法等である。
【０００５】
【発明が解決しようとする課題】
しかし、これらの方法には、次のような問題があった。
誤差拡散法は、誤差拡散あるいは誤差分配演算のために、２値化の処理が遅くなり、また２値化された画像に独特の紋様が発生し易かった。乱数発生型ディザ法は、ディザマトリックスを使用するために２値化処理自体は高速であるが、乱数を用いるため、画質が非常にノイジー、すなわち、多くのノイズが画像に満ちているような画質となると言う問題が有った。
【０００６】
ディザマトリックスを用いる他の方法として、組織的ディザ法に属する渦巻型があるが、この渦巻型は、ドットが密集し易く、密集したものが大きなドットと認識されるので解像度が悪化し易かった。組織的ディザ法の内で、ベイヤー（Ｂａｙｅｒ）法があるが、このベイヤー（Ｂａｙｅｒ）法は、ドットが分散するので解像度は良いが、独特な紋様が発生し、暗部の階調性も悪いものであった。
【０００７】
また、ディザマトリックスの大きさよりも広い画像を処理する場合には、図１９に示すごとく、画像の部分部分を順次、ディザマトリックスの大きさの領域ＤＭ毎に２値化処理することになるが、この処理の境界近傍部分ＢＤ１，ＢＤ２，ＢＤ３，ＢＤ４で色むらや明暗むらが生じて、白線などの疑似的な境界線が現れてしまう場合があった。特に主走査方向の先端縁部の境界近傍部分ＢＤ１および主走査方向の後端縁部の境界近傍部分ＢＤ２においては疑似的な境界線が目立った。
【０００８】
本発明は、ディザ法を用いても、ノイジーとならず、解像度が悪化せず、紋様の発生を抑制し、更にディザマトリックスにより処理された領域間に疑似的な境界線も生じないディザマトリックスを作成することおよび疑似的な境界線が現れにくい画像データ２値化方法の提供を目的とするものである。
【０００９】
【課題を解決するための手段及び発明の効果】
本発明のディザマトリックス作成方法は、画素において表すことができる濃度範囲内に設定された所定範囲において離散的に設定された複数の濃度値の各々を、複数の均一濃度画素マトリックスの各々における全画素の濃度値として、均一濃度画素マトリックス毎に誤差拡散法にて濃度値をオン／オフのいずれかに２値化し、この２値化された均一濃度画素マトリックスの濃度値に基づいて、ディザマトリックスにおける各画素の閾値を設定している。
【００１０】
このようにして閾値が設定されたディザマトリックスによって画像を２値化すると、人間の目に対してノイジーとならず、解像度が悪化せず、紋様の発生を抑制した２値化画像を生成することができる。
誤差拡散法により生じる２値の並びは、一見不規則に見えるけれども、まったくのでたらめではない。すなわち、紋様はできにくいがノイジーな画像にはなりにくい性質がある。このように本発明のディザマトリックス作成方法は、誤差拡散法により生じる２値の並びを利用することにより、ディザマトリックスにも誤差拡散法における２値の並びの性質を取り込んで作成されたものである。
【００１１】
したがって、２値化の計算処理が高速に可能となるディザマトリックスにおいて、前述のごとく誤差拡散法により、不規則ではあるがまったくのでたらめではない適切な閾値の分布を形成しているので、人間の目に対してノイジーとならず、かつ解像度が悪化せず、更に、紋様の発生を抑制した２値化画像を生成することができたものと考えられる。
【００１２】
更に、均一濃度画素マトリックスが、主走査方向の先端縁部の画素と後端縁部の画素とが連続した画素配置状態で２値化処理されている。ディザマトリックスで処理された領域の境界で色むらや明暗のむらが生じるのは、ディザマトリックスの左右の縁部（主走査方向の先端縁部および後端縁部）や上下の縁部（副走査方向の先端縁部および後端縁部）において縁部同士の連続性が無いからである。尚、本明細書では、主走査方向および副走査方向は誤差拡散による２値化処理の主走査方向および副走査方向を意味している。
【００１３】
特に、上述のごとく誤差拡散法による２値化処理にてディザマトリックスを作成する場合には、誤差拡散法の２値化処理の主走査方向における縁部同士の誤差拡散処理の不連続性が色むらや明暗むらに大きく影響する。この問題を、本発明では、均一濃度画素マトリックスの主走査方向の先端縁部の画素と後端縁部の画素とを連続した画素配置状態で２値化処理することにより主走査方向における縁部同士の連続性を維持させている。その結果、得られたディザマトリックスは、画像データを２値化処理すると、領域の境界での色むらや明暗むらを生じること無く、疑似的な境界線の発生が無い。
【００１４】
前記連続状態の一例として、均一濃度画素マトリックスの主走査方向の後端縁部の画素が、主走査方向の先端縁部の画素の内で副走査方向の次の画素ラインの画素へ連続した画素配置状態で２値化処理すると、すなわち、主走査方向の画素の配列が螺旋状にされた状態で２値化処理すると、後端縁部の画素から先端縁部の画素へと２値化処理が移行する場合に、同じ２値化誤差分配または２値化誤差拡散処理を行えば良いので、簡易な処理になると共に、２値化処理の連続性が、より良好となり一層疑似的な境界線の発生を抑制できる。
【００１５】
また、２値化された均一濃度画素マトリックスの副走査方向における一部の特定領域の濃度値に応じて、ディザマトリックスにおける各画素の閾値を設定しても良い。この場合、特に、前記特定領域が、誤差拡散法の処理が開始された副走査方向における先頭画素ライン部分を含まないことにすると、誤差拡散の初期における誤差拡散あるいは誤差分配の歪みがディザマトリックスへ影響し難くなり、でき上がったディザマトリックスを使用して画像を２値化しても、ドットの偏りや紋様の発生を抑制することができる。更に、この場合、できるだけ前記歪みの影響を無くすためには、特定領域としては、先頭画素ライン部分から最も離れたラインである、誤差拡散法の処理が終了する副走査方向における最終画素ライン部分を含むようにすることが好ましい。
【００１６】
尚、２値化の結果に基づくディザマトリックスの閾値の設定は、例えば、２値化された均一濃度画素マトリックスの濃度値を、均一濃度画素マトリックスのすべてについて同一位置の画素毎に集積し、この同一位置の画素毎の集積結果に基づいて行っても良い。
【００１７】
更に、ディザマトリックスの副走査方向の先端縁部および後端縁部において縁部同士の連続性が無いために生じる疑似的な境界線の発生を抑制するには、例えば、上述のごとく形成したディザマトリックスを、更に、ディザマトリックスの主走査方向の先端縁部にて副走査方向に並んだ閾値要素列から後端縁部にて副走査方向に並んだ閾値要素列にかけて、各閾値要素列を副走査方向にずらすことにより、ディザマトリックスの副走査方向の先端縁部および後端縁部を前記主走査方向に対して不一致とさせたものとして形成しても良い。
【００１８】
すなわち、ディザマトリックスの副走査方向の先端縁部および後端縁部を、主走査方向に直線状に配列されている状態から、斜めや凸凹に配列し直す。このように、ディザマトリックスの副走査方向の先端縁部および後端縁部を、主走査方向の直線以外の状態にすると、当然に疑似的な境界線は、主走査方向の直線以外の状態となるはずであるが、このようにすると、疑似的な境界線は目立たなくなる。すなわち、疑似的な境界線の発生を抑制できる。尚、ディザマトリックスの副走査方向の先端縁部および後端縁部を斜めにして、主走査方向に対して所定の角度を有する直線状とすれば、ディザマトリックスは平行四辺形に形成される。
【００１９】
また、このようにディザマトリックス自体を変形しなくても、前述のように形成したディザマトリックスによる２値化処理時に、ディザマトリックスの主走査方向の先端縁部にて副走査方向に並んだ閾値要素列から後端縁部にて副走査方向に並んだ閾値要素列にかけて、ディザマトリックスの副走査方向の先端縁部および後端縁部が主走査方向に対して不一致となるように各閾値要素列を副走査方向にずらした閾値の配置に基づいて画像データの各画素の濃度値を２値化することによっても同様に副走査方向の先端縁部および後端縁部において発生する疑似的な境界を抑制できる。
【００２０】
また、ある濃度値の均一濃度画素マトリックスの２値化処理を行う場合に、既に２値化された他の均一濃度画素マトリックスの２値化状態に応じて、各画素が２値化処理されることとしても良い。この「既に２値化された他の均一濃度画素マトリックスの２値化状態に応じてなされる２値化処理」とは、例えば、既に２値化された他の均一濃度画素マトリックスの内で、２値化処理しようとする均一濃度画素マトリックスに最も近い濃度値の均一濃度画素マトリックスの２値化状態に応じて２値化処理する手法が挙げられる。すなわち、均一濃度画素マトリックスの誤差拡散法による２値化処理がまったく独立に実行されるのではなく、既になされている他の濃度値の均一濃度画素マトリックスにおける２値化状態が反映される。
【００２１】
この反映により、単に各均一濃度画素マトリックス独立に２値化している場合に比較して、各画素位置における集積状態が特定の値に偏ることが無く、各種の値に分散化する。したがって、このような集積状態に基づいて最終的に得られるディザマトリックスは、閾値の値が、所定範囲で適度に分散して分布するものとなる。
【００２２】
更に具体的には、濃度値ｉを全画素の濃度値とする均一濃度画素マトリックスにてなされる誤差拡散法において、濃度値ｉ未満で最も濃度値ｉに近い濃度値について既に２値化されて得られた最近下方２値化画素マトリックスにてオンとなっている画素位置と同じ画素位置は、必ずオンとして誤差拡散処理することにより２値化すれば、前述した効果を得ることができる。この場合、最初に、離散的に設定された複数の濃度値の内の最小値ｍｉｎを全画素の濃度値とする均一濃度画素マトリックスについて、誤差拡散法にて各画素の濃度値をオン／オフのいずれかに２値化し、その後、他の濃度を前記濃度値ｉとして２値化しても良い。
【００２３】
また、濃度値ｉを全画素の濃度値とする均一濃度画素マトリックスにてなされる誤差拡散法において、濃度値ｉを越えていて最も濃度値ｉに近い濃度値について既に２値化されて得られた最近上方２値化画素マトリックスにてオフとなっている画素位置と同じ画素位置は、必ずオフとして誤差拡散処理することにより２値化すれば、前述した効果を得ることができる。この場合、最初に、離散的に設定された複数の濃度値の内の最大値ｍａｘを全画素の濃度値とする均一濃度画素マトリックスについて、誤差拡散法にて各画素の濃度値をオン／オフのいずれかに２値化し、その後、他の濃度値を前記濃度値ｉとして２値化しても良い。
【００２４】
また、濃度値ｉを全画素の濃度値とする均一濃度画素マトリックスにてなされる誤差拡散法において、濃度値ｉ未満で最も濃度値ｉに近い濃度値について既に２値化されて得られた最近下方２値化画素マトリックスにおいてオンおよび濃度値ｉを越えていて最も濃度値ｉに近い濃度値について既に２値化されて得られた最近上方２値化画素マトリックスにおいてもオンとなっている画素位置と同じ画素位置は必ずオンとし、前記最近下方２値化画素マトリックスにおいてオフおよび前記最近上方２値化画素マトリックスにおいてもオフとなっている画素位置と同じ画素位置は必ずオフとして誤差拡散処理することにより２値化しても良く、前述した効果を得ることができる。この場合、最初に、離散的に設定された複数の濃度値の内の最小値ｍｉｎおよび最大値ｍａｘを全画素の濃度値とする２つの均一濃度画素マトリックスについて、誤差拡散法にて各画素の濃度値をオン／オフのいずれかに２値化することが好ましい。
【００２５】
また、前記濃度値ｉは、前記最近下方２値化画素マトリックスと前記最近上方２値化画素マトリックスとの各濃度値の中央の整数値に対応させること、あるいはほぼ中央の整数値に対応させることが、得られたディザマトリックスにて処理されて得られた疑似中間調画像の解像度の向上や紋様の抑制の上で好ましい。
【００２６】
また、前記所定範囲は、画素において表すことができる濃度範囲に等しいこととしても良い。この場合、前記所定範囲は例えば０〜２５５の範囲が挙げられる。これは、特に２値化処理対象の画像を構成するデータが８ビットの濃淡階調で表現されている場合に好ましい。
【００２７】
また、前述した効果を一層向上させるためには、前記所定範囲に離散的に設定された複数の濃度値が、その最小値ｍｉｎから最大値ｍａｘまで１づつ変化させて設定したｍａｘ−ｍｉｎ＋１個の値であることが好ましい。
前記同一位置の画素毎の集積結果としては、例えば、同一位置の画素における２値化された濃度値の内の一方の値の個数であって、この個数に応じてディザマトリックスの各画素の閾値を設定することができる。例えば、２値が「１」（オン）と「０」（オフ）とで表されているとすると、２値化した複数の均一濃度画素マトリックスの同一位置に存在する「１」（オン）をカウントし、そのカウント値を、そのまま、あるいは係数をかけてディザマトリックスの同一位置における閾値として設定しても良い。またカウント値からテーブルに基づいて閾値を設定しても良い。「１」（オン）の代りに「０」（オフ）をカウントしても良い。
【００２８】
また、閾値の設定は、上述の方法以外に、離散的に設定された複数の濃度値の内の最小値ｍｉｎの均一濃度画素マトリックスから最大値ｍａｘの均一濃度画素マトリックスまで見た場合に、２値化された均一濃度画素マトリックスに最初に「１」（オン）となって現れる画素位置に対して、最初に「１」（オン）となった均一濃度画素マトリックスの濃度値に応じて閾値が設定されることとしても良い。例えば、各画素位置を濃度値の小さい方から順次チェックして、「１」（オン）が最初に現れた均一濃度画素マトリックスの濃度値をそのまま閾値として設定しても良い。またこの濃度値に所定の係数をかけて閾値として設定しても良い。
【００２９】
また、閾値の設定は、離散的に設定された複数の濃度値の内の最大値ｍａｘの均一濃度画素マトリックスから最小値ｍｉｎの均一濃度画素マトリックスまで見た場合に、２値化された均一濃度画素マトリックスに最初に「０」（オフ）となって現れる画素位置に対して、最初に「０」（オフ）となった均一濃度画素マトリックスの濃度値に応じて閾値が設定されることとしても良い。例えば、各画素位置を濃度値の大きい方から順次チェックして、「０」（オフ）が最初に現れた均一濃度画素マトリックスの濃度値をそのまま閾値として設定しても良い。またこの濃度値に所定の係数をかけて閾値として設定しても良い。
【００３０】
【発明の実施の形態】
［実施の形態１］
図１は、ディザマトリックス作成装置２の主要ブロック図である。
このディザマトリックス作成装置２の主体を成すマイクロコンピュータ部１１はＣＰＵ１２、ＲＯＭからなるプログラムメモリ１３、ＲＡＭからなるワーキングメモリ１４、ＲＡＭからなるディザマトリックス格納メモリ１６およびＲＡＭからなる出力イメージメモリ１７により構成されている。また、マイクロコンピュータ部１１にはシステムバス１８を介して入力部１０および出力部１９が接続されている。
【００３１】
入力部１０は、キーボードや外部の記憶装置から入力するためのインターフェースを備え、ディザマトリックス作成に必要なデータや指示の入力を行うものである。また、入力部１０は、作成されたディザマトリックスの効果を確認するために、各画素が８ビットで表される階調を有する画像データを入力する。
【００３２】
ＣＰＵ１２は、後述するごとくディザマトリックスの作成を実行するものであり、プログラムメモリ１３は、このＣＰＵ１２で行う様々な制御を実施するためのプログラムを記憶している。また、ワーキングメモリ１４は、ＣＰＵ１２がプログラムメモリ１３に記憶されたプログラムを実行するときに必要なデータを一時的に記憶するものである。
【００３３】
ディザマトリックス格納メモリ１６は、ＣＰＵ１２の処理によって形成されたディザマトリックスデータを記憶する。
出力イメージメモリ１７は、ＣＰＵ１２が、ディザマトリックス格納メモリ１６に格納されているディザマトリックスを用いて、８ビットで表される階調を有する画像データを２値化した、その２値化された出力イメージデータを記憶する。
【００３４】
出力部１９は、出力イメージメモリ１７に格納した２値化画像データを電子写真方式によりドットの有無で印字する装置である。
次に、ディザマトリックス作成装置２により実行されるディザマトリックス作成処理について説明する。ディザマトリックス作成処理のフローチャートを図２以下に示す。
【００３５】
まず、全画素が濃度値ｉ＝０である均一濃度画素マトリックスと、全画素が濃度値ｉ＝２５５である均一濃度画素マトリックスとを誤差拡散法により２値化する（Ｓ１００）。この均一濃度画素マトリックスは、図４に示すごとく、ｉ＝０，２５５の２種類の均一濃度画素マトリックスＤ０，Ｄ２５５をワーキングメモリ１４に読み込んで用いれば良い。そして、その２値化画素マトリックスＦ０，Ｆ２５５（図５）をワーキングメモリ１４に保存する（Ｓ２００）。ただし、ステップＳ１００にて行われる濃度値ｉ＝０，２５５の均一濃度画素マトリックスの誤差拡散法による２値化結果は、ｉ＝０の場合は全画素「０」（オフ）、ｉ＝２５５の場合は全画素「１」（オン）となるので、特に誤差拡散法による計算はせずに、予め全画素がオフの２値化画素マトリックスと全画素がオンの２値化画素マトリックスとを備えておいて、これらのマトリックスを用いても良い。
【００３６】
次に、均一濃度画素マトリックスの処理順序を決定するために、１〜２５４の濃度値について濃度値配列の作成を行う（Ｓ３００）。濃度値の配列は、既に２値化処理された濃度値の中央の濃度値が２値化処理対象の濃度値ｉに設定されるように作成される。すなわち、配列の先頭は「０」と「２５５」の中央の整数値である「１２８」（もう一つの中央の整数値の「１２７」でも良い。）、次が、「０」と「１２８」との中央の「６４」、「１２８」と「２５５」との中央の「１９２」（もう一つの中央の整数値の「１９１」でも良い。）、次が「０」と「６４」との中央の「３２」、「６４」と「１２８」との中央の「９６」、「１２８」と「１９２」との中央の「１６０」、「１９２」と「２５５」との中央の「２２４」（もう一つの中央の整数値の「２２３」でも良い。）と言うように、前に得られている値の中央の整数値を求めて、「１」〜「２５４」までの濃度値の配列「１２８，６４，１９２，３２，９６，１６０，２２４，……」を作成する。この配列は予め計算して配列データとして記憶しておき、本処理時に配列データのみ読み込んで用いても良い。
【００３７】
次にその配列の先頭から順次、一つづつ濃度値ｉに読み込んで（Ｓ４００）、２値化処理（Ｓ５００）の処理を行う。
ステップＳ５００の２値化処理の詳細を図３のフローチャートに示す。
まず、配列の最初の濃度値ｉ＝１２８の均一濃度画素マトリックスを２値化処理対象とし、まず、２値化済みの濃度値、すなわち既に２値化画素マトリックスが求められている濃度値の内で、濃度値ｉ＝１２８に対する最近上方２値化画素マトリックスＨと、最近下方２値化画素マトリックスＬとをワーキングメモリ１４の内容から検索する（Ｓ５２１）。配列の最初の濃度値ｉ＝１２８の場合は、既にステップＳ１００にて２値化されている濃度値ｉ＝２５５の均一濃度画素マトリックスが最近上方２値化画素マトリックスＨに該当し、濃度値ｉ＝０の均一濃度画素マトリックスが最近下方２値化画素マトリックスＬに該当する。
【００３８】
次に、ワーキングメモリ１４内に設定した誤差バッファを初期化する（Ｓ５２２）。
次に、濃度値ｉの均一濃度画素マトリックスの画素位置（ｘ，ｙ）の濃度値Ｉxyを読み取る（Ｓ５２３）。最初の画素位置は均一濃度画素マトリックスの左上隅の原点（０，０）であり、各均一濃度画素マトリックスのサイズがｍ×ｎ画素であるとすると、以後ステップＳ５２３が処理される毎に、主走査方向（ｘ方向）へ順次移動し、ｘ＝ｍ−１の次には、副走査方向（ｙ方向）の次の画素ラインに移動してｘ＝０から主走査方向へ順次移動して行くように画素位置（ｘ，ｙ）が指定される。
【００３９】
尚、この画素位置（ｘ，ｙ）の濃度値Ｉxyは濃度値ｉの均一濃度画素マトリックスの全ての画素において濃度値ｉと同じ値であるので、特に濃度値ｉの均一濃度画素マトリックスから読み取らなくても、単にＩxyにｉを設定するのみでも良い。
【００４０】
次に、式１のごとく、濃度値ｉが周辺画素の２値化誤差和Ｅにて補正されて補正濃度値Ｉ′xyが算出される（Ｓ５２４）。
【００４１】
【数１】
0003711615.tif 000002
【００４２】
２値化誤差和Ｅは、式２のごとく、係数マトリックスαと周辺画素の２値化誤差ｅとに基づいて計算される。
【００４３】
【数２】
0003711615.tif 000003
【００４４】
係数マトリックスαは、本実施の形態１では、次のようなマトリックスが用いられている。αpqは係数マトリックスαの位置（ｐ，ｑ）の係数を表している。またｅabは周辺画素の２値化誤差を表している。
【００４５】
【数３】
0003711615.tif 000004
【００４６】
ここで、＊は注目画素の位置を表している。
ただし、ａ，ｂは次式のようにして設定される。
【００４７】
【数４】
0003711615.tif 000005
【００４８】
ここで、％はｍで割り算した場合の余りを求める演算子、ｍは均一濃度画素マトリックスの主走査方向のサイズ、ｉｎｔ｛｝は｛｝内の値の整数部分のみを取り出す演算子である。
また、ｐ，ｑは、注目画素＊を原点とする係数マトリックスα上の座標位置を示し、ｐは横軸座標、ｑは縦軸座標である。ここで、−２≦ｑ≦０であり、ｑ＝０のとき−２≦ｐ≦−１、ｑ＝−１，−２のとき−２≦ｐ≦２である。
【００４９】
上述したａ，ｂの設定は、図６に模式的に示すごとく、均一濃度画素マトリックスを主走査方向ｘの先端縁部ＡＥと後端縁部ＢＥとを、後端縁部ＢＥの画素が、主走査方向ｘの先端縁部ＡＥの画素の内で副走査方向ｙの次の画素ラインの画素へ螺旋状に連続した画素配置状態で誤差分配されることを表している。
【００５０】
すなわち、図７に示すごとく通常の座標で表すと、画素位置Ｐ0（ｍ−３，ｋ＋１）が注目画素であった場合、係数マトリックスαの分配係数が適用される画素は、前記式３，４から、ｑ＝０のときはａ＝ｍ−５，ｍ−４、ｂ＝ｋ＋１であり、ｑ＝−１のときはａ＝ｍ−５，ｍ−４，ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋであり、ｑ＝−２のときはａ＝ｍ−５，ｍ−４，ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋ−１である。すなわち、図示の斜線の部分に該当し、Ｐ0の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５１】
次の注目画素の画素位置Ｐ1（ｍ−２，ｋ＋１）では、係数マトリックスαの分配係数が適用される画素は、図８に示すごとく、前記式３，４から、ｑ＝０のときはａ＝ｍ−４，ｍ−３、ｂ＝ｋ＋１であり、ｑ＝−１のときはａ＝ｍ−４，ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋおよびａ＝０、ｂ＝ｋ＋１であり、ｑ＝−２のときはａ＝ｍ−４，ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋ−１およびａ＝０、ｂ＝ｋである。すなわち、図示の斜線の部分に該当し、均一濃度画素マトリックスの主走査方向ｘの後端縁部ＢＥからはみ出た誤差分配領域の一部が、先端縁部ＡＥ側で副走査方向ｙへ１画素ラインずれた位置に設定される。Ｐ1の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５２】
以後同様に、次の注目画素の画素位置Ｐ2（ｍ−１，ｋ＋１）では、係数マトリックスαの分配係数が適用される画素は、図９に斜線で示すごとく、前記式３，４から、ｑ＝０のときはａ＝ｍ−３，ｍ−２、ｂ＝ｋ＋１であり、ｑ＝−１のときはａ＝ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋおよびａ＝０，１、ｂ＝ｋ＋１であり、ｑ＝−２のときはａ＝ｍ−３，ｍ−２，ｍ−１、ｂ＝ｋ−１およびａ＝０，１、ｂ＝ｋである。Ｐ2の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５３】
先端縁部ＡＥに戻った次の注目画素の画素位置Ｐ3（０，ｋ＋２）では、係数マトリックスαの分配係数が適用される画素は、図１０に斜線で示すごとく、前記式３，４から、ｑ＝０のときはａ＝ｍ−２，ｍ−１、ｂ＝ｋ＋１であり、ｑ＝−１のときはａ＝ｍ−２，ｍ−１、ｂ＝ｋおよびａ＝０，１，２、ｂ＝ｋ＋１であり、ｑ＝−２のときはａ＝ｍ−２，ｍ−１、ｂ＝ｋ−１およびａ＝０，１，２、ｂ＝ｋである。Ｐ3の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５４】
次の注目画素の画素位置Ｐ4（１，ｋ＋２）では、係数マトリックスαの分配係数が適用される画素は、図１１に斜線で示すごとく、前記式３，４から、ｑ＝０のときはａ＝ｍ−１、ｂ＝ｋ＋１およびａ＝０、ｂ＝ｋ＋２であり、ｑ＝−１のときはａ＝ｍ−１、ｂ＝ｋおよびａ＝０，１，２，３、ｂ＝ｋ＋１であり、ｑ＝−２のときはａ＝ｍ−１、ｂ＝ｋ−１およびａ＝０，１，２，３、ｂ＝ｋである。Ｐ4の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５５】
次の注目画素の画素位置Ｐ5（２，ｋ＋２）では、係数マトリックスαの分配係数が適用される画素は、図１２に斜線で示すごとく、前記式３，４から、ｑ＝０のときはａ＝０，１、ｂ＝ｋ＋２であり、ｑ＝−１のときはａ＝０，１，２，３，４、ｂ＝ｋ＋１であり、ｑ＝−２のときはａ＝０，１，２，３，４、ｂ＝ｋである。Ｐ5の画素はこの斜線部分の周辺画素から２値化誤差の分配を受ける。
【００５６】
このようにして、均一濃度画素マトリックスの主走査方向ｘの後端縁部ＢＥが誤差拡散処理において先端縁部ＡＥ側へ螺旋状に連続する誤差分配がなされる。このことは、誤差拡散処理による２値化が、均一濃度画素マトリックスの主走査方向ｘの後端縁部ＢＥと先端縁部ＡＥとが螺旋状に連続してなされていることを意味する。
【００５７】
このようにして２値化誤差和Ｅの補正により求められた補正濃度値Ｉ′xyは、次の条件▲１▼▲２▼のいずれかに合致しないものが、閾値ｔ（本実施の形態１では例えばｔ＝１２８）と比較されて、Ｉ′xy  ＞ｔならば、注目画素をオン（「１」）に２値化し、Ｉ′xy  ≦ｔならば、注目画素をオフ（「０」）に２値化され、条件▲１▼▲２▼のいずれかに合致するものは、その合致した条件にしたがって２値化される（Ｓ５２５）。
【００５８】
条件▲１▼：  最近上方２値化画素マトリックスＨと最近下方２値化画素マトリックスＬとの両者にて共に「１」オンが配置されている画素位置。この画素位置は、必ず「１」オンとする。
条件▲２▼：  最近上方２値化画素マトリックスＨと最近下方２値化画素マトリックスＬとの両者にて共に「０」オフが配置されている画素位置。この画素位置は、必ず「０」オフとする。
【００５９】
すなわち、通常、誤差拡散法においては、周辺の画素から分配された誤差Ｅと注目画素の濃度値Ｉxyとを合計した値を、閾値と比較して、閾値以上であれば「１」オン、閾値未満であれば「０」オフに２値化しているが、前記▲１▼または▲２▼の条件に該当する画素の場合には、その画素については閾値との比較をせずに、前記▲１▼または▲２▼の条件通りに、「１」オンまたは「０」オフに設定する。尚、条件▲１▼▲２▼は、「最近上方２値化画素マトリックスＨの画素値＝最近下方２値化画素マトリックスＬの画素値であるならば、最近上方２値化画素マトリックスＨまたは最近下方２値化画素マトリックスＬのいずれかの画素値に設定する」と表現することもできる。
【００６０】
次いで注目画素をオンに２値化した場合、次式の計算により、注目画素の２値化誤差ｅxyが求められ、この２値化誤差ｅxyが誤差バッファに記憶される（Ｓ５２６）。
【００６１】
【数５】
0003711615.tif 000006
【００６２】
また、注目画素をオフに２値化した場合には、次式のごとく、注目画素の２値化誤差ｅにＩ′xyが設定される。
【００６３】
【数６】
0003711615.tif 000007
【００６４】
前記条件▲１▼▲２▼により、図１３（ａ）に示すごとく、各画素位置において、濃度値の小さい方から見ると、一旦、オンとなると、以後の濃度値ｉおいては必ずオンとなる。
次に、一つの均一濃度画素マトリックスについて全ての画素の２値化処理が終了したか否かが判定され（Ｓ５２７）、終了していなければ（Ｓ５２７で「ＮＯ」）、次の画素位置を設定して（Ｓ５２８）、ステップＳ５２３の処理に戻る。
【００６５】
全ての画素の２値化が終了すれば（Ｓ５２７で「ＹＥＳ」）、ステップＳ５００の処理を終了して、図２に示すごとく、濃度値の配列が終了したか否かを判定し（Ｓ６００）、終了していなければ（Ｓ６００で「ＮＯ」）、配列中の次の濃度値を濃度値ｉに設定し（Ｓ４００）、この濃度値ｉに基づいて、ステップＳ５００の２値化処理を繰り返す。
【００６６】
配列の最後の濃度値について、その均一濃度画素マトリックスの２値化処理（Ｓ５００）が終了する（Ｓ６００で「ＹＥＳ」）と図５に示すごとく、ワーキングメモリ１４内には、濃度値ｉ＝０〜２５５の２５６個の２値化画素マトリックスＦ０〜Ｆ２５５が形成されている。
【００６７】
次に、全ての２値化画素マトリックスについて、同一位置の画素の内、オンに２値化されている数をカウントし、このカウント値を要素とする集積結果マトリックスＭ１を形成する（Ｓ７００）。
すなわち、図５に示すごとく、左上隅を原点（０，０）として横方向をｘ軸、縦方向をｙ軸とすると、まず、全ての２値化画素マトリックスＦ０〜Ｆ２５５の（０，０）について、オンとなった画素をカウントする。そのカウント結果を、図１４に示すごとくワーキングメモリ１４内に用意された集積結果マトリックスＭ１の同一位置（０，０）に格納する。このカウント処理を各画素位置について行い、集積結果マトリックスＭ１をすべて埋める。このカウント処理は、各画素がオンの場合は「１」に、オフの場合は「０」に２値化されているので、同一位置の画素における数値を合計して求めても良い。
【００６８】
次に、集積結果マトリックスＭ１のカウント値の低い画素位置から、順にディザマトリックス用の閾値を設定し（Ｓ８００）、その閾値からなるマトリックスをディザマトリックスとして、ディザマトリックス格納メモリ１６に保存する（Ｓ９００）。
【００６９】
この閾値の設定の方法としては、カウント値そのものを閾値として設定しても良い。この場合はステップＳ７００のカウント処理がディザマトリックスの閾値設定の処理に該当するので、ステップＳ８００では特に処理は行わない。そして、集積結果マトリックスＭ１そのものをディザマトリックスとして、ディザマトリックス格納メモリ１６に保存する（Ｓ９００）。
【００７０】
ステップＳ８００にては、単に集積結果マトリックスＭ１の各カウント値自体をそのまま閾値とする代りに、予め用意されたカウント値と閾値とのテーブルに応じて、集積結果マトリックスＭ１の各カウント値を閾値に変換しても良い。
また、ステップＳ８００にては、カウント値の低い順番から、閾値を「０，１，２，…」と設定して行っても良いし、逆にカウント値の高い順番から、閾値を「２５５，２５４，２５３，…」と設定して行っても良い。この場合、同一のカウント値が２つ以上存在する場合は、それらはすべて同一の閾値が与えられるものとしても良いし、同一のカウント値を順番付けして、異なるカウント値と同様に閾値を設定しても良い。
【００７１】
このようにして形成されたディザマトリックスを用いて、中間調のカラー画像を２値化処理し、カラープリンタにて記録したところ、人間の目に対してノイジーとならず、かつ解像度が悪化せず、紋様の発生が抑制された疑似中間調の２値化画像を生成することができた。勿論、ディザ法であり、誤差拡散法のように多数の計算は行わないので、迅速に処理できた。
【００７２】
更に、誤差拡散法による２値化処理にてディザマトリックスを作成する場合に、誤差拡散法の２値化処理において、均一濃度画素マトリックスの主走査方向ｘの先端縁部ＡＥの画素と後端縁部ＢＥの画素とを連続した画素配置状態で２値化処理することにより主走査方向ｘにおける縁部ＡＥ，ＢＥ同士の連続性を維持させている。その結果、得られたディザマトリックスにて、画像データを２値化処理すると、領域の境界での色むらや明暗むらを生じること無く、疑似的な境界線の発生が無い。
【００７３】
特に、本実施の形態では、均一濃度画素マトリックスの主走査方向ｘの後端縁部ＢＥの画素が、主走査方向ｘの先端縁部ＡＥの画素の内で副走査方向ｙの次の画素ラインの画素へ連続した画素配置状態で２値化処理すると、すなわち、主走査方向ｘの画素の配列が螺旋状にされた状態で２値化処理すると、後端縁部ＢＥの画素から先端縁部ＡＥの画素へと２値化処理が移行する場合にも、同一の係数マトリックスαを用いて同じ２値化誤差分配処理を行えば良いので、簡易な処理になると共に、２値化処理の連続性が、より良好となり一層疑似的な境界線の発生を抑制できる。
【００７４】
更に、本実施の形態では、ステップＳ５２０における２値化において、前記▲１▼▲２▼の条件を用いて、既に２値化されている前後の均一濃度画素マトリックスの２値化状態を考慮した２値化が行われている。
もし、前記▲１▼▲２▼の条件を用いない通常の２値化を行うと、図１３（ｂ）に示すごとく、オンとなった後も同じ画素位置でオフが出現する。このため、通常の２値化のみでは各画素位置におけるオンの数が、０〜２５５内の特定の値に偏る傾向が有るが、本実施の形態では、０〜２５５の範囲の各種の値に分散して好適な分布となる。したがって、このようにして得られるディザマトリックスは、閾値の値も０〜２５５の範囲に適度に分散して分布するものとなる。このため、特に、図１３（ｂ）に示したごとくの各均一濃度画素マトリックス独立に２値化している場合に得られるディザマトリックスに比較して、図１３（ａ）のごとくに得られたディザマトリックスは、画像データの２値化において、一層、解像度が向上し、紋様の抑制が行われる。
【００７５】
［実施の形態２］
実施の形態２として、中央の値を計算で求める例を図１５に示す。この処理は、図２におけるステップＳ３００〜Ｓ６００の代りに実行される。本処理において、最初は８つの変数Ｉ0 〜Ｉ7 を「０」で初期化し（Ｓ１０１０〜Ｓ１０８０）、次にＩ0 〜Ｉ7 までを合計して、濃度値ｉに設定する（Ｓ１０９０）。この濃度値ｉが「０」であれば、Ｉ7 を「１２８」増加させ（Ｓ１１２０）、次にＩ7 ＞１２８ではないので（Ｓ１１３０で「ＮＯ」）、ステップＳ１０９０の合計処理で濃度値ｉに「１２８」が設定され、ｉ＝０でなく（Ｓ１１００で「ＮＯ」）、ｉ＝２５５でもないので（Ｓ１１１０で「ＮＯ」）、ステップＳ５００の処理（図２の処理と同じ）がなされる。
次にステップＳ１１２０の処理にてＩ7 ＝２５６となり、ステップＳ１１３０にて「ＹＥＳ」と判定されて、Ｉ6 が「６４」増加され（Ｓ１１４０）、Ｉ6 ＝６４となり、Ｉ6 ＞６４ではないので（Ｓ１１５０で「ＮＯ」）、ステップＳ１０８０にてＩ7 ＝０に初期化され、ステップＳ１０９０ではｉ＝６４となる。したがって、ステップＳ１１００，Ｓ１１１０からステップＳ５００に移って、濃度値ｉ＝６４の均一濃度画素マトリックスについて２値化処理がなされる。
【００７６】
次に、ステップＳ１１２０にてＩ7 ＝１２８となり、ステップＳ１１３０にて「ＮＯ」と判定されて、ステップＳ１０９０では、Ｉ0 〜Ｉ5 ＝０、Ｉ6 ＝６４、Ｉ7 ＝１２８であることから、ｉ＝１９２となり、ステップＳ１１００，Ｓ１１１０の後、ステップＳ５００で濃度値ｉ＝１９２の均一濃度画素マトリックスについて２値化がなされる。
【００７７】
次にＩ0 〜Ｉ5 ＝０、Ｉ6 ＝６４、Ｉ7 ＝１２８であることから、ステップＳ１１２０からステップＳ１１６０まで進み、ステップＳ１１６０でＩ5 ＝３２となる。Ｉ5 ＞３２ではないので（Ｓ１１７０で「ＮＯ」）、ステップＳ１０７０，Ｓ１０８０が処理されて、Ｉ0 〜Ｉ4 ＝０、Ｉ5 ＝３２、Ｉ6 ＝０、Ｉ7 ＝０となる。したがって、ステップＳ１０９０ではｉ＝３２となり、ステップＳ５００では濃度値ｉ＝３２の均一濃度画素マトリックスが２値化される。
【００７８】
次にＩ7 ＝０となったので、ステップＳ１１２０，Ｓ１１３０を経て、ステップＳ１０９０に戻る。このとき、Ｉ0 〜Ｉ4 ＝０、Ｉ5 ＝３２、Ｉ6 ＝０、Ｉ7 ＝１２８となる。したがって、ステップＳ１０９０ではｉ＝１６０となり、ステップＳ５００では濃度値ｉ＝１６０の均一濃度画素マトリックスが２値化される。
【００７９】
次に、ステップＳ１１２０〜Ｓ１１５０，Ｓ１０８０が処理されて、Ｉ0 〜Ｉ4 ＝０、Ｉ5 ＝３２、Ｉ6 ＝６４、Ｉ7 ＝０となる。したがって、ステップＳ１０９０ではｉ＝９６となり、ステップＳ５００では濃度値ｉ＝９６の均一濃度画素マトリックスが２値化される。
【００８０】
以後、Ｉ0 〜Ｉ7 の値に応じて、ステップＳ１０２０〜Ｓ１０８０，Ｓ１１２０〜Ｓ１２６０のいずれかの処理により、順次、濃度値ｉに、２２４、１６，１４４，８０，…，１２７が設定されて、濃度値ｉの均一濃度画素マトリックスの２値化と保存が行われ、最後に、Ｉ0 ＝１、Ｉ1 ＝２、Ｉ2 ＝４、Ｉ3 ＝８、Ｉ4 ＝１６、Ｉ5 ＝３２、Ｉ6 ＝６４、Ｉ7 ＝１２８となる。このとき、ステップＳ１０９０にて濃度値ｉ＝２５５が設定されるので、ステップＳ１１１０にて「ＹＥＳ」と判定されて、ステップＳ７００の処理に移る。このようにして、計算にても中央の値をたどって、均一濃度画素マトリックスの２値化を行うことができる。
【００８１】
［実施の形態３］
本実施の形態は、図１４に示した実施の形態１または２にて形成されたディザマトリックスを、更に、ディザマトリックスの主走査方向ｘの先端縁部ＡＥにて副走査方向ｙに並んだ閾値要素列「１，１９，２５１，…」から後端縁部ＢＥにて副走査方向ｙに並んだ閾値要素列「３１，１５７，４４，…」にかけて、各閾値要素列を副走査方向ｙにずらすことにより、図１６に示すごとく、副走査方向ｙの先端縁部ＵＴおよび後端縁部ＤＴを主走査方向ｘに対して不一致とさせたディザマトリックスＭ２として形成している。
【００８２】
本実施の形態の場合は、ディザマトリックスＭ２の副走査方向ｙの先端縁部ＵＴおよび後端縁部ＤＴを斜めにして、主走査方向ｘに対して所定の角度θを有する直線状としているので、ディザマトリックスＭ２全体は、平行四辺形に形成されている。
【００８３】
このように形成されたディザマトリックスＭ２を用いてなされる２値化は、図１７に示すごとくに、ディザマトリックスＭ２の大きさの領域ＥＭ毎に２値化処理することになる。しかし、斜めの境界部分ＢＴで色むらや明暗むらが生じたとしても、そのことにより生じる疑似的な境界線は斜めの状態、すなわち主走査方向ｘの直線以外の状態となる。このような方法で２値化処理し、カラープリンタにて記録して見たところ、疑似的な境界線は目立たなくなった。すなわち、疑似的な境界線の発生を抑制できる。主走査方向ｘの境界部分ＡＴについては、前記実施の形態１，２と同様に、色むらや明暗むらを生じること無く、疑似的な境界線の発生は無い。
【００８４】
尚、本実施の形態では、副走査方向ｙの先端縁部ＵＴおよび後端縁部ＤＴは、主走査方向ｘに対して所定の角度θを有する直線状としているが、波を打つように凸凹に形成しても良い。またＶ字形あるいは逆Ｖ字形にしても良い。すなわち、ディザマトリックスの副走査方向ｙの先端縁部および後端縁部を、主走査方向ｘに直線状に配列されている状態から、斜めや凸凹に配列し直せば、疑似的な境界線は目立たなくなる。すなわち、疑似的な境界線の発生を抑制できる。
【００８５】
［その他］
前記各実施の形態では、２値化対象の均一濃度画素マトリックスと作成されるディザマトリックスとの大きさは同じで有ったが、特に、均一濃度画素マトリックスは、作成しようとするディザマトリックスよりも、副走査方向ｙにおいて大きいマトリックスを用いても良い。
【００８６】
例えば、図７〜図１２に示すごとく、均一濃度画素マトリックスの２値化結果の内で、太い実線で囲った特定領域Ａ［ｍ×（ｎ−ｋ）］の結果を用いてディザマトリックスを形成しても良い。
すなわち、この特定領域Ａの２値化値のカウント処理を行って、集積結果マトリックスＭ１を形成する。また、この特定領域Ａは、全ての均一濃度画素マトリックスＤ０〜Ｄ２５５において同一の位置に存在しても良いし、異なる位置に存在しても良い。
【００８７】
更に、この特定領域Ａは、誤差拡散処理における先頭画素ライン部分（図示していない）は含まず、最終画素ライン（ｙ＝ｎ−１）部分を含んでいる。これは、先頭画素ライン部分では、その前のラインが存在しないため２値化誤差の拡散において、後方のラインと比較して２値化誤差の分配に歪みを生じており、ドットの集中や特定のパターンが生じ易いからであり、この２値化誤差拡散の歪みの影響は先頭画素ラインから後方に離れるに従って少なくなり、最終画素ライン部分では最も影響が少ないからである。
【００８８】
また、濃度値ｉに応じて、先頭画素ライン部分で生じている誤差拡散の歪みが後方へ影響する程度が異なるため、全ての均一濃度画素マトリックスの２値化において誤差拡散の歪みの影響を無くすため、均一濃度画素マトリックスの大きさを濃度値ｉの値に応じて調整しても良い。
【００８９】
前記各実施例では、均一濃度画素マトリックスの濃度値を中央値を順次選んで２値化処理していたが、濃度値ｉ＝０〜２５５を昇順あるいは降順に処理しても良い。この場合、ステップＳ５２５のごとく、条件▲１▼▲２▼を用いて最近上方２値化画素マトリックスＨと最近下方２値化画素マトリックスＬとの２値化状態を考慮した２値化を行っても良いし、条件▲１▼▲２▼を用いない個々の均一濃度画素マトリックス単独に２値化を行っても良い。
【００９０】
前記各実施の形態では、中央の整数値をたどって２値化処理したが、完全に中央の整数値でなくても、１：２の位置、１：３の位置、２：１の位置、３：１の位置といったように、２値化済みの２つの濃度値の中間の値では有るが、小側あるいは大側に偏った整数値をたどって２値化処理しても良い。
【００９１】
前記各実施の形態において、前記カウント値もそのまま集積結果マトリックスＭ１として用いるのではなく、所定の係数をかけても良い。また、濃度値ｉの均一濃度画素マトリックスの２値化値Ｉixy に対して次式のごとく濃度値ｉ毎に異なる係数ｋ(i) を設定して、全ての均一濃度画素マトリックスの合計値Ｃxyを求めることにより、集積結果マトリックスＭ１を作成しても良い。
【００９２】
【数７】
0003711615.tif 000008
【００９３】
尚、ここで、ｘ，ｙは均一濃度画素マトリックスあるいは集積結果マトリックスＭ１上の画素位置を表す。
均一濃度画素マトリックスの２値化は、オン（「１」）またはオフ（「０」）への２値化であったが、いかなる値の２値化でも良く、いずれか一方の値の個数をカウントして、集積結果マトリックスＭ１を形成し、この集積結果マトリックスＭ１をディザマトリックスに変換すれば良い。また、上述したような個数のカウントではなく、２値化値の合計であっても良い。
【００９４】
前記各実施の形態における２値化は、２値化時に周辺画素から２値化誤差の分配を受けるタイプの誤差拡散法、いわゆる平均誤差最小法であったが、注目画素を２値化した場合に２値化の誤差を未だ２値化していない周辺の画素の濃度に分配する方法による誤差拡散法であっても良い。
【００９５】
前記実施の形態３において、変形したディザマトリックスＭ２を用いていたが、ディザマトリックス自体を変形しなくても、前記実施の形態１，２のように形成したディザマトリックスによる２値化処理時に、ディザマトリックスの主走査方向ｘの先端縁部ＡＥにて副走査方向ｙに並んだ閾値要素列から後端縁部ＢＥにて副走査方向ｙに並んだ閾値要素列にかけて、ディザマトリックスの副走査方向ｙの先端縁部ＵＥおよび後端縁部ＤＥが主走査方向ｘに対して不一致となるように各閾値要素列を副走査方向ｙにずらした閾値の配置に基づいて画像データの各画素の濃度値を２値化することによっても同様に疑似的な境界を抑制できる。
【００９６】
また、前記実施の形態３のように変形したディザマトリックスＭ２を更に、図１８に示すごとく、図１６にて、元の位置より副走査方向ｙにずれてはみ出した分Ｚを、同じ閾値要素列の上部に移動させることにより、平行四辺形から元の形と同じ矩形に戻したディザマトリックスＭ３としても良い。このようにすると、実施の形態３と同じ効果が得られると共に、ディザマトリックスＭ３が矩形であるので、通常、矩形である画像データに適用し易いので、画像の２値化処理が容易となる。
【図面の簡単な説明】
【図１】  実施の形態１のディザマトリックス作成装置の主要ブロック図である。
【図２】  実施の形態１のディザマトリックス作成処理のフローチャートである。
【図３】  実施の形態１の２値化処理のフローチャートである。
【図４】  実施の形態１の均一濃度値画像データを示す説明図である。
【図５】  実施の形態１の均一濃度値画像データを２値化した状態を示す説明図である。
【図６】  実施の形態１の２値化処理の連続性説明図である。
【図７】  実施の形態１の誤差分配説明図である。
【図８】  実施の形態１の誤差分配説明図である。
【図９】  実施の形態１の誤差分配説明図である。
【図１０】  実施の形態１の誤差分配説明図である。
【図１１】  実施の形態１の誤差分配説明図である。
【図１２】  実施の形態１の誤差分配説明図である。
【図１３】  実施の形態１の各画素位置のオン・オフ設定状態の説明図である。
【図１４】  実施の形態１の集積結果マトリックスの説明図である。
【図１５】  実施の形態２の均一濃度画素マトリックスの処理順序を決定する方法を示すフローチャートである。
【図１６】  実施の形態３のディザマトリックスの説明図である。
【図１７】  実施の形態３のディザマトリックスの適用説明図である。
【図１８】  実施の形態３のディザマトリックスの変形例説明図である。
【図１９】  従来例を示す説明図である。
【符号の説明】
２…ディザマトリックス作成装置    １０…入力部
１１…マイクロコンピュータ部    １２…ＣＰＵ
１３…プログラムメモリ    １４…ワーキングメモリ
１６…ディザマトリックス格納メモリ
１７…出力イメージメモリ    １８…システムバス
１９…出力部
【図１】
0003711615.tif 000009
【図２】
0003711615.tif 000010
【図３】
0003711615.tif 000011
【図４】
0003711615.tif 000012
【図５】
0003711615.tif 000013
【図６】
0003711615.tif 000014
【図７】
0003711615.tif 000015
【図８】
0003711615.tif 000016
【図９】
0003711615.tif 000017
【図１０】
0003711615.tif 000018
【図１１】
0003711615.tif 000019
【図１２】
0003711615.tif 000020
【図１３】
0003711615.tif 000021
【図１４】
0003711615.tif 000022
【図１５】
0003711615.tif 000023
【図１６】
0003711615.tif 000024
【図１７】
0003711615.tif 000025
【図１８】
0003711615.tif 000026
【図１９】
0003711615.tif 000027