IL232331A

Context optimization for last significant coefficient position coding

Abstract

This record has no abstract on file.

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

29 claims: 8 independent, 21 dependent

  1. 1
    39 232331/2 CLAIMS 1. A method of encoding transform coefficients for a video block, the method comprising:determining a binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with the video block, the binary string including a prefix portion and a suffix portion;determining a context for a binary index in the prefix portion of the binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;and encoding the binary string using context adaptive binary arithmetic coding (CABAC) based at least in part on the determined context.
  2. 5
    A method of decoding transform coefficients for a video block, the method comprising:obtaining an encoded binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with the video block, the encoded binary string including a prefix portion and a suffix portion, wherein the encoded binary string is encoded using context adaptive binary arithmetic coding (CABAC);determining a context for a binary index in the prefix portion of the encoded binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;decoding the encoded binary string using CABAC based at least in part on the determined context;and determining the position of the last significant coefficient in the transform block of the transform coefficients associated with the video block based on the decoded binary string.
  3. 9
    An apparatus configured to encode transform coefficients for a video block, the apparatus comprising:means for determining a binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with the video block, the binary string including a prefix portion and a suffix portion;means for determining a context for a binary index in the prefix portion of the binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;and means for encoding the binary string using context adaptive binary arithmetic coding (CABAC) based at least in part on the determined context.
  4. 11
    An apparatus configured to decode transform coefficients for a video block, the apparatus comprising:means for obtaining an encoded binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with the video block, the encoded binary string including a prefix portion and a suffix portion, wherein the encoded binary string is encoded using context adaptive binary arithmetic coding (CABAC);means for determining a context for a binary index in the prefix portion of the encoded binary string based on the size of the transform block, wherein the context is 42 232331/2 assigned to at least two binary indices according to a context index (ctx_index) defined by the function: ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;means for decoding the encoded binary string using CABAC based at least in part on the determined context;and means for determining the position of the last significant coefficient in the transform block of the transform coefficients associated with the video block based on the decoded binary string.
  5. 13
    A device configured to encode transform coefficients for a video block, the device comprising:a memory configured to store the transform coefficients;and a video encoder configured to: determine a binary string indicating a position of a last significant coefficient within a transform block of the transform coefficients associated with the video block, the binary string including a prefix portion and a suffix portion;determine a context for a binary index in the prefix portion of the binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a 43 232331/2 dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;and encode the binary string using context adaptive binary arithmetic coding (CABAC) based at least in part on the determined context.
  6. 17
    A device configured to decode transform coefficients for a video block, the device comprising:a memory configured to store the transform coefficients;and a video decoder configured to: obtain an encoded binary string indicating a position of a last significant coefficient within a transform block of the transform coefficients associated with the video block, the encoded binary string including a prefix portion and a suffix portion, wherein the encoded binary string is encoded using context adaptive binary arithmetic coding (CABAC);determine a context for a binary index in the prefix portion of the encoded binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: 44 232331/2 ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;decode the encoded binary string using CABAC based at least in part on the determined context;and determine the position of the last significant coefficient in the transform block of the transform coefficients associated with the video block based on the decoded binary string.
  7. 21
    A non-transitory computer-readable storage medium having instructions stored thereon that upon execution cause one or more processors of a video encoding device to:determine a binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with a video block, the binary string including a prefix portion and a suffix portion;determine a context for a binary index in the prefix portion of the binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: 45 232331/2 ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;and encode the binary string using context adaptive binary arithmetic coding (CABAC) based at least in part on the determined context.
  8. 25
    A non-transitory computer-readable storage medium having instructions stored thereon that upon execution cause one or more processors of a video decoding device to:obtain an encoded binary string indicating a position of a last significant coefficient within a transform block of transform coefficients associated with a video block, the encoded binary string including a prefix portion and a suffix portion, wherein the encoded binary string is encoded using context adaptive binary arithmetic coding (CABAC);determine a context for a binary index in the prefix portion of the encoded binary string based on the size of the transform block, wherein the context is assigned to at least two binary indices according to a context index (ctx_index) defined by the function: 46 232331/2 ctx_index = ( n >> (log2(T) - 2)) + 15, wherein n is the binary index, >> represents a binary shift operation, and T is a dimension of the transform block, and wherein each of the at least two binary indices are associated with different transform block sizes;decode the encoded binary string using CABAC based at least in part on the determined context;and determine the position of the last significant coefficient in the transform block of the transform coefficients associated with the video block based on the decoded binary string.