(57)【要約】【課題】  動的に生成されたパッチを精度よく測色してプロファイルを修正することによりカラーキャリブレーションを好適に行うことができる画像処理システム及び画像処理方法を提供する。【解決手段】  出力デバイスが保持するプロファイルを用いて多次色で構成されたパッチデータを作成し、隣接するパッチ間の色差が所定値以上になるようにパッチの配列を変更したパッチデータを媒体上に形成して出力する。次いで、媒体上に形成されたパッチデータを測色して測色データを取得して、プロファイルに含まれる第１のテーブルを用いて基準値を算出し、測色データと当該基準値とを用いて第２のテーブルを更新し、更新後の第２のテーブルを含むプロファイルを用いて画像を出力する。【選択図】  図６
2006179991.tif 000002
【特許請求の範囲】
【請求項１】
出力デバイスが保持するプロファイルに含まれる第１のテーブルを用いて入力色空間における画像を絶対色空間における画像に変換した後、前記プロファイルに含まれる第２のテーブルを用いて前記絶対色空間における画像を出力色空間における画像に変換して出力する画像処理システムであって、
前記プロファイルを用いて多次色で構成されたパッチデータを作成する作成手段と、
隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更手段と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成手段と、
前記媒体上に形成されたパッチデータを測色して測色データを取得する測色手段と、
前記第１のテーブルを用いて基準値を算出する算出手段と、
前記測色データと前記基準値とを用いて前記第２のテーブルを更新する更新手段と、
前記更新手段により更新された前記第２のテーブルを含む前記プロファイルを用いて画像を出力する出力手段と
を備えることを特徴とする画像処理システム。
【請求項２】
前記変更手段が、組み合わせ最適化手法を適用して前記作成手段で作成された前記パッチデータのパッチの配列を変更することを特徴とする請求項１に記載の画像処理システム。
【請求項３】
前記変更手段において適用される前記組み合わせ最適化手法が、パッチの固有番号と入力色空間値と出力色空間値とを含む遺伝子が所定個含まれる染色体を作成し、該染色体に含まれる各遺伝子について隣接するパッチ間の色差が所定値以下であるかどうかを評価し、評価値が上位の所定数の遺伝子を選択するとともに、評価値が下位の所定数の遺伝子を突然変異させて新たな遺伝子を生成する最適化を行う遺伝的アルゴリズムに基づくものであることを特徴とする請求項２に記載の画像処理システム。
【請求項４】
前記作成手段が、絶対色空間で均等間隔で発生させたデータを、前記プロファイルに含まれる前記第２のテーブルを用いて出力色空間のデータに変換して前記パッチデータを作成することを特徴とする請求項１から３までのいずれか１項に記載の画像処理システム。
【請求項５】
前記作成手段が、絶対色空間で均等間隔で発生させたデータのうち、所定のデバイスの色再現範囲に含まれるデータのみを前記パッチデータとすることを特徴とする請求項４に記載の画像処理システム。
【請求項６】
前記第１のテーブルが、ＣＭＹＫ値で定義される画像をＬａｂ値で定義される画像に変換するテーブルであって、
前記算出手段が、Ｋ値を基準にして前記第１のテーブルをグループ化し、前記パッチデータのＫ値を抽出し、前記パッチデータのＫ値を囲む２つのグループを取り出し、前記パッチデータのＣＭＹＫ値を前記２つのグループのＣＭＹＫ値を線形補間した値を前記基準値として算出することを特徴とする請求項１から５までのいずれか１項に記載の画像処理システム。
【請求項７】
前記作成手段が、絶対色空間内で所定数の格子点データを均等に発生させ、前記格子点データのうち所定空間内の格子点データを抽出し、抽出された該格子点データを前記第２のテーブルを用いて出力色空間の格子点データに変換して前記パッチデータを作成することを特徴とする請求項１から６までのいずれか１項に記載の画像処理システム。
【請求項８】
前記更新手段が、前記第２のテーブルにおける絶対色空間内のデータに対して各データとの距離が最短となる基準値を算出し、該基準値と前記測色データとの差分値を算出して該差分値を各データに加算することにより前記第２のテーブルを更新することを特徴とする請求項１から７までのいずれか１項に記載の画像処理システム。
【請求項９】
前記更新手段が、前記データと前記基準値との距離に応じて前記差分値を重み付けし、重み付けされた該差分値にスムージング処理を行った値をそれぞれのデータに加算することにより前記第２のテーブルを更新することを特徴とする請求項８に記載の画像処理システム。
【請求項１０】
前記測色手段が、前記媒体上に形成されたパッチを手動走査式測色機を用いて手動で走査して前記測色データを取得することを特徴とする請求項１から９までのいずれか１項に記載の画像処理システム。
【請求項１１】
前記測色手段が、前記媒体上に形成されたパッチを自動走査式測色機を用いて自動で走査して前記測色データを取得することを特徴とする請求項１から９までのいずれか１項に記載の画像処理システム。
【請求項１２】
出力デバイスが保持するプロファイルに含まれる第１のテーブルを用いて入力色空間における画像を絶対色空間における画像に変換した後、前記プロファイルに含まれる第２のテーブルを用いて前記絶対色空間における画像を出力色空間における画像に変換して出力する画像処理方法であって、
前記プロファイルを用いて多次色で構成されたパッチデータを作成する作成工程と、
隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更工程と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成工程と、
前記媒体上に形成されたパッチデータを測色して測色データを取得する測色工程と、
前記第１のテーブルを用いて基準値を算出する算出工程と、
前記測色データと前記基準値とを用いて前記第２のテーブルを更新する更新工程と、
前記更新工程により更新された前記第２のテーブルを含む前記プロファイルを用いて画像を出力する出力工程と
を有することを特徴とする画像処理方法。
【請求項１３】
出力デバイスが保持するプロファイルに含まれる第１のテーブルを用いて入力色空間における画像を絶対色空間における画像に変換した後、前記プロファイルに含まれる第２のテーブルを用いて前記絶対色空間における画像を出力色空間における画像に変換して出力させるコンピュータに、
前記プロファイルを用いて多次色で構成されたパッチデータを作成する作成手順と、
隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更手順と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成手順と、
前記媒体上に形成されたパッチデータを測色して測色データを取得する測色手順と、
前記第１のテーブルを用いて基準値を算出する算出手順と、
前記測色データと前記基準値とを用いて前記第２のテーブルを更新する更新手順と、
前記更新手順により更新された前記第２のテーブルを含む前記プロファイルを用いて画像を出力する出力手順と
を実行させるためのプログラム。
【請求項１４】
請求項１３に記載のプログラムを格納したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項１５】
プロファイルを用いて多次色で構成されたパッチデータを作成する際に、隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更工程と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成工程と
を有することを特徴とする画像処理方法。
【請求項１６】
前記媒体上に形成された前記パッチデータを測色して測色データを取得する測色工程と、
前記プロファイルの第１のテーブルを用いて基準値を算出する算出工程と、
前記測色データと前記基準値とを用いて前記プロファイルの第２のテーブルを更新する更新工程と
をさらに有することを特徴とする請求項１５に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カラーマネージメントを行って画像を形成する画像処理システム及び画像処理方法に関する。
【背景技術】
【０００２】
近年、出力デバイスによるカラー画像出力が盛んになり、色情報を管理するカラーマネージメント技術の重要性も増してきている。例えば、モニタ等の入力デバイスとプリンタ等の出力デバイスとでは色の再現範囲が異なるため、入力デバイスの色情報をそのまま出力デバイスの色情報として扱うことができない。また、入力色空間と出力色空間とでは、一般的に色空間の定義が異なる。そこで、入力デバイスの色情報を一旦絶対色空間の情報へ変換し、その絶対色空間の情報を出力デバイスの色空間の情報に変換することで、入力デバイスの色データを出力デバイスで再現可能な色データに変換して出力するカラーマネージメントシステム（以下、「ＣＭＳ」と称す。）が重要となる。
【０００３】
図１は、入力デバイスから出力デバイスへ画像を出力する一般的なＣＭＳにおける処理手順を説明するための図である。図１に示すように、入力色空間２０１は、ソースプロファイル２０２によって絶対色空間２０３へ変換される。そして絶対色空間２０３は、デスティネーションプロファイル２０４によって出力色空間２０５へ変換される。ここで、ソースプロファイル２０２は、入力色空間２０１を絶対色空間２０３に変換するプロファイルを示し、デスティネーションプロファイル２０４は、絶対色空間２０３を出力色空間２０５に変換するプロファイルを示しており、現在ではＩＣＣで規定されたフォーマットであるＩＣＣプロファイルが多く使われている。
【０００４】
図２は、ＩＣＣプロファイルのデータ表現形式の一例を示す図である。プリンタで用いられるプロファイルでは、図２で示すように、色空間の変換がルックアップテーブル（ＬＵＴ）で表現される場合が多い。図２において、（Ａ）は、デバイスに依存したＣＭＹＫデータをデバイスに依存しないＬａｂデータに変換するためのＬＵＴである。また、（Ｂ）は、デバイスに依存しないＬａｂデータをデバイスに依存するＣＭＹＫデータに変換するためのＬＵＴである。
【０００５】
上記ＩＣＣプロファイルは、通常は出力デバイスの製品出荷時に配布されたり、機器に組み込まれたりしている。しかし、どのようなデバイスでも経時変化による特性変動が避けられず、変動したデバイスに対しては初期のＩＣＣプロファイルが最適なものであるとは言い難くなってしまう場合がある。また、複数の同じ出力デバイスに対して同じプロファイルを用いてデータを出力した場合、デバイスの個体差により、必ずしも同じ色味でプリントされない場合がある。
【０００６】
このような出力デバイスの経時変化や個体間差の問題への対処として、その時点での、或いは、それぞれのデバイスのその時点の状態に応じて、ＩＣＣプロファイルを作り直すことによって、個体毎のその時点のデバイス特性に最適な色再現を得ることが行われるようになってきている。
【０００７】
ここで、本出願人は、ＩＣＣプロファイル中のＬａｂ→ＣＭＹＫ変換ＬＵＴを測色データをもとにキャリブレートするシステムを提案している（特願２００４−２００８００）。一般に、プロファイルを再作成する場合、多数のパッチを出力して測色するために膨大な時間がかかるが、本出願人が提案したシステムでは、プリンタ状態やプロファイルのＬＵＴに応じて動的に生成した少数のパッチを出力して測色するので、短時間でプロファイルをキャリブレートでき、プロファイルを再作成するのと同等の最適な色再現を得ることができる。
【０００８】
このようなアプリケーションにおいて、測色機として、近年よく使われるようになっているタイプのものが、パッチをローラーで動かしながら測色を行う自動走査式（例えば、Ｘ−Ｒｉｔｅ社製ＤＴＰ４１等）、或いは、パッチにガイドを当て、ガイド上で測色機自体を手動で滑らせながら測色を行う手動走査式（例えば、ＧｒｅｔａｇＭａｃｂｅｔｈ社製ｉ１）のものがある。
【０００９】
図１６は、手動走査式の測色機を説明するための模式図である。図１６において、１６１は手動走査式測色機の本体（測色機本体）、１６４は手動走査をし易くするためのガイド、１６６は測定対象となるパッチである。
【００１０】
測定に際しては、ガイド１６４をパッチ１６６の一列分に当て、ガイド１６４の中央部に開けられたガイド穴１６５に、測色機本体１６１の裏面にあるセンサ１６３をはめ込んで、ボタン１６２を押下しながら、移動方向に測色機本体をスライドさせることによってパッチ１６６の測色を行う。そして、ガイド穴１６４上をスライドさせ終わると、押下していたボタン１６２をリリースすることによってパッチ１６６一列分の測色を終了する。以下、同様にして、次の列のパッチを計測することによって、パッチ全体を測色する。
【００１１】
図１７は、手動走査式測色機の動作手順を説明するためのフローチャートである。まず、測色機本体１６１をガイドにあて、図１６を用いて上述したようにボタン１６２を押下することにより測色が開始される（ステップＳ１７００）。測色が開始されると、測色値を取得して、一時的に測色機本体１６１のメモリ上に保存する（ステップＳ１７０１）。この測色動作は一定の時間間隔で行われ、以降の条件に従って終了或いは次の測色値の取得が行われる。
【００１２】
次に、一時的に保存（ストア）されている測色値Ｌａｂ０と現在取得している測色値Ｌａｂ１との比較を行う（ステップＳ１７０２）。その結果、Ｌａｂ０とＬａｂ１との色差ΔＥが所定の値よりも大きい場合は、測色機が移動したことにより隣接する次のパッチの測色が行われたものと判断して、保存されている測色値Ｌａｂ０を、例えばＵＳＢで接続されたＰＣに送信する（ステップＳ１７０３）。さらに、パッチの個数を計数するカウンタをインクリメント（１増分）し（ステップＳ１７０４）、ステップＳ１７０１の測色値取得処理に戻る。
【００１３】
一方、ステップＳ１７０２で色差が小さい場合には、押下されていたボタン１６２がリリースされたかどうかをチェックする（ステップＳ１７０５）。その結果、ボタン１６２がリリースされていない場合（Ｎｏ）はステップＳ１７０１の測色値取得処理に戻る。一方、ステップＳ１７０５でボタン１６２がリリースされた場合（Ｙｅｓ）は、測色の終了が操作者から指示されたものと判断して、ストアされている測色値をＰＣに送信し（ステップＳ１７０６）、パッチのカウンタをインクリメント（１増分）する（ステップＳ１７０７）。
【００１４】
ステップＳ１７０７の処理後、あらかじめ設定されている測色すべきパッチの個数とパッチのカウンタ値を比較する（ステップＳ１７０８）。その結果、パッチの個数とカウンタ値が同値の場合は正常終了し（ステップＳ１７０９）、それらが異なる値の場合はエラー終了する（ステップＳ１７１０）。
【００１５】
以上、手動走査式測色機の動作について説明したが、自動走査式についても、手動で測色機本体を移動するのではなく、パッチを測色機のローラ等で移動させるという点を除けば、基本的な動作原理は手動走査式測色機と変わらない。
【００１６】
以上のような測色機を用いることによって、ステージ上で位置決めをした上でチャートをセットし、アーム上に設置されたセンサをパッチ上に移動し、センサを上下に移動させながら測色を行うステージ型の測色機に比べて、少数のパッチであれば非常に効率よく測色を行うことができる。
【特許文献１】特開２００２−９４８１７公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
しかしながら、上述した自動走査式及び手動走査式の測色機は、隣接するパッチの色差が大きいことを検知してパッチの境界を見つけ、区切られた一つ一つのパッチの測色値を得るように動作するものである。従って、隣接するパッチの色差が小さい場合、複数のパッチが１つのパッチとして読み取られてしまうことがあるという欠点がある。
【００１８】
これに対応するために、パッチの配列を隣接するパッチの色差が大きくなるように、あらかじめ固定して配列することが行われている。しかし、本出願人が提案している特願２００４−２００８００で開示しているような動的に生成されたパッチに対しては、あらかじめ配列を固定することは不可能であるため、正常な測色値の読み取りが保証できない。
【００１９】
本発明は、このような事情を考慮したものであり、動的に生成されたパッチを精度よく測色してプロファイルを修正することによりカラーキャリブレーションを好適に行うことができる画像処理システム及び画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【００２０】
上記課題を解決するために、本発明は、出力デバイスが保持するプロファイルに含まれる第１のテーブルを用いて入力色空間における画像を絶対色空間における画像に変換した後、前記プロファイルに含まれる第２のテーブルを用いて前記絶対色空間における画像を出力色空間における画像に変換して出力する画像処理システムであって、
前記プロファイルを用いて多次色で構成されたパッチデータを作成する作成手段と、
隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更手段と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成手段と、
前記媒体上に形成されたパッチデータを測色して測色データを取得する測色手段と、
前記第１のテーブルを用いて基準値を算出する算出手段と、
前記測色データと前記基準値とを用いて前記第２のテーブルを更新する更新手段と、
前記更新手段により更新された前記第２のテーブルを含む前記プロファイルを用いて画像を出力する出力手段と
を備えることを特徴とする。
【００２１】
また、本発明に係る上記画像処理システムは、前記変更手段が、組み合わせ最適化手法を適用して前記作成手段で作成された前記パッチデータのパッチの配列を変更することを特徴とする。
【００２２】
さらに、本発明に係る上記画像処理システムは、前記変更手段において適用される前記組み合わせ最適化手法が、パッチの固有番号と入力色空間値と出力色空間値とを含む遺伝子が所定個含まれる染色体を作成し、該染色体に含まれる各遺伝子について隣接するパッチ間の色差が所定値以下であるかどうかを評価し、評価値が上位の所定数の遺伝子を選択するとともに、評価値が下位の所定数の遺伝子を突然変異させて新たな遺伝子を生成する最適化を行う遺伝的アルゴリズムに基づくものであることを特徴とする。
【００２３】
さらにまた、本発明に係る上記画像処理システムは、前記作成手段が、絶対色空間で均等間隔で発生させたデータを、前記プロファイルに含まれる前記第２のテーブルを用いて出力色空間のデータに変換して前記パッチデータを作成することを特徴とする。
【００２４】
さらにまた、本発明に係る上記画像処理システムは、前記作成手段が、絶対色空間で均等間隔で発生させたデータのうち、所定のデバイスの色再現範囲に含まれるデータのみを前記パッチデータとすることを特徴とする。
【００２５】
さらにまた、本発明に係る上記画像処理システムは、前記第１のテーブルが、ＣＭＹＫ値で定義される画像をＬａｂ値で定義される画像に変換するテーブルであって、
前記算出手段が、Ｋ値を基準にして前記第１のテーブルをグループ化し、前記パッチデータのＫ値を抽出し、前記パッチデータのＫ値を囲む２つのグループを取り出し、前記パッチデータのＣＭＹＫ値を前記２つのグループのＣＭＹＫ値を線形補間した値を前記基準値として算出することを特徴とする。
【００２６】
さらにまた、本発明に係る上記画像処理システムは、前記作成手段が、絶対色空間内で所定数の格子点データを均等に発生させ、前記格子点データのうち所定空間内の格子点データを抽出し、抽出された該格子点データを前記第２のテーブルを用いて出力色空間の格子点データに変換して前記パッチデータを作成することを特徴とする。
【００２７】
さらにまた、本発明に係る上記画像処理システムは、前記更新手段が、前記第２のテーブルにおける絶対色空間内のデータに対して各データとの距離が最短となる基準値を算出し、該基準値と前記測色データとの差分値を算出して該差分値を各データに加算することにより前記第２のテーブルを更新することを特徴とする。
【００２８】
さらにまた、本発明に係る上記画像処理システムは、前記更新手段が、前記データと前記基準値との距離に応じて前記差分値を重み付けし、重み付けされた該差分値にスムージング処理を行った値をそれぞれのデータに加算することにより前記第２のテーブルを更新することを特徴とする。
【００２９】
さらにまた、本発明に係る上記画像処理システムは、前記測色手段が、前記媒体上に形成されたパッチを手動走査式測色機を用いて手動で走査して前記測色データを取得することを特徴とする。
【００３０】
さらにまた、本発明に係る上記画像処理システムは、前記測色手段が、前記媒体上に形成されたパッチを自動走査式測色機を用いて自動で走査して前記測色データを取得することを特徴とする。
【００３１】
さらにまた、上記課題を解決するために、本発明は、出力デバイスが保持するプロファイルに含まれる第１のテーブルを用いて入力色空間における画像を絶対色空間における画像に変換した後、前記プロファイルに含まれる第２のテーブルを用いて前記絶対色空間における画像を出力色空間における画像に変換して出力する画像処理方法であって、
前記プロファイルを用いて多次色で構成されたパッチデータを作成する作成工程と、
隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更工程と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成工程と、
前記媒体上に形成されたパッチデータを測色して測色データを取得する測色工程と、
前記第１のテーブルを用いて基準値を算出する算出工程と、
前記測色データと前記基準値とを用いて前記第２のテーブルを更新する更新工程と、
前記更新工程により更新された前記第２のテーブルを含む前記プロファイルを用いて画像を出力する出力工程と
を有することを特徴とする。
【００３２】
さらにまた、上記課題を解決するために、本発明に係る画像処理方法は、
プロファイルを用いて多次色で構成されたパッチデータを作成する際に、隣接するパッチ間の色差が所定値以上になるように前記パッチデータ内のパッチの配列を変更する変更工程と、
配列が変更された前記パッチデータを媒体上に形成して出力する形成工程と
を有することを特徴とする。
【発明の効果】
【００３３】
本発明によれば、動的に生成されたパッチを精度よく測色してプロファイルを修正することによりカラーキャリブレーションを好適に行うことができる。
【発明を実施するための最良の形態】
【００３４】
以下、図面を参照して、本発明の一実施形態に係る画像処理システムについて説明する。
【００３５】
＜システム構成＞
図３は、本発明を一実施形態に係る画像処理システムの構成を示すブロック図である。図３に示すように、本実施形態に係る画像処理システムは、オフィス１０内に配設されたＬＡＮ１０８に各機器が接続された環境で実現される。すなわち、オフィス１０内に構築されたＬＡＮ１０８には、デジタル複合機（ＭＦＰ）１０１、１０２、マネージメントＰＣ１０４、クライアントＰＣ１０５、１０６が接続されている。この環境内において、ＭＦＰ１０１、１０２は、クライアントＰＣ１０５、１０６からＬＡＮ１０８を経由して送られたＰＤＬデータを、プリンタエンジンに出力可能な形式に変換して出力する。
【００３６】
クライアントＰＣ１０５、１０６は、様々なアプリケーションからプリンタドライバを介してＰＤＬデータを生成し、ＭＦＰ１０１、１０２に向けて送出する。一方、マネージメントＰＣ１０４は、ＵＳＢ１１１で接続されている測色機１０３で得られた測色値の処理やプロファイルの更新処理、ＭＦＰ１０１、１０２へのプロファイルのアップロード及びダウンロードを担当する。その他にも、マネージメントＰＣ１０４は、その内部に画像記憶手段、画像処理手段、表示手段、入力手段等を備える。
【００３７】
図４は、本実施形態に係る画像処理システムにおけるＭＦＰ１０１、１０２の構成を示すブロック図である。図４に示すように、オートドキュメントフィーダーを含む画像読み取り部３０１は、束状の或いは１枚の原稿画像を光源で照射し、原稿反射像をレンズで固体撮像素子上に結像し、固体撮像素子からラスター状の画像読み取り信号を例えば６００ＤＰＩの密度のイメージ情報として得る。ＭＦＰ１０１、１０２における通常の複写機能としては、この画像信号をデータ処理部３０５で記録信号へ画像処理し、複数毎複写の場合は記憶部３０２に一旦一ページ分の記録データを記憶した後、記録部３０３に順次出力して紙上に画像を形成する。
【００３８】
これに対して、ＭＦＰ１０１、１０２におけるプリント機能は、クライアントＰＣ１０５、１０６からＬＡＮ１０８を経由してネットワークＩ／Ｆ３０６に入力されたＰＤＬデータを、記憶部３０２にスプールするとともに、データ処理部３０５内に設けられた、不図示のＰＤＬ処理部でレンダリング処理やＩＣＣプロファイルによるＣＭＳ処理を行った後、不図示の画像処理部でγ変換等の画像処理を行い、データ処理部３０５で記録可能なラスターデータに変換し、記録部３０３で紙媒体等上に記録画像として形成する。
【００３９】
また、操作部３０４は、ＭＦＰ１０１、１０２に対する操作者の指示を行うための入力を受け付けたり、操作入力の状態表示及び画像データの処理状態の表示等を行う。
【００４０】
図５は、クライアントＰＣ１０５、１０６からＣＭＹＫ色空間のＰＤＬデータをＭＦＰ１０１、ＭＦＰ１０２に送信した場合のデータ処理部３０５でのＣＭＳ処理の手順を説明するための図である。図５に示すように、データ処理部３０５は、ＣＭＹＫ色空間で表現されている画像データ４０１を受け取り、それに対してソースプロファイル４０２を用いて画像データ（Ｌａｂ）４０３に変換し、次にデスティネーションプロファイル４０４を用いて画像データ（ＣＭＹＫ’）４０５に変換する。
【００４１】
ソースプロファイル４０２には、ＣＭＹＫ入力の場合、印刷機のシミュレーションを行うためのシミュレーションプロファイルを指定するのが一般的である。そのような例として、ＤＩＣ（大日本インク、日本標準）、ＳＷＯＰ（ＵＳＡ標準）等の標準インク設定の印刷機プロファイルが挙げられる。これにより、印刷機のＣＭＹＫ色値が絶対色空間の色値に変換され、これが、出力プリンタのプロファイルであるデスティネーションプロファイルによって出力ＣＭＹＫ色空間に変換される。尚、上記変換において、画像データ（ＣＭＹＫ）４０１と画像データ（ＣＭＹＫ’）４０５とは同一次元のデータであるが、それぞれ違うデバイスで定義されているため実際の値は異なっている。
【００４２】
また、ＣＭＳ処理を行わないフローとして、画像データ（ＣＭＹＫ）４０１を直接画像データ（ＣＭＹＫ’）として出力することも可能である。
【００４３】
ここで、本実施形態では、ソースプロファイル、デスティネーションプロファイルとも、ＭＦＰ１０１、１０２が保持しており、データ処理部３０５でプロファイルを読み出して処理を行うものとする。また、データ処理部３０５は、マネージメントＰＣ１０４からネットワークＩ／Ｆ３０６を介して送られてきたプロファイルのＵｐｌｏａｄ／Ｄｏｗｎｌｏａｄ要求に対して、プロファイルをネットワーク上に送信したり、プロファイルを受信・保持することが可能である。
【００４４】
また、ソースプロファイルは、印刷機のようなＣＭＹＫデバイスに対するプロファイルだけでなく、ＲＧＢデータに対して適用するＲＧＢプロファイル（例えば、ｓＲＧＢモニタプロファイル）を用いてもよい。この場合には、入力画像データはＲＧＢ色空間となる。ＣＭＹＫ画像データが入力されない場合は、ＰＤＬをＰＳに限定する必要はなく、画像データ（ＣＭＹＫ）４０１を画像データ（ＲＧＢ）と読み替えればよい。
【００４５】
図６は、本実施形態に係る画像処理システムにおけるマネージメントを行うマネージメントＰＣ１０４の細部構成を示すブロック図である。図６に示すように、マネージメントＰＣ１０４内部の処理は全てソフトウェアで構成されており、当該ＰＣ内のハードディスク（ＨＤＤ）から読み出されてＲＡＭにストアされたプログラムがＣＰＵ上で実行されることにより実現される。
【００４６】
図６において、測色機Ｉ／Ｆ１００１は、試料に光源を照射し、反射光を収集するセンサで読み取られた分光感度をＬａｂに変換した測定値を出力する測色機１０３とのインタフェースを行うモジュールであり、測色機１０３の出力したＬａｂ値を受け取る。測色機Ｉ／Ｆ１００１は、ＵＳＢインタフェースモジュール及び測色機ハンドリング用モジュールで実現される。尚、本実施形態において測色機Ｉ／Ｆ１００１は、測色機１０３とのインタフェースはＵＳＢとしているが、もちろん、ＵＳＢ以外のＰＣが備えているシリアルＩ／ＦやパラレルＩ／Ｆ等でも構わない。
【００４７】
また、図６において、プロファイル送受信部１００３は、更新すべきＭＦＰのプロファイルをネットワークＩ／Ｆ１００５を介して送受信するモジュールである。プロファイルの受信に際しては、ＭＦＰ１０１、１０２に対して、デスティネーションプロファイル送信要求コマンドを送り、ＭＦＰがコマンドに応答して送ってきたプロファイルを受信する。また、更新したプロファイルをマネージメントＰＣ１０４からＭＦＰ１０１、１０２に送信する際には、プロファイル送信コマンドとともに、プロファイルを付与してＭＦＰ１０１、１０２に送信する。
【００４８】
プロファイル更新処理部１００２は、ＭＦＰ１０１、１０２から受信したプロファイルのＬＵＴを、ＭＦＰ１０１、１０２に出力したパッチの測色値をもとにして、ＭＦＰ１０１、１０２に最適なものに更新する処理を行うモジュールである。尚、この処理の詳細については後述する。
【００４９】
パッチ出力部１００４は、プロファイル更新処理部１００２で使用するＣＭＹＫ値に対するＬａｂを得るためのＣＭＹＫパッチデータを作成する、或いはマネージメントＰＣ１０４内の格納領域から読み出してネットワークＩ／Ｆ１００５を介してＭＦＰ１０１、１０２に対してプリント送信する処理を行う。
【００５０】
ＧＵＩ部１００６は、キーボード、マウス、ディスプレイ等を介して操作者の指示を受け付け、また、状態を表示するための操作部である。ＧＵＩ部１００６は、プロファイル送受信においてはＭＦＰやプロファイルを特定するための入力を受け付け、パッチ出力においてはＭＦＰを特定するための入力を受け付け、測色においては測色状態を表示したり、処理のスタートの指示を行うための入力を受け付けたりする。
【００５１】
上述したこれら各部の動作は、ＧＵＩ部１００６からの指示に従って、制御部１００７で制御される。
【００５２】
＜プロファイル更新処理の概要＞
次に、本実施形態に係る画像処理システム全体の動作の概要について説明する。図７は、本発明の一実施形態に係る画像処理システムにおけるキャリブレーション処理の手順について説明するためのフローチャートである。
【００５３】
まず、マネージメントＰＣ１０４のプロファイル送受信部１００３において、ＩＣＣプロファイルを受信する（ステップＳ５０１）。尚、このＩＣＣプロファイルは、ＭＦＰ１０１において標準で用いられるデスティネーションプロファイルを指定して受信する。
【００５４】
次に、受信したデスティネーションプロファイルを利用して、出力するパッチデータを作成する（ステップＳ５０２）。このパッチデータは、１００色ほどの多次色で構成されたデータであって、ＣＭＹＫの数値データ及びその画像データとで構成されている。尚、このパッチデータの作成方法に関しての詳細については後述する。
【００５５】
次に、マネージメントＰＣ１０４のパッチ出力部１００４より、ＭＦＰ１０１に対して作成したパッチデータの送信を行ってパッチ出力を行う（ステップＳ５０３）。尚、パッチ出力の際には、図５に示すソースプロファイル４０２やデスティネーションプロファイル４０４を使用せず、画像データ（ＣＭＹＫ）４０１から直接に画像データ（ＣＭＹＫ’）４０５に変換して出力するようにＭＦＰ１０１に指示する。そして、測色機１０３を用いて出力したパッチの測色を行って、測色機Ｉ／Ｆ１００１を介してＬａｂ測色値を取得する（ステップＳ５０５）。
【００５６】
一方、マネージメントＰＣ１０４のプロファイル更新処理部１００２においては、まず、デスティネーションプロファイル内に含まれる、ＣＭＹＫをＬａｂに変換するＬＵＴ（ＣＭＹＫ→Ｌａｂ変換ＬＵＴ）を取り出す（ステップＳ５０６）。そして、パッチの数値データと取り出したＣＭＹＫ→Ｌａｂ変換ＬＵＴとを用いて補間演算を行う（ステップＳ５０７）。そして、Ｌａｂの基準値を算出する（ステップＳ５０８）。
【００５７】
また、プロファイル更新処理部１００２においては、デスティネーションプロファイルからＬａｂをＣＭＹＫに変換するＬＵＴ（Ｌａｂ→ＣＭＹＫ変換ＬＵＴ）の取り出しを行う（ステップＳ５０９）。
【００５８】
そして、ステップＳ５０５で取得したＬａｂ測色値、ステップＳ５０８で算出したＬａｂ基準値、及びステップＳ５０９で取り出したＬａｂ→ＣＭＹＫ変換ＬＵＴを用いて、Ｌａｂ→ＣＭＹＫ変換ＬＵＴの更新を行う（ステップＳ５１０）。
【００５９】
次いで、上述したようにして更新されたＬＵＴを用いて、デスティネーションプロファイルを更新する（ステップＳ５１１）。さらに、更新したデスティネーションプロファイルをプロファイル送受信部１００３から、プロファイル送信コマンドと共にＭＦＰ１０１に送信して、ＭＦＰ１０１に格納する（ステップＳ５１２）。
【００６０】
以上の処理を行って、実際に印刷を行う際に更新されたデスティネーションプロファイルを用いることによって、デバイスの状態に左右されず最適な色で画像を出力することが可能となる。以下では、上述した本実施形態に係る画像処理システムにおけるキャリブレーション処理の細部手順について詳細に説明する。
【００６１】
＜補間演算処理＞
ここでは、図７のフローチャートにおける補間演算（ステップＳ５０７）の詳細について説明する。
【００６２】
ステップＳ５０７で行われる補間演算は、ＣＭＹＫパッチデータに対するＬａｂ値の測色値を求めるための処理である。ステップＳ５０７を行う前に読み込んだＣＭＹＫ→Ｌａｂ変換ＬＵＴには、あるＣＭＹＫ値の組み合わせに対応したＬａｂ値が記述されている。このＬＵＴを用いて補間演算を行えば、パッチデータのＣＭＹＫ値に対するＬａｂ値を計算することが可能である。
【００６３】
図８は、図７のフローチャートにおける補間演算（ステップＳ５０７）の詳細について説明するためのフローチャートである。まず、ＣＭＹＫ→Ｌａｂ変換ＬＵＴを抽出する（ステップＳ７０１）。次に、Ｋの値を基準としたグループ化を行う（ステップＳ７０２）。プロファイルのＬＵＴの入力側色値は、色値を示すとともにＬＵＴへの入力格子点であり、その色値は段階的に増える。従って、例えば、Ｃ、Ｍ、Ｙ、Ｋがそれぞれ１７段階であるとすると、Ｋの値を基準にしてグループ化した場合、１７×１７×１７×１７個の格子点は、１７個の１７×１７×１７格子点のグループに分けられることになる。
【００６４】
一方で、パッチデータの抽出を行う（ステップＳ７０３）。これは一つのパッチのＣＭＹＫ値を抽出する操作である。そして、取り出したＣ、Ｍ、Ｙ、Ｋ値のうちＫに着目する（ステップＳ７０４）。これをＫ１とする。
【００６５】
次に、グループ化したＬＵＴのＫの値に着目する。そして、Ｋ１の値を囲むようなグループを２つ取り出す（ステップＳ７０５）。例えば、色の階調が２５６段階で１７段階のＬＵＴがあり、Ｋ１が２０である場合、Ｋ＝１６のグループとＫ＝３２のグループとを取り出す。ここで、Ｋの値が小さいグループをＫａ、Ｋの値が大きいグループをＫｂとする。そして、Ｋａ、ＫｂそれぞれのグループについてＣＭＹの値を用いた線形補間を行う（ステップＳ７０６、Ｓ７０７）。この際の線形補間においては、三次元の既知の手法を用いる。
【００６６】
最後に、Ｋａ、Ｋｂの線形補間結果に対して、Ｋａ、Ｋｂの値を使って一次元の線形補間を行う（ステップＳ７０８）。このようにしてパッチデータの基準値が出力される。そして、すべてのパッチデータに対して処理が行われたか否かを判定する（ステップＳ７０９）。その結果、まだ全てのパッチデータに対しては処理が行われていないと判定された場合（Ｎｏ）は、ステップＳ７０３に戻って上記処理を繰り返す。一方、ステップＳ７０９ですべてのデータに対して処理が行われたと判断された場合（Ｙｅｓ）は本処理を終了する。
【００６７】
以上説明したように、デスティネーションプロファイルのＣＭＹＫ→Ｌａｂ変換ＬＵＴを利用し、またＫの値に対して特別な処理を行うことによって、パッチデータに対する基準値を求めることができる。尚、この結果は、Ｌａｂ→ＣＭＹＫ変換ＬＵＴの更新処理（ステップＳ５１０）で利用される。
【００６８】
＜Ｌａｂ→ＣＭＹＫ変換ＬＵＴの更新処理＞
デスティネーションプロファイルは、実際の印刷時に絶対色空間のデータを出力デバイスの色空間に変換する部分を担当する。従って、デスティネーションプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴを適切に調整・更新することによって、デバイスの不安定性による出力結果の違いを吸収することができる。
【００６９】
以下、図９を用いて、Ｌａｂ→ＣＭＹＫ変換ＬＵＴの更新処理について説明する。図９は、本実施形態におけるデスティネーションプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴの更新処理の手順例を説明するためのフローチャートである示した図である。
【００７０】
まず、Ｌａｂ→ＣＭＹＫ変換ＬＵＴのＬａｂ格子点の色値を取り出す（ステップＳ８０１）。ここで、Ｌａｂデータは増分が固定している格子点データである。図１０は、Ｌａｂ空間上に存在するＬＵＴの格子点データを説明するための図である。例えば、Ｌａｂ→ＣＭＹＫ変換ＬＵＴがＬａｂ各３３段階のＬＵＴであった場合、３３×３３×３３個ある格子点のうちの一つをステップＳ８０１で取り出すということとなる。
【００７１】
次に、各パッチデータの測色値及び基準値をすべて取り出して、ステップＳ８０１で取り出したＬａｂ値と最も値が近い基準値を算出する（ステップＳ８０２）。図１１は、Ｌａｂ空間上に存在するＬＵＴの格子点データ内に測色値及び基準値があることを説明するための図である。図１１に示すように、基準値や側色値はＬａｂデータであるため、格子点空間の中に存在している。図１１に示す例では、基準値１と基準値２とが存在するが、注目されている格子点データにとって最も近い基準値は基準値１の方であるため、ステップＳ８０２では基準値１の方が選択される。
【００７２】
そして、算出された基準値と測色値の差を計算する（ステップＳ８０３）。この値を用いてＬａｂデータを更新することになるが、パッチデータの数が少ない場合は、格子点データから距離が大きく離れた基準値が取り出されることが多くなる。このような基準値に大きく影響を受けることは望ましくないため、本実施形態では、基準値と取り出されたＬａｂデータの距離を算出し、それに応じた重み付けをする（ステップＳ８０４）。例えば、算出する距離は三次元空間上でのユークリッド距離を用い、重みは以下の式を用いる。
【００７３】
Ｗ＝１／ｄｉｓｔ５＋１
但し、Ｗ：重み、ｄｉｓｔ：基準値との距離を格子点３つ分の距離で正規化したものである。
【００７４】
以上の処理をすべてのＬＵＴのＬａｂ値に対して繰り返す（ステップＳ８０５）。上述したステップＳ８０１〜Ｓ８０５までの処理により、すべてのＬａｂ格子点データに対して基準値と測色値との差が求まった。図１２は、Ｌａｂ空間において全ての格子点に対して基準値と測色値の差を求めた結果を示す図である。図１２において、矢印は測色値から基準値への方向ベクトルを表している。すなわち、この方向ベクトルの分だけ格子点のＬａｂ値をずらすことになるわけであるが、影響を受ける基準値の違いにより、極端な方向や大きさを有する方向ベクトルが存在する可能性がある。
【００７５】
例えば、図１２において、丸印１２００で囲んで示されている方向ベクトルが、周りの他の方向ベクトルに比べて極端な大きさを持つものとなっている。このようなベクトルが存在した場合は、更新した格子点のＬａｂ値が極端なものとなり、擬似輪郭の原因となる。そこで、次に、この差に対してスムージング処理を行う（ステップＳ８０６）。これによって、Ｌａｂ格子点データの更新が極端になることを防ぐ。スムージングの方法の例として、注目格子点を中心として、５×５×５の範囲の格子点での値を合計してその平均を算出する方法や、さらに注目格子点を数倍してから平均を算出する方法等が挙げられる。
【００７６】
そして、スムージングをかけた基準値と測色値との差をＬａｂ格子点データに加えていくことで格子点データを更新する（ステップＳ８０７）。次に、変更したＬａｂデータを一つ取り出す（ステップＳ８０８）。
【００７７】
ここで、変更されたＬａｂデータに対するＣＭＹＫ値が明らかになれば、デスティネーションプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴの更新が可能となる。そこで、更新前のＬａｂ→ＣＭＹＫ変換ＬＵＴがＬａｂからＣＭＹＫへの変換を記述するＬＵＴであることを利用して、更新されたＬａｂ値に対して三次元の線形補間演算を行う（ステップＳ８０９）。以上の処理を更新したすべてのＬａｂデータに対して行う（ステップＳ８１０）。このようにして、新しいＬａｂ値とそれに対応したＣＭＹＫ値が求まり、その結果を用いてＬａｂ→ＣＭＹＫ変換ＬＵＴを更新する（ステップＳ８１１）。
【００７８】
上述した処理を、ＭＦＰ１０１、ＭＦＰ１０２に対して適用することにより、従来、電子写真の分野で問題となっていたデバイスの状態の違いによる色差を大幅に軽減することができる。従って、複数台のデバイスで同一のデータを出力させるクラスタプリントを、電子写真等の時間によって色の変化が激しい印刷方式でも行うことが可能となる。この場合、ＭＦＰに内蔵されているプロファイルは標準では同じものであるので、ＣＭＹＫ→Ｌａｂ変換ＬＵＴ（すなわち、基準状態）は共通であり、各々のデバイスのプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴが基準状態に合わせるように更新される。
【００７９】
また、上記処理を行った後に更新したデスティネーションプロファイルを利用して画像をプリンタで出力する場合、その画像はＣＭＹＫ画像である必要は無い。図１３は、デスティネーションプロファイルを更新した後に行われる印刷時のデータの流れを説明するための図である。すなわち、画像データ９０１を画像データ（Ｌａｂ）９０３に変換するソースプロファイル９０２が存在すれば、更新されたデスティネーションプロファイル９０４を用いて画像データ（ＣＭＹＫ）９０５を作成することができるからである。
【００８０】
例えば、ソースプロファイル９０２がＲＧＢデータをＬａｂデータに変換するものであれば、画像データ９０１はＲＧＢデータであってもよい。また、更新されたデスティネーションプロファイルが扱う絶対色空間（上記例では、Ｌａｂ空間）に入力色空間を変換するものである場合、ソースプロファイルとしては、どのようなものを用いてもよい。
【００８１】
＜パッチ生成方法について＞
上述したように、Ｌａｂ→ＣＭＹＫ変換ＬＵＴの更新処理では、格子点空間であるＬａｂ空間内で、基準値と測色値の差分を求め、格子点のＬａｂ値に対して距離の重みを乗じてフィードバックする。この場合、Ｌａｂ格子点間で補正精度の偏りが出るということを避けるために、測色値と基準値の差分ベクトルがＬａｂ空間で均等に分布して得られるように、出力パッチを構成することが望ましい。
【００８２】
そこで、新たにＬａｂ色空間で均等な色値データを発生させ、そのＬａｂ値に対応するＣＭＹＫ値をパッチデータとして採用すればよい。Ｌａｂ値に対応するＣＭＹＫ値を求める際には、更新対象であるプロファイル自体のＬａｂ→ＣＭＹＫ変換ＬＵＴを利用すれば、Ｌａｂ空間でほぼ均等な分布で測色値が得られるようなパッチデータが構成できる。
【００８３】
図１４は、本実施形態に係る画像処理システムにおけるパッチ生成処理の流れを説明するためのフローチャートである。まず、Ｌａｂパッチデータ値である、Ｌａｂ空間で均等に分布するようなＮ×Ｎ×Ｎ個の格子点を発生させる（ステップＳ１６０１）。
【００８４】
こうして発生させたＬａｂ格子点は、Ｌａｂ空間全体を覆うことになる。しかし、実際には使用されない格子点が多く存在するため、次いで使用すべきＬａｂ格子点値のみを抜き出す（ステップＳ１６０２）。使用すべきＬａｂ格子点の選定には、実際の出力処理で想定されるソースプロファイルの色再現範囲の中にあるものを抜き出せばよい。例えば、ｓＲＧＢ色空間をソースプロファイルとして想定した場合、その色再現域は、一般的な電子写真プリンタよりは広いもののＬａｂ空間全体を占めることはない。従って、実際の出力処理では、ｓＲＧＢ色空間の外側にあるＬａｂ格子点値をソースプロファイル側で出力することはなく、よって、デスティネーションプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴの入力になることはない。
【００８５】
このような理由から、発生させたＮ×Ｎ×Ｎ格子点のうち、ｓＲＧＢ色空間の中に入っているものを選んで、その測色値の周辺のＬａｂ→ＣＭＹＫ変換ＬＵＴの調整を行えば、ｓＲＧＢ色空間がソースプロファイルとして使用される状況のもとでは色味をあわせるのに充分である。これを利用して、パッチデータの個数を効果的に制限することができる。
【００８６】
次に、受信したデスティネーションプロファイルから、Ｌａｂ→ＣＭＹＫ変換ＬＵＴを取り出す（ステップＳ１６０３）。そして、ステップＳ１６０２で抽出されたＬａｂ格子点データをステップＳ１６０３で取り出されたＬａｂ→ＣＭＹＫ変換ＬＵＴを用いて補間演算を行ってＣＭＹＫパッチデータを得て（ステップＳ１６０４）、パッチデータの生成を終了する。
【００８７】
図１５は、一連のパッチ生成処理においてパッチデータとして生成したＬａｂ格子点がＬａｂ空間内でどのように分布するかを二次元的に表わした模式図である。図１５において、”●”印は、元のプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴのＬａｂ格子点を表し、”×”印は、パッチデータとして発生したＬａｂ格子点を表す。図１５に示すように、パッチＬａｂデータ（×印の格子点）を、プロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴの格子点数よりも少ない数で発生させる。その後、ソース色再現範囲内にあるものを判別して抽出する。
【００８８】
ここで、もとのプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴが３３×３３×３３の格子点を持っているとすると、ＬＵＴ全体では３５８３７個の格子点を持っていることになる。本来、３５８３７個の格子点のＬａｂ値を全てパッチデータとすれば、測色値がＬａｂ空間で均一に得られるが現実的な個数ではない。
【００８９】
そこで、Ｎ×Ｎ×Ｎ格子点を９×９×９点とすると、パッチＬａｂデータを発生させた時点では、データ数は７２９個となる。この後、ソース色再現範囲の中に存在するものを抽出することによって、データ数を減少させる。ソース色空間としてｓＲＧＢ色空間を想定した場合、Lab空間内（Ｌ＝［０：１００］，ａ＝［−１２８：１２８］，ｂ＝［−１２８：１２８］）で、ｓＲＧＢ色空間が占める色空間体積はおよそ１／７〜１／８程度でしかない。従って、９０〜１０５個程度のパッチデータが得られることになる。
【００９０】
もちろん、格子点数として、より多いものを採用しても構わない。但し、この場合には、色再現精度の向上を見込むことはできるが、測色に要する時間が長くなってしまう。
【００９１】
また、本実施形態では、上述したようにソース色空間としてｓＲＧＢ色空間を想定したが、他のＲＧＢ色空間でも構わない。さらに、ＣＭＹＫデータのみをプリントするような用途であれば、ＤＩＣやＳＷＯＰ等の印刷標準プロファイルの色再現域を採用することも可能であり、ＲＧＢ色空間よりもＣＭＹＫ色空間の方が狭い場合が多いため、よりパッチデータの個数を減らすことができる。
【００９２】
＜パッチ配列の並べ替えについて＞
上述したように、本実施形態における画像処理システムにおいて、高精度にキャリブレーションを行うためのパッチの生成方法の例について述べた。ここで、上述したように生成したパッチを手動走査式や自動走査式の測色機で簡便に測定する際には、それぞれのパッチの境界を測色機が認識できるようにするために、隣接するパッチが充分に大きい色差を持つように配列する必要がある。そこで、以下では、そのような配列方法の例について説明する。
【００９３】
図１８は、所定の規則に基づいてパッチ配列を決定する過程の一例を説明するための図である。すなわち、以下では、図１８に示すようにパッチデータがＬａｂ色空間で規則的に配列され、図１５で示したようなソース色空間の色再現範囲内の制限を受けていない状態についてのパッチ配列の決定方法について説明する。
【００９４】
図１８に示す例では、パッチデータはＬａｂ色空間で均等に分割されているため、一定のルールに基づいて、隣接するパッチの色差が大きくなるようにパッチを配列することができる。すなわち、均等に分割したデータを２個おきや３個おきに取り出し、配列していけば良い。例えば、図１８に示すように、Ａ→Ｂ→Ｃ→・・・→Ｍ→Ｎと配列していくことで、隣接するパッチを充分に大きい色差があるように配列することが可能である。図１８はＬａｂ色空間中、あるＬ＊の値でスライスした様子を示しているが、この一面を終えた後は次のＬ＊のスライスに移って、同様にパッチデータを取り出していけばよい。
【００９５】
しかし、図１５で示したようなパッチ生成方法では、もともと均等な配列を持つパッチデータであっても、色空間の制限が入ることによって均等性が崩れてしまう。従って、図１８を用いて説明したようなルールが適用し難くなる。また、Ｌａｂ空間でパッチデータを生成せずに、ＣＭＹＫ色空間の値を元にして、
Ｃ      Ｍ      Ｙ      Ｋ
------------------------------
０      ０      ０      ０
０      ０      ０    ２０
０      ０      ０    ４０
・・・・・・・・・・・・・
２５５  ２５５  ２５５  ２５５
のようにパッチを生成する場合も考えられる。
【００９６】
このような場合にも、やはり、図１８に示したようなルールは適用できず、隣接するパッチの色差が大きくなるようにパッチ配列の組み合わせをしなくてはならない。
【００９７】
そこで、本実施形態では、このパッチの配列方法を組み合わせ最適化問題として捉え、既知の技法である遺伝的アルゴリズムを適用してこの問題を解決する。尚、遺伝的アルゴリズムの詳細については、「北野宏明編：”遺伝的アルゴリズム”、産業図書、１９９３年」等に詳細が記載されている。
【００９８】
以下では、説明を簡単にするために、パッチの個数を例えば１００個とし、パッチが１０行１０列に配列されるものとする。この場合、１０個のパッチからなるパッチ列の一列の中で隣接するパッチの色差が大きくなるように配列したパッチ列を、１０行並べるように最適化するようにすればよい。
【００９９】
図１９は、パッチ配列を変更する処理に遺伝的アルゴリズムを適用した際の処理手順を説明するためのフローチャートである。まず、処理を開始すると（ステップＳ１９００）、最初にパッチ情報の準備を行う（ステップＳ１９０１）。遺伝的アルゴリズムの立場からは、このパッチ情報を１つ１つの遺伝子とみなす。ここで、パッチ情報は、以下のように保持することとする。すなわち、
（パッチＩＤ，Ｌａｂ値，ＣＭＹＫ値）
の組み合わせを１００個保持するようにする。
【０１００】
例えば、パッチデータがＬａｂ色空間で発生されたものであれば、ＣＭＹＫ値は、ＩＣＣプロファイルの持つＬａｂ→ＣＭＹＫ変換ＬＵＴを用いた補間演算で求めることができる。また、パッチデータがＣＭＹＫ色空間で発生されたものであれば、Ｌａｂ値は、ＩＣＣプロファイルの持つＣＭＹＫ→Ｌａｂ変換ＬＵＴを用いた補間演算で求めることができる。
【０１０１】
次に、パッチ情報をランダムに配列したパッチ配列を多数（本実施形態では、１００個とする）生成し、遺伝的アルゴリズムにおいて「染色体」とみなせるパッチ配列の初期集団とする（ステップＳ１９０２）。尚、個々のパッチ配列の個体をＰ１，…，Ｐ１００と表記し、各個体を（ｐ１，…，ｐ１００）と表記することとする。さらに、各個体ｐＮが持つ情報は、例えば、Ｌａｂ（ｐＮ）と表記する。
【０１０２】
そして、パッチ配列集団の各個体について、以下のように計算する評価関数に基づいて評価値を求める（ステップＳ１９０３）。すなわち、
Ｆｏｒ  （ｉ＝１→９０  ｓｔｅｐ  １０）｛
Ｆｏｒ  （ｊ＝１→９）｛
ｉｆ  Ｌａｂ（ｐｊ）とＬａｂ（ｐｊ＋１）の色差が所定の値Ｅより小さい
評価値Ｖ＝Ｖ＋１
｝
｝
上記評価関数は、パッチ一列を構成する１０個のパッチの中で隣接するパッチ同士の色差が所定の値Ｅよりも小さい場合には、ペナルティを与えるようにして評価値Ｖを計算する。
【０１０３】
その結果、ステップＳ１９０３で計算した評価値が０の個体があれば（ＯＫ）、その個体をパッチ配列として採用して処理を終える（正常終了：ステップＳ１９０４）。一方、評価値が０にならない場合（ＮＧ）は、「選択（ステップＳ１９０５）」及び「突然変異（ステップＳ１９０６）」によって、次世代のパッチ配列の集団を作成する。すなわち、ステップＳ１９０５で評価値が小さいものから順に１０個を選択して、ステップＳ１９０６でその１０個のパッチ配列の中の数個を一定の確率で入れ替えるようにして変異させて、新たに１００個のパッチ配列集団を作り出す。そのように作り出した集団を再度ステップＳ１９０３の評価ステップで評価して、評価値が０の個体が出現するまで処理を繰り返す。
【０１０４】
上述したように、本実施形態では、組み合わせ最適化を解く技法として遺伝的アルゴリズムを用いたが、他の既知の技法、例えば、ニューラルネットワークの適用やランダムサーチ法、分枝限定法等を用いても構わない。
【０１０５】
以上、説明したように、本実施形態に係る画像処理システムによれば、プリンタに配布又は内蔵されている色再現特性を記述したプロファイルに対して、簡便な測定で、かつ、高精度にプロファイルの修正を行うことが可能となり、常時最適なカラーマッチングを行うことが可能である。また、複数のプリンタに対して上記カラーマッチングを適用することによって、複数台のデバイスの色再現をあわせこむことも可能となる。
【０１０６】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体（記録媒体）等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１０７】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１０８】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１０９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１１０】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１１１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１２】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１１３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１１５】
【図１】入力デバイスから出力デバイスへ画像を出力する一般的なＣＭＳにおける処理手順を説明するための図である。
【図２】ＩＣＣプロファイルのデータ表現形式の一例を示す図である。
【図３】本発明を一実施形態に係る画像処理システムの構成を示すブロック図である。
【図４】本実施形態に係る画像処理システムにおけるＭＦＰ１０１、１０２の構成を示すブロック図である。
【図５】クライアントＰＣ１０５、１０６からＣＭＹＫ色空間のＰＤＬデータをＭＦＰ１０１、ＭＦＰ１０２に送信した場合のデータ処理部３０５でのＣＭＳ処理の手順を説明するための図である。
【図６】本実施形態に係る画像処理システムにおけるマネージメントを行うマネージメントＰＣ１０４の細部構成を示すブロック図である。
【図７】本発明の一実施形態に係る画像処理システムにおけるキャリブレーション処理の手順について説明するためのフローチャートである。
【図８】図７のフローチャートにおける補間演算（ステップＳ５０７）の詳細について説明するためのフローチャートである。
【図９】本実施形態におけるデスティネーションプロファイルのＬａｂ→ＣＭＹＫ変換ＬＵＴの更新処理の手順例を説明するためのフローチャートである示した図である。
【図１０】Ｌａｂ空間上に存在するＬＵＴの格子点データを説明するための図である。
【図１１】Ｌａｂ空間上に存在するＬＵＴの格子点データ内に測色値及び基準値があることを説明するための図である。
【図１２】Ｌａｂ空間において全ての格子点に対して基準値と測色値の差を求めた結果を示す図である。
【図１３】デスティネーションプロファイルを更新した後に行われる印刷時のデータの流れを説明するための図である。
【図１４】本実施形態に係る画像処理システムにおけるパッチ生成処理の流れを説明するためのフローチャートである。
【図１５】一連のパッチ生成処理においてパッチデータとして生成したＬａｂ格子点がＬａｂ空間内でどのように分布するかを二次元的に表わした模式図である。
【図１６】手動走査式の測色機を説明するための模式図である。
【図１７】手動走査式測色機の動作手順を説明するためのフローチャートである。
【図１８】所定の規則に基づいてパッチ配列を決定する過程の一例を説明するための図である。
【図１９】パッチ配列を変更する処理に遺伝的アルゴリズムを適用した際の処理手順を説明するためのフローチャートである。
【符号の説明】
【０１１６】
１０  オフィス
１０１、１０２  デジタル複合機（ＭＦＰ）
１０３  測色機
１０４  マネージメントＰＣ
１０５、１０６  クライアントＰＣ
１０８  ＬＡＮ
１１１  ＵＳＢ
３０１  画像読み取り部
３０２  記憶部
３０３  記録部
３０４  操作部
３０５  データ処理部
３０６、１００５  ネットワークＩ／Ｆ
１００１  測色機Ｉ／Ｆ
１００２  プロファイル更新処理部
１００３  プロファイル送受信部
１００４  パッチ出力部
１００６  ＧＵＩ部
１００７  制御部
【図１】
2006179991.tif 000003
【図２】
2006179991.tif 000004
【図３】
2006179991.tif 000005
【図４】
2006179991.tif 000006
【図５】
2006179991.tif 000007
【図６】
2006179991.tif 000008
【図７】
2006179991.tif 000009
【図８】
2006179991.tif 000010
【図９】
2006179991.tif 000011
【図１０】
2006179991.tif 000012
【図１１】
2006179991.tif 000013
【図１２】
2006179991.tif 000014
【図１３】
2006179991.tif 000015
【図１４】
2006179991.tif 000016
【図１５】
2006179991.tif 000017
【図１６】
2006179991.tif 000018
【図１７】
2006179991.tif 000019
【図１８】
2006179991.tif 000020
【図１９】
2006179991.tif 000021