Color management

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In digital imaging systems, color management is the controlled conversion between the color representations of various devices, such as image scanners, digital cameras, monitors, TV screens, film printers, computer printers, offset presses, and corresponding media.

The primary goal of color management is to obtain a good match across color devices; for example, a video which should appear the same color on a computer LCD monitor, a plasma TV screen, and on a printed frame of video. Color management helps to achieve the same appearance on all of these devices, provided the devices are capable of delivering the needed color intensities.

Parts of this technology are implemented in the operating system (OS), helper libraries, the application, and devices. A cross-platform view of color management is the use of an ICC-compatible color management system. The International Color Consortium (ICC) is an industry consortium which has defined an open standard for a Color Matching Module (CMM) at the OS level, and color profiles for the devices and working space (color space the user edits in).

There are other approaches to color management besides using ICC profiles. This is partly due to history and partly because of other needs than the ICC standard covers.The film and broadcasting industries make use of many of the same concepts, but they more frequently rely on boutique solutions. The film industry, for instance, uses 3D LUTs (lookup table) to characterize color. At the consumer level, color management currently applies more to images than video, in which color management is still in its infancy.[1]


[edit] Hardware

[edit] Characterization

In order to describe the behavior of the various output devices, they must be compared (measured) in relation to a standard color space. Often a step called linearization is performed first, in order to undo the effect of gamma correction that was done to get the most out of limited 8-bit color paths. Instruments used for measuring device colors include colorimeters and spectrophotometers. As an intermediate result, the device gamut is described in the form of scattered measurement data. The transformation of the scattered measurement data into a more regular form, usable by the application, is called profiling. Profiling is a complex process involving mathematics, intense computation, judgment, testing, and iteration. After the profiling is finished, an idealized color description of the device is created. This description is called a profile.

[edit] Calibration

Calibration is like characterization, except that it can include the adjustment of the device, as opposed to just the measurement of the device. Color management is sometimes sidestepped by calibrating devices to a common standard color space such as sRGB; when such calibration is done well enough, no color translations are needed to get all devices to handle colors consistently. This avoidance of the complexity of color management was one of the goals in the development of sRGB.

[edit] Color profiles

[edit] Embedding

Image formats themselves (such as TIFF, JPEG, PNG, EPS, PDF, and SVG) may contain embedded color profiles but are not required to do so by the image format. The International Color Consortium standard was created to bring various developers and manufacturers together. The ICC standard permits the exchange of output device characteristics and color spaces in the form of metadata. This allows the embedding of color profiles into images as well as storing them in a database or a profile directory.

[edit] Working spaces

Working spaces, such as sRGB or Adobe RGB, are color spaces that facilitate good results while editing. For instance, pixels with equal values of R,G,B should appear neutral. Using a large (gamut) working space will lead to posterization, while using a small working space will lead to clipping.[2] This trade-off is a consideration for the critical image editor.

[edit] Color translation

Color translation, or color space conversion, is the translation of the representation of a color from one color space to another. This calculation is required whenever data is exchanged inside a color-managed chain. Transforming profiled color information to different output devices is achieved by referencing the profile data into a standard color space. It is easy to convert colors from one device to a selected standard and from that color space to the colors of another device. By ensuring that the reference color space covers the many possible colors that humans can see, this concept allows one to exchange colors between many different color output devices.

[edit] Profile Connection Space

In the terminology of the International Color Consortium, a translation between two color spaces can go through a Profile Connection Space (PCS): Color Space 1 → PCS (CIELAB or CIEXYZ) → Color space 2; conversions into and out of the PCS are each specified by a profile.[3]

[edit] Gamut mapping

Since different devices don't have the same gamut, they need some rearrangement near the borders of the gamut. Some colors need to be shifted to the inside of the gamut as they otherwise cannot be represented on the output device and would simply be clipped. For instance to print a mostly saturated blue from a monitor to paper with a typical CMYK printer will surely fail. The paper blue will not be that saturated. Conversely, the bright cyan of an inkjet printer cannot be easily presented on an average computer monitor. The color management system can utilize various methods to achieve desired results and give experienced users control of the gamut mapping behavior.

[edit] Rendering intent

When the gamut of source color space exceeds that of the destination, saturated colors are liable to become clipped (inaccurately represented). The color management module can deal with this problem in several ways. The ICC specification includes four different rendering intents: absolute colorimetric, relative colorimetric, perceptual, and saturation.[3]

Absolute colorimetric 

