ImageTheming
Change the color palette of an image to match your theme.
Getting Started
Use java -jar path/to/ImageTheming.jar -h
to get all available options that can/need to be set, to generate an image. There must always be exactly one path and one theme for the program to work. An error message will appear if some options are set incorrect. Simple example:
java -jar ImageTheming.jar https://avatars.githubusercontent.com/u/73987329\?v\=4 --theme=omni
This will select the image from the link (a path instead of a link is also possible) and select the color scheme to be Omni.
Original | New image with Omni theme |
---|---|
Selecting a theme
You can either use a config file or a premade theme to select the colors.
If a file is selected, all hex numbers with the length of 6 are used as colors.
If you want to use a premade theme, choose a color scheme from these files (without the .sh extension). Example: OneDark -> one-dark.sh -> ... -t=one-dark
or -t=.config/colors
Why
Ever wanted to use a wallpaper, but it didn't match your color theme?
What to expect
This program will take an image and a theme from Gogh as minimal input. It then tries to match each pixel with a color from the given theme. The output is color-wise a downscaled version of the original image. Because of this, the best results can be achieved with images that have little to no blur, high resolution and clear defined lines. If you're going to watch all day at a generated image (wallpaper), you may want to edit the generated images afterwards in GIMP/similar software.
To compare quality, here you have some examples. Keep in mind these are fairly zoomed in:
original | nord | solarized-dark | maia |
---|---|---|---|