JP2015035805A - 画像処理装置およびその方法 - Google Patents
画像処理装置およびその方法 Download PDFInfo
- Publication number
- JP2015035805A JP2015035805A JP2014143657A JP2014143657A JP2015035805A JP 2015035805 A JP2015035805 A JP 2015035805A JP 2014143657 A JP2014143657 A JP 2014143657A JP 2014143657 A JP2014143657 A JP 2014143657A JP 2015035805 A JP2015035805 A JP 2015035805A
- Authority
- JP
- Japan
- Prior art keywords
- color
- space
- image data
- uniform
- perception
- 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.)
- Pending
Links
Landscapes
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Abstract
【課題】 人間の知覚に適合し、かつ、ノイズや疑似輪郭などのアーティファクトを抑制する画像の色調整を提供する。
【解決手段】 CIELAB変換部104と均等色知覚空間変換部105は、標準的な色空間の入力画像データを均等色知覚空間の画像データに変換する。色調整部108は、ユーザ指示に基づき、均等色知覚空間の画像データを用いて入力画像データの色を調整する。マッピング部107は、均等色知覚空間において、調整により標準的な色空間の色域の外に移動した、均等色知覚空間の画像データの画素の色値を、標準的な色空間の色域内にマッピングする。色空間逆変換部108は、調整およびマッピングの後の均等色知覚空間の画像データを、標準的な色空間の画像データに逆変換する。
【選択図】 図3
【解決手段】 CIELAB変換部104と均等色知覚空間変換部105は、標準的な色空間の入力画像データを均等色知覚空間の画像データに変換する。色調整部108は、ユーザ指示に基づき、均等色知覚空間の画像データを用いて入力画像データの色を調整する。マッピング部107は、均等色知覚空間において、調整により標準的な色空間の色域の外に移動した、均等色知覚空間の画像データの画素の色値を、標準的な色空間の色域内にマッピングする。色空間逆変換部108は、調整およびマッピングの後の均等色知覚空間の画像データを、標準的な色空間の画像データに逆変換する。
【選択図】 図3
Description
本発明は、画像の色を調整する画像処理に関する。
デザインや映画産業などでは、画像や映像の色(明度、彩度、色相等)を調整する色調整が行われている。例えば、モニタの表示色を調整する場合、モニタに表示しているRGB値をそれぞれ調整することで、色の調整を行うことができる。
しかし、モニタのRGB値を直接調整すると、調整による色の変化がモニタの色特性に依存するため、一般的な色調整は、CIELAB空間などのデバイス非依存の色空間上で行われることが多い。例えば、モニタRGB値を一旦CIELAB空間の値に変換し、CIELAB空間の明度、彩度、色相に沿って色を調整する。そして、調整後の色をモニタRGB値に戻すことで色調整が完了する。
このようなデバイス非依存の色空間としては、CIELAB空間のほか、国際照明委員会(CIE)によって定められたCIELUV空間、CIECAM02におけるJCh空間などが、典型的な例として挙げられる。しかし、CIELAB空間、CIELUV空間、JCh空間は、必ずしも人間の知覚に対して均等な色空間(以下、均等色知覚空間)ではないという問題がある。そのため、例えば画像の色に対して彩度を強調する調整(CIELAB空間の彩度軸に沿って色を調整)した場合、彩度だけではなく、色相や明度まで変化することがある。
また、調整の結果、調整色がモニタ色域外になる場合、モニタ色域内で最も色の見えが近い点に対象色をマッピングする必要があるが、上述した色空間において最も近い点にマッピングしても知覚的に最も近い色にならないことが多い。その結果、例えば、元画像の目に見えない細かな色変動が、マッピングによって強調され、大きな色変動(ノイズ)となって知覚されることがある。
図1によりCIELAB空間を用いて彩度強調を行った際に発生するノイズの一例を示す。図1(b)のグラフの縦軸は輝度L*、横軸は図1(a)の元画像おける破線部10の画素位置を表す。同様に、図1(d)のグラフの縦軸は輝度L*、横軸は図1(c)の色調整画像おける破線部11の画素位置を表す。
図1(a)(b)に示すように、元画像では、破線部10の画素にL*=2程度の高周波の輝度変動が含まれるが、L*=2の高周波輝度変動は一般に人間の眼には知覚されないため、人間には滑らかな画像として知覚される。一方、図1(c)(d)に示すように、CIELAB空間で色調整を施した画像において、破線部11の画素の高周波輝度変動は平均でL*=10程度まで増幅されている。L*=10の高周波輝度変動は人間の眼に知覚され、元画像には存在しなかったノイズとして知覚される。
特許文献1は、HLS空間で色の調整を行う技術を開示する。しかし、HLS空間も均等色知覚空間ではなく、上記と同様の問題がある。
D. L. MacAdam「Visual sensitivities to color differences in daylight」Journal of the Optical Society of America、Vol. 32、No.5、247-274頁、1942年5月
本発明は、人間の知覚に適合し、かつ、ノイズや疑似輪郭などのアーティファクトを抑制する画像の色調整を提供することを目的とする。
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
本発明にかかる画像処理は、標準的な色空間の入力画像データを均等色知覚空間の画像データに変換し、ユーザ指示に基づき、前記均等色知覚空間の画像データを用いて前記入力画像データの色を調整し、前記均等色知覚空間において、前記調整により前記標準的な色空間の色域の外に移動した、前記均等色知覚空間の画像データの画素の色値を、前記標準的な色空間の色域内にマッピングし、前記調整および前記マッピングの後の前記均等色知覚空間の画像データを、前記標準的な色空間の画像データに逆変換する。
本発明によれば、人間の知覚に適合し、かつ、ノイズや疑似輪郭などのアーティファクトを抑制する画像の色調整を提供することができる。
以下、本発明にかかる実施例の画像処理装置および画像処理方法を図面を参照して詳細に説明する。なお、実施例は特許請求の範囲にかかる本発明を限定するものではなく、また、実施例において説明する構成の組み合わせのすべてが本発明の解決手段に必須とは限らない。
[装置の構成]
図2のブロック図により実施例の画像処理を実行する情報処理装置の構成例を示す。CPU201は、RAMなどのメインメモリ202をワークメモリとして、ROM209やHDDまたはSSDなどの記憶部203に格納されたプログラムを実行し、システムバス206を介して後述する構成を制御する。なお、ROM209や記憶部203には、後述する画像処理(色調整処理)を実現するプログラムや各種データが格納されている。
図2のブロック図により実施例の画像処理を実行する情報処理装置の構成例を示す。CPU201は、RAMなどのメインメモリ202をワークメモリとして、ROM209やHDDまたはSSDなどの記憶部203に格納されたプログラムを実行し、システムバス206を介して後述する構成を制御する。なお、ROM209や記憶部203には、後述する画像処理(色調整処理)を実現するプログラムや各種データが格納されている。
USBやIEEE1394などの汎用インタフェイス(I/F)204には、キーボードやマウスなどの指示入力部207やUSBメモリやメモリカードなどの記録メディア(コンピュータが読み取り可能な記録媒体)208が接続される。また、モニタ205には、CPU201によって、ユーザインタフェイス(UI)や処理経過や処理結果を示す情報が表示される。
例えば、CPU201は、指示入力部207を介して入力されるユーザ指示に従いROM209、記憶部203または記録メディア208に格納されたアプリケーションプログラム(AP)をメインメモリ202の所定領域にロードする。そして、APを実行し、APに従いモニタ205にUIを表示する。
次に、CPU201は、ユーザ指示に従いHDD203や記録メディア208に格納された各種データをメインメモリ202の所定領域にロードする。そして、APに従いメインメモリ202にロードした各種データに所定の演算処理を施す。そして、CPU201は、ユーザ指示に従い演算処理結果をモニタ205に表示したり、HDD203や記録メディア208に格納する。
なお、CPU201は、システムバス206に接続された図示しないネットワークI/Fを介して、有線または無線ネットワーク上のコンピュータ装置やサーバ装置との間でプログラム、データ、演算処理結果の送受信を行うこともできる。
[処理構成]
図3のブロック図により実施例1の画像処理装置101の処理構成例を示す。なお、図2に示す処理構成や機能は、CPU201がAPを実行することにより実現される。UI部102は、ユーザインタフェイス(UI)をモニタ205に表示し、UIに対するユーザ指示を入力する。
図3のブロック図により実施例1の画像処理装置101の処理構成例を示す。なお、図2に示す処理構成や機能は、CPU201がAPを実行することにより実現される。UI部102は、ユーザインタフェイス(UI)をモニタ205に表示し、UIに対するユーザ指示を入力する。
画像入力部103は、ユーザ指示に従い色調整対象の画像データ(入力画像データ)を入力する。第一の変換部であるCIELAB変換部104は、入力画像データの色信号(例えばsRGB信号)をデバイス非依存の色空間の色値(以下、CIELAB色空間の色値L*a*b*とする)に変換する。
第二の変換部である均等色知覚空間変換部105は、CIELAB色空間の画像データの色値を均等色知覚空間の色値に変換する。色調整部106は、ユーザ指示に従う色調整を均等色知覚空間の画像データに適用する。マッピング部107は、色調整の結果、モニタ205の色域外に移動した色をモニタ205の色域内にマッピングする。
第三の変換部である色空間逆変換部108は、色調整後の画像データの色値を色信号(例えばsRGB信号)に逆変換する。出力部109は、ユーザ指示に従い、色空間逆変換部108が出力する画像データをモニタ205に表示したり、データファイルとしてHDD203や記録メディア208などに出力する。
[色調整処理]
図4のフローチャートにより画像処理装置101が実行する処理を説明する。UI部102は、以降の処理に必要な情報をユーザが入力するためのUIをモニタ205に表示する(S11)。図5によりUIの一例を示す。
図4のフローチャートにより画像処理装置101が実行する処理を説明する。UI部102は、以降の処理に必要な情報をユーザが入力するためのUIをモニタ205に表示する(S11)。図5によりUIの一例を示す。
ユーザは、UIの入力部1001を操作して、色調整対象の画像データのファイル名を入力または選択する。表示部1002は、色調整対象の画像データや色調整中の画像データを表示する。なお、図には示さないが、色調整前の画像データと、色調整中の画像データを並置して表示部1002に表示してもよい。
ユーザは、入力部1003の明度スライダ、彩度スライダ、色相スライダを操作して画像の色調整内容を入力する。ユーザは、例えば、明度スライダをプラス(+)方向に移動して画像全体を明るくし、マイナス(−)方向に移動して画像全体を暗くする調整を指示することができる。
ユーザは、入力部1004を操作して、画像処理装置101において色調整された画像データの保存先のファイル名を入力または選択する。出力ボタン1005は、画像処理装置101による色調整結果の画像データの出力を指示するためのボタンであり、当該ボタンが押されると、画像データの出力が実行される。
次に、画像入力部103は、ユーザ指示に従い色調整対象の画像データを入力し(S12)、CIELAB変換部104は、入力された画像データの信号値をCIELAB値に変換する(S13)。本実施例においては、画像データはsRGBで表現されているとし、画像データを表示するモニタ205はsRGBにキャリブレーションされたモニタであるとして以降の処理を説明する。
まず、CIELAB変換部104は、式(1)により画像データの各画素値をCIE三刺激値XYZに変換する。
┌ ┐ ┌ ┐┌ ┐
│X│ │0.4124 0.3576 0.1805││R│
│Y│=│0.2126 0.7152 0.0722││G│ …(1)
│Z│ │0.0193 0.1192 0.9505││B│
└ ┘ └ ┘└ ┘
┌ ┐ ┌ ┐┌ ┐
│X│ │0.4124 0.3576 0.1805││R│
│Y│=│0.2126 0.7152 0.0722││G│ …(1)
│Z│ │0.0193 0.1192 0.9505││B│
└ ┘ └ ┘└ ┘
そして、CIELAB変換部104は、式(2)を用いてCIE三刺激値XYZをCIELAB値に変換する。
if (X/Xn > 0.008856)
f(X/Xn) = (X/Xn)1/3;
else
f(X/Xn) = 7.78×X/Xn + 16/116;
if (Y/Yw > 0.008856)
f(Y/Yn) = (Y/Yn)1/3;
else
f(Y/Yn) = 7.78×Y/Yn + 16/116;
if (Z/Zw > 0.008856)
f(Z/Zn) = (Z/Zn)1/3;
else
f(Z/Zn) = 7.78×Z/Zn + 16/116;
if (Y/Yn > 0.008856)
L* = 116(Y/Yn)1/3 - 16;
else
L* = 903.29×Y/Yn;
;
a* = 500{f(X/Xn) - f(Y/Yn)};
b* = 200{f(Y/Yn) - f(Z/Zn)}; …(2)
ここで、X、Y、ZはXYZ表色系の三刺激値の値、
XnYnZnは白色点のXYZ値(D65の場合、Xn=95.05、Yn=100.0、Zn=108.91)
if (X/Xn > 0.008856)
f(X/Xn) = (X/Xn)1/3;
else
f(X/Xn) = 7.78×X/Xn + 16/116;
if (Y/Yw > 0.008856)
f(Y/Yn) = (Y/Yn)1/3;
else
f(Y/Yn) = 7.78×Y/Yn + 16/116;
if (Z/Zw > 0.008856)
f(Z/Zn) = (Z/Zn)1/3;
else
f(Z/Zn) = 7.78×Z/Zn + 16/116;
if (Y/Yn > 0.008856)
L* = 116(Y/Yn)1/3 - 16;
else
L* = 903.29×Y/Yn;
;
a* = 500{f(X/Xn) - f(Y/Yn)};
b* = 200{f(Y/Yn) - f(Z/Zn)}; …(2)
ここで、X、Y、ZはXYZ表色系の三刺激値の値、
XnYnZnは白色点のXYZ値(D65の場合、Xn=95.05、Yn=100.0、Zn=108.91)
次に、均等色知覚空間変換部105は、CIELAB色空間に変換された画像データの色値を均等色知覚空間の色値に変換する(S14)。なお、均等色知覚空間およびその作成方法は後述する。
次に、色調整部106は、ユーザ指示に従い均等色知覚空間の画像データの色調整を実行する(S15)。つまり、図5に示すUIの入力部1003を介して色調整のユーザ指示が入力されると、色調整部106は、ユーザ指示に従い画像の色を変換する。例えばユーザ指示が「彩度をプラス方向に20調整」だとすると、下式により、画像データの各画素に対して均等色知覚空間における彩度を「20」増やす処理が行われる。
Cu = √(au 2 + bu 2);
Cu' = Cu + 20;
au' = cos Cu';
bu' = sin Cu'; …(3)
ここで、(Lu, au, bu)は均等色知覚空間の色値、
(au', bu')は色調整後の均等色知覚空間の色度値。
Cu = √(au 2 + bu 2);
Cu' = Cu + 20;
au' = cos Cu';
bu' = sin Cu'; …(3)
ここで、(Lu, au, bu)は均等色知覚空間の色値、
(au', bu')は色調整後の均等色知覚空間の色度値。
次に、マッピング部107は、詳細は後述するが、色調整の結果、モニタ205の色域外に色調整された色値をモニタ205の色域内にマッピングする(S16)。モニタ205が、sRGBにキャリブレーションされている場合は、sRGB色域の外に色調整された色値をsRGB色域内にマッピングすることになる。
次に、色空間逆変換部108は、色調整され、必要な場合はマッピングされた均等色知覚空間の色値をsRGBの信号値に逆変換する(S17)。まず、均等色知覚空間で表現された色値(Lu', au', bu')をCIELAB空間の色値(L*', a*', b*')に変換する。この変換には、CIELAB空間の色値を均等色知覚空間の色値に変換するルックアップテーブル(以下、Lab→UCAS変換LUT)のL*a*b*値とLuaubu値の対応関係と補間演算が利用される。
続いて、色空間逆変換部108は、式(4)を用いてCIELAB値をCIE三刺激値XYZに変換する。
f(Y) = (L* + 16)/116;
f(X) = a*/500 + f(Y);
f(Z) = -b*/200 + f(Y);
;
if (f(X)3 > 0.008856)
X = Xn・f(X)3;
else
X = {f(X) - 16/116}・Xn/7.787;
if (f(Y)3 > 0.008856)
Y = Yn・f(Y)3;
else
Y = {f(Y) - 16/116}・Yn/7.787;
if (f(Z)3 > 0.008856)
Z = Zn・f(Z)3;
else
Z = {f(Z) - 16/116}・Zn/7.787; …(4)
ここで、XnYnZnは白色点のXYZ値(D50の場合、Xn=96.43、Yn=100.0、Zn=82.51)
f(Y) = (L* + 16)/116;
f(X) = a*/500 + f(Y);
f(Z) = -b*/200 + f(Y);
;
if (f(X)3 > 0.008856)
X = Xn・f(X)3;
else
X = {f(X) - 16/116}・Xn/7.787;
if (f(Y)3 > 0.008856)
Y = Yn・f(Y)3;
else
Y = {f(Y) - 16/116}・Yn/7.787;
if (f(Z)3 > 0.008856)
Z = Zn・f(Z)3;
else
Z = {f(Z) - 16/116}・Zn/7.787; …(4)
ここで、XnYnZnは白色点のXYZ値(D50の場合、Xn=96.43、Yn=100.0、Zn=82.51)
そして、色空間逆変換部108は、式(5)を用いてCIE三刺激値XYZをsRGBの信号値に変換する。
┌ ┐ ┌ ┐┌ ┐
│R│ │ 3.2406 -1.5372 -0.4986││X│
│G│=│-0.9689 1.8758 0.0415││Y│ …(5)
│B│ │ 0.0557 -0.2040 1.0570││Z│
└ ┘ └ ┘└ ┘
┌ ┐ ┌ ┐┌ ┐
│R│ │ 3.2406 -1.5372 -0.4986││X│
│G│=│-0.9689 1.8758 0.0415││Y│ …(5)
│B│ │ 0.0557 -0.2040 1.0570││Z│
└ ┘ └ ┘└ ┘
このようにして得られるsRGBの信号値は、表示部1002に色調整中の画像を表示するために使用される。そして、出力ボタン1006が押されると(S18)、出力部109は、色空間逆変換部108が出力するsRGB画像データを、入力部1004の指示に従い、出力デバイスに出力したり、データファイルとして出力する(S19)。なお、出力ボタン1006が押されるまで、ステップS15からS17の処理が繰り返される。
[均等色知覚空間]
均等色知覚空間は、人間の知覚に対して均等な色空間であり、CIELAB色空間に代表される従来の色空間の色差均等性と色相線形性を改善した色空間である。例えば、図6によりMacAdamが作成した25色それぞれに対する色弁別閾(非特許文献1参照)をCIELAB空間にプロットした様子を示す。なお、説明のために、図6は、MacAdamの色弁別閾(以下、MacAdam楕円)を十倍に拡大し、色度情報のみをa*b*平面にプロットしたものである。
均等色知覚空間は、人間の知覚に対して均等な色空間であり、CIELAB色空間に代表される従来の色空間の色差均等性と色相線形性を改善した色空間である。例えば、図6によりMacAdamが作成した25色それぞれに対する色弁別閾(非特許文献1参照)をCIELAB空間にプロットした様子を示す。なお、説明のために、図6は、MacAdamの色弁別閾(以下、MacAdam楕円)を十倍に拡大し、色度情報のみをa*b*平面にプロットしたものである。
図6に示す楕円状の各図形は、人間が同じ色と認識する範囲を示し、低彩度の色に対しては比較的図形の面積が小さく、高彩度の色、とくに青色や緑色に対して図形の面積が非常に大きくなる。つまり、人間は、低彩度の色については色空間内の距離が小さくても色を弁別することができ、高彩度の青色や緑色については色空間内の距離が大きくても色を弁別することができない。言い換えれば、CIELAB空間は人間の知覚に一致していない。また、図形の形状も様々な方向に歪んでいる。これは、人間が同じ色と認識するラインが、CIELAB空間上では曲がって表現されていることを示す。このようなCIELAB空間の人間の知覚に対する歪みを改善した色空間が均等色知覚空間である。
図7により均等色知覚空間の作成方法の概要を説明する。まず、図7(a)に示すように、CIELAB空間のような人間の知覚に対して非均等な色空間(以下、知覚非均等色空間)上に格子データを設定する。そして、図7(b)に示すように、格子の境界に設定した制御点を移動する。その際、MacAdamの色弁別閾に代表される楕円データが色空間全域で同じ大きさの真円になるように、制御点の移動方法や移動量、さらには制御点の移動に伴う内部の移動比率を最適化する(特許文献2参照)。
このようにして均等色知覚空間を作成することで、色空間全域に亘って、色差均等性と色相線形性の高い均等色知覚空間を作成することができる。なお、上述した格子データの各格子点の移動前の座標(L, a, b)と、移動後の座標(Lu, au, bu)をLab→UCAS変換LUTに格納する。そして、Lab→UCAS変換LUTを用いた補間演算を行うことにより、容易にCIELAB値を均等色知覚空間の色値に変換することができる。つまり、均等色知覚空間変換部105は、ステップS14において、Lab→UCAS変換LUTを用いた補間演算(例えば四面体補間や立方体補間)により、画像データのCIELAB値を均等色知覚空間の色値に変換する。
均等色知覚空間は、マンセルデータの視覚等色相データや他の視覚等色相データを、各色相において色相差Δhが三度以内(Δh≦3°)で表現することができる(特許文献2参照)。言い替えれば、均等色知覚空間は、視覚等色相データや人間が同じ色相と知覚する色データ群を所定の色相差以内で表現する色空間である。
[マッピング部]
マッピング部107の処理(S16)は、ステップS15の色調整の結果、モニタ205の色域(例えばsRGBの色域)の外になった画素の色値をモニタ205の色域内にマッピングする処理である。例えばsRGBの色域外になった色値はsRGB値に逆変換することができず、sRGBの色域内、かつ、同じように見える色にマッピングする必要がある。
マッピング部107の処理(S16)は、ステップS15の色調整の結果、モニタ205の色域(例えばsRGBの色域)の外になった画素の色値をモニタ205の色域内にマッピングする処理である。例えばsRGBの色域外になった色値はsRGB値に逆変換することができず、sRGBの色域内、かつ、同じように見える色にマッピングする必要がある。
図8のフローチャートによりマッピング部107の処理(S16)を説明する。図8は、sRGBの色域外になった画素の色値をsRGBの色域内、かつ、均等色知覚空間上で距離最小の点にマッピングする例を示す。
マッピング部107は、sRGBの色域を示すデータ(以下、sRGB色域データ)をHDD203や記録メディア208などから取得する(S61)。図9によりsRGB色域データの一例を示す。例えば、RGB値の範囲(0≦R、G、B≦255)を各9スライスした格子点のRGBデータ(729色)を式(1)(2)を用いてCIELAB空間の色値に変換する。そして、Lab→UCAS変換LUTと補間演算により、格子点のRGBデータに対応する均等色知覚空間の色値を計算すると、図9に示すsRGB色域データが得られる。
次に、マッピング部107は、色調整後の画像データの一画素(以下、注目画素)の色値を取得し(S62)、取得した色値とsRGB色域データを比較して、当該色値がsRGBの色域内か外かを判定(以下、色域内外判定)する(S63)。なお、色域内外判定の詳細は後述する。
マッピング部107は、色値が色域外と判定した場合は注目画素の色値をsRGB色域内にマッピングする(S64)。つまり、マッピング部107は、均等色知覚空間上で距離が最小の点に注目画素の色値をマッピングし、処理をステップS65に進める。また、色値が色域内と判定した場合は処理をステップS65へ進める。
次に、マッピング部107は、色調整後の画像データの全画素について上記の処理が終了したか否かを判定し(S65)、未処理の画素があれば処理をステップS62に戻し、全画素の処理が終了した場合はマッピングを終了する。
図10により色調整とマッピングの関係を説明する。注目画素の色調整前の色値31は、ユーザ指示「彩度をプラス方向に20調整」によりsRGB色域30の外の色値32に移動する。マッピング部107は、色値32をsRGB色域30の距離最小点33にマッピングする。このマッピングにより、色調整によりsRGB色域外の色値になった注目画素の色を、人間の知覚においてもsRGB色域内で最も近い色に変換することができる。なお、距離最小の点の探索方法は周知であり、説明を省略する。
[色域内外判定]
図11により色域内外判定を説明する。sRGB色域データは、前述したように、RGB値の範囲を各9スライスした729点のデータを均等色知覚空間に変換した点群、つまり、512個の六面体から構成される。従って、色域内外判定を行う場合、対象の色値が512個の六面体の何れかに含まれるか否かを判定すればよい。そこで、六面体を一つずつ判定対象にして、対象の色値を含むか否かを判定する。ここでは、六面体をさらに六つの四面体に分割し(図11(a))、各四面体について内外判定を行うことで、対象の色値が六面体に含まれるか否かを判定する。
図11により色域内外判定を説明する。sRGB色域データは、前述したように、RGB値の範囲を各9スライスした729点のデータを均等色知覚空間に変換した点群、つまり、512個の六面体から構成される。従って、色域内外判定を行う場合、対象の色値が512個の六面体の何れかに含まれるか否かを判定すればよい。そこで、六面体を一つずつ判定対象にして、対象の色値を含むか否かを判定する。ここでは、六面体をさらに六つの四面体に分割し(図11(a))、各四面体について内外判定を行うことで、対象の色値が六面体に含まれるか否かを判定する。
図11(b)を用いて四面体の内外判定を説明する。図11(b)に示すように、四面体の各頂点をA、B、C、Dとし、対象の色値をPとすると、それらの関係を次式で表すことができる。
↑AP = s↑AB + t↑AC + u↑AD …(6)
ここで、↑はベクトルを表し、例えば↑APは点Aから点Pに向かうベクトル、
s、t、uは係数、
A、B、C、Dは、RGB格子点に対応する色値。
↑AP = s↑AB + t↑AC + u↑AD …(6)
ここで、↑はベクトルを表し、例えば↑APは点Aから点Pに向かうベクトル、
s、t、uは係数、
A、B、C、Dは、RGB格子点に対応する色値。
点Pが四面体ABCD内に存在すれば下式がなり立つ。
s + t + u ≦ 1
s ≧ 0、t ≧ 0、u ≧ 0 …(7)
s + t + u ≦ 1
s ≧ 0、t ≧ 0、u ≧ 0 …(7)
従って、式(7)がなり立てば点Pは四面体ABCD内と判定し、式(7)がなり立たなければ点Pは四面体ABCD外と判定する。この四面体の内外判定を六個の四面体に対して行うことで六面体の内外判定が完了し、さらに、六面体の内外判定を512個の六面体に対して行うことで、色域内外判定が完了する。
このように、色調整によって色域外になった色を、人間の知覚に対する色差均等性および色相線形性が高い均等色知覚空間において、色域内の距離最小の点にマッピングすることで、人間の知覚に最も近い色で表現することができる。
図12により本実施例の色調整処理に従い図1(a)に示す画像を色調整した例を示す。図1と同様に、図12(b)のグラフの縦軸は輝度L*、横軸は図12(a)の元画像おける破線部10の画素位置を表す。同様に、図12(d)のグラフの縦軸は輝度L*、横軸は図12(c)の色調整画像おける破線部11の画素位置を表す。
前述したように、元画像では、破線部10の画素にL*=2程度の高周波の輝度変動が含まれるが、L*=2の高周波輝度変動は一般に人間の眼には知覚されないため、人間には滑らかな画像として知覚される。本実施例の色調整方法に従い色調整を行った場合、図12(d)に示すように、破線部11の画素の高周波輝度変動はほとんど増幅されることはない。これは、色調整に均等色知覚空間を用いることで、より人間の知覚に合ったマッピングが行われる効果である。
このように、人間の知覚に合った色調整を行うことができ、ノイズや疑似輪郭といったアーティファクトの発生も抑制することができる。
図3には、画像の色調整を均等色知覚空間で行うために、画像データ(例えばsRGBデータ)を一旦CIELAB空間に変換し、その後、画像データを均等色知覚空間に変換する処理構成を示した。しかし、図9に示すsRGB色域データのようなsRGBデータと均等色知覚空間の色値の対応関係を表すテーブルを利用すれば、画像データ(例えばsRGBデータ)を直接均等色知覚空間に変換することができる。
図13のブロック図により変形例の画像処理装置101の処理構成例を示す。なお、図13に示す処理構成や機能は、CPU201がAPを実行することにより実現される。図13において、図3に示す処理構成と異なるのは、CIELAB変換部104がなく、均等色知覚空間変換部305が例えばsRGBデータを直接均等色知覚空間に変換する点である。均等色知覚空間変換部305は、例えばHDD203や記録メディア208からsRGB色域データのようなテーブルを取得し、当該テーブルを色変換LUTとする補間演算により、sRGBデータの信号値を均等色知覚空間の色値に変換する。
以下、本発明にかかる実施例2の画像処理装置および画像処理方法を説明する。なお、実施例2において、実施例1と略同様の構成については、同一の符号を付して、その詳細な説明を省略する。
実施例1では、色域外に調整された画素の色値を、均等色知覚空間において、距離が最小の色域内の点にマッピングする例を説明した。実施例2では、均等色知覚空間における距離最小のマッピングではなく、均等色知覚空間において色相を保つマッピングを説明する。図14のフローチャートにより実施例2のマッピング部107の処理(S16)を説明する。
マッピング部107は、sRGB色域データを取得し(S71)、sRGB色域内にマッピングの収束点を設定する(S72)。例えば、(Lu, au, bu)=(50, 0, 0)の点を収束点に設定したとして、以降の処理を説明する。
次に、マッピング部107は、色調整後の画像データの注目画素の色値を取得し(S73)、取得した色値とsRGB色域データを比較して色域内外判定を行う(S74)。色値が色域外と判定した場合は注目画素の色値をsRGB色域内にマッピングし(S75)、処理をステップS76に進める。また、色値が色域内と判定した場合は処理をステップS76へ進める。
図15により実施例2におけるマッピング方法を説明する。つまり、マッピング部107は、色域外の色値32と収束点34を結ぶ線分がsRGB色域30と交差する交点35に、色値32をマッピングする。これにより、均等色知覚空間における色相が保たれることになる。つまり、人間の知覚の内、彩やかさと明るさを変化させ、色味を変化させずにマッピングすることを意味する。当該マッピングの詳細は、対象点32と収束点34を結ぶ線分と、sRGB色域境界を構成する面との交点演算によって容易に実現できるため、詳細説明を省略する。
次に、マッピング部107は、色調整後の画像データの全画素について上記の処理が終了したか否かを判定し(S76)、未処理の画素があれば処理をステップS73に戻し、全画素の処理が終了した場合はマッピングを終了する。
以下、本発明にかかる実施例3の画像処理装置および画像処理方法を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一の符号を付して、その詳細な説明を省略する。実施例3では、前述した均等色知覚空間に、ヘルムホルツ・コールラウシュ効果による明るさの変化に対する補正を行うことで、さらに人間の知覚に適合した色調整を行う方法を説明する。
一般に、光刺激の明るさは、式(2)に示すように、光刺激の輝度によって決まると言われている。しかし、彩度の高い色は、同輝度、同色相の低彩度の色よりも明るく見える現象がヘルムホルツ・コールラウシュ効果(以下、HK効果)と呼ばれている。例えば、ユーザが彩度を強調する色調整を行うと、HK効果により、ユーザが意図するよりも明るく調整されてしまう場合がある。図16により実施例3のUIの一例を示す。図16において、図5に示すUIと異なるのは、補正効果設定部1006が追加されている点である。ユーザが補正効果設定部1006のチェックボックスをチェックすると、均等色知覚空間変換部105は、HK効果による明るさの変化に対する補正を行う。
図17のフローチャートにより実施例3の画像処理装置101が実行する処理を説明する。図17において、図4に示す処理と異なるのはステップS21とS22の処理であり、実施例1と略同様である他のステップの処理については、詳細説明を省略する場合がある。
CIELAB変換部104による変換(S13)が終了すると、均等色知覚空間変換部105は、補正効果設定部1006によってHK効果に対する補正が指示されているか否かを判定する(S21)。HK効果に対する補正が指示されていない場合、均等色知覚空間変換部105は、実施例1と同様に、CIELAB色空間に変換された画像データの色値を均等色知覚空間の色値に変換し(S14)、処理をステップS15に進める。
他方、HK効果に対する補正が指示されている場合、均等色知覚空間変換部105は、CIELAB色空間に変換された画像データの色値をHK効果を考慮した均等色知覚空間(以下、HK均等色知覚空間)に変換し(S22)、処理をステップS15に進める。なお、ステップS15とS17において、均等色知覚空間またはHK均等色知覚空間の画像データまたは色値が処理対象になる。
均等色知覚空間変換部105は、実施例1と同様に、Lab→UCAS変換LUTを用いた補間演算によりHK均等色知覚空間への変換を行う。実施例3において用いるLab→UCAS変換LUTは、実施例1で説明したLab→UCAS変換LUTに、HK効果による明るさの変化に対する補正を加えることで作成される。
図18によりHK効果を説明する。図18は、同明度で異なる彩度をもつ色票を観察した場合に人間が知覚する明るさ例を示し、実験によって被験者から得たHK効果を示すデータである。図18において、横軸は色票の彩度、縦軸は色票と同じ明るさと感じるグレイパッチの明度を示す。図18に示すように、HK効果により、同明度の色票であっても、彩度が上がると知覚される明るさが上昇することがわかる。
図19によりHK効果を示すデータの取得方法の概要を説明する。明度が異なるグレイパッチを並べた基準グレイスケールの近傍にテスト色票を配置して、テスト色票と同じ明るさに見えるグレイパッチを被験者に選択させる。この実験を、色相と明度が同じで彩度のみを変化させた色票に対して行うと図18に示すデータが得られる。なお、図18にデータは、R色相、G色相、B色相の色票に対する実験結果を示している。
図18に示すデータを用いてHK均等色知覚空間に変換するためのLab→UCAS変換LUTを作成する。つまり、実施例1で説明したLab→UCAS変換LUTに、図18に示す明るさの変化量を相殺するような補正を適用する。例えば、図18に示すデータに基づき、色相ごとに、彩度を入力とし、知覚する明るさを出力とする関数を作成して、HK効果を近似する。そして、それら関数の逆関数をLab→UCAS変換LUTに適用し、色相間のデータが線形に変化するようにLab→UCAS変換LUTを補間すれば、Lab値をHK均等色空間に変換するLab→UCAS変換LUTが作成される。
なお、上記のLab値をHK均等色空間に変換するLab→UCAS変換LUTの作成方法は一例であり、均等色知覚空間への変換と、HK効果の補正をまとめて行う変換テーブルを作成してもよい。例えば、実施例1で説明した楕円データに、HK効果による明るさの変化を加えて得られる楕円データに基づいて変換テーブルを作成すれば、Lab値をHK均等色知覚空間に変換するLab→UCAS変換LUTを直接的に作成することができる。
上記の方法により、HK均等色知覚空間用の変換テーブルを予め作成する。均等色知覚空間変換部105は、当該変換テーブルを用いる補間演算により、画像の各画素のCIELAB値をHK均等色知覚空間の値に変換することができる。従って、彩度によって知覚される明るさが変化するHK効果を考慮した色調整が実現される。
[変形例]
上記においては、画像データの一例としてsRGBデータを説明していたが、AdobeRGBやscRGBなど入力デバイスで利用される任意の標準的な色空間で表現された画像データを色調整対象にすることができる。また、上記においては、モニタ205の表示色の色調整を説明したが、例えばプロジェクタやプリンタなど他の出力デバイス用の色調整でもよい。
上記においては、画像データの一例としてsRGBデータを説明していたが、AdobeRGBやscRGBなど入力デバイスで利用される任意の標準的な色空間で表現された画像データを色調整対象にすることができる。また、上記においては、モニタ205の表示色の色調整を説明したが、例えばプロジェクタやプリンタなど他の出力デバイス用の色調整でもよい。
また、実施例1、3においては、第一の変換により画像データをCIELAB空間に変換し、続いて、第二の変換により画像データを均等色知覚空間またはHK均等色知覚空間に変換する例を説明した。言い替えれば、均等色知覚空間またはHK均等色知覚空間の作成元の色空間(以下、基準色空間)としてCIELAB空間を利用する例を説明した。しかし、均等色知覚空間の作成元の基準色空間はCIELAB空間に限らず、例えばCIE三刺激値XYZ(CIEXYZ空間)やCIECAM02のJCh空間(カラーアピアランス空間)など様々な標準色空間を基準色空間として利用することができる。
また、上記においては、画像全体を一律に色調整する例を説明したが、例えばUIにより色調整領域のユーザ指示を入力して、調整領域のみを色調整するようにしてもよい。色調整領域としては、矩形や楕円などの図形によって指示される領域、例えばマジックワンドツールによって指示される色値近傍の色を有する領域などである。また、上記においては、色調整の例として彩度調整のみを説明したが、明度や色相の調整も同様に行うことができる。
[その他の実施例]
本発明は、上述の実施形態の一以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、一以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の一以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、一以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
104 … CIELAB変換部、105 … 均等色知覚空間変換部、108 … 色調整部、107 … マッピング部、108 … 色空間逆変換部
Claims (17)
- 標準的な色空間の入力画像データを均等色知覚空間の画像データに変換する変換手段と、
ユーザ指示に基づき、前記均等色知覚空間の画像データを用いて前記入力画像データの色を調整する調整手段と、
前記均等色知覚空間において、前記調整により前記標準的な色空間の色域の外に移動した、前記均等色知覚空間の画像データの画素の色値を、前記標準的な色空間の色域内にマッピングするマッピング手段と、
前記調整および前記マッピングの後の前記均等色知覚空間の画像データを、前記標準的な色空間の画像データに逆変換する逆変換手段とを有する画像処理装置。 - 前記マッピング手段は、前記均等色知覚空間において、前記画素の色値を前記色域内の距離が最小の点にマッピングする請求項1に記載された画像処理装置。
- 前記マッピング手段は、前記均等色知覚空間において、前記色域内に収束点を設定し、前記画素の色値と前記収束点を結ぶ線分と前記色域の境界の交点に前記画素の色値をマッピングする請求項1に記載された画像処理装置。
- 前記調整手段は、彩度、明度、色相の少なくとも一つを調整するためのユーザ指示を入力するユーザインタフェイスを有する請求項1から請求項3の何れか一項に記載された画像処理装置。
- 前記調整手段は、前記逆変換手段が出力する画像データを表示するユーザインタフェイスを有する請求項1から請求項4の何れか一項に記載された画像処理装置。
- 前記逆変換手段は、前記標準的な色空間の格子点と前記均等色知覚空間の色値の対応関係を示すテーブルに基づき、前記均等色知覚空間の画像データを前記標準的な色空間の画像データに逆変換する請求項1から請求項5の何れか一項に記載された画像処理装置。
- 前記変換手段は、前記入力画像データを基準色空間の画像データに変換する第一の変換手段と、
前記基準色空間の画像データを前記均等色知覚空間の画像データに変換する第二の変換手段を有する請求項1から請求項6の何れか一項に記載された画像処理装置。 - 前記基準色空間は均等色空間またはカラーアピアランス空間である請求項7に記載された画像処理装置。
- 前記変換手段は、前記テーブルに基づき、前記入力画像データを前記均等色知覚空間の画像データに変換する請求項6に記載された画像処理装置。
- 前記均等色知覚空間は、人間の知覚に対して均等な色空間である請求項1から請求項9の何れか一項に記載された画像処理装置。
- 前記均等色知覚空間は、視覚等色相データを所定の色相差以内で表現する色空間である請求項1から請求項10の何れか一項に記載された画像処理装置。
- 前記所定の色相差は三度であることを特徴とする請求項11に記載された画像処理装置。
- 前記均等色知覚空間は、人間の知覚に対して均等な第一の色空間、および、人間の知覚に対して均等かつヘルムホルツ・コールラウシュ効果による明るさの変化が補正された第二の色空間を含む請求項1から請求項9の何れか一項に記載された画像処理装置。
- 前記変換手段は、前記均等色知覚空間として前記第一の色空間または前記第二の色空間を選択するためのユーザ指示を入力するユーザインタフェイスを有する請求項13の記載された画像処理装置。
- 標準的な色空間の入力画像データを均等色知覚空間の画像データに変換し、
ユーザ指示に基づき、前記均等色知覚空間の画像データを用いて前記入力画像データの色を調整し、
前記均等色知覚空間において、前記調整により前記標準的な色空間の色域の外に移動した、前記均等色知覚空間の画像データの画素の色値を、前記標準的な色空間の色域内にマッピングし、
前記調整および前記マッピングの後の前記均等色知覚空間の画像データを、前記標準的な色空間の画像データに逆変換する画像処理方法。 - コンピュータを請求項1から請求項14の何れか一項に記載された画像処理装置の各手段として機能させるためのプログラム。
- 請求項16に記載されたプログラムを記録されたコンピュータが読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014143657A JP2015035805A (ja) | 2013-07-12 | 2014-07-11 | 画像処理装置およびその方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013147075 | 2013-07-12 | ||
JP2013147075 | 2013-07-12 | ||
JP2014143657A JP2015035805A (ja) | 2013-07-12 | 2014-07-11 | 画像処理装置およびその方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015035805A true JP2015035805A (ja) | 2015-02-19 |
Family
ID=52544004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014143657A Pending JP2015035805A (ja) | 2013-07-12 | 2014-07-11 | 画像処理装置およびその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015035805A (ja) |
-
2014
- 2014-07-11 JP JP2014143657A patent/JP2015035805A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5481021B2 (ja) | 異機種間色域マッピング方法および装置 | |
JP5863424B2 (ja) | 色処理装置およびその方法 | |
EP2887636B1 (en) | Method of mapping source colors from a source color gamut into a target color gamut | |
JP5973780B2 (ja) | 色処理装置およびその方法 | |
CN110661931B (zh) | 图像处理设备、图像处理方法和介质 | |
JP2006229925A (ja) | 動的画像彩度処理装置 | |
JP2012028903A (ja) | 色処理装置及びプログラム | |
JP2014165656A (ja) | カラープロファイル生成装置、画像処理装置、画像処理システム、カラープロファイルの生成方法およびプログラム | |
JP4803122B2 (ja) | 色処理装置及びプログラム | |
JP2008141237A (ja) | 色処理装置およびその方法 | |
US10403229B2 (en) | System and method for reproducing color image with supposed reproduced color gamuts | |
JP5025323B2 (ja) | 色処理装置および方法 | |
JP4375580B2 (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
US11205399B2 (en) | Color reproduction method, color reproduction system, color reproduction program, and color reproduction apparatus | |
JP2005191808A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP2015035805A (ja) | 画像処理装置およびその方法 | |
US10979601B2 (en) | High precision gamut mapping | |
JP2016054405A (ja) | 色処理装置およびその方法 | |
JP2020005136A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
KR20180117685A (ko) | 높은 정밀도 색역 매핑 | |
JP2000316095A (ja) | 画像処理装置および画像処理方法 | |
JP6320278B2 (ja) | 色処理装置およびその方法 | |
JP6583059B2 (ja) | 色変換装置、色変換方法、及び、色変換プログラム | |
JP2007208789A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラム | |
JP2008288982A (ja) | 色処理装置および方法 |