Embedded image coder with rate-distortion optimization
First Claim
1. A rate-distortion optimization method for embedded coding of a digital image, comprising the steps of:
- transforming the image to form a set of coefficients;
quantizing the coefficients to form a set of symbols;
calculating, for each symbol, a predicted rate-distortion slope based on an expected distortion decrease and an expected coding rate increase for that symbol;
selecting an encoding order for the symbols by ordering each symbol according to that symbol'"'"'s calculated predicted rate-distortion slope, such that symbols with a steeper predicted rate distortion slope, and therefore larger predicted distortion decrease, are encoded before symbols with a less steep predicted rate distortion slope.
1 Assignment
0 Petitions
Accused Products
Abstract
A rate-distortion optimized embedding (RDE) coder optimizes rate-distortion performance by coding information bits in the order of their R-D slope. RDE allocates the available coding bits first to the information bit with the steepest R-D slope, which indicates the largest distortion decrease per coding bit. The resultant RDE bitstream can be truncated at any point and still maintain an optimal R-D performance. To avoid the overhead of coding order transmission, an expected R-D slope is calculated by both the encoder and the decoder from previous RDE coded bits. A probability estimation table from a QM arithmetic coder allows the R-D slope to be derived using a lookup table operation. The rate-distortion optimised embedding (RDE) coder significantly improves the coding efficiency over a wide range of bit rates.
107 Citations
27 Claims
-
1. A rate-distortion optimization method for embedded coding of a digital image, comprising the steps of:
-
transforming the image to form a set of coefficients;
quantizing the coefficients to form a set of symbols;
calculating, for each symbol, a predicted rate-distortion slope based on an expected distortion decrease and an expected coding rate increase for that symbol;
selecting an encoding order for the symbols by ordering each symbol according to that symbol'"'"'s calculated predicted rate-distortion slope, such that symbols with a steeper predicted rate distortion slope, and therefore larger predicted distortion decrease, are encoded before symbols with a less steep predicted rate distortion slope.
-
-
2. A rate-distortion optimization method for embedded coding of a digital image, comprising the steps of:
-
transforming the image to form a set of coefficients each comprising multiple bits;
analyzing a current layer, comprising the most significant unencoded bit from each coefficient, by calculating, for each bit in the current layer, a predicted rate-distortion slope based on an expected distortion decrease and an expected coding rate increase for that bit; and
encoding a selected bit in the current layer with an entropy coder, the bit selected according to its calculated predicted rate distortion slope, such that bits from the current layer with a steeper predicted rate distortion slope, and therefore larger predicted distortion decrease, are encoded before bits with a less steep predicted rate distortion slope. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
setting a threshold value;
encoding the bits in the current layer having a predicted rate-distortion slope greater than the threshold value;
reducing the threshold value; and
reconfiguring the current layer of bits to include the most significant unencoded bits in each coefficient.
-
-
5. A method according to claim 2 wherein the predicted rate-distortion slope for a given bit is generated according to the coding layer of that bit, a significance status of that bit'"'"'s coefficient indicating whether all previous bits in the coefficient are zeros, and the significance statuses of surrounding coefficients.
-
6. A method according to claim 2 wherein the predicted rate-distortion slope is derived for each bit according to a significance identification mode or a refinement mode.
-
7. A method according to claim 6 wherein the significance identification mode encodes all significant bits in the coefficients defined as all bits up to a first binary 1 value and the refinement mode encodes all refinement bits defined as all bits after the first binary 1 value.
-
8. A method according to claim 7 wherein the rate distortion slope is derived for the significant bits as follows:
-
where the function fs(p) is the significance R-D slope modification factor defined as;
Tn i is a quantization step size determined by the coding layer ni, pi is probability of significance that a candidate bit bni =1, and H(p) is entropy of a binary symbol.
-
-
9. A method according to claim 7 wherein the rate distortion slope derived for the refinement bits is the following:
-
where Tn i is a quantization step size determined by the coding layer ni.
-
-
10. A method according to claim 7 wherein the rate distortion slope for the significance bits and the refinement bits are derived according to a Laplacian probability distribution.
-
11. A method according to claim 6 wherein the significance identification mode uses a QM-coder that estimates a probability that the bit is significant according to a significant status of the same and adjacent coefficients.
-
12. A method according to claim 6 including precomputing and storing a table containing the rate-distortion slope values for significance bit coding and refinement bit coding and indexing the rate-distortion slope values according to the coding layer and a coder state corresponding the probability of significance or insignificance that the most probable bit during the significant identification mode is a 1 or a 0.
-
13. An embedded encoder for optimizing rate-distortion coding of a digitized image, comprising:
-
a transformer for encoding the digitized image, thereby forming a set of coefficients each comprising multiple bits;
a rate-distortion slope calculator for analyzing a set of candidate bits comprising a most significant unencoded bit from each coefficient, and determining, for each candidate bit, a predicted rate-distortion slope based on an expected distortion decrease and an expected coding rate increase for that bit; and
a symbol selector for selecting an order for encoding the bits based on the predicted rate-distortion slope for each bit, such that bits with a steeper predicted rate distortion slope, and therefore larger predicted distortion decrease, are encoded before bits with a less steep predicted rate distortion slope. - View Dependent Claims (14, 15)
a second entry for a symbol 0 to be the most probable symbol for each one of multiple QM-coder states each associated with a probability of significance.
-
-
16. A method for embedded coding a data array, comprising the steps of:
-
calculating a predicted rate distortion slope for each symbol in a group of symbols taken from the data array, the predicted rate distortion slope for a symbol based on an expected distortion decrease and an expected coding rate increase for that symbol; and
selecting an encoding order for the symbols in the group by ordering each symbol according to that symbol'"'"'s calculated predicted rate-distortion slope, such that symbols with a steeper predicted rate distortion slope, and therefore larger predicted distortion decrease, are encoded before symbols with a less steep predicted rate distortion slope. - View Dependent Claims (17, 18)
setting a threshold value; and
encoding the symbols in the group having predicted rate distortion slopes greater than the threshold value.
-
-
18. The method of claim 16, wherein selecting an encoding order for the symbols in the group comprises the steps of:
-
selecting the symbol from the group having the largest predicted rate distortion slope; and
encoding that symbol.
-
-
19. An embedded digital image decoder comprising:
-
an entropy decoder for decoding an entropy-coded bitstream comprising embedded transform coefficient data;
a rate-distortion slope calculator for calculating a predicted rate-distortion slope for a transform coefficient location in a coefficient array, based on an expected distortion decrease and an expected coding rate increase for transmission of a bit corresponding to that coefficient location; and
a bit encoding order decoder for determining the bit encoding order present in the decoded entropy-coded bitstream based on predicted rate-distortion slope calculated by the rate-distortion slope calculator. - View Dependent Claims (20, 21)
-
-
22. A method for decoding an embedded-coded image, the method comprising the steps of:
-
initializing a transform coefficient array;
decoding an encoded bitstream comprising embedded transform coefficient data; and
determining the bit encoding order present in the decoded entropy-coded bitstream, by calculating a predicted rate-distortion slope for the most significant undecoded bit from each transform coefficient, and assigning data from the decoded entropy-coded bitstream to those coefficients in a descending order of predicted rate-distortion slope. - View Dependent Claims (23, 24, 25, 26, 27)
-
Specification