Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tool for creating dithered images #126

Closed
nitz opened this issue Sep 12, 2021 · 0 comments
Closed

Tool for creating dithered images #126

nitz opened this issue Sep 12, 2021 · 0 comments

Comments

@nitz
Copy link

nitz commented Sep 12, 2021

Hello!

I've started working on a small tool to create color reduced, dithered images to draw on eInk displays. My inspiration came from seeing the things people have posted here such as in #125, #115 and very much so #96.

I call it, perhaps aptly enough: Inkify

I'm not a Python first developer, so it's written in C#, but it's built with .NET 5.0 and runs on macOS and Windows. I haven't got to it yet, but I do intend to make sure it builds and runs on Linux, as I'm going to end up using it on a Raspberry Pi.

While the Inky library & PIL already has the palettization and color reduction built in, I was looking for more control over different dithering techniques. Using the image @Gadgetoid shared here, here are a few different examples of what Inkify produced:

image

image

It's very cool to see how tweaking the palette parameters and which dithering algorithm used can produce such different palette results.

It's got plenty of rough edges and isn't nearly as full featured as I'd like it to be yet, but I figured it was worth sharing in case anyone else here had similar goals and wanted to start taking a look. The library it uses to do the dithering is available here (and on Nuget as cmdwtf.Dithering), which is based very much on the work of Cyotek's original dithering project. There's an example winforms application that will allow you to play with some of the dithering options in realtime. I haven't added the Inky palette blending to that yet, but likely will do so at some point.

I'd love to know what y'all think.

Cheers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants