(57)【要約】【課題】網点形状に応じた平均化処理を行う。【解決手段】平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１は、画像に対してセルを設定するとともに、メモリ７４に各セルに対応するメモリ領域Ｍ［fnc］、Ｎ［fnc］を形成する。そして、１画素づつ注目画素を主走査方向及び副走査方向に移動させながら、その移動量を分周カウンタＣｘ、Ｃｙによりセルの座標系でカウントし、そのカウント値に基づいて注目画素がどのセルに属するのかを判別して、判別されたセルに対応するメモリ領域Ｍ［fnc］に注目画素の画素値を累計加算するとともに、有効画素数を１だけインクリメントさせる。この処理を全画素について行い、最終的にメモリ領域Ｍ［fnc］に累計加算された合計値をその有効画素数で除算して平均値を算出する処理をセル毎に実行し、算出された平均値をそのセル番号fncに対応するメモリ領域Ｎ［fnc］にそれぞれ格納する。【選択図】図３
2006067305.tif 000002
【特許請求の範囲】
【請求項１】
出力対象画像に対し、形成する網点形状に応じたセルを設定するセル設定工程と、
前記出力対象画像において、主走査方向及び副走査方向の２次元方向に存在する画素を走査して各画素の画素値を抽出するとともに、互いに連動する２つのカウンタを用いて主走査方向及び副走査方向における走査移動量をカウントし、そのカウント値に基づいて隣接するセルの境界を検出するセル検出工程と、
前記検出された境界によって規定されるセル内の画素値の合計値とその画素数を求め、当該画素値の合計値を画素数で除算して平均値を算出し、当該セル内の画素値を平均値に置換する平均化工程と、
を含むことを特徴とする平均化処理方法。
【請求項２】
前記平均化工程では、出力対象画像の各画素の属性を示す画像判別信号が入力されると、当該画像判別信号に基づいて、特定領域に属する画素を平均値の算出対象から除外することを特徴とする請求項１に記載の平均化処理方法。
【請求項３】
前記セル検出工程では、一定のカウント範囲内で繰り返しカウントを行う分周カウンタを用いて出力対象画像における走査移動量をカウントし、この分周カウンタによるカウント値がカウント範囲を超えたか否かを判別し、その判別結果に基づいて隣接するセルの境界を検出することを特徴とする請求項１又は２に記載の平均化処理方法。
【請求項４】
前記セル検出工程では、前記分周カウンタによるカウント値がカウント範囲を超えたと判別された場合、主走査方向におけるカウント値と副走査方向におけるカウント値の何れがカウント範囲を超えたかを判別し、その判別結果に基づいて隣接セルの位置を特定することを特徴とする請求項３に記載の平均化処理方法。
【請求項５】
出力対象画像の主走査方向及び副走査方向における走査移動量を互いに連動してカウントする２つのカウンタと、
前記出力対象画像に対し、形成する網点形状に応じたセルを設定し、主走査方向及び副走査方向の２次元方向に存在する画素を走査して各画素の画素値を抽出するとともに、前記カウンタによるカウント値に基づいて、隣接するセルの境界を検出し、当該検出された境界によって規定されるセル内の画素値の合計値とその画素数を求め、当該画素値の合計値を画素数で除算して平均値を算出し、当該セル内の画素値を平均値に置換する平均化処理部と、
を備えることを特徴とする画像処理装置。
【請求項６】
前記平均化処理部は、出力対象画像の各画素の属性を示す画像判別信号が入力されると、当該画像判別信号に基づいて、特定領域に属する画素を前記平均値の算出対象から除外することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記カウンタは、一定のカウント範囲内でカウントを繰り返す分周カウンタであり、
前記平均化処理部は、前記分周カウンタによるカウント値がカウント範囲を超えたか否かを判別し、その判別結果に基づいて隣接するセルの境界を検出することを特徴とする請求項５又は６に記載の画像処理装置。
【請求項８】
前記平均化処理部は、前記分周カウンタによるカウント値がカウント範囲を超えたと判別された場合、主走査方向におけるカウント値と副走査方向におけるカウント値の何れがカウント範囲を超えたかを判別し、その判別結果に基づいて隣接セルの位置を特定することを特徴とする請求項７に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、出力対象画像の画素値を平均化する平均化処理方法、及び出力対象画像に対して平均化処理を施す画像処理装置に関する。
【背景技術】
【０００２】
従来から、原稿画像をプリント出力する際には、中間調を表現するためにディザ処理等の閾値マトリックスを用いたスクリーン処理が施されることが一般的である。スクリーン処理では、画像上にセルと呼ばれる繰り返しスクリーン処理を行う単位領域が設定され、当該セル内にマトリクス状に設定された各閾値とその閾値と一致する位置にある画素とが比較されて、その比較結果に基づいて出力値が算出される。このように、画素毎に算出が行われるため、結果として複数画素から形成される網点形状は、個々の画素値の細かな差異によってその網点形状の周辺部が一定しない場合があり、セル内の平均濃度と完全に一致していなかった。
【０００３】
また、原稿に形成された網点構造による周期と、スクリーン処理で適用するパターンの周期との干渉により、出力画像のモアレと呼ばれる特有の繰り返しパターンが発生する場合がある。このモアレの発生を防ぐためには原稿側の周期構造を崩すことが有効であり、この周期構造を崩すことを目的として従来から平均化処理が行われていた（例えば特許文献１参照）。
【０００４】
しかし、平均化処理は、原稿画像の周期構造とともに画像のディテール部分（細部）を平均化してしまうため、鮮鋭性が低下するという問題があった。そこで、解像度を保持しながらモアレの発生を防ぐために、文字やエッジ領域等の鮮鋭性が必要な領域を検出してこの領域には他の領域とは異なる画像処理を施す方法が開示されている（例えば、特許文献２参照）。
【特許文献１】特開平５−３２４８２６号公報
【特許文献２】特開２００３−４６７７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、スクリーンの周期構造に同期した従来の平均化処理は、原稿画像の主走査方向のみ、つまり１次元のみに対応可能なものであり、２次元的な網点形状には対応することができなかった。その結果、網点形状のスクリーンの場合にはやはりモアレが発生しやすい。
【０００６】
本発明の課題は、網点形状に応じた平均化処理を行うことができる平均化処理方法及び画像処理装置を提供することである。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、平均化処理方法において、
出力対象画像に対し、形成する網点形状に応じたセルを設定するセル設定工程と、
前記出力対象画像において、主走査方向及び副走査方向の２次元方向に存在する画素を走査して各画素の画素値を抽出するとともに、互いに連動する２つのカウンタを用いて主走査方向及び副走査方向における走査移動量をカウントし、そのカウント値に基づいて隣接するセルの境界を検出するセル検出工程と、
前記検出された境界によって規定されるセル内の画素値の合計値とその画素数を求め、当該画素値の合計値を画素数で除算して平均値を算出し、当該セル内の画素値を平均値に置換する平均化工程と、
を含むことを特徴とする。
【０００８】
請求項２に記載の発明は、請求項１に記載の平均化処理方法において、
前記平均化工程では、出力対象画像の各画素の属性を示す画像判別信号が入力されると、当該画像判別信号に基づいて、特定領域に属する画素を平均値の算出対象から除外することを特徴とする。
【０００９】
請求項３に記載の発明は、請求項１又は２に記載の平均化処理方法において、
前記セル検出工程では、一定のカウント範囲内で繰り返しカウントを行う分周カウンタを用いて出力対象画像における走査移動量をカウントし、この分周カウンタによるカウント値がカウント範囲を超えたか否かを判別し、その判別結果に基づいて隣接するセルの境界を検出することを特徴とする。
【００１０】
請求項４に記載の発明は、請求項３に記載の平均化処理方法において、
前記セル検出工程では、前記分周カウンタによるカウント値がカウント範囲を超えたと判別された場合、主走査方向におけるカウント値と副走査方向におけるカウント値の何れがカウント範囲を超えたかを判別し、その判別結果に基づいて隣接セルの位置を特定することを特徴とする。
【００１１】
請求項５に記載の発明は、画像処理装置において、
出力対象画像の主走査方向及び副走査方向における走査移動量を互いに連動してカウントする２つのカウンタと、
前記出力対象画像に対し、形成する網点形状に応じたセルを設定し、主走査方向及び副走査方向の２次元方向に存在する画素を走査して各画素の画素値を抽出するとともに、前記カウンタによるカウント値に基づいて、隣接するセルの境界を検出し、当該検出された境界によって規定されるセル内の画素値の合計値とその画素数を求め、当該画素値の合計値を画素数で除算して平均値を算出し、当該セル内の画素値を平均値に置換する平均化処理部と、
を備えることを特徴とする。
【００１２】
請求項６に記載の発明は、請求項５に記載の画像処理装置において、
前記平均化処理部は、出力対象画像の各画素の属性を示す画像判別信号が入力されると、当該画像判別信号に基づいて、特定領域に属する画素を前記平均値の算出対象から除外することを特徴とする。
【００１３】
請求項７に記載の発明は、請求項５又は６に記載の画像処理装置において、
前記カウンタは、一定のカウント範囲内でカウントを繰り返す分周カウンタであり、
前記平均化処理部は、前記分周カウンタによるカウント値がカウント範囲を超えたか否かを判別し、その判別結果に基づいて隣接するセルの境界を検出することを特徴とする。
【００１４】
請求項８に記載の発明は、請求項７に記載の画像処理装置において、
前記平均化処理部は、前記分周カウンタによるカウント値がカウント範囲を超えたと判別された場合、主走査方向におけるカウント値と副走査方向におけるカウント値の何れがカウント範囲を超えたかを判別し、その判別結果に基づいて隣接セルの位置を特定することを特徴とする。
【発明の効果】
【００１５】
請求項１、５に記載の発明によれば、網点形状に応じたセル毎に画素値の平均化を行うので、網点を形成する領域毎に画素値の平均化を行うことができる。従って、出力画像上で形成される網点形状を安定化させることができるとともに、必要な領域にのみ平均化を行うので、解像度を不要に低下させることなく、平均化を行うことができる。また、簡素な構成で１次元又は２次元の平均化が可能となる。
【００１６】
請求項２、６に記載の発明によれば、特定領域は平均化の対象から除外するので、鮮鋭性を保持すべき文字や細線、エッジ部分等の領域を特定領域として設定することにより、平均化を行った場合でも文字や細線等の鮮鋭性を保持することができる。
【００１７】
請求項３、７に記載の発明によれば、分周カウンタによるカウント値が、カウント範囲を超えたか否かによりセルの境界を検出するので、出力対象画像を走査しながら容易にセルの境界を検出することができる。
【００１８】
請求項４、８に記載の発明によれば、主走査方向又は副走査方向の何れのカウント値がカウント範囲を超えたかを判別することにより、隣接セルの位置を特定するので、出力対象画像を走査しながら容易に各セルの位置を特定することができる。
【発明を実施するための最良の形態】
【００１９】
本実施の形態では、一定範囲内で繰り返しカウントを行い、カウントする毎にそのカウント値を出力するカウンタ（以下、分周カウンタという）を用いて画像上の注目画素を主走査及び副走査する際の走査移動量をカウントし、そのカウント値に基づいて注目画素がどのセルに属するかを検出して、セル毎にセルに属する画素の画素値の平均値を算出し、セル内の画素値と当該平均値とを置換する例を説明する。
【００２０】
まず、構成を説明する。
図１に、本実施の形態における画像処理装置１の内部構成を示す。
図１に示すように、画像処理装置１は、画像読取部１０、操作部２０、タッチパネル２５、表示部３０、本体部４０、プリンタ部５０から構成されている。また、本体部４０は、制御部４１、記憶部４２、画像処理部４３、ＤＲＡＭ（Dynamic Random Access Memory）制御部４４、ＤＲＡＭ４５、画像判別回路４６から構成されている。図中、各部を接続する実線はシステムバスを示し、点線はシリアルバスを示す。
【００２１】
画像読取部１０は、光源、ＣＣＤ（Charge Coupled Device）、Ａ／Ｄ変換器等を備え、光源から原稿へ照明走査した光の反射光を結像してＣＣＤにより光電変換することによって原稿画像を読み取る。そして、読み取った画像信号をＡ／Ｄ変換器によりデジタル画像データに変換する。ここで、画像は図形や写真等のイメージデータに限らず、文字や記号等のテキストデータ等も含む。
【００２２】
操作部２０は、プリント開始を指示するためのスタートキーや数字キー等の各種機能キーを備え、これら機能キーやタッチパネル２５が操作されると、対応する操作信号を制御部４１に出力する。
【００２３】
表示部３０は、タッチパネル２５と一体に形成されたＬＣＤ（Liquid Crystal Display）を備え、このＬＣＤ上にプリント操作するための各種操作画面を表示させる。
【００２４】
次に、本体部４０の各部について説明する。
制御部４１は、記憶部４２に記憶されているシステムプログラム、プリント処理プログラム等の各種制御プログラムに従って画像処理装置１の各部の動作を集中制御する。
【００２５】
記憶部４２は、システムプログラム、プリント処理プログラム等の各種制御プログラムを記憶する。また、画像処理部４３において平均化処理時に適用される処理パラメータの情報やスクリーン処理時に適用される処理パラメータの情報を記憶している。
【００２６】
画像処理部４３は、図２に示すように、シェーディング補正部ｒ１、ｇ１、ｂ１、Ｉ−Ｉ′変換処理部ｒ２、ｇ２、ｂ２、フィルタ処理部ｒ３、ｇ３、ｂ３、変倍処理部ｒ４、ｇ４、ｂ４、γ変換部ｒ５、ｇ６、ｂ７、色変換処理部６、統合処理部７、デコーダＤから構成され、Ｒ（赤）、Ｇ（緑）、Ｂ（青）の各色に分離されて入力された色毎の画像データに画像処理を施して、その処理画像データをプリンタ部５０に出力する。
【００２７】
シェーディング補正部ｒ１、ｇ１、ｂ１は、画像読取部１０により発生する輝度ムラを補正する。シェーディング補正部ｒ１、ｇ１、ｂ１は、予め輝度ムラを補正するためのＬＵＴ（Look Up Table）をＲ、Ｇ、Ｂの色毎に備えており、このＬＵＴにより入力された画像データの輝度変換を行って、シェーディング補正を行う。シェーディング補正された各画像データはＩ−Ｉ´変換処理部ｒ２、ｇ２、ｂ２にそれぞれ出力される。
【００２８】
Ｉ−Ｉ´変換処理部ｒ２、ｇ２、ｂ２は、画像読取部１０のＣＣＤ特有の輝度特性を人の視覚特性に応じた最適な輝度特性に変換するためのＬＵＴをＲ、Ｇ、Ｂの色毎に備え、このＬＵＴにより入力された画像データの輝度変換を行う。輝度変換された各画像データはフィルタ処理部ｒ３、ｇ３、ｂ３にそれぞれ出力される。
【００２９】
フィルタ処理部ｒ３、ｇ３、ｂ３は、ＭＴＦ（Modulation Transfer Function）フィルタを用いて入力された画像データに鮮鋭化処理を施す。鮮鋭化処理された各画像データはそれぞれ変倍処理部ｒ４、ｇ４、ｂ４に出力される。
【００３０】
変倍処理部ｒ４、ｇ４、ｂ４は、指定された出力サイズに応じて入力された画像データの拡大又は縮小を行い、倍率を変更するものである。拡大又は縮小処理された各画像データはγ変換部ｒ５、ｇ５、ｂ５に出力される。
【００３１】
γ変換部ｒ５、ｇ５、ｂ５は、輝度リニアな入力値に対して濃度リニアな出力値が定められたＬＵＴを用いて入力された画像データを変換し、輝度リニアな特性から濃度リニア特性に変換する（これをγ変換処理という）。γ変換処理が施された各画像データは色変換処理部６に出力される。
【００３２】
色変換処理部６は、入力されたＲ、Ｇ、Ｂの各画像データに対して色補正を施した後、画像処理装置１で出力可能な色材Ｙ、Ｍ、Ｃ、Ｋに応じた各画像データに変換する。色変換により生成されたＹ、Ｍ、Ｃ、Ｋの各画像データはＤＲＡＭ４５に一時記憶された後、統合処理部７に出力される。
【００３３】
統合処理部７は、図３に示すように、平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１、γ補正処理部ｙ７２、ｍ７２、ｃ７２、ｋ７２、スクリーン処理部ｙ７３、ｍ７３、ｃ７３、ｋ７３、分周カウンタＣｘ、Ｃｙ、メモリ７４から構成されている。
【００３４】
分周カウンタＣｘ、Ｃｙは、一定範囲内で繰り返しカウントを行い、カウントする毎にそのカウント値を出力するカウンタである。以下、繰り返しカウントを行う一定範囲をカウント範囲といい、その上限のカウント値をＸＭＡＸ（分周カウンタＣｘの上限値）、ＹＭＡＸ（分周カウンタＣｙの上限値）とする。
【００３５】
分周カウンタＣｘ、Ｃｙは、平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１において主走査及び副走査が１画素づつ行われる毎に、その１画素分の走査移動量に応じてカウントし、そのカウント値（Ｐｘ、Ｐｙ）を平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１に出力する。カウントは、カウント範囲内（０〜ＸＭＡＸ、０〜ＹＭＡＸ）で繰り返し行われる。具体的には、カウント値（Ｐｘ、Ｐｙ）が上限値ＸＭＡＸ、ＹＭＡＸ以上となる（オーバーフローした）場合には、カウント値（Ｐｘ、Ｐｙ）をそのオーバーフローしたカウント値からＸＭＡＸ、ＹＭＡＸを減算した値に更新設定し、カウント値（Ｐｘ、Ｐｙ）が下限値０を下回り負の値となる（アンダーフローした）場合には、カウント値（Ｐｘ、Ｐｙ）をそのアンダーフローした値にＸＭＡＸ、ＹＭＡＸだけ加算した値に更新設定することにより、そのカウント値を常にカウント範囲内に収める。なお、カウント範囲は、平均化処理の処理条件により適宜設定可能である。
【００３６】
メモリ７４は、平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１、スクリーン処理部ｙ７３、ｍ７３、ｃ７３、ｋ７３による処理結果等を記憶するための記憶領域を有している。
【００３７】
平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１は、入力された画像データに対し、平均化を行う単位領域であるセルを設定し、各セルにセル番号を付与する。そして、１画素づつ主走査及び副走査して各画素値を抽出するとともに、各画素位置における分周カウンタＣｘ、Ｃｙのカウント値に基づいて各画素が属するセルの境界を検出し、当該検出された境界によって規定されるセル内の画素値を平均した平均値を算出して当該平均値と画素値とを置換する平均化処理を実行する。
【００３８】
以下、平均化処理について説明する。
図４は、網点形状を形成するためにスクリーン処理時に適用されるスクリーンパターンを示す図である。スクリーンパターンは、各色材Ｙ、Ｍ、Ｃ、Ｋに応じて異なる形状を適用することができる。
【００３９】
本実施形態では、色材Ｍの場合を例に説明する。
図５（ａ）は、色材Ｍの網点形状を形成するためにスクリーン処理時に適用されるスクリーンパターンＭｐである。スクリーン処理時には、このスクリーンパターンＭｐが、図５（ｂ）に示すように画像上に隙間無くタイル状に割り当てられて、そのスクリーンパターンＭｐ内の画素値と、スクリーンパターンＭｐ内で予めマトリクス状に設定された閾値とが比較されてその比較結果に基づいて出力値が決定される。なお、図５（ｂ）において斜線を付したパターンとそうでないパターンがあるが、これは隣接するスクリーンパターンを個々に区別しやすいように示したものであり、処理上違いがあるわけではない。
【００４０】
まず、平均化処理部ｍ７１は、入力された画像に対し、スクリーンパターンＭｐに応じたセルを設定する。
セルは、スクリーンパターンＭｐを構成する画素の中心点を必ず含み、かつその他の画素の中心点はセル内に含まれないように設定する。画像上の画素がセルに属するかどうかは、その画素の中心点がセル内に含まれるかどうかで判別するので、上記のようにセルを設定することにより、スクリーンパターンＭｐを構成する画素のみをそのセル内における平均化対象画素として設定することができる。また、セルの大きさを示すセルサイズはスクリーンパターンＭｐを構成する画素数で示し、この場合セルサイズは１０である。
【００４１】
図５（ｂ）に示すように、スクリーンパターンＭｐは、画像の主走査方向及び副走査方向からなる直交座標空系に対し、有理正接となる傾きで配列しているので、セルについてもｔａｎθ＝±１／３、±３の何れかの有理数からなる傾きで配列することとなるが、本実施形態では、図６に示すように傾き（ｔａｎθ）−１／３でセルを設定することとする。図中、画像の座標系を構成する主走査方向をＸ１方向、副走査方向をＹ１方向とし、この画像の座標系に対して傾き−１／３で設定されたセルの直交座標系を構成する２方向を、Ｘ２方向（Ｘ１方向に対応）、Ｙ２方向（Ｙ１方向に対応）とする。また、各方向への増分を「＋」の符号で示し、減少分を「−」の符号で示す。
【００４２】
セルを設定すると、図７（ａ）に示すように、各セルにセルの位置を特定するためのセル番号fncを設定する。図７（ａ）に示す例では、処理対象画像のＸ１方向において同じライン上にある、つまりＹ１方向における位置が同じセルの個数をＬ（ＬはＸ１方向における画素数をセルサイズにより除算して得られる概略値に相当する。）とし、１ライン分の主走査を開始する画像端部から主走査を終了する画像端部まで順に０、１、…、Ｌ−１とセル番号を付与し、次の主走査ラインにおいてＬ、Ｌ＋１、…Ｌ＋Ｌ−１の順にセル番号を付与すると、各セルのセル番号は、一般式fnc＝ｍ＊Ｌ＋ｎ（ｍはＹ１方向におけるセルの位置を示し、ｍ＝０、１、…、ｍmax（ｍmaxはＹ１方向における最大セル数）。ｎはＸ１方向におけるセルの位置を示し、ｎ＝０、１、…、Ｌ−１）で表すことができる。よって、スクリーンパターンＭｐの形状でセルサイズ１０、傾き−１／３の条件下では、図７（ｂ）に示すように、ある特定セル（セル番号fnc＝ｍ＊Ｌ＋ｎ）の右隣のセル（図中、Ａ方向の隣接セル）は特定セルのセル番号に「−Ｌ」、左隣のセル（図中、Ｃ方向の隣接セル）は「＋Ｌ」、上隣のセル（図中、Ｄ方向の隣接セル）は「−３Ｌ−１」、下隣のセル（図中、Ｂ方向の隣接セル）は「＋３Ｌ＋１」を加算したセル番号で示すことができる。
【００４３】
また、平均化処理部ｍ７１は、セルの設定に伴ってセル毎のメモリ領域Ｍ［fnc］、Ｎ［fnc］をメモリ７４に設ける。メモリ領域Ｍ［fnc］は、セル内の画素値を累計加算した合計値及びその累計加算された総画素数（以下、累計加算され、実際に平均化が行われる画素を有効画素といい、その総画素数を有効画素数という）を記憶し、メモリ領域Ｎ［fnc］はセル毎に算出された平均値を記憶するために設けられたメモリ領域である。メモリ領域Ｍ［fnc］は、例えば１８ビット分のメモリ領域が設けられた場合、上位５ビットは有効画素数のカウントに、下位１３ビットは有効画素の画素値の合計値のカウントに使用される。有効画素数のデータを取得したい場合には、１３ビット分のデータとの論理積をとって１３桁シフトさせて上位５ビットのデータを読み出す。
【００４４】
平均化処理部ｍ７１は、主走査及び副走査時に各画素から抽出された画素値を、その画素が属するセルに対応するメモリ領域Ｍ［fnc］に累計加算するとともに、有効画素数を１だけ加算させる。この処理を全画素について行い、最終的にメモリ領域Ｍ［fnc］に記憶されている画素値の合計値をその有効画素数で除算して平均値を算出する処理をセル毎に実行し、算出された平均値をそのセル番号fncに対応するメモリ領域Ｎ［fnc］にそれぞれ格納する。
【００４５】
次に、分周カウンタＣｘ、Ｃｙによる走査移動量のカウント単位の設定について説明する。
スクリーンパターンＭｐの場合、セルサイズは１０であり、セルは仮想的に面積１０の正方形、つまり画素を単位として一辺の長さを√１０とする仮想正方形内の１０個の格子点上に各平均化対象画素が配置されている位置関係を想定することができる。セルの座標系は、この仮想正方形の一辺の大きさが整数となるように、つまり√１０を一辺とする仮想正方形を√１０倍にスケーリング（比例換算）したときのサイズを採用する。このとき、画像上の１画素分の距離をセルの座標系に射影すると、１０を斜辺とする直角三角形の他の２辺ａ、ｂ（ａ、ｂは整数）の大きさに相当するので、１０＝（ａ2＋ｂ2）を満たすａ、ｂを、画像上で１画素分走査したときのカウント値の増分とすることができる。セルサイズ１０の場合、ａ＝３、ｂ＝１であるので、分周カウンタＣｘ、Ｃｙは、±３、±１の何れかを増分としてカウントすることになる。
【００４６】
本実施形態では、傾き−１／３を適用しているので、図６に示すように、画像上において１画素分だけＸ１方向に移動したときのＸ２方向における分周カウンタＣｘのカウント値の増分をＵｘ、Ｙ２方向における分周カウンタＣｙの増分をＵｙとし、１画素分だけ副走査方向に移動したときのＸ２方向における分周カウンタＣｘのカウント値の増分をＶｘ、Ｙ２方向における分周カウンタＣｙの増分をＶｙとすると、（Ｕｘ、Ｕｙ）＝（＋３、＋１）、（Ｖｘ、Ｖｙ）＝（−１、＋３）である。すなわち、注目画素が１画素分だけＸ１方向に移動する毎に、分周カウンタＣｘはカウント値ＰｘにＵｘ＝＋３づつ加算し、分周カウンタＣｙはカウント値ＰｙにＵｙ＝＋１づつ加算する。一方、注目画素が１画素分だけ副走査方向に移動する毎に、分周カウンタＣｘはカウント値ＰｘにＶｘ＝−１づつ加算し、分周カウンタＣｙはカウント値ＰｙにＶｙ＝＋３づつ加算する。
【００４７】
また、平均化処理部ｍ７１は、分周カウンタＣｘ、Ｃｙに対し、カウントの上限値ＸＭＡＸ、ＹＭＡＸを設定する。ＸＭＡＸ、ＹＭＡＸは、上記仮想正方形の一辺の長さが整数値となるようにスケーリングしたときの仮想正方形の一辺のサイズを適用する。スクリーンパターンＭｐの場合、仮想正方形の一辺のサイズはセルサイズと一致するので、（ＸＭＡＸ、ＹＭＡＸ）＝（１０、１０）と設定する。分周カウンタＣｘ、Ｃｙは、０のカウント値からカウントを始めて、ＸＭＡＸ（＝１０）又はＹＭＡＸ（＝１０）に達すると、再度０に戻ってカウントを始め、一定範囲０〜９内でカウントを繰り返すこととなる。
【００４８】
具体的に説明すると、注目画素の走査を開始する開始位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｏｘ、Ｏｙ）＝（２、９）とすると、１画素分主走査する毎に、（Ｕｘ、Ｕｙ）＝（＋３、＋１）づつカウント値が加算されていき、１画素分副走査する毎に、（Ｖｘ、Ｖｙ）＝（−１、＋３）づつカウント値が加算されていくので、画像上の各画素位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｐｘ、Ｐｙ）は、図８に示すような値となる。
【００４９】
このとき、主走査方向に注目画素の位置を１画素分だけ走査移動した際に、ＰｘがＸＭＡＸ＝１０以上となる場合、移動前後の画素間が右の隣接セルとの境界（図中、この境界を１重の直線で示す）であり、ＰｙがＹＭＡＸ＝１０以上となる場合、下の隣接セルとの境界（図中、この境界を２重の直線で示す）となる。また、副走査方向に１画素分だけ走査移動した際に、Ｐｘ＜０となる、つまりＰｘがカウント範囲の下限を超える（アンダーフローが生じる）場合、移動前後の画素間が左の隣接セルとの境界（図中、この境界を２重の波線で示す）であり、ＰｙがＹＭＡＸ＝１０以上となる場合は、左の隣接セルとの境界（図中、この境界を１重の波線で示す）となる。
【００５０】
このように各境界線により囲まれた領域は、図５（ａ）に示すスクリーンパターンＭｐと一致する。つまり、各セルの境界を検出することができる。スクリーンパターンＭｐを構成する各画素におけるカウント値（Ｐｘ、Ｐｙ）は、スクリーンパターンＭｐ内で位置が同じ画素であれば常に同じカウント値（Ｐｘ、Ｐｙ）である。よって、注目画素を走査したときにスクリーンパターンＭｐを構成する画素のうち、最後に走査する画素のカウント値を（ＬＡＳＴＸ、ＬＡＳＴＹ）とすると、分周カウンタＣｘ、Ｃｙによるカウント値が（ＬＡＳＴＸ、ＬＡＳＴＹ）に達したときにそのセル内の画素値の平均値を算出することができる。図８の例では、平均値を算出するタイミングとして（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（２、９）と設定することができる。
【００５１】
以下、平均値の算出について説明する。
本実施形態では、図９に示すように、セル内の各平均化対象画素の重み付け係数を全て同一の「１」に設定して、平均対象画素の各画素値を一律に平均する場合を説明する。なお、出力対象の画像において平均対象画素に対応する画素であっても、平均化の対象から除外される場合があるので、上述したように実際に平均化の対象とされる画素を有効画素として区別する。図９に示す例では、画像領域ｆ１における有効画素の各画素値に重み付け係数「１」が乗算されて得られた各乗算値の合計値は“４７９”であり、有効画素数は“１０”であるので、平均値は“４７（４７．９の小数点以下を切り捨て）”である。このようにして算出された平均値はメモリ領域Ｎ［fnc］に格納される。
【００５２】
なお、画像に鮮鋭性が要求される特定領域が含まれる場合、デコーダＤから入力される画像判別信号に基づいて当該特定領域を判別し、平均化の対象から除外する。どのような属性を有する画素を特定領域とするかは適宜設定可能であり、文字やエッジ領域等を特定領域として設定することができる。
特定領域を除外して平均化を行う場合を図１０を参照して説明する。
図１０に示す例では、画像領域ｆ３においてセル内の平均化対象画素に対応する画素であっても、特定領域に属する画素は平均化の対象から除外され、特定領域に属さない有効画素の各画素値（「５１」、「５０」、「４０」、「４５」、「４８」の５つの画素値）のみから平均値が求められる。この場合、有効画素の各画素値に重み付け係数「１」が乗算されて得られた乗算値の合計値は“２３４”であり、有効画素数は“５”であるので、平均値は“４６（４６．８の小数点以下を切り捨て）”である。
【００５３】
また、一律に平均するのではなく、図１１に示すように、各平均化対象画素に異なる重み付け係数を設定することにより、重み付けを行いながら平均化することも可能である。この場合、平均化対象画素に対応する各画素の画素値に、その平均化対象画素に設定されている重み付け係数が乗算され、各乗算値の合計値をその重み付け係数の総和で除算することにより平均値が求められる。図１１に示す例では、画像領域ｆ５における有効画素の各画素値に重み付け係数が乗算された各乗算値の合計値は“１４６２”であり、重み付け係数の総和が“３０”であるので、平均値は“４８（４８．７３３の小数点以下を切り捨て）”である。
【００５４】
次に、上述した各種パラメータの設定により平均化処理部ｍ７１によって実行される平均化処理の一連の流れを、図１２に示すフローチャートを参照して説明する。
図１２に示す平均化処理では、まず入力された画像データに対し、適用するスクリーンパターンＭｐに応じたセルを設定するとともに、各セルにセル番号fnc＝ｍ＊Ｌ＋ｎを設定する（ステップＳ１）。このとき、セル番号fncに対応するメモリ領域Ｍ［fnc］、Ｎ［fnc］をメモリ７４に設ける。
【００５５】
次いで、注目画素の参照位置を開始位置に設定し、参照位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｐｘ、Ｐｙ）を、開始位置のカウント値（Ｏｘ、Ｏｙ）に設定するとともに、注目画素が属するセルのセル番号fncを初期値０、つまり開始位置の画素が属するセルのセル番号０に設定する（ステップＳ２）。つまり、各パラメータの初期化を行う。
【００５６】
次いで、デコーダＤから入力される画像判別信号に基づいて、注目画素は特定領域に属するか否かを判別し（ステップＳ３）、注目画素が特定領域に属しないと判別された場合（ステップＳ３；Ｙ）、注目画素の画素値を抽出して現在設定されているセル番号fncに対応するメモリ領域Ｍ［fnc］に累積加算して記憶させるとともに、そのセル内の有効画素数を＋１加算して記憶させる（ステップＳ４）。そして、ステップＳ５の主走査ライン処理に移行する。
【００５７】
注目画素が特定領域に属すると判別された場合（ステップＳ３；Ｎ）、ステップＳ４の処理は行わずに、ステップＳ５の主走査ライン処理に移行する。つまり、文字やエッジ領域等の特定領域に属する画素は、平均化処理の対象から除外される。
【００５８】
次に、図１３を参照して主走査ライン処理について説明する。
図１３に示す主走査ライン処理では、まず注目画素の参照位置を主走査方向に１画素分移動させ、分周カウンタＣｘ、Ｃｙによりカウント値（Ｐｘ、Ｐｙ）に（Ｕｘ、Ｕｙ）を加算して走査移動量をカウントさせる（ステップＳ５１）。
【００５９】
次いで、注目画素の参照位置におけるカウント値（Ｐｘ、Ｐｙ）がＰｘ≧ＸＭＡＸ（＝１０）又はＰｙ≧ＹＭＡＸ（＝１０）を満たすか否かを判別する（ステップＳ５２）。すなわち、隣接セルとの境界を超えたか否かを判別する。例えば、図８に示すように、（Ｕｘ、Ｕｙ）を加算したことにより、Ｐｘの値が「７」から「０」となる、或いは「８」から「１」となり、Ｐｘ≧ＸＭＡＸを満たす場合（ステップＳ５２；Ｐｘ≧ＸＭＡＸ）、注目画素がセルの境界を超えて右の隣接セルに属する画素に移動したので、その注目画素が属するセルのセル番号fncとして、現在設定されているセル番号fncに−Ｌを加算してセル番号fncを更新設定する。さらに、Ｐｘの現在値から１０だけ減算してＰｘの値を更新設定し、オーバーフローした値をカウント範囲内の値に戻すと（ステップＳ５３）、ステップＳ５５の処理に移行する。
【００６０】
また、例えば図８に示すように、Ｐｙの値が「９」から「０」となり、Ｐｙ≧ＹＭＡＸを満たす場合（ステップＳ５２；Ｐｘ≧ＹＭＡＸ）、注目画素がセルの境界を超えて下の隣接セルに属する画素に移動したので、その注目画素が属するセルのセル番号fncとして、現在設定されているセル番号fncに＋３Ｌ＋１を加算してセル番号fncを更新設定する。さらに、Ｐｙの現在値から１０だけ減算してＰｙの値を更新設定し、オーバーフローした値をカウント範囲内の値に戻すと（ステップＳ５４）、ステップＳ５５の処理に移行する。
【００６１】
一方、Ｐｘ≧ＸＭＡＸ又はＰｙ≧ＹＭＡＸの何れも満たさない場合（ステップＳ５２；何れでもない）、注目画素は移動前の画素位置と同じセルに属するので、セル番号fncの更新は行わずに、デコーダＤから入力される画像判別信号に基づいて、注目画素は特定領域に属するか否かを判別する（ステップＳ５５）。注目画素が特定領域に属しないと判別された場合（ステップＳ５５；Ｎ）、注目画素は有効画素であるとして、その画素値を抽出して現在設定されているセル番号fncに対応するメモリ領域Ｍ［fnc］に累積加算して記憶させるとともに、そのセル内の有効画素数を＋１加算して記憶させる（ステップＳ５６）。そして、ステップＳ５７の処理に移行する。
【００６２】
注目画素が特定領域に属する場合（ステップＳ５５；Ｙ）、ステップＳ５６の処理は行わずに、ステップＳ５７の処理に移行し、現在の注目画素の参照位置におけるカウント値（Ｐｘ、Ｐｙ）は、（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致するか否かを判別する（ステップＳ５７）。
【００６３】
（Ｐｘ、Ｐｙ）が（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致する場合（ステップＳ５７；Ｙ）、現在設定されているセル番号fncに対応するメモリ領域Ｍ［fnc］から、セル内の有効画素の画素値の合計値及びその有効画素数のデータを読み出し、合計値を有効画素数で除算して平均値を得る。得られた平均値をメモリ領域Ｎ［fnc］に記憶させると（ステップＳ５８）、ステップＳ５９の処理に移行する。
【００６４】
一方、（Ｐｘ、Ｐｙ）が（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致しない場合（ステップＳ５７；Ｎ）、主走査方向における１ライン分の画素全てを走査したか否かを判別する（ステップＳ５９）。１ライン分の走査を終了していない場合（ステップＳ５９；Ｎ）、ステップＳ５１の処理に戻ってステップＳ５１〜Ｓ５８の処理を繰り返し、１画素づつ注目画素を主走査方向に走査移動させてその画素値を抽出し、注目画素が属するセルに対応するメモリ領域Ｍ［fnc］に抽出した画素値を累積加算させる。一方、１ライン分の走査を終了した場合（ステップＳ５９；Ｙ）、主走査ライン処理を終了して、図１２に示すステップＳ６の副走査ライン処理に移行する。
【００６５】
図１４を参照して、副走査ライン処理について説明する。
図１４に示す副走査ライン処理では、主走査の開始位置に注目画素を移動させた後、副走査方向に１画素分移動させる。そして、分周カウンタＣｘ、Ｃｙによる、注目画素の参照位置におけるカウント値（Ｐｘ、Ｐｙ）として、開始位置におけるカウント値（Ｏｘ、Ｏｙ）に（Ｖｘ、Ｖｙ）が加算されたカウント値（Ｏｘ＋Ｖｘ、Ｏｙ＋Ｖｙ）を設定する（ステップＳ６１）。
【００６６】
次いで、（Ｖｘ、Ｖｙ）を加算したことにより、注目画素のカウント値（Ｐｘ、Ｐｙ）において、Ｐｘ＜０又はＰｙ≧ＹＭＡＸを満たすか否かを判別する（ステップＳ６２）。すなわち、副走査方向に注目画素を１画素分走査移動させたことにより、隣接セルとの境界を超えたか否かを判別する。例えば、図８に示すように、（Ｖｘ、Ｖｙ）を加算したことにより、Ｐｘの値が「０」から「９」となり、Ｐｘ＜０を満たす場合（ステップＳ６２；Ｐｘ＜０）、注目画素がセルの境界を超えて下の隣接セルに属する画素に移動したので、その注目画素が属するセルのセル番号fncとして、現在設定されているセル番号fncに＋Ｌを加算したセル番号を更新設定する。さらに、Ｐｘの現在値に１０加算してＰｘの値を更新設定し、アンダーフローした値をカウント範囲内に戻すと（ステップＳ６３）、ステップＳ６７の処理に移行する。
【００６７】
また、図８に示すように、（Ｖｘ、Ｖｙ）を加算したことにより、Ｐｙの値が「８」から「１」となり、Ｐｙ≧ＹＭＡＸを満たす場合（ステップＳ６２；Ｐｘ≧ＹＭＡＸ）、注目画素が左の隣接セルに属する画素に移動したので、その注目画素が属するセルのセル番号fncとして、現在設定されているセル番号fncに＋３Ｌ＋１を加算したセル番号を更新設定し（ステップＳ６４）、ステップＳ６５の処理に移行する。
【００６８】
一方、Ｐｘ＜０又はＰｙ≧ＹＭＡＸを満たす、の何れの条件も満たさない場合（ステップＳ６２；何れでもない）、注目画素は移動前の画素位置と同じセルに属するのでセル番号は更新せず、デコーダＤから入力される画像判別信号に基づいて、注目画素は特定領域に属するか否かを判別する（ステップＳ６５）。注目画素が特定領域に属しないと判別された場合（ステップＳ６５；Ｎ）、注目画素は有効画素であるとしてその画素値を抽出し、現在設定されているセル番号fncに対応するメモリ領域Ｍ［fnc］に抽出した画素値を累積加算して記憶させるとともに、そのセル内の有効画素数を＋１加算して記憶させる（ステップＳ６６）。画素値の累積加算が終了すると、ステップＳ６７の処理に移行する。そして、注目画素が特定領域に属する場合（ステップＳ６５；Ｙ）、ステップＳ６６の処理は行わずに、ステップＳ６７の処理に移行する。
【００６９】
ステップＳ６７では、注目画素のカウント値（Ｐｘ、Ｐｙ）は、（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致するか否かを判別する。（Ｐｘ、Ｐｙ）が（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致する場合（ステップＳ６７；Ｙ）、現在設定されているセル番号fncに対応するメモリ領域Ｍ［fnc］から、セル内の有効画素の画素値の合計値及びその有効画素数のデータを読み出し、合計値を有効画素数で除算して平均値を得る。そして、得られた平均値をメモリ領域Ｎ［fnc］に記憶させると（ステップＳ６８）、ステップＳ６９の主走査ライン処理に移行する。一方、（Ｐｘ、Ｐｙ）が（ＬＡＳＴＸ、ＬＡＳＴＹ）と一致しない場合（ステップＳ６７；Ｎ）、ステップＳ６９の主走査ライン処理に移行する。
【００７０】
ステップＳ６９の主走査ライン処理は、前述した主走査ライン処理（図１３参照）と同一処理であるので、ここではその説明を省略する。すなわち、副走査方向に１画素分だけ移動した主走査ライン上で注目画素を走査させて画素値の平均化を繰り返す。
【００７１】
そして、１ライン分の主走査ライン処理が終了すると、図１２に示すステップＳ７の処理に移行する。ステップＳ７では、全ての主走査方向及び副走査方向において注目画素の走査が終了したか否かを判別し、未走査の場合は（ステップＳ７；Ｎ）、ステップＳ６の処理に戻って副走査方向に１画素分移動し、その移動後の主走査ライン上で各画素が属するセルを判別してセル毎に画素値の平均化を繰り返す。一方、全画素について走査し、平均化が終了した場合は（ステップＳ７；Ｙ）、メモリ領域Ｎ［fnc］に記憶されている各セルの平均値と各セルの画素値とを置換し（ステップＳ８）、本処理を終了する。なお、処理後は、Ｍ［fnc］及びＮ［fnc］に記憶されているデータは消去するものとする。置換によりセル毎に画素値が平均化された画像データはγ補正処理部ｙ７２、ｍ７２、ｃ７２、ｋ７２に出力される。
【００７２】
γ補正処理部ｙ７２、ｍ７２、ｃ７２、ｋ７２は、予めγ補正用に準備されたＬＵＴを用いて入力された画像データの階調変換を行ってγ補正処理を施す。γ補正処理が施された各色材の画像データはそれぞれスクリーン処理部ｙ７３、ｍ７３、ｃ７３、ｋ７３に出力される。
【００７３】
スクリーン処理部ｙ７３、ｍ７３、ｃ７３、ｋ７３は、入力された画像データに対して組織的ディザ法等の手法によりスクリーン処理を施すものである。スクリーン処理時には、予めマトリックス状に複数の閾値が設定されたスクリーンパターンを記憶部４２から読み出して、当該スクリーンパターンと画像データとをマッチングし、マッチングされた画像領域の画素値と、各画素位置に対応するスクリーンパターンの閾値と比較して各画素の出力値を多値化する（複数レベルで表現する）。このとき、閾値と比較される画素値は、平均化処理部ｙ７１、ｍ７１、ｃ７１、ｋ７１によりセル毎に算出された平均値である。なお、多値化の手法としては公知公用の手法を適用可能である。
【００７４】
ＤＲＡＭ制御部４４は、ＤＲＡＭ４５に記憶された画像データの入出力を制御する。
ＤＲＡＭ４５は、画像データを記憶する画像メモリである。
【００７５】
画像判別回路４６は、画像読取部１０において読取入力された画像データのデータ解析を行って文字領域を特定領域として判別し、画像判別信号を生成する、或いは画像データに対してエッジ検出を行い、検出されたエッジ領域を特定領域として判別し、画像判別信号を生成する等して、出力対象の画像データに対する画像判別信号を生成し、画像処理部４３に出力する。
【００７６】
プリンタ部５０は、電子写真方式でＹ、Ｍ、Ｃ、Ｋのカラープリント出力を行う。プリンタ部５０は、ＬＤ（Laser Device）ドライバ、レーザ光源等を備えて感光ドラム上に潜像を形成する露光部、感光ドラムにトナーを吹き付けて画像を形成する現像部、画像形成された感光ドラム上のトナーをプリント用紙上に転写させる転写ベルト等から構成される。なお、プリント方式は他の方式を適用することとしてもよい。
【００７７】
プリンタ部５０は、画像処理部４３から各色材の画像データが入力されると、周波数変調／ＰＷＭ（Pulse Width Modulation）変換処理部ｙ５１、ｍ５１、ｃ５１、ｋ５１により周波数変調、ＰＷＭ変換を行い、その変調信号をＬＤドライバに入力する。ＬＤドライバは入力された変調信号に基づいてレーザ光源を駆動し、レーザ光源から照射される露光量を制御する。
【００７８】
以上のように、本実施形態によれば、セル毎にメモリ領域Ｍ［fnc］、Ｎ［fnc］を設け、分周カウンタＣｘ、Ｃｙにより注目画素の走査移動量をセルの座標系でカウントすることにより、各セルの境界を検出し、検出された境界により規定されるセル内の画素から抽出された画素値をそのセルに対応するメモリ領域Ｍ［fnc］に累計加算する。その後、メモリ領域Ｍ［fnc］から各セルの画素値の合計値を読み出してセル毎の平均値を算出し、セル内の画素値と置換するので、スクリーンパターンが適用される領域毎に平均化を行うことができ、スクリーン処理により形成される網点形状を安定化させることができる。また、平均化が必要な領域にのみ平均化を行うので解像度を不要に低下させることを防止することができる。
【００７９】
また、１画素づつ主走査、副走査を行う中で、セル毎に平均値を算出する処理を逐次実行していくので、簡素な構成で１次元又は２次元の平均化処理が可能となる。
【００８０】
また、注目画素を主走査方向又は副走査方向に走査移動させたときに、分周カウンタＣｘ、Ｃｙのカウント値（Ｐｘ、Ｐｙ）が０≦Ｐｘ＜ＸＭＡＸ、０≦Ｐｙ＜ＹＭＡＸを満たすか否かを判別することにより、セル境界を検出することができるので、容易に各画素がどのセル内の画素なのかを判別することができる。
【００８１】
さらに、分周カウンタＣｘ、Ｃｙのカウント値Ｐｘ又はＰｙの何れがカウント範囲を超えたのかを判別することにより、どの方向の隣接セルに移動したのか、その隣接セルの位置を容易に特定することができる。
【００８２】
また、画像データとともに入力される画像判別信号に基づいて、鮮鋭性を保持すべき特定領域を判別し、当該特定領域は平均化処理の対象から除外するので、文字や細線、エッジ領域等を特定領域として設定することにより、文字や細線等の鮮鋭性を保持することができる。
【００８３】
なお、上述した説明では、セルが画像に対して−１／３の傾きで配列した例を示したが、図１５（ａ）に示すように、＋１／３の傾きで配列することとしてもよい。このとき、セル番号fnc＝ｍ＊Ｌ＋ｎのある特定セルとその隣接セルとのセル番号の関係は、図１５（ｂ）に示すような関係となる。つまり、右の隣接セル（Ａ方向の隣接セル）は特定セルのセル番号に「＋Ｌ」、下の隣接セル（Ｂ方向の隣接セル）は「＋３Ｌ−１」、左の隣接セル（Ｃ方向の隣接セル）は「−Ｌ」、上の隣接セル（Ｄ方向の隣接セル）は「−３Ｌ＋１」を加算したセル番号で示すことができる。
【００８４】
また、（Ｕｘ、Ｕｙ）＝（＋１、＋３）、（Ｖｘ、Ｖｙ）＝（−３、＋１）、（ＸＭＡＸ、ＹＭＡＸ）＝（１０、１０）と、パラメータを設定すると、各画素における分周カウンタＣｘ、Ｃｙのカウント値（Ｐｘ、Ｐｙ）は、図１５（ｃ）に示すようなカウント値となる。従って、（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（０、７）と設定し、セルの境界を超える条件及びその条件のときにどの隣接セルに移動したのかを示す条件を設定することにより、上述した場合と同様に、セル毎にそのセル内の画素値を平均化することができる。
【００８５】
また、図５（ａ）に示したスクリーンパターンＭｐ以外の形状であっても、本発明を適用可能である。
例えば、図１６に示すスクリーンパターンの形状の場合、セルサイズは８であるので、仮想正方形の一辺は√８＝√（２×２＋２×２）＝２√２である。よって、セルの座標系として、仮想正方形のサイズを√２倍にスケーリング（√８×√２＝４）したサイズを設定し、画像上の１画素分の距離をこのセルの座標系に射影すると、Ｘ２、Ｙ２方向に（１、１）のずれとなるので、分周カウンタＣｘ、Ｃｙは、±１の何れかを増分としてカウントする。またこのとき、セルの傾きは上記１画素分のずれから１／１＝１であり、セルの一辺は２√２×√２＝４であるので、（ＸＭＡＸ、ＹＭＡＸ）＝（４、４）と設定する。
【００８６】
ここで、画像の座標系に対し、開始位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｏｘ、Ｏｙ）＝（２、３）、主走査方向への増分（Ｕｘ、Ｕｙ）＝（＋１、＋１）、副走査方向への増分（Ｖｘ、Ｖｙ）＝（−１、＋１）、平均値算出位置（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（０、３）、分周カウンタＣｘ、Ｃｙのカウント範囲（ＸＭＡＸ、ＹＭＡＸ）＝（４、４）と、各パラメータを設定する。このとき、注目画素が主走査方向に１画素分移動すると、Ｐｘ≧ＸＭＡＸ（＝４）を満たすとセルはＡ方向の隣接セル（−Ｌ＋１）に移動し、Ｐｙ≧ＹＭＡＸ（＝４）を満たすとＢ方向の隣接セル（＋Ｌ）に移動する。また、副走査方向に注目画素を１画素分移動したとき、Ｐｙ≧ＹＭＡＸを満たすとＣ方向の隣接セル（＋２Ｌ−１）に移動し、Ｐｘ＜０となるとＤ方向の隣接セル（＋Ｌ−１）に移動する。これらの条件に応じて注目画素を走査させる毎に、注目画素が属するセルを判別してセル番号fncを更新設定し、当該セル番号に対応するメモリ領域Ｍ［fnc］に注目画素の画素値を累積加算していくことにより、セル毎に平均化を行う。
【００８７】
さらに、セルは正方形ではなく、図１７に示すようなスクリーンパターンの場合には、平行四辺形を適用することができる。平行四辺形は、直交座標空間に一次変換をかけて仮想正方形が変形したものと考えられるので、セル形状が平行四辺形であっても、正方形の場合と同様の処理で平均化が可能である。なお、正方形の場合、ＸＭＡＸ、ＹＭＡＸはセルサイズと一致していたが、平行四辺形の場合、セル形状自体が歪んでいるため、ＸＭＡＸ、ＹＭＡＸは変則的に設定する。
【００８８】
例えば、図１７に示すスクリーンパターンの形状の場合、セルは一辺が√４の仮想正方形が一次変換された後、上記と同様のスケーリングによりセルの座標系を設定することにより、底辺４、高さ２（何れも画素が単位）の平行四辺形に変形されたものと考えることができる。セルは画像に対して傾き０で設定することができるので、開始位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｏｘ、Ｏｙ）＝（０、１）、主走査方向への増分（Ｕｘ、Ｕｙ）＝（＋１、０）、副走査方向への増分（Ｖｘ、Ｖｙ）＝（−１、＋１）、平均値算出位置（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（３、１）、分周カウンタＣｘ、Ｃｙのカウント範囲（ＸＭＡＸ、ＹＭＡＸ）＝（４、２）と、各パラメータを設定する。このとき、注目画素が主走査方向に１画素分移動したとき、Ｐｘ≧ＸＭＡＸ（＝４）を満たすと、セルはＡ方向の隣接セル（＋１）に移動する。また、注目画素が副走査方向に１画素分移動したとき、Ｐｙ≧ＹＭＡＸを満たし、かつＰｘが０≦Ｐｘ＜ＸＭＡＸの状態を維持する場合はＣ方向の隣接セル（＋Ｌ−１）に移動し、Ｐｘ＜０となる場合はＢ方向の隣接セル（＋Ｌ）に移動する。よって、これらの条件に応じて注目画素を走査させる毎に、注目画素が属するセルを判別してセル番号fncを更新設定し、当該セル番号に対応するメモリ領域Ｍ［fnc］に注目画素の画素値を累積加算していくことにより、セル毎に平均化を行う。
【００８９】
また、図１８に示すスクリーンパターンの形状の場合、セルは見かけ上３×３の正方形であるが、仮想的なセル形状は正方形ではなく、画像の座標系に対してｔａｎθ＝−１／３だけ傾いている、セルサイズ９の平行四辺形である。
ここで、開始位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｏｘ、Ｏｙ）＝（０、２）、主走査方向への増分（Ｕｘ、Ｕｙ）＝（＋３、−１）、副走査方向への増分（Ｖｘ、Ｖｙ）＝（０、＋３）、平均値算出位置（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（６、６）、分周カウンタＣｘ、Ｃｙのカウント範囲（ＸＭＡＸ、ＹＭＡＸ）＝（９、９）と、各パラメータを設定する。このとき、注目画素が主走査方向に１画素分移動したとき、Ｐｘ≧ＸＭＡＸ（＝９）を満たし、かつＰｙ＜０となると、セルはＡ方向の隣接セル（−２Ｌ＋１）に移動し、Ｐｘ≧ＹＭＡＸ（＝９）を満たし、かつ０≦Ｐｙ＜ＹＭＡＸの状態を維持する場合はＢ方向の隣接セル（＋Ｌ）に移動するので、これらの条件に応じて注目画素を走査させる毎に、注目画素が属するセルを判別してセル番号fncを更新設定し、当該セル番号に対応するメモリ領域Ｍ［fnc］に注目画素の画素値を累積加算していくことにより、セル毎に平均化を行う。
【００９０】
また、２次元ではなく、図１９に示すような１次元のスクリーンパターンの場合にも適用可能である。図１９に示すスクリーンパターンの形状の場合、セル形状は高さ１画素分の平行四辺形として設定することができ、セルは画像に対して傾き０で設定することができる。ここで、開始位置における分周カウンタＣｘ、Ｃｙのカウント値（Ｏｘ、Ｏｙ）＝（０、０）、主走査方向への増分（Ｕｘ、Ｕｙ）＝（＋１、０）、副走査方向への増分（Ｖｘ、Ｖｙ）＝（−１、＋１）、平均値算出位置（ＬＡＳＴＸ、ＬＡＳＴＹ）＝（３、０）、分周カウンタＣｘ、Ｃｙのカウント範囲（ＸＭＡＸ、ＹＭＡＸ）＝（４、１）と、各パラメータを設定する。このとき、注目画素が主走査方向に１画素分移動したとき、Ｐｘ≧ＸＭＡＸ（＝４）を満たす場合、セルはＡ方向の隣接セル（＋１）に移動する。また、注目画素が副走査方向に１画素分移動したとき、Ｐｘ＜０かつＰｙ≧ＹＭＡＸを満たす場合はセルはＣ方向の隣接セル（＋Ｌ−１）に移動し、０≦Ｐｘ＜ＸＭＡＸかつＰｙ≧ＹＭＡＸを満たす場合はＢ方向の隣接セル（＋Ｌ）に移動するので、これらの条件に応じて注目画素を走査させる毎に、注目画素が属するセルを判別してセル番号fncを更新設定し、当該セル番号に対応するメモリ領域Ｍ［fnc］に注目画素の画素値を累積加算していくことにより、セル毎に平均化を行う。
【００９１】
このように、様々なスクリーンパターンの形状に応じてセルを設定することができ、設定されたセルに応じて、（Ｕｘ、Ｕｙ）、（Ｖｘ、Ｖｙ）、（ＬＡＳＴＸ、ＬＡＳＴＹ）、（ＸＭＡＸ、ＹＭＡＸ）等のパラメータを設定することにより、容易にセル毎の平均化、つまりスクリーンパターンと一致する領域毎に画素値の平均化を行うことができる。
【図面の簡単な説明】
【００９２】
【図１】本実施の形態における画像処理装置１の内部構成を示す図である。
【図２】画像処理部４３の内部構成を示す図である。
【図３】統合処理部７の内部構成を示す図である。
【図４】色材毎に異なるスクリーンパターンの一例を示す図である。
【図５】（ａ）スクリーンパターン例を示す図であり、（ｂ）スクリーンパターンを画像に適用した例を示す図である。
【図６】画像上に設定したセルを示す図である。
【図７】（ａ）セル番号の設定例を示す図であり、（ｂ）特定セルと隣接セルとのセル番号の関係を示す図である。
【図８】分周カウンタＣｘ、Ｃｙによるカウント値を示す図である。
【図９】平均化（重み付け係数が全て１）を示す図である。
【図１０】特定領域が含まれる場合の平均化を示す図である。
【図１１】平均化（重み付け係数が多値）を示す図である。
【図１２】平均化処理を説明するフローチャートを示す図である。
【図１３】平均化処理において実行される主走査ライン処理を説明するフローチャートである。
【図１４】平均化処理において実行される副走査ライン処理を説明するフローチャートである。
【図１５】傾き−１／３でセルを設定した場合において、（ａ）セル番号の設定例を示す図であり、（ｂ）特定セルと隣接セルとのセル番号の関係を示す図であり、（ｃ）分周カウンタＣｘ、Ｃｙによるカウント値を示す図である。
【図１６】他のスクリーンパターン形状の場合における実施例を示す図である。
【図１７】他のスクリーンパターン形状の場合における実施例を示す図である。
【図１８】他のスクリーンパターン形状の場合における実施例を示す図である。
【図１９】他のスクリーンパターン形状の場合における実施例を示す図である。
【符号の説明】
【００９３】
１    画像処理装置
１０    画像読取部
２０    操作部
２５    タッチパネル
３０    表示部
４０    本体部
４１    制御部
４２    記憶部
４３    画像処理部
Ｄ    デコーダ
７    統合処理部
ｙ７１、ｍ７１、ｃ７１、ｋ７１    平均化処理部
ｙ７２、ｍ７２、ｃ７２、ｋ７２    γ補正処理部
ｙ７３、ｍ７３、ｃ７３、ｋ７３    スクリーン処理部
Ｃｘ、Ｃｙ    分周カウンタ
７４    メモリ
４４    ＤＲＡＭ制御部
４５    画像メモリ
４６    画像判別回路
５０    プリンタ部
【図１】
2006067305.tif 000003
【図２】
2006067305.tif 000004
【図３】
2006067305.tif 000005
【図４】
2006067305.tif 000006
【図５】
2006067305.tif 000007
【図６】
2006067305.tif 000008
【図７】
2006067305.tif 000009
【図８】
2006067305.tif 000010
【図９】
2006067305.tif 000011
【図１０】
2006067305.tif 000012
【図１１】
2006067305.tif 000013
【図１２】
2006067305.tif 000014
【図１３】
2006067305.tif 000015
【図１４】
2006067305.tif 000016
【図１５】
2006067305.tif 000017
【図１６】
2006067305.tif 000018
【図１７】
2006067305.tif 000019
【図１８】
2006067305.tif 000020
【図１９】
2006067305.tif 000021