(57)【要約】【課題】  色変換プロファイルのLUTを初めから作り直すのではなく修正することでパッチの量や計算量を減らし、処理時間を大幅に短くする。【解決手段】  入力側のデバイスに依存する色空間をデバイスに依存しない色空間に変換するLUTと、デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換するLUTを持つ画像処理システムにおいて、カラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて前記LUTを修正する手段とを有する。【選択図】  図１０
2006165864.tif 000002
【特許請求の範囲】
【請求項１】
入力側のデバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴと、デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換するＬＵＴを持つ画像処理システムにおいて、カラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて前記ＬＵＴを修正する手段を持つカラー画像処理システム。
【請求項２】
前記カラーパッチ作成手段はデバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換するＬＵＴから算出することを特徴とする第１項記載のカラー画像処理システム。
【請求項３】
前記カラーパッチ出力手段は前記作成されたカラーパッチをプリンタで出力することを特徴とする第１項記載のカラー画像処理システム。
【請求項４】
前記カラーパッチ測色手段は前記出力したカラーパッチを測色機等で測色することを特徴とする第１項記載のカラー画像処理システム。
【請求項５】
前記基準となる値を計算する手段は作成したカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴを用いて算出することを特徴とする第１項記載のカラー画像処理システム。
【請求項６】
前記基準となる値を計算する手段は作成したカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換する演算式を用いて算出することを特徴とする第１項記載のカラー画像処理システム。
【請求項７】
前記ＬＵＴ修正手段は、前記デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換するＬＵＴの、デバイスに依存しない色空間の値と最も近い前記計算値を算出し、その値に対応した測色値との差を求め、その値を利用して前記デバイスに依存しない色空間を出力色空間に変換するＬＵＴを修正することを特徴とする第１項記載のカラー画像処理システム。
【請求項８】
入力側のデバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴと、デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを持つ画像処理システムにおいて、複数の要素を含むカラーパッチを作成する手段と、前記複数の要素を含むカラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記複数の要素を含むカラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて前記複数の要素で構成されたＬＵＴを修正する手段を持つカラー画像処理システム。
【請求項９】
前記複数の要素を含むカラーパッチ作成手段はデバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを用いて、要素ごとに算出することを特徴とする第８項記載のカラー画像処理システム。
【請求項１０】
前記カラーパッチ出力手段は前記作成された複数の要素を含むカラーパッチをプリンタで出力することを特徴とする第８項記載のカラー画像処理システム。
【請求項１１】
前記カラーパッチ測色手段は前記出力した複数の要素を含むカラーパッチを測色機等で測色することを特徴とする第８項記載のカラー画像処理システム。
【請求項１２】
前記基準となる値を計算する手段は作成した複数の要素を含むカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴを用いて算出することを特徴とする第８項記載のカラー画像処理システム。
【請求項１３】
前記基準となる値を計算する手段は作成した複数の要素を含むカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換する演算式を用いて算出することを特徴とする第８項記載のカラー画像処理システム。
【請求項１４】
前記ＬＵＴ修正手段は、前記デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴと作成した測色値と計算値を要素ごとに分類して修正することを特徴とする第８項記載のカラー画像処理システム。
【請求項１５】
前記ＬＵＴ修正手段は、前記デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴのデバイスに依存しない色空間の値と最も近い前記計算値を算出し、その値に対応した測色値との差を求め、その値を利用して前記デバイスに依存しない色空間を出力色空間に変換するＬＵＴを修正することを特徴とする第１４項記載のカラー画像処理システム。
【請求項１６】
入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換するＬＵＴを持つ画像処理システムにおいて、カラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて前記ＬＵＴを修正する手段を持つカラー画像処理システム。
【請求項１７】
前記カラーパッチ作成手段は入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換するＬＵＴから算出することを特徴とする第１６項記載のカラー画像処理システム。
【請求項１８】
前記カラーパッチ出力手段は前記作成されたカラーパッチをプリンタで出力することを特徴とする第１６項記載のカラー画像処理システム。
【請求項１９】
前記カラーパッチ測色手段は前記出力したカラーパッチを測色機等で測色することを特徴とする第１６項記載のカラー画像処理システム。
【請求項２０】
前記基準となる値を計算する手段は作成したカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴを用いて算出することを特徴とする第１６項記載のカラー画像処理システム。
【請求項２１】
前記基準となる値を計算する手段は作成したカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換する演算式を用いて算出することを特徴とする第１６項記載のカラー画像処理システム。
【請求項２２】
前記ＬＵＴ修正手段は、前記入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換するＬＵＴの入力色空間の値と最も近い前記計算値を算出し、その値に対応した測色値との差を求め、その値を利用して前記入力色側のデバイスに依存する空間を出力側のデバイスに依存する色空間に変換するＬＵＴを修正することを特徴とする第１６項記載のカラー画像処理システム。
【請求項２３】
入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを持つ画像処理システムにおいて、前記複数の要素についてカラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて前記複数の要素で構成されたＬＵＴを修正する手段を持つカラー画像処理システム。
【請求項２４】
前記複数の要素を含むカラーパッチ作成手段は入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを用いて、要素ごとに算出することを特徴とする第２３項記載のカラー画像処理システム。
【請求項２５】
前記カラーパッチ出力手段は前記作成された複数の要素を含むカラーパッチをプリンタで出力することを特徴とする第２３項記載のカラー画像処理システム。
【請求項２６】
前記カラーパッチ測色手段は前記出力した複数の要素を含むカラーパッチを測色機等で測色することを特徴とする第２３項記載のカラー画像処理システム。
【請求項２７】
前記基準となる値を計算する手段は作成した複数の要素を含むカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴを用いて算出することを特徴とする第２３項記載のカラー画像処理システム。
【請求項２８】
前記基準となる値を計算する手段は作成した複数の要素を含むカラーパッチのデータと、デバイスに依存する色空間をデバイスに依存しない色空間に変換するＬＵＴを用いて算出することを特徴とする第２３項記載のカラー画像処理システム。
【請求項２９】
前記ＬＵＴ修正手段は、前記入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴと、作成した測色値と計算値を要素ごとに分類して修正することを特徴とする第２３項記載のカラー画像処理システム。
【請求項３０】
前記ＬＵＴ修正手段は、前記入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴのデバイスに依存しない色空間の値と最も近い前記計算値を算出し、その値に対応した測色値との差を求め、その値を利用して前記入力色空間を出力色空間に変換するＬＵＴを修正することを特徴とする第２９項記載のカラー画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＣ等から送られた画像等のデータを、カラーマネージメントしてプリントするカラー画像処理システムに関するものである。
【背景技術】
【０００２】
近年、出力デバイスのカラー化が進み、色情報を管理するカラーマネージメント技術の重要性が増してきている。モニタ等の入力デバイスとプリンタ等の出力デバイスとでは色の再現範囲が異なるため、入力デバイスの色情報をそのまま出力デバイスの色情報として扱うことができない。また、入力色空間と出力色空間とでは色空間の定義が異なる場合も多い。そこで従来では、入力デバイスに依存した色空間で定義されたデータを一度デバイス非依存色空間へと変換し、そのデバイス非依存色空間の情報を出力デバイスに依存した色空間へと変換することで、入力デバイスのデータを出力デバイスにて出力するということが行われている。図１は入力デバイスから出力デバイスへ画像を出力する際の色空間の遷移を表した図である。入力デバイス色空間１０１はソースプロファイル１０２によってデバイス非依存色空間へと変換される（ステップ１０３）。そしてデバイス非依存色空間はディスティネーションプロファイル１０４によって出力デバイス色空間へと変換される（ステップ１０５）。デバイスに依存した色空間としてはＲＧＢやＣＭＹＫが、デバイス非依存色空間としてはＬ＊ａ＊ｂ＊が通常用いられる。一般に、出力デバイスではＣＭＹＫが用いられることがほとんどである。ここで、ソースプロファイル１０２は入力デバイス色空間をデバイス非依存色空間に変換するプロファイル、ディスティネーションプロファイル１０４はデバイス非依存色空間を出力デバイス色空間に変換するプロファイルのことを示しており、現在ではＩＣＣで定められたＩＣＣプロファイルが多く使われている。図２はＩＣＣプロファイルのデータ表現形式について表した図であり、この図で示すように色空間の変換をＬＵＴで表現している。図２の（Ａ）はデバイスに依存したＣＭＹＫデータをデバイスに依存しないＬ＊ａ＊ｂ＊データに変換するためのＬＵＴであり、図２の（Ｂ）はデバイスに依存しないＬ＊ａ＊ｂ＊データをデバイスに依存するＣＭＹＫデータに変換するためのＬＵＴである。ソースプロファイルの場合はＣＭＹＫ→Ｌ＊ａ＊ｂ＊（図２のＡ）、ディスティネーションプロファイルの場合はＬ＊ａ＊ｂ＊→ＣＭＹＫ（図２のＢ）のＬＵＴのみ利用するが、ＩＣＣプロファイルの仕様により片方だけではなく両方のＬＵＴを持つようになっている。
【０００３】
ここで、ＩＣＣプロファイルに代表される色変換プロファイルは通常はデフォルトのものが配布または組み込まれており、その値は一定である。しかし、どのようなデバイスでも月日がたつと特性が変わってしまうため、その変わってしまった特性に合わせたＩＣＣプロファイルを得ることが重要となる。そこで、ＩＣＣプロファイルを作り直すためのツール及び測色機が多く市場に出回っている。この場合、ディスティネーションプロファイル１０４に対して再作成を行う。
【０００４】
また、これら色変換処理の効果を高めるために、ＣＭＹＫそれぞれ独立に１次元の補正用ＬＵＴを用意しておいてそれぞれ最適な色に補正する手段が行われている。この操作は出力デバイスに依存した色空間に変換された後に行われ、図１のステップ１０６がそれにあたる。出力デバイスがスキャナを持つＭＦＰや外部に接続されたスキャナの値を取り込めるものであった場合、一次色で構成された濃淡パッチを出力してそれをスキャナで読み込み、ステップ１０６で利用する１次元の補正用ＬＵＴを修正して現在のデバイス状態に適した出力が行われるようにキャリブレーションする手法が行われている。
【特許文献１】特開２００２−９４８１３号公報
【特許文献２】特開２００３−１８４１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＩＣＣプロファイルのＬＵＴが複数のＬＵＴを合成することで生成された「複合プロファイル」である場合、ＩＣＣプロファイルを作り直すためには元となったＬＵＴをすべて作り直す必要があり、効率が悪かった。
【０００６】
特に、電子写真方式のような日々のデバイスの状態変化が激しい傾向にあるデバイスに対しては頻繁にキャリブレーションを行うことで色安定性を得る必要がある。だがディスティネーションプロファイル１０４を作り直す手法では、精度の高いキャリブレーションが実現できる代わりに必要なパッチの数や計算量が多いため時間がかかってしまい短いサイクルで運用していくことが難しいという課題があった。また、ステップ１０６の手法では、短時間で処理を行うことが可能だが、二次転写・三次転写の問題等から複数の色を用いた多次色に対する補正が十分ではないという問題があり、最適な色味で画像が出力されないことや、同じ機種であっても複数のデバイス間で色味が異なってしまう問題があった。
【０００７】
この問題を解決するため、本発明では、デバイスから出力される画像を常に望ましい色で出力できるようにするカラー画像処理システムと、複数台のデバイスに対して常に類似した色で出力できるようにするカラー画像処理システムを提供することを目的とする。その際にディスティネーションプロファイルなどのＩＣＣプロファイルに代表されるＬＵＴを作り直すのではなく、最適な形に書き換えることによってパッチの数や計算量を減らし、全体の処理時間を大幅に縮めることを目的とする。また、一次色を扱うＬＵＴではなく、ディスティネーションプロファイルのような多次色を扱うＬＵＴを修正の対象とすることで、従来手法に比べより精度の高いキャリブレーション手法を提供することを目的とする。さらに、複数のＬＵＴを合成した「複合プロファイル」に対しても最適な処理を行うことで短い処理時間でかつ精度の高いキャリブレーション手法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本発明は、カラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いてデバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換するＬＵＴを修正する手段と、を有することを特徴とする。
【０００９】
また、複数の要素を含むカラーパッチを作成する手段と、前記複数の要素を含むカラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記複数の要素を含むカラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて、デバイスに依存しない色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを修正する手段と、を有することを特徴とする。
【００１０】
また、カラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換するＬＵＴを修正する手段と、を有することを特徴とする。
【００１１】
また、複数の要素についてカラーパッチを作成する手段と、前記カラーパッチを出力する手段と、前記出力されたパッチを測色する手段と、前記カラーパッチのデータを用いて基準となる値を計算する手段と、前記測色値と前記計算値を用いて、入力側のデバイスに依存する色空間を出力側のデバイスに依存する色空間に変換する複数の要素で構成されたＬＵＴを修正する手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によって、色変換プロファイルのＬＵＴを初めから作り直すのではなく修正することでパッチの量や計算量を減らし、処理時間を大幅に短くすることが可能となる。また、多次色で構成されたＬＵＴの値を変更するため、従来技術では安定しなかった多次色に関する補正が行え、より精度の高いキャリブレーション手段をユーザに提供することができる。さらに、複数の要素で構成されたＬＵＴに対しても短い処理時間でかつ精度の高いキャリブレーションを行うことが可能となる。
【００１３】
また、色変換プロファイルのＬＵＴを修正する基準を統一することによって、複数のデバイス間での精度の高いキャリブレーションを行うことが可能となる。
【発明を実施するための最良の形態】
【００１４】
（実施例１）
本発明の実施の形態について説明する。図３は本発明によるカラー画像処理システム構成を表すブロック図である。このカラー画像処理システムはオフィス１０とオフィス２０とがインターネット３０８で接続された環境で実現される。オフィス１０内に構築されたＬＡＮ３０９にはカラーＭＦＰ３０１、カラーＭＦＰ３０２、マネージメントＰＣ３０４、クライアントＰＣ３０５、及びＰｒｏｘｙサーバ３０６が接続されている。また、オフィス１０内のＬＡＮ３０９とオフィス２０内のＬＡＮ３１０はＰｒｏｘｙサーバ３０６を介してインターネット３０８に接続されている。カラーＭＦＰ３０１、３０２は本手法において画像の出力を主に担当する。一方、カラーＭＦＰ３０１、３０２とＬＡＮ３１２またはＬＡＮ３０９で接続されたマネージメントＰＣ３０４は、ＵＳＢ３１１で接続されている測色機３０３で得られた測色値の処理やプロファイルの修正等の画像処理部分、カラーＭＦＰへのプロファイルのアップロード及びダウンロードを担当する。その他にも、内部に画像記憶手段、画像処理手段、表示手段、入力手段を有している。また、クライアントＰＣ３０５，３０７は実際にユーザが出力を希望する画像データを出力するためのＰＣである。
【００１５】
図４はカラーＭＦＰ３０１，３０２の構成図である。図４においてオートドキュメントフィーダーを含む画像読み取り部４０１は束状のあるいは一枚の原稿画像を図示しない光源で照射し、原稿反射像をレンズで固定撮像素子上に結像し、固定撮像素子からラスター状の画像読み取り信号を６００ＤＰＩの密度のイメージ情報として得る。通常の複写機能はこの画像信号をデータ処理部４０５で記録信号へ画像処理し、記録装置４０３に順次出力して紙上に画像を形成する。
【００１６】
カラーＭＦＰ３０１、３０２への操作者の指示はカラーＭＦＰに装備されたキー操作部である入力装置４０６か、マネージメントＰＣ３０４に付属したキーボード及びマウスから行われ、これら一連の動作はデータ処理装置４０５内の図示しない制御部で制御される。
【００１７】
一方、操作入力の状態表示及び処理中の画像データの表示は表示装置４０４で行われる。なお、記憶装置４０２はマネージメントＰＣ３０４からも制御され、これらＭＦＰとマネージメントＰＣとのデータの授受及び制御はネットワークＩＦ４０７及び直結したＬＡＮ３１２、またはＬＡＮ３０８を用いて行われる。
【００１８】
ここで、クライアントＰＣ３０５から画像データをカラーＭＦＰ３０１、３０２に送った場合、データ処理部４０５では図５のような処理が行われる。データ処理部４０５がデータを受け取った際、画像データはＣＭＹＫかＲＧＢで表現されていることがほとんどである。そこで、それぞれに対応したソースプロファイルを用いて画像データの色空間をデバイスに依存しない色空間へ変換する。多くの場合、Ｌ＊ａ＊ｂ＊表色系が使われるため、ここではＬ＊ａ＊ｂ＊データを例としてあげる。図５に示すように画像データ（ＣＭＹＫ）５０１に対してはソースプロファイル５０２を用い、画像データ（ＲＧＢ）５０３に対してはソースプロファイル５０４を用いる。そしてデバイスに依存しない色空間で記述された画像データ（Ｌ＊ａ＊ｂ＊）５０５が生成される。次にこのデータに対してディスティネーションプロファイル５０６を用いて出力デバイスに依存した色空間で表現された画像データ（ＣＭＹＫ’）５０７に変換し、その後適切な画像処理を行ってデータを出力する。また、例外処理として画像データ（ＣＭＹＫ）５０１を直接画像データ（ＣＭＹＫ’）５０７として出力することも可能である。この場合は出力デバイスの状態に合う色変換処理がなされていないため、意図とは違う画像が出力されてしまうことが多い。なお、ソースプロファイル５０２及び５０４は図２の（Ａ）で示すようなＬＵＴを、ディスティネーションプロファイル５０６は図２（Ｂ）で示すようなＬＵＴを持つ。
【００１９】
（パッチ作成作業（前処理））
次に本発明において前処理であるパッチ作成手段について図６を用いて説明する。図６においてまず、ディスティネーションプロファイルのＬＵＴを取り出す（ステップ６０１）。ここではＬ＊ａ＊ｂ＊→ＣＭＹＫのＬＵＴを持つプロファイルを例として示す。次にステップ６０２でＬＵＴが複数の要素で構成されているか否かを判定する。ここで、複数の要素とは複数のＬＵＴのことを表している。例えば文字部分を黒単色で打ち、それ以外は通常通りＣＭＹＫ混色で打つようなプロファイルである場合、文字部分に相当する色（ａ＊＝ｂ＊＝０等のグレー軸に相当する値）とそれ以外とで別々にプロファイルを作成し、それらを合成することで一つのプロファイルを作成する。ＬＵＴ内のデータが何種類のＬＵＴで作成されたものであるかを、ＩＣＣプロファイルのプライベートタグあるいは専用のデータファイルで保存しておき、ステップ６０２でそのデータから判定を行う。ＬＵＴが複数の要素で構成されていない場合はステップ６０５へと進み、構成されている場合はステップ６０３にてＬＵＴのデータを要素ごとに分類する。次にステップ６０４で処理を行っていない要素に属するデータを取り出す。そしてステップ６０５にてＬＵＴの入力側の色空間に着目し、その空間の中で均等になるようにデータを取り出す。本実施例では色空間としてＬ＊ａ＊ｂ＊を用いているが、どのような色空間であっても問題はない。
【００２０】
次にステップ６０６において、ステップ６０５で取り出したデータの中から色再現範囲内のデータを取り出す。プリンタやモニタの色再現範囲からかけ離れたデータを使用してＬＵＴを修正しても、望ましい結果にならない場合が多いからである。ここで用いる色再現範囲はプリンタ、モニタが持つ色再現範囲をすべて網羅したものであることが望ましい。次にステップ６０７にてデータがカバーしている範囲が十分であるか否かの判定を行う。Ｌ＊ａ＊ｂ＊空間において均等にデータを取り出すため、データ間に一定の間隔があいてしまっている。よって特に重点的に修正を行いたい部分がある場合には十分ではない可能性がある。そのためにステップ６０７で判定を行い、十分でなかった場合はステップ６０８にて足りない部分のデータを取り出す。十分である場合はステップ６０９にて取り出したＬ＊ａ＊ｂ＊データに対応したＣＭＹＫデータを取り出す。そしてステップ６１０にてＣＭＹＫデータについてどの要素に属しているかを示すインデックス付けを行う。
【００２１】
最後にステップ６１１にてすべての要素について処理したかを判定し、まだ処理していない要素がある場合はステップ６０４へ進み処理を続行する。すべての要素について判定を行った場合はステップ６１２へと進みパッチ画像を作成して処理を終了する。
【００２２】
（処理概要）
本発明によるＬＵＴ修正処理の概要を示したものが図７である。まず、ステップ７０１にて図６で作成したパッチデータの読み込みを行う。次にステップ７０２で読み込んだパッチデータを出力する。この際、読み込んだパッチデータがそのまま反映されるように、図５の画像データ（ＣＭＹＫ）５０１→画像データ（ＣＭＹＫ’）５０７のように直接パッチのＣＭＹＫデータをデバイスに送る形で出力する。そしてステップ７０３にて測色機を用いて測色作業を行い、ステップ７０４に示すように測色値をＬ＊ａ＊ｂ＊で算出する。
【００２３】
一方、ステップ７０６にて基準値算出用プロファイル７１３からＣＭＹＫ→Ｌ＊ａ＊ｂ＊を示すＬＵＴを取り出す。そしてステップ７０７で補間演算を行い、ステップ７０８で示すＬ＊ａ＊ｂ＊の基準値を算出する。補間演算については詳しく後述する。本実施例ではソースプロファイル５０２からＣＭＹＫ→Ｌ＊ａ＊ｂ＊を示すＬＵＴを取り出している。これは、ソースプロファイル中にあるＣＭＹＫ→Ｌ＊ａ＊ｂ＊のＬＵＴが、デバイスの標準的な出力値を表している場合を想定しているからである。もちろん、デバイスが目標としている値を示すＬＵＴまたはプロファイル７１３を、別な記憶領域に保持していても問題はない。
【００２４】
また、ステップ７０５で示すようにディスティネーションプロファイルを取り出し、ステップ７０９でディスティネーションプロファイルからＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴを取り出す。そして先ほど求めた測色値、基準値についてステップ７１０にて分類処理を行う。測色値、基準値はすでに元となったＣＭＹＫデータが要素ごとにインデックス付けがなされているためそれを用いて分類処理を行う。次にステップ７１１にて読み込んだＬＵＴと分類した測色値・基準値を利用してＬ＊ａ＊ｂ＊→ＣＭＹＫ変換を示すＬＵＴの修正を行う。この処理については詳しく後述する。最後にステップ７１２にてディスティネーションプロファイルの修正を行って処理が終了する。
【００２５】
本処理を行うことで、現在のデバイスの状態を、目標としている出力状態に近づけることが可能となり、理想的な色味で画像を出力することができる。また、基準値を算出するＬＵＴを統一し、複数のデバイスで同一の操作を行うことでデバイス間の色味をあわせることが可能となる。
【００２６】
以下、各処理について説明する。
【００２７】
まず、補間演算７０７について説明する。
【００２８】
（補間演算処理）
ステップ７０７で行う補間演算は、ＣＭＹＫパッチデータに対するＬ＊ａ＊ｂ＊値の測色値を求めるための処理である。ステップ７０６で読み込んだＬＵＴは、ＣＭＹＫをＬ＊ａ＊ｂ＊に変換するためのものであり、あるＣＭＹＫ値の組み合わせに対応したＬ＊ａ＊ｂ＊値が記述されている。このＬＵＴを用いて補間演算を行えば、パッチデータのＣＭＹＫ値に対するＬ＊ａ＊ｂ＊値を計算することができる。だがＣＭＹＫ色空間では、理論上では同じＬ＊ａ＊ｂ＊値だとしても、Ｋの値が異なると実際の値が異なってしまう場合があるのでそれを考慮した図８に示す補間演算を行う。
【００２９】
まず、ステップ８０１にてＣＭＹＫ→Ｌ＊ａ＊ｂ＊変換を行うＬＵＴを抽出する。次に、ステップ８０２にてＫの値を基準としたグループ化を行う。一般にプロファイルのＬＵＴは入力側が段階的に増えることが多い。例えばＣ，Ｍ，Ｙ，Ｋがそれぞれ１７段階であるとすると、Ｋの値を基準にしてグループ化した場合、１７個のグループができることになる。一方、ステップ８０３にてパッチデータの抽出を行う。これは一つのパッチのＣＭＹＫ値を抽出する操作である。そしてステップ８０４にて取り出したＣ，Ｍ，Ｙ，Ｋ値のうちＫに着目する。これをＫ１とする。
【００３０】
次に、グループ化したＬＵＴのＫの値に着目する。そして、Ｋ１の値を囲むようなグループを２つ取り出す（ステップ８０５）。例えば色の階調が２５６段階で１７段階のＬＵＴがありＫ１が２０である場合、Ｋ＝１６のグループとＫ＝３２のグループを取り出す。ここで、Ｋの値が小さいグループをＫａ、Ｋの値が大きいグループをＫｂとする。そして、Ｋａ、ＫｂそれぞれのグループについてＣＭＹの値を用いた線形補間を行う。この際の線形補間では三次元の既知の手法を用いる（ステップ８０６、ステップ８０７）。
【００３１】
最後にステップ８０８にてＫａ、Ｋｂの線形補間結果に対して、Ｋａ、Ｋｂの値を使って一次元の線形補間を行う。このようにしてパッチデータの基準値が出力される。また、ステップ８０９により、すべてのパッチデータに対して処理が行われていないと判定された場合はステップ８０３へと戻り処理を繰り返す。すべてのデータに対して処理が行われたと判断された場合は処理を終了する。
【００３２】
以上で記述したように、ディスティネーションプロファイルのＣＭＹＫからＬ＊ａ＊ｂ＊への変換を行うＬＵＴを利用し、またＫの値に対して特別な処理を行うことによってパッチデータに対する基準値を求めることができる。この結果はＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴの修正７１１にて利用する。
【００３３】
本実施例ではＬＵＴを用いているが、演算式を用いて基準値を算出しても問題はない。
【００３４】
（Ｌ＊ａ＊ｂ＊→ＣＭＹＫ変換を示すＬＵＴの修正処理）
ディスティネーションプロファイルは印刷時にデバイスに依存しない色空間のデータを出力デバイスに依存する色空間に変換する部分で利用される。よって、デバイスの不安定性により出力結果が異なるというのは、ディスティネーションプロファイルのＬ＊ａ＊ｂ＊→ＣＭＹＫ変換を示すＬＵＴが現状のデバイス状態に対して適切でないためだと言うことができる。そこで、ステップ７１１では、Ｌ＊ａ＊ｂ＊→ＣＭＹＫ変換を示すＬＵＴをデバイスの状態に最適な形になるように修正する。
【００３５】
まず、Ｌ＊ａ＊ｂ＊→ＣＭＹＫのＬＵＴと各要素の情報を読み込んで分類処理を行う。ここで、「複数の要素を含むＬＵＴ」の例として、グレーバランスを考慮したプロファイルを挙げる。このプロファイルは黒い文字の部分にはＫ単色を用い、それ以外では４色を用いる構成になっている。図２（Ｂ）を例として挙げると、ａ＊＝ｂ＝０の部分が黒い文字の部分にあたる。この場合はＬ＊のみが変動するので各３３段階のＬＵＴである場合は３３個のデータがあることになる。以降、この黒い文字の部分のデータをグレーラインのデータと呼ぶ事にする。
【００３６】
Ｌ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴの修正処理の概要を図９に示す。まず、ステップ９０１でＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴを、ステップ９０２で各要素の情報を読み込む。そしてそれらの情報を元にステップ９０３にて分類処理を行う。例えば上記グレーバランスを考慮したプロファイルの場合、Ｌ＊ａ＊ｂ＊側（入力側）に注目して分類を行う。ａ＊＝ｂ＊＝０のデータはグレーラインのデータとして取り出し、それ以外のデータは通常のデータとして区別する。このように、グレーラインのデータを表すＬＵＴとグレーラインの部分が足りない状態になったＬＵＴの２つのＬＵＴが完成する。次にステップ９０４にて足りない部分を補間する必要があるか否かを判別する。グレーラインのＬＵＴはａ＊＝ｂ＊＝０が条件であり、Ｌ＊方向にのみ変動するので１次元の独立したＬＵＴとみなすことができる。それに対してもう一つのＬＵＴはグレーラインの部分が足りない中途半端なＬＵＴとなっているため、ステップ９０５で補間演算を行い、足りない部分を計算する。この計算方法はすでに一般に使われている方法を用いる。一方、ＬＵＴのデータと読み込んだ各要素の情報を用いてＬＵＴに対してどの要素に属しているかを示すインデックス付けをステップ９０７にて行う。
【００３７】
以上のような前処理を行ってからステップ９０６のＬＵＴの修正処理を行う。これについては図１０を用いて説明する。
【００３８】
まず、ステップ１００１にてＬ＊ａ＊ｂ＊からＣＭＹＫへの変換を示すＬＵＴのＬ＊ａ＊ｂ＊データ側を取り出す。ここで、このＬＵＴはステップ９０７にてインデックス付けを行ったＬＵＴである。ＬＵＴのＬ＊ａ＊ｂ＊データ（入力側）は増分が固定している格子点データであると考えることができる。図１１はＬ＊ａ＊ｂ＊空間上に格子点データが存在している例を示す図である。例えばＬ＊ａ＊ｂ＊各３３段階のＬＵＴであった場合、３３×３３×３３個ある格子点のうちの一つをステップ１００１で取り出すということとなる。次にステップ１００２で基準値・測色値を保存したパッチデータ１０１４から、取り出したＬ＊ａ＊ｂ＊データと同じ要素のものを抽出する。そしてステップ１００３にてステップ１００１で取り出したＬ＊ａ＊ｂ＊値と最も値が近い基準値を算出する。図１２に例を示す。基準値や側色値はＬ＊ａ＊ｂ＊データなので、図に示すように格子点空間の中に存在している。図１２の例では基準値１と基準値２が存在するが、注目されている格子点データにとって最も近い基準値は基準値１の方なのでそちらが選ばれる。そしてステップ１００３にて算出された基準値と測色値の差を計算する。この値を用いてＬ＊ａ＊ｂ＊データを修正するわけだがパッチデータの数が少ないと、格子点データから距離が大きく離れた基準値が取り出されることが多くなる。このような基準値に大きく影響をうけることは望ましくないため、基準値と取り出されたＬ＊ａ＊ｂ＊データの距離を算出し、それに応じた重み付けをする（ステップ１００５）。例えば距離は三次元空間上でのユークリッド距離を用い、重みは以下の式を用いる。
【００３９】
【数１】
2006165864.tif 000003
ここでＷは重みであり、ｄｉｓｔは基準値との距離を格子点複数個分の距離で正規化したものである。
【００４０】
以上の処理をすべてのＬＵＴのＬ＊ａ＊ｂ＊値に対して繰り返す（ステップ１００６）。
【００４１】
ステップ１００６までの処理により、すべてのＬ＊ａ＊ｂ＊格子点データに対して基準値と測色値との差が求まった。図１３は全ての格子点に対して基準値と測色値の差を求めた結果の図であり、矢印は測色値から基準値への方向ベクトルを表す。この方向ベクトルの分だけ格子点のＬ＊ａ＊ｂ＊値をずらすことになるわけだが、影響の受ける基準値の違いにより、極端な方向・大きさの方向ベクトルが存在する可能性がある。図１３の例では丸で示した方向ベクトルが、周りの他の方向ベクトルに比べて極端な大きさを持つものとなっている。このようなベクトルが存在した場合は、修正した格子点のＬ＊ａ＊ｂ＊値が極端なものとなり擬似輪郭の原因となる。そこで、次にこの差に対してスムージング処理（ステップ１００７）を行うことにより、Ｌ＊ａ＊ｂ＊格子点データの修正が極端になることを防ぐ。スムージングの方法の例として、注目格子点を中心として、５×５×５の範囲の格子点での値を合計し、その平均を算出する方法や、さらに注目格子点を数倍してから平均を算出する方法などが挙げられる。ここで、スムージングを行う際は各格子点が属する要素に着目し、同一の要素のみでスムージング処理を行う。例えば５×５×５の範囲のうち、違う要素に属する格子点が５個あった場合はその点を除いて計算する。
【００４２】
そしてステップ１００８にてスムージングをかけた基準値と測色値との差をＬ＊ａ＊ｂ＊格子点データに加えていくことで格子点データを修正する。
【００４３】
次に、ステップ１００９にて変更したＬ＊ａ＊ｂ＊データを一つ取り出す。変更されたＬ＊ａ＊ｂ＊データに対するＣＭＹＫ値がわかればディスティネーションプロファイルのＬ＊ａ＊ｂ＊→ＣＭＹＫ変換を示すＬＵＴの修正が可能となる。そこで、要素ごとに分類したＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴ１０１５を取り出し（ステップ１０１０）、そのデータを利用してステップ１０１１にて線形補間によるＣＭＹＫデータの算出を行う。ここで、取り出したＬＵＴが図９で作成したグレーデータのＬＵＴの場合はＬ＊方向にのみ変化する１次元のＬＵＴとみなすことができるので線形補間で求めることができる。また、足りないグレーの部分を補間したＬＵＴである場合は入力側が３次元であるので公知の三次元の線形補間手法を行えばよい。以上の処理を修正したすべてのＬ＊ａ＊ｂ＊データに対して行う（ステップ１０１２）。このようにして新しいＬ＊ａ＊ｂ＊値とそれに対応したＣＭＹＫ値が求まったので、その結果を用いてＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴを修正する（ステップ１０１３）。
【００４４】
ここで、ステップ１００４で基準値と測色値の差を求める場合やステップ１００５にて距離による重み付けをした際に、要素ごとに特別なルールを採用してもかまわない。例えばグレーラインである場合、Ｌ＊方向にのみ差を求めてａ＊，ｂ＊に影響を与えない計算方法を適用してもかまわない。また、重みやスムージングの計算方法についてはどのようなものを用いてもかまわない。また、本実施例ではデバイスに依存しない色空間としてＬ＊ａ＊ｂ＊を用いているが、デバイスに依存しない色空間であればどの色空間を用いてもかまわない。
【００４５】
（実施例２）
実施例１では、図５に示すようにデバイスに依存しない色空間を仲介した画像データ変換を行う場合について説明した。だが、デバイスによってはデバイスに依存した色空間を直接変換するＬＵＴを扱うものもある。実施例２ではこのようなデバイスの場合に適用した例について説明する。
【００４６】
図１４はデバイスに依存した色空間同士を直接変換するＲＧＢ→ＣＭＹＫのＬＵＴを用いたデータ変換の流れを示している。まず、入力された画像データがＣＭＹＫ１４０１である場合は、ソースプロファイル１４０２を用いてデータ変換を行いＬ＊ａ＊ｂ＊データ１４０５を得る。また、画像データがＲＧＢ１４０３である場合は、ソースプロファイル１４０４を用いてデータ変換を行いＬ＊ａ＊ｂ＊データ１４０５を得る。そしてＬ＊ａ＊ｂ＊データ１４０５に対してディスティネーションプロファイル１４０６を用いてデータ変換を行い、画像データ（ＲＧＢ’）１４０７を得る。このディスティネーションプロファイルは図５のものと異なりプリンタに依存したＣＭＹＫ値ではなく、プリンタに依存したＲＧＢ値を出力するためのものである。そしてＲＧＢ’→ＣＭＹＫ’のＬＵＴ１４０８を用いて画像データ（ＣＭＹＫ’）１４０９を計算し、そのデータを画像として出力する。ここで、デバイスによっては画像データ（ＣＭＹＫ）１４０１を画像データ（ＣＭＹＫ’）１４０９として直接扱えるものや、画像データ（ＲＧＢ）１４０３を画像データ（ＲＧＢ’）１４０７として直接扱えるものがある。
【００４７】
本実施例では、ＲＧＢ’→ＣＭＹＫ’のＬＵＴに対して修正を行う必要がある。だが、実施例１と違い格子点の入力側がＬ＊ａ＊ｂ＊ではなくデバイスに依存したＲＧＢであるためそのまま手段を当てはめることはできない。
【００４８】
処理の構成はＬ＊ａ＊ｂ＊→ＣＭＹＫの場合と同一であり、パッチを作成するための前処理と実際に修正を行う本処理の２つである。それでは次にこれらについて詳しく説明する。
【００４９】
（実施例２におけるパッチ作成作業（前処理））
実施例２において前処理であるパッチを作成する手段について図１５を用いて説明する。図１５においてまず、ＲＧＢ→ＣＭＹＫのＬＵＴを取り出す（ステップ１５０１）。次にステップ１５０２でＬＵＴが複数の要素で構成されているか否かを判定する。実施例１と同様に、例えば文字を黒単色で打つようなＬＵＴである場合、グレーラインとそれ以外とで別々にプロファイルを作成し、それらを合成することで一つのプロファイルを作成する。ＬＵＴ内のデータがどのプロファイルから作成されたものであるかを、あらかじめ専用のデータファイルで保存しておき、ステップ１５０２でそのデータから判定を行う。ＬＵＴが複数の要素で構成されていない場合はステップ１５０５へと進み、構成されている場合はステップ１５０３にてそのデータを要素ごとに分類する。次にステップ１５０４で処理を行っていない要素に属するデータを取り出す。
【００５０】
ステップ１５０５にてデータを一度Ｌ＊ａ＊ｂ＊空間に投影する。そしてステップ１５０６にて投影したＬ＊ａ＊ｂ＊空間を均等に分割し、その区切られた範囲にあるデータを取り出す。図１６に例を示す。図１６の（ａ）はＲＧＢデータをＬ＊ａ＊ｂ＊データに投影したものである。このデータはＲＧＢ空間では均一な格子点データとなるが、Ｌ＊ａ＊ｂ＊空間上では不規則な間隔の格子点データとなる。次に（ｂ）に示すようにＬ＊ａ＊ｂ＊空間で均一にデータを区切り、その区画にあるデータを取り出していく。ここでもし、一つの区画に複数のデータがある場合は区画の中心値に近いデータを取り出す。ここで、区切り方については自由であり、Ｌ＊の値を基準として低濃度、中濃度、高濃度に対して異なる区切り方を採用しても問題はない。本実施例では色空間としてＬ＊ａ＊ｂ＊を用いているが、どのような色空間であっても問題はない。
【００５１】
次にステップ１５０７において、ステップ１５０６で取り出したデータの中から色再現範囲内にあるデータを取り出す。ここで用いる色再現範囲はプリンタ、モニタが持つ色再現範囲をすべて網羅したものであることが望ましい。次にステップ１５０８にてデータがカバーしている範囲が十分であるか否かの判定を行う。Ｌ＊ａ＊ｂ＊空間において均等にデータを取り出すため、データ間に一定の間隔があいてしまっている。よって特に重点的に修正を行いたい部分がある場合には十分ではない可能性がある。そのためにステップ１５０８で判定を行い、十分でなかった場合はステップ１５０９にて足りない部分のデータを取り出す。十分である場合はステップ１５１０にて取り出したＬ＊ａ＊ｂ＊データ（ＲＧＢデータ）に対応したＣＭＹＫデータを取り出す。そしてステップ１５１１にてＣＭＹＫデータについてどの要素に属しているかを示すインデックス付けを行う。
【００５２】
最後にステップ１５１２にてすべての要素について処理したかを判定し、まだ処理していない要素がある場合はステップ１５０４へ進み処理を続行する。すべての要素について判定を行った場合はステップ１５１３へと進みパッチ画像を作成して処理を終了する。
【００５３】
ここでステップ１５０１にて読み込んだＬＵＴは、入力および出力がどのような形式であっても問題ない。また、この手段は図１４において画像データ（ＣＭＹＫ）１４０１を画像データ（ＣＭＹＫ’）１４０９として直接送ることができる場合を想定している。もしこれができず、画像データ（ＲＧＢ）１４０３を画像データ（ＲＧＢ’）１４０７として直接出力できる場合は、取り出したＲＧＢデータでＲＧＢ画像のパッチを作成する。このパッチとＲＧＢ’→ＣＭＹＫ’のＬＵＴ１４０８を用いれば、ＣＭＹＫ画像を作成した場合と同様の効果を得ることができる。
【００５４】
（実施例２における処理概要）
実施例２におけるＬＵＴ修正処理の概要を示したものが図１７である。まず、ステップ１７０１にて図１５で作成したパッチデータの読み込みを行う。次にステップ１７０２で読み込んだパッチデータを出力する。この際、パッチデータがＣＭＹＫならば読み込んだパッチデータがそのまま反映されるように、図１４の画像データ（ＣＭＹＫ）１４０１を直接画像データ（ＣＭＹＫ’）１４０９として出力する。もしもパッチデータがＲＧＢならば画像データ（ＲＧＢ）１４０３を画像データ（ＲＧＢ’）１４０７として直接出力する。そしてステップ１７０３にて測色機を用いて測色作業を行い、ステップ１７０４に示すように測色値をＬ＊ａ＊ｂ＊で算出する。
【００５５】
一方、ステップ１７０５で示すようにＲＧＢ→ＣＭＹＫのＬＵＴを読み込む。また、ステップ１７０６にて基準値作成用ＬＵＴ１７１１からＣＭＹＫ→Ｌ＊ａ＊ｂ＊を示すＬＵＴを読み込む。そしてステップ１７０７で補間演算を行い、ステップ１７０８で示すＬ＊ａ＊ｂ＊の基準値を算出する。補間演算については実施例１とほぼ同様である。ただし、もしもパッチがＲＧＢである場合は一度ＲＧＢ→ＣＭＹＫのＬＵＴ１４０８を用いて演算を行ってからステップ１７０６以降の処理を行うか、あらかじめ作成されたＲＧＢ→Ｌ＊ａ＊ｂ＊のＬＵＴを用いて演算を行う。また、実施例１と同様にここで用いるＬＵＴはデバイスが目標としている値を示しており、どのような記憶領域に保持しても問題はない。
【００５６】
次に作成した測色値、基準値についてステップ１７０９にて分類処理を行う。測色値、基準値についてはすでに元となったＣＭＹＫデータが要素ごとにインデックス付けがなされているためそれを用いて分類処理を行う。そして最後にステップ１７１０にて読み込んだＬＵＴのデータや分類した測色値・基準値を利用してＲＧＢ→ＣＭＹＫ変換を示すＬＵＴの修正を行う。この処理については詳しく後述する。
【００５７】
本処理を行うことで、デバイスが目標としている出力状態を保つことができ、理想的な色味で画像を出力することができる。また、基準値を算出するＬＵＴを統一し、複数のデバイスで同一の操作を行うことで色味をあわせることが可能となる。
【００５８】
以下、各処理について説明する。
【００５９】
（ＲＧＢ→ＣＭＹＫ変換を示すＬＵＴの修正処理）
図１４においてＲＧＢ→ＣＭＹＫのＬＵＴは出力デバイスの色空間に変換するために利用される。よって、デバイスの不安定性により出力結果が異なるというのは、このＬＵＴが現状のデバイス状態に対して適切ではないためだと言うことができる。そこで、ステップ１７１０では現状のデバイスの状態にとって最適な形になるようにＬＵＴの値を修正する。
【００６０】
まず、ＲＧＢ→ＣＭＹＫのＬＵＴと各要素の情報を読み込んで分類処理を行う。複数の要素をもつＬＵＴの例として、グレーバランスを考慮したＬＵＴを挙げる。このプロファイルは黒い文字の部分にはＫ単色を用い、それ以外では４色を用いる構成になっている。例えば、Ｒ，Ｇ，Ｂの値が等しい部分が黒い文字の部分にあたる。この場合はＲＧＢが同時に変動するので各３３段階のＬＵＴである場合は３３個のデータがあることになる。以降、この黒い文字の部分のデータをグレーラインのデータと呼ぶ事にする。
【００６１】
ＲＧＢ→ＣＭＹＫを示すＬＵＴの修正処理の概要を図１８に示す。まず、ステップ１８０１でＲＧＢ→ＣＭＹＫを示すＬＵＴを、ステップ１８０２で各要素の情報を読み込む。そしてそれらの情報を元にステップ１８０３にて分類処理を行う。例えば上記グレーバランスを考慮したＬＵＴの場合、ＲＧＢ側（入力側）に注目して分類を行う。Ｒ，Ｇ，Ｂの値が等しいデータはグレーラインのデータとして取り出し、それ以外のデータは通常のデータとして区別する。このように、グレーラインのデータを表すＬＵＴとグレーラインの部分が足りない状態になったＬＵＴの２つのＬＵＴが完成する。
次にステップ１８０４にて足りない部分を補間する必要があるか否かを判別する。グレーラインのＬＵＴはＲとＧとＢが等しいことが条件であり、この３つの値は同時に変動するので１次元の独立したＬＵＴとみなすことができる。それに対してもう一つのＬＵＴはグレーラインの部分が足りない中途半端なＬＵＴとなっているため、ステップ１８０５で補間演算を行い、足りない部分を計算する。この計算方法はすでに一般に使われている方法を用いる。一方、ＬＵＴのデータと読み込んだ各要素の情報を用いてＬＵＴに対してどの要素に属しているかを示すインデックス付けをステップ１８０７にて行う。
【００６２】
以上のような前処理を行ってからステップ１８０６のＬＵＴの修正処理を行う。これについては図１９を用いて説明する。
【００６３】
まず、ステップ１９０１にてＲＧＢ→ＣＭＹＫのＬＵＴのＲＧＢデータを取り出す。ここで、このＬＵＴはステップ１８０７にてインデックス付けを行ったＬＵＴである。次にステップ１９０２でＲＧＢデータをＬ＊ａ＊ｂ＊データに変換する。ＬＵＴのＲＧＢデータ（入力側）は増分が固定しているが、Ｌ＊ａ＊ｂ＊データに変換すると間隔が一定でない格子点データとなる。図２０はＬ＊ａ＊ｂ＊空間上にＲＧＢを変換した格子点データが存在している例を示す図である。例えばＬ＊ａ＊ｂ＊各３３段階のＬＵＴであった場合、３３×３３×３３個ある格子点のうちの一つをステップ１９０１で取り出すということとなる。次にステップ１９０３で、基準値・測色値を保存したパッチデータ１９１６から取り出したＲＧＢデータと同じ要素のものを抽出する。次にステップ１９０４にてステップ１９０１で取り出したＲＧＢデータを変換したＬ＊ａ＊ｂ＊値と最も値が近い基準値を算出する。図２１に例を示す。基準値や測色値はＬ＊ａ＊ｂ＊データなので、図に示すように格子点空間の中に存在している。図２１の例では基準値１と基準値２が存在するが、注目されている格子点データにとって最も近い基準値は基準値１の方なのでそちらが選ばれる。そしてステップ１９０５にて算出された基準値と測色値の差を計算する。この値を用いてＬ＊ａ＊ｂ＊データを修正するわけだが、パッチデータの数が少ないと、格子点データから距離が大きく離れた基準値が取り出されることが多くなる。このような基準値に大きく影響をうけることは望ましくないため、基準値と取り出されたＬ＊ａ＊ｂ＊データの距離を算出し、それに応じた重み付けをする（ステップ１９０６）。例えば距離は三次元空間上でのユークリッド距離を用い、重みは以下の式を用いる。
【００６４】
【数２】
2006165864.tif 000004
ここでＷは重みであり、ｄｉｓｔは基準値との距離を格子点複数個分の距離で正規化したものである。
【００６５】
以上の処理をすべてのＬＵＴのＲＧＢデータを変換したＬ＊ａ＊ｂ＊値に対して繰り返す（ステップ１９０７）。
【００６６】
ステップ１９０７までの処理により、すべてのＲＧＢ格子点データに対して基準値と測色値との差が求まった。図２２は全ての格子点に対して基準値と測色値の差を求めた結果の図であり、矢印は測色値から基準値への方向ベクトルを表す。この方向ベクトルの分だけ格子点のＬ＊ａ＊ｂ＊値をずらすことになるわけだが、影響の受ける基準値の違いにより、極端な方向・大きさの方向ベクトルが存在する可能性がある。図２２の例では丸で示した方向ベクトルが、周りの他の方向ベクトルに比べて極端な大きさを持つものとなっている。このようなベクトルが存在した場合は、修正した格子点のＬ＊ａ＊ｂ＊値が極端なものとなり擬似輪郭の原因となる。そこで、次にこの差に対してスムージング処理（ステップ１９０８）を行うことにより、Ｌ＊ａ＊ｂ＊格子点データの修正が極端になることを防ぐ。スムージングの方法の例として、注目格子点を中心として、５×５×５の範囲の格子点での値を合計し、その平均を算出する方法や、さらに注目格子点を数倍してから平均を算出する方法などが挙げられる。ここで、スムージングを行う際は各格子点が属する要素に着目し、同一の要素のみでスムージング処理を行う。例えば５×５×５の範囲のうち、違う要素に属する格子点が５個あった場合はその点を除いて計算する。
【００６７】
そしてステップ１９０９にてスムージングをかけた基準値と測色値との差をＬ＊ａ＊ｂ＊格子点データに加えていくことで格子点データを修正する。次にこのＬ＊ａ＊ｂ＊データをＲＧＢデータに変換し、修正されたＲＧＢ格子点を作る。
【００６８】
次に、ステップ１９１０にて変更したＲＧＢデータを一つ取り出す。変更されたＲＧＢデータに対するＣＭＹＫ値がわかればＲＧＢ→ＣＭＹＫ変換を示すＬＵＴの修正が可能となる。そこで、要素ごとに分類したＲＧＢ→ＣＭＹＫを示すＬＵＴ１９１７を取り出し（ステップ１９１２）、そのデータを利用してステップ１９１３にて線形補間によるＣＭＹＫデータの算出を行う。ここで、取り出したＬＵＴが図１８で作成したグレーデータのＬＵＴの場合は１次元のＬＵＴとみなすことができるので線形補間で求めることができる。また、足りないグレーの部分を補間したＬＵＴである場合は入力側が３次元であるので公知の三次元の線形補間手法を行えばよい。以上の処理を修正したすべてのＲＧＢデータに対して行う（ステップ１９１４）。このようにして新しいＲＧＢ値とそれに対応したＣＭＹＫ値が求めることができる。
【００６９】
ここで、ステップ１９０４で基準値と測色値の差を求める場合やステップ１９０５にて距離による重み付けをした際に、要素ごとに特別なルールを採用してもかまわない。例えばグレーラインである場合、Ｌ＊方向にのみ差を求めてａ＊，ｂ＊に影響を与えない計算方法を適用してもかまわない。また、重みやスムージングの計算方法についてはどのようなものを用いてもかまわない。また、本実施例ではデバイスに依存しない色空間としてＬ＊ａ＊ｂ＊を用いているが、デバイスに依存しない色空間であればどの色空間を用いてもかまわない。
【図面の簡単な説明】
【００７０】
【図１】入力デバイスから出力デバイスへ画像を出力する際の色空間の遷移について示した図である。
【図２】ＩＣＣプロファイルのデータ表現形式について示した図である。
【図３】本発明で提案するカラー画像処理システムの構成図について示した図である。
【図４】本発明で使用するカラーＭＦＰの構成図である。
【図５】本発明で使用するカラーＭＦＰのデータ処理部における画像データ変換の流れについて示した図である。
【図６】本発明の実施例１において前処理であるパッチ作成手段について示した図である。
【図７】本発明の実施例１における処理全体の概要について示した図である。
【図８】本発明にて使用する補間演算処理について示した図である。
【図９】本発明の実施例１におけるＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴの修正処理の概要を表した図である。
【図１０】本発明の実施例１におけるＬ＊ａ＊ｂ＊→ＣＭＹＫを示すＬＵＴの修正処理について詳細に表した図である。
【図１１】Ｌ＊ａ＊ｂ＊空間上にある格子点データを表した図である。
【図１２】格子点上における測色値、基準値を示した図である。
【図１３】格子点データとそれに対する測色値と基準値の差について示した図である。
【図１４】実施例２における画像データ変換の流れについて示した図である。
【図１５】実施例２において前処理であるパッチ作成手段について示した図である。
【図１６】実施例２においてＲＧＢデータをＬ＊ａ＊ｂ＊データに投影した例を示した図である。
【図１７】実施例２における処理全体の概要を表した図である。
【図１８】実施例２においてＲＧＢ→ＣＭＹＫを示すＬＵＴの修正処理の概要を表した図である。
【図１９】実施例２においてＲＧＢ→ＣＭＹＫ変換を示すＬＵＴの修正処理について詳細に示した図である。
【図２０】実施例２におけるＬ＊ａ＊ｂ＊空間上の格子点データについて表した図である。
【図２１】実施例２における格子点上の測色値、基準値を表した図である。
【図２２】実施例２における格子点データとそれに対する測色値と基準値の差を表した図である。
【図１】
2006165864.tif 000005
【図２】
2006165864.tif 000006
【図３】
2006165864.tif 000007
【図４】
2006165864.tif 000008
【図５】
2006165864.tif 000009
【図６】
2006165864.tif 000010
【図７】
2006165864.tif 000011
【図８】
2006165864.tif 000012
【図９】
2006165864.tif 000013
【図１０】
2006165864.tif 000014
【図１１】
2006165864.tif 000015
【図１２】
2006165864.tif 000016
【図１３】
2006165864.tif 000017
【図１４】
2006165864.tif 000018
【図１５】
2006165864.tif 000019
【図１６】
2006165864.tif 000020
【図１７】
2006165864.tif 000021
【図１８】
2006165864.tif 000022
【図１９】
2006165864.tif 000023
【図２０】
2006165864.tif 000024
【図２１】
2006165864.tif 000025
【図２２】
2006165864.tif 000026