(57)【要約】【課題】入力色データに対応する出力色データを４点補間により求めるデータ変換装置において、使用メモリ容量を低減できるようにする。【解決手段】メモリ２Ｒ，２Ｇ，２Ｂをデータ格納部２に使用する。４点補間に必要な４個よりもメモリ数が少ない。入力色の各軸方向に平行に基礎データをグループ分割し各メモリ回路に格納する。４面体判定部１４は、下位ビットデータに基づき入力値が含まれる４面体を特定する。アドレス生成部１０は、３つのメモリ回路の中から、補間演算に必要となる４格子点の基礎データを抽出すべき２つのメモリ回路をアクティブにして、該当アドレスの全基礎データをデータ選択部１６に出力させる。データ選択部１６は、上位ビットデータを参照して必要な４個を抽出する。補間処理部２２は、補間係数生成部２０から入力された補間係数とデータ選択部１６から入力された４頂点の基礎データとに基づき最終出力値Ｙ，Ｍ，Ｃ，Ｋを算出する。【選択図】　　　　図１７
2004112523.tif 000002
【特許請求の範囲】
【請求項１】
入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データごとに、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定し、該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定し、該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定するデータ変換方法において、
前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用し、
ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを所定の基準に従って複数のグループに分け、当該グループごとに、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納し、
前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを用いて、前記多面体内での補間演算を行なう
ことを特徴とするデータ変換方法。
【請求項２】
前記処理対象の画素データが前記複数個の多面体のうちの何れに属するのかの判定結果に基づいて、当該画素データに対応する前記補間演算所用データ数分の基礎データを抽出することを特徴とする請求項１に記載のデータ変換方法。
【請求項３】
前記ｋ色が３色であって、前記多面体が出力色信号要素の各要素に対応する４面体であって、前記補間演算が４面体補間演算で各出力色信号要素ごとに構成され、出力色信号要素が３あるいは４であることを特徴とする請求項１に記載のデータ変換方法。
【請求項４】
入力色データを出力色データに変換する際に用いられる格子点データに基づいて、前記入力色データの画素データごとに、当該画素データが前記格子点データの集合を構成する単位格子体の何れに属するのかを判定する単位格子体判定部と、当該単位格子体判定部により判定された該当する単位格子体の中をさらに複数個の多面体に分割して前記画素データが何れの前記多面体に属するのかを判定する多面体判定部と、当該多面体判定部により判定された該当する前記多面体内での補間演算により、入力された前記画素データに対応する出力用の画素データを決定する補間演算処理部とを備えたデータ変換装置において、
前記多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能な複数のメモリ空間を具備し、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた前記格子点データに対応する基礎データを格納するデータ格納部であって、前記基礎データを所定の基準に従って複数のグループに分け、当該グループごとに、このグループ内の複数の前記基礎データを前記複数のメモリ空間の対応するものに格納するデータ格納部と、
前記データ格納部に格納されている前記グループに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出する基礎データ抽出部とを備え、
前記補間演算処理部は、前記基礎データ抽出部により抽出された前記補間演算所用データ数分の基礎データを用いて、前記多面体内での補間演算を行なうことを特徴とするデータ変換装置。
【請求項５】
前記メモリ空間の数は、前記入力色データの構成要素の数であるｋと同じであって、
前記データ格納部は、前記ｋ次元を確定するそれぞれ独立なｋ個の軸の方向に沿って、前記基礎データをグループに分ける
ことを特徴とする請求項４に記載のデータ変換装置。
【請求項６】
前記処理対象の画素データが前記複数個の多面体のうちの何れに属するのかについての前記多面体判定部による判定結果に基づいて、グループ分けされて格納されている前記基礎データのうちの前記処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを含むグループの格納位置を示す読出アドレスを前記データ格納部に設定するアドレス設定部を備えたことを特徴とする請求項４または５に記載のデータ変換装置。
【請求項７】
前記基礎データ抽出部は、前記アドレス設定部により設定されているアドレスに対応する前記グループ内の複数の基礎データを全て読み出し、この読み出した複数の基礎データの中から、前記処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出することを特徴とする請求項６に記載のデータ変換装置。
【請求項８】
前記基礎データ抽出部は、前記処理対象の画素データが前記複数個の多面体のうちの何れに属するのかについての前記多面体判定部による判定結果に基づいて、前記読み出した複数の基礎データの中から、前記処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを特定することを特徴とする請求項７に記載のデータ変換装置。
【請求項９】
前記データ格納部は、前記処理対象の画素データに対応する前記基礎データを含むグループ内の複数の基礎データの中から、前記補間演算所用データ数分の基礎データのみを読出可能に構成されており、
前記アドレス設定部は、前記基礎データ抽出部の機能を備えるとともに、前記処理対象の画素データが前記複数個の多面体のうちの何れに属するのかについての前記多面体判定部による判定結果に基づいて、前記処理対象の画素データに対応する前記補間演算所用データ数分の基礎データの格納位置を示す読出アドレスを前記データ格納部に設定する
ことを特徴とする請求項６に記載のデータ変換装置。
【請求項１０】
前記単位格子体判定部は、前記処理対象の画素データの上位ｍビットのデータに基づいて当該画素データが属する前記単位格子体を特定するものであり、
前記多面体判定部は、前記単位格子体判定部により前記処理対象の画素データが属すると判定された前記単位格子体について、当該画素データの下位ｎビットのデータに基づいて当該画素データが属する前記多面体を特定するものであり、
前記基礎データ抽出部は、前記処理対象の画素データの上位ｌ（エル）ビットのデータに基づいて、前記処理対象の画素データに対応する前記補間演算所用データ数分の基礎データを抽出するものである
ことを特徴とする請求項４から９のうち何れか１項に記載のデータ変換装置。
【請求項１１】
前記補間演算処理部は、前記処理対象の画素データが前記複数個の多面体のうちの何れに属するのかについての前記多面体判定部による判定結果に基づいて、当該画素データが属する前記多面体に応じた補間係数を前記処理対象の画素データの下位ｎビットのデータを使用して求める補間係数生成部と、当該補間係数生成部により求められた補間係数と前記基礎データ抽出部により抽出された前記複数個の基礎データとを用いて前記多面体内での補間演算を行なう補間処理部とを含むことを特徴とする請求項４から１０のうちの何れか１項に記載のデータ変換装置。
【請求項１２】
前記データ格納部は、出力色信号要素である４色に対応する前記多面体としての４面体に応じて規定される前記補間演算所用データ数である４つよりも少ない３つの前記メモリ空間のそれぞれに、前記ｋ色としての３色の各軸方向のうちの何れかについて、前記所定の順に従ってグループに分けるものであり、
前記多面体判定部は、前記単位格子体判定部が特定した単位立方体を分割した６つの前記４面体のうちの、前記処理対象の入力された３色の画素データが属する前記４面体を、前記処理対象の画素データの下位ｎビットのデータに基づいて特定するものであり、
前記基礎データ抽出部は、前記データ格納部における前記各々のアドレスに対応付けられた前記複数の基礎データの中から、処理対象の画素データに対応する前記補間演算所用データ数としての４つの基礎データを抽出し、
前記補間演算処理部は、前記基礎データ抽出部により抽出された前記４つの基礎データを用いて、４面体補間演算を行なうものである
ことを特徴とする請求項４から１１のうち何れか１項に記載のデータ変換装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、補間演算を用いてデータ変換を行なうデータ変換方法およびデータ変換装置に関する。より詳細には、たとえば、プリンタ装置、ファクシミリ装置、あるいはそれらの機能を有する複合機などの画像処理装置において、たとえば、Ｒ（赤），Ｇ（緑），Ｂ（青）の多次元入力画像データを、Ｙ（イエロ），Ｍ（マゼンタ），Ｃ（シアン），Ｋ（黒）の多次元出力画像データのそれぞれ１つの色データに変換するなど、複数次元の入力画像信号を別の色データに変換する技術に関する。
【０００２】
【従来の技術】
【特許文献１】
特開平８−１８１８７４号公報
【特許文献２】
特公昭５８−１６１８０号公報点
【特許文献３】
特開昭５６−１４２３７号公報
【０００３】
プリンタ装置や複写装置などの印刷機能を備えた画像形成装置が様々な分野で使用されている。また、今日では、画像形成装置がカラー化され、ユーザの様々な表現手段として利用されるようになってきている。たとえば、電子写真プロセス（ゼログラフィ）を用いたカラーページプリンタ装置は、高品質な画質あるいは高速プリンティングの点で注目されている。
【０００４】
また、今日では、ＤＴＰ（ＤｅｓｋＴｏｐ　Ｐｕｂｌｉｓｈｉｎｇ／Ｐｒｅｐｒｅｓｓ）の普及により、カラー画像を扱う機会が増しつつあり、この場合において、カラー画像を入力するための機器は、スキャナ、ビデオカメラなどが主であり、また、出力機器はインクジェット方式や染料熱昇華型方式あるいは電子写真などの各種カラープリンタである。なかでも、高速出力可能な電子写真プロセスを用いた印刷機能が着目されている。
【０００５】
これらのカラー入出力機器は、それぞれ固有の色空間を有しており、あるスキャナから得たカラー画像データを、そのまま別のカラープリンタに転送して、画像を出力する場合、その画像の色がオリジナルの画像の色と一致することは殆どありえない。両者の色を一致させるには、いわゆる入力デバイス（スキャナやビデオカメラなどのこと）の色空間を、出力デバイス（前述の各種カラープリンタのこと）の色空間に変換するといったを色空間変換処理処理が必要になる。
【０００６】
このような色空間変換処理とは、入力デバイスによって得られる色（一般的には、Ｒ（赤），Ｂ（青），Ｇ（緑）の３色）の画像信号を出力デバイス側の３色あるいは４色それぞれの画像信号に非線形に変換するものである。
【０００７】
画像などのデジタル信号に対する非線型変換（たとえばガンマ変換やｌｏｇ変換）には、一般にＬＵＴ（Ｌｏｏｋ　Ｕｐ　Ｔａｂｌｅ　；ルックアップテーブル）を用いた変換を行なうことが多い。ＬＵＴを用いる方法とは、入力信号に対応する出力値を予め算出しておき、その値をテーブルとして保持し、入力値に対応した出力値を演算なしで得る方法である。
【０００８】
非線形変換を演算回路で行なうものとすると、その演算回路が複雑になり回路規模が大きくなるが、たとえば８ビットからなる１つのビデオデータに任意の非線形変換を行なう処理をＬＵＴを用いて行なう場合には、２５６バイトの容量のメモリがあればその処理が実現可能であり、複雑な演算回路を削除することが可能となる。ところで、上述のような変換は１つの画像信号を別の性質の他の１つの画像信号に変換するものであるため、そこで使用されるＬＵＴは１次元ＬＵＴといわれる。
【０００９】
たとえば、プリンタなどのハードコピー出力機器ではカラー画像信号が扱われる。これら出力機器はＹ，Ｍ，Ｃ，Ｋなどの色の色材を用いて、紙面などの上に画像を形成する。したがって、Ｙ，Ｍ，Ｃ，Ｋから構成される色空間を有している。一方、カラー画像の入力機器として想定されるものとしてスキャナ、デジタル・スチル・カメラなどがあるが、これらはそれぞれ固有の色空間を有している。これらは、多様な色空間を有しているが、代表的なものとしては、Ｒ，Ｇ，Ｂで構成される色空間を有する。したがって、プリンタなどの出力機器でハードコピーとして出力する際には、これら色空間の変換が必要となる。
【００１０】
ところが、上述した入力デバイスの３色の画像データを、出力デバイスの複数色中の１色に変換する処理を、３次元ＬＵＴだけを用いて行なおうとすると、大容量のメモリが必要となる。たとえば、Ｒ，Ｇ，Ｂの信号がそれぞれ８ビット信号であり、出力であるＹ，Ｍ，Ｃ，Ｋの信号も８ビット信号である場合、入力値の組合せは１６，７７７，２１６通り（２＾８×２＾８×２＾８通り；“＾”はべき乗を示す）であり、Ｒ，Ｇ，Ｂの入力に対してＹ，Ｍ，Ｃ，Ｋのうちの１色に変換するのに１６メガバイト（Ｍｂｙｔｅ）のメモリが必要となる。よって、Ｙ，Ｍ，Ｃ，Ｋの４色に変換するには、１６メガバイトの４倍の６４メガバイトものメモリが必要となる。
【００１１】
つまり、入力２４ビット、出力８ビットに対応したＬＵＴが必要で、この場合、出力１色当たりのメモリ容量は１６Ｍ（メガ）バイトとなり、さらに、出力デバイスの色数分だけ上述のメモリが必要であるため、実際のメモリ容量は、４８〜６４Ｍバイトといった大容量となる。したがって、このメモリ容量はコスト的な観点でみた場合にシステムに対するインパクトが大きく、現実的ではない。
【００１２】
このような問題を解消するために、色変換処理においてＬＵＴを用いる場合は、補間演算処理を併用することによって、用いるＬＵＴのメモリ容量を小さなものとするのが一般的であり、ＬＵＴと補間処理の組合せによるデータ変換機構が提案されている。これは、入力信号の上位複数ビット分にのみ対応した出力値をＬＵＴとして構成することで前記方式におけるＬＵＴの容量を削減するものである。入力信号に該当する出力値が存在しない場合はその入力値が示す空間位置の近傍データを用いて補間処理を施し出力値を算出する。
【００１３】
このような補間演算処理は、ＬＵＴから読み出したデータ（格子点データ）をいくつ用いるか、また、どのような関係の格子点データを用いるかによって、いくつかの方法に分類できる。一般的に、格子点データを多く用いる方法では補間精度は向上するが補間回路の規模が大きくなる。比較的回路規模が小さな補間方法として、たとえば特許文献１，２，３に記載されている４点補間法（テトラ・ハイドラ補間；Ｔｅｔｒａ−Ｈｙｄｒａ　補間）が知られている。また、特許文献１には、５点補間法もあることが述べられている。また、特許文献２には、回路規模が大きくなるが、補間精度がよい補間方法として、立方体補間法（８点補間法）もあることが、従来例として述べられている。
【００１４】
上述した４点補間法と８点補間法は、立方格子の各格子点に対応して存在する格子点データを用いて補間演算する場合に、それぞれ最も回路規模が小さい補間方法すなわち最も少ない格子点データで補間する方法、および最も回路規模が大きい補間方法すなわち最も多い格子点データで補間する方法に対応するものである。つまり、３次元立方格子の各格子点データを用いて補間演算する際の格子点データの個数（補間演算所用データ数）は、元のＬＵＴの格子点で確定される単位立方体を内分する多面体に応じて定まるものであり、立方格子を対象とする場合、最小で４個、最大で８個である。
【００１５】
たとえば、入力３要素のデータからなる格子体を構成し、入力３要素の上位ビットからいずれの格子体に該当データが含まれるかを決定し、その中をさらに６つの４面体に分割し、入力３要素の下位ビットからいずれの４面体に該当データが含まれるかを決定し、４面体頂点から得られる基礎データとその４面体ごとに決められた乗数とをもとに演算する手法が、テトラ・ハイドラ補間演算（４面体補間演算）である。この場合、入力データが決まれば、必要となる４面体が一意に決まり、４面体を決めるには互いに交差しない２つの線分から得られる合計４頂点があればよい。
【００１６】
一方、補間処理においては、近傍の何点のデータを演算対象とするかによって出力値の補間精度が異なる。より多くのデータを補間演算の対象にすれば補間精度は向上する。ただし、多くのデータを用いる場合は補間回路の規模が大きくなり、回路削減の効果が小さくなってしまう。
【００１７】
この問題を解消する一手法として、特許文献１には、ＬＵＴに保持するデータ量と補間に用いるデータの個数とを効率的に規定する方法が提案されている。特許文献１に記載の方法は、先ず、入力３要素のデータからなる格子体（単位立方体）を構成し、入力３要素の上位のビットデータＲＨ，ＧＨ，ＢＨに基づいて何れの格子体に該当データが含まれるかを決定し、その中をさらに６つの４面体に分割し、入力３要素の下位のビットデータＲＬ，ＧＬ，ＢＬに基づいて何れかの４面体に該当データが含まれるかを決定し、４面体頂点から得られる基礎データとその４面体ごとに決められた乗数（補間係数）とに基づいて、入力値に対応する出力値をテトラ・ハイドラ法による演算で求めるというものである。
【００１８】
この特許文献１に記載の方法では、入力データが決まれば、必要となる４面体が一意に決まる。すなわち、入力Ｒ，Ｇ，Ｂの３次元ＬＵＴ上における近傍４格子点が特定される。そして、４面体を決めるには互いに交差しない２つの線分から得られる合計４頂点があればよい。これらの線分は、入力３要素うち１つの要素のそれぞれ連続する頂点を結ぶもので表すことができる。
【００１９】
この特許文献１に記載の方法を用いると、入力Ｒ，Ｇ，Ｂから任意の１色（出力色）への変換に際し、ＬＵＴへの格納データ数を１７データ×１７データ×１７データと規定した場合、ＬＵＴの容量は４９キロバイトで実現可能となり、補間処理を用いない方式における１６メガバイトと比較すると大幅な容量削減が可能である。
【００２０】
【発明が解決しようとする課題】
しかしながら、特許文献１に記載の方法では、１つの画素に対する色空間変換の処理時間として割り当てられている時間が非常に短時間である場合、ＬＵＴとして用いられるメモリから複数のデータを複数回読み出すことが不可能であるため、同容量のメモリを補間演算所用データ数の分だけ使用しなければならない。
【００２１】
テトラ・ハイドラ補間の場合において、ＲＧＢからＹＭＣＫへの変換を想定するとＹへの変換に４つの格子点抽出用として４個、同様にＭへの変換用に４個、Ｃへの変換用に４個、Ｋへの変換用に４個、合計１６個の同容量のメモリが必要となる。ＬＵＴへの格納データ数を上述のように１７データ×１７データ×１７データと規定した場合、全メモリ容量は７８６キロバイトになる。補間精度を重視し、８点補間を想定すると３２個もメモリが必要となり、全メモリ容量は１，５６８キロバイトにもなる。
【００２２】
一方、メモリ容量の増大もさることながら、ある単位時間に多大な数のメモリに同時アクセスするということは消費電力の増大や放射ノイズの増大をも招く。従来の方式では、補間方式を決めてしまうと、補間演算に必要となる格子点データ数も一義的に決まり、またそれに応じて同時アクセスのメモリ数も一義的に決まってしまうため、消費電力や放射ノイズを低減する有効な手段がなかった。
【００２３】
本発明は、上記事情に鑑みてなされたものであり、補間演算を利用してデータ変換を行なうに際して、補間精度を劣化させることなく、データ格納のためのメモリ容量、あるいは消費電力や放射ノイズを低減することができるデータ変換方法および装置を提供することを目的とする。
【００２４】
【課題を解決するための手段】
すなわち、本発明に係るデータ変換方法は、入力色データを出力色データに変換する際に用いられる格子点データに基づいて、入力色データの画素データごとに、当該画素データが格子点データの集合を構成する単位格子体の何れに属するのかを判定し、該当する単位格子体の中をさらに複数個の多面体に分割して画素データが何れの多面体に属するのかを判定し、該当する多面体内での補間演算により、入力された画素データに対応する出力用の画素データを決定するデータ変換方法であり、先ず、多面体に応じて規定される補間演算所用データ数（つまり補間演算に必要となる基礎データの数）よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用することとした。
【００２５】
そして、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた格子点データに対応する基礎データを所定の基準に従って複数のグループに分け、グループごとに、このグループ内の複数の基礎データを複数のメモリ空間の対応するものに格納しておく。つまり、各メモリ空間ごとに、基礎データを所定の基準に従ってグループ分けし、各グループ内の個々の基礎データに対して共通のアドレスを割り当てて、各々のメモリセルに格納しておく。
【００２６】
そして、実際の補間演算に際しては、グループに対応付けられた複数の基礎データの中から、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出し、この抽出した補間演算所用データ数分の基礎データを用いて多面体内での補間演算を行なう。
【００２７】
処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出するに際しては、その処理対象の画素データが複数個の多面体のうちの何れに属するのかの判定結果を参照することが好ましい。
【００２８】
なお、本発明に係るデータ変換方法は、特に、ｋ色が３色つまり入力色空間が３次元であって、多面体が出力色信号要素である４色つまり出力色空間が４次元で、これに対応する多面体が４面体であって、４面体補間演算を行なうものに適用すると効果が高い。
【００２９】
本発明に係るデータ変換装置は、上記本発明に係るデータ変換方法を実施する装置である。すなわち、本発明に係るデータ変換装置は、入力色データを出力色データに変換する際に用いられる格子点データに基づいて、入力色データの画素データごとに、当該画素データが格子点データの集合を構成する単位格子体の何れに属するのかを判定する単位格子体判定部と、単位格子体判定部により判定された該当単位格子体の中をさらに複数個の多面体に分割して画素データが何れの多面体に属するのかを判定する多面体判定部と、多面体判定部により判定された該当多面体内での補間演算により、入力された画素データに対応する出力用の画素データを決定する補間演算処理部とを備えたデータ変換装置において、先ず、多面体に応じて規定される補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能な複数のメモリ空間を具備し、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた格子点データに対応する基礎データを格納するデータ格納部であって、基礎データを所定の基準に従って複数のグループに分け、グループごとに、このグループ内の複数の基礎データを複数のメモリ空間の対応するものに格納するデータ格納部を備える構成とした。
【００３０】
また、本発明に係るデータ変換装置は、データ格納部に格納されているグループに対応付けられた複数の基礎データの中から、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出する基礎データ抽出部を備えるとともに、補間演算処理部を、基礎データ抽出部により抽出された補間演算所用データ数分の基礎データを用いて多面体内での補間演算を行なうものとした。
【００３１】
また従属項に記載された発明は、本発明に係るデータ変換装置のさらなる有利な具体例を規定する。
【００３２】
なお、データ格納部の制御機能部分や補間演算機能部分に関してはハードウェアによらずソフトウェアにて実現することもでき、本発明に係るデータ変換装置を、電子計算機を用いてソフトウェアで実現するために好適なプログラムやこのプログラムを格納したコンピュータ読取り可能な記憶媒体も、本願の発明として抽出することが可能である。なお、プログラムは、コンピュータ読取り可能な記憶媒体に格納されて提供されてもよいし、有線あるいは無線による通信手段を介して配信されてもよい。
【００３３】
上記において、「独立に制御可能なメモリ空間」とは、データ格納部から補間演算に必要となる基礎データを読み出す際に、少なくも、各メモリ空間に対して読出アドレスを独立に設定可能であることを意味する。読出クロックも独立に設定可能であるとより好ましい。また、各メモリ空間の出力を独立にハイインピーダンス状態に設定可能なものであれば一層好ましい。
【００３４】
また、「基礎データ」とは、補間演算に必要となるデータであって、元のＬＵＴの格子点データそのものであってもよいし、これに限らず、元のＬＵＴの格子点データに対応する所定のデータであってもよい。
【００３５】
【作用】
本発明の上記構成においては、先ず、補間演算に必要となる基礎データを格納する独立制御可能なメモリ空間の数を、補間演算に必要となる基礎データの数よりも少なくする。そして、その少ないメモリ空間に対して、元のＬＵＴの格子点データあるいは格子点データに対応する多数のデータの中から、所定の規則に基づいて所定数分をグループに分けることで、各々のアドレスに複数の基礎データを対応付けてメモリ空間に格納する。
【００３６】
そして、実際の補間演算に際しては、各々のアドレスに対応付けられた複数の基礎データの中から、処理対象の画素データに対応する補間演算所用データ数分の基礎データを読み出して多面体内での補間演算を行なう。
【００３７】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
【００３８】
図１は、本発明に係るデータ変換装置の第１実施形態を示すブロック図である。このデータ変換装置１には、外部機器から、一例として、Ｒ，Ｇ，Ｂ、各８ビットの入力デジタル色分解信号が入力され、それを出力系の色成分Ｙ，Ｍ，Ｃ，Ｋの各８ビットのデータに色変換する。なお、この入力データや出力データの形式は一例に過ぎず、他の色系列であってもよいし、ビット数Ｂも“８”に限らない。
【００３９】
図示するように、第１実施形態のデータ変換装置１は、入力データに対応する色変換後の出力データを補間演算により求める際に使用される基礎データを出力色ごとに格納するデータ格納部２と、データ格納部２との間データのやり取りをしながら、出力色ごとに、入力画素データに対応する出力画素データを補間演算により求める演算処理部４とを備える。本実施形態の場合、後述するように、テトラ・ハイドラ法による補間演算を行なうので、基礎データは、元となる３次元ＬＵＴの格子点データそのものである。
【００４０】
演算処理部４は、信号処理系統として、出力系の色成分Ｙ，Ｍ，Ｃ，Ｋのそれぞれに対応するように、Ｙ信号生成部４Ｙ，Ｍ信号生成部４Ｍ，Ｃ信号生成部４Ｃ，Ｋ信号生成部４Ｋを含む。この演算処理部４は、たとえば中央演算処理装置（ＣＰＵ；Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ　）やＤＳＰ（Ｄｉｇｉｔａｌ　Ｓｉｇｎａｌ　Ｐｒｏｃｅｓｓｏｒ）で構成するとよい。
【００４１】
データ格納部２は、入力データＲ，Ｇ，Ｂに対応するように、Ｒ軸メモリ回路２Ｒ、Ｇ軸メモリ回路２Ｇ、Ｂ軸メモリ回路２Ｂの３つのメモリ空間に分けられている。そして、各メモリ回路２Ｒ，２Ｇ，２Ｂすなわち独立に制御可能な３つのメモリ空間のそれぞれには、３色の入力色信号要素で規定される３次元格子空間（３次元ＬＵＴ）の各格子点に対応づけられた格子点データに対応する基礎データが、後述（図３〜図５参照）するように、入力色の各軸ごとに所定の基準に従ってグループ化され、そのグループ内の複数の基礎データが１つのアドレス対応付けられて格納され、各軸用のルックアップテーブルＬＵＴを構成するようになっている。
【００４２】
これらメモリ回路２Ｒ，２Ｇ，２Ｂは、１つの画素に対する色空間変換の処理時間として割り当てられている時間が非常に短時間である場合にも対応可能なように、それぞれ独立にアドレス設定可能かつ読出可能に、つまり独立に読出アクセス可能に構成されている。なお、独立したリードイネーブル（Ｒｅａｄ　ｅｎａｂｌｅ　）端子ＲＥもしくはチップセレクト（Ｃｈｉｐ　Ｓｅｌｅｃｔ　）端子ＣＳを備え、読出しに必要のないメモリ回路の出力をハイインピーダンス状態に設定可能なものを使用するのがよい。
【００４３】
データ格納部２と演算処理部４との間は、演算処理部４がデータ格納部２から基礎データを読み出すためにアドレス信号などの制御信号を送るアドレスバス６、およびデータ格納部２から読み出された基礎データを演算処理部４へ送るデータバス８で接続されている。
【００４４】
アドレスバス６では、データ格納部２内の個々のメモリ空間（メモリ回路２Ｒ，２Ｇ，２Ｂ）における基礎データの読出位置を設定するアドレス信号、クロック、あるいはチップセレクト信号などの伝送が行なわれる
【００４５】
データバス８は、データ変換前の入力データを図示しない外部装置から入力するためや、変換後の出力データを同一または別の外部装置へ出力するためにも用いられる。
【００４６】
図２は、上記構成のデータ変換装置１における色データの変換に関する処理手順の概要を示したフローチャートである。
【００４７】
第１実施形態の演算処理部４は、データ格納部２に格納されている色変換用のＬＵＴ（ルックアップテーブル）の格子点データを用いて、外部機器から入力されたＲ，Ｇ，Ｂの各信号を、Ｙ，Ｍ，Ｃ，Ｋの色データに色変換する際に、テトラ・ハイドラ法（４面体補間法）を用いた補間処理を利用する。
【００４８】
このため、画像データＲ，Ｇ，Ｂが入力されると、演算処理部４は先ず、入力された８ビットのＲ，Ｇ，Ｂデジタル色分解信号を、画素ごとに、上位ｍビット（最上位ビット側から連続したｍ個）と下位ｎビット（最下位ビット側から連続したｎ個）に分割する（Ｓ１００）。そして、演算処理部４は、入力３要素の上位ｍビットのデータＲＨ，ＧＨ，ＢＨに基づいて、入力３要素のＲ，Ｇ，Ｂデータからなる３次元格子体（３次元ＬＵＴ）を構成したとき、各格子点で規定される多数の単位格子体（本例では単位立方体）のうちの何れの単位立方体に該当データが含まれるかを決定する（Ｓ１０２）。このステップＳ１００〜Ｓ１０２の処理を単位立方体判定処理という。
【００４９】
次に、演算処理部４は、該当する単位立方体の中をさらに６つの４面体に分割し（Ｓ１０４）、入力３要素の下位ｎビットのデータＲＬ，ＧＬ，ＢＬに基づいて何れの４面体に該当データが含まれるかを決定する（Ｓ１０６）。このステップＳ１０４〜Ｓ１０６の処理を４面体判定処理という。
【００５０】
次に、演算処理部４は、該当する４面体内での補間演算というテトラ・ハイドラ法（４面体補間法）により、入力値（入力された画素データ）に対応する出力値（出力すべき画素データ）を求める（Ｓ１０８）。
【００５１】
具体的には、図中右側に示すように、演算処理部４は、先ず３つのメモリ回路２Ｒ，２Ｇ，３Ｇのうち、テトラ・ハイドラ法による補間演算処理に必要となる４格子点の基礎データを抽出すべき２つのメモリを特定するアクセスメモリ特定処理を行なう（Ｓ１０８ａ）。次に、演算処理部４は、入力点を包含する基点の座標値に基づいて、アクセスメモリ特定処理にて特定された同一アドレスのデータ群における補間演算に必要な４格子点を特定し抽出する４格子点特定処理を行なう（Ｓ１０８ｂ）。なお、アクセスメモリ特定処理（Ｓ１０８ａ）と４格子点特定処理（Ｓ１０８ｂ）とを纏めて、アクセスアドレス特定処理ともいう。
【００５２】
演算処理部４は、アクセスメモリ特定処理（Ｓ１０８ａ）および４格子点特定処理（Ｓ１０８ｂ）と並行して、該当する４面体について、４面体頂点から得られる４つの基礎データ（本例では元の格子点データそのもの）に対する重み係数（乗算係数）である補間係数を算出する補間係数算出処理を行なう（Ｓ１０８ｃ）。そして、演算処理部４は、該当する４面体について、４格子点特定処理（Ｓ１０８ｂ）により得られた基礎データ（格子点データ）と補間係数算出処理（Ｓ１０８ｃ）により得られた補間係数とに基づいて、入力値に対応する出力値Ｄｏｕｔを求める補間演算処理を行なう（Ｓ１０８ｄ）。
【００５３】
演算処理部４は、上記の一連の処理を、出力色であるＹ，Ｍ，Ｃ，Ｋのそれぞれについて（Ｓ１１２）、全画素について（Ｓ１００）行なうことで、入力されたＲＧＢ色空間の色データをＹＭＣＫ色空間のデータに変換する。
【００５４】
図３〜図５は、出力値の代表値である格子点データを構成するＬＵＴを説明する図である。ここでは、Ｒ，Ｇ，Ｂの各軸について、１７×１７×１７＝４９１３個の格子点について、それぞれ対応する変換後のデータを代表値として格納した３次元ＬＵＴを元の格子点データとする場合で説明する。本実施形態のデータ格納部２は、入力された色信号Ｒ，Ｇ，Ｂに対応する同容量の３つのメモリ空間に、同じ格子点データを持つ。このため、図１に示したように、Ｒ，Ｇ，Ｂの各軸に対応するメモリ回路２Ｒ，２Ｇ，２Ｂが設けられている。
【００５５】
図３〜図１０の各（Ａ）は、ＲＧＢ３次元空間の一部を記したものである。また、図３〜図１０の各（Ｂ）は、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂのメモリ空間上におけるアドレスと基礎データの関係、すなわち各軸のＬＵＴを示す。なお、図３〜図１０の各（Ｂ）における表の下部に示した「２次元アドレスの場合のアドレス」の使用方法については、第３実施形態（図１８参照）や具体的回路構成の第２例（図２０参照）や第３例（図２１参照）で説明する。
【００５６】
従来技術では、丸で示す格子点位置それぞれ出力値の代表値がＬＵＴとして格納されており、その個々の格子点位置が格子点データを格納するメモリ上のアドレスとなっていた。つまり、前述したように４９１３個のアドレスが定義されていた。一方、本実施形態では、１つのアドレスに複数の基礎データ（本例では格子点データそのもの）を対応付けてグループ単位で格納（マッピング）する。
【００５７】
つまり、任意のアドレスが設定されると、そのアドレスに対応付けて登録されているグループ内の複数の基礎データを纏めてパッキングデータとして出力するようにする。ここで、「複数の基礎データを纏めてパッキングデータとして出力する」とは、複数の基礎データをほぼ同時に並列的に出力することに限らず、その複数の基礎データを時系列的に逐次出力することも含む。どのような形態で複数の基礎データを出力するかは、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂの構成や読出回路の構成による。
【００５８】
たとえば、図３（Ａ）に示すように、Ｒ軸方向の基礎データを軸に平行に沿って複数のグループに分けて（一塊りにして）Ｒ軸メモリ回路２Ｒに格納することでＲ軸用のＬＵＴを構成する。太線は基礎データがグループに分けられている（一塊りになっている）ことを示している。つまり、任意のＧＨ，ＢＨの組合せで基礎データ（本例では格子点データそのもの）がアドレスされ、１つのアドレスには１７格子分の基礎データを保持していることになる。Ｒ軸メモリ回路２Ｒ上におけるアドレスと基礎データの関係であるＲ軸ＬＵＴを図３（Ｂ）に示す。
【００５９】
同様に、図４（Ａ）に示すように、Ｇ軸メモリ回路２ＧにはＧ軸方向の基礎データを軸に平行に沿って複数のグループに分けて（一塊りにして）格納することでＧ軸用のＬＵＴを構成する。太線は基礎データがグループに分けられている（一塊りになっている）ことを示している。ここでは任意のＲＨ，ＢＨの組合せでデータはアドレスされ、１つのアドレスには１７格子点分の基礎データを保持している。メモリ上におけるアドレスと基礎データの関係であるＢ軸ＬＵＴを図４（Ｂ）に示す。
【００６０】
同様に、図５（Ａ）に示すように、Ｂ軸メモリ回路２ＢはＢ軸方向の基礎データを軸に平行に沿って複数のグループに分けて（一塊りにして）格納することでＢ軸用のＬＵＴを構成する。太線は基礎データがグループに分けられている（一塊りになっている）ことを示しており、ここでは任意のＲＨ，ＧＨの組合せでデータはアドレスされ、１つのアドレスには１７格子点分の基礎データを保持している。メモリ上におけるアドレスと基礎データの関係であるＢ軸ＬＵＴを図５（Ｂ）に示す。
【００６１】
演算処理部４における補間処理の際には、メモリ回路２Ｒ，２Ｇ，２Ｂ内に纏めて保持されている上述のようなデータ列の中から、入力データに適合する２つの基礎データを読み出す。この方式を用いると、入力データＲ，Ｇ，Ｂからある１色への変換に際し、ＬＵＴの容量は４９キロバイトで実現可能となり、補間処理を用いない方式における１６メガバイトと比較すると大幅な容量削減が可能であるというテトラ・ハイドラ法の利点を享受できるとともに、使用するメモリ数（メモリ空間数）や同時に読出アクセスするメモリ数を従来構成のものよりも削減することが可能となる。
【００６２】
図６は、演算処理部４における単位立方体判定処理（図２のステップＳ１００〜Ｓ１０２）を説明する図であって、出力値の代表値である格子点データを構成する元の３次元ＬＵＴと入力データとの関係を説明する図である。ここで図６（Ａ）は、ＬＵＴの３次元空間での概念図を示し、図６（Ｂ）は、各８ビットのＲＧＢ入力信号とそれぞれの信号の上位４ビット信号が対応する３次元ＬＵＴ上での位置関係を示す。
【００６３】
図６（Ａ）に示すように、Ｒ，Ｇ，Ｂの各軸における取り得る値の範囲を複数に分割する。ここでは各軸を１６に分割した例を示している。このような分割によって得られる格子点をアドレスとし、その格子点における変換後の値（代表値）を対応付けることによってＬＵＴを構成する。したがって、この例では、１７×１７×１７＝４９１３個の格子点について、それぞれ対応する変換後のデータを代表値として格納した３次元ＬＵＴを作成することができる。
【００６４】
演算処理部４は、入力された８ビットのＲ，Ｇ，Ｂデジタル色分解信号を上位ｍビット（最上位ビット側から連続したｍ個）と下位ｎビット（最下位ビット側から連続したｎ個）に分割する。たとえば、演算処理部４は、ｍ＝ｎ＝４とし、入力されたＲ，Ｇ，Ｂを、それぞれ上位４ビットのＲＨ，ＧＨ，ＢＨと下位４ビットのＲＬ，ＧＬ，ＢＬに分割する。もちろん、ｍ，ｎは、これ以外であってもかまわない。なお、“ｍ＋ｎ”は、入力データのビット数８と等しいことが好ましい。
【００６５】
図６（Ｂ）に示すように、上位４ビットデータの組合せ値で形成される単位立方体の中に、任意の入力Ｒ，Ｇ，Ｂの８ビットデータ（入力画素データ）の組合せ値の空間位置Ｐ２２が包含されるので、上位の４ビットデータＲＨ，ＧＨ，ＢＨで示す空間位置Ｐ２１を基点とした単位立方体（単位格子体）で入力８ビットデータを包含する単位立方体を特定することが可能となる。
【００６６】
単位立方体を構成する各頂点は、空間位置Ｐ２１を基準に生成可能である。すなわち、（ＲＨ，ＧＨ，ＢＨ）を基点として、（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ＋１，ＢＨ＋１）　，（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）が、この単位立方体の頂点の座標となる。本実施形態の場合には、これらの頂点の座標は、元ととなる３次元ＬＵＴの格子点の座標に一致する。
【００６７】
演算処理部４は、この入力Ｒ，Ｇ，Ｂの８ビットデータの組合せ値に対応する出力値を、近傍の格子点データを、つまり、図６（Ｂ）に示す単位立方体の頂点の座標のデータを基礎データとして使って、テトラ・ハイドラ法（４面体補間法）により求める。
【００６８】
図７は、演算処理部４における４面体判定処理（図２のステップＳ１０４〜Ｓ１０６）を説明する図である。先にも述べたように、本実施形態の演算処理部４は、入力デジタル色分解信号Ｒ，Ｇ，Ｂの組合せ値に対応する出力信号ＹＭＣＫのそれぞれを、データ格納部２に格納されている基礎データ（格子点データ）に基づいてテトラ・ハイドラ法による補間演算により求める。
【００６９】
図７は、入力データが包含される単位立方体と、この単位立方体を６つに分割して得られる４面体との関係を示している。図６（Ｂ）に示した単位立方体は、さらに図７に示すように、同体積の６つの単位４面体に分割可能である。
【００７０】
入力Ｒ，Ｇ，Ｂの空間位置Ｐ２２がどの４面体に包含されるかは、下位のビットデータＲＬ，ＧＬ，ＢＬの大小関係から、図７下部に示す表１のように特定可能である。また、データ選択部１６がアクセスすべきＬＵＴとアクセスアドレスも、表１のように特定可能である。
【００７１】
なお、表１において、Ｘ，Ｙ，Ｚは３次元の入力データを一般化して示したものであり、本実施形態では、Ｘ＝Ｒ，Ｙ＝Ｇ，Ｚ＝Ｂである。基点Ａ，Ｂに示す“１７”は３次元ＬＵＴの各軸を分割して得られる格子点数である。この表１は、入力ＲＧＢが各８ビットであり、出力がＹＭＣＫであり、１色当りその上位４ビット分に相当する１７×１７×１７＝４９１３個のデータでＬＵＴを構成する場合のアクセスアドレス算出式を記したものである。
【００７２】
たとえば、下位ビットデータＲＬ，ＧＬ，ＢＬがＲＬ≧ＧＬ≧ＢＬの関係であるとき、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体１に属する。ＲＬ＞ＢＬ＞ＧＬの関係であるとき、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体２に属する。ＢＬ≧ＲＬ＞ＧＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ＋１，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体３に属する。
【００７３】
同様に、ＢＬ＞ＧＬ≧ＲＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ，ＢＨ＋１），（ＲＨ，ＧＨ＋１，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体４に属する。ＧＬ≧ＢＬ＞ＲＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ＋１），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体５に属する。ＧＬ＞ＲＬ≧ＢＬの関係であるときは、入力Ｒ，Ｇ，Ｂは（ＲＨ，ＧＨ，ＢＨ），（ＲＨ，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ），（ＲＨ＋１，ＧＨ＋１，ＢＨ＋１）を頂点とした４面体６に属する。
【００７４】
演算処理部４は、このような判定（４面体判定）を行なうことにより、入力Ｒ，Ｇ，Ｂの３次元ＬＵＴ上における近傍４格子点を特定する。すなわち、先ず、下位ビットデータＲＬ，ＧＬ，ＢＬに基づいて入力データの属する４面体を特定する。この結果を受けて、特定された４面体に対応する２つのＬＵＴを特定し、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨと図７の表１に示したアドレス計算式に従って前記２つのＬＵＴへのアクセスアドレスを算出する。そして、演算処理部４は、前記２つのＬＵＴの前記求めたアクセスアドレスから各々２つの基礎データを抽出することで、近傍４格子点の基礎データを取得する。
【００７５】
図８は、演算処理部４における出力値算出処理（図２のステップＳ１０８）の第１段階の処理であるアクセスメモリ特定処理（Ｓ１０８ａ）と４格子点特定処理（Ｓ１０８ｂ）を説明する図であって、単位立方体を分割して得られる各４面体の形状と、それを構成する頂点の関係を示した図である。４面体１は、α、α’、β、β’の頂点から構成される。ここで、αとα’は、ＧおよびＢ座標上では同じ空間位置であり、図３に示したＲ軸ＬＵＴから一括で抽出することが可能である。一方、残りのβおよびβ’はＲおよびＧ座標上では同じ空間位置であり、図４に示したＢ軸ＬＵＴから一括で抽出することが可能である。
【００７６】
同様にして、４面体２の場合は、Ｒ軸ＬＵＴとＧ軸ＬＵＴから所望の基礎データが得られる。４面体３の場合は、Ｂ軸ＬＵＴとＧ軸ＬＵＴから所望の基礎データが得られる。４面体４の場合は、Ｂ軸ＬＵＴとＲ軸ＬＵＴから所望の基礎データが得られる。４面体５の場合は、Ｇ軸ＬＵＴとＲ軸ＬＵＴから所望の基礎データが得られる。４面体６の場合は、Ｇ軸ＬＵＴとＢ軸ＬＵＴから所望の基礎データが得られる。
【００７７】
そこで、演算処理部４は、４面体判定処理の判定結果を受けて、図７の表１に示した選択条件に従って、３つのメモリ回路２Ｒ，２Ｇ，２Ｂの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを抽出すべき２つのメモリ（つまり４格子点を含むデータ群を格納した２つのＬＵＴ）を特定するアクセスメモリ特定処理を行なう。
【００７８】
具体的には、演算処理部４は、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨつまり図６（Ｂ）の基点Ｐ２１の座標値と図７の表１に示したアクセスアドレス式とに従って前記２つのＬＵＴへのアクセスアドレスを算出することでテトラ・ハイドラ法による補間演算に必要となる４格子点を含むデータ群を特定する。この後、演算処理部４は、入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）に基づいて、同一アドレスのデータ群における、テトラ・ハイドラ法による補間演算に必要となる４格子点を特定し抽出する４格子点特定処理を行なう。
【００７９】
図９〜図１５は、具体的なＬＵＴアクセスの例を説明する図である。ここで、図９は、入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。図１０〜図１５は、それぞれ対応する４面体の頂点とＬＵＴのデータ構造の相関を示した図である。
【００８０】
図９において、格子点の数をＲ，Ｇ，Ｂそれぞれに３個、合計で３×３×３＝２７個のデータに簡略化して示す。任意の各々８ビットのＲＧＢ値（入力データ）が示す３次元空間上での位置が図９の位置Ｐ１２１であるとする。この場合、入力値の上位４ビット値から入力点が包含される立方体の１つの頂点は図９の位置Ｐ１２２に定まる。座標値は、（ＲＨ，ＧＨ，ＢＨ）＝（０，１，０）であり、この位置Ｐ１２２を基点座標と定義する。
【００８１】
以下、この入力点が単位立方体中の６つの４面体それぞれに属す場合に分けてＬＵＴアクセスを説明する。図示した例では、入力位置Ｐ１２１は、３次元ＬＵＴのデータ群のうち、基点Ｐ１２２（０，１，０）で定まる“３，４，６，７，１２，１３，１５，１６”のデータの座標位置で囲まれた単位立方体の中に包含される。
【００８２】
演算処理部４は、上位４ビットデータの組合せ値の空間位置Ｐ２１を基点にして該当する単位立方体の各頂点の基礎データ（格子点データ）の中から、処理対象画素に対応する４個の基礎データを抽出する。
【００８３】
たとえば、入力点が図１０に示す頂点で構成される４面体１に属すると判定された場合は、演算処理部４は、Ｒ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）とＢ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）にアクセスして、αとα’をＲ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）から、βとβ’をＢ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）から抽出する。
【００８４】
具体的には、演算処理部４は、図７の表１の基点Ａに基づき、Ｒ軸ＬＵＴへのアクセスアドレスＡＤＲをＧＨ＋３ＢＨで算出する。ここではアクセスアドレスＡＤＲは“１”であり、そのアドレス１のデータ群を抽出する。次に、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＲ軸成分は“０”なので、データ群中の０番目（３）と１番目（４）が所望の基礎データであると決定する。ここでは、図１０における表の下部に示した「２次元アドレスの場合のアドレス」で示す０番目（３）の基礎データをα、１番目（４）の基礎データをα’とする。
【００８５】
同様に、演算処理部４は、図７の表１に基づき、Ｂ軸ＬＵＴへのアクセスアドレスＡＤＢを（ＲＨ＋１）＋３（ＧＨ＋１）で算出する。ここではアクセスアドレスＡＤＲは“７”であり、そのアドレス７のデータ群を抽出する。次に、演算処理部４は、抽出したデータ群のうち、基点座標Ｐ１２２（０，１，０）のＢ軸成分は“０”なので、データ群中の０番目（７）と１番目（１６）が所望の基礎データであると決定する。ここでは、０番目（７）の基礎データをβ、１番目（１６）の基礎データをβ’とする。
【００８６】
こうすることで、演算処理部４は、４面体補間演算に必要となる所望の４点のデータを抽出することができる。演算処理部４は、このようにして抽出した４点のデータを、それぞれＤ１＝α，Ｄ２＝α’，Ｄ３＝β，Ｄ４＝β’とする。
【００８７】
なお、他の４面体に属する場合も、演算処理部４は、図７の表１に基づいてアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢを計算して、計算したそれぞれ２つのＬＵＴにアクセスしてデータ群を抽出し、この抽出したデータ群の中から、基点座標に準じた所望の２つの基礎データを２つのＬＵＴごとに抽出する。
【００８８】
たとえば、図１１に示すように、入力点が４面体２に属する場合は、演算処理部４は、Ｒ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）のアクセスアドレスＡＤＲ（ＧＨ＋３ＢＨ＝１）から基点座標Ｐ１２２（０，１，０）に対応する０番目（３）の基礎データをα、１番目（４）の基礎データをα’として抽出する。同様に、演算処理部４は、Ｇ軸ＬＵＴ（Ｇ軸メモリ回路２Ｇ）のアクセスアドレスＡＤＧ（（ＲＨ＋１）＋３（ＢＨ＋１）＝４）から基点座標Ｐ１２２（０，１，０）に対応する１番目（１３）の基礎データをβ、２番目（１６）の基礎データをβ’とする。
【００８９】
図１２に示すように、入力点が４面体３に属する場合は、演算処理部４は、Ｂ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）のアクセスアドレスＡＤＢ（ＲＨ＋３ＧＨ＝３）から基点座標Ｐ１２２（０，１，０）に対応する０番目（３）の基礎データをα、１番目（１２）の基礎データをα’として抽出する。同様に、演算処理部４は、Ｇ軸ＬＵＴ（Ｇ軸メモリ回路２Ｇ）のアクセスアドレスＡＤＧ（（ＲＨ＋１）＋３（ＢＨ＋１）＝４）から基点座標Ｐ１２２（０，１，０）に対応する１番目（１３）の基礎データをβ、２番目（１６）の基礎データをβ’とする。
【００９０】
図１３に示すように、入力点が４面体４に属する場合は、演算処理部４は、Ｂ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）のアクセスアドレスＡＤＢ（ＲＨ＋３ＧＨ＝３）から基点座標Ｐ１２２（０，１，０）に対応する０番目（３）の基礎データをα、１番目（１２）の基礎データをα’として抽出する。同様に、演算処理部４は、Ｒ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）のアクセスアドレスＡＤＲ（（ＧＨ＋１）＋３（ＢＨ＋１）＝５）から基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをβ、１番目（１６）の基礎データをβ’とする。
【００９１】
図１４に示すように、入力点が４面体５に属する場合は、演算処理部４は、Ｇ軸ＬＵＴ（Ｇ軸メモリ回路２Ｇ）のアクセスアドレスＡＤＧ（ＲＨ＋３ＢＨ＝０）から基点座標Ｐ１２２（０，１，０）に対応する１番目（３）の基礎データをα、２番目（６）の基礎データをα’として抽出する。同様に、演算処理部４は、Ｒ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）のアクセスアドレスＡＤＲ（（ＧＨ＋１）＋３（ＢＨ＋１）＝５）から基点座標Ｐ１２２（０，１，０）に対応する０番目（１５）の基礎データをβ、１番目（１６）の基礎データをβ’とする。
【００９２】
図１５に示すように、入力点が４面体６に属する場合は、演算処理部４は、Ｇ軸ＬＵＴ（Ｇ軸メモリ回路２Ｇ）のアクセスアドレスＡＤＧ（ＲＨ＋３ＢＨ＝０）から基点座標Ｐ１２２（０，１，０）に対応する１番目（３）の基礎データをα、２番目（６）の基礎データをα’として抽出する。同様に、演算処理部４は、Ｂ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）のアクセスアドレスＡＤＢ（（ＲＨ＋１）＋３（ＧＨ＋１）＝７）から基点座標Ｐ１２２（０，１，０）に対応する０番目（７）の基礎データをβ、１番目（１６）の基礎データをβ’とする。
【００９３】
図１６に示す表２は、演算処理部４における出力値算出処理（図２のステップＳ１０８）の第２段階の処理である補間係数算出処理（Ｓ１０２ｃ）と補間演算処理（Ｓ１０２ｄ）を説明する図である。この表２は、テトラ・ハイドラ法による補間演算にて必要となる補間係数の算出式を示している。表２から分かるように、６つの４面体ごとに計算式が異なる。
【００９４】
演算処理部４は、４面体判定処理（図２のステップＳ１０４〜Ｓ１０６）の結果を受けて、図１６の表２に基づき、入力値が包含される４面体に応じて補間係数の算出に用いる式を切り替え、その入力値が包含される４面体ごとに定められた計算式に従って、その４面体を構成する４格子点と下位ビットデータＲＬ，ＧＬ，ＢＬとに基づいて補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を算出する。この４面体補間演算処理は、従来のデータ変換装置における処理と同様である。
【００９５】
そして、演算処理部４は、公知の４点補間演算を用いて、このようにして求めた補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４と第１段階の４格子点特定処理により抽出した入力点に対応する４面体頂点の基礎データ（元々は格子点データ）Ｄ１，Ｄ２，Ｄ３，Ｄ４とに基づいて最終出力値Ｄｏｕｔを算出するというテトラ・ハイドラ法による補間演算処理を行なう。たとえば、次式（１）に従って、最終出力値Ｄｏｕｔを算出する。なお、式（１）では１次式補間で出力値を求めているが、これに限らず、２次式やその他の高次の補間演算式を利用してもよい。
【数１】
2004112523.tif 000003
【００９６】
この第１実施形態の構成によれば、入力データに対応する出力データを４面体補間演算により求めるに際して、格子点データ保持用のメモリ（空間）の数を、４面体補間演算に必要となる４頂点に相当する４個ではなく３個で構成したので、結果的に、同じデータのメモリを４倍持つ必要がなく３倍ですむため、同じ機能を達成するために必要なメモリの総容量が従来の３／４になる。
【００９７】
つまり、従来は、同容量の独立駆動可能なメモリ（空間）を補間演算所用データ数だけ備える必要があったのと異なり、補間演算に必要となる格子点データ数とメモリ空間の数を同じにしなければならないという従来の制約から開放され、たとえば、４点補間の場合は、格子点データ保持用のメモリを４倍持つ必要がなく４倍未満（たとえば３倍）で済むなど、同じ機能を達成するために必要なメモリの総容量や独立制御可能なメモリ空間数を低減することができる。加えて、同時アクセスのメモリ空間数を低減することができるので、消費電力や放射ノイズを低減することもできる。
【００９８】
たとえば、従来は１つの補間演算用データを抽出するために１７×１７×１７個、つまり４，１９３バイト必要であり、４点補間の場合は同時に４格子点のデータを抽出するために、その４倍、つまり、４９１３バイト×４個＝１９，６５２バイトを必要とした。しかし、本実施形態の構成では、その４分の３の容量のメモリで同時に４格子点のデータを抽出することが可能となる。
【００９９】
補間演算回路は、従来の構成とほぼ同様のものを使用することができるので、全体としての回路変更はメモリ回路周りだけとなるので、上記構成の実回路への適用も容易である。
【０１００】
図１７は、本発明に係るデータ変換装置の第２実施形態を示すブロック図である。この第２実施形態の構成は、Ｒ，Ｇ，Ｂの３次元入力の場合における上述の補間演算をリアルタイムで高速に行なうようにした具体的な回路構成の第１例を示すものである。
【０１０１】
図示するように、第２実施形態の演算処理部４におけるＹ信号生成部４Ｙは、第１実施形態の演算処理部４における単位立方体判定処理（図２のステップＳ１００〜Ｓ１０２）およびアクセスメモリ特定処理（同Ｓ１０８ａ）を実行するアドレス生成部１０と、４面体判定処理（同Ｓ１０４〜Ｓ１０６）を実行する４面体判定部１４と、４格子点特定処理（Ｓ１０８ｂ）を実行するデータ選択部１６と、補間係数算出処理（Ｓ１０８ｃ）を実行する補間係数生成部２０と、補間演算処理（Ｓ１０８ｄ）を実行する補間処理部２２とを備える。
【０１０２】
アドレス生成部１０は、本発明の単位格子体判定部とアドレス設定部の両機能を備える。また、４面体判定部１４は、本発明の単位格子体判定部の一例である。また、データ選択部１６は、本発明の基礎データ抽出部の一例である。また、補間係数生成部２０と補間処理部２２とにより、本発明の補間演算処理部が構成される。
【０１０３】
なお、図では省略して示しているが、Ｍ信号生成部４Ｍ、Ｃ信号生成部４Ｃ、およびＫ信号生成部４Ｋも、Ｙ信号生成部４Ｙと同様の構成となっている。
【０１０４】
アドレス生成部１０は、画像データＲ，Ｇ，Ｂが入力されると、その入力データＲ，Ｇ，Ｂを上位ビットデータＲＨ，ＧＨ，ＢＨ（本例では上位４ビット；纏めてＤＨとする）と下位ビットデータＲＬ，ＧＬ，ＢＬ（本例では下位４ビット；纏めてＤＬとする）に分割し、その内の上位４ビットのデータＤＨに基づいて、図６（Ｂ）や図９に示したように、３次元ＬＵＴにおける入力点が包含される単位立方体の位置Ｐ２２（図９の基点Ｐ１２２に相当）を特定し、この単位立方体を特定する基点を示す座標情報（ＲＨ，ＧＨ，ＢＨ）をデータ選択部１６に入力する。
【０１０５】
また、アドレス生成部１０は、分割したデータの内の下位ビットデータＤＬを４面体判定部１４と補間係数生成部２０とに入力する。４面体判定部１４は、アドレス生成部１０から入力された下位ビットデータＤＬに基づいて、単位立方体を分割する６つの４面体のうちの入力値が含まれる４面体を特定し、この特定した４面体を示す情報を判定結果として、アドレス生成部１０、データ選択部１６、および補間係数生成部２０に入力する。
【０１０６】
アドレス生成部１０は、４面体判定部１４による４面体判定処理結果を受けて、図７の表１に示した選択条件に従って、３つのメモリ回路２Ｒ，２Ｇ，２Ｂの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを抽出すべき２つのメモリを特定し、Ｒ軸読出クロックＣＫＲ，Ｇ軸読出クロックＣＫＧ，Ｂ軸読出クロックＣＫＢを独立に制御する（具体的には、読出アクセス読出な回路へのリードクロックを停止する）。これは、ある単位時間に多大な数のメモリに同時アクセスするということは消費電力の増大、放射ノイズの増大をも招き、環境の観点からも改善が望まれるからである。
【０１０７】
すなわち、本実施形態の構成では、処理対象の画素データについて同時に読出アクセスすべき、補間演算に必要となる４格子点の基礎データを含むメモリ回路は、３つのメモリ回路のうちの何れか２つであるので、メモリ数を従来の４つから３つに低減したことによる消費電力や放射ノイズの低減効果に加えて、同時アクセス不要なメモリ回路へのリードクロックの供給を停止することで、消費電力や放射ノイズをなお一層低減する。
【０１０８】
また、アドレス生成部１０は、入力データを包含する単位立方体を特定する上位ビットデータＲＨ，ＧＨ，ＢＨつまり図６（Ｂ）の基点Ｐ２１の座標値と図７の表１に示したアクセスアドレス式とに従って算出したアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢを、アクセスすべきメモリ回路ごとに設定する。こうすることで、メモリ回路からのデータ読出時には、３つのメモリ回路２Ｒ，２Ｇ，２Ｒのうち、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含むメモリ回路のみがアクティブになり、そのアクティブなメモリ回路に設定されたアドレスから一群のデータ（パッキングデータＰＲ，ＰＧ，ＰＲのうちの任意の２組）がデータ選択部１６に入力されるようになる。
【０１０９】
たとえば、メモリ回路２Ｒ，２Ｇ，２Ｂとして、１つのアドレスが設定されると、それに対応する複数のデータを並列的に出力可能なものを使用する。そして、アドレス入力に対しては、アクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢを設定する。たとえば、図３〜図１０の各（Ｂ）にて、アドレス欄の値をアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢに設定することで、各メモリ回路２Ｒ，２Ｇ，２Ｇからは、基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する２つの基礎データを含む一群のデータの全てが並列的に出力される。
【０１１０】
また、アドレス生成部１０は、各メモリ回路のチップセレクト端子ＣＳへの入力であるＲ軸メモリ制御信号ＣＴＲ，Ｇ軸メモリ制御信号ＣＴＧ，Ｂ軸メモリ制御信号ＣＴＢを独立に制御する（具体的には、ロー／ハイに切り替える）ことで、同時読出しが必要な２つのメモリ回路をアクティブに、不要な１つのメモリ回路をインアクティブ（ハイインピーダンス状態）にする。こうすることで、消費電力の低減を図ることができるとともに、メモリ回路の後段の回路をコンパクトにすることもできる。
【０１１１】
次に、データ選択部１６は、上位４ビットデータの組合せ値の空間位置Ｐ２１を基点にして該当する単位立方体の各頂点のデータ（格子点データ）の中から必要なものを抽出する。たとえば、データ選択部１６は、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含むメモリのみから入力された所定アドレスのデータ群すなわちパッキングデータＰＲ，ＰＧ，ＰＲのうちの任意の２組をデータ格納部２から受け取ると、４面体判定部１４による４面体判定処理結果とアドレス生成部１０からの入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）とに基づいて、２組のパッキングデータの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データＤ１，Ｄ２，Ｄ３，Ｄ４を抽出し、この抽出した４つのデータＤ１，Ｄ２，Ｄ３，Ｄ４を補間処理部２２に入力する。
【０１１２】
なお、図１０〜図１５から分かるように、メモリから出力されたパッキングデータＰＲ，ＰＧ，ＰＢのうちの２つに含まれるデータ（α，α’とβ，β’）が、Ｄ１，Ｄ２，Ｄ３，Ｄ４の何れに対応するのかは、入力点の属する４面体によって異なる。データ選択部１６は、入力値に対応する所用の２つのメモリから入力されたパッキングデータＰＲ，ＰＧ，ＰＢのうちの２つに含まれるデータ（α，α’とβ，β’）が、補間演算処理におけるＤ１，Ｄ２，Ｄ３，Ｄ４の何れとすべきかを、４面体判定部１４による４面体判定処理結果に基づいて図７の表１に示した選択条件に従って判断する。
【０１１３】
これと並行して、補間係数生成部２０は、４面体判定部１４による４面体判定処理の結果を受けて、図１６の表２に基づき、６つの４面体のうち入力値が包含される４面体に応じた計算式に従って、その４面体を構成する４格子点と下位ビットデータＲＬ，ＧＬ，ＢＬとに基づいて補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を算出し、算出した補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４を補間処理部２２に入力する。
【０１１４】
補間処理部２２は、公知の４点補間演算を用いて、補間係数生成部２０から入力された補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４とデータ選択部１６から入力されたデータＤ１，Ｄ２，Ｄ３，Ｄ４（４頂点の基礎データ）とに基づいて最終出力値Ｙ，Ｍ，Ｃ，Ｋを、それぞれ算出する。
【０１１５】
この第２実施形態の構成によれば、ＬＵＴと補間演算を用いたデジタル色分解信号から他の色成分のデジタル色分解信号への変換を行なう際にテトラ・ハイドラ法を用いる場合は、従来は４つのメモリを必要としていたものが、第１実施形態と同様に、３つのメモリで４面体補間演算処理を実現することができる。また、パッキングした基礎データの中から所望の基礎データを抽出するための付加回路の規模はさほど大きくないので、補間回路の規模や複雑さを増すことなく、データ変換装置１を実現することができる。
【０１１６】
加えて、従来は補間演算に用いられるデータを抽出する際に１色の出力値の算出につき４つのメモリにアクセスする必要があったが、本実施形態の構成によれば、メモリのチップセレクト端子ＣＳ（もしくはリードイネーブル端子ＲＥ）を制御することで、３つのメモリ回路２Ｒ，２Ｇ，３Ｇのうち、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含むメモリのみをアクティブにするので、従来の半分の２つのメモリにアクセスするだけでよく、システムの消費電力や放射ノイズを低減することもできる。
【０１１７】
すなわち、ＬＵＴと補間演算を用いたデジタル色分解信号から他の色成分のデジタル色分解信号への変換を行なう際に、少ないメモリ資源で色データ変換を実現することができるという効果がある。また、従来は補間演算に用いられるデータを抽出する際に１色の出力値の算出につき４つのメモリに同時にアクセスする必要があったが、本実施形態の構成では半分の２つだけでよく、システムの消費電力や放射ノイズの低減効果もある。
【０１１８】
図１８は、本発明に係るデータ変換装置の第３実施形態を示すブロック図である。この第３実施形態の構成の基本は第２実施形態のものと同じである。第２実施形態の構成との相違点は、第２実施形態のデータ選択部１６を備えておらず、このデータ選択部１６の機能をアドレス生成部１０が兼用する構成としている点にある。つまり、第３実施形態のアドレス生成部１０は、本発明の基礎データ抽出部の機能も備える。
【０１１９】
この変更に応じて、４面体判定部１４は、アドレス生成部１０から入力された下位ビットデータＤＬに基づいて、単位立方体を分割する６つの４面体のうちの入力値が含まれる４面体を特定し、この特定した４面体を示す情報を判定結果として、アドレス生成部１０、補間係数生成部２０、およびに補間処理部２２に入力する。すなわち、３次元ＬＵＴにおける入力点が包含される単位立方体の位置を特定し、その情報をデータ選択部１６に伝える。
【０１２０】
また、第３実施形態のメモリ回路２Ｒ，２Ｇ，２Ｂは、アドレス生成部１０により設定されたアドレスＡＤＲ，ＡＤＧ，ＡＤＢごとに一群の全データを纏めてパッキングデータＰＲ，ＰＧ，ＰＲとして出力する形態のものではなく、一群のうちの任意の２つのアドレスも設定可能で、それら２つを纏めて出力可能なものを使用する。
【０１２１】
つまり、第１実施形態や第２実施形態と同様に、１つのアドレスＡＤＲ，ＡＤＧ，ＡＤＢごとに複数の格子点データをマッピングするが、読出しに際しては、テトラ・ハイドラ法による補間演算に必要となる４格子点を含む各軸のメモリに対して、２つの基礎データ（α，α’もしくはβ，β’）のみを纏めて出力させる。
【０１２２】
具体的には、アドレス空間を２次元状に制御可能なものを使用し、一方のアドレス軸に対しては、第１実施形態や第２実施形態と同様にアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢを設定する。そして、他方のアドレス軸に対しては、Ｘ軸方向のアドレス設定のためのアクセスアドレスＡＤＸＲ，ＡＤＸＧ，ＡＤＸＢにより、入力値を包含する単位立方体を特定する基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する値を設定することで、４格子点特定処理を行なう。
【０１２３】
たとえば、図３〜図１０の各（Ｂ）にて、アドレスの欄の値をアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢに設定し、データ欄の下部に示した「２次元アドレスの場合のアドレス」のうち基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する値（０，１，…のうちの連続した２つのアドレス）をＸ軸方向のアドレス設定のためのアクセスアドレスＡＤＸＲ，ＡＤＸＧ，ＡＤＸＢに設定する。こうすることで、メモリ回路２Ｒ，２Ｇ，２Ｇのうちの２つからは、それぞれ基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する２つの基礎データが並列的に出力される。
【０１２４】
補間処理部２２は、入力値に対応する所用の２つのメモリから入力された各２つの基礎データ（α，α’とβ，β’）について、補間演算処理におけるＤ１，Ｄ２，Ｄ３，Ｄ４の何れとすべきかを、４面体判定部１４による４面体判定処理結果に基づいて図７の表１に示した選択条件に従って判断する。これは、図１０〜図１５から分かるように、メモリから出力された各２つの基礎データ（α，α’とβ，β’）が、Ｄ１，Ｄ２，Ｄ３，Ｄ４の何れに対応するのかは、入力点の属する４面体によって異なるからである。
【０１２５】
補間処理部２２は、公知の４点補間演算を用いて、補間係数生成部２０から入力された補間係数Ｗ１，Ｗ２，Ｗ３，Ｗ４と、入力値に対応する所用の２つのメモリから入力された各２つの基礎データ（α，α’とβ，β’）に対応するデータＤ１，Ｄ２，Ｄ３，Ｄ４とに基づいて最終出力値Ｙ，Ｍ，Ｃ，Ｋを、それぞれ算出する。
【０１２６】
この第３実施形態の構成によれば、第２実施形態と構成が異なるものの、基本的な作用は第２実施形態と同様である。したがって、第１実施形態と同様に、３つのメモリで４面体補間演算処理を実現することができることに加えて、メモリのチップセレクト端子ＣＳ（もしくはリードイネーブル端子ＲＥ）を制御することで、システムの消費電力や放射ノイズを低減することもできる。
【０１２７】
図１９は、データ格納部２とデータ選択部１６の具体的な構成の第１例を示すブロック図である。ここでは、上記の第１〜第３実施形態と同様に、１７×１７×１７の３次元ＬＵＴに対応するＲ軸メモリ回路２Ｒについて詳細を示し、Ｇ軸メモリ回路２ＧやＢ軸メモリ回路２Ｂについては図示を省略する。
【０１２８】
この第１例は、上記第１および第２実施形態に適用可能な構成のものであって、「処理対象の画素データに対応する基礎データを含むアドレスの全ての基礎データを纏めてパッキングデータとして読み出し、その後に、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出する」に際して、対象アドレスの全基礎データをほぼ同時に並列的にメモリ回路から出力する構成のものである。
【０１２９】
すなわち、図示するように、Ｒ軸メモリ回路２Ｒは、それぞれ８ビットの基礎データを格納するメモリセル３０が行列状に配されてＸ−Ｙアドレス型のメモリコア部が構成されている。そして、このメモリコア部に対して、Ｘ方向のアドレスを設定するＸアドレス設定回路３２と、Ｙ方向のアドレスを設定するＹアドレス設定回路３４と、所定のＹアドレスに応じた各Ｘ方向のメモリセル３０からの基礎データを受けて外部の回路（本例ではデータ選択部１６）に出力する複数の出力バッファ３６とが設けられている。メモリセル３０の出力は、Ｘアドレスごとに共通に対応する出力バッファ３６に接続されるようになっている。
【０１３０】
Ｘアドレス設定回路３２には、全てのＸアドレスをアクティブにするアドレス制御信号ＡＤＸＲが入力される。一方、Ｙアドレス設定回路３４には、アドレス生成部１０からのアクセスアドレスＡＤＲが入力される。上記実施形態で説明したように、このアクセスアドレスＡＤＲは、処理対象の画素データが含まれる４面体に応じたアドレス値が設定される。
【０１３１】
また、Ｒ軸メモリ回路２Ｒのチップセレクト端子ＣＳには、アドレス生成部１０からのＲ軸メモリ制御信号ＣＴＲが入力されており、Ｒ軸メモリ回路２Ｒは、テトラ・ハイドラ法による補間演算にこのＲ軸メモリ回路２Ｒが保持している基礎データを必要とする場合にはアクティブに設定され、不要な場合にはインアクティブに設定される。
【０１３２】
個々のメモリセル３０には基礎データを読み出すための読出クロックＣＫが入力される。本例においては、１つの読出クロックＣＫにより各メモリセル３０からパラレルでビットデータを読出し出力バッファ３６に入力する構成のものとする。なお、各メモリセル３０からシリアルでビットデータを読み出す構成としてもよい。この場合、８ビット分を読み出すためには、８個の読出クロックＣＫをメモリセル３０に入力すればよい。
【０１３３】
なお、個々のメモリセル３０としては、出力をハイインピーダンス状態（ディセーブル；ｄｉｓｅｎａｂｌｅ　）に切替設定することが可能な３ステート型のものを用いる。この３ステート型のメモリセル３０の図示しない出力イネーブル（ｅｎａｂｌｅ）端子には、Ｙアドレス設定回路３４からのアドレス設定信号がＸ方向（すなわち同一アドレスラインのメモリセル３０）に共通に印加されている。そして、メモリセル３０は、アドレス設定信号がアクティブのときには能動状態（イネーブル）となりメモリセル３０に保持している基礎データを出力バッファ３６に向けて出力する一方で、アクティブのときには出力端子がハイインピーダンス状態（ディセーブル）となる。こうすることで、後段の出力バッファ３６との間にデータセレクタを設ける必要がなく、回路構成がコンパクトになる。
【０１３４】
出力バッファ３６としては、出力をハイインピーダンス状態（ディセーブル；ｄｉｓｅｎａｂｌｅ　）に切替設定することが可能な３ステート型のものを用いる。この３ステート型の出力バッファ３６の出力イネーブル（ｅｎａｂｌｅ）端子ＯＥには、チップセレクト端子ＣＳからの出力イネーブル信号（実質的にＲ軸メモリ制御信号ＣＴＲと同じ）が印加されている。たとえば、出力バッファ３６は、イネーブル信号がハイ（Ｈｉｇｈ）のときには能動状態（イネーブル）となりメモリセル３０から受け取った基礎データをそのまま出力する一方で、ロー（Ｌｏｗ　）のときには受け取った信号状態に拘わらずハイインピーダンス状態（ディセーブル）となる。
【０１３５】
すなわち、出力バッファ３６は、Ｒ軸メモリ制御信号ＣＴＲによりＲ軸メモリ回路２Ｒがアクティブに設定されている場合には、Ｙアドレス設定回路３４により設定されたＹアドレスの全Ｘアドレスの基礎データをほぼ同時に出力しパッキングデータＰＲとしてデータ選択部１６に入力する。一方、Ｒ軸メモリ制御信号ＣＴＲによりＲ軸メモリ回路２Ｒがインアクティブに設定されている場合には、各出力バッファ３６の出力がハイインピーダンス状態に設定される。
【０１３６】
このような構成のＲ軸メモリ回路２Ｒによれば、補間演算に必要な基礎データを含む同一ライン（Ｘ方向）の複数の基礎データの全てをほぼ同時に読み出すことができるので、実際の補間演算に必要のない基礎データを読み出すことになるが、処理速度低下の問題は生じない。ただし、同時に読出アクセスするメモリセル数が増えるので、消費電力や放射ノイズのアップが懸念される。
【０１３７】
図示しない、Ｇ軸メモリ回路２ＧやＢ軸メモリ回路２Ｂも、Ｒ軸メモリ回路２Ｒと同様の構成となっており、それぞれには、対応するアクセスアドレスＡＤＧ，ＡＤＢやメモリ制御信号ＣＴＧ，ＣＴＢが入力される。
【０１３８】
また、データ選択部１６は、Ｒ軸メモリ回路２Ｒの各出力バッファ３６から出力された基礎データをそれぞれ受け取り保持する複数（ＬＴ０〜ＬＴ１６）のラッチ回路４０と、複数のラッチ回路４０の何れか２つからの基礎データを受け取り、この受け取った２つの基礎データの出力先を切り替えるデータセレクタ４２とを備えている。複数のラッチ回路４０とデータセレクタ４２とは、Ｒ軸系統、Ｇ軸系統、およびＢ軸系統の分だけ設けられる。図では、Ｇ軸系統およびＢ軸系統を省略して示しているが、Ｒ軸系統と同様の回路構成とされる。
【０１３９】
またデータ選択部１６は、Ｒ軸系統、Ｇ軸系統、およびＢ軸系統の各データセレクタ４２の一方の出力端子からの基礎データ（αまたはβ）を受け取り、その出力先を切り替えるデータセレクタ４４と、Ｒ軸系統、Ｇ軸系統、およびＢ軸系統の各データセレクタ４２の他方の出力端子からの基礎データ（α’またはβ’）を受け取り、その出力先を切り替えるデータセレクタ４６と、ラッチ回路４０およびデータセレクタ４２，４４，４６を制御する出力切替回路４８とを備えている。
【０１４０】
個々のラッチ回路４０には、ラッチクロックＬＣＫが共通に入力されており、Ｒ軸メモリ回路２Ｒからの基礎データの送出に合わせた所定のタイミングで、その基礎データを同時に取り込み保持する。なお、各メモリセル３０からシリアルでビットデータを読み出す構成とする場合、ラッチ回路４０はシリパラ変換機能を備えたものとする。
【０１４１】
また、個々のラッチ回路４０の出力イネーブル（ｅｎａｂｌｅ）端子ＯＥには、出力切替回路４８からの制御信号ＣＴ１が入力されており、複数のラッチ回路４０のうち隣接する２つの出力のみが選択的にアクティブとなるように設定される。
【０１４２】
データセレクタ４２は、２つの入力端子ＩＮ１，ＩＮ２と２つの出力端子ＯＵＴ１，ＯＵＴ２とを備え、出力切替回路４８からの制御信号ＣＴ２が入力される構成となっている。そして、ラッチ回路４０の出力のうち、偶数番目（０を含む）が入力端子ＩＮ１に入力され、奇数番目が入力端子ＩＮ２に入力されるように接続されている。
【０１４３】
データセレクタ４２は、制御信号ＣＴ２がローＬのときには入力されたデータを直列的に出力する、すなわち、入力端子ＩＮ１のデータ（ラッチ回路４０の偶数番目のデータ）を出力端子ＯＵＴ１へ、入力端子ＩＮ２のデータ（ラッチ回路４０の奇数番目のデータ）を出力端子ＯＵＴ２へ出力する一方、制御信号ＣＴ２がハイＨのときには入力されたデータを交差的に出力する、すなわち、入力端子ＩＮ１のデータを出力端子ＯＵＴ２へ、入力端子ＩＮ２のデータを出力端子ＯＵＴ１へ出力する。
【０１４４】
データセレクタ４４，４６はともに、３つの入力端子ＩＮ１，ＩＮ２，ＩＮ３と２つの出力端子ＯＵＴ１，ＯＵＴ２とを備え、出力切替回路４８からの制御信号ＣＴ３１，ＣＴ３２、ＣＴ３３がデータセレクタ４４へ、制御信号ＣＴ４１，ＣＴ４２，ＣＴ４３がデータセレクタ４６へ入力される構成となっている。
【０１４５】
データセレクタ４４，４６は、制御信号ＣＴ３１，ＣＴ３２，ＣＴ３３もしくはＣＴ４１，ＣＴ４２，ＣＴ４３の組合せ状態に応じて、３つの入力端子ＩＮ１，ＩＮ２，ＩＮ３のデータの出力先を切り替える。
【０１４６】
たとえば、制御信号ＣＴ３１（ＣＴ４１），ＣＴ３２（ＣＴ４２）により、３つの入力端子ＩＮ１，ＩＮ２，ＩＮ３のうちの２つを選択し、制御信号ＣＴ３３（ＣＴ４３）により、データセレクタ４２の制御信号ＣＴデータ格納部２と同様に、その選択した２つの出力先を決める。
【０１４７】
制御信号ＣＴ３１（ＣＴ４１），ＣＴ３２（ＣＴ４２）については、たとえば、ＣＴ３１（ＣＴ４１）＝ローＬでかつＣＴ３２（ＣＴ４２）＝ローＬのときには入力端子ＩＮ１，ＩＮ２のデータを選択し、ＣＴ３１（ＣＴ４１）＝ハイＨでかつＣＴ３２（ＣＴ４２）＝ローＬのときには入力端子ＩＮ２，ＩＮ３のデータを選択し、ＣＴ３１（ＣＴ４１）＝ローＬでかつＣＴ３２（ＣＴ４２）＝ハイＨのときには入力端子ＩＮ１，ＩＮ３のデータを選択する。
【０１４８】
そして、データセレクタ４２と略同様に、制御信号ＣＴ３３（ＣＴ４３）がローＬのときには選択したデータを直列的に出力し、制御信号ＣＴ３３（ＣＴ４３）がハイＨのときには選択したデータを交差的に出力する。
【０１４９】
出力切替回路４８には、４面体判定部１４による４面体判定処理結果とアドレス生成部１０からの入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）とが入力される。これを受けて、出力切替回路４８は、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂから入力されたパッキングデータＰＲ，ＰＧ，ＰＢの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データＤ１，Ｄ２，Ｄ３，Ｄ４をデータセレクタ４４，４６から出力させるために必要となる制御信号ＣＴ１，ＣＴ２，ＣＴ３１〜３３，ＣＴ４１〜４３を生成する。
【０１５０】
すなわち、図１０〜図１５から分かるように、各軸系統のメモリ２Ｒ，２Ｇ，２Ｂから出力されたパッキングデータＰＲ，ＰＧ，ＰＢのうちの２つに含まれるデータ（α，α’とβ，β’）が、Ｄ１，Ｄ２，Ｄ３，Ｄ４の何れに対応するのかは、入力点の属する４面体によって異なる。出力切替回路４８は、入力値に対応する所用の２つのメモリから入力されたパッキングデータＰＲ，ＰＧ，ＰＢのうちの２つに含まれるデータ（α，α’とβ，β’）について、補間演算処理におけるＤ１，Ｄ２，Ｄ３，Ｄ４の何れとすべきかを、４面体判定部１４による４面体判定処理結果に基づいて図７の表１に示した選択条件に従って特定し、後段の補間演算処理部２２に対応する入力端子にそれらを入力させるための制御信号ＣＴ１，ＣＴ２，ＣＴ３１〜３３，ＣＴ４１〜４３を生成する。
【０１５１】
たとえば、入力点が図１０に示す頂点で構成される４面体１に属すると４面体判定部１４が判定した場合は、Ｒ軸ＬＵＴ（Ｒ軸メモリ回路２Ｒ）の基礎データがパッキングデータＰＲとしてＲ軸系統のラッチ回路４０に入力され、またＢ軸ＬＵＴ（Ｂ軸メモリ回路２Ｂ）からの基礎データがパッキングデータＰＢとしてＢ軸系統のラッチ回路４０に入力され、Ｇ軸ＬＵＴ（Ｇ軸メモリ回路２Ｇ）からはデータ入力がない。
【０１５２】
データ選択部１６は、このパッキングデータＰＲの中から、基点座標Ｐ１２２（０，１，０）のＲ軸成分“０”に対応する０番目（３）と１番目（４）をα系列の基礎データであると決し、またパッキングデータＰＢの中から、基点座標Ｐ１２２（０，１，０）のＢ軸成分“０”に対応する０番目（７）と１番目（１６）をβ系列の基礎データであると決し、この４点のデータを、それぞれＤ１＝α，Ｄ２＝α’，Ｄ３＝β，Ｄ４＝β’として、データセレクタ４４，４６から出力させなければならない。
【０１５３】
このような切替制御を行なうため、出力切替回路４８は、先ず基点座標Ｐ１２２（ＲＨ，ＧＨ，ＢＨ）の各軸成分に対応するＮ番目とＮ＋１番目のみがラッチ回路４０から出力されるように、ラッチ回路４０に対する制御信号ＣＴ１を生成する。
【０１５４】
また、出力切替回路４８は、データセレクタ４２に対する制御信号ＣＴ２を、ラッチ回路４０の偶数番目（０を含む）のデータをα，β系列とし奇数番目のデータをα’，β’系列とする場合にはローＬ、逆に、ラッチ回路４０の偶数番目のデータをα’，β’系列とし奇数番目のデータをα，β系列とする場合にはハイＨに設定する。
【０１５５】
また、出力切替回路４８は、入力値に対応する所用の２つのメモリを選択するために、つまりパッキングデータＰＲ，ＰＧ，ＰＢのうちの２つに含まれる基礎データを選択するために、データセレクタ４４，４６に対する制御信号ＣＴ３１，ＣＴ３２，ＣＴ４１，ＣＴ４２を生成する。たとえば、（Ｒ，Ｇ）を選択出力する場合にはＣＴ３１（ＣＴ４１）＝ローＬでかつＣＴ３２（ＣＴ４２）＝ローＬ、（Ｇ，Ｂ）を選択出力する場合にはＣＴ３１（ＣＴ４１）＝ハイＨでかつＣＴ３２（ＣＴ４２）＝ローＬ、（Ｒ，Ｂ）を選択出力する場合には、ＣＴ３１（ＣＴ４１）＝ローＬでかつＣＴ３２（ＣＴ４２）＝ハイＨを設定する。
【０１５６】
また、選択したそれぞれのα，α’系列とβ，β’系列を切り替えるために、データセレクタ４４，４６に対する制御信号ＣＴ３３，ＣＴ４３を生成する。具体的には、α，α’系列とする場合にはローＬ、β，β’系列とする場合にはハイＨを設定する。
【０１５７】
これにより、データ選択部１６は、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを含む２つのメモリのみから入力された所定アドレスのデータ群すなわちパッキングデータＰＲ，ＰＧ，ＰＲのうちの任意の２組をデータ格納部２から受け取ると、その２組のパッキングデータの中から、テトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データＤ１，Ｄ２，Ｄ３，Ｄ４を抽出し、この抽出した４つのデータＤ１，Ｄ２，Ｄ３，Ｄ４を補間処理部２２の適切な入力端子に入力することができるようになる。
【０１５８】
図２０は、データ格納部２とデータ選択部１６の具体的な構成の第２例を示すブロック図である。第１例と同様に、１７×１７×１７の３次元ＬＵＴに対応するＲ軸メモリ回路２Ｒについて詳細を示し、Ｇ軸メモリ回路２ＧやＢ軸メモリ回路２Ｂについては図示を省略する。
【０１５９】
この第２例は、上記第１および第２実施形態に適用可能な構成のものであって、「処理対象の画素データに対応する基礎データを含むアドレスの全ての基礎データを纏めてパッキングデータとして読み出し、その後に、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出する」に際して、対象アドレスの全基礎データを時系列的に逐次出力する構成のものである。
【０１６０】
具体的には、アドレス空間を２次元状に制御可能なメモリを使用し、一方のアドレス軸に対しては、Ｙアドレス設定回路３４により、第１〜第３実施形態と同様にアクセスアドレスＡＤＲ，ＡＤＧ，ＡＤＢを設定する。そして、他方のアドレス軸に対しては、Ｘアドレス設定回路３２により、入力値を包含する単位立方体を特定する基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する値を、第１および第２実施形態との対応では複数回、第３実施形態との対応では２回にそれぞれ分けて設定することで、各メモリ回路２Ｒ，２Ｇ，２Ｇから、基点座標（ＲＨ，ＧＨ，ＢＨ）に対応する複数個もしくは２個のデータが逐次出力されるようにする。
【０１６１】
なお、この第２例は、上記第１および第２実施形態に適用可能な構成のものとしている。以下、第１例との相違点のみ説明する。
【０１６２】
図示するように、Ｒ軸メモリ回路２Ｒの出力バッファ３６は、Ｙアドレス設定回路３４により設定されたＹアドレスの全Ｘアドレスのメモリセル３０に対して共通に使用されるように１つのみが設けられている。これに応じて、データ選択部１６のラッチ回路４０には、その１つの出力バッファ３６からの出力データが共通に入力されるように構成されている。
【０１６３】
Ｘアドレス設定回路３２には、Ｙアドレス設定回路３４により設定されたＹアドレスの各Ｘアドレスのメモリセル３０から基礎データが順に出力バッファ３６に出力されるように、読出対象の１つのＸアドレスのみを順にアクティブとするアドレス制御信号ＡＤＸＲを入力する。
【０１６４】
個々のメモリセル３０としては、Ｘアドレス設定回路３２からのＸアドレス設定がアクティブでかつＹアドレス設定回路３４からのＹアドレス設定がアクティブの場合に限って能動状態（イネーブル）となり、メモリセル３０に保持している基礎データを出力バッファ３６に向けて出力するものとする。これにより、出力バッファ３６からは、Ｙアドレス設定回路３４により設定されたＹアドレスの各Ｘアドレスのデータが順にデータ選択部１６に入力される。
【０１６５】
このような構成のＲ軸メモリ回路２Ｒによれば、補間演算に必要な基礎データを含む同一ライン（Ｘ方向）の複数の基礎データの全てを順に読み出すことができるので、実際の補間演算に必要のない基礎データを読み出すことになるが、同時に読出アクセスするメモリセル数を従来よりも低減することができるので放射ノイズを低減することができる。ただし、トータルの読出サイクル数が増えるので、消費電力のアップや処理速度低下が懸念される。なお、リードクロックを高速化（前例では１７倍にする）して、速度低下を実質的に防止することは可能である。ただし、この場合、消費電力のさらなるアップが懸念される。
【０１６６】
データ選択部１６の個々のラッチ回路４０には、Ｒ軸メモリ回路２Ｒ側のＸアドレスの設定に応じてラッチクロックＬＣＫが個別に入力されている。各ラッチ回路４０は、Ｒ軸メモリ回路２Ｒからの基礎データの送出に合わせた各Ｘアドレスの設定タイミングに応じて、その基礎データをそれぞれ異なるタイミングで取り込み保持する。データ選択部１６は、ラッチ回路４０にデータを取り込んだ後には、第１例と同様の処理を行なえばよい。
【０１６７】
図２１は、データ格納部２、アドレス生成部１０、および補間演算処理部２２の具体的な構成の一例（以下第３例という）を示すブロック図である。第１例および第２と同様に、１７×１７×１７の３次元ＬＵＴに対応するＲ軸メモリ回路２Ｒについて詳細を示し、Ｇ軸メモリ回路２ＧやＢ軸メモリ回路２Ｂについては図示を省略する。
【０１６８】
この第３例は、上記第３実施形態に適用可能な構成のものであって、「補間演算に必要な基礎データのみを読み出す構成であって、それらの基礎データをほぼ同時に並列的に出力する構成」のものである。以下、第１例や第２例との相違点のみ説明する。
【０１６９】
図示するように、アドレス生成部１０には、４面体判定部１４による４面体判定処理結果と自身が生成した入力点を包含する基点の座標値（ＲＨ，ＧＨ，ＢＨ）とに基づいて制御信号ＣＴ１，ＣＴ２を生成する、第１例や第２例における出力切替回路４８と略同様の構成の出力切替回路５０が設けられている。制御信号ＣＴ３１〜ＣＴ３３，ＣＴ４１〜ＣＴ４３を生成する機能を備えていない点が異なる。
【０１７０】
出力切替回路５０には、第１例や第２例におけるアドレス設定機能が組み込まれており、Ｒ軸メモリ回路２ＲのＸアドレス設定回路３２には、出力切替回路５０からの制御信号ＣＴ１に相当するアドレス制御信号ＡＤＸＲが入力される。また、Ｒ軸メモリ回路２ＲのＹアドレス設定回路３４には、処理対象の画素データが含まれる４面体に応じたアドレス値を設定するためのアクセスアドレスＡＤＲが入力される。
【０１７１】
また、個々のメモリセル３０には、基礎データを読み出すための読出クロックＣＫが出力切替回路５０から入力される。また、メモリ回路２Ｒのチップセレクト端子ＣＳには、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂのうち処理対象の画素データについてテトラ・ハイドラ法による補間演算に必要となる４格子点の基礎データを出力するものを選択するためのＲ軸メモリ制御信号ＣＴＲが出力切替回路５０から印加されている。
【０１７２】
Ｒ軸メモリ回路２Ｒの出力側には、第１例や第２例におけるデータセレクタ４２と同様の構成のデータセレクタ３８が設けられ、このデータセレクタ３８の出力側に出力バッファ３６が設けられている。データセレクタ３８には、出力切替回路５０からの制御信号ＣＴ２が入力される。
【０１７３】
また、２次元状に配されたメモリセル３０のうち、Ｘアドレスの偶数番目（０を含む）が入力端子ＩＮ１に共通に入力され、奇数番目が入力端子ＩＮ２に共通に入力されるように接続されている。
【０１７４】
データセレクタ３８は、第１例や第２例のデータセレクタ４２と同様に、制御信号ＣＴ２がローＬのときには入力されたデータを直列的に出力する一方、制御信号ＣＴ２がハイＨのときには入力されたデータを交差的に出力する。
【０１７５】
補間処理部２２には、第１例や第２例における出力切替回路４８と略同様の構成の入力切替回路６０が設けられている。この入力切替回路６０には、４面体判定部１４による４面体判定処理結果のみが入力される点で異なる。
【０１７６】
入力切替回路６０は、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂの何れか２つから入力された補間演算に必要となる４格子点の基礎データ（α、α’もしくはβ，β’）をＤ１，Ｄ２，Ｄ３，Ｄ４に対応付けるために必要となる制御信号ＣＴ３１〜３３，ＣＴ４１〜４３を生成する。
【０１７７】
この第３例の構成では、制御信号ＣＴ１，ＣＴ２，ＣＴ３１〜３３，ＣＴ４１〜４３の生成場所と、これを受けた切替えのための回路要素の設置場所が第１例や第２例と異なるが、基本的なデータ選択の仕組みは変わらない。ただし、制御信号ＣＴ１に基づいて作用する回路要素をＸアドレス設定回路３２としたことで、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂから出力される基礎データは、補間演算に必要な２つの基礎データのみとなる。
【０１７８】
したがって、この第３例の構成（すなわち第３実施形態の構成）によれば、補間演算に必要な基礎データのみを読み出すことができ、無駄なメモリアクセス処理を防止することができる。第１例や第２例の構成では、補間演算に必要のないデータをも読み出すので、読出方式によっては、従来構成よりも処理速度が低下する問題やトータルの消費電力がアップすることが懸念されるが、この第３例によれば、処理速度の低下は殆どなく、また消費電力を確実に低減することができる。
【０１７９】
なお、第２例の前段に述べたように、各軸用のメモリ回路２Ｒ，２Ｇ，２Ｂから出力される２つの基礎データを時系列的に逐次出力する構成を、この第３例に適用することもできる。その変形については図示を省略する。
【０１８０】
上述したメモリアクセスのための４面体判定や補間演算などの一連の処理は、上述のようにハードウェア回路により実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、たとえば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０１８１】
この記録媒体は、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクを含む）、光ディスク（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ−Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ　）、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）を含む）、光磁気ディスク（ＭＤ（Ｍｉｎｉ　Ｄｉｓｃ　）を含む）、もしくは半導体メモリなどよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭやハードディスクなどで構成されてもよい。あるいは、ソフトウェアを構成するプログラムが、通信網を介して提供されてもよい。
【０１８２】
たとえば、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、上記実施形態で述べた効果は達成される。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになる。
【０１８３】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合であってもよい。
【０１８４】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される場合であってもよい。
【０１８５】
以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【０１８６】
また、上記の実施形態は、クレーム（請求項）にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
【０１８７】
たとえば、上記実施形態では、格子点データを格納するメモリとして、入力データの軸と共通する方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをマッピング（パッキング）し、その一塊りの全データ（第１もしくは第２実施形態の場合）あるいはその中の２つの基礎データ（第３実施形態の場合）を並列的に読み出すようにしていたが、パッキングの方向や読出し方はこのような方法に限らない。
【０１８８】
たとえば、入力の３軸を互いに４５度傾けた互いに直交する軸の方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをマッピング（パッキング）するようにしてもよい。このようなパッキング方法でも、元の３次元ＬＵＴの全ての格子点データを取り扱うことが可能である。
【０１８９】
ただしこの場合、原点を通る軸上のデータが最も多くパッキングされ、元の３次元ＬＵＴの最外郭のデータが１つのみパッキングされるので、各軸に対しては同容量のメモリを使用できるものの、アドレスに応じて対応付けられるデータ数が異なるので、実際には使用しないメモリ空間が生じることになる。
【０１９０】
また、４５度傾けに限らず、６０度や他の任意の角度に傾けてもかまわない。軸に応じて傾き角を異なるものとしてもよい。これらの場合においても、元の３次元ＬＵＴの全ての格子点データがパッキングされた何れかの群に含まれるようにアドレスと対応付けることで、元の３次元ＬＵＴの全ての格子点データを取り扱うようにすることが好ましい。
【０１９１】
なお、元の３次元ＬＵＴの一部の格子点データがパッキングされた何れの群にも含まれないということがあってもかまわない。
【０１９２】
また、元のＬＵＴの格子点データのうち、軸を通らない格子点データについては、たとえば線形補間などにより生成した新たなデータをその格子点データに対応する基礎データとして割り当ててもよい。
【０１９３】
なお、上記第１〜第３のように、入力データの軸と共通する方向の基礎データを複数のグループに分けて１つのアドレスに複数のデータをパッキングすれば、パッキングされた各アドレスには同数の格子点データが対応付けられ使用しないメモリ空間が生じないようにすることができるとともに、元の３次元ＬＵＴの全ての格子点データを漏れなく取り扱うことができるので、同容量のメモリを無駄なく使用できるなど、全体のバランスがよい。
【０１９４】
また、上記実施形態では、入力色データを出力色データに変換する際に用いられる格子点データの集合を構成する単位立方体の中を６個の４面体に分割して入力値（入力された画素データ）が何れの４面体に属するのかを判定し、該当する４面体内での補間演算により入力値に対応する出力値（出力用の画素データ）を決定する手法として、４点補間の典型例であるテトラ・ハイドラ法を適用した場合について説明したが、本願発明の適用は、４点補間に限らず、立方体補間（８点補間）や５点補間など他の補間方法に適用することも可能である。
【０１９５】
つまり、補間演算所用データ数未満（事実上多面体を規定する頂点数よりも少ない）のメモリを使用し、元のＬＵＴの格子点データを所定の方向（使用するメモリ数に応じて軸を設定）にグループ分けし、グループごとに１つのアドレスに複数の格子点データを対応付けてそのメモリに格納し、補間演算処理の際には、グループ分けしたデータ群の中から、補間演算に必要となる格子点のデータを抽出するという構成のものであればよい。
【０１９６】
たとえば、８点補間演算を行なう装置構成とする場合、使用するメモリ数は８個ではなく７以下とし、同様に、５点補間演算を行なう装置構成とする場合、使用するメモリ数は５個ではなく４以下とするなど、格子点データ保持用のメモリを補間演算所用データ数未満で済ますことができ、同じ機能を達成するために必要なメモリの総容量を低減することができる。
【０１９７】
また上記実施形態では、ｋ色の入力色データとしてＲ，Ｇ，Ｂの３色のデータを取り扱い、ｊ色の出力色データとしてＹ，Ｍ，Ｃ，Ｋの４色に変換する例を説明したが、入力系および出力系それぞれについて色の構成要素が３つ以上である限り、他の色系統を取り扱う形態に変更することもできる。もちろん、色空間に依存せず、ＲＧＢ，Ｌａｂ，ＹＣｂＣｒ，ＹＭＣＫなど、いずれにも対応することができる。
【０１９８】
また、上記実施形態では、ｋ個（具体的には３個）の成分データに基づいて定まるｋ次元超立方格子空間の２のｋ乗個の格子点が形成するｋ次元超立方体の各格子点に対応づけられた格子点データを元のＬＵＴとして取り扱い、単位格子体の形状が立方体であるのもとしていたが、個々の格子点により規定される単位格子体の形状は、必ずしも立方体に限らない。
【０１９９】
また、上記実施形態では、単位格子体（単位立方体）を同容量の多面体（具体的には４面体）で内分することとしていたが、単位格子体を分割する多面体は、必ずしも同容量のものでなくてもよい。
【０２００】
【発明の効果】
以上の説明から明らかなように、本発明においては、多面体内での補間演算を行なう際に、補間演算所用データ数よりも少ない数のそれぞれ独立に制御可能なメモリ空間を使用し、そのメモリ空間のそれぞれについて、ｋ色の入力色信号要素で規定されるｋ次元格子空間の各格子点に対応づけられた格子点データに対応する基礎データを、所定の手順に従って１つのアドレスに複数の基礎アドレスが割り当てられるようにパッキングして格納し、同一アドレスに割り当てられた複数の基礎データの中から、処理対象の画素データに対応する補間演算所用データ数分の基礎データを抽出して、多面体内での補間演算を行なうようにした。
【０２０１】
これにより、補間演算所用データ数（４点補間の場合は４つ）未満という少ないメモリ資源で色データ変換を実現することができ、また消費電力や放射ノイズを低減することもできるようになった。
【図面の簡単な説明】
【図１】本発明に係るデータ変換装置の第１実施形態を示すブロック図である。
【図２】第１実施形態のデータ変換装置における色データの変換に関する処理手順の概要を示したフローチャートである。
【図３】出力値の代表値である格子点データを構成するＲ軸用のルックアップテーブルを説明する図である。
【図４】出力値の代表値である格子点データを構成するＧ軸用のルックアップテーブルを説明する図である。
【図５】出力値の代表値である格子点データを構成するＢ軸用のルックアップテーブルを説明する図である。
【図６】演算処理部における単位立方体判定処理（図２のＳ１００〜Ｓ１０２）を説明する図である。
【図７】演算処理部における４面体判定処理（図２のＳ１０４〜Ｓ１０６）を説明する図である。
【図８】演算処理部におけるアクセスメモリ特定処理（図２のＳ１０８ａ）と４格子点特定処理（図２のＳ１０８ｂ）を説明する図である。
【図９】入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１０】４面体１に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１１】４面体２に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１２】４面体３に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１３】４面体４に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１４】４面体５に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１５】４面体６に属する入力データと３次元ＬＵＴ空間上のデータの位置関係を示した図である。
【図１６】演算処理部における補間係数算出処理（図２のＳ１０２ｃ）と補間演算処理（図２のＳ１０２ｄ）を説明する図である。
【図１７】本発明に係るデータ変換装置の第２実施形態を示すブロック図である。
【図１８】本発明に係るデータ変換装置の第３実施形態を示すブロック図である。
【図１９】データ格納部とデータ選択部の具体的な構成の第１例を示すブロック図である。
【図２０】データ格納部とデータ選択部の具体的な構成の第２例を示すブロック図である。
【図２１】データ格納部、アドレス生成部、および補間演算処理部の具体的な構成の一例を示すブロック図である。
【符号の説明】
１…データ変換装置、２…データ格納部、２Ｒ…Ｒ軸メモリ回路、２Ｇ…Ｇ軸メモリ回路、２Ｂ…Ｂ軸メモリ回路、４…演算処理部、４Ｙ…Ｙ信号生成部、４Ｍ…Ｍ信号生成部、４Ｃ…Ｃ信号生成部、４Ｋ…Ｋ信号生成部、１０…アドレス生成部、１４…４面体判定部、１６…データ選択部、２０…補間係数生成部、２２…補間処理部、３０…メモリセル、３２…Ｘアドレス設定回路、３４…Ｙアドレス設定回路、３６…出力バッファ、３８，４２，４４，４６…データセレクタ、４０…ラッチ回路、４８，５０…出力切替回路、６０…入力切替回路
【図１】
2004112523.tif 000004
【図２】
2004112523.tif 000005
【図３】
2004112523.tif 000006
【図４】
2004112523.tif 000007
【図５】
2004112523.tif 000008
【図６】
2004112523.tif 000009
【図７】
2004112523.tif 000010
【図８】
2004112523.tif 000011
【図９】
2004112523.tif 000012
【図１０】
2004112523.tif 000013
【図１１】
2004112523.tif 000014
【図１２】
2004112523.tif 000015
【図１３】
2004112523.tif 000016
【図１４】
2004112523.tif 000017
【図１５】
2004112523.tif 000018
【図１６】
2004112523.tif 000019
【図１７】
2004112523.tif 000020
【図１８】
2004112523.tif 000021
【図１９】
2004112523.tif 000022
【図２０】
2004112523.tif 000023
【図２１】
2004112523.tif 000024