Claims
- 1. An arithmetic apparatus for converting an input color signal to an output color signal by approximating a value v of a function having a domain input in a first three-dimensional color space and a range output in a second three-dimensional color space, the domain input being divided into a plurality of rectangular volumes, each said rectangular volume being further subdivided into a plurality of tetrahedral volumes, each said tetrahedral volume having four vertices, vertices of each of the tetrahedral volumes comprising sample domain input points, each said sample domain input point having a set of coordinates in the first color space wherein the set of coordinates is expressed as an 8 bit number having four high order bits and four low order bits, the four high order bits indicating a rectangular volume of said plurality of rectangular volumes which includes the domain input point, the four low order bits indicating a tetrahedral volume of said plurality of tetrahedral volumes which includes the domain input point, the apparatus comprising:
- an input port to accept from an input device an input signal corresponding to an input image pixel of the input device said input signal being represented by a set of coordinates for a domain input point P situated within the first three-dimensional color space, the domain input point P having coordinates x, y and z, such that x represents a first color component in the first three-dimensional color space, y represents a second color component in the first three-dimensional color space, and z represents a third color component in the first three-dimensional color space;
- a first demultiplexer coupled to the input port and having an output for separating the domain input point P into a demultiplexed output comprising first, second and third color components;
- a memory;
- a means for generating a tetrahedral interpolation constants table in the memory, said table including:
- the domain input, divided into a plurality of tetrahedral volumes, each tetrahedral volume having four vertices i, each vertex i having vertex coordinates x[i,j] in the first three-dimensional color space and an associated range output value v at the vertex i of v[i,k];
- an n.times.n matrix X comprising matrix components X[i,j] wherein X[i,j]=x[i+1, j]-x[0,j] for 0.ltoreq.i.ltoreq.n-1 and 0.ltoreq.j.ltoreq.m-1;
- an n.times.m matrix V comprising matrix components V[i,k] wherein V[i,k]=v[i+1, k]-v[0,k] for 0.ltoreq.i.ltoreq.n-1 and 0.ltoreq.k.ltoreq.m-1;
- a matrix T equal to the inverse of matrix X multiplied by the matrix V; and
- a vector t comprising vector components t[k] wherein t[k]=v[0, k]*T for 0.ltoreq.K M-1;
- wherein the tetrahedral interpolation constants table is constructed to map between each tetrahedra vertice and first, second, and third multiplicative constants that comprise corresponding components of the matrix T, and to also map between each tetrahedra vertices and an additive constant comprising a corresponding component of the vector t, wherein each constant includes first, second, and third color components;
- a second demultiplexer having a second demultiplexer input and a second demultiplexer output to separate the domain input point P at the second demultiplexer input into four low order bits and four high order bits at the second demultiplexer output, the second demultiplexer input being coupled to the input port;
- a selector coupled to the second demultiplexer output and the memory for selecting a tetrahedral volume containing the selected domain input point P; and including:
- and, a signal processor coupled to the memory and to the first demultiplexer output for producing an output signal corresponding to an image pixel of an output device and represented by an output signal value v in the second three-dimensional color space, the output signal value v having a first color constituent a, a second color constituent b, and a third color constituent c; the signal processor including first signal processor associated with the first color component for producing a first color output representative of the first color constituent a, second signal processor associated with the second color component for producing a second color output representative of the second color constituent b, and third signal processor associated with the third color component for producing a third color output representative of the third color constituent c; each of the first, second and third signal processors including:
- (a) first multiplication means for producing a first product by multiplying the first component of the first demultiplexer output by a corresponding v component of the first multiplicative constant;
- (b) second multiplication means for producing a second product by multiplying the second component of the first demultiplexer output by a corresponding component of the second multiplicative constant;
- (c) third multiplication means for producing a third product by multiplying the third component of the first demultiplexer output by a corresponding component of the third multiplicative constant;
- (d) first summing means for producing a first sum by adding the first product to the second product;
- (e) second summing means for producing a second sum by adding the first sum to the third product; and
- (f) third summing means for producing a third sum by adding the second sum to a corresponding component of the additive constant, the third sum comprising a color output for the respective color constituent.
- 2. An arithmetic apparatus as set forth in claim 1 wherein the first color component is red, the second color component is green, and the third color component is blue.
- 3. An arithmetic apparatus as set forth in claim 1 wherein the first color constituent is magenta, the second color constituent is yellow, and the third color constituent is cyan.
- 4. An arithmetic apparatus as set forth in claim 1 wherein the memory means comprises a random access memory device.
- 5. An arithmetic apparatus for converting an input color signal to an output color signal by approximating a value v of a function having a domain input in a first three-dimensional color space and a range output in a second four-dimensional color space, the domain input being divided into a plurality of rectangular volumes, each said rectangular volume being further subdivided into a plurality of tetrahedral volumes, each said tetrahedral volume having four vertices, vertices of each of the tetrahedral volume comprising sample domain input points, each said sample domain input point having a set of coordinates in the first color space, wherein the set of coordinates is expressed as an 8 bit number having four high order bits and four low order bits, the four high order bits indicating a rectangular volume of said plurality of rectangular volumes which includes the domain input point, the four low order bits indicating a tetrahedral volume of said plurality of tetrahedral volumes which includes the domain input point, the apparatus comprising:
- an input port to accept from an input device an input signal corresponding to an input image pixel of the input device, said input signal being represented by a set of coordinates for a domain input point P situated within the first three-dimensional color space, the domain input point P having coordinates x, y, and z, such that x represents a first color component in the first three-dimensional color space, y represents a second color component in the first three-dimensional color space, and z represents a third color component in the first three-dimensional color space;
- a first demultiplexer coupled to the input port and having an output for separating the domain input point P into a demultiplexed output comprising first, second and third color components;
- a memory;
- a means for generating a tetrahedral interpolation constants table in the memory, said table including:
- the domain input divided into a plurality of tetrahedral volumes, each tetrahedral volume having four vertices i, each vertex i having vertex coordinates x[i,j] in the first three-dimensional color space and an associated range output value v at the vertex i of v[i,k];
- an n.times.n matrix X comprising matrix components X[i,j] wherein X[i,j]=[i+1, j]-x[0,j] for 0.ltoreq.i.ltoreq.n-1 and 0.ltoreq.j.ltoreq.m-1;
- an n.times.m matrix V comprising matrix components V[i,k] wherein V[i,k]=v[i+1 k]-v[0,k] for 0.ltoreq.i.ltoreq.n-1 and 0.ltoreq.k.ltoreq.m-1;
- a matrix T comprising the inverse of matrix X multiplied by the matrix V;
- a vector t comprising vector components t[k] wherein t[k]=v[0,k]-x[0,k]*T for 0.ltoreq.k.ltoreq.m-1;
- wherein the tetrahedral interpolation constants table is structured to map between each tetrahedra vertices and first, second, and third multiplicative constants that comprise corresponding components of the matrix T, and to also map between each tetrahedra vertices and an additive constant comprising a corresponding component of the vector t, wherein each constant includes first, second, and third color components;
- a second demultiplexer having a second demultiplexer input and a second demultiplexer output to separate the domain input point P at the second demultiplexer input into four low order bits and four high order bits at the second demultiplexer output, the second demultiplexer input being coupled to the input port;
- a selector coupled to the second demultiplexer and the memory for selecting a tetrahedral volume containing the domain input point P and including:
- (a) rectangular volume selector responsive to the four high order bits to select a particular one of said plurality of rectangular volumes; and
- (b) tetrahedral volume selector responsive to the four low order bits to select a particular one of said plurality of tetrahedral volumes in the particular one of said rectangular volumes; and,
- a signal processor coupled to the memory and to the first demultiplexer output for producing an output signal corresponding to an image pixel of an output device and represented by an output signal value v in the second four-dimensional color space, the output signal value v having a first color constituent a, a second color constituant b, and third color constituent c, and a fourth color constituent d; the signal processor including first signal processor associated with the first color component for producing a first color output representative of the first color constituent a, second signal processor associated with the second color component for producing a second color output representative of the second color constituent b, a third signal processor associated with the third color component for producing a third color output representative of the third color constituent c, and a fourth signal processor for producing a fourth color output, representative of the fourth color constituent; each of the first, second, third and fourth signal processors including:
- (a) first multiplication means for producing a first product by multiplying the first component of the first demultiplexer output by a corresponding component of the first multiplicative constant;
- (b) second multiplication means for producing a second product by multiplying the second component of the first demultiplexer output by a corresponding component of the second multiplicative constant;
- (c) third multiplication means for producing a third product by multiplying the third component of the first demultiplexer output by a corresponding component of the third multiplicative constant;
- (d) first summing means for producing a first sum by adding the first product to the second product;
- (e) second summing means for producing a second sum by adding the first sum to the third product; and
- (f) third summing means for producing a third sum by adding the second sum to a corresponding component of the additive constant; the third sum comprising a color output for the respective color constituent.
- 6. An arithmetic apparatus as set forth in claim 5 wherein the first color component is red, the second color component is green, and the third color component is blue.
- 7. An arithmetic apparatus as set forth in claim 5 wherein the first color constituent is magenta, the second color constituent is yellow, and the third color constituent is cyan and the fourth color is black.
- 8. An arithmetic apparatus as set forth in claim 5 wherein the memory comprises a random access memory device.
Parent Case Info
This application is a continuation of application Ser. No. 08/516,732, filed Aug. 18, 1995, which is now U.S. Pat. No. 5,748,195.
US Referenced Citations (53)
Foreign Referenced Citations (4)
Number |
Date |
Country |
1595122 |
Aug 1981 |
JPX |
2-226869 |
Feb 1990 |
JPX |
2-206973 |
Feb 1990 |
JPX |
9-89-513 |
Mar 1991 |
JPX |
Non-Patent Literature Citations (3)
Entry |
"Color Correction Technique for Hard Copies by 4-Neighbors Interpolation Method", Kanamori et al., Journal of Imaging Science and Technology, vol. 36, No. 1, Jan.-Feb. 1992, pp. 73-80. |
"The Gamut of Real Surface Colours", M.R. Pointer, Research Division, Kodak Limited, Color Research Application, vol. 5, No. 3, Fall 1980, pp. 145-155. |
"A Novel Color Transformation Algorithm And It's Application" by Katsuhiro et.; Image Processing Algorithm and Tech.; vol. 1244; 1990. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
516732 |
Aug 1995 |
|