System, method and article of manufacture for decompressing digital camera sensor data
First Claim
1. A method for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
- obtaining a plurality of bits of compressed input data from a bit stream;
executing a first decoding operation based on the obtained compressed input data in order to generate first output data;
determining whether sufficient space is available for the first output data;
emitting the first output data if it is determined that there is sufficient space for the first output data; and
executing a second decoding operation in order to generate second output data if it is determined that there is insufficient space for the first output data.
8 Assignments
0 Petitions
Accused Products
Abstract
The present invention includes a system, method, and article of manufacture for decompressing a bit stream of compressed data representing a plurality of image blocks. This includes a two-step method of processing both a DC code and a plurality of AC codes. With respect to the processing of the AC codes, a plurality of bits of compressed input data relating to the AC codes are first retrieved from the bit stream. A first decoding operation is then executed based on the obtained compressed input data in order to generate first output data. It is then determined whether sufficient space is available for the first output data. If it is determined that there is sufficient space for the first output data, the first output data is outputted. On the other hand, if it is determined that there is insufficient space for the first output data, an alternate second decoding operation is executed in order to generate second output data. In order to carry out the foregoing decoding operations, a data structure is provided in a look-up table for being employed by the AC decoder during use. Such data structure includes a plurality of data segments each having a payload and a pointer. The payload includes a plurality of bits in one of a plurality of coding schemes. Further, the pointer corresponds to a routine which is capable of processing the coding scheme of the payload associated with the pointer. The first decoding operation first includes the step of performing a look-up in the look-up table based on the obtained compressed input data. The pointer is then retrieved from one of the data segments that corresponds to the obtained compressed input data. Next, the routine corresponding to the retrieved pointer is executed. The payload is then processed in the executed routine in order to generate the first output data. The foregoing routine that processes the payload of the data segment in order to generate the first output data may take many forms.
7 Citations
52 Claims
-
1. A method for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
-
obtaining a plurality of bits of compressed input data from a bit stream; executing a first decoding operation based on the obtained compressed input data in order to generate first output data; determining whether sufficient space is available for the first output data; emitting the first output data if it is determined that there is sufficient space for the first output data; and executing a second decoding operation in order to generate second output data if it is determined that there is insufficient space for the first output data. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program embodied on a computer readable medium for decompressing a bit stream of compressed data representing a plurality of image portions, the computer program comprising:
-
a code segment for obtaining a plurality of bits of compressed input data from a bit stream; a code segment for executing a first decoding operation based on the obtained compressed input data in order to generate first output data; a code segment for determining whether sufficient space is available for the first output data; a code segment for emitting the first output data if it is determined that there is sufficient space for the first output data; and a code segment for executing a second decoding operation in order to generate second output data if it is determined that there is insufficient space for the first output data. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A data structure for being used by an AC decoder while decompressing a plurality of bits of compressed input data in a bit stream, the data structure comprising:
a plurality of data segments each including; a payload including a plurality of bits in one of a plurality of coding schemes, and a pointer corresponding to a routine which is capable of processing the coding scheme of the payload associated with the pointer. - View Dependent Claims (16)
-
17. A method for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
-
obtaining a plurality of bits of compressed input data from a bit stream; performing a look-up in a look-up table based on the obtained compressed input data, wherein the look-up table includes a plurality of data segments each having a payload including a plurality of bits in one of a plurality of coding schemes and a pointer corresponding to a routine which is capable of processing the coding scheme of the payload associated with the pointer; retrieving the pointer from one of the data segments that corresponds to the obtained compressed input data; executing the routine corresponding to the retrieved pointer; and processing the payload in the executed routine in order to generate output data. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer program embodied on a computer readable medium for decompressing a bit stream of compressed data representing a plurality of image portions, the computer program comprising:
-
a code segment for obtaining a plurality of bits of compressed input data from a bit stream; a code segment for performing a look-up in a look-up table based on the obtained compressed input data, wherein the look-up table includes a plurality of data segments each having a payload including a plurality of bits in one of a plurality of coding schemes and a pointer corresponding to a routine which is capable of processing the coding scheme of the payload associated with the pointer; a code segment for retrieving the pointer from one of the data segments that corresponds to the obtained compressed input data; a code segment for executing the routine corresponding to the retrieved pointer; and a code segment for processing the payload in the executed routine in order to generate the output data. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A method for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
-
obtaining a plurality of bits of compressed input data from a bit stream; performing a look-up in a look-up table based on the obtained compressed input data, wherein the look-up table includes a plurality of data segments each including output data therein; zeroing out at least one bit of the compressed input data and performing another look-up if the look-up is unsuccessful; retrieving the output data from one of the data segments that corresponds to the obtained compressed input data; and determining whether a current position is at an end of an image portion. - View Dependent Claims (36, 37, 38)
-
-
39. A computer program embodied on a computer readable medium for decompressing a bit stream of compressed data representing a plurality of image portions, the computer program comprising:
-
a code segment for obtaining a plurality of bits of compressed input data from a bit stream; a code segment for performing a look-up in a look-up table based on the obtained compressed input data, wherein the look-up table includes a plurality of data segments each including output data therein; a code segment for zeroing out at least one bit of the compressed input data and performing another look-up if the look-up is unsuccessful; a code segment for retrieving the output data from one of the data segments that corresponds to the obtained compressed input data; and a code segment for determining whether a current position is at an end of an image portion. - View Dependent Claims (40, 41, 42)
-
-
43. A method for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
-
extracting a plurality of coefficient components from a bit stream; executing an inverse quantization operation on at least some of the coefficient components; executing an inverse DCT operation on at least some of the coefficient components; and inserting zeros between the coefficient components after executing the inverse quantization operation and the inverse DCT operation. - View Dependent Claims (44)
-
-
45. A computer program embodied on a computer readable medium for decompressing a bit stream of compressed data representing a plurality of image portions, comprising:
-
a code segment for extracting a plurality of coefficient components from a bit stream; a code segment for executing an inverse quantization operation on at least some of the coefficient components; a code segment for executing an inverse DCT operation on at least some of the coefficient components; and a code segment for inserting zeros between the coefficient components after executing the inverse quantization operation and the inverse DCT operation. - View Dependent Claims (46)
-
-
47. A method for inputting data in a processor having at least two pipelines, comprising:
-
extracting a plurality of components from an input bit stream; analyzing the components of the input bit stream; and directing the components of the input bit stream into one of the pipelines for processing purposes based on the analysis. - View Dependent Claims (48)
-
-
49. A computer readable medium embodied on a computer readable medium for inputting data in a processor having at least two pipelines, comprising:
-
a code segment for extracting a plurality of components from an input bit stream; a code segment for analyzing the components of the input bit stream; and a code segment for directing the components of the input bit stream into one of the pipelines for processing purposes based on the analysis. - View Dependent Claims (50)
-
-
51. A system for managing input data in a processor for increased efficiency, comprising:
-
a processor module for extracting a plurality of components from an input bit stream; a central processing unit having at least two pipelines for receiving the components of the input bit stream for processing purposes; and a pipe analyzer coupled between the processor module and the central processing unit for analyzing the components of the input bit stream and directing the components of the input bit stream into one of the pipelines of the central processing unit based on the analysis. - View Dependent Claims (52)
-
Specification