JP4288865B2 - Color interpolation method and color interpolation apparatus - Google Patents

Color interpolation method and color interpolation apparatus Download PDF

Info

Publication number
JP4288865B2
JP4288865B2 JP2001146327A JP2001146327A JP4288865B2 JP 4288865 B2 JP4288865 B2 JP 4288865B2 JP 2001146327 A JP2001146327 A JP 2001146327A JP 2001146327 A JP2001146327 A JP 2001146327A JP 4288865 B2 JP4288865 B2 JP 4288865B2
Authority
JP
Japan
Prior art keywords
output
data
lut
sub
bit
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
JP2001146327A
Other languages
Japanese (ja)
Other versions
JP2002344757A (en
Inventor
博哲 洪
Original Assignee
コニカミノルタホールディングス株式会社
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 コニカミノルタホールディングス株式会社 filed Critical コニカミノルタホールディングス株式会社
Priority to JP2001146327A priority Critical patent/JP4288865B2/en
Publication of JP2002344757A publication Critical patent/JP2002344757A/en
Application granted granted Critical
Publication of JP4288865B2 publication Critical patent/JP4288865B2/en
Application status is Expired - Fee Related legal-status Critical
Anticipated expiration legal-status Critical

Links

Images

Description

【0001】 [0001]
【発明の属する技術分野】 BACKGROUND OF THE INVENTION
本発明は色補間方法及び色補間装置に関し、更に詳しくは高速化した色補間方法及び色補間装置に関する。 The present invention relates to a color interpolation process and color interpolation device, more particularly to a color interpolation process and color interpolation apparatus speed. 色変換方法として、多次元のLUTと補間演算器による演算が知られている。 As a color conversion method, operations by multidimensional LUT and interpolation calculator are known. 米国特許第4837722号では、高速演算のために補間演算器をパラレルに並べて計算する方法が提案されている。 In U.S. Patent No. 4837722, a method of calculating side by side interpolator in parallel for high speed operation it has been proposed.
【0002】 [0002]
【従来の技術】 BACKGROUND OF THE INVENTION
カラープリンタ、カラースキャナ、カラー複写機等では、光電走査によって得た色分解ディジタル画像データの色修正を行なうことが多い。 Color printer, color scanner, a color copying machine or the like, often performing color correction of the color separation digital image data obtained by photoelectrically scanning. 上記のようなディジタル画像データの色修正は演算により行なわれる場合もあるが、予め色分解画像データの組み合わせ(例えば赤R,緑G,青Bの3原色画像データの組み合わせ)に対応する修正済み画像データの組み合わせ(例えばイエローY,マゼンタM,シアンC,ブラックKのインキ量)を変換テーブルとして記憶させておき、修正前のデータの組み合わせをアドレス指定信号として、修正済みのデータの組み合わせ(変換出力データ)を読み出すように構成される場合もある。 Color correction of digital image data as described above is sometimes performed by the calculation, but the combination of the pre-color separation image data (e.g., red R, green G, 3 combinations of primary colors blue image data B) has been corrected, corresponding to the the combination of the image data (for example, yellow Y, magenta M, cyan C, the amount of ink black K) may be stored as a conversion table, as an address designation signal combination of the previous data modification, the combination of the modified data (conversion If configured to read output data) also.
【0003】 [0003]
前述のような変換テーブルを用いたデータ変換では、入力データの組み合わせ全てに対応する修正データの組み合わせを記憶するようにすると、膨大な記憶容量が必要となって、変換テーブルとして用いるメモリのコストアップになるので、変換出力データを適宜間引いて記憶させ、間引いた部分に相当する入力データの組み合わせに対応する修正データについては補間演算により求めることが一般に行われている。 The data conversion using the conversion table as described above, when configured to store the combination of the correction data corresponding to all combinations of the input data, and a huge storage capacity required, cost of the memory used as a conversion table since the, stores the converted output data appropriately thinned by, for correction data corresponding to the combination of the input data corresponding to the thinned portion is generally carried out be obtained by interpolation.
【0004】 [0004]
上記のように、変換テーブルを用いたデータ変換を、補間演算を伴って行わせる技術としては、従来、特公昭58−16180号公報及び特開昭63−162248号公報等に開示されるようなものがある。 As described above, the data conversion using a conversion table, as a technique to perform with the interpolation operation, as conventionally disclosed in JP-B-58-16180 and JP 63-162248 Patent Publication there are things. 特公昭58−16180号公報では、3次元の入力ディジタルデータが構成する3次元の空間を複数の単位立方体で分割し、該複数の立方体の頂点それぞれに対応させて変換出力データを記憶させて変換テーブルを構成する。 In JP-B 58-16180 discloses a three-dimensional space in which the input digital data of a three-dimensional constitute divided by a plurality of unit cubes, stores the converted output data in correspondence with each vertex of the plurality of cube transformation make up the table.
【0005】 [0005]
そして、前記単位立方体を、該単位立方体の8頂点の中の4頂点からなる複数(5又は6個)の4面体に分割し、3次元の入力データに対応する点を含む4面体の4頂点それぞれにおける変換出力データを読み出し、該4個の変換出力データを補間演算することで、3次元入力データに対する最終的な変換出力データを出力するようにしている。 Then, the unit cube is divided into tetrahedral consisting four vertices of the eight vertices of the unit cube (5 or 6), tetrahedral four vertices including points corresponding to the three-dimensional input data read the converted output data in each, by interpolation calculation the four transformed data, and outputs a final conversion output data for the three-dimensional input data.
【0006】 [0006]
また、特開昭63−162248号公報には、前記立方体をそのまま用い、3次元の入力データに対応する点を含む立方体の8頂点に対応して読み出される8個の変換出力データから補間演算により最終的な変換出力データを出力するようにしている。 Further, in JP-A-63-162248 is used as the cube, by interpolation from eight conversion output data read in response to 8 vertices of the cube containing the point corresponding to the three-dimensional input data and to output the final transformed data. 上記の特公昭58−16180号公報及び特開昭63−162248号公報等に開示されるデータ変換では、補間演算を用いることで変換テーブルに記憶させる変換出力データの数を少なくしてメモリ容量を小さく抑えると共に、非線形の変換も小さいな誤差で行なえるものであり、またハードウェアも比較的小規模ですみ、比較的高速な回路が実現できる。 The data conversion is disclosed in the above Japanese Patent Publication 58-16180 and JP 63-162248 discloses such a memory capacity by reducing the number of converted output data to be stored in the conversion table by using the interpolation calculation small suppresses are those performed with even smaller Do error converter nonlinear and hardware also seen is relatively small, relatively fast circuit can be realized.
【0007】 [0007]
【発明が解決しようとする課題】 [Problems that the Invention is to Solve
パラレルに演算を行なう場合、全体として設計しなくてはならないため、回路が複雑になるという問題がある。 When performing parallel to the operation, since the must be designed as a whole, there is a problem that the circuit becomes complicated. また、一つのユニットを繰り返し利用できず、例えば乗算器と足し算器を別々に用いることになる。 Furthermore, it can not be repeated using a single unit, for example, will be used separately multiplier and adder. また、補間演算点数はハードウェアで固定的である。 Further, the interpolation calculation points are fixed in hardware. しかしながら、例えば入力データがL ***では8点補間が最適であり、入力データがR,G,BやY,M,Cの場合には4点補間が最適であることが知られている。 However, for example, the input data is L * a * b * in 8-point interpolation is optimal, the input data R, G, B and Y, M, is known that four-point interpolation is optimal in the case of C ing. この場合、それぞれに最適な補間演算が行われないことになる。 In this case, the optimal interpolation operation, each not performed.
【0008】 [0008]
本発明はこのような課題に鑑みてなされたものであって、高速演算が可能な色補間方法及び色補間装置を提供することを目的としている。 The present invention was made in view of such problems, and its object is to provide a color interpolation process and color interpolation device capable of high-speed operation. 即ち、第1にメモリの総量を最小限にして、かつ最大の計算能力を実現し、第2に同じ形式のユニットを並べることで、部品及びタイミング設計を容易にし、第3に容易に補間に必要な格子点数を変更できる仕組みを提案する。 That is, the first and the total amount of memory to a minimum, and to achieve maximum computing power, by arranging the units of the same type in the second, to facilitate the components and timing design, easily interpolated third we propose a mechanism that can change the required number of grid points.
【0009】 [0009]
【課題を解決するための手段】 In order to solve the problems]
(1)請求項1記載の発明は、全体の色変換テーブルのテーブル値を格子の一つおきに取り出した複数の色変換テーブル持ち、 前記複数の色変換テーブルのそれぞれを用いた演算結果を逐次累積する演算を用いて色補間を行なうことを特徴とする。 (1) invention of claim 1, having a plurality of color conversion tables extracted table value of the entire color conversion table every other grid, the calculation results using each of the plurality of color conversion tables and performing color interpolation using operation to sequentially accumulated.
【0010】 [0010]
このように構成すれば、演算回路をシリアルに並べることで、同じユニットが利用でき、かつパイプライン化できるので、 処理を高速化することができる。 According to this structure, the arithmetic circuit by arranging serially, the same unit can be used, and it is possible pipelined, it is possible to speed up the process.
(2)請求項2記載の発明は、前記全体の色変換テーブルは、n色の入力データが入力される時に2のn乗個に分割されていることを特徴とする。 (2) According to a second aspect of the invention, the entire color conversion table is characterized in that the input data of n colors is divided into at 2 of n-th power is input.
【0011】 [0011]
このように構成すれば、補間演算の点数を自由に設定することができる。 According to this structure, it is possible to freely set the number of interpolation.
(3)請求項3記載の発明は、前記分割された複数の色変換テーブルが同時に使われない組み合わせについては、パラレルに並べることを特徴とする。 (3) According to a third aspect of the invention, the combination of the divided plurality of color conversion table is not used at the same time, characterized in that arranged in parallel.
【0012】 [0012]
このように構成すれば、遅延を少なくすることができる。 According to this structure, it is possible to reduce the delay.
(4)請求項4記載の発明は、 n色の入力データの入力に対して、 2のn乗より少ない数で補間する場合、 前記複数の色変換テーブルのそれぞれを用いた演算を行なう際に、当該色変換テーブルを使用しない演算は、0と乗算することを特徴とする。 (4) invention of claim 4, wherein, for the input of the input data of n colors, when interpolating by fewer than 2 n, when performing operations using each of the plurality of color conversion tables , operation without using the color conversion table, characterized by multiplying zero.
【0013】 [0013]
このように構成すれば、簡単な構成でバイパスするのと同等の効果が得られる。 According to this structure, the same effect as bypassing can be obtained with a simple configuration.
(5)請求項5記載の発明は、 入力データの種類に応じて補間演算点数を可変に選択することを特徴とする。 (5) invention of claim 5, wherein the variable selecting interpolation points according to the type of input data.
【0014】 [0014]
このように構成すれば、入力データに応じて最適な補間演算手段が選択できる。 According to this structure, optimum interpolation operation means can be selected according to the input data.
(6)請求項6記載の発明は、全体の色変換テーブルのテーブル値を格子の一つおきに取り出した複数の色変換テーブル持ち、 前記複数の色変換テーブルのそれぞれを用いた演算結果を逐次累積する演算を用いて計算する演算部を有することを特徴とする。 (6) According to a sixth aspect of the invention has a plurality of color conversion tables extracted table value of the entire color conversion table every other grid, the calculation results using each of the plurality of color conversion tables characterized in that it has a calculation unit for calculating with the operation to sequentially accumulated.
【0015】 [0015]
このように構成すれば、演算回路をシリアルに並べることで、同じユニットが利用でき、かつパイプライン化できるので高速化することができる。 According to this structure, the arithmetic circuit by arranging serially, the same unit can be used, and it is possible to speed since it pipelined.
【0016】 [0016]
【発明の実施の形態】 DETAILED DESCRIPTION OF THE INVENTION
以下に、図面を参照して本発明の実施の形態例を詳細に説明する。 Hereinafter, with reference to the drawings illustrating the embodiments of the embodiment of the invention in detail.
図1は本発明の一実施の形態例を示すブロック図で、3次元入力の場合を例にとっている。 Figure 1 is a block diagram showing an embodiment of an embodiment of the present invention, taking the case of a three-dimensional input as an example. 図において、1は入力データ24ビットを受けて、ビットを振り分けるビット振り分け器である。 In FIG, 1 receives the input data 24 bits, a bit allocator for distributing bits. 入力24ビットデータは、例えばRが8ビット、Gが8ビット、Bが8ビットである。 Input 24-bit data, for example, R is 8-bit, 8-bit G is, B is 8 bits. 2はビット振り分け器1からの出力信号を受けて重みとアドレスを出力する係数発生器である。 2 is a coefficient generator for outputting a weighting and address receives the output signal from the bit distributor 1. 該係数発生器2は、#0〜#7までの8個存在する。 The coefficient generator 2, there are eight pieces of up to # 0 to # 7. そして、これら係数発生器2は#0が#1に入り、#1が#2に入るという具合に直列に接続されている。 Then, the coefficients generator 2 enters the # 0 # 1, # 1 are connected in series so on into the # 2.
【0017】 [0017]
10は副LUTと乗算累積器を8個用いた演算部である。 10 is eight reference computation unit sub LUT and multiplier accumulator. 3が副LUTと乗算累積器(以下単に演算器と略す)であり、図に示すように#0〜#7まで8個直列に接続されている。 3 is a sub-LUT and multiplier accumulator (hereinafter simply referred to as arithmetic units), are connected in eight series to # 0 to # 7 as shown in FIG. #0の演算器には入力としてゼロデータが入力されている。 # The calculator of 0 is input zero data as input. 該#0の演算器の出力は#1の演算器に入り、#1の演算器の出力は#2の演算器に入る。 The output of the arithmetic unit of the # 0 enters # 1 of the arithmetic unit, the output of # 1 of the calculator enters the # 2 of the calculator. 以下、同様に接続され、演算出力が累積されていくようになっている。 Hereinafter, connected similarly, calculated output is adapted to gradually accumulate. 演算部10において、4は最終段の演算器の出力を受けて重みの総和で割算して出力(8ビット)を得る割算器である。 The computing section 10, 4 is a divider to obtain the division to output (8 bits) in the weight of the total receiving an output of the arithmetic unit of the last stage.
【0018】 [0018]
図に示す演算部10は、Y,M,C毎に設けられている。 Arithmetic unit 10 shown in the figure, provided Y, M, for each C. 即ち、10はY系の演算部であり、20はM系の演算部であり、30はC系の演算部である。 That is, 10 is the calculation of the Y system, 20 is an arithmetic unit of the M system, 30 is an arithmetic unit of the C system. そして、それぞれの演算部からは、8ビットの演算出力が得られるようになっている。 Then, from each calculation unit, so that the calculated output of 8 bit can be obtained. Kや特色出力があれば、このユニットが増える。 If K and spot color output, this unit is increased. 色変換LUT値は、それぞれの演算部に共通に入力されている。 The color conversion LUT values ​​are inputted in common to each of the arithmetic unit. この色変換LUT値は、それぞれの演算器3毎に分割されて与えられている。 The color conversion LUT values ​​are given are divided into respective each adder 3. また、各係数発生器2からは、対応する演算器3に重みとアドレスが与えられている。 Also, from each coefficient generator 2, weight and address are given to the corresponding computing unit 3. 図に示す回路は、図示しないタイミングクロックにより同期して動作するようになっている。 Circuit shown is adapted to operate in synchronism with the timing clock (not shown). このように構成された回路の動作を説明すれば、以下の通りである。 To describe the operation of the thus constituted circuit is as follows.
【0019】 [0019]
図1に示す実施の形態例は、三角錐を用いた4点補間法を実現する回路である。 Embodiment embodiment shown in FIG. 1 is a circuit for implementing the four-point interpolation method using a triangular pyramid. 図2は三角錐を用いた4点補間の説明図である。 Figure 2 is an illustration of a four-point interpolation using a triangular pyramid. 立方体を三角錐で分割すると、6個の三角錐に分割される。 Dividing the cube triangular pyramid is divided into six triangular pyramid. そして、それぞれの条件毎に補間式を求める。 Then, a interpolation equation for each condition. 例えばx≧y≧zの場合、当該三角錐内の任意の点Pの補間値p xyzは次式で表される。 For example, in the case of x ≧ y ≧ z, interpolated value p xyz of an arbitrary point P in the triangular pyramid is expressed by the following equation.
【0020】 [0020]
xyz =p a (1−x)+p b (x−y)+p c (y−z)+p g z (1) p xyz = p a (1- x) + p b (x-y) + p c (y-z) + p g z (1)
但し、この式では格子間隔が1の場合を示している。 However, the lattice spacing in this equation indicates a case of one. ここで、pa〜pgは三角錐の各頂点の値を示す。 Here, Pa~pg indicates a value of each vertex of the triangular pyramid. 図1に示す回路は、ハードウェア的に(1)式を実現するものである。 The circuit shown in Figure 1 is intended to realize a hardware manner (1).
【0021】 [0021]
本来の3次元補間用LUTをN×N×N(Nは偶数)としたとき、8つに分割して、それぞれのブロックに転送する。 When the original three-dimensional interpolation LUT was N × N × N (N is an even number), it is divided into eight, and transfers the respective block. この分割方法は、図3に示すように、一つおきに並べたデータを8つの(N/2)×(N/2)×(N/2)のLUTに分割するものである。 This division method, as shown in FIG. 3 is to divide the LUT every other Tile data eight (N / 2) × (N / 2) × (N / 2). 図3において、(a)に示すLUT全体を○、□、△、×の点を一つおきにとっていき、各々の点で構成されるデータで分割すると、図3の(b)〜(e)に示すように分割される。 In FIG. 3, ○ the whole LUT shown in (a), □, △, go to every other point ×, when divided by data composed of each point, in FIG. 3 (b) ~ (e) It is divided as shown in. 図は2次元の場合を示す。 The figure shows the case of two-dimensional. 3次元の場合には8個に分割される。 It is divided into eight in the case of three dimensions.
【0022】 [0022]
このように分割されたLUTを副LUTnと呼ぶことにする。 Thus the divided LUT is referred to as a sub LUTn. ここで、nは0から7までの数字である。 Here, n is a number from 0 to 7. この副LUTは、nを0から((N/2)−1)とし、その2進数をi,j,kとしたとき、 When this sub-LUT is that the n from 0 ((N / 2) -1), and the binary number i, j, and k,
LUTn[I][J][K]=LUT[2・I+i][2・J+j][2・K+k] (2) LUTn [I] [J] [K] = LUT [2 · I + i] [2 · J + j] [2 · K + k] (2)
により設定されるサイズ1/8のLUTである。 Is a LUT of size 1/8 set by. ここで、I,J,Kは0〜7のR,G,Bのアドレス、i,j,kは0か1の値である。 Here, I, J, K R in 0 to 7, G, address B, i, j, k is 0 or 1 value. (2)式は、副LUTが右辺で表される元のLUTの(2)式に示すアドレスと対応していることを示す。 (2) indicates that the sub-LUT corresponds to the address indicated in (2) of the original LUT represented by the right-hand side. つまり、左辺の副LUTは右辺に示すLUTのアドレスで表される場所からとってくるものであることを示す。 That is, the sub-LUT of the left side indicates that those fetch from the location represented by the address of the LUT shown in the right-hand side. このように、本発明によれば、色変換テーブルをn色入力の時に2のn乗個に分割することで、補間演算の点数を自由に設定することができる。 Thus, according to the present invention, by dividing the color conversion table 2 of n-th power when n input gradation, it is possible to freely set the number of interpolation.
【0023】 [0023]
ここで、N=16として説明する。 Here it will be described as N = 16. 図1において、入力されたR,G,B値は、ビット振り分け器1で、各色上位値と下位値、及び上下判定値に分けられる。 In Figure 1, the input R, G, B values, a bit distributor 1, each color upper value and a lower value, and are divided into upper and lower determination value. 図4はビット振り分け器1の一実施の形態例を示すブロック図である。 Figure 4 is a block diagram showing an embodiment of an embodiment of a bit distributor 1. 入力値は、R,G,B毎に8ビットの合計24ビットである。 Input value, R, is a total of 24 bits of 8-bit G, each B. RはRチャネル40に入り、GはGチャネル41に入り、BはBチャネル42に入る。 R enters the R channel 40, G enters the G channel 41, B enters B channel 42.
【0024】 [0024]
例えば、Rチャネル40において、50は8ビットのRデータを受ける上位/下位ビット振り分け器、51は該上位/下位ビット振り分け器50の出力を受ける上半位/下半位振り分け器である。 For example, the R channel 40, 50 the upper / lower bit allocator for receiving the 8-bit R data, 51 is a semi-position / lower half of distributor on receiving an output of said upper / lower bit distributor 50. 上位/下位ビット振り分け器50からは3ビットの上位値(0〜7)が出力され、上半位/下半位振り分け器51からは1ビットの上下判別値と5ビットの下位値(0〜16)が出力される。 Upper / lower bit allocator 50 upvalue 3 bits from (0 to 7) is output, the upper half of / the lower half of the upper and lower determination value of 1 bit from the distributor 51 and 5 bits of the lower value (0 16) is output. 以上の構成は、他のGチャネル、Bチャネルについても同様である。 Above configuration, other G-channel is the same for the B channel. Rチャネル、Gチャネル、Bチャネルから出力される5ビットの下位値は三角錐コード発生器43に入り、該三角錐コード発生器43からは、3ビットの三角錐コード(0〜5)が出力される。 R channel, G channel, the lower value of 5 bits output from the B channel enters the triangular pyramid code generator 43, from the three-sided pyramid code generator 43, 3-bit triangular pyramid code (0-5) is output It is. 三角錐コードは、図2に示す三角錐に0〜5までのコードを振り、各三角錐を識別するものである。 Triangular pyramid code swinging code to 0-5 triangular pyramid shown in FIG. 2, is intended to identify each triangular pyramid. 三角錐発生コードの組み合わせは、図5に示す通りである。 The combination of a triangular pyramid generated code is as shown in FIG. 例えば、B≧R≧Gの場合の三角錐コードは“4”である。 For example, a triangular pyramid code for the B ≧ R ≧ G is "4".
【0025】 [0025]
ここで、図4において示す計算式で上位値、上下判別値、下位値が計算される。 Here, the upper value in calculations shown in FIG. 4, the upper and lower determination value, the lower value is calculated. 例えば、上位値は入力値/34で表され、1次下位値は入力値を34で割った余り(%34)で表され、上下判別値は入力値/17で表され、更に、最終の下位値は入力値%17で表される。 For example, the higher value is represented by an input value / 34, primary lower value is represented by a remainder obtained by dividing the input value by 34 (% 34), upper and lower determination value is represented by an input value / 17, further, the final lower value is represented by the input value% 17. そして、3色の最終の下位値を用いて補間演算に使用される三角錐(4点の組み合わせ)の位置を決定するコードを三角錐コード発生器43から出力する。 Then, it outputs the code to determine the position of the triangular pyramid which is used in the interpolation operation (a combination of four points) with the lower value of the three colors from the final triangular pyramid code generator 43. ここで出力されたデータは、各演算と同期して次の係数発生器2(#0)に転送される。 Here output data is synchronized with the operation is forwarded to the next coefficient generator 2 (# 0).
【0026】 [0026]
図6は係数発生器の一実施の形態例を示すブロック図である。 6 is a block diagram showing an embodiment of an embodiment of the coefficient generator. 係数発生器2は副LUTnに対するアドレスと補間演算用重み係数を出力して副LUTnと乗算器のブロック(演算器)3に送る。 Coefficient generator 2 is sent to block (calculator) 3 outputs the address and the interpolation operation for the weighting factor for the sub LUTn a sub LUTn multiplier. ビット振り分け器1からのR,G,B毎の上位値(0〜7)は加算器61に入り、下位値(0〜16)と、上下判別ビット(0〜1)はアドレス発生/重み発生器60に入る。 R from the bit distributor 1, G, upper value for each B (0 to 7) enters the adder 61, the lower value (0 to 16), the upper and lower discrimination bit (0-1) the address generating / weight generation enter the vessel 60. アドレス発生/重み発生器60には、LUT ID[0〜7]も入っている。 The address generation / weight generator 60, LUT ID [0~7] are also included. このLUT IDは図1に示す位置データと同じものである。 The LUT ID is the same as the position data shown in FIG.
【0027】 [0027]
アドレス発生/重み発生器60からは、R,G,B毎の増分アドレスと重み係数が発生される。 From the address generating / weight generator 60, R, G, increment the address and the weighting factor for each B is generated. ここで、増分アドレスは、LUTのアドレスを指定する時に、最も小さい値を基底にして必要な軸に+1するものである。 Here, the increment address, when the address of the LUT, is to +1 to the required axis with the lowest value to the base. 例えば、2次元で示すと(3,4)が基底アドレスだとすると、(4,4)、(4,5)のように、+0又は+1を行なう。 For example, if the illustrated two-dimensional (3, 4) is that it is the base address, (4,4), as in (4,5), a + 0 or +1. これにより、三角錐の位置を決めるものである。 As a result, it is intended to determine the triangular pyramid of position. ここで、三角錐の位置を決めるとは、LUTの格子のいずれを用いるか(格子のいずれかの点で構成される三角錐を用いるか)を決定することである。 Here, the determining the triangular pyramid position is to determine whether to use the one of the lattice of an LUT (or use a triangular pyramid consists of any point of the grid).
【0028】 [0028]
R,G,B毎の上位値(0〜7)と増分アドレス(0〜1)は加算器61に入り、該加算器61からはRアドレス(0〜7)が発生される。 R, G, upper value for each B (0-7) and increments the address (0-1) enters the adder 61, R address (0-7) are generated from the adder 61. この構成は、残りのGチャネル、Bチャネルについても同様である。 This configuration is the same for the remaining G channel, B channel. Rチャネル、Gチャネル、Bチャネルからは、それぞれのアドレスが発生して演算器3に入り、また重み係数(0〜17)が発生して演算器3に入る。 R channel, G channel from the B channels, each address is generated enters the adder 3, also weighting coefficient (0 to 17) enters the adder 3 is generated. 一方、上位値、下位値、上下判別ビット、三角錐コードは、次の係数発生器2に入る。 On the other hand, the upper value, lower value, vertical discriminating bit, triangular pyramid code, enters the next coefficient generator 2.
【0029】 [0029]
図7は係数発生器中のアドレス/重み発生器60の一実施の形態例を示すブロック図である。 Figure 7 is a block diagram showing an embodiment of an embodiment of an address / weight generator 60 in the coefficient generator. R,G,B毎の下位値(0〜16)は、差分計算部70に入る。 R, G, lower values ​​for each B (0 to 16) enters the difference calculation section 70. 該差分計算部70は、R,G,B各下位値と差分計算指示器71からの4ビット出力を受けて、重み係数(0〜17)を発生する。 It said difference calculation unit 70 receives R, G, B of the 4-bit output from the lower value and the difference calculation instruction unit 71 generates a weighting coefficient (0 to 17). 差分計算指示器71は、図8に示すようなテーブルを持っている。 Difference calculation indicator 71 has a table as shown in FIG. そして、LUTコード毎に三角錐コードに対応した重みが割り振られている。 Then, the weight corresponding to the triangular pyramid code for each LUT code is allocated.
【0030】 [0030]
LUTコードは、000、001、010、011、100、101、110、111に区分され、それぞれの三角錐毎に重みが与えられている。 LUT code is partitioned into 000,001,010,011,100,101,110,111, weights are given for each of the three pyramids. 各三角錐毎に、重みは4個与えられている。 For each triangular pyramid, the weights are given four. 例えば、三角錐コード“3”の場合は、LUTコード000が2、010が7、110が8、111が12である。 For example, in the case of triangular pyramid code "3", LUT code 000 2,010 is 7,110 is 8,111 is 12. そして、各三角錐毎に4個の重みが与えられている。 Then, the weight of the four is given for each triangular pyramid. 各三角錐毎に4個の重みがあり、残りが0であるのは、(1)式が4個の乗算項からなっているのと対応している。 For each triangular pyramid has four weights, the rest is zero corresponds as (1) is made of four product terms. つまり、図1の演算器3は8個存在するが、実際に演算を行なっているのは4個であることを示している。 That is, although the computing unit 3 of Figure 1 there are eight pieces, shows that the is performed actually operation is four. このように、本発明によれば、全体の色変換テーブルを複数の色変換テーブルに分割して持ち、2のn乗より少ない数で補間する場合、当該色変換テーブルを使用しない部分に0の重みを加えることで、簡単な構成でバイパスするのと同等の効果が得られる。 Thus, according to the present invention, it has by dividing the entire color conversion table to a plurality of color conversion table, when interpolating by fewer than 2 n, 0 in a portion that does not use the color conversion table by adding the weight, the same effect as the bypass is obtained with a simple configuration.
【0031】 [0031]
図7において、72は排他的論理和回路であり、LUTID[0〜7]とR,G,Bそれぞれの上下判別ビットを受けて3ビットのLUTコードを出力し、差分計算指示器71に与える。 7, 72 is an exclusive OR circuit outputs LUTid [0 to 7] with R, G, and LUT code 3 bits receiving respective upper and lower discrimination bit B, giving the difference calculation instruction 71 . 差分計算指示器71は、3ビットのLUTコードと三角錐コードを受けて、図8に示す4ビットの重みデータを出力し、差分計算部70に与える。 Difference calculation indicator 71 receives the LUT code and triangular pyramid code 3 bits, and outputs the weight data of 4 bits shown in FIG. 8, and supplies the difference calculation section 70.
【0032】 [0032]
該差分計算部70は、R,G,B毎の下位値と、差分計算指示器71からの4ビットの重みデータを受けて、図9に示すような差分計算を行ない、重み係数(0〜17)を出力する。 Said difference calculation unit 70, R, G, receiving a lower value for each B, and weight data of 4 bits from the difference calculation instruction unit 71 performs a difference calculation as shown in FIG. 9, the weighting factor (0 17) to the. アンド(AND)回路73は、R,G,B毎の上下判別ビットと、排他的論理和回路72からの3ビット出力を受けて、R,G,B毎の増分アドレス(0〜1)を出力する。 And (AND) circuit 73, R, G, and upper and lower discrimination bits per B, and receives the 3-bit output from the exclusive OR circuit 72, R, G, increment the address for each B (0-1) Output.
【0033】 [0033]
上述したように、係数発生器2は、図6に示したように、副LUTnに対するアドレスと補間演算用重み係数を出力して、副LUTnと乗算累積器のブロック(演算器)3に送る。 As described above, the coefficient generator 2, as shown in FIG. 6, and outputs the address and the interpolation calculation weighting factor for the sub LUTn, sends the sub LUTn and accumulators of block (calculator) 3. アドレス発生/重み発生器60は、ビット操作及び図8、図9に示す処理を行なう。 Address generation / weight generator 60, bit manipulation, and 8, performs a process shown in FIG. これにより、重み係数及び副LUTnに対する増分アドレスを計算する。 Thus, calculating the incremental address for weighting factors and sub LUTn.
【0034】 [0034]
本発明では、元のLUTを複数の副LUTに分割しているため、例えば上下判定値が0の方向では増分は発生せず、上下判定値が1の場合、選択するLUTの種類が変更され、更に増分アドレスが1となる。 In the present invention, because it divides the original LUT into a plurality of sub-LUT, for example, increment in the direction of the upper and lower determination value 0 does not occur, when the upper and lower determination value is 1, the change the type of LUT selecting further increment address is 1. 各色増分アドレスは、各色上位値と加算される。 Colors increment address is added to each color upvalues. ただし、上限の制限がついている。 However, it marked with the upper limit of the limit. この場合、副LUTの最大アドレスの7を超えないようにする(図6参照)。 In this case, not exceed the 7 up to address the sub-LUT (see FIG. 6).
【0035】 [0035]
副LUTnと乗算累積器(演算器)3では、前段のデータを受け取り、副LUTnに対するアドレスにより出力されたLUTデータと重みを乗算した上、累積して次段に送り出す。 In sub LUTn and accumulators (computing unit) 3 receives the preceding data, the sub LUTn after having multiplied the LUT data and weights output by the address for the feeds to the next stage cumulative. この場合、初段の演算器3には、0データが与えられる。 In this case, the first stage of the arithmetic unit 3, is given 0 data. 当該副LUTnに対して重みが発生しない場合(使用しない場合)は、重み0が与えられる。 The weight to sub LUTn (if not used) If that does not occur, the weight 0 is given. この場合、0との乗算を行なう代わりにセレクタを用いて当該段はバイパスするようにしてもよい。 In this case, the stage with the selector instead of performing multiplication with 0 may be bypassed.
【0036】 [0036]
図10は副LUTnと乗算器(演算器)3の一実施の形態例を示すブロック図である。 Figure 10 is a block diagram showing an embodiment of an exemplary sub LUTn a multiplier (computing unit) 3. 図において、80はアドレス(3×3ビット)て色変換LUT値を受けて入力アドレスに対応するデータを出力する副LUTnである。 In the figure, 80 is a sub LUTn for outputting data corresponding to the input address by receiving the color conversion LUT value each address (3 × 3 bits). 該副LUTnは8ビットのデータを出力する。 Sub LUTn outputs 8-bit data. 81は、係数発生器2からの重み係数(5ビット)と副LUTn80からの出力データを受けて乗算を行なう乗算器である。 81 is a multiplier for multiplying receives the output data from the weighting factor (5 bits) and the sub LUTn80 from coefficient generator 2. 該乗算器81からは、13ビットのデータが出力される。 From this multiplier 81, 13-bit data is output. 82は、前段の演算器3からのデータ(8+5ビット)と乗算器81の出力(13ビット)とを加算する加算器である。 82 is an adder for adding the data from the preceding adder 3 (8 + 5 bits) and the output of the multiplier 81 (13 bits). 該加算器82の出力(13ビット)が当該段の演算器3の出力となる。 The output of the adder 82 (13 bits) is the output of the arithmetic unit 3 of the stage. ここで、副LUTnの出力と、乗算器81の出力と、加算器82の出力はラッチ構成となっており、同期クロックでデータが左から右にシフトするようになっており、高速動作が可能となっていれる。 Here, the output of the sub LUTn, an output of the multiplier 81, the output of the adder 82 has a latch arrangement being adapted to data synchronizing clock is shifted from left to right, it can operate at high speed put become. このように構成された回路の動作を説明すれば、以下の通りである。 To describe the operation of the thus constituted circuit is as follows.
【0037】 [0037]
係数発生器2から重み係数(5ビット)とアドレス(3×3)ビットが演算器3に入力される。 From the coefficient generator 2 weighting factor (5 bits) address (3 × 3) bits are input to the adder 3. この内、アドレスは副LUTnに入って、該副LUTnからは8ビットの変換データが出力される。 Among them, the addresses in the student sub LUTn, 8-bit converted data is output from the sub LUTn. 乗算器81は、この副LUTnの出力と重み係数(5ビット)を乗算する。 The multiplier 81 multiplies the output and weight coefficient of the sub LUTn (5 bits). この乗算結果は、続く加算器82で前段からのデータと加算され、その出力(8+5ビット)は後段の演算器3に入るようになっている。 This multiplication result is added to the data from the previous stage in a subsequent adder 82, the output (8 + 5 bits) is adapted to enter the subsequent stage of the arithmetic unit 3.
【0038】 [0038]
この演算処理を8段行なうことで、重み係数の総和と最終的な値との乗算値が算出される。 By performing the arithmetic process eight stages, the multiplication value of the sum and the final value of the weight coefficient is calculated. この乗算値は、割算器4(図1参照)で重み係数の総和で割り算されて最終的な出力となる。 This multiplied value is the divider 4 (see FIG. 1) is divided by the sum of the weighting factor is the final output. 割算器4は、ロジックで作成しても、LUT化してもよい。 Divider 4, be created by logic or may be turned into LUT. 16×16×16の格子点で4点補間の場合、重みの総和は17になる。 For four-point interpolation in lattice points of 16 × 16 × 16, the sum of the weights becomes 17. このように、本発明によれば、演算回路をシリアルに並べることで、同じユニットが利用でき、かつパイプライン化できるので高速化することができる。 Thus, according to the present invention, an arithmetic circuit by arranging serially, the same unit can be used, and it is possible to speed since it pipelined.
【0039】 [0039]
上述したような処理を行なう時に、各ブロック、更には各ブロックの内部を数段に分割してパイプライン化することにより、高速なスループットが実現できる。 When performing the processing as described above, each block, even by pipelining is divided into several stages within each block, faster throughput can be realized. 例えば、図10に示すようにラッチを設けてパイプラインの幅を狭くすることにより高速化される。 For example, the speed by narrowing the width of the pipeline by providing a latch as shown in FIG. 10. 但し、この場合は最初の計算値の出力まで遅延が発生する。 However, in this case the delay until the output of the first calculation value is generated. 各ブロック毎にパイプライン化した場合、少なくとも8クロック、内部を更に数段に分割した場合は、その段数を乗算したクロック数だけ遅延する。 If pipelined for each block, the case of dividing at least 8 clock, the internal still several stages, delayed by the number of clocks obtained by multiplying the number of stages. 何れの場合も、最初にデータが出力されるまでの遅延時間は、段数により変化するが、一旦出力された後は、連続して出力されるので、スループットには差は生じない。 In either case, the delay time until the first data is output, varies depending stages, once after being outputted, since it is continuously output, there is no difference in throughput.
【0040】 [0040]
上述の実施の形態例では、補間演算点数を8個設けた場合を示したが、本発明はこれに限るものではなく、補間演算点数を可変することができる。 In the embodiment of the above embodiment, although the case of providing eight interpolation points, the present invention is not limited thereto, it is possible to vary the interpolation calculation points. これにより、入力データに応じて最適な補間演算手段が選択できる。 Thus, the optimal interpolating operation means can be selected according to the input data.
【0041】 [0041]
図11は本発明の他の実施の形態例を示すブロック図である。 Figure 11 is a block diagram showing another example of the embodiment of the present invention. 図1と同一のものは、同一の符号を付して示す。 Figure 1 same thing and are denoted by the same reference numerals. 図において、1は入力データ(R,G,B各8ビットで合計24ビット)を受けてビット振り分けを行なうビット振り分け器、2は入力データを受けて重みとアドレスを発生する係数発生器で、#0〜#7まで8個存在する。 In the figure, 1 is an input data bit allocator for performing bit allocation receiving (R, G, B 24 bits total in each 8 bits), 2 is a coefficient generator for generating a weight and address receiving input data, # 0 to # 8 to 7 exist. #0の係数発生器2には位置データ(0)とビット振り分け器1の出力が入り、#1の係数発生器2には、位置データ(1)と#0の係数発生器2の出力が入り、#2の係数発生器2には、位置データ(2)と#0の係数発生器2の出力が入り、#3の係数発生器2には、位置データ(4)と#0の係数発生器2の出力が入り、#4の係数発生器2には、位置データ(3)と#3の係数発生器2の出力が入り、#5の係数発生器2には、位置データ(5)と#3の係数発生器2の出力が入り、#6の係数発生器2には、位置データ(6)と#2の係数発生器2の出力が入り、#7の係数発生器2には位置データ(7)と#6の係数発生器2の出力が入っている。 # Position data (0) is the coefficient generator 2 0 and bit allocation output of 1 enters, the coefficient generator 2 and # 1, the output of the position data (1) and # coefficient generator 2 0 enters, # the coefficient generator 2 of 2, contains the output of the coefficient generator 2 in the position data (2) and # 0, the coefficient generator 2 and # 3, the coefficient of the position data (4) and # 0 contains the output generator 2, the coefficient generator 2 and # 4, position data (3) and # entered coefficient output of the generator 2 of 3, the coefficient generator 2 and # 5, the position data (5 ) and # contains the output of the coefficient generator 2 of 3, the coefficient generator 2 and # 6, contains the output of the position data (6) and # 2 of the coefficient generator 2, the coefficient generator 2 and # 7 has entered the output of the coefficient generator 2 in the position data (7) and # 6.
【0042】 [0042]
101は副LUTと乗算累積器(演算器)で、#0と#1の2個存在する。 101 is a sub-LUT and multiplier accumulator (calculator), there are two pieces of # 0 and # 1. #0の演算器101は副LUT0と乗算累積器で構成され、#1の演算器101は副LUT7と乗算累積器で構成される。 # Calculator 101 of 0 is composed of sub LUT0 and accumulators, calculator 101 of # 1 is composed of sub LUT7 and accumulators. そして、#0の演算器101には#0の係数発生器2からの重み係数とアドレスが入力され、ゼロデータが入力される。 Then, the weight coefficients and addresses from the coefficient generator 2 and # 0 to the arithmetic unit 101 of # 0 is input, the zero data is input. #1の演算器101には、#7の係数発生器2からの重み係数とアドレスが入力され、#1の加算器103の出力が入力される。 The # 1 of the arithmetic unit 101, the weighting coefficients and addresses from the coefficient generator 2 and # 7 are input, the output of the # 1 adder 103 is input.
【0043】 [0043]
102は副LUTと乗算器とで構成される演算器であり、#0〜#5まで6個存在する。 102 is a computing unit composed of a sub-LUT and multiplier, there six to # 0 to # 5. #0の演算器102は副LUT1と乗算器とで構成され、#1の演算器102は副LUT2と乗算器とで構成され、#2の演算器102は副LUT4と乗算器とで構成され、#3の演算器102は副LUT3と乗算器とで構成され、#4の演算器102は副LUT5と乗算器とで構成され、#5の演算器102は副LUT6と乗算器とで構成される。 # Calculator 102 of 0 is composed of a sub LUT1 a multiplier, computing unit 102 of # 1 is composed of a sub LUT2 a multiplier, computing unit 102 of the # 2 is composed of a sub LUT4 multipliers , # calculator 102 of 3 is composed of a sub LUT3 a multiplier, computing unit 102 of # 4 is composed of a sub LUT5 a multiplier, computing unit 102 of the # 5 consists of a sub LUT6 multipliers It is.
【0044】 [0044]
103は加算器であり、#0と#1の2個存在する。 103 is an adder, there two # 0 and # 1. #0の加算器103には#0の演算器101の出力と、#0の演算器102の出力と、#1の演算器の出力と、#2の乗算器102の出力が入っている。 The output of the arithmetic unit 101 of # 0 to the adder 103 of # 0, the output of the arithmetic unit 102 of # 0, the output of # 1 of the arithmetic unit, containing the output of the multiplier 102 of the # 2. #1の加算器103には、#0の加算器103の出力と、#3の演算器102の出力と、#4の演算器102の出力と、#5の演算器102の出力が入っている。 The # 1 adder 103, the output of the adder 103 of # 0, the output of the arithmetic unit 102 of # 3, the output of the arithmetic unit 102 of # 4, contains the output of the arithmetic unit 102 of the # 5 there. そして、#1の加算器103の出力は、#1の演算器101に入り、該#1の演算器101の出力は割算器4に入っている。 The output of the # 1 adder 103 enters the operation unit 101 of # 1, the output of the arithmetic unit 101 of the # 1 has entered the divider 4. そして、該割算器4で、累積値が重み係数の総和で割り算され、8ビットのデータとして出力される。 Then, in 該割 adder 4, the accumulated value is divided by the sum of the weighting factors, and output as 8-bit data. これら演算器と加算器と割算器とで演算部100を構成している。 And an arithmetic unit 100 in these calculator and an adder and a divider. このような構成の演算部は、色毎にn個存在する。 Arithmetic unit having such a configuration, n pieces present in each color.
【0045】 [0045]
図1に示す演算器の並べ方では、最低8個のパイプライン分だけ遅延するが、図11のような演算器の配列にすると、遅延を半分にすることができる。 The arrangement of the computing unit shown in FIG. 1, but delayed by the eight pipelines minute minimum, when the sequence of the arithmetic unit shown in FIG. 11, it is possible to halve the delay. 図1に示す各ブロックの副LUTnで、同時に発生しない組み合わせがあるため、それらをパラレルにまとめる。 Vice LUTn of each block shown in FIG. 1, there is a combination which does not occur simultaneously, put them together in parallel. 副LUT0と副LUT7はどの三角錐の場合にも用いられるが、副LUT1,2,4及び副LUT3,5,6の組み合わせ内では同時に使用されることがない。 Vice LUT0 and sub LUT7 is also used in the case of which a triangular pyramid, but never used simultaneously in the combination of sub LUT1,2,4 and sub LUT3,5,6.
【0046】 [0046]
このようなグループでは、図11に示すように各ブロック内の累積器を省略して、図のように4入力の加算器103を用いることができる。 In such groups, by omitting the accumulator in each block as shown in FIG. 11, it is possible to use an adder 103 as four inputs of FIG. この場合、3種類の入力は全て加算される。 In this case, it is all three input summing. この計算は、加算器ではなくオア(OR)をとっても構わない。 This calculation is very may the OR (OR) rather than an adder. 値を発生するのは1つだけであるためである。 To generate the value is for only one. その他には、セレクタを用いることも可能である。 Other is also possible to use selectors.
【0047】 [0047]
この実施の形態例によれば、遅延を少なくすることができる。 According to this embodiment, it is possible to reduce the delay.
図1に示す実施の形態例では、8種類の色変換LUTに対してアクセスするりことができるため、この重みをコントロールすることで、補間方法を容易に変更することができる。 In the embodiment example shown in FIG. 1, since it is possible to access Sururi against 8 kinds of color conversion LUT, by controlling the weight, it is possible to easily change the interpolation method. これを用いて、第1の実施の形態例の4点補間と8点補間を切り替え可能にすることができる。 This can be used to enable switching the four-point interpolation and 8-point interpolation of the first embodiment.
【0048】 [0048]
8点で補間する方法としては、特開平8−114870号公報(多次元補間方法及び装置)があるが、その手法を用いると重み係数が単純化され、好都合である。 As a method of interpolation by 8 points, there is JP-A 8-114870 Patent Publication (multidimensional interpolation method and apparatus), but the weighting factor the use of the technique is simplified, which is advantageous. 但し、重みの総和が4倍になるので、計算のビット幅はこれに合わせて増やす必要がある。 However, since the sum of the weights is four times, the bit width of the computation requires more accordingly. 更に、最終段での割算器の分母パラメータも可変にする。 Further, also in the variable denominator parameters divider at the final stage. 後述のビットシフトを用いる場合には、ビットシフト量を変更する。 When using the bit shift will be described later, it changes the bit shift amount. 入力がR,G,B又はY,M,Cの場合には、4点補間を用いてL ***では、8点補間を用いるとよい。 Input R, G, B or Y, M, in the case of C is, the L * a * b * using a 4-point interpolation may be performed using 8-point interpolation. このようにすることで、入力のグレー付近が正確に補間される。 By doing so, near gray input is accurately interpolated.
【0049】 [0049]
ここで、テーブル出力を、予め(2のn乗÷データ格子間隔)倍することで、補間値をビットシフトにより得るようにすることができる。 Here, the table output in advance (at 2 n ÷ data grid spacing) multiplying that can be so obtained by bit shifting the interpolated value. 例えば、出力を9ビットにして、最大値を480(255×32/17倍)にすると、5ビットシフトすればよく、大規模になりがちな割算器を省略することができる。 For example, output in the 9 bits, the maximum value to 480 (255 × 32/17 ×), may be 5-bit shift, it is possible to omit tend divider becomes large. 但し、LUTの容量が増える。 However, the capacity of the LUT increases. また、最大値を240(255×16/17倍)にした場合、4ビットシフトになるが、計算精度が若干低下する。 Also, when the maximum value 240 (255 × 16/17 ×), becomes a 4-bit shift calculation accuracy decreases slightly.
【0050】 [0050]
この方法をソフトウェアでも実現することができる。 This method can be implemented in software. 一つのMPUでは効果がないが、複数のMPUがある場合、それ毎に各ステップの計算を行なうようにすることで、この構成の色補間演算を効果的に行なうことができる。 Although no one MPU In effect, if there are multiple MPU, by to perform the calculation of the steps per thereto, it is possible to perform color interpolation operation of this configuration effectively. 例えば、ネットワーク上に接続されたコンピュータでリレーしながら計算することもできる。 For example, it is also possible to calculate with relay connected computer over a network. 4次元の場合には、16個の演算器を並べることで、同様の処理が可能で、N次元の場合には、2のN乗のユニットを並べることで実現することができる。 In the case of 4-dimensional, by arranging 16 pieces of computing units, it can be similar process, in the case of N dimensions, can be realized by arranging the 2 N of the unit.
【0051】 [0051]
【発明の効果】 【Effect of the invention】
以上、詳細に説明したように、本発明によれば、以下のような効果が生じる。 As described above in detail, according to the present invention, effects described below. (1)請求項1記載の発明によれば、演算回路をシリアルに並べることで、同じユニットが利用でき、かつパイプライン化できるので高速化することができる。 (1) According to the first aspect of the present invention, an arithmetic circuit by arranging serially, the same unit can be used, and it is possible to speed since it pipelined.
【0052】 [0052]
(2)請求項2記載の発明によれば、前記色変換テーブルは、n色入力の時に2のn乗個に分割することにより、補間演算の点数を自由に設定することができる。 (2) According to the second aspect of the present invention, the color conversion table, by dividing the second n-th power when n input gradation, it is possible to freely set the number of interpolation.
【0053】 [0053]
(3)請求項3記載の発明によれば、前記分割された色変換テーブルが同時に使われない組み合わせについては、パラレルに並べることで、遅延を少なくすることができる。 (3) According to the third aspect of the present invention, the combination of the divided color conversion table is not used at the same time, by arranging in parallel, it is possible to reduce the delay.
【0054】 [0054]
(4)請求項4記載の発明によれば、全体の色変換テーブルを複数の色変換テーブルに分割して持ち、2のn乗より少ない数で補間する場合、当該色変換テーブルを使用しない部分に0の重みを加えることで、簡単な構成でバイパスするのと同等の効果が得られる。 (4) According to the fourth aspect of the present invention, has by dividing the entire color conversion table to a plurality of color conversion table, when interpolating by fewer than 2 n, without using the color conversion table portion by adding the weight of 0, the same effect as bypassing it can be obtained with a simple configuration.
【0055】 [0055]
(5)請求項5記載の発明によれば、前記補間演算点数を可変することで、入力データに応じて最適な補間演算手段が選択できる。 (5) According to the fifth aspect of the present invention, by varying the interpolation calculation points, the optimal interpolating operation means can be selected according to the input data.
(6)請求項6記載の発明によれば、演算回路をシリアルに並べることで、同じユニットが利用でき、かつパイプライン化できるので高速化することができる。 (6) According to the sixth aspect of the present invention, an arithmetic circuit by arranging serially, the same unit can be used, and it is possible to speed since it pipelined.
【0056】 [0056]
このように、本発明によれば、高速演算が可能な色補間方法及び色補間装置を提供することができる。 Thus, according to the present invention, it is possible to provide a color interpolation process and color interpolation device capable of high-speed operation. 即ち、第1にメモリの総量を最小限にして、かつ最大の計算能力を実現し、第2に同じ形式のユニットを並べることで、部品及びタイミング設計を容易にし、第3に容易に補間に必要な格子点数を変更することができる。 That is, the first and the total amount of memory to a minimum, and to achieve maximum computing power, by arranging the units of the same type in the second, to facilitate the components and timing design, easily interpolated third it is possible to change the required number of grid points.
【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS
【図1】本発明の一実施の形態例を示すブロック図である。 1 is a block diagram showing an embodiment of an embodiment of the present invention.
【図2】三角錐を用いた4点補間の説明図である。 FIG. 2 is an explanatory view of a four-point interpolation using a triangular pyramid.
【図3】LUTの分割の説明図である。 FIG. 3 is an explanatory diagram of the division of the LUT.
【図4】ビット振り分け器の一実施の形態例を示すブロック図である。 4 is a block diagram showing an embodiment of an embodiment of a bit distributor.
【図5】三角錐コードの説明図である。 FIG. 5 is an explanatory diagram of a three-pyramid code.
【図6】係数発生器の一実施の形態例を示すブロック図である。 6 is a block diagram showing an embodiment of an embodiment of the coefficient generator.
【図7】アドレス/重み発生器の一実施の形態例を示すブロック図である。 7 is a block diagram showing an embodiment of an embodiment of an address / weight generators.
【図8】差分計算指示器の内容を示す図である。 FIG. 8 is a diagram showing the contents of the difference calculation indicator.
【図9】差分計算指示器の内容を示す図である。 9 is a diagram showing the contents of the difference calculation indicator.
【図10】副LUTと乗算器の一実施の形態例を示すブロック図である。 10 is a block diagram showing an embodiment of an exemplary sub-LUT and multiplier.
【図11】本発明の他の実施の形態例を示すブロック図である。 11 is a block diagram showing an embodiment of another embodiment of the present invention.
【符号の説明】 DESCRIPTION OF SYMBOLS
1 ビット振り分け器2 係数発生器3 副LUTと乗算累積器4 割算器10、20、30 演算部 1 bit allocator second coefficient generator 3 sub LUT and multiplier accumulator 4 divider 10, 20, 30 computing unit

Claims (6)

  1. 全体の色変換テーブルのテーブル値を格子の一つおきに取り出した複数の色変換テーブル持ち、 前記複数の色変換テーブルのそれぞれを用いた演算結果を逐次累積する演算を用いて色補間を行なうことを特徴とする色補間方法。 The table values for the entire color conversion table having a plurality of color conversion tables taken out every other grid, performing color interpolation using sequentially accumulation operation the calculation results using each of the plurality of color conversion tables color interpolation wherein the.
  2. 前記全体の色変換テーブルは、n色の入力データが入力される時に2のn乗個に分割されていることを特徴とする請求項1記載の色補間方法。 The overall color conversion table, color interpolation method of claim 1, wherein the input data of n colors is divided into at 2 of n-th power is input.
  3. 前記分割された複数の色変換テーブルが同時に使われない組み合わせについては、パラレルに並べることを特徴とする請求項2記載の色補間方法。 The divided For combinations where a plurality of color conversion table is not used at the same time, the color interpolation method of claim 2, wherein the arranging in parallel.
  4. n色の入力データの入力に対して、 2のn乗より少ない数で補間する場合、 前記複数の色変換テーブルのそれぞれを用いた演算を行なう際に、当該色変換テーブルを使用しない演算は、0と乗算することを特徴とする請求項1記載の色補間方法。 to the input of the input data n colors, when interpolating by fewer than 2 n, when performing operations using each of the plurality of color conversion table, the operation that does not use the color conversion table, 0 color interpolation method according to claim 1, wherein the multiplying.
  5. 入力データの種類に応じて補間演算点数を可変に選択することを特徴とする請求項1又は3記載の色補間方法。 Claim 1 or 3 SL placing color interpolation method characterized by variably selecting the interpolation calculation points according to the type of input data.
  6. 全体の色変換テーブルのテーブル値を格子の一つおきに取り出した複数の色変換テーブル持ち、 前記複数の色変換テーブルのそれぞれを用いた演算結果を逐次累積する演算を用いて計算する演算部を有することを特徴とする色補間装置。 The table values for the entire color conversion table having a plurality of color conversion tables taken out every other grid calculation unit for calculating with each successive accumulated to calculate a calculation result using the plurality of color conversion tables color interpolation apparatus characterized by having a.
JP2001146327A 2001-05-16 2001-05-16 Color interpolation method and color interpolation apparatus Expired - Fee Related JP4288865B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001146327A JP4288865B2 (en) 2001-05-16 2001-05-16 Color interpolation method and color interpolation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001146327A JP4288865B2 (en) 2001-05-16 2001-05-16 Color interpolation method and color interpolation apparatus

Publications (2)

Publication Number Publication Date
JP2002344757A JP2002344757A (en) 2002-11-29
JP4288865B2 true JP4288865B2 (en) 2009-07-01

Family

ID=18991998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001146327A Expired - Fee Related JP4288865B2 (en) 2001-05-16 2001-05-16 Color interpolation method and color interpolation apparatus

Country Status (1)

Country Link
JP (1) JP4288865B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE38152E1 (en) 1994-01-19 2003-06-24 Matsushita Electric Industrial Co., Ltd. Logic synthesis method and semiconductor integrated circuit

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4165537B2 (en) 2005-06-29 2008-10-15 ブラザー工業株式会社 Color conversion apparatus and color conversion program
JP5327355B2 (en) * 2012-05-07 2013-10-30 コニカミノルタ株式会社 Color adjusting method and color adjusting apparatus
JP5942934B2 (en) 2013-07-09 2016-06-29 富士ゼロックス株式会社 An image processing apparatus and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE38152E1 (en) 1994-01-19 2003-06-24 Matsushita Electric Industrial Co., Ltd. Logic synthesis method and semiconductor integrated circuit

Also Published As

Publication number Publication date
JP2002344757A (en) 2002-11-29

Similar Documents

Publication Publication Date Title
US6888372B1 (en) Programmable logic device with soft multiplier
EP0166966B1 (en) Video display controller
US4887150A (en) Device for converting video image signals to printing data signals
US4837722A (en) Digital high speed 3-dimensional interpolation machine
USRE31460E (en) Method and apparatus for standards conversion of television signals
US6829062B2 (en) Color conversion device and color conversion method
JP3245171B2 (en) Method and apparatus for performing fast Hadamard transform
US6865292B1 (en) Color conversion device and color conversion method
EP0890899B1 (en) Multiplication method and apparatus
US5444835A (en) Apparatus and method for forming a composite image pixel through pixel blending
US4722068A (en) Double precision multiplier
EP0272655A2 (en) Method and apparatus for generating look-up table data
US5241373A (en) Apparatus for correction of color signal values
JPH0934693A (en) Exponent logarithm conversion circuit
JP3242278B2 (en) Image processing apparatus
JPH10136216A (en) Color picture processor
EP0268408A2 (en) Two-dimensional finite impulse response filter arrangements
US6621497B1 (en) Color conversion device and color conversion method
JPH09271036A (en) Method and device for color image display
GB2139846A (en) Magnifying or otherwise distorting selected portions of scanned image
JPH0720839A (en) Method and device for parallel error diffusion
US4783649A (en) VLSI graphics display image buffer using logic enhanced pixel memory cells
JPH08500945A (en) Characterization methods and apparatus of the color output device
US5479272A (en) Color gradation correction system of combination of looking-up table and interpolation and method thereof
WO1989000317A1 (en) Method and apparatus for correcting color

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080325

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090204

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090210

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: 20090310

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: 20090323

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120410

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130410

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140410

Year of fee payment: 5

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees