(57)【要約】【課題】  第１の色空間から第２の色空間へＬＵＴを用いて色信号を変換する際に、ＬＵＴが密な場合には第１の色空間で使わない部分の演算を省くことにより、全体的な演算速度を向上させることが目的である。【解決手段】  第１の色空間の入力色信号を、第２の色空間の色信号に変換する画像処理方法であって、第１の色空間で用いられるＬＵＴにおいて必要な部分だけを取り出し、その取り出した部分だけを演算することを特徴とする。【選択図】  図２
2005157514.tif 000002
【特許請求の範囲】
【請求項１】
第１の色空間の入力色信号を、第２の色空間の色信号に変換する画像処理方法であって、第１の色空間で用いられるＬＵＴにおいて必要な部分だけを取り出し、その取り出した部分だけを演算することを特徴とする画像処理方法。
【請求項２】
前記入力色信号として必要ない部分を測色値から自動的に判別することを特徴とする請求項１記載の画像処理方法。
【請求項３】
前記ＬＵＴを用いた補間計算を行うにあたり、入力信号の明度が離れている場合は近傍の点にはなりえないため、近傍の点を検索するのに予め離れた点を入力点の明度とグリッド数から判断して除き、有効な部分のみ検索を行うことを特徴とする請求項１記載の画像処理方法。
【請求項４】
第１の色空間の入力色信号を、第２の色空間の色信号に変換する画像処理方法であって、第１の色空間で用いられるＬＵＴにおいて必要な部分だけを取り出すコード、その取り出した部分だけを演算するコードを有するプログラム。
【請求項５】
請求項４に記載のプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【請求項６】
第１の色空間の入力色信号を、第２の色空間の色信号に変換する画像処理方法であって、第１の色空間で用いられるＬＵＴにおいて必要な部分だけを取り出す処理手段、前記取り出した部分だけを演算する演算手段とを有することを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は第１の色空間の入力色信号を、ＬＵＴを用いて第２の色空間の色信号に変換する画像処理方法及び画像処理装置に関するものである。
【背景技術】
【０００２】
色を表現する方法として、加法混色系ではＲＧＢを用いた色信号、減法混色系ではＣＭＹＫを用いた色信号、またデバイスに依存しない空間（均等色空間）を表す色信号としてはＣＩＥＬａｂなどがある。
【０００３】
最近主流になりつつあるカラーマネージメントは、表現したい色が表示（モニタ）・出力（プリンタ）できるような色を計算した色信号に変換し、それをデバイスに送ることによって実現されている。（特許文献１）
その計算過程にはＬａｂからＣＭＹＫへの色信号の変換や、ＬａｂからＲＧＢへの色信号の変換などが含まれる。
【０００４】
色信号の変換を行う際、常に信号が規則正しく配列されているとは限らず、例えばＲＧＢとＬａｂの関係が図１のように並んでいるとする。
【０００５】
ＲＧＢの方は規則正しく配列されているためＲＧＢ⇒Ｌａｂの色変換に関してはＬＵＴを用いて規則的に並んでいるＲＧＢから近い部分を探し当てて補間するといった一般的に用いられる方法で特に問題はない。
【特許文献１】特開平０６−１９８９７５号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、Ｌａｂ⇒ＲＧＢへの色変換が必要であるとき、Ｌａｂの方の配列が規則正しくないため、総当りで入力信号値近傍の信号値を探していると膨大な時間を要するという問題があった。
【０００７】
本発明は上述の点に鑑みてなされたもので、第１の色空間で用いるＬＵＴの一部のみ実際の色空間で利用されていることから、不要な部分の演算を省くことによって演算時間を短縮することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、第１の色空間の入力色信号を、第２の色空間の色信号に変換する画像処理方法であって、第１の色空間で用いられるＬＵＴにおいて必要な部分だけを取り出し、その取り出した部分だけを演算することを特徴とする。
【発明の効果】
【０００９】
以上説明したように、本発明によれば第一の色空間から第二の色空間へＬＵＴを用いて色信号を変換する際に、第一の（均等）色空間がすべてのグリッドを必要とはしていないため、ＬＵＴが密なときには不要な点の計算を省くことができ、その結果演算速度を向上させることが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【００１１】
図１は、本実施例の画像処理方法の一例を示す色信号テーブルである。図１のＬａｂの部分は均等色空間であり、例えばＬｕｖでもよい。またＲＧＢの部分に関してはデバイス依存色信号であり、ＣＭＹＫ信号でも良い。
【００１２】
図１の場合、Ｒ・Ｇ・Ｂがそれぞれ０、１６、３２・・・２５５という組合せで成り立っており、１７グリッド（１７＾３＝４９１３点）のＬＵＴを構成している。
【００１３】
このときＲＧＢからＬａｂの色変換を行うのであれば、任意のＲＧＢに対し、近傍の点を選び出すことは容易であるため、ＲＧＢ⇒Ｌａｂの色変換に関しては容易に行える。
【００１４】
一方、図１のようなテーブルが与えられているときにＬａｂ⇒ＲＧＢの変換を行うこと際、近傍のＬａｂを選び出すのに４９１３点すべて検索して近いものを選び出すのでは非常に効率が悪く、時間もかかる。例えば、３３グリッドなどでは３５９３７点もの点から選び出すため、膨大な時間を要することになる。
【００１５】
そこで検索する点数をできるだけ減らすことを考える。図１のテーブルからＬａｂ⇒ＲＧＢへのＬＵＴを考える際、まずＬａｂをグリッド化する。Ｌは０〜１００、ａとｂは−１２８〜１２８をグリッド化するにあたり、例えば１７グリッドの場合、
Ｌ・・０．０，６．２５，１２．５，１８．７５，２５．０，３１．２５，３７．５，４３．７５，５０．０，５６．２５，６２．５，６８．７５，７５．０，８１．２５，８７．５，９３．７５，１００．０
ａ／ｂ・・−１２８，−１１２，−９６，−８０，−６４，−４８，−３２，−１６，０，１６，３２，４８，６４，８０，９６，１１２，１２８
の各１７点の３乗で４９１３点ができる。
【００１６】
ここでは、Ｌａｂ空間を直方体の空間内で表現していることなるが、実際のＬａｂ空間は０≦Ｌ≦１００、−１２８≦ａ≦１２８、−１２８≦ｂ≦１２８で表現される中心値（Ｌ，ａ，ｂ）＝（５０，０，０）、半径１２８の球である。
【００１７】
つまり、直方体の頂点など、球の外側に関しては全く使用していない点となるため、検索の対象に入れると計算の無駄になることからこの部分に関しては計算を省く。
【００１８】
またプリンタプロファイルを作る場合においては、Ｌａｂ空間の中でもごく一部しか使用していないことを考慮すると、もっと無駄な点を省くことができると考えた。
【００１９】
そこで、一般的なプリンタで表現される色空間を包含するような色域をＬ軸の真上から見る方向から図２で示す。
【００２０】
さらに明度ごとに用いられる色空間が異なるため、図２を一定の明度ごとに区切った図を図３〜図１２に示す。これは３３グリッドの例で、明度を１０ごとに区切ったものである。
【００２１】
区切り方としては印刷色の最外色（Ｓ−ＲＧＢとほとんどのプリンタで再現可能な最外色）をＬＵＴのグリッドが囲むことが可能な色域を区切ることにより、ＬＵＴを用いた補間計算されたときに計算を省いた部分の影響が入らないように考慮している。
【００２２】
また本実施例のように予め手動で不要な部分を削るだけでなく、デバイス（プリンタ）により形成されたパッチの測色値からそのデバイス（プリンタ）が必要な（再現できる）色域を判別し、自動的に不要な部分を削ることも可能である。
【００２３】
具体的な例を示すと、ＣＭＹＫプリンタのＩＣＣプロファイルを作成するような場合、プリンタプロファイルを作成しようとするプリンタにより形成されたパッチの測色値を用いてプリンタプロファイルは例えばＬａｂ−ＣＭＹＫのテーブルをＬＵＴ化する。
【００２４】
一般的にプリンタプロファイルのＬａｂ（入力）値は任意のＬａｂ値が入ってくるためすべてのＬａｂ空間（球体）を包含している必要があるが、Ｌａｂ空間上で任意のＬａｂ値をプリンタの色域内に収まるように色空間圧縮を行うため、Ｌａｂ⇒Ｌ’ａ’ｂ’と変換される。
【００２５】
このＬ’ａ’ｂ’はプリンタで再現できる色域に収まる領域しか必要ないため、Ｌａｂ⇒ＣＭＹＫと変換される際にはＬａｂ⇒Ｌ’ａ’ｂ’⇒ＣＭＹＫというプロセスを経る。
【００２６】
そのＬ’ａ’ｂ’⇒ＣＭＹＫの変換を行う際に上述のＬＵＴを用いると上記のようにプリンタの色域に応じた色空間以外を削除することが可能である。
【００２７】
また計算を省いた部分に関しても何らかの数値を入れておく必要があるため、
線形な行列によって求めた近似的な値などを入れておく。
【００２８】
【数１】
2005157514.tif 000003
【００２９】
本実施例では任意のＬ’ａ’ｂ’が入ってきた際に、近傍の点を検索する際の演算数を減らすための処理を示しているが、さらに入力点のＬ’に注目し、補間演算に必要な点として、あまりにも明度が離れている場合は近傍の点とはなりえないことから、入力点と明度がかけ離れているといった予め不要と判断できる点は近傍の点を算出する際には不要とし、補間演算に関係のある明度部だけ抽出することでさらなる演算時間の短縮を図っている。
【００３０】
一例としてＬａｂ⇒Ｌ’ａ’ｂ’の圧縮方法によって近傍の明度の定義を次のように設定する。
【００３１】
Ｐｅｒｃｅｐｔｕａｌ／Ｓａｔｕｒａｔｉｏｎのレンダリングのとき・・Ｌａｂ⇒Ｌ’ａ’ｂ’の時点で色空間が圧縮されているため、極端に遠い点はありえないが、グリッド数によって近傍の点の入力点からの距離（補間距離）が異なることを考慮すると、Ｌのステップ幅が５未満の場合（例えば３３グリッド⇒Ｌは０，３．１２５，６．２５・・でステップ幅は３．１２５）は入力点の明度±１５のみ検索エリアとし、上記条件を満たさない場合は本実施例で述べた無駄な計算を省く処理を含めて何も行わない。
【００３２】
Ｃｏｌｏｒｉｍｅｔｒｉｃのレンダリングのとき・・Ｌａｂ⇒Ｌ’ａ’ｂ’の時点では色空間圧縮がなされていないことからＰｅｒｃｅｐｔｕａｌ／Ｓａｔｕｒａｔｉｏｎに比べ、遠い点からの補間も考えられる。これもグリッド数によって近傍の点の入力点からの距離が異なることを考慮し、Ｌのステップ幅が５未満の場合は入力点の明度±２０のみ検索エリアとし、上記条件を満たさない場合は本実施例で述べた無駄な計算を省く処理を含めて何も行わない。
【００３３】
本実施形態によれば、ＬＵＴがある程度密な場合には、第１の色空間での色信号を、ＬＵＴを用いて第２の色空間での色信号に変換するとき、第１の色空間のＬＵＴ上にて実質使われない点を省くことにより無駄な計算を省くことができる。
【００３４】
従って、ＬＵＴが密な場合にはプリンタプロファイルなどで用いる色域などではかなりの計算を省くことができるため、演算速度を飛躍的に上げることができる。
【００３５】
［変形例］
本実施形態では、第一の色空間にＬａｂを用いたが本発明はこれだけに限らず、均等色空間であれば例えばＬｕｖなどを用いても構わない。
【００３６】
また、本実施形態では第二の色空間の色信号としてＲＧＢを用いたが、デバイスの入力可能な信号であれば例えばＣＭＹＫなどを用いても構わない。
【００３７】
また本実施形態では利用可能な色空間を明度ごとに区切る際、明度１０ごとに区切ったがこれはもっと細かく区切っても構わず、最適な区切り方をすればさらに計算を省くことができる。ただし、細かく区切るほど計算を省く点が増えるというわけではないため、最適な区切り方を必要とする。
【００３８】
また本実施形態では計算を省いたＬＵＴ上の点に関しては、適当な線形変換で埋めるという処理を行ったが、他の方法を用いて値を埋めても構わない。
【００３９】
また本実施例では一例として
・Ｐｅｒｃｅｐｔｕａｌ／ＳａｔｕｒａｔｉｏｎのレンダリングのときはＬのステップが５未満のとき
⇒入力点明度±１５のエリアと有効エリアのみ検索
・ＣｏｌｏｒｉｍｅｔｒｉｃのレンダリングのときはＬのステップが５未満のとき
⇒入力点明度±２０のエリアと有効エリアのみ検索
としたがこのあたりの数字は一例であって、ステップ数が６未満、７未満などのどのような数字でも構わない。また±１５、±２０という値も他の数字に置き換えても構わない。
【００４０】
以上のように第１の色空間の入力色信号を、第２の色空間の色信号に変換する際に、第１の色空間で演算に必要のない点を削除し、削除した部分になんらかの値を入力しておき、グリッドのステップ幅を考慮して明度で必要なエリアだけを絞り込み補間処理を行うことで高速な演算が可能となる。
【００４１】
（他の実施例）
上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または、記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（または、ＣＰＵやＭＰＵ）が、記憶媒体に格納されたプログラムコードを読み出し、実行することによっても達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が、上述した実施の形態の機能を実現することになり、そのプログラムコードを記憶しはＣＤ、ＭＤ、メモリカード、ＭＯ等のさまざまな記憶媒体に書き込み可能である。
【００４２】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）等が、実際の処理の一部または全部を行い、その処理によって、上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００４３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が、実際の処理の一部または全部を行い、その処理によって、上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００４４】
【図１】本実施例における、ＲＧＢ−Ｌａｂテーブルを示す一例である。
【図２】ほとんどのプリンタの色域を包含するような点を集めたものである。Ｌ軸の真上からみたもので、横軸がａ軸、縦軸がｂ軸を示す。
【図３】０≦Ｌ（明度）≦１０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図４】１０≦Ｌ（明度）≦２０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図５】２０≦Ｌ（明度）≦３０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図６】３０≦Ｌ（明度）≦４０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図７】４０≦Ｌ（明度）≦５０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図８】５０≦Ｌ（明度）≦６０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図９】６０≦Ｌ（明度）≦７０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図１０】７０≦Ｌ（明度）≦８０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図１１】８０≦Ｌ（明度）≦９０において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図１２】９０≦Ｌ（明度）≦１００において、ほとんどのプリンタの色域を包含するような点の集合を示す。横軸がａ軸、縦軸がｂ軸、３３グリッド表示である。
【図１】
2005157514.tif 000004
【図２】
2005157514.tif 000005
【図３】
2005157514.tif 000006
【図４】
2005157514.tif 000007
【図５】
2005157514.tif 000008
【図６】
2005157514.tif 000009
【図７】
2005157514.tif 000010
【図８】
2005157514.tif 000011
【図９】
2005157514.tif 000012
【図１０】
2005157514.tif 000013
【図１１】
2005157514.tif 000014
【図１２】
2005157514.tif 000015