(57)【特許請求の範囲】
【請求項１】
Ｍ階調の入力画像データを誤差拡散法によりＮ階調（Ｍ＞Ｎ）の画像データに量子化する画像形成装置であって、Ｍ階調をＮ−１個の区間に分割した区間毎に設定された閾値から、前記入力画像データの階調値に応じた閾値を選択する閾値量決定手段と、前記入力画像データのエッジ量を抽出するエッジ量抽出手段と、前記エッジ量抽出手段で抽出したエッジ量が大きいほど値が小さくなるように、前記閾値量決定手段で選択した閾値を補正する閾値補正手段と、前記閾値補正手段で補正した閾値を用いて前記入力画像データの量子化を行う量子化手段とを有することを特徴とする画像形成装置。
【請求項２】
Ｍ階調の入力画像データを誤差拡散法によりＮ階調（Ｍ＞Ｎ）の画像データに量子化する画像形成方法であって、Ｍ階調をＮ−１個の区間に分割した区間毎に設定された閾値から、前記入力画像データの階調値に応じた閾値を選択する閾値量決定工程と、前記入力画像データのエッジ量を抽出するエッジ量抽出工程と、前記エッジ量抽出工程で抽出したエッジ量が大きいほど値が小さくなるように、前記閾値量決定工程で選択した閾値を補正する閾値補正工程と、前記閾値補正工程で補正した閾値を用いて前記入力画像データの量子化を行う量子化工程とを有することを特徴とする画像形成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、誤差拡散処理によってＭ階調の画像データをＮ（Ｍ＞Ｎ）値化する画像形成装置に関し、プリンタ、デジタル複写機、ファクシミリなどに好適な技術である。
【０００２】
【従来の技術】
近年、プリンタの高画質化とＰＣの高速化が著しい。プリンタの出力解像度は、１２００×１２００ｄｐｉへと高解像度になり、また１２００ｄｐｉにおいて出力するドットサイズを、小中大ドットに切替を可能とした機種もある。インクジェットプリンタの高解像度化は、インクを射出するヘッドを高密度化し、紙搬送の精度を向上させ、あるいは粘性の高いインク等を用いることで射出した用紙上でのインクの広がりを抑え、さらに射出するインク量を制御して小中大ドットとドット径を変化させることにより行っている。また、電子写真においては、感光体に露光する書込み径を高密度化し、紙に転写するトナー粒径を小さくするなどで高解像度化を行い、さらに、書込みの露光をパルス幅分割して、１ドットの形成する露光量を制御し、あるいは露光で用いるレーザー光の強度に強弱を加えてドット径を変調させ、高解像度化を図っている。
【０００３】
インクジェットプリンタでは、濃度が異なったインクを用いてＮ値化画像を再現している。濃度を淡インクと濃インクに分け（通常、淡インクの濃度は濃インクの１／３〜１／６に希釈）、ハイライト部においては淡インクを使用し、中〜高濃度部においては濃インクを使用して画像を再現している。
【０００４】
インクジェット方式の濃淡インクによる多値階調表現や電子写真方式のドット径変調による多値階調表現は、Ｍ階調の画像をＮ値（２＜Ｎ＜Ｍ）へ量子化して再現する出力機には特に有用な技術であり、高画質化への寄与が大きい。
【０００５】
画像を再現する際に、粒状性を向上させることが重要であり、印字に必要なドットを高密度化し、ドット径変調や濃淡インクを使用することにより、ハイライト部の粒状性が向上する。通常、粒状性を良くするために、人間の目には気づきにくい小さいドットを一様に分布させる対策が採られている。
【０００６】
ドット径変調ができないプリンタでは、ドットを出力した個数の占める面積で階調表現する面積階調の手法を採るが、このようなプリンタでは、中濃度部の再現を一様なドットで出力することができ、ドット径も見えにくくかつ一様に出力されているため粒状性は良い。これは、高解像度のプリンタでも同様である。しかし、低解像度のプリンタでは、ハイライト部で大きいドットを出力し、その間隔が広くなることから孤立ドットが目立ち、粒状性が悪い。高解像度のプリンタでは、ドット径が小さくなり、より多くのドットが出力され、粒状性は改善される。さらに、ドット径変調では、小ドットを多く出現させて濃度を表現するため粒状性が改善され、淡インクを使用すれば濃度が低く視覚されにくいため、より一層粒状性が向上する。
【０００７】
ところで、一般的に、Ｍ階調の画像データを、Ｎ（Ｍ＞Ｎ）値出力可能なプリンタ装置に出力する場合などでは、各画素の階調数を減らす量子化処理が行われるが、このような量子化処理の手法として、階調性と鮮鋭性に優れた誤差拡散法や平均誤差最小法がある。
【０００８】
誤差拡散法とは、ある画素の量子化時に生じた量子化誤差を、周辺のまだ量子化していない画素へ重み付けをして拡散分配する擬似中間調処理であり、また、平均誤差最小法とは、周辺の量子化済みの画素に生じた量子化誤差の重み付き平均値により、注目画素の画像データ値を補正する擬似中間調処理である。これらの手法では、量子化誤差が全画像で保存するため階調性に優れた画像が得られる。なお、誤差拡散法と平均誤差最小法は、誤差の拡散処理を行う時点が異なるだけであるので、以下、誤差拡散法と平均誤差最小法をまとめて誤差拡散法として説明する。
【０００９】
図１は、従来の誤差拡散処理の構成を示す。誤差拡散処理は、入力（多階調画像データ）１と、誤差拡散マトリクス７で予め算出された誤差とを加算器２で加算して量子化部３に入力する。量子化部３への入力値と量子化閾値とを比較して出力値４を決定する。そして、その出力値４と量子化部３に入力された値との差を減算器５で算出し、注目画素の誤差として誤差メモリ６に保存する。次画素の処理において、誤差拡散マトリクス７では、例えば注目画素（＊）近傍の４画素分の誤差を用いて注目画素の誤差を求め、入力値１に加算する。以上の処理を各画素毎に繰り返すことにより、画像の濃度が保存された誤差拡散処理が行われる。
【００１０】
多値誤差拡散処理の一例として４値誤差拡散処理における出力ドットの割合を図２に示す。４値量子化出力値をそれぞれ０（ドットオフ），８５（小ドット），１７０（中ドット），２５５（大ドット）とすると、入力データレベルが８５までは濃度が増すにつれて小ドットの割合が増加し、入力データレベル８５で小ドットの割合が１００％となる。入力データレベルが８５〜１７０までは、小ドットの割合が減少して中ドットの割合が増加し、入力データレベル１７０で中ドットの割合が１００％となる。入力データレベルが１７０〜２５５までは中ドットの割合が減少して大ドットの割合が増加し、入力データレベル２５５で大ドットの割合が１００％となる。
【００１１】
【発明が解決しようとする課題】
誤差拡散法は、階調性に優れているが、量子化出力値の切り替り部に視覚的な段差が生じてしまう。以下、２５６階調（各画素を８ビットで表現）から４値の誤差拡散、すなわちＭ＝２５６、Ｎ＝４として説明する。誤差拡散後の４値量子化出力値をＯ１（ドットオフまたは空孔）、Ｏ２（小ドット）、Ｏ３（中ドット）、Ｏ４（大ドット）とし、各４値量子化出力値の階調を０、８５、１７０、２５５とし、閾値を各出力値の中間、４３、１２８、２１３とする。ここでは、Ｏ１（ドットオフ）を白、Ｏ４（２５５）を黒とするが、その逆であってもよい。
【００１２】
階調値が０から１２８へ変化するグラデーション画像に対して誤差拡散処理を行った場合、入力値の階調が８５未満であればＯ１（ドットオフ）とＯ２（小ドット）で階調が表現される。入力値の階調が８５の場合、Ｏ２（小ドット）が埋め尽くされることにより表現される。入力値の階調が８６以上であればＯ２（小ドット）とＯ３（中ドット）で表現される。
【００１３】
図３は、階調値が０から１２８へ変化するグラデーション画像に対して単純４値誤差拡散処理を行った結果を示す。グラデーションの変化の割合と処理方向によっては図３に示すように、入力値の階調が８６において、Ｏ３（中ドット）の出力が遅れ、出力値Ｏ２（小ドット）で埋め尽くされる領域が広がってしまう。同様に、このような現象は階調値が１２８から０へ変化するグラデーション画像に対して誤差拡散処理を行った場合も、入力値の階調が８４において、Ｏ１（ドットオフ）の出力が遅れ、出力値Ｏ２（小ドット）で埋め尽くされる領域が広がってしまう。
【００１４】
Ｎ値誤差拡散の量子化出力値と入力値が同じである場合、つまり、上記した例では入力の階調値が０、８５、１７０、２５５である場合、それぞれＯ１（ドットオフ）、Ｏ２（小ドット）、Ｏ３（中ドット）、Ｏ４（大ドット）を埋め尽くすことにより表現され、この領域では他の出力値と混じることがないため画像の周波数特性が均一になり粒状性がよい。これに対して、他の領域では、Ｎ値量子化出力値の組合せによって階調が表現され、これらの領域では２つの出力値が混在するため画像の周波数特性が乱れた状態になる。つまり、入力値が０から１２８へ変化するグラデーション画像においては、入力の階調値が８５である箇所のみが、他の階調よりも粒状性が良好となるために違和感が生じる。
【００１５】
入力の階調値が０や２５５である場合も同様に粒状性が良好となるが、入力の階調値が８５や１７０の場合と異なる。入力の階調値が０から１２８へ変化する場合、階調値８５近傍の粒状性の変化は、
乱れた画像  →  均一な画像  →  乱れた画像
と変化し、均一な画像が乱れた画像に挟まれることにより視覚しやすい。このように、量子化出力値の切り替り部（階調値８５、階調値１７０）に階調段差、いわゆる擬似輪郭が生じる。
【００１６】
これに対して、階調値０の近傍では粒状性の変化は、
均一な画像  →  乱れた画像
となり視覚しにくい。つまり、白地（階調値０）またはべた部（階調値２５５）の近傍領域では、人間の視覚的先入観により違和感は生じにくい。階調値０近傍（階調値１）では、粒状性の違和感が問題ではなく、階調値１のドット出現の遅れによって、白地領域が増えてしまうという、誤差拡散処理におけるドット生成の遅れが問題となる。
【００１７】
前述したように、図３の階調値８５、８６では、出力値Ｏ２（小ドット）で埋め尽くされている。本来ならば、階調値８６では多くのＯ２（小ドット）といくらかのＯ３（中ドット）が出力されることにより、階調値８６の濃度が再現されるが、図３の画像ではＯ３（中ドット）が出力されていない。このように、４値量子化出力値の切り替り部でのドット生成の遅れによっても、階調値８５の切り替り部に階調段差（擬似輪郭）が生じ、画質を低下させている。階調値１７０においても同様に切り替り部に段差が生じる。
【００１８】
一般に、Ｎ値誤差拡散法では、粒状性が特異的に良好になり、違和感が生じる箇所は、白地、べた部を除いてＮ−２箇所となる。この箇所（Ｎ値量子化出力値の切り替り部）に生じる段差が画像品質を低下させている。
【００１９】
上記したようなドット生成の遅れに対処した従来技術として、例えば濃度に応じて閾値を変化させ、２値誤差拡散におけるハイライト部でのドット生成遅れや、べた部での空孔生成の遅れをなくした画像処理装置がある（特開平７−１１１５９１号公報を参照）。また、多値誤差拡散におけるドット生成遅れをなくし、鮮鋭性を向上させたものとして、例えば特開平１０−２５７３０２号公報に記載された技術もある。
【００２０】
上記した従来の技術では、何れもドット生成の遅れによる画像のひずみ問題を解決しているが、多値誤差拡散処理において、Ｎ値量子化出力値の切り替り部でのドット生成の遅れによる、画像品質の低下問題について、特に考察していない。
【００２１】
そこで、このような量子化出力値の切り替り部に対して、ノイズを加算し、中ドットとドットオフを出現させることにより段差（擬似輪郭）を目立たなくする試みがなされている。図４は、４値誤差拡散処理時に±３２の振幅をもつ乱数を、階調値８５へ加算した結果を示す。
【００２２】
しかし、このような方法では、階調値８５には、階調値８６、８７よりも多く中ドットが出現することから階調が逆転してしまい、また乱数を加算しているため、ドットオフ、中ドットの出現位置が乱れて粒状性が悪く、さらに乱数を用いるため高速処理に適していないという問題がある。
【００２３】
本発明は上記した問題点に鑑みてなされたもので、
本発明の目的は、誤差拡散処理において、量子化出力値の切り替り部に生じる階調段差（いわゆる擬似輪郭）を目立たなくし、またハイライト部近傍、べた部近傍でのドット生成の遅れをなくして、再生画像の画質向上を図った画像形成装置および画像形成方法を提供することにある。
【００２４】
本発明の他の目的は、誤差拡散処理において、Ｍ階調の入力を、階調段差が生じる箇所によって複数の区間に分割し、分割された各区間で、入力の階調値に応じて閾値を変化させることにより、量子化出力値の切り替り部近傍でのドット生成の遅れをなくして、再生画像の画質向上を図った画像形成装置および画像形成方法を提供することにある。
【００２５】
本発明のさらに他の目的は、誤差拡散処理において、入力の階調値に応じて閾値を変化させたときの鮮鋭性の低下を防止し、鮮鋭な画像を再生する画像形成装置および画像形成方法を提供することにある。
【００２６】
【課題を解決するための手段】
本発明では、４値誤差拡散処理において、量子化出力値の切り替り部で発生する擬似輪郭を解消するために、量子化出力値８５の近傍階調８４、８６の画像の空間周波数より低周波となるデータを量子化出力値８５に重畳する。
【００２７】
Ｍ階調から２値へ量子化する誤差拡散処理において、量子化出力値の近傍において、画像空間上で低周波となるドットまたは白ドットを発生させるようにデータを加減算する。
【００２８】
Ｍ階調から２値へ量子化する誤差拡散処理において、量子化出力値の近傍において、画像空間上で低周波となるデータを入力値または閾値に加減算する。
【００２９】
Ｍ階調からＮ値（Ｍ＞Ｎ＞２）へ量子化する誤差拡散処理において、量子化出力値またはその近傍において、画像空間上で低周波となるドットを発生させるようにデータを加減算する。
【００３０】
Ｍ階調からＮ値（Ｍ＞Ｎ＞２）へ量子化する誤差拡散処理において、量子化出力値またはその近傍において、画像空間上で低周波となるデータを入力値または閾値に加減算する。
【００３１】
Ｍ階調からＮ値（Ｍ＞Ｎ）へ量子化する誤差拡散法において、量子化出力値Ｏ１、Ｏ２、Ｏ３、…Ｏａ、…、Ｏｎの内、ある量子化出力値Ｏａに対して近傍階調Ｏａ−１、近傍階調Ｏａ＋１の画像の空間周波数より低周波となるノイズを量子化出力値Ｏａに重畳することにより擬似輪郭発生を解消する。
【００３２】
量子化出力値Ｏａに重畳する画像空間上で低周波となるデータは、量子化出力値Ｏａ近傍の階調値Ｏａ−１より低周波で発生するデータと階調値Ｏａ＋１より低周波で発生するデータの重ね合わせたものである。これにより、ノイズを加算した結果Ｏａの濃度がＯａ−１の濃度より低くなり、階調の逆転現象が起きず、Ｏａの濃度がＯａ＋１の濃度より高くなり、階調の逆転現象が起きない。
【００３３】
量子化出力値近傍に重畳する画像空間上で低周波となるデータは、量子化出力値近傍の階調値Ｏ１＋１、Ｏ２−１、Ｏ２＋１、Ｏ３−１、Ｏ３＋１、…、Ｏａ−１、Ｏａ＋１、…、Ｏｎ−１の内、ある階調値Ｏａ−１に対して近傍の階調値Ｏａ−２より低周波で発生するデータ、または階調値Ｏａ＋１に対して近傍の階調値Ｏａ＋２より低周波で発生するデータである。これにより、ノイズを加算した結果Ｏａ−１の濃度がＯａ−２の濃度より低くなり、階調の逆転現象が起きず、Ｏａ＋１の濃度がＯａ＋２の濃度より高くなり、階調の逆転現象が起きない。
【００３４】
量子化出力値Ｏａに重畳する画像空間上で低周波となるデータは、量子化出力値Ｏａに対してＭ画素あたりにＮ−１個以下の量子化出力値Ｏａ−１と、Ｍ画素あたりにＮ−１個以下の量子化出力値Ｏａ＋１を出現させるデータである。これにより、量子化出力値Ｏａに重畳する低周波ノイズの上限が設定される。
【００３５】
量子化出力値Ｏａに対して減算することにより量子化出力値Ｏａに対してＭ画素あたりにＮ−１個以下の量子化出力値Ｏａ−１を出現させ、量子化出力値Ｏａに対して加算することにより量子化出力値Ｏａに対してＭ画素あたりにＮ−１個以下の量子化出力値Ｏａ＋１を出現させる。これにより、量子化出力値Ｏａに量子化出力値Ｏａ−１を出現させるためのノイズが設定され、量子化出力値Ｏａに量子化出力値Ｏａ＋１を出現させるためのノイズが設定される。
【００３６】
量子化出力値近傍に重畳する画像空間上で低周波となるデータは、量子化出力値Ｏａの近傍の階調値をＯａ−ｂ＋１、Ｏａ−ｂ、Ｏａ−ｂ−１、…、Ｏａ−２、Ｏａ−１、Ｏａ、Ｏａ＋１、Ｏａ＋２、…、Ｏａ＋ｂ−１、Ｏａ＋ｂ、Ｏａ＋ｂ＋１とするとき、ある量子化値Ｏａからｂ階調離れたＯａ−ｂに対してＭ画素あたりにｂ（Ｎ−１）個以下の量子化出力値Ｏａ−１、またはあるＯａ＋ｂに対してＭ画素あたりにｂ（Ｎ−１）個以下の量子化出力値Ｏａ＋１を出現させる。これにより、量子化出力値Ｏａ±１に重畳する低周波ノイズの上限が設定される。
【００３７】
近傍階調値Ｏ１＋２より低周波で発生するデータにより量子化出力値Ｏ１＋１に出現するＯ１の個数と、近傍階調値Ｏ２−２より低周波で発生するデータにより量子化出力値Ｏ２―１に出現するＯ２の個数を等しくする。
【００３８】
低周波のデータはＯａ−１、Ｏａ＋１を出現させる位置を規定した行列で配置する。また、行列を複数用意し、乱数により選択することにより出現位置を発生させる。行列を回転させてから出現位置を発生させ、行列を対称変換させてから出現位置を発生させる。行列を複数用意し、出力する色で選択することにより、出現位置を発生させる。これにより、マスクで規定したドット出現位置を変動させることができる。
【００３９】
本発明では、２値誤差拡散処理において、量子化出力値０、２５５の近傍、すなわちハイライト部近傍に良好にドットを出現させ、または、べた部近傍に良好にドットオフ（空孔）を出現させるためのノイズを重畳し、ハイライト部近傍、べた部近傍のドット生成の遅れを解消する。
【００４０】
本発明では、Ｍ階調をＮ値（Ｍ＞Ｎ）へ量子化する誤差拡散法において、Ｍ階調をＮ−１個の区間に分割し、ある区間ｎでの閾値Ｔｎを、区間ｎに入力された入力値に応じて変化させることにより、各区間の始点や終点近傍において発生するドット生成の遅れを解消する。
【００４１】
Ｍ階調からＮ値（Ｍ＞Ｎ）へ量子化する誤差拡散法において、Ｍ階調をＮ−１個の区間に分割し、少なくとも１つの区間において区間内の閾値間隔をほぼ同一にする。これにより、特定の区間のみ濃度に応じて閾値を変動させ、その区間の始点や終点近傍において発生するＮ値量子化出力値の切り替り部の遅れを解消し、画像品質を良好にする。他の区間では固定の閾値を設定することにより、処理を高速化する。
【００４２】
上記した少なくとも１つの区間において、指定した１つの閾値式を基に同一区間内の別閾値を作成する。これにより、区間ｎ１の量子化出力値Ｏａ、Ｏｂの出力を判別する閾値Ｔｈｒｎ１ＯａＯｂを濃度に応じて変動させ、その変動させる導出式を、区間ｎ１の量子化出力値Ｏｂ、Ｏｃの出力を判別する閾値Ｔｈｒｎ１ＯｂＯｃの条件に当てはめた導出式が作成される。
【００４３】
上記した少なくとも１つの区間において、指定した１つの閾値式を同一区間内の別閾値へ同一レベルで作成する。これにより、ある区間のある閾値を濃度に応じて変動させ、その変動させる導出式に必要な条件を、他の閾値の条件に当てはめた導出式が作成される。
【００４４】
上記した少なくとも１つの区間において、指定した１つの閾値式を同一区間内の他の閾値にシフトする。これにより、ある区間のある閾値を濃度に応じて変動させ、その変動させる導出式に定数を加算し、他の閾値の条件に当てはめた導出式が作成される。
【００４５】
上記した少なくとも１つの区間において、指定した１つの閾値式を基に、他の区間の閾値を作成する。これにより、区間ｎ１の量子化出力値Ｏａ、Ｏｂの出力を判別する閾値Ｔｈｒｎ１ＯａＯｂを濃度に応じて変動させ、その変動させる導出式を、他の区間ｎ２の量子化値Ｏａ、Ｏｂの出力を判別する閾値Ｔｈｒｎ２ＯａＯｂに適用して作成することができる。
【００４６】
上記した少なくとも１つの区間においては、階調値とともに増加する閾値または階調値の増加に対して同一の閾値である。ある区間のある閾値を濃度に応じて変動させ、その変動させる導出式は濃度の増加と共に増加する。または、濃度の変動に対して閾値は固定である。
【００４７】
本発明では、Ｍ階調をＮ−１個の区間に分割し、ある区間ｎでの閾値Ｔｎを、区間ｎに入力された入力値に応じて変化させた場合に生じる鮮鋭性の劣化を、画像のエッジ度合いに応じて閾値を制御することにより解消する。
【００４８】
【発明の実施の形態】
以下、本発明の一実施例を図面を用いて具体的に説明する。まず、本発明が適用される、例えばインクジェット記録装置、レーザプリンタについてその概略を説明する。
【００４９】
図５は、インクジェット記録装置の機構部を示す。インクジェット記録装置は、フレーム２１に横架したガイドレール２２，２３に移動可能に載設されたキャリッジ２４にインクジェット記録ヘッド（以下、記録ヘッド）２５を搭載し、図示しないモータ等の駆動源によってキャリッジ２４を矢示方向に移動して走査（主走査）可能とするとともに、ガイド板２６にセットされる用紙２７を、図示しない駆動源によってドライブギヤ２８及びスプロケットギヤ２９を介して回動される送りノブ３０ａを備えたプラテン３０に取込み、プラテン３０周面とこれに圧接するプレッシャローラ３１とによって搬送し、記録ヘッド２５によって用紙２７に印字記録する。
【００５０】
記録ヘッド２５は、図６に示すように、ブラック（Ｂｋ）、イエロー（Ｙ）、マゼンタ（Ｍ）及びシアン（Ｃ）の各インクをそれぞれ吐出するための４個のインクジェットヘッドＫ、Ｙ、Ｍ、Ｃや、図７に示すように、ブラック（Ｂｋ）、イエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ライトイエロー（ＬＹ）、ライトマゼンタ（ＬＭ）及びライトシアン（ＬＣ）の各インクをそれぞれ吐出するための７個のインクジェットヘッドＫ、Ｙ、Ｍ、Ｃ、ＬＹ、ＬＭ、ＬＣを主走査方向の同一線上に配置して構成している。その構成によってはインクの数を増減させてもよい。具体的には、ハイライト部でイエローのドットは目視しにくいのでライトイエローを省いて（コストダウン）も良いし、ライトブラックや、シアン、マゼンタ、イエロー、ブラックの各色の濃度を３段、４段に分けた構成にして、高画質を実現した記録ヘッドでもよい。各インクジェットヘッドは、例えば圧電素子、気泡発生用ヒータ等のエネルギー発生手段であるアクチュエータを選択的に駆動して、液室内のインクに圧力を与えることによって、この液室に連通するノズルからインク滴を吐出飛翔させて、前記用紙２７に付着させることで画像を記録する。ここでアクチュエータの駆動信号を多数用意することにより、１ノズルから吐出されるインク量を制御することが可能となり、用紙上で大小ドット、大中小ドットなど多階調表現が可能となる。
【００５１】
図８は、インクジェット記録装置の制御部を示す。インクジェット記録装置の制御部は、印字制御手段を兼ねた印字制御部３１、記録ヘッド２５の各ヘッドＫ，Ｙ，Ｍ，Ｃの各アクチュエータを駆動するヘッド駆動部３２、キャリッジ２４を駆動制御するキャリッジ駆動制御部３３、プラテン３０を回転駆動するラインフィード駆動制御部３４等からなる。印字制御部３１は受信した画像データに基づいてヘッド駆動部３２を介して各ヘッドＫ，Ｙ，Ｍ，Ｃから所定の色のインクを吐出（噴射）させて画像データに応じた画像を記録させるが、キャリッジ２４の往動（往路）及び復動（復路）で予め定めた色のインクのみが噴射制御される。
【００５２】
図９は、電子写真方式の画像形成部であるレーザプリンタを示す。レーザプリンタ４０は、感光体ドラム４１を用いて画像の再生を行う。感光体ドラム４１の周囲には、一連の静電写真プロセスを行うユニット、即ち、帯電手段としての帯電チャージャ４５、光書き込みユニット４３、現像ユニット４４、転写ドラム４２、クリーニングユニット４６などが配置されている。光書き込みユニット４３には図示しない半導体レーザ（レーザダイオードＬＤ）が備えられ、このＬＤが発するレーザ光は偏向走査手段としての回転多面鏡４３ｂにより主走査方向に偏向走査されてレンズ４３ｃ、ミラー４３ｄ及びレンズ４３ｅを経て感光体ドラム４１の表面に結像される。回転多面鏡４３ｂはポリゴンモータ４３ａにより高速で定速回転駆動される。
【００５３】
図示しない画像制御部は、多階調の画像信号により駆動されるＬＤの発光タイミングが回転多面鏡４３ｂのレーザ光偏向走査と同期するようにＬＤの駆動信号を制御し、つまり、感光体ドラム４１上を所定の光書き込み開始位置からレーザ光で主走査方向に走査するようにＬＤの発光を制御する。感光体ドラム４１は、予め帯電手段としての帯電チャージャ４５によるコロナ放電で一様に高電位に帯電された後に、光書き込み手段としての光書き込みユニット４３からのレーザ光により露光されて静電潜像が形成される。この感光体ドラム４１上の静電潜像は現像手段としての現像ユニット４４により可視像化される。
【００５４】
現像ユニット４４は、例えば感光体ドラム４１上の静電潜像を各々マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｂｋ）各色の画像に顕像化する４組の現像器Ｍ，Ｃ，Ｙ，Ｂｋを備えている。現像器Ｍ，Ｃ，Ｙ，Ｂｋはいずれか一つが選択的に付勢されて現像動作を行い、感光体ドラム４１上の静電潜像はＭ、Ｃ、Ｙ、Ｂｋ各色のいずれか一色のトナー像に顕像化される。
【００５５】
一方、給紙装置としての給紙カセット５１に収納された転写紙は、給紙コロ５２で繰り出され、レジストローラ５３によりタイミングを取って転写ドラム４２の表面に送り込まれ、転写ドラム４２の表面に吸着されて転写ドラム４２の回転に伴って移動する。感光体ドラム４１上のトナー像は転写手段としての転写チャージャ４７により転写ドラム４２上の転写紙に転写される。
【００５６】
単色コピーモードの場合には、単色の作像プロセスが行われ、光書き込みユニット４３のＬＤがその単色の画像信号で変調されて感光体ドラム４１上にその単色のトナー像が形成され、このトナー像が転写紙に転写された後に転写紙が転写ドラム４２から分離される。この転写紙は、定着器４９でトナー像が定着され、排紙トレイ５０に排紙される。また、フルカラーモードの場合には、Ｂｋ、Ｍ、Ｃ、Ｙ各色の画像を感光体ドラム４１上に順次に形成する各色の作像プロセスが順次に行われ、感光体ドラム４１上に順次に形成されたＢｋ、Ｍ、Ｃ、Ｙ各色の画像が一枚の転写紙上に重ねて転写される。
【００５７】
この場合は、まず、光書き込みユニット４３のＬＤがＢｋ画像信号で変調されて感光体ドラム４１上にＢｋトナー像が形成され、このＢｋトナー像が転写ドラム４２上の転写紙に転写された後に、転写紙が転写ドラム４２から分離されることなく、光書き込みユニット４３のＬＤがＭ画像信号で変調されて感光体ドラム４１上にＭトナー像が形成され、このＭトナー像が転写ドラム４２上の転写紙にＢｋトナー像と重ねて転写される。
【００５８】
更に、光書き込みユニット４３のＬＤがＣ画像信号で変調されて感光体ドラム４１上にＣトナー像が形成され、このＣトナー像が転写ドラム４２上の転写紙にＢｋトナー像、Ｍトナー像と重ねて転写された後に、光書き込みユニット４３のＬＤがＹ画像信号で変調されて感光体ドラム４１上にＹトナー像が形成され、このＹトナー像が転写ドラム４２上の転写紙にＢｋトナー像、Ｍトナー像、Ｃトナー像と重ねて転写されることによりフルカラー画像が形成される。Ｂｋ、Ｍ、Ｃ、Ｙ各色のトナー像の転写が全て終了すると、転写ドラム４２上の転写紙は分離チャージャ４８により転写ドラム４２から分離されて定着器４９でトナー像が定着された後に排紙トレイ５０に排出される。
【００５９】
以上、作像動作を説明したが、本発明に係るカラー画像形成装置は上記した構成に限定されず、転写ドラム４２に代えて中間転写ベルト等の中間転写体を用い、Ｂｋ、Ｍ、Ｃ及びＹの４色のトナー像を色毎に感光体ドラムに形成して、順次に中間転写体に重ね合わせて転写した後、トナー像を中間転写体から転写紙に一括して転写する方式などでもよい。また、単色のみ、Ｂｋトナーのみを搭載した構成でもよい。
【００６０】
次に、ＬＤ多値変調について説明する。１ドット多値出力を行うＬＤ多値変調方式としては、パルス幅変調（ＰＷＭ）方式と光強度変調（ＰＭ）方式がある。図１０（ａ）、（ｂ）は、光強度変調方式とパルス幅変調方式における光波形とドットパターンを示す。以下、これらの変調方式について説明する。
【００６１】
光強度変調方式は、中間露光領域を利用して中間調記録（中間調画像形成）を実現するために、画像形成プロセスの安定化が重要な要件であり、画像形成プロセスに対する要求が厳しくなる。しかしながら、光強度変調方式はＬＤ制御変調が簡易となる。即ち、光強度変調方式は、図１０（ａ）に示すように、光出力レベル自身を変化させて光書き込みを行う方式であり、各ドットパターンが図１０（ａ）の上側に示すようなパターンで出力される。この方式は、ＬＤの制御変調部を簡便かつ小型に構成することができるが、中間露光領域を利用して中間調画像を再現しようとするため、現像バイアスの安定化など画像形成プロセスの安定化への要求が厳しくなる。
【００６２】
パルス幅変調方式は、図１０（ｂ）に示すように、光出力レベルとしては２値であるが、その発光時間、つまりパルス幅を変化させて光書き込みを行う方式であり、各ドットパターンが図１０（ｂ）の上側に示すようなパターンで出力される。この方式は、基本的には２値光書き込みであるので、光強度変調方式に比べて中間露光領域の利用度が少なく、また更に隣接ドットを結合させることにより中間露光領域を一層低減させることが可能になり、画像形成プロセスに対する要求を低減することができる。上記したいずれのＬＤ多値変調方式であっても、電子写真プロセスにおいて多値出力が可能となる。
【００６３】
次に、本発明の原理となる（１）マスク加算法、（２）閾値傾斜法、（３）エッジ閾値変動法について詳述する。
【００６４】
（１）マスク加算法
前述したように、４値誤差拡散処理（量子化出力値：０、８５、１７０、２５５）では、量子化出力値の切り替り部（８５、１７０）に階調段差、いわゆる擬似輪郭が発生するという、画質上の問題点がある。
【００６５】
そこで、本発明では、後述するように、量子化出力値の切り替り部に発生する擬似輪郭を目立たなくするために、切り替り部にマスクノイズを重畳する。
【００６６】
以下、ノイズを加算する手法について詳述する。本発明の４値誤差拡散において、前述したと同様に、量子化出力値を０、８５、１７０、２５５として、それぞれをドットオフ（空孔）、小ドット、中ドット、大ドットとし、閾値を４３、１２８、２１３とする。階調段差が問題となる箇所は、出力値と同じ階調値が入力される階調値８５、１７０の２箇所（量子化出力値の切り替り部）である。階調値８５における問題は、階調値１７０においても同様であるため、以下、階調値８５について説明する。
【００６７】
階調値８４、８５、８６の階調表現において、２５６画素当たりに出現するドットは、確率的に図１１に示すようになる。すなわち、階調値８４ではドットオフと２５３個の小ドットにより階調表現され、階調値８６では２５３個の小ドットと３個の中ドットにより階調表現される。
【００６８】
前述したように、階調値８５に対してノイズ（乱数）を加算し、中ドットとドットオフを出現させることで段差を目立たなくする場合には、階調値８６、８７よりも多く中ドットが出現し、階調が逆転してしまう。
【００６９】
そこで、本発明では、階調値８５のドット発生個数が階調値８４におけるドットオフの数と階調値８６における中ドットの数を超えないように出現頻度を規定したものであればドットによる画像の空間周波数の連続性から好ましい。図１２は、ドットの出現位置とその個数を規定する１６×１６サイズのマスクの例を示す。
【００７０】
すなわち、図１２は、階調値８５に出現させるドットオフの個数と中ドットの個数とその位置を規定したマスクノイズである。図において、階調値８５では、０は小ドットを、１は中ドットを、−１はドットオフを示し、階調値８４に出現するドットオフ３個より少ない２個のドットオフ（−１）を階調値８５に出現させ、階調値８６に出現する中ドット３個より少ない２個の中ドット（１）を階調値８５に出現させている。
【００７１】
また、図１２のようなマスク形状にしたノイズであれば出現位置も規定することができる。これにより、階調値８５が連続で入力された場合に最適なドット配置を設計することができる。例えば、図１２では階調値８５に中ドットとドットオフをそれぞれ２個出現させるので、階調値８５が連続で入力された場合には、図１３のように各ドットを４５°に配置することができ、粒状性の良い画像になる。
【００７２】
上記したように出現個数を規定することにより階調の反転を防ぐことができる。しかしながら、乱数を重畳する場合のように他の階調と比較して粒状性が大きく劣化するようなノイズであっては効果がなくなる。一般に、人間が見た画像の粒状性の代用特性として、画像の空間周波数特性に、人間の視覚特性（ＶＴＦ）を乗算した結果で表すことができる。そこで、本発明のマスク処理による効果を画像の空間周波数で説明する。
【００７３】
図１４は、４値誤差拡散処理後の階調値８４、８５、８６の画像の空間周波数である。図１５は、４値誤差拡散処理後の階調値８４、８５、８６の画像の空間周波数に人間の視覚特性（ＶＴＦ）を乗算した結果である。階調値８４と８６はほぼ同じ曲線（周波数特性が乱れた曲線）となるが、階調値８５はそれらより低い周波数特性（均一な特性）をもっている。
【００７４】
図１６は、４値誤差拡散処理後の階調値８４、８５の画像の空間周波数と、４値誤差拡散時に階調値８５にマスクノイズの加算処理を行った画像の空間周波数である。マスクノイズ加算処理を行った画像は、階調値８５の持つ空間周波数のグラフにないピークや低周波成分を多く含んでいる。このピークは重畳したマスクノイズのドット配置に起因するものである。図１７は、図１６に示す画像の空間周波数に人間の視覚特性（ＶＴＦ）を乗算した結果である。人間は低周波成分を認識しやすく、マスクノイズを重畳したことにより、階調値８５には存在しなかった低周波成分が多く含まれるようになる。一部ピークを持つために隣接階調８４より超えた値を持つが、概ね階調値８４より低い値をとることになり、階調値８４より粒状性がよい画像である。このように、量子化出力値の切り替り部に重畳するノイズは、ノイズを重畳した結果の階調値８５の画像の空間周波数が、階調値８５の前後の階調値８４、８６の持つ画像の空間周波数より低くなるようにしなければならない。
【００７５】
上記したマスクノイズは、量子化出力値の切り替り部だけではなく、その近傍にも重畳させることが可能であり、これにより階調段差の抑制が可能となる。すなわち、例えば階調値８４（階調値８５の近傍）には、階調値８３の画像が持つ空間周波数より低周波となるノイズを加算し、階調値８６（階調値８５の近傍）には、階調値８７の画像が持つ空間周波数より低周波となるノイズを加算する。図１８は、４値誤差拡散処理において、階調値８４へ加算するマスクを示し、図１９は、階調値８６へ加算するマスクを示す。階調値８４へは、減算のみのノイズ（−Ｏ２はドットオフ、０は小ドット）、階調値８６へは、加算のみのノイズ（Ｏ２は中ドット、０は小ドット）となる。さらに、階調の反転現象が生じない理想的な出現個数を持つマスクを設計し、８５±２（８３ではドットオフを６個出現、８７では中ドットを６個出現させる）．．．へも適用できる。
【００７６】
なお、上記した例では、マスクサイズが１６×１６であったが、これに限定されず、２のべき乗であればよい。また、ノイズの出現位置も上記したものに限定されず、任意の位置でよい。
【００７７】
また、上記した行列マスクでは、階調値８５に出現するノイズ位置が規定されている。階調値８４では誤差拡散処理によりドットオフと小ドットの出現位置が揺らいでいるが、階調値８５ではドットオフ、小ドット、中ドットが行列マスクで規定した位置に整列してしまう。画像によっては階調値８５が広く連続で入力される場合もあり、この領域のみ、ドットが整列した状態になり違和感が生じる。これは、マスク内でドット出現位置が限定されているからであり、そこで、ドット出現位置が異なるマスクを複数用意し、これを選択することによりドット出現位置を変動させることが可能となる。具体的には、複数のマスクを乱数で選択したり、１つのマスクを回転や対称変換させてから出現位置を発生させても同様の効果がある。また、カラー画像ではＣＭＹＫ版に色分解して出力するので（誤差拡散処理も各色成分について行う）、マスクを複数用意し、版に応じてマスクを選択することにより、版毎にドット出現位置を変動させることが可能となる。
【００７８】
また、上記した例では、階調値８５にドットオフと中ドットがそれぞれ均等に２個出現するようなマスクを示したが、プリンタの特性（ドットの見え方、いわゆるドットゲイン）によっては、ドットオフと中ドットを均等に出現させない方がよい場合があるので、図２０に示すようなドットオフ（−Ｏ２）１個、中ドット（Ｏ２）２個を出現させるようなマスクノイズを階調値８５に重畳させてもよい。
【００７９】
誤差拡散処理において、上記したノイズを重畳する場合に、入力値に重畳する場合と閾値に重畳する場合が考えられる。
【００８０】
入力値に重畳する場合には、
階調値８５；
入力値＋（マスク処理の結果×８５）
＝８５＋（１×８５）＝１７０
８５＋（０×８５）＝８５
８５＋（−１×８５）＝０
階調値１７０；
入力値＋（マスク処理の結果×８５）
＝１７０＋（１×８５）＝２５５
１７０＋（０×８５）＝１７０
１７０＋（−１×８５）＝８５
となる。
【００８１】
このように、マスク処理の結果で入力値を補正することにより、階調値８５に中ドット、ドットオフを出現させ、入力値１７０に小ドット、大ドットを出現させるような大きなノイズが加算される。このノイズ加算値は確実にドットを発生させる大きさであり、かつ誤差値への影響が出ないような値に設定する必要がある。
【００８２】
閾値にノイズを重畳する場合も同様に、多値量子化に必要な各閾値（４３、１２８，２１３）に８５を加減算すればよい。１７０（中ドット）を出現させたい場合は各閾値から８５を減算し、閾値を低くすることで１７０（中ドット）を出現させ、０（ドットオフ）を出現させたい場合は各閾値へ８５加算し、閾値を高くすることで０（ドットオフ）を出現させればよい。閾値を大きく変動させて中ドット、ドットオフ、大小ドットを出現させた場合、出力結果の位置に大きな誤差を残し、周辺画素に影響を与えることになる。
【００８３】
図２１は、入力値を補正した場合を示す。図２１に示すように、入力値を補正した場合には、マスクで規定した位置に適切にドットが出現する。従って、インクジェットプリンタのように、大中小ドットや濃淡インクなど所望の多値量子が安定して出力可能な場合には特に有効である。
【００８４】
図２２は、閾値を補正した場合を示す。閾値を補正した場合は、所定の位置に他の階調値が出現するが、大きな誤差を注目画素位置に残すことになり、残った誤差により別の階調値が出現する。従って、電子写真のように、中ドットにドットオフを隣接させたほうがエッジ効果で中ドットが安定して出力する（画像が安定する）ような場合に適している。
【００８５】
なお、上記した（マスク処理の結果×８５）の演算を簡単化するために、図２３に示す入力値を補正するマスクを用いればよい。つまり、図２１に示すような画像を得るためには、図２３に示すマスクを入力値に加算するだけでよく、高速処理が可能となる。図２３のようなマスクで規定したノイズを加算することから、本発明の手法をマスク加算法と呼ぶ。
【００８６】
図３は、階調値０から１２８へ変化するグラデーション画像に対して４値誤差拡散を行った画像の階調値８５近傍の拡大図である。図２４は、図３の画像にマスク加算処理を行った結果（階調値８５近傍の画像）を示す。マスクで規定したノイズを重畳することで、量子化出力値の切り替り部に発生する擬似輪郭を抑制することができる。
【００８７】
マスク加算法は、ハイライト部近傍、べた部近傍のドット生成の遅れをなくすることができる。すなわち、マスクノイズは、２値誤差拡散処理において、階調値１のドット生成の遅れや、階調値２５４での空孔（ドットオフ）の生成の遅れに対しても有効なノイズとなる。
【００８８】
階調値１に対しては階調値２の画像が持つ空間周波数より低周波となるノイズを加算することにより、ドット生成の遅れをなくする。図１９は、入力値に加算するマスクノイズを示し、Ｏ２の位置に大ドットを出現させる。０の位置はドットオフの出現位置である。
【００８９】
また、階調値２５４に対しては階調値２５３の画像が持つ空間周波数より低周波となるノイズを加算することにより、ドットオフ生成の遅れをなくする。図１８は、入力値に加算するマスクノイズを示し、−Ｏ２の位置にドットオフを出現させる。０の位置は大ドットの出現位置である。
【００９０】
図２５、２６は、階調値１と２に対して、２値誤差拡散処理を行った結果である。何れの画像も画面左上にドット生成の遅れが生じている。これに対して、図２７は、階調値１に対して２値誤差拡散処理とマスク加算処理を行った結果である。図２７では、図２５、図２６に比べてドット生成の遅れが少なくなっている。なお、図２６のドット生成の遅れが画像設計上、好ましくない場合には、階調値２に対してもマスク処理を行うことによりドット生成の遅れがなくなる。
【００９１】
図２８は、階調値１の画像、階調値２の画像、階調値１にマスク処理を行った画像の空間周波数に、視覚特性（ＶＴＦ）を乗算した結果を示す。階調値１の画像の持つ空間周波数特性よりも階調値２の方が低周波成分を多く含んでいる。階調値１にマスク処理を行った画像の持つ空間周波数特性は、階調値１よりは低周波成分を多く含むことになるが、階調値２の空間周波数特性よりは低くなっている。なお、階調値１や階調値２５４に加算するノイズにより出現するドットオフ（空孔）、ドットの個数は、それぞれ等しくすることが画像設計の観点から望ましい。
【００９２】
図２４において、階調値８５では適切なノイズを重畳することにより、ドットオフと中ドットが混在して切り替わり部の段差を目立たなくしているが、階調値８６では、小ドットで埋め尽くされており、この領域が擬似輪郭となっている。
【００９３】
本発明では、マスク加算法と後述する閾値傾斜法とを併用することにより、切り替り部の段差をより一層目立たなくする。以下、本発明に係る閾値傾斜法について詳述する。
【００９４】
（２）閾値傾斜法
図２４は、階調値０から１２８へ変化するグラデーョン画像であるが、階調値８６において中ドットの出現が遅れ、階調値８６に擬似輪郭が生じている。階調値１２８から０へ変化するグラデーション画像である場合には、階調値８５にはマスク加算法により適切にドットオフと中ドットが出現するが、階調値８４においてドットオフの出現が遅れ、階調値８４に擬似輪郭が発生してしまう。同様に、階調値１７０の近傍階調値１６９、１７１においてもドット生成の遅れによる擬似輪郭が生じてしまう。さらに、階調値１における小ドット生成の遅れや階調値２５４における中ドット生成の遅れも同様の遅れ問題である。そこで、量子化出力値周辺で、ドット生成が遅れないような処理について、以下説明する。
【００９５】
誤差拡散処理における遅れ量を制御するパラメータを求めることで、量子化出力値の遅れ量を制御することを考える。図２９は、階調値１／２５５画像を４種類の誤差拡散マトリクスを用いて４値誤差拡散処理した結果を示す。量子化出力値は０、８５、１７０、２５５、閾値を４３、１２８、２１３とした。誤差拡散マトリクスによって誤差の伝播方向が異なるだけで、いずれの誤差拡散マトリクスにおいても約４２ピクセル程度、遅れて小ドットが出現していることが分かる。
【００９６】
図３０は、図２９の処理において閾値を１０、１２８、２１３とした場合の処理結果である。図３０の場合、いずれの誤差拡散マトリクスにおいても約９ピクセル程度遅れて小ドットが出現していることが分かる。入力画像が階調値２／２５５画像であれば誤差が２倍速く溜まりドットが出やすくなるので遅れ量が少なくなる。このように誤差拡散処理において閾値を操作することによって遅れ量を制御することができる。
【００９７】
一般的に、閾値を各量子化出力値０、８５、１７０、２５５の中間に設定するが、誤差拡散処理においては閾値をどのように設定してもドット出現の遅れ量が変わるだけであり、誤差が伝播しているので濃度は保存される。そして、遅れ量は、閾値÷入力値の値で近似されることが分かった。
【００９８】
図３１は、実際に、グラデーション画像における階調値８６の中ドットの遅れ量を求めたものである。４値化に必要な閾値をＴｈｒｌ、Ｔｈｒ２、Ｔｈｒ３とし、補正入力値をｓｕｍとし、階調値８６、１７１での遅れ量は、階調値１での遅れ量と同じであるから
階調値１：Ｔｈｒｌ÷ｓｕｍ
となる。階調値８４でのドットオフ、階調値１６９での小ドットや階調値２５４での中ドットの遅れ量も同様に閾値と入力値によって設定することが可能となる。そこで、図３２のように階調値８６や８４で遅れ量をａピクセルとしたい場合に、図３３のように入力値を複数の区間に分け、区間の始点近傍を所定の閾値から下げ、区間の終点近傍を上げ、その２点間を直線で結ぶことにより、閾値が得られる。ここでは、４値出力であるので、図３３のように３区間に分割している。Ｎ値誤差拡散処理では、遅れが発生する箇所が量子化出力値の切り替わり部であるからＮ−２箇所となる。従って、入力値を（Ｎ−１）個に分割して、区間の始点では閾値を低くしてドットを出現しやすくし、区間の終点では閾値を高くしてドットを出現しにくくする。
【００９９】
遅れ量ａを０とした場合は階調値８６になると同時に中ドットが出現しやすくなるが、この場合、画像によってはマスク加算処理によって出現するドットオフや中ドットに隣接する可能性があり、好ましくない。また、階調値８５ではマスク加算処理によって主走査方向に１６ピクセル間隔で中ドットが出現しているので、階調値８６になってから１７ピクセル以上遅れて中ドットが出現することは好ましくない。そこで遅れ量ａは６〜１２ピクセル程度が好ましい。
【０１００】
ところで、図３３に示すような入力値に応じて増加するような閾値を用いて誤差拡散処理を行った場合、鮮鋭性が劣化することがある。例えば、遅れ量ａを６ピクセルと小さくすると、区間内で閾値の傾きが急になり、鮮鋭性が劣化する傾向がある。後述するエッジ閾値変動法のような鮮鋭性を制御する機構（機能）を持つ誤差拡散処理の場合には、遅れ量ａを任意設定することができるが、鮮鋭性制御機構を搭載しない誤差拡散処理の場合には遅れ量と鮮鋭性劣化を考慮する必要がある。
【０１０１】
図３３に示すように、階調値８５、１７０はマスク加算処理により規定の位置に所望のドットが出現しやすいように固定閾値と同じ値に設定し、区間の始点近傍では固定閾値より低く設定し、区間の終点近傍では固定閾値より高く設定し、入力値に応じた傾斜閾値に設定した。図３４は、マスク加算法と図３３の閾値とを用いて処理した結果を示し、量子化出力値の切り替り部の段差が抑制されている。本発明では、図３３のような傾斜した閾値を用いることから、ここでは閾値傾斜法と呼ぶ。
【０１０２】
以下、ドット出現の遅れがない、幾つかの閾値特性の例について説明する。
【０１０３】
前述したと同様に、２５６階調から４値の誤差拡散後の４値量子化出力値をＯ１、Ｏ２、Ｏ３、Ｏ４とし、各４値量子化出力値の階調を０、８５、１７０、２５５とし、閾値を各出力値の中間を、４３、１２８、２１３とする。一般的な４値誤差拡散処理の閾値と入力値の関係は、図３５に示すように固定閾値になるが、入力値の区間をＮ−１＝４−１＝３個に、０〜８５、８６〜１７０、１７１〜２５５の３区間に分割し、各区間を区間１、区間２、区間３とする。
【０１０４】
区間１において出現する量子化出力値はＯ１、Ｏ２のみであり、Ｏ１、Ｏ２の出現を判別する閾値をＴｈｒ１Ｏ１Ｏ２とする。同様に、区間２において量子化出力値Ｏ２、Ｏ３の出現を判別する閾値をＴｈｒ２Ｏ２Ｏ３、区間３における量子化出力値Ｏ３、Ｏ４の出現を判別する閾値をＴｈｒ３Ｏ３Ｏ４とする。
【０１０５】
前述したように、ドット出現の遅れは、区間の始点近傍、終点近傍で生じる。区間１の始点近傍における量子化出力値Ｏ２の遅れ対策として、閾値Ｔｈｒ１Ｏ１Ｏ２を量子化出力値Ｏ１、Ｏ２の中間に設定していた値より低くすることでドットが出力しやすくなる。同様に、区間１の終点近傍における量子化出力値Ｏ１の遅れ対策として、閾値Ｔｈｒ１Ｏ１Ｏ２を量子化出力値Ｏ１、Ｏ２の中間に設定していた値より高くすることでＯ２が出現しにくくなる、すなわちＯ１が出現しやすくなる。このようにＴｈｒ２Ｏ２Ｏ３やＴｈｒ３Ｏ３Ｏ４を設定した閾値を図３６に示す。
【０１０６】
区間１の始点における閾値Ｔｈｒ１Ｏ１Ｏ２の下げ量をｍ１ｓｔａｒｔ（以下、ｍ１ｓ）、終点における閾値Ｔｈｒ１Ｏ１Ｏ２の上げ量をｍ１ｅｎｄ（以下、ｍ１ｅ）とすれば、ｍ１ｓ≦Ｍ／２Ｎ、ｍ１ｅ≦Ｍ／２Ｎの範囲であれば、概ね良好な画像となる。ｍ１ｓ＞Ｍ／２Ｎとすると、始点において直ちにＯ２を出力するが、負の誤差を多量に保持することになる。十分に広い面積のパッチのようなものであれば問題はないが、グラデーションのように濃度の変化がある場合において不具合が生じる。グラデーションの各濃度のステップ量にもよるが、ｍ１ｓ＞Ｍ／２Ｎであった場合、階調値１が入力された時に遅れなくＯ２を出現するが、多量の負の誤差を保持するために階調値２が入力されてもＯ２を出現できない状態になり、階調値３になってＯ２が出現するような状態があり、階調が反転してしまうことがある。そのため各区間ｎにおける閾値の切片ｍｎｓｔａｒｔ（以下、ｍｎｓ）、ｍｎｅｎｄ（以下、ｍｎｅ）は、Ｍ／２Ｎより小さくすることが望ましい。
【０１０７】
上記したｍｎｓ、ｍｎｅは、画像出力機毎にその量子化出力値が異なるため、出力環境に応じて設定される。従って、ｍｎｓ、ｍｎｅを個別に設定してよいし、また、ある区間ｎにおいてｍｎｓ＝ｍｎｅとしてもよいし、各区間で調整し、少なくとも１つ以上の区間で
ｍｎ１ｓ＝ｍｎ１ｅ
ｍｎ２ｓ＝ｍｎ２ｅ
ｍｎ１ｓ＝ｍｎ２ｓ
ｍｎ１ｅ＝ｍｎ２ｅ
と設定してもよい。
【０１０８】
さらに、各区間毎に調整し、少なくとも１つ以上の区間で
ｍｎ１ｓ＝ｍｎ１ｅ
ｍｎ２ｓ＝ｍｎ２ｅ
ｍｎ１ｓ≠ｍｎ２ｓ
ｍｎ１ｅ≠ｍｎ２ｅ
と設定してもよい。
【０１０９】
区間の切片ｍｎｓ、ｍｎｅを結ぶ線を閾値とすることで、その区間の始点・終点近傍で生じる遅れ問題はなくなる。ここで、区間の切片ｍｎｓ、ｍｎを直線や曲線で結んでもよい。直線であれば、２点を結ぶ計算式は簡単に求められ、実装したときに逐次実行で求めることが容易である。画像出力機によっては区間の内部で濃度に応じて閾値が急激に変化するのに対応できない場合には、出力機のｒａｗγに合わせて、図３７のように曲線やｔａｎθ関数のようにしてもよい。実装する際に、各濃度に応じた閾値の値を計算式で逐次求めてもよいし、曲線のように計算が複雑であれば、閾値をＬＵＴに保持し、逐次呼び出すようにしてもよい。
【０１１０】
また、画像によっては階調が０から２５５と変化する場合や、２５５から０へと変化する場合があるので、区間の切片ｍｎｓ、ｍｎｅを結ぶ閾値線は、区間内の中心点で回転対象であることが好ましい。
【０１１１】
各区間の閾値の組合せで、区間１と２の閾値をＴｈｒ１Ｏ１Ｏ２、Ｔｈｒ２Ｏ１Ｏ２、Ｔｈｒ２Ｏ２Ｏ３とした場合、区間１と２の隣接点近傍においては
Ｔｈｒ２Ｏ１Ｏ２  ≦  Ｔｈｒ１Ｏ１Ｏ２  ≦  Ｔｈｒ２Ｏ２Ｏ３
となるように、各区間のｍｎｓ、ｍｎｅを設定することが望ましい。区間１の終点近傍では、量子化出力値Ｏ１、Ｏ２の中間に設定していた閾値より高く設定され、区間２の始点近傍では、量子化出力値Ｏ１、Ｏ２の中間に設定していた閾値より低く設定されるので、Ｔｈｒ２Ｏ１Ｏ２≦Ｔｈｒ１Ｏ１Ｏ２となる。また、Ｔｈｒ１Ｏ１Ｏ２  ≦  Ｔｈｒ２Ｏ２Ｏ３であるので、区間１と区間２の間で階調飛びが発生しない。逆に、Ｔｈｒ２Ｏ２Ｏ３≦Ｔｈｒ１Ｏ１Ｏ２である場合、区間１の終点近傍において、過剰にＯ１が出力され、区間２の始点近傍において、過剰にＯ３が出力され、階調の連続性が損なわれることになる。
【０１１２】
入力の階調値に応じて区間毎に処理を分割した場合には、各区間の量子化出力値は２つしか存在しないので閾値を複数もつ必要がなく、図３８のように閾値の設定が簡単化される。
【０１１３】
また、図３６のように、区間内の閾値全てをその区間で出現する量子化出力値に必要な閾値の形状にしてもよい。つまり、この例では、区間１において出力される量子化値はＯ１、Ｏ２だけであるので、区間１における量子化出力値Ｏ２、Ｏ３の出現を判別する閾値Ｔｈｒ１Ｏ２Ｏ３、区間１における量子化出力値Ｏ３、Ｏ４の出現を判別する閾値Ｔｈｒ１Ｏ３Ｏ４を、Ｔｈｒ１Ｏ１Ｏ２を元に作成してもよい。具体的には、濃度に応じて閾値を変動させない固定閾値の場合におけるＴｈｒ１Ｏ１Ｏ２とＴｈｒ１Ｏ２Ｏ３との差を、Ｔｈｒ１Ｏ１Ｏ２に加算することにより設定してもよい。これは、元となる閾値Ｔｈｒ１Ｏ１Ｏ２が複雑な曲線である場合に容易に求められるので有効な手法である。さらに、閾値Ｔｈｒ１Ｏ１Ｏ２が直線である場合は、Ｔｈｒ１Ｏ２Ｏ３やＴｈｒ１Ｏ３Ｏ４を求めるとき、ｍｎｓ、ｍｎｅを、量子化出力値Ｏ２、Ｏ３や量子化出力値Ｏ３、Ｏ４の中間に設定された閾値に適用して求めてもよい。
【０１１４】
区間ｎ１、ｎ２の始点終点を結ぶ閾値の切片ｍｎ１ｓ、ｍｎ１ｅ、ｍｎ２ｓ、ｍｎ２ｅが次の関係のとき、
ｍｎ１ｓ＝ｍｎ２ｓ
ｍｎ１ｅ＝ｍｎ２ｅ
かつ、分割した区間ｎ１の幅とｎ２の幅が等しいとき、この例では量子化出力値Ｏ１、Ｏ２、Ｏ３、Ｏ４が０、８５、１７０、２５５であるので、区間１の幅が８５であり、区間２の幅も８５で等しい場合、区間ｎ１において求めた閾値Ｔｈｒｎ１Ｏ１Ｏ２，Ｔｈｒｎ１Ｏ２Ｏ３，…Ｔｈｒｎ１ＯＮ−１ＯＮを規定する直線や曲線をそのまま区間ｎ２における閾値Ｔｈｒｎ２Ｏ１Ｏ２，Ｔｈｒｎ２Ｏ２Ｏ３，…Ｔｈｒｎ２ＯＮ−１ＯＮとしてもよい。この場合は、実装時に逐次計算の演算量が減り、またＬＵＴに閾値を格納した場合には同じ値を読み出せばよく、ＬＵＴのメモリ容量を小さくすることができる。
【０１１５】
また、前述したように、白地、べた部を除いて、入力値が量子化出力値と同じ濃度の場合、Ｎ値量子化出力値の切り替り部Ｏ２（８５）、Ｏ３（１７０）で、粒状性が特異的に良好になる違和感が生じるが、その箇所における違和感を抑制するための処理（前述したマスク加算処理や、後述する閾値を変動させる処理）を行うために、図３７、図３９に示すように、違和感が生じる箇所（階調値８５、１７０）のみ閾値を別に設定（固定閾値４３、１２８、２１３）してもよい。
【０１１６】
Ｍ階調をＮ−１の区間に分割し、各区間で閾値を濃度に応じて設定することにより、各区間の始点、終点近傍のドット出現の遅れ問題を解決したが、特定区間のみ、量子化出力値Ｏ１、Ｏ２などの中間に設定された閾値としてもよい。例えば、インクジェット記録装置などの出力機では、ドット変調や濃淡インクを用いて多階調表現しているが、ｒａｗγを測定し、べた部においてγが急激に変化する場合には固定閾値で処理しても画質がさほど劣化しないので、固定閾値が設定された区間では、濃度を参照して閾値を決定する処理が無いため処理が高速になり、トータルのスループットが向上する。また、濃淡インクを用いたインクジェット記録装置などにおいては、淡インクと濃インクの小ドット出力の階調区間のみを濃度に応じた閾値とし、濃インクの中ドット、大ドット出力の階調は固定閾値としてもよい。この場合の閾値を図４０に示す。
【０１１７】
図３９に示す閾値を用いて４値誤差拡散処理を行った処理結果を、図４１に示す。図４１では、階調値８６においてＯ３が遅れることなく出現している。このような閾値を持った誤差拡散処理に対して、図４２のように階調の反転現象が生じないノイズ（Ｏ２、−Ｏ２）を階調値８５に加算した処理結果を図３４に示す。図３４では、多値誤差拡散特有の量子化出力値の切り替り部に生じる擬似輪郭が目立たなくなる。
【０１１８】
（３）エッジ閾値変動法
濃度に応じて変動する閾値を用いた誤差拡散処理では、画像の鮮鋭性が低下するという不具合が生じ、主観評価の低下を招くことが判った。図４３は、図３５の閾値（固定閾値）を用いた場合の４値誤差拡散処理の結果を示し、図４４は、図３９の閾値（変動閾値）を用いた場合の４値誤差拡散処理の結果を示す。変動閾値を用いた処理の結果は、固定閾値を用いた処理の結果と比べると、
（ａ）線部にドットが集まっていない。つまり、固定閾値では線部がＯ３のみで構成されているが、変動閾値では線部がＯ２、Ｏ３により構成されている。
（ｂ）固定閾値では、線部周辺にドットが出現していないが、変動閾値では線部近傍にドットが出現しているために線画像が地肌のドットに埋もれてしまい、際立たなくなる。
このように、変動閾値は固定閾値よりも鮮鋭性が低下する。
【０１１９】
そこで、濃度に応じて変動する閾値を用いた誤差拡散処理で生じる画像の鮮鋭性の劣化を防止するために、強調処理を行う。すなわち、注目画素を中心として、３×３画素のラプラシアンフィルタによりエッジ量を抽出し、適当な量で除算した値の符合を反転させて閾値に加算し、すなわち適当な量で除算した値で閾値から減算を行い、鮮鋭性の劣化を防止する。
【０１２０】
図４５に示すような下地濃度１０（図中のＡ・Ｃ）、濃度１２８（図中のＢ）の１画素の細線の画像において、ラプラシアンフィルタで処理した場合を図４６に示す。図４６に示すＡＢＣは、図４５のＡＢＣの位置におけるラプラシアンフィルタから出力される値である。ラプラシアンの出力値は、細線のエッジ部前後の画素において負の値を、エッジ部においては正の値を出力する。
【０１２１】
エッジ部を際立たせるため、
（ａ）エッジ部でドットを出現しやすくし、
（ｂ）エッジ部の周辺ではドットを出現しにくくする
ことにより、細線のようなエッジの立った鮮鋭な画像とする。
【０１２２】
そこで、ラプラシアンフィルタで抽出した画像のエッジ部の符合と大きさを利用して閾値を操作することにより、ドットの出現率を変える。図４６ではエッジ量は負→正→負となっており、符合を反転させることで正→負→正となる。これを適当な数で除算し、所定の閾値に加算する。これにより
エッジ部周辺：所定の閾値＋エッジ量に応じた値
⇒ドットが出現しにくくなる
エッジ部：所定の閾値−エッジ量に応じた値
⇒ドットが出現しやすくなる
となり、鮮鋭性の劣化が防止される。この手法は、階調値２５５の下地に階調値０の細線、すなわち濃度が反転していても成り立つ。このように、本手法は、閾値を操作するだけであり、エッジ強調処理のようにオーバーフローが生じることはない。
【０１２３】
図４７は、３×３画素のラプラシアンフィルタの例を示す。ラプラシアンフィルタによりエッジ量を抽出し、エッジ量に応じた値を適当な数（２以上の値）で除算を行い、注目画素の濃度に応じて求められる閾値から減算を行う。これにより、濃度が立ち上がりのエッジ部において、エッジ部の前後１画素では閾値が高くなるためドットが出現しにくく、エッジ部では閾値が低くなるためドットが出現しやすくなる。濃度が立下りのエッジ部においては、エッジ部の前後１画素では閾値が低くなるためドットが出現しにくく、エッジ部では閾値が高くなるためドットが出現しやすくなる。
【０１２４】
図４８は、図３９の閾値に対して、３×３のラプラシアンＬ８（ｘ，ｙ）で閾値を制御した場合の４値誤差拡散処理の結果を示す。図４４は、図３９の閾値を用いて４値誤差拡散処理した処理結果を示す。図４８では、図４４より線部にＯ３が集中し、線部後半にはドットが出現せず、線部が際立っている。
【０１２５】
このように、エッジ量を抽出して閾値を制御することにより、閾値傾斜法によって得られる画像と比較して、エッジ部にドットが集中し、かつエッジ部周辺でドットが出現しないので、エッジ部が際立っている。エッジ量を抽出して閾値を変動させていることから、本手法をエッジ閾値変動法と呼ぶ。
【０１２６】
ラプラシアンの形状として５×５を用いると、細線のエッジ部から前後２画素におけるドットのオン（出現）／オフを制御することができ、よりエッジ部を際立たせることが可能である。ただし、ラインメモリは５行分必要となる。３×３のラプラシアンでもラインメモリが３行分必要となるから、コストダウンを図りたい場合は、画質が３×３に比べて若干劣るもののラプラシアンを図４９の形状にすることにより、鮮鋭性を回復できる。
【０１２７】
図４９に示す非等方性のラプラシアンフィルタでも特定方向のエッジを検出することができる。特定方向のエッジ検出を行う場合、３×３のラプラシアンフィルタと比較して検出能力は低下する。２５６階調における階調値０と１２８のような際立ったエッジにおいては、３×３ラプラシアンフィルタと非等方性のラプラシアンフィルタの結果は目視で差は感じないが、階調値０と１０のようなかすかなエッジにおいては誤差拡散の重み付け誤差積和マトリクスの形状による誤差の伝播方向性と、非等方性のラプラシアンフィルタのエッジを検出する方向性が干渉した方向にのみドットが出現しやすくなる欠点がある。とはいえ、非等方性のラプラシアンフィルタでは、エッジ検出に必要なラインメモリを３行から約１行にできる。これは、１行前の画素で参照しなくなった箇所に随時注目画素の画像情報の書込みを行うことで１行のラインメモリと１画素のメモリで処理することができるので、エッジ抽出能力をさほど必要とせずに鮮鋭性の回復量を抑え、ラインメモリを少なく低コストにし、３×３より計算量が少なく高速処理を行いたい場合に特に有効である。
【０１２８】
図５０は、図３９の閾値に対して、非等方性ラプラシアンＬ４（ｘ，ｙ）で閾値を制御した場合の４値誤差拡散処理の結果を示す。図４８に比べて鮮鋭性は回復していないが、図４４に比べてより線部にＯ２が集中し、線部後半にはドットが出現せず、線部が際立っている。
【０１２９】
上記したエッジ閾値変動法は、Ｎ値誤差拡散処理に限定されず、２値誤差拡散処理にも同様に適用できる。また、図３６、３７に示すように、濃度に応じた閾値処理によって鮮鋭性が低下した場合でも、鮮鋭性を強調することができる。さらに、出力機に搭載された閾値が特殊な曲線である場合でも、同様にして鮮鋭性を強調することができる。
（実施例１）
図５１は、本発明の実施例１に係る多値誤差拡散処理の構成を示す。図において、入力（多値）１、加算器２、量子化部（４値）３、出力（４値）４、減算器５、誤差メモリ６、誤差拡散マトリクス７は、従来（図１）のものと同様である。本発明では、さらに、特定濃度判定部８、マスク加算部９、閾値量決定部１０を追加して構成している。
【０１３０】
図５２は、本発明の実施例１の処理フローチャートである。以下、図５１、５２を参照して実施例１を説明する。画像を取り込み（ステップ１０１）、閾値量決定部１０では、入力画素（注目画素）毎に、入力値に応じた閾値Ｔｈ１、Ｔｈ２、Ｔｈ３を決定する（ステップ１０２）。この閾値量は、図３３、図３９などで説明した閾値傾斜法によって決定される。例えば、閾値量決定部１０が図５３のようにＬＵＴで構成されていた場合には、入力値（ＩＮ）と閾値Ｔｈ１、Ｔｈ２、Ｔｈ３とが例えば以下のように対応していて、入力値（ＩＮ）をアドレスとしてテーブルから対応する閾値Ｔｈ１、Ｔｈ２、Ｔｈ３が読み出される。
【０１３１】
ＩＮ    Ｔｈ１  Ｔｈ２  Ｔｈ３
０      １０    ９６    １８０
１      １１    ９７    ２１４
２      １２    ９８    ２１５
３      １３    ９９    ２１６
．．    ．．．    ．．．    ．．．
８５    ４３    １２８  ２１３
８６    １０    ９６    １８０
．．．
．．．
次いで、特定濃度判定部８では、注目画素の入力値（階調値）が８５または１７０であるか否かを判定する（ステップ１０３）。入力値（Ｉｎ）が８５または１７０であるとき（ステップ１０３でｙｅｓ）、マスク加算部９では、前述したマスク加算法によってマスクノイズを入力値に加算する（ステップ１０４）。すなわち、マスク加算部９では、注目画素の画素位置（Ｘ、Ｙ）から、Ｘ１＝Ｘｍｏｄ１６，Ｙ１＝Ｘｍｏｄ１６を計算し、Ｘ１、Ｙ１をアドレスとして例えば図１２の内容を格納した１６×１６のメモリ（ＲＯＭ）を参照する。メモリからは０、１、−１の何れかが出力され、その出力値を８５倍した値０、８５、−８５（マスクノイズ）に入力値を加えて（Ｉｎ＝Ｉｎ＋Ｍａｓｋ（Ｘ１，Ｙ１））、加算器２に出力する。従って、入力値が８５のとき、マスク加算部９からは、１７０、８５、０の何れかが出力され、入力値が１７０のとき、マスク加算部９からは、２５５、１７０、８５の何れかが出力される。
【０１３２】
なお、上記した１６×１６のメモリ（ＲＯＭ）に図２３の内容を格納してマスク加算しても同様である。
【０１３３】
特定濃度判定部８で、入力値が特定濃度（８５、１７０）でないと判定されたときは（ステップ１０３でｎｏ）、入力値が加算器２に入力される。
【０１３４】
加算器２では、注目画素の周辺の予め計算された誤差と、入力値とを加算して補正値を作成する（ステップ１０５）。入力値が特定濃度のときは、加算器２では、誤差拡散マトリクス７からの誤差とマスク加算器９からの出力値とを加算し、入力値が特定濃度以外のときは、加算器２では、誤差拡散マトリクス７からの誤差と入力値とを加算する。
【０１３５】
補正値が量子化部３に入力され、閾値量決定部１０で決定された閾値Ｔｈ１、Ｔｈ２、Ｔｈ３と比較され、補正値がＴｈ１以下のとき（ステップ１０６でｙｅｓ）、出力値０（ＯＵＴ０；ドットオフ）が出力され、量子化前の値と量子化後の値との差を減算器５で求め、これを誤差として注目画素位置の誤差メモリ６に格納する（ステップ１１２）。補正値がＴｈ１を越え（ステップ１０７でｎｏ）、補正値がＴｈ２以下のとき（ステップ１０７でｙｅｓ）、出力値８５（ＯＵＴ１；小ドット）が出力されるとともに、誤差が計算される（ステップ１１１）。以下同様にして、出力値１７０（ＯＵＴ２；中ドット）、２５５（ＯＵＴ３；大ドット）が出力され（ステップ１１０、１０９）、画像の全ての画素について上記した処理が実行される（ステップ１１３）。
【０１３６】
マスクノイズを加算することにより、ハイライト部近傍、べた部近傍のドット生成の遅れがない２値誤差拡散処理も同様である。すなわち、図５２の処理フローチャートにおいて、２値誤差拡散処理では、閾値としてＴｈ１（閾値１２８）を決定し（ステップ１０２）、入力値が１か２５４かを判定する（ステップ１０４）。入力値が１のとき、図１９の行列を参照し、入力値が２５４のとき、図１８の行列を参照し、入力画素位置に対応した行列位置の値（Ｏ２または−Ｏ２）を読み出し（ステップ１０４）、入力値に加算し（ステップ１０５）、補正値と閾値Ｔｈ１とを比較し、出力値０または２５５を出力し、誤差を計算する。
【０１３７】
（実施例２）
上記した実施例１では、入力値にマスクノイズを加算する位置が予め決められていたが（加算位置に規則性がある）、本実施例では加算位置をランダムとした実施例である。
【０１３８】
図５４は、本発明の実施例２の構成を示し、実施例１の構成にさらに乱数回路１１を加えたものである。図５５は、本発明の実施例２の処理フローチャートである。ステップ２０３までの処理は実施例１と同様である。入力値が８５または１７０のとき（ステップ２０３でｙｅｓ）、乱数回路１１は乱数を計算して出力する（ステップ２０４）。
【０１３９】
乱数回路１１は、−６４〜６４の値を出力する回路であり、図５６に示すような出現確率分布をとる乱数を出力する。階調値８５に２５６画素あたり２個の中ドット、２個のドットオフを出現させたい場合は、階調値８５における中ドット、ドットオフの出現確率はそれぞれ２／２５６である。従って、図５６のような出現分布をとる乱数回路１１において、（斜線部分の面積）／（分布の全面積）＝２／２５６、つまり図５６では、＋６０〜６４を出力する確率と−６０〜−６４を出力する確率がそれぞれ２／２５６であるならば、誤差拡散処理でランダムな位置に中ドットとドットオフが出力される。
【０１４０】
乱数回路１１の出力値が＋６０以上であれば（ステップ２０５でｙｅｓ）、マスク加算部９ａでは入力値に８５を加算して、中ドットが出現するように入力値を補正する（ステップ２０７）。入力値が８５であれば中ドット（１７０）を出力し、入力値が１７０であれば大ドット（２５５）を出力する。乱数回路１１の出力値が＋６０以上でなく（ステップ２０５でｎｏ）、乱数回路１１の出力値が−６０以下であれば（ステップ２０６でｙｅｓ）、入力値から８５を減算して、ドットオフが出現するように入力値を補正する。ステップ２０９以下の処理は実施例１と同様であるので、その説明を省略する。
【０１４１】
（実施例３）
図５７は、本発明の実施例３の構成を示し、実施例１の閾値量決定部１０を、ラプラシアン演算処理部１２、ラインメモリ１３、閾値補正量決定部１４に置き換えて構成したものである。
【０１４２】
図５８は、本発明の実施例３の処理フローチャートである。ステップ３０２では、実施例１で説明したと同様にして注目画素の閾値Ｔｈを決定する。ラプラシアン演算処理部１２では、注目画素を中心として３ライン分の画像データが格納されているラインメモリ１３を参照して、図４７のラプラシアンフィルタと畳み込み演算を行い、ラプラシアン処理の値（エッジ量に応じた値）を求め、上記決定した閾値からラプラシアン処理の値を減算し、閾値補正量を決定する（ステップ３０３）。
【０１４３】
図４６で説明したように、エッジ部Ｂではラプラシアン処理の値が正であるので、注目画素がエッジ部である場合には、ラプラシアン演算による閾値補正量＝（閾値Ｔｈ−ラプラシアン処理の値）となり、ステップ３０２で決定された閾値Ｔｈよりも小さな値になり、この値が閾値補正量決定部１４に設定されるので、エッジ部ではドットが出現しやすくなる。
【０１４４】
これに対して、エッジ部周辺Ａ、Ｃ（図４６）ではラプラシアン処理の値が負であるので、注目画素がエッジ部周辺である場合には、ラプラシアン演算による閾値補正量＝（閾値Ｔｈ−ラプラシアン処理の値）となり、ステップ３０２で決定された閾値Ｔｈよりも大きな値になり、この値が閾値補正量決定部１４に設定されるので、エッジ部周辺ではドットが出現しにくくなる。ステップ３０４以下の処理は実施例１と同様であるのでその説明を省略する。
【０１４５】
上記したように、４値誤差拡散処理を例に本発明を説明したが、本発明はＮ値誤差拡散処理に容易に拡張できることは言うまでもない。
【０１４６】
また、上記したように、本発明はハードウェアによって実施してもよいことは当然であるが、汎用のコンピュータシステムを利用し、ソフトウェアで実施してもよい。ソフトウェアで実施する場合には、本発明の画像形成機能や処理手順（図５２、５５、５８など）を実現するプログラムが記録媒体などに記録されていて、該記録媒体などからプログラムがコンピュータシステムに読み込まれてＣＰＵによって実行されることにより、本発明の画像形成機能が実施される。画像データは、例えばスキャナなどから読み込んだ画像データや予めハードディスクなどに用意された画像データであり、あるいはネットワークを介して取り込んだ画像データである。また、処理結果は、プリンタやハードディスクなどに出力され、あるいはネットワークを介して外部装置（プリンタなど）に出力される。
【０１４７】
【発明の効果】
以上、説明したように、本発明によれば、以下のような効果が得られる。
（１）量子化出力値の切り替り部に、近傍階調の画像の空間周波数より低周波となるノイズを重畳しているので、切り替り部に生じるいわゆる擬似輪郭が目立たなくなる。
（２）ハイライト部近傍、べた部近傍に低周波ノイズを重畳しているので、ハイライト部近傍ではドットが良好に出現し、べた部近傍ではドットオフが良好に出現し、ドット生成の遅れがなくなる。
（３）入力の階調数を、階調段差が生じる箇所によって複数の区間に分割し、分割された各区間で、入力値に応じて閾値を変化させているので、量子化出力値の切り替り部近傍でのドット生成の遅れがなくなり、再生画像の画質が向上する。
（４）エッジ部を抽出し、エッジ量に応じて閾値を変動させているので、細線の鮮鋭性の低下が防止され、鮮鋭な画像を再生することができる。
【図面の簡単な説明】
【図１】  従来の誤差拡散処理の構成を示す。
【図２】  ４値誤差拡散処理における出力ドットの割合を示す。
【図３】  階調値が０から１２８へ変化するグラデーション画像に対して単純４値誤差拡散処理を行った結果を示す。
【図４】  ４値誤差拡散処理時に±３２の振幅をもつ乱数を、階調値８５へ加算した結果を示す。
【図５】  インクジェット記録装置の機構部を示す。
【図６】  ４色の記録ヘッドを示す。
【図７】  ７色の記録ヘッドを示す。
【図８】  インクジェット記録装置の制御部を示す。
【図９】  電子写真方式の画像形成部であるレーザプリンタを示す。
【図１０】  （ａ）、（ｂ）は、光強度変調方式とパルス幅変調方式における光波形とドットパターンを示す。
【図１１】  階調値８４、８５、８６の階調表現において、２５６画素当たりに出現するドット（ドットオフ、大中小ドット）の確率を示す。
【図１２】  ドットの出現位置とその個数を規定する１６×１６サイズのマスクの例を示す。
【図１３】  階調値８５が連続で入力された場合の各ドットの配置を示す。
【図１４】  ４値誤差拡散処理後の階調値８４、８５、８６の画像の空間周波数を示す。
【図１５】  ４値誤差拡散処理後の階調値８４、８５、８６の画像の空間周波数に人間の視覚特性（ＶＴＦ）を乗算した結果を示す。
【図１６】  ４値誤差拡散処理後の階調値８４、８５の画像の空間周波数と、４値誤差拡散時に階調値８５にマスクノイズの加算処理を行った画像の空間周波数を示す。
【図１７】  図１６に示す画像の空間周波数に人間の視覚特性（ＶＴＦ）を乗算した結果を示す。
【図１８】  ４値誤差拡散処理において、階調値８４へ加算するマスクを示す。
【図１９】  ４値誤差拡散処理において、階調値８６へ加算するマスクを示す。
【図２０】  ドットオフ１個、中ドット２個を出現させるようなマスクを示す。
【図２１】  図１２のマスクノイズを入力値に重畳して処理した結果を示す。
【図２２】  図１２のマスクノイズを閾値に重畳して処理した結果を示す。
【図２３】  入力値を補正するマスクの他の例を示す。
【図２４】  図３の画像にマスク加算処理を行った結果（階調値８５近傍の画像）を示す。
【図２５】  階調値１に対して２値誤差拡散処理を行った結果を示す。
【図２６】  階調値２に対して２値誤差拡散処理を行った結果を示す。
【図２７】  階調値１に対して２値誤差拡散処理とマスク加算処理を行った結果を示す。
【図２８】  階調値１の画像、階調値２の画像、階調値１にマスク処理を行った画像の空間周波数に、視覚特性（ＶＴＦ）を乗算した結果を示す。
【図２９】  階調値１／２５５画像を４種類の誤差拡散マトリクスを用いて４値誤差拡散処理した結果を示す。
【図３０】  図２９の処理において閾値を１０、１２８、２１３とした場合の処理結果を示す。
【図３１】  グラデーション画像における階調値８６の中ドットの遅れ量を求めたものを示す。
【図３２】  階調値８６、８４で遅れ量をａピクセルとした場合の画像を示す。
【図３３】  遅れ量をａピクセルとした場合の、入力値に応じて増加する閾値を示す。
【図３４】  マスク加算法と図３３の閾値とを用いて処理した結果を示す。
【図３５】  一般的な４値誤差拡散処理における閾値と入力値との関係を示す。
【図３６】  入力値を４区間に分割し、各区間の始点近傍を固定閾値より低くし、終点近傍を固定閾値より高く設定して直線で結んだ閾値を示す。
【図３７】  入力値を４区間に分割し、各区間の始点近傍を固定閾値より低くし、終点近傍を固定閾値より高く設定して曲線で結んだ閾値を示す。
【図３８】  各区間で量子化判定に必要な閾値のみを設定した例を示す。
【図３９】  各区間の始点近傍を固定閾値より低くし、終点近傍を固定閾値より高く設定し、階調段差が生じる箇所のみ固定閾値とした例を示す。
【図４０】  特定区間の閾値のみを傾斜させた例を示す。
【図４１】  図３９に示す閾値を用いて４値誤差拡散処理を行った処理結果を示す。
【図４２】  階調値８５に重畳されるノイズを示す。
【図４３】  図３５の固定閾値を用いた場合の４値誤差拡散処理の結果を示す。
【図４４】  図３９の閾値（変動閾値）を用いた場合の４値誤差拡散処理の結果を示す。
【図４５】  細線の画像例を示す。
【図４６】  図４５の画像をラプラシアンフィルタで処理した結果を示す。
【図４７】  ３×３画素のラプラシアンフィルタの例を示す。
【図４８】  図３９の閾値に対して、３×３のラプラシアンＬ８（ｘ，ｙ）で閾値を制御した場合の４値誤差拡散処理の結果を示す。
【図４９】  非等方性のラプラシアンフィルタの例を示す。
【図５０】  図３９の閾値に対して、非等方性ラプラシアンＬ４（ｘ，ｙ）で閾値を制御した場合の４値誤差拡散処理の結果を示す。
【図５１】  本発明の実施例１に係る多値誤差拡散処理の構成を示す。
【図５２】  本発明の実施例１の処理フローチャートである。
【図５３】  ＬＵＴで構成された閾値量決定部を示す。
【図５４】  本発明の実施例２の構成を示す。
【図５５】  本発明の実施例２の処理フローチャートである。
【図５６】  −６４〜６４の値を返す乱数の出現確率分布を示す。
【図５７】  本発明の実施例３の構成を示す。
【図５８】  本発明の実施例３の処理フローチャートである。
【符号の説明】
１  入力
２  加算器
３  量子化部
４  出力
５  減算器
６  誤差メモリ
７  誤差拡散マトリクス
８  特定濃度判定部
９  マスク加算部
１０  閾値量決定部
１１  乱数回路
１２  ラプラシアン演算処理部
１３  ラインメモリ
１４  閾値補正量決定部
【図１】
0004029999.tif 000002
【図２】
0004029999.tif 000003
【図３】
0004029999.tif 000004
【図４】
0004029999.tif 000005
【図５】
0004029999.tif 000006
【図６】
0004029999.tif 000007
【図７】
0004029999.tif 000008
【図８】
0004029999.tif 000009
【図９】
0004029999.tif 000010
【図１０】
0004029999.tif 000011
【図１１】
0004029999.tif 000012
【図１２】
0004029999.tif 000013
【図１３】
0004029999.tif 000014
【図１４】
0004029999.tif 000015
【図１５】
0004029999.tif 000016
【図１６】
0004029999.tif 000017
【図１７】
0004029999.tif 000018
【図１８】
0004029999.tif 000019
【図１９】
0004029999.tif 000020
【図２０】
0004029999.tif 000021
【図２１】
0004029999.tif 000022
【図２２】
0004029999.tif 000023
【図２３】
0004029999.tif 000024
【図２４】
0004029999.tif 000025
【図２５】
0004029999.tif 000026
【図２６】
0004029999.tif 000027
【図２７】
0004029999.tif 000028
【図２８】
0004029999.tif 000029
【図２９】
0004029999.tif 000030
【図３０】
0004029999.tif 000031
【図３１】
0004029999.tif 000032
【図３２】
0004029999.tif 000033
【図３３】
0004029999.tif 000034
【図３４】
0004029999.tif 000035
【図３５】
0004029999.tif 000036
【図３６】
0004029999.tif 000037
【図３７】
0004029999.tif 000038
【図３８】
0004029999.tif 000039
【図３９】
0004029999.tif 000040
【図４０】
0004029999.tif 000041
【図４１】
0004029999.tif 000042
【図４２】
0004029999.tif 000043
【図４３】
0004029999.tif 000044
【図４４】
0004029999.tif 000045
【図４５】
0004029999.tif 000046
【図４６】
0004029999.tif 000047
【図４７】
0004029999.tif 000048
【図４８】
0004029999.tif 000049
【図４９】
0004029999.tif 000050
【図５０】
0004029999.tif 000051
【図５１】
0004029999.tif 000052
【図５２】
0004029999.tif 000053
【図５３】
0004029999.tif 000054
【図５４】
0004029999.tif 000055
【図５５】
0004029999.tif 000056
【図５６】
0004029999.tif 000057
【図５７】
0004029999.tif 000058
【図５８】
0004029999.tif 000059