System and method for enhancing graphic features produced by marking engines
First Claim
1. A system for producing graphic features on paper, said features encoded as an array of pixels, each having an associated value, comprising:
- a marking engine for producing marks on said paper in a plurality of pixel locations in response to energizing pulses, each of said pixel locations being disposed on an associated scan line;
a memory storing a gray level value for each pixel in the array as a plurality of binary bits;
a feature detection circuit comprising electronic means for accessing a plurality of said pixel values in a feature detection window and for providing said plurality of pixel values as output;
a detection circuit comprising decoding logic receiving said plurality of pixel values in said feature detection window and responsively providing an address indication;
a look-up table providing one of a plurality of stored pulse code values as output in response to said address indication; and
a pulse generator receiving said pulse code output value and responsively providing an energizing pulse pattern to said marking engine;
said feature detection window accessing a first pixel value on a first scan line, a plurality of pixels adjacent said first pixel on said first scan line, and a plurality of pixels adjacent said first pixel on a plurality of scan lines adjacent said first scan line;
said energizing pulse pattern being provided within a pixel period and having a duration and position based on a feature pattern detected in said feature detection window;
said duration ranging from a fraction of said pixel period to said full pixel period;
said position corresponding to one of (1) the beginning of said pixel period;
(2) the end of said pixel period;
(3) the center of said pixel period;
(4) the beginning and end of said pixel period; and
said marks being responsively produced by said marking engine in patterns adapted for near-optimal simulation of graphic features including (1) highlights, (2) midtones, (3) shadows, and (4) edges, thereby enhancing the quality of a simulated image produced by said marking engine.
5 Assignments
0 Petitions
Accused Products
Abstract
Gray scale input data, derived from continuous tone data, is transformed into pulse patterns for driving a marking engine so that a variety of marks of different sizes and shapes are formed in any given pixel region. Gray scale input data is arranged (received) as an array of pixels, in the native engine resolution, including multi-bit per pixel gray level values. A pixel in the array is analyzed in a transformation (window) to determine the pulse pattern output based on the gray level value of the current pixel and on the gray level values of adjacent vertical and horizontal pixels. The pulse pattern output for driving the marking engine in the current pixel location is adjusted by the transformation to produce sub-pixel sized marks of various shapes, sizes, positions, and orientations that, in combination with neighboring marks so produced, provides for the flexible production of marking patterns that contain a number of gray scale levels substantially exceeding the number of gray scale levels contained in the input data, and that enhance the simulation of graphic features produced. The transformation flexibly selects from an optimized subset of pulse patterns available to produce the most accurately calibrated tones and features based on the input data. Hence, gray scale input data is transformed into a pulse pattern output for driving a marking engine.
137 Citations
19 Claims
-
1. A system for producing graphic features on paper, said features encoded as an array of pixels, each having an associated value, comprising:
-
a marking engine for producing marks on said paper in a plurality of pixel locations in response to energizing pulses, each of said pixel locations being disposed on an associated scan line; a memory storing a gray level value for each pixel in the array as a plurality of binary bits; a feature detection circuit comprising electronic means for accessing a plurality of said pixel values in a feature detection window and for providing said plurality of pixel values as output; a detection circuit comprising decoding logic receiving said plurality of pixel values in said feature detection window and responsively providing an address indication; a look-up table providing one of a plurality of stored pulse code values as output in response to said address indication; and a pulse generator receiving said pulse code output value and responsively providing an energizing pulse pattern to said marking engine; said feature detection window accessing a first pixel value on a first scan line, a plurality of pixels adjacent said first pixel on said first scan line, and a plurality of pixels adjacent said first pixel on a plurality of scan lines adjacent said first scan line; said energizing pulse pattern being provided within a pixel period and having a duration and position based on a feature pattern detected in said feature detection window; said duration ranging from a fraction of said pixel period to said full pixel period; said position corresponding to one of (1) the beginning of said pixel period;
(2) the end of said pixel period;
(3) the center of said pixel period;
(4) the beginning and end of said pixel period; andsaid marks being responsively produced by said marking engine in patterns adapted for near-optimal simulation of graphic features including (1) highlights, (2) midtones, (3) shadows, and (4) edges, thereby enhancing the quality of a simulated image produced by said marking engine.
-
-
2. A system for enhancing graphic features produced by a marking engine, wherein graphic data is available from a multi-bit per pixel raster source having a resolution equivalent to a native resolution of said marking engine, comprising:
-
a pulse generator providing an energization pulse for a current pixel in a current pixel period to an energizing element of said marking engine in response to a pulse code indication; a table containing a plurality of pulse code values optimized to enhance graphic features produced by said marking engine; and a feature detection circuit decoding multi-bit value patterns for each of a plurality of pixels in said raster source and responsively indexing a pulse code value in said table to be provided to said pulse generator as said pulse code indication; said feature detection circuit detecting one of a plurality of graphic features by detecting one of a plurality of value patterns in at least four pixels adjacent said current pixel and responsively indexing a corresponding graphic feature sub-table in said table containing a plurality of pulse code values optimized to enhance said detected graphic feature produced by said marking engine. - View Dependent Claims (3, 4)
-
-
5. A system for enhancing graphic features produced by a marking engine, wherein graphic data is available from a multi-bit per pixel raster source having a resolution equivalent to a native resolution of said marking engine, comprising;
-
a pulse generator providing an energization pulse for a current pixel in a current pixel period to an energizing element of said marking engine in response to a pulse code indication; a table containing a plurality of pulse code values optimized to enhance graphic features produced by said marking engine; and a feature detection circuit decoding multi-bit value patterns for each of a plurality of pixels in said raster source and responsively indexing a pulse code value in said table to be provided to said pulse generator as said pulse code indication; each pulse code value encoding a predetermined duration for said energization pulse and at least one predetermined position of said energization pulse disposed within said current pixel period.
-
-
6. A system for enhancing graphic features produced by a marking engine, wherein graphic data is available from a multi-bit per pixel raster source having a resolution equivalent to a native resolution of said marking engine, comprising:
-
a pulse generator providing an energization pulse for a current pixel in a current pixel period to an energizing element of said marking engine in response to a pulse code indication; a table containing a plurality of pulse code values optimized to enhance graphic features produced by said marking engine; and a feature detection circuit decoding multi-bit value patterns for each of a plurality of pixels in said raster source and responsively indexing a pulse code value in said table to be provided to said pulse generator as said pulse code indication; said feature detection circuit detecting graphic features comprising highlight features and shadow features by detecting, respectively, one of a first and second threshold values in each of said plurality of pixels adjacent said current pixel and responsively indexing a respective sub-table in said table comprising one of (1) a plurality of pulse code values optimized to enhance highlight features produced by said marking engine, and (2) a plurality of pulse code values optimized to enhance shadow features produced by said marking engine.
-
-
7. A system for enhancing graphic features produced by a marking engine, wherein graphic data is available from a multi-bit per pixel raster source having a resolution equivalent to a native resolution of said marking engine, comprising:
-
a pulse generator providing an energization pulse for a current pixel in a current pixel period to an energizing element of said marking engine in response to a pulse code indication; a table containing a plurality of pulse code values optimized to enhance graphic features produced by said marking engine; and a feature detection circuit decoding multi-bit value patterns for each of a plurality of pixels in said raster source and responsively indexing a pulse code value in said table to be provided to said pulse generator as said pulse code indication; said feature detection circuit detecting graphic features including right and left edges by comparing multi-bit values of said plurality of pixels adjacent said current pixel and responsively indexing a respective sub-table in said table comprising one of (1) a plurality of pulse code values optimized to enhance right edge features produced by said marking engine, and (2) a plurality of pulse code values optimized to enhance left edge features produced by said marking engine.
-
-
8. A system for enhancing graphic features produced by a marking engine, wherein graphic data is available from a multi-bit per pixel raster source having a resolution equivalent to a native resolution of said marking engine, comprising:
-
a pulse generator providing an energization pulse for a current pixel in a current pixel period to an energizing element of said marking engine in response to a pulse code indication; a table containing a plurality of pulse code values optimized to enhance graphic features produced by said marking engine; and a feature detection circuit decoding multi-bit value patterns for each of a plurality of pixels in said raster source and responsively indexing a pulse code value in said table to be provided to said pulse generator as said pulse code indication; said table comprising a memory storing said plurality of pulse code values in a plurality of storage locations and providing one of said stored values as said pulse code indication in response to an address input; and said feature detection circuit comprising combinatorial logic receiving multi-bit values for a plurality of pixels in said raster source and responsively providing said address input; wherein one of a plurality of graphic features is detected from predetermined value patterns in said plurality of pixels and a corresponding pulse code value is indexed in said table causing said pulse generator to provide an optimized energization pulse in said corresponding pixel period, such that said marking engine produces an enhanced graphic feature.
-
-
9. A system for producing graphic features on paper, said features encoded as an array of pixels, each having an associated value, comprising:
-
a marking engine for producing marks on said paper in a plurality of pixel locations in response to driving pulses, each of said pixel locations being located on an associated scan line; a memory buffer storing a value for each pixel in said array as a plurality of binary bits; a transformation circuit receiving and determining the value of a first pixel and the value of at least one pixel adjacent said first pixel and responsively providing a pulse code output; and a pulse generator receiving said pulse code output and responsively providing said driving pulses as output to said marking engine; wherein said transformation circuit further receives and determines a plurality of values in a feature detection window corresponding to a plurality of pixels adjacent said first pixel on a same scan line and on adjacent scan lines, respectively, and responsively provides a pulse code output corresponding to the value pattern detected in said window; wherein said driving pulses comprise pulse patterns which range in duration from a fraction of a pixel period to a full pixel period and are positioned within said pixel period responsively to said value pattern in said feature detection window; wherein said pulse patterns are positioned at a location in said pixel period corresponding to one of (1) the beginning of said pixel period;
(2) the center of said pixel period;
(3) the end of said pixel period;
(4) both the beginning and end of said pixel period; andsaid marks are responsively produced by said marking engine in patterns adapted to optimally simulate graphic features including (1) edges, (2) highlights, and (3) shadows, thereby enhancing the quality of a simulated gray image produced by said marking engine. - View Dependent Claims (10, 11, 12)
-
-
13. A method of enhancing graphic features produced by a marking engine, said graphic features encoded as a plurality of pixels, each having an assigned value selected from a predetermined value range, said marking engine generating marks by energizing pixel locations disposed on scan lines in response to driving pulses in corresponding pixel periods, comprising the steps of:
-
(a) determining the value of a current pixel; (b) detecting a predetermined value of at least one pixel adjacent said current pixel; and (c) responsively generating a driving pulse in a corresponding pixel period, said pulse having a predetermined duration and position within said pixel period corresponding to the value determined in step (a) and at least one value detected at step (b); wherein said marking engine responsively produces marks in a plurality of shapes and sizes enhancing the production of graphic features detected at steps (a) and (b). - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
Specification