JP2002044446A - 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法 - Google Patents

画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法

Info

Publication number
JP2002044446A
JP2002044446A JP2000220179A JP2000220179A JP2002044446A JP 2002044446 A JP2002044446 A JP 2002044446A JP 2000220179 A JP2000220179 A JP 2000220179A JP 2000220179 A JP2000220179 A JP 2000220179A JP 2002044446 A JP2002044446 A JP 2002044446A
Authority
JP
Japan
Prior art keywords
threshold
matrix
dot
threshold matrix
final
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000220179A
Other languages
English (en)
Inventor
Kanya Ishizaka
敢也 石坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2000220179A priority Critical patent/JP2002044446A/ja
Publication of JP2002044446A publication Critical patent/JP2002044446A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

(57)【要約】 【課題】 出力を対象とする機器で画像を出力したとき
に、元画像の階調数を減らさずに出力できるような閾値
マトリックスの作成法が求められている。 【解決手段】 閾値マトリックスを作成するに際し、先
ず、閾値調整量Nb,Nwを決定し(ステップS1)、
次に1階調あたりの網点成長量dsを決定し(ステップ
S2)、次いで全階調数colSの網点スクリーンを生
成し(ステップS3)、しかる後閾値の再振り分けを行
う(ステップS4)ことにより、出力対象機器用に閾値
調整をした閾値マトリックスを得る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像処理装置およ
び画像処理方法、ならびにハーフトーン画像生成用閾値
マトリックスの作成方法に関し、特に多階調画像をハー
フトーン化(二値化)して処理する画像処理装置および
その処理方法、ならびにそのハーフトーン化の際に用い
る閾値マトリックスの作成方法に関する。
【0002】
【従来の技術】画像処理装置、例えばゼログラフィーに
よるプリンタ装置では、通常、網点形成法によるハーフ
トーン化が用いられている。ゼログラフィーでは、単独
のドットを複数個出力するよりも、クラスター状に固め
て出力した方が安定した画像出力が得られるという性質
があり、この点で網点形成法は、ゼログラフィーに適し
たハーフトニング法であるということができる。
【0003】しかしながら、網点を用いるにしても、ハ
イライト部(低濃度部)においては個々の網点が成長し
てクラスターを形成しないと、安定した出力が得られな
い。実際には、記録紙にトナーが乗らないなどの理由に
より色が出ない場合がある。また、ドットゲイン(網点
太り)の現象によって、シャドー部(高濃度部)が実際
の色よりも濃く出力されるといった現象が発生する。
【0004】使用するゼログラフィーIOT(画像出力
部)の性能や解像度によって違いはあるが、特に120
0dpi以上(600×4800などのハイアドレッサ
ビリティも含む)の高解像度出力の場合には、1画素が
より小さくなるために、単独ドットでの出力がより困難
になってくる。したがって、ハイライト部の色の表れが
遅くなるとともに、シャドー部ではドットゲインの影響
がさらに強くなり、白ドットがつぶれてべた塗り状態に
なる傾向が高まってくる。
【0005】このように、一つにはハイライト部、シャ
ドー部がつぶれてしまうという現象が起こるため、この
つぶれなどを見込んで、ハーフトーン化処理を行う前に
TRC補正と呼ばれる階調補正を行って、元の多階調画
像のトーンカーブ修正を行うのが通常である。特に元画
像のハイライト部は濃く、シャドー部は薄くされる。こ
の処理はハーフトーンの観点から見ると、中間調部分の
階調を全体階調に引き伸ばすことと同じであり、結果と
して、絶対的な階調数は減ってしまうことになる。
【0006】網点スクリーンを形成する閾値マトリック
スの理想的な閾値配置量は、0から必要階調数分までの
閾値がほぼ等量配置されたものである。このようなスク
リーンでは、階調数が充分に確保され、濃度の変化が安
定した画像が得られる可能性が高い。しかしながら、上
記の問題により、TRC補正が行われると、ハイライト
部とシャドー部に相当する閾値が無駄になり、階調数が
減少することになる。
【0007】以上のような理由により、出力を対象とす
る機器で画像を出力したときに、元画像の階調数を減ら
さずに出力できるような閾値マトリックスの作成法が求
められている。
【0008】これに対して、特開平8−6237号公報
に記載された網点画像の作成方法が提案されている。当
該公報に記載の作成方法は、網点画像を作成する際に、
後工程で再現可能な最小ドットの大きさ以上のドットを
用いるという方法である。この方法を用いると、ハイラ
イト部、シャドー部の濃度の立ち上がりが従来よりも正
確で、また階調数も充分にとれる。
【0009】図27に、この作成方法で閾値を修正した
閾値マトリックスの例を示す。同図において、(A)は
調整前、(B)が調整後をそれぞれ示しており、網掛け
部分が閾値調整されている。この閾値マトリックス例か
ら明らかなように、ハイライト部においてドットが固め
られて出力されるようになっていることがわかる。
【0010】
【発明が解決しようとする課題】しかしながら、上記の
従来技術では、ハイライト部、シャドー部でドットを出
力可能な大きさに集めて出力するに過ぎず、本質的な点
で単に網点の成長順序を変えているだけである。したが
って、ハイライト部とシャドー部では再現性を上げるこ
とはできるが、同時にスクリーンの線数が減ったり、濃
度変化特性が均一でないなどの問題が起こる。
【0011】すなわち、本質的に閾値の配置を、出力で
きる最小サイズの網点に規制しているだけである、換言
すれば、閾値マトリックス内に散らばっているハイライ
ト部に対応する閾値0,1,2,3,4,…などを、1
箇所に集めている効果が得られるに過ぎないため、閾値
の配分量も全濃度で均一であり、閾値0とそれ以外の閾
値とは同格である。
【0012】また、上記の理由により、ハイライト部の
ドットが初めから全て出力される訳ではないため、全て
のドットが出揃う濃度まではスクリーンの線数が低くな
り、ざらつきが現れることになる。特に出力機の解像度
があがると、出力される最小サイズの網点を構成するド
ットの数が増えるため、全ての網点が出揃うまでにはか
なりの階調数を必要とする。したがって、全てのドット
が出揃うまでの広い濃度範囲において線数低下もしくは
ざらつきが非常に目立つものと考えられる。
【0013】さらには、全てのドットが出揃うまでの濃
度成長が閾値マトリックス内で局所的であり、全てのド
ットが出揃った後は、逆に閾値マトリックス全体に亘っ
て均一になっている。したがって、濃度成長の統一性が
無いため、グラデーションの濃度変化の特性が、ドット
が出揃うまでの部分を境に異なってしまい、グラデーシ
ョンが荒れる可能性がある。
【0014】
【課題を解決するための手段】上記課題を解決するため
に、本発明では、先ず、出力対象機器のドット再現特性
からあらかじめ与えられた最終階調数以上に階調数を確
保して初期階調数を定め、次いでこの初期階調数を有
し、各閾値をとる画素数がそれぞれ均一かまたは1だけ
異なる初期閾値マトリックスを作成し、次いでこの初期
閾値マトリックスの閾値の中から長さが最終階調数と等
しい区間にある全閾値を選び出して各閾値を割り当て直
し、それ以外の閾値は0と最終階調数−1に割り振るこ
とで最終閾値マトリックスを作成する。そして、この最
終閾値マトリックスを用いて多階調画像をハーフトーン
化する。
【0015】これにより、多階調画像をハーフトーン化
して印刷した際に紙の上には出力されなくても、信号上
は、濃度0%において黒網点が出力され、各黒網点を構
成するドットの数がそれぞれ同一または1つだけ異なる
ようになり、さらに濃度100%において白網点が出力
され、各白網点を構成するドットの数がそれぞれ同一か
または1つだけ異なるようになる。したがって、ハイラ
イト部とシャドー部の紙の上でのドット出力開始点が、
それぞれ多階調画像におけるハイライト部とシャドー部
の濃度立ち上がり点と一致する。
【0016】ここで、黒網点、白網点などの表記は純粋
に色を意味している訳ではない。したがって、当然のこ
とながら、本手法はカラー出力用にも使用できる。例え
ば、C(シアン)、M(マゼンタ)、Y(イエロー)、
K(ブラック)の全てで本手法を用いれば、単色の階調
数だけでなく、2次色、3次色、…の階調数を増大させ
ることができる。これは、カラー出力において、再現可
能な色数が増大することと同値である。
【0017】
【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
【0018】図1は、本発明の一実施形態に係る画像処
理装置の構成の一例を示すブロック図である。図1にお
いて、本実施形態に係る画像処理装置10は、描画部
(色変換部)11、二値化処理部12および描画メモリ
13を有し、外部装置、例えばホストコンピュータ20
から入力される多値画像データに対して所定の処理を施
し、その処理後の画像データを画像出力部(IOT)3
0に対して出力する。
【0019】この画像処理装置10には、ホストコンピ
ュータ20から例えばR(赤)、G(緑)、B(青)の
8ビットの画像データが入力される。この画像データ
は、描画部11でCMYKの8ビットの画像データに色
変換されて二値化処理部12に供給される。この二値化
処理部12で二値化(ハーフトーン化)された画像デー
タは、描画メモリ13を経由して画像出力部30に供給
される。
【0020】二値化処理部12は、多値画像データをハ
ーフトーン化する処理部であり、図2に示すように、閾
値マトリックス記憶部21および比較部22を有する構
成となっている。閾値マトリックス記憶部21には、網
点スクリーンを形成する閾値マトリックスが予め格納さ
れる。比較部22は、入力される多値画像データと記憶
部21に格納されている閾値マトリックスから与えられ
る閾値データとを比較し、その比較結果に応じた二値化
データを網点画像データとして出力する。
【0021】上記構成の画像処理装置10において、二
値化処理部12でのハーフトーン化処理のために、閾値
マトリックス21に予め閾値マトリックスを格納してお
くことになるが、この閾値マトリックスの作成法、即ち
目的とする出力対象機器、特にゼログラフィー機用に閾
値調整をした閾値マトリックスを作成する方法が本発明
の特徴とするところである。
【0022】この閾値マトリックスの作成では、以下の
4ステップの処理を実行することにより、目的とするゼ
ログラフィー機用に閾値調整をした閾値マトリックスを
得る。すなわち、図3のフローチャートに示すように、
閾値調整量Nb,Nwを決定する工程(ステップS1)
と、1階調あたりの網点成長量dsを決定する工程(ス
テップS2)と、全階調数colSの網点スクリーンを
生成する工程(ステップS3)と、閾値の再振り分けを
行う工程(ステップS4)の各処理を実行する。以下、
各工程での処理について具体的に説明する。
【0023】先ず、閾値調整量Nb,Nwを決定する工
程(ステップS1)では、総階調数(最終的な階調数)
colE、マトリックスサイズw*hのスクリーンマト
リックスを作成する。このとき、作成する閾値マトリッ
クスの網点の核を配置し、核から網点を成長させてゆく
方向(網点形状)を決定する。そして、ドットの成長法
にしたがって、1ドットずつ各黒ドットを同時に成長さ
せながら、その都度、対象とするゼログラフィーIOT
の目的解像度で出力してゆく。
【0024】図4は、このような網点のテストの例を示
すものである(出力網点の一部を表示したもの)。個々
の網点の形状は場合により異なるが、クラスター量は一
定に増やしてゆく。この操作を行いながら、物理的に紙
に初めてトナーが乗ったときの網のクラスター量Nbを
求める。クラスター量Nbは、一般的に、次のように定
義される。
【0025】Nb=min{n|第n段階まで成長させたO
N網点をIOTで出力して、物理的に紙にトナーが乗
る}−1 ここで、ON網点とは、黒ドット(ONドット)の集合
を言うものとする。図4の例において、対象とするIO
Tで出力した場合に、クラスター量6のとき(右列上か
ら2番の状態)にはじめて紙上にトナーが確認されたと
すると、クラスター量Nbは上記の定義により、Nb=
5となる。
【0026】同様にして、OFF網点も成長させなが
ら、初めて紙上にOFF網点が確認できたときのクラス
ター量Nwを求める。クラスター量Nwは、一般的に、
次のように定義される。 Nw=min{n|第n段階まで成長させたOFF網点をI
OTで出力して、物理的に紙にOFFドットが乗る}−
1 ここで、OFF網点とは、べた塗りの中での白ドット
(OFFドット)の集合を言うものとする。
【0027】なお、IOTの出力にはむらがあり、とき
どきによって結果が異なる。このような場合を考えて、
何度も測定した平均をとるようにするのが好ましい。ま
た、クラスター量Nb,Nwの定義自体は理想的な形を
しているが、実際に「物理的に紙にトナーが初めて乗
る」ときのクラスター量を正確に求められない場合も考
えられる。この場合もおおよその点を求めるようにして
おく。
【0028】次に、1階調あたりの網点成長量dsを決
定する工程(ステップS2)での処理について説明す
る。ステップS1において定められたクラスター量N
b,Nwは、それぞれ濃度0%と100%の時々で点灯
するONドット、OFFドットのクラスター量を意味し
ている。したがって、これらのドットは階調を表現する
ためには使用しない。階調を表現するのは、マトリック
ス内の残りの画素を用いて行うことになる。
【0029】先ず、マトリックス内の階調を表現するの
に使用し得るドットの総数Dsを、次式で求める。 Ds=w・h−(Nb+Nw)・dn …(1) ここで、dnはマトリックス内の総格子点数である。
【0030】また、階調が1つ増大する度にマトリック
ス内で新たに点灯するドット量(網点成長量)dsは、
次式で与えられる。 ds=Ds/colE …(2) ここでは、dsは実数で与えておき、小数部分は切り捨
てない。さらに、初めに作成する閾値マトリックスの階
調数(初期階調数)colSは、 colS=int(w・h/ds) …(3) で与えられる。ここで、intは小数部分を切り捨てる
関数を意味する。
【0031】次に、全階調数colSの網点スクリーン
を生成する工程(ステップS3)での処理について説明
する。この工程では、全階調数colSの閾値マトリッ
クスを生成する。基本的には、全閾値に亘って網点成長
量が(int)dsと(int)ds+1の閾値が均等
になるように作成されるようにする。つまり、基本的な
閾値の配置は、図5のようになっている。図5におい
て、横方向が閾値の値を、縦方向がマトリックス内に存
在する該当閾値の数をそれぞれ表している。
【0032】ここでは、こうして得られた初期閾値マト
リックスの中から長さがcolEである区間を選んで新
たな閾値に採用することを行う。ここで、初期階調数c
olSを求める際に、w・h/dsの小数部分を切り捨
てており、この部分で数ドット分の誤差がでる。
【0033】上記の方法では、この誤差分が(int)
ds+1の方にも上乗せされている。しかし、dsが整
数であって、w・h/dsが整数でない場合があり、こ
の場合は、図5のように一部の閾値でds+1個あるも
のがでてくる。しかし、dsが整数なので、できれば最
終的なマトリックスは全閾値に亘って同じds個である
方が好ましい。そこで、w・h/dsを切り捨てる際の
誤差を適当に配分することを行う。
【0034】すなわち、図5に示すように閾値を配する
のだが、w・h/dsの切り捨て分の誤差に相当するA
b,Awを計算し、その分を最終的な閾値マトリックス
に関係しない閾値(ハイライト部、シャドー部)に割り
振ってしまう。 Ab=dn*Nb-(int)(ds*(double)((int)((double)(dn*Nb)/ds))) …(4) Aw=dn*Nw-(int)(ds*(double)((int)((double)(dn*Nw)/ds))) …(5) ここで、誤差分の全画素数Ab+Awがdsを上回って
いる場合には、階調数を減らして対応する。したがっ
て、全階調数colSは次の式で再定義する。colS
=colS−(int)(Ab+Aw)/(int)(ds)
…(6)
【0035】以上で誤差を抽出したので、改めて初期閾
値マトリックスを作成する。図5に示した通り、全階調
数colSのマトリックスを作成するが、上記AbとA
w分の誤差を、図6に示すように、閾値0とcolS−
1に割り振ったマトリックスを作成する。
【0036】次に、閾値の再振り分けを行う工程(ステ
ップS4)での処理について説明する。この処理では、
ステップS3で得られた全階調数colSの初期閾値マ
トリックスの閾値をcolE階調に置き換えることで最
終的な閾値マトリックスを得る。具体的には、初期閾値
マトリックスの切り捨て閾値ObとOwを求めて、下記
の手順で閾値を配置し直す。
【0037】 Ob=(int)(dn*Nb/ds) …(7) Ow=colS-1-(int)(dn*Nw/ds) =Ob+colE-1 …(8)
【0038】閾値再配置手順: 初期閾値cが0≦c≦Ob :閾値を0にする 初期閾値cがOb≦c≦Ow :閾値からOb-1
を引いたものを新しい閾値とする 初期閾値cがOw≦c≦colS-1:閾値をcolE
-1にする
【0039】以上の4つの工程を経て、初期閾値マトリ
ックスから最終的な閾値マトリックスを得ることができ
る。なお、ステップS3で誤差分を初期閾値マトリック
スに配分しておくことで、dsが整数の場合には最終閾
値マトリックスの閾値は、0とcolE-1以外はすべて
マトリックス内にds個とることができる。
【0040】この初期閾値マトリックスから最終閾値マ
トリックスを得る工程は、図7のように説明することが
できる。図7は、上述した一連の閾値調整法の概念を示
したものである。図7において、横方向が閾値を、縦方
向がマトリックスに含まれる閾値の総数をそれぞれ表し
ている。調整済みマトリックスは、図7下のように、閾
値0とcolE-1の量が、IOTの性能に応じて大目に
設定されており、間の閾値が均等割りになっているとい
う性質を持つようになる。
【0041】本手法で作成した閾値マトリックスの閾値
例は、図27(従来例)に対応させると、図8に示すよ
うになる。図8において、(A)は調整前、(B)が調
整後をそれぞれ示しており、網掛け部分が閾値調整され
ている。図27との対比から明らかなように、閾値0が
増えており、その他の閾値が均等割りになっていること
がわかる。このように、従来の閾値調整法が実質的に網
点の成長順序を変えているのに対して、本手法では閾値
の量を調整するという概念を実現している。
【0042】続いて、初期閾値マトリックスの具体的な
作成法の一例について説明する。閾値マトリックスは、
通常、直交格子または斜交格子を用いて網点の核を生成
し、この核から目標の網点形状に合わせた成長を行うこ
とによって作成される。
【0043】ここで、空間座標に対して任意角度を持っ
た直交格子を閾値マトリックスに利用したスクリーンが
直交格子スクリーンと呼ばれ、格子の交わり角度が90
度以外のものを含む格子から作成されるスクリーン全般
が斜交格子スクリーンと呼ばれている。直交格子スクリ
ーンは、斜交格子スクリーンの特別な場合、即ち格子の
交わり角度が90度の場合である。このことから、斜交
格子スクリーンは、直交格子スクリーンよりも幅広いス
クリーンサイズ、角度、線数の条件を満たすことは明ら
かである。
【0044】斜交格子は、空間座標のx軸、y軸に対し
て、それぞれ角度θと角度ωの平行直線で作成する。こ
の場合、平行直線の線間隔は固定値をとらなくてはなら
ないが、図9に示すように、それぞれの角度が異なる線
間隔l1,l2をとることは可能である。ここでは、図
9のような斜交格子を平面上に容易に作成するための方
法について述べる。
【0045】ここでは先ず斜交格子を一般的に定義し、
その性質について考える。以下の数の組み合わせに対し
て、斜交格子系K{(w,h),(x1,y1),(x2,y
2)}を定義する。 (w,h),(x1,y1),(x2,y2) (w,h:実数,w,h>0, x1,x2,y1,y2:整数,x1,x2≠0) x1<0ならば、x1とy1の正負をそれぞれ逆転した
ものを、x1とy1に再度置き直す。x2<0ならば、
x2,y2に関しても同様にする。
【0046】図10に示すように、横幅w、縦幅hの長
方形をとる。次に、y1>0の場合の整数対(x1,y
1)に対応する平行直線群を定義する。長方形の左辺を
l1,右辺をl2とし、左辺l1の下端をp(1,
0)、上端をp(1,x1)、右辺l2の下端をp
(2,0)、上端をp(2,x1)とする。左辺l1を
x1等分し、各等分点にp(1,0)から近い順に、p
(1,1),…,p(1,x1−1)と名前を与える。
同様に、右辺l2をx1等分し、各等分点にp(2,
0)から近い順に、p(2,1),…,p(2,x1−
1)と名前を与える。
【0047】さらに、辺l2を点p(2,x1)側に延
長し、その延長線上で点p(2,x1)から距離(h/
x1)・|y1|だけ離れた点を補助点Qとする。補助
点Qは、x1>y1ならば、長方形の辺l2上の点p
(2,|y1|)に相当し、x1<y1ならば、補助点
Qは長方形外の延長線上にあることになる。図10
(a)〜(c)はx1>y1の場合について、同図
(d)〜(f)はx1<y1の場合について、点の配置
例をそれぞれ示している。
【0048】次に、点p(1,0)と補助点Qとを結ん
だ際の線分の傾きと同じ傾きを持つ直線で、点p(i,
j)(i=1,2,j=0,…,x1)を通る全ての直
線を長方形内に形成する。以上により、整数対(x1,
y1)に対応する平行直線群が形成される。y1<0の
場合には、長方形の右辺をl1、左辺をl2として、同
様の平行直線群を作成する。
【0049】整数対(x2,y2),y2>0に関して
は、同じ長方形の、今度は上辺をl1、下辺をl2と
し、上辺l1の左端をp(1,0)、右端をp(1,x
2)、下辺l2の左端をp(2,0)、右端をp(2,
x2)とし、上記と同様の平行直線群を作成する。y2
<0の場合には、下辺をl1、上辺をl2とし、同様に
作成する。以上により得られた長方形とその内部の平行
直線群を、まとめて斜交格子系K{(w,h),(x1,y
1),(x2,y2)}を定義する(以下、これを定義1と
称する)。
【0050】斜交格子系K{(w,h),(x1,y1),
(x2,y2)}と斜交格子系
【数1】 とは等しい(括弧内複号同順、括弧外複号任意)。さら
に、斜交格子系K{(w,h),(y2,−x2),(y1,
−x1)}も同じ斜交格子構造をとる(等しい)。また、
上下反転、左右反転はともにK{(w,h),(x1,−y
1),(x2,−y2)}で、90度回転はK{(w,h),
(x2,y2),(x1,y1)}となる。
【0051】2つの斜交格子系K{(w,h),(x1,y
1),(x2,y2)}に関して、それぞれの左辺と右辺を
接したものは斜交格子系K{(2w,h),(x1,y1),
(2x2,y2)}と同じ構造になり、また下辺と上辺を
接したものは、斜交格子系K{(w,2h),(2x1,y
1),(x2,y2)}と同じ構造になる。したがって、斜
交格子系K{(w,h),(x1,y1),(x2,y2)}で
平面をタイル状に覆うことができ、平面上に斜交格子を
することができる。
【0052】斜交格子系K{(w,h),(x1,y1),
(x2,y2)}に対して、上述したように得られる平面
上の斜交格子の格子点となるような斜交格子系内の点
を、斜交格子系の格子点と呼ぶものとする。但し、斜交
格子系の長方形の上辺および右辺上にある点を除外す
る。また、長方形の下辺と左辺の交点を斜交格子系の原
点と呼び、原点から下辺方向にx軸、左辺方向にy軸を
とった際の(x,y)座標値を格子系内の座標と定義す
る。
【0053】斜交格子系K{(w,h),(x1,y1),
(x2,y2)}に関して、次の4つの性質が成り立つ
(以下、これを性質1と称する)。 (1)平行直線群の角度は、それぞれ平面のx軸、y軸
方向に対して以下で与えられる。 tan-1(hy1/wx1), tan-1(wy2/hx2) (2)平行直線群の平行直線間の距離は、それぞれ以下
で与えられる。 w・h/√(w2x12+h2y12), w・h/√(h2x22+w2y22) (3)斜交格子系の格子点数は、x1・x2+y1・y
2で与えられる。 (4)以下の数が共に整数ならば、斜交格子系の全格子
点は整数座標をとる。 w・x1/(x1・x2+y1・y2), h・y1/(x1・x2+y1・y2) なお、(3)の値は、長方形の面積を、斜交格子系内に
ある平行四辺形の面積で割ることによって得ることがで
きる。
【0054】例えば、斜交格子系K{(72,84),
(7,2),(4,−2)}は、図11に示すようになる。
図11では、便宜的に格子点に黒点を付して示してい
る。また、性質1の(1)〜(3)より、 ・平行直線群の角度:tan-1(1/3),tan
-1(−7/12) ・平行直線間の距離:11.384…,16.545… ・格子点数 :24(図11の黒点に相当) となり、性質1の(4)の数を計算すると、共に整数ゆ
え、全格子点は整数座標をとる。
【0055】上述のようにして得られた斜交格子系は、
先述した通り平面をタイルで覆うことができるため、ス
クリーンのマトリックスとして使用することが可能であ
る。以下、この斜交格子系をそのまま斜交網点スクリー
ンに使用するための方法と、その際の性質、さらには具
体的なアルゴリズムについて述べる。
【0056】斜交格子系K{(w,h),(x1,y1),
(x2,y2)}を斜交スクリーンへ適用するために、先
ず、横幅w、縦幅h(w,hは正の整数)の空のスクリ
ーンマトリックスを用意する。そして、斜交格子系K
{(w,h),(x1,y1),(x2,y2)}内の格子点を
この空のスクリーンマトリックスへ写像する。この際
に、斜交格子系の格子点が整数座標をとっている場合に
は、そのままマトリックス内に置き換えれば良いが、整
数座標値をとらない場合には、格子点の座標値に最も近
い整数座標をマトリックス内の格子点として採用する。
【0057】以上により、スクリーンマトリックス内に
格子点が定められる。後は、この格子点から網点を成長
させていき、最終的にスクリーンマトリックスを得る。
【0058】ここで、斜交格子系K{(w,h),(x1,
y1),(x2,y2)}から、サイズがw×hの解像度d
w ×dh [dot/inch]用斜交網点スクリーンマトリック
スを作成するとする。このとき、先の性質1から次のこ
とが言える。すなわち、斜交格子系K{(w,h),(x
1,y1),(x2,y2)}から、サイズw*hの斜交ス
クリーンを作成し、解像度dw ×dh [dot/inch]で出
力するとき、出力されるスクリーンは以下の性質を持つ
(以下、これを性質2と称する)。
【0059】・斜交格子角(単位:度): tan-1(dw ・h・y1/dh ・w・x1), tan-1(dh ・w・y2/dw ・h・x2) ・線数(単位:線/inch): √(dh 22x12+dw 22y12)/w・h, √(dw 22x22+dh 22y22)/w・h ・分解能(単位:dot/平方inch): dw ・dh (x1・x2+y1・y2)/w・h ・全体での相当線数(単位:線/inch): √dw ・dh (x1・x2+y1・y2)/w・h
【0060】このように、斜交スクリーンでは、一つの
マトリックス内に異なる2つの角度と線数が含まれてい
る。また、特に2つの線数の差が大きい場合には、直交
スクリーンと単純に線数の比較ができなくなる場合があ
る。そのため、「1平行inchあたりのドット量」の
概念を、分解能を図る指標として導入し、この値の平方
根をマトリックス全体での相当線数とする。
【0061】上記の式を用いれば、サイズw*hの解像
度dw ×dh [dot/inch]用斜交網点スクリーンを作成す
る際に、目的の網点角度、線数を満たすようにパラメー
タx1,x2,y1,y2を選ぶことができる。また、
性質1の(4)を用いれば、斜交格子系の格子点が全て
の整数座標となる条件を判断できる。斜交格子系の格子
点が全て整数座標であると、後で述べるように、マトリ
ックス全体の生成が行いやすく、出力画像が良好である
という性質がある。
【0062】また、より一般に、斜交格子系K{(w,
h),(x1,y1),(x2,y2)}のパラメータを変動
させて調べることにより、目的の網点角度、線数、スク
リーンサイズを満たし、かつ整数座標をとるスクリーン
マトリックスが存在するかどうかを調べることも可能で
ある。このようにして、最適な条件をあらかじめ求めた
上で、スクリーンマトリックスを作成することが可能で
ある。
【0063】なお、性質2において、2つの斜交角に関
する線数が共に全体での相当線数よりも大きくなる場合
があるが、この場合には、擬似的に別の角度の格子が低
線数で入ってくる場合があるので注意が必要である。一
般には、2つの斜交角に関する2つの線数の間に、全体
での相当線数が挟まれるような斜交格子系が好ましいと
言える。
【0064】図11の斜交格子系K{(72,84),
(7,2),(4,−2)}から2400dpi用72×8
4サイズ斜交スクリーンマトリックスを作成すると、 ・斜交格子角度:tan-1(1/3),tan-1(−7
/12) ・線数:211,145[線/inch] ・分解能:22857[dot/平方inch] ・全体での相当線数:151[線/inch]相当 となり、性質1の(4)の数を計算すると、共に整数ゆ
え、全格子点は整数座標をとる。
【0065】続いて、実際に、上記の斜交格子を用いて
斜交スクリーンを作成するアルゴリズムについて述べ
る。本アルゴリズムは、次の3ステップからなる。すな
わち、斜交スクリーンを作成するには、図12のフロー
チャートに示すように、パラメータを準備する工程(ス
テップS11)と、斜交格子系をマトリックス内に作成
する工程(ステップS12)と、マトリックス内に作成
された斜交格子系の格子点から網点を成長させ、全階調
を割り当てる工程(ステップS13)の各処理を実行す
る。以下、各工程での処理について具体的に説明する。
【0066】先ず、パラメータを準備する工程(ステッ
プS11)では、斜交格子系のパラメータおよびスクリ
ーンパラメータとして、以下の数を変数として導入す
る。 (1)マトリックスサイズ:w*h (2)斜交格子パラメータ1:x1,y1 (3)斜交格子パラメータ2:x2,y2 (4)スクリーンの全階調数:colS (5)微調整パラメータ:(α1,α2) (0<α
1,α2<1) (6)総格子点数:dn=x1*x2+y1*y2 (7)斜交格子周期1:gcd(x1,y1) (gc
d(x,y)は、x,yの最大公約数) (8)斜交格子周期2:gcd(x2,y2) (実際
には使用しない) (9)ドット間ステップ量1:(dx1,dy1)=
{(w*x1)/dn, (h*y1)/dn} (10)ドット間ステップ量2:(dx2,dy2)=
{(w*y2)/dn, (h*x2)/dn} (11)1階調あたりの総ドット数:ds=(w*h)/
colS
【0067】ここで、ドット間ステップ量は、図13に
示すように、斜交格子を構成する単位ベクトルに相当す
るベクトルである。先述した性質1の(4)の2つの数
値は、dx1,dy1を意味している。
【0068】次に、斜交格子系をマトリックス内に作成
する工程(ステップS12)での処理について、図14
のフローチャートを用いて説明する。
【0069】本工程においては、マトリックス内に斜交
格子系K{(w,h),(x1,y1),(x2,y2)}の格
子点を定めるに際し、先ず、ドット位置のカウント数C
を0にするとともに、仮ドット位置として(x,y)=
(−dx1−dx2+α1,−dy1−dy2+α2)
を与え(ステップS21)、次いでカウント数Cをイン
クリメントする(ステップS22)。
【0070】次に、C−1がdn/gcd(x1,y
1)で割り切れるか否かを判断し(ステップS23)、
割り切れないと判断した場合は、(x,y)={(x+w
+dx1)%w,(y+h+dy1)%h)とし(ステ
ップS24)、次いでマトリックス内の{(int)x,
(int)y}座標を格子点として採用する(ステップ
S25)。
【0071】また、ステップS23で割り切れると判断
した場合は、(x,y)=(x+dx2,y+dy2)
とし(ステップS26)、しかる後ステップS24に移
行する。以上の一連の処理を、ステップS27でC=d
n(1階調あたりの総ドット数)と判断するまで繰り返
す。
【0072】上述した一連の処理により、第1番目のド
ット位置としては、仮ドット位置に(dx1,dy1)
を加え、さらに(dx2,dy2)を加えた点、即ち点
(α1,α2)を定める。第2番目のドット位置として
は、第1番目のドット位置に(dx1,dy1)を加え
た点を定める。一般には、第n番目の点として、第n−
1番目の点に(dx1,dy1)を加えた点を定める。
【0073】但しこのとき、x座標値がwを上回った場
合、周期環境の条件により、座標値からwを減じた値を
採用する(y座標に関しても同じ)。また、格子点を定
めて行く際に、dn/gcd(x1,y1)個の格子点
ごとに、(dx2,dy2)を座標値に加える(これ
は、既に定めた格子点の上に別の格子点が重なるのを防
ぐための処理である)。この際にも、座標値が(w,
h)を超したら、周期境界位置のドットに直す。
【0074】以上の処理により、マトリックス内にdn
個の格子点を得ることができる。この斜交格子系をマト
リックス内に作成する手法は、概念的には、斜交格子系
から直角三角形を作成し、その斜辺をdn等分し、等分
点の各座標をマトリックス内に埋め込んで、格子点とす
るというようなモデルで考えることができる。
【0075】例えば、斜交格子系K{(w,w),(3,
1),(4,1)}、K{(w,w),(4,2),(4,1)}か
らマトリックスを得る際のアルゴリズムの概念について
説明する。それぞれ、斜交格子の(3,1)成分、
(4,2)成分方向への直角三角形を作成する。
【0076】斜交格子系K{(w,w),(3,1),(4,
1)}の場合は、図15(A)に示すように、底辺が3w
とwの直角三角形の斜辺を13個(=3*4+1*1)
に分割し、三角形の左下の点をマトリックスの左下の点
として、各分割点を三角形の左下の点から順番にマトリ
ックスに落とす。その際に、x座標値がwよりも大きく
なったらその値からwを減じる。このようにして、マト
リックス上に格子点を作成する。一般には、y座標がマ
トリックスの高さhを超える場合があり、その場合は同
じくその値からhを減じる。
【0077】斜交格子系K{(w,w),(4,2),(4,
1)}の場合は、図15(B)に示すように、底辺が4w
と2wの直角三角形の斜辺を18個(=4*4+2*
1)に分割し、同様に分割点をマトリックスに落とす。
この場合は、左下から数えて9番目(=dn/gcd
(x1,y1)=18/2)の点までは、先ほどと同様
にマトリックスに落とすことができるが、10番目の点
は1番目の点、即ち(0,0)と重なってしまう。
【0078】したがって、第10番目の点をマトリック
スに落とす際には、それぞれx,y座標値にdx2,d
y2を加算して、位相をずらしたものを用いる。なお、
dx2,dy2はもう一つの平行格子パラメータ(4,
1)から得られる底辺4w,wの直角三角形の斜辺を1
8等分した際のステップ量に相当している。以降の点も
同様に位相をずらして点を作成する(図15(B)の白
点に相当)。このようにしてマトリックス上に格子点を
作成する。
【0079】一般に、斜交格子系K{(w,h),(x1,
y1),(x2,y2)}を作成する際に、直角三角形の概
念を当てはめると、図16に示すような三角形を用いる
こととなる。三角形の斜辺上にあるdn=x1*x2+
y1*y2個の格子点(格子点間隔(dx1,dy
1))をマトリックス内に移して行く際には、dn/g
cd(x1,y1)個の格子点ごとに、以降の全格子点
を(dx2,dy2)だけシフトして配置していく。
【0080】次に、マトリックス内に作成された斜交格
子系の格子点から網点を成長させ、全階調を割り当てる
工程(ステップS13)での処理について説明する。
【0081】この工程では、ステップS12でマトリッ
クス内に定められたdn個の格子点からドットを成長さ
せることによって全階調に対応する閾値を定める。1階
調あたりのドット数ds分だけ各ドットを成長させなが
ら、閾値を作成していく。通常のスクリーンでは、全階
調数256にとる。
【0082】なお、本工程においては、黒ドットを徐々
に成長させる方式について述べたが、スクリーン全体で
黒ドットと白ドットの対称性を良くする、即ちハイライ
ト部(低濃度部)とシャドー部(高濃度部)のドット配
置特性を対称的にする方が、ハーフトーン化が安定する
ことがある。
【0083】したがって、このようなスクリーンを作成
する場合には、ステップS12で得られた全ての黒ドッ
ト用の格子点を、{(dx1+dx2)/2,(dy1+dy
2)/2}={(w・(x1+y2)/2dn,h・(−x2
+y1)/2dn}だけシフトして、周期境界を考慮した
位置に白ドット(OFFドット)発生用の格子点をdn
個作成する。このとき、黒ドットに対する白ドットの位
置関係は、図17に示すようになっている。このように
して、あらかじめ黒ドット、白ドット用の格子点をそれ
ぞれdn個用意して、黒ドット、白ドットを交互に成長
させてゆけば良い。
【0084】例えば、斜交格子系K{(64,32),
(8,8),(12,4)}から600dpi用スクリーン
を作成すると、 ・格子点数:128 ・斜交格子角度:tan-1(1/2),tan-1(2/
3) ・線数:168,135[線/inch] ・分解能:22500[dot/平方inch] ・全体での相当線数:150[線/inch]相当 となり、性質1の(4)の数(ドット間ステップ量1)
を計算すると、共に整数ゆえ、全格子点は整数座標をと
る。
【0085】ここでは、通常のスクリーンで用いられる
256階調のスクリーンを作成するとする。 ・スクリーンの全階調数:colS=256 ・微調整パラメータ:(α1,α2)=(0,0)(全
格子点が整数座標ゆえ、微調整はしない)
【0086】上記パラメータから以下の数が算出され
る。 ・斜交格子周期1:8 ・斜交格子周期2:4 ・ドット間ステップ量1:(dx1,dy1)=(4,
2) ・ドット間ステップ量2:(dx2,dy2)=(2,
3) ・1階調あたりの総ドット数:ds=8
【0087】以上のパラメータから、ステップS13で
の処理にしたがってスクリーンマトリックスを作成す
る。図18に、斜交格子系K{(64,32),(8,8),
(12,4)}の格子点配置を示す。
【0088】ドット間距離パラメータ(dx1,dy
1),(dx2,dy2)が共に整数値をとる場合、マト
リックス内の格子点は規則的に並ぶ。このような場合
は、次に述べる方法で網点を成長させると良好なドット
配置が得られる。
【0089】先ず、ドット間距離パラメータ(dx1,
dy1),(dx2,dy2)が整数値の場合の網線成長
法について述べる。
【0090】既に述べたように、斜交格子系を用いたス
クリーンの場合、角度ごとに異なる線数が現れる。仮に
各ドットを網点状に成長させて行くと、やがて低線数方
向にドットがつながり始め、主に低線数側が目立つよう
になる。そこで、高線数側にライン状に成長させるとい
う方式を用いて、できるだけ高線数側が主体になるよう
な成長法を採ることとする。
【0091】ドット間距離パラメータが整数値の場合、
各網点の成長法はすべて同じにできる。したがって、決
める必要があるのは、以下の2つである。 ドットの成長法(一つのドットに関して定めればあと
はすべて同じ) 各ドットの成長順 上記に関しては斜交格子系のパラメータに基づき、一
例としてライン型になるようにし、上記に関してはブ
ルーノイズマスク的な手法を用いてできるだけマトリッ
クス全体で均一に成長させるようにする。以下に、,
の各アルゴリズムについて説明する。
【0092】ドットの成長法 斜交格子系K{(w,h),(x1,y1),(x2,y
2)}の(x1,y1)方向の格子をラインで結ぶ形で
ドット成長させる。斜交格子系内から一つの格子点A=
(ax,ay)を選び、(x1,y1)方向に見て、つ
なぐ先の格子点B=(bx,by)を選ぶ。
【0093】先ず、図19に示すように、点Aと点Bと
を結ぶ直線f(x)を作成し、 x=ax+q,ax+1+q,ax+2+q, …,bx−1+q (q=0.5) に関して、点(x,f(x))を走査し、この点が含まれる
ドットに順番を0番から付けていく。x=bx−1+q
が終了したら、点Aと点C=(cx,cy)を直線で結
び、この直線上で点Aから距離αの地点を通るように直
線f(x)を平行移動させる。
【0094】直線ACと今平行移動させた直線f(x)
の交点を始点として、先ほどと同様に、x軸方向に1ず
つ直線上を走査して番号を付けていく。このとき、既に
番号がつれられたドットに関しては新たに番号付けを行
わないようにする。全ての点を調べ終えたら、直線f
(x)を再び点Cの方向にαだけ平行移動させて同様の
走査を行う。
【0095】以上の走査は、番号付けされたドット数が
dn/2=(x1*x2+y1*y2)/2になったら
一旦終了する。次に、白ドットに関しても同様の方法で
ドット成長をさせ、dn/2個のドットに番号付けをし
ていく。以上により、各ドットのライン型成長法が定め
られる。
【0096】なお、ドットの成長法においては、上記
アルゴリズムを用いずに、好ましいドット成長法を任意
に用いるようにしても良い。
【0097】各ドットの成長順 黒ドット、白ドットともに成長法則が定められたので、
今度は、マトリックス内にあるdn個のドットの成長す
る順番を決める必要がある。階調数colSのマトリッ
クスを作成する場合、各閾値はマトリックス内にw*h
/colSだけ定める。dn=w*h/colSであれ
ば網点の成長はたやすいが、そうでない場合には、マト
リックス全体で濃度を調整する手法が必要になる。
【0098】そこで、先ずマトリックス内のdn個の全
黒ドットに、0からdnまでの順番を以下の法則を用い
て割り振ってゆき、この順番と先のドットの成長法で定
めた各網点の成長法を組み合わせて閾値決定を行う。こ
のようにしてマトリックス内の格子点に順番を与えてい
く。マトリックス内の格子点全体の集合をKとおく。ま
た、マトリックス内には周期境界条件を付けて、ユーク
リッドの距離を入れておく。その具体的な処理手順につ
いて、図20のフローチャートに沿って説明する。
【0099】先ず初めに、0からdn−1までの閾値を
決定していく順番をp(n)(n=0,…,dn−1)
で決める(ステップS31)。ここで、p:{0,…,d
n−1}→{0,…,dn−1}は一対一写像とする。
次に、マトリックス内のdn個の格子点に0からdn−
1までの番号を、同じ番号が重複しないようにランダム
に与える(ステップS32)。
【0100】閾値決定の一番はじめとして、n=0,チ
ェック値Ch=0とし(ステップS33)、q=p
(n)+1とおく(ステップS34)。続いて、閾値p
(n)に対応する画素Pを選び、クラスター量Cl
(P,p(n),q)を測定する(ステップS34)。
その後、閾値qに対する画素Qを選び、PとQの閾値を
入れ換え(ステップS36)、点Qのクラスター量Cl
(Q,p(n),q)を測定する(ステップS37)。
【0101】そして、画素Pのクラスター量Cl(P,
p(n),q)と画素Qのクラスター量Cl(Q,p
(n),q)とを比較する(ステップS38)。ここ
で、Cl(P,p(n),q)<Cl(Q,p(n),
q)ならば、元の閾値の方がドット間距離が安定してい
るということになるため、再びPとQの閾値を入れ換え
て元の状態に戻す(ステップS39)。その後、q=d
n−1になったか否かを判断し(ステップS40)、q
≠dn−1であれば、q=q+1とし(ステップS4
1)、しかる後ステップS35に戻って上述した一連の
処理をq=dn−1になるまで続ける。
【0102】ステップS38でCl(P,p(n),
q)≧Cl(Q,p(n),q)と判定した場合は、Q
の方が良い閾値配置ということになるため、このままQ
をPに入れ換えてしまう。そして、一度でもPとQが入
れ替わったならば、チェック値Ch=1とする(ステッ
プS42)。q=dn−1となったら、続いてn=dn
−1になったか否かを判断する(ステップS43)。n
≠dn−1であれば、n=n+1とし(ステップS4
3)、しかる後ステップS34に戻って上述した一連の
処理をn=dn−1となるまで繰り返す。
【0103】そして、n=dn−1になったならば、全
閾値のより良い場所への再配置が終わったことになる
が、ステップS45でCh=1と判定した場合は、ステ
ップS33に戻り、再びn=0として上述した一連の処
理を繰り返す。Ch≠1、即ちCh=0の場合には、全
ての閾値が動かなかったことになるため、収束状態とみ
なし、閾値決定のための一連の処理を終了する
【0104】上述した処理において、点P∈Kのクラス
ター量Cl(P,p(n),q)は次で定める。以下に
おいて、d(P,Q)は点Pと点Q間の距離を表し、v
al(P)は点Pの閾値を表す。
【0105】
【数2】
【0106】クラスター量Cl(P,p(n),q)
は、点Pにおいて濃度iをp(n)からqまで変化させ
たときの各閾値でのクラスター量cl(P,i)の和で
定められる。各閾値でのクラスター量cl(P,i)
は、マトリックス内の格子点のうち、閾値i以下の点を
中心に理想半径値r(i)の円を作成した際に、点Pを
中心とする円と交わった円の、交わり面積の総和で定義
する。
【0107】ここで、理想半径値r(i)は、サイズw
*hの周期境界を持った長方形内にi+1個の円を交わ
らないように配置する際に、円の半径をできるだけ大き
くとるときの近似値である。図21は、cl(P,i)
値の計算の概念図である。クラスター量Cl(P,p
(n),q)は、p(n)<i<qなるiに関してcl
(P,i)を求めて総和をとったものである。
【0108】ここにおいて、閾値p(n)とqを入れ換
えた際に、閾値p(n)とqの間のクラスター量を計算
する理由を述べる。図22に示すように、閾値p(n)
とqを入れ換えた際に、実際のハーフトーンのパターン
が変化するのは閾値p(n)とqの間の領域のみであ
る。そこで、この閾値p(n)とqの間の全閾値に対し
て、閾値p(n)とqを交換した際のドット配置の良さ
を測定して、和をとるという操作を行う。
【0109】ところで、上記のクラスター量cl(P,
i)の計算においては、白ドットと黒ドット別にクラス
ター量を測定する場合には、閾値の変形を行えば良い。
その際に、理想半径値r(i+1)も対象とするドット
の個数に応じて変化させる。また、f(P,Q,i)値
は単純な円の重なり部分の面積を求める式であるが、ド
ット数が増大してくると、マトリックスが離散空間であ
ることに起因して、ドット配置に強い制約が掛かってく
る。
【0110】そのため、最適半径値よりも少し大きな値
を用いるか、一定範囲内で積分したものをf(P,Q,
i)に用いる方が良い場合があり、こうした値を利用す
ることも可能である。このように、クラスター量の決定
を行う関数は、マトリックスの離散的特性に応じて変形
した方がより良い結果が得られる場合があり、適当な方
法を採るようにする。
【0111】以上のようにして、マトリックス内に定義
された格子点の成長法(成長順)が定められ、dn個の
各格子点には0からdn−1までの番号が一意に割り当
てられる。以降の処理では、これらを用いて最終的な閾
値マトリックスの作成が行われる。
【0112】先ず、閾値マトリックス内の全点(x,
y)に、先のドットの成長法で定められた成長順番号p
を振る。このとき、0からw*h/dn−1までの値が
それぞれdn個割り振られることになる。次に、閾値マ
トリックス内の各格子点に先のドットの成長順で定めら
れた番号qを振り、各格子点の第1成長点から第w*h
/dn成長点までにもそれぞれ同じ番号qを振る。
【0113】この時点で、閾値マトリックス内の全点に
はpとqの2種類の番号が割り与えられている。そこ
で、マトリックス内の全点に対して、新たにq(p+
1)という番号を割り当て直す。これによって、閾値マ
トリックス内には0からw*h−1までの番号が一意に
割り当てられる。最後に、閾値に割り当てられた値を階
調数colSで割った値の整数部分を最終的な閾値とし
て採用する。こうして、階調数colSの閾値マトリッ
クスが得られる。
【0114】また、容易にわかるように、網点の成長順
の順序と網点の選択順の順序から、閾値マトリックス内
の全ての画素にユニークに優先順位を付けることができ
る。つまり、全部の画素を番号順に並べることができ
る。そこで、その番号順に適宜ドットを選択していくこ
とで、閾値の数が異なるようなマトリックスを得ること
も可能である。
【0115】次に、ドット間距離パラメータ(dx1,
dy1),(dx2,dy2)が非整数値の場合の網線成
長法について述べる。ドット間距離パラメータが非整数
の場合、概念的には、Adobeのスーパーセル方式ス
クリーンでのセルサイズ不均一の問題と同様の問題が発
生するが、ここでは単純に、格子点が非整数座標となる
場合の網点成長法について簡単に述べる。
【0116】先ず、斜交格子系からマトリックス内に格
子点を作成する際には、斜交格子点に最も近い整数座標
値をマトリックス内の格子点として採用する。次に、網
点成長法に関しては、指数座標値をとる場合とは違っ
て、各ドットをすべて均一の成長順にすることはできな
い。
【0117】そこで、先ず各ドットの2番目の成長点と
して、既に定めたマトリックス内の格子点以外で、斜交
格子系の格子点に最も近い点をそれぞれ選び、以下3番
目の成長点、4番目の成長点に関しても同様に、まだマ
トリックス内で選ばれていない点で、斜交格子系の格子
点に最も近い点を選んでいく。こうして全ての点を選び
終えたら、上記と同様の方法で網点の成長順を決めて、
最終的な閾値マトリックスを得ることができる。
【0118】ここで、一例として、斜交格子系K{(6
4,64),(10,8),(8,6)}から階調数256の1
200dpi用スクリーンを作成するものとする。
【0119】斜交格子において(8,6)の成分の方向
にライン型となるように網点を成長させる。この場合の
線数は約188線となる。対象とするIOTで出力し
て、閾値調整量Nb,Nwを求め、Nb=7,Nw=3
が得られたとする。マトリックス内の格子点数dnがd
n=10*8+8*6=128だから、網点成長量ds
は式(1)、式(2)より、 ds={64・64−(7+3)・128}/256=
11 となる。
【0120】また、初期階調数colSは、式(3)よ
り、 colS=(int)(64*64/11) =(int)372.3636… =372 となる。したがって、初期階調数colSを372で一
旦仮決定しておく。
【0121】このとき、w・h/dsの切り捨て分の誤
差に相当するAb,Awは、(4)式、(5)式より、 Ab=128*7-(int)(11*(double)((int)((double)(128*
7)/11)))= 5 Aw=128*3-(int)(11*(double)((int)((double)(128*
3)/11)))=10 となり、全部で15ドット分の誤差が発生する。また、
最終的な初期階調数colSは、(6)式より、 colS=372−(int)((5+10)/11)=3
71 となる。
【0122】以上を求めてから、上記閾値再配置手順に
したがって初期閾値マトリックスを作成する。すなわ
ち、初期閾値マトリックスの切り捨て閾値Ob,Owを
(7)式、(8)式より求めると、 Ob=(int)(128*7/11=81 Ow=371−1−(int)(128*3/11)=3
36 となる。そして、この切り捨て閾値Ob,Owから、最
終閾値マトリックスを作成する。
【0123】最終閾値マトリックス内の閾値の配分量
は、以下のようになる。 ・閾値0:907個所(=82*11+5) ・閾値j(j=1,…,254):2794個所(=254*1
1) ・閾値255:395個所(=35*11+10) ここで、907+254*11+395=4096=6
4*64であり、マトリックス内の全画素数に一致す
る。
【0124】このスクリーンを用いてグラデーションを
二値化したものが、図23(B)である。図23(B)
では、スクリーンの成長はライン型としている。図23
(A)は、通常のスクリーン、即ち同じ斜交格子系から
単純に256階調スクリーンマトリックスを作成し、二
値化したものである(この例では、網点の成長形状は異
なっている)。
【0125】閾値調整したスクリーンでは、濃度1の時
点でかなりのONドットが乗っているが、このドット量
は対象とするIOTで出力したときに、紙に出力される
か、出力されないかといった状態になっている。OFF
ドットに関しても全く同じことが言える。
【0126】上記の例では、網点形状としてライン型を
選んでいるが、これには斜交格子系の片方の線数を強調
する目的もあるが、もう一つは網点の接触点で現れる濃
度ジャンプを防ぐという目的がある。
【0127】図23(A)のようなドット成長型のスク
リーンでは中間調近辺で網点が接触を始める部分(網点
の位相構造が変化する部分)で濃度ジャンプが現れやす
い。一方、図23(B)のようなライン型成長形の場合
には、ON網点、OFF網点がライン形状につながった
後はドットの接触が無く、中間調の濃度変化がなめらか
である。
【0128】さらに本手法を用いると、特に高解像度の
場合には、閾値調整量Nb,Nwの値が大きくなる傾向
がある。この場合には、図23(B)に示すように濃度
0%、100%の時点で既に網点がライン型になってお
り、図23(B)を見てもわかるように、網点の位相構
造の変化が無い。したがって、紙に出力すると、なめら
かなグラデーションを得ることができる。故に、本手法
を用いて閾値マトリックスを作成する際に、スクリーン
形状をライン型にすると、特に高解像度では効果的であ
る。
【0129】図23のスクリーンを、実際にそれぞれ各
濃度のパッチを作成して対象IOTで出力し、濃度を測
定した結果を図24に示す。なお、ハーフトーン画像は
1200×1200dpiで作成しているが、これを対
象IOT内部で600×4800dpiに変換する処理
を行ってから出力している。この場合、見かけ上は、1
200×1200dpiで作成された画像と同じ網点形
状をとっている。
【0130】閾値調整したスクリーンは、意図した通り
閾値0の時点から少しずつ階調が増していっているのが
わかる。これに対して、閾値調整をしない従来方式のス
クリーンは、ハイライトの濃度の立ち上がりが遅く、閾
値50くらいまでの間の値はまったく無駄になってしま
っている。
【0131】実際の出力結果を図25および図26に示
す。図25は、閾値調整ありの場合の出力結果を、図2
6は閾値調整なしの場合の出力結果をそれぞれ示してい
る。図25と図26の対比から明らかなように、閾値調
整を行わない場合(図26)には、ドットが接触し始め
る部分で濃度ジャンプが発生し、またハイライト部でド
ットの飛びが、シャドー部でつぶれが生じるのに対し
て、閾値調整を行った場合(図25)には、これらを大
幅に改善できる。
【0132】このように、本閾値マトリックス作成法を
用いて最終閾値マトリックスを作成し、これを用いてハ
ーフトーン化処理を行うことにより、TRC補正などを
行う以前に、スクリーンを掛けた時点で、ハイライト
部、シャドー部の再現性を上げることができ、階調数を
充分に確保することができる。したがって、この後でT
RC補正を掛けるにしても、本方式の方がより滑らかな
グラデーションを得ることが可能である。
【0133】また、本方式では、あらかじめ階調数を多
めにとることになるが、初期閾値マトリックスの生成に
際して、先述したように、ブルーノイズ網点を用いるよ
うにしていることにより、階調数を自由に変えることが
できるため、必要数分だけ階調数をとることがたやすい
という利点もある。
【0134】
【発明の効果】以上説明したように、本発明によれば、
スクリーンの線数が減ったり、濃度変化特性が不均一に
なったりすることなく、出力画像の濃度再現性を上げる
ことができる。
【図面の簡単な説明】
【図1】 本発明の一実施形態に係る画像処理装置の構
成の概略を示すブロック図である。
【図2】 二値化処理部の構成の一例を示すブロック図
である。
【図3】 閾値調整した閾値マトリックスを生成するた
めの処理手順を示すフローチャートである。
【図4】 ON網点の出力テスト例を示す図である。
【図5】 初期閾値マトリックスの閾値配分を示す図
(その1)である。
【図6】 初期閾値マトリックスの閾値配分を示す図
(その2)である。
【図7】 閾値の再振り分けの概念図である。
【図8】 本実施形態に係る手法で作成した閾値マトリ
ックスの閾値例を示す図である。
【図9】 平面上に作成した斜交格子を示す図である。
【図10】 斜交格子系を作成する説明図である。
【図11】 斜交格子系K{(72,84),(7,2),
(4,−2)}を示す図である。
【図12】 斜交スクリーンを作成するアルゴリズムを
示すフローチャートである。
【図13】 ドット間ステップ量を示す図である。
【図14】 斜交格子系をマトリックス内に作成する処
理手順を示すフローチャートである。
【図15】 斜交格子系K{(w,w),(3,1),(4,
1)}とK{(w,w),(4,2),(4,1)}の直角三角形
表現の概念図である。
【図16】 斜交格子系K{(w,h),(x1,y1),
(x2,y2)}の直角三角形の概念図である。
【図17】 黒ドット格子点に対する白ドット格子点の
位置関係を示す図である。
【図18】 斜交格子系K{(64,32),(8,8),
(12,4)}の格子点配置を示す図である。
【図19】 ドットの成長法の説明図である。
【図20】 各ドットの成長順を決定する処理手順を示
すフローチャートである。
【図21】 クラスター量cl(P,i)値の計算の概
念図である。
【図22】 閾値p(n)とqを交換した際にパターン
が変化する領域を示す図である。
【図23】 通常スクリーン(A)と閾値調整後のスク
リーン(B)を用いてグラデーションを二値化した結果
を示す図である。
【図24】 通常スクリーン(A)と閾値調整後のスク
リーン(B)の濃度変化を示す図である。
【図25】 閾値調整ありの場合の出力結果を示す図で
ある。
【図26】 閾値調整なしの場合の出力結果を示す図で
ある。
【図27】 従来技術に係る手法で作成した閾値マトリ
ックスの閾値例を示す図である。
【符号の説明】
10…画像処理装置、11…描画部(色変換部)、12
…二値化部、13…描画メモリ、20…ホストコンピュ
ータ、21…閾値マトリックス記憶部、22…比較部、
30…画像出力部(IOT)

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 多階調画像を閾値マトリックスを用いて
    ハーフトーン化する画像処理装置であって、出力対象機
    器のドット再現特性からあらかじめ与えられた最終階調
    数以上に階調数を確保して初期階調数を定め、各閾値を
    とる画素数がそれぞれ均一かまたは1だけ異なる初期閾
    値マトリックスを作成するとともに、この初期閾値マト
    リックスの閾値の中から長さが最終階調数と等しい区間
    にある全閾値を選び出して各閾値を割り当て直し、それ
    以外の閾値は0と最終階調数−1に割り振ることで作成
    されてなる最終閾値マトリックスを格納する記憶手段
    と、 入力される多階調画像と前記記憶手段に格納された前記
    最終閾値マトリックスで与えられる閾値とを比較してハ
    ーフトーン化画像を得る比較手段とを備えることを特徴
    とする画像処理装置。
  2. 【請求項2】 多階調画像を閾値マトリックスを用いて
    ハーフトーン化する画像処理方法であって、 出力対象機器のドット再現特性からあらかじめ与えられ
    た最終階調数以上に階調数を確保して初期階調数を定
    め、各閾値をとる画素数がそれぞれ均一かまたは1だけ
    異なる初期閾値マトリックスを作成するとともに、この
    初期閾値マトリックスの閾値の中から長さが最終階調数
    と等しい区間にある全閾値を選び出して各閾値を割り当
    て直し、それ以外の閾値は0と最終階調数−1に割り振
    ることで作成されてなる最終閾値マトリックスをあらか
    じめ用意し、 入力される多階調画像と前記最終閾値マトリックスで与
    えられる閾値とを比較してハーフトーン化画像を得るこ
    とを特徴とする画像処理方法。
  3. 【請求項3】 多階調画像をハーフトーン化する際に用
    いる閾値マトリックスの作成方法であって、 出力対象機器のドット再現特性からあらかじめ与えられ
    た最終階調数以上に階調数を確保して初期階調数を定め
    る初期階調数設定工程と、 前記初期階調数を有し、各閾値をとる画素数がそれぞれ
    均一かまたは1だけ異なる初期閾値マトリックスを作成
    する初期閾値マトリックス作成工程と、 前記初期閾値マトリックスの閾値の中から長さが最終階
    調数と等しい区間にある全閾値を選び出して各閾値を割
    り当て直し、それ以外の閾値は0と最終階調数−1に割
    り振ることで最終閾値マトリックスを作成する最終閾値
    マトリックス賛成工程とを有することを特徴とする閾値
    マトリックスの作成方法。
  4. 【請求項4】 初期閾値マトリックス作成工程では、あ
    らかじめ前記出力対象機器で目標とするスクリーン形状
    に合わせて、異なるクラスター量を持った黒ドットと白
    ドットを出力することで、前記出力対象機器での黒ドッ
    トと白ドットが紙に出力され始める直前の点よりも小さ
    い出力開始直前黒ドット量と出力開始直前白ドット量を
    それぞれ求めるとともに、閾値マトリックスの総画素
    数、閾値マトリックス内の黒ドット数と白ドット数およ
    び最終階調数から前記初期階調数を求め、 前記最終閾値マトリックス作成工程では、全黒ドットが
    前記出力開始直前黒ドット量分もしくはそれよりも1だ
    け少ない量分だけ成長した点まで閾値0をとるか、各白
    ドットが前記出力開始直前白ドット量分もしくはそれよ
    りも1だけ少ない量分だけ成長した点まで閾値(最終階
    調数−1)をとるように、前記初期階調数の中から連続
    的に最終階調数分の閾値を選び番号を与え直すことを特
    徴とする請求項3記載の閾値マトリックスの作成方法。
  5. 【請求項5】 前記初期閾値マトリックス作成工程で
    は、あらかじめ定められた基本ドット配置点からドット
    の成長方向を所定の方法で決定することによって前記初
    期閾値マトリックスの大域的な濃度成長を定めるととも
    に、前記基本ドット配置点からブルーノイズ特性に基づ
    いてドットの優先順位を決定することによって前記初期
    閾値マトリックスの局所的な濃度成長を定めることを特
    徴とする請求項3または4記載の閾値マトリックスの作
    成方法。
  6. 【請求項6】 前記初期閾値マトリックス作成工程で
    は、前記初期閾値マトリックス内のスクリーン成長形状
    をライン型に成長させることを特徴とする請求項3,4
    または5記載の閾値マトリックスの作成方法。
JP2000220179A 2000-07-21 2000-07-21 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法 Pending JP2002044446A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000220179A JP2002044446A (ja) 2000-07-21 2000-07-21 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000220179A JP2002044446A (ja) 2000-07-21 2000-07-21 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法

Publications (1)

Publication Number Publication Date
JP2002044446A true JP2002044446A (ja) 2002-02-08

Family

ID=18714831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000220179A Pending JP2002044446A (ja) 2000-07-21 2000-07-21 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法

Country Status (1)

Country Link
JP (1) JP2002044446A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007010757A1 (ja) * 2005-07-21 2007-01-25 Seiko Epson Corporation ディザマトリクス生成装置、印刷物、ディザマトリクス生成方法、プログラムおよび画像処理装置
US7277204B2 (en) * 2003-07-31 2007-10-02 Kodak Il Ltd. Stochastic halftone screening method
JP2009284225A (ja) * 2008-05-22 2009-12-03 Ricoh Co Ltd ディザマトリクス作成方法、及び画像形成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277204B2 (en) * 2003-07-31 2007-10-02 Kodak Il Ltd. Stochastic halftone screening method
WO2007010757A1 (ja) * 2005-07-21 2007-01-25 Seiko Epson Corporation ディザマトリクス生成装置、印刷物、ディザマトリクス生成方法、プログラムおよび画像処理装置
US7973976B2 (en) 2005-07-21 2011-07-05 Seiko Epson Corporation Dither matrix generator, print product, method for generating a dither matrix, program product, and image processing device
JP2009284225A (ja) * 2008-05-22 2009-12-03 Ricoh Co Ltd ディザマトリクス作成方法、及び画像形成装置

Similar Documents

Publication Publication Date Title
JP3301770B2 (ja) 改良された誤差拡散制御で1以上のカラー面に印刷を行う方法
JP5791733B2 (ja) Amスクリーニング方法及びamスクリーニング装置
JPS61237574A (ja) ハーフトーン・イメージの形成方法
US7599097B2 (en) Method and system for designing multilevel halftone screens using spot functions
CN112331122B (zh) 用于渲染彩色图像的方法
JPH0722347B2 (ja) モワレ効果のないカラ−再生法
JP3698541B2 (ja) 擬似階調画像処理装置
JP4010097B2 (ja) 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法
US5259042A (en) Binarization processing method for multivalued image and method to form density pattern for reproducing binary gradations
EP0631430A2 (en) Color image processing apparatus capable of suppressing moire
JP2000032265A (ja) ディザパターンの回転方法と回転装置
JP2002044446A (ja) 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法
US5425112A (en) Method for optimizing frequency-modulated rasters upon utilization of threshold hills
CN110475041A (zh) 一种灰度图像处理方法、装置及打印机
JP2011239193A (ja) 閾値マトリクス生成方法、閾値マトリクス生成装置、閾値マトリクス、量子化装置及び画像形成装置
JP6256747B2 (ja) 画像変換処理方法、それを実行させるためのプログラム及び画像変換処理装置
US8797555B2 (en) Redistribution of pixel values in an image forming apparatus or method
JP6388337B2 (ja) 画像変換処理方法、それを実行させるためのプログラム及び画像変換処理装置
WO2018062180A1 (ja) 閾値マトリクスの作成方法及び閾値マトリクス作成装置並びにプログラム
JP2000299783A (ja) 画像処理方法及びその装置
JP5843883B2 (ja) 凹版印刷用スクリーニング方法と装置
JP5490079B2 (ja) 画像形成装置及び画像形成方法
JP2641393B2 (ja) デジタルハーフトーンスクリーン生成方法および装置
JP6108218B2 (ja) 画像変換処理方法、それを実行させるためのプログラム及び画像変換処理装置
KR100238045B1 (ko) 화상시스템의 중간조 처리방법