10

Here's an example of what I want to do.

enter image description here

The idea is: the filter looks for areas of adjacent (or even non-adjacent) colors that are very similar (only a few color levels off from each other) and recolors them all to the same color. I guess it could pick that one color by just averaging all the pixels in the selected area.

To manually get this effect, I basically do right click --> color range (with magic wand tool) to select my color blocks, then fill them with the desired color. But has someone made a filter that does this in one pass?

Image-adjust-Posterize seems to fight to keep unwanted similar colors rather than just grouping them together their neighbors. The median filter is sort of what I want, but also blurs areas I don't want blurred.

1

7 Answers 7

11

You can Save for Web and devices... and then select PNG-8 format, turn dither to 0% and reduce the number of colours down to just a few. I got reasonable results with your sample image by reducing the number of colours to 6.

2
  • that's definitely a good start. It works ok for the sample... sadly for a full sized uncropped image, there's still lots of unwanted color. But it's the right idea, does a bangup job on the cape and black hair. If I don't see a better suggestion I'll mark this as the answer. I wish I were ambitious enough to learn how to make a filter, because it's a pretty specific process that seems suitable for one.
    – CreeDorofl
    Commented Apr 10, 2011 at 23:53
  • @CreeDorofl: Other non-Photoshop solutions you might be interested in are Inkscape to perform a "Trace bitmap" operation or using ImageMagick to "cartoonify/cartoonize". Commented Apr 11, 2011 at 0:33
6
  • Open the image.

  • Click-Image>mode>Indexed colour, to open colour reduction.
    Forced:None,Dither:None,Transparency:0 ,'Palette' has to be changed
    into 'Local Adaptive'and reduce the number of colours to an extend where the over all look of the image doesn't change. Then, change the 'Palette' into 'Custom',you will find all the colours in the table. To delete the colours, click ctrl+ click the colour you want to delete. That specific colour gets deleted,hence restrict the palette according to your requirement. Click OK.

  • Convert the image to RGB.(Image>Mode>RGB)

  • Again change it into indexed colour,then change the Palette into 'Exact'.You will get the exact reduced colours.

4

Try to convert the image to a vector format. For example, VectorMagic does a great job

2

I agree with Majenko that this would best be answered on gd.stackexchange.com. However, here are some tips:

  • Vectorize the image as Gregory mentioned. VectorMagic can do this, but so can Illustrator and some free online tools like Aviary Raven.
  • Convert to grayscale, then posterize, and then use a gradient map to recolor the image. This usually works better than plain posterization (especially on images with lots of noise), but for some images you may need to manually change color regions with with the same luminosity.
  • Create separate layers for the different colors. You can then adjust the levels, shadow/highlights, or use multiple posterize passes to get better color boundaries. This can also be combined with the above processes. Recording a macro for this process can speed things up.
  • Use higher quality images. There's no one-click solution to turning a low quality (i.e. lo-res, scanner/photo noise, bad/uneven lighting, compression artifacts, etc.) into crisp, high quality images. That's why most professional illustrators manually digitize their illustrations (make hi-res scans of their sketches and use a digitizer tablet to digitally trace the lines and color it) or just draw digitally from the get go. It's just easier to draw the illustration digitally than using a bunch of filters to try to convert analog artwork into something that looks like it was drawn digitally. It will never look as clean, and it's a lot more work than simply creating the illustration in a vector image editor like Illustrator in the first place.
3
  • 1
    I don't find Illustrator vectorization doing a great job. It either introduces a lot of noise (lot of small objects with tinted colors) or looses the shape of hi-contrasted objects when I reduce noise (ignore objects/pixel size)
    – msciwoj
    Commented Oct 27, 2016 at 7:13
  • @msciwoj Have you tried VectorMagic? Supposedly it performs a lot better than Illustrator. But, yes, in general, you need to manually vectorize it to get good results (per my last point). Commented Oct 27, 2016 at 17:44
  • I think it's also a good idea to 'help' vectorisation software by preprocessing the image upfront. I get better Illustrator tracing results if I first treat the image by "Surface Blur" PS filter mentioned here. It's unfortunately still blur kind of filter rather than "isolate same-color areas" so better but not perfect. Lastly, yes, I've tried VectorMagic online and it's in fact simply superior to Illustrator tracing. Cheers!
    – msciwoj
    Commented Oct 28, 2016 at 12:13
1

image>mode>indexed color

i create patterns for rugs in this fashion.. for that matter.. all the previously mentioned as well.

but indexed color works best for color count. fattens layers so you have to do a lil prep work.. but imo thats a good life practice

0

I think that you can use Illustrator's filters and plugins in photoshop, but currently can check it myself. Illustrator have bitmap trace plugin.

0

I've discovered that newer versions of photoshop have a filter called "Surface Blur" that do almost exactly what I want. It's actually been around since CS2 so maybe I missed it.

It works very well on cartoons or contrasty photos. It still doesn't quite look as good as doing it "manually" but I find I can do it once to the whole picture, and then manually fix a few selected areas.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .