(57)【特許請求の範囲】
【請求項１】
多階調画像データを平均誤差最小法または誤差拡散法により２値画像データへ変換する画像処理装置であって、
注目画素の多階調画像データに、周辺の既に２値化済みの画素から得られた誤差値にもとづく値を加えて補正し、補正画像データとして出力する画像データ補正手段と、
予め設定された閾値と前記画像データ補正手段による補正画像データを比較して２値画像データへ変換する２値化手段と、
前記補正画像データと前記２値化手段による２値化結果により誤差値を演算する誤差演算手段と、
予め設定された判定値と前記注目画素の多階調画像データの値を比較することにより、前記誤差演算手段により演算された誤差値を補正するか否かを判定する判定手段と、
前記２値化手段による２値化結果がオンでかつ前記判定手段にて補正が必要と判断された場合には、予め設定された補正数値を用いて前記注目画素の誤差値及び既に得られている該注目画素の周辺の画素の誤差値を、それぞれ所定値によって補正して誤差値とする誤差補正手段と、
前記２値化手段による２値化結果がオフまたは、前記判定手段にて補正が必要でないと判定された場合は、前記補正画像データと２値化結果による誤差値をそのまま当該注目画素の誤差値とし、並びに前記誤差補正手段で補正された場合は、補正された誤差値を、前記注目画素及び周辺の画素の誤差値として記憶する誤差記憶手段と、を備え、
前記画像データ補正手段は、誤差記憶手段に記憶されている誤差値にもとづく値を加えて補正をすることを特徴とする画像処理装置。
【請求項２】
前記誤差補正手段は、誤差値を減算する手段であることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記誤差補正手段による誤差値の補正は、注目画素と同一ラインの画素にのみ行われることを特徴とする請求項１記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、平均誤差最小法または誤差拡散法を用いて、多階調画像データを２値化する画像処理装置に関する。
【０００２】
【従来の技術】
一般的に多階調画像データを、２値出力のみ可能なプリンタ装置に出力する場合や、保存容量を低減し、転送速度を高速化するためにデータ容量を減少させるために、各画素の階調数を減らす２値化処理が行われている。この２値化の手法には、各種の方法があるが、その中でも高解像度でかつ連続的な階調制御が可能な優れた特性を持つ誤差拡散法や平均誤差最小法が広く用いられている。
特に近年パーソナル向けとして大幅に生産台数を伸ばしている安価なインクジェット方式のプリンタではこれらの方式を２値化手法として採用している場合が多い。
ここで、誤差拡散法とは、ある画素の２値化時に生じた量子化誤差を、周辺のまだ２値化していない画素へ重み付けをして拡散分配するものである。また、平均誤差最小法とは、周辺の２値化済みの画素に生じた量子化誤差の重み付き平均値により、注目画素の画像データ値を補正するものである。誤差拡散法と平均誤差最小法は、誤差の拡散作業をいつ行うかが異なるだけであり、論理的には等価なものである。
【０００３】
これら誤差拡散法や平均誤差最小法の手法に関する技術としては、特開平７−２２６８４１号公報に記載の発明が公知である。一般的な平均誤差最小法の手法は、注目画素の多階調画像データを、既に２値化した周辺画素の重み付き誤差分を加算して補正し、その補正値を予め設定された閾値によって２値化するものである。その際に発生する誤差はまだ２値化されていない周辺画素に拡散されることになる。まず、注目画素に対応する誤差の算出方法について説明する。
なお、説明に際して、画像の主走査方向は向かって左から右へ走査されるものとし、副走査は上から下へ走査されるものとする。図３のマトリクスはウェイトマトリクスと呼ばれるものの一例である。
【０００４】
図３の＊は注目画素を示し、２値化済みの画素から算出された誤差に、対応するマトリクスの重み付き係数を掛け、２値化済みの周辺画素の誤差の合計を算出する。次にウェイトマトリクスの重みを全て加算した合計値で除算される。よって、２値化済みの周辺画素の誤差を正規化し、注目画素の画像データを補正する誤差を算出することになる。以上のことを式に表すと下式のようになる。
Ｄxy＝ｄxy＋Σ〔ｅx+i,y+j ・ｗi,j ／Σｗi,j 〕
但し、ｘ，ｙ：注目多階調画素座標、ｉ，ｊ：ウェイトマトリクス座標（但し、注目画素を’０，０として左、上方向はマイナス）
ｄxy      ：注目画素の画像データ
ｅx+i,y+j ：周辺画素の誤差分
ｗij      ：ウェイトマトリクスの係数
Ｄxy      ：補正データ
【０００５】
次に、２値化方法について説明する。前式の補正画素データＤxyを予め設定された閾値Ｔにより２値化する。２値化方法は、ＤxyがＴよりも小さい場合、出力データを０、ＤxyがＴ以上の場合出力データを１とする。なお、ここではＤxy＝Ｔの場合出力データを１としているが、０としても出力画像はほとんど変わらない。
これらを式に表すと以下の用になる。
ＩＦ      Ｄxy＜Ｔ
ＴＨＥＮ  Ｏxy＝０
ＥＬＳＥ  Ｏxy＝１
但し、Ｔ：閾値
Ｏxy：出力２値データ
【０００６】
最後に、注目画素の誤差の算出方法について説明する。補正データＤxyと出力データＯxyにより注目画素における誤差分を計算する。一般的にＯxyの値が０であった場合、Ｄxyそのものが誤差となり、Ｏxyの値が１であった場合、Ｄxyから、入力画像データにおける最大値が減算された値が誤差となる。これらを式で表すと以下のようになる。
ｅxy＝Ｄxy−Ｏxy・ｄmax 
但し、ｄmax ：入力画像データの最大値
【０００７】
【発明が解決しようとする課題】
理論的にはこれらの方法により、画像全体の濃度情報が入力画像と出力画像で保存された２値化処理を行うことが可能となるのである。
前述してきたように平均誤差最小法や誤差拡散法は、２値化処理法として優れた特徴を有するが、特開平７−２２６８４１号公報でも述べられているように、２値化によって形成されるドットの密度が疎な場合に、「ドットが均一に分散されず、不均一に連なったドットが形成され、画質劣化を生じる」という問題点がある。一般的に「ウォーム」（ｗｏｒｍ）等と呼ばれている。
ここで、ドットが疎な場合というのは、画像の光学濃度が低い部分のことである。例えば画像データが８ビットであり、白データを０、黒データを２５５とした場合、濃度の低い部分とは０に近い数字（０データ部はドットを打たない）の画像データ部であり、この部分を平均誤差最小法や誤差拡散法にて処理を行うと、黒ドットがまばらに存在することになる。図４に、従来の平均誤差最小法または誤差拡散法により低濃度部を処理した出力画像の例を示す。
【０００８】
前述の特開平７−２２６８４１号公報においては、この問題をウェイトマトリクス（この公報においては誤差拡散マトリクスとしている）サイズを大きくすることによって改善している。しかし、本発明者の実験においては、ウェイトマトリクスサイズを大きくすることによって多少の改善はされるものの、依然としてウォームは存在していた。
また、たとえ画像の一部にのみ大きなサイズのウェイトマトリクスを使用するアルゴリズムにおいても、平均誤差最小法や誤差拡散法の処理をハードウェアにて構成した場合に、誤差を記憶するメモリ量が増えるためにコストアップにつながってしまうという問題があった。
【０００９】
そこで、本発明の第１の目的は、ドット密度が疎な場合にドット分散効果が高く、コストアップに繋がらない平均誤差最小法または誤差拡散法により多階調画像データを２値画像データヘ変換する画像処理装置を提供することである。
また、本発明の第２の目的は、本発明をハードウェアにて実現した場合において、コストを低く押さえる画像処理装置を提供することである。
本発明の第３の目的は、本発明をソフトウェアにて実現した場合における処理速度を高速にする画像処理装置を提供することである。
【００１０】
【課題を解決するための手段】
請求項１記載の発明では、多階調画像データを平均誤差最小法または誤差拡散法により２値画像データへ変換する画像処理装置であって、注目画素の多階調画像データに、周辺の既に２値化済みの画素から得られた誤差値にもとづく値を加えて補正し、補正画像データとして出力する画像データ補正手段と、予め設定された閾値と前記画像データ補正手段による補正画像データを比較して２値画像データへ変換する２値化手段と、前記補正画像データと前記２値化手段による２値化結果により誤差値を演算する誤差演算手段と、予め設定された判定値と前記注目画素の多階調画像データの値を比較することにより、前記誤差演算手段により演算された誤差値を補正するか否かを判定する判定手段と、前記２値化手段による２値化結果がオンでかつ前記判定手段にて補正が必要と判断された場合には、予め設定された補正数値を用いて前記注目画素の誤差値及び既に得られている該注目画素の周辺の画素の誤差値を、それぞれ所定値によって補正して誤差値とする誤差補正手段と、 前記２値化手段による２値化結果がオフまたは、前記判定手段にて補正が必要でないと判定された場合は、前記補正画像データと２値化結果による誤差値をそのまま当該注目画素の誤差値とし、並びに前記誤差補正手段で補正された場合は、補正された誤差値を、前記注目画素及び周辺の画素の誤差値として記憶する誤差記憶手段と、を備え、前記画像データ補正手段は、誤差記憶手段に記憶されている誤差値にもとづく値を加えて補正をすることにより前記第１の目的及び前記第３の目的を達成する。
【００１１】
請求項２記載の発明では、請求項１記載の発明において、前記誤差補正手段は、誤差値を減算する手段であることにより前記第１の目的を達成する。
請求項３記載の発明では、請求項１記載の発明において、前記誤差補正手段による誤差値の補正は、注目画素と同一ラインの画素にのみ行われることにより前記第２の目的を達成する。
【００１２】
【発明の実施の形態】
以下、本発明の好適な実施の形態を図１ないし図１７を参照して詳細に説明する。
図１は、本実施の形態における平均誤差最小法処理部の構成図である。本実施の形態では、画像データの処理は、画像データの向かって左側上部を起点として、主走査（横）方向へ処理が進み、１ライン分の処理が終了すると次ラインの処理（副走査方向への処理）が行なわれる。
以下同図における構成要素を説明する。多階調画像データ出力手段１は入力多階調画像データｄxyが出力され、加算手段２は入力画素の補正値であるＥxyと入力多階調画像データｄxyを加算し補正画像データＤxyを算出する。２値化手段３は補正画像データＤxyと閾値Ｔを比較し、２値化処理を行う。閾値発生手段４は閾値Ｔを発生させ、誤差算出手段５は補正画像データＤxyと２値化結果Ｏxyより画素座標（ｘ，ｙ）で表される注目画素の誤差を算出する。
【００１３】
また、誤差値補正手段６は２値化結果Ｏxyの結果をもとに注目画素および、注目画素の左側の画素の誤差値を補正し、誤差記憶手段７は算出された誤差ｅxyを格納する。重み発生手段８はウェイトマトリクスを格納しその重みＷijを発生させ、補正値演算手段９は周辺画素の誤差ｅx+i,y+j と重みＷijを積和演算すると共に、ＦＬＧの状態を判定し、入力多階調画像データの補正値（注目画素の右側の誤差値）を補正する。
【００１４】
図２は本実施の形態のシステムの構成例を表した図である。本実施の形態においては、平均誤差最小法処理部をホストコンピュータ２１内に備えており、この場合平均誤差最小法処理はホストコンピュータ２１にソフトウェアにより処理され、２値画像出力プリンタ２２へ転送されて２値画像が出力される。なお、このようなシステム構成は、コスト的に有利な方法でありパーソナル向けのインクジェトプリンタ等に多く使用されている。また、システム構成は他にもさまざまな構成が可能である。
【００１５】
図３は本実施の形態におけるウェイトマトリクスである。前述したように、＊は注目画素を表す。
同図における数値が、対応する画素の誤差の重みである。なお、ウェイトマトリクスはさまざまな構成が可能である。
【００１６】
図６、図７は本実施の形態における平均誤差最小法の手順を示したフローチャートである。処理に先立ち主走査方向の画素カウンタｘおよび副走査方向のラインカウンタｙを初期値”０”とし、ＦＬＧを初期化する（ステップ１０）。次に、補正値演算手段９により、誤差記憶手段７より読み出された２値化済みの画素の誤差ｅ’x+i,y+j と対応する、重み発生手段８より読み出されたウェイトマトリクスの重みを乗算し、各々を加算し、ウェイトマトリクスの重みの合計にて除算して、補正値Ｅxyを算出する（ステップ１１）。Ｅxyは図３のウェイトマトリクスを使用して展開すると、
【００１７】
【数１】
Ｅxy＝（ｅx-1,y-1 ×１＋ｅx,y-1 ×２＋ｅx+1,y-1 ×１＋ｅx-1,y ×２）×１／６
【００１８】
となる。
ここでもし、ＦＬＧが０でない場合は（ステップ１２；Ｎ）、予め定められた数値ＶをＥxyより減算し（ステップ１３）、ＦＬＧを１減算する（ステップ１４）。これは、以前に走査された画素の２値化結果Ｏxyが１（オン）であった場合の、その右側の画素の誤差値の補正と等価である。なお、本実施の形態においては、入力多階調画像データの補正値に補正を行っているが、入力多階調画像データに同様に補正を行っても同様の結果を得ることができる。
【００１９】
次に、入力多階調画像データｄxyと補正値Ｅxyを加算手段２により加算して補正データＤxyを算出する（ステップ１５）。
次に、２値化手段３によって補正画素データＤxyを予め設定された閾値Ｔにより２値化する（ステップ１６）。２値化方法は、ＤxyがＴよりも小さい場合（ステップ１６；Ｙ）、出力２値画像データＯxyを０（ステップ１７）、ＤxyがＴ以上の場合（ステップ１６；Ｎ）出力２値画像データＯxyを１とする（ステップ１８）。
続いて、誤差演算手段５により補正画素データＤxyと出力２値画像データＯxy、および予め定められた値Ｂにより注目画素における誤差ｅxyを計算する（ステップ１９）。なお、Ｂは通常入力階調の最大値のデータ（黒）と同一の値となる。例えば入力多階調画像データが、８ビットだとするとＢは２５５となる。
【００２０】
次に、誤差値補正手段６は２値化結果Ｏxyが０（ドットオフ）の場合は（ステップ２０；Ｎ）、ｅxyの値をそのまま補正誤差値ｅ’xyとして誤差記憶手段７に格納し（ステップ２２）、Ｏxyが１（ドットオン）の場合は（ステップ２０；Ｙ）、注目画素の誤差値であるｅxyと共に、予め定められたＣ個分の、注目画素の左側の（注目画素以前に走査された）画素において算出された誤差ｅx-k（この場合ｋは１〜Ｃの自然数となる。なお、０を含めると注目画素の誤差をも含めることになる）から前述のＶを減算し、補正誤差値ｅ’x-kとする（ステップ２３）。
これにより、注目画素と注目画素の左側の部分の誤差値の補正を行ったことになるが、前述の注目画素の右側の誤差値を補正するためにＦＬＧにＣの値をセットする（ステップ２６）。
【００２１】
続いて、主走査方向の画素カウンタｘをインクリメントする（ステップ２７）。これで１画素分の処理が終了である。１画素分の処理が終了すると、主走査１ライン分の処理が終了したか判断し（ステップ２８）、終了していなければ（ステップ２８；Ｎ）、次（右隣）の画素の処理を行う。もし、先ほどの判断により主走査１ライン分の処理が終了していれば（ステップ２８；Ｙ）、ラインカウンタｙをインクリメントし（ステップ２９）、副走査方向の処理が終了したかどうか判断する（ステップ３１）。
もし、終了していなければ（ステップ３１；Ｎ）、ＦＬＧの値をクリアし、次（下段）のラインの処理を行い、全てのラインの処理が終了していればこの画像の処理は終了となる。
【００２２】
以下、本実施の形態の有効性を詳細に説明する。図８に低濃度部において通常の平均誤差最小法処理を施した時の、誤差の分布を示してある。この図における平均誤差最小法処理は、図３に示したウェイトマトリクスを使用し、入力多階調画像データを８ビットとして図中全画素の入力多階調データ値を２、閾値を１２８とした。誤差はその値によってパターンに分けて示している。なお、この図の場合も紙面上向かって左上から横方向に主走査を行い、下方向へ副走査が行われる。
図中最小の楕円の画素（誤差値−１５０〜−１００の楕円）が２値化結果が１（オン）となった画素である。このように低濃度部における２値化結果が１となった場合の誤差は、入力多階調画像データ値が低いため、大きなマイナスの誤差が出力される。そのため、平均誤差最小法は、その方法自体に、低濃度部では、ドットの周辺にドットが打たれる（ドットが集中する）のを防ぐ働きがある。
【００２３】
ところで、図８より、左から右へ主走査を行う通常の平均誤差最小法処理においては、負の誤差の影響は右斜め下方向へ強く現れ、左方向はあまり影響を与えないことが分かる。このため、ドットが打たれた画素の左側には、大きな誤差が残り、ドットが打たれ易い状況が残る。結果的に、図４に示したように、左斜め下方向へドットが連なる現象が起こり、画像品質を低下させていた。
しかし、本実施の形態によれば、多階調画像データを平均誤差最小法により２値画像データへ変換する画像処理装置において、注目画素の２値化結果が１（オン）となった場合に、注目画素の、左右の複数の画素の誤差値を減算して補正し、注目画素の左側にも負の誤差の影響を与えているので、２値化によって形成されるドットの密度が疎な場合においても、ドットの分散性の良い、図５に示したような画像が得られる。
【００２４】
この説明においては、補正画素数Ｃ（ドットが打たれた場合の総補正画素数は２Ｃ＋１となる）補正数値Ｖについて明確な数値を示していないが、これらは、実験により画像を出力して、定めていくのが望ましい。実験においては、これらの数値が、小さい状態では、効果が低く、大きくすると効果が大となり、あまり大きくし過ぎると、過補正となることが確認されている。また、これらの数値はウェイトマトリクスの種類、大きさ等によっても効果が変化するため、本実施の形態のそれぞれの系によって最適値を実験により求めていくのが望ましい。
なお、本実施の形態では平均誤差最小法にて行う方法であったが、これが誤差拡散法を使用しても、理論的に効果は等価であり、本実施の形態は平均誤差最小法と誤差拡散法の違いによって制約を受けるものではない。また、平均誤差最小法および誤差拡散法には閾値にランダムノイズを重畳したり、ディザマトリクスを使用して閾値を変化させる方法、ラインの処理方向を互い違いに行う方法等が行われているが、本実施の形態はいずれの場合にも対応し、それらの平均誤差最小法または誤差拡散法の付加手法によって制約を受けない。
【００２５】
次に、本発明の第２の実施の形態について説明する。
第１の実施の形態では、ソフトウェアによって平均誤差最小法を実現する方法を説明したが、この実施の形態においてはハードウェアにて平均誤差最小法を実現する方法を述べる。
図９は本実施の形態のシステムの構成例を示した図である。本実施の形態においては、平均誤差最小法処理部を２値画像プリンタ２４内にハードウェアにより備えた例であり、ホストコンピュータ２３は例えばポストスクリプトのようなページ記述言語等により２値画像出力プリンタ２４と通信を行い、２値画像出力プリンタ２４側ではそれを展開し、平均誤差最小法処理を施して２値画像を出力する。
【００２６】
このようなシステム構成は高速性に有利な方法で、電子写真方式等のプリンタ装置に多く用いられる。なお、システム構成は他にもさまざまな構成が考えられる。
本実施の形態の概略の構成は、図１に示す第１の実施の形態の場合と同様である。誤差演算手段５、誤差値補正手段６、誤差記憶手段７、補正値演算手段９について以下詳細な構成図により説明する。
図１０は、誤差演算手段５の構成図である。以下同図における構成要素を説明する。加算器３１は補正画像データＤxyと−２５５を加算し、セレクタ３２は２値化結果Ｏxyの結果が１（ドットオン）の場合加算器３１の出力値を選択し、２値化結果Ｏxyの結果が０（ドットオフ）の場合補正画像データＤxyを選択し誤差値ｅxyとして出力する。
【００２７】
図１１は、誤差値補正手段６の構成図である。以下、同図における構成要素を説明する。フリップフロップ４１〜４４は、誤差値ｅをラッチする。図中簡略化してあるが本実施の形態におけるフリップフロップ４１〜４４は予め定められた数Ｃ個存在し、Ｃ画素分の誤差ｅのシフトレジスタとして使用している。
加算器４５は誤差値ｅx-c,y と予め定められた数−Ｖを加算し、セレクタ４６はＦＬＧが０（オフ）であった場合誤差値ｅx-c,y を選択し、ＦＬＧが１（オン）であった場合誤差値ｅx-c,y と−Ｖの加算結果を選択し補正誤差値ｅ’x-c,y として出力する。
【００２８】
加算器４７は注目画素の誤差値ｅxyと−Ｖを加算し、セレクタ４８は２値化結果Ｏxyの結果が０（ドットオフ）であった場合誤差値ｅxyを選択し、２値化結果Ｏxyの結果が１（ドットオン）の場合誤差値ｅxyと−Ｖの加算結果を選択し補正誤差値ｅ’xyとして出力する。
カウンタ４９は、２値化結果Ｏxyの結果が１（ドットオン）となった時に、０の値がロードされ、その値を１づつカウントアップする。このカウンタ４９は、そのカウンタ値がＣ＋１となるとカウントを停止する構成となっている。比較器５０はカウンタ４９の値と、Ｃを比較しカウンタ４９のカウント値がＣ以下であった場合、ＦＬＧ信号をオンする。
【００２９】
図１２は、誤差記憶手段７と補正値演算手段９の構成を表した図である。フリップフロップ６１は、補正誤差値ｅ’xyをラッチし、ＦＩＦＯ（Ｆｉｒｓｔ  ｌｎ  Ｆｉｒｓｔ  Ｏｕｔ）６２は補正誤差値ｅ’を１ライン分記憶する容量を持つラインメモリである。フリップフロップ６３、６４はＦＩＦＯ６２から読み出された注目画素の１ライン前の補正誤差値ｅ’をラッチし、乗算機６５〜６８は注目画素周辺の補正誤差値ｅ’と、ウェイトマトリクスの重み係数を乗算する。
【００３０】
加算器６９は乗算機６５〜６８の出力結果を加算し、除算器７０は加算器６９の出力値をウェイトマトリクスの合計値６により除算する。フリップフロップ７１は誤差値補正手段６により出力されたＦＬＧ信号をラッチして、１画素分遅延させる。なお、この際にＦＬＧ信号を遅延させる理由であるが、ＦＬＧ信号が発生した時点における注目画素は、座標（ｘ，ｙ）である。ＦＬＧ信号は、座標（ｘ，ｙ）の画像を２値化した結果が１（オン）となった場合に、その次の画素（ｘ＋１，ｙ）からＣ個の画素を処理する為の判定信号であるから、ここでは１画素分遅延させる必要がある。
加算器７２は除算器７０の除算結果と−Ｖを加算し、セレクタ７３はＦＬＧが０（オフ）であった場合除算器７０の出力結果を選択し、ＦＬＧが１（オン）であった場合加算器７２の出力結果を選択し補正値Ｅxyとして出力する。
【００３１】
図１３、図１４は本実施の形態における動作のフローチャートである。以下同図をもとに本実施の形態の動作を説明する。まず、処理に先立って主走査方向の画素カウンタｘおよび副走査方向のラインカウンタｙを初期値”０”とし、ＦＬＧ信号を初期化（オフ）する（ステップ４０）。次に、補正値演算手段９により、誤差記憶手段７より読み出された、２値化済みの画素の補正誤差、ｅ’x-1,y-1 と１を乗算器６８にて乗算し、ｅ’x,x-1 と２を乗算器６７にて乗算し、ｅ’x+1,y-1 と１を乗算器６６にて乗算し、ｅ’x-1,y と２を乗算器６５にて乗算し、加算器６９にてそれらを加算する（ステップ４１）。その結果を誤差値補正手段６により除算器７０にて除算し、補正値Ｅxyを算出する。Ｅxyは第１の実施の形態の場合と同様に
【００３２】
【数２】
Ｅxy＝（ｅx-1,y-1 ×１＋ｅx,y-1 ×２＋ｅx+1,y-1 ×１＋ｅx-1,y ×２）×１／６
【００３３】
となる。
ここでもし、ＦＬＧが０でない場合は（ステップ４２；Ｎ）、予め定められた数値−ＶとＥxyを加算器７２にて加算する（ステップ４３）。前述したように、これは、以前に走査された画素の２値化結果Ｏxyが１（オン）であった場合の、その右側の画素の誤差値の補正と等価である。なお、本実施の形態においては、入力多階調画像データの補正値に補正を行っているが、入力多階調画像データに同様に補正を行っても同様の結果が得られる。
【００３４】
次に、入力多階調画像データｄxyと補正値Ｅxyを加算手段２により加算して補正データＤxyを算出する（ステップ４４）。続いて、２値化手段３によって補正画素データＤxyを予め設定された閾値Ｔにより２値化する（ステップ４５）。２値化方法は、ＤxyがＴよりも小さい場合（ステップ４５；Ｙ）、出力２値画像データＯxyを０（ステップ４６）、ＤxyがＴ以上の場合（ステップ４５；Ｎ）、出力２値画像データＯxyを１とする（ステップ４７）。
【００３５】
次に、セレクタ３２は、２値化結果Ｏxyが１（ドットオン）であった場合は（ステップ４８；Ｙ）、Ｄxyと−２５５を加算器３１にて加算した結果を誤差値ｅxyとし（ステップ４９）、２値化結果が０（ドットオフ）であった場合は（ステップ４８；Ｎ）、Ｄxyを誤差値ｅxyとする（ステップ５０）。
続いて、セレクタ４８は、２値化結果Ｏxyが０（ドットオフ）の場合は（ステップ５１；Ｎ）、ｅxyの値をそのまま補正誤差値ｅ’xyとして誤差記憶手段７に出力し（ステップ５３）、２値化結果Ｏxyが１（ドットオン）の場合は（ステップ５１；Ｙ）、加算器４７により加算された注目画素の誤差値であるｅxyと−Ｖの加算結果を、ｅ’xyとして誤差記憶手段７に出力する（ステップ５２）。
【００３６】
また、２値化結果Ｏxyが１（ドットオン）となると（ステップ５４）、カウンタ４９が０クリアされ、カウントを開始する。比較器５０は、このカウンタの値の変化により出力（ＦＬＧ信号）をオンとする（ステップ５５）。なお、ＦＬＧ信号は２値化結果Ｏxyが１（ドットオン）となった画素からＣ個分の画素の処理が終了するまでオンとなる。
次にセレクタ４６は、ＦＬＧ信号が１（オン）であった場合は（ステップ５５；Ｙ）、誤差ｅx-c,y と−Ｖを加算器４５により加算した結果を補正誤差値ｅ’x-c,y として出力し（ステップ５６）、ＦＬＧ信号が０（オフ）であった場合は（ステップ５５；Ｎ）、誤差ｅx-c,y を補正誤差値ｅ’x-c,y として出力する（ステップ５７）。この注目画素と注目画素の左側の部分の誤差値の補正は、本実施の形態の場合、注目画素の処理を行っている時に、座標（ｘ−Ｃ，ｙ）の画素の補正を行い、以下注目画素が進む毎に順次、２値化結果Ｏxyが１（オン）となった画素（現在の注目画素）まで補正が行われる。
【００３７】
補正が行われた画素の補正誤差ｅ’x-c,y はＦＩＦＯ６２に格納される。一方セレクタ４８より出力された注目画素の補正誤差ｅ’xyは、フリップフロップ６１により１画素分遅延され、次の座標（ｘ＋１，ｙ）の補正値Ｅｘ＋１，ｙを求めるために使用され、ＦＩＦＯ６２には、現段階では保存されない。
次に、主走査方向の画素カウンタｘをインクリメントする。  これで１画素分の処理が終了である。１画素分の処理が終了すると、主走査１ライン分の処理が終了したか判断し（ステップ６２）、終了していなければ（ステップ６２；Ｎ）、次（右隣）の画素の処理を行う。
【００３８】
もし、先ほどの判断により主走査１ライン分の処理が終了していれば（ステップ６２；Ｙ）、ラインカウンタｙをインクリメントし（ステップ６３、ステップ６４）、副走査方向の処理が終了したかどうか判断する（ステップ６５）。そして、終了していなければ、ＦＬＧ信号をクリアし、次（下段）のラインの処理を行い、全てのラインの処理が終了していればこの画像の処理は終了となる。
【００３９】
以上説明したように、本実施の形態によれば、多階調画像データを平均誤差最小法により２値画像データへ変換する画像処理装置において、注目画素の２値化結果が１（オン）となった場合に、注目画素の、左右の複数の画素の誤差値を減算して補正し、注目画素の左側にも負の誤差の影響を与えているので、２値化によって形成されるドットの密度が疎な場合においても、ドットの分散性の良い、図５に示したような画像が得ることができる。
また、本実施の形態のように、ハードウェアにより平均誤差最小法を実現した場合、特に大きな誤差拡散マトリクスを使用せず、また注目画素と同一ラインの誤差にのみ誤差値の補正を行っているので、ラインメモリが最小限の数で済みコスト的にも有利であるという効果を併せ持つ。
【００４０】
なお、本実施の形態では平均誤差最小法にて行う方法であったが、これが誤差拡散法を使用しても、理論的に効果は等価であり、平均誤差最小法と誤差拡散法の違いによって制約を受けるものではない。また、平均誤差最小法および誤差拡散法には閾値にランダムノイズを重畳したり、ディザマトリクスを使用して閾値を変化させる方法、ラインの処理方向を互い違いに行う方法等が用いられているが、本実施の形態はいずれの場合にも対応し、それらの平均誤差最小法または誤差拡散法の付加手法によって制約を受けることはない。
【００４１】
次に、第３の実施の形態を説明する。
前記第１の実施の形態および第２の実施の形態では、全入力データレベルにより誤差値の補正を行う例を示したが、前述したように一般的に平均誤差最小法や誤差拡散法によりウォームが問題となるのは、低濃度部のみであるので、それ以外の部分では特に誤差値の補正を行う必要がない。また、平均誤差最小法や誤差拡散法をソフトウェアで行う場合、誤差値の補正を全入力レベルにて行うことは、速度的に不利となる可能性があるため、本実施の形態では、入力データレベルによって選択的に誤差値の補正を行う方法を示す。
【００４２】
本実施の形態におけるシステム構成は第１の実施の形態と同様である。即ち、本実施の形態でも平均誤差最小法処理はホストコンピュータ２１にソフトウェアにより処理され、２値画像出力プリンタ２２へ転送され２値画像が出力されることになる。
図１５に本実施の形態における平均誤差最小法の構成図を示してある。誤差値補正手段６以外は、第１の実施の形態と同様である。本実施の形態の誤差値補正手段６は、２値化結果Ｏxyの結果をもとに注目画素および、注目画素の左側の画素の誤差値を、入力画像データの値により補正を行うかどうか判定し補正する誤差値補正手段である。また、本実施の形態におけるウェイトマトリクスも第１の実施の形態と同様である。
【００４３】
図１６、図１７は本実施の形態の平均誤差最小法の処理の手順を示したフローチャートである。第１の実施の形態との相違点は、誤差値補正手段６のみであるので、ここでは相違点のみを説明する。
誤差値補正手段６は入力多階調画像データの値を、予め定められた数Ｊと比較し（ステップ８０）、入力多階調画像データがＪ以下であった場合のみ（ステップ８０；Ｙ）、第１の実施の形態の場合と同様に２値化結果Ｏxyの２値化結果が１（オン）であった場合に（ステップ８１；Ｙ）、注目画素とその左側のＣ個分の画素の誤差値ｅx-k,yを補正し（ステップ８４）、ＦＬＧにＣの値をセットする（ステップ８７）。つまり、本実施の形態では、ドット分散性の悪い低濃度部のみに誤差値の補正を行うことになる。
【００４４】
以上説明したように、多階調画像データを平均誤差最小法により２値画像データへ変換する画像処理装置または画像処理方法において、入力多値画像データの値が低濃度部に属する値であった場合にのみ、注目画素の２値化結果が１（オン）となったときに、注目画素の、左右の複数の画素の誤差値を減算して補正し、注目画素の左側にも負の誤差の影響を与えているので、２値化によって形成されるドットの密度が疎な場合においても、ドットの分散性の良い、図５に示したような画像が得られる。
また、誤差値の補正処理が必要な階調レベルのみを選択して行っているので、本実施の形態のようにソフトウェアにより平均誤差最小法処理を行った場合でも高速な処理が可能となる。
【００４５】
なお、この説明においても、補正画素数Ｃ（ドットが打たれた場合の総補正画素数は２Ｃ＋１となる）補正数値Ｖ、入力多階調画像データ判定値Ｊ等の明確な数値を示していないが、これらは、第１の実施の形態で述べたのと同様に、実施するそれぞれの系によって最適値を実験により求めていくのが望ましい。
この実施の形態は、平均誤差最小法にて行う方法であったが、これが誤差拡散法を使用しても、理論的に効果は等価である。また、平均誤差最小法および誤差拡散法には閾値にランダムノイズを重畳したり、ディザマトリクスを使用して閾値を変化させる方法、ラインの処理方向を互い違いに行う方法等があるが、それらの平均誤差最小法または誤差拡散法の付加手法によって本実施の形態は制約を受けない。さらに、第２の実施の形態のようにハードウェアによって構成しても良く、システム構成の違いによっても制約を受けることはない。
【００４６】
【発明の効果】
請求項１または請求項２記載の発明では、多階調画像データを平均誤差最小法または誤差拡散法により２値画像データへ変換する画像処理装置において、注目画素の２値化結果が１（オン）となった場合に、注目画素の、左右の複数の画素の誤差値を減算して補正し、注目画素の左側にも負の誤差の影響を与えているので、２値化によって形成されるドットの密度が疎な場合においても、ドットの分散効果の高い平均誤差最小法または誤差拡散法処理を行うことができる。また、特に大きなウェイトマトリクスを必要としないのでコストアップに繋がることがない。また、誤差値の補正処理が必要な階調レベルのみを選択して誤差値の補正を行っているので、本発明をソフトウェアにより実現した場合でも高速な処理が可能となる。
【００４７】
請求項３記載の発明では、誤差値を補正する画素を注目画素と同一ラインのみに限定しているので、ハードウェアにより実施した場合においても不要なコストアップを招かずに上記の効果を実現できる。
【図面の簡単な説明】
【図１】本実施の形態における平均誤差最小法処理部の構成図である。
【図２】本実施の形態のシステムの構成例を表した図である。
【図３】ウェイトマトリクスの一例を表した図である。
【図４】従来の平均誤差最小法または誤差拡散法により低濃度部を処理した出力画像の例を示した図である。
【図５】ドットの分散性が優れた出力画像の例である。
【図６】第１の実施の形態に係る画像処理装置の処理の手順を示したフローチャートである。
【図７】第１の実施の形態に係る画像処理装置の処理の手順を示したフローチャートであり、図６の続きである。
【図８】低濃度部において通常の平均誤差最小法処理を施した時の誤差の分布を示した図である。
【図９】第２の実施の形態のシステムの構成例を示した図である。
【図１０】誤差演算手段の構成を示した図である。
【図１１】誤差値補正手段の構成を示した図である。
【図１２】誤差記憶手段と補正値演算手段の構成を示した図である。
【図１３】第２の実施の形態に係る画像処理装置の処理の手順を示したフローチャートである。
【図１４】第２の実施の形態に係る画像処理装置の処理の手順を示したフローチャートであり、図１４の続きである。
【図１５】第３の実施の形態における平均誤差最小法の構成を示した図である。
【図１６】第３の実施の形態に係る画像処理装置の処理の手順を示したフローチャートである。
【図１７】第３の実施の形態に係る画像処理装置の処理の手順を示したフローチャートであり、図１６の続きである。
【符号の説明】
１  多階調画像データ出力手段
２  加算手段
３  ２値化手段
４  閾値発生手段
５  誤差算出手段
６  誤差値補正手段
７  誤差記憶手段
８  重み発生手段
９  補正値演算手段
２１  ホストコンピュータ
２２  ２値画像出力プリンタ
２３  ホストコンピュータ
３１、４５、４７、６９、７２  加算器
３２、４６、４８、７３  セレクタ
４１〜４４、６１、６３、６４、７１  フリップフロップ
４９  カウンタ
６２  ＦＩＦＯ
６５〜６８  乗算機
７０  除算器
【図１】
0003844266.tif 000002
【図２】
0003844266.tif 000003
【図３】
0003844266.tif 000004
【図４】
0003844266.tif 000005
【図５】
0003844266.tif 000006
【図６】
0003844266.tif 000007
【図７】
0003844266.tif 000008
【図８】
0003844266.tif 000009
【図９】
0003844266.tif 000010
【図１０】
0003844266.tif 000011
【図１１】
0003844266.tif 000012
【図１２】
0003844266.tif 000013
【図１３】
0003844266.tif 000014
【図１４】
0003844266.tif 000015
【図１５】
0003844266.tif 000016
【図１６】
0003844266.tif 000017
【図１７】
0003844266.tif 000018