← Back to Patent Explorer
US7184057B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Systems and methods for providing color management

Assignee: Microsoft Technology Licensing LLC
•
Filing: 2002-06-24
•
Granted: 2007-02-27
•
Expires: 2022-06-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Systems and methods are provided for color management in connection with a variety of computing devices having different color display characteristics. The X11 graphics platform is augmented to support color management systems, such as ICC, sRGB and scRGB, which begin and end with device dependent colors. CMYK color spaces as well as extended RGB color spaces within X11r6 are also supported, thus extending the X11r6 graphics platform to support any modem color management standard.

Inventors

  • 👤 Michael D. Stokes
  • 👤 Adrian Secchia

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 11:49
CPC Classifications
G; G09; G09G; G09G5/00; G09G5/003; G09G5/006; G06; G06F; G06F3/00; G06F3/14; G09G5/02; H; H04; H04N; H04N9/00; H04N9/64; G09G2320/00; G09G2320/06; G09G2320/0693; G09G2340/00; G09G2340/06; G09G2370/00; G09G2370/12

Claims Analysis

Total Claims: 58
Claim 1
Independent Claim 104 words
A method for providing color management, comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 2
Independent Claim 104 words
A method for providing color management, comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 3
Dependent Claim 20 words
A method according to claim 1 , wherein said spoofing includes spoofing at least one X11 application programming interface function.
Claim 4
Dependent Claim 27 words
A method according to claim 2 , wherein said spoofing includes spoofing at least one member of a group comprising a toCIEXYZ function and a fromCIEXYZ function.
Claim 5
Dependent Claim 37 words
A method according to claim 1 , wherein said at least one source device and said at least one destination device include at least one member of a group comprising a computing device and a software object.
Claim 6
Dependent Claim 20 words
A method according to claim 1 , further including: invoking at least one function of a second color management system.
Claim 7
Dependent Claim 26 words
A method according to claim 5 , wherein said invoking at least one function of a second color management system includes invoking Color Management Modules (CMM).
Claim 8
Dependent Claim 46 words
A method according to claim 1 , wherein said device independent color data includes at least one member of group comprising standard color space (sRGB) data, standard extended color space (scRGB) data, International Color Consortium (ICC) profile data and Cyan, Magenta, Yellow and blacK (CMYK) data.
Claim 9
Dependent Claim 33 words
A method according to claim 1 , wherein said device independent color data includes at least one member of group comprising scRGB, RIMM RGB (EK/PIMA), ROMM RGB (EK/PIMA) and esRGB (HP/PIMA) color data.
Claim 10
Dependent Claim 17 words
A method according to claim 8 , further including converting signed floating point numbers to unsigned shorts.
Claim 11
Dependent Claim 26 words
A method according to claim 8 , wherein said invoking includes providing tonal compression via 3 1-D Look Up Tables (LUTs) in the device link profile.
Claim 12
Dependent Claim 85 words
A method according to claim 1 , wherein said spoofing includes: spoofing the at least one application programming interface function to convert from device dependent color values to CIEXYZ values; and one of ( 1 ) utilizing a 3×3 matrix and 1-D Look Up Tables (LUTs) in the device link profile to characterize a specific output device and (2) setting the 3×3 matrix of the device link profile to the identity matrix and setting the 1-D LUTs of the device link profile to identity LUTs.
Claim 13
Dependent Claim 36 words
A method according to claim 1 , wherein said method is inverted and instead converts device dependent color values to device independent values, and said spoofing includes spoofing the toCIEXYZ function of the application programming interface.
Claim 14
Dependent Claim 40 words
A method according to claim 1 , wherein said spoofing includes replacing a pointer to the protocol default supplied to said at least one application programming interface function with a custom function that invokes an ICC compatible color management module.
Claim 15
Dependent Claim 33 words
At least one member of a group comprising an operating system, driver code, an application programming interface, a tool kit and a coprocessing device for providing the color management of claim 1 .
Claim 16
Dependent Claim 16 words
A modulated data signal carrying computer executable instructions for performing the method of claim 1 .
Claim 17
Dependent Claim 13 words
A computing device comprising means for performing the method of claim 1 .
Claim 18
Dependent Claim 118 words
A computer readable medium for providing color management having stored thereon computer executable instructions for performing a method, the method comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 19
Dependent Claim 118 words
A computer readable medium for providing color management having stored thereon computer executable instructions for performing a method, the method comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 20
Dependent Claim 22 words
A computer readable medium according to claim 17 , wherein said spoofing includes spoofing at least one X11 application programming interface function.
Claim 21
Dependent Claim 30 words
A computer readable medium according to claim 18 , wherein said spoofing includes spoofing at least one member of a group comprising a toCIEXYZ function and the a fromCIEXYZ function.
Claim 22
Dependent Claim 39 words
A computer readable medium according to claim 17 , wherein said at least one source device and said at least one destination device include at least one member of a group comprising a computing device and a software object.
Claim 23
Dependent Claim 22 words
A computer readable medium according to claim 17 , further including: invoking at least one function of a second color management system.
Claim 24
Dependent Claim 28 words
A computer readable medium according to claim 21 , wherein said invoking at least one function of a second color management system includes invoking Color Management Modules (CMM).
Claim 25
Dependent Claim 49 words
A computer readable medium according to claim 17 , wherein said device independent color data includes at least one member of a group comprising standard color space (sRGB) data, standard extended color space (scRGB) data, International Color Consortium (ICC) profile data and Cyan, Magenta, Yellow and blacK (CMYK) data.
Claim 26
Dependent Claim 36 words
A computer readable medium according to claim 17 , wherein said device independent color data includes at least one member of a group comprising scRGB, RIMM RGB (EK/PIMA), ROMM RGB (EK/PIMA) and esRGB (HP/PIMA) color data.
Claim 27
Dependent Claim 19 words
A computer readable medium according to claim 24 , further including converting signed floating point numbers to unsigned shorts.
Claim 28
Dependent Claim 28 words
A computer readable medium according to claim 24 , wherein said invoking includes providing tonal compression via 3 1-D Look Up Tables (LUTs) in the device link profile.
Claim 29
Dependent Claim 84 words
A computer readable medium according to claim 17 , wherein said spoofing includes: spoofing the at least one application programming interface function to convert from device dependent color values to CIEXYZ values; and one of(1) utilizing a 3×3 matrix and 1-D Look Up Tables (LUTs) in the device link profile to characterize a specific output device and (2) setting the 3×3 matrix of the device link profile to the identity matrix and setting the 1-D LUTs of the device link profile to identity LUTs.
Claim 30
Dependent Claim 43 words
A computer readable medium according to claim 17 , wherein the operation of said method is inverted and instead said method converts device dependent color values to device independent values, and said spoofing includes spoofing the toCIEXYZ function of the application programming interface.
Claim 31
Dependent Claim 42 words
A computer readable medium according to claim 17 , wherein said spoofing includes replacing a pointer to the protocol default supplied to said at least one application programming interface function with a custom function that invokes an ICC compatible color management module.
Claim 32
Dependent Claim 124 words
A computing device for use in connection with color management, comprising: an input component that receives device independent color data from at least one source device for translation to at least one destination device; a processing component that generates a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; a spoof component that spoofs at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and an output component that invokes said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 33
Dependent Claim 124 words
A computing device for use in connection with color management, comprising: an input component that receives device independent color data from at least one source device for translation to at least one destination device; a processing component that generates a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; a spoof component that spoofs at least one application programming interface function of a color management system by providing the device link profile to the at least one application programming interface function; and an output component that invokes said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 34
Dependent Claim 21 words
A computing device according to claim 30 , wherein said spoof component spoofs at least one X11 application programming interface function.
Claim 35
Dependent Claim 28 words
A computing device according to claim 31 , wherein said spoof component spoofs at least one member of a group comprising a toCIEXYZ function and a fromCIEXYZ function.
Claim 36
Dependent Claim 38 words
A computing device according to claim 30 , wherein said at least one source device and said at least one destination device include at least one member of a group comprising a computing device and a software object.
Claim 37
Dependent Claim 25 words
A computing device according to claim 30 , further including: an invocation component that invokes at least one function of a second color management system.
Claim 38
Dependent Claim 30 words
A computing device according to claim 34 , wherein said invocation component that invokes at least one function of a second color management system includes invoking Color Management Modules (CMM).
Claim 39
Dependent Claim 48 words
A computing device according to claim 30 , wherein said device independent color data includes at least one member of a group comprising standard color space (sRGB) data, standard extended color space (scRGB) data, International Color Consortium (ICC) profile data and Cyan, Magenta, Yellow and blacK (CMYK) data.
Claim 40
Dependent Claim 35 words
A computing device according to claim 30 , wherein said device independent color data includes at least one member of a group comprising scRGB, RIMM RGB (EK/PIMA), ROMM RGB (EK/PIMA) and esRGB (HP/PIMA) color data.
Claim 41
Dependent Claim 22 words
A computing device according to claim 37 , further including a conversion component that converts signed floating point numbers to unsigned shorts.
Claim 42
Dependent Claim 27 words
A computing device according to claim 37 , wherein said invocation component provides tonal compression via 3 1-D Look Up Tables (LUTs) in the device link profile.
Claim 43
Dependent Claim 83 words
A computing device according to claim 30 , wherein said spoof component spoofs the at least one application programming interface function to convert from device dependent color values to CIEXYZ values, and one of(1) utilizes a 3×3 matrix and 1-D Look Up Tables (LUTs) in the device link profile to characterize a specific output device and (2) sets the 3×3 matrix of the device link profile to the identity matrix and sets the 1-D LUTs of the device link profile to identity LUTs.
Claim 44
Dependent Claim 42 words
A computing device according to claim 30 , wherein the operation of said components is inverted and instead said components convert device dependent color values to device independent values, and said spoof component spoofs the toCIEXYZ function of the application programming interface.
Claim 45
Dependent Claim 41 words
A computing device according to claim 30 , wherein said spoof component replaces a pointer to the protocol default supplied to said at least one application programming interface function with a custom function that invokes an ICC compatible color management module.
Claim 46
Independent Claim 104 words
A method for providing color management, comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one X11 application programming interface function by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and invoking said at least one X11 application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 47
Independent Claim 104 words
A method for providing color management, comprising: receiving device independent color data from at least one source device for translation to at least one destination device; generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; spoofing at least one X11 application programming interface function by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and invoking said at least one X11 application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 48
Dependent Claim 26 words
A method according to claim 43 , wherein said spoofing includes providing the device link profile to the at least one X11 application programming interface function.
Claim 49
Dependent Claim 21 words
A method according to claim 43 , further including invoking at least one function of a Color Management Modules (CMM) system.
Claim 50
Dependent Claim 85 words
A method according to claim 43 , wherein said spoofing includes: spoofing the at least one X11 application programming interface function to convert from device dependent color values to CIEXYZ values; and one of(1) utilizing a 3×3 matrix and 1-D Look Up Tables (LUTs) in the device link profile to characterize a specific output device and ( 2 ) setting the 3×3 matrix of the device link profile to the identity matrix and setting the 1-D LUTs of the device link profile to identity LUTs.
Claim 51
Dependent Claim 37 words
A method according to claim 43 , wherein said method is inverted and instead converts device dependent color values to device independent values, and said spoofing includes spoofing the toCIEXYZ function of the X11 application programming interface.
Claim 52
Dependent Claim 33 words
A method according to claim 43 , wherein said spoofing includes replacing a pointer to the protocol default supplied to said at least one X11 application programming interface function with a custom function.
Claim 53
Dependent Claim 133 words
At least one computer readable medium for providing color management having stored thereon a plurality of computer-executable modules comprising computer executable instructions, the modules comprising: means for receiving device independent color data from at least one source device for translation to at least one destination device; means for generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; means for spoofing at least one application programming interface function of a color management system by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and means for invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 54
Dependent Claim 133 words
At least one computer readable medium for providing color management having stored thereon a plurality of computer-executable modules comprising computer executable instructions, the modules comprising: means for receiving device independent color data from at least one source device for translation to at least one destination device; means for generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; means for spoofing at least one application programming interface function of a color management system by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and means for invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 55
Dependent Claim 25 words
At least one computer readable medium according to claim 49 , wherein said means for spoofing spoofs at least one X11 application programming interface function.
Claim 56
Dependent Claim 119 words
A computing device for use in connection with color management, comprising: means for receiving device independent color data from at least one source device for translation to at least one destination device; means for generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; means for spoofing at least one application programming interface function of a color management system by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and means for invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 57
Dependent Claim 119 words
A computing device for use in connection with color management, comprising: means for receiving device independent color data from at least one source device for translation to at least one destination device; means for generating a device link profile representing at least one color characteristic differential between said at least one source device and said at least one destination device; means for spoofing at least one application programming interface function of a color management system by spoofing at least one of member of a group comprising a toCIEXYZ function and a fromCIEXYZ function; and means for invoking said at least one application programming interface function to generate destination device dependent color values for said at least one destination device.
Claim 58
Dependent Claim 22 words
A computing device according to claim 51 , wherein said means for spoofing spoofs at least one X11 application programming interface function.

References Cited (Backward Citations)

US6362808B1 Cited
US6307961B1 Cited
EP1079606A2 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2010-02-26 2010-08-28 2011-02-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2014-02-26 2014-08-28 2015-02-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2018-02-26 2018-08-28 2019-02-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag