JPEG-сжатие на уровне GIMP с помощью Imagemagick
У меня есть серия изображений, которые я хочу сжать. Их сотни, поэтому я бы хотел использовать инструменты CLI.
Изображения имеют следующие характеристики.
$ identify 100.jpg
100.jpg JPEG 639x426 639x426+0+0 8-bit sRGB 319KB
Если я изменить их размер с помощью GIMP и экспортировать с этими настройками
Я получаю файл 20 КБ очень приемлемого качества.
$ identify c.jpg
c.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 20KB
Если я изменю его размер с помощью преобразования Imagemagick, то, как указано ниже
$ convert 100.jpg -quality 50% -resize 400x267 c_im.jpg
Я получаю намного больший файл, без значительного улучшения качества.
$ identify c_im.jpg
c_im.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 86.6KB
Даже если я уменьшу качество или размер еще больше, я не смогу получить файл, такой же маленький, как у GIMP, если я не захожу так далеко, что изображение вырождается до неузнаваемости.
И даже если я отмечу поля EXIF и миниатюры в GIMP, размер только возрастет примерно до 43 КБ.
Есть ли способ получить уровни сжатия GIMP с помощью инструментов CLI или каким-либо автоматическим способом?
1 ответ
Я наконец нашел очень полезный пост здесь
Я использую следующие варианты:
convert 100.jpg -strip -gaussian-blur 0.05 -quality 50% -resize 400x267 c_im.jpg
strip вариант действительно ключ. От 85 КБ до 16 КБ, просто так. Очевидно, он удаляет только комментарии и профили, которые мне не нужны.
Размытость приводит к небольшому уменьшению размера, но потеря четкости заметна, поэтому используйте по своему усмотрению.
$ identify c_im.jpg
c_im.jpg JPEG 400x267 400x267+0+0 8-bit sRGB 15.7KB
