This invention generally relates to displays such as used in computer systems, portable electronic devices, televisions, and similar devices and more particularly to correcting the optical characteristics of such displays in terms of representation of gray scale and colors.
U.S. Patent Application Publication No. 200/0032275A1 published Feb. 10, 2011, Gabriel G. Marcu, et al., incorporated herein by reference in its entirety, is directed to performing corrections on video data based on the temperature of a video display to produce accurate output values on the display. As explained there, many computing devices, television sets, etc. use an electronic display, such as liquid crystal displays, cathode ray tubes, and organic light emitting diode displays. Typically, such displays show color images, but that is not limiting here. The color response of such displays typically changes as the display operates and particularly as it warms up after being powered up.
As explained there, “white point” (correlated color temperature) shifts along a black body curve as a physical temperature of the display reaches its steady operating temperature. So there is a color shift over time as the display warms up, referred to also as transient color shift. The transient color shift is noticeable often for a quite lengthy period of time, such as up to 2 of 3 hours. This is also the case even if the display is only a black and white display, that is displays only “gray scale”. Other parameters of the display may similarly shift as a function of temperature such as luminance, black level, contrast, or the electro-optical transfer function referred to as the “gamma”.
The target white point, also referred to as target white, is a set of values that served to define the desired color white for a particular image. Different definitions of target white are needed to give particular optical results. The white point of the display refers to the color that is produced by the display as a response to the maximum digital input on all 3 color channels.
A white point correction refers to a video signal correction that changes the white point of a display to match a target white point.
The target gamma refers to a certain luminance response of the display to the digital input. Target gamma correction typically follows the power law (is an exponential function). Gamma correction is used to encode RGB (red, green, blue) values of the video signals or digital values such that the display response is luminance to the digital input matches the input on all 3 color channels.
However, even the particular correction disclosed in that patent publication can be improved upon, as identified by the present inventors and described following.
In accordance with the invention not only is the type of gain correction described in Marcu et al. referred to above performed on a display, also performed is “native” gamma correction and white point compensation. Thus, for a display, each of these three corrections is performed. Moreover, the so-called gamma correction may also include what is referred to in the field as gray tracking compensation.
In addition to performing all three of these types of compensation or corrections, further both the gamma and white point correction, are determined on a unit-by-unit basis. The present inventors have determined that the known approach of determining these corrections only for a display on a product or class basis and applying the exact same correction for each individual display unit in that product or class does not provide an optimum correction. This is due to differences in the various individual display units when they are manufactured, due to variations in their components typically. It is known for end users to employ calibrators for performing gamma and white point corrections for their particular display unit. But this is time consuming and requires additional hardware and software.
Disclosed here is a method according to which each individual display is color corrected at the time of manufacture. The correction parameters may be stored in the firmware of the display at the time of manufacture. This correction includes but is not limited to gamma correction, gray tracking correction, white point correction and transient color shift correction. The correction may include the correction for the transient color shift and white point correction and/or gamma correction and/or gray tracking correction. The correction may be but is not limited to display calibration, and may also include certain corrections for optimizing certain rendering conditions, such as for cinema content, video content, photographic content, graphic arts content and so on. The present method may include all these corrections or part of these corrections done at the factory. In the following the terms “correction” and “calibration” are both used.
So in accordance with the invention, each individual display unit as produced in the factory then individually color corrected and thereby is provided with the appropriate correction parameters determined for that particular display for both the native gamma correction and the white point correction. Note that the native gamma correction is also referred to as the optical transfer function. The gray tracking is an aspect or subpart of this gamma correction. The gray tracking herein is present in certain embodiments.
Moreover, in addition, the type of gain correction described by Marcu et al is also provided (not on a unit-by-unit basis), but instead on a basis normalized over a number of units.
Thus, the present inventors recognized the differences between individual display units as manufactured in the factory are significant in terms of their optical characteristics, that is the displayed image as viewed by a user. This is a typical situation. Even though a large number of such display units are produced so as to be uniform, even a relatively casual observer can see that two such units when used side-by-side in fact provide different types of color correction, that is the colors are not uniform unit-to-unit. Of course, this is especially a problem when the display is, for instance, in a computer used by professionals for computer graphics, printing, etc., but even for the consumer this can be an issue. Note that while generally correction, calibration and adjustment of such displays in the factory is well known, this is typically not performed on a unit-by-unit basis, but a single set of correction parameters is used that is uniform over a large number of units as applied at the time of manufacture, such as over an entire class or entire product.
Reference here to “display” or “display unit” is not limited to merely the display panel (screen), but may also include the associated circuitry typically provided with such a display such as a display driver, which is an integrated circuit which actually sources the signals to the display, and the associated video controller circuitry, which may or may not be part of the display itself. Such a display unit may be part of a computer or computing device with which the display is associated. In many cases, however, such displays are external displays such as, for instance, television sets or displays sold to be connected to a separate computer system in which case the display also includes the relevant controller circuitry.
Disclosed here is a first method typically performed in a factory or similar facility where such displays are manufactured or integrated into another parent system such as a computer system or television set. The compensation or correction is performed as described above on each display unit as it is manufactured or installed in the parent system. The actual order of which type of compensation is applied in terms of the above-described gain correction of Marcu et al., the white point compensation, and the gamma correction varies depending on the particular embodiment. Moreover, unlike in Marcu et al., here the gain correction, which is performed over a range of temperatures, is normalized over a number of units. Note that it is generally not practical to perform the Marcu et al. type gain correction for an individual display unit. So instead a generic transient compensation is determined, which is then mathematically normalized. This transient compensation is derived from a previously calibrated display used as a standard.
In Marcu et al. the chief independent variable for determining the amount of gain correction at any time is the temperature. The display in that disclosure, see
In accordance with the present invention, in certain embodiments instead of using a single temperature sensor as shown in that disclosure, a synthesized or “virtual” temperature value is determined, which is the combination of several temperatures measured or estimated at several different points on the display combined with other factors such as the air circulation through the system as, for instance, provided by a fan or other air cooling. Thus, this synthesized or virtual temperature is used as the independent variable to determine the amount of gain correction provided rather than a single measured temperature. The intent is to calculate this virtual temperature so that it corresponds to the physical temperature at the center of the display screen. This is done even though no such temperature sensor is actually present at that point; hence, the term “virtual.”
In addition to the method, also provided is an associated test or calibration apparatus to perform this method, typically operated by factory personnel. This apparatus includes an optical pickup adapted to receive an optical or at least one signal from a display under test; a color measuring device coupled to the optical pickup to analyze the optical signal; and a test unit coupled at an input port of the color measuring device to determine, from the analyzed optical signal, at least one of a gamma correction, a white point correction or a gray tracking correction, and to determine a set of gain corrections for a plurality of temperatures, and having an output port adapted to be coupled to the display under test to transmit the corrections to the display under test.
Moreover, as in Marcu et al. there is provided associated circuitry in the display to perform the corrections (compensation) when the display is in use by the end user. This circuitry includes certain additional circuitry and/or modifications to the conventional controller video present in or associated with such displays, including the temperature sensor or sensors and associated micro-controller and other logic or firmware. In some embodiments, this circuitry is in a form of an integrated circuit such as an Application Specific Integrated Circuit (ASIC) or a Field Programmable Gate Array (FPGA). In other cases, this functionality is carried out by firmware or software executed by the controller, which is, for instance, a micro-controller or micro-processor conventionally associated with a display and in some cases, installed in the display.
Also, therefore, provided in accordance with the invention is an external-type display or stand-alone display such as a television set or external computer display, including the relevant circuitry plus the display screen. Also, contemplated is a computer system or other system, including the display, the controller, temperature sensor, and other conventional features, for instance, in the case of a computer system, a central processor, graphics processor, memory, and an input device such as a keyboard or mouse, etc.
Hence the color correction method is typically performed as described above in a factory where the display (or its parent system) is manufactured and/or assembled. First, the display unit, also sometimes referred to as a “panel” in the field, which is conventional except as described herein, is provided. In one exemplary color correction method, first the gamma and gray tracking compensation are provided at step 14 in
Next in this particular embodiment, the white point correction is performed at step 18. Again, this is done on a for each individual display unit 10. The white point correction is one particular case of the gamma and gray tracking correction, so the same algorithm is used. The white point correction is equal to 1 for the maximum gray level value, but for a target white point different from the “native” white point of the screen.
This per unit calibration for both the white point compensation and the gamma and gray tracking compensation are advantageous. The present inventors determined that there are significant differences between individual displays even though they are manufactured to be identical in terms of their optical performance and especially their color and gray scale performance. Hence, this per unit calibration 20 is shown in
Next in
A computer text file is used to report the RGB values used for the white point correction. In this example of normalization, these RGB values (expressed in 12 bit coding) are 8000, 7cca and 7738 for the red, green, blue (RGB) color channels respectively. A temp value designated T, representing the temperature at which the display unit is warmed up, is reported in the computer text file in the first two reserved bytes after the RGB values, as follows:
1. first byte (b1)=the integer part of the temp T value
2. second byte (b2)=2 digits of the fractional part of the temp T value
For example, T=49.73 C is coded with the following 2 bytes: 0x31 0x49. An example of the text file (with comments indicated by the // notation) including this coded T value is:
The following equation is then used to calculate the normalized value:
deg C.=deg C.*(Tn−T0)/(T−T0)+T0*(T−Tn)/(T−T0);
where T=the temp value T, and T is reported in first and second reserved bytes of the text file. T is calculated as: T=dec(b1)+dec(b2)/100, where dec (b) is decimal value of the byte b, T0=25, and Tn=in a table (where not all RGB values are equal to 0xFF) for the selected display. Tn is the smallest temperature value in the variable designated ThermalDataPoint for which the following conditions are satisfied:
For example, for a particular display table:
Value Tn can be determined programmatically or can be hardcoded into each display unit.
CPU 134 executes software which computes the transient compensation, white point compensation and gamma compensation as shown in
Video receiver 186 receives video in data on bus 34. Video receiver 186 is coupled to the conventional interface module 190 as shown to provide programming of the LUTs in memory 180 via a data communications channel of bus 34. Video receiver 186 communicates the incoming programming data to interface module 190 via this connection to update the white point and gamma correction values in EEPROM 180, as described above with reference to the calibration process.
At the bottom left of this drawing, the virtual temperature (or other temperature input) as determined as described hereinafter is provided to an interface module 200. This temperature data in turn is used to look up the transient compensation values stored previously in the table of memory 110. The output port of the multiplier 94 is coupled on a 32-bit bus (per color channel) to a truncator 220 to truncate this value to its 16 most significant bits, then to be combined at multiplier 82 with the 10 bits (per color channel, per pixel) of the input video data. This input video data is provided from the video input of bus 34.
A second truncator and updater element 224 is conventionally latched by the video vertical sync (synchronization) signal provided in the input video data on bus 34. Truncator 224 then provides a 10-bit output to the gamma tables 40′ (per color channel, per pixel) which were previously loaded from the gamma LUT 40 in the EEPROM 180. Similarly the RGB Constants 80 (also referred to above as the white point correction constants) from the EEPROM 180 are loaded into the RGB Constants register 80′.
The virtual temperature data applied via the interface circuit 200 is not the same as the actual temperature measured for instance in
The goal is to synthesize all of these inputs into a virtual temperature which is a close approximation of the actual physical temperature at the center of the display screen. Instead of using a virtual temperature, controller 46 includes the option to use the temperature reading from a local temperature sensor 232 and remote temperature sensor 234 by sampling the IC temperature sensor 26. The input temperature data is coupled to the interface module 190. The controller firmware 243 controls temperature sensor 26. This firmware 243 includes instructions for sensor control and processing at 241. This firmware also includes instructions as an option to read temperature sensor 26 at the time of the initial video input on bus 34 (e.g., when the display is powered up) and then later use the virtual temperature. This dual temperature approach (local temperature and then later virtual temperature) would also occur when the display has been in its sleep mode or when the parent system has been in its sleep mode. This option prevents color shift on the initial images that are displayed after the power up or transition from a sleep mode.
In another aspect of the use of temperature, the RGB Constants 80 have an optional default temperature value. At the time of the initial video input (as explained above) this default temperature value is used to look up the appropriate transient compensation values. After that again the virtual temperature is used.
If the configuration bits specify use of temperature sensor 26, the Temperature Sensor Control and Processing module becomes active. Interface module 190 provides a communications link between this module and the temperature sensor 26. The output of processing module 240 is a 7-bit value input to a multiplexer (MUX) 246 also receiving the virtual temperature which is a 7-bit signal provided from the host system in this embodiment. The measured or virtual temperature signal as provided from multiplexer 246 (selected by a Temperature MUX signal 215 set by Configuration Registers 210) is then applied to the gain table 110′ which stores the data from the gain look-up tables 110. This embodiment thereby has the option to select the virtual or local/remote temperature as the input variable to look up the transient compensation. The output of MUX 246 determines what value is looked up by gain table 110. In this embodiment, the gain LUTs 110 also store the white point correction values combined with the gain values, to simplify the circuit. Also provided here is an interpolation circuit 250 to interpolate if the particular input temperature is not found at the exact value at the table 110′, so instead interpolation is used as in Marcu et al.
This interpolation value is latched by an updater 254 driven by the vertical sync signal of the incoming video signal on bus 34. Here the RGB video channels are applied via video receiver 186 which applies 8- of 10-bit video (per color channel, per pixel) to multiplier 82 to be multiplied by the 12-bit gain values supplied by the updater 254. The output of multiplier 82 is then applied to a truncator 224 providing a 12-bit output on the associated output bus to the gamma look-up table 40′ which stores the results of the gamma look-up table 40 loaded from EEPROM 180. The 12-bit output of LUT 40′ is then applied to the dithering circuit 30′ which is driven by a dither matrix 30 (supplied by the configuration memory 230) and an enable signal as shown.
The temperature measurement or calculation is typically updated for instance once per second of 10 times per second, so the temperature or virtual temperature is measured or calculated at these intervals.
The controller 46 of
Not illustrated but readily understood is an associated system such as a computer system or television set including the display 10 and further including other circuitry. For instance, in the case of a television set this would also include a television tuner or equivalent and a user input device for changing channels, etc. In the case of a computer this would also include the computer CPU, random access memory, non-volatile storage, connecting and interface buses, and user input devices, all of which are conventional.
This disclosure is illustrative and not limiting. Further embodiments, modifications and improvements will be apparent to those skilled in the art in light of this disclosure, and are intended to fall within the scope of the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5189521 | Ohtsubo et al. | Feb 1993 | A |
5237401 | Koike et al. | Aug 1993 | A |
6593934 | Liaw et al. | Jul 2003 | B1 |
7038647 | Shigeta et al. | May 2006 | B2 |
7271790 | Hudson et al. | Sep 2007 | B2 |
7321348 | Cok et al. | Jan 2008 | B2 |
RE41191 | Choi | Apr 2010 | E |
20050007360 | Matsumoto | Jan 2005 | A1 |
20050030397 | Nakayama | Feb 2005 | A1 |
20050122305 | Murao et al. | Jun 2005 | A1 |
20050140624 | Oh et al. | Jun 2005 | A1 |
20070164931 | Miyazaki | Jul 2007 | A1 |
20070229443 | Sawada et al. | Oct 2007 | A1 |
20080018569 | Sung et al. | Jan 2008 | A1 |
20080284712 | Muto et al. | Nov 2008 | A1 |
20080309684 | Sawada | Dec 2008 | A1 |
20090140125 | Takayama | Jun 2009 | A1 |
20090322800 | Atkins | Dec 2009 | A1 |
20100156960 | Yi | Jun 2010 | A1 |
20100238158 | Yoshida | Sep 2010 | A1 |
20100244701 | Chen et al. | Sep 2010 | A1 |
20100277492 | Frederick et al. | Nov 2010 | A1 |
20100289835 | Holub | Nov 2010 | A1 |
20110032275 | Marcu et al. | Feb 2011 | A1 |
20110069094 | Knapp | Mar 2011 | A1 |
20110249141 | Chen et al. | Oct 2011 | A1 |
20110273404 | Noma et al. | Nov 2011 | A1 |
20120013635 | Beeman et al. | Jan 2012 | A1 |
20120065540 | Yarden et al. | Mar 2012 | A1 |
20120212520 | Matsui et al. | Aug 2012 | A1 |
20120293606 | Watson et al. | Nov 2012 | A1 |
Number | Date | Country |
---|---|---|
1675097 | Jun 2006 | EP |
1973092 | Sep 2008 | EP |
2007018569 | Feb 2007 | WO |
Entry |
---|
Marcu, Gabriel G., Gray tracking correction for TFT-LCDs, Color Imaging IX: Processing, Hardcopy, and Applications. Edited by Eschbach, Reiner; Marcu, Gabriel G. Proceedings of the SPIE, vol. 5293, pp. 277-285 (2003). Dec. 2003. |
Number | Date | Country | |
---|---|---|---|
20120281008 A1 | Nov 2012 | US |