Я обрабатываю некоторые изображения, используя библиотеку ImageMagick . В рамках обработки я хочу минимизировать количество цветов, если это не влияет на качество изображения (слишком сильно).
Для этого я попытался использовать функцию MagickQuantizeImage . Может кто-нибудь объяснить мне, кому выбрать параметры?
treedepth
Обычно это целочисленное значение равно нулю или единице. Ноль или один говорит Квантования выбрать оптимальную глубину дерева в Log4 (number_colors).% Дерево этой глубины обычно позволяет наилучшее представление опорного изображения с наименьшим количеством памяти и быстрой скоростью вычислений. В некоторых случаях, таких как изображение с низкой дисперсией цвета (несколько цветов), требуется значение, отличное от Log4 (number_colors). Чтобы полностью развернуть дерево цветов, используйте значение 8.
дитеринг
Значение, отличное от нуля, распределяет разницу между исходным изображением и соответствующим алгоритмом уменьшения цвета по соседним пикселям вдоль кривой Гильберта.
measure_error:
Значение, отличное от нуля, измеряет разницу между исходным и квантованным изображениями. Эта разница является общей ошибкой квантования. Ошибка вычисляется путем суммирования по всем пикселям в изображении квадрата расстояния в RGB-пространстве между каждым значением эталонного пикселя и его квантованным значением.
ps: я провел несколько тестов, но иногда сильно ухудшает качество изображений, и я не хочу находить результат методом проб и ошибок.