How My Images Are Dithered

189 points - last Wednesday at 1:00 PM

Source

Comments

trentor today at 2:48 PM
I was a rotogravure printer in another life, and this post made me a bit nostalgic. In intaglio printing you usually don't see these patterns because the electrostatic assist pulls the ink out of the cells, and the colors blend together more. It's more akin to a developed photo. I mainly remember them from having to do offset printing for the intermediate exam during my apprenticeship.

Our paper was about 3.5 meters wide, and a single roll length was 2–3 kilometers which ran for 20-30 minutes. The process delivered high quality at high speed, so we printed titles like Playboy and the IKEA catalogue in every language (for a language change we only had to swap the black cylinders, since the data was optimized so the text was mostly single color black). A print run of the IKEA catalogue, around 40 million copies, took about two months. It was brain numbing but also really zen. I miss it sometimes.

rahimnathwani today at 1:48 PM
If you're doing halftoning with the intent to get custom DTF (direct to film) prints for t shirts, you might find this tool helpful:

https://tools.encona.com/dtf

It aims to 'knock out' some areas of the image: make them transparent in the digital image so those areas are not part of the final film. This means less of the surface of the t shirt has film on it, allowing it to be breathable and flexible.

I got some DTF prints made before I knew you were meant to do this. The tutorials online required a lot of steps so I made the above for next time. Not tested for real yet.

matsemann today at 8:10 PM
Almost two decades ago I used a software called Rasterbator to dither an image into dots, blowing it up to multiple A4 pages one could then decorate a whole wall with. Up close it would just be circles of various sizes, but from a distance the image would show up. Super cool. Used it to decorate a wall in my dorm with a picture of the family dog.

Edit: found it. One picture taken from up close. Other pictures the whole image when laid out over multiple pages in the software https://imgur.com/a/OeaIWuY

ReactiveJelly today at 2:33 PM
> Dithering can reduce file size

Yeah, if you're using lossless compression like PNG or GIF, adding a lossy step to reduce the number of colors in the palette can help.

If you're compressing photos, you should use JPEG or WebP.

Anecdotally, JPEG usually beats dithering, and WebP always does.

It's fine to dither images but please please admit that you're doing it for the aesthetic. WebP has very broad browser support and absolutely blows dithering out of the water for compression. You are not going to beat years of research and tuning with "use fewer colors".

I remember a YouTube video about "How we did the impossible and got full-motion video for this Sonic game on a system that couldn't do FMVs", and the answer was like, "Well, we used a low resolution, and then we reduced the color palette, and then we cut the frame rate, and then we did interlacing." None of that's impossible! That's like saying you built the Pyramid at Giza using only a bucket of Lego bricks! It's not the same pyramid! Anyone can use a lower resolution! It takes effort and teamwork to come up with a codec that actually compresses data without artifacts!

bthallplz today at 8:29 PM
Neat! I really liked the look of the Floyd-Steinberg algorithm in the article, so when I googled for a web tool that'll do it for me, I found the tool mentioned here: https://www.ascii-magic.com/styles/dither

It has some fun animation options and settings to play with, and there's other dithering algorithms to play with.

xnx today at 1:56 PM
Title here is missing "How" as in "How My Images Are Dithered"
zeraye today at 7:57 PM
A few years ago I made this fun little app https://dithering-sigma.vercel.app/. May be interesting for someone. Source code https://github.com/zeraye/dithering.
Retr0id today at 1:04 PM
I suppose it is a type of dithering, but really this is Halftoning
ectoloph today at 4:22 PM
Didder[0] is a good tool for dithering. I use it to pre-process images for the 6-color e-ink displays.

You can go down a rabbit hole of dithering algorithms too, like Floyd Steinberg[1]

[0] https://github.com/makew0rld/didder [1] https://en.wikipedia.org/wiki/Floyd%E2%80%93Steinberg_dither...

AyanamiKaine today at 3:45 PM
Ohhhh that is so cool, but I agree with the others its more halftoning. When you want to dither/pixelate an image you can use Image-to-Pixel [0].

[0]https://tezumie.github.io/Image-to-Pixel/

timnetworks today at 7:40 PM
Is nobody going to mention anything about the fact that one of the friends at the restaurant has no _head_ ?
imhoguy today at 7:53 PM
Up! Very cool site, creative, slopless and with that 90/00s vibe I miss :)
ValdikSS today at 1:32 PM
??? This is halftoning, not dithering
meindnoch today at 1:38 PM
Every image should be dithered below 10 bits/component to prevent banding artifacts.
willmeyers today at 2:16 PM
Cool effect! It feels a bit like a deep-fried meme to me, but that might just be me!

I tried doing something similar a couple of years ago and gave up after running into the exact same issues in the post. It's really difficult to replicate proper halftoning on a computer screen without getting moiré patterns and weird artifacts because of PPI, aliasing, and other stuff. Beyond that, print and screens are just fundamentally different ways of rendering things.

olivierestsage today at 5:15 PM
AndrewStephens today at 1:24 PM
Very nice results, I really like the way it looks like a printed page. Image processing is addictive - once you start playing around it is hard to stop.
Dwedit today at 2:16 PM
Speaking of which, are there any good ways to undither images? Things like GIMP FFT are not perfectly reversible.
jcynix today at 4:18 PM
Hmm, that gives me an idea: dithering (of generally "mogrifying") my images might make them less palatable for those pesky AIs roaming my web server 

tiffanyh today at 3:30 PM
If you like this, you might also like:

https://news.ycombinator.com/item?id=48009879

rrr_oh_man today at 3:06 PM
gausswho today at 2:15 PM
I vaguely recall stumbling across a site years ago that could do something like this in the browser, with various bits 'n bobs you could poke at. Can't find it now.
effnorwood today at 7:49 PM
slowly. then all at once.
hnl68yz0go today at 5:23 PM
This framing is spot on
deleted today at 5:29 PM
next_xibalba today at 3:55 PM
It tickles me greatly how much HN’ers are fascinated by dithering. It seems like a few times per year a post about dithering makes the front page.
ipunchghosts today at 2:01 PM
Why is this not a typical data augmentation method for training deep networks? It would allow the networks to learn invariants that's align with humans. Currently, I suppose none of these dithered images would be correctly classified.
chronogate_op today at 6:49 PM
[flagged]