(57)【要約】【課題】多値誤差拡散法では、一定濃度の画像データを量子化した場合、量子化誤差が上下に大きく振れることで、濃度の異なる３種類以上のドットが発生することがあり、画質の低下を招いている。【解決手段】多値の入力画像信号を、濃度値が０であるドットも含めてｖ種類（ｖは３以上）の濃度の異なるドット用いたｖ値の出力画像信号に変換する量子化処理において、入力画像信号の注目画素に対する濃度値と使用するｖ種類のドットの濃度に応じてそれぞれに定めたｖ種類のドット発生決定閾値とを比較することで注目画素位置に発生するドットの種類を決定するドット発生工程と、入力画像信号の注目画素に対する濃度値とドット発生工程後に発生した注目画素位置のドットの濃度値との間に生じた量子化誤差を予め用意した重み係数マトリックスに応じて注目画素位置近傍のまだ量子化されていない周辺画素に分配する誤差拡散工程とを備えた。【選択図】      図７
2004222110.tif 000002
【特許請求の範囲】
【請求項１】
多値の入力画像信号を、濃度値が０であるドットも含めてｖ種類（ｖは３以上）の濃度の異なるドット用いたｖ値の出力画像信号に変換する量子化処理において、入力画像信号の注目画素に対する濃度値と使用するｖ種類のドットの濃度に応じてそれぞれに定めたｖ種類のドット発生決定閾値とを比較することで注目画素位置に発生するドットの種類を決定するドット発生工程と、入力画像信号の注目画素に対する濃度値とドット発生工程後に発生した注目画素位置のドットの濃度値との間に生じた量子化誤差を予め用意した重み係数マトリックスに応じて注目画素位置近傍のまだ量子化されていない周辺画素に分配する誤差拡散工程と、を備えたことを特徴とする画像処理方式。
【請求項２】
前記ドット発生工程は、注目画素位置に発生させることができるドットを、入力画像信号の注目画素の濃度値以上の濃度をもつドットの中で最も濃度値が小さいドットと、入力画像信号の注目画素の濃度値未満の濃度をもつドットの中で最も濃度値が大きいドットとに制限した工程であることを特徴とする請求項１記載の画像処理方式。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタや複写機に用いられる多階調の入力画像信号を低階調の画像信号に変換する手法として多値誤差拡散法を用いた画像処理方式に関する。
【０００２】
【従来の技術】
中間調画像を記録する擬似階調表現方法の一つとして誤差拡散法が知られている（例えば、非特許文献１参照。）。誤差拡散法は入力画像と出力画像の濃度誤差が最小となるように濃度補正をおこなう量子化処理であり、２値記録しかできないプリンタでも、フルカラーの高精細画像を印刷する場合に見かけの解像度と階調表現の低下を抑えた良好な画像を記録することができる有効な手法である。また、多値記録が可能なプリンタにおいても、この誤差拡散法は飛躍的な画質向上が期待できる有効な手法である。
【０００３】
図１、図２、図３を用い、従来の多値誤差拡散法を説明する。主走査方向がｍ画素、副走査方向がｎ画素で、１画素あたり８ビット（０〜２５５）の濃度を持った入力画像信号Ｓから、主走査方向がｍ画素、副走査方向がｎ画素で、濃度値が０であるドットも含めて１画素あたりｖ種類の濃度をもつｖ値の出力画像信号Ｏを生成する。さらに、各画像信号において、左からｘ番目（主走査方向がｘ）、上からｙ番目（副走査方向がｙ）の画素の座標を（ｘ、ｙ）で表し、その画素の濃度値を、入力画像信号ＳではＳ（ｘ、ｙ）、出力画像信号ＯではＯ（ｘ、ｙ）とする。
【０００４】
ところで、ｖ種類の濃度をもつｖ値画像は、ドット径を（ｖ−１）段階に可変したり、濃度の異なる（ｖ−１）種類のインクを用いたり、あるいはそれらを組み合わせることで実現可能であるが、ここでの多値誤差拡散法の説明では、ドット径を２段階に可変すること３種類の濃度をもつ３値画像を生成するとする。また、各ドットを用いたときの濃度値をｋとするとき、ｋの取りうる範囲は０≦ｋ＜３で、ｋ＝０のときは何も印刷しない、ｋ＝１のときは小径ドットで印刷、ｋ＝２のときは大径ドットで印刷することを意味している。さらに、濃度ｋのドットでベタ印刷を行ったときの印字濃度をＤｅｎ（ｋ）で表し、８ビットデータ（０〜２５５）で表現する。ところで、各濃度ｋにおけるＤｅｎ（ｋ）は、大径ドットでベタ印刷を行ったときが最大濃度なので、Ｄｅｎ（２）＝２５５、何も印刷しないときが最小濃度なので、Ｄｅｎ（０）＝０となる。また、小径ドットでベタ印刷をしたときの濃度Ｄｅｎ（１）は、その小径ドットの大きさによって変化するが、ここでの多値誤差拡散法では、各濃度値における濃度差が均等になると仮定し、Ｄｅｎ（１）はＤｅｎ（０）とＤｅｎ（２）の中間値（＝１２８）とする。
【０００５】
次に、図２のフローチャートを使い、多値誤差拡散法の手順を説明する。
【０００６】
まず、ステップＳ１２０の誤差拡散処理を全画素に対して順次処理する。そのために、ステップＳ１１０で主走査方向のループ処理を、同じくステップＳ１００で副走査方向のループ処理を行っている。
【０００７】
次に、ステップＳ１２０の誤差拡散処理をステップＳ２００〜ステップＳ２７０で説明する。まず、ステップＳ２００で、注目画素位置に大径ドットを発生させるか否かを、注目画素の入力画像信号Ｓ（ｘ、ｙ）と大径ドット発生判定閾値ＴＨ１とを比較し決定する。もし、入力画像信号Ｓ（ｘ、ｙ）が大径ドット発生判定閾値ＴＨ１より大きい場合にはステップＳ２２０でｋ＝２とする。一方ステップＳ２００で入力画像信号Ｓ（ｘ、ｙ）が大径ドット発生判定閾値ＴＨ１より小さい場合には、ステップＳ２１０に移動し、注目画素位置に小径ドットを発生させるか否かを、注目画素の入力画像信号Ｓ（ｘ、ｙ）と小径ドット発生判定閾値ＴＨ２とを比較し決定する。もし、入力画像信号Ｓ（ｘ、ｙ）が小径ドット発生判定閾値ＴＨ２より大きい場合にはステップＳ２３０でｋ＝１とする。一方、ステップＳ２１０で入力画像信号Ｓ（ｘ、ｙ）が小径ドット発生判定閾値ＴＨ２より小さい場合には、ステップＳ２４０でｋ＝０とする。次に、ステップＳ２５０で出力画像信号Ｏ（ｘ、ｙ）にｋを代入する。なお、大径ドット発生判定閾値ＴＨ１および小径ドット発生判定閾値ＴＨ２は、それぞれ１式および２式で指定する。
2004222110.tif 000003
以上の処理で、注目画素に対する量子化が終了したことになる。つまり、注目画素の出力画像信号Ｏ（ｘ、ｙ）が０の場合には注目画素位置に何にも印刷しない、Ｏ（ｘ、ｙ）＝１の場合には小径ドットで印刷、Ｏ（ｘ、ｙ）＝２の場合には大径ドットで印刷することになる。
【０００８】
次に、ステップＳ２６０で量子化誤差ＥＲＲを３式で求める。
ＥＲＲ＝Ｃ（ｘ、ｙ）−Ｄｅｎ（ｋ）・・・（３式）
次に、ステップＳ２７０で量子化誤差ＥＲＲを注目画素近傍のまだ量子化されていない周辺画素に分配する。その際の分配先画素と分配比率は、図３の重み付け係数マトリックスに従い、４式〜７式で分配する。
Ｓ（ｘ＋１、ｙ）＝Ｓ（ｘ＋１、ｙ）＋（７／１６）×ＥＲＲ・・・（４式）
Ｓ（ｘ−１、ｙ＋１）＝Ｓ（ｘ−１、ｙ＋１）＋（３／１６）×ＥＲＲ・・・（５式）
Ｓ（ｘ、ｙ＋１）＝Ｓ（ｘ、ｙ＋１）＋（５／１６）×ＥＲＲ・・・（６式）
Ｓ（ｘ＋１、ｙ＋１）＝Ｓ（ｘ＋１、ｙ＋１）＋（１／１６）×ＥＲＲ・・・（７式）
以上の処理を、すべての画素に対して順に行うことで、量子化された出力画像信号Ｏを得る事ができる。
【非特許文献１】
Ｒｏｂｅｒｔ  Ｆｌｏｙｄ  ａｎｄ  Ｌｏｕｉｓ  Ｓｔｅｉｎｂｅｒｇ、
“Ａｎ  Ａｄａｐｔｉｖｅ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  ＳｐａｔｉａｌＧｒｅｙ  Ｓｃａｌｅ”、Ｐｒｏｃ．ＳＩＤ、Ｖｏｌ１７、Ｎｏ２、ｐｐ．７５−７７、１９７６
【０００９】
【発明が解決しようとする課題】
しかし、これまで説明してきた多値誤差拡散法では、一定濃度の画像データを量子化した場合、その濃度値によっては量子化誤差が上下に大きく振れることで、濃度の異なる３種類以上のドットが発生することがある。このような一定濃度の画像内に濃度の異なる３種類以上ドットが存在すると、人間の目にはざらついた印象を与えてしまい、画質の低下を招く結果となっている。
【００１０】
本発明の目的は、このような従来技術の欠点のなかで、一定濃度の画像データ内には濃度の異なるドットが３種類以上発生しないように発生制限を加えることで、画像のザラツキ感を軽減した多値誤差拡散法による高画質な画像処理方式を提供することである。
【００１１】
【課題を解決するための手段】
上記課題は、多値の入力画像信号を、濃度値が０であるドットも含めてｖ種類（ｖは３以上）の濃度の異なるドット用いたｖ値の出力画像信号に変換する量子化処理において、入力画像信号の注目画素に対する濃度値と使用するｖ種類のドットの濃度に応じてそれぞれに定めたｖ種類のドット発生決定閾値とを比較することで注目画素位置に発生するドットの種類を決定するドット発生工程と、入力画像信号の注目画素に対する濃度値とドット発生工程後に発生した注目画素位置のドットの濃度値との間に生じた量子化誤差を予め用意した重み係数マトリックスに応じて注目画素位置近傍のまだ量子化されていない周辺画素に分配する誤差拡散工程と、を備えることによって解決される。
【００１２】
【発明の実施の形態】
以下、本発明の実施例を図４から図９を用いて説明する。なお、本実施例では説明のために便宜上、入力画像信号は１画素あたり８ビット（０〜２５５）濃度を持った画像信号とし、処理後の出力画像信号は濃度値が０であるドットも含めて１画素あたりｖ種類の濃度をもつｖ値の出力画像信号とするが、これに限ったものではない。
【００１３】
図４は、入力画像信号Ｓと誤差蓄積画像信号Ｃ、更に、本発明の量子化処理後の出力画像信号Ｏを表している。これらの画像はいずれも主走査方向サイズがｍ画素、副走査方向サイズがｎ画素で構成され、主走査方向がｘ番目、副走査方向がｙ番目の画素の座標を（ｘ、ｙ）で表し、その画素の濃度レベルを、入力画像信号ではＳ（ｘ、ｙ）、誤差蓄積画像信号ではＣ（ｘ、ｙ）、量子化処理後の出力画像信号ではＯ（ｘ、ｙ）で表現している。また、誤差蓄積画像信号Ｃは、初期状態では入力画像信号Ｓをそのまま複製した画像信号であり、後述する誤差拡散工程において生じた量子化誤差ＥＲＲの分配・蓄積先として使用する。また、出力画像信号Ｏは量子化処理工程後のｖ値画像を格納する。
【００１４】
ところで、ｖ種類の濃度をもつｖ値画像は、ドット径を（ｖ−１）段階に可変したり、濃度の異なる（ｖ−１）種類のインクを用いたり、あるいはそれらを組み合わせることで実現可能であるが、本実施例では、ドット径を（ｖ−１）段階に可変することでｖ種類の濃度をもつｖ値画像を形成するものとする。
【００１５】
図５は、ｖ値の出力画像信号Ｏの各濃度レベルｋに対する濃度値Ｄｅｎ（ｋ）を示したグラフと、濃度レベルｋでの印字ドットを模式的に示した図である。ここで、濃度レベルｋに対する濃度値Ｄｅｎ（ｋ）は０〜２５５の８ビットデータとして表現するものとする。また、印刷に使用するドットの大きさは、濃度レベルｋが大きければより大きなドットで、濃度レベルｋ小さければより小さなドットで印刷するものとする。ところで、出力画像信号Ｏがｖ値画像であるから、出力画像信号Ｏの濃度レベルｋの取りうる範囲は０≦ｋ＜ｖであり、濃度レベルｋが０の場合は、何も印刷しないことを意味し、その濃度値Ｄｅｎ（０）は０である。また、濃度レベルｋがｖ−１の場合は、最も大きなドットで印刷することを意味し、その濃度値Ｄｅｎ（ｖ−１）は２５５である。
【００１６】
次に、図６〜８のフローチャートを使い、本実施例の多値誤差拡散法の手順を説明する。
【００１７】
まず、図６のステップＳ１００で入力画像信号Ｓを誤差蓄積画像信号Ｃにコピーする。次に、ステップＳ１３０のドット発生工程とステップＳ１４０の誤差拡散工程を全画素に対して順次処理する。そのために、ステップＳ１２０で主走査方向のループ処理を、同じくステップＳ１１０で副走査方向のループ処理を行っている。
【００１８】
次に、図６のステップＳ１３０のドット発生工程を図７を用い説明する。まず、注目画素（ｘ、ｙ）に対する誤差蓄積画像信号Ｃ（ｘ、ｙ）が、ｖ値の出力画像信号ＯにおいてどのレベルであるかをＤｅｎ（１）からＤｅｎ（ｖ−１）まで順に比較することで出力画像信号Ｏにおける濃度レベルｋを求める。ステップＳ２００はそのためのループ処理で、ｋ＝０からｋ＝ｖ−２まで繰り返している。また、ステップＳ２１０では、注目画素（ｘ、ｙ）に対する誤差蓄積画像信号Ｃ（ｘ、ｙ）と出力画像信号Ｏにおける濃度レベルｋに対するの８ビット濃度値Ｄｅｎを比較し、Ｃ（ｘ、ｙ）がＤｅｎ（ｋ＋１）より小さければループを抜け出すことで、出力画像信号における濃度レベルを求めている。つまり、ループ処理を終了した時点では言い換えればステップＳ２２０の手前では、８式の関係にある。
Ｄｅｎ（ｋ）≦Ｃ（ｘ、ｙ）＜Ｄｅｎ（ｋ＋１）・・・（８式）
これは、出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）を、ｋかｋ＋１にすることで量子化誤差を少なくすることができることを意味している。
【００１９】
次に、ステップＳ２２０〜ステップＳ２８０で、出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）を、入力画像信号Ｓの濃度Ｓ（ｘ、ｙ）と量子化閾値ＴＨを用い決定する。まず、入力画像信号Ｓの濃度Ｓ（ｘ、ｙ）が、ステップＳ２００〜ステップＳ２１０で求めたＤｅｎ（ｋ）からＤｅｎ（ｋ＋１）までの範囲内にあるか否かを、ステップＳ２２０及びステップＳ２３０で調べる。Ｓ（ｘ、ｙ）がＤｅｎ（ｋ＋１）以上であれば、ステップＳ２５０で出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）をｋ＋１に設定する。また、Ｓ（ｘ、ｙ）がＤｅｎ（ｋ）より小さければ、ステップＳ２６０で出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）をｋに設定する。この処理は、同一濃度上に３種類以上の濃度の異なるドットが発生するのを抑制するためのもので、一定濃度画像のザラツキ感の軽減、および、グラデーションの滑らかさの向上を図ったものである。例えば、一定濃度画像の入力画像信号Ｓがあり、その濃度Ｓ（ｘ、ｙ）がＤｅｎ（ｋ）より少しだけ小さな値のときは、出力画像信号Ｏではｋかあるいはｋ−１のドットのみ発生するのが理想であるが、量子化誤差の蓄積具合によってはｋ＋１のドットが発生してしまうことがある。これにより、印刷画像にザラツキ感が増大し画質劣化を引き起こす原因になる。この問題を解消するために処理が、ステップＳ２２０、ステップＳ２３０、ステップＳ２５０およびステップＳ２６０である。
【００２０】
一方、ステップＳ２２０とステップＳ２３０が共に偽の場合には、ステップＳ２４０に進む。ここで、出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）を決定するために、注目画素（ｘ、ｙ）に対する誤差蓄積画像信号Ｃ（ｘ、ｙ）と量子化閾値ＴＨとを比較する。Ｃ（ｘ、ｙ）がＴＨ以上の場合には、ステップＳ２７０で出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）をｋ＋１に、Ｃ（ｘ、ｙ）がＴＨより小さければ、ステップＳ２８０で出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）をｋに設定する。なお、ここで用いた量子化閾値ＴＨとは、前記８式を満たすような場合、出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）をｋにするかあるいはｋ＋１にするかを、誤差蓄積画像信号Ｃ（ｘ、ｙ）の値で決定することになるが、その際の判定基準値となるものである。この量子化閾値ＴＨの指定方法として最も基本的な方法は、ｋのドットで印刷したときの濃度と、ｋ＋１のドットで印刷したときの濃度の中間値を取る方法で、本実施例でもこの方法により量子化閾値ＴＨを指定する。つまり、９式で量子化閾値ＴＨを指定する。
ＴＨ＝（Ｄｅｎ（ｋ）＋Ｄｅｎ（ｋ＋１））／２・・・（９式）
以上でドット発生工程は終了である。これにより、注目画素（ｘ、ｙ）に対する出力画像信号Ｏの濃度Ｏ（ｘ、ｙ）は量子化されたことになる。
次に、図８を用い、図６のステップＳ１４０の誤差拡散工程を説明する。誤差拡散工程は、入力画像信号Ｓから出力画像信号Ｏに量子化する際、注目画素間で発生した濃度差をまだ量子化されていない注目画素近傍の周辺画素に分散することで、画像信号全体としては濃度差が生じないようにする工程である。まず、ステップＳ３００で、注目画素（ｘ、ｙ）を量子化した際に発生した濃度差である量子化誤差ＥＲＲを１０式で求める。
ＥＲＲ＝Ｃ（ｘ、ｙ）−Ｄｅｎ（Ｄ（ｘ、ｙ））・・・（１０式）
次に、ステップＳ３１０で量子化誤差ＥＲＲを注目画素近傍のまだ量子化されていない周辺画素に分配する。その際の分配先画素と分配比率は、図３の重み付け係数マトリックスに従い、１１式〜１４式で分配する。
Ｃ（ｘ＋１、ｙ）＝Ｃ（ｘ＋１、ｙ）＋（７／１６）×ＥＲＲ・・・（１１式）
Ｃ（ｘ−１、ｙ＋１）＝Ｃ（ｘ−１、ｙ＋１）＋（３／１６）×ＥＲＲ・・・（１２式）
Ｃ（ｘ、ｙ＋１）＝Ｃ（ｘ、ｙ＋１）＋（５／１６）×ＥＲＲ・・・（１３式）
Ｃ（ｘ＋１、ｙ＋１）＝Ｃ（ｘ＋１、ｙ＋１）＋（１／１６）×ＥＲＲ・・・（１４式）
なお、本実施例では、図３の重み付け係数マトリックスを使用したが、これに限定されるものではない。例えば、図９の重み付け係数マトリックスを使用することも可能である。図９の重み付け係数マトリックスを使用すると、より多くの演算が必要になるが、量子化誤差が広範囲に分散されるため、図３の重み付け係数マトリックスを使用したときよりも滑らかな濃度変化をもつ出力画像信号を得ることができる。これで、誤差拡散工程は終了である。
【００２１】
以上の処理をすべての画素に対して順に行うことで、量子化された出力画像信号Ｏを得る事ができる。
【００２２】
【発明の効果】
本発明によれば、一定濃度の画像データ内には濃度の異なるドットが３種類以上発生しないように発生制限を加えることで、画像のザラツキ感を軽減した高画質な画像を得ることができる。
【図面の簡単な説明】
【図１】従来の多値誤差拡散法に用いる画像信号の構成図である。
【図２】従来の多値誤差拡散法を示すフローチャートである。
【図３】従来の多値誤差拡散法および本発明に用いる第１の重み付け係数マトリックスである。
【図４】本発明の多値誤差拡散法に用いる画像信号の構成図である。
【図５】本発明の多値誤差拡散法に用いる出力画像信号Ｏの濃度特性を表したグラフである。
【図６】本発明の多値誤差拡散法を示すフローチャートである。
【図７】本発明の多値誤差拡散法におけるドット発生工程を示すフローチャートである。
【図８】本発明の多値誤差拡散法における誤差拡散工程を示すフローチャートである。
【図９】本発明の第２の重み付け係数マトリックスである。
【符号の説明】
１は入力画像信号Ｓ、２は出力画像信号、３は第１の重み付け係数マトリックス、４は入力画像信号、５は誤差蓄積画像信号、６は出力画像信号、７は第２の重み付け係数マトリックスである。
【図１】
2004222110.tif 000004
【図２】
2004222110.tif 000005
【図３】
2004222110.tif 000006
【図４】
2004222110.tif 000007
【図５】
2004222110.tif 000008
【図６】
2004222110.tif 000009
【図７】
2004222110.tif 000010
【図８】
2004222110.tif 000011
【図９】
2004222110.tif 000012