(57)【特許請求の範囲】
【請求項１】
多値（Ｍ値）画像データを、多値誤差拡散または多値平均誤差最小法を用いてＮ値画像データ（Ｍ＞Ｎ＞２）に量子化し、前記Ｎ値画像データのそれぞれに対応した、第１の出力値のドットと、第２の出力値（＜第１の出力値）のドットと、ドットオフを用いて記録を行う画像処理装置であって、注目画素の多値画像データに、周辺の既に量子化済みの画素から重み付け積和された誤差を加えた補正値を出力する手段と、前記Ｎ値画像データの生成に伴って発生する誤差を算出する手段と、前記誤差を注目画素周辺に重み付け拡散する手段と、前記重み付け拡散された誤差を記憶する手段と、前記注目画素周辺の第１の画素の出力値と、第２の画素の出力値を記憶する手段と、前記第１の画素の出力値と第２の画素の出力値が前記第１の出力値でない場合は、第１の閾値と第２の閾値を同一の値に設定し、前記第１の画素の出力値または第２の画素の出力値が前記第１の出力値の場合は、前記第１の閾値と第２の閾値を異なる値に設定する手段と、前記第１、第２の閾値と前記補正値とを比較してＮ値画像データを出力する手段とを備えたことを特徴とする画像処理装置。
【請求項２】
請求項１記載の画像処理装置の各手段の機能を有することを特徴とする画像記録装置。
【請求項３】
請求項１記載の画像処理装置の各手段の機能をコンピュータに実現させるためのプログラム。
【請求項４】
請求項１記載の画像処理装置の各手段の機能をコンピュータに実現させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多値画像データを高精細かつ高階調に印刷処理するための画像処理装置、画像記録装置（画像形成装置）、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
スキャナやディジタルカメラ等の入力装置で読み取った多値画像データをプリンタやディスプレイ等の出力装置に出力する画像入出力システムが存在する。その際に、入力装置で読み取った多値（例えば８ビット精度ならば２５６階調）の画像データを出力装置が出力可能な階調数の画像データに変換し、擬似的に連続階調を表現する方法として、擬似中間調処理が存在する。
【０００３】
中でも出力装置がドットのオン／オフのみの２値しか表現できないときには２値化処理が従来から行われている。この２値化処理の中で解像性と階調性に共に優れたものとして誤差拡散法や平均誤差最小法が存在する。誤差拡散法と平均誤差最小法は、誤差の拡散作業をいつ行うかが異なるだけであり、論理的には等価なものである。以下、誤差拡散法で説明する。
【０００４】
誤差拡散法による量子化を２値だけでなく、３値以上の階調数にも適用した処理が存在する。２値化と同様に、階調性と解像性に優れた処理が可能である。
【０００５】
ところで電子写真プロセスでは、感光体のＭＴＦ（Ｍｏｄｕｌａｔｉｏｎ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ：光学的伝達関数）をはじめ、露光、現像、転写、定着の各プロセスにおいて空間周波数応答が劣化するために、孤立ドットが存在する画像構造を記録信号として入力しても、再現性がばらついて、十分な階調再現ができないという課題がある。特に３値（大、小ドット）、４値（大、中、小ドット）といった多値書き込み可能な電子写真プロセスにおいて、低濃度部から中濃度部で小ドットの孤立ドットの再現性を一定にすることは非常に難しい。
【０００６】
また、誤差拡散法はドットが出力したとき、量子化誤差を周辺画素に拡散することにより、濃度に応じてドットが分散する中間調処理である。よって低濃度部から中濃度部では孤立ドットが多く生成されることとなる。また単純３値誤差拡散は小ドットとドットオフで階調表現を行い、小ドットで埋め尽くした後に、小ドットと大ドットで階調表現を行うこととなる。このように再現性が悪い小ドットを多用する方式は電子写真では好ましくない。
【０００７】
電子写真において安定性を求めるならば２値書き込みが好ましいが、２値から３値、４値とすることでテクスチャが改善される。また、２値誤差拡散により生じる１ドットと３値、４値誤差拡散により生じる大ドットは同一であるが、３値、４値誤差拡散の大ドットに小、中ドットを隣接させてクラスターを形成させたほうが２値誤差拡散の１ドットよりも孤立していないので安定することがわかってきた。
【０００８】
このように電子写真プロセスにおいて３値、４値等の多値書き込みを行っても再現性が良好となる階調処理が求められてきた。このような課題に取り組んだ技術として次のようなものがある。
【０００９】
【特許文献１】特開２００１−１７７７２２号公報
【特許文献２】特許３４８０９２４号公報
【特許文献３】特開２０００−９９７１８号公報
【特許文献４】特開２００４−１１２１９８号公報
【特許文献５】特開２００５−１９８０６７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記課題に対して、特許文献１には、閾値にドット集中型のディザノイズを重畳し、誤差拡散により量子化された各ドットが閾値に重畳したドット集中型のディザのように集まるようにする技術が開示されている。しかしながら、特許文献１では必ずしも小ドットが生成されない保障がないため、画像種によっては不安定なドットパターンを生成してしまう不具合がある。
【００１１】
また、特許文献２には、ｍ値の多階調画像の入力データを誤差拡散法によりｎ値（３≦ｎ＜ｍ）に量子化する画像形成方法であって、前記入力データが所定のレベル以上のとき、複数の閾値の間隔を狭くして小ドットの発生確率が低くなるようにする手法が開示されている。特許文献２は、高濃度部では小ドットを使用しなくなり、２値誤差拡散と同じ画像が得られ、安定した画像となる。しかしながら、低濃度部では小ドットを孤立して使用するので好ましくない。
【００１２】
注目画素周辺の量子状態を参照して、安定なドットパターンになるか判定する方式として、特許文献３〜５がある。
【００１３】
特許文献３には、不安定となる小ドットが主走査方向に隣接する場合は、注目画素位置の出力値を小ドット以外のドットに変更する誤差拡散が開示されている。特許文献３を用いれば不安定となる画素を主走査方向に連続して使用することを抑制できるが、低濃度部では小ドットが孤立しないことを保障していないので、電子写真を用いた場合には不安定な画像となる可能性がある。
【００１４】
特許文献４には、多値誤差拡散において、小ドットは主走査方向においてドットオフにはさまれた状態でしか出力されないように抑制した誤差拡散の手法が開示されている。特許文献４を用いれば、小ドットは主走査方向においてドットオフにはさまれた状態では表現できない濃度の階調では小ドットが出現されなくなるので、中高濃度部では安定した画像となる。しかしながら、低濃度部において小ドットは必ず主走査方向には孤立することとなり、低濃度部から中濃度部において副走査方向に小ドットが隣接した場合のみ安定というように、電子写真には適さないドットパターンを生成することになる。
【００１５】
特許文献５には、注目画素近傍の量子状態に応じて閾値を設定することでドットがクラスターを形成しやすくする技術が開示されている。特許文献５を用いれば２値誤差拡散の中高濃度部においてドットが集まりやすくなり安定した画像となる。しかしながら、特許文献５を３値、４値誤差拡散に用いると低濃度部において小ドットでクラスターを形成し、小ドットで埋め尽くした後に中ドットを使用することになり、低濃度部では非常に不安定な画像となる。
【００１６】
そこで、電子写真プロセスにおいて３値、４値等の多値書き込みを行っても再現性が良好となる階調処理が求められてきた。
【００１７】
本発明は、かかる問題点に鑑みてなされたものであり、
本発明の目的は、多値出力可能な電子写真において生じる再現性の好ましくないドットによる画質劣化問題を解決できる画像処理装置、画像記録装置、プログラムおよび記録媒体を提供することにある。
【課題を解決するための手段】
【００１８】
本発明では、多値誤差拡散において、注目画素近傍の量子データに応じて閾値群を制御することで、ドットの出やすさを制御し、再現性の好ましくないドットも安定して使用する。これにより、画質劣化を目立たなくさせ、良好な画質の出力画像結果を出力する。また、大ドットより小さいドットは、大ドットに隣接させて使用する。また、大ドットより小さいドットは、ハイライト部から中濃度部において大ドットに隣接させて使用する。
【発明の効果】
【００１９】
本発明によれば、多値誤差拡散において、注目画素近傍の量子データに応じて閾値群を制御することで、ドットの出やすさを制御することができるので、再現性の好ましくないドットも安定して使用することができ、画質劣化を目立たなくさせ、良好な画質の出力画像結果を得ることができる。
【００２０】
また、注目画素の画像データに応じて得られる履歴係数は、低濃度部では高い値、高濃度部では低い値として、ドットの集まりやすさを制御しているので、良好な画質の出力画像結果を得ることができる。
【００２１】
また、注目画素の画像データに応じて得られる可変閾値は、中低濃度部ではＮ−１個の閾値にわかれており、高濃度部になるにつれてＮ−１個の閾値は近い値となり、高濃度部ではＮ−１個の閾値は同一の値であるので、高濃度部では２値誤差拡散と同等の画質安定性を得ることができる。
【発明を実施するための最良の形態】
【００２２】
以下、発明の実施の形態について図面により詳細に説明する。
【００２３】
実施例１：
図１は、本発明の実施例１の画像処理装置の構成を示す。図２は、本発明が適用される画像記録装置の構成を示す。図３は、本発明の画像処理装置を用いて構成される画像入出力システムの構成を示す。図３において、画像入力装置３０１はスキャナやディジタルカメラ等の入力デバイスを示し、入力画像について例えば８ビット精度ならば２５６階調の画像データとして取り込まれる。この多値画像データが本発明の画像処理装置３０２に入力される。
【００２４】
画像処理装置３０２では、画像入力装置３０１から入力された２５６階調の画像データに対し、この後段の画像記録装置（画像出力装置）３０３で出力可能な階調数に変換する処理を行う。この階調数変換処理では多値誤差拡散や多値平均誤差最小法を用いてもよい。画像処理装置３０２で量子化した画像データが図２に示すような画像記録装置（画像形成装置、画像出力装置）３０３に送られる。また、画像記録装置３０３は、インクジェット方式やグラビア印刷などを用いて画像記録（画像形成）する場合等でも本発明にかかる処理方法が適用可能である。
【００２５】
図２において、画像が形成されるべき用紙は、本体トレイ２０１あるいは手差しトレイ２０２にセットされ、トレイ２０１あるいは２０２から給紙ローラ２０３によって用紙の搬送が開始される。給紙ローラ２０３による用紙の搬送に先立って、感光体（感光体ドラム）２０４が回転し、感光体２０４の表面は、クリーニングブレード２０５によってクリーニングされ、次に、帯電ローラ２０６で一様に帯電される。ここに、レーザー光学系ユニット２０７から、画像信号に従って変調されたレーザー光が露光され、現像ローラ２０８で現像されてトナーが付着し、これとタイミングを取って給紙ローラ２０３から用紙の給紙がなされる。給紙ローラ２０３から給紙された用紙は、感光体ドラム２０４と転写ローラ２０９とに挟まれて搬送され、これと同時に、用紙にはトナー像が転写される。転写され残った感光体２０４上のトナーは、再び、クリーニングブレード２０５で掻き落とされる。クリーニングブレード２０５の手前には、トナー濃度センサ２１０が設けられており、トナー濃度センサ２１０によって感光体２０４上に形成されたトナー像の濃度を測定することができる。また、トナー像が載った用紙は搬送経路にしたがって、定着ユニット２１１に搬送され、定着ユニット２１１においてトナー像は用紙上に定着される。印刷された用紙は、最後に排紙ローラ２１２を通って、記録面を下にしてページ順に排出される。
【００２６】
ところで、レーザー光学系ユニット２０７には、ビデオ制御部２７１、ＬＤ駆動回路２７２が接続され、ビデオ制御部２７１では、パソコンやワークステーションからの画像信号などを制御し、あるいは、内部に保持した評価チャート（テストパターン）信号などを発生させる。また、現像ローラ２０８には、バイアス回路２１４によって高圧バイアスがかけられ、バイアス回路２１４においてバイアスをコントロールすることにより、画像の全体的な濃度を制御する。
【００２７】
図４は、レーザー光学系ユニットの構成例を示し、図２のレーザー光学系ユニットと射出された光ビームが書き込まれる潜像担持体としての感光体ドラムとの位置関係の一例を示す。
【００２８】
図４において、１１、１２はレーザーダイオード（半導体レーザー）、１３、１４はコリメートレンズ、１５は光路合成用光学部材、１６は１／４波長板、１７、１８はビーム整形光学系である。これらの各光学要素１１ないし１８はレーザー光源部（ビーム光源）Ｓｏｕを構成している。レーザー光源部Ｓｏｕから射出された２本の光ビームＰ１は、コリメートレンズ１３、１４により平行光束とされて、走査光学系の一部を構成するポリゴンミラー１９に導かれ、ポリゴンミラー１９の各面２０ａ〜２０ｆにより主走査方向Ｑ１に反射偏向される。
【００２９】
反射偏向された光ビームは、ｆθ光学系の一部を構成する反射ミラー２１、２２に導かれ、反射ミラー２２により反射偏向された光ビームは、ｆθ光学系２３を通過して斜設反射ミラー２４に導かれ、この斜設反射ミラー２４により潜像担持体としての感光体ドラム２５の表面２６に導かれる。感光体ドラム２５の表面２６はその光ビームＰ１により主走査方向Ｑ１にリニアーに走査される。この表面２６が光ビームＰ１による被走査面であり、この被走査面に書き込みが行われる。
【００３０】
レーザー光学系ユニット２０７には、反射ミラー２４の長手方向両側（光ビームの主走査方向Ｑ１）に同期センサ２７、２８が設けられている。同期センサ２７は書き込み開始タイミングの決定に用いられ、同期センサ２８は書き込み終了タイミングの決定に用いられる。
【００３１】
今、図３に示す画像出力装置（画像記録装置）３０３が、図１３のようなＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）信号を用いて、パルスＤｕｔｙ（デューティ）を可変することで大ドット、小ドットを再現するものとし、大、小ドットの階調値をそれぞれ２５５、１２８とする。
【００３２】
また、図３のシステム構成では、処理に応じてそれぞれの装置を独立したものとして示したが、この限りではなく、画像処理装置３０２の機能が画像入力装置３０１中に存在する形態や、画像出力装置３０３中に存在する形態等もある。
【００３３】
図１は、図３に示す画像処理装置３０２の構成を示す。入力端子１０１は画像入力装置３０１より多値画像データが入力される。ここで、２次元の画像データを表わすために、Ｉｎ（ｘ，ｙ）として表わす（ｘは画像の主走査方向のアドレス、ｙは副走査方向のアドレスを示す）。
【００３４】
次に、この入力データＩｎ（ｘ，ｙ）が加算器１０２へ入力される。加算器１０２は入力データＩｎ（ｘ，ｙ）と誤差メモリ１０６から入力される誤差成分Ｅ（ｘ，ｙ）を加算し、補正データＣ（ｘ，ｙ）を計算し、補正データＣ（ｘ，ｙ）を比較判定部１０３と減算器１０５へ出力する。
【００３５】
比較判定部１０３は、加算器１０２から入力される補正データＣ（ｘ，ｙ）と閾値設定部１０８から入力される閾値群Ｔ（ｘ，ｙ）に基づいて下記（１）のように出力値Ｏｕｔ（ｘ，ｙ）を決定する。閾値群Ｔ（ｘ，ｙ）は、第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群であり、第１閾値Ｔ１（ｘ，ｙ）はドットオフと小ドットの出力判定をする閾値、第２閾値Ｔ２（ｘ，ｙ）は小ドットと大ドットの出力判定をする閾値とする。
【００３６】
Ｉｆ（Ｃ（ｘ，ｙ）＜Ｔ１）
ｔｈｅｎ  Ｏｕｔ（ｘ，ｙ）＝０
Ｅｌｓｅ  Ｉｆ（Ｃ（ｘ，ｙ）＜Ｔ２）
ｔｈｅｎ  Ｏｕｔ（ｘ，ｙ）＝１２８
Ｅｌｓｅ
ｔｈｅｎ  Ｏｕｔ（ｘ，ｙ）＝２５５        （１）
このＯｕｔ（ｘ，ｙ）が出力端子１０４から画像記録装置３０３に対して出力される。
【００３７】
また、出力値Ｏｕｔ（ｘ，ｙ）は量子メモリ１０９と減算器１０５に入力される。減算器１０５は補正データＣ（ｘ，ｙ）と出力値Ｏｕｔ（ｘ，ｙ）から次式（２）に示すように減算し、現画素で発生した誤差ｅ（ｘ，ｙ）が算出される。
【００３８】
ｅ（ｘ，ｙ）＝Ｃ（ｘ，ｙ）−Ｏｕｔ（ｘ，ｙ）  （２）
次に誤差拡散部１０７では、予め設定された拡散係数に基づいて、誤差ｅ（ｘ，ｙ）を配分して誤差メモリ１０６に蓄積されている誤差データＥ（ｘ，ｙ）に加算していく。ここで例えば拡散係数として図５に示すような係数を用いた場合、誤差拡散部１０７では下記（３）〜（６）のような処理を行う。
【００３９】
Ｅ（ｘ＋１，ｙ）＝Ｅ（ｘ＋１，ｙ）＋ｅ（ｘ，ｙ）×７／１６      （３）
Ｅ（ｘ−１，ｙ＋１）＝Ｅ（ｘ−１，ｙ＋１）＋ｅ（ｘ，ｙ）×５／１６    （４）
Ｅ（ｘ，ｙ＋１）＝Ｅ（ｘ，ｙ＋１）＋ｅ（ｘ，ｙ）×３／１６      （５）
Ｅ（ｘ＋１，ｙ＋１）＝Ｅ（ｘ＋１，ｙ＋１）＋ｅ（ｘ，ｙ）×１／１６    （６）
また、量子メモリ１０９は蓄積されている出力値に対し、注目画素周辺の複数の量子状態をまとめた量子群ｑ（ｘ，ｙ）を閾値設定部１０８へ出力する。ここで、量子メモリ１０９は、注目画素（ｘ，ｙ）に隣接する画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を量子群ｑ（ｘ，ｙ）として出力するものとする。
【００４０】
閾値設定部１０８は、量子メモリ１０９から入力される量子群ｑ（ｘ，ｙ）、すなわち画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を用いて下記（７）のように、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群Ｔ（ｘ，ｙ）を設定し、閾値群Ｔ（ｘ，ｙ）を比較判定部１０３へ出力する。
【００４１】
Ｉｆ（Ｏｕｔ（ｘ−１，ｙ）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝６４，
Ｔ２（ｘ，ｙ）＝１２７
Ｅｌｓｅ  Ｉｆ（Ｏｕｔ（ｘ，ｙ−１）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝６４，
Ｔ２（ｘ，ｙ）＝１２７
Ｅｌｓｅ
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝１２７，
Ｔ２（ｘ，ｙ）＝１２７                （７）
以上のように、図１の構成によって、画像処理部における多値誤差拡散処理が行われる。
【００４２】
次に、このような処理により、なぜ効果があるかを説明する。式（７）に示すように、第１閾値Ｔ１（ｘ，ｙ）は注目画素に隣接する画素の出力値Ｏｕｔ（ｘ−１，ｙ）とＯｕｔ（ｘ，ｙ−１）によりＴ１（ｘ，ｙ）＝６４か１２７と異なる。注目画素に隣接する２画素において両画素の出力値が大ドットでない場合は第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）は同一の値（１２７）となり、２値誤差拡散と同様にドットオフか大ドットしか出力しなくなり、孤立した小ドットが出力されることはない。また、注目画素に隣接する２画素において少なくとも一方の出力値が２５５、すなわち大ドットの場合にのみ、第１閾値Ｔ１（ｘ，ｙ）は第２閾値Ｔ２（ｘ，ｙ）と異なる値となる。このとき、隣接画素において大ドットが出力されているので負の誤差の伝播によりドットは出力されにくくなるが、十分な誤差が累積していれば小ドットを出力することができる。低濃度部では難しいが、中濃度部から高濃度部にかけては小ドットを大ドットに隣接させて出力させることができる。
【００４３】
閾値設定部１０８では、注目画素に隣接する画素の出力値Ｏｕｔ（ｘ−１，ｙ）とＯｕｔ（ｘ，ｙ−１）を使用したが、出力機の安定性に応じて設定を変えてもよい。具体的に主副走査方向に隣接させるだけでなく右斜め、左斜めに連続させても安定するような出力機では、注目画素の右上、左上の出力値Ｏｕｔ（ｘ＋１，ｙ−１）、Ｏｕｔ（ｘ−１，ｙ−１）を参照するように変更すればよい。
【００４４】
本実施例では３値誤差拡散で説明したが４値誤差拡散でも可能である。４値誤差拡散で使用する３個の閾値を、第１閾値Ｔ１（ｘ，ｙ）はドットオフと小ドットの出力判定をする閾値、第２閾値Ｔ２（ｘ，ｙ）は小ドットと中ドットの出力判定をする閾値、第３閾値Ｔ３（ｘ，ｙ）は中ドットと大ドットの出力判定をする閾値とする。式（７）を以下のように修正すれば、注目画素近傍における出力値でいずれの画素においても大ドットが出力されていない場合は２値誤差拡散となるように３個の閾値を全て同一とし、近傍画素に大ドットが出力されている場合は３個の閾値を異なる値とすればよい。
【００４５】
Ｉｆ（Ｏｕｔ（ｘ−１，ｙ）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝４３，
Ｔ２（ｘ，ｙ）＝１２８，
Ｔ３（ｘ，ｙ）＝２１３
Ｅｌｓｅ  Ｉｆ（Ｏｕｔ（ｘ，ｙ−１）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝４３，
Ｔ２（ｘ，ｙ）＝１２８，
Ｔ３（ｘ，ｙ）＝２１３
Ｅｌｓｅ
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝１２７，
Ｔ２（ｘ，ｙ）＝１２７，
Ｔ３（ｘ，ｙ）＝１２７
このように注目画素近傍の量子状態を参照して閾値を設定することで、小、中ドットといった大ドットより小さいドットは大ドットに隣接して出力されるようになり、中高濃度部においてテクスチャを改善し、かつ再現性のよい画像を得ることができる。
【００４６】
実施例２：
図６は、本発明の実施例２の画像処理装置の構成を示す。
入力端子６０１は画像入力装置３０１より多値画像データが入力される。ここで、２次元の画像データを表わすために、Ｉｎ（ｘ，ｙ）として表わす（ｘは画像の主走査方向のアドレス、ｙは副走査方向のアドレスを示す）。
【００４７】
次に、この入力データＩｎ（ｘ，ｙ）が加算器６０２と可変閾値設定部６０８へ入力される。加算器６０２は入力データＩｎ（ｘ，ｙ）と誤差メモリ６０６から入力される誤差成分Ｅ（ｘ，ｙ）を加算し、補正データＣ（ｘ，ｙ）を計算し、補正データＣ（ｘ，ｙ）を比較判定部６０３と減算器６０５へ出力する。
【００４８】
また、入力データＩｎ（ｘ，ｙ）は可変閾値設定部６０８に入力される。可変閾値設定部６０８では、図７に示すように入力データＩｎ（ｘ，ｙ）に応じて第１可変閾値Ｔｏ１（ｘ，ｙ）と  第２可変閾値Ｔｏ２（ｘ，ｙ）からなる可変閾値群Ｔｏ（ｘ，ｙ）を設定し、閾値設定部６０９へ出力する。
【００４９】
比較判定部６０３は、加算器６０２から入力される補正データＣ（ｘ，ｙ）と閾値設定部６０９から入力される閾値群Ｔ（ｘ，ｙ）に基づいて式（１）のように出力値Ｏｕｔ（ｘ，ｙ）を決定する。このＯｕｔ（ｘ，ｙ）が出力端子６０４から画像記録装置３０３に対して出力される。
【００５０】
また、出力値Ｏｕｔ（ｘ，ｙ）は量子メモリ６１０と減算器６０５に入力される。減算器６０５は補正データＣ（ｘ，ｙ）と出力値Ｏｕｔ（ｘ，ｙ）から式（２）に示すように減算し、現画素で発生した誤差ｅ（ｘ，ｙ）が算出される。
【００５１】
次に誤差拡散部６０７では式（３）〜式（６）に示すように誤差ｅ（ｘ，ｙ）を配分して誤差メモリ６０６に蓄積されている誤差データＥ（ｘ，ｙ）に加算していく。
【００５２】
また、量子メモリ６１０は蓄積されている出力値に対し、注目画素周辺の複数の量子状態をまとめた量子群ｑ（ｘ，ｙ）を閾値設定部６０９へ出力する。ここで、量子メモリ６１０は画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を量子群ｑ（ｘ，ｙ）として出力するものとする。
【００５３】
閾値設定部６０９は、量子メモリ６１０から入力される量子群ｑ（ｘ，ｙ）、すなわち画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）と可変閾値設定部６０８から入力される第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）からなる可変閾値群Ｔｏ（ｘ，ｙ）を用いて下記（８）のように、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群Ｔ（ｘ，ｙ）を設定し、閾値群Ｔ（ｘ，ｙ）を比較判定部６０３へ出力する。
【００５４】
Ｉｆ（Ｏｕｔ（ｘ−１，ｙ）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ１（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）
Ｅｌｓｅ  Ｉｆ（Ｏｕｔ（ｘ，ｙ−１）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ１（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）
Ｅｌｓｅ
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）      （８）
以上のように図６の構成によって、画像処理部における多値誤差拡散処理が行われる。
【００５５】
次に、このような処理により、なぜ効果があるかを説明する。図７に示すように、第１可変閾値Ｔｏ１（ｘ，ｙ）は入力データＩｎ（ｘ，ｙ）に応じて異なる値をとる。まず、階調値０のとき第１可変閾値Ｔｏ１（ｘ，ｙ）は６４という値であり、階調値１９１まで入力値が上がると共に第１可変閾値Ｔｏ１（ｘ，ｙ）も大きくなり、階調値１９２以降では第２可変閾値Ｔｏ２（ｘ，ｙ）と同じ１２７という値となる。また、第２可変閾値Ｔｏ２（ｘ，ｙ）は入力値によらず一定の値（１２７）となっている。
【００５６】
式（８）により、実施例２でも実施例１と同様に、注目画素に隣接する２画素において両画素の出力値が大ドットでない場合は、第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）は同一の値となり、２値誤差拡散と同様にドットオフか大ドットしか出力しなくなり、孤立した小ドットが出力されることはない。
【００５７】
また、注目画素に隣接する２画素において少なくとも一方の出力値が２５５、すなわち大ドットの場合にのみ、第１閾値Ｔ１（ｘ，ｙ）は第２閾値Ｔ２（ｘ，ｙ）と異なる値となる。階調値１では第１可変閾値Ｔｏ１（ｘ，ｙ）は約６４と低い値であるため、隣接画素において大ドットが出力されているので負の誤差の伝播によりドットは出力されにくくても小ドットを出力しやすくなり、大ドットに小ドットが隣接しやすくなる。また、階調値１９１近傍では第１可変閾値Ｔｏ１（ｘ，ｙ）は１２６程度となり、第２可変閾値Ｔｏ２（ｘ，ｙ）との差が僅かしかないため累積誤差によっては小ドットではなく大ドットを出力する場合がある。さらに階調値１９２以上では、第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）は同一の値となるために、２値誤差拡散と同様にドットオフか大ドットしか出力しなくなり、孤立した小ドットが出力されることはない。
【００５８】
実施例１では、低濃度部において２値誤差拡散のように大ドットが離散したドットパターンとなるが、実施例２では、低濃度部においても大ドットに小ドットが隣接しやすくなるため低濃度部の画像再現性が良好となる。また、高濃度部では２値誤差拡散と同様に大ドットとドットオフで階調表現を行い、小ドットを使用することがないので画像再現性が良好となる。対して、実施例１では、高濃度部において大ドットと小ドットの混成により階調表現を行うこととなり、随所に小ドットが大ドットに囲まれるドットパターンが発生する。理論的には大ドットとドットオフによる階調表現よりも、大ドットと小ドットによる階調表現のほうがテクスチャという画質観点からは好ましい。しかしながら、電子写真によっては小ドットを大ドットで囲んだパターンは大ドットで埋め尽くしたパターンと同じように現像されてしまう場合がある。このようなプリンタで出力する場合は、実施例２のような方式が好ましい。
【００５９】
また、高濃度部において２値誤差拡散的に階調表現をするならば、図７に示すような可変閾値を用いることなく、ある階調で第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）を異なる／同一にすると切り替えるだけでも可能である。しかしながらこの場合では、切り替える階調値よりも低い階調値においてはドットオフ、小ドット、大ドットを用いていたものが、それ以後の階調値ではドットオフ、大ドットとなるためドットゲインが異なりトーンジャンプが発生し、グラデーション画像を出力すると処理を切り替えた階調で擬似輪郭が発生する。
【００６０】
対して、図７に示すように、第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）を徐々に差をなくしていく場合では、同一となる階調の直前では、第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）の差がほとんどないため小ドットがまれにしか出力されなくなるためトーンジャンプ、すなわち擬似輪郭が発生しにくくなる。
【００６１】
実施例３：
図８は、本発明の実施例３の画像処理装置の構成を示す。
入力端子８０１は画像入力装置３０１より多値画像データが入力される。次に、この入力データＩｎ（ｘ，ｙ）が加算器８０２へ入力される。加算器８０２は入力データＩｎ（ｘ，ｙ）と誤差メモリ８０６から入力される誤差成分Ｅ（ｘ，ｙ）を加算し、補正データＣ（ｘ，ｙ）を計算し、補正データＣ（ｘ，ｙ）を比較判定部８０３と減算器８０５へ出力する。
【００６２】
比較判定部８０３は、加算器８０２から入力される補正データＣ（ｘ，ｙ）と閾値設定部８０８から入力される閾値群Ｔ（ｘ，ｙ）に基づいて式（１）のように出力値Ｏｕｔ（ｘ，ｙ）を決定し、Ｏｕｔ（ｘ，ｙ）を出力端子８０４から画像記録装置３０３に対して出力される。
【００６３】
また、出力値Ｏｕｔ（ｘ，ｙ）は、量子メモリ８０９と減算器８０５に入力される。減算器８０５は補正データＣ（ｘ，ｙ）と出力値Ｏｕｔ（ｘ，ｙ）から式（２）に示すように減算し、現画素で発生した誤差ｅ（ｘ，ｙ）が算出される。
【００６４】
次に誤差拡散部８０７では式（３）〜式（６）に示すように誤差ｅ（ｘ，ｙ）を配分して誤差メモリ８０６に蓄積されている誤差データＥ（ｘ，ｙ）に加算していく。
【００６５】
また、量子メモリ８０９は蓄積されている出力値を量子参照部８１１で必要となる注目画素周辺の複数の量子状態をまとめた量子群ｑ（ｘ，ｙ）を量子参照部８１１と閾値設定部８０８へ出力する。ここで、量子メモリ８０９は、図９に示す画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を量子群ｑ（ｘ，ｙ）として出力するものとする。
【００６６】
また、量子参照部８１１では、量子メモリ８０９より入力される量子群ｑ（ｘ，ｙ）、ここでは出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）に対し、予め設定された参照係数に基づいて注目画素周辺の量子状態を重み付け参照した重み付け平均値Ｑ（ｘ，ｙ）を出力する。ここで例えば参照係数として図９に示したような係数を用いた場合、量子参照部８１１では下記（９）のような処理を行う。この重み付け平均値Ｑ（ｘ，ｙ）を履歴値計算部８１０へ出力する。
【００６７】
Ｑ（ｘ，ｙ）＝Ｏｕｔ（ｘ−１，ｙ）×１／２＋Ｏｕｔ（ｘ，ｙ−１）×１／２    （９）
履歴値計算部８１０は、量子参照部８１１から出力される重み付け平均値Ｑ（ｘ，ｙ）と予め設定された履歴係数ｈより式（１０）に示すように履歴値Ｒ（ｘ，ｙ）を計算し、閾値設定部８０８へ出力する。今、履歴係数ｈを０．５としておく。
【００６８】
Ｒ（ｘ，ｙ）＝ｈ×Ｑ（ｘ，ｙ）    （１０）
閾値設定部８０８は、量子メモリ８０９から入力される量子群ｑ（ｘ，ｙ）、すなわち画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）と履歴値計算部８１０から入力される履歴値Ｒ（ｘ，ｙ）を用いて下記（１１）のように、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群Ｔ（ｘ，ｙ）を設定し、閾値群Ｔ（ｘ，ｙ）を比較判定部８０３へ出力する。
【００６９】
Ｉｆ（Ｏｕｔ（ｘ−１，ｙ）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝６４−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝１２７−Ｒ（ｘ，ｙ）
Ｅｌｓｅ  Ｉｆ（Ｏｕｔ（ｘ，ｙ−１）＝２５５  ）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝６４−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝１２７−Ｒ（ｘ，ｙ）
Ｅｌｓｅ
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝１２７−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝１２７−Ｒ（ｘ，ｙ）    （１１）
以上のように、図８の構成によって、画像処理部における多値誤差拡散処理が行われる。
【００７０】
次に、このような処理により、なぜ効果があるかを説明する。実施例３は実施例１と異なり、履歴値計算部８１０において注目画素周辺の量子状態を重み付け参照した重み付け平均値Ｑ（ｘ，ｙ）を用いて、履歴値Ｒ（ｘ，ｙ）に応じて閾値を修正している。式（１１）では、注目画素に隣接する２画素の出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）が共に２５５であった場合、式（９）より重み付け平均値Ｑ（ｘ，ｙ）は２５５を出力する。履歴係数ｈが０．５であれば、式（１０）により履歴値Ｒ（ｘ，ｙ）は１２７となる。この履歴値を式（１１）において実施例１で使用した第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）に対して減算しているので、注目画素に隣接した画素位置で大、小ドットが出力されていれば、実施例１よりも閾値が低く設定されることとなり、誤差が十分に累積していなくてもドットが隣接しやすくなる。特に、低濃度部におけるドットの隣接しやすさは実施例１よりも好ましい結果となり、大ドットといえども孤立させないで大、小ドットでクラスターを形成したほうがよいような出力機では実施例３の方式が好ましい結果となる。
【００７１】
以上では、履歴係数ｈを０．５として説明したが、履歴係数ｈを大きくすればするほど、第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）は十分低くなるので、隣接画素による負の誤差があったとしても小ドットを出力しやすくなる。出力機の安定性に応じて履歴係数ｈを設定すればよい。
【００７２】
また、図９に示す画素位置と係数で重み付け平均値Ｑ（ｘ，ｙ）を求めたが、出力機の安定性に応じて参照する画素位置を広げてもよい。具体的に主副走査方向に隣接させるだけでなく右斜め、左斜めに連続させても安定するような出力機では注目画素の右上、左上の出力値Ｏｕｔ（ｘ＋１，ｙ−１）、Ｏｕｔ（ｘ−１，ｙ−１）を参照するように変更すればよい。
【００７３】
実施例４：
図１０は、本発明の実施例４の画像処理装置の構成を示す。  入力端子１００１は画像入力装置３０１より多値画像データが入力される。次に、この入力データＩｎ（ｘ，ｙ）が加算器１００２へ入力される。加算器１００２は入力データＩｎ（ｘ，ｙ）と誤差メモリ１００６から入力される誤差成分Ｅ（ｘ，ｙ）を加算し補正データＣ（ｘ，ｙ）を計算し、補正データＣ（ｘ，ｙ）を比較判定部１００３と減算器１００５へ出力する。
【００７４】
また、入力データＩｎ（ｘ，ｙ）は履歴係数設定部１０１０に入力される。履歴係数設定部１０１０では、図１１に示すように入力データＩｎ（ｘ，ｙ）に応じた履歴係数ｈ（ｘ，ｙ）を設定し、履歴値計算部１０１１へ出力する。
【００７５】
比較判定部１００３は、加算器１００２から入力される補正データＣ（ｘ，ｙ）と閾値設定部１００８から入力される閾値群Ｔ（ｘ，ｙ）に基づいて式（１）のように出力値Ｏｕｔ（ｘ，ｙ）を決定し、Ｏｕｔ（ｘ，ｙ）を出力端子１００４から画像記録装置３０３に対して出力される。
【００７６】
また、出力値Ｏｕｔ（ｘ，ｙ）は量子メモリ１００９と減算器１００５に入力される。減算器１００５は補正データＣ（ｘ，ｙ）と出力値Ｏｕｔ（ｘ，ｙ）から式（２）に示すように減算し、現画素で発生した誤差ｅ（ｘ，ｙ）が算出される。
【００７７】
次に誤差拡散部１００７では式（３）〜式（６）に示すように誤差ｅ（ｘ，ｙ）を配分して誤差メモリ１００６に蓄積されている誤差データＥ（ｘ，ｙ）に加算していく。
【００７８】
また、量子メモリ１００９は蓄積されている出力値を量子参照部１０１２で必要となる注目画素周辺の複数の量子状態をまとめた量子群ｑ（ｘ，ｙ）を量子参照部１０１２と閾値設定部１００８へ出力する。ここで、量子メモリ１００９は図９に示す画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を量子群ｑ（ｘ，ｙ）として出力するものとする。
【００７９】
また、量子参照部１０１２では、量子メモリ１００９より入力される量子群ｑ（ｘ，ｙ）、ここでは出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）に対し、予め設定された参照係数に基づいて注目画素周辺の量子状態を重み付け参照した重み付け平均値Ｑ（ｘ，ｙ）を出力する。ここで例えば参照係数として図９に示したような係数を用いた場合、量子参照部１０１２では式（９）のような処理を行う。この重み付け平均値Ｑ（ｘ，ｙ）を履歴値計算部１０１１へ出力する。
【００８０】
履歴値計算部１０１１は、量子参照部１０１２から出力される重み付け平均値Ｑ（ｘ，ｙ）と履歴係数設定部１０１０から出力される履歴係数ｈ（ｘ，ｙ）より式（１２）に示すように履歴値Ｒ（ｘ，ｙ）を計算し、閾値設定部１００８へ出力する。
【００８１】
Ｒ（ｘ，ｙ）＝ｈ（ｘ，ｙ）×Ｑ（ｘ，ｙ）      （１２）
閾値設定部１００８は、量子メモリ１００９から入力される量子群ｑ（ｘ，ｙ）、すなわち画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）と履歴値計算部１０１１から入力される履歴値Ｒ（ｘ，ｙ）を用いて式（１１）のように、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群Ｔ（ｘ，ｙ）を設定し、閾値群Ｔ（ｘ，ｙ）を比較判定部１００３へ出力する。
【００８２】
以上のように図１０の構成によって、画像処理部における多値誤差拡散処理が行われる。
【００８３】
次に、このような処理により、なぜ効果があるかを説明する。実施例４は、入力データＩｎ（ｘ，ｙ）に応じた履歴係数ｈ（ｘ，ｙ）を用いる点が実施例３と異なる。実施例３のように履歴係数が固定であると中濃度部においてドットが集まりすぎる傾向がある。図９に示す画素位置の出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）がともに大ドットであれば履歴値は大きな値となり、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）は低い値となる。しかしながら、出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）がともに大ドットであれば注目画素位置に負の誤差が多く累積していることとなる。注目画素位置で大、小ドットを出力するためには周辺誤差と入力値からなる補正値が閾値より大きいことである。履歴値により閾値を下げても周辺から得る誤差が負であれば、入力値が大きくない限り大、小ドットを出力することはない。低濃度部においては入力値が小さいために過剰にドットが隣接することはないが、中高濃度部においては入力値が大きい値となるため周辺画素の誤差が負であったとしても補正値はそれなりの値となり、履歴値により所定の閾値より低くなった場合には大小ドットを出力することがある。このようにして履歴値が固定であると中高濃度部において隣接するドットの数が多くなってしまい、安定とはなるが、粒状性やテクスチャなどの画像設計として好ましくない場合がある。そのようなときには実施例４のように入力データＩｎ（ｘ，ｙ）に応じた履歴係数ｈ（ｘ，ｙ）を用いればよい。
【００８４】
実施例５：
図１２は、本発明の実施例５の画像処理装置の構成を示す。
入力端子１２０１は画像入力装置３０１より多値画像データが入力される。次に、この入力データＩｎ（ｘ，ｙ）が、加算器１２０２と履歴係数設定部１２１１と可変閾値設定部１２０８へ入力される。加算器１２０２は入力データＩｎ（ｘ，ｙ）と誤差メモリ１２０６から入力される誤差成分Ｅ（ｘ，ｙ）を加算し、補正データＣ（ｘ，ｙ）を計算し、補正データＣ（ｘ，ｙ）を比較判定部１２０３と減算器１２０５へ出力する。
【００８５】
また、入力データＩｎ（ｘ，ｙ）は履歴係数設定部１２１１に入力される。履歴係数設定部１２１１では、図１１に示すように入力データＩｎ（ｘ，ｙ）に応じた履歴係数ｈ（ｘ，ｙ）を設定し、履歴値計算部１２１２へ出力する。
【００８６】
また、入力データＩｎ（ｘ，ｙ）は可変閾値設定部１２０８に入力される。可変閾値設定部１２０８では、図７に示すように入力データＩｎ（ｘ，ｙ）に応じて第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）からなる可変閾値群Ｔｏ（ｘ，ｙ）を設定し、閾値設定部１２０９へ出力する。
【００８７】
比較判定部１２０３は、加算器１２０２から入力される補正データＣ（ｘ，ｙ）と閾値設定部１２０９から入力される閾値群Ｔ（ｘ，ｙ）に基づいて式（１）のように出力値Ｏｕｔ（ｘ，ｙ）を決定し、Ｏｕｔ（ｘ，ｙ）を出力端子１２０４から画像記録装置３０３に対して出力される。
【００８８】
また、出力値Ｏｕｔ（ｘ，ｙ）は量子メモリ１２１０と減算器１２０５に入力される。減算器１２０５は補正データＣ（ｘ，ｙ）と出力値Ｏｕｔ（ｘ，ｙ）から式（２）に示すように減算し、現画素で発生した誤差ｅ（ｘ，ｙ）が算出される。
【００８９】
次に誤差拡散部１２０７では式（３）〜式（６）に示すように誤差ｅ（ｘ，ｙ）を配分して誤差メモリ１２０６に蓄積されている誤差データＥ（ｘ，ｙ）に加算していく。
【００９０】
また、量子メモリ１２１０は蓄積されている出力値を量子参照部１２１３で必要となる注目画素周辺の複数の量子状態をまとめた量子群ｑ（ｘ，ｙ）を量子参照部１２１３と閾値設定部１２０９へ出力する。ここで、量子メモリ１２１０は図９に示す画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）を量子群ｑ（ｘ，ｙ）として出力するものとする。
【００９１】
また、量子参照部１２１３では、量子メモリ１２１０より入力される量子群ｑ（ｘ，ｙ）、ここでは出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）に対し、予め設定された参照係数に基づいて注目画素周辺の量子状態を重み付け参照した重み付け平均値Ｑ（ｘ，ｙ）を出力する。ここで例えば参照係数として図９に示したような係数を用いた場合、量子参照部１２１０では式（９）のような処理を行う。この重み付け平均値Ｑ（ｘ，ｙ）を履歴値計算部１２１２へ出力する。
【００９２】
履歴値計算部１２１２は、量子参照部１２１３から出力される重み付け平均値Ｑ（ｘ，ｙ）と履歴係数設定部１２１１から出力される履歴係数ｈ（ｘ，ｙ）より式（１２）に示すように履歴値Ｒ（ｘ，ｙ）を計算し、閾値設定部１２０９へ出力する。
【００９３】
閾値設定部１２０９は、量子メモリ１２１０から入力される量子群ｑ（ｘ，ｙ）、すなわち画素（ｘ−１，ｙ）と（ｘ，ｙ−１）の２画素における出力値Ｏｕｔ（ｘ−１，ｙ）、Ｏｕｔ（ｘ，ｙ−１）と履歴値計算部１２１２から入力される履歴値Ｒ（ｘ，ｙ）と可変閾値設定部１２０８から入力される、第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）からなる可変閾値群Ｔｏ（ｘ，ｙ）を用いて下記（１３）のように、注目画素位置の第１閾値Ｔ１（ｘ，ｙ）と第２閾値Ｔ２（ｘ，ｙ）からなる閾値群Ｔ（ｘ，ｙ）を設定し、閾値群Ｔ（ｘ，ｙ）を比較判定部１２０３へ出力する。
【００９４】
Ｉｆ（Ｏｕｔ（ｘ−１，ｙ）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ１（ｘ，ｙ）−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）−Ｒ（ｘ，ｙ）
Ｅｌｓｅ  Ｉｆ（Ｏｕｔ（ｘ，ｙ−１）＝２５５）
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ１（ｘ，ｙ）−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）−Ｒ（ｘ，ｙ）
Ｅｌｓｅ
ｔｈｅｎ  Ｔ１（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）−Ｒ（ｘ，ｙ），
Ｔ２（ｘ，ｙ）＝Ｔｏ２（ｘ，ｙ）−Ｒ（ｘ，ｙ）          （１３）
以上のように図１２の構成によって、画像処理部における多値誤差拡散処理が行われる。
【００９５】
次に、このような処理により、なぜ効果があるかを説明する。実施例５は実施例２と実施例４をあわせた構成となっている。実施例４では実施例１と同様に、高濃度部において大ドットと小ドットの混成により階調表現を行うこととなり、随所に小ドットが大ドットに囲まれるドットパターンが発生する。電子写真によっては小ドットを大ドットで囲んだパターンは大ドットで埋め尽くしたパターンと同じように現像されてしまう場合があるため、実施例２や実施例５のように入力データＩｎ（ｘ，ｙ）に応じた第１可変閾値Ｔｏ１（ｘ，ｙ）と第２可変閾値Ｔｏ２（ｘ，ｙ）を用いるほうがよい。
【００９６】
なお、本発明は誤差拡散処理に対するものであったが、同じように平均誤差最小法にも適用できる。また、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００９７】
また、本発明は、前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施例の機能を実現することになる。
【００９８】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。また、コンピュータが読出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施例１の画像処理装置の構成を示す。
【図２】本発明が適用される画像記録装置の構成を示す。
【図３】本発明の画像処理装置を用いて構成される画像入出力システムの構成を示す。
【図４】レーザー光学系ユニットの構成例を示す。
【図５】誤差拡散係数の例を示す。
【図６】本発明の実施例２の画像処理装置の構成を示す。
【図７】入力値に応じた第１、第２可変閾値を示す。
【図８】本発明の実施例３の画像処理装置の構成を示す。
【図９】参照係数の例を示す。
【図１０】本発明の実施例４の画像処理装置の構成を示す。
【図１１】入力値に応じた履歴係数を示す。
【図１２】本発明の実施例５の画像処理装置の構成を示す。
【図１３】ＰＷＭ信号を用いて再現される大ドット、小ドットを示す。
【符号の説明】
【０１００】
１０１  入力端子
１０２  加算器
１０３  比較判定部
１０４  出力端子
１０５  減算器
１０６  誤差メモリ
１０７  誤差拡散部
１０８  閾値設定部
１０９  量子メモリ
【図１】
0004937868.tif 000002
【図２】
0004937868.tif 000003
【図３】
0004937868.tif 000004
【図４】
0004937868.tif 000005
【図５】
0004937868.tif 000006
【図６】
0004937868.tif 000007
【図７】
0004937868.tif 000008
【図８】
0004937868.tif 000009
【図９】
0004937868.tif 000010
【図１０】
0004937868.tif 000011
【図１１】
0004937868.tif 000012
【図１２】
0004937868.tif 000013
【図１３】
0004937868.tif 000014