(57)【特許請求の範囲】
【請求項１】
多値画像を二値画像に変換するハーフトーン化方法であって、
二値化を行なう注目画素に関して、当該注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、当該注目画素の推定値を算出する推定ステップと、
該推定値を二値化するとともに、当該二値化された値を該注目画素の値とすることにより、当該注目画素の値を二値化する二値化ステップと、
該注目画素についての二値化に伴って生じた誤差を、該注目画素周辺の未二値化画素に拡散させる誤差拡散ステップとを含み、
該推定ステップにおいて前記推定値の算出に用いた画素に対して、前記注目画素についての二値化に伴って生じた誤差を分散させることを特徴とする、ハーフトーン化方法。
【請求項２】
多値画像を二値画像に変換するハーフトーン化装置であって、
二値化を行なう注目画素に関して、当該注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、当該注目画素の推定値を算出する推定処理部と、
該推定値を二値化するとともに、当該二値化された値を該注目画素の値とすることにより、当該注目画素の値を二値化する二値化処理部とを含み、
該所定領域が注目画素および当該注目画素に隣接する画素を含まないことを特徴とする、ハーフトーン化装置。
【請求項３】
多値画像を二値画像に変換する機能をコンピュータに実行させるためのハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該ハーフトーン化プログラムが、
二値化を行なう注目画素に関して、当該注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、当該注目画素の推定値を算出する推定処理部と、
該推定値を二値化するとともに、当該二値化された値を該注目画素の値とすることにより、当該注目画素の値を二値化する二値化処理部として、該コンピュータを機能させ、
該所定領域が注目画素および当該注目画素に隣接する画素を含まないことを特徴とする、ハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば連続色調画像の多値画像を２値画像に変換するハーフトーン化方法およびハーフトーン化装置、並びに、ハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【０００２】
【従来の技術】
２値出力しかできないプリンタ等で階調のある画像（多値画像；連続色調画像）を再現するためには、モノクロあるいはカラーに関わらず、多値画像から２値画像への変換処理を行なう必要がある。そして、このような２値画像においては、プリンタ等のドットの面積変調もしくは密度変調により階調を再現する。なお、以下、この多値画像から２値画像への変換のことを二値化もしくはハーフトーン化と称する。
【０００３】
このようなハーフトーン化においては、変換後の画像において、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることや、原画像の持つ階調を可能な限り再現することが要求されている。
このようなハーフトーン化を行なう手法としては以下の手法が知られている。
（１）特開平5-142746号公報には、誤差拡散法を「無作為化空間充填二次曲線」に沿って原画像全体に実施することによって、モアレや目障りな模様が無い２値画像を得ようとする手法が開示されている。
【０００４】
（２）特開平6-006586号公報には、「シミュレーテッド・アニーリング法」を使用し、原画像（多値画像）と処理される２値画像とから計算されるエネルギー関数を最小化することにより、モアレや目障りな模様が無い２値画像を得ようとする手法が開示されている。なお、この手法には、原画像を直接変換する手法と、予め２５６階調のディザパターンを求めておいて処理をする方法とが知られている。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述の従来手法には以下の課題がある。
（１）特開平5-142746号公報に開示されている手法においては、画像全体を同一のアルゴリズムで処理するので、変換された２値画像には必ずモアレや目障りな模様が生じ、特に、市松模様のような図柄においては、横方向の縞模様が顕著に生じる。又、変換に際して、使用している「無作為化空間充填二次元曲線」は、画像全体を一筆書きの要領で走査するので並列計算を行なうことができず、これにより、結果的に膨大な処理時間を必要とする。
【０００６】
（２）特開平6-006586号公報に開示されている手法においては、その変換時の計算に膨大な時間がかかるので現実的でなく、又、非常になだらかなグラデーション画像に関して、特有の目障りな模様が発生する。
（３）上述した従来手法において、誤差拡散を行なう場合には、ハーフトーン処理を行なう画素（注目画素）の値に基づいて二値化を行ない、その誤差を周辺画素に拡散するようになっているので、例えば、画像の傷等の理由により注目画素が突出した値である場合には、その突出した値に基づく誤差がその周辺の未処理画素に拡散されてしまう。そして、例えば、処理画像が、入力に用いたスキャナやデジタルカメラ等の入力機器の固有の周期構造が原因のモアレ等を潜在的に有するものである場合には、そのモアレ等が誤差の拡散により増幅され顕在化してしまうこともある。
【０００７】
本発明は、このような課題に鑑み創案されたもので、多値画像中の傷等による、画素値の急激な変化によるモアレをなくすことができ、又、簡易な手法で、モアレや目障りな模様の発生を確実に抑制することができるようにした、ハーフトーン化方法およびハーフトーン化装置並びにハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
このため、本発明のハーフトーン化方法は、多値画像を二値画像に変換するハーフトーン化方法であって、二値化を行なう注目画素に関して、この注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、注目画素の推定値を算出する推定ステップと、推定値を二値化するとともに、二値化された値を注目画素の値とすることにより、注目画素の値を二値化する二値化ステップと、注目画素についての二値化に伴って生じた誤差を、注目画素周辺の未二値化画素に拡散させる誤差拡散ステップとを含み、推定ステップにおいて推定値の算出に用いた画素に対して、注目画素についての二値化に伴って生じた誤差を分散させることを特徴としている。
【０００９】
また、本発明のハーフトーン化装置は、多値画像を二値画像に変換するハーフトーン化装置であって、二値化を行なう注目画素に関して、この注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、注目画素の推定値を算出する推定処理部と、推定値を二値化するとともに、二値化された値を注目画素の値とすることにより、注目画素の値を二値化する二値化処理部とを含み、所定領域が注目画素および注目画素に隣接する画素を含まないことを特徴としている。さらに、本発明のハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体は、多値画像を二値画像に変換する機能をコンピュータに実行させるためのハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体であって、ハーフトーン化プログラムが、二値化を行なう注目画素に関して、この注目画素から所定距離だけ離れた位置を中心とする所定領域の未二値化画素の各値に対して２次元デジタルフィルタを適用することにより、当該注目画素の推定値を算出する推定処理部と、推定値を二値化するとともに、二値化された値を注目画素の値とすることにより、注目画素の値を二値化する二値化処理部として、コンピュータを機能させ、所定領域が注目画素および注目画素に隣接する画素を含まないことを特徴としている。
【００１０】
これにより、本発明では、注目画素に対して二値化を行なう際に、その注目画素についての値を直接的に使用せずに、その注目画素以外の画素の値に基づいて算出した推定値を用いて二値化を行なうので、例えば、多値画像中において、傷等が原因で画素値が突出している画素がある場合においても、その突出した画素値の誤差が直接的に周囲の未二値化画素に対して分散されることがない。
【００１２】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。
図２は本発明の一実施形態としてのハーフトーン化装置を実現するためのコンピュータシステムの構成を示すブロック図であり、この図２に示すように、本実施形態のコンピュータシステムは、ＣＰＵ１０とこのＣＰＵ１０に接続されるバスライン１２とをそなえている。
【００１３】
バスライン１２には、ＲＯＭ１４とＲＡＭ１６とが接続されており、入出力インターフェース（Ｉ／Ｏ）１８を介してキーボード２０，マウス２２，モニタ（たとえばＣＲＴ，ＬＣＤ，ＰＤＰ等）２４および磁気ディスク２６が接続されるとともに、入出力インターフェース（Ｉ／Ｏ）２８を介してプリンタ３０が接続されている。
【００１４】
そして、ＲＡＭ１６には、図１に示す、二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６を実現するためのアプリケーションプログラムが格納されており、ＣＰＵ１０が、バスライン１２を介してＲＡＭ１６から上記アプリケーションプログラムを実行することにより、二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６としての機能（その詳細については後述）が実現され、本実施形態のハーフトーン化装置が実現されるようになっている。
【００１５】
これらの二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６としての機能を実現するためのプログラムは、例えばフレキシブルディスク，ＣＤ−ＲＯＭ等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信回路を介してコンピュータに提供するようにしてもよい。
【００１６】
二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６としての機能を実現する際には、内部記憶装置（本実施形態ではＲＡＭ１６や磁気ディスク２６）に格納されたプログラムがコンピュータのマイクロプロセッサ（本実施形態ではＣＰＵ１０）によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
【００１７】
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーションシステムとを含む概念であり、オペレーションシステムの制御の下で動作するハードウェアを意味している。又、オペレーションシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、ＣＰＵ等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえている。
【００１８】
上記アプリケーションプログラムは、このようなコンピュータに、二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６としての機能を実現させるプログラムコードを含んでいる。又、その機能の一部は、アプリケーションプログラムではなくオペレーションシステムによって実現されてもよい。
【００１９】
さらに、本実施形態における記録媒体としては、上述したフレキシブルディスク，ＣＤ−ＲＯＭ，磁気ディスク，光ディスク，光磁気ディスクのほか、ＩＣカード，ＲＯＭカートリッジ，磁気テープ，パンチカード，コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ），外部記憶装置等や、バーコードなどの符号が印刷された印刷物等のコンピュータ読取可能な種々の媒体を利用することができる。
【００２０】
さて、図２に示す本実施形態のコンピュータシステムは、多値画像を２値画像に変換するハーフトーン化装置として機能するものであり、図１に示すような、二値化処理部５１，誤差拡散処理部５２，変更処理部５３，輪郭検出処理部５４，輪郭方向検出処理部５５および推定処理部５６としての機能を有している。
なお、図１は本発明の一実施形態としてのハーフトーン化装置の機能的構成を示すブロック図、図３（ａ），（ｂ）は注目画素についての値の推定方法を説明するための図である。
【００２１】
本ハーフトーン化装置は、多値画像の画像データをメモリ（ＲＡＭ１６）等に展開するようになっており、推定処理部５６によって、注目画素についての値を、この注目画素以外の値に基づいて推定し、更に、二値化処理部５１によって、この推定値に基づいて注目画素の値を二値化するようになっている。
なお、本実施形態において二値化の処理の対象となる画素はそれぞれ０〜２５５のいずれかの値を有し、又、ハーフトーン化（二値化処理）後の画素はそれぞれ０もしくは２５５のいずれかの値を有するものとする。このように定義しても一般性は失わないものである。
【００２２】
推定処理部５６は、注目画素（図３（ａ），（ｂ）の符号Ａ参照）についての値を、この注目画素Ａ以外の画素の値に基づいて推定するものであって、具体的には、推定処理部５６は、注目画素Ａ以外の所定領域の未二値化画素に対して二次元デジタルフィルタを用いて算出するものであり、以下の（１）〜（３）に示す３種類の手法から一の手法を選択的に用いて、注目画素Ａの推定値を算出するようになっている。
【００２３】
（１）第１の推定方法
図３（ａ）は、一般的な二次元デジタルフィルタを用いて注目画素Ａについての値を推定する手法を説明するための図であり、注目画素Ａから所定距離（図３（ａ）中では２×６ピクセル）だけ離れた位置を中心とする所定領域（図３（ａ）中では２×２ピクセルの領域）の未二値化画素の値に基づいて注目画素Ａの画素値を推定する例を示している。
【００２４】
この図３（ａ）に示す二次元デジタルフィルタは、２×２ピクセルの所定領域内の画素を、図３（ａ）に示すようなマトリクス１００ａ（例えば、図３（ａ）中においては２×２ピクセルの領域）を用いて走査しながら、このマトリクス１００ａ内の画素値を用いて計算を行なうものであり、具体的には、マトリクス１００ａ内の各画素値にそれぞれ１／４を乗算し、これらの乗算後の各値を加算して求めた値を注目画素Ａの画素値として推定する。
【００２５】
（２）第２の推定方法
また、図３（ｂ）は輪郭強調用デジタルフィルタを用いて注目画素Ａについての値を推定する手法を説明するための図であり、この図３（ｂ）には、注目画素Ａについての値を、この注目画素Ａから５．５×６ピクセル（所定距離）だけ離れた画素を中心とした３×３ピクセルの領域（所定領域）の未二値化画素の値に基づいて推定する例を示している。
【００２６】
推定処理部５６は、この３×３ピクセルの所定領域内の画素を、図３（ｂ）に示すようなマトリクス１００ｂ（例えば、図３（ｂ）中においては３×３ピクセルの領域）を用いて走査しながら、このマトリクス１００ｂ内の画素値を用いて計算を行なうようになっており、具体的には、その所定領域内の各画素に輪郭強調用デジタルフィルタを適用して注目画素Ａの画素値を推定する。
【００２７】
この輪郭強調用デジタルフィルタとしては、ラプラシアン型フィルタ（図５参照）やプレウィット型フィルタ（図６参照）を用いることが好ましい。なお、図３（ｂ）は、輪郭強調用デジタルフィルタとしてラプラシアン型フィルタを用いた場合について示している。
ここで、輪郭強調用デジタルフィルタを用いて注目画素Ａの画素値を推定する手法について説明する。
【００２８】
図４は輪郭強調用二次元デジタルフィルタを適用する方法を説明するための図、図５および図６はそれぞれ輪郭強調用二次元デジタルフィルタについて説明するための図であり、図５（ａ），（ｂ）はそれぞれラプラシアン型フィルタを示す図、図６（ａ），（ｂ）はそれぞれプレウィット型フィルタを示す図である。
輪郭強調用二次元デジタルフィルタを用いて注目画素Ａの推定値（以下、αとする）を算出する場合には、推定処理部５６は、図４に示すようなマトリクス１００ｂにおける各画素の画素値（図４中ではａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ）を、図５（ａ），（ｂ）や図６（ａ），（ｂ）に示すような輪郭強調用二次元デジタルフィルタ（ラプラシアン型フィルタ，プレウィット型フィルタ等）に適用して算出する。
【００２９】
例えば、図５（ａ）に示すようなラプラシアン型フィルタを用いて推定値αを算出する場合には、α＝（ａ×０）＋｛ｂ×（−１）｝＋（ｃ×０）＋｛ｄ×（−１）｝＋（ｅ×４）＋｛ｆ×（−１）｝＋（ｇ×０）＋｛ｈ×（−１）｝＋（ｉ×０）を計算することにより推定値αを算出することができる。
また、図５（ｂ）に示すラプラシアン型フィルタを用いて推定値αを算出する場合においても図５（ａ）と同様にして推定値αを求める。
【００３０】
なお、本実施形態においては、図５（ａ），（ｂ）に示すような２種類のラプラシアン型フィルタを示しているが、これに限定するものではなく、これら以外のパターンを有するラプラシアン型フィルタを用いてもよい。具体的には、以下に示す▲１▼〜▲４▼の条件を全てそなえる輪郭強調用二次元デジタルフィルタであれば、ラプラシアン型フィルタと同様の効果を得ることができる。なお、ここで、符号ａ〜ｉはそれぞれ画素値を示すものであって、図４中に示すマトリクス１００ｂにおける各画素値に対応するものである。
【００３１】
▲１▼｜ｅ｜＝｜ａ＋ｂ＋ｃ＋ｄ＋ｆ＋ｇ＋ｈ＋ｉ｜
▲２▼ｅとｂ，ｄ，ｆ，ｈとが異なる符号を有すること。
▲３▼ｅとａ，ｃ，ｇ，ｉとが同符号を有する、もしくは、ａ＝ｃ＝ｇ＝ｉ＝０であること。
▲４▼マトリクス１００ｂ（図４参照）において、その中心に位置する画素（画素値ｅ）と、その周辺画素（画素値ａ，ｂ，ｃ，ｄ，ｆ，ｇ，ｈ，ｉ）との各距離に、｜ａ｜，｜ｂ｜，｜ｃ｜，｜ｄ｜，｜ｆ｜，｜ｇ｜，｜ｈ｜，｜ｉ｜をそれぞれ乗じた値が、互いに同じ程度の大きさ（桁）になること（ただし、ａ，ｃ，ｇ，ｉ＝０の場合は除く）。
【００３２】
従って、図５（ａ），（ｂ）に示したラプラシアン型フィルタに限定されることなく、上述の▲１▼〜▲４▼の条件を満たす輪郭強調用二次元デジタルフィルタを用いて注目画素Ａの値を推定することができる。
次に、図６（ａ），（ｂ）に示すようなプレウィット型フィルタを用いて推定値αを算出する場合について説明すると、例えば、図６（ａ）に示すようなプレウィット型フィルタを用いて輪郭値Ｅを算出する場合には、α＝［［（ａ×１）＋（ｂ×０）＋｛ｃ×（−１）｝＋（ｄ×１）＋（ｅ×０）＋｛ｆ×（−１）｝＋（ｇ×１）＋（ｈ×０）＋｛ｉ×（−１）｝］2＋［（ａ×１）＋（ｂ×１）＋（ｃ×１）＋（ｄ×０）＋（ｅ×０）＋（ｆ×０）＋｛ｇ×（−１）｝＋｛ｈ×（−１）｝＋｛ｉ×（−１）｝］2］1/2を計算することにより推定値αを算出することができる。
【００３３】
なお、推定処理部５６は、図６（ｂ）に示すプレウィット型フィルタを用いて推定値αを算出する場合においても図６（ａ）と同様にして推定値αを求めることができる。
そして、推定処理部５６は、所定領域内の画素に対して輪郭強調用デジタルフィルタを用いた演算の結果求めた推定値αを、注目画素Ａの画素値として算出するようになっている。
【００３４】
（３）第３の推定方法
さらに、推定処理部５６は、後述する誤差拡散処理部５２によって誤差拡散が行なわれる未二値化の画素の値に基づいて注目画素Ａの値を推定するようになっている。
図７および図８はそれぞれ誤差拡散が行なわれる未二値化画素から注目画素Ａの値を推定するための手法を説明するための図である。
【００３５】
図７（ａ）は注目画素Ａに隣接する未二値化画素を示す図、図７（ｂ）は図７（ａ）に示す画素に対して適用する二次元デジタルフィルタを示す図である。
注目画素Ａに隣接する未二値化の画素の値を、図７（ａ）に示すようにａ，ｂ，ｃ，ｄとする場合に、推定処理部５６は、これらの画素値ａ，ｂ，ｃ，ｄに対して、例えば図７（ｂ）に示すような重み係数をそなえた二次元デジタルフィルタを適用して注目画素Ａの値を推定する。
【００３６】
具体的には、図７（ａ），（ｂ）に示す場合においては、以下の式▲１▼により注目画素Ａの値αを算出し、この算出した値αを注目画素Ａの値として推定する。
α＝（ａ＋ｂ／２＋ｃ＋ｄ／２）／３                  …▲１▼
なお、図７（ｂ）に示す二次元デジタルフィルタは「Floyd and Steinberg法」として一般的に知られている誤差拡散法（図１０（ａ）参照）を行なう際に用いて好適である。
【００３７】
また、図８（ａ）は注目画素Ａの周辺の未二値化画素を示す図、図８（ｂ）は図８（ａ）に示す画素に対して適用する二次元デジタルフィルタを示す図である。
推定処理部５６は、注目画素Ａの周辺の未二値化画素の値を、図８（ａ）に示すようにａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉ，ｊ，ｋ，ｌとする場合に、これらの画素値ａ〜ｌに対して、例えば図８（ｂ）に示すような重み係数をそなえた二次元デジタルフィルタを適用して注目画素Ａの値を推定する。
【００３８】
なお、図８（ｂ）中においては、重み係数を符号Ｘ，Ｙ，Ｚ，Ｕによって示しており、これらの重み係数は、例えば、Ｘ＝１，Ｙ＝１／２，Ｚ＝１／，Ｕ＝１／である。又、これらの重み係数Ｘ，Ｙ，Ｚ，Ｕは、上述した数値に限定されるものではなく、それぞれ変更して実施することができる。
そして、推定処理部５６は、図８（ａ），（ｂ）に示す場合においては、以下の式▲２▼により注目画素Ａの値αを算出し、この算出した値αを注目画素Ａの値として推定する。
【００３９】
α＝｛Ｘ・（ａ＋ｅ）＋Ｙ・（ｂ＋ｊ）＋Ｚ・（ｈ＋ｌ）／２＋Ｕ・（ｃ＋ｇ＋ｉ＋ｋ）｝÷｛（１８＋９×２1/2＋８×３1/2）／６｝      …▲２▼
なお、図８（ｂ）に示す二次元デジタルフィルタは「Javis,Judice and Ninke法」や「Stucki法」の誤差拡散法（図１１（ａ），（ｂ）を用いて後述）を行なう際に用いて好適である。
【００４０】
本実施形態では、上述した３種類の手法（１）〜（３）のうちの一つを用い、推定処理部５６によって注目画素Ａの推定値が算出されるようになっている。
二値化処理部５１は、推定処理部５６によって推定された注目画素Ａの推定値αに基づいて、走査中の注目画素Ａの値を二値化するものである。具体的には、上述の如く推定処理部５６によって算出された注目画素Ａの推定値αを所定値（例えば１２８）と比較して、注目画素Ａの推定値αが所定値以上（α≧１２８）の場合には注目画素Ａの画素値を２５５（ＯＮ）としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する。なお、以下、この所定の領域に記録する、二値化後の注目画素の画素値をα′（ただし、α′＝０もしくは２５５）として示す。
【００４１】
また、注目画素Ａの推定値αが所定値よりも小さい（α＜１２８）場合には注目画素Ａの画素値α′を０（ＯＦＦ）としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する。
輪郭検出処理部５４は、注目画素が該多値画像における輪郭上の画素であるか否かを検出するものであり、この輪郭検出処理部５４は、例えば、上述のラプラシアン型フィルタやプレウィット型フィルタ等のような輪郭強調用二次元デジタルフィルタを用いたり、又、注目画素Ａおよびその周辺画素の値を加減算したりすることにより、注目画素Ａおよびその周辺画素の値に基づいて、注目画素Ａについての輪郭値Ｅを算出するようになっている。
【００４２】
そして、この輪郭値Ｅを所定値であるしきい値（threshold）Ｔと比較することにより、注目画素が多値画像における輪郭上の画素であるか否かを検出するようになっている。
なお、このしきい値Ｔは、オペレータにより設定することができるようになっており、輪郭強調の程度を制御するパラメータとして機能するようになっている。
【００４３】
輪郭検出処理部５４は、注目画素Ａについての輪郭値Ｅを算出する際には、メモリ（ＲＡＭ１６）等に展開された多値画像の画像データについて、マトリクス１００ｂ（図４参照）を、その中央部（図４中では画素値ｅ）が注目画素Ａとなるように配置して走査するようになっており、マトリクス１００ｂの中央に位置する注目画素Ａ毎に、上述した輪郭強調用デジタルフィルタを用いて輪郭値Ｅを算出するようになっている。なお、この輪郭値Ｅの算出方法は前述した推定値αの算出方法と同様である。
【００４４】
すなわち、注目画素Ａについての輪郭値Ｅを算出する場合には、図４に示すようなマトリクス１００ｂにおける注目画素Ａ（画素値ｅ）およびその周辺の画素の画素値（図４中ではａ，ｂ，ｃ，ｄ，ｆ，ｇ，ｈ，ｉ）を、図５（ａ），（ｂ）や図６（ａ），（ｂ）に示すような輪郭強調用二次元デジタルフィルタ（ラプラシアン型フィルタ，プレウィット型フィルタ等）に適用して算出する。
【００４５】
例えば、図５（ａ）に示すようなラプラシアン型フィルタを用いて輪郭値Ｅを算出する場合には、Ｅ＝（ａ×０）＋｛ｂ×（−１）｝＋（ｃ×０）＋｛ｄ×（−１）｝＋（ｅ×４）＋｛ｆ×（−１）｝＋（ｇ×０）＋｛ｈ×（−１）｝＋（ｉ×０）を計算することにより輪郭値Ｅを算出することができる。
また、図５（ｂ）に示すラプラシアン型フィルタを用いて輪郭値Ｅを算出する場合においても図５（ａ）と同様にして輪郭値Ｅを求める。
【００４６】
なお、輪郭検出処理部５４による輪郭値Ｅの算出に際して、図５（ａ），（ｂ）に示すような２種類のラプラシアン型フィルタに限定するものではなく、これら以外のパターンを有するラプラシアン型フィルタを用いてもよい。具体的には、以下に示す▲１▼〜▲４▼の条件を全てそなえる輪郭強調用二次元デジタルフィルタであれば、ラプラシアン型フィルタと同様の効果を得ることができる。なお、ここで、符号ａ〜ｉはそれぞれ画素値を示すものであって、図４中に示すマトリクス１００ｂにおける各画素値に対応するものである。
【００４７】
▲１▼｜ｅ｜＝｜ａ＋ｂ＋ｃ＋ｄ＋ｆ＋ｇ＋ｈ＋ｉ｜
▲２▼ｅとｂ，ｄ，ｆ，ｈとが異なる符号を有すること。
▲３▼ｅとａ，ｃ，ｇ，ｉとが同符号を有する、もしくは、ａ＝ｃ＝ｇ＝ｉ＝０であること。
▲４▼マトリクス１００ｂ（図４参照）において、注目画素（画素値ｅ）と、その周辺画素（画素値ａ，ｂ，ｃ，ｄ，ｆ，ｇ，ｈ，ｉ）との各距離に、｜ａ｜，｜ｂ｜，｜ｃ｜，｜ｄ｜，｜ｆ｜，｜ｇ｜，｜ｈ｜，｜ｉ｜をそれぞれ乗じた値が、互いに同じ程度の大きさ（桁）になること（ただし、ａ，ｃ，ｇ，ｉ＝０の場合は除く）。
【００４８】
従って、図５（ａ），（ｂ）に示したラプラシアン型フィルタに限定されることなく、上述の▲１▼〜▲４▼の条件を満たす輪郭強調用二次元デジタルフィルタを用いることにより、注目画素が輪郭上の画素であるか否かを検出することができる。
次に、図６（ａ），（ｂ）に示すようなプレウィット型フィルタを用いて輪郭値Ｅを算出する場合について説明すると、例えば、図６（ａ）に示すようなプレウィット型フィルタを用いて輪郭値Ｅを算出する場合には、Ｅ＝［［（ａ×１）＋（ｂ×０）＋｛ｃ×（−１）｝＋（ｄ×１）＋（ｅ×０）＋｛ｆ×（−１）｝＋（ｇ×１）＋（ｈ×０）＋｛ｉ×（−１）｝］2＋［（ａ×１）＋（ｂ×１）＋（ｃ×１）＋（ｄ×０）＋（ｅ×０）＋（ｆ×０）＋｛ｇ×（−１）｝＋｛ｈ×（−１）｝＋｛ｉ×（−１）｝］2］1/2を計算することにより輪郭値Ｅを算出することができる。
【００４９】
そして、図６（ｂ）に示すプレウィット型フィルタを用いて輪郭値Ｅを算出する場合においても図６（ａ）と同様にして輪郭値Ｅを求める。
上述のごとく算出した輪郭値Ｅは、その注目画素およびその隣接する画素の範囲内において画素値の変化が大きいほどその値が大きくなる。
そして、輪郭検出処理部５４は、この算出した輪郭値Ｅと予め設定されたしきい値Ｔとを比較して、輪郭値Ｅがしきい値Ｔよりも大きい場合に、その注目画素（画素値ｅ）が輪郭上の画素であることを検出するのである。
【００５０】
輪郭方向検出処理部５５は、輪郭の方向を検出するものであり、以下にこの輪郭方向検出処理部５５による輪郭の方向の検出方法について、図９を参照しながら説明する。なお、図９は輪郭の方向を説明するための図である。
輪郭方向検出処理部５５は、前述した注目画素Ａを中心とするマトリクス１００ｂ（図４参照）における画素値ａ，ｂ，ｃ，ｄ，ｅ，ｆ，ｇ，ｈ，ｉを用いて、
Ｘ１＝ｂ＋ｅ＋ｈ
Ｘ２＝ｃ＋ｅ＋ｇ
Ｘ３＝ａ＋ｅ＋ｉ
Ｘ４＝ｄ＋ｅ＋ｆ
の各式を計算し、これらのＸ１，Ｘ２，Ｘ３，Ｘ４の各値を相互に比較して、Ｘｊ＝ｍａｘ（Ｘ１，Ｘ２，Ｘ３，Ｘ４）となるｊ（ｊは１〜４のいずれかの自然数）を求める。なお、計算の結果、Ｘ１，Ｘ２，Ｘ３，Ｘ４の値において、同じ値が存在する場合にはｊの大きい方を採用するものとする。
【００５１】
そして、輪郭方向検出処理部５５は、このようにして求めたｊにより、図９に示すような、注目画素Ａ（画素値ｅ）を通過する輪郭方向Ｄｊ（Ｄ１〜Ｄ４）を決定する。具体的には、マトリクス１００ｂにおいて、画素値がｂ，ｅ，ｈの各画素を通過する方向を輪郭方向Ｄ１，画素値がｃ，ｅ，ｇの各画素を通過する方向を輪郭方向Ｄ２，画素値がａ，ｅ，ｉの各画素を通過する方向を輪郭方向Ｄ３，画素値がｄ，ｅ，ｆの各画素を通過する方向を輪郭方向Ｄ４とし、これらの輪郭方向Ｄ１〜Ｄ４の中から特定の輪郭方向Ｄｊを決定するのである。
【００５２】
なお、本実施形態のハーフトーン化装置において、輪郭値Ｅの算出は上述のごとき輪郭強調用二次元デジタルフィルタを用いて算出することに限定するものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
以下に、輪郭強調用二次元デジタルフィルタを用いることなく輪郭値Ｅを算出すると同時に、輪郭の方向も検出する手法について説明する。なお、符号ａ〜ｉは画素値を示すものであり、以下、既述の符号と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
【００５３】
▲１▼図４に示すような３×３のマトリクス１００ｂにおいて、以下に示す計算（加減算）を実施する。
Ｘ１＝ａ＋ｄ＋ｇ−ｂ−ｅ−ｈ
Ｘ３＝ｃ＋ｆ＋ｉ−ｂ−ｅ−ｈ
Ｘ４＝ｆ＋ｈ＋ｉ−ｃ−ｅ−ｇ
Ｘ５＝ｂ＋ｃ＋ｆ−ａ−ｅ−ｉ
Ｘ６＝ｄ＋ｇ＋ｈ−ａ−ｅ−ｉ
Ｘ７＝ａ＋ｂ＋ｃ−ｄ−ｅ−ｆ
Ｘ８＝ｇ＋ｈ＋ｉ−ｄ−ｅ−ｆ
▲２▼Ｘ１〜Ｘ８の各値について順番に調べて、最大値となるものを検索する。
【００５４】
▲３▼Ｘ１〜Ｘ８の各値の検索の結果に基づいて輪郭の方向を決定する。
ａ）Ｘ１もしくはＸ２が最大値を取る場合には、輪郭の位置および方向はＤ１（図９参照）である。
ｂ）Ｘ３もしくはＸ４が最大値を取る場合には、輪郭の位置および方向はＤ２（図９参照）である。
【００５５】
ｃ）Ｘ５もしくはＸ６が最大値を取る場合には、輪郭の位置および方向はＤ３（図９参照）である。
ｄ）Ｘ７もしくはＸ８が最大値を取る場合には、輪郭の位置および方向はＤ４（図９参照）である。
▲４▼最大値を検出した際の輪郭の位置および方向をＲＡＭ１６や磁気ディスク２６等に記憶する。
【００５６】
▲５▼▲２▼において求めたＸ１〜Ｘ８の最大値に２５６／７６８（＝１／３）を乗算して四捨五入した数値を、輪郭値ＥとしてＲＡＭ１６や磁気ディスク２６等に記憶する。
これにより、輪郭強調用二次元デジタルフィルタを用いることなく、注目画素およびその周辺画素の値を加減算することにより輪郭値Ｅを算出することができるのであるが、この際、乗除算を行なうことなく輪郭値Ｅを算出することができ、これにより、ＣＰＵ１０の負荷を減らすことができるので輪郭値Ｅを高速に算出することができるとともに、輪郭の方向も同時に特定することができる。
【００５７】
ここで、▲５▼においてＸ１〜Ｘ８の最大値に乗算する２５６／７６８という数値について説明する。
Ｘｉ（例えば、Ｘ１）を算出するために３つの画素値を足したものから３つの画素値を足したものを引いており（ａ＋ｄ＋ｇ−ｂ−ｅ−ｈ）、又、画素値ａ〜ｉの各値は０〜２５５（８ビット）であるので、Ｘｉ（ａ＋ｄ＋ｇ−ｂ−ｅ−ｈ）の最大値は７６５（＝２５５×３）であり、又、その最小値は０になる。
【００５８】
このようなＸｉの値を８ビットのしきい値Ｔで制御する場合に、規格化係数を大きめに取ることにより、Ｘｉに乗算する数値を２５６／（２５６×３＝７６８）として求めたものである。
誤差拡散処理部５２は、注目画素についての二値化処理部５１による二値化に伴って生じた誤差Ｚを、注目画素Ａ周辺の未走査画素に拡散させるものである。
【００５９】
ここで、Ｚ＝２５５−ｅ（ｅ≧１２８の場合），
Ｚ＝ｅ（ｅ＜１２８の場合）
である（ｅは注目画素Ａの画素値）。
この誤差拡散処理部５２は、注目画素Ａの二値化に伴って生じた誤差Ｚを誤差拡散法を用いて注目画素Ａ周辺の未走査画素に拡散させるようになっており、この注目画素Ａにおける誤差Ｚを、図１０や図１１に示すような重み付けパターン（重み係数）に基づき、注目画素ｅの周辺の複数の未走査画素に比例配分することにより拡散する。
【００６０】
図１０（ａ）〜（ｄ）はそれぞれ誤差拡散法における重み付けパターンを示す図であり、各図中において●で示された注目画素Ａにおける誤差Ｚをどのような比率で注目画素Ａ周辺の未走査画素に拡散するかを示すものである。
ここで、図１０（ａ）に示す重み付けパターンに基づいて誤差拡散を行なう場合について説明すると、例えば、注目画素Ａの画素値ｅ＝１００（ｅ＜１２８）の場合には誤差Ｚ＝１００であるので、１００×７／１６を注目画素Ａの主走査方向に位置する未走査の隣接画素（図４中では画素値ｆ）に付加する。
【００６１】
同様にして、１００×５／１６を注目画素Ａの副主走査方向（主走査方向に直行する方向）に位置する未走査の隣接画素（図４中では画素値ｈ）に、１００×１／１６を注目画素Ａの主走査方向に位置する未走査の隣接画素（図４中では画素値ｉ）に、更に、１００×３／１６を注目画素Ａの主走査方向に位置する未走査の隣接画素（図４中では画素値ｇ）に付加することにより、注目画素Ａについての誤差を注目画素Ａ周辺の未走査画素に比例配分（拡散）する。
【００６２】
また、誤差拡散処理部５２は、図１０（ｂ）〜（ｄ）に示すような他の重み付けパターンをも有しており、これらの複数（本実施形態では４）種類の重み付けパターンに基づいても、注目画素Ａの周辺の複数の未走査画素に誤差Ｚを比例配分することにより誤差拡散を行なうことができるようになっている。
なお、誤差拡散処理部５２は、図１０（ｂ）〜（ｄ）に示す各重み付けパターンを用いた場合においても、上述の図１０（ａ）に示す重み付けパターンを用いた場合と同様にして注目画素についての誤差拡散を行なうものである。
【００６３】
また、誤差拡散処理部５２は、輪郭検出処理部５４によって注目画素が輪郭上の画素であることを検出した場合に、以下に示す例外処理を行なうこともできるようになっている。
この例外処理は、輪郭方向検出処理部５５で検出された輪郭の方向における未走査画素の値に、誤差Ｚに応じた値を加算するものであり、詳細には、輪郭検出処理部５４によって検出された輪郭方向Ｄｊを判断し、その結果に応じて以下の処理を行なう。
【００６４】
▲１▼輪郭方向がＤ１である場合には、画素値ｈにＺ／２を加算する。
▲２▼輪郭方向がＤ２である場合には、画素値ｇにＺ／２を加算する。
▲３▼輪郭方向がＤ３である場合には、画素値ｉにＺ／２を加算する。
▲４▼輪郭方向がＤ４である場合には、画素値ｆにＺ／２を加算する。
なお、本実施形態では誤差Ｚを２で除したものを輪郭の方向における未走査画素の値に加算しているが、これに限定するものではなく、例えば、インク（トナー）や印刷媒体等の材質等の印刷条件に応じて、誤差Ｚを２以外の数字で除したものを輪郭の方向における未走査画素の値に加算してもよく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
【００６５】
また、本装置においては、誤差拡散処理部５２による誤差拡散処理をおこなわずに二値化を行なうことができるようになっており、以下、この誤差分散を伴わない二値化を単純二値化という。
変更処理部５３は、誤差拡散処理部５２での誤差拡散手法を、多値画像の走査に伴い、所定の方式に従って変更するものであって、例えば、図１０（ａ）〜（ｄ）に示す複数（本実施形態では４）の重み付けパターンを（ａ），（ｂ），（ｃ），（ｄ），（ａ），（ｂ）…の順序で選択して変更する。すなわち、変更処理部５３は、誤差拡散処理部５２における重み付けパターンを所定の順序で（あるいはランダムに）選択して変更することにより誤差拡散手法を変更するようになっている。
【００６６】
そして、変更処理部５３は、輪郭検出処理部５４により注目画素が輪郭上の画素であることを検出した場合（輪郭前後で）、あるいは画素毎に、誤差拡散手法を変更するようになっている。
さて、この変更処理部５３による誤差拡散手法の変更の仕方としては、重み付けパターンを変更する手法、および、異なる誤差拡散法に変更する手法の２種類の変更手法から、所望の変更手法を選択できるようになっており、本装置においては、変更処理部５３による誤差拡散手法の変更を行なわずに、特定の誤差拡散手法によってのみ誤差酢酸を行なうことができるようになっている。
【００６７】
ここで、輪郭の前後で誤差拡散手法（重み付けパターン）を変更する場合における本ハーフトーン化装置の各部の動作について、図１２に示すフローチャート（ステップＡ１０〜Ａ１１０）に従って説明する。
本ハーフトーン化装置は、ＲＡＭ１６上に展開された多値画像をなす画素からなる画像データについて、図４に示すような注目画素Ａを中心とするマトリクス１００ｂで走査しながら二値化するのであるが、その際に、先ず、輪郭検出処理部５４により、マトリクス１００ｂにおいて、ラプラシアン型フィルタ（図５（ａ），（ｂ）参照）や、プレウィット型フィルタ（図６（ａ），（ｂ）参照）等の輪郭強調用二次元デジタルフィルタを用いたり、注目画素Ａおよびその周辺画素の値を加減算することにより直接的に算出したりすることにより、注目画素Ａおよびその周辺画素の値に基づいて注目画素Ａについての輪郭値Ｅを算出する（ステップＡ１０）。
【００６８】
次に、二値化処理部５１が、推定処理部５６が算出した注目画素Ａの推定値αを所定の値（本実施形態では１２８）と比較して（ステップＡ２０）、推定値αが１２８以上（α≧１２８）の場合には（ステップＡ２０のＹＥＳルート参照）、この注目画素Ａの画素値α′を２５５としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＡ３０）。
【００６９】
また、２５５−αを計算して、その値を誤差ＺとしてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＡ４０）。
一方、推定値αが１２８よりも小さい（α＜１２８）場合には（ステップＡ２０のＮＯルート参照）、二値化処理部５１は、この注目画素Ａの画素値α′を０としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録し（ステップＡ５０）、又、注目画素Ａの推定値αを誤差ＺとしてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＡ６０）。
【００７０】
次に、輪郭検出処理部５４が、輪郭値Ｅを、予め設定したしきい値Ｔと比較して（ステップＡ７０）、輪郭値Ｅがしきい値Ｔよりも小さい場合には（ステップＡ７０のＮＯルート参照）、誤差拡散処理部５２により、現在設定されている重み付けパターンに基づいて、誤差拡散法により注目画素の周辺の複数の未走査画素に誤差Ｚを比例配分する（ステップＡ８０）。
【００７１】
一方、輪郭値Ｅがしきい値Ｔよりも大きい場合には（ステップＡ７０のＹＥＳルート参照）、例外処理を行なう（ステップＡ１００）。すなわち、輪郭方向検出処理部５５により輪郭方向Ｄｊを検出して、輪郭の方向における未走査画素の値に、誤差に応じた値（Ｚ／２）を加算するのである。
その後、変更処理部５３が、図１０（ａ）〜（ｄ）に示す複数（本実施形態では４）の重み付けパターンを所定の順序（例えば、図１０（ａ），（ｂ），（ｃ），（ｄ），（ａ），（ｂ）…の順）で選択して変更する（ステップＡ１１０）。
【００７２】
そして、本ハーフトーン化装置は、ステップＡ８０又はＡ１１０の処理完了後、ＲＡＭ１６上に展開された多値画像の画像データについて、次の注目画素（現注目画素に対して走査方向に隣接する画素）にマトリクス１００ｂを移動させた後（ステップＡ９０）、ステップＡ１０に戻り、新たな注目画素について同様の処理を繰り返し行なう。
【００７３】
なお、変更処理部５３による誤差拡散手法の変更手法については、上述のごとく図１０（ａ）〜（ｄ）に示す複数（本実施形態では４）の重み付けパターンを（ａ），（ｂ），（ｃ），（ｄ），（ａ），（ｂ）…の順序で選択して変更することに限定するものではなく、これらの図１０（ａ）〜（ｄ）に示す複数の重み付けパターンを他の順序で選択して変更してもよく、更に、これらの図１０（ａ）〜（ｄ）に示す各重み付けパターンをランダムに選択して変更してもよく、本発明の趣旨を逸脱しない範囲で種々変更して実施することができる。
【００７４】
なお、本ハーフトーン化装置においては、変更処理部５３は、上述のごとく、輪郭検出処理部５４により注目画素Ａが輪郭上の画素であることを検出した場合にのみ誤差拡散手法を変更するようになっているが、これに限定するものではなく、変更処理部５３は画素毎に誤差拡散手法を変更してもよく、又、この場合においても誤差拡散手法（重み付けパターン）を所定の順序もしくはランダムに選択して変更することが望ましい。
【００７５】
また、画素毎に誤差拡散手法（重み付けパターン）を変更する場合における本ハーフトーン化装置の各部の動作について図１３に示すフローチャート（ステップＢ１０〜Ｂ１１０）に従って説明する。
本ハーフトーン化装置は、ＲＡＭ１６上に展開された多値画像をなす画素からなる画像データについて、図４に示すような注目画素Ａを中心とするマトリクス１００ｂで走査しながら二値化するのであるが、その際に、先ず、輪郭検出処理部５４により、マトリクス１００ｂにおいて、ラプラシアン型フィルタ（図５（ａ），（ｂ）参照）や、プレウィット型フィルタ（図６（ａ），（ｂ）参照）等の輪郭強調用二次元デジタルフィルタを用いたり、注目画素Ａおよびその周辺画素の値を加減算することにより直接的に算出したりすることにより、注目画素Ａおよびその周辺画素の値に基づいて注目画素Ａについての輪郭値Ｅを算出する（ステップＢ１０）。
【００７６】
次に、二値化処理部５１が、推定処理部５６が算出した注目画素Ａの推定値αを所定の値（本実施形態では１２８）と比較して（ステップＢ２０）、推定値αが１２８以上（α≧１２８）の場合には（ステップＢ２０のＹＥＳルート参照）、この注目画素Ａの画素値α′を２５５としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＢ３０）。
【００７７】
また、２５５−αを計算して、その値を誤差ＺとしてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＢ４０）。
一方、推定値αが１２８よりも小さい（α＜１２８）場合には（ステップＢ２０のＮＯルート参照）、二値化処理部５１は、この注目画素Ａの画素値α′を０としてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録し（ステップＢ５０）、又、注目画素Ａの推定値αを誤差ＺとしてＲＡＭ１６や磁気ディスク２６上の所定の領域に記録する（ステップＢ６０）。
【００７８】
次に、輪郭検出処理部５４が、輪郭値Ｅを、予め設定したしきい値Ｔと比較して（ステップＢ７０）、輪郭値Ｅがしきい値Ｔよりも小さい場合には（ステップＢ７０のＮＯルート参照）、誤差拡散処理部５２により、現在設定されている重み付けパターンに基づいて、誤差拡散法により注目画素Ａの周辺の複数の未走査画素に誤差Ｚを比例配分する（ステップＢ８０）。
【００７９】
そして、変更処理部５３により、図１０（ａ）〜（ｄ）に示す複数（本実施形態では４）の重み付けパターンを、所定の順序（例えば、図１０（ａ），（ｂ），（ｃ），（ｄ），（ａ），（ｂ）…の順）で選択して変更する（ステップＢ９０）。
一方、輪郭値Ｅがしきい値Ｔよりも大きい場合には（ステップＡ７０のＹＥＳルート参照）、例外処理を行なう（ステップＢ１１０）。すなわち、輪郭方向検出処理部５５により輪郭方向Ｄｊを検出して、輪郭の方向における未走査画素の値に、誤差に応じた値（Ｚ／２）を加算するのである。
【００８０】
そして、本ハーフトーン化装置は、ステップＢ９０又はＢ１１０の処理完了後、ＲＡＭ１６上に展開された多値画像の画像データについて、次の注目画素Ａにマトリクス１００ｂを移動させた後（ステップＢ１００）、ステップＢ１０に戻り、新たな注目画素Ａについて同様の処理を繰り返し行なう。
このように、画素毎に誤差拡散手法（誤差拡散法における重み付けパターン）を変更することによって、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができるのである。
【００８１】
次に、異なる誤差拡散法に変更する手法について図１１を用いて説明する。図１１（ａ）はJavis，Judice and Ninkeによる誤差拡散法の重み付けパターンを示す図、図１１（ｂ）はStuckiによる誤差拡散法の重み付けパターンを示す図である。
これらの図１１（ａ），（ｂ）に示す誤差拡散法も注目画素における誤差Ｚを、注目画素周辺の未走査画素に比例配分する手法であり、上述した図１０に示す誤差拡散法と比較して、誤差Ｚの比例配分を行なう未走査画素の領域をより広範囲に拡大したものである。
【００８２】
なお、図１１（ａ）に示す誤差拡散法の重み付けパターンはJavis，Judice and Ninkeによる誤差拡散法として一般に知られているものであり、又、図１１（ｂ）に示す誤差拡散法の重み付けパターンはStuckiによる誤差拡散法として一般に知られているものである。そして、本手法においては、誤差拡散処理部５２が、図１１（ａ）に示す重み付けパターンと、図１１（ｂ）に示す重み付けパターンとのいずれかを用いて誤差Ｚを比例配分（拡散）し、又、変更処理部５３が、これらの重み付けパターンを相互に変更する他は、図１２に示すフローチャート（ステップＡ１０〜Ａ１１０）とほぼ同様の処理を行なう。
【００８３】
上述の構成により、本発明の一実施形態としてのハーフトーン化装置は、多値画像をなす画素を走査しながら、走査中の注目画素Ａの値を順次２値画像に変換（二値化）する。
ここで、本ハーフトーン化装置における輪郭検出処理および二値化処理について図１４に示すフローチャート（ステップＣ１０〜Ｃ１２０）に従って説明する。
【００８４】
まず、オペレータが、輪郭強調の程度を制御するパラメータとしてのしきい値Ｔを入力し（ステップＣ１０）、その後、本ハーフトーン化装置はラスター走査を開始する（ステップＣ２０）。
なお、二値化処理を開始する画素は画像の四隅のどの位置から開始してもよく、又、どの方向に処理を行なってもよい。
【００８５】
そして、走査終了か否かを確認し（ステップＣ３０）、走査終了ならば（ステップＣ３０のＹＥＳルート参照）、終了する。
また、走査を続行する場合には（ステップＣ３０のＮＯルート参照）、本ハーフトーン化装置は、次に、上述した複数の輪郭検出方法（輪郭強調用二次元デジタルフィルタの使用による方法もしくは画素値から直接的に算出する方法）の中から特定の輪郭検出方法を選択する（ステップＣ４０）。なお、この輪郭検出方法はオペレータによって選択することもできる。
【００８６】
ここで、輪郭検出方法としてラプラシアン型フィルタ（輪郭強調用二次元デジタルフィルタ）の使用が選択された場合には、上述の如くラプラシアン型フィルタを用いて輪郭値Ｅを算出し、この輪郭値Ｅとしきい値Ｔとを比較することにより、走査中の注目画素Ａが輪郭上に画素であることの検出を行なう（ステップＣ５０）。
【００８７】
同様に、輪郭検出方法としてプレウィット型フィルタ（輪郭強調用二次元デジタルフィルタ）の使用が選択された場合には、上述の如くプレウィット型フィルタを用いて輪郭値Ｅを算出し、この輪郭値Ｅとしきい値Ｔとを比較することにより、走査中の注目画素Ａが輪郭上に画素であることの検出を行なう（ステップＣ６０）。
【００８８】
また、画素値から直接的に算出する方法が選択された場合には、注目画素Ａおよびその周辺画素の値を加減算することにより輪郭値Eを算出し、この輪郭値Ｅとしきい値Ｔとを比較することにより、走査中の注目画素Ａが輪郭上に画素であることの検出を行なう（ステップＣ７０）。
次に、本ハーフトーン化装置は、ハーフトーン化方法の選択を行なう（ステップＣ８０）。具体的には、予め複数の誤差拡散法における重み付けパターンをそなえ、走査中の注目画素Ａが輪郭上の画素であることが検出された時にのみ（輪郭遭遇時のみ）変更する方法や、この重み付けパターンを画素毎に変更する手法、更に、図１１（ａ），（ｂ）に示すような他の誤差拡散法の重み付けパターンに変更する方法の中から特定のハーフトーン化方法を選択する。
【００８９】
誤差拡散法における重み付けパターンを走査中の注目画素Ａが輪郭上の画素であることが検出された時にのみ（輪郭遭遇時のみ）変更する方法を選択した場合には（ステップＣ９０）、画像データ中において輪郭と次の輪郭との間は同一の重み付けパターンでハーフトーン化を行なう。なお、この場合において、重み付けパターンの変更の順序は、所定の順序もしくはランダムに選択して変更することが望ましい。
【００９０】
また、重み付けパターンを画素毎に変更する手法を選択した場合には（ステップＣ１００）、画素毎に重み付けパターンを変更しながらハーフトーン化を行なう。なお、この場合においても、重み付けパターンの変更の順序は、所定の順序もしくはランダムに選択して変更することが望ましい。
さらに、図１１（ａ），（ｂ）に示すような異なる誤差拡散法の重み付けパターンに変更する方法を選択した場合においては、かかる誤差拡散法を用いてハーフトーン化を行なう（ステップＣ１１０）。
【００９１】
その後、本ハーフトーン化装置は、ＲＡＭ１６上に展開された多値画像の画像データについて、次の注目画素Ａにマトリクス１００を移動させて次の画素に移動し（ステップＣ１２０）、ステップＣ３０に戻る。
そして、これらの行程（ステップＣ３０〜Ｃ１２０）をラスター走査が終了するまで繰り返し行なう。
【００９２】
次に、本ハーフトーン化装置による、画素値推定処理を含む動作の全体について、図１５に示すフローチャート（ステップＤ１０〜Ｄ１２０）に従って説明する。
まず、オペレータが、注目画素Ａについての値の推定に用いる重み係数およびその領域をキーボードボード２０やマウス２２を用いて入力し（ステップＤ１０）、その後、本ハーフトーン化装置はラスター走査を開始する（ステップＤ２０）。
【００９３】
なお、二値化処理を開始する画素は画像の四隅のどの位置から開始してもよく、又、どの方向に処理を行なってもよい。
そして、走査終了か否かを確認し（ステップＤ３０）、走査終了ならば（ステップＤ３０のＹＥＳルート参照）、終了する。
また、走査を続行する場合には（ステップＤ３０のＮＯルート参照）、本ハーフトーン化装置は、次に、上述した推定値αの算出方法を選択する（ステップＤ４０）。なお、この推定値算出方法はオペレータによって選択することもできる。
【００９４】
ここで、輪郭強調用デジタルフィルタ以外の二次元デジタルフィルタを使用する方法が選択された場合には、上記第１の推定方法において説明した如く二次元デジタルフィルタを用いて推定値αを算出する（ステップＤ５０）。
同様に、推定値算出方法として輪郭強調用二次元デジタルフィルタを使用する方法が選択された場合には、上記第２の推定方法において説明した如くラプラシアン型フィルタやプレウィット型フィルタを用いて推定値αを算出する（ステップＤ６０）。
【００９５】
また、誤差拡散を行なう未二値化画素の値に基づいて推定する手法が選択された場合には、上記第３の推定方法において説明した如く、誤差拡散を行なう未二値化画素に対して二次元デジタルフィルタを適用して注目画素Ａの値を推定する（ステップＤ７０）。
次に、本装置は、ハーフトーン化方法の選択を行なう（ステップＤ８０）。具体的には、単純二値化法によるハーフトーン化方法や、一般的な誤差拡散法を用いたハーフトーン化方法、図１４を用いて示した輪郭検出を行なって誤差拡散を行なう方法の中から特定のハーフトーン化方法を選択する。
【００９６】
単純二値化法によるハーフトーン化方法を選択した場合には（ステップＤ９０）、推定処理部５６によって算出された推定値αを注目画素Ａの値として、二値化処理部５１が二値化処理を行ない、この際、二値化によって生じる誤差（二値化後の画素値α′（０もしくは２５５）と推定値αとの差）は拡散しない（単純二値化処理）。
【００９７】
また、一般的な誤差拡散を選択した場合には（ステップＤ１００）、推定処理部５６によって算出された推定値αを注目画素Ａの値として、二値化処理部５１が単純二値化を行なうとともに、誤差拡散処理部５２が、この二値化によって生じる誤差（二値化後の画素値α′（０もしくは２５５）と推定値αとの差）を、一般的に知られている誤差拡散法を用いて拡散する。
【００９８】
一方、輪郭検出を行なって誤差拡散を行なう方法を選択した場合には（ステップＤ１１０）、推定処理部５６によって算出された推定値αを注目画素Ａの値として、二値化処理部５１が単純二値化を行なうとともに、図１４に示すフローチャートにおけるステップＣ４０〜Ｃ１１０の処理を行なう。なお、この場合、「注目画素Ａの値の推定に用いる重み係数と領域の選択」は予め入力されているものとする。
【００９９】
その後、本ハーフトーン化装置は、ＲＡＭ１６上に展開された多値画像の画像データについて、次の注目画素Ａにマトリクス１００ｂを移動させて次の画素に移動し（ステップＤ１２０）、ステップＤ３０に戻る。
そして、これらの行程（ステップＤ１０〜Ｄ１２０）をラスター走査が終了するまで繰り返し行なう。
【０１００】
このように、本発明の一実施形態としてのハーフトーン化装置によれば、注目画素Ａに対して二値化を行なう際に、その注目画素Ａについての値を直接的に使用せずに、その注目画素Ａ以外の画素の値に基づいて算出した推定値を用いて二値化を行なうので、例えば、市松模様のように隣接する画素間でその値に大きな変化がある図柄についても、画素値の変化を滑らかにすることができる。
【０１０１】
そして、走査方向に発生する縞模様（モアレ等）の原因がこのような画素値の急激な変化によるものであるので、画素値の変化を滑らかにすることにより、このような走査方向に発生する縞模様を低減することができる。
また、多値画像中において、傷等が原因で画素値が突出している画素がある場合においても、その突出した画素値の誤差が直接的に周囲の未二値化画素に対して分散されることがなく、原画像（多値画像）にないモアレや目障りな模様（artifact）を目立たなくすることができ、入力に用いたスキャナやデジタルカメラ等の入力機器の固有の周期構造が原因のモアレ等を潜在的に有するものである場合においても、そのモアレ等が誤差の拡散により増幅され顕在化してしまうことがない。なお、非常になだらかなグラデーション画像に関しても、特有の目障りな模様が発生することはない。
【０１０２】
また、二次元デジタルフィルタを用いて推定値の算出を行なうことにより、容易に推定値を算出することができ、特に、ラプラシアン型フィルタやプレウィット型フィルタ等の輪郭強調用二次元デジタルフィルタを用いて推定値の算出を行なうことにより、輪郭を強調することができ、メリハリのある画像を形成することができる。
【０１０３】
さらに、推定処理部５６による推定値の算出や二値化処理部５１による二値化処理を、それぞれ並列化して行なうこともでき、これによって処理時間を短縮することができる。
また、輪郭検出処理部５４により注目画素が輪郭上の画素であることを検出したときに、変更処理部５３により誤差拡散手法（誤差拡散法の重み付けパターン）を変更するので、誤差分散手法の変更による影響（モアレや目障りな模様）を局在化させ、これらの影響を輪郭に紛れさせることができるので、これにより、二値化後の画像において、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１０４】
また、輪郭処理部５４により注目画素が輪郭上の画素であることを検出したときに、誤差拡散処理部５２が、輪郭方向検出処理部５５により検出した輪郭の方向における未走査画素の値に、注目画素についての二値化に伴って生じた誤差に応じた値（Ｚ／２）を加算する例外処理を行なうので、これによっても原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１０５】
さらに、注目画素およびその周辺画素の値に基づいて注目画素についての輪郭値Ｅを算出して、この輪郭値Ｅをしきい値Ｔ（例えば１２８）と比較することによって、注目画素が輪郭上の画素であるか否かを検出しているので、これにより、容易に輪郭を検出することができるほか、多値画像の走査と並行して輪郭の検出を行なうことができ輪郭検出の処理を高速化することができる。
【０１０６】
また、このしきい値Ｔをオペレータが変更することにより、二値化後の画像の輪郭強調の程度（シャープネス）を変更することができ、ハーフトーン化を行なうことにより生ずる画像のボケを解消することができる。
例えば、しきい値Ｔを２５５に近づけることにより輪郭を強調することができ、又、しきい値Ｔを０に近づけることにより輪郭をぼかすようにすることができるのである。
【０１０７】
なお、輪郭検出処理部５４が、ラプラシアン型フィルタやプレウィット型フィルタ等の輪郭強調用二次元デジタルフィルタを用いて輪郭値を算出しているので、これにより、容易に輪郭を検出することができる。
また、変更処理部５３が、図７（ａ）〜（ｄ）に示す複数（本実施形態では４）の重み付けパターンに基づき、誤差を注目画素周辺の複数の未走査画素に比例配分するとともに、これらの重み付けパターンを（ａ），（ｂ），（ｃ），（ｄ），（ａ），（ｂ）…の順序で選択して変更しており、誤差拡散処理部５２における重み付けパターンを所定の順序で選択して変更することにより誤差拡散手法を変更するので、これによっても、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１０８】
さらに、変更処理部５３が、図７（ａ）〜（ｄ）に示すような複数の重み付けパターンに基づき、誤差を注目画素周辺の複数の未走査画素に比例配分するとともに、これらの重み付けパターンをランダムに選択して変更することによっても、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１０９】
図１６〜図１９はそれぞれ本ハーフトーン化装置によりハーフトーン化した画像の色票の明度（Ｌ＊）を０〜１００％の範囲で５％ごとに測定した結果を、注目画素の値を直接用いてハーフトーン化（従来技術）した結果と比較して示す図であり、図１６はマゼンタ（Magenta）についての波長と明度との関係を示す図、図１７はグリーン（Green）についての波長と明度との関係を示す図、図１８はブルー（Blue）についての波長と明度との関係を示す図、図１９はComposite Black（ＲＧＢ同量）についての波長と明度との関係を示す図である。なお、これらの図１６〜図１９中においては、それぞれ本装置による結果を実線で示すとともに、従来技術による結果を破線によって示している。
【０１１０】
図１６〜図１９に示すように、従来技術のハーフトーン化による結果においては、色票番号１１（５０％）付近において、明度の低下が検出されているが、本ハーフトーン化装置もしくはハーフトーン化手法によれば、このような色票番号１１（５０％）付近における明度の低下は発生せず、なめらかな画像を得ることができることがわかる。
【０１１１】
なお、二値化前の多値画像が、複数の画像からなるもの（例えば、シアン，マゼンタ，イエロおよびブラック等の複数色の画像からなるカラー画像）であって、ハーフトーン化すべき複数の画像を有しており、これらの複数の画像がほぼ同一の輪郭を有している場合に、輪郭検出処理部５４により、複数の画像のうちの１つについてのみ輪郭上画素の検出を行ない、その検出結果を、一時的にＲＡＭ１６や磁気ディスク２６等に格納し、この輪郭の情報（輪郭の位置，方向等）を全ての画像に対するハーフトーン化処理を実行する際に用いてもよい。
【０１１２】
これにより、輪郭検出処理部５４により、他の画像について輪郭上画素の検出を行なうことなく全画像のハーフトーン化を行なうことができ、ハーフトーン化処理の実行速度を向上させることができる。
なお、複数の画像とは、上述の如きシアン，マゼンタ，イエロおよびブラック等の複数色の画像からなるカラー画像に限定されるものではなく、例えば、レッド，グリーンおよびブルーからなるカラー画像であってもよく、又、これ以外の画像であってもよく、カラー画像を構成するものであれば複数の画像の範疇に含まれるものとする。
【０１１３】
また、このとき、複数の画像のうちの１つについての輪郭検出処理を完了してから、全ての画像の二値化処理を行なってもよいし、前記輪郭検出処理と並行して全ての画像の二値化処理を行なってもよい。
また、本ハーフトーン化装置においては、多値画像の走査時に、二値化処理部５１によって二値化を行なう処理と並行して、輪郭検出処理部５４により輪郭値Ｅを算出して、注目画素が輪郭上の画素であるか否かを判断するので、ハーフトーン処理を短時間で行なうことができる。
【０１１４】
また、本ハーフトーン化方法は、並列演算に適したものであるので、複数のＣＰＵを用いた並列処理を行なうことができ、大きな画像の処理に際しても容易に高速化することができる。
なお、輪郭検出処理部５４による輪郭の検出に際しては、ラプラシアン型フィルタを用いた手法，プレウィット型フィルタを用いた手法，注目画素およびその周辺画素の値を加減算することによる手法のいずれの手法を用いてもよい。
【０１１５】
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、輪郭検出処理部５４による輪郭の検出においては、上記実施形態に限定するものではなく、本実施形態に記載された手法以外の手法を用いてもよい。
また、注目画素およびその周辺画素の値を加減算することにより輪郭値Ｅを算出する際において、Ｘｉに２５６／７６８（＝１／３）を乗算しているが、これに限定するものではなく、本発明の趣旨を逸脱しない範囲で種々変更して実施することができる。
【０１１６】
さらに、上記実施形態においては、注目画素Ａ以外の画素の値から注目画素Ａの値を直接的に推定しているが、それに限定するものではなく、注目画素Ａ以外の画素をそれぞれ二値化し、これらの二値化によって生じた誤差に対して二次元デジタルフィルタを適用することによって求められた値を注目画素Ａの誤差として推定し、誤差分散等を行なってもよい。
【０１１７】
なお、本発明の各実施形態が開示されていれば、当業者によって製造することが可能である。
（付記１）多値画像を二値画像に変換するハーフトーン化方法であって、
二値化を行なう注目画素についての値を当該注目画素以外の画素の値に基づいて算出する推定ステップと、
該推定値に基づいて該注目画素の値を二値化する二値化ステップとを含んだことを特徴とする、ハーフトーン化方法。
【０１１８】
（付記２）該推定ステップにおいて、該注目画素から所定距離だけ離れた所定領域の未二値化画素の値に基づいて該推定値の算出を行なうことを特徴とする、付記１記載のハーフトーン化方法。
（付記３）該推定ステップにおいて、該所定領域の未二値化画素に対して二次元デジタルフィルタを用いて該推定値の算出を行なうことを特徴とする、付記２記載のハーフトーン化方法。
【０１１９】
（付記４）該デジタルフィルタが輪郭強調用二次元デジタルフィルタであることを特徴とする、付記３記載のハーフトーン化方法。
（付記５）該輪郭強調用二次元ディジタルフィルタがラプラシアン型フィルタであることを特徴とする、付記４記載のハーフトーン化方法。
（付記６）該輪郭強調用二次元ディジタルフィルタがプレウィット型フィルタであることを特徴とする、付記４記載のハーフトーン化方法。
【０１２０】
（付記７）該二値化ステップにおいて、単純二値化手法を用いて二値化を行なうことを特徴とする、付記１〜付記６のいずれか１項に記載のハーフトーン化方法。
（付記８）該注目画素についての二値化に伴って生じた誤差を、該注目画素周辺の未二値化画素に拡散させる誤差拡散ステップを含んだことを特徴とする、付記１〜付記６のいずれか１項に記載のハーフトーン化方法。
【０１２１】
（付記９）該推定ステップにおいて前記推定値の算出に用いた画素に対して、前記注目画素についての二値化に伴って生じた誤差を分散させることを特徴とする、付記８記載のハーフトーン化方法。
（付記１０）該誤差拡散ステップでの誤差拡散手法を、該多値画像の走査に伴い、所定の方式に従って変更する変更ステップを含んだことを特徴とする、付記８または付記９記載のハーフトーン化方法。
【０１２２】
（付記１１）該注目画素が該多値画像における輪郭上の画素であるか否かを検出する輪郭検出ステップを含み、
該輪郭検出ステップで該注目画素が該輪郭上の画素であることを検出した場合に、該変更ステップにおいて該誤差拡散手法を変更することを特徴とする、付記１０に記載のハーフトーン化方法。
【０１２３】
（付記１２）該輪郭の方向を検出する輪郭方向検出ステップを含み、
該輪郭検出ステップで該注目画素が該輪郭上の画素であることを検出した場合に、該誤差拡散ステップにおいて、該輪郭方向検出ステップで検出された該輪郭の方向における未走査画素の値に、前記誤差に応じた値を加算する例外処理を行なうことを特徴とする、付記１１に記載のハーフトーン化方法。
【０１２４】
（付記１３）画素毎に、該変更ステップにおいて該誤差拡散手法を変更することを特徴とする、付記１０に記載のハーフトーン化方法。
（付記１４）該注目画素が該多値画像における輪郭上の画素であるか否かを検出する輪郭検出ステップと、
該輪郭の方向を検出する輪郭方向検出ステップとを含み、
該輪郭検出ステップで該注目画素が該輪郭上の画素であることを検出した場合には、該誤差拡散ステップにおいて、該輪郭方向検出ステップで検出された該輪郭の方向における未走査画素の値に、前記誤差に応じた値を加算する例外処理を行なうことを特徴とする、付記１３に記載のハーフトーン化方法。
【０１２５】
（付記１５）該輪郭検出ステップにおいて、該注目画素およびその周辺画素の値に基づいて該注目画素についての輪郭値を算出し、該輪郭値を所定値と比較することにより、該注目画素が該多値画像における輪郭上の画素であるか否かを検出することを特徴とする、付記１１〜付記１４のいずれか１項に記載のハーフトーン化方法。
【０１２６】
（付記１６）該輪郭検出ステップにおいて、輪郭強調用二次元デジタルフィルタを用いて該輪郭値を算出することを特徴とする、付記１５に記載のハーフトーン化方法。
（付記１７）該輪郭強調用二次元デジタルフィルタが、ラプラシアン型フィルタであることを特徴とする、付記１６に記載のハーフトーン化方法。
【０１２７】
（付記１８）該輪郭強調用二次元デジタルフィルタが、プレウィット型フィルタであることを特徴とする、付記１６に記載のハーフトーン化方法。
（付記１９）該注目画素およびその周辺画素の値を加減算することにより、該輪郭値を直接的に算出することを特徴とする、付記１５に記載のハーフトーン化方法。
【０１２８】
（付記２０）該変更ステップにおいて、該誤差拡散手法を、複数の誤差拡散手法から所定の順序で選択して変更することを特徴とする、付記１０〜付記１９のいずれか１項に記載のハーフトーン化方法。
（付記２１）該変更ステップにおいて、該誤差拡散手法を、複数の誤差拡散手法からランダムに選択して変更することを特徴とする、付記１０〜付記１９のいずれか１項に記載のハーフトーン化方法。
【０１２９】
（付記２２）該誤差拡散ステップでの誤差拡散手法として、所定の重み付けパターンに基づき、前記誤差を該注目画素周辺の複数の未走査画素に比例配分する手法を採用し、
該変更ステップにおいて、前記所定の重み付けパターンを変更することにより該誤差拡散手法を変更することを特徴とする、付記１０〜付記２１のいずれか１項に記載のハーフトーン化方法。
【０１３０】
（付記２３）ハーフトーン化すべき複数の画像がほぼ同一の輪郭を有している場合、該複数の画像のうちの一つについてのみ該輪郭検出ステップによる輪郭上画素の検出を行ない、その検出結果を、他の画像に対するハーフトーン化処理を実行する際に用いることを特徴とする、付記１１〜付記１４のいずれか１項に記載のハーフトーン化方法。
【０１３１】
（付記２４）多値画像を二値画像に変換するハーフトーン化装置であって、
二値化を行なう注目画素についての値を当該注目画素以外の画素の値に基づいて算出する推定処理部と、
該推定値に基づいて該注目画素の値を二値化する二値化処理部とを含んだことを特徴とする、ハーフトーン化装置。
【０１３２】
（付記２５）多値画像を二値画像に変換する機能をコンピュータに実行させるためのハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
該ハーフトーン化プログラムが、
二値化を行なう注目画素についての値を当該注目画素以外の画素の値に基づいて算出する推定処理部と、
該推定値に基づいて該注目画素の値を二値化する二値化処理部として、該コンピュータを機能させることを特徴とする、ハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１３３】
【発明の効果】
以上詳述したように、本発明のハーフトーン化方法およびハーフトーン化装置並びにハーフトーン化プログラムを記録したコンピュータ読み取り可能な記録媒によれば、以下の効果ないし利点がある。
（１）注目画素に対して二値化を行なう際に、その注目画素についての値を直接的に使用せずに、その注目画素以外の画素の値に基づいて算出した推定値を用いて二値化を行なうので、例えば、多値画像中において、傷等が原因で画素値が突出している画素がある場合においても、その突出した画素値の誤差が直接的に周囲の未二値化画素に対して分散されることがなく、原画像（多値画像）にないモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１３４】
（２）二次元デジタルフィルタを用いて推定値の算出を行なうことにより、容易に推定値を算出することができる。
（３）ラプラシアン型フィルタやプレウィット型フィルタ等の輪郭強調用二次元デジタルフィルタを用いて推定値の算出を行なうことにより、輪郭を強調することができ、メリハリのある画像を形成することができる。
【０１３５】
（４）誤差分散手法を多値画像の走査に伴って変更するので、二値化後の画像において、多値画像に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
（５）注目画素が輪郭上の画素であることを検出した場合に誤差分散手法を変更することにより、誤差分散手法の変更による影響（モアレや目障りな模様（artifact））を局在化させ、これらの影響を輪郭に紛れさせることができるので、これによっても原画像（多値画像）に無いモアレや目障りな模様を目立たなくすることができる。
【０１３６】
（６）画素毎に誤差拡散手法を変更することによっても原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
（７）注目画素が輪郭上の画素であることを検出した場合に、輪郭の方向における未走査画素の値に、注目画素についての二値化に伴って生じた誤差に応じた値を加算する例外処理を行なうことにより、これによっても原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１３７】
（８）注目画素およびその周辺画素の値に基づいて注目画素についての輪郭値を算出して、この輪郭値を所定値と比較することによって、注目画素が輪郭上の画素であるか否かを検出することにより、容易に輪郭を検出することができるほか、多値画像の走査と平行して輪郭の検出を行なうことができ、輪郭検出の処理を高速化することができる。
【０１３８】
（９）ラプラシアン型フィルタやプレウィット型フィルタ等の輪郭強調用二次元デジタルフィルタを用いて輪郭値を算出することにより、容易に輪郭を検出することができる。
（１０）注目画素およびその周辺画素の値を加減算することによって輪郭値を直接的に算出することにより、乗除算を行なうことなく輪郭値を算出することができるので、計算の負荷を減らすことができ輪郭値を高速に算出することができる。
【０１３９】
（１１）複数の誤差拡散手法をそなえるとともに、これらの複数の誤差拡散手法から所定の順序で誤差拡散手法を選択して変更することにより、原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
（１２）複数の誤差拡散手法をそなえるとともに、これらの複数の誤差拡散手法からランダムに選択して変更することによっても、より原画像（多値画像）に無いモアレや目障りな模様（artifact）を目立たなくすることができる。
【０１４０】
（１３）所定の重み付けパターンに基づき、誤差を注目画素周辺の複数の未走査画素に比例配分するとともに、この所定の重み付けパターンを変更することにより、容易且つ確実に誤算拡散手法を変更することができる。
（１４）ハーフトーン化すべき複数の画像がほぼ同一の輪郭を有している場合に、複数の画像のうちの１つについてのみ輪郭上画素の検出を行ない、その検出結果を、他の画像に対するハーフトーン化処理を実行する際に用いることにより、他の画像についての輪郭上画素の検出を行なうことなく複数画像のハーフトーン化を行なうことができ、ハーフトーン化処理の実行速度を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態としてのハーフトーン化装置の機能的構成を示すブロック図である。
【図２】本発明の一実施形態としてのハーフトーン化装置を実現するためのコンピュータシステムの構成を示すブロック図である。
【図３】（ａ），（ｂ）は注目画素についての値の推定方法を説明するための図である。
【図４】輪郭強調用二次元デジタルフィルタを適用する方法を説明するための図である。
【図５】（ａ），（ｂ）はそれぞれラプラシアン型フィルタを示す図である。
【図６】（ａ），（ｂ）はそれぞれプレウィット型フィルタを示す図である。
【図７】（ａ）は注目画素に隣接する未二値化画素を示す図、（ｂ）は（ａ）に示す画素に対して適用する二次元デジタルフィルタを示す図である。
【図８】（ａ）は注目画素の周辺の未二値化画素を示す図、（ｂ）は（ａ）に示す画素に対して適用する二次元デジタルフィルタを示す図である。
【図９】輪郭の方向を説明するための図である。
【図１０】ａ）〜（ｄ）はそれぞれ誤差拡散法における重み付けパターンを示す図である。
【図１１】（ａ）はJavis，Judice and Ninkeによる誤差拡散法の重み付けパターンを示す図、（ｂ）はStuckiによる誤差拡散法の重み付けパターンを示す図である。
【図１２】輪郭の前後で誤差拡散手法（重み付けパターン）を変更する場合における本ハーフトーン化装置の各部の動作を説明するためのフローチャートである。
【図１３】画素毎に誤差拡散手法（重み付けパターン）を変更する場合における本ハーフトーン化装置の各部の動作を説明するためのフローチャートである。
【図１４】本ハーフトーン化装置における輪郭検出処理および二値化処理について説明するためのフローチャートである。
【図１５】本ハーフトーン化装置の動作を説明するためのフローチャートである。
【図１６】マゼンタ（Magenta）についての波長と明度との関係を示す図である。
【図１７】グリーン（Green）についての波長と明度との関係を示す図である。
【図１８】ブルー（Blue）についての波長と明度との関係を示す図である。
【図１９】  Composite Black（ＲＧＢ同量）についての波長と明度との関係を示す図である。
【符号の説明】
１０  ＣＰＵ
１２  バスライン
１４  ＲＯＭ
１６  ＲＡＭ
１８  入出力インターフェース（Ｉ／Ｏ）
２０  キーボード
２２  マウス
２４  モニタ
２６  磁気ディスク
２８  入出力インターフェース（Ｉ／Ｏ）
３０  プリンタ
５１  二値化処理部
５２  誤差拡散処理部
５３  変更処理部
５４  輪郭検出処理部
５５  輪郭方向検出処理部
５６  推定処理部
１００ａ，１００ｂ  マトリクス
【図１】
0004404457.tif 000002
【図２】
0004404457.tif 000003
【図３】
0004404457.tif 000004
【図４】
0004404457.tif 000005
【図５】
0004404457.tif 000006
【図６】
0004404457.tif 000007
【図７】
0004404457.tif 000008
【図８】
0004404457.tif 000009
【図９】
0004404457.tif 000010
【図１０】
0004404457.tif 000011
【図１１】
0004404457.tif 000012
【図１２】
0004404457.tif 000013
【図１３】
0004404457.tif 000014
【図１４】
0004404457.tif 000015
【図１５】
0004404457.tif 000016
【図１６】
0004404457.tif 000017
【図１７】
0004404457.tif 000018
【図１８】
0004404457.tif 000019
【図１９】
0004404457.tif 000020