IP Library Granted Patent US 10,198,991
Granted Patent B2
US 10,198,991 · App. 15/683,606 · Granted Feb 5, 2019

Compression techniques for burn-in statistics of organic light emitting diode (OLED) displays

Inventors: Lars M. Lindberg (Bjaerred, SE); Ali Sazegari (Cupertino, CA)
Assignee: Apple Inc.
G09G3/3233G09G2320/0233G09G2320/046G09G2320/0626
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,198,991
App. No.
15/683,606
Granted
Feb 5, 2019
Kind
B2
Abstract

Disclosed herein are techniques for pre-processing image data for compression, e.g., image data that represents burn-in statistics for a display device. The techniques can involve receiving the image data, where the image data comprises a plurality of pixels, and each pixel of the plurality of pixels comprises at least two sub-pixel values. Next, each pixel of the plurality of pixels is quantized to produce a plurality of modified pixels. Subsequently, a series of operations are performed against each modified pixel of the plurality of modified pixels, including (1) applying an invertible transformation against the modified pixel, (2) applying a predictive coding against the modified pixel, and (3) applying an encoding of the modified pixel into a buffer as a data stream. The buffer is then compressed (as the modified pixels are serially encoded into the buffer) to produce compressed outputs that are joined together to produce a compressed image.

Claims (76)

1. A method for pre-processing image data for compression, the method comprising, at a computing device:

receiving the image data, wherein the image data comprises a plurality of pixels, and each pixel of the plurality of pixels comprises at least two sub-pixel values;

quantizing, for each pixel of the plurality of pixels, the at least two sub-pixel values to produce a plurality of modified pixels; and

for each modified pixel of the plurality of modified pixels:

applying an invertible transformation to the at least two sub-pixel values for the modified pixel to produce an equal number of transformed sub-pixel values,

applying a predictive coding to at least one of the transformed sub-pixel values of the modified pixel, wherein applying the predictive coding involves establishing a differential value by subtracting a corresponding and previously-processed sub-pixel value from the at least one of the transformed sub-pixel values,

encoding the differential value into two corresponding bytes,

encoding each of the other transformed sub-pixel values different from the at least one of the transformed sub-pixel values into respective two corresponding bytes,

serially storing the corresponding bytes as a data stream into a buffer, and compressing the data stream in the buffer.

2. The method of claim 1 , wherein the at least two sub-pixel values include a blue sub-pixel value and a red sub-pixel value, and applying the invertible transformation comprises:

subtracting the blue sub-pixel value from the red sub-pixel value to produce a difference, and

replacing the blue sub-pixel value with the difference.

3. The method of claim 1 , wherein the at least two sub-pixel values include a first green sub-pixel value and a second green sub-pixel value, and applying the invertible transformation comprises:

subtracting the second green sub-pixel value from the first green sub-pixel value to produce a difference, and

replacing the second green sub-pixel value with the difference.

4. The method of claim 1 , wherein corresponding sub-pixel values of the plurality of pixels are quantized using a different quantizer.

5. The method of claim 1 , wherein:

the differential value is comprised of sixteen bits, wherein one bit of the sixteen bits is a sign bit, and fifteen of the sixteen bits are magnitude bits, and

encoding the differential value into two corresponding bytes comprises:

placing, into a first byte of the two corresponding bytes, seven of the least significant bits of the magnitude bits, followed by the sign bit, and

placing, into a second byte of the two corresponding bytes, eight of the most significant bits of the magnitude bits.

6. The method of claim 5 , wherein serially storing the corresponding bytes as the data stream into the buffer comprises:

serially placing the first bytes of each of the two corresponding bytes into a leading position within data stream, and

serially placing the second bytes of each of the two corresponding bytes into a trailing position within the data stream.

7. The method of claim 1 , wherein compressing the data stream in the buffer produces a compressed output, and the compressed outputs for each modified pixel of the plurality of modified pixels are combined together to produce a compressed image.

8. A non-transitory computer readable storage medium configured to store instructions that, when executed by a processor included in a computing device, cause the computing device to pre-process image data for compression, by carrying out steps that include:

receiving the image data, wherein the image data comprises a plurality of pixels, and each pixel of the plurality of pixels comprises at least two sub-pixel values;

quantizing, for each pixel of the plurality of pixels, the at least two sub-pixel values to produce a plurality of modified pixels; and

for each modified pixel of the plurality of modified pixels:

applying an invertible transformation to the at least two sub-pixel values for the modified pixel to produce an equal number of transformed sub-pixel values,

applying a predictive coding to at least one of the transformed sub-pixel values of the modified pixel, wherein applying the predictive coding involves establishing a differential value by subtracting a corresponding and previously-processed sub-pixel value from the at least one of the transformed sub-pixel values,

encoding the differential value into two corresponding bytes,

