Claims
- 1. A method for filtering an image data subset of a page description data set, comprising the steps of:
receiving a set of page description data including at least one image data subset; filtering image data of the image data subset by comparing adjacent pixels and coalescing adjacent pixels having substantially identical color values into pixel blocks wherein each of the pixel blocks is a plurality of pixels described by pixel block size, location in the image data subset, and an average of the substantially identical color values of the adjacent pixels.
- 2. The method as set forth in claim 1 wherein the step of filtering comprises the further step of:
determining when compared pixels have coalesced into a pixel block of a first predetermined size.
- 3. The method as set forth in claim 2, comprising the further step of:
stopping the coalescing when compared pixels have coalesced into a block of a first predetermined size.
- 4. The method as set forth in claim 1 wherein the step of filtering comprises the further step of:
determining when compared pixels have exceeded a predetermined threshold for constituting the substantially identical color values.
- 5. The method as set forth in claim 4, comprising the further step of:
stopping the coalescing when compared pixels have exceeded a predetermined threshold for constituting the substantially identical color values.
- 6. The method as set forth in claim 4 wherein the step of determining when compared pixels have exceeded a predetermined threshold comprises the further steps of:
a. sequentially comparing adjacent individual pixels in first adjacent pixel rows; b. coalescing adjacent individual pixels into first blocks of pixels when a difference between color values for each of the individual pixels is less than an initial predetermined threshold; c. repetitively comparing adjacent pixel blocks to the first blocks and coalescing the first blocks of pixels with the adjacent pixel blocks when the difference between color values for adjacent pixel blocks is less than the predetermined initial threshold iteratively reduced for each repetitive comparison.
- 7. The method as set forth in claim 6 comprising the further steps of:
d. repeating steps a. through c. for a set of a predetermined number of second adjacent pixel rows to a set of a predetermined number of the first adjacent pixel rows; and e. coalescing pixel blocks of the first adjacent pixel rows with adjacent pixel blocks of the second adjacent pixel rows into larger blocks of pixels such that each of the larger blocks of pixels is less than or equal to a pixel block of a second predetermined size when the difference between color values for adjacent pixel blocks is less than a predetermined initial threshold iteratively reduced for each repetitive comparison.
- 8. The method as set forth in claim 7 comprising the further step of:
f. cyclically offsetting pixel block grid boundaries such that successive groups of pixel rows are filtered on offset block boundaries.
- 9. A method for filtering a data set of image raster data in the form of color space coordinate values for individual pixels, comprising the steps of:
a. choosing a current pixel for filtering; b. comparing the current pixel to adjacent pixels; c. determining when adjacent pixels have a substantially identical color value; d. when the adjacent pixels do not have a substantially identical color value, choosing a new current pixel for filtering and returning to step b.; e. when the adjacent pixels have a substantially identical color value, averaging the adjacent pixels and forming a pixel block therefrom having a single color space coordinate value therefor; f. comparing adjacent pixel blocks; g. when adjacent pixel blocks have a substantially identical color value, averaging the adjacent pixel blocks and forming a pixel super-block therefrom having a single color space coordinate value therefor, and h. repeating steps b. through g. for the entire data set until either no substantially identical color value pixels or pixel blocks or pixel super-blocks are adjacently located or until a predetermined size pixel blocks or super-blocks of a predetermined grid size of pixels is created; and i. when adjacent pixel blocks do not have a substantially identical color value, choosing a new current pixel for filtering and returning to step b.
- 10. The method as set forth in claim 9 wherein step h. comprises the step of:
repeating steps b. through g. until no substantially identical color value pixels or pixel blocks or pixel super-blocks are adjacently located or until pixel super-blocks of 8-by-4 pixels are created.
- 11. The method as set forth in claim 9, comprising the step of:
performing the averaging as set forth in step g. whenever a subset of pixel, pixel block and pixel super-block data has a color difference error value less than an initial predetermined color difference error value.
- 12. The method as set forth in claim 11, comprising the step of:
the initial predetermined color difference error value is defined by the equation ERROR=(3*difference value Red+4*difference value Green+2*difference value Blue)+8, where “difference value” means the spatial coordinate value difference between a current pixel and its adjacent pixel or between adjacent pixel blocks or between adjacent pixel super-locks.
- 13. The method as set forth in claim 12, comprising the step of:
for each pixel block comparison in a current series of comparing steps, the difference error value is reduced by a predetermined ratio.
- 14. The method as set forth in claim 12, comprising the step of:
for each pixel block comparison in a series of comparing steps, the difference error value is inversely proportional to the number of pixels in the block.
- 15. A computer algorithm for filtering an image data set, comprising the steps of:
operating on a predetermined number of rows of pixels of said image data set by comparing and coalescing individual pixels into rectangular blocks of pixels such that each of the rectangular blocks has a single color space coordinate identifier wherein block sizes of a programmable predetermined size block are constructed and each of the rectangular blocks is complete when a color difference error value between adjacent blocks exceeds a programmable, variable, predetermined threshold such that a filtered image data set is formed from rectangular blocks of pixels; and replacing the image data set with the filtered image data set.
- 16. A data compression method for compound document data, comprising the steps of:
receiving a set of page description data representing a compound document page; extracting image data from the set of page description data; filtering the image data and outputting a filtered image data set; restoring the filtered image data set to the set of page description data; rasterizing the set of page description data having the filtered image data set and outputting a set of rasterized page description data; and compressing the rasterized page description data and outputting a set of compressed rasterized page description.
- 17. The method as set forth in claim 16 wherein the step of filtering the image data further comprises the step of:
reducing the image data from individual pixels to pixel blocks representing groups of adjacent pixels having substantially identical color values.
- 18. The method as set forth in claim 17 wherein the step of reducing the image data comprises the steps of:
a. comparing color value data of adjacent pixels of a first two adjacent pixel rows, and b. averaging the adjacent pixels when each pixel has a substantially identical color value, forming a single pixel block for replacing the adjacent pixels.
- 19. The method as set forth in claim 18 wherein the step of reducing the image data comprises the further steps of:
d. comparing adjacent pixel blocks, and e. averaging the adjacent pixel blocks when each block has a substantially identical color value, forming pixel super-blocks for replacing the adjacent pixel blocks.
- 20. The method as set forth in claim 19, wherein the step of reducing the image data comprises the further step of:
f. repeating steps d. and e. until a first predetermined size pixel super-block of predetermined number of pixels is created.
- 21. The method as set forth in claim 19, wherein the step of reducing the image data further comprises the steps of:
repeating steps d. through e. until a pixel super-block of 4-by-2 pixels is created.
- 22. The method as set forth in claim 20, comprising the steps of:
g. repeating the steps a. through f. for two rows of adjacent pixel rows immediately following the first two adjacent pixel rows, h. comparing adjacent pixel super-blocks of the two rows of adjacent pixel rows immediately following the first two adjacent pixel rows, and i. averaging the adjacent pixel super-blocks when each block has a substantially identical color value, forming second predetermined size pixel super-blocks replacing the adjacent pixel super-blocks.
- 23. The method as set forth in claim 22, wherein the step of forming second predetermined size pixel super-blocks replacing the adjacent pixel super-blocks comprises the step of:
forming the second predetermined size pixel super-blocks of 8×4 pixels.
- 24. The method as set forth in claim 22, wherein each step of averaging further comprises the step of:
averaging only when a pair of compared color values has a difference less than an initial predetermined threshold value wherein the initial predetermined threshold value is iteratively reduced by a predetermined factor each time a subsequently formed block is used in a step of comparing.
- 25. A computer memory having an image data filtering program comprising:
means for receiving a set of page description data representing a compound document page; means for extracting image data from the set of page description data; means for filtering the image data and outputting a filtered image data set; means for restoring the filtered image data set to the set of page description data; means for rasterizing the set of page description data having the filtered image data set; and means for outputting a set of rasterized page description data.
- 26. The computer memory having an image data filtering program as set forth in claim 25, wherein the means for filtering the image data and outputting a filtered image data set further comprises:
means for reducing the image data by coalescing individual adjacent pixels having a substantially identical color values into blocks wherein each of the blocks is described by a pixel-grid size, location in the image data, and an average of the substantially identical color values.
- 27. The computer memory having an image data filtering program as set forth in claim 26, wherein means for reducing the image data by coalescing individual adjacent pixels having a substantially identical color values into blocks further comprises:
means for determining when compared pixels have coalesced into a block of a predetermined size, and means for determining when compared pixels have exceeded a predetermined threshold for constituting the substantially identical color values.
- 28. The computer memory having an image data filtering program as set forth in claim 26, wherein means for reducing the image data by coalescing individual adjacent pixels having a substantially identical color values into blocks further comprises:
means for cyclically offsetting the means for reducing such that every pixel row of is compared to both pixel rows adjacent thereto.
- 29. A computerized method for enhancing compressibility of a compound document data set comprising the steps of:
extracting pixel image data from the data set; filtering the pixel image data such that image regions of substantially the same color are in a compression enhanced format; recombining the image data set to form a data compressible enhanced format compound document single page data set; rasterizing the data compressible enhanced format compound document data set.
- 30. The computerized method as set forth in claim 29, the step of filtering further comprising the steps of:
comparing pairs of pixels; averaging representative color data of the pairs of pixels if respective pixel image data are close enough in value so as to minimally affect print quality such that pixel blocks are formed set to a single color value for enhancing compressibility; and averaging pixel blocks with neighboring blocks to create larger blocks until a predetermined super-block size is reached or until a color error tolerance is reached wherein as super-block area grows, the color error tolerance is reduced.
RELATED APPLICATION
[0001] This application is related to U.S. patent application Ser. No. ______ filed on the same date herewith, by the same inventors herein named, for Compound Document Page Data Compression, attorney docket no. 10981595-1.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09946872 |
Sep 2001 |
US |
Child |
10317913 |
Dec 2002 |
US |