JP2005354227A - 画像処理方法、画像処理装置 - Google Patents
画像処理方法、画像処理装置 Download PDFInfo
- Publication number
- JP2005354227A JP2005354227A JP2004170445A JP2004170445A JP2005354227A JP 2005354227 A JP2005354227 A JP 2005354227A JP 2004170445 A JP2004170445 A JP 2004170445A JP 2004170445 A JP2004170445 A JP 2004170445A JP 2005354227 A JP2005354227 A JP 2005354227A
- Authority
- JP
- Japan
- Prior art keywords
- color
- hue
- color space
- color data
- compression
- 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.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】 高品質の色域マッピングを得るための、ユーザのパラメータ調整に関する負荷を軽減すること。
【解決手段】 圧縮曲線DB生成部106は、マンセル色相環が示す各色相毎の第1の範囲内の色データ群を第2の範囲内の色データ群に変換し、変換前の色データが示す位置と、この色データの変換後の色データが示す位置とを通る曲線を規定するパラメータを求める。
【選択図】 図1
【解決手段】 圧縮曲線DB生成部106は、マンセル色相環が示す各色相毎の第1の範囲内の色データ群を第2の範囲内の色データ群に変換し、変換前の色データが示す位置と、この色データの変換後の色データが示す位置とを通る曲線を規定するパラメータを求める。
【選択図】 図1
Description
本発明は、入力色データを所定の色再現に応じて変換するものに関する。
カラーデータを出力する装置として、モニタやプリンタ(ハードコピー装置)などがあり、モニタはRGBの加法混色で表現され、ハードコピー装置はCMYKの減法混色で表現されている。
一般的にモニタの方がハードコピー装置よりも色再現範囲が広いため、モニタで表示された画像をハードコピー装置で忠実に再現することはできない。
そこでハードコピー装置で再現できない色を再現できる色に置き換える処理が必要となる。この方法として色空間圧縮方法がある。色空間圧縮方法には様々な方法があるが、圧縮前と圧縮後とで視覚的な一致を図るという観点では、色再現範囲内の色はできる限り圧縮せず忠実に再現し、色再現範囲外の色は色再現範囲内の高彩度部へ圧縮することにより階調性を保持する方法がある。
例えば、第1段階で明度方向に圧縮し、第2段階で彩度方向に圧縮するという方法が知られている。この方法では色信号に対して第1の段階,第2の段階の他に補正処理等、複数段階の処理工程が必要になってしまうため元の色が保持され難く色再現範囲内の色の色信号変換精度も落ちてしまう。
モニタやハードコピー装置の色域(色再現範囲)を定量的に表現する手法としては一次色(R,G,B)、二次色(C,M,Y)と白(W)、黒(Bk)の8点で12面体近似が従来使われてきたが、実際の色域はL*a*b*色空間内では非線形に歪んでいるため近似精度が落ちる問題が指摘されていた。そこで非線形な歪みも表現できる多面体近似(Convex Hull3D)を用いることで精度を高める方法がある。
また圧縮の際には何らかの色相曲線に沿った方が視覚的一致は図られるが、従来の方法ではこの色相曲線を決定する可変パラメータが多いためユーザーへの負担が大きい。
本発明は以上の問題に鑑みて成されたものであり、高品質の色域マッピングを得るための、ユーザのパラメータ調整に関する負荷を軽減することを目的とする。
本発明の目的を達成する為に、例えば本発明の画像処理方法は以下の構成を備える。
すなわち、所定の色空間において所定の色相環が示す各色相毎の第1の範囲内の色データ群を前記所定の色空間において当該第1の範囲よりも色再現範囲が狭い第2の範囲内の色データ群に変換する変換工程と、
前記変換工程による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換工程により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算工程と
を備えることを特徴とする。
前記変換工程による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換工程により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算工程と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば本発明の画像処理装置は以下の構成を備える。
すなわち、所定の色空間において所定の色相環が示す各色相毎の第1の範囲内の色データ群を前記所定の色空間において当該第1の範囲よりも色再現範囲が狭い第2の範囲内の色データ群に変換する変換手段と、
前記変換手段による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換手段により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算手段と
を備えることを特徴とする。
前記変換手段による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換手段により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算手段と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば本発明の画像処理装置は以下の構成を備える。
すなわち、第1の色空間を第2の色空間にマッピングする画像処理方法であって、
色相曲線データベースを保持する保持工程と、
ある色相について色空間圧縮パラメータに関するユーザ指示を入力する入力工程と、
前記入力された色空間圧縮パラメータと前記色相曲線データベースに基づき、前記第1の色空間を第2の色空間にマッピングする工程と
を備えることを特徴とする。
色相曲線データベースを保持する保持工程と、
ある色相について色空間圧縮パラメータに関するユーザ指示を入力する入力工程と、
前記入力された色空間圧縮パラメータと前記色相曲線データベースに基づき、前記第1の色空間を第2の色空間にマッピングする工程と
を備えることを特徴とする。
本発明の構成により、高品質の色域マッピングを得るための、ユーザのパラメータ調整に関する負荷を軽減することができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図1は本実施形態に係る画像処理装置110の機能構成を示す図である。本実施形態に係る画像処理装置は、第1の色空間の多面体部101,第2の色空間の多面体部103、圧縮パラメータ設定UI104,マンセル色相曲線DB105、圧縮曲線DB生成部106,色空間圧縮部107により構成されている。本実施形態ではこれら各部はハードウェアにより構成されているものとする。
図1は本実施形態に係る画像処理装置110の機能構成を示す図である。本実施形態に係る画像処理装置は、第1の色空間の多面体部101,第2の色空間の多面体部103、圧縮パラメータ設定UI104,マンセル色相曲線DB105、圧縮曲線DB生成部106,色空間圧縮部107により構成されている。本実施形態ではこれら各部はハードウェアにより構成されているものとする。
以下の説明では先ず、色圧縮対象の際に使用する圧縮曲線を生成する為の処理について説明し、その後、この圧縮曲線を用いた圧縮処理について説明する。
圧縮対象の色データとしては、sRGB、AdobeRGB、WideGamutRGB等の色空間に属する色のデータや、何らかのデバイスに依存する色空間のRGBもしくはCMYKの色のデータを、デバイス非依存のL*a*b*のデータに変換したものである。何らかのデバイスに依存する色空間とは、例えば、デジタルカメラで撮影した画像を示すRGBであったり、スキャナにより原稿から読み取られた画像を示すRGBであったり、あるプリンタに出力すべきCMYKであってもよい。
<圧縮曲線生成処理>
圧縮曲線を生成する処理について説明する。先ず、第1の色空間内の各色(各点)のデータ(第1の色空間内の点群データ100)、第2の色空間内の各色(各点)のデータ(第2の色空間内の点群データ102)のそれぞれが第1の色空間の多面体部101、第2の色空間の多面体部103に入力され、第1の色空間の多面体部101、第2の色空間の多面体部103はそれぞれ、第1の色空間の点群データ100が示す各点を包含することで形成される多面体、第2の色空間の点群データ102が示す各点を包含することで形成される多面体を生成する。それぞれの多面体は、第1の色空間の点群データ100が示す点群によって規定される色再現範囲(第1の色再現範囲)、第2の色空間の点群データ102が示す点群によって規定される色再現範囲(第2の色再現範囲)を示すものである。
圧縮曲線を生成する処理について説明する。先ず、第1の色空間内の各色(各点)のデータ(第1の色空間内の点群データ100)、第2の色空間内の各色(各点)のデータ(第2の色空間内の点群データ102)のそれぞれが第1の色空間の多面体部101、第2の色空間の多面体部103に入力され、第1の色空間の多面体部101、第2の色空間の多面体部103はそれぞれ、第1の色空間の点群データ100が示す各点を包含することで形成される多面体、第2の色空間の点群データ102が示す各点を包含することで形成される多面体を生成する。それぞれの多面体は、第1の色空間の点群データ100が示す点群によって規定される色再現範囲(第1の色再現範囲)、第2の色空間の点群データ102が示す点群によって規定される色再現範囲(第2の色再現範囲)を示すものである。
ここで、点群データから多面体を生成する方法としては様々な方法が考えられるが、例えばConvex Hull 3Dを用いて生成することを考える。また、第1の色空間の点群データ100は、色圧縮対象となるデータの色空間と同じである必要がある。例えば、圧縮対象となるデータとしてデジタルカメラによるRGB画像が入力される場合は、デジタルカメラのRGB色空間のRGB値とL*a*b*値との対応に基づいてL*a*b*値に変換されたものとなる。同様に、プリンタのCMYK画像が入力される場合は、プリンタのCMYK色空間のCMYK値とL*a*b*値との対応に基づいてL*a*b*に変換されたものとなる。
図2は、色空間内の点群データに基づいて生成された、色空間の再現範囲を表現した多面体の一例を示す図である。
第1の色空間の多面体部101、第2の色空間の多面体部103によって生成された多面体のデータは後段の圧縮曲線DB生成部106に入力される。圧縮曲線DB生成部106は、第1の色再現範囲を示す多面体のデータ、第2の色再現範囲を示す多面体のデータを用いて、第1の色空間における色を第2の色空間における色に色圧縮するための圧縮曲線を生成する処理を行う。以下、圧縮曲線DB生成部106による圧縮曲線を求める処理について説明する。
この生成する圧縮曲線は、マンセル色相環(マンセル色相曲線)をベースとする。マンセル色相環のデータはマンセル色相曲線DB105に保持されており、これを読み出して用いる。マンセル色相環をベースとすることで、色相曲線の設定にかかるユーザの負担を軽減することができる。
図3は、L*=50の場合のマンセル色相環を示す図である。図3のマンセル色相環は、L*=50であるときのa*−b*平面内の色相環を示すものである。以下説明する圧縮曲線生成処理では、L*方向(明度方向)のマンセル色相環を求めることになる。
図4は、ある色相におけるC*−L*平面における第1の色空間の点群データ100が占める部分と第2の色空間の点群データ102が占める部分とを示す図である。以下の説明では、この第1の色空間の点群データ100を第2の色空間の点群データ102に色圧縮する際に用いる圧縮曲線を求める処理について説明する。
まず、第1の色空間の点群データ100を用いて生成された多面体を任意の色相で切った時に、最大彩度を持つ点(同図において「最大彩度点」と示した位置における色データ)のマッピングポイント(色圧縮後のL*a*b*値)を決定する。換言すれば、最大彩度点の色圧縮後の第2の色空間における色データを決定する。
色空間圧縮の際には、色相、明度、彩度を変化させる必要があるが、色相に関しては上記マンセル色相曲線に沿わせる。明度、彩度に関しては各々をどれだけ保持して圧縮するかによってマッピングポイントが異なってくる。明度を保持して圧縮する場合は彩度を変化させる明度保持優先圧縮になり、彩度を保持して圧縮する場合は明度を変化させる彩度保持優先圧縮となる。明度を変化させないで色圧縮を行う場合には、第1の色空間における最大彩度点は第2の色空間において矢印401で指す位置に色圧縮され、彩度を変化させないで色圧縮を行う場合には、第1の色空間における最大彩度点は第2の色空間において矢印402で指す位置に色圧縮される。なお、明度、彩度それぞれを所定の割合(例えば明度を80%、彩度を20%)で保持して色圧縮を行うようにしても良い。その場合、最大彩度点から、矢印401の方向成分の80%、矢印402の方向成分の20%を合成した方向成分を有する矢印が第2の色空間の点群データ102が占める部分と初めて交差する位置の色データに色圧縮を行う。このように、最大彩度点における色データの色圧縮を行う際の、明度、彩度のそれぞれの割合は圧縮パラメータ設定UI104でもって設定することができる。
次に、最大彩度点以外の第1の色空間の最外域点のマッピングポイントを決定する。すなわち、第1の色空間の点群データ100が占める部分のエッジ部分の色データのマッピングポイント(色圧縮後のL*a*b*値)を決定する。
まずマッピングポイントの明度を決定する。その際、図5に示すように最大彩度点のマッピングポイントに従って決定すると全体的に明度が変化し、元の色みを保持できなくなる。低彩度の部分はなるべく元の明度を保持する方が出力画像が好ましくなる。
そこで、例えば図6に示す如く、最大彩度点よりも上部(第1の色空間の点群データ100の部分601においてC*−L*平面において傾きが負の部分)に関しては一点鎖線602で示す如く湾曲させる。この湾曲は制御点C1〜C4をコントロールし、曲線を生成することで決定する。
C1のx座標(彩度C*)は可変で、圧縮パラメータ設定UI104でもって設定することができる。C4のx座標は最大彩度点の彩度と同じである。またC2、C3のx座標はC1のx座標、C4のx座標間を4等分するように決定される。
一方、C1のy座標(明度)は可変であり圧縮パラメータ設定UI104でもって設定することができる。C4のy座標は最大彩度点の明度である。C2のy座標y2,C3のy座標y3は、例えばC1、C4における微分係数をそれぞれr1,r4とすると、式r1,r4が圧縮パラメータ設定UI104で設定した値と同じなるようにC2のy座標y2,C3のy座標y3をコントロールする。
当然、y2,y3の求め方はこれに限定するものではなく、その他にも例えば、楕円関数により一点鎖線を楕円の一部分に近時する方法により決定しても構わない。
このようにして、最大彩度点よりも上部の色データの色圧縮後の明度を決定する。次に色圧縮後の彩度を決定する。そのための方法としては図7に示す如く、C*−L*平面において、上記C1からC4(同図ではP1とC1とが重なっている)のそれぞれのy座標(明度)と同じ第2の色空間の点群データ(P1’、P2’、P3’、P4’)を特定する。これにより、第1の色空間の点群データ100においてP1〜P4の色圧縮後の色データP1’〜P4’を求めることができる。このP1’〜P4’は何れも第2の色空間の点群データ102を用いて生成された多面体の表面上の点である。
以上のような処理を最大彩度点を境に上部と下部とで、元の点とマッピング後の点の対を複数組(例えば20組)求める。なお、最大彩度点よりも下部(第1の色空間の点群データ100の部分601においてC*−L*平面において傾きが正の部分)に関しては一点鎖線602で示す如く湾曲させる以外は上部と同じ処理を行う。
そして、元の点とマッピング後の点とを通る曲線を圧縮曲線として求める。元の点とマッピング後の点の対を20組求めたのであれば、この圧縮曲線は20本求まる。ここで、圧縮曲線を求める方法について説明する。
圧縮曲線は上述の通り、元の点とマッピング後の点とを通る曲線であるが、この2点だけではこの2点を通る曲線を求めることはできない。そこで、その一例として、以下のような方法が適用可能である。例えば図7におけるP3とP3’とを通る曲線を求める場合、P3のx座標値をP4と同じにした位置(P3’’)、P3’のx座標値を0にした位置(P3’’’)を求め、P3’’’、P3’、P3,P3’’の順に通る曲線を、周知のスプライン関数(例えばリーゼンフェルトスプライン関数)を用いて生成することができ、これを「P3とP3’とを通る曲線」として求めることができる。これはその他の点間を通る圧縮曲線を求める場合にも同様である。
尚、求めたそれぞれの圧縮曲線は互いに交差していないことが前提であって、交差してしまう場合には、一方が他方を交差しないようにする処理が必要となる。それぞれの圧縮曲線が交差しないようにする方法については特に限定するものではない。
図8はある色相における圧縮曲線の一例を示す図である。同図において801は第1の色再現範囲を示す多面体、802は第2の色再現範囲を示す多面体を示す。同図に示す如く、第2の色再現範囲は第1の色再現範囲よりも一般的に色再現範囲は狭いので、第1の色再現範囲を示す多面体801は、第2の色再現範囲を示す多面体802よりもサイズが大きく、且つ第2の色再現範囲を示す多面体802を包含している。なお、図中では見やすくするためにそれぞれの多面体は12面体で表している。また同図において803は上記処理により求めた圧縮曲線群で、点の対だけ存在する。
このような圧縮曲線群を、図3に示したマンセル色相環の最外周上の各位置(同図では40点の各位置)におけるa*、b*について求める。
以上のようにして、第1の色空間の点群データ100と第2の色空間の点群データ102とで、元の色データと圧縮後の色データとの対応関係を、圧縮曲線として求めることができる。
<色圧縮処理>
次に、上記処理により求めた圧縮曲線を用いて、色圧縮を行う処理について説明する。色圧縮部106には、色圧縮する対象の色データが入力される。従って色圧縮部106は、この入力された色データに対して、圧縮曲線DB生成部106が生成した上記圧縮曲線データを用いて、指定された圧縮率に従った第2の色空間への色圧縮を行う。
次に、上記処理により求めた圧縮曲線を用いて、色圧縮を行う処理について説明する。色圧縮部106には、色圧縮する対象の色データが入力される。従って色圧縮部106は、この入力された色データに対して、圧縮曲線DB生成部106が生成した上記圧縮曲線データを用いて、指定された圧縮率に従った第2の色空間への色圧縮を行う。
この色圧縮処理の第1段階としては、入力色データが示すL*a*b*値を通る圧縮曲線を、上記圧縮曲線データを用いて補間処理により求める。この補間処理については、様々な補間方法が考えられるが、その一例を図9を用いて以下説明する。
図9は、入力色データが示すL*a*b*値を通る圧縮曲線を、先に求めた上記複数の圧縮曲線を用いて補間処理により求める処理のフローチャートである。
先ず、入力色データが示すL*a*b*値のうち色相が、L*a*b*色空間内で上記複数の圧縮曲線のうち、どの圧縮曲線の間に位置するのかを特定する(ステップS201)。すなわち、入力色データが示すL*a*b*値のうち色相が、どの2本の圧縮曲線間に位置するのかを求める。
図10は、ステップS201における処理を説明する図である。同図において1001は入力色データのa*―b*平面における位置を示す。この位置1001は、色相方向では圧縮曲線1002,1003の間にある。従ってこの場合、ステップS201では、特定すべき2つの圧縮曲線は1002,1003の2本となる。
次に、入力色データが示すL*a*b*値のうち明度が、L*a*b*色空間内で上記複数の圧縮曲線のうち、どの圧縮曲線の間に位置するのかを特定する(ステップS202)。すなわち、入力色データが示すL*a*b*値のうち明度が、どの2本の圧縮曲線間に位置するのかを求める。
図11は、ステップS202における処理を説明する図である。同図において1101は入力色データのL*―b*平面における位置を示す。この位置1101は、明度方向、すなわちL*軸方向では圧縮曲線1102,1103の間にある。従ってこの場合、ステップS202では、特定すべき2つの圧縮曲線は1102,1103の2本となる。
以上のステップS201,ステップS202による処理によって、入力色データは4本の圧縮曲線(図10,11の場合、圧縮曲線1002,1003,1102,1103)に囲まれた領域内に存在する可能性があることが分かる。
図12は、L*a*b*色空間において、上記処理により特定した4本の圧縮曲線を示す図である。同図において1201が入力色データが示すL*a*b*値の位置で、1202〜1205が特定した4本の圧縮曲線を示す。
次に、彩度方向で走査する(ステップS203)。ステップS203における処理の詳細は、ステップS301〜ステップS307である。以下、ステップS301〜ステップS307の各ステップにおける処理を説明することで、ステップS203における処理の詳細について説明する。
なお本実施形態では各圧縮曲線を事前に等分(等分に限らないが)し、各等分した位置に順にインデックスを付けているものとするが、圧縮曲線を生成する際に複数の点(例えば14点)を用いた場合には、これら14点のそれぞれにインデックスを付けるようにしても良い。本実施形態では各圧縮曲線上の14点にそれぞれインデックスを付けているものとするが、インデックスの上限値は14に限定するものではない。
ステップS203における処理では先ずi,(i+1)番目(変数i、そして後述の処理で用いる変数jは共に事前に1に初期化されている)の点の合計8点で構成される六面体(実際にはねじれの位置の関係にある点対が存在する場合があるため六面体以上)の中に入力色データが示すL*a*b*値が存在するか否かを判断する(ステップS301)。
図21は、この4本の圧縮曲線において、i,(i+1)番目の点の合計8点で構成される六面体を示す図で、同図において2101,2102,2103,2104がそれぞれこの4本の圧縮曲線を示しており、2100がこの六面体を示している。2100a、2100b、2100c、2100dはそれぞれ、圧縮曲線2101,2103,2104,2102においてi番目の点を示しており、2100e、2100f、2100g、2100hはそれぞれ、圧縮曲線2101,2103,2104,2102において(i+1)番目の点を示している。これにより、i,(i+1)番目の点の合計8点で構成される六面体が構成される。従って以下の処理では、この変数iを1つずつ増やしていくことで、この六面体の位置を圧縮曲線の一端から他端まで移動させ、どの六面体内に入力色データが示すL*a*b*値が存在するかを検索する。本実施形態では変数iの取る範囲は1≦i≦13となる。
図9のフローチャートに戻って、ステップS302で存在しないと判断した場合には処理をステップS303に進めると共に、変数iの値に1を加算して更新し、更新後の変数iの値が13であるか否かを判断する(ステップS303)。変数iの値が13である場合にはステップS203における処理を「限定失敗」として終了する。
一方、ステップS303において変数iの値が13ではないと判断した場合には、更新後の変数iを用いてステップS301,ステップS302における処理を行う。
また、ステップS302における判断処理において、存在すると判断した場合には処理をステップS304に進め、L*a*b*値がその中に存在すると判断した六面体を構成する6つの四面体のうちj番目の四面体内に入力色データが示すL*a*b*値が存在するか否かを判断する(ステップS304)。
六面体を6つの四面体に分割するのは事前に行うものであるが、この分割に係る技術については周知のものであるので、ここでの説明は省略する。また、各六面体(本実施形態では14個の六面体)内の6つの四面体には事前に1〜6のインデックスが付けられているものとする。従って、四面体に対するインデックスを1つ指定すると、各六面体から1つの四面体を特定することができ、計14個の四面体が指定されることになる。また、各六面体を構成する四面体において、同じ四面体インデックスを有する四面体同士は、四面体を構成する各頂点の対応がとれているものとする。
そして、j番目の四面体内に存在しないと判断した場合には処理をステップS305からステップS306に進め、変数jの値に1を加算して更新し、更新後の変数jの値が7であるか否かを判断する(ステップS306)。変数jの値が7である場合にはステップS203における処理を「限定失敗」として終了する。
一方、ステップS306において変数jの値が7ではないと判断した場合には、更新後の変数jを用いてステップS304,ステップS305における処理を行う。
そして、ステップS305においてj番目の四面体内に存在すると判断した場合には処理をステップS305からステップS307に進め、ステップS302で入力色データが示すL*a*b*値がその中に存在すると判断した六面体が何番目のものであるのかを示す変数iの値(ステップS302で存在すると判断したときの変数iの値)と、ステップS305で入力色データが示すL*a*b*値がその中に存在すると判断した四面体が何番目のものであるのかを示す変数jの値(ステップS305で存在すると判断したときの変数jの値)を記憶する。
図13は、L*a*b*色空間において入力色データが示すL*a*b*値の位置1301が属する四面体1302を示す図である。
そして以上のようにしてステップS203の処理が完了すると、処理をステップS204に進め、ステップS203の処理結果が「限定成功」であるか否か(換言すれば「限定失敗」ではなかったか)を判定し(ステップS204)、「限定失敗」と判定した場合には処理をステップS209に進め、ステップS201で特定した2本の圧縮曲線以外の2本の圧縮曲線、ステップS202で特定した2本の圧縮曲線以外の2本の圧縮曲線を選択し、ステップS203以降の処理を繰り返す。従ってステップS209から処理をステップS203に移行した場合には、前回ステップS201で特定した2本の圧縮曲線以外の2本の圧縮曲線、前回ステップS202で特定した2本の圧縮曲線以外の2本の圧縮曲線の合計4本の圧縮曲線を以下の処理で用いるものとする。
一方、ステップS205で「限定成功」であると判断した場合には(「限定失敗」ではないと判断した場合には)、処理をステップS205に進め、ステップS307で得られた変数jで特定される四面体を構成する各頂点に対する重み値を計算する(ステップS205)。この重み値は、この四面体の各頂点位置と、入力色データが示すL*a*b*値の位置との相対的な位置関係を表すもので、例えば自頂点と入力色データが示すL*a*b*値の位置との距離をこの自頂点に対する重み値とするなど、様々なものが考えられる。
次に以下の処理を行うことで、入力色データのL*a*b*値を通る圧縮曲線を求める(ステップS206)。
先ずすべての六面体において、ステップS307で記憶した四面体のインデックスと同じインデックスを有する四面体を特定する。図14は、ステップS307で記憶した四面体のインデックスと同じインデックスを有する14の四面体を示す図である。
そして特定した各四面体の各頂点に対して、ステップS205で求めた重み値を対応する頂点に与える。これにより、ステップS307で記憶した四面体のインデックスと同じインデックスを有する各四面体内に点を設けることができる。この点は、四面体の各頂点との相対位置関係が、入力色データが示すL*a*b*値の位置を包含する四面体の各頂点とこの位置との相対関係と同じである。
従って、これらの点を通る曲線をスプラインなどの曲線でもって求めることにより入力色データのL*a*b*値を通る圧縮曲線を求める(ステップS206)。図15は、入力色データのL*a*b*値を通る圧縮曲線を示す図である。
次に、実際に、入力色データに対して色圧縮処理を行うのであるが、その際、圧縮率が圧縮パラメータ設定UI104でもって設定される。ここで、実際の色圧縮処理は、入力色データを、入力色データの位置を通る圧縮曲線上を圧縮率に従った位置の色データに変換することであるが、その処理について図16を用いて説明する。
図16は圧縮曲線、圧縮率を用いて入力色データを色圧縮する処理を説明する図である。同図において1601が入力色データのL*a*b*色空間における位置を示しており、1600はこの位置を通る圧縮曲線である。同図では入力色データは、第2の色再現範囲外、すなわち第1の色再現範囲内の色データである。上述の通り、この圧縮曲線1600は彩度が0の点1604から最大彩度点1605間を結ぶものであり、その途中には第2の色再現範囲の境界線1602との交点1603が存在する。よって圧縮曲線1600上において、1603〜1604の間が第2の色再現範囲内である。
ここで圧縮率は0%から100%までの間の数値を取ることができ、圧縮率が100%の場合には、入力色データは1603の位置の色データに変換され、圧縮率が0%の場合には、入力色データは1604の位置の色データに変換される。
ここで、入力色データが第2の色再現範囲内である場合(入力色データの位置1601が圧縮曲線1600上の1603〜1604の間の位置にある場合)、
(1) 現在の入力色データの位置における入力色データを圧縮後の色データとする
(2) 上述の通り圧縮率に従った位置における色データを圧縮後の色データとする
の二つの方法が考えられる。(1)の方法では第2の色再現範囲内の入力色データは忠実に再現されるが階調性は失われるため(2)の方法を採用する。(2)の方法として線形に圧縮すると全体的に元の彩度が保持されない。従って、図17に示すように、線形圧縮を元の彩度がある程度保持されるようかつ階調性が損なわれないよう非線形に圧縮することを考える。非線形圧縮する方法としては様々な方法があり、どのような方法を用いても構わないが、例えば、図17に示すように、制御点G1〜G4を設けG1,G4の位置を設定した後G1,G4における微分係数によってG2,G3を設定する。但しG1,G4の位置や各々の微分係数は可変であり、状況に応じて変化させる。
(1) 現在の入力色データの位置における入力色データを圧縮後の色データとする
(2) 上述の通り圧縮率に従った位置における色データを圧縮後の色データとする
の二つの方法が考えられる。(1)の方法では第2の色再現範囲内の入力色データは忠実に再現されるが階調性は失われるため(2)の方法を採用する。(2)の方法として線形に圧縮すると全体的に元の彩度が保持されない。従って、図17に示すように、線形圧縮を元の彩度がある程度保持されるようかつ階調性が損なわれないよう非線形に圧縮することを考える。非線形圧縮する方法としては様々な方法があり、どのような方法を用いても構わないが、例えば、図17に示すように、制御点G1〜G4を設けG1,G4の位置を設定した後G1,G4における微分係数によってG2,G3を設定する。但しG1,G4の位置や各々の微分係数は可変であり、状況に応じて変化させる。
以上の手順により決定したマッピングポイントへ入力色データを移動させる。この方法としては様々な方法があり、どのような方法を用いても構わないが、圧縮曲線は三次元的に歪曲した連続点データなので例えば、圧縮曲線をパラメトリックスプラインとしてsとtをそれぞれ変数とするB−スプラインで表現することを考える。この方法は通常はs,t2変数で曲面を表現するものだが今回は曲線のためs成分を要素1つのみとして利用する。
図18は、上記色圧縮処理を行うために設定すべきパラメータを操作するためのGUI(グラフィカルユーザインターフェース)の表示例を示す図である。同図のGUIは圧縮パラメータ設定UI104に相当する。
領域402は圧縮パラメータ設定UI104を操作することで指定されたICCプロファイルより抽出した色空間情報(第1色空間および第2色空間それぞれが何であるかを示す情報など)を表示する。領域405は、領域402内に表示されているICCプロファイルを基に3D Convex Hullによって計算した色再現範囲(第1の色再現範囲、第2の色再現範囲)の多面体を描画するための領域である。
また領域402には圧縮曲線DB作成のために1次色、2次色の圧縮曲線を表示しても良い。その場合、これら圧縮曲線は各々RGB、CMYの色で描画され、アクティブの圧縮曲線は鮮やかに、非アクティブの圧縮曲線は薄い色で表示し見分けやすくする。そしてアクティブな色に関して明度・彩度の圧縮設定を領域403,404内に表示されるGUIを用いて行う。
領域403では最大彩度点およびそれ以外の最外域の点のマッピングポイントの明度を制御するための(図6を用いて説明した)制御点の位置を設定することができ、その結果を連動して領域405内に反映させる。尚、図6の説明では詳しくはふれなかったが、図19に示すように、最大彩度点の下部に対する制御点C4〜C7も領域403内で制御することができる。従って実際には図19に示すGUIが領域403内に表示される。
領域404には図17に示すようなGUIが表示され、上記制御点G1〜G4の位置を操作する為のGUI表示する領域であり、その操作の結果を連動して領域405内に反映させる。
圧縮パラメータ設定UI104により決定するC1〜C7のパラメータは1次色、2次色(RGBCMYに対応するL*a*b*)を通る色相曲線にのみ行えばよい。それ以外の色相曲線、例えば、RとYに挟まれる領域内の色相曲線については、RとYにおける圧縮パラメータを基に線形補間により求めた値をパラメータとして用いることで自動的に生成される。そのためユーザーは簡単に圧縮曲線DBを作成することができる。
以上の説明の通り、本実施形態によって、色圧縮処理の際に従来に比べても比較的少ない工数で処理するため、精度よく色圧縮処理を行うことができる。また、入出力色空間の特性の違いを吸収し、様々な色空間で高精度な圧縮曲線を動的に生成することができる。
尚本実施形態ではデバイス非依存の色空間としてL*a*b*色空間を用いて説明したが、この色空間の代わりとして適用可能なものはこれ以外にも考えられ、例えばL*u*v*などの他の色空間でも構わない。
[第2の実施形態]
第1の実施形態で点群に基づいてこの点群を包含する多面体を生成するためにConvex Hull 3Dを用いた。このConvex Hull3Dのアルゴリズムは以下の手順を踏む。
第1の実施形態で点群に基づいてこの点群を包含する多面体を生成するためにConvex Hull 3Dを用いた。このConvex Hull3Dのアルゴリズムは以下の手順を踏む。
(処理1) 点群データから初期値として1〜4番目の点を各頂点とする多面体(初期四面体)を作成する。
(処理2) 次に5番目の点が既に作成した四面体の内にあるか外にあるかを判定する。内外判定の方法を以下に示す。
内外判定したい点と四面体を構成する一面(一つの三角形)との表裏判定を行う。図22は、内外判定対象の点と、四面体を構成する(表裏判定で用いる)一面を示す図である。同図において内外判定対象の点pの三角形2201に対する表裏判定は、点Pと三角形2201を構成する1つの頂点qとを結ぶベクトル2202と、三角形2201の法線ベクトルnorとの内積(pq・nor)が正か負かで決定する。内積結果が正の場合には、点pは三角形2201の裏側に位置しており、内積結果が負の場合には、点pは三角形2201の表側(法線ベクトルの向いている側)に位置していることになる。
この性質を利用して内外判定対象の点の四面体に対する内外判定処理は、図23に示す如く、四面体2301を構成する全ての面の法線ベクトル2302〜2305を四面体2301の重心に対して外側を向くように予め設定しておき、全ての面に対して図22を用いて説明した表裏判定処理を行う。その結果、1つ以上の面に対して表である場合には点pは四面体2301の外部に位置することになり、逆に全ての面に対して裏である場合には、点pは四面体2301の内部に位置することになる。
よって以上のことから、5番目の点が四面体の内部に位置するのであれば次の点、すなわち6番目の点に対して同様にこの四面体に対する内外判定処理を行う。一方、5番目の点が四面体の外部に位置する場合には、この5番目の点を新たな多面体の頂点とし、その結果新たな多面体を再構成する処理を行う必要がある。
1つの頂点が加わることで新たな多面体の再構成する方法について以下説明する。図24は1つの頂点が加わることで新たな多面体の再構成する方法を説明する図である。同図では、多面体に対して点Pを新たな頂点として加え、その結果新たな多面体を構成する場合について示したものである。
先ず点pの位置から多面体2401を見て、見える面(多面体2401においてメッシュで示していない部分)と見えない面(多面体2401においてメッシュで示している部分)を判定する。判定方法には先述した点と面の表裏判定が利用できる。すなわち、見える面とは、点pを表と判定する面群により構成される部分であり、見えない部分とは点pを裏と判定する面群により構成されている部分である。
このとき、見える面と見えない面の境界となる辺を結んでできる面を地平面と以下呼称する。ここで、地平面と点pにより多角形錐ができる。この多角形錐の内部に含まれる点は点pの追加により削除される点である。よって再構成される多面体はこの多角形錐と見えない面を結合したものとなる。
(処理3) (処理2)を点群データ全てについて行う。
図25(a)は、点群を示す図で、図25(b)は図25(a)に示した点群に基づいて以上説明したConvex Hull3Dにより作成した多面体を示す図である。
ここで、(処理2)の手順において、参照している点が多面体の内部であれば別段何も処理を行うことなく次に点に対して内外判定を行うのであるが、逆に参照している点が多面体の外部に位置している場合には上述の通り、新たに多面体を再構成するという、参照している点が多面体の内部である場合に比べて処理や複雑になる。
このことから、点データの並び方によっては非常に時間がかかる場合がある。また既に処理した点とまったく同じ点や、前回処理した点と非常に近接した点を今回の参照する点とする場合、それが特異点となり多面体が構成できない場合がある。
そこでこれらの問題を解消するために、色データ群を用いて多面体を生成する前段で、この色データ群を整理する。具体的には先ず、まったく同じ点(全く同じ色を示す色データ)に関しては間引き、次に、間引き処理後に残った色データ群を彩度の高い順に並び替える。
Convex Hull3Dのアルゴリズムの性質上、処理する点がその時点での多面体の内にある回数が多いことが処理速度の向上に繋がる。よって並び替える条件は、なるべく最終的に多面体の外側を構成するであろう彩度の高い点が、全色相方向偏り無く早い段階で参照対象となることである。よってこの条件を満たすべく色データ群を並び替える。並び替える方法としては、まず最終的に多面体の構成点のなることがわかっているR、G、B、C、M、Y、W、Bkのデータを先頭に移動すること。一次色、二次色以外にも特色などで多面体を構成しそうな点があればそれも先頭の方に移動することでも効果はあがる。それ以外の点はC*(彩度)で降順に並び替えることである。但し、もしR、G、B、C、M、Y、W、Bkのデータを特定できない場合は以下の(処理4)〜(処理6)に示す処理を行う。
(処理4) データのL*成分を考慮しないでa*−b*の二次元平面でConvex Hull 2Dを適用する。
(処理5) Convex Hull 2Dによって選出された点群をデータの先頭に移動する。
(処理6) それ以外の点はC*(彩度)で降順に並び替える。
以上の処理により、各点の内外判定処理の早期段階で多面体の形状が決定するので、これ以降は多面体の再構成処理が無いので、全体として多面体生成処理にかかる時間を従来よりも軽減させることができる。
因みにConvex Hull 2Dのアルゴリズムは以下の(処理7)〜(処理10)の通りである。
(処理7) 点群データ(a*、b*成分のみ考慮)入力
(処理8) 図26に示す如くa*−b*平面において原点と無限遠点を結ぶ直線を反時計回りにθ=0から回転させ、この直線に最初にぶつかった点(θ=a)を第1の凸多角形構成点とする。図27は、第1の凸多角形構成点を検索した状態を示す図で、同図において2701が第1の凸多角形構成点を示す。
(処理8) 図26に示す如くa*−b*平面において原点と無限遠点を結ぶ直線を反時計回りにθ=0から回転させ、この直線に最初にぶつかった点(θ=a)を第1の凸多角形構成点とする。図27は、第1の凸多角形構成点を検索した状態を示す図で、同図において2701が第1の凸多角形構成点を示す。
(処理9) ぶつかった点(図27では点2701)と無限遠点を結ぶθ=aの直線をぶつかった点を中心に反時計回りに回転させる。そして次にぶつかった点を凸多角形構成点に追加する。図28は、次の凸多角形構成点を検索した状態を示す図で、同図において2801が第1の凸多角形構成点2701の次に見つかった凸多角形構成点である。そして次には、この凸多角形構成点2801と無限遠点を結ぶ直線2802を点2801を中心に反時計回りに回転させる。そして次にぶつかった点を凸多角形構成点に追加する。図29は、次の凸多角形構成点を検索した状態を示す図で、同図において2901が凸多角形構成点2801の次に見つかった凸多角形構成点である。そして次には、この凸多角形構成点2901と無限遠点を結ぶ直線2902を点2901を中心に反時計回りに回転させる。
(処理10) 直線が一回転(θ=2π)になるまで(処理9)を繰り返す(ここでθは、時計回りに回転させた直線の角度を示す)。そしてθ=2πとなったときには図30に示す如く、凸多角形が得られる。
以上の方法で一次色、二次色および該当する特色が特定できる。W、Bkに関しては点群データを明度方向で昇順(降順でも可)することで得ることができる。
点群データを並び替えた場合と並び替えない場合とでの多面体の生成過程を図31に示す。同図において左側の図(図31(a)〜(e))が点群を並び替えしないで多面体を作成する過程を示した図で、右側の図(図31(f)〜(j))が点群を並び替えして多面体を作成する過程を示した図である。
右側、左側の両方とも上から8点、50点、100点、200点、400点を入力した時点でのGamutを示す。並び替えた場合の方が早い段階で最終的な多面体に近い形状をしていることがわかる。
[第3の実施形態]
図32は作成した圧縮曲線DBの色相をユーザが編集するためのGUIを示す図である。同図において3206がこのGUIのウィンドウを示す。編集結果は領域3207内に連動して表示される。同図のGUIは圧縮パラメータ設定UI104に相当する。
図32は作成した圧縮曲線DBの色相をユーザが編集するためのGUIを示す図である。同図において3206がこのGUIのウィンドウを示す。編集結果は領域3207内に連動して表示される。同図のGUIは圧縮パラメータ設定UI104に相当する。
具体的な編集方法としては、例えば第1色空間のマゼンタを通る圧縮曲線を編集する場合、圧縮曲線と第2色空間の交点をマウス等により移動させる方法である。まず、マウスで動かしたい色相曲線をクリックする。すると領域3207では選択された色相曲線が太い線で表示される。また色相曲線の可動範囲は3209に示す如くその範囲を示すポインタでもって表示する。なお、ポインタの形状はこれに限定するものではない。なおこの可動範囲はパラメータとしてユーザ指定も可能である。
例えば、3208で示す点をクリックすると、3210で示す如くウィンドウを表示する。ウィンドウ3210では選択された色相曲線の色相番号が領域3211内に表示され、ユーザは色相を動かす可動範囲をスライダ3212でもって指定すると、指定した色相値が領域3214内に表示される。領域3213内に表示される限界可動範囲の初期値として人間が色相の変化を視認できるか否かの境界、弁別閾(ΔE94≒1.0等)を設けることで、色相移動による色の大きな破綻を防ぐことができる。
色相の移動ができる圧縮曲線は第1色空間の一次色、二次色を通る曲線のみであり、それ以外の圧縮曲線に関しては、一次色、二次色の色相の移動に伴って、交差しないように自動的に滑らかに調整(移動)される。今回の例ではマゼンタを通る圧縮曲線を移動させたので、図33乃至35に示す如く、マゼンタの両隣りに位置するレッドとブルーに挟まれる圧縮曲線が連動して移動する。
[第4の実施形態]
第1の実施形態では図1に示した各部はハードウェアにより構成されているものとして説明したが、各部の機能をコンピュータのCPUに実現させる為のプログラムでもって同図の各部を構成するようにしても良い。その場合、このプログラムを実行するコンピュータは第1の実施形態と同様の処理を行うことになるので、このコンピュータは第1の実施形態に係る画像処理装置を構成することになる。
第1の実施形態では図1に示した各部はハードウェアにより構成されているものとして説明したが、各部の機能をコンピュータのCPUに実現させる為のプログラムでもって同図の各部を構成するようにしても良い。その場合、このプログラムを実行するコンピュータは第1の実施形態と同様の処理を行うことになるので、このコンピュータは第1の実施形態に係る画像処理装置を構成することになる。
図20はこのコンピュータの基本構成を示す図である。
2001はCPUで、RAM2002やROM2003に格納されているプログラムやデータを用いてコンピュータ全体の制御を行うと共に、第1の実施形態に係る上記入り圧縮処理に係る一連の処理を実行する。
2002はRAMで、外部記憶装置2006からロードされたプログラムやデータを一時的に格納するためのエリアを備えると共に、CPU2001が各種の処理を行う際に使用するワークエリアも備える。また、後述するインターフェース2007を介して受信するプログラムやデータを一時的に格納するためのエリアも備える。
2003はROMで、ブートプログラムやコンピュータの設定データなどを格納する。
2004は操作部で、キーボードやマウスなどにより構成されており、各種の指示をCPU2001に対して入力することができ、例えば図18等に示したGUIに対して各種の入力を行う際に使用するものである。また図1では、圧縮パラメータ設定UI104としても機能するものである。
2005は表示部で、CRTや液晶画面などにより構成されており、CPU2001によって処理された結果を画像や文字などにより表示することができ、例えば図19に示したGUIを表示することができる。
2006は外部記憶装置で、ハードディスクドライブ装置などの大容量情報記憶装置であって、ここにOS(オペレーティングシステム)やCPU2001に第1の実施形態で説明した色圧縮処理に係る一連の処理を実行させるためのプログラムやデータが保存されており、これらの一部もしくは全部はCPU2001の制御により、RAM2002にロードされる。なお、このプログラムには、図1の第1の色空間の多面体部101,第2の色空間の多面体部103、圧縮曲線DB生成部106,色空間圧縮部107の各部をCPU2001に実行させるためのプログラムが含まれている。また、外部記憶装置2006にはマンセル色相曲線DB105として機能する為のエリアが備わっているが、マンセル色相曲線DB105はRAM2002内に設けるようにしても良い。また上記実施形態で登場した各種のGUIに係るプログラムやデータもこの外部記憶装置2006に保存させておき、必要に応じてCPU2001の制御によりRAM2002にロードし、CPU2001がこれを実行することにより、このコンピュータのユーザは上記各種のGUIを使用することができる。
2007はI/Fで、ここにプリンタやハードコピー装置などを接続することができ、それぞれからの色データを受信することができる。
2008は上述の各部を繋ぐバスである。
[その他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャート(機能構成)に対応するプログラムコードが格納されることになる。
Claims (21)
- 所定の色空間において所定の色相環が示す各色相毎の第1の範囲内の色データ群を前記所定の色空間において当該第1の範囲よりも色再現範囲が狭い第2の範囲内の色データ群に変換する変換工程と、
前記変換工程による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換工程により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算工程と
を備えることを特徴とする画像処理方法。 - 前記第1の範囲内の色データ群を包含する前記所定の色空間における第1の多面体を生成する第1の多面体生成工程と、
前記第2の範囲内の色データ群を包含する前記所定の色空間における第2の多面体を生成する第2の多面体生成工程とを備え、
前記変換工程では、前記第1の多面上における前記各色相毎の第1の範囲内の色データ群を、前記第2の多面体上における色データ群に変換することを特徴とする請求項1に記載の画像処理方法。 - 前記第1の多面体生成工程、及び前記第2の多面体生成工程では多面体の生成の前段で、同じ色を示す色データは間引き、当該間引き処理後の色データ群を彩度の高い順番に並び替え、当該並び替えたことによる色データ群を彩度の高い順に参照して多面体を生成することを特徴とする請求項2に記載の画像処理方法。
- 前記変換工程は、
前記所定の色空間において前記所定の色相環が示す各色相毎に、前記第1の範囲内の色データ群のうち最大の彩度を示す色データを、当該最大の彩度を示す色データの各色成分についてどの成分をどの程度保持するのかを示すパラメータに従って前記第2の範囲内の色データに変換する第1の工程と、
前記所定の色空間において前記所定の色相環が示す各色相毎に、前記第1の範囲内の色データ群のうち最大の彩度を示す色データ以外の色データを、明度を制御するためのパラメータに従って前記第2の範囲内の色データに変換する第2の工程と
を備えることを特徴とする請求項1に記載の画像処理方法。 - 前記最大の彩度を示す色データの各色成分についてどの成分をどの程度保持するのかを示すパラメータ、前記明度を制御するためのパラメータはGUIを用いて設定されることを特徴とする請求項4に記載の画像処理方法。
- 前記第2の工程では、前記所定の色空間において前記所定の色相環が示す各色相毎に、前記第1の範囲内の色データ群のうち彩度が所定値以上の色データの明度を彩度が高いほど低くさせる為のパラメータを用いて、前記彩度が所定値以上の色データの明度を彩度が高いほど低くさせる処理を行い、当該処理後の色データを含む前記第1の範囲内の色データ群を前記第2の範囲における色データ群に変換することを特徴とする請求項4に記載の画像処理方法。
- 前記所定の色相環はマンセル色相環であることを特徴とする請求項1乃至6の何れか1項に記載の画像処理方法。
- 更に、
前記パラメータでもって規定される曲線群のうち、前記所定の色空間内の色圧縮対象データが示す位置近傍の4本の曲線を特定する曲線特定工程と、
前記4本の曲線で囲まれている領域を複数の領域に分割する分割工程と、
前記所定の色空間内の色圧縮対象データが示す位置が、前記分割工程で分割されたそれぞれの領域のうち何れの領域内に存在するのかを特定する特定工程と、
前記分割工程で分割されたそれぞれの領域のうち前記特定工程で特定された領域以外のそれぞれの領域内で、前記特定工程で特定した領域内の前記色圧縮対象データが示す位置に対応する位置を特定する位置特定工程と、
前記位置特定工程で特定した各領域内の各位置を通る曲線を規定するパラメータを求める計算工程と、
前記計算工程で求めたパラメータに従った曲線上で、指示された圧縮率に応じた位置の色データを、前記色圧縮対象データの前記第2の範囲内への変換後の色データとして求める工程と
を備えることを特徴とする請求項1乃至7の何れか1項に記載の画像処理方法。 - 前記所定の色空間はL*a*b*色空間であることを特徴とする請求項1乃至8の何れか1項に記載の画像処理方法。
- 第1の色空間を第2の色空間にマッピングする画像処理方法であって、
色相曲線データベースを保持する保持工程と、
ある色相について色空間圧縮パラメータに関するユーザ指示を入力する入力工程と、
前記入力された色空間圧縮パラメータと前記色相曲線データベースに基づき、前記第1の色空間を第2の色空間にマッピングする工程と
を備えることを特徴とする画像処理方法。 - 前記色相曲線データベースは、マンセル色相曲線データベースであることを特徴とする請求項10に記載の画像処理方法。
- 前記色空間圧縮パラメータは、明度および彩度に関するパラメータを含むことを特徴とする請求項10に記載の画像処理方法。
- 前記彩度に関するパラメータは、前記色相における前記第1の色空間の最大彩度点のマッピング位置を制御するパラメータであることを特徴とする請求項12に記載の画像処理方法。
- 前記パラメータは、前記色相における前記第1の色空間の最大彩度点より高明度部分と低明度部分について設定可能であることを特徴とする請求項12に記載の画像処理方法。
- 前記パラメータは、前記色相における第1の色空間の境界上に位置する複数の点のそれぞれについて、該色相における第2の色空間内へのマッピングポイントを設定するものであることを特徴とする請求項12に記載の画像処理方法。
- さらに、楕円関数を用いて前記色相における色空間圧縮パラメータを求めることを特徴とする請求項15に記載の画像処理方法。
- 前記色相は、1次色および2次色であり、その他の色相については1次色、2次色について設定されたパラメータに基づき自動的に設定されることを特徴とする請求項10に記載の画像処理方法。
- 前記圧縮曲線データベースは3D表示されることを特徴とする請求項10に記載の画像処理方法。
- 所定の色空間において所定の色相環が示す各色相毎の第1の範囲内の色データ群を前記所定の色空間において当該第1の範囲よりも色再現範囲が狭い第2の範囲内の色データ群に変換する変換手段と、
前記変換手段による変換前の色データが示す前記所定の色空間における位置と、当該色データを前記変換手段により変換された後の色データが示す前記所定の色空間における位置とを通る曲線を規定するパラメータを求めるパラメータ計算手段と
を備えることを特徴とする画像処理装置。 - コンピュータに請求項1乃至18の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。
- 請求項20に記載のプログラムを格納することを特徴とする、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004170445A JP2005354227A (ja) | 2004-06-08 | 2004-06-08 | 画像処理方法、画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004170445A JP2005354227A (ja) | 2004-06-08 | 2004-06-08 | 画像処理方法、画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005354227A true JP2005354227A (ja) | 2005-12-22 |
Family
ID=35588332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004170445A Withdrawn JP2005354227A (ja) | 2004-06-08 | 2004-06-08 | 画像処理方法、画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005354227A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010147548A (ja) * | 2008-12-16 | 2010-07-01 | Seiko Epson Corp | ルックアップテーブルの作成方法および印刷装置 |
CN110785989A (zh) * | 2017-04-27 | 2020-02-11 | 交互数字Vc控股公司 | 用于色域映射的方法和设备 |
-
2004
- 2004-06-08 JP JP2004170445A patent/JP2005354227A/ja not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010147548A (ja) * | 2008-12-16 | 2010-07-01 | Seiko Epson Corp | ルックアップテーブルの作成方法および印刷装置 |
CN110785989A (zh) * | 2017-04-27 | 2020-02-11 | 交互数字Vc控股公司 | 用于色域映射的方法和设备 |
US11263731B2 (en) | 2017-04-27 | 2022-03-01 | Interdigital Vc Holdings, Inc. | Method and device for color gamut mapping |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7333237B2 (en) | Color adjustment method, color adjustment apparatus, color conversion definition editing apparatus, image processing apparatus, program, and storage medium | |
JP4117284B2 (ja) | 色空間の変換方法、カラー映像の色調節装置、色調節方法およびプログラムを記録したコンピュータが読み取り可能な記録媒体 | |
US7116441B1 (en) | Signal processing apparatus image processing apparatus and their methods | |
JP4560741B2 (ja) | 情報処理装置および方法、プログラム、並びに情報処理システム | |
US7893945B2 (en) | Color mapping techniques for color imaging devices | |
JP3830747B2 (ja) | 色再現域圧縮方法および色再現域圧縮装置 | |
US8149484B2 (en) | Color gamut data creating device | |
JPH08272942A (ja) | カラー画像の色変更方法 | |
JPH08287239A (ja) | 色彩調整装置及びその方法 | |
JPH089172A (ja) | カラー画像処理装置 | |
JP3088063B2 (ja) | カラー画像処理方法及びカラー画像処理装置 | |
JP2009278538A (ja) | 画像処理装置、画像処理方法、プログラムおよび記録媒体 | |
JP2006345187A (ja) | 色処理方法およびその装置 | |
JP4306936B2 (ja) | 色処理装置および方法 | |
JP2740409B2 (ja) | シャープネス処理装置 | |
JP2003153028A (ja) | 好適なカラートーンのためのカラー変換方法 | |
JP4396479B2 (ja) | 画像処理装置における補正処理方法および画像処理装置。 | |
JP2005354227A (ja) | 画像処理方法、画像処理装置 | |
JP2000253269A (ja) | カラー画像処理方法およびカラー画像処理装置 | |
CN104981863A (zh) | 用于色彩渲染到二进制高维输出设备的方法和装置 | |
JP2882754B2 (ja) | ソフトクロマキー処理方法 | |
JP2005354229A (ja) | 画像処理方法、画像処理装置、情報処理方法 | |
JP2005354228A (ja) | 画像処理方法、画像処理装置 | |
JP2001094799A (ja) | 画像処理方法、装置および記録媒体 | |
JP4423016B2 (ja) | 画像処理装置、画像処理方法、記憶媒体、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070904 |