|
|
|
|
|
by virtualritz
431 days ago
|
|
The dithered images have the wrong brightness mapping. The reason is that the described approach will estimate the error correction term wrong as the input RGB value is non-linear sRGB. The article doesn't mention anything about this so I assume the author is oblivious to what color spaces are and that an 8bit/channel RGB value will most likely not represent linear color. This is not bashing the article; most people who start doing anything with color in CG w/o reading up on the resp. theory first get this wrong. And coming up with your own dither is always cool. See e.g. [1] for an in-depth explanation why the linearization stuff matters. [1] http://www.thetenthplanet.de/archives/5367 |
|
Thank you so much for pointing this out! Just read the post you linked and did some of my own research on the non-linearity of sRGB - really fascinating stuff :)
For now, I've acknowledged this limitation of my implementation so that any new readers are aware of it: https://amanvir.com/blog/writing-my-own-dithering-algorithm-...
But I'll definitely revisit the article to add proper linearization to my implementation when I have the time. Thanks again for mentioning this!