(57)【要約】【課題】印刷時における正確な色再現と処理の高速化とを実現できる画像処理装置、画像処理方法、および画像処理プログラムを提供すること。【解決手段】プリンタードライバー３００のブロック設定部３２０は、印刷データＰＤを構成する画像の領域をブロックに区画し、ブロック判定部３３０は、設定されたブロックにインデックス指定の画素を含んでいるかを判定する。インデックス指定の画素を含むブロックについては、第１色変換部３４０が画素ごと個別に色変換を行うことにより、インデックスで指定された色に忠実且つ正確な色再現を実現する。一方、インデックス指定の画素を含んでいないブロックについては、第２色変換部３５０がブロック単位でまとめて色変換の処理を行うことにより、処理を高速化する。【選択図】図２
2010147842.tif 000002
【特許請求の範囲】
【請求項１】
印刷にて使用される複数の色材について、指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得する印刷データ取得部と、
前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定する画素群設定部と、
前記設定された画素群が前記第１の画素を含んでいるか否かを判定する画素群判定部と、
前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換する第１色変換部と、
前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換する第２色変換部とを備えることを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記第２色変換部は、
前記第１の画素を含んでいない画素群の各画素に指定された色情報に基づいて色情報の平均階調値を算出し、前記平均階調値に基づいて当該画素群の各画素に共通の色材量を求めることを特徴とする画像処理装置。
【請求項３】
請求項１または２に記載の画像処理装置において、
前記画素群判定部は、前記設定された画素群が、隣接する画素間の階調差が所定値以上となるエッジ部を含むか否かの判定を行い、
前記エッジ部を含む画素群については、前記第１色変換部が処理を行うことを特徴とする画像処理装置。
【請求項４】
請求項１ないし３のいずれか一項に記載の画像処理装置において、
前記第１色変換部および前記第２色変換部の変換結果に基づいて、印刷を制御する印刷制御部をさらに備えることを特徴とする画像処理装置。
【請求項５】
印刷にて使用される複数の色材について、指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得するステップと、
前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定するステップと、
前記設定された画素群が前記第１の画素を含んでいるか否かを判定するステップと、
前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換するステップと、
前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換するステップとを有することを特徴とする画像処理方法。
【請求項６】
複数の色材を使用して印刷するための画像処理プログラムであって、
コンピューターを、
指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得する印刷データ取得部と、
前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定する画素群設定部と、
前記設定された画素群が前記第１の画素を含んでいるか否かを判定する画素群判定部と、
前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換する第１色変換部と、
前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換する第２色変換部、として機能させることを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷用の画像処理を行う画像処理装置、画像処理方法、および画像処理プログラムに関する。
【背景技術】
【０００２】
従来、インク等の色材のドットを形成するインクジェット方式の印刷においては、印刷対象とする印刷データに対して、色材の色に対応する色表現のデータに変換する色変換が行われる。例えば、印刷データが、Ｒ（レッド）Ｇ（グリーン）Ｂ（ブルー）形式のデータであり、Ｃ（シアン）Ｍ（マゼンタ）Ｙ（イエロー）Ｋ（ブラック）の各色の色材を使用してカラー印刷を行う場合、ＲＧＢ形式の印刷データはＣＭＹＫ形式のデータに色変換される。そして、色変換後のデータに従い各色のドットを用紙表面に形成することによって、印刷が行われる。
【０００３】
また、印刷にて正確な色再現を実現するため、指定の色を再現するために使用すべき色材量の組み合わせに対応したインデックスを印刷データの画素ごとに指定することがある。印刷の際、印刷データの画素からインデックスを読み出し、所定のテーブルを参照してインデックスに対応する色材量分の色材を使用した印刷を実行することによって、指定の色を正確に再現することができる。こうしたインデックスを用いた印刷は、色見本の印刷等、厳密な色再現が要求される用途に主に用いられる。
【０００４】
こうした色変換の処理を高速化する技術として、特許文献１には、画像データが表す画像を複数の画素からなるブロックごとにまとめ、ブロック内の各画素を区別することなく色変換することにより、色変換の処理を迅速に実行する技術が開示されている。
【０００５】
【特許文献１】特開２００２−１８５８１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１に記載の技術は、画素ごとに指定されたＲＧＢ値を色変換するものであり、インデックスが指定された画像データに対応するものではない。このため、厳密な色再現を実現しようとして、インデックスを指定した画像データの印刷を行う場合に、色変換処理を高速化することができず、正確な色再現と高速な処理速度を兼ね備えた印刷用の画像処理を実現することができなかった。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００８】
［適用例１］印刷にて使用される複数の色材について、指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得する印刷データ取得部と、前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定する画素群設定部と、前記設定された画素群が前記第１の画素を含んでいるか否かを判定する画素群判定部と、前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換する第１色変換部と、前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換する第２色変換部とを備えることを特徴とする画像処理装置。
【０００９】
この構成によれば、インデックスが指定された第１の画素を含む画素群については、インデックスおよび色情報を各色材の色材量に変換する処理が画素単位で行われるので、第１の画素について指定の色を正確に再現させる色材量が求められる。また、第１の画素を含んでいない画素群については、ブロック単位で各画素の色情報がまとめて各色材の色材量に変換されるので、画素単位で変換する場合に比べて各色材の色材量を求めるための処理量が低減する。したがって、印刷時における正確な色再現と処理の高速化と兼ね備えた処理を実現することができる。
【００１０】
［適用例２］上記画像処理装置において、前記第２色変換部は、前記第１の画素を含んでいない画素群の各画素に指定された色情報に基づいて色情報の平均階調値を算出し、前記平均階調値に基づいて当該画素群の各画素に共通の色材量を求めることを特徴とする画像処理装置。
【００１１】
この構成によれば、第１の画素を含んでいない画素群においては、画素群内の平均階調値に基づいて画素群の各画素に共通の色材量が求められるので、第１の画素を含んでいない画素群に対する処理量が低減することとなり、色変換の処理の高速化を図ることができる。
【００１２】
［適用例３］上記画像処理装置において、前記画素群判定部は、前記設定された画素群が、隣接する画素間の階調差が所定値以上となるエッジ部を含むか否かの判定を行い、前記エッジ部を含む画素群については、前記第１色変換部が処理を行うことを特徴とする画像処理装置。
【００１３】
この構成によれば、エッジを含む画素群については色材量セットへの変換が画素単位で行われるので、エッジの分解能に優れた高画質な印刷を実現させる色変換を行うことができる。
【００１４】
［適用例４］上記画像処理装置において、前記第１色変換部および前記第２色変換部の変換結果に基づいて、印刷を制御する印刷制御部をさらに備えることを特徴とする画像処理装置。
【００１５】
この構成によれば、色再現に優れた印刷をより高速に行うことができる。
【００１６】
［適用例５］印刷にて使用される複数の色材について、指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得するステップと、前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定するステップと、前記設定された画素群が前記第１の画素を含んでいるか否かを判定するステップと、前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換するステップと、前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換するステップとを有することを特徴とする画像処理方法。
【００１７】
このようにすれば、印刷時における正確な色再現と処理の高速化と兼ね備えた処理を実現することができる。
【００１８】
［適用例６］複数の色材を使用して印刷するための画像処理プログラムであって、コンピューターを、指定の色を再現させる色材量の組み合わせに対応するインデックスが指定された第１の画素、および印刷すべき色を示す色情報が指定された第２の画素を含む画像を印刷の対象とする印刷データを取得する印刷データ取得部と、前記取得した画像データが表す画像を区画して、複数の画素からなる画素群を設定する画素群設定部と、前記設定された画素群が前記第１の画素を含んでいるか否かを判定する画素群判定部と、前記第１の画素を含む画素群の各画素に指定された前記インデックスまたは前記色情報を、各色材の色材量に画素単位で変換する第１色変換部と、前記第１の画素を含んでいない画素群の各画素に指定された色情報を、画素群単位で各色材の色材量に変換する第２色変換部、として機能させることを特徴とする画像処理プログラム。
【００１９】
この画像処理プログラムによれば、印刷時における正確な色再現と処理の高速化と兼ね備えた処理を、コンピューターによって実現することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態について実施例に基づいて説明する。
図１は、一実施例にかかる画像処理装置のハードウェア構成を示している。画像処理装置の一例であるコンピューター１０は、プリンター２０による印刷の制御装置であり、図１に示すように、ＣＰＵ１１と、ＲＡＭ１２と、ＲＯＭ１３と、ハードディスクドライブ１４と、汎用Ｉ／Ｆ１５と、ビデオＩ／Ｆ１６と、入力Ｉ／Ｆ１７と、バス１８等から構成されている。バス１８は、コンピューター１０を構成する各要素１１〜１７の間でのデータ通信を実現するものであり、図示しないチップセット等によって通信が制御される。
【００２１】
ハードディスクドライブ１４には、プリンタードライバーのドライバープログラム（画像処理プログラム）ＤＰの他、アプリケーションやオペレーティングシステム（以下、「ＯＳ」という）等の各種プログラムが記憶されている。なお、ドライバープログラムＤＰは、フレキシブルディスク、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の光ディスク、光磁気ディスク、メモリーカード、携帯型ハードディスク等、コンピューター読み取り可能な種々の記録媒体に記録された形態でコンピューター１０に供給される。記録媒体に記録されたドライバープログラムＤＰは、コンピューター１０に備わるドライブ装置（図示なし）等によって読み出され、ハードディスクドライブ１４に記録されている。もっとも、ハードディスクドライブ１４への記録方法としてはこれに限られることなく、コンピューター１０が、インターネット等のネットワークを介して所定のサーバーからハードディスクドライブ１４にドライバープログラムＤＰをダウンロードしていてもよい。
【００２２】
汎用Ｉ／Ｆ１５は、例えばＵＳＢ規格に準じたインターフェイスを提供するものであり、外部のプリンター２０が接続されている。ビデオＩ／Ｆ１６には外部のディスプレー３０が接続されており、ビデオＩ／Ｆ１６は、ディスプレー３０に画像を表示するためのインターフェイスを提供する。入力Ｉ／Ｆ１７には外部のキーボード４０とマウス５０が接続されており、入力Ｉ／Ｆ１７は、キーボード４０とマウス５０からの入力信号をコンピューター１０が取得するためのインターフェイスを提供する。
【００２３】
なお、本実施例では、プリンター２０はインクジェット方式の印刷を行い、特に、Ｃ（シアン）Ｍ（マゼンタ）Ｙ（イエロー）Ｋ（ブラック）の各色のインク（色材）を吐出して、例として大・中・小の３種類のドットサイズのドットを選択的に印刷用紙上に形成するものとして以下の説明を行う。もっとも、本実施例ではＣＭＹＫのインクセットを使用する場合を例にして説明するが、インクセットについてはこれに限られるものではなく、例えば、Ｒ（レッド）、Ｂ（ブルー）、ｌｃ（ライトシアン）、ｌｍ（ライトマゼンタ）等のインクをさらに含む構成としてもよい。
【００２４】
次に、コンピューター１０のソフトウェア構成について説明する。図２は、コンピューター１０のソフトウェア構成を示す図である。図２に示すように、コンピューター１０は、ソフトウェア構成として、ＯＳ１００と、アプリケーション２００と、プリンタードライバー３００と、ディスプレードライバー４００とを有する。これらの各ソフトウェア構成は、ハードディスクドライブ１４に記録されたプログラムをＣＰＵ１１が実行することにより機能している。特に、プリンタードライバー３００は、ＣＰＵ１１が、ハードディスクドライブ１４からドライバープログラムＤＰを読み出して実行することにより機能している。
【００２５】
ＯＳ１００は、アプリケーション２００や各ドライバー３００，４００が利用可能なＡＰＩ（Application Programming Interface）の１つとしての画像機器インターフェイス（以下、「ＧＤＩ（Graphical Device Interface）」という）１１０と、スプーラー１２０を提供している。アプリケーション２００からの要求に応じてＧＤＩ１１０が呼び出され、さらにＧＤＩ１１０の要求に応じてプリンタードライバー３００やディスプレードライバー４００が呼び出される。ＧＤＩ１１０は、コンピューター１０がプリンター２０やディスプレー３０等の画像出力装置による画像出力を制御するための汎用的な仕組みを提供する。そして、プリンタードライバー３００はプリンター２０の機種に固有の処理等を司り、ディスプレードライバー４００はディスプレー３０の機種に固有の処理等を司る。スプーラー１２０は、アプリケーション２００やプリンタードライバー３００やプリンター２０の間に介在し、ジョブのコントロール等を実行する。
【００２６】
アプリケーション２００は、例えば、色見本のチャートを印刷するための見本印刷アプリケーションであり、キーボード４０やマウス５０等へのユーザー操作に従って印刷データＰＤを生成する。例えば、ユーザーによって任意に入力された内容の画像や予め登録された色見本の画像等が、アプリケーション２００によって印刷対象の印刷データＰＤとされる。
【００２７】
ここで、印刷データＰＤのデータ構造について説明する。印刷データＰＤはビットマップデータであり、マトリクス状に配列された多数の画素によりビットマップ画像を表現している。また、本実施例では、印刷データＰＤの１画素に４バイトの情報量が割り当てられ、各画素にはＲＧＢ値またはインデックスのいずれかの画素データが格納される。すなわち、印刷データＰＤの各画素は、ＲＧＢ値またはインデックスのいずれかによって印刷すべき色が指定されている。
【００２８】
図３（ａ）に、ＲＧＢ値指定の画素のデータ形式を示す。図３（ａ）に示すように、ＲＧＢ値指定の画素の画素データは、データの０バイト目にデータ種別フラグＦが設定される。このデータ種別フラグＦは、ＲＧＢ値指定の画素（第２の画素）、またはインデックス指定の画素（第１の画素）のいずれの画素であるかを示している。ＲＧＢ値指定の画素では、データ種別フラグＦは「０」とされる。そして、続く１バイト目にはＲ値、２バイト目にはＧ値、３バイト目にはＢ値が格納される。すなわち、ＲＧＢ値指定の画素では、上述した４バイトのうち３バイトがＲＧＢ値を格納するために使用され、ＲＧＢ各チャネルの階調値はそれぞれ８ビット（２５６階調）で階調表現される。
【００２９】
図３（ｂ）に、インデックス指定の画素のデータ形式を示す。図３（ｂ）に示すように、インデックス指定の画素の画素データの０バイト目には、データ種別フラグＦとして「１」が設定される。続く、１バイト目は未使用とされ、２バイト目にはインデックスの上位８ビット、３バイト目にはインデックスの下位８ビットが格納される。すなわち、インデックス指定の画素では、合計１６ビットのインデックスを格納するために上述した４バイトのうち２バイトが使用されている。なお、インデックスとは、指定の色を印刷で再現するために使用すべき各色インクの使用量を示すインク値の組み合わせ（以下、「インク量セット」という）に予め対応させたものである。このインクデックスの組合せは、例えば、プリンターメーカーが予め設定したり、ユーザーが所望の組合せを追加したりすることによって、後述する１次元色変換テーブル３４１に予め登録されている。
【００３０】
上述した構成を有する印刷データＰＤは、ＯＳ１００が提供するＧＤＩ１１０やスプーラー１２０を経由してアプリケーション２００からプリンタードライバー３００に出力される。
【００３１】
次に、プリンタードライバー３００について説明する。図２に示すように、プリンタードライバー３００は、印刷データ取得部３１０と、ブロック設定部（画素群設定部）３２０と、ブロック判定部（画素群判定部）３３０と、第１色変換部３４０と、第２色変換部３５０と、ドットサイズ変換部３６０と、ハーフトーン処理部３７０と、ラスタ化処理部（印刷制御部）３８０とを含む。
【００３２】
印刷データ取得部３１０は、アプリケーション２００から印刷データＰＤを取得する。また、印刷データ取得部３１０は、必要に応じて、印刷データＰＤを印刷解像度に対応する解像度のデータに変換する処理を行う。
【００３３】
ブロック設定部３２０は、取得した印刷データＰＤが表す画像の領域を区画して、複数の画素からなる画素群（以下、「ブロック」という）を設定する処理を行う。
【００３４】
ブロック判定部３３０は、第１色変換部３４０と第２色変換部３５０のうちから、ブロックに対して処理を行うべき色変換部を判定する処理を行う。判定の詳細については後述するが、ブロック判定部３３０は、ブロック内におけるインデックス指定の画素の有無およびエッジの有無に基づいて、ブロックごとに適切な色変換部３４０，３５０を選択する。なお、エッジとは、印刷データＰＤの画像において、隣接する画素間の階調値の差が所定値以上となる境界部分のことをいう。
【００３５】
第１色変換部３４０は、ブロックに含まれる各画素に対して色変換（分版）を行う機能部であり、画素の種類に応じて、ブロック内の各画素についてインデックスをインク量セットに変換する１次元色変換と、ＲＧＢ値をインク量セットに色変換する３次元色変換とを選択的に行う。すなわち、第１色変換部３４０は、インデックス指定の画素に対しては１次元色変換、ＲＧＢ値指定の画素に対しては３次元色変換を行うことにより、画素ごと個別に色変換を行う。
【００３６】
ここで、１次元色変換は、インデックスと各色のインク値とを対応付けた１次元色変換テーブル（以下、「１Ｄ−ＬＵＴ」という）３４１に従って行われる。図４に例として示すように、１Ｄ−ＬＵＴ３４１では、インデックスの番号と、インクセットの各色インク値（本実施例では、Ｃ値、Ｍ値、Ｙ値、Ｋ値）とが対応付けられている。この１Ｄ−ＬＵＴ３４１は、ハードディスクドライブ１４等に予め格納され、第１色変換部３４０は、１Ｄ−ＬＵＴ３４１に従って、画素に指定されたインデックスを各色インクのインク値、すなわちインク量セットに変換する。
【００３７】
また、３次元色変換は、ＲＧＢ値とインク量セットとを対応付けた３次元色変換テーブル（以下、「３Ｄ−ＬＵＴ」という）３４２に従って行われる。３Ｄ−ＬＵＴ３４２は、ＲＧＢ値と各色のインク量セットとの対応関係を色空間における複数の代表的な座標について記述したテーブルであり、色の再現性、階調性、ガマット、インクデューティ等の特性が総合的に良好となるようＲＧＢ値とインク量セットとが予め対応付けられている。この３Ｄ−ＬＵＴ３４２は、ハードディスクドライブ１４等に予め格納されており、第１色変換部３４０は、３Ｄ−ＬＵＴ３４２に従って、画素に指定されたＲＧＢ値をインク量セットに変換する。なお、３次元色変換の際、第１色変換部３４０は、３Ｄ−ＬＵＴ３４２に直接記述されていないＲＧＢ値については補間演算を行うことにより、インク量セットへの変換が行われる。
【００３８】
一方の第２色変換部３５０は、ブロック内の各画素のインク量セットをブロック単位で一括して求める色変換（分版）を行う機能部である。第２色変換部３５０は、ブロック内にある各画素のＲＧＢ値の平均階調値を算出し、３Ｄ−ＬＵＴ３４２を参照して平均階調値に対して３次元色変換を施すことにより、１度の色変換によってブロックの各画素に対応するインク量セットを求める。このように、ブロック単位で色変換を行っているので、画素ごと個別に行う第１色変換部３４０による色変換に比べると、第２色変換部３５０が色変換に要する処理時間は短くなり、処理の高速化が図られる。
【００３９】
ドットサイズ変換部３６０は、インク量セットの各インク値を、各ドットサイズのドット生成量を示すドット生成率に変換する処理を行う。このドット生成率変換は、ドット生成率変換テーブル３６１に従って行われる。図５にドット生成率変換テーブル３６１の一例を示す。図示するように、ドット生成率変換テーブル３６１は、２５６階調（８ビット）の各インク値と、小ドット、中ドット、大ドットの各ドット生成率とが対応付けられている。このドット生成率変換テーブル３６１では、インク値が小さい範囲では小ドットによる画像形成が支配的となって、インク値が大きい範囲では大ドットによる画像形成が支配的となるように設定されている。これにより、低濃度の画像形成で発生する粒状感を抑制するとともに、高濃度の画像形成を少ないドット数で行うことができ、高画質且つ高速な印刷が実現されるようになっている。ドット生成率変換テーブル３６１は、ハードディスクドライブ１４等に予め格納されており、ドットサイズ変換部３６０は、ドット生成率変換テーブル３６１を参照して、各色インク値を各ドットサイズのドット生成率に変換する。
【００４０】
ハーフトーン処理部３７０は、ドットサイズ変換部３６０により求められたドット生成率に対してハーフトーン処理を行い、各ドットサイズについてドットの有無に対応する量子化データに変換する。
【００４１】
ラスタ化処理部３８０は、量子化データをラスタ化して、プリンター２０が処理可能な印刷制御データＣＤを生成する。そして、生成した印刷制御データＣＤをＯＳ１００が提供するスプーラー１２０を介してプリンター２０に出力することにより、当該印刷制御データＣＤに基づくプリンター２０の動作を制御して、見本チャートを印刷用紙上に印刷させる。
【００４２】
次に、コンピューター１０がプリンター２０の印刷を制御する処理についてフローチャートに従って説明する。図６は、印刷制御処理の流れを示すフローチャートである。処理を開始して、プリンタードライバー３００の印刷データ取得部３１０がアプリケーション２００から印刷データＰＤを取得すると（ステップＳ１００）、次に、色変換処理が実行される（ステップＳ１１０）。
【００４３】
図７，８は、色変換処理の流れを示すフローチャートである。色変換処理が開始されると、ブロック設定部３２０は、印刷データＰＤが表す画像の領域に対してブロックを設定する（ステップＳ２００）。
【００４４】
図９にブロックの設定例を示す。図９は、印刷データＰＤの画像を表しており、ＲＧＢ値指定の画素Ｐｖを白地、インデックス指定の画素Ｐｉを斜線で示している。図示するように、印刷データＰＤが表す画像は、ＲＧＢ値指定の画素Ｐｖと、インデックス指定の画素Ｐｉとから構成されている。こうした印刷データＰＤの画像は、図９に示すように、ブロック設定部３２０によって、例えば、２画素×２画素の領域を占めるブロックＢに区画される。ステップＳ２００の処理においては、未区画の領域のうち１ブロック分の領域が区画されて、１つのブロックＢが新たに設定される。なお、ブロックの大きさ、形状、配列については図９の例に限られるものではない。例えば、より大きなサイズや菱形形状のブロックを設定してもよいし、ブロックが千鳥状に配列するよう設定してもよい。
【００４５】
次に、ブロック判定部３３０は、ステップＳ２００にて設定したブロック内の各画素についてデータ種別フラグＦを読み取り（ステップＳ２０５）、設定したブロック内に、インデックス指定の画素Ｐｉがあったか否かを判断する（ステップＳ２１０）。
【００４６】
データ種別フラグＦが「１」である画素がブロック内に含まれていた場合、ブロック判定部３３０は、インデックス指定の画素Ｐｉがブロック内にあると判断し（ステップＳ２１０：Ｙｅｓ）、第１色変換部３４０は、インデックス指定の画素Ｐｉを含めたブロック内の各画素について個別に色変換の処理を実行する。すなわち、第１色変換部３４０は、ブロック内の画素に注目して（ステップＳ２１５）、注目画素がインデックス指定の画素Ｐｉであるか否かを判断する（ステップＳ２２０）。インデックス指定の画素Ｐｉであれば（ステップＳ２２０：Ｙｅｓ）、１Ｄ−ＬＵＴ３４１を参照して１次元色変換を行うことによって注目画素のインデックスをインク量セットに変換する（ステップＳ２２５）。
【００４７】
また、インデックス指定の画素Ｐｉでなければ（ステップＳ２２０：Ｎｏ）、注目画素はＲＧＢ値指定の画素Ｐｖであるので、第１色変換部３４０は、３Ｄ−ＬＵＴ３４２を参照して３次元色変換を行うことによって注目画素のＲＧＢ値をインク量セットに変換する（ステップＳ２３０）。
【００４８】
注目画素について１次元色変換または３次元色変換を行うと、第１色変換部３４０はブロック内の全画素について色変換を終了したか否かを判断する（ステップＳ２３５）。全画素について処理を終了していなければ（ステップＳ２３５：Ｎｏ）、ステップＳ２１５に戻って、ブロック内の画素のうち未処理の画素に注目して、ステップＳ２１５〜Ｓ２３５の処理が繰り返される。これにより、図１０に例として示すように、インデックス指定の画素Ｐｉを含むブロックＢ１については、インデックス指定の画素Ｐｉへの色変換が１次元色変換、ＲＧＢ値指定の画素Ｐｖへの色変換が３次元色変換によって、画素ごと個別に次々と色変換が行われる。こうして、ブロック内の各画素が色変換されて、全画素について色変換したことを確認すると（ステップＳ２３５：Ｙｅｓ）、ステップＳ２７５に進む。
【００４９】
一方、ステップＳ２１０の判断において、ブロック内にインデックス指定の画素Ｐｉがないと判断された場合（ステップＳ２１０：Ｎｏ）、ブロック判定部３３０は、エッジ検出を行う（ステップＳ２４０）。
【００５０】
エッジ検出の結果、ブロック内にエッジがあれば（ステップＳ２４５：Ｙｅｓ）、第１色変換部３４０は、エッジを含むブロック内の各画素について個別に色変換の処理を行う。すなわち、第１色変換部３４０は、ブロック内の画素に注目して（ステップＳ２５０）、３Ｄ−ＬＵＴ３４２を参照して３次元色変換を行い、ＲＧＢ値をインク量セットに変換する（ステップＳ２５５）。そして、注目画素について３次元色変換を行うと、ブロック内の全画素について色変換を終了したか否かを判断する（ステップＳ２６０）。全画素について処理を終了していなければ（ステップＳ２６０：Ｎｏ）、ステップＳ２５０に戻って、ブロック内の画素のうち未処理の画素に注目して、ステップＳ２５０〜Ｓ２６０の処理が繰り返される。これにより、図１１に例として示すように、インデックス指定の画素Ｐｉを含むことなく、エッジＥを含むブロックＢ２においても、画素ごと個別に色変換が行われる。そして、ブロック内の画素について次々と色変換の処理が行われて、全画素について色変換したことを確認すると（ステップＳ２６０：Ｙｅｓ）、ステップＳ２７５に進む。
【００５１】
また、ブロック内にエッジがなかった場合（ステップＳ２４５：Ｎｏ）、設定したブロックＢには、厳密な色再現を行うようインデックスが指定された画素Ｐｉがなく、且つブロック内で急峻な階調変化がないと判断される。この場合、第２色変換部３５０が色変換の処理を行う。すなわち、第２色変換部３５０は、ブロック内の平均階調値を算出して（ステップＳ２６５）、３Ｄ−ＬＵＴ３４２を参照して平均階調値を３次元色変換する（ステップＳ２７０）。これにより、図１２に例として示すように、インデックス指定の画素ＰｉおよびエッジＥを含んでいないブロックＢ０については、ブロック単位でまとめて色変換され、各画素に適用するインク値が一括して求められる。ブロックＢ０には、厳密な色再現を行うようインデックスが指定された画素がなく、且つブロック内で急峻な階調変化がないので、ブロック内で平均階調値を用いてまとめて色変換した場合にも十分な精度で色再現を実現できるのである。次に、ステップＳ２７５に進む。
【００５２】
ステップＳ２７５に処理が進むと、色変換の処理が終了したか否かを判断する。印刷データＰＤの画像領域のうち、色変換が未処理の領域が残っていれば（ステップＳ２７５：Ｎｏ）、ステップＳ２００に戻って、未処理の領域に対して次のブロックを設定して、ステップＳ２００〜Ｓ２７０の処理を繰り返し行う。これにより、印刷データＰＤの画像の全領域に対して色変換が行われると（ステップＳ２７５：Ｙｅｓ）、色変換処理を終了する。
【００５３】
色変換処理を終了すると、図６の処理に戻って、ドットサイズ変換部３６０は、ドット生成率変換テーブル３６１に従って、インク量セットのインク値を各ドットサイズのドット生成率に変換する（ステップＳ１２０）。
【００５４】
次に、ハーフトーン処理部３７０は、ドット生成率に対してディザ法や誤差拡散法等のハーフトーン処理を行い、ドットの有無に対応した量子化データに変換する（ステップＳ１３０）。
【００５５】
次に、ラスタ化処理部３８０は、量子化データのドット有りの画素に応じて、インクを吐出させる吐出信号をプリンター２０が有する印刷ヘッドの各走査パスおよび各ノズルに割り振る処理を実行する。これにより、プリンター２０が処理可能な印刷制御データＣＤが生成される。そして、生成された印刷制御データＣＤは、プリンター２０の制御に必要な信号が添付された状態でスプーラー１２０を介してプリンター２０に出力され、プリンター２０による印刷が実行される（ステップＳ１４０）。こうして印刷が実行されると、印刷制御処理を終了する。
【００５６】
以上に説明したように、本実施例では、印刷データＰＤが表す画像はブロックＢに分割され、インデックス指定の画素Ｐｉを含むブロックＢ１に対しては、画素の種類に応じた色変換が画素ごと個別に行われる（図１０参照）。このため、印刷データＰＤが表す画像のうち、インデックスが指定されることによって厳密な色再現が要求されている部分については１次元色変換が行われることとなり、３次元色変換の補間処理に伴う変換誤差等によって精度を低下させることなく、指定の色に忠実且つ正確な色再現が実現される。一方、インデックス指定の画素Ｐｉを含んでいないブロックＢ０については、ブロック内の平均階調値を用いた３次元色変換により、ブロック内の画素がまとめて色変換される（図１２参照）ので、色変換にかかる処理量が低減する。したがって、厳密な色再現が要求される領域に対しては正確な色再現しながら、画像全体としては色変換に要する処理時間を短縮することができ、高画質な印刷を実現する色変換の高速化が実現される。
【００５７】
なお、インデックス指定の画素Ｐｉを含んでいないブロックＢ０についてはブロック単位でまとめて行う色変換によって画素の分解能が多少低下することになるが、インデックス指定の画素Ｐｉについては画素ごとに色変換されるので画像の分解能が低下することがない。実際の色見本印刷等においては、インデックス指定の画素Ｐｉは、印刷データＰＤの全画像領域のうちでも、色見本自体等の主要な領域に指定されることが多くなり、背景等の主要でない領域についてはＲＧＢ値が指定されることが多くなることが想定される。このため、上記実施例によれば、高画質が要求される主要領域については色再現および分解能に優れた高画質な印刷を行うことができ、主要でない領域については色再現および分解能の性能低下を多少許容することで、全体として、高画質且つ高速な処理速度を兼ね備えた印刷制御が実現される。
【００５８】
また、インデックス指定の画素Ｐｉを含んでいないが、エッジＥを含むブロックＢ２については、画素ごと個別に色変換が行われるので、エッジの分解能が低下することがない。このため、処理の高速化を図りつつ、エッジの再現性に優れた高画質な印刷が実現される。
【００５９】
以上、実施の形態の一実施例について説明したが、これに限られることなくその趣旨に逸脱しない様々な形態としてもよい。以下、変形例について説明する。
【００６０】
（変形例１）
上記実施例では、インデックス指定の画素およびエッジを含んでいないブロックについては、ブロック内の平均階調値を用いて３次元色変換を行うことによって、ブロックをまとめて色変換するようにしたが、一括して行う色変換の方法はこれに限られない。例えば、ブロック内にある画素の階調値の中央値や最頻値を用いて変換した値をブロック内の各画素に適用することによって、ブロック内をまとめて色変換するようにしてもよい。
【００６１】
（変形例２）
上記実施例では、エッジを含むブロックについて画素ごと個別に色変換を行うようにしたが、エッジに関する処理は必須ではない。すなわち、エッジ検出を行うことなく、インデックス指定の画素の有無のみによって、ブロック内の処理方法を変える構成としてもよい。
【００６２】
また、ドット生成率変換の処理についても必須でない。すなわち、単一のドットサイズのドット形成によって印刷を行うプリンターである場合、プリンタードライバー３００は、インク量セットに対してドット生成率変換を行うことなく、ハーフトーン処理を行うことによって、印刷制御データＣＤを生成できる。
【００６３】
（変形例３）
上記実施例では、アプリケーション２００から受け取る印刷データＰＤはビットマップデータであったが、印刷内容のオブジェクトやテキスト等を所定の言語で記述した描画データを受け取るようにしてもよい。この場合、印刷データ取得部３１０は、受け取った描画データの言語を解釈してビットマップ画像への展開およびインデックスの付与を行うことによって、印刷データＰＤを取得できる。
【００６４】
（変形例４）
上記実施例では、プリンタードライバー３００が、色変換の処理、ドット生成率変換の処理、ハーフトーン処理、ラスタ化の処理を行うようにしたが、これらの処理のうち一部の処理はプリンター側で行う構成としてもよい。例えば、画像処理装置であるコンピューター１０が、色変換、ドット生成率変換、およびハーフトーンの処理を行い、量子化データを印刷制御データとしてプリンター２０に出力して、ラスタ化の処理はプリンター２０が行う構成としてもよい。また、コンピューター１０は、色変換およびドット生成率変換の処理を行い、ドット生成率のデータを印刷制御データとしてプリンター２０に出力して、ハーフトーンおよびラスタ化の処理はプリンター２０が行う構成としてもよい。さらに、コンピューター１０は色変換の処理を行い、色変換後のデータをプリンターに出力する構成としてもよい。もっとも、色変換の処理、ドット生成率変換の処理、ラスタ化の処理を行う画像処理装置をプリンターが備え、ブロックの設定および判定を含む色変換以降の処理を全てプリンター側で実行する構成としてもよい。
【図面の簡単な説明】
【００６５】
【図１】本実施例にかかる画像処理装置のハードウェア構成を示す図。
【図２】コンピューターのソフトウェア構成を示す図。
【図３】印刷データを説明する図であり、（ａ）はＲＧＢ値指定の画素のデータ形式、（ｂ）はインデックス指定の画素のデータ形式を示す図。
【図４】１Ｄ−ＬＵＴの一例を示す図。
【図５】ドット生成率変換テーブルの一例を示す図。
【図６】印刷制御処理の流れを示すフローチャート。
【図７】色変換処理の流れを示すフローチャート。
【図８】色変換処理の流れを示すフローチャート。
【図９】ブロックの設定例を説明する図。
【図１０】ブロックに対する処理例を説明する図。
【図１１】ブロックに対する処理例を説明する図。
【図１２】ブロックに対する処理例を説明する図。
【符号の説明】
【００６６】
１０…画像処理装置としてのコンピューター、２０…プリンター、２００…アプリケーション、３００…プリンタードライバー、３１０…印刷データ取得部、３２０…画素群設定部としてのブロック設定部、３３０…画素群判定部としてのブロック判定部、３４０…第１色変換部、３４１…１Ｄ−ＬＵＴ、３４２…３Ｄ−ＬＵＴ、３５０…第２色変換部、３６０…ドットサイズ変換部、３６１…ドット生成率変換テーブル、３７０…ハーフトーン処理部、３８０…印刷制御部としてのラスタ化処理部、Ｆ…データ種別フラグ、ＤＰ…画像処理プログラムとしてのドライバープログラム、ＰＤ…印刷データ、ＣＤ…印刷制御データ、Ｐｉ…第１の画素としてのインデックス指定の画素、Ｐｖ…第２の画素としてのＲＧＢ値指定の画素。
【図１】
2010147842.tif 000003
【図２】
2010147842.tif 000004
【図３】
2010147842.tif 000005
【図４】
2010147842.tif 000006
【図５】
2010147842.tif 000007
【図６】
2010147842.tif 000008
【図７】
2010147842.tif 000009
【図８】
2010147842.tif 000010
【図９】
2010147842.tif 000011
【図１０】
2010147842.tif 000012
【図１１】
2010147842.tif 000013
【図１２】
2010147842.tif 000014