Что такое MagickWand эквивалент опции -colors?

У меня есть несколько изображений, которые я обрабатываю с помощью ImageMagick. В этом случае я конвертирую PNG RGBA в индексированный PNG. Если я использую инструмент convert, у меня есть разумный контроль над количеством цветов в индексированном PNG:

$ convert infile.png -colors 128 outfile.png
$ identify outfile.png
outfile.png PNG 77x77 77x77+0+0 8-bit PseudoClass 91c 3.03KiB 0.000u 0:00.000

Кажется, это существенно уменьшает количество цветов (91 ‹128). Я пытаюсь сделать то же преобразование с помощью MagickWand MagickQuantizeImage(wand, 128, RGBColorspace, tree_depth=1, 0, 0). Подпись функции

MagickBooleanType MagickQuantizeImage(
              MagickWand       *wand,
        const size_t            number_colors,
              ColorspaceType    colorspace,
        const size_t            treedepth,
        const MagickBooleanType dither,
        const MagickBooleanType measure_error)

Конечным результатом является изображение, в котором слишком мало цветов (всего 11!):

$ identify wandoutfile.png
wandoutfile.png PNG 77x77 77x77+0+0 8-bit PseudoClass 11c 1.31KiB 0.000u 0:00.000

Кто-нибудь знает, как добиться уменьшения цветов с помощью MagickWand (не разрушая изображение в процессе?)

Спасибо!


person Troy J. Farrell    schedule 12.04.2011    source источник
comment
Вы когда-нибудь догадывались об этом?   -  person fulvio    schedule 21.09.2011
comment
Нет. Я завернул призыв к обращению в хороший класс и продолжил жизнь.   -  person Troy J. Farrell    schedule 11.01.2012


Ответы (1)


Используйте 1_. Подробнее см. в документации.

Вы также можете рассмотреть возможность использования цветового пространства YIQ, как это предлагается здесь.

person Old Pro    schedule 23.05.2012