(57)【特許請求の範囲】
【請求項１】
複数のインクによる印刷を行う印刷装置に対する色分解テーブルを作成する色処理装置であって、
前記印刷装置から出力されたパッチ画像を測色して得られる印刷色情報を入力する入力手段と、
予め用意された色分解テーブルをリファレンステーブルとして取得するリファレンステーブル取得手段と、
前記リファレンステーブルから、色空間を構成するインク値を抽出するインク値抽出手段と、
前記入力手段で得られた印刷色情報に基づいて、前記インク値に対応する印刷色情報を色予測により推定する色予測手段と、
該推定された印刷色情報が予め定められた目標値に近づくように、前記インク値を更新する最適化手段と、
該更新された前記インク値に基づいて、前記色分解テーブルを作成する色分解テーブル作成手段と、を有し、
前記色予測手段は、
前記色空間を構成する枠を成す線分上、または前記色空間の一色で利用されるインクのみを有するプリンタモデルで前記色予測を行なうことを特徴とする色処理装置。
【請求項２】
前記色予測手段は、前記インク値に応じて、前記プリンタモデルを選択するプリンタモデル選択手段を有し、さらに該プリンタモデルごとに、
前記インク値の周辺格子点を取得する、周辺格子点の取得手段と、
該取得された周辺格子点のうち、前記入力ステップで印刷色情報が得られていない周辺格子点について、印刷色情報を推定する格子点推定手段と、
前記周辺格子点の印刷色情報に基づいて、前記インク値に対応する印刷色情報を推定する印刷色情報推定手段と、
を有することを特徴とする請求項１に記載の色処理装置。
【請求項３】
前記色予測手段は、前記インク値に応じて、前記プリンタモデルを選択するプリンタモデル選択手段を有し、
前記プリンタモデル選択手段は、前記枠のインク値が示す使用インクを全て使用するプリンタモデルの中で、最もインク数の少ないプリンタモデルを選択することを特徴とする請求項１に記載の色処理装置。
【請求項４】
前記色予測手段は、前記インク値に応じて、前記プリンタモデルを選択するプリンタモデル選択手段を有し、
前記プリンタモデル選択手段は、前記枠に予め対応付けられたプリンタモデルを選択することを特徴とする請求項１に記載の色処理装置。
【請求項５】
前記色予測手段はさらに、前記印刷色情報を保持する保持手段を有し、該保持手段は、前記複数のプリンタモデルにおいて共有されることを特徴とする請求項１乃至４のいずれか１項に記載の色処理装置。
【請求項６】
前記印刷色情報は、分光反射率の情報であることを特徴とする請求項１乃至５のいずれか１項に記載の色処理装置。
【請求項７】
前記パッチ画像は、前記リファレンステーブル取得手段で取得されるリファレンステーブルに基づく優先順位にしたがって、予め定められた数のパッチが設定されることを特徴とする請求項１乃至６のいずれか１項に記載の色処理装置。
【請求項８】
前記色予測手段は、前記プリンタモデルを単位とした前記色予測を時並列に行うことを特徴とする請求項１乃至７のいずれか１項に記載の色処理装置。
【請求項９】
前記色予測手段は、前記プリンタモデルの使用インク数に応じた組み合わせを単位として、前記色予測を時並列に行うことを特徴とする請求項８に記載の色処理装置。
【請求項１０】
複数のインクによる印刷を行う印刷装置に対する色分解テーブルを作成する色処理方法であって、
前記印刷装置から出力されたパッチ画像を測色して得られる印刷色情報を入力する入力ステップと、
予め用意された色分解テーブルをリファレンステーブルとして取得するリファレンステーブル取得ステップと、
前記リファレンステーブルから、色空間を構成するインク値を抽出するインク値抽出ステップと、
前記入力ステップで得られた印刷色情報に基づいて、前記インク値に対応する印刷色情報を色予測により推定する色予測ステップと、
該推定された印刷色情報が予め定められた目標値に近づくように、前記インク値を更新する最適化ステップと、
該更新された前記インク値に基づいて、前記色分解テーブルを作成する色分解テーブル作成ステップと、を有し、
前記色予測ステップにおいては、
前記色空間を構成する枠を成す線分上、または前記色空間の一色で利用されるインクのみを有するプリンタモデルで前記色予測を行なうことを特徴とする色処理方法。
【請求項１１】
コンピュータが読み込み実行することで、該コンピュータを請求項１乃至９のいずれか１項に記載の色処理装置の各手段として機能させることを特徴とするコンピュータプログラム。
【請求項１２】
請求項１１に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は色処理装置および色処理方法に関し、特に、複数のインクによる印刷を行う印刷装置に対する色分解テーブルを作成する色処理装置および色処理方法に関する。
【背景技術】
【０００２】
従来、プリンタにおいて出力される色を予測する色予測方法として、Cellular Yule-Nielsen Neugebauer Modelが知られている（例えば、非特許文献１参照）。このモデルは、予め設定された格子点に対応するカラーパッチを出力し、該カラーパッチを測色して得た色情報をもとにNeugebauer Modelにしたがって任意の入力値に対する色情報を推定するものである。
しかしながら、インクの総量を越えてしまうなどの理由により、全ての格子点が印刷できるとは限らない。したがって、上記非特許文献１では、印刷して測色した格子点の色情報から、印刷不可能な格子点の色情報を重回帰により推定している。
【非特許文献１】Y.Chen,R.S.Berns and L.A.Taplin,"Six Color Printer Characterization Using an Optimized Cellular Yule-Nielsen Spectral Neugebauer Model",J.Imaging Sci. Tech. Vol.48, No.6,pp.519-528(2004)
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述した印刷不可能な格子点の色情報を重回帰によって推定する方法は、インク数が増大すると演算量が指数関数的に増大してしまうという問題があった。例えば、非特許文献１による方法では、２のインク数乗×２のインク数乗サイズの逆行列演算が必要となる。一般に、逆行列の演算量は行列サイズのほぼ３乗に比例するため、例えば１１色のインクをもつ場合は、４色の場合に比べて、
(２11／２4)3＝２０９７１５２倍
もの演算量になる。これは、プリンタの多色化が進む今日、大きな障害となっていた。
【０００４】
本発明は上述した問題を解決するためになされたものであり、使用インク数が多い印刷装置に対し、より少ないインク数のプリンタモデルを単位とした高速な色予測を行って色分解テーブルを作成する色処理装置および色処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上述した目的を達成するための一手段として、本発明の色処理装置は以下の構成を備える。
【０００６】
複数のインクによる印刷を行う印刷装置に対する色分解テーブルを作成する色処理装置であって、前記印刷装置から出力されたパッチ画像を測色して得られる印刷色情報を入力する入力手段と、予め用意された色分解テーブルをリファレンステーブルとして取得するリファレンステーブル取得手段と、前記リファレンステーブルから、色空間を構成するインク値を抽出するインク値抽出手段と、前記入力手段で得られた印刷色情報に基づいて、前記インク値に対応する印刷色情報を色予測により推定する色予測手段と、該推定された印刷色情報が予め定められた目標値に近づくように、前記インク値を更新する最適化手段と、該更新された前記インク値に基づいて、前記色分解テーブルを作成する色分解テーブル作成手段と、を有し、前記色予測手段は、前記色空間を構成する枠を成す線分上、または前記色空間の一色で利用されるインクのみを有するプリンタモデルで前記色予測を行なうことを特徴とする。
【０００７】
例えば、前記色予測手段は、前記枠のインク値に応じて、前記プリンタモデルを選択するプリンタモデル選択手段を有し、さらに該プリンタモデルごとに、前記枠のインク値の周辺格子点を取得する周辺格子点取得手段と、該取得された周辺格子点のうち、前記測色ステップで印刷色情報が得られていない周辺格子点について、印刷色情報を推定する格子点推定手段と、前記周辺格子点の印刷色情報に基づいて、前記枠のインク値に対応する印刷色情報を推定する枠情報推定手段と、を有することを特徴とする。
【発明の効果】
【０００８】
上記構成からなる本発明によれば、使用インク数が多い印刷装置に対し、より少ないインク数のプリンタモデルを単位とした高速な色予測を行って、色分解テーブルを作成することができる。
【発明を実施するための最良の形態】
【０００９】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１０】
＜第１実施形態＞
●出力プロセス
本実施形態では、色分解テーブル作成装置における色予測方法について説明する。なお、本実施形態の色分解テーブル作成装置においては、Ｃ，Ｍ，Ｙ，Ｋ，Ｌｃ，Ｌｍ，Ｇｙ，Ｒ，Ｇ，Ｂ，Ｌｇの１１色インクを搭載したインクジェット方式のプリンタに対する色分解テーブルを作成するものとする。
【００１１】
図１に、本実施形態において想定されるインクジェットプリンタの印刷処理の流れを示す。１０１は画像信号入力部であり、不図示のＯＳ（オペレーションシステム）等の制御手段から画像信号が入力される。この画像信号は、例えばＲＧＢの３チャンネル各８ビットからなるカラー画像信号であり、標準色空間であるｓＲＧＢやＡｄｏｂｅＲＧＢ等の色空間で定義される。画像信号入力部１０１から入力された画像信号は、色分解部１０２において、プリンタの各インクに対応した、Ｃ，Ｍ，Ｙ，Ｋ，Ｌｃ，Ｌｍ，Ｇｙ，Ｒ，Ｇ，Ｂ，Ｌｇの１１チャンネル、各８ビットの画像信号に変換される。
【００１２】
ここで図２に、色分解部１０２にてＲＧＢ３チャンネル各８ビットの画像信号を各インク１１チャンネル各８ビットの画像信号に変換する際に参照される、ルックアップテーブル（以降、色分解テーブルと称する）の一例を示す。同図に示すように色分解テーブルには、Ｒ，Ｇ，Ｂ各チャンネルを、例えばそれぞれ９ステップ（０，３２，６４，９６，１２８，１６０，１９２，２２４，２５５）でサンプリングした全組合せ（９×９×９＝７２９色）に対して出力値が記載されている。該出力値とはすなわち、Ｃ，Ｍ，Ｙ，Ｋ，Ｌｃ，Ｌｍ，Ｇｙ，Ｒ，Ｇ，Ｂ，Ｌｇの各８ビットの出力値（以降、インク値と称する）である。色分解部１０２では、この色分解テーブルを参照し、四面体補間や、線形補間などを用いて入力されたＲＧＢ３チャンネル各８ビットの全組合せに対応する信号を、１１チャンネルの各インク値に変換する。
【００１３】
色分解部１０２にて変換された１１チャンネル各８ビットからなる画像信号（インク値）は、階調補正部１０３において、画像出力部１０４で印刷可能な１１チャンネル各２ビットデータに変換される。この階調補正方法としては、例えばベイヤー型の１６×１６のマトリクスを、入力された１１チャンネルの画像それぞれにあてがう方法がある。すなわち、マトリクス要素よりも、画像上の対応する画素値の方が大きい場合には１、該画素値が該マトリクス要素以下の場合には０、とすることによって、階調補正を行う。また、このハーフトーニング手法として誤差拡散法などを用いることもできる。
【００１４】
本実施形態では、上述したような色分解テーブルを作成する装置について説明する。色分解テーブルにおいては、入力されたＲＧＢ３チャンネルの信号が示す色と、印刷後に紙面上で再現される色とがほぼ等しくなるよう、１１色の各インク値が決定されなければならない。このとき、本実施形態における色予測方法が有効に機能する。
【００１５】
●色分解テーブル作成装置
図３は、本実施形態の色予測方法を用いる色分解テーブル作成装置の構成を示すブロック図である。同図において、３０１は全体を制御するＣＰＵ、３０２は変更を必要としないプログラムやパラメータを格納するＲＯＭ、３０３は各処理部から供給されるプログラムやデータを一時記憶するＲＡＭである。３０４は表示部であり、処理の結果やユーザへの指示、エラーメッセージ等を表示するモニタ等の表示デバイスである。３０５は操作部であり、ユーザの操作を受けデータを入力するポインティングデバイスやキーボードなどの入力デバイスである。
【００１６】
３０６は、上述したような出力処理が行われる１１色のインクジェットプリンタ（以下、プリンタと称する）であり、後述する色予測カラーパッチ作成部３１０にて作成されるカラーパッチの出力を行う。なお、本実施形態の色分解テーブル作成装置によって作成された色分解テーブルは、プリンタ３０６にアップロードされることによって使用可能となる。
【００１７】
３０７は色分解テーブル作成部であり、本実施形態の特徴である色分解テーブルの作成処理を行うが、その詳細については後述する。
【００１８】
３０８はリファレンステーブル保持部であり、予め作成された代表的な用紙における色分解テーブルを複数保持している。本実施形態の色分解テーブル作成装置は、このリファレンステーブル保持部３０８に保持される色分解テーブルを参照し、様々な用紙、あるいは印字品位設定ごとに色分解テーブルを自動作成することを特徴とする。
【００１９】
３０９は色予測部であり、色分解テーブル作成部３０７の要求に応じて、インク値に対する色情報（ＣＩＥ１９７６Ｌ*ａ*ｂ*）を算出するが、その詳細については後述する。
【００２０】
３１０は色予測カラーパッチ作成部であり、本実施形態における色予測用のカラーパッチを作成する。その詳細については後述する。
【００２１】
３１１は測色データ取得部であり、不図示の測色器と接続し、色予測カラーパッチ作成部３１０にて作成されプリンタ３０６にてプリントされたカラーパッチ画像を測色する。この測色結果は、色予測部３０９に入力される。
【００２２】
●色分解テーブル作成処理
以下、色分解テーブル作成部３０７における色分解テーブル作成処理の詳細について説明する。
【００２３】
図４は、色分解テーブル作成部３０７における色分解テーブル作成処理を示すフローチャートである。
【００２４】
まずステップＳ４００で測色データ取得部において、色予測カラーパッチ作成部３１０で作成され、プリンタ３０６にてプリントされたカラーパッチ画像を測色し、取得された印刷色情報である分光反射率データを色予測部３０９に入力する。なお、この測色ステップＳ４００は、ステップＳ４０１以降の色分解テーブル作成処理を開始するに先立って行われるのであれば、例えば数日前であっても直前であっても、どのようなタイミングで実行されても良い。
【００２５】
次にステップＳ４０１は、リファレンステーブルを読み取る、読取ステップである。ここでは、リファレンステーブル保持部３０８に保持されている複数の色分解テーブルの中から、以降の処理で作成する色分解テーブルが対応する用紙の質、あるいは印字品位設定に最も近い色分解テーブルを１つ選択して読み出し、ＲＡＭ３０３に記憶する。例えば、リファレンステーブル保持部３０８に、光沢紙、マット紙、コート紙、普通紙などの種別ごとにそれぞれ代表的な用紙の色分解テーブルが各１つ登録されているとする。この場合、以降の処理で光沢紙に属する用紙の色分解テーブルを作成するのであれば、光沢紙の代表用紙の色分解テーブルが選択される。このリファレンステーブルの選択は、ユーザが操作部３０５を介して行ってもよいし、あるいは、何らかの測定手段を用いて用紙の属性等を判別し、自動的に適当なリファレンステーブルを選択するよう構成してもよい。
【００２６】
次にステップＳ４０２は、ステップＳ４０１で選択したリファレンステーブルから枠情報を抽出する、枠抽出ステップである。ここで枠情報について、図５，図６を用いて説明する。
【００２７】
図５は色空間を模式的に表した図であり、ＲＧＢ各８ビットの画像信号であれば、図中Ｗは（Ｒ,Ｇ,Ｂ）＝（２５５，２５５，２５５）、同様にＫは（０，０，０）、Ｒは（２５５，０，０）、Ｇは（０，２５５，０）、Ｂは（０，０，２５５）に相当する。また同様に、Ｃは（０，２５５，２５５）、Ｍは（２５５，０，２５５）、Ｙは（２５５，２５５，０）に相当する。本実施形態における枠とは、これら８点（Ｗ，Ｋ，Ｒ，Ｇ，Ｂ，Ｃ，Ｍ，Ｙ）の隣り合う点同士を結ぶ１８本の線と、ＷとＫを結ぶ線の計１９本の線を意味する。すなわち、Ｗ−Ｃ，Ｗ−Ｍ，Ｗ−Ｙ，Ｗ−Ｒ，Ｗ−Ｇ，Ｗ−Ｂ，Ｋ−Ｃ，Ｋ−Ｍ，Ｋ−Ｙ，Ｋ−Ｒ，Ｋ−Ｇ，Ｋ−Ｂ，Ｙ−Ｒ，Ｙ−Ｇ，Ｃ−Ｇ，Ｃ−Ｂ，Ｍ−Ｂ，Ｍ−Ｒ、およびＷ−Ｋ、の計１９本である。ステップＳ４０２ではすなわち、この１９本の各線上に位置するＲＧＢ値と、それに対応する１１色のインク値をリファレンステーブルから抽出する。
【００２８】
この枠情報について、図６を用いてより具体的に説明する。図６は、Ｗ−Ｋの枠における各インク値を示す図である。同図において、横軸のグリッド番号はＷ−Ｋ上の点をＷから順に番号付けしたものであり、色分解テーブルが図２で説明したＲＧＢ各９ステップ刻みである場合には９グリッド存在する。例えば、グリッド１はＷに相当し、（Ｒ,Ｇ,Ｂ）＝（２５５，２５５，２５５）である。グリッド２は、（Ｒ,Ｇ,Ｂ）＝（２２４，２２４，２２４）、グリッド３は（１９２，１９２，１９２）に相当する点である。
【００２９】
ステップＳ４０２では、１〜９までの各グリッドのＲＧＢ値に対応するインク値を、色分解テーブルから抽出する。
【００３０】
色分解テーブル作成部３０７では、１９本の各枠に対して各インク値を最適化し、最後に補間処理により、枠以外の色空間全域における色分解テーブルを生成する。
【００３１】
図４に戻り、ステップＳ４０２にて各枠に対するインク値を抽出した後、ステップＳ４０３，Ｓ４０４のループにより各枠の各グリッドに対して、ステップＳ４０５〜Ｓ４０８の最適化処理を行うことで、各枠のインク値が決定される。以下、この最適化処理について説明する。
【００３２】
まずステップＳ４０５にて、各グリッドの目標色を設定する。ここで目標色とは、例えばＣＩＥ１９７６Ｌ＊ａ＊ｂ＊色空間におけるＬ＊ａ＊ｂ＊値のことであり、枠ごと、グリッドごとに予め決められた値がＲＯＭ３０２に記録されている。ステップＳ４０５では、グリッド、枠に応じた所定の目標値をＲＯＭ３０２から読み出し、ＲＡＭ３０３に設定する。
【００３３】
次にステップＳ４０６では、色予測部３０９において、各グリッドの１１色のインク値から、ＣＩＥ１９７６Ｌ＊ａ＊ｂ＊色空間におけるＬ＊ａ＊ｂ＊値を推定（色予測）する。この色予測処理の詳細については後述する。そしてステップＳ４０７にて、該予測されたＬ＊ａ＊ｂ＊をステップＳ４０５で設定された目標色のＬ＊ａ＊ｂ＊値と比較する。該比較による色差が所定の条件を満たさない場合には、ステップＳ４０８にて該当するグリッドのインク値を変更し、該更新された値に対し、再びステップＳ４０６にて色予測を行う。このステップＳ４０８，Ｓ４０６の処理は、ステップＳ４０７で所定の条件が満たされるまで繰り返される。
【００３４】
ここで、ステップＳ４０８におけるインク値の更新は、所定のアルゴリズムに従ってインク値を増減させることによりなされるが、該当する枠の使用インク数は増加しないものとする。たとえば、Ｗ−Ｋ枠で使用しているインクがＬｃ，Ｌｍ，Ｇｙ，Ｌｇ，Ｋである場合、この４色の中でインク値が変更され、新たに別のインク（例えばＹ等）が使用されることはない。すなわち、Ｌｃ，Ｌｍ，Ｇｙ，Ｌｇ，Ｋ以外のインク値には必ず０が設定される。本実施形態ではこのように、インク数を枠によって限定することで、１１色というインク数の多いプリンタであっても、色予測ステップ（Ｓ４０６）を比較的高速に実行することが可能となる。
【００３５】
なお、ステップＳ４０７における判定条件は、枠ごとに異なっても良い。また、本実施形態では色差によって条件を判定する例を示したが、本発明はこれに限らない。例えば、ある枠では色相差を算出して比較し、別の枠では明度差を算出して較する等、枠ごとに異なる条件を設定しても良い。
【００３６】
ステップＳ４０３，Ｓ４０４のループにより全ての枠、グリッドに対するインク値の最適化処理が終了すると、最後にステップＳ４０９において、最適化された各枠のインク値を、四面体補間や線形補間など既知のアルゴリズムを用いて補間する。これにより、色空間全域に対する色分解テーブルが生成される。
【００３７】
以上説明したように、色分解テーブル作成部３０７においては、色予測を用いて各枠のインク値を変更することにより、発色特性の異なる様々な用紙において同様の色再現を実現する色分解テーブルを自動的に作成することができる。また、詳細は後述するが、本実施形態では枠ごとにインク値を制限して最適化することにより、色予測を高速に実行することが可能となる。
【００３８】
●色予測処理
以下、上述したステップＳ４０６において、色予測部３０９で実行される色予測処理の詳細について説明する。
【００３９】
図７は、色予測部３０９の構成を示すブロック図である。同図において、７０１は１１色（Ｃ，Ｍ，Ｙ，Ｋ，Ｌｃ，Ｌｍ，Ｇｙ，Ｒ，Ｇ，Ｂ，Ｌｇ）のインク値を入力するインク値入力部である。７０２は、インク値入力部７０１にて入力されたインク値に基づいて、色予測を行う最適なプリンタモデルを選択し、該プリンタモデルにインク値を入力するプリンタモデル選択部である。
【００４０】
７０３はプリンタモデルであり、インク値に対してプリンタ３０６で出力した際に得られるであろう印刷色情報としての分光反射率を予測する。なお、色予測部３０９は、インク数、インク種別の異なるプリンタモデルを複数有しており、各プリンタモデルは、色予測に必要な処理を行う周辺プライマリ取得部７０７、未知プライマリ推定部７０８、ノイゲバウア処理部７０９、をそれぞれ有している。なお、本実施形態におけるプライマリとはすなわち、色空間上における格子点（グリッド）に相当する。
【００４１】
ここで図９に、１５個の異なるプリンタモデルを有する場合の、各プリンタモデルのインク数およびインク種別を示す。図９において、インク種別欄の「０」は該当するインクを使用していない旨を意味し、「１」は該インクを使用している旨を意味する。図９に示すように、１１色のインクを有するプリンタであっても、１１色のインク全てを同時に使用して印刷することはないと考えられるため、よりインク数の少ない複数のプリンタモデルへの分割が可能である。このように、１１色のプリンタをより少ないインク数のプリンタモデルに分割することで、後述する色推定の演算量を減らすことができ、高速処理が実現できる。
【００４２】
図７に戻り、７０４は格子点情報を保持する格子点情報保持部である。ここで格子点情報は、図１０に示すようなテーブルであり、各インク値をある間隔でサンプリングして得られる全グリッドのＩＤと、各グリッドのインク値と、該インク値に対応する分光反射率データの有無を示すフラグ情報と、からなる。ここでフラグ情報とはすなわち、該当するインク値がプリンタ３０６にて出力された際に測色値として得られる分光反射率データが、後述するプライマリ分光反射率保持部７０５に記憶されているか否かを示すものである。図１０は、全インクをインク値０，８５，１７０，２５５の４グリッドでサンプリングした例を示し、４の１１乗（＝４１９４３０４）個のインク値の組合せと、対応するフラグデータが保持されている。ここで、図１０における「分光反射率データの有無」欄がすなわちフラグ情報に相当し、「０」はインク値に対応する分光反射率データがプライマリ分光反射率保持部７０５に格納されていない旨を意味し、「１」は格納されている旨を意味している。
【００４３】
図７に戻り、７０５はプライマリ分光反射率保持部であり、ステップＳ４００において測色データ取得部３１１にて取得された色予測カラーパッチの分光反射率、または、プリンタモデル内の未知プライマリ推定部７０８にて推定された分光反射率が保持される。ここで図１１に、プライマリ分光反射率保持部７０５で保持されるデータ例を示す。図１１に示すように、プライマリ分光反射率保持部７０５は、格子点情報保持部７０４に保持されたテーブルが有する格子点ＩＤと、それぞれの格子点に対応する分光反射率を、テーブルとして保持している。なお図１１では、４００〜７００［ｎｍ］の波長の光に対する反射率が１０［ｎｍ］間隔で保持されているが、この例に限らないことは言うまでもない。
【００４４】
ここで、格子点情報保持部７０４、およびプライマリ分光反射率保持部７０５は、上述した複数のプリンタモデルによって共有される。この共有化により、例えばプリンタモデル０１の未知プライマリ推定部７０８で推定された分光反射率は、プリンタモデル１５など他のプリンタモデルにおいて重複して推定されることなく、後述するノイゲバウア処理等に利用される。特に、後述する未知プライマリ推定処理は演算量が多くなるため、このようにプライマリ推定結果を共有することによって、処理効率を大幅に向上させることが可能となる。
【００４５】
図７に戻り、７０６はＬ＊ａ＊ｂ＊出力部であり、各プリンタモデルによって予測された分光反射率を、ＣＩＥ１９７６Ｌ＊ａ＊ｂ＊に変換して出力する。
【００４６】
以下、色予測部３０９における色予測処理を、図８のフローチャートを用いてより詳細に説明する。
【００４７】
まず、ステップＳ８０１にてインク値入力部７０１に各インクのインク値が入力され、ステップＳ８０２においてプリンタモデル選択部７０２で選択された適切なプリンタモデルに入力される。なおプリンタモデル選択部７０２では、入力されたインク値が「０」以外となるインクを全て有するプリンタモデルの中で、最もインク数の少ないプリンタモデルを選択する。ただし、プリンタモデル選択処理はこの例に限らず、例えば、何らかの手段で色予測部３０９に枠情報を入力し、該枠情報に予め対応付けられたプリンタモデルを選択するようにしても良い。
【００４８】
次にステップＳ８０３において、各プリンタモデルは、周辺プライマリ取得部７０７においてインク値の周辺プライマリ（周辺格子点）を取得する。より具体的には、入力されたインク値を囲む全てのグリッドのＩＤを、格子点情報保持部７０４から取得する。ここでインク値を囲むグリッドとは、選択されたプリンタモデルで有効なインク（図９に示す「０」値以外のインク種）において、グリッド値Ａ＜インク値＜グリッド値Ｂ、となるグリッド値Ａ，Ｂを意味する。有効なインクが複数ある場合、各有効なインクのそれぞれに対してグリッド値Ａ，Ｂに相当する値が求められ、それらの組合せの全て、すなわち、２の［有効インク数］乗個の周辺プライマリが存在することになる。
【００４９】
以上のようにステップＳ８０３で周辺プライマリが取得されると、その全ての周辺プライマリに対し、以降のステップＳ８０５〜Ｓ８０８の処理が行われる。
【００５０】
まずステップＳ８０５では、プライマリ分光反射率保持部７０５に分光反射率が設定されているか否かを判定する。この判定は、格子点情報保持部７０４に保持されている、図１０に例示したようなテーブルにおいて分光反射率データの有無を示すフラグデータを参照することによってなされる。
【００５１】
ステップＳ８０５にて分光反射率データがあると判定された場合はステップＳ８０８に移行し、対応する分光反射率をＲＡＭ３０３に記憶する。なお、対応する分光反射率は、図１１に例示したようなプライマリ分光反射率保持部７０５のテーブルから、周辺プライマリのＩＤを検索することで取得される。
【００５２】
ステップＳ８０５にて分光反射率データが無いと判定された場合はステップＳ８０６に移行し、未知プライマリ推定部７０８にて分光反射率の推定を行う。この推定は、既知の分光反射率を重回帰することでなされる。具体的には、次の式に従う。
【００５３】
Ｒj＝Ｆj・Ｐj    ・・・(1)
（１）式において、Ｒjは推定される未知周辺プライマリの分光反射率ベクトル、Ｆjは未知周辺プライマリの被覆率ベクトル、Ｐjは推定行列である。ここで、被覆率ベクトルＦjは、入力されたインク値ベクトルを、２の［有効インク数］乗個のプライマリによって紙面が覆われる割合（被覆率）に換算したものである。ここでいうプライマリとは、各インクの被覆率が０％(インク値＝０)と１００％(インク値＝２５５)の２つの状態をとる場合の全ての組合せであり、従ってプライマリの数は２の［有効インク数］乗個となる。なお、被覆率は、プリンタ３０６における階調補正部１０３、および紙面上にインクのドットが形成された時に生じるドットゲインに依存する。インク値から被覆率への変換は、インク・用紙・印刷モードごとに予め設定された１次元ＬＵＴを参照することで行われる。
【００５４】
また、推定行列Ｐjは下式によって求められる。
【００５５】
Ｐj＝(ＦpTｗjTｗjＦp)-1ＦpTｗjTｗjＲp)    ・・・(2)
ここで、ｗjは重み行列、Ｆpは既知プライマリの被覆率行列、Ｒpは既知プライマリの分光反射率行列である。被覆率行列Ｆpは、プライマリ分光反射率保持部７０５に保持されている分光反射率のデータに対応するインク値ベクトルを、被覆率ベクトルに変換することにより得られる。したがって被覆率行列Ｆpは、（プライマリ分光反射率保持部７０５に格納されるプライマリの数）×（２の有効インク数乗）サイズの行列となる。
【００５６】
また、分光反射率行列Ｒpは、プライマリ分光反射率保持部７０５に保持されている被覆率ベクトルＦjに対応する分光反射率を１／ｎ乗したデータからなる行列である。分光反射率行列Ｒpは、（プライマリ分光反射率保持部７０５に格納されるプライマリの数）×（分光反射率データの次元数、例えば４００〜７００［ｎｍ］で１０ｎｍ間隔の場合には３１次元）サイズの行列となる。なお、上記１／ｎ乗におけるｎは、Yule-Neilsen Valueと呼ばれ、予め決められた値がＲＯＭ３０２に記憶されている。
【００５７】
また、重み行列ｗjは、（２の有効インク数乗）×（２の有効インク数乗）からなる対角行列である。重み行列ｗjの対角要素として、例えば被覆率ベクトルＦjと被覆率行列Ｆpの各行とのユークリッド距離の逆数を設定する。これにより、Ｆjに距離が近い既知プライマリの重みを高めることができる。本実施形態ではこのように重みを調整することで、推定精度を向上させることができる。
【００５８】
そして最後に、（１）式によって推定された未知周辺プライマリの分光反射率ベクトルＲjに対し、Yule-Neilsen Valueであるｎを乗じる。これにより、ステップＳ８０６における未知プライマリの推定処理（格子点推定処理）を終了する。
【００５９】
ここで、上記（１），（２）式に示した行列のサイズは、プライマリの数が２の［インク数］乗個となるため、インク数に対し指数関数的に増大する。また、逆行列の演算は、一般に行列サイズの３乗に比例するため、例えば１１色のインクをもつ場合は、４色の場合に比べて、
(２11／２4)3＝２０９７１５２倍
もの演算量になると予測される。本実施形態においては、１１色のプリンタをよりインク数の少ない複数のプリンタモデルに分割することによって演算量を抑制し、未知プライマリ推定処理をより高速に行うことが可能となる。
【００６０】
以上のようにステップＳ８０６で推定された周辺プライマリの分光反射率は、ステップＳ８０７でプライマリ分光反射率保持部７０５のテーブルに追加される。このとき、格子点情報保持部７０４のテーブルにおいて分光反射率データの有無を示すフラグデータの更新も同時に行われる。
【００６１】
このように本実施形態では、複数のプリンタモデルで共有されるプライマリ分光反射率保持部７０５、および格子点情報保持部７０４のデータを更新することにより、同じ未知プライマリの推定処理を複数のプリンタモデルで重複して行うことがなくなる。特に未知プライマリ推定処理は多くの演算量を必要とするため、このように効率化することにより大幅に処理時間を短縮することが可能となる。
【００６２】
ステップＳ８０４によって、ステップＳ８０５〜Ｓ８０８のループ処理により全ての周辺プライマリの分光反射率が用意されたと判定されると、処理はステップＳ８０９に移行する。
【００６３】
ステップＳ８０９は枠情報推定ステップであり、ノイゲバウア処理部７０９において、入力されたインク値に対する分光反射率を推定する。具体的には、周辺プライマリの分光反射率を１／ｎ乗したものを、各周辺プライマリの被覆率と、入力されたインク値ベクトルの被覆率に基づいて線形補間し、最後に再びｎ乗することで、分光反射率を推定する。
【００６４】
該推定された分光反射率は、ステップＳ８１０においてＬ＊ａ＊ｂ＊出力部７０６にてＬ＊ａ＊ｂ＊値に変換された後、ステップＳ８１１で出力される。
【００６５】
●色予測カラーパッチ作成処理
以下、色予測カラーパッチ作成部３１０における色予測カラーパッチ作成処理の詳細について、図１２のフローチャートを用いて説明する。ここで作成されたカラーパッチが、プリンタ３０６から出力され、不図示の測色器で測色される。そして、該測色によって得られた各パッチの分光反射率データが測色データ取得部３１１にて取得され、色予測部３０９のプライマリ分光反射率保持部７０５に保持される。
【００６６】
上述した色予測部１０９における色予測処理は、測色するカラーパッチ数が多いほどその精度が上がるという特徴を有している。ところが、インク数が多くなると測色数が膨大となり、印刷にかかる負荷が増大してしまう。例えば、各インクを４ステップでサンプリングした場合、１１色のプリンタにおいては４の１１乗（＝４１９４３０４）個の格子点が存在する。これらの格子点のうち、インクのあふれなどによる制限（以降、打ち込み量制限と称する）のためプリント不可能なものを除いたとしても、印刷・測色などにかかる負荷は膨大なものとなる。また、打ち込み量制限はプリントする用紙の特性や階調補正部１０３のパラメータ等により異なるため、印刷・測色しなければならないパッチ数が一意に定まらず、オペレータを混乱させる可能性があった。
【００６７】
本実施形態における色予測カラーパッチ作成部３１０では、これらの問題を考慮し、枠の色分解を最適化することで、なるべく精度を維持したままで出力するカラーパッチの数を制御する。
【００６８】
図１２において、まず、多次色のカラーパッチを作成する前処理として、ステップＳ１２０１にて１次色のカラーパッチを生成し、これをプリンタ３０６より出力する。ここで１次色のカラーパッチとは、プリンタ３０６の各インクにおいて、例えば、インク値＝０，１６，３２，６４，８０，９６，１１２，１２８，１４４，１６０，１７６，１９２，２０８，２２４，２４０，２５５の１６階調をとったものである。この場合、インク数×階調数＝１１×１６＝１７２色のカラーパッチを出力する。ステップＳ１２０１にて出力されたカラーパッチは、ステップＳ１２０２において分光反射率が測色され、測色データ取得部３１１を介してＲＡＭ３０３に該測色値が格納される。
【００６９】
次にステップＳ１２０３において、実際に印刷を行うパッチの数を取得する。これは、操作部３０５を介してユーザが指定するように構成しても良いし、予めＲＯＭ３０２に記憶されているデータを読み取るように構成しても良い。
【００７０】
ステップＳ１２０４は、格子点間隔の初期値を設定するステップであり、各インクで０，α，２５５の３階調を設定する。ここでαは、全インクを同時にインク値等量で用紙に印字した際に、打ち込み制限内に収まる最大のインク値である。このようにαを含む３階調を設定することにより、０，αの組合せから構成される全ての格子点において分光反射率が取得されるため、上述した未知プライマリ推定処理（Ｓ８０５）における逆行列演算が実行可能となる。
【００７１】
ステップＳ１２０５は、ステップＳ１２０４にて設定した格子点間隔に基づき、例えば図１０に示した格子点情報を作成するステップである。初期設定の段階では、各インク３階調が設定されているため、階調数のインク数乗、すなわち３の１１乗＝１７７１４７個の格子点データが形成される。このとき、分光反射率データの有無を示すフラグには０が設定される。
【００７２】
ステップＳ１２０６は、ステップＳ１２０５で作成された格子点の打ち込み量を算出し、打ち込み量制限内である格子点（すなわち印刷可能なパッチ）をカウントするステップである。ここで打ち込み量は、例えば格子点における各インクのインク値の総和で与えられる。ここでは、この総和が、予め用紙や階調補正部１０３のパラメータごとに用意されている閾値（打ち込み量制限）以下である格子点の数を数える。
【００７３】
ステップＳ１２０７は、ステップＳ１２０６にてカウントされた格子点数すなわち印刷可能パッチ数と、ステップＳ１２０４にて取得した印刷実行パッチ数とを比較し、該比較結果に応じて処理を分岐する。すなわち、印刷可能パッチ数が印刷実行パッチ数よりも少ない場合にはステップＳ１２０８に進み、印刷可能パッチ数が印刷実行パッチ数以上である場合にはステップＳ１２１０に進む。
【００７４】
ステップＳ１２０８は、１次色の精度を算出するステップである。ここでは、ステップＳ１２０２にて取得した１次色の分光反射率をリファレンスとして、格子点から推定した分光反射率とのＲＭＳ誤差をとる。例えば、ステップＳ１２０２では、各インクの１次色の分光反射率を、インク値＝０，１６，３２，６４，８０，９６，１１２，１２８，１４４，１６０，１７６，１９２，２０８，２２４，２４０，２５５、の１６階調にて取得した。また、ステップＳ１２０４にて初期設定された格子点は、０，α（＝８０とする），２５５の３階調である。従ってここでは、０，８０，２５５の分光反射率から、その他の格子点である１６，３２，６４，９６，１１２，１２８，１４４，１６０，１７６，１９２，２０８，２２４，２４０の分光反射率を推定し、測色された分光反射率とのＲＭＳ誤差を計算する。なお、この推定処理は、インク値を被覆率に変換し、分光反射率を１／ｎ乗したものを被覆率空間において線形補間し、再びｎ乗することにより行われる。
【００７５】
次にステップＳ１２０９において、ステップＳ１２０８にて算出したＲＭＳ誤差が最大となるインク、およびそのインク値を検出し、該インクに対する格子点にその値を追加する。例えば、Ｃインクのインク値１９２におけるＲＭＳ値が最大であったならば、Ｃインクの格子点間隔を０，８０（＝α），１９２，２５５とする。このようにステップＳ１２０９では、１次色の推定精度が最も悪い箇所に、格子点を追加することによって、精度の向上を図る。
【００７６】
ステップＳ１２０９にて格子点間隔が変更された後、再びステップＳ１２０５に戻って格子点情報を再構築する。例えば、全１１インクにおいて、Ｃが４階調、その他のインクが３階調である場合、格子点数は全部で４×３×３×３×３×３×３×３×３×３×３＝２３６１９６となる。
【００７７】
以降、ステップＳ１２０７において印刷可能パッチ数が印刷実行パッチ数以上となるまで、ステップＳ１２０５〜Ｓ１２０９の処理を繰り返す。
【００７８】
ステップＳ１２０７において印刷可能パッチ数が印刷実行パッチ数以上となった場合には、ステップＳ１２１０に進み、各格子点とリファレンステーブルの枠情報との距離Ｄを算出する。ここでリファレンステーブルとしては、色分解テーブル作成部３０７にて参照されるテーブルがリファレンステーブル保持部３０８から読み出される。また、格子点とリファレンステーブルとの距離Ｄは、リファレンステーブル上の枠に相当する各インク値ベクトルと、格子点のインク値ベクトルとのユークリット距離をまず計算し、その中で最小のものを距離Ｄとして決定する。
【００７９】
続いてステップＳ１２１１では、距離Ｄの小さいものから順次、印刷実行パッチ数分のパッチを選出し、プリンタ３０６で出力可能な形式の画像データを作成する。なお、カラーパッチを作成する場合には、プリンタ３０６においては図１に示す階調補正部１０３以降の処理を行うものとする。
【００８０】
上述したように色分解テーブル作成部３０７では、リファレンステーブルを参考にして色分解テーブルを作成するため、色予測部３０９においてもリファレンステーブルに近い色が多く入力されると予想される。従って、色予測カラーパッチ作成部３１０でもパッチの優先順位をリファレンステーブルとのユークリット距離に基づいて決定することにより、必要な精度を落とすことなく、出力カラーパッチの数を制御することが可能となる。
【００８１】
以上説明した様に本実施形態によれば、インク数の多いプリンタを、よりインク数の少ない複数のプリンタモデルに分割して色予測を行うことにより、印字不可能な格子点の色情報を推定するための演算量が抑えられ、より高速な色予測が可能となる。また、演算量の比較的多い印字不可能な格子点色情報の推定結果を、複数のプリンタモデルで共有するよう構成したため、各プリンタモデルで重複した処理が行われず、処理が効率化される。
【００８２】
＜第２実施形態＞
以下、本発明に係る第２実施形態について説明する。上述した第１実施形態では、インク種、インク数に応じた複数のプリンタモデルにおける色予測を行う例を示したが、第２実施形態においては、インク種およびインク数が限定される場合における、さらに簡易な構成を示す。第２実施形態における色分解テーブル作成装置の構成は、上述した第１実施形態における図１とほぼ同様であるが、色予測部３０９を不要とし、色予測機能は色分解テーブル作成部３０７に含まれる。
【００８３】
図１３は、第２実施形態において色分解テーブルを枠ごとに作成する色分解テーブル作成部３０７の構成を示すブロック図である。なお、第２実施形態における色分解テーブル作成部３０７においても、色空間上の８点（Ｗ，Ｋ，Ｒ，Ｇ，Ｂ，Ｃ，Ｍ，Ｙ）の隣り合う点同士を結ぶ１８本の線と、ＷとＫを結ぶ線の計１９本の枠について、それぞれ色分解テーブルを作成する。
【００８４】
図１３において、１３０１はリファレンステーブル取得部であり、リファレンステーブル保持部３０８からリファレンステーブルを取得する。１３０２は枠情報抽出部であり、リファレンステーブルから枠情報を抽出し、後述する枠色分解部１３０３に対し、該当するリファレンステーブルの枠情報を渡す。１３０３は枠色分解部であり、上述した第１実施形態と同様に、枠ごとにリファレンステーブルのインク値を更新し、最適化することによって、枠の色分解値を決定する。なお、第２実施形態では枠色分解部１３０３として、枠に応じた１９個を有する。また、１３０４は補間処理部であり、それぞれの枠色分解部１３０３で最適化された色分解値に基づく補間により、色空間全体の色分解テーブルを作成する。
【００８５】
枠色分解部１３０３はそれぞれ、各枠の使用するインク種、インク数に応じたプリンタモデルの色予測部１３０５を有する。また、それぞれの色予測部１３０５は、共通のプライマリ分光反射率保持部１３０６、および格子点情報保持部１３０７にアクセス可能である。それぞれの色予測部１３０５は、上述した第１実施形態の色予測部３０９における各プリンタモデル７０３と同様に、プライマリ分光反射率保持部１３０６および格子点情報保持部１３０７を用いた色予測処理を行う。
【００８６】
以上説明した様に第２実施形態によれば、予めインク種、インク数が限定される場合に、プリンタモデル選択部を設けることなく、図１３に示す簡易な構成によって枠ごとに色予測を行うことができる。
【００８７】
また、図１３に示す構成によれば枠ごとに色予測処理が行えるため、例えば並列処理が可能なコンピュータにおいて色予測処理を含む色分解テーブル作成処理を実行する場合に、並列化が容易となる。
【００８８】
＜第３実施形態＞
以下、本発明に係る第３実施形態について説明する。第３実施形態における色分解テーブル作成装置の構成は、上述した第１実施形態における図１とほぼ同様である。第３実施形態では、クラスタ型スーパーコンピュータ等、ＣＰＵ３０１を複数有し、並列演算を可能とする演算装置において、色分解テーブル作成時の色予測処理を時並列に実行可能とするように、色予測部３０９を構成することを特徴とする。
【００８９】
図１４は、第３実施形態における色予測部３０９の構成を示すブロック図である。同図において、上述した第１実施形態の図７と同様の構成には同一番号を付し、説明を省略する。すなわち、プリンタモデル選択部７０２、プリンタモデル７０３、格子点情報保持部７０４、プライマリ分光反射率保持部７０５、Ｌ＊ａ＊ｂ＊出力部７０６、については、第１実施形態と同様の処理を行う。
【００９０】
以下、図１４における第３実施形態に特有の構成における処理を中心に説明する。
【００９１】
まず、インク値ファイル入力部１４０１において、予測するインク値ベクトルの集合が記録されたファイルが入力される。このファイルは、予測する複数のインク値ベクトルから構成されるものであれば、どのようなものであっても良い。また、インク値ベクトルの配列が格納されたポインタ等から、予測する複数のインク値ベクトルを取得するよう構成しても良い。
【００９２】
次に、インク値ファイル入力部１４０１から入力された複数のインク値ベクトルは、負荷制御部１４０２において、インク値ベクトルごとに適切なプリンタモデル７０３で色予測が行われるよう、適切なキューメモリ１４０３に振り分けられる。キューメモリ１４０３は、後続するプリンタモデル選択部７０２、および複数のプリンタモデル７０３の処理状況に応じ、入力されたインク値ベクトルを一時的に保存する。例えば、プリンタモデル０１〜０３が後続するキューメモリ１４０３では、プリンタモデル０１〜０３において何も処理が行われていなければ、後続するプリンタモデル選択部７０２にインク値ベクトルを入力する。一方、プリンタモデル０１〜０３のいずれかで処理が実行中であれば、該処理が終了するまで入力されたインク値ベクトルを保持する。
【００９３】
そしてプリンタモデル選択部７０２、プリンタモデル７０３では、上述した第１実施形態と同様に色予測処理を行い、プライマリ分光反射率を推定する。
【００９４】
各プリンタモデル７０３で推定された分光反射率は、Ｌ＊ａ＊ｂ＊出力部７０６においてＬ＊ａ＊ｂ＊値に変換される。ここで、Ｌ＊ａ＊ｂ＊出力部７０６から出力されるＬ＊ａ＊ｂ＊値は、各プリンタモデル７０３で処理が終了した順に出力されるため、インク値ファイル入力部１４０１にて入力されたインク値ファイルの順とは異なる。そのため、Ｌ＊ａ＊ｂ＊ファイル出力部１４０７では、Ｌ＊ａ＊ｂ＊出力部７０６の出力結果を一時的に蓄える。そして、入力されたインク値ファイル上の全てのインク値ベクトルに対する処理が終わった時点で、入力されたインク値ファイルの順に出力結果を並び替え、出力ファイルを作成する。
【００９５】
上述したように、１つのキューメモリ１４０３には、１つのプリンタモデル選択部７０２と、１つ以上のプリンタモデル７０３が接続されている。クラスタ型スーパーコンピュータなど、複数のＣＰＵを有する演算装置を適用する場合には、１つのキューメモリ１４０３に接続されるプリンタモデル選択部７０２およびプリンタモデル７０３の処理が、１つのＣＰＵにて行われるように構成することが望ましい。また、各ＣＰＵ（１つのキューメモリ１４０３に接続される複数のプリンタモデル７０３）で実行される処理の負荷は、それぞれで均等となるよう構成されることが望ましい。これは、演算量がプリンタモデル７０３のインク数に依存するため、それぞれのインク数に応じて、キューメモリ１４０３に接続するプリンタモデル７０３の配分を調整することによって実現される。
【００９６】
ここで、図９に示した１５種のプリンタモデルを、１４個のＣＰＵを用いて並列に処理する場合における調整例について、具体的に説明する。
【００９７】
まず、最も演算量が多い８色インクのプリンタモデル（０７番）を３つ作成し、それぞれが別のＣＰＵで演算されるよう、すなわち、作成された３つのプリンタモデルがそれぞれ別のキューメモリと接続されるように、構成する。
【００９８】
そして、次に演算量の多い７色インクのプリンタモデル（０８番）のプリンタモデルを２つ作成し、同様にそれぞれが別のＣＰＵで演算されるよう、別のキューメモリに接続する。
【００９９】
そして、６色インクのプリンタモデル（０１，０２，０５，０６，０９，１０番）については、各１つのプリンタモデルを作成し、各１つのＣＰＵで演算されるよう各１つのキューメモリに接続する。
【０１００】
そして、５色インクのプリンタモデルは、６色インクのプリンタモデルに比べて演算量が少ないため、４色インクのプリンタモデルと組み合わせて１つのキューメモリに接続される。すなわち、０３番と１３番、１４番と１５番のプリンタモデルを組合せ、それぞれが１つのＣＰＵで演算されるようにする。
【０１０１】
最後に、残った４色以下のプリンタモデルについては、全てが１つのＣＰＵで処理されるよう、１つのキューメモリに接続される。
【０１０２】
以上説明したように第３実施形態によれば、複数のＣＰＵにより色予測処理を字並列に実行する際に、プリンタモデルのインク色数に応じて演算を行うＣＰＵを割り振ることにより、各ＣＰＵでの演算量が均等化される。したがって、負荷の集中したＣＰＵでの処理が終わるのを待つといった待ち時間がなくなり、色予測処理をより高速に実行することが可能となる。
【０１０３】
＜変形例＞
上述した各実施形態においては、予め複数のプリンタモデルを準備することで色予測を行う例を示したが、本発明は必ずしもこの例に限るものではない。例えば、１色の色予測を行うごとに、そのインク値に応じた１つのプリンタモデルを新たに生成し、推定が終わった時点で消去するように構成しても良い。この場合は、予めプライマリ分光反射率保持部と格子点情報保持部を生成しておき、途中で生成・消去されるプリンタモデルに関わらず、各保持部を共通化することで、処理をより効率的に実行することができる。
【０１０４】
また、各実施形態においては分光反射率を用いて色の推定を行う例を示したが、本発明はこの例に限らず、たとえばＸＹＺ表色系などを用いて色の推定を行っても良い。この場合、次元数がＸＹＺの３次元となるので、各実施形態で挙げた４００〜７００［ｎｍ］で１０［ｎｍ］間隔の３１次元分光反射率データよりも演算量が削減されるため、より高速な色予測処理が期待できる。
【０１０５】
また、各実施形態で挙げたプリンタのインク数、画像データのビット数、インク値、格子点情報などはあくまでも一例に過ぎず、これに限らないことは言うまでも無い。また、本発明の色予測は色分解テーブルを作成することのみを目的としない。
【０１０６】
＜他の実施形態＞
以上、実施形態例を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等）から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０７】
尚本発明は、前述した実施形態の機能を実現するソフトウェアプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、コンピュータ読取可能であり、実施形態において図に示したフローチャートに対応したプログラムである。
【０１０８】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１０９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【０１１０】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM，DVD-R)などである。
【０１１１】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【０１１２】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【０１１３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【０１１５】
【図１】本発明に係る一実施形態におけるプリンタの印刷処理の流れを示す図である。
【図２】本実施形態における色分解テーブルの一例を示す図である。
【図３】本実施形態における色分解テーブル作成装置の構成を示すブロック図である。
【図４】本実施形態における色分解テーブル作成処理を示すフローチャートである。
【図５】本実施形態における色分解枠を説明するための図である。
【図６】本実施形態における色分解枠のインク値を説明するための図である。
【図７】本実施形態における色予測部の構成を示すブロック図である。
【図８】本実施形態における色予測処理を示すフローチャートである。
【図９】本実施形態における各プリンタモデルのインク数とインク種を説明する図である。
【図１０】本実施形態における格子点情報保持部に保持されるデータ例を示す図である。
【図１１】本実施形態におけるプライマリ分光反射率保持部に保持されるデータ例を示す図である。
【図１２】本実施形態におけるカラーパッチ作成処理を示すフローチャートである。
【図１３】第２実施形態における色分解テーブル作成部の構成を示すブロック図である。
【図１４】第３実施形態における色予測部の構成を示すブロック図である。
【図１】
0005264153.tif 000002
【図２】
0005264153.tif 000003
【図３】
0005264153.tif 000004
【図４】
0005264153.tif 000005
【図５】
0005264153.tif 000006
【図６】
0005264153.tif 000007
【図７】
0005264153.tif 000008
【図８】
0005264153.tif 000009
【図９】
0005264153.tif 000010
【図１０】
0005264153.tif 000011
【図１１】
0005264153.tif 000012
【図１２】
0005264153.tif 000013
【図１３】
0005264153.tif 000014
【図１４】
0005264153.tif 000015