(57)【要約】【課題】  種類が異なるドットの重畳を防いだ疑似中間調処理を行う。【解決手段】  二値パターンメモリ102は、二値のパターン画像を格納する。第一、第二のチャネルの画像データをそれぞれ二値化する二値化部は、誤差拡散値を格納する誤差メモリ107、114、誤差拡散値と注目画素の値を加算する累積誤差加算部101、110、加算値と注目画素の二値化値の間の誤差を演算する誤差演算部105、112、誤差を二値化前の画素に拡散するように、誤差メモリ107、114が格納する誤差拡散値を更新する誤差拡散部106、113、加算値、パターン画像の階調値、注目画素の位置に対応するパターン画像の画素値、および、量子化閾値に基づき、注目画素の二値化値を決定する量子化部103、111を有する。量子化部103と111は、オンドットを示す二値化値の決定条件が互いに逆である。【選択図】  図1
2008228101.tif 000002
【特許請求の範囲】
【請求項１】
二値のパターン画像を格納するパターンメモリ、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、
誤差拡散値を格納する誤差メモリと、
前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、
前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、
前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有し、
前記複数の二値化手段は、オンドットを示す二値化値の決定条件が互いに逆であることを特徴とする画像処理装置。
【請求項２】
前記量子化手段は、前記注目画素の値と前記階調値の比較、および、前記パターン画像の画素値がオンドットを示すか否かの判定に基づき、前記注目画素の二値化値を決定する第一の決定手段と、
前記比較および前記判定に加えて、前記加算値と前記量子化閾値の比較に基づき、前記注目画素の二値化値を決定する第二の決定手段とを有することを特徴とする請求項1に記載された画像処理装置。
【請求項３】
複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、
他の二値化手段が使用する二値のパターン画像と排他的なオンドット配置の二値のパターン画像を格納するパターンメモリと、
誤差拡散値を格納する誤差メモリと、
前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、
前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、
前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有することを特徴とする画像処理装置。
【請求項４】
前記階調値は、前記パターン画像のオンドットの出現率に比例することを特徴とする請求項1から請求項3の何れか一項に記載された画像処理装置。
【請求項５】
チャネル数に等しい数の画素値をもつパターン画像を格納するパターンメモリ、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、
誤差拡散値を格納する誤差メモリと、
前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、
前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、
前記加算値、前記チャネルに対応する前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有することを特徴とする画像処理装置。
【請求項６】
前記量子化手段は、前記注目画素の値と前記チャネルに対応する階調値の比較、および、前記パターン画像の画素値が前記チャネルに対応する画素値を示すか否かの判定に基づき、前記注目画素の二値化値を決定する第一の決定手段と、
前記比較および前記判定に加えて、前記加算値と前記量子化閾値の比較に基づき、前記注目画素の二値化値を決定する第二の決定手段とを有することを特徴とする請求項5に記載された画像処理装置。
【請求項７】
前記チャネルに対応する階調値は、前記パターン画像がもつ前記チャネルに対応する画素値と当該画素値の出現率の積を総和した値であることを特徴とする請求項6に記載された画像処理装置。
【請求項８】
二値の画素パターンを発生する発生手段、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、
誤差拡散値を格納する誤差メモリと、
前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、
前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、
前記加算値、前記画素パターンの階調値、前記発生手段が画素単位に発生する画素値、および、量子化閾値に基づき、注目画素の二値化値を決定する量子化手段とを有することを特徴とする画像処理装置。
【請求項９】
前記量子化手段は、前記注目画素の値と前記階調値の比較、および、前記発生手段が画素単位に発生する画素値がオンドットを示すか否かの判定に基づき、前記注目画素の二値化値を決定する第一の決定手段と、
前記比較および前記判定に加えて、前記加算値と前記量子化閾値の比較に基づき、前記注目画素の二値化値を決定する第二の決定手段とを有することを特徴とする請求項8に記載された画像処理装置。
【請求項１０】
前記階調値は、前記画素パターンの画素値と当該画素値の出現率の積を総和した値であることを特徴とする請求項8または請求項9に記載された画像処理装置。
【請求項１１】
前記画素パターンはブルーノイズ特性を有することを特徴とする請求項1から請求項10の何れか一項に記載された画像処理装置。
【請求項１２】
複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、第二のチャネル以降の前記二値化手段は、
誤差拡散値を格納する誤差メモリと、
前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、
前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、
対応チャネルより前の注目画素の二値化前後の値、前記加算値、および、量子化閾値に基づき、対応チャネルの注目画素の二値化値を決定する量子化手段とを有することを特徴とする画像処理装置。
【請求項１３】
前記量子化手段は、前記対応チャネルより前の注目画素の二値化前の値と前記対応チャネルの注目画素の二値化前の値の和と前記画像データの最大階調値の比較、および、前記対応チャネルより前の注目画素の二値化後の値がオフドットを示すか否かの判定に基づき、前記対応チャネルの注目画素の二値化値を決定する第一の決定手段と、
前記比較および前記判定に加えて、前記加算値と前記量子化閾値の比較に基づき、前記対応チャネルの注目画素の二値化値を決定する第二の決定手段とを有することを特徴とする請求項12に記載された画像処理装置。
【請求項１４】
二値のパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、
前記誤差拡散値と注目画素の値を加算した加算値を計算し、
前記加算値と前記注目画素の二値化値の間の誤差を演算し、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、
前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定し、
前記複数の二値化手段は、オンドットを示す二値化値の決定条件が互いに逆であることを特徴とする画像処理方法。
【請求項１５】
他の二値化手段が使用する二値のパターン画像と排他的なオンドット配置の二値のパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、
前記誤差拡散値と注目画素の値を加算した加算値を計算し、
前記加算値と前記注目画素の二値化値の間の誤差を演算し、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、
前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定することを特徴とする画像処理方法。
【請求項１６】
チャネル数に等しい数の画素値をもつパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、
前記誤差拡散値と注目画素の値を加算した加算値を計算し、
前記加算値と前記注目画素の二値化値の間の誤差を演算し、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、
前記加算値、前記チャネルに対応する前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定することを特徴とする画像処理方法。
【請求項１７】
二値の画素パターンを発生する発生手段、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、
前記誤差拡散値と注目画素の値を加算した加算値を計算し、
前記加算値と前記注目画素の二値化値の間の誤差を演算し、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、
前記加算値、前記画素パターンの階調値、前記発生手段が画素単位に発生する画素値、および、量子化閾値に基づき、注目画素の二値化値を決定することを特徴とする画像処理方法。
【請求項１８】
誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、第二のチャネル以降の前記二値化手段は、
前記誤差拡散値と注目画素の値を加算した加算値を計算し、
前記加算値と前記注目画素の二値化値の間の誤差を演算し、
前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、
対応チャネルより前の注目画素の二値化前後の値、前記加算値、および、量子化閾値に基づき、対応チャネルの注目画素の二値化値を決定することを特徴とする画像処理方法。
【請求項１９】
コンピュータ装置を制御して、請求項1から請求項13の何れか一項に記載された画像処理装置の各手段として機能させることを特徴とするコンピュータプログラム。
【請求項２０】
請求項19に記載されたコンピュータプログラムが記録されたことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを二値化する画像処理に関する。
【背景技術】
【０００２】
ワードプロセッサ、パーソナルコンピュータ、ファクシミリ用などの情報出力装置として、文字や画像などを記録紙やフィルムなどのシート状の記録媒体に記録する記録装置には様々な方式のものがある。その中で、記録媒体に記録剤を付着することで記録媒体上にテキストや画像を形成する方式が実用化されている。このような方式の代表例として、インクジェット方式の記録装置がある。
【０００３】
インクジェット記録装置は、記録速度の向上や高画質化などのために、同じ色のインクを吐出可能な複数のインク吐出口（ノズル）を集積し配列したノズル群を用いる。これらノズル群は、色が異なるインクそれぞれについて設けられる。さらに、色は同じであるが濃度が異なるインクを吐出可能なノズル群、同じ色のインクの吐出量を何段階かに切り替えて吐出可能なノズル群などが設けられる場合もある。
【０００４】
インクジェット記録装置は、出力画像の各画素を、記録剤の有無による二階調でしか表現することができない。表現可能な階調数よりも多い階調数の画像を形成するために、画像の階調数を記録装置が表現可能な階調に変換し（量子化と呼ぶ）、記録装置が表現できない階調を擬似的に表現する擬似中間調処理を行う。
【０００５】
擬似中間調処理の一手法としてR. Floydらによる誤差拡散法が知られている（非特許文献1参照）。誤差拡散法は、ある画素の量子化で生じた誤差（量子化誤差）を以降の複数画素へ拡散して、マクロ的に、出力画像の平均濃度を入力画像の濃度と等しくする擬似中間調処理である。
【０００６】
異なる色のインク、同じ色で濃度が異なるインク、あるいは、同じ色で吐出量の異なるインクを用いて画像を形成する場合がある。この場合、色、濃度または吐出量が異なるインク（以下、異なるインク）に対応する入力画像を独立に擬似中間調すると、同じ位置に異なるインクが記録される場合がある。つまり、異なるインクによるドット（以下、種類が異なるドット）が重なることになり、粒状感が悪化して、良好な視覚特性が得られない場合がある。
【０００７】
上記の問題を改善するために、異なるインクに対応する二色以上を組み合わせて誤差拡散処理することで、種類が異なるドットの重畳を防ぐ擬似中間調処理が特許文献1に開示されている。
【０００８】
また、誤差拡散法は、均一階調画像を量子化するとテクスチャと呼ぶ規則的な模様が量子化結果の画像に発生する問題がある。とくに、特定の階調（8ビット画像の場合は64、128、192階調付近）の均一階調の画像を量子化するとテクスチャが発生し易い。
【０００９】
誤差拡散法に特有のテクスチャや擬似輪郭の発生を抑制する方法として、入力画像データまたは量子化閾値にノイズを加える方法がある（特許文献2参照）。
【００１０】
特許文献1の発明は、誤差拡散法をベースとしたドット位置の制御方法に関するものである。そのため、種類が異なるドットの重畳を防ぐことは可能であるが、誤差拡散法に特有のテクスチャが発生する問題がある。
【００１１】
また、特許文献2の発明のように、テクスチャや擬似輪郭を排除するために振幅が大きいノイズを加えると、出力画像にノイズが残り、粒状感が目立つ、画質の悪い画像が形成される問題がある。
【００１２】
また、特許文献3、4は、二色以上を組み合わせて誤差拡散法を用い、異なる色のドットの重畳を防ぐ擬似中間調処理を開示する。特許文献3の発明は、ルックアップテーブル(LUT)を参照してドット位置を制御するので、インクの種類が増えるとLUTのデータ量が膨大になる。また、特許文献4の発明は、インクの種類が増えるとLUTを参照する回数が増え、処理が複雑になる。
【００１３】
【特許文献１】特開2004-336570公報
【特許文献２】特開2003-069819公報
【特許文献３】特開平11-010918号公報
【特許文献４】特開2004-229010公報
【非特許文献１】R. Floyd et al.「An Adaptive Algorithm for Spatial Gray Scale」in society for Information Display 1975 Symposium Digest of Technical Papers, 1975, pp. 36-37
【発明の開示】
【発明が解決しようとする課題】
【００１４】
本発明は、種類が異なるドットの重畳を防いだ疑似中間調処理を行うことを目的とする。
【課題を解決するための手段】
【００１５】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１６】
本発明にかかる画像処理装置は、二値のパターン画像を格納するパターンメモリ、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、誤差拡散値を格納する誤差メモリと、前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有し、前記複数の二値化手段は、オンドットを示す二値化値の決定条件が互いに逆であることを特徴とする。
【００１７】
また、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、他の二値化手段が使用する二値のパターン画像と排他的なオンドット配置の二値のパターン画像を格納するパターンメモリと、誤差拡散値を格納する誤差メモリと、前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有することを特徴とする。
【００１８】
また、チャネル数に等しい数の画素値をもつパターン画像を格納するパターンメモリ、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、誤差拡散値を格納する誤差メモリと、前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、前記加算値、前記チャネルに対応する前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定する量子化手段とを有することを特徴とする。
【００１９】
また、二値の画素パターンを発生する発生手段、および、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、各二値化手段は、誤差拡散値を格納する誤差メモリと、前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、前記加算値、前記画素パターンの階調値、前記発生手段が画素単位に発生する画素値、および、量子化閾値に基づき、注目画素の二値化値を決定する量子化手段とを有することを特徴とする。
【００２０】
また、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置であって、第二のチャネル以降の前記二値化手段は、誤差拡散値を格納する誤差メモリと、前記誤差拡散値と注目画素の値を加算した加算値を出力する加算手段と、前記加算値と前記注目画素の二値化値の間の誤差を演算する演算手段と、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新する拡散手段と、対応チャネルより前の注目画素の二値化前後の値、前記加算値、および、量子化閾値に基づき、対応チャネルの注目画素の二値化値を決定する量子化手段とを有することを特徴とする。
【００２１】
本発明にかかる画像処理方法は、二値のパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、前記誤差拡散値と注目画素の値を加算した加算値を計算し、前記加算値と前記注目画素の二値化値の間の誤差を演算し、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定し、前記複数の二値化手段は、前記注目画素の二値化値を互いに逆方向に決定することを特徴とする。
【００２２】
また、他の二値化手段が使用する二値のパターン画像と排他的なオンドット配置の二値のパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、前記誤差拡散値と注目画素の値を加算した加算値を計算し、前記加算値と前記注目画素の二値化値の間の誤差を演算し、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、前記加算値、前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定することを特徴とする。
【００２３】
また、チャネル数に等しい数の画素値をもつパターン画像を格納するパターンメモリ、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、前記誤差拡散値と注目画素の値を加算した加算値を計算し、前記加算値と前記注目画素の二値化値の間の誤差を演算し、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、前記加算値、前記チャネルに対応する前記パターン画像の階調値、前記注目画素の位置に対応する前記パターン画像の画素値、および、量子化閾値に基づき、前記注目画素の二値化値を決定することを特徴とする。
【００２４】
また、二値の画素パターンを発生する発生手段、および、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、各二値化手段は、前記誤差拡散値と注目画素の値を加算した加算値を計算し、前記加算値と前記注目画素の二値化値の間の誤差を演算し、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、前記加算値、前記画素パターンの階調値、前記発生手段が画素単位に発生する画素値、および、量子化閾値に基づき、注目画素の二値化値を決定することを特徴とする。
【００２５】
また、誤差拡散値を格納する誤差メモリを備え、複数のチャネルの画像データをそれぞれ二値化する複数の二値化手段を有する画像処理装置の画像処理方法であって、第二のチャネル以降の前記二値化手段は、前記誤差拡散値と注目画素の値を加算した加算値を計算し、前記加算値と前記注目画素の二値化値の間の誤差を演算し、前記誤差を二値化前の画素に拡散するように、前記誤差メモリが格納する誤差拡散値を更新し、対応チャネルより前の注目画素の二値化前後の値、前記加算値、および、量子化閾値に基づき、対応チャネルの注目画素の二値化値を決定することを特徴とする。
【発明の効果】
【００２６】
本発明によれば、種類が異なるドットの重畳を防いだ疑似中間調処理を行うことができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明にかかる実施例の画像処理を図面を参照して詳細に説明する。
【００２８】
以下では、8ビット、256階調を有する入力画像を、二階調の画像に変換する画像処理を説明する。勿論、本発明は、入力階調数が256階調に制限されず、256階調よりも多くても少なくてもよい。また、入力画像の横サイズをW画素、縦サイズをH画素として説明する。
【００２９】
また、二値画像は、0（オフドット）または255（オンドット）に対応する二値をもつ。二値画像において、画素値255に対応する画素が、256画素中にg画素の割合で含まれる場合をg階調と表現する。
【００３０】
実施例の画像処理装置は、パターン画像を利用して、異なるインクに対応する2または3チャネルの入力画像を、ドットの記録率が低い領域では2または3チャネルのドットが重畳しないようにドットを配置した二値画像に変換する。
【００３１】
例えば、第一のチャネルは例えばシアン(C)インクで記録される画像を表し、第二のチャネルはマゼンタ(M)インクで記録される画像を表し、第三のチャネルは例えばイエロー(Y)インクで記録される画像を表す。また、チャネルの組み合せは、面積が大きいドットで記録される画像と、面積が小さいドットで記録される画像の組み合せ、同じ色の、濃インクで記録される画像と、淡インクで記録される画像の組み合せなど、任意でよい。
【実施例１】
【００３２】
［装置の構成］
図1は実施例1の画像処理装置の構成例を示すブロック図である。
【００３３】
入力端子100、109、116は、入力画像データを蓄積するメモリなどの記憶デバイス、あるいは、スキャナや撮像装置などの入力デバイスに接続する。それらデバイスから、入力端子100はラスタ走査順に第一のチャネルの画像データが入力され、入力端子109はラスタ走査順に第二のチャネルの画像データが入力される。なお、両チャネルの画像データは同期をとられて入力端子100と109に入力される。
【００３４】
出力端子108と115は、記憶デバイス、あるいは、表示装置や印刷装置などの出力デバイスに接続する。出力端子108は第一チャネルの二値画像データを出力し、出力端子115は第二チャネルの二値画像データを出力する。なお、両チャネルの画像データは同期をとられて出力端子108と115から出力される。
【００３５】
累積誤差加算部101(110)は、画素単位に、入力端子100(109)から入力される画像データに累積誤差メモリ107(114)に格納された誤差拡散値を加算する。二値パターンメモリ102は、二値パターン画像と、その階調値を格納し、入力端子116に入力される信号が示す注目画素の位置に対応する二値パターン画像の画素値と階調値を出力する。
【００３６】
量子化部103(111)は、詳細は後述するが、閾値メモリ104が記憶する量子化閾値などに基づき、第一チャネル（第二チャネル）の注目画素の量子化値（二値化値）を決定する。
【００３７】
誤差演算部105(112)は、量子化部103(111)の入出力画像データから量子化誤差を演算する。誤差拡散部106(113)は、量子化誤差を量子化前の所定の画素に拡散するように、累積誤差メモリ107(114)が格納する誤差拡散値を更新する。
【００３８】
このように、画像処理装置は、入力端子、累積誤差加算部、量子化部、誤差演算部、誤差拡散部、累積誤差メモリ、および、出力端子を各チャネル独立に備える。一方、二値パターンメモリ102と閾値メモリ104は両チャネルで共通である。
【００３９】
［二値パターン画像の設定］
二値パターンメモリ102は、所定の階調bgの二値パターン画像を予め記憶する。二値パターン画像の画像サイズWb×Hb画素は任意である。二値パターン画像が入力画像よりも小さい場合は、二値パターン画像をタイル状に繰り返し配列することで、二値パターンを入力画像の各画素に対応させる。
【００４０】
二値パターン画像は任意の階調bg、および、任意の二値パターンをとることができる。ただし、テクスチャの発生を低減するために、二値パターン画像としてオンドット配置の分散性が高い、空間周波数がブルーノイズ特性をもつものが好ましい。ブルーノイズ特性をもつ二値パターン画像の作成方法は、どのような方法を用いてもよい。例えば、米国特許第4,920,501号に開示された方法が知られている。なお、ブルーノイズ特性とは、低周波数の周波数成分が少なく、高周波数の周波数成分が多い特性のことを指す。
【００４１】
さらに、テクスチャの発生を低減するために、二値パターン画像の階調値bgを、誤差拡散によってテクスチャが発生する階調（入力画像が8ビットの場合、128階調など）に等しくすることが望ましい。
【００４２】
実施例1の画像処理装置は、二値パターン画像がもつ階調値bgと等しい階調をもつ均一階調画像が入力された場合、二値パターン画像のパターンを出力する。つまり、階調値bgの画像が入力された場合、二値パターン画像を出力するため、テクスチャの発生を防ぐことができる。
【００４３】
また、二値パターン画像の階調値bgと、それを白黒反転(255-bg)させた値のどちらか小さい値の入力階調までは、ドットの重畳を防いでドットを配置することが可能である。従って、より高い階調まで、2チャネルの量子化結果のドットの重畳を防ぐには、二値パターン画像のもつ階調値bgは128に近い値であることが好ましい。
【００４４】
［量子化］
●第一のチャネルの量子化
図2は量子化処理を説明するフローチャートである。
【００４５】
まず、画像データが走査順に入力端子100に入力される(S201)。
【００４６】
図3は入力画像の走査を示す図である。画像の走査は、画像の左上端の画素400から開始され、右方向に一画素ずつ進む（主走査）。そして、画像の右端に達すると、1ライン下の左端画素に移る（副走査）。主走査と副走査を繰り返し、右下端の画素401に達すると、画像の走査が終了する。
【００４７】
累積誤差加算部101は、入力された画素データ（量子化前の注目画素の値）に累積誤差メモリ107の画素位置に対応する誤差拡散値を加算する(S202)。
【００４８】
図4は累積誤差メモリ107が格納する誤差拡散値を説明する図である。累積誤差メモリ107は、一画素に対応する記憶領域E10と、主走査方向にW画素（画像の横サイズと同数）の記憶領域E(x)1(x=1〜W)を有し、後述する方法により誤差拡散値を格納する。記憶領域E1はすべて、処理開始前に初期値0に初期化される。
【００４９】
累積誤差加算部101は、式(3)に示すように、注目画素の横画素位置xに対応する記憶領域E1(x)に格納された誤差拡散値を注目画素に加算する。
I1' = I1 + E1(x)      …(1)
ここで、I1は注目画素の値
I1'は誤差拡散値を加算した注目画素の値（以下、加算値）
【００５０】
次に、二値パターンメモリ902は、注目画素の位置に対応する二値パターン画像の画素値Bと、二値パターン画像の階調値bgを出力する(S203)。
【００５１】
もし、二値パターン画像のサイズWb×Hbが入力画像のサイズW×Hより小さい場合、二値パターン画像の座標(xb, yb)を、入力画像の座標(x, y)に以下のように対応させる。
xb = x % Wb
yb = y % Hb      …(2)
ここで、%はモジュロ（剰余）演算を表す
【００５２】
次に、量子化部103は、注目画素の値I1、加算値I1'、二値パターン画像の画素値B、二値パターン画像の階調値bg、および、閾値メモリ104が格納する量子化閾値thを比較して、出力画素値O1を決定する(S204)。量子化の詳細は後述する。
【００５３】
次に、誤差演算部105は、加算値I1'と、出力画素値O1との差分である量子化誤差E1を計算する(S205)。
E1 = I1' - O1      …(3)
【００５４】
次に、誤差拡散部106は、誤差の拡散処理を行い、累積誤差メモリ107が格納する誤差拡散値を更新する(S206)。誤差拡散部106は、注目画素の横方向位置xに応じて、下式のように、誤差を拡散する。
x＜Wの場合、E1(x+1) = E1(x+1) + E1×7/16
x＞1の場合、E1(x-1) = E1(x-1) + E1×3/16
1＜x＜Wの場合、  E1(x) = E10 + E1×5/16
x = 1の場合、  E1(x) = E10 + E1×8/16            …(4)
x = Wの場合、  E1(x) = E10 + E1×13/16
x＜Wの場合、    E10 = E1×1/16
x = Wの場合、    E10 = 0
【００５５】
つまり、注目画素の位置xがラインの両端以外の場合は、量子化誤差E1の7/16を注目画素の直後(x+1)の画素に分配し、残る9/16を注目画素が属するラインの次のラインに分配する。次のラインにおいて、注目画素と同じ位置xの画素（注目画素の真下の画素）に量子化誤差E1の5/16を分配する。そして、直前の画素（注目画素の左下の画素）と、直後の画素（注目画素の右下の画素）に量子化誤差E1の3/16と1/16を分配する。
【００５６】
また、注目画素の位置xがラインの先頭の場合は、量子化誤差E1の7/16を注目画素の直後(x+1)の画素に、8/16を注目画素の真下の画素に、1/16を注目画素の右下の画素に分配する。
【００５７】
また、注目画素の位置xがラインの末尾の場合は、量子化誤差E1のすべてを次のラインに分配する。つまり、量子化誤差E1の3/16を注目画素の左下の画素に、13/16を注目画素の真下の画素に分配する。
【００５８】
以上で、第一のチャネルの一画素分の二値化処理が完了する。そして、第一のチャネルの画像の全画素に二値化処理を施した場合は処理が終了し、未処理の画素がある場合はステップS201に戻り、上記の動作を繰り返す(S207)。
【００５９】
●量子化部103
図5は量子化部103の処理を説明するフローチャートである。
【００６０】
量子化部103は、注目画素の値I1と、二値パターン画像の階調値bgを比較する(S301)。なお、加算値I1'と、二値パターン画像の階調値bgを比較してもよい。続いて、二値パターン画像の画素値Bがオンドットを示すか否かを判定する(S302、S307)。
【００６１】
そして、量子化部103は、I1＞bgかつB=オンドットの場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=255にする(S306)。
I1 ＞ bg かつ B = 255の場合、O1 = 255      …(5)
【００６２】
また、量子化部103は、I1＞bgかつB=オフドットの場合は、加算値I1'と量子化閾値th（例えば128）を比較し(S303)、式(6)に示すように出力画素値O1を決定する(S304、S305)。
I1 ＞ bg かつ B = 0
かつ I1' ＜ thの場合、O1 = 0      …(6)
かつ I1' ≧ thの場合、O1 = 255
【００６３】
また、量子化部103は、I1≦bgかつB=オフドットの場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=0にする(S311)。
I1≦bg かつ B = 0の場合、O1 = 0      …(7)
【００６４】
また、量子化部103は、I1≦bgかつB=オンドットの場合は、加算値I1'と量子化閾値thを比較し(S308)、式(8)に示すように出力画素値O1を決定する(S309、S310)。
I1≦bg かつ B = 255
かつ I1'＜thの場合、O1 = 0      …(8)
かつ I1'≧thの場合、O1 = 255
【００６５】
●第二のチャネルの量子化
第二のチャネルの量子化処理の流れも図2に示される。
【００６６】
まず、画像データが走査順に入力端子109に入力される(S201)。
【００６７】
累積誤差加算部110は、入力された画素データ（量子化前の注目画素の値）に累積誤差メモリ114の画素位置に対応する誤差拡散値を加算する(S202)。
【００６８】
図6は累積誤差メモリ114が格納する誤差拡散値を説明する図である。累積誤差メモリ114は、一画素に対応する記憶領域E20と、主走査方向にW画素（画像の横サイズと同数）の記憶領域E(x)2(x=1〜W)を有し、後述する方法により誤差拡散値を格納する。記憶領域E2はすべて、処理開始前に初期値0に初期化される。
【００６９】
累積誤差加算部110は、式(9)に示すように、注目画素の横画素位置xに対応する記憶領域E2(x)に格納された誤差拡散値を注目画素に加算する。
I2' = I2 + E2(x)      …(9)
ここで、I2は注目画素の値
I2'は誤差拡散値を加算した注目画素の値（以下、加算値）
【００７０】
次に、二値パターンメモリ902は、注目画素の位置に対応する二値パターン画像の画素値Bと、二値パターン画像の階調値bgを出力する(S203)。
【００７１】
次に、量子化部111は、注目画素の値I2、加算値I2'、二値パターン画像の画素値B、二値パターン画像の階調値bg、および、閾値メモリ104が格納する量子化閾値thを比較して、出力画素値O2を決定する(S204)。量子化の詳細は後述する。
【００７２】
次に、誤差演算部112は、加算値I2'と、出力画素値O2との差分である量子化誤差E2を計算する(S205)。
E2 = I2' - O2      …(10)
【００７３】
次に、誤差拡散部113は、誤差の拡散処理を行い、累積誤差メモリ114が格納する誤差拡散値を更新する(S206)。誤差拡散部113は、注目画素の横方向位置xに応じて、誤差拡散部106と同様に、誤差を拡散する。
x＜Wの場合、E2(x+1) = E2(x+1) + E2×7/16
x＞1の場合、E2(x-1) = E2(x-1) + E2×3/16
1＜x＜Wの場合、  E2(x) = E20 + E2×5/16
x = 1の場合、  E2(x) = E20 + E2×8/16            …(11)
x = Wの場合、  E2(x) = E20 + E2×13/16
x＜Wの場合、    E20 = E2×1/16
x = Wの場合、    E20 = 0
【００７４】
以上で、第二のチャネルの一画素分の二値化処理が完了する。そして、第二のチャネルの画像の全画素に二値化処理を施した場合は処理が終了し、未処理の画素がある場合はステップS201に戻り、上記の動作を繰り返す(S207)。
【００７５】
●量子化部111
図7は量子化部111の処理を説明するフローチャートである。
【００７６】
量子化部111は、注目画素の値I2と、二値パターン画像の階調値bgを比較する(S601)。なお、加算値I2'と、二値パターン画像の階調値bgを比較してもよい。続いて、二値パターン画像の画素値Bがオンドットを示すか否かを判定する(S602、S607)。
【００７７】
そして、量子化部111は、I2＞bgかつB=オフドットの場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=255にする(S606)。
I2 ＞ bg かつ B = 0の場合、O2 = 255      …(12)
【００７８】
また、量子化部111は、I2＞bgかつB=オンドットの場合は、加算値I2'と量子化閾値th（例えば128）を比較し(S603)、式(13)に示すように出力画素値O2を決定する(S604、S605)。
I2 ＞ bg かつ B = 255
かつ I2' ＜ thの場合、O2 = 0      …(13)
かつ I2' ≧ thの場合、O2 = 255
【００７９】
また、量子化部111は、I2≦bgかつB=オンドットの場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=0にする(S611)。
I2 ≦ bg かつ B = 255の場合、O2 = 0      …(14)
【００８０】
また、量子化部111は、I2≦bgかつB=オフドットの場合は、加算値I2'と量子化閾値thを比較し(S608)、式(15)に示すように出力画素値O2を決定する(S609、S610)。
I2 ≦ bg かつ B = 0
かつ I2' ＜ thの場合、O2 = 0      …(15)
かつ I2' ≧ thの場合、O2 = 255
【００８１】
このように、第一のチャネルの量子化において、注目画素のI1が二値パターン画像の階調値bg以下の場合は、対応する二値パターン画像の画素値Bが255（オンドット）の画素からオンドットを形成する画素を選択する。また、画素値I1が階調値bgを超える場合は、対応する二値パターン画像の画素値Bが0（オフドット）の画素からオンドットを形成しない画素を選択する。
【００８２】
一方、第二のチャネルの量子化においては、第一のチャネルのオンドットと重ならないように、第二のチャネルのオンドットを配置するために、第一のチャネルとは逆の制御を行う。つまり、注目画素の画素値I2が階調値bg以下の場合は、対応する二値パターン画像の画素値Bが0（オフドット）の画素からオンドットを形成する画素を選択する。また、注目画素の画素値I2が階調値bgを超える場合は、対応する二値パターン画像の画素値Bが255（オンドット）の画素からオンドットを形成しない画素を選択する。言い換えれば、第一のチャネルの二値化と第二のチャネルの二値化において、オンドットを示す二値化値の決定条件が互いに逆である。
【００８３】
つまり、第一のチャネルの量子化においては、注目画素の値I1が階調値bg以下の（ドット記録率が低い）場合は、二値パターン画像の画素値Bが255（オンドット）である画素にしかオンドットを形成することができない。一方、第二のチャネルの量子化においては、注目画素の値I2が階調値bg以下の（ドット記録率が低い）場合は、二値パターン画像の画素値Bが0（オフドット）である画素にしかオンドットを形成することができない。従って、第一のチャネルと第二のチャネルの双方のドット記録率が低い場合は、オンドットを形成可能な画素が異なるため、両チャネルのドットの重畳を防ぐことができる。
【００８４】
さらに、両チャネルともに、オンドットを形成する、または、オンドットを形成しない画素は画像全体から自由に選択できるのではなく、対応する二値パターン画像の画素値Bがドットオンの画素から、または、ドットオフの画素から選択される。このため、二値パターン画像として、ドット配置の分散性が高いパターンを利用することで、ドットの規則的な形成を防ぐことができ、テクスチャの発生を抑制することができる。
【実施例２】
【００８５】
以下、本発明にかかる実施例2の画像処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００８６】
実施例1では、ドットの形成位置を制御する二値パターン画像を、第一のチャネルの量子化と第二のチャネルの量子化で共通に使用した。実施例2では、第一のチャネルの量子化と第二のチャネルの量子化に、異なる二値パターン画像を使用する例を説明する。
【００８７】
［装置の構成］
図8は実施例2の画像処理装置の構成例を示すブロック図である。図1に示す構成と異なるのは、両チャネルに共通の二値パターンメモリ102と閾値メモリ104の代わりに、チャネルごとに二値パターンメモリ802、811と閾値メモリ804、813を備えることである。
【００８８】
［二値パターン画像の設定］
二値パターンメモリ802と811は、それぞれ所定の階調bg1、bg2の二値パターン画像を予め記憶する。階調値bg1とbg2は次の関係をもち、次の関係を満たせば階調値bg1とbg2はそれぞれ任意の値をとることができる。なお、階調値bg1、bg2は、二値パターン画像のオンドット(B=255)の出現率に比例する。
0 ≦ (bg1 + bg2) ≦ 255      …(16)
【００８９】
また、二値パターンメモリ802と811が格納する二値パターン画像は、画素値B=255（オンドット）の画素の配置が排他的である必要がある。言い換えれば、二値パターンメモリ802が格納する二値パターン画像の画素値B1=255（ドットオン）の画素と同一位置の、二値パターンメモリ811が格納する二値パターン画像の画素は、画素値B2=0（オフドットオフ）である必要がある。同様に、二値パターンメモリ811が格納する二値パターン画像の画素値B2=255（オンドット）の画素と同一位置の、二値パターンメモリ802が格納する二値パターン画像の画素は、画素値B1=0（オフドット）である必要がある。
【００９０】
ドット配置が排他的であれば、二値パターンメモリ802と811が格納する二値パターン画像は任意のパターンでよい。ただし、テクスチャの発生を低減するために、二値パターン画像としてオンドット配置の分散性が高い、空間周波数がブルーノイズ特性をもつものが好ましい。
【００９１】
［量子化］
第一のチャネルの量子化は、実施例1で説明した量子化部103の処理において、二値パターン画像の階調値bgをbg1に、二値パターン画像の画素値BをB1に、量子化閾値thをth1に置き換えればよい。同様に、第二のチャネルの量子化は、実施例1で説明した量子化部111の処理において、二値パターン画像の階調値bgをbg2に、二値パターン画像の画素値BをB2に、量子化閾値thをth2に置き換えればよい。ただし、量子化部103と113はともに、図5（または図8）に示す処理によって出力画素値O1、O2を決定する点が、実施例1とは異なる。
【００９２】
実施例2においては、第一のチャネル用の二値パターン画像と、第二のチャネル用の二値パターン画像はオンドットの配置が排他的である。従って、両チャネルのドット記録率が低い場合、実施例1と同様、両チャネルのドットの重畳を防ぐことができる。
【実施例３】
【００９３】
以下、本発明にかかる実施例3の画像処理を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００９４】
実施例1では、入力画像が2チャネルの場合を説明した。ドットの形成位置を制御するパターンに多値パターンを利用すれば2チャネルを超える入力画像に対しても、ドットの重畳を防ぐことが可能である。例えば、3チャネルのドットの重畳を防ぐには、三値パターン画像を用いる。
【００９５】
［装置の構成］
図9は実施例3の画像処理装置の構成例を示すブロック図である。
【００９６】
実施例3の画像処理装置は、図1に示す構成に加え、第三のチャネルの画像データを入出力する端子914と920、および、第三のチャネル（対応チャネル）の画像データを量子化処理する構成を備える。量子化処理の構成は、加算器915、量子化部916、誤差演算部917、誤差拡散部918および累積誤差メモリ919である。さらに、三値パターン画像と、その階調値を格納する三値パターンメモリ921を備える。
【００９７】
［三値パターン画像の設定］
三値パターンメモリ921は、所定の階調bgの三値パターン画像を予め記憶する。三値パターン画像の画像サイズWb×Hb画素は任意である。三値パターン画像が入力画像よりも小さい場合は、二値パターン画像をタイル状に繰り返し配列することで、二値パターンを入力画像の各画素に対応させる。
【００９８】
三値パターン画像の各画素は、0、128、255の三値のうちの何れかの値をとる。三値パターン画像中の値が0、128、255である画素の割合（出現率）はそれぞれbg1、bg2、bg3である。割合bg1、bg2、bg3は任意値（0≦bg1, bg2, bg3≦1、実数）であるが、次式の関係が存在する。
bg1 + bg2 + bg3 = 1      …(17)
【００９９】
そして、式(18)で表されるbgを三値パターン画像の階調値とし、三値パターン画像とともに三値パターンメモリ921に記憶する。つまり、三値パターン画像の階調値bgは、三値パターン画像がもつ画素値と当該画素値の出現率の積を総和した値に等しい。
bg = 0×bg1 + 128×bg2 + 255×bg3
ここで、0 ≦ bg ≦255、整数            …(18)
【０１００】
三値パターン画像は、値0、128、255の画素を任意パターンで配置した画像である。ただし、テクスチャの発生を低減するために、三値パターン画像としてオンドット配置の分散性が高い、空間周波数がブルーノイズ特性をもつものが好ましい。ブルーノイズ特性をもつ三値パターン画像の発生方法は、どのような方法を用いてもよい。例えば、特開2000-059626公報に開示されたベイヤ型摂動組織的ディザ法を用いて、256階調のブルーノイズマスクを作成後、二段階の閾値を用いて三値化を行う方法がある
【０１０１】
三値パターンメモリ921は、三値パターン画像と、その階調値bgのほかに、三値の割合bg1、bg2、bg3を格納する。そして、入力端子116に入力される信号が示す注目画素の位置に対応する三値パターン画像の画素値Bと割合bg1〜bg3を出力する。
【０１０２】
［量子化］
●第一のチャネルの量子化
第一のチャネルの量子化は、実施例1で説明した図2に示す処理において、パターン画像の階調値bgをbg1×255に置き換えればよい。
【０１０３】
図10は量子化部103の処理を説明するフローチャートである。
【０１０４】
量子化部103は、注目画素の値I1と、値が0である画素の出現率bg1の正規化値bg1'=bg1×255を比較する(S1301)。なお、加算値I1'と、値bg1'を比較してもよい。続いて、三値パターン画像の画素値がB=0か否かを判定する(S1302、S1307)。
【０１０５】
そして、量子化部103は、I1＞bg1'かつB=0の場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=255にする(S1306)。
I1 ＞ bg1' かつ B = 0の場合、O1 = 255      …(19)
【０１０６】
また、量子化部103は、I1＞bg1'かつB≠0の場合は、加算値I1'と量子化閾値th（例えば128）を比較し(S1303)、式(20)に示すように出力画素値O1を決定する(S1304、S1305)。
I1 ＞ bg1' かつ B ≠ 0
かつ I1' ＜ thの場合、O1 = 0      …(20)
かつ I1' ≧ thの場合、O1 = 255
【０１０７】
また、量子化部103は、I1≦bg1'かつB≠0の場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=0にする(S1311)。
I1 ≦ bg1' かつ B ≠ 0の場合、O1 = 0      …(21)
【０１０８】
また、量子化部103は、I1≦bg1'かつB=0の場合は、加算値I1'と量子化閾値thを比較し(S1308)、式(22)に示すように出力画素値O1を決定する(S1309、S1310)。
I1 ≦ bg1' かつ B = 0
かつ I1' ＜ thの場合、O1 = 0      …(22)
かつ I1' ≧ thの場合、O1 = 255
【０１０９】
●第二のチャネルの量子化
第二のチャネルの量子化は、実施例1で説明した図2に示す処理において、パターン画像の階調値bgをbg2×255に置き換えればよい。
【０１１０】
図11は量子化部111の処理を説明するフローチャートである。
【０１１１】
量子化部111は、注目画素の値I2と、値が128である画素の出現率bg2の正規化値bg2'=bg2×255を比較する(S1601)。なお、加算値I2'と、値bg2'を比較してもよい。続いて、三値パターン画像の画素値がB=128か否かを判定する(S1602、S1607)。
【０１１２】
そして、量子化部111は、I2＞bg2'かつB=128の場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=255にする(S1606)。
I2 ＞ bg2' かつ B = 128の場合、O2 = 255      …(23)
【０１１３】
また、量子化部111は、I2＞bg2'かつB≠128の場合は、加算値I2'と量子化閾値th（例えば128）を比較し(S1603)、式(24)に示すように出力画素値O2を決定する(S1604、S1605)。
I2 ＞ bg2' かつ B ≠ 128
かつ I2' ＜ thの場合、O2 = 0      …(24)
かつ I2' ≧ thの場合、O2 = 255
【０１１４】
また、量子化部111は、I2≦bg2'かつB≠128の場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=0にする(S1611)。
I2 ≦ bg2' かつ B ≠ 128の場合、O2 = 0      …(25)
【０１１５】
また、量子化部111は、I2≦bg2'かつB=128の場合は、加算値I2'と量子化閾値thを比較し(S1608)、式(26)に示すように出力画素値O2を決定する(S1609、S1610)。
I2 ≦ bg2' かつ B = 128
かつ I2' ＜ thの場合、O2 = 0      …(26)
かつ I2' ≧ thの場合、O2 = 255
【０１１６】
●第三のチャネルの量子化
第三のチャネルの量子化は、実施例1で説明した図2に示す処理において、パターン画像の階調値bgをbg3×255に置き換えればよい。なお、第三のチャネルの累積誤差メモリ919は、図12に示すように、第一や第二のチャネルの累積誤差メモリ107、114と同様の構造である。従って、誤差拡散は、式(4)や(11)に示す方法において、添字「1」または「2」を「3」に置き換えればよい。
【０１１７】
図13は量子化部916の処理を説明するフローチャートである。
【０１１８】
量子化部916は、注目画素の値I3と、値が255である画素の出現率bg3の正規化値bg3'=bg3×255を比較する(S1701)。なお、加算値I3'と、値bg3'を比較してもよい。続いて、三値パターン画像の画素値がB=255か否かを判定する(S1702、S1707)。
【０１１９】
そして、量子化部916は、I3＞bg3'かつB=255の場合は、量子化閾値thと加算値I3'の大小関係に関わらず、出力画素値O3=255にする(S1706)。
I3＞bg3' かつ B = 255の場合、O3 = 255      …(27)
【０１２０】
また、量子化部916は、I3＞bg3'かつB≠255の場合は、加算値I3'と量子化閾値th（例えば128）を比較し(S1703)、式(28)に示すように出力画素値O3を決定する(S1704、S1705)。
I3 ＞ bg3' かつ B ≠ 255
かつ I3' ＜ thの場合、O3 = 0      …(28)
かつ I3' ≧thの場合、O3 = 255
【０１２１】
また、量子化部916は、I3≦bg3'かつB≠255の場合は、量子化閾値thと加算値I3'の大小関係に関わらず、出力画素値O3=0にする(S1711)。
I3 ≦ bg3' かつ B ≠ 255の場合、O3 = 0      …(29)
【０１２２】
また、量子化部916は、I3≦bg3'かつB=255の場合は、加算値I3'と量子化閾値thを比較し(S1708)、式(30)に示すように出力画素値O3を決定する(S1709、S1710)。
I3 ≦ bg3' かつ B = 255
かつ I3' ＜ thの場合、O3 = 0      …(30)
かつ I3' ≧ thの場合、O3 = 255
【実施例４】
【０１２３】
以下、本発明にかかる実施例4の画像処理を説明する。なお、実施例4において、実施例1〜3と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【０１２４】
実施例3では、ドットの形成位置を制御する多値パターン画像を、第一から第三のチャネルの量子化で共通に使用した。実施例4では、第一から第三のチャネルの量子化に、異なる多値パターン画像を使用する例を説明する。
【０１２５】
［装置の構成］
図14は実施例4の画像処理装置の構成例を示すブロック図である。
【０１２６】
実施例4の画像処理装置は、図8に示す構成に加え、第三のチャネルの画像データを入出力する端子914と920、および、第三のチャネルの画像データを量子化処理する構成を備える。量子化処理の構成は、加算器915、量子化部916、誤差演算部917、誤差拡散部918および累積誤差メモリ919、二値パターン画像と、その階調値を格納する二値パターンメモリ922、閾値メモリ923である。
【０１２７】
［二値パターン画像の設定］
二値パターンメモリ802、811、922は、それぞれ所定の階調bg1、bg2、bg3の二値パターン画像を予め記憶する。階調値bg1、bg2、bg3は次の関係をもち、次の関係を満たせば階調値bg1、bg2、bg3はそれぞれ任意の値をとることができる。
0 ≦ (bg1 + bg2 + bg3) ≦ 255      …(31)
【０１２８】
また、二値パターンメモリ802、811、922が格納する二値パターン画像は、画素値B=255（オンドット）の画素の配置が排他的である必要がある。言い換えれば、二値パターンメモリ802が格納する二値パターン画像の画素値B1=255の画素と同一位置の、二値パターンメモリ811と922が格納する二値パターン画像の画素は、画素値B2=B3=0である必要がある。同様に、二値パターンメモリ811が格納する二値パターン画像の画素値B2=255（オンドット）の画素と同一位置の、二値パターンメモリ802と922が格納する二値パターン画像の画素は、画素値B1=B3=0（オフドット）である必要がある。
【０１２９】
ドット配置が排他的であれば、二値パターンメモリ802、811、922が格納する二値パターン画像は任意のパターンでよい。ただし、テクスチャの発生を低減するために、二値パターン画像としてオンドット配置の分散性が高い、空間周波数がブルーノイズ特性をもつものが好ましい。
【０１３０】
［量子化］
第一のチャネルの量子化は、実施例1で説明した量子化部103の処理において、二値パターン画像の階調値bgをbg1に、二値パターン画像の画素値BをB1に、量子化閾値thをth1に置き換えればよい。同様に、第二のチャネルの量子化は、実施例1で説明した量子化部111の処理において、二値パターン画像の階調値bgをbg2に、二値パターン画像の画素値BをB2に、量子化閾値thをth2に置き換えればよい。同様に、第三のチャネルの量子化は、実施例1で説明した量子化部103または111の処理において、二値パターン画像の階調値bgをbg3に、二値パターン画像の画素値BをB3に、量子化閾値thをth3に置き換えればよい。そして、量子化部103、113、916はともに、図5（または図8）に示す処理によって出力画素値O1、O2、O3を決定する。
【実施例５】
【０１３１】
以下、本発明にかかる実施例5の画像処理を説明する。なお、実施例5において、実施例1〜4と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【０１３２】
実施例1、3では入力チャネル数に等しい階調数をもつパターン画像を用いて、各チャネルのドットの重畳を防いだ。実施例5では、入力画像の各画素を量子化する都度、つまり画素単位に、画素値を発生する方法を説明する。なお、数学的に正しい表現ではないが、以下では発生する画素値を乱数と呼ぶことにする。
【０１３３】
以下では、簡単のために、実施例1と同様に、入力が2チャネルの場合を説明するが、3チャネル以上への拡張は実施例3と同様に行うことができる。つまり、Nチャネルの入力に対しては、N値乱数を発生して、N値パターン画像の画素値の代わりにすればよい。
【０１３４】
［装置の構成］
図15は実施例5の画像処理装置の構成例を示すブロック図である。図1に示す構成と異なるのは、二値パターンメモリ102の代わりに、二値の乱数を発生する二値乱数発生器1202を備えることである。
【０１３５】
［二値乱数の発生］
二値乱数発生器1202が、画素単位に発生する乱数は0、255の二値のうちの何れかである。二値乱数発生器1202が発生する値255の割合（出現率）はrg255であリ、画素パターン（二値乱数パターン）の階調値はrg=255×rg255である。階調値rgは任意の値をとることができる。
【０１３６】
乱数発生器1202が発生する画素パターンも任意でよいが、テクスチャの発生を低減するために、画素パターンとして分散性が高い、二次元の空間周波数がブルーノイズ特性をもつものが好ましい。
【０１３７】
さらに、テクスチャの発生を低減するために、画素パターンの階調値rgを、誤差拡散によってテクスチャが発生する階調（入力画像が8ビットの場合、64階調、128階調、192階調など）に等しくすることが望ましい。
【０１３８】
［量子化］
●第一のチャネルの量子化
図16は画像処理装置の動作を説明するフローチャートである。図2に示す動作と異なるのは、二値パターン画像の画素値Bと階調値bgを入力する(S203)代わりに、二値の乱数Rを発生する(S403)ことである。また、二値乱数発生器602は、乱数Rの発生と併せて、二値乱数パターンの階調値rgを出力する。
【０１３９】
●量子化部103
図17は量子化部103の処理を説明するフローチャートである。
【０１４０】
量子化部103は、注目画素の値I1と、二値乱数パターンの階調値rgを比較する(S1401)。なお、加算値I1'と、二値乱数パターンの階調値rgを比較してもよい。続いて、二値の乱数Rがオンドットを示すか否かを判定する(S1402、S1407)。
【０１４１】
そして、量子化部103は、I1＞rgかつR=オンドットの場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=255にする(S1406)。
I1 ＞ rg かつ R = 255の場合、O1 = 255      …(32)
【０１４２】
また、量子化部103は、I1＞rgかつR=オフドットの場合は、加算値I1'と量子化閾値th（例えば128）を比較し(S1403)、式(33)に示すように出力画素値O1を決定する(S1404、S1405)。
I1 ＞ rg かつ R = 0
かつ I1' ＜ thの場合、O1 = 0      …(33)
かつ I1' ≧ thの場合、O1 = 255
【０１４３】
また、量子化部103は、I1≦rgかつR=オフドットの場合は、量子化閾値thと加算値I1'の大小関係に関わらず、出力画素値O1=0にする(S1411)。
I1 ≦ rg かつ R = 0の場合、O1 = 0      …(33)
【０１４４】
また、量子化部103は、I1≦rgかつR=オンドットの場合は、加算値I1'と量子化閾値thを比較し(S1408)、式(34)に示すように出力画素値O1を決定する(S1409、S1410)。
I1 ≦ rg かつ R = 255
かつ I1' ＜ thの場合、O1 = 0      …(34)
かつ I1' ≧ thの場合、O1 = 255
【０１４５】
●第二のチャネルの量子化
第二のチャネルの量子化処理の流れも図16に示される。
【０１４６】
●量子化部111
図18は量子化部111の処理を説明するフローチャートである。
【０１４７】
量子化部111は、注目画素の値I2と、二値乱数パターンの階調値rgを比較する(S1501)。なお、加算値I2'と、二値乱数パターンの階調値rgを比較してもよい。続いて、二値の乱数Rがオフドットを示すか否かを判定する(S1502、S1507)。
【０１４８】
そして、量子化部111は、I2＞rgかつR=オフドットの場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=255にする(S1506)。
I2 ＞ rg かつ R = 0の場合、O2 = 255      …(35)
【０１４９】
また、量子化部111は、I2＞rgかつR=オンドットの場合は、加算値I2'と量子化閾値th（例えば128）を比較し(S1503)、式(36)に示すように出力画素値O2を決定する(S1504、S1505)。
I2 ＞ rg かつ R = 255
かつ I2' ＜ thの場合、O2 = 0      …(36)
かつ I2' ≧ thの場合、O2 = 255
【０１５０】
また、量子化部111は、I2≦rgかつR=オンドットの場合は、量子化閾値thと加算値I2'の大小関係に関わらず、出力画素値O2=0にする(S1511)。
I2 ≦ rg かつ R = 255の場合、O2 = 0      …(37)
【０１５１】
また、量子化部111は、I2≦rgかつR=オフドットの場合は、加算値I2'と量子化閾値thを比較し(S1508)、式(38)に示すように出力画素値O2を決定する(S1509、S1510)。
I2 ≦ rg かつ R = 0
かつ I2' ＜ thの場合、O2 = 0      …(38)
かつ I2' ≧ thの場合、O2 = 255
【実施例６】
【０１５２】
以下、本発明にかかる実施例6の画像処理を説明する。なお、実施例6において、実施例1〜5と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【０１５３】
［装置の構成］
図19は実施例6の画像処理装置の構成例を示すブロック図である。
【０１５４】
入力端子1100、1103は、入力画像データを蓄積するメモリなどの記憶デバイス、あるいは、スキャナや撮像装置などの入力デバイスに接続する。それらデバイスから、入力端子1100はラスタ走査順に第一のチャネルの画像データが入力され、入力端子1103はラスタ走査順に第二のチャネルの画像データが入力される。なお、両チャネルの画像データは同期をとられて入力端子1100と1103に入力される。
【０１５５】
出力端子1102と1110は、記憶デバイス、あるいは、表示装置や印刷装置などの出力デバイスに接続する。出力端子1102は第一のチャネルの二値画像データを出力し、出力端子1110は第二のチャネルの二値画像データを出力する。なお、両チャネルの画像データは、バッファ1111によって同期をとられて出力端子1102と1110から出力される。
【０１５６】
量子化処理部1101は、通常の誤差拡散処理により第一のチャネルの画像データI1を二値化した画像データO1を出力する。なお、量子化処理部1101の擬似中間調処理の手法に制限はなく、ディザ法などでもよい。
【０１５７】
一方、第二のチャネルの量子化処理部は、第一のチャネルの画像データI1とO1を参照して、第二のチャネルの画像データI2を二値化した画像データO2を出力する。
【０１５８】
累積誤差加算部1104は、画素単位に、入力端子1103から入力される画像データに累積誤差メモリ1109に格納された誤差拡散値を加算する。量子化部1105は、詳細は後述するが、閾値メモリ1106が記憶する量子化閾値などに基づき、第二のチャネルの注目画素の量子化値を決定する。
【０１５９】
誤差演算部1107は、量子化部1105の入出力画像データから量子化誤差を演算する。誤差拡散部1108は、量子化誤差を量子化前の所定の画素に拡散するように、累積誤差メモリ1109が格納する誤差拡散値を更新する。
【０１６０】
［装置の動作］
図20は第二のチャネルの量子化処理部の動作を説明するフローチャートである。
【０１６１】
まず、注目画素の、第一のチャネルの入力画像データI1を入力し(S1201)、第一のチャネルの出力画像データO1を入力し(S1202)、第二のチャネルの入力画像データI2を入力する(S1203)。
【０１６２】
累積誤差加算部1104は、式(9)により、入力された画素データ（量子化前の注目画素の値）I2に累積誤差メモリ1109の画素位置に対応する誤差拡散値を加算した注目画素の値（加算値）I2'を出力する(S1204)。累積誤差メモリ1109が格納する誤差拡散値は図6と同様である。
【０１６３】
次に、量子化部1105は、注目画素の値I1、O1、I2、I2'、および、閾値メモリ1106が格納する量子化閾値th2を比較して、出力画素値O2を決定する(S1205)。量子化の詳細は後述する。
【０１６４】
次に、誤差演算部1107は、式(10)により、加算値I2'と、出力画素値O2との差分である量子化誤差E2を計算する(S1206)。
【０１６５】
次に、誤差拡散部1108は、誤差の拡散処理を行い、式(11)により、累積誤差メモリ1109が格納する誤差拡散値を更新する(S1207)。
【０１６６】
以上で、第二のチャネルの一画素分の二値化処理が完了する。そして、第二のチャネルの画像の全画素に二値化処理を施した場合は処理が終了し、未処理の画素がある場合はステップS1201に戻り、上記の動作を繰り返す(S1208)。
【０１６７】
●量子化部1105
図21は量子化部1105の処理を説明するフローチャートである。
【０１６８】
量子化部1105は、注目画素の値I1+I2と画像データの最大階調値（この例では255）を比較し(S2501)、第一のチャネルの出力値O1がオフドットか否かを判定する(S2502、S2507)。
【０１６９】
そして、量子化部1105は、I1+I2＞255かつO1=オフドットの場合は、量子化閾値th2と加算値I2'の大小関係に関わらず、出力画素値O2=255にする(S2508)。
I1 + I2 ＞ 255 かつ O1 = 0の場合、O2 = 255      …(39)
【０１７０】
また、量子化部1105は、I1+I2＞255gかつO1=オンドットの場合は、加算値I2'と量子化閾値th2（例えば128）を比較し(S2509)、式(40)に示すように出力画素値O2を決定する(S2510、S2511)。
I1 + I2 ＞ 255 かつ O1 = 255
かつ I2' ＜ th2の場合、O2 = 0      …(40)
かつ I2' ≧ th2の場合、O2 = 255
【０１７１】
また、量子化部1105は、I1+I2≦255かつO1=オンドットの場合は、量子化閾値th2と加算値I2'の大小関係に関わらず、出力画素値O2=0にする(S2506)。
I1 + I2 ≦ 255 かつ O1 = 255の場合、O2 = 0      …(41)
【０１７２】
また、量子化部1105は、I1+I2≦255かつO1=オフドットの場合は、加算値I2'と量子化閾値th2を比較し(S2503)、式(42)に示すように出力画素値O2を決定する(S2504、S2505)。
I1 + I2 ≦ 255 かつ O1 = 0
かつ I2' ＜ th2の場合、O2 = 0      …(42)
かつ I2' ≧ th2の場合、O2 = 255
【０１７３】
このように、同一位置の第一および第二のチャンネルの画素の値の合計が255以下の場合、第二のチャンネルは、第一のチャンネルがオフドットの場合にしかオンドットを形成することができない。従って、第一および第二のチャンネルの双方のドット記録率が低い場合、二つのチャンネルのオンドットの重畳を防ぐことができる。
【実施例７】
【０１７４】
以下、本発明にかかる実施例7の画像処理を説明する。なお、実施例7において、実施例1〜6と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【０１７５】
実施例6では、入力画像が2チャネルの場合を説明した。3チャネルを超える入力画像に対しても、ドットの重畳を防ぐことが可能である。
【０１７６】
［装置の構成］
図22は実施例7の画像処理装置の構成例を示すブロック図である。
【０１７７】
入力端子1203は、入力画像データを蓄積するメモリなどの記憶デバイス、あるいは、スキャナや撮像装置などの入力デバイスに接続する。それらデバイスから入力端子1203はラスタ走査順に第三のチャネルの画像データが入力される。なお、全チャネルの画像データは同期をとられて入力端子1100、1103、1203に入力される。
【０１７８】
出力端子1210は、記憶デバイス、あるいは、表示装置や印刷装置などの出力デバイスに接続する。出力端子1210は第三のチャネルの二値画像データを出力する。なお、全チャネルの画像データは、バッファ1111、1112によって同期をとられて出力端子1102、1110、1210から出力される。
【０１７９】
第三のチャネルの量子化処理部は、第一のチャネルの画像データI1とO1、並びに、第二のチャネルの画像データI2とO2を参照して、第三のチャネルの画像データI3を二値化した画像データO3を出力する。
【０１８０】
累積誤差加算部1204は、画素単位に、入力端子1203から入力される画像データに累積誤差メモリ1209に格納された誤差拡散値を加算する。量子化部1205は、詳細は後述するが、閾値メモリ1206が記憶する量子化閾値などに基づき、第三のチャネルの注目画素の量子化値を決定する。
【０１８１】
誤差演算部1207は、量子化部1205の入出力画像データから量子化誤差を演算する。誤差拡散部1208は、量子化誤差を量子化前の所定の画素に拡散するように、累積誤差メモリ1209が格納する誤差拡散値を更新する。
【０１８２】
［装置の動作］
図23は第三のチャネルの量子化処理部の動作を説明するフローチャートである。なお、第一、第二のチャネルの量子化処理の動作は実施例6と同じである。
【０１８３】
まず、注目画素の、第一のチャネルの入力画像データI1を入力し(S1211)、第一のチャネルの出力画像データO1を入力する(S1212)。さらに、第二のチャネルの入力画像データI2を入力し(S1213)、第二のチャネルの出力画像データO2を入力する(S1214)。そして、第三のチャネルの入力画像データI3を入力する(S1215)。
【０１８４】
累積誤差加算部1204は、式(9)により、入力された画素データ（量子化前の注目画素の値）I3に累積誤差メモリ1209の画素位置に対応する誤差拡散値を加算した注目画素の値（加算値）I3'を出力する(S1216)。累積誤差メモリ1209が格納する誤差拡散値は図6と同様である。
【０１８５】
次に、量子化部1205は、注目画素の値I1、O1、I2、O2、I3、I3'、および、閾値メモリ1206が格納する量子化閾値th3を比較して、出力画素値O3を決定する(S1217)。量子化の詳細は後述する。
【０１８６】
次に、誤差演算部1207は、式(10)により、加算値I3'と、出力画素値O3との差分である量子化誤差E3を計算する(S1218)。
【０１８７】
次に、誤差拡散部1208は、誤差の拡散処理を行い、式(11)により、累積誤差メモリ1209が格納する誤差拡散値を更新する(S1219)。
【０１８８】
以上で、第三のチャネルの一画素分の二値化処理が完了する。そして、第三のチャネルの画像の全画素に二値化処理を施した場合は処理が終了し、未処理の画素がある場合はステップS1211に戻り、上記の動作を繰り返す(S1220)。
【０１８９】
●量子化部1205
図24は量子化部1205の処理を説明するフローチャートである。
【０１９０】
量子化部1205は、注目画素の値I1+I2+I3と画像データの最大階調値（この例では255）を比較し(S901)、第一および第二のチャネルの出力値O1、O2がオフドットか否かを判定する(S902、S907)。
【０１９１】
そして、量子化部1205は、I1+I2+I3＞255かつO1=O2=オフドットの場合は、量子化閾値th3と加算値I3'の大小関係に関わらず、出力画素値O3=255にする(S908)。
I1 + I2 + I3 ＞ 255 かつ O1 = O2 = 0の場合、O3 = 255  …(43)
【０１９２】
また、量子化部1205は、I1+I2+I3＞255gかつO1=O2=オンドットの場合は、加算値I3'と量子化閾値th3（例えば128）を比較し(S2509)、式(44)に示すように出力画素値O3を決定する(S910、S911)。
I1 + I2 + I3 ＞ 255 かつ O1 =O2 = 255
かつ I3' ＜ th3の場合、O3 = 0      …(44)
かつ I3' ≧ th3の場合、O3 = 255
【０１９３】
また、量子化部1205は、I1+I2+I3≦255かつO1=O2=オンドットの場合は、量子化閾値th3と加算値I3'の大小関係に関わらず、出力画素値O3=0にする(S906)。
I1 + I2 + I3 ≦ 255 かつ O1 =  O2 = 255の場合、O3 = 0  …(45)
【０１９４】
また、量子化部1205は、I1+I2+I3≦255かつO1=O2=オフドットの場合は、加算値I3'と量子化閾値th3を比較し(S903)、式(46)に示すように出力画素値O3を決定する(S904、S905)。
I1 + I2 + I3 ≦ 255 かつ O1 =  O2 = 0
かつ I3' ＜ th3の場合、O3 = 0      …(46)
かつ I3' ≧ th3の場合、O3 = 255
【０１９５】
このように、同一位置の第一、第二、第三のチャンネルの画素の値の合計が255以下の場合、第二のチャンネルは、第一のチャンネルがオフドットの場合にしかオンドットを形成することができない。さらに、第三チャネルは、第一および第二のチャンネルがオフドットの場合にしかオンドットを形成することができない。従って、第一、第二、第三のチャンネルの全部のドット記録率が低い場合、三つのチャンネルのオンドットの重畳を防ぐことができる。
【０１９６】
［他の実施例］
なお、本発明は、複数の機器（例えばコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置、制御装置など）に適用してもよい。
【０１９７】
また、本発明の目的は、上記実施例の機能を実現するコンピュータプログラムを記録した記憶媒体をシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ（CPUやMPU）が前記コンピュータプログラムを実行することでも達成される。この場合、記憶媒体から読み出されたソフトウェア自体が上記実施例の機能を実現することになり、そのコンピュータプログラムと、そのコンピュータプログラムを記憶する、コンピュータが読み取り可能な記憶媒体は本発明を構成する。
【０１９８】
また、前記コンピュータプログラムの実行により上記機能が実現されるだけではない。つまり、そのコンピュータプログラムの指示により、コンピュータ上で稼働するオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、それによって上記機能が実現される場合も含む。
【０１９９】
また、前記コンピュータプログラムがコンピュータに接続された機能拡張カードやユニットのメモリに書き込まれていてもよい。つまり、そのコンピュータプログラムの指示により、前記カードやユニットのCPUなどが実際の処理の一部または全部を行い、それによって上記機能が実現される場合も含む。
【０２００】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応または関連するコンピュータプログラムが格納される。
【図面の簡単な説明】
【０２０１】
【図１】実施例1の画像処理装置の構成例を示すブロック図、
【図２】量子化処理を説明するフローチャート、
【図３】入力画像の走査を示す図、
【図４】累積誤差メモリが格納する誤差拡散値を説明する図、
【図５】量子化部の処理を説明するフローチャート、
【図６】累積誤差メモリが格納する誤差拡散値を説明する図、
【図７】量子化部の処理を説明するフローチャート、
【図８】実施例2の画像処理装置の構成例を示すブロック図、
【図９】実施例3の画像処理装置の構成例を示すブロック図、
【図１０】量子化部の処理を説明するフローチャート、
【図１１】量子化部の処理を説明するフローチャート、
【図１２】累積誤差メモリが格納する誤差拡散値を説明する図、
【図１３】量子化部の処理を説明するフローチャート、
【図１４】実施例4の画像処理装置の構成例を示すブロック図、
【図１５】実施例5の画像処理装置の構成例を示すブロック図、
【図１６】画像処理装置の動作を説明するフローチャート、
【図１７】量子化部の処理を説明するフローチャート、
【図１８】量子化部の処理を説明するフローチャート、
【図１９】実施例6の画像処理装置の構成例を示すブロック図、
【図２０】第二のチャネルの量子化処理部の動作を説明するフローチャート、
【図２１】量子化部1105の処理を説明するフローチャート、
【図２２】実施例7の画像処理装置の構成例を示すブロック図、
【図２３】第三のチャネルの量子化処理部の動作を説明するフローチャート、
【図２４】量子化部1205の処理を説明するフローチャートである。
【図１】
2008228101.tif 000003
【図２】
2008228101.tif 000004
【図３】
2008228101.tif 000005
【図４】
2008228101.tif 000006
【図５】
2008228101.tif 000007
【図６】
2008228101.tif 000008
【図７】
2008228101.tif 000009
【図８】
2008228101.tif 000010
【図９】
2008228101.tif 000011
【図１０】
2008228101.tif 000012
【図１１】
2008228101.tif 000013
【図１２】
2008228101.tif 000014
【図１３】
2008228101.tif 000015
【図１４】
2008228101.tif 000016
【図１５】
2008228101.tif 000017
【図１６】
2008228101.tif 000018
【図１７】
2008228101.tif 000019
【図１８】
2008228101.tif 000020
【図１９】
2008228101.tif 000021
【図２０】
2008228101.tif 000022
【図２１】
2008228101.tif 000023
【図２２】
2008228101.tif 000024
【図２３】
2008228101.tif 000025
【図２４】
2008228101.tif 000026