(57)【特許請求の範囲】
【請求項１】
カラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える方法で、多次元色空間を所定のサイズを単位とする複数のブロックに分割し、該各ブロックの各頂点座標について前記変換式に基づく演算を行って変換値を求めておき、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の前記変換値とに基づく補間演算を行うことによって前記第２の画素値を求める画像変換方法において、
前記複数のブロックの中に前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを前記所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を求め、
前記各頂点座標の変換値を各ブロックごとに記録した変換値テーブル、及び、０以外の重み係数を有する頂点と該頂点の重み係数とをブロック内の位置ごとに記録した係数テーブル、を予めメモリに記憶しておき、
前記変換値テーブルに記録された変換値と、前記係数テーブルに記録された頂点及び重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行うことを特徴とする画像変換方法。
【請求項２】
カラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える装置であって、所定のサイズのブロックを単位とする複数のブロックに分割された多次元色空間の前記複数のブロックの各頂点座標について前記変換式に基づく演算を行って変換値を求める変換手段と、該変換手段により求められた変換値を記憶する記憶手段と、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の前記変換値とに基づく補間演算を行うことによって前記第２の画素値を求める補間演算手段と、を備えた画像変換装置において、
前記複数のブロックに分割されたブロックの中に前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを前記所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を生成する生成手段を更に有し、
前記記憶手段が、前記各頂点座標の変換値をブロックごとに記録した変換値テーブルと、０以外の重み係数を有する頂点と該頂点の重み係数とをブロック内の位置ごとに記録した係数テーブルとを記憶し、
前記補間演算手段が、前記記憶手段に記憶された前記変換値テーブルの変換値と、前記係数テーブルの頂点および重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行うものであることを特徴とする画像変換装置。
【請求項３】
カラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える処理をコンピュータに実行させるプログラムで、多次元色空間を所定のサイズのブロックを単位とする複数のブロックに分割し、該各ブロックの各頂点座標について前記変換式に基づく演算を行って変換値を求める第１のステップと、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の前記変換値とに基づく補間演算を行うことによって前記第２の画素値を求める第２のステップと、を含み、前記第１の画素値を前記第２の画素値に置き換えることにより、画像変換を行う手順を記録した記録媒体において、
前記第１のステップで更に、前記複数のブロックの中に前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを前記所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を求め、
前記各頂点座標の変換値を各ブロックごとに記録した変換値テーブル、及び、０以外の重み係数を有する頂点と該頂点の重み係数とをブロック内の位置ごとに記録した係数テーブルを予めメモリに記憶し、
前記第２のステップで、前記変換値テーブルに記録された変換値と、前記係数テーブルに記録された頂点および重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行い画像変換処理をコンピュータに実行させる画像変換の手順を記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、カラー画像の変換方法および装置に関し、特に詳しくは、一部の値（色）について予め演算を行って変換値を求めておき、その変換値を用いて補間演算を行うことにより任意の画素値の変換値を求める画像変換方法及び装置及び画像変換の手順を記録した記録媒体に関するものである。
【０００２】
【従来の技術】
従来、デジタル画像処理の１つとして色変換が行われている。例えば、カラー写真のデジタル処理では、プリント作成用に処理されたデジタル画像は、そのままモニタに表示すると必ずしも適切な色には見えないため、所定の変換式に基づく色変換を施してからモニタ表示するのが望ましいとされている。
【０００３】
カラー画像の色変換は、各画素の画素値を、変換式に基づく演算を行うことにより文字どおり変換してもよいが、この方法は、関係式が複雑な場合には演算時間が長くなるという問題がある。このため、写真のデジタル処理のように高速処理を要求されているシステムでは、通常ダイレクトマッピング法と呼ばれる方法が用いられている。
【０００４】
ダイレクトマッピング法は、一部の色について予め正確な演算を行って変換値を求め、求めた変換値をメモリに記憶しておき、実際に入力された値を変換するときには正確な演算は行わずに、予め求めておいた変換値を用いて補間演算を行って変換値を推定する方法である。具体的には、多次元色空間を複数のブロックに分割し、その各ブロックの各頂点座標について変換式に基づく正確な演算を行って変換値を求めておき、任意の点の変換値をこの頂点座標の変換値から補間して求めるというものである。
【０００５】
補間演算を行うときには、まず入力された画素値を取り囲む８つの頂点を特定し、その８つの頂点の座標の変換値をメモリから読み出し、その画素値のブロック内での位置に基づいて８つの頂点に重み付けをして、各頂点の重みを表す係数とメモリから読み出した各変換値とを掛け合わせ、掛けた結果を足し合わせることにより補間値を得る。この補間演算は掛け算と足し算のみの単純な演算であるため、変換式に基づいて演算する場合に比べれば、高速な処理が可能となる。
【０００６】
【発明が解決しようとする課題】
ここで、上記方法では１回の補間演算について８回の乗算と７回の加算（８個の値を足しあわせる）が必ず行われる。しかしながら、入力された画素値がブロックの面上や線上の点である場合には、その面や線を構成する頂点以外の頂点の重み係数は０となるため、実際には掛け算をする必要はない。
【０００７】
また、この方法では画素値が入力される度に重み係数を求めているが、実際にはブロック内の相対位置が同じであれば重み係数もまた同じになるため、同じパターンについて何度も重み係数を求めていることになる。
【０００８】
本発明は、ダイレクトマッピング法における上記のような無駄な処理をなくし、高速で、且つ、誤差のない画像変換処理を実現することを目的とするものである。
【０００９】
【課題を解決するための手段】
本発明の画像変換方法は、カラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える際に用いられる方法で、多次元色空間を所定のサイズを単位とする複数のブロックに分割し、該各ブロックの各頂点座標について前記変換式に基づく演算を行って変換値を求めておき、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の前記変換値とに基づく補間演算を行うことによって前記第２の画素値を求めるものであり、前記複数のブロックの中に、前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を求め、前記各頂点座標の変換値をブロックごとに記録した変換値テーブル、及び、０以外の重み係数を有する頂点と該頂点の重み係数とをブロック内の位置ごとに記録した係数テーブルを予めメモリに記憶しておき、前記変換値テーブルに記録された変換値と、前記係数テーブルに記録された頂点及び重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行うことを特徴とするものである。
【００１０】
前記画素値は（Ｒ，Ｇ，Ｂ）によって表される値である。また、多次元色空間は、Ｒ、Ｇ、Ｂを軸とする座標空間であり、画素値（色）を座標点として視覚的に表すものである。
【００１１】
重み係数は、例えばある画素値が頂点ａと頂点ｂの中間点に位置していれば、頂点ａの重み係数も頂点ｂの重み係数も１／２であり、頂点ａと頂点ｂを結ぶ線を１：２に分割する点（頂点ａ寄り）に位置していれば、頂点ａの重み係数が２／３、頂点ｂの重み係数が１／３となる。すなわち、頂点の座標値とは無関係に、頂点との位置関係、すなわち画素値のブロック内の位置に応じて定まるものであるため、ブロックサイズが同じ場合には、いずれか１つのブロックについてのみそのブロックに含まれる全ての点について重み係数を求めれば、他のブロック内の画素値についてもその重み係数を適用することができる。
【００１２】
また、多次元色空間を所定のサイズのブロックを単位とする複数のブロックに分割する際、異なるブロックサイズが存在する場合については、異なるブロックサイズのブロックについて、そのブロックの各頂点座標の変換値からそのブロックを所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を生成することにより、所定のサイズのブロックで変換を行ったのと同じ変換を行うことができるため、ダイレクトマッピング法における無駄な処理をなくし、高速で、且つ、誤差のない画像変換処理を実現することができる。
【００１３】
また、本明細書において「ブロック内」とはブロックの境界線、境界面、頂点を含むものとする。
【００１４】
したがって、「ブロック内の位置ごとに」記録した係数テーブルは、例えばブロックが８画素×８画素×８画素の立方体であれば、５１２個のデータからなるテーブルとなる。
【００１５】
なお、ブロックのサイズについては特に限定しないが、サイズを大きくすればブロック内の点が増えるため係数テーブルが大きくなり、サイズを小さくすれば頂点の数が増えるため変換値を求めるために予め行う演算量が増える。したがって、メモリや演算量を考慮して適当な値を選択すればよい。
【００１６】
また、係数テーブルに「０以外の重み係数を有する頂点」を記録する際には、例えば色空間の原点に最も近い頂点をａというように、相対位置ごとに名前をつけてその名前をテーブルに記録してもよいし、各頂点をブロックの一辺を１とした単位座標として（０，０，０）、（１，０，０）、（０，１，０）のように表して記録してもよい。
【００１７】
さらには、１つのブロックの頂点を隣接する順に並べた頂点データ列を前記メモリに記憶しておき、前記０以外の重み係数を有する頂点を、該頂点の数と、前記頂点データ列の中の該頂点が連続して並ぶ部分を指し示すポインタとにより表す方法も好ましい。
【００１８】
また、本発明の画像変換装置は、上記画像変換方法にしたがって、カラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える装置であり、所定のサイズのブロックを単位とする複数のブロックに分割された多次元色空間の前記各ブロックの各頂点座標について前記変換式に基づく演算を行って変換値を求める変換手段と、該変換手段により求められた変換値を記憶する記憶手段と、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の変換値とに基づく補間演算を行うことによって前記第２の画素値を求める補間演算手段とを備えた画像変換装置において、前記複数のブロックに分割されたブロックの中に、前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを前記所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を生成する生成手段を更に有し、前記記憶手段が、前記各頂点座標の変換値を各ブロックごとに記録した変換値テーブルと、０以外の重み係数を有する頂点と該頂点の重み係数をブロック内の位置ごとに記録した係数テーブルを記憶し、前記補間演算手段が、前記記憶手段に記憶された前記変換値テーブルの変換値と、前記係数テーブルの頂点および重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行うものであることを特徴とするものである。
【００１９】
また、この際、前記記憶手段が、１つのブロックの頂点を隣接する順に並べた頂点データ列をさらに記憶し、前記０以外の重み係数を有する頂点を、該頂点の数と、前記頂点データ列の中の該頂点が連続して並ぶ部分を指し示すポインタとの組み合わせとして記憶するようにしてもよい。
【００２０】
また、本発明の画像変換の手順を記録した記録媒体は、上記変換方法に従った手順でカラー画像を構成する各画素の第１の画素値を、所定の変換式によって対応づけられる第２の画素値に置き換える処理をコンピュータに実行させるプログラムを記録した記録媒体であり、多次元色空間を所定のサイズのブロックを単位とする複数のブロックに分割し、該各ブロックの各頂点座標について前記変換式に基づく演算をおこなって変換値第１のステップで求め、前記第１の画素値について該画素値のブロック内の位置に応じて定まる頂点ごとの重み係数と前記画素値を含むブロックの頂点座標の前記変換値とに基づく補間演算を行うことによって前記第２の画素値に置き換えることにより、画像変換を行う手順を記録した記録媒体において、前記第１のステップで更に、前記複数のブロックの中に、前記所定のサイズと異なるサイズのブロックが存在する場合について、該ブロックの各頂点座標の変換値から該ブロックを前記所定のサイズと等しい仮想ブロックに置き換えたときの仮想ブロックの各頂点座標の変換値を求め、前記各頂点座標の変換値をブロックごとに記録した変換値テーブル、及び、０以外の重み係数を有する頂点と該頂点の重み係数とをブロック内の位置ごとに記録した係数テーブルを予めメモリに記憶する。また、第２のステップでは、前記変換値テーブルに記録された変換値と、前記係数テーブルに記録された頂点および重み係数とに基づいて、重み係数が０以外の頂点のみを用いて前記補間演算を行うものであることを特徴とするものである。
【００２１】
【発明の効果】
本発明の画像変換方法及び装置及び画像変換の手順を記録した記録媒体によれば、補間演算に必要な頂点の変換値を記録した変換値テーブルとその頂点の重み係数が記録された係数テーブルを参照して補間演算を行うため、重み係数が０の頂点について無用な演算を繰り返すことがなく、また画素値が入力される度に重み係数を求める必要もなく、結果として高速な処理を実現することができる。この際、行う演算処理は単純な積和演算のみであるため、パイプライン処理にも適している。
【００２２】
更に、補間演算に必要な頂点の変換値を求める際、多次元空間を所定のサイズのブロックを単位とするブロックに分割して求めるが、異なるサイズのブロックが存在する場合について、所定のサイズと等しい仮想ブロックに置き換えたときの各頂点の変換値を求めて画像変換を行うことができるため、画像変換時の変換誤差を無くすことができる。
【００２３】
このように、本発明は、ダイレクトマッピング法における無駄な処理をなくし、高速で、且つ、誤差のない画像変換処理を実現することできるという優れた効果を有する。
【００２４】
【発明の実施の形態】
以下、本発明の一実施の形態について、図面を参照して詳細に説明する。図１は本発明の画像変換方法の概要を示す図であり、図２は、本発明の実施の形態における画像変換方法で画像変換を行う画像変換装置の概要を示すブロック図である。
【００２５】
図１に示されるように、本発明の方法は、変換値テーブル４と仮想変換値テーブル６と係数テーブル７とを予め作成しておき、カラー画像９が入力された際にこれらのテーブルの値を参照して補間演算を行うことにより変換画像１０を生成するものであり、この方法で画像変換を行う画像変換装置の概要は、図２に示すように、画像入力部１２、変換手段３、生成手段５、記憶手段１４、補間演算手段８、変換画像出力部１６によって構成されている。
【００２６】
はじめに、変換手段３によって求められた変換値を記録する変換値テーブル４の作成方法および内容について説明する。色空間１は、Ｒ、Ｇ、Ｂを軸とする３次元座標空間で、空間内の各座標点がそれぞれ１つの色を表している。フルカラー画像の場合、Ｒ、Ｇ、Ｂはそれぞれ０から２５５の範囲の値をとるので、色空間１の中には、色を表す点が２５６３＝１６７７７２１６個存在することになる。本実施の形態では、この色空間１を８×８×８のブロック２に分割し、各ブロック２の頂点座標についてのみ変換手段３により変換式に基づく正確な演算を行う。このとき、頂点の数は（２５６／８）3 ＝３２７６８個であるが、この程度の数であれば、変換式が多少複雑であってもコンピュータにより短時間で処理することができる。
【００２７】
各頂点座標の変換値はブロックごとに１つのデータとしてテーブルに記述しておく。すなわち、表１に示すように、変換値テーブル４の１つのデータは、ブロックを特定するためのブロックＮｏと８個の変換値（ＲＧＢ座標値）の計９個の要素からなる。この際、例えば隣接するブロックの頂点は同じ座標であるため、同じ変換値を複数のデータの要素として重複して記憶することになるが、本発明の方法はメモリの使用効率よりも高速処理を優先するものであるため、テーブル参照時の効率を考慮してこのようなデータ構造としている。
【００２８】
【表１】
0003934802.tif 000002
次に、記憶手段１４に予め記憶しておく係数テーブル７の作成方法および内容について説明する。上述のように、本実施の形態では１ブロックのサイズは８×８×８であるため、ブロック内（境界を含む）には５１２個の座標点（色）が存在する。これら各色の変換値は、頂点座標の変換値を用いて補間演算を行うことにより求められるが、従来のダイレクトマッピング法では、補間演算に必要な重み係数を補間演算を行う度に求めていた。これに対し、本発明の方法では、この重み係数を予め係数テーブル７に記録しておくが、この際全ての頂点についての重み係数を記録するのではなく、補間演算に使用する重み係数のみを記録する。また、この重み係数はブロック内の位置によって定まるものであるため、１ブロックに含まれる座標点の数（512 個）分だけデータを記憶しておけばよい。表２に、係数テーブル７の一例を示す。
【００２９】
【表２】
0003934802.tif 000003
頂点データ列
（１，０，０）        （０，１，０）
（０，０，０）        （０，０，０）
（０，０，１）        （０，０，１）
（１，０，１）        （０，１，１）
（１，０，０）        （１，１，１）
（１，１，０）
表２において、「パターン」は上記ブロック内の位置を識別するための番号である。「頂点数」は補間演算に用いられる頂点の数である。例えば、画素値が頂点座標に相当する場合には、１つの頂点の値のみで演算を行うことができ、同様にブロックの境界線上であれば２つ、境界面上であれば４つの頂点座標の変換値のみで補間を行うことができる。補間演算に必要な頂点の数が予めわかっていれば、その数の回数だけ演算を行った時点で処理を終了できるので、重み係数が０の場合に頂点座標の変換値を０倍するといった無駄な処理を省くことができる。
【００３０】
ここで、頂点数が８個よりも少ない場合には、使用する頂点がどれであるかをテーブルに示しておかなければならない。本実施の形態では、隣接する頂点が連続して並ぶような順番で（一筆書きでなぞれる順番で）頂点を並べた頂点データ列を予め定義しておき、係数テーブル７には「スタート位置」として、このデータ列のうち、補間演算に使用する頂点が連続して並ぶ部分を指し示すポインタを記録する。但し、頂点データ列における「頂点」は、ブロック内において各頂点を区別するための相対的な値であるため、表２の例では、頂点を（０，０，０）、（１，０，０）のような単位座標により表している。
【００３１】
ところが、上述の例によると各色成分（ＲＧＢの各成分）が０〜２５５で表されており、８ごとにブロックを形成する場合、ブロックの頂点は、０、８、１６、・・・、２４８、２５５となる。このように、８ごとにブロックを形成していても、最後のブロックだけは７きざみになってしまい、この７きざみのブロックを８きざみのブロックとして処理してしまうので誤差を生じる。本発明では、このような誤差を解消するために、７きざみのブロックに対しては、図３のように、全てのブロックサイズが同じとなるような８きざみの仮想ブロックを作成し、これを基に生成手段５により、仮想変換値テーブルを生成する。
【００３２】
続いて、生成手段５によって生成される変換値を記憶手段１４に記憶する上述の仮想変換値テーブル６の生成方法及び内容について説明する。
【００３３】
図３において、８×８×８の立方体の頂点における変換値が、Ｒ（０、０、０）Ｇ（０、０、０）Ｂ（０、０、０）  Ｒ（０、０、８）Ｇ（０、０、８）Ｂ（０、０、８）  ・・・  Ｒ（８、８、８）Ｇ（８、８、８）Ｂ（８、８、８）のようにきめられている場合、補間したい座標（r 、g 、b)でのＲ、Ｇ、Ｂ値を式（１）〜式（３）ように定める。
【００３４】
0003934802.tif 000004
このように、色変換の方法として、３次元の線系補間方法を用いる。
【００３５】
ところが、立方体の大きさが７×７×７の場合、次のような線形補外を用いて７×７×７の頂点の変換値から８×８×８の頂点での変換値を求める。
【００３６】
0003934802.tif 000005
（以下、Ｇ、Ｂについても同様である。）
式（４）〜式（１１）により得られた仮想的な８×８×８の頂点を基に、式（１）〜式（３）の計算を行うと、式（１２）〜式（１４）のような結果が得られる。
【００３７】
0003934802.tif 000006
式（１２）〜式（１４）は、７×７×７の３次元線形補間と同じである。このことから、式（４）〜式（１１）のように仮想的な頂点の座標を決めると、式（１）〜式（３）の計算で正確な補間演算ができるので、変換誤差をなくすことができる。
【００３８】
式（４）〜式（１１）は、７×７×７の立方体の場合を考えたが、状況によっては７×７×８、７×８×８のような直方体の頂点を考えなければならないこともあるが、同様の補外演算をすることにより、仮想的な８×８×８の頂点での変換値を求めることができる。
【００３９】
なお、上述の例では、０，８、１６、・・・、２４８、２５５で与えられた変換テーブルから、０，８、１６、・・・、２４８、２５６という仮想変換値テーブルを求めているが、２５５、２４７、・・・、７、０で与えられた変換値テーブルから２５５、２４７、・・・、７、−１の仮想変換値テーブルを求めることも同様である。
【００４０】
上述の例における変換値テーブル４から生成手段５によって生成される仮想変換値テーブル６への変換において、補外による演算が必要とされるのは、図４のハッチングされた部分のブロックであり、全てのブロックで、７×７×７→８×８×８の３次元補外が必要なわけではなく、以下のような補外が必要とされる。
【００４１】
７×７×７→８×８×８  ：  ３次元補外  ・・・        １ブロック
７×７×８→８×８×８  ：  ２次元補外  ・・・      ９３ブロック
７×８×８→８×８×８  ：  １次元補外  ・・・  ２８８３ブロック
である。
【００４２】
また、生成手段５による仮想変換値テーブルの算出は、１度行えばよいため計算時間の増加をあまり生じない。
【００４３】
なお、生成手段５によって生成される仮想変換値テーブル６は、上述のように、色空間を所定のサイズのブロックを単位とするブロックに分割した複数のブロックの中に所定のサイズと異なるサイズのブロックが存在する場合に用いるものであり、所定のブロックサイズと異なるブロックが存在しない場合は必要としない。
【００４４】
以上、変換値テーブル４及び仮想変換値テーブル６及び係数テーブル７の作成方法および内容について説明したが、次にこのテーブルを参照することによる画素値を置き換える処理（補間演算手段８の処理）について説明する。
【００４５】
画像入力部１２にカラー画像９が入力されると、補間演算手段８は各画素の画素値について以下の処理を施す。はじめにその画素値が、所定のブロックサイズを単位とするブロックに分割された色空間１において属するブロックのブロックＮｏを変換手段により求め、変換値テーブル４からそのブロックＮｏのデータを検索し、そのブロックの頂点（入力された画素値を取り囲む頂点）の変換値を読み込み記憶手段１４に記憶する。。
【００４６】
また、そのブロックのサイズが所定のサイズのブロックと異なるサイズのブロックである場合は、生成手段５によってそのブロックのサイズが所定のサイズと等しい仮想ブロックに置き換えたときの各頂点座標の変換値を求めて仮想変換値テーブル６に記録し、仮想変換値テーブル６からそのブロックのデータを検索し、そのブロックの頂点（入力された画素値を取り囲む頂点）の変換値を読み込む。
【００４７】
次にその画素値のブロックの中での位置を求め、記憶手段１４に予め記憶された係数テーブル７からその位置のデータを検索し、頂点の数と、スタート位置と、重み係数を読み込む。次に、頂点データ列のスタート位置によって示された頂点の座標の変換値（変換値テーブル４又は仮想変換値テーブル６から読み込んだもの）と、その頂点の重み係数（係数テーブル５から読み込んだもの）を乗じ、さらに頂点の数が２以上であれば頂点データ列のスタート位置の次の頂点の座標の変換値と、その頂点の重み係数を乗じ、頂点の数分だけ同じ処理を繰り返した後、全ての乗算結果を積算して、補間する画素値を求め、最後にカラー画像９の画素値を求めた画素値に置き換える。この処理を画素ごとに繰り返して、カラー画像９の変換画像を変換画像出力部１６に出力することにより変換画像１０を得る。
【００４８】
以上説明した実施の形態では、従来のダイレクトマッピング法の約１／３の処理時間で変換誤差のない画像変換を行うことができ、実用上の効果は極めて大きい。
【００４９】
なお、本実施の形態では色空間を立方体のブロックに分割したが、本発明はこれに限定されるものではなく、例えば三角柱、あるいは三角錐を１ブロックとしてもよい。
【００５０】
また、本実施の形態における上述した一連の画像変換の手順をコンピュータに実行させるプログラムとしてフロッピィーディスク、ハードディスク等の記録媒体に記録させ、コンピュータによって読取って画像変換を行うようにしてもよい。
【図面の簡単な説明】
【図１】本発明の画像変換方法の概要を示す図である。
【図２】本発明の画像変換装置の概要を示すブロック図である。
【図３】本発明の画像変換方法における仮想変換値生成の際の仮想変換ブロックを表す図である。
【図４】本発明の画像変換方法における仮想変換を必要とする色空間の位置を表す図である。
【符号の説明】
１    色空間
２    ブロック
３    変換手段
４    変換値テーブル
５    生成手段
６    仮想変換値テーブル
７    係数テーブル
８    補間演算手段
９    カラー画像
１４    記憶手段
【図１】
0003934802.tif 000007
【図２】
0003934802.tif 000008
【図３】
0003934802.tif 000009
【図４】
0003934802.tif 000010