(57)【要約】【課題】  高精度な色再現範囲を示す情報を簡単に生成することを目的とする。【解決手段】  複数のデバイスの測色値を取得し、前記複数の測色値に基づき、明るさと色相の組と前記デバイスの色再現範囲の境界を示す高彩度値と低彩度値の組との対応関係を複数求め、前記求められた複数の対応関係に基づき、明るさと色相の組に対応する、前記デバイスの色再現範囲を示す高彩度値と低彩度値の組とを求めるための前記デバイスの色再現範囲を示す情報を生成することを特徴とする。【選択図】  図５
2006174021.tif 000002
【特許請求の範囲】
【請求項１】
複数のデバイスの測色値を取得し、
前記複数の測色値に基づき、明るさと色相の組と前記デバイスの色再現範囲の境界を示す高彩度値と低彩度値の組との対応関係を複数求め、
前記求められた複数の対応関係に基づき、明るさと色相の組に対応する、前記デバイスの色再現範囲を示す高彩度値と低彩度値の組とを求めるための前記デバイスの色再現範囲を示す情報を生成することを特徴とする情報処理方法。
【請求項２】
前記明るさと色相の組に対応する、前記デバイスの色再現範囲の境界を示す高彩度値および低彩度値のすくなくとも１つの値が存在しない場合は、前記デバイスの色再現範囲の境界が存在しない旨を示す値を使用することを特徴とする請求項１記載の情報処理方法。
【請求項３】
前記デバイスの色再現範囲を示す情報は、ルックアップテーブルであることを特徴とする請求項１記載の情報処理方法。
【請求項４】
前記デバイスの色再現範囲を示す情報は、関数であることを特徴とする請求項１記載の情報処理方法。
【請求項５】
入力色がデバイスの色再現範囲の内であるか否かを判定する際に用いられるルックアップテーブルを作成する情報処理方法であって、
複数のデバイスの測色値を取得する測色値取得工程と、
前記測色値に基づき、明るさと色相の組を入力し低彩度値と高彩度値とを出力する前記ルックアップテーブルに低彩度値と高彩度値を登録する彩度値登録工程とを有し、
前記彩度値登録工程は、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録されていない場合、前記測色値の彩度値を前記高彩度値および前記低彩度値として登録し、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記高彩度値よりも前記測色値の彩度値が大きい場合、前記測色値の彩度値を前記高彩度値として登録し、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記低彩度値よりも前記測色値の彩度値が小さい場合、前記測色値の彩度値を前記低彩度値として登録することを特徴とする情報処理方法。
【請求項６】
更に、前記測色値以外の前記デバイスの色再現範囲を示す色値を補間演算により算出する補間演算工程を有し、
前記測色値取得工程は、前記測色値とともに前記補間演算により算出された色値も取得することを特徴とする請求項５記載の情報処理方法。
【請求項７】
更に、前記ルックアップテーブルにおいて低彩度値と高彩度値とが未登録である領域の数を明度値ごとに計数する計数工程と、
前記未登録である領域の低彩度値と高彩度値を設定する彩度値設定工程を有し、
前記彩度値設定工程は、
前記計数された数が閾値より少ない場合、前記未登録である領域の高彩度値を補間演算により算出するとともに低彩度値を大略ゼロに設定し、
前記計数された数が閾値より多い場合、前記未登録である領域の高彩度値と低彩度値とを同じ値に設定することを特徴とする請求項５記載の情報処理方法。
【請求項８】
入力色データが示す色がデバイスの色再現範囲内にあるか否かを判定する情報処理方法であって、
前記入力色データを取得する入力色データ取得工程と、
前記入力色データの明るさと色相とに対応する前記色再現範囲の低彩度値と高彩度値とを、取得する彩度値取得工程と、
前記入力色データの彩度値と、前記取得された低彩度値と高彩度値とを比較する比較工程と、
前記比較の結果に基づき、前記入力色データが示す色が前記デバイスの色再現範囲内にあるか否かを判定する判定工程とを有することを特徴とする情報処理方法。
【請求項９】
前記判定工程は、
前記入力色データの彩度値が、前記低彩度値以上でありかつ前記高彩度値以下の場合、
前記入力色データが示す色は前記色再現範囲内にあると判定する色再現範囲内外判定工程とを有することを特徴とする請求項８記載の情報処理方法。
【請求項１０】
前記請求項１及至９までいずれかの情報処理方法をコンピュータにて実施させるためのプログラム。
【請求項１１】
前記請求項１及至９までいずれかの情報処理方法をコンピュータにて実施させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１２】
複数のデバイスの測色値を取得する取得手段と、
前記複数の測色値に基づき、明るさと色相の組と前記デバイスの色再現範囲の境界を示す高彩度値と低彩度値の組との対応関係を複数求める手段と、
前記求められた複数の対応関係に基づき、明るさと色相の組に対応する、前記デバイスの色再現範囲を示す高彩度値と低彩度値の組とを求めるための前記デバイスの色再現範囲を示す情報を生成する生成手段を有することを特徴とする情報処理装置。
【請求項１３】
入力色がデバイスの色再現範囲の内であるか否かを判定する際に用いられるルックアップテーブルを作成する情報処理装置であって、
複数のデバイスの測色値を取得する測色値取得手段と、
前記測色値に基づき、明るさと色相の組を入力し低彩度値と高彩度値とを出力する前記ルックアップテーブルに低彩度値と高彩度値を登録する彩度値登録手段とを有し、
前記彩度値登録手段は、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録されていない場合、前記測色値の彩度値を前記高彩度値および前記低彩度値として登録し、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記高彩度値よりも前記測色値の彩度値が大きい場合、前記測色値の彩度値を前記高彩度値として登録し、
前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記低彩度値よりも前記測色値の彩度値が小さい場合、前記測色値の彩度値を前記低彩度値として登録することを特徴とする情報処理装置。
【請求項１４】
入力色データが示す色がデバイスの色再現範囲内にあるか否かを判定する情報処理装置であって、
前記入力色データを取得する入力色データ取得手段と、
前記入力色データの明るさと色相とに対応する前記色再現範囲の低彩度値と高彩度値とを、取得する彩度値取得手段と、
前記入力色データの彩度値と、前記取得された低彩度値と高彩度値とを比較する比較手段と、
前記比較の結果に基づき、前記入力色データが示す色が前記デバイスの色再現範囲内にあるか否かを判定する判定手段とを有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力色データがデバイスの色再現範囲に含まれる否かを判定するものもしくは、入力色データがデバイスの色再現範囲に含まれる否かを判定する際に用いるデバイスの色再現範囲を示す情報を生成するものに関する。
【背景技術】
【０００２】
従来において、モニタ、測色器、プリンタ等の異なる特性を持つ画像入出力デバイスによりプリンティングシステムを構成した場合、それぞれのデバイス間の色再現範囲の違いが、異なるデバイス間での色変換処理において問題となっている。この問題を解決するために、明度、彩度、色相を軸とする３次元空間上で出力デバイスが再現できない色を再現可能な色にマッピングする技術が知られており、多くの方式が提案されている。出力デバイスが再現できない色を再現可能な色にマッピングする処理を色空間圧縮処理と言われている。色空間圧縮処理において、重要な処理として、任意の色が出力デバイスの色再現範囲の内部であるか外部であるかを判定する内外判定処理がある。
【０００３】
色再現範囲の内外判定には以下のような方法が提案されている。
【０００４】
出力デバイスの色再現範囲を、明度と色相ごとに最大彩度値を設定することによりを定義する。そして、入力色データの彩度値が、入力色データの明度値と色相値に対応する最大彩度値以下のときは、入力色データは色再現範囲内と判定する。
【０００５】
また、特許文献１には、以下の方法が記載されている。
【０００６】
明度値ごとの色再現範囲の中心が原点に変換されるように色相と彩度を座標変換し、座標変換された最大彩度値（ボーダー）を座標変換された色相ごとに設定することにより、色再現範囲を定義する。内外判定をする際には、入力色データの明度値と色相値と彩度値とを算出する。そして、算出された明度値に対応する色再現範囲を参照し、算出された入力色データの色相値と彩度値とに対して参照された色再現範囲と同様の座標変換をする。座標変換された入力色データの彩度値が座標変換された入力色データの色相値に対応するボーダー以下の場合は、入力色データは色再現範囲内と判定する。
【特許文献１】特開平８−１０７５０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
図１〜図４は、ある出力デバイスの色再現範囲を示す図である。図１の１００は、Ｌ＊ａ＊ｂ＊空間における色再現範囲をＬ＊−ａ＊平面で切った断面である。図２の２００は、図１における１０１高明度領域（ハイライト領域）の明度Ｌ＿ｈｉを通るａ＊−ｂ＊平面に平行な平面で切った断面である。図３の３００は、図１における１０２中間明度領域の明度Ｌ＿ｍｉｄを通るａ＊−ｂ＊平面に平行な平面で切った断面である。図４の４００は、図１における１０３低明度領域（シャドウ領域）の明度Ｌ＿ｌｏを通るａ＊−ｂ＊平面に平行な平面で切った断面である。
【０００８】
上述したように、内外判定処理には、入力色の彩度値と、入力色の明度値と色相値に対応する最大彩度値を比較する方法がある。
【０００９】
出力デバイスの色再現範囲の中間明度領域では、図３に示すように、色再現範囲が（ａ＊、ｂ＊）＝（０、０）の点を含むため、各色相における入力色の彩度値と最大彩度とを比較することにより、問題なく正確な色再現範囲判定が可能である。しかしながら、ハイライト領域やシャドウ領域では、図２や図４のように、色再現範囲が（ａ＊、ｂ＊）＝（０、０）の点を含まない場合がある。従って、判定対象色の色相の最大彩度より小さい彩度であっても、色再現範囲内ではない場合があるため、入力色の彩度値と最大彩度値を比較する方法では、正確な色再現範囲判定ができないという問題がある。
【００１０】
また、特許文献１には、図１や図４のように、色再現範囲が（ａ＊、ｂ＊）＝（０、０）の点を含まない場合にも正確な内外判定を行うために、各明度における色再現範囲の中心を原点に座標変換して色再現範囲を定義し、座標変換された色再現範囲をもとに内外判定する方法が記載されている。
【００１１】
しかし、特許文献１における内外判定方法では、色再現範囲を示す情報の生成および内外判定処理の際に座標変換を行うため、色再現範囲を示す情報の生成および内外判定処理に時間がかかるという課題があった。
【００１２】
請求項１および５の発明によれば、色再現範囲を示す情報の生成を簡単かつ正確に行うことを目的とする。
【００１３】
請求項８の発明によれば、内外判定処理を簡単かつ正確に行うことを目的とする。
【課題を解決するための手段】
【００１４】
請求項１の発明は、複数のデバイスの測色値を取得し、前記複数の測色値に基づき、明るさと色相の組と前記デバイスの色再現範囲の境界を示す高彩度値と低彩度値の組との対応関係を複数求め、前記求められた複数の対応関係に基づき、明るさと色相の組に対応する、前記デバイスの色再現範囲を示す高彩度値と低彩度値の組とを求めるための前記デバイスの色再現範囲を示す情報を生成することを特徴とする。
【００１５】
請求項５の発明は、入力色がデバイスの色再現範囲の内であるか否かを判定する際に用いられるルックアップテーブルを作成する情報処理方法であって、複数のデバイスの測色値を取得する測色値取得工程と、前記測色値に基づき、明るさと色相の組を入力し低彩度値と高彩度値とを出力する前記ルックアップテーブルに低彩度値と高彩度値を登録する彩度値登録工程とを有し、前記彩度値登録工程は、前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録されていない場合、前記測色値の彩度値を前記高彩度値および前記低彩度値として登録し、前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記高彩度値よりも前記測色値の彩度値が大きい場合、前記測色値の彩度値を前記高彩度値として登録し、前記ルックアップテーブルのテーブルに、前記測色値の明るさと色相に応じた低彩度値と高彩度値とが登録され、かつ前記低彩度値よりも前記測色値の彩度値が小さい場合、前記測色値の彩度値を前記低彩度値として登録することを特徴とする。
【００１６】
請求項８の発明は、入力色データが示す色がデバイスの色再現範囲内にあるか否かを判定する情報処理方法であって、前記入力色データを取得する入力色データ取得工程と、前記入力色データの明るさと色相とに対応する前記色再現範囲の低彩度値と高彩度値とを、取得する彩度値取得工程と、前記入力色データの彩度値と、前記取得された低彩度値と高彩度値とを比較する比較工程と、前記比較の結果に基づき、前記入力色データが示す色が前記デバイスの色再現範囲内にあるか否かを判定する判定工程とを有することを特徴とする。
【発明の効果】
【００１７】
請求項１および５の発明によれば、明るさと色相とに対応して低彩度値と高彩度値とを設定する色再現範囲情報の生成するため、色再現範囲を示す情報の生成を簡単かつ正確に行うことができる。
【００１８】
請求項８の発明によれば、明るさと色相とに対応して低彩度値と高彩度値とを出力する色再現範囲情報を用いて色再現範囲の内外判定処理を行うことにより、内外判定処理を簡単かつ正確に行うことができる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照して本発明の好適な一実施例を詳細に説明する。
【００２０】
＜画像処理システムの構成＞
図８は、本実施例におけるシステムの構成を表した図である。８０１はカラープリンタ、８０２は測色器、８０３はカラープリンタＩ／Ｆ、８０４はＣＰＵ、８０５は測色器Ｉ／Ｆ、８０６はＲＡＭ、８０７は各種処理を行うためのプログラムやデータなどが格納されたＨＤＤである。８０８は、画像データが入力される画像データ入力ＩＦである。
【００２１】
まず、カラープリンタ８０１により出力されたカラーパッチが測色器８０２で読み取られ、測色データが測色器Ｉ／Ｆ８０５から入力される。入力された測色データは、ＨＤＤ８０７またはＲＡＭ８０６に格納される。また、内外判定される画像データも８０８画像データ入力ＩＦを介して入力され、ＨＤＤ８０７またはＲＡＭ８０６に格納される。その後、ＣＰＵ８０４は、ＨＤＤ８０７から後述の処理を実現するためのプログラムとデータをＲＡＭ８０６にロードする。そして、ＣＰＵ８０４は、ロードされたプログラムに応じてＲＡＭ８０６上のデータに各種処理を行う。
【００２２】
＜ガマット内外判定＞
本実施例では、カラー出力デバイスとして、カラープリンタを選択した場合のガマット内外判定について述べる。内外判定される対象データは、Ｌ＊ａ＊ｂ＊空間における任意の色（Ｌ＿ｃｕｒ，ａ＿ｃｕｒ，ｂ＿ｃｕｒ）である。
【００２３】
本実施例の内外判定は、ルックアップテーブル（ＬＵＴ）を参照して行われる。参照されるＬＵＴは、０≦Ｌ＊≦１００、−１２８≦ａ＊、ｂ＊≦１２７の範囲において、参照可能とする。従って、内外判定処理対象データは、０≦Ｌ＊≦１００、−１２８≦ａ＊、ｂ＊≦１２７の範囲のデータとする。
【００２４】
本実施例で用いるＬＵＴは、アドレスＡに対応した最小彩度値と最大彩度値を参照することができるＬＵＴである。アドレスＡはインデックスとして用いられ、明度と色相から一意に算出することができる。従って、内外判定処理対象データが入力された場合、次の処理を行うことで内外判定をすることができる。
【００２５】
まず、内外判定処理対象データの色空間上における明度値と色相値と彩度値とを算出する。そして、算出された明度と色相からアドレスＡを算出する。次に、アドレスＡを用いてＬＵＴを参照し、最大彩度値と最小彩度を取得する。内外判定処理対象データの彩度値が、取得された最小彩度値以上、最大彩度値以下であれば、内外判定処理対象データは、色再現範囲内であると判定される。本実施例では、アドレスＡを用いることによって、ＬＵＴを参照しやすくしている。
【００２６】
次に、図５を用いて、本実施例における内外判定処理を詳細に説明する。図５は、本実施例におけるガマット内外判定の処理フローである。処理フローに沿って、各ステップの処理を説明する。
【００２７】
Ｓ５０１は、ガマット内外判定処理対象データを取得するステップである。内外判定処理対象データ値はＬ＊ａ＊ｂ＊空間におけるデータ（Ｌ＿ｃｕｒ，ａ＿ｃｕｒ，ｂ＿ｃｕｒ）とする。前述したように、内外判定処理対象データは、０≦Ｌ＊≦１００、−１２８≦ａ＊、ｂ＊≦１２７の範囲のデータとする。
【００２８】
Ｓ５０２は内外判定処理対象データのＬ＊ａ＊ｂ＊値から、色相ｈ＿ｃｕｒと彩度値Ｃ＿ｃｕｒを算出するステップである。式４により色相ｈ＿ｃｕｒを算出する。また、式５により彩度値Ｃ＿ｃｕｒを算出する。
ｈ＿ｃｕｒ＝ｔａｎ−１（ｂ＿ｃｕｒ／ａ＿ｃｕｒ）  …（式４）
Ｃ＿ｃｕｒ＝（ａ＿ｃｕｒ×ａ＿ｃｕｒ＋ｂ＿ｃｕｒ×ｂ＿ｃｕｒ）１／２…  （式５）
Ｓ５０３は、明度Ｌ＿ｃｕｒと算出された色相ｈ＿ｃｕｒより、アドレスＡを算出するステップである。
【００２９】
明度Ｌ＿ｃｕｒと色相ｈ＿ｃｕｒより算出されるＬＵＴのアドレスＡは式６により算出される。
Ａ＝ｆｌｏｏｒ（Ｌ＿ｃｕｒ／１）×３６０＋ｆｌｏｏｒ（ｈ＿ｃｕｒ／１）…  （式６）
アドレスＡは、ＬＵＴを参照するときのインデックスとして用いられ、明度と色相から一意に算出される。また、ｆｌｏｏｒ（Ｘ）は実数Ｘを越えない整数の最大値を表している。明度成分の刻みおよび、色相成分の刻みは「１」とした。
【００３０】
参照されるＬＵＴは、ガマットの各明度、各色相における最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎを保持しているテーブルである。例えば、図２において、Ｌ２１が示す色相における最小彩度値は点ｓ２１の彩度値に、最大彩度値は点ｓ２２の彩度値になる。
【００３１】
また、図３において、Ｌ３１が示す色相における最小彩度値は点ｓ３１の彩度値に、最大彩度値は点ｓ３２の彩度値になる。
【００３２】
明度成分の刻みＰを「１」、色相成分の刻みＱを「１」とすると、ＬＵＴはＮ＝（（１００＋１）／１）×（３６０／１）＝３６３６０個の最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎを持つＬＵＴになる。データは、以下の順番で並んでいるものとする。
アドレス  ０：Ｌ＝０、ｈ＝０における最小彩度値と最大彩度値
アドレス  １：Ｌ＝０、ｈ＝１における最小彩度値と最大彩度値
・・・
アドレス３５９：Ｌ＝０、ｈ＝３５９における最小彩度値と最大彩度値
アドレス３６０：Ｌ＝１、ｈ＝０における最小彩度値と最大彩度値
アドレス３６１：Ｌ＝１、ｈ＝１における最小彩度値と最大彩度値
・・・
アドレス３６３５９：Ｌ＝１００、ｈ＝３５９における最小彩度値と最大彩度値
なお、ＬＵＴの作成方法は、＜ＬＵＴの作成方法＞で後述する。
【００３３】
Ｓ５０４は、ＬＵＴを内外判定処理対象データのアドレスＡで参照し、最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎを取得するステップである。
【００３４】
Ｓ５０５は取得した最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎが同じ値であるかどうかを判定するステップである。同じ値であった場合には、判定対象データはガマット外と判定される。色空間上にガマットが存在しない場合は、ＬＵＴには、最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎとに同じ値が登録されているためである。違う値であった場合には、Ｓ５０６へ進む。ここで、所定の明度と色相においてガマットが存在しない場合、テーブル値である最大彩度と最小彩度には同じ値が格納されているものとする。
【００３５】
Ｓ５０６は判定対象データの彩度値Ｃ＿ｃｕｒと最大彩度値Ｃ＿ｍａｘを比較するステップである。Ｃ＿ｃｕｒがＣ＿ｍａｘ以下の場合にはＳ５０７に進む。Ｃ＿ｃｕｒがＣ＿ｍａｘより大きい場合は、判定対象データの彩度値はガマットの最大彩度値より大きいため、判定対象データはガマット外と判定される。
【００３６】
Ｓ５０７は判定対象データの彩度値Ｃ＿ｃｕｒと最小彩度値Ｃ＿ｍｉｎを比較するステップである。Ｃ＿ｃｕｒがＣ＿ｍｉｎ以上の場合には、判定対象データはガマット内と判定される。Ｃ＿ｃｕｒがＣ＿ｍｉｎより小さい場合は、判定対象データの彩度値はガマットの最小彩度より小さいため、判定対象データはガマット外と判定される。
【００３７】
以上の処理により、内外判定される対象データがガマット内か否かを簡単に判定することができる。
【００３８】
＜ＬＵＴの作成方法＞
次に、ガマット内外判定に使用するＬＵＴの作成方法について説明する。
【００３９】
ガマット内外判定されるカラープリンタは、ＲＧＢデータを扱うプリンタとする。
【００４０】
前準備として、カラープリンタでカラーパッチをプリントし、そのカラーパッチを測色計で測色しておく。測色により取得されるデータはＬ＊ａ＊ｂ＊データとする。カラーパッチは、ＲＧＢ空間の表面上の色に対応するパッチである。Ｒ、Ｇ、Ｂデータそれぞれのビット数を８ビットとした場合、以下のＰ１からＰ８の８点の座標を頂点とする立方体の表面に位置するＲＧＢデータを用いて、カラーパッチを出力する。
Ｐ１：（Ｒ、Ｇ、Ｂ）＝（０、０、０）
Ｐ２：（Ｒ、Ｇ、Ｂ）＝（２５５、０、０）
Ｐ３：（Ｒ、Ｇ、Ｂ）＝（０、２５５、０）
Ｐ４：（Ｒ、Ｇ、Ｂ）＝（０、０、２５５）
Ｐ５：（Ｒ、Ｇ、Ｂ）＝（０、２５５、２５５）
Ｐ６：（Ｒ、Ｇ、Ｂ）＝（２５５、０、２５５）
Ｐ７：（Ｒ、Ｇ、Ｂ）＝（２５５、２５５、０）
Ｐ８：（Ｒ、Ｇ、Ｂ）＝（２５５、２５５、２５５）
測色するカラーパッチは、上述したＲＧＢデータすべてに対応したパッチでなくてもよい。すべてのＲＧＢデータを測色する場合、３９０１５２（（２５６×２５６）×２）＋（（２５５×２５４）×４）パッチの測色をしなくてはならないため、測色は困難になる。従って、０から２５５までの間をＫ個でサンプリングした値の組み合わせのカラーパッチを測色すればよい。経験的に、Ｋ＝９であれば十分である。
【００４１】
次に、カラーパッチを測色して得られたＬ＊ａ＊ｂ＊値に基づいて、内外判定用のＬＵＴの作成方法を示す。
【００４２】
図６はガマット内外判定用のＬＵＴの作成処理フローである。
【００４３】
Ｓ６０１では、カラーパッチを測色して得られたＬ＊ａ＊ｂ＊値を取得し、データベースに登録する。
【００４４】
Ｓ６０２はＬＵＴを初期化するステップである。すべてのアドレスにおいて、テーブル値である最大彩度値と最小彩度値を初期化する。
【００４５】
Ｓ６０３はカラーパッチの測色データを使って、Ｌ＊ａ＊ｂ＊空間でサンプリング点の補間を行うステップである。Ｓ６０１で作成されたデータベースには、カラープリンタのガマット境界を定義するＬ＊ａ＊ｂ＊値（測色値）が格納されている。本実施例では、取得された測色値に基づきカラープリンタの色域を定義する。しかし、前述したように測色するパッチ数は、Ｋ×Ｋ×Ｋ個に減らしているため、Ｌ＊ａ＊ｂ＊空間上におけるサンプリング点は、すべてのＲＧＢ値を測色した場合に比べ、疎な分布になっている。そこで、本ステップでは、サンプリングされているパッチ間のＬ＊ａ＊ｂ＊空間での座標を補間計算により算出し、Ｌ＊ａ＊ｂ＊分布を密な分布にする。Ｌ＊ａ＊ｂ＊分布を密な分布にすることで、データベースに登録されるサンプリング点を増やすことができるため、ＬＵＴの精度を向上させることができる。
【００４６】
本実施例において補間計算する際には、Ｌ＊ａ＊ｂ＊空間上で隣接する３点を選び、それぞれのＬ＊ａ＊ｂ＊値に基づいて、３点の内部にある点を補間計算により算出する。３点はすべて色再現範囲の境界を示す値であるので、３点によって定義される３角形の内部は、色再現範囲の境界を近似していると考えられる。よって、本実施形では、３角形の内部の点を算出しサンプル点を増やしている。この補間方法によれば、複雑な形状を有する色再現範囲に対しても高精度にサンプル点を増やすことができる。
【００４７】
Ｓ６０４以降は、Ｓ６０１で取得されたサンプリング点とＳ６０３の補間演算により算出されたサンプリング点の彩度値をＬＵＴの対応する領域に登録する処理である。
【００４８】
Ｓ６０４は、サンプリング点の測色値から、ＬＵＴを参照するためのアドレスＡと、彩度値を算出するステップである。アドレスＡは、サンプリング点の明度と色相の値から式６を用いて、算出される。彩度値は、サンプリング点のａ＊ｂ＊値から式５を用いて、算出される。
【００４９】
Ｓ６０５では、算出されたアドレスＡに、彩度値がすでに登録されているか否かを判定する。対象のサンプリング点のアドレスＡのテーブル値が未登録の場合には、Ｓ６０６に進む。そして、その彩度値をそのまま最大彩度値Ｃ＿ｍａｘ、最小彩度値Ｃ＿ｍｉｎに暫定的に登録する。
【００５０】
一方、アドレスＡに、彩度値が登録済みの場合には、対象のサンプリング点の彩度と、暫定的に登録されている最大彩度値Ｃ＿ｍａｘおよび最小彩度値Ｃ＿ｍｉｎとをＳ６０７からＳ６１０で比較する。
【００５１】
Ｓ６０７では、対象の登録データの彩度値が、暫定的に登録されている最大彩度値Ｃ＿ｍａｘより大きいか否かを判定する。対象のサンプリング点の彩度値が、Ｃ＿ｍａｘより大きい場合は、Ｓ６０８に進み、最大彩度値を算出された対象のサンプリング点の彩度値に更新する。更新後、Ｓ６０９へ進む。対象のサンプリング点の彩度値が、Ｃ＿ｍａｘより小さい場合は、そのままＳ６０９へ進む。
【００５２】
Ｓ６０９では、対象のサンプリング点の彩度値が、暫定的に登録されている最小彩度値Ｃ＿ｍｉｎより小さいか否かを判定する。サンプリング点の彩度値が、Ｃ＿ｍｉｎより小さい場合は、Ｓ６１０に進み、最小彩度値を算出された対象のサンプリング点の彩度値に更新する。更新後、Ｓ６１１へ進む。対象の登録データの彩度値が、Ｃ＿ｍｉｎより大きい場合は、そのままＳ６１１へ進む。
【００５３】
Ｓ６１１では、まだ参照していない登録データがあるか否かを判定する。まだ参照していない登録データがある場合、再び６０４から上述したステップを行う。参照していないサンプリング点がない場合、すべてのサンプリング点を参照したことになるので、次のステップであるＳ６１２へ進む。
【００５４】
以上述べたように、Ｓ６０４からＳ６１１までのステップをＳ６０１およびＳ６０３で得られたサンプリング点に対して繰り返すことにより、暫定的に登録された彩度値が更新されていき、テーブル値に各明度と色相に対応するガマットの最大彩度と最小彩度が登録される。
【００５５】
図６における処理で、すべてのサンプリング点における彩度値を登録することができるが、ＬＵＴにおけるすべての領域にテーブル値（最小彩度値、最大彩度値）が登録されるわけではない。そこで、未登録であるテーブル値を求める必要がある。
【００５６】
図７は、未登録となっているＬＵＴの領域を検出し、適切なテーブル値を入力するフローである。本実施例では、ＬＵＴの未登録領域をチェックするために、閾値Ｙを用いる。ただし、閾値Ｙは、対象とするカラープリンタの種類などに従い、変更してもよい。
【００５７】
図６の処理が終了した後、Ｓ７１２において、ＬＵＴの各明度（Ｌ）における未設定の色相の領域がいくつあるかを計数する。未登録領域の数がＹ個より少ない場合には、図３の３００のように、その明度（Ｌ）におけるガマットが、ａ＊＝０、ｂ＊＝０を含んでいると判断する。このとき、Ｓ７１３へ進み、未設定のテーブル値を隣接する既知のテーブル値より補間計算で算出して設定する。設定後、Ｓ７１４へ進み、その明度（Ｌ）における各色相の最小彩度値Ｃ＿ｍｉｎを「０」とする。これは、対象の明度におけるガマット面が図３の３００に示すようなガマット面である場合、最小彩度値がａ＊ｂ＊平面上の原点になるためである。
【００５８】
反対に未設定の数がＹ個以上の場合は、図２の２００、図４の４００のように、その明度（Ｌ）におけるガマットは、ａ＊＝０、ｂ＊＝０を含まないと判断する。このとき、Ｓ７１５へ進み、未設定のテーブルの値の最大彩度値Ｃ＿ｍａｘと最小彩度値Ｃ＿ｍｉｎには「０」を設定する。これは、対象の明度におけるガマット面が図２の２００、図４の４００のようなガマットである場合、未設定の色相にはガマットがないと判断するためである。
【００５９】
Ｓ７１４、Ｓ７１５の処理後は、Ｓ７１６へ進む。Ｓ７１６では、すべての明度値について処理をしたか否かの判定がされる。すべての明度値について処理をしていない場合は、Ｓ７１２へ戻り、再び上記の処理を繰り返す。すべての明度値について処理をした場合は、処理を終了する。Ｓ７１２からＳ７１６までのステップで、閾値Ｙを用いることにより、効率的に未登録のテーブル値を求めることができる。
【００６０】
以上の６及び、図７におけるステップにより、ガマット内外判定用のＬＵＴを作成することができる。
【００６１】
＜他の実施例＞
本実施例では、Ｌ＊ａ＊ｂ＊空間上でガマットの内外判定を行った。しかし、Ｌ＊ｕ＊ｖ＊空間などの他の色空間上でガマットの内外判定を行ってもよい。
【００６２】
また、本実施例におけるＬＵＴは、０≦Ｌ＊≦１００、−１２８≦ａ＊、ｂ＊≦１２７の範囲において、参照可能とした。しかし、この範囲と異なる範囲のデータを保持するＬＵＴを用いて、内外判定を行ってもよい。また、本実施例における明度成分および、色相成分の刻みは「１」としたが、「１」以外の値を使ってもよい。
【００６３】
また、本実施例では、アドレスをインデックスとして、最大彩度値と最小彩度値を出力するＬＵＴを作成し、色再現範囲の内外判定に用いた。しかし、該ＬＵＴと同様の処理をすることができる関数を用いてもよい。例えば関数として、明度値ごとに楕円形を示す関数を定義してもよい。
【００６４】
また、本実施例において、色再現範囲の境界領域の測色値を得るためにＲＧＢ空間の表面上の色に対応するカラーパッチを測色してＬ＊ａ＊ｂ＊値を取得した。しかし、色再現範囲内部の測色値を含むカラーパッチを測色してもよい。この場合は、測色値から色再現範囲の境界領域の測色値を検出および推測し、検出および推測された測色値に対して上述の実施例の処理を行うことになる。
【００６５】
また、本実施例において、明度値（Ｌ）と色相との組に基づいて、最大彩度値と最小彩度値とを登録した。しかし、例えば、Ｙ、Ｃｒ、Ｃｂ空間におけるＹ値などの他の明るさを用いてもよい。
【００６６】
また、本実施例において、ガマット内外判定用のＬＵＴには最大彩度値と最小彩度値とを登録した。しかし、最大彩度値に近い高彩度値若しくは、最小彩度値に近い低彩度値を用いてもよい。また、本実施例において、サンプリング点を増加させるために、Ｌ＊ａ＊ｂ＊空間における隣接する３点から補間計算を行った。しかし、スプライン関数を用いた補間計算など、他の補間計算方法を用いてもよい。また、前述した実施例の機能を実現するプログラムコードを格納した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行してもよい。
【００６７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ±Ｒ、ＤＶＤ−ＲＯＭ、ＤＶＤ±Ｒ磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いてもよい。
【００６８】
また、コンピュータが読み出したプログラムコードを実行することにより、本実施例における機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部を行い、その処理によって本実施例における機能が実現される方法を用いてもよい。
【００６９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって本実施例における機能を実施してもよい。
【図面の簡単な説明】
【００７０】
【図１】ある出力デバイスのガマットをＬ＊−ａ＊平面で切った場合の断面
【図２】ハイライト領域の明度Ｌ＿ｈｉを通るａ＊−ｂ＊平面と平行な平面で切った場合の断面
【図３】中間調領域の明度Ｌ＿ｍｉｄを通るａ＊−ｂ＊平面と平行な平面で切った場合の断面
【図４】シャドー領域の明度Ｌ＿ｌｏを通るａ＊−ｂ＊平面と平行な平面で切った場合の断面
【図５】ガマット内外判定処理フローを示す図
【図６】ガマット内外判定  ＬＵＴの作成処理フローを示す図１
【図７】ガマット内外判定  ＬＵＴの作成処理フローを示す図２
【図８】本実施例における装置構成図
【図１】
2006174021.tif 000003
【図２】
2006174021.tif 000004
【図３】
2006174021.tif 000005
【図４】
2006174021.tif 000006
【図５】
2006174021.tif 000007
【図６】
2006174021.tif 000008
【図７】
2006174021.tif 000009
【図８】
2006174021.tif 000010