Cached color conversion method and apparatus
First Claim
1. A method for converting an input image in an input color space to an output image in an output color space, wherein said input image comprises a plurality of input pixels;
- said method comprises the steps of;
storing, in a first memory, sparsely located output color values of said output color space;
supplying a stream of neighbouring pixels of the input image; and
performing the following steps on each pixel of the stream;
storing, in a cache memory from said first memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream, if not already present in the cache memory;
retrieving, from said cache memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream;
interpolating the retrieved output color values to derive an output color value in said output color space.
2 Assignments
0 Petitions
Accused Products
Abstract
An apparatus for converting an input image in an input color space to an output image in an output color space.
The apparatus has a cache memory for storing from external memory, sparsely located output color values corresponding to input pixels closest to the current input pixel of an image stream, if not already present in the cache memory. The apparatus also has retrieval means for retrieving, from said cache memory, the sparsely located output color values corresponding to the current input pixel of the stream. The retrieved output color values are interpolated by interpolation means to derive an output color value in said output color space.
-
Citations
10 Claims
-
1. A method for converting an input image in an input color space to an output image in an output color space, wherein said input image comprises a plurality of input pixels;
- said method comprises the steps of;
storing, in a first memory, sparsely located output color values of said output color space;
supplying a stream of neighbouring pixels of the input image; and
performing the following steps on each pixel of the stream;
storing, in a cache memory from said first memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream, if not already present in the cache memory;
retrieving, from said cache memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream;
interpolating the retrieved output color values to derive an output color value in said output color space. - View Dependent Claims (2, 3, 4, 5)
generating for each input pixel of the stream, a plurality of memory addresses to the output color values closest to the said input pixel.
- said method comprises the steps of;
-
3. A method as claimed in claim 2, wherein said generating step comprises the following sub-step:
remapping each said memory address by reordering one or more most significant bits of each memory address.
-
4. A method as claimed in claim 2 or 3, wherein said generating step comprises the following sub-steps:
-
retrieving an interval value and a fractional value for each primary color component of the input pixel;
concatenating the interval values of each primary color component of the input pixel;
converting the concatenated interval values into a first address; and
converting said first address into said plurality of said memory addresses.
-
-
5. A method as claimed in claim 2, comprising the following further steps:
-
comparing for each input pixel of the stream, tags of said generated memory addresses with previously stored tags to determine whether the output color values closest to said input pixel are present in said cache memory;
storing, in a tag memory, the tags of said generated memory addresses, when storing in cache memory the output color values closest to the said input pixel.
-
-
6. An apparatus for converting an input image in an input color space to an output image in an output color space, wherein said input image comprises a plurality of pixels;
- said apparatus comprising;
a first memory for storing sparsely located output color values of said output color space;
means for supplying a stream of neighbouring pixels of the input image;
a cache memory for storing from said first memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream, if not already present in the cache memory;
retrieval means for retrieving, from said cache memory, sparsely located output color values corresponding to the input pixels closest to the current input pixel of the stream;
interpolation means for interpolating the retrieved output color values to derive an output color value in said output color space. - View Dependent Claims (7, 8, 9, 10)
means for generating, for each input pixel of the stream, a plurality of memory addresses to the output color values closest to the said input pixel.
- said apparatus comprising;
-
8. An apparatus as claimed in claim 7, wherein said apparatus comprises:
remapping means for remapping each said memory address by reordering one or more most significant bits of each memory address.
-
9. An apparatus as claimed in claim 7 or 8, wherein said apparatus comprises:
-
retrieval means for retrieving an interval value and a fractional value for each primary color component of the input pixel;
concatenating means for concatenating the interval values of each primary color component of the input pixel;
conversion means for converting the concatenated interval values into a first address; and
conversion means for converting said first address into said plurality of said memory addresses.
-
-
10. An apparatus as claimed in claim 7 or 8, wherein said apparatus comprises:
-
comparator means for comparing, for each input pixel of the stream, tags of said generated memory addresses with previously stored tags to determine whether the output color values closest to said input pixel are present in said cache memory;
a tag memory for storing the tags of said generated memory addresses, when storing in cache memory the output color values closest to the said input pixel.
-
Specification