IP Library › Granted Patent US 11,758,184
Granted Patent B2
US 11,758,184 · App. 17/220,444 · Granted Sep 12, 2023

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 11,758,184
App. No.
17/220,444
Granted
Sep 12, 2023
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 (63)

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 a minimum difference of the differences between the different combinations of the neighboring pixels of the pixel is selected as the MASD for the pixel, wherein one of the neighboring pixels is not positioned in a same row or same column as 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 , wherein:

a first neighboring pixel is adjacent to the pixel and in the line of pixels;

a second neighboring pixel is adjacent to the pixel and in a previous line of pixels; and

a third neighboring pixel is adjacent to the second neighboring pixel and in the previous line of pixels.

3. The method of claim 1 , wherein:

in response to one or more of the neighboring pixels being unavailable, using available pixels in computing the MASD.

4. The method of claim 1 , further comprising:

in response to one or more of the neighboring pixels being unavailable, a default value is used for each unavailable pixel in computing the MASD.

5. The method of claim 1 , wherein:

the threshold is determined based on a quantization parameter and a number of bits of the pixel.

6. The method of claim 5 , further comprising:

computing a pixel predictor and a pixel residual for the pixel based on the MASD;

quantizing the pixel residual using linear quantization based on the quantization parameter.

7. A method comprising:

receiving a plurality of pixels and an entropy code indicator, wherein the plurality of pixels includes a pixel in a line of pixels and neighboring pixels of the pixel;

determining a pixel predicator for the pixel based on a minimum absolute sample difference (MASD) for the pixel, wherein the MASD is calculated based on a minimum difference of different combinations of the neighboring pixels of the pixel;

determining a decoding mode based on a previous pixel residual and one or more of the neighboring pixels; and

decoding the pixel based on the decoding mode.

8. The method of claim 7 , wherein:

a first neighboring pixel is adjacent to the pixel and in the line of pixels;

a second neighboring pixel is adjacent to the pixel and in a previous line of pixels; and

a third neighboring pixel is adjacent to the second neighboring pixel in a first direction and in the previous line of pixels.

9. The method of claim 8 , wherein:

a fourth neighboring pixel is adjacent to the second neighboring pixel in a second direction and in the previous line of pixels.

10. The method of claim 7 , further includes:

decoding a consecutive number of the plurality of pixels when the decoding mode is run-mode decoding.

11. The method of claim 7 , further comprising:

in response to one or more of the neighboring pixels being unavailable, a default value is used for each unavailable pixel in computing the MASD.

12. The method of claim 7 , wherein:

the decoding mode is entropy encoding; and

in response to the decoding mode being entropy decoding:

determining a decoded value of the pixel using an entropy decoding type based on the entropy code indicator;

determining a pixel residual and a pixel predictor; and

reconstructing the pixel based on the pixel residual and the pixel predictor.

13. The method of claim 12 , wherein:

the decoded value of the pixel is a sum of the pixel residual and the pixel predictor.

14. A decoder comprising:

an input configured to receive a plurality of pixels and an entropy code indicator, wherein the plurality of pixels includes a pixel in a line of pixels and neighboring pixels of the pixel; and

a processor configured to:

determine a pixel predicator for the pixel based on a minimum absolute sample difference (MASD) for the pixel, wherein the MASD is calculated based on a minimum difference of different combinations of the neighboring pixels of the pixel;

determine a decoding mode based on a previous pixel residual and one or more of the neighboring pixels; and

decode the pixel based on the decoding mode.

15. The decoder of claim 14 , wherein:

a first neighboring pixel is adjacent to the pixel and in the line of pixels;

a second neighboring pixel is adjacent to the pixel and in a previous line of pixels; and

a third neighboring pixel is adjacent to the second neighboring pixel in a first direction and in the previous line of pixels.

16. The decoder of claim 15 , wherein:

a fourth neighboring pixel is adjacent to the second neighboring pixel in a second direction and in the previous line of pixels.

17. The decoder of claim 14 , wherein the processor is further configured to:

decode a consecutive number of the plurality of pixels when the decoding mode is run-mode decoding.

18. The decoder of claim 14 , further comprising:

in response to one or more of the neighboring pixels being unavailable, a default value is used for each unavailable pixel in computing the MASD.

19. The decoder of claim 14 , wherein:

the decoding mode is entropy encoding; and

in response to the decoding mode being entropy decoding, the processor is further configured to:

determine a decoded value of the pixel using an entropy decoding type based on the entropy code indicator;

determine a pixel residual and a pixel predictor; and

reconstruct the pixel based on the pixel residual and the pixel predictor.

20. The decoder of claim 19 , wherein:

the decoded value of the pixel is a sum of the pixel residual and the pixel predictor.

Continuity (5)
Continuation 16434832 · Jun 7, 2019
Continuation 15357759 · Nov 21, 2016
Division 14199558 · Mar 6, 2014
Division 12572408 · Oct 2, 2009
Related Publication 20210250607A1 · Aug 12, 2021