Atkinson Dithering (2021)

Contemporary Uses of Dithering

  • Still widely used where output devices are low-bit or on/off: thermal/label printers, TIJ printers, CMYK print, e‑ink readers, retro computers, 8‑bit fantasy consoles.
  • Common in software: browser canvas gradients (Chrome), Blender (default), some window managers, and image workflows converting 16/32‑bit to 8‑bit to avoid banding.
  • Games use dithering both to fight gradient banding and as deliberate shader “sparkle”/noise.

Dithering, Bit Depth, and Streaming Video

  • One view: modern 10–12‑bit codecs plus perceptual quantization mostly supersede dithering; lossy compression is “anti‑dither” because encoding the noise costs bits.
  • Others report visible banding in streamed video and argue player‑side dithering on decode (from higher‑bit internal representation) would still help.
  • There’s debate whether bandwidth that can carry dithering noise wouldn’t be better spent on more actual color precision instead.

Algorithms: Atkinson vs Floyd–Steinberg and Variants

  • Floyd–Steinberg is often judged crisper and less blown‑out; Atkinson gives higher contrast but can lose detail and appear overexposed on modern displays.
  • Some prefer Atkinson at very low resolutions or on blurrier CRT‑style displays.
  • Atkinson’s kernel is simpler (bit shifts, less math) and historically attractive for slow CPUs.
  • Serpentine scanning and more symmetric kernels can reduce directional artifacts; there’s active research and libraries with many variants.

Color Space and Implementation Pitfalls

  • Several comments stress: doing error diffusion directly in sRGB/encoded space is wrong; linearizing first (at least for blending/diffusion) avoids brightness shifts.
  • Conflicting claims: some insist linear space is essential; others note that non‑linear spaces can look better under low bit depth and avoid extra banding.
  • For color dithering, mixing may need linear RGB, while palette search benefits from perceptual color spaces.

Aesthetic and Creative Uses

  • Dithering is highlighted as a strong aesthetic choice in web design, retro‑style games, and pixel art; stability under camera movement is a special challenge in 3D.
  • Scaling dithered images can create moiré artifacts; some suggest client‑side filtering of grayscale sources as a better approach.

Analogies and Theory

  • One commenter proposes adapting dithering ideas to voting systems to improve proportional representation.
  • Links to deep technical resources (theses, long-form guides, implementations) are shared for further study.