JP4262212B2 - 色処理方法及びその装置 - Google Patents

色処理方法及びその装置 Download PDF

Info

Publication number
JP4262212B2
JP4262212B2 JP2005066142A JP2005066142A JP4262212B2 JP 4262212 B2 JP4262212 B2 JP 4262212B2 JP 2005066142 A JP2005066142 A JP 2005066142A JP 2005066142 A JP2005066142 A JP 2005066142A JP 4262212 B2 JP4262212 B2 JP 4262212B2
Authority
JP
Japan
Prior art keywords
color
signal value
gamut
spline
profile
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005066142A
Other languages
English (en)
Other versions
JP2006253961A (ja
Inventor
寛親 松岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005066142A priority Critical patent/JP4262212B2/ja
Publication of JP2006253961A publication Critical patent/JP2006253961A/ja
Application granted granted Critical
Publication of JP4262212B2 publication Critical patent/JP4262212B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)

Description

本発明は、画像処理装置により、色信号値を算出する色処理方法及びその装置に関するものである。
近年、パーソナルコンピュータ/ワークステーションの普及に伴い、デスクトップ・パブリッシング(DTP)やCADが広く一般に使用されている。このような中で、コンピュータによってモニタ上で表現される色と、出力媒体上に再現される色とのマッチングを行う色再現技術が重要となっている。
例えば、DTP用のカラーモニタとカラープリンタを有するコンピュータシステムにおいては、モニタ上にてカラー画像の作成/編集/加工等を行い、成果物として画像をカラープリンタで出力するというワークフローで作業を行う。このワークフローに於いて、モニタ上のカラー画像と、プリンタのプリンタ出力画像とが知覚的に一致していることを、ユーザは強く望んでいる。
しかしながら、色再現技術において、モニタ上のカラー画像とプリンタ出力画像間では、このような知覚上の一致を図ることには困難が伴う。この困難は、以下の理由による。
CRTのカラーモニタにおいては、蛍光体を用いて特定波長の光を発光することによりカラー画像を表現する。他方、カラープリンタにおいては、インク等を用いて特定波長の光を吸収し、残りの反射光によってカラー画像を表現する。このように、画像表示形態が異なることに起因して、両者を比較すると色再現域が大きく異なる。さらに、カラーモニタであっても、液晶モニタと電子銃方式のブラウン管のモニタとでは色再現域が異なる。また、カラープリンタにあっても、紙質等の相違、あるいはインク組成の相違等により色再現域が異なる。
このため、カラーモニタ上のカラー画像と、カラープリンタのプリンタ出力画像、あるいは複数種の機種、複数種の紙質にて出力したカラープリンタのプリンタ出力画像において、これらの画像の色を測色的な意味において完全に一致させることは不可能である。
ここで、これら色再現域の異なる出力媒体間において、色再現域の相違を吸収すると共に表示画像の知覚的一致を計るための技術として、L*a*b*空間あるいはJCH空間等の色空間において、ある色再現域を別の色再現域内へ写像するガマットマッピング技術が存在する。
ガマットマッピング技術の一例としては、例えば、特許文献1に記載されたL軸上の一点を目標点として圧縮写像を行うような写像方法が存在する。しかしながら、このような写像方法によれば、図15のように、ガマット境界近辺で色の変化が急峻となって擬似輪郭等の画像障害が発生する場合がある。ここで、図15(a)の一点鎖線で表された色再現がモニタ色再現、図15(b)の実線で表された色再現が写像後のプリンタ色再現、図15(b)の点線はプリンタ色域である。
そこで、本出願人は、特願2003−416616の色処理装置を提案している。この提案は、非線型演算で色の算出を実現しており、複数の代表色から色を算出する際に色値の変化のトレンドを自然に反映して滑らかな変化で色を算出する。そのため、少ない代表色による色域写像でも精度良く色を算出できる。さらに、滑らかに色が変化するため、階調性を良好に保ったまま、色域写像に基づく色の算出が可能である。
特開2004−153338号公報
しかしながら、上記の色処理装置で開示されている技術によれば、非線型演算を定める際に、所定の色座標値を通過するように非線型演算の基底関数係数値を定めている。このような算出方法によれば、非線型演算は滑らかな演算特性を有するが、他方で、1次元のスプライン関数から容易に推察できるように、振動が発生する場合がある。
この振動を1次元B−Spline(B−スプライン)関数を例に説明すると、所定の色座標値を通過するように基底関数の係数値を定めることは、図16中の所定の値を通るように、1次元B−Spline関数を定めることに相当し、若干であっても振動が発生する場合がある。
従って、非線型演算を定める際に用いる所定の色座標値を写像で定めた際には、図16に相当する多次元的な振動が現れる場合がある。例えば、明度信号での振動が現れた際には、画像上ではその画像の輝度(または濃度の)ムラなどの画像障害として現れ、画質低下の一因となる。
本発明は上記の課題を解決するためになされたものであり、階調性が良好となる色算出を実現することを目的とする。
上記の目的を達成するための本発明による色処理方法は、第一表色系で示される入力色信号値を、第二表色系で示される出力色域内の出力色信号値に変換する色処理方法であって、前記第一表色系で示される色信号値から前記第二表色系で示される色信号値に変換するための演算式であり、区分的多項式を基底関数とする多重総和演算式である非線形演算式を求め、入力色域と前記出力色域とに基づき、前記求められた非線形演算式の係数を写像し前記写像された係数を用いる非線形演算式により、前記第一表色系で示される入力色信号値を前記第二表色系で示される出力色信号値に変換することを特徴とする。
本発明によれば、階調性が良好となる色算出を実現することができる。
以下、本実施形態について図面を用いて詳細に説明する。
図1は本実施形態の色処理装置のハードウェア構成を示すブロック図である。
図1において、101はCPUであり、色処理装置を構成する各種構成要素を制御する。102はメインメモリであり、RAMやROM等で構成され、RAMはデータ作業領域や一時待避領域として機能する。ROMは、本実施形態を実現するプログラムを含む各種制御プログラムを記憶している。
103はSCSIインタフェース(I/F)であり、SCSIデバイス(例えば、HDD105)との接続及びそれに対するデータ転送を制御する。104はネットワークインタフェース(I/F)であり、外部ネットワーク(ローカルエリアネットワーク113)との接続及びそれを介するデータ送受信を制御する。105はHDD(ハードディスクドライブ)であり、上記各種制御プログラム(OSや、各種アプリケーション)やルックアップテーブル(LUT)を含むプロファイルデータ等の各種データを記憶する。
尚、本実施形態では、HDDは、SCSI形式のHDDを例に挙げて説明しているが、これに限定されず、IDE形式、SATA形式等の他の形式のHDDであっても構わない。その場合、各形式に応じたインタフェースが構成されることは言うまでもない。
106はグラフィックアクセラレータであり、カラーモニタ107に出力する画像(例えば、CPU101の制御によって生成される各種ユーザインタフェース)の表示を制御する。107はカラーモニタであり、例えば、LCDやCRTで構成される。
108はUSBコントローラであり、USBデバイス(例えば、カラープリンタ109)との接続及びそれの制御を実行する。109はカラープリンタであり、例えば、インクジェット方式やレーザビーム方式等の各種印刷方式がある。110はキーボード/マウスコントローラであり、入力デバイス(キーボード111やマウス112)との接続及びそれらの制御を実行する。111はキーボード、112はマウスである。113はローカルエリアネットワークである。114はシステムバスであり、例えば、PCIバス、ISAバス等で構成され、色処理装置を構成する各種構成要素を相互に接続する。
次に、図1の色処理装置に於けるプロファイル作成の一連の動作について、図1の構成と、図2のユーザインタフェースとを用いて説明する。
まず、ユーザの操作及びCPU101の指示により、HDD105に格納されているプロファイル作成アプリケーションが、OSプログラムにより起動され、メインメモリ102上に展開される。プロファイル作成アプリケーションが起動されると、まず、HDD105に格納されている初期ガマットデータが、CPU101の指示に基づきSCSI I/F103、システムバス114を経由して、メインメモリ102に転送される。そして、プロファイル作成アプリケーションにより、図2に示すプロファイル作成用のユーザインタフェースがカラーモニタ107上に表示される。
尚、このユーザインタフェースに対する操作は、キーボード111やマウス112等の入力デバイスを用いて実行する。そして、ユーザはこれらの入力デバイスを用いてユーザインタフェース上で用意された各種コントロールを操作することによって、所望のプロファイルを作成することができる。
ここで、図2のユーザインタフェースについて説明すると、201は、ガマットデータの読込を指示するためのボタンである。202は、作成したプロファイルを保存するためのボタンである。203は、表示領域である。
204は、色域表示のON/OFFを指示するための色域表示チェックボックスである。205は、プロファイル生成に使用される色再現特性の表示をON/OFFを指示するための色再現表示チェックボックスである。206は、プロファイル色分布の三次元表示をON/OFFするためのプロファイル色分布表示チェックボックスである。207は、アプリケーション終了ボタンである。
ユーザが、ガマット読込ボタン201によりガマットデータの読込を指示すると、プロファイル作成アプリケーションの処理に従い、HDD105に格納されたガマットデータが、CPU101の指示に基づきSCSI I/F103、システムバス114を経由して、メインメモリ102に転送される。あるいは、LAN113に接続されたサーバに格納されたガマットデータまたはインターネット上のガマットデータが、CPU101の指示により、ネットワークI/F104、システムバス114を経由してメインメモリ102に転送される。そして、プロファイル算出処理が実行される。
プロファイル算出処理結果は、各チェックボックスの設定に従って、表示領域203に擬似三次元表示される。
まず、色域表示チェックボックス204がONである(チェックされている)場合には、読み込んだガマットデータの三次元色域形状が、表示領域203に擬似三次元表示される。また、色再現表示チェックボックス205がONである場合には、プロファイル生成に使用される色再現特性が、擬似三次元表示される。また、プロファイル色分布表示チェックボックス206がONである場合には、プロファイルのLUT値が、表示領域203に擬似三次的に点表示される。
また、各チェックボックス204〜206のON/OFFを行った場合にも、上記のような表示形態に更新がなされる。
ユーザが、プロファイル保存ボタン202を操作して、プロファイル保存を指示すると、プロファイル作成アプリケーションは、生成されたプロファイルをHDD105に保存する。
ユーザが、終了ボタン207を操作してアプリケーション終了を指示すると、総てのデータ並びにプロファイル作成アプリケーションがメインメモリ102より消去され、アプリケーション動作を終了する。
次に、プロファイル作成アプリケーションの動作について、図3の状態図を用いて説明する。
図3は本実施形態のプロファイル作成アプリケーション動作の状態遷移図である。
ステート301では、アプリケーション動作に必要な各種メモリ領域の確保等の初期化動作を行う。
ステート302では、後述の処理に従って、プロファイル算出用のB−Spline Solidに対する基底関数並びに係数を算出し、設定する。
ステート303では、初期ガマットデータをHDD105から読み込んでメインメモリ102に記憶する。ここでガマットデータは、図4に示すデータ構造からなる。構造としては、色域(ガマット)を表す三角パッチデータの総数が記述され、その後にパッチ総数分だけ三角パッチの3頂点を表す3つのL*a*b*値が記述されたものである。
ステート304では、後述の写像動作に従って、B−Spline Solid(B−スプライン体)の係数を写像変換して、メインメモリ102に記憶する。但し、オリジナルのB−Spline Solidの係数は、破棄せずにそのまま保存を続ける。
ステート305では、後述の処理に従って、プロファイル算出用のB−Spline Solidを用いてプロファイルを作成し、メインメモリ102に記憶する。
ステート306では、後述の処理に従って、ステート304にて生成したプロファイル算出用のB−Spline Solid並びにステート305にて生成したプロファイルを用い、擬似三次元表示用の3Dオブジェクトデータを生成する。3Dオブジェクトデータは、色域表示用のソリッドデータ、プロファイル算出用色再現用のソリッドデータ、プロファイル表示用のポイントデータの3データである。
ステート307では、ユーザ操作判断待ち状態となる。
ここで、色域表示チェックボックス204がON/OFFされた場合には、ステート308へ移行して、色域表示処理を実行する。
色再現表示チェックボックス205がON/OFFされた場合には、ステート309へ移行して、色再現表示処理を実行する。
プロファイル色分布表示チェックボックス206がON/OFFされた場合には、ステート310へ移行し、プロファイル保存処理を実行する。
ガマットデータ読込ボタン202が押下されると、ステート311へ移行して、ガマットデータ読込処理を実行する。プロファイル保存ボタン202が押下されると、ステート312へ移行し、プロファイル保存処理を実行する。終了ボタン207が押下されると、ステート313へ移行し、終了処理を実行する。
ステート308では、色域表示チェックボックス204がONとなった場合には、色域表示用のソリッドデータを表示する。一方、OFFとなった場合には色域表示用のソリッドデータを非表示する。このON/OFFにより、図2の表示領域203内に、図示のような、色域表示用のソリッドデータの表示/非表示がなされる。尚、図2では、色再現表示用のソリッドデータを単体で表示しているものであり、他の3Dオブジェクトデータが重畳して表示される場合もある。
ステート309では、色再現表示チェックボックス205がONとなった場合には、色再現表示用のソリッドデータを表示する。一方、OFFとなった場合には、色再現表示用のソリッドデータを非表示する。このON/OFFにより、図2の表示領域203内に、図5に示すような、色再現表示用のソリッドデータの表示/非表示がなされる。尚、図5では、色再現表示用のソリッドデータを単体で表示しているものであり、他の3Dオブジェクトデータが重畳して表示される場合もある。
ステート310では、プロファイル色分布三次元表示チェックボックス206がONとなった場合には、プロファイル表示用のポイントデータを表示する。一方、OFFとなった場合には、プロファイル表示用のポイントデータを非表示する。このON/OFFにより、図2の表示領域203内に、図6に示すような、プロファイル表示用のポイントデータの表示/非表示がなされる。尚、図6では、プロファイル表示用のポイントデータを単体で表示しているものであり、他の3Dオブジェクト・データが重畳して表示される場合もある。
ステート311では、読込対象のガマットデータファイルをユーザが指定し、その後、指定されたガマットデータファイルがオープンできるかどうか、また正しいガマットデータフォーマットかどうかを判定する。ガマットデータファイルがオープンでき且つ正しいフォーマットであれば、HDD105もしくはネットワーク経由で読み込まれたガマットデータファイルをメインメモリ102に記憶した後、ステート303へ移行し、そうでなければステート307へ移行する。
ステート312では、メインメモリ102に記憶されているプロファイルをしかるべきフォーマットにてHDD105へ保存し、ステート307へ移行する。
ステート313では、メインメモリ解放等の終了動作を行った後、プロファイル作成アプリケーションを終了する。
以下では、ステート302における、プロファイル算出用のB−Spline Solidに対する基底関数並びに係数の算出処理について、図7のフローチャートを用いて説明する。
図7は本実施形態のプロファイル算出用のB−Spline Solidに対する基底関数並びに係数の算出処理を示すフローチャートである。
尚、以後の説明のため、あらかじめプロファイル算出用のB−Spline Solidの式を説明する。この式は、
Figure 0004262212
で定義される。
ここで、rr、gg、bbはRGB値、l、a、bはL*a*b*値を表す。NrはR軸方向での基底関数、NgはG軸方向での基底関数、NbはB軸方向での基底関数であり、clijk、caijk、cbijkは係数を表すものである。また、式の中でNr、Ng、Nbに付属するサフィックスi、j、kは、それぞれの軸に対する基底における基底関数番号である。つまり、この式は、区分的多項式を基底関数とする多重総和演算式である。
ステップS401では、sRGBの変換式に従って、RGB値とL*a*b*値との対応を取得する。以後、RGB値とL*a*b*値との対応関係として、i番目のRGB値をrri、ggi、bbi、L*a*b*値をli、ai、biとして説明する。但し、RGB値は、あらかじめ定められたR/G/B値のステップに基づいて、R/G/B値の順番でネストされた値である。
ステップS402では、あらかじめ定められたR/G/B値のステップに基づいて、基底関数を算出し、メインメモリ102に記憶する。基底関数の算出には、一般的なDe Boor−Coxのアルゴリズムを用いる。R/G/B値のステップが同一であった場合、基底関数Nr、Ng、Nbがいずれも3位のB−Spline基底であれば、いずれも図8に示すような、ξ0〜ξ3の4節点の基底関数となる。尚、図8では、R軸の基底関数Nrとして記してある。以下、基底関数はいずれも3位のB−Spline基底であるものとして説明する。
ステップS403では、ステップ402で算出した基底関数と、ステップS401で取得したRGB値とL*a*b*値との対応関係を用い、行列方程式
Figure 0004262212
をL*成分、a*成分、b*成分について、それぞれLU分解を用いて解くことで、各係数を算出する。以下、この行列方程式による係数算出について詳しく説明する。
まず、行列Mをのs行t列成分mstを、次のように算出する。
Figure 0004262212
ここで、t = 25(i−1)+5(j−1)+kであり、i、j、kは1から5までの整数である。尚、このtとi、j、kとの間の関係は、節点数と基底関数の位数によって変化する。例えば、3位のB−Spline基底で節点数が6である場合には、t=49(i−1)+7(j−1)+kという関係になる。
以下、係数clijk、caijk、cbijkの算出について、それぞれ説明する。
まず、係数clijkを算出するために、次の行列方程式をLU分解を用いて解く。
Figure 0004262212
次に、係数caijkを算出するため、次の行列方程式をLU分解を用いて解く。
Figure 0004262212
次に、係数cbijkを算出するため、次の行列方程式をLU分解を用いて解く。
Figure 0004262212
ステップS404では、算出した係数を、メインメモリ102に記憶する。
以上のように、複数の入力色(RGB)と、複数の入力色に対応する出力色(L*a*b*値)から非線形演算式を求めるため、入力色データに対して、滑らかな変化をする非線形演算式を求めることができる。
ここで、算出されたB−Spline Solidにより算出されるsRGB色再現の模式図を示すと、例えば、図9のようになる。
次に、ステート304における、B−Spline Solidの係数写像処理について、図10のフローチャートを用いて説明する。
図10は本実施形態のB−Spline Solidの係数写像処理を示すフローチャートである。
ステップS801では、ステート302で算出したB−Spline Solidより、Spline Solid係数clijk、caijk、cbijkのそれぞれ係数値を1つ取得し、取得した値を用いて、色CをL*a*b*値において、C=(clijk、caijk、cbijk)と定める。但し、取得する際のサフィックスはcl、ca、cbに対して同一の値を用いるものである。
ステップS802では、ステップS801で取得した色Cに対し、所定条件に基づいて、写像動作を適用することで、あらたなSpline Solid係数値/clijk、/caijk、/cbijkを算出する。
ここで、写像動作の具体例について、図11を用いて説明する。
図11は本実施形態の係数の写像に対応するガマットマッピングの具体例を説明するための図である。
図11において、901は、ステート304で算出されたB−Spline Solidより定まる色域(入力デバイスの色再現範囲)である。902は、ステート303で読み込んだガマットデータの色域(出力デバイスの色再現範囲)である。Bsは、色Cと点Fを結んだ直線と色域901の交点である。Bdは、色Cと点F(目標典)を結んだ直線と色域902の交点である。尚、点F(目標点)は、明度軸上の色(50,0,0)として定められている。
ここで、FとBs間の距離≦FとBd間の距離である場合、色Cに対して写像変換は実行しない。一方、FとBs間の距離>FとBd間の距離となる場合、FとCとの距離を算出し、例えば、図12の変換テーブルのように、非線形に距離を変換する。そして、非線形に変換された距離を用いて、色CFとBdを結ぶ直線上でかつ色域902に属する色信号値Cm写像変換する。
以上の写像変換(ガマットマッピング)を、Spline Solid係数写像に適用する。例えば、clijkと/clijk、との比が、色CのL*値と色CmのL*値との比と等しくなるように、/clijkを求める。同様に、/caijkと/cbijkとを算出する。また、FCとFCmとの距離の比に応じて、/clijk、/caijk及び/cbijkを算出してもよい。算出された係数値(/clijk、/caijk及び/cbijk)は、元の係数値(clijk、caijk及びcbijk)と入れ替える。
つまり、本実施形態では、第一の色補正を、RGB値(デバイス依存値)からL*a*b*値(デバイス非依存値(デバイス独立値))への変換とし、第二の色補正を入力デバイスの色再現範囲と出力デバイスの色再現範囲に基づくL*a*b*値へのガマットマッピングとすると、写像変換されたSpline Solid係数を用いた非線形演算式により、図16に示すような階調の変動が振動してしまうことを防ぎつつ、第二の色補正に対応する処理を行うことができる。
ステップS803では、ステップS802で算出したSpline Solid係数値をメインメモリ102に記憶する。
ステップS804では、Spline Solid係数値の総てに対して、処理を実行したか否かを判定する。実行していない場合(ステップS804でNO)、ステップS801に戻る。一方、実行している場合(ステップS804でYES)、処理を終了する。
次に、ステート305における、プロファイル算出用のB−Spline Solidを用いたプロファイル作成処理について、図13を用いて説明する。
図13は本実施形態のプロファイル作成処理を示すフローチャートである。
ここで、作成するプロファイルは、例えば、図14に示すデータ構造で構成される。RGB値はネストの順番と、プロファイルに記述されたR/G/B値のステップ値とに従って算出され、L*a*b*値はプロファイルに記述されている値となる。
ステップS1101では、作業用のメモリ領域を確保し、変数初期化などの初期化動作を行う。
ステップS1102では、しかるべき順序に従って、プロファイルのLUT格子点に相当するRGB値を1つ取得する。
ステップS1103では、メインメモリ102よりプロファイル算出用のB−Spline Solidにおける基底関数と係数値とを1つ取得し、下式よりL*a*b*値を算出する。
Figure 0004262212
ここで、rr、gg、bbはRGB値、l、a、bはL*a*b*値を表す。NrはR軸方向での基底関数、NgはG軸方向での基底関数、NbはB軸方向での基底関数であり、clijk、caijk、cbijkは係数を表すものである。また、式の中でNr、Ng、Nbに付属するサフィックスi、j、kは、それぞれの軸に対する基底における基底関数番号である。
ステップS1104では、LUT格子点位置に対応するメモリアドレス(メインメモリ102)に、算出したL*a*b*値を格納する。
ステップS1105では、LUT格子点総てに対し、上記の変換を実行して、L*a*b*値を算出したか否かを判定する。算出していない場合(ステップS1105でNO)、ステップS1102に戻り、LUT格子点総てに対し、上記の変換を実行して、L*a*b*値を算出するまで、ステップS1102〜ステップS1104を繰り返す。
一方、LUT格子点総てに対し、上記の変換を実行して、L*a*b*値を算出した場合(ステップS1105でYES)、ステップS1106へ進む。
ステップS1106では、メインメモリ102に格納された変換後のLUTデータを、プロファイルデータとして、メインメモリ102の所定領域に格納する。
そして、ステップS1107では、作業用メモリの解放等の終了動作を行う。
次に、ステート306における3Dオブジェクト生成処理について説明する。
色域表示用のソリッドデータは、ステート302にて読み込んだ三角パッチデータを総て用いて、ポリゴン表記のソリッドデータを生成する。
プロファイル表示用のポイントデータは、LUTにおける総てのL*a*b*値をポイントとし、ポイントデータを生成する。
また、色再現表示用のソリッドデータは、以下のように生成する。
まず、ステップが[0,64,128,192,255]からなる5×5×5の格子を生成する。次に、総ての格子点について、ステップS1102と同様にしてRGB値からL*a*b*値を算出する。最後に、算出されたL*a*b*値の組より、ポリゴン表記の色再現表示用のソリッドデータを生成する。
以上説明したように、本実施形態によれば、第1の表色系で表現される色信号値より第2の表色系の色信号値に算出(写像)する際に、第一の色補正に対応する処理として、一度滑らかな色再現を非線形演算式(第1の表色系のサンプル点を補間する補間式(本実施形態では、B−Spline Solid式))を設定して近似する。また、第二の色補正に対応する処理として、その非線形演算式の係数を写像変換して、その非線形演算式を変形する。そして、この変形した非線形演算式を用いて、プロファイル算出用の演算を実行する。
特に、この変形は、スプラインの変動近似特性を応用したものであり、この変動近似特性は、補間で発生する振動を抑制することができる。
つまり、補間式の係数を所定条件(図11で説明したような写像変換)を満足するように変形し、その変形した補間式を用いて、色域写像を行って色を算出することで、変動減少近似効果を利用し、複数の入力色に対応する出力色の階調の変動が振動してしまう現象を防ぐことができる。
特に、本実施形態では、入力デバイスの色域内に含まれる多くの入力色データについて、上記係数の写像変換処理を行うため、階調の変動が振動してしまう現象を防ぐ効果は顕著になる。
図17は、ライン1701上にある複数の入力色と、ガマットマッピング後の複数の出力色との関係を示す図である。
例えば、図17のライン1701上の点群をガマットマッピングした後、ガマットマッピング後の点群をB−スプライン曲線で結ぶと、ライン1703の点線のようにラインが振動してしまう。これは、図16に示すB−スプライン曲線の特性に起因し、図15で示した通り、点群間の間で急峻な変化があると、その振動はより顕著になる。
これに対して、本実施形態によれば、B−スプライン曲線の係数を写像することにより、ラインの振動が小さいライン1701の軌跡を維持しつつ、ガマットマッピング後の点群を近似するライン1702を形成することができる。
つまり、ライン1702を示すB−スプライン関数で入力色を変換するので、出力色の良好な階調を得ることができる。また、このような算出を実行することで、擬似輪郭等の画像障害の発生を抑制することができる。
尚、上記実施形態では、ソリッド表現における基底関数として、B−Spline(B−スプライン)を用いる例を挙げて説明しているが、これに限定されるものではない。例えば、基底関数としては、Rational B−Spline(有理B−スプライン)、Non Uniform Rational B−Spline(不均一有理B−スプライン)、Bezier(ベジェ)、Rational Bezier(有理ベジェ)等の、あらゆる区分的関数(区分的多項式)を用いることができる。
ここで、本実施形態では、基底関数の局所性が存在するとより望ましいことから、基底関数として最も代表的なB−Spline(B−スプライン)を例に挙げて説明している。
このように、本実施形態では、第1の表色系で表現される色信号値より第2の表色系の色信号値に算出する際、第1の表色系の次元数と同じ多重度の区分的多項式を基底関数とする多重総和演算を用いて第2の表色系の色信号値を算出する。
尚、上記実施形態で処理対象とする色空間については何ら制限はなく、CMYK色空間、L*a*b*色空間、JCH色空間、XYZ色空間、xy色空間等の様々な色空間を用いることができる。さらに、インク色分解などにも適用可能であり、CMYKに淡シアンならびに淡マゼンタを加えた六次元色空間、さらに、レッドインクおよびグリーンインクを加えた八次元色空間等の色空間も用いることができる。また、式に与える色空間と、式より算出される色空間とが同一の色空間であってもよい。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
また、本実施形態では、図11に示すガマットマッピング方法を適用し、Spline Solid係数を写像した。しかし、例えば、入力色の明度に応じて、図11における点Fの位置を変化させても良いし、その他のガマットマッピング方法を適用し、Spline Solid係数を写像しても良い。
また、本実施形態では、第二の色補正として、ガマットマッピングを用いたが、色相調整など他の色補正に適用してもよい。
本実施形態の色処理装置のハードウェア構成を示すブロック図である。 本実施形態のプロファイル作成アプリケーションのユーザインタフェースを示す図である。 本実施形態のプロファイル作成アプリケーション動作の状態遷移図である。 本実施形態のガマットデータのデータ構造を示す図である。 本実施形態の色再現の擬似三次元表示を示す模式図である。 本実施形態のプロファイルの擬似三次元表示を示す模式図である。 本実施形態のプロファイル算出用のB−Spline Solidに対する基底関数並びに係数の算出処理を示すフローチャートである。 本実施形態のR軸の基底関数Nrを示す図である。 本実施形態のsRGB色再現の擬似三次元表示を示す模式図である。 本実施形態のB−Spline Solidの係数写像処理を示すフローチャートである。 本実施形態の写像動作の具体例を説明するための図である。 本実施形態の写像における距離変換を説明するための図である。 本実施形態のプロファイル作成処理を示すフローチャートである。 本実施形態のプロファイルのデータ構造を示す図である。 色域外のL*a*b*値が指定された場合に目標色を設定する方法を説明するための図である。 一次元のスプライン関数に発生する振動を説明するための図である。 複数の入力色と、ガマットマッピング後の複数の出力色との関係を示す図である。
符号の説明
101 CPU
102 メインメモリ
103 SCSI I/F
104 ネットワーク I/F
105 HDD
106 グラフィックアクセラレータ
107 カラーモニタ
108 USBコントローラ
109 カラープリンタ
110 キーボード/マウスコントローラ
111 キーボード
112 マウス
113 LAN
114 システムバス

Claims (5)

  1. 第一表色系で示される入力色信号値を、第二表色系で示される出力色域内の出力色信号値に変換する色処理方法であって、
    前記第一表色系で示される色信号値から前記第二表色系で示される色信号値に変換するための演算式であり、区分的多項式を基底関数とする多重総和演算式である非線形演算式を求め、
    入力色域と前記出力色域とに基づき、前記求められた非線形演算式の係数を写像し
    前記写像された係数を用いる非線形演算式により、前記第一表色系で示される入力色信号値を前記第二表色系で示される出力色信号値に変換する
    ことを特徴とする色処理方法。
  2. 前記非線形演算式の基底関数は、B−スプライン、有理B−スプライン、不均一有理B−スプライン、ベジェ、有理ベジェのいずれかである
    ことを特徴とする請求項1に記載の色処理方法。
  3. 前記第一表色系で示される色信号値はデバイス依存の色信号値であり、前記第二表色系で示される色信号値はデバイス独立の色信号値である
    ことを特徴とする請求項1又は2に記載の色処理方法。
  4. 第一表色系で示される入力色信号値を、第二表色系で示される出力色域内の出力色信号値に変換する色処理装置であって、
    前記第一表色系で示される色信号値から前記第二表色系で示される色信号値に変換するための演算式であり、区分的多項式を基底関数とする多重総和演算式である非線形演算式を求める算出手段と、
    入力色域と前記出力色域とに基づき、前記求められた非線形演算式の係数を写像する写像手段と、
    前記写像された係数を用いる非線形演算式により、前記第一表色系で示される入力色信号値を前記第二表色系で示される出力色信号値に変換する変換手段と
    を有することを特徴とする色処理装置。
  5. コンピュータに、請求項1及至3のいずれか1項に記載の色処理方法を実現させるためのプログラム。
JP2005066142A 2005-03-09 2005-03-09 色処理方法及びその装置 Expired - Fee Related JP4262212B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005066142A JP4262212B2 (ja) 2005-03-09 2005-03-09 色処理方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005066142A JP4262212B2 (ja) 2005-03-09 2005-03-09 色処理方法及びその装置

Publications (2)

Publication Number Publication Date
JP2006253961A JP2006253961A (ja) 2006-09-21
JP4262212B2 true JP4262212B2 (ja) 2009-05-13

Family

ID=37093980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005066142A Expired - Fee Related JP4262212B2 (ja) 2005-03-09 2005-03-09 色処理方法及びその装置

Country Status (1)

Country Link
JP (1) JP4262212B2 (ja)

Also Published As

Publication number Publication date
JP2006253961A (ja) 2006-09-21

Similar Documents

Publication Publication Date Title
US6603483B1 (en) Color management and proofing architecture
US6778300B1 (en) Black generation for color management system
JP4996338B2 (ja) 色処理方法および色処理装置
JP2007013626A (ja) 色処理方法および装置
JP4306936B2 (ja) 色処理装置および方法
US7440136B2 (en) Color processing apparatus and method
JP2008147937A (ja) 画像処理装置および画像処理方法
JP2009004862A (ja) 画像処理装置
JP4262212B2 (ja) 色処理方法及びその装置
JP4109802B2 (ja) 色処理装置およびその方法
JP2006303785A (ja) 画像処理装置および方法
JP4095609B2 (ja) 色処理装置およびその方法
JP2011019030A (ja) 変換プロファイル作成方法および印刷装置
JP2005175917A (ja) 色再現情報生成装置
JP2005176200A (ja) 色信号変換装置およびその方法
JP5021504B2 (ja) カラープロファイル作成装置、方法及びプログラムを記録したコンピュータ読取可能な記録媒体
JP3929060B2 (ja) 色処理方法および色処理装置
JP5036495B2 (ja) 色処理装置および色処理方法
JP2006128815A (ja) 画像処理装置及び方法
JP2007081733A (ja) 画像処理方法、画像処理装置
JP2009004861A (ja) 画像処理装置
JP2003244455A (ja) 画像処理装置、画像処理方法、記憶媒体及びプログラム
JP2008283522A (ja) 色処理装置および方法
JP2006033246A (ja) 色処理装置
JP2007074531A (ja) 色処理方法および装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080707

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081128

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090206

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4262212

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140220

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees