(57)【要約】【課題】擬似輪郭、開始遅れ、ワームノイズ、テクスチャーの解消【解決手段】誤差補正前の注目画素の入力画像情報値Ａ（Ｘｎ，Ｙｎ）を量子化したときの予測誤差ｅ（Ｘｎ，Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値、即ち負帰還変数Ｆｂ（Ｘｎ，Ｙｎ）に、マトリクス変数Ｍｘｙ（又は撹乱変数Ｒｎｄ）を加算した値を、量子化制御変数とする。そして入力画像情報値Ａ（Ｘｎ，Ｙｎ）に補正誤差Ｅ（Ｘｎ，Ｙｎ）を加算し、さらに量子化制御変数の加算または減算を行なってから、その値を量子化閾値で量子化する。【選択図】        図２
2004172798.tif 000002
【特許請求の範囲】
【請求項１】
入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する画像処理装置において、
誤差補正を行う前の注目画素における入力画像情報値を量子化したときの量子化誤差値と、量子化閾値間のレベル差との差の程度を示す負帰還変数に、さらに加算変数を加算して得られる量子化制御変数を決定する制御変数決定手段と、
注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手段と、
注目画素の入力画像情報値に、上記補正誤差決定手段で決定された補正誤差の加算、及び上記制御変数決定手段で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手段と、
注目画素の入力画像情報値に上記補正誤差決定手段で決定された補正誤差を加算した値と、上記量子化手段で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手段と、
を備えたことを特徴とする画像処理装置。
【請求項２】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段を備え、
該マトリクス手段で決定されたマトリクス変数が、上記加算変数とされることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
撹乱変数を生成する乱数生成手段を備え、
該乱数生成手段で生成された撹乱変数が、上記加算変数とされることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段と、
撹乱変数を生成する乱数生成手段を備え、
上記制御変数決定手段は、上記加算変数として、上記マトリクス手段で決定されたマトリクス変数と上記乱数生成手段で生成された撹乱変数とを用いることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する画像処理装置において、
少なくとも、誤差補正を行う前の注目画素における入力画像情報値を量子化したときの量子化誤差値と量子化閾値間のレベル差との差の程度を示す負帰還変数を用いた量子化制御変数を、入力画像情報値を参照して決定する制御変数決定手段と、
注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手段と、
注目画素の入力画像情報値に、上記補正誤差決定手段で決定された補正誤差の加算、及び上記制御変数決定手段で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手段と、
注目画素の入力画像情報値に上記補正誤差決定手段で決定された補正誤差を加算した値と、上記量子化手段で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手段と、
を備えたことを特徴とする画像処理装置。
【請求項６】
上記制御変数決定手段は、各入力画像情報値に対応して上記負帰還変数を記憶していることで、入力画像情報値を参照して、上記負帰還変数を用いた量子化制御変数を決定できる構成とされていることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
上記制御変数決定手段は、上記負帰還変数に、加算変数を加算して得られる値として量子化制御変数を決定することを特徴とする請求項５に記載の画像処理装置。
【請求項８】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段を備え、
該マトリクス手段で決定されたマトリクス変数が、上記加算変数とされることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
撹乱変数を生成する乱数生成手段を備え、
該乱数生成手段で生成された撹乱変数が、上記加算変数とされることを特徴とする請求項７に記載の画像処理装置。
【請求項１０】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段と、
撹乱変数を生成する乱数生成手段を備え、
上記制御変数決定手段は、上記加算変数として、上記マトリクス手段で決定されたマトリクス変数と上記乱数生成手段で生成された撹乱変数とを用いることを特徴とする請求項７に記載の画像処理装置。
【請求項１１】
上記制御変数決定手段は、上記負帰還変数に、加算変数を加算して得られる値としての量子化制御変数を、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとを参照して決定することを特徴とする請求項５に記載の画像処理装置。
【請求項１２】
上記制御変数決定手段は、各入力画像情報値に対応する上記各負帰還変数毎に、上記加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレス、副走査アドレスとに基づいて、量子化制御変数を決定できる構成とされていることを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
撹乱変数を生成する乱数生成手段を備え、
上記制御変数決定手段は、上記負帰還変数毎に、加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとに基づいて記憶値を得、さらに該記憶値に、上記乱数生成手段で生成された撹乱変数を、加算変数として加算することで、量子化制御変数を決定することを特徴とする請求項５に記載の画像処理装置。
【請求項１４】
入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する画像処理方法において、
誤差補正を行う前の注目画素における入力画像情報値を量子化したときの量子化誤差値と、量子化閾値間のレベル差との差の程度を示す負帰還変数に、さらに加算変数を加算して得られる量子化制御変数を決定する制御変数決定手順と、
注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手順と、
注目画素の入力画像情報値に、上記補正誤差決定手順で決定された補正誤差の加算、及び上記制御変数決定手順で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手順と、
注目画素の入力画像情報値に上記補正誤差決定手順で決定された補正誤差を加算した値と、上記量子化手順で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手順と、
を具備することを特徴とする画像処理方法。
【請求項１５】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順を備え、
該マトリクス手順で決定されたマトリクス変数を、上記加算変数とすることを特徴とする請求項１４に記載の画像処理方法。
【請求項１６】
撹乱変数を生成する乱数生成手順を備え、
該乱数生成手順で生成された撹乱変数を、上記加算変数とすることを特徴とする請求項１４に記載の画像処理方法。
【請求項１７】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順と、
撹乱変数を生成する乱数生成手順を備え、
上記制御変数決定手順では、上記加算変数として、上記マトリクス手順で決定されたマトリクス変数と上記乱数生成手順で生成された撹乱変数とを用いることを特徴とする請求項１４に記載の画像処理方法。
【請求項１８】
入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する画像処理方法において、
少なくとも、誤差補正を行う前の注目画素における入力画像情報値を量子化したときの量子化誤差値と量子化閾値間のレベル差との差の程度を示す負帰還変数を用いた量子化制御変数を、入力画像情報値を参照して決定する制御変数決定手順と、
注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手順と、
注目画素の入力画像情報値に、上記補正誤差決定手順で決定された補正誤差の加算、及び上記制御変数決定手順で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手順と、
注目画素の入力画像情報値に上記補正誤差決定手順で決定された補正誤差を加算した値と、上記量子化手順で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手順と、
を具備することを特徴とする画像処理方法。
【請求項１９】
上記制御変数決定手順では、各入力画像情報値に対応して上記負帰還変数を記憶していることで、入力画像情報値を参照して、上記負帰還変数を用いた量子化制御変数を決定することを特徴とする請求項１８に記載の画像処理方法。
【請求項２０】
上記制御変数決定手順は、上記負帰還変数に、加算変数を加算して得られる値として量子化制御変数を決定することを特徴とする請求項１８に記載の画像処理方法。
【請求項２１】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順を備え、
該マトリクス手順で決定されたマトリクス変数が、上記加算変数とされることを特徴とする請求項２０に記載の画像処理方法。
【請求項２２】
撹乱変数を生成する乱数生成手順を備え、
該乱数生成手順で生成された撹乱変数が、上記加算変数とされることを特徴とする請求項２０に記載の画像処理方法。
【請求項２３】
マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順と、
撹乱変数を生成する乱数生成手順を備え、
上記制御変数決定手順では、上記加算変数として、上記マトリクス手順で決定されたマトリクス変数と上記乱数生成手順で生成された撹乱変数とを用いることを特徴とする請求項２０に記載の画像処理装置。
【請求項２４】
上記制御変数決定手順では、上記負帰還変数に、加算変数を加算して得られる値としての量子化制御変数を、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとを参照して決定することを特徴とする請求項１８に記載の画像処理装置。
【請求項２５】
上記制御変数決定手順では、各入力画像情報値に対応する上記各負帰還変数毎に、上記加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレス、副走査アドレスとに基づいて、量子化制御変数を決定することを特徴とする請求項２４に記載の画像処理方法。
【請求項２６】
撹乱変数を生成する乱数生成手順を備え、
上記制御変数決定手順では、上記負帰還変数毎に、加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとに基づいて記憶値を得、さらに該記憶値に、上記乱数生成手順で生成された撹乱変数を加算変数として加算することで、量子化制御変数を決定することを特徴とする請求項１８に記載の画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、入力多値画像情報を、誤差拡散法を用いて階調数の少ない画像情報に変換する画像処理装置及び画像処理方法に関するものである。
【０００２】
【従来の技術】
従来、２値以外の入力画像情報を、誤差拡散法（誤差分散法ともいう）を用いて量子化する方法としては、以下の例が知られている。
図１７に、入力画像情報値と量子化後の出力情報値（量子化出力情報値）との関係を示している。
図１７において、入力画像情報値は、補正誤差が加算されるため、０〜３１９までの範囲の値であるとする。そして入力画像情報値は、０、６３、１２７、１９１、及び２５５の５値のうちのいずれかの値に量子化されるものとする。すなわち、量子化ステップサイズは６４である。
【０００３】
この例では、０〜６３までの入力画像情報値は０の値に量子化される。同様に入力画像情報値として６４〜１２７の値は６３の値に、１２８〜１９１の値は１２７の値に、１９２〜２５５の値は１９１の値に、２５６〜３１９の値は２５５の値に、それぞれ量子化される。
【０００４】
図１８に、入力画像情報値と量子化によって発生する誤差（量子化誤差）との関係を示す。
図１７及び図１８において、例えば入力画像情報値が１２７であるとき、量子化後の値は１２７となり、量子化の前後での誤差は０である。また、入力画像情報値が１２７より大きくなり、例えば１２８であるときは、量子化後の値は１２７となるため、量子化による誤差は１となる。さらにまた、入力画像情報値が１９０であるときは、量子化により１２７の値に量子化されることで、誤差は最大値である６３となる。このように、入力画像情報値の値によって、量子化により生じる誤差の値が異なることとなる。
このように、入力画像情報値を量子化した場合には、誤差が生じることとなるが、その誤差を周辺の画素に拡散させることで、量子化後の画像品位を高めるようにしている。
【０００５】
図１９により、誤差拡散法における一般的な技術を説明する。
図１９において、量子化の対象となっている注目画素に着目して考える。図中、注目画素を＊印で示す。
誤差拡散法では、この注目画素を量子化した場合に、誤差が発生したとき、その誤差を、注目画素の周囲の画素に拡散させる（誤差拡散法）。ここで、どの範囲までの画素に誤差を拡散させるかは種々の方法が挙げられるが、本例ではｋ１からｋ１２までの１２個の周囲の画素に対して、注目画素の誤差を拡散させている。
【０００６】
また、誤差を拡散させるときの重み付けの方法についても、種々挙げられるが、図１９に示すように、誤差拡散フィルタを用いて、例えばｋ１については７／４８、ｋ２については５／４８・・・等のように所定の比率で拡散させる。例えば、注目画素で発生した誤差が１０であるとしたとき、注目画素の図中、右側に隣接するｋ１の画素に対しては、１０×７／４８の誤差を拡散させる。
【０００７】
図２０は、以上のようにして誤差を拡散させるとともに、各画素について量子化を行う画像処理装置の一例のブロック図である。
この画像処理装置は、加算器２０１、乗算器２０２、減算器２０３、誤差バッファ（ＥＢ）２０４、量子化器（ＱＴ）２０５、誤差拡散係数マトリクス２０６を備える。
【０００８】
或る１つの注目画素について量子化を行う場合、その注目画素には、それ以前の画素に対して量子化を行ったときに発生した誤差（累積誤差）が加算される。この誤差は、誤差バッファ２０４に蓄積されている。
注目画素の入力画像情報値Ａ（Ｘｎ、Ｙｎ）が入力されると、その入力画像情報値Ａ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）が加算器２０１によって加算され、誤差補正済みの入力画像情報値Ｂ（Ｘｎ、Ｙｎ）が生成される。即ち、
Ｂ（Ｘｎ、Ｙｎ）＝Ａ（Ｘｎ、Ｙｎ）＋Ｅ（Ｘｎ、Ｙｎ）
となる。
そして、この入力画像情報値Ｂ（Ｘｎ、Ｙｎ）が量子化器２０５によって量子化され、量子化出力情報値Ｃ（Ｘｎ、Ｙｎ）が出力される。例えば、上述した例において、Ｂ＝１２８であるとき、Ｃ＝１２７となる。
【０００９】
また、累積誤差Ｅ（Ｘｎ、Ｙｎ）によって補正された入力画像情報値Ｂ（Ｘｎ、Ｙｎ）と、量子化出力情報値Ｃ（Ｘｎ、Ｙｎ）とが減算器２０３にそれぞれ入力され、両者の差が量子化の際の量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）として算出される。即ち、
Ｅｑ（Ｘｎ、Ｙｎ）＝Ｂ（Ｘｎ、Ｙｎ）−Ｃ（Ｘｎ、Ｙｎ）
となる。
この量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）と、誤差拡散係数マトリクス２０６による誤差拡散係数とが、乗算器２０２に入力される。これにより、量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）に誤差拡散係数が乗じられ、その値が累積誤差Ｅ（Ｘｎ、Ｙｎ）として誤差バッファ２０４に蓄積される。この累積誤差Ｅ（Ｘｎ、Ｙｎ）が周囲の画素に拡散される。
【００１０】
以上のような誤差拡散法を用いて、原画像をその階調数よりも少ない階調数の画像に変換するときに、変換後の画像における各画素の輝度値と、原画像における各画素の輝度値との誤差を、周囲の画素に拡散させることによって、全体としては、原画像との輝度誤差が少ない画像が構成される。
なお、このような誤差拡散法は、次の文献に開示されている。
【００１１】
【非特許文献１】”Ａｎ  Ａｄａｐｔｉｖｅ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  Ｓｐａｔｉａｌ  Ｇｒａｙ  Ｓｃａｌｅ”  ＳＩＤ  ＤＩＧＥＳＴ  （１９７５年  Ｆｌｏｉｄ＆Ｓｔｅｉｎｂｅｒｇ）
【００１２】
【発明が解決しようとする課題】
しかしながら、上記のような技術で処理された画像情報を印刷に供した場合、以下に述べるように「擬似輪郭」「開始遅れ」「ワームノイズ」「テクスチャー」と呼ばれる現象が発生し、画像品質を低下させる場合があるという問題があった。
【００１３】
＜擬似輪郭＞
擬似輪郭とは、グラデーションのように、画素の値がなだらかに変化するような画像を前述の誤差拡散法によって量子化した場合に、量子化の閾値付近で境界線が見えてしまう現象である。図２１（ａ）に擬似輪郭の例を示している。
【００１４】
これは次の理由により発生する。
複数の閾値を持つ５値誤差拡散において閾値をそれぞれ０、６３、１２７、１９１、２５５とし、閾値＝出力値である場合、そしてこの誤差拡散によってグラデーション領域にある各画素を順次量子化していく場合を考える。例えば入力画像情報値がスキャンの進行に従って漸増しながらある量子化閾値、例えば６３から１２７に近づいていく場合、この間の出力値は６３、及び、１２７の混在となり階調（又は濃度）は単位面積における２種類のドットの混入比率によって表現される。
スキャンの進行に伴って出力値が６３のドットから１段上の出力値が１２７のドットの発生が活発化する。このために誤差バッファ２０４内の累積誤差が放出されて漸減していき、終には最小値になる。引き続き入力画素値がその閾値を超えて１２８になるとともに誤差補正（階調補正）のために、更に一段上の閾値を越えて値が１９１のドットを発生しなければならなくなり、そのための嵩上げ分として値が６３以上の補正誤差が必要となる。
しかしこのとき誤差バッファ２０４には必要十分な量の誤差が残っておらず、スキャンが進行して誤差が蓄積されるまでの間、値が１９１のドットを発生できない状態に陥ることになる。これは即ち、誤差拡散の系に誤差バッファ２０４が介入することによって入力・出力間における応答に遅れが生じるためである。
これとは逆にスキャンの進行とともに入力画像情報値が徐々に小さくなってある閾値、例えば１２７を通過する場合、誤差バッファ２０４には必要以上の誤差が残っていて、不要な分を放出するまでの間は値が６３のドットを出力できない状態が生じる。
このような理由から入力画像情報値がスキャンに従って徐々に量子化閾値を通過する場合、通過の直後から階調の“補正残し”が生じてしまい、それが原画像には存在しない輪郭（線）となって現れてしまう。
【００１５】
＜開始遅れ＞
開始遅れとは、出力画像における誤差補正の開始遅れによるものであり、入力画像の階調の変化に誤差補正が追いつかなくなることによって、結果として出力画像の輪郭部に、その遅れ分がドット分布密度の差となって現れ、それがプリンタ等で印画された場合は濃度差となり、画像を歪ませてしまう現象である。図２２（ａ）に開始遅れの例を示す。図示するように、階調が急変する部分（濃淡の差が顕著な部分）の境界において、誤差補正の遅れがドット密度の差となって現れるものである。
【００１６】
これは、次の理由によって発生する。
例えば図２０を用いて説明すると、量子化によって発生する誤差Ｅｑ（Ｘｎ、Ｙｎ）は入力画像情報値Ａ（Ｘｎ、Ｙｎ）が量子化器ＱＴにおける閾値からかけ離れているほど大きくなる。しかし、かけ離れている分だけ誤差補正（階調補正）が必要になり新規ドットの発生が活発化するために、誤差バッファ２０４内に蓄えられた誤差も消費されるので、結果として誤差バッファ２０４内の平均的な残留誤差値は小さい状態が保たれる。逆に、入力画像情報値が閾値に近い場合は量子化による発生誤差は小さいが誤差補正（階調補正）の必要性も小さい。もし補正を行う場合は小さな入力画像情報値に対する上乗せ値として大きな累積誤差Ｅ（Ｘｎ、Ｙｎ）が必要になる。このため誤差バッファ２０４内の平均的な残留誤差値は大きい状態が保たれる。
【００１７】
例えば入力画像情報値Ａ（Ｘｎ、Ｙｎ）が一定の状態が続き、誤差バッファ２０４内の平均残留誤差も一定に保たれている状態において、ある時点で突如入力画像情報値が大きく変化したとする。この局面において誤差バッファ２０４内に蓄積されている平均残留誤差値は大きすぎるか、又は小さすぎるかの何れかになる。大きすぎる場合は不要な分を放出するまで、また、小さすぎる場合は必要な分を蓄積するまでの間、前方画素の量子化を進めなければならない。そしてその間は誤差補正（量子化誤差による階調の補正）が機能しなくなり、部分的な誤差補正の遅れが生ずることになる。
この遅れによって、量子化出力としての出力画像情報値は誤差の補正が直ちに反映されたものとはならず、誤差補正が反映された画素が発生するのは、誤差バッファ２０４内の平均残留誤差が小さい入力画像情報値に加算されても一段上の閾値を超えるほどに増加したとき、又は、大きな入力画像情報値に加算されても最寄の閾値以下になるまで減少したときである。
このような理由から図２２（ａ）のような開始遅れが発生する。
【００１８】
＜ワームノイズ＞
ワームノイズとは、ドットが鎖状につながってワームのように見える状態になるものであり、例えば画像全体に現れる。図２１（ａ）には、画像の一部を拡大して、鎖状にドットがつながったワームノイズを示している。
これは、誤差拡散処理において入力値を一定にした場合、発生誤差量や拡散フィルタの係数などに依存した固有のドット分布が生じるためである。
【００１９】
＜テクスチャー＞
テクスチャーは、これもドットがつながる現象であり、誤差拡散処理において入力値を一定にした場合、発生誤差量や拡散フィルタの係数などに依存した固有のドット分布が生じるためである。特には、誤差バッファ２０４内の誤差の累積・放出に周期性が生ずることで、図２３（ａ）の画像の右側ような周期性のドット分布（ドット配列）が見られるものとなる。なお、図２３（ａ）における左側は、画像の左端でスキャンが折り返すために周期性が乱されている様子が現れている。
【００２０】
以上の、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーは、いずれも印刷画像の品質を損ねるものとなる。
【００２１】
【課題を解決するための手段】
そこで本発明は、入力画像情報値を、誤差拡散法を用いて、入力画像情報値の階調数より少ない２以上の階調数の画像情報値に変換する画像処理装置、画像処理方法において、上記の擬似輪郭、開始遅れ、ワームノイズ、テクスチャーの発生を解消し、量子化後の画像品位を向上させることを目的とする。
【００２２】
このため本発明の画像処理装置は、誤差補正を行う前の注目画素における入力画像情報値を量子化したときに発生が見込まれる予測誤差値としての量子化誤差値と量子化閾値間のレベル差との差の程度を求める演算値、即ち負帰還変数に、さらに加算変数を加算して得られる量子化制御変数を決定する制御変数決定手段を設ける。また、注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手段と、注目画素の入力画像情報値に、上記補正誤差決定手段で決定された補正誤差の加算、及び上記制御変数決定手段で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手段と、注目画素の入力画像情報値に上記補正誤差決定手段で決定された補正誤差を加算した値と、上記量子化手段で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手段とを備えるようにする。
この場合、マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段を備え、該マトリクス手段で決定されたマトリクス変数が、上記加算変数とされる。
又は、乱数生成手段を備え、該乱数生成手段で生成された撹乱変数が、上記加算変数とされる。
又は、上記マトリクス手段と上記乱数生成手段を備え、上記制御変数決定手段は、上記加算変数として、上記マトリクス手段で決定されたマトリクス変数と上記乱数生成手段で生成された撹乱変数とを用いる。
【００２３】
また本発明の画像処理装置は、上記同様の補正誤差決定手段、量子化手段、誤差拡散手段を備えるとともに、少なくとも、誤差補正を行う前の注目画素における入力画像情報値を量子化したときに発生が見込まれる予測誤差値としての量子化誤差値と量子化閾値間のレベル差との差の程度を示す演算値、即ち負帰還変数を用いた量子化制御変数を、入力画像情報値を参照して決定する制御変数決定手段を備える。
この場合、上記制御変数決定手段は、各入力画像情報値に対応して上記演算によって求めた負帰還変数を記憶していることで、入力画像情報値を参照して、上記負帰還変数を用いた量子化制御変数を決定できる構成とする。
【００２４】
また、上記制御変数決定手段は、上記負帰還変数に、加算変数を加算して得られる値として量子化制御変数を決定する。
この場合、マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手段を備え、該マトリクス手段で決定されたマトリクス変数が、上記加算変数とされるようにする。
或いは、乱数生成手段を備え、該乱数生成手段で生成された撹乱変数が、上記加算変数とされるようにする。
或いは、上記マトリクス手段と、上記乱数生成手段を備え、上記制御変数決定手段は、上記加算変数として、上記マトリクス手段で決定されたマトリクス変数と上記乱数生成手段で生成された撹乱変数とを用いる。
【００２５】
また、上記制御変数決定手段は、上記負帰還変数に、加算変数を加算して得られる値としての量子化制御変数を、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとを参照して決定する。
この場合、上記制御変数決定手段は、各入力画像情報値に対応する上記各負帰還変数毎に、上記加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレス、副走査アドレスとに基づいて、量子化制御変数を決定できる構成とされる。
また、乱数生成手段を備える。そして上記制御変数決定手段は、上記各負帰還変数毎に、加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとに基づいて記憶値を得、さらに該記憶値に、上記乱数生成手段で生成された撹乱変数を加算変数として加算することで、量子化制御変数を決定する。
【００２６】
本発明の画像処理方法は、誤差補正を行う前の注目画素における入力画像情報値を量子化したときに発生が見込まれる予測誤差値としての量子化誤差値と、量子化閾値間のレベル差との差の程度を示す演算値、即ち負帰還変数に、さらに加算変数を加算して得られる量子化制御変数を決定する制御変数決定手順と、注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差のうち、注目画素に割り振られた補正誤差を決定する補正誤差決定手順と、注目画素の入力画像情報値に、上記補正誤差決定手順で決定された補正誤差の加算、及び上記制御変数決定手順で決定された量子化制御変数の加算または減算を行った値について、量子化閾値で量子化することにより、注目画素の入力画像情報値を、その階調数より少ない２以上の階調数の画像情報値に変換する量子化手順と、注目画素の入力画像情報値に上記補正誤差決定手順で決定された補正誤差を加算した値と、上記量子化手順で量子化された画像情報値との差である量子化誤差を、注目画素の後に量子化される周辺の画素に割り振る誤差拡散手順とを具備する。
この場合、マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順を備え、該マトリクス手順で決定されたマトリクス変数を、上記加算変数とする。
又は、乱数生成手順を備え、該乱数生成手順で生成された撹乱変数を、上記加算変数とする。
又は、マトリクス手順と乱数生成手順を備え、上記制御変数決定手順では、上記加算変数として、上記マトリクス手順で決定されたマトリクス変数と上記乱数生成手順で生成された撹乱変数とを用いる。
【００２７】
また本発明の画像処理方法は、制御変数決定手順と、上記同様の補正誤差決定手順、量子化手順、誤差拡散手順が行われるが、制御変数決定手順では、少なくとも、誤差補正を行う前の注目画素における入力画像情報値を量子化したときに発生が見込まれる予測誤差値としての量子化誤差値と、量子化閾値間のレベル差との差の程度を示す負帰還変数を用いた量子化制御変数を、入力画像情報値を参照して決定する。
この場合、上記制御変数決定手順では、各入力画像情報値に対応して上記負帰還変数を記憶していることで、入力画像情報値を参照して、上記負帰還変数を用いた量子化制御変数を決定する。
【００２８】
また上記制御変数決定手順は、上記負帰還変数に、加算変数を加算して得られる値として量子化制御変数を決定する。
この場合、マトリクス構成で設定された数値群のうちから、注目画素の主走査アドレス、副走査アドレスを利用してマトリクス変数を選択的に決定するマトリクス手順を備え、該マトリクス手順で決定されたマトリクス変数が、上記加算変数とされる。
又は、乱数生成手順を備え、該乱数生成手順で生成された撹乱変数が、上記加算変数とされる。
又は、マトリクス手順と乱数生成手順を備え、上記制御変数決定手順は、上記加算変数として、上記マトリクス手順で決定されたマトリクス変数と上記乱数生成手順で生成された撹乱変数とを用いる。
【００２９】
また上記制御変数決定手順では、上記負帰還変数に、加算変数を加算して得られる値としての量子化制御変数を、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとを参照して決定する。
この場合、上記制御変数決定手順では、各入力画像情報値に対応する上記各負帰還変数毎に、加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレス、副走査アドレスとに基づいて、量子化制御変数を決定する。
また乱数生成手順を備え、上記制御変数決定手順は、上記各負帰還変数毎に、加算変数としてマトリクス構成で設定された各マトリクス変数を加算した値を記憶していることで、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとに基づいて記憶値を得、さらに該記憶値に、上記乱数生成手順で生成された撹乱変数を加算変数として加算することで、量子化制御変数を決定する。
【００３０】
このような本発明においては、入力画像情報値を、誤差拡散法を用いて、入力画像情報値の階調数より少ない２以上の階調数の画像情報値に変換するものであり、基本的には、注目画素の入力画像情報値に、注目画素に割り振られた補正誤差、つまり誤差拡散処理で拡散された補正誤差を加算する。
ここでさらに、補正誤差が加算された注目画素の入力画像情報値に、量子化制御変数の加算または減算を行なう。そしてこの値を量子化閾値で量子化するものである。
そして、量子化制御変数としては、基本的には、誤差補正を行う前の注目画素における入力画像情報値を量子化したときに発生が見込まれる予測誤差値としての量子化誤差値と、量子化閾値間のレベル差との差の程度を示す演算によって求められる負帰還変数である。即ち、この負帰還変数、もしくは負帰還変数に加算変数を加算した値を、量子化制御変数とする。
上記負帰還変数を量子化制御変数として、補正誤差が加算された注目画素の入力画像情報値に加算または減算することは、入力画像情報値に対する量子化出力値との差を入力に負帰還して、ネガティブフィードバックとして作用させるものとなる。
また、負帰還変数に加算変数としてマトリクス変数や撹乱変数（乱数）を加算した値を量子化制御変数とすることは、発生誤差量や拡散フィルタの係数などに依存した固有のドット分布の解消に作用する。
【００３１】
【発明の実施の形態】
以下、まず本発明の画像処理装置を搭載する画像形成装置について説明し、その後、本発明の第１〜第９の実施の形態としての画像処理装置（画像処理方法）を説明していく。
なお、第１〜第９の各実施の形態の画像処理装置を説明するにあたっては、その構成をハードウエア的に示すものであるが（例えば第１の実施の形態についての図２）、これは装置の実際の構成として、必ずしも各図に示すとおりのハードウエア構成を必要とすることを意味するものではない。つまり、各実施の形態でハードウエア的に説明する動作に相当する処理が行われるものであれば足り、いわゆるソフトウエア的な演算処理でも実現できる。例えば図２の構成に相当する画像処理装置は、実際にはマイクロプロセッサ等を用いて実現できる。
【００３２】
＜画像形成装置＞
図１は、画像形成装置１００の概略を示すブロック図である。画像形成装置１００は、インクジェットプリンタ等のプリンタ装置であり、画像処理部１２０，印画ヘッド駆動部１３０，印画ヘッド１４０，印画紙搬送部１５０を備える。
【００３３】
画像処理部１２０においては、画像情報が入力されると、その画像情報値に対して色変換処理や階調変換処理を行う。階調変換処理とは、入力画像情報値を、誤差拡散法を用いて、入力画像情報値の階調数より少ない２以上の階調数の画像情報値に変換した量子化出力情報値を得る処理であり、即ち後述する各実施の形態の画像処理装置によって実行される処理である。
【００３４】
画像情報が画像処理部１２０に入力されると、画像処理部において色変換処理や階調変換処理が行われて量子化出力情報値が算出される。この量子化出力情報値が、印画ヘッド１４０を駆動制御するための印画ヘッド駆動部１３０に入力される。
印画ヘッド駆動部１３０は、量子化出力情報値に基づいて印画ヘッド１４０を駆動（インクを吐出）し、画像形成を行う。また、印画紙搬送部１５０は、画像形成に伴って、印画紙を所定方向に搬送する。
【００３５】
例えばインクジェットプリンタの場合、量子化出力情報値に基づいて印画ヘッド１４０のオン／オフを行い、インクの吐出を制御する。量子化出力情報値が多値の場合、例えば、量子化した階調数に応じて画像のドットを形成することが挙げられる。より具体的には、量子化値が５値による表現を行う場合に、１回のインクの吐出で「６３」の値の画素を表現し、２回のインクの吐出で「１２７」の値の画素を表現し、・・４回のインクの吐出で「２５５」の値の画素を表現するような制御である。
【００３６】
＜第１の実施の形態の画像処理装置：図２＞
第１の実施の形態の画像処理装置の構成を図２に示す。
第１の実施の形態の画像処理装置は、図示するように加算器１、乗算器２、減算器３、誤差バッファ（ＥＢ）４、量子化器５、誤差拡散係数マトリクス６、閾値設定部７、加算器８、セレクタ９，１０、減算器１１、Ｑｓ（量子化閾値間レベル差）発生部１２、演算ユニット１３、マトリクス部１４、加算器１５を備える。
【００３７】
セレクタ９，１０は、同期して切換制御される。
先ず、誤差拡散以前において、注目画素の入力画像情報として入力画素データＡ（Ｘｎ、Ｙｎ）が入力されるときには、セレクタ９，１０はそれぞれｔ１端子側に接続されている。
この場合において、入力画素データＡ（Ｘｎ、Ｙｎ）は、誤差補正が行われることなく、セレクタ９を通って量子化器５によってそのまま量子化される。
そして入力画素データＡ（Ｘｎ、Ｙｎ）と、量子化された値ｃ（Ｘｎ、Ｙｎ）とは、それぞれ減算器１１に入力され、この減算器１１によって、入力画素データＡ（Ｘｎ、Ｙｎ）と量子化データｃ（Ｘｎ、Ｙｎ）との差である予測誤差としての量子化誤差ｅ（Ｘｎ、Ｙｎ）が算出される。すなわち、
ｅ（Ｘｎ、Ｙｎ）＝Ａ（Ｘｎ、Ｙｎ）−ｃ（Ｘｎ、Ｙｎ）
となる。
なお、予測誤差ｅ（予測誤差としての量子化誤差）とは、補正のための累積誤差を入力に加算しない状態で量子化した際に発生する誤差のことである。
この予測誤差ｅ（Ｘｎ、Ｙｎ）は、演算ユニット１３に入力される。
なお、このときの予測誤差ｅ（Ｘｎ、Ｙｎ）は、
０＜ｅ（Ｘｎ、Ｙｎ）＜Ｑｓ（量子化閾値間レベル差）
となる。
【００３８】
また、Ｑｓ発生部１２から閾値間レベル差としてのＱｓ値が発生され、演算ユニット１３に入力される。
閾値間レベル差Ｑｓとは、量子化器５での閾値、つまり閾値設定部７で設定される閾値の間のレベル差の値である。例えば閾値が、６３，１２７，１９１，２５５であるとしたときのＱｓ値を図４に示している。量子化の際の閾値が変更されない限り、Ｑｓ発生部１２は、Ｑｓ値として固定値を出力すればよい。
このＱｓ値は、予測誤差ｅがとり得る最大値としての意味を持つ。
【００３９】
演算ユニット１３では、まずＱｓ値と予測誤差ｅ（Ｘｎ、Ｙｎ）の差（Ｑｓ−ｅ）として、予測誤差ｅの補数をとる。これは、入力にフィードバックする変数として値をネガティブにするものである。
次に、補数（Ｑｓ−ｅ）をＱｓ値で除して正規化することで、負帰還率変数ｆｂ（０≦ｆｂ≦１．０）を求める。
さらに、上記ｆｂに対して負帰還係数ｍ（但し０＜ｍ＜Ｑｓ）を乗算した演算値、即ち負帰還変数Ｆｂを得る。即ち演算ユニット１３では、
2004172798.tif 000003
の演算を行う。
この負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）は、予測誤差ｅと、量子化閾値間のレベル差Ｑｓとの差の程度を示す値に相当するものである。
なお、０＜ｍ＜１の範囲である負帰還係数ｍは、例えば０．７５程度の値である。ｍの値は、処理される画像の種類等に応じて決定される。
【００４０】
図３は、入力画素データＡ（Ｘｎ、Ｙｎ）と、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）との関係を示すグラフである。量子化閾値が上記の場合、入力画素データＡ（Ｘｎ、Ｙｎ）に対するＦｂ（Ｘｎ、Ｙｎ）の値は、０〜Ｑｓ×ｍの範囲で変動することとなる。
【００４１】
加算器１５は、この負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に加算変数を加算する。この場合、マトリクス変数Ｍｘｙが加算変数とされる。
即ち、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）は、加算器１５でマトリクス部１４からのマトリクス変数Ｍｘｙと加算されて量子化制御変数とされ、加算器８に供給される。
なお、マトリクス部１４及びマトリクス変数Ｍｘｙについては後述する。
【００４２】
上記演算処理の後に誤差拡散を行う際には、セレクタ９，１０はｔ２端子側に切り替えられる。
入力画素データＡ（Ｘｎ、Ｙｎ）は、加算器１に入力される。さらに加算器１には、誤差バッファ４に蓄積された誤差のうち、その入力画素データＡ（Ｘｎ、Ｙｎ）に対応する累積誤差Ｅ（Ｘｎ、Ｙｎ）が入力される。これにより、入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）が加算され、誤差補正が行われた入力画素データＢ（Ｘｎ、Ｙｎ）が算出される。すなわち、
Ｂ（Ｘｎ、Ｙｎ）＝Ａ（Ｘｎ、Ｙｎ）＋Ｅ（Ｘｎ、Ｙｎ）
となる。
【００４３】
ここで、誤差バッファ４に蓄積された誤差のうち、入力画素データＡ（Ｘｎ、Ｙｎ）に対応する累積誤差Ｅ（Ｘｎ、Ｙｎ）は、補正誤差（注目画素を量子化する以前に量子化された画素によって発生した量子化誤差のうち、注目画素に割り振られた誤差）に相当するものである。この誤差は、入力画素データＡ（Ｘｎ、Ｙｎ）が量子化される前に決定される。
【００４４】
算出された入力画素データＢ（Ｘｎ、Ｙｎ）は、加算器８に入力される。上述のように加算器８には負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙが加算されて得られた量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙも供給される。
この結果、加算器８により、Ｂ（Ｘｎ、Ｙｎ）＋Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙの値が算出され、この値がセレクタ９を介して量子化器５に入力される。
量子化器５では閾値設定部７によって量子化閾値が設定されており、入力される値を、その量子化閾値に従って量子化する。
量子化器５によって量子化された値は、量子化出力データＣ（Ｘｎ、Ｙｎ）として、セレクタ１０を介して出力される。
図１を参照していえば、この量子化出力データＣ（Ｘｎ、Ｙｎ）が印画ヘッド駆動部１３０に供給されることになる。
【００４５】
また、量子化出力データＣ（Ｘｎ、Ｙｎ）は、周辺画素への誤差拡散のために、減算器３に入力される。
減算器３には、量子化出力データＣ（Ｘｎ、Ｙｎ）の他、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）が入力される。これにより、両者の差が算出され、量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）が生成される。すなわち、
Ｅｑ（Ｘｎ、Ｙｎ）＝Ｂ（Ｘｎ、Ｙｎ）−Ｃ（Ｘｎ、Ｙｎ）
となる。
【００４６】
この量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）は、乗算器２に入力されて、注目画素の後に量子化される周辺画素に所定の重み付けを行うため、誤差拡散係数マトリクス６からの係数として、周辺画素ごとに所定の誤差拡散係数が乗じられる。これにより、累積誤差Ｅ（Ｘｎ、Ｙｎ）が算出され、誤差バッファ４に蓄積される。誤差バッファ４に蓄積された累積誤差Ｅ（Ｘｎ、Ｙｎ）は、きたる画素の量子化の際の補正値として利用される。
【００４７】
すなわち、各注目画素が量子化されるときには量子化誤差Ｅｑが発生し、その量子化誤差Ｅｑは、その注目画素の後に量子化される周辺の画素に割り振られ、誤差バッファ４に蓄積されていく。そして、ある１つの注目画素が量子化されるときには、その１つの注目画素以前に量子化された画素によって発生した量子化誤差Ｅｑのうち、その１つの注目画素に割り振られた全ての量子化誤差Ｅｑである累積誤差Ｅが誤差バッファ４に蓄積されており、１つの注目画素の量子化時に、その注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に加算され、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）が算出されることとなる。
【００４８】
ここまでの説明において、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得る構成は、図２０の従来例で説明したものと同様である。
これに対して本例では、さらに、予測誤差ｅと、量子化閾値間のレベル差Ｑｓとの差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数を算出し、加算器８で入力画素データＢ（Ｘｎ、Ｙｎ）に加算している。
さらにこの量子化制御変数は、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙを加算して得ているものである。
ここで、マトリクス変数Ｍｘｙについては後述することとし、まず、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数の加算、即ち予測誤差フィードバック系を備えたことによる階調変換動作について図４で説明しておく。
【００４９】
図４（ａ）は、このような予測誤差フィードバック系を適用しない場合、図４（ｂ）は予測誤差フィードバック系を適用した場合の動作説明図である。
まず図４（ａ）において、入力画素データＡ＝「１００」であったとする。
この場合、図示のように累積誤差Ｅが加算されても、閾値「１２７」を越えなかったとすると、「６３」に量子化される。つまり量子化出力データＣ＝「６３」である。
一方、図４（ｂ）では、入力画素データＡ＝「１００」に対して、図示のように累積誤差Ｅと、負帰還変数Ｆｂが加算されることで、その値が閾値「１２７」を越えたとすると、「１２７」に量子化される。つまり量子化出力データＣ＝「１２７」である。
もちろんこのような具体例は、累積誤差Ｅや負帰還変数Ｆｂの値によって変化するが、例えばこの例のように、量子化出力データは、予測誤差フィードバック系の適用により調整される。
【００５０】
図５は、入力画素データＢ（Ｘｎ、Ｙｎ）と、量子化出力データＣ（Ｘｎ、Ｙｎ）との関係を示すグラフである。図５に示すように、上記のようにして予測誤差フィードバック系を適用して量子化することで、量子化器５の閾値が最大Ｑｓ×ｍの範囲で変動することと等価になる。
したがって、例えば、閾値に近い値がわずかの差をもって漸増連続するグラデーションのような入力画像を量子化する場合において、バッファ内の累積誤差Ｅが小さい値であっても、１つ上の閾値に量子化される確率が高まることになる。よって、閾値通過直後や入力画像の値が急変するような場合においても新規ドットの発生が活性化されるので誤差補正（階調補正）の遅れを生じることなく原画像を滑らかに再現することができる。
【００５１】
本例においては、このように、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数を入力画素データＢ（Ｘｎ、Ｙｎ）に加算していること、即ち発生誤差予測に基づく変数による入力への負帰還を行うことで、いわゆる擬似輪郭と開始遅れを解消することができる。
【００５２】
“擬似輪郭”と“開始遅れ”は共に過渡現象であって、何れの場合も入力変化による誤差の蓄積・放出の遅れが原因であり、誤差バッファ４内に蓄積されている誤差量が変動するということは誤差拡散出力における階調が歪んでいるということである。従って、入力の如何なる変化に対しても誤差補正が追従するように系の応答特性を改善することがドット散布の遅れを解消する上での要となる。
一例として誤差の発生が小さいと見込まれる画素ほど、その値を最寄りの閾値から遠ざけて隣の閾値（例えば１段上の閾値）に近づく方向に嵩上げしてやることで閾値付近での新規ドットの発生を活性化させることが考えられ、そのためには予測される誤差の大きさに応じてアダプティヴに、且つ、相対的に階調変換の閾値を変化させることが効果的である。結果として誤差バッファ４内に蓄積されている誤差が常に少ない一定の量に保たれるようになることが期待される。
【００５３】
このため具体的には、誤差補正前の注目画素に対する階調変換誤差を予め予測しておき、その値を基にした変数を入力に加える。
即ち、その変数をネガティヴに入力にフィードバックすることによって閉ループを構成して過渡応答特性を改善する。言い換えると誤差拡散系において、出力に生ずる歪（誤差）を入力に戻してやることで歪をキャンセルする、ネガティヴ・フィードバック・システムとして作用させる。
全ての画素が取り得る誤差の最大値（Ｑｓ）から注目画素の発生誤差予測値（ｅ＝入力−閾値間レベル）を引いた値、即ち誤差予測値の補数を、誤差補正を済ませた階調変換前の多階調注目画素値に上乗せすることによって相対的に閾値のオフセットを変動させる。
【００５４】
このような処理により、入力に対しては見かけ上の誤差が最大値近くになるように閾値が変動し、その上で誤差補正された多階調注目画素の階調変換が行われる。
なお、この際、閾値を誤差予測値の補数に１００％追従して変動させてしまうと（負帰還率を１００％にすると）リンギングによる新たな擬似輪郭が問題となるので、負帰還変数Ｆｂの絶対値＝Ｑｓとならないよう、且つ出力画像において最良の状態が得られる負帰還係数ｍ（０  ＜  ｍ  ＜１．０）を予測誤差の補数（Ｑｓ−ｅ（Ｘｎ、Ｙｎ））に乗じた変数をフィードバックする。
【００５５】
この結果、閾値通過直後における誤差補正の過渡応答特性が改善されて階調の補正残し（出力画像の歪）が解消される。
また、閾値通過時のみならず入力画像の突然の階調変化に伴って、発生誤差量が著しく変化するような局面においても、素早く補正を開始することが可能になり、擬似輪郭の抑制に対して顕著な効果が見られるばかりでなく“開始遅れ”に対しても改善効果が得られる。図２１（ｂ）に擬似輪郭が解消された画像を示し、また図２２（ｂ）に開始遅れが解消された画像を示している。
【００５６】
以上のように本例では、まず負帰還変数Ｆｂを用いた量子化制御変数を、補正済の入力画素データＢに加算することで、擬似輪郭及び開始遅れを改善できるものであるが、さらに、ワームノイズ対策として、マトリクス変数Ｍｘｙを用いている。
つまり、量子化制御変数は、負帰還変数Ｆｂに対する加算変数としてマトリクス変数Ｍｘｙを加算したものとしている。
【００５７】
図２に示すマトリクス部１４は、（Ｘ０、Ｙ０）〜（Ｘｎ、Ｙｎ）のｎ×ｎ個の数値を備えた数値群とされる。今、一例として、４×４の数値群であるとして説明する。
この場合、例えば図６（ｂ）に一具体例を示すように、４×４のマトリクスとして、「０」〜「１５」のマトリクス変数が設定される。
【００５８】
また、入力画像情報としては、図６（ａ）のように１０２４×５１２（ＰＩＸ：ピクセル）の画像を形成するデータであるとする。
この場合、画像データの主走査には、１０２４ＰＩＸのために１０ビットのカラムアドレス（ｃｏｌｕｍｎ  ａｄｄｒｅｓｓ）が用いられる。一方、画像データの副走査には、５１２ＰＩＸのために９ビットのロウアドレス（ｒｏｗ  ａｄｄｒｅｓｓ）が用いられる。
【００５９】
ここで、４×４の数値群を備えたマトリクス部１４は、図６（ａ）のように１０２４×５１２（ＰＩＸ）における４×４（ＰＩＸ）のブロックＢＫ１１、ＢＫ１２・・・に対応するものとされる。
即ち、例えばブロックＢＫ１１についてみると、ブロックＢＫ１１には画素ＰＩＸ（１，１）、ＰＩＸ（２，１）、ＰＩＸ（３，１）、ＰＩＸ（４，１）、ＰＩＸ（１，２）、ＰＩＸ（２，２）、ＰＩＸ（３，２）、ＰＩＸ（４，２）、ＰＩＸ（１，３）、ＰＩＸ（２，３）、ＰＩＸ（３，３）、ＰＩＸ（４，３）、ＰＩＸ（１，４）、ＰＩＸ（２，４）、ＰＩＸ（３，４）、ＰＩＸ（４，４）が含まれるが、これらの各画素に対応して、図６（ｃ）のように数値が割当てられる。つまり、各画素に対応して、マトリクス部１４から割り当てられた数値がマトリクス変数Ｍｘｙとして出力される。
例えば画素ＰＩＸ（１，１）の入力画素データＡが入力される場合は、マトリクス部１４からマトリクス変数Ｍｘｙ＝「０」が出力される。
また画素ＰＩＸ（２，１）の入力画素データＡが入力される場合は、マトリクス部１４からマトリクス変数Ｍｘｙ＝「４」が出力される。
【００６０】
このようなマトリクス変数Ｍｘｙを発生させるためには、マトリクス部１４が図６（ｂ）のようにマトリクス構成で数値を記憶しておき、それを画像情報の主走査、副走査に用いるカラムアドレス・ロウアドレスを用いて読み出すようにすればよい。
具体的には、図６（ａ）の画像データの走査には１０ビットのカラムアドレスと９ビットのロウアドレスが用いられるが、これらのアドレスの下位２ビットは、４×４のマトリクス、つまりブロックＢＫ内の画素を示すものとなる。
従って、同様に４×４のマトリクス構成の数値群とされたマトリクス部１４に対しては、カラムアドレスの下位２ビット、及びロウアドレスの下位２ビットが供給されるようにすれば、上記のように入力画素データＡに対応して、或る数値とされたマトリクス変数Ｍｘｙを出力することができるものとなる。
なお、もちろんマトリクス部１４は４×４のマトリクス構成でなくても良い。
【００６１】
そして、このように発生されるマトリクス変数Ｍｘｙは、加算器１５で負帰還変数Ｆｂに加算されて、量子化制御変数として加算器８に供給され、入力画素データＢに加算される。
即ち、上述の予測誤差フィードバックのための負帰還変数Ｆｂに、ディザ・マトリクス係数を加えて閾値を変調するものであるといえる。
【００６２】
このように、量子化閾値をディザ・マトリクス係数によって変調することで、画像全域に見られる鎖状に繋がるドットを分断することができる。
その結果、ワームノイズは縦横に散らされて目立たなくなるともに閾値付近の再現性において自然さを増すことができる。図２１（ｂ）にワームノイズが解消された画像を示している。
【００６３】
以上のように第１の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得るようにするとともに、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数を算出し、加算器８で入力画素データＢ（Ｘｎ、Ｙｎ）に加算する。さらにこの量子化制御変数は、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙを加算して得ているものである。
【００６４】
また、このような図２に示した第１の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に次の手順Ｓ１１〜Ｓ１４を有する画像処理方法が行われることとなる。
［Ｓ１１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に、さらにマトリクス変数Ｍｘｙを加算して得られる量子化制御変数を決定する。
この場合、マトリクス部１４でマトリクス構成で設定された数値群のうちから、注目画素のカラムアドレス、ロウアドレスを利用して数値を選択的に決定し、決定された数値を、上記マトリクス変数Ｍｘｙとする。
［Ｓ１２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ１３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ１４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００６５】
このような第１の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズが解消された量子化出力データＣを得ることができる。
【００６６】
＜第２の実施の形態＞
次に、図７により第２の実施の形態について説明する。なお、上記図２と同一部分については同一符号を付し、説明を省略する。
【００６７】
この第２の実施の形態では、第１の実施の形態（図２）のマトリクス部１４に代えて乱数生成部１６を設けたことが異なるものとなる。
乱数生成部１６では、乱数値としての撹乱変数Ｒｎｄを発生させ、それを加算変数として加算器１５に出力する。
加算器１５では、演算ユニット１３で算出された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に対する加算変数として撹乱変数Ｒｎｄを加算する。即ちこの場合、加算器８に供給される量子化制御変数は、Ｆｂ（Ｘｎ、Ｙｎ）＋Ｒｎｄとなる。
【００６８】
従ってこの第２の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得るようにするとともに、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数を算出し、加算器８で入力画素データＢ（Ｘｎ、Ｙｎ）に加算する。さらにこの量子化制御変数は、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に乱数による撹乱変数Ｒｎｄを加算して得ているものである。
【００６９】
また、この図７に示した第２の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に、次の手順Ｓ２１〜Ｓ２４を有する画像処理方法が行われる。
［Ｓ２１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に、さらに撹乱変数Ｒｎｄを加算して得られる量子化制御変数を決定する。
この場合、乱数生成部１６で発生された乱数を撹乱変数Ｒｎｄとする。
［Ｓ２２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ２３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｒｎｄの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ２４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００７０】
このような第２の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、テクスチャーが解消された量子化出力データＣを得ることができる。
擬似輪郭及び開始遅れについては、第１の実施の形態と同様の理由により解消される。
【００７１】
テクスチャーについては、乱数による誤差累積周期の撹乱によって解消されるものとなる。
例えば閾値に近い、ある一定の入力値をもつ画像に誤差拡散を施すと図２３（ａ）で示すような周期性のドット分布が現れることは既に述べた。
これは入力が一定という条件によって誤差バッファ４内の誤差の累積・放出に周期性が生じるためであり、図２３（ａ）の左半分は画像の左端でスキャンが折り返すためにその周期が乱されている様子が伺える。
この現象を改善するには同様にして画像全域に渡ってその周期を撹乱する必要がある。
そのための変数としてはマトリクス変数などの値が周期性をもつものでは効果を得ることが難しく、ここでは実現の容易性を考慮しながら一般的に知られる方法として、ランダム変数を負帰還変数（閾値の制御変数）に更に加えることとしている。
この結果、画像全域に渡って周期性が撹乱され、図２３（ｂ）のようにテクスチャーが解消された画像を得ることができる。
【００７２】
なお、乱数の量を多くすると、同時にワームノイズも解消できるが、乱数の量が多すぎる場合、出力画像にザラツキ感がでてくる。画像のザラツキをなくすことを優先させる場合は、乱数を必要最小限に丸めることが好適である。
【００７３】
＜第３の実施の形態＞
次に、図８により第３の実施の形態について説明する。なお、上記図２、図７と同一部分については同一符号を付し、説明を省略する。
【００７４】
この第３の実施の形態では、第１の実施の形態（図２）で述べたマトリクス部１４と、第２の実施の形態（図７）で述べた乱数生成部１６の両方を備える。
マトリクス部１４は、カラムアドレス、ロウアドレスに従って読み出される数値をマトリクス変数Ｍｘｙとして加算器１７に出力する。
乱数生成部１６では、乱数値を発生させ、それを撹乱変数Ｒｎｄとして加算器１７に出力する。
加算器１７では、演算ユニット１３で算出された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に対する加算変数として、撹乱変数Ｒｎｄ、及びマトリクス変数Ｍｘｙを加算する。即ちこの場合、加算器８に供給される量子化制御変数は、Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙ＋Ｒｎｄとなる。
【００７５】
従ってこの第３の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得るようにするとともに、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を用いた量子化制御変数を算出し、加算器８で入力画素データＢ（Ｘｎ、Ｙｎ）に加算する。さらにこの量子化制御変数は、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に乱数による撹乱変数Ｒｎｄ及びマトリクス変数Ｍｘｙを加算して得ているものである。
【００７６】
また、この図８に示した第３の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に、次の手順Ｓ３１〜Ｓ３４を有する画像処理方法が行われる。
［Ｓ３１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に、さらに加算変数を加算して得られる量子化制御変数を決定する。
この場合、マトリクス部１４から出力されるマトリクス変数Ｍｘｙと、乱数生成部１６で発生された乱数による撹乱変数Ｒｎｄの両方を、加算変数として負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に加算する。
［Ｓ３２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ３３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｒｎｄ＋Ｍｘｙの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ３４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００７７】
このような第３の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーが解消された量子化出力データＣを得ることができる。
擬似輪郭、開始遅れ、ワームノイズについては、第１の実施の形態と同様の理由により解消される。
テクスチャーについては、第２の実施の形態と同様の理由により解消される。
【００７８】
＜第４の実施の形態＞
図９に第４の実施の形態の構成を示す。
この場合、画像処理装置には、図示するように加算器１、乗算器２、減算器３、誤差バッファ４、量子化器５、誤差拡散係数マトリクス６、閾値設定部７、加算器８、ＬＵＴ（ＬＯＯＫ  ＵＰ  ＴＡＢＬＥ）２０を備える。
【００７９】
この第４の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得ること、及び減算器３、乗算器２，誤差拡散係数マトリクス６、誤差バッファ４で誤差拡散を行うことは、上記各実施の形態と同様である。
【００８０】
この第４の実施の形態の場合、量子化制御変数を、入力画素データＡ（Ｘｎ、Ｙｎ）に基づいてＬＵＴ２０から得るようにし、加算器８において入力画素データＢ（Ｘｎ、Ｙｎ）に加算するようにしている。
即ちＬＵＴ２０は、上記した各実施の形態における、減算器１１，Ｑｓ発生部１２、演算ユニット１３に相当する機能を実現する。
【００８１】
この場合の量子化制御変数は、予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）としている。上述のようにＦｂ（Ｘｎ、Ｙｎ）＝ｍ（（Ｑｓ−ｅ（Ｘｎ、Ｙｎ））／Ｑｓ）である。
ここで、量子化閾値が固定されていればＱｓ値は固定である。
また入力画素データＡ（Ｘｎ、Ｙｎ）に対する量子化出力データｃ（Ｘｎ、Ｙｎ）も予めわかる。従って、入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じた予測誤差ｅ（Ｘｎ、Ｙｎ）の値は、予め算出することができる。
そして、Ｑｓ値も固定であれば、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）は、入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じて予め算出しておくことができる。
【００８２】
そこで、ＲＯＭ又はＲＡＭによりＬＵＴ２０を構成し、このＬＵＴ２０にはテーブルデータとして、図１０に示すように、入力画素データＡ（Ｘｎ、Ｙｎ）の値（例えば「０」〜「３１９」）に対応させて、それぞれ算出された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）、例えばＦｂ（０）〜Ｆｂ（３１９）を記憶しておく。
すると、ＬＵＴ２０は、入力画素データＡ（Ｘｎ、Ｙｎ）が入力されると、その値を参照してテーブルデータを検索し、対応する負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を読み出して出力することができる。
このようにＬＵＴ２０から読み出された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）が、量子化制御変数として加算器８に供給され、入力画素データＢ（Ｘｎ、Ｙｎ）に加算される。
【００８３】
つまりこの第４の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得るようにするとともに、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を量子化制御変数として、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して決定する。
特に、ＬＵＴ２０にテーブルデータとして入力画素データＡ（Ｘｎ、Ｙｎ）の値に対応した負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を記憶しておくことで、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して量子化制御変数を決定できるようにしている。
【００８４】
また図９に示した第４の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に次の手順Ｓ４１〜Ｓ４４を有する画像処理方法が行われる。
［Ｓ４１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）をそのまま量子化制御変数として、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して決定する。
この場合、ＬＵＴ２０に入力画素データＡ（Ｘｎ、Ｙｎ）の値に対応した負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を記憶しておくことで、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して量子化制御変数を決定できるようにしている。
［Ｓ４２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ４３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）の加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ４４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００８５】
このような第４の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れが解消された量子化出力データＣを得ることができる。
擬似輪郭、開始遅れが解消できるのは、第１の実施の形態で説明した予測誤差フィードバック系の作用を、ＬＵＴ２０により実現することによる。
また、この第４の実施の形態の場合、例えば図２等に示した減算器１１、Ｑｓ発生部１２、演算ユニット１３、セレクタ９，１０の構成が不要となることで、構成の大幅な簡略化が実現できる。また負帰還変数Ｆｂは、単にＬＵＴ２０から読み出せばよく、負帰還変数Ｆｂを得るための演算処理も不要であるため、演算処理負担の軽減、処理の高速化を実現できる。
【００８６】
＜第５の実施の形態＞
第５の実施の形態の構成を図１１に示す。
これは、上記図９の構成に、図２で説明したマトリクス部１４及び加算器１５を加えたものである。
そして入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じてＬＵＴ２０から出力された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）と、マトリクス部１４においてカラムアドレス、ロウアドレスに応じて読み出された数値としてのマトリクス変数Ｍｘｙが加算器１５で加算されて、加算器８に供給される。
【００８７】
つまりこの第５の実施の形態では、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照してＬＵＴ２０により決定し、さらにその値に加算変数としてマトリクス変数Ｍｘｙを加算して量子化制御変数とするものである。
そして加算器８で、誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）に量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙが加算され、量子化器５に入力される。量子化器５からは量子化出力データＣ（Ｘｎ、Ｙｎ）が出力される。
【００８８】
このような図１１に示した第５の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に、次の手順Ｓ５１〜Ｓ５４を有する画像処理方法が行われる。
［Ｓ５１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して決定した後、さらにマトリクス変数Ｍｘｙを加算して量子化制御変数を決定する。
この場合、ＬＵＴ２０に入力画素データＡ（Ｘｎ、Ｙｎ）の値に対応した負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を記憶しておくことで、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して量子化制御変数を決定できるようにしている。
また加算変数であるマトリクス変数Ｍｘｙは、マトリクス部１４でマトリクス構成で設定された数値群のうちから、注目画素のカラムアドレス、ロウアドレスを利用して数値を選択的に決定する。
［Ｓ５２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ５３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ５４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００８９】
このような第５の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズが解消された量子化出力データＣを得ることができる。
また、上記第４の実施の形態と同様、構成の簡略化、演算負担の軽減、演算処理の高速化を実現できる。
【００９０】
＜第６の実施の形態＞
第６の実施の形態の構成を図１２に示す。
これは、上記図９の構成に、図７で説明した乱数生成部１６及び加算器１５を加えたものである。
そして入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じてＬＵＴ２０から出力された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）と、乱数生成部１６で発生される乱数値による撹乱変数Ｒｎｄが、加算器１５で加算されて、加算器８に供給される。
【００９１】
つまりこの第６の実施の形態では、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照してＬＵＴ２０により決定し、さらにその値に加算変数としての撹乱変数Ｒｎｄを加算して量子化制御変数とするものである。
そして加算器８で、誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）に量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｒｎｄが加算され、量子化器５に入力される。量子化器５からは量子化出力データＣ（Ｘｎ、Ｙｎ）が出力される。
【００９２】
このような図１２に示した第６の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に、次の手順Ｓ６１〜Ｓ６４を有する画像処理方法が行われる。
［Ｓ６１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して決定した後、さらに撹乱変数Ｒｎｄを加算して量子化制御変数を決定する。
この場合、ＬＵＴ２０に入力画素データＡ（Ｘｎ、Ｙｎ）の値に対応した負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を記憶しておくことで、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して量子化制御変数を決定できるようにしている。
また撹乱変数Ｒｎｄは、乱数生成部１６で発生させる。
［Ｓ６２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ６３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｒｎｄの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ６４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００９３】
このような第６の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、テクスチャーが解消された量子化出力データＣを得ることができる。
また、上記第４の実施の形態と同様、構成の簡略化、演算負担の軽減、演算処理の高速化を実現できる。
【００９４】
＜第７の実施の形態＞
第７の実施の形態の構成を図１３に示す。
これは、上記図９の構成に、図２で説明したマトリクス部１４及び図７で説明した乱数生成部１６及び加算器１７を加えたものである。
そして入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じてＬＵＴ２０から出力された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）と、マトリクス部１４においてカラムアドレスとロウアドレスによって選択された数値によるマトリクス変数Ｍｘｙと、乱数生成部１６で発生される乱数値による撹乱変数Ｒｎｄが、加算器１７で加算されて、加算器８に供給される。
【００９５】
つまりこの第７の実施の形態では、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照してＬＵＴ２０により決定し、さらにその値に対する加算変数として、マトリクス変数Ｍｘｙ、及び撹乱変数Ｒｎｄを加算して量子化制御変数を得るものである。
そして加算器８で、誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）に量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙ＋Ｒｎｄが加算され、量子化器５に入力される。量子化器５からは量子化出力データＣ（Ｘｎ、Ｙｎ）が出力される。
【００９６】
このような図１３に示した第７の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に、次の手順Ｓ７１〜Ｓ７４を有する画像処理方法が行われる。
［Ｓ７１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して決定した後、さらに加算変数を加算して量子化制御変数を決定する。
この場合、ＬＵＴ２０に入力画素データＡ（Ｘｎ、Ｙｎ）の値に対応した負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）を記憶しておくことで、入力画素データＡ（Ｘｎ、Ｙｎ）の値を参照して量子化制御変数を決定できるようにしている。
また、マトリクス部１４から出力されるマトリクス変数Ｍｘｙと、乱数生成部１６で発生された乱数による撹乱変数Ｒｎｄの両方を、加算変数として負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に加算する。
［Ｓ７２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ７３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙ＋Ｒｎｄの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ７４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【００９７】
このような第７の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーが解消された量子化出力データＣを得ることができる。
また、上記第４の実施の形態と同様、構成の簡略化、演算負担の軽減、演算処理の高速化を実現できる。
【００９８】
＜第８の実施の形態＞
図１４に第８の実施の形態の構成を示す。
この場合、画像処理装置には、図示するように加算器１、乗算器２、減算器３、誤差バッファ４、量子化器５、誤差拡散係数マトリクス６、閾値設定部７、加算器８、ＬＵＴ２１を備える。
【００９９】
この第８の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得ること、及び減算器３、乗算器２，誤差拡散係数マトリクス６、誤差バッファ４で誤差拡散を行うことは、上記各実施の形態と同様である。
【０１００】
この第８の実施の形態の場合、量子化制御変数をＬＵＴ２１から得るようにし、加算器８において入力画素データＢ（Ｘｎ、Ｙｎ）に加算するようにしている。
特に、ＬＵＴ２１は、上記した第２の実施の形態における、減算器１１，Ｑｓ発生部１２、演算ユニット１３、マトリクス部１４、加算器１５に相当する機能を実現する（マトリクス部１４は設けられず、ＬＵＴ２１によりマトリクス部１４の機能を含めた動作が行われる）。
【０１０１】
この場合の量子化制御変数は、予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す値である演算値、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に、マトリクス構成の数値がカラムアドレスとロウアドレスによって選択されたマトリクス変数Ｍｘｙを加算したものとしている。
【０１０２】
ここで、負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）は、入力画素データＡ（Ｘｎ、Ｙｎ）の値に応じて算出しておくことができることは、上記第４の実施の形態の説明において述べた。
また、第１の実施の形態において述べたマトリクス部１４においては、例えば４×４のマトリクスで構成される数値がカラムアドレスとロウアドレスによって選択される。
【０１０３】
そこで、ＲＯＭ又はＲＡＭによりＬＵＴ２１を構成し、このＬＵＴ２１にはテーブルデータとして、図１５に示すように、入力画素データＡ（Ｘｎ、Ｙｎ）の値（例えば「０」〜「３１９」）に対応させて、それぞれ算出された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）、例えばＦｂ（０）〜Ｆｂ（３１９）を記憶しておく。
さらに、負帰還変数Ｆｂ（０）〜Ｆｂ（３１９）のそれぞれについては、マトリクス変数Ｍｘｙに相当する１６種類の数値（Ｘ０，Ｙ０）〜（Ｘｎ，Ｙｎ）、即ち例えば図６（ｂ）に示した各値を加算した値を予め計算して記憶しておく。
【０１０４】
例えば図１５のように、入力画素データＡ＝「０」に対応しては、負帰還変数Ｆｂ（０）が予め算出できるが、さらに、負帰還変数Ｆｂ（０）にマトリクス変数（Ｘ０，Ｙ０）〜マトリクス変数（Ｘｎ，Ｙｎ）をそれぞれ加算した値を、記憶しておく。
つまり、４×４のマトリクス変数を採用する場合は、１つの入力画素データＡについて、対応する負帰還変数Ｆｂにそれぞれ１６個の各マトリクス変数を加算して得た１６個のデータを記憶させるようにする。
これを例えば入力画素データＡとしての「０」〜「３１９」のすべてについて同様に値を算出して記憶しておく。
【０１０５】
すると、ＬＵＴ２１は、入力画素データＡ（Ｘｎ、Ｙｎ）が入力されると、その値を参照してテーブルデータを検索し、対応する負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙが加算された１６個から成る量子化制御変数のグループを決定でき、さらに、カラムアドレスとロウアドレスによって、１６個の値の中から１つを選択することができる。
このようにＬＵＴ２１から読み出される値は量子化制御変数、即ち負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）＋マトリクス変数Ｍｘｙであり、これが量子化制御変数として加算器８に供給され、入力画素データＢ（Ｘｎ、Ｙｎ）に加算される。
【０１０６】
つまりこの第８の実施の形態では、加算器１によって入力画素データＡ（Ｘｎ、Ｙｎ）に累積誤差Ｅ（Ｘｎ、Ｙｎ）を加算して、誤差補正済みの入力画素データＢ（Ｘｎ、Ｙｎ）を得るようにするとともに、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）に、マトリクス変数Ｍｘｙを加算した値を量子化制御変数とするが、この量子化制御変数を、入力画素データＡ（Ｘｎ、Ｙｎ）の値及びカラムアドレスとロウアドレスを参照して決定する。
特に、ＬＵＴ２１に上記図１５のようなテーブルデータを形成することで、入力画素データＡ（Ｘｎ、Ｙｎ）の値と、カラムアドレスとロウアドレスに従って、量子化制御変数を決定できるようにしている。
【０１０７】
このような図１４に示した第８の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に次の手順Ｓ８１〜Ｓ８４を有する画像処理方法が行われる。
［Ｓ８１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙを加算した値を量子化制御変数として、入力画素データＡ（Ｘｎ、Ｙｎ）の値及びカラムアドレスとロウアドレスを参照して決定する。
この場合、各入力画素データＡの値に対応する各負帰還変数Ｆｂ毎に、マトリクス構成で設定されたマトリクス変数Ｍｘｙとしての各数値を加算した値を記憶していることで、入力画素データＡの値と、注目画素の主走査アドレス（カラムアドレス）、副走査アドレス（ロウアドレス）とに基づいて、量子化制御変数を決定する。
［Ｓ８２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ８３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ８４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【０１０８】
このような第８の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズが解消された量子化出力データＣを得ることができる。
擬似輪郭、開始遅れ、ワームノイズが解消できるのは、第１の実施の形態で説明した予測誤差フィードバック系の作用、及びマトリクス変数による作用を、ＬＵＴ２１により実現することによる。
また、この第８の実施の形態の場合、例えば上記図１１に示したマトリクス部１４を不要として、マトリクス変数の機能を実現できる。従って、図２より構成が簡略化された図１１の場合よりも、さらに構成の簡略化を実現でき、しかも量子化制御変数を決定する演算処理のさらなる簡略化や高速化を実現できる。
【０１０９】
＜第９の実施の形態＞
第９の実施の形態の構成を図１６に示す。
これは、上記図１４の構成に、図７で説明した乱数生成部１６及び加算器１８を加えたものである。
そして入力画素データＡ（Ｘｎ、Ｙｎ）の値及びカラムアドレスとロウアドレスに従ってＬＵＴ２１から出力された負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）＋マトリクス変数Ｍｘｙに対して、さらに乱数生成部１６で発生される乱数値による撹乱変数Ｒｎｄが、加算器１８で加算されて、加算器８に供給される。
【０１１０】
つまりこの第６の実施の形態では、予測誤差と、量子化閾値間のレベル差との差の程度を示す値である演算値としての負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙを加えた値を、入力画素データＡ（Ｘｎ、Ｙｎ）の値及びカラムアドレスとロウアドレスを参照してＬＵＴ２１により決定し、さらにその値に撹乱変数Ｒｎｄを加算して量子化制御変数とするものである。
そして加算器８で、誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）に量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙ＋Ｒｎｄが加算され、量子化器５に入力される。量子化器５からは量子化出力データＣ（Ｘｎ、Ｙｎ）が出力される。
【０１１１】
このような図１６に示した第９の実施の形態の構成によれば、入力画像情報を誤差拡散法を用いて量子化し、入力画像情報の階調数より少ない２以上の階調数の画像情報に変換する場合に次の手順Ｓ９１〜Ｓ９４を有する画像処理方法が行われる。
［Ｓ９１］誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差ｅ（Ｘｎ、Ｙｎ）と、量子化閾値間のレベル差Ｑｓとの差の程度を示す演算値である負帰還変数Ｆｂ（Ｘｎ、Ｙｎ）にマトリクス変数Ｍｘｙを加算した記憶値を、入力画素データＡ（Ｘｎ、Ｙｎ）の値及びカラムアドレスとロウアドレスを参照して決定する。さらにその記憶値に乱数生成部１６で生成された値を撹乱変数Ｒｎｄとして加算することで、量子化制御変数を決定する。
この場合、上記記憶値は、各入力画素データＡの値に対応する各負帰還変数Ｆｂ毎に、マトリクス構成で設定されたマトリクス変数Ｍｘｙとしての各数値を加算した値を記憶していることで、入力画素データＡの値と、注目画素の主走査アドレス（カラムアドレス）、副走査アドレス（ロウアドレス）とに基づいて決定する。
［Ｓ９２］注目画素を量子化する以前に量子化された１または複数の画素によって発生した量子化誤差Ｅｑのうち、注目画素に割り振られた補正誤差Ｅ（Ｘｎ、Ｙｎ）を決定する。
［Ｓ９３］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に、上記決定された補正誤差Ｅ（Ｘｎ、Ｙｎ）の加算、及び上記決定された量子化制御変数Ｆｂ（Ｘｎ、Ｙｎ）＋Ｍｘｙ＋Ｒｎｄの加算を行った値について、量子化閾値で量子化することにより、注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）を、その階調数より少ない２以上の階調数の量子化出力データＣ（Ｘｎ、Ｙｎ）に変換する。
［Ｓ９４］注目画素の入力画素データＡ（Ｘｎ、Ｙｎ）に上記補正誤差Ｅ（Ｘｎ、Ｙｎ）を加算した値Ｂ（Ｘｎ、Ｙｎ）と、上記量子化された量子化出力データＣ（Ｘｎ、Ｙｎ）との差である量子化誤差Ｅｑ（Ｘｎ、Ｙｎ）を、注目画素の後に量子化される周辺の画素に割り振る。
【０１１２】
このような第９の実施の形態の画像処理装置、画像処理方法によれば、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーが解消された量子化出力データＣを得ることができる。
また、この第９の実施の形態の場合、例えば上記図１３に示したマトリクス部１４を不要として、マトリクス変数の機能を実現できる。従って、図８より構成が簡略化された図１３の場合よりも、さらに構成の簡略化を実現でき、しかも量子化制御変数を決定する演算処理のさらなる簡略化や高速化を実現できる。
【０１１３】
以上、本発明の実施の形態について説明したが、本発明は上述した各実施の形態に限定されることなく種々の変形が可能である。
例えば、各例では、量子化制御変数を加算器８において誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）に対して加算するようにしたが、加算器８を減算器に代え、量子化制御変数の符号を反転するとともに量子化制御変数を誤差補正済の入力画素データＢ（Ｘｎ、Ｙｎ）から減算するように構成してもよい。
【０１１４】
また各例の画像処理装置を適用する装置として、画像形成装置１００を例に挙げたが、これに限らず、画像表示装置（ＣＲＴディスプレイ、ＬＣＤ（液晶）ディスプレイ、又はプラズマディスプレイ等）に用いることも可能である。
【０１１５】
【発明の効果】
以上の説明から理解されるように、入力画像情報値を、誤差拡散法を用いて、入力画像情報値の階調数より少ない２以上の階調数の画像情報値に変換する本発明の画像処理装置、画像処理方法によれば、以下の各効果を得ることができる。
【０１１６】
請求項１又は請求項１４によれば、誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差と、量子化閾値間のレベル差との差の程度を示す演算値（負帰還変数）に、加算変数を加算した値を、量子化制御変数とする。そして入力画像情報値に補正誤差を加算し、さらに量子化制御変数の加算または減算を行なってから、その値を量子化閾値で量子化する。
これによって、擬似輪郭、開始遅れを解消するとともに、ワームノイズ又はテクスチャーを解消して、量子化後の画像品質を向上させることができる。
【０１１７】
特に請求項２又は請求項１５によれば、マトリクス数値から注目画素の主走査アドレス、副走査アドレスを利用して選択されたマトリクス変数を、上記加算変数とすることで、擬似輪郭、開始遅れ、ワームノイズを解消できる。
また請求項３又は請求項１６によれば、乱数として発生された撹乱変数を、上記加算変数とすることで、擬似輪郭、開始遅れ、テクスチャーを解消できる。
また請求項４又は請求項１７によれば、マトリクス変数と撹乱変数の両方を、上記加算変数とすることで、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーを解消できる。
【０１１８】
請求項５又は請求項１８によれば、少なくとも、誤差補正前の注目画素の入力画像情報値を量子化したときの予測誤差と、量子化閾値間のレベル差との差の程度を示す演算値（負帰還変数）を用いて量子化制御変数を決定する。このとき量子化制御変数は、入力画像情報値を参照して決定する。
そして入力画像情報値に補正誤差を加算し、さらに量子化制御変数の加算または減算を行なってから、その値を量子化閾値で量子化する。
これによって、擬似輪郭、開始遅れを解消し、量子化後の画像品質を向上させることができる。
さらに、量子化制御変数の決定のための構成又は手順を簡易化すると共に、その演算処理の高速化を実現できる。
特に、請求項６又は請求項１９のように、各入力画像情報値に対応して上記負帰還変数を記憶した記憶テーブルを用いることで、量子化制御変数の決定のための構成又は手順を簡易化するとともに演算処理の高速化を実現できる。
【０１１９】
また、請求項７又は請求項２０によれば上記負帰還変数に加算変数を加算して得られる値として量子化制御変数を決定する。これにより、擬似輪郭、開始遅れの解消、量子化制御変数の決定のための構成又は手順の簡易化及び演算処理の高速化に加えて、ワームノイズ又はテクスチャーの解消も実現できる。
特に請求項８又は請求項２１によれば、マトリクス数値から注目画素の主走査アドレス、副走査アドレスを利用して選択されたマトリクス変数を、上記加算変数とすることで、擬似輪郭、開始遅れとともに、ワームノイズを解消できる。
また請求項９又は請求項２２によれば、乱数として発生された撹乱変数を、上記加算変数とすることで、擬似輪郭、開始遅れとともに、テクスチャーを解消できる。
また請求項１０又は請求項２３によれば、マトリクス変数と撹乱変数の両方を、上記加算変数とすることで、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーを解消できる。
【０１２０】
また請求項１１又は請求項２４によれば上記負帰還変数に加算変数を加算して得られる値としての量子化制御変数を、入力画像情報値と、注目画素の主走査アドレスと、副走査アドレスとを参照して決定する。
これにより、擬似輪郭、開始遅れの解消とともに、ワームノイズ又はテクスチャーの解消を実現するための量子化制御変数の決定のための構成又は手順を、さらに簡易化でき、また演算処理のさらなる高速化を実現できる。
特に請求項１２又は請求項２５によれば、各入力画像情報値に対応する上記各負帰還変数毎に、加算変数としての各マトリクス変数を加算した値を記憶した記憶テーブルを用いることで、量子化制御変数の決定のための構成又は手順を大幅に簡易化するとともに演算処理の高速化を実現できる。
また請求項１３又は請求項２６によれば、マトリクス変数と撹乱変数の両方が上記加算変数とされるため、大幅な簡易化、高速化を実現することに加えて、擬似輪郭、開始遅れ、ワームノイズ、テクスチャーを解消できる。
【図面の簡単な説明】
【図１】本発明の実施の形態の画像処理装置を含む画像形成装置のブロック図である。
【図２】第１の実施の形態の画像処理装置のブロック図である。
【図３】入力画像情報値Ａと負帰還変数Ｆｂの関係の説明図である。
【図４】予測誤差フィードバック系の階調変換動作の説明図である。
【図５】入力画像情報値Ｂと量子化出力情報値Ｃの関係の説明図である。
【図６】第１、第３、第５、第７の実施の形態のマトリクス部の動作の説明図である。
【図７】第２の実施の形態の画像処理装置のブロック図である。
【図８】第３の実施の形態の画像処理装置のブロック図である。
【図９】第４の実施の形態の画像処理装置のブロック図である。
【図１０】第４、第５，第６，第７の実施の形態のＬＵＴの説明図である。
【図１１】第５の実施の形態の画像処理装置のブロック図である。
【図１２】第６の実施の形態の画像処理装置のブロック図である。
【図１３】第７の実施の形態の画像処理装置のブロック図である。
【図１４】第８の実施の形態の画像処理装置のブロック図である。
【図１５】第８、第９の実施の形態のＬＵＴの説明図である。
【図１６】第９の実施の形態の画像処理装置のブロック図である。
【図１７】入力画像情報値と量子化出力情報値の関係の説明図である。
【図１８】入力画像情報値と量子化誤差の関係の説明図である。
【図１９】誤差拡散法の動作概念の説明図である。
【図２０】従来の画像処理装置のブロック図である。
【図２１】擬似輪郭及びワームノイズの説明図である。
【図２２】開始遅れの説明図である。
【図２３】テクスチャーの説明図である。
【符号の説明】
１  加算器、２  乗算器、３  減算器、４  誤差バッファ、５  量子化器、６誤差拡散係数マトリクス、７  閾値設定部、８  加算器、９，１０  セレクタ、１１  減算器、１２  Ｑｓ発生部、１３  演算ユニット、１４  マトリクス部、１５  加算器、１６  乱数発生器、１７  加算器、２０，２１  ＬＵＴ
【図１】
2004172798.tif 000004
【図２】
2004172798.tif 000005
【図３】
2004172798.tif 000006
【図４】
2004172798.tif 000007
【図５】
2004172798.tif 000008
【図６】
2004172798.tif 000009
【図７】
2004172798.tif 000010
【図８】
2004172798.tif 000011
【図９】
2004172798.tif 000012
【図１０】
2004172798.tif 000013
【図１１】
2004172798.tif 000014
【図１２】
2004172798.tif 000015
【図１３】
2004172798.tif 000016
【図１４】
2004172798.tif 000017
【図１５】
2004172798.tif 000018
【図１６】
2004172798.tif 000019
【図１７】
2004172798.tif 000020
【図１８】
2004172798.tif 000021
【図１９】
2004172798.tif 000022
【図２０】
2004172798.tif 000023
【図２１】
2004172798.tif 000024
【図２２】
2004172798.tif 000025
【図２３】
2004172798.tif 000026