IS&T©s 2000 PICS Conference IS&T©s 2000 PICS Conference Copyright 2000, IS&T

sRGB Calibration of Standard Color Displays

Henry D’Souza, Alp Bayramoglu and William Nott Compaq Computer Corporation Houston, Texas USA

Abstract the next. We mesaured the coordinates of A comprehensive and practical method is presented for seven monitors of different manufacturers in our lab. The ensuring that standard color displays deliver optimal per- results are shown in Figure 1. Visually, there were some ceptual color matching capability within sRGB standards. perceivable differences between these monitors. These dif- Display specific data is measured on the assembly line and ferences become much more startling when comparing be- stored in EDID data space within each unit. When the dis- tween display technologies such as LCD (Liquid Crystal play is connected to a computer, a software utility retrieves Display) vs CRT (Cathode Ray Tube) monitors. Figure 2 the data and designs an optimizing filter to correct R, G, shows the difference between a Compaq Flat Panel Moni- B and points at all intensity levels for best percep- tor and a Compaq CRT monitor. tual match to sRGB standards. The basic philosophy and Computer Graphics Systems render image bitmaps to method is presented, empirical data is analyzed and feasi- the monitor screen. These bitmaps consist of RGB triplets bility is evaluated. that directly relate to specific . This is because the image bitmap is generated under the assumption that the display device will conform to the standard sRGB color 1. Introduction space [2]. Since we have evidence that all monitors do not conform exactly to the sRGB specification, we are inter- In computer systems, the digital representation of color is ested in a method for processing the original bitmap given in terms of variable mixes of three primary additive colors: valid data regarding the actual primary color coordinates of , and (R, G, B). The human visual system the specific monitor that we are working with. A method predictably perceives the close juxtaposition of the three is developed below to generate a filter that will correct for basic colors as one resultant color. This illusion is the ba- the deviations from the sRGB specification and essentially sis for color image processing. Using a-priori knowledge calibrate the monitor to display the best approximation of of the human visual system, it is possible to manipulate the the color that an sRGB monitor would display, given the intensity mix of the three basic colors to cause various de- original unfiltered bitmap. sired color shades to be perceived [1]. In fact, a wide range of colors may be perceived in this manner. For a high fidelity color system, it is of fundamental 2. Altering the of a display bitmap importance that the actual shade of color produced by any mix of the three primary colors be predictable. For this to The x,y CIE (Commission International d’Eclairage) chro- occur, it is necessary to have precise proportional control maticity coordinates of the primary colors of a display rep- of the intermediate intensities of each component primary resent the apices of a triangle that bounds the range of col- color. It is also necessary to know, with reasonable ac- ors that may be rendered by the display [3]. Any partic- curacy, the actual shade of the basic colors. Currently in ular color rendered corresponds to one and only one or- computer systems, this fidelity is lacking due to imprecise dered triplet of primary color intensity values (R,G,B). Im- proportional brightness control of basic colors as well as ages consisting of an array of these ordered triplets (image no control/knowledge of the actual shading of the primary bitmaps) are developed based upon the assumption that the colors. primary monitor R,G,B colors have certain CIE color co- This paper addresses the second issue viz. variations ordinates. This assumption is (or should be) related to a and deviations in the color coordinates of the primary mon- standard . The sRGB standard, among other itor colors. The primary color coordinates can vary from things, specifies the coordinates for the primary colors of one monitor to the next from the same manufacturer. This the monitor [2]. If the monitor rendering the image bitmap variation may also be expected from one manufacturer to does not conform to the sRGB standard for these colors,

1031 IS&T©s 2000 PICS Conference IS&T©s 2000 PICS Conference Copyright 2000, IS&T

then any and all colors rendered will likely be perceived by computing the Y weighted average for u and v and

incorrectly. by summing the Y values to get the resultant color. If

[Y ; Ù; Ú ]Ê Y Ù Ú

Ö Ö

The goal here is to develop a method of ”filtering” the is the intensity Ö with coordinates and of

Y ; Ù; Ú ]B

image bitmap such that the output of the filter is a new the red component of the display and likewise [

Y ; Ù; Ú ]G image bitmap with modified (R,G,B) triplets that take into and [ correspond to the blue and green compo- consideration the actual color coordinates of the particular nents respectively, then mixing these three will yield an monitor in comparison with the color coordinates assumed analytically predictable resultant color with intensity given in the creation of the image bitmap. In this particular treat- by

ment, we shall assume that the original color coordinates

= Y · Y · Y

used in the creation of the original image bitmap lie within Y

g b Ö (7) the color gamut of the monitor. Below, we will discuss how the issue may be optimally resolved if the original color and coordinates given by

coordinates extend beyond the color gamut of the monitor.

Y Ù · Y Ù · Y Ù

Ö Ö g g b b =

In order to develop a color correcting filter, it is nec- Ù (8)

Y · Y · Y

g b essary to have a deterministic method of mapping from Ö

R,G,B bitmap data directly to the perceived color coor-

Y Ú · Y Ú · Y Ú

Ö Ö g g b b =

dinates. An experiment was conducted to determine if it Ú (9)

Y · Y · Y

g b is possible to directly compute the perceived color coor- Ö dinates resulting from any mix of known primaries. The So, to shift the display gamut from the triangle defined coordinates of each primary were mesaured. Then 25%, by

50% and 75% of each of the other primaries were added

Y; Ù; Ú]Ê ;[Y ; Ù; Ú ]G;[Y ; Ù; Ú ]B to the first primary, together and separately, and the coor- [ (10) dinates measured each time. The idea was to determine if the coordinates of the colors resulting from the mixed pri- to the triangle defined by

maries would align graphically so as to suggest a simple

~ ~ ~

Y;Ù;~ Ú~]Ê ;[Y;Ù;~ Ú~]G;[Y;Ù;~ Ú~]B deterministic method of color prediction. See Figure 3 and [ (11) Figure 4 for the results. It was found that it is not possi-

(with the requirement that the ~ triangle is contained ble to work linearly within the CIE 1931 x,y within the original triangle) we simply select an attenua- color space. That is to say that, given

tion and mixing matrix A given by:

¼ ½

Y ; Ü; Ý ]Ê ;[Y ; Ü; Ý ]G;[Y ; Ü; Ý ]B

[ (1)

a a a

ÖÖ Ög Öb

@ A

a a a

A =

gg gb

it is not possible to predict by linear combination the gÖ (12)

a a a

bÖ bg bb

Y ; Ü; Ý ]Ê · G · B [ (2) such that the following holds true

that results from adding the three given intensities of

Y a Ù · Y a Ù · Y a Ù

ÖÖ Ö g Ög g b Öb b

colors together. Ö

Ù~ =

Ö (13)

Y a · Y a · Y a

Ö ÖÖ g Ög b Öb

Y ; Ü; Ý ] [Y; Ù; Ú] It was determined that mapping [ to us-

ing the mapping [4]

Y a Ù · Y a Ù · Y a Ù

Ö gÖ Ö g gg g b gb b

Ù~ =

g (14)

Y a · Y a · Y a

Ö gÖ g gg b gb =

Ù (3)

¾Ü ·½¾Ý ·½

Y a Ù · Y a Ù · Y a Ù

Ö bÖ Ö g bg g b bb b

Ù~ =

and b (15)

Y a · Y a · Y a

Ö bÖ g bg b bb

9Ý =

Ú (4) and similarly

¾Ü ·½¾Ý ·½

Y a Ú · Y a Ú · Y a Ú

ÖÖ Ö g Ög g b Öb b

yields a color space that is linear in the sense that given Ö

Ú~ =

Ö (16)

Y a · Y a · Y a

Ö ÖÖ g Ög b Öb

Y ; Ù; Ú ]Ê ;[Y ; Ù; Ú ]G;[Y; Ù; Ú]B

[ (5)

Y a Ú · Y a Ú · Y a Ú

Ö gÖ Ö g gg g b gb b

Ú~ =

It is entirely possible to predict the resulting color co- g (17)

Y a · Y a · Y a

gÖ g gg b gb

ordinates Ö

Y a Ú · Y a Ú · Y a Ú

Ö bÖ Ö g bg g b bb b

Ú~ =

b (18)

[Y ; Ù; Ú ]Ê · G · B

a · Y a · Y a (6) Y

Ö bÖ g bg b bb

1042 IS&T©s 2000 PICS Conference IS&T©s 2000 PICS Conference Copyright 2000, IS&T

An iterative error minimizing computer program was

Y ÌÚ · Y ÌÚ · Y Ú

Ö g g b b

used to determine the elements of the attenuation and mix- Ö

Ú~ =

b (25)

Y Ì · Y Ì · Y

g b

ing matrix A. Ö Ø

Applying the matrix transpose of matrix A, A to an The intensity of each modified apex is

R,G,B triplet from the bitmap input as follows

~

Y = Y · ÌY · ÌY

Ö g b

Ö (26)

Ø

~ ~ ~

Ê GB ]=[ÊGB ]A

[ (19)

~

Y = ÌY · Y · ÌY

Ö g b then gives us our desired filtered output that achieves g (27)

our gamut modifying goal.

~

Y = ÌY · ÌY · Y

Ö g b

b (28)

Ø =

3. Parametric Gamut Reduction where Ì . ½¼¼ Refer to Figure 5 for a graphical example of paramet- The above technique gives us the ability to alter the gamut rically reduced . Note that the stays the of our display device with the benefit of reshaping the tri- same and the lines joining the apices of the gamut inter- angular bounds of the resultant gamut and the color map- sect at the white point and represent the loci of apices of ping of each point within. This is handy if the desired all parametrically reduced gamuts. gamut is contained within the bounds of the monitor gamut. The parameter t is selected easily by iteratively increas- For those instances when this is not the case, we introduce ing the parameter t and testing to ensure that the t% re- the concept of parametrically reduced gamuts. duced gamut is bounded by the monitors actual gamut. The concept of parametric gamut reduction refers to the idea of taking 100% of each basic color and adding t% of each of the other two basic colors to it. The resulting 4. Feasibility set of three colors define a gamut that is t% reduced from The utility of the premise of this discussion rests upon the original. Rendering an image bitmap in the parametri- knowledge of the actual CIE coordinates of the specific cally reduced gamut results in an image that is perceivably monitor that we are working with. For this to be practical, of the same color with lowered overall saturation. In the

the desired information should reside within the monitor.

= ¼ extreme cases when Ø , the gamut is unchanged and

Currently, in normal PC monitors, this information is ac- =½¼¼ when Ø , only one color (white) is contained within tually already stored in EDID (Extended Display Interface the gamut. This is one solution to the problem. Other solu- Data) data file. Presently, this information is generic in na- tions may exist but for the purpose of this discussion, this ture and does not represent the precise characteristics of solution is adequate in the sense that it is linear and offers each individual monitor. However, this data can be made a perceptually pleasing solution. more accurate and pertinent to the specific monitor by sim- So if desired gamut is bounded by a triangle with apices

ply making accurate measurements of the primary color

´Ù ;Ú µ; ´Ù ;Ú µ; ´Ù ;Ú µ ´Y ;Y ;Y µ

Ö g g b b Ö g b at Ö with intensities , coordinates for each specific monitor at the time of man- then a t% reduction of this gamut would be bounded by

ufacture. This data can then be immediately written into

´~Ù ; Ú~ µ; ´~Ù ; Ú~ µ; ´~Ù ; Ú~ µ

Ö g g b b apices at Ö . The new apices are the non-volatile EDID data RAM of that specific monitor. computed as In this way, a simple manufacturing step can facilitate the

availability of the required information. Given this infor-

Y Ù · Y ÌÙ · Y ÌÙ

Ö Ö g g b b

Ù~ =

Ö (20) mation, a filter can be designed for each specific monitor

Y · Y Ì · Y Ì

g b

Ö by using software that retrieves this information at startup.

ÌÙ · Y Ù · Y ÌÙ

Y It may be noted that the implementation of the filter de-

Ö Ö g g b b

Ù~ =

g (21) scribed above requires nine multiplies and nine adds per

Y Ì · Y · Y Ì

g b

Ö pixel. This could be accomplished using software. If bet-

Y ÌÙ · Y ÌÙ · Y Ù

Ö g g b b

Ö ter dynamics are required, it could be easily accomplished

Ù~ =

b (22)

Ì · Y Ì · Y

Y using dedicated hardware.

Ö g b and similarly

5. Summary

Y Ú · Y ÌÚ · Y ÌÚ

Ö Ö g g b b

Ú~ =

Ö (23) For color fidelity it is necessary to have predictable bright-

Y · Y Ì · Y Ì

g b

Ö ness control over basic display colors. It is necessary to

Y ÌÚ · Y Ú · Y ÌÚ

Ö g g b b

Ö know the exact gamut of the display. It is also necessary to

Ú~ =

g (24)

Ì · Y · Y Ì Y use the above information to filter the image bitmap being

Ö g b

1053 IS&T©s 2000 PICS Conference IS&T©s 2000 PICS Conference Copyright 2000, IS&T

RED GREEN BLUE YxyY x y Y x y Trinitron CRT 13.2 0.615 0.353 35.3 0.278 0.6245.14 0.15 0.062 Sony CPD-210GS 0.7 Toshiba CRT G Compaq MV400 7.51 0.608 0.357 28.2 0.275 0.624 2.77 0.15 0.058 Samsung CRT Daewoo 15" 11.3 0.615 490.349 0.288 0.614 5.86 0.152 0.067 0.6 Orion LAF gun Compaq MV520 0.3520.60713.1 46.1 0.274 0.618 5.28 0.151 0.059 Samsung CRT 6.76 0.591 0.345 29.9 0.288 0.603 3.78 0.153 0.07 0.5 Compaq MV520 Samsung CRT 0.6027.66 0.347 32.3 0.289 0.605 4.41 0.152 0.067 Compaq MV520 0.4 Chungwa CRT 0.062 y Compaq MV520 0.67.5 0.354 27.2 0.279 0.616 3.43 0.152 R 0.3 Figure 1. Color Coordinates of seven manufacturers’ CRT monitors 0.2

0.1 B 0 0.20 0.4 0.6 0.8 0.7 CRT Monitor FP Monitor x 0.6

0.5 White point for FP monitor Figure 3. CIE 1931 x,y coordinates of various test color mixes. 0.4 y

0.3

0.2 White point for CRT monitor

0.1 R

0 G 0.20 0.4 0.6 0.8 0.7 x Figure 2. Color Gamut of a Compaq LCD vs. CRT monitor. 0.6

0.5

v 0.4 B rendered such that the resulting image is perceived as origi- 0.3 nally intended. Currently the problem is that there is no ac- commodation for variations in the basic color shade. Our 0.2 proposed solution measures and records the basic color co- ordinates within each monitor. Software program reads the 0.1 recorded data and designs an optimizing filter at startup. 0 No user intervention is required for this operation. 0.20 0.4 0.6 0.8 u References Figure 4. MacAdam mapped u,v coordinates of various test color mixes.

[1] H. Grassmann, “On the theory of compound col- ors,” The London, Edinburgh and Dublin Philosophi- cal Mag. and J. Sci., vol. 4, pp. 254Ð264, 1854.

[2] M. Stokes, M. Anderson, M. Chan- drasekar, and R. Motta, A Standard Default Color Space for the Internet, http://www.w3.org/Graphics/Color/sRGB.html, 1996.

[3] F.W. Billmeyer and M. Saltzman, “Principles of color technology,” John Wiley and Sons, vol. 5, pp. 104Ð 105, 1966.

1064 IS&T©s 2000 PICS Conference IS&T©s 2000 PICS Conference Copyright 2000, IS&T

R [4] D.L. MacAdam, “Projective transformations of the G 0.7 i.c.i color specifications,” Journal Optical Society of America, vol. 27, pp. 294Ð299, 1937. 0.6

0.5 v 0.4 B 0.3

0.2

0.1

0 0.20 0.4 0.6 0.8 u Figure 5. Parametrically reduced Gamuts.

1075