1. Field of the Invention
The invention relates to display devices. More specifically, the invention describes a method and apparatus for enhancing the appearance of motion on an LCD panel display.
2. Overview
Each pixel of an LCD panel can be directed to assume a luminance value discretized to the standard set [0, 1, 2, . . . , 255] where a triplet of such pixels provides the R, G, and B components that make up an arbitrary color which is updated each frame time, typically 1/60th of a second. The problem with LCD pixels is that they respond sluggishly to an input command in that the pixels arrive at their target values only after several frames have elapsed, and the resulting display artifacts—“ghost” images of rapidly moving objects—are disconcerting. Ghosting occurs when the response speed of the LCD is not fast enough to keep up with the frame rate. In this case, the transition from one pixel value to another cannot be attained within the desired time frame since LCDs rely on the ability of the liquid crystal to orient itself under the influence of an electric field. Therefore, since the liquid crystal must physically move in order to change intensity, the viscous nature of the liquid crystal material itself contributes to the appearance of ghosting artifacts.
Accordingly, in order for LCDs to display high quality fast motion images, the ghosting problem must be resolved.
What is provided is an extended overdrive table that uses the saturation regions to store useful data that conformably extends the unsaturated region in a natural way. This extended overdrive table reduces the size of any interpolation errors when straddling crossover points to acceptable levels without requiring storing or using any crossover data. In addition, since the saturation regions are used to hold the new data, no additional storage requirements are introduced. The numeric range of the extended table is increased and it is therefore supposed that the bit depth of the table entries is increased, but the table can be rescaled to retain the original bit depth with insignificant loss of accuracy. Also, the new data incorporated into the saturation regions allows run time calculation of the pixel attained at the end of the frame time that is needed as the start of the pixel for the next cycle.
In a liquid crystal display device having a number of pixels, a method for reducing a response time of the pixels corresponding to a period of time required for a selected pixel at a starting pixel value to reach a desired pixel value is described. The method is carried out by determining an overdrive pixel value based upon an extended overdrive function Gs(p) having an extended LCD saturation region sub-function and an LCD unsaturated region sub-function and applying the overdrive pixel value to the pixel thereby reducing the pixel response time. In a particular embodiment, the
In another embodiment of the invention, computer program product for reducing a response time of the pixels corresponding to a period of time required for a selected pixel at a starting pixel value to reach a target pixel value is disclosed. The computer program product includes computer code for determining an overdrive pixel value based upon an extended overdrive function Gs having an extended LCD saturation region sub-function and an LCD unsaturated region sub-function, computer code for applying the overdrive pixel value to the pixel thereby reducing the pixel response time, and computer readable medium for storing the computer code.
In a liquid crystal display device having a number of pixels, an apparatus for reducing a response time of the pixels corresponding to a period of time required for a selected pixel at a starting pixel value to reach a target pixel value. The apparatus includes a pixel overdrive unit for determining an overdrive pixel value based upon an extended overdrive function Gs having an extended LCD saturation region sub-function and an LCD unsaturated region sub-function and applying a pixel overdrive applying the overdrive pixel value to the pixel thereby reducing the pixel response time.
Reference will now be made in detail to a particular embodiment of the invention an example of which is illustrated in the accompanying drawings. While the invention will be described in conjunction with the particular embodiment, it will be understood that it is not intended to limit the invention to the described embodiment. To the contrary, it is intended to cover alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims.
An LCD overdrive table is configured as a 9×9 matrix of ROM based lookup data that assists in improving the runtime performance of slow LCD panels. The entries specify start pixel by column and target pixel by row. Pixels not represented by this sparse table are handled at runtime using various interpolation techniques, some of which are described in more detail below. In conventional arrangements, the overdrive table has saturation regions in which the overdrive surface is flattened. The boundaries of these regions are known as crossover curves. Interpolation on a grid square that straddles a crossover curve and which therefore reflects both saturated and unsaturated regions can be inaccurate. In some cases, a detailed calculation using the crossover curves can circumvent this problem at runtime, but the method has been avoided in practice partly because of the additional 2 by 9 table needed to store the crossover data as well as the additional computational resources required to perform the detailed calculations.
An extended overdrive table uses the saturation regions to store useful data that conformably extends the unsaturated region in a natural way. This extended overdrive table reduces the size of any interpolation errors when straddling crossover points to acceptable levels without requiring storing or using any crossover data. In addition, since the saturation regions are used to hold the new data, no additional storage requirements are introduced. The numeric range of the extended table is increased and it is therefore supposed that the bit depth of the table entries is increased, but the table can be rescaled to retain the original bit depth with insignificant loss of accuracy. Also, the new data incorporated into the saturation regions allows run time calculation of the pixel attained at the end of the frame time that is needed as the start of the pixel for the next cycle.
Therefore, what is described herein is a method suitable for implementation in Liquid Crystal Display (LCDs) that reduces a pixel element response time that enables the display of high quality fast motion images thereupon. In the described embodiment, the extended LCD overdrive table is used to provide improved pixel prediction. In a liquid crystal display device having a number of pixels, a method for reducing a response time of the pixels corresponding to a period of time required for a selected pixel at a starting pixel value to reach a target pixel value is described. The method is carried out by determining an overdrive pixel value based upon an extended overdrive function Gs having an extended LCD saturation region sub-function and an LCD unsaturated region sub-function and applying the overdrive pixel value to the pixel thereby reducing the pixel response time. In a particular embodiment, the extended overdrive function
where m(s) is the minimum pixel value reachable in one frame time starting from start-pixel s and M(s) is the maximum pixel value reachable in one frame time starting from start-pixel s, and where fs is the one-frame pixel-response function corresponding to a fixed start-pixel s.
In order to more fully develop the concepts behind the invention, what follows is a brief description of an active matrix LCD panel suitable for use with any embodiment of the invention. Accordingly,
Typically, the TCON 112 is connected to a video source 118 (such as a personal computer, TV or other such device) suitably arranged to output a video signal (and, in most cases, an associated audio signal). The video signal can have any number and type of well-known formats, such as composite, serial digital, parallel digital, RGB, or consumer digital video. When the video signal takes the form of an analog video signal, then the video source 118 includes some form of an analog video source such as for example, an analog television, still camera, analog VCR, DVD player, camcorder, laser disk player, TV tuner, set top box (with satellite DSS or cable signal) and the like. In those cases where the video signal is a digital video signal, then the video source 118 includes a digital image source such as for example a digital television (DTV), digital still camera or video camera, and the like. The digital video signal can be any number and type of well known digital formats such as, SMPTE 274M-1995 (1920×1080 resolution, progressive or interlaced scan), SMPTE 296M-1997 (1280×720 resolution, progressive scan), as well as standard 480 progressive scan video.
Deterioration of image quality (such as reduced resolution and blurring) for moving images due to the slower response time of liquid crystal is a common problem for LCD monitors. For example,
In order to improve the performance of such LCD panels, the performance of the LCD panel is first characterized by, for example, taking a series of measurements that show what each pixel will do by the end of one frame time. Such measurements are taken for a representative pixel (or pixels) each being initially at a starting pixel value s that is then commanded toward a target value t (where s and t each take on integer values from 0 to 255). If the pixel value actually attained in one frame time is p, then
p=fs(t) (1)
where fs is the one-frame pixel-response function corresponding to a fixed start-pixel s. Accordingly, the hypothetical example from above would be written, in this notation, as f32(192)=100 indicating that for a starting value of 32 and a target pixel value of 192, the pixel value at the end of one frame period is expected to be 100.
For slow panels, not all targets can not be reached within a frame time. The functions
give the minimum pixel value m(s) and maximum pixel value M(s) reachable in one frame time as functions of the start pixel value s. It should be noted that these values define maximum-effort curves since they result from applying maximum effort in, respectively, diminishing and increasing directions.
In order to reach a pixel value p that lies in the interval [m(s), M(s)], equation (1) is solved for the argument t that produces pixel value p. The value t thus found is referred to as the overdrive pixel value that will achieve the goal (i.e., pixel value p) in one frame time. If p<m(s), then the overdrive pixel value is taken as having a value of 0, with m(s) being the best-effort result achieved. Likewise, if p>M(s) then the saturating overdrive pixel is taken to be 255, with M(s) being the best-effort result. Thus, for a given start pixel s, overdrive function gs can be defined by equation 3 as
In this way, the overdrive pixel value is effective in compelling the target pixel to reach its target value in the non-saturation region.
For example,
It should be noted that the overdrive method requires a timely and accurate characterization of the LCD panel's optical response. An accurate model allows the overdrive to more accurately predict the response of a given pixel to an applied pixel value thereby allowing a more accurate selection of overdriven value and predicted pixel values. Since LCD panel response is affected by temperature, a long warm up time was used in order to ensure that the optical responses generated through this procedure were consistent. LCD optical response is temperature dependent. This is the case since the viscosity of the liquid crystal material is also dependent on temperature. The liquid crystals must physically rotate and thus its viscosity determines how quickly this rotation can take place. It is the speed of this rotation that determines the response time of a given LCD panel. In general, as the temperature increases, the viscosity of the liquid crystal decreases, thus decreasing the optical response time.
Using any of a number of non-inertial approaches (i.e., one that ignores pixel velocity) it is possible to create what is referred to as a Full Overdrive Table (FOT) that shows, for each starting pixel and each target pixel, the command pixel that will most-likely cause the target pixel value to be achieved at the end of one frame time. In the described embodiment, the FOT is formed of a lookup table with 256 columns—one for each starting pixel in the range 0 to 255—and likewise 256 rows, one for each possible target. While the FOT solves the runtime problem by simple lookup, it isn't practical to store a table of that size (256×256). However, by sub-sampling the pixel array at every 32nd pixel, for example, using a reference sequence:
pix={0, 32, 64, 96, 128, 160, 192, 224, 255} (4)
in which the last entry is truncated to 255, a smaller 9×9 array referred to as a Standard Overdrive Table (SOT) is developed that greatly reduces the amount of memory required at runtime. Accordingly,
As graphically illustrated in
To better illustrate the problem with interpolating with the aforementioned grid squares (or any such grid square that encompasses any portion of the crossover curves),
As discussed above, the LCD standard overdrive table is configured as a 9×9 matrix of ROM based lookup data that assists in improving the runtime performance of slow LCD panels. As shown, the entries specify start pixel by column and target pixel by row whereas pixels not represented by this sparse table are handled at runtime using various interpolation techniques, some of which are described in more detail below. The standard overdrive table has saturation regions in which the overdrive surface is flattened. The boundaries of these regions are known crossover curves. Interpolation on a grid square that straddles a crossover curve and which therefore reflects both saturated and unsaturated regions can be inaccurate.
However, the problem of interpolation in or near the crossover curve SCO can be greatly ameliorated by instituting what is referred to as an extended overdrive table that incorporates information into the saturation regions Sm and SM that was heretofore ignored. In this way, any interpolation errors are substantially reduced to acceptable levels. Referring back to the sub-sampled overdrive table 3, as mentioned earlier, much of the table space is wasted with saturation data (i.e., values of “0” and or “255”).
However, in contrast to the standard overdrive table, an extended overdrive table uses the saturation regions to store useful data that conformably extends the unsaturated region in a natural way. This extended overdrive table reduces the size of any interpolation errors when straddling crossover points to acceptable levels without using any crossover data. In addition, since the saturation regions are used to hold the new data, no additional storage requirements are introduced. The numeric range of the extended table is increased and it is therefore supposed that the bit depth of the table entries is increased, but the table can be rescaled to retain the original bit depth with insignificant loss of accuracy. Also, the new data incorporated into the saturation regions allows run time calculation of the pixel attained at the end of the frame time. The standard overdrive table does not allow this calculation which is needed as the start of the pixel for the next cycle.
Accordingly, the overdrive function is given as equation 5.
In order to arrive at the extended overdrive table, the function is altered in the saturation regions, first to incorporate some useful information, and second to extend the unsaturated region in a fashion that will reduce the interpolation errors. For example, consider the case of a target pixel p>M(s) for which the overdrive value is in saturation at gs(p)=255. The difference δ(p)=p−M(s) is a measure of the shortfall from the target pixel p; it is referred to as the deficit δ(p). There is no deficit (δ=0) in the unsaturated region, but the deficit becomes positive and grows by one pixel for each pixel further that the target p proceeds past the maximum M(s). In the Extended Overdrive Table (EOT), the deficit is added to the saturation value of 255. At the low end the deficit is negative: there the deficit δ(p)=p−m(s) to again reflect the idea that the deficit is the difference between the target pixel value and the achieved pixel value, only here the target p is smaller than the minimum achieved. Again, the deficit is added to the saturation value, which in this case is 0. Thus, the Extended Overdrive function for fixed start pixel s is defined by
an example of which is shown in
As an example, assume one wanted to go from a start pixel of 100 to a target pixel of 200. The relevant sub matrix has its upper left corner at grid lines corresponding to start pixel=96 and target pixel equal 192, and is displayable as
which is the sub matrix 701 of the EOT 700 shown in
y=269.9375.
Since this is greater than 255, it means the pixel is in saturation, and the overdrive pixel is simply 255. But the answer indicates that the excess over 255 is equal to the deficit, or shortfall, between the target and the pixel value actually attained. This deficit is just
δ=y−255
δ=14.9375
and therefore the pixel attained is
pixel value=200−δ
pixel value=185.0625
Of course any target pixel in the high saturation region would reach this same value, it being the maximum attainable target starting from 100. That is the information contained in the maximum-effort curves, and these curves are implicitly present in the EOT. This can be seen as follows: from equation (6)
Gs(p)=255+(p−M(s)), p>M(s) (7)
and in particular, when p=255 then equation (7) reduces to:
Gs(255)=510−M(s). (8)
This is the bottom row of the EOT whereas the lower crossover curve appears as the top row of the EOT with signs reversed, i.e.,
Gs(p)=p−m(s), p<m(s) (9)
and, in particular when p=0,
Gs(0)=−m(s) (10)
In order to calculate pixel values that lie between pixel values actually calculated, a number of interpolation schemes are used. In the described embodiment, these interpolation schemes include both bilinear interpolation and surface triangulation. Bilinear interpolation is a two-dimensional interpolation process where the sample value is obtained through successive linear interpolations using the value of its four closest neighbors. Note that each interpolation is linear as shown in
The equation for calculating the values at E, F, and G are as follows:
This set of equations can be simplified to:
Although only a few embodiments of the present invention have been described, it should be understood that the present invention may be embodied in many other specific forms without departing from the spirit or the scope of the present invention. The present examples are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope of the appended claims along with their full scope of equivalents.
While this invention has been described in terms of a preferred embodiment, there are alterations, permutations, and equivalents that fall within the scope of this invention. It should also be noted that there are many alternative ways of implementing both the process and apparatus of the present invention. It is therefore intended that the invention be interpreted as including all such alterations, permutations, and equivalents as fall within the true spirit and scope of the present invention.
This patent application takes priority under 35 U.S.C. 119(e) to U.S. Provisional Patent Application No. 60/546,377 filed on Feb. 20, 2004 entitled “USING AN EXTENDED OVERDRIVE TABLE TO ENHANCE THE APPEARANCE OF MOTION ON AN LCD PANEL” by Halfant that is incorporated by reference in its entirety. This Application is also related to (i) co-pending U.S. patent application Ser. No. 10/985,688 filed Nov. 10, 2004, entitled “DYNAMICAL SYSTEMS APPROACH TO LCD OVERDRIVE” by Halfant and (ii) copending U.S. patent application Ser. No. 11/061,054 filed Feb. 18, 2005 entitled “FACTORED ZERO-DIAGONAL MATRIX FOR ENHANCING THE APPEARANCE OF MOTION ON AN LCD PANEL” by Halfant each of which are incorporated by reference in their entireties for all purposes.
Number | Name | Date | Kind |
---|---|---|---|
6304254 | Johnson et al. | Oct 2001 | B1 |
6876347 | Tashiro et al. | Apr 2005 | B2 |
7095393 | Lee | Aug 2006 | B2 |
7382349 | Kuhns | Jun 2008 | B1 |
20030006949 | Sekiya et al. | Jan 2003 | A1 |
Number | Date | Country | |
---|---|---|---|
20050184948 A1 | Aug 2005 | US |
Number | Date | Country | |
---|---|---|---|
60546377 | Feb 2004 | US |