Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SYSTEMS AND METHODS FOR SELECTING A WHITE POINT FOR IMAGE DISPLAYS
Document Type and Number:
WIPO Patent Application WO/2005/104084
Kind Code:
A3
Abstract:
Several embodiments of the present application disclose techniques systems and methods (figs 1 -5) for changing or rendering input image data that may assume a first white point (112 fig 1) for a given display into image data to be rendered under a second-assumed desired or measured-white point (114, fig 1) of the display.

Inventors:
HIGGINS MICHAEL FRANCIS (US)
BROWN ELLIOT CANDICE HELLEN (US)
Application Number:
PCT/US2005/009536
Publication Date:
August 14, 2008
Filing Date:
March 23, 2005
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CLAIRVOYANTE INC (US)
International Classes:
G09G5/00; G03F3/08; G09G5/02; H04N1/46
Other References:
No relevant documents disclosed
Attorney, Agent or Firm:
STUART, P., Kaler (Inc.874 Gravenstein Hwy S,Suite 1, Sebastopol CA, US)
Download PDF:
Claims:
CLAIMS What is claimed is: 1. A method for converting image data from a first white point of a display to a second white point, the steps of said method comprising: solving for the weighting coefficients that relate the first white point coefficients and said second white point; mapping color values utilizing said first white point, said color values derivable from said weighting coefficients, into another set of color values; converting input image data into output image data in using said mapping. 2. The method of Claim 1 wherein said first white point is an assumed white point of said display. 3. The method of Claim 1 wherein said first white point is a measured tri-stimulus white point of said display. 4. The method of Claim 1 wherein said second white point is a desired white point of said display. 5. The method of Claim 1 wherein said second white point is the white point with only white subpixels turned on. 6. The method of Claim 1 wherein said method further comprises the step of dynamically changing the weighting coefficients according to user preference. 7. A method for changing the chromaticity triangle calculations for input image data, the steps of said method comprising: converting input image data to a first color space, said first color space having substantially the same white point as the display; calculating the chromaticity triangle of the converted input image data. 8. The method of Claim 7 wherein said input image data is in sRGB format. 9. The method of Claim 8 wherein said sRGB input values are converted into values that have substantially the same white point as the display. 10. The method of Claim 9 wherein said converted values have their chromaticity triangles calculated. 11. A method of calculating chromaticity triangles of input image data, the steps of said method comprising: constructing a plurality of Boolean tests to determine the chromaticity triangle of any input image data; applying a correction for said Boolean tests depending upon the desired white point of the display.
Description:
SYSTEMS AND METHODS FOR SELECTING A WHITE POINT FOR IMAGE DISPLAYS

TECHNICAL FIELD

[01] The present application is related to the field of converting input image data set to another image data set.

BACKGROUND

[02] In commonly owned United States Patent Applications: (1) United States Patent Application Serial No. 09/916,232 ("the '232 application" ), entitled "ARRANGEMENT OF COLOR PIXELS FOR FULL COLOR IMAGING DEVICES WITH SIMPLIFIED ADDRESSING," filed July 25, 2001; (2) United States Patent Application Serial No. 10/278,353 ("the '353 application"), entitled "IMPROVEMENTS TO COLOR FLAT PANEL DISPLAY SUB-PIXEL ARRANGEMENTS AND LAYOUTS FOR SUB-PIXEL RENDERING WITH INCREASED MODULATION TRANSFER FUNCTION RESPONSE," filed October 22, 2002; (3) United States Patent Application Serial No. 10/278,352 ("the '352 application"), entitled "IMPROVEMENTS TO COLOR FLAT PANEL DISPLAY SUB- PIXEL ARRANGEMENTS AND LAYOUTS FOR SUB-PIXEL RENDERING WITH SPLIT BLUE SUB-PIXELS," filed October 22, 2002; (4) United States Patent Application Serial No. 10/243,094 ("the '094 application), entitled "IMPROVED FOUR COLOR ARRANGEMENTS AND EMITTERS FOR SUB-PIXEL RENDERING," filed September 13, 2002; (5) United States Patent Application Serial No. 10/278,328 ("the '328 application"), entitled "IMPROVEMENTS TO COLOR FLAT PANEL DISPLAY SUB-PIXEL ARRANGEMENTS AND LAYOUTS WITH REDUCED BLUE LUMINANCE WELL VISIBILITY," filed October 22, 2002; (6) United States Patent Application Serial No. 10/278,393 ("the '393 application"), entitled "COLOR DISPLAY HAVING HORIZONTAL SUB-PIXEL ARRANGEMENTS AND LAYOUTS," filed October 22, 2002; (7) United States Patent Application Serial No. 01/347,001 ("the '001 application") entitled "IMPROVED SUB-PIXEL ARRANGEMENTS FOR STRIPED DISPLAYS AND METHODS AND SYSTEMS FOR SUB-PIXEL RENDERING SAME," filed January 16, 2003, each of which is herein incorporated by reference in its entirety, novel sub-pixel arrangements are disclosed for improving the cost/performance curves for image display devices. [03] For certain subpixel repeating groups having an even number of subpixels in a horizontal direction, the following systems and techniques to affect improvements, e.g. proper dot inversion schemes and other improvements, are disclosed and are herein incorporated by reference in their entirety: (1) United States Patent Application Serial Number 10/456,839 entitled "MAGE DEGRADATION CORRECTION IN NOVEL LIQUID CRYSTAL DISPLAYS"; (2) United States Patent Application Serial No. 10/455,925 entitled "DISPLAY PANEL HAVING CROSSOVER CONNECTIONS EFFECTING DOT INVERSION"; (3) United States Patent Application Serial No. 10/455,931 entitled "SYSTEM AND METHOD OF PERFORMING DOT INVERSION WITH STANDARD DRIVERS AND BACKPLANE ON NOVEL DISPLAY PANEL LAYOUTS"; (4) United States Patent Application Serial No. 10/455,927 entitled "SYSTEM AND METHOD FOR COMPENSATING FOR VISUAL EFFECTS UPON PANELS HAVING FLXED PATTERN NOISE WITH REDUCED QUANTIZATION ERROR"; (5) United States Patent Application Serial No. 10/456,806 entitled "DOT INVERSION ON NOVEL DISPLAY PANEL LAYOUTS WITH EXTRA DRIVERS"; (6) United States Patent Application Serial No. 10/456,838 entitled "LIQUID CRYSTAL DISPLAY BACKPLANE LAYOUTS AND ADDRESSING FOR NON- STANDARD SUBPrXEL ARRANGEMENTS"; (7) United States Patent Application Serial No. 10/696,236 entitled "IMAGE DEGRADATION CORRECTION IN NOVEL LIQUID CRYSTAL DISPLAYS WITH SPLIT BLUE SUBPrXELS", filed October 28, 2003; and (8) United States Patent Application Serial No. 10/807,604 entitled "IMPROVED TRANSISTOR BACKPLANES FOR LIQUID CRYSTAL DISPLAYS COMPRISING DIFFERENT SIZED SUBPIXELS", filed March 23, 2004. [04] These improvements are particularly pronounced when coupled with sub-pixel rendering (SPR) systems and methods further disclosed in those applications and in commonly owned United States Patent Applications: (1) United States Patent Application Serial No. 10/051,612 ("the '612 application"), entitled "CONVERSION OF RGB PIXEL FORMAT DATA TO PENTILE MATRIX SUB-PIXEL DATA FORMAT," filed January 16, 2002; (2) United States Patent Application Serial No. 10/150,355 ("the '355 application"), entitled "METHODS AND SYSTEMS FOR SUB-PIXEL RENDERING WITH GAMMA ADJUSTMENT," filed May 17, 2002; (3) United States Patent Application Serial No. 10/215,843 ("the '843 application"), entitled "METHODS AND SYSTEMS FOR SUB-PIXEL RENDERING WITH ADAPTIVE FILTERING," filed August 8, 2002; (4) United States Patent Application Serial No. 10/379,767 entitled "SYSTEMS AND METHODS FOR TEMPORAL SUB-PIXEL RENDERING OF IMAGE DATA" filed March 4, 2003; (5) United States Patent Application Serial No. 10/379,765 entitled "SYSTEMS AND METHODS FOR MOTION ADAPTIVE FILTERING," filed March 4, 2003; (6) United States Patent Application Serial No. 10/379,766 entitled "SUB-PIXEL RENDERING SYSTEM AND METHOD FOR IMPROVED DISPLAY VIEWING ANGLES" filed March 4, 2003; (7) United States Patent Application Serial No. 10/409,413 entitled "IMAGE DATA SET WITH EMBEDDED PRE-SUBPIXEL RENDERED IMAGE" filed April 7, 2003, which are hereby incorporated herein by reference in their entirety. [05] Improvements in gamut conversion and mapping are disclosed in commonly owned and co-pending United States Patent Applications: (1) United States Patent Application Serial No. 10/691,200 entitled "HUE ANGLE CALCULATION SYSTEM AND METHODS", filed October 21, 2003; (2) United States Patent Application Serial No. 10/691,377 entitled "METHOD AND APPARATUS FOR CONVERTING FROM SOURCE COLOR SPACE TO RGBW TARGET COLOR SPACE", filed October 21, 2003; (3) United States Patent Application Serial No. 10/691,396 entitled "METHOD AND APPARATUS FOR CONVERTING FROM A SOURCE COLOR SPACE TO A TARGET COLOR SPACE", filed October 21, 2003; and (4) United States Patent Application Serial No. 10/690,716 entitled "GAMUT CONVERSION SYSTEM AND METHODS" filed October 21, 2003 which are all hereby incorporated herein by reference in their entirety. [06] Additional advantages have been described in (1) United States Patent Application Serial No. 10/696,235 entitled "DISPLAY SYSTEM HAVING IMPROVED MULTIPLE MODES FOR DISPLAYING IMAGE DATA FROM MULTIPLE INPUT SOURCE FORMATS", filed October 28, 2003 and (2) United States Patent Application Serial No. 10/696,026 entitled "SYSTEM AND METHOD FOR PERFORMING IMAGE RECONSTRUCTION AND SUBPIXEL RENDERING TO EFFECT SCALING FOR MULTI- MODE DISPLAY" filed October 28, 2003. [07] Additionally, these co-owned and co-pending applications are herein incorporated by reference in their entirety: (1) United States Patent Application Serial No. [ATTORNEY DOCKET NUMBER 08831.0064] entitled "SYSTEM AND METHOD FOR IMPROVING SUB-PIXEL RENDERING OF IMAGE DATA IN NON-STRIPED DISPLAY SYSTEMS"; (2) United States Patent Application Serial No. [ATTORNEY DOCKET NUMBER 08831.0066] entitled "NOVEL SUBPIXEL LAYOUTS AND ARRANGEMENTS FOR HIGH BRIGHTNESS DISPLAYS"; (3) United States Patent Application Serial No. [ATTORNEY DOCKET NUMBER 08831.0067] entitled "SYSTEMS AND METHODS FOR IMPROVED GAMUT MAPPING FROM ONE IMAGE DATA SET TO ANOTHER"; (4) United States Patent Application Serial No. [ATTORNEY DOCKET NUMBER 08831.0068] entitled "IMPROVED SUBPγXEL RENDERING FILTERS FOR HIGH BRIGHTNESS SUBPIXEL LAYOUTS"; which are all hereby incorporated by reference. AU patent applications mentioned in this specification are hereby incorporated by reference in their entirety.

DISCLOSURE OF THE INVENTION

[08] In one embodiment of the present application, a method and system for converting image data from a first white point of a display to a second white point are given. The steps of said method and system comprise solving for the weighting coefficients that relate the first white point coefficients and said second white point; mapping color values utilizing said first white point, said color values derivable from said weighting coefficients, into another set of color values and converting input image data into output image data in using said mapping. [09] In another embodiment of the present application, a method and system for changing the chromaticity triangle calculations for input image data are given. The steps of said method and system comprise converting input image data to a first color space, said first color space having substantially the same white point as the display and calculating the chromaticity triangle of the converted input image data. [010] In yet another embodiment of the present application, a method and system of calculating chromaticity triangles of input image data are given. The steps of said method comprising: constructing a plurality of Boolean tests to determine the chromaticity triangle of any input image data and applying a correction for said Boolean tests depending upon the desired white point of the display.

BRIEF DESCRIPTION OF THE DRAWINGS [011] The accompanying drawings, which are incorporated in, and constitute a part of this specification illustrate exemplary implementations and embodiments of the invention and, together with the description, serve to explain principles of the invention. [012] FIG. 1 is a chromaticity diagram showing measurements of an RGBW display. [013] FIG. 2 is a chromaticity diagram showing several common standard white-points. [014] FIG. 3 is a diagram showing two chromaticity triangles comprising two different white points respectively. [015] FIG. 4 shows a slice through the RGB color cube. [016] FIG. 5 shows a corrected slice through the RGB color cube.

DETAILED DESCRIPTION [017] Reference will now be made in detail to implementations and embodiments, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. [018] The white point of an image display does not always turn out to be a desirable color. This can be corrected by changing the color temperature of the backlight but that could be expensive. Additionally, some monitors have a user control that allows changing the white point to make all images display "warmer" or "cooler". The several embodiments of the present invention disclosed herein show systems and methods of changing the white point to any desired color without needing to change the backlight. The present embodiments and techniques are applicable to a full range of image displays — in particular, multi-primary displays, RGBW displays, as well as RGB primary displays. In the case of multi-primary and RGBW systems, these systems typically use conversion matrices, and changing such matrices may effect a change in the white point of a display — without the need for an expensive change in the backlight. [019] The difference between the measured and desired white point of a display could potentially introduce errors into chromaticity triangle number calculation. This might result in the wrong conversion being applied to some input colors. The present invention described herein substantially corrects for this error, as will be disclosed below.

Choosing the Correct White Point: [020] hi the case of a multi-primary system that includes a white sub-pixel, there may be multiple white points from which to choose. Figure 1 depicts a standard chromaticity diagram wherein envelope 102 represents the spectral locus and the "line of purples" that encloses all the observable colors. Within this envelope 102, a triangular region 104 represents a typical monitor gamut which encloses all of the colors that might be displayable by a monitor, television or some other image rendering device. The region 104 is depicted here as triangular ~ primarily assuming that the image display device employs three primary color points: red 106, green 108, and blue 110 apart from a white subpixel. [021] Within this region, there are at least two measurable white points - white point 112 (herein called the "AW" point) which arises from all three colored primaries turned on; and white point 114 (herein called the "SW" point) which arises from turning on only the white subpixels. Additionally, there may be yet another "desired" white point 116 (e.g. D65). Depending upon the intent, these three different white points may each be used for different purposes. For one example, a white point may be desired because it is the assumed white point of the input image data. This white point may be different from the measured white point of the image display. [022] Using RGBW as an example, the following equation is the constraint used to numerically solve for the C weighting coefficients:

Equation 1

[023] The notation xsw, ysw and zsw refer to the CIE xyz chromaticity values for the SW measured white sub-pixel. While the notation AWx, AWY and AWz refer to the CIE XYZ tri- stimulus values for the AW measured white with all the primaries on full. [024] Equation 1 may be used to solve for the values of the Cr Cg Cb and Cw weighting coefficients, then these may be used with the primary chromaticity values to create an equation to convert RGBW values into CIE XYZ tri-stimulus values. For a multi-primary system with more primaries, there would simply be more "columns" in the equation. For example, a display with a cyan primary would have measured chromaticity values xc yc and zc. Then there would also be an additional weight coefficient Cc to solve for. In the case of a multi-primary display without a white sub-pixel, there would be no column with xsw> ysw and zsw values and no Cw coefficient to solve for. It should be appreciated that the term "column" is used loosely here. Equation 1 is a matrix with only one column in it, but it is derived from a matrix with a separate column for each primary. [025] The weight coefficients from equation 1 may be used to build a matrix for converting RGBW (or other multi-primary systems) into CIE XYZ. This in turn may be used to create a set of matrices for converting CIE XYX value into RGBW (or other multi-primary systems). These matrices may be combined with conversion matrices that convert source data, for example sRGB, to and from CIE XYZ. Then it is possible, with a single matrix multiply, to convert source data directly to any multi-primary system. [026] Equation 1 uses the measured SW chromaticity of the white sub pixel and the measured AW tri-stirnulus values of the white point. This produces the mathematically correct conversion, but with results that sometimes may seem unexpected. For example, if the input data is sRGB, then it has the D65 white point assumption. However if the white point AW of a multi- primary display is not D65, then the sRGB white value (255,255,255) will not result in a. multi- primary value of (255,255,255,255). It is usually expected that the brightest possible input value to result in the brightest possible output value. However, that "brightest possible" result may not always give the correct color. If that color error is not acceptable, one solution that has been used is to replace AW in equation 1 with D65 resulting in the following equation:

Equation 2 [027] When all the multi-primary matrices are re-calculated from this starting point, the resulting matrices have the "expected" result of converting sRGB (255,255,255) into the multi- primary values (255,255,255,255). If the measured AW white point is reasonably close to D65, this may be a reasonable approximation. Also, if the backlight is modified until the measured AW white point is in fact D65 then equation 2 is mathematically correct and so is the "expected" result. However this may require a special backlight that would add to the cost of the display. [028] Therefore, equation 1 may suffice as a starting point to build the conversion matrices. For example, using the measured chromaticity values from an RGBW panel in equation 1, when sRGB (255,255,255) is the input color, one example might produce an RGBW color of (176,186,451,451). This is out of gamut, so gamut clamping or scaling may be used to bring it back into range. The result after this step is (99,105,255,255). If this particular panel was known to have a very "warm" or yellow white point, then this conversion may work by leaving the white and blue sub-pixels on full while decreasing the red and green sub-pixel values. There is a color in sRGB that does map to the AW measured white point and comes close to having all the multi-primaries on full. By using the inverse conversion on the measured AW color and applying gamut clamping as required the sRGB color closest to "full on" turned out to be (255,244,135) on this particular RGBW display. This is a bright yellow color, as expected from the observation and measurement of the display white point.

Choosing a Desired White Point: [029] It is often desirable to have controls on a monitor to change the "color temperature" of the display. For example, Figure 2 depicts four possible desirable white points — D50, D55, D65, and D75. It will be understood that this list is not exhaustive and that there may be many other white points that could be "desired". Backlights exist for LCD displays that have a computer-controllable color temperature, but these are more expensive than fixed backlights. Changing the color temperature is equivalent to changing the desired white point of the display. Since the system may already be doing conversions from the source sRGB color space to the destination color space, the system may modify the conversion matrices to convert to a different desirable white point. When building our conversion matrices, it is possible to combine the standard sRGB and CIE XYZ matrices. The standard sRGB matrix is shown below:

'0.485041 0.348893 0.130287λ R2X= 0.250099 0.697786 0.052115 ,0.022736 0.697786 0.686177/ Equation 3 [030] The matrix in equation 3 may be generated using a standard set of chromaticity values and the D65 white point. It is also possible to re-calculate a conversion matrix that assumes a different white point and use that instead of the standard matrix. Below the steps that suffice are shown:

^0.485041 0.348893 0.130287λ 0.250099 0.697786 0.052115 ^50 = V 0.022736 0.697786 0.686177, Equation 6

[031] In Equation 4, the matrix of standard chromaticity values for sRGB can be inverted and multiplied by the D50 CIE XYZ vector, for example, to produce the vector of weighting coefficients in one step. [032] In Equation 5, these weighting coefficients are inserted into the matrix of chromaticity values to produce a conversion matrix in another step. This matrix, its values shown in Equation 6, will convert sRGB values to CIE XYZ tri-stimulus values with the assumption that sRGB white will map to a desired white point, e.g. D50. To generate the RGBW conversion matrices, the matrix from Equation 6 may be used instead of the standard matrix from Equation 3. The result is a set of conversion matrices that convert sRGB to the multi-primary display with the colors modified to have the D50 white point. This process may be done with any desired white point. D50 is a "warmer" white point than the standard D65 white point. There are other standard defined white points. D75 is "cooler" than D65, D55 is between D50 and D65 in color temperature, Illuminant E and K (not shown in Figure 2) are both cooler than D75, etc. [033] There are several alternative ways to present these white points in a monitor user interface. The conversion matrices for a list of standard white points, for example the ones listed above, could be pre-calculated and stored in a ROM or other computer storage device. The user selects from a list of white points by name. Selecting one causes the monitor to switch to the corresponding set of matrices and all images displayed become "warmer" or "cooler". Alternatively the matrices can be calculated based on the black body temperature of the white point. A list of color temperatures could be displayed for the user to select from. If enough matrices are pre-calculated at small enough steps, the user interface could give the illusion that the white point temperature can be changed continuously. Finally, if the display system has enough processing power to re-calculate the matrices on the fly, the user interface can in fact calculate a new set of conversion matrices every time the color temperature is changed.

Correcting the Chromaticity Triangle for the White Point: [034] In one embodiment, multi-primary conversion may employ determining which chromaticity triangle an input color lies in and using a different conversion matrix for each triangle. Figure 3 shows one example of a plurality of chromaticity triangles that are based on two separate white points (302 and 304) and two color primaries. In this example, white point 302 could represent the measured white point while white point 304 might represent the desired white point. One way of determining the chromaticity triangle is to convert input colors to a separate chroma/luma colorspace, calculate the hue angle, and look the triangle number up in a table. However, if the white point of the display (e.g 302) is different from the white point of the input data (e.g. 304), then calculating the chromaticity triangles from the input data may result in errors. Colors that are close to the input white point may be assigned to the wrong chromaticity triangle. For example, as may be seen in Figure 3, color point 306 might be construed as being contained within the triangle defined by white point 304 and color primaries 106 and 108; whereas with white point 302, color point 306 would now be construed as being contained within the triangle defined by white point 302 and color primaries 106 and 110. [035] One embodiment would be to convert the input colors to a different color space that has the same white point as the display and then calculate the chromaticity triangle. This solution may require a 3x3 matrix multiply. The input data is presumed to be sRGB, but any other input assumptions can be taken into account. A conversion matrix may thus be generated. This process is similar to the steps in equations 4 and 5 but using the AW measured white point (e.g. white point 302) of the display:

[036] Equation 7 calculates the weighting coefficients that are used to create a conversion matrix in Equation 8. This matrix converts from a three- valued color space (not to be confused with the multi-primary color space) that has the measured white point into CIE XYZ. The inverse of this matrix times the standard sRGB matrix from Equation 3 will perform the conversion that suffices:

Equation 9

[037] In Equation 9, sRGB input values are converted to RdGdBd values that have the same white point as the display. These values may now be converted to chroma/luma, hue angle and chromaticity triangle number with substantially accuracy. The R2X and inverted R2XAW matrices can be combined into one pre-calculated matrix. It should be noted that this conversion may not be needed when the measured AW white point is close to D65.

Utilizing and Expanding Boolean Triangle Detector to Different White Points: [038] Another embodiment for calculating chromaticity triangle number for an RGBW multi-primary display may be effected by performing Boolean operations on the source sRGB values. This may be easier than the hue angle calculation, but it may have some limitations with systems using other than the 3 RGB primary colors. If the white-point is not taken into account, it might produce the incorrect triangle number in some cases, unless the display white point was D65 or the input values were corrected first, as described above. The triangle number calculation involved Boolean tests of the form:

if R<=B and G>=B then triangle=RGW.

[039] Other such Boolean triangle tests are similarly constructed. Figure 4 depicts three-dimensional representation of the RGB color space 400 defined by color primary points: red 402, green 404, and blue 408. The Boolean tests divide the sRGB color space into halves along planes in 3-space — for example, plane 410 represents an imaginary plane wherein color points have R components equal to B components (i.e. R=B). The first test, R<=B, tests for all the input colors on one side of the plane that has the formula R=B, the second formula divides the colors into all the colors above the plane that has the formula G=B. Both of these planes pass through black (0,0,0) white (255,255,255) and one of the primary colors (e.g. green 404). The intersection of the two half-space volumes above these planes is a volume that contains all the colors inside one chromaticity triangle. [040] Using the general formula for a plane in 3D, it is possible to construct the formula for planes that pass through other white-points besides D65. For example, Figure 5 shows a different plane 502 which cuts through point 504 (e.g. the measured white point AW). This would correct the calculations for displays with a white-point that did not match the D65 assumption of input data. Further, it is possible to generate formula for planes that pass through other primary colors besides the Rec. 709 standard R G and B points. It is also possible to add more planes and find the chromaticity triangle number with any number of primary colors in a multi-primary display. Equation 10 below is the three-point formula for a plane in 3-space.

Equation 10

[041] This determinant is zero for all points that lie on the plane. If the = sign is replaced with an inequality such as >= the formula splits 3-space into two halves, hi one embodiment, the planes may pass through black (0,0,0), through one of the primaries, and through the white point. Plugging in 255 for each primary and (255,255,255) for the white point are one possible set of assumptions for the Boolean formula:

[042] Equations 1 Ir, 1 Ig, and 1 Ib reproduce the Boolean tests. It is then possible to substitute different values for the white point and make the formula work correctly when the white point is not the standard one. Since the Boolean tests may be done in the input color space, it may desirable, in one embodiment, to translate the AW measured white point backwards into the sRGB space. From the CIE XYZ values of AW, the inverse of the standard conversion matrix in Equation 3 may perform this, or, alternatively, the inverse of the transform done in Equation 9 from the values (255,255,255). Using the example AW measured values from an RGBW display, if AW is converted and gamut clamped to sRGB, the result is W=(255, 243, 135). It is possible to write down a general formula for any white point:

[043] It should be noted that one possible difference between the simplified versions of Equations 12r, 12g, and 12b and the Boolean tests is that the input color values are multiplied by the converted white point values. However, these 6 multiplication operations are less than the 9 required to do the matrix operation described in Equation 9. Thus, the Boolean test may at times be less computationally expensive than the hue angle method of calculating the chromaticity triangle number. [044] In both Equations 11 and 12, the primaries are assumed to be at the corners of the sRGB input system. This restriction tends to prevent the Boolean test from working on displays with more than three primaries. This is, however, an artificial restriction that may be lifted, in one embodiment, by using the measured color of each primary. For example, if a display had a cyan primary, the inverse matrix from Equation 3 might convert that primary into a color C in the sRGB space. This color might then be substituted into Equation 10 along with (0,0,0) for black and the converted white point W as used in Equations 12.

(W1 -C2 - C1-W2)T + (-W0-C2 + co-w2)-g + (W0-C1 - co.Wl).b = o

Equation 13

[045] It should be noted that the calculations using the W and C values can be done beforehand so this calculation may only need 3 multiplies per primary. An equation like this may be generated for each of the primaries, no matter how many primaries there are in the multi- primary system. This allows the Boolean test to be extended to displays with any number of primaries. It should also be noted that if some of the primaries are reasonably close to the standard primaries of sRGB then the simpler formula of Equations 12 may be used and fewer multiplies may be performed. Finally if the white point of the display is reasonably close to D65 then the Equations 11 can do some of the tests with no multiplies. [046] To build the Boolean expressions to detect each chromaticity triangle, since all the planes intersect the line of grays, it is noted that only two planes suffice to be tested for each chromaticity triangle - e.g. the two that pass through two adjacent primaries. The equations of the planes may then be converted into half-space volumes by changing them from =0 to >=0 or <=0. The union of the two resulting inequalities may constitute the test for a specific chromaticity triangle. It may also suffice to test any choice by generating a list of points inside the chromaticity triangle in a test program then creating a scatter-plot of them with a 3D plotting program. [047] While the invention has been described with reference to an exemplary embodiment, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention, hi addition, many modifications may be made to adapt a particular situation or material to the teachings without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims.