US2012163448A1PendingUtilityA1

Coding the position of a last significant coefficient of a video block in video coding

35
Assignee: ZHENG YUNFEIPriority: Dec 22, 2010Filed: Dec 16, 2011Published: Jun 28, 2012
Est. expiryDec 22, 2030(~4.5 yrs left)· nominal 20-yr term from priority
H03M 7/4018H04N 19/00H04N 19/61
35
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In one example, an apparatus is disclosed for coding coefficients associated with a block of video data during a video coding process, wherein the apparatus includes a video coder configured to code information that identifies a position of a last non-zero coefficient within the block according to a scanning order associated with the block, wherein to code the information, the video coder is configured to perform a context adaptive entropy coding process that includes the video coder applying a context model based on at least three contexts, wherein the at least three contexts include a size associated with the block, a position of a given one of the coefficients within the block according to the scanning order, and the scanning order.

Claims

exact text as granted — not AI-modified
1 . A method of coding coefficients associated with a block of video data during a video coding process, the method comprising:
 coding information that identifies a position of a last non-zero coefficient within the block according to a scanning order associated with the block,   wherein coding the information comprises performing a context adaptive entropy coding process that includes applying a context model based on at least three contexts, wherein the at least three contexts include:   a size associated with the block;   a position of a given one of the coefficients within the block according to the scanning order; and   the scanning order.   
     
     
         2 . The method of  claim 1 , wherein coding comprises encoding, and wherein encoding the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprises:
 for each of one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, determining whether the coefficient is the last non-zero coefficient within the block according to the scanning order, and generating a last significant coefficient flag that indicates whether the coefficient is the last non-zero coefficient within the block according to the scanning order;   arranging the last significant coefficient flags for the one or more coefficients into a sequence based on the scanning order; and   encoding the sequence by performing the context adaptive entropy coding process.   
     
     
         3 . The method of  claim 2 , wherein encoding the sequence by performing the context adaptive entropy coding process that includes applying the context model based on the position of the given one of the coefficients within the block according to the scanning order comprises:
 for each last significant coefficient flag of the sequence, applying the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         4 . The method of  claim 1 , wherein coding comprises decoding, and wherein decoding the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprises:
 decoding a sequence of last significant coefficient flags for one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, wherein each of the last significant coefficient flags indicates whether the respective coefficient is the last non-zero coefficient within the block according to the scanning order, by performing the context adaptive entropy coding process; and   for each coefficient associated with the block, determining whether the coefficient is the last non-zero coefficient within the block according to the scanning order, based on the sequence.   
     
     
         5 . The method of  claim 4 , wherein decoding the sequence by performing the context adaptive entropy coding process that includes applying the context model based on the position of the given one of the coefficients within the block according to the scanning order comprises:
 for each last significant coefficient flag of the sequence, applying the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         6 . The method of  claim 1 , further comprising updating the context model based on the information that identifies the position of the last non-zero coefficient within the block according to the scanning order. 
     
     
         7 . The method of  claim 1 , wherein the size associated with the block comprises a value corresponding to a number of the coefficients associated with the block. 
     
     
         8 . The method of  claim 1 , wherein the scanning order comprises at least one of a zig-zag scanning order, a horizontal scanning order, a vertical scanning order, and a diagonal scanning order. 
     
     
         9 . The method of  claim 1 , wherein the context adaptive entropy coding process comprises a context adaptive binary arithmetic coding (CABAC) process. 
     
     
         10 . The method of  claim 1 , wherein the context adaptive entropy coding process comprises a probability interval partitioning entropy coding (PIPE) process. 
     
     
         11 . An apparatus for coding coefficients associated with a block of video data during a video coding process, the apparatus comprising a video coder configured to:
 code information that identifies a position of a last non-zero coefficient within the block according to a scanning order associated with the block,   wherein to code the information, the video coder is configured to perform a context adaptive entropy coding process that includes the video coder applying a context model based on at least three contexts, wherein the at least three contexts include:   a size associated with the block;   a position of a given one of the coefficients within the block according to the scanning order; and   the scanning order.   
     
     
         12 . The apparatus of  claim 11 , wherein the video coder comprises an entropy encoding unit, and wherein to code the information that identifies the position of the last non-zero coefficient within the block according to the scanning order, the entropy encoding unit is configured to:
 for each of one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, determine whether the coefficient is the last non-zero coefficient within the block according to the scanning order, and generate a last significant coefficient flag that indicates whether the coefficient is the last non-zero coefficient within the block according to the scanning order;   arrange the last significant coefficient flags for the one or more coefficients into a sequence based on the scanning order; and   encode the sequence by performing the context adaptive entropy coding process.   
     
     
         13 . The apparatus of  claim 12 , wherein to encode the sequence by performing the context adaptive entropy coding process that includes the entropy encoding unit applying the context model based on the position of the given one of the coefficients within the block according to the scanning order, the entropy encoding unit is configured to:
 for each last significant coefficient flag of the sequence, apply the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         14 . The apparatus of  claim 11 , wherein the video coder comprises an entropy decoding unit, and wherein to code the information that identifies the position of the last non-zero coefficient within the block according to the scanning order, the entropy decoding unit is configured to:
 decode a sequence of last significant coefficient flags for one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, wherein each of the last significant coefficient flags indicates whether the respective coefficient is the last non-zero coefficient within the block according to the scanning order, by performing the context adaptive entropy coding process; and   for each coefficient associated with the block, determine whether the coefficient is the last non-zero coefficient within the block according to the scanning order, based on the sequence.   
     
     
         15 . The apparatus of  claim 14 , wherein to decode the sequence by performing the context adaptive entropy coding process that includes applying the context model based on the position of the given one of the coefficients within the block according to the scanning order, the entropy decoding unit is configured to:
 for each last significant coefficient flag of the sequence, apply the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         16 . The apparatus of  claim 11 , wherein the video coder is further configured to update the context model based on the information that identifies the position of the last non-zero coefficient within the block according to the scanning order. 
     
     
         17 . The apparatus of  claim 11 , herein the size associated with the block comprises a value corresponding to a number of the coefficients associated with the block. 
     
     
         18 . The apparatus of claim wherein the scanning order comprises at least one of a zig-zag scanning order, a horizontal scanning order, a vertical scanning order, and a diagonal scanning order. 
     
     
         19 . The apparatus of  claim 11 , wherein the context adaptive entropy coding process comprises a context adaptive binary arithmetic coding (CABAC) process. 
     
     
         20 . The apparatus of  claim 11 , wherein the context adaptive entropy coding process comprises a probability interval partitioning entropy coding (PIPE) process. 
     
     
         21 . The apparatus of  claim 11 , wherein the apparatus comprises at least one of:
 an integrated circuit;   a microprocessor; and   a wireless communication device that includes the video coder.   
     
     
         22 . A device for coding coefficients associated with a block of video data during a video coding process, the device comprising:
 means for coding information that identifies a position of a last non-zero coefficient within the block according to a scanning order associated with the block,   wherein the means for coding the information comprises means for performing a context adaptive entropy coding process that includes means for applying a context model based on at least three contexts, wherein the at least three contexts include:   a size associated with the block;   a position of a given one of the coefficients within the block according to the scanning order; and   the scanning order.   
     
     
         23 . The device of  claim 22 , wherein coding comprises encoding, and wherein the means for encoding the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprises:
 means for, for each of one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, determining whether the coefficient is the last non-zero coefficient within the block according to the scanning order, and generating a last significant coefficient flag that indicates whether the coefficient is the last non-zero coefficient within the block according to the scanning order;   means for arranging the last significant coefficient flags for the one or more coefficients into a sequence based on the scanning order; and   means for encoding the sequence by performing the context adaptive entropy coding process.   
     
     
         24 . The device of  claim 23 , wherein the means for encoding the sequence by performing the context adaptive entropy coding process that includes the means for applying the context model based on the position of the given one of the coefficients within the block according to the scanning order comprises:
 means for, for each last significant coefficient flag of the sequence, applying the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         25 . The device of  claim 22 , wherein coding comprises decoding, and Wherein the means for decoding the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprises:
 means for decoding a sequence of last significant coefficient flags for one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, wherein each of the last significant coefficient flags indicates whether the respective coefficient is the last non-zero coefficient within the block according to the scanning order, by performing the context adaptive entropy coding process; and   means for, for each coefficient associated with the block, determining whether the coefficient is the last non-zero coefficient within the block according to the scanning order, based on the sequence.   
     
     
         26 . The device of  claim 25 , wherein the means for decoding the sequence by performing the context adaptive entropy coding process that includes the means for applying the context model based on the position of the given one of the coefficients within the block comprises:
 means for, for each last significant coefficient flag of the sequence, applying the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         27 . The device of  claim 22 , further comprising means for updating the context mod based on the information that identifies the position of the last non-zero coefficient within the block according to the scanning order. 
     
     
         28 . The device of  claim 22 , wherein the size associated with the block comprises a value corresponding to a number of the coefficients associated with the block. 
     
     
         29 . The device of  claim 22 , wherein the scanning order comprises at least one of a zig-zag scanning order, a horizontal scanning order, a vertical scanning order, and a diagonal scanning order. 
     
     
         30 . The device of  claim 22 , wherein the context adaptive entropy coding process comprises a context adaptive binary arithmetic coding (CABAC) process. 
     
     
         31 . The device of  claim 22 , wherein the context adaptive entropy coding process comprises a probability interval partitioning entropy coding (PIPE) process. 
     
     
         32 . A computer-readable medium comprising instructions that, when executed, cause a processor to code coefficients associated with a block of video data during a video coding process, wherein the instructions cause the processor to:
 code information that identifies a position of a last non-zero coefficient within the block according to a scanning order associated with the block,   wherein the instructions that cause the processor to code the information comprise instructions that cause the processor to perform a context adaptive entropy coding process that includes applying a context model based on at least three contexts, wherein the at least three contexts include:   a size associated with the block;   a position of a given one of the coefficients within the block according to the scanning order; and   the scanning order.   
     
     
         33 . The computer-readable medium of  claim 32 , wherein coding comprises encoding, and wherein the instructions that cause the processor to encode the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprise instructions that cause the processor to:
 for each of one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, determine whether the coefficient is the last non-zero coefficient within the block according to the scanning order, and generate a last significant coefficient flag that indicates whether the coefficient is the last non-zero coefficient within the block according to the scanning order;   arrange the last significant coefficient flags for the one or more coefficients into a sequence based on the scanning order; and   encode the sequence by performing the context adaptive entropy coding process.   
     
     
         34 . The computer-readable medium of  claim 33 , wherein the instructions that cause the processor to encode the sequence by performing the context adaptive entropy coding process that includes applying the context model based on the position of the given one of the coefficients within the block according to the scanning order comprise instructions that cause the processor to:
 for each last significant coefficient flag of the sequence, apply the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         35 . The computer-readable medium of  claim 32 , wherein coding comprises decoding, and where the instructions that cause the processor to decode the information that identifies the position of the last non-zero coefficient within the block according to the scanning order comprise instructions that cause the processor to:
 decode a sequence of last significant coefficient flags for one or more coefficients associated with the block, starting with a first coefficient within the block according to the scanning order and ending with the last non-zero coefficient within the block according to the scanning order, and proceeding according to the scanning order, wherein each of the last significant coefficient flags indicates whether the respective coefficient is the last non-zero coefficient within the block according to the scanning order, by performing the context adaptive entropy coding process; and   for each coefficient associated with the block, determine whether the coefficient is the last non-zero coefficient within the block according to the scanning order, based on the sequence.   
     
     
         36 . The computer-readable medium of  claim 35 , wherein the instructions that cause the processor to decode the sequence by performing the context adaptive entropy coding process that includes applying the context model based on the position of the given one of the coefficients within the block according to the scanning order comprise instructions that cause the processor to:
 for each last significant coefficient flag of the sequence, apply the context model based on a position within the block, according to the scanning order, corresponding to the last significant coefficient flag.   
     
     
         37 . The computer-readable medium of  claim 32 , further comprising instructions that cause the processor to update the context model based on the information that identifies the position of the last non-zero coefficient within the block according to the scanning order. 
     
     
         38 . The computer-readable medium of  claim 32 , wherein the size associated with the block comprises a value corresponding to a number of the coefficients associated with the block. 
     
     
         39 . The computer-readable medium of  claim 32 , wherein the scanning order comprises at least one of a zig-zag scanning order, a horizontal scanning order, a vertical scanning order, and a diagonal scanning order. 
     
     
         40 . The computer-readable medium of  claim 32 , wherein the context adaptive entropy coding process comprises a context adaptive binary arithmetic coding (CABAC) process. 
     
     
         41 . The computer-readable medium of  claim 32 , wherein the context adaptive entropy coding process comprises a probability interval partitioning entropy coding (PIPE) process.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.