The advancement of digital imaging has led to the development of numerous different technologies and devices for the capture, display and output of image data. While this provides great flexibility and a wide variety of options in terms of the imaging chain and image workflow, it means that certain aspects of image control are much more complex than they are with silver halide imaging. The most obvious example is that of digital colour reproduction, which is dealt with in detail in Chapter 23. Because so many alternative methods are employed to capture and reproduce colour in digital devices, the image will pass through a range of different colour spaces and be limited by various colour gamuts as it moves through the imaging chain. Colour values must be interpreted and converted between colour spaces and decisions must be made about how to deal with out-of-gamut colours. For most imaging applications, this process is dealt with by a colour management system.
A colour management system (CMS) is a collection of software tools used to manage the processes of colour specification and communication through an imaging chain. The key objectives of such a system include the production of almost identical representations of the same scene from different types of input devices (achieved by device adjustment), and the production of almost identical images on different types of output device (achieved by processing of the image). The first of these objectives means that devices are controlled so that two different input devices will produce almost the same set of digital values in a device-independent colour space from the same scene or original image. In practice, of course, exact matching may not be possible; therefore, the aim is to achieve predictable results within the limitations of the devices. The second objective means that if an image in the form of a set of digital values in a device-independent colour space is sent to two different output devices, the image should be adjusted so that the colour appearance of the image appears identical (or as close as possible) in the two outputs.
There are a number of fundamental steps required to achieve the main objective of device-independent colour translation. These are covered in detail in Chapter 23, but are summarized here. The calibration of a device involves setting up and modifying its behaviour to a desired state (which may be a standard specification). This establishes a known starting point for the measurement of the device's colour reproduction. Ongoing colour management will involve recalibrating the device to this state. The characterization of the device is concerned with measuring the response of a device and describing it in a device-independent manner (i.e. in terms of CIE colorimetry). In the context of this chapter, the characterization process results in an image profile which may be embedded in or assigned to an image. It is important to note that the characterization will only be accurate for the device in the calibrated state in which it was measured, hence the need for ongoing calibration, to return the device to this state.
The CMS uses the characterization data in each device profile to implement colour conversions (or colour transformations) between colour spaces. The aim of conversion may be to reproduce colours with colorimetric accuracy, or to achieve a ‘pleasing reproduction’, i.e. producing an optimal reproduction in a particular context. Modern colour management systems are flexible enough to achieve both. The CMS must also deal with the mismatching of gamuts through the system. The approach used in the mapping of out-of-gamut colours needs to be flexible and should be defined with reference to the reproduction aims of various different imaging applications.
The management of colour reproduction in early digital imaging systems was simplified by dealing with very limited imaging chains, and used a similar approach to that used in high-end photographic colour reproduction systems. This was possible because the numbers of available input and output devices were far fewer than the wide variety available today. Additionally, digital imaging tended to be more commonly used in high-end professional workflows, as many early digital imaging devices were prohibitively expensive for the average consumer.
Working within the constraints of a small imaging chain meant that the issues of colour conversion and management were significantly less complicated than they are at the current advanced stage of the development of digital imaging systems. In general, the imaging chain would be based upon a single input and output device, with a skilled operator managing both through some form of software interface. Such an approach is known as closed-loop colour management. A typical example of such a workflow is the use of a drum scanner to digitize images, outputting to some form of digital printer. Early drum scanners would scan using RGB filtered photomultipliers, but would output CMYK values, which would be specific to and optimized for the particular output device. The system was typically managed by one operator, who would gain knowledge of the colour reproduction characteristics of the entire chain over time and would be able to fine-tune the devices or the output to compensate for colour drift.
A single colour transformation is required for such a system, translating colour values directly device to device between the two colour spaces. It is possible to achieve very-high-quality results using a closed-loop approach, which is, incidentally, still used in some high-end proprietary systems. However, in the majority of imaging applications today, the imaging chain is likely to consist of numerous possible input and output devices. The requirement, therefore, is for flexibility and interoperability between different workflows and imaging chains.
Figure 26.1 illustrates the problem that arises when trying to add devices to a closed-loop colour management system. For every new input device that is added, a device-to-device colour transformation must be defined between the new device and all other output devices in the system. The same applies to new output devices, which require transforms to be defined with all input devices. For m source devices and n destination devices, m × n transforms will be required. Every time a device is recalibrated or a new device added, a further m transforms (if it is an output device) or n transforms (if it is an input device) must be calculated. The situation is further complicated by the fact that display devices may behave as source or destination devices in terms of a colour management imaging chain. As more devices are added, a closed-loop approach quickly becomes impractical.
A solution to this problem is to use an intermediate standard colour space as a ‘hub’ through which all colour values are transformed, rather than transforming values directly from device to device. It is then only necessary to define the relationship between each device and this colour space, as illustrated in Figure 26.2. Such a colour space must be device independent and therefore able to specify colour values unambiguously. Conversions between devices are performed via the intermediate colour space and each device will require the specification of only one transform into or out of this colour space. The number of total transforms required is reduced to n transforms for n devices, and the recalibration of a device or addition of a new device will only require one additional transform. This is termed open-loop colour management and is the basis of the International Color Consortium (ICC) colour management architecture.
This chapter deals with the subject of colour management within the framework specified by the ICC. The ICC architecture provides a standard method of implementing colour management in a profile-based system.
A number of companies developed colour management systems during the late 1980s and early 1990s, which defined colour profiles to provide device-to-device colour transforms and matching. However, these systems were proprietary and the lack of a standard profile format meant that the profiles could not be used by different colour management systems. The ICC was founded in 1993 by eight industry vendors, with the aim of providing a solution to this problem and developing a specification for a - colour management architecture based on a standard profile format. Today, the ICC has approximately 70 members from all areas of the imaging and computing industries. The ICC website states the consortium’s purpose:’. to promote the use and adoption of open, vendor-neutral, cross-platform colour management systems.’ To this end, a standard profile format specification has been developed. The profile is based upon the Apple ColorSync profile format.
The first version was released in 1994 and has been revised a number of times. The most recent major revisions resulted in the final version 2 specification, ICC.1:2001-04, followed by the current version, ICC.1:2004-10 (profile version 4.2.0.0), which has become ISO standard 15076-1:2005. This latest version has been developed to address certain ambiguities in the version 2 specification. Both types of profile may be currently used, but the implementation of version 4 is becoming more widespread. In general, this chapter describes the version 4 specification. Part of the implementation is the same for version 2.
The definition of a standard format for colour profiles allows the user to work within the same colour management architecture with profiles created by different vendors. This means that the architecture itself can be incorporated into widely used image-editing applications, and provides a framework to facilitate the communication of colour between different imaging chains, operating systems and applications.
An ICC colour management system is an embedded extension of the operating system, providing a common framework for colour management, which may be accessed by different applications. A CMS has two main functions. The first is the interpretation of device-specific colour values, and their specification in an unambiguous colour model. The system also manages the conversion of colour values between different colour space encodings and image encodings, maintaining colour consistency through the imaging chain. To achieve this, an ICC colour management system has four key components. These are:
• The profile connection space (PCS), which is the standard intermediate space that all profiles convert into and out of.
• The colour management module (CMM), which is a software ‘engine’ embedded in the operating system, and performs all the colour conversions.
• The ICC profiles, which are of various different types and follow the ICC standard format. They contain the information necessary for the colour conversions into and out of the PCS.
• Rendering intents, currently four being specified, which provide different approaches to dealing with out-of-gamut colours, each one prioritizing certain qualities of the image at the expense of others and each optimized for the colour reproduction goals of particular imaging applications.
Each ICC profile contains the information necessary for transformation between a colour space and the profile connection space. The process of colour conversion is illustrated in Figure 26.3. Each colour conversion between two colour spaces requires a source and a destination profile. The CMM connects the two profiles, producing a transformation between them. The information contained within the source profile is used to convert values into the PCS, where colour values are specified as CIEXYZ values or derived CIELAB values. The destination profile provides the transform from the PCS to the output colour space. The values produced from the profiles, particularly if based on a look-up table model, will require interpolation (see Chapter 23) and this is also calculated by the CMM.
The rendering intent is specified at the point of conversion and further defines the relationship between the source and destination gamuts in terms of how colours are rendered from input gamut to output gamut. It is quite common to find some areas of gamut mismatch between the gamuts of the devices, and sometimes between the device gamuts and the gamut of the PCS. This means that some colours available from an input device may not be reproducible at output and, equally, colours that can be produced by the output device may not be captured by an input device. Two main approaches are used to deal with out-of-gamut colours: gamut compression reduces the overall source gamut to fit into the destination space, whereas gamut clipping only adjusts the out-of-gamut colours, clipping them to the gamut boundary.
The description of the role of these components given above is that of the standard default implementation of the architecture. There is capability within the ICC.1-2004 specification for the CMM to be adapted to perform more complex functions, such as the calculation of optimized transforms for specific images, a possibility for third-party vendors of CMMs.
The architecture is based around a reference colour space using the colour specification method defined by the CIE. Values in the profile connection space are encoded as 16-bit XYZ or 8- or 16-bit CIELAB values, depending on the profile type and implementation. Because the PCS is intended to be used as an interchange space to connect source and destination profiles, it has a large enough gamut to encompass the gamuts of the majority of input and output devices and media. A degree of restriction is applied in determining the PCS however, to ensure that it remains unambiguous for all imaging applications. The CIE specifications define colour values for two standard observers, two measurement geometries for reflecting media and a range of different illuminants. The PCS is strictly specified for the 2° standard observer (CIE 1931 standard colorimetric observer – Chapter 5) relative to the CIE daylight D50 illuminant, although it is possible to provide values using other illuminants with a chromatic adaptation transform between the illuminant and D50. Values are measured for reflected media using specified measuring geometry (0°/45° or 45°/0°) and measurement procedures are specified for transmitting media (refer to Chapter 5 for further details on measurement procedures and definitions in CIE colorimetry).
When a sample is measured, the illumination level and any surrounding stimuli will affect image appearance. The CIE system does not accommodate either of these effects. The PCS must necessarily incorporate corrections for such image appearance variables. This is achieved by using the PCS to render images in two different ways to accommodate different reproduction criteria. The distinctions between the two are fundamentally to do with image state.
As described in Chapter 23, the image state describes the rendering state of the image data. Colour image encodings may be broadly classed into two different image states. Data in a scene-referred image state represent estimates of the colour space coordinates of an original scene (which may be real, modified or computer generated) without reference to an output, i.e. prior to colour rendering. Because such data have not been colour rendered, they are not in a viewable state. Data in a picture-referred image state represent colour space coordinates of a hard-copy or soft-copy image, where the values have been produced via a colour rendering (or re-rendering) transform for a specific real or virtual imaging medium under specified viewing conditions. Picture-referred image states include images that have been scanned from originals, termed original referred, which have characteristics tightly coupled to the characteristics of the input device, and images that have been rendered for a particular output device under specific viewing conditions, which are output referred.
For colorimetric rendering, the PCS describes the colorimetry of the originals and their reproductions, relating the source code values to colorimetric code values without adapting the image appearance to a possible output. Data being rendered into the PCS may be in an input-referred or output-referred state. There will be no change in the image state, but a change in image encoding with chromatic adaptation to D50 if appropriate. Colorimetric rendering from the PCS to an output device again will also change the image encoding but not the image state, i.e. the image appearance will not be optimized to produce a ‘pleasing’ appearance on the output medium.
The alternative use of the PCS, perceptual rendering, involves colour rendering or re-rendering to or from a defined output to provide accurate (or optimal) colour appearance. Colour rendering may be defined as the mapping of scene-referred image data to picture-referred image data, e.g. producing a viewable image from a raw data capture. Colour re-rendering is the mapping of picture-referred image data for one set of output conditions to picture-referred data for another output. When the PCS is used for perceptual rendering, the colorimetry of the original is changed to colorimetric values that better suit the reproduction medium. In this case the colorimetric values in the PCS represent the image colours rendered to a standard reference medium (the ICC PCS perceptual intent reference medium, described in version 4 of the ICC specification and below) under a specified viewing condition (see Figure 26.4). Images rendered into the PCS using perceptual rendering will be rendered to the reference medium. Images rendered from the PCS to an output device using perceptual rendering will assume that the image is already output referred to the standard reference medium and will re-render the data to the required alternative output medium.
To summarize, then, the PCS operating in colorimetric rendering mode will not change the image state, but will simply describe the colorimetry of the image. In the perceptual rendering mode, the image state will be changed and the image colorimetry will be described as rendered to a standard reference medium under particular viewing conditions. The reference medium limits the gamut and dynamic range of images rendered using the perceptual intent, whereas there are no limits on those produced by colorimetric rendering.
The specifics of the rendering method used, in terms of how colours are dealt with in-gamut and out-of-gamut, are defined by the rendering intent, which is selected at the point of conversion between profiles. Four different rendering intents are specified in the ICC.1 version 4 architecture. Each of the rendering intents is defined by a different transformation; the transforms for three of them are included in the profile (they may be separate profiles, or a single profile with several rendering intents) and the fourth is derived from one of the others (see ‘Absolute colorimetric intent’ below). Their purpose is to accommodate the various different objectives of colour reproduction. A typical objective in colour reproduction is image proofing, which is sometimes described as the re-targeting of an image, where the image colours reproduced on one device are to be simulated on another. In this scenario, where colours are being checked, the aim is to provide the closest match possible between source and destination colours. Colorimetric rendering intents are generally most suitable for this type of application. The other major goal in colour reproduction is termed repurposing, where colour that has been rendered to one intermediate or output colour coding is rendered to provide optimal colour reproduction on a different medium. The non-colorimetric rendering intents are intended for re-purposing and modifying the colorimetric values to take into account image appearance variables such as differences between source and output devices, media and viewing conditions.
Based upon a figure from ICC white paper 4 (2004)
Based upon a figure from ICC white paper 4 (2004)
Two colorimetric rendering intents are specified. Both operate on colorimetric values measured under the D50 illuminant, or are chromatically adapted to D50 if an alternative illuminant is used. The colorimetric intents accurately preserve the relationships between in-gamut colours, making them suitable for proofing applications, but this is at the expense of out-of-gamut colours, which are clipped to the gamut boundary for both of the intents (see Figure 26.5). The impact of this will of course depend upon how many of the colours are outside the gamut of the destination space.
The media-relative colorimetric intent (previously the relative colorimetric intent in the version 2 specification) maps the media white point to the PCS white point (i.e. by allocating the media white point to PCS CIELAB values (100,0,0)). This ensures that the white of the image retains its white appearance to the eye on the new medium, effectively taking into account the fact that we visually adapt to the white of the medium we are viewing. All other in-gamut colours (which have already been chromatically adapted to D50) are rescaled relative to the media white point. The rescaling maintains relative differences between values, but results in some change to all colours.
In the case of the ICC absolute colorimetric intent, the white point of the medium is not mapped to the PCS white. Instead, the white point of the illuminant (D50, although the values may be adapted to this if another illuminant was used) is mapped to PCS LAB (100,0,0). The media white is mapped relative to this; therefore, if it had a yellow–white point then it will be reproduced as yellow–white, rather than as visually white. Effectively the image will appear as it would if our eyes did not chromatically adapt to the media white point. Information for calculating the ICC absolute colorimetric values is not included in the profile but derived from the media-relative calculated values. The profile will contain the PCS values of the media white (before allocation to the PCS white, as described above). Once media-relative values have been calculated they can be recalculated relative to the original values of the media white, and this provides absolute colorimetric values. All in-gamut colours, including white, are therefore reproduced exactly.
The perceptual intent is designed to produce images that are pleasing, but not colorimetrically accurate, reproductions of the source image, which may then be optimized for the output. As described in the previous section, using the perceptual intent, the images are rendered to a standard reference medium, i.e. rendering into the PCS will change the image appearance to represent the image as it will appear on the reference medium. Rendering from the PCS using the perceptual intent will take this referenced image appearance as a starting point and change it for the output medium. The standard reference medium may be considered as a subset of the PCS. Since all images are rendered to and from this medium, its gamut limits the amount of the PCS which may be used for perceptual rendering. The medium is selected to provide a gamut which is a useful intermediate between many input and output colour spaces. The intent typically includes adjustments to the tonal range to map the dynamic range of the image from source to output. The gamut is warped and compressed to bring out-of-gamut colours inside the gamut, while preserving relationships between colours. The perceptual intent is useful for general reproduction of natural images, where input and output are significantly different, and where accuracy of colorimetry is not a requirement (i.e. the aim is a pleasing reproduction). If the input and output gamuts are similar (meaning that there are fewer out-of-gamut colours), then media-relative colorimetric intent is an alternative option. The perceptual intent is vendor specific; therefore, the exact details of colour rendering will vary between vendors of profiles and CMMs. Figure 26.6 illustrates the effects of conversion using the perceptual, relative colorimetric and absolute colorimetric rendering intents on a natural image.
The saturation intent is also vendor specific. It preserves the saturation of image values, with possible compromise of hue and lightness. The vividness of pure colours is therefore maintained, so the intent is useful for images containing graphics objects such as charts and diagrams, but less suited to accurate reproduction of natural images.
All four rendering intents operate using transforms on data assumed to be chromatically adapted to D50. The transform used for chromatic adaptation (see Chapter 5) will be included in the profile for the media-relative colorimetric intent only. It is not a specified requirement for the non-colorimetric rendering intents.
In earlier versions of the ICC specification, the four rendering intents described above were mainly associated with printer profiles. The rendering intents assumed for input and display profiles were not identified in the profile and were one of the sources of ambiguity in the version 2 specification (ICC.1:2001-04). This has been addressed in the version 4 specification, where profiles for all four rendering intents may be created for input and display devices as well as printers.
Used for the perceptual intent only, the reference medium is defined as a print on a substrate with a density range of 2.4593 and a white with a neutral reflectance of 89%. The medium is also selected to have a black point at a realistic level, so that its dynamic range may be a suitable intermediate between images of high and low dynamic range. This ensures smooth compression of the tonal range when the source has a higher dynamic range than the destination. If the source has a limited dynamic range, then it can be expanded to that of the reference medium before rendering to output. The reference viewing conditions for the perceptual intent are specified as illuminant D50 at an illumination level of 500 lux for viewing printed media.
Each ICC profile provides the characterization information for the colour transformations necessary to define colour from the encoded image data, defined in an open format. The transformations may be implemented as look-up tables, matrices and/or parametric curves. The available implementations will depend upon the profile type, as defined in the ICC.1 (v. 4) specification. There are several different types of profiles.
It is important to distinguish between the profile types described below and the terms source profile and destination profile, because there can be some confusion. Profiles are described as source and destination profiles temporarily in the context of a specific colour conversion; this is a description of their role in the conversion rather than the profile type. Therefore, a source profile is not necessarily an input profile. If colours are being re-rendered from one output to another, then both source and destination may be output profiles.
‘Oaxaca’ image © iStockphoto.com/Jeff Morse
Device profiles fall into three broad classes: input, display and output profiles. Device profiles contain descriptions of three main variables in the colour reproduction characteristics of the device, colour gamut, dynamic range and tone reproduction, and possibly additional device and vendor-specific information.
Input profiles are used with digital cameras and scanners. Three different types of input profile are specified: these are n-component look-up table (LUT) based, three-component matrix based, or greyscale (see the section on profile processing models below). The three-component matrix based type may only be used with the PCS encoded in CIEXYZ space. For CIELAB PCS encoding the n-component LUT type must be used. Input profiles only require definition of colour transforms in one direction, from the input device space to the PCS space.
Display profiles are used with cathode ray tube (CRT) and liquid crystal display (LCD) displays and data projectors, and are of the same three types, with the same PCS encodings as the input profiles. These are two-way profiles, however, containing transforms from device to PCS and PCS to device, because the display acts as both input and output device.
Output profiles are used with printers and film recorders. Two types are specified: n-component LUTs and greyscale profiles. These are also two-way profiles, as printers act as the destination profile when images are output, but are the source profile if images are being rendered to a different medium, or are being soft-proofed. In this case the printed image appearance is simulated on a display device; therefore, the display profile is the destination profile.
Additionally, there are four other colour processing profile classes defined:
• DeviceLink profiles are a special type of device-to-device profile, which do not use the profile connection space as an intermediate. The transform contained within the profile provides a one-way conversion directly from source to destination colour values, which cannot be reversed. The profile is therefore specific to the two devices. The four different rendering intents may be included as different transforms within the profile. This type of profile is used (although not widely) for very specific (usually high-end) applications, and allows users to add their own adjustments to the profile. The DeviceLink profile effectively implements a form of closed-loop colour management, producing a transformation which may be used for many different images.
• Colour space conversion profiles are used to transform values between the PCS and various colour spaces. The colour spaces may be device independent, such as CIEXYZ and CIELAB, or standard RGB colour spaces, such as Adobe RGB 98 or sRGB (described in Chapter 23). They do not represent device models, although they may be output referred to standard reference media.
• Abstract profiles do not represent a device model, but are used to apply specific effects to the image, for example applying the same image appearance or style to a set of images. Abstract profiles allow the transformation from PCS to PCS, defining CIEXYZ or CIELAB values for both input and output, and creating an LUT between the two to implement the mapping of the particular effect. They are not widely used, but are available in some specialist colour management applications.
• Named colour profiles are used with named colour systems, such as Pantone™ or vendor-specific custom colours. Such profiles are used alongside a device profile, and refer specifically to colours reproduced on that device. They contain a Named colour2 tag for each named colour, which provides a PCS representation of the colour and optionally a device representation. The device representation specifies the exact device coordinates for the named colours on that device, therefore ensuring that the named colours are accurately reproduced. The PCS representation can be used to estimate these values with reasonable accuracy.
Profiles have two functions within the CMS architecture. The first is association with an image (by embedding or assigning the profile), to allow the CMS to interpret the meaning of its colour values, by providing the information necessary to translate the values to a device-independent colour space. When converting between colour spaces (see Figure 26.3), this profile will act as the source profile. They also provide information for the conversion from device-independent values to values in a different colour space (which may be another device-independent colour space, such as a standard RGB colour space, or a device-dependent output colour space). In this case, the profile is behaving as the destination profile.
A profile may be associated with an image by embedding it in the image file. This ensures that the colour data will be correctly interpreted by the destination system when the image is transmitted, regardless of whether the profile is installed on the destination system. The ICC architecture provides specification for the embedding of profiles. All but DeviceLink and Abstract profiles may be embedded. Images with embedded profiles are called tagged images.
An alternative method to associate a profile with an image is by assigning it. The option to assign profiles is included in image-editing applications. Assigning the profile specifies the use of that profile as the source profile when the image is displayed or converted. If an image is brought into an application without an associated profile, then it must be assigned a profile to allow its values to be interpreted.
Assigning and embedding profiles do not themselves involve any conversion of colour values, simply an offered interpretation. They are therefore non-destructive. An image may be reassigned many different profiles with no degradation whatsoever. Although the image values do not change, the image appearance on screen will do to a greater or lesser extent. When an image displayed on screen with a particular associated profile has a different profile assigned to it, the displayed image appearance will change (see Figure 26.7). This is because an alternative interpretation has been applied to the source colour values, giving different PCS values and different output values when the image is converted for display. It is important to note, however, that this conversion for display is also nondestructive. This is because the conversion to display colour space is applied to the data as it is sent to the video card, without affecting the image itself.
Conversion of an image between colour profiles (other than to the display) by its very nature alters the image values, as they are specified by the coordinates of a different colour space. However, the aim of conversion is to reproduce image appearance as accurately as possible within the limitations imposed by the use of different source and destination colour spaces and media. Therefore, although the image values will change, the aim in conversion is for the change in image appearance to be minimal (see Figure 26.8).
An important consideration when converting images between colour spaces is the implication of data loss. Rounding errors occur as a result of conversions between integers and multiple conversions will exacerbate these errors. The PCS is usually defined at a higher precision than the bit depth of the image, which can help to reduce this loss. Working with 16-bit rather than 8-bit images also helps to minimize the colour banding that may result (see Chapter 21). As we have seen, gamut mapping may be achieved by gamut compression, warping or clipping of values, depending on the rendering intent selected. Out-of-gamut colours will be lost in the conversion and are usually impossible to retrieve. Finally, most profiles require some form of interpolation during conversion. This applies to tone reproduction curves stored as sets of sample points (rather than gamma values) in one-dimensional LUTs, which may be linearly interpolated and may be present in all types of profiles. Profiles in which the colour transformation is achieved using LUTs (see the Shaper/multi-functional table processing model below) will require interpolation between the values in the look-up table. The accuracy of interpolation will be increased by increasing the number of entries in the LUT, but this must be balanced against the need to limit the size of the profile.
There are several different models used for processing the colour data within a profile to or from the profile connection space. The type used will depend upon the profile class. The simplest model is the matrix/TRC processing model (TRC is an abbreviation for transfer curve), which uses a combination of tone reproduction curves and a3 × 3 matrix for colour transformation. This model is only used for RGB and single-channel profiles for input and display devices. The model is illustrated in Figure 26.9. When transforming into the PCS, the three colour components are first processed through the corresponding device tonal response curve to convert from non-linear RGB to linear RGB values. This is most commonly achieved using three one-dimensional LUTs, although it may be alternatively specified simply by supplying a gamma value for each colour component. The linearized values are then passed through the matrix transform to provide PCS XYZ values. The matrix values are specified by the colorant tag (see next section). Either the curves or the matrix may incorporate white point adaptation. The transform from PCS to device values, illustrated in Figure 26.9b, is a simple reversal of this process. The inverse tone reproduction curves and the inverse matrix are not included in the profile, but will be calculated from the forward transform by the colour management module. Matrix-based models only support the media-relative colorimetric intent (from which the absolute colorimetric intent may be derived).
Profile types other than input and display profiles rely on the use of LUTs to process colours into and out of the PCS. This is because more complex colour conversions cannot be accurately achieved using the matrix/TRC model. Models based on LUTs are more complex to implement and there can be ambiguity in interpolated values, but they are very flexible, providing reasonable accuracy for many devices. There are four possible models of implementations of LUT models identified in the ICC profile version 4 specification. These vary in complexity. Two of the alternatives for PCS to device, known as ‘LutBtoA type’, are illustrated in Figure 26.10. These models may contain up to five different elements, and any or all of them may be used. As well as the one-dimensional LUTs, which may implement various transfer functions, the models may also include a matrix and a multi-dimensional look-up table, the CLUT, which combines the colour components. The LUTs may be of 8- or 16-bit precision. The contents of the LUTs and the matrices are not defined in the ICC specification and are therefore vendor specific. Because the matrix/TRC processing model can only be used with CIEXYZ as the PCS, all profiles requiring a CIELAB PCS must use LUT models. It should be noted that input and display profiles are not limited to the matrix/TRC processing model, but may also use models based upon LUTs.
The processing model used has implications for the profile size. Profiles containing matrix-based models are small, as they only store numbers for a 3 × 3 matrix and the tone reproduction curves will be represented by a single gamma value or a limited number of sample points, rather than the huge numbers stored for an LUT. Additionally they only support a single rendering intent, and do not require the inverse transform to be included. Profiles based upon LUTs and CLUTs provide values transformed in one direction; a further LUT is required to transform the other way. Output profiles tend to be the largest, requiring tables in both directions for each of the supported rendering intents; the numbers of values in the tables will be defined by the vendor.
ICC profiles are tag-based data files, which have three main components, as shown in Figure 26.11.
The profile header is a fixed length (128 bytes) and provides the information necessary for systems to sort and search for the profile. There are 18 fields included in the header, although they are not all used for some of the profile types. The header includes key information about the profile and where it has come from, such as its size, creator, a unique identification number, and date and time that the file was created. It also includes information about the data it contains, for example the profile class or type, the manufacturer and the model of the device for which it was created, vendor-specific device attributes, data colour space, PCS colour space, and preferred colour management module to be used. A rendering intent may also be specified.
The data describing the colour characteristics of the device and the process of conversion to and from the PCS are contained within a series of tag elements, some of which are requirements of all profiles and some that are specific to the profile class. The tag data are preceded by a tag table, which immediately follows the header and provides an index into the tag data. The tag table specifies the number of tag elements, and for each element a tag keyword description, byte offset from the beginning of the file, and length of data. The tag elements will include relevant matrices and LUT data depending upon the processing model. As well as the tags required for each profile, there are some optional tags, which allow the addition of extra functionality to the profile. Developers may also add proprietary information in a number of private tags, while still providing the profile in a standard and predominantly open format.
All profiles (except the DeviceLink profile) require tags for profile description, copyright, media white point and chromatic adaptation (when an illuminant other than D50 has been used to calculate the measurement data). The main tags required for colour conversion are listed in Table 26.1.
A display profile based on a 3 × 3 matrix model and opened in the ICC profile inspector software is shown in Figure 26.12. On the left-hand side of the window is the profile header information and on the right the tag table showing the list of tag element data contained within the profile. The ‘cprt’, ‘desc’ and ‘wtpt’ terms correspond to the essential copyright, description and white point tags. The rest of the table contains tags relating to the colour transformation. Note the inclusion of a kTRC tag, which is the greyscale tone reproduction curve.
The structure of a display profile will depend upon which profile processing model is being used. The profiling process results in a set of tags for each profile type. These are detailed in Table 26.2 for each model.
The colour processing tags for input and output profiles are listed in Tables 26.3 and 26.4. The information contained within Tables 26.2–26.4 is based on information from ICC.1:2004-10 profile version 4.2.0.0 (see Bibliography). Note that there are also monochrome versions of all the device profiles. All monochrome profiles, regardless of the device, require only the Grey TRC tag in addition to the required tags for description, white point, chromatic adaptation and copyright.
Colour space conversion profiles convert between the PCS and non-device colour spaces; therefore they do not relate to any device. They are based on the shaper/MFT table profile processing model. They have the same basic structure as output profiles, although only the AtoB0 and BtoA0 tags (which are the look-up tables transforming data to and from the PCS using the perceptual rendering intent) are required (as well as the four essential tags required for all profiles). However, the tags for the colour transforms using the other rendering intents may optionally be included. The gamut tag may also be included and performs the same function as it does in output profiles.
TAG NAME |
N-COMPONENT LUT BASED |
Profile description |
• |
AtoB0 |
• |
AtoB1 |
• |
AtoB2 |
• |
BtoA0 |
• |
BtoA1 |
• |
BtoA2 |
• |
Gamut |
• |
Media white point |
• |
Chromatic adaptation |
• |
Copyright |
• |
Although manufacturers supply generic ICC profiles with colour devices, these are created on the basis of the average behaviour of the device model, and therefore do not take into account the variability in behaviour displayed by individual devices. Their usefulness depends upon the stability of the device. Generic inkjet printer profiles, for example, may provide reasonable results, although they will not be as good as those obtained from a custom profile. The majority of devices, however, do display variation from the average behaviour, which may be present when they leave the factory, or colour reproduction may drift over time. Additionally, if any of the settings for the device is changed from the factory calibrated state, then the generic profile will no longer be accurate.
A good colour management workflow will therefore rely on custom profiles for at least some, if not all, of the devices. Custom profiles are generated by sending a target image or set of target colours containing known values, which have been colorimetrically defined in a reference file, to the device and measuring the reproduced values. The reproduced values are then compared to the reference values and a relationship between them is constructed, resulting in the colour transformation matrices or LUTs which are stored as tag elements in the profile. Once the profile is created, it will be accurate for the conditions under which it was created.
Some of the sources of variability in devices, such as drift over time as a result of components ageing, cannot be controlled. Under these circumstances, it will be necessary to recalibrate and re-profile the device to provide a profile updated to the new conditions. Other sources of variability are controlled by the user, in software and hardware settings. If these are changed, a new profile will be required, so the user should endeavour to restrict such changes. A specific source of variability in output devices is the use of different media and colorants. Each media/colorant combination will need its own profile.
A calibrated display with an accurate profile is one of the most fundamental requirements in a colour-managed workflow. As images are adjusted and soft-proofed on displays, it is vital that they provide an accurate representation of the image colours. Generic profiles may produce reasonable results for input and output devices, but display devices exhibit significant variability and therefore require custom profiles and regular calibration.
In general, the process of creating a display profile is combined with calibration by the majority of profiling tools available. There are currently limited numbers of self-calibrating display device models available, in which the calibration software and measuring device is bundled with the monitor. These tend to be expensive and are therefore used mainly in very high-end workflows and scientific applications. More commonly, standalone profiling devices and software are bundled together. The more expensive measuring devices may be instruments which are extended to allow the profiling of several different types of device. However, there is a greater need by the consumer for display profiling instruments than for instruments for profiling input and output devices; therefore, there are several cheaper models for profiling displays only. The profiling instrument may be a colorimeter or a spectrophotometer, and measures values from the surface of the screen produced by the display of a number of known reference colours (see Figure 26.13).
A necessary step prior to calibration is the setting of white and black point luminance to adjust the dynamic range of the display. This step may be performed within the calibration software. The calibration itself involves the adjustment of the display transfer function (gamma) and white point to target values set by the user. These adjustments are applied by the software to the video card colour look-up table (CLUT). The CLUT then alters pixel values ‘on the fly’ as they are sent to the screen, effectively changing the behaviour of the display as if it had these values. The guidelines for gamma and white point vary depending upon the technology, the native white point of the display, the degree of control afforded the user and the output requirements of the imaging workflow. It is important that the monitor is allowed to warm up before calibration. CRT displays require a minimum warm-up of 30 minutes to allow them to stabilize. LCDs are quicker to stabilize. Other display technologies may vary.
Once calibration is complete, the software displays a series of reference colour patches and measurements are taken from the display faceplate using the profiling device. The colours are displayed sequentially, often in random order. The profile is constructed by defining the relationship between the measured values and the reference values. The profile should be saved in the correct location on the operating system. This will normally be identified automatically by the profiling software.
An important consideration when creating and using display profiles is the viewing environment. The background of the desktop should be set to a mid-grey and the screen saver turned off. Ambient illumination levels and coloured objects in the environment which may reflect on the screen can significantly alter image appearance. For the profile to be accurate, viewing conditions at the point of creation and when the profile is used to view an image should be the same. Ambient illumination levels should be relatively subdued, daylight balanced and should not change. Ideally, the room should not be lit by natural light. In some cases, where displays are being set up to a defined standard colour space, such as sRGB, the ideal viewing conditions may be specified (see Chapter 23).
After the profile has been created and saved, it must be associated with the display. This is achieved by selecting it as the default profile for the device in the device properties and may be done automatically by the profiling application, but it is important to check this. Device properties are found in the control panel, and the default profile is set under the colour management tab in the advanced settings.
The main variables affecting the colour reproduction of input devices are the light source used during capture, the sensor spectral sensitivities (see Chapter 23) and software settings. Clearly, because scanners have fixed light sources, the only factors over which the user has any influence are the software settings. For cameras the lighting conditions are a much bigger issue, affecting the uniformity of illumination, the dynamic range and the colour temperature. This leads to a fundamental problem in the use of a camera profile. A good profile will work well for images captured under similar lighting conditions, which may be controlled in a studio, but less well if the lighting conditions change. This subject is covered in more detail in the section below, ‘Using camera profiles’. Nevertheless, the creation of camera profiles is useful and necessary for some applications, hence its inclusion.
The construction of input profiles involves the scanning or digital capture of test targets. The RGB values of the captured images are then compared with original measured XYZ or CIELAB values. There are a number of standard targets used for input profiling and these are supplied with a target description file. The accuracy of the values in the target description file will depend upon the target and how it has been manufactured. More expensive targets are manufactured in smaller batches and individually measured, whereas cheaper ones will provide target measurements based on the average of a batch of targets. The main requirements are therefore suitable targets and profiling software. No hardware is necessary, although more accurate target measurements can be taken by hand using a colorimeter or spectrophotometer, but this is not a requirement for profile creation. Input profiling software may be standalone, or may be bundled with measuring devices and software for profiling other devices.
The most commonly used scanner targets are the standard IT8.7/1 transmission target (see Figure 23.11) and the IT8.7/2 reflection standard targets; the transmissive version is available on various different film stocks. The majority of camera profiling packages use the standard Macbeth colour checker chart, or the Gretag Macbeth colour checker SG, which is shown in Figure 23.11.
The aim when profiling a scanner is to obtain an image of the target under conditions that are repeatable. Scanner software often has a number of automatic settings applied by default. These may include automatic setting of black and white points to optimize the dynamic range of the image, auto colour balance and sharpening. It is important that these are all turned off, so that the response of the scanner without image-specific corrections can be characterized. The scan should be captured at a reasonable resolution and saved in an uncompressed file format, such as TIFF. The profiling software will then prompt for the scanned target and the target description file, from which it will construct the profile. The software should automatically save the profile in the appropriate location (this will vary depending upon operating system). As for displays, it must be selected as the default profile for the scanner in the device properties.
The process of profiling a digital camera differs from creating a scanner profile, because the user must control the camera response in terms of exposure and white balance. The majority of digital single-lens reflex (SLR) and higher-end cameras now allow RAW capture as well as the capture of files that have been colour rendered and compressed (typically as JPEG files). Optional RAW capture is also becoming a feature of some cameras aimed at consumers, both the ‘prosumer’ type and digital compact cameras.
If the camera can only output compressed files, then there is very limited use in creating an input profile. Cameras outputting JPEG files, for example, will in the majority of cases encode the images in a standard sRGB encoding and an input profile will not be appropriate in this case. The reasons for this are described in the next section. Furthermore, lossy compression algorithms are very scene dependent and may result in colour distortions in the image. Therefore, a colour transform created from a captured and compressed test chart is unlikely to be accurate for a compressed image from a natural scene.
In profile creation, therefore, the image should be captured as a RAW file or in an alternative uncompressed format, such as a TIFF file. The profiling software should define required conditions at capture, and further processing. The test target should be evenly illuminated, parallel to the focal plane and should be large within the frame. Whether profiling using TIFF or RAW, a (manual) custom white balance should be performed using a neutral area within the frame, rather than using an automatic white balance. Any other automatically applied controls of contrast or colour should also be turned off, to allow the default behaviour of the camera to be profiled.
The image should be opened from within the profiling software, which will then guide the process of profile generation. Camera profiling software often provides options for various settings, such as how much of the captured image of the target is used to create the profile, or options in the profile itself, to allow certain corrections to be applied. The amount of this type of control is vendor specific.
As with all device profiles the profile is only accurate for the imaging conditions under which the test chart was captured, so images captured under those same conditions can be usefully associated with it. Other imaging conditions will require a different profile. The colour temperature of the illuminant in particular will affect the accuracy of colour reproduction. Therefore, it is good practice to create profiles for both daylight and tungsten, as the most commonly used illuminants.
It is important to note that two different types of ICC profiles may be applied to images captured with a digital camera. These are input profiles, as described above, or colour space profiles for standard RGB colour space encodings, such as sRGB, Adobe RGB 98 or ROMM RGB (see Chapter 23 for descriptions of the characteristics of these colour spaces).
The majority of digital cameras perform colour rendering of the data from the sensor to produce an image which is output referred to a standard reference medium, i.e. to one of the standard colour space encodings. As illustrated in Figure 23.2, the data will be captured in a sensor image state and will then possibly (but not compulsorily) be processed to a scene-referred image state. However, neither sensor-referred nor scene-referred data are viewable as an image. The image is therefore colour rendered before output to an output-referred state. If the image is being captured to a format other than RAW, then colour rendering will be performed automatically by the camera. Images captured and output as RAW files defer the colour rendering until RAW conversion, during which the user selects the required output colour space. Whether the camera is capturing RAW or JPEG, if it is outputting images to a standard colour space, then an input profile created as described in the previous section will not be suitable. In this case the correct ICC profile to be applied to the image is the required colour space profile for which the image is output referred.
Custom camera profiles are only really useful for scene-referred image data. The number of cameras capable of doing this is limited; they are usually medium-format or larger, high-end professional cameras. The Adobe DNG conversion software may also output scene-referred images. In these cases a custom-made profile representing the scene in the PCS may be used. If this type of camera is being used for images where the requirement is for colour matching of the scene, then the colorimetric rendering intent should be used. More general imaging, where the aim is to produce pleasing images rather than accurate colour matches, requires the use of the perceptual rendering intent.
Therefore, in the majority of imaging workflows, it is not necessary to create a custom camera profile and the focus should be on capture using the appropriate colour encoding for the predicted output medium of the image. There is also a brief discussion on this subject in Chapter 25.
The measurement of output profiles requires the use of a dedicated measuring device; this may be a reflection colorimeter or a reflection spectrophotometer. A test target in electronic form is sent to the printer and the printed version is then used to compare to the reference file and generate an LUT-based profile. The target should be printed without colour correction applied by the printer driver, as it is the default behaviour of the printer that is being characterized.
The calibration of printers varies depending upon the type of technology. Calibrating a printing press may involve many different calibration adjustments at different stages, whereas many desktop printers do not have controls to allow calibration of the printer itself. The aim of calibration, as for all devices, is to set the printer conditions to a state that is repeatable. Defining the ink/paper combination is part of the calibration process; different combinations require separate profiles.
Many profiling packages include a CIELAB linearization stage as part of the calibration. This step is necessary because CMYK is perceptually non-linear, meaning that linear increments in CMYK space will be non-linear in CIELAB. This is illustrated in Figure 26.14, which shows the IT8/7.3 CMYK test target. Consecutive target patches have CMYK values changing by linear amounts, but these values produce non-linear increments in their corresponding CIELAB values.
To correct for this, a pre-profiling linearization chart is printed (an example is shown in Figure 26.15), which contains linear CMYK scales. These are measured and the profiling software reallocates the CMYK values to linearly spaced CIELAB values. Although these new CMYK values are non linear in CMYK space, they are linear in CIELAB space. The profiling test target is then printed with these new adjusted CMYK values replacing the original ones. Because the resulting LUT is generated from values at regular intervals in CIELAB, the required interpolations to obtain intermediate values will be more accurate, and the profile more uniform.
Once linearization has been performed, the profiling target must be opened and printed. There are a wide range of printer targets available. Although the IT8.7/3 is generally supported, it has a number of shortcomings, in particular when profiling desktop printers, therefore various alternatives have superseded it as recommended by vendors. As an example, the ECI 2002 CMYK chart, illustrated in Figure 26.16, contains more patches, to improve the representation of device behaviour. Both RGB and CMYK charts are available for output devices. RGB charts are used for output devices that use only three channels to control colour, such as the Fuji Pictrography. Many inkjet printers should also be considered as RGB devices. Because of the move towards RGB workflow (see later in this chapter), images are sent to these printers in an RGB colour space and the conversion to CMYK is performed by the printer driver. Dye-sublimation printers may also function as RGB devices. It is therefore important to check which type of test chart is suitable for the particular printing technology and device model before profiling.
The number of patches required for measurement varies, depending upon the profiling package, but a minimum of a few hundred is usually required. It should be noted that the number of measurements taken does not correspond to the number of entries in the resulting table. The values measured are interpolated down to provide a more manageable set of data in the LUT (and will then be interpolated up to provide colour values when the profile is used). From printer to printer the number necessary to obtain a good profile will depend upon how ‘well behaved’ it is – in other words, how close it is to being linear and grey balanced (where values from neutral measurement patches are reproduced as neutral without a colour cast) in its default behaviour. A printer that exhibits colour casts or significant non-linearity will require more patches to obtain an accurate profile.
© X-Rite™ (www.xritephoto.com)
© European Color Initiative (ECI, www.eci.org)
Often, profiling software will allow the option of printing from within the application. The alternative is to save the chart and print it from an external application such as Adobe Photoshop. If Photoshop is used, then it is important that a profile is not assigned to the image when it is opened. The colour management policies in the Photoshop colour settings should be set to ‘ask when opening’ for images with missing profiles. When the image is opened, a missing profile window will open up. This should be set to ‘Leave as is (don’t color manage)’. When the chart is printed, the source space should be set to ‘document’ and the Print space to ‘same as source’. This process ensures that the chart is unchanged.
It is important to ensure that the print has dried and that the profiling device has been calibrated before measurement. The calibration involves setting the zero point by measuring a white calibration tile, which will be included with the device. The profiling package will usually indicate the order in which patches should be read, to ensure that the measured values are matched to the corresponding reference values.
Once the measurements have been taken the software will generate the profile; however, there are a number of settings that the user may be prompted to select before the profile is created. Some packages allow the user to choose a profile quality, which is based upon the number of entries in the resulting LUT. The need for high quality must be balanced against file size requirements. Another commonly encountered option is black generation setting. This involves defining grey component replacement (GCR) and under colour removal (UCR). In simple terms, these processes specify the combination and amounts of the different colorants used to create colours. For example, colours may be created as a combination of amounts of only cyan, magenta and yellow inks. However, it is also possible to remove a certain amount of the CMY inks and replace them with an amount of black ink that produces the same tone as the three inks combined, the remaining amounts of CMY inks producing the actual colour. In other words, the black ink is used to contribute to the lightness of the colour, while the amounts of the other three inks define its hue and saturation.
The details for generating profiles for the many different types of printing technology available are too numerous to be covered in this text, but may be found in some of the references at the end of the chapter. The ICC website is also an extremely useful source of information.
There are various factors that require consideration in designing colour management workflow. The devices used, the predicted output media, the need for flexibility, the purpose of the image as it moves through the imaging chain, and the ultimate reproduction aims will all define when and how an image will be converted between colour spaces. Guiding principles for practical implementation of colour-managed workflow are dealt with in Chapter 25, and details of image states, colour encoding methods and standard colour spaces are covered in Chapter 23. This section deals with some of the conceptual issues governing the process and provides some examples of workflows for different imaging tasks.
As described earlier, colour rendering is the mapping of image data from a scene to output-referred image data. The colour rendering process begins with captured values from an original scene. The values may be scene referred, for example if they have been transformed to the RIMM RGB colour encoding (see Chapter 23), or in a sensor state. The colour rendering transform performs several functions: the mapping of the dynamic range and gamut of the image to those of the output medium, appearance adaptation to take into account different viewing conditions at input and output, and adjustments to colours to accommodate human observer preferences.
There are two commonly implemented approaches to colour rendering: rendering to an intermediate reproduction description or deferred colour rendering. In the first approach, the input image is rendered to an intermediate standardized real or virtual reference medium and, during conversion to output, it is re-rendered from the intermediate to the output medium. Deferred colour rendering encodes the source data (which may be scene-referred colorimetry or colour filter array (CFA) raw data, and therefore device dependent) with input metadata, and defers color rendering until output. When the output medium is defined, the data is rendered directly from source to output. If the data is CFA raw data, the data may be demosaiced to become raw RGB data, before rendering, or the demosaicing process may be combined with colour rendering.
The ICC rendering intents support both approaches; the perceptual intent, which uses a reference print medium, is a form of intermediate reproduction description. The colorimetric intents enable deferred colour rendering.
As described in the section on using camera profiles, the intermediate reproduction description dominates for digital capture, with most cameras encoding images directly into a standard output-referred colour space such as sRGB. However, the use of camera RAW capture is becoming more widespread, and is supported by the majority of digital SLRs and some compacts. RAW capture may be considered as a form of deferred colour rendering, in which the required colour rendering is decided by the user in RAW conversion software after capture. It should be noted that the majority of RAW conversion software renders the image to a standard output-referred colour space, and the image will then be re-rendered to an alternative real output if required.
An important issue in determining workflow concerns the point at which conversion to the final output colour space will occur. It is relevant for workflow using all types of colour space, but has a particular influence if the output is to a CMYK colour space. In nearly all cases, the input will be captured in an RGB colour space; therefore, the conversion may well be from a larger to a smaller gamut, and the gamuts may have significant areas of mismatch.
In an early-binding scenario, the conversion occurs as early as possible in the workflow. Early-binding workflows were traditionally used for the delivery of CMYK files, although the concept applies equally when the output is in an RGB colour space. Because the gamut will be limited early on to that of the output, there will not be problems with out-of-gamut colours further down the imaging chain. Image adjustments will be performed within the constraints of the gamut and because all users involved in the workflow work in the same colour space, there will be no ambiguity in terms of how colours should be interpreted. However, the simplicity of the approach means that it is inflexible. All stages of the imaging chain will be optimized for the specified output, but will not be optimum for other outputs, should they be required. Any out-of-gamut colours in the original will effectively be lost early on and cannot be retrieved.
A late-binding workflow (see Figure 26.17) delays the conversion for as long as possible, maintaining the original gamut. This is therefore much more flexible if multiple outputs are required, or the output is unknown, allowing the image to be repurposed for outputs with very different characteristics. This approach can be complex, however, and there is the need for the correct use of colour management by all involved in the workflow. Because the output is not explicit, there may be problems if the correct profiles are not used or are ignored at some stage in the chain. Additionally, without the constraints of a known output gamut earlier on in the process, image adjustments may result in more out-of-gamut colours when the image is finally converted for output.
The definition of an RGB workflow is one where the original RGB encoding is retained and exchanged. The encoding may be input referred if an input profile is being used, or an output-referred colour encoding such as sRGB if an intermediate reproduction description is used for colour rendering. The former case is a late-binding workflow as conversion happens at output. The latter case is also late binding, although in the special case of the output-referred colour encoding being the same as the required output, no conversion is necessary.
A CMYK workflow is one where a CMYK encoding is retained and exchanged. The CMYK encoding may be an intermediate reproduction description from an RGB capture, which may be viewed as an early-binding work-flow. Alternatively it may originate from a CMYK capture (some drum scanners scan images to CMYK values, although the sensors are RGB). This is more typical of early closed-loop systems which scanned for a particular output, but may also be a late-binding workflow, if it is necessary to convert to a different CMYK space.
The workflow illustrated in Figure 26.17 is an RGB workflow, where the image is retained with the scanner profile throughout the imaging chain. Inkjet printers, as described previously, may be considered to be RGB devices in most cases, as they accept RGB images and the conversion to the printer CMYK colour space is performed by the printer driver at output.
An alternative to early or late binding is to use an intermediate colour space, between the input and output colour spaces (see Figure 26.18). This is not to be confused with the intermediate reproduction description, described above, which refers specifically to colour rendering, although the working space may be the same as that of the intermediate reproduction description. The image is converted to the intermediate space early in the workflow (unless it has been encoded at capture into the same colour space), and all editing is performed in this space before the image is converted to output.
The requirements of a useful intermediate space are that it is perceptually uniform, grey balanced and has a gamut large enough to be suitable for conversion to any likely output gamuts. CIELAB may be used, but it is also not particularly intuitive for image editing. More commonly, device-independent RGB colour spaces (for example, sRGB or Adobe RGB 98) may be used, which are perceptually uniform and grey balanced, but have more limited gamuts. The choice of particular intermediate space will depend mainly upon anticipated output gamuts. This subject is covered in Chapter 25.
The intermediate colour space is termed the working space in many image-editing applications. As well as being an intermediate between input and output profiles, it has an additional function as a default colour space for images brought into the workflow (from another imaging chain, for example) without profiles. In this case, the image may be initially assigned the working space to be viewed. The working space profile acts as the source profile in the conversion to display and the image may then be assigned an alternative working space if more appropriate.
The process of proofing an image is a re-targeting operation, as described in the earlier section on rendering intents. The aim of proofing is to check the final colour reproduction to ensure that it has the desired colour appearance. A proofer is a device used to simulate the appearance of an image on another device. Traditional proofing involves printing a simulation of the final print appearance on a proofing printer, whereas soft-proofing simulates the print appearance on a display. The basic process is the same. The relevant PCS-to-device transform is first used to convert the image to the output colour space. This conversion may use the perceptual intent or the media-relative colorimetric intent depending upon the colour reproduction goal. The result is then converted back to the PCS, before being converted to the proofer (printer or display) using the proofer profile and one of the colori-metric intents. The choice of colorimetric intent is important if the media white points for the proofer and the output device are very different. In this case the media-relative colorimetric intent will produce an image in which the white point is adapted, but will be less accurate for the majority of colours than the absolute colorimetric intent. The absolute colorimetric intent may produce a colour cast in the image whites as a result of simulating the different white point. Figure 26.19 illustrates soft-proofing workflow.
Fraser, B., Murphy, C., Bunting, F., 2005. Real World Color Management, second ed. Peachpit Press, Berkeley, CA, USA.
Green, P., MacDonald, L., 2002. Colour Engineering: Achieving Device Independent Colour. Wiley, Chichester, UK.
Sharma, A., 2004. Understanding Color Management. Delmar Learning, Thomson Learning, New York, USA.
Sharma, G. (Ed.), 2003. Color Imaging Handbook. CRC Press LLC, New York.
Wallner, D. Building ICC Profiles – The Mechanics and Engineering. Available to download from www.color.org
Standards and specifications
International Color Consortium, 2001. Specification ICC.1:2001-04. File Format for Color Profiles. Available online from the International Color Consortium website. www.color.org.
International Color Consortium 2004. Specification ICC.1:2004-10 (profile version 4.2.0.0). Image Technology Colour Management – architecture, profile format, and data structure available online from the International Color Consortium website, www.color.org
International Standards Organization 2004. ISO 22028-1:2004. Photography and Graphic Technology – Extended Colour Encodings for Digital Image Storage, Manipulation and Interchange, Part 1: Architecture and Requirements. Available online from www.ISO.org
White papers
ICC white paper 4 2004. Color Management – Conceptual Overview, Evolution, Structure and Color Rendering Options.
ICC white paper 6 2004. ICC Version 2 and Version 4 Display Profile Differences.
ICC white paper 7 2004. The Role of ICC Profiles in a Colour Reproduction System.
ICC white paper 9 2005. Common Color Management Workflows and Rendering Intent Usage.
ICC white paper 17 2005. Using ICC Profiles with Digital Camera Images.
ICC white paper 20 2005. Digital Photography Color Management Basics.
ICC white paper 23 2008. RGB Color Managed Workflow Example.
All the above are available to download from www.color.org
18.188.243.211