The invention relates to a driver for a matrix display panel, to a display device comprising the driver, and to a method of driving a matrix display panel.
LCD (liquid crystal display) panels are increasingly used to display moving video content, for example in television receivers and computer monitors. However, the LC material in the current LCD panels is too slow to be able to display all desired pixel brightness transitions within a single frame time which results in blurred moving images. This problem can partly be mitigated with the well-known technique of overdrive. With overdrive, the pixels are driven with a higher level than the desired level. For example, if a pixel has to make a brightness transition from a low brightness value to a high brightness value, a level associated to the high brightness value has to be supplied to the pixel to obtain this high brightness value in the stable situation. However, due to the inertia of the LC material it may take several frames until the pixel has reached this high brightness value. In accordance with the overdrive technique, a higher level, also referred to as overdrive level, is supplied to the pixel than the associated level to force the LC material to speed up the transition such that the desired high value brightness is reached as fast as possible, preferable within one frame period. Once the pixel has reached the desired high value brightness, the overdrive level is replaced by the associated level to keep the brightness of the pixel equal to the desired brightness. Likewise, the level supplied to the pixel is selected temporary lower than the desired level to speed up a high-to-low transition.
The amount of overdrive is limited by the circuitry driving the LCD panel. In most LCD panels, full brightness corresponds to a pixel value of 255 and the pixel value cannot be larger than 255 (maximum electric field across the LC material). Hence, in case of a 0-to-255 transition, overdrive cannot be used because it would require a pixel value higher than 255. This clipping effect leads to a less effective overdrive and, hence, loss of contrast and blurred images. Likewise, the minimum pixel value is 0 (no electric field across the LC material). Going to negative values does not help, because the LC material reacts to the magnitude of the electric field, and not its sign.
It is an object of the invention to provide a driver for a matrix display panel with an improved overdrive technique.
A first aspect of the invention provides a driver as claimed in claim 1. A second aspect of the invention provides a display device as claimed in claim 12. A third aspect of the invention provides a display apparatus as claimed in claim 13. A fourth aspect of the invention provides a method of driving a matrix display panel as claimed in claim 14. Advantageous embodiments are defined in the dependent claims.
The driver in accordance with the first aspect of the invention is for driving a matrix display panel which comprises a pixel which has a first and a second sub-pixel which both have inertia. For, example, the matrix display is a LCD, which has three sub-pixels per pixel, each one contributing with another primary color to the brightness and color of the pixel. But, the invention is also relevant for any other matrix display which has at least two sub-pixels per pixel and which sub-pixels have an inertness which means that it takes some time to reach a new optical state after the drive voltage supplied to the sub-pixel changed.
The driver receives a first and second input signal indicating a first and a second desired brightness transition of the first and second sub-pixel, respectively. The driver supplies a first and a second drive signal to the first and the second sub-pixel, respectively, at a predetermined repetition rate, for example, a frame rate. Thus, the brightness levels of the sub-pixels are updated with the frame rate. The levels of the first and the second drive signal are limited between a minimum level and a maximum level. Usually, the minimum level corresponds to a data value zero and the maximum level corresponds to the maximum data value the driver is able to generate. If the data comprises 8 bit data words, the maximum data value is 255.
The first desired brightness transition may be too large to be reached within one frame period even if the minimum or the maximum data value is applied to drive the first sub-pixel, while the second desired brightness transition is smaller than reachable within one frame period. Thus the second sub-pixel can be driven, depending on the situation with or without overdrive, to undergo the second desired brightness transition within one frame period.
The driver further comprises a detector which detects whether the first drive signal within the frame period would have to surpass the maximum level or to fall below the minimum level. Thus, starting with the present brightness level of the first sub-pixel and knowing that at the end of the frame period the first brightness transition should have been completed, it can be determined which drive signal is required to obtain the desired brightness at the end of the frame period. If the required drive signal remains between the minimum and maximum level, than the brightness transition can be completed within the frame period.
The driver further comprises a clipping compensator which, if is detected that the first drive signal would have to surpass the maximum or to fall below the minimum level at the end of the frame period, increases or decreases, respectively, the level of the second drive signal.
Thus in accordance with the invention, if a particular sub-pixel of a pixel is not able to perform the required brightness transition within a single frame period, the brightness of at least one of the other sub-pixels of the pixel is adapted by the driver to compensate for the brightness error made by the particular sub-pixel. Thus, with this approach it is possible to reach substantially the correct brightness transition of the pixel. However, although the brightness of the pixel is substantially equal to the desired brightness, its color deviates from the desired color. Nevertheless, it has been noted that the blur is much more noticeable than the color deviation.
If the pixel has more than two sub-pixels, it possible to select which one of the other sub-pixels should compensate for the brightness error of the particular sub-pixel. Alternatively, it is possible that more than one of the other sub-pixels compensate for the brightness error of the particular sub-pixel. Usually, the algorithm in accordance with the invention is applied in a matrix display device in which overdrive is used. Thus, for example, if the particular sub-pixel has to increase its brightness with a large step, the overdrive will cause the drive data to take the maximum value instead of the not possible higher value. Said in other words, the drive data is clipped to the maximum value. And, even then the desired brightness will not be reached within one field period. The difference or error between the desired brightness and the brightness reached after one field period is known. This error can be compensated by causing one of the other sub-pixels to increase its brightness above its desired brightness.
In current overdrive methods, the RGB pixel values are treated equally and independent from each other. The clipping of one of the color components does not affect the other color components. Especially, in a display with a scanning or flashing backlight, the luminance error due to the clipping is very visible as a post-ghost: a ghost image that follows the moving object on the screen.
It has to be noted that US2002/0149574A1 discloses that a problem in active matrix display devices, for example TFT-LCD's or AM-LCD's which are used in video applications or digital monitors, is the occurrence of motion artifacts such as motion blur. A movement within the image is vaguely displayed because the liquid crystal material requires a minimal time to reach a given final state defined by the drive voltages. This is obviated by making use of a pulsed backlight system in which, within a frame period, the full image is first addressed and, after the last picture line has been addressed, the light source is caused to emit a short intense light pulse.
However, the pixels associated with the line addressed as the first have had a longer time to reach their final stable state than the lines addressed at a later stage. Therefore, a signal processor increases the range of (possible) drive voltages (for example, via the data voltages) across the pixels (increasing “overdrive”) in the sequence of driving the rows of pixels. Although the pixels of different rows receive different overdrives, it is not disclosed that when one of the sub-pixels is unable to reach its desired brightness within one frame that another one of the sub-pixels of the pixel produces a higher or lower brightness than required to compensate for the brightness error made.
In the embodiment in accordance with the invention as claimed in claim 2, the matrix display panel has pixels with at least three sub-pixels. Usually, these sub-pixels have the three primary colors red, green, and blue, respectively. Alternatively, the pixels may comprise other colors for the sub-pixels or more than three sub-pixels. For example, a well known display has four sub-pixels per pixel with the colors red, green, blue and white.
Now, if of one of the sub-pixels the end-value at the end of the present predetermined period is higher than the maximum value or lower than the minimum value, the drive of this sub-pixel is clipped. The clipping compensator calculates the error caused in the brightness of the pixel comprising this clipping sub-pixel and adapts the brightness of one or more of the other sub-pixel(s) to decrease the error. Preferably, if possible, the brightness of the other sub-pixel(s) is adapted to completely compensate for the brightness error of the clipping pixels. If this is possible, consequently, the pixel has the desired brightness at a color which may deviate from the desired color. Because the error may be minimized by changing the level of all the other sub-pixels, all minimally, the resultant color deviation may be minimized.
In an embodiment in accordance with the invention as claimed in claim 3, the predetermined period is the frame period or the line period. This simplifies the algorithm used.
In an embodiment in accordance with the invention as claimed in claim 4, the driver further comprises a frame memory which, in a particular frame period further referred to as the present frame period, receives the first input signal and supplies a previous first input signal of a previous frame preceding the present frame period.
The detector comprises a first limit value determination circuit which receives the previous first input signal to determine, starting from a level of the previous first input signal a first obtainable minimum level and a first obtainable maximum level. The first obtainable minimum level is the level which is obtainable by supplying the minimum level to the first sub-pixel. The first obtainable maximum level is the level which is obtainable by supplying the maximum level to the first sub-pixel. The second obtainable minimum or maximum level is the level which is obtainable by supplying the minimum or maximum level, respectively, to the second sub-pixel. Due to the inertia of the sub-pixels, the obtainable minimum and maximum levels at the end of the present frame period depend on the present level of the sub-pixels at the start of the present frame period.
The clipping compensator receives the first obtainable minimum level, the first obtainable maximum level, and the second input signal to supply the second drive signal If is detected that the first drive signal surpasses the maximum or the minimum level, thus if the first drive signal is clipped, the clipping compensator increases or decreases, respectively, the level of the second drive signal with respect to the level of the second input signal.
The only difference between the embodiment in accordance with the invention as claimed in claim 6 and the embodiment as claimed in claim 4 is that now the drive signals instead of the input signals are stored in the frame memory. This embodiment has the advantage that it takes into account the signals which are actually displayed on the matrix display instead of the input signals. Consequently, the prediction of the obtainable minimum and maximum values will be improved.
In the embodiments in accordance with the invention as claimed in claims 5 or 7, the driver comprises the overdrive circuit which is arranged to receive the drive signals and the signals stored in the frame memory to supply overdriven drive signals. Such an overdrive circuit is well known. The overdrive circuit may receive gamma corrected drive signals if a display gamma corrector is present.
In the embodiment in accordance with the invention as claimed in claim 8, the level of the second drive signal is adapted to obtain together with the level of the clipped first drive signal a brightness transition of the first and the second sub-pixels which together is substantially identical to the average of the desired brightness transition of the first and second sub-pixels together.
In the embodiment in accordance with the invention as claimed in claim 9, the driver further comprises a source gamma corrector which receives the obtainable minimum level and the obtainable maximum level to supply a source gamma corrected minimum level and a source gamma corrected maximum level to the clipping compensator. If the source video signal is gamma pre-corrected, the clipping compensation performance is not optimal because the signal values and brightness do not have a linear relation. Therefore, preferably, the input signals are source gamma corrected to obtain a linear relation between the corrected input signals and the brightness.
In the embodiment in accordance with the invention as claimed in claim 10, the drive signals are corrected in a display gamma corrector to obtain corrected drive signals fitting the gamma of the display panel.
In the embodiment in accordance with the invention as claimed in claim 11, the matrix display panel has pixels with at least three sub-pixels. Usually, these sub-pixels have the three primary colors red, green, and blue, respectively. Alternatively, the pixels may comprise more than three sub-pixels. For example, a well-known display has four sub-pixels per pixel with the colors red, green, blue and white.
Now, all the input signals are stored in the frame memory, and of all the input signals is determined what the obtainable minimal and maximal values are at the end of the frame period, starting from the value stored in the frame memory. If of one (or more) of the sub-pixels the end value at the end of the present frame period would have to be higher than the maximum value or lower than the minimum value, the drive of the sub-pixel is clipped. The clipping compensator calculates the error caused in the brightness of the pixel comprising this clipping sub-pixel and adapts the brightness of the other non-clipping sub-pixel(s) to decrease the error. Preferably, if possible, the brightness of the non-clipping sub-pixel(s) is adapted to completely compensate for the brightness error of the clipping pixels. If this is possible, consequently, the pixel has the desired brightness at a color which deviates from the desired color.
Alternatively the drive signals are stored in the memory to be used to determine the obtainable minimum and maximum values. The obtainable minimum and maximum values are now determined with a higher accuracy because the actual starting brightness level of the sub-pixels are used instead of the input signals.
These and other aspects of the invention are apparent from and will be elucidated with reference to the embodiments described hereinafter.
In the drawings:
The driver D comprises a select driver SD, a data driver DD, a data processor DP and a timing control circuit TC. The driver may be formed by one or more integrated circuits, or by one or more electronic modules comprising the one or more integrated circuits and optionally additional components. The signal processing circuitry converts an external input signal EIV to the format of the input video signal IV. The apparatus may be a television set, a monitor, a portable computer, a PDA or any other product with a display. The external input signal may be an antenna signal or any other signal from a video source, such as a computer or a DVD-player.
The data processor DP receives the input video signal IV which usually comprises the three input signals R, G, B which represent the colors red, green, and blue, respectively, and which together determine the brightness and color of the input video signal IV. It is assumed that these input signals R, G, B are digital signals of which the number of data pixels corresponds to the number of pixels Pk of the matrix display panel 1. If the video signal IV is an analog signal it has to be digitized first. If the number of data pixels is not equal to the number of pixels Pk a conversion has to be performed. Such a conversion usually is performed by a well known scaler. The data processor DP supplies drive signals Ra, Ga, Ba to the data driver DD.
The timing controller TC receives a horizontal synchronization signal Hs and a vertical synchronization signal Vs of the input video signal IV to supply a control signal CS1 to the data driver DD and a control signal CS2 to the select driver SD. The timing controller TC synchronizes the select driver SD and the data driver DD with the samples of the input video IV and also with respect to each other. The select driver SD supplies select signals Si (S1 to Sm) to the select electrodes SEi, usually to select the select electrodes SEi one by one. The data driver supplies the data signals Dj (D1 to Dn) via the data electrodes DEj to drive the sub-pixels SPij associated with the selected one of the select electrodes SEi.
The present frame period Tf starts at the instant t0 and ends at the instant t0′. During the preceding frame period Tfp, the last select electrode is selected by the pulse Sm occurring just before the instant t0. The data Dj supplied to this last select electrode is schematically indicated by a cross. The cross indicates that the different data levels of the different data signals D1 to Dn are supplied in parallel and thus overlap each other in
The next frame period Tfn starts at the instant t0′, the first select electrode is selected from instant t0′ to instant t1′ due to the select signal S1 which has a high level during the first select period Ts1′ of the next frame period Tfn. The second select electrode is selected from instant t1′ to instant t2′ due to the select signal S2 which has a high level during this second select period Ts2′ of the next frame period Tfn.
In
However, usually, the data signal is limited to a maximum value corresponding to a maximum voltage available to drive the sub-pixels SPij. In
The difference between the level DL1 and the level OL1 is referred to as the required overdrive ODR1. The difference between the maximum possible level MAL and the level OL1 required to reach the desired brightness at the instant Tf is referred to as ODS1. This part ODS1 of the drive cannot be realized because the data signal cannot have a value higher than its maximum value. The difference between the maximum possible level MAL and the desired level DL1 is indicated by OD1, and the difference between the starting level SV1 and the desired level DL1 is called the desired brightness transition BT1.
In
Again, the data signal is limited to a maximum value corresponding to a maximum voltage available to drive the sub-pixels SPij. In
The difference between the level DL2 and the level OL2 is referred to as the required overdrive OD2. The difference between the maximum possible level MAL and the level OL2 is referred to as ODR2. This difference ODR2 can be used to increase the brightness of the sub-pixel SP12. The difference between the level RL2 and the level OL2a is indicated by OD2a.
Although both
In the prior art, each sub-pixel SPij is processed in the same manner. Thus if one of the sub-pixels SPij of a pixel Pk is clipping, the total brightness of this pixel Pk is too high or too low at the end of the frame period Tf This causes blur of the moving parts of the image. The invention compensates the brightness deviation by changing the brightness of a non-clipping sub-pixel SPij of the pixel Pk. This causes a color of the pixel P which deviates from the desired color. But, it appeared that the color deviation is less visible than the blur caused by the brightness deviation.
The detection circuit LV1 receives minimum and maximum values MI and MA, the color component R, and the delayed color component Rp to supply the control signal CR. The control signal CR indicates, starting from the delayed color component value Rp and knowing that after the frame period Tf the color component value R is desired, whether the overdrive results in clipping to the minimum value MI or the maximum value MA. If so, it is known that the brightness of the red sub-pixel deviates at the end of the frame period Tf from the desired brightness.
The detection circuit LV2 receives the minimum and maximum values MI and MA, the color component G, and the delayed color component Gp to supply the control signal CG. The control signal CG indicates, starting from the delayed color component value Gp and knowing that after the frame period Tf the color component value G is required, whether the overdrive results in clipping to the minimum value MI or the maximum value MA. If so, the brightness of the green sub-pixel deviates at the end of the frame period from the desired brightness.
The detection circuit LV3 receives the minimum and maximum values MI and MA, the color component B, and the delayed color component Bp to supply the control signal CB. The control signal CB indicates, starting from the delayed color component value Bp and knowing that after the frame period Tf the color component value B is required, whether the overdrive results in clipping to the minimum value MI or the maximum value MA. If so, the brightness of the blue sub-pixel deviates at the end of the frame period from the desired brightness. The minimum value M and the maximum value MA may be the same for each color component, but may also differ per color component.
The control signals CR, CG, GB are supplied to a control circuit CO which generates the control signal CS. Preferably, if clipping occurs, the control signal CS comprises the information indicating the clipping border against which the clipping occurs and the error made by the clipping. Or, if no clipping occurs the room available with respect to the minimum and maximum possible drive levels before clipping will occur. The control signal CS determines the adapted color components Ra, Ga, Ba based on the color components R, G, B. For example, if is detected that the delayed color component Rp and the color component R have values such that, due to the overdrive, a value of the adapted color component Ra should be higher than the maximum value MA, this adapted color component Ra is clipped to the maximum value. This determination may be based on the use of the tables of
The circuit AC may digitally control the gain of the color components R, G, and B in a known manner, for example by multiplying the digital values of the color components R, G, B with a factor determined from the control signal CS. The control signal CS may comprise the multiplying factors. Instead of determining and applying the overdrive with the controller CO and the circuit AC, it is also possible to implement a prior art overdrive circuit which processes the adapted color signals Ra, Ga, and Ba. Instead of the color components R, G, B it is also possible to store the adapted color signals Ra, Ga, and Ba in the frame memory FM. This has the advantage that the values actually used to drive the sub-pixels SPij are also used to determine whether these values would fall below the minimum value MI or would surpass the maximum value MA.
A frame buffer FB stores the color component values R, G, B and supplies the previous color component values Rp, Gp, Bp representing the color component values of a previous frame.
The previous color component value Rp is supplied to a series arrangement of a function block Fr, a source gamma block Hr, and a digital multiplier Mr. The function block Fr outputs the minimum obtainable value Rmi during the current frame which is determined starting from the previous color component value Rp by supplying the minimum value, which is usually 0. The function block Fr further outputs the maximum obtainable value Rma which is determined starting from the previous color component value Rp by supplying the maximum value, which in a system with 8 bit data words is 255. This operation may be performed by using the table 1 of
The previous color component value Gp is supplied to a series arrangement of a function block Fg, a source gamma block Hg, and a digital multiplier Mg. The function block Fg outputs the minimum obtainable value Gmi which is determined starting from the previous color component value Gp by supplying the minimum value. The function block Fg further outputs the maximum obtainable value Gma which is determined starting from the previous color component value Gp by supplying the maximum value. The optional source gamma block Hg corrects for the source gamma which may have been applied to the source images to obtain minimum and maximum values gmi and gma which correspond linearly to the brightness of the sub-pixel SPij. The multiplier Mg multiplies the values gmi and gma with a factor β to obtain the corrected minimum and maximum values Gmin and Gmax.
The previous color component value Bp is supplied to a series arrangement of a function block Fb, a source gamma block Hb, and a digital multiplier Mb. The function block Fb outputs the minimum obtainable value Bmi which is determined starting from the previous color component value Bp by supplying the minimum value. The function block Fb further outputs the maximum obtainable value Bma which is determined starting from the previous color component value Bp by supplying the maximum value. The optional source gamma block Hb corrects for the source gamma which may have been applied to the source images to obtain minimum and maximum values bmi and bma which correspond linearly to the brightness of the sub-pixel SPij. The multiplier Mb multiplies the values bmi and bma with a factor γ to obtain the corrected minimum and maximum values Bmin and Bmax.
Usually, the luminance is defined by the equation Y=αR+βG+γB. Therefore, the multiplying with the factors α, β, and γ is performed to obtain the contributions of the color components values R, G, B to the luminance value Y.
The color component value R is further supplied to a series arrangement of an optional source gamma block Hr′ which has the same function as the source gamma block Hr, and to a multiplier Mr′ which has the same function as the multiplier Mr. This series arrangement supplies a corrected color component value R′.
The color component value G is further supplied to a series arrangement of an optional source gamma block Hg′ which has the same function as the source gamma block Hg, and to a multiplier Mg′ which has the same function as the multiplier Mg. This series arrangement supplies a corrected color component value G′.
The color component value B is further supplied to a series arrangement of an optional source gamma block Hb′ which has the same function as the source gamma block Hb, and to a multiplier Mb′ which has the same function as the multiplier Mb. This series arrangement supplies a corrected color component value B′.
The clipping compensator CC receives the corrected minimum values Rmin, Gmin, and Bmin, the corrected maximum values Rmax, Gmax, and Bmax, and the corrected color component values R′, G′ and B′ to generate the adapted color component values Ra, Ga, and Ba, respectively. The clipping compensator CC, for example, performs the algorithm elucidated with respect to
The adapted color component value Ra is supplied to a series arrangement of a multiplier Mir, an optional display gamma corrector Kr, and an overdrive circuit Or. The multiplier Mir multiplies the color component value Ra with a factor 1/α to supply the value Ra1. The display gamma corrector Kr receives the value Ra1 and supplies the value Ra2 which is corrected for the non-linear transfer function of the display panel 1. The overdrive circuit Or, which as such is well known, receives the value Ra2 and the previous color component value Rp to supply the red output signal Ra′ which is used to drive the red sub-pixel SPij. Optionally, if the source gamma correction Hr, Hr′ and/or the display gamma correction Kr is present in the other branches, the corresponding same gamma correction has to be present to convert the previous color component value Rp into a gamma corrected previous color component value Rpg which is supplied to the overdrive circuit Or.
The adapted color component value Ga is supplied to a series arrangement of a multiplier Mig, an optional display gamma corrector Kg, and an overdrive circuit Og. The multiplier Mig multiplies the color component value Ga with a factor 1/β to supply the value Ga1. The display gamma corrector Kg receives the value Ga1 and supplies the value Ga2 which is corrected for the non-linear transfer function of the display. The overdrive circuit Og receives the value Ga2 and the previous color component value Gp to supply the green output signal Ga′ which is used to drive the green sub-pixel SPij. Optionally, if the source gamma correction Hg and/or the display gamma correction Kg is present in the other branches, the corresponding same gamma correction has to be present to convert the previous color component value Gp into a gamma corrected previous color component value Gpg which is supplied to the overdrive circuit Og.
The adapted color component value Ba is supplied to a series arrangement of a multiplier Mib, an optional display gamma corrector Kb, and an overdrive circuit Ob. The multiplier Mib multiplies the color component value Ba with a factor 1/γ to supply the value Ba1. The display gamma corrector Kb receives the value Ba1 and supplies the value Ba2 which is corrected for the non-linear transfer function of the display. The overdrive circuit Ob receives the value Ba2 and the previous color component value Bp to supply the blue output signal Ba′ which is used to drive the blue sub-pixel SPij. Optionally, if the source gamma correction Hb and/or the display gamma correction Kb is present in the other branches, the corresponding same gamma correction has to be present to convert the previous color component value Bp into a gamma corrected previous color component value Bpg which is supplied to the overdrive circuit Ob.
The multipliers Mir, Mig, and Mib change the linear light values into brightness values according to the luminance Y which is Y=αR+βG+γB.
In step S1, the values of the color components R, G, B are received and the minimum values Rmin, Gmin, Bmin, and the maximum values Rmax, Gmax, Bmax are determined from the previous values of the color components Rp, Gp, Bp, which are the values of the color components R, G, B of the previous frame. The minimum values Rmin, Gmin, Bmin can be found in table 1 (
In step S2, the adapted color component values Ra, Ga, and Ba are preset to the values of the color components R, G, B. If none of the color components R, G, B is expected to clip, the adapted component values Ra, Ga, Ba should have the values of the color components R, G, B.
In step S3, it is checked whether the adapted color component value Ra (which in the previous step was made equal to the value of R) is in between the minimum value Rmin and the maximum value Rmax, whether the adapted color component value Ga is in between the minimum value Gmin and the maximum value Gmax, and whether the adapted color component value Ba is in between the minimum value Bmin and the maximum value Bmax. If all these conditions are true, none of the drive values Ra, Ga, Ba is expected to clip, and no adaptation of the values of the color components R, G, B is required. Therefore, in step S18 the values Ra, Ga, and Ba which are identical to the values of the color components R, G, B are outputted to the display panel 1, usually via the data driver DD. If one of these conditions is false, at least one of the color clips and the algorithm proceeds with step S4.
In step S4 the following situations are detected and the mentioned actions are taken. If the value of R is higher than Rmax, a variable Er is set to the difference R−Rmax. If the value of R is lower than Rmin, the variable Er is set to the difference R−Rmin. This difference Er is an indication for the brightness error made by clipping the red color component, and can be used to correct the brightness of the other sub-pixels SPij of the pixel Pk. For all other values of R, the variable Er is set to zero. If no clipping occurs, no brightness error will be made and no brightness correction in the other sub-pixels SPij of the pixel Pk is required. If the value of G is higher than Gmax, a variable Eg is set to the difference G−Gmax. If the value of G is lower than Gmin, the variable Eg is set to the difference G−Gmin. For all other values of G, the variable Eg is set to zero. If the value of B is higher than Bmax, a variable Eb is set to the difference B−Bmax. If the value of B is lower than Bmin, the variable Eb is set to the difference B−Bmin. For all other values of B, the variable Eb is set to zero.
In step S5, the value of Ra is set to the difference R−Er, the value of Ga is set to the sum G+0.5 Er, and the value of Ba is set to B+0.5 Er. Thus, if the red color clips, the brightness deviation of the pixel Pk involved is corrected by adapting the brightness of the two other sub-pixels SPij of the pixel Pk, each with half the error Er. This only works if after the correction none of the two corrected values Ga and Ba clip. The algorithm may be made much more complex. The amounts of correcting the blue color component B and the green color component G may be different. Different amounts of correction may be relevant if a particular color deviation is preferred to minimize the visibility of the color deviation. Different amounts of correction may be required if the correction of one of the color components G or B causes clipping while the other one may be corrected more before clipping occurs.
In step S6, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in the red channel, and no clipping is introduced by correcting the other colors. The values found in step S5 will be outputted in step S18. If at least one of the conditions is false, it was either not the red channel which was clipping, or one of the corrected colors is now clipping.
In step S7, the value of Ga is set to the difference G−Eg, the value of Ra is set to the sum R+0.5 Eg, and the value of Ba is set to B+0.5 Eg. Thus, if the green color clips, the brightness deviation of the pixel Pk involved is corrected by adapting the brightness of the two other sub-pixels SPij of the pixel Pk. This only works if after the correction none of the two corrected values Ra and Ba clip. Again, other algorithms are possible taking the resulting color deviation and/or clipping of the other sub-pixels SPij into account.
In step S8, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in the green channel, and no clipping is introduced by correcting the other colors. The values found in step S7 will be outputted in step S 18. If at least one of the conditions is false, it was either not the green channel which was clipping, or one of the corrected colors is now clipping.
In step S9, the value of Ba is set to the difference B−Eb, the value of Ra is set to the sum R+0.5 Eb, and the value of Ga is set to G+0.5 Eb. Thus, if the blue color clips, the brightness deviation of the pixel Pk involved is corrected by adapting the brightness of the two other sub-pixels SPij of the pixel Pk. This only works if after the correction none of the two corrected values Ra and Ga clip. Again, other algorithms are possible taking the resulting color deviation and/or clipping of the other sub-pixels SPij into account.
In step S10, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in the blue channel, and no clipping is introduced by correcting the other colors. The values found in step S9 will be outputted in step S18. If at least one of the conditions is false, it was either not the blue channel which was clipping, or one of the corrected colors is now clipping.
In step S11, the value of Ra is set to the difference R−Er, the value of Ga is set to the difference G−Eg, and the value of Ba is set to G+Er+Eg. This would be the correct compensation if both the red and the green channel are clipping. The compensation is only perfect if after the correction the blue channel does not clip.
In step S12, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in both the red and the green channel, and no clipping is introduced by correcting the blue color. The values found in step S11 will be outputted in step S18. If at least one of the conditions is false, it were either not the red and green channels which were clipping, or now the blue channel is clipping. Again, other algorithms are possible, it may be accepted that it is not possible to completely compensate the brightness in the blue channel for the brightness error made in both the red and the green channel.
In step S13, the value of Ra is set to the difference R−Er, the value of Ga is set to the sum G+Er+Eb, and the value of Ba is set to the difference B−Eb. This would be the correct compensation if both the red and the blue channel are clipping. The compensation is only perfect if after the correction the green channel does not clip. Again, it would be possible to accept a partly compensation.
In step S14, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in both the red and the blue channel, and no clipping is introduced by correcting the green color. The values found in step S13 will be outputted in step S18. If at least one of the conditions is false, it were either not the red and blue channels which were clipping, or now the green channel is clipping.
In step S15, the value of Ra is set to R+Eg+Eb, the value of Ga is set to G−Eb, and the value of Ba is set to the difference B−Eb. This would be the correct compensation if both the green and the blue channel are clipping. The compensation is only perfect if after the correction the red channel does not clip. Again, it would be possible to accept a partly compensation.
In step S16, the same checks are performed as in step S3. If now none of the colors clip, indeed the clipping occurred in both the green and the blue channel, and no clipping is introduced by correcting the red color. The values found in step S15 will be outputted in step S18. If at least one of the conditions is false, all three colors were clipping or an optimal correction is not possible. Now, in step S17 the value of Ra is set to R−Er, the value of Ga is set to G−Eg, and the value of Ba is set to B−Eb.
It is clear that the above algorithm may be altered without departing from the invention. For example the condition whether a previous color component value Rp is within the range of the values Rmin and Rmax may be checked for each color separately. Then dependent on the situation detected, the required clipping compensation can be determined. It is also possible to correct the brightness error made due to the clipping error of the clipping sub-pixels SPij by correcting the levels of the other sub-pixels with different amounts. However, preferably, the error is spread evenly over the other colors to obtain a minimal color deviation. But this might not always possible if one if the other colors clips due to the correction.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims.
In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. Use of the verb “comprise” and its conjugations does not exclude the presence of elements or steps other than those stated in a claim. The article “a” or “an” preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the device claim enumerating several means, several of these means may be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.
Number | Date | Country | Kind |
---|---|---|---|
04101361.6 | Apr 2004 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/IB05/51036 | 3/25/2005 | WO | 9/28/2006 |