(57)【要約】【課題】誤差拡散処理によって発生する画質劣化を低減させるのに好適な画像処理装置、画像処理プログラム及び画像処理方法、印刷装置、その制御プログラム及びその制御方法、印刷用データ生成装置、プログラム及び方法、並びに表示装置、その装置制御プログラム及びその制御方法を提供する装置を提供する。【解決手段】画像処理装置１００を、Ｍ値（Ｍ≧３）の画像データを、所定数の画素データからなる複数の画像データ領域に分割すると共に、当該複数の画像データ領域を複数のグループに区分するグループ生成部１１と、グループ化された画像データに対してＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理部１２とを含んだ構成とし、各グループ間の画像データ領域が交差するようにグループ化すると共に、Ｎ値化処理において発生する誤差を各グループで異なる方向となる向きの周辺の複数の未処理画素データに拡散する。【選択図】      図１
2006229928.tif 000002
【特許請求の範囲】
【請求項１】
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする画像処理装置。
【請求項２】
前記グループ化手段は、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記グループ化手段は、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記グループ化手段は、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴とする請求項１又は請求項２記載の画像処理装置。
【請求項５】
前記グループ化手段は、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散手段は、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴とする請求項１乃至請求項４のいずれか１項に記載の画像処理装置。
【請求項６】
前記誤差拡散手段は、所定の前記グループにおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴とする請求項１乃至請求項５のいずれか１項に記載の画像処理装置。
【請求項７】
前記画素データ選択手段における前記画素データを選択する処理、前記Ｎ値化手段における前記Ｎ値化処理及び前記誤差拡散手段における前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴とする請求項１乃至請求項５のいずれか１項に記載の画像処理装置。
【請求項８】
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする画像処理プログラム。
【請求項９】
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、を含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする画像処理方法。
【請求項１０】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成手段と、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷装置。
【請求項１１】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置を制御するのに使用する印刷装置制御プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷装置制御プログラム。
【請求項１２】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置を制御するのに使用する印刷装置制御方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷装置制御方法。
【請求項１３】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成する印刷用データ生成装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷用データ生成装置。
【請求項１４】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成するのに使用する印刷用データ生成プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷用データ生成プログラム。
【請求項１５】
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成するのに使用する印刷用データ生成方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする印刷用データ生成方法。
【請求項１６】
画像データに基づき、被表示部に画像を表示する表示装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする表示装置。
【請求項１７】
画像データに基づき、被表示部に画像を表示する表示装置を制御するのに使用する表示装置制御プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする表示装置制御プログラム。
【請求項１８】
画像データに基づき、被表示部に画像を表示する表示装置を制御するのに使用する表示装置制御方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示ステップと、を含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴とする表示装置制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｍ値（Ｍ≧３）の階調値で表現された画像データを、誤差拡散手法を用いてＮ値（Ｍ＞Ｎ≧２）化した画像データに変換する画像処理分野に係り、特に、誤差拡散処理によって発生する画質劣化を低減させるのに好適な画像処理装置、画像処理プログラム及び画像処理方法、これらのいずれかの画像処理技術を適用した、印刷装置、印刷装置制御プログラム及び印刷装置制御方法、印刷用データ生成装置、印刷用データ生成プログラム及び印刷用データ生成方法、並びに表示装置、表示装置制御プログラム及び表示装置制御方法に関する。
【背景技術】
【０００２】
従来、Ｍ値（Ｍ≧３）の階調値で表現された画像データを、ある閾値を境にＮ値（Ｍ＞Ｎ≧２）の画像データに変換する手法として閾値法がある。この閾値法では、Ｎ値の画像データの各画素値と所定の閾値とを比較し、画素値が閾値以上か、あるいは閾値より小さいかで、画素値をＮ種類の値のいずれかに変換する。しかしながら、閾値法では、画素値と変換後の値との差を捨ててしまうので、この捨てられた分の値の情報を失ったＮ値の画像データが生成されてしまい、その結果、画像によってはその大部分が階調を失うなど画質の劣化が著しくなるという問題があった。
【０００３】
また、従来、上記閾値法の問題に対して、Ｍ値の画像データをＮ値化する際に、従来の閾値法のように画素値と変換後の値との差を捨ててしまうのではなく、誤差としてこれから処理する複数の未処理の画素に拡散させて活用するようにした誤差拡散法という技術が考案されている。この誤差拡散法を用いることによって、従来は完全に失われていた情報が周辺の画素に拡散されて残ることになり、従来の閾値法と比較してＮ値化後の画質を向上することが可能である。しかしながら、例えば、従来のＦｌｏｙｄ＆Ｓｔｅｉｎｂｅｒｇ型の誤差拡散法においては、画素の各行毎又は各列毎に順番に各画素を２値化処理し、当該２値化処理で発生した誤差を、全画素において同じ方向の未処理画素に拡散するため、誤差の拡散範囲が一意的になり、特にグラデーション画像等の階調が段階的に変化する画像において画質劣化が目立つという問題があった。
【０００４】
そのため、上記Ｆｌｏｙｄ＆Ｓｔｅｉｎｂｅｒｇ型などの規則的な方向に誤差拡散を行う誤差拡散法における問題点を解決するための技術として、特許文献１に記載の画像処理装置がある。
この画像処理装置は、誤差拡散法を用いた画像処理において、目障りな模様の発生が抑制された擬似中間調画像を作成することを目的としており、中間調画像をｎ本の画像ラインからなる複数の領域に分割し、この各領域を、画像ラインの先端から末端に向かって、ｎ本の画像ラインを横切るようにしてジグザグ状に、隣接する画素をたどって、順次２値化処理を行うようになっている。これにより、上記従来の誤差拡散法とは異なり、例え規則的な２値化が行われたとしても、領域毎に分断された処理となるため、模様も領域の境界部分において連続性がなくなり、上記した目障りで規則的な模様も目立ちにくくなる。
【特許文献１】特開平９−１３５３５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１記載の画像処理装置においては、処理画素の移動方向を各ライン毎に切り替えているだけに過ぎず、誤差の拡散される方向は、概ね各ラインの１方向（例えば、下方向（複数行の画素のラインにおける誤差拡散処理の開始ライン（上から１行目）から終了ライン（一番下の行）へと向かう方向））の未処理画素となり、誤差の拡散性はあまり向上しないため、上記したグラデーション画像等のように、誤差拡散によって画質劣化の影響を受けやすい画像の画質を向上させるには十分とは言えないものがある。
【０００６】
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、誤差拡散処理によって発生する画質劣化を低減させるのに好適な画像処理装置、画像処理プログラム及び画像処理方法、これらのいずれかの画像処理技術を適用した、印刷装置、印刷装置制御プログラム及び印刷装置制御方法、印刷用データ生成装置、印刷用データ生成プログラム及び印刷用データ生成方法、並びに表示装置、表示装置制御プログラム及び表示装置制御方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
〔形態１〕  上記目的を達成するために、形態１の画像処理装置は、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【０００８】
このような構成であれば、画像データ取得手段によって、Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得することが可能であり、グループ化手段によって、前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分することが可能であり、画素データ選択手段によって、前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択することが可能であり、Ｎ値化処理手段によって、選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うことが可能であり、誤差拡散手段によって、前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散することが可能である。
【０００９】
更に、上記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することが可能である。
従って、画像データを複数の画像データ領域のグループに分け、各グループ毎にＮ値化処理を行うと共に、各グループにおいて発生する差分（誤差）の拡散方向を、２個以上のグループにおいてそれぞれが異なる方向とするので、差分（誤差）の伝搬方向が多方向となり、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００１０】
ここで、上記画像データ取得手段は、スキャナ手段などの光学的読み取り手段などから入力された画像データを取得したり、ＬＡＮやＷＡＮ等のネットワークを介して外部装置に記憶された画像データを受動的又は能動的に取得したり、印刷装置の有するＣＤドライブ、ＤＶＤドライブなどの駆動装置を介してＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなどの記録媒体から画像データを取得したり、画像処理装置の有する記憶装置に記憶された画像データを取得したりなどする。つまり、前記取得には、少なくとも入力、獲得、受信および読出が含まれる。以下、形態８の画像処理プログラム及び形態１５の画像処理方法、形態２２の印刷装置、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法、並びに形態６４の表示装置、形態７１の表示装置制御プログラム及び形態７８の表示装置制御方法において同じである。
【００１１】
また、上記画像データ領域とは、画像データを、１個以上の画素データから構成される領域単位で複数（Ｊ個）に分割した各領域のことであり、上記グループとは、Ｊ個の画像データ領域を、１個以上の画像データ領域で複数（Ｋ個）に区分した各区分に属する画像データ領域のことである。以下、形態８の画像処理プログラム及び形態１５の画像処理方法、形態２２の印刷装置、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法、並びに形態６４の表示装置、形態７１の表示装置制御プログラム及び形態７８の表示装置制御方法において同じである。
【００１２】
また、上記分割するとは、画像データを、画像をＪ個（Ｊ≧２）の領域に分割したときの当該分割した各領域毎のデータに分割することであり、上記区分するとは、各領域毎のデータを、Ｋ個（２≦Ｋ≦Ｊ）のグループにグループ化することである。例えば、画像データを４個の画像データ領域に分割し、これを２個のグループに区分する場合は、画像を４つの領域に分割して、画像データを４つの領域の各領域に対応する画素データの組（画像データ領域）に分割する。そして、この４個の画像データ領域を、２個を１グループとした２つのグループに区分するか、又は画像データ領域３個を１グループ、残りの１個を１グループとした２つのグループに区分する。以下、形態８の画像処理プログラム及び形態１５の画像処理方法、形態２２の印刷装置、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法、並びに形態６４の表示装置、形態７１の表示装置制御プログラム及び形態７８の表示装置制御方法において同じである。
【００１３】
また、上記所定の閾値は、例えば、印刷装置に用いる画像データに対して画像処理を行う場合は、画像データの濃度値（又は輝度値）の範囲を、印刷装置の有する印刷ヘッドが形成するドットの大きさの種類数で等分に分割して各ドットの大きさ毎に設定されるものである。他にも、印刷ヘッドが形成するドットの大きさの種類毎に予め設定された公知のドット発生確率を前記所定の閾値として用いることが可能である。つまり、画像処理の対象となる画像データの用途に応じて設定されるものである。以下、形態８の画像処理プログラム及び形態１５の画像処理方法、形態２２の印刷装置、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法、並びに形態６４の表示装置、形態７１の表示装置制御プログラム及び形態７８の表示装置制御方法において同じである。
【００１４】
また、上記それぞれ異なる方向は、例えば、２個以上のグループのそれぞれが他のグループとは異なる方向となる方向、２個以上のグループにおける、隣り合う２つのグループにおいてはそれぞれが異なる方向となり、隣り合わないグループについては他のグループと同じ方向となる方向などがある。なお、斜め方向については、例えば、同じ斜め右上方向のグループが２個以上あったとしても、各グループの基準位置からの斜め方向の角度が少しでも異なれば、それぞれ異なる方向となる。以下、形態８の画像処理プログラム及び形態１５の画像処理方法、形態２２の印刷装置、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法、並びに形態６４の表示装置、形態７１の表示装置制御プログラム及び形態７８の表示装置制御方法において同じである。
【００１５】
〔形態２〕  更に、形態２の画像処理装置は、形態１の画像処理装置において、
前記グループ化手段は、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、それぞれのグループにおいて、各画像データ領域が交差するようにグループ化した画像データに対し、２個以上のグループでそれぞれ差分（誤差）の拡散方向が異なるように差分（誤差）を未処理の画素データに拡散することが可能となるので、交差した部分で差分（誤差）の拡散方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００１６】
ここで、上記各画像データ領域の画像を交差するとは、Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、各グループ間において互い違いとなる配置とすることで、例えば、２個のグループの場合は、この２個のグループにおける各グループの画像データ領域の一方の画像と他方の画像とが交互に並べられた状態となることである。以下、形態９の画像処理プログラム及び形態１６の画像処理方法、形態２３の印刷装置、形態３０の印刷装置制御プログラム及び形態３７の印刷装置制御方法、形態４４の印刷用データ生成装置、形態５１の印刷用データ生成プログラム及び形態５８の印刷用データ生成方法、並びに形態６５の表示装置、形態７２の表示装置制御プログラム及び形態７９の表示装置制御方法において同じである。
【００１７】
〔形態３〕  更に、形態３の画像処理装置は、形態２の画像処理装置において、
前記グループ化手段は、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
【００１８】
このような構成であれば、グループ化後の画像において、各画像データ領域が、２個のグループにおいてお互いが格子を形成するように互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００１９】
〔形態４〕  更に、形態４の画像処理装置は、形態１又は形態２のいずれか１の画像処理装置において、
前記グループ化手段は、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
【００２０】
このような構成であれば、グループ化後の画像において、例えば、各行単位又は列単位の画像データ領域が、２個のグループ間で互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００２１】
〔形態５〕  更に、形態５の画像処理装置は、形態１乃至形態４のいずれか１の画像処理装置において、
前記グループ化手段は、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散手段は、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
【００２２】
このような構成であれば、２個のグループにおいてそれぞれ反対向きとなる方向にある画素データに対して差分（誤差）を拡散できるので、差分（誤差）の伝搬方向を多方向且つ２つのグループで重ならないようにすることが可能となるので、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００２３】
ここで、上記拡散方向とは、例えば、誤差拡散マトリクスに基づく注目画素（選択画素）の重みベクトルの方向のことである。ここで、「誤差拡散マトリクス」とは、Ｎ値化処理において上記Ｍ値の画素データをＮ値に変換した際に、変換後のＮ値と変換前のＭ値との差分（誤差）を、その画素データの周辺にあるＮ値化処理が未処理の画素データに拡散（分配）する（これを、一般に誤差拡散法という）際に、当該拡散元の画素データに対する拡散対象の画素データの位置（拡散方向）を示す情報（相対位置情報など）、拡散対象の各画素データに対する拡散割合の情報等を収めたマトリクスであり、マトリクスの形状、マトリクスのサイズ（拡散対象の数）、拡散割合等がそれぞれ異なる様々な種類の誤差拡散マトリクスが存在する。
【００２４】
まず、前記重みベクトルを説明するために、基本ベクトルを設定する。図３９（ａ）に示すように、注目画素の座標を原点（０，０）とし、注目画素の右隣の画素の座標を（１，０）、注目画素の下隣の画素の座標を（０，１）とすると、注目画素の基本ベクトルは、下式（１）及び（２）で表すことができる（図３９（ａ）にも図示）。
【００２５】
【数１】
2006229928.tif 000003
【００２６】
ここで、図３９（ａ）に示す注目画素を、図３９（ｂ）の誤差拡散マトリクスに基づいてＮ値化する際は、Ｎ値化後の注目画素の画素値とＮ値化前の注目画素の画素値との差分を誤差として算出し、この誤差を、図３９（ｂ）の誤差拡散マトリクスで規定される重み（図３９（ｂ）における、注目画素のマスに対して、右隣、下隣、左斜め下及び右斜め下のマスにそれぞれ記載された数値）に従い、誤差拡散マトリクスで規定される位置に対応した周辺画素に拡散する。この周辺画素に拡散する際の割合（各マスに記載された数値）を誤差拡散割合という。
【００２７】
重みベクトルは、基本ベクトルに、前記各重みを乗じたベクトルであり、図３９（ｃ）に示す、画素（１）〜（４）に対する重みベクトルは、それぞれ下式（３）〜（６）に示すようになる。つまり、基本ベクトルに、図３９（ｂ）に示す、画素（１）の重み「７／１６」を乗じたものが下式（３）の重みベクトルとなり、同様に、画素（２）の重み「３／１６」を乗じたものが下式（４）の重みベクトルとなり、画素（３）の重み「５／１６」を乗じたものが下式（５）の重みベクトルとなり、画素（４）の重み「１／１６」を乗じたものが下式（６）の重みベクトルとなる。
【００２８】
【数２】
2006229928.tif 000004
【００２９】
そして、下式（７）に示す、上式（３）〜（６）に示す重みベクトルの総和（誤差拡散マトリクス全体の重みベクトル）の表す方向が、上記拡散方向となる。
【００３０】
【数３】
2006229928.tif 000005
【００３１】
なお、上記反対向きになる方向とは、上式（７）に示す誤差拡散マトリクス全体の重みベクトルの表す方向が正反対となる方向のことであり、注目画素に対する誤差拡散マトリクス全体の重みベクトルと、これと正反対となる重みベクトルとの間に下式（８）の関係が成り立つものをいう。
【００３２】
【数４】
2006229928.tif 000006
【００３３】
つまり、上式（７）の重みベクトルに負の定数αを乗じたものが、ベクトルの方向が正反対となる重みベクトルとなる。
以下、形態１２の画像処理プログラム及び形態１９の画像処理方法、形態２６の印刷装置、形態３３の印刷装置制御プログラム及び形態４０の印刷装置制御方法、形態４７の印刷用データ生成装置、形態５４の印刷用データ生成プログラム及び形態６１の印刷用データ生成方法、並びに形態６８の表示装置、形態７５の表示装置制御プログラム及び形態８３の表示装置制御方法において同じである。
【００３４】
〔形態６〕  更に、形態６の画像処理装置は、形態１乃至形態５のいずれか１の画像処理装置において、
前記誤差拡散手段は、所定の前記グループにおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
このような構成であれば、所定のグループで発生する差分（誤差）を、同じグループの画素データに加え、別のグループの画素データにも拡散するようになるので、局所的な差分（誤差）の拡散性が向上し、これにより、ほぼ一方向に拡散する従来技術と比較して、Ｎ値化処理後の画質を改善することができるという効果が得られる。
【００３５】
〔形態７〕  更に、形態７の画像処理装置は、形態１乃至形態５のいずれか１の画像処理装置において、
前記画素データ選択手段における前記画素データを選択する処理、前記Ｎ値化手段における前記Ｎ値化処理及び前記誤差拡散手段における前記誤差を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
【００３６】
このような構成であれば、各グループにおける上記処理を並列に行うことが可能となるので、１画素ずつ順番に画素データを選択し、Ｎ値化処理及び誤差拡散処理を行う従来技術と比較して、複数の画素データを並列に選択し、且つこれら複数の選択画素データに対してＮ値化処理及び誤差拡散処理を並列して行うことができるので、処理速度を向上できるという効果が得られる。
【００３７】
ここで、上記並列に行うとは、２つの処理を同時又は略同時に行うことである。以下、形態１４の画像処理プログラム及び形態２１の画像処理方法、形態２８の印刷装置、形態３５の印刷装置制御プログラム及び形態４２の印刷装置制御方法、形態４９の印刷用データ生成装置、形態５６の印刷用データ生成プログラム及び形態６３の印刷用データ生成方法、並びに形態７０の表示装置、形態７７の表示装置制御プログラム及び形態８４の表示装置制御方法において同じである。
【００３８】
〔形態８〕  一方、上記目的を達成するために、形態８の画像処理プログラムは、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態１の画像処理装置と同等の作用および効果が得られる。
【００３９】
〔形態９〕  更に、形態９の画像処理プログラムは、形態８の画像処理プログラムにおいて、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２の画像処理装置と同等の作用および効果が得られる。
【００４０】
〔形態１０〕  更に、形態１０の画像処理プログラムは、形態９の画像処理プログラムにおいて、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態３の画像処理装置と同等の作用および効果が得られる。
【００４１】
〔形態１１〕  更に、形態１１の画像処理プログラムは、形態８又は形態９の画像処理プログラムにおいて、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態４の画像処理装置と同等の作用および効果が得られる。
【００４２】
〔形態１２〕  更に、形態１２の画像処理プログラムは、形態８乃至形態１１のいずれか１の画像処理プログラムにおいて、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態５の画像処理装置と同等の作用および効果が得られる。
【００４３】
〔形態１３〕  更に、形態１３の画像処理プログラムは、形態８乃至形態１２のいずれか１の画像処理プログラムにおいて、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６の画像処理装置と同等の作用および効果が得られる。
【００４４】
〔形態１４〕  更に、形態１４の画像処理プログラムは、形態８乃至形態１２のいずれか１の画像処理プログラムにおいて、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態７の画像処理装置と同等の作用および効果が得られる。
【００４５】
〔形態１５〕  一方、上記目的を達成するために、形態１５の画像処理方法は、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、を含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【００４６】
具体的には、上記各ステップは、例えば、ＲＯＭ等に記憶されたＢＩＯＳ等のシステムプログラムが、ＲＯＭに予め記憶された各種専用のコンピュータプログラム、あるいは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等の記憶媒体を介して、またはインターネット等の通信ネットワークを介して記憶装置にインストールされた各種専用のコンピュータプログラムをＲＡＭにロードし、そのＲＡＭにロードされたプログラムに記述された命令に従ってＣＰＵが各種リソースを駆使して演算処理を行うことで実現される。
これによって、形態１の画像処理装置と同等の作用効果が得られる。
【００４７】
〔形態１６〕  更に、形態１６の画像処理方法は、形態１５の画像処理方法において、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２の画像処理装置と同等の作用効果が得られる。
【００４８】
〔形態１７〕  更に、形態１７の画像処理方法は、形態１６の画像処理方法において、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態３の画像処理装置と同等の作用効果が得られる。
【００４９】
〔形態１８〕  更に、形態１８の画像処理方法は、形態１５又は形態１６の画像処理方法において、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
これによって、形態４の画像処理装置と同等の作用効果が得られる。
【００５０】
〔形態１９〕  更に、形態１９の画像処理方法は、形態１５乃至形態１８のいずれか１の画像処理方法において、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
これによって、形態５の画像処理装置と同等の作用効果が得られる。
【００５１】
〔形態２０〕  更に、形態２０の画像処理方法は、形態１５乃至形態１９のいずれか１の画像処理方法において、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
これによって、形態６の画像処理装置と同等の作用効果が得られる。
【００５２】
〔形態２１〕  更に、形態２１の画像処理方法は、形態１５乃至形態１９のいずれか１の画像処理方法において、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
これによって、形態７の画像処理装置と同等の作用効果が得られる。
【００５３】
〔形態２２〕  一方、上記目的を達成するために、形態２２の印刷装置は、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成手段と、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【００５４】
このような構成であれば、画像データ取得手段によって、Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得することが可能であり、グループ化手段によって、前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分することが可能であり、画素データ選択手段によって、前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択することが可能であり、Ｎ値化処理手段によって、選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うことが可能であり、誤差拡散手段によって、前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散することが可能であり、印刷用データ生成手段によって、前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成することが可能であり、印刷手段によって、前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷することが可能である。
【００５５】
更に、上記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することが可能である。
従って、画像データを複数の画像データ領域のグループに分け、各グループ毎にＮ値化処理を行うと共に、各グループにおいて発生する差分（誤差）の拡散方向を、２個以上のグループにおいてそれぞれが異なる方向とするので、差分（誤差）の伝搬方向が多方向となり、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００５６】
ここで、上記ドットとは、１または複数のノズルから吐出されたインクが印刷に用いられる媒体に着弾して形成される１つの領域をいう。また、「ドット」は面積が「ゼロ」ではなく、一定の大きさ（面積）をもつことは勿論、大きさごとに複数種類存するものである。但し、インクを吐出して形成されたドットは必ずしも真円になるとは限らない。例えば、楕円形などの真円以外の形状でドットが形成された場合は、その平均的な径をドット径として扱ったり、ある量のインクを吐出して形成されたドットの面積と等しい面積を有する真円の等価ドットを想定し、該等価ドットの径をドット径として扱ったりすることもある。また、濃度の異なるドットの打ち分け方法としては、例えば、ドットの大きさが同じで濃度が異なるドットを打つ方法、濃度が同じで大きさの異なるドットを打つ方法、濃度が同じでインクの吐出量が異なるドットであり、重ね打ちにより濃度を異ならせる方法などが考えられる。また、１つのノズルから吐出された１つのインク滴が分離して着弾してしまった場合も１つのドットとするが、２つのノズルまたは１つのノズルから時間を前後して形成された２つ以上のドットがくっついてしまった場合は、２つのドットが形成されたものとする。以下、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、並びに形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法において同じである。
【００５７】
また、上記ドット形成内容に関する情報とは、Ｎ値化後の画像データの各画素値に対する、ドットの有無（ノズルによりドットを形成する、形成しない）に関する情報と、形成する場合のドットのサイズ（例えば、大・中・小の３種類のいずれか）に関する情報等のノズルによってドットを形成する際に必要な情報から構成されるものであり、例えば、形成サイズが一種類しかない場合は、ドットの有無に関する情報だけで構成しても良い。以下、形態２９の印刷装置制御プログラム及び形態３６の印刷装置制御方法、並びに形態４３の印刷用データ生成装置、形態５０の印刷用データ生成プログラム及び形態５７の印刷用データ生成方法において同じである。
【００５８】
〔形態２３〕  更に、形態２３の印刷装置は、形態２２の印刷装置において、
前記グループ化手段は、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
【００５９】
このような構成であれば、それぞれのグループにおいて、各画像データ領域が交差するようにグループ化した画像データに対し、２個以上のグループでそれぞれ差分（誤差）の拡散方向が異なるように差分（誤差）を未処理の画素データに拡散することが可能となるので、交差した部分で差分（誤差）の拡散方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００６０】
〔形態２４〕  更に、形態２４の印刷装置は、形態２３の印刷装置において、
前記グループ化手段は、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
【００６１】
このような構成であれば、グループ化後の画像において、各画像データ領域が、２個のグループ間で格子を形成するように互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００６２】
〔形態２５〕  更に、形態２５の印刷装置は、形態２２又は形態２３の印刷装置において、
前記グループ化手段は、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
【００６３】
このような構成であれば、グループ化後の画像において、例えば、各行単位又は列単位の画像データ領域が、２個のグループ間で互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００６４】
〔形態２６〕  更に、形態２６の印刷装置は、形態２２乃至形態２５のいずれか１の印刷装置において、
前記グループ化手段は、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散手段は、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
【００６５】
このような構成であれば、２個のグループにおいてそれぞれ反対向きとなる方向にある画素データに対して差分（誤差）を拡散できるので、差分（誤差）の伝搬方向を多方向且つ２つのグループ間で重ならないようにすることが可能となるので、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００６６】
〔形態２７〕  更に、形態２７の印刷装置は、形態２２乃至形態２６のいずれか１の印刷装置において、
前記誤差拡散手段は、所定の前記グループにおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
【００６７】
このような構成であれば、所定のグループで発生する差分（誤差）を、同じグループの画素データに加え、別のグループの画素データにも拡散するようになるので、局所的な差分（誤差）の拡散性が向上し、これにより、ほぼ一方向に拡散する従来技術を適用した場合の印刷結果と比較して、印刷画質を改善することができるという効果が得られる。
【００６８】
〔形態２８〕  更に、形態２８の印刷装置は、形態２２乃至形態２６のいずれか１の印刷装置において、
前記画素データ選択手段における前記画素データを選択する処理、前記Ｎ値化手段における前記Ｎ値化処理及び前記誤差拡散手段における前記誤差を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
【００６９】
このような構成であれば、各グループにおける上記処理を並列に行うことが可能となるので、１画素ずつ順番に画素データを選択し、Ｎ値化処理及び誤差拡散処理を行う従来技術と比較して、複数の画素データを並列に選択し、且つこれら複数の選択画素データに対してＮ値化処理及び誤差拡散処理を並列して行うことができるので、処理速度を向上できるという効果が得られる。
【００７０】
〔形態２９〕  一方、上記目的を達成するために、形態２９の印刷装置制御プログラムは、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置を制御するのに使用する印刷装置制御プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【００７１】
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２２の印刷装置と同等の作用および効果が得られる。
【００７２】
〔形態３０〕  更に、形態３０の印刷装置制御プログラムは、形態２９の印刷装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２３の印刷装置と同等の作用および効果が得られる。
【００７３】
〔形態３１〕  更に、形態３１の印刷装置制御プログラムは、形態３０の印刷装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２４の印刷装置と同等の作用および効果が得られる。
【００７４】
〔形態３２〕  更に、形態３２の印刷装置制御プログラムは、形態２９又は形態３０の印刷装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２５の印刷装置と同等の作用および効果が得られる。
【００７５】
〔形態３３〕  更に、形態３３の印刷装置制御プログラムは、形態２９乃至形態３２のいずれか１の印刷装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２６の印刷装置と同等の作用および効果が得られる。
【００７６】
〔形態３４〕  更に、形態３４の印刷装置制御プログラムは、形態２９乃至形態３３のいずれか１の印刷装置制御プログラムにおいて、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２７の印刷装置と同等の作用および効果が得られる。
【００７７】
〔形態３５〕  更に、形態３５の印刷装置制御プログラムは、形態２９乃至形態３３のいずれか１の印刷装置制御プログラムにおいて、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２８の印刷装置と同等の作用および効果が得られる。
【００７８】
〔形態３６〕  一方、上記目的を達成するために、形態３６の印刷装置制御方法は、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置を制御するのに使用する印刷装置制御方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【００７９】
具体的には、上記各ステップは、例えば、ＲＯＭ等に記憶されたＢＩＯＳ等のシステムプログラムが、ＲＯＭに予め記憶された各種専用のコンピュータプログラム、あるいは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等の記憶媒体を介して、またはインターネット等の通信ネットワークを介して記憶装置にインストールされた各種専用のコンピュータプログラムをＲＡＭにロードし、そのＲＡＭにロードされたプログラムに記述された命令に従ってＣＰＵが各種リソースを駆使して印刷機構等のハードウェアの制御および演算処理を行うことで実現される。
これによって、形態２２の印刷装置と同等の作用効果が得られる。
【００８０】
〔形態３７〕  更に、形態３７の印刷装置制御方法は、形態３６の印刷装置制御方法において、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２３の印刷装置と同等の作用効果が得られる。
【００８１】
〔形態３８〕  更に、形態３８の印刷装置制御方法は、形態３７の印刷装置制御方法において、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２４の印刷装置と同等の作用効果が得られる。
【００８２】
〔形態３９〕  更に、形態３９の印刷装置制御方法は、形態３６又は形態３７の印刷装置制御方法において、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
これによって、形態２５の印刷装置と同等の作用効果が得られる。
【００８３】
〔形態４０〕  更に、形態４０の印刷装置制御方法は、形態３６乃至形態３９のいずれか１の印刷装置制御方法において、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
これによって、形態２６の印刷装置と同等の作用効果が得られる。
【００８４】
〔形態４１〕  更に、形態４１の印刷装置制御方法は、形態３６乃至形態４０のいずれか１の印刷装置制御方法において、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
これによって、形態２７の印刷装置と同等の作用効果が得られる。
【００８５】
〔形態４２〕  更に、形態４２の印刷装置制御方法は、形態３６乃至形態４０のいずれか１の印刷装置制御方法において、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
これによって、形態２８の印刷装置と同等の作用効果が得られる。
【００８６】
〔形態４３〕  一方、上記目的を達成するために、形態４３の印刷用データ生成装置は、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成する印刷用データ生成装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【００８７】
すなわち、本形態は、前記印刷装置のような実際に印刷を実行するための印刷手段を含むのではなく、Ｍ値の画像データに基づいて印刷ヘッドの特性に応じた印刷用データを生成するようにしたものである。
従って、形態２２の印刷装置と同様の作用及び効果を得ることができると共に、例えば、本形態で生成した印刷用データを印刷装置に送るだけで当該印刷装置で印刷処理を実行できる構成とすることが可能であり、このような構成にすることで、専用の印刷装置を用意することなく、例えば、既存のインクジェット方式の印刷装置をそのまま利用することができる。
また、パソコンなどの汎用の情報処理装置を利用することができるため、例えば、パソコンなどの印刷指示装置とインクジェットプリンタとからなる既存の印刷システムをそのまま活用することができる。
【００８８】
〔形態４４〕  更に、形態４４の印刷用データ生成装置は、形態４３の印刷用データ生成装置において、
前記グループ化手段は、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２３の印刷装置と同等の作用及び効果が得られる。
【００８９】
〔形態４５〕  更に、形態４５の印刷用データ生成装置は、形態４４の印刷用データ生成装置において、
前記グループ化手段は、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２４の印刷装置と同等の作用及び効果が得られる。
【００９０】
〔形態４６〕  更に、形態４６の印刷用データ生成装置は、形態４３又は形態４４の印刷用データ生成装置において、
前記グループ化手段は、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
これによって、形態２５の印刷装置と同等の作用及び効果が得られる。
【００９１】
〔形態４７〕  更に、形態４７の印刷用データ生成装置は、形態４３乃至形態４６のいずれか１の印刷用データ生成装置において、
前記グループ化手段は、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散手段は、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
これによって、形態２６の印刷装置と同等の作用及び効果が得られる。
【００９２】
〔形態４８〕  更に、形態４８の印刷用データ生成装置は、形態４３乃至形態４７のいずれか１の印刷用データ生成装置において、
前記誤差拡散手段は、所定の前記グループにおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
これによって、形態２７の印刷装置と同等の作用及び効果が得られる。
【００９３】
〔形態４９〕  更に、形態４９の印刷用データ生成装置は、形態４３乃至形態４７のいずれか１の印刷用データ生成装置において、
前記画素データ選択手段における前記画素データを選択する処理、前記Ｎ値化手段における前記Ｎ値化処理及び前記誤差拡散手段における前記誤差を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
これによって、形態２８の印刷装置と同等の作用及び効果が得られる。
【００９４】
〔形態５０〕  一方、上記目的を達成するために、形態５０の印刷用データ生成プログラムは、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成するのに使用する印刷用データ生成プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２２の印刷装置と同等の作用および効果が得られる。
【００９５】
〔形態５１〕  更に、形態５１の印刷用データ生成プログラムは、形態５０の印刷用データ生成プログラムにおいて、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２３の印刷装置と同等の作用および効果が得られる。
【００９６】
〔形態５２〕  更に、形態５２の印刷用データ生成プログラムは、形態５１の印刷用データ生成プログラムにおいて、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２４の印刷装置と同等の作用および効果が得られる。
【００９７】
〔形態５３〕  更に、形態５３の印刷用データ生成プログラムは、形態５０又は形態５１の印刷用データ生成プログラムにおいて、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２５の印刷装置と同等の作用および効果が得られる。
【００９８】
〔形態５４〕  更に、形態５４の印刷用データ生成プログラムは、形態５０乃至形態５３のいずれか１の印刷用データ生成プログラムにおいて、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２６の印刷装置と同等の作用および効果が得られる。
【００９９】
〔形態５５〕  更に、形態５５の印刷用データ生成プログラムは、形態５０乃至形態５４のいずれか１の印刷用データ生成プログラムにおいて、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２７の印刷装置と同等の作用および効果が得られる。
【０１００】
〔形態５６〕  更に、形態５６の印刷用データ生成プログラムは、形態５０乃至形態５４のいずれか１の印刷用データ生成プログラムにおいて、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態２８の印刷装置と同等の作用および効果が得られる。
【０１０１】
〔形態５７〕  一方、上記目的を達成するために、形態５７の印刷用データ生成方法は、
印刷に用いられる媒体に、ドットを形成可能なノズルを有する印刷ヘッドによって、前記媒体に画像を印刷するようにした印刷装置において使用される印刷用データを生成するのに使用する印刷用データ生成方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに対応する前記ノズルのドット形成内容に関する情報を規定した印刷用データを生成する印刷用データ生成ステップと、
前記印刷用データに基づき、前記印刷ヘッドによって前記画像を前記媒体に印刷する印刷ステップとを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【０１０２】
具体的には、上記各ステップは、例えば、ＲＯＭ等に記憶されたＢＩＯＳ等のシステムプログラムが、ＲＯＭに予め記憶された各種専用のコンピュータプログラム、あるいは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等の記憶媒体を介して、またはインターネット等の通信ネットワークを介して記憶装置にインストールされた各種専用のコンピュータプログラムをＲＡＭにロードし、そのＲＡＭにロードされたプログラムに記述された命令に従ってＣＰＵが各種リソースを駆使して演算処理を行うことで実現される。
これによって、形態２２の印刷装置と同等の作用効果が得られる。
【０１０３】
〔形態５８〕  更に、形態５８の印刷用データ生成方法は、形態５７の印刷用データ生成方法において、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２３の印刷装置と同等の作用効果が得られる。
【０１０４】
〔形態５９〕  更に、形態５９の印刷用データ生成方法は、形態５８の印刷用データ生成方法において、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態２４の印刷装置と同等の作用効果が得られる。
【０１０５】
〔形態６０〕  更に、形態６０の印刷用データ生成方法は、形態５７又は形態５８の印刷用データ生成方法において、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
これによって、形態２５の印刷装置と同等の作用効果が得られる。
【０１０６】
〔形態６１〕  更に、形態６１の印刷用データ生成方法は、形態５７乃至形態６０のいずれか１の印刷用データ生成方法において、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
これによって、形態２６の印刷装置と同等の作用効果が得られる。
【０１０７】
〔形態６２〕  更に、形態６２の印刷用データ生成方法は、形態５７乃至形態６１のいずれか１の印刷用データ生成方法において、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
これによって、形態２７の印刷装置と同等の作用効果が得られる。
【０１０８】
〔形態６３〕  更に、形態６３の印刷用データ生成方法は、形態５７乃至形態６１のいずれか１の印刷用データ生成方法において、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
これによって、形態２８の印刷装置と同等の作用効果が得られる。
【０１０９】
〔形態６４〕  一方、上記目的を達成するために、形態６４の表示装置は、
画像データに基づき、被表示部に画像を表示する表示装置であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得手段と、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化手段と、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択手段と、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理手段と、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散手段と、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示手段と、を備え、
前記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【０１１０】
このような構成であれば、画像データ取得手段によって、Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される画像データを取得することが可能であり、グループ化手段によって、前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分することが可能であり、画素データ選択手段によって、前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択することが可能であり、Ｎ値化処理手段によって、選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うことが可能であり、誤差拡散手段によって、前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散することが可能であり、表示手段によって、前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示することが可能である。
【０１１１】
更に、上記誤差拡散手段は、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することが可能である。
従って、画像データを複数の画像データ領域のグループに分け、各グループ毎にＮ値化処理を行うと共に、各グループにおいて発生する差分（誤差）の拡散方向を、２個以上のグループにおいてそれぞれが異なる方向とするので、差分（誤差）の伝搬方向が多方向となり、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１１２】
〔形態６５〕  更に、形態６５の表示装置は、形態６４の表示装置において、
前記グループ化手段は、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、それぞれのグループにおいて、各画像データ領域が交差するようにグループ化した画像データに対し、２個以上のグループでそれぞれ差分（誤差）の拡散方向が異なるように差分（誤差）を未処理の画素データに拡散することが可能となるので、交差した部分で差分（誤差）の拡散方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１１３】
〔形態６６〕  更に、形態６６の表示装置は、形態６５の表示装置において、
前記グループ化手段は、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
【０１１４】
このような構成であれば、グループ化後の画像において、各画像データ領域が、２個のグループ間で格子を形成するように互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１１５】
〔形態６７〕  更に、形態６７の表示装置は、形態６４又は形態６５の表示装置において、
前記グループ化手段は、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
【０１１６】
このような構成であれば、グループ化後の画像において、例えば、各行単位又は列単位の画像データ領域が、２個のグループ間で互い違いに配置された状態となるので、このようにグループ化された画像データに対し、２個以上のグループで差分（誤差）の拡散方向がそれぞれ異なるように差分（誤差）を伝搬することが可能となるので、交差した部分で差分（誤差）の伝搬方向が多方向且つ隣接する他のグループと重ならない状態になり、画質を均一化することができるので、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１１７】
〔形態６８〕  更に、形態６８の表示装置は、形態６４乃至形態６７のいずれか１の表示装置において、
前記グループ化手段は、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散手段は、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
【０１１８】
このような構成であれば、２個のグループにおいてそれぞれ反対向きとなる方向にある画素データに対して差分（誤差）を拡散できるので、差分（誤差）の伝搬方向を多方向且つ２つのグループ間で重ならないようにすることが可能となるので、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１１９】
〔形態６９〕  更に、形態６９の表示装置は、形態６４乃至形態６８のいずれか１の表示装置において、
前記誤差拡散手段は、所定の前記グループにおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
【０１２０】
このような構成であれば、所定のグループで発生する差分（誤差）を、同じグループの画素データに加え、別のグループの画素データにも拡散するようになるので、局所的な差分（誤差）の拡散性が向上し、これにより、ほぼ一方向に拡散する従来技術を適用した場合の表示結果と比較して、表示画質を改善することができるという効果が得られる。
【０１２１】
〔形態７０〕  更に、形態７０の表示装置は、形態６４乃至形態６８のいずれか１の表示装置において、
前記画素データ選択手段における前記画素データを選択する処理、前記Ｎ値化手段における前記Ｎ値化処理及び前記誤差拡散手段における前記誤差を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
【０１２２】
このような構成であれば、各グループにおける上記処理を並列に行うことが可能となるので、１画素ずつ順番に画素データを選択し、Ｎ値化処理及び誤差拡散処理を行う従来技術と比較して、複数の画素データを並列に選択し、且つこれら複数の選択画素データに対してＮ値化処理及び誤差拡散処理を並列して行うことができるので、処理速度を向上できるという効果が得られる。
【０１２３】
〔形態７１〕  一方、上記目的を達成するために、形態７１の表示装置制御プログラムは、
画像データに基づき、被表示部に画像を表示する表示装置を制御するのに使用する表示装置制御プログラムであって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示ステップとからなる処理をコンピュータに実行させるのに使用するプログラムを含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６４の表示装置と同等の作用および効果が得られる。
【０１２４】
〔形態７２〕  更に、形態７２の表示装置制御プログラムは、形態７１の表示装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６５の表示装置と同等の作用および効果が得られる。
【０１２５】
〔形態７３〕  更に、形態７３の表示装置制御プログラムは、形態７２の表示装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６６の表示装置と同等の作用および効果が得られる。
【０１２６】
〔形態７４〕  更に、形態７４の表示装置制御プログラムは、形態７１又は形態７２の表示装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６７の表示装置と同等の作用および効果が得られる。
【０１２７】
〔形態７５〕  更に、形態７５の表示装置制御プログラムは、形態７１乃至形態７４のいずれか１の表示装置制御プログラムにおいて、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６８の表示装置と同等の作用および効果が得られる。
【０１２８】
〔形態７６〕  更に、形態７６の表示装置制御プログラムは、形態７１乃至形態７５のいずれか１の表示装置制御プログラムにおいて、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態６９の表示装置と同等の作用および効果が得られる。
【０１２９】
〔形態７７〕  更に、形態７７の表示装置制御プログラムは、形態７１乃至形態７５のいずれか１の表示装置制御プログラムにおいて、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
このような構成であれば、コンピュータによってプログラムが読み取られ、読み取られたプログラムに従ってコンピュータが処理を実行すると、形態７０の表示装置と同等の作用および効果が得られる。
【０１３０】
〔形態７８〕  一方、上記目的を達成するために、形態７８の表示装置制御方法は、
画像データに基づき、被表示部に画像を表示する表示装置を制御するのに使用する表示装置制御方法であって、
Ｍ（Ｍ≧３）値の階調値を有する複数の画素データから構成される前記画像データを取得する画像データ取得ステップと、
前記取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域をＫ個（２≦Ｋ≦Ｊ）のグループに区分するグループ化ステップと、
前記各グループを構成する前記各画像データ領域毎に、当該画像データ領域に含まれる画素データの中から所定の画素データを選択する画素データ選択ステップと、
前記選択した画素データに対して、所定の閾値に基づきＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理ステップと、
前記選択した画素データの値と、当該選択した画素データの前記Ｎ値化処理後の値との差分を、前記Ｎ値化処理が未処理の画素データに拡散する誤差拡散ステップと、
前記誤差拡散処理後の画像データに基づき、前記画像を前記被表示部に表示する表示ステップと、を含み、
前記誤差拡散ステップにおいては、前記Ｋ個のグループにおける２個以上のグループにおいて、それぞれ異なる方向に前記差分を拡散することを特徴としている。
【０１３１】
具体的には、上記各ステップは、例えば、ＲＯＭ等に記憶されたＢＩＯＳ等のシステムプログラムが、ＲＯＭに予め記憶された各種専用のコンピュータプログラム、あるいは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等の記憶媒体を介して、またはインターネット等の通信ネットワークを介して記憶装置にインストールされた各種専用のコンピュータプログラムをＲＡＭにロードし、そのＲＡＭにロードされたプログラムに記述された命令に従ってＣＰＵが各種リソースを駆使して表示機構等のハードウェアの制御および演算処理を行うことで実現される。
これによって、形態６４の表示装置と同等の作用効果が得られる。
【０１３２】
〔形態７９〕  更に、形態７９の表示装置制御方法は、形態７８の表示装置制御方法において、
前記グループ化ステップにおいては、前記Ｋ個のグループをそれぞれ構成する各画像データ領域の画像が、それぞれのグループにおいて交差するように、前記Ｊ個の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態６５の表示装置と同等の作用効果が得られる。
【０１３３】
〔形態８０〕  更に、形態８０の表示装置制御方法は、形態７９の表示装置制御方法において、
前記グループ化ステップにおいては、前記画像データを、４個以上の画像データ領域に分割すると共に、前記Ｋ個のグループをそれぞれ構成する前記画像データ領域の画像が、２個のグループにおいてお互いが格子状に交差するように、前記４個以上の画像データ領域を前記Ｋ個のグループに区分することを特徴としている。
これによって、形態６６の表示装置と同等の作用効果が得られる。
【０１３４】
〔形態８１〕  更に、形態８１の表示装置制御方法は、形態７８又は形態７９の表示装置制御方法において、
前記グループ化ステップにおいては、前記画像データによって構成される画像の特定の並び方向に位置する画素群又は特定の並び方向に位置する画素群に直行する画素群毎に、前記画像データを複数の画像データ領域に分割することを特徴としている。
これによって、形態６７の表示装置と同等の作用効果が得られる。
【０１３５】
〔形態８２〕  更に、形態８２の表示装置制御方法は、形態７８乃至形態８１のいずれか１の表示装置制御方法において、
前記グループ化ステップにおいては、前記Ｊ個の画像データ領域を２個のグループに区分するようになっており、
前記誤差拡散ステップにおいては、前記２個のグループにおいて、前記差分の拡散方向が、互いに反対向きとなる方向に前記差分を拡散することを特徴としている。
これによって、形態６８の表示装置と同等の作用効果が得られる。
【０１３６】
〔形態８３〕  更に、形態８３の表示装置制御方法は、形態７８乃至形態８２のいずれか１の表示装置制御方法において、
前記誤差拡散ステップにおいては、所定の前記グループおいて発生する前記差分を、当該所定のグループの前記Ｎ値化処理が未処理の画素データと、前記所定のグループとは異なる他のグループにおける前記Ｎ値化処理が未処理の画素データとに拡散することを特徴としている。
これによって、形態６９の表示装置と同等の作用効果が得られる。
【０１３７】
〔形態８４〕  更に、形態８４の表示装置制御方法は、形態７８乃至形態８２のいずれか１の表示装置制御方法において、
前記画素データ選択ステップにおける前記画素データを選択する処理、前記Ｎ値化ステップにおける前記Ｎ値化処理及び前記誤差拡散ステップにおける前記差分を拡散する処理を、前記Ｋ個のグループに対して、それぞれ並列に行うことを特徴としている。
これによって、形態７０の表示装置と同等の作用効果が得られる。
【発明を実施するための最良の形態】
【０１３８】
以下、本発明の実施の形態を図面に基づき説明する。図１〜図１８は、本発明に係る画像処理装置、画像処理プログラム及び画像処理方法の実施の形態を示す図である。
まず、本発明に係る画像処理装置の構成を図１に基づき説明する。図１は、本発明に係る画像処理装置１００の機能構成を示すブロック図である。
画像処理装置１００は、図１に示すように、外部装置又は記憶媒体等からＭ値（Ｍ≧３）の画像データを取得する画像データ取得部１０と、画像データ取得部１０から取得した画像データを、所定数の画素データからなる複数の画像データ領域に分割すると共に、当該複数の画像データ領域を複数のグループに区分するグループ生成部１１と、グループ生成部１１でグループ化された画像データ（以下、グループ化画像データと称す）に対してＮ（Ｍ＞Ｎ≧２）値化処理を行うＮ値化処理部１２と、当該Ｎ値化処理部１２においてＮ値化されたデータ（以下、Ｎ値化データ）を記憶するＮ値化データ記憶部１３とを含んだ構成となっている。
【０１３９】
画像データ取得部１０は、例えば、１画素あたり各色（Ｒ、Ｇ、Ｂ）ごとの階調（輝度値）が８ビット（０〜２５５）で表現されるＭ値（この場合は、２５６≧Ｍ≧３）の画像データを取得する機能を有しており、このような画像データを、ＬＡＮやＷＡＮ等のネットワークを介して外部装置から取得したり、自装置の備える図示しないＣＤドライブ、ＤＶＤドライブなどの駆動装置を介してＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなどの記録媒体から取得したり、自装置の有する後述する記憶装置７０から取得したりするようになっている。
【０１４０】
グループ生成部１１は、グループ化処理部１１ａと、グループ化情報記憶部１１ｂとから構成され、グループ化処理部１１ａは、複数種類のグループ化方式の情報（以下、グループ化情報と称す）を記憶したグループ化情報記憶部１１ｂから、例えば、外部装置等の接続機器、又はマウス若しくはキーボード等の付属の入力デバイスなどを介したユーザからの指示情報に応じた方式のグループ化情報、あるいは画像データの種類等に対して事前に設定された方式のグループ化情報を読み出し、当該読み出したグループ化情報に基づき、画像データ取得部１０において取得した画像データを、Ｊ個（Ｊ≧２）の画像データ領域に分割すると共に、当該Ｊ個の画像データ領域を、Ｋ個（２≦Ｋ≦Ｊ）のグループに区分する。
【０１４１】
ここで、上記グループ化情報は、画像データに対する分割方法及びグループ化方法を含む情報であり、分割方法としては、例えば、画像データを、画素行単位又は画素列単位で分割したり、所定数の画素で構成される矩形画素単位で分割したり、各画素単位で分割（つまり分割画素数が１画素）したりするなどといった方法が含まれる。
また、区分方法としては、例えば、画像上において、各グループを構成する各画像データ領域の画像が、当該各グループ間で交差するように区分する方法が含まれており、具体的には、画像データを画素行（又は画素列）単位の画像データ領域に分割し、且つこれを２種類のグループに区分する場合に、２種類のグループの一方の画素行（又は画素列）が他方の画素行（又は画素列）と１行（又は１列）毎に互い違いになるように区分したり、画像データを１画素単位の画像データ領域に分割し、且つこれを２種類のグループに区分する場合に、２種類のグループの一方の画素と他方の画素とが格子を形成するように区分したりするなどの区分方法が含まれる。
【０１４２】
Ｎ値化処理部１２は、画像データ選択部１２ａと、Ｎ値化部１２ｂと、誤差拡散処理部１２ｃと、Ｎ値化情報記憶部１２ｄとから構成される。
画素データ選択部１２ａは、Ｎ値化情報記憶部１２ｂから、上記グループ化情報と同様に、例えば、外部装置等の接続機器、又はマウス若しくはキーボード等の付属の入力デバイスなどを介したユーザからのＮ値化指示情報に応じたＮ値化情報、又はグループ化画像データに適用されたグループ化の方式、若しくは画像データの種類に対して事前に設定されたＮ値化情報を読み出し、当該読み出したＮ値化情報の示す選択方法に基づき、グループ化画像データの各グループから所定の画素データを選択するようになっている。
【０１４３】
Ｎ値化部１２ｂは、画素データ選択部１２ａで選択された画素データを上記読み出したＮ値化情報の示すＮ値化用閾値及び各閾値に対応した変換後の数値に基づきＮ値化するようになっている。
ここで、Ｎ値化とは、Ｍ値（Ｍ≧３）の（Ｍ種類の画素値（画素データ）を有する）画像データを、Ｎ値（Ｍ＞Ｎ≧２）の（Ｎ種類の数値を有する）データに変換する処理であって、例えば、２値化する場合は、変換元の画素値と閾値とを比較して、閾値以上なら数値「１」、閾値より小さければ数値「０」といったように、変換元の画素値を予め設定された２種類の数値のいずれか一方に変換する。従って、Ｎ値化であれば、Ｍ値の画素値をＮ種類の閾値と比較し、その比較結果に応じてＮ種類の数値のいずれか１つに変換することになる。このＮ値化されたデータは、例えば、Ｎ値が画素値に対応していれば画像データとなり、Ｎ値が各色に対応した印刷用ノズル（例えば、インクジェット方式の印刷装置のノズル）に対してＮ種類のサイズのドットのいずれか１を形成する数値、ドットを形成しない数値で表されていた場合（印刷装置が解釈可能なデータで表されていた場合）は印刷用データとなる。本実施の形態においては、画像データ又は印刷用データのいずれか一方（又は両方）を形成するかをユーザが選択できるようになっている。
【０１４４】
誤差拡散処理部１２ｃは、Ｎ値化処理部１２ｂにおいて発生したＮ値化誤差を上記読み出したＮ値化情報の示す拡散方式（例えば、誤差拡散マトリックスなどがある）で、まだＮ値化されていない未処理の画素データに拡散する誤差拡散処理を行うようになっている。
ここで、拡散方式とは、選択画素データの誤差を拡散する方向を定めたもので、本実施の形態においては、上記各グループ間で誤差の拡散方向が異なるように、各グループ毎に誤差の拡散方式が設定される。例えば、画像データを２つのグループに区分した場合、一方のグループに「上」、「左」の２方向に誤差を拡散させる方式を選択したら、他方のグループには「下」、「右」に誤差を拡散させる方式を選択する。
【０１４５】
ここで、誤差拡散処理は、従来の誤差拡散法と同様の原理で誤差を拡散するもので、例えば、上記Ｎ値の画像データを、閾値「１２８」を境に、画素値が「１２８」より小さければ「０」、「１２８」以上なら「２５５」に変換する２値化処理の場合に、選択画素の画素値が「１０１」の場合、「１０１」は「０」に変換され、この変換後の「０」と変換前の「１０１」との差「１０１」が誤差として、所定の拡散方式に従ってその周囲の未処理の複数の画素に対して拡散されることになる。例えば、選択画素の右隣の画素（例えば、画素値「１０１」）が通常の２値化処理のみでは選択画素と同じく閾値に満たないことから「０」に変換されてしまっていたのが、選択画素の誤差である例えば「２７」を受け取ることによってその画素値が「１２８」となって閾値「１２７」以上となり、これによって「１」に変換されるようになる。
【０１４６】
Ｎ値化情報記憶部１２ｄは、Ｎ値化処理の処理方式、各グループに対する画素データの選択方法、目的に応じたＮ値化用の閾値及び閾値に対応した変換後の数値、並びにＮ値化によって発生する誤差の拡散方法を含んでなるＮ値化情報を記憶するようになっている。
ここで、上記Ｎ値化処理（誤差拡散処理を含む）の処理方式は、例えば、各グループにおけるＮ値化処理を並列して行う方式、各グループ毎に順番に、且つ１画素ずつＮ値化処理を行う方式、前のグループにおける全画素に対するＮ値化処理の終了後に次のグループのＮ値化処理を行うといったように１グループずつＮ値化処理を行う方式等いくつかの処理方式を含む。
【０１４７】
また、Ｎ値化処理の処理方式と上記画素データの選択方法とは、それぞれが対になっているもので、例えば、上記並列して行う方式では、画素データを各グループから同時に１つずつ選択する方法が適用され、上記各グループ毎に順番に、且つ１画素ずつ行う方式では、画素データを各グループから順番に１つずつ選択する方法が適用され、上記１グループずつ行う方式では、画素データを各グループ毎に１〜全画素を１つずつ順番に選択する方法が適用される。更に、選択方法には、選択開始位置及び選択方向の情報も含む。
【０１４８】
Ｎ値化データ記憶部１３は、Ｎ値化処理部１２において生成されたＮ値化データ（画像データ及び印刷用データ）を記憶するようになっている。
なお、この画像処理装置１００は、上記画像データ取得部１０、グループ生成部１１、Ｎ値化処理部１２、Ｎ値化データ記憶部１３などの上記各機能をソフトウェアを用いて実現するため、及び上記各機能の実現に必要なハードウェアを制御するソフトウェアを実行するためのコンピュータシステム２００を備えている。このコンピュータシステム２００のハードウェア構成は、図２に示すように、各種制御や演算処理を担う中央演算処理装置であるＣＰＵ（Central Processing Unit）６０と、主記憶装置（Main Storage）を構成するＲＡＭ（Random Access Memory）６２と、読み出し専用の記憶装置であるＲＯＭ（Read Only Memory）６４との間をＰＣＩ（Peripheral Component Interconnect）バスやＩＳＡ（Industrial Standard Architecture）バス等からなる各種内外バス６８で接続すると共に、このバス６８に入出力インターフェース（Ｉ／Ｆ）６６を介して、ＨＤＤ等の外部記憶装置（Secondary Storage）７０や、ＣＲＴ、ＬＣＤモニター等の出力装置７２、操作パネルやマウス、キーボード、スキャナなどの入力装置７４、および図示しない情報処理装置などと通信するためのネットワークケーブルＬなどを接続したものである。
【０１４９】
そして、電源を投入すると、ＲＯＭ６４等に記憶されたＢＩＯＳ等のシステムプログラムが、ＲＯＭ６４に予め記憶された各種専用のコンピュータプログラム、あるいは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）等の記憶媒体を介して、またはインターネット等の通信ネットワークを介して記憶装置７０にインストールされた各種専用のコンピュータプログラムを同じくＲＡＭ６２にロードし、そのＲＡＭ６２にロードされたプログラムに記述された命令に従ってＣＰＵ６０が各種リソースを駆使して所定の制御および演算処理を行うことで前述したような各機能をソフトウェア上で実現するようになっている。
【０１５０】
つまり、グループ化情報記憶部１１ｂ、Ｎ値化情報記憶部１２ｄ及びＮ値化データ記憶部１３は記憶装置７０の所定領域に各種データを記憶するように構成されており、各種データは、それぞれ記憶装置７０における各記憶部毎に割り当てられた記憶領域に記憶される。
また、画像データ取得部１０、グループ化処理部１１ａ、画素データ選択部１２ａ、Ｎ値化部１２ｂ及び誤差拡散処理部１２ｃは主にプログラムから構成され、このプログラムがＲＯＭ６４等の記憶媒体に格納されており、これをＲＡＭ６２のロードし、このプログラムをＣＰＵ６０が実行することで各部の機能を実現する。
【０１５１】
更に、画像処理装置１００は、ＣＰＵ６０によって、ＲＯＭ６４の所定領域に格納されている所定のプログラムを起動させ、そのプログラムに従って、図３のフローチャートに示す画像処理を実行するようになっている。
図３は、画像処理装置１００における画像処理を示すフローチャートである。
画像処理は、ＣＰＵ６０によって実行されると、図３に示すように、まず、ステップＳ１００に移行するようになっている。
【０１５２】
ステップＳ１００では、画像データ取得部１０において、ネットワークケーブルＬを介して接続された外部装置からの画像データのＮ値化指示情報が送られてくることにより、あるいは入力装置７４を介してＮ値化指示情報が入力されたことにより、Ｎ値化指示があったか否かを判定し、Ｎ値化指示があったと判定された場合(Yes)はステップＳ１０２に移行し、そうでない場合(No)はＮ値化指示があるまで判定処理を繰り返す。
【０１５３】
本実施の形態において、Ｎ値化指示情報には、生成するＮ値化データの種類（ここでは、画像か印刷用か）、分割方式、グループ化方式、何値にＮ値化するか、Ｎ値化処理方式、誤差拡散方式などのＮ値化データの生成に関するユーザの設定情報が含まれている。このユーザ設定情報は、画像処理装置１００側で設定番号等と対応付けて管理されいても良く、例えば、Ｎ値化指示情報にはユーザ設定情報として、設定番号情報が含まれており、画像処理装置１００側では、予めその設定番号情報に対応した内容のグループ化情報、Ｎ値化情報をそれぞれ番号に対応させてグループ化情報記憶部１１ｂ及びＮ値化情報記憶部１２ｄに記憶しておき、Ｎ値化指示情報を取得したときは、そこに含まれる設定番号情報に対応したグループ化情報及びＮ値化情報をそれぞれの記憶部から読み出すようにする。
【０１５４】
ステップＳ１０２に移行した場合は、画像データ取得部１０において、Ｎ値化指示に対応する画像データを、上記したように、外部装置、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記録媒体、ＨＤＤ等の記憶装置７０などから取得する処理を行い、これにより画像データを取得したか否かを判定し、取得したと判定された場合（Yes)は、当該取得した画像データをグループ生成部１１に伝送してステップＳ１０４に移行し、そうでない場合(No)は、Ｎ値化指示元に対して画像処理不可などの返答を行った後、当該Ｎ値化指示に対する画像処理を放棄してステップＳ１００に移行する。ここで、本実施の形態における画像データは、複数の画素データがマトリクス状に規則的に配列された構成のデータであり、このことを前提として以下の各処理の説明を行う。
【０１５５】
ステップＳ１０４では、グループ生成手段１１において、画像データをＪ個（Ｊ≧２）の画像データ領域に分割すると共に、Ｊ個の画像データ領域を更にＫ個（２≦Ｋ＜Ｊ）のグループに区分してグループ化画像データを生成し、当該グループ化画像データをＮ値化処理部１２に伝送してステップＳ１０６に移行する。
ステップＳ１０６では、Ｎ値化処理部１２において、グループ化画像データにＮ値化処理を施してＮ値化データを生成し、当該生成したＮ値化データをＮ値化データ記憶部記憶部１３に伝送してステップＳ１０８に移行する。
【０１５６】
ステップＳ１０８では、Ｎ値化データ記憶部１３において、Ｎ値化データを記憶してステップＳ１００移行する。
次に、図４に基づき、ステップＳ１０４のグループ生成処理を詳細に説明する。
図４は、画像処理装置１００における、グループ生成処理を示すフローチャートである。
【０１５７】
このグループ生成処理は、上記したように、画像データ取得部１０から取得したＭ値の画像データを、Ｎ値化指示情報に対応する分割方式及びグループ化方式に基づき、１以上の画素データからなるＪ個（Ｊ≧２）の画像データ領域に分割する共に、当該Ｊ個の画像データ領域を更にＫ個（２≦Ｋ＜Ｊ）のグループに区分する処理であって、ステップＳ１０４において実行されると、図４に示すように、まず、ステップＳ２００に移行するようになっている。
【０１５８】
ステップＳ２００では、画像データ取得部１０から伝送されたＭ値の画像データを取得したか否かを判定し、取得したと判定された場合(Yes)はステップＳ２０２に移行し、そうでない場合(No)は取得するまで判定処理を繰り返す。
ステップＳ２０２に移行した場合は、Ｎ値化指示情報に基づきグループ化情報記憶部１１ｂからグループ化情報（分割方式及びグループ化方式）を読み出してステップＳ２０４に移行する。
【０１５９】
ステップＳ２０４では、上記読み出した分割方式に基づき、画像データを１以上の画素データからなるＪ個の画像データ領域に分割してステップＳ２０６に移行する。ここで、分割処理においては、各画素データに属性情報を付加して、同じ属性情報を有する画素データが同じ画像データ領域に属するようにする。
ステップＳ２０６では、上記分割によって生成されたＪ個の画像データ領域を、上記読み出したグループ化方式に基づき、Ｋ個のグループに区分したグループ化画像データを生成してステップＳ２０８に移行する。ここで、区分処理においては、上記分割処理と同様に、各画像データ領域に属性情報を付加して、同じ属性情報を有する画像データ領域が同じグループに属するようにする。このように画像データ領域の属性及びグループの属性の付加された画像データがグループ化画像データである。
【０１６０】
ステップＳ２０８では、上記生成されたグループ化画像データをＮ値化データ記憶部１３に伝送して、一連の処理を終了して元の処理に戻る。
次に、図５に基づき、ステップＳ１０６のＮ値化処理を詳細に説明する。
図５は、画像処理装置１００における、Ｎ値化処理を示すフローチャートである。
このＮ値化処理は、上記したように、グループ生成部１１から取得したグループ化画像データに対して、Ｎ値化指示情報に対応するＮ値化情報に基づきＮ値化処理を施す処理であって、ステップＳ１０６において実行されると、図５に示すように、まず、ステップＳ３００に移行するようになっている。
【０１６１】
ステップＳ３００では、グループ生成部１１から伝送されたグループ化画像データを取得したか否かを判定し、取得したと判定された場合(Yes)はステップＳ３０２に移行し、そうでない場合(No)は取得するまで判定を繰り返す。
ステップＳ３０２に移行した場合は、Ｎ値化指示情報に対応したＮ値化情報（Ｎ値化処理の処理方式、各グループに対する画素データの選択方法、目的に応じたＮ値化用の閾値及び当該閾値に対応した変換後の数値、Ｎ値化によって発生する誤差の拡散方法）を読み出してステップＳ３０４に移行する。
【０１６２】
ステップＳ３０４では、上記読み出した選択方法に基づき、グループ化画像データから画素データを選択してステップＳ３０６に移行する。
ステップＳ３０６では、ステップＳ３０４で選択した画素データの画素値と、上記読み出したＮ値化用の閾値とを比較してステップＳ３０８に移行する。
ステップＳ３０８では、ステップＳ３０６の比較結果に基づき、ステップＳ３０４で選択した画素データの画素値を閾値に対応した変換後の数値に変換してステップＳ３１０に移行する。
【０１６３】
ステップＳ３１０では、上記読み出した誤差の拡散方法に基づき、グループ化画像データから拡散対象の未処理画素データを選択してステップＳ３１２に移行する。
ステップＳ３１２では、ステップＳ３０８で変換後の画素データの値と、変換前の値との誤差を算出し、当該算出した誤差を、上記読み出した誤差の拡散方法に基づき、所定の誤差拡散マトリックスを用いてステップＳ３１０で選択した未処理の画素データに拡散してステップＳ３１４に移行する。
【０１６４】
ステップＳ３１４では、グループ化画像データの全画素データに対して処理が終了したか否かを判定し、終了したと判定された場合(Yes)はステップＳ３１６に移行し、そうでない場合(No)はステップＳ３０４に移行する。
ステップＳ３１６に移行した場合は、誤差拡散処理部１２ｃにおいて、Ｎ値化後のデータをＮ値化データ記憶部１３に伝送して、一連の処理を終了し元の処理に復帰する。
【０１６５】
次に、図６〜図１８に基づき、本実施の形態の動作を説明する。
ここで、図６は、Ｎ値化指示情報（番号情報）に対応したグループ化情報及びＮ値化情報の一例を示す図である。また、図７は、印刷用データを生成する場合（タイプ１の場合）の、Ｎ値の情報、各Ｎ値に対する閾値の情報の一例を示す図である。また、図８は、画像データの構成例を示す図である。また、図９（ａ）及び（ｂ）は、画素データの選択順序の一例及び行単位の画像データ領域をグループ化した一例を示す図である。また、図１０（ａ）〜（ｄ）は、誤差拡散マトリクス１及び誤差拡散マトリクス２を示す図である。また、図１１（ａ）及び（ｂ）は、誤差拡散マトリクス１及び誤差拡散マトリクス２の処理方式を示す図である。また、図１２は、誤差拡散マトリクス１を用いた誤差拡散処理を示す図である。また、図１３は、誤差拡散マトリクス２を用いた誤差拡散処理を示す図である。また、図１４（ａ）及び（ｂ）は、画素データの選択順序の一例及び１画素単位の画像データ領域をグループ化した一例を示す図である。また、図１５（ａ）〜（ｄ）は、誤差拡散マトリクス３及び誤差拡散マトリクス４を示す図である。また、図１６（ａ）及び（ｂ）は、誤差拡散マトリクス３及び誤差拡散マトリクス４の処理方式を示す図である。また、図１７は、誤差拡散マトリクス３を用いた誤差拡散処理を示す図である。図１８は、誤差拡散マトリクス４を用いた誤差拡散処理を示す図である。
【０１６６】
まず、画像処理装置１００は、ユーザからのＮ値化指示情報を外部装置等から取得すると（ステップＳ１００）、当該Ｎ値化指示情報に対応するＭ値の画像データを、Ｎ値化指示情報の送信元である外部装置等から取得し、当該取得した画像データをグループ生成部１１に伝送して（ステップＳ１０２）、グループ生成処理へと移行する（ステップＳ１０４）。ここで、本実施の形態におけるＭ値の画像データは、０〜２５５の範囲の輝度値を有する画素データから構成された画像データとする。
【０１６７】
また、本実施の形態において、Ｎ値化指示情報には前述した設定番号情報が含まれており、図６に示すように、設定番号「１０」、「１１」、「２０」及び「２１」の４つと、予め設定された４種類のグループ化情報及びＮ値化情報の組とが対応している。
以下、図６に示す、４つの設定番号「１０」、「１１」、「２０」及び「２１」にそれぞれ対応するグループ化情報及びＮ値化情報に基づき、画像処理装置１００におけるグループ生成処理及びＮ値化処理を説明する。
【０１６８】
なお、本実施の形態においては、Ｎ値化データとして印刷用データの生成を行う例を説明する。従って、本実施の形態においては、図６に示すように、Ｎ値、閾値及び当該閾値に対応する変換値のタイプは、上記４つの設定番号の全てに共通して「タイプ１」となる。ここで、「タイプ１」は、図７に示すように、印刷媒体上にドットなしを含めて８種類のドットサイズを形成することができる印刷装置に対応した印刷用データを生成するためのもので、画素データの輝度値（０〜２５５）に対して８種類の範囲を設定すると共に、そのそれぞれに対応したドット番号０〜７番の８種類のドットサイズが設定されている。
【０１６９】
まず、設定番号「１０」に対応する画像処理を説明する。
グループ生成部１１においては、画像データ取得部１０から画像データを取得すると（ステップＳ２００）、まずグループ化部１１ａにおいて、Ｎ値化指示情報に含まれる設定番号「１０」に対応したグループ化情報をグループ化情報記憶部１１ｂから読み出す（ステップＳ２０２）。グループ化情報は、上記したように、分割方式及びグループ化方式の２つの情報を含んだ構成となっており、図６に示すように、設定番号「１０」に対応する分割方式は「行単位」、グループ化方式は「交差１（２グループ化）」となっている。ここで、交差１とは、画像データを行単位に分割した際のグループ化方式で、各グループ間で画像データ領域が交差するように行単位の画像データ領域をグループ化する。また、２グループ化とは、画像データ領域を２つのグループに区分することを示す。
【０１７０】
画像データ取得部１０から取得したＭ値の画像データは、図８に示すように複数の画素データがマトリクス状に配列された構成となっている。そして、設定番号「１０」に対応した分割方式は「行単位」となっており、グループ化方式は「交差１」且つ２グループ化となっている。従って、画像データを行単位の画像データ領域に分割すると共に（ステップＳ２０４）、各領域がグループ間で交差するように２つのグループに区分する（ステップＳ２０６）。つまり、画像データが図８に示す構成となっている場合は、図９（ａ）に示すように、それぞれの行が８つの画素データから構成される行単位の、８つの画像データ領域（Ｊ＝８）に分割され、更に、これら８つの画像データ領域が、同図に示すように、灰色（網掛け）と白色（無地）との２つのグループ（Ｋ＝２）に区分されてグループ化画像データが生成される。また、図９（ａ）を見ると解るように、灰色（以下、グループ１と称す）の画像データ領域と白色（以下、グループ２と称す）の画像データ領域とは、それぞれが互い違いに並んだ状態（交差した状態）となっている。
【０１７１】
このようにしてグループ化画像データが形成されると、グループ生成部１１は、当該生成したグループ化画像データをＮ値化処理部１２に伝送し（ステップＳ２０８）、Ｎ値化処理へと移行する（ステップＳ１０６）。
Ｎ値化処理部１２においては、グループ生成部１１からグループ化画像データを取得すると（ステップＳ３００）、まず画素データ選択部１２ａにおいて、Ｎ値化指示情報に含まれる設定番号「１０」に対応したＮ値化情報を、Ｎ値化情報記憶部１３から読み出す（ステップＳ３０２）。このＮ値化情報は、上記したように、Ｎ値化処理の処理方式、各グループに対する画素データの選択方法、目的（ここでは、印刷用データの生成）に応じたＮ値化用の閾値及び当該閾値に対応した変換後の数値、及びＮ値化によって発生する誤差の拡散方法の情報を含んだ構成となっている。ここでは、設定番号「１０」であるので、図６に示すように、Ｎ値化の処理方式は並列方式となり、選択方法は２つのグループから同時に１つずつ画素データを選択する方式となる。
【０１７２】
また、目的に応じたＮ値化用の閾値及び当該閾値に対応した変換後の数値は、上記した印刷用データ生成用の「タイプ１」となり、誤差拡散方法は誤差拡散マトリクス１を用いた拡散処理となる。
また、誤差拡散マトリクス１は、図１０（ａ）及び（ｂ）に示すように、グループ１（灰色）に対しては同図（ａ）のようなマトリクスが対応し、グループ２（白色）に対しては同図（ｂ）のようなマトリクスが対応している。
【０１７３】
つまり、図１０（ａ）に示すように、グループ１の画素データにおいて発生する誤差を、選択画素データの右隣の未処理画素データに７／１６の割合で拡散し、グループ２の画像データ領域を下に１つ越えたグループ１における選択画素に対して、左斜め下、真下、右斜め下の３つの画素データに、それぞれ３／１６、５／１６、１／１６の割合で拡散する。
【０１７４】
また、図１０（ｂ）に示すように、グループ２の画素データにおいて発生する誤差を、選択画素データの左隣の未処理画素データに７／１６の割合で拡散し、グループ１の画像データ領域を上に１つ越えたグループ２における選択画素に対して、左斜め上、真上、右斜め上の３つの画素データに、それぞれ１／１６、５／１６、３／１６の割合で拡散する。
【０１７５】
また、本実施の形態において、画素データの選択開始位置は、グループ１が画像データの一番左上の画素データとなり、グループ２は、画像データの一番右下の画素データとなる。そして、Ｎ値化の進行方向及び誤差の拡散方向は、図１１（ａ）に示すように、グループ１に対しては、各行を左から右に向かって１画素ずつ順番にＮ値化し、その誤差を上記図１０（ａ）に示す誤差拡散マトリクス１に従い、選択画素データの右隣、グループ２の画像データ領域を下側に１つ隔てた左下、下及び右下の４方向にある未処理の画素データに拡散する。一方、グループ２に対しては、各行を右から左に向かって１画素ずつ順番にＮ値化し、その誤差を上記図１０（ｂ）に示す誤差拡散マトリクス１に従い、選択画素データの左隣、グループ１の画像データ領域を上側に１つ隔てた左上、真上及び右上の４方向にある未処理の画素データに拡散する。つまり、図１０（ａ）及び（ｂ）に示す誤差拡散マトリクス１においては、誤差の拡散方向が、互いに反対方向となるように設定されている。また、図１１（ａ）に示すように、グループ１に対する各画像データ領域の処理順番を（１）〜（６）とし、グループ２の各画像データ領域の処理順番を（１’）〜（６’）としたように、グループ１及びグループ２に対するＮ値化及び誤差拡散処理は同時並行して行われる。ここで、図９（ａ）に示す各画素に対応するマスの中の数値は画素データ単位の選択順番を示す番号となっており、グループ１には、番号１〜３２が対応し、グループ２には、番号１’〜３２’が対応している。つまり、番号１と１’、番号２と２’・・・番号３２と３２’といったように同じ数値の画素データが番号順にグループ１及びグループ２で同時に選択されることになる。
【０１７６】
従って、画素データ選択部１２ａにおいて、グループ１及びグループ２における画素データが同時に選択され（ステップＳ３０４）、Ｎ値化部１２ｂにおいて、図７に示す「タイプ１」として設定されたＮ値化用の閾値に基づいて、選択画素のＮ値化が行われる（ステップＳ３０６，ステップＳ３０８）。
ここで、Ｎ値化は、図７に示す各ドットサイズ（ドット番号Ｎ（０〜７）で識別）に対して、選択画素データの輝度値と各ドットサイズに対応した輝度値の閾値（ここでは、輝度値の範囲となる）とを比較して（ステップＳ３０６）、選択画素データの輝度値に対応する輝度範囲のドット番号を割り当てる（ステップＳ３０８）ことで行う。従って、本実施の形態におけるＮ値は、ドット番号０〜７の８値となる。
【０１７７】
ここで、各ドット番号と変換後の輝度値との関係は、図７に示すように、ドット番号の、０が「２５５」、１が「２１９」、２が「１８２」、３が「１４６」、４が「１０９」、５が「７３」、６が「３６」及び７が「０」とそれぞれ対応している。また、選択画素データの輝度値に、ドット番号０〜７のいずれかを割り当てるための閾値（輝度値の範囲）は、図７に示すように、ドット番号の、０が「２２３以上」、１が「１９１〜２２２」、２が「１５９〜１９０」、３が「１２８〜１５８」、４が「９６〜１２７」、５が「６４〜９５」、６が「３２〜６３」及び７が「３２以下」となっている。
【０１７８】
本実施の形態においては、例えば、選択画素データの輝度値にドット番号５番が割り当てられた場合は、画素データの輝度値は「７３」に変換されると共に、選択画素データのＮ値化後の値は、ドット番号である「５」となる。つまり、通常の画像データであれば、閾値に対応した輝度値がそのままＮ値化後の値となるところを、Ｎ値化して生成するデータが印刷用データであるので、この変換値に対応するドット番号（即ち、印刷装置の印刷処理部が解釈可能な情報）がＮ値化後の値となる（なお、ドットを形成しない場合は、Ｎ値化後の値はドット番号「０」となる）。
【０１７９】
なお、本実施の形態においては、まず選択画素データの輝度値と閾値の中間値「１２８」とを比較し、選択画素データの値が中間値よりも大きい場合は、ドット番号０〜３に対応した閾値との比較のみを行い、一方、中間値よりも小さい場合はドット番号４〜７に対応した閾値との比較のみを行うことで処理回数を低減している。
このようにして、選択画素データのＮ値化が行われると、誤差拡散処理部１２ｃにおいて、上記誤差拡散マトリクス１に従って、誤差の拡散先であるＮ値化が未処理の画素データが選択される（ステップＳ３１０）。更に、Ｎ値化された選択画素データの変換前の輝度値と、変換後のドット番号に対応する輝度値との差分が誤差として算出され、当該算出された誤差が上記誤差拡散先として選択された画素データに、誤差拡散マトリクス１で設定された割合で拡散される（ステップＳ３０８）。
【０１８０】
例えば、選択画素データの輝度値が「１２０」だとすると、上記閾値からドット番号４が対応するので、Ｎ値化により、輝度値「１２０」は「１０９」に変換される。従って、「１２０」から「１０９」を減じた差分「１１」が誤差として算出され、この誤差が上記誤差拡散マトリクス１に設定された割合で、上記選択された未処理画素データに拡散される。そして、誤差の拡散元の選択画素データのＮ値化後の値は、ドット番号である「４」となる。
【０１８１】
このように誤差拡散マトリクス１に従って誤差拡散処理を行うと、図１２に示すように、図中のグループ１に対する選択画素１の誤差の拡散方向と、図中のグループ２に対する選択画素２の誤差の拡散方向とは、選択画素が１行ずれるとは言え、局所的に見て選択画素の周囲ほぼ全方位の未処理画素に誤差が拡散されることになる。これによって、従来のようにほぼ一方向に誤差を拡散するよりも、誤差の拡散性が向上し、Ｎ値化処理後の画質を改善することができる。
【０１８２】
そして、上記したＮ値化及び誤差拡散処理を、グループ１及びグループ２の全画素に対して行うことで、画像データ取得部１０で取得したＭ値の画像データがＮ値化され、印刷用データが生成される。生成された印刷用データは、誤差拡散処理部１２ｃにおいて、Ｎ値化データ記憶部１３に伝送され（ステップＳ３１６）、Ｎ値化データ記憶部１３において記憶される（ステップＳ１０８）。
【０１８３】
次に、設定番号「１１」に対応する画像処理を説明する。
ここで、画像データ取得部１０及びグループ生成部１１における処理は、上記した設定番号「１０」と同様となるので説明を省略する。
以下、Ｎ値化処理部１２の処理から説明する。
Ｎ値化処理部１２においては、グループ生成部１１からグループ化画像データを取得すると（ステップＳ３００）、まず画素データ選択部１２ａにおいて、Ｎ値化指示情報に含まれる設定番号「１１」に対応したＮ値化情報を、Ｎ値化情報記憶部１３から読み出す（ステップＳ３０２）。ここでは、設定番号「１１」であるので、図６に示すように、Ｎ値化の処理方式は特殊１方式となり、選択方法は２つのグループの一方から画素データを１つずつ選択し、当該グループの全画素データを選択し終えたら次のグループの画素データを１つずつ順番に選択する方式となる。
【０１８４】
また、目的に応じたＮ値化用の閾値及び当該閾値に対応した変換後の数値は、上記した印刷用データ生成用の「タイプ１」となり、誤差拡散方法は誤差拡散マトリクス２を用いた拡散処理となる。
また、誤差拡散マトリクス２は、図１０（ｃ）及び（ｄ）に示すように、グループ１（灰色）に対しては同図（ｃ）のようなマトリクスが対応し、グループ２（白色）に対しては同図（ｄ）のようなマトリクスが対応している。
【０１８５】
つまり、図１０（ｃ）に示すように、グループ１の画素データにおいて発生する誤差を、選択画素データの右隣の未処理画素データに１／７の割合で拡散し、選択画素データの画像データ領域の下方に隣接するグループ２の画像データ領域における選択画素に対して、左斜め下、真下、右斜め下の３つの画素データに、各１／７の割合で拡散し、グループ２の画像データ領域を下側に１つ隔てたグループ１における、選択画素に対して、左斜め下、真下、右斜め下の３つの未処理画素データに、各１／７の割合で拡散する。
【０１８６】
また、図１０（ｃ）に示すように、グループ２の画素データにおいて発生する誤差を、選択画素データの左隣の未処理画素データに７／１６の割合で拡散し、グループ１の画像データ領域を上に１つ越えたグループ２における選択画素に対して、左斜め上、真上、右斜め上の３つの未処理画素データに、それぞれ１／１６、５／１６、３／１６の割合で拡散する。
【０１８７】
また、Ｎ値化の進行方向及び誤差の拡散方向は、図１１（ｂ）に示すように、グループ１に対しては、各行を左から右に向かって１画素ずつ順番にＮ値化し、その誤差を上記図１０（ｃ）に示す誤差拡散マトリクス２に従い、選択画素データの右隣、選択画素データの画像データ領域の下方に隣接するグループ２の画像データ領域における選択画素に対して、左斜め下、真下、右斜め下、グループ２の画像データ領域を下側に１つ隔てたグループ１における、選択画素に対して、左斜め下、真下、右斜め下にある計７つの未処理画素データに拡散する。一方、グループ２に対しては、グループ１の全画素に対してＮ値化及び誤差拡散処理が終わった後に、各行を右から左に向かって１画素ずつ順番にＮ値化し、その誤差を上記図１０（ｄ）に示す誤差拡散マトリクス２に従い、選択画素データの左隣、グループ１の画像データ領域を上側に１つ隔てた左上、上及び右上の４方向にある未処理画素データに拡散する。つまり、図１０（ｃ）及び（ｄ）に示す誤差拡散マトリクス２においては、誤差の拡散方向が互いに反対方向となる上、グループ２の未処理画素にはグループ１からの誤差が拡散されるように設定されている。従って、図１１（ｂ）に示すように、グループ１に対する各画像データ領域の処理順番を（１）〜（６）とし、グループ２の各画像データ領域の処理順番を（７）〜（１２）としたように、グループ１に対するＮ値化及び誤差拡散処理が終了してから、グループ２に対するＮ値化及び誤差拡散処理が行われる。ここで、図９（ｂ）に示す各画素に対応するマスの中の数値は画素データ単位の選択順番を示す番号となっており、グループ１には、番号１〜３２が対応し、グループ２には、番号３３〜６４が対応している。つまり、グループ１の番号１〜３２の画素データが番号順に選択され、次に、グループ２の番号３３〜６４の画素データが番号順に選択されることになる。
【０１８８】
従って、画素データ選択部１２ａにおいて、まずグループ１における画素データが選択され（ステップＳ３０４）、Ｎ値化部１２ｂにおいて、図７に示す「タイプ１」として設定されたＮ値化用の閾値に基づいて、選択画素のＮ値化が行われる（ステップＳ３０６，ステップＳ３０８）。
このようにして、選択画素データのＮ値化が行われると、誤差拡散処理部１２ｃにおいて、上記誤差拡散マトリクス２に従って、誤差の拡散先であるＮ値化が未処理の画素データが選択される（ステップＳ３１０）。更に、Ｎ値化された選択画素データの変換前の輝度値と、変換後のドット番号に対応する輝度値との差分が誤差として算出され、当該算出された誤差が上記誤差拡散先として選択された画素データに、誤差拡散マトリクス２で設定された割合で拡散される（ステップＳ３０８）。ここで、Ｎ値化は、上記設定番号「１０」と同様の処理となるので詳細な説明を省略する。
【０１８９】
上記したＮ値化及び誤差拡散処理が、グループ１の全画素に対して終了すると、次にグループ２における画素データが選択され、Ｎ値化部１２ｂにおいて、上記同様に選択画素のＮ値化及び誤差拡散処理が行われる。
このように誤差拡散マトリクス２に従って誤差拡散処理を行うと、図１３に示すように、図中のグループ１に対する選択画素１の誤差の拡散方向と、図中のグループ２に対する選択画素２の誤差の拡散方向とは、選択画素が１行ずれるとは言え局所的に見て、選択画素の周囲ほぼ全方位の未処理画素に誤差が拡散されると共に、グループ１の選択画素の誤差が、その真下のグループ２の画素データにも拡散されているので、更に誤差の拡散性が増している。これによって、従来のようにほぼ一方向に誤差を拡散するよりも、誤差の拡散性が向上し、更に、上記設定番号「１０」の処理よりも誤差の拡散性を向上できるので、Ｎ値化処理後の画質をより改善することができる。
【０１９０】
なお、図１３中、グループ１のＮ値化及び誤差拡散処理は行単位で上から下に移動し、グループ２のＮ値化及び誤差拡散処理は行単位に下から上へと移動するので、グループ１を往路とし、グループ２を復路としている。
そして、上記したＮ値化及び誤差拡散処理を、グループ１及びグループ２の全画素に対して行うことで、画像データ取得部１０で取得したＭ値の画像データがＮ値化され、印刷用データが生成される。生成された印刷用データは、誤差拡散処理部１２ｃにおいて、Ｎ値化データ記憶部１３に伝送され（ステップＳ３１６）、Ｎ値化データ記憶部１３において記憶される（ステップＳ１０８）。
【０１９１】
次に、設定番号「２０」に対応する画像処理を説明する。
グループ生成部１１においては、画像データ取得部１０から画像データを取得すると（ステップＳ２００）、まずグループ化部１１ａにおいて、Ｎ値化指示情報に含まれる設定番号「２０」に対応したグループ化情報をグループ化情報記憶部１１ｂから読み出す（ステップＳ２０２）。図６に示すように、設定番号「２０」に対応する分割方式は「１画素単位」、グループ化方式は「交差２（２グループ化）」となっている。ここで、交差２とは、画像データを１画素単位に分割した際のグループ化方式で、各グループ間で画像データ領域が交差するように１画素単位の画像データ領域をグループ化する。
【０１９２】
つまり、設定番号「２０」に対応した分割方式は「１画素単位」となっており、グループ化方式は「交差２」且つ２グループ化となっているので、図１４（ａ）に示すように、図８に示す画像データを１画素単位の画像データ領域に分割すると共に（ステップＳ２０４）、各領域がグループ間で交差するように２つのグループに区分する（ステップＳ２０６）。つまり、図１４（ａ）に示すように、それぞれのグループの各画素データ（画像データ領域）が、同図に示すように、灰色（網掛け）と白色（無地）の２つのグループに区分されグループ化画像データが生成される。図１４（ａ）を見ると解るように、灰色（以下、グループＡと称す）の画像データ領域と白色（以下、グループＢと称す）の画像データ領域とは、格子を形成した状態（交差した状態）となっている。
【０１９３】
このようにしてグループ化画像データが形成されると、グループ生成部１１は、当該生成したグループ化画像データをＮ値化処理部１２に伝送し（ステップＳ２０８）、Ｎ値化処理へと移行する（ステップＳ１０６）。
Ｎ値化処理部１２においては、グループ生成部１１からグループ化画像データを取得すると（ステップＳ３００）、まず画素データ選択部１２ａにおいて、Ｎ値化指示情報に含まれる設定番号「２０」に対応したＮ値化情報を、Ｎ値化情報記憶部１３から読み出す（ステップＳ３０２）。ここでは、設定番号「２０」であるので、図６に示すように、Ｎ値化の処理方式は並列方式となり、選択方法は２つのグループから同時に１つずつ画素データを選択する方式となる。ここで、図１４（ａ）に示す各画素に対応するマスの中の数値は画素データ単位の選択順番を示す番号となっており、グループＡには、番号１〜３２が対応し、グループＢには、番号１’〜３２’が対応している。つまり、番号１と１’、番号２と２’・・・番号３２と３２’といったように同じ数値の画素データが番号順に、グループ１及びグループ２で同時に選択されることになる。
【０１９４】
また、Ｎ値化用の閾値及び当該閾値に対応した変換後の数値は、上記した印刷用データ生成用の「タイプ１」となり、誤差拡散方法は誤差拡散マトリクス３を用いた拡散処理となる。
また、誤差拡散マトリクス３は、図１５（ａ）及び（ｂ）に示すように、グループＡ（灰色）に対しては同図（ａ）のようなマトリクスが対応し、グループＢ（白色）に対しては同図（ｂ）のようなマトリクスが対応している。
【０１９５】
つまり、図１５（ａ）に示すように、グループＡの画素データにおいて発生する誤差を、選択画素データの右隣のグループＢの画素データを１つ隔てた先にある未処理画素データに１／３の割合で拡散し、選択画素データの左斜め下及び右斜め下の２つの未処理画素データに、各１／３の割合で拡散する。
また、図１５（ｂ）に示すように、グループＢの画素データにおいて発生する誤差を、選択画素データの左隣のグループＡの画素データを１つ隔てた先にある未処理画素データに１／３の割合で拡散し、選択画素データの左斜め上及び右斜め上の２つの未処理画素データに、各１／３の割合で拡散する。
【０１９６】
また、Ｎ値化の進行方向及び誤差の拡散方向は、図１６（ａ）に示すように、グループＡに対しては、グループＡの各行毎に各画素を左から右に向かってグループＢの画素を飛び越しながら１画素ずつ順番にＮ値化し、その誤差を上記図１５（ａ）に示す誤差拡散マトリクス３に従い、選択画素データの右隣のグループＢの画素データを１つ隔てた先にある未処理画素データ、選択画素データの左斜め下及び右斜め下の計３つの未処理画素データに拡散する。一方、グループＢに対しては、グループＢの各行毎に各画素を右から左に向かってグループＡの画素を飛び越しながら１画素ずつ順番にＮ値化し、その誤差を上記図１５（ｂ）に示す誤差拡散マトリクス３に従い、選択画素データの左隣のグループＡの画素データを１つ隔てた先にある未処理画素データ、選択画素データの左斜め上及び右斜め上の計３つの未処理画素データに拡散する。
【０１９７】
つまり、図１５（ａ）及び（ｂ）に示す誤差拡散マトリクス３においては、誤差の拡散方向が互いに反対方向となるように設定されている。
また、グループＡ及びＢにおいては、自グループ内の画素データに対してしか誤差を拡散しないので、Ｎ値化及び誤差拡散処理は同時並行して行われる。
従って、画素データ選択部１２ａにおいて、グループＡ及びグループＢにおける画素データが同時に選択され（ステップＳ３０４）、Ｎ値化部１２ｂにおいて、図７に示す「タイプ１」として設定されたＮ値化用の閾値に基づいて、選択画素のＮ値化が行われる（ステップＳ３０６，ステップＳ３０８）。
【０１９８】
このようにして、選択画素データのＮ値化が行われると、誤差拡散処理部１２ｃにおいて、上記誤差拡散マトリクス３に従って、誤差の拡散先であるＮ値化が未処理の画素データが選択される（ステップＳ３１０）。更に、Ｎ値化された選択画素データの変換前の輝度値と、変換後のドット番号に対応する輝度値との誤差が算出され、当該算出された誤差が上記誤差拡散先として選択された画素データに、誤差拡散マトリクス３で設定された割合で拡散される（ステップＳ３０８）。ここで、Ｎ値化は、上記設定番号「１０」と同様の処理となるので詳細な説明を省略する。
【０１９９】
このように誤差拡散マトリクス３に従って誤差拡散処理を行うと、図１７に示すように、図中のグループＡに対する選択画素Ａの誤差の拡散方向と、図中のグループＢに対する選択画素Ｂの誤差の拡散方向とは、局所的に見て、選択画素の周囲ほぼ全方位の未処理画素に誤差が拡散されることになる。これによって、従来のようにほぼ一方向に誤差を拡散するよりも、誤差の拡散性が向上し、Ｎ値化処理後の画質を改善することができる。
【０２００】
そして、上記したＮ値化及び誤差拡散処理を、グループＡ及びグループＢの全画素に対して行うことで、画像データ取得部１０で取得したＭ値の画像データがＮ値化され、印刷用データが生成される。生成された印刷用データは、誤差拡散処理部１２ｃにおいて、Ｎ値化データ記憶部１３に伝送され（ステップＳ３１６）、Ｎ値化データ記憶部１３において記憶される（ステップＳ１０８）。
【０２０１】
次に、設定番号「２１」に対応する画像処理を説明する。
ここで、画像データ取得部１０及びグループ生成部１１における処理は、上記した設定番号「２０」と同様となるので説明を省略する。
以下、Ｎ値化処理部１２の処理から説明する。
Ｎ値化処理部１２においては、グループ生成部１１からグループ化画像データを取得すると（ステップＳ３００）、まず画素データ選択部１２ａにおいて、Ｎ値化指示情報に含まれる設定番号「２１」に対応したＮ値化情報を、Ｎ値化情報記憶部１３から読み出す（ステップＳ３０２）。ここでは、設定番号「２１」であるので、図６に示すように、Ｎ値化の処理方式は特殊１方式となり、選択方法は２つのグループの一方から画素データを１つずつ選択し、当該グループの全画素データを選択し終えたら次のグループの画素データを１つずつ順番に選択する方式となる。ここで、図１４（ｂ）に示す各画素に対応するマスの中の数値は画素データ単位の選択順番を示す番号となっており、グループＡには、番号１〜３２が対応し、グループＢには、番号３３〜６４が対応している。つまり、グループＡの番号１〜３２の画素データが番号順に選択され、番号３２の画素データが選択されると、次にグループＢの番号３３〜６４の画素データが番号順に選択されることになる。
【０２０２】
また、目的に応じたＮ値化用の閾値及び当該閾値に対応した変換後の数値は、上記した印刷用データ生成用の「タイプ１」となり、誤差拡散方法は誤差拡散マトリクス４を用いた拡散処理となる。
また、誤差拡散マトリクス４は、図１５（ｃ）及び（ｄ）に示すように、グループＡ（灰色）に対しては同図（ｃ）のようなマトリクスが対応し、グループＢ（白色）に対しては同図（ｄ）のようなマトリクスが対応している。
【０２０３】
つまり、図１５（ｃ）に示すように、グループＡの画素データにおいて発生する誤差を、選択画素データの右隣のグループＢの未処理画素データに１／６の割合で拡散し、選択画素データの右隣のグループＢの画素データを１つ隔てた先にある未処理画素データに１／６の割合で拡散し、選択画素データの画像データ領域の下方に隣接するグループＡの画像データ領域における、選択画素に対して左斜め下及び右斜め下の２つの画素データに、各１／６の割合で拡散し、選択画素データの真下及び右斜め下のグループＢの２つの未処理画素データに、各１／６の割合で拡散する。
【０２０４】
また、図１５（ｄ）に示すように、グループＢの画素データにおいて発生する誤差を、選択画素データの左隣のグループＡの画素データを１つ隔てた先にある未処理画素データに１／３の割合で拡散し、選択画素データの左斜め上及び右斜め上の２つの未処理画素データに、各１／３の割合で拡散する。
また、Ｎ値化の進行方向及び誤差の拡散方向は、図１６（ｂ）に示すように、グループＡに対しては、グループＡの各行毎に各画素を左から右に向かってグループＢの画素を飛び越しながら１画素ずつ順番にＮ値化し、その誤差を上記図１５（ｃ）に示す誤差拡散マトリクス４に従い、選択画素データの右隣のグループＢの未処理画素、選択画素データの右隣のグループＢの画素データを１つ隔てた先にある未処理画素、選択画素データの画像データ領域の下方に隣接するグループＡの画像データ領域における、選択画素に対して左斜め下及び右斜め下の２つ、選択画素データの真下及び右斜め下のグループＢの２つの計６つの未処理画素データに拡散する。
【０２０５】
一方、グループＢに対しては、グループＢの各行毎に各画素を右から左に向かってグループＡの画素を飛び越しながら１画素ずつ順番にＮ値化し、その誤差を上記図１５（ｂ）に示す誤差拡散マトリクス３に従い、選択画素データの左隣のグループＡの画素データを１つ隔てた先にある未処理画素データ、選択画素データの左斜め上及び右斜め上のグループＢの２つの計３つの未処理画素データに拡散する。
【０２０６】
つまり、図１５（ｃ）及び（ｄ）に示す誤差拡散マトリクス４においては、誤差の拡散方向が互いに反対方向となる上、グループＢの未処理画素にはグループＡからの誤差が拡散されるように設定されている。従って、グループＡに対するＮ値化及び誤差拡散処理が終了してから、グループＢに対するＮ値化及び誤差拡散処理が行われる。
従って、画素データ選択部１２ａにおいて、まずグループＡにおける画素データが選択され（ステップＳ３０４）、Ｎ値化部１２ｂにおいて、図７に示す「タイプ１」として設定されたＮ値化用の閾値に基づいて、選択画素のＮ値化が行われる（ステップＳ３０６，ステップＳ３０８）。
【０２０７】
このようにして、選択画素データのＮ値化が行われると、誤差拡散処理部１２ｃにおいて、上記誤差拡散マトリクス４に従って、誤差の拡散先であるＮ値化が未処理の画素データが選択される（ステップＳ３１０）。更に、Ｎ値化された選択画素データの変換前の輝度値と、変換後のドット番号に対応する輝度値との誤差が算出され、当該算出された誤差が上記誤差拡散先として選択された画素データに、誤差拡散マトリクス４で設定された割合で拡散される（ステップＳ３０８）。ここで、Ｎ値化は、上記設定番号「１０」と同様の処理となるので詳細な説明を省略する。
【０２０８】
上記したＮ値化及び誤差拡散処理が、グループＡの全画素に対して終了すると、次にグループＢにおける画素データが選択され、Ｎ値化部１２ｂにおいて、上記同様に選択画素のＮ値化及び誤差拡散処理が行われる。
このように誤差拡散マトリクス４に従って誤差拡散処理を行うと、図１８に示すように、図中のグループＡに対する選択画素Ａの誤差の拡散方向と、図中のグループＢに対する選択画素Ｂの誤差の拡散方向とは、上下に隣接した画素に対してとは言え局所的に見て選択画素の周囲ほぼ全方位の未処理画素に誤差が拡散されると共に、グループＡの選択画素の誤差が、その近傍のグループＢの画素データにも拡散されているので、更に誤差の拡散性が増している。これによって、従来のようにほぼ一方向に誤差を拡散するよりも、誤差の拡散性が向上し、更に、上記設定番号「２０」よりも誤差の拡散性を向上できるので、Ｎ値化処理後の画質をより改善することができる。
【０２０９】
なお、図１８中、グループＡのＮ値化及び誤差拡散処理は画素単位では１画素飛びに左から右へ、行単位では上から下に移動し、グループＢのＮ値化及び誤差拡散処理は画素単位では１画素飛びに右から左へ、行単位には下から上へと移動するので、グループＡを往路とし、グループＢを復路としている。
そして、上記したＮ値化及び誤差拡散処理を、グループＡ及びグループＢの全画素に対して行うことで、画像データ取得部１０で取得したＭ値の画像データがＮ値化され、印刷用データが生成される。生成された印刷用データは、誤差拡散処理部１２ｃにおいて、Ｎ値化データ記憶部１３に伝送され（ステップＳ３１６）、Ｎ値化データ記憶部１３において記憶される（ステップＳ１０８）。
【０２１０】
上記実施の形態において、画像データ取得部１０は、形態１又は４３の画像データ取得手段に対応し、グループ生成部１１は、形態１、２、３、４、５、４３、４４、４５、４６及び４７のいずれか１のグループ化手段に対応し、画素データ選択部１２ａは、形態１、７、４３及び４７のいずれか１の画素データ選択手段に対応し、Ｎ値化部１２ｂは、形態１又は４３のＮ値化処理手段に対応し、誤差拡散処理部１２ｃは、形態１、５、６、７、４３、４７、４８及び４９のいずれか１の誤差拡散手段に対応し、Ｎ値化部１２ｂ及び誤差拡散処理部１２ｃにおける印刷用データの生成処理は、形態４３の印刷用データ生成手段に対応する。
【０２１１】
また、上記実施の形態において、ステップＳ１００，Ｓ１０２は、形態８、１５、５０及び５７のいずれか１の画像データ取得ステップに対応し、ステップＳ１０４は、形態８、９、１０、１１、１２、１５、１６、１７、１８、１９、５０、５１、５２、５３、５４、５７、５８、５９、６０及び６１のいずれか１のグループ化ステップに対応し、ステップＳ３０４は、形態８、１４、１５、２０、５０、５６、５７及び６３のいずれか１の画素データ選択ステップに対応し、ステップＳ３０６，Ｓ３０８は、形態８、１５、５０及び５７のいずれか１のＮ値化処理ステップに対応し、ステップＳ３１０，３１２は、形態８、１１、１３、１４、１５、１９、２０、２１、５０、５４、５５、５６、５７、６１、６２及び６３のいずれか１の誤差拡散ステップに対応する。
【０２１２】
更に、図１９〜図２３に基づき、本発明の実施例を説明する。
ここで、図１９は、本実施例で用いたグラデーション画像である。また、図２０は、従来の誤差拡散手法における誤差拡散マトリクスであり、図２１は、図１９のグラデーション画像を、図２０に示す従来手法における誤差拡散マトリクスを用いて４値化した結果を示す図である。また、図２２（ａ）及び（ｂ）は、本発明に係る誤差拡散手法における誤差拡散マトリクスであり、図２３は、図１９のグラデーション画像を、図２２に示す本発明に係る誤差拡散マトリクスを用いて４値化した結果を示す図である。
【０２１３】
まず、従来の誤差拡散手法について説明する。
従来の誤差拡散手法においては、画素データを画像データにおける各行の左から右に向かって順番に選択した場合に、図２０に示すように、選択画素の右隣の未処理画素データ、並びに左下、真下及び右下の未処理画素データの計４つの画素データに対して誤差を拡散することになる。つまり、従来の誤差拡散手法は、選択画素データの下方向に多くの誤差を拡散することになる。この従来手法によるグラデーション画像の４値化後の画像は、図２１に示すようになる。図２１に示す４値化後のグラデーション画像における、画像部分２１ａ〜２１ｃに着目してみると、画像部分２１ａにおいては、４値化に使用した誤差拡散マトリクスの拡散方向が下方向に多く誤差を拡散する特性があるため、印刷時のドットの種類（ドットには複数種類のサイズがある）がスムーズに切り替えられず、ドット種類の切り替え遅延が起きるため、特に丸で囲んだ部分においては、右下方向に流れ込むようにドットが形成されてしまっている。また、画像部分２１ｂ（中間調部分）においては、２１ａと同様の理由から、この部分を形成する複数種のドットが均一に混ざり合っていないため、画質の低下が生じている。また、画像部分２１ｃにおいては、２１ａ及び２１ｂと同様の理由から、特に、丸で囲んだ部分においては、右下方向にドットが流れ込む、いわゆるドットの尾引き現象が生じてしまっている。
【０２１４】
上記した拡大画像部分２１ａ〜２１ｃにおいて生じている各現象は、いずれもグラデーション画像の画質を劣化させるものである。
一方、本発明の誤差拡散手法においては、上記実施の形態と同様に、図１９のグラデーション画像を、１画素単位に分割し、且つグループ間の画素データが互いに交差するように格子状に画像データ領域を２つのグループ（グループ１、グループ２）に区分して、グループ間で誤差の拡散方向が反対方向となるように誤差拡散マトリクスを設定している。つまり、上記実施の形態における、設定番号「２１」と同様となり、図２２（ａ）に示す誤差拡散マトリクスを用いて、グループ１の画素データに対して４値化及び誤差拡散処理を行った。その際、グループ１の画素データに対して発生した誤差を、グループ２の画素データにも拡散している。そして、グループ１に対する４値化及び誤差拡散処理が終了したら、次いで、図２２（ｂ）に示す誤差拡散マトリクスを用いて、グループ２の画素データに対して、４値化及び誤差拡散処理を行う。つまり、グループ間で誤差の拡散方向が反対方向となるようにし、且つグループ間で画素データが交差するようにしているので、局所的に見ると誤差の拡散方向が選択画素の周囲ほぼ全方向となる。従って、４値化の結果は、図２３に示すようになる。図２３に示す４値化後のグラデーション画像における、画像部分２３ａ〜２３ｃに着目してみると、画像部分２３ａにおいては、上記従来手法よりもドット種類の切り替え遅延が改善され、シャドウ部のドット種類の分散性が向上しており、上記図２１の画像部分２１ａよりも画質が向上している。また、画像部分２３ｂにおいては、上記従来手法よりも複数種のドットが均一に混ざり合っており、上記図２１の画像部分２１ｂよりも画質が向上している。また、画像部分２３ｃにおいては、上記従来手法よりもハイライト部のドットの尾引き現象が改善されており、上記図２１の画像部分２１ｃよりも画質が向上している。
【０２１５】
なお、上記実施の形態において、上記設定番号「２０」、「２１」の例で説明したように、画像データを１画素単位の複数の画像データ領域に分割し、グループ間で各画素データが交差するように格子状にグループを区分し、各行の画素データの選択方向を、グループＡは各行に対し左から右とし、グループＢは各行に対し右から左としたが、これに限らず、グループの区分方法及び画素データの選択パターンを以下に示す（１）〜（６）のようにしても良い。
【０２１６】
（１）パターン１は、図２４（ａ）に示すように、画像データを、上記実施の形態における設定番号「２０」、「２１」の例と同様に、１画素単位の複数の画像データ領域に分割すると共に、当該画像データ領域を格子状に２つのグループに区分し、当該区分された画像データにおいて、各行を上から下に向かって画素データを選択する一方のグループには、画像データの奇数行において左から右に向かって同じグループの画素データを選択させ（図２４（ａ）に示す番号１〜４、９〜１２、１７〜２０、２５〜２８の画素データが対応）、偶数行において右から左に向かって同じグループの画素データを選択させるようにし（図２４（ａ）に示す番号５〜８、１３〜１６、２１〜２４、２９〜３２の画素データが対応）、一方、各行を下から上に向かって画素データを選択する他方のグループには、画像データの奇数行において右から左に向かって同じグループの画素データを選択させ（図２４（ａ）に示す番号１'〜４'、９'〜１２'、１７'〜２０'、２５'〜２８'が対応）、偶数行において左から右に向かって同じグループの画素データを選択させるようにするといったように（図２４（ａ）に示す番号５'〜８'、１３'〜１６'、２１'〜２４'、２９'〜３２'の画素データが対応）、各グループ共に、画素データの選択方向を、各行の最後の選択画素データにおいて切り替え、各行毎に選択方向が反対方向となるようにしても良い。
【０２１７】
上記選択パターンにおいて、誤差の拡散方法は、図２４（ｂ）に示すように、各行の端部で選択方向を反転する付近の画素については、選択方向の切替が生じる画素データ近傍に誤差を拡散するようにし、端部の画素データの誤差を切り捨てないようにする。
（２）パターン２は、図２５に示すように、画像データを、１画素単位の複数の画像データ領域と、２画素単位の複数の画像データ領域とに分割し、グループ間で各画像データ領域が交差するように格子状に、１画素単位の画像データ領域からなるグループと、行方向に２画素単位の画像データ領域からなるグループとの２つのグループに区分する。そして、２画素単位のグループには、各行毎に上から下に向かって、且つ各行の画素データを左から右に向かって同じグループの画素データを順番に選択させるようにし（図２５中に示す番号１〜４４が画素データの選択順番に対応）、一方、１画素単位のグループには、各行毎に下から上に向かって、且つ各行の画素データを右から左に向かって同じグループの画素データを順番に選択させるようにする（図２５中に示す番号１'〜２０'が画素データの選択順番に対応）。つまり、２画素単位のグループは、各行を、同じグループの隣接する２画素を連続で選択したら、１画素単位のグループの画素を１つ飛び越して次の２画素を選択するといったように、２画素選択、１画素飛び越し、２画素選択・・・といった順で各行毎に左から右に画素データを選択し、一方、１画素単位のグループは、各行を、２画素単位のグループとは逆に、１画素選択、２画素飛び越し、１画素選択・・・といった順で各行毎に右から左に同じグループの画素データを順番に選択することになる。
【０２１８】
上記選択パターンにおいて、誤差の拡散方法は、２画素単位のグループについては、これを往路として、図２６（ａ）に示すように、選択画素データの右隣、左下及び右下にある３つの同じグループの未処理画素データにのみ誤差を拡散する方式と、図２６（ｂ）に示す誤差拡散マトリクスのように、選択画素データの右隣、左下及び右下の同じグループの３つの未処理画素データと、選択画素データの右隣の画素データの右隣と、選択画素データの右下の画素データの右隣と、選択画素データの真下とにある３つの他のグループの未処理画素データとに誤差を拡散する方式との２通りの方式があり、一方、１画素単位のグループについては、これを復路として、図２６（ｃ）に示す誤差拡散マトリクスのように、選択画素データの、左隣にある２画素単位のグループの２つの画素データを飛び越した先と、選択画素データの左上と、選択画素データの右上にある２画素単位のグループの画素データの右隣とにある３つの同じグループの未処理画素データに誤差を拡散する方式がある。
【０２１９】
（３）パターン３は、図２７に示すように、画像データを、２画素単位の複数の画像データ領域に分割し、グループ間で各画像データ領域が交差するように格子状に、２つのグループに区分する。そして、一方のグループには、各行毎に上から下に向かって、且つ各行の画素データを左から右に向かって同じグループの画素データを順番に選択させるようにし（図２７中に示す番号１〜３２が画素データの選択順番に対応）、一方、他方のグループには、各行毎に下から上に向かって、且つ各行の画素データを右から左に向かって同じグループの画素データを順番に選択させるようにする（図２７中に示す番号１'〜３２'が画素データの選択順番に対応）。つまり、両グループ共に、同じグループの行方向に連続する２画素を選択したら、他のグループの行方向に連続する２画素を飛び越して次の２画素を選択するといったように、２画素選択、２画素飛び越し、２画素選択・・・といった順で各行毎に同じグループの画素データを左から右又は右から左に順番に選択することになる。
【０２２０】
上記選択パターンにおいて、誤差の拡散方法は、上記一方のグループについては、図２８（ａ）に示すように、選択画素データの右隣及び左下と、選択画素データの右下にある他方のグループの画素データの右隣とにある同じグループの３つの未処理画素データに誤差を拡散する方式と、図２８（ｂ）に示す誤差拡散マトリクスのように、選択画素データの右隣及び左下と、選択画素データの右下にある他方のグループの画素データの右隣とにある同じグループの３つの未処理画素データと、選択画素データの右隣にある画素データの右隣と、選択画素データの真下及び右下とにある他のグループの３つの未処理画素データとに誤差を拡散する方式との２通りの方式があり、一方、上記他方のグループについては、図２８（ｃ）に示す誤差拡散マトリクスのように、選択画素データの左側他のグループの２つ画素データを飛び越した先と、選択画素データの左上及びその左隣と、選択画素データの右斜め上にある他方のグループの画素データの右隣及びその右隣とにある同じグループの５つの画素データに誤差を拡散する方式がある。
【０２２１】
（４）パターン４は、図２９に示すように、画像データを、上記実施の形態における設定番号「２０」、「２１」の例と同様に、１画素単位の複数の画像データ領域に分割すると共に、当該画像データ領域を格子状に２つのグループに区分し、当該区分された画像データにおいて、一方のグループには、各列毎に左から右に向かって、且つ各列の画素データを上から下に向かって同じグループの画素データを順番に選択させるようにし（図２９中に示す番号１〜３２が画素データの選択順番に対応）、一方、他方のグループには、各列毎に左から右に向かって、且つ各列の画素データを下から上に向かって同じグループの画素データを順番に選択させるようにする（図２９中に示す番号１'〜３２'が画素データの選択順番に対応）。つまり、両グループ共に、同じグループの画素データを１つ選択したら、当該画素データと同じ列において隣接する他方のグループの画素データを上から下又は下から上に１つ飛び越して、同じグループの次の１画素を選択するといったように、１画素選択、１画素飛び越し、１画素選択・・・といった順で各列毎に同じグループの画素データを上から下に又は下から上に順番に選択することになる。
【０２２２】
上記選択パターンにおいて、誤差の拡散方法は、上記実施の形態における設定番号「２０」、「２１」の例と同様の誤差拡散マトリクスを用いて行うことが可能である。
（５）パターン５は、図３０に示すように、画像データを、上記実施の形態における設定番号「２０」、「２１」の例と同様に、１画素単位の複数の画像データ領域に分割すると共に、当該画像データ領域を格子状に２つのグループに区分している。ここで、当該区分された画像データにおいて、その行（横）方向をｘ座標に、その列（縦）方向をｙ座標にそれぞれ対応付け、且つ、左上の画素データの座標が（ｘ，ｙ）＝（１，１）、右下の画素データの座標が（ｘ，ｙ）＝（８，８）となるように各行及び各列にそれぞれ１〜８の番号を付すこととする。そして、一方のグループには、当該グループの画素データの選択順番に対応する図３０中に示す番号１〜３２の順番に従って、画像データにおける、座標（７，１）の画素データを開始点として、以降は、座標（８，２）→（５，１）→（６，２）→（７，３）→（８，４）→（３，１）・・・→（２，８）といった順番に画素データを左上から右下の斜め方向に選択させるようにする。一方、他方のグループには、当該グループの画素データの選択順番に対応する図３０中に示す番号１'〜３２'の順番に従って、画像データにおける、座標（１，８）の画素データを開始点として、以降は、座標（３，８）→（２，７）→（１，６）→（５，８）→（４，７）→（３，６）・・・→（８，１）といった順番に画素データを右下から左上の斜め方向に選択させるようにする。
【０２２３】
また、画素データの選択パターンは上記した順番に限らず、図３２に示すように、一方のグループには、当該グループの画素データの選択順番に対応する図３２中に示す番号１〜３２の順番に従って、画像データにおける、座標（７，１）の画素データを開始点として、以降は、座標（８，２）→（８，４）→（７，３）→（６，２）→（５，１）→（３，１）・・・→（２，８）といった順番に画素データを、まず左上から右下の斜め方向に選択させ、以降は、一番右下の画素データに到達したら下方向に他方のグループの１画素を飛び越した先の同じグループの次の画素データから折り返して右下から左上に向かって順番に画素データを選択し、一番左上の画素データに到達したら左方向に他方のグループの１画素を飛び越した先の同じグループの次の画素データから折り返して左上から右下に順番に画素データを選択するといったように、各選択方向の最後に選択される画素データに到達したらその選択方向を次の画素データから反対方向に切替えるように選択させても良い。同様に、他方のグループには、当該グループの画素データの選択順番に対応する図３２中に示す番号１'〜３２'の順番に従って、画像データにおける、座標（１，８）の画素データを開始点として、以降は、座標（３，８）→（２，７）→（１，６）→（１，４）→（２，５）→（３，６）・・・→（８，１）といった順番に画素データを、開始点の画素データを選択後、まず右下から左上の斜め方向に選択させ、以降は、一番左上の画素データに到達したら上方向に他方のグループの１画素を飛び越した先の同じグループの次の画素データから折り返して左上から右下に向かって順番に画素データを選択し、一番右下の画素データに到達したら右方向に他方のグループの１画素を飛び越した先の同じグループの次の画素データから折り返して右下から左上に順番に画素データを選択するといったように、各選択方向の最後に選択される画素データに到達したらその選択方向を次の画素データから反対方向に切替えるように選択させても良い。
【０２２４】
上記選択パターンにおいて、誤差の拡散方法は、上記一方のグループについては、図３１（ａ）に示すように、選択画素データの左隣にある他方のグループの画素データの左隣と、選択画素データの左下及び右下とにある同じグループの３つの未処理画素データに誤差を拡散する方式と、図３０（ｂ）に示すように、選択画素データの左隣にある他方のグループの画素データの左隣と、選択画素データの左下及び右下とにある同じグループの３つの未処理画素データと、選択画素データの左隣及び真下と、選択画素データの右下にある同じグループの画素データの真下とにある３つの他方のグループの未処理画素データとに誤差を拡散する方式との２通りの方式があり、一方、上記他方のグループについては、図３１（ｃ）に示すように、選択画素データの右隣にある上記一方のグループの画素データの右隣と、選択画素データの右上及び左上と、選択画素データの真上の上記一方のグループの画素データの真上とにある同じグループの４つの画素データに誤差を拡散する方式がある。
【０２２５】
また、上記（２）〜（４）の各パターンにおいても、上記（１）のように、各行毎又は各列毎に画素データの選択方向を切替えるようにしても良い。
また、上記実施の形態において、誤差拡散マトリクス１〜４を例に処理を説明したが、これに限らず、誤差拡散マトリクスにおける、誤差の拡散方向、拡散割合、拡散範囲などを画像データや印刷用データなどの用途に応じて別のものに変更するようにしても良い。
【０２２６】
また、上記実施の形態においては、Ｎ値化データとして、Ｎ値化した画像データ及び印刷用データを生成するようにしたが、これに限らず、別の用途向けのＮ値化データを生成するようにしても良いし、本発明の画像処理装置１００を、印刷用データ生成専用機として、インクジェットプリンタ等の印刷装置に内蔵する構成としても良い。
また、上記実施の形態においては、行単位及び１画素単位で画像データを分割する例を説明したが、これに限らず、列単位、２画素単位、４画素単位など別の単位で分割するようにしても良い。
【０２２７】
また、上記実施の形態においては、行単位に互い違いに交差した形状、画素単位に格子状に交差した形状の２種類の形状となるように画像データを分割及びグループ化するようにしたが、これに限らず、右回転及び左回転の２つの渦巻形状に画像を分割及びグループ化するようにするなど、別の形状となるように分割及びグループ化するようにしても良い。
【０２２８】
また、上記実施の形態においては、２以上の画像データ領域を２つのグループに区分する例を説明したが、これに限らず、３つ以上のグループに区分するようにしても良い。
これによって、高解像度プリンタの印刷用データを生成する場合に、誤差の拡散方向をより多方面に取ることができるため誤差拡散処理結果の画像の印刷結果は、より高画質になる。
【０２２９】
例えば、図３３に示すように、画像データを、１画素単位の複数の画像データ領域に分割すると共に、当該画像データ領域を格子状に４つのグループ（グループ１〜４）に区分し、グループ１の画素データの選択順番を、図３３中に示す番号１〜１６の順とし、グループ２の画素データの選択順番を、図３３中に示す番号１'〜１６'の順とし、グループ３の画素データの選択順番を、図３３中に示す番号（１）〜（１６）の順とし、グループ４の画素データの選択順番を、図３３中に示す番号（１）'〜（１６）'の順とする。
【０２３０】
この図３３の例において、誤差の拡散方法は、同じグループにのみ誤差を拡散する方法として、グループ１については、図３４（ａ）に示すように、選択画素データの右隣にあるグループ４の画素データの右隣と、選択画素データの右下にあるグループ２の画素データの右下と、選択画素データの真下にあるグループ３の画素データの真下と、選択画素データの左下にあるグループ２の画素データの左下とにある４つの未処理画素データに誤差を拡散する方式がある。
【０２３１】
更に、同じグループにのみ誤差を拡散する方法として、グループ２については、図３４（ｄ）に示すように、選択画素データの左隣にあるグループ３の画素データの左隣と、選択画素データの左上にあるグループ１の画素データの左上と、選択画素データの真上にあるグループ３の画素データの真上と、選択画素データの右上にあるグループ１の画素データの右上とにある同じグループの４つの未処理画素データに誤差を拡散する方式がある。
【０２３２】
更に、同じグループにのみ誤差を拡散する方法として、グループ３については、図３４（ｃ）に示すように、選択画素データの真上にあるグループ１の画素データの真上と、選択画素データの右上にあるグループ４の画素データの右上と、選択画素データの右隣にあるグループ２の画素データの右隣と、選択画素データの右下にあるグループ４の画素データの右下とにある同じグループの４つの未処理画素データに誤差を拡散する方式がある。
【０２３３】
更に、同じグループにのみ誤差を拡散する方法として、グループ４については、図３４（ｂ）に示すように、選択画素データの真下にあるグループ１の画素データの真下と、選択画素データの左下にあるグループ３の画素データの左下と、選択画素データの左隣にあるグループ１の画素データの左隣と、選択画素データの左上にあるグループ３の画素データの左上とにある同じグループの４つの未処理画素データに誤差を拡散する方式がある。
【０２３４】
一方、上記図３３の例において、他のグループにも誤差を拡散する方法として、グループ１については、図３５（ａ）に示すように、選択画素データの右隣にあるグループ４の画素データの右隣と、選択画素データの右下にあるグループ２の画素データの右下と、選択画素データの真下にあるグループ３の画素データの真下と、選択画素データの左下にあるグループ２の画素データの左下とにある同じグループの４つの未処理画素データと、選択画素データの右下及び左下にある他のグループの２つの未処理画素データとに誤差を拡散する方式がある。
【０２３５】
更に、他のグループにも誤差を拡散する方法として、グループ３については、図３５（ｃ）に示すように、選択画素データの真上にあるグループ１の画素データの真上と、選択画素データの右上にあるグループ４の画素データの右上と、選択画素データの右隣にあるグループ２の画素データの右隣と、選択画素データの右下にあるグループ４の画素データの右下とにある同じグループの４つの未処理画素データと、選択画素データの右上及び右下にある他のグループの２つの未処理画素データとに誤差を拡散する方式がある。
【０２３６】
ここで、他のグループにも誤差を拡散する方法においては、グループ２及びグループ４の誤差拡散マトリクスは、上記した同じグループにのみ誤差を拡散する方法のものと同様である。
また、グループ１及びグループ３の両方共が他のグループにも誤差を拡散する場合に、各グループの処理順番としては、グループ２は、グループ１の処理後に処理を行い、グループ４は、グループ３の処理後に処理を行う。また、グループ１及びグループ３の処理を同時に行い、その後、グループ２及びグループ４の処理を同時に行うことも可能である。
【０２３７】
また、上記実施の形態においては、画像データの画像を１種類の画像として取り扱った例を説明したが、これに限らず、例えば、図３６に示すように、２アップ印刷（２分割印刷）用のデータを生成するときなどのように、１つの画像データに、２種類の画像が含まれるようなときに、各画像毎に領域の分割及びグループ化を行い、それぞれに対して並列にＮ値化及び誤差拡散処理を施すようにしても良い。このようにすることで、画素データの選択パターンの組み合わせによって、処理速度を２倍〜４倍にすることが可能となる。なお、画素データの選択パターンは、上記実施の形態と同様のパターンを適用することが可能である。また、画像の切れ目の部分については、特にＮ値化及び誤差拡散処理を施す必要は無い。
【０２３８】
また、本発明は、図３７に示すように、上記実施の形態における画像処理装置１００を構成する、画像データ取得部１０、グループ化部１１及びＮ値化部１２に、例えば、既存のインクジェット方式のプリンタ等が備える印刷機能を有した印刷部１４を付加して、印刷装置３００として構成することも可能である。この場合は、Ｎ値化部１２ｂ及び誤差拡散処理部１２ｃは、上記実施の形態と同様に印刷用データを生成する印刷用データ生成手段としての機能も有し、当該生成した印刷用データを印刷部１４に出力する。そして、印刷部１４は、例えば、印刷用紙などの印刷に用いられる媒体にドットを形成可能なノズルを有する印刷ヘッド、当該印刷ヘッドを前記媒体上をその幅方向に往復移動させる印刷ヘッド送り機構（マルチパス型の場合）、前記媒体を移動させるための紙送り機構、印刷ヘッドのインクの吐出を制御する印刷制御機構などを、前記印刷用データに基づき制御して、前記媒体に画像を印刷する。
【０２３９】
この場合において、画像データ取得部１０は、形態１又は２２の画像データ取得手段に対応し、グループ生成部１１は、形態１、２、３、４、５、２２、２３、２４、２５及び２６のいずれか１のグループ化手段に対応し、画素データ選択部１２ａは、形態１、７、２２及び２６のいずれか１の画素データ選択手段に対応し、Ｎ値化部１２ｂは、形態１又は２２のＮ値化処理手段に対応し、誤差拡散処理部１２ｃは、形態１、５、６、７、２２、２６、２７及び２８のいずれか１の誤差拡散手段に対応し、Ｎ値化部１２ｂ及び誤差拡散処理部１２ｃにおける印刷用データの生成処理は、形態２２の印刷用データ生成手段に対応し、印刷部１４は、形態２２の印刷手段に対応する。
【０２４０】
また、この場合において、上記実施の形態における図３〜図５のフローチャートの処理は、これに印刷ステップが加わるのみで他は同様となるので、ステップＳ１００，Ｓ１０２は、形態８、１５、２９及び３６のいずれか１の画像データ取得ステップに対応し、ステップＳ１０４は、形態８、９、１０、１１、１２、１５、１６、１７、１８、１９、２９、３０、３１、３２、３３、３６、３７、３８、３９及び４０のいずれか１のグループ化ステップに対応し、ステップＳ３０４は、形態８、１４、１５、２０、２９、３５、３６及び４２のいずれか１の画素データ選択ステップに対応し、ステップＳ３０６，Ｓ３０８は、形態８、１５、２９及び３６のいずれか１のＮ値化処理ステップに対応し、ステップＳ３１０，３１２は、形態８、１１、１３、１４、１５、１９、２０、２１、２９、３３、３４、３５、３６、４０、４１及び４２のいずれか１の誤差拡散ステップに対応する。
【０２４１】
また、本発明は、図３８に示すように、上記実施の形態における画像処理装置１００を構成する、画像データ取得部１０、グループ化部１１及びＮ値化部１２に、例えば、ＰＣ（Personal Computer）等に搭載された既存のグラフィックスカード等の、ＣＲＴディスプレイや液晶ディスプレイ等の被表示部に画像を表示する機能を有した表示部１５を付加して、表示装置４００（被表示部を含んだ構成としても良い）として構成することも可能である。この場合は、Ｎ値化部１２ｂ及び誤差拡散処理部１２ｃは、予め設定された閾値及び変換値に基づき、画像データの輝度値を閾値に対応する変換値に変換した値をＮ値化後の値としたＮ値化データを表示部１５に出力する。そして、表示部１５は、このＮ値化データに基づき、被表示部に画像を表示する。
【０２４２】
この場合において、画像データ取得部１０は、形態１又は６４の画像データ取得手段に対応し、グループ生成部１１は、形態１、２、３、４、５、６４、６５、６６、６７及び６８のいずれか１のグループ化手段に対応し、画素データ選択部１２ａは、形態１、７、６４及び６８のいずれか１の画素データ選択手段に対応し、Ｎ値化部１２ｂは、形態１又は６４のＮ値化処理手段に対応し、誤差拡散処理部１２ｃは、形態１、５、６、７、６４、６８、６９及び７０のいずれか１の誤差拡散手段に対応し、表示部１５は、形態６４の表示手段に対応する。
【０２４３】
また、この場合において、上記実施の形態における図３〜図５のフローチャートの処理は、これに表示ステップが加わるのみで他は同様となるので、ステップＳ１００，Ｓ１０２は、形態８、１５、７１及び７８のいずれか１の画像データ取得ステップに対応し、ステップＳ１０４は、形態８、９、１０、１１、１２、１５、１６、１７、１８、１９、７１、７２、７３、７４、７５、７８、７９、８０、８１及び８２のいずれか１のグループ化ステップに対応し、ステップＳ３０４は、形態８、１４、１５、２０、７１、７７、７８及び８４のいずれか１の画素データ選択ステップに対応し、ステップＳ３０６，Ｓ３０８は、形態８、１５、７１及び７８のいずれか１のＮ値化処理ステップに対応し、ステップＳ３１０，３１２は、形態８、１１、１３、１４、１５、１９、２０、２１、７１、７５、７６、７７、７８、８２、８３及び８４のいずれか１の誤差拡散ステップに対応する。
【図面の簡単な説明】
【０２４４】
【図１】本発明に係る画像処理装置１００の機能構成を示すブロック図である。
【図２】コンピュータシステムのハードウェア構成を示す図である。
【図３】画像処理装置１００における画像処理を示すフローチャートである。
【図４】画像処理装置１００における、グループ生成処理を示すフローチャートである。
【図５】画像処理装置１００における、Ｎ値化処理を示すフローチャートである。
【図６】Ｎ値化指示情報（番号情報）に対応したグループ化情報及びＮ値化情報の一例を示す図である。
【図７】印刷用データを生成する場合（タイプ１の場合）の、Ｎ値の情報、各Ｎ値に対する閾値の情報の一例を示す図である。
【図８】画像データの構成例を示す図である。
【図９】（ａ）及び（ｂ）は、画素データの選択順序の一例及び行単位の画像データ領域をグループ化した一例を示す図である。Ｍ値の画像データの一部を示す図である。
【図１０】（ａ）〜（ｄ）は、誤差拡散マトリクス１及び誤差拡散マトリクス２を示す図である。
【図１１】（ａ）及び（ｂ）は、誤差拡散マトリクス１及び誤差拡散マトリクス２の処理方式を示す図である。
【図１２】誤差拡散マトリクス１を用いた誤差拡散処理を示す図である。
【図１３】誤差拡散マトリクス２を用いた誤差拡散処理を示す図である。
【図１４】（ａ）及び（ｂ）は、画素データの選択順序の一例及び１画素単位の画像データ領域をグループ化した一例を示す図である。
【図１５】（ａ）〜（ｄ）は、誤差拡散マトリクス３及び誤差拡散マトリクス４を示す図である。
【図１６】（ａ）及び（ｂ）は、誤差拡散マトリクス３及び誤差拡散マトリクス４の処理方式を示す図である。
【図１７】誤差拡散マトリクス３を用いた誤差拡散処理を示す図である。
【図１８】誤差拡散マトリクス４を用いた誤差拡散処理を示す図である。
【図１９】本実施例で用いたグラデーション画像である。
【図２０】従来の誤差拡散手法における誤差拡散マトリクスである。
【図２１】図１９のグラデーション画像を、図２０に示す従来手法における誤差拡散マトリクスを用いて４値化した結果を示す図である。
【図２２】（ａ）及び（ｂ）は、本発明に係る誤差拡散手法における誤差拡散マトリクスである。
【図２３】図１９のグラデーション画像を、図２２に示す本発明に係る誤差拡散マトリクスを用いて４値化した結果を示す図である。
【図２４】（ａ）は、格子状にグループ分けされた画像データにおいて、行単位で画素データの選択方向を切替える選択パターンの一例を示す図であり、（ｂ）は、（ａ）の選択パターンにおける誤差拡散処理の一例を示す図である。
【図２５】１画素単位のグループと、２画素単位のグループとに格子状にグループ分けされた画像データにおける、画素データの選択パターンの一例を示す図である。
【図２６】（ａ）〜（ｃ）は、図２５の選択パターンに適用可能な誤差拡散方法の一例を示す図である。
【図２７】２画素単位の２つのグループに格子状にグループ分けされた画像データにおける、画素データの選択パターンの一例を示す図である。
【図２８】（ａ）〜（ｃ）は、図２７の選択パターンに適用可能な誤差拡散方法の一例を示す図である。
【図２９】格子状にグループ分けされた画像データにおいて、各グループの列毎に画素データを選択する選択パターンの一例を示す図である。
【図３０】格子状にグループ分けされた画像データにおいて、各グループの画素データを斜め方向に選択する選択パターンの一例を示す図である。
【図３１】図３０及び図３２の選択パターンに適用可能な誤差拡散方法の一例を示す図である。
【図３２】格子状にグループ分けされた画像データにおいて、各グループの画素データを斜め方向に選択し且つ選択方向の切替えも行う選択パターンの一例を示す図である。
【図３３】格子状に４つのグループにグループ分けされた画像データにおける、画素データの選択パターンの一例を示す図である。
【図３４】（ａ）〜（ｄ）は、同じグループの未処理画素データにのみ誤差を拡散する場合の誤差拡散方法の一例を示す図である。
【図３５】（ａ）〜（ｄ）は、他のグループの未処理画素データにも誤差を拡散する場合の誤差拡散方法の一例を示す図である。
【図３６】２アップ印刷用の印刷用データを生成する際の、画素データの選択パターンの一例を示す図である。
【図３７】本発明に係る印刷装置３００の機能構成を示す図である。
【図３８】本発明に係る表示装置４００の機能構成を示す図である。
【図３９】（ａ）〜（ｃ）は、重みベクトルの説明図である。
【符号の説明】
【０２４５】
１００…画像処理装置、２００…コンピュータシステム、３００…印刷装置、４００…表示装置、１０…画像データ取得部、１１…グループ生成部、１１ａ…グループ化部、１１ｂ…グループ化情報記憶部、１２…Ｎ値化処理部、１２ａ…画素データ選択部、１２ｂ…Ｎ値化部、１２ｃ…誤差拡散処理部、１２ｄ…Ｎ値化情報記憶部、１３…Ｎ値化データ記憶部、１４…印刷部、１５…表示部
【図１】
2006229928.tif 000007
【図２】
2006229928.tif 000008
【図３】
2006229928.tif 000009
【図４】
2006229928.tif 000010
【図５】
2006229928.tif 000011
【図６】
2006229928.tif 000012
【図７】
2006229928.tif 000013
【図８】
2006229928.tif 000014
【図９】
2006229928.tif 000015
【図１０】
2006229928.tif 000016
【図１１】
2006229928.tif 000017
【図１２】
2006229928.tif 000018
【図１３】
2006229928.tif 000019
【図１４】
2006229928.tif 000020
【図１５】
2006229928.tif 000021
【図１６】
2006229928.tif 000022
【図１７】
2006229928.tif 000023
【図１８】
2006229928.tif 000024
【図１９】
2006229928.tif 000025
【図２０】
2006229928.tif 000026
【図２１】
2006229928.tif 000027
【図２２】
2006229928.tif 000028
【図２３】
2006229928.tif 000029
【図２４】
2006229928.tif 000030
【図２５】
2006229928.tif 000031
【図２６】
2006229928.tif 000032
【図２７】
2006229928.tif 000033
【図２８】
2006229928.tif 000034
【図２９】
2006229928.tif 000035
【図３０】
2006229928.tif 000036
【図３１】
2006229928.tif 000037
【図３２】
2006229928.tif 000038
【図３３】
2006229928.tif 000039
【図３４】
2006229928.tif 000040
【図３５】
2006229928.tif 000041
【図３６】
2006229928.tif 000042
【図３７】
2006229928.tif 000043
【図３８】
2006229928.tif 000044
【図３９】
2006229928.tif 000045