(57)【要約】【課題】  カラー画像データの色情報を区別可能にする画像処理プログラムを提供することにある。【解決手段】  複数色の階調値を有するカラー画像データをモノクロ画像データに変換する画像処理工程をコンピューターに実行させる画像処理プログラムにおいて、画像処理工程は、カラー画像データの各画素について、色毎に異なるディザマトリクスを適用し、カラー画像データの各色の入力階調値を、各色のディザマトリクスに基づいて画素毎のドットデータに変換し、複数色の変換された画素毎のドットデータを合成したモノクロ画像データを出力する変換工程を有し、ディザマトリクスは、ドットデータにより形成されるドット領域が色毎に異なるように構成されている。【選択図】    図６
2011023895.tif 000002
【特許請求の範囲】
【請求項１】
複数色の階調値を有するカラー画像データをモノクロ画像データに変換する画像処理工程をコンピューターに実行させる画像処理プログラムにおいて、
前記画像処理工程は、
前記カラー画像データの各画素について、色毎に異なるディザマトリクスを適用し、前記カラー画像データの各色の入力階調値を、各色の前記ディザマトリクスに基づいて画素毎のドットデータに変換し、複数色の前記変換された画素毎のドットデータを合成した前記モノクロ画像データを出力する変換工程を有し、
前記ディザマトリクスは、前記ドットデータにより形成されるドット領域が前記色毎に異なるように構成されていることを特徴とするコンピューター読み取り可能な画像処理プログラム。
【請求項２】
請求項１において、
前記ディザマトリクスは、所定の入力階調値に対応する前記ドット領域の面積の割合が、当該色の明度の寄与率に対応するように構成されていることを特徴とする画像処理プログラム。
【請求項３】
請求項１において、
前記ディザマトリクスは、最大の前記入力階調値に対応する前記ドット領域に対する出力濃度の割合が、当該色の明度の寄与率に対応するように構成されていることを特徴とする画像処理プログラム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記ディザマトリクスは、最大階調値を含む第１の入力階調値領域を除く第２の入力階調値領域の入力階調値に対応する前記ドット領域が前記複数色間で重ならないように構成されていることを特徴とする画像処理プログラム。
【請求項５】
請求項１乃至３のいずれかにおいて、
前記ディザマトリクスは、前記ドット領域が前記複数色間で重ならないように構成されていることを特徴とする画像処理プログラム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記ディザマトリクスは、前記複数色間において同サイズであることを特徴とする画像処理プログラム。
【請求項７】
請求項１乃至５のいずれかにおいて、
前記ディザマトリクスは、第１の色成分の前記ディザマトリクスは、それ以外の第２の色成分の前記ディザマトリクスの倍数サイズであることを特徴とする画像処理プログラム。
【請求項８】
複数色の階調値を有するカラー画像データをモノクロ画像データに変換する画像処理方法であって、
前記カラー画像データの各画素について、色毎に異なるディザマトリクスを適用し、前記カラー画像データの各色の入力階調値を、各色の前記ディザマトリクスに基づいて画素毎のドットデータに変換し、複数色の前記変換された画素毎のドットデータを合成した前記モノクロ画像データを出力する変換工程を有し、
前記ディザマトリクスは、前記ドットデータにより形成されるドット領域が前記色毎に異なるように構成されていることを特徴とする画像処理方法。
【請求項９】
請求項８において、
前記ディザマトリクスは、所定の入力階調値に対応する前記ドット領域の面積の割合が、当該色の明度の寄与率に対応するように構成されていることを特徴とする画像処理方法。
【請求項１０】
請求項８において、
前記ディザマトリクスは、最大の前記入力階調値に対応する前記ドット領域に対する出力濃度の割合が、当該色の明度の寄与率に対応するように構成されていることを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラー画像データをモノクロ画像データに変換する画像処理プログラム、画像処理方法に関する。
【背景技術】
【０００２】
カラー画像データをモノクロ（グレースケール）画像データに変換する画像処理は、次のような計算式を用いて、カラー画像データの各画素についてＲＧＢ情報をＧｒａｙ値に変換し、Ｇｒａｙ値に対してディザマトリクスを用いて二値化する。
Ｇｒａｙ＝０．３Ｒ＋０．５９Ｇ＋０．１１Ｂ
上記の計算式では、カラー画像データの有する明度情報が、Ｇｒａｙ値に反映される。
【０００３】
しかしながら、上記の方法では、カラー画像データを白から黒のＧｒａｙ値に置き換えるだけであり、例えば、「Ｒ＝２５５、Ｇ＝０、Ｂ＝０」、「Ｒ＝０、Ｇ＝１２８、Ｂ＝０」、「Ｒ＝０、Ｇ＝１０２、Ｂ＝１５３」、「Ｒ＝１５３、Ｇ＝０、Ｂ＝２０４」のカラー画像データは、同等のＧｒａｙ値となる。そのため、モノクロ画像では元のカラー画像を区別することができない。
【０００４】
特許文献１では、カラー画像が色空間上のグレイ軸近辺、黒赤軸近辺、黒緑軸近辺、黒青軸近辺のどの領域に属するかを判別し、属する領域に応じてドットパターンが異なるディザマトリクスのうちいずれかを選択し、カラー画像データに対応するグレイ値を選択したディザマトリクスに基づいて二値化している。これにより、色領域は異なるが、同等のＧｒａｙ値をもつカラー画像を異なるドットパターンのモノクロ画像で印刷し、当該カラー画像データの色領域を区別可能にすることが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−１８６３５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１では、同等のＧｒａｙ値を示す、グレイ軸近辺、黒赤軸近辺、黒緑軸近辺、黒青軸近辺のモノクロ画像データを区別可能ではあるが、４種類のいずれかの領域に包含されてしまうため、カラー画像データの色情報を区別するための階調表現が十分とはいえない。
【０００７】
そこで、本発明は、カラー画像データをモノクロ画像データに変換する画像処理プログラムであって、カラー画像データの色情報を区別可能にする画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の第１の側面によれば、複数色の階調値を有するカラー画像データをモノクロ画像データに変換する画像処理工程をコンピューターに実行させる画像処理プログラムにおいて、前記画像処理工程は、前記カラー画像データの各画素について、色毎に異なるディザマトリクスを適用し、前記カラー画像データの各色の入力階調値を、各色の前記ディザマトリクスに基づいて画素毎のドットデータに変換し、複数色の前記変換された画素毎のドットデータを合成した前記モノクロ画像データを出力する変換工程を有し、前記ディザマトリクスは、前記ドットデータにより形成されるドット領域が前記色毎に異なるように構成されている。
【０００９】
この態様によれば、色領域は異なるが同等の明度を有するカラー画像データであっても、その色領域を区別可能なモノクロ画像データに変換することができる。
【００１０】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、所定の入力階調値に対応する前記ドット領域の面積の割合が、当該色の明度の寄与率に対応するように構成されている。
【００１１】
この態様によれば、カラー画像データの明度を保持しながら、色領域を区別可能なモノクロ画像データに変換することができる。
【００１２】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、最大の前記入力階調値に対応する前記ドット領域に対する出力濃度の割合が、当該色の明度の寄与率に対応するように構成されている。
【００１３】
この態様によれば、カラー画像データの明度を保持しながら、色領域を区別可能なモノクロ画像データに変換できる。また、当該モノクロ画像データの出力濃度には、カラー画像データの明度情報が反映される。
【００１４】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、最大階調値を含む第１の入力階調値領域の除く第２の入力階調値領域の入力階調値に対応する前記ドット領域が前記複数色間で重ならないように構成されている。
【００１５】
この態様によれば、高い閾値を有する画素以外の画素では、ドットを発生させる画素が重複しないため、異なる色のカラー画像に対応するモノクロ画像データのドットパターンがユニークになると共に、ドット面積の大きさまたはドット面積に対応する出力濃度を、入力階調値に対応してリニアに増加させることができる。
【００１６】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、前記ドット領域が前記複数色間で重ならないように構成されている。
【００１７】
この態様によれば、各色のドットを発生させる領域が重複しないため、色情報が異なるカラー画像データを異なるドットパターンのユニークなモノクロ画像データに変換できる。
【００１８】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、前記複数色間において同サイズである。
【００１９】
この態様によれば、ディザマトリクスが同サイズであるため、各ディザマトリクスを対応させた場合に、各色のドットを発生させる画素の領域の形状や配置が異なるように設定し易い。
【００２０】
上記の第１の側面において好ましい態様によれば、さらに、前記ディザマトリクスは、第１の色成分の前記ディザマトリクスは、それ以外の第２の色成分の前記ディザマトリクスの倍数サイズである。
【００２１】
この態様によれば、ディザマトリクスのサイズが異なる場合であっても、各ディザマトリクスを対応させた場合に、各色のドットを発生させる画素の領域の形状や配置が異なるように設定することができる。
【図面の簡単な説明】
【００２２】
【図１】本実施の形態における地紋画像形成装置の含むシステムの構成を示す図である。
【図２】従来の方法によってモノクロ変換されたカラー画像を表した図である。
【図３】シアン用、マゼンダ用ディザマトリクスを表す図である。
【図４】イエロー用ディザマトリクス、各色のディザマトリクス対応図を表す図である。
【図５】入力階調値に対応するドット面積の関係を表した表図である
【図６】カラー画像データをモノクロ変換する処理を表すフローチャート図である。
【図７】図６のフローチャート図の別の形態を表すフローチャート図である。
【図８】本発明によってモノクロ変換されたカラー画像を表した図である。
【図９】図８のカラー画像Ａのモノクロ画像８１を拡大した図である。
【図１０】図８のカラー画像Ｂのモノクロ画像８２を拡大した図である。
【図１１】図８のカラー画像Ｃのモノクロ画像８３を拡大した図である。
【図１２】図８のカラー画像Ｄのモノクロ画像８４を拡大した図である。
【図１３】シアン用ディザマトリクスとルックアップテーブルを表す図である。
【図１４】印刷エンジンの出力濃度特性と、入力階調値と出力濃度の関係を表す図である。
【図１５】第２の実施の形態例のシアン用、マゼンダ用ディザマトリクスを表す図である。
【図１６】第２の実施の形態例のイエロー用ディザマトリクスと対応図を表す図である。
【図１７】別の形態のシアン用、マゼンダ用ディザマトリクスを表す図である。
【図１８】別の形態のイエロー用ディザマトリクスと対応図を表す図である。
【発明を実施するための形態】
【００２３】
以下、図面にしたがって本発明の実施の形態について説明する。ただし、本発明の技術的範囲はこれらの実施の形態に限定されず、特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００２４】
図１は、本実施の形態における画像処理装置を含む印刷システムの構成を示す図である。画像処理装置は、ホストコンピューター１０にインストールされているプリンタードライバー１４と、各色用のディザマトリクス１５、１６、１７と、プリンター２０とで構成される。
【００２５】
各色用のディザマトリクス１５、１６、１７は、カラー画像データの各色の情報を２値化するために使用される。また、各色用のディザマトリクス１５、１６、１７は、プリンターメーカーによって、記録媒体もしくはインターネット等のネットワーク回線を介してユーザーに配布されるプリンタードライバー１４に含まれ、プリンタードライバー１４をホストコンピューター１０にインストールした時に、ホストコンピューター１０内の記録媒体に保存される。
【００２６】
ホストコンピューター１０は、ＣＰＵ１１とＲＡＭ１２とアプリケーションプログラム１３をさらに有し、アプリケーションプログラム１３を実行して文字、イメージ、グラフィックスなどからなる画像データを生成する。
【００２７】
そして、ホストコンピューター１０は、ユーザーによる画像データの印刷要求に応答して、プリンタードライバー１４を実行して印刷画像データを生成する。具体的には、プリンタードライバー１４は、画像データの印刷要求を受けると、プリンター２０が解釈可能なプリンター制御言語に基づき印刷画像データを生成し、プリンター２０のインターフェイスＩＦに送信する。
【００２８】
ユーザーによる印刷要求時、画像データをモノクロモードで印刷することが指定された場合、または、プリンター２０がカラーモードの印刷機能を有していない場合、プリンタードライバー１４は、カラー画像データをモノクロ画像データに変換して、当該モノクロ画像データの印刷画像データを生成する。モノクロ画像データは、単一色の色情報を有する画像データであり、例えば、ＣＭＹＫのうちの、Ｋのドットデータのみを有するビットマップデータである。ただし、Ｋ以外の単一色の色情報を有するビットマップデータであってもよい。
【００２９】
一方、プリンター２０は、画像を生成する印刷エンジン２６と、印刷エンジン２６の制御を行うコントローラー２５とを有する。コントローラー２５は、印刷画像データを画素内のドットデータに変換し、印刷エンジン２６に出力する。その結果、印刷エンジン２６は、画像データを印刷媒体上に印刷する。
【００３０】
図１では、ホストコンピューター１０のプリンタードライバー１４が、画像データのＲＧＢの色情報をＣＭＹの色情報に変換し、Ｋの色情報だけを有するモノクロ画像データに変換してプリンター２０に送信する形態を表している。しかし、プリンタードライバー１４はＲＧＢの色情報を有するカラー画像データをプリンター２０に送信し、プリンター２０のコントローラー２５が当該カラー画像データをモノクロ画像データに変換して印刷するような形態でもよい。
【００３１】
図２は、従来の方法によって、異なるＲＧＢの色情報を有するカラー画像がモノクロ変換されたモノクロ画像を表した図である。カラー画像Ａ２１は、「Ｒ＝２５５、Ｇ＝０、Ｂ＝０」、カラー画像Ｂ２２は、「Ｒ＝０、Ｇ＝１２８、Ｂ＝０」、カラー画像Ｃ２３は、「Ｒ＝０、Ｇ＝１０２、Ｂ＝１５３」、カラー画像Ｄ２４は「Ｒ＝１５３、Ｇ＝０、Ｂ＝２０４」の色情報を有する。
【００３２】
前述した通り、従来は、カラー画像データをモノクロ画像データに変換する場合、カラー画像データのＲＧＢの色情報を次の計算式に基づいてＧｒａｙ値に変換し、当該Ｇｒａｙ値に対してディザマトリクスを適用して二値化していた。
Ｇｒａｙ＝０．３Ｒ＋０．５９Ｇ＋０．１１Ｂ
各色Ｒ、Ｇ、Ｂの係数「０．３」、「０．５９」、「０．１１」は各色の明度の寄与率である。しかしながら、色の異なるカラー画像Ａ〜Ｄは同等のＧｒａｙ値に変換されるため、そのモノクロ画像２１〜２４は図２のように似たようなグレー画像になり、その色の違いを区別できない。
【００３３】
このように、モノクロ画像データは、カラー画像データのＲＧＢの色情報に各色の明度の寄与率を乗算して生成される。つまり、モノクロ画像データは、カラー画像データの明度情報に基づいて生成されている。そのため、カラー画像データをモノクロ画像データに変換した場合、明度の異なる複数のカラー画像データについては区別可能であるが、上記のように同等の明度を有する異なる色のカラー画像データについては区別できない。
【００３４】
そこで、本実施の形態では、複数色のカラー画像データについて、色毎に異なる画素の領域にドットを発生させるディザマトリクスを適用してカラー画像データの各色の入力階調値を画素毎のドットデータに変換し、各色の画素毎のドットデータを合成したモノクロ画像データを生成する。これにより、色が異なるカラー画像であって、同等の明度を有するカラー画像を区別可能なモノクロ画像データに変換する。
【００３５】
［第１の実施の形態例］
本実施の形態例では、カラー画像データの各画素についてＲＧＢ値をＣＭＹ値に変換し、ＣＭＹの各色に対して異なるディザマトリクスを適用してＫのドットデータを生成する。第１の実施の形態では、ＣＭＹの各色のディザマトリクスにおけるドットを発生させる割合を当該色の明度の寄与率に対応させる。本実施の形態例における明度の寄与率は、Ｇｒａｙ値を求める計算式にある通り、Ｃ（シアン）：０．３、Ｍ（マゼンダ）：０．５９、Ｙ（イエロー）：０．１１とする。ただし、明度の寄与率は、この比率に限定されるものではない。
【００３６】
図３、４は、ＣＭＹの各色のディザマトリクスの例を表す図である。各ディザマトリクスは、１６×１６ドットの閾値マトリクスであり、０〜２５５の入力階調値を想定している。この閾値マトリクスによれば、入力階調値が対応する画素の閾値よりも大きい場合にその画素にドットが発生する。
【００３７】
図３のシアン用ディザマトリクス３１では、当該ディザマトリクスの全ての画素に対応するシアンの入力階調値が最大の２５５の場合、７７の画素にドットが発生するように閾値が設定されている。入力階調値が２５５の場合、ドットを発生させる画素のディザマトリクス全体（１６×１６＝２５６）に対する割合は、「７７／２５６＝０．３０…」であり、このドット面積の割合はシアンの明度の寄与率に対応する。
【００３８】
図３のマゼンダ用ディザマトリクス３２では、同様に、当該ディザマトリクスの全ての画素に対応するマゼンダの入力階調値が最大の２５５の場合、１５０の画素にドットが発生するように閾値が設定されている。入力階調値が２５５の場合、ドットを発生させる画素のディザマトリクス全体における割合は、「１５０／２５６＝０．５８５…」であり、このドット面積の割合はマゼンダの明度の寄与率に対応する。
【００３９】
図４のイエロー用ディザマトリクス４１では、当該ディザマトリクスの全ての画素に対応するイエローの入力階調値が最大の２５５の場合、２９の画素にドットが発生するように閾値が設定されている。入力階調値が２５５の場合、ドットを発生させる画素のディザマトリクス全体における割合は、「２９／２５６＝０．１１３…」であり、このドット面積の割合はイエローの明度の寄与率に対応する。
【００４０】
図４のディザマトリクス対応図４２は、ＣＭＹの各色用のディザマトリクスにおけるドットを発生させる画素を重ねたディザマトリクスの図である。このように、ディザマトリクスによって、ドットを発生させる画素の領域の形状や配置が異なる。これにより、カラー画像データの色情報が異なる場合に各色に対してドットが発生する画素の領域が異なり、同等の明度を有するカラー画像データであっても、その色を区別可能なモノクロ画像データに変換できる。また、各色のドットが生成される画素の面積の割合が、明度の寄与率に対応しているので、モノクロ画像にカラー画像の明度を再現させることができる。
【００４１】
また、ディザマトリクス対応図４２では、ＣＭＹの各色用のディザマトリクスにおけるドットを発生させる画素が重複していない。これにより、各色のドットを発生させる領域が重複しないため、色情報が異なるカラー画像データを異なるドットパターンのユニークなモノクロ画像データに変換できる。
【００４２】
なお、各色のドットを発生させる画素の領域の形状や配置は、図３、４のディザマトリクスに限定されるものではなく、各色のディザマトリクスにおいてドットを発生させる画素の面積が明度の寄与率に対応していればよい。
【００４３】
図５は、１６×１６ドットの閾値マトリクスにおける入力階調値とドット面積の関係を表す図である。例えば、各色の入力階調値が「Ｃ＝２５５、Ｍ＝２５５、Ｙ＝２５５」の場合、各色のディザマトリクスにおけるドットを発生させる画素数は「Ｃ：７７、Ｍ：１５０、Ｙ：２９」であることを表している。また、各色の画素数は、当該色の明度の寄与率に対応している。
【００４４】
ドットを発生させる面積は階調値に対してリニアに変動するため、各色の入力階調値が「Ｃ＝８０、Ｍ＝８０、Ｙ＝８０」、「Ｃ＝１２６、Ｍ＝１２６、Ｙ＝１２６」の場合も同様に、各ディザマトリクスにおけるドットを発生させる画素の割合が各色の明度の寄与率に対応するように、各色のディザマトリクスの閾値を設定する。また、ＣＭＹが異なる入力階調値であっても同様である。
【００４５】
また、図３、４では、閾値マトリクスを例示しているが、閾値マトリクスに限定されるものではなく、例えば、ルックアップテーブルに対応した多値ディザマトリクスを使用してもよい。ルックアップテーブルを使用する例については後述する。また、マトリクスのサイズも、１６×１６ドットに限定されるものではない。
【００４６】
次に、図３、４の各色用のディザマトリクスを使用して、カラー画像データをモノクロ画像データに変換する処理について説明する。
【００４７】
図６は、カラー画像データをモノクロ画像データに変換する処理を表すフローチャート図である。はじめに、プリンタードライバー１４は、カラー画像データの画素のインデックスｉ、ｊをそれぞれｉ＝０、ｊ＝０に初期化する（Ｓ１０１）。
【００４８】
そして、プリンタードライバー１４は、当画素（ｉ、ｊ）のＲＧＢ値をＣＭＹ値に変換する（Ｓ１０２）。ＲＧＢ値をＣＭＹ値に変換する計算式は以下の通りである。
Ｃ＝２５５−Ｒ
Ｍ＝２５５−Ｇ
Ｙ＝２５５−Ｂ
次に、プリンタードライバー１４は、Ｃ（シアン）値がシアン用のディザマトリクスの対応する画素の閾値より大きいか否か判断する（Ｓ１０３）。Ｃ値が閾値以下の場合（Ｓ１０３のＮＯ）、プリンタードライバー１４は、Ｍ（マゼンダ）値がマゼンダ用のディザマトリクスの対応する画素の閾値より大きいか否か判断する（Ｓ１０４）。Ｍ値が閾値以下の場合（Ｓ１０４のＮＩ）、プリンタードライバー１４は、さらに、Ｙ（イエロー）値がイエロー用のディザマトリクスの対応する画素の閾値より大きいか否か判断する（Ｓ１０５）。
【００４９】
Ｙ値が閾値以下の場合（Ｓ１０５のＮＯ）、プリンタードライバー１４は、当画素（ｉ、ｊ）のＫ（黒）のドットデータをドットＯＦＦ（ドットなし）に設定する（Ｓ１０７）。一方、Ｃ値が閾値より大きい場合（Ｓ１０３のＹＥＳ）、Ｍ値が閾値より大きい場合（Ｓ２０４のＹＥＳ）、または、Ｙ値が閾値より大きい場合（Ｓ１０５のＹＥＳ）は、プリンタードライバー１４は当画素（ｉ、ｊ）のＫ（黒）のドットデータをドットＯＮ（ドットあり）に設定する（Ｓ１０６）。
【００５０】
上記の処理が完了すると、プリンタードライバー１４は、画素の行方向のインデックスｊをインクリメントし（Ｓ１０８）、インデックスｊが印刷サイズ幅に達するまで（Ｓ１０９）同じ処理を繰り返す。インデックスｊがカラー画像データの印刷サイズ幅に達すると（Ｓ１０９のＹＥＳ）、プリンタードライバー１４は、列方向のインデックスｉをインクリメントし、かつ、行方向のインデックスｊを０にリセットする（Ｓ１１０）。そして、プリンタードライバー１４は、行方向のインデックスjが印刷サイズの高さに達するまで（Ｓ１１１）、同じ処理を繰り返す。
【００５１】
列方向のインデックスｉが印刷サイズの高さに達すると（Ｓ１１１のＹＥＳ）、カラー画像データからモノクロ画像データの変換処理が終了する。このように、処理の対象画素がカラー画像データの印刷サイズの左上位置からラスタスキャン方向に移動し、各画素の単一色のドットデータがドットＯＮ、またはＯＦＦに設定される。
【００５２】
このようにして生成されたモノクロ画像データは、例えば、各画素にＫ（黒）のドットデータを有するモノクロ画像データとなる。プリンタードライバー１４は、当該モノクロ画像データを印刷画像データとしてプリンター４０に送信する。
【００５３】
図６のフローチャート図では、各画素について、色毎に入力階調値と当該ディザマトリクスの閾値とを比較した結果を単一色のドットデータに格納することによってＣＭＹのドットデータを合成し、その合成結果をモノクロ画像データとして出力している。しかし、例えば、各画素について、色毎に入力階調値と当該ディザマトリクスの閾値とを比較して各色のドットデータを生成し、その後、当該各色のドットデータを合成して、単一色のドットデータを有するモノクロ画像データを生成してもよい。
【００５４】
図７は、図６のフローチャート図に対し、各色のドットデータを生成した後、当該各色のドットデータを合成して、単一色のドットデータを生成する処理を表すフローチャート図である。
【００５５】
図６のフローチャート図と同様に、プリンタードライバー１４は、カラー画像データの画素のインデックスｉ、ｊを初期化し（Ｓ２０１）、当画素（ｉ、ｊ）の色情報をＲＧＢ値からＣＭＹ値に変換する（Ｓ２０２）。
【００５６】
次に、プリンタードライバー１４は、Ｃ（シアン）値がシアン用のディザマトリクスの対応する画素の閾値より大きいかどうか判断する（Ｓ２０３）。Ｃ値が閾値より大きい場合（Ｓ２０３のＹＥＳ）、シアンのドットデータをドットＯＮ（ドットあり）に設定する（Ｓ２０６）。Ｃ値が閾値以下の場合（Ｓ２０３のＮＯ）、プリンタードライバー１４は、Ｍ（マゼンダ）値がマゼンダ用のディザマトリクスの対応する画素の閾値より大きいか否か判断し（Ｓ２０４）、Ｍ値が閾値より大きい場合（Ｓ２０４のＹＥＳ）、マゼンダのドットデータをドットＯＮ（ドットあり）に設定する（Ｓ２０７）。
【００５７】
同様に、Ｍ値が閾値以下の場合（Ｓ２０４のＮＯ）、プリンタードライバー１４は、Ｙ（イエロー）値がイエロー用のディザマトリクスの対応する画素の閾値より大きいか否か判断し（Ｓ２０５）、Ｙ値が閾値より大きい場合（Ｓ２０５のＹＥＳ）、イエローのドットデータをドットＯＮ（ドットあり）に設定する（Ｓ２０８）。
【００５８】
プリンタードライバー１４は、印刷サイズ分の画素の処理が終わるまで、上記の処理を繰り返し行う（Ｓ２０９〜Ｓ２１２）。印刷サイズ分の画素の処理が終わると（Ｓ２１２のＹＥＳ）、各色のドットデータを合成する（Ｓ２１３）。具体的には、プリンタードライバー１４は、印刷サイズ分の各画素について、いずれかの色のドットデータがドットＯＮの場合、Ｋ（単一色）のドットデータをドットＯＮに設定する。
【００５９】
図８は、本実施の形態によって異なるＲＧＢの色情報を有するカラー画像をモノクロ画像で出力した図である。カラー画像Ａ〜Ｄのモノクロ画像８１〜８４は、図２のカラー画像Ａ〜Ｄのモノクロ画像２１〜２４に対応する。図２の従来の方法によってモノクロ変換されたカラー画像Ａ〜Ｄのモノクロ画像２１〜２４は、同等の明度を有するため各色を区別できなかった。しかし、図８のカラー画像Ａ〜Ｄのモノクロ画像８１〜８４では、同等の明度を有するにも関わらず、そのドットパターンが異なるため各色を区別可能である。この実施の形態によると、例えば、カラーで配色されたグラフや地図等をモノクロモードで印刷する場合、その配色の違いを容易に区別することができる。
【００６０】
図９〜１２は、図８のカラー画像Ａ〜Ｄのモノクロ画像８１〜８４を拡大した図である。
【００６１】
図９のカラー画像Ａのモノクロ画像拡大図９１は、図８のカラー画像Ａのモノクロ画像８１における１つのディザマトリクスに対応する領域を拡大した図である。カラー画像Ａの色情報「Ｒ＝２５５、Ｇ＝０、Ｂ＝０」をＣＭＹ値に変換すると、「Ｃ＝０、Ｍ＝２５５、Ｙ＝２５５」となる。シアンの階調値は０であるため、図３のシアン用のディザマトリクス３１においてドットは生成されない。一方、マゼンダ、イエローの階調値は２５５であるため、図３のマゼンダ用のディザマトリクス３２、図４のイエロー用ディザマトリクスにおける２５４以下の閾値を有する画素にドットが生成される。
【００６２】
その結果、図４のディザマトリクス対応図における「Ｍ」と「Ｙ」の画素にドットが生成され、「Ｒ＝２５５、Ｇ＝０、Ｂ＝０」の色情報を有するカラー画像は、図９のカラー画像Ａのモノクロ画像拡大図９１のような画像に変換される。このモノクロ画像が繰り返し配置されると、カラー画像Ａのモノクロ画像８１のような画像となる。
【００６３】
図１０のカラー画像Ｂのモノクロ画像拡大図１０１も、同様に、図８のカラー画像Ｂのモノクロ画像８２における１つのディザマトリクスに対応する領域を拡大した図である。カラー画像Ｂの色情報「Ｒ＝０、Ｇ＝１２８、Ｂ＝０」をＣＭＹ値に変換すると、「Ｃ＝２５５、Ｍ＝１２７、Ｙ＝２５５」となる。ＣＭＹの各値を各色のディザマトリクスに対応させると、シアン、イエローは、各ディザマトリクスにおける２５４以下の閾値を有する画素にドットが生成され、マゼンダは、マゼンダ用ディザマトリクスにおける１２６以下の閾値を有する画素にドットが生成される。その結果、「Ｒ＝０、Ｇ＝１２８、Ｂ＝０」の色情報を有するカラー画像は、図１０のカラー画像Ｂのモノクロ画像拡大図１０１のようなモノクロ画像に変換される。
【００６４】
同様に、「Ｒ＝０、Ｇ＝１０２、Ｂ＝１５２」の色情報を有するカラー画像Ｃは、図１１のカラー画像Ｃのモノクロ画像拡大図１１１のようなモノクロ画像に変換され、「Ｒ＝１５３、Ｇ＝０、Ｂ＝２０４」の色情報を有するカラー画像Ｄは、図１２のカラー画像Ｄのモノクロ画像拡大図１２１のようなモノクロ画像に変換される。
【００６５】
このように、ドットを発生させる画素の領域が各色で異なるディザマトリクスを、カラー画像データの各色の入力階調値に対応させて各色のドットデータを生成し、各色のドットデータを合成してモノクロ画像データとすることにより、同等の明度を有するカラー画像データであっても、その明度を保持しながらその色を区別可能なモノクロ画像データに変換することができる。
【００６６】
また、上記の実施の形態例では、閾値マトリクスを使用する例を示したが、次に、ルックアップテーブルを使用する例について述べる。この場合、ディザマトリクスの各画素は、ルックアップテーブルのインデックス値を有する。
【００６７】
図１３はルックアップテーブルを使用する場合の、シアン用ディザマトリクスのインデックステーブル１３１とルックアップテーブル１３２の例である。プリンタードライバー１４は、各画素に対応するインデックステーブルの画素を参照し、当該画素が有するルックアップテーブル１３２のインデックス値を取得する。そして、プリンタードライバー１４は当該インデックス値のルックアップテーブル１３２を参照し、シアンの入力階調値に対応する出力階調値を取得する。
【００６８】
図１３のシアン用ディザマトリクス１３１におけるインデックス値「１」を有する画素に対応するシアンの入力階調値が０である場合、まず、ルックアップテーブル１３２のインデックス値「１」の行を参照する。ルックアップテーブル「１」によると、入力階調値は０に対応する出力階調値は０であるため、当画素のドットデータはドットＯＦＦに設定される。また、同画素に対応する入力階調値が１の場合、ルックアップテーブル「１」によると出力階調値は２５５であり、当画素のドットデータはドットＯＮに設定される。一方、インデックス値「７８」を有する画素では、入力階調値が２５５であっても、ドットは発生しない。
【００６９】
多値ディザ法によるディザマトリクスにおいても、図３、４の閾値マトリクスと同様に、所定の入力階調値に対応するドットを発生させる画素または面積の割合が当該色の明度の寄与率に対応するように、インデックステーブルおよびルックアップテーブルを設定する。図１３では、シアン用のディザマトリクス１３１のみ例示しているが、マゼンダ用のディザマトリクス、イエロー用のディザマトリクスも同様である。
【００７０】
また、図１３のシアン用ディザマトリクス１３１において、インデックス値「２」を有する画素に対応するシアンの入力階調値３の場合、対応する出力階調値は４８となる。このように、出力階調値が１〜２５４の場合、出力階調値は当画素内におけるドット面積を表し、例えば、画素内におけるレーザ駆動パルスのパルス幅に対応する。
【００７１】
出力階調値が多値の場合も同様に、ドットを発生させる画素の領域の面積の割合が各色の明度の寄与率に対応するように、インデックステーブルおよびルックアップテーブルを設定する。これにより、各色においてより多くの階調が表現可能になるため、より多くの階調が表現可能なモノクロ画像データに変換できる。
【００７２】
さらに、本実施の形態例では、色情報をＲＧＢ値からＣＭＹ値に変換し、ＣＭＹ用の各ディザマトリクスを対応させて各色のドットデータを生成し合成しているが、ＣＭＹ値に変換せずに、ＲＧＢ用の各ディザマトリクスを用意して、ＣＭＹの各色のドットデータを生成し合成してもよい。
【００７３】
［第２の実施の形態例］
第１の実施の形態では、カラー画像データの各画素に適用する色毎に異なるディザマトリクスにおいて、ドットを発生させる画素の面積の割合が当該色の明度の寄与率に対応するようにディザマトリクスを設定した。それに対し、第２の実施の形態例では、ドットを発生させる画素によって得られる出力濃度が当該色の明度の寄与率に対応するようにディザマトリクスを設定する。明度の寄与率は、第１の実施の形態例と同様に、Ｃ（シアン）：０．３、Ｍ（マゼンダ）：０．５９、Ｙ（イエロー）：０．１１とする。
【００７４】
紙媒体に印刷された画像データの出力濃度は、印刷するプリンターの印刷エンジンの特性の影響を受ける。例えば、同じドット面積の画像データを、プリンターＡとプリンターＢとで印刷した場合、印刷された画像データの出力濃度は必ずしも同じではない。また、プリンターＡをとってみても、ドットを発生させる画素の面積と出力濃度の関係は必ずしもリニアではない。そのため、適切な出力濃度を得るためには、印刷エンジンの特性に基づいてドット面積を増減させ、出力濃度を調整する必要がある。
【００７５】
一方で、明度は出力濃度に対応する。そのため、プリンターの印刷エンジンの特性の影響を受けて出力濃度が変化することにより、各色のディザマトリクスにおいてドットを発生させる画素の面積の割合を当該色の明度の寄与率に対応させたとしても、モノクロ変換して印刷されたモノクロ画像の出力濃度（明度）は、変換前のカラー画像データの明度と必ずしも一致しない。
【００７６】
そこで、第２の実施の形態では、各色のドットを発生させる画素の面積に対応する出力濃度の割合が、当該色の明度の寄与率に対応するようにディザマトリクスを設定する。
【００７７】
図１４のドット面積と出力濃度の関係図１４１は、あるプリンターの印刷エンジンの特性を表し、ドット面積（横軸）に対応して得られる出力濃度（縦軸）の関係を表している。曲線１４６は当該プリンターの特性を表す曲線であり、直線１４７は紙白濃度（０．１）と最大出力濃度（１．５）とを結んだリニアな直線である。特性を表す曲線１４６とリニアな直線１４７を比較すると、このプリンターでは、ドット面積が小さい場合は十分な出力濃度が得られず、ドット面積が大きい場合の出力濃度は、想定した出力濃度より高くなることがわかる。
【００７８】
図１４の入力階調値と出力濃度の関係図１４２は、ＣＭＹＫの各色の入力階調値（横軸）に対応する出力濃度（縦軸）を表す図である。前提として、紙白出力濃度を０．１（Ｄｗ）とし、Ｋの階調値が２５５の場合（黒ベタ）に対応する最大出力濃度を１．５（Ｄｂｋ）としている。明度は出力濃度に対応するため、各色の最大出力濃度は、当該黒ベタの最大出力濃度を各色の明度の寄与率に対応させることにより算出される。具体的な計算式は次の通りである。
【００７９】
＜シアンの最大出力濃度＞
０．３×（Ｄｂｋ−Ｄｗ）＋Ｄｗ＝０．３×（１．５−０．１）＋０．１＝０．５２
＜マゼンダの最大出力濃度＞
０．５９×（Ｄｂｋ−Ｄｗ）＋Ｄｗ＝０．５９×（１．５−０．１）＋０．１＝０．９２６
＜イエローの最大出力濃度＞
０．１１×（Ｄｂｋ−Ｄｗ）＋Ｄｗ＝０．１１×（１．５−０．１）＋０．１＝０．２５４
上記の計算式では、最大出力濃度（Ｄｂｋ）と紙白出力濃度（Ｄｗ）の差分に、各色の明度の寄与率を乗算し、当該乗算値に紙白出力濃度（Ｄｗ）を加算している。これにより、各色の最大出力濃度が算出される。
【００８０】
入力階調値と出力濃度の関係図１４２は、明度の寄与率に基づいて算出された各色の最大出力濃度を元に、各階調値に対応する出力濃度を表している。この図から、例えば、マゼンダの最大出力濃度は、シアン、イエローの最大出力濃度よりも高く、出力階調値１２６に対応する出力濃度であっても、シアンやイエローの最大出力濃度より高いことがわかる。シアンとイエローの出力濃度は、最大でも０．５程度である。
【００８１】
次に、各色の明度の寄与率に対応した出力濃度に基づいて、プリンターの特性を考慮し、当該各色用のディザマトリクスのドット面積を調整する。
【００８２】
ドット面積と出力濃度の関係図１４１に戻り、例えば、イエローの最大出力濃度０．２５４では、プリンター特性を表す曲線１４６はリニアな直線１４７を下回っているため、この出力濃度を得るためにはドット面積を増加させる必要があることがわかる。そのため、イエロー用のディザマトリクスにおけるドットを発生させる画素を増加させる。
【００８３】
また、マゼンダの最大出力濃度０．９２６では、プリンター特性を表す曲線１４６はリニアな直線１４７を上回っているため、この出力濃度を得るためにはドット面積を減らす必要があることがわかる。一方、マゼンダの入力階調値が８０の場合の出力濃度は、入力階調値と出力濃度の関係図１４２によると０．４〜０．５であり、この出力濃度を得るにためには、ドット面積を増加させる必要がある。そのため、マゼンダ用のディザマトリクスでは、入力階調値が低い場合はドットを発生させる画素を増加させ、入力階調値が高い場合にはドットを発生させる画素を減らす。即ち、ディザマトリクスにおける低い閾値を有する画素を増加させ、高い閾値を有する画素を減らす。
【００８４】
このように、プリンターの特性に基づいて各ディザマトリクスのドット面積を調整することによって、各ディザマトリクスのドット面積に対する出力濃度が明度の寄与率に対応する。これにより、当該ディザマトリクスによってモノクロ変換されたカラー画像の明度が、当該プリンターによって印刷されたモノクロ画像に反映される。
【００８５】
図１５、１６は、出力濃度の色の割合を、当該色の明度の寄与率に対応させる場合のＣＭＹの各色のディザマトリクスの例を表す図である。各ディザマトリクスは、図１４のドット面積と出力濃度の関係１４１の特性に基づいてそのドット面積が調整されている。
【００８６】
シアンの出力濃度は最大でも０．５２であり、ドット面積と出力濃度の関係１４１によるとドット面積を増加させる必要があるため、シアン用ディザマトリクス１５１ではドットを発生させる領域を増加させている。最大階調値が入力された場合に発生させる画素数は、第１の実施の形態例のシアン用ディザマトリクス（図３の１３１）では７７であったのに対し、図１５のシアン用ディザマトリクスでは８９に増加している。
【００８７】
マゼンダ用ディザマトリクス１５２では、前述の通り、低い閾値を有する画素を増加させ、高い閾値を有する画素数を減少させている。そのため、最大階調値が入力された場合に発生させる画素数は、第１の実施の形態例のマゼンダ用ディザマトリクス（図３の１３２）では１５０であったのに対し、図１５のマゼンダ用ディザマトリクスでは１４６に減少している。
【００８８】
イエロー用ディザマトリクス１６１では、シアンと同様にドットを発生させる領域を増加させている。最大階調値が入力された場合に発生させる画素数は、第１の実施の形態例のイエロー用ディザマトリクス（図４の１４１）では２９であったのに対し、図１６のイエロー用ディザマトリクスでは４１に増加している。
【００８９】
また、上記の例では、最大階調値以外の階調値（例えば、階調値８０の場合）でも適切な出力濃度が得られるように各ディザマトリクスのドット面積を調整しているが、少なくとも最大階調値について適切な出力濃度が得られるように、各ディザマトリクスのドット面積を設定するだけでもよい。
【００９０】
図１６のディザマトリクス対応図１６２は、ＣＭＹの各色のディザマトリクスにおけるドットを発生させる画素を重ねたディザマトリクスの図である。ディザマトリクス対応図１６２においても、ＣＭＹの各色のディザマトリクスにおいてドットを発生させる画素の領域が大部分で異なっている。これにより、同等の明度を有するカラー画像データであっても、その色を区別可能にモノクロ画像データに変換することができる。
【００９１】
また、ＣＭＹの各色のディザマトリクスにおけるドットを発生させる画素が重複していなかった第１の実施の形態例（図４のディザマトリクス対応図４２）に対し、ディザマトリクス対応図１６２では、ドットを発生させる画素が一部重複している（「Ｍ／Ｃ」「Ｙ／Ｍ」）。これは、プリンターの印刷エンジンの特性に基づいてドット面積を調整した際に、ドットを発生させる画素の増加量が減少量を超えたためである。
【００９２】
各ディザマトリクスにおけるドットを発生させる画素が一部重なる場合、少なくとも一部のディザマトリクスではドットを発生させる画素を増加させることができる。そのため、当該ディザマトリクスではより多くの階調表現が可能になり、カラー画像データの有する明度をより正確に表現することができる。
【００９３】
一方、ドットを発生させる画素が一部重複する場合、ドット面積の大きさまたはドット面積に対応する出力濃度が、入力階調値に対応してリニアに増加しなくなってしまうことがある。そこで、重複する画素は、高い閾値を有する画素にすることが望ましい。そもそも高い階調値のモノクロ画像データは各画像の違いを区別し難い特性を有するため、画像データの見え方に及ぶ影響が少ないためである。高い閾値を有する画素にドットが生成されるのは、入力階調値が高い場合であり、ドット面積も大きい。ドット面積が大きいモノクロ画像データは、そもそもその画像の違いを区別し難い。
【００９４】
これにより、高い閾値を有する画素以外の画素では、ドットを発生させる画素が重複しないため、異なる色のカラー画像に対応するモノクロ画像データのドットパターンがユニークになると共に、ドット面積の大きさまたはドット面積に対応する出力濃度を、入力階調値に対応してリニアに増加させることができる。
【００９５】
カラー画像データの各画素に対して各色のディザマトリクスを適用して、カラー画像データをモノクロ画像データに変換する処理については、第１の実施の形態と同様である。
【００９６】
このようにして、ドットを発生させる面積に対応する出力濃度が当該色の明度の寄与率に対応するようにディザマトリクスを設定することにより、同等の明度を有するカラー画像データであってもその色を区別可能なモノクロ画像データに変換できると共に、当該モノクロ画像データの出力濃度にカラー画像データの明度情報が反映される。これは、特に、モノクロ画像データが紙等の印刷媒体に印刷される場合に有効である。
【００９７】
上述した例では、各色のディザマトリクスは同サイズだが、各色のディザマトリクスのサイズは同じでなくともよい。
【００９８】
図１７、１８は、各色のディザマトリクスが同サイズではない場合におけるディザマトリクスの例である。図１７のシアン用ディザマトリクス１７１、マゼンダ用ディザマトリクス１７２は、１６×１６ドットのディザマトリクスである。それに対し、図１８のイエロー用ディザマトリクス１８１は、８×８ドットのディザマトリクスである。このように、一部のマトリクスのサイズを変更してもよい。ただし、一部のマトリクスの倍数サイズが他のマトリクスのサイズと一致する必要がある。
【００９９】
図１８のディザマトリクス対応図１８２は、ＣＭＹの各色用のディザマトリクスにおけるドットを発生させる画素を重ねたディザマトリクスの図である。このように、ディザマトリクスのサイズが異なっていても、各色のディザマトリクスを、ドットを発生させる画素の領域の形状や配置が異なるように設定することができる。これにより、カラー画像データの色情報が異なる場合にドットが発生する画素の領域も異なり、同等の明度を有するカラー画像データであっても、区別可能なモノクロ画像データに変換できる。
【０１００】
また、一部のマトリクスのサイズを小さくすることができることにより、ディザマトリクスを格納するメモリを節約することができる。
【符号の説明】
【０１０１】
１０：ホストコンピューター、１１：ＣＰＵ、１２：ＲＡＭ、１３：アプリケーションプログラム、１４：プリンタードライバー、１５：シアン用ディザマトリクス、１６：マゼンダ用ディザマトリクス、１７：イエロー用ディザマトリクス、２０：プリンター、２５：コントローラー、２６：印刷エンジン 
【図１】
2011023895.tif 000003
【図２】
2011023895.tif 000004
【図３】
2011023895.tif 000005
【図４】
2011023895.tif 000006
【図５】
2011023895.tif 000007
【図６】
2011023895.tif 000008
【図７】
2011023895.tif 000009
【図８】
2011023895.tif 000010
【図９】
2011023895.tif 000011
【図１０】
2011023895.tif 000012
【図１１】
2011023895.tif 000013
【図１２】
2011023895.tif 000014
【図１３】
2011023895.tif 000015
【図１４】
2011023895.tif 000016
【図１５】
2011023895.tif 000017
【図１６】
2011023895.tif 000018
【図１７】
2011023895.tif 000019
【図１８】
2011023895.tif 000020