Absolute colorimetry and relative colorimetry actually use the same table but differ in the adjustment for the white point media. If my output device had a much larger gamut than the source data that (i.e. all the colors in the can be represented data), using the absolute colorimetry rendering intent would "ideally" (ignoring noise, precision etc) give an exact output of the specified CIELAB values. It might not look right, but an instrument making measurements on the print would indicate that it was correct. Absolute colorimetry is useful to get an exact specified color (e.g. IBM blue). It could also be to quantify the accuracy of mapping methods. The colors outside of the proof print system's possible color are mapped to the boundary of the color gamut.

Relative colorimetric 

The goal in relative colorimetry is to be truthful to the specified color, with only a correction for the media. Relative colorimetry is useful in proofing applications, since you are using it to get an idea of how a print on one device will appear on a different device. Media differences are the only thing you really would like to adjust for. Obviously there has to be some gamut mapping going on also. Usually this is done in a way where hue and lightness are maintained at the cost of reduced saturation. Relative colorimetric is the default rendering intent on most systems.

Perceptual and Saturation 

The perceptual and saturation intents are where the results really depend upon the profile maker. This is even how some of the competitors in this market differentiate themselves. These intents should be created by the profile maker so that pleasing images occur with the perceptual intent while eye-catching business graphics occur with the saturation intent. This is achieved through the use of different perceptual remaps of the data as well as different gamut mapping methods. Perceptual rendering is recommended for color separation

[edit] Implementation

[edit] Color management module

Color matching module (also -method or -system) is a software algorithm that adjusts the numerical values that get sent to or received from different devices so that the perceived color they produce remains consistent. The key issue here is how to deal with a color that cannot be reproduced on a certain device in order to show it through a different device as if it were visually the same color, just as when the reproducible color range between color transparencies and printed matters are different. There is no common method for this process, and the performance depends on the capability of each color matching method.

Some well known CMMs are ColorSync, Adobe CMM, LittleCMS, and ArgyllCMS.

[edit] Operating system level

Beginning with Windows Vista, color management in Windows is handled at the OS level through an ICC V4-compatible color management standard and API known as Windows Color System.[4] WCS supplements the Image Color Management (ICM) system in Windows 2000 and Windows XP, originally written by Heidelberg.[5][6]

Apple's Mac OS X and the classic Mac OS have long had a color management module, ColorSync.

Operating systems which use the X Window System for graphics use ICC profiles, but support for color management on Linux is still quite nascent, with only a handful of applications supporting, some through LittleCMS.

[edit] Application level

Most web browsers ignore color profiles.[7] Notable exceptions are Safari, starting with version 2.0, and Firefox starting with version 3.0. Although disabled by default in Firefox 3.0, users can enable color management by using an add-on[8] or setting the value "gfx.color_management.enabled" to "true" in Firefox 3's "about:config" file.[9]. The current Beta version of Firefox 3.1 (Minefield 3.1b1pre) has color management enabled by default only for tagged images. FastPictureViewer, a commercial image viewer for Windows, features full color management support (monitor profile and image profiles).

[edit] See also

[edit] References

  1. ^ Fairchild, Mark. "A Color Scientist Looks at Video". Retrieved on 2008-05-09. 
  2. ^ Rodney, Andrew. "The role of working spaces in Adobe applications". Adobe. Retrieved on 2008-05-09. 
  3. ^ a b Rodney, Andrew (2005), Color Management for Photographers, Focal Press, pp. 32–33, ISBN 0240806492 
  4. ^ Upton, Steve (February 2008). Vista's New Color Management System: WCS.
  5. ^ Microsoft (1997-04-23). "Microsoft Licenses LinoColorCMM Technology To Improve Color Management in Windows". Retrieved on 2008-05-08. 
  6. ^ The reader may verify this by examining the Properties of any ICM profile. The Profile Information tab should contain the entry "LinoColorCMM © by Heidelberger Druckmaschinen AG".
  7. ^ Smith, Colin; Kabili, Jan (2005). How to Wow: Photoshop CS2 for the Web. Berkeley, CA: Peachpit Press. pp. 13. ISBN 0-321-39394-5. Retrieved on 2008-05-08. "Many designers choose not to include ICC Profiles with Web files because most Web browsers can't read them and they increase the size of a file." 
  8. ^ Color Management add-on by Sean Hayes.
  9. ^ Firefox 3: Color profile support (oh the pretty, pretty colors), Deb Richardson, Mozilla Corporation.

[edit] Further reading

  • Fraser, Bruce; Bunting, Fred; Murphy, Chris (2004). Real World Color Management. Berkeley, CA, USA: Peachpit Press. ISBN 0-201-77340-6. 
  • Schwartz, Charles S. (2004). Understanding Digital Cinema: A Professional Handbook. Focal Press. ISBN 978-0240806174. 
  • Morovic, Jan (2008). Color Gamut Mapping. Wiley. ISBN 978-0470030325. 

[edit] External links

Personal tools