説明

色空間変換装置および色空間変換プログラム

【課題】LUTを用いた色変換処理において、色変換処理後の画像に周囲に比べて不自然な色や階調が現れることを防止する。
【解決手段】LUTを用いた色変換によって生じる不自然な色や階調を、色変換後の画像処理によって修正する。これにより、色変換精度を向上させるためにLUTの格子間隔を細かくしたり、LUTの格子間隔を補間するように複雑な補間処理を行わなくてもよい。色変換後の画像処理では、特定色域画素群のみを用いて部分的に平均化フィルタ処理を行う。特定色域画素群は、原画像において近傍に存在する画素同士であって、色変換前は互いの色が近く、色変換後は互いの色が近くない画素とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、異なる色空間の間で行われる色空間変換処理に関する。
【背景技術】
【0002】
ルックアップテーブル(LUT)を用いて色空間変換処理を行う技術が知られている(特許文献1)。特許文献1には、色空間変換前(入力系)の色再現領域が色空間変換後(出力系)の色再現領域より狭い場合は彩度強調処理を施し、色空間変換前(入力系)の色再現領域が色空間変換後(出力系)の色再現領域より広い場合には圧縮処理を施す技術が開示されている。
【0003】
【特許文献1】特開2004−260853号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の技術では、色再現領域の大きさに応じて変換パラメータが決定されるだけで、画像における画素位置の情報を考慮していないので、色空間変換後の画像において周囲に比べて不自然な色(階調)が現れ、画像が劣化するおそれがある。
【課題を解決するための手段】
【0005】
請求項1に記載の発明による色空間変換装置は、画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う色空間変換手段と、色空間変換後の色信号によって構成される画像の所定領域に対して選択的に画像処理を行う画像処理手段とを備えることを特徴とする。
請求項1に記載の色空間変換装置において、画像処理手段は、色空間変換後の色信号によって構成される画像の色および階調の少なくとも一方が色空間変換前にない特徴が色空間変換後に生じる特異な領域に対して選択的に画像処理を行うように構成してもよい。
請求項1または2に記載の色空間変換装置において、画像処理手段は、平滑化フィルタ処理を行うことを特徴とする。
請求項4に記載の発明による色空間変換装置は、画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う色空間変換手段と、色空間変換後の色信号が色再現領域から外れないように画像の領域ごとに重み情報を生成する際、当該画素の周囲の画素の重み情報に応じて当該重み情報を生成する重み情報生成手段と、重み情報を用いて色空間変換を行うように色空間変換手段を制御する制御手段とを備えることを特徴とする。
請求項4に記載の色空間変換装置において、重み情報生成手段は、隣接する画素位置で重みの値が徐々に変化するように重み情報に対してフィルタ処理を施すこともできる。
請求項4または5に記載の色空間変換装置はさらに、色空間変換後の色信号によって構成される画像の所定領域に対して選択的に画像処理を行う画像処理手段を備えてもよい。
請求項1または5に記載の色空間変換装置において、画像処理手段は、画像上で注目画素を含む所定範囲に位置する画素であって、色空間変換前の色空間座標において画素の色信号値および注目画素の色信号値が所定距離以内であり、色空間変換による変換量の差が画素と注目画素との間で所定値以上となる画素に対応させて画像処理を行うことを特徴とする。
請求項8に記載の発明による色空間変換プログラムは、画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う処理と、色空間変換後の色信号によって構成される画像の所定領域に対する選択的な画像処理とをコンピュータ装置に実行させることを特徴とする。
請求項9に記載の発明による色空間変換プログラムは、画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う処理と、色空間変換後の色信号が色再現領域から外れないように画像の画素ごとに当該画素の周囲の画素の重み情報に応じて重み情報を生成する処理と、色空間変換後の色信号が色再現領域から外れる場合、重み情報を用いて色空間変換を行う処理とをコンピュータ装置に実行させることを特徴とする。
【発明の効果】
【0006】
請求項1、8に記載の発明では、色空間変換後の色信号によって構成される画像の所定領域に対して選択的に画像処理を行うようにしたので、色空間変換後の画像において周囲に比べて不自然な色、階調が現れることを防止できる。
請求項4、9に記載の発明では、色空間変換後の色信号が色再現領域から外れないように画像の画素ごとに当該画素の周囲の画素の重み情報に応じて重み情報を生成し、この重み情報を用いて色空間変換を行うようにしたので、色空間変換後の画像において周囲に比べて不自然な色、階調が現れることを防止できる。
【発明を実施するための最良の形態】
【0007】
以下、図面を参照して本発明を実施するための最良の形態について説明する。
(第一の実施形態)
図1は、本発明の第一の実施形態による色変換処理の流れを説明するフローチャートである。本実施形態では、図1による処理を行うプログラムを図2に示すコンピュータ装置100に実行させることにより、色変換装置を提供する。色変換処理プログラムをパーソナルコンピュータ100に取込んで使用する場合には、パーソナルコンピュータ100のデータストレージ装置にプログラムをローディングした上で、当該プログラムを実行させることによって色変換装置として使用する。
【0008】
パーソナルコンピュータ100に対するプログラムのローディングは、プログラムを格納したCD−ROMなどの記録媒体104をパーソナルコンピュータ100にセットして行ってもよいし、ネットワークなどの通信回線101を経由する方法でパーソナルコンピュータ100へローディングしてもよい。通信回線101を経由する場合は、通信回線101に接続されたサーバー(コンピュータ)102のハードディスク装置103などにプログラムを格納しておく。このように、プログラムは記録媒体104や通信回線101を介する提供など、種々の形態のコンピュータプログラム製品として供給される。
【0009】
図1のステップS101において、コンピュータ装置100(図2)のCPUは、画像を構成する画素の色を示す信号であって、RGB表色系で表された色信号(R,G,B)を入力してステップS102へ進む。ステップS102において、CPUは、色信号(R,G,B)に対して周知の線形変換処理(マトリクス変換など)を施すことにより、色信号(R,G,B)をデバイスに依存しない色空間で表される色信号(L*,a*,b*)へ変換してステップS103へ進む。
【0010】
ステップS103において、CPUは、色信号(L*,a*,b*)に対してLUT(ルックアップテーブル)を用いた色変換処理を施し、色変換処理後の色信号(L*',a*',b*')を取得し、ステップS104へ進む。LUTを用いた色変換処理の詳細については後述する。
【0011】
ステップS104において、CPUは、色信号(L*',a*',b*')に対して周知の線形変換処理(マトリクス変換など)を施すことにより、色信号(L*',a*',b*')をRGB表色系で示される色信号(R',G',B')へ変換してステップS105へ進む。
【0012】
ステップS105において、CPUは、色信号(R',G',B')に対して平滑化処理を行い、平滑化処理後の色信号(R'',G'',B'')を出力して図1による処理を終了する。なお、平滑化処理が不要の場合にはステップS105をスキップし、色信号(R',G',B')を出力して図1による処理を終了する。
【0013】
第一の実施形態による色変換処理は、上記LUTを用いた色変換処理(ステップS103)および上記平滑化処理(ステップS105)に特徴を有するので、ステップS103に対応する処理を図3に示すフローチャートを参照して詳細に説明し、ステップS105についての詳細説明もその後に説明する。図3のステップS1において、CPUは、色変換処理で使用するLUTを決定してステップS2へ進む。LUTは、あらかじめプログラムデータとして用意されているテーブルを用いても、コンピュータ装置100のキーボードなどから入力される情報により選択されるテーブルを用いてもよい。
【0014】
図4は、色信号(L*,a*,b*)を色信号(L*',a*',b*')へ変換するLUTを例示する図である。本実施形態で使用するLUTは、カラーパッチを測色したデータから生成したテーブルでも、変換後の目標値を定めて生成したテーブルでもよい。また、テーブルのLab空間における格子間隔は、変換精度の向上を目的に細かくしなくてもよい。なお、図4のLUTはデバイスに依存しない色空間で表されたものが好ましく、本実施形態ではL*a*b*空間で表されたテーブルを使用する。また、このLUTは各画素の色差だけを変換するものでもよいし、明るさだけを変換するものでもよい。
【0015】
ステップS2において、CPUは、上記LUTを参照して色変換を行い、ステップS3へ進む。ここで、変換前の色空間座標(Lab座標)において色信号のデータがテーブルの格子点にのらない場合は、格子点に位置する最近傍点のデータの変換量を当該データに対する変換量として用いる。CPUはさらに、L*成分の変換量がa*成分およびb*成分の変換量に比べて軽くなるように(たとえば、1/10とする)、成分間で重みを変えて色変換を行う。
【0016】
ステップS3において、CPUは、色変換後の色信号(L*',a*',b*')を用いて特定の色域部(特定色域画素群)を検出する。特定色域画素群は、画像上で所定範囲に存在する画素同士であって、色変換前の色空間座標(Lab座標)において所定距離以内(いわゆる近い色)であるが、色変換による変換量の差が所定値以上となる画素群とする。これら特定色域画素群に対応する色域を特定の色域と呼ぶ。つまり、特定色域は、隣接(近傍)画素において色変換前は互いの色が近く、色変換後は互いの色が近くない色域である。
【0017】
CPUは、特定色域画素群の検出を以下の手順で行い、図3に示すステップS3を行った後にステップS105へ進む。特定色域画素群の検出は、図5に示すフローチャートの手順で行う。
図5のステップS201において、CPUは、原画像に対して注目画素[i,j]を選択する。次に、ステップS202では注目画素を中心としてn画素×n画素(たとえば、9画素×9画素)で構成される矩形領域のマスクを定める。
【0018】
ステップS203では、CPUは、上記矩形領域のマスクに含まれるそれぞれの画素について、色変換前の色空間座標(Lab座標)における距離ΔEを算出する。距離ΔEは、原画像における画素間隔ではなく、注目画素[i,j]に対応するLab座標上のデータと、マスク内に含まれる他の画素に対応するLab座標上のデータとの距離である。
【0019】
そして、CPUは、上記矩形領域のマスクに含まれる画素のうち、ΔE<10が成立する画素を抽出して候補画素群とする。
【0020】
次にステップS204では、CPUは、候補画素群に含まれるそれぞれの画素について、色変換によるデータの変換量uを算出する。なお、注目画素[i,j]に対応するデータの変換量をvとする。ところで、この変換量uおよびvは、どちらも始点を色変換前のLab色空間における座標位置、終点を色変換後のLab色空間における座標位置としたベクトルである。
【0021】
そして、CPUは、候補画素群に含まれる画素のうち、|u-v|>4が成立する画素を抽出し、特定色域画素群とする。
【0022】
ステップS205では、CPUは、注目画素(代表画素)として原画像の画素が全て選択されたか否かを確認し、全て選択されていないようであれば、ステップS206において次の画素に注目画素を移す。原画像の画素が全て選択されていれば、図5の検出処理を終了する。このようにして、注目画素を1つずつ進めながら、原画像の全体について特定色域画素群を検出する。
【0023】
図1のステップS105において、CPUは画像処理を行う。画像処理は、特定色域画素群のみを用いた選択的な平均化フィルタ処理であり、色情報を平滑化するものである。CPUは、図1のステップS104で得たRGB表色系の色信号(R',G',B')を用いて以下のように画像処理を行う。
【0024】
CPUは、特定色域画素群の検出時に使用した上記矩形領域のマスクごとに、各マスクの中心の画素(注目画素)および特定色域画素群に含まれる各画素について、R成分データの平均値rm、G成分データの平均値gm、およびB成分データの平均値bmをそれぞれ算出する。CPUはさらに、各マスク中心の注目画素についての色信号を(rm,gm,bm)に置換する。色信号(rm,gm,bm)は、上記平滑化処理後の色信号(R'',G'',B'')に対応する。
【0025】
CPUは、矩形領域マスクを構成する注目画素を1つずつ進めながら、各マスクの注目画素の色信号を置換する処理を繰り返し、原画像の全体にわたる画像処理を行う。なお、マスク内に特定色域画素群が含まれていない場合は、当該マスクについての処理を省略する。また、ステップS3において特定色域画素群が検出されなかった場合、CPUは適宜ステップS105をスキップして図1による処理を終了する。
【0026】
以上説明した第一の実施形態によれば、次の作用効果が得られる。
(1)LUTを用いた一般の色変換(ガマットマッピング)と異なり、LUTを用いた色変換によって生じる不自然な色や階調を、色変換後の画像処理によって修正するようにした。したがって、色変換精度を向上させるためにLUTの格子間隔を細かくしたり、LUTの格子間隔を補間するように複雑な補間処理を行わなくても、色変換後に生じる画質劣化を抑えることができる。また、本発明は変換前後の色空間座標にかかわらず適用することができる。
【0027】
(2)色変換後の画像処理では、特定色域画素群のみを用いて部分的に平均化フィルタ処理を行うので、画像全体に対して画像処理を行う場合に比べてCPUの処理量を少なく抑えることができる。また、平均化フィルタ処理によって特定色域画素群による色や階調がぼかされるので、色変換後に生じる不自然な色や階調が目立たなくなる。さらに、特定色域画素群を除く画素には平均化フィルタ処理を行わないため、色の境界がぼけることがない。
【0028】
(3)特定色域画素群は、原画像において近傍に存在する画素同士であって、色変換前は互いの色が近く、色変換後は互いの色が近くない画素としたので、色変換によって生じる不自然な色、階調の画素を確実に検出できる。
【0029】
上述したステップS2において、変換前の色空間座標(Lab座標)で色信号のデータがテーブルの格子点にのらない場合に、最近傍点のデータの変換量を当該データの変換量とするようにした。この代わりに、当該データと最近傍点との間の距離に応じた重みを上記最近傍点のデータの変換量に加算し、加算後の変換量を当該データの変換量としてもよい。
【0030】
特定色域画素群の検出に使用する矩形領域のマスクの大きさ(上記例では9画素×9画素)を、LUTによる色変換処理で与えられている重み(上記例ではL*成分の変換量がa*成分およびb*成分の変換量に比べて1/10)に応じて変化させてもよい。マスクの大きさと色変換処理時の重みとを関連づけることで、特定色域画素群が検出しやすくなる。
【0031】
また、特定色域画素群の検出に使用する判定条件(上記例ではΔE<10、|u-v|>4)を、LUTによる色変換処理で与えられている重み(上記例ではL*成分の変換量がa*成分およびb*成分の変換量に比べて1/10)に応じて変化させてもよい。判定条件と色変換処理時の重みとを関連づけることで、特定色域画素群が検出しやすくなる。
【0032】
(第二の実施形態)
第二の実施形態では、第一の実施形態と比べて、図3のステップS1においてLUTを決定後にステップS2へ進むところを、図6のようにステップS2A、S2Bへ進む点が異なる。
【0033】
図6のステップS2Aにおいて、CPUは、LUTを参照して色変換を行った場合に変換後の色色信号(L*',a*',b*')が色再現領域から外れないように、重みデータの生成を以下の手順で行い、ステップS2Bへ進む。
(手順1)
CPUは、色変換後の色信号(L*',a*',b*')について、色再現領域(ガマット)から外れている色域外画素群を検出する。
【0034】
(手順2)
CPUは、原画像のLab色空間上での画素位置[i,j]のそれぞれに対応させて、0〜1の範囲で重みデータを生成する。具体的には、色変換後に色域外画素群に含まれない画素は重みを1とし、原画像の画像位置情報と対応してその重み情報を保持する。また、色変換後に色域外画素となる画素群に対しては、色変換後に色域内になるように重みを0から1の範囲で決定する。なお、変換前に色域境界上にあり、かつ変換後に色域外画素となるものについては重みは0とする。
【0035】
(手順3)
CPUは、原画像のLab色空間上での画素位置[i,j]のそれぞれに対応させて生成した重みデータをコンピュータ装置100内のデータストレージ装置に記憶する。重みデータは、0〜1の範囲で表されたN画素×M画素(ただし、1≦i≦N、1≦j≦M)で構成されるモノクロ画像として扱える。
【0036】
図6のステップS2Bにおいて、CPUは、上記LUTおよび重みデータを参照して色変換を行い、ステップS3へ進む。上述した重みデータに対してフィルタ処理を施す。原画像上において隣接する画素位置同士で、重み値が徐々に変化する(たとえば、0.2ステップ)ように近隣画素位置についての重みデータの平均を算出し、算出した平均値を当該画素位置についての重みデータとする。ただし、重み値0の画素位置については0のままとし、重み値が増加する方向において徐々に変化する構成とする。重みデータが0である画素については、LUTによる色変換を行わずに色変換前の色信号(L*,a*,b*)をそのまま色信号(L*',a*',b*')として出力する。重みデータが1である画素については、LUTによる色変換を行って色変換後の色信号(L*',a*',b*')を出力する。重みデータが0.5である画素については、LUTによる変換量を0.5倍とする色変換を行い、色変換後の色信号(L*',a*',b*')を出力する。なお、重みデータが1である画素についての色変換は、色域外画素群を検出するために(手順1で)行った演算結果を用いて構わない。
【0037】
以上説明した第二の実施形態によれば、次の作用効果が得られる。
(1)色変換後の色信号(L*',a*',b*')が色再現領域(ガマット)から外れる色域外画素群については、色再現領域に収めるように重みをつけて色変換するようにした。したがって、LUTによる色変換後の色信号を確実に色再現領域(ガマット)内に収めることができる。
【0038】
(2)上記(1)の重みをつけた色変換後の画像処理では、特定色域画素群のみを用いて部分的に平均化フィルタ処理を行うので、第一の実施形態と同様に、平均化フィルタ処理によって特定色域画素群による色や階調がぼかされ、色変換後に生じる不自然な色や階調が目立たなくなる。
【0039】
上記フィルタ処理を施した重みデータを用いてLUTによる変換量を補正することにより、原画像上において隣接する画素位置間で色変換処理時の変換量に大きな差が生じることが抑制され、色変換処理後に生じる不自然な色や階調が目立たなくなる。さらに、画素位置に対応させた重みデータに対してフィルタ処理を施すので、色信号に対してフィルタ処理を直接行う場合に比べて、画像の構造を損なうおそれがない。
【0040】
特許請求の範囲における各構成要素と、発明を実施するための最良の形態における各構成要素との対応について説明する。色空間変換手段、画像処理手段、重み情報生成手段、制御手段は、たとえば、コンピュータ装置100のCPUによって構成される。特異な領域は、たとえば、色変換によって生じる不自然な色や階調の領域が対応する。画像処理を行う領域の大きさは、たとえば、マスクの大きさが対応する。重み情報は、たとえば、重みデータによって構成される。なお、以上の説明はあくまで一例であり、発明を解釈する上で、上記の実施形態の構成要素と本発明の構成要素との対応関係に何ら限定されるものではない。たとえば、本実施の形態以外にも、図1のステップS102とS103との間に平滑化処理S105を同時に行うようにしてもよく、こちらの方がよりCPUに行わせる演算回数を少なくすることができる。
【図面の簡単な説明】
【0041】
【図1】本発明の第一の実施形態による色変換処理の流れを説明するフローチャートである。
【図2】プログラムの提供形態を説明する図である。
【図3】色変換処理および平滑化処理の詳細を説明するフローチャートである。
【図4】LUTを例示する図である。
【図5】特定色域画素群の検出処理の詳細を説明するフローチャートである。
【図6】本発明の第二の実施形態による色変換処理の流れを説明するフローチャートである。
【符号の説明】
【0042】
100…コンピュータ装置
101…通信回線
102…サーバコンピュータ
103…ハードディスク装置
104…記録媒体

【特許請求の範囲】
【請求項1】
画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う色空間変換手段と、
前記色空間変換後の色信号によって構成される画像の所定領域に対して選択的に画像処理を行う画像処理手段とを備えることを特徴とする色空間変換装置。
【請求項2】
請求項1に記載の色空間変換装置において、
前記画像処理手段は、前記色空間変換後の色信号によって構成される画像の色および階調の少なくとも一方が前記色空間変換前にない特徴が前記色空間変換後に生じる特異な領域に対して選択的に画像処理を行うことを特徴とする色空間変換装置。
【請求項3】
請求項1または2に記載の色空間変換装置において、
前記画像処理手段は、平滑化フィルタ処理を行うことを特徴とする色空間変換装置。
【請求項4】
画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う色空間変換手段と、
前記色空間変換後の色信号が色再現領域から外れないように前記画像の画素ごとに重み情報を生成する際、当該画素の周囲の画素の重み情報に応じて当該重み情報を生成する重み情報生成手段と、
前記重み情報を用いて色空間変換を行うように前記色空間変換手段を制御する制御手段とを備えることを特徴とする色空間変換装置。
【請求項5】
請求項4に記載の色空間変換装置において、
前記重み情報生成手段は、隣接する画素位置で重みの値が徐々に変化するように重み情報に対してフィルタ処理を施すことを特徴とする色空間変換装置。
【請求項6】
請求項4または5に記載の色空間変換装置において、
前記色空間変換後の色信号によって構成される画像の所定領域に対して選択的に画像処理を行う画像処理手段をさらに備えることを特徴とする色空間変換装置。
【請求項7】
請求項1または5に記載の色空間変換装置において、
前記画像処理手段は、前記画像上で注目画素を含む所定範囲に位置する画素であって、前記色空間変換前の色空間座標において前記画素の色信号値および前記注目画素の色信号値が所定距離以内であり、前記色空間変換による変換量の差が前記画素と前記注目画素との間で所定値以上となる画素に対応させて前記画像処理を行うことを特徴とする色空間変換装置。
【請求項8】
画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う処理と、
前記色空間変換後の色信号によって構成される画像の所定領域に対する選択的な画像処理とをコンピュータ装置に実行させることを特徴とする色空間変換プログラム。
【請求項9】
画像を構成する色信号に対し、ルックアップテーブルを用いて色空間変換を行う処理と、
前記色空間変換後の色信号が色再現領域から外れないように前記画像の画素ごとに当該画素の周囲の画素の重み情報に応じて重み情報を生成する処理と、
前記色空間変換後の色信号が色再現領域から外れる場合、前記重み情報を用いて前記色空間変換を行う処理とをコンピュータ装置に実行させることを特徴とする色空間変換プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2006−211506(P2006−211506A)
【公開日】平成18年8月10日(2006.8.10)
【国際特許分類】
【出願番号】特願2005−23260(P2005−23260)
【出願日】平成17年1月31日(2005.1.31)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】