Reference Input/Output Medium Metric RGB Color Encoding (RIMM/ROMM RGB)
نویسندگان
چکیده
A new color encoding specification known as Reference Output Medium Metric RGB (ROMM RGB) is defined. This color encoding is intended to be used for storing, interchanging and manipulating images that exist in a rendered image state without imposing the gamut limitations normally associated with device-specific color spaces. ROMM RGB was designed to provide a large enough color gamut to encompass most common output devices, while simultaneously satisfying a number of other important criteria. It is defined in a way that is tightly linked to the ICC profile connection space (PCS) and is suitable for use as an Adobe PhotoshopTM working color space. A companion color encoding specification, known as Reference Input Medium Metric RGB (RIMM RGB), is also defined. This encoding can be used to represent images in an unrendered scene image state. Introduction Digital images are often encoded in terms of color spaces that are tied directly to the characteristics of actual input or output devices. Common examples of such color spaces are scanner RGB, video RGB, and CMYK. However, such spaces generally are device-dependent in that their values can be associated with specific colorimetric values only in the context of the characteristics of the particular device on which the image is displayed or captured. On the other hand, device-independent color spaces generally are meant to represent colorimetric values directly. These color spaces most often are based on the system of colorimetry developed by the Commission International de l’Eclairage (CIE). Examples of such color spaces include CIE XYZ and CIELAB. It should be noted that the specification of a color value in a device-independent (or device-dependent) color space does not fully specify color appearance unless the viewing conditions also are known. For example, two patches with identical colorimetric values can have very different color appearance, depending on the conditions under which they are viewed. The fact that images exist in many different color spaces significantly complicates the development of software applications that use and manipulate images. For example, an image-processing algorithm that works in one color space might not have the expected behavior when used in another color space. This has led many people to advocate the use of a standard color encoding (or perhaps a small number of standard color encodings) for the storage, interchange and manipulation of digital images. Often, these proposals have involved specifying a particular output-device-dependent color space to be a “standard.” Examples of such color spaces include SWOP CMYK and sRGB. One significant problem with specifying an outputdevice-dependent color space as the standard is that typically it will limit the encodable color gamut and luminance dynamic range of images according to the capabilities of a specific output device. For example, hardcopy media and CRT displays typically have very different color gamuts. Therefore, using sRGB (which is based on a particular CRT model) as a standard color encoding would necessarily involve clipping many colors that could have been produced on a given hardcopy medium. The International Color Consortium (ICC) has defined a Profile Connection Space (PCS) that comprises a deviceindependent color encoding specification that can be used to explicitly specify the color of an image with respect to a reference viewing environment. Device profiles can be used in a color management system to relate the device-dependent code values of input images to the corresponding color values in the PCS, and from there to the device-dependent output color values appropriate for a specific output device. It could be argued that the PCS could serve as the standard color encoding we are looking for. However, it was never intended that the PCS be used to directly store or manipulate images. Rather, it was simply intended to be a color space where profiles could be joined to form complete input-tooutput color transforms. Neither the CIELAB nor the XYZ color encodings supported for the PCS is particularly well suited for many common kinds of image manipulations. It is therefore desirable to define a standard large-gamut color encoding that can be used for storing, interchanging and manipulating color images. This paper will describe a new color space known as Reference Output Medium Metric RGB (ROMM RGB). This color encoding is tightly coupled to the ICC PCS and is intended to be used for encoding rendered output images in a device-independent fashion. Rendered output images should be distinguished from images that are intended to be an encoding of the colors of an original scene. It is well known that the colorimetry of a pleasing rendered image does not match the colorimetry of the corresponding scene. Among other things, the tone/color reproduction process that “renders” the colors of a scene to the desired colors of the rendered image must compensate for differences between the scene and rendered image viewing conditions. For example, rendered images generally are viewed at luminance levels much lower than those of typical outdoor scenes. As a consequence, an increase in the overall contrast of the rendered image usually is required in order to compensate for perceived losses in reproduced luminance and chrominance. Additional contrast increases in the shadow regions of the image also are needed to compensate for viewing flare associated with renderedimage viewing conditions. In addition, psychological factors such as color memory and color preference must be considered in image rendering. For example, observers generally remember colors as being of higher purity, and they typically prefer skies and grass to be more colorful than they were in the original scene. The tone/color reproduction aims of well-designed imaging systems are designed to account for such factors. Finally, the tone/color reproduction process also must account for the fact that the dynamic range of a rendered image usually is substantially less than that of an original scene. It is therefore necessary to discard and/or compress some of the highlight and shadow information of the scene to fit within the dynamic range of the rendered image. Due to these and other factors, color encodings such as ROMM RGB that are intended for encoding rendered output images are inappropriate for use in encoding original-scene images. Rather, a color encoding that is directly related to the color of an original scene should be used. Accordingly, a companion to the ROMM RGB color encoding specification, known as Reference Input Medium Metric (RIMM RGB), has also been defined. This encoding is intended to represent original scene color appearance. The RIMM RGB color encoding not only provides extra dynamic range necessary for the encoding of scene information, it also provides a mechanism for clearly distinguishing whether or not an image has been rendered. Selection of Color Space It is desirable that the RIMM RGB and ROMM RGB color encoding specifications be defined such that they are as similar as possible to one another. This simplifies the development of image-manipulation algorithms across the two color encodings. It also simplifies the rendering process in which a rendered ROMM RGB image is created from an original scene image encoded in RIMM RGB. This is best achieved by basing the two encodings on the same color space. The criteria that were used to select this color space include the following: • Direct relationship to the color appearance of the scene/image • Color gamut large enough to encompass most realworld surface colors • Efficient encoding of the color information to minimize quantization artifacts • Simple transformation to/from ICC PCS • Simple transformation to/from video RGB (e.g., sRGB) • Well-suited for application of common image manipulations such as tonescale modifications, colorbalance adjustments, sharpening, etc. • Compatible with established imaging workflows An additive RGB color space with an appropriately selected set of “big RGB” primaries is ideal for satisfying all of these criteria. When images are encoded using any such set of primaries, there is a direct and simple relationship to scene/image colorimetry because the primaries are linear transformations of the CIE XYZ primaries. Big RGB color spaces have the additional advantage that simple LUTmatrix-LUT transformation can be used to convert to/from additive color spaces such as PCS XYZ, video RGB (sRGB) and digital camera RGB. Two of the criteria applied that affect the selection of RGB primaries are somewhat conflicting. First, their chromaticities should define a color gamut sufficiently large to encompass colors likely to be found in real scenes/images. At the same time, their use should result in efficient digital encodings that minimize quantization errors. Increasing the gamut can only be achieved by trading off against correspondingly larger quantization errors. If the primaries are chosen to include the maximum possible chromaticity gamut (i.e., the entire area within the spectrum locus), a significant fraction of the color space would correspond to imaginary colors located outside that region. Therefore, in any encoding using such a color space, there would be “wasted” code values that would never be used in practice. This would lead to larger quantization errors in the usable part of the color space than would be obtained with different primaries defining a smaller chromaticity gamut. It is therefore desirable to choose primaries with a gamut that is “big enough” but not “too big.” Fig. 1. Comparison of primaries in x-y chromaticity coordinates Figure 1 shows the primaries selected for RIMM/ ROMM RGB. Clearly, these primaries encompass the gamut of real world surface colors, without devoting a lot of space to non-realizable colors outside the spectrum locus. Also shown for comparison are the sRGB primaries. It can be seen that the sRGB color gamut is inadequate to cover significant portions of the real world surface color gamut. In particular, it misses many important saturated colors near the yellow-to-red boundary of the spectrum locus. The default Photoshop Wide Gamut RGB gamut, which is also shown on the figure, misses some of these colors as well. One of the important requirements for RIMM/ ROMM RGB is that they be well suited for application of common image manipulations. Many types of common image manipulations include the step of applying non-linear transformations to each of the channels of an RGB image (e.g., tonescale modifications, color balance adjustments, etc.). The process of forming a rendered image from a scene is one important application of this type. One way to accomplish the rendering operation is by means of applying various nonlinear transforms to the individual channels of an RGB image. These transforms can result in several desirable color/tone reproduction modifications, including: • Increasing luminance and color contrast in mid-tones and compressing contrast of highlights and shadows. • Increasing the chroma of in-gamut colors. • Gamut mapping out-of-gamut colors in a simple but visually pleasing way. If an input scene is represented using the RIMM RGB color encoding, the result of applying such rendering transforms will be a rendered image in the ROMM RGB color encoding. The nonlinear transforms used in rendering will, in general, modify the relative ratios of the red, green and blue channel data. This can lead to hue shifts, particularly for highly saturated colors. Hue shifts are particularly problematic when they occur in a natural saturation gradient within an image. Such gradients tend to occur when rounded surfaces are illuminated by a moderately directional light source. In such situations, chroma increases with distance from the specular highlight and then decreases again as the shadows deepen. There is a tradeoff between the color gamut of the primaries, quantization artifacts, and the extent of the hue shifts that occur during rendering. If the primaries are moved out so as to increase the color gamut, quantization artifacts will increase and the hue shifts introduced during the application of a nonlinear transformation will decrease. This results from the fact that the RGB values will be clustered over a smaller range, thereby reducing the impact of nonlinear transformations. If the color gamut is decreased by moving the primaries closer together, quantization artifacts diminish but hue shifts are generally larger and color gamut is sacrificed. During the selection of the RIMM/ROMM RGB primaries, an extensive optimization process was used to determine the best overall solution. Such hue shifts can never be completely eliminated, so the objective when optimizing the location of the primaries was to eliminate or minimize objectionable hue shifts at the expense of less noticeable or less likely hue shifts. Hue shifts for a particular color can be eliminated when the color lies on one of the straight lines passing through the primaries and the white point on a chromaticity diagram. Hue shifts introduced by the application of nonlinear transformations were examined during the process of selecting the RIMM/ROMM RGB primaries by studying a chroma series for eight color patches from the Macbeth Color CheckerTM. These patches included red, yellow, green, cyan, blue, magenta, light flesh and dark flesh. Hue shifts in flesh tones and yellows, particularly in the direction of green, are considered to be the most objectionable. These hue shifts are most strongly affected by the location of the blue primary. As a consequence, the location of the blue primary is constrained by the need to minimize undesirable hue shifts and maximize the color gamut of the RIMM/ROMM RGB color encoding. Other colors that were considered to be particularly important during the optimization process were blues and reds. The hue shifts associated with the selected RIMM/ROMM RGB primaries are shown in Fig. 2. This plot shows a series of line segments connecting the a*, b* values before and after a nonlinear tonescale was applied to a chroma series in each of the eight color directions. It can be seen that small hue shifts are introduced for the most saturated colors in the blue and cyan directions, but that the hue shifts elsewhere are quite small. The resulting hue shifts associated with the primaries of the default Adobe Photoshop Wide Gamut RGB color space are shown in Fig. 3. It can be seen that the hue shifts for these primaries are significantly larger than those of the RIMM/ROMM RGB primaries in almost every color region. Finally, a basic requirement for any commercially useful color encoding is that it be compatible with typical commercial imaging workflows. In many cases, Adobe Photoshop software is an important component in such imaging chains. Conveniently, the latest version of Adobe Photoshop has incorporated the concept of a “working color space,” which is different from the monitor preview color space. This is very consistent with the notion of storing/manipulating images in a “big RGB” color space. Adobe has placed a constraint on the definition of valid working color spaces that requires the primaries to have all positive x-y-z chromaticity values. This implies that the primaries must be inside the triangle defined by the points (0,0), (1,0) and (0,1) on Fig. 1. This condition is satisfied for the ROMM RGB primaries. (Since Photoshop operates within a rendered-image paradigm, it is inappropriate to use RIMM RGB as a Photoshop working color space.) Definition of ROMM RGB In addition to defining a color space, it is also necessary to specify an intended viewing environment in order to unambiguously define a color-appearance encoding. One of the requirements for ROMM RGB is that it be tightly coupled to the ICC Profile Connection Space (PCS). Color values in the PCS represent the CIE colorimetry of an idealized reference medium that will produce the desired color appearance when viewed in a reference viewing environment. Eastman Kodak Company has proposed a specific encoding reference viewing environment that Fig. 2. Hue shifts for the RIMM/ROMM RGB color encoding resulting from a typical nonlinear rendering transform. Fig. 3. Hue shifts for default Adobe Photoshop Wide Gamut RGB color space resulting from a typical nonlinear rendering transform. can be used to unambiguously define the PCS for the purposes of producing ICC profiles. This reproduction viewing environment is defined to have the following characteristics: • Luminance level is in the range of 160-640 cd/m2. • Viewing surround is average. • There is 0.5-1.0% viewing flare. • The adaptive white point is specified by the chromaticity values for CIE Standard Illuminant D50 (x = 0.3457, y = 0.3585). • The image color values are assumed to be encoded using flareless (or flare corrected) colorimetric measurements based on the CIE 1931 Standard Colorimetric Observer. The Reference Output Medium Metric RGB (ROMM RGB) color encoding is defined in the context of this viewing environment by the color values associated with a hypothetical additive color device having the following characteristics: • Reference primaries defined by the CIE chromaticities given in Table 1. • Equal amounts of the reference primaries produce a neutral with the chromaticity of D50. • The capability of producing a black with L* = 0. • No cross-talk among the color channels (i.e., red output is affected only by red input, green output is affected only by green input, and blue output is affected only by blue input). Table 1. Primaries/white point for Reference Output Medium. Color x y Red 0.7347 0.2653 Green 0.1596 0.8404 Blue 0.0366 0.0001 White 0.3457 0.3585 Additionally, a quantization scheme must be specified to store the ROMM RGB values in an integer form. A simple gamma function nonlinearity incorporating a slope limit is defined for this purpose supporting 8-bit/channel, 12bit/channel, and 16-bit/channel quantization schemes. The conversion of the PCS XYZ tristimulus values to ROMM RGB values can be performed by a matrix operation, followed by a set of 1-D functions. This is equivalent to the operations associated with a basic CRT profile. This means that ROMM RGB can be used conveniently in a system employing ICC profiles using an appropriately designed monitor profile. ROMM RGB Conversion Matrix Given the defined primaries shown in Table 1, the following matrix can be derived to compute the linear ROMM RGB values from the PCS rendered image tristimulus values:
منابع مشابه
Retaining Color Fidelity in Photo CD Image Migration
The Photo CD system, originally aimed at consumers, has also been used by cultural institutions to store digital images from scanned photographic film, prints, and documents. With improvements in technology and anticipated adoption of new digital image standards, e.g., JPEG 2000, retention of image fidelity during migration of digital collections is often a concern. In a previous report (Archiv...
متن کاملFuzzy Set Theoretical Analysis of Human Membership Values on the Color Triangle - Mapping from the Color Triangle (Antecedent) via the Color Triangle (Consequent) to the Tone Triangle
The present study considers a fuzzy color system in which three membership functions are constructed on the RGB color triangle. This system can process a fuzzy input (as the membership values of subjects) to an RGB system and output the center of gravity of three weights associated with respective grades. Three membership functions are applied to the RGB color triangle relationship. By treating...
متن کاملChromatic adaptation performance of different RGB sensors
Chromatic adaptation transforms are used in imaging systems to map image appearance to colorimetry under different illumination sources. In this paper, the performance of different chromatic adaptation transforms (CAT) is compared with the performance of transforms based on RGB primaries that have been investigated in relation to standard color spaces for digital still camera characterization a...
متن کاملWhite-point independent RGB Primaries for Color Image Encoding
We present a method to calculate sets of RGB primaries that are white-point independent and have suitable gamut properties when evaluated with regards to surface colors. These primaries can be used as a basis for defining an output-referred color encoding intended for print applications. The resulting RGB sensors are sharp, i.e. decorrelated, emphasizing again that for imaging applications, the...
متن کاملEvaluating the Use of the Perceptual Reference Medium Gamut in ICC PrintingWorkflows
The International Color Consortium (ICC) specifies a standard profile format and associated color management architecture. In the version 4 of its specifications, it adopted a Perceptual Reference Medium and an associated gamut (PRMG) for perceptual workflows. The goals of this change were improved interoperability and more pleasing results. In this paper we start evaluating the effect of using...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000