(57)【要約】  三つの色管理が提示される。第一の色管理において、CMY値は、それぞれK値に関連付けられた複数のCMY→カラーアピアランス空間(CAS)のルックアップテーブルから補間される。複数のCMYルックアップテーブルの一つが、目標色値の明度値と無彩色度に基づき選択される。次に、CMY値は、選択されたルックアップテーブルと目標色値から補間され、関連するK値を有する変換されたCMYKを形成する。第二の色管理において、黒色重みが取得され(S1202)、CASに変換された色と黒色重みに基づき、デスティネーション値を計算する。ソースデバイス色空間(SDCS)が黒色チャネルを含まない場合、黒色重みは色純度から取得される(S1207)。SDCSがKチャネルを含む場合、黒色重みはKチャネルから取得される(S1206)。第三の色管理において、黒色重みは、ソースモジュールから入手可能な場合はソースモジュールから取得され、ソースモジュールから入手不可能な場合はCASの色の無彩色度と彩度に基づき計算される。
2007537629.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ異なるK値に関連付けられた、複数の三次元CMY空間から内部色空間へのルックアップテーブルとして構成され、CMYK色値を内部色値に変換する色変換を利用して、内部色値をCMYK色値に変換する色管理方法であって、
目標内部色値を受信し、
前記目標内部色値の明度値と無彩色度に基づき、前記目標内部色値を含む、前記複数のCMYルックアップテーブルの一つを選択し、
前記選択したルックアップテーブルと前記目標内部色値からCMY値を補間し、
前記補間したCMY値と、前記選択したテーブルに関連付けられたK値を、前記変換したCMYK色値として供給することを特徴とする色管理方法。
【請求項２】
前記選択は、前記目標内部色値の前記無彩色度を決定するステップと、
前記目標内部色値が無彩色と判定される場合、前記目標内部色値を含み、最大のK値に関連付けられたCMYルックアップテーブルを選択するステップと、
前記目標内部色値が有彩色と判定される場合、前記目標内部色値を含み、最小のK値に関連付けられたCMYルックアップテーブルを選択するステップとを有することを特徴とする請求項1に記載された色管理方法。
【請求項３】
無彩色軸から距離が予め定めた値より大きい前記目標内部色値は有彩色と判定し、前記無彩色軸からの距離が予め定めた値より小さい前記目標内部色値は無彩色と判定することを特徴とする請求項2に記載された色管理方法。
【請求項４】
前記補間は、前記補間したCMY値の誤差を算出するステップと、
前記算出した誤差を予め定めた誤差閾値と比較するステップと、
前記誤差閾値を満す場合は、前記補間されたCMY値を供給するステップと、
前記誤差閾値を満されない場合は、新たにCMYルックアップテーブルを選択し、前記新たに選択したルックアップテーブルと前記目標内部色値から新たにCMY値を補間するステップと有することを特徴とする請求項2に記載された色管理方法。
【請求項５】
前記補間は、ニュートン法およびヤコビアンを使用することを特徴とする請求項4に記載された色管理方法。
【請求項６】
前記目標内部色値はCIELab形式であることを特徴とする請求項5に記載された色管理方法。
【請求項７】
前記目標内部色値はCIECAM形式であることを特徴とする請求項5に記載された色管理方法。
【請求項８】
前記目標内部色値はCIELuv形式であることを特徴とする請求項5に記載された色管理方法。
【請求項９】
前記複数のCMY空間から内部色空間へのルックアップテーブルの作成は、CMYKデバイスの複数のCMYK値に対する、内部色空間形式の測定データを取得するステップと、
各テーブルが特定のK値におけるCMY値に対応する内部色空間測定値を含む、前記複数の三次元CMY空間から内部色空間へのルックアップテーブルを表現するステップとを有することを特徴とする請求項4に記載された色管理方法。
【請求項１０】
前記測定データは、前記CMYKデバイスの出力を色測定デバイスによって測定し、取得することを特徴とする請求項9に記載された色管理方法。
【請求項１１】
前記測定データは、前記CMYKデバイスに関連する既存の色変換によって、複数のCMYK色サンプルを内部色空間値に変換し、取得することを特徴とする請求項9に記載された色管理方法。
【請求項１２】
51個のCMYからカラーアピアランス空間へのルックアップテーブルを作成し、前記51個のテーブルは0〜255の範囲を五刻みにしたディジタル値のK値に対応することを特徴とする請求項9に記載された色管理方法。
【請求項１３】
それぞれ異なるK値に関連付けられた、複数の三次元CMYルックアップテーブルとして構成され、CMYK色値を内部色値に変換する色変換を利用して、内部色値をCMYK色値に変換する装置であって、
請求項1から請求項12の何れかに記載された方法を実行する実行可能な処理ステップを格納するプログラムメモリと、
前記プログラムメモリに格納された前記処理ステップを実行するプロセッサとを有することを特徴とする装置。
【請求項１４】
内部色値をCMYK色値に変換する、コンピュータが読み取り可能な媒体に格納されたコンピュータが実行可能な処理ステップであって、
それぞれ異なるK値に関連付けられた、複数の三次元CMYルックアップテーブルとして構成され、CMYK色値を内部色値に変換する色変換を利用して、請求項1から請求項12の何れかに記載された方法を実行するための処理ステップを有することを特徴とする処理ステップ。
【請求項１５】
内部色値をCMYK色値に変換する、コンピュータが実行可能な処理ステップが記録されたコンピュータが読み取り可能な記憶媒体であって、前記処理ステップは、
それぞれ異なるK値に関連付けられた、複数の三次元CMYルックアップテーブルとして構成され、CMYK色値を内部色値に変換する色変換を利用して、請求項1から請求項12の何れかに記載された方法を実行するための処理ステップを有することを特徴とする記憶媒体。
【請求項１６】
複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換する色管理方法であって、
前記ソースデバイス色空間が黒色チャネルを含む場合は前記ソースデバイス色空間の黒色チャネルに基づき、または、前記ソースデバイス色空間が黒色チャネルを含まない場合は色純度に基づき、前記ソースデバイス色空間のソース画素の黒色重みを取得し、
前記ソース画素をカラーアピアランス空間の色に変換し、
前記カラーアピアランス空間の色と、前記取得した黒色重みに基づき、前記デスティネーション空間の色値を計算することを特徴とする色管理方法。
【請求項１７】
前記ソースデバイス色空間の種類が三色空間の場合、前記三色空間の前記ソース画素の相対的な純度から前記黒色重みを取得することを特徴とする請求項16に記載された色管理方法。
【請求項１８】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素のK値をデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項16に記載された色管理方法。
【請求項１９】
前記デスティネーション色空間はCMYKであり、前記計算は、前記取得した黒色重みに基づきK値を選択し、前記選択したK値と前記カラーアピアランス空間の色に基づきC、M、Yの値を計算することを特徴とする請求項18または請求項19に記載された色管理方法。
【請求項２０】
前記C、M、Yの値は、前記選択したK値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により計算することを特徴とする請求項19に記載された色管理方法。
【請求項２１】
複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換する色管理システムであって、
前記ソースデバイス色空間が黒色チャネルを含む場合は前記ソースデバイス色空間の黒色チャネルに基づき、または、前記ソースデバイス色空間が黒色チャネルを含まない場合は色純度に基づき、前記ソースデバイス色空間のソース画素の黒色重みを計算し、前記ソース画素をカラーアピアランス空間の色に変換するソースデバイスモジュールと、
前記カラーアピアランス空間の色と、前記黒色重みから、デスティネーション色値を計算するデスティネーションデバイスモジュールとを有することを特徴とする色管理システム。
【請求項２２】
前記黒色重みは、前記ソースデバイスモジュールから前記デスティネーションデバイスモジュールに直接渡されることを特徴とする請求項21に記載された色管理システム。
【請求項２３】
前記ソースデバイス色空間の種類が三原色色空間である場合、前記黒色重みは、前記三原色色空間の前記ソース画素の相対純度から取得される請求項22に記載された色管理システム。
【請求項２４】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素の前記Kチャネルをデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項22に記載された色管理システム。
【請求項２５】
前記デスティネーション色空間はCMYKであり、前記デスティネーションデバイスモジュールは、前記取得した黒色重みに基づきK値を選択し、前記選択したK値と前記カラーアピアランス空間の色に基づき前記C、M、Yの値を算出して、前記CMYK値を計算することを特徴とする請求項23または請求項24に記載された色管理システム。
【請求項２６】
前記C、M、Yの値は、前記選択したK値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により計算することを特徴とする請求項15に記載された色管理システム。
【請求項２７】
複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換する、コンピュータが読み取り可能な媒体に格納されたコンピュータが実行可能な処理ステップであって、
前記ソースデバイス色空間が黒色チャネルを含む場合は前記ソースデバイス色空間の黒色チャネルに基づき、または、前記ソースデバイス色空間が黒色チャネルを含まない場合は色純度に基づき、前記ソースデバイス色空間のソース画素の黒色重みを取得し、
前記ソース画素をカラーアピアランス空間の色に変換し、
前記カラーアピアランス空間の色と、前記取得した黒色重みに基づき、デスティネーション色値を計算することを特徴とする処理ステップ。
【請求項２８】
前記ソースデバイス色空間の種類が三色空間の場合、前記三色空間の前記ソース画素の相対的な純度から前記黒色重みを取得することを特徴とする請求項27に記載された処理ステップ。
【請求項２９】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素のK値をデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項27に記載された処理ステップ。
【請求項３０】
前記デスティネーション色空間はCMYKであり、前記計算は、前記取得した黒色重みに基づきK値を選択し、前記選択したK値と前記カラーアピアランス空間の色に基づきC、M、Yの値を計算することを特徴とする請求項28または請求項29に記載された処理ステップ。
【請求項３１】
前記C、M、Yの値は、前記選択したK値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により算出することを特徴とする請求項30に記載された処理ステップ。
【請求項３２】
複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換するコンピュータが実行可能な処理ステップが記録されたコンピュータが読み取り可能な媒体であって、前記処理ステップは、
前記ソースデバイス色空間が黒色チャネルを含む場合は前記ソースデバイス色空間の黒色チャネルに基づき、または、前記ソースデバイス色空間が黒色チャネルを含まない場合は色純度に基づき、前記ソースデバイス色空間のソース画素の黒色重みを取得し、
前記ソース画素をカラーアピアランス空間の色に変換し、
前記カラーアピアランス空間の色と、前記取得した黒色重みに基づき、デスティネーション色値を計算することを特徴とする媒体。
【請求項３３】
前記ソースデバイス色空間の種類が三色空間の場合、前記三色空間の前記ソース画素の相対的な純度から前記黒色重みを取得することを特徴とする請求項32に記載された媒体。
【請求項３４】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素のK値をデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項32に記載された媒体。
【請求項３５】
前記デスティネーション色空間はCMYKであり、前記計算は、前記取得した黒色重みに基づきK値を選択し、前記選択したK値と前記カラーアピアランス空間の色に基づきC、M、Yの値を計算することを特徴とする請求項33または請求項34に記載された媒体。
【請求項３６】
前記C、M、Yの値は、前記選択したK値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により算出することを特徴とする請求項35に記載された色管理方法。
【請求項３７】
カラーアピアランス空間から黒色チャネルを含むデスティネーション色空間に色値を変換する色管理方法であって、
ソースデバイス変換モジュールから入手可能な場合は前記ソースデバイス変換モジュールから、または、前記ソースデバイス変換モジュールから入手不可能な場合は前記カラーアピアランス空間の前記色値の明度と彩度に基づき、前記色値に対する黒色重みを取得し、
前記カラーアピアランス空間の色値と前記取得した黒色重みに基づき、デスティネーション空間色値を計算することを特徴とする色管理方法。
【請求項３８】
さらに、前記ソースデバイス変換モジュールを使用して、ソース画素の色値をソースデバイス色空間から前記カラーアピアランス色空間の前記色値に対応する色値に変換することを特徴とする請求項37に記載された色管理方法。
【請求項３９】
前記ソースデバイス色空間の種類が三色空間の場合、前記三色空間の前記ソース画素の相対的な純度から前記黒色重みを取得することを特徴とする請求項38に記載された色管理方法。
【請求項４０】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素のK値をデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項38に記載された色管理方法。
【請求項４１】
前記デスティネーション色空間はCMYKであり、前記計算は、前記取得した黒色重みに基づき目標K値を選択し、前記目標K値と前記カラーアピアランス空間の色に基づきC、M、Y、Kの値を計算することを特徴とする請求項39または請求項40に記載された色管理方法。
【請求項４２】
前記C、M、Yの値は、前記目標K値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により算出することを特徴とする請求項41に記載された色管理方法。
【請求項４３】
カラーアピアランス空間から黒色チャネルを含むデスティネーション色空間に色値を変換する色管理システムであって、
ソースデバイス変換モジュールから入手可能な場合は前記ソースデバイス変換モジュールから黒色重みを取得し、または、前記ソースデバイス変換モジュールから入手不可能な場合は前記カラーアピアランス空間の前記色値の明度と彩度に基づき、前記黒色重みを計算する黒色重みインタフェイスを含むデスティネーションデバイスモジュールを有し、
前記デスティネーションデバイスモジュールは、前記カラーアピアランス空間の色値と前記黒色重みからデスティネーション色値を計算することを特徴とする色管理システム。
【請求項４４】
前記黒色重みは、前記ソースデバイスモジュールから前記デスティネーションデバイスモジュールに直接渡されることを特徴とする請求項43に記載された色管理システム。
【請求項４５】
さらに、ソースデバイス色空間のソース画素を前記カラーアピアランス空間の色値に対応する色値に変換するソースデバイス変換モジュールを有することを特徴とする請求項43に記載された色管理システム。
【請求項４６】
前記ソースデバイス色空間の種類が三色空間の場合、前記三色空間の前記ソース画素の相対的な純度から前記黒色重みを取得することを特徴とする請求項45に記載された色管理システム。
【請求項４７】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記ソース画素のK値をデバイスに依存しない明度値に変換して、前記黒色重みを取得することを特徴とする請求項45に記載された色管理方法。
【請求項４８】
前記デスティネーション色空間はCMYKであり、前記デスティネーションデバイスモジュールは、前記取得した黒色重みに基づき目標K値を選択し、前記目標K値と前記カラーアピアランス空間の色に基づきC、M、Y、Kの値を計算することを特徴とする請求項46または請求項47に記載された色管理システム。
【請求項４９】
前記C、M、Yの値は、前記目標K値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により算出することを特徴とする請求項46に記載された色管理システム。
【請求項５０】
複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換する、コンピュータが読み取り可能な媒体に格納されたコンピュータが実行可能な処理ステップであって、
ソースデバイス変換モジュールから入手可能な場合は前記ソースデバイス変換モジュールから黒色重みを取得し、または、前記ソースデバイス変換モジュールから入手不可能な場合は前記カラーアピアランス空間の前記色値の明度と彩度に基づき、前記黒色重みを計算し、
前記カラーアピアランス空間の色値と前記黒色重みに基づきデスティネーション色値を計算することを特徴とする処理ステップ。
【請求項５１】
さらに、前記ソースデバイス変換モジュールを使用して、ソースデバイス色空間のソース画素の色値を前記カラーアピアランス色空間の色値に対応する色値に変換することを特徴とする請求項50に記載された処理ステップ。
【請求項５２】
前記ソースデバイス色空間の種類が三原色色空間である場合、前記黒色重みは、前記三原色色空間の最小値に基づいて取得される請求項50に記載されたコンピュータ実行可能処理ステップ。
【請求項５３】
前記ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合、前記K値と残りの色成分の最小値に基づき前記黒色重みを取得することを特徴とする請求項50に記載された処理ステップ。
【請求項５４】
前記デスティネーション色空間はCMYKであり、前記計算は、前記取得した黒色重みに基づき目標K値を選択し、前記目標K値と前記カラーアピアランス空間の色に基づきC、M、Y、Kの値を計算することを特徴とする請求項51または請求項52に記載された処理ステップ。
【請求項５５】
前記C、M、Yの値は、前記目標K値に基づき選択した、CMYからカラーアピアランス空間へのLUTから、補間により算出することを特徴とする請求項55に記載された処理ステップ。
【請求項５６】
カラーアピアランス空間の色値を黒色チャネルを含むデスティネーション色空間に変換する請求項50から請求項55の何れかに記載されたコンピュータが実行可能な処理ステップが記録されたコンピュータが読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、CMYK等の黒チャネルを含むデバイス空間の色値に色を変換する色管理方法に関する。
【背景技術】
【０００２】
色管理システムは、デバイスに依存する色空間からデバイスに依存しない色空間へ色を変換し、デバイスに依存しない色空間からデバイスに依存する色空間へ色を変換するために、色変換を利用する。種々のデバイスが様々な方法で色を表示するため、この方法は有益である。例えば、表示装置は、赤色、緑色、青色(RGB)の光を混合して色を表示する。一方、プリンタは、シアン、マゼンタ、イエローと黒色(CMYK)のインクの混合を、色の印刷に利用する。RGBディスプレイに表示した画像が、CMYKプリンタで印刷した画像と同一に見えるようにするには、二つの異なるデバイス間において色の忠実性を維持することが有益である。色の忠実性を維持するためには、RGB値をデバイスに依存しないカラーアピアランス空間に変換し、その後、デバイスに依存しない色空間の色をCMYK値に変換する。このようにして、異なるデバイス間で、色が正確にマッピングされ再現される。
【０００３】
このマッピングは、一般的に、色変換により達成される。従来から、色変換は、複数の既知の入力に対する特定のデバイスの出力を測定することにより作成される。例えば、CMYKプリンタ用の色変換は、複数のCMYK値に対してプリンタが印刷する色パッチを測定することで算出することができる。測定値は、測色計または分光測光器等の色測定装置によって取得される。そして測定値は、CIEXYZ、CIELab、CIECAMまたはCIELuv等のデバイスに依存しない色空間にある。色管理システムは、測定値を使用して、特定のCMYK値に対してプリンタが生成するデバイスに依存しない色を予測することができる。
【０００４】
しかし、色管理システムは、デバイスに依存しない三次元の色値からデバイスに依存する四次元のCMYK値への逆方向の変換に依拠する。この変換は、黒(K)チャネルによって追加される自由度のために複雑である。四つ以上の色成分を有する他の色空間と同様に、三次元のデバイスに依存しない色空間の観点からは、CMYK空間を充分に特定することはできない(under-specified)。言い換えれば、理論上、異なる量のシアン、マゼンタ、イエロー(CMY)と、異なる量の黒色インク(K)を使用して、デバイスに依存しない空間における同一色を生成することができる。従って、デバイスに依存しないカラーアピアランス空間からCMYK空間への唯一の、一対一のマッピングは数学的に不可能であり、不充分な規定が与えるインク値の選択の融通性は望ましいものではない。しかし、あるレベルの黒色インクは視覚的に不満足な色を生成する可能性があるので、この融通性は、潜在的に、不満足な変換を招くことがある。例えば、少量の黒色インクで数学的に正確な変換が見付かったとしても、グレイ等の無彩色は、黒色インクの量が多い法がより好ましく見える。一方、鮮やかな有彩色は、黒色インクの量が少ない方がより鮮明に見える。従って、二つのデバイスにより生成された色がより類似して見えるように、CMYKデバイスにおいて、ソースデバイスの黒色インク特性を再現することが望ましい。
【０００５】
さらに、他の理由により、黒色インク量を制御することが望ましい場合がある。例えば、一般に黒色インクは最も安価であるから、できる限り多くの黒色インクを常に使用するのが望ましい。あるいは、より少ない黒色インクと、より多くのカラーインクの使用は、カラートラッピング処理の結果を向上することができ、有益であろう。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
RGBデバイス空間から、または、別のCMYKデバイス空間からの変換等、CMYKデバイス空間への変換におけるKレベルの制御が試みられた。しかし、それら試みは、カラーアピアランス空間からCMYK空間への変換におけるKレベルの制御に関する問題を満足に解決していない。無彩カラーアピアランス空間と有彩カラーアピアランス空間において異なる方法で値を変換する試みもあるが、それらも不満足なものである。さらに、そのようなすべての従来の試みは、ソースデバイス空間として黒色チャネルを含まないデバイス空間（RGB等）と黒色チャネルを含むデバイス空間（CMYK等）がある可能性には充分に対処していない。
【課題を解決するための手段】
【０００７】
一つの面において、K値を目標色値の明度および無彩色度(neutrality)に基づき選択する。そして、CMY値を、選択したK値および目標値に基づき得る。
【０００８】
この面によれば、目標内部色値を受信し、複数のCMYルックアップテーブル(LUT)の一つを目標内部色値の明度値と無彩色度に基づき選択する。各CMY LUTは、Kの固定値をCMY空間から内部色空間にマッピングし、選択したテーブルは目標色を含む。次に、CMY値を、選択したLUTと目標内部色値から補間する。最後に、補間したCMY値と選択したテーブルに関連するK値を、変換後のCMYK色値として供給する。
【０００９】
さらに好適な面によれば、次のようにしてCMYテーブルを選択する。まず、目標内部色値の無彩色度を判定する。そして、目標内部色値が無彩色と判定された場合は目標内部色値を含むKの最大値に関連するCMY LUTを選択し、目標内部色値が有彩色と判定された場合は目標内部色値を含むKの最小値に関連するCMY LUTを選択する。
【００１０】
Kの特定の値に調整された複数のCMY LUTの一つからCMY値を補間し、目標内部色値の明度と無彩色度に基づきCMY LUTを選択することで、カラーアピアランス空間からCMYKの変換における出力K値の高精度の制御が可能になる。このようにして、無彩色と有彩色を、より高精度、より高品質に再現する。
【００１１】
さらに好適な面によれば、CMY値を補間するステップは、補間したCMY値に対応するカラーアピアランス空間値の誤差を算出することで完成する。算出した誤差を、所定の誤差閾値と比較する。所定の閾値を満す場合、補間したCMY値を供給する。所定の誤差閾値が満さない場合、新たにCMY LUTを選択し、新たなCMY値を、新たに選択したLUTと目標内部色値から補間する。
【００１２】
補間は、ニュートン法とヤコビアンを使用して達成してもよい。
【００１３】
さらに好適な面によれば、次のようにして複数のCMYルックアップテーブルを作成する。つまり、CMYKデバイス用の複数のCMYK値に関するカラーアピアランス空間形式の測定データを取得し、複数の三次元CMYを色空間知覚空間LUTに組み込む。ここで、各テーブルは、Kの特定の値に対応するカラーアピアランス空間の測定値を含む。
【００１４】
測定データは、CMYKデバイスの出力を色測定装置によって測定して取得してもよいし、あるいは、CMYKデバイスに関する既存の色変換によって複数のCMYK色サンプルをカラーアピアランス空間値に変換して取得してもよい。
【００１５】
上記の面に応じた色管理システムが提供される。
【００１６】
第二の面によれば、複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に色を変換するために、ソースデバイス色空間の色に対する黒色重みを取得する。黒色重みは、デスティネーションデバイスのデスティネーション値の計算に使用する。融通性のために、ソースデバイスが黒色チャネルを含む場合は黒色重みをソース黒色チャネルから計算し、ソースデバイスが黒色チャネルを含まない場合は黒色重みをソースデバイス色の色純度(color purity)から計算する。
【００１７】
従って、第二の面によれば、色は、複数のソースデバイス色空間の一つから黒色チャネルを含むデスティネーション色空間に変換される。変換は、ソースデバイス色空間におけるソース画素の黒色重みの取得を含む。ソース色空間が黒色チャネルを含む場合は黒色重みをソース色空間の黒色チャネルに基づき取得し、ソース色空間が黒色チャネルを含まない場合は黒色重みを色純度に基づき取得する。ソース画素をカラーアピアランス空間の色に変換し、デスティネーション色値をカラーアピアランス空間の色および取得した黒色重みに基づき計算する。
【００１８】
ソースデバイス色空間の画素の黒色重みを取得し、黒色重みをデスティネーション色値の計算に利用することで、ソース色空間の黒色重みを、デスティネーション空間の黒色チャネルに関する「暗示(hint)」として、より効果的に使用する。従って、ソースデバイスが使用する黒色の量は、デスティネーションデバイスが使用する黒色の量に、より正確に反映される。さらに、ソースが黒色チャネルを含まない場合も、黒色重みを計算するから、種々のソース空間を収容する場合の融通性が達成される。
【００１９】
さらに好適な面によれば、ソースデバイス色空間の種類が三色空間(trichromatic color space)の場合は、三色空間のソース画素の相対純度から黒色重みを得る。ソースデバイス色空間の種類がKチャネルを含むデバイス空間の場合は、ソース画素のK値をデバイスに依存しない明度値に変換することで黒色重みを得る。
【００２０】
デスティネーションデバイスがCMYKデバイスの場合、まず、取得した黒色重みに基づきK値を選択し、その後、選択したK値およびカラーアピアランス空間の色に基づきC、M、Y値を算出して、CMYK値を計算する。あるいは、デスティネーションデバイスがCMYKデバイスである場合、CMYからカラーアピアランス空間へのLUTから補間演算によってC、M、Y値を算出する。使用するLUTは、選択したK値に基づき選定する。
【００２１】
色管理システムは、複数のソースデバイス色空間の一つからデスティネーション色空間に色を変換するために提供される。システムは、ソースデバイス色空間におけるソース画素の黒色重みを計算し、ソース画素をカラーアピアランス空間の色に変換するソースデバイスモジュールを含む。ソース色空間が黒色チャネルを含む場合は黒色重みをソース色空間の黒色チャネルに基づき計算し、ソース色空間が黒色チャネルを含まない場合は黒色重みを色純度に基づき計算する。さらに、システムは、カラーアピアランス空間の色と黒色重みからCMYK値を計算するデスティネーションデバイスモジュールを含む。黒色重みは、ソースデバイスモジュールからデスティネーションデバイスモジュールに直接渡される。
【００２２】
第二の面に類似する他の面である第三の面によれば、ソースデバイス色空間の色値の無彩色度に基づき黒色重みを決定する。
【発明の効果】
【００２３】
本発明の本質をすばやく理解するために概要を説明した。添付する図面と関連する、以下の好適な実施例の詳細な説明を参照することで、本発明は、さらに完璧に理解されるだろう。
【発明を実施するための最良の形態】
【００２４】
【実施例１】
【００２５】
実施例1は、カラーアピアランス空間値をCMYK値に変換する色管理方法を提供する。ここで、Kチャネルに対する制御は維持される。
【００２６】
通常、実施例1は、コンピュータ環境において実行される。典型的なコンピュータシステムは、コンピュータ装置、周辺装置およびディジタル装置を含む。コンピュータ装置はホストプロセッサを有する。ホストプロセッサは、パーソナルコンピュータ（以下「PC」と呼ぶ）で、好ましくはMicrosoft（登録商標）Windows（登録商標）98、2000、Me、XPまたはNTなどのウィンドウ処理環境、または、LINUXなどの他のウィンドウ処理システムを有するIBM（登録商標）PC互換のコンピュータを含む。あるいは、ホストプロセッサは、Apple（登録商標）コンピュータまたは他の非ウィンドウベースのコンピュータでもよい。コンピュータ装置は、表示画面をもつカラーモニタ、テキストデータとユーザコマンドを入力するためのキーボード、ポインティングデバイスを有する。ポインティングデバイスは、表示画面上に表示されるオブジェクトをポインティングおよび操作するためにマウスが好ましい。
【００２７】
コンピュータ装置は、固定ディスクやフレキシブルディスク(FD)のようなコンピュータが読み取り可能なメモリ媒体のディスクドライブを有する。FDドライブは、リムーバブルメモリ媒体に格納された画像データ、コンピュータが実行可能な処理ステップ（以下、単に処理ステップ）およびアプリケーションプログラムなどの情報に、コンピュータ装置がアクセスするための手段を提供する。あるいは、USBポートに接続されたUSB記憶装置などの他の手段を介して、または、ネットワークインタフェイスを介して、上記の情報を検索し取得することが可能である。また、コンピュータ装置に組み込まれたCD-ROMドライブおよび/またはDVDドライブによって、コンピュータ装置は、リムーバブルなCD-ROMおよびDVD媒体に格納された情報にアクセスすることができる。
【００２８】
一般に、種々の周辺装置がコンピュータシステムにおいて使用される。例えば、紙またはOHPフィルム等の記録媒体にカラー画像を形成するバブルジェット（登録商標）プリンタやカラーレーザプリンタが使用される。プリンタは、シアン、マゼンタ、イエローおよび黒色のインクを使用してカラー画像を形成することが好ましい。
【００２９】
コンピュータ装置のホストプロセッサの内部アーキテクチャは、コンピュータバスと接続する中央演算装置(CPU)を有する。コンピュータバスと接続するものには、固定ディスク、ネットワークインタフェイス、実行時の一時主記憶として使用されるランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、FDインタフェイスがある。さらに、モニタ用のディスプレイインタフェイス(I/F)、キーボード用のキーボードI/F、ポインティングデバイス用のマウスI/F、スキャナ用のスキャナI/F、プリンタ用のプリンタI/F、ディジタルカメラ用のデジタルカメラI/Fがある。
【００３０】
オペレーティングシステム(OS)などのソフトウェアプログラム、色管理モジュールなどのアプリケーションプログラム(AP)、および、デバイスドライバの実行中、RAMは、RAMに格納された情報をCPUに供給するために、コンピュータバスとインタフェイスする。具体的には、CPUは、まず、処理ステップを固定ディスクまたは別の記憶装置からRAMの領域にロードする。そして、CPUは、ロードした処理ステップを実行するために、RAMに格納した処理ステップを実行する。カラー画像、測色値、色変換または他の情報のようなデータにアクセスし、および/または、当該データを変更する必要がある処理ステップの実行中、CPUによる当該データのアクセスを可能にするために、当該データをRAMに格納することができる。
【００３１】
固定ディスクは、OSおよび色管理システムプログラムなどのAPを記憶する。固定ディスクは、さらにデジタルカメラドライバ、モニタドライバ、プリンタドライバ、スキャナドライバ、その他のデバイスドライバを記憶する。さらに、固定ディスクは、画像ファイル、その他のファイル、後述する変換ベースのデバイスプロファイル、色管理モジュールを記憶する。
【００３２】
実施例1の色管理方法は、アプリケーションプログラムの一つのであるプリンタドライバやOSのような、CPUが実行する、固定ディスクに格納された処理ステップにより実行されることが好ましい。色管理方法は、プリンタ内に含まれるソフトウェアまたはハードウェアにより実行することもできる。以下では、Kチャネルを制御して、カラーアピアランス空間値をCMYK値に変換する処理ステップを、さらに詳細に説明する。
【００３３】
図1はデスティネーションデバイスがCMYKデバイスである色管理システムを示す図である。色管理モジュール(CMM) 100は、ソースデバイス変換102を利用して、ソースデバイス101によって出力されたデバイスに依存する色値を内部カラーアピアランス空間に変換する。カラーアピアランス空間は、CIELab、CIECAM、CIELuvを含む様々な形式で実現可能である。CMM 100は、一般的に、カラーアピアランス空間の色データに色域マッピング等の色処理操作を行う。CMM 100は、カラーアピアランス空間→CMYK変換103を利用して、カラーアピアランス空間値をCMYKデバイス104によって使用可能なCMYK値に変換する。
【００３４】
実施例1は、K（黒色インク）チャネルによる制御(control over the K channel)を整備(maintain)して、カラーアピアランス空間からCMYKへ変換する方法を提示する。通常、グレイのような無彩色は、黒色インクを多くした方がより好ましく見え、鮮やかな有彩色は、黒色インクの量が少ない方がより鮮明に見える。従って、Kチャネルによる制御を整備して変換することは有益である。CMYK色空間は過剰(overspecified)に特定される。つまり、同一色を生成するために、シアン、マゼンタ、イエロー(CMY)の量を変更して、異なる量の黒色インク(K)を使用することができる。そのため、カラーアピアランス空間からCMYK空間に変換する場合、二つ以上の定義が存在する。すなわち、四から三への変換であるCMYK→カラーアピアランス空間変換を反転して、逆変換を生成することはできない。
【００３５】
従って、第一のステップにおいて、それぞれがCMYをカラーアピアランス空間にマッピングする複数のLUTを作成する。各テーブルは、Kの一定値の下の三次元LUT(3D LUT)である。図2は複数のテーブルを作成する一方法を示す図である。CMYK色サンプル201は、CMYK→カラーアピアランス空間変換202に入力される。変換202は、カラーアピアランス空間からCMYKへの変換が要求されたデバイスに関連する順方向（つまり、CMYKからカラーアピアランス空間への）変換である。実際には、CMYK色サンプル201を変換202に通すことで、関連するCMYKデバイスの「擬似測色値(pseudo color measurments)」を作成する。
【００３６】
測色値は、サンプルのK値に対応するLUT 203に入力される。LUT 203の一つのLUTの各エントリは、一定のK値とCMY色成分により定義される色をカラーアピアランス空間の色にマッピングする。実施例1においては51個のLUTを作成する。LUTのK値は、K=0〜255の範囲を五刻みにした十進値である。Kチャネルに対して望まれる制御度に応じて、より多くの、または、より少ないテーブルが使用される。各LUT 203は、関連するK値に従い、LUTに含まれるカラーアピアランス空間値の最小の明度値と最大の明度値を格納する。例えば、CIECAM(Jab)カラーアピアランス空間の場合は、最小のJ値と最大のJ値を格納する。CIELabカラーアピアランス空間の場合は、最小のL値と最大のL値を格納する。
【００３７】
所望のCMYKデバイスの実際の測色値が入手可能な場合、図2に示すCMY→カラーアピアランス空間の51個のLUTを作成するための方法は不要かもしれない。そのような測色値は、K値に基づき異なるLUTに単純にグループ化することができる。そして、各LUTに最小と最大の明度値が格納される。
【００３８】
作成したLUT 203を、後で使用するために固定ディスクに格納してもよい。あるいは、ディスクスペースを節約するために、必要とする都度、LUT 203を再作成してもよい。勿論、LUT 203を記憶媒体内に配置し、アクセスする好ましい方法は多数存在する。
【００３９】
望む変換を生成するために、CMY→カラーアピアランス空間のLUT 203は反転可能である。図3は、その処理を示すフローチャートである。まず、ステップS301で、目標カラーアピアランス空間値（目標色値）を取得する。この目標色値は、CMYKに変換すべきカラーアピアランス空間値を表す。例えば、目標色値は、画像ファイルの一つの画素を表す。
【００４０】
次に、ステップS302で、目標色値の無彩色度(neutrality)と明度を判定する。Jab、Lab、Luvカラーアピアランス空間の場合、明度は単純にJ値またはL値である。目標色値の無彩色度は、無彩色軸からの所定の距離を参照して規定する。例えば、Jabカラーアピアランス空間において、Jは、a=b=0の無彩色軸である。a、bチャネル双方の絶対値が所定値より小さい色は無彩色と定義する。例えば、内部色値のa、bチャネルの範囲が-100〜+100の場合、無彩色は|a|＜3、かつ、|b|＜3である任意の内部色値と定義される。a、bチャネルの絶対値が3以上の場合、その色は有彩色として決定される。
【００４１】
ステップS303で、目標色値が無彩色か有彩色かを決定する。目標色値が無彩色である場合、ステップS305で、51個のLUTから目標色を含む可能性がある、最大のK値を有する一つのLUTを選択する。同様に、ステップS303で目標色値が有彩色であると決定した場合は、ステップS304で、51個のLUTから目標色を含む可能性がある、最小のK値を有する一つのLUTを選択する。ステップS304とS305においては、目標色値の明度がLUTに格納された明度の範囲内にある場合、そのLUTに目標色値が含まれるだろうと判定する。
【００４２】
次に、目標色値が無彩色でも有彩色でも、それぞれステップS306とS307で、目標色値に基づき、選択したテーブルからCMY値を補間する。補間処理は、以下で、さらに詳細に説明する。
【００４３】
図4はステップS306において、無彩色の目標色値に基づき、選択したテーブルからCMY値を補間する処理を示すフローチャートである。使用する補間処理はニュートン法である。まず、ステップS401で、CMYを初期推量する。C、M、Yの範囲が0.0〜1.0の場合、CMYの初期推量値は(0.3, 0.3, 0.3)が好ましい。これは、CMY各チャネル30%に対応する。
【００４４】
ステップS402で、CMY推量値(gC, gM, gY)を選択したLUTに入力して、カラーアピアランス空間値を取得する。カラーアピアランス空間と目標色値がLab形式の場合、LUTはCMY→LabのLUTである。同様に、カラーアピアランス空間がJab形式の場合、LUTはCMY→JabのLUTである。Labカラーアピアランス空間の場合、CMY推量は、Lab推量値(gL, ga, gb)を返す。取得したLab推量値を、目標色値(tL, ta, tb)と比較する。ステップS403で、誤差を計算し格納する。誤差は、Lab推量値と目標色値の間のユークリッド距離として定義する。
【００４５】
ステップS404で、計算された誤差を、この例では0.001に設定された、所定の誤差閾値と比較する。誤差が所定の誤差閾値より小さい場合、補間は正確であると考えられ、ステップS404からS409に進む。なお、この比較には、誤差の二乗と閾値の二乗を使用すれば充分である。これにより、平方根の計算が不要になり、精度を犠牲にせずに、速度が向上する。ステップS409で、現在のCMYの推量値を、補間したCMY値として、図3のステップS308に供給する。
【００４６】
誤差が所定の誤差閾値よりも大きい場合、ステップS404からS405に進む。ステップS405で、推量を十回行ったか否かを判定する。なお、十回の推量は、好ましい繰り返し数である。収束するという条件の下、より大きい値、または、より小さい値を使用することができる。十回の推量が行われていない場合、ステップS405からS406とS407に進む。それらステップで、現在のCMY推量値における、LUTのヤコビアン(j)または三次元導関数(three dimensional derivative)を計算する。計算したヤコビアンと、誤差を、新たな推量値の計算に使用する。
【００４７】
新たな推量値は、以下の式に従い、ニュートンステップの差分(d)を算出することにより計算される。
(d) = (tL - gL, ta - ga, tb - gb)
【００４８】
ニュートンステップは、jを計算したヤコビアンとすると、xに対して以下の式を解くことで算出する。
j・x = (d)
【００４９】
CMYの新たな推量値は、前の推量値にxを加算することにより計算される。そして、処理はステップS402に戻り、CMYの新たな推量値をLUTに入力する。
【００５０】
他方、推量値が所定の誤差閾値を満すことなく、推量（つまり繰り返し）が既に十回行われた場合は、ステップS405からS408に進む。この時点で、選択したLUTに目標色値が含まれる可能性があるとしても、望む精度で目標色値にマッピングするCMY値は見付けられないと判定する。従って、ステップS408では、前に選択したLUTに比べて、次に小さいK値を有するLUTを選択する。例えば、ステップS305においてK=225のLUTを選択した場合、ステップS408ではK=220のLUTを選択する。そして、新しく選択したLUTに基づく補間を実行するために、処理をステップS401に戻す。
【００５１】
処理は誤差閾値を満足するまで継続し、ステップS409で、補間したCMY値を供給する。すべての可能性があるLUTを試しても、誤差閾値を満足しない可能性がある。その場合、テーブルに関連するKに沿って、最小の誤差を返すCMY推量値を、補間した値として使用する。
【００５２】
図5はステップS307において、有彩色のCMY値を補間する処理を示すフローチャートである。この処理は、ステップS508を除いて、図4に示す処理と同じである。ステップS508では、前に選択したLUTに比べて、次に大きいK値を有するLUTを選択する。例えば、ステップS304においてK=15のLUTを選択した場合、ステップS508ではK=20のLUTを選択する。
【００５３】
最後に、図3に戻り、ステップS308で、補間したCMY値と、CMY値の補間に使用したテーブルに関連するKとを、変換したCMYK値として供給する。全体の処理が、CMYKに変換すべき目標色値ごとに繰り返される。
【００５４】
上述した、Kチャネルを制御して、カラーアピアランス空間値をCMYK値に変換する処理は、色管理システムにおいて使用される。例えば、上述の処理は、図1に示す変換103の代わりに使用することができる。さらに、実施例1は、プリンタドライバまたはプリンタ自体の処理ステップとして、カラーアピアランス空間値をCMYK値に変換する際に使用することができる。
【実施例２】
【００５５】
実施例2は、ソースデバイス色値の黒色重み情報を使用して、ソースデバイス色空間から黒色(K)チャネルを含むデスティネーションデバイス色空間に色値を変換する色管理システムを提供する。
【００５６】
実施例2の色管理システムは、デバイスドライバまたはコンピュータOSに含まれる色管理モジュール(CMM)等のコンピュータ環境において実行される。色管理システムは、コンピュータが読み取り可能な記憶媒体に格納された実行可能なコードとして構成される。CMMは、前記コードを利用して、ソースデバイス色空間からデスティネーションデバイス色空間への色変換を実行し、CMYKプリンタ等のデスティネーションデバイスに提供する。
【００５７】
実施例2は、ソースデバイス色空間からKチャネルを含むデスティネーションデバイス色空間への色変換に関連する。とくに、変換に関連する。その変換において、デスティネーションデバイスにおいて使用される黒色の量を選択するために使用される。黒色重みは、Kチャネルを含むソースデバイスと、Kチャネルを含まないソースデバイスの双方に対して計算される。ソースデバイス色空間の画素の黒色重みを取得し、デスティネーション色値の計算に黒色重みを利用する。実施例2では、デスティネーション空間の黒色チャネルに対する「暗示(hint)」として、ソース色空間の黒色重みを効果的に使用する。その結果、ソースデバイスが使用する黒色の量を、デスティネーションデバイスにおいて、より正確に反映することができる。さらに、ソースが黒色チャネルを含まない場合でも、黒色重みが計算されるため、種々のソース空間に対応する場合の融通性が達成される。
【００５８】
図6は実施例2の特徴を強調するのに有用な色管理システムを示す図である。CMM 600は、ソースデバイス変換602を利用して、ソースデバイス601によって出力されたデバイスに依存する色値を内部カラーアピアランス空間に変換する。カラーアピアランス空間は、CIELab、CIECAM、CIELuvを含む様々な形式で実現可能である。また、CMM 600は、一般的に、カラーアピアランス空間の色データに色域マッピング等の色処理操作を行う。例えば、色域マッピングモジュール603は、カラーアピアランス空間データをデスティネーションデバイス605の色域にマッピングする。色域マッピングされたカラーアピアランス空間データは、デスティネーションデバイス変換604により、デスティネーションデバイス色空間に変換される。
【００５９】
図7は実施例2の色管理システムを示す図である。ソースデバイスモジュール（以下、SDM）701は、色画素をソースデバイス色空間からカラーアピアランス空間の色に変換する。色域マッピングモジュール（以下、GMM）702は、カラーアピアランス空間のデータをデスティネーションデバイスの色域にマッピングする。また、SDM 701は、ソースデバイス色空間の画素ごとに黒色重み情報を計算する。黒色重みは、（技術的な正確さを欠くが）黒色プレーンにおける色画素の明度として解釈可能である。
【００６０】
CMYK色空間のようなKチャネルを含むソースデバイスの場合、SDM 701は、ソースデバイスと媒体の物理特性により、ソース画像において使用される黒色色材の量から、黒色重みを決定する。より詳しくは、SDM 701は、ソースデバイスの色変換を使用して、ソース画素のK値をデバイスに依存しない明度値に変換する。Kチャネルを含むソース色空間のソース画素の黒色重みは、本質的に、カラーアピアランス空間におけるソースKチャネルの明度である。
【００６１】
RGB色空間のようなKチャネルを含まないソースデバイスの場合、SDM 701は、ソースデバイス色空間の画素の色純度(color purity)から黒色重みを決定する。デバイス色材空間の色純度は、デバイス無彩色軸からの画素の距離である。RGB等の三色空間の色純度(CP)は、下式を使用して計算してもよい。
CP = {最大値(RGB) - 最小値(RGB)}/最大値(RGB)
【００６２】
例えば、色座標がRGB = (0.80, 0.10, 0.20)の画素の場合、最大値はR=0.80、最小値はG=0.10であるから、色純度CPは(0.80 - 0.10)/0.80 = 0.875である。色純度が比較的大きな値は、画素の黒色の量が少ないことを示す傾向にある。この色純度を黒色重みとして表すために、1から色純度を減算する。
黒色重み = (1 - CP)
【００６３】
従って、SDM 701は、(0.80, 0.10, 0.20)のRGB値を有する画素の黒色重みとして0.125を算出する。
【００６４】
SDM 701がソース画素の黒色重みを算出すると、黒色重み情報は、「枠を超えて(out-of-bounds)」、直接、デスティネーションデバイスモジュール（以下、DDM）703に渡される。つまり、黒色重み情報は、GMM 702のような中間モジュールおよび/またはオブジェクトをスキップし、直接、DMM 703によってSDM 701から取得される。SDM 701からDDM 703に黒色重み情報を直接入力する一方法は、マイクロソフト（登録商標）のWindows（登録商標）のコンポーネントオブジェクトモデル(COM)システムを使用することである。COMを使用すると、DDM 703は、SDM 701に対してQueryInterfaceコールを実行し、黒色重み情報を提供するインタフェイスのポインタを取得する。そして、DDM 703は、当該インタフェイスにおいてGetBlackWeightInformationメソッドをコールして、算出された黒色重みデータを取得する。処理する色データの画素または色ごとの浮動小数点数の配列により、黒色重み情報を表すことを推奨する。浮動小数点数の範囲は0.0〜1.0であるべきで、1.0は完全な黒色を、0.0は黒色ではないことを表す。
【００６５】
黒色重み情報を受信すると、DDM 703は、黒色重み情報に基づき、デスティネーションデバイス色空間において、画素ごとにK値を選択する。例えば、DDM 703は、デスティネーションデバイス変換を使用して、黒色重み値をデスティネーション色空間のK値に変換してもよい。そして、DDM 703は、選択したK値と色域マッピングされたカラーアピアランス空間データとに基づき、（CMYK空間のCMYのような）デスティネーション色空間の残るチャネルを計算する。なお、DDM 703は、黒色重み情報をクエリしても何も受信しない場合、または、QueryInterfaceコールに対して黒色重み情報に関するインタフェイスが取得できない場合、従来の方法によってデスティネーション色空間への変換を行う。このようにして、実施例2のDDM 703は、黒色重み情報を算出しないSDMや適切なCOMインタフェイスを提供しないSDMとの互換性を維持する。
【００６６】
また、DDM 703は、例えば、クエリが成功せず、または、QueryInterfaceコールに対して黒色重み情報に関するインタフェイスを取得できず、黒色重み情報が取得できない場合、実施例1に従いデスティネーション色空間への変換を行ってもよい。つまり、SDM 701から黒色重み情報を取得できない場合、DDM 703は、カラーアピアランス空間の色値の無彩色度に基づき、図3に示すステップS302〜S308に従い、デスティネーションデバイス空間の目標CMYK色を計算する。
【００６７】
以下では、デスティネーションデバイス605がCMYKデバイスである場合に、色域マッピングされたカラーアピアランス空間データをデスティネーションデバイス色値に変換する一処理を説明する。色域マッピングされたカラーアピアランス空間データをCMYK値に変換する第一のステップにおいて、三次元(3-D)のCMY→カラーアピアランス空間の複数のルックアップテーブル(LUT)を作成する。各テーブルは、Kの一定値の下の三次元LUT(3-D LUT)である。図8はLUTを作成する一方法を示すフローチャートである。CMYK色サンプル801は、CMYK→カラーアピアランス空間変換802に入力される。変換802は、カラーアピアランス空間からCMYKへの変換が要求されるデバイスに関連する順方向（つまり、CMYKからカラーアピアランス空間への）変換である。実際には、CMYK色サンプル801を変換802に通すことで、関連するCMYKデバイスの「擬似測色値」を作成する。
【００６８】
複数のCMY LUT 803を作成するために、擬似測色値は、サンプルのK値に対応するLUTに配置される。LUTの各エントリは、一定のK値とCMY色成分により定義される色をカラーアピアランス空間の色にマッピングする。実施例2においては51個のLUTを作成する。LUTのK値は、K=0〜K=255の範囲を五刻みにした十進値である。Kチャネルに対して望まれる制御度に応じて、より多くの、または、より少ないテーブルが使用される。各LUTは、関連するK値に従い、LUTに含まれるカラーアピアランス空間値の最小の明度値と最大の明度値を格納する。例えば、CIECAM(Jab)カラーアピアランス空間の場合は、最小のJ値と最大のJ値が格納される。CIELabカラーアピアランス空間の場合は、最小のL値と最大のL値が格納される。
【００６９】
所望のCMYKデバイスの実際の測色値が入手可能な場合、図8に示すCMY→カラーアピアランス空間の51個のLUTを作成するための方法は不要かもしれない。そのような測色値は、K値に基づき異なるLUTに単純にグループ化することができる。各LUTに最小と最大の明度値が格納される。
【００７０】
作成したLUTを、後で使用するために固定ディスクに格納してよもい。あるいは、ディスクスペースを節約するために、必要とする都度、LUTを再作成してもよい。勿論、LUTを記憶媒体内に配置し、アクセスする好ましい方法は多数存在する。
【００７１】
望む変換を生成するために、三次元のCMY→カラーアピアランス空間のLUTは反転可能である。図9は、その処理を示すフローチャートである。図9に示すフローシーケンスは、実行可能コードとしてコンピュータが読み取り可能なメモリ媒体に格納され、図9に示すシーケンスを遂行するためにプロセッサによって実行される。簡単に説明すると、まず、黒色重み情報を受信することで変換を開始する。次に、黒色重み情報に基づき、複数のCMYルックアップテーブルの一つを選択する。最後に、選択したルックアップテーブルによる補間に基づき、CMYK値が供給される。
【００７２】
ステップS901で、SDMから黒色重み情報を取得する。次に、ステップS902で、黒色重み情報に基づきK値を計算し、計算したK値に関連する一つのLUTを複数のLUTから選択する。黒色重み情報は、デスティネーションデバイスにおける所望のKの比率を表す。黒色重み情報に255（Kの範囲の最大値）を乗算し、その積にK値が最も近いLUTを選択する。つまり、処理は、黒色重みに最も近いK値の比率を有する一つのテーブルを複数のルックアップテーブルから選択する。例えば、黒色重み0.55は、0.55×255=140.25であるから、K=140のLUTに対応する。
【００７３】
次に、ステップS903で、選択したLUTからCMY値を補間する。図10は、ステップ903の処理をさらに詳細に示すフローチャートである。まず、ステップS1001で、CMYを初期推量する。C、M、Yの範囲が0.0〜1.0の場合、CMYの初期推量は(0.3, 0.3, 0.3)でもよく、この推量値を、値に関係なくすべての画素に使用する。この初期推量値は、CMY各チャネル30%に対応する。
【００７４】
ステップS1002で、CMY推量値(gC, gM, gY)を選択したLUTに入力して、対応するカラーアピアランス空間値を取得する。例えば、カラーアピアランス空間と目標色値がLab形式の場合、LUTはCMY→LabのLUTである。同様に、カラーアピアランス空間がJab形式の場合、LUTはCMY→JabのLUTである。Labカラーアピアランス空間の場合、CMY推量値は、選択したLUTのLab推量値(gL, ga, gb)に対応する。ステップS1003で、取得したLab推量値を目標色値(tL, ta, tb)と比較し、誤差を計算して格納する。誤差は、Lab推量値と目標色値の間のユークリッド距離として定義される。
【００７５】
ステップS1004で、誤差を、例えば0.001である所定の誤差閾値と比較する。誤差が所定の誤差閾値より小さい場合、補間は正確であると考えられ、処理はステップS1009に進む。なお、この比較には、誤差の二乗と閾値の二乗を使用すればよい。これにより、平方根の計算が不要になり、精度を犠牲にせずに、速度が向上する。ステップS1009で、現在のCMYの推量値を、補間したCMY値として、図9に示すステップS904に供給する。
【００７６】
ステップS1004の比較で、誤差が所定の誤差閾値より大きい場合、処理はステップS1004からS1005に進む。ステップS1005では、繰り返しを十回行ったか否かを判定する。なお、十回の繰り返しは、好ましい繰り返し数である。収束するという条件の下、より大きい値、または、より小さい値を使用することができる。十回の繰り返しが行われていない場合、処理はステップS1006に進む。ステップS1006では、現在の繰り返しのCMY推量値における、LUTのヤコビアン(j)または三次元導関数を計算する。ステップS1007では、計算したヤコビアンと、誤差を、新たな繰り返しのCMY値の計算に使用する。
【００７７】
新たなCMY値は、以下の式に従い、ニュートンステップの差分(d)を算出することにより計算される。
(d) = (tL-gL, ta-ga, tb-gb)
【００７８】
ニュートンステップは、jを計算したヤコビアンとすると、xに対して以下の式を解くことで算出する。
j・x = (d)
【００７９】
この繰り返しに対する新たなCMY値は、前の繰り返しのCMY値にxを加算することにより計算される。そして、処理はステップS1002に戻り、新たなCMY値を現在選択しているLUTに入力する。
【００８０】
他方、所定の誤差閾値を満すことなく、繰り返しが十回行われた場合、処理はステップS1005からS1008に進む。この時点で、先の十回の繰り返しから、最小の誤差を有するCMY値を選択する。そして、ステップS1009で、現在の繰り返しのCMY値を、補間したCMY値として図9に示すステップS904に供給する。
【００８１】
図9に戻り、ステップS904で、ステップS1009で補間したCMY値と、現在選択しているLUTのK値を、CMYK値として供給する。この値は、印刷のようなCMYKデバイスによる描画のために出力される。処理は、画像の全画素に対して繰り返される。値のキャッシュは、コンピュータグラフィック画像にみられるようなソース画像において、色値の反復が非常に多い場合に、処理を高速化するために実行される。
【００８２】
補間されたCMY値は他の方法でも計算することができる。例えば、ステップS903において、ある範囲のCMY値を、選択したLUTのK値に近いK値をもつLUTから補間する。そして、最終的な補間したCMY値を生成するために、選択したLUTから補間したCMY値を含む、ある範囲の複数の補間したCMY値を平均化してもよい。
【００８３】
色管理システムにおける、Kチャネルを制御してカラーアピアランス空間値をCMYKの値に変換する処理を説明した。さらに、実施例2は、プリンタドライバまたはプリンタ自体の処理ステップとして、カラーアピアランス空間値をCMYK値に変換する際に使用することができる。
【実施例３】
【００８４】
実施例2のデスティネーションデバイスモジュール(DDM)は、黒色重み情報が入手可能な場合、ソースデバイスモジュール(SDM)から供給される黒色重み情報にある程度基づきカラーアピアランス空間の色値をデスティネーションCMYK空間の色値に変換する。また、黒色重み情報がSDMから入手不可能な場合、実施例1で説明したようにカラーアピアランス空間の色値の無彩色度に基づき変換する。実施例3が実施例2と異なる点は、SDMから黒色重み情報が入手可能か否かに関わらず、黒色重み情報をDDMに供給する黒色重みインタフェイスを提供することである。SDMが黒色重み情報を提供する場合、黒色重みインタフェイスはSDMが提供する黒色重み情報をDDMに供給し、DDMは色値をカラーアピアランス空間からデスティネーションデバイス空間に変換する。一方、SDMが黒色重み情報を提供しない場合、黒色重みインタフェイスは、カラーアピアランス空間の色値の無彩色度に基づき、最適な黒色重みを予測する。無彩色度は、カラーアピアランス空間の色値の明度と彩度(colorfulness)に基づいてもよい。予測された黒色重み情報はDDMに供給され、DDMは、カラーアピアランス空間からデスティネーションデバイス空間への色値の変換において、SDMから黒色重み情報が供給されたかのように、黒色重み情報を利用する。以下では、さらに詳細に説明する。
【００８５】
図11は実施例3の色管理システムを示す図である。図示するように、ソースデバイス色空間の色値は、ソースデバイス変換モジュール（以下、SDTM）1102によってカラーアピアランス色空間に変換され、色域マッピングモジュール(GMM) 1103によって色域マッピングされる。デスティネーションデバイス変換モジュール（以下、DDTM）1104は、色域マッピングされたカラーアピアランス空間データを変換して、デスティネーションデバイス色空間の色値を得る。DDTM 1104は、黒色重みインタフェイス1104aによって供給される黒色重み情報に依存する。黒色重みインタフェイス1104aは、SDTM 1102から黒色重み情報が入手可能な場合は、SDTM 1102から黒色重み情報を取得する。また、SDTM 1102から黒色重み情報が入手不可能な場合は、カラーアピアランス空間の色値の明度および彩度(colorfulness)に基づき、黒色重み情報を計算する。
【００８６】
上記のアーキテクチャは、オブジェクト指向フレームワークまたはプラグインフレームワークにおいて提供される各モジュールを認識する。そのような各モジュールは最小限の機能性を提供すると推測され、機能の拡張性は提供されてもされなくてもよい。例えば、SDTM 1102は、ソースデバイス色空間からカラーアピアランス空間に色値を変換する最小限の機能を提供すると推測される。しかし、SDTM 1102は、拡張機能として、黒色重み情報の計算、および、DDTM 1104への黒色重み情報の提供に対応しない。同様に、GMM 1103は、色域マッピングの最小限の機能を提供すると推測されるが、オブジェクト指向またはプラグインアーキテクチャにおいて、厳密な特性および最小限の機能の実現は、システムの他のオブジェクトに対して透過的である。従って、DDTM 1104がSDTM 1102により実行される色変換の最小限の機能に依存する場合でも、DDTM 1104からみると、SDTM 1102から黒色重み情報が提供されない可能性がある。実施例3によれば、DDTM 1104は、黒色重み情報を提供する黒色重みインタフェイス1104aに依存する。その結果、黒色重みインタフェイス1104aは、入手可能な場合はSDTM 1102から黒色重み情報を取得し、入手不可能な場合は最適な黒色重み値を予測する。黒色重みの情報源はDDTM 1104に対して透過的であるから、DDTM 1104は、黒色重みの情報源に関わらず変化しない一貫した実装(consistent implementation)を使用して、機能を実行することができ、情報源の認識(knowledge)に依存しない。
【００８７】
特定の好適な実装(implementations)において、DDTM 1104は、デスティネーションデバイス色空間のCMY値をカラーアピアランス空間にマップする複数の三次元ルックアップテーブル(3-D LUT)を使用して色値を変換する。各3-D LUTは、実施例1および実施例2において説明したように、Kの一定値の下の三次元LUT (3D-LUT)である。各3-D LUTは、順方向変換（つまりデスティネーションデバイスのCMYK空間→カラーアピアランス空間）である。従って、デスティネーションデバイス色空間のデスティネーションデバイス色値を取得するために、カラーアピアランス空間の色値を考慮すると、3-D LUTのうち、選択したLUTを反転する必要がある。この目的に、実施例1および実施例2による逆補間を採用する。
【００８８】
補間される3-D LUTのうち、選択された一つ以上のLUTを識別するために、黒色重み情報を利用する。実施例3において、黒色重み情報は黒色重みインタフェイス1104aから取得される。上述したように、黒色重みインタフェイス1104aは、SDTM 1102から黒色重み情報を取得するか、最適な黒色重みを予測する。黒色重み情報はGMM 1103をバイパスさせて、色域マッピング結果に関わらず黒色重み情報を維持することが好ましい。
【００８９】
図12は実施例3の処理を示すフローチャートである。SDTM 1102は、ステップS1201でソースデバイス色空間の色値を受信し、ステップS1202で、ソースデバイス色空間の色値に基づき黒色重みを計算する。黒色重み情報を得るために任意の計測値を使用できるが、実施例2のソースデバイスモジュール701の機能に従い黒色重み情報を取得するのが好ましい。従って、ステップS1202において、SDTM 1102は、ソースデバイス色空間が（CMYK色空間のように）黒色(K)チャネルを含むか、（RGB色空間のように）Kチャネルを含まないかに応じて、異なる方法で黒色重みを計算する。ソースデバイス色空間がKチャネルを含む場合、SDTM 1102は、ソースデバイスの色変換を使用した、ソース画素のK値からデバイスに依存しない明度値への変換に基づき、黒色重みを計算する。Kチャネルを含まないソース色空間の場合、ソースデバイス変換モジュール1102は、色純度により黒色重みを計算して、ソースデバイス色空間の画素の色純度から黒色重みを決定する。これらの方法は、実施例2において充分に説明した。
【００９０】
その後、処理はステップS1203に進み、SDTM 1102は、色値をソースデバイス色空間からカラーアピアランス色空間に変換する。ステップS1204で、GMM 1103は、ソースデバイス1101の色域とデスティネーションデバイス1105の色域の違いを考慮して、カラーアピアランス空間の色値を色域マッピングする。GMM 1103が利用する色域マッピングアルゴリズムは、任意の周知の色域マッピングアルゴリズム、または、まだ開発されていない色域マッピングアルゴリズムから選択してもよいし、ユーザの描画目的(rendering intent)の指示に基づき選択してもよい。
【００９１】
DDTM 1104は、カラーアピアランス空間の色域マッピングされた色値をデスティネーションデバイス色空間の色値に変換する。ステップS1205〜S1210は、この処理を説明する。
【００９２】
ステップS1205で、黒色重みインタフェイス1104aは、黒色重み情報がSDTM 1102から入手可能か否かを判定する。この判定の好ましい一方法は、SDTM 1102に対するCOMクエリの使用である。例えば、SDTM 1102においてIQueryInterfaceメソッドがコールされ、その結果を検査することで、SDTM 1102が黒色重み情報を提供するか否かを判定する。黒色重み情報が入手可能か否かを判定する別の方法は、SDTM 1102から黒色重み情報に対する候補値を取得して、-1など、黒色重み情報に逆らう無効のデフォルト値と、候補値を比較することである。候補値が無効のデフォルト値と等しい場合は黒色重み情報は入手不可能であり、候補値が無効のデフォルト値と異なる場合は黒色重み情報は入手可能である。
【００９３】
SDTM 1102から黒色重み情報が入手可能か否かに応じて処理は分岐する。黒色重み情報が入手可能な場合はステップS1206へ、入手不可能な場合はステップS1207へ分岐する。ステップS1206では、SDTM 1102から黒色重み情報が入手可能と判定されたため、黒色重みインタフェイス1104aは、SDTM 1102から黒色重みを取得する。SDTM 1102から黒色重み情報を提供する一方法は、実施例2で説明したように、コンポーネントオブジェクトモデル(COM)システムを使用することである。上述したように、COMは、SDTM 1102が黒色重みを計算しない従来のモジュールか、黒色重みをDDTM 1104に提供できない状況にある場合に、単純なデフォルト機構を提供するために好ましい。当然、DDTM 1104に黒色重みを提供するために、他の方法を利用してもよい。
【００９４】
一方、ステップS1205において、黒色重みインタフェイス1104aが黒色重み情報は入手不可能と判定した場合、処理はステップS1207に分岐する。そして、黒色重みインタフェイス1104aは、現在カラーアピアランス空間において表現されているGMM 1103から提供される色値に基づき、最適な黒色重みを予測する。黒色重みインタフェイス1104aは、カラーアピアランス空間の色値の無彩色度に基づき、黒色重み情報を計算するのが好ましい。無彩色度は、色値の明度と彩度の組み合せ値から予測してもよい。高無彩色（つまり、任意の有効な彩度がない色値）は、カラー色材ではなく、主に黒色色材によって描画するのが最も好ましいから、黒色重み情報は色の明度に関わらず、ほぼ1に対応すべきである。逆に、高彩度色は、黒色色材を殆ど使用せず、主にカラー色材で描画すべきであるから、黒色重みはほぼ0に対応すべきである。黒色重みインタフェイス1104aは、両極端の間で、組み合せに基づき黒色重みを計算する。例えば、ある彩度の暗い色は、カラー色材を少量使用して、主に黒色色材で描画されるべきであるから、黒色重み情報は1に近く、1よりはある程度小さい値に計算する。他方、色値が非常に高い明度を有する僅かに色が付いた明るい色は、黒色色材を少量使用して、殆どがカラー色材を使用して描画されるべきと考えられるから、僅かな彩度であっても、0に近く、0よりはある程度大きい、小さな黒色重みを提供すべきである。
【００９５】
黒色重みの情報源（つまり、黒色重み情報がSDTM 1102から提供されるか、最適な値に基づき計算されるか）に関わらず、黒色重みインタフェイス1104aは、黒色重み情報をデスティネーションデバイス変換1104に供給する。処理はステップS1208に進み、黒色重み情報が使用される。
【００９６】
ステップS1208で、DDTM 1104は黒色重みからK値を決定する。他の技術を使用してもよいが、複数の3-D CMY LUTのK値の範囲によってスケーリングされた黒色重み（0〜1の範囲）とする単純な技術が好ましい。実施例3において、K値は0〜255の範囲であるから、黒色重みと255を単純に乗算して、デスティネーションデバイスに出力する目標K値を得る。
【００９７】
ステップS1209で、目標K値に基づき、逆補間用の一つ以上の3-D CMY LUTを選択する。目標K値に最も近いK値を有する一つの3-D CMY LUTを単純に選択することでも、良好な結果が得られる。計算労力(computation effort)はかかるが、目標K値を括るK値を有する二つの3-D CMY LUTを選択することで、より高精度の結果が得られる。
【００９８】
ステップ1210で、選択した一つ以上のLUTに基づき、DDTM 1104は、選択した一つ以上のLUTを反転するために補間を行って、デスティネーションデバイス色座標のCMY値を取得する。反転のために一つのLUTを補間した場合、デスティネーションデバイス色空間のK値は、選択したLUTのK値と同一である。一方、複数のLUTを選択した場合、K値は、ステップS1207で計算された目標K値を使用するなど、代替手段によって選択してもよい。
【００９９】
ステップS1211で、デスティネーションデバイス1105によって描画するために、デスティネーションデバイス色空間のCMYK色値を出力する。
【０１００】
本発明の特定の実施例に関して上述した。本発明は、上述した実施例に限定されず、本発明の趣旨の範囲から逸脱せずに、当業者により様々な変更および変形が行われてもよいことが理解される。
【図面の簡単な説明】
【０１０１】
【図１】実施例1の色管理システムの動作を示すブロック図、
【図２】実施例1のKに基づくルックアップテーブルの作成を示すブロック図、
【図３】実施例1のカラーアピアランス空間値をCMYKに変換する処理を示すフローチャート、
【図４】実施例1の無彩色に対してCMY値を補間する処理を示すフローチャート、
【図５】実施例1の有彩色に対してCMY値を補間する処理を示すフローチャート、
【図６】実施例2の特徴を強調する色管理システムを示すブロック図、
【図７】実施例2の色管理システムを示すブロック図、
【図８】実施例2のKに基づく複数のCMYルックアップテーブルの作成を示すブロック図、
【図９】実施例2のカラーアピアランス空間値をCMYK値に変換する処理を示すフローチャート、
【図１０】実施例2の選択されたルックアップテーブルからCMYK値を補間する処理を示すフローチャート、
【図１１】実施例3の特徴を強調する色管理システムを示すブロック図、
【図１２】実施例3の色値をデスティネーションデバイス色空間に変換する処理を示すフローチャートである。
【図１】
2007537629.tif 000003
【図２】
2007537629.tif 000004
【図３】
2007537629.tif 000005
【図４】
2007537629.tif 000006
【図５】
2007537629.tif 000007
【図６】
2007537629.tif 000008
【図７】
2007537629.tif 000009
【図８】
2007537629.tif 000010
【図９】
2007537629.tif 000011
【図１０】
2007537629.tif 000012
【図１１】
2007537629.tif 000013
【図１２】
2007537629.tif 000014
【国際調査報告】
2007537629.tif 000015
2007537629.tif 000016