(57)【要約】【課題】  高画質なハーフトーン画像を生成する。【解決手段】  入力画像データから第一のハーフトーン画像データを生成する第一のハーフトーン処理手段と、前記入力画像データと前記第一のハーフトーン画像データとの差分の低周波成分を抽出する第一の差分抽出手段と、前記入力画像データから前記第一のハーフトーン画像データとは異なる第二のハーフトーン画像データを生成する第二のハーフトーン処理手段と、前記入力画像データと前記第二のハーフトーン画像データとの差分の低周波成分を抽出する第二の差分抽出手段と、前記第一の差分抽出手段の結果と前記第二の差分抽出手段の結果に基づいて、前記第一のハーフトーン画像データと前記第二のハーフトーン画像データとを合成する合成手段とを有する。【選択図】  図２
2012114745.tif 000002
【特許請求の範囲】
【請求項１】
入力画像データから第一のハーフトーン画像データを生成する第一のハーフトーン処理手段と、
前記入力画像データと前記第一のハーフトーン画像データとの差分の低周波成分を抽出する第一の差分抽出手段と、
前記入力画像データから前記第一のハーフトーン画像データとは異なる第二のハーフトーン画像データを生成する第二のハーフトーン処理手段と、
前記入力画像データと前記第二のハーフトーン画像データとの差分の低周波成分を抽出する第二の差分抽出手段と、
前記第一の差分抽出手段の結果と前記第二の差分抽出手段の結果に基づいて、前記第一のハーフトーン画像データと前記第二のハーフトーン画像データとを合成する合成手段
とを有する画像処理装置。
【請求項２】
前記第一のハーフトーン処理手段は、スクリーン処理によって第一のハーフトーン画像データを生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第二のハーフトーン処理手段は、スクリーン処理によって第二のハーフトーン画像データを生成することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記第一の差分抽出手段は、前記入力画像データと前記第一のハーフトーン画像データとの差分から、前記第一のハーフトーン画像データが有するスクリーン周波数付近より高域の周波数成分を取り除くことを特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記第一の差分抽出手段は、フィルタ処理を用いることを特徴とする請求項１乃至４のいずれか一項に記載の画像処理装置。
【請求項６】
さらに前記入力画像データのエッジ量を抽出するエッジ抽出手段を有し、
前記合成手段は、前記エッジ量に基づいて前記第一のハーフトーン画像データと前記第二のハーフトーン画像データとを合成することを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
入力画像データから第一のハーフトーン画像データを生成する第一のハーフトーン処理工程と、
前記入力画像データと前記第一のハーフトーン画像データとの差分の低周波成分を抽出する第一の差分抽出工程と、
前記入力画像データから前記第一のハーフトーン画像データとは異なる第二のハーフトーン画像データを生成する第二のハーフトーン処理工程と、
前記入力画像データと前記第二のハーフトーン画像データとの差分の低周波成分を抽出する第二の差分抽出工程と、
前記第一の差分抽出工程の結果と前記第二の差分抽出工程の結果に基づいて、前記第一のハーフトーン画像データと前記第二のハーフトーン画像データとを合成する合成工程
とを有する画像処理方法。
【請求項８】
請求項１から請求項６の何れか一項に記載の画像処理装置の各手段としてコンピュータを機能させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハーフトーン処理するものに関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータ（ＰＣ）で処理した画像データを印刷することが広く行われている。しかしながら、画素あたりの階調数を比較すると、ＰＣ上で画像データを表現する階調数に対して、印刷装置や表示装置によって表現可能な階調数が少ない場合がある。このため、これら印刷装置や表示装置へ画像データを出力する時には、入力画像データの階調数を出力装置で表現可能な階調数に変換するハーフトーン処理がなされることが多い。
【０００３】
ハーフトーン処理の１つとして、入力画像データを周期的に繰り返す閾値と比較することによって出力値を決定するスクリーン処理が知られている。ここでいうスクリーン処理では、面積階調で画像の濃淡を表現したＡＭスクリーン画像が得られるため、厳密にはＡＭスクリーン処理とも言われている。
【０００４】
スクリーン処理した画像データには、視覚的に目立つ繰り返しパターン（モアレ）が発生し、画質が劣化する場合がある。スクリーン処理では、閾値の周期に近い空間周波数成分を含む入力画像に対して、モアレが生じることが知られている。また、入力画像が細線やエッジを含む場合、細線やエッジの角度とスクリーン処理に用いられるスクリーンのスクリーン角に近いと、細線・エッジ位置と閾値との位相の組み合わせにより、大きく濃度が変動してしまうことがある。
【０００５】
従来、周波数特性の異なる複数のスクリーン処理手段を組み合わせることでモアレを低減する方法が提案されている。たとえば、入力階調値に応じて低線数と高線数のディザ処理（スクリーン処理）を選択する方法（特許文献１）がある。また、入力画像信号のパターン周期検出結果に応じてスクリーンを選択する方法（特許文献２）も開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−２７７８０８
【特許文献２】特開２００６−２５４０９５
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら特許文献１では、入力画像の空間周波数成分とは無関係にディザ処理の線数を選択する。そのため、低線数のディザ処理を施してもモアレが目立たない場合にもかかわらず、高線数を選択して階調性が低下するおそれがある。
【０００８】
また、特許文献２では、パターン周期検出が煩雑でありながら、エッジ位置とスクリーン閾値の位相の関係が考慮されていない。このため、エッジ部における濃度変動や欠落が改善できない。
【０００９】
本発明の目的は、ハーフトーン処理を用いた画像処理装置において、高画質な出力画像を得ることにある。さらに、エッジ部を含む入力画像に対しても、高画質は出力画像得ることも目的とする。
【課題を解決するための手段】
【００１０】
前記目的を達成するために本発明は、入力画像データから第一のハーフトーン画像データを生成する第一のハーフトーン処理手段と、前記入力画像データと前記第一のハーフトーン画像データとの差分の低周波成分を抽出する第一の差分抽出手段と、前記入力画像データから前記第一のハーフトーン画像データとは異なる第二のハーフトーン画像データを生成する第二のハーフトーン処理手段と、前記入力画像データと前記第二のハーフトーン画像データとの差分の低周波成分を抽出する第二の差分抽出手段と、前記第一の差分抽出手段の結果と前記第二の差分抽出手段の結果に基づいて、前記第一のハーフトーン画像データと前記第二のハーフトーン画像データとを合成する合成手段とを有する。
【発明の効果】
【００１１】
以上本発明によれば、ハーフトーン処理を用いた画像処理装置において、高画質な出力画像を得ることができる。さらに、エッジ部を含む入力画像に対しても高画質な出力画像を得ることができる。
【図面の簡単な説明】
【００１２】
【図１】実施例１に示す画像処理装置を示す図
【図２】実施例１におけるハーフトーン処理部を示す図
【図３】スクリーン処理の概要を示す図
【図４】図３とは異なるスクリーン線数によるスクリーン処理の概要を示す図
【図５】スクリーン画像データの黒化面積の成長の様子を示す図
【図６】実施例１における第１差分抽出部を示す図
【図７】平滑フィルタ処理で用いられる平滑フィルタを示す図
【図８】実施例１における係数決定処理のフローを示す図
【図９】本発明に係る実施例２におけるハーフトーン処理部を示す図
【図１０】実施例２における一様な濃度の画像データに対する各スクリーン処理部による処理結果を示す図
【図１１】実施例２におけるエッジを含む画像データに対する各スクリーン処理部による処理結果を示す図
【図１２】実施例２における平滑フィルタを示す図
【図１３】実施例２におけるエッジ抽出部で用いられるエッジ抽出フィルタの例を示す図
【図１４】エッジ判定方法の例を示す図
【図１５】実施例２における係数決定処理のフロー図
【図１６】実施例２による画像処理結果を示す図
【図１７】変形例におけるハーフトーン処理部を示す図
【発明を実施するための形態】
【００１３】
以下、添付の図面を参照して、本発明を好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【実施例１】
【００１４】
図１は本実施例に係る画像処理装置１０の構成例を示すブロック図である。図１において画像処理装置１０は、画像読み取り部１１、描画部１２、色分解部１３、ハーフトーン処理部１４、画像出力部１５によって構成される。
【００１５】
画像読取部１１は、原稿を読み取り、入力画像データを得るためのものである。画像読取部１１は必要に応じてコントラスト補正など、精度よく原稿を読み取るための画像処理を含んでいても良い。
【００１６】
描画部１２は、印刷動作時にホスト・コンピュータ（不図示）から受信した印刷データを、画像読取部１１が出力する入力画像データと同様の形式に変換するためのものである。印刷データとしては一般に、画像データ、線の位置、方向、および長さによって構成されるベクトル・データや文字の符号とフォント情報からなる文書データなどが利用されている。これらの印刷データでは、送受信の時間短縮や記憶容量削減のため、しばしば圧縮されている。また、必要に応じて複数の形式の組み合わせが利用されていることもある。
【００１７】
なお本実施例では、画像読み取り部１１もしくは描画部１２から取得する入力画像データはレッド（Ｒ）、グリーン（Ｒ）、ブラック（Ｋ）の３つの色成分により構成されている。
【００１８】
色分解部１３は、画像読取部１１もしくは描画部１２から得た入力画像データを画像出力部１５が備えた色材色に応じた色データに変換する。本実施例における色材色は、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブルー（Ｂ）の４種類である。そのため、ＲＧＢのカラー入力画像データは、ＣＭＹＫ色分解画像データに変換される。
【００１９】
色分解部１３は、必要に応じて色域マッピング処理を行ってもよい。また、入力画像データと出力画像データ間の濃度曲線を整合させるためのガンマ変換を含む構成となっていても良い。
【００２０】
ハーフトーン処理部１４は、画像出力部１５が再現可能な階調数に応じて、色分解画像データに対してハーフトーン処理を施す。ここでは、２５６階調で表された入力画像データを１６階調のハーフトーン画像データに変換する例について説明するが、これとは異なる階調数の画像データでもよい。ハーフトーン処理部１４の詳細については後述する。
【００２１】
画像出力部１５は、ハーフトーン処理部１４が生成したハーフトーン画像データに基づいて色材を使用して、出力媒体上に画像を形成する。画像出力部１５は、たとえば、インクを吐出するインクジェット・プロセス、あるいは静電気を利用してトナーを転写する電子写真プロセスを用いて出力媒体上に画像を形成する。
【００２２】
図２は、図１におけるハーフトーン処理部１４を詳細に示す図である。ハーフトーン処理部１４は、色分解画像データの各色成分別に独立して処理を行う。各色成分に対して同様の処理をするため、以下１色分の色分解画像データを例に説明する。
【００２３】
第一スクリーン処理部２１および第二スクリーン処理部２２は、それぞれ色分解画像データを第一スクリーン画像データおよび第二のスクリーン画像データに変換する。
【００２４】
第一スクリーン処理部２１におけるスクリーン処理と第二スクリーン処理部２２におけるスクリーン処理は、色分解画像データに対して異なるスクリーン処理を施す。つまり第一スクリーン画像データと第二スクリーン画像データは異なるデータとなる。具体的にはスクリーン線数、スクリーン角、成長形状（たとえばドット成長や線成長など）、あるいは、網点位相などが異なっている。異なる複数のスクリーン処理を有することにより、第一スクリーン画像データ、および第二のスクリーン画像データのいずれか一方でモアレが目立つ場合でも、他方ではモアレが目立たないか、他方でもモアレが発生していても位相が異なるようになる。
【００２５】
第一差分抽出部２３は、第一スクリーン画像データと色分解画像データとの差分の低周波成分を抽出する。また、第二差分抽出部２４は第二のスクリーン画像データと色分解画像データとの差分の低周波成分を抽出する。各低周波成分は、色分解画像データとスクリーン画像データとの差分から、スクリーン画像データのスクリーン周波数付近より高域の周波数成分を取り除いた成分である。低周波帯域において、色分解画像データとスクリーン画像データとの差分が大きい場合、モアレ、細線の途切れ、エッジ部におけるジャギーなどが視認できるほど顕著に発生し、画質の低下を招いていることが多い。そこで各差分抽出部は、スクリーン画像データの画質を評価するため、色分解画像データとスクリーン画像データとの差分の低周波成分を抽出する。なお、第一差分抽出部２３および第二差分抽出部２４が抽出した差分値を、それぞれ第一差分画像データ、および第二差分画像データとする。差分抽出部についての詳細は別途説明する。
【００２６】
係数決定部２５は、第一差分抽出部２３から得た第一差分画像データと第二差分抽出部２４から得た第二差分画像データを評価し、第一スクリーン画像データと第二のスクリーン画像データに対する画素毎の合成係数を決定する。係数決定部２５における合成係数を決定する方法の詳細は別途説明する。
【００２７】
合成部２６は、係数決定部２５によって決定された合成係数に基づいて第一スクリーン画像データと第二のスクリーン画像データとを合成し、ハーフトーン画像データを作成する。本実施例では、各スクリーン画像データに対応する合成係数を乗じたデータを加算する。
【００２８】
以上の構成により、特性の異なる２つのスクリーン処理による結果を適切に合成し、モアレの少ない高品質がハーフトーン画像を得ることができる。
【００２９】
以下、ハーフトーン処理部１４を構成する各部の詳細についてそれぞれ説明する。
【００３０】
図３は第一スクリーン処理部２１と第二スクリーン処理部２２が行うスクリーン処理の概要を説明する図である。スクリーン処理は、色分解画像データにおける処理対象画素の画素値と処理対象画素の位置に対応する濃度曲線とからスクリーン画素値を決定する。スクリーン処理では、全画素に対してスクリーン画素値の決定し、スクリーン画像データを生成する。
【００３１】
図３（ａ）は、第一スクリーン処理部２１における画素位置と濃度曲線との対応関係を示す図である。色分解画像データを構成する各画素に対して、Ａ，Ｂ，Ｃ，Ｄ，ないしＥいずれかの濃度曲線が対応している。画素位置と濃度曲線の対応は、５×５の画像領域３１の繰り返しとなっている。ここでは処理対象画素の縦横の座標を読み取り、座標を５で割った剰余と、画像領域３１内の各画素と濃度曲線の対応によって、処理対象画素の濃度曲線を決定する。
【００３２】
図３（ｂ）は、Ａ，Ｂ，Ｃ，Ｄ，ないしＥ濃度曲線を示す。濃度曲線は色分解画像データの画素値（入力）とスクリーン画素値（出力）との理想的関係を示す。入力に対する出力の感度が高い順に、Ａ，Ｂ，Ｃ，Ｄ，Ｅとなっている。感度が高い濃度曲線Ａにおいては、入力値５１に対して出力値が３になるが、他の濃度曲線Ｂ，Ｃ，Ｄ、Ｅでは同じ入力値５１に対する出力値は０である。
【００３３】
図３（ｂ）に対して、全ての入力値に対応する出力値が整数となるように量子化（四捨五入）したものが図３（ｃ）である。図３（ｂ）における出力値０．５未満を０とし、出力値０．５以上１．５未満を１というように変換している。本実施例では、入力値となる色分解画像データの各画素値は０以上２５５以下の整数値であり、出力値となる各スクリーン画素値は０以上３以下の整数値である。スクリーン画像データの量子化値は、画像出力部１５の表現能力に応じて決定すると好適である。ここでは、スクリーン画素データは０以上３以下の整数による４値の例を示すが、任意の量子化値に適用可能である。
【００３４】
上記のように、第一スクリーン処理部２１は、図３（ａ）と（ｃ）に基づいて、色分解画像データにおける処理対象画素の位置に対応する濃度曲線を決定し、処理対象画素のスクリーン画素値を求める。たとえば、図３（ａ）の画素３２の画素値が５１だったとすると、まず図３（ａ）より濃度曲線Ａが選択される。次に図３（ｃ）の濃度曲線Ａを参照し、入力された画素値５１に対応する３が画素３２のスクリーン画素値として得られる。
【００３５】
図５（ａ）は、第一スクリーン処理部２１における黒化面積の成長の様子を示している。濃度曲線ＡからＥの５画素合計で見ると、面積比応じて０／１５から１５／１５までの１６階調の表現が可能であることがわかる。各画素は４値化されたスクリーン画素値に基づいて、黒化面積が決定される。第一スクリーン処理部２１では図５（ａ）に示したように黒化面積が成長していく。以上の処理によって第一スクリーン処理部は、２５６階調の色分解画素データを１６階調のスクリーン画素データに変換する。
【００３６】
同様に、図３（ｄ）は、第二スクリーン処理部２２における画素位置と濃度曲線との対応関係を示している。第一スクリーン処理部２１で参照される図３（ａ）とは位相が異なっている。図３の（ａ）および（ｃ）どちらも大きさ５×５である画像領域３１と画像領域３５は、色分解画像データにおいて同じ画素位置に対応している。それぞれを比較すると、画像領域３１において濃度曲線Ａを選択する画素位置において、画像領域３５では濃度曲線Ｅを選択している。濃度曲線の対応関係は、Ａ→Ｅ、Ｂ→Ｄ、Ｃ→Ｃ、Ｄ→Ｂ、Ｅ→Ａとなっている。これは、図３（ｃ）における入力に対する出力の感度が、（ａ）とは逆順となるように設定されている。そのため図５（ａ）で示した第１スクリーン処理部における黒化面積の成長とは逆順に、黒化面積が成長する。
【００３７】
図５（ｂ）と（ｃ）は、全ての画素値が１０２である一様な色分解画像データを入力した場合の、第一スクリーン画像データと第二スクリーン画像データを示している。
【００３８】
図５（ｂ）と（ｃ）では、濃度曲線としてＡまたはＢが選択された画素位置において、スクリーン画素値が３となる。また、濃度曲線Ｃ，Ｄ，のいずれかが選択された画素位置）ではスクリーン画素値は０となる。
【００３９】
以上のように、画素位置と濃度曲線との関係を変えることで、色分解画像データの入力を共通とした場合でも、相異なる第一スクリーン画像データと第二スクリーン画像データを得ることができる。
【００４０】
第一スクリーン処理部２１とは異なる特性のスクリーン処理を行う第二のスクリーン処理部は前述の例に限られない。
【００４１】
図３（ｅ）は、図３（ａ）とはスクリーン角の異なる画素位置と濃度曲線との対応関係である。スクリーン角は、図３（ａ）における画素３２と画素３２に対応する濃度曲線Ａと同じ濃度曲線Ａが対応する最も距離の近い画素とを通る直線３３で示される。これに対して、図３（ｅ）におけるスクリーン角を示す直線３７は、直線３３とは方向が異なっていることで確認できる。図３（ｅ）によるスクリーン処理は、図３（ａ）とはスクリーン角が異なるため、図３（ａ）を用いたスクリーン処理とは異なる角度のエッジに対して、良好なスクリーン処理ができる。このため、本実施例にこれら２種類のスクリーンを適応的に組み合わせることで、多方向のエッジを含む画像に対してより好適なスクリーン処理が可能となる。
【００４２】
また図４（ａ）は、図３（ａ）とはスクリーン線数の異なる画素位置と濃度曲線との対応関係である。図４（ｂ）は、図４（ａ）に対応する濃度曲線毎の色分解画像データの画素値（入力）とスクリーン画素値（出力）との関係を示す図である。
【００４３】
図３（ａ）における濃度曲線Ａの画素３２に対して、図４（ａ）では濃度曲線Ａ１，Ａ２，Ａ３，Ａ４の４画素領域４１が対応している。図４（ａ）では、大きさ１０×１０である画像領域４２の繰り返しパターンで画素位置と濃度曲線との対応関係が決定している。また、図４（ｂ）では、濃度曲線Ａ１，Ａ２，Ａ３，Ａ４の平均が図３（ｂ）における濃度曲線Ａと等しくなっている。他の濃度曲線についても同様に、対応する４画素の濃度曲線の平均が図３（ｂ）における濃度曲線と等しくなるように設定する。
【００４４】
以上のように図４（ａ）は、図３（ａ）と比較して繰返しパターンの周期が各座標軸で２倍、つまり、半分のスクリーン線数に相当するスクリーン処理を行うことができる。図４に示すスクリーン処理は、図３（ａ）と比較して低線数であり、階調性において優れているが、解像度では劣る。このため、本実施例にこれら２種類のスクリーンを適応的に組み合わせることで、より好適なスクリーン処理が可能となる。
【００４５】
図６は第一差分抽出部２３における差分抽出処理について説明する図である。以下、第一差分抽出部２３の場合について説明するが、第二差分抽出部も同様である。
【００４６】
第一差分抽出部２３は、色分解画像データと第一スクリーン画像データから、第一差分画像データを算出する。第一差分画像データは、各画素の第一差分画素値の集合体である。
【００４７】
図６（ａ）は本実施例における第一差分抽出部２３の構成を示すブロック図である。画素値調整部６１は、色分解画像データの値域（０以上２５５以下）と、第一スクリーン画像データの値域（０以上３以下）との尺度をあわせるためのものである。画素値調整部６１は、第一スクリーン画像データの各スクリーン画素値に対して８５倍（８５＝２５５／３）し、出力する。具体的には０、１、２、３いずれかであるスクリーン画素値がそれぞれ、０、８５、１７０、２５５に調整される。
【００４８】
第一平滑フィルタ部６２は色分解画像データに対してフィルタ処理をする。また第二平滑フィルタ部６３は、調整された第一スクリーン画像データに対してフィルタ処理を行う。第一平滑フィルタ部６２で用いられるフィルタと第二平滑フィルタ部６３で用いられるフィルタは、同一のフィルタ係数による空間フィルタである。各平滑フィルタ処理は、スクリーン周期を取り除くため、スクリーン周波数よりも高域の周波数成分を除去している。好ましいフィルタ係数の決定方法については別途説明する。
【００４９】
差分算出部６４は、各画素において第一平滑フィルタ部６２からの出力データと第二平滑フィルタ部６３からの出力データとの差分を算出し、第一差分画像データを出力する。第一差分画像データは、スクリーン周期を取り除かれた第一スクリーン画像データと色分解画像データとの差分である。つまり、当該差分の低周波成分を算出している。
【００５０】
モアレは、入力画像がスクリーン周期と干渉し、入力画像の高周波成分がスクリーン周期の空間周波数よりも低域に折り返すことによって出現する、視認可能な周期的パターンである。よって、スクリーン画像データと色分解画像データとの差分に対して、スクリーン周期より高域の周波数成分を取り除くようなフィルタ処理を適用することにより抽出される低周波成分はモアレ成分に相当する。
【００５１】
なお、第一平滑フィルタ部６２と第二平滑フィルタ部６３が同一の線形特性を持つ場合は、図６（ａ）は、図６（ｂ）のように構成することも可能である。画素値調整部６５は画素値調整部６１と同様に、第一スクリーン画像データ全ての画素に対して画素値の調整をする。差分算出部６６は、対応する処理対象画素において、色分解画像データの画素値と調整された第一スクリーン画像データのスクリーン画素値との差分を算出する。その後に、平滑フィルタ部６７により平滑化を行う。
【００５２】
以下、第一平滑フィルタ部６２と第二平滑フィルタ部６３、あるいは平滑フィルタ部６７における平滑フィルタのフィルタ係数について説明する。これら平滑フィルタのフィルタ係数は、第一スクリーン処理部２１のスクリーン処理に応じて決定することが好ましい。前述のとおり第一スクリーン処理部２１では、図３（ａ）のように、５×５画素領域３１の繰り返しパターンによってスクリーン処理する。従って、第一スクリーン処理部２１による処理結果、第一スクリーン画像データも同様に５×５画素の繰り返し周期をもつ。そこで、第一平滑フィルタ処理６２および第二平滑フィルタ部は、図７（ａ）の係数による空間フィルタを用いる。空間フィルタ（ａ）は、処理対象画素を含む５×５画素領域内の平均を算出する。これによりフィルタ処理する画像データのスクリーン周期を取り除く。
【００５３】
上記空間フィルタへの入力画素群は、第一スクリーン処理部２１における繰り返しパターンの境界に合わせても良い。あるいは、処理対象画素が図７（ａ）の中心画素７１となるように、画素単位の移動平均値としても良い。
【００５４】
また、他の構成例として、図７（ｂ）に示すように、処理対象画素が中心画素７２となるような３×３画素領域の空間フィルタとしても良い。本実施例の場合、どの３×３画素領域をとっても、中心となる処理対象画素と同一の濃度曲線を使用する画素は３×３画素領域内にほかになく、処理対象画素と異なる濃度曲線の画素はそれぞれ２つずつ３×３画素領域内に含まれている。たとえば、図７（ｃ）の画素領域７３において、濃度曲線Ａの画素は中心の１画素のみで、濃度曲線Ｂ，Ｃ，Ｄ，Ｅとなる画素は画素領域７３内に２画素ずつとなっている。濃度曲線Ｂとなる画素を中心とする画素領域７４や濃度曲線Ｃとなる画素を中心とする画素領域７５についても同様である。よって、各濃度曲線に対する係数の合計が２／１０となるようにするため、中心画素７５の係数を２／１０、他の画素の係数を１／１０としたものが図７（ｂ）である。図７（ｄ）のように、中心画素７６に近い画素が大きな重みとなるような係数としても良い。
【００５５】
なお、ここでは平均濃度を算出する平滑フィルタ処理を構成としたが、必ずしも厳密な平均値を算出しなくても同様の効果を得られる。色分解画像データとスクリーン画像データとの差分に対して、高域の周波数成分を除去する処理となっていればよい。
【００５６】
以上のように、各平滑フィルタ処理に用いられるフィルタのフィルタ係数は、対応するスクリーン処理部の繰り返しパターンに合わせて、濃度曲線別の係数合計が均等になるように構成すると好適である。
【００５７】
以下、係数決定部２５の詳細について説明する。図８は係数決定部２５において合成係数を算出するフローを示す図である。合成係数とは、処理対象画素において、第一スクリーン画素値と第二スクリーン画素値を合成するための係数である。係数決定部２５は、画素ごとに第一差分画素値と第二差分画素値とから、処理対象画素における合成係数を算出する。第一スクリーン画素値に乗算する第一合成係数と第二スクリーン画素値に乗算する第二合成係数とする。それぞれの合成係数は非負であり、かつ、第一合成係数と第二合成係数との和が１である。
【００５８】
ステップ８１では、第一差分画素値ｐが０であるか否かを判定する。これは、後続のステップ８６において、０による除算を回避するためである。第一差分画素値ｐが０である場合にはステップ８２に、０でない場合にはステップ８３に分岐する。なお、ステップ８１において、必ずしも厳密に０と等しいか否かを判定する必要はなく、ごく小さな閾値未満である場合ｐを０とみなしてもよい。
【００５９】
ステップ８３では、第一差分画素値ｐと第二差分画素値ｓの符号（正負）を比較する。両者が同一の場合はステップ８４に、異なる場合はステップ８６に分岐する。
【００６０】
ステップ８６において、第一差分画素値ｐと第二差分画素値ｓとが異符号である場合、式（１）、（２）の通りに合成係数を算出する。ただしｃ１は第一合成係数、ｃ２は第二合成係数である。
ｃ１＝｜ｓ｜／（｜ｐ｜＋｜ｓ｜）                ・・・式（１）
ｃ２＝｜ｐ｜／（｜ｐ｜＋｜ｓ｜）                ・・・式（２）
このようにして算出したｃ１およびｃ２は、ｃ１×ｐ＋ｃ２×ｓ＝０を満たす。
【００６１】
一方、第一差分画素値ｐと第二差分画素値ｓが同符号である場合、ステップ８４において、第一差分画素値ｐと第二差分画素値ｓとの絶対値を比較する。両者が同一か、あるいは、第一差分画素値の絶対値｜ｐ｜が０により近い場合にはステップ８２に、第二差分画素値の絶対値｜ｓ｜が０により近い場合にはステップ８５に分岐する。
【００６２】
ステップ８２は、第一差分画素値ｐが０である場合、もしくは、第一差分画素値ｐと第二差分画素値ｓが同一符号で、かつ、両者が等しい、ないし、第一差分画素値ｐの方がより０に近い場合の処理である。差分画素値が小さい方が好ましいため、第一スクリーン画素値を最終的な出力値である合成後ハーフトーン画素値となるようにする。よって、第一スクリーン画素値に乗算する第一合成係数を１、第二スクリーン画素値に乗算する第二合成係数を０に設定する。
【００６３】
ステップ８５は、第一差分画素値ｐと第二差分画素値ｓが同一符号で、かつ、第二差分画素値ｓの方がより０に近い場合の処理である。ステップ８２と同様に差分画素値が小さい方が好ましいため、第二スクリーン画素値が最終的な出力値である合成後ハーフトーン画素値となるようにする。よって、第一スクリーン画素値に乗算する第一合成係数を０、第二スクリーン画素値に乗算する第二合成係数を１に設定する。
【００６４】
係数決定部２５は、以上の合成係数決定処理により各画素における第一合成係数と第二合成係数を算出する。合成係数は、第一スクリーン画素値と第二スクリーン画素値とを合成し、合成後ハーフトーン画素値を算出するための係数である。係数決定部２５は、第一差分値と第二差分値が異符号の場合、式（１）と式（２）を用いて、合成後ハーフトーン画素値と色分解画素値との差分の全画素における平均値が０に近づくように合成係数を決定する。また第一差分値と第二差分値が同符号である場合、より色分解画素値に近い方のスクリーン画素値が選択されるように合成係数を決定する。これにより、モアレを低減しながら濃度保存を考慮したスクリーン画像データの合成をすることができる。
【００６５】
なお、本実施例ではフローチャートに従って合成係数を決定したが、ルックアップテーブル（ＬＵＴ）を用いてもよい。
【００６６】
合成部２６は、第一スクリーン画像データと第二スクリーン画像データを合成する。具体的には、画素ごとに合成する。第一スクリーン画像データを構成する処理対象画素の第一スクリーン画素値と処理対象画素に対応する第一合成係数とを乗算する。同様に、第二スクリーン画像データを構成する処理対象画素の第二スクリーン画素値と処理対象画素に対応する第二合成係数とを乗算する。そして、それぞれ合成係数を乗算した第一画素値と第二画素値とを加算し、端数を四捨五入して合成後ハーフトーン画素値を求める。
【００６７】
なお、出力階調数が少ない（たとえば２値）場合には、上記端数処理において、切り捨てと切り上げが一方に偏ると画像全体の濃度が保存されないことがある。これを避けるため、近傍領域内における端数処理前と端数処理後の画素値の平均がかい離しないよう構成することが望ましい。具体的には、切り捨てと切り上げの閾値を乱数によって求めたり、画素位置によって端数処理の閾値を変動させたりすることで、端数処理前と端数処理後の画素値平均の差を小さくすることが可能である。
【００６８】
また、ステップ８２やステップ８５において、第一差分画素値の絶対値｜ｐ｜と第二差分画素値の絶対値｜ｓ｜のいずれも０にならない場合、近傍画素の差分画素値の合計が０となるように構成することも可能である。すなわち、差分画素値の絶対値が小さい方の差分値を繰り越して、後続の画素の処理において繰り越した差分値を、第一差分画素値あるいは第二差分画素値それぞれに加算してから合成係数算出処理を行う。このとき、誤差拡散法に準じて、隣接する複数の画素にそれぞれの位置に応じた係数を乗じた差分値を繰り越すように構成しても良い。
【００６９】
以上のように、スクリーン処理した後の画像データと色分解後画像データとの差分の低周波成分に基づいて合成係数を決定する。これにより合成部２６から得たハーフトーン画像データは、入力の色分解画素値との濃度差が全体として０に近づくように作用する。このため、モアレを抑制しながら濃度保存も実現した視覚的に好ましい出力画像を得ることが可能となる。
【実施例２】
【００７０】
実施例１では、画像の特徴に関わらず全ての画素に対して同じ処理を行う例を示した。実施例２では、画像のエッジ量を考慮した例について説明する。なお、実施例１と同一な構成については、同じ符号を付して説明する。
【００７１】
図９は、実施例２におけるハーフトーン処理部１４（図１）の構成例を示す。実施例２では、ハーフトーン処理部１４はエッジ抽出部９７を有し、係数決定部９８はエッジ抽出部９７によるエッジ情報に基づいて合成係数を決定する。また、ハーフトーン処理部１４は特性の異なる３つのスクリーン処理部を有している。
【００７２】
図１０は、一様な濃度の入力画像に対する第一スクリーン処理部９１、第二スクリーン処理部９２、および第三スクリーン処理部９３による処理結果を示している。入力画像は、２５％濃度の（ａ）、５０％濃度の（ｂ）、および７５％濃度（ｃ）である。第一スクリーン処理部９１による処理結果はそれぞれ（ｄ）、（ｅ）、（ｆ）であり、一般的な網点と同様の格子状の結果となる。第二スクリーン処理部９２による処理結果は（ｇ）、（ｈ）、（ｊ）であり、横縞状になっている。また第三スクリーン処理部９３による処理結果は（ｋ）、（ｍ）、（ｎ）であり、横縞状となっている。第二スクリーン処理部９２、および、第三スクリーン処理部９３が強い方向性を有している。すなわち、第二スクリーンおよび第三スクリーンは、第一スクリーンとは網点形状が異なり、特定の方向に線状に配列されたスクリーンである。
【００７３】
図１１は、線画像に対する第一スクリーン処理部９１、第二スクリーン処理部９２、および第三スクリーン処理部９３による処理結果を示す。図１１において（ａ）は２５％濃度の横線画像、（ｂ）は５０％濃度の横線画像、（ｃ）は７５％濃度の横線画像である。
【００７４】
第一スクリーン処理部９１による処理結果はそれぞれ、（ｄ）、（ｅ）、（ｆ）である。（ｄ）では一部の線が欠落している。また、（ｆ）では線によって濃淡の差が生じてしてまっている。第三スクリーン処理部９３による処理結果はそれぞれ、（ｋ）、（ｍ）、（ｎ）に示す。いずれの入力画像に対しても、欠落してしまう線がある。これらに対して、第二スクリーン処理部９２による処理結果は、（ｇ）、（ｈ）、（ｊ）に示すように、いずれの入力画像においても各線の濃度が均一で、欠落してない。
【００７５】
以上のように、入力画像データに特定方向のエッジがある場合には、エッジと直交するスクリーンが好適である。よって本実施例では、一般的なスクリーン処理である第一スクリーン処理部９１に加えて、それぞれ特定方向のエッジに最適化された第二スクリーン処理部９２と第三スクリーン処理部９３を用いる。本実施例では、横方向と縦方向のエッジに適したスクリーン処理を有しているが、これに限らず、必要に応じて異なる方向のエッジに適したスクリーン処理による構成としていればよい。
【００７６】
次に実施例２における第一差分抽出部９４、第二差分抽出部９５、および第三差分抽出部９６について説明する。これらの差分抽出部は、それぞれ第一差分画像データ、第二差分画像データ、第三差分画像データを算出する。第一実施例とほぼ同様である。
【００７７】
実施例２における第一スクリーン処理部９１、第二スクリーン処理部９２、および第三スクリーン処理部による処理結果は、いずれも４×４画素ブロックの繰り返しパターンになる。そこで第一差分抽出部９４、第二差分抽出部９５、および第三差分抽出部９６は、図１２（ａ）のフィルタを用いてフィルタ処理をする。図１２（ａ）に示すフィルタは、処理対象画素を含む４×４のサイズであり、各画素の係数が１／１６である。あるいは、処理対象画素に対して対称な係数となるように、図１２（ｂ）のような構成にしても良い。いずれもフィルタ処理する画像データから、スクリーン周期を取り除くことができるように設計された空間フィルタである。
【００７８】
以下、エッジ抽出部９７について説明する。エッジ抽出部９７は、特定方向のエッジに最適な第二スクリーン処理部９２、ないし、第三スクリーン処理部９３を適用すべきか否かを判定するために、エッジ量を抽出する。本実施例では、画素ごとにエッジかどうか、さらにエッジであるならば縦方向か横方向かを判定し、各画素に対してエッジ属性を設定する。
【００７９】
エッジ抽出部９７は図１３（ａ）、（ｂ）に示す空間フィルタを利用する。エッジ抽出部９７は図１３（ａ）のフィルタによるフィルタ処理結果が、所定閾値を超えた画素に対しては縦エッジと判定する。一方、図１３（ｂ）のフィルタによるフィルタ処理結果が、所定閾値を超えた画素に対しては横エッジと判定する。
【００８０】
また、エッジ抽出部９７は、図１３（ｃ）に示すフィルタを用いて図１４のフロー図に従ってエッジを判定することも可能である。まず図１３（ｃ）に示す等方的係数のフィルタを用いてフィルタ処理した結果、エッジ量が所定閾値を超えた画素をエッジ画素として判定する。次に、各差分画素値の絶対値を比較することよって、エッジの方向を判別する。この方法では、図９では不図示であるが、エッジ抽出部９７は第一差分抽出部９４、第二差分抽出部９５、第三差分抽出部９６による第一差分画素値ｐ、第二差分画素値ｓ、および、第三差分画素値ｔを参照している。
【００８１】
以下、図１４に基づいてエッジ抽出部９７の別方法を詳細に説明する。
【００８２】
ステップ１４１は、エッジ量算出処理であり、図１３（ｃ）の係数のフィルタによるフィルタ処理し、フィルタ処理結果の絶対値をエッジ量とする。
【００８３】
ステップ１４２は、ステップ１４１によるエッジ量を所定閾値と比較し、所定閾値以上であればステップ１４３以下によるエッジ方向判定へ、所定閾値未満であればエッジなしと判定してステップ１４５へと分岐する。
【００８４】
ステップ１４３は、第一差分画素値ｐと第二差分画素値ｓとの絶対値を比較し、縦方向のエッジ成分を判別する。｜ｐ｜≧｜ｓ｜の場合は、縦方向のエッジ成分は小さいと判定して、ステップ１４４へ、｜ｐ｜＜｜ｓ｜の場合は縦方向のエッジ成分が大きいと判定してステップ１４６へと分岐する。
【００８５】
ステップ１４４は、第一差分画素値ｐと第三差分画素値ｔとの絶対値を比較し、横方向のエッジ成分を判別する。｜ｐ｜≧｜ｔ｜の場合は、横方向のエッジ成分が小さいと判定して、ステップ１４５へ、｜ｐ｜＜｜ｔ｜の場合は横方向のエッジ成分が大きいと判定してステップ１４８へと分岐する。
【００８６】
ステップ１４５は、エッジ量が所定閾値未満の場合、もしくは、第一差分画素値ｐの絶対値より大きな絶対値の差分画素値が他にない場合の処理であり、特定方向のエッジがないため、エッジ属性をエッジなしと設定する。
【００８７】
ステップ１４６は、第二差分画素値ｓと第三差分画素値ｔとの絶対値を比較し、縦方向と横方向のどちらのエッジ成分が大きいを判別する。すなわち、｜ｓ｜≧｜ｔ｜の場合は、縦方向のエッジ成分が大きいと判定して、ステップ１４７へ、｜ｓ｜＜｜ｔ｜の場合は横方向のエッジ成分が大きいと判定してステップ１４８へと分岐する。
【００８８】
ステップ１４７は、第二差分画素値ｓの絶対値より大きな絶対値の差分画素値が他にない場合の処理であり、エッジ属性を縦方向エッジと設定する。
【００８９】
ステップ１４８は、第三差分画素値ｔの絶対値より大きな絶対値の差分画素値が他にない場合の処理であり、エッジ属性を横方向エッジと設定する。
【００９０】
以上のように、エッジ抽出部９７は、第二スクリーン処理部９２、および第三スクリーン処理部９３それぞれの特性に対応するエッジの有無を判別することもできる。
【００９１】
以下、実施例２における係数決定部９８の処理について、図１５を参照して説明する。図１５（ａ）は係数決定部９８が行う各画素に対する処理のフローを示し、図１５（ｂ）はさらに合成候補選択処理について詳細に示したフローである。
【００９２】
ステップ１５１において、第一スクリーン画素値、第二スクリーン画素値、第三スクリーン画素値のうち、合成に用いる二つのスクリーン画素の候補を選択する。
【００９３】
次に、ステップ１５２において、選択した二個の候補に対して、実施例１と同様の方法で対応する合成係数を決定する。このとき、ステップ１５１で選択しなかったスクリーン画素値に対する合成係数は０とする。なお、ステップ１５２は実施例１における係数決定部２５（図８）と同様であり、詳細な説明は省略する。
【００９４】
以下、ステップ１５１における合成候補選択処理について説明する。
【００９５】
ステップ１５３では、縦エッジに該当するか否かを判定する。エッジ抽出部９７によって処理対象画素のエッジ属性が縦エッジに設定されている場合はステップ１５４に、そうでない場合はステップ１５５に分岐する。
【００９６】
ステップ１５４は、縦エッジが検出された画素に対する処理である。縦エッジの画素においては、縦エッジに適した第三スクリーン処理部による処理結果の第三スクリーン画素値と、汎用の第一スクリーン処理部による処理結果第一スクリーン画素値の２つを選択する。
【００９７】
ステップ１５５では、横エッジに該当するか否かを判定する。処理対象画素のエッジ属性が横エッジに設定されている場合はステップ１５６に、そうでない場合はステップ１５７に分岐する。
【００９８】
ステップ１５６は、横エッジが検出された画素に対する処理である。横エッジの画素においては、横エッジに適した第二スクリーン処理部による処理結果の第二スクリーン画素値と、汎用の第一スクリーン処理部による処理結果の第一スクリーン画素値の２つを選択する。
【００９９】
ステップ１５７以下は、特定方向のエッジが検出されなかった画素に対する処理である。処理対象画素が特定方向のエッジではない場合、処理対象画素の３つの差分画素値によって合成に使用するスクリーン画素値を選択する。
【０１００】
ステップ１５７では、処理対象画素の第一差分画素値、第二差分画素値、第三差分他措置の符号がすべて同一かどうかを判定し、すべて同符号の場合はステップ１５８に、そうでない場合はステップ１５９に分岐する。
【０１０１】
ステップ１５８は、特定方向のエッジではなく、かつ３つの差分画素値がすべて同符号である画素に対する処理であう。この場合、３つの差分画素値のうち、各差分画素値の絶対値が小さい順に２つのスクリーン画素値を選択する。
【０１０２】
ステップ１５９は、特定方向のエッジではなく、かつ全ての差分画素値の符号が同一ではない画素に対する処理である。この場合、３つ差分画素値のうち、２つは同符号であり、１つだけ２つのは異なる符号である。そこで差分画素値が負のものと、非負のものに分けて、それぞれの符号ごとに差分画素値の絶対値の最も小さいもの１つずつ選択する。つまり、異符号である差分画素値に対応するスクリーン画素値と、同符号である２つの差分画素値のうち絶対値が小さい方の差分画素値に対応するスクリーン画素値との２つを選択する。符号の異なる２つのスクリーン画素値を選択するのは、後続の合成部による処理で差分が相殺できるようにするためである。
【０１０３】
以上のように、実施例２における係数決定部９８は、エッジ属性と差分画素値の評価によって、２種類のスクリーン画素値を選択する。その後、実施例１と同様に選択した２つのスクリーン画素値に対応する合成係数をそれぞれ決定し、また、選択しないスクリーンに対応する合成係数は０とすることで、合成係数を求めることができる。
【０１０４】
図１６は、実施２による画像処理の例である。図１６（ａ）は入力画像であり、５０％濃度の線から構成される放射状線画像である。また、図１６（ｂ）は、入力画像図１６（ａ）に対する第一スクリーン処理部９１による処理結果の第一スクリーン画像データである。図１６（ｂ）は、入力画像図１６（ａ）に対する第二スクリーン処理部９２による処理結果の第二スクリーン画像データである。図１６（ｃ）は、入力画像の図１６（ａ）に対する第三スクリーン処理部９３による処理結果の第三スクリーン画像データである。さらに図１６（ｅ）は、実施例２に従って得られる合成後ハーフトーン画像データである。
【０１０５】
図１６（ｂ）において、第一スクリーン画像データは線の角度によって濃度に大きな差がある。また、図１６（ｃ）の第二スクリーン画像データと（ｄ）の第三スクリーン画像データでは、角度によってジャギーが目立つ。これらに対し図１６（ｅ）の合成後ハーフトーン画像データでは、濃度差が目立たなくなっているうえ、ジャギーも改善されている。
【０１０６】
（変形例）
変形例では、前述の実施例においてより精度の高い処理をするため、合成後ハーフトーン画素値をフィードバックする構成について示す。なお、同一の構成については説明を省略する。
【０１０７】
図１７の破線矢印に示すように、合成部２６は第一差分抽出部２３および第二差分抽出部２４に、注目画素の合成後ハーフトーン画素値をフィードバックする。フィードバックされた注目画素の合成後ハーフトーン画素値は、各差分抽出部が有するＲＡＭ（不図示）に格納される。つまり、注目画素の画素値は、合成後ハーフトーン画素値に書き換えられる。第一差分抽出部２３と第二差分抽出部２４は、注目画素近傍の未処理画素に対してフィルタ処理する際は、ＲＡＭに格納された画素値を参照する。従って、処理済の画素は出力値である合成後ハーフトーン画素値が繁栄されるため、より精度良く濃度保存することができる。
【０１０８】
（その他の実施例）
前述の実施例および変形例では、ハーフトーン処理手段としてスクリーン処理のみを例に説明した。しかしながらハーフトーン処理手段はスクリーン処理に限られず、誤差拡散法などのハーフトーン処理を適用することもできる。入力画像に対して量子化して階調数を減らすハーフトーン処理によって、モアレ、細線の途切れ、エッジ部のジャギーといった欠陥が生じてしまうことがある。そこで前述の実施例および変形例を用いれば、入力画像との変化分が小さくなるようにハーフトーン画像を合成し、より高画質な出力を実現することができる。従って、前述の実施例や変形例に示したような入力画像をＡＭスクリーンに変換するスクリーン処理に限らず、入力画像をＦＭスクリーンに変換するハーフトーン処理をハーフトーン処理手段として用いてもよい。
【０１０９】
また、本発明は、上述した実施例の機能（例えば、上記のフロー図により示される機能）を実現するソフトウェアのコンピュータプログラムを記録した記憶媒体を、システム或いは装置に供給することによっても実現できる。この場合、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が、コンピュータが読み取り可能に記憶媒体に格納されたコンピュータプログラムを読み出し実行することにより、上述した実施例の機能を実現する。
【図１】
2012114745.tif 000003
【図２】
2012114745.tif 000004
【図３】
2012114745.tif 000005
【図４】
2012114745.tif 000006
【図５】
2012114745.tif 000007
【図６】
2012114745.tif 000008
【図７】
2012114745.tif 000009
【図８】
2012114745.tif 000010
【図９】
2012114745.tif 000011
【図１０】
2012114745.tif 000012
【図１１】
2012114745.tif 000013
【図１２】
2012114745.tif 000014
【図１３】
2012114745.tif 000015
【図１４】
2012114745.tif 000016
【図１５】
2012114745.tif 000017
【図１６】
2012114745.tif 000018
【図１７】
2012114745.tif 000019