IP Library Granted Patent US 8,290,286
Granted Patent B2
US 8,290,286 · App. 12/240,379 · Granted Oct 16, 2012

Picture coding method and picture decoding method

Assignee: Panasonic Corporation
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 8,290,286
App. No.
12/240,379
Granted
Oct 16, 2012
Kind
B2
Abstract

The method includes the following units: a coefficient number detecting unit ( 109 ) for detecting the number of coefficients which has a value other than 0 for each block according to the generated coefficient, a coefficient number storing unit ( 110 ) for storing the number of coefficients detected, a coefficient number coding unit ( 111 ) for selecting a table for variable length coding based on the numbers of coefficients in the coded blocks located on the periphery of a current block to be coded with reference to the selected table for variable length coding so as to perform variable length coding for the number of coefficients.

Claims (69)

1. A decoding apparatus for decoding a coded block image, the coded block image being obtained by coding transform coefficients included in a block which show spatial frequency components, the transform coefficients being generated by transforming the block image, the apparatus comprising:

a memory;

a reading unit operable to obtain a total number of non-zero coefficients included in an above block located above a current block to be decoded and a total number of non-zero coefficients included in a left block located to the left of the current block to be decoded, by referring to information, previously stored in the memory, representing the total number of non-zero coefficients included in the above block and information, previously stored in the memory, representing the total number of non-zero coefficients included in the left block, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

a predictive value determining unit operable to determine a predictive value of a total number of non-zero coefficients included in the current block to be decoded based on the obtained total number of non-zero coefficients included in the above block and the obtained total number of non-zero coefficients included in the left block;

a code table selecting unit operable to select a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block;

a decoding unit operable to decode the coded block image by using the selected variable length code table, to obtain an actual value of the total number of non-zero coefficients included in the current block; and

a storing unit operable to store the actual value of the total number of non-zero coefficients included in the current block, as information representing the total number of non-zero coefficients, in the memory.

2. The decoding apparatus according to claim 1 , wherein said storing unit stores said information representing the total number of non-zero coefficients in the case that the current block is a bottom block of a macroblock.

3. The decoding apparatus according to claim 1 ,

wherein said storing unit stores said information representing the total number of non-zero coefficients included in the current block in the memory until said decoding unit decodes a total number of non-zero coefficients in a below block located below the current block and a right block located to the right of the current block.

4. The decoding apparatus according to claim 1 , wherein said code table selecting unit is operable to select, based on the determined predictive value, one of a plurality of predetermined variable length code tables.

5. A decoding apparatus for decoding a coded block image, the coded block image being obtained by coding transform coefficients included in a block which show spatial frequency components, the transform coefficients being generated by transforming the block image, the apparatus comprising:

a memory;

a reading unit operable to derive a total number of non-zero coefficients included in an above block from information, previously stored in the memory, representing a level value of a transform coefficient included in the above block and a total number of non-zero coefficients included in a left block from information, previously stored in the memory, representing a level value of a transform coefficient included in the left block, wherein the above block is a block located above the current block to be decoded, the left block is a block located to the left of the current block to be decoded, and each non-zero coefficient is a transform coefficient having a level value other than “0”;

a predictive value determining unit operable to determine a predictive value of a total number of non-zero coefficients included in the current block to be decoded based on the derived total number of non-zero coefficients included in the above block and the derived total number of non-zero coefficients included in the left block;

a code table selecting unit operable to select a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block;

a first decoding unit operable to decode the coded block image by using the selected variable length code table, to obtain an actual value of the total number of non-zero coefficients included in the current block;

a second decoding unit operable to decode the coded block image to obtain a decoded level value of a transform coefficient included in the current block; and

a storing unit operable to store the decoded level value, as information representing a level value of a transform coefficient included in the current block, in the memory.

6. The decoding apparatus according to claim 5 ,

wherein said storing unit stores said information representing a level value of a transform coefficient included in the current block in the memory until said first decoding unit decodes a total number of non-zero coefficient in a below block located below the current block and a right block located to the right of the current block.

7. A decoding method for decoding a coded block image, the coded block image being obtained by coding transform coefficients included in a block which show spatial frequency components, the transform coefficients being generated by transforming the block image, the method comprising:

