(57)【要約】【課題】階調反転領域があるデバイスに対して変換の精度を維持しつつ処理速度を向上させ、且つ逆変換の際に階調反転の悪化を抑制して色再現性を向上させる。【解決手段】制御部２１２は、入力デバイスに依存するＲＧＢ色空間の色データから、入力デバイスに依存するＲＧＢ色空間の色データに変換する際に階調が反転する領域を、出力デバイスの色域から検出する。そして、制御部２１２は、検出した領域を上記色域から除去する。色知覚モデル逆変換部１０６（１０７）は、入力デバイス及び出力デバイスに依存しないＸＹＺ色空間の色データから出力デバイスに依存するＲＧＢ色空間の色データに逆変換する。色知覚モデル逆変換部１０６（１０７）は、逆変換の際に、制御部２１２によって上記領域が除去された色域に限定して、出力デバイスに依存するＲＧＢ色空間の色データに変換する。【選択図】図２
2011004074.tif 000002
【特許請求の範囲】
【請求項１】
入力装置及び出力装置に依存しない第１の色空間を介して、前記入力装置に依存する第２の色空間の色データから前記出力装置に依存する第３の色空間の色データに変換する画像処理装置であって、
前記第２の色空間の色データから前記第３の色空間の色データに変換する際に階調が反転する領域を、前記出力装置の色域から検出する検出手段と、
前記検出手段により検出された前記領域を前記色域から除去する除去手段と、
前記第１の色空間の色データから前記第３の色空間の色データに変換する逆変換手段とを有し、
前記逆変換手段は、前記領域が除去された前記色域に限定して前記第３の色空間の色データに変換することを特徴とする画像処理装置。
【請求項２】
前記逆変換手段は、
前記第３の色空間の色データから解の候補となる色データを決定する決定手段と、
前記決定手段により決定された色データを前記第１の色空間の色データに変換する順変換手段と、
前記順変換手段より出力される色データと前記逆変換手段に入力される前記第１の色空間の色データとの差分を算出する差分算出手段とを含み、
前記差分算出手段により算出された差分が所定の閾値より小さい場合、前記第１の色空間の色データを前記決定手段により決定された前記第３の色空間の色データに変換して出力することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記領域が除去された前記色域に該当する色データから解の候補となる色データを決定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記検出手段は、
前記色域を四面体に分割する分割手段と、
前記分割手段により分割された各四面体の体積を算出する体積算出手段とを含み、
前記体積算出手段により算出された体積に基づいて前記領域を検出することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
入力装置及び出力装置に依存しない第１の色空間を介して、前記入力装置に依存する第２の色空間の色データから前記出力装置に依存する第３の色空間の色データに変換する画像処理方法であって、
前記第２の色空間の色データから前記第３の色空間の色データに変換する際に階調が反転する領域を、前記出力装置の色域から検出する検出ステップと、
前記検出ステップにより検出された前記領域を前記色域から除去する除去ステップと、
前記第１の色空間の色データから前記第３の色空間の色データに変換する逆変換ステップとを有し、
前記逆変換ステップは、前記領域が除去された前記色域に限定して前記第３の色空間の色データに変換することを特徴とする画像処理方法。
【請求項６】
入力装置及び出力装置に依存しない第１の色空間を介して、前記入力装置に依存する第２の色空間の色データから前記出力装置に依存する第３の色空間の色データに変換する画像処理方法をコンピュータに実行させるためのプログラムであって、
前記第２の色空間の色データから前記第３の色空間の色データに変換する際に階調が反転する領域を、前記出力装置の色域から検出する検出ステップと、
前記検出ステップにより検出された前記領域を前記色域から除去する除去ステップと、
前記第１の色空間の色データから前記第３の色空間の色データに変換する逆変換ステップとをコンピュータに実行させ、
前記逆変換ステップは、前記領域が除去された前記色域に限定して前記第３の色空間の色データに変換することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力装置及び出力装置に依存しない色空間を介して、入力装置に依存する色空間の色データから出力装置に依存する色空間の色データに変換する技術に関するものである。
【背景技術】
【０００２】
今日、コンピュータの発達と共にデジタル画像データがごく一般的に流通している。デバイス間のカラー表現の差異を配慮して、入力画像データを使用デバイスに適切な色信号に変換するカラーマッチングが知られている。
【０００３】
デバイスの色域が異なる表示媒体間において、色域の相違を吸収すると共に表示画像の知覚的一致を図るための技術として、Ｌ＊ａ＊ｂ＊空間あるいはＪＣｈ空間等において、ある色域を別の色域内へ写像するガマットマッピング技術が存在する。従来、ガマットマッピング技術の手法としては、
（１）色域全体を線形に写像する方法
（２）色域外の色だけを色域の表面に写像する方法
（３）色域内では元の色を保存するためにできる限り圧縮せず、色域外の色は例えばＬ軸上の一点を目標点として、色域の高彩度部へ圧縮することにより階調性を保つ方法
等が知られている。
【０００４】
図１３は、カラーマッチング色空間の模式図である。図１３において、入力系装置の色再現範囲最外郭５００１上にある点Ｓは入力系装置の最大彩度色を示し、点Ｓ´は色域圧縮によって変換された点Ｓの色に対応する出力系装置の色を示す。同１３に示されるように、点Ｓが示す色は入力系装置における最大彩度の色であるにもかかわらず、点Ｓ´が示す色は出力系装置における最大彩度の色ではない。そのため、例えば、入力系装置において点Ｓよりも彩度の小さい点Ｔが示す色が、出力系装置では点Ｓ´よりも彩度の大きい点Ｔ´が示す色に変換され、彩度の逆転が生じてしまう。
【０００５】
この課題を解決するために、図１４における斜線の領域１０２を色域として使わないことにより彩度の逆転を抑制する方法が提案されている（例えば、特許文献１参照）。
【０００６】
図１４の例では、入力系装置の色再現範囲最外郭１０１上にある最大彩度色Ｓについて、これを出力系装置の色再現範囲内に圧縮した色の彩度Ｓ´を取得する。そして、出力系装置の色再現範囲において点Ｓ´よりも彩度の大きい斜線の領域を削除して、出力系装置の色再現範囲最外郭１０２を１０３に修正する。これにより、入力系装置における最大彩度色に対応する出力系装置の色が出力系装置における最大彩度の色となるため、色変換による彩度の逆転を抑制することができる。
【０００７】
また、従来は適切な総のり量を超える色材量を用いて画像出力すると、例えば出力された媒体が湿っぽくなったり、しわがよってしまったり、媒体から色材がはがれたりする問題があった。これは、メディアタイプや印刷品位に応じて最適な総のり量は異なるためである。この問題を解決するために、プロファイル作成時に最適な総のり量をプロファイルに記載して、逆変換時に指定した総のり量を読みとって総のり量を動的に制限することで、最適な印刷を行うことを可能とするものがある（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−６０４２０号公報
【特許文献２】特開２００６−２２９４５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
一般的に、色域表面付近、例えば図１３の斜線で示す部分５００２ではデバイスの特性が不安定であり、階調反転しやすいことが知られている。
【００１０】
特許文献１に開示される技術は、入力系装置と出力系装置の組み合わせに応じて、デバイスの色再現範囲最外郭を変更することで、ガマットマッピング後の彩度の反転を防ぐことが可能である。
【００１１】
また、特許文献２に開示される技術は、最適な総のり量をプロファイルに記載して、逆変換時に指定した総のり量を読みとって総のり量を動的に制限することで、最適な印刷を行うことが可能である。
【００１２】
しかしながら、いずれも、図１３の斜線で示す色域表面付近５００２で発生するデバイスの特性の階調反転による逆変換への影響を防ぐことができず、色再現性が悪化するという問題があった。逆変換において、デバイスの特性に階調反転がある場合の問題について以下に説明する。
【００１３】
デバイスの特性は、図１５（Ａ）に示すように、均等色空間上のＬＵＴとして表すことができる。図１５（Ａ）は均等色空間としてＪａｂ色空間を使用する。Ｊａｂ色空間とは極座標系であるＪＣｈ色空間を直行座標系で表したものとする。なお、ＸＹＺ、Ｌａｂ、Ｌｕｖ色空間等々、他の色空間でも構わない。
【００１４】
図１５（Ａ）は５グリッドの場合を表しており、反転領域がない場合である。図１５（Ｂ）内は階調反転がある場合であり、図１５（Ａ）と比較すると図１５（Ｂ）内の点線の楕円で囲むワイヤーが交差しており、階調反転していることを示している。
【００１５】
図１５（Ｂ）に示す点線の楕円で囲む反転領域が逆変換の入力値である場合に、例えばその近辺の値が連続するようなグラデーション画像を逆変換すると、デバイスに依存する出力値は反転することになり、疑似輪郭や階調飛び等として現れ、色再現性が悪化する。
【００１６】
階調反転があるところに平滑化を行うことによっても、階調性を向上させることができるが、一般的に平滑化を行うと変換の精度が悪くなる。
【００１７】
また、逆変換においてニュートン法等の繰り返し演算を行う場合に、階調反転している領域で解の候補が求まると、次の解の候補の探索に失敗するため、収束しにくくなり、そのため処理時間が増大するという問題があった。
【００１８】
そこで、本発明の目的は、階調反転領域があるデバイスに対して変換の精度を維持しつつ処理速度を向上させ、且つ逆変換の際に階調反転の悪化を抑制して色再現性を向上させることにある。
【課題を解決するための手段】
【００１９】
本発明の画像処理装置は、入力装置及び出力装置に依存しない第１の色空間を介して、前記入力装置に依存する第２の色空間の色データから前記出力装置に依存する第３の色空間の色データに変換する画像処理装置であって、前記第２の色空間の色データから前記第３の色空間の色データに変換する際に階調が反転する領域を、前記出力装置の色域から検出する検出手段と、前記検出手段により検出された前記領域を前記色域から除去する除去手段と、前記第１の色空間の色データから前記第３の色空間の色データに変換する逆変換手段とを有し、前記逆変換手段は、前記領域が除去された前記色域に限定して前記第３の色空間の色データに変換することを特徴とする。
【発明の効果】
【００２０】
本発明によれば、階調反転領域があるデバイスに対して変換の精度を維持しつつ処理速度を向上させ、且つ逆変換の際に階調反転の悪化を抑制して色再現性を向上させることが可能となる。
【図面の簡単な説明】
【００２１】
【図１】実施形態における色知覚モデルを用いたカラーマッチングの処理の概念を説明するための図である。
【図２】実施形態に係るカラーマッチングモジュールの機能構成を示すブロック図である。
【図３】図２に示すカラーマッチングモジュールを実現するハードウェア構成例を示すブロック図である。
【図４】図２に示すカラーマッチングモジュールに関わる主要なデータ構成を示す図である。
【図５】単位格子である四面体の体積を計算する方法を説明するための図である。
【図６】ステップＳ１２０１における階調反転を判定する処理を示すフローチャートである。
【図７】ニュートン法を用いて解の候補を決定する処理を示すフローチャートである。
【図８】色変換の処理の流れを示すフローチャートである。
【図９】図８のステップＳ１２０３における画像を変換する処理の詳細を示すフローチャートである。
【図１０】ステップＳ１３０５の逆変換処理の詳細を示すフローチャートである。
【図１１】繰り返し演算部によって解かれる行列を示す図である。
【図１２】ステップＳ７０３において利用する解の候補の集合であるＲＧＢ値の集合の一例を示す図である。
【図１３】カラーマッチング色空間の模式図である。
【図１４】特許文献１の図２を示す図である。
【図１５】デバイスの特性を表す均等色空間上のＬＵＴを示すとともに、デバイスの特性を表すＬＵＴが階調反転していることを示す図である。
【発明を実施するための形態】
【００２２】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００２３】
図１は、本実施形態における、色知覚モデルを用いたカラーマッチングの処理の概念を説明するための図である。
【００２４】
図１において、１０１は、入力デバイス（入力系装置）に依存するＲＧＢ色空間又はＣＭＹＫ色空間の色信号（色データ）を、入力側の環境光の白色点基準に基づく入力デバイスに依存しないＸＹＺ色空間の色信号（色データ）へ変換するための変換マトリクス又は変換ルックアップテーブル（ＬＵＴ）である。なお、入力デバイスは、入力装置の適用例となる構成である。また、上記ＲＧＢ色空間又はＣＭＹＫ色空間の色信号は、第２の色空間の適用例となる構成である。
【００２５】
１０４及び１０５は、入力観察条件に基づいて人間の知覚信号ＪＣＨ又はＱＭＨへ変換を行う色知覚モデル順変換部である。
【００２６】
１０６及び１０７は、出力観察条件に基づいて人間の知覚信号ＪＣＨ又はＱＭＨより出力デバイス（出力系装置）に依存しないＸＹＺ色空間の色信号へ変換する色知覚モデル逆変換部である。なお、上記ＸＹＺ色空間は、第１の色空間の適用例となる構成である。
【００２７】
１０８は、出力側の環境光の白色点基準に基づく出力デバイスに依存しない色空間データより出力デバイスに依存する色信号へ変換するための変換マトリクス又は変換ルックアップテーブル（ＬＵＴ）である。１０２及び１０３は、入力色空間値を出力デバイスの色再現範囲に応じた色空間値に変換を行う色空間変換部である。出力デバイスは、出力装置の適用例となる構成である。
【００２８】
ＲＧＢ又はＣＭＹＫの入力色信号は、変換マトリクス又は変換ＬＵＴ１０１により入力デバイスの色信号から入力観察条件における入力デバイスに依存しない色信号であるＸＹＺ信号へ変換される。次に、ＸＹＺ信号は、色知覚モデル順変換部１０４及び１０５により入力観察条件（観察条件１：Ｄ５０光源の白色点、照度レベル、周囲光の状態等）に基づいて人間の知覚信号ＪＣＨ又はＱＭＨへ変換される。相対的カラーマッチングの場合はＪＣＨ空間が選択され、絶対的カラーマッチングの場合はＱＭＨ空間が選択される。
【００２９】
色知覚信号ＪＣＨ及びＱＭＨは、色空間変換部１０２又は１０３により出力デバイスの色再現範囲内へ圧縮される。圧縮後の色知覚信号ＪＣＨ及びＱＭＨは、色知覚モデル逆変換部１０６（１０７）により、出力観察条件（観察条件２：Ｄ６５光源の白色点、照度レベル、周囲光の状態等）に基づいて出力デバイスに依存しないＸＹＺ色空間の色信号であるＸＹＺ信号へ変換される。そして、ＸＹＺ信号は、変換マトリクス又は変換ＬＵＴ１０８により出力デバイスに依存するＲＧＢ色空間又はＣＭＹＫ色空間の色信号であるＲＧＢ信号又はＣＭＹＫ信号へ変換される。なお、上記出力デバイスに依存する色信号のＲＧＢ色空間又はＣＭＹＫ色空間は、第３の色空間の適用例となる構成である。
【００３０】
以上の処理によって得られたＲＧＢ又はＣＭＹＫ信号は出力デバイスへ送られて、その色信号によって示される画像が出力される。出力結果であるプリント物あるいは画面表示は出力観察条件下で観察すれば、入力観察条件下で観察されるオリジナル原稿と同じ色味に見える。
【００３１】
なお、一般に観察条件における環境光の白色点は、カラーターゲットやカラーパッチ等の色票を測色した際の標準光源の白色点とは異なる。例えば、測色の際に使用される標準光源はＤ５０やＤ６５であるが、実際に画像を観察する場合の環境光はライトブースのＤ５０やＤ６５とは限らず、白熱電球や蛍光灯等の照明光や、照明光と太陽光とが混合した光になる場合が多い。以下の説明では、簡単化のために、観察条件における環境光の光源特性をＤ５０、Ｄ６５及びＤ９３とするが、実際にはメディア上の白色点のＸＹＺ値を白色点として設定する。
【００３２】
図２は、本実施形態に係るカラーマッチングモジュールの機能構成を示すブロック図である。図２においては、図１と等価な構成は同一符号を用いている。なお、図２に示すカラーマッチングモジュールは、画像処理装置の適用例となる構成である。
【００３３】
２０１は、変換マトリクス又は変換ＬＵＴ１０１を用いて、入力デバイスに依存する色信号（ＲＧＢやＣＭＹＫ）を入力デバイスに依存しない色空間データ（ＸＹＺ）へ変換を行う入力変換部である。入力変換部２０１は、デバイス情報より測色値を取得して変換マトリクス又は変換ＬＵＴ１０１を生成する機能、及び、入力観察条件（観察条件１）を色知覚モデル順変換部１０４（１０５）へ提供する機能を有する。デバイス情報は、デバイス色信号と入力デバイスに依存しない色空間データ（ＸＹＺ）との対応関係を示す情報である。
【００３４】
２０２は、変換マトリクス又は変換ＬＵＴ１０８を用いて、出力デバイスに依存しない色空間データ（ＸＹＺ）を出力デバイスに依存する色信号（ＲＧＢやＣＭＹＫ）へ変換する出力変換部である。出力変換部２０２は、デバイス情報から変換マトリクス又は変換ＬＵＴ１０８を生成する機能、出力観察条件（観察条件２）を色知覚モデル逆変換部順変換部１０６（１０７）へ提供する機能を備える。また、出力変換部２０２は更に、出力デバイス色再現領域を色空間変換部１０２（１０３）へ提供する機能を備える。
【００３５】
なお、本実施形態において、デバイスに応じた処理の切り替えや上記説明した機能以外の拡張機能等を提供することが可能となるように、入力変換部２０１、出力変換部２０２はプラグイン（デバイスプラグイン）で提供される。
【００３６】
また、色空間の圧縮方法（ＩＣＣのレンダリングインテントに相当）に応じた切り替え等に応ずることが可能となるように、色空間変換部１０２（１０３）も色空間変換プラグインで提供される。
【００３７】
デバイス情報２０３は、入力変換部２０１及び出力変換部２０２に対して事前に測定したデバイス色信号と入力（出力）デバイスに依存しない色空間データ（ＸＹＺ）との対応関係並びに観察条件を示す。デバイス情報管理部２０４は、デバイス情報２０３の格納場所の管理を行う。
【００３８】
入出力・色空間変換管理部（プラグイン管理部）２０５は、デバイスプラグイン、色空間変換プラグインのバージョン、格納場所の管理を行う。
【００３９】
デバイス・ＣＡＭキャッシュ管理部２０６は、入力変換部２０１又は出力変換部２０２において生成された変換マトリクス又は変換ＬＵＴ１０１、１０８、色知覚モデル順変換部１０４（１０５）又は色知覚モデル逆変換部１０６（１０７）で生成されたＣＡＭテーブル、ＣＡＭ−１テーブルを管理する。さらに、デバイス・ＣＡＭキャッシュ管理部２０６は、変換マトリクス又は変換ＬＵＴ１０１、１０８の生成条件及びＣＡＭテーブル、ＣＡＭ−１テーブルの生成条件を管理する。デバイス・ＣＡＭキャッシュ管理部２０６で管理されているデータを使用することにより、各変換処理の作成処理を省略することができ、カラーマッチングの高速化を行うことが可能となる。
【００４０】
なお、本実施形態においては、ＣＡＭテーブル、ＣＡＭ−１テーブルをデバイスプラグイン及びデバイス情報と関連付けている。ＣＡＭテーブル、ＣＡＭ−１テーブルは、ＸＹＺとＪＣｈ空間の対応は観察条件（光源の白色点、照度レベル、周囲光の状態等）と対応していればよいので、ＣＡＭテーブル、ＣＡＭ−１テーブルを観察条件と関連付けて管理することも可能である。
【００４１】
また、システムキャッシュ作成部２０７は、入力・出力デバイスプラグイン、デバイス情報２０３及び色空間変換プラグインの組み合わせに対応させてＬＵＴ（システムキャッシュ）を生成し、格納する。
【００４２】
システムキャッシュ管理部２０８は、システムキャッシュ作成部２０７において作成されたシステムキャッシュの管理を行う。
【００４３】
サンプル画像２０９は、システムキャッシュの生成やプレビューに用いるために使用される。入力結合処理部２１０は、システムキャッシュを用いてカラーマッチング処理を行う。
【００４４】
履歴管理部２１１は、使用された入力・出力デバイスプラグイン、デバイス情報２０３及び色空間変換プラグインの組み合わせをカラーマッチング履歴として管理する。
【００４５】
制御部２１２は、上記各構成を管理し、外部からのカラーマッチング指示を受け付け、カラーマッチング処理の実行を制御する。
【００４６】
インストール制御部２１３は、デバイス情報２０３、入力・出力デバイスプラグイン、色空間変換プラグインのインストールの制御を行う。
【００４７】
図３は、図２に示すカラーマッチングモジュールを実現するハードウェア構成例を示すブロック図である。図２に示す機能構成は、図３に示す例えばパーソナルコンピュータのような汎用のコンピュータ装置にソフトウェアを供給することによって実現することができる。その場合、本実施形態の機能を実現するソフトウェアは、コンピュータ装置のＯＳ（基本システム）に含まれていても構わないし、ＯＳとは別に例えば入出力デバイスのドライバソフトウェアに含まれていても構わない。
【００４８】
ＣＰＵ３０１は、ＲＯＭ３０２及びハードディスク（ＨＤ）３０７等に格納されたプログラムに従い、ＲＡＭ３０３をワークメモリに利用して、装置全体の動作を制御する。さらにＣＰＵ３０１は、上述したカラーマッチングに関連する処理をはじめとする各種の処理を実行する。入力インタフェース３０４は入力デバイス３０５を接続するためのインタフェースである。ハードディスクインタフェース３０６はＨＤ３０７を接続するためのインタフェースである。ビデオインタフェース３０８はビデオデバイス３０９を接続するためのインタフェースである。出力インタフェース３１０は出力デバイス３１１を接続するためのインタフェースである。
【００４９】
なお、入力デバイス３０５には、ディジタルスチルカメラ及びディジタルビデオカメラ等の撮影機器、並びに、イメージスキャナ及びフィルムスキャナ等のイメージリーダをはじめとする各種の画像入力機器が含まれる。また、出力デバイス３１１には、ＣＲＴやＬＣＤ等のカラーモニタ、カラープリンタ及びフィルムレコーダ等の画像出力機器が含まれる。
【００５０】
また、インタフェースとして汎用のインタフェースが利用できる。その用途に応じて、例えば、ＲＳ２３２Ｃ、ＲＳ４２２、ＵＳＢ及びＩＥＥＥ１３９４等のシリアルインタフェース、並びに、ＳＣＳＩ及びセントロニクス等のパラレルインタフェースが利用可能である。
【００５１】
本実施形態では、カラーマッチングを行うためのデバイス情報２０３、入力・出力デバイスプラグイン、他のプログラムはハードディスク３０７に格納されるが、ハードディスク３０７に限らず、他の記憶媒体を用いても構わない。
【００５２】
次に、図２に示すカラーマッチングモジュールに関わる主要なデータ構成を、図４を用いて説明する。なお、図４で説明する以外の項目も各データに含まれていても構わない。図４は、デバイス情報２０３、入力・出力デバイスプラグイン及び色空間変換プラグインの模式図である。
【００５３】
４０１は、デバイス情報（図２の２０３に対応）の模式図である。デバイス情報４０１は以下に代表される情報等で構成される。即ち、デバイス情報４０１には、変換マトリクス又は変換ＬＵＴ１０１、１０８を生成するためのデバイス信号とデバイスに依存しない色空間の対応データを格納する測色情報、ＣＡＭテーブル及びＣＡＭ−１テーブルを生成するための観察条件が含まれる。また、デバイス情報４０１には更に、適用可能な入力・出力デバイスプラグインを特定するためのプラグインを一意に特定する適用プラグインＩＤ、入力・出力デバイスプラグインを制御するためのパラメタ等を格納するプライベートデータが含まれる。
【００５４】
適用プラグインＩＤをデバイス情報４０１に含める理由としては、入力・出力デバイスプラグインは入力・出力デバイスに応じて提供されるため、測定デバイスに応じた入力・出力デバイスプラグインを選定する必要があるためである。
【００５５】
なお、デバイス情報４０１の測色情報は、図１５（Ａ）、図１５（Ｂ）に示したデバイスの特性と等価である。
【００５６】
４０２は、入力・出力デバイスプラグインの模式図である。入力・出力デバイスプラグイン４０２は、本実施形態に用いるプラグインを一意に特定するためのプラグインＩＤ、プラグイン名称、改定履歴を管理するためのバージョン情報、適用可能なデバイスを特定するための適用可能デバイス情報を含む。また、入力・出力デバイスプラグイン４０２は更に、変換処理等の入力変換部２０１及び出力変換部２０２における機能を実行するプログラム部を含む。プラグインＩＤは例えばＵＵＩＤ等を用いる。またデバイス情報は、ディジタルカメラ、プリンタといった一般的なデバイス分類や特定の機種等の適用範囲を指定することが可能である。
【００５７】
４０３は、色空間変換プラグインの模式図である。色空間変換プラグイン４０３は、本実施形態に用いる入力・出力デバイスプラグイン４０２を一意に特定するためのプラグインＩＤ、プラグイン名称を含む。また、色空間変換プラグイン４０３は更に、改定履歴を管理するためのバージョン情報、レンダリングインテントに相当する色空間変換方法及び色空間変換部１０２（１０３）における機能を実行するプログラム部を含む。プラグインＩＤは、入力・出力デバイスプラグイン４０２と同様に、例えばＵＵＩＤ等を用いる。
【００５８】
次に、本実施形態における色変換処理の流れについて詳細に説明する。図９は、後述する図８のステップＳ１２０３における画像データを変換する処理の詳細を示すフローチャートである。
【００５９】
ステップＳ１３０１では、入力変換部２０１は、変換マトリクス又は変換ＬＵＴ１０１を用いて、入力デバイスに依存する色信号を入力デバイスに依存しない色空間データへ変換する。以下、この変換を順変換と呼ぶ。
【００６０】
ステップＳ１３０２では、色知覚モデル順変換部１０４（１０５）は、入力デバイスに依存しない色空間データから色知覚信号へ変換する。
【００６１】
ステップＳ１３０３では、色空間変換部１０２（１０３）は、ガマットマッピングを行う。
【００６２】
ステップＳ１３０４では、色知覚モデル逆変換部１０６（１０７）は、色知覚信号から出力デバイスに依存しない色空間データへ変換する。
【００６３】
ステップＳ１３０５では、出力変換部２０２は、変換マトリクス又は変換ＬＵＴ１０８を用いて、ニュートン法を用いた繰り返し演算により、出力デバイスに依存しない色空間データを出力デバイスに依存する色信号へ変換を行う。この際に、出力デバイスに依存する色信号として、階調反転している領域の値を出力しない点がポイントであり、そのポイントについては図１０を用いて後述する。以下、この変換を逆変換と称す。また、ステップＳ１３０５は、逆変換手段の処理例である。
【００６４】
なお、ここではニュートン法を用いたが、準ニュートン法、最急降下又は二分法等を用いても実現可能である。
【００６５】
図１０は、図９のステップＳ１３０５の逆変換処理の詳細を示すフローチャートである。図１０に示す処理は、出力変換部２０２に含まれる機能構成である繰り返し演算部１４０３によって実行される処理である。また、出力デバイスに依存しない色信号（ターゲットＸＹＺ値）１４０１は、ステップＳ１３０４で得られる出力デバイスに依存しない色信号である。ここではＸＹＺ値とするが、他の均等色空間を使用してもかまわない。出力デバイスに依存する色信号（出力ＲＧＢ値）１４０２は、ステップＳ１３０５の結果得られる出力デバイスに依存する色信号である。繰り返し演算部１４０３は、入力として、出力デバイスに依存しない色信号（ターゲットＸＹＺ値）１４０１を受け取り、出力デバイスに依存する色信号（出力ＲＧＢ値）１４０２を出力する。
【００６６】
以下、図１０を用いて、繰り返し演算部１４０３の処理について説明する。ステップＳ１４１１では、繰り返し演算部１４０３は、ニュートン法を使用して解の候補（仮ＲＧＢ値）を決定する。初期値としては、例えばＲＧＢ値で（１２８，１２８，１２８）等の決めうちの値でもよい。又は、予め出力デバイスに依存する色信号と、出力デバイスに依存しない色信号との対応テーブルを用意しておく。そして、ターゲットＸＹＺ値１４０１に、ＸＹＺ色空間上で最も近い対応テーブル上の出力デバイスに依存しない色信号値に対応する出力デバイスに依存する色信号値を設定してもよい。このとき、階調反転している領域のＲＧＢ値を解の候補として用いないことで、出力ＲＧＢ値１４０２としても階調反転している領域のＲＧＢ値を出力しないことが可能である。これを図７を用いて後述する。なお、ステップＳ１４１１は、決定手段の処理例である。
【００６７】
ステップＳ１４１２では、繰り返し演算部１４０３は、ステップＳ１３０１と同様な順変換を行い、ステップＳ１３０１で用いた変換マトリクス又は変換ＬＵＴ１０１の代わりに変換マトリクス又は変換ＬＵＴ１０８を用いて仮ＲＧＢ値を仮ＸＹＺ値に変換する。なお、ステップＳ１４１２は、順変換手段の処理例である。
【００６８】
ステップＳ１４１３では、繰り返し演算部１４０３は、ターゲットＸＹＺ値１４０１とステップＳ１４１２で算出した仮ＸＹＺ値との差分を算出する。算出した差分が予め決めておいたＸＹＺ色空間上の距離（所定の閾値）よりも小さい場合には、直前のステップＳ１４１１で決定した仮ＲＧＢ値を出力ＲＧＢ値１４０２として出力する。予め決めておいたＸＹＺ色空間上の距離以上の場合には、ステップＳ１４１１に戻り、ニュートン法を用いて次の仮ＲＧＢ値を決定する。ある所定回数ステップＳ１４１３の判定を行っても予め決めておいたＸＹＺ色空間上の距離よりも小さくならない場合は、最もＸＹＺ色空間上の距離が小さかった仮ＸＹＺ値に対応する仮ＲＧＢ値を出力ＲＧＢ値１４０２として出力する。なお、ステップＳ１４１３は、差分算出手段の処理例である。
【００６９】
図７は、ニュートン法を用いて解の候補を決定する処理を示すフローチャートである。ステップＳ７０１では、繰り返し演算部１４０３は図１１の行列を解く。ここで図１１に示す行列の説明を行う。
【００７０】
図１１の１６０１は、図１０のターゲットＸＹＺ値１４０１とステップＳ１４１２における仮ＸＹＺ値との差分ベクトルであり、ターゲットＸＹＺ値と仮ＸＹＺ値との差をベクトルで表現したものである。
【００７１】
１６０３は一般的なヤコビアン行列であり、ステップＳ１４１３で継続と判定された解の候補（仮ＲＧＢ値）において微少距離∂Ｒ、∂Ｇ、∂Ｂだけ動かしたときの仮ＸＹＺ値からの微少変位∂Ｘ、∂Ｙ、∂Ｚの関係を表した行列である。
【００７２】
１６０２はデバイス値（デバイスに依存する色信号）の差分ベクトルであり、図１０のステップＳ１４０２における仮ＲＧＢ値からの次の解の候補（仮ＲＧＢ値）までの差分ベクトルである。
【００７３】
ステップＳ７０１では、繰り返し演算部１４０３は、図１１の行列を解いて次の解の候補（仮ＲＧＢ値）までの差分ベクトルであるデバイス値の差分ベクトル１６０２を求める。
【００７４】
ステップＳ７０２では、繰り返し演算部１４０３は、ステップＳ７０１で求めたデバイス値の差分ベクトル１６０２と仮ＲＧＢ値を足して次の解の候補（仮ＲＧＢ値）を求める。
【００７５】
ステップＳ７０３では、繰り返し演算部１４０３は、ステップＳ７０２で求めた次の解の候補が解の候補の集合に含まれるかを判定する。解の候補の集合については図１２を用いて後述する。解の候補の集合は格子で構成されている。そのため、解の候補の集合を構成する全ての単位格子に対して、解の候補（仮ＲＧＢ値）が含まれているかを判定すればよい。なお、解の候補の集合の表面の内側か外側かを判定する等、他の方法で判定してもかまわない。
【００７６】
ステップＳ７０４では、繰り返し演算部１４０３は、図１２に示す解の候補の集合に収まるように、ステップＳ７０２で求めた解の候補（仮ＲＧＢ値）を修正する。解の候補（仮ＲＧＢ値）からＲＧＢ（１２８，１２８，１２８）のグレーに向けて微少距離だけ移動して、その地点が解の候補の集合に含まれているかをステップＳ７０３と同じロジックで判定し、含まれていない場合はさらに微少距離だけグレーに向けて移動を行う。含まれていると判定されるまで微少距離の移動を繰り返し、判定された時点の解の候補（仮ＲＧＢ値）を出力値とする。
【００７７】
ここでは、単純に微少距離だけ内側に移動して解の候補の集合に含まれているか判定することを繰り返したが、二分法を用いてもよいし、解の候補の集合の表面を算出してグレー軸と解の候補（仮ＲＧＢ値）を結ぶ直線との交点を求めてもよい。
【００７８】
図１２は、ステップＳ７０３において利用する解の候補の集合であるＲＧＢ値の集合の一例を示す図である。デバイスの特性を表すデバイス情報４０１の測色情報を図示したものが図１５（Ｂ）であるが、図１５（Ｂ）の破線内に示す階調反転領域に対応するものが、図１２の斜線部に対応する。つまり、デバイス色空間（ＲＧＢ色空間）での階調反転領域を図１２の斜線部で示している。デバイス情報４０１の測色情報は格子を形成している。そのため、図１２の斜線部はいくつかの単位格子で形成されている。
【００７９】
このＲＧＢ値の集合のうち、斜線で表す部分をステップＳ１４１１で解の候補として出力しないことで、階調反転領域を出力ＲＧＢ値１４０２として出力しないことが可能になる。
【００８０】
次に、図１５（Ｂ）の破線内に示す階調反転領域の具体的な判定方法について説明する。図８は、色変換の処理の流れを示すフローチャートである。
【００８１】
ステップＳ１２０１では、制御部２１２は、入力変換部２０１及び出力変換部２０２を、それぞれデバイス情報４０１を用いて初期化する。このとき、階調反転を判定する処理を行う。階調反転を判定する処理については図６を用いて後述する。
【００８２】
ステップＳ１２０２では、制御部２１２は、色空間変換部１０２の初期化を行う。ステップＳ１２０３では、制御部２１２は、画像データを入力して、各プラグインの色変換処理を施してマッチング後の画像データを出力する。ステップＳ１２０３の詳細は、図９を用いて前述している。
【００８３】
以下、ステップＳ１２０１における階調反転を判定する処理を図６を用いて説明する。ステップＳ６０１では、制御部２１２は、デバイス情報４０１の測色情報を用いて出力変換部２０２を初期化する。測色情報は複数の格子から構成される。
【００８４】
ステップＳ６０２では、制御部２１２は、デバイス情報４０１の測色情報を構成する格子のうち、階調反転格子を検出する。検出方法は図５を用いて後述する。なお、ステップＳ６０２は、検出手段の処理例である。
【００８５】
ステップＳ６０３では、制御部２１２は、ステップＳ６０２で検出した階調反転格子に対応するデバイス値（ＲＧＢ値）を除去して解の候補の集合を求める。本処理は、除去手段の処理例である。このときに、階調反転領域を構成する格子点のうち解の候補として使わない格子を色域表面にだけ存在するようにもできる。さらに、色域の内側にある場合でもその一つ外側の隣接している格子が階調反転している格子だけを解の候補として使わないようにすることもできる。つまり、色域の内側に色域表面と隣接しない階調反転領域が島のように存在する場合は、その部分は階調反転していても解の候補として使用することが可能である。なお、ステップＳ６０３は、除外手段の処理例である。
【００８６】
また、白や黒やグレー軸などが重要な領域が階調反転領域として判定されたにもかかわらず、それらの領域を解の候補として使うことも可能である。
【００８７】
デバイス情報４０１の測色情報であるデバイスの特性（色域）を表す図１５（Ｂ）に示すＬＵＴは単位格子の集まりである。そして、一つの単位格子は図５に示すように６つの四面体で構成される。制御部２１２は、図１５（Ｂ）に示すＬＵＴの各単位格子を四面体に分割する。この分割処理は、分割手段の処理例である。制御部２１２は、図５に示すように６つそれぞれの四面体の体積をベクトルの内積と外積を用いて算出する。図５において、ｘはベクトルの外積、・はベクトルの内積である。本処理は、体積算出手段の処理例である。そして、制御部２１２は、算出した四面体の体積が負の値を示す場合に、四面体を構成する４つの格子点を階調反転していると判定する。なお、他の方法で階調反転を検出してもよい。
【００８８】
カラーマネージメントを実現する技術の一例として、ＩＣＣにより定められた、ＩＣＣカラープロファイルに基づきカラーマネージメントを行うシステム（Color Management System : CMS）が存在する。なお、ＩＣＣは、International Color Consortiumの略称である。ＩＣＣのＣＭＳは一般的であるためここでは詳細な説明は省くが、ＩＣＣのプロファイルにはデバイス色空間とＰＣＳ（Profile Connection Space）を対応付けるＬＵＴを格納することができる。また、ＰＣＳを介さないような、例えば、モニタ−プリンタの色空間での直接の色変換にも適用可能である。
【００８９】
以上、説明したように本実施形態によれば、デバイスの特性として階調反転している箇所を判定し、繰り返し演算を行う逆変換において、階調反転している箇所を解の候補として使わないことが可能となる。その結果、デバイスの特性として階調反転部分があるデバイスに対して変換の精度を維持しつつ処理速度を向上させ、且つ、逆変換の際に階調反転の悪化を抑制して色再現性を向上させるという効果が得られる。
【００９０】
なお、本実施形態に適用可能な計算機は、パーソナルコンピュータ、携帯電話を含む携帯端末、画像形成装置等、その形態を問わないのは言うまでもない。
【００９１】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパーソナルコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【図１】
2011004074.tif 000003
【図２】
2011004074.tif 000004
【図３】
2011004074.tif 000005
【図４】
2011004074.tif 000006
【図５】
2011004074.tif 000007
【図６】
2011004074.tif 000008
【図７】
2011004074.tif 000009
【図８】
2011004074.tif 000010
【図９】
2011004074.tif 000011
【図１０】
2011004074.tif 000012
【図１１】
2011004074.tif 000013
【図１２】
2011004074.tif 000014
【図１３】
2011004074.tif 000015
【図１４】
2011004074.tif 000016
【図１５】
2011004074.tif 000017