Color transform for RGBG subpixel format
10861405 ยท 2020-12-08
Assignee
Inventors
Cpc classification
G09G2340/02
PHYSICS
G09G3/3607
PHYSICS
G09G2300/0452
PHYSICS
International classification
Abstract
A method for directly converting Y.sub.0Y.sub.1CoCg or Y.sub.0Y.sub.1C.sub.bC.sub.r image data to RGBG image data is presented, along with a display device that includes a decoder configured to perform such conversion. The conversions may be performed as follows:
Claims
1. A method of displaying an RGBG-formatted image data, comprising: receiving, from a display driver, input image data in Y.sub.0Y.sub.1CoCg format; decoding the received input image data by applying the inverse-color transform as follows to generate a reconstructed image: determining a R value using Y.sub.0, Y.sub.1, Co, and Cg; determining a G.sub.0 value using Y.sub.0, Y.sub.1, and no more than one of Cg and Co; determining a B value using Y.sub.0, Y.sub.1, Co, and Cg; and determining a G.sub.1 value using Y.sub.0, Y.sub.1, and no more than one of Cg and Co; and providing the reconstructed image to a display device.
2. The method of claim 1, wherein the decoding is done as follows:
3. A method of displaying an RGBG-formatted image data, comprising: receiving, from a display driver, input image data in Y.sub.0Y.sub.1CbCr format; decoding the received input image data by applying the inverse-color transform as follows to generate a reconstructed image:
4. A method for color transform of an RGBG format image data, comprising: receiving the RGBG-format image data at a display driver, the RGBG-format image data including a red value (R), a blue value (B), a first green value (G.sub.0), and a second green value (G.sub.1); generating a double-luma format image data by: determining a first luma value based on R, B, and half of one of G.sub.0 or G.sub.1; determining a second luma value based on R, B, and half of the other one of G.sub.0 or G.sub.1; determining a first chroma value; and determining a second chroma value; and forwarding the double-luma format image data to be reconstructed and displayed on a device having a RGBG pixel layout.
5. The method of claim 4, wherein the first chroma value is a chroma orange value, further comprising determining the chroma orange value based on R and B but not G.sub.0 or G.sub.1.
6. The method of claim 4, wherein the second chroma value is a chroma green value, further comprising determining the chroma green value based on R, B, G.sub.0, and G.sub.1.
7. The method of claim 4, wherein the determining of the first luma value Y.sub.0, the second luma value Y.sub.1, the first chroma value Co, and the second chroma value Cg are done according to the following:
8. The method of claim 4, wherein the first luma value, the second luma value, the first chroma value, and the second chroma value are applied to one basic unit.
9. The method of claim 4, further comprising conducting an inverse transform as follows:
10. The method of claim 4, wherein the first chroma value is a chroma blue value, further comprising determining the chroma blue value based on G.sub.0, B, and G.sub.1 but not R.
11. The method of claim 4, wherein the second chroma value is a chroma red value, further comprising determining the chroma red value based on G.sub.0, and G.sub.1 but not B.
12. The method of claim 4, wherein the determining of the first luma value Y.sub.0, the second luma value Y.sub.1, the first chroma value Cb, and the second chroma value Cr are done according to the following:
13. The method of claim 4, further comprising achieving an inverse transform as follows:
14. The method of claim 4, wherein: the first luma value is equal to R/4+G.sub.0/2+B/4+(G.sub.1*0) ; and the second luma value is equal to R/4+(G.sub.0*0)+B/4+G.sub.1/2 .
15. A display device comprising: a memory configured to receive a Y.sub.0Y.sub.1CoCg input image data from a display driver and temporarily store the Y.sub.0Y.sub.1CoCg formatted image data that is subjected to a color transform; and a decoder that converts the Y.sub.0Y.sub.1CoCg formatted image data to a reconstructed RG.sub.0BG.sub.1 formatted image data by: determining an R value using Y.sub.0, Y.sub.1, Co, and Cg; determining a G.sub.0 value using Y.sub.0, Y.sub.1, and no more than one of Cg and Co; determining a B value using Y.sub.0, Y.sub.1, Co, and Cg; and determining a G.sub.1 value using Y.sub.0, Y.sub.1, and no more than one of Cg and Co; and a display panel displaying the reconstructed RG.sub.0BG.sub.1 formatted image data.
16. The display device of claim 15, wherein the decoder converts the Y.sub.0Y.sub.1CoCg formatted image data to RG.sub.0BG.sub.1 formatted image data as follows:
17. The display device of claim 15, wherein the Y.sub.0Y.sub.1C.sub.oC.sub.g formatted image data is encoded as follows:
18. A display device comprising: a memory configured to receive a Y.sub.0Y.sub.1CbCr input image data from a display driver and temporarily store a Y.sub.0Y.sub.1CbCr formatted image data that was subjected to a color transform; and a decoder that converts the Y.sub.0Y.sub.1CbCr formatted image data to RG.sub.0BG.sub.1 formatted image data as follows to generate a reconstructed image:
19. The display device of claim 18, wherein the Y.sub.0Y.sub.1CbCr formatted image data is encoded as follows:
20. A non-transitory computer-readable storage medium comprising instructions that, when executed, receive image data in Y.sub.0Y.sub.1CoCg format from a display driver; convert the image data in Y.sub.0Y.sub.1CoCg format to image data in RG.sub.0BG.sub.1 format as follows to generate a reconstructed image:
21. A non-transitory computer-readable storage medium comprising instructions that, when executed, receive image data in Y.sub.0Y.sub.1CbCr format from a display driver; convert the image data in Y.sub.0Y.sub.1CbCr format to image data in RG.sub.0BG.sub.1 format as follows to generate a reconstructed image:
Description
DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION
(10) A method for a color transform applicable to RGBG format is presented. More specifically, a double-luma Y.sub.0Y.sub.1CoCg color transform and Y.sub.0Y.sub.1CbCr for RGBG format is presented. The inventive concept encompasses a direct transform applicable to RGBG, which is distinguishable from a two-step transform that involves first converting RGBG to an intermediate format such as RGB format and then applying a color transform such as YCoCg or YCbCr. In a two-step transform approach, RGBG to RGB conversion may be executed by setting unknown sub-pixels to zero or calculating based on interpolation. Conversion from RGBG to RGB increases the number of pixels by , and adversely impacts compression efficiency as there are more pixels to compress in RGB than in RGBG. The two-step transform approach also involves unnecessary computation that may be costly, and has latency or delay due to the intermediate RGBG to RGB format conversion. The direct color transform for RGBG that is disclosed herein overcomes these disadvantages associated with the two-step transform approach, thereby fundamentally changing the RGBG color transform process and dramatically improving the efficiency of the color transform. Furthermore, the direct color transform for RGBG that is disclosed herein is applicable to different formats/layouts of RGBG as long as a basic unit can be formed.
(11) The technique disclosed herein does not require an intermediate RGBG to RGB conversion. The direct Y.sub.0Y.sub.1CoCg color transform that is disclosed herein is easier to implement than the conventional transform because there are no floating-point calculations. As there are no division operations, the transform technique disclosed herein is hardware friendly.
(12)
(13) In one embodiment, the Decoder and the Inverse color transform blocks are incorporated into a display device, which receives a color-transformed encoded input image data. The input image data may be large. If the display device is high-resolution and it is combined with high bit depth (e.g., a 4K or 8K display panel combined with bit depth of 10 or 12 bits per component), the image data would have to be fed at a high bit-rate that may be difficult to achieve due to bandwidth limitations. In such cases, compression of the data facilitates the data feed to happen at a reduced rate that further translates into minimum power consumption. The display driver configuration that is suitable for implementing the inventive concept is well known.
(14) The color transform is performed before compression such that each component in Y.sub.0Y.sub.1CoCg, Y.sub.0Y.sub.1CbCr, YCoCg, or YCbCr is compressed independently. In the example shown in
(15) For an RGB layout, popular color transforms include YCbCr and YCoCg, wherein Y=luma,
(16) Cb=chroma blue,
(17) Cr=chroma red,
(18) Co=chroma orange, and
(19) Cg=chroma green.
(20) YCoCg color transform, shown below, is generally computationally simpler than YCbCr transform:
(21)
(22) In accordance with the inventive concept, a Y.sub.0Y.sub.1CoCg color transform is proposed to be applied directly to each basic unit of the RGBG format, i.e. without a conversion to the RGB format. The Y.sub.0Y.sub.1CoCg color transform is applied to each basic unit. A basic unit for an RGBG format contains two G, one R, and one B sub-pixels.
(23) The forward transform for RGBG is as follows:
(24)
wherein is a scaling factor or a constant, such as 1 or 2. As shown above, the first luma value Y.sub.0 is dependent on R, G.sub.0, and B sub-pixels. The second luma value Y.sub.1 is dependent on R, B, and G.sub.1. Chroma orange Co depends on R and B, and chroma green Cg depends on R, G.sub.0, B, and G.sub.1.
(25) The color transform may be mathematically lossless to avoid artifacts introduced in the reconstructed image due to color transformation. This is a lossless process, and the inverse transform is as follows:
(26)
(27)
(28) The double-luma Y.sub.0Y.sub.1CoCg color transform in accordance with the inventive concept distinguishes itself from YCoCg compression. For compressing YCoCg data, the general practice is to put more compression effort into chroma (Co, Cg) than to luma (Y), as the human vision is more sensitive to the luma than chroma On a similar note, for compressing the Y.sub.0Y.sub.1CoCg data, more focus may be put on the two luma channels than on the chroma channels (Co, Cg).
(29) The techniques disclosed herein may be applied to any Reversible Color Transform (RCT), such as Y.sub.0Y.sub.1CbCr transform. The forward transform for Y.sub.0Y.sub.1CbCr is as follows:
(30)
wherein is a constant.
(31) As this is a lossless process, the inverse transform is as follows:
(32)
(33) In the Y.sub.0Y.sub.1CbCr transform, Y.sub.0 depends on R, G.sub.0, and B and Y1 depends on R, B, and G.sub.1, similarly to the Y.sub.0Y.sub.1CoCg transform shown above. Cb depends on G.sub.0, B, and G.sub.1 but not on R, and Cr depends on R, G.sub.0, and G.sub.1 but not on B.
(34)
(35) As illustrated in
(36) The output of the buffer 17, after having been decompressed, may be sent to the column drivers inside the column driver bank 14. The data is transferred to the outputs of the column drivers in order to drive the display panel 16.
(37) The inventive concept disclosed herein improves the efficiency of compression, which is done to represent the same image data with fewer bits. The method disclosed herein is hardware-friendly, as no floating point calculations are needed. Furthermore, by avoiding the intermediate conversion of RGBG to RGB as mentioned above, any latency or delay is reduced.
(38) While the embodiments are described in terms of a method or technique, it should be understood that the disclosure may also cover an article of manufacture that includes a non-transitory computer readable medium on which computer-readable instructions for carrying out embodiments of the method are stored. The computer readable medium may include, for example, semiconductor, magnetic, opto-magnetic, optical, or other forms of computer readable medium for storing computer readable code. Further, the disclosure may also cover apparatuses for practicing embodiments of the inventive concept disclosed herein. Such apparatus may include circuits, dedicated and/or programmable, to carry out operations pertaining to embodiments.
(39) Examples of such apparatus include a general purpose computer and/or a dedicated computing device when appropriately programmed and may include a combination of a computer/computing device and dedicated/programmable hardware circuits (such as electrical, mechanical, and/or optical circuits) adapted for the various operations pertaining to the embodiments.
(40) It should be understood that the inventive concept can be practiced with modification and alteration within the spirit and scope of the disclosure. Furthermore, the inventive concept may be applied to the cases where compression is done using codecs not explicitly mentioned herein, such as DSC or VDC-M. The description is not intended to be exhaustive or to limit the inventive concept to the precise form disclosed.