EP2007147A2

Method and system for context-based adaptive binary arithmetic coding

Abstract

A method of image coding wherein an image is divided into blocks having a plurality of pixels. A transform coding operation is performed on a block of pixels to produce a corresponding block of transform coefficient values, which is scanned to produce a scanned array of coefficient values represented by a plurality of number pairs having a first and a second number. The first and second numbers are assigned to one of a plurality of contexts representative of the number pairs. The first number of a number pair is assigned to a context based on a first number of another number pair. Alternatively, the second number of a number pair is assigned to a context based on the first number of the number pair. Furthermore, a number indicative of the number of non-zero coefficient values in the block of transform coefficient values is determined and assigned to a context.

EP2007147A2, drawing sheet 1
Sheet 1 of 21

Term

Term ended

Projected expiry passed 12 September 2022, 4 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

31 claims: 11 independent, 20 dependent

  1. 1
    A method of context-based arithmetic encoding in which an array of data symbols is represented with a code-word, the data symbols in said array being number pairs comprising a first number and a second number, the first number of a number pair being assigned to a context selected from a plurality of contexts representative of the first numbers and the second number of a number pair being assigned to a context selected from a plurality of contexts representative of the second numbers, wherein the first number of a number pair is indicative of a non-zero coefficient value, and the second number of a number pair is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value, wherein the second number of a number pair is assigned to a context at least partly in dependence on the first number of the number pair.
  2. 2
    A method of context-based arithmetic decoding in which an array of data symbols is decoded from a code-word representative of said array, the data symbols in said array being number pairs comprising a first number and a second number, the first number of a number pair being assigned to a context selected from a plurality of contexts representative of the first numbers and the second number of a number pair being assigned to a context selected from a plurality of contexts representative of the second numbers, wherein the first number of a number pair is indicative of a non-zero coefficient value, and the second number of a number pair is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value, wherein the second number of a number pair is assigned to a context at least partly in dependence on the first number of the number pair.
  3. 7
    A method according to any of claims 3 to 6, wherein the first number of a number pair is assigned to a context at least partly in dependence on the bin to which the first number of the number pair is mapped.
  4. 8
    A method according to any of claims 3 to 7, wherein the second number of a number pair is assigned to a context at least partly in dependence on the bin to which the second number of the number pair is mapped.
  5. 9
    A method according to any of claims 1 to 8, wherein said first number is indicative of a non-zero coefficient value and said second number is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value.
  6. 13
    Context-based arithmetic encoder apparatus arranged to represent an array of data symbols with a code-word, the data symbols in said array being number pairs comprising a first number and a second number, the context-based arithmetic encoder being arranged to assign the first number of a number pair to a context selected from a plurality of contexts representative of the first numbers and to assign the second number of a number pair to a context selected from a plurality of contexts representative of the second numbers, wherein the first number of a number pair is indicative of a non-zero coefficient value, and the second number of a number pair is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value, wherein it is further arranged to assign the second number of a number pair to a context at least partly in dependence on the first number of the number pair.
  7. 14
    Context-based arithmetic decoder apparatus arranged to decode an array of data symbols from a code-word representative of the array, the data symbols in the array being number pairs comprising a first number and a second number, the context-based arithmetic decoder being arranged to assign the first number of a number pair to a context selected from a plurality of contexts representative of the first numbers and to assign the second number of a number pair to a context selected from a plurality of contexts representative of the second numbers, wherein the first number of a number pair is indicative of a non-zero coefficient value, and the second number of a number pair is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value, it is arranged to assign the second number of a number pair to a context at least partly in dependence on the first number of the number pair.
  8. 19
    Apparatus according to any of claims 15 to 18, wherein it is arranged to assign the first number of a number pair to a context at least partly in dependence on the bin to which the first number of the number pair is mapped.
  9. 20
    Apparatus according to any of claims 15 to 19, wherein it is arranged to assign the second number of a number pair to a context at least partly in dependence on the bin to which the second number of the number pair is mapped.
  10. 21
    Apparatus according to any of claims 13 to 20, wherein said first number is indicative of a non-zero coefficient value and said second number is indicative of a number of consecutive zero coefficient values preceding said non-zero coefficient value.
  11. 23
    A computer program comprising machine-readable code for implementing the method of context-based arithmetic encoding or decoding according to any of claims 1 to 12.