(57)【要約】【課題】画像データに対して量子化処理を行う場合に、明細線の欠落を抑制し、高品質なハーフトーン画像データを生成することができる。【解決手段】入力された画像データについて、所定領域ごとに、前記所定領域に含まれる各画素の画素値に基づき前記所定領域内に配置すべきドット数を導出する導出手段と、前記所定領域に含まれる各画素の画素値と、閾値マトリクス内の前記所定領域に対応する閾値群とに基づく評価値を用いて、前記所定領域においてドットを配置する画素の優先順を示す配置優先順を決定する決定手段と、前記導出された前記ドット数が基準ドット数に満たない場合に、前記所定領域における少なくとも１つの画素の画素値に基づき、前記導出されたドット数を補正する補正手段と、前記補正された前記ドット数と、前記決定された前記配置優先順とに基づいて、前記所定領域に対応する前記ドットデータを生成する生成手段と、を備える。【選択図】図２
2020102766.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体上への画像の形成に用いる各画素にドットを配置するか否かを定めるドットデータを生成する画像処理装置であって、
入力された画像データについて、所定領域ごとに、前記所定領域に含まれる各画素の画素値に基づき前記所定領域内に配置すべきドット数を導出する導出手段と、
前記所定領域に含まれる各画素の画素値と、閾値マトリクス内の前記所定領域に対応する閾値群とに基づく評価値を用いて、前記所定領域においてドットを配置する画素の優先順を示す配置優先順を決定する決定手段と、
前記導出手段が導出した前記ドット数が基準ドット数に満たない場合に、前記所定領域における少なくとも１つの画素の画素値に基づき、前記導出手段が導出した前記ドット数を補正する補正手段と、
前記補正手段により補正された前記ドット数と、前記決定手段が決定した前記配置優先順とに基づいて、前記所定領域に対応する前記ドットデータを生成する生成手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記補正手段は、前記導出手段が導出した前記ドット数が基準ドット数に満たない場合に、前記所定領域に対応するドット数が前記基準ドット数になるように補正することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記補正手段は、前記所定領域における少なくとも１つの画素の画素値に基づいて、前記導出手段が導出した前記ドット数を補正するか否かを判定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記補正手段は、前記導出手段が導出した前記ドット数が前記基準ドット数に満たない場合に、前記所定領域における少なくとも１つの画素の画素値に応じた代表値と前記閾値群の最小閾値とに基づいて前記導出手段が導出した前記ドット数を補正するか否かを判定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記補正手段は、前記代表値と前記閾値群の最小閾値とを比較し、前記所定領域の前記代表値が前記閾値群の最小閾値より大きければ、前記導出手段が導出した前記ドット数を前記基準ドット数まで増やす補正を行う
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記補正手段は、前記所定領域の前記代表値が前記閾値群の最小閾値以下である場合には、前記導出手段が導出した前記ドット数を補正しない
ことを特徴とする請求項４または請求項５に記載の画像処理装置。
【請求項７】
前記補正手段は、前記所定領域の前記代表値と前記閾値群の最小閾値とを比較する際に、前記所定領域の前記代表値に前記所定領域内の有効画素の数または位置に応じて所定の係数を乗算し、前記所定の係数を乗算した前記代表値と前記閾値群の最小閾値とを比較する
ことを特徴とする請求項４から請求項６のうちのいずれか１項に記載の画像処理装置。
【請求項８】
前記補正手段は、前記所定領域に含まれる白画素でない画素の数が所定数以下であって、該画素が前記所定領域の隅に存在する場合に、前記所定領域の前記代表値と前記閾値群の最小閾値とを比較する際に、前記所定領域の前記代表値に前記所定の係数を乗算する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記所定領域の前記代表値が、前記所定領域に含まれる各画素の画素値の合計値、最大値、最小値、もしくは中央値、または、前記所定領域に含まれる画素値が所定値より大きい画素の画素値の平均値もしくは中央値である
ことを特徴とする請求項４から請求項８のうちのいずれか１項に記載の画像処理装置。
【請求項１０】
前記基準ドット数が、前記所定領域のサイズに基づき決定される
ことを特徴とする請求項１から請求項９のうちのいずれか１項に記載の画像処理装置。
【請求項１１】
前記所定領域のサイズが４画素×４画素のとき、前記基準ドット数が１である
ことを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記導出手段は、前記閾値群に含まれる、前記所定領域の画素値の平均値未満である閾値の数を、前記ドット数として導出する
ことを特徴とする請求項１から請求項１１のうちのいずれか１項に記載の画像処理装置。
【請求項１３】
前記決定手段は、前記所定領域に含まれる各画素の画素値と、前記閾値群の各閾値とに基づいて前記所定領域に含まれる各画素の評価値を導出し、導出した前記評価値に基づき前記配置優先順を決定する
ことを特徴とする請求項１から請求項１２のうちのいずれか１項に記載の画像処理装置。
【請求項１４】
前記決定手段は、前記所定領域に含まれる各画素の画素値を、前記閾値群の対応する閾値で減算して前記評価値を導出し、導出した前記評価値を大きい順にソートすることにより、前記配置優先順を決定する
ことを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記決定手段は、前記所定領域に含まれる画素値が所定値以下である画素については、該画素の画素値を前記所定領域に対応する前記閾値群の最大値で減算して前記評価値を導出する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
記録媒体上への画像の形成に用いる各画素にドットを配置するか否かを定めるドットデータを生成する画像処理装方法であって、
入力された画像データについて、所定領域ごとに、前記所定領域に含まれる各画素の画素値に基づき前記所定領域内に配置すべきドット数を導出する導出ステップと、
前記所定領域に含まれる各画素の画素値と、閾値マトリクス内の前記所定領域に対応する閾値群とに基づく評価値を用いて、前記所定領域においてドットを配置する画素の優先順を示す配置優先順を決定する決定ステップと、
前記導出ステップで導出された前記ドット数が基準ドット数に満たない場合に、前記所定領域における少なくとも１つの画素の画素値に基づき、前記導出ステップで導出された前記ドット数を補正する補正ステップと、
前記補正ステップで補正された前記ドット数と、前記決定ステップで決定された前記配置優先順とに基づいて、前記所定領域に対応する前記ドットデータを生成する生成ステップと、
を含むことを特徴とする画像処理方法。
【請求項１７】
コンピュータに、請求項１６に記載の画像処理方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データをより高品質なハーフトーン画像データに変換するための技術に関する。
【背景技術】
【０００２】
カメラで撮影された画像やＣＧなどの方法で作成された画像のデジタル画像データ（以下、単に画像データと呼ぶ。）を印刷するプリンタ等の画像形成装置が広く利用されている。画像データは、一般に各画素を１色あたり８ビットや１６ビット等の多階調で表現する。一方、画像形成装置は記録材によるドットのオンとオフによって階調を表現するため、出力可能な階調数が少ない。そこで、多階調の画像データを画像形成装置で出力可能な階調数に変換する量子化手法が用いられる。一般に階調数を少なくする量子化手法として、ハーフトーン処理がある。ハーフトーン処理後に得られるハーフトーン画像データは、画像形成装置が記録媒体上に出力するドットパターンを表し、疑似的に画像の階調を表現する。ハーフトーン処理の一種として、ディザ処理がよく利用される。ディザ処理では、画像データにおける各画素に対応して閾値が配置された閾値マトリクスを用いて、画素ごとに、画像データの画素値と閾値マトリクスの閾値とを比較して、各画素についてドットのオンまたはオフを決定する。
【０００３】
しかし、高周波成分を含む画像データを入力して処理する場合、画像データに含まれる高周波成分と閾値マトリクスの閾値の周期とが干渉し、モアレ（テクスチャ）や鮮鋭性の劣化、細線の途切れ等が発生するおそれがあった。そこで特許文献１には、画像データを複数の処理領域に分割し、処理領域毎に、画素値に応じて領域内に配置するドット数を決定し、領域内の各画素にドットを配置する優先順を決定するハーフトーン処理が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−２１７３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし従来技術では、ハーフトーン処理により明細線の視認性が低下する可能性があった。明細線とは明度が高く（画素値が小さく）かつ線幅が狭い線である。そのため明細線のみを含む処理領域では平均画素値が低くなる。したがって、画素値に基づいてドット数を決定する方法では処理領域において配置されるドット数が少なくなり、出力画像における明細線が欠落する可能性があった。
【０００６】
そこで、本発明は、画像データに対して量子化処理を行う場合に、明細線の欠落を抑制し、高品質なハーフトーン画像データを生成することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明による画像処理装置は、記録媒体上への画像の形成に用いる各画素にドットを配置するか否かを定めるドットデータを生成する画像処理装置であって、入力された画像データについて、所定領域ごとに、前記所定領域に含まれる各画素の画素値に基づき前記所定領域内に配置すべきドット数を導出する導出手段と、前記所定領域に含まれる各画素の画素値と、閾値マトリクス内の前記所定領域に対応する閾値群とに基づく評価値を用いて、前記所定領域においてドットを配置する画素の優先順を示す配置優先順を決定する決定手段と、前記導出手段が導出した前記ドット数が基準ドット数に満たない場合に、前記所定領域における少なくとも１つの画素の画素値に基づき、前記導出手段が導出したドット数を補正する補正手段と、前記補正手段により補正された前記ドット数と、前記決定手段が決定した前記配置優先順とに基づいて、前記所定領域に対応する前記ドットデータを生成する生成手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、画像データに対して量子化処理を行う場合に、明細線の欠落を抑制し、高品質なハーフトーン画像データを生成することができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態の画像処理部を含む画像形成システムの構成を示すブロック図。
【図２】第１実施形態における画像処理部の構成を示すブロック図。
【図３】入力画像データにおける処理領域を示す図。
【図４】明細線を含む処理領域と該処理領域に対応する閾値群との一例を示す図。
【図５】画像処理部の処理を示すフローチャート。
【図６】図５に示す処理によって得られる処理結果を説明するための図。
【図７】第２実施形態における画像処理部の構成を示すブロック図。
【図８】ドットの分散性を説明するための図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
【００１１】
＜第１実施形態＞
（画像処理装置の構成）
図１は、第１実施形態の画像処理部（以下、画像処理装置とも呼ぶ）を含む画像形成システムの構成を示すブロック図である。本実施形態では、画像処理装置の一例として、記録媒体上に記録材を用いて画像を形成するプリンタ内に内蔵された画像処理コントローラを例として説明する。第１実施形態に係る画像形成システムは、ＣＰＵ１００、ＲＡＭ１０１、ＲＯＭ１０２、操作部１０３、表示部１０４、外部記憶装置１０５、画像処理部１０６、画像形成部１０７、Ｉ／Ｆ（インターフェース）部１０８、及びバス１０９を備える。
【００１２】
ＣＰＵ１００は、入力されたデータや、後述するＲＡＭやＲＯＭに格納されているコンピュータプログラムを用いて、画像形成システム全体の動作を制御する。なお、ここではＣＰＵ１００が画像形成システ全体を制御する場合を例に説明するが、複数のハードウェアが処理を分担することにより、画像形成システム全体を制御するようにしてもよい。
【００１３】
ＲＡＭ１０１は、外部記憶装置１０５から読み取ったコンピュータプログラムやデータ、Ｉ／Ｆ部１０８を介して外部から受信したデータを一時的に記憶する記憶領域を有する。またＲＡＭ１０１は、ＣＰＵ１００が各種処理を実行する際に用いる記憶領域や、画像処理部１０６が画像処理を実行する際に用いる記憶領域として使用される。すなわちＲＡＭ１０１は各種の記憶領域を適宜提供することができる。ＲＯＭ１０２には、画像形成システムにおける各部を設定する設定パラメータやブートプログラムなどが格納されている。
【００１４】
操作部１０３は、キーボードやマウスなどにより構成されており、操作者による操作を介して操作者の指示を受け付ける。これにより操作者は各種の指示をＣＰＵ１００に対して入力することができる。
【００１５】
表示部１０４は、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１００による処理結果を画像や文字などで表示することができる。なお表示部１０４がタッチ操作を検知可能なタッチパネルである場合、表示部１０４が操作部１０３の一部として機能してもよい。
【００１６】
外部記憶装置１０５は、ハードディスクドライブに代表される大容量情報記憶装置である。外部記憶装置１０５には、ＯＳ（オペレーティングシステム）やＣＰＵ１００に処理を実行させるためのコンピュータプログラムやデータなどが保存されている。また外部記憶装置１０５には、各部の処理によって生成される一時的なデータ（入出力される画像データや画像処理部１０６で使われる閾値マトリクスなど）が保存される。外部記憶装置１０５に保存されているコンピュータプログラムやデータは、ＣＰＵ１００による制御に従って適宜読み取られ、ＲＡＭ１０１に記憶されて、ＣＰＵ１００による処理の対象とされる。
【００１７】
画像処理部１０６は、コンピュータプログラムを実行可能なプロセッサや専用の画像処理回路として実現される。画像処理部１０６は、印刷対象として入力された画像データを画像形成部１０７が出力可能な画像データに変換するため各種画像処理を実行する。例えば、ＣＰＵ１００から画像処理を実行する指示を受け付けると、外部記憶装置１０５に格納されたＮ階調の入力画像データを、Ｍ階調の出力画像データに変換する処理を実行する。
【００１８】
画像形成部１０７は、画像処理部１０６から出力される出力画像データに基づいて、用紙などの記録媒体上に記録材を用いて画像を形成する。本実施形態における画像形成部１０７は、インクをノズルから記録媒体上に吐出することにより画像を形成するインクジェット方式を採用する。なお画像形成部１０７は、帯電した像担持体に露光しトナーで現像し、そのトナー像を記録媒体上に転写することで画像を形成する電子写真方式を採用してもよい。
【００１９】
Ｉ／Ｆ部１０８は、本実施形態における画像形成システムと外部機器とを接続するためのインターフェースとして機能する。さらに、Ｉ／Ｆ部１０８は、赤外線通信や無線ＬＡＮ等を用いて通信装置とデータのやりとりを行うためのインターフェースとしても機能する。上記の各構成要素はいずれもバス１０９に接続され、バス１０９を介して互いにデータの授受を行う。
【００２０】
（画像処理部１０６の構成）
本実施形態における画像処理部１０６について説明する。画像処理部１０６は、入力画像データを入力画像データより階調数が少ないハーフトーン画像データに変換するためのハーフトーン処理を実行する。図２は、第１実施形態における画像処理部１０６の構成を示すブロック図である。本実施形態における画像処理部１０６は、図２に示す構成を有する専用の画像処理回路として実現される。画像処理部１０６は、画素値取得部２０１、分配順決定部２０２、閾値取得部２０３、目標値導出部２０４、補正値導出部２０５、合計出力値導出部２０６、及び出力値決定部２０７を有する。
【００２１】
本実施形態における画像処理部１０６は、入力画像データとして、画素毎に０〜２５５いずれかの値を示す８ビットの画像データを入力する。そして、画像処理部１０６は、１画素当たり８ビットの入力画像データを、画素毎に０か１のいずれかの値を有する１ビット２値のハーフトーン画像データ（出力画像データ）に変換する。ハーフトーン画像データにおいて、画素値（出力値）が０である画素はドットのオフを、画素値が１である画素はドットのオンを表す。このようなハーフトーン画像データは、入力画像データが表す階調数より少ない階調数で疑似的に入力画像データを再現している。なお、以下において、ハーフトーン画像データをドットデータと呼ぶ場合がある。
【００２２】
画素値取得部２０１は、入力画像データにおいて処理対象とする単位領域（以下、処理領域または所定領域と呼ぶ。）に含まれる複数画素の各画素値を取得する。図３は、入力画像データ３００における処理領域を示す図である。本実施形態では、図３における太枠が示す４画素×４画素の領域を処理領域とする。例えば処理領域を領域３０１とした場合、画素値取得部２０１は、領域３０１に含まれる１６画素のそれぞれの画素値を取得する。
【００２３】
閾値取得部２０３は、ディザ処理に使用する閾値群をＲＡＭ１０１または外部記憶装置１０５から取得する。図４は、明細線を含む処理領域と該処理領域に対応する閾値群との一例を示す図である。本実施形態では、図４に示す閾値群４０１がディザ処理に使用されるものとする。閾値群４０１は、ＲＡＭ１０１または外部記憶装置１０５に格納されている閾値マトリクスの一部である。閾値取得部２０３は、画素値取得部２０１によって処理領域の各画素値が読み込まれる度に、図４に示すような閾値群４０１をＲＡＭ１０１等に格納されている閾値マトリクスから取得する。
【００２４】
目標値導出部２０４は、処理領域に含まれる複数画素の画素値と閾値とに基づいて、処理領域における出力値の合計（合計出力値）を決定するための目標値を導出する。前述した通り出力値はドットのオンとオフを１と０で表されるため、処理領域における目標値は、処理領域においてオンとすべきドットの数に相当する。本実施形態では、処理領域の各画素の画素値の平均値と閾値群の各閾値とを比較し、平均値未満となる閾値の数を目標値として導出する。
【００２５】
補正値導出部２０５は、処理領域の各画素の画素値と閾値群の各閾値とに基づいて、処理領域の合計出力値を補正するための補正量（補正値）を導出する。本実施形態では、補正値導出部２０５は、処理領域内の最大画素値と閾値群の最小閾値とを比較し、最大画素値が最小閾値より大きければ補正値として１を設定し、そうでなければ補正値として０を設定する。
【００２６】
合計出力値導出部２０６は、目標値導出部２０４が導出した目標値と、補正値導出部２０５が導出した補正値とに基づいて、処理領域における出力値の合計（合計出力値）を導出する。本実施形態では、合計出力値導出部２０６は、目標値と補正値とを比較し、より大きいほうの値を合計出力値として導出する。
【００２７】
配置優先順決定部２０２は、処理領域の各画素の画素値と閾値群の各閾値とに基づいて、処理領域におけるドットの配置優先順を決定する。本実施形態では、配置優先順決定部２０２は、位置的に対応する画素値と閾値との差分値（ここでは、画素値を閾値で減算して得られる差分値）を、ドットの配置優先順を決定する際の評価値として導出する。そして、配置優先順決定部２０２は、導出した各画素の評価値をソートすることにより、ドットの配置優先順を決定する。入力画像が明細線を含む場合、処理領域４０２に示すように線を構成する有効画素（白画素でない画素）が少なく、画素値が０である白画素が大半を占める。また、明細線を構成する画素は白画素との画素値の差が小さいため、処理領域４０２に示すような領域では、閾値群の閾値がドットの配置優先順に与える影響が大きく、白画素の配置優先順が高くなる可能性がある。白画素にドットを配置してしまうと、鮮鋭性が劣化した画像が生成されてしまうため、ドットの配置優先順は、白画素を除いた有効画素が上位の優先順になることが望ましい。なお、本実施形態では画素値が０である画素を白画素としているが、原稿スキャナで読み取った画像に対する公知の下地処理のように、画素値が所定値以下となる画素を白画素としても良い。その場合、有効画素は、上記所定値を超える画素値の画素となる。
【００２８】
出力値決定部２０７は、配置優先順決定部２０２が決定したドットの配置優先順に基づいて、合計値出力部２０６が導出した合計出力値に達するまで、各画素に出力値として１を割り当てていく。出力値として１が割り当てられなかった画素は、出力値として０が割り当てられたものとして扱われる。これにより、処理領域における各画素の出力値が決定される。
【００２９】
ここで、図４を用いて、目標値導出部２０４、補正値導出部２０５、及び合計出力値導出部２０６の具体的な処理内容について説明する。目標値導出部２０４は、画素値取得部２０１で得られた処理領域４０２の画素値の平均値を算出し、その平均値に基づき目標値を導出する。処理領域４０２の画素値の平均値は（１６＊４＋０＊１２）／１６＝４であり、平均値を閾値群４０１の各閾値と比較すると全ての閾値が平均値以上であるため、目標値導出部２０４は、目標値として０を導出する。次いで、補正値導出部２０５は、処理領域４０２の最大画素値である１６と、閾値群４０１の最小閾値である１５とを比較する。処理領域４０２（領域３０１）では最大画素値が最小閾値を上回るため、補正値導出部２０５は、補正値として１を設定する。最後に、合計出力値導出部２０６は、目標値と補正値とを比較しより大きいほうの値（ここでは補正値（１））が合計出力値として導出される。このとき、目標値の値域は処理領域の画素数によって決まるため、処理領域４０２における目標値の値域は０〜１６となる。一方、補正値導出部２０５で導出される補正値の値域は０か１のいずれかである。そのため、多くの場合目標値がそのまま合計出力値として採用され、補正値は目標値が０である場合に合計出力値の補正に利用されることになる。
【００３０】
画素値の平均値など低周波成分によって処理領域の目標値を決定すると、明細線のような高周波な情報が目標値に反映されにくくなる。一方、閾値マトリクスの閾値と画素値を直接比較する通常のディザ処理では、濃い細線を含む画像については高周波な情報を反映できるが、明細線を含む画像については有効画素の位置と閾値マトリクスの閾値パターンとが干渉し、細線を再現できない場合がある。本実施形態では処理領域の最大画素値が最小閾値より大きければ合計出力値は０になることはない。すなわち、処理領域における画素値が処理領域に対応する閾値群のうち１つでも超えていれば、合計出力値は０にならない。これは処理領域が所定の条件を満たす場合、処理領域におけるドット数の下限値が１以上になることを意味する。よって、明細線の欠落を抑制することが可能となる。
【００３１】
（画像処理部１０６における動作）
図５は、画像処理部１０６の処理を示すフローチャートである。なお、図５に示すフローチャートで示される一連の処理は、ＣＰＵ１００がＲＯＭ１０２に記憶されているプログラムコードをＲＡＭ１０１に展開し実行することにより行われる。あるいは、図５におけるステップの一部または全部の機能をＡＳＩＣや電子回路等のハードウェアで実現してもよい。なお、各処理の説明における記号「Ｓ」は、フローチャートにおけるステップであることを意味する。図６は、図５に示す処理によって得られる処理結果を説明するための図である。
【００３２】
まず、画素値取得部２０１が、ＲＡＭ１０１や外部記憶装置１０５から取得した画像データ（入力画像データ）のうち処理領域の各画素の画素値を取得する（Ｓ５０１）。なお、ここでは説明の簡単のため、図６に示す１６画素×１６画素の画像データ６０１が、入力画像データとして取得されるものとする。なお、画像データ６０１は、図３に示す画像データ３００の一部（領域３０１〜３０４）に対応する。また、処理領域のサイズを４画素×４画素とし、画像データ６０１に対して左上の領域から右上、左下、右下の領域へと順に処理が実行されるものとする。
【００３３】
次いで、閾値取得部２０３が、ＲＡＭ１０１や外部記憶装置１０５から処理領域に対応する閾値群を取得する（Ｓ５０２）。図６に示す閾値マトリクス６０２は、入力画像データ６０１に対して用いられる閾値マトリクスである。よって、ここでは、閾値マトリクス６０２から、処理領域に対応する位置の閾値群が取得される。なお、Ｓ５０１及びＳ５０２の処理は互いに依存しないので、どちらが先に実行されてもよいし、それぞれの処理を並行して実行するようにしてもよい。
【００３４】
次いで、目標値導出部２０４が、Ｓ５０１で取得された画素値と、Ｓ５０２で取得された閾値とに基づいて、処理領域における目標値（処理領域においてドットをオンにするべき画素の合計数の目標値）を導出する（Ｓ５０３）。ここでは、目標値導出部２０４は、処理領域内の全ての画素の平均値を算出し、算出した平均値と閾値群の各閾値とを比較して、平均値未満である閾値の数を目標値として導出する。入力画素データ６０１の左上の領域を処理領域とする場合、その処理領域について画素の平均値を求めると３．７５となる。一方、閾値マトリクス６０２のうち処理領域に対応する閾値群における最小閾値は１５である。よって、処理領域における目標値、すなわち処理領域においてドットをオンにするべき画素の数は０となる。
【００３５】
次いで、補正値導出部２０５が、Ｓ５０１で取得された画素値と、Ｓ５０２で取得された閾値とに基づいて、処理領域における補正値（目標値の補正量）を導出する（Ｓ５０４）。ここでは、補正値導出部２０５は、処理領域内の最大画素値（全画素のうち画素値が最大の値）と最小閾値（閾値群内で閾値が最小の値）を比較し、最大画素値が最小閾値より大きければ補正値を１に設定し、そうでなければ補正値を０に設定する。入力画像データ６０１の場合、最大画素値が６０であるのに対し閾値マトリクス６０２の最小閾値は１５となるため、補正値として１が設定される。
【００３６】
次いで、合計値出力部２０６が、Ｓ５０３で導出された目標値とＳ５０４で導出された補正値に基づいて、処理領域においてドットをオンにするべき画素の数（合計出力値）を決定する（Ｓ５０５）。ここでは目標値と補正値とを比較し、大きいほうの値を合計出力値として採用する。入力画像データ６０１の場合、目標値が０であり補正値が１であるため、合計出力値には１が設定される。なお、Ｓ５０４において補正値は０か１の値をとる。よって、計算の簡略化のため、Ｓ５０３で導出された目標値が０より大きければ、その目標値を合計出力値としてそのまま採用し、目標値が０であれば補正値を合計出力値として採用するようにしてもよい。
【００３７】
次いで、配置優先順決定部２０２が、処理領域においてドットをオンにするべき画素について、ドットをオンにする画素の優先順位を決定する（Ｓ５０６）。つまり、配置優先順決定部２０２は、処理領域においてどの画素から優先的にドットを配置させるかを示す配置優先順を決定する。ここでは、まず、配置優先順決定部２０２は、処理領域の各画素位置の画素値を、対応する画素位置の閾値で減算して、各画素位置の評価値を導出する。本実施形態では、処理領域には１６個の画素が含まれているので、Ｓ５０６において１６画素分の評価値が導出される。図６に示す評価値群６０３は、領域６０１と閾値マトリクス６０２とに基づいて導出される、各画素位置の評価値を表している。なお本実施形態では、画素値が０の画素にドットが配置されないようにするため、画素値が０の画素については、評価値を最小値（＝０−閾値がとりうる最大値）に設定する。なお、図６に示す評価値群６０３では、画素値が０の画素については評価値の記載を省略している。次に、配置優先順決定部２０２は、導出した評価値を値が大きい順にソートし、ソートした結果を配置優先順として決定する。これにより、処理領域内においてドットをオンにするべき画素について、評価値が大きい画素から順にドットが配置される。図６に示す配置優先順６０４は、評価値群６０３に基づいて決定された、入力画像データ６０１におけるドットの配置優先順を表している。
【００３８】
次いで、出力値決定部２０７が、Ｓ５０５で得られた合計出力値の数だけ、Ｓ５０６で得られた配置優先順に従って画素の出力値に１を設定する（Ｓ５０７）。それ以外の画素については、ドットがオフになるように出力値として０が設定される。図６に示す出力結果６０５は、領域６０１の各画素について決定された出力値を表している。
【００３９】
最後に、画像処理部１０６は、全ての処理領域について処理が完了したかどうかを判定する（Ｓ５０８）。完了している場合には（Ｓ５０８のＹＥＳ）、画像処理部１０６は、処理を終了する。完了していない場合には（Ｓ５０８のＮＯ）、画像処理部１０６は、Ｓ５０１の処理に戻って、Ｓ５０１〜Ｓ５０７の処理を繰り返す。なお、Ｓ５０６の処理は、Ｓ５０２で処理領域に含まれる閾値群が取得されれば実行できるため、Ｓ５０３〜Ｓ５０５の処理とＳ５０６との処理は互いに依存しない。よって、Ｓ５０６の処理とＳ５０３〜Ｓ５０５の処理とは、どちらが先に実行されてもよいし、それぞれを並行して実行するようにしてもよい。
【００４０】
本実施形態では、目標値は０〜１６までのいずれかの値である一方、補正値は０か１かである。目標値が１以上である場合は、目標値を補正せず、目標値をそのまま採用する。一方処理領域の目標値が０であり、かつ最大画素値が最小閾値より小さい場合は、目標値０ではなく補正値１が合計出力値として採用される。これは、処理領域の目標値が０であり、かつ最大画素値が最小閾値より小さい場合には、目標値を補正すると決定し、目標値分のドットを追加する補正を実行したことを意味する。また、処理領域の目標値が０であり、最大画素値が最小閾値より小さい場合は、補正値０が合計出力値として採用される。これは、処理領域の目標値が０であり、最大画素値が最小閾値より小さい場合は、目標値を補正しないと決定したことを意味する。
【００４１】
以上の通り本実施形態では、処理領域においてドット数が０になる場合、画素値に応じてドットを１つ追加することで明細線の欠落を抑制することができる。特に処理領域において最大画素値が最小閾値よりも大きい場合、処理領域における画素値と対応する閾値群との位相が合っていれば１ドット出力されることになる。従って、ドットが出力される可能性のあった領域に対してのみ、１ドット追加する補正を行うことで、適切に明細線を強調することができる。
【００４２】
なお、本実施形態では、上述したとおり、目標値と補正値とを比較しより大きいほうの値を合計出力値として出力しているが、目標値の値域は０〜１６であり、補正値の値域は０か１であるため、目標値が０である場合のみ補正値が合計出力値に反映される。よって、目標値が０となる場合のみ補正値を導出するようにしてもよい。つまり、Ｓ５０３で導出された目標値が０である場合にのみ、Ｓ５０４の補正値導出部２０５の処理を行うようにしてもよい。このように、目標値が基準ドット数（ここでは１）に満たない場合にのみＳ５０４の処理を行うことにより、画像処理部１０６の処理を高速化することができる。なお、基準ドット数は１に限定されず、処理領域のサイズに応じて変更するようにしてもよい。
【００４３】
なお、本実施形態の要点は合計出力値を決定する際に補正処理を加える点である。したがって、画像処理部１０６の構成は図２に示す構成に限られず、例えば、所定の領域内の出力値の合計が所定値以下である場合にドットを追加するような構成、すなわち合計出力値導出部２０６の後段に補正処理を加える構成であってもよい。また、本実施形態では、処理領域内の最大画素値と最小閾値を補正値の導出に用いた。その他の代表値を実施形態に適用することもできる。例えば、最大画素値の代わりに処理領域における各画素の画素値の合計値や中央値を用いても良い。例えば合計値を使って処理領域の最大画素値が最小閾値以下となる明細線を含む場合にドットを追加する補正値を導出することで、さらに明度の高い領域において明細線の欠落を抑制することが可能となる。処理領域における有効画素の画素値の平均値や中央値を用いても良い。あるいは、有効画素数に応じて、処理領域の画素値の平均値をＮ倍した値を用いるようにしても良い。例えば、有効画素数が３であるときは平均値を１．３倍した値を、有効画素数が２であるときは平均値を２倍した値を、有効画素数が１であるときは平均値を４倍した値を、その他のときは平均値を１倍した値を用いるようにしても良い。あるいは、処理領域内の画素値の合計を用いても良い。また、本実施形態では、補正値の導出に閾値群における最小閾値を用いたが、これに限られず、処理領域内の白画素に対応する閾値のうちの最小閾値を用いても良い。さらに、本実施形態では、画素値が０である画素にドットが配置されないようにしたが、画素値が所定値以下の画素にドットが配置されないようにしても良い。
【００４４】
＜第２実施形態＞ 
第１実施形態では、補正値導出部２０５における補正値の導出方法として処理領域内の最大画素値と、処理領域に対応する閾値群の最小閾値とを比較し、その比較結果に基づき補正値を導出する方法について説明した。補正値の導出方法として、処理領域内の有効画素数などの統計値の条件による制御など他の方法も適用可能である。そこで、本実施形態では、処理領域内の有効画素数に応じて最大画素値に係数を乗算して、ドットの発生確率を制御する方法について説明する。なお、第１実施形態と同様の構成については同じ符号を付し、詳細な説明を省略する。
【００４５】
図７は、第２実施形態における画像処理部１０６の構成を示すブロック図である。本実施形態における画像処理部１０６は、第１実施形態の構成に加えて、有効画素数導出部２０８を有する。また、補正値導出部２０５が、第１実施形態と異なる処理を実行する。
【００４６】
有効画素数導出部２０８は、画素値取得部２０１が取得した処理領域の各画素値から、画素値が０でない画素を有効画素として選択し、選択した有効画素の数（以下、有効画素数と呼ぶ。）を導出する。有効画素数導出部２０８は、導出した有効画素数を補正値導出部２０５に出力する。
【００４７】
補正値導出部２０５は、画素値取得部２０１が取得した処理領域の各画素値と、閾値取得部２０３が取得した閾値群と、有効画素数導出部２０８が導出した有効画素数とを入力とし、有効画素数に応じて異なる処理を実行する。有効画素数が１以外である場合、補正値導出部２０５は、第１実施形態と同様に処理領域内の最大画素値と閾値群の最小閾値とを比較し、最大画素値が最小閾値より大きければ補正値として１を設定し、そうでなければ０を設定する。一方、有効画素数が１である場合、補正値導出部２０５は、係数αを乗算した最大画素値と最小閾値とを比較し、係数を乗算した最大画素値が最小閾値より大きければ補正値として１を設定し、そうでなければ補正値として０を設定する。なお、本実施形態ではα＝０．５とする。このように本実施形態では、有効画素の画素値に係数を乗算して、補正値が設定される確率を調整してドットの発生確率を制御することで、ドットの分散性を向上させる。
【００４８】
ここで、図８を用いて、ドットの分散性について説明する。一般にディザ処理をする際にドットの分散性が高くなるように、ブルーノイズ特性を有する閾値マトリクスを使用することがある。ブルーノイズ特性を考慮した閾値マトリクスを使用することで、処理領域より広い範囲においてドットの分散性を向上させることができる。それにより、処理領域内だけでなく隣接する処理領域との境界においても、ドットが連続する確率を低下させることが可能となる。一方で、配置優先順決定部２０２では有効画素が存在する画素位置を対象としてドットの配置優先順を設定するため、有効画素数が１である処理領域が存在する場合に閾値マトリクスのブルーノイズ特性が考慮されなくなる可能性がある。有効画素数が１である処理領域とは、例えば入力画像データ８０１に示されるように、明細線が領域の隅をかすめるような処理領域（ここでは、右上の処理領域）である。なおここでは、閾値取得部２０３により閾値群８０２が取得されているものとする。そのような処理領域に対して配置優先順決定部２０２により配置優先順を決定した場合、出力結果８０３に示されるように、ドットが領域の角（図における丸印を付した画素）に配置され、そのドットと、隣接する処理領域のドットとが連続する可能性が高くなる。よって、有効画素数が１である処理領域が存在すると、ドットの分散性が低くなりブルーノイズ特性が得られなくなる可能性があった。そして、そのような場合、明細線の一部が濃くなるなどして明細線の見えが悪くなる可能性があった。
【００４９】
そこで、本実施形態の補正値導出部２０５は、入力された有効画素数が１である場合、処理領域内の最大画素値にα＝０．５を乗算した値と最小閾値とを比較することで補正値を決定する。そのように、最大画素値に係数を乗算した値と最小閾値とを比較することにより、有効画素数が１である処理領域に補正値として１が設定される確率を低く設定することができる。つまり隣接する処理領域のドットと連続する確率を低く設定することができ、ドットの分散性を向上させることが可能となる。出力結果８０４は、処理領域の最大画素値６０にα＝０．５を乗算した値（＝３０）と最小閾値とを比較して補正値を決定した場合における出力結果である。出力結果８０４では、右上の処理領域における画素値がすべて０になっている。つまり、出力結果８０３で生じていたドットの連続性が解消されている。このように、本実施形態によれば、有効画素数が１である処理領域が存在する場合でも、出力結果８０４に示されるように、ドットの分散性を向上させることが可能となる。
【００５０】
なお、第２実施形態では有効画素数に応じて最大画素値に係数を乗算する構成を取ったが、有効画素の位置情報を使用しても良い。上述したように、処理領域における四つ角に位置する画素にドットが配置されると、ドットが連続する確率が高くなる。よって、四つ角の画素の画素値に上記係数を乗じたのちに、第１実施形態と同様の処理を行うようにしてもよい。そのような構成によっても、ドットの連続性を抑制することができ、ドットの分配性を向上させることが可能となる。
【００５１】
また、本実施形態では、入力された有効画素数が１である場合に、処理領域内の最大画素値に係数を乗算する例について説明した。しかし、有効画素数が１以外の所定数以下（例えば、２）の場合でも、閾値マトリクスのブルーノイズ特性が考慮されなくなる可能性がある場合には、処理領域内の最大画素値に係数を乗算する処理を行うようにしてもよい。
【００５２】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５３】
２０２  配置優先順決定部
２０４  目標値導出部
２０５  補正値導出部
２０６  合計出力値導出部
２０７  出力値決定部
【図１】
2020102766.tif 000003
【図２】
2020102766.tif 000004
【図３】
2020102766.tif 000005
【図４】
2020102766.tif 000006
【図５】
2020102766.tif 000007
【図６】
2020102766.tif 000008
【図７】
2020102766.tif 000009
【図８】
2020102766.tif 000010