(57)【特許請求の範囲】
【請求項１】
出力デバイスにて出力されるチャートのチャートデータを生成する画像処理装置であって、
前記出力デバイスが再現できる色の範囲を示す色再現範囲情報を取得する再現情報取得手段と、
前記色再現範囲情報にて示された範囲に含まれる色の中から、デバイス非依存の色空間における色を抽出し、パッチ候補のデータとする候補作成手段と、
前記候補作成手段により作成されたパッチ候補のデータを保持する保持手段と、
予め指定されたチャートデータに含まれるパッチの数に従って、前記候補作成手段にて作成されたパッチ候補のデータの中から、パッチデータを取得する取得手段と、
前記取得手段により取得したパッチデータを用いて、前記予め指定されたチャートデータに含まれるパッチの数から構成されるチャートデータを生成できるか否かを判定する判定手段と、
前記判定手段によりチャートデータが生成できないと判定された場合に、前記チャートデータに含める特定色の指定を受け付ける受付手段と、
前記保持手段にて保持しているパッチ候補のデータのうち、前記受付手段にて受け付けた特定色との色差が所定の値以下であり、かつ、前記取得手段にて取得したパッチデータとの色差が所定の値以上であるパッチ候補のデータをパッチデータとして追加する追加手段と、
前記取得手段にて取得されたパッチデータと前記追加手段にて追加されたパッチデータとを用いてチャートデータを生成するチャート生成手段と、
前記チャート生成手段にて生成したチャートデータをデバイス依存の色空間におけるデータに変換する変換手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記候補作成手段は、
デバイス非依存の色空間で色差が均等な間隔の格子点それぞれを示す色差均等データを取得するデータ取得手段と、
前記色差均等データにて示される格子点のうち、前記色再現範囲情報にて示された色再現範囲内にある格子点を判定する格子点判定手段と、
を有し、
前記保持手段は、前記格子点判定手段により色再現範囲内と判定された格子点の値を、パッチ候補のデータとして保持することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記チャート生成手段は、
前記取得手段にて取得したパッチデータを、予め定義されたルールに従って分類し、当該分類に従って配置する配置手段と、
前記配置したパッチデータからチャートデータを作成する手段と
を有することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記出力デバイスにより出力されたチャートを測定する測定手段を更に有し、
前記測定手段は、
スキャナを用いて前記出力されたチャートから画像データを取得する手段と、
前記取得した画像データを、デバイス依存の色空間からデバイス非依存の色空間に変換する手段と、
前記画像データからチャートのエッジを検出し、当該エッジからチャートの傾きを判定する手段と、
前記傾きが閾値以下であると判定された場合に、前記検出したチャートのエッジから前記チャートの端部を算出する手段と、
前記算出したチャートの端部と前記チャートの構成の情報を用いて、前記画像データに含まれるパッチそれぞれの中心位置を特定し、当該パッチの中心位置から信号値を取得する手段と、
前記取得したパッチの信号値と前記チャートの構成の情報から当該チャートが測定される方向として前記スキャナにて正しく配置されているかを判定する手段と、
前記チャートが正しく配置されていると判定された場合に、前記取得したパッチの信号値を測色値とする手段と
を有することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
出力デバイスにて出力されるチャートのチャートデータを生成する画像処理方法であって、
再現情報取得手段が、前記出力デバイスが再現できる色の範囲を示す色再現範囲情報を取得する再現情報取得工程と、
候補作成手段が、前記色再現範囲情報にて示された範囲に含まれる色の中から、デバイス非依存の色空間における色を抽出し、パッチ候補のデータとする候補作成工程と、
保持手段が、前記候補作成工程にて作成されたパッチ候補のデータを記憶装置に保持する保持工程と、
取得手段が、予め指定されたチャートデータに含まれるパッチの数に従って、前記候補作成手段にて作成されたパッチ候補のデータの中から、パッチデータを取得する取得工程と、
判定手段が、前記取得工程にて取得したパッチデータを用いて、前記予め指定されたチャートデータに含まれるパッチの数から構成されるチャートデータを生成できるか否かを判定する判定工程と、
受付手段が、前記判定工程にてチャートデータが生成できないと判定された場合に、前記チャートデータに含める特定色の指定を受け付ける受付工程と、
追加手段が、前記記憶装置にて保持しているパッチ候補のデータのうち、前記受付工程にて受け付けた特定色との色差が所定の値以下であり、かつ、前記取得工程にて取得したパッチデータとの色差が所定の値以上であるパッチ候補のデータをパッチデータとして追加する追加工程と、
チャート生成手段が、前記取得工程にて取得されたパッチデータと前記追加工程にて追加されたパッチデータとを用いてチャートデータを生成するチャート生成工程と
変換手段が、前記チャート生成工程にて生成したチャートデータをデバイス依存の色空間におけるデータに変換する変換工程と
を有することを特徴とする画像処理方法。
【請求項６】
コンピュータを、
出力デバイスが再現できる色の範囲を示す色再現範囲情報を取得する再現情報取得手段、
前記色再現範囲情報にて示された範囲に含まれる色の中から、デバイス非依存の色空間における色を抽出し、パッチ候補のデータとする候補作成手段と、
前記候補作成手段により作成されたパッチ候補のデータを保持する保持手段、
予め指定されたチャートデータに含まれるパッチの数に従って、前記候補作成手段にて作成されたパッチ候補のデータの中から、パッチデータを取得する取得手段、
前記取得手段により取得したパッチデータを用いて、前記予め指定されたチャートデータに含まれるパッチの数から構成されるチャートデータを生成できるか否かを判定する判定手段、
前記判定手段によりチャートデータが生成できないと判定された場合に、前記チャートデータに含める特定色の指定を受け付ける受付手段、
前記保持手段にて保持しているパッチ候補のデータのうち、前記受付手段にて受け付けた特定色との色差が所定の値以下であり、かつ、前記取得手段にて取得したパッチデータとの色差が所定の値以上であるパッチ候補のデータをパッチデータとして追加する追加手段、
前記取得手段にて取得されたパッチデータと前記追加手段にて追加されたパッチデータとを用いてチャートデータを生成するチャート生成手段、
前記チャート生成手段にて生成したチャートデータをデバイス依存の色空間におけるデータに変換する変換手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタの色味を補正するチャートデータを作成するための画像処理装置、画像処理方法、およびプログラムに関する。
【背景技術】
【０００２】
近年電子写真装置の性能が向上し、印刷機と同等の画質を実現した機械が登場している。しかし、出力デバイスの耐久や経時変化等により電子写真特有の色味が不安定になってしまい、色の変動量が印刷機に比べて大きいことが課題である。そこで、従来の電子写真装置ではシアン、マゼンタ、イエロー、ブラック（以下、Ｃ、Ｍ、Ｙ、Ｋで示す）の各トナーに対応した１次元の階調補正用のＬＵＴ（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ）を作成する単色のキャリブレーション技術が搭載されている。ＬＵＴとは、特定の間隔で区切られた入力データに対応した出力データを示すテーブルであり、演算式では表せない非線形な特性を表現することが可能である。しかし、１次元のＬＵＴで単色の階調特性を合わせたとしてもレッド、グリーン、ブルー（以下、Ｒ、Ｇ、Ｂで示す）、ＣＭＹを使ったグレー等の複数のトナーを使用した「混色」はプリンタに応じて非線形な差分が発生するため色味を保証することは難しい。
【０００３】
この問題に対し、プリンタが再現可能な範囲の混色で作成されたチャートを出力してスキャナや測色機で測定して目標値と比較し、目標値と測定値との差分をデバイス非依存色空間（Ｌ＊ａ＊ｂ＊）内で算出し、その差分に基づき補正量を算出する。そして、補正量を元にデバイス非依存色空間（Ｌ＊ａ＊ｂ＊）をデバイス依存色空間（ＣＭＹＫ）に変換する３次元のＬＵＴを更新して混色の色味を補正するという技術がある。
【０００４】
例えば、ＩＣＣプロファイルが持つデスティネーションプロファイルに着目し、それを修正することで混色の色差を補正する技術が提案されている（例えば特許文献１）。一般に、プロファイルを再作成する場合、多数のパッチを出力して測色するために、膨大な時間がかかる。その問題に対して、特許文献１では、出力デバイスの特性に応じて、デバイス非依存色空間（Ｌ＊ａ＊ｂ＊）上で均等に分布するようなパッチを出力して測色することで、少数のパッチデータでプロファイルの再作成を行い、混色の色味の補正を実現している。ここで、ＩＣＣプロファイルとは、ＩＣＣ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｌｏｒ  Ｃｏｎｓｏｒｔｉｕｍ）が定めた色変換時に使用するデータのことで、デスティネーションプロファイルは、一般的にＬＵＴで構成されている。そして、Ｌ＊ａ＊ｂ＊とはＣＩＥ（国際照明委員会）によって定義されているデバイスに依存しない色空間の１つであり、Ｌ＊は輝度、ａ＊ｂ＊は色相及び彩度を表す。また、特許文献１に限らず、ＣＭＹＫを入力に対して４次元ＬＵＴを使いＣ’、Ｍ’、Ｙ’、Ｋ’を出力することで、混色の色味を補正することが可能である。
【０００５】
一方、キャリブレーションを高精度に行うためには、対象デバイスによって出力されたキャリブレーション用のチャートを高精度に測定する必要がある。スキャナ等のチャートを面で読み込む装置を使ってチャートを読み取る場合、周辺のパッチの散乱光の影響で読み値が正確に得られないことがあるので、これらの外乱の影響を受けないように、チャートのパッチの大きさや位置の正確な検出精度が重要となる。ここで、パッチとは、図１０のような用紙上に１個のデータにつき一定の大きさの矩形データとして表現したものである。そして、パッチの大きさや位置を正確に検出するためには、チャートがスキャナの原稿台に置かれた時の傾きも考慮しなければならない問題があった。
【０００６】
また、特許文献２では、チャートのパッチデータに基づいて、チャートの向きが正しく置かれていると判定するための判定ルールを作成し、その作成した判定ルールを使って読み取ったチャートの向きを判定する。それによって、チャートに方向検出専用のパッチデータを含ませることなく、チャートの方向判定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第４３９３２９４号明細書
【特許文献２】特開２００９−０６０２２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１では、出力デバイスの混色の特性を考慮した混色で構成した補正用のパッチデータを生成している。このとき、出力デバイスによって色再現範囲や色再現性が異なるため、パッチの数やパッチデータが変化してしまう。よって、チャートの方向判定や傾き検知のためのルールをデバイスに依存しない共通のルールにすることが難しいため、出力エンジンの特性に応じて、パッチを読み取るためのシステムを再構築しなければならない。
【０００９】
また、特許文献２では、生成されたパッチデータから方向判定するためのルールを作ることができるが、生成されたパッチ毎に判定ルールを作成しなければならない。よって特許文献１と同様に出力エンジンの特性に応じて、パッチを読み取るためのシステムを再構築しなければならない。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本願発明は以下の構成を有する。すなわち、出力デバイスにて出力されるチャートのチャートデータを生成する画像処理装置であって、前記出力デバイスが再現できる色の範囲を示す色再現範囲情報を取得する再現情報取得手段と、前記色再現範囲情報にて示された範囲に含まれる色の中から、デバイス非依存の色空間における色を抽出し、パッチ候補のデータとする候補作成手段と、前記候補作成手段により作成されたパッチ候補のデータを保持する保持手段と、予め指定されたチャートデータに含まれるパッチの数に従って、前記候補作成手段にて作成されたパッチ候補のデータの中から、パッチデータを取得する取得手段と、前記取得手段により取得したパッチデータを用いて、前記予め指定されたチャートデータに含まれるパッチの数から構成されるチャートデータを生成できるか否かを判定する判定手段と、前記判定手段によりチャートデータが生成できないと判定された場合に、前記チャートデータに含める特定色の指定を受け付ける受付手段と、前記保持手段にて保持しているパッチ候補のデータのうち、前記受付手段にて受け付けた特定色との色差が所定の値以下であり、かつ、前記取得手段にて取得したパッチデータとの色差が所定の値以上であるパッチ候補のデータをパッチデータとして追加する追加手段と、前記取得手段にて取得されたパッチデータと前記追加手段にて追加されたパッチデータとを用いてチャートデータを生成するチャート生成手段と、前記チャート生成手段にて生成したチャートデータをデバイス依存の色空間におけるデータに変換する変換手段と、を有する。
【発明の効果】
【００１１】
本発明によれば、出力デバイスの持つ混色特性を考慮したパッチ配列であっても、チャートの方向判定や傾き検知をするためのアルゴリズムに影響されることなく、パッチを高精度に測定することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】画像処理システムの全体構成の例を示す図。
【図２】画像処理の流れを示す図。
【図３】混色のキャリブレーション処理の流れを示す図。
【図４】混色のキャリブレーション処理の中の３次元ＬＵＴ補正処理を示す図。
【図５】混色のキャリブレーション処理の中の４次元ＬＵＴ補正処理を示す図。
【図６】チャートを作成する処理の流れを示す図。
【図７】パッチデータを作成する処理の流れを示す図。
【図８】第一実施形態に係るチャートにパッチデータを追加する処理の流れを示す図。
【図９】チャートにパッチを配列する処理の流れを示す図。
【図１０】混色のキャリブレーションに用いるチャートの例を示す図。
【図１１】Ｌ＊ａ＊ｂ＊色空間上で存在するパッチデータを２次元的に表す図。
【図１２】パッチ検出のためのルールを示した例の図。
【図１３】パッチデータの測定値を取得する処理の流れを示す図。
【図１４】パッチのエッジ検出方法を説明する図。
【図１５】第二実施形態に係るチャートにパッチデータを追加する処理の流れを示す図。
【図１６】第三実施形態に係るチャートにパッチデータを追加する処理の流れを示す図。
【図１７】Ｌ＊ａ＊ｂ＊色空間上に存在する格子点データや基準値と測色値を表す図。
【図１８】第一実施形態に係るパッチデータを追加方法について説明した図。
【図１９】第三実施形態に係る特定色情報を入力するＵＩの表示例について説明する図。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１４】
＜第一実施形態＞
［システム構成］
本発明に係る第一実施形態について説明する。本実施形態では出力デバイス有する混色特性を考慮したチャートを生成し、チャートの方向判定や傾き検知ルールを使って出力デバイスによって印刷されたチャートの測色値を取得する。そしてその測色値を使った出力デバイスの混色の色味を補正する方法について説明する。尚、本実施形態の混色の補正方法については、４次元ＬＵＴを用いた混色の補正方法を用いた場合について述べる。
【００１５】
図１は本実施形態に係るシステムの構成図である。Ｃ、Ｍ、Ｙ、Ｋの各トナーを用いる複合機（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１はネットワーク１２３を介して接続されている。またＰＣ１２４はネットワーク１２３を介してＭＦＰ１０１と接続されている。ＰＣ１２４内のドライバ１２５はＭＦＰ１０１へ印刷データを送信するためのデバイスドライバである。
【００１６】
ＭＦＰ１０１について詳細に説明する。ネットワークＩ／Ｆ１２２は、印刷データ等の受信や後述するラスター画像や制御データ等の送信を行う。コントローラ１０２は、ＣＰＵ１０３やレンダラ１１２、画像処理部１１４などで構成される。ＣＰＵ１０３を使って処理されるインタプリタ１０４は、受信した印刷データのページ記述言語（ＰＤＬ：Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）部分を解釈し、レンダラ１１２が解釈できる言語に変換した中間言語データ１０５を生成する。そして、ＣＭＳ１０６ではソースプロファイル１０７及びデスティネーションプロファイル１０８を用いて色変換を行い、中間言語データ（ＣＭＳ後）１１１を生成する。ここでＣＭＳ（Ｃｏｌｏｒ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）は、後述するプロファイルの情報を用いて色変換を行う。
【００１７】
また、ソースプロファイル１０７は、ＲＧＢやＣＭＹＫ等のデバイスに依存する色空間をＬ＊ａ＊ｂ＊やＸＹＺ等のデバイス非依存の色空間に変換するためのプロファイルである。ＸＹＺは、Ｌ＊ａ＊ｂ＊と同様にＣＩＥ（国際照明委員会）によって定義されているデバイスに依存しない色空間の１つであり、Ｌ＊は輝度、ａ＊ｂ＊は色相及び彩度を表す。また、ＸＹＺは、Ｌ＊ａ＊ｂ＊と同様にＣＩＥ（国際照明委員会）によって定義されているデバイス非依存の色空間であり、３種類の刺激値で色を表現する。また、デスティネーションプロファイル１０８は、デバイス非依存色空間を出力デバイス（プリンタ１１５）に依存したＣＭＹＫ色空間に変換するためのカラープロファイルである。
【００１８】
一方、ＣＭＳ１０９は、デバイスリンクプロファイル１１０を用いて色変換を行い、中間言語データ（ＣＭＳ後）１１１を生成する。ここでデバイスリンクプロファイル１１０は、ＲＧＢやＣＭＹＫ等のデバイス依存色空間をデバイス（プリンタ１１５）に依存したＣＭＹＫ色空間に直接変換するためのプロファイルである。そして、本実施形態において、ユーザは、ＣＭＳ１０６とＣＭＳ１０９を選択可能な構成になっている。
【００１９】
レンダラ１１２は、生成した中間言語データ（ＣＭＳ後）１１１からラスター画像１１３を生成する。画像処理部１１４は、ラスター画像１１３やスキャナ１１９で読み込んだ画像に対して画像処理を行う。コントローラ１０２と接続されたプリンタ１１５は、シアン・マゼンタ・イエロー・ブラック等の有色トナーを用いて紙上に出力データを形成するプリンタである。プリンタ１１５は、紙の給紙を行う給紙部１１６と出力データを形成した紙を排紙する排紙部１１７を持つ。
【００２０】
表示装置１１８は、ユーザへの指示やＭＦＰ１０１の状態を示すユーザインタフェース（ＵＩ：Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を表示する。スキャナ１１９は、オートドキュメントフィーダを含むスキャナである。スキャナ１１９は束状のあるいは一枚の原稿画像を光源（不図示）で照射し、原稿反射像をレンズ（不図示）でＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）センサ等の固体撮像素子上に結像する。そして、固体撮像素子からラスター状の画像読み取り信号はＲＧＢ色空間の画像データとして得る。入力装置１２０はユーザからの入力を受け付けるためのインタフェースで、例えばキーボードがある。記憶装置１２１はコントローラ１０２で処理されたデータやコントローラ１０２が受け取ったデータ等を保存する。
【００２１】
測色機１２６はチャートを読み取ってＬ＊ａ＊ｂ＊やＸＹＺ等のデバイスに依存しない色空間の値を取得できる機械であり、ＰＣ１２４やＭＦＰ１０１へ測色したデータを送信することができる。
【００２２】
［処理フロー］
次に画像処理部１１４の処理の流れについて図２を用いて説明する。なお、図２において、処理工程にはＳ（ステップ）を参照番号に付与して示す。Ｓ２０１にて画像処理部１１４は画像データを受信する。そして、Ｓ２０２にて画像処理部１１４は、受け取ったデータがスキャナ１１９から受信したスキャンデータか、ドライバ１２５から送られたラスター画像１１３か、というジョブの種類を判別する。これらは、コントローラ１０２の内部でジョブの種類を判断するためのフラグがあり、そのフラグによって判断する。ここで、ジョブがドライバ１２５を経由したＰＤＬジョブの場合はラスター画像１１３であり、ＣＭＳによってプリンタデバイスに依存するＣＭＹＫに変換されたＣＭＹＫ画像２１１となる。
【００２３】
スキャンデータの場合（Ｓ２０２にてＹＥＳ）、受信した画像データはＲＧＢ画像２０３であるため、Ｓ２０４にて画像処理部１１４は色変換処理を行い、共通ＲＧＢ画像２０５を生成する。ここで共通ＲＧＢ画像２０５とはデバイスに依存しないＲＧＢ色空間で定義されており、演算によってＬ＊ａ＊ｂ＊等のデバイス非依存の色空間に変換することが可能である。一方、受信した画像データであるＲＧＢ画像２０３に対して、Ｓ２０６にて画像処理部１１４は文字判定処理を行い、文字判定データ２０７を生成する。ここでは画像のエッジ等を検出して文字判定データ２０７を生成する。
【００２４】
そして、共通ＲＧＢ画像２０５、および文字判定データ２０７の生成の後、Ｓ２０８にて画像処理部１１４は、Ｓ２０４にて生成した共通ＲＧＢ画像２０５に対してフィルタ処理を行う。ここで、Ｓ２０６にて生成した文字判定データ２０７を用いて文字部とそれ以外で異なるフィルタ処理を行う。次に画像処理部１１４は、Ｓ２０９にて下地飛ばし処理、Ｓ２１０で色変換処理を行い、下地を除去したＣＭＹＫ画像２１１を生成する。なお、Ｓ２０１にて受信した画像データがラスター画像である場合には（Ｓ２０２にてＮＯ）、受信した画像が、ＣＭＹＫ画像２１１として扱われる。
【００２５】
次にＳ２１２にて画像処理部１１４は、４次元ＬＵＴ（４Ｄ−ＬＵＴ）を用いてＣＭＹＫの混色データ（ＣＭＹＫ画像２１１）を補正するための処理を行う。混色の色味を補正する４次元ＬＵＴの生成方法については後述する。そして混色の色味を補正した後、画像処理部１１４は、Ｓ２１３にて１次元ＬＵＴを用いてシアン、マゼンタ、イエロー、ブラックの各単色の階調特性を補正する。１次元ＬＵＴの作成方法は各色の目標値と測定値を比較して目標値が再現できるように補正値を作る処理であり、詳細な説明は省略する。そして、Ｓ２１４にて画像処理部１１４は、ハーフトーン処理などの画像形成処理を行ってＣＭＹＫ画像（２値）２１５を作成する。その後、Ｓ２１６にて画像処理部１１４は、画像データをプリンタ１１５へ送信する。
【００２６】
＜４次元ＬＵＴ生成手順＞
次に図２のＳ２１２の４Ｄ−ＬＵＴ補正処理にて用いる混色の色味を補正するための４次元ＬＵＴを生成する処理の流れについて図３から図５を用いて説明する。以下の処理はコントローラ１０２のＣＰＵ１０３の指示により行い、記憶装置１２１やコントローラ１０２で記載されていない不揮発性のメモリを使ってデータの格納を行う。なお、各図において、実線で示す矢印は処理の流れを示し、破線で示す矢印は処理の中で用いられるデータの参照や出力といったデータの流れを示すものとする。
【００２７】
図３は、４次元ＬＵＴを作成する処理の流れを示したものである。まず、Ｓ３０１にてコントローラ１０２は、チャートデータＡ３０２を読み込んで、画像処理部１１４における処理を行い、プリンタ１１５へ送信してチャート３０３を出力する。チャートデータＡ３０２は、後述する図１０のように複数のパッチの構成からなる４次元ＬＵＴを補正するためのチャートのことである。チャートデータＡ３０２のパッチデータの生成方法については後述する。
【００２８】
次にＳ３０４にてコントローラ１０２は、スキャナ１１９を用いてチャート３０３の画像データを取得し、画像データから各パッチの信号値の計測を行うことで測色値（Ｌ＊ａ＊ｂ＊）３０５を得る。Ｓ３０４のチャートの画像データから測色値を取得する手段については図１３を用いて後述する。ここで、基準値（Ｌ＊ａ＊ｂ＊）３０７とは、出力デバイスの混色特性を目標の状態に補正するためのＬ＊ａ＊ｂ＊値であり、有彩色と無彩色のそれぞれで定められている。そして後述する図１７では、Ｌ＊ａ＊ｂ＊色空間上にある基準値と測色値が示されており、基準値と測色値の差分を使って、４次元ＬＵＴを補正する。
【００２９】
次にコントローラ１０２は、Ｓ３０６にて測色値（Ｌ＊ａ＊ｂ＊）３０５、基準値（Ｌ＊ａ＊ｂ＊）３０７及びＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ３０８を読み出し、３次元ＬＵＴ補正処理を行う。そして、コントローラ１０２は、３次元ＬＵＴ補正処理した結果であるＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ（補正後）３０９を出力する。Ｓ３０６の３次元ＬＵＴの補正処理については後述する。Ｌ＊ａ＊ｂ＊→ＣＭＹとは、Ｌ＊ａ＊ｂ＊からＣＭＹに変換するための色変換用のＬＵＴで、以下「→」で表記されているものは色空間を変換するためのＬＵＴを示している。Ｌ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ３０８は既知の手法を用いて作成されたＬＵＴであり、図１７のような格子状に一定の間隔で定めたＬ＊ａ＊ｂ＊値（図１７の格子点データ）に対応したデバイス固有のＣＭＹ値を記述したデータである。任意のＬ＊ａ＊ｂ＊値に対して補間演算を行い、ＣＭＹ値を出力する。
【００３０】
最後に、コントローラ１０２は、Ｓ３１０にてＣＭＹ→Ｌ＊ａ＊ｂ＊の３Ｄ−ＬＵＴ３１１とＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ（補正後）３０９とデバイス情報３１２を用いて、ＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ４１４を作成する。Ｓ３１０の４次元ＬＵＴの作成処理については図５を用いて後述する。ＣＭＹ→Ｌ＊ａ＊ｂ＊の３Ｄ−ＬＵＴ３１１は既知の手法を用いて作成した色変換用のＬＵＴであり、格子状に一定の間隔で定めたＣＭＹ値に対応したＬ＊ａ＊ｂ＊値を記述したデータである。コントローラ１０２は、任意のＣＭＹ値に対して補間演算を行い、Ｌ＊ａ＊ｂ＊値を出力する。なお、格子点の一定の間隔は、予め定義されているものとする。
【００３１】
（３次元ＬＵＴ補正処理）
次に図３のＳ３０６で示す３次元ＬＵＴ補正処理の詳細について、図４を用いて説明する。なお、図４において、処理工程にはＳ（ステップ）を参照番号に付与して示す。まず、Ｓ４０１にてコントローラ１０２は、記憶装置１２１から測色値（Ｌ＊ａ＊ｂ＊）３０５と基準値（Ｌ＊ａ＊ｂ＊）３０７を用いて有彩色のデータと無彩色のデータのそれぞれに対して差分データ４０２を算出する。差分データ４０２は、チャートデータＡ３０２のデータの個数分算出され、有彩色と無彩色で分類されている。
【００３２】
次にＳ４０３にてコントローラ１０２は、記憶装置１２１からＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ３０８を読み出し、格子点データ（Ｌ＊ａ＊ｂ＊）の１つを抽出し、有彩色か無彩色かを判定する。本実施形態にて用いられる判定方法の例を説明する。ａ＊及びｂ＊の値は色相／彩度を示すデータであるため、両方のデータが“０”に近いものを無彩色として判定する。この場合に例えば、判定のために閾値を定める方法などが考えられるが、ここでの判定方法は特に限定しない。この判定したデータが格子点データ（Ｌ＊ａ＊ｂ＊及び有彩無彩情報）４０４となる。ここで、Ｌ＊ａ＊ｂ＊のデータは、Ｌ＊が０〜１００、ａ＊とｂ＊がそれぞれ−１２８〜１２８の範囲で、格子点の数が３３×３３×３３の場合、Ｌ＊が約３ずつ、ａ＊とｂ＊が８ずつ均等に増加したデータとなる。つまり、ここで抽出した格子点データは、（Ｌ＊，ａ＊，ｂ＊）＝（０，−１２８，−１２８）から（Ｌ＊，ａ＊，ｂ＊）＝（１００，１２８，１２８）の範囲で構成された３３×３３×３３＝３５９３７個のデータのうちの１つとなる。さらに、このデータには、有彩色であるか無彩色であるかの情報が付加されているものとする。
【００３３】
次に、Ｓ４０５にてコントローラ１０２は、格子点データ（Ｌ＊ａ＊ｂ＊及び有彩無彩情報）４０４と基準値（Ｌ＊ａ＊ｂ＊）３０７との距離を算出する。そしてＳ４０６にてコントローラ１０２は距離が一定の閾値以内の差分データを抽出し、その差分データから格子点データ（Ｌ＊ａ＊ｂ＊及び有彩無彩情報）４０４の補正量を決定する。その際に格子点データの有彩無彩情報を参照して、有彩色の時は有彩色の差分データを、無彩色の時は無彩色の差分データを用いて抽出処理を行う。
【００３４】
次にＳ４０７にてコントローラ１０２は、格子点補正量を格子点データ（Ｌ＊ａ＊ｂ＊及び有彩無彩情報）４０４に反映し、補正後格子点データ（Ｌ＊ａ＊ｂ＊）４０８として記憶部に格納する。そして、Ｓ４０９にてコントローラ１０２は、全ての格子点データに対して処理を行ったか判定を行う。全ての格子点データに対して処理を行っていない場合は（Ｓ４０９にてＮＯ）、コントローラ１０２は、新しい格子点データをＳ４０３にて抽出し、処理を繰り返す。
【００３５】
全ての格子点データを処理した場合は（Ｓ４０９にてＹＥＳ）、Ｓ４１０にてコントローラ１０２は補間演算処理を行う。全ての格子点データを処理している場合、格子点の数の分だけ補正後格子点データ（Ｌ＊ａ＊ｂ＊）４０８が作成されている。このデータに対してコントローラ１０２は、Ｓ４１０にてＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ３０８を用いて補間演算を行い、新しいＣＭＹ値を算出する。コントローラ１０２は、このＣＭＹ値を元々の格子点データに対する出力値として記憶部に格納し、Ｌ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ（補正後）３０９を作成する。
【００３６】
以上のように格子点から一定の距離内にある差分データを参照して格子点の補正量を決定することで、少ないデータ数で多くの格子点データの補正量を決定することが可能となる。なお、本実施形態の例に限らず、Ｌ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ３０９を補正する手法であればどのようなものであってもよい。
【００３７】
（４次元ＬＵＴ作成処理）
次に図３のＳ３１０の４次元ＬＵＴを作成する処理について、図５を用いて説明する。なお、図５において、処理工程にはＳ（ステップ）を参照番号に付与して示す。まず、Ｓ５０１にてコントローラ１０２は、ＣＭＹＫ均等データ５０２からＣＭＹ値を抽出する。ここでＣＭＹＫ均等データの数は、ＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ３１３の格子点と同じ数であり、データの間隔も同じである。例えばＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ３１３の格子点数が８×８×８×８＝４０９６個の場合は、ＣＭＹＫ均等データ５０２の数は４０９６個となる。データが８ビット（０〜２５５）で表現される場合は、データの間隔は約３６となる。
【００３８】
次にＳ５０３にてコントローラ１０２は、ＣＭＹ→Ｌ＊ａ＊ｂ＊の３Ｄ−ＬＵＴ３１１とＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ（補正後）４１１とを用いて補間演算を行い、ＣＭＹ値を決定する。まず、コントローラ１０２は、抽出されたＣＭＹ値からＣＭＹ→Ｌ＊ａ＊ｂ＊の３Ｄ−ＬＵＴ３１１を用いて補間演算を実行し、Ｌ＊ａ＊ｂ＊値を求める。次にコントローラ１０２は、先ほど算出したＬ＊ａ＊ｂ＊値からＬ＊ａ＊ｂ＊→ＣＭＹの３Ｄ−ＬＵＴ（補正後）４１１を用いて補間演算を実行し、ＣＭＹ値を算出する。
【００３９】
次に、Ｓ５０４にてコントローラ１０２は、ＣＭＹＫ均等データ５０２からＫの値を抽出し、先ほど決定されたＣＭＹ値を組み合わせてＣＭＹＫ値５０５を作成する。ここで抽出したＫ値はＳ５０１にて抽出されたＣＭＹ値に対応するものである。
【００４０】
そしてＳ５０６にてコントローラ１０２は、デバイス情報３１２を用いて載り量制限処理を行う。ここでデバイス情報３１２とはプリンタ１１５が適用可能なトナー量を数値で表現したものであり、本明細書では「載り量」と定義する。例えばＣＭＹＫの場合、単色の最大値を１００％とすると、各色の合計は最大で４００％の信号値が設定できる。しかし、適用可能なトナーの総量が３００％として制限されている場合には、その載り量の上限は３００％となる。
【００４１】
ＣＭＹＫ値５０５は、その組み合わせによっては規定の載り量を超える可能性があるため、既知の下色除去（ＵＣＲ：Ｕｎｄｅｒ  Ｃｏｌｏｒ  Ｒｅｍｏｖａｌ）処理等を行って載り量制限処理を行う。ここで、ＵＣＲ処理とはＣＭＹのトナーをＫのトナーに置き換える処理のことである。一般に黒を表現する場合、ＣＭＹを等量用いて表現する手法とＫ単独で表現する手法が存在する。Ｋ単独で表現した場合、ＣＭＹで表現する場合に比べて濃度が低くなってしまうが、載り量を少なくできるというメリットがある。
【００４２】
そしてＳ５０７にてコントローラ１０２は、純色化処理を行ってＣＭＹＫ値（補正後）５０８を作成する。ＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ３１３で補正する際に、補間演算を行った結果、単色で入力されたデータが、２次色以上の混色で出力されてしまうことがある。実際は、Ｃ単色のデータはＣ単色で出力されることが望ましい。それを実現するため、元となったＣＭＹＫ均等データ５０２を参照して、純色データであった場合、ＣＭＹＫ値を純色データに修正する。例えばＣＭＹＫ均等データ５０２がＣ単色であるのにＣＭＹＫ値（補正後）５０８にＭの値が入っている場合はＭの値を“０”にする。
【００４３】
そしてＳ５０９にてコントローラ１０２は、ＣＭＹＫ値（補正後）５０８をＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ３１３に格納する。最後にＳ５１０にてコントローラ１０２は、ＣＭＹＫ均等データ５０２を全て処理したかの判定を行う。全てのデータを処理していない場合は（Ｓ５１０にてＮＯ）、コントローラ１０２は、残りのＣＭＹＫ均等データ５０２からＣＭＹ値を抽出し、処理を繰り返す。全てのデータをした場合は（Ｓ５１０にてＹＥＳ）、コントローラ１０２は処理を終了し、ＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ３１３が完成する。
【００４４】
ここで、ＬＵＴの格子点の数については、本実施形態の例に限らずどのようなものであってもよい。さらに、格子点数は例えばＣＭＹＫ→Ｃ’Ｍ’Ｙ’Ｋ’の４Ｄ−ＬＵＴ４１４でＣとＭの格子点数が異なるなど、特殊な構成のＬＵＴでもよい。
【００４５】
＜パッチデータ生成手順＞
４次元ＬＵＴ作成処理で使用するチャートデータＡのパッチデータを生成する流れについて図６から図９を用いて説明する。以下の処理はコントローラ１０２のＣＰＵ１０３の指示により行い、記憶装置１２１やコントローラ１０２で記載されていない不揮発性のメモリを使ってデータの格納を行う。なお、各図において、処理工程にはＳ（ステップ）を参照番号に付与して示す。また、各図において、実線で示す矢印は処理の流れを示し、破線で示す矢印は処理の中で用いられるデータの参照や出力といったデータの流れを示すものとする。
【００４６】
（チャートデータ生成処理）
図６は、チャートデータＡ３０２を作成する流れについて示している。まず、Ｓ６０１にてコントローラ１０２は、出力デバイスの色再現範囲が判定できるチャートデータＢ６０２を読み込み、画像処理部１１４で処理を行った後、プリンタ１１５へ送信してチャート６０３を出力する。例えば、チャートデータＢ６０２は、Ｒ、Ｇ、Ｂ、Ｃ、Ｍ、Ｙ、Ｋの各色のパッチデータは信号値が１００％となっているデータとなり、ＫのパッチデータはＣ、Ｍ、Ｙそれぞれの信号値が１００％で表現されたデータである。
【００４７】
次に、Ｓ６０４にて、ユーザが測色機１２６を用いてチャートの測色値である色再現範囲データ（Ｌ＊ａ＊ｂ＊）６０５を取得し、測色値をコントローラ１０２に送信する。ここで、本実施形態の構成に限らず、パッチデータを測定し、そのデータをＬ＊ａ＊ｂ＊値に変換できる手段があれば、どのようなもの処理方法でもよい。また、色再現範囲データとは、出力デバイスにおいて、色の再現が可能な範囲を色空間上で示す色再現範囲情報である。これにより再現情報取得手段を実現する。
【００４８】
次に、Ｓ６０６にてコントローラ１０２は、色再現範囲データ（Ｌ＊ａ＊ｂ＊）６０５とパッチ検出ルール６０７とを用いて、パッチデータ作成処理を行い、検出ルールに使用できるように選別がされる前の状態である選別前パッチデータ６０８を作成する。Ｓ６０６のパッチデータ作成処理については図７を用いて後述する。
【００４９】
本実施形態にて用いられるパッチ検出ルール６０７とは、チャートデータＡ３０２を出力デバイスで出力した後にスキャナを用いてチャートの画像を取得し、チャートの構成に基づく方向判定やパッチの中心位置の検知に使用するためのルールが定義されている。例えば、チャートの方向判定をするために、図１０の１行目１列目にあるパッチは「無彩色で高濃度の色である」というルールがある。そして、Ｍ行目Ｎ列目にあるパッチは、図１１の１１０２のように「Ｌ＊ａ＊ｂ＊色空間上でａ＊とｂ＊の差分の絶対値が最も大きくなる色である」というルールが格納されている。他にも、画像全体からパッチの中心位置を取得するために、エッジ抽出を用いる場合に判定するためのパッチデータ毎の閾値やパッチデータの最大個数についても格納する。
【００５０】
次に、Ｓ６０９にてコントローラ１０２は、パッチ検出ルール６０７と選別前パッチデータとを用いて、データ選別処理を行い、選別後パッチデータ６１０とチャート情報６１１とを作成する。Ｓ６０９のデータ選別処理については図９を用いて後述する。本実施形態にて用いられるチャート情報６１１とは、チャート全体を構成する情報が格納されている。例えば、チャートデータＡ３０２のパッチ数や主走査方向、副走査方向それぞれのパッチ数やパッチの大きさについて格納している。他にも、パッチの有彩色や無彩色の情報についても格納している。
【００５１】
次に、Ｓ６１２にてコントローラ１０２は、選別後パッチデータ６１０とＬ＊ａ＊ｂ＊→ＣＭＹ  ３Ｄ−ＬＵＴ３０８とを用いて補間演算を行い、チャートデータＡ３０２を作成する。そして、本処理フローを終了する。
【００５２】
（パッチデータ作成処理）
図７は、Ｓ６０６のパッチデータ作成処理の流れを示す。パッチデータ作成処理の概要は、以下のようになる。色差均等データ（Ｌ＊ａ＊ｂ＊）７０３は、（Ｌ＊，ａ＊，ｂ＊）＝（０，−１２８，−１２８）から（Ｌ＊，ａ＊，ｂ＊）＝（１００，１２８，１２８）の範囲で構成されたＰ×Ｐ×Ｐのデータを保持している。このとき、デバイス非依存の色空間における色差が均等になるように構成されている。そして、変数Ｐの範囲は１からＰｍａｘまでとなる格子点数を示している。尚、色差均等データは、デバイス非依存の色空間における色差が厳密に均等であるものに限定されず、デバイス非依存の色空間を略均等に分割した位置に相当するデータであってもよいことは言うまでもない。そして、色差均等データ（Ｌ＊ａ＊ｂ＊）７０３から、出力デバイスの色再現範囲内にあるデータを抽出し、各格子点数で色再現範囲内にあるパッチデータの個数を保持する。そして、チャートに使用できる最大のパッチ数を超えていない範囲で、一番パッチ数の多い格子点数となる格子点データを抽出し、選別前パッチデータ６０８として格納する。そして、選別前パッチデータ６０８をチャートに配置した場合にチャートが矩形状にならない場合は、他のパッチ候補データの中からパッチデータを追加して、矩形状となるようにする。
【００５３】
Ｓ６０６のパッチデータ作成処理にて生成された選別前パッチデータ６０８を用いてチャートを作成した場合に、矩形状にならないことがある。矩形状にならない場合に、矩形状になるまで、選別前パッチデータ６０８の各パッチデータから一定の色差を超えているパッチデータをパッチ候補データ７０７から検索し、抽出されたパッチデータを選別前パッチデータ６０８に追加する。全てのパッチ候補データ７０７から追加できるデータを検索し、矩形状とならない場合は、矩形状になるまでダミーのパッチデータを追加し、矩形状となる場合は、パッチデータの追加を行わない。以上が、Ｓ６０６におけるパッチデータ作成処理の概要である。
【００５４】
まず、Ｓ７０１にてコントローラ１０２は、変数Ｐの初期値を“１”とする。次に、Ｓ７０２にてコントローラ１０２は、色差均等データ（Ｌ＊ａ＊ｂ＊）７０３から格子点がＰのときの格子点データの１つを取得する。これにより、データ取得手段を実現する。次に、Ｓ７０２にてコントローラ１０２は、色再現範囲データ（Ｌ＊ａ＊ｂ＊）６０５を用いて、Ｓ７０２で取得した格子点データの色再現領域内外判定を行う。
【００５５】
例えば、色再現範囲内外判定方法としては、特許第３５６６３５０号などの方法を用いることができる。ここで特許第３５６６３５０号は、出力デバイスの色再現範囲がＲ、Ｇ、Ｂ、Ｃ、Ｍ、Ｙ、Ｋ、Ｗの８点によって定義されている場合、８点をＬ＊ａ＊ｂ＊値に変換する。そしてＲ、Ｇ、Ｂ、Ｃ、Ｍ、Ｙの６点とＫ及びＷの陵線から形成される１２面体で出力デバイスの色再現範囲を近似する。形成された１２面体に対して出力デバイスの色再現範囲の内部に存在する点は、色再現範囲内であると判定する方法である。チャートデータＢ（ＣＭＹ）６０２のデータがＲ、Ｇ、Ｂ、Ｃ、Ｍ、Ｙ、Ｋ、Ｗを表現するパッチである場合、色再現範囲データ（Ｌ＊ａ＊ｂ＊）６０５から１２面体でデバイス色再現範囲を近似できる。その結果、格子点データは出力デバイスの色再現範囲内外判定を行うことができる。
【００５６】
Ｓ７０５にて、色再現範囲判定の結果が出力デバイスの色再現範囲外である場合は（Ｓ７０５にてＮＯ）、コントローラ１０２は、Ｓ７０９にて全てのＬ＊ａ＊ｂ＊データで処理したのか判定を行う。Ｓ７０５にて色再現範囲判定の結果が色再現範囲内である場合は（Ｓ７０５にてＹＥＳ）、コントローラ１０２は、Ｓ７０６にてＳ７０２で取得した格子点データをパッチ候補データ７０７に格納する。これにより、候補作成手段を実現する。そして、Ｓ７０８にてコントローラ１０２はＰ格子点数で色再現範囲内にあるパッチの数を１つ増やす。
【００５７】
Ｓ７０９にて、コントローラ１０２は、格子点がＰのときの色差均等データ内の格子点データが全て処理されたかの判定を行う。全ての格子点データを処理していない場合は（Ｓ７０９にてＮＯ）、コントローラ１０２は、Ｓ７０２にて次の格子点データを取得して処理を繰り返す。Ｓ７０９にて、全ての格子点データを処理した場合は（Ｓ７０９にてＹＥＳ）、コントローラ１０２は、Ｓ７１０にて格子点数が生成する最大格子点数（Ｐｍａｘ）を超えたか判定を行う。
【００５８】
Ｐｍａｘが変数Ｐよりも小さい場合（Ｓ７１０にてＹＥＳ）、Ｓ７１１にて、コントローラ１０２は、変数Ｐを１つ増やす。そして、コントローラ１０２はＳ７０２にて、格子点がＰの時の格子点データを取得し、処理を繰り返す。Ｐｍａｘが変数Ｐ以上となる場合（Ｓ７１０にてＮＯ）、コントローラ１０２は、Ｓ７１２の処理を行う。ここで、最大格子点数Ｐｍａｘはユーザが指定しても構わないが、Ｌ＊ａ＊ｂ＊→ＣＭＹ  ３Ｄ−ＬＵＴ３０８の格子点数までになることが望ましい。
【００５９】
次に、Ｓ７１２にてコントローラ１０２は、パッチ検出ルール６０７にて定義されたパッチデータの最大個数を読み出す。そして、コントローラ１０２は、読み出したパッチデータの最大個数を超えない範囲で、パッチとして使用する格子点数を決定する。
【００６０】
次に、Ｓ７１３にてコントローラ１０２は、Ｓ７１２で決定された格子点数のパッチデータをパッチ候補データ７０７の中から抽出し、選別前パッチデータ６０８へ格納する。次に、Ｓ７１４にてコントローラ１０２は、選別前パッチデータ６０８をチャートに配置してチャートが矩形状になっているのか判定を行う。ここで、矩形状とは、パッチデータをチャート上に配置して図１０におけるＭ行Ｎ列目にパッチが存在していることをいう。
【００６１】
チャートが矩形状となった場合は（Ｓ７１４にてＹＥＳ）、コントローラ１０２は、処理を終了する。チャートが矩形状とならない場合は（Ｓ７１４にてＮＯ）、コントローラ１０２はＳ７１５にて、パッチ検出ルール６０７と選別前パッチデータ６０８とパッチ候補データ７０７とを用いて、パッチデータの追加を行う。Ｓ７１５のパッチデータの追加処理については図８を用いて後述する。
【００６２】
ただし、チャートに配置したときに、パッチ検出ルール６０７で検出等に使用しないパッチにデータが存在しない場合、矩形状になる必要がないので、その場合は、コントローラ１０２は処理を終了する。例えば、Ｍ行Ｎ列目のルール１を必要としないでも、チャートの方向判定や傾きできる方法があれば、Ｍ行Ｎ列目のパッチはどのようなパッチデータでもよいので、必ずしも矩形状である必要はなくなる。
【００６３】
（パッチデータの追加処理）
図８は、図７のＳ７１５のパッチデータの追加処理の流れを示す。パッチデータの追加処理の概要は以下のようになる。Ｓ６０６のパッチデータ作成処理にて生成された選別前パッチデータ６０８を用いてチャートを作成した場合に、矩形状にならないことがある。矩形状にならない場合に、矩形状になるまで、選別前パッチデータ６０８の各パッチデータから一定の色差を超えているパッチデータをパッチ候補データ７０７から抽出する。
【００６４】
図１８のパッチ候補データ１８０１のように色差以内に選別前パッチデータが見つからないパッチ候補データを選別前パッチデータ６０８に追加する。図１８のパッチ候補データ１８０２のように色差以内に選別前パッチデータが見つかったパッチ候補データは、選別前パッチデータ６０８に追加しない。パッチ候補データ７０７から１個ずつ条件に合うパッチ追加し、全てのパッチ候補データ７０７を探索するまでに矩形状とならない場合は、エラーとして処理を終了する。また、矩形状となる場合は、正常終了して、選別前パッチデータ６０８を使ってチャートの作成を行う。
【００６５】
まず、Ｓ８０１にてコントローラ１０２は、パッチ候補データ７０７のパッチデータを１つ取得する。なお本実施形態では、追加するパッチデータの色に偏りをなくすために、取得するパッチ候補データ７０７は、ランダムで取得するようにする。なお取得方法については、これに限定するものではない。次に、Ｓ８０２にてコントローラ１０２は、選別前パッチデータ６０８の選別前パッチデータを１つ取得する。
【００６６】
次に、Ｓ８０２にてコントローラ１０２は、Ｓ８０１で取得した候補パッチデータとＳ８０２で取得した選別前パッチデータと間の色差を算出する。そして、Ｓ８０４にてＳ８０３で算出した色差が閾値を超えているか判定を行う。閾値は、格子点間の補正精度の偏りを避けるためにあるもので、最大格子点数Ｐｍａｘの場合の格子点間隔を閾値にしてもよい。
【００６７】
Ｓ８０４で色差が閾値を超えていない場合は（Ｓ８０４にてＮＯ）、Ｓ８０６にてコントローラ１０２は、全ての選別前データを処理したのか判定を行う。Ｓ８０４で色差が閾値を超えている場合は（Ｓ８０４にてＹＥＳ）、Ｓ８０５にてコントローラ１０２は、パッチ候補データを選別前パッチデータ６０８に格納する。Ｓ８０７にてコントローラ１０２は、パッチ検出ルール６０７を用いてチャートが矩形状になっているのか判定を行う。尚、この判定方法は、Ｓ７１４と同様である。
【００６８】
Ｓ８０７でチャートが矩形状になっている場合は（Ｓ８０７にてＹＥＳ）、処理を終了する。Ｓ８０７にてチャートが矩形状となっていない場合は（Ｓ８０７にてＮＯ）、Ｓ８０８にてコントローラ１０２は、全てのパッチ候補データを処理したのか判定を行う。
【００６９】
Ｓ８０６で全ての選別前データを処理していない場合は（Ｓ８０６にてＮＯ）、コントローラ１０２はＳ８０２で選別前パッチデータ６０８の取得を行い、全ての選別前パッチデータを処理するまで繰り返す。全ての選別前データを処理した場合（Ｓ８０６にてＹＥＳ）、コントローラ１０２は、Ｓ８０８にて全てのパッチ候補データを処理したか判定を行う。
【００７０】
Ｓ８０８で全てのパッチ候補データを処理していない場合は（Ｓ８０８にてＮＯ）、コントローラ１０２はＳ８０１にてパッチ候補データの読み出し、全てのパッチ候補データを処理するまで繰り返す。全てのパッチ候補データを処理した場合は（Ｓ８０８にてＹＥＳ）、チャートが矩形状にならなかったことでチャートの検出ができない。そのため、コントローラ１０２はＳ８０９にて矩形状になるまで足りないパッチデータにダミーのデータを選別前パッチデータ６０８に格納し、処理を終了する。例えば、ダミーのデータデータとして、白色のＬ＊ａ＊ｂ＊値（Ｌ＊，ａ＊，ｂ＊）＝（１００，０，０）としてもよい。
【００７１】
（データ選別処理）
図９は、図６のＳ６０９のデータ選別処理について説明する。データ選別処理の概要は、以下のようになる。選別前パッチデータ６０８の１個ずつのパッチをパッチ検出に使用できるのか選別を行い、ルール別に一旦データを格納する。そして、検出ルールに基づきルール別に選別されたパッチデータを配列し直し、チャートからパッチ検出が可能となる選別後パッチデータ６１０を作成する。
【００７２】
まず、Ｓ９０１にてコントローラ１０２は、選別前パッチデータ６０８のパッチデータを１つ取得する。次に、Ｓ９０２にてコントローラ１０２は、パッチ検出ルール６０７の検出ルールを読み出す。
【００７３】
ここで、本実施形態の例にある検出ルールは、「無彩色」、「ルール１」、「ルール２」とあるので、それぞれについて図１１と図１２を使って説明する。図１１は選別前パッチデータ６０８とＬ＊ａ＊ｂ＊→ＣＭＹ  ３Ｄ−ＬＵＴ３０８の格子点データとをａ＊−ｂ＊平面上の２次元で投影したときの例を示す。図１１では、選別前パッチデータ６０８のＬ＊ａ＊ｂ＊格子点（図１１の▲印）、Ｌ＊ａ＊ｂ＊→ＣＭＹ  ３Ｄ−ＬＵＴ３０８のＬ＊ａ＊ｂ＊格子点（図１１の●印）、および出力デバイスの色再現範囲（図１１の実線）を示している。
【００７４】
無彩色とは、Ｓ４０３で無彩色と判定されるような色であり、図１１のパッチデータ１１０１のようなパッチデータを意味する。ルール１では、図１１のパッチデータ１１０２、１１０３のようなパッチデータであり、ａ＊とｂ＊の差分の絶対値を算出した場合に、その絶対値が最も大きくなるデータをルール１にて使用可能なデータとして用いる。ルール２では、図１１では図示されていないパッチデータであり、Ｌ＊の値がメディアの下地のＬ＊と比較して所定の値以上の差となるデータがルール２にて使用可能なデータとして用いる。ここで、閾値とはチャートのエッジを検出するときに用いる値である。
【００７５】
図１２は、検出ルールを適用したチャートの配置したときの例を示したものである。無彩色で高濃度となるパッチデータ、つまり無彩色でＬ＊が低くなるようなパッチデータは、図１２のパッチデータ１２０１の位置である１行目１列目に配置する。ルール１のパッチデータは図１２のパッチデータ１２０２の位置であるＭ行目Ｎ列目に配置する。ルール２のパッチデータは、図１２のパッチデータ１２０３の位置であるＭ行目１列目とパッチデータ１２０４の位置である１行目Ｎ列目に配置する。
【００７６】
もちろん、他のパッチ位置に無彩色のパッチデータに該当するデータを配置させても構わない。検出ルールは本実施形態に示した例に限らず、他のルールとなる場合は、パッチ検出に利用するパッチ位置が変わった場合は、それに応じてパッチ検出に利用するパッチ位置が変わることは言うまでもない。また、本実施形態では、無彩色、ルール１、ルール２、その他の順にパッチを優先付けしてパッチを適用しているが（Ｓ９０３〜Ｓ９０９）、ルールの内容が変更されれば、当然その優先順も変更されることとなる。
【００７７】
次に、Ｓ９０３にてコントローラ１０２は、Ｓ９０１で取得したパッチデータが無彩色であるのか判定する。Ｓ９０３にて無彩色データと判定された場合（Ｓ９０３にてＹＥＳ）、Ｓ９０４にてコントローラ１０２は、パッチデータが無彩色データであるという情報を設定する。Ｓ９０３にて無彩色データではないと判定された場合（Ｓ９０３にてＮＯ）、Ｓ９０５にてコントローラ１０２はパッチデータがルール１に使用可能なパッチデータであるか判定を行う。
【００７８】
Ｓ９０５にてルール１に使用可能であると判定された場合（Ｓ９０５にてＹＥＳ）、Ｓ９０６にてコントローラ１０２は、パッチデータがルール１のデータであるという情報を設定する。Ｓ９０５にてルール１に使用できないと判定された場合（Ｓ９０５にてＮＯ）、Ｓ９０７にてパッチデータがルール２に使用可能なパッチデータであるか判定を行う。Ｓ９０７にてルール２に使用可能であると判定された場合（Ｓ９０７にてＹＥＳ）、Ｓ９０８にてコントローラ１０２は、パッチデータがルール２のデータであるという情報を設定する。Ｓ９０７にてルール２に使用できないと判定された場合（Ｓ９０７にてＮＯ）、Ｓ９０９にてコントローラ１０２は、パッチデータがその他のパッチデータであるという情報を設定する。
【００７９】
次に、Ｓ９１０にてコントローラ１０２は、設定された情報を元にルール別にパッチデータをルール別パッチデータ９１１に格納する。次にＳ９１２にてコントローラ１０２は、全てのお選別前パッチデータ６０８を処理したか判定を行う。全て処理された場合（Ｓ９１２にてＹＥＳ）、Ｓ９１３にてコントローラ１０２は、パッチ検出ルール６０７とルール別パッチデータ９１１とを用いて検出ルールに基づいたパッチデータの配列を行い、選別後パッチデータ６１０を作成する。
【００８０】
パッチデータの配列方法は、後述する図１３に示すようにそれぞれのルールで決められているパッチ位置に該当するパッチデータを優先的に配置することである。例えばその他のパッチ配置方法に、ユーザにチャートの向きをわかりやすくするため、１行目のＮ列目を除く色に優先的に無彩色のパッチデータを配置しても良い。次に、Ｓ９１４にて、コントローラ１０２は、Ｓ９１３で配列したパッチに関する情報をチャート情報６１１に格納する。例えば、Ｓ９１３で配列したパッチの総数や主走査方向と副走査方向それぞれのパッチ数、パッチの有彩無彩情報についても格納する。これにより、チャート生成手段を実現する。
【００８１】
本実施形態のパッチデータ生成方法により、経時変化や使用している環境によって出力デバイスの特性が変化した場合でも、現状の出力デバイスの特性に合わせた適切なパッチが作成可能となる。それにより、適切なパッチ数で高精度に混色の補正のための４次元ＬＵＴを作成することが可能となる。例えば、パッチデータ作成直後に、出力デバイスを使ってパッチデータを出力し、測色機１２６を用いて出力したパッチの測色値を取得して、そのデータを測色値（Ｌ＊ａ＊ｂ＊）３０５として登録してもよい。
【００８２】
なお、本実施形態にて示したルールに限らず、パッチ検出可能となるようなルールであればどのようなものでもよい。そして、ルールの数もパッチの検出が可能となる数あればよいので、ルールの数が変われば、それに伴ってルール別に判断する分岐数が変化することは言うまでもない。
【００８３】
＜パッチデータ取得手順＞
Ｓ３０４のスキャナで取得したチャート３０３の画像データから各パッチの測色値を得る処理の流れについて図１３を使って説明する。以下の処理はコントローラ１０２のＣＰＵ１０３の指示により行い、記憶装置１２１やコントローラ１０２の中にある不揮発性のメモリを使ってデータの格納を行う。
【００８４】
まず、Ｓ１３０１にてスキャナ１１９は、チャート３０３の読み込みを行い、チャート３０３の画像データ１３０２を得る。ここでチャート３０３は、チャートデータＡ３０２を出力デバイスで印刷したものである。次に、Ｓ１３０３にてコントローラ１０２は、取得した画像データ１３０２とＲＧＢ→Ｌ＊ａ＊ｂ＊  ３Ｄ−ＬＵＴ１３０４を使って補間演算を行い、画像データ１３０２をＬ＊ａ＊ｂ＊色空間に変換する。ＲＧＢ→Ｌ＊ａ＊ｂ＊の３Ｄ−ＬＵＴ１３０４は既知の手法を用いて作成した色変換用のＬＵＴであり、格子状に一定の間隔で定めたＲＧＢ値に対応したＬ＊ａ＊ｂ＊値を記述したデータである。
【００８５】
次に、Ｓ１３０５にてコントローラ１０２は、チャート情報６１１とパッチ検出ルール６０７とを用いて画像データ１３０２のチャートのエッジを検出する。主走査方向のチャートのエッジ検出方法について図１４を使って説明する。ここで、主走査方向とは、図１４のｘ方向のことで、副走査方向とは図１４のｙ方向であるとする。図１４に示すＳｔｅｐとは副走査方向へエッジ検出を行う幅のことで、１以上の整数値となる。
【００８６】
まず、副走査方向に着目画素と前の画素との輝度Ｌ＊の差分を計算し、差分値が閾値を超えた場合にエッジと判断する。しかし、スキャナのガラス面の付着したゴミがある可能性も想定されるため、さらに副走査方向に一定の画素数だけエッジ検出を行い、副走査方向に再度エッジがない場合には、先のエッジをチャートのエッジと判断する。副走査方向へエッジ検出をして見つからなかった場合は、主走査方向へ何画素か移動させ、同様の処理を行ってエッジ検出を行い、最初に見つかったエッジ部分をｘ１とする。そして、ｘ１から主走査方向にチャート情報から（Ｎ−１）パッチ分の画素を移動させ、エッジ検出を行うことでｘ２を検出する。
【００８７】
エッジが検出されない場合は、再度ｘ１から検索し直すようにする。以上の処理を行うことでチャートの上辺の位置を検出することが可能になる。そして、副走査方向でも同様の処理を行い、チャートの左辺のｙ１とｙ２を検出する。本実施形態では、図１２に示す１２０１、１２０２、１２０４のパッチデータは、Ｌ＊において紙白との差分があるので、エッジの検出ができるが、エッジ検出のためのルールが異なっても同様の効果を得られればどのようなものでもよい。
【００８８】
次に、Ｓ１３０６にてコントローラ１０２は、チャートの傾きが閾値以下であることを判定する。傾きの判定方法は、Ｓ１３０５で検出されたｘ１とｘ２のｙ座標の差分の絶対値であるｄｙと、ｙ１とｙ２のｘ座標の差分の絶対値であるｄｘとが閾値以下である場合に傾きがないと判定する。例えば、閾値を決める方法として、５度傾いた場合のｄｘとｄｙの値を算出し、閾値としてもよい。Ｓ１３０６にてチャートが傾いていると判定された場合（Ｓ１３０６にてＮＯ）、Ｓ１３０８にて表示装置１１８は、チャートが傾いているという内容を表示し、もう一度チャートを置き直すようにユーザに促して再度チャートを読み直す。
【００８９】
Ｓ１３０６にてチャートが傾いていないと判定された場合（Ｓ１３０６にてＹＥＳ）、Ｓ１３０７にてコントローラ１０２は、チャートの先端部を算出する。チャートの先端部の算出方法として、例えば、ｘ１とｘ２を通る直線と、ｙ１とｙ２を通る直線の交点がチャートの先端部であるとする。
【００９０】
次に、Ｓ１３０９にてコントローラ１０２は、チャート情報６１１に格納されているパッチの大きさとＳ１３０７で算出したチャートの先端部、Ｓ１３０６で算出したｄｘとｄｙを使って各パッチの中心位置を算出する。このとき、ｄｘとｄｙから１パッチあたりの傾きが算出することができるので、傾きを考慮した各パッチの中心位置を高精度で決めることが可能となる。
【００９１】
次にＳ１３１０にてコントローラ１０２は、Ｓ１３０９で求めた各パッチの中心位置から各パッチの信号値（画素値）を取得する。信号値を求める場合、中心位置の画素だけでなく周辺画素の信号値を用いて平均値を算出したものを信号値としてもよい。
【００９２】
次に、Ｓ１３１１にてコントローラ１０２は、Ｓ１３１０で求めた各パッチの信号値とパッチ検出ルール６０７とを用いて方向判定を行う。例えば方向判定の方法として、図１０の１行１列目に図１２の無彩色で高濃度のパッチデータ１２０１と図１０のＭ行Ｎ列目に図１２のルール１のパッチデータ１２０２とがある場合、パッチデータのａ＊とｂ＊の差分の絶対値の違いを使った判定方法がある。
【００９３】
なお、他にも、チャートを作成したときにチャート情報６１１の各パッチデータのＬ＊ａ＊ｂ＊値を保持させて、Ｓ１３１０で求めた各パッチの信号値と比較を行い、各信号値の差分結果が大きい場合に間違いであると判定する方法を用いても良い。その場合には、ルール１を設定する必要がなく、チャートが矩形状になる必要もなくなる。以上のような例のようにパッチルールを設定しても、チャートの方向判定することができ、同様の効果が得られる。
【００９４】
次に、Ｓ１３１２にてコントローラ１０２は、Ｓ１３１１で得られたチャートの向きが正しくセットされているのか判定を行う。チャートの向きが間違っている場合（Ｓ１３１２にてＮＯ）、Ｓ１３１４にて表示装置１１８は、チャートの向きが正しくないという内容を表示し、もう一度チャートを置き直すようにユーザに促して再度チャートを読み直す。Ｓ１３１２にてチャートの向きが正しい場合（Ｓ１３１２にてＹＥＳ）、Ｓ１３１３にてコントローラ１０２は、Ｓ１３１０で得られた信号値を有彩色と無彩色に分類し、その結果を測色値（Ｌ＊ａ＊ｂ＊）３０５として記憶部に格納し、処理を終了する。
【００９５】
本実施形態におけるパッチデータの取得方法について述べたが、これに限らず、スキャン画像パッチから向きや傾きについて判定し、パッチデータの値を取得できる方法であればどのような方法でもよい。
【００９６】
本発明により、出力デバイスが有する混色特性を考慮したチャートを生成し、適切なパッチ数で高精度に混色の補正のための４次元ＬＵＴを作成することが可能となる。また、本実施形態のパッチデータ生成方法により、経時変化や使用している環境によって出力デバイスの特性が変化した場合でも、現状の出力デバイスの特性に合わせた適切なパッチが作成可能となる。
【００９７】
また、出力デバイスに依存したチャートのパッチ配列であっても、チャートの方向判定や傾き検知などのルールが出力デバイスに依存しないため、チャートのパッチデータを高精度に測定することが可能となる。また、チャートのエッジ検出を行った傾き検知を行うことで、各パッチの中心位置を正確に得ることができ、高精度なパッチデータの測定を行うことができる。
【００９８】
また、チャートの方向判定については、２つのパッチに特徴を持たせることで判定するので、計算量も少ない判定が可能となる。
【００９９】
＜第二実施形態＞
次に出力デバイスにおけるチャートの濃度ムラを考慮したパッチデータの追加処理方法について説明する。第一実施形態では、出力デバイスの持つ混色特性を考慮したチャートを生成し、適切なパッチ数で高精度に混色の補正のための４次元ＬＵＴを作成することを実現する構成としていた。
【０１００】
しかし、図７のパッチデータの追加処理において、チャートが矩形上となるまで、パッチ間の色差が一定の間隔以上になるパッチデータを追加するので、計算時間がかかってしまう可能性があった。また、出力デバイスにおけるトナーの転写工程や定着工程は、出力デバイス周辺の温度や湿度、もしくは経時変化などの影響を受けやすく、紙上に定着トナー量が変化してしまい、濃度ムラが起きる可能性がある。これに対し、本実施形態では、チャートのパッチデータの追加処理においてパッチ間の色差が一定の間隔以上になるパッチデータを追加させるだけでなく、出力デバイスにおけるチャートの濃度ムラを考慮した処理方法について説明する。なお、ここでは、第一実施形態との差分のみを述べ、重複する箇所については第一実施形態と同様の処理を行う。なお、図４において、処理工程にはＳ（ステップ）を参照番号に付与して示す。また、各図において、実線で示す矢印は処理の流れを示し、破線で示す矢印は処理の中で用いられるデータの参照や出力といったデータの流れを示すものとする。
【０１０１】
（パッチデータの追加処理）
図１５は、第一実施形態にて図７のＳ７１５のパッチデータの追加処理の流れについて説明しており、第一実施形態の図８に対応する。図７で行っていた他のパッチ候補データの中から色差が一定の間隔以上となるパッチデータを選びだすのではなく、ダミーフラグを付加したものである。
【０１０２】
本実施形態では、選別前パッチデータ６０８やルール別パッチデータ９１１に対してパッチ毎にダミーフラグが付加できるようにする。そして、チャート情報６１１にも同様にダミーフラグに関する情報が記載されているようにする。以下の処理はコントローラ１０２のＣＰＵ１０３の指示により行い、記憶装置１２１やコントローラ１０２の中にある不揮発性のメモリを使ってデータの格納を行う。
【０１０３】
まず、Ｓ１５０１にてコントローラ１０２は、パッチ検出ルールを使って、図７のＳ７１４と同様にチャートが矩形状になっているか判定をする。Ｓ１５０１にて矩形状であると判定された場合（Ｓ１５０１にてＹＥＳ）、処理を終了する。Ｓ１５０１にて矩形状ではないと判定された場合（Ｓ１５０１にてＮＯ）、Ｓ１５０２にてコントローラ１０２は、パッチデータにダミーフラグを付加する。このとき付加されたパッチデータの色を表すデータに関しては、白色等のどのような色でもよい。
【０１０４】
次に、Ｓ１５０３にてコントローラ１０２は、選別前パッチデータ６０８にＳ１５０２でダミーフラグを付加したパッチデータを格納し、同様の処理を矩形状になるまで繰り返す。矩形状にした場合に、空白になっているパッチデータにダミーフラグを付加させることになるので、図８のように、パッチ候補データ７０７の中から使用できるパッチデータを探索する方法に比べて計算量を少なくすることが可能となる。
【０１０５】
第一実施形態で述べたＳ９１３の検出ルールに基づきデータを配列する処理では、ルール別パッチデータ９１１を使ってデータを配列するが、ダミーフラグが付加されたデータに関しては、そのパッチデータから離れているパッチのデータに置き換える処理を行う。例えば、Ｍ行４列のパッチにダミーフラグが付加された場合は、１行（Ｎ−４）列のパッチデータに置き換えを行う。そして、パッチ検出ルールで使用するパッチ位置に、ダミーフラグが付加されているパッチを配置しないようにする。
【０１０６】
第一実施形態で述べたＳ１３１３のデータを有彩色と無彩色に分類する処理の後で、さらにダミーフラグの付加されているパッチデータに関しては置き換え元となるパッチデータとの平均化を行う。これにより、出力デバイスでチャートのチャート内の濃度ムラについて考慮することができ、濃度ムラに影響しないパッチデータを得ることができる。
【０１０７】
本実施形態におけるパッチデータの追加処理方法について述べたが、これに限らず、パッチデータに対して、ダミーとなるパッチデータを追加することで、出力デバイスによるチャート面の濃度ムラの影響を抑える方法であればどのような方法でもよい。
【０１０８】
本発明により、パッチ間の色差が一定の間隔以上となるように考慮しているだけでなく、作成されたチャートが出力デバイスで印刷されたチャートにおける濃度ムラ等を考慮した構成となった。その結果、濃度ムラに影響しないパッチデータを得ることができ、さらに、第一実施形態と比べて計算量を少なくさせてパッチデータを作成することが可能となる。
【０１０９】
＜第三実施形態＞
次に特定の色を考慮した場合のパッチデータの追加処理方法について説明する。先の実施形態では出力デバイスが有する混色特性を考慮して、さらにパッチ間の色差が一定の間隔以上になるパッチデータを追加する処理について述べた。しかし、上述した方法では特に補正精度を向上させたい色を指定することができなかった。これに対し、本実施形態では、チャートのパッチデータの追加処理において特定色情報を用いたパッチデータを追加処理方法について説明する。なお、ここでは、第一実施形態との差分のみを述べ、重複する箇所については第一実施形態と同様の処理を行う。
【０１１０】
まず、特定色情報１６０３の作成方法について説明する。表示装置１１８は特定色を入力するための特定色入力画面を表示する。受付手段である特定色入力画面の例は図１９を用いて説明する。
【０１１１】
表示装置１１８は、ＵＩ１９０１において特定色を指定するためのＣ、Ｍ、Ｙ、Ｋをそれぞれ入力するためのフォーム１９０２、１９０３、１９０４、１９０５を表示する。それぞれのフォームには、入力装置１２０を使って、数値の入力を行うことができ、入力値の範囲についてはＣＭＹＫ値の場合はそれぞれ０〜１００とする。フォーム１９０２はＣの数値を入力するためのものであり、同様にフォーム１９０３はＭ、フォーム１９０４はＹ、フォーム１９０５はＫとなる。
【０１１２】
「測色機による測定」ボタン１９０６が押下されると、測色機を使った測定値を入力値に指定することができる。例えば、測色機１２６にて、特定の色と指定したいカラーパッチの測色を行って測色値を取得する。次に測色値は、ネットワーク１２３経由でネットワークＩ／Ｆ１２２を使ってコントローラ１０２はデータを受信し、特定色の測定値を取得してもよい。測定した色空間がＬ＊ａ＊ｂ＊値だった場合は、Ｌ＊ａ＊ｂ＊値として入力されるようにしてもよいし、ＣＭＹＫ値に変換した値としても良い。
【０１１３】
「Ｌ＊ａ＊ｂ＊切り替え」ボタン１９０７が押下されると、ＣＭＹＫによる入力画面から、Ｌ＊ａ＊ｂ＊による入力画面に切り替わる。Ｌ＊ａ＊ｂ＊値の入力範囲の例として、Ｌ＊が０〜１００、ａ＊が−１２８〜１２８、ｂ＊が−１２８〜１２８としてもよい。もちろん、Ｌ＊ａ＊ｂ＊の場合の入力フォームの数は、３個である。「次へ」ボタン１９０８が押下されると、次の特定色を入力する画面となり、特定色の数を追加することが可能となる。「終了」ボタン１９０９が押下されると、特定色の入力を終了し、これまで入力した値は、記憶装置１２１やコントローラ１０２の中にある不揮発性のメモリを使ってデータの保持を行う。
【０１１４】
以上の操作を行うことで、特定色情報１６０３が作成される。
【０１１５】
（パッチデータの追加処理）
図１６は、第一実施形態にて図７のＳ７１５のパッチデータの追加処理の流れについて説明しており、第一実施形態の図８に対応する。図７で行っていた他のパッチ候補データの中から一定の色差が離れているパッチデータを選びだすだけではなく、特定色情報１６０３において特定の色として使用できるパッチデータを追加する。以下の処理はコントローラ１０２のＣＰＵ１０３の指示により行い、記憶装置１２１やコントローラ１０２の中にある不揮発性のメモリを使ってデータの格納を行う。なお、図１６において、処理工程にはＳ（ステップ）を参照番号に付与して示す。また、各図において、実線で示す矢印は処理の流れを示し、破線で示す矢印は処理の中で用いられるデータの参照や出力といったデータの流れを示すものとする。
【０１１６】
まず、Ｓ１６０１にてコントローラ１０２は、パッチ候補データ７０７のパッチデータを１つ取得する。本実施形態では、追加するパッチデータの色に偏りをなくすために、取得するパッチ候補データ７０７は、ランダムで取得する。なお取得方法については、これに限定するものではない。次に、Ｓ１６０２にてコントローラ１０２は、特定色情報１６０３を取得し、Ｓ１６０１にて取得したパッチデータが、特定色のパッチデータになるのか判定する。ここでは、特定色のパッチデータとして使える判定をする時に、特定色情報１６０３の中にあるＬ＊ａ＊ｂ＊値とパッチデータの色差が特定色判定用の閾値より小さいかで判定を行う。
【０１１７】
次に、Ｓ１６０４にてコントローラ１０２は、Ｓ１６０２の特定色で使用できるパッチか判定した結果を使った判定を行う。Ｓ１６０４で特定色として使用できるパッチと判定された場合（Ｓ１６０４にてＹＥＳ）、Ｓ１６０５にてコントローラ１０２は、選別前パッチデータ６０８からパッチデータを１つ取得する。次に、Ｓ１６０５にてコントローラ１０２は、Ｓ１６０１で取得したパッチ候補データとＳ１６０５で取得した選別前パッチデータの色差を算出する。
【０１１８】
そして、Ｓ１６０７にてＳ１６０６で算出した色差が閾値を超えているか判定を行う。閾値は、特定色のパッチデータを追加するためであったり、格子点間の補正精度の偏りを避けるためであったりするので、最大格子点数Ｐｍａｘの場合の格子点間隔を閾値にしてもよい。
【０１１９】
色差が閾値を超えていない場合（Ｓ１６０７にてＮＯ）、Ｓ１６１０にてコントローラ１０２は、全ての選別前データを処理したのか判定を行う。Ｓ１６０７で色差が閾値を超えている場合（Ｓ１６０７にてＹＥＳ）、Ｓ１６０８にてコントローラ１０２は、パッチ候補データを選別前パッチデータ６０８に格納する。Ｓ１６０９にてコントローラ１０２は、パッチ検出ルール６０７を用いてチャートが矩形状になっているのか判定を行う。尚、この判定方法は、第一実施形態にて述べたＳ７１４の方法と同様である。
【０１２０】
Ｓ１６０９でチャートが矩形状になっている場合（Ｓ１６０９にてＹＥＳ）、処理を終了する。Ｓ１６０９にてチャートが矩形状となっていない場合（Ｓ１６０９にてＮＯ）、Ｓ１６１１にてコントローラ１０２は、全てのパッチ候補データを処理したのか判定を行う。
【０１２１】
全ての選別前データを処理していない場合（Ｓ１６１０にてＮＯ）、コントローラ１０２はＳ１６０５にて選別前パッチデータ６０８の取得を行い、全てのデータを処理するまで繰り返す。全ての選別前データを処理した場合（Ｓ１６１０にてＹＥＳ）、コントローラ１０２は、Ｓ１６１１にて全てのパッチ候補データを処理したか判定を行う。全てのパッチ候補データを処理していない場合は（Ｓ１６１１にてＮＯ）、コントローラ１０２はＳ１６０１にてパッチ候補データの読み出しを行う。全ての選別前データを処理した場合は（Ｓ１６１１にてＹＥＳ）、チャートが矩形状にならなかったことでチャートの検出ができない。そのため、コントローラ１０２は、Ｓ１６１２にて矩形状になるまで足りたいパッチデータにダミーのデータを選別前パッチデータ６０８に格納し、処理を終了する。例えば、ダミーのデータデータとして、白色のＬ＊ａ＊ｂ＊値（Ｌ＊，ａ＊，ｂ＊）＝（１００，０，０）としてもよいし、第二実施形態にて述べたような方法を行ってもよい。
【０１２２】
予め特定色となるパッチデータを入れるデータの数を決めておき、Ｓ７１２にて、チャートに使用する格子点数を決定するときに、その特定色パッチデータ用のデータ数も考慮して、格子点数を決定しても良い。その場合には、必ずパッチデータの追加処理を行い、そして追加する特定色パッチデータ用のデータ数の分は追加できるようにする。これより特定色とする色を高精度に混色の補正をする４次元ＬＵＴを作成し、補正したい色を中心に補正を行うことが可能となる。
【０１２３】
本実施形態におけるパッチデータの追加処理方法について述べたが、これに限らず、特定色情報を使ってパッチデータをチャートに追加できる方法であればどのような方法でもよい。
【０１２４】
本発明により、パッチ間の色差が一定の間隔以上となるように考慮しているだけでなく、補正精度を特に向上させたい色に近い色のパッチデータを追加できる構成となった。その結果、特定色情報を考慮した混色の補正をする４次元ＬＵＴを作成し、補正したい色を中心に補正を行うことが可能となる。
【０１２５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005816030.tif 000002
【図２】
0005816030.tif 000003
【図３】
0005816030.tif 000004
【図４】
0005816030.tif 000005
【図５】
0005816030.tif 000006
【図６】
0005816030.tif 000007
【図７】
0005816030.tif 000008
【図８】
0005816030.tif 000009
【図９】
0005816030.tif 000010
【図１０】
0005816030.tif 000011
【図１１】
0005816030.tif 000012
【図１２】
0005816030.tif 000013
【図１３】
0005816030.tif 000014
【図１４】
0005816030.tif 000015
【図１５】
0005816030.tif 000016
【図１６】
0005816030.tif 000017
【図１７】
0005816030.tif 000018
【図１８】
0005816030.tif 000019
【図１９】
0005816030.tif 000020