[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cross-developing artwork



On Sun, 25 Nov 2012, BLuRry wrote:

Best thing to do is make a custom gimp palette. Load a sample image with all 6 colors and then convert it to an indexed color image (if it isn't already) -- and make sure to limit the size of the palette to 6. Once you have that, you can go to the palette menu and save it. It's a bit tricky to find all the right menu options (the palette management in Gimp exists but it's not easy to find for some screwy reason -- I think I had to use an eyedropper and build a custom palette). You can then apply this palette to other pictures as needed. If you're feeling tricky you can do some optimizations like doing two 4-color palettes (one with green/purple and one with blue/orange) and interleave the two resulting images using layers and some creative masking tricks to alternate so as to avoid the hi/lo color boundaries. This would help you simulate the result without having to play guess & check.

I am not far away from having a better conversion routine to eliminate the roundtrip through gimp for color conversion -- except that Java only has a pattern diffusion and lacks a Floyd-Steinberg implementation (and the FS dither yields WAY better results when reducing colors.) I found some FS java implementations but the code was hard to read and wasn't using the most optimal Java graphics classes (e.g. drawing points with Java 2D instead of just touching the framebuffer directly, which is several times faster.)

Anywho, if you're really crafty you can skip using Gimp and use Image Majick "convert" to do (at least most of) this, but I imagine it may be more bother than its worth. The advantage of using convert is that once you have it, you just reuse the same script and you can apply it to a stack of images rather quickly. I used Image Magick to do palette conversions in the past as well as rescaling and gamma correction and was very pleased with the results. I was not pleased that I was writing a java program that offloaded half its work via a forked process though. :-)

Well, I'm actually a fan of ImageMagick and use it a lot. :)

-uso.