How to reduce color using ImageMagick

Questions and postings pertaining to the development of ImageMagick, feature enhancements, and ImageMagick internals. ImageMagick source code and algorithms are discussed here. Usage questions which are too arcane for the normal user list should also be posted here.
Post Reply
bubu333
Posts: 3
Joined: 2014-04-16T19:05:01-07:00
Authentication code: 6789

How to reduce color using ImageMagick

Post by bubu333 »

I have a image and I want to reduce color using ImageMagick

I use this code

strConversion = img.Convert("-fill", "blue", "-colorize", "-5%", strSrcdir, strDestdir)

But I receive image with wrong color

So My code is wrong or wrong way?Please help me.I use Classic ASP
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: How to reduce color using ImageMagick

Post by fmw42 »

Please define what you mean by reduce color. Post an example input and output image if you can. You can post to dropbox.com (public folder) and put links here.

-colorize replaces the image with some percent of constant color added to the image. Do you mean to use -colors X? 0r -posterize X.

see
http://www.imagemagick.org/script/comma ... php#colors
http://www.imagemagick.org/script/comma ... #posterize
http://www.imagemagick.org/Usage/quantize/
http://www.imagemagick.org/Usage/color_mods/#colorize

Also please identify your version of Imagemagick and your platform.
bubu333
Posts: 3
Joined: 2014-04-16T19:05:01-07:00
Authentication code: 6789

Re: How to reduce color using ImageMagick

Post by bubu333 »

Hi.Thanks for reply.
I write a web application for convert image realtime and i use imagemagick and reduce color is an option.

My customer ask me to reduce image's color with blue,red,yellow colors.

My sample.jpg: https://www.dropbox.com/s/98idrkn64eiy1zs/sample.jpg
My result convert : https://www.dropbox.com/s/tjx9bkqzcp5s5 ... sample.jpg

I'm using ImageMagick-6.8.8-10-Q16 and classic asp,window 7 pro x86

And i'm trying to do with your reply.Waiting for you!
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: How to reduce color using ImageMagick

Post by fmw42 »

try either

Code: Select all

convert sample.jpg +dither -colors 16 result_c16.gif
or

Code: Select all

convert sample.jpg +dither -posterize 16 result_p16.gif

Reduce or increase the number of colors from 16 as desired.

If this is not what you want, please give more details about what you are trying to do and if possible provide and example of the correct type of result.

The other option would be to create a colortable image and use -remap to reduce the colors in the the image only to the specific colors you put in the colortable image. The colortable image could be as simple as a list of colors as desired something like the following. You can use rgb or hex colors in addition to the colornames. Pick whatever colors you want to use. see http://www.imagemagick.org/script/color.php

Code: Select all

convert -size 1x1 xc:black xc:red xc:green xc:blue xc:yellow xc:magenta xc:cyan xc:white +append colortable.png
convert sample.jpg +dither -remap colortable.png result_ctable.gif
See
http://www.imagemagick.org/Usage/quantize/#remap
bubu333
Posts: 3
Joined: 2014-04-16T19:05:01-07:00
Authentication code: 6789

Re: How to reduce color using ImageMagick

Post by bubu333 »

Thanks for reply

I don't have example of the correct type of result.

I use -colorize 0,0,-50 for reduce color.Ex:

convert sample.jpg -colorize 0,0,-100 tmp_sample.jpg for reduce blue color.Something like that.

I don't know about RGB color,so can you help me?I don't now how to reduce yellow color and red color

PS:you can give me an example of -gamma option
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: How to reduce color using ImageMagick

Post by fmw42 »

Perhaps this is what you want (Windows syntax):

Code: Select all

convert sample.jpg ^
-channel red -evaluate multiply 0.85 +channel ^
-channel blue -evaluate multiply 0.85 +channel ^
-channel yellow -evaluate multiply 0.85 +channel ^
sample_result.jpg

see
http://www.imagemagick.org/script/comma ... hp#channel
http://www.imagemagick.org/script/comma ... p#evaluate
Post Reply