IP Library Granted Patent US 9,648,350
Granted Patent B2
US 9,648,350 · App. 14/335,099 · Granted May 9, 2017

Method and apparatus for decoding a progressive JPEG image

Inventors: Mihir Narendra Mody (Bangalore, IN); Vipul Paladiya (Bangalore, IN); Kapil Ahuja (Bangalore, IN)
Assignee: TEXAS INSTRUMENTS INCORPORATED
H04N19/625H04N19/34H04N19/44
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 9,648,350
App. No.
14/335,099
Granted
May 9, 2017
Kind
B2
Abstract

A progressive JPEG (joint photographic experts group) decoder is disclosed. The progressive JPEG decoder includes a processing unit that receives a plurality of progressive scans and generates a plurality of modified progressive scans (MPSs). A baseline JPEG decoder, coupled to the processing unit, includes a Huffman decoder, an inverse quantization unit and an inverse transform unit. The Huffman decoder receives a current MPS and generates a set of transform coefficients corresponding to the current MPS. The processing unit adds a set of transform coefficients corresponding to a previous MPS to the set of transform coefficients corresponding to the current MPS, and the processing unit generates quantization indices. The inverse quantization unit estimates inverse quantization values based on the quantization indices. The inverse transform unit estimates inverse transform decoded values based on the estimated inverse quantization values and generates a set of pixels corresponding to the current MPS.

Claims (36)

1. A progressive Joint Photographic Experts Group (JPEG) decoder comprising:

a processing unit configured to receive a plurality of progressive scans and configured to generate a plurality of modified progressive scans (MPSs);

a baseline JPEG decoder coupled to the processing unit, the baseline JPEG decoder comprising:

a Huffman decoder configured to receive a current modified progressive scan (MPS) and configured to generate a set of transform coefficients corresponding to the current MPS, wherein the processing unit is configured to:

generate a zero map and a sign map based on a set of transform coefficients corresponding to a previous MPS;

modify the set of transform coefficients corresponding to the current MPS based on the zero map and the sign map to generate quantization indices; and

update the zero map and the sign map based on the set of transform coefficients corresponding to the current MPS;

an inverse quantization unit configured to estimate inverse quantization values based on the quantization indices; and

an inverse transform unit configured to estimate inverse transform decoded values based on the estimated inverse quantization values and configured to generate a set of pixels corresponding to the current MPS.

2. The progressive JPEG decoder of claim 1 further comprising a display buffer coupled to the processing unit, wherein a set of pixels corresponding to the previous MPS is stored in the display buffer.

3. The progressive JPEG decoder of claim 2 , wherein the display buffer is coupled to the processing unit and the processing unit is coupled to the inverse transform unit.

4. The progressive JPEG decoder of claim 2 , wherein the display buffer is connected to the inverse transform unit in the baseline JPEG decoder.

5. The progressive JPEG decoder of claim 2 , wherein the processing unit is configured to receive the set of pixels corresponding to the current MPS from the inverse transform unit and configured to receive the set of pixels corresponding to the previous MPS from the display buffer.

6. The progressive JPEG decoder of claim 2 , wherein the processing unit is configured to add the set of pixels corresponding to the current MPS and the set of pixels corresponding to the previous MPS to generate a set of absolute pixels, and wherein the processing unit is configured to store the set of absolute pixels in the display buffer.

7. The progressive JPEG decoder of claim 1 further comprising a scratch buffer coupled to the processing unit, wherein the processing unit is configured to store the zero map and the sign map corresponding to the previous MPS in the scratch buffer.

8. The progressive JPEG decoder of claim 1 , wherein when the processing unit generates the quantization indices, the processing unit is configured to update the zero map and the sign map in the scratch buffer based on the current MPS.

9. The progressive JPEG decoder of claim 1 , wherein each progressive scan of the plurality of progressive scans comprises a progressive header and a plurality of minimum coding units (MCUs).

10. The progressive JPEG decoder of claim 1 , wherein the processing unit on receiving the plurality of progressive scans is configured to convert the progressive header in each progressive scan to a baseline header such that each MPS of the plurality of MPS comprises the baseline header and the plurality of MCUs.

11. The progressive JPEG decoder of claim 1 , wherein the Huffman decoder receives the previous MPS followed by the current MPS.

12. The progressive JPEG decoder of claim 1 , wherein the zero map stores a 1 to indicate if a value of a transform coefficient of the set of transform coefficients is non-zero and the zero map stores a 0 to indicate if the value of the transform coefficient of the set of transform coefficients is zero.

13. The progressive JPEG decoder of claim 1 , wherein the sign map stores a 1 to indicate that a sign of a transform coefficient of the set of transform coefficients is negative and the sign map stores a 0 to indicate that the sign of the transform coefficient of the set of transform coefficients is positive.

14. The progressive JPEG decoder of claim 1 , wherein to modify the set of transform coefficients corresponding to the current MPS, the processing unit is configured to:

determine a position and a sign of a transform coefficient of the set of transform coefficients;

determine a value of a bit stored in the zero map at the position of the transform coefficient;

determine a sign of a bit stored in the sign map at the position of the transform coefficient; and

change the sign of transform coefficient when the value of the bit stored in the zero map is 1 and the value of the bit stored in the sign map is 1.

15. A method of decoding a progressive Joint Photographic Experts Group (JPEG) image using a baseline JPEG decoder comprising:

receiving a plurality of progressive scans, the plurality of progressive scans form the progressive JPEG image;

generating a plurality of modified progressive scans (MPSs) from the plurality of progressive scans, the plurality of MPSs comprises a current MPS and a previous MPS;

generating a set of transform coefficients corresponding to the current MPS;

generating a zero map and a sign map based on a set of transform coefficients corresponding to the previous MPS;

modifying the set of transform coefficients corresponding to the current MPS based on the zero map and the sign map to generate quantization indices;

updating the zero map and the sign map based on the set of transform coefficients corresponding to the current MPS;

estimating inverse quantization values based on the quantization indices; and

estimating inverse transform decoded values based on the estimated inverse quantization values and generating a set of pixels corresponding to the current MPS.

16. The method of claim 15 further comprising adding the set of pixels corresponding to the current MPS and a set of pixels corresponding to the previous MPS to generate a set of absolute pixels, the set of absolute pixels are used to display the progressive JPEG image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2014
From: MODY, MIHIR; PALADIYA, VIPUL; AHUJA, KAPIL
To: TEXAS INSTRUMENTS INCORPORATED
Reel/Frame 033343/0193 →
Priority Claims (1)
IN 3247/CHE/2013 · Jul 22, 2013 · national
Continuity (1)
Related Publication 20150023609A1 · Jan 22, 2015