(57)【特許請求の範囲】
【請求項１】
調整対象となる色変換テーブルを取得するテーブル取得ステップと、
前記色変換テーブルにおいて調整対象となる調整グリッドを設定する調整グリッド設定ステップと、
前記調整グリッドを調整する調整ステップと、を有する色処理方法であって、
画像を入力する画像入力ステップと、
前記画像入力ステップで入力された画像を構成する複数の画素の夫々について、前記色変換テーブルを用いた色変換における前記調整グリッドの寄与の度合いを示す寄与率を算出する算出ステップと、
前記複数の画素の夫々について算出された寄与率に基づく画像を表示する表示ステップとを有し、
前記表示ステップにおいては、前記画像全体に対する寄与率をグレイスケールとして表示することを特徴とする色処理方法。
【請求項２】
前記調整グリッド設定ステップは、
前記画像入力ステップで入力された画像内において調整対象となる色を持つ調整対象画素を指定する画素指定ステップと、
前記調整対象画素に対して前記色変換テーブルを用いた色変換を行う際の補間処理に寄与する、前記色変換テーブルの複数のグリッドを寄与グリッドとして表示する寄与グリッド表示ステップと、
前記寄与グリッドごとに、前記調整対象画素に対する色変換時の寄与の度合いを示す寄与率を算出して表示する寄与率表示ステップと、
前記寄与率に基づいて、前記複数の寄与グリッドから前記調整グリッドを指定する指定ステップと、
を有することを特徴とする請求項１に記載の色処理方法。
【請求項３】
前記画素指定ステップにおいては、ユーザの指示に基づいて前記調整対象画素を指定することを特徴とする請求項２記載の色処理方法。
【請求項４】
前記調整グリッド指定ステップにおいては、ユーザの指示に基づいて前記調整グリッドを指定することを特徴とする請求項２または３に記載の色処理方法。
【請求項５】
前記テーブル取得ステップは、
色変換対象となる入出力色域データを取得する色域取得ステップと、
前記入出力色域データに基づいて、前記色変換テーブルとして第１の色変換テーブルを作成する第１のテーブル作成ステップと、を有し、
前記第１の色変換テーブルを前記色変換テーブルとして取得することを特徴とする請求項１に記載の色処理方法。
【請求項６】
調整対象となる色変換テーブルを取得するテーブル取得手段と、
前記色変換テーブルにおいて調整対象となる調整グリッドを設定する調整グリッド設定手段と、
前記調整グリッドを調整する調整手段と、を有する色処理装置であって、
画像を入力する画像入力手段と、
前記画像入力手段で入力された画像を構成する複数の画素の夫々について、前記色変換テーブルを用いた色変換における前記調整グリッドの寄与の度合いを示す寄与率を算出する算出手段と、
前記複数の画素の夫々について算出された寄与率に基づく画像を表示する表示手段とを有し、
前記表示手段は、前記画像全体に対する寄与率をグレイスケールとして表示することを特徴とする色処理装置。
【請求項７】
前記調整グリッド設定手段は、
前記画像入力手段で入力された画像内において調整対象となる色を持つ調整対象画素を指定する画素指定手段と、
前記調整対象画素に対して前記色変換テーブルを用いた色変換を行う際の補間処理に寄与する、前記色変換テーブルの複数のグリッドを寄与グリッドとして表示する寄与グリッド表示手段と、
前記寄与グリッドごとに、前記調整対象画素に対する色変換時の寄与の度合いを示す寄与率を算出して表示する寄与率表示手段と、
前記寄与率に基づいて、前記複数の寄与グリッドから前記調整グリッドを指定する指定手段と、
を有することを特徴とする請求項６に記載の色処理装置。
【請求項８】
コンピュータで実行されることにより、該コンピュータ上で請求項１乃至５のいずれか１項に記載の色処理方法を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、色変換を行うための色変換テーブルを調整する色処理装置および色処理方法に関する。
【背景技術】
【０００２】
従来より、ＣＲＴモニタやＬＣＤモニタ等の画像表示装置、あるいはインクジェットプリンタやレーザプリンタ等の画像印刷装置において、ユーザが表示あるいは印刷された画像の色や階調を調整したいという要求があった。その際には、画像全体の明るさやコントラスト、もしくはカラーバランス等を調整することが一般的であった。
【０００３】
しかしながら、上記従来の調整方法では、ユーザが調整したい画素の色を的確に調整するには、多くの経験が必要であり、意図する調整結果を得るためには、調整、出力を繰り返すという試行錯誤を重ねることが多かった。
この試行錯誤を軽減させるために、画像を表示して調整したい画素をポインタ等で指定し、該画素に対する所望の色変換を行った後に、該調整結果を色変換ルックアップテーブル（以下、ＬＵＴと記す）に反映させるという技術が提案されている。（例えば、特許文献１参照）。
【０００４】
ここでＬＵＴは、図９に示されるように等間隔で並んだＲＧＢ値の各グリッド（図中、黒丸で示す）に対応するＲＧＢ値、およびＣＩＥＬａｂ（以下、Ｌａｂ）値を、図１０のように並べたテキストデータである。図１０では、ＲＧＢの各軸をデジタル値で３２間隔で分割したグリッドの例を示す。このようなグリッド値を有するＬＵＴに基づき、入力された任意のＲＧＢデータに対し、該ＲＧＢデータを囲む４点のグリッドによる四面体補間処理を行うことによって出力Ｌａｂ値が決定される。これにより、任意のＲＧＢデータをＬａｂで−タに変換する、いわゆる色変換が実現される。
【特許文献１】特開２００５−２８３８３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したようにＬＵＴを用いた補間による色変換処理を行う際に、該ＬＵＴのグリッドデータを調整すると、以下のような問題が起こる。すなわち、ＬＵＴにおいてある１つのグリッドデータを調整して変化させた場合、該グリッドデータに基づく四面体補間演算の結果にも当然、該調整の影響が生じる。したがって、該調整後のＬＵＴを用いて画像の色変換を行う際に、画像によっては該調整の影響がユーザの想定外に広くなってしまうことがあり、場合によっては画像全体の印象を大きく変えてしまう。
【０００６】
ＬＵＴにおけるある１グリッドのデータを変化させた場合に、色変換後に影響が及ぶ画像内の全ての範囲を、ユーザが把握することは困難であった。したがって、ある１グリッドのデータを変化させた際に予期しない色が影響を受けてしまい、色変換結果がユーザの思うようにならず、色調整作業の試行錯誤に費やす労力が増加してしまっていた。
【０００７】
本発明は上述した問題を解決するためになされたものであり、色変換テーブルの調整を効率的にできるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するための一手法として、本発明の色処理方法は以下の工程を備える。
【０００９】
すなわち、調整対象となる色変換テーブルを取得するテーブル取得ステップと、前記色変換テーブルにおいて調整対象となる調整グリッドを設定する調整グリッド設定ステップと、前記調整グリッドを調整する調整ステップと、を有する色処理方法であって、画像を入力する画像入力ステップと、前記画像入力ステップで入力された画像を構成する複数の画素の夫々について、前記色変換テーブルを用いた色変換における前記調整グリッドの寄与の度合いを示す寄与率を算出する算出ステップと、前記複数の画素の夫々について算出された寄与率に基づく画像を表示する表示ステップとを有し、前記表示ステップにおいては、前記画像全体に対する寄与率をグレイスケールとして表示することを特徴とする。
【００１０】
例えば、前記表示ステップにおいては、前記画像全体に対する寄与率をグレイスケールとして表示することを特徴とする。
【発明の効果】
【００１１】
以上の構成からなる本発明によれば、色変換テーブルのグリッドデータを変化させた場合に、色変換対象の画像中における全画素への影響の度合いを表示することによって、効率的な色調整作業が可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１３】
＜第１実施形態＞
本実施形態の画像処理装置は、色空間を格子状に分割したグリッドごとの色変換データを格納した色変換テーブル（以下、ＬＵＴ）を備える。そして、入力画像のＲＧＢ値に対し、該ＬＵＴを用いた四面体補間による色変換を施すことによって、出力画像としてのＬａｂ値を得るものである。本実施形態では、該ＬＵＴにおけるグリッド値をユーザが任意に調整できるようにする。さらに、該調整が入力画像に及ぼす影響を表示することによって、色調整の影響を視認しながら色調整作業を行うことができるようにする。
【００１４】
●四面体補間処理
本実施形態を説明するに先立ち、一般的に行われている、ＬＵＴに基づいてＲＧＢデータからＬａｂデータを算出する四面体補間の方法について、詳細に説明する。ここでは、上述した図１０に示されるＲＧＢ各９グリッド（デジタル値で３２間隔）のＬＵＴを例として説明する。
【００１５】
ＬＵＴを用いた色変換処理としては、まず、入力されたＲＧＢデータ（Red，Green，Blue）に対し、以下に示す式（１）により、始点グリッド（Ｒ0，Ｇ0，Ｂ0）を算出する。
【００１６】
Ｒ0＝int(Red／Pitch)
Ｇ0＝int(Green／Pitch)          ・・・(1)
Ｂ0＝int(Blue／Pitch)
Pitch＝Scale／(Grid−1)
ただし、int()：括弧内の数値の小数点以下切り捨て
(Red，Green，Blue)：指定が素のＲＧＢ値
Scale：ＲＧＢ画像の階調数
Grid：ＬＵＴのグリッド数
次に、以下に示す式（２）により、図１１に示すような、始点グリッドからのＲＧＢ各方向への距離（ｋR，ｋG，ｋB）を算出する。この距離の大小関係により、入力点がいずれの四面体の内部に存在するかを判別することができる。
【００１７】
ｋR＝{Red−(Ｒ0×Pitch)}／Pitch
ｋG＝{Green−(Ｇ0×Pitch)}／Pitch      ・・・(2)
ｋB＝{Blue−(Ｂ0×Pitch)}／Pitch
すなわち、以下に示す式（３）を用いることにより、図１２で示すように、始点以外の３つのグリッド（Ｒ1，Ｇ1，Ｂ1），（Ｒ2，Ｇ2，Ｂ2），（Ｒ3，Ｇ3，Ｂ3）を特定することができる。
【００１８】
if  ｋR≧ｋG≧ｋB
Ｒ1＝Ｒ0＋１，Ｇ1＝Ｇ0，Ｂ1＝Ｂ0
Ｒ2＝Ｒ0＋１，Ｇ2＝Ｇ0＋１，Ｂ2＝Ｂ0
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
if  ｋR≧ｋB＞ｋG
Ｒ1＝Ｒ0＋１，Ｇ1＝Ｇ0，Ｂ1＝Ｂ0
Ｒ2＝Ｒ0＋１，Ｇ2＝Ｇ0，Ｂ2＝Ｂ0＋１
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
if  ｋG≧ｋB＞ｋR
Ｒ1＝Ｒ0，Ｇ1＝Ｇ0＋１，Ｂ1＝Ｂ0          ・・・(3)
Ｒ2＝Ｒ0，Ｇ2＝Ｇ0＋１，Ｂ2＝Ｂ0＋１
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
if  ｋG＞ｋR≧ｋB
Ｒ1＝Ｒ0，Ｇ1＝Ｇ0＋１，Ｂ1＝Ｂ0
Ｒ2＝Ｒ0＋１，Ｇ2＝Ｇ0＋１，Ｂ2＝Ｂ0
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
if  ｋB＞ｋR≧ｋG
Ｒ1＝Ｒ0，Ｇ1＝Ｇ0，Ｂ1＝Ｂ0＋１
Ｒ2＝Ｒ0＋１，Ｇ2＝Ｇ0，Ｂ2＝Ｂ0＋１
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
if  ｋB＞ｋG＞ｋR
Ｒ1＝Ｒ0，Ｇ1＝Ｇ0，Ｂ1＝Ｂ0＋１
Ｒ2＝Ｒ0，Ｇ2＝Ｇ0＋１，Ｂ2＝Ｂ0＋１
Ｒ3＝Ｒ0＋１，Ｇ3＝Ｇ0＋１，Ｂ3＝Ｂ0＋１
最後に、各グリッドに対応する出力値（Ｌａｂ値）を、以下に示す式（４）および式（５）により算出することで、入力されたＲＧＢデータ（Red，Green，Blue）に対応するＬａｂ値を算出することができる。
【００１９】
if  ｋR≧ｋG≧ｋB
ｋ1＝ｋR
ｋ2＝ｋG
ｋ3＝ｋB
if  ｋR≧ｋB＞ｋG
ｋ1＝ｋR
ｋ2＝ｋB
ｋ3＝ｋG
if  ｋG≧ｋB＞ｋR
ｋ1＝ｋG      ・・・(4)
ｋ2＝ｋB
ｋ3＝ｋR
if  ｋG＞ｋR≧ｋB
ｋ1＝ｋG
ｋ2＝ｋR
ｋ3＝ｋB
if  ｋB＞ｋR≧ｋG
ｋ1＝ｋB
ｋ2＝ｋR
ｋ3＝ｋG
if  ｋB＞ｋG＞ｋR
ｋ1＝ｋB
ｋ2＝ｋG
ｋ3＝ｋR
Ｌ＝Ｌ0＋ｋ1(Ｌ1−Ｌ0)＋ｋ2(Ｌ2−Ｌ1)＋ｋ3(Ｌ3−Ｌ2)
ａ＝ａ0＋ｋ1(ａ1−ａ0)＋ｋ2(ａ2−ａ1)＋ｋ3(ａ3−ａ2)      ・・・(5)
ｂ＝ｂ0＋ｋ1(ｂ1−ｂ0)＋ｋ2(ｂ2−ｂ1)＋ｋ3(ｂ3−ｂ2)
ただし、(Ｌ0，ａ0，ｂ0)〜(Ｌ3，ａ3，ｂ3)：(Ｒ0，Ｇ0，Ｂ0)〜(Ｒ3，Ｇ3，Ｂ3)に対応するＬａｂ値
以上のようにして、ＬＵＴを用いた四面体補間により、ＲＧＢデータからＬａｂデータを算出することができる。しかしながら上記従来例でも説明したように、該ＬＵＴのグリッドデータを調整すると、色変換後の画像に対する影響が予想外に大きくなってしまうことがある。これは、ＬＵＴにおける１つのグリッドデータ、例えば（Ｒ0，Ｇ0，Ｂ0）をユーザが調整し、変化させた場合、図１３Ａ〜図１３Ｘに示す全ての四面体内に含まれるデータが影響を受けてしまうためである。
【００２０】
そこで本実施形態では、ＬＵＴにおけるグリッド値をユーザが調整する際に、該調整が及ぼす入力画像に対する影響を視認可能とすることにより、色調整作業の効率化を図る。
【００２１】
●装置構成
図１は、本実施形態である画像処理装置の構成を示すブロック図である。同図において、１は画像処理装置本体である。２は、ハードディスクやＣＤ−ＲＯＭ等、画像データを記憶しておくための画像データ記憶部である。４は、ＣＲＴディスプレイやＬＣＤディスプレイ等、画像データおよびＵＩを表示する画像表示装置である。６は、マウスやトラックボール等、ユーザが画像表示装置４を見ながら操作を行うためのポインティングデバイスである。１３は、ＣＲＴディスプレイやＬＣＤディスプレイ、あるいはインクジェットプリンタやレーザプリンタ等、画像を出力するための画像出力装置である。
【００２２】
以下、画像処理装置１の内部構成について説明する。
【００２３】
３は、画像処理装置１に画像データを読み込むための画像入力部である。５は、画像データおよびＵＩを画像表示装置４に表示するための画像表示部である。７は、ポインティングデバイス６から入力されたユーザの操作結果を基にＵＩを制御するＵＩ制御部である。８は、ユーザによって指定された原画像上の任意の画素の色変換における補間処理で使用されるグリッドデータを算出する寄与グリッド算出部である。９は、ユーザが指定した調整対象のグリッド（調整グリッド）のデータを変更することにより、画像を構成する各画素に与える影響度を示す寄与率を計算する寄与率算出部である。１０は、寄与率算出部９で算出された寄与率を基に、原画像に対する該調整の影響を反映させた寄与率画像を作成する寄与率画像作成部である。１１は、ＬＵＴデータあるいは画像データの色変換を行う色変換部である。１２は、本実施形態における調整対象となるＬＵＴデータを記憶しておくＬＵＴ記憶部である。１４は、画像出力装置１３にて画像を出力するための画像出力部である。
【００２４】
●ＬＵＴ調整処理
以下、画像処理装置１において行われるＬＵＴ調整および該ＬＵＴを用いた色変換処理について、図２のフローチャートを用いて説明する。
【００２５】
まずステップＳ２００はテーブル取得ステップであり、ＬＵＴ記憶部１２に保存されているＬＵＴを読み込む。以下、ここで読み込まれたＬＵＴに対する調整が行われる。次にステップＳ２０１は画像入力ステップであり、画像データ記憶部２に記憶されている画像データを、画像入力部３によって画像処理装置１に読み込む。以下、ここで読み込まれた画像データを原画像データと称する。次にステップＳ２０２は画像表示ステップであり、ステップＳ２０１にて読み込んだ原画像データを含むユーザインタフェイス（ＵＩ）を、画像表示部５によって画像表示装置４に表示する。なお、本実施形態におけるＵＩは例えば図３に示すような形態であるが、その詳細については後述する。
【００２６】
次にステップＳ２０３は画素指定判定ステップである。ここでは、ユーザがポインティングデバイス６を用いて、ステップＳ２０２で表示されたＵＩ上の原画像において、調整対象となる色を持つ画素（以下、調整対象画素）を指定することにより、調整対象画素を設定したか否かを判定する。調整対象画素が指定されていればステップＳ２０４に進み、指定されていなければステップＳ２０３に戻り、調整対象画素が指定されるまで待つ。
【００２７】
ステップＳ２０４は寄与グリッド表示ステップである。ここでは、ユーザが指定した調整対象画素に対し、ステップＳ２００で読み込まれたＬＵＴを用いた色変換を施す際に四面体補間処理で用いられる４つのグリッドを、色変換に寄与する寄与グリッドとしてＵＩ画面３０１に表示する。これら４つの寄与グリッドは、上述した式（１）〜（３）により、Ｒ0，Ｇ0，Ｂ0)〜(Ｒ3，Ｇ3，Ｂ3、として算出される。
【００２８】
次にステップＳ２０５は寄与率算出・表示ステップであり、寄与率算出部９において、ステップＳ２０４にて算出、表示された寄与グリッドが、調整対象画素の色変換時にどの程度寄与するのかを示す寄与率を算出し、表示する。この寄与率算出処理の詳細については後述する。
【００２９】
次にステップＳ２０６は調整グリッド指定判定ステップであり、ユーザがポインティングデバイス６を用いて、ステップＳ２０４で表示された寄与グリッドのうち、調整対象となるグリッド（以下、調整グリッド）を指定したか否かを判定する。ここで、調整グリッドが指定されていればステップＳ２０７に進み、指定されていなければステップＳ２１１に進む。
【００３０】
ステップＳ２０７は寄与率画像表示ステップであり、ステップＳ２０１で読み込んだ原画像データ内の各画素に対する、ステップＳ２０６にて指定された調整グリッドの寄与率を算出する。そして算出された寄与率から寄与率画像を生成し、表示する。つまり、ステップＳ２０７で算出される寄与率は、指定された調整グリッドを調整することにより、各画素がうける影響の度合いを示す。この寄与率画像の表示により、ユーザは、当該調整グリッドの値を更新した際に、原画像全体に及ぼす影響の度合いを容易に認識することができる。なお、この寄与率画像作成処理の詳細については後述する。
【００３１】
ステップＳ２０８パラメータ調整判定ステップであり、ＵＩ制御部７にて、ユーザがポインティングデバイス６を用いて、調整グリッドのパラメータ調整を行ったか否かを判定する。調整を行っていればステップＳ２０９に進み、行っていなければステップＳ２１１に進む。ステップＳ２０９は調整量変換ステップであり、ステップＳ２０８における調整量を、色変換部１１で該調整グリッドのＲＧＢ値に対応するＬａｂ値に変換する。例えば、調整グリッドに対するパラメータ調整としてＬａｂ値が指定されたのであれば、該Ｌａｂ値をそのままグリッド値とする。一方、ＲＧＢ値が指定されたのであれば、該指定されたＲＧＢ値と対応するＬａｂ値の関係に基づき、調整グリッドの本来のＲＧＢ値に対応するＬａｂ値を算出して、これをグリッド値とする。そしてステップＳ２１０はテーブル更新ステップであり、ステップＳ２０９にて算出した調整グリッドの値でＬＵＴデータを更新し、ＬＵＴ記憶部１２に記憶する。
【００３２】
ステップＳ２１１は、調整作業終了判定ステップであり、ユーザが調整作業を終了したか否かを、例えば終了指示があったか否かに基づいて判断し、終了していればステップＳ２１２に進み、終了していなければステップＳ２０３に戻って調整処理を繰り返す。
【００３３】
ステップＳ２１２は出力画像入力ステップであり、画像データ記憶部２に記憶されている任意の画像データを、出力用画像として、画像入力部３により画像処理装置１に読み込む。ここで読み込まれる出力用画像は、すなわち上記のようにステップＳ２０１で読み込まれた原画像に基づいて調整されたＬＵＴによる色変換対象となる。ステップＳ２１３は色変換ステップであり、色変換部１１において、ステップＳ２１２で読み込んだ出力用画像に対し、ＬＵＴ記憶部１２に記憶されている調整後のＬＵＴデータを用いて色変換を施す。そしてステップＳ２１４は画像出力ステップであり、ステップＳ２１３にて色変換が施された画像データを、画像出力部１４により、画像出力装置１３へ出力する。
【００３４】
●ユーザインタフェイス
図３は、本実施形態において用いられるユーザインタフェイス例を示す図である。同図に示すＵＩ画面３０１において、３０２は、ステップＳ２０１にて読み込まれた原画像を表示する原画像表示部である。３０３は、ユーザがポインティングデバイス６を用いて操作するポインタである。３０４は、ステップＳ２０７にて寄与率画像を表示する寄与率画像表示部である。３０５は、ステップＳ２０１にて読み込む原画像の画像ファイル名を指定する画像ファイル名指定部である。
【００３５】
３０６〜３０９は、ステップＳ２０４にて寄与グリッドのＲＧＢデータを表示するグリッドＲＧＢ値表示部である。３１０〜３１３は、ステップＳ２０５にて算出した各グリッドの寄与率を表示する寄与率表示部である。３１４〜３１７は、ステップＳ２０６にてユーザが調整グリッドを指定するグリッド指定ボタンである。
【００３６】
３１８は、ステップＳ２０８にてユーザが調整グリッドのＲＧＢ値を指定するＲＧＢ値調整部である。３１９は、ステップＳ２０８にてユーザが調整グリッドのＬａｂ値を指定するＬａｂ値調整部である。３２０は、ステップＳ２１１にてユーザが調整作業終了を指示する終了ボタンである。
【００３７】
●寄与グリッドの寄与率算出（Ｓ２０５）
ここで、ステップＳ２０５にて算出される、寄与グリッドごとの寄与率について説明する。ステップＳ２０５における寄与率は、ステップＳ２０３にて指定された調整対象画素を補間する際に、各寄与グリッドのそれぞれが与える影響の割合を示す値である。すなわち、寄与率が大きいグリッドほど、該グリッドが変化することによる調整対象画素の補間後の値の変化が大きい。
【００３８】
本実施形態において、四面体補間に用いる４つの寄与グリッドの寄与率ｗ0〜ｗ3は、上述した式（２）にて算出される、始点グリッドから調整対象画素に対するＲＧＢ各方向への距離ｋR，ｋG，ｋBを用いて、以下に示す式（６）により算出可能である。
【００３９】
if  ｋR≧ｋG≧ｋB
ｗ0＝１−ｋR
ｗ1＝ｋR−ｋG
ｗ2＝ｋG−ｋB
ｗ3＝ｋB
if  ｋR≧ｋB＞ｋG
ｗ0＝１−ｋR
ｗ1＝ｋR−ｋB
ｗ2＝ｋB−ｋG
ｗ3＝ｋG
if  ｋG≧ｋB＞ｋR
ｗ0＝１−ｋG      ・・・(6)
ｗ1＝ｋG−ｋB
ｗ2＝ｋB−ｋR
ｗ3＝ｋR
if  ｋG＞ｋR≧ｋB
ｗ0＝１−ｋG
ｗ1＝ｋG−ｋR
ｗ2＝ｋR−ｋB
ｗ3＝ｋB
if  ｋB＞ｋR≧ｋG
ｗ0＝１−ｋB
ｗ1＝ｋB−ｋR
ｗ2＝ｋR−ｋG
ｗ3＝ｋG
if  ｋB＞ｋG＞ｋR
ｗ0＝１−ｋB
ｗ1＝ｋB−ｋG
ｗ2＝ｋG−ｋR
ｗ3＝ｋR
●寄与率画像作成（Ｓ２０７）
ここで、ステップＳ２０７で表示される寄与率画像の作成処理について説明する。
【００４０】
まず、対象画素に対して、上記式（２）および式（６）により、各画素を補間する際に使用する４つの寄与グリッドの各々に対する寄与率ｗ0〜ｗ3を算出する。
【００４１】
そして、この４つの寄与グリッドの中にステップＳ２０６で指定された調整グリッドが含まれる場合は、この調整グリッドに対応する寄与グリッドの寄与率をグレイスケール値に変換する。そして、この変換されたグレイスケール値を対象画素の画素値とする。一方、この４つの寄与グリッドの中に調整グリッドが含まれない場合は、対象画素の画素値を０とする。
【００４２】
この処理を原画像の各画素に対して行うことにより、調整グリッドを調整することにより、各画素がうける影響の度合いを示す寄与率画像を生成する。
【００４３】
図４に、上記方法によって作成された寄与率画像の一例を示す。図４上部に示した原画像４０１に対して、調整対象画素４０２を選択し、該調整対象画素４０２の色変換に寄与するグリッドのうち、最も寄与率の大きいグリッドを調整グリッドとして選択したとする。この場合、上述した方法によって図４下部に示す寄与率画像４０３が作成される。この寄与率画像４０３はすなわちグレイスケール画像であり、調整対象画素の色変換を調整することによって、画像全体にどの程度の影響が及ぼされるかを、ユーザが容易に視認することができる。
【００４４】
以上説明したように本実施形態によれば、色変換用のＬＵＴを調整する際に、ユーザが調整を行おうとしているグリッドデータを変化させた場合に、画像中で影響の及ぶ画素を表示する。これにより、ユーザは調整の影響の及ぶ範囲を視覚的に確認できるため、調整作業を効率的に行うことができる。
【００４５】
＜第２実施形態＞
以下、本発明に係る第２実施形態について説明する。上述した第１実施形態においては、色変換ＬＵＴのグリッドデータをユーザが直接調整する例を示した。第２実施形態においては、ユーザがガマットマッピング用のパラメータを調整することによって、色変換ＬＵＴのグリッドデータを間接的に調整することを特徴とする。
【００４６】
●装置構成
図５は、第２実施形態である画像処理装置の構成を示すブロック図である。同図において、５０１は画像処理装置本体である。５０２は、ハードディスクやＣＤ−ＲＯＭ等、画像データを記憶しておくための画像データ記憶部である。５０４は、ＣＲＴディスプレイやＬＣＤディスプレイ等、画像データおよびＵＩを表示する画像表示装置である。５０８は、マウスやトラックボール等、ユーザが画像表示装置５０４を見ながら操作を行うためのポインティングデバイスである。
【００４７】
以下、画像処理装置５０１の内部構成について説明する。
【００４８】
５０３は、画像処理装置５０１に画像データを読み込むための画像入力部である。５０５は、画像データおよびＵＩを画像表示装置５０４に表示するための画像表示部である。５０６は、画像入力機器および画像出力機器の色域データを記憶しておく色域データ記憶部である。５０７は、第２実施形態において作成された色変換ＬＵＴデータを記憶しておくＬＵＴ記憶部である。５０９は、ポインティングデバイス５０８から入力されたユーザの操作結果を基にＵＩを制御するＵＩ制御部である。
【００４９】
５１０は、色域データ記憶部５０６に記憶されている色域データおよびＵＩ制御部５０９においてユーザが調整したパラメータに基づいて、ガマットマッピングを行うガマットマッピング部である。５１１は、ガマットマッピング部５１０にて作成されたＬＵＴを、以前作成されたＬＵＴと比較し、変化が生じているグリッドを検出する変化グリッド検出部である。５１２は、変化グリッド検出部５１１にて算出したグリッドのデータを変更することにより、画像中のどの領域の色がどの程度変化するかを計算する寄与率算出部である。５１３は、寄与率算出部５１２で算出された寄与率を基に、原画像に対する該調整の影響を反映させた寄与率画像を作成する寄与率画像作成部である。
【００５０】
●ＬＵＴ作成処理
以下、画像処理装置５０１において行われるＬＵＴ作成処理について、図６のフローチャートを用いて説明する。
【００５１】
まずステップＳ６０１は画像入力ステップであり、画像データ記憶部５０２に記憶されている画像データを、画像入力部５０３によって画像処理装置５０１に読み込む。以下、ここで読み込まれた画像データを原画像データと称する。次にステップＳ６０２は画像表示ステップであり、ステップＳ６０１にて読み込んだ原画像データを含むユーザインタフェイス（ＵＩ）を、画像表示部５０５によって画像表示装置５０４に表示する。なお、本実施形態におけるＵＩは例えば図７に示すような形態であるが、その詳細については後述する。
【００５２】
次にステップＳ６０３は色域取得ステップであり、色域データ記憶部５０６に記憶されている入力機器の色域および出力機器の色域を、ガマットマッピング部５１０に読み込む。ここで入力機器の色域とは例えば、ＣＲＴモニタの測色データから算出された色域データ、あるいはｓＲＧＢデータの理論式より算出される色域データである。また、出力機器の色域とは例えば、インクジェットプリンタの測色データから算出された色域データである。
【００５３】
そしてステップＳ６０４は第１のテーブル作成ステップであり、ガマットマッピング部５１０において、ステップＳ６０３にて取得された入出力色域データを用いて色変換ＬＵＴを作成する。ここで作成されたＬＵＴがすなわち、第２実施形態における調整対象として取得されるものであり、以下、第１の色変換テーブル（第１のＬＵＴ）と称する。なお、ここで作成された第１のＬＵＴを、ＬＵＴ記憶部５０７に保存しておく。なお、このＬＵＴ作成処理の詳細については後述する。
【００５４】
ステップＳ６０５はパラメータ調整判定ステップであり、ＵＩ制御部５０９にて、ユーザがポインティングデバイス６を用いて、ガマットマッピングのパラメータ調整を行ったか否かを判定する。調整を行っていればステップＳ６０６に進み、行っていなければステップＳ６１２に進む。ステップＳ６０６は第２のテーブル作成ステップであり、ステップＳ６０５における調整値をガマットマッピング部５１０に読み込み、ＬＵＴを再計算する。この再計算によって作成されたＬＵＴがすなわち、第２実施形態におけるテーブル調整後のＬＵＴであり、以下、第２の色変換テーブル（第２のＬＵＴ）と称する。
【００５５】
そしてステップＳ６０７は変化グリッド検出ステップであり、第２実施形態における調整グリッド設定を行う。すなわち、変化グリッド検出部５１１において、ステップＳ６０４にて作成した第１のＬＵＴと、ステップＳ６０６にて再計算した第２のＬＵＴとを比較することによって、データ値が変更されたグリッドを検出し、これを調整グリッドとする。
【００５６】
次にステップＳ６０８は寄与率算出ステップであり、寄与率算出部５１２において、ステップＳ６０７にて検出された調整グリッドにおける変化が、原画像全体に対してどの程度影響するのかを示す寄与率を、原画像内の全ての画素について算出する。そしてステップＳ６０９は寄与率画像表示ステップであり、ステップＳ６０８で算出された原画像全体に対する調整グリッドの寄与率を、上述した第１実施形態と同様のグイレスケールによる寄与率画像として表示する。
【００５７】
そしてステップＳ６１０は調整結果保存判定ステップである。ここではすなわち、ステップＳ６０９にて表示された寄与率画像をユーザが確認し、ステップＳ６０５にて行った調整結果に基づくＬＵＴすなわち第２のＬＵＴを保存するか否かを、例えば保存指示があったか否かに基づいて判断する。保存する場合にはステップＳ６１１に進み、保存しない場合にはステップＳ６１２に進む。
【００５８】
ステップＳ６１１はテーブル更新ステップであり、ステップＳ６０６にて再計算された第２のＬＵＴで、ＬＵＴ記憶部５０７に保存されている第１のＬＵＴを書き換える。一方、ステップＳ６１２は調整終了判定ステップであり、、ユーザが調整作業を終了したか否かを、例えば終了指示があったか否かに基づいて判断し、終了していない場合にはステップＳ６０５に戻って調整処理を繰り返す。
【００５９】
以上の処理によって、ユーザが原画像に最適であると判断したＬＵＴが、ＬＵＴ記憶部５０７に保存される。
【００６０】
●ユーザインタフェイス
図７は、第２実施形態において用いられるユーザインタフェイス例を示す図である。同図に示すＵＩ画面７０１において、７０２は、ステップＳ６０１にて読み込まれた原画像を表示する原画像表示部である。７０３は、ステップＳ６０９にて寄与率画像を表示する寄与率画像表示部である。７０４は、ステップＳ６０１にて読み込む原画像の画像ファイル名を指定する画像ファイル名指定部である。
【００６１】
７０５および７０６はそれぞれ、ステップＳ６０３にて読み込む入力機器および出力機器の色域データファイル名を指定する、入力色域ファイル名指定部および出力色域ファイル名指定部である。
【００６２】
７０７は、ステップＳ６０４およびＳ６０６において作成された第１および第２のＬＵＴ、すなわちガマットマッピング結果を表示するガマットマッピング結果表示部である。７０８は、ステップＳ６０５にてガマットマッピングに用いるパラメータを指定するマッピングパラメータ指定部である。７０９は、ステップＳ６１２にてユーザが調整作業終了を指示する終了ボタンである。７１０は、ステップＳ６１０にてユーザがＬＵＴの調整結果の保存を指示するＬＵＴ保存ボタンである。
【００６３】
●ガマットマッピング
ここで、ステップＳ６０４およびステップＳ６０６において第１および第２のＬＵＴを作成するために行われるガマットマッピング処理について説明する。
【００６４】
一般に、ＣＲＴモニタ等の画像表示装置に表示される画像を、インクジェットプリンタ等の画像出力装置にて印刷出力する場合、種々の画像表示／出力機器が再現可能な色再現範囲すなわち色域は、機器特有のものである。したがって、ある機器では再現可能な色が、他の機器では再現できないということが起こり得る。そこで、対象とする機器において再現できない色（色域外色）を再現可能な色(色域内色)に置き換える、色域圧縮処理を行う必要がある。
【００６５】
図８は、一般的な色域圧縮処理の例を示した図であり、上図が色差最小を用いた圧縮例を、下図が収束点を用いた圧縮例を示す。図８上図における色域最小マッピング方法によれば、入力機器の色域１３０１を、出力機器の色域１３０２にマッピングする際に、画像出力装置の色域外の入力点１３０３を、色域内の最も近い点１３０４にマッピングする。また図８下図における収束点マッピング方法によれば、入力機器の色域１３０５と出力機器の色域１３０６に対して、色域外の入力点１３０７を、ある収束点１３０８に向かって延ばした直線１３０９と色域１３０６表面との交点１３１０にマッピングする。
【００６６】
ここで、第２実施形態においてステップＳ６０５で調整されるマッピングパラメータとしては、マッピング方法（色差最小／収束点）を選択するものであっても良いし、また、収束点マッピングにおける収束点として色座標を数値で指定するものであっても良い。なお、マッピング方法としては上記色差最小、あるいは収束点を用いた方法に限らず、ユーザが所望の結果を得られる方法であれば良い。
【００６７】
以上説明したように第２実施形態によれば、色変換用のＬＵＴを調整するためにガマットマッピングのパラメータを変化させた場合に、画像中で影響の及ぶ全ての画素を表示する。これにより、ユーザは調整の影響の及ぶ範囲を視覚的に確認できるため、調整作業を効率的に行うことができる。
【００６８】
＜変形例＞
上述した第１および第２実施形態においては、ＬＵＴを用いて四面体補間による色変換処理を行う例を示した。しかしながら本発明はこの例に限定されず、例えば立方体補間や三角柱補間等を用いても良い。すなわち、多次元空間において、等間隔グリッドのデータから非等間隔グリッドの出力データを算出可能な補間方法であれば、その種類を限定するものではない。
【００６９】
また、上述した第１および第２実施形態においては、ＲＧＢ入力、Ｌａｂ出力によるＬＵＴ形式を用いる例を示したが、本発明はこれに限定されるものではなく、例えば、ＣＭＹ入力、Ｌｕｖ出力の色空間であっても良い。すなわち、ユーザが色変換に用いる形式のＬＵＴであって、画像中の全画素についてグリッドの寄与率が算出可能なＬＵＴ形式であれば、その種類は限定されない。
【００７０】
また、上述した第１および第２実施形態においては、原画像全体に対し、式（６）により算出された所定グリッドの寄与率ｗ0〜ｗ3をグレイスケールに変換し、これを寄与率画像として表示する例を示した。しかしながら本発明における寄与率画像はこの例に限定されるものではない。例えば、グリッドデータの調整量を、以下に示す式（７）にてＲＧＢカラー画像に変換して、表示するようにしても良い。
【００７１】
Ｒ＝ｗn×ΔＲ
Ｇ＝ｗn×ΔＧ      ・・・(7)
Ｂ＝ｗn×ΔＢ
ただし、ｗn：寄与率
ΔＲ，ΔＧ，ΔＢ：グリッドデータのＲＧＢ調整量
寄与率画像としてはまた、以下に示す式（８）にてＬａｂ値を算出した後、ｓＲＧＢ理論式あるいはＩＣＣプロファイル等を用いてＲＧＢ値に変換することによって可視化し、表示するようにしても良い。
【００７２】
Ｌ＝ｗn×ΔＬ
ａ＝ｗn×Δａ      ・・・(8)
ｂ＝ｗn×Δｂ
ただし、ｗn：寄与率
ΔＬ，Δａ，Δｂ：グリッドデータのＬａｂ調整量
さらに、上述した第１実施形態および第２実施形態においては、それぞれ図３および図７にＵＩ例を示したが、本発明のＵＩはこの例に限定されないことは言うまでもない。すなわち、ユーザが寄与率画像を確認しながら、所望の調整を行うことによりＬＵＴデータの変更ができるようなＵＩ構成であれば良い。
【００７３】
＜他の実施形態＞
以上、実施形態例を詳述したが、本発明は例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等）から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００７４】
尚本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。なお、この場合のプログラムとは、コンピュータ読取可能であり、実施形態において図に示したフローチャートに対応したプログラムである。
【００７５】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００７６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【００７７】
プログラムを供給するための記録媒体としては、以下に示す媒体がある。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD-ROM，DVD-R)などである。
【００７８】
プログラムの供給方法としては、以下に示す方法も可能である。すなわち、クライアントコンピュータのブラウザからインターネットのホームページに接続し、そこから本発明のコンピュータプログラムそのもの(又は圧縮され自動インストール機能を含むファイル)をハードディスク等の記録媒体にダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【００７９】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせることも可能である。すなわち該ユーザは、その鍵情報を使用することによって暗号化されたプログラムを実行し、コンピュータにインストールさせることができる。
【００８０】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００８１】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、実行されることによっても、前述した実施形態の機能が実現される。すなわち、該プログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行うことが可能である。
【図面の簡単な説明】
【００８２】
【図１】本発明に係る一実施形態における画像処理装置の構成を示すブロック図である。
【図２】本実施形態におけるＬＵＴ調整処理を示すフローチャートである。
【図３】本実施形態におけるＵＩ例を示す図である。
【図４】本実施形態における寄与率画像例を示す図である。
【図５】第２実施形態における画像処理装置の構成を示すブロック図である。
【図６】第２実施形態におけるＬＵＴ作成処理を示すフローチャートである。
【図７】第２実施形態におけるＵＩ例を示す図である。
【図８】第２実施形態におけるガマットマッピング処理を説明する図である。
【図９】一般的なＲＧＢ空間におけるＬＵＴグリッド例を示す図である。
【図１０】一般的なＬＵＴデータ例を示す図である。
【図１１】一般的な四面体補間処理において、入力点と始点グリッドとの距離の算出方法を示す図である。
【図１２】四面体において特定される始点以外の３つのグリッドを示す図である。
【図１３Ａ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｂ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｃ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｄ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｅ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｆ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｇ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｈ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｉ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｊ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｋ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｌ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｍ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｎ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｏ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｐ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｑ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｒ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｓ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｔ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｕ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｖ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｗ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１３Ｘ】四面体補間において、あるグリッドを調整した際に影響がある四面体を示す図である。
【図１】
0005036495.tif 000002
【図２】
0005036495.tif 000003
【図３】
0005036495.tif 000004
【図４】
0005036495.tif 000005
【図５】
0005036495.tif 000006
【図６】
0005036495.tif 000007
【図７】
0005036495.tif 000008
【図８】
0005036495.tif 000009
【図９】
0005036495.tif 000010
【図１０】
0005036495.tif 000011
【図１１】
0005036495.tif 000012
【図１２】
0005036495.tif 000013
【図１３Ａ】
0005036495.tif 000014
【図１３Ｂ】
0005036495.tif 000015
【図１３Ｃ】
0005036495.tif 000016
【図１３Ｄ】
0005036495.tif 000017
【図１３Ｅ】
0005036495.tif 000018
【図１３Ｆ】
0005036495.tif 000019
【図１３Ｇ】
0005036495.tif 000020
【図１３Ｈ】
0005036495.tif 000021
【図１３Ｉ】
0005036495.tif 000022
【図１３Ｊ】
0005036495.tif 000023
【図１３Ｋ】
0005036495.tif 000024
【図１３Ｌ】
0005036495.tif 000025
【図１３Ｍ】
0005036495.tif 000026
【図１３Ｎ】
0005036495.tif 000027
【図１３Ｏ】
0005036495.tif 000028
【図１３Ｐ】
0005036495.tif 000029
【図１３Ｑ】
0005036495.tif 000030
【図１３Ｒ】
0005036495.tif 000031
【図１３Ｓ】
0005036495.tif 000032
【図１３Ｔ】
0005036495.tif 000033
【図１３Ｕ】
0005036495.tif 000034
【図１３Ｖ】
0005036495.tif 000035
【図１３Ｗ】
0005036495.tif 000036
【図１３Ｘ】
0005036495.tif 000037