(57)【特許請求の範囲】
【請求項１】
入力画像データに対して複数の閾値マトリクスを用いてハーフトーン処理する画像処理装置であって、
前記入力画像データにおける注目画素を表す入力値に応じた閾値マトリクスを用いて、前記入力値と前記閾値マトリクスにおける閾値とを比較することにより前記注目画素の出力値を決定する決定手段を有し、
前記複数の閾値マトリクスはそれぞれ、異なる入力値において用いられ、前記入力画像データよりも小さいサイズであり、
前記複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスは、対応する階調を表すドットパターンに応じてサイズが決定されることを特徴とする画像処理装置。
【請求項２】
さらに、前記入力値に応じて、前記複数の閾値マトリクスから使用する閾値マトリクスを設定する設定手段と、
前記決定手段は、前記設定手段によって設定された閾値マトリクスを用いることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記注目画素の入力値と前記複数の閾値マトリクスを用いて量子化した結果から、前記入力値に応じて、前記注目画素の出力値を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスは、対応する階調を表すドットパターンを繰り返し並べてもテクスチャを発生しにくいように、サイズを決定されることを特徴とする請求項１乃至３の何れか一項に記載の画像処理装置。
【請求項５】
前記複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスは、対応する階調によって決まるドット間距離に応じてサイズが決定されることを特徴とする請求項１乃至３の何れか一項に記載の画像処理装置。
【請求項６】
前記複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスのサイズは、一辺の長さまたは対角線の長さが、該閾値マトリクスに対応する入力値の一つから決まるドット間距離の倍数に略一致するよう定められていることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記閾値マトリクスは分散型ドットパターンを生成するための閾値マトリクスであることを特徴とする請求項１乃至６の何れか一項に記載の画像処理装置。
【請求項８】
入力画像データを、ドットパターンを表すハーフトーン画像データに変換する画像処理装置であって、
前記入力画像データが表す階調それぞれに対応するドットパターンを保持する保持手段と、
前記保持手段が保持するドットパターンのうち、前記入力画像データにおける注目画素を表す階調に対応するドットパターンを参照して、前記注目画素の出力値を決定する決定手段を有し、
前記複数のドットパターンはそれぞれ、前記入力画像データよりも小さく、
前記複数のドットパターンのうち少なくとも１つのドットパターンは、対応する階調に応じてサイズが決定されることを特徴とする画像処理装置。
【請求項９】
前記ドットパターンは分散型であることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記複数のドットパターンのうち少なくとも１つのドットパターンは、前記ドットパターンを繰り返し並べてもテクスチャを発生しにくいように、サイズが決定されることを特徴とする請求項８または９の何れか一項に記載の画像処理装置。
【請求項１１】
前記複数のドットパターンのうち少なくとも１つのドットパターンは、対応する階調によって決まるドット間距離に応じてサイズが決定されることを特徴とする請求項８乃至１０の何れか一項に記載の画像処置装置。
【請求項１２】
前記複数のドットパターンのうち少なくとも１つのドットパターンは、一辺の長さまたは対角線の長さが、対応する階調によって決まるドット間距離の倍数に略一致するよう定められていることを特徴とする請求項８乃至１０の何れか一項に記載の画像処理装置。
【請求項１３】
前記複数の閾値マトリクスまたは前記複数のドットパターンは、相似であることを特徴とする請求項１、２、４、５、６または７の何れか一項に記載の画像処理装置。
【請求項１４】
Ｍ値からなる入力画像データを、分散型のドットパターンを表すＮ値（Ｍ＞Ｎ）のハーフトーン画像データに変換する画像処理装置であって、
前記入力画像データに対してハーフトーン処理するハーフトーン処理手段を有し、
一様な階調ｐ、ｑ（ｐ≠ｑ）を表す入力画像データそれぞれに前記ハーフトーン処理を施して得られるハーフトーン画像データについて、
前記階調ｐに対応するハーフトーン画像データは、前記入力画像データよりも小さい第一のサイズの領域において前記階調ｐを表すドットパターンの繰り返しによって表され、前記階調ｑに対応するハーフトーン画像データは、前記入力画像データよりも小さく前記第一のサイズとは異なる第二のサイズの領域において前記階調ｑを表すドットパターンの繰り返しによって表され、
前記第一のサイズは前記階調ｐに応じて決められ、前記第二のサイズは前記階調ｑに応じて決められることを特徴とする画像処理装置。
【請求項１５】
コンピュータに読み込み込ませ実行させることで、前記コンピュータを請求項１乃至１４の何れか一項に記載された画像処理装置として機能させることを特徴とするコンピュータプログラム。
【請求項１６】
決定手段を有し、入力画像データに対して複数の閾値マトリクスを用いてハーフトーン処理する画像処理装置の制御方法であって、
前記決定手段は、前記入力画像データにおける注目画素を表す入力値に応じた閾値マトリクスを用いて、前記入力値と前記閾値マトリクスにおける閾値とを比較することにより前記注目画素の出力値を決定し、
前記複数の閾値マトリクスはそれぞれ、異なる入力値において用いられ、前記入力画像データよりも小さいサイズであり、
前記複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスは、対応する階調を表すドットパターンに応じてサイズが決定されることを特徴とする制御方法。
【請求項１７】
保持手段と決定手段を有し、入力画像データを、ドットパターンを表すハーフトーン画像データに変換する画像処理装置の制御方法であって、
前記保持手段は、前記入力画像データが表す階調それぞれに対応するドットパターンを保持し、
前記決定手段は、前記保持手段が保持するドットパターンのうち、前記入力画像データにおける注目画素を表す階調に対応するドットパターンを参照して、前記注目画素の出力値を決定し、
前記複数のドットパターンはそれぞれ、前記入力画像データよりも小さく、
前記複数のドットパターンのうち少なくとも１つのドットパターンは、対応する階調に応じてサイズが決定されることを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに基づいて分散性の高いドットパターンを生成するためのハーフトーン処理に関する。
【背景技術】
【０００２】
パソコンで処理した画像や、デジタルカメラで撮影した画像などを出力する装置として、記録媒体上にドットを用いて画像を形成する画像形成装置がよく使われている。このような画像形成装置の出力可能な階調値は一般に、パソコン等で扱う画像データの階調数に比べて少ない。そこで上記画像データに対してハーフトーン処理を行い、画像形成装置が出力可能な階調数にする必要がある。ハーフトーン処理の一つに、ディザ法が知られている。ディザ法とは、入力画像データを表す画素値と、閾値マトリクスの閾値とを画素ごとに比較することによって、各画素の出力値を決定する方法である。このような閾値マトリクスを用いたディザ法は、十分な分散性が得られないという課題がある。これは階調（明るさ）によってより好適なドット配置が異なるにも関わらず、ディザ法では他の階調のドット配置に影響されるためである。
【０００３】
そこで特許文献１には、あらかじめ全階調分の最適なドットパターンを保持しておく方法が開示されている。入力画像データの階調に応じて、ドットパターンを選択する。そして、選択したドットパターンにおける同じ画素位置がＯＮドットかＯＦＦドットかを参照し、画素の出力を決定する。この方法では、全階調のドットパターンをそれぞれ別個に記憶するから、他の階調でのドット配置に制限を受けることなく、各階調ごとにより分散性の高いドット配置を決定することができる。
【０００４】
一方、特許文献１には、一部の連続階調区間に対して分散型の閾値マトリクスを使ってディザ法をする例も開示されている。この方法によれば、上記の全階調分のドットパターンを保持しておく方法よりも記憶容量を削減できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−４６７７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載された方法において、入力画像データに対して、保持したドットパターンや閾値マトリクスを繰り返しタイル状に対応づけて用いる。そのため、ドットパターンや閾値マトリクスにおける不均一な模様が繰り返しによってテクスチャ（模様）として発生し、画質が低下するという課題があった。
そこで本発明では、画像データをドットパターンに変換するハーフトーン処理において、ドットパターンの繰り返しによって発生するテクスチャを低減し、好適な分散型ドットパターンを生成することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明は、入力画像データに対して複数の閾値マトリクスを用いてハーフトーン処理する画像処理装置であって、入力画像データにおける注目画素を表す入力値に応じた閾値マトリクスを用いて、前記入力値と前記閾値マトリクスにおける閾値とを比較することにより前記注目画素の出力値を決定する決定手段を有し、複数の閾値マトリクスはそれぞれ、異なる入力値において用いられ、前記入力画像データよりも小さいサイズであり、複数の閾値マトリクスのうち少なくとも１つの閾値マトリクスは、対応する階調を表すドットパターンに応じてサイズが決定されることを特徴とする。
【発明の効果】
【０００８】
本発明は、画像データをドットパターンに変換するハーフトーン処理において、ドットパターンの繰り返しによって発生するテクスチャを低減し、分散性の高いドットパターンを生成することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置および画像形成装置の構成を示す図
【図２】ハーフトーン処理部１０６の詳細な構成を示すブロック図
【図３】ハーフトーン処理部１０６の詳細な構成を示すブロック図
【図４】ハーフトーン処理部２０６における一連の処理のフローチャート
【図５】本発明を適用するのに好適な閾値マトリクスについての説明図
【図６】ドット分散型のドットパターンにおいて好適な周波数特性を示す図
【図７】ドット配置が領域のサイズによって影響を受けることの説明図
【図８】１つのあるサイズの閾値マトリクスに格納するのに好適な階調についての説明図
【図９】複数の閾値マスクの作成方法を示したフローチャート
【図１０】本発明を適用するのに好適なドットパターンについての説明図
【図１１】ハーフトーン処理部１０６の詳細な構成を示すブロック図
【図１２】その他の実施例におけるドットパターンの周波数特性を示す図
【図１３】ドットパターンにおいて好適なドット配置を説明する模式図
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して、本発明を好適な実施例に従って詳細に説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【００１１】
＜実施例１＞
図１は、実施例１に適用可能な画像処理装置および画像形成装置の構成を示したブロック図である。図１において、画像処理装置１０１と画像形成装置１０２はインタフェース又は回路によって接続されている。画像処理装置１０１は例えば一般的なパーソナルコンピュータにインストールされたプリンタドライバである。その場合、以下に説明する画像処理装置１０１内の各部は、コンピュータが所定のプログラムを実行することにより実現される。ただし、画像形成装置１０２が画像処理装置１０１を含む構成としてもよい。
画像処理装置１０１は、入力端子１０３から入力された印刷対象のカラーの画像データ（以下、入力カラー画像データ）を入力画像バッファ１０４に格納する。入力カラー画像データは、レッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の３つの色成分により構成されている。色分解処理部１０５は、格納された入力画像データを画像形成装置１０２が備える色材色に対応した画像データへ分解する。この色分解処理には、色分解用ルックアップテーブル（不図示）を参照する。本実施例では、ブラック（Ｋ）単色を例に説明する。カラー画像を記録媒体上に形成する場合は、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）のように複数色に色分解処理すればよい。本実施例では、色分解後データを０〜２５５の２５６階調を表す８ビットとして扱うが、それ以上の階調数への変換を行っても構わない。
【００１２】
ハーフトーン処理部１０６は、色分解処理部１０５から得られる色分解後データに対して、複数の閾値マトリクスを用いてハーフトーン処理を行う。なお閾値マトリクスはそれぞれ、ドット分散型である。複数の閾値マトリクスのうち使用する閾値マトリクスは、画素を表す入力値（階調）に応じて決定される。ここでは、８ビットの色分解後データを１ビット（２値）のデータに変換する。変換の詳細は後述する。なお、カラー画像の場合は、色ごとに用意された複数の閾値マトリクスを用いて、各色を個別に処理する。ハーフトーン処理によって得られるハーフトーン画像データは、画像形成装置１０２が形成可能なドットパターンを表す。ハーフトーン処理部１０６は、ハーフトーン画像データをハーフトーン画像バッファ１０７に出力する。格納されたハーフトーン画像データは、出力端子１０８より画像形成装置１０２へ出力される。
【００１３】
画像形成装置１０２は、画像処理装置１０１から入力端子１０９を通じて受信したハーフトーン画像データに基づいて、記録ヘッド１１１を記録媒体に対して相対的に縦横に移動することにより、記録媒体上に画像を形成する。ここでは、記録ヘッド１１１はインクジェット方式のものであり、一つ以上の記録素子（ノズル）を有する。ヘッド駆動回路１１０は、ハーフトーン画像データに基づいて、記録ヘッド１１１を制御するための駆動信号を生成する。記録ヘッド１１１は駆動信号に基づき、実際に記録媒体上へ各インクドットの記録を行う。
【００１４】
以下、本実施例におけるハーフトーン処理部１０６を詳細に説明する。図２は、ハーフトーン処理部の詳細な構成を示すブロック図である。ハーフトーン処理部１０６は、色分解処理部１０５から出力された２５６階調の色分解後データを２値（１ｂｉｔ）のデータに変換する。具体的には、注目画素２０１を表す入力値を、対応する閾値マトリクスにおける閾値と比較し、出力値を決定する。ハーフトーン処理部１０６は、メモリ２０３、閾値マトリクス選択器２０５、比較器２０６を有する。メモリ２０３上には、互いに異なる複数の閾値マトリクス２０４（Ｍ１、Ｍ２、…、ＭＮ）を保持している。Ｎは２以上の整数である。また閾値マトリクス選択器２０５は画素ごとに、入力値に応じて、複数の閾値マトリクス２０４から使用する閾値マトリクスを１つ決定する。比較器２０６は、閾値マトリクス選択器２０５によって選ばれた閾値マトリクスにおいて注目画素に対応する閾値と注目画素の画素値を比較し、出力値を決定する。
【００１５】
図３は、ハーフトーン処理部１０６における一連の処理のフローチャートを示す。以下、本実施例におけるハーフトーン処理方法について説明する。
【００１６】
ステップＳ４０２において画像処理装置１０１は、初期化処理として、あらかじめ用意されたＮ枚の閾値マトリクスを読み出す。次にステップＳ４０３において、ハーフトーン処理部１０６は、注目画素（ｘ，ｙ）を表す画素値ｇ（ｘ，ｙ）を読み出し、入力値を表す変数（ｉｎ）として記憶する。
【００１７】
ステップＳ４０４において閾値マトリクス選択器２０５は、入力値ｉｎに応じて、メモリ上に保持された複数の閾値マトリクス（Ｍ１〜ＭＮ）のうち、比較器２０６が用いる閾値マトリクスを決定する。ここでは、あらかじめ入力値ｉｎと使用する閾値マトリクスとの対応を決めておき、テーブルとして保持しておく。閾値マトリクス選択器２０５は、テーブルを参照することで閾値マトリクスを決定することができる。入力値ｉｎと閾値マトリクスの対応については、さらに詳細を後述する。閾値マトリクス選択器２０５によって選択された閾値マトリクスをＭｋとする。
【００１８】
ステップＳ４０５において比較器２０６は、閾値マトリクス選択器２０５によって選択された閾値マトリクスＭｋにおいて、注目画素の位置（ｘ，ｙ）に対応する位置を読み出す。ここで閾値マトリクスにおいて注目画素に対応する位置の読み出しは、従来のディザ法と同様の方法を用いる。
【００１９】
閾値マトリクスにおける注目画素に対応する位置（ｉ，ｊ）は、閾値マトリクスＭｋの幅をＷｋ、高さをＨｋとしたとき、
ｉ  ＝  ｘ  ％  Ｗｋ
ｊ  ＝  ｙ  ％  Ｈｋ
によって決める。％は剰余を表す。
【００２０】
比較器２０６は、閾値マトリクスＭｋにおける位置（ｉ，ｊ）に格納された閾値を、変数ｔｈに格納する。
【００２１】
ステップＳ４０６において、比較器２０６は、入力値ｉｎと閾値ｔｈを比較する。入力値ｉｎの方が閾値ｔｈ以下であればステップＳ４０７に進み、大きければステップＳ４０８に進む。ステップＳ４０７において比較器３０７は、注目画素の出力値ｏｕｔを０として格納する。一方ステップＳ４０８において比較器３０７は、注目画素の出力値ｏｕｔを１として格納する。つまりここでは、入力値ｉｎが閾値ｔｈ以下のときに０（黒）を、そうでないときに１（白）を出力する。
【００２２】
ステップＳ４０９においてハーフトーン処理部２０６は、出力画像の位置（ｘ，ｙ）に出力値ｏｕｔを出力する。
【００２３】
以上の処理を入力画像における全ての画素に対して行い（ステップＳ４１０）、全画素に対して処理が終われば、ハーフトーン処理が終了する。（ステップＳ４１１）
ここで、上記のハーフトーン処理に用いられる閾値マトリクスについて説明する。まず、入力値（階調）と使用される閾値マトリクスとの対応について詳細に説明する。図５（ａ）は一般的なディザ法を示した図である。閾値マトリクス５０２は、幅Ｗ＝４、高さＨ＝４であり、各画素に「０〜１５」の閾値が一つずつ格納されている。ここでは、閾値よりも入力された画素値が小さければＯＮドット（黒）、大きければＯＦＦドット（白）を出力する。従って、この閾値マトリクス５０２を使った場合、１６階調のドットパターンを得られる。入力画像５０１は単一の画素値１２を持ち、閾値マトリクス５０２と同じ幅Ｗ＝４、高さＨ＝４の画像である。入力画像５０１に対して閾値マトリクス５０２を用いて出力値を決定すると、出力画像５０３が得られる。一方、入力画像５０１よりもわずかに明るい単一の画素値１３を持つ入力画像５０４は、閾値マトリクス５０２を用いて出力値を決定すると、出力画像６０６が得られる。このとき出力画像５０３のオンドット（黒）はより明るい階調を表す出力画像６０６のオンドットを全て含む。このように従来のディザ法では、明るい階調でオンドット（黒）になったドットは、それより暗い階調でオフドット（白）になることはない。
【００２４】
ところが、各階調における最適なドットパターンは異なるため、明るい階調におけるドットが固定されると、最適なドットパターンを設定できない階調が発生する。図１３には階調８を表すドットパターン１３０１を示し、図１３（ｂ）（ｃ）はそれぞれ階調９を表すドットパターン１３０２、１３０３を示す。ドットパターン１３０１は粒状性がよい。階調９のドット数は、階調８のドットパターンにおけるドット数よりも１つ多いとする。ドットパターン１３０２のドットは、ドットパターン１３０１における全てのドットを含んでいる。つまり、ドットパターン１３０２は、ドットパターン１３０１に１つのドットを追加して得られるドット配置である。しかしながらドットパターン１３０２は、局所的にドットの密度が大きく不均一になり、粒状性がよくない。一方ドットパターン１３０３は、粒状性が良いが、ドットパターン１３０１におけるドットを全ては含まない。つまり、階調８のドットを残したまま、粒状性のよい階調９のドットパターンを実現することはできないということがわかる。
【００２５】
このように、閾値マトリクスを使ったディザ法では、明るい階調でＯＮドット（黒画素）になったドットは、それより暗い階調でＯＦＦ（白画素）になることはない。そのため、図１３における階調８と階調９は、共通の閾値マトリクスを用いてそれぞれ分散性の高いドットパターンを得ることはできない。ドットの多いドットパターンが、ドットの少ないドットパターンにおける全てのドットを含む場合、あるいはそれに近いドット配置を持つ場合でも、それぞれ分散性が高い階調同士をここでは「相性が良い」と表現する。本実施例では、各階調を十分分散性が高いドットパターンにするため、できるだけ互いに相性が良い階調を共通の閾値マトリクスに対応させる。
【００２６】
次に、各階調を表すドットパターンにとって、好適な閾値マトリクスのサイズがあることについて説明する。階調値に対して定められる周波数ｐｒｉｎｃｉｐａｌ  ｆｒｅｑｕｅｎｃｙ（＝ｆｇ）は式（１）ように定義される。なお、周波数ｆｇは正方格子における値である。
【００２７】
【数１】
0005950694.tif 000002
【００２８】
ただし、階調ｇは０〜１に正規化されているものとし、Ｒは１画素間の距離である。また、周波数ｆｇは階調ｇにおけるより少数のドット（すなわち明るい階調の場合は黒ドット、暗い階調の場合は白ドット）の周波数である。分散性が高いドットパターンは、この周波数ｆｇ付近にピークをもち、周波数ｆｇより高域の周波数成分のみをもつことが好ましいとされる。例えば、図６が示す周波数特性を示すドットパターンは、分散性が高いと言える。
【００２９】
ここで周波数ｆｇの逆数を、ｐｒｉｎｃｉｐａｌ  ｗａｖｅｌｅｎｇｔｈ（＝ｄｇ）と呼ぶ。実際のドットパターンでは、各ドットは実際には位置に揺らぎがあり完全に規則的ではないが、階調ｇを表すドットパターンでは、ドット同士がほぼ距離ｄｇほど離れて配置されていることが分散性にとって好ましいと言える。このドットパターンが表現する階調ｇにおいて、好適なドット間距離ｄｇは不変である。
【００３０】
図７は、いずれも階調ｇを表すドットパターンを示している。ドットパターン７０１は、一辺がＬの正方形の領域において階調ｇを表す。サイズＬ×Ｌにおいて、階調ｇはドット数が９で表される。この階調ｇのドット間距離ｄｇがＬ／３であるとすると、サイズＬ×Ｌにおいては、各ドットはわずかな位置の揺らぎを持ちつつもおよそドット間距離ｄｇ＝Ｌ／３の間隔で均等に配置することができる。図７（ａ）のようなドットパターンは上下左右に繰り返し並べても、見た目に特徴的なテクスチャを知覚させにくい。
【００３１】
一方、ドットパターン７０２および７０３は、ドットパターン７０１と同じ階調ｇを一辺が８Ｌ／９の正方形の領域において表している。領域の面積比から、サイズ８Ｌ／９×８Ｌ／９の正方形の領域ではドット数が、サイズＬ×Ｌにおけるドット数の６４／８１であれば同じ階調を表すことができる。すなわちドット数９×６４／８１＝７．１１１…より、サイズ８Ｌ／９×８Ｌ／９においてドットパターン７０１と同じ階調を表すドット数は７である。前述の通り、領域のサイズに関わらず好適なドット間距離ｄｇは表す階調は一定であり、ドットパターン７０２、７０３においても、ドットパターン７０１の場合と同様に、ドット間距離ｄｇ＝Ｌ／３であることが望ましい。したがって、一辺が８Ｌ／９の領域中にドット間の距離がほぼｄｇとなるようにドットを配置することにより、分散性の高いドットパターンを得られる。そこでドットパターン７０２は、ドットパターン７０１と同様にドット間距離ｄｇを保ちつつほぼ周期的にドットを配置している。また、ドットパター７０３は、領域全体でドット間距離ｄｇを保ちながらランダムにドットを配置している。ドットパターン７０２、７０３いずれも、サイズ８Ｌ／９×８Ｌ／９の領域においてはドット間距離ｄｇを保っている。しかしながら、このドットパターンを上下左右にタイル状に繰り返して並べると、ドット間距離ｄｇを保てず不均一なドットの配置が生じ、繰り返しによってテクスチャとして知覚されてしまう。つまり、あるサイズの領域において分散性が高いドットパターンを、繰り返し並べても分散性が高いドットパターンを保つためには、より好適なサイズがある。従って閾値マトリクスを繰り返し対応させてハーフトーン処理する場合、各階調に応じて閾値マトリクスのサイズを各階調に応じて決めることが望ましい。
【００３２】
以上のように、入力画像データに対して閾値マトリクスを用いてハーフトーン処理する際に、全ての画素値（階調）に共通の閾値マトリクスを用いて出力値を決定すると、各階調において分散性の高いドットパターンを生成することができない。また、各階調を表すドットパターンについて、繰り返し並べても分散性を保つためには、適切な繰り返しサイズがある。そこで本実施例では、複数の閾値マトリクスを有し、入力画像データを構成する階調のうち、できるだけ相性のいい階調同士に対して共通の閾値マトリクスを用いるようにする。さらに各閾値マトリクスのサイズをそれぞれが対応する階調に合わせて決定する。従って本実施例におけるハーフトーン処理部１０６は、互いにサイズの異なる閾値マトリクスを複数有することになる。
【００３３】
図８は、共通の閾値マトリクスを用いる階調群の一例を示している。図８が示すドットパターンはいずれも、ドット間距離ｄｇを保つようにドットが配置されている。また、サイズＬ×Ｌの領域をタイル状に並べても、繰り返しによるテクスチャが視認されにくい。さらに、ドットパターン８０２、８０３はより明るい（ドット数が少ない）階調のドット全て含むようにドットが配置されている。
【００３４】
図７（ａ）にも示したように、格子点上にドットを配置する場合、正方形の領域の一辺Ｌがドット間距離ｄｇの倍数に近い値になっていれば、ある階調を表す各ドットはわずかな位置の揺らぎを持ちつつもおよそドット間距離ｄｇを保つように配置することができる。または、対角線√２Ｌがドット間距離ｄｇの倍数に近い値になっていれば、対角線上にドットを配置することができる。そこでサイズＬ×Ｌにおいて、Ｌ≒ｎ×ｄｇまたは√２Ｌ≒ｎ×ｄｇを満たすＬを一辺とする正方形を閾値マトリクスのサイズとして設定している（ｎは任意の自然数）。
【００３５】
ここで、複数の閾値マトリクスの作成方法を説明する。図９は、本実施例において用いられる複数の閾値マトリクスを作成するフローチャートを示す。ステップＳ９０２において、作成する閾値マトリクスの数Ｎを決定する。閾値マトリクスの数Ｎは大きいほど、対応する階調は少なくなるためドット配置の自由度が高まる。また、対応する階調が少ないほど、より好適なサイズを選ぶことができる。しかしながら、閾値マトリクスの数Ｎが大きいほど必要な記憶容量も大きくなる。そのため、実施の条件に応じて使用者が適宜選べばよい（例えばＮ＝３）。
【００３６】
次にステップＳ９０３で、階調ごとに分散性の高いドット配置に必要なドット間距離ｄｇを計算し、共通の閾値マトリクスを用いる階調の組み合わせ（階調群）を決定する。ある閾値マトリクスに対応する（つまり、閾値マトリクスが担当する）階調群は、できるだけ互いに相性がよい階調を組み合わせる。「相性がよい」とは前述の通り、より明るい（ドット数が少ない）階調を表すドットを残したまま分散性の高いドットパターンを実現できる階調同士を言う。さらに階調群に応じて、閾値マトリクスのサイズを決定する。ここでは、Ｌ≒ｎ×ｄｇまたは√２Ｌ≒ｎ×ｄｇを満たすＬを一辺とする正方形を閾値マトリクスのサイズとして決定する。
【００３７】
次にステップＳ９０４〜ステップＳ９１２を繰り返し、各閾値マトリクスに格納する閾値を決定し、一つずつ閾値マトリクスを作成する。以下、閾値マトリクスＭ１を作るフローを例に説明する。他の閾値マトリクスも同様に作成することができる。
【００３８】
ステップＳ９０５において、まず閾値マトリクスＭ１を表すマトリクスを、どの階調に対してもドットを出力しない閾値を格納することにより初期化をする。次に、ステップＳ９０６において、閾値マトリクスＭ１に対応する階調群のうち、最も明るい階調を選択する。そして閾値マトリクスと同じ大きさの入力画像において、選択した階調を表現するのに必要なドット数を配置したドットパターンを決定する。この時、ドットパターンは不均一な模様を形成せず、分散性の高いドット配置であることが望ましい。ある階調を表す分散性の高いドットパターンを決定する方法は、公知の手法を用いればよい。このドットパターンにおけるドットの位置に対応する閾値マトリクスＭ１の位置に、このドットパターンが表す階調に対する閾値を記録する。
【００３９】
ステップＳ９０７において、閾値マトリクスＭ１に対応する階調群のうち次に明るい階調を選択する。すでに配置が決定したドットは全て保持したままという条件下、選択した階調に必要なドット数を持つドットパターンを決定する。つまり、閾値マトリクスＭ１が対応する階調群のうち、選択した階調よりも明るい階調を表すドットパターンに対してドットを新たに追加することにより、選択した階調を表すドットパターンを決める。ここでもステップＳ９０６と同様に不均一な模様を形成せず分散性の高いドット配置であることが望ましい。本実施例では、閾値マトリクスの領域である正方形において、格子点上あるいは対角線上を中心にドットを配置するのがよい。閾値マトリクスＭ１が対応する階調群は、互いに分散性の高いドットパターンの相性がよく、ステップＳ９０３で定めたとおりＬ≒ｎ×ｄｇまたは√２Ｌ≒ｎ×ｄｇを満たすＬを一辺とする正方形を閾値マトリクスのサイズとしている。そのため、より明るい階調を表すドットパターンにドットを追加することで、不均一な模様を形成せず、分散性の高いドットパターンを生成することができる。
【００４０】
ステップＳ９０８において、ステップＳ９０７で新しくドットを追加した位置と対応する閾値マトリクスＭ１の位置に、ステップＳ９０７において選択した階調に対応する閾値を格納する。以上のように、閾値マトリクスが担当する階調群のうち、明るい階調でのドットを保持したまま、次に明るい階調のドットパターンを決定していく。閾値マトリクスＭ１が受け持つ階調群のうち、最も明るい階調値から順に繰り返す。ステップＳ９０９において閾値マトリクスＭ１が受け持つ階調群の全てについて処理を終えたら、ステップＳ９１１で閾値マトリクスＭ１を保存する。
【００４１】
以上の処理を全ての閾値マトリクス（Ｍ１、Ｍ２、Ｍ３）が作成できるまで繰り返し、本実施例において用いられるサイズの異なる複数の閾値マトリクスの作成は完了する。
本実施例によれば、それぞれサイズの異なる複数の閾値マトリクスを用いてハーフトーン処理をする。その結果、各階調においてより分散性の高いドットパターンを実現し、かつ、閾値マトリクスをタイル状に繰り返し対応させて用いても、不均一なパターン（テクスチャ）を発生しにくい。
【００４２】
なお本実施例では、できるだけ相性の良い階調を共通の閾値マトリクスに対応させる例について説明したがこれに限らない。例えば、入力画像データが表す階調をいくつかの区間に区切り、区間ごとに閾値マトリクスを対応させるような場合でも、各区間ごとにより適切な閾値マトリクスのサイズを設定すればよい。
【００４３】
＜実施例２＞
前述の実施例では、ハーフトーン処理部１０６は比較器を１つ持つ構成を示した。実施例２では、各閾値マトリクスに対して１つずつ比較器を持ち、それぞれにおける量子化結果から出力値を選択する構成を示す。図３は実施例２に適用可能なハーフトーン処理部１０６の構成を示す。実施例１と同様の構成については、同一の符号を付し、詳細な説明は省略する。本実施例においてハーフトーン処理部１０６は、閾値マトリクスＭ１〜ＭＮに対応する数の比較器３０７を持つ。注目画素を表す入力値が入力されると、各比較器２０６は並行して入力値と閾値マトリクスにおける閾値とを比較し、入力値を量子化する。そののち、出力決定器３０１が入力値（階調）に応じて、複数の比較器２０６から得られる量子化結果から１つを出力値として選択する。各閾値マトリクスの作成方法や、入力値と閾値マトリクスとの対応関係は実施例１と同様である。
【００４４】
＜実施例３＞
前述の実施例では、複数の閾値マトリクスを用いたハーフトーン処理を示した。しかしながら閾値マトリクスを用いた比較処理をせず、階調分のドットパターンを参照してドットパターンを決定するハーフトーン処理においても同様の方法を適用することができる。実施例３では、全階調のドットパターンを保持することにより、閾値マトリクスを用いた比較処理を行わないハーフトーン処理について説明する。なお前述の実施例と同様に、ドットのオンとオフを示す二値のハーフトーン画像データを生成する。
【００４５】
図１０は実施例３の概略を示す。各階調に対応するドットパターンはそれぞれ、十分な分散性が得られるドット配置になっている。また、ドットパターンを繰り返しタイル上に並べても、テクスチャが視認されないサイズに最適化されている。注目画素の入力値が示す階調に応じて、ドットパターンを選択する。選択したドットパターンにおいて、注目画素の位置（ｘ、ｙ）に対応する位置がオンドット（黒画素）かオフドット（白画素）かによって出力値を決定する。ここでは、オンドットの場合出力値＝０、オフドットの場合出力値＝１とする。
【００４６】
図１１は、実施例３に適用可能なハーフトーン処理部１０６を示す。メモリ２０３上には、ドットのオン、オフを表す１ビットのドットパターンを全階調分（図１１、１００４）が保持されている。ドットパターン選択器１００５は、注目画素（ｘ、ｙ）を表す画素値（階調ｇ）に対応するドットパターンを選ぶ。選択されたドットパターンにおいて、注目画素（ｘ、ｙ）に対応する位置は、選択されたドットパターンの幅をＷｋ、高さをＨｋとしたとき、
ｉ  ＝  ｘ  ％  Ｗｋ
ｊ  ＝  ｙ  ％  Ｈｋ
によって決まる。ここで％は剰余を表す。階調変換器１００６はドットパターンにおける位置（ｉ、ｊ）に格納された値を出力画像の位置（ｘ、ｙ）に出力する。このドットパターンのサイズを階調値ごとに適切に設定することによって、前述の実施例と同様の効果が得られる。各ドットパターンのサイズは、階調に応じて実施例１と同様に決定すればよい。
【００４７】
＜その他の実施例＞
前述の実施例では、分散性の高いドットパターンの周波数特性として、図６のような周波数特性をもつ場合を例に説明した。このような特性は、ブルーノイズ特性と呼ばれる。特表平０６−５０８００７等の文献によれば、階調に対して定められる周波数ｐｒｉｎｃｉｐａｌ  ｆｒｅｑｕｅｎｃｙ（ｆｇ）付近にピークがあり、ｆｇよりも高域に偏った周波数成分をもったドットパターンをブルーノイズ特性という。しかしながら、分散性が高いドットパターンはブルーノイズ特性をもつものに限らない。具体的には、図１２の曲線Ｂが示すように、ｐｒｉｎｃｉｐａｌ  ｆｒｅｑｕｅｎｃｙより低域の周波数成分を抑制された周波数特性が挙げられる。この周波数特性には、ブルーノイズ特性にあるような周波数成分のピークは存在しない。閾値マトリクスあるいはドットパターンはこのような周波数特性を持つように設計してもよい。その場合、サイズは複数試行した結果より好適なものを選んでもよいし、Ｌ≒ｎ×ｄｇまたは√２Ｌ≒ｎ×ｄｇにおける近似関係をより緩やかに許容したり、振幅がある閾値を超える最小の周波数値の逆数を式（）によって定義されるｄｇに代わって採用してもよい。
【００４８】
また前述の実施例では、ハーフトーン処理によって二値のデータに変換する例について説明した。しかしながら、多値化するハーフトーン処理でもよい。一般に、多値ハーフトーン処理は、入力の全階調値をＲ、出力可能な多値レベルをｍ、二値のハーフトーン処理用の閾値マトリクスの位置（ｉ，ｊ）の格納閾値をＤｉ，ｊと書くと、多値ハーフトーン用の閾値マトリクスＴｉｊ（ｒ）は
【００４９】
【数２】
0005950694.tif 000003
【００５０】
（ｒ＝０，１，…，ｍ−２）と書ける。なお、ｉｎｔは整数化を表す。ただし、Ｔｉ，ｊ（ｒ）は入力値ｘｉ，ｊが
【００５１】
【数３】
0005950694.tif 000004
【００５２】
となる範囲のｘｉｊについて、Ｔｉｊ（ｒ）を使うものとする。このような変換によって、多値ハーフトーン処理の場合のも本発明を適用することが可能である。
【００５３】
また、前述の実施例では、各階調に対して一義的に決まる適切なドット間距離ｄｇを用いて、閾値マトリクスまたはドットパターンのサイズＬを、対応する各階調についてＬ≒ｎ×ｄｇまたは√２Ｌ≒ｎ×ｄｇの何れかを満たすように設定した。しかしながら、階調群にとって適切なサイズの設定方法はこれに限らない。例えば、様々なサイズの領域において各々ドットの好適な配置を決定し、評価計算または実際に画像を形成してみることによって最も良好であると評価されたサイズを選ぶようにしてもよい。このときのドットの配置の決定や評価の仕方は、種々の公知な手法を用いることができる。
【００５４】
なお、前述の実施例では、矩形の閾値マトリクスまたはドットパターンを用いてハーフトーン処理する構成を例に説明した。しかしながら必ずしも矩形である必要はない。どのような形状の閾値マトリクスまたはドットパターンであっても、画像データに対して繰り返し対応づけて用いるような構成であれば、前述の実施例と同様の効果を実現できる。また、前述の実施例では、複数の閾値マトリクスまたはドットパターンは、いずれも正方形における一辺を各階調に応じて最適化していた。つまり、複数の閾値マトリクスは互いに相似な形状であった。しかしながら、全ての閾値マトリクスあるいはドットパターンの形状が必ずしも一致していなくてもよい。例えば、対応する階調を表すドットパターンにとってより適したサイズであれば、長方形Ｌ×Ｋ（Ｌ≠Ｋ）のような閾値マトリクスまたはドットパターンを一部で用いてもよい。
【００５５】
また、前述の実施例では、正方形の閾値マトリクスまたはドットパターンにおいて、格子点上または対角線上を中心にドットを配置する例を示したがこれに限らない。分散性が高く、繰り返して並べても視認されるテクスチャを発生しにくいドットの配置であればよい。
【００５６】
また、前述の実施例では、記録媒体の同一領域に対して、１回の記録により画像を形成するためのハーフトーン画像データを生成した。しかしながら、本件は、記録媒体の同一領域に対して複数回の記録により画像を形成するマルチパス記録方式にも適用できる。各走査に対応するデータを生成する公知な方法と合わせて本発明を実施すればよい。
【００５７】
また、前述の実施例では、単色の場合について説明したが、画像形成装置が、カラー画像を記録する場合にも適用できる。その場合、色分解処理部１０５から各色の色分解後データが出力される。各色の色分解後データに対してハーフトーン処理を行い、画像形成装置１０２に出力すればよい。また、全ての色材色に本発明を適用してそれぞれドットパターンを生成してもよいし、よりドットの分散性が求められる一部の色材にのみ適用してもよい。
【００５８】
また、前述の実施例では、全ての閾値マトリクスまたはドットパターンに対して、対応する階調に応じたサイズの最適化を行う場合を例に説明した。しかしながら、少なくとも一部の閾値マトリクスまたはドットパターンに対して、サイズの最適化を行うのみでも、本発明による効果を得ることができる。閾値マトリクスまたはドットパターンを繰り返し用いることによって発生するテクスチャが視認されやすい階調に対して、繰り返しサイズの適正化を行うようにしてもよい。つまり、階調の一部では、従来と同様のハーフトーン処理をしてもよい。
【００５９】
本発明は、上述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給することによっても実現できる。この場合、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が、コンピュータが読み取り可能な記憶媒体に格納されたプログラムコードを読み出し実行することにより、上述した実施例の機能を実現する。
【図１】
0005950694.tif 000005
【図２】
0005950694.tif 000006
【図３】
0005950694.tif 000007
【図４】
0005950694.tif 000008
【図５】
0005950694.tif 000009
【図６】
0005950694.tif 000010
【図７】
0005950694.tif 000011
【図８】
0005950694.tif 000012
【図９】
0005950694.tif 000013
【図１０】
0005950694.tif 000014
【図１１】
0005950694.tif 000015
【図１２】
0005950694.tif 000016
【図１３】
0005950694.tif 000017