JP5891865B2 - 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム - Google Patents

画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム Download PDF

Info

Publication number
JP5891865B2
JP5891865B2 JP2012057354A JP2012057354A JP5891865B2 JP 5891865 B2 JP5891865 B2 JP 5891865B2 JP 2012057354 A JP2012057354 A JP 2012057354A JP 2012057354 A JP2012057354 A JP 2012057354A JP 5891865 B2 JP5891865 B2 JP 5891865B2
Authority
JP
Japan
Prior art keywords
mask
point
cluster
image processing
energy
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.)
Expired - Fee Related
Application number
JP2012057354A
Other languages
English (en)
Other versions
JP2013192072A (ja
Inventor
敢也 石坂
敢也 石坂
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
Fujifilm Business Innovation Corp
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, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2012057354A priority Critical patent/JP5891865B2/ja
Priority to US13/585,479 priority patent/US8744212B2/en
Publication of JP2013192072A publication Critical patent/JP2013192072A/ja
Application granted granted Critical
Publication of JP5891865B2 publication Critical patent/JP5891865B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/52Circuits or arrangements for halftone screening
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/40Picture signal circuits
    • H04N1/405Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels
    • H04N1/4055Halftoning, i.e. converting the picture signal of a continuous-tone original into a corresponding signal showing only two levels producing a clustered dots or a size modulated halftone pattern

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color, Gradation (AREA)
  • Image Processing (AREA)

Description

本発明は、画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラムに関する。
特許文献1には、従来と異なる印刷性能を有する網点を提供することを課題とし、各網点がランダムに配置され、一様な網点面積率の画像領域内において、半数の網点が隣接する網点と接合する網点面積率が、50%を超える値に設定され、また、各網点が隣接する網点と接合するときに、隣接する網点と接合する点である複数の接合点が、特定の網点面積率において同時には接合しないことが開示されている。
特許文献2には、ハイライト側では確実にドットがつき、中間調ではざらつきが低減されかつドットゲインの少ない画像を発生させることができる閾値マトリクスを作成することを課題とし、1以上の所定個の画素からなる最小サイズのドットと、ドットパターンの中間調でのパターン周波数rと、各網パーセントにおける最小サイズのドットの新規設定ドット数を決定し、この最小サイズのドットと中間調のパターン周波数と新規ドット数の制限下に、各網パーセントにおいて最適ドットパターンが生成されるような閾値を順次設定することで、出力システムに最適な閾値マトリクスを作成することが開示されている。
特許文献3には、走査方向の画像のむらの目立ちにくいドットパターンを生成することを可能とする閾値マトリクスを提供することを課題とし、連続調画像を2値画像であるドットパターンに変換する閾値マトリクスにおいて、前記閾値マトリクスにより、各画素値が網パーセント50[%]に対応する値を有する連続調画像データを2値化して生成されるドットパターンを周波数領域に変換した際のグラフの、ドットパターンの少なくとも走査方向に対応する角度θの強度を弱めることで、ドットパターンの走査方向MSのドット周囲長を短くすることが開示されている。
特許文献4には、多階調画像を閾値マトリクスを用いてハーフトーン化する画像処理装置であって、予め定められた基本ドット配置点からドットの成長方向を所定の方法で決定することによって大域的な濃度成長を定めるとともに、前記基本ドット配置点から各ドットを中心とする円同士の重なり面積値に基づいてドットの優先順位を決定することによって局所的な濃度成長を定めてなる閾値マトリクスを格納する記憶手段と、入力される多階調画像と前記記憶手段に格納された前記閾値マトリクスで与えられる閾値とを比較してハーフトーン画像を得る比較手段とを備えることを特徴とする画像処理装置が開示されている。
特許文献5には、ブルーノイズ特性を満たすべく周波数特性を規制することにより、ランダム型分散ドットハーフトーンマスクを生成する方法が開示されている。さらに特許文献6には、グリーンノイズ特性を満たすべく周波数特性を規制することにより、ランダム型クラスタドットハーフトーンマスクを生成する方法が開示されている。なお、前記特許文献1〜3も、ランダム型クラスタドットハーフトーンマスクの生成法を開示するものであり、特許文献4はある種の規則型クラスタドットハーフトーンマスクの生成法を開示している。これらの相互関係については後述する。
その他に、非特許文献1〜8に記載の技術がある。これらについては後述する。
特許第3427026号公報 特許第4168033号公報 特許第4143560号公報 特許第4010097号公報 米国特許第6493112号公報 米国特許第5111310号公報
B. E. Bayer, An optimum method for two−level rendition of continuous−tone pictures, Proc. IEEE Int. Conf. Comm., (1973) (26−11)−(26−15) H. R. Kang, Digital Color Halftoning, IEEE Press, New York, 1999 K. Ishizaka, New spatial measure for dispersed−dot halftoning assuring good point distribution in any density, IEEE Trans. Imag. Proc., 18(9), (2009), 2030−2047 D. L. Lau, G. R. Arce and N. C. Gallagher, "Digital halftoning by means of green−noise masks," J.Opt. Soc. Am. A, 16(7), (1999), 1575−1586 V. Ostromoukhov, Pseudo−random halftone screening for color and black&white printing, Proc. 9th Cong. Adv. in Non−Impact Print. Tech., Yokohama, (1993) 579−581 V. Ostromoukhov and R. D. Hersch, Stochastic clustered−dot dithering, Journal of Electronic Imaging, 8(4), (1999) 439−445 R. A. Ulichney, The void−and−cluster method for dither array 梶光雄, ストカスティックスクリーンとその周辺, 日本印刷学会誌, 第32巻, 第1号, (1995) 20−27
本発明は、画像処理用マスクの生成にあたって、クラスタの形状を指定することなく、画像処理用マスクを生成可能な画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1の発明は、画像処理用マスク内の各点におけるクラスタエネルギーを算出する算出ステップと、前記算出ステップによって算出されたクラスタエネルギーの値に基づいて、前記各点に対して昇順又は降順に順位付けを行う順位付ステップと、前記順位付ステップによる処理結果である順位に基づいて、画像処理用マスク内の閾値を割り当てる閾値割当ステップを行い、前記算出ステップによるクラスタエネルギーの算出は、前記各点であってクラスタに隣接する注目点xと、該注目点xを含まないクラスタに属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の総和により定義されることを特徴とする画像処理用マスク生成方法である。
請求項2の発明は、前記クラスタエネルギーはさらに、注目点xと未だ順位付けされていない点によって構成されている空白領域に属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の負総和との、重み付き平均で定義されることを特徴とする請求項1に記載の画像処理用マスク生成方法である。
請求項3の発明は、前記関数fは、予め定められた強度の凸性を有する2階微分可能関数により定められていることを特徴とする請求項1又は2に記載の画像処理用マスク生成方法である。
請求項4の発明は、前記順位付ステップは、順位iを与える際に、昇順に順位付けを行う場合には、より上位の順位が付された点全体を前記算出ステップにおけるクラスタエネルギー算出の対象とし、降順に順位付けを行う場合には、より下位の順位が付された点全体を前記算出ステップにおけるクラスタエネルギー算出の対象とし、前記いずれの場合も、まだ順位付けがされていない点について前記算出ステップによりクラスタエネルギーを算出し、クラスタエネルギーが最小である点に順位iを与えることを特徴とする請求項1から3のいずれか一項に記載の画像処理用マスク生成方法。
請求項5の発明は、前記算出ステップは、K個のクラスタの核点を画像処理用マスク内にランダムに配置し、該クラスタをエネルギー降下によって最適配置に収束させ、前記順位付ステップは、前記K個の核点にクラスタエネルギーの昇順に通し番号0〜K−1を与えることを特徴とする請求項1から4のいずれか一項に記載の画像処理用マスク生成方法である。
請求項6の発明は、前記算出ステップはクラスタの形成を画像の黒色側から白側又は白側から黒側へと成長させ、予め定められた濃度で白色側から黒色側又は黒色側から白色側へと成長を反転させることを特徴とする請求項1から5のいずれか一項に記載の画像処理用マスク生成方法である。
請求項7の発明は、コンピュータを、画像処理用マスク内の各点におけるクラスタエネルギーを算出する算出手段と、前記算出手段によって算出されたクラスタエネルギーの値に基づいて、前記各点に対して昇順又は降順に順位付けを行う順位付手段と、前記順位付手段による処理結果である順位に基づいて、画像処理用マスク内の閾値を割り当てる閾値割当手段として機能させ、前記算出手段によるクラスタエネルギーの算出は、前記各点であってクラスタに隣接する注目点xと、該注目点xを含まないクラスタに属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の総和により定義されることを特徴とする画像処理用マスク生成プログラムである。
請求項8の発明は、画像を受け付ける受付手段と、前記受付手段によって受け付けられた画像を対象として、該画像内の画素値と前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値とを比較するマスク処理を行うことによって、ハーフトーン画像を生成するマスク処理手段と、前記マスク処理手段によって生成されたハーフトーン画像を出力する出力手段を具備することを特徴とする画像処理装置である。
請求項9の発明は、画像処理装置を、画像を受け付ける受付手段と、前記受付手段によって受け付けられた画像を対象として、該画像内の画素値と前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値とを比較するマスク処理を行うことによって、ハーフトーン画像を生成するマスク処理手段と、前記マスク処理手段によって生成されたハーフトーン画像を出力する出力手段として機能させることを特徴とする画像処理プログラムである。
請求項1の画像処理用マスク生成方法によれば、画像処理用マスクの生成にあたって、クラスタの形状を指定することなく、画像処理用マスクを生成することができる。
請求項2の画像処理用マスク生成方法によれば、注目点xと空白領域に属する点yとの間の距離によって、クラスタエネルギーを算出することができる。
請求項3の画像処理用マスク生成方法によれば、本構成を有していない場合に比較して、よりざらつきの少ない雑音を有する画像処理用マスクを生成することができる。
請求項4の画像処理用マスク生成方法によれば、順位が未決定の点の中から、クラスタエネルギー最小の点に順位を与えることができる。
請求項5の画像処理用マスク生成方法によれば、エネルギー降下によってクラスタを配置させることができる。
請求項6の画像処理用マスク生成方法によれば、クラスタの成長を制御することができる。
請求項7の画像処理用マスク生成プログラムによれば、画像処理用マスクの生成にあたって、クラスタの形状を指定することなく、画像処理用マスクを生成することができる。
請求項8の画像処理装置によれば、前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値との比較するマスク処理を行うことによって、ハーフトーン画像を生成することができる。
請求項9の画像処理プログラムによれば、前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値との比較するマスク処理を行うことによって、ハーフトーン画像を生成することができる。
本実施の形態の構成例についての概念的なモジュール構成図である。 本実施の形態を画像形成装置に用いた場合のシステム構成例を示すモジュール構成図である。 ハーフトーン処理の例を示す説明図である。 マスク法の第2要素の観点での分類例を示す説明図である。 4種のハーフトーンマスクにより生成した2値画像の例を示す説明図である。 2種のランダム型分散ドットハーフトーンマスクによる2値化処理の結果例を示す説明図である。 本実施の形態による通し番号の生成例を示すフローチャートである。 図7のフローチャートにおいて使用される、クラスタエネルギー最小点の選択例を示すフローチャートである。 図7のフローチャートにおいて使用される、点エネルギー最小点の選択例を示すフローチャートである。 通し番号i−1が与えられた状態で、次の通し番号iを決める際の各点の関係例を示す説明図である。 本実施の形態により生成されたランダム型クラスタドットハーフトーンマスクの例を示す説明図である。 本実施の形態により生成されたランダム型クラスタドットハーフトーンマスクを用いて2値化処理を行った例を示す説明図である。 本実施の形態により生成された2種のランダム型クラスタドットハーフトーンマスクを用いて2値化処理を行った例を示す説明図である。 図7のフローチャートを高速化した例を示すフローチャートである。 図14のフローチャートにおいて使用される、クラスタエネルギー最小点の選択例を示すフローチャートである。 図14のフローチャートにおいて使用される、点エネルギー最小点の選択例を示すフローチャートである。 図14のフローチャートにおいて使用される、エネルギー値記憶メモリの更新処理例を示すフローチャートである。 図14のフローチャートにおいて使用される、接触クラスタ番号の定義、及び接触エネルギー値の更新処理例を示すフローチャートである。 核点配置(収束前後)の例を示す説明図である。 本実施の形態により生成されたランダム型クラスタドットハーフトーンマスクを用いて2値化処理を行った別の例を示す説明図である。 ランダム型分散ドットマスクと本実施の形態により生成されたランダム型クラスタドットハーフトーンマスクによる2値化画像の周波数特性の比較例を示す説明図である。 ランダム型分散ドットマスクと本実施の形態により生成されたランダム型クラスタドットハーフトーンマスクによる2値化画像の周波数特性の比較例を示す説明図である。 本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
本実施の形態の説明を行う前に、本実施の形態の前提となる技術について説明する。
ハーフトーン技術分野において、「ランダム型のクラスタドットハーフトーンマスク」という技術領域がある。ハーフトーン技術におけるこの技術領域の位置づけを、まず説明する。
<1 従来ハーフトーン技術における本技術の位置づけ>
M>N(M、Nは2以上の整数)として、M値の原画像をN値の画像に変換する処理は減色処理と呼ばれる。デジタル文書/画像を印刷する際には、出力デバイスの出力階調数に合わせた減色処理が行われるが、この減色処理はN値の画像で擬似的にM値を表現するもので、特に、(デジタル)ハーフトーン処理(スクリーニング・スクリーン処理)と呼ばれる。例えば、M=256,N=2あるいはN=4などがハーフトーン処理の典型的な例と言える。図3(a)にM=256の原画像の例、図3(b)にこの原画像に対応するN=2の場合のハーフトーン画像の例を図示する。なお、カラーの画像をハーフトーン処理する際には、CMYKあるいはRGBなどの各プレーン毎にハーフトーン処理を行い、デバイスで出力する際に順次重ね合わされる。また、出力デバイスの出力解像度に応じて、多くの場合にはハーフトーン処理前に解像度変換(主に拡大)処理が行われる。
<1.1 ハーフトーン技術の分類>
従来のハーフトーン技術の概要については、非特許文献2、非特許文献8などを参考にすることができる。本節では、部分的にこれらの文献も参考にしながら、従来のハーフトーン技術を大局的な観点から整理する。ハーフトーン技術は、歴史的な流れの観点でそれぞれを括って整理するというのが一般的だが、数学的な観点から見ると遠回りになる傾向がある。そこで、ここでは従来のハーフトーン技術を並列に俯瞰して以下の3つの要素を抽出し、数学的に単純な形で全体をまとめて整理・分類する。
・第1要素:処理方法
・第2要素:ハーフトーン画像タイプ
・第3要素:志向モデル(より狭義には評価関数/生成アルゴリズム)
これらの3つの要素は、いずれも画質向上という目的のための異なる要素であり、任意のハーフトーン技術は基本的にこの3つの要素の掛け合わせで表現できる。直感的には、第3要素で決めたモデル(評価関数)を利用して、第2要素で決めたタイプのハーフトーン画像を、第1要素の処理方法で生成する、という見方ができる。以下、簡単のためにM=256のグレー画像に対し、N=2(つまり2値)でハーフトーン処理を行う場合を前提にして、上記3つの要素の詳細について説明する。なお、CMYK画像の場合や、N>2(多値出力)での方法などに関しても、一部には固有の議論が必要だが、基本的には同様のことが当てはまる。
<1.1.1 第1要素:処理方法>
処理方法の観点からは、ハーフトーン技術は以下に大別される。
・単点処理法:原画像の1画素から2値画像の1画素を決定する方法
・適応処理法:原画像の複数画素から2値画像の1画素を決定する方法
単点処理法の代表的な方式としてマスク法がある。マスク法は、離散格子上に記憶したデータで原画像を周期的に覆い、原画像の各点で対応するマスク上の点のデータと一対比較を行って、その大小により出力画像のON/OFFを決定するもので、処理の高速性から広く用いられている。前記の格子上に記憶したデータはハーフトーンマスク(閾値マトリクス/ディザマスク)と呼ばれる。マスク法はディザ(リング法)などとも呼ばれるが、ディザという用語は後述の誤差拡散処理なども含んで使われる場合もあるので注意が必要である。マスク法の派生方式として、濃度毎に(マスク)パターンを定義しておいて使うという方法(multiple bitmap法)もあるが、実用で使われる機会は少ない。また、単点処理法の他の方式として、濃度パターン法と呼ばれる、原画像の1点を複数のドットからなる2値画像で表現するという方式もあるが、これも近年では使われる機会は少ないと考えられる。したがって、現状では単点処理法と言ったらほぼマスク法であると考えてよい。マスク法の場合はマスク生成処理自体が本質的にハーフトーン処理の画質に関わっているので、単にマスク法ではなく、マスクの生成方法自体をこの第1要素に含めて考えてもよい。
適応処理法は、原画像の画素値を2値化する際に周囲の画素の2値化状態を加味する方式であり、一般に単点処理法と比較して処理負荷は掛かるが高画質な画像を得ることができる。代表的な方法に誤差拡散法があり、マスク法と同様に広く用いられている。平均誤差最小法と呼ばれる誤差拡散法と類似のアイデアに基づく方式もある。また、原画像と2値画像の(視覚上の)距離を最小化するという考え方のdirect binary searchと呼ばれる方式も適応処理法に属する(この種の方式は反復計算法として小分類することもある)。
<1.1.2 第2要素:ハーフトーン画像タイプ>
一般に、ハーフトーン技術は、得られる画像の見た目の性質の観点からは、クラスタドット/分散ドットと、規則型/ランダム型という2つの観点の掛け合わせによって、以下に大別できる。
・規則型クラスタドットハーフトーン:格子状にクラスタを配置する
・規則型分散ドットハーフトーン:格子状に孤立点を配置する
・ランダム型分散ドットハーフトーン:ランダムに孤立点を配置する
・ランダム型クラスタドットハーフトーン:ランダムにクラスタを配置する
なお上記4種の並び順は、一応、歴史的に登場してきた順番で並べてある。慣習的に言えば、クラスタドットハーフトーンは、クラスタの面積の増減によって濃淡を表現する方式であり、分散ドットハーフトーンは、孤立点の個数の増減で濃淡を表現する方式である。クラスタドットハーフトーンは網点スクリーンとして古くから知られていたが、これに対して分散ドットハーフトーンが後発で登場してきた経緯から、クラスタドットハーフトーンはAM(Amplitude Modulation:面積変調)スクリーン、分散ドットハーフトーンはFM(Frequency Modulation:周波数変調)スクリーン、と対比的に呼ばれることも多い。後2者のランダム型ハーフトーンについては、確率的(stochastic)スクリーンという呼び名も広く使われている。また慣習的にはランダム型ハーフトーン全体をFMスクリーンと呼ぶ場合もある。前記の単点処理法におけるマスク法についても、上記4種の要素が適用できる。マスク法におけるこれら4つのハーフトーンについては後述する。なお、第1要素における適応処理法は、本質的にランダム型のハーフトーンを志向したものであり、通常は規則型を志向することはない。したがって、実際には第2要素の4種のハーフトーンの全てを志向することができる(考慮する意味がある)のはマスク法だけと考えてよい。
<1.1.3 第3要素:志向モデル(より狭義には評価関数/生成アルゴリズム)>
さらに、ハーフトーン技術には、志向モデルという要素がある。代表的なものとしては、以下が挙げられる。
・周波数特性モデルによる方法(ノイズ特性/人間の目の視覚特性/その他数理モデル)
・空間特性モデルによる方法(デバイス出力ドット再現性/デバイス出力歪特性/その他数理モデル)
このような周波数/空間特性といった枠の他にも、デバイス依存/非依存といった観点の枠で見てもよいが、いずれにしても、より下位の要素が本質的な意味を持つ。多くの場合、モデルを特徴付ける評価関数がベースになり、評価関数の値ができるだけ良くなるように、何らかのアルゴリズムを用いて各濃度のパターンを生成してゆくことになる。そのため、この評価関数及びアルゴリズムが第3要素の実体だと考えてよい。また前記のとおり、アルゴリズムの部分は評価関数の適用方法を規定するものであるが、それがハーフトーン処理方法に直結するような場合は、むしろ第1要素の範疇とみなす方が自然かもしれない。また、評価関数についても第1、2要素に直接結びついている場合もあり、逆に第1、2要素に整合するように第3要素のモデルが考えられる場合もある。第3要素自体で複数を組み合わせるような場合も多い。
前述のように、異なる時代に各種のハーフトーン技術が現れてきたという経緯から、かつては、上記の第1要素、第2要素に技術の拠りどころを置くという考え方も多かったが、1990年代後半には、ベースとなる第1、2要素の各領域は実質的にほぼ出揃っており、近年では、第1、第2要素内での何らかの組み合わせや、あるいはこの第3要素の領域に拠りどころを置くことが多くなってきている。
<1.2 マスク法・ハーフトーンマスクの性質>
本技術は、前節の3つの要素の観点で言えば、以下で表現できる。
・第1要素:単点処理法におけるマスク法
・第2要素:ランダム型クラスタドットハーフトーン
・第3要素:エネルギー最小化理論
第3要素の「エネルギー最小化理論」(空間的な数理モデルの1つ)が本技術の核心となっている。その説明をする前に、本節ではまず第1要素におけるマスク法の概要を説明する。前述のように、マスク法はハーフトーンマスクにより原画像と画素一対比較をする方法で、得られる画像のタイプに応じて第2要素の4種に分けられる。はじめに、この4種のタイプのマスクの関係を図4に示す。なお、図4の対象領域410内に示した技術例が、本技術における対象となるものである。
また、図5にこれらのハーフトーンマスクで2値化した画像の例を示す。図5(a)の例に示す画像は、規則型クラスタドットハーフトーンマスクを用いて処理した画像である。図5(b)の例に示す画像は、規則型分散ドットハーフトーンマスクを用いて処理した画像である。図5(c)の例に示す画像は、ランダム型分散ドットハーフトーンマスクを用いて処理した画像である。図5(d)の例に示す画像は、ランダム型クラスタドットハーフトーンマスクを用いて処理した画像である。以下、4種のマスクそれぞれを説明してゆく。
<1.2.1 規則型クラスタドットハーフトーンマスク>
規則型クラスタドットハーフトーンマスクは、原画像の濃淡を格子状に並んだクラスタの大小で表現するマスクで、古くから網点スクリーンとして知られてきた。塊状にドットを集めて出力するため出力デバイスの再現性能が低くても比較的安定した再現を得ることができ、印刷/デジタルプリントの領域で古くから用いられてきている。なお、ここで塊状というのは必ずしも円形に近いとは限らず、ライン形状なども可能であり、一般に複数の点を規則的に集合させて再現する場合を指すものとする。塊状に配置するクラスタは通常格子点上に並べられるため、カラー出力時には、例えば、C:15度、M:75度、Y:0度、K:45度などの角度を付けた格子を使用するなど、色間のモアレ(低周波の干渉パターン)が起こりにくくするよう工夫される。各格子の格子点の間隔がクラスタのサイズ、つまり出力時の分解能に対応しており、一般には線数(Line Per Inch)などの単位で分解能が表現され、例えば175線などが使用される。格子は直交格子のほか、直交格子を含む任意の2次元(斜交)格子が利用できる。前述のように塊状にドットを固めて出力するため、安定した出力を得ることができるが、分解能が低く、また色間の干渉としてロゼッタパターンが視覚されるという欠点もある。
<1.2.2 規則型分散ドットハーフトーンマスク>
規則型分散ドットハーフトーンマスクは、原画像の濃淡を格子状に並んだ孤立点の増減で表現するマスクを指す。孤立点で出力するため、クラスタドットハーフトーンマスクと比較して高分解能な出力が得られるが、格子状のパターンが目立つという欠点がある。なお実際は、この規則型分散ドットハーフトーンマスクは、規則型クラスタドットハーフトーンマスクでクラスタサイズが1である特別な場合として定義できる。そのため、規則型クラスタドットハーフトーンマスクと比較して種類(パラメータ)は少なく、厳密な意味では、Bayerマスク(非特許文献1)のみとも言える、なお、前出の図5(b)に示す例がBayerマスクでの2値化結果である。
<1.2.3 ランダム型分散ドットハーフトーンマスク>
ランダム型分散ドットハーフトーンマスクは、ランダムかつ歪が少ないように孤立点を分散させて画像を表現するためのマスクを指す。このマスクは規則型クラスタドットハーフトーンマスクと比較して、高分解能であり、カラー出力時の干渉(モアレ)にも比較的強く、規則型分散ドットハーフトーンのような格子状パターンの心配がない。その反面でザラツキやマスク周期パターンが見えやすいという欠点があるが、近年の出力デバイスの再現性能(主に分解能)の向上によりザラツキやかすれなどの問題が改善傾向にあるため、近年使用される機会が増えてきている。特に、孤立点の再現性のよいインクジェットプリンタでは、第1要素で挙げた誤差拡散法と共に広く使用されている。ブルーノイズマスク(特許文献6)やvoid−and−clusterマスク(非特許文献7)がこのタイプのマスクの例として知られる。なお、単にランダムな孤立点を持ったマスクとして、かつては「砂目スクリーン」などが知られていたが、画質の観点からは現在では対象外の技術と考えてよく、ここでは、ランダム型といったらランダムで低歪であるものとする。また、「ランダムかつ歪が少ない孤立点」という状態を概念的に表す語として、「低周波成分が少ないホワイトノイズ」という意味で、ブルーノイズという語が定着している。
<1.2.4 ランダム型クラスタドットハーフトーンマスク>
ランダム型クラスタドットハーフトーンマスクは、ランダムかつ歪が少ないようにクラスタを分散させて画像を表現するためのマスクであり、ランダム型分散ドットハーフトーンマスクと同様、モアレに強いという性質を持つ。また、規則型クラスタドットハーフトーンマスク法と同様に、出力デバイスの再現性能が低くても比較的安定な再現性を得ることができる。確率的クラスタドットハーフトーンマスク(非特許文献5,6)やグリーンノイズマスク(特許文献5、非特許文献4)がこのタイプのマスクの例として知られる。また、「ランダムかつ歪が少ないクラスタ」という状態を概念的に表す語として、「低周波/高周波成分が少ないホワイトノイズ」という意味で、グリーンノイズという語が定着している。なお正確には、前述のブルーノイズと共に、パワースペクトルのRAPSD(Radially Averaged Power Spectrum Density:環状平均プロファイル)の形状によって規定される。
<1.2.5 4種のマスクの相互関係>
以上4種のマスクに加えて、図4に示すように、規則型とランダム型との境界領域に近いタイプのマスクもある。また、クラスタドットがごく少数のドットで形成される場合は分散ドットに近い性質も持ち、これも境界領域と言える。これらにも簡単に言及しておくと、例えば無理正接スクリーンの一部や、Rotatedディザ、さらに特許文献4に記載されたマスクなどもこれらの領域に含めることができる。
マスク法はそれぞれ異なる年代に異なるタイプが登場してきたという経緯があるため、呼び方や概念などが整理されていない側面があるが、歴史的な経緯を除外して数学的な観点から整理すると、上記のように第2要素の形で単純に整理できる。マスクデザインの観点からは、このような第2要素の形を決めた上で、第3要素のモデルをどう決めてゆくか、ということになる。ランダム型分散ドットハーフトーンマスクとランダム型クラスタドットハーフトーンマスクは、前述のブルーノイズ/グリーンノイズという概念的で広義な周波数特性モデルによって、それぞれ広義に第2要素を直接規定しているように見られることもあるが、マスクをデザインする場合に、結果的にこれらの周波数特性モデルに近い特性を持つマスクが得られるにしても、実際には第3要素においてこれらの周波数特性モデルを使用しない方式も数多い。実際に、第1、第2要素と比較して、実質的に第3要素はずっと多くのアプローチが取られており、この部分で本質的に技術/画質の工夫/進展が現れる場合も多い。後述する本技術もこの範疇に属している。
<1.3 ランダム型クラスタドットハーフトーンマスクの性質>
以下、本技術が主眼とする「ランダム型クラスタドットハーフトーンマスク」に議論を移す。なお、規則型クラスタドットハーフトーンマスクがAMスクリーン、ランダム型分散ドットハーフトーンマスクがFMスクリーンと呼ばれてきた経緯から、ランダム型クラスタドットハーフトーンマスクは、場合によってAM−FMハイブリッドスクリーンなどと呼ばれることもある。前述のように、このランダム型クラスタドットハーフトーンマスクには、大きく分けて2つのタイプ、すなわち確率的クラスタドットハーフトーンマスクとグリーンノイズマスクとがある。以下、これらの2つのタイプの性質について述べる。
<1.3.1 確率的クラスタドットハーフトーンマスク(非特許文献5、非特許文献6)>
実用に耐えうるランダム型クラスタドットハーフトーンマスクが初めて発表されたのは、1993年のOstromoukhovによる非特許文献5が初めてと考えられる。ここで提示された技術は、後に改良が加えられて確率的クラスタドットハーフトーンマスク(非特許文献6)として再発表された。この技術では、マスク内にランダムかつ歪が少ないように「核点」を配し、ボロノイ多角形分割を用いることにより各核点を含むクラスタ形状を決定し、後は段階的にクラスタが成長するように閾値を割り当てるという考え方を取っている。特許文献1に提示された技術は、この確率的クラスタドットハーフトーンマスクの領域の技術と言え、Ostromoukhovによる方式に似た考え方により、ボロノイ多角形分割してそれを網点セルとしてボロノイ母点からクラスタ成長させている。また、特許文献2,3に提示された技術もこの領域に入るタイプとみなされるが、周波数特性モデルなども利用している。
<1.3.2 グリーンノイズマスク(特許文献5、非特許文献4)>
ついで、1999年になって前記の確率的クラスタドットハーフトーンマスクとは少し異なるタイプのマスクが、グリーンノイズマスクと名付けられてArce,Lauらによって発表された。この方法は、ランダム型分散ドットハーフトーンマスクの代表であるブルーノイズマスクの考え方を応用したもので、簡単に言えば「ブルーノイズマスクのクラスタ版」のようなものと言える。つまり、ブルーノイズマスクでは孤立点が徐々に点灯していくのに対し、グリーンノイズマスクでは、所定サイズのクラスタが徐々に点灯していく。なお、孤立点=高周波の呼び名であるブルーノイズに比較して、「所定サイズのクラスタ」という概念は周波数特性として広い表現をすると「中周波域」に対応しており、その領域に対応する語としてグリーンノイズという語が充てられている。
<1.3.3 2方式の相違点と、一般的な問題点>
前記の確率的クラスタドットハーフトーンマスクとグリーンノイズマスクは、共にランダムかつクラスタ状の構造を持つため視覚的にも類似の結果を与える。実際に、一部の濃度ではほとんど差異がないレベルに近い場合もある。しかし、確率的クラスタドットハーフトーンマスクが「クラスタが成長する」というAMスクリーンの流れをベースにしているのに対して、グリーンノイズマスクは、クラスタを点とみなしてしまえば、「点の個数が増大する」というFMスクリーンの流れをベースにしていると言うことができる。実際に、確率的クラスタドットハーフトーンマスクは、濃度の増大と共にピークとなる周波数成分には基本的な変化はないが、グリーンノイズマスクは、徐々にピークとなる周波数成分は高周波側に移行する、という特徴がある。
ランダム型のハーフトーンマスクのうちでは、クラスタドットの方が分散ドットに比べてマスク生成における調整要素がより広く、画質を安定させやすいという面がある。そのため、クラスタドットの方が分散ドットよりもマスク生成の自由度が高い。しかしそれでも第3要素のモデルが画質に影響を与え、少なくとも上記従来技術は規則型クラスタドットハーフトーンと比較してザラツキやマスク周期のパターン顕在化の懸念がある。よりよいモデル/アルゴリズムでマスク生成することが必要となっている。また、非特許文献5、特許文献1に記載の技術のようにボロノイ母点を核点としてボロノイ多角形を均一に埋めるように等方的にクラスタ成長させる、という概念は自然な考え方だが、核点から等方的にクラスタ成長させるという条件は、少なくとも単色での画質を考慮する上で必要条件でも充分条件でもなく、確率的クラスタドットハーフトーンマスクの技術領域においては、数学的な観点からはより最適な画質を追求し得る可能性が残されている。
<2 エネルギーを用いたランダム型分散ドッハーフトーンマスクの生成方法>
本技術では、数学的に正しく定義されたエネルギーを用いて、ランダム型クラスタドットハーフトーンの生成を行う。その説明をする前に、参考のために、エネルギーを用いてランダム型分散ドッハーフトーンマスクを生成する方法について説明する。
<2.1 ランダム型分散ドットハーフトーンマスクの生成>
以下、エネルギーを用いた、ランダム型分散ドットハーフトーンマスクの生成方法及びエネルギーの定義を簡単に説明する。
<2.1.1 生成アルゴリズム>
ランダム型分散ドットハーフトーンマスクの生成においては、w×hサイズの閾値マトリクス内の全ての点を対象として、以下の工程により、マトリクス内の各点に0,…,l−1の閾値番号を割り当てる。
1.エネルギーが最小となる順に0,…,wh−1までの通し番号を与え、
2.後に各通し番号をwh/lで除算する
ここで、lは要求される階調数で、好適にはl=256などが使われる。閾値マトリクス内から通し番号i∈{0,…,wh−1}を与える点を選択する際には、まだ番号を与えていない点の中で、最もエネルギー値が低い点を選択して番号iを与える。この際に、既に0,…,i−1の通し番号を与えた点をエネルギーの対象とする。各注目点でのエネルギーは、注目点と他の対象点との距離を変数とする関数の総和平均として定義される値であり、直感的な説明をすれば、注目点からより遠くにある点ほど値が小さい(影響が小さい)という性質を持つ。図6の例に示すとおり、従来方式であるvoid−and−cluster法(図6(a)の例参照)と本技術による方法で生成した分散ドットハーフトーンマスク(図6(b)の例参照)でそれぞれ2値化した画像を比較すると、本方式の方がザラツキの少ないことが確認できる。第3要素の観点で言えば、void−and−cluster法はガウシアンフィルタによるvoid/cluster判別モデルに基づいており、画質上もランダム型分散ドットハーフトーンマスクの標準的な方式とみなされている。
<2.1.2 エネルギー(点エネルギー)の定義>
前節、ランダム型分散ドットハーフトーンマスク生成時に使用しているエネルギーについて説明する。なお、このエネルギーは後述の本技術におけるランダム型クラスタドットハーフトーンマスク生成においても使用され、そこでは便宜的に点エネルギーと呼んでいる。これは、ランダム型クラスタドットハーフトーンマスク生成において主に使用されるエネルギーがクラスタエネルギーと名付けるエネルギーであり、これと区別するためである。
2次元平面の部分集合[0,w)×[0,h)上の点集合をXとして、点x∈Xにおける点エネルギーI(X,x,f)を以下の(1)式で定義する。なお、以下の説明で点x,y,zなどは全て2次元ベクトルであり、例えばx=(x,x)などの座標値により特定される。
Figure 0005891865
ここで、f(‖x−y‖)は、2点x,y∈Xの間で生じる相互影響値を意味しており、rは、‖x−y‖>rの場合に相互影響値が0になることを明示するための添え字である。
|X|は点集合Xの点の総数を意味する。また、距離‖・‖は、空間[0,w)×[0,h)上の周期境界距離であり、以下の(2)式で定義される。
Figure 0005891865
以上で定義されるIは、注目点x∈Xと、xから半径r以内にある点y∈X(xを含む)とのf値総和平均を意味する。
集合Xに対して、各点xの点エネルギーを最小化することによって、均一かつ等方な点分散が得られることを保証するためには、関数fに数学的に保証された条件を与える必要がある。表記を簡単化するために、エネルギー勢力半径r>0(定数)を導入し、区間[0,1]上で定義された関数hにより正規化して、以下の(3)式で表記する。
Figure 0005891865
このとき、均一かつ等方的な点分散を保証するために、以下に示す3つの条件を課す必要がある。
H1:hはC級で単調減少凸関数
H2:h(1)=limx→1h’(x)=limx→1h’’(x)=0
H3:(h’’(x1/2)/(x1/2))が凸関数(暫定的にはp=1/2)
このような条件を満たすhとしては、例えば以下の(4)式が挙げられる。
Figure 0005891865
簡単な説明をするならば、各点が互いにより遠くに離れた状態にあるほど各点間に働く影響値fが小さくなりエネルギーが最も低くなる、というイメージであり、それを数学的に正しく保証するために、上記H1−H3が必要となる。このような定義を満たす関数h を使うことで、「エネルギー最小の状態が均等に散らばった点分散である」ということを保証することができる。なお、各点xでのエネルギー計算は、実用上はI(X,x,f)の代わりに、より簡単な以下の(5)式のエネルギー値を使ってもよい。
Figure 0005891865
は、注目点x∈Xと、xから半径r以内にあるその他の点y∈Xとのf値総和を意味する。
<3 本実施の形態の構成例>
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
本実施の形態である画像処理用マスク(以下、単にマスクともいう)生成装置は、画像処理用マスクを生成するものであって、図1の例に示すように、エネルギー算出モジュール110、順位付モジュール120、閾値割当モジュール130、出力モジュール140を有している。ここで画像処理用マスクとは、多階調画像をハーフトーン画像に変換(減色処理)するために用いられるものである。特に、この画像処理用マスクは、エネルギー最小化理論を応用して生成される、「ランダム型のクラスタドットハーフトーンマスク」である。つまり、本画像処理用マスク生成装置は、「ランダム型のクラスタドットハーフトーンマスク」を生成する。
エネルギー算出モジュール110は、順位付モジュール120と接続されている。エネルギー算出モジュール110は、画像処理用マスク内の各点におけるクラスタエネルギーを算出する。なお、クラスタエネルギーの算出は、注目点xと、その注目点xを含まないクラスタに属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の総和により定義される。また、クラスタエネルギーはさらに、注目点xと空白領域に属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の負総和との、重み付き平均で定義されるようにしてもよい。また、関数fは、予め定められた強度の凸性を有する2階微分可能関数により定められているようにしてもよい。また、エネルギー算出モジュール110は、K個のクラスタの核点を画像処理用マスク内にランダムに配置し、そのクラスタをエネルギー降下させて生成するようにしてもよい。また、エネルギー算出モジュール110は、予め定められた濃度で、クラスタの形成を黒側から白側又は白側から黒側へと反転させるようにしてもよい。例えば、画像処理用マスクは、w×hの大きさを有している矩形(マトリクス、行列)である。その場合、例えば、クラスタエネルギー最小順に通し番号0〜wh−1を与えながら成長させ、閾値割当モジュール130によって、その得られた通し番号を0〜l−1(lは要求される階調数)に割り付けることになる。
順位付モジュール120は、エネルギー算出モジュール110、閾値割当モジュール130と接続されている。順位付モジュール120は、エネルギー算出モジュール110によって算出されたクラスタエネルギーの値に基づいて、昇順又は降順に順位付けを行う。
閾値割当モジュール130は、順位付モジュール120、出力モジュール140と接続されている。閾値割当モジュール130は、順位付モジュール120による処理結果である順位に基づいて、画像処理用マスク内の閾値を割り当てる。
出力モジュール140は、閾値割当モジュール130と接続されている。出力モジュール140は、閾値割当モジュール130によって閾値が割り当てられた画像処理用マスクを出力する。ここで、画像処理用マスクを出力するとは、例えば、他の画像処理装置(プリンタ等の印刷装置等)へ渡すこと、記憶装置(メモリーカード等の記憶媒体等を含む)へ書き込むこと等が含まれる。
図2は、本実施の形態を画像形成装置200に用いた場合のシステム構成例を示すモジュール構成図である。
画像形成装置200は、図2の例に示すように、画像受付モジュール210、マスク処理モジュール220、出力モジュール230、マスク生成装置100を有している。画像形成装置200は、多階調画像を対象として、画像処理用マスクを用いてハーフトーン化するものである。なお、画像形成装置200は、マスク生成装置100の替わりに、マスク生成装置100が生成した画像処理用マスクを記憶しているマスク記憶モジュールを有していてもよい。
画像受付モジュール210は、マスク処理モジュール220と接続されており、画像を受け付けて、その画像をマスク処理モジュール220へ渡す。画像を受け付けるとは、例えば、スキャナ、カメラ等で画像を読み込むこと、ファックス等で通信回線を介して外部機器から画像を受信すること、ハードディスク(コンピュータに内蔵されているものの他に、ネットワークを介して接続されているもの等を含む)等に記憶されている画像を読み出すこと等が含まれる。画像は、多階調画像(カラー画像を含む)である。受け付ける画像は、1枚であってもよいし、複数枚であってもよい。また、画像の内容として、ビジネスに用いられる文書、広告宣伝用のパンフレット等であってもよい。
マスク処理モジュール220は、画像受付モジュール210、出力モジュール230、マスク生成装置100と接続されており、画像受付モジュール210によって受け付けられた多階調画像を対象として、その多階調画像内の画素値とマスク生成装置100によって生成された画像処理用マスク内の閾値とを比較するマスク処理を行うことによって、ハーフトーン画像を生成する。マスク生成装置100から受け取る画像処理用マスクは、前述のように生成した画像処理用マスクであってもよいし、マスク生成装置100が予め生成した画像処理用マスクを記憶しておき、マスク処理モジュール220からの要求によって記憶している画像処理用マスクを選択して渡すようにしてもよい。
出力モジュール230は、マスク処理モジュール220と接続されており、マスク処理モジュール220によって生成されたハーフトーン画像を受け取り、その画像を出力する。画像を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、ファックス等の画像送信装置で画像を送信すること、画像データベース等の画像記憶装置へ画像を書き込むこと、他の情報処理装置へ渡すこと等が含まれる。
<4 本技術でのランダム型クラスタドットハーフトーンマスク生成>
本実施の形態に用いる技術は、ランダム型クラスタドットハーフトーンマスクの2つのタイプの方式のうち、確率的クラスタドットハーフトーンマスクのタイプに属するマスクを生成する技術であり、以下のような特徴を備える。
・確率的クラスタドットハーフトーンマスクで通常行われる、ボロノイ多角形などのクラスタの形状(網点セル)の指定を行わない
・クラスタの成長を数学的に正しいエネルギーを用いて行う
クラスタ形状の指定を行わないことにより、マスク内でのクラスタ成長の自由度が高くなり、さらに数学的に正しいエネルギーの効果によって、画質の点でもより最適な結果を得ることができる。また、セル分割や周波数変換を行わないで、マスク生成を行い得る。
<4.1 基本構成(例1)>
以下、本技術におけるランダム型クラスタドットハーフトーンマスクの生成方法を説明してゆく。閾値マトリクス内の各データ(以下、点あるいは画素と呼ぶ)として、ランダム型分散ドットハーフトーンマスクと同様、0からwh−1までの通し番号を一意に与え、例えば最後にwh/lで各データ値を除算すれば、0からl−1までの閾値番号がマスク内の各画素に割り振られ、閾値マトリクスが生成される。通し番号順に点を点灯させたときに、歪がないランダムなクラスタ分布を実現するために、エネルギーの概念を使用する。
<4.1.1 ステップ1:準備>
はじめに、マスク生成に必要なパラメータやメモリの準備/初期化を行う。
まず、パラメータとして、以下を定める
・(w,h):マスク縦横サイズ(各単位:ピクセル)
・L:出力デバイスの分解能(単位:dpi)
・L:出力相当線数(単位:lpi)
・K=INT(wh・(L/L+1):総核点数(単位:個)
・r:エネルギー勢力半径(単位:ピクセル)
・f:相互影響値関数(条件H1−H3を満たす関数hにより(3)式で定義)
ここで、Lは出力デバイスの分解能で、単位は1インチ当たりの線数とし、Lはデバイスで出力時に所望とする分解能で、単位は同じく1インチ当たりの線数とする。一般に、(w,h)サイズマスクにK個の核点を配置して、分解能L(dpi)で出力したときの相当線数Lは以下の(6)式で与えられる。
Figure 0005891865
したがって、先にLが与えられた場合は、上記のように逆算してKを決めることができる。なお、INT(x)はxの整数部分を返す関数とする。総核点数Kは、最終的に生成されるマスクの分解能(総当線数)に直接的に影響を与え、Kを大きくするほど、マスク内に多くの核点が置かれ、結果的に出力時の分解能を上げることになる。逆にKの値が小さければ分解能は小さくなる。エネルギー勢力半径(実数値)rは0<r≦min{w,h}/2となるように定義すればよいが、一般には大きい値を設定する。大きい値を設定するとエネルギー計算の演算量は増えるが、より広い範囲でエネルギーが考慮され、マスク内の歪を小さくできる。相互影響値を決めるための関数hはH1−H3を満たせばよいが、必要以上に強い凸性を持つ関数を指定しない。rとhを決めることにより、関数fが定まる。
以上のパラメータの例として、例えば、w=h=160、L=2400、L=250等とすることができる。この例の場合、K=278となる。つまり、160×160マトリクスに278個の核点をランダムかつ均等に配置することにより、2400dpiの出力デバイスで250線相当の分解能を持つランダム型クラスタドットハーフトーンマスクを生成するということになる。fの定義には、例えば、前記(4)式のh(x)=(2/3−x+1/3・xとr=48.0などを用いて(3)式で定義することができる。あるいはr=min{w,h}/2=80.0としてもよい。
次に、以下に示すような定義及びメモリの準備/初期化を行う。
・BLACK=0,WHITE=1,EMPTY=2と定義
・D={0,…,w−1}×{0,…,h−1}:マスク定義域(メモリサイズ)
・v(i):通し番号i=0,…,wh−1に対応するD上の点(x,y座標)
→ 初期化不要
・cnum(x):各点x∈Dが属するクラスタ番号
→ 全てのx∈Dに対してcnum(x)=−1で初期化
・patt(x):各点x∈Dの2値パターン
→ 全てのx∈Dに対してpatt(x)=EMPTYで初期化
・th(x):各点x∈Dに対する閾値マトリクスの閾値
→ 初期化不要
以下に示すステップ2でw×hサイズマスク内に一意な通し番号0,…,wh−1を与え、必要に応じてステップ3で通し番号を0,…,l−1の範囲の値に割り付け、これが最終的な閾値マトリクスの閾値になる。v(i)は、通し番号iを与える点x∈Dが決まったときに、その点の位置を記憶するためのメモリである。また、cnum(x)はK個の核点に便宜的に0,…,K−1までの一意な識別番号を与え、ついで、各点x∈Dに通し番号を与える際に、xがどのクラスタに属するかを記憶/参照するためのメモリとしても使用する。patt(x)は各通し番号iを生成して行く際に、0,…,i−1までの通し番号が付された全点v(i)を点灯させた2値パターンを更新して行くためのメモリである。上記の他にも、必要なメモリは逐次確保して使用する。なお、v(i)は2次元メモリ、cnum(x)、patt(x)、th(x)は1次元メモリとして管理すると扱いやすい。
なお本技術では、次のステップ2において、上記の相互影響値関数fにより定義される2種類のエネルギー値J、Jを算出して使用するが、説明上の混乱を避けるために、便宜的に、
・J:点エネルギー ((5)式)
・J:クラスタエネルギー ((7)式:後述)
と呼ぶこととする。Jについては前記のランダム型分散ドットハーフトーンマスクの生成における(5)式で既に説明している。Jの定義については後述する。なお一般に「エネルギー」という用語はこれらを含めた全体の概念としても使用するので注意する。
<4.1.2 ステップ2:通し番号0,…,wh−1の割り付け工程>
次に、全ての点に対して、一意な通し番号0,…,wh−1を与える。そのための準備として、以下に示すような内部パラメータ/メモリを準備する。
・s:クラスタサイズ遊び
・s(j):クラスタ番号j=0,…,K−1のクラスタを構成する総点数
→ s(j)=0で初期化
・smin:現在の最小クラスタ構成点数
→ smin=0で初期化
クラスタサイズ遊びsは、核点からクラスタ成長させる際に、クラスタを構成する総点数にどれくらいの差異を許容するかであり、通常はs=1とするが、場合によってより大きな値に変えてもよい。通し番号の割り付けは図7に例示する工程により行う。
本ステップ2の核心は、D上の点に通し番号0からi−1までがそれぞれ一意に与えられた状態で、既に配置済みのクラスタに接する点の中でクラスタエネルギー最小となる点に次の通し番号iを与える方法にある。概念的な理解として、ある点xにおけるクラスタエネルギーとは、x(後述の図10での×)と「xが所属しないクラスタ(図10での黒点)上にある点y」との間の距離を変数とする相互影響値の総和で定義される。そこで、概念的な理解の下でまず全体のフローを説明した後に、次節で実際のクラスタエネルギーの詳細な定義について説明する。
図7に例示するフローチャート1を参照しながら、D上に通し番号i=0,…,wh−1を一意的に定めてゆく工程を説明する。
まずS702においてi=0と初期化する。S704において、D内で通し番号がまだ与えられていない点のうち、既に配置したクラスタに接する点の中でエネルギーが最小となる点を選択する。なお、このエネルギー最小点の選択の詳細は図8のフローチャート1a、図9のフローチャート1bを用いて説明する。(ここで、「既に配置したクラスタに接する点」というのは大局的な意味であって、i=0,…,K−1の場合、つまりクラスタの始めの1点目が生成されていない段階では、この接触条件はつけない。これも図8、図9で説明する。)S704においてエネルギー最小点を選択したら、S706に進んで、次の通し番号i+1を決める際に必要な更新処理を行う。具体的には、S706では、以下のように更新する。
・patt()=BLACK:現時点での2値パターン(通し番号0,…,i−1が付された点を点灯させたパターン)に、通し番号iを与えた点を新たに更新する
・v(i)=:通し番号iを与えた点(の座標)を記憶
・cnum()=:通し番号iを与えた点が所属するクラスタの番号を登録
・s()=s()+1:通し番号iを与えた点が所属するクラスタを構成する総点数の更新
・smin=min{s(i):i=0,…,K−1}:通し番号iを与えた時点での最小クラスタ構成総点数を更新
S706の更新処理が終了したら、S708に進んで、通し番号をi:=i+1と更新する。S710に進んで、i=whか否かを判定し、i=whであれば全ての通し番号が設定されたとみなし、処理を終了し、i<whの場合は、次の通し番号を与えるべく、S704に戻って上記の処理を繰り返す。
以上により、与えられたD上に通し番号i=0,…,wh−1が一意的に定められる。
この通し番号を後述するステップ3において閾値0,…,l−1に割りつけることで、最終的な閾値マトリクスが決定するが、その説明を行う前に、前記S704において、エネルギー最小点を選択する際の具体的な処理について、以下に説明する。
図8に例示するフローチャート1aを参照しながら、D内で通し番号がまだ与えられていない点の中から、既に配置したクラスタに接する点の中でクラスタエネルギーが最小となる点xを選択する方法を説明する。
まず、S802において、Jminを充分大なる値で初期化する。例えばJmin=1000000などである。S804に進んで、D内で通し番号がまだ与えられていない点yを取る。例えば、D上を左上から右下に順に操作して順次設定してもよい。
続いて、S806において、前記点yがいずれかのクラスタに接触している場合、そのクラスタ番号を取得する。なおそのような接触があるとすると、定義によりその接触先の点は既に通し番号0〜i−1のうちのいずれかが与えられている点であるということに注意する。具体的には、S806において、点yから見て、相対的に上下左右に接する4つの点の集合T(y)(周期境界距離‖・‖において)のうちでクラスタ番号cnumが与えられた点z∈T(y)があれば、その中から任意に1点zを取って、j=cnum(z)と置く。いずれのクラスタとも接触していない場合には、j=−1と置く。
次に、S808において、選択した点yがクラスタサイズを規制しながらクラスタ成長させるための候補点の条件に合っているかをチェックし、合っている場合にのみ候補点とみなして、S810以下に進んでエネルギー計算を行う。具体的には、S808においては、以下の2つの制約条件を設け、2つの条件のうちどちらかが満たされた場合にのみエネルギー計算を行う。
・クラスタを構成する始めの1点目がまだ全ては配置されておらず、点yがいずれの配置済みクラスタとも接しない場合、つまり、yについてj=−1かつsmin=0である場合
・点yが既に配置したクラスタと接し、かつそのクラスタを構成する画素数が許容範囲内にある、つまり、yについてj≧0,s(j)≧smin,s(j)≦smin+sの場合
S808における上記条件のどちらかが満たされた場合、S810に進む。S810においては、点集合Xを既に0,…,i−1の通し番号が与えられた点全体とし、点yとXの点との間のクラスタエネルギーJを計算し、Jcurrentに代入する。Jの詳しい計算方法については後述する。なお、i<Kである場合、実質的にクラスタエネルギーJは点エネルギーJと等しくなる。
続くS812においてJcurrent<Jminであれば選択した点yの方がエネルギーがより小さいと判断し、S814に進んでJminをJcurrentに更新するとともに、最小エネルギー候補点:=yと更新する。
S816に進んで、smin=0であれば、S818に進み、新たにyのクラスタ番号を=iで登録する。つまり、smin=0である間は全てのクラスタが発生し終わっていないため、新しいクラスタの核点を決めるたびに、通し番号iをそのままクラスタ番号として登録する。
一方、S816においてsmin≠0であれば、S820に進み、全てのK個のクラスタは少なくとも1点は配置されているので、新たなクラスタ番号を与えずに、yが接触しているクラスタのクラスタ番号jを取って、=jと割り当てる。
S822に進んで、以上の処理を、通し番号が未決定の全てのDの画素について行われたかどうかを判定し、行われていなければS804に戻り、次の候補点yについて処理を繰り返す。(なお、上記S808やS812において条件が満たされない場合も、選択した候補点yについての処理をやめ、該S822に進んで同様の判定処理が行われる。)
S822において、D上の全ての画素について処理が終了している場合、最小エネルギー点及びその点が属するクラスタ番号が求められる。ただし、まれにiの値がwhに近いような大きな値になると、s(j)≧sminかつs(j)≦smin+sというクラスタサイズの制約を満たす中で最小エネルギー点が選択できない場合がある。このような場合を考慮して、S824において、Jmin値が更新されているかどうかを判定し、Jmin値が更新されていない場合は、例外的にs(j)≧sminかつs(j)≦smin+sというクラスタサイズの制約を外した状態でクラスタエネルギーが最小となる点を求めなおすか、あるいは図9に説明するフローチャート1bへ進んで(S826)、単純に点エネルギーが最小となる点を求めなおすかして及びを決定する。なお、上記においてJmin値が更新されているということは、少なくとも一つ最小エネルギー候補点が定義されているということであり、逆にJmin値が更新されていない場合のみ、最小エネルギー候補点が決まっていないということに注意する。
最後にS828に進み、求めた及びを元の図7の例に示すフローチャート1に返して、S706以降の通し番号iを与える処理に進む。これについては前述した。
前記、S824において、最小エネルギー候補点が求められてない場合に、再度最小エネルギー候補点を定める処理の例を、図9のフローチャート1bに例示する。クラスタ構成画素数などの条件を満たすようにクラスタエネルギーが最小となる点を選択することができない場合の方法として、フローチャート1bでは、点エネルギー最小となる点を選択している。全体のフローについては、図8に示すフローチャート1aと同様であるから説明を省略するが、フローチャート1bではクラスタの接触制約を外して点エネルギー最小点を選択するため、クラスタの接触に関してはチェックが不要となり、例えばS908に示す判定処理においてj≠−1の場合、つまりいずれかのクラスタと接触する場合(接触先は問わない)に点エネルギー計算の候補点とすればよいことに注意する。
なお、このように最小クラスタエネルギー点が取得できない場合に最小点エネルギー点を取得しなおす構成にしているのは、ほとんどの場合に最小クラスタエネルギー点が取得できるため、僅かに失敗した場合に限って最小点エネルギー点を選択しなおすという方が効率的なためである。例えば図8と図9のフローチャートで共通な部分は共通化してもよい。その場合、効率は悪くなるが機能面には変わりはない。
<4.1.3 クラスタエネルギーの定義>
図10を参照しながら、前記クラスタエネルギーJ計算の詳細を説明する。i番目の点を選択する際には、具体的には、便宜的に
・X={x∈D:patt(x)=BLACK}
(既に通し番号0,…,i−1が与えられた点全体)と定義して、前記ステップ2で、
・まだ通し番号が割り振られていない点y∈D\Xであって、
・yの上下左右に接触する4点T(y)のどれかがいずれかのクラスタ(番号j)に属していて、
・クラスタ(番号j)を構成する点数が、現状の最小クラスタ構成点数からの差分が高々sであること
を満たすような点の中で、クラスタエネルギーJ(X,y,f,i)が最小の点を選択する。
この注目点xでのクラスタエネルギーJ(X,x,f,i)は、以下の(7)式で定義される。
Figure 0005891865
図10と対応させて、(7)式の意味を説明する。まず、重みp(i)はグレーレベル値を意味し、p(i)=i/whで定められる、0から1の間の実数として定義される。また、注目点をxとして(図10の1010に示す×)、Cは以下で定義する。
・C(x)={y∈X:cnum(x)=cnum(y)}
つまり、C(x)は0,…,i−1までの通し番号が付された点全体のうちで、現在の注目点xが属するクラスタを構成する点全体を指す(図10の1020内、斜め線で示した点全体)。従って、X\C(x)は、既に通し番号0,…,i−1が与えられた点であって、注目点xが接触するクラスタに属さない点全体を表す(図10の黒点全体)。またD\Xはまだ通し番号が与えられていない点全体(図10の空白領域の点全体)を指す。距離r以上離れれば、f=0だから、yは‖x−y‖≦rの範囲に限定してよい。したがって、(7)式における2つの和は、それぞれ以下のような意味を持つ。
・「注目点xにおいて、xを含まないクラスタ上の全ての点(既に通し番号が与えられた点であって注目点xが属するクラスタに属さない点)yとの間の相互影響値総和」:
Figure 0005891865
・「注目点xにおいて、空白領域上の全ての点(まだ通し番号が与えられていない点)yとの間の相互影響値総和」:
Figure 0005891865
重みp(i)により、通し番号iが小さい場合(ハイライト側に対応)には、(8)式のクラスタ間のエネルギーが相対的に重く評価され、通し番号iが大きい場合(シャドー側に対応)には、(9)式の空白領域に対するエネルギーが相対的に重く評価される。なお、(7)式の後ろ側の項(空白領域に対するエネルギー)が負の値になっているのは、点エネルギー評価計算における空白評価時には大小関係が逆になるためである(非特許文献3)。
説明の都合上、2値パターンpatt(x)=BLACKなる点集合をXと置いたが、実際にはこのようなXを定義/計算する必要はなく、注目点においてpatt値を参照してXに属するかどうかを判断すればよい。なお、重みp(i)は上記においてはp(i)=i/whと定めているが、p(i)=0で固定したり、その他の取り方をしても良い。p(i)=0とすると、(9)式に示す空白領域との相互影響値が無視され、純粋にクラスタ間のみの相互影響値が考慮される。
<4.1.4 ステップ3:閾値0,…,l−1の生成工程>
ここまでの工程で、X上の各点には0,…,wh−1までの通し番号が一意に与えられている。最後に、必要に応じて通し番号を0,…,l−1に割り付けることにより、閾値マトリクス内の各点xに閾値th(x)∈{0,…,l−1}を割り当てることができる。例えば、各通し番号をwh/lで除算することにより、各i=0,…,wh−1に対して、
Figure 0005891865
と設定することができる。
一般に、TRCなどをマスクデータに埋め込む際には、このように線形に割り付ける(均等割り)のではなく、任意のテーブルを利用したマッピング処理を行えば細かい制御ができる。このようにTRCなどをマスクデータに埋め込む処理は、出力機器の特性に応じて行われることであるため細かい説明は省略する。なお、以上の説明では通し番号iを与えた点の座標をv(i)に記憶してきたが、vを持たずにth()=iで設定する構成にしてもよい。ただし、閾値データは通常は8ビット値で記憶されることが多いため、通し番号を記憶するにはより大きなビット値のメモリを使用する必要があり、また通し番号iを与えた点を逆引きできる方が便利でもあるため、本技術ではv(i)に記憶している。
<4.1.5 具体例と性質>
w=h=160,K=278,l=256として、以上のステップにより生成したマスクデータ(閾値マトリクス)の例を図11に画像として示す。ここではステップ3として(10)式による256階調均等割りを用いている。本節の冒頭で述べたように、本技術では、確率的クラスタドットハーフトーンマスクで通常行われる、ボロノイ多角形などのクラスタの形状の指定を行わず、直接核点を成長させてゆく。したがって、従来のボロノイ多角形分割によりクラスタの成長形状を規定する方法や周波数変換して周波数特性を評価する方法と比較して、クラスタの成長の自由度が著しく高くなる上に、数学的に正しい関数fを用いているため、分散性の観点で見て最良の状態にクラスタ成長させることができる。その結果、ザラツキやマスク周期のパターン顕在化を極力抑えることができる。またこのような特徴により、より小さいマスクサイズで実用に耐えうる品質のマスクを生成することも可能となる。
また、図12にこのマスクで2値化した画像の例を示す(2400dpi出力時に250線相当)。図13(a)、13(b)には、本技術による方法で生成した別のマスクで2値化した自然画像の例を示す(それぞれ2400dpi出力時に300線相当及び400線相当)。
<4.1.6 高速化>
ステップ2において、新しい通し番号iを与える点を選択するのに、マスク内の全ての未処理点(通し番号を与えていない点)のうちでエネルギー最小の点を選択している。このエネルギー計算を高速化すると処理時間の短縮効果が高い。エネルギー計算を高速化する方法として、注目点xに対して所定距離r離れた点yとの間のエネルギー値f(‖x−y‖)=f(r)は常に一定であり、離散空間の特徴から、ここで出てくる距離rは格子点間の距離のみとなることに注意すると、f(r)値をテーブル化して記憶しておいて参照することで余計な計算を省略できる。具体的には、与えられたエネルギー勢力半径rに対して、
・rint=INT(r+1)
・d=2rint+1
と置いて、D={0,…,d−1}として、テーブルt(x)(x∈D)を、原点から距離r以下の格子点xに対して、
・t(x+(rint,rint)=f(‖x‖)
のように定義すればよい(上付き文字tは転置を意味する)。注目点xに対して距離r以下にある点yでの点xからのエネルギー値は、
・f(x−y)=t(x−y+(rint,rint
により参照できる。また、このテーブルt(x)は2次元テーブルだが、これを1次元テーブル化することでも高速化できる(この場合、アドレス計算での乗算が減るほか、半径r以内の点だけを記憶することで、2次元テーブル時のような矩形領域を参照しなくて済むため高速化される)。
このような高速化の他に、プログラム上の自明な高速化や、ステップ2での構成の工夫などでも高速化することができる。しかしながら、次に説明する例2はこれら全ての高速化よりもずっと効果が大きい。
<4.2 高速化(例2)>
前記の一連のアルゴリズムでランダム型クラスタドットハーフトーンマスクが生成されるが、これには様々なバリエーションがある。ここでは、4.1.6節に説明したものとは本質的に異なる高速化について説明する。端的には、ある点に通し番号iを決めた後で、エネルギー値の変化はその点から半径rの以内の各点のみに限られ、さらに各点でのその変位量はその点との間の相互影響値のみであるから、通し番号i+1を決める際に候補点でエネルギー値を全て計算しなおすのは効率が悪く、各点でのエネルギー値をメモリに記憶し、変位量のみ更新してゆくことで計算量を大幅に低減できる。
<4.2.1 ステップ2A>
ステップ2のアルゴリズムにおいて、Jcurrent=J(X,y,f,i)あるいはJcurrent=J(X,y,f,i)を計算するが、この計算をメモリ参照のみで済ますようにすると、マスク内の全ての通し番号未決定点のエネルギーを計算することなくメモリ参照で済むので、大きく高速化できる。本高速化の処理の流れは、「ステップ1→ステップ2A→ステップ3」となり、ステップ1とステップ3は、上記例1に説明したものと同じであるが、ステップ1においては、以下のメモリを追加で準備して初期化する。
・eapart(x)(xとxが属さないクラスタとのエネルギー値):各点x∈Dで(8)式の値を更新するために使用する
→ eapart(x)=0で初期化
・etouch(x)(xとxが属するクラスタとのエネルギー値):各点x∈Dで(9)式の値を更新するために使用する
→ etouch(x)=0で初期化
ここで、
total=Σy∈D(‖y‖) (定数)
とする。各点でエネルギーを計算する際には、注目点に対して(7)式及び図10で示したように、それぞれ対非接触クラスタ(図10の黒)、対空白(図10の白)とのエネルギー値を算出する必要があるため、これらを記憶するために上記メモリを準備する。このとき、各点x∈Dについて、成立する関係式:
Σy∈D(‖x−y‖)=Σy∈D(‖y‖)
により、
Figure 0005891865
という関係を利用することで、対接触クラスタ(図10の斜め線)とのエネルギーを記憶しておけば、対空白クラスタのエネルギーを求められることが分かる。
したがって、点エネルギーJは、
Figure 0005891865
と書け、クラスタエネルギーJは、
empty=etotal−eapart(x)−etouch(x)
と置けば、(7)式及び(11)式より
Figure 0005891865
と書けることが分かる。
したがって、通し番号i−1を生成した時点で、全ての点でeapart(x),etouch(x)が更新されていれば、通し番号iを割り付ける最小エネルギー点を探索する際に、上記(13)式によるメモリ参照でエネルギー値を求めることができる。
ステップ2Aを図14のフローチャートに従って説明する。なおステップ2Aは、例1におけるステップ2を高速化するためのステップであり、ステップ1とステップ3は例1のものをそのまま使用できる。例1のステップ2のアルゴリズムとの違いは、エネルギー計算及びクラスタ番号の決定がメモリ参照で行われている点と、最小エネルギー点の選択の後に更新処理が追加される点のみとなる。したがって、図14に示すフローチャートでは、ステップ2のフローチャート(図7)と異なる部分を太枠(S1404、S1408、S1410)にして示してある。
ステップ2Aでは、S1404において、通し番号iに対してメモリ参照でエネルギー計算を行いながらエネルギー最小点xを求めて、S1406以下の更新処理を行う。エネルギー最小点は、候補点(cnum(y)≠−1である点y)の中からクラスタエネルギー最小点を選択する。候補点とはステップ2と同じく既に配置したクラスタに接する点全体に他ならず、本ステップ2Aでは、通し番号i−1を生成した段階において後述の更新処理によってそのような候補点が更新登録されている。なお、クラスタエネルギー最小点の選択は、例1におけるステップでは、図8に示したフローチャート1a及び図9に示したフローチャート1bに進んで行った。本例2では、図15に示したフローチャート2a及び図16に示したフローチャート2bに進んで、メモリ参照による方法で行う。このことについては後述する。
S1404において、通し番号iを与える点を決めて、S1406における、ステップ2のS706と同じ更新処理が終わった後に、次の通し番号i+1に進むための前処理として、S1408とS1410において2つの更新処理を行う。これらも後述する。
図15に示したフローチャート2a及び図16に示したフローチャート2bを参照しながら、D内で通し番号がまだ与えられていない点の中から、クラスタエネルギーが最小となる点(それが取れなければ点エネルギーが最小となる点)を選択する方法を説明する。この際にエネルギー値は逐次計算することなく、メモリを参照して決定する。図15、図16のフローチャートでは、図8、図9に示した、ステップ2における逐次計算によるフローチャートと比較して異なる部分を太枠(S1506、S1510、S1606、S1610、)にして示してある。その部分のみ説明する。
点yでの点エネルギーJ及びクラスタエネルギーJは、ステップ2でのように逐次計算する必要はなく、それぞれ(12)式及び(13)式で説明したように、eapart(y),etouch(y)値を参照して決定できるから、S1510あるいはS1610において、それらをJcurrentに代入すればよい。
また、ステップ2(S906)では、点yを選んだときに、y∈Dから見て、相対的に上下左右に接する4つの点の集合T(y)のうちでクラスタ番号cnumが与えられた点z∈T(y)があれば、j=cnum(z)と置き、いずれのクラスタとも接触していない場合には、j=−1と置いていた。しかし、本ステップ2Aでは、後述の更新処理によって、通し番号i−1を決定した後の段階で、通し番号が未決定の全ての点y∈Dが属するクラスタ番号cnum(y)が更新されている(cnum(y)=−1の場合も含む)。したがって、S1504あるいはS1604において、単純にj=cnum(y)と置けばよい。
図14のステップ2Aのフローチャートに戻って、S1408における更新処理を、図17のフローチャート2cを参照しながら説明する。
通し番号iに対応する点=v(i)を新たに設定したことにより、残りの未処理点y∈D\(X∪{})のエネルギー値は、点との間に働く項のみ値が変わる(逆に言えば、その他の点とyとの関係は変わらない)。したがって、図17に示すフローチャート2cで、この変更分だけを計算してエネルギー値記憶メモリを更新する。
通し番号iを付した点をとして、S1702において、j:=cnum()と置く。S1704に進んで、まだ通し番号が与えられていない点y∈Dを取る。距離r以上離れればf=0だから、この場合もyは‖−y‖≦rの範囲に限定してよい。S1706に進んで、点yが、点が属するクラスタに既に接触していると予め判断されている場合、つまり、cnum(y)=cnum()=jの場合には、S1708に進んで、yから見て点は同じクラスタに属するとみなして、その点とのf値をetouch値に加える。それ以外の場合には、S1710に進んで、点は、yと異なるクラスタに属するためeapart値に加える。
これによって、通し番号iを点に与えたことによる未処理点(まだ通し番号を与えていない点)yでのエネルギー値の変動分が計算/更新される。なお、未処理点の判定処理は、S1712において型通りに行われる。
図14のステップ2Aのフローチャートに戻って、S1410における更新処理を、図18のフローチャート2dを参照しながら説明する。図17に示したフローチャート2cによってエネルギー値は更新されたが、点が所定のクラスタに加わったことにより、新たにその点の上下左右4点(つまりT()の点)のうちの未処理点が新たにこの点と同じクラスタに接触するようになる。そこで、図18のフローチャート2dにより、この点の周囲4点で新たに生じたクラスタとの接触の定義と、エネルギー値の繰り替えを行う。
通し番号iを付した点について、S1802において、j:=cnum()と置く。S1804に進んで、の周囲4点のうちで、まだクラスタ番号が与えられていない点y(当然通し番号も与えられていない)を選択する。この点yは、これまでどのクラスタにも接触していなかったが、隣り合う点が新たにクラスタに加わったことで、同じクラスタに接触することが判明した。これまでyはどのクラスタとも接触していなかったため、このクラスタとyとのエネルギーJtouchはeapartに加算されていたが、点yと接触することが判明したので、S1810においてetouch側にJtouchを加算して、eapartからJtouchを減算する。なお具体的にJtouch値は、点yと、点と同じクラスタに所属して既に閾値を与えられた各点との間のエネルギーであることに注意して、S1806において、
・X={x∈D:patt(x)=BLACK}∩{x∈D:cnum(x)=j}
と定義して、S1808でJtouch=J(X,y,f)と定義される。さらに、S1810においては、yのクラスタ番号をと同じ番号jに設定する。なお、未処理点の判定処理は、S1812において型通りに行われる。
以上で通し番号iの付与に関わる全ての更新処理が終わる。
ステップ2Aの本線に戻って、S1412においてi:=i+1と更新する。以下帰納的に、全ての通し番号i=0,…,wh−1の付与が行われ、ステップ2Aが完了する。S1414などの判定処理がこれに対応するが、これも型どおりである。ステップ2では通し番号i毎に未決定点全てにおいてエネルギーを計算していたが、本ステップ2Aではエネルギー値の計算やクラスタ番号の取得がメモリ参照で行われ、必要な計算が最小限に抑えられ、エネルギー勢力半径rやマスクサイズw×hが大きいほど高速化の効果が高い。なおステップ2では、全ての未処理点でクラスタとの接触の判定が上→右→下→左などの順で機械的に行われるが、ステップ2Aでは、一つ前の通し番号を与えた点の周囲にある未処理点は同じクラスタに属するという判定を行っている。したがって、未処理点が複数のクラスタに接触する状態(ごくシャドー側)になると接触クラスタの判定は両ステップで異なる場合がある。結果として、ステップ2とステップ2Aとでは、マスクパターンのごくシャドー側のパターンが異なることになるが、統計的な意味で画質に差はない。
<4.3 核点配置の最適化(例3)>
前記のステップ2又はステップ2Aにおいては、K個のクラスタを構成する始めの点(核点)、つまり、i=0からwh−1までの通し番号の生成工程のうち、始めのi=0,…,K−1までの番号は、「既に配置済みのクラスタに接触するように」という制約を外した上で、点エネルギー最小順に順次選択されている。この、始めのK個の点について通し番号を与える際には、別の方法を用いてもよい。例えば、予めランダムにK個の点を配置した上で、エネルギー降下によって最適配置に収束させた上で、それらの点についてエネルギー最小順に通し番号を与えてもよい。ここでは、そのような方法について説明する。なお、K個の点を配置してエネルギー降下によって最適配置に収束させる方法自体は、例えば非特許文献3に記載されている。また、i=0からK−1までの通し番号生成工程は、前述の例1とほぼ同様に行うことができる。従って、いずれもフローチャートは省略して説明する。以下の説明においては、記号や用語は例1,2と同じものであるとする。
<4.3.1 K個の核点の配置/収束工程>
はじめに、例1の4.1.1節(ステップ1:準備)と同様にして初期化を行う。次に、D内からランダムに選択したK個の点を点集合Xとして、各x∈Xに対して、patt(x)=BLACKと定める。次に、各点xをXの他の点と重複しない様に局所的に移動させて、(1)式に示した各点の点エネルギーI(X,x,f)が最も低い状態に移動させる。その移動先をとして、patt(x)=WHITE、patt()=BLACKと更新する。この工程を全ての点x∈Xについて、よりエネルギーを低下できる点が存在しなくなるまで反復する。こうして最もエネルギーの低い状態に収束させたK個の点が核点に相当する。この工程においては、閾値t≧0を設け、各点を移動させた際のエネルギー悪化がt未満の場合に常に移動を許容し、移動と共にtを小さくしてゆくという方法を取っても良い。この方法によれば、単純に各点を最もエネルギーが低い点に移動する山登り法よりもよりエネルギーが低い状態に収束させることができる場合がある。なお上記において初めからt=0で固定すれば、この山登り法に一致する。例として、図19に、前記のw=h=160,K=278の場合の初期ランダム配置(図19(a)参照(エネルギー降下前))と、上記工程による収束結果(図19(b)参照(エネルギー降下後))を図示する(patt(x)=BLACKとなる点xを図示したもの)。なおこの図19では、エネルギーを完全に最小化していない状態で止めている。
<4.3.2 核点への通し番号0,…,K−1の割り付け工程>
次に、K個の核点について、最もエネルギーが低い点から順に通し番号0,…,K−1を与える。つまり、通し番号iに対して、既に与えたれた通し番号j=0,…,i−1を持つ全ての点を点灯させたときに、まだ点灯してない核点のうち最も点エネルギーが最小の核点を選択して通し番号iを与える処理を行う。以下具体的に説明する。まず、各点の集合Xを、
・X={x∈D:patt(x)=BLACK}
と置き、各点x∈Xに対してpatt(x)=EMPTYと一旦リセットする。i=0として、
・X={x∈X:patt(x)=BLACK}
と置いて、y∈X\X中でJcurrent=J(X,y,f,i)が最小となるyを取って、=yと置く。更にフローチャート1のS706と同様に、
・patt()=BLACK
・v(i)=
・cnum()=i
・s()=s()+1
・smin=min{s(i):i=0,…,K−1}
と更新する。なおこれらの意味については例1の4.1.2節(ステップ2)に前述している。このようにして更新が終わったら、i:=i+1と更新して、上記Xの定義以降の処理を繰り返し、i=K−1まで更新処理を行う。
以上により、K個の核点が定義され、さらにそれらに通し番号やクラスタ番号が与えられる。つまり、通し番号i=0,…,K−1に対応する点v(i)がそれぞれ一意的に定義され、patt(v(i))=BLACK及びcnum(v(i))=iとなっている。また、残りのwh−K個の点xについてはpatt(x)=EMPTY及びcnum(x)=−1となっている。残りの通し番号の割り付けはステップ2又はステップ2Aに戻って行えばよい。また、本節で説明した通し番号i=0,…,K−1の割り付け処理についても、ステップ2Aで説明したのと同様の高速化を行うこともできる。
なお、ステップ2で通し番号0,…,wh−1を得た後に、ステップ2において例えば(10)式によりwh/lで除算して、閾値マトリクス内の各点に閾値0,…,l−1を割り当てると、本工程で決めた0,…,K−1の番号は最終的には閾値0,…,(K−1)・l/(wh)に相当する。上記のw=h=160,K=278の場合で、l=256とすると、0,…,2.77に相当するから、256階調のうちのハイライト側3階調目までに相当する。この範囲はクラスタが形成される前の段階であって、核点が順次点灯してゆく段階に対応している。一般には例1(2)の方法で充分な画質が得られるが、ハイライト側の画質が特に重視されるような場合には本例3の方法を用いても良い。
<4.4 クラスタ成長順の制御(例4)>
前述の例1〜例3では、ハイライト側(通し番号0)からシャドー側(通し番号wh−1)にクラスタ成長している(通し番号を割り付けている)が、例えば任意の中間濃度(通し番号p)を用意して、
・i=0,1,…,p−1,wh−1,wh−2,…,pの順、あるいは
・i=0,wh−1,1,wh−2,2,wh−3,…,p−1,pの順
でクラスタ成長させることも可能である。
例えばステップ2Aにおいてこれを実現する場合は、etouch,eapart,cnum,sminの4つのメモリを、黒ドット/白ドット用にそれぞれ取り直して、例えば、
・黒ドット用:etouchb,eapartb,cnumb,sminb
・白ドット用:etouchw,eapartw,cnumw,sminw
として、注目画素patt(x)がBLACKかWHITEかに応じてこれらのメモリをポインタで切り替えて使えばよい。(ステップ1において2値パターンメモリpatt用に“WHITE”も定義してあるのはこのクラスタ成長順の制御を行う場合のためである。)通し番号の順番やこれらの注目画素色に応じたポインタ切り替え以外にステップ2Aの処理フロー自体に代わりはなく、そのまま使える。これにより、それぞれBLACKとWHITEに着目して最小エネルギー点を選択して通し番号を与えることができる。
図20に、w=h=160,K=278,l=256でp=wh/2、つまり濃度50%を境にしてハイライト側(0%)とシャドー側(100%)からそれぞれ50%に向けてi=0,wh−1,1,wh−2,2,wh−3,…,p−1,pの順により黒クラスタと白クラスタをそれぞれクラスタ成長させて生成したマスクで2値化した画像の例を示す。
<5 周波数特性>
2.3節で説明したように、ランダム型クラスタドットハーフトーンマスクには、概念として確率的クラスタドットハーフトーンマスク(非特許文献5,6)とグリーンノイズマスク(特許文献5、非特許文献4)とがある。本節では、本技術が前者タイプに属する技術であるということを確認する。
図21に分散ドットハーフトーンマスクと本技術の方法で生成されるマスクについて、閾値24での2値パターンとRAPSDを取った結果例を示す。図21(a)は、分散ドットマスク(非特許文献3(前記、<2.1 ランダム型分散ドットハーフトーンマスクの生成>で説明した方法で生成したマスク))による閾値24でのハーフトーンパターンの例であり、図21(b)は該パターンのRAPSDを表している。一方、図21(c)は本技術により生成したマスクによる閾値24でのハーフトーンパターンの例であり、図21(d)はこの該パターンのRAPSDを表している。同様に、図22(a)(c)は、それぞれ、図21(a)(c)と同じマスクによる閾値80でのハーフトーンパターンの例であり、図22(b)(d)はそれぞれ、それらパターンのRAPSDを表している。
分散ドットハーフトーンマスクは濃度の増減と共にRAPSDのピーク周波数が高周波側に移動していくのが確認できる。この性質は、定義からグリーンノイズマスクでも同様である。一方で、本技術によるランダム型クラスタドットハーフトーンマスクでは、確率的クラスタドットハーフトーンマスクと同様に、濃度の増減に関わらずRAPSDのピーク周波数は固定されることが確認できる。
<6 ハードウェア構成>
図23を参照して、本実施の形態のマスク生成装置100、画像形成装置200のハードウェア構成例について説明する。図23に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部2317と、プリンタなどのデータ出力部2318を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)2301は、前述の実施の形態において説明した各種のモジュール、すなわち、エネルギー算出モジュール110、順位付モジュール120、閾値割当モジュール130、出力モジュール140、画像受付モジュール210、マスク処理モジュール220、出力モジュール230等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがって処理を実行する制御部である。
ROM(Read Only Memory)2302は、CPU2301が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)2303は、CPU2301の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス2304により相互に接続されている。
ホストバス2304は、ブリッジ2305を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス2306に接続されている。
キーボード2308、マウス等のポインティングデバイス2309は、操作者により操作される入力デバイスである。ディスプレイ2310は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)2311は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU2301によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、マスクデータ、画像データなどが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ2312は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体2313に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース2307、外部バス2306、ブリッジ2305、及びホストバス2304を介して接続されているRAM2303に供給する。リムーバブル記録媒体2313も、ハードディスクと同様のデータ記録領域として利用可能である。
接続ポート2314は、外部接続機器2315を接続するポートであり、USB、IEEE1394等の接続部を持つ。接続ポート2314は、インタフェース2307、及び外部バス2306、ブリッジ2305、ホストバス2304等を介してCPU2301等に接続されている。通信部2316は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部2317は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部2318は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図23に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図23に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図23に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、数式を用いて説明したが、数式には、その数式と同等のものが含まれる。同等のものとは、その数式そのものの他に、最終的な結果に影響を及ぼさない程度の数式の変形、又は数式をアルゴリズミックな解法で解くこと等が含まれる。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
100…マスク生成装置
110…エネルギー算出モジュール
120…順位付モジュール
130…閾値割当モジュール
140…出力モジュール
200…画像形成装置
210…画像受付モジュール
220…マスク処理モジュール
230…出力モジュール

Claims (9)

  1. 画像処理用マスク内の各点におけるクラスタエネルギーを算出する算出ステップと、
    前記算出ステップによって算出されたクラスタエネルギーの値に基づいて、前記各点に対して昇順又は降順に順位付けを行う順位付ステップと、
    前記順位付ステップによる処理結果である順位に基づいて、画像処理用マスク内の閾値を割り当てる閾値割当ステップ
    を行い、
    前記算出ステップによるクラスタエネルギーの算出は、前記各点であってクラスタに隣接する注目点xと、該注目点xを含まないクラスタに属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の総和により定義される
    ことを特徴とする画像処理用マスク生成方法。
  2. 前記クラスタエネルギーはさらに、注目点xと未だ順位付けされていない点によって構成されている空白領域に属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の負総和との、重み付き平均で定義される
    ことを特徴とする請求項1に記載の画像処理用マスク生成方法。
  3. 前記関数fは、予め定められた強度の凸性を有する2階微分可能関数により定められている
    ことを特徴とする請求項1又は2に記載の画像処理用マスク生成方法。
  4. 前記順位付ステップは、順位iを与える際に、
    昇順に順位付けを行う場合には、より上位の順位が付された点全体を前記算出ステップにおけるクラスタエネルギー算出の対象とし、
    降順に順位付けを行う場合には、より下位の順位が付された点全体を前記算出ステップにおけるクラスタエネルギー算出の対象とし、
    前記いずれの場合も、まだ順位付けがされてない点について前記算出ステップによりクラスタエネルギーを算出し、クラスタエネルギーが最小である点に順位iを与える
    ことを特徴とする請求項1から3のいずれかに記載の画像処理用マスク生成方法。
  5. 前記算出ステップは、K個のクラスタの核点を画像処理用マスク内にランダムに配置し、該クラスタをエネルギー降下によって最適配置に収束させ
    前記順位付ステップは、前記K個の核点にクラスタエネルギーの昇順に通し番号0〜K−1を与える
    ことを特徴とする請求項1から4のいずれか一項に記載の画像処理用マスク生成方法。
  6. 前記算出ステップはクラスタの形成を画像の黒色側から白側又は白側から黒側へと成長させ、予め定められた濃度で白色側から黒色側又は黒色側から白色側へと成長を反転させる
    ことを特徴とする請求項1から5のいずれか一項に記載の画像処理用マスク生成方法。
  7. コンピュータを、
    画像処理用マスク内の各点におけるクラスタエネルギーを算出する算出手段と、
    前記算出手段によって算出されたクラスタエネルギーの値に基づいて、前記各点に対して昇順又は降順に順位付けを行う順位付手段と、
    前記順位付手段による処理結果である順位に基づいて、画像処理用マスク内の閾値を割り当てる閾値割当手段
    として機能させ、
    前記算出手段によるクラスタエネルギーの算出は、前記各点であってクラスタに隣接する注目点xと、該注目点xを含まないクラスタに属する点yとの間の距離‖x−y‖を変数とする相互影響値f(‖x−y‖)の総和により定義される
    ことを特徴とする画像処理用マスク生成プログラム。
  8. 画像を受け付ける受付手段と、
    前記受付手段によって受け付けられた画像を対象として、該画像内の画素値と前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値とを比較するマスク処理を行うことによって、ハーフトーン画像を生成するマスク処理手段と、
    前記マスク処理手段によって生成されたハーフトーン画像を出力する出力手段
    を具備することを特徴とする画像処理装置。
  9. 画像処理装置を、
    画像を受け付ける受付手段と、
    前記受付手段によって受け付けられた画像を対象として、該画像内の画素値と前記請求項1から6のいずれか一項に記載の画像処理用マスク生成方法、又は前記請求項7の画像処理用マスク生成プログラムによって生成された画像処理用マスク内の閾値とを比較するマスク処理を行うことによって、ハーフトーン画像を生成するマスク処理手段と、
    前記マスク処理手段によって生成されたハーフトーン画像を出力する出力手段
    として機能させることを特徴とする画像処理プログラム。
JP2012057354A 2012-03-14 2012-03-14 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム Expired - Fee Related JP5891865B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012057354A JP5891865B2 (ja) 2012-03-14 2012-03-14 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム
US13/585,479 US8744212B2 (en) 2012-03-14 2012-08-14 Image processing mask creating method, non-transitory computer-readable recording medium having image processing mask creating program recorded thereon, image processing device, and non-transitory computer-readable recording medium having image processing program recorded thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012057354A JP5891865B2 (ja) 2012-03-14 2012-03-14 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2013192072A JP2013192072A (ja) 2013-09-26
JP5891865B2 true JP5891865B2 (ja) 2016-03-23

Family

ID=49157725

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012057354A Expired - Fee Related JP5891865B2 (ja) 2012-03-14 2012-03-14 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム

Country Status (2)

Country Link
US (1) US8744212B2 (ja)
JP (1) JP5891865B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5896207B2 (ja) * 2011-11-24 2016-03-30 富士ゼロックス株式会社 分布評価装置、分布決定装置、画像処理装置およびプログラム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5111310A (en) 1990-12-04 1992-05-05 Research Technologies Corporation, Inc. Method and apparatus for halftone rendering of a gray scale image using a blue noise mask
US5535020A (en) * 1992-10-15 1996-07-09 Digital Equipment Corporation Void and cluster apparatus and method for generating dither templates
US5696602A (en) * 1995-08-31 1997-12-09 Lexmark International, Inc. Method for halftoning using stochastic dithering with minimum density variance
US5963715A (en) * 1996-08-15 1999-10-05 Seiko Epson Corporation Color stochastic screening with optimal color dot placement for display devices having arbitrary aspect ratios
US6088512A (en) * 1997-07-09 2000-07-11 Seiko Epson Corporation Void-and-cluster dither-matrix generation for better half-tone uniformity
US6493112B1 (en) 1998-01-16 2002-12-10 University Of Delaware Method and apparatus for producing halftone images using green-noise masks having adjustable coarseness
US6304340B1 (en) * 1998-11-18 2001-10-16 Xerox Corporation Composite halftone screens with stochastically distributed clusters or lines
US6917443B1 (en) * 1998-11-18 2005-07-12 Xerox Corporation Composite halftone screens with stochastically distributed clusters or lines
US6433891B1 (en) * 1998-12-14 2002-08-13 Oak Technology, Inc. Stochastic screening method with dot pattern regularity control and dot growth
JP3427026B2 (ja) * 1999-12-24 2003-07-14 大日本スクリーン製造株式会社 網点形成方法および装置
JP4010097B2 (ja) 2000-07-21 2007-11-21 富士ゼロックス株式会社 画像処理装置および画像処理方法、ならびにハーフトーン画像生成用閾値マトリックスの作成方法
US6710778B2 (en) * 2001-02-12 2004-03-23 Lexmark International, Inc. Method for halftoning using a difference weighting function
US6724501B2 (en) * 2001-06-22 2004-04-20 Hewlett-Packard Development Company, L.P. Apparatus and method for dither matrix design for color halftoning using dispersed dot clusters
JP4143560B2 (ja) 2004-03-05 2008-09-03 富士フイルム株式会社 閾値マトリクスの作成方法及びその装置
JP2006005926A (ja) * 2004-06-14 2006-01-05 Oce Technol Bv ディザマスクを生成する方法
JP4168033B2 (ja) 2005-01-19 2008-10-22 富士フイルム株式会社 閾値マトリクスの作成方法及びその閾値マトリクス
JP2007129441A (ja) * 2005-11-02 2007-05-24 Canon Inc 閾値マトリクス作成法および画像処理方法
EP1916624B1 (en) * 2006-10-25 2016-11-23 Agfa HealthCare NV Method for segmenting a digital medical image.
US20100034444A1 (en) * 2008-08-07 2010-02-11 Helicos Biosciences Corporation Image analysis
JP5326670B2 (ja) * 2009-03-05 2013-10-30 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム

Also Published As

Publication number Publication date
JP2013192072A (ja) 2013-09-26
US8744212B2 (en) 2014-06-03
US20130243350A1 (en) 2013-09-19

Similar Documents

Publication Publication Date Title
JP6649750B2 (ja) 画像処理装置、画像処理方法
JP5887770B2 (ja) 画像処理装置及び画像処理プログラム
US7760400B2 (en) Creating multiple threshold matrices to be used in error diffused multilevel halftoning
JP4381360B2 (ja) 画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体
Goyal et al. Clustered-dot halftoning with direct binary search
US7885486B2 (en) Image processing system, method for processing image and computer readable medium
JP2016058879A (ja) 画像処理装置及び画像処理方法
JP5891865B2 (ja) 画像処理用マスク生成方法、画像処理用マスク生成プログラム、画像処理装置及び画像処理プログラム
US8385635B2 (en) Image processing apparatus for performing AM screen processing and FM screen processing, image processing method, computer-readable medium
JP2012114523A (ja) 画像処理装置及びその制御方法、並びにプログラム及び記憶媒体
JP4570534B2 (ja) 画像処理装置、画像形成装置、画像処理方法、及びコンピュータプログラム
JP6486082B2 (ja) 画像処理装置及び画像処理方法、プログラム
JP6765103B2 (ja) 画像処理装置、画像処理プログラム及び画像処理方法
JP6745185B2 (ja) 閾値マトリクスの作成方法及び閾値マトリクス作成装置並びにプログラム
JP4080252B2 (ja) 画像処理装置、画像形成装置、画像処理方法、プログラムおよび記録媒体
JP5458969B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP4027300B2 (ja) 画像処理方法、画像処理装置、画像形成装置、コンピュータプログラム及び記録媒体
JP4549306B2 (ja) 画像処理方法、画像処理装置、画像形成装置、及びコンピュータプログラム
JP4589887B2 (ja) 画像処理装置
JP2006033643A (ja) 画像処理装置、画像形成装置、画像処理方法及びコンピュータプログラム
JP6547738B2 (ja) 画像処理装置、ハーフトーンスクリーン生成装置、ハーフトーンスクリーン生成方法、及びハーフトーンスクリーン生成プログラム
JP4650945B2 (ja) 画像処理方法、画像処理装置、画像記録装置、プログラムおよび記録媒体
JP4470789B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2010191931A (ja) 画像処理装置、画像形成装置、コンピュータプログラム、記録媒体及び画像処理方法
JP3950871B2 (ja) 画像処理方法及びその装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160126

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160208

R150 Certificate of patent or registration of utility model

Ref document number: 5891865

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees