(57)【特許請求の範囲】
【請求項１】
ｎ×ｎ（ｎは８以上の整数）ドットからなるマトリクス内の形成ドット数をｍ（ｍは任意の整数）ドットずつ変化させることによってｎ×ｎ／ｍの階調レベルを表現する固定パターン方式の疑似階調表現方法であって、
各階調レベルに対応したマトリクス内のドット形成規則を、低い階調レベルから高い階調レベルまで、少なくとも３つの段階に分け、各段階における低い階調レベルから高い階調レベルまでのドット形成規則が、
第１の段階では、ｎ×ｎ／１６の数のドットが形成されるまで、ドット同士が互いに離れるように、既に配置されているドットの間の最も空いた位置にドットを縦横及び斜め方向のテクスチャを排除して分散的に配置し、
第２の段階では、前記第１の段階で配置されたドットを核として、連続するドットの島同士が結合しないように、縦横及び斜め方向のテクスチャを排除して順次ドットを延ばし、
第３の段階では、前記第２の段階で形成された異なるドットの島同士が結合されてしまう前に、各島につながらない新たなドットを配置して、この新たなドットを核として、低い階調レベルから高い階調レベルにかけて順次ドットを延ばしていく規則を含むことを特徴とする疑似階調表現方法。
【請求項２】
前記第１の段階で前記マトリクス内に配置されるドットの位置は、
前記マトリクス内に複数のドットをランダムに配置し、
各ドットをそれに最も近いドットから所定距離だけ離れるように移動させる処理を所定回数繰り返すことにより決定されるものであることを特徴とする請求項１記載の疑似階調表現方法。
【請求項３】
表現すべき階調レベルのうち、低階調レベル側の半分のドット形成パターンを記憶し、高階調レベル側の半分のドット形成パターンは、低階調レベル側のドット形成パターンの反転パターンとすることを特徴とする請求項１又は２記載の疑似階調表現方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、白黒写真やカラー写真等の階調を持つ画像を、２値のドットで階調表現する際の疑似階調表現方法に関する。
【０００２】
【従来の技術】
ラスタプロッタにおいては、例えばシアン、マゼンタ、イエロー、ブラックの４色の基本色の場合、この４色に加え、混合色のレッド、グリーン、ブルーの計７色、地の色のホワイトを入れても８色しか表現することができない。しかし、従来より様々な手法により、擬似的に中間の色を作り出す工夫がなされている。例えば、一般的に知られている手法にパターンディザ法がある。このパターンディザ法は、例えば４×４ドットのマトリクスに２値化のためのしきい値を振り分け、階調レベルに応じて形成ドット数を増やしていくことにより、擬似的に階調表現を使用とするものである。図８に、しきい値マトリクスの例を示す。同図（ａ）はＢａｙｅｒ型、同図（ｂ）は網点型、同図（ｃ）は渦巻き型のしきい値マトリクスをそれぞれ示している。
【０００３】
単純なアルゴリズムで疑似階調表現を試みるパターンディザ法に対して、アルゴリズムは複雑で計算量も多いが、一般的には写真などのフルカラー画像を処理するのに適しているのが誤差拡散法に代表される手法である。この手法は、着目ドットを最も近い基本色又はそれらの混合色で置き換え、この置き換えによって生じる本来の色との誤差を、後々の色の置き換えのときに補正していくという手法である。
【０００４】
【発明が解決しようとする課題】
前述したパターンディザ法は、比較的簡単なアルゴリズムで疑似階調表現が可能であり、計算量も少なく高速に処理できるという利点がある反面、同一パターンの繰り返しが見えるなど、画質的には粗さが目立つという欠点がある。
一方、誤差拡散法は、ドット毎のきめ細かな補正がなされるので比較的画質の良い疑似階調処理が可能になるという利点がある反面、１ドット毎に誤差補正演算が行われるため、計算量が膨大になってしまうという欠点がある。また、薄い色の塗りつぶしでは誤差が蓄積されるまでは補正がなされなかったり、急な濃度変化のある画像に対しては補正が追いつかず、画質が極端に低下するという問題もある。更に、計算は走査しながらなされるので、ラスタデータ等では有効であるが、ベクタデータに対して処理を行うのは困難である。
【０００５】
本発明は、このような点に鑑みなされたもので、画質良好で、計算量も少なく、ベクタデータに対する処理も可能な疑似階調表現方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明に係る疑似階調表現方法は、ｎ×ｎ（ｎは８以上の整数）ドットからなるマトリクス内の形成ドット数をｍ（ｍは任意の整数）ドットずつ変化させることによってｎ×ｎ／ｍの階調レベルを表現する固定パターン方式の疑似階調表現方法であって、各階調レベルに対応したマトリクス内のドット形成規則を、低い階調レベルから高い階調レベルまで、少なくとも３つの段階に分け、各段階における低い階調レベルから高い階調レベルまでのドット形成規則が、第１の段階では、ｎ×ｎ／１６の数のドットが形成されるまで、ドット同士が互いに離れるように、既に配置されているドットの間の最も空いた位置にドットを縦横及び斜め方向のテクスチャを排除して分散的に配置し、第２の段階では、前記第１の段階で配置されたドットを核として、連続するドットの島同士が結合しないように、縦横及び斜め方向のテクスチャを排除して順次ドットを延ばし、第３の段階では、前記第２の段階で形成された異なるドットの島同士が結合されてしまう前に、各島につながらない新たなドットを配置して、この新たなドットを核として、低い階調レベルから高い階調レベルにかけて順次ドットを延ばしていく規則を含むことを特徴とする。
【０００７】
即ち、従来のパターンディザ法における画質劣化の一つの要因は、階調レベルが低レベルから高レベルに変化するのに合わせてマトリクス内でドットが縦横に規則正しく増加していくことから、テクスチャノイズが目立つという点が挙げられる。また、画質劣化の他の一つ要因は、あるレベルから次のレベルへと階調レベル変化しドット数が増加するときに、ドットの塊同士がくっついて、その部分が濃度ムラのパターンとなって現れるという点が挙げられる。
【０００８】
この発明によれば、マトリクス内の形成ドット数を階調レベル変化に応じて複数ドットずつ変化させる点に加え、第１の段階では、ドット同士が互いに離れるようにドットをランダム且つ分散的に配置し、第２段階では、第１の段階で配置されたドットを核として、連続するドットの島同士が結合しないように、ランダムな方向に順次ドットを延ばしていくようにしているため、ドットの規則的配置及びドットの部分的集中がなく、滑らかで良好な画質が得られる。また、この発明によれば、階調レベルに応じた固定パターン方式であるから、誤差拡散法のようにドット毎の計算が不要であり、高速処理が可能であると共に、ベクタデータによる処理も容易である。
【０００９】
なお、ｎを８以上の整数としているのは、８未満であると、マトリクス内に複数のドットをランダムに分散配置するのが困難になると同時に、島の成長による階調表現も困難になり、規則的ノイズや濃度ムラが発生してしまうからである。
【００１０】
階調レベルに対応したマトリクス内のドット形成規則として第２の段階に続く第３の段階を備え、この第３の段階では、第２の段階で形成されたドットの島同士が結合されてしまう前に、各島につながらない新たなドットを配置して、この新たなドットを核として、低い階調レベルから高い階調レベルにかけて順次ドットを延ばしていくようにすれば、更に島同士の連結による極端な濃度変化が避けられ、更に滑らかで良好な画質が得られる。
【００１１】
また、表現すべき階調レベルのうち、低階調レベル側の半分のドット形成パターンを記憶し、高階調レベル側の半分のドット形成パターンは、低階調レベル側のドット形成パターンの反転パターンとすれば、記憶すべきパターンのデータ量も本来の記憶量の１／２とすることができ、パターンを求める時間及びパターンを保持するためのメモリ容量を半分に削減することができる。
【００１２】
なお、前記第１の段階でマトリクス内に配置されるドットの位置は、例えばマトリクス内に複数のドットをランダムに配置し、各ドットをそれに最も近いドットから所定距離だけ離れるように移動させる処理を所定回数繰り返すことにより決定することができる。また、前記第１の段階でマトリクス内に配置されるドットの位置は、既に配置されているドットの間の最も空いた位置に決定するようにすればよい。
【００１３】
【発明の実施の形態】
以下、図面を参照して、この発明の好ましい実施の形態について説明する。
図１は、本発明に係る疑似階調表現方法を実現するためのプロッタの構成を示すブロック図である。
図示しないメモリから読み出された階調データは、その印字位置を示すアドレスＸ，Ｙと共に２値化回路１に供給される。なお、２値化回路１に供給されるアドレスＸ，Ｙは、マトリクスにおける位置を指定するものであるから、マトリクスサイズが例えば１６×１６ドットであるとすると、下位４ビットだけが２値化回路１に供給されることになる。２値化回路１は、内部に図２に示すようなしきい値パターンを記憶したＲＯＭテーブルを備えており、このＲＯＭテーブルのアドレスＸ，Ｙで指定されたドット位置のしきい値と、入力された階調データとの大小関係を比較して、「階調データ＜しきい値データ」のときは０、「階調データ≧しきい値データ」のときは１を出力する。この２値化出力はメモリ２に格納され、更に印刷処理部３にてインクジェットヘッド、サーマルヘッド等によりプリント出力される。
【００１４】
次に、図２に示すようなしきい値パターンの作成方法と、このしきい値パターンにより形成されるドットについて説明する。
いま、マトリクスサイズを１６×１６ドット、階調レベルを０，１，２，…，３２とすると、レベル０ではドットの形成なし、レベル１では、８つのドットが形成され、以後、レベルが１つ上がる度に８つずつドットが増加していき、レベル３２では、２５６個のドットが形成される。このレベル０〜レベル３２までの過程を、低レベル側から第１段階、第２段階及び第３段階の３つの段階に分け、各段階でそれぞれ異なるドット形成規則を適用する。
【００１５】
（１）第１段階
図３は、レベル１の８つのドットの位置を決定する方法を説明するための図である。最初は同図（ａ）に示すように、マトリクスに８つのドットをランダムに配置する。次に、これらのドット全てに対して、「着目ドットに最も近いドットを探し、その最も近いドットから一つだけ離れるように着目ドットを移動させる。」という処理を複数回繰り返す。同図（ｂ）は、１回の移動によって各ドットが１ドットずつ離れたことを模式的に示しており、同図（ｃ）は、２０回の移動によって各ドットが、ランダム性を保ちながらかなり分散的に配置されたことを示している。
【００１６】
図４（ａ）に示すように、８つのドットが分散的に配置されたら、同図（ｂ）に示すように、既に配置された８つのドットに近づかないように、できるだけ空いたところに次の８つのドットを形成する。このとき、最も空いている位置を探すのに、他のドットからの距離の２乗の反比例値を用いる。なお、マトリクスサイズがこれよりも大きい場合、例えば１２８×１２８ドット程度の場合には、全てのドットを計算対象にすると計算量が膨大になるので、計算範囲を着目位置から例えば±２０ドット程度に制限すればよい。
【００１７】
距離計算の考え方としては、例えば図５（ａ）に示すように、縦、横に１ドットずつ進み、何ドット進んだかを距離とする方法、同図（ｂ）に示すように、斜め方向に１ドット進んだ場合も歩数としてカウントする方法、同図（ｃ）に示すように、各ドット間を結んだ直線の距離を忠実に再現するユークリッド距離による方法等がある。但し、（ａ）による方法は、斜め方向にドットが並びやすくなり、（ｂ），（ｃ）の方法は、縦横方向にドットが並びやすくなる。そこで、そのような特定のパターンが現れないように、それぞれの計算方法をランダムに選択する。但し、本発明者の実験によれば、（ａ），（ｂ），（ｃ）を２：１：３の重み付けで選択すると最も模様が現れない自然な画像が得られた。
【００１８】
（２）第２段階
第１段階でドット間の隙間に、ドットを連続的に埋めていくと、ある時点で密度の偏りが発生する瞬間が発生する。これを１次元モデルを用いて簡単に説明する。
いま、一定の長さ（例えば８ドット分）の線上にドットを配置していくことを考える。なるべく他のドットとの距離を一定に保とうとした場合、例えば次のようになる。
【００１９】
【表１】
１ドット目  ＿＿＿＿●＿＿＿
２ドット目  ●＿＿＿●＿＿＿
３ドット目  ●＿＿＿●＿●＿
４ドット目  ●＿●＿●＿●＿
５ドット目  ●＿●●●＿●＿
【００２０】
３ドット目を形成したときには、中央と左のドット間距離は、４ドットであるのに対し、中央と右のドット間距離は２ドットしかない。この差は２倍となっている。また、５ドット目を形成したときには、中央付近で３ドットも連続してドットが並んでしまっている。このような部分は、パターンとしてみたとき、極端に目立つ模様の原因になる。これは、あまりにも均一にドットを形成しようとしたからである。これを解決するためには、ドットをある程度均一に配置したら、以下に示すように、形成されたドットを延ばしていくようにすればよい。
【００２１】
【表２】
１ドット目  ＿＿＿＿●＿＿＿
２ドット目  ＿●＿＿●＿＿＿
３ドット目  ＿●＿＿●＿●＿
４ドット目  ＿●●＿●＿●＿
５ドット目  ＿●●＿●＿●●
【００２２】
二次元パターンの場合においても、第１段階である程度のドットが分散的に配置されたら、これらドットを核として、各島同士が結合されないようにして、ドットをランダムな方向に延ばしていく。ランダムな方向とするのは、縦横又は斜め方向のテクスチャノイズの発生を防止して、滑らかな階調を得るためである。図６（ａ）は、最初の８ドットからドットを１ドットずつ延ばした状態を示し、同図（ｂ）は、更に次の８ドットからドットを１ドットずつ延ばした状態を示している。ドットの成長方向は、縦横斜めバラバラであることが理解できる。なお、延ばす方向は、できるだけドットが空いている方向であり、島の両端、中間位置どこからでも延ばせるようにする。空いている方向を求めるには、前述した距離計算を行う。第２段階では、このようにして図７（ａ）に示すように、島同士が連結される直前まで島を成長させていく。
【００２３】
（３）第３段階
成長した島同士が連結すると、その瞬間に濃度が急激に変化するので、濃度ムラの原因になる。そこで、図７（ａ）に示すように、島同士が連結される直前まで島が成長されたら、一旦、島の成長を停止して、同図（ｂ）に示すように、各島の間の最も空いたスペースに新たなドットを形成し、これを新たな核として島を成長させていく。これが第３段階である。このように新たな島を成長させていくと、やがて島同士が連結されることになるが、比較的高濃度レベルでの連結は、低濃度レベルでの連結に比べ、ムラとなることが少ない。
【００２４】
このようにドットを成長させていけば、各階調レベル間での濃度変化が極めて滑らかになり、目立つパターンやテクスチャノイズの発生も少なく、極めて精度の良い疑似階調表現が可能となる。
【００２５】
なお、以上は、説明の便宜上、１６×１６ドットのマトリクスを例としたが、例えば１２８×１２８ドットのマトリクスを用い、２５６階調を表現する場合には、例えばレベル０から１６まで１レベル毎に６４ドットずつドットを分散的にランダムに増やし（第１段階）、１０２４のドットが形成されてから、これらドットを核として島を形成していくのが望ましい（第２段階）。即ち、あまりにもドットが少ない状態で島を成長させると、ドットの連結が目立ってしまい、またあまりにもドットが詰まってから島を成長させると、ドットを形成したときに他のドットと連結されてしまう確率が高くなるので好ましくない。本発明者の実験によれば、１つの島が成長するスペースとしては１６ドット程度が適切である。従って、本発明における好ましい態様は、ｎ×ｎのマトリクスを使用してｍ階調の表現を行う場合、ｎ×ｎ／ｍドットずつドットを形成していけば良いが、最初は、形成ドット数がｎ×ｎ／１６になるまで、第１段階でのドット形成を行い、以後、第２段階に移行するようにすると、島の成長は、１６ドットの範囲内で行われることになる。
【００２６】
ドット形成規則は、上述したしきい値パターンとして記憶する他、各階調レベルにおける固定ドットパターンを直接記憶するようにしても良い。また、例えば２５６階調を表現する場合、パターンを記憶するのはレベル１２８までとし、レベル１２９からはレベル１２７までの反転パターンとするようにしても良い。この場合、パターンを求める時間、求めたパターンを保持するためのメモリ容量を、全てのパターンを求める場合に比べて１／２に削減することができる。
【００２７】
この発明は上記実施例に限られない。例えば実施例では、特にドットの色については述べなかったが、基本色についてそれぞれ上述した処理を行うことにより、フルカラーの画像が形成可能である。また、本願発明は、固定パターン方式であるから、計算が簡単であり、ベクトルデータに対して処理することができる。
【００２８】
【発明の効果】
以上述べたようにこの発明によれば、マトリクス内の形成ドット数を階調レベル変化に応じて複数ドットずつ変化させる点に加え、第１の段階では、ドット同士が互いに離れるようにドットをランダム且つ分散的に配置し、第２段階では、第１の段階で配置されたドットを核として、連続するドットの島同士が結合しないように、ランダムな方向に順次ドットを延ばしていくようにしているため、ドットの規則的配置及びドットの部分的集中がなく、滑らかで良好な画質が得られる。また、この発明によれば、階調レベルに応じた固定パターン方式であるから、誤差拡散法のようにドット毎の計算が不要であり、高速処理が可能であると共に、ベクタデータによる処理も容易である。
【図面の簡単な説明】
【図１】  この発明の一実施例に係るプロッタの要部構成を示すブロック図である。
【図２】  同実施例の２値化回路に用いられるしきい値パターンを示す図である。
【図３】  同パターンの作成方法を説明するための図である。
【図４】  同パターンの作成方法を説明するための図である。
【図５】  同パターンの作成における距離計算の方法を説明するための図である。
【図６】  同パターンの作成方法を説明するための図である。
【図７】  同パターンの作成方法を説明するための図である。
【図８】  従来のパターンディザ法を説明するための図である。
【符号の説明】
１…２値化回路、２…メモリ、３…印刷処理部。
【図１】
0003905650.tif 000002
【図２】
0003905650.tif 000003
【図３】
0003905650.tif 000004
【図４】
0003905650.tif 000005
【図５】
0003905650.tif 000006
【図６】
0003905650.tif 000007
【図７】
0003905650.tif 000008
【図８】
0003905650.tif 000009