encoding each of the other transformed sub-pixel values different from the at least one of the transformed sub-pixel values into respective two corresponding bytes,

serially storing the corresponding bytes as a data stream into a buffer, and compressing the data stream in the buffer.

9. The non-transitory computer readable storage medium of claim 8 , wherein the at least two sub-pixel values include a blue sub-pixel value and a red sub-pixel value, and applying the invertible transformation comprises:

subtracting the blue sub-pixel value from the red sub-pixel value to produce a difference, and

replacing the blue sub-pixel value with the difference.

10. The non-transitory computer readable storage medium of claim 8 , wherein the at least two sub-pixel values include a first green sub-pixel value and a second green sub-pixel value, and applying the invertible transformation comprises:

subtracting the second green sub-pixel value from the first green sub-pixel value to produce a difference, and

replacing the second green sub-pixel value with the difference.

11. The non-transitory computer readable storage medium of claim 8 , wherein corresponding sub-pixel values of the plurality of pixels are quantized using a different quantizer.

12. The non-transitory computer readable storage medium of claim 8 , wherein:

the differential value is comprised of sixteen bits, wherein one bit of the sixteen bits is a sign bit, and fifteen of the sixteen bits are magnitude bits, and

encoding the differential value into two corresponding bytes comprises:

placing, into a first byte of the two corresponding bytes, seven of the least significant bits of the magnitude bits, followed by the sign bit, and

placing, into a second byte of the two corresponding bytes, eight of the most significant bits of the magnitude bits.

13. The non-transitory computer readable storage medium of claim 12 , wherein serially storing the corresponding bytes as the data stream into the buffer comprises:

serially placing the first bytes of each of the two corresponding bytes into a leading position within data stream, and

serially placing the second bytes of each of the two corresponding bytes into a trailing position within the data stream.

14. The non-transitory computer readable storage medium of claim 8 , wherein compressing the data stream in the buffer produces a compressed output, and the compressed outputs for each modified pixel of the plurality of modified pixels are combined together to produce a compressed image.

15. A computing device configured to pre-process image data for compression, the computing device comprising:

a processor; and

a memory configured to store instructions that, when executed by the processor, cause the computing device to:

receive the image data, wherein the image data comprises a plurality of pixels, and each pixel of the plurality of pixels comprises at least two sub-pixel values;

quantize, for each pixel of the plurality of pixels, the at least two sub-pixel values to produce a plurality of modified pixels; and

for each modified pixel of the plurality of modified pixels:

apply an invertible transformation to the at least two sub-pixel values for the modified pixel to produce an equal number of transformed sub-pixel values,

apply a predictive coding to at least one of the transformed sub-pixel values of the modified pixel, wherein applying the predictive coding involves establishing a differential value by subtracting a corresponding and previously-processed sub-pixel value from the at least one of the transformed sub-pixel values,

encode the differential value into two corresponding bytes,

encode each of the other transformed sub-pixel values different from the at least one of the transformed sub-pixel values into respective two corresponding bytes,

serially store the corresponding bytes as a data stream into a buffer, and compress the data stream in the buffer.

16. The computing device of claim 15 , wherein the at least two sub-pixel values include a blue sub-pixel value and a red sub-pixel value, and applying the invertible transformation comprises:

subtracting the blue sub-pixel value from the red sub-pixel value to produce a difference, and

replacing the blue sub-pixel value with the difference.

17. The computing device of claim 15 , wherein the at least two sub-pixel values include a first green sub-pixel value and a second green sub-pixel value, and applying the invertible transformation comprises:

subtracting the second green sub-pixel value from the first green sub-pixel value to produce a difference, and

replacing the second green sub-pixel value with the difference.

18. The computing device of claim 15 , wherein:

the differential value is comprised of sixteen bits, wherein one bit of the sixteen bits is a sign bit, and fifteen of the sixteen bits are magnitude bits, and

encoding the differential value into two corresponding bytes comprises:

placing, into a first byte of the two corresponding bytes, seven of the least significant bits of the magnitude bits, followed by the sign bit, and

placing, into a second byte of the two corresponding bytes, eight of the most significant bits of the magnitude bits.

19. The computing device of claim 18 , wherein serially storing the corresponding bytes as the data stream into the buffer comprises:

serially placing the first bytes of each of the two corresponding bytes into a leading position within data stream, and

serially placing the second bytes of each of the two corresponding bytes into a trailing position within the data stream.

20. The computing device of claim 15 , wherein compressing the data stream in the buffer produces a compressed output, and the compressed outputs for each modified pixel of the plurality of modified pixels are combined together to produce a compressed image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2017
From: LINDBERG, LARS M.; SAZEGARI, ALI
To: APPLE INC.
Reel/Frame 043359/0955 →
Continuity (2)
Provisional Application 62465093 · Feb 28, 2017
Related Publication 20180247589A1 · Aug 30, 2018