(57)【特許請求の範囲】
【請求項１】
所定の装置に依存した第１色空間を構成する複数の色成分の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間を構成する複数の色成分の値とを関連づけた色関連情報を記憶する記憶部と、
前記色関連情報により関連付けられた前記第２色空間の各色成分の値を正規化した値を示す特性変化情報を、前記第２色空間の複数種類の色成分毎に算出する特性変化算出部と、
前記特性変化情報と前記色関連情報とに基づいて、前記第１色空間の所定の色成分の所定の階調に対応する第２色区間の所定の色成分の値を補間する補間演算部と
を備えたことを特徴とする色補間装置。
【請求項２】
前記補間演算部は、補間演算対象となる前記第２色空間の色成分の値の前後の値の変化幅が閾値以上か否かを判定し、前記変化幅が閾値未満の場合には、所定の補間法を用いて前記第２色空間の色成分の値を補間演算することを特徴とする請求項１に記載の色補間装置。
【請求項３】
前記補間演算部は、前記第１色空間を構成する複数の色成分の階調の組み合わせに応じて、補間演算を行う場合の前記特性変化情報を特定し、特定した特性変化情報に基づいて、前記第１色空間の色成分の階調に対応する前記第２色空間の色成分の値を補間演算することを特徴とする請求項１または２に記載の色補間装置。
【請求項４】
前記補間演算部は、各特性変化情報のうち、前記第２色空間の色成分の最大値と最小値との幅が閾値以上となる色成分の特性変化情報を利用して、補間演算することを特徴とする請求項１、２または３に記載の色補間装置。
【請求項５】
前記補間演算部は、各特性変化情報のうち、単一の方向に特性値が変化する特性変化情報を利用して、補間演算することを特徴とする請求項１〜４のいずれか一つに記載の色補間装置。
【請求項６】
コンピュータに、
所定の装置に依存した第１色空間を構成する複数の色成分の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間を構成する複数の色成分の値とを関連づけた色関連情報を記憶した記憶装置を参照し、前記色関連情報により関連付けられた前記第２色空間の各色成分の値を正規化した値を示す特性変化情報を、前記第２色空間の複数種類の色成分毎に算出する特性変化算出手順と、
前記特性変化情報と前記色関連情報とに基づいて、前記第１色空間の所定の色成分の所定の階調に対応する第２色区間の所定の色成分の値を補間する補間演算手順と
を実行させることを特徴とする色補間プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、色補間装置および色補間プログラムに関する。
【背景技術】
【０００２】
近年印刷業界では、ディスプレイに表示される色やプリンタで印刷される色などを統一的に扱うために、カラーマネジメント技術を適用する。このカラーマネジメント技術は、各装置に依存するカラー値を各装置に依存しないカラー値に変換し、変換後のカラー値を利用して、各装置を制御するものである。各装置に依存しないカラー値は、デバイスインディペンデントカラーと呼ばれる。
【０００３】
ここでは一例として、デバイスインディペンデントカラーをCIELAB値とする。CIELAB値は、L*、a*、b*という３本の軸を使ってカラー値を表現する。L*は、色成分の明るさを示し、a*は、赤〜緑方向の色を示し、b*は、青〜黄色方向の色を示す。
【０００４】
プリンタに依存するカラー値をCIELAB値に変換する場合には、プリンタの印刷特性を利用する。このプリンタの印刷特性を得るためには、複数の色信号を組み合わせた色パッチを用紙に印刷し、この色パッチを色測定器で測定する。
【０００５】
色信号の組み合わせは膨大なものとなるため、全ての色信号の組み合わせの色パッチについて印刷特性を得ることは利用者にかかる負担が大きくなる。このため、全ての色信号の組み合わせについて、印刷特性を測定することはせず、補間演算を利用して、プリンタに依存するカラー値をCIELAB値に変換する。この補間演算には、既知のCIELAB値から補間対象のCIELAB値を線形的に推測して求めるものがある。
【０００６】
しかし、CIELAB値は線形的に変化するものではないため、上記補間演算では精度が高くないという欠点がある。このため、かかる欠点を補うべく、L*の非線形情報を用いてカラー値の階調変換を行い、L*の非線形特性を取り除いた後に、補間対象のCIELAB値を推測するという技術が存在する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−８０４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来技術では、L*の非線形特性を取り除くことはできても、a*やb*に依存する非線形特性を取り除くことができず、CIELAB値を精度よく補間することができないという問題があった。
【０００９】
開示の技術は、上記に鑑みてなされたものであって、装置に依存しないカラー値を精度よく補間することができる色補間装置および色補間プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の色補間装置は、所定の装置に依存した第１色空間の複数種類の色の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間の複数種類の色の値とを関連づけた色関連情報を記憶する記憶部を有する。また、色補間装置は、前記色関連情報に基づいて、前記第１色空間の各色の離散的な階調の変化に対応する前記第２色空間の色の値の変化の特性を示す特性変化情報を、前記第２色空間の複数種類の色毎に算出する特性変化算出部を有する。また、色補間装置は、前記第２色空間の複数種類の色毎の特性変化情報に基づいて、前記第２色空間の色の値を補間演算する補間演算部を有する。
【発明の効果】
【００１１】
本願の開示する色補間装置の一つの態様によれば、装置に依存しないカラー値を精度よく補間することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、色補間装置の構成を示す図である。
【図２】図２は、本実施例２にかかる色補間装置の構成を示す図である。
【図３】図３は、色関連情報のデータ構造の一例を示す図である。
【図４】図４は、Kに対するL*の変化情報のデータ構造の一例を示す図である。
【図５】図５は、特性値情報のデータ構造の一例を示す図である。
【図６】図６は、Kに対するL*の特性値情報のデータ構造の一例を示す図である。
【図７】図７は、補間条件情報のデータ構造の一例を示す図である。
【図８】図８は、補間対象情報のデータ構造の一例を示す図である。
【図９】図９は、特性値算出部の処理を説明するための図である。
【図１０】図１０は、補間演算部の処理を説明するための図である。
【図１１】図１１は、ラグランジュ補間により補間対象値を算出する場合の一例を説明する図である。
【図１２】図１２は、色補間装置の処理手順を示すフローチャートである。
【図１３】図１３は、実施例にかかる色補間装置を構成するコンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する色補間装置および色補間プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１４】
図１は、色補間装置の構成を示す図である。図１に示すように、この色補間装置５０は、記憶部５１、特性変化算出部５２、補間演算部５３を有する。記憶部５１は、所定の装置に依存した第１色空間の複数種類の色の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間の複数種類の色の値とを関連づけた色関連情報を記憶する。
【００１５】
特性変化算出部５２は、色関連情報に基づいて、第１色空間の各色の離散的な階調の変化に対応する第２色空間の色の値の変化の特性を示す特性情報を、第２色空間の複数種類の色毎に算出する。補間演算部５３は、第２色空間の複数種類の色毎の特性変化情報に基づいて、第２色空間の色の値を補間演算する。
【００１６】
上記色補間装置５０は、第２色空間の色毎の特性変化情報を利用して、第２色空間の色の値を補間演算する。このため、第２色空間の色毎の非線形性特性の影響をそれぞれ取り除くことができ、補間演算の精度を向上させることができる。
【実施例２】
【００１７】
図２は、本実施例２にかかる色補間装置の構成について説明する。図２は、本実施例２にかかる色補間装置の構成を示す図である。図２に示すように、この色補間装置１００は、通信部１１０、入力部１２０ａ、データ読み取り部１２０ｂ、表示部１３０、入出力制御部１４０、記憶部１５０、制御部１６０を有する。
【００１８】
通信部１１０は、他の装置と無線または有線によって接続され、他の装置とデータ通信を実行する。例えば、通信部１１０の一例としては、例えば通信カードが挙げられる。また、他の装置の一例としては、表示装置、プリンタ、スキャナ等が挙げられる。
【００１９】
入力部１２０ａの一例としては、キーボードやマウス、タッチパネル等の入力装置が挙げられる。利用者は、入力部１２０ａを操作して、各種のデータを色補間装置１００に入力する。入力部１２０ａは、受け付けたデータを制御部１６０に出力する。データ読み取り部１２０ｂは、可搬型の記憶媒体に接続し、接続した記憶媒体から各種のデータを読み取る。例えば、データ読み取り部１２０ｂの一例としては、メモリリーダが挙げられる。データ読み取り部１２０ｂは、読み出したデータを制御部１６０に出力する。
【００２０】
表示部１３０は、制御部１６０から受け付けたデータを表示する。表示部１３０の一例としては、例えば、ディスプレイやモニタが挙げられる。入出力制御部１４０は、通信部１１０、入力部１２０ａ、データ読み取り部１２０ｂ、表示部１３０、制御部１６０のデータに対するデータの入出力を制御する処理部である。
【００２１】
記憶部１５０は、制御部１６０に利用される各種のデータを記憶する記憶部である。この記憶部１５０の一例として、例えば、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶装置が挙げられる。この記憶部１５０は、図２に示すように、色関連情報１５０ａ、特性値情報１５０ｂ、補間条件情報１５０ｃ、補間対象情報１５０ｄを記憶する。
【００２２】
このうち、色関連情報１５０ａは、所定の装置に依存した色空間の複数種類の色の階調と、各階調に対応する所定の装置に依存しない色空間の複数種類の色の値とを対応づけた情報である。ここでは一例として、所定の装置に依存した色空間の複数種類の色をC（Cyan）、M（Magenta）、Y（Yellow）、K（Black）とする。また、所定の装置に依存しない色空間の複数種類の色をL*、a*、b*とする。
【００２３】
図３は、色関連情報のデータ構造の一例を示す図である。図３に示すように、この色関連情報１５０ａは、Cに対するL*の変化情報１ａ、Cに対するa*の変化情報１ｂ、Cに対するb*の変化情報１ｃを含む。また、色関連情報１５０ａは、Mに対するL*の変化情報２ａ、Mに対するa*の変化情報２ｂ、Mに対するb*の変化情報２ｃを含む。また、色関連情報１５０ａは、Yに対するL*の変化情報３ａ、Yに対するa*の変化情報３ｂ、Yに対するb*の変化情報３ｃを含む。また、色関連情報１５０ａは、Kに対するL*の変化情報４ａ、Kに対するa*の変化情報４ｂ、Kに対するb*の変化情報４ｃを含む。
【００２４】
Cに対するL*の変化情報１ａは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を記憶する情報である。Cに対するa*の変化情報１ｂは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を記憶する情報である。Cに対するb*の変化情報１ｃは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を記憶する情報である。なお、各変化情報１ａ〜１ｃにおいて、M、Y、Kの階調は０％で固定とする。
【００２５】
Mに対するL*の変化情報２ａは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を記憶する情報である。Mに対するa*の変化情報２ｂは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を記憶する情報である。Mに対するb*の変化情報２ｃは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を記憶する情報である。なお、各変化情報２ａ〜２ｃにおいて、C、Y、Kの階調は０％で固定とする。
【００２６】
Yに対するL*の変化情報３ａは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を記憶する情報である。Yに対するa*の変化情報３ｂは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を記憶する情報である。Yに対するb*の変化情報３ｃは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を記憶する情報である。なお、各変化情報３ａ〜３ｃにおいて、C、M、Kの階調は０％で固定とする。
【００２７】
Kに対するL*の変化情報４ａは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を記憶する情報である。Kに対するa*の変化情報４ｂは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を記憶する情報である。Kに対するb*の変化情報４ｃは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を記憶する情報である。なお、各変化情報４ａ〜４ｃにおいて、C、M、Yの階調は０％で固定とする。
【００２８】
ここでは一例として、Kに対するL*の変化情報４ａのデータ構造の一例について説明する。図４は、Kに対するL*の変化情報のデータ構造の一例を示す図である。図４に示すように、Kに対するL*の変化情報４ａは、Kの各階調０〜１００％に対応するL*の値がそれぞれ記憶されている。
【００２９】
図２の説明に戻る。特性値情報１５０ｂは、所定の装置に依存した色空間の複数種類の色の階調の変化に対応する、所定の装置に依存しない色空間の色の値の変化の特性を記憶する。この特性値情報１５０ｂは、後述の特性値算出部１６０ｂにより作成される。
【００３０】
図５は、特性値情報１５０ｂのデータ構造の一例を示す図である。図５に示すように、この特性値情報１５０ｂは、Cに対するL*の特性値情報５ａ、Cに対するa*の特性値情報５ｂ、Cに対するb*の特性値情報５ｃを含む。また、特性値情報１５０ｂは、Mに対するL*の特性値情報６ａ、Mに対するa*の特性値情報６ｂ、Mに対するb*の特性値情報６ｃを含む。また、特性値情報１５０ｂは、Yに対するL*の特性値情報７ａ、Yに対するa*の特性値情報７ｂ、Yに対するb*の特性値情報７ｃを含む。また、特性値情報１５０ｂは、Kに対するL*の特性値情報８ａ、Kに対するa*の特性値情報８ｂ、Kに対するb*の特性値情報８ｃを含む。
【００３１】
Cに対するL*の特性値情報５ａは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を０〜１００の値に含まれるように正規化した値である。Cに対するL*の特性値情報５ａに含まれる特性値をCL*特性値とする。
【００３２】
Cに対するa*の特性値情報５ｂは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を０〜１００の値に含まれるように正規化した値である。Cに対するa*の特性値情報５ｂに含まれる特性値をCa*特性値とする。
【００３３】
Cに対するb*の特性値情報５ｃは、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Cの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を０〜１００の値に含まれるように正規化した値である。Cに対するb*の特性値情報５ｃに含まれる特性値をCa*特性値とする。
【００３４】
Mに対するL*の特性値情報６ａは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を０〜１００の値に含まれるように正規化した値である。Mに対するL*の特性値情報６ａに含まれる特性値をML*特性値とする。
【００３５】
Mに対するa*の特性値情報６ｂは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を０〜１００の値に含まれるように正規化した値である。Mに対するa*の特性値情報６ｂに含まれる特性値をMa*特性値とする。
【００３６】
Mに対するb*の特性値情報６ｃは、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Mの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を０〜１００の値に含まれるように正規化した値である。Mに対するb*の特性値情報６ｃに含まれる特性値をMb*特性値とする。
【００３７】
Yに対するL*の特性値情報７ａは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を０〜１００の値に含まれるように正規化した値である。Yに対するL*の特性値情報７ａに含まれる特性値をYL*特性値とする。
【００３８】
Yに対するa*の特性値情報７ｂは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を０〜１００の値に含まれるように正規化した値である。Yに対するa*の特性値情報７ｂに含まれる特性値をYa*特性値とする。
【００３９】
Yに対するb*の特性値情報７ｃは、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Yの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を０〜１００の値に含まれるように正規化した値である。Yに対するb*の特性値情報７ｃに含まれる特性値をYb*特性値とする。
【００４０】
Kに対するL*の特性値情報８ａは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するL*の値を０〜１００の値に含まれるように正規化した値である。Kに対するL*の特性値情報８ａに含まれる特性値をKL*特性値とする。
【００４１】
Kに対するa*の特性値情報８ｂは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するa*の値を０〜１００の値に含まれるように正規化した値である。Kに対するa*の特性値情報８ｂに含まれる特性値をKa*特性値とする。
【００４２】
Kに対するb*の特性値情報８ｃは、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応する特性値の値を記憶する情報である。この特性値は、Kの階調を０〜１００％まで１０％ずつ変化させた場合の、各階調に対応するb*の値を０〜１００の値に含まれるように正規化した値である。Kに対するb*の特性値情報８ｃに含まれる特性値をKb*特性値とする。
【００４３】
ここでは一例として、Kに対するL*の特性値情報８ａのデータ構造の一例について説明する。図６は、Kに対するL*の特性値情報のデータ構造の一例を示す図である。図６に示すように、Kに対するL*の特性値情報８ａは、Kの各階調０〜１００％に対応するKL*特性値の値がそれぞれ記憶されている。
【００４４】
図２の説明に戻る。補間条件情報１５０ｃは、C、M、Y、Kの条件と、補間演算に利用する色成分とを対応づけて記憶する。図７は、補間条件情報のデータ構造の一例を示す図である。図７に示すように、この補間条件情報１５０ｃは、CMYK条件と、色成分とを対応づけて記憶する。例えば、CMYK条件がC≧８０、M≦１０、Y≦１０、K≦１０の場合には、色成分b*を補間演算に利用する。この補間条件情報１５０ｃを用いた具体的な処理は後述する。
【００４５】
補間対象情報１５０ｄは、補間演算の対象となるデータである。図８は、補間対象情報のデータ構造の一例を示す図である。図８に示す例では、C、M、Yの階調が５０％の状態において、Kの階調が３０％の場合のL*の値が未知となっている。この未知の値は、後述の補間演算部１６０ｃにより算出される。
【００４６】
続いて、図２に示した制御部１６０の説明を行う。制御部１６０は、補間対象情報１５０ｄに対して補間演算を行う処理部である。この制御部１６０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。また、制御部１６０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００４７】
制御部１６０は、登録部１６０ａ、特性値算出部１６０ｂ、補間演算部１６０ｃを有する。登録部１６０ａは、通信部１１０、入力部１２０ａまたはデータ読み取り部１２０ｂから色関連情報を受け付け、色関連情報を記憶部１５０に登録する処理部である。
【００４８】
特性値算出部１６０ｂは、色関連情報１５０ａに基づいて特性値情報１５０ｂを生成する処理部である。図９は、特性値算出部の処理を説明するための図である。図９では一例として、Kに対するL*値の変化情報４ａからKに対するL*値の特性値情報８ａを生成する場合について説明する。
【００４９】
図９に示すように、特性値算出部１６０ｂは、L*の値が０〜１００の値に含まれるように、L*の各値を正規化する。例えば、正規化した値は、（Ｌ*−Ｌ*ｍｉｎ）÷（Ｌ*ｍａｘ−Ｌ*ｍｉｎ）×１００により求められる。そして、特性値算出部１６０ｂは、正規化した値の大小関係が小さい値から順となるように、必要であれば各正規化した値を１００から引くことで反転し、を反転させた各値をKL*特性値として特定する。特性値算出部１６０ｂは、KL*特性値の小さい値から順に、Kの各階調に割り当てることで、Kに対するL*値の特性値情報８ａを生成する。
【００５０】
特性値算出部１６０ｂは、図９に示した処理と同様にして、他の特性値情報５ａ〜５ｃ，６ａ〜６ｃ，７ａ〜７ｃ，８ｂ，８ｃを、各変化情報１ａ〜１ｃ，２ａ〜２ｃ，３ａ〜３ｃ、４ｂ，４ｃを基に算出する。
【００５１】
図２の説明に戻る。補間演算部１６０ｃは、特性値情報１５０ｂおよび補間条件情報１５０ｃを基にして、補間対象情報１５０ｄの補間演算を実行する処理部である。図１０は、補間演算部の処理を説明するための図である。補間演算部１６０ｃは、補間演算の条件に応じて、最適な特性値情報を特性値情報５ａ〜５ｃ、６ａ〜６ｃ、７ａ〜７ｃ、８ａ〜８ｃから選択した後に、補間演算を実行する。
【００５２】
まず、最適な特性値情報を選択する処理について説明する。具体的には、補間演算部１６０ｃは、M、Y、Kの階調を固定し、Cの階調の変化に応じて変化するL*値に対して補間演算を実行する場合には、Cに対するL*の特性値情報５ａを選択する。補間演算部１６０ｃは、M、Y、Kの階調を固定し、Cの階調の変化に応じて変化するa*値に対して補間演算を実行する場合には、Cに対するa*の特性値情報５ｂを選択する。M、Y、Kの階調を固定し、Cの階調の変化に応じて変化するb*値に対して補間演算を実行する場合には、Cに対するb*の特性値情報５ｃを選択する。
【００５３】
補間演算部１６０ｃは、C、Y、Kの階調を固定し、Mの階調の変化に応じて変化するL*値に対して補間演算を実行する場合には、Mに対するL*の特性値情報６ａを選択する。補間演算部１６０ｃは、C、Y、Kの階調を固定し、Mの階調の変化に応じて変化するa*値に対して補間演算を実行する場合には、Mに対するa*の特性値情報６ｂを選択する。補間演算部１６０ｃは、C、Y、Kの階調を固定し、Mの階調の変化に応じて変化するb*値に対して補間演算を実行する場合には、Mに対するb*の特性値情報６ｃを選択する。
【００５４】
補間演算部１６０ｃは、C、M、Kの階調を固定し、Yの階調の変化に応じて変化するL*値に対して補間演算を実行する場合には、Yに対するL*の特性値情報７ａを選択する。補間演算部１６０ｃは、C、M、Kの階調を固定し、Yの階調の変化に応じて変化するa*値に対して補間演算を実行する場合には、Yに対するa*の特性値情報７ｂを選択する。補間演算部１６０ｃは、C、M、Kの階調を固定し、Yの階調の変化に応じて変化するb*値に対して補間演算を実行する場合には、Yに対するb*の特性値情報７ｃを選択する。
【００５５】
補間演算部１６０ｃは、C、M、Yの階調を固定し、Kの階調の変化に応じて変化するL*値に対して補間演算を実行する場合には、Kに対するL*の特性値情報８ａを選択する。補間演算部１６０ｃは、C、M、Yの階調を固定し、Kの階調の変化に応じて変化するa*値に対して補間演算を実行する場合には、Kに対するa*の特性値情報８ｂを選択する。補間演算部１６０ｃは、C、M、Yの階調を固定し、Kの階調の変化に応じて変化するb*値に対して補間演算を実行する場合には、Kに対するb*の特性値情報８ｃを選択する。
【００５６】
図１０では一例として、C、M、Yの階調を５０％に固定し、Kの階調の変化に応じて変化するL*値に対して補間演算を実行する場合について説明する。この場合には、補間演算部１６０ｃは、最適な特性値情報として、Kに対するL*の特性値情報８ａを選択される。
【００５７】
続いて、補間演算部１６０ｃが最適な特性値情報を利用して補間演算を実行する処理について説明する。補間演算部１６０ｃは、Kに対するL*の特性値情報８ａを選択した後に、Kの階調をキーにして、KL*特性値とL*の値とを対応づける。KL*特性値は、図９に示したように、Kに対するL*の特性値情報８ａに含まれる情報である。以下の説明において、補間演算の対象となる値を補間対象値と表記する。図１０に示す例では、Kの階調が３０％となる場合のL*の値を補間対象値とする。
【００５８】
補間演算部１６０ｃは、補間対象値の直近の前後の値の差分を算出する。補間演算部１６０ｃは、差分が閾値以上の場合には、最適な特性値情報を利用して、補間対象値の値を求める。これに対して、補間演算部１６０ｃは、差分が所定の閾値未満の場合には、ラグランジュ補間を利用して、補間対象値の値を求める。
【００５９】
まず、差分が閾値以上の場合における補間演算部１６０ｃの処理について説明する。この場合には、補間演算部１６０ｃは、補間対象値に対応する特性値が、直近の前後の特性値の間のどの位置にあるのかを示す比率を算出する。この比率は、式（１）により算出される。
【００６０】
比率＝（Ａ１−Ａ２）／（Ａ３−Ａ２）・・・（１）
【００６１】
式（１）において、Ａ１は、補間対象値に対応する特性値を示す。Ａ２は、Ａ１より前の直近の特性値に対応する。Ａ３は、Ａ１より後の直近の特性値に対応する。図１０に示す例では、Ａ１は「３４．６８」、Ａ２は「１４．９３」、Ａ３は「５２．６７」となる。式（１）に上記Ａ１〜Ａ３の値を代入すると、比率は約「０．５２３」となる。
【００６２】
補間演算部１６０ｃは、式（１）で求めた比率を利用して、補間対象値を算出する。補間演算部１６０ｃは、式（２）を利用して、補間演算値を算出する。
【００６３】
補間対象値＝Ｂ１−（Ｂ１−Ｂ２）×比率・・・（２）
【００６４】
式（２）において、Ｂ１は、補間対象値より前の直近の値に対応する。Ｂ２は、補間対象値より後の直近の値に対応する。図１０に示す例では、Ｂ１は「４８．７１」、Ｂ２は「３９．９６」となる。式（２）に上記Ｂ１，Ｂ２の値を代入すると、補間対象値は約「４４．１３」となる。
【００６５】
続いて、差分が閾値未満の場合における補間演算部１６０ｃの処理について説明する。差分が閾値未満の場合には、ラグランジュ補間を利用して補間対象値を算出する。図１１は、ラグランジュ補間により補間対象値を算出する場合の一例を説明する図である。図１１に示す例では、Cの階調が３０％となる場合のL*の値を補間対象値とする。
【００６６】
補間演算部１６０ｃは、ラグランジュ補間の公式を利用して、補間対象値を算出する。具体的に、補間対象値は、
【数１】
0005545008.tif 000002
により算出される。式（３）を実行することで、補間対象値「４６．６６７」が算出される。上記処理を行うことで、補間演算部１６０ｃは補間対象値の値を算出することができる。
【００６７】
ところで、補間演算部１６０ｃは、図７に示した補間条件情報１５０ｃを基にして、最適な特性値情報を選択してもよい。例えば、補間対象となる色が赤系統または緑系統の場合には、a*の特性値情報を利用した方が補間精度がよく、補間対象となる色が青系統または黄系統の場合には、b*の特性値情報を利用した方が補間精度がよいことが知られている。
【００６８】
例えば、C≧８０、M≦１０、Y≦１０、K≦１０の範囲で補間演算を実行する場合には、b*の特性情報を優先的に選択する。即ち、L*、a*の特性情報は用いなくてもよい。一例を示すと、補間演算部１６０ｃは、Cの階調が８０％、Mの階調が１０％、Yの階調が１０％に固定され、Kの階調が０〜１０％の間で変化するL*、a*、b*のいずれかに対して補間演算を行う場合には、Kに対するb*値の特性値情報４ｃを選択する。
【００６９】
また、M≧８０、C≦２０、Y≦２０、K≦２０の範囲で補間演算を実行する場合には、a*の特性情報を優先的に選択する。即ち、L*、b*の特性情報は用いなくてもよい。一例を示すと、補間演算部１６０ｃは、Mの階調が８０％、Cの階調が２０％、Yの階調が２０％に固定され、Kの階調が０〜２０％の間で変化するL*、a*、b*のいずれかに対して補間演算を行う場合には、Kに対するa*値の特性値情報４ｂを選択する。
【００７０】
また、Y≧８０、C≦１０、M≦１０、K≦１０の範囲で補間演算を実行する場合には、b*の特性情報を優先的に選択する。即ち、L*、a*の特性情報は用いなくてもよい。一例を示すと、補間演算部１６０ｃは、Yの階調が８０％、Cの階調が１０％、Mの階調が１０％に固定され、Kの階調が０〜１０％の間で変化するL*、a*、b*のいずれかに対して補間演算を行う場合には、Kに対するb*値の特性値情報４ｃを選択する。
【００７１】
また、K≧０、C＝０、M＝０、Y＝０の範囲で補間演算を実行する場合には、L*の特性情報を優先的に選択する。即ち、a*、b*の特性情報は用いなくてもよい。一例を示すと、補間演算部１６０ｃは、Cの階調が０％、Mの階調が０％、Yの階調が０％に固定され、Kの階調が０〜１００％の間で変化するL*、a*、b*のいずれかに対して補間演算を行う場合には、Kに対するL*値の特性値情報４ａを選択する。
【００７２】
次に、本実施例２にかかる色補間装置１００の処理手順について説明する。図１２は、色補間装置の処理手順を示すフローチャートである。図１２に示す処理は、例えば、記憶部１５０に色関連情報および補間対象情報１５０ｄが記憶部１５０に記憶された場合に実行される。
【００７３】
図１２に示すように、色補間装置１００は、色関連情報を取得し（ステップＳ１０１）、特性値情報を算出し（ステップＳ１０２）、補間対象値を選択する（ステップＳ１０３）。色補間装置１００は、補間対象値において、直近の前後の特性値を取得する（ステップＳ１０４）。
【００７４】
色補間装置１００は、直近の前後の特性値の変化幅が閾値未満か否かを判定する（ステップＳ１０５）。色補間装置１００は、変化幅が閾値未満の場合には（ステップＳ１０５，Ｙｅｓ）、ラグランジュ補間を実行し（ステップＳ１０６）、ステップＳ１０９に移行する。
【００７５】
一方、色補間装置１００は、変化幅が閾値以上の場合には（ステップＳ１０５，Ｎｏ）、比率を算出し（ステップＳ１０７）、補間対象値を算出する（ステップＳ１０８）。ステップＳ１０７において、色補間装置１００は、式（１）を利用して比率を算出する。ステップＳ１０８において、色補間装置１００は、式（２）を利用して補間対象値を算出する。
【００７６】
色補間装置１００は、処理を終了する場合には（ステップＳ１０９，Ｙｅｓ）、処理を終了する。一方、色補間装置１００は、処理を継続する場合には（ステップＳ１０９，Ｎｏ）、次の補間対象値を選択し（ステップＳ１１０）、再度ステップＳ１０４に移行する。
【００７７】
次に、本実施例２に示した色補間装置１００の効果について説明する。色補間装置１００は、L*、a*、b*毎の特性値を算出し、L*、a*、b*毎の特性値を利用して補間演算する。このため、L*、a*、b*毎の非線形特性の影響をそれぞれ取り除くことができ、補間演算の精度を向上させることができる。
【００７８】
また、色補間装置１００は、補間対象値の直近の前後の値の差分を算出し、差分と閾値との比較結果に応じて補間演算の算出法を選択し、選択した補間演算を実行する。具体的には、色補間装置１００は、差分が閾値以上の場合には、上記式（１）、（２）を用いた補間演算を行う。これに対して、色補間装置１００は、差分が閾値未満の場合には、非線形性の影響を受けにくいので、式（１）、（２）の補間演算よりも処理が軽いラグランジュ補間を実行する。このため、補間演算の精度を保ちつつ、状況に応じて処理負荷を軽減させることができる。
【００７９】
また、色補間装置１００は、補間条件情報１５０ｃとCMYKの階調の組み合わせとを基にして、補間演算に利用する特性値情報を判定する。このため、補間対象となる色の特性に合った特性値情報を利用することができ、補間精度をより向上させることができる。
【００８０】
ところで、特性値算出部１６０ｂは、色関連情報を正規化することで、特性値情報１５０ｂを作成していた。ここで、正規化前の色の値の変化幅、即ち正規化前の色の値の最大値と最小値との幅が閾値未満の場合には、わずかな変化幅が０〜１００の値に引き延ばされてしまうため、この色の特性情報を用いると、補間演算の精度が低下する場合がある。このため、色補間装置１００は、正規化前の色の値の変化幅が閾値未満となる色以外に対応する特性値情報を利用することで、補間演算の精度が低下することを防止することができる。
【００８１】
また、特性値算出部１６０ｂは、特性値情報１０５ｂのうち、特性値が単一の方向に変化する特性値情報を利用して、補間演算を実行してもよい。例えば、特性値がプラス方向およびマイナス方向に変化する特性値情報よりも、特性値が単調増加または単調減少する特性値情報の方が信頼性が高いため、より補間演算の精度を向上させることができる。
【００８２】
上述した実施例では一例として、ＣＭＹＫ値を用いて補間演算を行う場合について説明を行ったが、Ｒ（Red）Ｇ（Green）Ｂ（Blue）値でも同様に補間演算を行うことができる。
【００８３】
色補間装置１００は、既知のパーソナルコンピュータ、ワークステーション、携帯電話、ＰＨＳ端末、移動体通信端末またはＰＤＡなどの情報処理装置に、色補間装置１００の各機能を搭載することによって実現することもできる。
【００８４】
図１３は、実施例にかかる色補間装置を構成するコンピュータのハードウェア構成を示す図である。図１３に示すように、このコンピュータ２００は、各種演算処理を実行するＣＰＵ（Central  Processing  Unit）２０１と、ユーザからのデータの入力を受け付ける入力装置２０２と、モニタ２０３を有する。また、コンピュータ２００は、記憶媒体からプログラム等を読取る媒体読み取り装置２０４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置２０５を有する。また、コンピュータ２００は、各種情報を一時記憶するＲＡＭ（Random  Access  Memory）２０６と、ハードディスク装置２０７を有する。各装置２０１〜２０７は、バス２０８に接続される。
【００８５】
そして、ハードディスク装置２０７には、図２に示した登録部１６０ａ、特性値算出部１６０ｂ、補間演算部１６０ｃに対応する補間演算プログラム２０７ａを記憶する。また、ハードディスク装置２０７は、各種データ２０７ｂを記憶する。この各種データ２０７ｂは、図２の各種データ１５０ａ〜１５０ｄに対応する。
【００８６】
ＣＰＵ２０１が補間演算プログラム２０７ａをハードディスク装置２０７から読み出してＲＡＭ２０６に展開することにより、補間演算プログラム２０７ａは、補間演算プロセス２０６ａとして機能するようになる。また、ＣＰＵ２０１は、各種データ２０７ｂを読み出して、ＲＡＭ２０６に格納する。補間演算プロセス２０６ａは、各種データ２０６ｂを利用して補間演算を実行する。
【００８７】
なお、上記の補間演算プログラム２０７ａは、必ずしもハードディスク装置２０７に格納されている必要はない。例えば、ＣＤ−ＲＯＭ等の記憶媒体に記憶された補間演算プログラム２０７ａを、コンピュータ２００が読み出して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等にこの補間演算プログラム２０７ａを記憶させておいてもよい。この場合、コンピュータ２００がこれらから補間演算プログラム２０７ａを読み出して実行するようにしてもよい。
【００８８】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８９】
（付記１）所定の装置に依存した第１色空間の複数種類の色の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間の複数種類の色の値とを関連づけた色関連情報を記憶する記憶部と、
前記色関連情報に基づいて、前記第１色空間の各色の離散的な階調の変化に対応する前記第２色空間の色の値の変化の特性を示す特性変化情報を、前記第２色空間の複数種類の色毎に算出する特性変化算出部と、
前記第２色空間の複数種類の色毎の特性変化情報に基づいて、前記第２色空間の色の値を補間演算する補間演算部と
を備えたことを特徴とする色補間装置。
【００９０】
（付記２）前記補間演算部は、補間演算対象となる前記第２色空間の色の値の前後の値の変化幅が閾値以上か否かを判定し、前記変化幅が閾値未満の場合には、所定の補間法を用いて前記第２色空間の色の値を補間演算することを特徴とする付記１に記載の色補間装置。
【００９１】
（付記３）前記補間演算部は、前記第１色空間の複数種類の色の階調の組み合わせに応じて、補間演算を行う場合の前記特性変化情報を特定し、特定した特性変化情報に基づいて、前記第１色空間の色の階調に対応する前記第２色空間の色の値を補間演算することを特徴とする付記１または２に記載の色補間装置。
【００９２】
（付記４）前記補間演算部は、各特性変化情報のうち、前記第２色空間の色の最大値と最小値との幅が閾値以上となる色の特性変化情報を利用して、補間演算することを特徴とする付記１、２または３に記載の色補間装置。
【００９３】
（付記５）前記補間演算部は、各特性変化情報のうち、単一の方向に特性値が変化する特性変化情報を利用して、補間演算することを特徴とする付記１〜４のいずれか一つに記載の色補間装置。
【００９４】
（付記６）コンピュータに、
所定の装置に依存した第１色空間の複数種類の色の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間の複数種類の色の値とを関連づけた色関連情報を記憶した記憶装置を参照し、前記色関連情報に基づいて、前記第１色空間の各色の離散的な階調の変化に対応する前記第２色空間の色の値の変化の特性を示す特性変化情報を、前記第２色空間の複数種類の色毎に算出する特性変化算出手順と、
前記第２色空間の複数種類の色毎の特性変化情報に基づいて、前記第２色空間の色の値を補間演算する補間演算手順と
を実行させることを特徴とする色補間プログラム。
【００９５】
（付記７）前記補間演算手順は、補間演算対象となる前記第２色空間の色の値の前後の値の変化幅が閾値以上か否かを判定し、前記変化幅が閾値未満の場合には、所定の補間法を用いて前記第２色空間の色の値を補間演算することを特徴とする付記６に記載の色補間プログラム。
【００９６】
（付記８）前記補間演算手順は、前記第１色空間の複数種類の色の階調の組み合わせに応じて、補間演算を行う場合の前記特性変化情報を特定し、特定した特性変化情報に基づいて、前記第１色空間の色の階調に対応する前記第２色空間の色の値を補間演算することを特徴とする付記６または７に記載の色補間プログラム。
【００９７】
（付記９）前記補間演算手順は、各特性変化情報のうち、前記第２色空間の色の最大値と最小値との幅が閾値以上となる色の特性変化情報を利用して、補間演算することを特徴とする付記６、７または８に記載の色補間プログラム。
【００９８】
（付記１０）前記補間演算手順は、各特性変化情報のうち、単一の方向に特性値が変化する特性変化情報を利用して、補間演算することを特徴とする付記６〜９のいずれか一つに記載の色補間プログラム。
【００９９】
（付記１１）色補間装置が、
所定の装置に依存した第１色空間の複数種類の色の離散的な階調と、各階調に対応する所定の装置に依存しない第２色空間の複数種類の色の値とを関連づけた色関連情報を記憶した記憶装置を参照し、前記色関連情報に基づいて、前記第１色空間の各色の離散的な階調の変化に対応する前記第２色空間の色の値の変化の特性を示す特性変化情報を、前記第２色空間の複数種類の色毎に算出する特性変化算出ステップと、
前記第２色空間の複数種類の色毎の特性変化情報に基づいて、前記第２色空間の色の値を補間演算する補間演算ステップと
を含んだことを特徴とする色補間方法。
【０１００】
（付記１２）前記補間演算ステップは、補間演算対象となる前記第２色空間の色の値の前後の値の変化幅が閾値以上か否かを判定し、前記変化幅が閾値未満の場合には、所定の補間法を用いて前記第２色空間の色の値を補間演算することを特徴とする付記１１に記載の色補間方法。
【０１０１】
（付記１３）前記補間演算ステップは、前記第１色空間の複数種類の色の階調の組み合わせに応じて、補間演算を行う場合の前記特性変化情報を特定し、特定した特性変化情報に基づいて、前記第１色空間の色の階調に対応する前記第２色空間の色の値を補間演算することを特徴とする付記１１または１２に記載の色補間方法。
【０１０２】
（付記１４）前記補間演算ステップは、各特性変化情報のうち、前記第２色空間の色の最大値と最小値との幅が閾値以上となる色の特性変化情報を利用して、補間演算することを特徴とする付記１１、１２または１３に記載の色補間方法。
【０１０３】
（付記１５）前記補間演算ステップは、各特性変化情報のうち、単一の方向に特性値が変化する特性変化情報を利用して、補間演算することを特徴とする付記１１〜１４のいずれか一つに記載の色補間方法。
【符号の説明】
【０１０４】
５０    色補間装置
５１    記憶部
５２    特性変化算出部
５３    補間演算部
【図１】
0005545008.tif 000003
【図２】
0005545008.tif 000004
【図３】
0005545008.tif 000005
【図４】
0005545008.tif 000006
【図５】
0005545008.tif 000007
【図６】
0005545008.tif 000008
【図７】
0005545008.tif 000009
【図８】
0005545008.tif 000010
【図９】
0005545008.tif 000011
【図１０】
0005545008.tif 000012
【図１１】
0005545008.tif 000013
【図１２】
0005545008.tif 000014
【図１３】
0005545008.tif 000015