DitherGlyph Lite
A picture you can scan
The camera tier of the family. A chunky posterised picture that reads as art across the room, and as a message when a phone looks closely — up to about 4,600 characters.


DitherGlyph is lossless and beautiful and completely unscannable, on purpose. So the obvious next question was whether the same idea survives a camera at all. I wanted to find out how far it could be pushed before it stopped being a picture.
A phone camera is a hostile channel — glare, angle, rotation, compression, and a sensor that never sees the pixels you actually drew. Fine dither dies instantly. And the reader has to find the glyph in the frame before it can read anything.
Fixed-rate cells big enough to survive resampling, colour pairs derived from the source picture so it still looks like a photograph, and Reed–Solomon underneath to absorb the errors that get through anyway. Detection is a cat's-eye finder — a white disc with a magenta iris and a black outline — which is circular, so it reads the same at any rotation. The scanner runs continuously with no countdown and recovers orientation by trying all four.
Verified on a real phone: it scans almost instantly, up to 4,665 characters at the largest size. The cat's-eye finder worked well enough that I went back and retrofitted it onto all three LumiCode formats.
Devlog
live from git- v4: XL/XXL grids, cover-crop, auto orientation, true 4-rotation recovery
- v3 finders: the cat's eye — identical, circular, bigger, rotation-proof
- v2: full colour + high-res grids + spread permutation
- DitherGlyph Lite v1: chunky scannable glyphs + phone scanner
Getting something to work in a lab is the easy half. If you need it to work through a phone camera in bad light, that's the half I enjoy.