(57)【要約】【課題】誤差拡散法を適用した画像処理において、ハイライト部でのワームノイズの発生を防止し粒状性を改善すること。【解決手段】入力データＤ１に対して誤差拡散法を適用し階調数を低減した出力データＤ４を出力する画像処理装置１であって、データ値が２次元的に所定の周期で繰り返されるとともに、当該入力データの注目画素の濃度値に応じて周期が変更されるスクリーンノイズを生成するスクリーンノイズ生成部３１と、入力データにスクリーンノイズを加算するノイズ加算部１２１とを有し、入力データにスクリーンノイズを加算した画像データＤ２に対して誤差拡散処理を行い、入力データの低濃度部分におけるオンドットまたは高濃度部分におけるオフドットが、スクリーンノイズにおける特定のデータ値の配置された位置に現れるように誘導するように構成される。【選択図】      図１
2004274179.tif 000002
【特許請求の範囲】
【請求項１】
入力データに対して誤差拡散法を適用し階調数を低減した出力データを出力する画像処理方法であって、
前記入力データの低濃度部分または高濃度部分に対し、データ値が２次元的に所定の周期で繰り返されるノイズデータを加え、
前記入力データの低濃度部分におけるオンドットまたは高濃度部分におけるオフドットが、前記ノイズデータの特定のデータ値が配置された位置に現れるように誘導する、
ことを特徴とする画像処理方法。
【請求項２】
入力データに対して誤差拡散法を適用し階調数を低減した出力データを出力する画像処理装置であって、
データ値が２次元的に所定の周期で繰り返されるとともに、当該入力データの注目画素の濃度値に応じて前記周期が変更されるスクリーンノイズを生成するスクリーンノイズ生成部と、
前記入力データに前記スクリーンノイズを加算するノイズ加算部と、
を有し、
前記入力データに前記スクリーンノイズを加算した画像データに対して誤差拡散処理を行い、前記入力データの低濃度部分におけるオンドットまたは高濃度部分におけるオフドットが、前記スクリーンノイズにおける特定のデータ値の配置された位置に現れるように誘導するように構成されてなる、
ことを特徴とする画像処理装置。
【請求項３】
前記スクリーンノイズのスクリーン角は、周期の変更にかかわらず一定である、
請求項２記載の画像処理装置。
【請求項４】
前記入力データは、Ｙ、Ｍ、Ｃ、Ｋの各カラーのデータであり、
前記スクリーンノイズのスクリーン角は、Ｙ、Ｍ、Ｃ、Ｋの各カラーに対して互いに異なる、
請求項３記載の画像処理装置。
【請求項５】
前記スクリーンノイズ生成部は、
複数のノイズデータを格納するノイズテーブルと、
前記ノイズテーブルからノイズデータを読み出すためのアドレスを前記入力データの注目画素の濃度値に応じて生成するアドレス生成部と、
複数のゲインデータを格納するゲインテーブルと、
前記ノイズテーブルから読み出したノイズデータに前記ゲインテーブルから読み出したゲインデータを掛け合わせて前記スクリーンノイズを出力する演算部と、
を有する請求項２ないし４のいずれかに記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、誤差拡散法を適用して擬似中間調表現を行うための画像処理方法および装置に関する。
【０００２】
【従来の技術】
従来より、レーザプリンタまたは複写機などにおいて、写真画像などの中間調の原画像を忠実に再現するために、ディザ法又は誤差拡散法などの低値化処理法が用いられている。
【０００３】
誤差拡散法は、写真画像などの中間調の原画像を低値化して再現することができる擬似中間調表現法の一つである。誤差拡散法では、原画像の階調レベルを一定の閾値によって低値化データに低値化し、注目画素の濃度値（データ値）とそれに対応する低値化データの濃度値との誤差を一定範囲の複数の周辺画素に重み付けして分配する。誤差拡散法によると、原画像の濃度が保たれるので比較的忠実な画像を得ることができる。ディザ法と比較しても、解像度および階調性ともに優れる。
【０００４】
しかし、誤差拡散法によった場合は、画像の粒状性が悪いという欠点がある。特に、ハイライト部（低濃度部分）における粒状性の悪さが目立ち、これが画像全体の画質を低下させることとなる。これは、ハイライト部において、ある特定方向にドットがつながったテクスチャが発生することに起因する。そのようなテクスチャは一般にワームノイズと呼ばれている。
【０００５】
また、誤差拡散法では、特定の階調においてパターンが整然と配列され、これによって擬似階調が発生し、例えば画像の階調に段差ができてその境界部分に直線が存在するかのように見えることがある。
【０００６】
このような欠点を補うために、入力データにランダムノイズを重畳することが行われている（特開２０００−２８７０８６）。
【０００７】
【特許文献】
特開２０００−２８７０８６
【０００８】
【発明が解決しようとする課題】
上に述べた文献に記載の方法によると、入力される画素データの階調レベルに応じてランダムノイズを生成し、画素データが多値誤差拡散処理される前に、ランダムノイズを画素データに重畳する。
【０００９】
この従来の方法によると、ある程度の改善効果は得られるが、ハイライト部の様にドットがまばらに分布している画像（低周波画像）に対しては、スクリーンのような高周波ノイズを単純に重畳するだけでは変調効果が得られず、ワームノイズをなくすことができない。
【００１０】
本発明は、上述の問題に鑑みてなされたものであり、誤差拡散法を適用した画像処理において、ハイライト部でのワームノイズの発生を防止し粒状性を改善することを目的とする。
【００１１】
【課題を解決するための手段】
本発明に係る方法は、入力データに対して誤差拡散法を適用し階調数を低減した出力データを出力する画像処理方法であって、前記入力データの低濃度部分または高濃度部分に対し、データ値が２次元的に所定の周期で繰り返されるノイズデータを加え、前記入力データの低濃度部分におけるオンドットまたは高濃度部分におけるオフドットが、前記ノイズデータの特定のデータ値が配置された位置に現れるように誘導する。
【００１２】
本発明に係る装置は、データ値が２次元的に所定の周期で繰り返されるとともに、当該入力データの注目画素の濃度値に応じて前記周期が変更されるスクリーンノイズを生成するスクリーンノイズ生成部と、前記入力データに前記スクリーンノイズを加算するノイズ加算部と、を有し、前記入力データに前記スクリーンノイズを加算した画像データに対して誤差拡散処理を行い、前記入力データの低濃度部分におけるオンドットまたは高濃度部分におけるオフドットが、前記スクリーンノイズにおける特定のデータ値の配置された位置に現れるように誘導するように構成される。
【００１３】
好ましくは、前記スクリーンノイズのスクリーン角は、周期の変更にかかわらず一定である。
また、前記入力データは、Ｙ、Ｍ、Ｃ、Ｋの各カラーのデータであり、前記スクリーンノイズのスクリーン角は、Ｙ、Ｍ、Ｃ、Ｋの各カラーに対して互いに異なる。
【００１４】
また、前記スクリーンノイズ生成部は、複数のノイズデータを格納するノイズテーブルと、前記ノイズテーブルからノイズデータを読み出すためのアドレスを前記入力データの注目画素の濃度値に応じて生成するアドレス生成部と、複数のゲインデータを格納するゲインテーブルと、前記ノイズテーブルから読み出したノイズデータに前記ゲインテーブルから読み出したゲインデータを掛け合わせて前記スクリーンノイズを出力する演算部とを有する。
【００１５】
【発明の実施の形態】
図１は本発明に係る一実施形態の画像処理装置１を示すブロック図、図２は周期倍率テーブルＴＢ１の例を示す図、図３は入力データＤ１と周期倍率ＭＰとの関係の例を示すグラフ、図４はノイズテーブル１１２の読み出しのためのアドレスの例を示す図、図５はノイズテーブル１１２の例を示す図、図６はサブマトリクスＳＮＭの例を示す図、図７はスクリーンノイズＳＮの例を示す図、図８はサブマトリクスＳＮＭのノイズデータＤＮの実際のデータ値の例を示す図、図９はゲインテーブル１１３の例を示す図、図１０は入力データＤ１のデータ値とゲインとの関係の例を示すグラフ、図１１はスクリーンノイズＳＮの例を示す図である。
【００１６】
図１に示す画像処理装置１は、２５６階調数（８ビット）の入力データ（入力画像データ）Ｄ１に対して誤差拡散処理を行い、それよりも階調数の低い２値の出力データ（出力画像データ）Ｄ４を出力する。出力データＤ４の階調数としては、出力装置の階調数に応じて、例えば、４階調（２ビット）、８階調（３ビット）、１６階調（４ビット）などとしてもよい。
【００１７】
このような画像処理装置１は、例えば、複写機、プリンタ装置、画像読取り装置、またはパーソナルコンピュータなどを用いた画像処理装置の一部の機能として用いられる。つまり、例えば、ＣＣＤイメージセンサ、Ａ／Ｄ変換部、シェーディング補正部、ｌｏｇ変換部、ＨＶＣ変換部、ＵＣＲ処理部、ＢＰ処理部、色補正部などを経由して出力されるカラーの入力データＤ１に対して誤差拡散処理を行い、出力データＤ４を出力する。出力データＤ４は、その後、例えば、γ補正部、印字位置制御部、Ｄ／Ａ変換部などを経由してプリントエンジンに出力される。またはディスプレイ装置に出力される。
【００１８】
さて、図１に示すように、画像処理装置１は、スクリーンノイズ生成部３１、加算部３２、比較部３３、および誤差算出部３４からなる。
本実施形態の画像処理装置１においては、誤差拡散処理を行うに当たり、入力データＤ１のハイライト部（低濃度部分）または高濃度部分に対し、データ値（濃度値、または階調値）が２次元的に所定の周期で繰り返されるノイズデータを加える。これにより、入力データＤ１のハイライト部におけるオンドット（黒ドットまたはカラードット）または高濃度部分におけるオフドット（白ドット）が、ノイズデータの特定のデータ値が配置された位置に周期的に現れるように誘導する。
【００１９】
スクリーンノイズ生成部３１は、スクリーンノイズを生成する。加算部３２は、入力データＤ１にスクリーンノイズおよび誤差データを加算する。比較部３３は、加算された入力データＤ３としきい値ＤＳとを比較し、入力データＤ３が大きい場合に出力をオンし、小さい場合に出力をオフする。このオンオフの信号が出力データＤ４である。なお、出力データＤ４は、「Ｈ」と「Ｌ」または「１」と「０」の１ビットの状態値で表すこともできる。誤差算出部３４は、２値化後の出力データＤ４と２値化前の入力データＤ３との誤差を算出する。
【００２０】
図６に示すように、入力データＤ１に重畳されるノイズデータは、二次元のサブマトリクスＳＮＭからなるスクリーンノイズである。図６に示す小さい方のサブマトリクスＳＮＭ１は、１３個の要素（画素領域）からなり、基本となるサブマトリクス（基準サブマトリクス）である。大きい方のサブマトリクスＳＮＭ２は、縦横ともにサブマトリクスＳＮＭ１の２倍の大きさであり、５２個の要素からなる。
【００２１】
これらのサブマトリクスＳＮＭは、図７に示すように、それぞれ隙間がないように繰り返して二次元的に配置される。これによって、入力データＤ１の画像領域の全体に重畳するスクリーンノイズＳＮが形成される。
【００２２】
サブマトリクスＳＮＭが繰り返される周期は、サブマトリクスＳＮＭ２の場合がサブマトリクスＳＮＭ１の場合の２倍である。基準サブマトリクスであるサブマトリクスＳＮＭ１の周期を基準とした場合に、つまりサブマトリクスＳＮＭ１の周期倍率を「１」とした場合に、サブマトリクスＳＮＭ２の周期倍率は「２」となる。
【００２３】
また、図７によく示されるように、スクリーンノイズＳＮはスクリーン角を持っており、この例の場合は３３．７度である。図７で分かるように、サブマトリクスＳＮＭのサイズが異なってもスクリーン角は一定である。
【００２４】
図６に示すサブマトリクスＳＮＭ１は、図５に示すノイズテーブル１１２の一部を切り取ったものと考えてよい。図５に示すノイズテーブル１１２は、水平方向（横方向またはｘ方向）および垂直方向（縦方向またはｙ方向）にそれぞれ０〜１２のアドレスを有する１３×１３のサイズのマトリクス（ノイズマトリクス）である。マトリクスの各枡目（各画素）には、ノイズデータＤＮが格納されている。ノイズテーブル１１２からサブマトリクスＳＮＭ１を図７に示す配列のように切り出したときに、いずれのサブマトリクスＳＮＭ１も互いに同じ内容のノイズデータＤＮを同じ配置で有するように、ノイズテーブル１１２の各枡目のノイズデータＤＮのデータ値が決められている。
【００２５】
したがって、ノイズテーブル１１２を右から左へ且つ上から下へとスキャンするように、ノイズデータＤＮを読み出すことによって、図７の左側に示すスクリーンノイズＳＮ１のノイズデータＤＮを得ることができる。
【００２６】
また、その際に、ノイズテーブル１１２の各枡目を２回ずつ重複して読み出すことにより、図７の右側に示すスクリーンノイズＳＮ２のノイズデータＤＮを得ることができる。
【００２７】
すなわち、ノイズテーブル１１２からノイズデータＤＮを読み出すためのアドレスの指定の仕方によって、サイズの異なるサブマトリクスＳＮＭを得ることができ、且つ、周期の異なるスクリーンノイズＳＮを得ることができる。
【００２８】
いずれの場合も、スクリーンノイズＳＮにおける各サブマトリクスＳＮＭの右上の画素または画素群のノイズデータＤＮのデータ値（１３）が最も大きいので、その位置（図７の黒ドットの位置）に対応する入力データＤ１が入力されたときに比較部３３に入力される入力データＤ３の値が最も大きくなり、その位置に実際のドット（オンドット）が現れ易くなる。つまり、スクリーンノイズＳＮによって、各サブマトリクスＳＮＭの右上の位置にドットが現れるように誘導される。
【００２９】
また、スクリーンノイズＳＮにおける各サブマトリクスＳＮＭの右下の画素または画素群のノイズデータＤＮのデータ値（１）が最も小さいので、その位置に対応する入力データＤ１が入力されたときに比較部３３に入力される入力データＤ３の値が最も小さくなり、その位置に実際のオフドットが現れ易くなる。
【００３０】
なお、ノイズテーブル１１２およびサブマトリクスＳＮＭに示すノイズデータＤＮのデータ値として、１〜１３までの数値が示されているが、これは説明のための便宜上の数値である。実際には、例えば図８に示すように、各サブマトリクスＳＮＭにおいてノイズデータＤＮの値の平均値が「０」となるような数値が選定される。
【００３１】
次に、画像処理装置１の各部について詳しく説明する。
図１において、スクリーンノイズ生成部３１は、パラメータ格納部１１０、アドレス生成部１１１、ノイズテーブル１１２、ゲインテーブル１１３、および乗算器１１４からなる。加算部３２は、ノイズ加算部１２１、および誤差加算部１２２からなる。誤差算出部３４は、誤差積分部１４１、および減算器１４２からなる。
【００３２】
パラメータ格納部１１０は、入力データＤ１のデータ値（濃度値）に対するスクリーンノイズの周期倍率ＭＰについての情報である周期倍率テーブルＴＢ、スクリーンノイズのマトリクスサイズについての情報、その他の情報またはパラメータを格納する。
【００３３】
図２に示す周期倍率テーブルＴＢ１は、データ値とスクリーンノイズの周期倍率ＭＰとの対応を示すテーブルである。周期倍率テーブルＴＢによると、例えば、入力データＤ１のデータ値が「１」である場合に、周期倍率ＭＰは「４．４４」である。同様に、入力データＤ１のデータ値が「２」「３」「４」である場合に、周期倍率ＭＰは「３．１４」「２．５６」「２．２２」である。データ値が「１」〜「１６」および「２４０」〜「２５５」の場合に、周期倍率ＭＰが「１．１」を越える。データ値が「１７」〜「２３９」の場合には周期倍率ＭＰが「１．１」以下であり、特にデータ値が「２０」〜「２３６」の場合には周期倍率ＭＰが「１」である。
【００３４】
これらの値は、次の（１）式に基づいて算出される。但し、算出された値に対して、下限が「１」となるようにクリップされている。
ＭＰｈ＝［２５６／（データ値×サブマトリクスの面積）］−２
ＭＰｓ＝［２５６／〔（２５６−データ値）×サブマトリクスの面積〕］−２……（１）
但し、ＭＰｈは、ハイライト側（データ値＜１２８）の周期倍率
ＭＰｓは、シャドー側（データ値≧１２８）の周期倍率
なお、サブマトリクスの面積は、サブマトリクスＳＮＭに含まれる画素数である。例えば、図６のサブマトリクスＳＮＭ１では面積が「１３」であり、サブマトリクスＳＮＭ２では「５２」である。
【００３５】
また、これらの関係をグラフで示したものが図３である。
このように、周期倍率ＭＰは入力データＤ１のデータ値に応じて変化する。そして、入力データＤ１のデータ値が「１」〜「１６」および「２４０」〜「２５５」の場合に、それに対応する周期倍率ＭＰによって生成されるサブマトリクスＳＮＭの面積は、入力データＤ１の階調数である「２５６」に等しくなる。データ値が「１７」〜「２３９」の場合には、生成されるサブマトリクスＳＮＭの面積は、常に「１３」となる。
【００３６】
これによって、入力データＤ１のデータ値が「１」〜「１６」であるハイライト部、および「２４０」〜「２５５」である高濃度部分（シャドー部）に対して、データ値に適切に対応したサイズのサブマトリクスＳＮＭによるスクリーンノイズＳＮが重畳される。つまり、入力データＤ１のデータ値に応じてスクリーンノイズＳＮが最適化される。したがって、ハイライト部および高濃度部分においてドットに対する適切な変調がかけられ、ドットが連続してワームとならないよう、規則正しく分散して現れるよう、ドットの誘導が行われる。
【００３７】
そして、入力データＤ１のデータ値が「２０」〜「２３６」である中間部分に対しては、同じサブマトリクスＳＮＭ１によるスクリーンノイズＳＮ１を重畳することにより、スクリーンノイズＳＮによる影響が余り現れないようになっている。
【００３８】
なお、本実施形態では、入力データＤ１のデータ値に対応する周期倍率ＭＰを周期倍率テーブルＴＢから読み出すようにしたが、周期倍率テーブルＴＢを設けることなく、上の（１）式に基づいてその都度算出するようにしてもよい。
【００３９】
アドレス生成部１１１は、処理対象である入力データＤ１の注目画素の２次元アドレス（水平アドレスおよび垂直アドレス）と入力データＤ１のデータ値とに基づいて、上で説明したようにノイズテーブル１１２の読み出しのためのアドレスＡＤを生成する。
【００４０】
例えば、入力データＤ１のデータ値が「１」または「２５５」のときは、周期倍率テーブルＴＢから周期倍率「４．４４」が得られるので、図４に示すように、ノイズテーブル１１２の各ノイズデータＤＮを平均して４．４４回読み出すようなアドレスＡＤが生成される。周期倍率ＭＰが「２．５６」の場合は、ノイズテーブル１１２の各ノイズデータＤＮを平均して２．５６回読み出すようなアドレスＡＤが生成される。なお、４．４４回読み出すとは、４回の読み出しと５回の読み出しとを混合することによって、平均として４．４４回の読み出しとなるようにすることである。しかし、例えば少数点以下を切り捨てて整数としてもよい。また、データ値が「２０」〜「２３６」のときは、周期倍率ＭＰが「１」であるので、ノイズテーブル１１２のノイズデータＤＮがそれぞれ１回ずつ読み出すように、アドレスＡＤが入力データＤ１のアドレスに応じて１つずつインクリメントされる。
【００４１】
これら、水平アドレスＡＤｈおよび垂直アドレスＡＤｖは、例えば次のようにして算出することができる。
すなわち、水平アドレスＡＤｈは、入力データＤ１の注目画素の水平アドレスを周期倍率ＭＰで除し、その商をノイズテーブル１１２のマトリクスの水平サイズで除したときの余りの値とする。垂直アドレスＡＤｖは、入力データＤ１の注目画素の垂直アドレスを周期倍率ＭＰで除し、その商をノイズテーブル１１２のマトリクスの垂直サイズで除したときの余りの値とする。
【００４２】
なお、本実施形態では、ノイズテーブル１１２のマトリクスの水平サイズおよび垂直サイズはともに「１３」である。周期倍率ＭＰは、上に述べたように入力データＤ１のデータ値に応じて変化する。
【００４３】
ところで、入力データＤ１の注目画素のデータ値が途中で変化した場合であっても、それぞれの時点での注目画素に対するアドレスＡＤを算出し、算出したアドレスＡＤによってノイズテーブル１１２を読み出す。つまり、例えば、入力データＤ１のデータ値が「１」であり、それに応じてテーブル１１２からデータを読み出しているときに、途中でデータ値が「２」に変わったとすると、アドレスＡＤを０に戻すのではなく、その時点でのデータ値「２」に対するアドレスＡＤを算出し、算出したアドレスＡＤによってノイズテーブル１１２を読み出す。
【００４４】
ゲインテーブル１１３は、入力データＤ１のデータ値に対するゲインＧＡについての情報を格納したテーブルである。つまり、図９に示すように、ゲインテーブル１１３には、データ値に対応したゲインＧＡが格納されている。例えば、入力データＤ１のデータ値が「１」の場合に、ゲインＧＡは「３」である。
【００４５】
ノイズテーブル１１２から読み出されたノイズデータＤＮは、ゲインテーブル１１３から読み出されたゲインＧＡと、乗算器１１４によって掛け合わされる。したがって、ノイズデータＤＮの値は、入力データＤ１のデータ値に応じて可変される。つまり、ゲインテーブル１１３に設定された値によって、スクリーンノイズＳＮの振幅が可変される。本実施形態では、ハイライト部および高濃度部分においてスクリーンノイズＳＮの振幅が大きくなる。
【００４６】
なお、ゲインテーブル１１３に設定されるゲインＧＡの値は、ハイライト部および高濃度部について中間濃度部よりも大きくすることが好ましいが、具体的な数値は実験的にまたは経験的に決めることができる。図１０には入力データＤ１のデータ値とゲインＧＡとの関係がグラフで示されている。図１０に示すように、グラフは変曲点がなく滑らかに変化する。入力データＤ１のデータ値の中央付近の特性によって、擬似中間調（濃度の段差）の発生が防止される。
【００４７】
乗算器１１４から出力されたノイズデータＤＮａは、ノイズ加算部１２１において入力データＤ１と加算される。加算された入力データＤ２には、さらに誤差加算部１２２において誤差データが加算される。これが２値化前の入力データＤ３として比較部３３に入力される。
【００４８】
比較部３３は、上に述べたように、入力データＤ３としきい値ＤＳとを比較し、その大小に応じて出力をオンまたはオフする。減算器１４２において２値化後の出力データＤ４と２値化前の入力データＤ３との誤差を算出する。その際に、出力データＤ４と入力データＤ３との階調性を合わせるために出力データＤ４に対する適当倍数の乗算が行われる。誤差積分部１４１は、誤差を蓄積し、蓄積した誤差を注目画素の周辺画素に分散するようにして誤差加算部１２２に出力する。
【００４９】
なお、比較部３３および誤差算出部３４による誤差拡散処理それ自体は公知であり、従来から行われている種々の手法または回路を適用することができる。
上に述べた処理が行われる結果、画像処理装置１から出力される出力データＤ４は、ハイライト部において、図７の黒ドットで示す位置となる。図７の左側に示すスクリーンノイズＳＮ１に示される黒ドットは、各基準サブマトリクスにおいて１つずつ現れているので、入力データＤ１のデータ値が「１６」の近辺のハイライト部における処理結果であるということになる。また、図７の右側に示すスクリーンノイズＳＮ２に示される黒ドットは、周期倍率ＭＰが「２」である各サブマトリクスＳＮＭ２において１つずつ現れているので、入力データＤ１のデータ値が「５」の近辺のハイライト部における処理結果であるということになる。
【００５０】
このように、ハイライト部において、入力データＤ１のデータ値がどのような場合であっても、それに応じてオンドット（黒点）が規則正しく正しい密度で分散して現れることとなる。その結果、入力データＤ１に応じた正しい中間調表現が行われるとともに、従来においてハイライト部に生じていたドットの連続によるワームの発生が防止されることとなる。
【００５１】
つまり、ハイライト部における入力データＤ１に対し、入力データＤ１に応じた周波数の周期性をもったスクリーンノイズＳＮを与えることにより、入力データＤ１による画像を再現するためのドットをスクリーンノイズＳＮの周期に合わせた配置となるように誘導して強制的に変えてしまうのである。
【００５２】
また、ハイライト部とは逆である高濃度部分においても、ハイライト部と同様の原理によってドット（オフドット）の誘導が行われる。これによって正しい中間調表現が行われ、且つオフドットによるワームの発生を防止することができる。
【００５３】
因みに、従来においてワームを除去できなかった理由は、ハイライト部においてはドットの密度が低く、したがって空間周波数が低いにも係わらず、それに合ったノイズを重畳することができなかったためであると考えられる。
【００５４】
また、入力データＤ１のデータ値に応じてゲインＧＡが可変され、ノイズデータＤＮａが最適化されるため、誤差拡散処理によるドットの配列が正確で最適となる。このようにして、ハイライト部および高濃度部分における粒状性が改善される。また、入力データＤ１のデータ値に係わらず、スクリーンノイズＳＮのスクリーン角が一定であるため、ドットの配列方向が一定となり、ハイライト部の画質を向上することができる。これとともに、擬似階調（濃度の段差）の発生を防止することもできる。
【００５５】
ところで、上に述べた画像処理は、カラー画像データの各カラーのデータに対して行われる。つまり、減法混色系において、入力データＤ１は、Ｙ、Ｍ、Ｃ、Ｋの各カラーのデータである。したがって、上に述べた画像処理装置１は、各カラーに対して設けられる。そして、スクリーンノイズＳＮのスクリーン角は、Ｙ、Ｍ、Ｃ、Ｋの各カラーに対して互いに異なるように、それぞれのスクリーンノイズＳＮが選択される。例えば、図１１に示すように、各カラーについて種々のスクリーンノイズＳＮが用いられる。
【００５６】
図１１（Ａ）（Ｂ）（Ｃ）（Ｄ）に示すスクリーンノイズＳＮ１１〜１４において、それぞれのスクリーン角は、７６度、６３度、５３度、４５度である。このように、スクリーンノイズＳＮとして、種々のものを用いることができる。
【００５７】
上に述べたように、本実施形態においては、誤差拡散処理において、入力データＤ１にスクリーンノイズＳＮを重畳するとともに、そのスクリーンノイズＳＮの周期および振幅を入力データＤ１のデータ値に応じて制御する。これによって、ハイライト部および高濃度部分でのワームノイズの発生を防止し粒状性を改善することができる。また、入力データＤ１のデータ値に応じてゲインＧＡが可変され、周波数が低くなるほどゲインＧＡが高くなるので、ドットの現れる位置が正確となる。
【００５８】
上の実施形態において、周期倍率ＭＰが１を越える場合、例えば周期倍率ＭＰが２の場合には、最大値「１３」を有するノイズデータＤＮが２つ現れるので、ドットはその２つのどちらかに現れることとなる。しかし、この程度の位置のずれは実用上問題とはならない。
【００５９】
上の実施形態において、Ｙ，Ｍ，Ｃ，Ｋの各カラーでのドットの位置は重ならないようにするのが望ましい。上で述べたように、各カラーでスクリーンノイズＳＮのスクリーン角を異ならせることによって、ドットの位置が原則として重ならないようにすることができる。また、上の例ではノイズテーブル１１２が１３×１３のものを用い、基準サブマトリクスとして１３個の画素を持つものを用いたが、これ以外の種々のサイズのノイズテーブルおよび基準サブマトリクスを用いてよい。入力データＤ１が２５６階調である場合を説明したが、他の階調数の入力データＤ１に対しても適用することができる。
【００６０】
上の実施形態においては、入力データＤ１が、Ｙ、Ｍ、Ｃ、Ｋの減法混色系のカラーデータである場合について説明した。しかし、入力データＤ１が加法混色系であるＲ、Ｇ、Ｂのカラーデータであってもよい。その他、種々のカラー画像データに対して適用することができる。また、その場合に、全部のカラーに対して適用するのではなく、特定のカラーのみに対して上に述べた処理を適用するようにしてもよい。
【００６１】
上に実施形態において、画像処理装置１の各部の処理内容は、ハードウエア回路により、または、ＣＰＵおよび適当なプログラムを記憶したメモリなどを用いてソフトウエアにより、またはそれらの組み合わせにより、実現することが可能である。その他、画像処理装置１の各部又は全体の構成、回路、個数、処理内容などは、本発明の主旨に沿って適宜変更することができる。
【００６２】
本発明には以下の付記に記載する発明が含まれる。
［付記１］
前記スクリーンノイズの周期は、前記入力画像データの注目画素の濃度値が中間濃度部分である場合に短く設定され、低濃度部分および高濃度部分である場合に長く設定される、
請求項２または３記載の画像処理装置。
【００６３】
【発明の効果】
本発明によると、誤差拡散法を適用した画像処理において、ハイライト部でのワームノイズの発生を防止し粒状性を改善することができる。
【図面の簡単な説明】
【図１】本発明に係る一実施形態の画像処理装置を示すブロック図である。
【図２】周期倍率テーブルの例を示す図である。
【図３】入力データと周期倍率との関係の例を示すグラフである。
【図４】ノイズテーブルの読み出しのためのアドレスの例を示す図である。
【図５】ノイズテーブルの例を示す図である。
【図６】サブマトリクスの例を示す図である。
【図７】スクリーンノイズの例を示す図である。
【図８】サブマトリクスのノイズデータの実際のデータ値の例を示す図である。
【図９】ゲインテーブルの例を示す図である。
【図１０】入力データのデータ値とゲインとの関係の例を示すグラフである。
【図１１】スクリーンノイズの例を示す図である。
【符号の説明】
１  画像処理装置
３１  スクリーンノイズ生成部
３２  加算部
３３  比較部
３４  誤差算出部
１１１  アドレス生成部
１１２  ノイズテーブル
１１３  ゲインテーブル
１１４  乗算器（演算部）
１２１  ノイズ加算部
Ｄ１  入力データ
Ｄ４  出力データ
ＤＮ  ノイズデータ
ＳＮ  スクリーンノイズ
【図１】
2004274179.tif 000003
【図２】
2004274179.tif 000004
【図３】
2004274179.tif 000005
【図４】
2004274179.tif 000006
【図５】
2004274179.tif 000007
【図６】
2004274179.tif 000008
【図７】
2004274179.tif 000009
【図８】
2004274179.tif 000010
【図９】
2004274179.tif 000011
【図１０】
2004274179.tif 000012
【図１１】
2004274179.tif 000013