Coding and decoding images with sign data hiding
AssigneeDolby International AB
InventorsFelix Henry, Gordon Clare
Life of this patent
Estimating the term…
Abstract
A method is provided for coding at least one image split up into partitions, a current partition to be coded containing data, at least one data item of which is allotted a sign. The coding method includes, for the current partition, the following steps: calculating the value of a function representative of the data of the current partition with the exclusion of the sign; comparing the calculated value with a predetermined value of the sign; as a function of the result of the comparison, modifying or not modifying at least one of the data items of the current partition, in the case of modification, coding the at least one modified data item.
Claims12
A computer-implemented method for decoding an image, the method comprising:
- obtaining a set of coefficients representing a residual block of the image, the set of coefficients including a plurality of non-zero coefficients;
- determining whether a count of modifiable coefficients in the set of coefficients is greater than a predetermined number, wherein modifiable coefficients in the set comprise a first non-zero coefficient according to a reverse scan order of the residual block, a last non-zero coefficient according to the reverse scan order, and the coefficients between the first and the last non-zero coefficients in the set of coefficients according to the reverse scan order;
- if the count of modifiable coefficients in the set of coefficients is less than or equal to the predetermined number, determining that a sign designation of the last non-zero coefficient according to the reverse scan order is not hidden;
- and
- if the count of modifiable coefficients in the set of coefficients is greater than the predetermined number:
- determining that the sign designation of the last non-zero coefficient is hidden, and
- determining the sign designation for the last non-zero coefficient, comprising:
- computing a sum of non-zero coefficients in the set of coefficients;
- computing, using the sum of the non-zero coefficients, parity data;
- and
- designating a sign for the last non-zero coefficient based on the parity data;
- wherein the predetermined number is 4.
A decoder for decoding a sign data hiding enabled partition of an image, comprising:
- one or more processors;
- and
- a computer-readable medium coupled to the one or more processors having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
- obtaining a set of coefficients representing a residual block of the image, the set of coefficients including a plurality of non-zero coefficients;
- determining whether a count of modifiable coefficients in the set of coefficients is greater than a predetermined number, wherein modifiable coefficients in the set comprise a first non-zero coefficient according to a reverse scan order of the residual block, a last non-zero coefficient according to the reverse scan order, and the coefficients between the first and the last non-zero coefficients in the set of coefficients according to the reverse scan order;
- if the count of modifiable coefficients in the set of coefficients is less than or equal to the predetermined number, determining that a sign designation of the last non-zero coefficient according to the reverse scan order is not hidden;
- and
- if the count of modifiable coefficients in the set of coefficients is greater than the predetermined number:
- determining that the sign designation of the last non-zero coefficient is hidden, and
- determining the sign designation for the last non-zero coefficient, comprising:
- computing a sum of non-zero coefficients in the set of coefficients;
- computing, using the sum of the non-zero coefficients, parity data;
- and
- designating a sign for the last non-zero coefficient based on the parity data;
- wherein the predetermined number is 4.
A computer-readable medium coupled to one or more processors having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
- obtaining a set of coefficients representing a residual block of the image, the set of coefficients including a plurality of non-zero coefficients;
- determining whether a count of modifiable coefficients in the set of coefficients is greater than a predetermined number, wherein modifiable coefficients in the set comprise a first non-zero coefficient according to a reverse scan order of the residual block, a last non-zero coefficient according to the reverse scan order, and the coefficients between the first and the last non-zero coefficients in the set of coefficients according to the reverse scan order;
- if the count of modifiable coefficients in the set of coefficients is less than or equal to the predetermined number, determining that a sign designation of the last non-zero coefficient according to the reverse scan order is not hidden;
- and
- if the count of modifiable coefficients in the set of coefficients is greater than the predetermined number:
- determining that the sign designation of the last non-zero coefficient is hidden, and
- determining the sign designation for the last non-zero coefficient, comprising:
- computing a sum of non-zero coefficients in the set of coefficients;
- computing, using the sum of the non-zero coefficients, parity data;
- and
- designating a sign for the last non-zero coefficient based on the parity data;
- wherein the predetermined number is 4.
Dependencies are inferred from the claim text.