(57)【要約】【課題】色空間変換のためのデータ変換を補間演算を利用して行う場合であっても、補間精度を劣化させることがなく、データ格納のためのメモリ容量を低減させる。【解決手段】入力色データに対応する出力色データを例えば４点補間により求めるデータ変換装置において、補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能な複数のメモリ空間を具備し、そのメモリ空間内に、補間演算に必要な基礎データを格納する。このとき、当該基礎データを、その成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けし、各グループ毎に、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納する。【選択図】図１６
2005149051.tif 000002
【特許請求の範囲】
【請求項１】
入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データ毎に、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定する単位格子体判定部と、
前記単位格子体判定部により判定された該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定する多面体判定部と、
前記多面体判定部により判定された該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定する補間演算処理部と、
前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能な複数のメモリ空間を具備し、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを格納するとともに、当該基礎データを所定の基準に従って複数のグループに分け、当該グループ毎に、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納するデータ格納部と、
前記データ格納部に格納されている前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを前記補間演算処理部が前記多面体内での補間演算を行う際に用いる基礎データとする基礎データ抽出部と、を備えるとともに、
前記複数のグループは、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けされている
ことを特徴とするデータ変換装置。
【請求項２】
入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データ毎に、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定し、該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定し、該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定するデータ変換方法であって、
前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用し、
ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを所定の基準に従って複数のグループに分け、当該グループ毎に、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納し、
前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを用いて、前記多面体内での補間演算を行うとともに、
前記複数のグループが、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けされている
ことを特徴とするデータ変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＲＧＢ色空間→ＣＭＹＫ色空間のように、ある色空間に属する入力画像データを他の色空間に属する出力画像データに変換するためのデータ変換装置およびデータ変換方法に関する。
【背景技術】
【０００２】
一般に、スキャナ等の画像入力装置およびプリンタ等の画像出力装置では、各々の機器に固有の色空間で規定された色信号（データ値）を使用している。例えば、スキャナではＲＧＢ空間で色が表現され、プリンタではＣＭＹＫ空間で色が表現されるといった具合である。このことから、スキャナで読み取った画像データをプリンタで印刷出力する場合には、ＲＧＢ色空間→ＣＭＹＫ色空間といった画像データに対する色空間変換処理を行う必要が生じる。
【０００３】
このような色空間変換処理は、多次元ＬＵＴ（Look Up Table ；ルックアップテーブル）を用いて行うことが知られている。多次元ＬＵＴを用いる場合には、通常、入力信号に対応する出力値を予め算出しておき、その値をテーブルとして保持しておくことで、入力値に対応した出力値を演算なしで得ることが可能となる。
ところが、例えばＲＧＢ色空間→ＣＭＹＫ色空間といった色空間変換処理については、これを多次元ＬＵＴだけを用いて行おうとすると、大容量のメモリが必要となる。具体的には、Ｒ，Ｇ，Ｂの各色がそれぞれ８ビット信号であり、出力であるＹ，Ｍ，Ｃ，Ｋの各色も８ビット信号であると、入力値の組合せは２8×２8×２8＝１６，７７７，２１６通りであり、Ｒ，Ｇ，Ｂの入力に対してＹ，Ｍ，Ｃ，Ｋのうちの１色に変換するのに１６メガバイト（Ｍｂｙｔｅ）のメモリが必要となる。よって、Ｙ，Ｍ，Ｃ，Ｋの４色に変換するためには、１６メガバイトの４倍の６４メガバイトものメモリが必要となる。つまり、入力２４ビット、出力８ビットに対応したＬＵＴが必要で、この場合、出力１色当たりのメモリ容量は１６Ｍ（メガ）バイトとなり、さらに、出力デバイスの色数分だけ上述のメモリが必要であるため、実際のメモリ容量は、４８〜６４Ｍバイトといった大容量となる。したがって、このメモリ容量はコスト的な観点でみた場合にシステムに対するインパクトが大きく、現実的ではない。
このことから、色変換処理において多次元ＬＵＴを用いる場合には、補間演算処理を併用することによってＬＵＴのメモリ容量を小さなものとすることが提案されている。これは、入力信号の上位複数ビット分にのみ対応した出力値をＬＵＴとして構成し、入力信号に該当する出力値が存在しない場合はその入力値が示す空間位置の近傍データを用いて補間処理を施し出力値を算出することで、ＬＵＴの容量を削減可能にするというものである。
【０００４】
ＬＵＴと補間処理とを組み合せた補間演算処理としては、例えば４点補間法（テトラ・ハイドラ補間；Tetra-Hydra 補間）が知られている（例えば、特許文献１，２，３参照）。テトラ・ハイドラ補間演算（四面体補間演算）とは、例えば、入力３要素のデータからなる格子体を構成し、入力３要素の上位ビットから何れの格子体に該当データが含まれるかを決定し、その中をさらに６つの四面体に分割し、入力３要素の下位ビットから何れの四面体に該当データが含まれるかを決定し、四面体頂点から得られる基礎データとその四面体毎に決められた乗数（補間係数）とを基に演算する、というものである。この場合、入力データが決まれば必要となる四面体が一意に決まることから、四面体を決めるためには、互いに交差しない２つの線分から得られる合計４頂点があればよい。
このようなテトラ・ハイドラ補間演算を用いれば、例えば、入力Ｒ，Ｇ，Ｂから任意の１色（出力色）への変換に際し、ＬＵＴへの格納データ数を１７データ×１７データ×１７データと規定した場合、ＬＵＴの容量は４.９キロバイトで実現可能となり、補間処理を用いない方式における１６メガバイトと比較すると大幅な容量削減が可能である。
また、テトラ・ハイドラ補間の他にも、補間演算処理としては、５点補間法を用いることや（例えば、特許文献１参照）、立方体補間法（８点補間法）を用いることも提案されている（例えば、特許文献２参照）。
【０００５】
このように、ＬＵＴと補間処理とを組み合せた補間演算処理は、ＬＵＴから読み出したデータ（格子点データ）を幾つ用いるか、また、どのような関係の格子点データを用いるかによって、幾つかの手法に分類できる。一般的に、格子点データを多く用いる手法では、補間精度は向上するが、補間回路の規模が大きくなる。比較的回路規模が小さな補間手法としてはテトラ・ハイドラ補間が、また回路規模が大きくなるが補間精度がよい補間方法としては８点補間法が、それぞれ知られている。何れの手法に依る場合であっても、３次元立方格子の各格子点データを用いて補間演算する際の格子点データの個数（補間演算所用データ数）は、元のＬＵＴの格子点で確定される単位立方体を内分する多面体に応じて定まる。例えば、立方格子を対象とする場合には、補間演算所用データ数は、最小で４個（テトラ・ハイドラ補間）、最大で８個（８点補間法）である。
【０００６】
【特許文献１】特開平８−１８１８７４号公報
【特許文献２】特公昭５８−１６１８０号公報点
【特許文献３】特開昭５６−１４２３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来における色空間変換処理、すなわちＬＵＴと補間処理とを組み合せた補間演算処理においては、以下に述べるような難点がある。
例えば、特許文献１に記載の色空間変換処理では、１つの画素に対する色空間変換の処理時間として割り当てられている時間が非常に短時間である場合、ＬＵＴとして用いられるメモリから複数のデータを複数回読み出すことが不可能であるため、同容量のメモリを補間演算所用データ数の分だけ使用しなければならない。
テトラ・ハイドラ補間の場合においては、ＲＧＢからＹＭＣＫへの変換を想定すると、Ｙへの変換に４つの格子点抽出用として４個、同様にＭへの変換用に４個、Ｃへの変換用に４個、Ｋへの変換用に４個、合計１６個の同容量のメモリが必要となる。したがって、ＬＵＴへの格納データ数を上述のように１７データ×１７データ×１７データと規定した場合には、全メモリ容量が７８.６キロバイトとなる。また、補間精度を重視し、８点補間を想定した場合には、３２個もメモリが必要となり、全メモリ容量が１５７．２キロバイトにもなってしまう。
一方、メモリ容量の増大もさることながら、ある単位時間に多大な数のメモリに同時アクセスするということは、消費電力の増大や放射ノイズの増大をも招くおそれがある。
【０００８】
そこで、本発明は、色空間変換のためのデータ変換を補間演算を利用して行う場合であっても、補間精度を劣化させることがなく、しかもデータ格納のためのメモリ容量、あるいは消費電力や放射ノイズを低減することも可能となるデータ変換装置およびデータ変換方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、上記目的を達成するために案出されたデータ変換装置である。すなわち、入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データ毎に、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定する単位格子体判定部と、前記単位格子体判定部により判定された該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定する多面体判定部と、前記多面体判定部により判定された該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定する補間演算処理部と、前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能な複数のメモリ空間を具備し、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを格納するとともに、当該基礎データを所定の基準に従って複数のグループに分け、当該グループ毎に、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納するデータ格納部と、前記データ格納部に格納されている前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを前記補間演算処理部が前記多面体内での補間演算を行う際に用いる基礎データとする基礎データ抽出部と、を備えるとともに、前記複数のグループは、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けされていることを特徴とするものである。
【００１０】
また、本発明は、上記目的を達成するために案出されたデータ変換方法である。すなわち、入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データ毎に、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定し、該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定し、該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定するデータ変換方法であって、前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用し、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを所定の基準に従って複数のグループに分け、当該グループ毎に、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納し、前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを用いて、前記多面体内での補間演算を行うとともに、前記複数のグループが、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けされていることを特徴とする。
【００１１】
上記構成のデータ変換装置および上記手順のデータ変換方法によれば、多面体内での補間演算により入力された画素データに対応する出力用の画素データを決定する際に、多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用する。ここで、「補間演算所用データ数」とは、補間演算に必要となる基礎データの数のことをいい、例えば４点補間法（テトラ・ハイドラ補間）の場合であれば４個、８点補間法の場合であれば８個となる。「基礎データ」は、補間演算に必要となるデータであって、元のＬＵＴの格子点データそのものであってもよいし、これに限らず元のＬＵＴの格子点データに対応する所定のデータであってもよい。また、「独立に制御可能なメモリ空間」とは、データ格納部から補間演算に必要となる基礎データを読み出す際に、少なくも、各メモリ空間に対して読出アドレスを独立に設定可能であることを意味する。読出クロックも独立に設定可能であるとより好ましい。また、各メモリ空間の出力を独立にハイインピーダンス状態に設定可能なものであれば一層好ましい。
そして、それぞれのメモリ空間には、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた格子点データに対応する基礎データを所定の基準に従って複数のグループに分け、グループ毎に、このグループ内の複数の基礎データを複数のメモリ空間の対応するものに格納しておく。つまり、各メモリ空間毎に、基礎データを所定の基準に従ってグループ分けし、各グループ内の個々の基礎データに対して共通のアドレスを割り当てて、各々のメモリセルに格納しておく。ここで、「ｋ」は入力色データにおける色数であり、例えば「ｋ色」が３色であれば、入力色空間における「ｋ次元」は３次元となる。
ただし、このとき、基礎データのグループ分けに際しては、各グループが、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するように、そのグループ分けが行われる。したがって、ｋ次元格子空間の各格子点に対応づけられた格子点データに対応する基礎データの全てをメモリ空間内に格納しておかなくても、少なくとも二つの平面について基礎データをメモリ空間内に格納しておけば、各格子点に対応づけられた格子点データを特定することが可能となる。つまり、同容量の独立に制御可能なメモリ空間を補間演算所用データ数だけ備える必要がなく、補間演算に必要となる格子点データ数とメモリ空間の数を同じにする必要もない。
そして、実際の補間演算に際しては、グループに対応付けられた複数の基礎データの中から、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを用いて多面体内での補間演算を行うようになる。
【発明の効果】
【００１２】
本発明のデータ変換装置およびデータ変換方法によれば、複数のメモリ空間に対応する基礎データの各グループが、当該グループに属する基礎データの成長方向の違いによりそれぞれが独立な平面を構成するようにグループ分けされているので、二つの平面について基礎データをメモリ空間内に格納しておけば、各格子点に対応づけられた格子点データを特定することが可能となり、同容量の独立に制御可能なメモリ空間を補間演算所用データ数だけ備える必要がなく、補間演算に必要となる格子点データ数とメモリ空間の数を同じにする必要もない。したがって、例えば、４点補間の場合は、格子点データ保持用のメモリを４倍未満（例えば２倍）持つだけで済み、同じ機能を達成するために必要なメモリの総容量や独立制御可能なメモリ空間数を低減することができる。例えば、従来は１つの補間演算用データを抽出するために１７×１７×１７個、すなわち４，１９３バイト必要であり、４点補間の場合は同時に４格子点のデータを抽出するためにその４倍、すなわち４９１３バイト×４個＝１９，６５２バイトを必要としたのに対して、本発明によれば、その４分の２の容量のメモリで同時に４格子点のデータを抽出することが可能となる。
加えて、同時アクセスのメモリ空間数を低減することができるので、消費電力や放射ノイズを低減することもできる。
【発明を実施するための最良の形態】
【００１３】
以下、図面に基づき本発明に係るデータ変換装置およびデータ変換方法について説明する。
【００１４】
〔第１の実施の形態〕
先ず、本発明の第１実施形態について説明する。ここでは、Ｒ，Ｇ，Ｂ各８ビットの入力デジタル色分解信号が入力され、それを出力系の色成分Ｙ，Ｍ，Ｃ，Ｋの各８ビットのデータに色変換するデータ変換装置およびデータ変換方法を例に挙げて説明する。ただし、この入力データや出力データの形式は一例に過ぎず、他の色系列であってもよいし、ビット数も“８”に限らないことは言うまでもない。
【００１５】
図１は、本発明に係るデータ変換装置の第１実施形態を示すブロック図である。
図例のように、本実施形態で説明するデータ変換装置１は、データ格納部２と、演算処理部４と、アドレスバス６と、データバス８と、を備えて構成されている。
【００１６】
データ格納部２は、基礎データを出力色毎に格納するものである。基礎データとは、入力データＲ，Ｇ，Ｂに対応する色変換後の出力データＹ，Ｍ，Ｃ，Ｋを補間演算により求める際に使用されるもので、例えばテトラ・ハイドラ法による補間演算を行う場合であれば、元となる３次元ＬＵＴの格子点データそのものがこれに該当する。
また、データ格納部２は、入力データＲ，Ｇ，Ｂに対応するように、ＲＧ平面メモリ回路２ＲＧおよびＲＢ平面メモリ回路２ＲＢの２つのメモリ空間に分けられている。そして、詳細を後述するように、各平面メモリ回路２ＲＧ，２ＲＢ、すなわち独立に制御可能な２つのメモリ空間のそれぞれには、３色の入力色信号要素で規定される３次元格子空間（３次元ＬＵＴ）の各格子点に対応づけられた格子点データに対応する基礎データが、入力色の各軸毎に所定の基準に従ってグループ化され、そのグループ内の複数の基礎データが１つのアドレス対応付けられて格納され、各軸用のルックアップテーブルＬＵＴを構成するようになっている。
【００１７】
これらメモリ回路２ＲＧ，２ＲＢは、１つの画素に対する色空間変換の処理時間として割り当てられている時間が非常に短時間である場合にも対応可能なように、それぞれ独立にアドレス設定可能かつ読出可能に、つまり独立に読出アクセス可能に構成されている。なお、独立したリードイネーブル（Read Enable）端子ＲＥもしくはチップセレクト（Chip Select）端子ＣＳを備え、読出しに必要のないメモリ回路の出力をハイインピーダンス状態に設定可能なものを使用するのがよい。
【００１８】
演算処理部４は、データ格納部２との間でデータのやり取りをしながら、出力色毎に、入力画素データに対応する出力画素データを補間演算により求めるものである。そのために、演算処理部４は、信号処理系統として、出力系の色成分Ｙ，Ｍ，Ｃ，Ｋのそれぞれに対応するように、Ｙ信号生成部４Ｙ、Ｍ信号生成部４Ｍ、Ｃ信号生成部４Ｃ、Ｋ信号生成部４Ｋを含む。この演算処理部４は、例えば中央演算処理装置（ＣＰＵ；Central Processing Unit）やＤＳＰ（Digital Signal Processor）で構成するとよい。
【００１９】
アドレスバス６は、データ格納部２と演算処理部４との間を接続するもので、演算処理部４がデータ格納部２から基礎データを読み出すためにアドレス信号などの制御信号を当該データ格納部２へ送るためのものである。具体的には、データ格納部２内の個々のメモリ空間（メモリ回路２ＲＧ，２ＲＢ）における基礎データの読出位置を設定するアドレス信号、クロック、あるいはチップセレクト信号などの伝送が行われる。
【００２０】
データバス８も、データ格納部２と演算処理部４との間を接続するものである。ただし、データバス８は、データ格納部２から読み出された基礎データを演算処理部４へ送るようになっている。さらに、データバス８は、データ変換前の入力データを図示しない外部装置から入力するためや、変換後の出力データを同一または別の外部装置へ出力するためにも用いられる。
【００２１】
続いて、以上のように構成されたるデータ変換装置１における処理動作例、すなわち本発明に係るデータ変換方法について説明する。
図２は、本発明に係るデータ変換方法の第１実施形態の概要を示すフローチャートである。
【００２２】
色データの変換にあたって、演算処理部４は、データ格納部２に格納されている色変換用のＬＵＴ（ルックアップテーブル）の格子点データを用いて、外部機器から入力されたＲ，Ｇ，Ｂの各信号を、Ｙ，Ｍ，Ｃ，Ｋの色データに色変換する際に、テトラ・ハイドラ法（四面体補間法）を用いた補間処理を利用する。
そのため、画像データＲ，Ｇ，Ｂが入力されると、演算処理部４は、先ず、入力された８ビットのＲ，Ｇ，Ｂデジタル色分解信号を、画素毎に、上位ｍビット（最上位ビット側から連続したｍ個）と下位ｎビット（最下位ビット側から連続したｎ個）に分割する（ステップ１００、以下ステップを「Ｓ」と略す）。そして、演算処理部４は、入力３要素の上位ｍビットのデータＲＨ，ＧＨ，ＢＨに基づいて、入力３要素のＲ，Ｇ，Ｂデータからなる３次元格子体（３次元ＬＵＴ）を構成したとき、各格子点で規定される多数の単位格子体（本例では単位立方体）のうちの何れの単位立方体に該当データが含まれるかを決定する（Ｓ１０２）。このステップＳ１００〜Ｓ１０２の処理を、以下「単位立方体判定処理」という。
【００２３】
単位立方体判定処理が終了すると、次いで、演算処理部４は、該当する単位立方体の中をさらに６つの四面体に分割し（Ｓ１０４）、入力３要素の下位ｎビットのデータＲＬ，ＧＬ，ＢＬに基づいて何れの四面体に該当データが含まれるかを決定する（Ｓ１０６）。このステップＳ１０４〜Ｓ１０６の処理を、以下「４面体判定処理」という。
【００２４】
４面体判定処理が終了すると、次いで、演算処理部４は、該当する四面体内での補間演算というテトラ・ハイドラ法（四面体補間法）により、入力値（入力された画素データ）に対応する出力値（出力すべき画素データ）を求める（Ｓ１０８）。
具体的には、演算処理部４では、先ず、２つのメモリ回路２ＲＧ，２ＲＢのうち、テトラ・ハイドラ法による補間演算処理に必要となる４格子点の基礎データを抽出すべき２つのメモリ平面を特定するアクセスメモリ特定処理を行う（Ｓ１０８ａ）。次に、演算処理部４は、入力点を包含する基点の座標値に基づいて、アクセスメモリ平面特定処理にて特定された同一アドレスのデータ群における補間演算に必要な４格子点を特定し抽出する４格子点特定処理を行う（Ｓ１０８ｂ）。なお、アクセスメモリ特定処理（Ｓ１０８ａ）と４格子点特定処理（Ｓ１０８ｂ）とを纏めて、アクセスアドレス特定処理ともいう。
また、演算処理部４は、アクセスメモリ特定処理（Ｓ１０８ａ）および４格子点特定処理（Ｓ１０８ｂ）と並行して、該当する四面体について、四面体頂点から得られる４つの基礎データ（本例では元の格子点データそのもの）に対する重み係数（乗算係数）である補間係数を算出する補間係数算出処理を行う（Ｓ１０８ｃ）。そして、演算処理部４は、該当する四面体について、４格子点特定処理（Ｓ１０８ｂ）により得られた基礎データ（格子点データ）と補間係数算出処理（Ｓ１０８ｃ）により得られた補間係数とに基づいて、入力値に対応する出力値Ｄｏｕｔを求める補間演算処理を行う（Ｓ１０８ｄ）。
【００２５】
演算処理部４は、上記の一連の処理を、出力色であるＹ，Ｍ，Ｃ，Ｋのそれぞれについて（Ｓ１１２）、全画素について（Ｓ１００）行うことで、入力されたＲＧＢ色空間の色データをＹＭＣＫ色空間のデータに変換する。
【００２６】
ここで、以上のような一連の処理において必要となるＬＵＴについて、さらに詳しく説明する。
図３および図４は、出力値の代表値である格子点データを構成するＬＵＴを説明する図である。ここでは、Ｒ，Ｇ，Ｂの各軸について、１７×１７×１７＝４９１３個の格子点について、それぞれ対応する変換後のデータを代表値として格納した３次元ＬＵＴを元の格子点データとする場合を例に挙げて説明する。本実施形態のデータ格納部２は、入力された色信号Ｒ，Ｇ，Ｂに対応する同容量の２つのメモリ空間に、同じ格子点データを持つ。このため、図１に示したように、２つのメモリ回路２ＲＧ，２ＲＢが設けられている。
図３，４の各（Ａ）は、ＲＧＢ３次元空間の一部を記したものである。また、図３，４の各（Ｂ）は、メモリ回路２ＲＧ，２ＲＢのメモリ空間上におけるアドレスと基礎データの関係、すなわち各軸のＬＵＴを示す。なお、図３，４の各（Ｂ）における表の下部に示した「２次元アドレスの場合のアドレス」の使用方法については、第３実施形態（図１８参照）や具体的回路構成の第２例（図２０参照）や第３例（図２１参照）で説明する。
【００２７】
従来技術では、図中の丸で示す格子点位置それぞれについて出力値の代表値がＬＵＴとして格納されており、その個々の格子点位置が格子点データを格納するメモリ上のアドレスとなっていた。つまり、前述したように４９１３個のアドレスが定義されていた。
一方、本実施形態では、１つのアドレスに複数の基礎データ（本例では格子点データそのもの）を対応付けてグループ単位で格納（マッピング）する。つまり、任意のアドレスが設定されると、そのアドレスに対応付けて登録されているグループ内の複数の基礎データを纏めてパッキングデータとして出力するようにする。ここで、「複数の基礎データを纏めてパッキングデータとして出力する」とは、複数の基礎データをほぼ同時に並列的に出力することに限らず、その複数の基礎データを時系列的に逐次出力することも含む。どのような形態で複数の基礎データを出力するかは、各軸用のメモリ回路２ＲＧ，２ＲＢの構成や読出回路の構成による。
【００２８】
例えば、図３（Ａ）に示すように、Ｒ軸方向の基礎データを軸に平行に沿って複数のグループに分けて（一塊りにして）、さらにＧ軸方向の基礎データを軸に平行に沿って複数のグループに分けることで、ＲＧ平面メモリ回路２ＲＧに格納してＲＧ平面用のＬＵＴを構成する。図中の太線は基礎データがグループに分けられている（一塊りになっている）ことを示している。つまり、任意のＧＨ，ＢＨの組合せで基礎データ（本例では格子点データそのもの）がアドレスされ、１つのアドレスには１７×１７＝２８９格子分の基礎データを保持していることになる。ＲＧ平面メモリ回路２ＲＧ上におけるアドレスと基礎データの関係であるＲＧ平面ＬＵＴを図３（Ｂ）に示す。
【００２９】
同様に、図４（Ａ）に示すように、Ｇ軸メモリ回路２ＧにはＧ軸方向の基礎データを軸に平行に沿って複数のグループに分けて（一塊りにして）、さらにＢ軸方向の基礎データを軸に平行に沿って複数のグループに分けることで、ＲＢ平面メモリ回路２ＲＢに格納してＲＢ平面用のＬＵＴを構成する。図中の太線は基礎データがグループに分けられている（一塊りになっている）ことを示している。ここでは任意のＧＨ，ＢＨの組合せで基礎データ（本例では格子点データそのもの）がアドレスされ、１つのアドレスには１７×１７＝２８９格子点分の基礎データを保持している。ＲＢ平面メモリ回路２ＲＢ上におけるアドレスと基礎データの関係であるＲＢ平面ＬＵＴを図４（Ｂ）に示す。
【００３０】
演算処理部４における補間処理の際には、メモリ回路２ＲＧ，２ＲＢ内に纏めて保持されている上述のようなデータ列の中から、入力データに適合する２つの基礎データを読み出す。この方式を用いると、入力データＲ，Ｇ，Ｂからある１色への変換に際し、ＬＵＴの容量は４.９キロバイトで実現可能となり、補間処理を用いない方式における１６メガバイトと比較すると大幅な容量削減が可能であるというテトラ・ハイドラ法の利点を享受できるとともに、使用するメモリ数（メモリ空間数）や同時に読出アクセスするメモリ数を従来構成のものよりも削減することが可能となる。
【００３１】
次に、図２に示した一連の処理における単位立方体判定処理（Ｓ１００〜Ｓ１０２）について、さらに詳しく説明する。
図５は、演算処理部４による単位立方体判定処理を説明する図であって、出力値の代表値である格子点データを構成する元の３次元ＬＵＴと入力データとの関係を説明する図である。ここで図５（Ａ）は、ＬＵＴの３次元空間での概念図を示し、図５（Ｂ）は、各８ビットのＲＧＢ入力信号とそれぞれの信号の上位４ビット信号が対応する３次元ＬＵＴ上での位置関係を示す。
【００３２】
図５（Ａ）に示すように、Ｒ，Ｇ，Ｂの各軸における取り得る値の範囲を複数に分割する。ここでは各軸を１６に分割した例を示している。このような分割によって得られる格子点をアドレスとし、その格子点における変換後の値（代表値）を対応付けることによってＬＵＴを構成する。したがって、この例では、１７×１７×１７＝４９１３個の格子点について、それぞれ対応する変換後のデータを代表値として格納した３次元ＬＵＴを作成することができる。
【００３３】
演算処理部４は、入力された８ビットのＲ，Ｇ，Ｂデジタル色分解信号を上位ｍビット（最上位ビット側から連続したｍ個）と下位ｎビット（最下位ビット側から連続したｎ個）に分割する。例えば、演算処理部４は、ｍ＝ｎ＝４とし、入力されたＲ，Ｇ，Ｂを、それぞれ上位４ビットのＲＨ，ＧＨ，ＢＨと下位４ビットのＲＬ，ＧＬ，ＢＬに分割する。もちろん、ｍ，ｎは、これ以外であってもかまわない。なお、“ｍ＋ｎ”は、入力データのビット数８と等しいことが好ましい。
【００３４】
図５（Ｂ）に示すように、上位４ビットデータの組合せ値で形成される単位立方体の中に、任意の入力Ｒ，Ｇ，Ｂの８ビットデータ（入力画素データ）の組合せ値の空間位置Ｐ２２が包含されるので、上位の４ビットデータＲＨ，ＧＨ，ＢＨで示す空間位置Ｐ２１を基点とした単位立方体（単位格子体）で入力８ビットデータを包含する単位立方体を特定することが可能となる。
【００３５】
単位立方体を構成する各頂点は、空間位置Ｐ２１を基準に生成可能である。すなわち、（ＲＨ，ＧＨ，ＢＨ）を基点として、（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ＋１，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）が、この単位立方体の頂点の座標となる。本実施形態の場合には、これらの頂点の座標は、元ととなる３次元ＬＵＴの格子点の座標に一致する。
【００３６】
演算処理部４は、この入力Ｒ，Ｇ，Ｂの８ビットデータの組合せ値に対応する出力値を、近傍の格子点データを、つまり、図５（Ｂ）に示す単位立方体の頂点の座標のデータを基礎データとして使って、テトラ・ハイドラ法（四面体補間法）により求める。
【００３７】
次に、図２に示した一連の処理における４面体判定処理（Ｓ１０４〜Ｓ１０６）について、さらに詳しく説明する。
図６は、演算処理部４による４面体判定処理を説明する図である。先にも述べたように、本実施形態の演算処理部４は、入力デジタル色分解信号Ｒ，Ｇ，Ｂの組合せ値に対応する出力信号ＹＭＣＫのそれぞれを、データ格納部２に格納されている基礎データ（格子点データ）に基づいてテトラ・ハイドラ法による補間演算により求める。図６では、入力データが包含される単位立方体と、この単位立方体を６つに分割して得られる四面体との関係を示している。図５（Ｂ）に示した単位立方体は、さらに図６に示すように、同体積の６つの単位四面体に分割可能である。
【００３８】
入力Ｒ，Ｇ，Ｂの空間位置Ｐ２２がどの四面体に包含されるかは、下位のビットデータＲＬ，ＧＬ，ＢＬの大小関係から、図６下部に示す表１のように特定可能である。また、データ選択部１６がアクセスすべきＬＵＴとアクセスアドレスも、表１のように特定可能である。
なお、表１において、Ｘ，Ｙ，Ｚは３次元の入力データを一般化して示したものであり、本実施形態では、Ｘ＝Ｒ，Ｙ＝Ｇ，Ｚ＝Ｂである。基点Ａ，Ｂに示す“１７”は３次元ＬＵＴの各軸を分割して得られる格子点数である。この表１は、入力ＲＧＢが各８ビットであり、出力がＹＭＣＫであり、１色当りその上位４ビット分に相当する１７×１７×１７＝４９１３個のデータでＬＵＴを構成する場合のアクセスアドレス算出式を記したものである。
【００３９】
例えば、下位ビットデータＲＬ，ＧＬ，ＢＬがＲＬ≧ＧＬ≧ＢＬの関係であるとき、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体１に属する。ＲＬ＞ＢＬ＞ＧＬの関係であるとき、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体２に属する。ＢＬ≧ＲＬ＞ＧＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体３に属する。
【００４０】
同様に、ＢＬ＞ＧＬ≧ＲＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ＋１，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体４に属する。ＧＬ≧ＢＬ＞ＲＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体５に属する。ＧＬ＞ＲＬ≧ＢＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした四面体６に属する。
【００４１】
演算処理部４は、このような判定（４面体判定）を行うことにより、入力Ｒ，Ｇ，Ｂの３次元ＬＵＴ上における近傍４格子点を特定する。すなわち、先ず、下位ビットデータＲＬ，ＧＬ，ＢＬに基づいて入力データの属する四面体を特定する。この結果を受けて、特定された四面体に対応する２つの平面を特定し、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨと図６の表１に示したアドレス計算式に従って前記２つの平面へのアクセスアドレスを算出する。そして、演算処理部４は、前記２つの平面の前記求めたアクセスアドレスから各々４つの基礎データの中から４面体判定により基礎データを選択することにより、近傍４格子点の基礎データを取得する。なお、接している２平面でＬＵＴを構成した場合には、接する２点は双方のＬＵＴから読み込まれてしまうため、最初から片方のＬＵＴからは２つの基礎データのみしか読み込まない構成を採れば、近傍４格子点の基礎データの選択部分の規模を少なくすることができる。
【００４２】
次に、図２に示した一連の処理における出力値算出処理（Ｓ１０８）の第１段階の処理であるアクセスメモリ特定処理（Ｓ１０８ａ）と４格子点特定処理（Ｓ１０８ｂ）とについて、さらに詳しく説明する。
図７は、演算処理部４によるアクセスメモリ特定処理と４格子点特定処理とを説明する図であって、単位立方体を分割して得られる各四面体の形状と、それを構成する頂点の関係を示した図である。
【００４３】
図中における四面体１は、Ｄ１、Ｄ２、Ｄ３、Ｄ４の頂点から構成される。ここで、Ｄ１とＤ２は、ＧおよびＢ座標上では同じ空間位置であり、図３に示したＲＧ平面ＬＵＴから一括で抽出することが可能である。一方、残りのＤ３およびＤ４はＲおよびＧ座標上では同じ空間位置であり、図４に示したＲＢ平面ＬＵＴでは、α、α’に対し＋１７の固定の差をつけた空間位置がβ、β’であることから、一括で抽出することが可能である。
同様にして、四面体２〜６についても、図３に示したＲＧ平面ＬＵＴおよび図４に示したＲＢ平面ＬＵＴから所望の基礎データが得られる。
【００４４】
そこで、演算処理部４は、４面体判定処理の判定結果を受けて、図６の表１に示した選択条件に従って、２つのメモリ回路２ＲＧ，２ＲＢの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを抽出すべき２つのメモリ（つまり４格子点を含むデータ群を格納した２つのＬＵＴ）を特定するアクセスメモリ特定処理を行う。
【００４５】
具体的には、演算処理部４は、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨつまり図５（Ｂ）の基点Ｐ２１の座標値と図６の表１に示したアクセスアドレス式とに従って前記２つのＬＵＴへのアクセスアドレスを算出することでテトラ・ハイドラ法による補間演算に必要となる４格子点を含むデータ群を特定する。この後、演算処理部４は、入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）に基づいて、同一アドレスのデータ群における、テトラ・ハイドラ法による補間演算に必要となる４格子点を特定し抽出する４格子点特定処理を行う。
【００４６】
図８〜図１４は、具体的なＬＵＴアクセスの例を説明する図である。ここで、図８は、入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。図９〜図１４は、それぞれ対応する四面体の頂点とＬＵＴのデータ構造の相関を示した図である。
【００４７】
図８において、格子点の数をＲ，Ｇ，Ｂそれぞれに３個、合計で３×３×３＝２７個のデータに簡略化して示す。任意の各々８ビットのＲＧＢ値（入力データ）が示す３次元空間上での位置が図８の位置Ｐ１２１であるとする。この場合、入力値の上位４ビット値から入力点が包含される立方体の１つの頂点は図８の位置Ｐ１２２に定まる。座標値は、（ＲＨ，ＧＨ，ＢＨ）＝（０，１，０）であり、この位置Ｐ１２２を基点座標と定義する。
【００４８】
以下、この入力点が単位立方体中の６つの四面体それぞれに属す場合に分けてＬＵＴアクセスを説明する。図示した例では、入力位置Ｐ１２１は、３次元ＬＵＴのデータ群のうち、基点Ｐ１２２（０，１，０）で定まる“３，４，６，７，１２，１３，１５，１６”のデータの座標位置で囲まれた単位立方体の中に包含される。
演算処理部４は、上位４ビットデータの組合せ値の空間位置Ｐ２１を基点にして該当する単位立方体の各頂点の基礎データ（格子点データ）の中から、処理対象画素に対応する４個の基礎データを抽出する。
【００４９】
例えば、入力点が図９に示す頂点で構成される四面体１に属すると判定された場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）にアクセスしてα1とα1’とα２とα２’、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）にアクセスして、β１とβ１’とβ２とβ２’を抽出する。接合面は同じ値が抽出される。
【００５０】
具体的には、演算処理部４は、図６の表１の基点Ａに基づき、ＲＧ平面ＬＵＴへのアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ）に基づいて算出する。ここではアクセスアドレスＡＤＲＧは“１”であり、そのアドレス１のデータ群を抽出する。そして、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＲ軸成分は“０”なので、データ群中の０番目（３）と１番目（４）が所望の基礎データであると決定する。ここでは、図９における表の下部に示した「２次元アドレスの場合のアドレス」で示す０番目（３）の基礎データをα１、１番目（４）の基礎データをα１’とする。
【００５１】
また、ＲＧ平面上では、α１とα１’、α２とα２’は、常にアドレス差分が一定である。このことから、演算処理部４は、上述のようにα１とα１’についてのアクセスアドレスＡＤＲＧを特定すると、そのアドレスを基にα２とα２’についてのアクセスアドレスＡＤＲＧを算出する。ここではアクセスアドレスＡＤＲＧは“２”であり、そのアドレス２のデータ群を抽出する。そして、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＲ軸成分は“０”なので、データ群中の０番目（６）と１番目（７）が所望の基礎データであると決定する。ここでは、図９における表の下部に示した「２次元アドレスの場合のアドレス」で示す０番目（６）の基礎データをα２、１番目（７）の基礎データをα２’とする。
【００５２】
同様に、演算処理部４は、図６の表１に基づき、ＲＢ平面ＬＵＴへのアクセスアドレスＡＤＲＢを（ＲＨ，ＧＨ＋３，ＢＨ）に基づいて算出する。ここではアクセスアドレスＡＤＲＢは“６”であり、そのアドレス６のデータ群を抽出する。そして、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＲ軸成分は“０”なので、データ群中の０番目（６）と１番目（７）が所望の基礎データであると決定する。ここでは、０番目（６）の基礎データをβ１、１番目（７）の基礎データをβ１’とする。
【００５３】
また、ＲＢ平面上では、β１とβ１’、β２とβ２’は、常にアドレス差分が一定である。このことから、演算処理部４は、上述のようにβ１とβ１’についてのアクセスアドレスＡＤＲＢを特定すると、そのアドレスを基にβ２とβ２’についてのアクセスアドレスＡＤＲＢを算出する。ここではアクセスアドレスＡＤＲＢは“７”であり、そのアドレス７のデータ群を抽出する。そして、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＲ軸成分は“０”なので、データ群中の０番目（１５）と１番目（１６）が所望の基礎データであると決定する。ここでは、図９における表の下部に示した「２次元アドレスの場合のアドレス」で示す０番目（１５）の基礎データをβ２、１番目（１６）の基礎データをβ２’とする。
【００５４】
こうすることで、演算処理部４は、α1とα1’とα２とα２’と、β１とβ１’とβ２とβ２’を特定することができるので、これらを基に四面体１を構成する４点のデータ、すなわち四面体補間演算に必要となる所望の４点のデータを抽出することができる。演算処理部４は、四面体１の場合であれば、４点のデータを、それぞれＤ１＝α１，Ｄ２＝α１’，Ｄ３＝β１’あるいはα２’，Ｄ４＝β２’とする。
【００５５】
なお、他の四面体に属する場合も、演算処理部４は、図６の表１に基づいてアクセスアドレスＡＤＲＧ，ＡＤＧＢを計算して、計算したそれぞれ２つのＬＵＴにアクセスしてデータ群を抽出し、この抽出したデータ群の中から、基点座標に準じた所望の２つの基礎データを２つのＬＵＴ毎に抽出する。
【００５６】
例えば、図１０に示すように、入力点が四面体２に属する場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）のアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ＋３）に基づいて“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをα１、１番目（１３）の基礎データをα１’として抽出する。さらには、α１とα１’、α２とα２’は、常にアドレス差分が一定であることから、α２とα２’についてのアクセスアドレスＡＤＲＧを“５”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをα２、１番目（１３）の基礎データをα２’とする。
同様に、演算処理部４は、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）のアクセスアドレスＡＤＲＢ（ＲＨ，ＧＨ，ＢＨ）に基づいて“３”と算出し、基点座標Ｐ１２２（０，１，０）に対応する１番目（３）の基礎データをβ１、２番目（４）の基礎データをβ１’とする。さらには、β１とβ１’、β２とβ２’は、常にアドレス差分が一定であるから、β２とβ２’についてのアクセスアドレスＡＤＲＢを“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをβ２、１番目（１３）の基礎データをβ２’とする。
【００５７】
図１１に示すように、入力点が四面体３に属する場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）のアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ＋３）に基づいて“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをα1、１番目（１３）の基礎データをα１’として抽出する。さらには、α１とα１’、α２とα２’は、常にアドレス差分が一定であることから、α２とα２’についてのアクセスアドレスＡＤＲＧを“５”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをα２、１番目（１６）の基礎データをα２’とする。
同様に、演算処理部４は、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）のアクセスアドレスＡＤＲＢ（ＲＨ，ＧＨ，ＢＨ）に基づいて“３”と算出し、基点座標Ｐ１２２（０，１，０）に対応する１番目（３）の基礎データをβ１、２番目（４）の基礎データをβ１’とする。さらには、β１とβ１’、β２とβ２’は、常にアドレス差分が一定であるから、β２とβ２’についてのアクセスアドレスＡＤＲＢを“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをβ２、１番目（１３）の基礎データをβ２’とする。
【００５８】
図１２に示すように、入力点が四面体４に属する場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）のアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ＋３）に基づいて“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをα１、１番目（１３）の基礎データをα１’として抽出する。さらには、α１とα１’、α２とα２’は、常にアドレス差分が一定であることから、α２とα２’についてのアクセスアドレスＡＤＲＧを“５”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをα２、１番目（１６）の基礎データをα２’とする。
同様に、演算処理部４は、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）のアクセスアドレスＡＤＲＢ（ＲＨ，ＧＨ，ＢＨ）に基づいて“３”と算出し、基点座標Ｐ１２２（０，１，０）に対応する１番目（３）の基礎データをβ１、２番目（４）の基礎データをβ１’とする。さらには、β１とβ１’、β２とβ２’は、常にアドレス差分が一定であるから、β２とβ２’についてのアクセスアドレスＡＤＲＢを“４”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１２）の基礎データをβ２、１番目（１３）の基礎データをβ２’とする。
【００５９】
図１３に示すように、入力点が四面体５に属する場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）のアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ）に基づいて“１”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（３）の基礎データをα１、１番目（４）の基礎データをα１’として抽出する。さらには、α１とα１’、α２とα２’は、常にアドレス差分が一定であることから、α２とα２’についてのアクセスアドレスＡＤＲＧを“２”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（６）の基礎データをα２、１番目（７）の基礎データをα２’とする。
同様に、演算処理部４は、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）のアクセスアドレスＡＤＲＢ（ＲＨ，ＧＨ＋３，ＢＨ）に基づいて“６”と算出し、基点座標Ｐ１２２（０，１，０）に対応する１番目（６）の基礎データをβ１、２番目（７）の基礎データをβ１’とする。さらには、β１とβ１’、β２とβ２’は、常にアドレス差分が一定であるから、β２とβ２’についてのアクセスアドレスＡＤＲＢを“７”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをβ２、１番目（１６）の基礎データをβ２’とする。
【００６０】
図１４に示すように、入力点が四面体６に属する場合は、演算処理部４は、ＲＧ平面ＬＵＴ（ＲＧ平面メモリ回路２ＲＧ）のアクセスアドレスＡＤＲＧを（ＲＨ，ＧＨ，ＢＨ）に基づいて“１”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（３）の基礎データをα１、１番目（４）の基礎データをα１’として抽出する。さらには、α１とα１’、α２とα２’は、常にアドレス差分が一定であることから、α２とα２’についてのアクセスアドレスＡＤＲＧを“２”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（６）の基礎データをα２、１番目（７）の基礎データをα２’とする。
同様に、演算処理部４は、ＲＢ平面ＬＵＴ（ＲＢ平面メモリ回路２ＲＢ）のアクセスアドレスＡＤＲＢ（ＲＨ，ＧＨ＋３，ＢＨ）に基づいて“６”と算出し、基点座標Ｐ１２２（０，１，０）に対応する１番目（６）の基礎データをβ１、２番目（７）の基礎データをβ１’とする。さらには、β１とβ１’、β２とβ２’は、常にアドレス差分が一定であるから、β２とβ２’についてのアクセスアドレスＡＤＲＢを“７”と算出し、基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをβ２、１番目（１６）の基礎データをβ２’とする。
【００６１】
図１５に示す表２は、演算処理部４における出力値算出処理（図２のステップＳ１０８）の第２段階の処理である補間係数算出処理（Ｓ１０２ｃ）と補間演算処理（Ｓ１０２ｄ）を説明する図である。この表２は、テトラ・ハイドラ法による補間演算にて必要となる補間係数の算出式を示している。表２から分かるように、６つの四面体毎に計算式が異なる。
【００６２】
演算処理部４は、４面体判定処理（図２のステップＳ１０４〜Ｓ１０６）の結果を受けて、図１５の表２に基づき、入力値が包含される四面体に応じて補間係数の算出に用いる式を切り替え、その入力値が包含される四面体毎に定められた計算式に従って、その四面体を構成する４格子点と下位ビットデータＲＬ，ＧＬ，ＢＬとに基づいて補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を算出する。この４面体補間演算処理は、従来のデータ変換装置における処理と同様である。
【００６３】
そして、演算処理部４は、公知の４点補間演算を用いて、このようにして求めた補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４と第１段階の４格子点特定処理により抽出した入力点に対応する四面体頂点の基礎データ（元々は格子点データ）Ｄ１，Ｄ２，Ｄ３，Ｄ４とに基づいて最終出力値Ｄｏｕｔを算出するというテトラ・ハイドラ法による補間演算処理を行う。例えば、次式（１）に従って、最終出力値Ｄｏｕｔを算出する。なお、式（１）では１次式補間で出力値を求めているが、これに限らず、２次式やその他の高次の補間演算式を利用してもよい。
【００６４】
Ｄｏｕｔ＝Ｄ１×Ｗ１＋Ｄ２×Ｗ２＋Ｄ３×Ｗ３＋Ｄ４×Ｗ４・・・（１）
【００６５】
この第１実施形態の構成によれば、入力データに対応する出力データを四面体補間演算により求めるに際して、格子点データ保持用のメモリ（空間）の数を、四面体補間演算に必要となる４頂点に相当する４個ではなく２個で構成したので、結果的に、同じデータのメモリを４倍持つ必要がなく２倍ですむため、同じ機能を達成するために必要なメモリの総容量が従来の１／２になる。
【００６６】
つまり、従来は、同容量の独立駆動可能なメモリ（空間）を補間演算所用データ数だけ備える必要があったのと異なり、補間演算に必要となる格子点データ数とメモリ空間の数を同じにしなければならないという従来の制約から開放され、例えば、４点補間の場合は、格子点データ保持用のメモリを４倍持つ必要がなく４倍未満（例えば２倍）で済むなど、同じ機能を達成するために必要なメモリの総容量や独立制御可能なメモリ空間数を低減することができる。加えて、同時アクセスのメモリ空間数を低減することができるので、消費電力や放射ノイズを低減することもできる。
【００６７】
例えば、従来は１つの補間演算用データを抽出するために１７×１７×１７個、つまり４，１９３バイト必要であり、４点補間の場合は同時に４格子点のデータを抽出するために、その４倍、つまり、４９１３バイト×４個＝１９，６５２バイトを必要とした。しかし、本実施形態の構成では、その１分の２の容量のメモリで同時に４格子点のデータを抽出することが可能となる。
【００６８】
補間演算回路は、従来の構成とほぼ同様のものを使用することができるので、全体としての回路変更はメモリ回路周りだけとなるので、上記構成の実回路への適用も容易である。
【００６９】
〔第２の実施の形態〕
図１６は、本発明に係るデータ変換装置の第２実施形態を示すブロック図である。この第２実施形態の構成は、Ｒ，Ｇ，Ｂの３次元入力の場合における上述の補間演算をリアルタイムで高速に行うようにした具体的な回路構成の第１例を示すものである。
【００７０】
図示するように、第２実施形態の演算処理部４におけるＹ信号生成部４Ｙは、第１実施形態の演算処理部４における単位立方体判定処理（図２のステップＳ１００〜Ｓ１０２）およびアクセスメモリ特定処理（同Ｓ１０８ａ）を実行するアドレス生成部１０と、４面体判定処理（同Ｓ１０４〜Ｓ１０６）を実行する４面体判定部１４と、４格子点特定処理（Ｓ１０８ｂ）を実行するデータ選択部１６と、補間係数算出処理（Ｓ１０８ｃ）を実行する補間係数生成部２０と、補間演算処理（Ｓ１０８ｄ）を実行する補間処理部２２とを備える。
【００７１】
アドレス生成部１０は、本発明の単位格子体判定部とアドレス設定部の両機能を備える。また、４面体判定部１４は、本発明の単位格子体判定部の一例である。また、データ選択部１６は、本発明の基礎データ抽出部の一例である。また、補間係数生成部２０と補間処理部２２とにより、本発明の補間演算処理部が構成される。
【００７２】
なお、図では省略して示しているが、Ｍ信号生成部４Ｍ、Ｃ信号生成部４Ｃ、およびＫ信号生成部４Ｋも、Ｙ信号生成部４Ｙと同様の構成となっている。
【００７３】
アドレス生成部１０は、画像データＲ，Ｇ，Ｂが入力されると、その入力データＲ，Ｇ，Ｂを上位ビットデータＲＨ，ＧＨ，ＢＨ（本例では上位４ビット；纏めてＤＨとする）と下位ビットデータＲＬ，ＧＬ，ＢＬ（本例では下位４ビット；纏めてＤＬとする）に分割し、その内の上位４ビットのデータＤＨに基づいて、図５（Ｂ）や図８に示したように、３次元ＬＵＴにおける入力点が包含される単位立方体の位置Ｐ２２（図８の基点Ｐ１２２に相当）を特定し、この単位立方体を特定する基点を示す座標情報（ＲＨ，ＧＨ，ＢＨ）をデータ選択部１６に入力する。
【００７４】
また、アドレス生成部１０は、分割したデータの内の下位ビットデータＤＬを４面体判定部１４と補間係数生成部２０とに入力する。４面体判定部１４は、アドレス生成部１０から入力された下位ビットデータＤＬに基づいて、単位立方体を分割する６つの四面体のうちの入力値が含まれる四面体を特定し、この特定した四面体を示す情報を判定結果として、アドレス生成部１０、データ選択部１６、および補間係数生成部２０に入力する。
【００７５】
アドレス生成部１０は、４面体判定部１４による４面体判定処理結果を受けて、図６の表１に示した選択条件に従って、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを抽出すべき２つのメモリ回路２ＲＧ，２ＲＢに対して、読出クロック信号を独立に制御する（具体的には、読出アクセス読出な回路へのリードクロックを停止する）。これは、ある単位時間に多大な数のメモリに同時アクセスするということは消費電力の増大、放射ノイズの増大をも招き、環境の観点からも改善が望まれるからである。
【００７６】
すなわち、本実施形態の構成では、処理対象の画素データについて同時に読出アクセスすべき、補間演算に必要となる４格子点の基礎データを含むメモリ回路は、２つのメモリ回路であるので、メモリ数を従来の４つから２つに低減したことによる消費電力や放射ノイズの低減効果に加えて、同時アクセス不要なメモリ回路へのリードクロックの供給を停止することで、消費電力や放射ノイズをなお一層低減する。
【００７７】
また、アドレス生成部１０は、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨつまり図５（Ｂ）の基点Ｐ２１の座標値と図６の表１に示したアクセスアドレス式とに従って算出したアクセスアドレスＡＤＲＧ，ＡＤＲＢを、アクセスすべきメモリ回路毎に設定する。こうすることで、メモリ回路からのデータ読出時には、２つのメモリ回路２ＲＧ，２ＲＢのうち、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含むメモリ回路のみがアクティブになり、そのアクティブなメモリ回路に設定されたアドレスから一群のデータがデータ選択部１６に入力されるようになる。
【００７８】
例えば、メモリ回路２ＲＧ，２ＲＢとして、１つのアドレスが設定されると、それに対応する複数のデータを並列的に出力可能なものを使用する。そして、アドレス入力に対しては、アクセスアドレスＡＤＲＧ，ＡＤＲＢを設定する。例えば、図３〜図９の各（Ｂ）にて、アドレス欄の値をアクセスアドレスＡＤＧ，ＡＤＲＢに設定することで、各メモリ回路２ＲＧ，２ＲＢからは、基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する２つの基礎データを含む一群のデータの全てが並列的に出力される。
【００７９】
また、アドレス生成部１０は、各メモリ回路のチップセレクト端子ＣＳへの入力であるメモリ制御信号ＣＴＲＧ，ＣＴＲＢを独立に制御する（具体的には、ロー／ハイに切り替える）ことで、同時読出しが必要な２つのメモリ回路をアクティブに、不要な１つのメモリ回路をインアクティブ（ハイインピーダンス状態）にする。こうすることで、消費電力の低減を図ることができるとともに、メモリ回路の後段の回路をコンパクトにすることもできる。
【００８０】
次に、データ選択部１６は、上位４ビットデータの組合せ値の空間位置Ｐ２１を基点にして該当する単位立方体の各頂点のデータ（格子点データ）の中から必要なものを抽出する。例えば、データ選択部１６は、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含むメモリのみから入力された所定アドレスのデータ群をデータ格納部２から受け取ると、４面体判定部１４による４面体判定処理結果とアドレス生成部１０からの入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）とに基づいて、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データＤ１，Ｄ２，Ｄ３，Ｄ４を抽出し、この抽出した４つのデータＤ１，Ｄ２，Ｄ３，Ｄ４を補間処理部２２に入力する。
【００８１】
なお、図９〜図１４から分かるように、メモリから出力されたデータ（α１，α１’、α２，α２’、β１，β１’、β２，β２’）が、Ｄ１，Ｄ２，Ｄ３，Ｄ４の何れに対応するのかは、入力点の属する四面体によって異なる。データ選択部１６は、入力値に対応する所用の２つのメモリから、データ（α１，α１’とα２，α２’とβ１，β１’とβ２，β２’）が、補間演算処理におけるＤ１，Ｄ２，Ｄ３，Ｄ４の何れとすべきかを、４面体判定部１４による４面体判定処理結果に基づいて図６の表１に示した選択条件に従って判断する。
【００８２】
これと並行して、補間係数生成部２０は、４面体判定部１４による４面体判定処理の結果を受けて、図１５の表２に基づき、６つの四面体のうち入力値が包含される四面体に応じた計算式に従って、その四面体を構成する４格子点と下位ビットデータＲＬ，ＧＬ，ＢＬとに基づいて補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を算出し、算出した補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を補間処理部２２に入力する。
【００８３】
補間処理部２２は、公知の４点補間演算を用いて、補間係数生成部２０から入力された補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４とデータ選択部１６から入力されたデータＤ１，Ｄ２，Ｄ３，Ｄ４（４頂点の基礎データ）とに基づいて最終出力値Ｙ，Ｍ，Ｃ，Ｋを、それぞれ算出する。
【００８４】
この第２実施形態の構成によれば、ＬＵＴと補間演算を用いたデジタル色分解信号から他の色成分のデジタル色分解信号への変換を行う際にテトラ・ハイドラ法を用いる場合は、従来は４つのメモリを必要としていたものが、第１実施形態と同様に、２つのメモリで４面体補間演算処理を実現することができる。また、基礎データの中から所望の基礎データを抽出するための付加回路の規模はさほど大きくないので、補間回路の規模や複雑さを増すことなく、データ変換装置１を実現することができる。
【００８５】
加えて、従来は補間演算に用いられるデータを抽出する際に１色の出力値の算出につき４つのメモリにアクセスする必要があったが、本実施形態の構成によれば、メモリのチップセレクト端子ＣＳ（もしくはリードイネーブル端子ＲＥ）を制御することで、２つのメモリ回路２ＲＧ，２ＲＧをアクティブにするので、従来の半分の２つのメモリにアクセスするだけでよく、システムの消費電力や放射ノイズを低減することもできる。
【００８６】
すなわち、ＬＵＴと補間演算を用いたデジタル色分解信号から他の色成分のデジタル色分解信号への変換を行う際に、少ないメモリ資源で色データ変換を実現することができるという効果がある。また、従来は補間演算に用いられるデータを抽出する際に１色の出力値の算出につき４つのメモリに同時にアクセスする必要があったが、本実施形態の構成では半分の２つだけでよく、システムの消費電力や放射ノイズの低減効果もある。
【００８７】
〔第３の実施の形態〕
図１７は、本発明に係るデータ変換装置の第３実施形態を示すブロック図である。この第３実施形態の構成の基本は第２実施形態のものと同じである。第２実施形態の構成との相違点は、第２実施形態のデータ選択部１６を備えておらず、このデータ選択部１６の機能をアドレス生成部１０が兼用する構成としている点にある。つまり、第３実施形態のアドレス生成部１０は、本発明の基礎データ抽出部の機能も備える。
【００８８】
この変更に応じて、４面体判定部１４は、アドレス生成部１０から入力された下位ビットデータＤＬに基づいて、単位立方体を分割する６つの四面体のうちの入力値が含まれる四面体を特定し、この特定した四面体を示す情報を判定結果として、アドレス生成部１０、補間係数生成部２０、およびに補間処理部２２に入力する。すなわち、３次元ＬＵＴにおける入力点が包含される単位立方体の位置を特定し、その情報をデータ選択部１６に伝える。
【００８９】
また、第３実施形態のメモリ回路２ＲＧ，２ＲＢは、アドレス生成部１０により設定されたアドレスＡＤＲＧ，ＡＤＲＢ毎に一群の全データを纏めてパッキングデータＰＲＧ，ＰＲＢとして出力する形態のものではなく、一群のうちの任意の２つのアドレスも設定可能で、それら２つを纏めて出力可能なものを使用する。
【００９０】
つまり、第１実施形態や第２実施形態と同様に、１つのアドレスＡＤＲＧ，ＡＤＲＢ毎に複数の格子点データをマッピングするが、読出しに際しては、テトラ・ハイドラ法による補間演算に必要となる４格子点を含む各軸のメモリに対して、２つの基礎データ（α１，α１’、α２，α２’、β１，β１’またはβ２，β２’）のみを纏めて出力させる。
【００９１】
具体的には、アドレス空間を２次元状に制御可能なものを使用し、一方のアドレス軸に対しては、第１実施形態や第２実施形態と同様にアクセスアドレスＡＤＲＧ，ＡＤＲＢを設定する。そして、他方のアドレス軸に対しては、Ｘ軸方向のアドレス設定のためのアクセスアドレスＡＤＸＲＧ，ＡＤＸＲＢにより、入力値を包含する単位立方体を特定する基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する値を設定することで、４格子点特定処理を行う。
【００９２】
例えば、図３〜図９の各（Ｂ）にて、アドレスの欄の値をアクセスアドレスＡＤＲＧ，ＡＤＲＢに設定し、データ欄の下部に示した「２次元アドレスの場合のアドレス」のうち基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する値（０，１，…のうちの連続した２つのアドレス）をＸ軸方向のアドレス設定のためのアクセスアドレスＡＤＸＲＧ，ＡＤＸＲＢに設定する。こうすることで、メモリ回路２ＲＧ，２ＲＧからは、それぞれ基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する２つの基礎データが並列的に出力される。
【００９３】
補間処理部２２は、入力値に対応する所用の２つのメモリから入力された各２つの基礎データ（α１，α１’、α２，α２’、β１，β１’、β２，β２’）について、補間演算処理におけるＤ１，Ｄ２，Ｄ３，Ｄ４の何れとすべきかを、４面体判定部１４による４面体判定処理結果に基づいて図６の表１に示した選択条件に従って判断する。これは、図９〜図１４から分かるように、メモリから出力された各２つの基礎データ（α１，α１’、α２，α２’、β１，β１’、β２，β２’）が、Ｄ１，Ｄ２，Ｄ３，Ｄ４の何れに対応するのかは、入力点の属する四面体によって異なるからである。
【００９４】
補間処理部２２は、公知の４点補間演算を用いて、補間係数生成部２０から入力された補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４と、入力値に対応する所用の２つのメモリから入力された各２つの基礎データ（α１，α１’、α２，α２’、β１，β１’、β２，β２’）に対応するデータＤ１，Ｄ２，Ｄ３，Ｄ４とに基づいて最終出力値Ｙ，Ｍ，Ｃ，Ｋを、それぞれ算出する。
【００９５】
この第３実施形態の構成によれば、第２実施形態と構成が異なるものの、基本的な作用は第２実施形態と同様である。したがって、第１実施形態と同様に、２つのメモリで４面体補間演算処理を実現することができることに加えて、メモリのチップセレクト端子ＣＳ（もしくはリードイネーブル端子ＲＥ）を制御することで、システムの消費電力や放射ノイズを低減することもできる。
【００９６】
なお、第１〜第３実施形態で説明した構成におけるデータ格納部２、アドレス生成部１０、データ選択部１６、補間演算処理部２２等については、公知技術を適宜組み合わせて実現すればよい。具体的には、公知のラッチ回路やセレクタ回路等といったハードウエア回路を利用して、メモリ回路２ＲＧ，２ＲＢへの駆動信号を制御することで、各メモリ回路２ＲＧ，２ＲＢからのデータ読み出し（アドレスやタイミング等）をコントロールすることが考えられる。これにより、例えば、第１および第２実施形態における「処理対象の画素データに対応する基礎データを含むアドレスの全ての基礎データを纏めてパッキングデータとして読み出し、その後に、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出する」に際して、対象アドレスの全基礎データをほぼ同時に並列的にメモリ回路から出力する構成を実現することや、対象アドレスの全基礎データを時系列的に逐次出力する構成を実現すること、並びに、第３実施形態における「補間演算に必要な基礎データのみを読み出す構成であって、それらの基礎データをほぼ同時に並列的に出力する構成」を実現すること等も可能となる。
【００９７】
ただし、これらの構成については、ハードウエア回路によって実現するのではなく、ソフトウエアの実行によって実現させることもできる。さらには、上述したメモリアクセスのための４面体判定や補間演算などの一連の処理についても、ハードウエア回路またはソフトウエアの何れによっても実現させることができる。ソフトウエアによる実現の場合には、そのソフトウエアを構成するプログラムを、コンピュータとしての機能を有したデータ変換装置に予めインストールしておくことが考えられるが、そのプログラムが有線または無線の通信回線を介して提供されたり、コンピュータ読み取り可能な記憶媒体を介して提供されてもよい。
【００９８】
また、上述した第１〜第３実施形態は、本発明の好適な具体例を説明するものであって、本発明がこれに限定されるものでないことは勿論である。
【００９９】
例えば、上記実施形態では、格子点データを格納するメモリとして、入力データの軸と共通する方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをマッピング（パッキング）し、その一塊りの全データ（第１もしくは第２実施形態の場合）あるいはその中の２つの基礎データ（第３実施形態の場合）を並列的に読み出すようにしていたが、パッキングの方向や読出しかたはこのような方法に限られず、入力の３軸を互いに４５度傾けた互いに直交する軸の方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをマッピング（パッキング）するようにしてもよい。このようなパッキング方法でも、元の３次元ＬＵＴの全ての格子点データを取り扱うことが可能である。ただし、この場合、原点を通る軸上のデータが最も多くパッキングされ、元の３次元ＬＵＴの最外郭のデータが１つのみパッキングされるので、各軸に対しては同容量のメモリを使用できるものの、アドレスに応じて対応付けられるデータ数が異なるので、実際には使用しないメモリ空間が生じることになる。また、４５度傾けに限らず、６０度や他の任意の角度に傾けてもかまわない。軸に応じて傾き角を異なるものとしてもよい。これらの場合においても、元の３次元ＬＵＴの全ての格子点データがパッキングされた何れかの群に含まれるようにアドレスと対応付けることで、元の３次元ＬＵＴの全ての格子点データを取り扱うようにすることが好ましい。さらには、元の３次元ＬＵＴの一部の格子点データがパッキングされた何れの群にも含まれないということがあってもかまわない。また、元のＬＵＴの格子点データのうち、軸を通らない格子点データについては、例えば線形補間などにより生成した新たなデータをその格子点データに対応する基礎データとして割り当ててもよい。
なお、第１〜第３実施形態のように、入力データの軸と共通する方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをパッキングすれば、パッキングされた各アドレスには同数の格子点データが対応付けられ使用しないメモリ空間が生じないようにすることができるとともに、元の３次元ＬＵＴの全ての格子点データを漏れなく取り扱うことができるので、同容量のメモリを無駄なく使用できるなど、全体のバランスがよい。
【０１００】
また、第１〜第３実施形態では、入力色データを出力色データに変換する際に用いられる格子点データの集合を構成する単位立方体の中を６個の四面体に分割して入力値（入力された画素データ）が何れの四面体に属するのかを判定し、該当する四面体内での補間演算により入力値に対応する出力値（出力用の画素データ）を決定する手法として、４点補間の典型例であるテトラ・ハイドラ法を適用した場合について説明したが、本願発明の適用は、４点補間に限らず、立方体補間（８点補間）や５点補間など他の補間方法に適用することも可能である。つまり、補間演算所用データ数未満（事実上多面体を規定する頂点数よりも少ない）のメモリを使用し、元のＬＵＴの格子点データを所定の方向（使用するメモリ数に応じて面を設定）にグループ分けし、グループ毎に１つのアドレスに複数の格子点データを対応付けてそのメモリに格納し、補間演算処理の際には、グループ分けしたデータ群の中から、補間演算に必要となる格子点のデータを抽出するという構成のものであればよい。
【０１０１】
また、第１〜第３実施形態では、ｋ色の入力色データとしてＲ，Ｇ，Ｂの３色のデータを取り扱い、ｊ色の出力色データとしてＹ，Ｍ，Ｃ，Ｋの４色に変換する例を説明したが、入力系および出力系それぞれについて色の構成要素が３つ以上である限り、他の色系統を取り扱う形態に変更することもできる。もちろん、色空間に依存せず、ＲＧＢ，Ｌａｂ，ＹＣｂＣｒ，ＹＭＣＫなど、何れにも対応することができる。
さらに、第１〜第３実施形態では、ｋ個（具体的には３個）の成分データに基づいて定まるｋ次元超立方格子空間の２のｋ乗個の格子点が形成するｋ次元超立方体の各格子点に対応づけられた格子点データを元のＬＵＴとして取り扱い、単位格子体の形状が立方体であるのもとしていたが、個々の格子点により規定される単位格子体の形状は、必ずしも立方体に限らない。
さらにまた、第１〜第３実施形態では、単位格子体（単位立方体）を同容量の多面体（具体的には四面体）で内分することとしていたが、単位格子体を分割する多面体は、必ずしも同容量のものでなくてもよい。
【０１０２】
多面体は、四面体の他にも、四角錐の五面体や、図１８に示すような三角柱または斜三角柱の六面体等が挙げられる。つまり、第１〜第３実施形態で説明したように、ｋ色が三色であり、多面体が出力色信号要素である一つの色に対応する四面体であって、補間演算が４面体補間演算である場合の他に、例えば、ｋ色が三色であり、多面体が出力色信号要素である一つの色に対応する四角錐の五面体であって、補間演算が四角錐補間演算である場合や、ｋ色が三色であり、多面体が出力色信号要素である一つの色に対応する三角柱の六面体であって、補間演算が三角柱補間演算である場合、あるいはｋ色が三色であり、多面体が出力色信号要素である一つの色に対応する斜三角柱の六面体であって、補間演算が斜三角柱補間演算である場合についても、全く同様に本発明の適用が実現可能である。
【図面の簡単な説明】
【０１０３】
【図１】本発明に係るデータ変換装置の第１実施形態を示すブロック図である。
【図２】第１実施形態のデータ変換装置における色データの変換に関する処理手順の概要を示したフローチャートである。
【図３】出力値の代表値である格子点データを構成するＲＧ平面用のルックアップテーブルを示す説明図である。
【図４】出力値の代表値である格子点データを構成するＲＢ平面用のルックアップテーブルを示す説明図である。
【図５】演算処理部における単位立方体判定処理（図２のＳ１００〜Ｓ１０２）を示す説明図である。
【図６】演算処理部における４面体判定処理（図２のＳ１０４〜Ｓ１０６）を示す説明図である。
【図７】演算処理部におけるアクセスメモリ特定処理（図２のＳ１０８ａ）と４格子点特定処理（図２のＳ１０８ｂ）を示す説明図である。
【図８】入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図９】四面体１に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１０】四面体２に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１１】四面体３に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１２】四面体４に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１３】四面体５に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１４】四面体６に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示す説明図である。
【図１５】演算処理部における補間係数算出処理（図２のＳ１０２ｃ）と補間演算処理（図２のＳ１０２ｄ）を示す説明図である。
【図１６】本発明に係るデータ変換装置の第２実施形態を示すブロック図である。
【図１７】本発明に係るデータ変換装置の第３実施形態を示すブロック図である。
【図１８】三角柱の六面体を適用した場合の例を示す説明図である。
【符号の説明】
【０１０４】
１…データ変換装置、２…データ格納部、２Ｒ…Ｒ軸メモリ回路、２Ｇ…Ｇ軸メモリ回路、２Ｂ…Ｂ軸メモリ回路、４…演算処理部、４Ｙ…Ｙ信号生成部、４Ｍ…Ｍ信号生成部、４Ｃ…Ｃ信号生成部、４Ｋ…Ｋ信号生成部、１０…アドレス生成部、１４…４面体判定部、１６…データ選択部、２０…補間係数生成部、２２…補間処理部
【図１】
2005149051.tif 000003
【図２】
2005149051.tif 000004
【図３】
2005149051.tif 000005
【図４】
2005149051.tif 000006
【図５】
2005149051.tif 000007
【図６】
2005149051.tif 000008
【図７】
2005149051.tif 000009
【図８】
2005149051.tif 000010
【図９】
2005149051.tif 000011
【図１０】
2005149051.tif 000012
【図１１】
2005149051.tif 000013
【図１２】
2005149051.tif 000014
【図１３】
2005149051.tif 000015
【図１４】
2005149051.tif 000016
【図１５】
2005149051.tif 000017
【図１６】
2005149051.tif 000018
【図１７】
2005149051.tif 000019
【図１８】
2005149051.tif 000020