印刷装置の製造方法、プロファイル作成方法、印刷方法
【課題】階調性指数を含めた他の指標値をバランス良く向上させたインク量が色空間での値に割り当てられたプロファイルを用いて印刷を行う印刷装置の製造方法、上記プロファイルの作成方法、及び印刷方法を提供する。
【解決手段】入力データの各要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出し、算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を格子点に対応するインク量として取得し、取得されたインク量をもとに入力データが属する色空間での値とインク量とを対応づけたプロファイルを作成する。
【解決手段】入力データの各要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出し、算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を格子点に対応するインク量として取得し、取得されたインク量をもとに入力データが属する色空間での値とインク量とを対応づけたプロファイルを作成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力データとインク量との関係を記録するプロファイルに関し、特に、階調性を考慮したインク量を記録するプロファイルに関する。
【背景技術】
【0002】
従来、印刷装置におけるカラーマネージメントの一要素として、入力データとこの入力データに割り当てられるインク量との関係を規定したプロファイルが知られている。例えば、入力データが属する色空間としてRGBが選択された場合に、この色空間の各値を座標値とみたてた入力格子点に対して、種々の条件を満たす最適なインク量を割り当てることで、プロファイルを作成する(例えば、特許文献1−3参照)。
【0003】
上記した、最適なインク量の条件の1つとして、階調性指数が存在する。階調性指数は、入力格子点に対応付けられたインク量における、各格子点間での階調変化幅の均一性を示す値である。そのため、この階調性が高くなるほど(値が低くなるほど)、格子点間で、割り当てられたインク量が均一な階調変化を実現することが可能となる(例えば、特許文献4参照。)。そのため、インク量に対してこの階調性指数を含めた目的関数を算出し、同目的関数が小さくなるようインク量を変化させることで、最適インク量の探索を行っている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−45349号公報
【特許文献2】特開2007−282194号公報
【特許文献3】特開2009−164835号公報
【特許文献4】特開2006−157757号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の階調性指数では、目的関数に含まれる他の指数に対して、互いの指数が干渉を起こす場合があった。例えば、階調性指数と、ガマット指数とが干渉を起こし、格子点に対して最適なインク量を算出できない場合があった。
【0006】
本発明は、上記課題にかんがみてなされたもので、階調性指数を含めた複数の指標値をバランス良く向上させたインク量が入力データに割り当てられたプロファイルを用いて印刷を行う印刷装置の製造方法、上記プロファイルの作成方法、及び印刷方法の提供を目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明では、複数のインク量を表すインク量データと入力データとの対応関係を規定するプロファイルを用いて印刷を行う印刷装置の製造方法であって、所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、前記算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、前記作成されたプロファイルを記録手段に記録するプロファイル記録工程と、を有する構成としてある。
【0008】
本発明の詳細な構成及び効果については、明細書中で開示を行う。
【図面の簡単な説明】
【0009】
【図1】印刷システム100の構成を示すブロック図である。
【図2】色補正なしLUT作成時の全体処理手順を示すフロー図である。
【図3】FMコンバーターとインバースモデル初期LUTの説明図である。
【図4】スムージング処理における入力格子点とL*a*b*色空間の座標値との対応関係を示す図である。
【図5】スムージング処理(図2のステップS600)の処理手順の一例を示すフローチャートである。
【図6】CIELAB空間上で色域境界に形成される稜線上の格子点に係るガマット指数Gaを説明する図である。
【図7】本実施形態に係る階調性指数SIを説明するための図である。
【図8】図5のステップS660における処理を詳細に説明するフローチャートである。
【図9】重み(wl、wa、wb)の算出を説明する図である。
【図10】色補正なしLUTを用いた色補正LUTの作成方法を示す説明図である。
【図11】本プロファイル作成方法により取得された色補正LUT610を備える印刷装置(印刷システム)のブロック図である。
【図12】印刷装置を製造する工程を説明するフローチャートである。
【発明を実施するための形態】
【0010】
以下、下記の順序に従って本発明の実施形態を説明する。
1.プロファイル作成方法:
2.印刷装置の製造方法:
3.印刷方法:
4.その他の実施形態:
【0011】
1.プロファイル作成方法:
図1は、印刷システム100の構成を示すブロック図である。本印刷システム100は、コンピューター10と、プリンター20と、ディスプレイ30と、操作部40を備えている。なお、本実施形態では、印刷装置をコンピューター10とプリンター20等により構成されたシステムとして説明するが、印刷装置を実現するものはこれに限定されない。
【0012】
コンピューター10は、記憶部11、CPU12、RAM13、USBインターフェイス(I/F)21、ビデオI/F31、入力I/F41などを備えている。そして、コンピューター10が備えるCPU12が、記憶部11に記憶されたプログラムを読み込み、プログラムをRAM13に展開しながらプログラムに沿った演算を実行することにより、LUT作成モジュールなどの各機能を実現する。LUT作成モジュールの各機能については後述する。
【0013】
記憶部11は、例えばハードディスクドライブ(HDD)であり、プログラムや色変換プロファイル(例えば、後述するインバースモデル初期LUT410、色補正なしLUT510、色補正LUT610)が記憶される。なお、「LUT」は、ルックアップテーブルの略語である。色補正なしLUT510は、所定の入力色空間(例えばRGB色空間)の階調値をプリンター20で使用される複数種類のインクの組み合わせ(以下、インク量Ijともいう)に変換するための色変換テーブルである。色補正なしLUT510の入力色空間であるRGB色空間は、いわゆる機器依存色空間では無く、特定のデバイスとは無関係に設定された仮想の色空間(あるいは抽象的な色空間)である。この色補正なしLUT510は、例えば色補正LUT610を作成する際に使用される。色補正LUT610は、標準的な機器依存の色空間(例えばsRGB色空間やJAPAN COLOR 2001色空間)を、特定のプリンターのインク量Ijに変換するためのルックアップテーブルである。インバースモデル初期LUT410については後述する。
【0014】
コンピューター10は、プログラムに従った演算を実行し、プリンター20をUSBI/F21等を介して制御することにより、印刷制御装置としても機能する。具体的にはコンピューター10は、印刷対象の画像データを取得し、当該画像データを色変換プロファイル(色補正なしLUT510など)によって画素単位で色変換し、色変換後の画像データにハーフトーン処理やマイクロウェーブ処理を行って印刷データを生成する。そして、当該印刷データをUSBI/F21等を介してプリンター20に出力する。これによりプリンター20は、当該印刷データに基づく印刷を実行する。なお、コンピューター10とプリンター20が赤外線や無線LAN等の他のインターフェイスによって接続されていてもよい。
また、コンピューター10は、ビデオI/F31を介してディスプレイ30と接続されており、入力I/F41を介してキーボードやマウス等の操作部40と接続されている。
【0015】
また、コンピューター10のLUT作成モジュールは、初期値設定部14と、スムージング処理部15と、テーブル作成部16と、フォワードモデルコンバーター18とを有している。これらの各部の機能については後述する。
【0016】
図2は、色補正なしLUT作成時の全体処理手順を示すフロー図である。
ステップS100では、インクデータの設定が行われる。ここで、インクデータとは、プリンター20で使用されるインクの色や種類、デューティ制限値などである。本実施形態ではシアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)、の4種類のインクを利用可能なカラープリンター(プリンター20)を想定している。無論、プリンター20が使用するインクの種類は4種類に限定されず、これに淡シアン(Lc)、淡マゼンダ(Lm)、淡ブラック(LK)を加えるものであってもよい。
【0017】
また、デューティ制限値とは、媒体(例えば紙)の単位面積の中に、打ち込むことのできるインク量Ijを示すものである。このデューティ制限値は、媒体の種類や形成する画像の解像度に依存する。このため、デューティ制限値は、媒体(例えば紙)の種類毎および印刷解像度毎に定められる。本実施形態では、写真用紙に1440×1440dpiの解像度で印刷を行うこととする。また、デューティ制限値として、インク単色によるデューティ制限値や、複数色の合計によるデューティ制限値(合計デューティ制限値)がある。例えば、ある紙のある解像度におけるデューティ制限値として、単色では80%、各色の合計では120%のように定められる。
【0018】
ステップS200では、カラーパッチの印刷が行われる。ここではデューティ制限値や色変換テーブルを用いずに、簡単なインク量Ijの組み合わせによりカラーパッチの印刷を行なう。なお、本明細書において「カラーパッチ」という用語は、有彩色のパッチに限らず、無彩色のパッチも含む広い意味で使用される。
【0019】
ステップS300では、例えば、不図示の測色器やスキャナなどを用いて、カラーパッチの測色が行われる。この測色結果は、コンピューター10に取り込まれ、コンピューター10においてインク量Ijと測色値(L*a*b*色空間の座標値)とを対応させた仮想サンプルが形成される。
【0020】
そして、ステップS400では、カラーパッチの測色結果(仮想サンプル)に基づいてフォワードモデル(以下FMともいう)の作成が行われる。なお、「フォワードモデル」とは、インク量Ijを機器独立色空間の色彩値(測色値)に変換する変換モデルを意味する。逆に、「インバースモデル」とは、機器独立色空間の色彩値をインク量Ijに変換する変換モデルを意味する。本実施形態では、機器独立色空間としてCIE-L*a*b*色空間を使用する。なお、以下では、CIE-L*a*b*色空間の色彩値を、単に「L*a*b*値」又は「Lab値」とも呼ぶ。
【0021】
図3は、FMコンバーターとインバースモデル初期LUTの説明図である。図3に示すように、FMコンバーター18の前段を構成する分光プリンティングコンバーターRCは、複数種類のインクのインク量Ijを、そのインク量Ijに応じて印刷されるカラーパッチの分光反射率R(λ)に変換する。図3では、4色(C,M、Y、K)のインクを使用するプリンター20を想定しており、分光プリンティングモデルコンバーターRCもこの4種類のインクのインク量Ijを入力としている。但し、プリンター20で使用する複数種類のインクとしては、任意のインク量Ijを利用することが可能である。色算出部CCは、分光反射率R(λ)からL*a*b*色空間の色彩値を算出する。この色彩値の算出には、予め選択された光源(例えば標準の光D50)がカラーパッチの観察条件として使用される。なお、分光プリンティングモデルコンバーターRCを作成する方法としては、例えば特表2007−511175号公報に記載された方法を採用することが可能である。
【0022】
インバースモデル初期LUT410は、L*a*b*値を入力とし、インク量Ijを出力とするルックアップテーブルである。この初期LUT410は、例えば、L*a*b*色空間を複数の小セルに区分し、小セル毎に最適なインク量Ijを選択して登録したものである。この選択は、例えば、そのインク量Ijで印刷されるカラーパッチの画質を考慮して行われる。一般に、或る1つのL*a*b*値を再現するインク量Ijの組み合わせは多数存在する。そこで、初期LUT410では、ほぼ同じL*a*b*値を再現する多数のインク量Ijの組み合わせの中から、画質等の所望の観点から最適なインク量Ijを選択したものが登録されている。この初期LUT410の入力値であるL*a*b*値は各小セルの代表値である。一方、出力値であるインク量Ijはそのセル内のいずれかのL*a*b*値を再現するものである。従って、この初期LUT410では、入力値であるL*a*b*と出力値であるインク量Ijとが厳密に対応したものとなっておらず、出力値のインク量IjをFMコンバーター18でL*a*b*値に変換すると、初期LUT410の入力値とは多少異なる値が得られる。但し、初期LUT410として、入力値と出力値とが完全に対応するものを利用してもよい。また、初期LUT410を用いずに色補正なしLUT510を作成することも可能である。なお、小セル毎に最適なインク量Ijを選択して初期LUT410を作成する方法としては、例えば上記特表2007−511175号公報に記載された方法を採用することが可能である。
【0023】
ステップS500で、色補正なしLUT510作成のための初期入力値がユーザによって設定される。色補正なしLUT510の入力値としては、RGBの各値として予め定められたほぼ等間隔の値が設定される。1組のRGB値はRGB色空間内の点を表していると考えられるので、1組のRGB値を「入力格子点」とも呼ぶ。
【0024】
また、ステップS500では、複数の入力格子点のうちから予め選択された幾つかの少数の入力格子点に対するインク量Ijの初期値がユーザによって入力される。この初期入力値が設定される入力格子点としては、RGB色空間における3次元色立体の頂点に相当する入力格子点を少なくとも選択することが好ましい。この3次元色立体の頂点では、RGBの各値がその定義範囲の最小値又は最大値を取る。具体的には、RGBの各値を8ビットで表現した場合には、(R,G,B)=(0,0,0)、(0,0,255)、(0,255,0)、(255,0,0)、(0,255,255)、(255,0,255)、(255,255,0)、(255,255,255)である8つの入力格子点に関してインク量Ijの初期入力値が設定される。なお、(R,G,B)=(255,255,255)の入力格子点に対するインク量Ijは、すべて0に設定される。他の入力格子点に対するインク量Ijの初期入力値は任意であり、例えば0に設定される。
【0025】
図2のステップS600では、スムージング処理部15(図1)が、ステップS500で設定された初期入力値に基づいてスムージング処理(平滑化処理)を実行する。
図4は、スムージング処理における入力格子点とL*a*b*色空間の座標値との対応関係を示す図である。なお、図4Aは、RGB色空間上での入力格子点を示す。また、図4Bにはスムージング処理前の状態における複数の色点の分布が2重丸と白丸とで示されている。これらの座標値は、L*a*b*色空間における3次元色立体CSを構成している。なお、各座標値のL*a*b*値は、色補正なしLUT510の複数の入力格子点におけるインク量Ijを、FMコンバーター18を用いてL*a*b*値に変換した値である。また、他の入力格子点に対するインク量Ijの初期値は、初期入力値から初期値設定部14(図1参照)によって設定される。
【0026】
図4Cには、スムージング処理後の色点の分布が示されている。スムージング処理は、L*a*b*色空間における複数の座標値を移動させて、それらの座標値の分布を等間隔に近い平滑なものにする処理である。スムージング処理では、さらに、移動後の各座標値のL*a*b*値を再現するために最適なインク量Ijも決定される。このとき、入力格子点に割り当てられる最適なインク量Ijを目的関数Eをもとに算出する。
【0027】
L*a*b*色空間の3次元色立体CS(図4B、図4C)の上記各頂点は、色補正なしLUT510の入力色空間(RGB色空間)の3次元色立体(図4A)の頂点と一対一に対応している。また、各頂点を結ぶ辺(稜線)も、両方の色立体で互いに対応しているものと考えることができる。スムージング処理前(図4B)のL*a*b*色空間の各座標値は、色補正なしLUT510の入力格子点にそれぞれ対応付けられており、従って、スムージング処理後(図4C)のL*a*b*色空間の各色点も色補正なしLUT510の入力格子点にそれぞれ対応付けられる。なお、色補正なしLUT510の入力格子点はスムージング処理によって変化しない。
【0028】
色補正なしLUT510を作成する際に、L*a*b*空間においてスムージング処理を行う理由は以下の通りである。色補正なしLUT510では、なるべく大きな色域を再現できるように出力色空間のインク量Ijを設定したいという要望がある。特定のインクセットで再現可能な色域は、インクデューティ制限値(一定面積に吐出可能なインク量Ijの制限値)などの所定の制限条件を考慮して決定される。一方、上述したフォワードモデルFMは、これらの制限条件が考慮されておらず、再現可能な色域とは無関係に作成されている。そこで、スムージング処理の際にインクデューティ制限等の制限条件を考慮してL*a*b*空間内の座標値の取り得る範囲を決定すれば、特定のインクセットで再現可能な色域を決定することが可能となる。
【0029】
本実施形態では、最適インク量Ijを探索する条件となる以下の(1)式で表される目的関数Eを用いて、スムージング処理を行なう。
【数1】
ここで、Ijは目的関数Eを最小とするインク量Ij、GaI(Ij)はインク量Ijにより再現される色域の拡張性を示すガマット指数、GI(Ij)はインク量Ijで印刷されるカラーパッチの粒状性指数(Graininess Index)、CII(Ij)は、インク量Ijで印刷されるカラーパッチの色非恒常性指数(Color Inconstancy Index)、TI(Ij)は、トータルインク量(=ΣIj)、SI(Ij)はインク量Ijで印刷されるカラーパッチの階調性指数、α、β、γ、σ、εは定数である。
【0030】
上記(1)式は、インク量Ijの中で、ガマット指数GaI、粒状性指数GI、階調性指数SI、色非恒常性指標SII、トータルインク量TIの和がより小さいインク量Ijが最適なインク量Ijとして決定されることを意味している。この最適なインク量Ijの探索は、例えば準ニュートン法などの最適化手法を用いて実行される。また、インク量Ijの探索は、入力格子点の初期インク値から開始される。従って、探索で得られるインク量Ijは、この初期インク量Ijを修正した値となる。
【0031】
なお、一般に、最適化処理によるインク量Ijの探索は以下の条件の下で実行される。
(条件i)目的関数Eを最小とする
(条件ii)使用可能として予め指定されたインクのみを使用する
【0032】
条件iの目的関数Eを与える式としては、上記(1)式以外の種々の式を利用可能である。また、条件iiにおける使用可能なインクとしては、プリンター20で利用可能な複数種類のインクのうちの一部のインクのみが指定される場合と、全種類のインクが指定される場合とがある。使用可能なインクの種類は、スムージング処理の対象となる色点毎にユーザによって予め設定されることが好ましい。これらの最適化条件の具体例については更に後述する。
【0033】
図5は、スムージング処理(図2のステップS600)の処理手順の一例を示すフローチャートである。ステップS610では、初期値設定部14(図1)が、スムージング処理の対象とする複数の座標値を初期設定する。具体的には、まず、各格子点に対してインク量Ijの初期入力値から、スムージング処理の対象となる各座標値の仮インク量Ijが決定される。例えば、次の式(2)、式(3)に従って、各入力格子点に対する仮インク量I(R,G,B,)が決定される。
【数2】
【数3】
ここで、Ij(R,G,B)は、入力格子点のRGB値に対するインクセット全体のインク量(本実施形態では、4種類。)を示している。RGB値が0又は255を取る入力格子点に対するインク量は、ユーザによって予め入力された値である。上記式(2)式(3)によれば、任意のRGB値における仮インク量Ij(R,G,B)を求めることが可能である。
【0034】
次に、FMコンバーター18を用いて、仮インク量Ijに対応するL*a*b*値を求める。この演算は、以下の式(4)で表すことができる。
【数4】
ここで、L(R,G,B)は変換後の色彩値(L*、a*、b*)を示しており、関数fFMはFMコンバーター18による変換を意味している。なお、この式からも理解できるように、この変換後の色彩値(L*、a*、b*)は、色補正なしLUT510の入力値であるRGB値に対応付けられている。そして、得られたL*a*b*値を、インバースモデル初期LUT410(図3)を用いてインク量Ijに再度変換する。
【0035】
上述のステップS610の処理の結果、スムージング処理の対象となる座標値について、以下の初期値が決定される。
(i)色補正なしLUTの入力格子点の値:(R,G,B)
(ii)各入力格子点に対応するL*a*b*色空間の座標値の初期座標値:L(R,G,B)
(iii)各入力格子点に対応する初期インク量Ij:I(R,G,B)
以上の説明から理解できるように、初期値設定部14は、代表的な入力格子点に関する入力初期値から他の入力格子点に関する初期値を設定する機能を有している。なお、初期値設定部14は、スムージング処理部15に含まれるものとしてもよい。
【0036】
ステップS620では、スムージング処理部15は、対象格子点に割り当てられたインク量Ijに対してガマット指数GaIを取得する。本実施形態では、ガマット指数GaIは、所定の色域中心点と、スムージング処理対象格子点に隣接する格子点の色彩値とを基準として算出される。中心点は、例えばL*a*b*色空間で(50,0,0)である。
なお、ガマット指数GaIは入力格子点のRGB値で外郭に位置する格子点でのみ値をもち、それ以外の格子点においてはその値を0とする。なぜなら、色域内郭においてガマットの拡張を考慮することには有意性がないからである。
スムージング対象格子点が色域の内外郭のどちらに位置するかを判断するためには、例えば以下の手法が挙げられる。
(i)スムージング対象格子点の入力値(R,G,B)について、それぞれ最小値または最大値(例えば最小値=0、最大値=255)であるか否かを判定する
(ii)前記入力値(R,G,B)について、最小値または最大値である値が1つも存在しなければ、内郭に位置すると判断する。少なくとも1つ以上存在すれば、外郭に位置すると判断する。
外郭に位置すると判断された格子点におけるガマット指数GaIは、以下の式(5)をもとに取得される。
【数5】
ここで、ベクトルAは、対象格子点に割り当てられたインク量Ijの色彩値の各値(本っ実施形態では、L*、a*、b*)を要素とするベクトル、ベクトルBは、対象格子点に対して指定される、色域を拡張する方向を示すベクトル、θは、ベクトルAとベクトルBの成す角である。
【0037】
図6は、CIELAB空間上で色域境界に形成される稜線上の格子点に係るガマット指数Gaを説明する図である。ここで、ベクトルBは、入力格子点の色彩値上の位置(本実施例ではL*a*b*)によってその向きが予め設定された方向ベクトルであり、ベクトルBは大きさ|B|=1となる単位方向ベクトルであるとする。本例では、ベクトルBは、スムージング処理対象格子点に隣接する格子点を色空間上で結んだ線分の中点と、前記所定の色域中心点とを結んだベクトルである。
インク量Ijを変化させて、ベクトルBが示す方向へ色域を拡張させるためには(例えば、図6において(0、0、0)からa*方向外向きに移動させる場合。)、
(条件1)ベクトルAの大きさ|A|が大きくなる
(条件2)ベクトルAとベクトルBの成す角θが小さくなる
の少なくともいずれかを満たせばよいといえる。
そのため、目的関数Eでは、インク量Ijを変化させて、上記式(5)に示すガマット指数GaI(Ij)が小さくなるとき(内積A・Bの値が正の方向に大きくなるとき)のインク量Ijが、色域の拡張に最適なインク量Ijであるとして探索が行われる。
【0038】
ステップS630では、スムージング処理部15は、インク量Ijに対して粒状性指数GIを取得する。本実施形態では、粒状性指数GIは、例えば以下の式(6)で与えられる。
【数6】
ここで、aLは明度補正係数、WS(u)はカラーパッチの印刷に利用されるハーフトーンデータが示す画像のウイナースペクトラム、VTF(u)は視覚の空間周波数特性、uは空間周波数である。粒状性指数GIの計算方法としては、例えば、特表2007−511161に記載されている。
【0039】
ステップS640では、スムージング処理部15は、インク量Ijに対して色非恒常性指数CIIを取得する。本実施形態では、色非恒常性指標数CIIは、以下の式(7)により取得される。
【数7】
ここで、ΔL*は2つの異なる観察条件下(異なる光源下)におけるカラーパッチの明度差、ΔC*ha彩度差、ΔH*abは色相差を示す。色非恒常性指数CIIの計算時には、2つの異なる観察光源下でのL*a*b*値は、色順応変換(CAT)を用いて標準観察条件(例えば、標準のD65光源下)に変換される。CIIについては、Bill Meyer and Saltzman's Principles of Color Technology, 3rd edition, John Wiley & Sons, Inc, p.129,pp.213-215を参照。
【0040】
ステップS650では、スムージング処理部15は、インク量Ijに対してトータルインク量TIを取得する。トータルインク量TIは、インク量Ijを構成するインクの量として取得される。即ち、本指数により、インク量Ijが少ないほど最適なインク量と見なすことができる。
【0041】
ステップS660では、スムージング処理部15は、対象格子点に割り当てられたインク量Ijに対して階調性指数SIを取得する。本実施形態では、階調性指数SIは、以下の式(8)により算出される。
【数8】
ここで、P0は、階調性指数SIが算出される対象格子点を示す。また、Pk(k:1〜n)は、対象格子点P0と隣り合う格子点を示す。そして、L*p、a*p、b*pは、格子点Pに割り当てられたインク量Ijの色彩値の要素を示す。
そのため、ステップS660の処理により本発明に係る指数算出工程を実現する。
【0042】
図7は、本実施形態に係る階調性指数SIを説明するための図である。図7に示される格子点P0、P1、P2は、CIELAB空間上で色域のGC稜線上に形成される格子点である。また、図7Aは、スムージング処理前の各格子点の位置関係を示し、図7Bは、スムージング処理後の各格子点の位置関係を示す。以下、格子点Pkに割り当てられたインク量Ijにおける色彩値(Lpk、apk、bpk)を単に「格子点Pkの色彩値」とも記載する。
【0043】
図7において、最適化を行う格子点(色補正なしLUT510の入力格子点)P0の色彩値(L*p0、a*p0、b*p0)の階調性が良好となるためには、格子点間での色彩値の差が均等な値を取る必要がある。例えば、図7Aに示すように、格子点P0の測色値が格子点P1の測色値に近い場合、格子点P0と格子点P1の色彩値の差分と、格子点P0と格子点P2の色彩値の差分とは近い値を取らないため、階調性は良好ではない。そのため、図7Bに示すように、格子点間での差分が近い値を取るよう対象格子点P0に割り当てるインク量Ijを変化させる必要がある。また、階調性指数SIは、上記したガマット指標Gaとの関係を考慮する必要がある。
【0044】
対象格子点P0に対して格子点P1、P2との階調性を良好にする(即ち、階調性指標SIを小さくする)場合、対象格子点P0の色彩値(L*p0、a*p0、b*p0)は、格子点P1、P2の色彩値(L*p1、a*p1、b*p1)(L*p2、a*p2、b*p2)を結んだベクトルV1、2の中点に対して、色彩値(L*p0、a*p0、b*p0)が近づくようインク量Ijが変化する(図7B)。一方、対象格子点P0に対して色域を拡張させるよう作用させる(即ち、ガマット指標数Gaを小さくする)場合、対象格子点P0の色彩値(L*p0、a*p0、b*p0)が、ベクトルV1、2に対して遠ざかるようインク量Ijが変化する。そのため、階調性指数SIとガマット指数Gaとは結果的に相反するよう作用する。
【0045】
そのため、本実施形態では、色彩値(L*、a*、b*)の要素毎に格子点Pkとの間で差分を算出し、これを総和することで階調性指数SIを算出している。ここで、格子点Pkの数は任意である。例えば、対象格子点P0が色域の稜線上の場合は、格子点Pkとして、同一稜線上で隣り合う2点(k=1,2)とすればよい。また、対象格子点P0が色域の外郭平面上の場合は、格子点Pkとして、同一平面上で隣り合う4点(k=1〜4)とすればよい。そして、対象格子点P0が色域の内部に存在する場合は、格子点PkとしてR、G、B方向でそれぞれ隣り合う2点毎(計6点:k=1〜6)とすればよい。
【0046】
さらに、本実施形態では、色彩値の各要素の差分に対して階調性の維持の優先順序を設定する重み(wl、wa、wb)を付与することで、階調性の維持と色域拡張性との両立を目指している。即ち、階調性指数SIの各要素に付与された重み(wl、wa、wb)の値により、目的関数Eを用いた最適インク量Ijの探索において、格子点の色彩値の各要素に対するガマット指標数Gaの影響度合いが変化する。
【0047】
図8は、図5のステップS660における処理を詳細に説明するフローチャートである。なお、図8に示す処理は、稜線上に位置する格子点に対して階調性指数SIが算出される処理を示す。そのため、格子点Pkは、稜線上で隣り合う2点(P1、P2)が選択される。
【0048】
ステップS661では、スムージング処理部15は、対象格子点P0と格子点P1、P2に割り当てられたインク量Ijの色彩値(L*p0、a*p0、b*p0)、(L*p1、a*p1、b*p1)、(L*p2、a*p2、b*p2)を取得する。この処理は、例えばFMコンバーター18を用いて行われる。
【0049】
ステップS662では、スムージング処理部15は、階調性指数SIの各要素(L*、a*、b*それぞれの差分)に付与する重み(wl、wa、wb)を設定する。本実施形態では、重み(wl、wa、wb)は、下記式(9)により算出される。
【数9】
【0050】
ここで、L’、a’、b’は格子点P1、P2の色彩値を結んだベクトルV1、2を0〜1.0の範囲で正規化した値であり、以下の式(10)により算出される。
【数10】
ここで、maxは色彩値の要素の内、絶対値が最も大きな値、minは色彩値の要素の内、絶対値が最も小さな値、midは色彩値の要素の内、中間の値、sは、色彩値の要素の内、中間の値を正規化した値、を示す。そのため、ベクトルV1、2の要素の内、最大のものは1.0に、中間のものはsに、最小のものは0.0に正規化される。また、式(9)中のcoefは、0〜1.0の範囲で定められた所定の定数である。coefは、予め好適な値が実験的に設定される。
前記式(9)にあるように、この定数を考慮することで、重み(wl、wa、wb)を、最大値1.0、最小値1.0−coefの範囲で算出する。なぜなら、coefを考慮しない場合、重み(wl、wa、wb)の最小値は0.0となってしまう。これは、目的関数Eにおいてその方向の階調性は全く考慮されないことになってしまい、結果的に好適なインク量が得られない。これを回避するため、定数coefを設定し重み(wl、wa、wb)は少なくとも1.0−coefの値を持つよう算出する。設定される値は、例えば0.5である。
【0051】
図9は、重み(wl、wa、wb)の算出を説明する図である。本実施形態では、上記のように、階調性指数SIの各要素に付与される重み(wl、wa、wb)は、格子点P1、P2の色彩値を結んだベクトルV1、2の要素に基づいて設定される。ここで、ベクトルV1、2の各要素は、格子点P1、P2間でのL*、a*、b*各要素の階調幅を示すと考えることができる。例えば、図9では、ベクトルV1、2の要素V1、2L*が、要素V1、2a*と比べて大きくなり、L*方向での階調幅がa*方向での階調幅より広いと考えることができる。
【0052】
格子点P1、P2を結ぶベクトルにおける要素間での階調幅の大小がL*>b*>a*の関係を有する場合、階調性指数SIの各要素の成分(以下、便宜的に、階調性指数SIの各成分をSIL*、SIa*、SIb*と記載する。)は、要素L*において最も大きくなり、要素a*において最も小さくなる。何故なら、階調性指数SIは、各要素において格子点P1(P2)と対象格子点P0との差分を算出するため、格子点P1、P2間の階調幅が大きい要素ほど、格子点P1(P2)と対象格子点P0との差分が大きくなるためである。そのため、ベクトルV1、2の要素をもとに重み(wl、wa、wb)を設定することで、ベクトルV1、2の要素が最も大きい色彩値の要素に対して階調性の維持が優先されるよう作用し、ベクトルV1、2の要素が最も小さい色彩値の要素に対しては階調性の維持が優先されないよう作用する。図9では、階調性指数SIの要素における優先順序は、SIL*>SIb*>SIa*となる。
【0053】
一方で、色域の拡張においては、重み(wl、wa、wb)は、色域拡張を抑制する制限条件として作用するため、重みの値が低い色彩値の要素に対しては、目的関数Eにおいてガマット指数GaIが、階調性指数SIよりも優先的に作用する。即ち、図9においては、対象格子点P0に対して、重みwlが大きいL*方向(SIL*成分)については、目的関数Eにおいて、階調性指数SIがガマット指数GaIよりも優先的に作用し、結果的に色域の拡張が抑制し階調性を維持するよう作用する。重みwaが小さいa*方向(SIa*成分)については、目的関数Eにおいて、階調性指数SIよりもガマット指数GaIが優先的に作用し、結果的に色域の拡張が促進されるよう作用する。以上により、目的関数Eを用いたインク量Ijの探索において、階調性指標SIにおける作用と、ガマット指数GaIにおける作用との間でトレードオフが緩和される。
【0054】
ステップS663では、対象格子点P0の色彩値(L*p0、a*p0、b*p0)、及びステップS662で算出された重み(wl、wa、wb)をもとに上記式(8)に基づいてインク量Ijにおける階調性指数SIが算出される。
【0055】
図5のステップS670では、スムージング処理部15は、各指数(Ga、GI、CII、TI、SI)をそれぞれの影響度合いにより設定された重み(α、β、γ、σ、ε)を付与することで、目的関数Eを算出する。
【0056】
ステップS680では、目的関数Eが閾値Sよりも大きい場合には、ステップS620に戻りステップS620〜S670のスムージング処理が継続される。一方、目的関数Eが閾値S以下の場合には、色点の分布が十分に平滑になっているので、スムージング処理が終了する。なお、閾値Sは、予め適切な値が実験的に決定される。
【0057】
このように、本実施形態のスムージング処理(平滑化処理)では、各指数Ga、GI、CII、TI、SIにより構成された目的関数Eが小さくなるときのインク量Ijが最適なインク量Ijとして設定される。また、階調性指数SIとガマット指数Gaとをバランスよく考慮したインク量Ijが取得される。
【0058】
図2のステップS700では、スムージング処理の結果を用いて、テーブル作成部16が色補正なしLUT510を作成する。すなわち、テーブル作成部16は、各入力格子点に対応付けられたL*a*b*色空間の色点を再現するための最適なインク量Ijを色補正なしLUT510の出力値として登録する。なお、スムージング処理では、その計算負荷を軽減するために、色補正なしLUT510の入力格子点の一部のみに対応する色点のみを処理対象として選択することも可能である。例えば、色補正なしLUT510の入力格子点におけるRGB値の間隔が16である場合に、スムージング処理の対象となる入力格子点におけるRGB値の間隔を32に設定すれば、スムージング処理の負荷を半減することができる。この場合には、テーブル作成部16は、スムージング処理結果を補間することによって色補正なしLUT510のすべての入力格子点に対するインク量Ijを決定して登録する。そのため、ステップS600、700の処理により本発明に係るインク量取得工程が実現される。
【0059】
そして、図2のステップS800では、色補正なしLUT510の評価が行われる。評価がNGであれば(S800でNO)、再度ステップS100に戻る。一方、評価がOKであれば、色補正なしLUT510を記憶部11に登録する。
なお、LUT作成モジュールは、色補正なしLUT510を用いて、色補正LUT610の作成も行う。
【0060】
図10は、色補正なしLUTを用いた色補正LUTの作成方法を示す説明図である。上記のように色補正LUT610は、標準的な機器依存の色空間を、特定のプリンターのインク量Ijに変換するためのルックアップテーブルであり、本実施形態では、機器依存の色空間としてsRGB色空間を採用する。以下、図10に示すように、色補正なしLUTが規定するRGB値とインク量Ijの関係をもとに、色補正LUT610の作成が行われる。そのため、本処理により本発明に係るプロファイル作成工程が実現される。
【0061】
まず、色補正なしLUT510により、RGB値がインク量Ijに変換される。変換後のインク量Ijは、FMコンバーター18によってL*a*b*値に変換される。一方、色補正LUT610に対応付けられるsRGB値は、既知の変換式に従ってL*a*b*値に変換される。そして、変換後のL*a*b*値は、その色域が、FMコンバーター18で変換されたL*a*b*値の色域と一致するようにガマットマッピングされる。
【0062】
一方、色補正なしLUT510とFMコンバーター18を通じて、RGB値から変換したL*a*b*値を、逆方向ルックアップテーブルとして、逆変換LUT511が作成される。即ち、逆変換LUT511は、L*a*b*値とRGB値とを対応付けるLUTである。さらに、ガマットマッピングされたL*a*b*値は、この逆変換LUT511によってRGB値に変換される。このRGB値は、さらに、色補正なしLUT510によってインク量Ijに再度変換される。そして、最後のインク量Ijと最初のsRGB値の対応関係をルックアップテーブルに登録することによって、色補正LUT610が作成される。
【0063】
以上により、機器依存の色空間とインク量Ijとを対応付ける色補正LUT610が作成され、記録部12に記録される。以後、コンピューター10では、この色補正LUT610を使用して入力データに対応するインク量Ijを選択してプリンター20に出力する。
【0064】
2.印刷装置の製造方法:
図11は、本プロファイル作成方法により取得された色補正LUT610を備える印刷装置(印刷システム)のブロック図である。また、図12は、印刷装置を製造する工程を説明するフローチャートである。以下、印刷装置100を構成するコンピューター10及びプリンター20は、上記プロファイル作成方法で説明したものと同様である。
【0065】
ステップS1では、色補正LUT610を作成する。色補正LUT610の作成方法は、上記プロファイル作成方法により説明した手法を用いて色補正なしLUT510を作成し、この色補正なしLUTから色補正LUT610を作成する。
【0066】
ステップS2では、コンピューター10の記録部11に、色補正LUT610を記録する。なお、この色補正LUT610はコンピューター10に接続されるプリンター20が使用するインクに合わせて作成される。そのため、ステップS2の処理により本発明のプロファイル記録工程が実現される。
【0067】
ステップS3では、コンピューター10の記録部11に、CPU12がプリンター20を制御するドライバーモジュールとして機能させるためのドライバープログラムを記録する。このドライバープログラムは、接続されるプリンター20に対応するものが記録される。
【0068】
ステップS4では、コンピューター10のUSBI/Fを介して、同コンピューター10とプリンター20とを接続する。以上、本実施形態に係る印刷装置の製造方法を説明した。
【0069】
3.印刷方法:
以下、本実施形態に係る印刷システム100における印刷動作を説明する。
例えば、コンピューター10に記録されたアプリケーションプログラムにより所定の画像データが生成され、ユーザによりこの画像データを印刷する旨の印刷命令がコンピューター10に対して入力されたとする。コンピューター10のプリンタドライバは、ユーザからの印刷命令を受けると、画像データに対して解像度変換処理、色変換処理、ハーフトーン処理、ラスタライズ処理を行う。
【0070】
解像度変換処理は、アプリケーションプログラムから出力された画像データ(テキストデータ、イメージデータなど)を、紙に印刷する際の解像度に変換する処理である。例えば、紙に画像を印刷する際の解像度が720×720dpiに指定されている場合、アプリケーションプログラムから受け取った画像データを720×720dpiの解像度の画像データに変換する。なお、解像度変換処理後の画像データは、RGB色空間により表される256階調のデータ(RGBデータ)である。
【0071】
色変換処理(色変換工程)は、RGBデータをCMYK色空間により表されるCMYKデータに変換する処理である。この色変換処理では、上記した色補正LUT610用いられる。即ち、プリンタドライバは、色補正LUT610を用いて、各画素に対応付けられた入力データー(sRGBデータ)を、インク量に対応するCMYKデータに変換する。
【0072】
ハーフトーン処理は、高階調数のデータを、プリンターが形成可能な階調数のデータ(ハーフトーンデータ)に変換する処理である。例えば、ハーフトーン処理により、256階調を示すデータが、2階調を示す1ビットデータや4階調を示す2ビットデータのハーフトーンデータに変換される。ハーフトーン処理では、ディザ法・誤差拡散法などを利用して、プリンターがドットを分散して形成できるように画素データを作成する。ハーフトーン処理されたデータは、前述のRGBデータと同等の解像度(例えば720×720dpi)を有している。
【0073】
ラスタライズ処理は、マトリクス状のハーフトーンデータを、プリンター20に転送すべきデータ順に変更する処理である。ラスタライズ処理されたハーフトーンデータは、印刷データに含まれる画素データとして、プリンター20に出力される。
【0074】
以下、プリンター20は所定ライン毎の画素データをプリンター20から受信すると、この画素データをアナログの駆動電圧に変換し、記録ヘッドを駆動させる。記録ヘッドの駆動によりインクが用紙に噴射され、画像の形成(画像形成工程)が行われる。以上、印刷方法を説明した。
【0075】
4.その他の実施形態:
本発明は様々な実施形態が存在する。
粒状性指数SIの重みを格子点を結ぶ差分ベクトルをもとに設定することは一例であり、これに限定されない。
目的関数Eを構成する各指標は、これに限定されない。例えば、トータルインク量TIが存在しないものや、色非恒常性指数CIIが存在しないものであってもよい。
【0076】
なお、本発明は上記実施例に限られるものでないことは言うまでもない。即ち、上記実施例の中で開示した相互に置換可能な部材および構成等を適宜その組み合わせを変更して適用すること、上記実施例の中で開示されていないが、公知技術であって上記実施例の中で開示した部材および構成等と相互に置換可能な部材および構成等を適宜置換し、またその組み合わせを変更して適用すること、上記実施例の中で開示されていないが、公知技術等に基づいて当業者が上記実施例の中で開示した部材および構成等の代用として想定し得る部材および構成等と適宜置換し、またその組み合わせを変更して適用すること、は本発明の一実施例として開示されるものである。
【符号の説明】
【0077】
10…コンピューター、11…記憶部、12…CPU、13…RAM、14…初期値設定部、15…スムージング処理部、16…テーブル作成部、18…フォワードモデルコンバーター、20…プリンター、21…USBI/F、30…ディスプレイ、31…ビデオI/F、40…操作部、41…入力I/F
【技術分野】
【0001】
本発明は、入力データとインク量との関係を記録するプロファイルに関し、特に、階調性を考慮したインク量を記録するプロファイルに関する。
【背景技術】
【0002】
従来、印刷装置におけるカラーマネージメントの一要素として、入力データとこの入力データに割り当てられるインク量との関係を規定したプロファイルが知られている。例えば、入力データが属する色空間としてRGBが選択された場合に、この色空間の各値を座標値とみたてた入力格子点に対して、種々の条件を満たす最適なインク量を割り当てることで、プロファイルを作成する(例えば、特許文献1−3参照)。
【0003】
上記した、最適なインク量の条件の1つとして、階調性指数が存在する。階調性指数は、入力格子点に対応付けられたインク量における、各格子点間での階調変化幅の均一性を示す値である。そのため、この階調性が高くなるほど(値が低くなるほど)、格子点間で、割り当てられたインク量が均一な階調変化を実現することが可能となる(例えば、特許文献4参照。)。そのため、インク量に対してこの階調性指数を含めた目的関数を算出し、同目的関数が小さくなるようインク量を変化させることで、最適インク量の探索を行っている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−45349号公報
【特許文献2】特開2007−282194号公報
【特許文献3】特開2009−164835号公報
【特許文献4】特開2006−157757号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の階調性指数では、目的関数に含まれる他の指数に対して、互いの指数が干渉を起こす場合があった。例えば、階調性指数と、ガマット指数とが干渉を起こし、格子点に対して最適なインク量を算出できない場合があった。
【0006】
本発明は、上記課題にかんがみてなされたもので、階調性指数を含めた複数の指標値をバランス良く向上させたインク量が入力データに割り当てられたプロファイルを用いて印刷を行う印刷装置の製造方法、上記プロファイルの作成方法、及び印刷方法の提供を目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明では、複数のインク量を表すインク量データと入力データとの対応関係を規定するプロファイルを用いて印刷を行う印刷装置の製造方法であって、所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、前記算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、前記作成されたプロファイルを記録手段に記録するプロファイル記録工程と、を有する構成としてある。
【0008】
本発明の詳細な構成及び効果については、明細書中で開示を行う。
【図面の簡単な説明】
【0009】
【図1】印刷システム100の構成を示すブロック図である。
【図2】色補正なしLUT作成時の全体処理手順を示すフロー図である。
【図3】FMコンバーターとインバースモデル初期LUTの説明図である。
【図4】スムージング処理における入力格子点とL*a*b*色空間の座標値との対応関係を示す図である。
【図5】スムージング処理(図2のステップS600)の処理手順の一例を示すフローチャートである。
【図6】CIELAB空間上で色域境界に形成される稜線上の格子点に係るガマット指数Gaを説明する図である。
【図7】本実施形態に係る階調性指数SIを説明するための図である。
【図8】図5のステップS660における処理を詳細に説明するフローチャートである。
【図9】重み(wl、wa、wb)の算出を説明する図である。
【図10】色補正なしLUTを用いた色補正LUTの作成方法を示す説明図である。
【図11】本プロファイル作成方法により取得された色補正LUT610を備える印刷装置(印刷システム)のブロック図である。
【図12】印刷装置を製造する工程を説明するフローチャートである。
【発明を実施するための形態】
【0010】
以下、下記の順序に従って本発明の実施形態を説明する。
1.プロファイル作成方法:
2.印刷装置の製造方法:
3.印刷方法:
4.その他の実施形態:
【0011】
1.プロファイル作成方法:
図1は、印刷システム100の構成を示すブロック図である。本印刷システム100は、コンピューター10と、プリンター20と、ディスプレイ30と、操作部40を備えている。なお、本実施形態では、印刷装置をコンピューター10とプリンター20等により構成されたシステムとして説明するが、印刷装置を実現するものはこれに限定されない。
【0012】
コンピューター10は、記憶部11、CPU12、RAM13、USBインターフェイス(I/F)21、ビデオI/F31、入力I/F41などを備えている。そして、コンピューター10が備えるCPU12が、記憶部11に記憶されたプログラムを読み込み、プログラムをRAM13に展開しながらプログラムに沿った演算を実行することにより、LUT作成モジュールなどの各機能を実現する。LUT作成モジュールの各機能については後述する。
【0013】
記憶部11は、例えばハードディスクドライブ(HDD)であり、プログラムや色変換プロファイル(例えば、後述するインバースモデル初期LUT410、色補正なしLUT510、色補正LUT610)が記憶される。なお、「LUT」は、ルックアップテーブルの略語である。色補正なしLUT510は、所定の入力色空間(例えばRGB色空間)の階調値をプリンター20で使用される複数種類のインクの組み合わせ(以下、インク量Ijともいう)に変換するための色変換テーブルである。色補正なしLUT510の入力色空間であるRGB色空間は、いわゆる機器依存色空間では無く、特定のデバイスとは無関係に設定された仮想の色空間(あるいは抽象的な色空間)である。この色補正なしLUT510は、例えば色補正LUT610を作成する際に使用される。色補正LUT610は、標準的な機器依存の色空間(例えばsRGB色空間やJAPAN COLOR 2001色空間)を、特定のプリンターのインク量Ijに変換するためのルックアップテーブルである。インバースモデル初期LUT410については後述する。
【0014】
コンピューター10は、プログラムに従った演算を実行し、プリンター20をUSBI/F21等を介して制御することにより、印刷制御装置としても機能する。具体的にはコンピューター10は、印刷対象の画像データを取得し、当該画像データを色変換プロファイル(色補正なしLUT510など)によって画素単位で色変換し、色変換後の画像データにハーフトーン処理やマイクロウェーブ処理を行って印刷データを生成する。そして、当該印刷データをUSBI/F21等を介してプリンター20に出力する。これによりプリンター20は、当該印刷データに基づく印刷を実行する。なお、コンピューター10とプリンター20が赤外線や無線LAN等の他のインターフェイスによって接続されていてもよい。
また、コンピューター10は、ビデオI/F31を介してディスプレイ30と接続されており、入力I/F41を介してキーボードやマウス等の操作部40と接続されている。
【0015】
また、コンピューター10のLUT作成モジュールは、初期値設定部14と、スムージング処理部15と、テーブル作成部16と、フォワードモデルコンバーター18とを有している。これらの各部の機能については後述する。
【0016】
図2は、色補正なしLUT作成時の全体処理手順を示すフロー図である。
ステップS100では、インクデータの設定が行われる。ここで、インクデータとは、プリンター20で使用されるインクの色や種類、デューティ制限値などである。本実施形態ではシアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)、の4種類のインクを利用可能なカラープリンター(プリンター20)を想定している。無論、プリンター20が使用するインクの種類は4種類に限定されず、これに淡シアン(Lc)、淡マゼンダ(Lm)、淡ブラック(LK)を加えるものであってもよい。
【0017】
また、デューティ制限値とは、媒体(例えば紙)の単位面積の中に、打ち込むことのできるインク量Ijを示すものである。このデューティ制限値は、媒体の種類や形成する画像の解像度に依存する。このため、デューティ制限値は、媒体(例えば紙)の種類毎および印刷解像度毎に定められる。本実施形態では、写真用紙に1440×1440dpiの解像度で印刷を行うこととする。また、デューティ制限値として、インク単色によるデューティ制限値や、複数色の合計によるデューティ制限値(合計デューティ制限値)がある。例えば、ある紙のある解像度におけるデューティ制限値として、単色では80%、各色の合計では120%のように定められる。
【0018】
ステップS200では、カラーパッチの印刷が行われる。ここではデューティ制限値や色変換テーブルを用いずに、簡単なインク量Ijの組み合わせによりカラーパッチの印刷を行なう。なお、本明細書において「カラーパッチ」という用語は、有彩色のパッチに限らず、無彩色のパッチも含む広い意味で使用される。
【0019】
ステップS300では、例えば、不図示の測色器やスキャナなどを用いて、カラーパッチの測色が行われる。この測色結果は、コンピューター10に取り込まれ、コンピューター10においてインク量Ijと測色値(L*a*b*色空間の座標値)とを対応させた仮想サンプルが形成される。
【0020】
そして、ステップS400では、カラーパッチの測色結果(仮想サンプル)に基づいてフォワードモデル(以下FMともいう)の作成が行われる。なお、「フォワードモデル」とは、インク量Ijを機器独立色空間の色彩値(測色値)に変換する変換モデルを意味する。逆に、「インバースモデル」とは、機器独立色空間の色彩値をインク量Ijに変換する変換モデルを意味する。本実施形態では、機器独立色空間としてCIE-L*a*b*色空間を使用する。なお、以下では、CIE-L*a*b*色空間の色彩値を、単に「L*a*b*値」又は「Lab値」とも呼ぶ。
【0021】
図3は、FMコンバーターとインバースモデル初期LUTの説明図である。図3に示すように、FMコンバーター18の前段を構成する分光プリンティングコンバーターRCは、複数種類のインクのインク量Ijを、そのインク量Ijに応じて印刷されるカラーパッチの分光反射率R(λ)に変換する。図3では、4色(C,M、Y、K)のインクを使用するプリンター20を想定しており、分光プリンティングモデルコンバーターRCもこの4種類のインクのインク量Ijを入力としている。但し、プリンター20で使用する複数種類のインクとしては、任意のインク量Ijを利用することが可能である。色算出部CCは、分光反射率R(λ)からL*a*b*色空間の色彩値を算出する。この色彩値の算出には、予め選択された光源(例えば標準の光D50)がカラーパッチの観察条件として使用される。なお、分光プリンティングモデルコンバーターRCを作成する方法としては、例えば特表2007−511175号公報に記載された方法を採用することが可能である。
【0022】
インバースモデル初期LUT410は、L*a*b*値を入力とし、インク量Ijを出力とするルックアップテーブルである。この初期LUT410は、例えば、L*a*b*色空間を複数の小セルに区分し、小セル毎に最適なインク量Ijを選択して登録したものである。この選択は、例えば、そのインク量Ijで印刷されるカラーパッチの画質を考慮して行われる。一般に、或る1つのL*a*b*値を再現するインク量Ijの組み合わせは多数存在する。そこで、初期LUT410では、ほぼ同じL*a*b*値を再現する多数のインク量Ijの組み合わせの中から、画質等の所望の観点から最適なインク量Ijを選択したものが登録されている。この初期LUT410の入力値であるL*a*b*値は各小セルの代表値である。一方、出力値であるインク量Ijはそのセル内のいずれかのL*a*b*値を再現するものである。従って、この初期LUT410では、入力値であるL*a*b*と出力値であるインク量Ijとが厳密に対応したものとなっておらず、出力値のインク量IjをFMコンバーター18でL*a*b*値に変換すると、初期LUT410の入力値とは多少異なる値が得られる。但し、初期LUT410として、入力値と出力値とが完全に対応するものを利用してもよい。また、初期LUT410を用いずに色補正なしLUT510を作成することも可能である。なお、小セル毎に最適なインク量Ijを選択して初期LUT410を作成する方法としては、例えば上記特表2007−511175号公報に記載された方法を採用することが可能である。
【0023】
ステップS500で、色補正なしLUT510作成のための初期入力値がユーザによって設定される。色補正なしLUT510の入力値としては、RGBの各値として予め定められたほぼ等間隔の値が設定される。1組のRGB値はRGB色空間内の点を表していると考えられるので、1組のRGB値を「入力格子点」とも呼ぶ。
【0024】
また、ステップS500では、複数の入力格子点のうちから予め選択された幾つかの少数の入力格子点に対するインク量Ijの初期値がユーザによって入力される。この初期入力値が設定される入力格子点としては、RGB色空間における3次元色立体の頂点に相当する入力格子点を少なくとも選択することが好ましい。この3次元色立体の頂点では、RGBの各値がその定義範囲の最小値又は最大値を取る。具体的には、RGBの各値を8ビットで表現した場合には、(R,G,B)=(0,0,0)、(0,0,255)、(0,255,0)、(255,0,0)、(0,255,255)、(255,0,255)、(255,255,0)、(255,255,255)である8つの入力格子点に関してインク量Ijの初期入力値が設定される。なお、(R,G,B)=(255,255,255)の入力格子点に対するインク量Ijは、すべて0に設定される。他の入力格子点に対するインク量Ijの初期入力値は任意であり、例えば0に設定される。
【0025】
図2のステップS600では、スムージング処理部15(図1)が、ステップS500で設定された初期入力値に基づいてスムージング処理(平滑化処理)を実行する。
図4は、スムージング処理における入力格子点とL*a*b*色空間の座標値との対応関係を示す図である。なお、図4Aは、RGB色空間上での入力格子点を示す。また、図4Bにはスムージング処理前の状態における複数の色点の分布が2重丸と白丸とで示されている。これらの座標値は、L*a*b*色空間における3次元色立体CSを構成している。なお、各座標値のL*a*b*値は、色補正なしLUT510の複数の入力格子点におけるインク量Ijを、FMコンバーター18を用いてL*a*b*値に変換した値である。また、他の入力格子点に対するインク量Ijの初期値は、初期入力値から初期値設定部14(図1参照)によって設定される。
【0026】
図4Cには、スムージング処理後の色点の分布が示されている。スムージング処理は、L*a*b*色空間における複数の座標値を移動させて、それらの座標値の分布を等間隔に近い平滑なものにする処理である。スムージング処理では、さらに、移動後の各座標値のL*a*b*値を再現するために最適なインク量Ijも決定される。このとき、入力格子点に割り当てられる最適なインク量Ijを目的関数Eをもとに算出する。
【0027】
L*a*b*色空間の3次元色立体CS(図4B、図4C)の上記各頂点は、色補正なしLUT510の入力色空間(RGB色空間)の3次元色立体(図4A)の頂点と一対一に対応している。また、各頂点を結ぶ辺(稜線)も、両方の色立体で互いに対応しているものと考えることができる。スムージング処理前(図4B)のL*a*b*色空間の各座標値は、色補正なしLUT510の入力格子点にそれぞれ対応付けられており、従って、スムージング処理後(図4C)のL*a*b*色空間の各色点も色補正なしLUT510の入力格子点にそれぞれ対応付けられる。なお、色補正なしLUT510の入力格子点はスムージング処理によって変化しない。
【0028】
色補正なしLUT510を作成する際に、L*a*b*空間においてスムージング処理を行う理由は以下の通りである。色補正なしLUT510では、なるべく大きな色域を再現できるように出力色空間のインク量Ijを設定したいという要望がある。特定のインクセットで再現可能な色域は、インクデューティ制限値(一定面積に吐出可能なインク量Ijの制限値)などの所定の制限条件を考慮して決定される。一方、上述したフォワードモデルFMは、これらの制限条件が考慮されておらず、再現可能な色域とは無関係に作成されている。そこで、スムージング処理の際にインクデューティ制限等の制限条件を考慮してL*a*b*空間内の座標値の取り得る範囲を決定すれば、特定のインクセットで再現可能な色域を決定することが可能となる。
【0029】
本実施形態では、最適インク量Ijを探索する条件となる以下の(1)式で表される目的関数Eを用いて、スムージング処理を行なう。
【数1】
ここで、Ijは目的関数Eを最小とするインク量Ij、GaI(Ij)はインク量Ijにより再現される色域の拡張性を示すガマット指数、GI(Ij)はインク量Ijで印刷されるカラーパッチの粒状性指数(Graininess Index)、CII(Ij)は、インク量Ijで印刷されるカラーパッチの色非恒常性指数(Color Inconstancy Index)、TI(Ij)は、トータルインク量(=ΣIj)、SI(Ij)はインク量Ijで印刷されるカラーパッチの階調性指数、α、β、γ、σ、εは定数である。
【0030】
上記(1)式は、インク量Ijの中で、ガマット指数GaI、粒状性指数GI、階調性指数SI、色非恒常性指標SII、トータルインク量TIの和がより小さいインク量Ijが最適なインク量Ijとして決定されることを意味している。この最適なインク量Ijの探索は、例えば準ニュートン法などの最適化手法を用いて実行される。また、インク量Ijの探索は、入力格子点の初期インク値から開始される。従って、探索で得られるインク量Ijは、この初期インク量Ijを修正した値となる。
【0031】
なお、一般に、最適化処理によるインク量Ijの探索は以下の条件の下で実行される。
(条件i)目的関数Eを最小とする
(条件ii)使用可能として予め指定されたインクのみを使用する
【0032】
条件iの目的関数Eを与える式としては、上記(1)式以外の種々の式を利用可能である。また、条件iiにおける使用可能なインクとしては、プリンター20で利用可能な複数種類のインクのうちの一部のインクのみが指定される場合と、全種類のインクが指定される場合とがある。使用可能なインクの種類は、スムージング処理の対象となる色点毎にユーザによって予め設定されることが好ましい。これらの最適化条件の具体例については更に後述する。
【0033】
図5は、スムージング処理(図2のステップS600)の処理手順の一例を示すフローチャートである。ステップS610では、初期値設定部14(図1)が、スムージング処理の対象とする複数の座標値を初期設定する。具体的には、まず、各格子点に対してインク量Ijの初期入力値から、スムージング処理の対象となる各座標値の仮インク量Ijが決定される。例えば、次の式(2)、式(3)に従って、各入力格子点に対する仮インク量I(R,G,B,)が決定される。
【数2】
【数3】
ここで、Ij(R,G,B)は、入力格子点のRGB値に対するインクセット全体のインク量(本実施形態では、4種類。)を示している。RGB値が0又は255を取る入力格子点に対するインク量は、ユーザによって予め入力された値である。上記式(2)式(3)によれば、任意のRGB値における仮インク量Ij(R,G,B)を求めることが可能である。
【0034】
次に、FMコンバーター18を用いて、仮インク量Ijに対応するL*a*b*値を求める。この演算は、以下の式(4)で表すことができる。
【数4】
ここで、L(R,G,B)は変換後の色彩値(L*、a*、b*)を示しており、関数fFMはFMコンバーター18による変換を意味している。なお、この式からも理解できるように、この変換後の色彩値(L*、a*、b*)は、色補正なしLUT510の入力値であるRGB値に対応付けられている。そして、得られたL*a*b*値を、インバースモデル初期LUT410(図3)を用いてインク量Ijに再度変換する。
【0035】
上述のステップS610の処理の結果、スムージング処理の対象となる座標値について、以下の初期値が決定される。
(i)色補正なしLUTの入力格子点の値:(R,G,B)
(ii)各入力格子点に対応するL*a*b*色空間の座標値の初期座標値:L(R,G,B)
(iii)各入力格子点に対応する初期インク量Ij:I(R,G,B)
以上の説明から理解できるように、初期値設定部14は、代表的な入力格子点に関する入力初期値から他の入力格子点に関する初期値を設定する機能を有している。なお、初期値設定部14は、スムージング処理部15に含まれるものとしてもよい。
【0036】
ステップS620では、スムージング処理部15は、対象格子点に割り当てられたインク量Ijに対してガマット指数GaIを取得する。本実施形態では、ガマット指数GaIは、所定の色域中心点と、スムージング処理対象格子点に隣接する格子点の色彩値とを基準として算出される。中心点は、例えばL*a*b*色空間で(50,0,0)である。
なお、ガマット指数GaIは入力格子点のRGB値で外郭に位置する格子点でのみ値をもち、それ以外の格子点においてはその値を0とする。なぜなら、色域内郭においてガマットの拡張を考慮することには有意性がないからである。
スムージング対象格子点が色域の内外郭のどちらに位置するかを判断するためには、例えば以下の手法が挙げられる。
(i)スムージング対象格子点の入力値(R,G,B)について、それぞれ最小値または最大値(例えば最小値=0、最大値=255)であるか否かを判定する
(ii)前記入力値(R,G,B)について、最小値または最大値である値が1つも存在しなければ、内郭に位置すると判断する。少なくとも1つ以上存在すれば、外郭に位置すると判断する。
外郭に位置すると判断された格子点におけるガマット指数GaIは、以下の式(5)をもとに取得される。
【数5】
ここで、ベクトルAは、対象格子点に割り当てられたインク量Ijの色彩値の各値(本っ実施形態では、L*、a*、b*)を要素とするベクトル、ベクトルBは、対象格子点に対して指定される、色域を拡張する方向を示すベクトル、θは、ベクトルAとベクトルBの成す角である。
【0037】
図6は、CIELAB空間上で色域境界に形成される稜線上の格子点に係るガマット指数Gaを説明する図である。ここで、ベクトルBは、入力格子点の色彩値上の位置(本実施例ではL*a*b*)によってその向きが予め設定された方向ベクトルであり、ベクトルBは大きさ|B|=1となる単位方向ベクトルであるとする。本例では、ベクトルBは、スムージング処理対象格子点に隣接する格子点を色空間上で結んだ線分の中点と、前記所定の色域中心点とを結んだベクトルである。
インク量Ijを変化させて、ベクトルBが示す方向へ色域を拡張させるためには(例えば、図6において(0、0、0)からa*方向外向きに移動させる場合。)、
(条件1)ベクトルAの大きさ|A|が大きくなる
(条件2)ベクトルAとベクトルBの成す角θが小さくなる
の少なくともいずれかを満たせばよいといえる。
そのため、目的関数Eでは、インク量Ijを変化させて、上記式(5)に示すガマット指数GaI(Ij)が小さくなるとき(内積A・Bの値が正の方向に大きくなるとき)のインク量Ijが、色域の拡張に最適なインク量Ijであるとして探索が行われる。
【0038】
ステップS630では、スムージング処理部15は、インク量Ijに対して粒状性指数GIを取得する。本実施形態では、粒状性指数GIは、例えば以下の式(6)で与えられる。
【数6】
ここで、aLは明度補正係数、WS(u)はカラーパッチの印刷に利用されるハーフトーンデータが示す画像のウイナースペクトラム、VTF(u)は視覚の空間周波数特性、uは空間周波数である。粒状性指数GIの計算方法としては、例えば、特表2007−511161に記載されている。
【0039】
ステップS640では、スムージング処理部15は、インク量Ijに対して色非恒常性指数CIIを取得する。本実施形態では、色非恒常性指標数CIIは、以下の式(7)により取得される。
【数7】
ここで、ΔL*は2つの異なる観察条件下(異なる光源下)におけるカラーパッチの明度差、ΔC*ha彩度差、ΔH*abは色相差を示す。色非恒常性指数CIIの計算時には、2つの異なる観察光源下でのL*a*b*値は、色順応変換(CAT)を用いて標準観察条件(例えば、標準のD65光源下)に変換される。CIIについては、Bill Meyer and Saltzman's Principles of Color Technology, 3rd edition, John Wiley & Sons, Inc, p.129,pp.213-215を参照。
【0040】
ステップS650では、スムージング処理部15は、インク量Ijに対してトータルインク量TIを取得する。トータルインク量TIは、インク量Ijを構成するインクの量として取得される。即ち、本指数により、インク量Ijが少ないほど最適なインク量と見なすことができる。
【0041】
ステップS660では、スムージング処理部15は、対象格子点に割り当てられたインク量Ijに対して階調性指数SIを取得する。本実施形態では、階調性指数SIは、以下の式(8)により算出される。
【数8】
ここで、P0は、階調性指数SIが算出される対象格子点を示す。また、Pk(k:1〜n)は、対象格子点P0と隣り合う格子点を示す。そして、L*p、a*p、b*pは、格子点Pに割り当てられたインク量Ijの色彩値の要素を示す。
そのため、ステップS660の処理により本発明に係る指数算出工程を実現する。
【0042】
図7は、本実施形態に係る階調性指数SIを説明するための図である。図7に示される格子点P0、P1、P2は、CIELAB空間上で色域のGC稜線上に形成される格子点である。また、図7Aは、スムージング処理前の各格子点の位置関係を示し、図7Bは、スムージング処理後の各格子点の位置関係を示す。以下、格子点Pkに割り当てられたインク量Ijにおける色彩値(Lpk、apk、bpk)を単に「格子点Pkの色彩値」とも記載する。
【0043】
図7において、最適化を行う格子点(色補正なしLUT510の入力格子点)P0の色彩値(L*p0、a*p0、b*p0)の階調性が良好となるためには、格子点間での色彩値の差が均等な値を取る必要がある。例えば、図7Aに示すように、格子点P0の測色値が格子点P1の測色値に近い場合、格子点P0と格子点P1の色彩値の差分と、格子点P0と格子点P2の色彩値の差分とは近い値を取らないため、階調性は良好ではない。そのため、図7Bに示すように、格子点間での差分が近い値を取るよう対象格子点P0に割り当てるインク量Ijを変化させる必要がある。また、階調性指数SIは、上記したガマット指標Gaとの関係を考慮する必要がある。
【0044】
対象格子点P0に対して格子点P1、P2との階調性を良好にする(即ち、階調性指標SIを小さくする)場合、対象格子点P0の色彩値(L*p0、a*p0、b*p0)は、格子点P1、P2の色彩値(L*p1、a*p1、b*p1)(L*p2、a*p2、b*p2)を結んだベクトルV1、2の中点に対して、色彩値(L*p0、a*p0、b*p0)が近づくようインク量Ijが変化する(図7B)。一方、対象格子点P0に対して色域を拡張させるよう作用させる(即ち、ガマット指標数Gaを小さくする)場合、対象格子点P0の色彩値(L*p0、a*p0、b*p0)が、ベクトルV1、2に対して遠ざかるようインク量Ijが変化する。そのため、階調性指数SIとガマット指数Gaとは結果的に相反するよう作用する。
【0045】
そのため、本実施形態では、色彩値(L*、a*、b*)の要素毎に格子点Pkとの間で差分を算出し、これを総和することで階調性指数SIを算出している。ここで、格子点Pkの数は任意である。例えば、対象格子点P0が色域の稜線上の場合は、格子点Pkとして、同一稜線上で隣り合う2点(k=1,2)とすればよい。また、対象格子点P0が色域の外郭平面上の場合は、格子点Pkとして、同一平面上で隣り合う4点(k=1〜4)とすればよい。そして、対象格子点P0が色域の内部に存在する場合は、格子点PkとしてR、G、B方向でそれぞれ隣り合う2点毎(計6点:k=1〜6)とすればよい。
【0046】
さらに、本実施形態では、色彩値の各要素の差分に対して階調性の維持の優先順序を設定する重み(wl、wa、wb)を付与することで、階調性の維持と色域拡張性との両立を目指している。即ち、階調性指数SIの各要素に付与された重み(wl、wa、wb)の値により、目的関数Eを用いた最適インク量Ijの探索において、格子点の色彩値の各要素に対するガマット指標数Gaの影響度合いが変化する。
【0047】
図8は、図5のステップS660における処理を詳細に説明するフローチャートである。なお、図8に示す処理は、稜線上に位置する格子点に対して階調性指数SIが算出される処理を示す。そのため、格子点Pkは、稜線上で隣り合う2点(P1、P2)が選択される。
【0048】
ステップS661では、スムージング処理部15は、対象格子点P0と格子点P1、P2に割り当てられたインク量Ijの色彩値(L*p0、a*p0、b*p0)、(L*p1、a*p1、b*p1)、(L*p2、a*p2、b*p2)を取得する。この処理は、例えばFMコンバーター18を用いて行われる。
【0049】
ステップS662では、スムージング処理部15は、階調性指数SIの各要素(L*、a*、b*それぞれの差分)に付与する重み(wl、wa、wb)を設定する。本実施形態では、重み(wl、wa、wb)は、下記式(9)により算出される。
【数9】
【0050】
ここで、L’、a’、b’は格子点P1、P2の色彩値を結んだベクトルV1、2を0〜1.0の範囲で正規化した値であり、以下の式(10)により算出される。
【数10】
ここで、maxは色彩値の要素の内、絶対値が最も大きな値、minは色彩値の要素の内、絶対値が最も小さな値、midは色彩値の要素の内、中間の値、sは、色彩値の要素の内、中間の値を正規化した値、を示す。そのため、ベクトルV1、2の要素の内、最大のものは1.0に、中間のものはsに、最小のものは0.0に正規化される。また、式(9)中のcoefは、0〜1.0の範囲で定められた所定の定数である。coefは、予め好適な値が実験的に設定される。
前記式(9)にあるように、この定数を考慮することで、重み(wl、wa、wb)を、最大値1.0、最小値1.0−coefの範囲で算出する。なぜなら、coefを考慮しない場合、重み(wl、wa、wb)の最小値は0.0となってしまう。これは、目的関数Eにおいてその方向の階調性は全く考慮されないことになってしまい、結果的に好適なインク量が得られない。これを回避するため、定数coefを設定し重み(wl、wa、wb)は少なくとも1.0−coefの値を持つよう算出する。設定される値は、例えば0.5である。
【0051】
図9は、重み(wl、wa、wb)の算出を説明する図である。本実施形態では、上記のように、階調性指数SIの各要素に付与される重み(wl、wa、wb)は、格子点P1、P2の色彩値を結んだベクトルV1、2の要素に基づいて設定される。ここで、ベクトルV1、2の各要素は、格子点P1、P2間でのL*、a*、b*各要素の階調幅を示すと考えることができる。例えば、図9では、ベクトルV1、2の要素V1、2L*が、要素V1、2a*と比べて大きくなり、L*方向での階調幅がa*方向での階調幅より広いと考えることができる。
【0052】
格子点P1、P2を結ぶベクトルにおける要素間での階調幅の大小がL*>b*>a*の関係を有する場合、階調性指数SIの各要素の成分(以下、便宜的に、階調性指数SIの各成分をSIL*、SIa*、SIb*と記載する。)は、要素L*において最も大きくなり、要素a*において最も小さくなる。何故なら、階調性指数SIは、各要素において格子点P1(P2)と対象格子点P0との差分を算出するため、格子点P1、P2間の階調幅が大きい要素ほど、格子点P1(P2)と対象格子点P0との差分が大きくなるためである。そのため、ベクトルV1、2の要素をもとに重み(wl、wa、wb)を設定することで、ベクトルV1、2の要素が最も大きい色彩値の要素に対して階調性の維持が優先されるよう作用し、ベクトルV1、2の要素が最も小さい色彩値の要素に対しては階調性の維持が優先されないよう作用する。図9では、階調性指数SIの要素における優先順序は、SIL*>SIb*>SIa*となる。
【0053】
一方で、色域の拡張においては、重み(wl、wa、wb)は、色域拡張を抑制する制限条件として作用するため、重みの値が低い色彩値の要素に対しては、目的関数Eにおいてガマット指数GaIが、階調性指数SIよりも優先的に作用する。即ち、図9においては、対象格子点P0に対して、重みwlが大きいL*方向(SIL*成分)については、目的関数Eにおいて、階調性指数SIがガマット指数GaIよりも優先的に作用し、結果的に色域の拡張が抑制し階調性を維持するよう作用する。重みwaが小さいa*方向(SIa*成分)については、目的関数Eにおいて、階調性指数SIよりもガマット指数GaIが優先的に作用し、結果的に色域の拡張が促進されるよう作用する。以上により、目的関数Eを用いたインク量Ijの探索において、階調性指標SIにおける作用と、ガマット指数GaIにおける作用との間でトレードオフが緩和される。
【0054】
ステップS663では、対象格子点P0の色彩値(L*p0、a*p0、b*p0)、及びステップS662で算出された重み(wl、wa、wb)をもとに上記式(8)に基づいてインク量Ijにおける階調性指数SIが算出される。
【0055】
図5のステップS670では、スムージング処理部15は、各指数(Ga、GI、CII、TI、SI)をそれぞれの影響度合いにより設定された重み(α、β、γ、σ、ε)を付与することで、目的関数Eを算出する。
【0056】
ステップS680では、目的関数Eが閾値Sよりも大きい場合には、ステップS620に戻りステップS620〜S670のスムージング処理が継続される。一方、目的関数Eが閾値S以下の場合には、色点の分布が十分に平滑になっているので、スムージング処理が終了する。なお、閾値Sは、予め適切な値が実験的に決定される。
【0057】
このように、本実施形態のスムージング処理(平滑化処理)では、各指数Ga、GI、CII、TI、SIにより構成された目的関数Eが小さくなるときのインク量Ijが最適なインク量Ijとして設定される。また、階調性指数SIとガマット指数Gaとをバランスよく考慮したインク量Ijが取得される。
【0058】
図2のステップS700では、スムージング処理の結果を用いて、テーブル作成部16が色補正なしLUT510を作成する。すなわち、テーブル作成部16は、各入力格子点に対応付けられたL*a*b*色空間の色点を再現するための最適なインク量Ijを色補正なしLUT510の出力値として登録する。なお、スムージング処理では、その計算負荷を軽減するために、色補正なしLUT510の入力格子点の一部のみに対応する色点のみを処理対象として選択することも可能である。例えば、色補正なしLUT510の入力格子点におけるRGB値の間隔が16である場合に、スムージング処理の対象となる入力格子点におけるRGB値の間隔を32に設定すれば、スムージング処理の負荷を半減することができる。この場合には、テーブル作成部16は、スムージング処理結果を補間することによって色補正なしLUT510のすべての入力格子点に対するインク量Ijを決定して登録する。そのため、ステップS600、700の処理により本発明に係るインク量取得工程が実現される。
【0059】
そして、図2のステップS800では、色補正なしLUT510の評価が行われる。評価がNGであれば(S800でNO)、再度ステップS100に戻る。一方、評価がOKであれば、色補正なしLUT510を記憶部11に登録する。
なお、LUT作成モジュールは、色補正なしLUT510を用いて、色補正LUT610の作成も行う。
【0060】
図10は、色補正なしLUTを用いた色補正LUTの作成方法を示す説明図である。上記のように色補正LUT610は、標準的な機器依存の色空間を、特定のプリンターのインク量Ijに変換するためのルックアップテーブルであり、本実施形態では、機器依存の色空間としてsRGB色空間を採用する。以下、図10に示すように、色補正なしLUTが規定するRGB値とインク量Ijの関係をもとに、色補正LUT610の作成が行われる。そのため、本処理により本発明に係るプロファイル作成工程が実現される。
【0061】
まず、色補正なしLUT510により、RGB値がインク量Ijに変換される。変換後のインク量Ijは、FMコンバーター18によってL*a*b*値に変換される。一方、色補正LUT610に対応付けられるsRGB値は、既知の変換式に従ってL*a*b*値に変換される。そして、変換後のL*a*b*値は、その色域が、FMコンバーター18で変換されたL*a*b*値の色域と一致するようにガマットマッピングされる。
【0062】
一方、色補正なしLUT510とFMコンバーター18を通じて、RGB値から変換したL*a*b*値を、逆方向ルックアップテーブルとして、逆変換LUT511が作成される。即ち、逆変換LUT511は、L*a*b*値とRGB値とを対応付けるLUTである。さらに、ガマットマッピングされたL*a*b*値は、この逆変換LUT511によってRGB値に変換される。このRGB値は、さらに、色補正なしLUT510によってインク量Ijに再度変換される。そして、最後のインク量Ijと最初のsRGB値の対応関係をルックアップテーブルに登録することによって、色補正LUT610が作成される。
【0063】
以上により、機器依存の色空間とインク量Ijとを対応付ける色補正LUT610が作成され、記録部12に記録される。以後、コンピューター10では、この色補正LUT610を使用して入力データに対応するインク量Ijを選択してプリンター20に出力する。
【0064】
2.印刷装置の製造方法:
図11は、本プロファイル作成方法により取得された色補正LUT610を備える印刷装置(印刷システム)のブロック図である。また、図12は、印刷装置を製造する工程を説明するフローチャートである。以下、印刷装置100を構成するコンピューター10及びプリンター20は、上記プロファイル作成方法で説明したものと同様である。
【0065】
ステップS1では、色補正LUT610を作成する。色補正LUT610の作成方法は、上記プロファイル作成方法により説明した手法を用いて色補正なしLUT510を作成し、この色補正なしLUTから色補正LUT610を作成する。
【0066】
ステップS2では、コンピューター10の記録部11に、色補正LUT610を記録する。なお、この色補正LUT610はコンピューター10に接続されるプリンター20が使用するインクに合わせて作成される。そのため、ステップS2の処理により本発明のプロファイル記録工程が実現される。
【0067】
ステップS3では、コンピューター10の記録部11に、CPU12がプリンター20を制御するドライバーモジュールとして機能させるためのドライバープログラムを記録する。このドライバープログラムは、接続されるプリンター20に対応するものが記録される。
【0068】
ステップS4では、コンピューター10のUSBI/Fを介して、同コンピューター10とプリンター20とを接続する。以上、本実施形態に係る印刷装置の製造方法を説明した。
【0069】
3.印刷方法:
以下、本実施形態に係る印刷システム100における印刷動作を説明する。
例えば、コンピューター10に記録されたアプリケーションプログラムにより所定の画像データが生成され、ユーザによりこの画像データを印刷する旨の印刷命令がコンピューター10に対して入力されたとする。コンピューター10のプリンタドライバは、ユーザからの印刷命令を受けると、画像データに対して解像度変換処理、色変換処理、ハーフトーン処理、ラスタライズ処理を行う。
【0070】
解像度変換処理は、アプリケーションプログラムから出力された画像データ(テキストデータ、イメージデータなど)を、紙に印刷する際の解像度に変換する処理である。例えば、紙に画像を印刷する際の解像度が720×720dpiに指定されている場合、アプリケーションプログラムから受け取った画像データを720×720dpiの解像度の画像データに変換する。なお、解像度変換処理後の画像データは、RGB色空間により表される256階調のデータ(RGBデータ)である。
【0071】
色変換処理(色変換工程)は、RGBデータをCMYK色空間により表されるCMYKデータに変換する処理である。この色変換処理では、上記した色補正LUT610用いられる。即ち、プリンタドライバは、色補正LUT610を用いて、各画素に対応付けられた入力データー(sRGBデータ)を、インク量に対応するCMYKデータに変換する。
【0072】
ハーフトーン処理は、高階調数のデータを、プリンターが形成可能な階調数のデータ(ハーフトーンデータ)に変換する処理である。例えば、ハーフトーン処理により、256階調を示すデータが、2階調を示す1ビットデータや4階調を示す2ビットデータのハーフトーンデータに変換される。ハーフトーン処理では、ディザ法・誤差拡散法などを利用して、プリンターがドットを分散して形成できるように画素データを作成する。ハーフトーン処理されたデータは、前述のRGBデータと同等の解像度(例えば720×720dpi)を有している。
【0073】
ラスタライズ処理は、マトリクス状のハーフトーンデータを、プリンター20に転送すべきデータ順に変更する処理である。ラスタライズ処理されたハーフトーンデータは、印刷データに含まれる画素データとして、プリンター20に出力される。
【0074】
以下、プリンター20は所定ライン毎の画素データをプリンター20から受信すると、この画素データをアナログの駆動電圧に変換し、記録ヘッドを駆動させる。記録ヘッドの駆動によりインクが用紙に噴射され、画像の形成(画像形成工程)が行われる。以上、印刷方法を説明した。
【0075】
4.その他の実施形態:
本発明は様々な実施形態が存在する。
粒状性指数SIの重みを格子点を結ぶ差分ベクトルをもとに設定することは一例であり、これに限定されない。
目的関数Eを構成する各指標は、これに限定されない。例えば、トータルインク量TIが存在しないものや、色非恒常性指数CIIが存在しないものであってもよい。
【0076】
なお、本発明は上記実施例に限られるものでないことは言うまでもない。即ち、上記実施例の中で開示した相互に置換可能な部材および構成等を適宜その組み合わせを変更して適用すること、上記実施例の中で開示されていないが、公知技術であって上記実施例の中で開示した部材および構成等と相互に置換可能な部材および構成等を適宜置換し、またその組み合わせを変更して適用すること、上記実施例の中で開示されていないが、公知技術等に基づいて当業者が上記実施例の中で開示した部材および構成等の代用として想定し得る部材および構成等と適宜置換し、またその組み合わせを変更して適用すること、は本発明の一実施例として開示されるものである。
【符号の説明】
【0077】
10…コンピューター、11…記憶部、12…CPU、13…RAM、14…初期値設定部、15…スムージング処理部、16…テーブル作成部、18…フォワードモデルコンバーター、20…プリンター、21…USBI/F、30…ディスプレイ、31…ビデオI/F、40…操作部、41…入力I/F
【特許請求の範囲】
【請求項1】
複数のインク量を表すインク量データと入力データとの対応関係を規定するプロファイルを用いて印刷を行う印刷装置の製造方法であって、
所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、
前記算出された階調性指数を含む目的関数が小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、
前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、
前記作成されたプロファイルを記録手段に記録するプロファイル記録工程と、を有することを特徴とする印刷装置の製造方法。
【請求項2】
前記重みは、前記対象格子点と隣り合う格子点との、色空間上での位置関係に基づいて設定されることを特徴とする請求項1に記載の印刷装置の製造方法。
【請求項3】
前記目的関数は、格子点に割り当てられたインク量により規定される色域の拡張性を示すガマット指数を含むことを特徴とする請求項1又は請求項2のいずれかに記載の印刷装置の製造方法。
【請求項4】
印刷装置で使用される複数のインク量を表すインク量データと、入力データとの対応関係を規定するプロファイルを作成するプロファイル作成方法であって、
所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、
前記算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、
前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、を有することを特徴とするプロファイル作成方法。
【請求項5】
前記請求項4に記載のプロファイル作成方法により作成されたプロファイルを用いて入力データを、インク量を示すデータに変換する色変換工程と、
前記変換されたデータをプリンターに出力して、前記プリンターに印刷動作を実行させる画像形成工程と、を有することを特徴とする印刷方法。
【請求項1】
複数のインク量を表すインク量データと入力データとの対応関係を規定するプロファイルを用いて印刷を行う印刷装置の製造方法であって、
所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、
前記算出された階調性指数を含む目的関数が小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、
前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、
前記作成されたプロファイルを記録手段に記録するプロファイル記録工程と、を有することを特徴とする印刷装置の製造方法。
【請求項2】
前記重みは、前記対象格子点と隣り合う格子点との、色空間上での位置関係に基づいて設定されることを特徴とする請求項1に記載の印刷装置の製造方法。
【請求項3】
前記目的関数は、格子点に割り当てられたインク量により規定される色域の拡張性を示すガマット指数を含むことを特徴とする請求項1又は請求項2のいずれかに記載の印刷装置の製造方法。
【請求項4】
印刷装置で使用される複数のインク量を表すインク量データと、入力データとの対応関係を規定するプロファイルを作成するプロファイル作成方法であって、
所定色空間における入力データの要素により規定される格子点上に割り当てられるインク量の階調性を表す階調性指数を、算出対象となる対象格子点に割り当てられたインク量の色彩値と、前記対象格子点と隣り合う格子点に割り当てられたインク量の色彩値との各要素の差分に対して所定の重みを付与しつつ、同差分を総和して算出する指数算出工程と、
前記算出された階調性指数を含む目的関数が最も小さくなるよう格子点に割り当てるインク量を更新し、更新されたインク量を前記格子点に対応するインク量として取得するインク量取得工程と、
前記取得されたインク量をもとに、入力データが属する色空間での値と、前記インク量とを対応づけたプロファイルを作成するプロファイル作成工程と、を有することを特徴とするプロファイル作成方法。
【請求項5】
前記請求項4に記載のプロファイル作成方法により作成されたプロファイルを用いて入力データを、インク量を示すデータに変換する色変換工程と、
前記変換されたデータをプリンターに出力して、前記プリンターに印刷動作を実行させる画像形成工程と、を有することを特徴とする印刷方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−217075(P2012−217075A)
【公開日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願番号】特願2011−81715(P2011−81715)
【出願日】平成23年4月1日(2011.4.1)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
【公開日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願日】平成23年4月1日(2011.4.1)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】
[ Back to top ]