Method and apparatus for generating masks for a multi-layer image decomposition
First Claim
1. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
- obtaining, from a digital source, the digital image;
initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold;
determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters;
determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image;
initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density;
updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map;
updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map;
updating the second pixel map by removing identifications of pixels also identified by the first pixel map;
generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map;
compressing pixel data identified by the first pixel map by a first compression method;
compressing pixel data identified by the second pixel map by a second compression method;
compressing pixel data identified by the third pixel map by a third compression method; and
constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein;
the plurality of contrast filters comprises a saturation filter; and
the indicating the contrast detection by one from the plurality of contrast filters comprises;
the saturation filter identifying a saturated pixel in the digital image, the saturated pixel not identified by the first pixel map, the saturated pixel having a first value of a value range for one of the group of colors consisting of red color, green color and blue color, the first value comprising one of a minimum of the value range or a maximum of the value range;
the saturation filter identifying a second pixel adjacent to the saturated pixel, the second pixel having a second value for the one of the group of colors consisting of red color, green color and blue color, the second value exceeding a threshold difference from the first value.
6 Assignments
0 Petitions
Accused Products
Abstract
Decomposing a computer display image into different layer types and associated masks based on the unique nature of the image is disclosed. These types include text, objects, background and pictures. A set of image masks is used to uniquely identify different layer types within an image, where each layer type includes none, some or all of the pixels of the original image. Each layer of the image is processed prior to transmission (i.e. compressed) using a method appropriate for the characteristics of that layer.
69 Citations
8 Claims
-
1. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein; the plurality of contrast filters comprises a saturation filter; and the indicating the contrast detection by one from the plurality of contrast filters comprises; the saturation filter identifying a saturated pixel in the digital image, the saturated pixel not identified by the first pixel map, the saturated pixel having a first value of a value range for one of the group of colors consisting of red color, green color and blue color, the first value comprising one of a minimum of the value range or a maximum of the value range; the saturation filter identifying a second pixel adjacent to the saturated pixel, the second pixel having a second value for the one of the group of colors consisting of red color, green color and blue color, the second value exceeding a threshold difference from the first value.
-
-
2. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein; each pixel of the digital image comprises a plurality of values for primary colors in a color space; the plurality of contrast filters comprise a saturation filter; and indicating the contrast detection by one from the plurality of contrast filters comprises; the saturation filter identifying a saturated pixel in the digital image, the saturated pixel not identified by the first pixel map, the saturated pixel having a first value of a first value range for a first one from the group of colors consisting of red color, green color and blue color, the first value comprising one of a minimum of the first value range or a maximum of the first value range, the saturated pixel having a second value of a second value range for a second one from one of the group of colors consisting of red color, green color and blue color, the second value comprising one of a minimum of the second value range or a maximum of the second value range; and the saturation filter identifying a straight line of pixels comprising a second pixel adjacent to the saturated pixel and a third pixel adjacent to the second pixel, the third pixel having a third value of the first value range for the first one of group of colors consisting of red color, green color and blue color, the third value exceeding a threshold difference from the first value.
-
-
3. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein—
indicating the contrast detection by one from the plurality of contrast filters comprises;a first pixel pattern filter identifying three adjacent in-line pixels comprising a first end pixel, a middle pixel and a second end pixel; the first pixel pattern filter identifying less than a first threshold difference in color between the first end pixel and the second end pixel; the first pixel pattern filter identifying at least a second threshold difference in color between the middle pixel and the first end pixel; and the first pixel pattern filter indicating the contrast detection for each of the first end pixel, the middle pixel and the second end pixel.
-
-
4. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein indicating the contrast detection by one from the plurality of contrast filters comprises; a second pixel pattern filter identifying four adjacent in-line pixels comprising a first end pixel, a first middle pixel, a second middle pixel and a second end pixel; the second pixel pattern filter identifying less than a first threshold difference in color between the first end pixel and the second end pixel; the second pixel pattern filter identifying at least a second threshold difference in color between the first end pixel and at least one of a set comprising the first middle pixel and the second middle pixel; and the second pixel pattern filter indicating the contrast detection for each of the first end pixel, the first middle pixel, the second middle pixel and the second end pixel.
-
-
5. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein indicating the contrast detection by one from the plurality of contrast filters comprises; a third pixel pattern filter identifying five adjacent in-line pixels comprising a first end pixel, a middle pixel, and a second end pixel; the third pixel pattern filter identifying less than a first threshold difference in color between the first end pixel and the second end pixel; the third pixel pattern filter identifying at least a second threshold difference in color between the first end pixel and the middle pixel; and the third pixel pattern filter indicating the contrast detection for each of the five adjacent in-line pixels.
-
-
6. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein; the initializing the first pixel map comprises applying a constant color filter to essentially all pixels of the digital image independent of the determining the mark count and independent of initializing the second pixel map; the initializing the second pixel map comprises applying a subset of the plurality of contrast filters to essentially all of the pixels of the digital image independent of the constant color filter and independent of the initializing the first pixel map; the initializing the first pixel map and the initializing the second pixel map comprise identifying at least one pixel of the digital image in both the first pixel map and the second pixel map; and the third pixel map identifies at least one remaining pixel of the digital image identified neither in the first pixel map nor the second pixel map.
-
-
7. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein the at least one pixel identified by the second pixel map comprises a linear sequence of less than a fourth threshold number of pixels, the fourth threshold number of pixels comprising a fifth threshold number of pixels identified by the second pixel map and a sixth threshold number of pixels identified neither by the first pixel map nor the second pixel map.
-
-
8. A method of transforming a digital image into at least one discrete packet for transmission to a remote client, the method executed under the control of a processor configured with computer executable instructions, comprising:
-
obtaining, from a digital source, the digital image; initializing a first pixel map to identify essentially all contiguous sets of pixels from the digital image that have a defined color matching tolerance and exceeding a pixel count threshold; determining a mark count for each pixel of the digital image, each mark of the mark count indicating a contrast detection by one of a plurality of contrast filters; determining a mark density for the each pixel of the digital image that exceeds a threshold of the mark count, the mark density indicating an accumulation of the mark counts from pixels of the digital image within a defined area including the each pixel of the digital image; initializing a second pixel map to identify pixels of the digital image that exceed a threshold of the mark density; updating the first pixel map to identify at least one additional pixel from the digital image, the at least one additional pixel comprising a color having the defined color matching tolerance to a pixel identified by the first pixel map, the at least one additional pixel separated from the pixel identified by the first pixel map by at least one pixel identified by the second pixel map; updating the second pixel map to identify a plurality of additional pixels from the digital image, each pixel in the plurality of additional pixels adjacent to a pixel identified by the second pixel map; updating the second pixel map by removing identifications of pixels also identified by the first pixel map; generating a third pixel map identifying substantially all pixels of the digital image identified by neither the first pixel map nor the second pixel map; compressing pixel data identified by the first pixel map by a first compression method; compressing pixel data identified by the second pixel map by a second compression method; compressing pixel data identified by the third pixel map by a third compression method; and constructing the at least one discrete packet comprising the pixel data compressed by the first, second and third compression methods, and the first, second and third pixel maps, wherein indicating the contrast detection by one from the plurality of contrast filters comprises; identifying within a straight line of pixels of the digital image at least a first threshold difference between pixel color values of a first two pixels; and
at least one of;identifying within the straight line of pixels a pixel of restricted color value; and identifying, within the straight line of pixels, less that a second threshold difference between pixel color values of a second two pixels.
-
Specification