ARTE
BELEZA E BEM-ESTAR
ARTESANATO
CULTURA E HISTÓRIA
ENTRETENIMENTO
MEIO AMBIENTE
COMIDA E BEBIDAS
ENGENHARIA REVERSA
CIÊNCIAS
ESPORTES
TECNOLOGIA
TECNOLOGIA VESTÍVEL
Error Diffusion
Mark

Criado por

Mark

30. agosto 2026FI
0
0
0
0
0

Error Diffusion

A photographic halftone screen makes grey by varying how BIG each dot is, on a fixed grid. That works because an emulsion will give you any dot size you ask for. A laser printer and an inkjet will not: they have one dot, the smallest they can make, and it is either there or it is not. So the arrangement has to be turned round. Keep the dot size fixed and vary HOW MANY, and now the question is which pixels get one. Simply rounding each pixel to black or white throws away up to half a level every time and the picture collapses into two tones. Robert Floyd and Louis Steinberg published the fix in 1976, and it is four lines long. Round the pixel. Subtract what you actually printed from what was asked for. Hand that difference forward to the four neighbours you have not decided yet, in the proportions seven, three, five and one sixteenths. The error is never discarded, only moved somewhere the eye will average it away - so a region that has been printing slightly too dark accumulates a debt that forces the next pixel white. The cost is one row of buffer and four additions per pixel, which is why it went straight into printer firmware and stayed there. The signature is worms: at middle greys the dots chain into short drifting diagonals, because the debt travels the same way every time. A halftone screen fails by beating against another screen; error diffusion fails by growing worms, and no screen angle can fix that.
Intermediário
3 hours

Instruções

1

Diffuse the error by hand

Rule a strip of eight squares on graph paper and write a grey level from 0 to 10 in each - a ramp, say, 1 2 3 4 5 6 7 8. Work left to right. If the value is above 5, fill the square and subtract 10; otherwise leave it and subtract 0. Carry the remainder into the next square before you judge it. Eight squares in, count the filled ones: it will match the average you started with. You are the algorithm.

Materiais para este passo:

Graph PaperGraph Paper4 folhas

Ferramentas necessárias:

Graphite Pencil SetGraphite Pencil Set
Steel Ruler (30cm)Steel Ruler (30cm)
2

Print all three and walk backwards

Print the same photograph three times at 1 bit per pixel: thresholded, ordered-dithered, and error-diffused. Pin them up and walk away, measuring the distance at which each stops looking like dots and starts looking like a photograph. Then go back with the loupe and find the repeating tile in the ordered print and the worms in the diffused one.

Materiais para este passo:

PaperPaper6 folhas

Ferramentas necessárias:

Desktop ComputerDesktop Computer
Magnifying Loupe (10x)Magnifying Loupe (10x)
Tape MeasureTape Measure
3

Three renderings measured, and four ways to fake a grey

Loading Jupyter Notebook...

Ferramentas necessárias:

Desktop ComputerDesktop Computer
4

Compendium: why the weights are 7, 3, 5, 1

The four weights are not arbitrary and they are not optimal either. They sum to sixteen so the division is a shift, they are biased forwards and down because those are the pixels not yet decided in raster order, and the 7 dominates because the pixel immediately to the right is the one the eye will average with most strongly. Jarvis-Judice-Ninke spread the error over twelve neighbours two rows deep and Stucki over twelve with a divisor of 42; both reduce worms and both cost two row buffers instead of one. In 1976, on a printer controller, one row buffer was the entire argument. Two failure modes are worth recognising in a real implementation. The first pixels of the image have no accumulated error, so a flat light region starts with a visible clean patch before the pattern establishes - printing rows alternately left-to-right and right-to-left, called serpentine order, breaks up both that and the diagonal drift. And error diffusion applied to each colour separately lets the four channels agree by accident and clump, so colour printers either diffuse the channels jointly or add a small random jitter to the threshold. Neither problem exists for a halftone screen, which is why it survived in offset printing long after this became the right answer everywhere else.

Ferramentas necessárias:

Notebook and PencilNotebook and Pencil

Materiais

2

Ferramentas necessárias

6

CC0 Domínio Público

Este blueprint é liberado sob CC0. Você é livre para copiar, modificar, distribuir e usar este trabalho para qualquer finalidade, sem pedir permissão.

Apoie o Maker comprando produtos através do Blueprint, onde ele ganha uma Comissão Maker definida pelos vendedores, ou crie uma nova versão deste Blueprint e inclua-o como conexão no seu próprio Blueprint para compartilhar receita.

Discussão

(0)

Entrar para participar da discussão

Carregando comentários...