Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Floyd-Steinberg dithering

Domain-Specific Algorithm

Floyd-Steinberg dithering is an image dithering algorithm first published in 1976 by Robert W. Floyd and Louis Steinberg. It reduces an image to a small palette, for example when a 24-bit truecolor picture is converted to a GIF limited to 256 colors, by error diffusion: each pixel is rounded to the nearest available color and the rounding error is pushed onto neighboring pixels that have not yet been processed, using the weights 7/16, 3/16, 5/16 and 1/16. The image is scanned left to right and top to bottom, so when several pixels have been rounded down the next pixel becomes more likely to be rounded up, and the average error stays close to zero. The weights were found by trial and error, guided by the wish that a region of density 0.5 come out as a checkerboard pattern. Results are best when pixel values are linearized first rather than worked on directly as sRGB values, and some implementations alternate the scan direction between lines, which is called serpentine scanning.

Connections

Credited To

Source Floyd-Steinberg dithering (Wikipedia)

In Field

Source Floyd-Steinberg dithering (Wikipedia)

Invented

Source Floyd-Steinberg dithering (Wikipedia)
Sources
Floyd-Steinberg dithering (Wikipedia)
  • In Field: Computer Graphics, Lead, use in image software
    It is commonly used by image manipulation software, for example, when converting an image from a Truecolor 24-bit PNG format into a GIF format
  • Invented: Robert W. Floyd, Lead, first publication
    first published in 1976 by Robert W. Floyd and Louis Steinberg
  • Credited To: Robert W. Floyd, Lead, first publication (credit)
    first published in 1976 by Robert W. Floyd and Louis Steinberg
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.