Color conversion system and method

Information

  • Patent Application
  • 20070188814
  • Publication Number
    20070188814
  • Date Filed
    August 30, 2006
    18 years ago
  • Date Published
    August 16, 2007
    17 years ago
Abstract
A processor is provided that includes a primary memory of a processor and color conversion logic. The primary memory is to store a first color look-up table (LUT) related to a second color space. The color conversion logic is responsive to a received set of pixels, where each pixel of the set of pixels includes a color value in a first color space. The color conversion logic includes decision logic to selectively access the first color LUT and a second color LUT of a secondary memory to obtain a color value of the second color space that is associated with each pixel of the set of pixels based on a comparison of each pixel to at least one neighboring pixel.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of a particular embodiment of a representative system for color conversion including an on-chip color table and an off-chip color table;



FIG. 2 is a block diagram of another particular embodiment of a representative system for color conversion including a primary memory having a first color conversion table and a secondary memory having a second color conversion table;



FIG. 3 is a flow chart of a particular illustrative embodiment of a method of color conversion from a first color space to a second color space based on a difference between neighboring pixels relative to a threshold, which may be utilized with the systems of FIGS. 1 and 2;



FIG. 4 is a flow chart of a particular illustrative embodiment of a method of adjusting a threshold to tune a processor based on accesses to a primary on-chip color look-up table (LUT) versus accesses to a secondary off-chip LUT that may be utilized with the systems and method of FIGS. 1-3; and



FIG. 5 is a flow diagram of a particular illustrative embodiment of a method of performing a color conversion.


Claims
  • 1. A processor comprising: a primary memory of a processor, the primary memory to store a first color look-up table (LUT) related to a second color space;color conversion logic responsive to a received set of pixels, each pixel of the set of pixels having a color value in a first color space, the color conversion logic comprising decision logic to selectively access at least one of the first color LUT and a second color LUT in a secondary memory to obtain at least one color value of the second color space for each pixel of the set of pixels based on a comparison of each pixel to at least one neighboring pixel.
  • 2. The processor of claim 1, wherein the color conversion logic further comprises: computation logic to compute a difference between a first pixel and a neighboring pixel; anddecision logic to compare the difference to a threshold, the decision logic to access the first color LUT when the difference is greater than or equal to the threshold and to access the second color LUT when the difference is less than the threshold.
  • 3. The processor of claim 1, wherein the color conversion logic further comprises a cache memory to store a range of color values obtained from the second color LUT when the second color LUT is accessed.
  • 4. The processor of claim 1, wherein the decision logic selectively accesses the second color LUT when a color value difference between a selected pixel and a neighboring pixel is less than a threshold.
  • 5. The processor of claim 4, wherein the threshold is defined by printer driver software based on a print quality.
  • 6. The processor of claim 4, wherein the threshold varies over time.
  • 7. The processor of claim 4, wherein the color conversion logic monitors accesses of the first color LUT and the second color LUT and adjusts the threshold to tune a performance parameter.
  • 8. The processor of claim 1, wherein the primary memory and the color conversion logic are fabricated on an integrated circuit.
  • 9. The processor of claim 1, wherein the first color LUT and the second color LUT are programmed with the same color conversion table, but sampled at different rates.
  • 10. The processor of claim 1, wherein an access time of the primary memory is less than an access time of the secondary memory.
  • 11. The processor of claim 1, wherein the primary memory is located on a first device including the decision logic, and wherein the secondary memory is located on a second device coupled to the first device.
  • 12. The processor of claim 1, wherein the first color space comprises a set of red-blue-green (RGB) color values and the second color space comprises a set of cyan-magenta-yellow-black (CMYK) color values.
  • 13. A method comprising: receiving a set of pixels, each pixel of the set of pixels having color values in a first color space;computing a color difference between a selected pixel and a neighboring pixel of the set of pixels;selectively accessing one of a first color look-up table (LUT) in a second color space and a second color LUT in the second color space to obtain color values associated with the selected pixel, the first and second color LUTs selectively accessed based on a comparison of the color difference to a threshold; andcomputing color values in the second color space based on the obtained color values.
  • 14. The method of claim 13, wherein selectively accessing comprises: selectively accessing the first color LUT when the color difference is greater than or equal to the threshold.
  • 15. The method of claim 13, wherein selectively accessing comprises: selectively accessing the second color LUT when the color difference is less than or equal to the threshold.
  • 16. The method of claim 13, further comprising: monitoring a number of accesses of the first color LUT and of the second color LUT; andadjusting the threshold to tune a performance parameter.
  • 17. The method of claim 13, wherein after the second color LUT is accessed, the method further comprises: storing a set of color values from the second color LUT in a cache memory.
  • 18. The method of claim 17, wherein selectively accessing further comprises: comparing the color difference to the threshold; andaccessing the first color LUT to obtain the associated color value when the color difference is greater than the threshold;accessing the cache memory to obtain the associated color value when the color difference is less than the threshold and the color value is within the set of color values in the cache memory; andaccessing the second color LUT to obtain the associated color value when the color difference is less than the threshold and the color value is not within the set of color values in the cache memory.
  • 19. The method of claim 13, wherein the first color LUT is stored in an on-chip memory and the second color LUT is stored in an external memory.
  • 20. The method of claim 13, wherein the first color LUT and the second color LUT are programmed from a common color conversion table at different sampling rates.
  • 21. The method of claim 13, wherein computing the color value comprises: interpolating color values in the second color space for the selected pixel from color values in the second color space that correspond to combinations of color values in the first color space that approximately match the color values of the selected pixel.
  • 22. A color conversion system comprising: means to receive a set of pixels in a first color space, each pixel of the set of pixels having a color value in a first color space;means to compute a color difference between a selected pixel and a neighboring pixel of the set of pixels; andmeans to selectively access, for each pixel of the set of pixels, one of a first color look-up table (LUT) in a second color space and a second color LUT in the second color space to obtain a color value associated with the selected pixel, the first and second color LUTs selectively accessed based on a comparison of the color difference to a threshold.
Provisional Applications (1)
Number Date Country
60773521 Feb 2006 US