以下、本発明を図示する実施形態に基づいて説明する。
<<< §1.一般的なスクリーニング処理 >>>
ここでは、まず、発明の理解を容易にするために、一般的なスクリーニング処理の基本概念を簡単に述べておく。既に述べたように、スクリーニング処理は、スクリーン画像を利用して、原画像をハーフトーン画像に変換するための演算処理である。図1は、一般的なスクリーニング処理の基本概念を示すブロック図である。図示のとおり、画像変換装置100は、スクリーニング処理を行うスクリーニング処理装置というべき装置であり、与えられた原画像10(連続階調画像)をハーフトーン画像20(疑似階調画像)に変換する機能を有する。この変換処理に用いられる画像が、スクリーン画像30である。原画像10、ハーフトーン画像20、スクリーン画像30は、いずれもその実体は、二次元画素配列からなるデータであり、それぞれ所定の画素値(画像の濃度)をもつ画素の集合によって構成されている。ただ、原画像10を構成する画素には、1段階または多段階の階調を表現するために必要な画素値が定義されているのに対し、ハーフトーン画像20を構成する画素には、二値のいずれかの画素値が定義されることになる。
一般的な印刷物では、8ビットの階調値(0〜255の範囲内の画素値)をもつ原画像が用意されることが多いが、ここでは説明の便宜上、4ビットの階調値(0〜15の範囲内の画素値)をもつ原画像10を、1ビットの階調値(0または1のいずれかの画素値)をもつハーフトーン画像20に変換する場合について、スクリーニング処理の基本概念を簡単に説明する。なお、ハーフトーン画像20を構成する各画素のもつ1ビットの画素値は、最終的な印刷物上でインキを付着させるか、付着させないか、を示す値であるので、ここでは便宜上、0または1の代わりに、黒(インキを付着させる)または白(インキを付着させない)なる画素値を用いて説明を行うことにする。
図2は、上述の条件下で具体的に実行されるスクリーニング処理の手順を示すブロック図である。上述した具体的な条件設定では、原画像10の画素値Pは、0≦P≦15の範囲内の16通りの値をとり、ハーフトーン画像20の画素値Hは、黒または白のいずれかをとることになる。ここに示す例では、このような条件下での画像変換処理を行うために、0≦P<15の範囲内の15通りの画素値Qをもつ画素の集合からなるスクリーン画像を用意している。原画像の画素値Pが0≦P≦15の範囲内の16通りの値をとるのに対して、スクリーン画像の画素値Qが0≦P<15の範囲内の15通りの値をとるように設定されている理由は後述する。
図3は、このようなスクリーン画像31の画素構成の一例を示す図である。上述したとおり、スクリーン画像の実体は、連続階調画像をハーフトーン画像に変換するための演算に利用される二次元画素配列データであり、図3に示す例は、4×4のサイズの画素配列からなるスクリーン画像である。図示のとおり、このスクリーン画像31を構成する個々の画素には、0〜14の範囲内の画素値が定義されている。
いま、この図3に示すスクリーン画像31を利用して、図4の左側に示すような4×4のサイズの画素配列からなる原画像11を、ハーフトーン画像21に変換する処理を考えてみよう。以下、図4〜図9にかけて図示する例は、原画像11〜16全体が1つの網点(これらの図の右側に示されたハッチング領域)のみからなるハーフトーン画像21〜26に変換されるような、最も単純化された例で、原理を説明するものである。原画像11も、スクリーン画像31も、いずれも4×4のサイズの画素配列からなる画像であるから、個々の画素がその配列上の位置に基づいて1対1に対応している。そこで、原画像11上の特定の画素Pの画素値(画素と同じ符号Pで示すことにする)と、これに対応するスクリーン画像31上の画素Qの画素値(画素と同じ符号Qで示すことにする)とを比較して、図2に示すように、画素値P>画素値Qのとき、画素値H=黒とし、画素値P≦画素値Qのとき、画素値H=白として、画素値Pをもつ原画像11を画素値Hをもつハーフトーン画像21に変換したとすると、図4の右側に示すような結果が得られる。すなわち、すべての画素が白であるようなハーフトーン画像21が得られることになる。これは、原画像11のすべての画素が、画素値P=0となっているため、図3に示すスクリーン画像31内のいずれの画素値Qと比較しても、画素値P≦画素値Qとなるためである。
次に、同じく図3に示すスクリーン画像31を利用して、図5の左側に示すような4×4のサイズの画素配列からなる原画像12に対して変換処理を行うと、図5の右側に示すようなハーフトーン画像22が得られることになる。ここで、ハッチングを施した画素は、画素値H=黒の画素、すなわち、インキを付着させる画素を示している。これは、原画像12のすべての画素が、画素値P=1となっているため、図3に示すスクリーン画像31内の画素値Q=0の画素位置に関しては、画素値P>画素値Qとなるが、それ以外の画素位置に関しては、画素値P≦画素値Qとなるためである。
更に、図6の左側に示すような4×4のサイズの画素配列からなる原画像13に対して変換処理を行うと、図6の右側に示すようなハーフトーン画像23が得られることになる。これは、原画像13のすべての画素が、画素値P=2となっているため、図3に示すスクリーン画像31内の画素値Q=0およびQ=1の画素位置に関しては、画素値P>画素値Qとなるが、それ以外の画素位置に関しては、画素値P≦画素値Qとなるためである。図7、図8、図9は、原画像14,15,16に対して同様の変換処理を行うことにより、ハーフトーン画像24,25,26が得られた結果を示している。
ここで、図5〜図9に示すハーフトーン画像22〜26には、ひとまとまりの黒画素(画素値Hが黒の画素)の集団からなる領域が形成されていることがわかる。この黒画素の集団領域は、実際の印刷物上では、インキが付着した網点の領域となる。結局、図4に示すような画素値P=0の画素からなる原画像11は、面積が0の網点からなるハーフトーン画像21に変換され、図5に示すような画素値P=1の画素からなる原画像12は、面積が1画素分の網点からなるハーフトーン画像22に変換され、図6に示すような画素値P=2の画素からなる原画像13は、面積が2画素分の網点からなるハーフトーン画像23に変換され、図7に示すような画素値P=4の画素からなる原画像14は、面積が4画素分の網点からなるハーフトーン画像24に変換され、図8に示すような画素値P=8の画素からなる原画像15は、面積が8画素分の網点からなるハーフトーン画像25に変換されることになる。
一般論として述べれば、ここに示す例では、画素値P=iの画素からなる原画像は、面積がi画素分の網点からなるハーフトーン画像に変換されることになり、4×4の画素配列からなる単位領域をマクロ的に観察すれば、原画像の画素値に応じた面積を有する網点により、原画像の濃淡情報が疑似的に表現されていることになる。
もっとも、ここに示す例では、図9に示すような画素値P=15(最大画素値)の画素からなる原画像16は、面積が15画素分ではなく、面積が16画素分の網点からなるハーフトーン画像26に変換されている。このように、ここに示す例では、画素値P=15だけ例外的な取り扱い(画素値P=iの画素からなる原画像を、面積が(i+1)画素分の網点からなるハーフトーン画像に変換する取り扱い)を行っているが、これは原画像上で最大画素値をもつ部分が、ハーフトーン画像上で真っ黒な領域(全面にインキが付着した領域)として表現されるようにするための配慮であり、スクリーニング処理における本質的な問題ではない。原画像の画素値Pを0〜15の範囲とし、スクリーン画像の画素値を0〜14の範囲としたのは、最大画素値15をもつ部分を真っ黒な領域として表現するためである。
以上、4×4の画素配列からなる微小な単位領域について、一般的なスクリーニング処理の基本概念を述べたが、実際の原画像は、よりサイズの大きな画素配列から構成されており、かつ、網点も複数のものの集合体から構成されている。そこで、実用上は、図3に示すような単位領域となる画素配列を、縦横に繰り返し配置することにより実際のスクリーン画像を構成する。図10は、複数の単位領域Uを縦横に繰り返し配置することにより構成されたスクリーン画像32の一例を示す平面図である。図に太線で示された部分が1つの単位領域Uである。この例では、1つの単位領域Uは、4×4の画素配列から構成されており、各画素Qには、たとえば、図3に示す例のように、所定の画素値が定義されている。なお、単位領域Uとは、換言すれば、原画像を網点の集合体から構成しようとする際の1つの網点の管轄範囲であり、網点の面積が最大化した場合に、網点は単位領域Uの全域を占有することになる。
ここで、1つの単位領域Uを用いた変換によって得られるハーフトーン画像上には、1つの網点が形成されることになる。図10に示す点Cは、各単位領域Uの中心点を示すものであるが、各網点は、この中心点Cを中心に配置されることになる。したがって、中心点Cの横方向のピッチPxおよび縦方向のピッチPyは、それぞれ網点の配置ピッチに対応する。上述したとおり、各網点の面積は、原画像上の画素の画素値Pに依存して定まり、この例では、全部で16通りの面積をもった網点が定義される。
前述したとおり、一般的な印刷物では、8ビットの階調値(0〜255の範囲内の画素値)をもつ原画像が用意されることが多いので、実用上は、16×16の画素配列からなる単位領域Uを縦横に繰り返し配置したスクリーン画像が用いられることが多い。この場合、スクリーン画像を構成する各画素の画素値Qは、たとえば、0〜254の範囲内に設定され、全部で256通りの面積をもった網点が定義されることになる。
なお、これまで、原画像、スクリーン画像、ハーフトーン画像が、いずれも同じ解像度の画像である例を述べたが、実際には、原画像とは異なる解像度のスクリーン画像を用いることも少なくない。そのような場合には、解像度の低い画像に関して、画素値の補間を行う必要がある。たとえば、図11は、原画像17の解像度よりも高い解像度をもつスクリーン画像37を用いて、スクリーニング処理を行う手順を示す平面図である。この例では、スクリーン画像37は、原画像17の16倍の解像度を有しており、原画像17上の1画素に対して、スクリーン画像37上の16画素が対応することになる。このような場合、原画像17上の画素の画素値を補間することにより、スクリーニング処理を行うことができ、その結果、スクリーン画像37と同じ解像度をもったハーフトーン画像を得ることができる。
たとえば、個々の画素の位置を、その中心点の座標値で示すことにすると、スクリーン画像37上の座標(x,y)に位置する画素は、画素Q(x,y)と表すことができる。そこで、この画素Q(x,y)に着目して、原画像17上の同じ座標位置(x,y)に対応点QQ(x,y)を定義する。この対応点QQ(x,y)は、一応、画素P3内の点であるので、スクリーニング処理を行うにあたり、画素Q(x,y)の画素値と、画素P3の画素値とを比較することにより、ハーフトーン画像上での座標(x,y)に位置する画素H(x,y)の画素値(黒または白)を決定することも可能であるが、より精度の高い変換処理を行うには、対応点QQ(x,y)の位置における画素値の補間値を算出し、この補間値と画素Q(x,y)の画素値とを比較することにより、画素H(x,y)の画素値を決定するようにすればよい。対応点QQ(x,y)の位置における画素値の補間値は、その周囲の4画素P1〜P4の画素値に基づいて算出することができる。具体的には、4画素P1〜P4の中心点と対応点QQ(x,y)との距離に応じた重みづけして、各画素P1〜P4の画素値の平均をとる演算により補間値を求めるようにすればよい。
<<< §2.本発明に係るスクリーン画像の生成方法 >>>
さて、これまで述べたスクリーニング処理で用いられているスクリーン画像は、一般に、AMスクリーン画像と呼ばれているスクリーン画像である。このAMスクリーン画像は、画像のもつ画素値に応じた面積をもつ網点を生成する機能を有している。そのような機能を果たすために、AMスクリーン画像は、次の2つの基本的な特徴を備える必要がある。
AMスクリーン画像に必要な第1の特徴は、単位領域(ハーフトーン画像上において1つの網点が配置される領域)内の各画素値の出現頻度がほぼ均一となる、という特徴である。たとえば、図3に示すスクリーン画像31の場合、画素値0〜13までの出現頻度はいずれも1回であり、画素値14の出現頻度だけが2回となっている。この例の場合、スクリーン画像31を構成する全画素が16個なのに対して、とるべき画素値は0〜14までの15通りであるため、各画素値の出現頻度を完全に均一にすることはできない。このため、この例では、画素値14の出現頻度だけが、他の画素値の出現頻度よりも1だけ多くなっている。もちろん、他の画素値の出現頻度を1だけ多くするようにしてもかまわない。このように、単位領域内での各画素値の出現頻度をほぼ均一にする、という特徴は、連続的な階調をもった原画像の濃淡情報を、忠実に再現するために重要である。
AMスクリーン画像に必要な第2の特徴は、単位領域内にひとまとまりの(数学用語でいう単連結領域からなる)黒画素の集団からなる領域(網点)が形成されるような画素値配置をもつ、という特徴である。このような特徴を具現化するには、単位領域の中心部分(後述するように、必ずしも幾何学的な中心でなくてもよい)から周囲部分に向かって画素値がほぼ降順もしくはほぼ昇順となるように各画素値を配置すればよい。たとえば、図3に示すスクリーン画像31の場合、0,1,2,3,4,…という画素値が、中心から螺旋を描くように周囲部分へ向かって配置されており、単位領域の中心部分から周囲部分に向かって画素値がほぼ昇順となるような配置がなされている。図5〜図9に示すハーフトーン画像22〜26が、いずれも単位領域の中心位置に配置された網点から構成されているのは、図3に示すスクリーン画像31が、この第2の特徴を有しているからである。
しかしながら、従来のAMスクリーン画像を利用したスクリーニング処理を行うと、網点が周期性をもつことにより、モアレ縞やロゼッタパターンなどが発生する問題および濃度跳躍が発生する問題があることは、既に述べたとおりである。たとえば、図10に示すようなAMスクリーン画像32を利用したスクリーニング処理を行った場合、前述したとおり、ハーフトーン画像上では、各単位領域Uの中心点Cを中心とした位置に網点が配置されることになるので、横方向のピッチPx、縦方向のピッチPyで周期的に配置された多数の網点が形成される。この周期性が、モアレ縞やロゼッタパターンなどを発生させる要因となる。
ここで述べる本発明に係るスクリーン画像の生成方法によれば、前述したAMスクリーンとしての2つの特徴をもちつつ、網点配置に周期性のないハーフトーン画像を得ることができるスクリーン画像を生成することが可能になる。以下、その方法を説明する。
図12は、本発明に係るスクリーン画像の生成方法の基本手順を示す流れ図である。この流れ図に示す各手順は、実際には、コンピュータを用いて実行されることになる。まず、ステップS1において、以後の処理に必要なパラメータの設定が行われる。図示の例では、画素配列のサイズSx,Sy、母点の標準ピッチPx,Py、乱雑さの程度Dr、土手幅Wbなる各パラメータが設定される。
画素配列のサイズSx,Syは、生成対象となるスクリーン画像を構成する画素配列の縦横の画素数を示すパラメータであり、たとえば、図10に示すようなスクリーン画像32を生成する場合であれば、Sx=20、Sy=12なるパラメータが設定されることになる。一方、母点の標準ピッチPx,Pyは、ステップS2で配置される母点Mの横方向および縦方向のピッチを示すパラメータである。本明細書における「母点M」とは、網点(セル)の核となる点(後述するように、必ずしも網点の幾何学的な中心点になるわけではない)を意味するものである。たとえば、図10に示すように、網点が周期的に配置される従来のAMスクリーン画像の場合は、中心点Cが母点Mに一致することになり、図10に示すピッチPx,Pyが、母点のピッチPx,Pyに一致する。すなわち、図10の例の場合、画素配列のサイズは、Sx=20、Sy=12、母点のピッチは、Px=4,Py=4ということになる。ステップS1において設定するパラメータPx,Pyを、母点の「標準」ピッチと呼んでいるのは、ステップS3において、母点位置を変動させる処理が行われ、最終的な母点ピッチは、標準ピッチをランダムに変動させたものになるからである。
なお、ここに示す例では、画素配列のサイズSx,Syおよび母点の標準ピッチPx,Pyを、スクリーン画像を構成する1画素のピッチを単位長とした値で設定しているが、もちろん、実寸単位での値を設定してもかまわない。たとえば、上述の例において、Sx=20、Sy=12、Px=4,Py=4という設定値は、それぞれ20画素に相当する長さ、12画素に相当する長さ、4画素に相当する長さ、4画素に相当する長さ、を示しているが、1画素分に相当する長さを実寸で定義しておけば、Sx,Sy、Px,Pyなるパラメータは、いずれも実寸で設定することができる。実寸で設定したSx,Syの値は、生成対象となるスクリーン画像の実際の寸法を示すパラメータとなり、実寸で設定した標準ピッチPx,Pyは、当該スクリーン画像を用いたスクリーニング処理で得られるハーフトーン画像上における網点の標準的な間隔(一般に線数と呼ばれている寸法値の逆数)を示すパラメータとなる。
一方、ステップS1で設定される乱雑さの程度Drは、ステップS3における母点位置の変動の程度を示すパラメータであり、この例では、0<Dr≦1の範囲内の任意の値が設定される。上述したように、網点の周期性は、モアレ縞やロゼッタパターンなどを発生させる要因となるが、このパラメータDrを大きな値に設定すればするほど、網点の周期性は失われ、モアレ縞やロゼッタパターンなどが発生しにくくなる。なお、図示のステップS1では、土手幅Wbなるパラメータが設定されているが、このパラメータWbは、特にグラビア印刷などを行う場合の便宜を考慮したパラメータであり、その機能については§3で述べることにする。
続くステップS2では、母点の配置が行われる。すなわち、ステップS1で設定されたサイズSx,Syをもった画素配列が定義された二次元平面上に、標準ピッチPx,Pyで多数の母点Mを配置する処理が実行される。たとえば、図10に示す例の場合、20×12なる画素配列上に、5×3個定義された4×4画素からなる単位領域Uについて、それぞれ中心点Cの位置に、母点Mが配置されることになる。もっとも、本発明を実施するにあたって、母点Mは必ずしも正方格子状に配置する必要はない。実用上は、むしろ二次元平面上に同一サイズの正六角形を隙間なく配置したときの各正六角形の中心点となる位置に各母点を配置するのが好ましい。図13は、XY平面上に同一サイズの正六角形を隙間なく配置したときの各正六角形の中心点に各母点Mを配置した例を示す平面図である。各母点Mが中心となるようにそれぞれ単位領域Uを定義した場合、個々の正六角形が単位領域Uを構成することになる。
このような正六角形を用いた母点配置の特徴は、隣接する母点間の距離がすべて等しくなるという点である。すなわち、図13に黒点で示した各母点Mからなる格子は、正三角形を並べた格子となっており、各母点Mはこの正三角形の頂点位置に配置されている。したがって、隣接する母点間の距離は、すべてこの正三角形の一辺の長さに等しくなり、最終的な印刷物上に、円に近い網点を形成することができるようになる。これに対して、図10に示すような正方格子状に配置された母点では、縦または横方向に隣接する母点間距離と斜め方向に隣接する母点間距離とが異なってしまうため、円に近い網点を形成する上では好ましくない。
なお、図13に示すように、各正六角形の中心点に各母点Mを配置する場合、X軸方向のピッチPxとY軸方向のピッチPyとは当然異なることになる。具体的には、Px:Py=2:ルート3の関係になる。また、一般に、デジタル画像データは、矩形状の画素を縦横に並べた画素配列(この例では、生成対象となるスクリーン画像は、サイズSx,Syをもった画素配列)から構成されるため、図13に示すように、単位領域Uを正六角形の領域により構成すると、多くの画素は、単位領域Uの境界線を跨ぐような位置にくることになるが(たとえば、図13に示す画素Q)、個々の画素の中心点位置を含む領域を、当該画素が所属する単位領域とする取り扱いをすれば、不都合は生じない。
もちろん、このステップS2における母点配置の処理は、実際には、コンピュータ内の演算処理として実行されるものであり、具体的に実行される処理内容は、個々の母点Mについて、それぞれ所定の座標値を求める演算処理ということになる。ここでは、個々の母点Mについて、XY座標系上での座標値(x,y)を求める演算が行われたものとし、座標(x,y)の位置に配置された母点を、母点M(x,y)と呼ぶことにする。
続くステップS3では、ステップS2で配置された各母点の位置を、それぞれランダムに変動させる母点位置変動処理が行われる。この母点位置変動処理は、個々の母点がランダムに位置変動を生じるような処理であれば、どのような処理であってもかまわないが、図12に示す例では、次のような具体的な手法により、個々の母点を変動させている。
まず、基本的に、個々の母点について、X軸方向に関する変動量が最大でも±(1/2)Pxの範囲内となり、Y軸方向に関する変動量が最大でも±(1/2)Pyの範囲内となるように、各母点の位置を変動させることにする。ここで、Px,Pyは、ステップS1で設定した母点の標準ピッチである。図14は、このような条件下での母点Mの位置変動範囲を示す平面図である。すなわち、このような条件下では、図示する母点M(x,y)に対しては、図にハッチングを施した範囲内での位置変動が生じることになる。このような範囲内で位置変動を行うようにすれば、隣接する母点間での位置関係の入れ替わりが生じることがないため、変動後の各母点間のピッチはランダムであっても、全体としての平均的な母点ピッチの値は、ステップS1で設定した標準ピッチPx,Pyに近い値が維持される。
実際には、母点M(x,y)を、図14にハッチングを施した領域内でランダムに変動させるために、コンピュータ内で乱数を発生させ、この乱数の値に基づいて、変動後の位置を決定させるようにしている。また、変動量を、ステップS1で設定した乱雑さの程度Drなるパラメータに応じた値とするため、パラメータDrを考慮して変動量を決定するアルゴリズムを用いている。すなわち、図12に示すステップS3では、1つの母点M(x,y)のx座標値およびy座標値を、次の式に基づいて変動させている。
x → x+(R・Dr・Px)
y → y+(R・Dr・Py)
ここで、Px,Py,Drは、ステップS1で設定した各パラメータであり、Rは、−0.5〜+0.5の範囲の一様分布乱数の値である。ここで、パラメータDrを最大値1に設定すると、図14に示す母点M(x,y)は、図のハッチング領域内の任意の位置へ変動することになるが、パラメータDrの値を小さく設定すると、このハッチング領域が徐々に狭くなる。したがって、パラメータDrは、各母点の変動量を制御するパラメータとして機能し、個々の母点をそれぞれ変動させた後の母点位置の乱雑さの程度を制御するパラメータということになる。
図15は、図13に示すように整然と配置されていた母点Mを、上述のアルゴリズムによって変動させた後の状態を示す平面図である。破線は、図13に示す正六角形の位置を示している。図13では、個々の母点Mが各正六角形の中心に位置していたのに対し、図15では、それぞれがランダムに位置変動している状態がわかる。前述したとおり、本明細書における「母点M」とは、網点(セル)の核となる点であり、単位領域Uの核となる点である。ここで、単位領域Uは、AMスクリーン画像上において、1つの網点(セル)への変換対象となる領域としての意味をもち、単位領域内の各画素値の出現頻度がほぼ均一となり、単位領域内にひとまとまりの黒画素の集団からなる領域(網点)が形成されるような画素値配置をもつ、という特徴を有している必要がある。図13に示すように、個々の母点Mが規則的に配置されている状態では、規則的に配置された正六角形をそのまま単位領域Uとすることができるが、図15に示すように、個々の母点Mの位置がランダムに変動した状態では、新たに不規則な単位領域Uを定義する必要がある。
図12に示すステップS4は、変動後の各母点Mに基づいて、各単位領域Uを定義する処理である。図16は、図15に示す各母点Mに基づいて、それぞれ単位領域Uを定義した一例を示す平面図である。ランダムに配置された母点Mに基づいて、それぞれ当該母点Mを核とする単位領域Uを定義する手法は、必ずしも1つの手法に限定されるものではないが、実用上は、コンピュータによる効率的な演算が可能な手法を用いるのが好ましい。本願発明者は、以下に述べるボロノイ分割処理という手法が、本発明の目的達成に最適な手法であると考えている。
ボロノイ分割の基本概念は、空間上に分散配置された多数の母点Mについて、それぞれ所定の条件に基づいて支配領域を決定し、空間を複数の支配領域に分割する、というものである。支配領域を決定するための条件として、空間上の所定点と母点との距離(ユークリッド距離)が用いられる。たとえば、図17に示すように、二次元平面上に3つの母点M1,M2,M3が配置されていた場合を考える。この場合、ボロノイ分割を実施することにより、この二次元平面は、母点M1の支配領域、母点M2の支配領域、母点M3の支配領域、という3つの支配領域に分割されることになる。
この二次元平面上の任意の点Q(x,y)が、どの支配領域に所属するかは、各母点M1,M2,M3との間の距離d1,d2,d3を比較することによって決定される。すなわち、任意の点Q(x,y)は、最も近い母点(以下、最近接母点と呼ぶ)の支配領域に所属させられることになる。図17に示す例では、d1<d2<d3となっているので、点Q(x,y)の最近接母点はM1となり、点Q(x,y)は母点M1の支配領域に所属させられることになる。このように、二次元平面上のすべての点を、それぞれ最近接母点の支配領域に所属させることにすれば、二次元平面は3つの支配領域に分割されることになる。
もちろん、幾何学的な二次元平面上には、無限個の点が存在することになるが、本発明を実施する上では、ステップS1で定義されたサイズSx,Syをもった画素配列を構成する個々の画素について、それぞれ最近接母点の支配領域に所属させる処理を行えばよい。具体的には、特定の画素が所属する支配領域を決定するには、たとえば、当該画素の中心位置と全母点との距離をそれぞれ演算により求め、距離が最小となる母点を最近接母点として認識し、当該画素をこの最近接母点の支配領域に所属させるような処理を行えばよい。なお、実用上は、距離自身を求めて比較する代わりに、距離の2乗を求めて比較する方が、演算負担が軽減される。このような処理を行えば、画素配列を構成する(Sx・Sy)個のすべての画素を、いずれかの母点の支配領域に所属させることができる。そこで、同一の支配領域に所属している画素の集合を1つの単位領域と定義すれば、個々の母点を核とした単位領域を定義することができる。
結局、図12のステップS4で行う処理は、ステップS1で設定したサイズSx,Syをもつ画素配列を構成する各画素について、それぞれ最も距離が近い母点を、当該画素についての最近接母点と定義し、同一の母点を最近接母点とする画素の集合により1つの単位領域が構成されるように、二次元平面上に複数の単位領域を定義する処理、と言うことができる。こうして定義された各単位領域は、それぞれがランダムな形状をした領域となり、それぞれがランダムな配置をとる。図18は、ランダムな形状をした単位領域Uの一例を示す平面図であり、Mは母点の位置を示している。図示のとおり、この単位領域Uは、多数の画素Q(x,y)の集合によって構成されている。
なお、図13に示すように、規則的に配置された母点Mに基づいてボロノイ分割処理を行って単位領域Uを定義した場合、各母点Mは単位領域Uの中心点となるが、図15に示すように、不規則配置された母点Mに基づいてボロノイ分割処理を行って単位領域Uを定義した場合、各母点Mは必ずしも単位領域Uの幾何学的な中心点(重心)にはならない。これは、ボロノイ分割処理により定義される単位領域Uの境界線が、2つの隣接する母点から等距離の点の集合となるためである(図16に示す各単位領域Uは、図示の便宜上、正確なボロノイ分割処理の結果として得られる単位領域にはなっていない)。後述するように、母点Mは、最終的な印刷物上に形成される網点(セル)の核となる点であるため、母点Mが単位領域Uの幾何学的な中心点になっていないと、母点Mは、形成される網点の幾何学的な中心点にもならないが、実用上は何ら問題は生じない。
こうして単位領域の定義が完了すると、最後に、図12のステップS5において、各単位領域内の画素について、それぞれ画素値を決定する処理が行われる。前述したとおり、単位領域Uは、AMスクリーン画像上において、1つの網点(セル)への変換対象となる領域としての意味をもち、単位領域内の各画素値の出現頻度がほぼ均一となり、単位領域内にひとまとまりの黒画素の集団からなる領域(網点)が形成されるような画素値配置をもつ、という特徴を有している必要がある。
たとえば、図3に示すAMスクリーン画像31を1つの単位領域と考えると、上記条件を満たしていることがわかる。すなわち、各画素値0〜14の出現頻度は1または2であり、ほぼ均一になっている。また、このAMスクリーン画像31を用いてスクリーニング処理を実施すると、図5〜図9に示されているハーフトーン画像22〜26のように、ひとまとまりの黒画素の集団からなる領域(網点)が形成される。これは、単位領域の中心部分から周囲部分に向かって、0,1,2,3,4,…という画素値がほぼ昇順となるように配置されているからである。なお、§1で説明した例では、スクリーニング処理を行う際に、画素値P>画素値Qのとき、画素値H=黒とし、画素値P≦画素値Qのとき、画素値H=白としていたが、白画素と黒画素とを逆転させる定義も可能である。その場合は、単位領域の中心部分から周囲部分に向かって、14,13,12,11,10,…というように、画素値がほぼ降順となるように配置されたAMスクリーン画像を用いたスクリーニング処理を実施すればよい。
結局、ステップS5では、図18に示すような1つの単位領域Uを構成する個々の画素について、所定の範囲内の画素値をそれぞれ定義する必要がある。定義すべき画素値の範囲は、原画像のもつ階調情報に応じて定まる。たとえば、4ビットの階調情報(0〜15の画素値)をもつ原画像についてのスクリーニング処理を行うためのAMスクリーンを生成するには、§1で述べたとおり、0〜14の範囲内の画素値(1〜15の範囲内の画素値でもかまわない)を定義すればよいし、8ビットの階調情報(0〜255の画素値)をもつ原画像についてのスクリーニング処理を行うためのAMスクリーンを生成するには、0〜254の範囲内の画素値(1〜255の範囲内の画素値でもかまわない)を定義すればよい。
ただ、AMスクリーンとしての特徴をもった画素値分布を実現するため、単位領域U内の画素値の出現頻度がほぼ均一となり、かつ、単位領域Uの中心部分(必ずしも幾何学的な中心である必要はなく、核として機能しうる部分)から周囲部分に向かって画素値がほぼ降順もしくはほぼ昇順となるように、それぞれ所定の画素値を決定する必要がある。
このような条件を満たすように画素値を決定するには、たとえば、次のような方法をとることができる。まず、画素値の決定対象となる単位領域Uについて、内部に含まれている画素の総数Kを計数する。図18に示す単位領域Uの場合、K=135という計数値が得られることになる。
続いて、このK個の各画素のそれぞれについて、単位領域U内の母点Mとの距離をそれぞれ演算により求める。各画素の位置としては、たとえば、当該画素の中心点の位置座標を用いればよい。図18に示す画素Q(x,y)の場合、当該画素の中心点の座標値(x,y)と、母点Mの座標値とに基づいて、両者間の距離が求められる。こうして、単位領域U内の全画素について、母点Mとの距離が求まったら、距離の小さい順に個々の画素に順序を定義する。図18の例の場合、第1番目の画素から第135番目の画素まで順序が付される。そして、距離がi番目に小さい画素については、N×(i/K)なる演算に基づいて画素値を決定する。ここで、Nは、定義される最大画素値を示すパラメータであり、各画素に0〜Nの範囲内の整数からなる画素値を決定するのであれば、上記N×(i/K)なる演算結果の小数点以下を所定の方法でまるめる処理を行うようにする。
具体的には、図18に示されている単位領域Uを構成する各画素に、0〜14の範囲内の画素値(N=14)を定義する場合、母点Mとの距離が第i番目に小さい画素には、14×(i/135)なる演算により画素値を定義すればよい。たとえば、演算結果の小数点以下を四捨五入することにすれば、母点Mに一番近い画素には、14×(1/135)なる演算結果に基づいて画素値0が与えられ、一番遠い画素には、14×(135/135)なる演算結果に基づいて画素値14が与えられることになる。結局、0〜14の範囲内の画素値が、ほぼ均一な頻度で出現することになる(画素値0,14については、他の画素値よりも若干頻度が低下するが、特に支障は生じない)。また、母点M(単位領域Uの核として機能する位置)から周囲部分に向かって画素値がほぼ昇順となるような画素値分布を得ることができる。逆に、距離がi番目に大きい画素について、N×(i/K)なる演算に基づいて画素値を決定するようにすれば、母点Mから周囲部分に向かって画素値がほぼ降順となるような画素値分布を得ることもできる。
ステップS4で定義された個々の単位領域Uは、それぞれ形状や大きさが異なり、構成要素となる画素の数もそれぞれ異なる。したがって、ステップS5における画素値の決定処理は、個々の単位領域ごとに独立して実行されることになる。こうして、すべての単位領域Uについて、画素値を決定する処理が完了すれば、サイズSx,Syの画素配列を構成するすべての画素に対して、所定の画素値が得られたことになるので、この画素配列をサイズSx,Syのスクリーン画像として出力する処理を行えばよい。こうして出力されたスクリーン画像は、従来のAMスクリーン画像と同様に、濃度情報を網点の面積として表現したハーフトーン画像を生成する機能を有し、しかも網点の周期性を排除することにより、モアレ縞やロゼッタパターン、濃度跳躍などの発生を抑制することができる。
なお、本願では、この画素値の決定方法に、より好ましいアルゴリズムを採用しているが、このアルゴリズムについては、§4で説明を行うことにする。
<<< §3.土手領域の形成 >>>
続いて、隣接する網点(セル)が互いに接しない印刷物を作成するのに適したスクリーン画像の生成方法を述べる。一般に、オフセット印刷や凸版印刷では、網点面積率100%の領域には、全面にわたってインキを付着させることができる。そのためには、スクリーン画像上に定義された単位領域Uが、二次元平面を埋め尽くすようにしておけばよい。
たとえば、図10に示すスクリーン画像32は、4×4の画素配列からなる単位領域Uを縦横に並べて構成されており、二次元平面が単位領域Uで埋め尽くされている。したがって、単位領域U内の全画素が黒画素となるようなスクリーニング処理が行われることになると、二次元平面の全面にインキが付着したハーフトーン画像が得られることになる。これは、単位領域Uの形状が正六角形になっても同様である。たとえば、図13に示す例において、正六角形状の各単位領域U内の全画素が黒画素となるようなスクリーニング処理が行われると、やはり全面にインキが付着したハーフトーン画像が得られる。
これに対して、図19に示すように、隣接する単位領域間に隙間が確保されるように、各単位領域を定義した場合を考えてみよう。図示の例の場合、個々の単位領域Uを正六角形の部屋と考えると、各部屋が幅Wbの廊下を介して接した構造となっている。この場合、もし個々の単位領域U内の全画素が黒画素となるようなスクリーニング処理が行われたとしても、廊下に相当する領域には、インキは付着しないことになる。
この図19に示すような単位領域配置をもったスクリーン画像は、もちろんオフセット印刷や凸版印刷の用途に利用することも可能であるが、特に、グラビア印刷を行う場合に有効である。別言すれば、グラビア印刷を行う場合、図13に示すような単位領域配置をもったスクリーン画像を利用することはできない。なぜなら、グラビア印刷用の印刷版には、凹型のセル(以下、グラビアセルという)を形成しておき、このグラビアセル内に充填されたインキを紙に転写して印刷を行う必要があるためである。1つのグラビアセル内に充填されたインキを紙に転写することにより、1つの網点が形成されることになる。
従来から一般的に利用されているグラビア印刷では、グラビアセルの開口部の大きさはすべて共通にしておき、個々のグラビアセルごとに深さを変えることにより濃淡表現を行う方式(コンベンショナル方式)が用いられている。深いセルは浅いセルよりもインキの充填量が多くなるため、より多量のインキが紙側に転写されることになる。そのため、紙側に転写されたインキからなる網点は、いずれも同じ大きさ(グラビアセルの開口部の大きさに応じたものになる)になるが、網点を構成するインキの濃淡(グラビアセルの深さに応じたものになる)には差が生じることになり、階調表現が可能になる。
これに対して、昨今では、グラビアセルの開口部の大きさを個々のセルごとに変化させる方式も普及してきている。この方式では、紙側に転写されたインキからなる網点の大きさは、グラビアセルの開口部の大きさに応じたものになり、オフセット印刷や凸版印刷と同様に、網点の大きさによる階調表現が可能になる。本発明に係るスクリーン画像は、あくまでもAM方式のスクリーン画像であり、網点の大きさによる階調表現を行うためのものである。したがって、本発明に係るスクリーン画像をグラビア印刷に利用する場合は、グラビアセルの開口部の大きさを個々のセルごとに変化させる方式を採ることが前提となる。
しかしながら、グラビア印刷では、前述したように、印刷版に凹型のグラビアセルを形成してインキを充填し、これを紙に転写するという工程が必要になるため、個々のグラビアセルを囲う物理的な土手が必要になる。別言すれば、グラビア印刷版の表面には、物理的な土手で囲われた溝として機能するセルを形成する必要がある。同じ正六角形の単位領域を有するスクリーン画像であっても、図13に示すスクリーン画像はグラビア印刷には利用できないが、図19に示すスクリーン画像はグラビア印刷に利用できるという理由は、前者では物理的な土手を形成することができないのに対して、後者ではそれが可能であるためである。すなわち、図19に示すスクリーン画像を用いた場合、幅Wbの廊下として機能する部分を、グラビア印刷版上での物理的な土手として利用することができるようになる。そこで、本明細書では、以下、この廊下として機能する領域を、土手領域Bと呼ぶことにし、この土手領域Bの幅Wbを土手幅と呼ぶことにする。
この図19に示す例のように、スクリーン画像上に土手幅Wbをもった土手領域Bを定義しておけば、当該スクリーン画像を利用して得られるハーフトーン画像上の網点間には、最小でも土手幅Wbの間隔が確保できることになり、グラビア印刷版上に形成されるグラビアセル間には、最小でも土手幅Wbをもった物理的な土手が形成されることになる。これは、網点もしくはグラビアセルの開口部の大きさが、最大でも、単位領域Uに等しい大きさとなるためであり、土手領域Bは常にセル外の領域として残るからである。
もっとも、図19に示す例は、規則的に配置された母点Mに基づいて各単位領域Uを定義した例であり、単位領域Uの配置も規則的になっている。このような規則的な単位領域を定義しても、本発明に係るスクリーン画像を生成することはできない。本発明に係るスクリーン画像を生成するには、たとえば、図20に示すような単位領域を定義する必要がある。この図20に示す単位領域Uは、図16に示す単位領域Uと同様に、図15に示す各母点Mを核として定義された単位領域であるが、隣接する単位領域U間に土手幅Wbの土手領域Bが確保されるような方法で定義を行った例である。
このように、土手領域Bを考慮したスクリーン画像を生成する方法は、§2で述べた方法とほぼ同様であり、基本的には、図12に示す流れ図に沿った手順を行えばよい。以下、§2で述べた方法との相違点のみ説明する。
まず、図12のステップS1において、前述の方法と同様に各パラメータを設定する。このとき、土手幅Wbがパラメータとして加わることになる(§2で述べた方法は、土手幅Wb=0に設定したケースに相当する)。土手幅Wbは、上述したとおり、隣接する単位領域U間の寸法(距離あるいは間隙)を示すパラメータであり、グラビア印刷の場合は、印刷版上に形成されるグラビアセル間の物理的な土手の最小寸法を規定するパラメータになる。この物理的な土手の最小寸法が小さすぎると、印刷中に土手が決壊し、グラビアセルに充填されていたインキが隣接するグラビアセルへと流入し、正しい階調をもったグラビア印刷を行うことができなくなる。したがって、土手幅Wbをパラメータとして設定する際には、必要枚数の印刷を行った場合でも、グラビア印刷版上に形成された物理的な土手が十分に耐久性を維持できるような寸法値に設定する必要がある。また、グラビア印刷版上にグラビアセルを形成するプロセスは、通常、エッチング液を用いた腐食プロセスにより行うことになるので、この腐食プロセスにおいて、いわゆるサイドエッチ(版面に平行な方向への腐食)が生じる場合には、サイドエッチ量を考慮して最適な土手幅Wbを決定するようにするのが好ましい。
続く、ステップS2の母点配置段階およびステップS3の母点位置変動段階の手順は、§2で述べた方法と全く同様である。
ステップS4の単位領域定義段階では、§2で述べた手法を若干修正する必要がある。すなわち、§2で述べた手法では、各画素について最近接母点を求め、同一の母点を最近接母点とする画素の集合により1つの単位領域を定義し、すべての画素をいずれかの単位領域に所属させるようにしていたが、土手領域Bを考慮した手法では、土手領域B内に位置する画素については、単位領域ではなく、土手領域(いずれの単位領域にも所属しない領域)に所属させる必要がある。そのためには、次のような手順で、単位領域の定義を行えばよい。
まず、§2で述べた手法と同様に、個々の画素のそれぞれについて、最も距離が近い母点を最近接母点と定義する処理を行う。このとき、二番目に距離が近い母点を当該画素についての次近接母点と定義する処理も併せて行うようにする。このように、ある特定の画素について、最近接母点と次近接母点とが求まると、この最近接母点と次近接母点の位置に基づいて、当該特定の画素が、土手領域内の画素か否かを判定することが可能になる。
図21は、座標(x,y)に位置する画素Q(x,y)が、土手幅Wbをもつ土手領域内の画素か否かを判定する原理を示す平面図ある。ここでは、画素Q(x,y)に最も近い母点がM1、第2番目に近い母点がM2、第3番目に近い母点がM3であったものとしよう。この場合、画素Q(x,y)の最近接母点はM1、次近接母点がM2ということになり、母点M3はこの判定には一切関与しない。判定を行うには、まず、最近接母点M1と次近接母点M2とを結ぶ線分L1(図の破線)を求め、この線分L1の垂直二等分線L2(図の一点鎖線)を求める。そして、この垂直二等分線L2を中心線として、パラメータとして設定した土手幅Wbに相当する幅をもった帯状領域Ab(図のハッチング領域)を定義し、判定対象となる画素Q(x,y)がこの帯状領域Ab内の画素であった場合には、当該画素Q(x,y)を土手領域B内の画素と判定すればよい。
図示の例の場合、画素Q(x,y)は、帯状領域Ab外にあるので、土手領域B内の画素とは判定されないことになる。このように、土手領域B内の画素とは判定されなかった画素については、§2で述べた方法どおり、最近接母点M1についての単位領域に所属する画素として取り扱えばよい。図示の例では、画素Q(x,y)は、母点M1についての単位領域に所属する画素になる。もちろん、図21に示す帯状領域Abは、母点M1,M2に関しての判定基準となる領域である。したがって、たとえば、最近接母点がM1,次近接母点がM3となるような別な画素についての判定を行う場合には、これら両母点M1,M3を結ぶ線分の垂直二等分線を中心線とする別な帯状領域が判定基準として用いられる。こうして、すべての画素について、それぞれ土手領域内の画素か否かの判定を行い、土手領域外と判定された画素については、§2で述べた方法に従って、最近接母点についての単位領域に所属させ、土手領域内と判定された画素については、土手領域に所属させる処理を行えば、図20に示すような領域定義を行うことができる。
最後に、ステップS5の画素値決定段階では、いずれかの単位領域内の画素については、§2で述べた手法にしたがって、所定の画素値を決定してゆけばよい。一方、土手領域内の画素については、変換後のハーフトーン画像上でインキが付着しない領域とするための所定の画素値を与えるようにすればよい。たとえば、単位領域内の画素について、0〜14の範囲内のいずれかの画素値Qを与え、スクリーニング処理を行う際に、0〜15の範囲内の画素値Pをもつ原画像について、図2に示す例のように、画素値P>画素値Qのとき、画素値H=黒とし、画素値P≦画素値Qのとき、画素値H=白とする処理を行って、画素値Hをもったハーフトーン画像を生成する場合であれば、ハーフトーン画像上でインキが付着しない領域であることを示す画素値Q=15を定義し、土手領域内の画素については、この画素値Q=15を与えるようにすればよい。
このような画素値決定処理を行うと、図20に示す各単位領域U内の画素には、Q=0〜14の範囲内の画素値が与えられ(具体的には、核となる母点Mの位置の画素については、画素値Q=0が与えられ、単位領域Uの輪郭近くの画素については、画素値Q=14が与えられる)、土手領域B内の画素には、画素値Q=15なる画素値が与えられることになる。一方、原画像を構成する画素は、画素値P=0〜15の範囲をとるので、上述した条件式「画素値P≦画素値Qのとき、画素値H=白」を用いたスクリーニング処理を行う限り、土手領域Bには白画素が配置されることになり、土手領域は常にインキが付着しない領域として残ることになる。
最後に、具体的な画像の例を示しておく。図22は、上述した土手領域を考慮した手法で生成されたスクリーン画像の具体的な一例を示す平面図である。電子出願における図面解像度の制約により、濃淡の具合が若干不明瞭であるが、不定形の多数の単位領域が、所定幅の土手領域を挟んでランダムな位置に配置されている様子がわかる。個々の単位領域は、中心部分ほど濃度が高く(黒に近く)、周囲ほど濃度が低く(白に近く)なっている。これは、中心から周囲にかけて画素値が徐々に変化しているためである。
図23〜図26は、いずれも図22に示すスクリーン画像を利用して得られたハーフトーン画像である。具体的には、図23は、濃度20%の階調値をもった一様な淡いグレー画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。同様に、図24は、濃度50%の階調値をもった一様な中間グレー画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。また、図25は、濃度100%の階調値をもった一様な黒色画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。一方、図26は、濃度0%〜100%の階調変化を伴う連続グラデーションパターンからなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。
いずれのハーフトーン画像も、不定形の網点から構成されており、しかも網点配置の周期性は排除されていることがわかる。これは、従来の一般的なAMスクリーン画像を用いて得られたハーフトーン画像には見られない固有の特徴である。このような特徴をもったハーフトーン画像では、モアレ縞やロゼッタパターンなどの発生が抑制される。また、図示のとおり、所定の最小幅Wbをもった土手領域が確実に形成されているため、これらのハーフトーン画像をグラビア印刷によって印刷する場合にも、何ら支障は生じない。
<<< §4.画素値決定のアルゴリズム >>>
前述の§2では、図12のステップS5における画素値の決定方法の一例として、1つの単位領域内の各画素について、それぞれ母点Mとの距離を求め、この距離の小さい順に順序を定義し、昇順もしくは降順に画素値を対応づけてゆく手法を説明した。たとえば、図18に示すような単位領域Uを構成する各画素の画素値を決定するのであれば、まず、母点Mを含む画素およびその近傍に位置する数画素に画素値0を与え、その周囲に位置する数画素に画素値1を与え、更にその周囲に位置する数画素に画素値2を与え、…というプロセスにより、昇順に画素値を決定することができる。図27は、このようなプロセスにより、0〜14の範囲内の画素値を決定した例である(図が繁雑になるのを避けるため、画素値は一部のみを表示してある)。図示のとおり、母点Mに近い画素ほど小さな画素値が割り当てられ、母点Mから遠い画素ほど大きな画素値が割り当てられている。
結局、図27に示す単位領域Uを構成する画素配列は、0〜14の範囲内の画素値をほぼ均一な頻度で含んでおり、かつ、母点Mから周囲部分に向かって画素値がほぼ昇順となるような画素値分布をもっている。このような性質をもった画素配列をスクリーン画像として用いれば、図4〜図9に示す例と同様に、原画像の画素値に応じた面積をもった網点を有するハーフトーン画像を得ることができる。
しかしながら、上述したアルゴリズムに基づいて画素値の決定を行うと、1つの単位領域Uの一端に、特定の画素値が偏在する現象が起こりやすくなる。たとえば、図27に示す例の場合、母点Mは、単位領域Uの幾何学的な中心点よりも若干上方に偏っている。その結果、最大画素値14をもつ画素は、単位領域Uの下方に偏在する結果となっている。これは、母点Mに対する距離が大きい画素ほど、大きな画素値を割り当てるようにした当然の帰結である。
このような画素値の偏在現象は、単位領域Uの形状が円から外れれば外れるほど、顕著になってくる。たとえば、図28は、かなり歪んだ形状をもつ単位領域U内の各画素について、母点Mに対する距離の小さい方から大きい方に昇順に画素値を割り当てた例である。図示のとおり、12,13,14という大きな画素値をもつ画素は、単位領域Uの下方に偏在する結果となっている。このような画素値の偏在化が生じると、原画像の低濃度〜中濃度の部分において、網点間に大きな隙間領域が生じるおそれが出てくるので好ましくない。たとえば、図28に示すような画素値分布をもつスクリーン画像を用いて、画素値12をもつ画素の集合からなるグレーの原画像に対するスクリーニング処理を行ったとすると、形成される網点は、図28に示す単位領域U内の画素値11以下の画素からなる部分ということになり、単位領域Uの下方部分(12以上の画素値が割り当てられた部分)は、インキが付着しない隙間領域ということになる。
図29は、いずれも歪んだ形状をもった5つの単位領域U1〜U5の集合部分を示す平面図である。各単位領域U1〜U5の間隙は、土手領域Bである。ここで、各単位領域U1〜U5内の画素値分布が、図28に示す例のように偏在化していた場合、これら各単位領域U1〜U5から構成されるスクリーン画像を用いて、原画像の中濃度の部分に対するスクリーニング処理を行ったとすると、図29にハッチングを施して示すような領域に網点が形成されることになる。これらの網点は、いずれも個々の母点M1〜M5を中心としたものになっており、土手領域上の点Eの近傍には、インキが付着しない隙間領域(ハッチングが施されていない領域)が形成されることになる。このような隙間領域は、観察者に粒状感を与える要因となり好ましくない。
そこで、本発明では、このような問題に対処するために、図12のステップS5における画素値の決定方法に、次のようなアルゴリズムを採っている。このアルゴリズムの第1の特徴は、単位領域U内の各画素について、画素値の各値の出現頻度がほぼ均一となるようにする点であるが、これは§2で述べたアルゴリズムの特徴と同様である。このアルゴリズムの第2の特徴は、土手領域Bに対する距離に応じて画素値がほぼ昇順もしくはほぼ降順となるように、それぞれ所定の画素値を決定する点である。この第2の特徴は、§2で述べたアルゴリズムの特徴と大きく異なっている。すなわち、§2で述べたアルゴリズムでは、1つの画素についての画素値を、当該画素の母点Mに対する距離に基づいて決定していたのに対し、ここで述べるアルゴリズムでは、当該画素の土手領域Bに対する距離に基づいて決定することになる。
図30は、図28と同一形状をもつ単位領域U内の各画素について、土手領域Bに対する距離の小さい方から大きい方に降順に画素値を割り当てた例である。図30には、説明の便宜上、単一の単位領域Uのみが示されているが、実際には、その周囲には、土手領域Bを挟んで別な単位領域が隣接している。各画素の土手領域Bに対する距離とは、結局、当該画素が所属する単位領域Uの境界に対する距離ということができる。図30に示す例では、単位領域Uの輪郭に沿ったいくつかの画素に対して、最大画素値14が割り当てられている。
なお、図30において、太線で示す輪郭に沿ったすべての画素に対して最大画素値14が割り当てられていない理由は、画素値の各値の出現頻度がほぼ均一となる、という条件が課せられているためである。図30では、説明の便宜上、単位領域Uの輪郭線を、画素の解像度に合わせて示してあるが、実際には、単位領域Uの輪郭線の位置は、画素の解像度よりも細かな精度で演算されることになるので、単位領域Uの最外郭に位置する画素であっても、それぞれ土手領域Bに対する距離の演算値は異なる。したがって、図示のとおり、単位領域Uの輪郭に沿った画素のうち、いくつかに対しては、最大画素値14が割り当てられるが、その他の画素に対しては、画素値13が割り当てられることになる。
ところで、個々の画素について、土手領域Bに対する距離を演算する処理は、個々の画素について、当該画素が土手領域Bに所属する画素か否かを判定する判定処理と併せて行うようにすると便利である。§3で述べた判定処理によれば、図21に示すように、座標(x,y)に位置する画素Q(x,y)が、土手領域Bに所属する画素か否かを判定する場合、画素Q(x,y)に最も距離が近い母点M1を当該画素についての最近接母点と定義するとともに、二番目に距離が近い母点M2を当該画素についての次近接母点と定義し、最近接母点M1と次近接母点M2とを結ぶ線分L1の垂直二等分線L2を中心線として、パラメータとして設定した土手幅Wbに相当する幅をもった帯状領域Abを定義し、当該画素Q(x,y)がこの帯状領域Ab内の画素であった場合には、当該画素Q(x,y)を土手領域B内の画素とする判定を行うことになる。そこで、この判定処理で求めた垂直二等分線L2を利用すれば、当該画素Q(x,y)と土手領域Bとの距離を算出することが可能である。
具体的には、図21に示す画素Q(x,y)と垂直二等分線L2との距離を、当該画素Q(x,y)と土手領域Bとの距離を示す値として用いるようにすればよい。垂直二等分線L2は、個々の画素について、当該画素が土手領域Bに所属する画素か否かを判定する判定処理を行う過程で求められる直線であるから、その時点で、この直線と当該画素との距離を演算する処理まで行うようにすれば、各画素が土手領域Bに所属する画素か否かを判定する判定処理が完了した時点で(別言すれば、個々の単位領域の輪郭が決定した時点で)、単位領域内の各画素について、土手領域Bとの距離を示す値が得られていることになる。したがって、この距離の大小に基づいて各画素をソートすれば、その順序に応じて、各画素に所定の画素値を割り当てる処理を直ちに行うことが可能である。
この§4で述べた画素値決定のアルゴリズムの要点を、一般論として述べると、次のようになる。いま、単位領域U内に合計K個の画素があり、各画素に0〜Nの範囲内の整数からなる画素値を決定する場合を考える。この場合、ここで述べる画素値の決定アルゴリズムを適用するには、当該単位領域U内の各画素と当該単位領域Uの周囲に位置する土手領域Bとの距離をそれぞれ求め、距離の大きい順もしくは小さい順に順序を定義し、順序がi番目の画素については、N×(i/K)なる演算に基づいて画素値を決定する、という処理を行えばよい。なお、土手領域B内の各画素については、変換後のハーフトーン画像上でインキが付着しない領域となるように、所定の画素値(たとえば、画素値15)を割り当てればよい。また、ここでは、図30に示すように、土手領域Bに対する距離が最大となる点を新母点MMと定義することにする。単位領域U内の各画素の画素値は、新母点MMから周囲に向かって、徐々に大きくなるような分布をとることになる。
このようなアルゴリズムに基づいて画素値の定義を行うようにすれば、ハーフトーン画像上に隙間領域が発生する問題を解決することができる。その理由は、図28に示す画素値分布と図30に示す画素値分布とを比較すれば、容易に理解できよう。図28に示す画素値分布では、単位領域Uの下方に画素値の大きな画素が偏在しているため、原画像の中濃度の部分に対するスクリーニング処理を行うと、この下方部分に大きな隙間領域が生じることになるが、図30に示す画素値分布では、画素値の大きな画素は輪郭線に沿って均一に分散しているため、特定の部分に大きな隙間領域が生じることはない。
最後に、この§4で述べたアルゴリズムにより画素値を定義した場合の具体的な画像の例を示しておく。図31は、この§4で述べたアルゴリズムにより画素値を定義する手法で生成されたスクリーン画像の具体的な一例を示す平面図である。この図31に示すスクリーン画像を図22に示すスクリーン画像と比較すると、当該アルゴリズムの利点が明確になる。図22に示すスクリーン画像は、図28に示すように、母点Mに対する距離に基づいて画素値の定義を行ったものである。これに対して、図31に示すスクリーン画像は、図30に示すように、土手領域Bに対する距離に基づいて画素値の定義を行ったものである。前者では、個々の単位領域の角が丸まっているように見えるのに対し、後者では、個々の単位領域の角が維持されているように見える。
このような相違は、これらスクリーン画像を利用して得られたハーフトーン画素を比較すると、より顕著である。前述したとおり、図23〜図25は、いずれも図22に示すスクリーン画像を利用して得られたハーフトーン画像である。具体的には、図23は、濃度20%の階調値をもった一様な淡いグレー画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。同様に、図24は、濃度50%の階調値をもった一様な中間グレー画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。また、図25は、濃度100%の階調値をもった一様な黒色画像からなる原画像に対して、図22に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。これに対して、図32〜図34は、いずれも図31に示すスクリーン画像を利用して得られたハーフトーン画像である。具体的には、図32は、濃度20%の階調値をもった一様な淡いグレー画像からなる原画像に対して、図31に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。同様に、図33は、濃度50%の階調値をもった一様な中間グレー画像からなる原画像に対して、図31に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。また、図34は、濃度100%の階調値をもった一様な黒色画像からなる原画像に対して、図31に示すスクリーン画像を利用したスクリーニング処理を実施することにより得られたハーフトーン画像である。
低濃度に相当する濃度20%の原画像についての結果である図23と図32を比較すると、前者では、個々の網点が全体的に丸みを帯び、網点間の隙間領域が多く見られるのに対し、後者では、個々の網点の角が維持され、網点間の隙間領域は少なくなっている。中濃度に相当する濃度50%の原画像についての結果である図24と図33を比較すると、丸みを帯びた網点と角が維持された網点との差がより顕著に見られる。なお、高濃度に相当する濃度100%の原画像についての結果である図25と図34の比較では、顕著な差は見られない。これは、濃度100%の原画像になると、単位領域U内の全域が網点形成領域となるため、網点間の隙間領域は、いずれの場合も土手領域のみとなるためである(すべての画素が画素値15をもった原画像に対してスクリーニング処理を実行した場合、図28に示すような画素値分布をもったスクリーン画像を用いても、図30に示すような画素値分布をもったスクリーン画像を用いても、得られる網点は、単位領域Uの全領域を占めるものになる)。
このように、この§4で述べたアルゴリズムに基づく画素値決定方法は、原画像の低濃度〜中濃度の部分の画質改善を意図したものということができる。
<<< §5.固有のスクリーニング処理方法 >>>
ここでは、本発明に係る方法で生成されたスクリーン画像を用いた処理に適した固有のスクリーニング処理方法を述べておく。一般的なスクリーニング処理の原理は、図2に示すとおり、二次元平面上の対応位置に存在する原画像の画素値Pとスクリーン画像の画素値Qとを比較し(図11の例のように、両画像の解像度が異なる場合には、対応位置における補間画素値と比較し)、その大小関係に基づいて、二次元平面上の同位置に存在するハーフトーン画像の画素値Hを決定する処理ということができる。
そこで、たとえば、図35上段に示すようなストライプ模様からなる原画像18に対して、同図中段に示すようなスクリーン画像38(§3および§4で述べた手法で生成されたスクリーン画像)を用いて、画像変換装置(スクリーニング処理装置)100により、スクリーニング処理を施した場合を考えてみよう。この場合、理論的には、図35下段に示すようなハーフトーン画像28が得られることになるが、このようなハーフトーン画像28は、AM方式のスクリーニング処理によって得られるハーフトーン画像としては好ましくない。なぜなら、AM方式のスクリーニング処理によって得られるハーフトーン画像は、基本的に、所定の核を中心として集合した連続領域からなる網点によって構成されるべきものであり、個々の網点を、それぞれある程度の大きさをもった領域とすることにより、紙面へのインキの良好な転写を確保しているからである。図35下段に示すハーフトーン画像28では、個々の網点と呼ぶべきものが、それぞれ複数のストライプによって表現されてしまっており、ひとまとまりの領域になっていない。
そもそも図35上段に示すような原画像18は、マクロ的に見れば、ストライプ模様として把握されるべきものではなく、濃淡に多少ムラのあるグレー画像として把握されるべきものであり、理想的には、たとえば図36に示すようなハーフトーン画像として表現されるべきものである。この図36に示すハーフトーン画像は、所定の核を中心として集合した連続領域からなる網点によって構成されており、印刷時には、紙面へのインキの良好な転写が行われる。
もちろん、図35に示す例は、極めて極端な例であり、実用上、原画像18のような非常に細かなストライプパターンに対して、スクリーン画像38のような比較的粗いAMスクリーンを用いてスクリーニング処理が行われるケースは稀なケースと言えるであろう。しかしながら、ごく一般的な原画像の場合であっても、局所的に、原画像18に示すような非常に細かなパターンが含まれていることは少なくない。この場合、この局所的な部分に関しては、ハーフトーン画像28に準じた好ましくないスクリーニング処理が行われていることになる。ここで述べる固有のスクリーニング処理の手法は、原画像に非常に細かな濃淡変化が含まれている場合に、より好ましい結果を得ることができる手法である。
図37は、この固有のスクリーニング処理の手法の概念を示す平面図である。いま、図の左側に示すようなスクリーン画像39と、図の右側に示すような原画像19とが用意されているものとする。説明の便宜上、スクリーン画像39としては、1つの単位領域U内の画素のみを示してある。また、ここに示すスクリーン画像39は、§4で述べたアルゴリズムに基づいて個々の画素値を定義することにより得られたものであり、図の点MMは、新母点を示している。一方、原画像19上の破線は、この単位領域Uに対応する領域を示すものである。図示のとおり、スクリーン画像39の解像度と原画像19の解像度とは異なっているため、たとえば、スクリーン画像39上の画素Q(x,y)の画素値Qに対する比較対象は、本来であれば、原画像19上の対応点QQ(x,y)の位置における原画像の画素値(図示の例の場合、画素P1,P2,P5,P6の各画素値についての重みづけ平均として算出された補間値)とすべきである。
しかしながら、この§5で述べる固有のスクリーニング処理では、スクリーン画像39上の画素Q(x,y)の画素値Qに対する比較対象として、原画像19上の「新母点MMの対応点MM*」の位置における原画像の画素値(図示の例の場合、画素P6,P7,P10,P11の各画素値についての重みづけ平均として算出された補間値)を用いるのである。図示の例において、スクリーン画像39を構成する単位領域U内には、合計135個の画素が存在するが、この135個の画素のすべてに関して原画像19上の「新母点MMの対応点MM*」の位置における原画像の画素値(実際には補間値)を比較対象として用いるようにするのである。結局、原画像19上に破線で示した領域(単位領域Uに対応する領域)内を代表する代表画素値として、新母点の対応点MM*の位置における原画像の画素値(実際には補間値)が用いられることになる。
要するに、ここで述べる固有のスクリーニング処理では スクリーン画像39上の画素Q(x,y)の位置に対応するハーフトーン画像上の画素H(x,y)の画素値を決定する際に、画素Q(x,y)の対応点QQ(x,y)の画素値と画素Q(x,y)の画素値とを比較する代わりに、画素Q(x,y)が所属する単位領域Uについての新母点MMの位置に対応する原画像19上の位置MM*に関する原画像の画素値と画素Q(x,y)の画素値とを比較する処理が実行されることになる。
このような固有の処理を行えば、図35上段に示すような非常に細かな濃淡情報をもった原画像18に対してスクリーニング処理を行ったとしても、同一の単位領域内に関しては、常に新母点の対応点MM*の位置における代表画素値との比較が行われることになるので、図36に示すような理想的なハーフトーン画像を得ることができるようになる。
なお、ここで述べた固有のスクリーニング処理は、本発明に係る生成方法で生成されたスクリーン画像を用いたスクリーニング処理を行う場合に特に効果的であるが、従来の一般的なスクリーン画像を用いたスクリーニング処理を行う場合にも適用可能である。
<<< §6.母点配置に関する変形例 >>>
続いて、母点配置に関する変形例を述べておく。これまで述べた実施形態では、図12の流れ図に示されているとおり、ランダム配置された母点を得るために、まず、標準ピッチで母点を配置し(ステップS2)、続いて、これら母点の位置をランダムに変動させる(ステップS3)という手順を行っている。そして、このステップS3における母点変動の具体的な方法として、図14に示すように、XY直交座標系において、X軸方向への変動量とY軸方向への変動量とをランダムに決定する例を述べた。
しかしながら、母点の変動量は、必ずしも直交座標系における2軸方向に沿って定める必要はなく、たとえば、極座標系における角度と距離によって定めることもできる。図38は、このような極座標系で母点の変動量を定義する原理を示す図である。図に黒丸で示す点が規則的(正六角形の頂点位置)に配置された母点である。ここで、中央の母点M(x,y)を変動させる際に、X座標値xとY座標値yとを、
x → x+LL・cosθ
y → y+LL・sinθ
のように変化させるのである。但し、LL=R・Dr・Lであり、Rは0〜1(0≦R≦1)の範囲の一様分布乱数、θは0〜2π(0≦θ<2π)の範囲の一様分布乱数、Lは変動前の母点間隔、DrはステップS1で設定した乱雑さの程度である。このような変動処理により、母点M(x,y)は、図示のとおり母点M′(x,y)へと移動することになる。これは、極座標系において、角度の変位量θ(0≦θ<2π)と距離の変位量LL(0≦LL≦L)とをランダムに決定し、X軸方向に関する変動量がLL・cosθ、Y軸方向に関する変動量がLL・sinθとなるように、母点M(x,y)の位置を変動させることに他ならない。
図39は、上述のような極座標系に基づく変動処理を行うことにより、母点M(x,y)が移動する範囲を示す図である。角度の変位量θは、0〜2πの範囲をとるため、母点M(x,y)はあらゆる方向へと変動する可能性があるが、距離の変位量LLの最大値が変動前の母点間隔Lであるため、結局、移動後の母点の位置は、図にハッチングを施して示すように、半径Lの円内ということになる。なお、距離の変位量LLの最大値は、必ずしも変動前の母点間隔Lに限定する必要はなく、任意の値を最大値としてもよい。ただ、実用上は、変位量LLの最大値をL′としたときに(すなわち、0≦LL≦L′)、L/2≦L′≦Lの範囲内の最大値L′を用いると、より好ましい母点配置が得られることが確認されている。
以上、標準ピッチで母点を配置し、続いて、これら母点の位置をランダムに変動させることにより、ランダムに配置された母点を得る手法を説明したが、本発明を実施する上では、図12のステップS4においてボロノイ分割処理を実施する際に、平面上に多数の母点がランダムに配置された状態になっていれば足りるので、必ずしも、「標準ピッチで母点を配置し、その位置をランダムに変動させる」という手順を踏む必要はない。たとえば、図15に示す母点配置の例は、図13に示すような標準ピッチで配置された母点の位置をランダムに変動させることにより得られたものであるが、このようなランダム配置された母点は、別な手法で得ることも可能である。
たとえば、XY平面上に、図10に示すような、生成対象となるスクリーン画像に応じた画素配列を定義し、この画素配列の領域内のランダムな位置に、各母点を定義する処理を実行すれば、図15に示すようなランダム配置された母点を得ることが可能である。具体的には、この画素配列の横方向の座標値の範囲内に規格化された乱数Rxと、縦方向の座標値の範囲内に規格化された乱数Ryとを発生させ、座標(Rx,Ry)で示される位置に母点を発生させる処理を繰り返し実行すればよい。
図40は、本発明に係るスクリーン画像の生成方法の手順をより一般化して表現した流れ図である。ステップS1のパラメータ設定段階は、図12の流れ図におけるステップS1と同様に、種々のパラメータを設定する段階である。ただし、ここで設定すべき最小限のパラメータは、生成対象となるスクリーン画像を構成する画素配列のサイズSx,Syと、土手幅Wbである。次のステップS23は、ランダムな母点配置を得るための段階である。上述したように、この段階は、平面上に多数の母点がランダムに配置された状態を得ることができれば、具体的には、どのような手法で実施してもかまわない。図12の流れ図におけるステップS2の「母点配置段階」およびステップS3の「母点位置の変動段階」は、図40の一般化した流れ図におけるステップS23の一実施形態と言うことができる。
なお、図40の流れ図におけるステップS4およびステップS5は、図12の流れ図におけるステップS4およびステップS5と全く同様の手順である。
このように、本発明に係るスクリーン画像の生成方法の基本概念を一般化した手順として示すと、図40の流れ図のようになるが、実用上は、図12の流れ図に示す実施形態が最も好ましい。これは、図12の流れ図に示す実施形態の場合、まず、一定のピッチで母点を配置し(ステップS2)、その後、各母点の位置を、一定範囲内の乱雑さをもってランダムに変動させる(ステップS3)ことが可能になるからである。別言すれば、図12の流れ図に示す実施形態を実施した場合、ボロノイ分割処理(ステップS4)の対象となる母点は、ランダムに配置されているものの、最終的に網点(セル)の核となるのにふさわしい位置に適度に分散した状態となっている。これは、実用的なスクリーン画像を生成する上で重要な利点である。
<<< §7.その他の変形例 >>>
以上、本発明に係るスクリーン画像の生成方法をいくつかの実施形態に基づいて説明したが、本発明はこれらの実施形態に限定されるものではなく、この他にも種々の形態で実施可能である。たとえば、上述の実施形態では、モノクロ画像についての取り扱いを述べたが、本発明はもちろんカラー画像に対するスクリーニング処理にも適用可能である。この場合は、所定の色成分をもった個々の画像ごとに、上述した手法によるスクリーニング処理を実行すればよい。また、一般に、網点(セル)の面積と印刷物上での濃度値との間には、完全な線形関係は成り立たない。そのため、通常、スクリーン画像には所定の濃度補正処理が施される。したがって、本発明に係るスクリーン画像の生成方法においても、実用上は濃度補正処理を施すのが好ましい。
なお、前述したとおり、図12あるいは図40に示す流れ図の各手順は、実際には、コンピュータにより実行される手順であり、本発明に係るスクリーン画像の生成装置は、所定のプログラムを組み込んだコンピュータによって実現することができる。図41は、本発明に係るスクリーン画像の生成装置を用いて構成された画像変換システムを示すブロック図である。この画像変換システムは、スクリーン画像生成装置200と、このスクリーン画像生成装置200によって生成されたスクリーン画像30のデータを利用して、原画像10のデータをハーフトーン画像20のデータに変換する処理(スクリーニング処理)を行う画像変換装置100と、によって構成されている。得られたハーフトーン画像20のデータに基づいて、印刷版40(オフセット印刷版、凸版印刷版、グラビア印刷版など)が作られ、印刷物50(オフセット印刷物、凸版印刷物、グラビア印刷物など)が生産されることになる。印刷版40および印刷物50では、網点(セル)の面積として原画像の階調が表現されているが、網点(セル)の周期性は排除されている。
スクリーン画像生成装置200は、図12の流れ図に示す実施形態に基づいてスクリーン画像を生成する装置であり、図示のとおり、生成対象となるスクリーン画像を構成する画素配列のサイズおよび母点の標準ピッチを示すパラメータを設定するパラメータ設定部210(図12のステップS1を実行する構成要素)と、画素配列が定義された二次元平面上に標準ピッチで母点を配置する母点配置部220(図12のステップS2を実行する構成要素)と、各母点の位置をそれぞれランダムに変動させる母点位置変動部230(図12のステップS3を実行する構成要素)と、画素配列を構成する各画素についてそれぞれ最も距離が近い母点を、当該画素についての最近接母点と定義し、同一の母点を最近接母点とする画素の集合により1つの単位領域が構成されるように、二次元平面上に複数の単位領域を定義する単位領域定義部240(図12のステップS4を実行する構成要素)と、単位領域内の各画素については、1つの単位領域内の画素値の各値の出現頻度がほぼ均一となり、かつ、土手領域に対する距離に応じて画素値がほぼ昇順もしくはほぼ降順となるように、それぞれ所定の画素値を決定し、土手領域内の各画素については、変換後のハーフトーン画像上でインキが付着しない領域となるように、それぞれ所定の画素値を決定する画素値決定部250(図12のステップS5を実行する構成要素)と、画素値が決定された画素配列をスクリーン画像30として出力するスクリーン画像出力部260と、によって構成される。