A really fascinating breakdown of dithering in graphics rendering
-
Arbitrary-palette positional dithering algorithm[^] I've been working on supporting color e-paper devices in IoT gadgets where the e-paper ranges from 2 to 7 colors that I've seen. In order to allow you to load JPEG images onto these displays reasonably, some amount of dithering is extremely helpful, but I never thought it could be so involved. Even if I never used it, this is an interesting read.
Real programmers use butterflies
-
Arbitrary-palette positional dithering algorithm[^] I've been working on supporting color e-paper devices in IoT gadgets where the e-paper ranges from 2 to 7 colors that I've seen. In order to allow you to load JPEG images onto these displays reasonably, some amount of dithering is extremely helpful, but I never thought it could be so involved. Even if I never used it, this is an interesting read.
Real programmers use butterflies
Huh ... Here's a link to the source code of one of my favorite, albeit antique, developer's learn'in tomes: GitHub - jagregory/abrash-black-book: Markdown source for Michael Abrash's Graphics Programming Black Book[^] I'm not suggesting that I ever read any of the text, but I'm more than certain I spent countless hours running code fragments derived from the rest of it's innards. And once again, that timeless gonfalon is hung out: (squint, squint) "Patience, a virtue is ... Yes?"
-
Huh ... Here's a link to the source code of one of my favorite, albeit antique, developer's learn'in tomes: GitHub - jagregory/abrash-black-book: Markdown source for Michael Abrash's Graphics Programming Black Book[^] I'm not suggesting that I ever read any of the text, but I'm more than certain I spent countless hours running code fragments derived from the rest of it's innards. And once again, that timeless gonfalon is hung out: (squint, squint) "Patience, a virtue is ... Yes?"
I used to own that book.
Real programmers use butterflies
-
I used to own that book.
Real programmers use butterflies
Ha! I might have ripped the pages out quicker, had I known the code'd have been accessibly posted in the future. But as it was I must have scattered more than a few pages, crumpled up in individual wads then thrown into the bottom of a shipping box to serve as padding for those heavier X-mas gifts sent east ... through the years.:cool:
-
Arbitrary-palette positional dithering algorithm[^] I've been working on supporting color e-paper devices in IoT gadgets where the e-paper ranges from 2 to 7 colors that I've seen. In order to allow you to load JPEG images onto these displays reasonably, some amount of dithering is extremely helpful, but I never thought it could be so involved. Even if I never used it, this is an interesting read.
Real programmers use butterflies
Very interesting! I certainly learnt a few things about dithering that I didn't know before...
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.
-
Very interesting! I certainly learnt a few things about dithering that I didn't know before...
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.
I use a variant of one his algorithms in my code, but it's not fast enough for me for the devices I want to target. Then again, 640x448x3bits is taxing for any IoT device, even without dithering and color matching. :doh: I'm not even sure if that screen is practical at all though and I won't know until it arrives. It could be that the Pi is the only thing I have that will run it.
Real programmers use butterflies