There are several standards connected with color management. Some technical standards are about color management should work. Other standards are more about the exchange of color data in daily practice. On some points, both groups of standards interfere.
Some standards are maintained by official international standard-organisations like ISO (http://www.iso.org), IEC (http://www.iec.org) or W3C (http://www.w3c.org). Some standards are maintained by a consortium of vendors. At least there are de-facto standards of only one vendor, because he is the market dominator.
|Table of contents|
The Commission Internationale de l'Éclairage (http://www.cie.co.at/index_ie.html) is the organisation behind the CIE*XYZ and CIE*Lab colour spaces. They provided the base for much of what is agreed upon in computer colour computation.
The ICC specifications
The ICC (http://www.color.org) specifications are maintained by an industry-consortium and are now also an ISO standard.
The specifications contain a format for color profiles and a CMM for using the profiles on system-level or in applications.
The ICC-specifications are not embedded in workflow recommendations for the end-users. There are also no straight guidelines, how the OS, applications and printer drivers should interact and should be presented to the user for a transparent ICC color management workflow. As there are no such recommendations and guidelines, it is impossible to construct test data, if OS, applications and printer drivers are working like they should. As result, vendors of operating systems, applications and printer drivers implement ICC-based color management like they think it should work. Even for color management specialist, it is often not possible to predict, how OS, applications and printer drivers interact.
In the ICC-specifications, gamut mapping is standardized for colorimetric matches. Perceptual mapping is actual not standardized. The reference medium gamut and relative colorimetric matching with blackpoint compensation are first steps for a standardized perceptual gamut mapping, if profiles from different vendors interact.
This standard addresses color management for multimedia. It defines some RGB editing spaces and methods for converting from input devices to the editing space and from the editing space to output-devices.
The most known editing space defined in IEC 61966 2-1, there called Default RGB colour space, is sRGB. As sRGB is also available as an ICC-profile, it is easy to exchange sRGB data between both worlds.
A relatively new concept in IEC 61966 2-2 is the Extended RGB colour space or scRGB, this concepts adds negative RGB color values for enhancing the color gamut of sRGB data. It is still not clear, if scRGB data can easily used in ICC-based workflows.
One potential big source of sRGB data will may be the new announced WCMS Windows color management system from Microsoft announced for Windows Vista.
The sRGB (http://www.w3.org/Graphics/Color/sRGB.html) workflow is based on the IEC 61966 2-1, and has two different flavours. The Microsoft-flavour is part of the Microsoft certification-process for drivers for scanners, digital cameras and printers. Every input-driver has to convert input RGB data to sRGB, every printer driver has to convert sRGB data to out. Microsoft delivers test data and guidelines for testing the drivers and for judging the results. With certified drivers, color management from input to output is completely hidden from the user and needs no configuration. If the drivers are not delivering expected results, as a user it is more or less impossible to change the behaviour of the drivers.
The ICC-flavour uses ICC-profiles for converting to and from sRGB. If the results with standard profiles are not pleasing, the user has the possibility, to use individual generated ICC-profiles for scanner, digital camera, monitor and printer.
For implementing a sRGB workflow in an ICC environment, the user has often to configure profiles in different applications by himself. In several cases the color UI of applications are inconsistent and intransparent.
Microsoft announced for the next version of Windows a complete new color management infrastructure. The concept is in several points far ahead of the ICC-specifications.
Actually, is it not clear, how usable this concept is, if files and documents have to be exchanged with ICC-based environments.
- WindowsColorSystem API (http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/WindowsColorSystem_API.ppt) Presentation from Microsoft
The OpenICC group created and published several standards to make BSD/Linux systems working with colour management. Read at OpenICC wiki (http://www.openicc.info/) under Specifications.
Formats for exchange of files or documents
There are several formats for the exchange of files or documents. If the data is used for consumer imaging, office-documents, webdesign, graphic arts or high-end digital photography, it is common to say, that RGB-files with no embedded ICC-profile are referring to sRGB. Other files should have embedded ICC-profiles. For CMYK-files with no embedded profile, it is common to refer to the colorspace for offset printing on coated paper.
Standard Printing conditions
Standard Printing conditions makes color management for the graphics arts easy. From the point of the developer, they are the standard-settings for the CMYK colorspace in graphic arts applications. From the point of the user, they have following functions:
- clear communication of color between graphic designer and printing-house
- target colorspace for separation of RGB-images
- source colorspace for simulation offset printing on monitor (softproof)
- source colorspace for simulation offset printing on inkjet (contract proof)
- descriptive colorspace for CMYK PDF/X-data (output intent)
- descriptive colorspace for contract proofs (printed control slug)
- target for judging the color of contract proofs (colorimetric quality control)
The most often used standard printing conditions are SWOP in the US and ISO coated in Europe.
Colour measurements / swatches
Single colours are used to communicate palettes / swatches. An other purpose is to measure how a single device colour maps to an reference colour space. Such a reference can be the CIE*XYZ/L*a*b* colour spaces or spectral data. Beside measurement errors, this makes the colour repeatable, which is a fundamental in colour management.
The ICC standard includes an profile format for swatches. It is called NamedColor2. This, as usual, binary ICC format can be used to exchange palettes.
CGATS is the text based standard for profiling applications. Free implementations exist in Argyll and littleCMS. More versatile is the CxF – Color Exchange Format (http://www.colorexchangeformat.com) from GretagMacbeth now XRite. It is based on XML. For WCS is an XML measurement based profile format was created. A compatibility layer (http://msdn2.microsoft.com/en-us/library/ms536870.aspx) shall ashure that WCS profiles can be converted to ICC ones for instance to embedd them in a file. The specification is published here (http://msdn2.microsoft.com/en-us/library/aa965003.aspx) and here (http://msdn2.microsoft.com/en-us/library/ms536898.aspx).
Some graphic applications utilise own text files and specify simply RGB values there. See here (http://create.freedesktop.org/wiki/index.php/Swatches_-_colour_file_format). Others use undocumented, proprietary formats, which makes exchanging difficult or impossible.
Files, which are containing colours, are intended to be shared among users, applications and computers. To aid a exchange with colour confidence, some file formats include colourimetric information. As the now very widely adopted ICC standard is not so old, some of these properties in file formats predate the ICC specification. Others ignore it for simplicity.
- HTML CSS3 (http://www.w3.org/TR/css3-color/) @ w3
- Tagged Image File Format (http://www.remotesensing.org/libtiff/document.html) @ remotesensing.org
- Joint Photographic Experts Group (http://www.jpeg.org/jpeg/)
- Portable Networks Graphic (http://www.libpng.org/pub/png/spec/iso/) + W3C (http://www.w3.org/TR/2003/REC-PNG-20031110/#4Concepts.ColourSpaces) documentation
- Portable Document Format (http://www.adobe.com/devnet/pdf/pdf_reference.html) @ Adobe
- Scalable Vector Graphics (http://www.w3.org/TR/SVG/color.html) @ w3
- OpenEXR (http://www.openexr.com/documentation.html) supports matrix colour spaces
- Probe profiles for checking rendering intents (http://www.color.org/probeprofile.xalter) @color.org
- HTML image rendering test page (http://www.color.org/version4html.xalter) @color.org
- PDF image rendering test (http://www.color.org/version4pdf.pdf) @color.org
- Altona Test Suite (http://www.eci.org/doku.php?id=en:downloads#altona_test_suite) for PDF @eci.org
- FakeBRG.icc (http://www.oyranos.org/wiki/images/c/c0/FakeBRG.icc) moved primaries test profile
- sRGB_linear.icc (http://www.oyranos.org/wiki/images/3/31/SRGB_linear.icc) linear gamma test profile
- SVG colour profile test page (http://www.w3.org/Graphics/SVG/Test/20061213/htmlObjectHarness/full-color-prof-01-f.html) @w3
- Test Images page
For local hosted standards and recommendations look in the Standards group below.