画像処理装置および画像処理方法およびプログラム
【課題】 カラー入力画像データをスクリーン処理する際に生じる色間モアレを抑制する。
【解決手段】 異なる2色の入力画像データをスクリーン処理する画像処理装置であり、各入力画像データの積画像と各スクリーン処理後データを重畳した画像との差分の低周波成分に基づいて、各色の入力画像データに対応するスクリーン情報を合成する。
【解決手段】 異なる2色の入力画像データをスクリーン処理する画像処理装置であり、各入力画像データの積画像と各スクリーン処理後データを重畳した画像との差分の低周波成分に基づいて、各色の入力画像データに対応するスクリーン情報を合成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カラー入力画像データに対してスクリーン処理を行うものに関する。
【背景技術】
【0002】
印刷の分野では、入力画像データを網点の周期配列に変換することで、安定した階調表現が得られる。そして、この網点の配置、傾斜角度を設定するための技術はスクリーン処理技術としてよく知られている。
【0003】
特にカラー印刷では、CMYK(C:シアン、M:マゼンタ、Y:イエロー、K:ブラック)色版のそれぞれの網点の傾斜角度を異ならせることがある。これは色版間の網点の重なりと非重なりを制御し、版がずれることによる色味の変化を抑制するためである。
【0004】
しかし、CMYK色版の網点の傾斜角度はそれぞれ水平軸、垂直軸の周期が異なるため、色間の網点の重なりと非重なりの周期が特徴的なパターン(色間モアレ)として視認されることがある。特に傾斜角度が近い色版の組み合わせでは、網点の重なりと非重なり周期が長くなる(低周波となる)ため、より視認されやすい。
【0005】
ところで、オフセット印刷機に代表される印刷機においては、平面上に疎水性、親水性に分かれた画像の版に対してインクを塗布し、版を用紙と密着させて、用紙に画像を写すことで印刷を行う。用紙に写されたインクの溶媒は揮発するため、色材以外は紙面上にあまり残らない。このため、多色のインクを重ねるカラー印刷においても、色版間の互いに与える影響を少なくすることができる。結果として、網点の重なりの有無に関わらず、網点は比較的同じ面積(大きさ)で印刷される。
【0006】
網点が比較的同じ面積(大きさ)となるメリットは以下のことがある。例えば、画像明度への寄与が小さいYの色版と、画像明度への寄与が大きいKの色版の組み合わせにおいて、YKの網点が重なる場合とYKの網点が重ならない場合を考える。明度への寄与率が大きいKの網点面積がどちらもほぼ同じであるため、画像の明度もほぼ同じとなる。そのため、上述の色間モアレがより視認されやすい(網点傾斜角度の近い)色版組み合わせには、積極的に画像明度への寄与率が小さいYの色版を選ぶことにより(例えば、YK、CY、MY)、この色間モアレがほとんど視認されなくなるのである。
【0007】
一方、電子写真方式の印字装置においては、光学的に感光体に描画された潜像画像を帯電した色材で現像し、これを紙に転写し、熱と圧力で定着させることによって印字を行う。電子写真方式の色材は、樹脂を含む構成であるため定着後時間が経っても色材がそのまま紙面上に残り続ける。
【0008】
特に、電子写真方式でカラー印刷を行う場合には、色版を多重に重ねるため、紙面に残る色材の体積は格段に多くなる。電子写真方式では、多重に重ねられた色材を、熱と圧力をかけて定着させるため、色材は平坦に押し広げられ、網点の面積が増加する。網点の面積の増加は色材の体積が多いほど顕著になるため、電子写真方式の印字装置でカラー印刷を行うときは、複数の色材が重なった部分(重畳部)ほど網点面積が増加する。
【0009】
例えば、画像明度への寄与が小さいY版と、画像明度への寄与が大きいK版の組み合わせを考える。YとKの網点が重なった重畳部では、YとKが重ならない非重畳部に比して、明度への寄与が大きいKの網点面積が増加する分、画像の明度は低下してしまう。そのため電子写真方式において、上述のオフセット印刷機の場合のように、網点の傾斜角度が近い色版の組み合わせに、YK、CY、MYなどを選んでも色間モアレが視認されてしまう。
【0010】
すなわち、電子写真方式の印字装置では、複数の色材が存在する重畳部では色材が押し広げられることでその色版の網点面積が増加して明度が顕著に変化するため、色間モアレが発生しやすい。
【0011】
そこで電子写真方式において、上記色間モアレを低減するために、2つの色材の網点が重なった部分において、一方の色材量を抑制することで色間モアレを低減する技術が提案されている(特許文献1)。この技術は、例えばKY版の重畳部ではY版の色材を形成しないことによって、重畳部の面積の増加を防ぎ、色間モアレを低減するものである。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2006−341521号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、上述した特許文献1に記載された手法によれば、以下のような課題がある。
【0014】
色版の組み合わせにK版を含まない場合、色版同士の画像明度への寄与が同等であり、一方の色材量を抑制することで重畳部の色が変わってしまう。例えばCとYを組み合わせた場合、重畳部は緑色になることが理想だが、特許文献に記載された手法に従ってYの色材量を抑制すると重畳部がシアンになってしまう。
【0015】
そこで本発明は、カラー印刷において色間モアレを適切に低減できる画像処理装置および方法を提案することを目的とする。
【課題を解決するための手段】
【0016】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理手段と、前記第1のスクリーン処理手段による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳手段と、前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成手段と、前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理手段の処理結果の第1の評価値を求める第1の評価手段と、前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段と、前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理手段を有することを特徴とする。
【発明の効果】
【0017】
本発明によれば、カラー印刷において色間モアレを適切に低減できる。
【図面の簡単な説明】
【0018】
【図1】実施例1の画像処理装置、および画像形成装置の構成を示したブロック図である。
【図2】実施例1の画像処理フローを示す図である。
【図3】実施例1のスクリーン処理部を示す図である。
【図4】実施例1の基本スクリーン処理の概念を示す図である。
【図5】実施例1の候補スクリーン処理の概念を示す図である。
【図6】実施例1の評価値算出部を示す図である。
【図7】実施例1の各スクリーン処理の周波数特性と対応するローパスフィルタのカットオフ周波数を示す図である。
【図8】実施例1のパラメータ算出テーブルを示す図である。
【図9】実施例1の合成スクリーン情報算出部の動作を示す図である。
【図10】パッチ画像における実施例1の効果を示す図である。
【図11】グラデーション画像における実施例1の効果を示す図である。
【図12】実施例2の基本スクリーン処理の概念を示す図である。
【図13】実施例2の候補スクリーン処理の概念を示す図である。
【図14】網点単位領域を示す図である。
【図15】パラメータ算出テーブルの変形例を示す図である。
【図16】変形例3における候補スクリーン処理が2つ以上ある場合の例を示す図である。
【図17】その他の実施例における、基本スクリーン処理の再現性のみを評価する際の例を示す図である。
【図18】変形例2(要素値比較によるスクリーン処理の合成)における合成スクリーン情報算出部の動作を示す図である
【図19】その他の実施例における、LPFの数を減らした場合の評価値算出部の動作を示す図である。
【図20】その他の実施例における、擬似スクリーン処理について示す図である。
【図21】その他の実施例における、擬似スクリーン処理を用いた場合の評価値算出部の動作を示す図である。
【発明を実施するための形態】
【0019】
以下、添付の図面を参照して、本発明を好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0020】
(実施例1)
図1は、本実施例による画像処理装置、および画像形成装置の構成を示したブロック図である。本実施例の画像形成装置は、電子写真方式のプリンタを用いる。ただし、画像形成装置は電子写真方式のプリンタに限らず、インクジェット方式や昇華型方式、オフセット印刷方式などを用いてもよい。
【0021】
図1において、画像処理装置1と画像形成装置2は、インタフェース又は回路によって接続されている。画像処理装置1は例えば一般的なパーソナルコンピュータにインストールされたドライバである。その場合、以下に説明する画像処理装置1内の各部は、コンピュータが所定のプログラムを実行することにより実現される。ただし、画像形成装置2が画像処理装置1を含む構成としてもよい。
【0022】
画像処理装置1は、入力端子101から入力された印刷対象のカラー入力画像データを入力画像バッファ102に格納する。カラー入力画像データは、レッド(R)、グリーン(G)、ブルー(B)の3つの色成分により構成されている。
【0023】
色分解処理部103は、色分解用ルックアップテーブル(LUT)を参照して、格納されたカラー入力画像データを画像形成装置2が備える色材色に対応した画像データへ分解する。本実施例における色材色は、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4種類である。そのため、RGBのカラー入力画像データは、CMYKの画像データへ変換される。
【0024】
なおこの後、色間モアレを抑制したい入力画像データと、色間モアレを考慮しない入力画像データは異なる処理が進められる。色間モアレを抑制すべき色の組み合わせの選択は、例えばスクリーン処理部105の設定に基づき、色間モアレが低周波数域になってしまう色版の組み合わせを選択すればよい。本実施例では、CMYKのうちYK間で発生する色間モアレを抑制する例を示す。ただし色版の組み合わせはYKに限らず、どのような組み合わせを選択したとしても本実施例を適用できる。色版の傾斜角度が近い場合に色間モアレは発生しやすいので、色版の傾斜角度が近い組み合わせを選択するのが望ましい。
【0025】
スクリーン処理部105は、色分解処理部103から得た入力画像データをスクリーン処理によって2値化し、2値データを出力する。Yの入力画像データとKの入力画像データに対しては複数のスクリーン処理を施す。YおよびKのスクリーン処理後二値データは、評価値算出部106に出力される。また、色間モアレの抑制を考慮しないCおよびMの入力画像データに対しては基本スクリーン処理のみを施し、CおよびMのスクリーン処理後2値データをスクリーン処理後画像格納バッファ110に出力する。詳しくは後述する。
【0026】
評価値算出部106は、スクリーン処理部105から出力されたYK間のスクリーン処理後2値データにおける網点の重なり(重畳部)を評価する。評価値および評価値算出方法についての詳細は後述する。
【0027】
スクリーン情報生成パラメータ算出部107は、評価値算出部106から得たすべてのスクリーン処理結果に対する評価値に基づいて、合成スクリーン情報を生成するためのパラメータを算出する。
【0028】
合成スクリーン情報算出部108は、スクリーン情報生成パラメータ算出部107で算出されたパラメータを用いて、Yの合成スクリーン情報とKの合成スクリーン情報を生成する。
【0029】
合成スクリーン処理部109は、YおよびKの入力画像データを、それぞれに対応する合成スクリーン情報を参照したスクリーン処理によって2値データに変換し、スクリーン処理後画像格納バッファ110に格納する。スクリーン処理後画像格納バッファ110にはCMYK全ての二値データが格納される。
【0030】
そしてCMYKの2値データは、出力端子111より画像形成装置2へ出力される。
【0031】
また画像形成装置2は、感光体ドラム201、202、203、204、中間転写ベルト205、転写部206、定着部207、用紙トレイ208、印刷物堆積部209を有する。
【0032】
画像形成装置2においては、画像処理装置1から受信したCMYK各色の2値データに基づく潜像画像が、CMYK各色の感光体ドラム201,202,203,204上に形成される。感光体ドラム201,202,203,204において、形成された潜像画像からトナー像は中間転写ベルト205上に転写され、中間転写ベルト205上カラー像を形成する。転写部206において、このカラー像は用紙トレイ208から供給された用紙上に転写され、定着部207にて定着された後、用紙は印刷物堆積部209に送られる。
【0033】
図3はスクリーン処理部105を示している。基本スクリーン処理部301は、基本スクリーン情報保持部303の基本スクリーン情報を参照して、CMYK全ての画像データを基本スクリーン処理後2値データに変換する。なお、基本スクリーン情報保持部303は、CMYKそれぞれの画像データに対応する基本スクリーン情報を保持している。また、各基本スクリーン情報は互いに異なる。
【0034】
候補スクリーン処理部302は、候補スクリーン情報保持部304の候補スクリーン情報を参照する。候補スクリーン処理部が入力画像データを二値化するのは、色間モアレを抑制したいYKの入力画像データのみである。つまり候補スクリーン情報保持部304は、色間モアレを抑制したい色の組み合わせに対応する候補スクリーン情報を保持していればよい。従って、ここでは互いに異なるY候補スクリーン情報とK候補スクリーン情報を有している。
【0035】
ここで図4に、基本スクリーン処理の概要を示す。ここでは、YおよびKを例に説明する。基本スクリーン情報保持部303は、K基本スクリーン情報403とY基本スクリーン情報406を有する。
【0036】
基本スクリーン情報は、閾値(1〜255)が画素に対応するように配置された閾値群であり、基本スクリーン処理301に用いられる。K入力画像データ401は全ての画素において70であり、K基本スクリーン情報403を参照してスクリーン処理すると、Kの基本スクリーン処理後二値データ409が得られる。同様にYの画像データ402も全ての画素において70であり、Y基本スクリーン情報406を参照してスクリーン処理すると、Yの基本スクリーン処理後2値データ410が出力される。
【0037】
なお、K基本スクリーン情報はドットスクリーン情報であり、変換された二値データには複数の黒画素からなる周期的なドットが形成される。Kの2値データ409において、ドット411に注目すると、ドット412および413が最近接である。最近接ドットと結んで得られる2方向のベクトルはスクリーンベクトルとして定義される。この場合ベクトル404(x、y)=(3、2)及びベクトル405(x、y)=(−2、3)がK基本スクリーン情報のスクリーンベクトルであり、K基本スクリーンベクトルとなる。
【0038】
また、Y基本スクリーン情報もドットスクリーン情報であり、Yの2値データ410において、ドット414に注目すると、ドット415および416が最近接である。最近接ドットと結んで得られる2方向のベクトルはスクリーンベクトルとして定義される。この場合ベクトル407(x、y)=(−3、3)及びベクトル408(x、y)=(3、3)がY基本スクリーン情報のスクリーンベクトルであり、Y基本スクリーンベクトルとなる。
【0039】
なお、上述の場合、K基本スクリーンベクトルBa_k_V1とBa_k_V2は互いに同じ長さである。またY基本スクリーンベクトルBa_y_V1とBa_y_V2互いに長さは同じであるが、必ずしも同じでなくともよい。
【0040】
同様に、CとMの入力画像データに対しても基本スクリーン処理をする。Cの基本スクリーン情報におけるスクリーンベクトルはBa_c_V1(x、y)=(2、3)、Ba_c_V2(x、y)=(−3、2)である。同様にMの基本スクリーン情報におけるスクリーンベクトルは、Ba_m_V1(x、y)=(0、4)、Ba_m_V2(x、y)=(−4、0)である。以上のように、基本スクリーン処理部301はCMYK全ての入力画像データに対して、互いに異なるスクリーン情報を参照してスクリーン処理を施す。
【0041】
また図5に、候補スクリーン処理の概要を示す。候補スクリーン情報保持部304は、K候補スクリーン情報(1)503とY候補スクリーン情報(1)505を有し、候補スクリーン処理部302でおこなうスクリーン処理に用いられる。基本スクリーン処理と同様に、すべての画素において70の値であるK入力画像データ501は、K候補スクリーン情報(1)を用いて二値データ506に変換される。また、Y入力画像データ502はY候補スクリーン情報(1)を用いて二値データ507に変換される。
【0042】
候補スクリーン情報はラインスクリーン情報であり、生成されるラインに対して垂直の方向に1つのスクリーンベクトルをもつ。図5の場合は、K(ブラック)候補スクリーンベクトル(1)504は(x、y)=(3、2)となる。また、Y(イエロー)候補スクリーンベクトル(1)506は(x、y)=(−3、2)となる。
【0043】
K候補スクリーンベクトル(1)はK基本スクリーンベクトルと始点が同じである。また、Y候補スクリーンベクトル(1)も、Y基本スクリーンベクトルと始点が同じである。これはスクリーンベクトルの位相(位置)が同じであることを意味する。
【0044】
さらに、K候補スクリーンベクトル(1)504は、二つの基本スクリーンベクトル404、405の線形結合で、かつ、各結合係数が整数(0やマイナスも含む)もしくは整数の逆数で表せられる。Y候補スクリーンベクトル(1)505も、二つの基本スクリーンベクトル406、407の線形結合で、かつ、各結合係数が整数(0やマイナスも含む)もしくは整数の逆数で表せられる。
【0045】
候補スクリーンベクトルをL_V(n)(nは1以上の自然数)、基本スクリーンベクトルをBa_V1、Ba_V2とすると以下の式が成り立つ。
L_V(n)=α×Ba_V1+β×Ba_V2 ・・・(1)
(α、β:整数もしくは整数の逆数)
なお、本実施例でKの候補スクリーンベクトルL_k_V(1)は、
L_k_V(1)=1×Ba_k_V1+0×Ba_k_V2 ・・・(2)
(α=1、β=0)
Yの候補スクリーンベクトルL_y_V(1)は、
L_y_V(1)=0×Ba_k_V1+1×Ba_k_V2 ・・・(3)
(α=0、β=1)
となっている。このような候補スクリーンベクトルが構成するラインやドットは、基本スクリーン処理後二値データに表れる複数のドットを通るように形成される。そのため、基本スクリーン処理301と候補スクリーン処理302を連続的かつ滑らかに変化させることができる。なお、候補スクリーン処理部によるスクリーン処理は、色間モアレを抑制したい色の組み合わせの画像データに対してのみ行う。CおよびMは基本スクリーン処理後二値データがそのままスクリーン処理後画像格納バッファに出力されるので、候補スクリーン処理部によるスクリーン処理は必要ない。
【0046】
図6は評価値算出部106を示している。評価値は、色間モアレの原因となる複数の色材が存在する重畳部を評価する。ここでは、2つの評価値を算出する。一つはY基本スクリーン処理後二値データとK基本スクリーン処理後二値データとを合わせた場合の重畳部(以下、YK基本重畳画像データ)の評価値である。またもう一つは、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとを合わせた場合の重畳部(以下、YK候補重畳画像データ)の評価値である。重畳部とは、YとKがいずれも黒画素である重なりを示している。
【0047】
まず、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データに対して、1に正規化(601)した後、YKの基本スクリーン処理後二値データの論理積(602)を取り、YK基本重畳画像データを生成する。YK基本重畳画像データではYK版のいずれも黒画素である場合に1、それ以外では0になる。つまり、選択した色の組み合わせYとKの各基本スクリーン処理後二値データを合わせた場合、ドットが重なっている重畳画素を抽出する。
【0048】
次に、YK基本重畳画像データに対して第1LPF603によるフィルタ処理を行い、YK基本重畳画像データの低周波成分を算出する。なお、第1LPFは、Y基本スクリーン情報およびK基本スクリーン情報のスクリーン周波数を除去可能な周波数特性をもつ。
【0049】
次に、K入力画像データとY入力画像データに対して、1に正規化(604)を行い、K、Yの正規化後色分解処理後データの積(605)を取り、積画像(以下、YK入力積画像データと呼ぶ)を生成する。次に、第1LPF605によるフィルタ処理を行い、入力積画像データの低周波成分を算出する。
【0050】
そして減算部607は、YK基本重畳画像データの低周波成分とYK入力積画像データの低周波成分との差分を算出する。さらに重み積算部608は、減算部607から得た差分に重み係数(実数)を積算し、基本重畳画像データの評価値として出力する。
【0051】
以上の処理をY候補スクリーン処理後2値データおよびK候補スクリーン処理後二値データに対しても行い、候補重畳画像データの評価値を得る。
【0052】
ここで、評価値について説明する。色間モアレは、YKの色材が重なったドットが特徴的なパターンを示した時に発生する。色間モアレが発生した画像では、一般にKやYを単色でスクリーン処理した後二値データが有するスクリーン周波数(網点周波数)よりも低い周波数に干渉が起こっている。つまり、Kスクリーン情報やYスクリーン情報のスクリーン周波数よりも低い周波数で色間モアレは出現する。そこで、スクリーン処理に用いられたスクリーン情報のスクリーン周波数よりも低い周波数において、YK入力積画像データとYK重畳画像データとを比較することで、色間モアレを正確に評価する。
【0053】
本実施例では、K、Yそれぞれのスクリーン情報がもつスクリーン周波数特性を取り除くために、LPF(ローパスフィルタ)を用いてフィルタ処理を施す。図7に各スクリーン情報の周波数特性と各LPFのカットオフ周波数を示す。701は第1LPFのカットオフ周波数、702はK基本スクリーン情報のスクリーン周波数特性、703はY基本スクリーン情報のスクリーン周波数特性を示している。
【0054】
さらに、704は第2LPFのカットオフ周波数、705はK候補スクリーン情報のスクリーン周波数特性、706はY候補スクリーン情報のスクリーン周波数特性を示している。
【0055】
図7より、各LPFのカットオフ周波数は、Kスクリーン情報とYスクリーン情報のスクリーン周波数よりも低く設定されていることがわかる。このようにスクリーン処理に用いられるスクリーン情報のスクリーン周波数特性に応じたLPFを用いてフィルタ処理することによって、単色での各スクリーン処理後二値データのスクリーン成分を取り除く。
【0056】
なお、本実施例では、各基本スクリーン情報、K候補スクリーン情報のスクリーン周波数はほぼ同一となるため、第1LPF、第2LPFは同じカットオフ周波数をもつLPFを用いている。ただし、各スクリーン情報のスクリーン周波数が異なる場合は、LPFは必ずしも同一でなくてもよい。
【0057】
次に、以上の構成を備えた画像処理装置1における画像処理について、図2のフローチャートを用いて説明する。
【0058】
まず、ステップS201において、多階調のカラー入力画像データを入力画像バッファ102に格納する。
【0059】
ステップS202において、色分解処理部103は、色分解用LUT104を用いて、カラー入力画像データのRGBからCMYKの色ごとに分解し、多値の画像データD_c、D_m、D_y、D_kを得る。ここでは、各入力画像データを8ビットとして扱うが、それ以上の階調数への変換を行っても構わない。本実施例における色材は、CMYK4種類を保有する。そのため、RGBのカラー入力画像データは、次式のとおりに、CMYKの計4プレーンの画像データへ変換される。
D_c=C_LUT_3D(R,G,B) ・・・(4)
D_m=M_LUT_3D(R,G,B) ・・・(5)
D_y=Y_LUT_3D(R,G,B) ・・・(6)
D_k=K_LUT_3D(R,G,B) ・・・(7)
ここで、式(4)〜(7)の右辺に定義される各関数が、色分解用LUT104の内容に該当する。色分解用LUT104はレッド、グリーン、ブルーの3入力値から、各色材の出力値を定める。本実施例では、CMYK4色を具備する構成であるため、3入力値から4出力値を得るLUT構成となる。ここで、色間モアレを低減したい色の組み合わせにYとKを選択する。
【0060】
ステップS203では、基本スクリーン処理部301において画像データD_c、D_m、D_y、D_kに対し、基本スクリーン処理をする。具体的には注目画素の画像データと、注目画素に対応するスクリーン情報の閾値とを比較し、画像データの方が閾値より大きければ255、小さければ0を出力し、2値化する。
【0061】
CMYK4色分の各基本スクリーン情報303は、閾値Ba_Th_c、Ba_Th_m、Ba_Th_y、Ba_Th_kによって構成されている。本実施例では、以下、K(ブラック)、Y(イエロー)の二色に関する処理について説明する。次式のとおりに2値化する。
D_k<Ba_Th_kのとき、Out_Ba_k=0 ・・・(8)
D_k≧Ba_Th_kのとき、Out_Ba_k=255 ・・・(9)
D_y<Ba_Th_yのとき、Out_Ba_y=0 ・・・(10)
D_y≧Ba_Th_yのとき、Out_Ba_y=255 ・・・(11)
一方、シアン、マゼンタに対しても同様に基本スクリーン処理部301にて処理を行う。なお、ブラックの基本スクリーン情報は、スクリーンベクトルBa_k_V1404(x、y)=(3、2)、Ba_k_V2405(x、y)=(−2、3)と2つのスクリーンベクトルを持つ。同様に、イエローの基本スクリーン情報は、スクリーンベクトルBa_y_V1408(x、y)=(3、3)、Ba_y_V2407(x、y)=(−3、3)である。
【0062】
また、シアンの基本スクリーン情報におけるスクリーンベクトルはBa_c_V1(x、y)=(2、3)、Ba_c_V2(x、y)=(−3、2)である。同様にマゼンタの基本スクリーン情報におけるスクリーンベクトルは、Ba_m_V1(x、y)=(0、4)、Ba_m_V2(x、y)=(−4、0)である。
【0063】
なお本実施例では、色間モアレを低減する色の組み合わせにイエローとブラックを選択している場合について説明する。色間モアレを考慮しないシアン、マゼンタは、上記基本スクリーン処理による二値データが、最終的な二値データとなる。すなわち、CとMの基本スクリーン処理後二値データはそのまま、スクリーン処理後画像格納バッファ110に送られることになるが、これらの構成に限られる必要はない。例えば、シアン、マゼンタの色間モアレを補正する場合は、イエロー、ブラックの基本スクリーン処理後二値データがそのままスクリーン処理後画像格納バッファ110に送られてもよい。
【0064】
ステップS204では、候補スクリーン処理部302が、YとKの画像データD_y、D_kに対して候補スクリーン処理をする。
【0065】
候補スクリーン処理部302は、D_y、D_kの2色に対して候補スクリーン情報保持部304の各データに対応する候補スクリーン情報(1)を用いて候補スクリーン処理(1)を施す。これによりY候補スクリーン処理(1)後2値データとK候補スクリーン(1)データが出力される。具体的には、注目画素の画像データと候補スクリーン情報の注目画素に対応する閾値とを比較し、画像データの方が閾値より大きい場合は255、小さい場合は0として2値化する。また、候補スクリーン(1)情報は閾値L_Th_k(1)、L_Th_y(1)により構成されている。
【0066】
ここでは、図5のK(ブラック)、Y(イエロー)の候補スクリーン(1)情報503と505を用いて、次式のとおりに2値化する。
K候補スクリーン処理(1)
D_k<L_Th_k(1)のとき、Out_L_k(1)=0 ・・・(12)
D_k≧L_Th_k(1)のとき、Out_L_k(1)=255 ・・・(13)
Y候補スクリーン処理(1)
D_y<L_Th_y(1)のとき、Out_L_y(1)=0 ・・・(14)
D_y≧L_Th_y(1)のとき、Out_L_c(1)=255 ・・・(15)
なお本実施例では、図5に示した通りように、K候補スクリーンベクトルL_k_V(1)504は(x、y)=(3、2)と設定されている。また、Y候補スクリーンベクトルL_y_V(1)506は(x、y)=(−3、3)と設定されている。
【0067】
K候補スクリーンベクトルL_k_V(1)は、K基本スクリーンベクトルBa_k_V1、Ba_k_V2と同じ始点である。またY候補スクリーンベクトルL_y_V(1)は、Y基本スクリーンベクトルBa_y_V1、Ba_y_V2と同じ始点である。全ての候補スクリーンベクトルは基本スクリーンベクトルと始点が同じになるよう設定される。すなわち、スクリーンベクトルの位相(位置)が同じである。
【0068】
ステップS205では、評価値算出部106はY二値データとK二値データを合わせたときの重なったドットからなる重畳画像を評価する。以下、前述の通り本実施例ではYK間の色間モアレを抑制するものであるので、YおよびKのデータに対して処理をする。YKの基本スクリーン処理後二値データ同士を合わせた場合と、YK候補スクリーン処理(1)後二値データ同士を合わせた場合の2つの重畳画像を評価する。
【0069】
まず正規化部601は、基本スクリーン処理後データOut_Ba_kおよびOut_Ba_yに対して、それぞれ1.0に正規化を行う。
Out_Bas_k=Out_Ba_k/255 ・・・(16)
Out_Bas_y=Out_Ba_y/255 ・・・(17)
【0070】
次に、重畳画像データ算出部602は、正規化部602から出力されたOut_Bas_kとOut_Bas_yの論理積をとる。そして、重畳画像データ算出部602は基本重畳画像データOut_Bas_ykを出力する。
Out_Bas_yk=Out_Bas_y・Out_Bas_k ・・・(18)
1に正規化されたデータを積算すると、K基本スクリーン処理後二値データとY基本スクリーン処理後二値データいずれにおいても黒画素である場合のみ1となる。つまりK基本スクリーン処理後二値データとY基本スクリーン処理後二値データの重なり部(重畳画像データ)を抽出することができる。この重畳画像データにおいて発生したモアレが色間モアレに相当する。
【0071】
次に、基本重畳画像データOut_Bas_ykに対して、式(19)のように第一LPF603によるフィルタ処理を行い、基本重畳画像データの低周波成分Out_Ba_f_ykを算出する。
Out_Ba_f_yk=Out_Bas_yk*LPF_1 ・・・(19)
ただし、*はコンボリューションを示す
【0072】
次に、正規化部604は、色分解されたK入力画像データD_k、Y入力画像データD_yに対して、それぞれ1.0に正規化を行う。
D_s_y=D_y/255 ・・・(20)
D_s_k=D_k/255 ・・・(21)
【0073】
次に、色分解積算出部605は、K正規化後データD_s_kとY正規化後データD_s_yとの積を取ることでYとKが重なる入力積データ(被覆率データ)を算出し、入力積データD_s_ykを算出する。
D_s_yk=D_s_y・D_s_k ・・・(22)
【0074】
次に、入力積データD_s_ykに対して、式(23)のように第一LPF606によるフィルタ処理を行って、入力積データの低周波成分D_f1_ykを算出する。
D_f1_yk=D_s_yk*LPF_1 ・・・(23)
ただし、*はコンボリューションを示す
なお、上記式(23)では、式(19)と同じローパスフィルタを用いる例を示したが、異なるローパスフィルタを用いてもよい。
【0075】
次に減算部607は、入力積データの低周波成分D_f1_ykと基本重畳画像データの低周波成分Out_Ba_f_ykとを減算する。この処理により得られた成分は、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データとを重ねた時に生じる色間モアレ成分に相当する。さらに重み積算部608は、重み係数a1(実数)を積算して、評価値P_Ba_ykを出力する。
P_Ba_yk=(−Out_Ba_f_yk+D_f1_yk)×a1・・・(24)
なお、この評価値P_Ba_ykは、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データとの重畳画像に対する評価値である。この時、YおよびKの基本スクリーン処理に用いられたY基本スクリーン情報とK基本スクリーン情報はこの後基本スクリーン情報セットとして扱われる。ただし、前述の通り、Y基本スクリーン情報とK基本スクリーン情報は互いに異なる。
【0076】
以上の評価値を求める工程を、候補スクリーン処理(1)から出力されたY候補スクリーン処理(1)後二値データとK候補スクリーン処理(1)後二値データに対しても行う。
【0077】
まず、正規化部609は、候補スクリーン処理を施されたK候補スクリーン処理後二値データOut_L_k(1)、Y候補スクリーン処理後二値データOut_L_y(1)に対して、それぞれ1.0に正規化する。
Out_Ls_bk=Out_L_k/255 ・・・(25)
Out_Ls_y=Out_L_y/255 ・・・(26)
【0078】
次に、重畳画像データ算出部610は、正規化部609から出力されたOut_Ls_kとOut_Ls_yの論理積をとる。そして重畳画像データ算出部610は、候補重畳画像データOut_Ls_ykを出力する。
Out_Ls_yk=Out_Ls_y・Out_Ls_k ・・・(27)
1に正規化されたデータを積算すると、K候補スクリーン処理後二値データとY候補スクリーン処理後二値データいずれにおいても黒画素である場合のみ1となる。つまりK候補スクリーン処理後二値データとY候補スクリーン処理後二値データの重なり部(重畳画像データ)を抽出することができる。この重畳画像データにおいて発生したモアレが色間モアレに相当する。
【0079】
次に、候補重畳画像データOut_Ls_ykに対して、式(28)のように第二LPF611によるフィルタ処理を行い、候補重畳画像データの低周波成分Out_f_ykを算出する。
Out_L_f_yk=Out_Ls_yk*LPF_2 ・・・(28)
ただし、*はコンボリューションを示す
【0080】
次に、入力積データD_s_ykに対して、式(29)のように第二LPF612によるフィルタ処理を行って、入力積データの低周波成分D_f2_ykを算出する。
D_f2_yk=D_s_yk*LPF_2 ・・・(29)
ただし、*はコンボリューションを示す
なお、上記式(29)では、式(28)と同じローパスフィルタを用いる例を示したが、異なるローパスフィルタを用いてもよい。
【0081】
次に減算部613は、入力積データの低周波成分D_f2_ykと候補重畳画像データの低周波成分Out_L_f_ykを減算する。この処理により得られる成分は、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとを合わせた時に生じる色間モアレ成分に相当する。さらに重み積算部614は重み係数a2(実数)を積算して、評価値P_L_ykを算出する。
P_L_yk(1)=(−Out_L_f_yk+D_f2_yk)×a2 ・・・(30)
なお、この評価値P_L_yk(1)は、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとの重畳画像に対する評価値である。このあと、YおよびKの候補スクリーン処理(1)に用いられたY候補スクリーン情報(1)とK候補スクリーン情報(1)はこの後、候補スクリーン情報セットとして扱われる。ただし、前述の通り、Y候補スクリーン情報(1)とK候補スクリーン情報(1)は互いに異なる。
【0082】
以上で、評価値算出部106における処理が終了する。このようにして評価値を算出した場合、評価値の絶対値が小さいほど色間モアレが少ないと評価できる。なお、本実施例では積算部608、614の係数a1、a2は1.0とする。ただし、1.0に限る必要はなく、正の実数であればよい。
【0083】
ステップS206では、スクリーン情報生成パラメータ決定部107は、すべての評価値をもとに、合成スクリーン情報を生成するためのパラメータを算出する。
【0084】
スクリーン情報生成パラメータ算出部615は、評価値P_Ba_ykとP_L_yk(1)を評価値算出部107から受け取り、パラメータ算出テーブル616を用いて、合成スクリーン情報パラメータを算出する。
【0085】
まず、基本スクリーン処理の評価値P_Ba_ykの絶対値Ba_SC_Absを算出する。
Ba_SC_Abs=Abs(P_Ba_yk) ・・・(31)
さらに、候補スクリーン処理の評価値P_L_yk(1)の絶対値L_SC_Absを算出する。
L_SC_Abs=Abs(P_L_yk(1)) ・・・(32)
合成スクリーン情報を生成するためのパラメータW_Ba、W_Lは以下の条件を満たす。
W_Ba+W_L=1.0 ・・・(33)
パラメータW_Ba、W_Lの算出には、図7に示すパラメータ算出テーブル616を使う。パラメータ算出テーブルは2次元配列の形式で保持されている。配列の横軸はBa_SC_Absを、配列の縦軸はL_SC_Absを、表の値はW_Baを示している。配列の横軸、縦軸には、0.5、1、3、5、10、50、100と記載されている。これは、各評価値が、記載数値以下の場合に、W_Baの取る値の座標を示している。
【0086】
例えば、Ba_SC_Abs=3.3、L_SC_Abs=1.4の場合、Ba_SC_Abs≦5、L_SC_Abs≦3を満たすので、W_Ba=0.5となる。このとき、式(33)の関係から、W_L=0.5となる。以上で、ステップS206の動作を終了する。
【0087】
ステップS207において、合成スクリーン情報算出部108は基本スクリーン情報セットと候補スクリーン情報セットとからYKの合成スクリーン情報セットを算出する。基本スクリーン情報セットとはY基本スクリーン情報とK基本スクリーン情報である。また候補スクリーン情報セットとは、Y候補スクリーン情報(1)とK候補スクリーン情報(1)である。
【0088】
合成スクリーン情報セットとはY合成スクリーン情報とK合成スクリーン情報からなる。Y基本スクリーン情報とY候補スクリーン情報(1)を合成し、Y合成スクリーン情報となる。同様にK基本スクリーン情報とK候補スクリーン情報(1)を合成し、K合成スクリーン情報となる。各合成スクリーン情報を構成する閾値は、パラメータW_BaとW_Lを用いて以下の式で生成される。
M_Th_k=g_t(W_Ba)×(W_Ba×Ba_Th_k+W_L×L_Th_k(1)) ・・・(34)
M_Th_y=g_t(W_Ba)×(W_Ba×Ba_Th_y+W_L×L_Th_y(1)) ・・・(35)
(なお、g_t(W_Ba)は常に1.0)
【0089】
以上のように共通のパラメータを用いて、Y合成スクリーン情報とK合成スクリーン情報が生成される。具体的には式(34)で算出されるM_Th_kは、Ba_Th_kとL_Th_k(1)の線形結合で示され、かつ式(33)に示すように、パラメータの和は1となる。同様に、式(35)で算出されるM_Th_yは、Ba_Th_yとL_Th_y(1)の線形結合で示される。W_Ba=1の際(901)は、各基本スクリーン情報の閾値Ba_Th_k、Ba_Th_yがそのままM_Th_k、M_Th_yに代入される。反対に、W_L=1の際(903)は、各候補スクリーン情報の閾値L_Th_k、L_Th_yがそのまま、M_Th_k、M_Th_yに代入される。0<W_Ba<1の際(902)は各基本スクリーン情報の閾値Ba_Th_k、Ba_Th_yと候補スクリーン情報の閾値L_Th_k、L_Th_yを式(34)と式(35)に従って合成した値がM_Th_k、M_Th_yとなる。例えば、W_Ba=0.5(W_L=0.5)の時は、Ba_Th_kとL_Th_k(1)の中間値がM_Th_kに、Ba_Th_yとL_Th_y(1)の中間値がM_Th_yに代入される。
【0090】
なお、上記例では、式(34)(35)においてg_t(W_Ba)=1.0となる例を示したが、この例に限るものではない。例えば合成の比率(W_Ba)に応じて、g_tが変化しても良い(g_tはW_Baに応じて変化する正の実数)となっても良い。(例えば、合成比率W_Ba=0.5、W_L=0.5のときは、g_t=1.2となっても良いし、g_t=0.8となっても良い。)
このようにする理由は、常に、g_t=1.0とすると、W_Ba=0.5、W_L=0.5の時と、W_Ba=1.0、W_L=0.0の時とで、出力されるドットの数が保存されない場合があるからである。そのため、どのような合成比率でも出力されるドットの数が保存されるように、あらかじめ合成比率によって、g_t(W_Ba)が変わるようにしてもよい。
【0091】
ステップS208にて、合成スクリーン処理部109は入力画像データD_y、D_kに対してそれぞれに対応する合成スクリーン情報を参照してスクリーン処理を行う。具体的には、注目画素の入力画像データと合成スクリーン情報算出部108にて算出された各合成スクリーン情報の注目画素に対応する閾値とを比較し、2値化する。Y二値データおよびK二値データが出力される。
D_k<M_Th_kのとき、Out_M_k=0 ・・・(36)
D_k≧M_Th_kのとき、Out_M_k=255 ・・・(37)
D_y<M_Th_yのとき、Out_M_y=0 ・・・(38)
D_y≧M_Th_yのとき、Out_M_y=255 ・・・(39)
合成スクリーン処理部109で算出されたK二値データ及びY二値データはスクリーン処理後画像格納バッファ110に格納され、出力端子111より画像形成装置2へ出力される。ここで、C二値データおよびM二値データと合わせて、全ての入力画像データを二値に変換した二値データがスクリーン処理後画像格納バッファ110に揃う。
以上により、画像処理が終了する。
【0092】
本実施例では色間モアレを低減したい組み合わせに対し、複数のスクリーン処理を施して、2つ以上の重畳画像データを生成する。そして重畳画像データの評価値に応じてスクリーン処理が切り替えられる。ここでは基本スクリーン処理、候補スクリーン処理、もしくはその中間のスクリーン処理が画素ごとに適用される。スクリーン処理を切り替えても滑らかに変化するのは、候補スクリーン情報におけるスクリーンベクトルが式(1)を満たし、かつ基本スクリーン情報のスクリーンベクトルと始点が同じになるように設定したためである。これにより複数のスクリーン処理を画素ごとに用いても、視覚上好ましい2値化データを実現できる。
【0093】
また本実施例ではイエロー(Y)及びブラック(K)は、基本スクリーン情報、候補スクリーン情報ともに、互いに異なるスクリーンベクトルが設定されている。よって、算出された各色の合成スクリーン情報は、色間モアレが発生しない領域、色間モアレが発生する領域のいずれの領域でも、互いにスクリーンベクトルが異なる。従って、物理的なレジストレーションずれ(一般的に色ズレとよばれる)に対して、耐性があることは言うまでもない。
【0094】
さらに本実施例は、わずかなノイズが入力画像データに含まれていたとしても必要以上にスクリーン処理が切り替わらない特徴がある。基本重畳画像データの再現性が高い場合は、YとKの入力画像データに対してそれぞれ基本スクリーン処理を適用し、再現性が低い箇所にのみ再現性の高い各候補スクリーン処理を適用する。これは、基本スクリーンセットの再現劣化が僅かである場合は、常に基本スクリーン処理を採用することを意味する。画像上にノイズや微小なエッジが含まれている場合、基本スクリーン処理よりも候補スクリーン処理の方が再現性が高いとなる場合が多々ある。しかしその都度スクリーン処理を切り替えると、出力の安定性が確保できない。よって、図8のように設定することは画像の安定出力にメリットがある。
【0095】
上記に説明した本実施例1における処理の効果を図10、図11に示す。図10は、ブラック、イエローの入力画像における印字率(被覆率)が等量の場合のパッチ画像について示したものである。図10において、K基本スクリーン処理後二値データ1002とY基本スクリーン処理後二値データ1003を重ねた場合、1001に示すように色間モアレが発生してしまう。基本重畳画像データ1004は1002と1003の論理積によって得たデータである。つまり、1003においてYとKのドットが重なっている重畳部を抽出したデータである。重畳画像データ1004をLPFを用いたフィルタ処理すると、基本重畳画像データの低周波成分1005が得られる。また、K候補スクリーン処理後二値データ1007とY候補スクリーン処理後二値データ1008を重ねた場合、1006が得られる。1006においてYとKのドットが重なっている重畳部を抽出したデータが候補重畳画像データ1009である。候補画像データ1004をLPFを用いたフィルタ処理すると、候補重畳画像データの低周波成分1010が得られる。
【0096】
基本重畳画像データの低周波成分1005をもとに算出した基本重畳画像データの評価値と、候補重畳画像データの低周波成分1010をもとに算出した候補重畳画像データの評価値とに基づいて合成パラメータを決める。合成パラメータによりK基本スクリーン情報とK候補スクリーン情報とを合成したスクリーン情報を用いて、K入力画像データをスクリーン処理した結果が1012である。また、共通の合成パラメータによりY基本スクリーン情報とY候補スクリーン情報とを合成したスクリーン情報を用いて、Y入力画像データをスクリーン処理した結果が1013である。K二値データ1012とY二値データ1013を重ねると1011が得られるが、色間モアレはほとんど見られないことがわかる。これは基本重畳画像データの評価値が悪い画素では、評価値のよい候補スクリーン情報が採用されるためである。
【0097】
図11は、ブラック、イエローのグラデーション画像について示したものである。K基本スクリーン処理後二値データ1102とY基本スクリーン処理後二値データとを重ねると、1101のように色間モアレが発生してしまう。
【0098】
そこで、本実施例による処理を施すと、基本スクリーン処理の評価値が悪い画素では候補スクリーン処理(1)が適用され、その境界では基本スクリーン処理と候補スクリーン処理(1)の中間のスクリーン処理が合成される。最終的に得られるK合成スクリーン情報とY合成スクリーン情報とを合わせても、ほとんど色間モアレが発生しない1104を得ることができる。ちなみに、ブラック、イエローのいずれか一方が形成される領域では、基本スクリーンセットが採用されていることがわかる。
【0099】
以上実施例1によれば、複数のスクリーン処理を用いて、色間モアレを低減した画像が得られる。
【0100】
(実施例2)
実施例1では、基本スクリーン処理として用いる基本スクリーン情報がドットスクリーン情報である場合について説明した。実施例2では、基本スクリーン情報がラインスクリーン情報である場合について説明する。実施例2の基本的な構成は、スクリーン処理部105を除いて実施例1と同様である。また実施例1と同様に、YK間の色間モアレを低減する場合を例として説明する。つまりそれぞれ独立に処理するCおよびMの画像データの処理については、実施例1と同様なので省略する。
【0101】
本実施例では、基本スクリーン情報セットとして、図12のようなK基本スクリーン情報1203とY基本スクリーン情報1206が基本スクリーン処理に参照される場合に、色間モアレを効率的に低減する。通常、ラインスクリーン情報を構成するラインスクリーンベクトルは一つである。しかしながら、基本スクリーン処理としてラインスクリーン情報を用いる場合は、スクリーンベクトルに加えて仮想スクリーンベクトルを定義する。以下、その定義の詳細について説明する。
【0102】
図12に示す基本スクリーン情報1203、1206を参照してYおよびKの入力画像データに対して基本スクリーン処理をする。K基本スクリーン情報1203はライン方向と垂直なスクリーンベクトルBa_k_V1(x、y)=(−2、3)を有する。ここで、ライン方向と平行でスクリーンベクトル1205と同一の始点であるスクリーンベクトル1204(x、y)=(3、2)を仮想スクリーンベクトルとして新たに定義する。すなわち、ベクトルBa_k_V1に対して垂直となる。また、Ba_k_V2の長さはBa_k_V1と同じとする。しかしながら、Ba_k_V2のスクリーンベクトルの長さについては、これに限るものではない。以上スクリーンベクトルBa_k_V1および仮想スクリーンベクトルBa_k_V2をK基本スクリーンベクトルとする。同様にY基本スクリーン情報1206はライン方向と垂直なスクリーンベクトルB_k_V1(x、y)=(−3、3)を有する。ここで、ライン方向と平行でスクリーンベクトル1207と同一始点であるベクトル1208(x、y)=(3、3)をY仮想スクリーンベクトルとして新たに定義する。Ba_y_V1、Ba_y_V2のベクトルの長さは同じとするが、ベクトルの長さについてはこれに限るものではない。
【0103】
以上の基本スクリーン情報1203および1206を用いて、画像データD_k、D_yに対してそれぞれ基本スクリーン処理をする。そしてK基本スクリーン処理後二値データ1209およびY基本スクリーン処理後二値データ1210を出力する。
【0104】
候補スクリーン処理部302では、色間モアレを抑制したい画像データD_y、D_kそれぞれに対して、候補スクリーン処理を施す。
【0105】
候補スクリーン情報保持部304は、各画像データに対応する候補スクリーン情報が格納され、それぞれ閾値L_Th_k(n)、L_Th_y(n)、(nは1以上の整数)によって構成されている。
【0106】
図13は実施例2における候補スクリーン処理部107による2値化の概要を示す。図13ではK候補スクリーン情報(1)のスクリーンベクトルL_k_V(1)1304は(x、y)=(3、2)、Y候補スクリーン情報(1)のL_y_V(1)1305は(x、y)=(−3、3)である。K候補スクリーンベクトルL_k_V(1)は、K基本スクリーンベクトルBa_k_V1、Ba_k_V2と始点が同じであり、式(1)を満たす。候補スクリーンベクトルは
L_bk_V(1)=0×Ba_k_V1+1×Ba_k_V2 ・・・(40)
(α=0、β=1)
で表すことができる。
【0107】
また、Y候補スクリーンベクトルL_y_V(1)は、Y基本スクリーンベクトルBa_y_V1、Ba_y_V2と始点が同じであり、式(1)を満たす。候補スクリーンベクトルは
L_y_V(1)=1×Ba_y_V1+0×Ba_y_V2 ・・・(41)
(α=1、β=0)
となっている。
【0108】
以上のスクリーン情報を用いて、スクリーン処理部105で各スクリーン処理をおこなう。評価値の算出、合成スクリーン情報の生成などについては、実施例1と同様に図2のフローに従って、画像処理をする。
【0109】
以上実施例2では、基本スクリーン処理にラインスクリーン情報を用いた例について説明した。以上説明した通り、基本スクリーン処理としてラインスクリーン情報を用いた場合でも、基本スクリーン情報のスクリーンベクトルとして、ライン方向と平行方向に仮想スクリーンベクトルを新たに定義する。これにより基本スクリーン処理にドットスクリーン情報を用いた場合と同様、モアレ低減のための候補スクリーン処理の設定を容易にし、さらに実施例1と同様の効果を得ることができる。
【0110】
(変形例1)
実施例1および2では、画素ごとに評価値を算出する例を示したが、これに限るものではない。ここに網点単位領域で評価値を評価する変形例を示す。
【0111】
網点単位領域とは、基本スクリーンベクトルBa_k_V1およびBa_k_V2で囲まれた平行四辺形の領域のこととし、図14の同一色で塗られた領域(1402)である。
【0112】
まず、基本重畳画像データについて、注目する網点単位領域の評価値の総和を算出する。
Ba_SC_Abs=Σ{Abs(P_Ba_yk)} ・・・(31−a)
さらに、候補重畳画像データについて、注目する網点単位領域の評価値の総和を算出する。
L_SC_Abs=Σ{Abs(P_L_yk(1))} ・・・(32−a)
そして実施例1と同様に、パラメータ算出テーブルにしたがって、合成スクリーン情報セットを生成すればよい。
【0113】
なお、上述の網点領域のxy座標を算出する際には、Holladayのアルゴリズムを用いると効率的である。Holladayのアルゴリズムは、スクリーンベクトルBa_k_V1、Ba_k_V2が与えられた時、重複なく網点領域を敷き詰めるための網点の画素数Nhと、網点の相対的な座標位置H、L、Sを示すアルゴリズムである。
【0114】
ここで、Lは、始点と同一y座標で同じ網点が与えられるx方向の相対位置Lを、H、Sは、Hライン下(y+H座標)おいて、同じ網点が与えられるx方向の相対位置Sを示す。
Ba_c_V1(x1、y1)=(3、2)、Ba_c_V2(x2、y2)=(−2、3)の場合、Holladayのアルゴリズムを用いると、Nh、H、L、Sは以下のように算出できる。
Nh=x1・y2−y1・x2=13
H=GCD(y1、y2)=1
L=Nh/H=13
S=8
この詳細についてはHenry R. Kang著 Digital Color Halftoning、IEEE Press /SPIE Press、 P231〜233に記載されている。Holladayのアルゴリズムは公知なので、詳細は省略する。
【0115】
基準となる網点の位置を図14の■(1403)とすると、●(1404)は■に対して(0、L)座標だけ相対的に移動したものとなる。すなわち、同一y座標において、L=13隣に、同じ網点が形成されることを示している。一方△(1405)は、■に対して、(H、S)座標だけ相対的に移動したものとなる。すなわち、基準に対しHライン下で、S=8隣に、同じ網点が形成されることを示している。このようにすれば、同一y座標や、Hライン下の網点の繰り返し座標を効率的に求めることができる。
【0116】
また、上記例では、網点サイズ単位での評価値を算出した例を示したが、基本スクリーンの網点サイズの整数分の1単位や、整数倍の単位で評価値L_SC_Absを算出しても良い。このときは、Holladayアルゴリズムで算出した網点の座標の整数分の1や整数倍を用いれば容易に計算できる。
【0117】
以上のように、画素ごとではなく網点単位領域ごとに比較・評価することにより、粒状性にもすぐれた画像を得ることができる。
【0118】
(変形例2)
また、前述の実施例および変形例では図8のパラメータ算出テーブルを用いたが、変形例2では図8とは異なる合成スクリーン情報セットの生成について示す。
【0119】
例えば、図15のようなパラメータ算出テーブルがある。図8のテーブルによれば、Ba_SC_Absがある値以上の場合は、候補スクリーン処理の評価値に関わらず基本スクリーン処理を適用する。図15のパラメータ算出テーブルでは、基本スクリーン処理の評価値のみならず、候補スクリーン処理の評価値も考慮してパラメータを設定している。さらに、図8、図15にはパラメータ算出テーブルが7×7の二次元の正方配列で設定された例を示したが、これに限るものではない。例えば、7×7未満であっても良いし、8×8以上であってもよい。その他、7×3や、3×1など、長方配列であってもよい。さらにパラメータ算出テーブルは2次元に限らず、3次元であってもよい。また、図7、15ともに、テーブルの値は1.0、0.5、0.0の3状態についての例を示したが、その他の実数値であっても良い。例えば、0.5の変わりに、0.1、0.2、0.8、0.9の値が格納されても良い。
【0120】
また、前述の実施例および変形例では、合成スクリーン情報算出部108においては、式(34)(35)のように、基本スクリーン情報と候補スクリーン情報の線形結合での算出規則の例を示したが、本発明の構成要素はこれに限るものではない。式(34)(35)の他でも、色間モアレの発生しない領域では基本スクリーン処理、色間モアレの発生領域では候補スクリーン処理、その中間では基本スクリーン処理と候補スクリーン処理の中間となるようスクリーン情報が合成、設定される規則であればよい。
【0121】
例えば、基本スクリーン処理と候補スクリーン処理の各パラメータに従って重みづけされた要素値を算出する。そしてこの要素値の比較を行い、小さい値を採用してもよい。この場合は、式(34)(35)は以下の式(34−b)(35−b)として示されてもよい。
IF(W_Ba>0.5){
y_B=1.0
y_L=1.0−2.0×(W_Ba−0.5)
T_B_bk=y_B×Ba_Th_k/255.0
T_L_bk=y_L×L_Th_k(1)/255.0
+2.0×(W_Ba−0.5)
T_B_y=y_B×Ba_Th_y/255.0
T_L_y=y_L×L_Th_y(1)/255.0
+2.0×(W_Ba−0.5)
}else{
y_B=2.0×W_Ba
y_L=1.0
T_B_bk=y_B×Ba_Th_k/255.0+1.0−W_Ba×2.0
T_L_bk=y_L×L_Th_k(1)/255.0
T_B_y=y_B×Ba_Th_y/255.0+1.0−W_Ba×2.0
T_L_y=y_L×L_Th_y(1)/255.0
} ・・・(26−a)
なお、1≦Ba_Th_k≦255、1≦L_Th_k(1)≦255の値を、1≦Ba_Th_y≦255、1≦L_Th_y(1)≦255の値をとる。
【0122】
上述の式(26−a)は、W_Baの値に応じて、要素値T_B_k、T_L_k、T_B_y、T_L_yの値が変化することを示す。図18に式(26−a)によって要素値T_B_bk、T_L_kの変化の様子を示す。このようにして算出された要素値T_B_k、T_L_k、T_B_y、T_L_yに応じて、閾値を得る。
IF(T_B_k>T_L_k){
M_Th_k=T_L_k×255.0×g_t(W_Ba)
}else{
M_Th_c=T_B_k×255.0×g_t(W_Ba)
}
IF(T_B_y>T_L_y){
M_Th_y=T_L_y×255.0×g_t(W_Ba)
}else{
M_Th_y=T_B_y×255.0×g_t(W_Ba)
} ・・・(26−b)
なお上記g_t(W_Ba)については、合成比率W_Baに応じて変化するゲイン値である。g_tは、出力されるドットの数が保存されない場合があるからである。そのため、どのような合成比率でも出力されるドットの数が保存されるように、あらかじめ合成比率によってg_t(W_Ba)が変わるように設定すると好ましい。
【0123】
その他、基本スクリーン処理とラインスクリーン処理の掛け算で算出してもよいが、どのような合成比率でも出力されるドットの数が保存されるよう規則を設定するとよい。
【0124】
(変形例3)
前述の実施例および変形例では各色の画像データに対して候補スクリーン処理が1つの場合の例を示した。しかしながら、候補スクリーン処理が2つ以上あってもよい。変形例3では、候補スクリーン処理が2つ以上ある場合の例を図16とともに示す。
【0125】
図16は、候補スクリーン処理が各入力画像データに対して2つずつある場合の例である。この場合候補スクリーン情報保持部304は、YおよびKの各候補スクリーン情報(1)の他に、Y候補スクリーン情報(2)、K候補スクリーン情報(2)を有する。また、候補スクリーン処理後重畳画像データは2セット得られることになる。1つは、YとKの各候補スクリーン処理(1)後二値データを合わせた候補(1)重畳画像データである。もう1つは、1つは、YとKの各候補スクリーン処理(2)後二値データを合わせた候補(2)重畳画像データである。
【0126】
これまでの評価値算出と同様に、候補スクリーン処理(1)の評価値は式(42)によって表される。
P_L_yk(1)=(−Out_L1_f_yk+D_f2_yk)×a2 ・・・(42)
また、候補スクリーン処理(2)の評価値は式(43)によって表される。
P_L_yk(2)=(−Out_L2_f_yk+D_f3_yk)×a3 ・・・(43)
スクリーン情報生成パラメータ決定部107にて、すべての評価値をもとに、合成スクリーン情報セットを生成するためのパラメータを算出する。
【0127】
変形例3では、まず、候補スクリーン選択部1621にて、2つの候補スクリーン処理に対する評価値P_L_yk(1)とP_L_yk(2)の絶対値を比較し、より再現性が良い候補スクリーン情報セットを選択する。ここで選択された候補スクリーン処理とその評価値をL_SC_Absとして保持する。
if(Abs(P_L_yk(1))<Abs(P_L_yk(2)+q))
L_SC_flg=1
L_SC_Abs=Abs(P_L_yk(1))
}else{
L_SC_flg=2
L_SC_Abs=Abs(P_L_yk(2))
} ・・・(44)
本変形例ではq=0.0とするが、q=0.1など値を持っていても良い。qが正値である場合は、候補スクリーン処理(1)が優先的に選択される。qが負値である場合は、候補スクリーン処理(2)が優先的に選択される。次に、スクリーン情報生成パラメータ算出部1622にて、基本スクリーン情報と候補スクリーン情報の合成度合いを決定するためのパラメータを算出する。まず、基本スクリーン処理の評価値P_Ba_cの絶対値を算出する。
Ba_SC_Abs=Abs(P_Ba_c) ・・・(45)
合成スクリーンセット情報を生成するためのパラメータW_Ba、W_Lは以下の条件を満たす。
W_Ba+W_L=1.0 ・・・(46)
パラメータW_Ba、W_Lの算出には、図8に示すパラメータ算出テーブル616を使う。
【0128】
最後に、合成スクリーン情報算出部108にてY合成スクリーン情報とK合成スクリーン情報をそれぞれ算出する。各合成スクリーン情報を構成する閾値はパラメータW_BaとW_Lを用いて以下の式で生成される。
M_Th_k=g_t(W_Ba)×(W_Ba×Ba_Th_k+W_L×L_Th_k(L_SC_flg)) ・・・(47)
M_Th_y=g_t(W_Ba)×(W_Ba×Ba_Th_y+W_L×L_Th_y(L_SC_flg)) ・・・(48)
(なお、L_SC_flgは、本変形例では1または2をとる。g_t(W_Ba)は常に1.0)
以上、候補スクリーン処理が2つ以上ある場合について説明した。上記のように候補スクリーン処理が2つ以上ある場合では、まず、候補スクリーン処理同士での再現性評価を行い、候補スクリーン処理をひとつ選択する。そして、最後に基本スクリーン処理との合成スクリーン処理を算出すれば、候補スクリーン処理が2つ以上ある場合でも合成スクリーン情報の生成が可能である。
【0129】
(変形例4)
前述の実施例および変形例では、基本スクリーン情報保持部303および候補スクリーン情報保持部304にスクリーン情報を構成する閾値群を保持しておく例を説明している。しかしながら、閾値群をそのまま保持しておかず、リアルタイムに演算で求めても良い。リアルタイムに演算で求める場合は、スクリーンベクトルなどの情報を基本スクリーン情報保持部303や候補スクリーン情報保持部304に保持しておけばよい。
【0130】
また、合成スクリーン情報の生成では、評価値に応じてパラメータを設定し、そのつど合成スクリーン情報を構成する閾値を算出する例を示した。しかしながら、あらかじめ合成したスクリーン情報を用意しておき、画素ごとの評価に従ってスクリーン処理を切り替える方法でもよい。具体的には、基本スクリーン情報と候補スクリーン情報を合成した中間スクリーン情報を作成しておく。そして、各評価値に応じて、基本スクリーン処理、候補スクリーン処理、中間スクリーン処理のうちいずれかを選択する。この方法では、評価値が出力されるたびに合成スクリーン情報を演算によって生成しなくてもよい。
【0131】
また、上記実施例および変形例において、候補スクリーン処理に参照されるスクリーンベクトルの設定についていくつか例を示したが、これに限られるものではなく、式(1)を満たすスクリーンベクトルをもつスクリーンであればよい。
【0132】
たとえば、その他のブラックの候補スクリーンベクトルとして、
L_k_V(n)=1/2×Ba_c_V1+1/2×Ba_c_V2 ・・・(49)
(α=1/2、β=1/2)
L_k_V(n)=1×Ba_c_V1+1×Ba_c_V2 ・・・(50)
(α=1、β=1)
がある。ただし、式(49)に示した例のように、候補スクリーンベクトルの結合係数が小数となる場合は、注意が必要である。このときは、単純なデジタル格子上にスクリーンベクトルが設定できない。候補スクリーンベクトルが小数となる場合は、印刷スクリーンでよく用いられているスーパーセルによるスクリーンを用いる。スーパーセルによるスクリーンは公知であるため、詳細は省略する。
【0133】
また、全ての候補スクリーン情報のスクリーンベクトルにおいて結合係数αが0、又はβが0と設定されることは望ましくない。各候補スクリーンセット処理のスクリーンベクトルは180°をN等分した角度に近い角度を有することが望ましい。例えば候補スクリーンセット処理が2つある場合は90°、3つある場合は60°ずつスクリーンベクトルの方向が異なっているようなスクリーン処理を有するのがよい。
【0134】
(変形例5)
前述の実施例および変形例では、合成スクリーン情報セットを生成するためのパラメータを決定する際に、全ての重畳画像データに対して評価値を算出する場合を示した。しかし、図17に示すように、基本スクリーン処理結果のみ評価してもよい。すなわち基本重畳画像データのみ算出し、1つの評価値に基づいて合成スクリーン情報を生成する。具体的には、これまで示したのと同じようにYK基本重畳画像データを算出し、LPFを用いてフィルタ処理を行い、基本スクリーン処理の評価値を算出する。そして、基本スクリーン処理結果の評価値が所定の閾値を超えた場合、用意された候補スクリーン処理を適用する。また評価値が閾値付近の場合は、基本スクリーン情報と候補スクリーン情報の中間のスクリーン情報を合成し、中間のスクリーン情報を用いてスクリーン処理するような構成になっていればよい。
【0135】
(変形例6)
前述の実施例および変形例では、評価値を算出するまでに、入力積(デューティデータ、被覆率データ)に対してのLPF処理、およびスクリーン処理後2値積データに対してのLPF処理と2回のLPF処理が必要であった。しかしながら、必ずしもLPF処理は2回必要なわけではない。例えば図19にLPFを1回かけることによって評価値を算出する構成例を示す。図19では、まず入力積(デューティデータ、被覆率データ)と重畳画像データとの差分を算出し、差分に対してLPFによるフィルタ処理をかける構成である。このようにしても、これまでの実施例および変形例と同様の評価値を算出できる。
【0136】
(変形例7)
また前述の実施例および変形例では、評価値を算出するまでに、実際にスクリーン処理を行っていた。しかしながら、評価値を算出するのに必ずしも実際にスクリーン処理を行う必要はない。例えば図20に、実際のスクリーン処理を行わずに擬似的にスクリーン処理をする方法を示す。図20の2001は実際のスクリーン処理について、2002は擬似的なスクリーン処理について示している。2002では、実際のスクリーン周波数と同じ周波数の1、−1の符号反転データと画像データの積を取ったものである。2002においては、単純に積を取っただけで、実際のスクリーン処理後の周波数に変調することが可能である。また、2002の出力データは、平均0の信号を取り出すことができる。この特徴を活かすと、実際にスクリーン処理を行わずに擬似的に評価値を算出可能である。
【0137】
その例を図21に示す。図21は、実際のスクリーン処理を図20の擬似スクリーン処理に置き換えたものである。図21の構成では、実際のスクリーン処理結果と概ね等しい評価値を算出することが可能であり、これまでの実施例および変形例と同様の効果を得ることができる。
【0138】
また、図21の構成例では、擬似スクリーン処理データが平均0となるため、入力積(デューティデータ、被覆率データ)との差分を取る必要はない。上記のようにすると、LPFの数を減らし、かつ入力積(デューティデータ、被覆率データ)に対する差分を取らずに、評価値を算出できる。
【0139】
(変形例8)
また、前述の実施例および変形例ではYK2色の色間モアレについての評価値算出、およびスクリーン情報の合成について説明したが、2色に限る必要はない、例えば、CYKの3色に適用しても良いし、CMYK4色の全ての色間モアレについて適用しても良い。
【0140】
(変形例9)
また、上記実施例では本発明は、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施形態をとることが可能である。複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0141】
なお本発明は、ソフトウェアのプログラムを、システムや装置に直接あるいは遠隔から供給し、そのシステムや装置のコンピュータが該供給されたプログラムコードを読みだして実行することによっても達成される。この場合プログラムとは、本発明に記載の機能を実現するためのプログラムである。
【技術分野】
【0001】
本発明は、カラー入力画像データに対してスクリーン処理を行うものに関する。
【背景技術】
【0002】
印刷の分野では、入力画像データを網点の周期配列に変換することで、安定した階調表現が得られる。そして、この網点の配置、傾斜角度を設定するための技術はスクリーン処理技術としてよく知られている。
【0003】
特にカラー印刷では、CMYK(C:シアン、M:マゼンタ、Y:イエロー、K:ブラック)色版のそれぞれの網点の傾斜角度を異ならせることがある。これは色版間の網点の重なりと非重なりを制御し、版がずれることによる色味の変化を抑制するためである。
【0004】
しかし、CMYK色版の網点の傾斜角度はそれぞれ水平軸、垂直軸の周期が異なるため、色間の網点の重なりと非重なりの周期が特徴的なパターン(色間モアレ)として視認されることがある。特に傾斜角度が近い色版の組み合わせでは、網点の重なりと非重なり周期が長くなる(低周波となる)ため、より視認されやすい。
【0005】
ところで、オフセット印刷機に代表される印刷機においては、平面上に疎水性、親水性に分かれた画像の版に対してインクを塗布し、版を用紙と密着させて、用紙に画像を写すことで印刷を行う。用紙に写されたインクの溶媒は揮発するため、色材以外は紙面上にあまり残らない。このため、多色のインクを重ねるカラー印刷においても、色版間の互いに与える影響を少なくすることができる。結果として、網点の重なりの有無に関わらず、網点は比較的同じ面積(大きさ)で印刷される。
【0006】
網点が比較的同じ面積(大きさ)となるメリットは以下のことがある。例えば、画像明度への寄与が小さいYの色版と、画像明度への寄与が大きいKの色版の組み合わせにおいて、YKの網点が重なる場合とYKの網点が重ならない場合を考える。明度への寄与率が大きいKの網点面積がどちらもほぼ同じであるため、画像の明度もほぼ同じとなる。そのため、上述の色間モアレがより視認されやすい(網点傾斜角度の近い)色版組み合わせには、積極的に画像明度への寄与率が小さいYの色版を選ぶことにより(例えば、YK、CY、MY)、この色間モアレがほとんど視認されなくなるのである。
【0007】
一方、電子写真方式の印字装置においては、光学的に感光体に描画された潜像画像を帯電した色材で現像し、これを紙に転写し、熱と圧力で定着させることによって印字を行う。電子写真方式の色材は、樹脂を含む構成であるため定着後時間が経っても色材がそのまま紙面上に残り続ける。
【0008】
特に、電子写真方式でカラー印刷を行う場合には、色版を多重に重ねるため、紙面に残る色材の体積は格段に多くなる。電子写真方式では、多重に重ねられた色材を、熱と圧力をかけて定着させるため、色材は平坦に押し広げられ、網点の面積が増加する。網点の面積の増加は色材の体積が多いほど顕著になるため、電子写真方式の印字装置でカラー印刷を行うときは、複数の色材が重なった部分(重畳部)ほど網点面積が増加する。
【0009】
例えば、画像明度への寄与が小さいY版と、画像明度への寄与が大きいK版の組み合わせを考える。YとKの網点が重なった重畳部では、YとKが重ならない非重畳部に比して、明度への寄与が大きいKの網点面積が増加する分、画像の明度は低下してしまう。そのため電子写真方式において、上述のオフセット印刷機の場合のように、網点の傾斜角度が近い色版の組み合わせに、YK、CY、MYなどを選んでも色間モアレが視認されてしまう。
【0010】
すなわち、電子写真方式の印字装置では、複数の色材が存在する重畳部では色材が押し広げられることでその色版の網点面積が増加して明度が顕著に変化するため、色間モアレが発生しやすい。
【0011】
そこで電子写真方式において、上記色間モアレを低減するために、2つの色材の網点が重なった部分において、一方の色材量を抑制することで色間モアレを低減する技術が提案されている(特許文献1)。この技術は、例えばKY版の重畳部ではY版の色材を形成しないことによって、重畳部の面積の増加を防ぎ、色間モアレを低減するものである。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2006−341521号公報
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、上述した特許文献1に記載された手法によれば、以下のような課題がある。
【0014】
色版の組み合わせにK版を含まない場合、色版同士の画像明度への寄与が同等であり、一方の色材量を抑制することで重畳部の色が変わってしまう。例えばCとYを組み合わせた場合、重畳部は緑色になることが理想だが、特許文献に記載された手法に従ってYの色材量を抑制すると重畳部がシアンになってしまう。
【0015】
そこで本発明は、カラー印刷において色間モアレを適切に低減できる画像処理装置および方法を提案することを目的とする。
【課題を解決するための手段】
【0016】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理手段と、前記第1のスクリーン処理手段による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳手段と、前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成手段と、前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理手段の処理結果の第1の評価値を求める第1の評価手段と、前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段と、前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理手段を有することを特徴とする。
【発明の効果】
【0017】
本発明によれば、カラー印刷において色間モアレを適切に低減できる。
【図面の簡単な説明】
【0018】
【図1】実施例1の画像処理装置、および画像形成装置の構成を示したブロック図である。
【図2】実施例1の画像処理フローを示す図である。
【図3】実施例1のスクリーン処理部を示す図である。
【図4】実施例1の基本スクリーン処理の概念を示す図である。
【図5】実施例1の候補スクリーン処理の概念を示す図である。
【図6】実施例1の評価値算出部を示す図である。
【図7】実施例1の各スクリーン処理の周波数特性と対応するローパスフィルタのカットオフ周波数を示す図である。
【図8】実施例1のパラメータ算出テーブルを示す図である。
【図9】実施例1の合成スクリーン情報算出部の動作を示す図である。
【図10】パッチ画像における実施例1の効果を示す図である。
【図11】グラデーション画像における実施例1の効果を示す図である。
【図12】実施例2の基本スクリーン処理の概念を示す図である。
【図13】実施例2の候補スクリーン処理の概念を示す図である。
【図14】網点単位領域を示す図である。
【図15】パラメータ算出テーブルの変形例を示す図である。
【図16】変形例3における候補スクリーン処理が2つ以上ある場合の例を示す図である。
【図17】その他の実施例における、基本スクリーン処理の再現性のみを評価する際の例を示す図である。
【図18】変形例2(要素値比較によるスクリーン処理の合成)における合成スクリーン情報算出部の動作を示す図である
【図19】その他の実施例における、LPFの数を減らした場合の評価値算出部の動作を示す図である。
【図20】その他の実施例における、擬似スクリーン処理について示す図である。
【図21】その他の実施例における、擬似スクリーン処理を用いた場合の評価値算出部の動作を示す図である。
【発明を実施するための形態】
【0019】
以下、添付の図面を参照して、本発明を好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0020】
(実施例1)
図1は、本実施例による画像処理装置、および画像形成装置の構成を示したブロック図である。本実施例の画像形成装置は、電子写真方式のプリンタを用いる。ただし、画像形成装置は電子写真方式のプリンタに限らず、インクジェット方式や昇華型方式、オフセット印刷方式などを用いてもよい。
【0021】
図1において、画像処理装置1と画像形成装置2は、インタフェース又は回路によって接続されている。画像処理装置1は例えば一般的なパーソナルコンピュータにインストールされたドライバである。その場合、以下に説明する画像処理装置1内の各部は、コンピュータが所定のプログラムを実行することにより実現される。ただし、画像形成装置2が画像処理装置1を含む構成としてもよい。
【0022】
画像処理装置1は、入力端子101から入力された印刷対象のカラー入力画像データを入力画像バッファ102に格納する。カラー入力画像データは、レッド(R)、グリーン(G)、ブルー(B)の3つの色成分により構成されている。
【0023】
色分解処理部103は、色分解用ルックアップテーブル(LUT)を参照して、格納されたカラー入力画像データを画像形成装置2が備える色材色に対応した画像データへ分解する。本実施例における色材色は、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)の4種類である。そのため、RGBのカラー入力画像データは、CMYKの画像データへ変換される。
【0024】
なおこの後、色間モアレを抑制したい入力画像データと、色間モアレを考慮しない入力画像データは異なる処理が進められる。色間モアレを抑制すべき色の組み合わせの選択は、例えばスクリーン処理部105の設定に基づき、色間モアレが低周波数域になってしまう色版の組み合わせを選択すればよい。本実施例では、CMYKのうちYK間で発生する色間モアレを抑制する例を示す。ただし色版の組み合わせはYKに限らず、どのような組み合わせを選択したとしても本実施例を適用できる。色版の傾斜角度が近い場合に色間モアレは発生しやすいので、色版の傾斜角度が近い組み合わせを選択するのが望ましい。
【0025】
スクリーン処理部105は、色分解処理部103から得た入力画像データをスクリーン処理によって2値化し、2値データを出力する。Yの入力画像データとKの入力画像データに対しては複数のスクリーン処理を施す。YおよびKのスクリーン処理後二値データは、評価値算出部106に出力される。また、色間モアレの抑制を考慮しないCおよびMの入力画像データに対しては基本スクリーン処理のみを施し、CおよびMのスクリーン処理後2値データをスクリーン処理後画像格納バッファ110に出力する。詳しくは後述する。
【0026】
評価値算出部106は、スクリーン処理部105から出力されたYK間のスクリーン処理後2値データにおける網点の重なり(重畳部)を評価する。評価値および評価値算出方法についての詳細は後述する。
【0027】
スクリーン情報生成パラメータ算出部107は、評価値算出部106から得たすべてのスクリーン処理結果に対する評価値に基づいて、合成スクリーン情報を生成するためのパラメータを算出する。
【0028】
合成スクリーン情報算出部108は、スクリーン情報生成パラメータ算出部107で算出されたパラメータを用いて、Yの合成スクリーン情報とKの合成スクリーン情報を生成する。
【0029】
合成スクリーン処理部109は、YおよびKの入力画像データを、それぞれに対応する合成スクリーン情報を参照したスクリーン処理によって2値データに変換し、スクリーン処理後画像格納バッファ110に格納する。スクリーン処理後画像格納バッファ110にはCMYK全ての二値データが格納される。
【0030】
そしてCMYKの2値データは、出力端子111より画像形成装置2へ出力される。
【0031】
また画像形成装置2は、感光体ドラム201、202、203、204、中間転写ベルト205、転写部206、定着部207、用紙トレイ208、印刷物堆積部209を有する。
【0032】
画像形成装置2においては、画像処理装置1から受信したCMYK各色の2値データに基づく潜像画像が、CMYK各色の感光体ドラム201,202,203,204上に形成される。感光体ドラム201,202,203,204において、形成された潜像画像からトナー像は中間転写ベルト205上に転写され、中間転写ベルト205上カラー像を形成する。転写部206において、このカラー像は用紙トレイ208から供給された用紙上に転写され、定着部207にて定着された後、用紙は印刷物堆積部209に送られる。
【0033】
図3はスクリーン処理部105を示している。基本スクリーン処理部301は、基本スクリーン情報保持部303の基本スクリーン情報を参照して、CMYK全ての画像データを基本スクリーン処理後2値データに変換する。なお、基本スクリーン情報保持部303は、CMYKそれぞれの画像データに対応する基本スクリーン情報を保持している。また、各基本スクリーン情報は互いに異なる。
【0034】
候補スクリーン処理部302は、候補スクリーン情報保持部304の候補スクリーン情報を参照する。候補スクリーン処理部が入力画像データを二値化するのは、色間モアレを抑制したいYKの入力画像データのみである。つまり候補スクリーン情報保持部304は、色間モアレを抑制したい色の組み合わせに対応する候補スクリーン情報を保持していればよい。従って、ここでは互いに異なるY候補スクリーン情報とK候補スクリーン情報を有している。
【0035】
ここで図4に、基本スクリーン処理の概要を示す。ここでは、YおよびKを例に説明する。基本スクリーン情報保持部303は、K基本スクリーン情報403とY基本スクリーン情報406を有する。
【0036】
基本スクリーン情報は、閾値(1〜255)が画素に対応するように配置された閾値群であり、基本スクリーン処理301に用いられる。K入力画像データ401は全ての画素において70であり、K基本スクリーン情報403を参照してスクリーン処理すると、Kの基本スクリーン処理後二値データ409が得られる。同様にYの画像データ402も全ての画素において70であり、Y基本スクリーン情報406を参照してスクリーン処理すると、Yの基本スクリーン処理後2値データ410が出力される。
【0037】
なお、K基本スクリーン情報はドットスクリーン情報であり、変換された二値データには複数の黒画素からなる周期的なドットが形成される。Kの2値データ409において、ドット411に注目すると、ドット412および413が最近接である。最近接ドットと結んで得られる2方向のベクトルはスクリーンベクトルとして定義される。この場合ベクトル404(x、y)=(3、2)及びベクトル405(x、y)=(−2、3)がK基本スクリーン情報のスクリーンベクトルであり、K基本スクリーンベクトルとなる。
【0038】
また、Y基本スクリーン情報もドットスクリーン情報であり、Yの2値データ410において、ドット414に注目すると、ドット415および416が最近接である。最近接ドットと結んで得られる2方向のベクトルはスクリーンベクトルとして定義される。この場合ベクトル407(x、y)=(−3、3)及びベクトル408(x、y)=(3、3)がY基本スクリーン情報のスクリーンベクトルであり、Y基本スクリーンベクトルとなる。
【0039】
なお、上述の場合、K基本スクリーンベクトルBa_k_V1とBa_k_V2は互いに同じ長さである。またY基本スクリーンベクトルBa_y_V1とBa_y_V2互いに長さは同じであるが、必ずしも同じでなくともよい。
【0040】
同様に、CとMの入力画像データに対しても基本スクリーン処理をする。Cの基本スクリーン情報におけるスクリーンベクトルはBa_c_V1(x、y)=(2、3)、Ba_c_V2(x、y)=(−3、2)である。同様にMの基本スクリーン情報におけるスクリーンベクトルは、Ba_m_V1(x、y)=(0、4)、Ba_m_V2(x、y)=(−4、0)である。以上のように、基本スクリーン処理部301はCMYK全ての入力画像データに対して、互いに異なるスクリーン情報を参照してスクリーン処理を施す。
【0041】
また図5に、候補スクリーン処理の概要を示す。候補スクリーン情報保持部304は、K候補スクリーン情報(1)503とY候補スクリーン情報(1)505を有し、候補スクリーン処理部302でおこなうスクリーン処理に用いられる。基本スクリーン処理と同様に、すべての画素において70の値であるK入力画像データ501は、K候補スクリーン情報(1)を用いて二値データ506に変換される。また、Y入力画像データ502はY候補スクリーン情報(1)を用いて二値データ507に変換される。
【0042】
候補スクリーン情報はラインスクリーン情報であり、生成されるラインに対して垂直の方向に1つのスクリーンベクトルをもつ。図5の場合は、K(ブラック)候補スクリーンベクトル(1)504は(x、y)=(3、2)となる。また、Y(イエロー)候補スクリーンベクトル(1)506は(x、y)=(−3、2)となる。
【0043】
K候補スクリーンベクトル(1)はK基本スクリーンベクトルと始点が同じである。また、Y候補スクリーンベクトル(1)も、Y基本スクリーンベクトルと始点が同じである。これはスクリーンベクトルの位相(位置)が同じであることを意味する。
【0044】
さらに、K候補スクリーンベクトル(1)504は、二つの基本スクリーンベクトル404、405の線形結合で、かつ、各結合係数が整数(0やマイナスも含む)もしくは整数の逆数で表せられる。Y候補スクリーンベクトル(1)505も、二つの基本スクリーンベクトル406、407の線形結合で、かつ、各結合係数が整数(0やマイナスも含む)もしくは整数の逆数で表せられる。
【0045】
候補スクリーンベクトルをL_V(n)(nは1以上の自然数)、基本スクリーンベクトルをBa_V1、Ba_V2とすると以下の式が成り立つ。
L_V(n)=α×Ba_V1+β×Ba_V2 ・・・(1)
(α、β:整数もしくは整数の逆数)
なお、本実施例でKの候補スクリーンベクトルL_k_V(1)は、
L_k_V(1)=1×Ba_k_V1+0×Ba_k_V2 ・・・(2)
(α=1、β=0)
Yの候補スクリーンベクトルL_y_V(1)は、
L_y_V(1)=0×Ba_k_V1+1×Ba_k_V2 ・・・(3)
(α=0、β=1)
となっている。このような候補スクリーンベクトルが構成するラインやドットは、基本スクリーン処理後二値データに表れる複数のドットを通るように形成される。そのため、基本スクリーン処理301と候補スクリーン処理302を連続的かつ滑らかに変化させることができる。なお、候補スクリーン処理部によるスクリーン処理は、色間モアレを抑制したい色の組み合わせの画像データに対してのみ行う。CおよびMは基本スクリーン処理後二値データがそのままスクリーン処理後画像格納バッファに出力されるので、候補スクリーン処理部によるスクリーン処理は必要ない。
【0046】
図6は評価値算出部106を示している。評価値は、色間モアレの原因となる複数の色材が存在する重畳部を評価する。ここでは、2つの評価値を算出する。一つはY基本スクリーン処理後二値データとK基本スクリーン処理後二値データとを合わせた場合の重畳部(以下、YK基本重畳画像データ)の評価値である。またもう一つは、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとを合わせた場合の重畳部(以下、YK候補重畳画像データ)の評価値である。重畳部とは、YとKがいずれも黒画素である重なりを示している。
【0047】
まず、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データに対して、1に正規化(601)した後、YKの基本スクリーン処理後二値データの論理積(602)を取り、YK基本重畳画像データを生成する。YK基本重畳画像データではYK版のいずれも黒画素である場合に1、それ以外では0になる。つまり、選択した色の組み合わせYとKの各基本スクリーン処理後二値データを合わせた場合、ドットが重なっている重畳画素を抽出する。
【0048】
次に、YK基本重畳画像データに対して第1LPF603によるフィルタ処理を行い、YK基本重畳画像データの低周波成分を算出する。なお、第1LPFは、Y基本スクリーン情報およびK基本スクリーン情報のスクリーン周波数を除去可能な周波数特性をもつ。
【0049】
次に、K入力画像データとY入力画像データに対して、1に正規化(604)を行い、K、Yの正規化後色分解処理後データの積(605)を取り、積画像(以下、YK入力積画像データと呼ぶ)を生成する。次に、第1LPF605によるフィルタ処理を行い、入力積画像データの低周波成分を算出する。
【0050】
そして減算部607は、YK基本重畳画像データの低周波成分とYK入力積画像データの低周波成分との差分を算出する。さらに重み積算部608は、減算部607から得た差分に重み係数(実数)を積算し、基本重畳画像データの評価値として出力する。
【0051】
以上の処理をY候補スクリーン処理後2値データおよびK候補スクリーン処理後二値データに対しても行い、候補重畳画像データの評価値を得る。
【0052】
ここで、評価値について説明する。色間モアレは、YKの色材が重なったドットが特徴的なパターンを示した時に発生する。色間モアレが発生した画像では、一般にKやYを単色でスクリーン処理した後二値データが有するスクリーン周波数(網点周波数)よりも低い周波数に干渉が起こっている。つまり、Kスクリーン情報やYスクリーン情報のスクリーン周波数よりも低い周波数で色間モアレは出現する。そこで、スクリーン処理に用いられたスクリーン情報のスクリーン周波数よりも低い周波数において、YK入力積画像データとYK重畳画像データとを比較することで、色間モアレを正確に評価する。
【0053】
本実施例では、K、Yそれぞれのスクリーン情報がもつスクリーン周波数特性を取り除くために、LPF(ローパスフィルタ)を用いてフィルタ処理を施す。図7に各スクリーン情報の周波数特性と各LPFのカットオフ周波数を示す。701は第1LPFのカットオフ周波数、702はK基本スクリーン情報のスクリーン周波数特性、703はY基本スクリーン情報のスクリーン周波数特性を示している。
【0054】
さらに、704は第2LPFのカットオフ周波数、705はK候補スクリーン情報のスクリーン周波数特性、706はY候補スクリーン情報のスクリーン周波数特性を示している。
【0055】
図7より、各LPFのカットオフ周波数は、Kスクリーン情報とYスクリーン情報のスクリーン周波数よりも低く設定されていることがわかる。このようにスクリーン処理に用いられるスクリーン情報のスクリーン周波数特性に応じたLPFを用いてフィルタ処理することによって、単色での各スクリーン処理後二値データのスクリーン成分を取り除く。
【0056】
なお、本実施例では、各基本スクリーン情報、K候補スクリーン情報のスクリーン周波数はほぼ同一となるため、第1LPF、第2LPFは同じカットオフ周波数をもつLPFを用いている。ただし、各スクリーン情報のスクリーン周波数が異なる場合は、LPFは必ずしも同一でなくてもよい。
【0057】
次に、以上の構成を備えた画像処理装置1における画像処理について、図2のフローチャートを用いて説明する。
【0058】
まず、ステップS201において、多階調のカラー入力画像データを入力画像バッファ102に格納する。
【0059】
ステップS202において、色分解処理部103は、色分解用LUT104を用いて、カラー入力画像データのRGBからCMYKの色ごとに分解し、多値の画像データD_c、D_m、D_y、D_kを得る。ここでは、各入力画像データを8ビットとして扱うが、それ以上の階調数への変換を行っても構わない。本実施例における色材は、CMYK4種類を保有する。そのため、RGBのカラー入力画像データは、次式のとおりに、CMYKの計4プレーンの画像データへ変換される。
D_c=C_LUT_3D(R,G,B) ・・・(4)
D_m=M_LUT_3D(R,G,B) ・・・(5)
D_y=Y_LUT_3D(R,G,B) ・・・(6)
D_k=K_LUT_3D(R,G,B) ・・・(7)
ここで、式(4)〜(7)の右辺に定義される各関数が、色分解用LUT104の内容に該当する。色分解用LUT104はレッド、グリーン、ブルーの3入力値から、各色材の出力値を定める。本実施例では、CMYK4色を具備する構成であるため、3入力値から4出力値を得るLUT構成となる。ここで、色間モアレを低減したい色の組み合わせにYとKを選択する。
【0060】
ステップS203では、基本スクリーン処理部301において画像データD_c、D_m、D_y、D_kに対し、基本スクリーン処理をする。具体的には注目画素の画像データと、注目画素に対応するスクリーン情報の閾値とを比較し、画像データの方が閾値より大きければ255、小さければ0を出力し、2値化する。
【0061】
CMYK4色分の各基本スクリーン情報303は、閾値Ba_Th_c、Ba_Th_m、Ba_Th_y、Ba_Th_kによって構成されている。本実施例では、以下、K(ブラック)、Y(イエロー)の二色に関する処理について説明する。次式のとおりに2値化する。
D_k<Ba_Th_kのとき、Out_Ba_k=0 ・・・(8)
D_k≧Ba_Th_kのとき、Out_Ba_k=255 ・・・(9)
D_y<Ba_Th_yのとき、Out_Ba_y=0 ・・・(10)
D_y≧Ba_Th_yのとき、Out_Ba_y=255 ・・・(11)
一方、シアン、マゼンタに対しても同様に基本スクリーン処理部301にて処理を行う。なお、ブラックの基本スクリーン情報は、スクリーンベクトルBa_k_V1404(x、y)=(3、2)、Ba_k_V2405(x、y)=(−2、3)と2つのスクリーンベクトルを持つ。同様に、イエローの基本スクリーン情報は、スクリーンベクトルBa_y_V1408(x、y)=(3、3)、Ba_y_V2407(x、y)=(−3、3)である。
【0062】
また、シアンの基本スクリーン情報におけるスクリーンベクトルはBa_c_V1(x、y)=(2、3)、Ba_c_V2(x、y)=(−3、2)である。同様にマゼンタの基本スクリーン情報におけるスクリーンベクトルは、Ba_m_V1(x、y)=(0、4)、Ba_m_V2(x、y)=(−4、0)である。
【0063】
なお本実施例では、色間モアレを低減する色の組み合わせにイエローとブラックを選択している場合について説明する。色間モアレを考慮しないシアン、マゼンタは、上記基本スクリーン処理による二値データが、最終的な二値データとなる。すなわち、CとMの基本スクリーン処理後二値データはそのまま、スクリーン処理後画像格納バッファ110に送られることになるが、これらの構成に限られる必要はない。例えば、シアン、マゼンタの色間モアレを補正する場合は、イエロー、ブラックの基本スクリーン処理後二値データがそのままスクリーン処理後画像格納バッファ110に送られてもよい。
【0064】
ステップS204では、候補スクリーン処理部302が、YとKの画像データD_y、D_kに対して候補スクリーン処理をする。
【0065】
候補スクリーン処理部302は、D_y、D_kの2色に対して候補スクリーン情報保持部304の各データに対応する候補スクリーン情報(1)を用いて候補スクリーン処理(1)を施す。これによりY候補スクリーン処理(1)後2値データとK候補スクリーン(1)データが出力される。具体的には、注目画素の画像データと候補スクリーン情報の注目画素に対応する閾値とを比較し、画像データの方が閾値より大きい場合は255、小さい場合は0として2値化する。また、候補スクリーン(1)情報は閾値L_Th_k(1)、L_Th_y(1)により構成されている。
【0066】
ここでは、図5のK(ブラック)、Y(イエロー)の候補スクリーン(1)情報503と505を用いて、次式のとおりに2値化する。
K候補スクリーン処理(1)
D_k<L_Th_k(1)のとき、Out_L_k(1)=0 ・・・(12)
D_k≧L_Th_k(1)のとき、Out_L_k(1)=255 ・・・(13)
Y候補スクリーン処理(1)
D_y<L_Th_y(1)のとき、Out_L_y(1)=0 ・・・(14)
D_y≧L_Th_y(1)のとき、Out_L_c(1)=255 ・・・(15)
なお本実施例では、図5に示した通りように、K候補スクリーンベクトルL_k_V(1)504は(x、y)=(3、2)と設定されている。また、Y候補スクリーンベクトルL_y_V(1)506は(x、y)=(−3、3)と設定されている。
【0067】
K候補スクリーンベクトルL_k_V(1)は、K基本スクリーンベクトルBa_k_V1、Ba_k_V2と同じ始点である。またY候補スクリーンベクトルL_y_V(1)は、Y基本スクリーンベクトルBa_y_V1、Ba_y_V2と同じ始点である。全ての候補スクリーンベクトルは基本スクリーンベクトルと始点が同じになるよう設定される。すなわち、スクリーンベクトルの位相(位置)が同じである。
【0068】
ステップS205では、評価値算出部106はY二値データとK二値データを合わせたときの重なったドットからなる重畳画像を評価する。以下、前述の通り本実施例ではYK間の色間モアレを抑制するものであるので、YおよびKのデータに対して処理をする。YKの基本スクリーン処理後二値データ同士を合わせた場合と、YK候補スクリーン処理(1)後二値データ同士を合わせた場合の2つの重畳画像を評価する。
【0069】
まず正規化部601は、基本スクリーン処理後データOut_Ba_kおよびOut_Ba_yに対して、それぞれ1.0に正規化を行う。
Out_Bas_k=Out_Ba_k/255 ・・・(16)
Out_Bas_y=Out_Ba_y/255 ・・・(17)
【0070】
次に、重畳画像データ算出部602は、正規化部602から出力されたOut_Bas_kとOut_Bas_yの論理積をとる。そして、重畳画像データ算出部602は基本重畳画像データOut_Bas_ykを出力する。
Out_Bas_yk=Out_Bas_y・Out_Bas_k ・・・(18)
1に正規化されたデータを積算すると、K基本スクリーン処理後二値データとY基本スクリーン処理後二値データいずれにおいても黒画素である場合のみ1となる。つまりK基本スクリーン処理後二値データとY基本スクリーン処理後二値データの重なり部(重畳画像データ)を抽出することができる。この重畳画像データにおいて発生したモアレが色間モアレに相当する。
【0071】
次に、基本重畳画像データOut_Bas_ykに対して、式(19)のように第一LPF603によるフィルタ処理を行い、基本重畳画像データの低周波成分Out_Ba_f_ykを算出する。
Out_Ba_f_yk=Out_Bas_yk*LPF_1 ・・・(19)
ただし、*はコンボリューションを示す
【0072】
次に、正規化部604は、色分解されたK入力画像データD_k、Y入力画像データD_yに対して、それぞれ1.0に正規化を行う。
D_s_y=D_y/255 ・・・(20)
D_s_k=D_k/255 ・・・(21)
【0073】
次に、色分解積算出部605は、K正規化後データD_s_kとY正規化後データD_s_yとの積を取ることでYとKが重なる入力積データ(被覆率データ)を算出し、入力積データD_s_ykを算出する。
D_s_yk=D_s_y・D_s_k ・・・(22)
【0074】
次に、入力積データD_s_ykに対して、式(23)のように第一LPF606によるフィルタ処理を行って、入力積データの低周波成分D_f1_ykを算出する。
D_f1_yk=D_s_yk*LPF_1 ・・・(23)
ただし、*はコンボリューションを示す
なお、上記式(23)では、式(19)と同じローパスフィルタを用いる例を示したが、異なるローパスフィルタを用いてもよい。
【0075】
次に減算部607は、入力積データの低周波成分D_f1_ykと基本重畳画像データの低周波成分Out_Ba_f_ykとを減算する。この処理により得られた成分は、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データとを重ねた時に生じる色間モアレ成分に相当する。さらに重み積算部608は、重み係数a1(実数)を積算して、評価値P_Ba_ykを出力する。
P_Ba_yk=(−Out_Ba_f_yk+D_f1_yk)×a1・・・(24)
なお、この評価値P_Ba_ykは、Y基本スクリーン処理後二値データとK基本スクリーン処理後二値データとの重畳画像に対する評価値である。この時、YおよびKの基本スクリーン処理に用いられたY基本スクリーン情報とK基本スクリーン情報はこの後基本スクリーン情報セットとして扱われる。ただし、前述の通り、Y基本スクリーン情報とK基本スクリーン情報は互いに異なる。
【0076】
以上の評価値を求める工程を、候補スクリーン処理(1)から出力されたY候補スクリーン処理(1)後二値データとK候補スクリーン処理(1)後二値データに対しても行う。
【0077】
まず、正規化部609は、候補スクリーン処理を施されたK候補スクリーン処理後二値データOut_L_k(1)、Y候補スクリーン処理後二値データOut_L_y(1)に対して、それぞれ1.0に正規化する。
Out_Ls_bk=Out_L_k/255 ・・・(25)
Out_Ls_y=Out_L_y/255 ・・・(26)
【0078】
次に、重畳画像データ算出部610は、正規化部609から出力されたOut_Ls_kとOut_Ls_yの論理積をとる。そして重畳画像データ算出部610は、候補重畳画像データOut_Ls_ykを出力する。
Out_Ls_yk=Out_Ls_y・Out_Ls_k ・・・(27)
1に正規化されたデータを積算すると、K候補スクリーン処理後二値データとY候補スクリーン処理後二値データいずれにおいても黒画素である場合のみ1となる。つまりK候補スクリーン処理後二値データとY候補スクリーン処理後二値データの重なり部(重畳画像データ)を抽出することができる。この重畳画像データにおいて発生したモアレが色間モアレに相当する。
【0079】
次に、候補重畳画像データOut_Ls_ykに対して、式(28)のように第二LPF611によるフィルタ処理を行い、候補重畳画像データの低周波成分Out_f_ykを算出する。
Out_L_f_yk=Out_Ls_yk*LPF_2 ・・・(28)
ただし、*はコンボリューションを示す
【0080】
次に、入力積データD_s_ykに対して、式(29)のように第二LPF612によるフィルタ処理を行って、入力積データの低周波成分D_f2_ykを算出する。
D_f2_yk=D_s_yk*LPF_2 ・・・(29)
ただし、*はコンボリューションを示す
なお、上記式(29)では、式(28)と同じローパスフィルタを用いる例を示したが、異なるローパスフィルタを用いてもよい。
【0081】
次に減算部613は、入力積データの低周波成分D_f2_ykと候補重畳画像データの低周波成分Out_L_f_ykを減算する。この処理により得られる成分は、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとを合わせた時に生じる色間モアレ成分に相当する。さらに重み積算部614は重み係数a2(実数)を積算して、評価値P_L_ykを算出する。
P_L_yk(1)=(−Out_L_f_yk+D_f2_yk)×a2 ・・・(30)
なお、この評価値P_L_yk(1)は、Y候補スクリーン処理後二値データとK候補スクリーン処理後二値データとの重畳画像に対する評価値である。このあと、YおよびKの候補スクリーン処理(1)に用いられたY候補スクリーン情報(1)とK候補スクリーン情報(1)はこの後、候補スクリーン情報セットとして扱われる。ただし、前述の通り、Y候補スクリーン情報(1)とK候補スクリーン情報(1)は互いに異なる。
【0082】
以上で、評価値算出部106における処理が終了する。このようにして評価値を算出した場合、評価値の絶対値が小さいほど色間モアレが少ないと評価できる。なお、本実施例では積算部608、614の係数a1、a2は1.0とする。ただし、1.0に限る必要はなく、正の実数であればよい。
【0083】
ステップS206では、スクリーン情報生成パラメータ決定部107は、すべての評価値をもとに、合成スクリーン情報を生成するためのパラメータを算出する。
【0084】
スクリーン情報生成パラメータ算出部615は、評価値P_Ba_ykとP_L_yk(1)を評価値算出部107から受け取り、パラメータ算出テーブル616を用いて、合成スクリーン情報パラメータを算出する。
【0085】
まず、基本スクリーン処理の評価値P_Ba_ykの絶対値Ba_SC_Absを算出する。
Ba_SC_Abs=Abs(P_Ba_yk) ・・・(31)
さらに、候補スクリーン処理の評価値P_L_yk(1)の絶対値L_SC_Absを算出する。
L_SC_Abs=Abs(P_L_yk(1)) ・・・(32)
合成スクリーン情報を生成するためのパラメータW_Ba、W_Lは以下の条件を満たす。
W_Ba+W_L=1.0 ・・・(33)
パラメータW_Ba、W_Lの算出には、図7に示すパラメータ算出テーブル616を使う。パラメータ算出テーブルは2次元配列の形式で保持されている。配列の横軸はBa_SC_Absを、配列の縦軸はL_SC_Absを、表の値はW_Baを示している。配列の横軸、縦軸には、0.5、1、3、5、10、50、100と記載されている。これは、各評価値が、記載数値以下の場合に、W_Baの取る値の座標を示している。
【0086】
例えば、Ba_SC_Abs=3.3、L_SC_Abs=1.4の場合、Ba_SC_Abs≦5、L_SC_Abs≦3を満たすので、W_Ba=0.5となる。このとき、式(33)の関係から、W_L=0.5となる。以上で、ステップS206の動作を終了する。
【0087】
ステップS207において、合成スクリーン情報算出部108は基本スクリーン情報セットと候補スクリーン情報セットとからYKの合成スクリーン情報セットを算出する。基本スクリーン情報セットとはY基本スクリーン情報とK基本スクリーン情報である。また候補スクリーン情報セットとは、Y候補スクリーン情報(1)とK候補スクリーン情報(1)である。
【0088】
合成スクリーン情報セットとはY合成スクリーン情報とK合成スクリーン情報からなる。Y基本スクリーン情報とY候補スクリーン情報(1)を合成し、Y合成スクリーン情報となる。同様にK基本スクリーン情報とK候補スクリーン情報(1)を合成し、K合成スクリーン情報となる。各合成スクリーン情報を構成する閾値は、パラメータW_BaとW_Lを用いて以下の式で生成される。
M_Th_k=g_t(W_Ba)×(W_Ba×Ba_Th_k+W_L×L_Th_k(1)) ・・・(34)
M_Th_y=g_t(W_Ba)×(W_Ba×Ba_Th_y+W_L×L_Th_y(1)) ・・・(35)
(なお、g_t(W_Ba)は常に1.0)
【0089】
以上のように共通のパラメータを用いて、Y合成スクリーン情報とK合成スクリーン情報が生成される。具体的には式(34)で算出されるM_Th_kは、Ba_Th_kとL_Th_k(1)の線形結合で示され、かつ式(33)に示すように、パラメータの和は1となる。同様に、式(35)で算出されるM_Th_yは、Ba_Th_yとL_Th_y(1)の線形結合で示される。W_Ba=1の際(901)は、各基本スクリーン情報の閾値Ba_Th_k、Ba_Th_yがそのままM_Th_k、M_Th_yに代入される。反対に、W_L=1の際(903)は、各候補スクリーン情報の閾値L_Th_k、L_Th_yがそのまま、M_Th_k、M_Th_yに代入される。0<W_Ba<1の際(902)は各基本スクリーン情報の閾値Ba_Th_k、Ba_Th_yと候補スクリーン情報の閾値L_Th_k、L_Th_yを式(34)と式(35)に従って合成した値がM_Th_k、M_Th_yとなる。例えば、W_Ba=0.5(W_L=0.5)の時は、Ba_Th_kとL_Th_k(1)の中間値がM_Th_kに、Ba_Th_yとL_Th_y(1)の中間値がM_Th_yに代入される。
【0090】
なお、上記例では、式(34)(35)においてg_t(W_Ba)=1.0となる例を示したが、この例に限るものではない。例えば合成の比率(W_Ba)に応じて、g_tが変化しても良い(g_tはW_Baに応じて変化する正の実数)となっても良い。(例えば、合成比率W_Ba=0.5、W_L=0.5のときは、g_t=1.2となっても良いし、g_t=0.8となっても良い。)
このようにする理由は、常に、g_t=1.0とすると、W_Ba=0.5、W_L=0.5の時と、W_Ba=1.0、W_L=0.0の時とで、出力されるドットの数が保存されない場合があるからである。そのため、どのような合成比率でも出力されるドットの数が保存されるように、あらかじめ合成比率によって、g_t(W_Ba)が変わるようにしてもよい。
【0091】
ステップS208にて、合成スクリーン処理部109は入力画像データD_y、D_kに対してそれぞれに対応する合成スクリーン情報を参照してスクリーン処理を行う。具体的には、注目画素の入力画像データと合成スクリーン情報算出部108にて算出された各合成スクリーン情報の注目画素に対応する閾値とを比較し、2値化する。Y二値データおよびK二値データが出力される。
D_k<M_Th_kのとき、Out_M_k=0 ・・・(36)
D_k≧M_Th_kのとき、Out_M_k=255 ・・・(37)
D_y<M_Th_yのとき、Out_M_y=0 ・・・(38)
D_y≧M_Th_yのとき、Out_M_y=255 ・・・(39)
合成スクリーン処理部109で算出されたK二値データ及びY二値データはスクリーン処理後画像格納バッファ110に格納され、出力端子111より画像形成装置2へ出力される。ここで、C二値データおよびM二値データと合わせて、全ての入力画像データを二値に変換した二値データがスクリーン処理後画像格納バッファ110に揃う。
以上により、画像処理が終了する。
【0092】
本実施例では色間モアレを低減したい組み合わせに対し、複数のスクリーン処理を施して、2つ以上の重畳画像データを生成する。そして重畳画像データの評価値に応じてスクリーン処理が切り替えられる。ここでは基本スクリーン処理、候補スクリーン処理、もしくはその中間のスクリーン処理が画素ごとに適用される。スクリーン処理を切り替えても滑らかに変化するのは、候補スクリーン情報におけるスクリーンベクトルが式(1)を満たし、かつ基本スクリーン情報のスクリーンベクトルと始点が同じになるように設定したためである。これにより複数のスクリーン処理を画素ごとに用いても、視覚上好ましい2値化データを実現できる。
【0093】
また本実施例ではイエロー(Y)及びブラック(K)は、基本スクリーン情報、候補スクリーン情報ともに、互いに異なるスクリーンベクトルが設定されている。よって、算出された各色の合成スクリーン情報は、色間モアレが発生しない領域、色間モアレが発生する領域のいずれの領域でも、互いにスクリーンベクトルが異なる。従って、物理的なレジストレーションずれ(一般的に色ズレとよばれる)に対して、耐性があることは言うまでもない。
【0094】
さらに本実施例は、わずかなノイズが入力画像データに含まれていたとしても必要以上にスクリーン処理が切り替わらない特徴がある。基本重畳画像データの再現性が高い場合は、YとKの入力画像データに対してそれぞれ基本スクリーン処理を適用し、再現性が低い箇所にのみ再現性の高い各候補スクリーン処理を適用する。これは、基本スクリーンセットの再現劣化が僅かである場合は、常に基本スクリーン処理を採用することを意味する。画像上にノイズや微小なエッジが含まれている場合、基本スクリーン処理よりも候補スクリーン処理の方が再現性が高いとなる場合が多々ある。しかしその都度スクリーン処理を切り替えると、出力の安定性が確保できない。よって、図8のように設定することは画像の安定出力にメリットがある。
【0095】
上記に説明した本実施例1における処理の効果を図10、図11に示す。図10は、ブラック、イエローの入力画像における印字率(被覆率)が等量の場合のパッチ画像について示したものである。図10において、K基本スクリーン処理後二値データ1002とY基本スクリーン処理後二値データ1003を重ねた場合、1001に示すように色間モアレが発生してしまう。基本重畳画像データ1004は1002と1003の論理積によって得たデータである。つまり、1003においてYとKのドットが重なっている重畳部を抽出したデータである。重畳画像データ1004をLPFを用いたフィルタ処理すると、基本重畳画像データの低周波成分1005が得られる。また、K候補スクリーン処理後二値データ1007とY候補スクリーン処理後二値データ1008を重ねた場合、1006が得られる。1006においてYとKのドットが重なっている重畳部を抽出したデータが候補重畳画像データ1009である。候補画像データ1004をLPFを用いたフィルタ処理すると、候補重畳画像データの低周波成分1010が得られる。
【0096】
基本重畳画像データの低周波成分1005をもとに算出した基本重畳画像データの評価値と、候補重畳画像データの低周波成分1010をもとに算出した候補重畳画像データの評価値とに基づいて合成パラメータを決める。合成パラメータによりK基本スクリーン情報とK候補スクリーン情報とを合成したスクリーン情報を用いて、K入力画像データをスクリーン処理した結果が1012である。また、共通の合成パラメータによりY基本スクリーン情報とY候補スクリーン情報とを合成したスクリーン情報を用いて、Y入力画像データをスクリーン処理した結果が1013である。K二値データ1012とY二値データ1013を重ねると1011が得られるが、色間モアレはほとんど見られないことがわかる。これは基本重畳画像データの評価値が悪い画素では、評価値のよい候補スクリーン情報が採用されるためである。
【0097】
図11は、ブラック、イエローのグラデーション画像について示したものである。K基本スクリーン処理後二値データ1102とY基本スクリーン処理後二値データとを重ねると、1101のように色間モアレが発生してしまう。
【0098】
そこで、本実施例による処理を施すと、基本スクリーン処理の評価値が悪い画素では候補スクリーン処理(1)が適用され、その境界では基本スクリーン処理と候補スクリーン処理(1)の中間のスクリーン処理が合成される。最終的に得られるK合成スクリーン情報とY合成スクリーン情報とを合わせても、ほとんど色間モアレが発生しない1104を得ることができる。ちなみに、ブラック、イエローのいずれか一方が形成される領域では、基本スクリーンセットが採用されていることがわかる。
【0099】
以上実施例1によれば、複数のスクリーン処理を用いて、色間モアレを低減した画像が得られる。
【0100】
(実施例2)
実施例1では、基本スクリーン処理として用いる基本スクリーン情報がドットスクリーン情報である場合について説明した。実施例2では、基本スクリーン情報がラインスクリーン情報である場合について説明する。実施例2の基本的な構成は、スクリーン処理部105を除いて実施例1と同様である。また実施例1と同様に、YK間の色間モアレを低減する場合を例として説明する。つまりそれぞれ独立に処理するCおよびMの画像データの処理については、実施例1と同様なので省略する。
【0101】
本実施例では、基本スクリーン情報セットとして、図12のようなK基本スクリーン情報1203とY基本スクリーン情報1206が基本スクリーン処理に参照される場合に、色間モアレを効率的に低減する。通常、ラインスクリーン情報を構成するラインスクリーンベクトルは一つである。しかしながら、基本スクリーン処理としてラインスクリーン情報を用いる場合は、スクリーンベクトルに加えて仮想スクリーンベクトルを定義する。以下、その定義の詳細について説明する。
【0102】
図12に示す基本スクリーン情報1203、1206を参照してYおよびKの入力画像データに対して基本スクリーン処理をする。K基本スクリーン情報1203はライン方向と垂直なスクリーンベクトルBa_k_V1(x、y)=(−2、3)を有する。ここで、ライン方向と平行でスクリーンベクトル1205と同一の始点であるスクリーンベクトル1204(x、y)=(3、2)を仮想スクリーンベクトルとして新たに定義する。すなわち、ベクトルBa_k_V1に対して垂直となる。また、Ba_k_V2の長さはBa_k_V1と同じとする。しかしながら、Ba_k_V2のスクリーンベクトルの長さについては、これに限るものではない。以上スクリーンベクトルBa_k_V1および仮想スクリーンベクトルBa_k_V2をK基本スクリーンベクトルとする。同様にY基本スクリーン情報1206はライン方向と垂直なスクリーンベクトルB_k_V1(x、y)=(−3、3)を有する。ここで、ライン方向と平行でスクリーンベクトル1207と同一始点であるベクトル1208(x、y)=(3、3)をY仮想スクリーンベクトルとして新たに定義する。Ba_y_V1、Ba_y_V2のベクトルの長さは同じとするが、ベクトルの長さについてはこれに限るものではない。
【0103】
以上の基本スクリーン情報1203および1206を用いて、画像データD_k、D_yに対してそれぞれ基本スクリーン処理をする。そしてK基本スクリーン処理後二値データ1209およびY基本スクリーン処理後二値データ1210を出力する。
【0104】
候補スクリーン処理部302では、色間モアレを抑制したい画像データD_y、D_kそれぞれに対して、候補スクリーン処理を施す。
【0105】
候補スクリーン情報保持部304は、各画像データに対応する候補スクリーン情報が格納され、それぞれ閾値L_Th_k(n)、L_Th_y(n)、(nは1以上の整数)によって構成されている。
【0106】
図13は実施例2における候補スクリーン処理部107による2値化の概要を示す。図13ではK候補スクリーン情報(1)のスクリーンベクトルL_k_V(1)1304は(x、y)=(3、2)、Y候補スクリーン情報(1)のL_y_V(1)1305は(x、y)=(−3、3)である。K候補スクリーンベクトルL_k_V(1)は、K基本スクリーンベクトルBa_k_V1、Ba_k_V2と始点が同じであり、式(1)を満たす。候補スクリーンベクトルは
L_bk_V(1)=0×Ba_k_V1+1×Ba_k_V2 ・・・(40)
(α=0、β=1)
で表すことができる。
【0107】
また、Y候補スクリーンベクトルL_y_V(1)は、Y基本スクリーンベクトルBa_y_V1、Ba_y_V2と始点が同じであり、式(1)を満たす。候補スクリーンベクトルは
L_y_V(1)=1×Ba_y_V1+0×Ba_y_V2 ・・・(41)
(α=1、β=0)
となっている。
【0108】
以上のスクリーン情報を用いて、スクリーン処理部105で各スクリーン処理をおこなう。評価値の算出、合成スクリーン情報の生成などについては、実施例1と同様に図2のフローに従って、画像処理をする。
【0109】
以上実施例2では、基本スクリーン処理にラインスクリーン情報を用いた例について説明した。以上説明した通り、基本スクリーン処理としてラインスクリーン情報を用いた場合でも、基本スクリーン情報のスクリーンベクトルとして、ライン方向と平行方向に仮想スクリーンベクトルを新たに定義する。これにより基本スクリーン処理にドットスクリーン情報を用いた場合と同様、モアレ低減のための候補スクリーン処理の設定を容易にし、さらに実施例1と同様の効果を得ることができる。
【0110】
(変形例1)
実施例1および2では、画素ごとに評価値を算出する例を示したが、これに限るものではない。ここに網点単位領域で評価値を評価する変形例を示す。
【0111】
網点単位領域とは、基本スクリーンベクトルBa_k_V1およびBa_k_V2で囲まれた平行四辺形の領域のこととし、図14の同一色で塗られた領域(1402)である。
【0112】
まず、基本重畳画像データについて、注目する網点単位領域の評価値の総和を算出する。
Ba_SC_Abs=Σ{Abs(P_Ba_yk)} ・・・(31−a)
さらに、候補重畳画像データについて、注目する網点単位領域の評価値の総和を算出する。
L_SC_Abs=Σ{Abs(P_L_yk(1))} ・・・(32−a)
そして実施例1と同様に、パラメータ算出テーブルにしたがって、合成スクリーン情報セットを生成すればよい。
【0113】
なお、上述の網点領域のxy座標を算出する際には、Holladayのアルゴリズムを用いると効率的である。Holladayのアルゴリズムは、スクリーンベクトルBa_k_V1、Ba_k_V2が与えられた時、重複なく網点領域を敷き詰めるための網点の画素数Nhと、網点の相対的な座標位置H、L、Sを示すアルゴリズムである。
【0114】
ここで、Lは、始点と同一y座標で同じ網点が与えられるx方向の相対位置Lを、H、Sは、Hライン下(y+H座標)おいて、同じ網点が与えられるx方向の相対位置Sを示す。
Ba_c_V1(x1、y1)=(3、2)、Ba_c_V2(x2、y2)=(−2、3)の場合、Holladayのアルゴリズムを用いると、Nh、H、L、Sは以下のように算出できる。
Nh=x1・y2−y1・x2=13
H=GCD(y1、y2)=1
L=Nh/H=13
S=8
この詳細についてはHenry R. Kang著 Digital Color Halftoning、IEEE Press /SPIE Press、 P231〜233に記載されている。Holladayのアルゴリズムは公知なので、詳細は省略する。
【0115】
基準となる網点の位置を図14の■(1403)とすると、●(1404)は■に対して(0、L)座標だけ相対的に移動したものとなる。すなわち、同一y座標において、L=13隣に、同じ網点が形成されることを示している。一方△(1405)は、■に対して、(H、S)座標だけ相対的に移動したものとなる。すなわち、基準に対しHライン下で、S=8隣に、同じ網点が形成されることを示している。このようにすれば、同一y座標や、Hライン下の網点の繰り返し座標を効率的に求めることができる。
【0116】
また、上記例では、網点サイズ単位での評価値を算出した例を示したが、基本スクリーンの網点サイズの整数分の1単位や、整数倍の単位で評価値L_SC_Absを算出しても良い。このときは、Holladayアルゴリズムで算出した網点の座標の整数分の1や整数倍を用いれば容易に計算できる。
【0117】
以上のように、画素ごとではなく網点単位領域ごとに比較・評価することにより、粒状性にもすぐれた画像を得ることができる。
【0118】
(変形例2)
また、前述の実施例および変形例では図8のパラメータ算出テーブルを用いたが、変形例2では図8とは異なる合成スクリーン情報セットの生成について示す。
【0119】
例えば、図15のようなパラメータ算出テーブルがある。図8のテーブルによれば、Ba_SC_Absがある値以上の場合は、候補スクリーン処理の評価値に関わらず基本スクリーン処理を適用する。図15のパラメータ算出テーブルでは、基本スクリーン処理の評価値のみならず、候補スクリーン処理の評価値も考慮してパラメータを設定している。さらに、図8、図15にはパラメータ算出テーブルが7×7の二次元の正方配列で設定された例を示したが、これに限るものではない。例えば、7×7未満であっても良いし、8×8以上であってもよい。その他、7×3や、3×1など、長方配列であってもよい。さらにパラメータ算出テーブルは2次元に限らず、3次元であってもよい。また、図7、15ともに、テーブルの値は1.0、0.5、0.0の3状態についての例を示したが、その他の実数値であっても良い。例えば、0.5の変わりに、0.1、0.2、0.8、0.9の値が格納されても良い。
【0120】
また、前述の実施例および変形例では、合成スクリーン情報算出部108においては、式(34)(35)のように、基本スクリーン情報と候補スクリーン情報の線形結合での算出規則の例を示したが、本発明の構成要素はこれに限るものではない。式(34)(35)の他でも、色間モアレの発生しない領域では基本スクリーン処理、色間モアレの発生領域では候補スクリーン処理、その中間では基本スクリーン処理と候補スクリーン処理の中間となるようスクリーン情報が合成、設定される規則であればよい。
【0121】
例えば、基本スクリーン処理と候補スクリーン処理の各パラメータに従って重みづけされた要素値を算出する。そしてこの要素値の比較を行い、小さい値を採用してもよい。この場合は、式(34)(35)は以下の式(34−b)(35−b)として示されてもよい。
IF(W_Ba>0.5){
y_B=1.0
y_L=1.0−2.0×(W_Ba−0.5)
T_B_bk=y_B×Ba_Th_k/255.0
T_L_bk=y_L×L_Th_k(1)/255.0
+2.0×(W_Ba−0.5)
T_B_y=y_B×Ba_Th_y/255.0
T_L_y=y_L×L_Th_y(1)/255.0
+2.0×(W_Ba−0.5)
}else{
y_B=2.0×W_Ba
y_L=1.0
T_B_bk=y_B×Ba_Th_k/255.0+1.0−W_Ba×2.0
T_L_bk=y_L×L_Th_k(1)/255.0
T_B_y=y_B×Ba_Th_y/255.0+1.0−W_Ba×2.0
T_L_y=y_L×L_Th_y(1)/255.0
} ・・・(26−a)
なお、1≦Ba_Th_k≦255、1≦L_Th_k(1)≦255の値を、1≦Ba_Th_y≦255、1≦L_Th_y(1)≦255の値をとる。
【0122】
上述の式(26−a)は、W_Baの値に応じて、要素値T_B_k、T_L_k、T_B_y、T_L_yの値が変化することを示す。図18に式(26−a)によって要素値T_B_bk、T_L_kの変化の様子を示す。このようにして算出された要素値T_B_k、T_L_k、T_B_y、T_L_yに応じて、閾値を得る。
IF(T_B_k>T_L_k){
M_Th_k=T_L_k×255.0×g_t(W_Ba)
}else{
M_Th_c=T_B_k×255.0×g_t(W_Ba)
}
IF(T_B_y>T_L_y){
M_Th_y=T_L_y×255.0×g_t(W_Ba)
}else{
M_Th_y=T_B_y×255.0×g_t(W_Ba)
} ・・・(26−b)
なお上記g_t(W_Ba)については、合成比率W_Baに応じて変化するゲイン値である。g_tは、出力されるドットの数が保存されない場合があるからである。そのため、どのような合成比率でも出力されるドットの数が保存されるように、あらかじめ合成比率によってg_t(W_Ba)が変わるように設定すると好ましい。
【0123】
その他、基本スクリーン処理とラインスクリーン処理の掛け算で算出してもよいが、どのような合成比率でも出力されるドットの数が保存されるよう規則を設定するとよい。
【0124】
(変形例3)
前述の実施例および変形例では各色の画像データに対して候補スクリーン処理が1つの場合の例を示した。しかしながら、候補スクリーン処理が2つ以上あってもよい。変形例3では、候補スクリーン処理が2つ以上ある場合の例を図16とともに示す。
【0125】
図16は、候補スクリーン処理が各入力画像データに対して2つずつある場合の例である。この場合候補スクリーン情報保持部304は、YおよびKの各候補スクリーン情報(1)の他に、Y候補スクリーン情報(2)、K候補スクリーン情報(2)を有する。また、候補スクリーン処理後重畳画像データは2セット得られることになる。1つは、YとKの各候補スクリーン処理(1)後二値データを合わせた候補(1)重畳画像データである。もう1つは、1つは、YとKの各候補スクリーン処理(2)後二値データを合わせた候補(2)重畳画像データである。
【0126】
これまでの評価値算出と同様に、候補スクリーン処理(1)の評価値は式(42)によって表される。
P_L_yk(1)=(−Out_L1_f_yk+D_f2_yk)×a2 ・・・(42)
また、候補スクリーン処理(2)の評価値は式(43)によって表される。
P_L_yk(2)=(−Out_L2_f_yk+D_f3_yk)×a3 ・・・(43)
スクリーン情報生成パラメータ決定部107にて、すべての評価値をもとに、合成スクリーン情報セットを生成するためのパラメータを算出する。
【0127】
変形例3では、まず、候補スクリーン選択部1621にて、2つの候補スクリーン処理に対する評価値P_L_yk(1)とP_L_yk(2)の絶対値を比較し、より再現性が良い候補スクリーン情報セットを選択する。ここで選択された候補スクリーン処理とその評価値をL_SC_Absとして保持する。
if(Abs(P_L_yk(1))<Abs(P_L_yk(2)+q))
L_SC_flg=1
L_SC_Abs=Abs(P_L_yk(1))
}else{
L_SC_flg=2
L_SC_Abs=Abs(P_L_yk(2))
} ・・・(44)
本変形例ではq=0.0とするが、q=0.1など値を持っていても良い。qが正値である場合は、候補スクリーン処理(1)が優先的に選択される。qが負値である場合は、候補スクリーン処理(2)が優先的に選択される。次に、スクリーン情報生成パラメータ算出部1622にて、基本スクリーン情報と候補スクリーン情報の合成度合いを決定するためのパラメータを算出する。まず、基本スクリーン処理の評価値P_Ba_cの絶対値を算出する。
Ba_SC_Abs=Abs(P_Ba_c) ・・・(45)
合成スクリーンセット情報を生成するためのパラメータW_Ba、W_Lは以下の条件を満たす。
W_Ba+W_L=1.0 ・・・(46)
パラメータW_Ba、W_Lの算出には、図8に示すパラメータ算出テーブル616を使う。
【0128】
最後に、合成スクリーン情報算出部108にてY合成スクリーン情報とK合成スクリーン情報をそれぞれ算出する。各合成スクリーン情報を構成する閾値はパラメータW_BaとW_Lを用いて以下の式で生成される。
M_Th_k=g_t(W_Ba)×(W_Ba×Ba_Th_k+W_L×L_Th_k(L_SC_flg)) ・・・(47)
M_Th_y=g_t(W_Ba)×(W_Ba×Ba_Th_y+W_L×L_Th_y(L_SC_flg)) ・・・(48)
(なお、L_SC_flgは、本変形例では1または2をとる。g_t(W_Ba)は常に1.0)
以上、候補スクリーン処理が2つ以上ある場合について説明した。上記のように候補スクリーン処理が2つ以上ある場合では、まず、候補スクリーン処理同士での再現性評価を行い、候補スクリーン処理をひとつ選択する。そして、最後に基本スクリーン処理との合成スクリーン処理を算出すれば、候補スクリーン処理が2つ以上ある場合でも合成スクリーン情報の生成が可能である。
【0129】
(変形例4)
前述の実施例および変形例では、基本スクリーン情報保持部303および候補スクリーン情報保持部304にスクリーン情報を構成する閾値群を保持しておく例を説明している。しかしながら、閾値群をそのまま保持しておかず、リアルタイムに演算で求めても良い。リアルタイムに演算で求める場合は、スクリーンベクトルなどの情報を基本スクリーン情報保持部303や候補スクリーン情報保持部304に保持しておけばよい。
【0130】
また、合成スクリーン情報の生成では、評価値に応じてパラメータを設定し、そのつど合成スクリーン情報を構成する閾値を算出する例を示した。しかしながら、あらかじめ合成したスクリーン情報を用意しておき、画素ごとの評価に従ってスクリーン処理を切り替える方法でもよい。具体的には、基本スクリーン情報と候補スクリーン情報を合成した中間スクリーン情報を作成しておく。そして、各評価値に応じて、基本スクリーン処理、候補スクリーン処理、中間スクリーン処理のうちいずれかを選択する。この方法では、評価値が出力されるたびに合成スクリーン情報を演算によって生成しなくてもよい。
【0131】
また、上記実施例および変形例において、候補スクリーン処理に参照されるスクリーンベクトルの設定についていくつか例を示したが、これに限られるものではなく、式(1)を満たすスクリーンベクトルをもつスクリーンであればよい。
【0132】
たとえば、その他のブラックの候補スクリーンベクトルとして、
L_k_V(n)=1/2×Ba_c_V1+1/2×Ba_c_V2 ・・・(49)
(α=1/2、β=1/2)
L_k_V(n)=1×Ba_c_V1+1×Ba_c_V2 ・・・(50)
(α=1、β=1)
がある。ただし、式(49)に示した例のように、候補スクリーンベクトルの結合係数が小数となる場合は、注意が必要である。このときは、単純なデジタル格子上にスクリーンベクトルが設定できない。候補スクリーンベクトルが小数となる場合は、印刷スクリーンでよく用いられているスーパーセルによるスクリーンを用いる。スーパーセルによるスクリーンは公知であるため、詳細は省略する。
【0133】
また、全ての候補スクリーン情報のスクリーンベクトルにおいて結合係数αが0、又はβが0と設定されることは望ましくない。各候補スクリーンセット処理のスクリーンベクトルは180°をN等分した角度に近い角度を有することが望ましい。例えば候補スクリーンセット処理が2つある場合は90°、3つある場合は60°ずつスクリーンベクトルの方向が異なっているようなスクリーン処理を有するのがよい。
【0134】
(変形例5)
前述の実施例および変形例では、合成スクリーン情報セットを生成するためのパラメータを決定する際に、全ての重畳画像データに対して評価値を算出する場合を示した。しかし、図17に示すように、基本スクリーン処理結果のみ評価してもよい。すなわち基本重畳画像データのみ算出し、1つの評価値に基づいて合成スクリーン情報を生成する。具体的には、これまで示したのと同じようにYK基本重畳画像データを算出し、LPFを用いてフィルタ処理を行い、基本スクリーン処理の評価値を算出する。そして、基本スクリーン処理結果の評価値が所定の閾値を超えた場合、用意された候補スクリーン処理を適用する。また評価値が閾値付近の場合は、基本スクリーン情報と候補スクリーン情報の中間のスクリーン情報を合成し、中間のスクリーン情報を用いてスクリーン処理するような構成になっていればよい。
【0135】
(変形例6)
前述の実施例および変形例では、評価値を算出するまでに、入力積(デューティデータ、被覆率データ)に対してのLPF処理、およびスクリーン処理後2値積データに対してのLPF処理と2回のLPF処理が必要であった。しかしながら、必ずしもLPF処理は2回必要なわけではない。例えば図19にLPFを1回かけることによって評価値を算出する構成例を示す。図19では、まず入力積(デューティデータ、被覆率データ)と重畳画像データとの差分を算出し、差分に対してLPFによるフィルタ処理をかける構成である。このようにしても、これまでの実施例および変形例と同様の評価値を算出できる。
【0136】
(変形例7)
また前述の実施例および変形例では、評価値を算出するまでに、実際にスクリーン処理を行っていた。しかしながら、評価値を算出するのに必ずしも実際にスクリーン処理を行う必要はない。例えば図20に、実際のスクリーン処理を行わずに擬似的にスクリーン処理をする方法を示す。図20の2001は実際のスクリーン処理について、2002は擬似的なスクリーン処理について示している。2002では、実際のスクリーン周波数と同じ周波数の1、−1の符号反転データと画像データの積を取ったものである。2002においては、単純に積を取っただけで、実際のスクリーン処理後の周波数に変調することが可能である。また、2002の出力データは、平均0の信号を取り出すことができる。この特徴を活かすと、実際にスクリーン処理を行わずに擬似的に評価値を算出可能である。
【0137】
その例を図21に示す。図21は、実際のスクリーン処理を図20の擬似スクリーン処理に置き換えたものである。図21の構成では、実際のスクリーン処理結果と概ね等しい評価値を算出することが可能であり、これまでの実施例および変形例と同様の効果を得ることができる。
【0138】
また、図21の構成例では、擬似スクリーン処理データが平均0となるため、入力積(デューティデータ、被覆率データ)との差分を取る必要はない。上記のようにすると、LPFの数を減らし、かつ入力積(デューティデータ、被覆率データ)に対する差分を取らずに、評価値を算出できる。
【0139】
(変形例8)
また、前述の実施例および変形例ではYK2色の色間モアレについての評価値算出、およびスクリーン情報の合成について説明したが、2色に限る必要はない、例えば、CYKの3色に適用しても良いし、CMYK4色の全ての色間モアレについて適用しても良い。
【0140】
(変形例9)
また、上記実施例では本発明は、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施形態をとることが可能である。複数の機器(例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等)から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0141】
なお本発明は、ソフトウェアのプログラムを、システムや装置に直接あるいは遠隔から供給し、そのシステムや装置のコンピュータが該供給されたプログラムコードを読みだして実行することによっても達成される。この場合プログラムとは、本発明に記載の機能を実現するためのプログラムである。
【特許請求の範囲】
【請求項1】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理手段と、
前記第1のスクリーン処理手段による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳手段と、
前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成手段と、
前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理手段の処理結果の第1の評価値を求める第1の評価手段と、
前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段と、
前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理手段を有すること
を特徴とする画像処理装置。
【請求項2】
前記設定手段は、前記第1のスクリーン情報セットと前記第2のスクリーン情報セットとを合成するためのパラメータを算出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記第2のスクリーン情報セットを用いて、前記第1の入力画像データおよび前記第2の入力画像データをスクリーン処理する第3のスクリーン処理手段と、
前記第3のスクリーン処理結果による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第2の重畳画像を生成する第2の重畳手段と、
前記第2の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第2のスクリーン処理手段の処理結果の評価値を求める第2の評価手段と、
前記第1の評価値に応じて前記第1のスクリーン情報セットと前記第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段
ことを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記第1の評価値と前記第2の評価値の両方が悪い場合には、前記第1のスクリーン情報を設定することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
【請求項5】
前記第1の評価手段は、前記第1のスクリーン情報セットが保持するスクリーン情報のスクリーン周波数をカットオフするローパスフィルタを用いることを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
【請求項6】
前記第1の評価手段は、前記第1の重畳画像と前記入力積画像との差分を求めてから、低周波成分を算出することにより第1の評価値を求めることを特徴とする請求項1乃至5のいずれか一項に記載の画像処理装置。
【請求項7】
前記第1のスクリーン情報セットは複数のドットスクリーン情報であることを特徴とする請求項1乃至6のいずれか一項に記載の画像処理装置。
【請求項8】
前記第2のスクリーン情報セットは、複数のラインスクリーン情報であることを特徴とする請求項1乃至7のいずれか一項に記載の画像処理装置。
【請求項9】
前記第2のスクリーン情報セットのスクリーン情報から得られるスクリーンベクトルは、同一の入力画像データに対応する前記第1のスクリーン情報セットのスクリーン情報を構成する2つのスクリーンベクトルの線形結合で表され、かつ各結合係数が整数または整数の逆数であることを特徴とする請求項1乃至8のいずれか一項に記載の画像処理装置。
【請求項10】
前記第1のスクリーン情報セットの前記第1の入力画像データに対応するスクリーン情報と、前記第2の入力画像データに対応するスクリーン情報とは、互いに異なることを特徴とする請求項1乃至9のいずれか一項に記載の画像処理装置。
【請求項11】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理工程と、
前記第1のスクリーン処理工程による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳工程と、
前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成工程と、
前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理工程の処理結果の第1の評価値を求める第1の評価工程と、
前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定工程と、
前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理工程を有すること
を特徴とする画像処理方法。
【請求項12】
コンピュータを、請求項1乃至請求項10の何れか1項に記載された画像処理装置の各手段として機能させることを特徴とするプログラム。
【請求項1】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理手段と、
前記第1のスクリーン処理手段による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳手段と、
前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成手段と、
前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理手段の処理結果の第1の評価値を求める第1の評価手段と、
前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段と、
前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理手段を有すること
を特徴とする画像処理装置。
【請求項2】
前記設定手段は、前記第1のスクリーン情報セットと前記第2のスクリーン情報セットとを合成するためのパラメータを算出することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記第2のスクリーン情報セットを用いて、前記第1の入力画像データおよび前記第2の入力画像データをスクリーン処理する第3のスクリーン処理手段と、
前記第3のスクリーン処理結果による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第2の重畳画像を生成する第2の重畳手段と、
前記第2の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第2のスクリーン処理手段の処理結果の評価値を求める第2の評価手段と、
前記第1の評価値に応じて前記第1のスクリーン情報セットと前記第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定手段
ことを特徴とする請求項1または2に記載の画像処理装置。
【請求項4】
前記第1の評価値と前記第2の評価値の両方が悪い場合には、前記第1のスクリーン情報を設定することを特徴とする請求項1乃至3のいずれか一項に記載の画像処理装置。
【請求項5】
前記第1の評価手段は、前記第1のスクリーン情報セットが保持するスクリーン情報のスクリーン周波数をカットオフするローパスフィルタを用いることを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
【請求項6】
前記第1の評価手段は、前記第1の重畳画像と前記入力積画像との差分を求めてから、低周波成分を算出することにより第1の評価値を求めることを特徴とする請求項1乃至5のいずれか一項に記載の画像処理装置。
【請求項7】
前記第1のスクリーン情報セットは複数のドットスクリーン情報であることを特徴とする請求項1乃至6のいずれか一項に記載の画像処理装置。
【請求項8】
前記第2のスクリーン情報セットは、複数のラインスクリーン情報であることを特徴とする請求項1乃至7のいずれか一項に記載の画像処理装置。
【請求項9】
前記第2のスクリーン情報セットのスクリーン情報から得られるスクリーンベクトルは、同一の入力画像データに対応する前記第1のスクリーン情報セットのスクリーン情報を構成する2つのスクリーンベクトルの線形結合で表され、かつ各結合係数が整数または整数の逆数であることを特徴とする請求項1乃至8のいずれか一項に記載の画像処理装置。
【請求項10】
前記第1のスクリーン情報セットの前記第1の入力画像データに対応するスクリーン情報と、前記第2の入力画像データに対応するスクリーン情報とは、互いに異なることを特徴とする請求項1乃至9のいずれか一項に記載の画像処理装置。
【請求項11】
第1のスクリーン情報セットを用いて、第1の入力画像データおよび該第1の入力画像データとは異なる色の第2の入力画像データに対してスクリーン処理を行う第1のスクリーン処理工程と、
前記第1のスクリーン処理工程による前記第1の入力画像データの処理結果と前記第2の入力画像データの処理結果とを重畳して、第1の重畳画像を生成する第1の重畳工程と、
前記第1の入力画像データと前記第2の入力画像データとを積算して入力積画像を生成する積画像生成工程と、
前記第1の重畳画像の低周波成分と前記入力積画像の低周波成分との差分に基づいて、前記第1のスクリーン処理工程の処理結果の第1の評価値を求める第1の評価工程と、
前記第1の評価値に応じて、前記第1のスクリーン情報セットと前記第1のスクリーン情報セットとは異なる第2のスクリーン情報セットとを合成し、該合成されたスクリーン情報セットを設定する設定工程と、
前記設定されたスクリーン情報を用いて、前記第1の入力画像データおよび前記第2の入力画像データに対してスクリーン処理を行う第2のスクリーン処理工程を有すること
を特徴とする画像処理方法。
【請求項12】
コンピュータを、請求項1乃至請求項10の何れか1項に記載された画像処理装置の各手段として機能させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2012−85170(P2012−85170A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−230728(P2010−230728)
【出願日】平成22年10月13日(2010.10.13)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願日】平成22年10月13日(2010.10.13)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]