IP Library › Granted Patent US 10,999,601
Granted Patent B2
US 10,999,601 · App. 16/434,832 · Granted May 4, 2021

Line-based compression for digital image data

Inventors: Ying Chen (West Lafayette, IN); Madhukar Budagavi (Plano, TX); Minhua Zhou (San Diego, CA)
Assignee: TEXAS INSTRUMENTS INCORPORATED
H04N19/593H04N19/11H04N19/124H04N19/13H04N19/146H04N19/15H04N19/159H04N19/174H04N19/182H04N19/423H04N19/43H04N19/61H04N19/86
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,999,601
App. No.
16/434,832
Granted
May 4, 2021
Kind
B2
Abstract

A method of compressing digital image data is provided that includes selecting an entropy code for encoding a line of pixels in the digital image data, wherein the entropy code is selected from a plurality of variable length entropy codes, using spatial prediction to compute a pixel predictor and a pixel residual for a pixel in the line of pixels, and selectively encoding the pixel residual using one of the entropy code or run mode encoding.

Claims (46)

1. A method comprising:

computing a minimum absolute sample difference (MASD) for a pixel in a line of pixels based on differences between different combinations of neighboring pixels of the pixel, wherein the neighboring pixels comprise a left neighboring pixel in the line of pixels, a top left neighboring pixel in a previous line of pixels, and a top neighboring pixel in the previous line of pixels, and wherein the smallest of the differences between the different combinations of the neighboring pixels of the pixel is selected as the MASD for the pixel; and

in response to the MASD for the pixel being below a threshold, encoding the pixel using variable length coding.

2. The method of claim 1 , further comprising in response to the MASD for the pixel being above a threshold, encoding the pixel using fixed length coding.

3. The method of claim 1 , comprising:

determining the threshold using a quantization parameter; and

computing a prediction error based on the MASD;

quantizing the prediction error based on the quantization parameter.

4. The method of claim 1 , further comprising:

counting a number of bits required for encoding a previous line of pixels using each of a plurality of variable length entropy codes as the previous line is encoded; and

selecting a variable length entropy code for the variable length coding that requires a least number of bits.

5. The method of claim 3 , wherein quantizing the prediction error based on the quantization parameter comprises quantizing the prediction error using a linear quantization based on the quantization parameter.

6. The method of claim 1 , wherein a variable length code used for the variable length coding is a signed exponential-Golomb code.

7. The method of claim 1 , wherein the computing step and the encoding step are performed independently for each color component of the pixel.

8. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

compute a minimum absolute sample difference (MASD) for a pixel in a line of pixels based on differences between different combinations of neighboring pixels of the pixel, wherein the neighboring pixels comprise a left neighboring pixel in the line of pixels, a top left neighboring pixel in a previous line of pixels, and a top neighboring pixel in the previous line of pixels, and wherein the smallest of the differences between the different combinations of the neighboring pixels of the pixel is selected as the MASD for the pixel; and

in response to the MASD for the pixel being below a threshold, encode the pixel using variable length coding.

9. The media of claim 8 , wherein the software is further operable when executed to:

in response to the MASD being above a threshold, encoding the pixel using fixed length coding.

10. The media of claim 8 , wherein the software is further operable when executed to:

count a number of bits required for encoding the line of pixels using each of a plurality of variable length entropy codes; and

select a variable length entropy code for the variable length coding that requires a least number of bits.

11. The media of claim 8 , wherein the software is further operable when executed to:

count a number of bits required for encoding a previous line of pixels using each of a plurality of variable length entropy codes as the previous line is encoded; and

select a variable length entropy code for the variable length coding that requires a least number of bits.

12. The media of claim 8 , wherein the software is further operable when executed to:

determine the threshold using a quantization parameter;

compute a prediction error based on the MASD; and

quantize the prediction error based on the quantization parameter.

13. The media of claim 12 , wherein quantizing the prediction error based on the quantization parameter comprises quantizing the prediction error using a linear quantization based on the quantization parameter.

14. A system comprising: one or more processors; and a memory coupled to the processors comprising instructions executable by the processors, the processors being operable when executing the instructions to:

compute a minimum absolute sample difference (MASD) for a pixel in a line of pixels based on differences between different combinations of neighboring pixels of the pixel, wherein the neighboring pixels comprise a left neighboring pixel in the line of pixels, a top left neighboring pixel in a previous line of pixels, and a top neighboring pixel in the previous line of pixels, and wherein the smallest of the differences between the different combinations of the neighboring pixels of the pixel is selected as the MASD for the pixel; and

in response to the MASD for the pixel being below a threshold, encode the pixel using variable length coding.

15. The system of claim 14 , wherein the processors are further operable when executing the instructions to:

in response to the MASD for the pixel being above a threshold, encode the pixel using fixed length coding.

16. The system of claim 14 , wherein the processors are further operable when executing the instructions to:

count a number of bits required for encoding the line of pixels using each of a plurality of variable length entropy codes; and

select a variable length entropy code for the variable length coding that requires a least number of bits.

17. The system of claim 14 , wherein the processors are further operable when executing the instructions to:

count a number of bits required for encoding a previous line of pixels using each of a plurality of variable length entropy codes as the previous line is encoded; and

select a variable length entropy code for the variable length coding that requires a least number of bits.

18. The system of claim 14 , wherein the processors are further operable when executing the instructions to:

determining the threshold using a quantization parameter; and

computing a prediction error based on the MASD;

quantizing the prediction error based on the quantization parameter.

19. The system of claim 18 , wherein quantizing the prediction error based on the quantization parameter comprises quantizing the prediction error using a linear quantization based on the quantization parameter.

Continuity (4)
Continuation 15357759 · Nov 21, 2016
Division 14199558 · Mar 6, 2014
Division 12572408 · Oct 2, 2009
Related Publication 20190289325A1 · Sep 19, 2019