Optimized method and system for entropy coding
AssigneeAdobe Systems Incorporated
InventorAnubha Rastogi
Life of this patent
Estimating the term…
Abstract
An optimized method and system for entropy coding is described. The system may include an input module to receive a digital image, a Discrete Cosine Transform (DCT) module to obtain a plurality of DCT coefficients associated with the digital image, a statistics generator to generate statistics associated with the plurality of DCT coefficients, a placement module to store the generated statistics in the plurality of DCT coefficients and entropy coder to generate uniquely decodable (UD) codes for the plurality of DCT coefficients. The entropy coder may utilize the statistics stored in the plurality of DCT coefficients.
Claims22
A system comprising:
- an input module to receive a digital image;
- a Discrete Cosine Transform (DCT) module to obtain a plurality of DCT coefficients associated with the digital image, each DCT coefficient from the plurality of DCT coefficients associated with a DCT coefficient storage comprising one or more bits for storing a value of a DCT coefficient and one or more available bits;
- a statistics generator to generate statistics associated with the plurality of DCT coefficients, the statistics comprising a first value and a second value, the first value comprising a bit-length of a non-zero DCT coefficient, the second value comprising a length of a zero-run;
- a placement module to store the generated statistics in at least some of the available bits of the plurality of DCT coefficients, the placement module to store the first value in at least some of available bits of a non-zero DCT coefficient from the plurality of DCT coefficients and to store the second value in at least some of available bits of a zero-value DCT coefficient from the plurality of DCT coefficients;
- and
- an entropy coder to generate uniquely decodable (UD) codes for the plurality of DCT coefficients utilizing the statistics stored in the plurality of DCT coefficients.
A method comprising:
- receiving a digital image;
- obtaining a plurality of Discrete Cosine Transform (DCT) coefficients associated with the digital image, each DCT coefficient from the plurality of DCT coefficients comprising one or more bits for storing a value of a DCT coefficient and one or more available bits;
- generating statistics associated with the plurality of DCT coefficients, the statistics comprising a first value and a second value, the first value comprising a bit-length of a non-zero DCT coefficient, the second value comprising a length of a zero-run;
- storing the generated statistics in at least some of the available bits of the plurality of DCT coefficients, the storing comprising:
- for each DCT coefficient from the non-zero DCT coefficients storing the first value in the one or more available bits of the non-zero DCT coefficient, and
- storing the second value in at least some of available bits of a zero-value DCT coefficient from the plurality of DCT coefficients;
- and
- generating uniquely decodable (UD) codes for the plurality of DCT coefficients utilizing the statistics stored in the plurality of DCT coefficients.
A system comprising:
- an input module to receive an image;
- a Discrete Cosine Transform (DCT) module to obtain a plurality of DCT coefficients associated with the image;
- a statistics generator to generate statistics associated with the plurality of DCT coefficients;
- an entropy coder to generate uniquely decodable (UD) codes for the plurality of DCT coefficients utilizing the statistics stored in the plurality of DCT coefficients;
- a last non-zero module to:
- determine that a value of a last position DCT coefficient from the plurality of DCT coefficients is zero, the last position DCT coefficient being a last-accessed DCT coefficient when all other DCT coefficients in the plurality of the DCT coefficients have already been accessed, and
- determine a position of a last non-zero DCT coefficient from the plurality of DCT coefficients, the last non-zero DCT coefficient being the most recently accessed non-zero DCT coefficient after all other non-zero DCT coefficients in the plurality of the DCT coefficients have already been accessed;
- the placement module to store the position of the last non-zero DCT coefficient in at least some of available bits of the last position DCT coefficient;
- and
- an entropy coder to encode the plurality of DCT coefficients utilizing the position of the last non-zero DCT coefficient stored in the at least some of available bits of the last position DCT coefficient.
A non-transitory computer readable medium having instruction data to cause a machine to:
- receive a digital image;
- obtain a plurality of Discrete Cosine Transform (DCT) coefficients associated with the digital image, each DCT coefficient from the plurality of DCT coefficients associated with a DCT coefficient storage comprising one or more bits for storing a value of a DCT coefficient and one or more available bits;
- generate statistics associated with the plurality of DCT coefficients, the statistics comprising a first value and a second value, the first value comprising a bit-length of a non-zero DCT coefficient, the second value comprising a length of a zero-run;
- store the generated statistics in at least some of the available bits of the plurality of DCT coefficients, the placement module to store the first value in at least some of available bits of a non-zero DCT coefficient from the plurality of DCT coefficients and to store the second value in at least some of available bits of a zero-value DCT coefficient from the plurality of DCT coefficients;
- generate uniquely decodable (UD) codes for the plurality of DCT coefficients utilizing the statistics stored in the plurality of DCT coefficients;
- and
- generate a compressed version of the digital image utilizing the UD codes.
Dependencies are inferred from the claim text.