(57)【要約】【課題】画像をレタッチ処理し、色変換を行う場合に発生する無彩色への色付きを防止する。【解決手段】撮像装置で撮影した任意の画像データをレタッチし、色変換するためのルックアップテーブルデータを作成する場合に、ルックアップテーブルの無彩色を示す格子点に格納される格子点格納値を無彩色データへと変換することで無彩色の色付きを補正した新たに画像データを生成し、元の画像データと新たに生成された無彩色の色付きのない画像データを用いてルックアップテーブルを作成する。【選択図】      図５
2004246674.tif 000002
【特許請求の範囲】
【請求項１】
第１画像データを第２画像データへと色変換するためのルックアップテーブルを作成するルックアップテーブル作成方法であって、
前記ルックアップテーブルの無彩色を示す格子点に格納される格子点格納値を無彩色データへと変換することを特徴とするルックアップテーブル作成方法。
【請求項２】
前記ルックアップテーブルは、ソース画像データと、前記ソース画像データをレタッチ処理したディスティネーション画像データとを用いて作成されることを特徴とする請求項１に記載のルックアップテーブル作成方法。
【請求項３】
前記ソース画像データの色空間は前記ディスティネーション画像データの色空間と同じであることを特徴とする請求項２に記載のルックアップテーブル作成方法。
【請求項４】
前記ソース画像データの色空間は前記ディスティネーション画像データの色空間と異なることを特徴とする請求項２に記載のルックアップテーブル作成方法。
【請求項５】
前記第１画像データの色空間は前記第２画像データの色空間と同じであることを特徴とする請求項１乃至３のいずれか１項に記載のルックアップテーブル作成方法。
【請求項６】
前記第１画像データの色空間は前記第２画像データの色空間と異なることを特徴とする請求項１乃至３のいずれか１項に記載のルックアップテーブル作成方法。
【請求項７】
前記無彩色データへの変換は、前記第２画像データを補正した明度信号で置き換えるにより実現することを特徴とする請求項１〜６に記載のルックアップテーブル作成方法。
【請求項８】
請求項１乃至７のいずれか１項に記載のルックアップテーブル作成方法を実行することを特徴とする撮像装置。
【請求項９】
請求項１乃至７のいずれか１項に記載のルックアップテーブル作成方法をコンピュータに実行させるコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを実行することを特徴とする撮像装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データの色変換処理を行うためのルックアップテーブルの作成方法に関し、特に、被写体を撮像して得られた画像データの色変換処理を行うためのルックアップテーブルの作成方法に関するものである。
【０００２】
【従来の技術】
色変換を行う手法としてルックアップテーブルを用いて色変換を行う手法が考案されている。このルックアップテーブルを用いた色変換は色空間上の局所的な色だけを変換できる等、自由に色変換を行うパラメータを設計（カスタマイズ）することが可能ということで注目されている。
【０００３】
【発明が解決しようとする課題】
しかし、このルックアップテーブルを用いた色変換手法においてはパラメータの設定を十分考慮して行わないと階調の不連続性が発生する場合がある。特に無彩色においては人間の知覚特性上、無彩色への色付きによる不連続性が知覚される場合が多い。
【０００４】
また従来、Ｎ次元ルックアップテーブルを用いた色変換処理ではないが、色変換時の無彩色への色付きを抑える発明として、無彩色周辺の彩度をゲインまたはテーブルを用いて一律に抑えてしまう発明もあるが、さまざまな輝度レベルの無彩色の微妙な色相および輝度の変化に対応できないという問題があった。
【０００５】
本発明は、前述の問題点にかんがみ、画像のレタッチ処理等における、無彩色への色付きを防止することを目的とする。
【０００６】
【課題を解決するための手段】
本発明のルックアップテーブル作成方法は、第１画像データを第２画像データへと色変換するためのルックアップテーブルを作成するルックアップテーブル作成方法であって、前記ルックアップテーブルの無彩色を示す格子点に格納される格子点格納値を無彩色データへと変換することを特徴とする。
【０００７】
【発明の実施の形態】
（実施例１）
本発明の実施例を以下に説明する。
【０００８】
図１は本発明のＮ次元ルックアップテーブル作成処理を用いた色変換処理システムの簡単なブロック図である。以下図１のブロック図と図４のフローチャートを用いて、本実施例のＮ次元ルックアップテーブル作成方法および、そこで作成されたＮ次元ルックアップテーブルを用いた色変換処理について説明する。また本実施例では説明を簡単にするために、Ｎ次元ルックアップテーブルのＮを３として説明する。
【０００９】
図１中１０１のテーブル作成用画像入力部は３次元ルックアップテーブルを作成する基となる画像データを入力する処理部である。ユーザは変換元となる画像データであるソース元）画像を入力、あるいは指定し（ステップ（以下、Ｓと記載）４０１）、ソース画像を自分の好みに応じて局所的または、全体的に色のレタッチ処理を行う（Ｓ４０２）。ここで、ソース画像とは、例えば、撮像装置で撮影された画像等であり、ディスティネーション（目的、）画像とは、ソース画像をレタッチ処理した画像を意味する。その結果、ディスティネーション画像が作成される（Ｓ４０３、）。ソース画像およびディスティネーション画像は１０２の３次元ルックアップテーブル作成部へと送られ、ソース画像およびディスティネーション画像に基づき３次元ルックアップテーブルが作成される（Ｓ４０４）。３次元ルックアップテーブルが作成されると、この３次元ルックアップテーブルデータは１０３の無彩色テーブルデータ補正部にて無彩色グリッドのテーブルデータが無彩色データになる用に補正する（Ｓ４０５）。以上が３次元ルックアップテーブル作成の簡単な流れである。次にこの３次元ルックアップテーブルを用いて色変換をおこなう色変換処理の流れを説明する。３次元ルックアップテーブルを用いて変換される画像データは１０４の変換画像データ入力部へと入力される（Ｓ４０６）。ここでは画像データのフォーマットに基づき信号値が読み出され、１０５の３次元色変換処理部へとおくられる。この３次元色変換処理部では１０３の３次元ルックアップテーブル作成部にて作成された３次元ルックアップテーブルを用いて、色変換処理が行われる（Ｓ４０６）。色変換処理が行われた画像の信号値は１０６の画像データ出力部において、ユーザが指定した画像データフォーマットに基づき、フォーマット変換されて出力される（Ｓ４０８）。以上が簡単な流れである。次に個々の処理部についてより詳しく説明する。
【００１０】
図１中の１０２の３次元ルックアップテーブル作成部内部のブロック図を図２に示し、処理の流れを図５のフローチャートを用いて説明する。
【００１１】
本実施例においては、格子点間隔を信号値を３２ステップとすることにより９×９×９の７２９個の格子点（グリッド）を持つ３次元ルックアップテーブルとし、さらにＲ方向にＩ、Ｇ方向にＪ、Ｂ方向にＫ番目の３次元ルックアップテーブルの格子点値を
Ｒｇ＝３２×Ｉ    式（１）
Ｇｇ＝３２×Ｊ    式（２）
Ｂｇ＝３２×Ｋ    式（３）
また、この格子点値に対応する格子点格納値を
Ｒｔ＝３ＤＴａｂｌｅＲ（Ｉ，Ｊ，Ｋ）    式（４）
Ｇｔ＝３ＤＴａｂｌｅＧ（Ｉ，Ｊ，Ｋ）    式（５）
Ｂｔ＝３ＤＴａｂｌｅＢ（Ｉ，Ｊ，Ｋ）    式（６）
（ただしＩ＝０〜８、Ｊ＝０〜８、Ｋ＝０〜８）
と表現するものとする。例えば、Ｉ＝１、Ｊ＝２、Ｋ＝３であれば、格子点値は（３２×１，３２×２，３２×３）＝（３２，６４，９６）、格子点格納値は（３ＤｔａｂｌｅＲ（１，２，３），３ＤｔａｂｌｅＧ（１，２，３），３ＤｔａｂｌｅＢ（１，２，３））であり、この３次元ルックアップテーブルを用いてデータ変換を行えば、（３２，６４，９６）という入力信号は、（３ＤｔａｂｌｅＲ（１，２，３），３ＤｔａｂｌｅＧ（１，２，３），３ＤｔａｂｌｅＢ（１，２，３））という信号に変換されることを意味している。また、すべての格子点においてＲｔ＝Ｒｇ、Ｇｔ＝Ｇｇ、Ｂｔ＝Ｂｇとなるよう３次元ルックアップテーブルを設定すると、入力と出力が等しくなる３次元ルックアップテーブルとなる。
【００１２】
図１中の１０２の３次元ルックアップテーブル作成部内部のブロック図を図２に示す。２０１のデータ検出部では格子点値（Ｒｇ，Ｇｇ，Ｂｇ）近辺の信号値が求められる。ここでソース画像の信号値を（Ｒｓ（ｘ，ｙ），Ｇｓ（ｘ，ｙ），Ｂｓ（ｘ，ｙ））（ただしｘ，ｙは画像の座標値）とすると、まず格子点値と信号値の差Ｅは以下の式により求められる（Ｓ５０１）。
【００１３】
Ｅ＝√（（Ｒｇ−Ｒｓ（ｘ，ｙ））＾２＋（Ｇｇ−Ｇｓ（ｘ，ｙ））＾２＋（Ｂｇ−Ｂｓ（ｘ，ｙ））＾２）    式（７）
次に、信号値差Ｅがしきい値Ｌ以下であるかどうかを比較する（Ｓ５０２）。この信号値の差Ｅが予め決定されている値Ｌ以下であれば、格子点近辺の値ということになる。ここでのしきい値Ｌとは人間が異なる色として認識できる信号値の差により決定される。すなわち、さまざまな色毎によりしきい値Ｌを変更することが望ましいが、本実施例においては説明を簡単にするため、すべての色に同じしきい値Ｌを用いることにする。格子点近辺の値、すなわちＥ≦Ｌを満たす画像がソース画像からサーチされると、２０２のデータ比較部にてその画素の座標（ｘ，ｙ）に対応するディスティネーション画像の信号値（Ｒｄ（ｘ，ｙ），Ｇｄ（ｘ，ｙ），Ｂｄ（ｘ，ｙ））が読みだされ、ソース画像の信号値とディスティネーション画像の信号値から、ｄＲ、ｄＧ、ｄＢが求められる。
【００１４】
ｄＲ＝Ｒｓ（ｘ，ｙ）−Ｒｄ（ｘ，ｙ）    式（８）
ｄＧ＝Ｇｓ（ｘ，ｙ）−Ｇｄ（ｘ，ｙ）    式（９）
ｄＢ＝Ｂｓ（ｘ，ｙ）−Ｂｄ（ｘ，ｙ）    式（１０）
上記の様に格子点値（Ｒｇ，Ｇｇ，Ｂｇ）においてソース画像全域のｄＲ、ｄＧ、ｄＢの平均値ｄＲａｖｅ、ｄＧａｖｅ、ｄＢａｖｅを求める（Ｓ５０３）。またソース画像中に格子点近辺の値が存在しない場合は（Ｅ＞Ｌ）、ｄＲａｖｅ＝ｄＧａｖｅ＝ｄＢａｖｅ＝０とする（Ｓ５０９）。
【００１５】
上記手法で求められたｄＲａｖｅ、ｄＧａｖｅ、ｄＢａｖｅは２０３のテーブル作成部におくられ、次式によりカスタマイズされた３次元ルックアップテーブルの格子点値（Ｒｇ，Ｇｇ，Ｂｇ）に対応する格子点格納値（Ｒｔ，Ｇｔ，Ｂｔ）が求められる（Ｓ５０４）。
【００１６】
Ｒｔ＝Ｒｇ―ｄＲａｖｅ    式（１１）
Ｇｔ＝Ｇｇ―ｄＧａｖｅ    式（１２）
Ｂｔ＝Ｂｇ―ｄＢａｖｅ    式（１３）
以上のことを３次元ルックアップテーブルの格子点７２９点すべてにおいて行い、対応する格子点格納値（３次元ルックアップテーブルデータ）を求める。
【００１７】
次に求められた３次元ルックアップテーブルデータは図１の１０３の無彩色テーブル補正部へと送られる。ここでは、無彩色を意味するＲｇ＝Ｇｇ＝Ｂｇとなる条件の３次元ルックアップテーブルの格子点値（Ｒｇ，Ｇｇ，Ｂｇ）に対応する格子点格納値（Ｒｔ，Ｇｔ，Ｂｔ）がチェックされる（Ｓ５０５）。この格子点格納値（Ｒｔ，Ｇｔ，Ｂｔ）は次式によりＹＵＶ信号へと変換される（Ｓ５０６）。
【００１８】
Ｙｔ＝０．３×Ｒｔ＋０．５９×Ｇｔ＋０．１１×Ｂｔ    式（１４）
Ｕｔ＝（Ｂｔ―Ｙｔ）×０．５６４    式（１５）
Ｖｔ＝（Ｒｔ―Ｙｔ）×０．７１３    式（１６）
ここで、Ｕｔ＝Ｖｔ＝０でないかチェックをし、色付きが発生しているかを調べる（Ｓ５０７）。もし、ＵｔおよびＶｔが０であれば、無彩色を意味するので、３次元ルックアップテーブル格子点格納値（Ｒｔ，Ｇｔ，Ｂｔ）は変更されず、そのまま用いられる。ただし、ＵｔもしくはＶｔが０でなかった場合は、色付きが発生しているので、各画素に対応するＲｔ’，Ｇｔ’，Ｂｔ’が次式（１７）、（１８）、（１９）により求められ、３次元ルックアップテーブルの格子点格納値として新たに（Ｒｔ’，Ｇｔ’，Ｂｔ’）が用いられる（Ｓ５０８）。
【００１９】
Ｒｔ’＝Ｙｔ    式（１７）
Ｇｔ’＝Ｙｔ    式（１８）
Ｂｔ’＝Ｙｔ    式（１９）
以上、Ｓ５０５からＳ５０８までの処理を無彩色を示すＲｇ＝Ｇｇ＝Ｂｇをみたす格子点すべてに行うことにより３次元ルックアップテーブルの無彩色補正が行われる。
【００２０】
次に１０５の３次元色変換処理部について説明する。１０４の変換画像入力部から送られてくる画像のＲＧＢ信号値Ｒ，Ｇ，Ｂから格子点のインデックスを示す値Ｉ，Ｊ，Ｋが求められる（ただしＩ，Ｊ，Ｋは小数点以下は切捨て）。
【００２１】
Ｉ＝Ｒ／３２    式（２０）
Ｊ＝Ｇ／３２    式（２１）
Ｋ＝Ｂ／３２    式（２２）
さらに画像のＲＧＢ信号値Ｒ，Ｇ，Ｂの値がそれぞれの格子点からどれぐらい離れているかを示す値Ｒｆ，Ｇｆ，Ｂｆの値を次式で求める。
【００２２】
Ｒｆ＝Ｒ−Ｉ×３２    式（２３）
Ｇｆ＝Ｇ−Ｊ×３２    式（２４）
Ｂｆ＝Ｂ−Ｋ×３２    式（２５）
以上の値を用いて、画像のＲＧＢ信号値Ｒ、Ｇ、Ｂを３次元ルックアップテーブルと立方体補間演算を用いて、求められる変換後の値Ｒｏ、Ｇｏ、Ｂｏは以下の式で求められる。
【００２３】
Ｒｏ＝
（３ＤｔａｂｌｅＲ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＲ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（２６）
Ｇｏ＝
（３ＤｔａｂｌｅＧ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＧ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（２７）
Ｂｏ＝
（３ＤｔａｂｌｅＢ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＢ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（２８）
以上の変換により、３０１の変換画像データ入力部に入力された画像のＲ、Ｇ、Ｂ信号は画素毎に１０２で作成され、１０３で無彩色が補正された３次元ルックアップテーブルと補間演算を用いてＲｏ、Ｇｏ、Ｂｏへと変換され３０３の画像データ出力部へと送られる。
【００２４】
本実施例においてはソース画像データ（ソース画像信号）およびディスティネーション画像データ（ディスティネーション画像信号）にＲＧＢ信号を用いたが、これに限られるものではなく、ＹＵＶ信号、ＣＭＹ信号、ＣＭＹＧ信号等のどのようなものでも対応することが可能である。また本実施例において彩度の計算をＹＵＶ空間へと変換して、そのＵ、Ｖの値により無彩色であるかどうかを判別したが、これに限らず無彩色と判別することが可能な信号であれば、どのような信号に変換しても構わない。
【００２５】
また、ソース画像とディスティネーション画像は、例えば、ソース画像がＲＧＢ信号、ディスティネーション画像がＹＵＶ信号といったように、それぞれ異なる色空間の信号であってもよい。また本実施例における３次元ルックアップテーブル変換をＲＧＢ信号からＲＧＢ信号に変更するテーブルを用いたのは最終画像フォーマットをビットマップフォーマット、もしくはＴｉｆｆフォーマット等のＲＧＢ信号を画像信号として記録するフォーマットを前提にしたためであり、ＲＧＢ信号からＲＧＢ信号への変換に限られず、ＲＧＢ信号からＹＵＶ信号、ＲＧＢ信号からＬ＊ａ＊ｂ＊信号等の変換のテーブルを設定することも可能である。
【００２６】
（実施例２）
本発明の第２の実施例を以下に説明する。
【００２７】
図３は本発明第２の実施例のＮ次元ルックアップテーブル作成処理を用いた色変換処理システムの簡単なブロック図である。以下図１のブロック図を用いて、本実施例のＮ次元ルックアップテーブル作成方法および、そこで作成されたＮ次元ルックアップテーブルを用いた色変換処理について説明する。また本実施例では説明を簡単にするために、Ｎ次元ルックアップテーブルのＮを３にして説明を行う。また本実施例においては、実施例１でＲＧＢ信号からＲＧＢ信号へと変換する３次元ルックアップテーブルデータを作成したのに対して、ＲＧＢ信号からＹＵＶ信号へと変換する３次元ルックアップテーブルデータを作成する場合について説明する。また実施例１と同じ部分に関しては説明を省略する。
【００２８】
図３中の３０２の３次元ルックアップテーブル作成部内部のブロック図を図２に示す。２０１のデータ検出部では格子点値（Ｒｇ，Ｇｇ，Ｂｇ）近辺の信号値が求められる。ここでソース画像の信号値を（Ｒｓ（ｘ，ｙ），Ｇｓ（ｘ，ｙ），Ｂｓ（ｘ，ｙ））（ただしｘ，ｙは画像の座標値）とすると、まず格子点値と信号値の差Ｅは以下の式により求められる。
【００２９】
Ｅ＝√（（Ｒｇ−Ｒｓ（ｘ，ｙ））＾２＋（Ｇｇ−Ｇｓ（ｘ，ｙ））＾２＋（Ｂｇ−Ｂｓ（ｘ，ｙ））＾２）    式（２９）
この信号値の差Ｅが予め決定されている値Ｌ以下であれば、格子点近辺の値ということになる。格子点近辺の値、すなわち、Ｅ≦Ｌを満たす画像がソース画像からサーチされると、２０２のデータ比較部にてその画素の座標（ｘ，ｙ）に対応するディスティネーション画像の信号値（Ｒｄ（ｘ，ｙ），Ｇｄ（ｘ，ｙ），Ｂｄ（ｘ，ｙ））が読みだされ、ソース画像の信号値とディスティネーション画像の信号値から、ｄＲ、ｄＧ、ｄＢが求められる。
【００３０】
ｄＲ＝Ｒｓ（ｘ，ｙ）−Ｒｄ（ｘ，ｙ）    式（３０）
ｄＧ＝Ｇｓ（ｘ，ｙ）−Ｇｄ（ｘ，ｙ）    式（３１）
ｄＢ＝Ｂｓ（ｘ，ｙ）−Ｂｄ（ｘ，ｙ）    式（３２）
上記の様に格子点値（Ｒｇ，Ｇｇ，Ｂｇ）においてソース画像全域のｄＲ、ｄＧ、ｄＢの平均値  ｄＲａｖｅ、ｄＧａｖｅ、ｄＢａｖｅを求める。またソース画像中に格子点近辺の値が存在しない場合（Ｅ＞Ｌの場合）は、ｄＲａｖｅ＝ｄＧａｖｅ＝ｄＢａｖｅ＝０とする。
【００３１】
上記手法で求められたｄＲａｖｅ、ｄＧａｖｅ、ｄＢａｖｅは２０３のテーブル作成部におくられ、次式によりカスタマイズされた３次元ルックアップテーブルの格子点値（Ｒｇ，Ｇｇ，Ｂｇ）に対応する色変換後のＲＧＢ信号Ｒｔ、Ｇｔ、Ｂｔが求められる。
【００３２】
Ｒｔ＝Ｒｇ―ｄＲａｖｅ    式（３３）
Ｇｔ＝Ｇｇ―ｄＧａｖｅ    式（３４）
Ｂｔ＝Ｂｇ―ｄＢａｖｅ    式（３５）
Ｒｔ、Ｇｔ、Ｂｔは次式によりＹＵＶ信号へと変換され、格子点格納値（Ｙｔ，Ｕｔ，Ｖｔ）となる。
【００３３】
Ｙｔ＝０．３×Ｒｔ＋０．５９×Ｇｔ＋０．１１×Ｂｔ    式（３６）
Ｕｔ＝（Ｂｔ―Ｙｔ）×０．５６４    式（３７）
Ｖｔ＝（Ｒｔ―Ｙｔ）×０．７１３    式（３８）
以上のことを３次元ルックアップテーブルの格子点７２９点すべてにおいて行い、対応する格子点格納値（３次元ルックアップテーブルデータ）を求める。ここで求められた３次元ルックアップテーブルデータは図１の１０３の無彩色テーブル補正部へと送られる。ここでは、Ｒｇ＝Ｇｇ＝Ｂｇとなる条件の３次元ルックアップテーブルの格子点値（Ｒｇ，Ｇｇ，Ｂｇ）に対応する格子点格納値（Ｙｔ，Ｕｔ，Ｖｔ）がチェックされる。ここでもしＵｔおよびＶｔが０であれば、無彩色を意味するので、３次元ルックアップテーブル格子点格納値（Ｙｔ，Ｕｔ，Ｖｔ）は変更されず、そのまま用いられる。ただし、ＵｔもしくはＶｔが０でなかった場合は、色付きが発生しているので、次のようにして補正を行う。
【００３４】
Ｕｔ’＝０    式（３９）
Ｖｔ’＝０    式（４０）
として、格子点値（Ｒｇ，Ｇｇ，Ｂｇ）に対応する格子点格納値として（Ｙｔ，Ｕｔ’，Ｖｔ’）が用いられる。
【００３５】
以上処理をＲｇ＝Ｇｇ＝Ｂｇをみたす格子点すべてに行うことにより３次元ルックアップテーブルの無彩色補正がおこなわれる。
【００３６】
次に作成した３次元ルックアップテーブルを用いた色変換処理について説明する。まず変換対象となる画像データが３０４の変換画像データ入力部へと入力される。ここでは画像データのフォーマットに基づき信号値が読み出される。本実施例においてはフォーマットとしてＪＰＥＧフォーマット画像を用いて説明する。読み出されたＹＵＶ信号データは３０７の色空間変換処理部にてＲＧＢ信号データへと変換されて３０５の３次元色変換処理部へとおくられる。ＲＧＢ信号データは図３の３０３から出力された３次元ルックアップテーブルを用いて色変換処理が行われる。色変換処理が行われた画像の信号値は３０５の画像データ出力部において、ＪＰＥＧフォーマットに基づき、フォーマット変換されて出力される。以上が色変換処理の流れである。
【００３７】
次に３０５の３次元色変換処理部について説明する。３０７の色空間変換処理部から送られてくる画像のＲＧＢ信号値Ｒ，Ｇ，Ｂから格子点のインデックスを示す値Ｉ，Ｊ，Ｋが求められる（ただしＩ，Ｊ，Ｋは小数点以下は切捨て）。
【００３８】
Ｉ＝Ｒ／３２    式（４１）
Ｊ＝Ｇ／３２    式（４２）
Ｋ＝Ｂ／３２    式（４３）
さらに画像のＲＧＢ信号値Ｒ，Ｇ，Ｂの値がそれぞれの格子点からどれぐらい離れているかを示す値Ｒｆ，Ｇｆ，Ｂｆの値を次式で求める。
【００３９】
Ｒｆ＝Ｒ−Ｉ×３２    式（４４）
Ｇｆ＝Ｇ−Ｊ×３２    式（４５）
Ｂｆ＝Ｂ−Ｋ×３２    式（４６）
以上の値を用いて、画像のＲＧＢ信号値Ｒ、Ｇ、Ｂを３次元ルックアップテーブルと立方体補間演算を用いて、求められる変換後の値Ｙｏ、Ｕｏ、Ｖｏは以下の式で求められる。
【００４０】
Ｙｏ＝
（３ＤｔａｂｌｅＹ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＹ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（４７）
Ｕｏ＝
（３ＤｔａｂｌｅＵ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＵ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（４８）
Ｖｏ＝
（３ＤｔａｂｌｅＶ（Ｉ，Ｊ，Ｋ）×（３２−Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ＋１，Ｊ，Ｋ）×（Ｒｆ）×（３２−Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ，Ｊ＋１，Ｋ）×（３２−Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ，Ｊ，Ｋ＋１）×（３２−Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ＋１，Ｊ＋１，Ｋ）×（Ｒｆ）×（Ｇｆ）×（３２−Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ＋１，Ｊ，Ｋ＋１）×（Ｒｆ）×（３２−Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ，Ｊ＋１，Ｋ＋１）×（３２−Ｒｆ）×（Ｇｆ）×（Ｂｆ）
＋３ＤｔａｂｌｅＶ（Ｉ＋１，Ｊ＋１，Ｋ＋１）×（Ｒｆ）×（Ｇｆ）×（Ｂｆ））／（３２×３２×３２）    式（４９）
以上の変換により、３０７の色空間変換処理部から出力された画像のＲ、Ｇ、Ｂ信号は画素毎に３次元ルックアップテーブルと補間演算を用いてＹｏ、Ｕｏ、Ｖｏへと変換され３０６の画像データ出力部へと送られる。
【００４１】
本実施例のようにＲＧＢ信号から３次元ルックアップテーブルを用いてＹＵＶ信号へ変換することにより、画像データをＪＰＥＧフォーマットとして記録する場合において、ＲＧＢ信号からＹＵＶ信号へと変換するマトリクス演算を省略することが可能となり、演算処理時間の短縮、および演算処理回路規模の削減を実現可能となる。
【００４２】
また、デジタルカメラ等の撮像装置上において本発明を実現した場合は、無彩色の色付きの発生を防いだ適切なレタッチ処理を撮像装置単体で完了させることが可能となる。
【００４３】
なお、本発明は、複数の機器（例えば、コンピュータ、インターフェース機器、デジタルカメラ）から構成されるシステムに適用しても、それらの機能を有する単体の装置に適用してもよい。
【００４４】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【００４５】
【発明の効果】
以上説明したように本発明によれば、ルックアップテーブル作成時に無彩色を表す信号が確実に無彩色に変換されるようにテーブルを作成するため、ルックアップテーブルを用いて色変換を行った場合における無彩色画像への色付きによる不連続性の発生を防ぐことが可能となる。
【図面の簡単な説明】
【図１】本発明を用いた実施例１おける色変換処理システムの簡単なブロック図
【図２】実施例における３次元ルックアップテーブル作成部の簡単なブロック図
【図３】本発明を用いた実施例２おける色変換処理システムの簡単なブロック図
【図４】３次元ルックアップテーブルを用いた色変換処理に関するフローチャート
【図５】実施例１のルックアップテーブル作成部の無彩色補正処理に関するフローチャート
【符号の説明】
１０１  テーブルデータ作成用画像データ入力部
１０２  ３次元ルックアップテーブル作成部
１０３  無彩色テーブル補正部
１０４  変換画像データ入力部
１０５  ３次元色変換処理部
１０６  画像データ出力部
３０１  テーブル作成用画像データ入力部
３０２  ３次元ルックアップテーブル作成部
３０３  無彩色テーブル補正部
３０４  変換画像データ入力部
３０５  ３次元色変換処理部
３０６  画像データ出力部
３０７  色変換処理部
【図１】
2004246674.tif 000003
【図２】
2004246674.tif 000004
【図３】
2004246674.tif 000005
【図４】
2004246674.tif 000006
【図５】
2004246674.tif 000007