(57)【要約】【課題】  入力された画像信号に対して中間調処理を行うために当該画像信号と比較されるマトリクスに配置されるドットに偏りが生じることを従来よりも低減する。【解決手段】  乱数によって定められた初期配置に従ってドットが配置された２×２のマトリクス領域を計算領域８０１とし、その中央部分の１つのマトリクス領域に等しい領域を対象領域８０２とする。４つのマトリクス領域には、夫々同じ位置に位置するドットが１つずつ存在する。そのうちの１つを着目ドットdot＿i1とし、残りの３つを従属ドットdot＿i2、dot＿i3、dot＿i4とする。そして、着目ドットdot＿i1の分散度sum＿scrが最小になる位置にドットを移動すると共に、従属ドットdot＿i2、dot＿i3、dot＿i4も着目ドットdot＿i1の位置に合わせて同時に移動する。【選択図】  図８
2010093439.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成するデータ処理装置であって、
乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置手段と、
前記初期配置手段により複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置手段と、
前記マトリクス配置手段により並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置手段と、
前記ドット配置手段により配置されたドットの位置から当該ドットを成長させてドット成長パターンを生成するドット成長パターン生成手段と、
前記ドット成長パターン生成手段によって生成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成手段とを有することを特徴とするデータ処理装置。
【請求項２】
前記ドット配置手段は、前記計算領域に含まれるドット同士の分散度を算出し、算出した分散度に、ドットの位置する領域に応じた重み付けを行い、重み付けが行われた分散度の総和が最小となる位置に、当該計算領域に含まれるドットを配置することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記ドット配置手段は、前記複数のマトリクス領域のうちの１のマトリクス領域に含まれるドットを移動する際に、当該ドットに対応する位置にある他のマトリクス領域に含まれるドットを、当該移動するドットの移動量に合わせて移動することを特徴とする請求項１又は２に記載のデータ処理装置。
【請求項４】
前記マトリクス配置手段は、上下左右に２×２のマトリクス状にマトリクス領域を配置することを特徴とする請求項１〜３の何れか１項に記載のデータ処理装置。
【請求項５】
前記ドット配置手段は、前記計算領域に含まれるドット間の距離の２乗分の１を算出し、算出した値を用いて、当該計算領域に含まれるドットの分散度を算出することを特徴とする請求項１〜４の何れか１項に記載のデータ処理装置。
【請求項６】
入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成するデータ処理方法であって、
乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置ステップと、
前記初期配置ステップにより複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置ステップと、
前記マトリクス配置ステップにより並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置ステップと、
前記ドット配置ステップにより配置されたドットの位置から当該ドットを成長させてドット成長パターンを生成するドット成長パターン生成ステップと、
前記ドット成長パターン生成ステップによって生成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成ステップとを有することを特徴とするデータ処理方法。
【請求項７】
入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成することをコンピュータに実行させるためのコンピュータプログラムであって、
乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置ステップと、
前記初期配置ステップにより複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置ステップと、
前記マトリクス配置ステップにより並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置ステップと、
前記ドット配置ステップにより配置されたドットの位置から当該ドットを成長させてドット成長パターンを生成するドット成長パターン生成ステップと、
前記ドット成長パターン生成ステップによって生成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、データ処理方法、及びコンピュータプログラムに関し、特に、画像信号に対して中間調処理を行うために用いて好適なものである。
【背景技術】
【０００２】
近年から、電子写真方式やインクジェット方式等を採用したカラー画像形成装置として、プリンタや複写機等がある。このような画像形成装置には、出力画像の高画質化がますます求められている。
画像形成装置の画質は擬似中間調処理に依存する部分が多い。擬似中間調処理の手法としては従来から組織的ディザ法及び誤差拡散法が知られている。
【０００３】
組織的ディザ法は、入力画像の各画素の階調値と閾値マトリクスとを比較し、比較した結果によって出力値を決めるものである。組織的ディザ法には、処理が比較的軽い、周期性がある等の特徴がある。
一方の誤差拡散法は、入力画像の各画素値と閾値とを比較し、比較した結果によって出力値を決め、出力値と閾値との誤差を周囲の画素値に加算するものである。誤差拡散法には、処理が比較的重い、周波数変調であるため特定の周期を持たない等の特徴がある。
【０００４】
一般的に電子写真方式の画像形成装置ではドット集中型の組織的ディザ法を用いることが多い。図１８は、ドット集中型の組織的ディザ法を説明する図である。具体的に図１８（ａ）は、ドット集中型の閾値マトリクス（ディザマトリクス）の一例を示し、図１８（ｂ）は、ディザ処理後に形成されるドットの一例を示す。
【０００５】
このようなドット集中型のディザマトリクスの問題点として、解像度の向上と階調性の向上との両立が難しいという問題がある。解像度を上げるためにはマトリクスのサイズを小さくする必要があり、階調性を増加させるためにはマトリクスのサイズを大きくする必要があるからである。更に、ドット集中型の組織的ディザ法では、特定の周波数にパワーを持つ。このため、印刷物をスキャナで読み取ることにより得られる画像や特定の周期的なパターンを含んだ画像等、画像中に特定の周波数が含まれる場合には、当該周波数とディザの周波数とが干渉して、いわゆるモアレ縞が発生するという問題があった。また、画像形成装置の各種変動要因、例えばポリゴンミラーの面周期で発生するジッタのような周期的に発生する変動とディザの周波数とが干渉して低周波のモアレ縞が発生するという問題があった。
【０００６】
一方、誤差拡散法は解像度が高く階調性も高い。このため、解像度の向上と階調性の向上との両立を図ることが比較的容易である。また、誤差拡散法では、特定の周波数にパワーを持たないため、ドット集中型の組織的ディザ法のようなモアレ縞が発生するという問題は起こらない。しかしながら、誤差拡散法では、誤差を周囲の画素値に加算するため、数ライン分のラインバッファを持つ必要がある。また、誤差拡散法では、ドット集中型の組織的ディザ法に比べると比較的処理が重いため、より高速な処理系が必要となり、コストが高くなるという問題があった。また、誤差拡散法では、画像や階調によってはいわゆる掃き寄せやワーム等、画質劣化となる現象が発生する問題があった。更に誤差拡散法を適用すると微小ドットが高周波に分布してドットが形成されることになるが、電子写真方式の画像形成装置では微小ドットを高周波で安定的に再現することが困難である。よって、このような場合には、結果として不安定なドットが形成され、粒状性の悪い画像が出力されてしまう問題があった。
【０００７】
以上のような問題を解決する手法として誤差拡散法のようなＦＭスクリーンの特徴を持ったディザマトリクスでディザ処理を行う方法（以下、ＦＭスクリーンディザ法と呼ぶ）が近年注目されている。ＦＭスクリーンディザ法はマトリクス内のドットをランダムな配置で形成する。このため、ＦＭスクリーンディザ法では、ドット集中型の組織的ディザ法のようにモアレ縞が発生するという問題は発生しない。また、ＦＭスクリーンディザ法は、その処理方法が組織的ディザ法と同じであるので処理が比較的軽く、低コストで実現可能である。更に、ＦＭスクリーンディザ法では、誤差拡散法のような掃き寄せやワーム等の問題も発生しない。
【０００８】
このＦＭスクリーンディザ法の閾値マトリクスを作成する方法として特許文献１、２に記載の技術がある。特許文献１では、低階調のドット配置を生成し、生成したドット配置に対してドットの間に順次ドットを追加配置して、より階調の高いドット配置を生成することが提案されている。また、特許文献２では、低階調のドット配置を生成するために最も近いドットの距離が１つ離れるように着目ドットを移動することが提案されている。
【０００９】
【特許文献１】特開２００２−１２５１２２号公報
【特許文献２】特開２０００−７８４０５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、前述した従来の方法では、画像の階調が上がるにつれて孤立ドット数が増加していく。このため、電子写真方式の画像形成装置では誤差拡散法と同様に、粒状性が悪くなるという問題は依然として残される。また、画像の階調の増加に伴い、ドット間に新しいドットが出現した時に濃度変化やパターンの変化が急激に起こり、この急激な変化が濃度段差やテクスチャとして目に付き、画質劣化となる問題がある。更に、既に配置されているドットパターンにドットを追加する方法では、十分な分散性を持ったドット配置を実現できず、結果としてマトリクス内のドットの配置間隔に偏りが生じ、その偏りが濃度ムラとして目に付き、画質が大きく損なわれるという問題がある。この問題について図１９を参照しながら説明する。
【００１１】
図１９は、既に配置されているドットパターンにドットを追加する従来の方法を説明する図である。
図１９において、太枠がディザマトリクスの領域である。図１９では、ディザマトリクスを４つ並べて配置している。ディザマトリクスは８×８のサイズであり、初期配置としてディザマトリクス内に４個のドットが配置されている。図１９（ａ）は、初期のドット配置を示す図である。図１９（ａ）において、各マトリクス内に黒で示す４個のドットが初期のドットである。初期のドット配置では、ドット同士の距離はほぼ均一であり、分散性がよい。
【００１２】
図１９（ｂ）は、図１９（ａ）に示す初期のドット配置に対して４個のドットを従来の方法で追加した場合のドットは位置を示す図である。図１９（ｂ）において、追加されたドットは、既に配置されているドットから距離ができるだけ均等に離れている位置に配置される。しかしながら、最も距離が近いドットの重心間の距離は２．０となり、ドット間の距離が接近している。
図１９（ｃ）は、マトリクス内に６個のドットを配置する別のドット配置を示す図である。図１９（ｃ）では、最も距離が近いドットの重心間の距離は約２．２となり、図１９（ｂ）に示すものよりもドット間の距離が離れており、より分散性が高いと言える。従来の方法では、このように分散性が高くなるドット配置にすることができなかった。
以上のようにドットの間に新しいドットを追加する従来の方法では、ドットを追加する前の階調のドット配置の制約を受ける。このため、ドット配置の自由度が低く、必ずしも全体として最適なドット配置とはならないという問題がある。マトリクスのサイズが小さい場合やマトリクス内のドット数が多い場合には、よりドット配置の制約が大きくなるため、この問題がより顕著に表れることになる。
【００１３】
また、特許文献２に記載の方法では、局所的なドットの分散性しか考慮されない。このため、マトリクス内のドット数がある程度多い場合にはドットの密度に偏りが生じてしまうという問題がある。この問題について図２０を参照しながら説明する。
図２０は、ドットを移動させる従来の方法を説明する図である。図２０（ａ）は、８×８のディザマトリクス内における初期のドット配置を示す。図２０（ａ）では、初期のドット配置として１２個のドットがランダムに配置されている。図２０（ｂ）は、図２０（ａ）に示す初期のドット配置のドットを従来の方法で移動した後のドット配置を示す図である。図２０（ｂ）に示すように、従来の方法でドットを移動していくと、局所的にドット密度に偏りが生じていることが分かる。実際に最も距離が近いドットの重心間の距離は２．０である。一方、最も距離が近い隣接ドットとの距離が最も遠いドット間の距離は２．８である。このように場所によるドット間の距離の差が大きい。
【００１４】
図２０（ｃ）は、マトリクス内に１２個のドットを配置する別のドット配置を示す図である。図２０（ｃ）では、最も距離が近いドットの重心間の距離は２．０となり、図２０（ｂ）に示したものと同じであるが、最も距離が近い隣接ドットとの距離が最も遠いドット間の距離は２．２である。したがって、図２０（ｃ）に示すようにした方が、図２０（ｂ）に示すようにした場合よりも、場所によるドット間の距離の差は小さく、より分散性が高くなると言える。従来の方法では、このように分散性が高くなるドット配置にすることができなかった。
【００１５】
以上のように従来の特許文献１、２の何れの方法でも最適なドット配置を得ることができないという問題があった。
本発明は、このような問題点に鑑みてなされたものであり、入力された画像信号に対して中間調処理を行うために当該画像信号と比較されるマトリクスに配置されるドットに偏りが生じることを従来よりも低減することを目的とする。
【課題を解決するための手段】
【００１６】
本発明のデータ処理装置は、入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成するデータ処理装置であって、乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置手段と、前記初期配置手段により複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置手段と、前記マトリクス配置手段により並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置手段と、前記ドット配置手段により配置されたドットの位置から当該ドットを成長させてドット成長パターンを生成するドット成長パターン生成手段と、前記ドット成長パターン生成手段によって生成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成手段とを有することを特徴とする。
【００１７】
本発明のデータ処理方法は、入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成するデータ処理方法であって、乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置ステップと、前記初期配置ステップにより複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置ステップと、前記マトリクス配置ステップにより並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置ステップと、前記ドット配置ステップにより配置されたドットの位置から当該ドットを成長させてドット成長パターンを形成する形成ステップと、前記形成ステップによって形成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成ステップとを有することを特徴とする。
【００１８】
本発明のコンピュータプログラムは、入力された画像信号に対して中間調処理を行うために当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成することをコンピュータに実行させるためのコンピュータプログラムであって、乱数に基づいて、マトリクス領域内に複数のドットを配置する初期配置ステップと、前記初期配置ステップにより複数のドットが同じように配置された複数のマトリクス領域を並べるマトリクス配置ステップと、前記マトリクス配置ステップにより並べられた複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域に含まれるドットを移動して当該ドットを配置するドット配置ステップと、前記ドット配置ステップにより配置されたドットの位置から当該ドットを成長させてドット成長パターンを生成するドット成長パターン生成ステップと、前記ドット成長パターン生成ステップによって生成されたドット成長パターンに基づいて、前記閾値マトリクスを生成する閾値マトリクス生成ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【００１９】
本発明によれば、複数のドットが同じように配置されたマトリクス領域を複数並べ、それら複数のマトリクス領域からなる計算領域に含まれるドットの分散度が最小となる位置に、当該計算領域内に含まれるドットを移動して当該ドットを配置する。このようにして配置されたドットの位置から当該ドットを成長させ、成長させたドットの形状に基づいて、入力された画像信号に対して中間調処理を行うために、当該画像信号と比較される閾値が、当該画像信号の領域毎に設定された閾値マトリクスを生成する。したがって、閾値マトリクスに配置されるドットに偏りが生じることを従来よりも低減することができる。
【発明を実施するための最良の形態】
【００２０】
以下に、図面を参照しながら、本発明の実施形態について説明する。本実施形態では、画像形成装置が、電子写真方式のカラー画像形成装置である場合を例に挙げて説明する。
図１は、画像形成装置の構成の一例を示す図である。
図１において、画像形成装置１６０４は、画像処理部１６０２と画像形成部１６０３とを備えて構成される。ホストＰＣ１６０１と画像処理部１６０２との間では各種の通信が行われる。例えば、ホストＰＣ１６０１から画像処理部１６０２に対してプリント指示や、画像処理部１６０２からホストＰＣ１６０１に対して状態の通知等が行われる。また、プリント時にはホストＰＣ１６０１から画像信号が画像処理部１６０２に送信される。
【００２１】
画像処理部１６０２と画像形成部１６０３との間でも、各種の通信が行われる。例えば、画像処理部１６０２から画像形成部１６０３に対して各種制御の指示や、画像形成部１６０３から画像処理部１６０２に対して状態の通知等が行われる。また、プリント時には、後述する画像処理が施されたレーザ駆動信号が画像処理部１６０２から画像形成部１６０３に送信される。
【００２２】
図２は、画像形成装置１６０４の画像処理部１６０２の構成の一例を示すブロック図である。
図２において、ＣＰＵ２０６は、ＲＯＭ２０８に格納されたプログラムに基づいて、画像処理部１６０２内の後述する各処理部及び全体を統括制御する。ＲＡＭ２０７は、ＣＰＵ２０６の作業領域として使用される。通信部２０９は、ホストＰＣ１６０１との間で各種通信を行う。ホストＰＣ１６０１から通信部２０９へのプリント指示によりプリントが開始されると、カラーマッチング処理部２０１は、次の処理を行う。すなわち、カラーマッチング処理部２０１は、予めＲＯＭ２０８に用意されているカラーマッチングテーブルにより、ホストＰＣ１６０１から送られてくる画像の色を表すＲＧＢ信号を画像形成装置１６０４の色再現域に合わせたデバイスＲＧＢ信号に変換する。尚、以下の説明では、このデバイスＲＧＢ信号を、必要に応じてＤｅｖＲＧＢ信号と称する。
【００２３】
色分解処理部２０２は、予め用意されている色分解テーブルにより、ＤｅｖＲＧＢ信号を画像形成装置１６０４のトナー色材色であるＣＭＹＫ信号に変換する。濃度補正処理部２０３は、ＲＯＭ２０８に格納されている"階調値−濃度特性を補正する濃度補正テーブル"によってＣＭＹＫ信号を、階調値−濃度特性で補正したＣ'Ｍ'Ｙ'Ｋ'信号へ変換する。中間調処理部２０４は、Ｃ'Ｍ'Ｙ'Ｋ'信号に対して中間調処理を行い、Ｃ'Ｍ'Ｙ'Ｋ'信号をＣ''Ｍ''Ｙ''Ｋ''信号へ変換する。ＰＷＭ処理部２０５で、ＰＷＭ（Pulse Width Modulation）により、Ｃ''Ｍ''Ｙ''Ｋ''信号に対応する不図示のレーザの露光時間を表すレーザ駆動信号Ｔｃ、Ｔｍ、Ｔｙ、Ｔｋを生成し、画像形成部１６０３へ送信する。
【００２４】
図３は、画像形成部１６０３の構成の一例を示すブロック図である。
図３において、制御部１７０１は画像形成部１６０３全体を制御する。具体的に制御部１７０１は、画像処理部１６０２からの指示によりレーザスキャナ部１７０４、作像部１７０３、及び給紙・搬送部１７０２を制御する。例えば、制御部１７０１は、画像処理部１６０２からプリント指示があると、画像処理部１６０２からレーザ駆動信号を受信する。制御部１７０１は、レーザ駆動信号に基づいてレーザスキャナ部１７０４を制御してレーザを駆動する。制御部１７０１は、同時に作像部１７０３を制御して、帯電、露光、現像、用紙への転写、定着を順に行う。また、制御部１７０１は、同時に給紙・搬送部１７０２を制御し、用紙の給紙、搬送、排紙を行う。以上の動作により、用紙上に画像が形成される。
【００２５】
次に、中間調処理部２０４での処理について説明する。図４は、中間調処理部２０４の構成の一例を示すブロック図である。
図４において、ディザマトリクス格納部３０２Ｃ、３０２Ｍ、３０２Ｙ、３０２Ｋには、各色に対応した閾値マトリクス（ディザマトリクス）が格納されている。Ｃ、Ｍ、Ｙ、Ｋ各色の動作は同様であるので、ここではCyan（Ｃ）の処理を例に挙げて説明する。
図５は、ディザマトリクス格納部３０２Ｃに格納されている閾値マトリクスの一例を示す図である。図５に示すように、ディザマトリクス格納部３０２Ｃには、画像信号の領域毎に設定された閾値マトリクスＭＴＲ０〜ＭＴＲ１５が格納されている。ここでは簡単のため、閾値マトリクスＭＴＲ０〜ＭＴＲ１５のサイズを４×４としている。
【００２６】
入力画像信号Ｃ'と、入力画像信号Ｃ'の画像上の座標情報（x,y）とが比較部３０１Ｃに入力される。比較部３０１Ｃは、まず、ｍｘ（＝MOD（x,ｍ））とｍｙ（＝MOD（y,ｍ））とを計算する。ここで、ｍは、閾値マトリクスＭＴＲ０〜ＭＴＲ１５のサイズであり、MOD（a,b）はaをbで割った時の剰余を表す。次に、比較部３０１Ｃは、入力画像信号Ｃ'の階調値Ｖｉｎと、閾値MTR0(mx,my)〜MTR15(mx,my)とを比較する。
【００２７】
具体的に説明すると、まず、比較部３０１Ｃは、階調値Ｖｉｎと閾値MTR0(mx,my）とを比較する。この比較の結果、Ｖｉｎ≦MTR0（mx,my）であれば出力画像信号Ｃ''の階調値Ｖｏｕｔを０（Ｖｏｕｔ＝０）とする。一方、Ｖｉｎ＞MTR0（mx,my）であれば、比較部３０１Ｃは、階調値Ｖｉｎと閾値MTR1（mx,my）とを比較する。この比較の結果、Ｖｉｎ≦MTR1（mx,my）であれば出力画像信号Ｃ''の階調値Ｖｏｕｔを１（Ｖｏｕｔ＝１）とする。一方、Ｖｉｎ＞MTR１(mx,my)であれば、比較部３０１Ｃは、階調値Ｖｉｎと閾値MTR２(mx,my)とを比較する。以降、同様にして順次に比較を行い、Ｖｉｎ＞MTR15(mx,my)であれば、出力画像信号Ｃ''の階調値Ｖｏｕｔを１６（Ｖｏｕｔ＝１６）とする。本実施形態では、以上の方法で出力画像信号Ｃ''の階調値Ｖｏｕｔを決定する。
【００２８】
次に、ディザマトリクス格納部３０２Ｃに格納される閾値マトリクスＭＴＲ０〜ＭＴＲ１５の生成方法の一例について説明する。図６は、閾値マトリクスＭＴＲ０〜ＭＴＲ１５を生成する際の処理の一例を説明するフローチャートである。尚、ここでは、画像形成装置１６０４（画像処理部１６０２）で閾値マトリクスＭＴＲ０〜ＭＴＲ１５を生成する場合を例に挙げて説明する。しかしながら、画像形成装置１６０４以外で閾値マトリクスＭＴＲ０〜ＭＴＲ１５を生成し、生成した閾値マトリクスＭＴＲ０〜ＭＴＲ１５を画像形成装置１６０４に記憶させるようにしてもよい。
【００２９】
まず、ＣＰＵ２０６は、マトリクスのサイズｍ×ｍと、マトリクス内のドット数ｎとを入力する（ステップＳ５０１）。次に、ＣＰＵ２０６は、一様な乱数によってドットの初期配置を決定し、決定した初期配置に従ってマトリクス内にｎ個のドットを配置する（ステップＳ５０２）。図７は、マトリクスのサイズｍが１６、ドット数ｎが２６の場合のドットの初期配置の一例を示す図である。
以上のように本実施形態では、例えば、ステップＳ５０２の処理を行うことにより初期配置手段の一例が実現される。
次に、ＣＰＵ２０６は、初期配置に従って複数のドットが同じように配置されたマトリクスを上下左右に４つ並べて（２×２のマトリクス状に並べて）これを計算領域とする。図８は、初期配置に従ってドットが配置されたマトリクスを上下左右に４つ並べた様子の一例を示す図である。
図８に示すように、左上に位置するマトリクスから右上、左下、右下の順に４つのマトリクスＭ１、Ｍ２、Ｍ３、Ｍ４が配置されている。また、ＣＰＵ２０６は、計算領域８０１の中央の"マトリクスのサイズに等しい領域"を対象領域８０２として設定する（ステップＳ５０３）。図８の斜線で示した領域が対象領域８０２となる。
以上のように本実施形態では、例えば、ステップＳの処理を行うことによりマトリクス配置手段の一例が実現される。
【００３０】
次に、ＣＰＵ２０６は、対象領域８０２の各ドットにＩＤ番号dot＿11、dot＿21、dot＿31、…、dot＿n1を割り当てる（ステップＳ５０４）。このとき、ＩＤ番号の割り当てる順番はランダムになるようにする。
計算領域８０１は４つのマトリクスＭ１〜Ｍ４から構成されている。このため、対象領域８０２内の各ドットに対応するドット、すなわちマトリクスＭ１〜Ｍ４内の同じ位置に位置するドットが計算領域８０１内に３つずつ存在する。以下、これらのドットの関係を従属関係と呼び、これらのドットを従属ドットと呼ぶ。
【００３１】
ＣＰＵ２０６は、ｉ番目のドットdot＿i1（i=1…n）に対する従属ドットにＩＤ番号dot＿i2、dot＿i3、dot＿i4を割り当てる（ステップＳ５０５）。具体的に、ドットdot＿i1がマトリクスＭ１に属する場合、マトリクスＭ２、Ｍ３、Ｍ４に属する従属ドットに夫々dot＿i2、dot＿i3 、dot＿i4を割り当てる。また、ドットdot＿i1がマトリクスＭ２に属する場合、マトリクスＭ１、Ｍ３、Ｍ４に属する従属ドットに夫々dot＿i2、dot＿i3、dot＿i4を割り当てる。また、ドットdot＿i1がマトリクスＭ３に属する場合、マトリクスＭ１、Ｍ２、Ｍ４に属する従属ドットに夫々dot＿i2、dot＿i3 、dot＿i4を割り当てる。また、ドットdot＿i1がマトリクスＭ４に属する場合、マトリクスＭ１、Ｍ２、Ｍ３に属する従属ドットに夫々dot＿i2、dot＿i3 、dot＿i4を割り当てる。
図８に、前述した各ドットdot＿i1、dot＿i2、dot＿i3、dot＿i4の一例を示す。
【００３２】
次に、ＣＰＵ２０６は、計算領域８０１の左上を原点（0,0）として各ドットdot＿ijの座標（x＿ij,y＿ij）を求め、求めた座標を格納する（ステップＳ５０６）。図９は、各ドットdot＿ijの座標（x＿ij,y＿ij）の一例を示す図である。従属ドットdot＿i2、dot＿i3、dot＿i4の座標（x＿i2,y＿i2）〜（x＿i4,y＿i4）は以下のように求まる。
【００３３】
ドットdot＿i1がマトリクスにＭ１に属する場合、従属ドットdot＿i2、dot＿i3、dot＿i4の座標（x＿i2,y＿i2）〜（x＿i4,y＿i4）は、以下のようにして求まる。
x＿i2＝x＿i1＋m，y＿i2＝y＿i1
x＿i3＝x＿i1，y＿i2＝y＿i1＋m
x＿i4＝x＿i1＋m，y＿i2＝y＿i1＋m
ドットdot＿i1がマトリクスにＭ２に属する場合、従属ドットdot＿i2、dot＿i3、dot＿i4の座標（x＿i2,y＿i2）〜（x＿i4,y＿i4）は、以下のようにして求まる。
x＿i2＝x＿i1−m，y＿i2＝y＿i1
x＿i3＝x＿i1−m，y＿i2＝y＿i1＋m
x＿i4＝x＿i1，y＿i2＝y＿i1＋m
【００３４】
ドットdot＿i1がマトリクスにＭ３に属する場合、従属ドットdot＿i2、dot＿i3、dot＿i4の座標（x＿i2,y＿i2）〜（x＿i4,y＿i4）は、以下のようにして求まる。
x＿i2＝x＿i1，y＿i2＝y＿i1−m
x＿i3＝x＿i1−m，y＿i2＝y＿i1＋m
x＿i4＝x＿i1＋m，y＿i2＝y＿i1
ドットdot＿i1がマトリクスにＭ４に属する場合、従属ドットdot＿i2、dot＿i3、dot＿i4の座標（x＿i2,y＿i2）〜（x＿i4,y＿i4）は、以下のようにして求まる。
x＿i2＝x＿i1−m，y＿i2＝y＿i1−m
x＿i3＝x＿i1，y＿i2＝y＿i1−m
x＿i4＝x＿i1−m，y＿i2＝y＿i1
【００３５】
以上のようにして各ドットdot＿ijの座標（x＿ij,y＿ij）の格納が完了すると、ＣＰＵ２０６は、配置最適化計算を行う（ステップＳ５０７）。
図１０のフローチャートを参照しながら、配置最適化計算の処理の一例を説明する。
まず、ＣＰＵ２０６は、変数ｉに１をセットし、ドットdot＿i1を着目ドットとする（ステップＳ８０１）。
次に、ＣＰＵ２０６は、対象領域８０２の左上の座標（m/2+1,m/2+1）を着目ドットdot＿i1の一時的な座標（cx＿i1,cy＿i1）としてセットする（ステップＳ８０２）。このとき、ＣＰＵ２０６は、着目ドットdot＿i1の従属ドットdot＿i2、dot＿i3 、dot＿i4の一時的な座標（cx＿i2,cy＿i2）、（cx＿i3,cy＿i3）、(cx＿i4,cy＿i4）を計算する。具体的に、これらの座標は、前述した座標（x＿i2,y＿i2）、（x＿i3,y＿i3）、（x＿i4,y＿i4）を求める式と同様の算出方法に従って、座標（cx＿i1,cy＿i1）から計算される。ここで、計算領域８０１内の２つのドットdot＿ij、dot＿klの間の分散度scrを、ドット間の距離の２乗分の１として定義する。すなわち、計算領域８０１内の２つのドットdot＿ij、dot＿klの間の分散度scrを、以下の（１）式のように定義する。
【００３６】
【数１】
2010093439.tif 000003
【００３７】
この（１）式は、斥力の考えに基づいた定義である。ドット間の距離が近くなると分散性が急激に悪化する。そこで、計算領域８０１内の２つのドットdot＿ij、dot＿klの間の分散度scrを（１）式のようにして定義している。
ＣＰＵ２０６は、着目ドットdot＿i1と、着目ドットdot＿i1を除く対象領域８０２の全ドットとの間の分散度scrの総和sum1を、以下の（２）式に従って計算する（ステップＳ８０３）。
【００３８】
【数２】
2010093439.tif 000004
【００３９】
ただし、（２）式においてｋ≠ｉである。
次に、ＣＰＵ２０６は、着目ドットdot＿i1と、従属ドットdot＿i2、dot＿i3、dot＿i4を除く対象領域８０２外の全ドットとの間の分散度scrの総和sum2を、以下の（３）式に従って計算する（ステップＳ８０３）。
【００４０】
【数３】
2010093439.tif 000005
【００４１】
ただし、（３）式において、ｋ≠ｉである。
次に、ＣＰＵ２０６は、従属ドットdot＿i2、dot＿i3、dot＿i4と、着目ドットdot＿i1を除く対象領域８０２内の全ドットとの間の分散度scrの総和sum3を、以下の（４）式に従って計算する（ステップＳ８０３）。
【００４２】
【数４】
2010093439.tif 000006
【００４３】
ただし、（４）式において、ｋ≠ｉである。
次に、ＣＰＵ２０６は、sum1の２倍にsum2とsum3とを加算した値sum＿scrを、を現在の着目ドットdot＿i1の分散度とする（ステップＳ８０４）。すなわち、ＣＰＵ２０６は、以下の（５）式の計算を行う。
sum＿scr＝２×sum1＋sum2＋sum3  ・・・（５）
【００４４】
ここで、sum1のみを２倍にしている理由について説明する。図１１は、着目ドットdot＿i1の分散度sum＿scrを説明する図である。
図１１において、着目ドットdot＿i1と一定距離以内に位置するドットを○で囲って示している。これら○で囲っているドットは、分散度に与える影響が特に大きいドットである。これら○で囲っているドットのうち、対象領域８０２内のドットを斜線のパターンで示し、対象領域８０２外のドットを網掛けのパターンで示している。sum1の計算では着目ドットdot＿i1と、対象領域８０２内のドットとの分散度を計算する。このため、着目ドットdot＿i1と、斜線のパターンで示したドットとの分散度が加算される。これに対してsum2では、着目ドットdot＿i1と、対象領域８０２外のドットとの分散度を計算する。このため、着目ドットdot＿i1と、網掛けのパターンのドットとの分散度が加算される。ここで、網掛けのパターンのドットと、対象領域８０２内で従属関係にあるドットを縦線のパターンで示す。これらのドットと着目ドットdot＿i1との分散度は、sum3の計算時に、ドットdot＿i2、dot＿i3、dot＿i4と、対象領域８０２内のドットとの分散度の計算で計算される。このため、着目ドットdot＿i1と斜線のパターンで示したドットのような位置関係にあるドットとの分散度は２回加算されることになる。このため、着目ドットdot＿i1と、対象領域８０２内のドットとの分散度の総和であるsum1を２倍にすることでドット同士の関係に偏りが生じないようにしている。
また、本実施形態では、マトリクスＭ１〜Ｍ４を４つ並べた領域を計算領域８０１とすることで、マトリクスの境界にドットが集中しないようにしている。
このように定義した分散度sum＿scrが小さいほど、ドット配置の分散性が良いということになる。
以上のように本実施形態では、分散度sum1、sum2、sum3に、ドットの位置する領域によって異なる重みを積算し、それらの総和（＝２×sum1＋sum2＋sum3）を、領域分散度（着目ドットdot＿i1の分散度sum＿scr）とする。
【００４５】
次に、ＣＰＵ２０６は、分散度sum＿scrをmin＿scrにセットする。そして、ＣＰＵ２０６は、着目ドットdot＿i1の座標（cx＿i1,cy＿i1）〜（cx＿i4,cy＿i4）を（mx＿c1,my＿c1）〜（mx＿c4,my＿c4）にセットする（ステップＳ８０５）。
次に、ＣＰＵ２０６は、着目ドットdot＿i1のｘ座標cx＿i1に１を加算する（ステップＳ８０６）。そして、ＣＰＵ２０６は、ｘ座標cx＿i1に１が加算された着目ドットdot＿i1を用いてsum1、sum2、sum3を（２）式〜（４）式に従って計算し、分散度sum＿scrを（５）式に従って計算する（ステップＳ８０７、Ｓ８０８）。
次に、ＣＰＵ２０６は、ステップＳ８０８で求めた分散度sum＿scrよりも、ステップＳ８０５でセットしたmin＿scrが大きいか否かを判定する（ステップＳ８０９）。この判定の結果、sum＿scr＜min＿scrであれば、ＣＰＵ２０６は、現在の分散度sum＿scrをmin＿scrにセットする（ステップＳ８１０）。また、ＣＰＵ２０６は、現在の着目ドットdot＿i1の座標（cx＿i1,cy＿i1）〜（cx＿i4,cy＿i4）を（mx＿c1,my＿c1）〜（mx＿c4,my＿c4）にセットする（ステップＳ８１０）。その後ステップＳ８１１へ進む。
このように本実施形態では、ステップＳ８０５、Ｓ８１０において、着目ドットdot＿i1の座標を決定する際に、その従属ドットdot＿i2、dot＿i3、dot＿i4の座標も決定する。そして、これらのドットの配置を、着目ドットdot＿i1の移動量に合わせて同時に移動する。
一方、ステップＳ８０９の判定の結果、sum＿scr≧min＿scrであれば、そのままステップＳ８１１へ進む。
【００４６】
そして、ＣＰＵ２０６は、着目ドットdot＿i1のｘ座標cx＿i1が、cx＿i1＜3×m/2-1の関係を満たすか否かを判定する（ステップＳ８１１）。この判定の結果、着目ドットdot＿i1のｘ座標cx＿i1が、cx＿i1＜3×m/2-1の関係を満たす場合、ＣＰＵ２０６は、着目ドットdot＿i1のｘ座標cx＿i1に１を加算し（ステップＳ８１５）、前述したステップＳ８０７に戻る。
一方、ステップＳ８１１において、着目ドットdot＿i1のｘ座標cx＿i1が、cx＿i1＜3×m/2-1の関係を満たさない場合（cx＿i1＝3×m/2-1の場合）、ＣＰＵ２０６は、次の処理を行う。すなわち、ＣＰＵ２０６は、着目ドットdot＿i1のｙ座標cy＿i1が、cy＿i1＜3×m/2-1の関係を満たすか否かを判定する。この判定の結果、着目ドットdot＿i1のｙ座標cy＿i1が、cy＿i1＜3×m/2-1の関係を満たす場合、ＣＰＵ２０６は、着目ドットdot＿i1のｙ座標cy＿i1に１を加算する（ステップＳ８１６）。また、ＣＰＵ２０６は、着目ドットdot＿i1のｘ座標cx＿i1に１をセットする（ステップＳ８１６）。そして、ステップＳ８０７に戻る。
【００４７】
一方、ステップＳ８１２において、着目ドットdot＿i1のｙ座標cy＿i1が、cy＿i1＜3×m/2-1の関係を満たさない場合（cy＿i1＝3×m/2-1の場合）には、ループを終了し、ステップＳ８１３へ進む。そして、ＣＰＵ２０６は、ループ終了時の（mx＿c1,my＿c1）〜（mx＿c4,my＿c4）を、ドットdot＿i1、dot＿i2 、dot＿i3 、dot＿i4の新しい座標（x＿i1,y＿i1）〜（x＿i4,y＿i4）としてセットする。
以上の処理によって着目ドットdot＿i1は、対象領域８０２内の全ての位置の中で分散度sum＿scrが最小の位置、すなわち最も分散性が良い位置に移動する。
以上のように本実施形態では、例えば、ステップＳ８０４、Ｓ８０５、Ｓ８０８、Ｓ８１０、Ｓ８１３の処理を行うことによりドット配置手段の一例が実現される。
【００４８】
次に、ＣＰＵ２０６は、変数ｉがドット数ｎと等しいか否かを判定する（ステップＳ８１４）。この判定の結果、変数ｉがドット数ｎよりも小さければ（ｉ＜ｎであれば）、ＣＰＵ２０６は、変数iに１を加算して（ステップＳ８１７）、ステップＳ８０２に戻る。そして、次のＩＤ番号のドットに対してステップＳ８０２以降の処理を行う。
一方、変数ｉがドット数ｎと等しければ（ｉ＝ｎであれば）全てのドットの位置の最適化が終了したとして配置最適化処理を完了する。
【００４９】
図１２は、図７に示した初期配置のドットに対して配置最適化計算を行った後の計算領域８０１内のドットの配置の一例を示す図である。図１２に示すように、分散性が良好な状態でドットが配置されていることが分かる。
尚、以上のような配置最適化計算を何度か繰り返すことでさらにドット配置を最適化することが可能である。経験的には、配置最適化計算を３回繰り返すと最適なドット配置にほぼ収束する。
【００５０】
以上の方法によって配置されたドットに対してドット成長パターンを生成する。ドット成長パターンの生成方法の一例について説明する。
まず、ＣＰＵ２０６は、図１２に示したドット配置に対して対象領域８０２のエリアを切り出し、このエリアを新しいマトリクス領域とする（ステップＳ５０８）。図１３は、配置最適化計算によってドットが配置された計算領域８０１から対象領域８０２を切り出すことにより得られた新しいマトリクス領域の一例を示す図である。
【００５１】
ＣＰＵ２０６は、このマトリクス領域内のドットの位置を母点にしたvoronoi分割を行って、マトリクス領域の分割を行う（ステップＳ５０９）。図１４は、分割されたマトリクス領域の一例を示す図である。次に、ＣＰＵ２０６は、分割を行った各領域に対して、母点を中心とした相似形の形状で各領域内にドット成長パターンを形成する（ステップＳ５１０）。図１５は、ある面積率に対するドット成長パターンの一例を概念的に示し、図１６は、面積率が２５％（階調値６４／２５５）、５０％（階調値１２８／２５５）、７５％（階調値１９２／２５５）に対するドット成長パターンの一例を示す図である。
本実施形態では、ＣＰＵ２０６は、マトリクスの４倍の解像度でドット成長パターンを形成する。
図１６の黒で示した領域が形成されたドット成長パターンを表す。図１６（ａ）、図１６（ｂ）、図１６（ｃ）は、夫々、面積率が２５％（階調値６４/２５５）、５０％（階調値１２８／２５５）、７５％（階調値１９２／２５５）のドット成長パターンの一例を表す。
このドット成長パターンは面積率（階調値）毎に形成され、ハイライトからシャドウまでのドット成長パターンが生成される（ステップＳ５１０）。
以上のように本実施形態では、例えば、ステップＳ５１０の処理を行うことによりドット成長パターン生成手段の一例が実現される。
【００５２】
その後、ＣＰＵ２０６は、各階調のドット成長パターンから、マトリクスの要素毎に要素内のドットの面積比に応じて０〜１６の値を算出する（ステップＳ５１１）。このようにして算出されたマトリクスを出力マトリクスと呼ぶ。
図１７は、ドット成長パターンから算出された出力マトリクスの一例を示す図である。具体的に、図１７（ａ）、図１７（ｂ）、図１７（ｃ）は、夫々、面積率２５％（階調値６４／２５５）、５０％（階調値１２８／２５５）、７５％（階調値１９２／２５５）のドット成長パターンから生成された出力マトリクスの一例を表す。
【００５３】
最後に、ＣＰＵ２０６は、閾値マトリクスを生成する（ステップＳ５１２）。ＣＰＵ２０６は、以上のようにして生成した各階調毎の出力マトリクス１７００ａ〜１７００ｃに対して、階調値を入力値、出力マトリクスを出力値とするような閾値を、マトリクスの要素毎に算出する。
具体的に、ＣＰＵ２０６は、まず、マトリクスの要素毎に、出力マトリクスの値が０から１に変化する時の入力値を探索し、この探索によって得られた要素毎の入力値を閾値マトリクスＭＴＲ０の当該要素の閾値とする。例えば出力マトリクス１７００のある要素が入力値２０に対して０、入力値２１に対して１であれば、閾値マトリクスＭＴＲ０のこの要素の閾値は２０となる。
同様に出力マトリクス１７００の値が1から２、２から３、…、１５から１６へ変化する時の入力値を探索し、閾値マトリクスＭＴＲ１〜１５を生成する。
以上の処理によって本実施形態の閾値マトリクスＭＴＲ０〜１５が生成される。
以上のように本実施形態では、例えば、ステップＳ５１２の処理を行うことにより閾値マトリクス生成手段の一例が実現される。
【００５４】
以上のように本実施形態では、乱数によって定められた初期配置に従ってドットが配置された２×２のマトリクス領域を計算領域８０１とし、その中央部分の１つのマトリクス領域に等しい領域を対象領域８０２とする。４つのマトリクス領域には、夫々対応する位置にドットが１つずつ存在する。そのうちの１つを着目ドットdot＿i1とし、残りの３つを従属ドットdot＿i2、dot＿i3、dot＿i4とする。そして、着目ドットdot＿i1の分散度sum＿scrが最小になる位置にドットを移動すると共に、従属ドットdot＿i2、dot＿i3、dot＿i4も着目ドットdot＿i1の位置に合わせて着目ドットdot＿i1の移動量に合わせて同時に移動する。着目ドットdot＿i1の分散度sum＿scrを求める際には、各ドット同士の分散度を加算するが、ドットの位置する領域に応じて異なる重みを加算して、各ドット同士の分散度を加算する。
したがって、マトリクスに配置されるドットに偏りが生じることを従来よりも低減することができ、分散度の良好なドット配置を生成することが可能となる。よって、ドット配置を中心としたドット成長を実行することによって安定したドット形成が可能となり、粒状性が良好となり、高画質化が可能なディザ処理を行うことができる。
【００５５】
尚、本実施形態では、ドットの形成にvoronoi分割を使用し、相似形の形状でドットを形成したが、ドットを形成する方法はこれに限らない。また、ディザマトリクスのサイズや、中間調処理部２０４で入力、出力される階調数は、画像形成装置１６０４の特性や濃度補正テーブル、ディザマトリクスに許容されるメモリサイズ、所望する画質レベル等に応じて最適なものを選べばよい。
【００５６】
（本発明の他の実施形態）
前述した本発明の実施形態におけるデータ処理装置、データ処理方法を構成する各手段、並びにデータ処理方法の各ステップは、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００５７】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００５８】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図６、図１０に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接、あるいは遠隔から供給するものを含む。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【００５９】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００６０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００６１】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【００６２】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【００６３】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００６４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００６５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００６６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【００６７】
尚、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００６８】
【図１】本発明の実施形態を示し、画像形成装置の構成の一例を示す図である。
【図２】本発明の実施形態を示し、画像形成装置の画像処理部の構成の一例を示すブロック図である。
【図３】本発明の実施形態を示し、画像形成部の構成の一例を示すブロック図である。
【図４】本発明の実施形態を示し、中間調処理部の構成の一例を示すブロック図である。
【図５】本発明の実施形態を示し、ディザマトリクス格納部に格納されている閾値マトリクスの一例を示す図である。
【図６】本発明の実施形態を示し、閾値マトリクスを生成する際の処理の一例を説明するフローチャートである。
【図７】本発明の実施形態を示し、マトリクスのサイズｍが１６、ドット数ｎが２６の場合のドットの初期配置の一例を示す図である。
【図８】本発明の実施形態を示し、各ドットの一例を示す図である。
【図９】本発明の実施形態を示し、各ドットの座標の一例を示す図である。
【図１０】本発明の実施形態を示し、配置最適化計算の処理の一例を説明するフローチャートである。
【図１１】本発明の実施形態を示し、着目ドットの分散度を説明する図である。
【図１２】本発明の実施形態を示し、図７に示した初期配置のドットに対して配置最適化計算を行った後の計算領域内のドットの配置の一例を示す図である。
【図１３】本発明の実施形態を示し、配置最適化計算によってドットが配置された計算領域から対象領域を切り出すことにより得られた新しいマトリクス領域の一例を示す図である。
【図１４】本発明の実施形態を示し、分割されたマトリクス領域の一例を示す図である。
【図１５】本発明の実施形態を示し、ある面積率に対するドット成長パターンの一例を概念的に示す図である。
【図１６】本発明の実施形態を示し、面積率が２５％、５０％、７５％に対するドット成長パターンの一例を示す図である。
【図１７】本発明の実施形態を示し、ドット成長パターンから算出された出力マトリクスの一例を示す図である。
【図１８】従来技術を示し、ドット集中型の組織的ディザ法を説明する図である。
【図１９】従来技術を示し、既に配置されているドットパターンにドットを追加する従来の方法を説明する図である。
【図２０】従来技術を示し、ドットを移動させる従来の方法を説明する図である。
【符号の説明】
【００６９】
２０１  カラーマッチング処理部
２０２  色分解処理部
２０３  濃度補正書リブ
２０４  中間処理部
２０５  ＰＷＭ処理部
２０６  ＣＰＵ
２０７  ＲＡＭ
２０８  ＲＯＭ
１６０１  ホストＰＣ
１６０２  画像処理部
１６０３  画像形成部
１６０４  画像形成装置
【図１】
2010093439.tif 000007
【図２】
2010093439.tif 000008
【図３】
2010093439.tif 000009
【図４】
2010093439.tif 000010
【図５】
2010093439.tif 000011
【図６】
2010093439.tif 000012
【図７】
2010093439.tif 000013
【図８】
2010093439.tif 000014
【図９】
2010093439.tif 000015
【図１０】
2010093439.tif 000016
【図１１】
2010093439.tif 000017
【図１２】
2010093439.tif 000018
【図１３】
2010093439.tif 000019
【図１４】
2010093439.tif 000020
【図１５】
2010093439.tif 000021
【図１６】
2010093439.tif 000022
【図１７】
2010093439.tif 000023
【図１８】
2010093439.tif 000024
【図１９】
2010093439.tif 000025
【図２０】
2010093439.tif 000026