JP4411230B2 - COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM - Google Patents

COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM Download PDF

Info

Publication number
JP4411230B2
JP4411230B2 JP2005061334A JP2005061334A JP4411230B2 JP 4411230 B2 JP4411230 B2 JP 4411230B2 JP 2005061334 A JP2005061334 A JP 2005061334A JP 2005061334 A JP2005061334 A JP 2005061334A JP 4411230 B2 JP4411230 B2 JP 4411230B2
Authority
JP
Japan
Prior art keywords
value
function
calculated
lut
coefficient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005061334A
Other languages
Japanese (ja)
Other versions
JP2006246236A (en
JP2006246236A5 (en
Inventor
欣也 大佐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2005061334A priority Critical patent/JP4411230B2/en
Publication of JP2006246236A publication Critical patent/JP2006246236A/en
Publication of JP2006246236A5 publication Critical patent/JP2006246236A5/ja
Application granted granted Critical
Publication of JP4411230B2 publication Critical patent/JP4411230B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Processing Of Color Television Signals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Description

本発明は、画像データの色変換装置及びその制御方法、並びにプログラに関する。 The present invention is a color conversion apparatus and a control method thereof of the image data, and to program.

プリンタによる画像出力等、画像を扱う様々なシステムにおいて、画像に対する色変換処理が必要となる。色変換処理に対する入力と出力が比較的単純な関係にある場合、マトリクス演算を用いたマスキング処理によって色変換処理を行うことも可能であるが、一般的には、色変換の入力と出力との関係を単純なマトリクス演算で精度良く近似できるとは限らない。   In various systems that handle images, such as image output by a printer, color conversion processing for images is required. When the input and output for color conversion processing are in a relatively simple relationship, it is possible to perform color conversion processing by masking processing using matrix operation, but in general, there is a difference between input and output for color conversion. It is not always possible to approximate the relationship with a simple matrix operation with high accuracy.

このような場合、3次元ルックアップテーブル(以下、省略する場合は、3次元LUTと記述する。)と補間演算(例えば、四面体補間演算等の多面体補間演算)とを用いた色変換方式を採用することが多い。   In such a case, a color conversion method using a three-dimensional lookup table (hereinafter referred to as a three-dimensional LUT if omitted) and an interpolation operation (for example, a polyhedral interpolation operation such as a tetrahedral interpolation operation) is used. Often adopted.

図9は、このような3次元LUTと補間演算とを用いた従来の色変換装置の構成を示すブロック図であり、同図に示す色変換装置は、3次元の入力値901,902,903を、格子点に対する3次元LUTと補間演算とを用いることにより、出力値913に変換する。   FIG. 9 is a block diagram showing a configuration of a conventional color conversion apparatus using such a three-dimensional LUT and interpolation calculation. The color conversion apparatus shown in FIG. 9 has three-dimensional input values 901, 902, and 903. Is converted into an output value 913 by using a three-dimensional LUT for the lattice points and interpolation calculation.

具体的には、まず、入力値901,902,903について、その上位ビットが取り出され、3次元LUTにおいて対応する格子点番号が、格子点番号計算部904,905,906において計算される。格子点番号計算部904,905,906における計算により得られた3つの格子点番号は、従来技術の3次元LUT参照部(3D LUT参照部)914に与えられる。3次元LUT参照部914では、格子点番号を3次元LUT915上の対応するアドレスに変換し、3次元LUT915から、そのアドレスのデータを読み出すことにより、格子点出力値を得る。そして、次の補間演算部912で必要なだけ格子点出力値907,908,909,910を得るため、3次元LUT915を繰り返して参照した後、得られた出力値は補間演算部912により補間され、最終的な出力値913となる。補間演算部912で使用する補間係数値は、入力値から補間係数値計算部911によって計算されて、補間演算部912に渡される。   Specifically, first, the upper bits of the input values 901, 902, and 903 are extracted, and the corresponding lattice point numbers in the three-dimensional LUT are calculated in the lattice point number calculation units 904, 905, and 906. The three grid point numbers obtained by the calculations in the grid point number calculation units 904, 905, and 906 are given to the conventional three-dimensional LUT reference unit (3D LUT reference unit) 914. The three-dimensional LUT reference unit 914 converts the lattice point number into a corresponding address on the three-dimensional LUT 915 and reads the data at the address from the three-dimensional LUT 915 to obtain a lattice point output value. Then, in order to obtain the grid point output values 907, 908, 909, and 910 as necessary in the next interpolation calculation unit 912, after repeatedly referencing the three-dimensional LUT 915, the obtained output value is interpolated by the interpolation calculation unit 912. The final output value 913 is obtained. The interpolation coefficient value used in the interpolation calculation unit 912 is calculated from the input value by the interpolation coefficient value calculation unit 911 and passed to the interpolation calculation unit 912.

図9に示すような3次元LUT915と補間演算とを用いた色変換方式は、マトリクス演算方式と比較して精度の高い色変換が可能であるが、高い色変換精度を得るためには、3次元LUT915のサイズをある程度大きく設定する必要があり、従って、ルックアップテーブルのサイズが増大して、コストアップ或いは色変換処理速度の低下を招く虞がある。   The color conversion method using the three-dimensional LUT 915 and the interpolation operation as shown in FIG. 9 can perform color conversion with higher accuracy than the matrix operation method, but in order to obtain high color conversion accuracy, 3 It is necessary to set the size of the dimension LUT 915 to be large to some extent. Therefore, the size of the lookup table increases, which may increase the cost or decrease the color conversion processing speed.

そこで、従来、ルックアップテーブルにデータを出力色毎に圧縮して保持することで、ルックアップテーブルにデータを保持するためのメモリ容量を節約するようにした色変換装置が知られている(例えば、特許文献1参照)。
特開2000−22974号公報
Therefore, a color conversion device that saves memory capacity for holding data in the lookup table by compressing and holding data in the lookup table for each output color is conventionally known (for example, , See Patent Document 1).
JP 2000-22974 A

しかしながら、上記特許文献1に開示された従来技術では、3次元ルックアップテーブルにデータを保持するためのメモリ容量は節約できるものの、実際にルックアップテーブルを参照する時点では、ルックアップテーブルに保持してあるデータを展開して本来のサイズで使用するため、その時にデータを保持するためのメモリ容量を節約することはできない。   However, in the conventional technique disclosed in Patent Document 1, although the memory capacity for holding data in the three-dimensional lookup table can be saved, when the lookup table is actually referred to, it is held in the lookup table. Therefore, it is not possible to save the memory capacity for holding the data at that time.

また、特に、処理速度が低速であるが大きなメモリ容量の記憶媒体を持つシステムと処理速度が高速であるが小さなメモリ容量の記憶媒体を持つシステムとを考慮した場合、データを展開済みのルックアップテーブルでは、処理速度が高速で小さなメモリ容量の記憶媒体上にデータが収納しきれないために、処理速度が低速で大きなメモリ容量の記憶媒体を配置する結果となり、そのために処理速度の低下を招いてしまう。   Also, especially when considering systems with low processing speed but a large memory capacity storage system and systems with high processing speed but a small memory capacity storage medium, the data has already been looked up In a table, data cannot be stored on a storage medium with a high processing speed and a small memory capacity, and therefore a storage medium with a low processing speed and a large memory capacity is arranged, which causes a reduction in the processing speed. I will.

また、3次元ルックアップテーブルから出力するデータのビット精度が、例えば、8ビットから10ビットに増えたとすると、ビット精度が増加した分だけルックアップテーブルのサイズを大きくしなければならず、そのためにメモリ容量が増加してしまう。   Also, if the bit accuracy of data output from the three-dimensional lookup table is increased from 8 bits to 10 bits, for example, the size of the lookup table must be increased by the amount of increased bit accuracy. Memory capacity will increase.

更に、ルックアップテーブル参照時のアドレス計算も8ビット精度時と10ビット精度時とでは異なり、両方の精度に対応しようとすると、前記アドレス計算処理が複雑化する。   Further, the address calculation when referring to the look-up table is different between the 8-bit accuracy and the 10-bit accuracy, and the address calculation process becomes complicated when trying to cope with both accuracy.

なお、ルックアップテーブルの実使用時のメモリ容量を減らすためには、3次元ルックアップテーブルに対して圧縮処理を施したままの状態でデータを格納して使用することも考えられるが、圧縮状態のデータに対して、ルックアップテーブルを参照するには、ルックアップテーブル参照時にデータの圧縮・展開処理が必要となるために、処理操作が複雑化するという問題があった。   In order to reduce the memory capacity during actual use of the lookup table, it is conceivable to store and use data with the compression process performed on the three-dimensional lookup table. In order to refer to the lookup table with respect to the above data, since data compression / decompression processing is required when referring to the lookup table, there is a problem that the processing operation becomes complicated.

本発明は、これら従来技術の有する問題点を解消するためになされたもので、その目的は、次元ルックアップテーブルである格納手段の実使用時に必要なメモリ容量を節約することが可能な色変換装置及びその制御方法、並びにプログラムを提供することである。 The present invention has been made to solve the problems of these prior art, and its object is color which can save memory space required for the actual use of the multidimensional look-up table in which storage means conversion apparatus and a control method thereof, and to provide a program.

上記目的を達成するために本発明の色変換装置は、多次元ルックアップテーブルの値域を複数の領域に分割して得た各領域に対応する係数値を格納する係数値格納手段と入力値に対応する前記多次元ルックアップテーブル中の格子点を計算する格子点計算手段と、前記計算された格子点が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を選択する係数値参照手段と、前記計算された格子点に対して選択された係数値を用いて関数値を演算する関数値演算手段と、前記関数値演算手段が演算した関数値と本来出力すべき値との差分を誤差値として前記格子点のそれぞれに対応して格納する誤差値格納手段と、前記誤差値格納手段から前記計算された格子点に対応する前記誤差値を獲得する誤差値獲得手段と、前記関数値演算手段が演算した関数値に対して前記誤差値獲得手段が獲得した誤差値を加算することで、前記計算された格子点における出力値を算出する加算手段と、前記加算手段で算出された出力値に基づいて、前記入力値に対応する出力値を補間演算することにより求める補間演算手段と、を有することを特徴とする。 In order to achieve the above object, the color conversion apparatus of the present invention comprises a coefficient value storage means for storing coefficient values corresponding to each area obtained by dividing the range of the multidimensional lookup table into a plurality of areas, and an input Corresponding from the coefficient value storage means depending on which of the plurality of areas the lattice point calculation means for calculating the lattice points in the multi-dimensional lookup table corresponding to the value, a coefficient value reference means for selecting the coefficient values, and the function value calculating means for calculating a function value by using the calculated coefficients selected values for the lattice points, a function value the function value computing means has computed Error value storage means for storing the difference from the value to be output as an error value corresponding to each of the grid points , and obtaining the error value corresponding to the calculated grid point from the error value storage means Error value And resulting unit, the function value calculating means that is adding the error value said error value acquisition means has acquired for function values calculated, adding means for calculating an output value of the calculated grid points, wherein Interpolation calculation means for obtaining an output value corresponding to the input value by interpolation calculation based on the output value calculated by the addition means .

本発明によれば、次元ルックアップテーブルである誤差値格納手段の実使用時に必要なメモリ容量を節約することが可能である。 According to the present invention, it is possible to save the memory capacity required for actual use of the error value storage means is a multi-dimensional look-up table.

以下、本発明の実施の形態について、図面を参照しながら説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

(第1の実施の形態)
まず、本発明の第1の実施の形態を、図1〜図6に基づき説明する。
(First embodiment)
First, a first embodiment of the present invention will be described with reference to FIGS.

先に、本発明の原理について、1次元LUTの例を用いて説明する。   First, the principle of the present invention will be described using an example of a one-dimensional LUT.

図1は、1次元LUTに対して本発明を適用した場合の原理を説明する図であり、同図において、縦軸は出力値を、横軸は入力値をそれぞれ示しており、実線L1はLUTの出力値を示している。   FIG. 1 is a diagram for explaining the principle when the present invention is applied to a one-dimensional LUT. In FIG. 1, the vertical axis indicates an output value, the horizontal axis indicates an input value, and a solid line L1 indicates a solid line L1. The output value of the LUT is shown.

通常のLUTの構成では、各入力値に対して、実線L1に相当する出力値を格納するルックアップテーブルを用いるため、ルックアップテーブルのサイズとしては、入力の取り得る値の数×出力値の値域を格納するために必要なビット数が必要である。   In a normal LUT configuration, a lookup table that stores an output value corresponding to the solid line L1 is used for each input value. Therefore, the size of the lookup table is the number of values that can be taken by the number of output values. The number of bits required to store the range is required.

本発明は、この出力値の値域を格納するために必要なビット数を減らすものであり、これは、次のように近似関数値を用いることで実現される。   The present invention reduces the number of bits required to store the range of the output value, which is realized by using an approximate function value as follows.

図1中、複数の破線L2は、LUTの出力値(実線L1)の近似関数値の出力値となっており、入力値が図1中、2点鎖線L3で示した近似関数値分割位置で分割された領域のどの部分に入るかによって、異なる近似関数値が用いられる。ここで、入力値を複数の領域に分割して、それぞれに対して異なる近似関数値を用いる理由は、LUTの出力値(実線L1)と近似関数値の出力値(破線L2)との誤差をできるだけ小さくするためである。   In FIG. 1, a plurality of broken lines L2 are output values of approximate function values of the output value of the LUT (solid line L1), and the input value is an approximate function value division position indicated by a two-dot chain line L3 in FIG. Different approximate function values are used depending on which part of the divided area is included. Here, the reason why the input value is divided into a plurality of regions and different approximation function values are used for the respective areas is that the error between the output value of the LUT (solid line L1) and the output value of the approximation function value (dashed line L2). This is to make it as small as possible.

図1において、実線L1で示されるLUTの出力値と破線L2で示される近似関数値の出力値との誤差(差分)を見ると、元々のLUTの出力値の値域と比較して狭くなっており、誤差値については、LUTの出力値よりも少ないビット数で表現できる。   In FIG. 1, when the error (difference) between the output value of the LUT indicated by the solid line L1 and the output value of the approximate function value indicated by the broken line L2 is viewed, it becomes narrower than the range of the output value of the original LUT. The error value can be expressed by a smaller number of bits than the output value of the LUT.

次に、図1の説明を基に1次元LUTに対する本実施の形態に係る色変換装置の動作を、図2及び図3を用いて説明する。   Next, the operation of the color conversion apparatus according to the present embodiment for the one-dimensional LUT will be described with reference to FIGS. 2 and 3 based on the description of FIG.

図2は、本実施の形態に係る色変換装置における近似関数値の説明図であり、同図において、縦軸は関数値の出力値を、横軸は入力値をそれぞれ示す。   FIG. 2 is an explanatory diagram of approximate function values in the color conversion apparatus according to the present embodiment, in which the vertical axis indicates the output value of the function value and the horizontal axis indicates the input value.

また、図3は、本実施の形態に係る色変換装置における誤差値格納テーブルの説明図であり、同図において、縦軸は誤差値を、横軸は入力値をそれぞれ示す。   FIG. 3 is an explanatory diagram of an error value storage table in the color conversion apparatus according to the present embodiment, in which the vertical axis indicates an error value and the horizontal axis indicates an input value.

1次元LUTの入力値が与えられると、まず、図2に示す近似関数値の計算が行われ、近似関数値が出力される。近似関数値は、図2では、複数の1次関数値であり、図2において破線L4により4つに区切られた入力値の各値域に対して、異なる係数値を使用する。1次関数値の場合、計算に必要な係数値は2個であるから、全体としては、2x4=8個の係数値が必要となる。   When the input value of the one-dimensional LUT is given, first, the approximate function value shown in FIG. 2 is calculated, and the approximate function value is output. The approximate function value is a plurality of linear function values in FIG. 2, and different coefficient values are used for each range of input values divided into four by the broken line L4 in FIG. In the case of a linear function value, since there are two coefficient values necessary for the calculation, 2 × 4 = 8 coefficient values are required as a whole.

また、1次元LUTの入力値を使用して、図3に示す誤差値格納テーブルを参照する。この誤差値格納テーブルは、図1のLUTの出力値と近似関数値の出力値との差分を各入力値に対して格納したテーブルであって、値域が狭いため、LUTの出力値より少ないビット数のテーブルを使用できる。   Further, the error value storage table shown in FIG. 3 is referred to using the input value of the one-dimensional LUT. This error value storage table is a table in which the difference between the output value of the LUT of FIG. 1 and the output value of the approximate function value is stored for each input value, and since the range is narrow, there are fewer bits than the output value of the LUT. You can use a number table.

最後に、図2で計算された近似関数値の出力値と、図3で参照された誤差値格納テーブルの出力値(誤差値)とが加算され、図1の実線L1に相当するLUTの出力値が得られる。   Finally, the output value of the approximate function value calculated in FIG. 2 and the output value (error value) of the error value storage table referred to in FIG. 3 are added, and the output of the LUT corresponding to the solid line L1 in FIG. A value is obtained.

近似関数値の計算に必要な係数値の個数が少なければ、誤差値格納テーブルのサイズと係数値の格納領域のサイズとを加えても、なお、元々の1次元LUTのサイズより小さくできるため、LUTを使用する際のメモリ容量を節約することができる。   If the number of coefficient values necessary for calculating the approximate function value is small, the size of the error value storage table and the size of the coefficient value storage area can be added to be smaller than the original one-dimensional LUT size. The memory capacity when using the LUT can be saved.

色変換装置の場合、通常、3次元の入力値を扱うため、次に、3次元LUTについて、図4を用いて説明する。   In the case of a color conversion apparatus, since a three-dimensional input value is usually handled, a three-dimensional LUT will be described with reference to FIG.

図4は、本実施の形態に係る色変換装置における3次元LUTの説明図であり、同図における3つの軸L5,L6,L7は、入力の3つの次元を示している。   FIG. 4 is an explanatory diagram of a three-dimensional LUT in the color conversion apparatus according to the present embodiment, and the three axes L5, L6, and L7 in the same figure indicate the three dimensions of the input.

色変換に使用する3次元LUTでは、入力値を適切な間隔で格子状に分割することで得られる各格子点に対し、対応する出力値を格納する。   In the three-dimensional LUT used for color conversion, a corresponding output value is stored for each grid point obtained by dividing an input value into a grid at appropriate intervals.

図4においては、分割によって得られる立方体或いは直方体の各頂点について、対応する出力値を格納することで、3次元LUTが構成される。   In FIG. 4, a three-dimensional LUT is configured by storing corresponding output values for each vertex of a cube or rectangular parallelepiped obtained by division.

3次元の場合、格子分割数が増加すると、1次元の場合と比べて急激に格子点数が増加するため、3次元LUTのテーブルサイズを減らす要求は、より高まることになる。   In the three-dimensional case, when the number of lattice divisions increases, the number of lattice points increases abruptly as compared with the one-dimensional case. Therefore, the demand for reducing the table size of the three-dimensional LUT is further increased.

3次元LUTに対して本発明を適用する場合も、原理は上述した1次元LUTの場合と全く同じであり、まず、近似関数値を計算し、次に、誤差値格納テーブルを参照して、近似関数値と誤差値とを加算することで、最終的なLUTの出力値を得る。   When the present invention is applied to a three-dimensional LUT, the principle is exactly the same as that of the one-dimensional LUT described above. First, an approximate function value is calculated, and then an error value storage table is referred to. The final LUT output value is obtained by adding the approximate function value and the error value.

3次元LUTに対して近似関数値を求める際にも、入力値の値域を複数領域に分割し、それぞれの領域で異なる係数値を適用するが、その領域分割の一例を図5に示す。   When obtaining the approximate function value for the three-dimensional LUT, the range of the input value is divided into a plurality of regions, and different coefficient values are applied to each region. An example of the region division is shown in FIG.

図5において、3つの軸L8,L9,L10が入力の3つの次元を示しており、ここでは各次元について2分割しているため、全体としては2x2x2=8個の領域からなる。   In FIG. 5, three axes L8, L9, and L10 indicate the three dimensions of the input, and here, since each dimension is divided into two, it consists of 2 × 2 × 2 = 8 regions as a whole.

近似関数値として1次関数値を用いたとすると、入力値(x, y, z)に対する出力値oは、4つの係数値a, b, c, dを用いて、
o = a * x + b * y + c * z + d
と計算できるため、全体として必要な係数値の個数は、4x8=32個となる。
If a linear function value is used as an approximate function value, an output value o for an input value (x, y, z) is obtained by using four coefficient values a, b, c, d,
o = a * x + b * y + c * z + d
Therefore, the number of necessary coefficient values as a whole is 4 × 8 = 32.

また、誤差値格納テーブルについては、ルックアップテーブルの次元数が3次元になること以外は、1次元の場合と同様であるが、3次元では1次元の場合に比べて扱うべき入力点数が増えてくるため、1つ1つのルックアップテーブルのデータのビット数が減る効果は、より大きくなる。   Further, the error value storage table is the same as the one-dimensional case except that the number of dimensions of the lookup table is three-dimensional, but the number of input points to be handled is increased in the three-dimensional case compared to the one-dimensional case. Therefore, the effect of reducing the number of bits of the data of each lookup table becomes larger.

以下、上述した1次元LUT及び3次元LUTについて説明した原理を基に、本発明の第1の実施の形態に係る色変換装置について、図6を用いて説明する。   Hereinafter, the color conversion apparatus according to the first embodiment of the present invention will be described with reference to FIG. 6 based on the principle described for the above-described one-dimensional LUT and three-dimensional LUT.

図6は、本実施の形態に係る色変換装置の構成を示すブロック図であり、同図において、図9と同一部分には同一符号が付してある。   FIG. 6 is a block diagram showing the configuration of the color conversion apparatus according to this embodiment. In FIG. 6, the same parts as those in FIG.

図6において図9と異なる点は、3次元LUT参照部の構成と、図9の構成に係数値ルックアップテーブル(係数値LUT)606を付加したことと、図9の出力値を保持した3次元LUT(3D LUT)915に代えて誤差値を保持した3次元LUT(3D LUT)607を設けたことである。   6 differs from FIG. 9 in that the configuration of the three-dimensional LUT reference unit, the addition of the coefficient value lookup table (coefficient value LUT) 606 to the configuration of FIG. 9, and the output value of FIG. Instead of the three-dimensional LUT (3D LUT) 915, a three-dimensional LUT (3D LUT) 607 holding an error value is provided.

そして、この色変換装置は、3次元の入力値901,902,903を3次元LUT参照部と補間演算部912とによって、出力値913に変換するものである。   The color conversion device converts the three-dimensional input values 901, 902, and 903 into an output value 913 by the three-dimensional LUT reference unit and the interpolation calculation unit 912.

色変換装置の出力値913は、一般的に多次元であることが多いが、ここでは出力1次元分のみについて示しており、多次元の場合は、図6と同様の構成を複数並列に持つか、或いは、処理を複数回適用することで、必要な次元分の出力値が得られる。   The output value 913 of the color conversion device is generally multidimensional in many cases, but only one dimensional output is shown here. In the multidimensional case, a plurality of configurations similar to those in FIG. 6 are provided in parallel. Alternatively, an output value for a necessary dimension can be obtained by applying the process a plurality of times.

本実施の形態に係る色変換装置における3次元LUT参照部601は、関数近似部601aと、誤差値補正部601bとから成る。   The three-dimensional LUT reference unit 601 in the color conversion apparatus according to the present embodiment includes a function approximating unit 601a and an error value correcting unit 601b.

関数近似部601aは、関数値演算部602と係数値LUT参照部603とから成り、係数値LUT参照部603は、係数値LUT606に接続されている。関数値演算部602は、多次元入力値を用いて選択された係数値を用いて関数値を計算するものである。係数値LUT参照部603は、入力値が前記複数の領域(多次元入力値の値域を複数の領域に分割して得られた領域)のどの領域に属しているかによって係数値LUT606から対応する係数値を選択して関数値演算部602に渡すものである。   The function approximating unit 601a includes a function value calculating unit 602 and a coefficient value LUT reference unit 603, and the coefficient value LUT reference unit 603 is connected to the coefficient value LUT 606. The function value calculation unit 602 calculates a function value using a coefficient value selected using a multidimensional input value. The coefficient value LUT reference unit 603 corresponds to the coefficient value LUT 606 depending on which area of the plurality of areas (area obtained by dividing the multidimensional input value range into a plurality of areas). A numerical value is selected and passed to the function value calculation unit 602.

また、誤差値補正部601bは、加算部604と誤差値LUT参照部605とから成り、誤差値LUT参照部605は、3D LUT607に接続されている。加算部604は、関数値演算部602によって計算された関数値に対して誤差値を加算して出力するものである。誤差値LUT参照部605は、入力値に対応する誤差値を、3D LUT607を参照して獲得し、加算部604に渡すものである。   The error value correcting unit 601b includes an adding unit 604 and an error value LUT reference unit 605, and the error value LUT reference unit 605 is connected to the 3D LUT 607. The adder 604 adds an error value to the function value calculated by the function value calculator 602 and outputs the result. The error value LUT reference unit 605 acquires an error value corresponding to the input value with reference to the 3D LUT 607 and passes the error value to the addition unit 604.

係数値LUT606は、係数値を保持したルックアップテーブル(係数値格納手段)である。3D LUT607は、誤差値を各多次元入力値に対応して保持したルックアップテーブル(誤差値格納手段)であり、以降、必要に応じて誤差値LUTと記述する。   The coefficient value LUT 606 is a lookup table (coefficient value storage means) holding coefficient values. The 3D LUT 607 is a lookup table (error value storage means) that holds error values corresponding to each multidimensional input value, and is hereinafter referred to as an error value LUT as necessary.

ここで、誤差値とは、関数値演算部602によって計算された関数値と本来出力すべき値との差分である。   Here, the error value is a difference between the function value calculated by the function value calculation unit 602 and the value that should be output originally.

図6において、まず、入力値901〜903は、図9に示した従来技術の構成と同様に、格子点番号計算部904〜906によって、格子点番号に変換され、3次元LUT参照部601に入力される。次に、3次元LUT参照部601の出力する格子点出力値907〜910を用いて補間演算部912で補間演算が行われ、最終的な出力値913が得られるのは、図4と同様である。   In FIG. 6, first, input values 901 to 903 are converted into lattice point numbers by lattice point number calculation units 904 to 906 in the same manner as the configuration of the prior art shown in FIG. 9, and are input to the three-dimensional LUT reference unit 601. Entered. Next, the interpolation calculation unit 912 performs interpolation calculation using the grid point output values 907 to 910 output from the three-dimensional LUT reference unit 601, and the final output value 913 is obtained as in FIG. is there.

上述したように3次元LUT参照部601は、関数値演算部602と係数値LUT参照部603とから成る関数近似部601aと、加算部604と誤差値LUT参照部605とから成る誤差値補正部601bの2つの部分から成っており、それぞれ、前記原理の近似関数値の計算と、誤差値LUT607の参照に対応している。更に、関数近似部601aには、入力値の値域で複数に分割された各領域に対応する近似関数の係数値を格納するための係数値LUT606が接続され、誤差値補正部601bには、誤差値LUT607が接続されている。   As described above, the three-dimensional LUT reference unit 601 includes the function approximation unit 601a including the function value calculation unit 602 and the coefficient value LUT reference unit 603, and the error value correction unit including the addition unit 604 and the error value LUT reference unit 605. 601b includes two parts corresponding to the calculation of the approximate function value of the principle and the reference of the error value LUT607. Further, the function approximating unit 601a is connected to a coefficient value LUT 606 for storing the coefficient value of the approximating function corresponding to each region divided into a plurality of regions in the input value range, and the error value correcting unit 601b is connected to the error value correcting unit 601b. A value LUT 607 is connected.

まず、関数近似部601aの動作を説明する。   First, the operation of the function approximating unit 601a will be described.

入力された3次元の格子点番号は、係数値LUT参照部603で図5に示したように入力値を分割したどの領域に属するかが判定され、その領域に応じた係数値LUT602上のアドレスが計算される。このアドレスを用いて、係数値LUT参照部603は係数値LUT606を参照し、近似関数の計算に必要な係数値を得て、関数値演算部602に渡す。関数値演算部602は、入力された3次元の格子点番号と係数値とを使用して近似関数値を計算し、その出力値を誤差値補正部601bの加算部604に渡す。   The input three-dimensional grid point number is determined by the coefficient value LUT reference unit 603 as to which area the input value is divided as shown in FIG. 5, and an address on the coefficient value LUT 602 corresponding to the area is determined. Is calculated. Using this address, the coefficient value LUT reference unit 603 refers to the coefficient value LUT 606, obtains a coefficient value necessary for calculating the approximate function, and passes it to the function value calculation unit 602. The function value calculation unit 602 calculates an approximate function value using the input three-dimensional grid point number and coefficient value, and passes the output value to the addition unit 604 of the error value correction unit 601b.

次に、誤差値補正部601bの動作を説明する。   Next, the operation of the error value correction unit 601b will be described.

誤差値LUT参照部605は、入力された3次元の格子点番号を、3次元LUT607上の対応するアドレスに変換し、このアドレスを用いて3次元LUT607を参照し、入力値に対応する誤差値を得て、その誤差値を加算部604に渡す。加算部604では、関数値演算部602から得られた関数値と、誤差値LUT参照部605から得られた誤差値とを加算し、3次元LUT参照部601の出力値として出力する。   The error value LUT reference unit 605 converts the input three-dimensional grid point number into a corresponding address on the three-dimensional LUT 607, and refers to the three-dimensional LUT 607 using this address, and an error value corresponding to the input value. And the error value is passed to the adder 604. The adder 604 adds the function value obtained from the function value calculator 602 and the error value obtained from the error value LUT reference unit 605, and outputs the result as an output value of the three-dimensional LUT reference unit 601.

図6のような構成をとり、3次元LUT607の保持内容を出力値ではなく、値域の狭い誤差値で持つことによって、3次元LUT607の実使用時におけるメモリ容量を節約することができる。   By adopting the configuration as shown in FIG. 6 and having the contents held in the three-dimensional LUT 607 not with the output value but with an error value with a narrow range, the memory capacity during actual use of the three-dimensional LUT 607 can be saved.

なお、以上の説明では、近似関数として1次関数を用いたが、回路規模の許す範囲でより複雑な関数、例えば、2次関数や他の算術関数・論理関数を用いることも可能である。   In the above description, a linear function is used as an approximate function. However, a more complex function such as a quadratic function or other arithmetic functions / logical functions can be used as long as the circuit scale allows.

また、図5において、入力値の値域を各次元均等に2分割したが、各次元の分割数は係数値LUT606のメモリ容量が大きくなり過ぎない範囲で任意であり、或いは、必ずしも均等分割である必要はない。   In FIG. 5, the range of the input value is equally divided into two for each dimension, but the number of divisions for each dimension is arbitrary as long as the memory capacity of the coefficient value LUT 606 does not become too large, or is always equal. There is no need.

以上、説明したように、本実施の形態に係る色変換装置によれば、係数値LUT参照部603により係数値LUT606を参照して、入力値901〜903に対して、入力値901〜903の属する領域に対応した係数値を選択し、該選択した係数値と入力値901〜903に対する近似関数値を関数値演算部602で計算し、該算出した近似関数値と、誤差値LUT参照部605により誤差値LUT607を参照して得た入力値901〜903に対応する誤差値とを加算部604で加算することにより、3次元LUT607の出力値を得るようにしたから、3次元LUT607のメモリ容量を節約することができる。   As described above, according to the color conversion apparatus according to the present embodiment, the coefficient value LUT reference unit 603 refers to the coefficient value LUT 606 and sets the input values 901 to 903 to the input values 901 to 903. A coefficient value corresponding to the region to which the image belongs is selected, an approximate function value for the selected coefficient value and input values 901 to 903 is calculated by the function value calculation unit 602, and the calculated approximate function value and error value LUT reference unit 605 are calculated. Thus, the output value of the three-dimensional LUT 607 is obtained by adding the error values corresponding to the input values 901 to 903 obtained by referring to the error value LUT 607 by the adding unit 604. Therefore, the memory capacity of the three-dimensional LUT 607 is obtained. Can be saved.

(第2の実施の形態)
次に、本発明の第2の実施の形態を、図7に基づき説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described with reference to FIG.

本実施の形態は、上述した発明が解決しようとする課題のうち、特に、ビット精度が上がった場合のメモリ容量の増大及び複数のビット精度への対応を解決するものである。   Among the problems to be solved by the above-described invention, this embodiment solves the increase in memory capacity and the correspondence to a plurality of bit precisions when the bit precision is raised.

図7は、本実施の形態に係る色変換装置の主要部の構成を示すブロック図であり、同図においては、図6における3次元LUT参照部601、係数値LUT606、3次元LUT607にそれぞれ相当する3次元LUT参照部701、係数値LUT705、3次元LUT709を示しており、その他の入力値、格子点番号計算部、格子点出力値、補間係数値計算部、補間演算部、及び出力値等は省略してある。   FIG. 7 is a block diagram showing the configuration of the main part of the color conversion apparatus according to the present embodiment, which corresponds to the three-dimensional LUT reference unit 601, the coefficient value LUT 606, and the three-dimensional LUT 607 in FIG. A three-dimensional LUT reference unit 701, a coefficient value LUT 705, and a three-dimensional LUT 709 are shown. Other input values, grid point number calculation unit, grid point output value, interpolation coefficient value calculation unit, interpolation calculation unit, output value, etc. Is omitted.

3次元LUT参照部701は、関数近似部701aと誤差値補正部701bの2つに分かれている。   The three-dimensional LUT reference unit 701 is divided into a function approximation unit 701a and an error value correction unit 701b.

関数近似部701aは、関数値演算部702と係数値LUT参照部703と関数出力精度選択部704とから成り、係数値LUT参照部703は、係数値LUT705に接続されている。関数値演算部702は、多次元入力値を用いて選択された係数値を用いて関数値を計算するものである。係数値LUT参照部703は、入力値が前記複数の領域(多次元入力値の値域を複数の領域に分割して得られた領域)のどの領域に属しているかによって係数値LUT705から対応する係数値を選択して関数値演算部702に渡すものである。関数出力精度選択部704は、関数値演算部702の出力値を複数ビット精度から選択して出力するものである。   The function approximation unit 701a includes a function value calculation unit 702, a coefficient value LUT reference unit 703, and a function output accuracy selection unit 704. The coefficient value LUT reference unit 703 is connected to the coefficient value LUT 705. The function value calculator 702 calculates a function value using a coefficient value selected using a multidimensional input value. The coefficient value LUT reference unit 703 is a function corresponding to the coefficient value LUT 705 depending on which of the plurality of regions (region obtained by dividing the multidimensional input value range into a plurality of regions). A numerical value is selected and passed to the function value calculation unit 702. The function output accuracy selection unit 704 selects and outputs the output value of the function value calculation unit 702 from multi-bit accuracy.

誤差値補正部701bは、加算部706と加算位置選択部707と誤差値LUT参照部708とから成り、誤差値LUT参照部708は、3次元LUT(3D LUT)709に接続されている。加算部706は、関数値演算部702によって計算された関数値に対して誤差値を加算して出力するものである。加算位置選択部707は、誤差値LUT参照部708の出力値を複数のビット位置から選択して桁合わせした上で加算部706に対して出力するものである。誤差値LUT参照部708は、入力値に対応する誤差値を、3次元LUT709を参照して獲得し、加算部706に渡すものである。   The error value correction unit 701b includes an addition unit 706, an addition position selection unit 707, and an error value LUT reference unit 708. The error value LUT reference unit 708 is connected to a three-dimensional LUT (3D LUT) 709. The adder 706 adds the error value to the function value calculated by the function value calculator 702 and outputs the result. The addition position selection unit 707 selects the output value of the error value LUT reference unit 708 from a plurality of bit positions, aligns the digits, and outputs the result to the addition unit 706. The error value LUT reference unit 708 acquires an error value corresponding to the input value with reference to the three-dimensional LUT 709 and passes it to the addition unit 706.

係数値LUT705は、係数値を保持したルックアップテーブル(係数値格納手段)である。3次元LUT709は、誤差値を各多次元入力値に対応して保持したルックアップテーブル(誤差値格納手段)で、以降必要に応じて誤差値LUTと記述する。   The coefficient value LUT 705 is a lookup table (coefficient value storage means) that stores coefficient values. The three-dimensional LUT 709 is a lookup table (error value storage means) that holds error values corresponding to each multi-dimensional input value, and is hereinafter referred to as an error value LUT as necessary.

説明の都合上、もともと図6において対応していた格子点出力値のビット精度を8ビットとし、図7において対応する格子点出力値のビット精度を8ビット及び10ビットとする。   For convenience of explanation, the bit precision of the grid point output value originally corresponding in FIG. 6 is 8 bits, and the bit precision of the corresponding grid point output value in FIG. 7 is 8 bits and 10 bits.

まず、3次元LUT参照部701の関数近似部701aについて説明する。   First, the function approximation unit 701a of the three-dimensional LUT reference unit 701 will be described.

係数値LUT参照部703は、入力された3次元の格子点番号値を用いて係数値LUT705を参照し、近似関数で使用する係数値を関数値演算部702に渡すまでの処理は、上述した第1の実施の形態と全く同じである。   The coefficient value LUT reference unit 703 refers to the coefficient value LUT 705 using the input three-dimensional grid point number value, and the processing until the coefficient value used in the approximation function is passed to the function value calculation unit 702 has been described above. This is exactly the same as in the first embodiment.

関数値演算部702では、入力値と係数値とを使用して近似関数の出力値を計算するが、その出力値のビット精度は、対応する出力値のビット精度の中で最も高い精度以上、ここでは10ビット以上とする。関数値演算部702の演算途中結果は、通常、出力値のビット精度より多くのビット精度を持つため、関数値演算部702の出力するビット数を増やすだけで、これは実現できる。   The function value calculation unit 702 calculates the output value of the approximate function using the input value and the coefficient value, and the bit accuracy of the output value is equal to or higher than the highest bit accuracy of the corresponding output value, Here, it is 10 bits or more. Since the calculation result of the function value calculation unit 702 usually has a bit accuracy higher than the bit accuracy of the output value, this can be realized only by increasing the number of bits output by the function value calculation unit 702.

次に、関数値演算部702の出力値は、関数出力精度選択部704に入力され、ここで、格子点出力値のビット精度と同じになるようビット精度が選択される。例えば、格子点出力値のビット精度として8ビットが選択された場合には、入力された10ビット以上の値が8ビットになるように切り捨て、或いは丸め(単に切り捨てるのではなく、所定値になるように圧縮する技術)が行われて出力される。また、例えば、格子点出力値のビット精度として10ビットが選択された場合には、入力された10ビット以上の値が10ビットになるように切り捨て、或いは丸めが行われて出力される。どのビット精度で出力を行うかについては、3次元LUT参照部701を使用する前に設定されているものとする。関数出力精度選択部704によって、格子点出力値のビット精度になった近似関数出力値は、誤差値補正部701bの加算部706に送られる。   Next, the output value of the function value calculation unit 702 is input to the function output accuracy selection unit 704, where the bit accuracy is selected to be the same as the bit accuracy of the grid point output value. For example, when 8 bits are selected as the bit precision of the grid point output value, the input value of 10 bits or more is rounded down to 8 bits or rounded (not simply rounded down, but becomes a predetermined value) The compression technique is performed and output. Further, for example, when 10 bits are selected as the bit precision of the grid point output value, the input value of 10 bits or more is rounded down or rounded to 10 bits and output. It is assumed that the bit accuracy of output is set before using the three-dimensional LUT reference unit 701. The approximate function output value having the bit precision of the grid point output value by the function output accuracy selection unit 704 is sent to the addition unit 706 of the error value correction unit 701b.

次に、3次元LUT参照部701の誤差値補正部701bについて説明する。   Next, the error value correction unit 701b of the three-dimensional LUT reference unit 701 will be described.

誤差値LUT参照部708が、3次元の格子点番号値を用いて、誤差値を保持した3次元LUT(3D LUT)709を参照するところまでの処理は、上述した第1の実施の形態と同じであるが、3次元LUT709を参照して得られた誤差値は、加算部706に入力される前に、加算位置選択部707によって変換される。加算位置選択部707は、使用前に予め設定されたビット数だけ、入力された誤差値を桁合わせして出力する機能を持ち、例えば、1/2n倍、1倍、2n倍のスケーリング係数値を設定できる。加算部706は、対応する出力ビット精度のうち最も高いもの、この例では、10ビットに対応した加算部であり、関数近似部701から出力された8ビット、或いは10ビットの関数値に対して、加算位置選択部707から出力された桁合わせ後の誤差値を加算することで、最終的な格子点出力値を得る。 The processing up to the point where the error value LUT reference unit 708 refers to the three-dimensional LUT (3D LUT) 709 holding the error value using the three-dimensional grid point number value is the same as that in the first embodiment. Although the same, the error value obtained by referring to the three-dimensional LUT 709 is converted by the addition position selection unit 707 before being input to the addition unit 706. The addition position selection unit 707 has a function of aligning and outputting the input error value by the number of bits set in advance before use, for example, scaling of 1/2 n times, 1 time, 2 n times Coefficient value can be set. The adder 706 is the highest corresponding output bit precision, in this example, an adder corresponding to 10 bits. For the 8-bit or 10-bit function value output from the function approximator 701, The final grid point output value is obtained by adding the error values after digit alignment output from the addition position selection unit 707.

以上、説明したように、本実施の形態に係る色変換装置によれば、関数値演算部702の出力ビット精度と加算部706の演算ビット精度とを増やし、関数出力精度選択部704を設けることで、より高い出力ビット精度に対応し且つ複数のビット精度の切り換えに容易に対応することができる。   As described above, according to the color conversion apparatus of the present embodiment, the output bit accuracy of the function value calculation unit 702 and the calculation bit accuracy of the addition unit 706 are increased, and the function output accuracy selection unit 704 is provided. Therefore, it is possible to cope with higher output bit precision and easily switch between a plurality of bit precisions.

更に、誤差値LUT参照部708により誤差値LUT709を参照することによって得られる誤差値については、加算位置選択部707によって、ビット位置の桁合わせが可能であるため、誤差値LUT709に保持されるデータのビット数が一定であっても、桁合わせ後の誤差値の値域を制御することができる。また、誤差値LUT709に保持されるデータのビット数が一定であるということは、ビット精度が変わっても誤差値LUT参照部708でアドレスを計算する論理が変わらないということを意味しており、複数のビット精度の切り換えに一層容易に対応することができる。   Further, the error value obtained by referring to the error value LUT 709 by the error value LUT reference unit 708 can be digit-aligned by the addition position selection unit 707, so that data held in the error value LUT 709 is stored in the error value LUT 709. Even if the number of bits is constant, the error value range after digit alignment can be controlled. Further, the fact that the number of bits of data held in the error value LUT 709 is constant means that the logic for calculating the address in the error value LUT reference unit 708 does not change even if the bit precision changes. It is possible to more easily cope with switching of a plurality of bit precisions.

尚、以上の説明では、説明の都合上、8ビットと10ビットの2つのビット精度を例に挙げたが、対応するビット精度は2つに限定される必要はなく、また、ビット数も8ビットと10ビットに制限されるものではない。   In the above description, two bit precisions of 8 bits and 10 bits are given as an example for convenience of explanation, but the corresponding bit precision is not necessarily limited to two, and the number of bits is 8 as well. It is not limited to bits and 10 bits.

また、図7においては、関数出力精度選択部704と加算位置選択部707の両方を用いた例を示したが、どちらか一方のみを用いる構成でも、同様に実施可能である。   In FIG. 7, an example using both the function output accuracy selection unit 704 and the addition position selection unit 707 is shown, but a configuration using only one of them can be similarly implemented.

(第3の実施の形態)
次に、本発明の第3の実施の形態を、図8に基づき説明する。
(Third embodiment)
Next, a third embodiment of the present invention will be described with reference to FIG.

本実施の形態は、上述した第1の実施の形態で説明した原理と同じ原理を用いて、色変換を行うものである。   In the present embodiment, color conversion is performed using the same principle as that described in the first embodiment.

尚、本実施の形態に係る色変換装置の基本的な構成は、上述した第2の実施の形態における図7に示す構成と同一であるから、同図を必要に応じて流用して説明する。   The basic configuration of the color conversion apparatus according to the present embodiment is the same as the configuration shown in FIG. 7 in the second embodiment described above, and will be described using the same drawing as necessary. .

以下、本実施の形態に係る色変換装置の動作を、図8のフローチャートを用いて説明する。   Hereinafter, the operation of the color conversion apparatus according to the present embodiment will be described with reference to the flowchart of FIG.

本実施の形態に係る色変換装置の処理ステップは、大別して、関数近似部701aの処理である関数近似ステップS801と、誤差値補正部701bの処理である誤差値補正ステップS802とから成り、それぞれのステップS801,S802は、以下のステップから成る。   The processing steps of the color conversion apparatus according to the present embodiment are roughly divided into a function approximation step S801 that is a process of the function approximation unit 701a and an error value correction step S802 that is a process of the error value correction unit 701b. Steps S801 and S802 include the following steps.

関数近似ステップS801においては、まず、最初に格子点番号の上位ビットから係数値LUT705の参照アドレスを計算する参照アドレス計算ステップS803が実行され、入力された3次元の格子点番号が入力値の値域を複数領域に分割したときのどの領域に属するかによって、係数値LUT705の参照アドレスが求められる。次に、係数値LUT参照部703により係数値LUT705を参照する係数値LUT参照ステップS804が実行され、係数値LUT705から近似計算に使用する係数値が得られる。次に、関数値演算部702により、格子点番号と係数値とにより関数値演算を行う関数値演算ステップS805が実行され、近似関数の出力値が計算される。このステップS805の出力値のビット精度は、この色変換方法の対応する出力ビット精度のうち最も高いものと同じか、それ以上とする。次に、関数出力値を選択されたビット精度に丸める(単に切り捨てるのではなく、所定値になるように圧縮する技術)ステップS806が実行され、予め選択されたビット精度に関数出力値を丸めて(単に切り捨てるのではなく、所定値になるように圧縮する技術)出力する。   In the function approximating step S801, first, a reference address calculating step S803 for calculating the reference address of the coefficient value LUT 705 from the upper bits of the grid point number is executed, and the input three-dimensional grid point number is the range of the input value. The reference address of the coefficient value LUT 705 is determined depending on which area the data is divided into a plurality of areas. Next, the coefficient value LUT reference unit 703 executes a coefficient value LUT reference step S804 that refers to the coefficient value LUT 705, and a coefficient value used for the approximate calculation is obtained from the coefficient value LUT 705. Next, the function value calculation unit 702 executes a function value calculation step S805 for performing a function value calculation using the grid point number and the coefficient value, and calculates an output value of the approximate function. The bit precision of the output value in step S805 is the same as or higher than the highest output bit precision corresponding to this color conversion method. Next, step S806 is executed to round the function output value to the selected bit precision (a technique of compressing to a predetermined value instead of simply truncating), and rounding the function output value to a preselected bit precision. (Technique that compresses to a predetermined value instead of simply truncating).

一方、誤差値補正ステップS802においては、まず、格子点番号から誤差値LUT709の参照アドレスを計算するステップS807により、入力された3次元の格子点番号から誤差値LUT709におけるアドレスを計算する。次に、誤差値LUT参照部708により誤差値LUT709を参照する誤差値LUT参照ステップS808が実行され、誤差値を得る。次に、加算位置選択部707により、誤差値LUT709の出力値を選択された加算位置に桁合わせする加算位置選択ステップS809が実行され、誤差値を予め選択されたスケーリング係数値(1/2n倍、1倍、2n倍等)により桁合わせする。 On the other hand, in the error value correction step S802, first, in step S807 of calculating the reference address of the error value LUT 709 from the grid point number, the address in the error value LUT 709 is calculated from the input three-dimensional grid point number. Next, the error value LUT reference unit 708 executes an error value LUT reference step S808 referring to the error value LUT 709 to obtain an error value. Next, the addition position selection unit 707 executes an addition position selection step S809 in which the output value of the error value LUT 709 is aligned with the selected addition position, and the error value is converted into a preselected scaling coefficient value (1/2 n (1x, 2n times, etc.)

最後に、加算部706により、関数出力値と誤差出力値とを加算して出力する加算出力ステップS810が実行され、上述した関数近似ステップ801によって得られた近似関数出力値と、加算位置選択ステップS809によって得られた桁合わせ後の誤差値とを、加算部706により加算することで最終的な格子点出力値が得られる。   Finally, the addition unit 706 executes an addition output step S810 for adding and outputting the function output value and the error output value, and the approximate function output value obtained by the function approximation step 801 described above and the addition position selection step The final grid point output value is obtained by adding the error value after digit alignment obtained in S809 by the adding unit 706.

本実施の形態に係る色変換装置によれば、以上示したステップS801〜S810を持つことによって、上述した第1及び第2の実施の形態と同様に、3次元LUT709のメモリ容量を節約でき、より高い出力ビット精度への対応や、複数の出力ビット精度への対応が容易に行なえる。   According to the color conversion apparatus according to the present embodiment, by having the above-described steps S801 to S810, the memory capacity of the three-dimensional LUT 709 can be saved as in the first and second embodiments described above. It is possible to easily cope with higher output bit accuracy and multiple output bit accuracy.

なお、本発明は、本実施の形態に限られるものではなく、本発明の主題に基づき、どのようなものであっても適用可能である。   Note that the present invention is not limited to the present embodiment, and any one can be applied based on the subject matter of the present invention.

また、本発明の目的は、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム又は装置に供給し、そのシステム又は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出して実行することによっても達成されることは言うまでもない。   Another object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the above-described embodiments to a system or apparatus, and store the computer (or CPU or MPU) of the system or apparatus. Needless to say, this can also be achieved by reading and executing the program code stored in the medium.

この場合、記憶媒体から読出されたプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code and the storage medium storing the program code constitute the present invention.

また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an operating system (OS) or the like running on the computer based on the instruction of the program code However, it is needless to say that a case where the functions of the above-described embodiment are realized by performing part or all of the actual processing.

また、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。   In addition, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is determined based on the instruction of the program code. It goes without saying that the CPU or the like provided in the expansion card or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.

また、上記プログラムは、上述した実施の形態の機能をコンピュータで実現することができれば良く、その形態は、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給されるスクリプトデータ等の形態を有するものでも良い。   The above-described program only needs to be able to realize the functions of the above-described embodiments by a computer, and the form includes forms such as object code, a program executed by an interpreter, and script data supplied to the OS. But it ’s okay.

また、プログラムを供給する記録媒体としては、例えば、RAM、NV−RAM、フロッピー(登録商標)ディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD(DVD−ROM、DVD−RAM、DVD−RW、DVD+RW)、磁気テープ、不揮発性のメモリカード、他のROM等の上記プログラムを記憶できるものであれば良い。   The recording medium for supplying the program includes, for example, RAM, NV-RAM, floppy (registered trademark) disk, optical disk, magneto-optical disk, CD-ROM, CD-R, CD-RW, DVD (DVD-ROM, DVD-RAM, DVD-RW, DVD + RW), magnetic tape, non-volatile memory card, other ROM, and the like may be used as long as they can store the program.

更に、上記プログラムは、インターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。   Further, the program is supplied by downloading from another computer or database (not shown) connected to the Internet, a commercial network, a local area network, or the like.

本発明の1次元LUTによる原理説明図である。It is principle explanatory drawing by the one-dimensional LUT of this invention. 本発明の原理を説明するための近似関数説明図である。It is an approximate function explanatory drawing for demonstrating the principle of this invention. 本発明の原理を説明するための誤差値テーブル説明図である。It is error value table explanatory drawing for demonstrating the principle of this invention. 本発明の3次元LUTによる原理説明図である。It is principle explanatory drawing by the three-dimensional LUT of this invention. 本発明の原理を説明するための3次元入力時の入力値域分割の一例を示す図である。It is a figure which shows an example of the input value range division | segmentation at the time of three-dimensional input for demonstrating the principle of this invention. 本発明の第1の実施の形態に係る色変換装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a color conversion apparatus according to a first embodiment of the present invention. 本発明の第2の実施の形態に係る色変換装置の要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of the color conversion apparatus which concerns on the 2nd Embodiment of this invention. 本発明の第3の実施の形態に係る色変換装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the color conversion apparatus which concerns on the 3rd Embodiment of this invention. 従来の色変換装置の構成を示すブロック図である。It is a block diagram which shows the structure of the conventional color conversion apparatus.

符号の説明Explanation of symbols

601 3次元LUT参照部
601a 関数近似部
601b 誤差値補正部
602 関数値演算部
603 係数値LUT参照部
604 加算部
605 誤差値LUT参照部
606 係数値LUT
607 3次元LUT(3D LUT:誤差値LUT)
701 3次元LUT参照部
701a 関数近似部
701b 誤差値補正部
702 関数値演算部
703 係数値LUT参照部
704 関数出力精度選択部
705 係数値LUT
706 加算部
707 換算位置選択部
708 誤差値LUT参照部
709 3次元LUT(3D LUT:誤差値LUT)
601 Three-dimensional LUT reference unit 601a Function approximation unit 601b Error value correction unit 602 Function value calculation unit 603 Coefficient value LUT reference unit 604 Addition unit 605 Error value LUT reference unit 606 Coefficient value LUT
607 3D LUT (3D LUT: error value LUT)
701 Three-dimensional LUT reference unit 701a Function approximation unit 701b Error value correction unit 702 Function value calculation unit 703 Coefficient value LUT reference unit 704 Function output accuracy selection unit 705 Coefficient value LUT
706 Addition unit 707 Conversion position selection unit 708 Error value LUT reference unit 709 Three-dimensional LUT (3D LUT: error value LUT)

Claims (8)

多次元ルックアップテーブルの値域を複数の領域に分割して得た各領域に対応する係数値を格納する係数値格納手段と
入力値に対応する前記多次元ルックアップテーブル中の格子点を計算する格子点計算手段と、
前記計算された格子点が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を選択する係数値参照手段と、
前記計算された格子点に対して選択された係数値を用いて関数値を演算する関数値演算手段と、
前記関数値演算手段が演算した関数値と本来出力すべき値との差分を誤差値として前記格子点のそれぞれに対応して格納する誤差値格納手段と、
前記誤差値格納手段から前記計算された格子点に対応する前記誤差値を獲得する誤差値獲得手段と
前記関数値演算手段が演算した関数値に対して前記誤差値獲得手段が獲得した誤差値を加算することで、前記計算された格子点における出力値を算出する加算手段と、
前記加算手段で算出された出力値に基づいて、前記入力値に対応する出力値を補間演算することにより求める補間演算手段と
を有することを特徴とする色変換装置。
Coefficient value storage means for storing coefficient values corresponding to each area obtained by dividing the range of the multidimensional lookup table into a plurality of areas ;
Grid point calculation means for calculating grid points in the multi-dimensional lookup table corresponding to input values;
Coefficient value reference means for selecting a corresponding coefficient value from the coefficient value storage means depending on which area of the plurality of areas the calculated lattice points belong to;
A function value calculating means for calculating a function value using a coefficient value selected for the calculated lattice point ;
Error value storage means for storing a difference between a function value calculated by the function value calculation means and a value to be output as an error value corresponding to each of the lattice points;
Error value acquisition means for acquiring the error value corresponding to the calculated grid point from the error value storage means ;
By adding the error value said error value acquisition means has acquired for function value the function value calculating means is calculated, adding means for calculating an output value of the calculated grid points,
Interpolation operation means for obtaining an output value corresponding to the input value by performing interpolation operation based on the output value calculated by the addition means .
前記入力値に対応する多次元ルックアップテーブル中の格子点を、前記入力値の上位ビットに基づいて計算することを特徴とする請求項1に記載の色変換装置。The color conversion apparatus according to claim 1, wherein a lattice point in a multidimensional lookup table corresponding to the input value is calculated based on upper bits of the input value. 前記係数値は、前記領域において前記誤差値をできるだけ小さくするように決定されることを特徴とする請求項1又は2に記載の色変換装置。The color conversion apparatus according to claim 1, wherein the coefficient value is determined so as to make the error value as small as possible in the region. 多次元ルックアップテーブルの値域を複数の領域に分割して得た各領域に対応する係数値を格納する係数値格納手段を備える色変換装置の制御方法であって
入力値に対応する前記多次元ルックアップテーブル中の格子点を計算する格子点計算ステップと、
前記計算された格子点が前記複数の領域のどの領域に属しているかによって前記係数値格納手段から対応する係数値を選択する係数値参照ステップと、
前記計算された格子点に対して選択された係数値を用いて関数値を演算する関数値演算ステップとを有し、
前記色変換装置は、前記関数値演算ステップで演算した関数値と本来出力すべき値との差分を誤差値として前記格子点のそれぞれに対応して格納する誤差値格納手段をさらに備え、
前記制御方法は、
前記誤差値格納手段から前記計算された格子点に対応する前記誤差値を獲得する誤差値獲得ステップと、
前記関数値演算ステップで演算した関数値に対して前記誤差値獲得ステップで獲得した誤差値を加算することで、前記計算された格子点における出力値を算出する加算ステップと、
前記加算ステップで算出された出力値に基づいて、前記入力値に対応する出力値を補間演算することにより求める補間演算ステップと
を有することを特徴とする色変換装置の制御方法。
A control method for a color conversion device comprising coefficient value storage means for storing coefficient values corresponding to respective areas obtained by dividing a range of a multidimensional lookup table into a plurality of areas ,
A grid point calculation step of calculating grid points in the multi-dimensional lookup table corresponding to the input value;
A coefficient value reference step of selecting a corresponding coefficient value from the coefficient value storage unit according to which region of the plurality of regions the calculated grid point belongs to;
A function value calculation step of calculating a function value using a coefficient value selected for the calculated grid point ;
The color conversion device further includes error value storage means for storing a difference between the function value calculated in the function value calculation step and a value to be output as an error value corresponding to each of the grid points ,
The control method is:
An error value acquiring step of acquiring the error value corresponding to the calculated grid point from the error value storage means;
An addition step of calculating an output value at the calculated lattice point by adding the error value acquired in the error value acquisition step to the function value calculated in the function value calculation step;
A control method for a color conversion apparatus, comprising: an interpolation calculation step for obtaining an output value corresponding to the input value by performing an interpolation calculation based on the output value calculated in the addition step .
前記入力値に対応する多次元ルックアップテーブル中の格子点を、前記入力値の上位ビットに基づいて計算することを特徴とする請求項4に記載の色変換装置の制御方法。5. The method according to claim 4, wherein a grid point in the multi-dimensional lookup table corresponding to the input value is calculated based on the upper bits of the input value. 前記関数値演算ステップで演算した関数値を複数のビット精度から選択して出力する関数値出力精度選択ステップを有することを特徴とする請求項4又は5に記載の色変換装置の制御方法。 6. The method of controlling a color conversion apparatus according to claim 4, further comprising a function value output accuracy selection step of selecting and outputting the function value calculated in the function value calculation step from a plurality of bit accuracy. 前記誤差値獲得ステップで獲得した誤差値を複数のビット位置から選択して桁合わせした上で前記加算ステップに対して出力する加算位置選択ステップを有することを特徴とする請求項4乃至6のいずれか1項に記載の色変換装置の制御方法。 Any of claims 4 to 6, characterized in that it has the addition position selecting step of outputting to the adder step in the combined digits to select an error value acquired by the error value acquisition step from a plurality of bit positions A method for controlling the color conversion apparatus according to claim 1 . 請求項4乃至7のいずれか1項に記載の色変換装置の制御方法を実現するためのコンピュータ読み取り可能なプログラムコードを有することを特徴とするプログラム。 A program comprising computer-readable program code for realizing the color conversion device control method according to any one of claims 4 to 7 .
JP2005061334A 2005-03-04 2005-03-04 COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM Expired - Fee Related JP4411230B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005061334A JP4411230B2 (en) 2005-03-04 2005-03-04 COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005061334A JP4411230B2 (en) 2005-03-04 2005-03-04 COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM

Publications (3)

Publication Number Publication Date
JP2006246236A JP2006246236A (en) 2006-09-14
JP2006246236A5 JP2006246236A5 (en) 2008-04-17
JP4411230B2 true JP4411230B2 (en) 2010-02-10

Family

ID=37052149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005061334A Expired - Fee Related JP4411230B2 (en) 2005-03-04 2005-03-04 COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM

Country Status (1)

Country Link
JP (1) JP4411230B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8368978B2 (en) 2008-12-23 2013-02-05 Ricoh Production Print Solutions LLC Linear processing in color conversion

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02206973A (en) * 1989-02-07 1990-08-16 Matsushita Electric Ind Co Ltd Color correction device
JP3519230B2 (en) * 1997-01-13 2004-04-12 シャープ株式会社 Color correction method for image data

Also Published As

Publication number Publication date
JP2006246236A (en) 2006-09-14

Similar Documents

Publication Publication Date Title
JP4651108B2 (en) Conversion table compression method and program, and conversion table compression apparatus
US8832168B2 (en) Computations of power functions using polynomial approximations
KR102152346B1 (en) Method and system for improving compression ratio by difference between blocks of image file
US20180255206A1 (en) 2d lut color transforms with reduced memory footprint
US11055816B2 (en) Image processing device, image processing method, and image processing program
KR20210094054A (en) Bit-plane encoding of data arrays
JP2008059582A (en) Level of detail value calculating method for reducing power consumption, and 3-dimensional rendering system using the same
US7573612B2 (en) Color conversion apparatus, color conversion method and color conversion program
JP2007121479A (en) Circuit and method for digital gamma correction
JP2006145850A (en) Data outputting method and device, liquid crystal panel driving device using the same, and liquid crystal display device
JP4411230B2 (en) COLOR CONVERSION DEVICE, ITS CONTROL METHOD, AND PROGRAM
US10269168B2 (en) Graphics processing systems
KR102185668B1 (en) Method and system for improving compression ratio through pixel conversion of image file
US20230377265A1 (en) Systems for Efficiently Rendering Vector Objects
US6005988A (en) Method and apparatus for rapid digital image resizing
US7397483B1 (en) Image data conversion using interpolation
JP2007086956A (en) Image processor, image processing method and computer program
JP2008067233A (en) Digital-watermarking embedding method, program, and computer-readable recording medium
US9489344B2 (en) Methods of and apparatus for approximating a function
JP2004213464A (en) Image processor
JP6795411B2 (en) Image correction device and image correction method and program
JP2005045797A (en) Method and apparatus for reducing bandwidth required to transmit image data
Akin et al. Enhanced Compressed Look-up-Table Based Real-Time Rectification Hardware
JP5025779B2 (en) Conversion table compression method, apparatus, program, conversion table restoration apparatus, program
CN116227507B (en) Arithmetic device for performing bilinear interpolation processing

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090727

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091110

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091116

R150 Certificate of patent or registration of utility model

Ref document number: 4411230

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121120

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131120

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees