(57)【特許請求の範囲】
【請求項１】
第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する制御装置であって、
前記第１のデバイスで表現可能な色のうち、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択手段と、
前記特定色と、前記第２のデバイスの色域の外郭と、の近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断手段と、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整手段と、
を備え、
前記制御装置は、さらに、前記第１のデバイスで表現される特定の色空間の第１の色値を、前記第２のデバイスで表現すべき前記特定の色空間の第２の色値に変換する変換手段を備え、
前記色調整手段は、前記特定色の前記第２の色値の色成分の中で、最も高い明るさを示す色成分の値を、最も高い明るさを示す値に変更することによって、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されるように、調整する
ことを特徴とする、制御装置。
【請求項２】
第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する制御装置であって、
前記第１のデバイスで表現可能な色のうち、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択手段と、
前記特定色と、前記第２のデバイスの色域の外郭と、の近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断手段と、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整手段と、
を備え、
前記色調整手段によって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第２の特定色の各色成分の値が、第１の割合だけ小さくなるように調整する
ことを特徴とする、制御装置。
【請求項３】
第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する制御装置であって、
前記第１のデバイスで表現可能な色のうち、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択手段と、
前記特定色と、前記第２のデバイスの色域の外郭と、の近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断手段と、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整手段と、
を備え、
前記色調整手段によって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第３の特定色の各色成分の値が、第２の割合だけ大きくなるように調整する
ことを特徴とする、制御装置。
【請求項４】
第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する制御装置であって、
前記第１のデバイスで表現可能な色のうち、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択手段と、
前記特定色と、前記第２のデバイスの色域の外郭と、の近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断手段と、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整手段と、
前記所定の条件を満たす前記特定色について、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記第１のデバイスでとり得る最も高い明るさを示す色成分の値を、前記第２のデバイスでとり得る最も高い明るさを示す値に変換する際の変換特性を決定し、前記変換特性に基づいて、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記最も高い明るさを示す色成分を除く少なくとも１つの色成分の値を調整する成分調整手段と、
を備えることを特徴とする、制御装置。
【請求項５】
請求項１乃至４のいずれかに記載の制御装置であって、さらに、
前記特定色が、前記第２のデバイスで表現可能な色域に含まれるか否かを判断する第２の判断手段を備え、
前記色調整手段は、前記特定色が、前記第２のデバイスで表現可能な色域に含まれる場合に、前記第１の調整処理を実行し、前記特定色が、前記第２のデバイスで表現可能な色域に含まれない場合に、前記所定の条件が満たされるか否かに関わらず、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されるように、前記特定色の値を調整するための第２の調整処理を実行する
ことを特徴とする、制御装置。
【請求項６】
請求項１乃至５のいずれかに記載の制御装置であって、さらに、
前記所定の条件を満たす前記特定色のうち、特定の色相の範囲内で最も明度が小さい第１の特定色を選択する暗色選択手段を備え、
前記色調整手段は、前記特定の色相の範囲内で前記第１の特定色よりも明度が大きな前記特定色を、前記所定の条件が満たされるか否かに関わらず、前記第２のデバイスの色域の外郭上の色に変換されるように、調整する
ことを特徴とする、制御装置。
【請求項７】
制御装置のためのプログラムであって、
前記プログラムは、前記制御装置に搭載されるコンピュータであって、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する前記コンピュータに、
前記第１のデバイスで表現可能な色のうち、少なくとも１つの色成分の値が前記第１のデバイスでとり得る最も高い明度を示す値である色であって、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択ステップと、
前記特定色と、前記第２のデバイスの色域の外郭と、の色空間における近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断ステップと、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整ステップと、
を実行させ、
前記プログラムは、さらに、前記コンピュータに、前記第１のデバイスで表現される特定の色空間の第１の色値を、前記第２のデバイスで表現すべき前記特定の色空間の第２の色値に変換する変換ステップを実行させ、
前記色調整ステップは、前記特定色の前記第２の色値の色成分の中で、最も高い明るさを示す色成分の値を、最も高い明るさを示す値に変更することによって、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されるように、調整する
ことを特徴とする、プログラム。
【請求項８】
制御装置のためのプログラムであって、
前記プログラムは、前記制御装置に搭載されるコンピュータであって、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する前記コンピュータに、
前記第１のデバイスで表現可能な色のうち、少なくとも１つの色成分の値が前記第１のデバイスでとり得る最も高い明度を示す値である色であって、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択ステップと、
前記特定色と、前記第２のデバイスの色域の外郭と、の色空間における近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断ステップと、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整ステップと、
を実行させ、
前記色調整ステップによって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第２の特定色の各色成分の値が、第１の割合だけ小さくなるように調整する
ことを特徴とする、プログラム。
【請求項９】
制御装置のためのプログラムであって、
前記プログラムは、前記制御装置に搭載されるコンピュータであって、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する前記コンピュータに、
前記第１のデバイスで表現可能な色のうち、少なくとも１つの色成分の値が前記第１のデバイスでとり得る最も高い明度を示す値である色であって、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択ステップと、
前記特定色と、前記第２のデバイスの色域の外郭と、の色空間における近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断ステップと、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整ステップと、
を実行させ、
前記色調整ステップによって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第３の特定色の各色成分の値が、第２の割合だけ大きくなるように調整する
ことを特徴とする、プログラム。
【請求項１０】
制御装置のためのプログラムであって、
前記プログラムは、前記制御装置に搭載されるコンピュータであって、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する前記コンピュータに、
前記第１のデバイスで表現可能な色のうち、少なくとも１つの色成分の値が前記第１のデバイスでとり得る最も高い明度を示す値である色であって、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択ステップと、
前記特定色と、前記第２のデバイスの色域の外郭と、の色空間における近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断ステップと、
前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整ステップと、
前記所定の条件を満たす前記特定色について、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記第１のデバイスでとり得る最も高い明るさを示す色成分の値を、前記第２のデバイスでとり得る最も高い明るさを示す値に変換する際の変換特性を決定し、前記変換特性に基づいて、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記最も高い明るさを示す色成分を除く少なくとも１つの色成分の値を調整する成分調整ステップと、
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理に関し、特に、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する技術に関する。
【背景技術】
【０００２】
第１のデバイスで出力される画像が、第１のデバイスと異なる第２のデバイスで出力される場合には、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する、いわゆるガマットマッピングが行われる。なお、ガマットマッピングに関する技術は、例えば以下に示す特許文献１等に開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１４３４２５号公報
【特許文献２】特開２００７−２８１８１９号公報
【特許文献３】特開平６−２２５１３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、従来の技術では、第１のデバイスで表現可能な色域に含まれる色のうち、第１のデバイスで表現可能な色域と、第２のデバイスで表現可能な色域と、に共通して含まれる一部の色が、第１のデバイスで表現可能な色から第２のデバイスで表現可能な色に適切に変換されない場合があった。
本発明は、上述した問題点を解決するためになされたものであり、第１のデバイスで表現可能な色を第２のデバイスで表現可能な色に適切に変換するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
この目的を達成するために、本発明の第１の装置は、第１のデバイスで表現可能な色を、第２のデバイスで表現可能な色に変換する制御装置であって、前記第１のデバイスで表現可能な色のうち、前記第１のデバイスの色域の外郭上の色を、特定色として選択する特定色選択手段と、前記特定色と、前記第２のデバイスの色域の外郭と、の近接度合いに関する所定の条件が満たされるか否かを判断する第１の判断手段と、前記特定色が前記第２のデバイスの色域の外郭と近接して、前記所定の条件が満たされる場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換され、前記特定色が前記第２のデバイスの色域の外郭と近接しておらず、前記所定の条件が満たされない場合に、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されないように、前記特定色の値を調整するための第１の調整処理を実行する色調整手段と、を備えることを特徴とする。
【０００６】
この構成により、第１のデバイスで表現可能な色を第２のデバイスで表現可能な色に適切に変換することができる。具体的には、特定色が第１のデバイスで表現される際の色と、第２のデバイスの色域の外郭付近の色と、の近接度合いに応じて、特定色を第２のデバイスで表現可能な色に適切に変換することができる。
【０００７】
また、上記の装置において、さらに、前記特定色が、前記第２のデバイスで表現可能な色域に含まれるか否かを判断する第２の判断手段を備え、前記色調整手段は、前記特定色が、前記第２のデバイスで表現可能な色域に含まれる場合に、前記第１の調整処理を実行し、前記特定色が、前記第２のデバイスで表現可能な色域に含まれない場合に、前記所定の条件が満たされるか否かに関わらず、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されるように、前記特定色の値を調整するための第２の調整処理を実行することが好ましい。
【０００８】
この構成により、特定色が第２のデバイスで表現可能な色であるか否かに応じて、特定色を第２のデバイスで表現可能な色に適切に変換することができる。
【０００９】
また、上記の装置において、さらに、前記第１のデバイスで表現される特定の色空間の第１の色値を、前記第２のデバイスで表現すべき前記特定の色空間の第２の色値に変換する変換手段を備え、前記色調整手段は、前記特定色の前記第２の色値の色成分の中で、最も高い明るさを示す色成分の値を、最も高い明るさを示す値に変更することによって、前記特定色が前記第２のデバイスの色域の外郭上の色に変換されるように、調整することが好ましい。
【００１０】
また、上記の装置において、さらに、前記所定の条件を満たす前記特定色のうち、特定の色相の範囲内で最も明度が小さい第１の特定色を選択する暗色選択手段を備え、前記色変換手段は、前記特定の色相の範囲内で前記第１の特定色よりも明度が大きな前記特定色を、前記所定の条件が満たされるか否かに関わらず、前記第２のデバイスの色域の外郭上の色に変換することが好ましい。
【００１１】
この構成により、色変換手段に色変換を実行すると決定された特定色のうち、特定の色相の範囲内で最も明度が小さい第１の特定色と比較して、当該第１の特定色よりも明度が大きい特定色は、第２のデバイスの色域の外郭上の色に変換される。こうすることで、例えば、第１の特定色よりも明度が大きい特定色の階調性が維持されるため、第１の特定色よりも明度が大きい各特定色での色の不整合が発生することを低減させることができる。
【００１２】
また、上記の装置において、前記色調整手段によって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第２の特定色の各色成分の値が、第１の割合だけ小さくなるように調整することが好ましい。
【００１３】
この構成により、例えば、所定の条件が満たされる特定色と、所定の条件が満たされない特定色と、の色の階調性を維持することができる。
【００１４】
また、上記の装置において、前記色調整手段によって実行される前記第１の調整処理は、前記所定の条件を満たす第２の特定色と、前記所定の条件を満たさない第３の特定色と、の境界領域において、前記第３の特定色の各色成分の値が、第２の割合だけ大きくなるように調整することが好ましい。
【００１５】
この構成により、例えば、所定の条件が満たされる特定色と、所定の条件が満たされない特定色と、の色の階調性を維持することができる。
【００１６】
また、上記の装置において、さらに、前記所定の条件を満たす前記特定色について、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記第１のデバイスでとり得る最も高い明るさを示す色成分の値を、前記第２のデバイスでとり得る最も高い明るさを示す値に変換する際の変換特性を決定し、前記変換特性に基づいて、前記特定色が前記第２のデバイスで表現される際の色の色成分の値のうち、前記最も高い明るさを示す色成分を除く少なくとも１つの色成分の値を調整する成分調整手段を備えることが好ましい。
【００１７】
この構成により、最も高い明るさを示す色成分を除く色成分の値が調整される。そのため、例えば、第１のデバイスで表現可能な色を第２のデバイスで表現可能な色に変換する際の色相のずれを抑制することができる。
【００１８】
なお、この発明は、制御装置及び制御装置で実行される方法、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の種々の態様で実現することができる。
【図面の簡単な説明】
【００１９】
【図１】端末装置の概略構成を示すブロック図。
【図２】色変換テーブルを示す図。
【図３】色変換処理を示すフローチャート。
【図４】Ｌ＊ａ＊ｂ＊色空間に関する端末装置とプリンタとの色域を示す図。
【図５】図３の外郭色変換処理を示すフローチャート。
【図６】変換判定テーブルを示す図。
【図７】図５の補正テーブル生成処理を示すフローチャート。
【図８】図６の変換要否判定処理を示すフローチャート。
【図９】端末装置の色域とプリンタの色域との外郭の色差を示す図。
【図１０】変換判定テーブルの修正内容を示す図。
【図１１】変換判定テーブルの平滑化内容を示す図。
【図１２】図５の変換値算出処理を示すフローチャート。
【図１３】変換値算出処理での算出内容を示す図。
【図１４】補正係数γの算出方法を示す図。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態について以下の順序で説明する。
Ａ．実施例：
Ａ−１．端末装置の構成：
Ａ−２．色変換処理：
Ａ−２−１．外郭色変換処理：
Ａ−２−２．補正テーブル生成処理：
Ａ−２−３．変換値算出処理：
Ｂ．変形例：
【００２１】
Ａ．実施例：
Ａ−１．端末装置の構成：
図１は、本実施例における端末装置１０の概略構成を表すブロック図である。
【００２２】
本実施例の端末装置１０は、制御部２０と、表示部２１と、操作部２２と、ネットワークインターフェース２３と、を備えており、それぞれがバス線で接続されている。また、端末装置１０は、ネットワークインターフェース２３と接続されたＬＡＮ(ローカルエリアネットワーク)８０を介して、プリンタ７０と接続されている。
【００２３】
制御部２０は、ＣＰＵ３０と、メモリ４０と、を備える。メモリ４０は、色変換プログラム４１を備える。ＣＰＵ３０は、メモリ４０に格納されている色変換プログラム４１に従って処理を実行する。ＣＰＵ３０が当該色変換プログラムに従って処理を実行することによって、各手段５１〜５６の機能が実現される。また、メモリ４０は、メモリ４０の記憶テーブル４２に、第１色変換テーブル４２ａと、第２色変換テーブル４２ｂと、第３色変換テーブル４２ｃと、変換判定テーブル４２ｄと、を記憶する。また、メモリ４０は、入力ガマット情報４３と、出力ガマット情報４４と、を記憶する。
【００２４】
なお、各色変換テーブル４２ａ〜４２ｃと、入力ガマット情報４３と、出力ガマット情報４４とは、外部のサーバ(例えば、プリンタ７０を提供する企業が保有するサーバ)から取得され、メモリ４０に記憶される。具体的には、各色変換テーブル４２ａ〜４２ｃと、入力ガマット情報４３と、出力ガマット情報４４とは、ユーザがプリンタ７０のプリンタドライバを外部のサーバからダウンロードする際に、当該プリンタドライバとともに取得される。
【００２５】
入力ガマット情報４３は、入力デバイス(端末装置１０の表示部２１)がＬ＊ａ＊ｂ＊空間内で表現可能な色域の範囲を示す情報である。また、出力ガマット情報４４は、出力デバイス(プリンタ７０)がＬ＊ａ＊ｂ＊空間内で表現可能な色域の範囲を示す情報である。具体的には、入力ガマット情報４３と出力ガマット情報４４とは、Ｌ＊ａ＊ｂ＊空間に関する３次元のルックアップテーブルである。当該ルックアップテーブルの各エントリは、当該エントリに対応するＬ＊ａ＊ｂ＊値が表現可能であるか否かを示すフラグを含む。
【００２６】
表示部２１は、ディスプレイを備えており、各種の画面を表示する。操作部２２は、キーボードやポインティングデバイスを備えている。ユーザは、操作部２２を操作することによって、表示部２１に表示される項目を選択する。
【００２７】
図２は、メモリ４０の記憶テーブル４２内の各色変換テーブル４２ａ〜４２ｃの内容を示した図である。
【００２８】
図２(Ａ)は、第１色変換テーブル４２ａを示す図である。第１色変換テーブル４２ａは、端末装置１０の表示部２１に表示される画像データの各画素のＲＧＢ値と、各ＲＧＢ値で表現される色を示すＬ＊ａ＊ｂ＊空間内のＬ＊ａ＊ｂ＊値と、を対応づけたルックアップテーブルである。ここで、ＲＧＢ値はそれぞれレッド、グリーン、ブルーを示す。また、Ｌ＊ａ＊ｂ＊空間は、ＣＩＥＬ＊ａ＊ｂ＊色空間を意味し、デバイスに依存しない色空間である。Ｌ＊ａ＊ｂ＊値を構成する成分のうち、ａ＊とｂ＊とは色相及び彩度を示し、Ｌ＊は明度を示す。第１色変換テーブル４２ａは、ガマットマッピングを実行する際に使用される。
【００２９】
なお、第１色変換テーブル４２ａは、以下に示す式を満たす予め定められた数(１７×１７×１７個)のＲＧＢ値によって構成される。
【００３０】
(Ｒ(ｎ)，Ｇ(ｎ)，Ｂ(ｎ))  ＝  (０＋１６×ｘ，０＋１６×ｙ，０＋１６×ｚ)  …  式(１)
【００３１】
ｘ、ｙ、ｚは０≦ｘ、ｙ、ｚ＜１７を満たす整数である。また、ｎは１〜１７×１７×１７のいずれかの値をとり得る整数である。本実施例では、ＲＧＢ値は２５６階調で表現されるため、最も明度の高いＲＧＢ値は、(Ｒ，Ｇ，Ｂ)＝(２５５，２５５，２５５)である。
【００３２】
図２(Ｂ)は、第２色変換テーブル４２ｂを示す図である。第２色変換テーブル４２ｂは、端末装置１０の表示部２１に表示される画像データの各画素のＲＧＢ値と、当該ＲＧＢ値をもとにプリンタ７０で出力(印刷)される画像の各画素の色を示すＬ＊ａ＊ｂ＊空間内のＬ＊ａ＊ｂ＊値と、を対応付けたルックアップテーブルである。第２色変換テーブル４２ａは、第１色変換テーブル４２ａと同様に、ガマットマッピングを実行する際に使用される。なお、本実施例では、第２色変換テーブル４２ｂを用いて、Ｌ＊ａ＊ｂ＊空間内のＬ＊ａ＊ｂ＊値に対するＲＧＢ空間内のＲＧＢ値を算出する。第２色変換テーブル４２ｂは、第１色変換テーブル４２ａと同様に、式(１)を満たすＲＧＢ値(１７×１７×１７個)に対して、当該ＲＧＢ値のそれぞれに対応するＬ＊ａ＊ｂ＊値が対応付けられている。
【００３３】
図２(Ｃ)は、第３色変換テーブル４２ｃを示す図である。第３色変換テーブル４２ｃは、端末装置１０の表示部２１に表示される画像データの各画素のＲＧＢ値と、プリンタ７０で出力(印刷)される画像の各画素のオン／オフを決定するために、当該ＲＧＢ値から変換されるＣＭＹＫ空間内のＣＭＹＫ値と、を対応付けたルックアップテーブルである。ＣＭＹＫはそれぞれシアン、マゼンタ、イエロー、ブラックを示す。第３色変換テーブル４２ｃは、後述する外郭色変換処理が実行されることによって求められるＲＧＢ値を、プリンタ７０で表現されるためのＣＭＹＫ値に変換する際に利用される。第３色変換テーブル４２ｃは、第１色変換テーブル４２ａと同様に、式(１)を満たすＲＧＢ値(１７×１７×１７個)に対して、当該ＲＧＢ値のそれぞれに対応するＣＭＹＫ値が対応付けられている。
【００３４】
ＲＧＢのそれぞれの色成分は、色成分の値が大きくなるほど、明度が大きくなる(換言すれば、濃度が小さくなる)。一方、ＣＭＹＫのそれぞれの色成分は、色成分の値が大きくなるほど、明度が小さくなる(換言すれば、濃度が大きくなる)。
【００３５】
なお、各色変換テーブル４２ａ〜４２ｃに含まれない値は、各色変換テーブル４２ａ〜４２ｃに含まれる２つ以上の値を用いて、線形補間等の補間計算により算出される。例えば、第１色変換テーブル４２ａに含まれない特定のＲＧＢ値に対応するＬ＊ａ＊ｂ＊値は、特定のＲＧＢ値に明度が近接する(すなわち、式(１)のｘ、ｙ、ｚのパラメータの値が近接する)第１色変換テーブル４２ａ内の２つ以上のＲＧＢ値のそれぞれに対応するＬ＊ａ＊ｂ＊値が選択され、２つ以上の当該Ｌ＊ａ＊ｂ＊値の平均値が算出されることによって求められる。
【００３６】
こうすることで、メモリ４０で使用される領域を節約することができる。なお、各色変換テーブル４２ａ〜４２ｃのエントリの数は、式(１)を満たす値以外の値に変更することが可能である。
【００３７】
Ａ−２．色変換処理：
図３は、本実施例で実行される色変換処理を示すフローチャートである。
【００３８】
色変換処理は、端末装置１０の操作部２２が操作され、端末装置１０に記憶される画像データをプリンタ７０で出力するよう指示されることにより開始される。はじめに、制御部２０は、第１色変換テーブル４２ａを用いて、端末装置１０に記憶される画像データの各画素のＲＧＢ値をＬ＊ａ＊ｂ＊値に変換する(Ｓ１００)。具体的には、制御部２０は、第１色変換テーブル４２ａを参照して、画像データに含まれる各画素のＲＧＢ値に対応するＬ＊ａ＊ｂ＊値を読み出す。なお、画像データの画素のＲＧＢ値が第１色変換テーブル４２ａに含まれない場合(すなわち、ＲＧＢちが式(１)を満たす１７×１７×１７個のＲＧＢ値のいずれでもない場合)は、上述したように、各グリッドのＲＧＢ値(Ｒ(ｎ)，Ｇ(ｎ)，Ｂ(ｎ)。ただし、ｎ＝１、２、…、１７×１７×１７)に基づいて補間処理を実行することにより、対応するＬ＊ａ＊ｂ＊値が求められる。
【００３９】
続いて、制御部２０は、端末装置１０とプリンタ７０とのガマットマッピングを実行する(Ｓ２００)。具体的には、制御部２０は、入力ガマット情報４３と、出力ガマット情報４４と、に基づいて、Ｓ１００で画素ごとに読み出されたＬ＊ａ＊ｂ＊値を修正する。例えば、プリンタ７０での色域内に含まれない色のＬ＊ａ＊ｂ＊値は、プリンタ７０で表現可能な色のうち、当該色から色差が最も小さい色のＬ＊ａ＊ｂ＊値に修正される。ガマットマッピングが実行されることにより、端末装置１０の表示部２１で表現される色のＬ＊ａ＊ｂ＊値が、プリンタ７０で表現される色のＬ＊ａ＊ｂ＊値に修正される。
【００４０】
ガマットマッピングが実行されると、制御部２０は、第２色変換テーブル４２ｂを用いて、Ｓ２００で得られた修正済みのＬ＊ａ＊ｂ＊値を、ＲＧＢ値に変換する(Ｓ３００)。この際、第２色変換テーブル４２ｂに含まれない値は、第２色変換テーブル４２ｂに含まれる２つ以上の値を用いて、線形補間等の補間計算により算出される。こうすることで、メモリ４０で使用される領域を節約することができる。
【００４１】
具体的には、制御部２０は、第２色変換テーブル４２ｂを参照し、修正済みのＬ＊ａ＊ｂ＊値との色差が小さいＬ＊ａ＊ｂ＊値を複数選択する。その後、制御部２０は、当該複数のＬ＊ａ＊ｂ＊値に対応する複数のＲＧＢ値の平均値を算出することによって、出力されたＬ＊ａ＊ｂ＊値に対応するＲＧＢ値を決定する。
【００４２】
続いて、制御部２０は、外郭色変換処理を実行する(Ｓ４００)。当該外郭色変換処理が実行されることによって、ＲＧＢ値の各成分のうちのいずれかが２５５であるＲＧＢ値のうち、一部のＲＧＢ値が変換される。外郭色変換処理については後述する。
【００４３】
続いて、制御部２０は、第３色変換テーブル４２ｃを参照して、Ｓ４００で得られたＲＧＢ値をＣＭＹＫ値に変換する(Ｓ５００)。なお、Ｓ１００での処理と同様に、第３色変換テーブル４２ｃに含まれないＲＧＢ値は、第３色変換テーブル４２ｃに基づいて補間処理を実行することにより、対応するＣＭＹＫ値が決定される。
【００４４】
その後、制御部２０は、求められたＣＭＹＫ値に基づいて、画像データの各画素の出力のオン／オフが決定された印刷データを生成し、プリンタ７０に送信する(Ｓ６００)。
【００４５】
Ａ−２−１．外郭色変換処理：
図３(Ｓ４００)の外郭色変換処理について説明する。図４(Ａ)、(Ｂ)は、２つの異なる色相における、Ｌ＊ｃ平面内での端末装置１０とプリンタ７０との色域を例示した図である。なお、Ｌ＊ｃ平面内におけるｃ軸は彩度を示す。なお、Ｌ＊ａ＊ｂ＊空間における座標値が(ＸＬ，Ｘａ，Ｘｂ)である場合、彩度成分Ｘｃは、以下に示す式によって算出される。
【００４６】
Ｘｃ  ＝  ｓｑｒｔ{(Ｘａ２)＋(Ｘｂ２)}  …  式(１)
【００４７】
曲線ＴＣＬは、端末装置１０の表示部２１が表現可能な色域の外郭(色域の最も外側の線)を示す。また、曲線ＰＣＬは、プリンタ７０が表現可能な色域の外郭を示す。図４(Ａ)、(Ｂ)から分かるように、通常、各デバイスが表現できる色域の範囲は一致しない。
【００４８】
図４(Ａ)は、端末装置１０の色域に含まれる一部の色が、プリンタ７０で表現できない色域を有する色相を示す。例えば、図４(Ａ)の座標Ｘ(ＸＬ，Ｘｃ)に対応する色は、端末装置１０の色域には含まれるが、プリンタ７０の色域に含まれない。そのため、端末装置１０で表現される色のうち、座標Ｘに対応する色を含む一部の色は、プリンタ７０で表現されるために色が変換される必要がある。
【００４９】
一方、図４(Ｂ)は、端末装置１０の色域全体が、プリンタ７０の色域に含まれる色相を示す。図示するように、端末装置１０の色域全体がプリンタ７０の色域に含まれていれば、端末装置１０で表現可能な色は、プリンタ７０でも同じ色で表現される。
【００５０】
端末装置１０とプリンタ７０とにおいて、同じ色(すなわち、同じＬ＊ａ＊ｂ＊値)で表現される場合であっても、第１色変換テーブル４２ａにおける特定のＬ＊ａ＊ｂ＊値に対応するＲＧＢ値と、第２色変換テーブル４２ｂにおける当該特定のＬ＊ａ＊ｂ＊値に対応するＲＧＢ値と、は通常異なる。その結果、例えば、端末装置１０の色域の外郭に存在する図４(Ｂ)の座標Ｙ(ＹＬ，Ｙｃ)の色は、第１色変換テーブル４２ａではＲＧＢ値の各成分のうちいずれかの成分の値が２５５であるが、第２色変換テーブル４２ｂではＲＧＢ値の各成分のいずれの成分も２５５にならない。
【００５１】
その結果、第３色変換テーブル４２ｃを用いて、画像データ内の各画素のＲＧＢ値がＣＭＹＫ値に変換される際、ＣＭＹＫ値の各成分の値が意図されない組み合わせとなることがある。特に、図４(Ｂ)の座標Ｙ(ＹＬ，Ｙｃ)のような色域の外郭上に存在する色は、当該外郭の色が表現されるためのＣＭＹＫ値のうち、値の小さい成分がごくわずかに含まれるようにＣＭＹＫ値が決定されるため、プリンタ７０で出力される画像の粒状感が目立ちやすいことが知られている。
【００５２】
そこで、本実施例では、入力デバイス(端末装置１０)で色域外郭上に存在する色(以下、外郭色)が以下の２つのうちのいずれかである場合に、外郭色が出力デバイス(プリンタ７０)の色域の外郭の色に変換されるように外郭色を調整する。具体的には、外郭色がプリンタ７０で表現できない場合と、外郭色がプリンタ７０の色域の外郭に近接する場合とにおいて、外郭色を調整する。以下に、外郭色を調整するための外郭色変換処理について詳述する。
【００５３】
図５は、図３(Ｓ４００)の外郭色変換処理の内容を示すフローチャートである。はじめに、制御部２０は、第１色変換テーブル４２ａに含まれるＲＧＢ値(１７×１７×１７個)のうち、いずれかの成分が２５５である８１７個(＝１７×１７×３−１７×３＋１)のＲＧＢ値を選択する(Ｓ４２０)。いずれかの成分が２５５である色は、デバイスの色域の外郭上に存在する色である。
【００５４】
図６は、Ｓ４２０で選択されるＲＧＢ値を模式的に示す図である。図示するように、Ｓ４２０で選択されたＲＧＢ値は、Ｒ成分が２５５である面Ａｒ１と、Ｇ成分が２５５である面Ａｒ２と、Ｂ成分が２５５である面Ａｒ３と、に含まれるＲＧＢ値である。Ｓ４２０で選択されたＲＧＢ値によって、変換判定テーブル４２ｄが構成される。
【００５５】
続いて、制御部２０は、図５の補正テーブル生成処理(Ｓ４４０)と、変換値算出処理(Ｓ４６０)と、を実行する。以下に、当該２つの処理について詳述する。
【００５６】
Ａ−２−２．補正テーブル生成処理：
図７は、図５の補正テーブル生成処理(Ｓ４４０)を示すフローチャートである。
【００５７】
制御部２０は、Ｓ４２０で選択されたＲＧＢ値から、最初に処理すべきＲＧＢ値を選択する(Ｓ４４１)。本実施例では、(Ｒ，Ｇ，Ｂ)＝(２５５，０，０)であるＲＧＢ値を、最初に処理すべきＲＧＢ値として選択する。
【００５８】
続いて、制御部２０は、メモリ４０を参照し、第１色変換テーブル４２ａ内の選択されたＲＧＢ値に対応するＬ＊ａ＊ｂ＊値と、出力ガマット情報４４と、を読み込む(Ｓ４４２)。
【００５９】
次に、制御部２０は、変換要否判定処理を実行する(Ｓ４４３)。変換要否判定処理が実行されることによって、変換判定テーブル４２ｄに含まれる各点の値αに１(変換必要)または０(変換不要)が代入される。以下に、変換要否判定処理の内容を説明する。
【００６０】
図８は、図７の変換要否判定処理(Ｓ４４３)を示すフローチャートである。はじめに、制御部２０は、出力ガマット情報４４を参照することによって、Ｓ４４２で読み込まれたＬ＊ａ＊ｂ＊値で示される色が、プリンタ７０で表現可能な色域の内側に存在するか否かを判断する(Ｓ４４３ａ)。
【００６１】
読み込まれた色が、プリンタ７０で表現可能な色域の内側に存在しない場合は(Ｓ４４３ａ  ＮＯ)、制御部２０は、読み込まれたＬ＊ａ＊ｂ＊値の示す色を変換対象の色(すなわち、外郭色が出力デバイス(プリンタ７０)の色域の外郭上の色に変換されるように調整する色)として決定し、変換判定テーブル４２ｄ内の当該色に対応するＲＧＢ値を示す点の値αに１を記憶する(Ｓ４４３ｄ)。
【００６２】
一方、読み込まれたＬ＊ａ＊ｂ＊値が、プリンタ７０で表現可能な色域の内側に存在する場合は(Ｓ４４３ａ  ＹＥＳ)、制御部２０は、読み込まれた色と、プリンタ７０の色域の外郭と、の色差が閾値以内であるか否か判断する(Ｓ４４３ｂ)。
【００６３】
図９は、特定の色相の範囲に含まれる、端末装置１０の色域の外郭上の点と、プリンタ７０の色域の外郭上の点と、の色差について示した図である。
【００６４】
なお、特定の色相の範囲は、以下のように求められる。具体的には、Ｓ４４２で読み込まれたＬ＊ａ＊ｂ＊値から、色相を表現するための角度θを算出する。θは以下の式で算出される
【００６５】
θ  ＝  Ｔａｎ−１(ｂ＊／ａ＊)  …  式(２)
【００６６】
本実施例では、θ(０°≦θ＜３６０°)を１５°ごとの区間に分割し、θ＝１５°×ｋ(ｋは０≦ｋ＜２４を満たす整数)とした場合の同一のｋを有する色を、特定の色相の範囲に含まれる色であるとする。
【００６７】
図示するように、制御部２０は、Ｓ４４２で読み込まれた色を示す点(点Ａ)と最も近いＰＣＬ上の点(点Ｂ)を特定する。その後、制御部２０は、線分ＡＢの距離ｄが特定の値以内であるか否かを求める。
【００６８】
ＡＢの距離ｄが特定の値以内でない(すなわち、色差が閾値以内でない)場合は(Ｓ４４３ｂ  ＮＯ)、制御部２０は、Ｓ４４２で読み込まれた色を変換対象として決定せず、変換判定テーブル４２ｄ内の当該色に対応するＲＧＢ値を示す点の値αに０を記憶する(Ｓ４４３ｃ)。一方、色差が閾値以内である場合は(Ｓ４４３ｂ  ＹＥＳ)、制御部２０は、Ｓ４４２で読み込まれたＬ＊ａ＊ｂ＊値で示される色を変換対象として決定し、変換判定テーブル４２ｄ内の当該色に対応するＲＧＢ値を示す点の値αに１を記憶する(Ｓ４４３ｄ)。
【００６９】
なお、本実施例では、特定の色相の範囲内で点Ａに最も近い点Ｂを求めることとしたが、異なる方法を用いてもよい。例えば、当該特定の色相の範囲内に含まれるか否かにかかわらず選択される点であって、Ｌ＊ａ＊ｂ＊色空間内のプリンタ７０の色域の外郭上の点のうち点Ａに最も近い点である点Ｃ(図示せず)と、の距離が特定の値以内であるか否かを求めてもよい。
【００７０】
このように、本実施例では、Ｓ４４２で読み込まれた色がプリンタ７０の色域内に存在しない場合に、制御部２０は、Ｓ４４２で読み込まれた色を、プリンタ７０の色域の外郭の色に変換されるように調整することを決定する。また、Ｓ４４２で読み込まれた色が、プリンタ７０の色域内に存在し、かつ、プリンタ７０の色域の外郭からの色差が閾値以内である場合に、制御部２０は、Ｓ４４２で読み込まれた色を、プリンタ７０の色域の外郭の色に変換されるように調整することを決定する。
【００７１】
図８の変換要否判定処理(Ｓ４４３)が終了すると、制御部２０は、図７のＳ４４４において、Ｓ４２０で選択された全てのＲＧＢ値に対して変換要否判定処理を実行したか否かを判断する(Ｓ４４４)。変換要否判定処理を実行していないＲＧＢ値が存在する場合は(Ｓ４４４  ＮＯ)、制御部２０は、次に変換要否を判定すべきＲＧＢ値を選択し(Ｓ４４５)、Ｓ４４２に処理を移行する。本実施例では、制御部２０は、まず、Ｓ４２０で選択されたＲＧＢ値のうち、Ｒ成分が２５５であるＲＧＢ値であって、Ｂ成分とＧ成分とをそれぞれ独立に値を変化させて選択されるＲＧＢ値の処理を実行する。その後、同様に、制御部２０は、Ｓ４２０で選択されたＲＧＢ値のうち、Ｇ成分とＢ成分とが２５５であるＲＧＢ値に対して処理を実行する。
【００７２】
Ｓ４２０で選択された全てのＲＧＢ値に対して変換要否が決定されると(Ｓ４４４  ＹＥＳ)、制御部２０は、変換判定テーブル４２ｄを修正する処理を実行する(Ｓ４４６)。
【００７３】
図１０は、変換判定テーブル４２ｄを修正する処理の内容を示した図である。
【００７４】
図１０(Ａ)は、Ｌ＊ｃ平面における、変換判定テーブル４２ｄが修正される処理の概要を示す。本実施例では、制御部２０は、特定の色相の範囲内で最も明度の小さい点Ｐｍｉｎを選択する。その後、制御部２０は、点Ｐｍｉｎよりも明度の大きい同一の色相の範囲内の全ての色に対応する変換判定テーブル４２ｄ内の値を１に修正する。例えば、点Ｐａの位置に対応する色は、図８の変換要否判定処理のＳ４４３ｄで値を変換するように調整されることが決定されているか否か(すなわち、変換判定テーブル４２ｄの値αに１が代入されているか否か)にかかわらず、Ｓ４４６の修正処理によって、変換判定テーブル４２ｄ内の値αが１に修正される。
【００７５】
図１０(Ｂ)は、ＲＧＢ空間における、修正前の変換判定テーブル４２ｄを示す。また、図１０(Ｃ)は、ＲＧＢ空間における、修正済みの変換判定テーブル４２ｄ’を示す。例えば、図１０(Ｂ)の点Ｘに対応する色は、変換要否判定処理(Ｓ４４３)において、プリンタ７０の色域の外郭に近づくように値を調整しないことが決定された色である(すなわち、変換判定テーブル４２ｄの値αは０である)。これに対し、点Ｘと同じく特定の色相内に含まれる点であって、点Ｘよりも明度が小さい点Ｙは、プリンタ７０の色域の外郭に近づくように値を調整することが決定された色である(すなわち、変換判定テーブル４２ｄの値αは１である)。この場合、制御部２０は、変換判定テーブル４２ｄ内の点Ｘの色に対応する値αを１に修正する。なお、図１０(Ｂ)の点Ｘは、図１０(Ａ)の点Ｐａに対応する。また、図１０(Ｂ)の点Ｙは、図１０(Ａ)の点Ｐｍｉｎに対応する。
【００７６】
変換判定テーブル４２ｄを修正する処理(Ｓ４４６)が実行されない場合は、プリンタ７０の色域の外郭に近づくように値が調整される色と、値が調整されない色と、の色差が小さい場合であっても、変換判定テーブル４２ｄに基づいて、互いに色差が大きい色に変換されるため、色の階調性が連続しない。これに対し、変換判定テーブル４２ｄを修正する処理(Ｓ４４６)が実行されることによって、プリンタ７０の色域の外郭に近づくように値が調整される色と、値が調整されない色と、の色の階調が連続するため、制御部２０は、色の不整合を低減させることができる。
【００７７】
変換判定テーブル４２ｄの修正が終了すると、図７のＳ４４７で、制御部２０は、修正済みの変換判定テーブル４２ｄ’を用いて、補正テーブル４２ｅを生成する処理を実行する。具体的には、制御部２０は、修正済みの変換判定テーブル４２ｄ’の各点の値αを用いて、補正テーブル４２ｅの各点の値βを算出する。
【００７８】
図１１は、補正テーブル４２ｅを生成する処理の内容を示した図である。図１１(Ａ)は、Ｇ成分が２５５である修正済みの変換判定テーブル４２ｄ’を示す。点Ｚは、当該変換判定テーブル４２ｄ’内の領域Ａｒ４に含まれる特定の点である。本実施例では、制御部２０は、Ｓ４４２で読み込まれたＬ＊ａ＊ｂ＊値が示す点に隣接する４点の値αの平均値を算出する。例えば、点Ｚの値が(１６×ｘ１，２５５，１６×ｙ１)(ただし、ｘ１，ｙ１は、式(１)においてｘ１∈ｘ，ｙ１∈ｙを満たす整数)である場合は、制御部２０は、点Ｚに隣接する４点(１６×(ｘ１−１)，２５５，１６×ｙ１)、(１６×(ｘ１＋１)，２５５，１６×ｙ１)、(１６×ｘ１，２５５，１６×(ｙ１−１))、(１６×ｘ１，２５５，１６×(ｙ１＋１))の値αの平均値を算出する。
【００７９】
図１１(Ｂ)は、補正テーブル４２ｅ内の点Ｚの値βの算出方法について示す。なお、修正済みの変換判定テーブル４２ｄ’における点Ｚの値αは１である。制御部２０は、修正済みの変換判定テーブル４２ｄ’において点Ｚに隣接する４点に対応する変換判定テーブル４２ｄ’の値α(０または１)の平均値を算出する。修正済みの変換判定テーブル４２ｄ’で当該点Ｚに隣接する４点のうち、３点の修正済みの変換判定テーブル４２ｄ’の値αは１であり、１点の値αは０である。これにより、点Ｚの周囲４点の値αの平均値は、０．７５と算出される。これにより、制御部２０は、補正テーブル４２ｅ内の点Ｚの値βを、０．７５と決定する。
【００８０】
図１１(Ｃ)は、図１１(Ａ)の修正済みの変換判定テーブル４２ｄ’内の領域Ａｒ４の値αを修正することによって算出される、補正テーブル４２ｅ内の領域Ａｒ４の値βを示す図である。図示するように、Ｓ４４７の処理が実行されることによって、領域Ａｒ４に含まれる一部の色の値αが０または１以外の値(例えば０．７５)に変更される。すなわち、修正済みの変換判定テーブル４２ｄ’の値αが０である点と、値αが１である点と、の境界領域においては、修正済みの変換判定テーブル４２ｄ’の値αが１である点は、値αが１よりも小さくなるように修正される。また、修正済みの変換判定テーブル４２ｄ’の値αが０である点は、値αが０よりも大きくなるように修正される。こうすることで、修正済みの変換判定テーブル４２ｄ’内で隣接する値αの変化を滑らかにすることができ、急激な色の変化を抑制することができる。
【００８１】
以上より、修正済みの変換判定テーブル４２ｄ’の各αが修正され、修正された値βによって構成される補正テーブル４２ｅが生成される。図１１(Ｄ)は、生成された補正テーブル４２ｅを示す図である。
【００８２】
なお、図１１(Ｂ)に示した以外のβの算出方法として、制御部２０は、例えば、３×３個の点の中心がＳ４４２で読み込まれた色であるとした場合に、３×３個の点の最近傍の８点のαの値に基づいて平均値が算出されてもよい。また、算出される値は平均値に限られるものではなく、Ｓ４４２で読み込まれた色に隣接する周辺の点の値αに依存して決定されればよい。例えば、周辺の点の値αを掛けることによって、βが算出されてもよい。
【００８３】
補正テーブル４２ｅの生成が終了すると、制御部２０は、図７の補正テーブル生成処理を終了する。
【００８４】
Ａ−２−３．変換値算出処理：
図１２は、変換値算出処理(図５のＳ４６０)を示すフローチャートである。また、図１３は、変換値算出処理で用いられる各ＲＧＢ値の一例を示す図である。当該変換値算出処理は、Ｓ４２０で選択された全てのＲＧＢ値に対して実行される。
【００８５】
まず、制御部２０は、Ｓ４２０で第１色変換テーブル４２ａから選択されたＲＧＢ値から、最初に処理すべきＲＧＢ値を選択する(Ｓ４６１)。本実施例では、上述した補正テーブル生成処理(Ｓ４４０)と同様に、(Ｒ，Ｇ，Ｂ)＝(２５５，０，０)であるＲＧＢ値が、最初に処理すべきＲＧＢ値として選択される。
【００８６】
図１３(Ａ)は、Ｓ４２０で選択されたＲＧＢ値(Ｒ４２０，Ｇ４２０，Ｂ４２０)を示す。
【００８７】
前述したように、Ｓ４２０で選択されたＲＧＢ値は、第１色変換テーブル４２ａに含まれるＲＧＢ値(１７×１７×１７個)のうちの一部のＲＧＢ値である。第１色変換テーブル４２ａ内の特定のＲＧＢ値(Ｓ４２０で選択されるＲＧＢ値)は、図３のＳ１００〜Ｓ３００の処理が実行されることによって、第２色変換テーブル４２ｂ内の特定のＲＧＢ値(Ｓ３００で算出されるＲＧＢ値)と対応付けられている。
【００８８】
続いて、制御部２０は、メモリ４０を参照し、処理すべきＲＧＢ値に対応する、Ｓ３００で得られたＲＧＢ値を読み込む(Ｓ４６２)。
【００８９】
図１３(Ｂ)は、Ｓ４２０で選択されたＲＧＢ値に対応するＳ３００で算出されたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)を示す。なお、第１色変換テーブル４２ａにおける図１３(Ａ)のＲＧＢ値(Ｒ４２０，Ｇ４２０，Ｂ４２０)に対応するＬ＊ａ＊ｂ＊値と、第２色変換テーブル４２ｂにおける図１３(Ｂ)のＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)に対応するＬ＊ａ＊ｂ＊値と、は同じ値である。
【００９０】
制御部２０は、Ｓ３００で得られたＲＧＢ値の各成分の大小関係を判断し、最大成分ＲＧＢｍａｘと、中間成分ＲＧＢｍｉｄと、最小成分ＲＧＢｍｉｎと、を決定する(Ｓ４６３)。
【００９１】
図示するように、Ｓ４２０で第１色変換テーブル４２ａから選択されたＲＧＢ値(Ｒ４２０，Ｇ４２０，Ｂ４２０)＝(２５５，１００，５０)であって、Ｓ４２０で選択されたＲＧＢ値に対応するＳ３００で得られたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)＝(２４０，１１０，５０)である場合は、最大成分ＲＧＢｍａｘ＝Ｒ(＝２４０)と、中間成分ＲＧＢｍｉｄ＝Ｇ(＝１１０)と、最小成分ＲＧＢｍｉｎ＝Ｂ(＝５０)と、が求められる。
【００９２】
続いて、制御部２０は、以下の各変換式に基づいて、(ＲＧＢ’ｍａｘ，ＲＧＢ’ｍｉｄ，ＲＧＢ’ｍｉｎ)を算出する(Ｓ４６４)。
【００９３】
ＲＧＢ’ｍａｘ  ＝  ２５５  …  式(３)
【００９４】
ＲＧＢ’ｍｉｄ  ＝  ＲＧＢｍｉｄ×２５５／ＲＧＢｍａｘ  …  式(４)
【００９５】
ＲＧＢ’ｍｉｎ  ＝  ＲＧＢｍｉｎ×２５５／ＲＧＢｍａｘ  …  式(５)
【００９６】
このように、制御部２０は、最大成分ＲＧＢｍａｘが２５５に変換される変換特性(＝２５５／ＲＧＢｍａｘ)に基づいて、ＲＧＢｍｉｄとＲＧＢｍｉｎとを調整し、ＲＧＢ’ｍｉｄとＲＧＢ’ｍｉｎとを算出する。
【００９７】
図１３(Ｃ)は、Ｓ４６４で算出されたＲＧＢ値(Ｒ３００’(＝ＲＧＢ’ｍａｘ)，Ｇ３００’ (＝ＲＧＢ’ｍｉｄ)，Ｂ３００’ (＝ＲＧＢ’ｍｉｎ))を示す。図示するように、Ｓ４６４の処理が実行されることによって、(Ｒ３００’，Ｇ３００’，Ｂ３００’)＝(２５５，１１７，５３)が算出される。
【００９８】
続いて、制御部２０は、Ｓ３００で得られたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)を調整する(Ｓ４６５)。具体的には、以下の式に基づいて、Ｓ４６４で得られたＲＧＢ値(Ｒ３００’，Ｇ３００’，Ｂ３００’)によって、Ｓ３００で得られたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)が調整され、調整値(Ｒ’，Ｇ’，Ｂ’)が算出される。算出された調整値(Ｒ’，Ｇ’，Ｂ’)は、図３のＳ５００で使用される。
【００９９】
調整値(Ｒ’，Ｇ’，Ｂ’)  ＝  (Ｒ３００，Ｇ３００，Ｂ３００)×(１−γ)＋(Ｒ３００’，Ｇ３００’，Ｂ３００’)×γ  …  式(５)
【０１００】
なお、補正係数γは、補正テーブル４２ｅの値βから求められる値である。補正係数γの算出方法については後述する。
【０１０１】
図１３(Ｄ)は、図１３(Ｂ)に例示したＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)を調整することによって得られる調整値(Ｒ’，Ｇ’，Ｂ’)の例を示す。γｗは、図１３(Ｂ)に例示したＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)に対応する補正係数である。図示するように、例えばＲ’の値は、補正係数γｗの値に応じて、Ｒ３００の値(＝２４０)と、Ｒ３００’の値(＝２５５)と、の間の範囲内の値で出力される。具体的には、以下に示す式のような値として出力される。
【０１０２】
調整値(Ｒ’，Ｇ’，Ｂ’)  ＝  (２４０，１１０，５０)×(１−γｗ)＋(２５５，１１７，５３)×γｗ
【０１０３】
図１４は、補正係数γの算出方法を示す図である。図１４(Ａ)は、補正テーブル４２ｅを示す図である。図１３(Ｂ)に例示したＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)は、図１４(Ａ)のＷの位置に対応する色であると仮定する。制御部２０は、Ｓ４２０で選択されたＲＧＢ値(すなわち、補正テーブル４２ｅの各点に対応するＲＧＢ値)の中で、Ｓ３００で算出されたＲＧＢ値に近接する４点(領域Ａｒ５に含まれる４点)を選択する。点ＷのＲＧＢ値は(Ｒ３００，Ｇ３００，Ｂ３００)＝(２４０，１１０，５０)であるため、制御部２０は、点Ｚに隣接する４点として、(２５５，９６，４８)、(２５５，１１２，４８)、(２５５，９６，６４)、(２５５，１１２，６４)が選択される。
【０１０４】
図１４(Ｂ)は、点Ｗの補正係数γｗを示す図である。図示するように、当該４点の補正テーブル４２ｅの値がβ１〜β４であるとすると、補正係数γｗは以下の式に基づいて算出される。
【０１０５】
γｗ  ＝  (β１＋β２＋β３＋β４)／４  …式(６)
【０１０６】
なお、本実施例では、β１〜β４の平均値を用いて補正係数γを算出することとしたが、他の線形補間法(最近傍内挿法、バイリニア法等)を用いて補正係数γを算出してもよい。
【０１０７】
以上のように、Ｓ３００で得られるＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)が調整されて出力される調整値(Ｒ’，Ｇ’，Ｂ’)は、補正係数γが大きいほど、Ｓ４６４で算出されるＲＧＢ値(Ｒ３００’，Ｇ３００’，Ｂ３００’)が反映された値で出力される。すなわち、補正係数γが大きいほど、入力デバイス(端末装置１０)の色域の外郭に存在する色は、出力デバイス(プリンタ７０)の色域の外郭上の色に変換されるように調整される。一方、Ｓ３００で得られるＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)が調整されて出力される調整値(Ｒ’，Ｇ’，Ｂ’)は、補正係数γが小さいほど、Ｓ３００で得られるＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)が反映された値に調整される。すなわち、補正係数γが大きいほど、入力デバイス(端末装置１０)の色域の外郭に存在する色は、入力デバイス(端末装置１０)での色域の外郭の色が維持されるように調整される。従って、本発明の処理が実行されることにより、入力デバイス(端末装置１０)の色域の外郭に存在する色と、出力デバイス(プリンタ７０)の色域の外郭と、の近接度合いに応じて、入力デバイスの色域の外郭に存在する色を適切な色に変換させることができる。
【０１０８】
変換値算出処理が実行されることによって、第３色変換テーブル４２ｃを用いてＳ３００で得られたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)がＣＭＹＫ値に変換される場合に比べて、Ｓ４６５で得られる調整値(Ｒ’，Ｇ’，Ｂ’)がＣＭＹＫ値に変換される場合のほうが、変換されたＣＭＹＫ値の各成分の中で、値の小さい成分の増加が抑制される。この結果、プリンタ７０で出力される画像の粒状感が低減される。
【０１０９】
また、制御部２０は、式(４)と式(５)とを用いて、Ｓ３００で得られたＲＧＢ値(Ｒ３００，Ｇ３００，Ｂ３００)の中で最大成分の値ＲＧＢｍａｘが２５５になるように変換される際の変換特性(２５５／ＲＧＢｍａｘ)に基づいて、最大成分以外の成分(ＲＧＢｍｉｄ，ＲＧＢｍｉｎ)の値も変換する。こうすることで、Ｓ３００で得られたＲＧＢ値と、Ｓ４６４で得られたＲＧＢ値と、の色相の変化が低減される。
【０１１０】
続いて、制御部２０は、Ｓ４２０で第１色変換テーブル４２ａから選択された全てのＲＧＢ値に対して、Ｓ４６５の調整を実行したか否かを判断する(Ｓ４６６)。調整していないＲＧＢ値が存在する場合は(Ｓ４６６  ＮＯ)、制御部２０は、次に調整すべきＲＧＢ値を選択し(Ｓ４６７)、当該ＲＧＢ値に対してＳ４６２からＳ４６５の処理を実行する。一方、Ｓ４２０で第１色変換テーブル４２ａから選択された全てのＲＧＢ値に対して調整が完了した場合は(Ｓ４６６  ＹＥＳ)、制御部２０は、図１２の変換値算出処理を終了する。
【０１１１】
以上説明したように、端末装置１０は、端末装置１０で表現される色のうち、端末装置１０の色域の外郭に存在する色(すなわち、Ｓ４２０で選択される変換判定テーブル４２ｄ上のＲＧＢ値が示す色)が、プリンタ７０の色域の外郭から所定の色差の範囲内に存在するか否かを、図８の変換要否判定処理(Ｓ４４３)を実行することによって判断する。端末装置１０の色域の外郭に存在する色は、プリンタ７０の色域の外郭から所定の色差の範囲内に存在する(すなわち、図９の線分ＡＢの距離ｄが特定の値以内である)場合に、図１２の変換値算出処理(Ｓ４６０)のＳ４６５によって、当該色域の外郭に存在する色が、プリンタ７０の色域の外郭上の色に変換されるように値を調整される。一方、端末装置１０の色域の外郭に存在する色は、プリンタ７０の色域の外郭から所定の色差の範囲内に存在しない(すなわち、図９の線分ＡＢの距離ｄが特定の値より大きい)場合に、図１２の変換値算出処理(Ｓ４６０)のＳ４６５によって、当該色域の外郭に存在する色が、プリンタ７０の色域の外郭上の色に変換されないように値を調整される。このように、端末装置１０は、端末装置１０で表現可能な色を、プリンタ７０で表現可能な色に適切に変換することができる。
【０１１２】
以上の説明において、図５のＳ４２０が本発明の特定色選択手段５１によって実行される処理に相当する。また、図８のＳ４４３ｂが第１の判断手段５２によって実行される処理に相当する。また、図８のＳ４４３ｃ、Ｓ４４３ｄが色調整手段５３によって実行される処理に相当する。また、図８のＳ４４３ａが第２の判断手段５４によって実行される処理に相当する。また、図３のＳ１００〜Ｓ３００が変換手段によって実行される処理に相当する。また、図７のＳ４４６が暗色選択手段５５によって実行される処理に相当する。また、図１２のＳ４６３〜Ｓ４６６が成分調整手段５７によって実行される処理に相当する。
【０１１３】
また、図８のＳ４４３ｃ、Ｓ４４３ｄが本発明の第１の調整処理に相当し、Ｓ４４３ｄが第２の調整処理に相当する。
【０１１４】
Ｂ．変形例：
本発明における技術的範囲は、上述した実施例に限られるものではなく、以下に示すような種々の態様によって実施することが可能である。
【０１１５】
(１)上述した実施例では、制御部２０は、ＲＧＢ値に関してＳ４００の外郭色変換処理を実行することを記載したが、これに代えて、第３色変換テーブル４２ｃを用いてＲＧＢ値からＣＭＹＫ値に変換させた後に、当該外郭色変換処理を実行してもよい。
【０１１６】
(２)上述した実施例では、端末装置１０が色変換処理を実行することを記載したが、異なる構成であってもよい。すなわち、端末装置１０と接続されるプリンタ７０の制御部が色変換処理を実行してもよい。
【０１１７】
(３)上述した実施例では、メモリ４０に入力ガマット情報４３と、出力ガマット情報４４と、が記憶されることを記載したが、これに代えて、制御部２０は、第１色変換テーブル４２ａと第２色変換テーブル４２ｂとを用いて各ガマット情報を算出してもよい。
【０１１８】
(４)上述した実施例では、記憶テーブル４２ａに記憶される各テーブルは、予め端末装置１０のメモリ４０に記憶されることを記載したが、これに代えて、端末装置１０以外の異なる装置から端末装置１０に送信されてもよい。
【０１１９】
また、各色変換テーブルが記憶されることなく、種々の色変換公式に基づいて色変換処理を実行してもよい。
【０１２０】
(５)上述した各実施例では、ＣＰＵ３０が色変換プログラム４１に従って処理を実行することによって、各手段５１〜５８の機能が実現されるが、各手段５１〜５７の少なくとも１個は、論理回路等のハードウェアで実現されてもよい。
【符号の説明】
【０１２１】
１０…端末装置、２０…制御部、２１…表示部、２２…操作部、２３…ネットワークインターフェース、３０…ＣＰＵ、４０…メモリ、４１…色変換プログラム、４２…記憶テーブル、４２ａ…第１色変換テーブル、４２ｂ…第２色変換テーブル、４２ｃ…第３色変換テーブル、４２ｄ…変換判定テーブル、４３…入力ガマット情報、４４…出力ガマット情報、５１…特定色選択手段、５２…第１の判断手段、５３…色調整手段、５４…第２の判断手段、５５…変換手段、５６…暗色選択手段、５７…境界領域判断手段、５８…成分調整手段、７０…プリンタ、８０…ＬＡＮ
【図１】
0005857617.tif 000002
【図２】
0005857617.tif 000003
【図３】
0005857617.tif 000004
【図４】
0005857617.tif 000005
【図５】
0005857617.tif 000006
【図６】
0005857617.tif 000007
【図７】
0005857617.tif 000008
【図８】
0005857617.tif 000009
【図９】
0005857617.tif 000010
【図１０】
0005857617.tif 000011
【図１１】
0005857617.tif 000012
【図１２】
0005857617.tif 000013
【図１３】
0005857617.tif 000014
【図１４】
0005857617.tif 000015