obtaining a total number of non-zero coefficients included in an above block located above a current block to be decoded and a total number of non-zero coefficients included in a left block located to the left of the current block to be decoded, by referring to information previously stored in a memory representing the total number of non-zero coefficients included in the above block and information previously stored in the memory representing the total number of non-zero coefficients included in the left block, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

determining a predictive value of a total number of non-zero coefficients included in the current block to be decoded based on the obtained total number of non-zero coefficients included in the above block and the obtained total number of non-zero coefficients included in the left block;

selecting a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block;

decoding the coded block image by using the selected variable length code table, to obtain an actual value of the total number of non-zero coefficients included in the current block; and

storing the actual value of the total number of non-zero coefficients included in the current block, as information representing the total number of non-zero coefficients, in the memory.

8. A decoding method for decoding a coded block image, the coded block image being obtained by coding transform coefficients included in a block which show spatial frequency components, the transform coefficients being generated by transforming the block image, the method comprising:

deriving a total number of non-zero coefficients included in an above block from information previously stored in a memory representing a level value of a transform coefficient included in the above block, and a total number of non-zero coefficients included in a left block from information previously stored in the memory representing a level value of a transform coefficient included in the left block, wherein the above block is a block located above a current block to be decoded, the left block is a block located to the left of the current block to be decoded, and each non-zero coefficient is a transform coefficient having a level value other than “0”;

determining a predictive value of a total number of non-zero coefficients included in the current block to be decoded based on the derived total number of non-zero coefficients included in the above block and the derived total number of non-zero coefficients included in the left block;

selecting a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block;

decoding the coded block image by using the selected variable length code table, to obtain an actual value of the total number of non-zero coefficients included in the current block;

decoding the coded block image to obtain a decoded level value of a transform coefficient included in the current block; and

storing the decoded level value, as information representing a level value of a transform coefficient included in the current block, in the memory.

9. A coding method for coding, on a block basis, a transform coefficient included in a block, the transform coefficient being obtained by transforming a block image, the method comprising:

deriving an actual value of a total number of non-zero coefficients included in a current block to be coded, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

storing the actual value of the total number of non-zero coefficients included in the current block, as information representing the total number of non-zero coefficients, in a memory;

obtaining a total number of non-zero coefficients included in an above block located above the current block and a total number of non-zero coefficients included in a left block located to the left of the current block, by referring to information previously stored in the memory representing the total number of non-zero coefficients included in the above block and information previously stored in the memory representing the total number of non-zero coefficients included in the left block;

determining a predictive value of the total number of non-zero coefficients included in the current block to be coded based on the obtained total number of non-zero coefficients included in the above block and the obtained total number of non-zero coefficients included in the left block;

selecting a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block; and

coding the actual value of the total number of non-zero coefficients included in the current block by using the selected variable length code table.

10. The coding method according to claim 9 , wherein said storing stores said information representing the total number of non-zero coefficients in the case that the current block is a bottom block of a macroblock.

11. The coding method according to claim 9 , wherein said storing stores said information representing the total number of non-zero coefficients included in the current block in the memory until a total number of non-zero coefficients in a below block located below the current block and a right block located to the right of the current block is coded.

12. The coding method according to claim 9 , wherein said selecting a variable length code table comprises selecting, based on the determined predictive value, one a plurality of predetermined variable length code tables.

13. A coding method for coding, on a block basis, a transform coefficient included in a block, the transform coefficient being obtained by transforming a block image, the method comprising:

deriving an actual value of a total number of non-zero coefficients included in a current block to be coded, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

storing a level value of a transform coefficient included in the current block, as information representing a level value of a transform coefficient included in the current block, in a memory;

deriving a total number of non-zero coefficients included in an above block from information, previously stored in the memory, representing a level value of a transform coefficient included in the above block and a total number of non-zero coefficients included in a left block from information, previously stored in the memory, representing a level value of a transform coefficient included in the left block, the above block being a block located above the current block and the left block being a block located to the left of the current block;

determining a predictive value of the total number of non-zero coefficients included in the current block to be coded based on the derived total number of non-zero coefficients included in the above block and the derived total number of non-zero coefficients included in the left block;

selecting a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block; and

coding the actual value of the total number of non-zero coefficients included in the current block by using the selected variable length code table.

14. The coding method according to claim 13 ,

wherein said storing stores said information representing a level value of a transform coefficient included in the current block in the memory until a total number of non-zero coefficients in a below block located below the current block and a right block located to the right of the current block is coded.

15. A coding apparatus for coding, on a block basis, a transform coefficient included in a block, the transform coefficient being obtained by transforming a block image, the apparatus comprising:

a memory;

a calculation unit operable to derive an actual value of a total number of non-zero coefficients included in a current block to be coded, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

a storing unit operable to store the actual value of the total number of non-zero coefficients included in the current block, as information representing the total number of non-zero coefficients, in the memory;

a reading unit operable to obtain a total number of non-zero coefficients included in an above block located above the current block and a total number of non-zero coefficients included in a left block located to the left of the current block, by referring to information, previously stored in the memory, representing the total number of non-zero coefficients included in the above block and information, previously stored in the memory, representing the total number of non-zero coefficients included in the left block;

a predictive value determining unit operable to determine a predictive value of the total number of non-zero coefficients included in the current block to be coded based on the obtained total number of non-zero coefficients included in the above block and the obtained total number of non-zero coefficients included in the left block;

a code table selecting unit operable to select a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block; and

a coding unit operable to code the actual value of the total number of non-zero coefficients included in the current block by using the selected variable length code table.

16. A coding apparatus for coding, on a block basis, a transform coefficient included in a block, the transform coefficient being obtained by transforming a block image, the apparatus comprising:

a memory;

a calculating unit operable to derive an actual value of a total number of non-zero coefficients included in a current block to be coded, wherein each non-zero coefficient is a transform coefficient having a level value other than “0”;

a storing unit operable to store a level value of a transform coefficient as information representing a level value of a transform coefficient included in the current block in the memory;

a reading unit operable to derive a total number of non-zero coefficients included in an above block from information, previously stored in the memory, representing a level value of a transform coefficient included in the above block and a total number of non-zero coefficients included in a left block from information, previously stored in the memory, representing a level value of a transform coefficient included in the left block, the above block being a block located above the current block and the left block being a block located to the left of the current block;

a predictive value determining unit operable to determine a predictive value of the total number of non-zero coefficients included in the current block to be coded based on the derived total number of non-zero coefficients included in the above block and the derived total number of non-zero coefficients included in the left block;

a code table selecting unit operable to select a variable length code table based on the determined predictive value of the total number of non-zero coefficients included in the current block; and

a coding unit operable to code the actual value of the total number of non-zero coefficients included in the current block by using the selected variable length code table.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2020
From: OPTIS WIRELESS TECHNOLOGY, LLC
To: VIDEOLABS, INC.
Reel/Frame 054723/0177 →
RELEASE OF SECURITY INTEREST Recorded Nov 16, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: OPTIS WIRELESS TECHNOLOGY
Reel/Frame 054380/0245 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2017
From: ABE, KIYOFUMI; KADONO, SHINYA; KONDO, SATOSHI; HAGAI, MAKOTO
To: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.
Reel/Frame 044099/0072 →
RELEASE OF SECURITY INTEREST Recorded Jul 15, 2016
From: HPS INVESTMENT PARTNERS, LLC
To: OPTIS WIRELESS TECHNOLOGY, LLC
Reel/Frame 039361/0001 →
SECURITY INTEREST Recorded Mar 12, 2014
From: OPTIS WIRELESS TECHNOLOGY, LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 032437/0638 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2014
From: PANASONIC CORPORATION
To: OPTIS WIRELESS TECHNOLOGY, LLC
Reel/Frame 032326/0707 →
LIEN Recorded Jan 24, 2014
From: OPTIS WIRELESS TECHNOLOGY, LLC
To: HIGHBRIDGE PRINCIPAL STRATEGIES, LLC, AS COLLATERAL AGENT
Reel/Frame 032180/0115 →
Priority Claims (1)
JP 2002-112665 · Apr 15, 2002 · national
Continuity (4)
Division 11976758 · Oct 26, 2007
Continuation 11453078 · Jun 15, 2006
Division 10479831
Related Publication 20090034616A1 · Feb 5, 2009