ordered dithering

ordered dithering applied to the studio's source frame — beforeordered dithering applied to the studio's source frame — afterSourceEffect

01/ ORIGIN

Bryce Bayer described the ordered dither matrix at Eastman Kodak in 1973, giving a way to reduce an image to two tones using only a fixed lookup and no memory of neighbouring pixels. The same Bayer patented the colour filter array in 1976 that still sits on almost every camera sensor made. Ordered dithering was cheap enough for hardware that could not afford to remember anything, which is why early printers and displays reached for it first.

02/ SWEEP

MATRIX sweep

MATRIX at its coarsest setting, the crosshatch plainly visible
MATRIX 0MATRIX at its coarsest setting, the crosshatch plainly visible
MATRIX 4X4: the default, a finer grid holding more apparent tones
MATRIX 1MATRIX 4X4: the default, a finer grid holding more apparent tones
MATRIX on blue noise, threshold scattered with no visible repeat
MATRIX 4MATRIX on blue noise, threshold scattered with no visible repeat

03/ SPEC

Ordered dithering thresholds each pixel against a fixed tiled pattern rather than diffusing error to its neighbours, so it needs no memory of what came before and produces a visible regular texture. MATRIX selects the pattern: 2X2 and 4X4 give the classic crosshatched Bayer look, 8X8 gives a finer version, and the two BLUE options substitute blue noise, which spreads the threshold without an obvious repeat. THRESHOLD shifts the black and white balance, PIXEL scales the grain from 1 to 12 pixels, and CONTRAST expands tone before quantisation. In kott this sits beside error-diffusion dithering, and the choice between them is whether you want the pattern to be visible.

MATRIX2X2 / 4X4 / 8X8 / BLUE / BLUE·T · default 4X4
THRESHOLD0 to 1 · default 0.5
PIXEL1 px to 12 px · default 1 px
CONTRAST0.2 to 3 · default 1

04/ FAQ

What is ordered dithering?
Ordered dithering reduces an image to a few tones by comparing each pixel against a fixed repeating threshold pattern. Because the pattern tiles, the result shows a regular visible texture rather than random grain.
What is the difference between ordered and Floyd-Steinberg dithering?
Ordered dithering uses a fixed pattern and no knowledge of neighbouring pixels, so it is cheap and shows a visible repeat. Floyd-Steinberg carries rounding error onto neighbours, which hides the pattern but needs memory of what came before.
Which dither MATRIX should I choose?
2X2 and 4X4 for a recognisably retro crosshatch, 8X8 for something finer, and the BLUE options when you want dithered tone without an obvious repeating grid.