Error diffusion halftoning techniques and configurations
AssigneeMarvell International Ltd.
InventorsDouglas G. Kiethley, Randall D. Briggs
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention provide techniques and configurations for error diffusion halftoning of an image including receiving a signal that indicates selection of a first implementation or a second implementation of determining a threshold perturbation value for error diffusion halftoning of an image, and determining the threshold perturbation value using a table of programmable values according to the selected one of the first implementation or the second implementation, wherein the second implementation provides fewer threshold perturbation values for a larger region of the image than the first implementation. Other embodiments may be described and/or claimed.
Claims16
A method comprising:
- receiving position information for a currently processed pixel of an image;
- based at least in part on the position information, determining one or more error weights;
- and
- applying error diffusion halftoning to the image using the one or more error weights to distribute an error to one or more pixels other than the currently processed pixel,
- wherein applying error diffusion halftoning further comprises
- using a first set of error weight(s) when the currently processed pixel is positioned on an odd-numbered row of the image, and
- using a second set of error weight(s) when the pixel is positioned on an even-numbered row of the image, wherein the second set of error weight(s) is different than the first set of error weight(s), and
- wherein the (i) first set of error weight(s) and (ii) second set of error weight(s) have a different bias direction.
An apparatus comprising:
- a storage medium having stored thereon a table of programmable values to provide a threshold perturbation value for error diffusion haftoning of an image;
- a circuitry coupled to the storage medium, the circuitry configured to determine and output the threshold perturbation value using the table of programmable values according to (i) a first implementation or (ii) a second implementation,
- a bias address coupled to the storage medium, the bias address configured to receive information about a currently processed pixel and to address the table of programmable values according to the first implementation or the second implementation;
- and
- a select line coupled to the bias address, the select line configured to signal selection of the first implementation or the second implementation,
- wherein the second implementation provides fewer threshold perturbation values for a larger region of the image than the first implementation.
A method comprising:
- receiving position information for a currently processed pixel of an image;
- based at least in part on the position information, determining one or more error weights;
- and
- applying error diffusion halftoning to the image using the one or more error weights to distribute an error to one or more pixels other than the currently processed pixel,
- wherein the determining further includes modifying the one or more error weights by
- setting to zero a first subset of the one or more error weights that are not directed towards pixels within the image, and
- increasing a second subset of the one or more error weights that are directed towards pixels within the image by an amount substantially equal to that of the first subset of the one or more error weights prior to the first subset of the one or more error weights being set to zero.
An apparatus comprising:
- a storage medium having stored thereon a table of programmable values to provide a threshold perturbation value for error diffusion halftoning of an image, and
- a circuitry coupled to the storage medium, the circuitry configured to determine and output the threshold perturbation value using the table of programmable values according to (i) a first implementation or (ii) a second implementation,
- wherein the circuitry comprises
- a first multiplexer configured to extract a value from the table of programmable values according to the second implementation,
- a second multiplexer configured to (i) receive the extracted value and (ii) select the threshold perturbation value that corresponds to the extracted value in accordance with the second implementation, and
- a third multiplexer configured to output the threshold perturbation value wherein the second implementation provides fewer threshold perturbation values for a larger region of the image than the first implementation.
Dependencies are inferred from the claim text.