Apparatuses for encoding and decoding a sequence of integer values, methods for encoding and decoding a sequence of integer values and computer program for implementing these methods
AssigneeFraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.
InventorsPaul Haase, Karsten Müller, Heiner Kirchhoffer, Detlev Marpe, Heiko Schwarz, Thomas Wiegand
Life of this patent
Estimating the term…
Abstract
An encoding scheme for encoding a sequence of integer values comprises first using encoding a value at a predetermined position and then consecutively calculating and encoding differences between neighboring values. A respective decoding scheme is also provided. These encoding and decoding schemes provide a more efficient encoding concept.
Claims19
An apparatus for decoding, from a data stream, a sequence of integer values which are ordered in a strict monotonous manner, the apparatus configured for
- decoding from the data stream a predetermined integer value located at a predetermined position of the sequence of integer values;
- and
- for each position of the sequence of integer values which precedes the predetermined position,
- decoding, from the data stream, a first difference between an integer value residing immediately following the respective position and the integer value at the respective position, reduced by 1;
- and
- for a position of the sequence of integer values which is located following the predetermined position,
- decoding, from the data stream, a second difference between the integer value at the respective position and an integer value residing immediately preceding the respective position, reduced by 1,
- wherein the apparatus is configured for
- decoding, from the data stream, a third difference between a rank of the predetermined position and an integer-rounded half of the number of integer values;
- calculating the predetermined position based on the third difference and the number of integer values,
- wherein the apparatus is configured for decoding from the data stream the third difference via an exponential Golomb code.
An apparatus for encoding, into a data stream, a sequence of integer values which are ordered in a strict monotonous manner, the apparatus configured for
- encoding into the data stream a predetermined integer value located at a predetermined position of the sequence of integer values;
- and
- for a position of the sequence of integer values which precedes the predetermined position,
- calculating a first difference between an integer value residing immediately following the respective position and the integer value at the respective position, reduced by 1;
- and
- encoding the first difference into the data stream;
- and
- for each position of the sequence of integer values which is located following the predetermined position,
- calculating a second difference between the integer value at the respective position and an integer value residing immediately preceding the respective position, reduced by 1;
- and
- encoding the second difference into the data stream,
- wherein the apparatus is configured for
- calculating a third difference between a rank of the predetermined position and an integer-rounded half of the number of integer values,
- encoding the third difference into the data stream,
- wherein the apparatus is configured for encoding into the data stream the third difference by use of an exponential Golomb code.
A method for decoding, from a data stream, a sequence of integer values which are ordered in a strict monotonous manner, comprising
- decoding from the data stream a predetermined integer value located at a predetermined position of the sequence of integer values;
- and
- for a position of the sequence of integer values which prior to the predetermined position,
- decoding, from the data stream, a first value indicative of a first difference between an integer value immediately following the position of the sequence of integer values prior to the predetermined position and an integer value at the position of the sequence of integer values prior to the predetermined position minus one;
- and
- for a position located following the predetermined position in the sequence of integer values,
- decoding, from the data stream, a second difference between the integer value at the respective position and an integer value residing immediately preceding the respective position, reduced by 1,
- the method further comprising:
- decoding, from the data stream, a third difference between a rank of the predetermined position and an integer-rounded half of the number of integer values;
- calculating the predetermined position based on the third difference and the number of integer values,
- wherein the apparatus is configured for decoding from the data stream the third difference via an exponential Golomb code.
Dependencies are inferred from the claim text.