ICC Achievements and Challenges
(Note: This paper was written in 2000 and many of the points raised were addressed in ICC v4 from 2001 onwards.)
The International Colour Consortium (ICC) is a group of over 50 companies representing the manufacturers and users of most of the world's colour imaging technologies. The types of products produced by these ICC members include ink-jet printers, computer operating systems, stock photography, and printed publications. Why does such a diverse group of companies with such a diverse range of products have an interest in joining a consortium? What is so important about the ICC that has made these companies, some that are competitors and some that are partners, join together? Furthermore, what do these companies do in the ICC? What do they expect will happen? How will what they do help their business?
Some of the answers to these questions have been discussed before,. However, much of the work the ICC has done is either not well understood or has been distorted by the interpretation. This paper discusses the achievements of the ICC as well as the shortcomings. Also included in this paper is a plan for the ICC that will allow the shortcomings to be addressed while allowing for product cycles and backwards compatibility.
Networks and the Holy Grail
The need for standards in colour management can be summarised in one word: networks. Before networks, life was easy, a designer would create a colour piece and take their disk to the printer, and the printer would create a set of films and make a proof. The designer would see the actual colours and could choose to adjust the original document before printing. Did the designer see the colours he expected on the proof? Did the proof match what the designer saw on his computer screen? The answers are maybe and probably not. The designer relied on experience to tell him what an RGB value of (255, 184, 12) would look like printed. Many would have a chart made by the printer showing the colours resulting from different tint screens for each colour primary. In fact, this is how cartoonist coloured the Sunday comics, even before computers. One could say that this designer had a need for colour management, but for the most part, each designer would develop a closed system that worked for him or her. This holds true for large production operations as well. An art director would use the same type of experience to judge the choice of colours and the images to be used. A scanner operator would understand the particular printing process for which they were scanning.
What about my desktop printer? Many systems were developed to provide color matching for each company's own devices and software. Again, each was a closed-loop system that allowed the printer software to control how the colours were printed. So before the network is involved, we have a variety of closed loop systems, computerised or not, that allow professionals to produce colour documents. Along comes the network. Suddenly, the designer wants to be able to send a job to the printer via email. An art director wants to see the magazine layout now rather than wait for the overnight delivery. A whole new medium designed around networks springs up and now we have catalogues, which were once lovingly prepared by an art director to look perfect, send over a network to be viewed on an uncalibrated monitor and printed on who-knows-what printer. Networks have suddenly broken the security blanket of the closed system and now we have a problem.
The problem is that we want anyone to be able to see what I saw on whatever I have on whatever they have. That is the Holy Grail of colour management. With the ideal colour management system the following scenario is plausible: Cartoonist in a dark room makes a cartoon mouse on their monitor, the cartoon is released on film for viewing in movie theatres and DVD for viewing on televisions and computer monitors. The same mouse, and it's distinctive outfit is used on a web page to sell the DVDs and toys. The boxes for the toys are printed with the mouse's image as are the storybooks. A child, happy to own the popular new mouse toy, scans the image of the mouse from their book and emails a pen pal overseas. The email attachment is opened to see the mouse, wearing the same distinctive colours as seen on the movie screen, television, computer monitor,box, and plastic toy. "Well, this surely can be done, children do this now", one might say. Just imagine that the same image of the mouse was used for all of these visual transactions, without anyone "tweaking" the colour, changing the hues, or etching the dots. When we can use the information channels so easily without regard for what media is used, then we will have reached the Holy Grail.
The ICC is trying to get there. Ask the average ICC member and they will probably say, "It can't be done". But they may add under their breath, "today". The ICC is trying to develop an open vendor-neutral, cross-platform colour management system architecture and components. If they do the job right, we will have the Holy Grail.
There have been many talks and papers that start with a history of the ICC. A brief summary will be given here. The ICC was formed in 1993 as the ColorSync consortium. Apple Computer led a group of eight companies and organisations to develop a new specification for a colour profile format, based on the profile-PCS-profile model. This model assumed that each device could be profiled to describe the transformation from the device's colour space to a reference media. The reference media was dubbed the Profile Connection Space (PCS). The PCS is the heart of the ICC system, each profile was a data file that contained both the transformation from device colours to the PCS and from the PCS to device space. In this way, any colour that could be captured or represented by one device could be reproduced on another media. This concept is illustrated by Figure 1.
The PCS was defined as "an idealized print, to be viewed in reflection, on a "paper" that is a perfect, non-selective diffuser (i.e., Dmin = 0), with colorants having a large dynamic range and color gamut." The viewing environment was defined to be "the standard viewing booth (ISO 3664 P2); in particular, it is characterized by a 'normal' surround (i.e., where the illumination of the image is similar to the illumination of the rest of the environment), and the adapting illuminant is specified to have the chromaticity of D50 (a particular daylight illuminant)." The means for performing the actual transformations is referred to as a CMM (Colour Management Module/Method).
This system has achieved widespread acceptance in many areas of the colour reproduction industry. Many vendors sell ICC related products and most include profiles with their devices. The major operating systems vendors have integrated ICC colour management frameworks in to their products. Several vendors of CMMs exist as well. However, there is currently no definition of what or how the CMM should function. The function must be inferred from the PCS and the profile definition. This leads to a number of shortcomings that prevents the ICC from achieving Holy Grail status.
Others have documented and debated the various shortcomings of the ICC system. They can be categorised into three main problems: Narrow PCS, no CMM specification, and no guaranteed interoperability. These problems are described in more detail below. One issue with the ICC is that the membership is very diverse. Other industry consortia tend to attract members with the same profile, that is, all manufacturers of VCRs or all software vendors. The ICC has end-users, framework architects, hardware manufacturers, toolmakers, and various combinations of the above. This leads to fundamental differences in opinion on the direction that the ICC should take. Each company may have a different interest in ICC based revenue. For example, an operating system vendor may want to enable simple colour management without user interaction while a tool vendor may count on sophisticated users to use their products. The author believes that the road map given in this paper will accommodate most of the ICC members' interests.
The PCS, as mention above, is based on a reference media with specific characteristics. The problem is two-fold. The PCS as defined is not defined well enough. Each profile maker has to make some assumptions about, not only the viewing conditions of the end-user, but the viewing conditions of the PCS. The PCS, while somewhat defined, does not define every aspect of the reference space. For example, blackpoint and flare are not defined. However, even with some assumption about the blackpoint and flare, the actual user may be in a very different condition than the PCS. Imagine a movie theatre. In this case, the profile builder must compensate for the differences in viewing conditions, media and white point. Since the means to do this is not specified, vendors may choose their own means. This has two effects; the first is that some profiles are better than others. Second, some profiles give different results than others.
Lack of CMM Specification
The CMM's job is, given two profiles and some image data, to transform the image data from the colour space of one device to that of another. This seems simple enough. However, since the ICC profile often uses look-up tables (LUTs) to approximate functions, the desired value may need to be interpolated. And since there is more than one methods of interpolation, each with some error, a situation arises where two CMMs, given identical input, can yield very different results. There are also aspects of the PCS, listed above, that a CMM may make assumptions about. These can lead to further error. In short, since the ICC has, to date, only specified the profile file format,much of the use of profiles is left to assumptions. This leads to the next problem:
Lack of Interoperation
This category is really a symptom rather than a problem. It encompasses the above as well as the issues of rendering intents, private tags, and gamut mapping. The ICC has "defined" four rendering intents. Not only are these not defined beyond giving them labels, some are even misnamed. The relative and absolute colorimetric intents do not coincide with the CIE's definition of relative and absolute colorimetry. There is also some dissent about whether the intents represent rendering intents to be selected by the author or gamut mapping strategies to be selected by the viewer.
Because the ICC realises that there are problems with the system, they have allowed the use of "Private Tags". These tags allow individual companies to define their own tags for their own use. One such use is to overcome inconsistencies in the ICC specification or limits imposed by the PCS. Since only the company who creates such tags can use them, there is a difference between users' results. It is believed that the use of private tags will diminish in direct proportion to the rate that the ICC problems are solved.
The issue of gamut mapping is also left open by the ICC. Gamut mapping is often referred to with terms such as "magic", "art", "trade secret", and "added value". While all of these may be accurate, it is clear that the same image printed on two devices with different gamuts will not be able to achieve an exact match. However, if different methods are used to map between the colour gamuts, the results will continue to be different. The CIE has recently appointed a technical committee (TC 8-03) to define a "baseline" gamut mapping method. The author hopes that the ICC will quickly choose to adopt the CIE's recommendation for a baseline method.
To this point, the current status of the ICC has been described. A number of serious problems have been described as well. The ICC as described seems to be a far cry from the Holy Grail. In fact, anyone looking at the last few revisions of the ICC specification may not find a clear sign of progress towards The Grail. This presents what may appear to be a grim situation for colour management. All is not lost, there is a plan. The remainder of this paper will present the author's vision for the ICC and how this vision can be achieved. It is hoped that this plan will help both members and non-members realise the potential of the ICC system and even inspire them to come forth to contribute to the effort.
There are three components of the ICC roadmap. Each one is characterised by the amount of work required and the timeframe it is expected to span. The three components are named "Clarify the PCS", the "Interoperation WG", and the "Reference Implementation WG". Figure 2 gives an overview of the time frame of these projects.
Clarify the PCS
This effort is an initiative to correct the deficiencies in the current PCS by better defining the reference medium and viewing conditions. This effort is seen as a short-term fix with an emphasis on maintaining as much compatibility as possible. The issues addressed by this effort include the media black point and flare. This effort is the subject of ongoing discussion within the ICC. This first step towards The Grail will allow profile makers to agree on the PCS to which images are transformed.
Interoperation Working Group
This formal body within the ICC is charged with fixing the current ICC system. As mentioned before, the current system lacks a clear specification for the CMM and the means for making a profile. This group was formed to evaluate the problems with the current system and propose solutions. This activity is focused on making specifications for the current system that will avoid "breaking" the profiles and CMMs still in place. This group is just beginning their work and it is expected that they will produce an interim solution until the next generation of ICC system is approved.
Reference Implementation Working Group
This group began with two tasks, to define the next generation of ICC system and to provide a working method for the current system. After much discussion with RIWG members and the ICC body, it was determined that this was too much for one group of people to handle. The Interoperation WG was started to take on the second task. The task of defining the next generation remains with the RIWG. The RIWG's goal is to provide a baseline implementation of the next generation ICC system as well as a detailed specification. The implementation can be used by the community to understand the system and to provide reference material for building a commercial quality product in conformance with the ICC specification. Issues of conformance testing metrics and methods remain with the current Conformance Testing Working Group. The motivation for putting effort into producing computer code for this effort is two-fold; it provides a test bed to ensure that the proposed system is feasible, and it provides a reference for understanding a complex system.
The RIWG aims to achieve the Holy Grail by using a specified colour appearance model, a specific, baseline gamut mapping method, and a define method for building profiles. This work is geared towards providing a baseline path that will allow users of the ICC system to achieve the interoperability they require. However, this does not restrict individual companies from adding value to their own products by providing extensions to the baseline for special purposes or improving the performance on the baseline methods. The baseline method is intended to provide results that communicate the expected result to another. This group does not address the issue of a preferred reproduction. The group is making an effort to make as few changes as possible to the profile format and a plan for handling legacy profiles is being developed.
This group's work is controversial in nature because it represents change. However, it is the author?s belief that this is the only means for the ICC system to achieve the Holy Grail.
How do we get there from here?
Given that the Holy Grail lies on the other side of three distinct projects, each with their own hurdles to overcome, one might wonder how it is possible to ever achieve it. The hurdles stem from the fear of something new and different. The Holy Grail seems to threaten some since it may require entirely new product revisions. The good news is that the main burden will be on the few who produce CMMs. The burden on the many that produce profiles will be limited. Backward compatibility is always to be considered to allow end users to achieve the same results or better during the transition times.
The roadmap laid out in this paper attempts to separate the work into feasible projects with a specific goal and timeline. The main issue is to find a critical mass of participants that are willing to work on each project. Once the project "gets off the ground", it is believed that more members will contribute. The challenge of attaining an approved specification depends on the membership buying into the idea of the Holy Grail and each member being willing to make some compromises such that all will benefit in the future.
The alternative is a dark forest of computer networks that mangle colour and inspire small enclaves of closed systems to protect the few who are able to please customers. The author strongly encourages the colour management community to embrace this roadmap and hopes individuals will contribute their expertise to producing a baseline system that allows pixels to travel the network without fear!