Apparatus and method for hybrid compression of raster data
First Claim
1. An apparatus for hybrid compression of raster data, said raster data being an array of pixels with each pixel representing a color at a position in the array, comprising:
- a first storage for buffering subarrays of the array of pixels;
a patch recognizer operating on individual subarrays and recognizing patches of connected pixels of the same color therein, each patch having a determinable number of pixels;
a patch type discriminator separating individual patches into either a first type patch or a second type patch, depending respectively on whether or not the number of pixels in a patch is at least of a predetermined number;
a first compressor employing a first encoding procedure to encode pixels of the first type patches into encoded data of a first type; and
a second compressor employing a second encoding procedure to encode pixels of the second type patches into encoded data of a second type,thereby allowing the encoded data of the first and second types to be stored in a storage in compressed form, and to be decodeable substantially by inverting the respective encoding procedures to obtain reconstructed pixels of said array.
1 Assignment
0 Petitions
Accused Products
Abstract
From a raster page, patches of connected pixels of the same color are identified. Patches of at least a predetermined sized, typically corresponding to text or line art objects, are subjected to a lossless compression. Patches below the predetermined size, typically corresponding to image or photo objects, are substantially subjected to a lossy compression. The patch predetermined size controls the mix of lossless and lossy compression procedures. Optimum compression is achieved by maximizing the lossless compression while attaining a targeted compression ratio. Various features include efficient recognition and encoding of patches, refined treatment of the boundaries between the lossless- and the lossy-compressed pixels, adaptive compression ratio control, and fail-safe compression provisions.
156 Citations
60 Claims
-
1. An apparatus for hybrid compression of raster data, said raster data being an array of pixels with each pixel representing a color at a position in the array, comprising:
-
a first storage for buffering subarrays of the array of pixels; a patch recognizer operating on individual subarrays and recognizing patches of connected pixels of the same color therein, each patch having a determinable number of pixels; a patch type discriminator separating individual patches into either a first type patch or a second type patch, depending respectively on whether or not the number of pixels in a patch is at least of a predetermined number; a first compressor employing a first encoding procedure to encode pixels of the first type patches into encoded data of a first type; and a second compressor employing a second encoding procedure to encode pixels of the second type patches into encoded data of a second type, thereby allowing the encoded data of the first and second types to be stored in a storage in compressed form, and to be decodeable substantially by inverting the respective encoding procedures to obtain reconstructed pixels of said array. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An apparatus for hybrid compression and decompression of raster data, said raster data being an array of pixels with each pixel representing a color at a position in the array, comprising:
-
a first storage for buffering subarrays of the array of pixels; a patch recognizer operating on individual subarrays and recognizing patches of connected pixels of the same color therein, each patch having a determinable number of pixels; a patch type discriminator separating individual patches into either a first type patch or a second type patch, depending respectively on whether or not the number of pixels in a patch is at least of a predetermined number; a first compressor employing a first encoding procedure to encode pixels of the first type patches into encoded data of a first type; and a second compressor employing a second encoding procedure to encode pixels of the second type patches into encoded data of a second type; a second storage for storing the encoded data of the first and second types; and first and second decompressors coupled to said second storage for respectively decoding the encoded data of the first and second types into corresponding pixels of said array to reconstruct the raster data. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A method for hybrid compression of raster data, said raster data being an array of pixels with each pixel representing a color at a position in the array, comprising:
-
identifying patches of connected pixels of the same color; discriminating whether each patch has a size that belongs to a first or second type, wherein a patch of said first type contains pixels of at least a predetermined number and a patch of said second type contains pixels less than said predetermined number; encoding patches belonging to said first type by a first compression procedure; and encoding patches belonging to said second type by a second compression procedure. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
-
46. A method for hybrid compression and decompression of raster data, said raster data being an array of pixels with each pixel representing a color at a position in the array, comprising:
-
buffering subarrays of the array of pixels in a first storage; identifying in individual subarrays patches of connected pixels of the same color, each patch having a determinable number of pixels; discriminating and separating individual patches into either a first type patch or a second type patch, depending respectively on whether or not the number of pixels in a patch is at least of a predetermined number; employing a first encoding procedure to encode pixels of the first type patches into encoded data of a first type; and employing a second encoding procedure to encode pixels of the second type patches into encoded data of a second type; storing the encoded data of the first and second types in a second storage; and decoding the encoded data of the first and second types in the second storage into corresponding pixels of said array to reconstruct the raster data. - View Dependent Claims (47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60)
-
Specification