(57)【特許請求の範囲】
【請求項１】
入力画像データにおける注目画素の画素値と、複数の処理済み画素からの誤差値とを合算して補正値を算出する補正値算出手段と、
前記補正値算出手段によって得られる前記補正値と、予め設定された閾値とを比較して、二値あるいは多値の出力値を生成する量子化手段と、
前記量子化手段で生成される前記出力値と、前記補正値算出手段で算出される前記補正値との差分を算出して誤差値を得る誤差値算出手段と、
前記入力画像データの各画素に対応づけた記憶領域に、前記誤差値算出手段によって算出された前記誤差値を、前記処理済み画素の誤差値として記憶する誤差値記憶手段と、
前記誤差値記憶手段に記憶された誤差値を前記注目画素の周辺画素に拡散する誤差拡散フィルタ処理手段とを備えた画像データ処理装置において、
前記出力値が印刷時に使用するインク色が黒、シアン及びマゼンタのいずれかであって、かつ、前記注目画素の入力画像データが第１の所定値以下の場合もしくは前記閾値を含んで上下に設定される第２の所定値の範囲内である場合に、前記誤差値算出手段によって算出された誤差値を、少なくとも第一の分配誤差値と第二の分配誤差値との複数の分配誤差値に分配し、前記第一の分配誤差値を前記誤差値記憶手段の前記注目画素に対応する記憶領域に記憶させ、前記第二の分配誤差値を前記誤差値記憶手段の前記注目画素には対応しない記憶領域に記憶させる誤差値分配手段を備えたことを特徴とする画像データ処理装置。
【請求項２】
前記誤差値分配手段は、乱数発生手段を備え、当該乱数発生手段が発生した乱数に基づき算出される割合により、前記複数の分配誤差値に分配することを特徴とする請求項１に記載の画像データ処理装置。
【請求項３】
前記乱数は、正負の値の両方を含むことを特徴とする請求項２に記載の画像データ処理装置。
【請求項４】
前記誤差値分配手段は、前記第二の分配誤差値を所定比率で複数の分配誤差値にさらに分配し、前記注目画素には対応しない複数の記憶領域に記憶させることを特徴とする請求項１乃至３のいずれかに記載の画像データ処理装置。
【請求項５】
入力画像データにおける注目画素の画素値と、複数の処理済み画素からの誤差値とを合算して補正値を算出し、その補正値を予め設定された閾値と比較して二値あるいは多値の出力値を生成し、その出力値と前記補正値との差分を算出して誤差値を算出し、前記入力画像データの各画素に対応した記憶領域を用意して、算出された誤差値を前記処理済み画素の誤差値として記憶し、その記憶された誤差値を前記注目画素の周辺画素に拡散する画像データ処理方法において、
前記出力値が印刷時に使用するインク色が黒、シアン及びマゼンタのいずれかであって、かつ、前記注目画素の入力画像データが第１の所定値以下の場合もしくは前記閾値を含んで上下に設定される第２の所定値の範囲内である場合に、前記誤差値を、少なくとも第一の分配誤差値と第二の分配誤差値との複数の分配誤差値に分配し、前記第一の分配誤差値を前記誤差値記憶手段の前記注目画素に対応する記憶領域に記憶させ、前記第二の分配誤差値を前記誤差値記憶手段の前記注目画素には対応しない記憶領域に記憶させる画像データ処理方法。
【請求項６】
乱数発生手段が発生した乱数に基づき算出される割合により、前記複数の分配誤差値に分配することを特徴とする請求項５に記載の画像データ処理方法。
【請求項７】
前記乱数は、正負の値の両方を含むことを特徴とする請求項６に記載の画像データ処理方法。
【請求項８】
前記前記第二の分配誤差値を所定比率で複数の分配誤差値にさらに分配し、前記注目画素には対応しない複数の記憶領域に記憶させることを特徴とする請求項５乃至７のいずれかに記載の画像データ処理方法。
【請求項９】
請求項５乃至８のいずれかに記載の画像データ処理方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタやファクシミリ等の画像形成装置に用いる画像データ処理装置、画像データ処理方法及び画像データ処理プログラムに関するものである。
【０００２】
【従来の技術】
従来より、プリンタやファクシミリ等の画像形成装置においては、多階調画像を出力する場合に、２値(インクジェットプリンタの場合のインク滴等)の画像要素を配列することによって疑似階調表現に変換することが行われている。近年、インクジェットプリンタでは液滴の大きさを数種類用意してさらに高度な階調表現を行う工夫がなされているが、このような場合でも、多値階調レベルの入力画像データを２値レベルあるいは３値や４値の多値レベルまで変換する必要がある。以下において、２値と称する場合には、このような数個の多値レベルを含むものとする。従来から行われている疑似階調変換処理の一つに誤差拡散処理が挙げられる。
【０００３】
誤差拡散処理は、入力画像データにおける注目画素の画素値を閾値に基づいて２値化(インクジェットの場合であればインクを発射するかしないか)し、この２値化した値と２値化前の画素との誤差に所定の重み付けをして注目画素近傍の例えば印刷方向に隣接する画素の画素値に加算し、この加算されたデータを隣接する画素の新たな画素値として逐次的に２値化を行うものである。以下、図７を用いて具体的に説明する。図７は、従来の誤差拡散処理のアルゴリズムを示すブロック図である。
【０００４】
まず、入力画像データ中の処理を行う注目画素の画素値が入力値１０１として加算手段５１に入力される。次に、後述する補正用誤差値１０７を加算手段５１に加え、注目画素に対する補正値１０２を出力する。そして、その補正値１０２が閾値処理手段５２で所定の閾値１０３と比較される。閾値１０３は、例えば２５６階調で５０％の１２８等と設定する。補正値１０２がその閾値１０３を超える場合には、量子化された出力値１０４として１を出力し、対応位置でインクが発射される。閾値１０３を超えない場合には、量子化された出力値１０４は０となる。
【０００５】
次に、量子化された出力値１０４を入力画像データに応じた多階調レベルに変換した相対濃度値１０５を設定する（相対濃度値設定処理５３）。相対濃度値１０５は、出力値１０４が１であれば閾値１０３の値をとり、出力値１０４が０であればそのまま０となる。すなわち、例えば、入力画像データが２５６階調データの場合、相対濃度値１０５は、出力値１０４が１であれば閾値の１２８となり、出力値１０４が０であれば０となる。
【０００６】
そして、減算手段５４にて、相対濃度値１０５と補正値１０２との差を誤差値１０６として出力する。この誤差値１０６は、出力値１０４と補正された入力値である補正値１０２とを比べた差分であり、周囲に拡散すべき誤差値として認識される。上述の例では、補正値１０２が６４の場合は６４−０＝６４が誤差値１０６であり、補正値１０２が１５０の場合は１５０−１２８＝２２が誤差値１０６となる。出力された誤差値１０６は、画素毎にバッファに加算されて格納される。
【０００７】
次に、格納された誤差値１０６を誤差拡散フィルタ５６にかけて誤差を拡散させる。周知のフロイト・スタインバーグの誤差拡散フィルタでは、誤差値が注目画素に隣接する未処理の４つの画素にそれぞれ７，５，３，１の重み付けをもって拡散される。図８にフロイト・スタインバーグの誤差拡散フィルタの説明図を示す。このような＊で示される注目画素周辺の各画素について、重み付けされた誤差の一部が補正用誤差値１０７となり、加算手段５１において入力値１０１に加えられ、補正値１０２となる。例えば、誤差値１０６が６４の場合には、６４の７／１６が注目画素１１１の右隣画素１１２に加えられる。
【０００８】
【発明が解決しようとする課題】
以上のような従来の誤差拡散処理では、発生する誤差値を未処理の画素の画素値にフィードバックさせることによりマクロ的に濃度レベルの再現性が向上するが、ハイライト部や相対濃度値近傍等の特定の濃度領域においては、出力ドットが鎖状になったり、疑似輪郭として視認される問題点を有する。以下、入力画像データと出力結果の例を示した図を用いて説明する。図４は２５６階調の入力画像データの例であり、図９は従来の誤差拡散処理の出力サンプルを拡大して模式的に示した図である。図４の囲み部分１３１に対応する部分について拡大して示している。また、図１０は、誤差拡散処理を行う際に各画素のバッファに格納される誤差値をイメージ化した図である。図１０も図４の囲み部分１３１についての図である。ここでは、誤差値を０から２５５に正規化して示しており、値が大きい画素ほど濃色で、小さい画素ほど淡色で描画している。
【０００９】
例えば、図４に示すようなグラデーション画像を入力した場合に、従来の誤差拡散処理を行って出力すると、図９に拡大して示すような結果となる。すなわち、Ａの部分では全くドットが発生せず、Ｘの地点で急激にドットが発生してしまっている。このため、ドットの周期的な並びにより疑似輪郭と視認される。これは、図１０から分かるように、ハイライト領域に当たるＡの部分では、主走査方向の誤差が均一化してしまう傾向が見られるため、誤差を拡散してもうまくドットが散らばらないからである。
【００１０】
本発明は、上述の問題点を解決するためになされたものであり、誤差拡散処理において、誤差が均一化しやすい領域においても疑似輪郭を発生しない画像処理を可能にすることを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載の画像データ処理装置は、入力画像データにおける注目画素の画素値と、複数の処理済み画素からの誤差値とを合算して補正値を算出する補正値算出手段と、前記補正値算出手段によって得られる前記補正値と、予め設定された閾値とを比較して、二値あるいは多値の出力値を生成する量子化手段と、前記量子化手段で生成される前記出力値と、前記補正値算出手段で算出される前記補正値との差分を算出して誤差値を得る誤差値算出手段と、前記入力画像データの各画素に対応づけた記憶領域に、前記誤差値算出手段によって算出された前記誤差値を、前記処理済み画素の誤差値として記憶する誤差値記憶手段と、前記誤差値記憶手段に記憶された誤差値を前記注目画素の周辺画素に拡散する誤差拡散フィルタ処理手段とを備えた画像データ処理装置において、前記出力値が印刷時に使用するインク色が黒、シアン及びマゼンタのいずれかであって、かつ、前記注目画素の入力画像データが第１の所定値以下の場合もしくは前記閾値を含んで上下に設定される第２の所定値の範囲内である場合に、前記誤差値算出手段によって算出された誤差値を、少なくとも第一の分配誤差値と第二の分配誤差値との複数の分配誤差値に分配し、前記第一の分配誤差値を前記誤差値記憶手段の前記注目画素に対応する記憶領域に記憶させ、前記第二の分配誤差値を前記誤差値記憶手段の前記注目画素には対応しない記憶領域に記憶させる誤差値分配手段を備えたことを特徴とする。
【００１２】
この構成の画像データ処理装置では、誤差拡散処理において補正値算出手段により入力画像データにおける注目画素の画素値と複数の処理済み画素からの誤差値とを合算して補正値を算出し、算出された補正値を予め設定された閾値と比較して二値あるいは多値の出力値を生成し、生成された出力値と補正値との差分を算出して誤差値を得る。そして、誤差値が均一化しやすい白とグレーの境界であるハイライト部分や相対濃度値である閾値の近傍や疑似輪郭が視認されやすい使用インク色の場合にのみ、誤差値を複数の分配誤差値に分配し、分配誤差値を画素に対応する記憶領域に記憶する。そして、記憶された誤差値を前記注目画素の周辺画素に拡散する。従って、誤差値を意図的に離散化することが可能となり、誤差値の均一化による疑似輪郭の発生を防ぐ。
【００１３】
【００１４】
【００１５】
【００１６】
【００１７】
請求項２に記載の画像データ処理装置は、請求項１に記載の画像データ処理装置の構成に加え、前記誤差値分配手段は、乱数発生手段を備え、当該乱数発生手段が発生したに乱数に基づき算出される割合により、前記複数の分配誤差値に分配することを特徴とする。
【００１８】
この構成の画像データ処理装置では、請求項１に記載の画像データ処理装置の作用に加え、乱数によって分配する誤差値をランダム化している。従って、周辺に拡散させる誤差値がランダムに変化し、誤差値の均一化をより効果的に防いでいる。
【００１９】
請求項３に記載の画像データ処理装置は、請求項２に記載の画像データ処理装置の構成に加え、前記乱数は、正負の値の両方を含むことを特徴とする。この構成の画像データ処理装置では、請求項２に記載の画像データ処理装置の作用に加え、正負の乱数を使用するため、分配される誤差値が正負の値をとり、周辺に拡散する誤差がランダムに増減される。従って、この画像データ処理装置を搭載したインクジェットプリンタ等においてドットのオン・オフがランダム化され、ハイライト領域でのドットの発生がまばらになり、境界部分での段差が解消される。
【００２０】
請求項４に記載の画像データ処理装置は、請求項１乃至３のいずれかに記載の画像データ処理装置の構成に加え、前記誤差値分配手段は、前記第二の分配誤差値を所定比率で複数の分配誤差値にさらに分配し、前記注目画素には対応しない複数の記憶領域に記憶させることを特徴とする。
【００２１】
この構成の画像データ処理装置では、請求項１乃至３のいずれかに記載の画像データ処理装置の作用に加え、周辺画素に分配する誤差値に所望の重み付けをして、効果的な誤差拡散を行うことができる。従って、使用する画像形成装置のインク色や解像度等の条件により適宜変更することができる。
【００２２】
請求項５に記載の画像データ処理方法は、入力画像データにおける注目画素の画素値と、複数の処理済み画素からの誤差値とを合算して補正値を算出し、その補正値を予め設定された閾値と比較して二値あるいは多値の出力値を生成し、その出力値と前記補正値との差分を算出して誤差値を算出し、前記入力画像データの各画素に対応した記憶領域を用意して、算出された誤差値を前記処理済み画素の誤差値として記憶し、その記憶された誤差値を前記注目画素の周辺画素に拡散する画像データ処理方法において、前記出力値が印刷時に使用するインク色が黒、シアン及びマゼンタのいずれかであって、かつ、前記注目画素の入力画像データが第１の所定値以下の場合もしくは前記閾値を含んで上下に設定される第２の所定値の範囲内である場合に、前記誤差値を、少なくとも第一の分配誤差値と第二の分配誤差値との複数の分配誤差値に分配し、前記第一の分配誤差値を前記誤差値記憶手段の前記注目画素に対応する記憶領域に記憶させ、前記第二の分配誤差値を前記誤差値記憶手段の前記注目画素には対応しない記憶領域に記憶させる。
【００２３】
この構成の画像データ処理方法では、誤差拡散処理において生成される誤差値を、誤差値が均一化しやすい白とグレーの境界であるハイライト部分や相対濃度値である閾値の近傍、疑似輪郭が視認されやすい使用インク色の場合に複数の分配誤差値に分配し、分配誤差値を画素に対応する記憶領域に記憶する。そして、記憶された誤差値を注目画素の周辺画素に拡散する。従って、誤差値を意図的に離散化することが可能となり、誤差値の均一化による疑似輪郭の発生を防ぐ。
【００２４】
【００２５】
【００２６】
【００２７】
請求項６に記載の画像データ処理方法は、請求項５に記載の画像データ処理方法の構成に加え、乱数発生手段が発生した乱数に基づき算出される割合により、前記複数の分配誤差値に分配することを特徴とする。
【００２８】
この構成の画像データ処理方法では、請求項５に記載の画像データ処理方法の作用に加え、乱数によって分配する誤差値をランダム化している。従って、周辺に拡散させる誤差値がランダムに変化し、誤差値の均一化をより効果的に防いでいる。
【００２９】
請求項７に記載の画像データ処理方法は、請求項６に記載の画像データ処理方法の構成に加え、前記乱数は、正負の値の両方を含むことを特徴とする。この構成の画像データ処理方法では、請求項６に記載の画像データ処理方法の作用に加え、正負の乱数を使用するため、分配される誤差値が正負の値をとり、周辺に拡散する誤差がランダムに増減される。従って、この画像データ処理方法を利用したインクジェットプリンタ等においてドットのオン・オフがランダム化され、ハイライト領域でのドットの発生がまばらになり、境界部分での段差が解消される。
【００３０】
請求項８に記載の画像データ処理方法は、請求項５乃至７のいずれかに記載の画像データ処理方法の構成に加え、前記第二の分配誤差値を所定比率で複数の分配誤差値にさらに分配し、前記注目画素には対応しない複数の記憶領域に記憶させることを特徴とする。
【００３１】
この構成の画像データ処理方法では、請求項５乃至７のいずれかに記載の画像データ処理方法の作用に加え、周辺画素に分配する誤差値に所望の重み付けをして、効果的な誤差拡散を行うことができる。従って、この画像データ処理方法を使用する画像形成装置等のインク色や解像度等の条件により適宜変更することができる。
【００３２】
請求項９に記載のプログラムは、請求項５乃至８のいずれかに記載の画像データ処理方法をコンピュータに実行させることを特徴とする。この構成のプログラムでは、請求項５乃至８のいずれかに記載の画像データ処理方法の作用を奏することができる。
【００３３】
【発明の実施の形態】
以下、本発明の実施形態について、図面に基づいて説明する。本実施形態の画像データ処理装置は、インクジェットプリンタ等の画像形成装置に搭載されるものであり、ＣＰＵと、入力画像データや処理中のデータ、出力データを格納するＲＡＭと、画像データ処理プログラムを格納したＲＯＭにより構成され、ＣＰＵがＲＯＭから画像データ処理プログラムをＲＡＭに読み込んで実行することにより実現される。また、ＲＡＭ内には、誤差拡散処理で使用するために画素毎に記憶領域（バッファ）が用意されている。本実施形態においては、プログラム上の各種の処理を実行するＣＰＵが本発明の各手段に相当する。
【００３４】
図１は、本実施形態の画像データ処理装置で実行する誤差拡散処理のアルゴリズムを示すブロック図である。本実施形態の誤差拡散処理と、すでに説明した従来の誤差拡散処理との違いは、補正値２と相対濃度値５との差である誤差値６を複数の分配誤差値７に分配し、入力画像データにおける注目画素と、注目画素の周辺画素にそれぞれ対応させて記憶する誤差値分配処理５７を追加した点にある。
【００３５】
まず、処理を行う入力画像データにおける注目画素の画素値が入力値１として加算手段５１に入力される。次に、後述する補正用誤差値８を加算手段５１に加え、補正値２を出力する。そして、その補正値２を閾値処理５２を行い、所定の閾値３と比較する。補正値２がその閾値３を超える場合には、量子化された出力値４として１を出力し、インクジェットプリンタに本実施形態の画像データ処理装置が搭載されている場合には、対応位置でインクが発射される。閾値３を超えない場合には、量子化された出力値４は０となる。尚、閾値３は、本実施形態の場合２値化を想定しているので１つであるが、インク滴の大きさに大小があり、３値や４値にする場合には、複数の閾値３を設定する必要がある。
【００３６】
次に、量子化された出力値４を入力画像データに応じた多階調レベルの値に変換した相対濃度値５を相対濃度値設定処理５３を行って設定する。相対濃度値５は、出力値４が１であれば閾値３の値をとり、出力値４が０であればそのまま０となる。すなわち、例えば、２５６階調データで閾値３が１２８に設定されている場合、相対濃度値５は、出力値４が１であれば１２８となり、出力値４が０であれば０となる。
【００３７】
そして、減算手段５４にて、相対濃度値５と補正値２との差を誤差値６として出力する。上述の例では、補正値２が６４の場合は６４−０＝６４が誤差値６であり、補正値２が１５０の場合は１５０−１２８＝２２が誤差値６となる。出力された誤差値６は、所定条件に従って誤差値分配処理５７が行われる。誤差値分配処理５７の詳細については後述する。誤差値分配処理により周辺画素に分配された分配誤差値７は、画素毎に用意されたバッファに加算されて格納される（バッファ格納処理５５）。
【００３８】
次に、バッファに格納された値を、既に説明したフロイト・スタインバーグの誤差拡散フィルタ等の周知の誤差拡散フィルタ５６にかけて注目画素の周辺画素に拡散させる。このような注目画素周辺の各画素について、誤差拡散フィルタ５６にかけられたものが補正用誤差値８となり、加算手段５１において入力値１に加えられ、補正値２となる。
【００３９】
図２は、ＣＰＵが実行する誤差値分配処理５７の概略を説明するフローチャートである。フローチャートの各ステップについては、以下「Ｓ」と略す。誤差値分配処理は、相対濃度値５と補正値２とを減算して得られた誤差値６のうち所定割合を第一分配誤差値として注目画素に残し、残量を第二分配誤差値とし、さらに第二分配誤差値を複数の周辺画素に分配する。そして、得られた各画素についての分配誤差値７を各画素毎に用意されたバッファに加算して格納するものである。バッファに格納された加算結果の値が誤差拡散フィルタ５６に投入される。
【００４０】
まず、使用条件を満たしているか否かを判断し（Ｓ１）、誤差値分配処理を実行するかどうかを決定する。使用条件は、印刷に使用されるインク色や入力画像の濃度（入力値がどのような値か）等、本実施形態の画像データ処理装置を搭載する画像形成装置の仕様等に合わせて適宜設定すればよい。ここでは、現在処理を行っている注目画素の使用インク色が黒、シアン、マゼンタのいずれかに該当し、さらに、入力値１が２５６階調において２未満の場合に誤差値分配処理を実行するように条件を設定している。
【００４１】
使用インクによって条件を設定しているのは、使用インクがイエロー等の淡い色の場合に比べて、黒、シアン、マゼンタのような濃色の場合には、ドットが鎖状化した場合に目立ちやすいので、誤差値分配処理の効果が高いと考えられるためである。具体的には、どの色のインクを使用するかについて各画素毎にデータが与えられているので、その値を読みに行って判断する。また、入力値１を２未満に設定しているのは、白近傍のハイライト部分において疑似輪郭が視認されやすいので、これを誤差値分配処理により効果的に防ぐためである。入力値１に関する条件については、出力される量子化データが３値以上の多値の場合には、閾値近傍の範囲に入る場合を条件として加えてもよい。閾値３は相対濃度値５であり、この近傍にも疑似輪郭が発生しやすいからである。尚、使用条件は、このように使用インク色と入力値１に関する条件の両方を満たすように設定してもよいし、一方でもよい。もちろん、算出された誤差値６が一定値に満たない場合に実行する等、他の条件を設定してもよい。
【００４２】
使用条件が満たされない場合には（Ｓ１：ＮＯ）、その注目画素において発生した誤差値６については誤差値分配処理を行わず、誤差値６をそのまま注目画素に対応するバッファに加算して格納する（Ｓ６）。使用条件が満たされた場合には（Ｓ１：ＹＥＳ）、注目画素に残す第一分配誤差値と、注目画素の周辺画素に分配する第二分配誤差値との比率（分配率）を、乱数発生手段であるホワイトノイズテーブルに基づいて算出する（Ｓ２）。ホワイトノイズテーブルは、自然乱数をテーブル化したものであり、−２５５から＋２５５の振幅をもち、平均濃度を維持するため、マイナス方向とプラス方向の振幅を同値となるように設定されている。正負の振幅が同値であれば、振幅は２５５に限られるものではない。
【００４３】
分配率(Dis_rate(i,j))は、２次元ホワイトノイズテーブル(NT[x,y])の各要素に0xffを除算し、その商を得る以下の式で算出される。
Dis_rate(i,j) = NT[x,y] / 0xff
ここで、ホワイトノイズテーブルの縦方向及び横方向のサイズをそれぞれX_size、Y_sizeとすると、x,yは、それぞれX_size及びY_sizeを最大値として、Ｓ２の処理が実施される毎にインクリメントされる。ホワイトノイズテーブルが正負の振幅を有するため、算出される分配率は、正負両方の値をとりうる。
【００４４】
次に、注目画素において発生した誤差値(ED(i,j))にＳ２で算出された分配率(Dis_rate(i,j))を乗じて、周辺画素に分配すべき第二分配誤差値(Dis_value(i,j))を以下の式ように算出する（Ｓ３）。
Dis_value(i,j) = ED(i,j) × Dis_rate(i,j)
分配率が正負の値の両方をとりうるため、ここで算出される第二分配誤差値も正負の両方の値をとりうる。
【００４５】
次いで、注目画素の複数の周辺画素に第二分配誤差値を所定の比率で分配する。それぞれの周辺画素に分配する分配誤差値７は、第二分配誤差値に拡散マトリクスを用いることにより算出される（Ｓ４）。図３は、ここで用いる拡散マトリクスを模式的に示した図である。処理中の注目画素１２１について算出された第二分配誤差値を印字方向に隣接した画素１２２に２、そのさらに隣接した画素１２３に１の比率で分配している。拡散マトリクスは、図３に示すような１列のものに限らず、２列のような複数列のものを用いてもよい。インク色や解像度等の条件により適宜変更することができる。
【００４６】
そして、注目画素と周辺画素の各画素に対応するバッファに分配誤差値７を加算して格納する（Ｓ５）。加算される分配誤差値７は、本実施形態の拡散マトリクスを用いた場合には、注目画素のバッファ(ED_buf(i,j))については第一分配誤差値、すなわち注目画素の誤差値６から第二分配誤差値を差し引いた残量、注目画素の印刷方向に隣接する画素のバッファ(ED_buff(i+1,j))については第二分配誤差値の３分の２、そのさらに隣の画素のバッファ(ED_buff(i+2,j))については第二分配誤差値の３分の１である。式に示すと以下のようになる。
ED_buf(i,j) += ED(i,j) - Dis_value(i,j)
ED_buff(i+1,j) += Dis_value(i,j) × 0.6667
ED_buff(i+2,j) += Dis_value(i,j) × 0.3333
【００４７】
上述したように、正負の振幅をもつホワイトノイズテーブルを使用して分配率を算出するために、分配率が正負の値の両方をとり、これに基づいて算出される第二分配誤差値も、第二分配誤差値に拡散マトリクスを用いて算出する周辺画素毎の分配誤差値７も正負の両方の値をとりうる。従って、第二分配誤差値が正の値であれば、分配誤差値７を加算された周辺画素の誤差バッファの格納値は増加するが、負の値であれば分配誤差値７を加算された周辺画素の誤差バッファの格納値は減少する。また、注目画素の分配誤差値７として残される第一分配誤差値は、第二分配誤差値が正の値であれば当初の誤差値６よりも減少するが、第二分配誤差値が負の値であれば残量は当初の誤差値６よりも増大する。従って、注目画素において発生した誤差値６が微少であっても、ホワイトノイズテーブルによる乱数処理により第二分配誤差値がランダムにプラス・マイナスに変化するため、誤差値分配処理後に誤差拡散フィルタにより拡散される誤差の全体量が均一化せず、誤差の均一化による疑似輪郭の発生を防ぐことができる。
【００４８】
例えば、本実施形態の画像データ処理装置に図４のような２５６階調の画像を入力する。図４は、２５６階調の入力画像データの例である。囲み部分１３１は、白からグレーに変化するハイライト領域である。このハイライト領域について、誤差値分配処理を行うと、誤差拡散フィルタに入る前のバッファ格納値は図５のようになる。図５は、本実施形態の画像データ処理装置で誤差値分配処理後の各画素のバッファ格納値をイメージ化した図である。０から２５５に正規化して示しており、値が大きい画素ほど濃色で、小さい画素ほど淡色で描画している。従来の各画素のバッファに格納される誤差値が図１０に示すようにＡの部分で均一化しているのに比べ、図５に示すように、Ｂの部分ではばらつきをもって存在している。これは、注目画素において発生した誤差値６の一部を第二分配誤差値として周辺画素に分配することとし、さらに、ホワイトノイズテーブルを用いた乱数処理により第二分配誤差値をランダムにプラス・マイナスに変化させ、周辺画素に分配される分配誤差値７を意図的に離散化したためである。これを誤差拡散フィルタにかけた後に出力すると、図６のようになる。図６は、本実施形態の誤差拡散処理の出力サンプルを拡大して模式的に示した図である。従来の出力サンプルである図９に比べると、ドットの配置に規則性がなく、Ｂの部分で緩やかにドットが発生し、Ｙの地点でも疑似輪郭とは視認されない。
【００４９】
【発明の効果】
上記説明から明らかなように、請求項１に記載の画像データ処理装置によれば、誤差拡散処理において生成される誤差値を、誤差値が均一化しやすい白とグレーの境界であるハイライト部分や相対濃度値である閾値の近傍において複数の分配誤差値に分配し、分配誤差値を画素に対応する記憶領域に記憶する。そして、記憶された誤差値を周辺画素に拡散する。さらに、濃いインク色を用いるときに疑似輪郭は発生しやすいので、使用インク色によって分配を行うか否かの条件を付けている。従って、誤差値を意図的に離散化することが可能となり、誤差値の均一化による疑似輪郭の発生を防ぐことができる。
【００５０】
【００５１】
【００５２】
請求項２に記載の画像データ処理装置によれば、請求項１に記載の画像データ処理装置の効果に加え、乱数によって分配する誤差値をランダム化している。従って、周辺に拡散させる誤差値がランダムに変化し、誤差値の均一化をより効果的に防ぐことができる。
【００５３】
請求項３に記載の画像データ処理装置によれば、請求項２に記載の画像データ処理装置の効果に加え、正負の乱数を使用するため、周辺に拡散する誤差がランダムに増減される。従って、この画像データ処理装置を搭載したインクジェットプリンタ等においてドットのオン・オフがランダム化され、ハイライト領域でのドットの発生がまばらになり、境界部分での段差が解消できる。
【００５４】
請求項４に記載の画像データ処理装置によれば、請求項１乃至３のいずれかに記載の画像データ処理装置の効果に加え、周辺画素に分配する誤差値に所望の重み付けをして、効果的な誤差拡散を行うことができる。従って、使用する画像形成装置のインク色や解像度等の条件により適宜変更することができる。
【００５５】
請求項５に記載の画像データ処理方法によれば、誤差拡散処理において誤差値が均一化しやすい白とグレーの境界であるハイライト部分や相対濃度値である閾値の近傍においてのみ、生成される誤差値を複数の分配誤差値に分配し、分配誤差値を画素に対応する記憶領域に記憶する。さらに、濃いインク色を用いるときに疑似輪郭は発生しやすいので、使用インク色によって分配を行うか否かの条件を付けている。従って、誤差値を意図的に離散化することが可能となり、誤差値の均一化による疑似輪郭の発生を防ぐことができる。
【００５６】
【００５７】
【００５８】
請求項６に記載の画像データ処理方法によれば、請求項５に記載の画像データ処理方法の効果に加え、乱数によって分配する誤差値をランダム化している。従って、周辺に拡散させる誤差値がランダムに変化し、誤差値の均一化をより効果的に防ぐことができる。
【００５９】
請求項７に記載の画像データ処理方法によれば、請求項６に記載の画像データ処理方法の効果に加え、正負の乱数を使用するため、周辺に拡散する誤差がランダムに増減されされる。従って、この画像データ処理方法を利用したインクジェットプリンタ等においてドットのオン・オフがランダム化され、ハイライト領域でのドットの発生がまばらになり、境界部分での段差が解消できる。
【００６０】
請求項８に記載の画像データ処理方法によれば、請求項５乃至７のいずれかに記載の画像データ処理方法の効果に加え、周辺画素に分配する誤差値に所望の重み付けをして、効果的な誤差拡散を行うことができる。従って、使用する画像形成装置のインク色や解像度等の条件により適宜変更することができる。
【００６１】
請求項９に記載のプログラムは、請求項５乃至８のいずれかに記載の画像データ処理方法の効果を奏することができる。
【図面の簡単な説明】
【図１】本実施形態の画像データ処理装置のＣＰＵが実行する誤差拡散処理のアルゴリズムを示すブロック図である。
【図２】誤差値分配処理の概略を説明するフローチャートである。
【図３】拡散マトリクスを模式的に示した図である。
【図４】２５６階調の入力画像データの例である。
【図５】本実施形態の画像データ処理装置で誤差値分配処理後の各画素のバッファ格納値をイメージ化した図である。
【図６】本実施形態の誤差拡散処理の出力サンプルを拡大して模式的に示した図である。
【図７】従来の誤差拡散処理のアルゴリズムを示すブロック図である。
【図８】フロイト・スタインバーグの誤差拡散フィルタの説明図である。
【図９】従来の誤差拡散処理の出力サンプルを拡大して模式的に示した図である。
【図１０】従来の誤差拡散処理を行う際に各画素各画素のバッファに格納される誤差値をイメージ化した図である。
【符号の説明】
１      入力値
２      補正値
３      閾値
４      出力値
５      相対濃度値
６      誤差値
７      分配誤差値
８      補正用誤差値
５１      加算手段
５２      閾値処理手段
５３      相対濃度値設定手段
５４      減算手段
５５      誤差バッファ
５６      誤差拡散フィルタ
【図１】
0004061962.tif 000002
【図２】
0004061962.tif 000003
【図３】
0004061962.tif 000004
【図４】
0004061962.tif 000005
【図５】
0004061962.tif 000006
【図６】
0004061962.tif 000007
【図７】
0004061962.tif 000008
【図８】
0004061962.tif 000009
【図９】
0004061962.tif 000010
【図１０】
0004061962.tif 000011