Patent US5226096A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5226096A Expired / Lapsed US ⏱️ 0.0 years remaining

Digital halftoning with selectively applied dot-to-dot error diffusion

Assignee: Xerox Corp
•
Filing: 1991-10-11
•
Granted: 1993-07-06
•
Expires: 2011-10-11
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract There is provided a method of quantizing pixel values in an image formed by a plurality of pixels, each pixel representing an optical density of the image at a location within the image, and having an original optical density value selected from one of a set of `c` original optical density values that has a number of members larger than a desired output set of `d` optical density values through a process of halftoning and error diffusion. An image is processed in accordance with a halftone or dithering process. The resulting halftone dot is compared to a set of legal or full halftone dots, for a determination of whether the dot is a full or partial dot. Partial dots are directed to an output without further processing. For full dots, error occurring in the halftoning process is derived, by comparing the input gray level over the halftone cell, with the output halftone dot. Error derived from previous dot processing, is added to the error derivation, and the level of gray output is varied in accordance with a total error so derived. Error occurring in the output of the full dot is passed to a set of neighboring dots.

Inventors

  • 👤 Zhigang Fan

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 20:39
CPC Classifications
H; H04; H04N; H04N1/00; H04N1/40; H04N1/405; H04N1/4055

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 287 words
A method of quantizing pixel values in an image formed by a plurality of pixels, each pixel value representing an optical density of the image at a location therewithin, and having a pixel value selected from one of a set of `c` original optical density values that has a number of members larger than a desired output set of `d` optical density values, including the steps: storing an array of pixel values representing an area of the image; thresholding the pixel values in said array in accordance with a halftone screen pattern, to derive output pixel values, the array representable as an output dot pattern; comparing the output dot pattern with a set of full dot patterns representing a set of incrementally varying gray levels, to determine whether the output dot pattern is a full dot pattern or a partial dot pattern; for a partial dot pattern, directing said array of output pixel values to an output; for a full dot pattern, determining an error value that is a difference between a sum of pixel values in the array before thresholding, and a sum of pixel values in the array thereafter; adding a remainder error stored in a remainder buffer, from previous arrays of pixel values, to the error value to derive a total error; comparing the total error with a reference, to determine whether to vary the output pattern; varying by a preselected increment, the full dot output pattern in response to said comparison; determining the difference between the total error and the preselected incremental value, and storing said difference as a remainder error in the remainder buffer; and directing the array of output pixel values forming the varied full dot output pattern, to an output.
Claim 2
Independent Claim 287 words
A method of quantizing pixel values in an image formed by a plurality of pixels, each pixel value representing an optical density of the image at a location therewithin, and having a pixel value selected from one of a set of `c` original optical density values that has a number of members larger than a desired output set of `d` optical density values, including the steps: storing an array of pixel values representing an area of the image; thresholding the pixel values in said array in accordance with a halftone screen pattern, to derive output pixel values, the array representable as an output dot pattern; comparing the output dot pattern with a set of full dot patterns representing a set of incrementally varying gray levels, to determine whether the output dot pattern is a full dot pattern or a partial dot pattern; for a partial dot pattern, directing said array of output pixel values to an output; for a full dot pattern, determining an error value that is a difference between a sum of pixel values in the array before thresholding, and a sum of pixel values in the array thereafter; adding a remainder error stored in a remainder buffer, from previous arrays of pixel values, to the error value to derive a total error; comparing the total error with a reference, to determine whether to vary the output pattern; varying by a preselected increment, the full dot output pattern in response to said comparison; determining the difference between the total error and the preselected incremental value, and storing said difference as a remainder error in the remainder buffer; and directing the array of output pixel values forming the varied full dot output pattern, to an output.
Claim 3
Dependent Claim 28 words
The method as described in claim 1, including the step of identifying as partial dot patterns arrays of pixels in which the error value exceeds an error reference.
Claim 4
Dependent Claim 29 words
The method as described in claim 1, including the step of identifying as partial dot patterns arrays of pixels in which the error value does not exceed the reference.
Claim 5
Dependent Claim 24 words
The method described in claim 1, wherein upon determining that the total error does not exceed a reference, setting said preselected increment to 0.
Claim 6
Independent Claim 269 words
A method of quantizing pixel values in an image formed by a plurality of pixels, each pixel value representing an optical density of the image at a location therewithin, and having a pixel value selected from one of a set of `c` original optical density values that has a number of members larger than a desired output set of `d` optical density values, including the steps: storing an array of pixel values representing an area of the image; thresholding the pixel values in said array in accordance with a halftone screen pattern, to derive output pixel values, the array representable as an output dot pattern; determining an error value that is a difference between a sum of pixel values in the array before thresholding, and a sum of pixel values in the array thereafter; comparing the output dot pattern with a set of full dot patterns representing a set of incrementally varying gray levels, to determine whether the output dot pattern is a full dot pattern or a partial dot pattern; for a partial dot pattern, discarding the error value and directing the array of pixels forming the partial dot to an output; for a full dot pattern, adding a remainder error stored in a remainder buffer, from previous arrays of pixel values, to the error value to derive a total error; comparing the total error with a reference, to determine whether to vary the output pattern; varying by a preselected increment, the full dot output pattern in response to said comparison; directing the array of output pixel values forming the varied full dot output pattern, to an output.
Claim 7
Independent Claim 269 words
A method of quantizing pixel values in an image formed by a plurality of pixels, each pixel value representing an optical density of the image at a location therewithin, and having a pixel value selected from one of a set of `c` original optical density values that has a number of members larger than a desired output set of `d` optical density values, including the steps: storing an array of pixel values representing an area of the image; thresholding the pixel values in said array in accordance with a halftone screen pattern, to derive output pixel values, the array representable as an output dot pattern; determining an error value that is a difference between a sum of pixel values in the array before thresholding, and a sum of pixel values in the array thereafter; comparing the output dot pattern with a set of full dot patterns representing a set of incrementally varying gray levels, to determine whether the output dot pattern is a full dot pattern or a partial dot pattern; for a partial dot pattern, discarding the error value and directing the array of pixels forming the partial dot to an output; for a full dot pattern, adding a remainder error stored in a remainder buffer, from previous arrays of pixel values, to the error value to derive a total error; comparing the total error with a reference, to determine whether to vary the output pattern; varying by a preselected increment, the full dot output pattern in response to said comparison; directing the array of output pixel values forming the varied full dot output pattern, to an output.
Claim 8
Dependent Claim 28 words
The method as described in claim 5, including the step of identifying as partial dot patterns arrays of pixels in which the error value exceeds an error reference.
Claim 9
Dependent Claim 29 words
The method as described in claim 5, including the step of identifying as partial dot patterns arrays of pixels in which the error value does not exceed the reference.
Claim 10
Dependent Claim 25 words
The method as described in claim 5, wherein upon determining that the total error does not exceed a reference, setting said preselected increment to 0.

References Cited (Backward Citations)

US4339774A Cited
US4651287A Cited
US4654721A Cited
US4668995A Cited
US4727430A Cited
US5008950A Cited
US4955065A Cited
US4924322A Cited
US5014333A Cited
US5045952A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1996-07-05 1997-01-04 1997-07-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2000-07-05 2001-01-04 2001-07-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2004-07-05 2005-01-04 2005-07-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag