Знаете ли вы какие-либо инструменты (предпочтительно командную строку) для автоматической оптимизации JPEG без потерь, которые я мог бы интегрировать в нашу среду сборки? Для PNG я сейчас использую PNGOUT , и он обычно экономит около 40% полосы пропускания / размера изображения.
По крайней мере, мне нужен инструмент, который может удалять метаданные из файлов JPG - я заметил странный случай, когда я пытался сделать эскиз из фотографии, но не смог получить его меньше 34 кБ. После дополнительных исследований я обнаружил, что данные EXIF все еще были частью изображения, а миниатюра была 3 КБ после удаления метаданных.
И кроме того - возможно ли дальнейшая оптимизация JPG без потерь? Оптимизатор PNG пробует различные стратегии сжатия, случайную инициализацию кодировки Хаффмана и т. Д.
Я знаю, что большая часть экономии достигается за счет параметра качества JPEG, и это довольно субъективный показатель. Я ищу только инструмент, который можно запустить на этапе сборки и который без потерь выжимает из изображений несколько байтов.
источник
Ответы:
Я использую libjpeg для операций без потерь. Он содержит инструмент командной строки jpegtran, который может делать все, что вы хотите. С помощью параметра командной строки
-copy none
все метаданные-optimize
удаляются и выполняется оптимизация сжатия Хаффмана без потерь. Вы также можете преобразовать изображения в прогрессивный режим с помощью-progressive
, но это может вызвать проблемы совместимости (кто-нибудь знает об этом больше?)источник
Я написал GUI для всех инструментов оптимизации изображений я смог найти , в том числе MozJPEG и
jpegoptim
которые оптимизируют таблицы Хаффмана, прогрессивные разверток, а также ( в случае необходимости) удалений невидимых метаданных.Если у вас нет Mac, у меня также есть базовый веб-интерфейс, который работает на любой платформе.
источник
[ТОЛЬКО WINDOWS]
RIOT (инструмент радикальной оптимизации изображений) Это лучший инструмент для оптимизации изображений, который я нашел!
http://luci.criosweb.ro/riot/
Вы можете легко уменьшить изображение размером 10 МБ до 800 КБ с помощью субдискретизации. Он поддерживает PNG, GIF и JPEG. Он даже интегрируется в контекстные меню, так что вы можете отправлять изображения прямо туда. Позволяет вращать, изменять размер, сжимать до указанных КБ и т. Д. Также есть плагины для GIMP и IrfanView и прочего.
Также доступна библиотека DLL, если вы хотите включить ее в свои собственные программы или программу java script / c ++.
Другой альтернативой является http://pnggauntlet.com/. PNGGAUNTLET занимает вечность, но выполняет довольно хорошую работу.
[ТОЛЬКО WINDOWS]
источник
Новый сервис под названием JPEGmini дает невероятные результаты.
Жаль, что это только онлайн.Изменить : теперь он доступен для Windows и Macисточник
Пробовал ряд предложений выше - лично я был после сжатия без потерь.
Мой образец изображения имел исходный размер 67 737 байт.
Используя kraken.io, он упал до 64 718. Используя jpegtran, он упал до 64 718. Используя yahoo smush-it, он снизился до 61 746. Используя imagemagick (-strip), он снизился до 65 312
Вариант smush.py выглядит многообещающим, но установка была слишком сложной, чтобы я мог ее быстро выполнить.
jpegrescan тоже выглядит многообещающим, но похоже на unix, и я использую окна
jpegmini НЕ без потерь, но я не могу сказать разницы (до 22 172)
Приложение Plinth Altrasoft jpegstripper не работает на моих Windows 7
jpegoptim - это не окна - мне это не подходит
Riot (сохраняя качество на уровне 100%) снизил его до 63416, а с высокой подвыборкой цветности он снизил его до 61912 - я не знаю, без потерь это или нет, и я думаю, что он выглядит легче, чем оригинал. ,
Итак, мой вердикт - yahoo smushit, если он должен быть без потерь
источник
Я бы попробовал Imagemagick. Он имеет множество параметров командной строки, он бесплатный и имеет хорошую лицензию. http://www.imagemagick.org
Кажется, есть опция под названием Strip, которая может вам помочь: http://www.imagemagick.org/script/command-line-options.php#strip
источник
ImageOptim действительно хорош. Опция командной строки, опубликованная автором, заполнит графический интерфейс и покажет прогресс. Я использовал jpegtran для оптимизации и преобразования в прогрессивный формат, затем ImageOptim для дальнейшей прогрессивной оптимизации и для других типов файлов.
Повторное использование кода сценария также можно найти на этом форуме (все файлы заменены на место):
jpegtran
ImageOptim
источник
На всякий случай, я написал офлайн-версию Yahoo Smush.it. Он без потерь оптимизирует png, jpgs и gif (анимированные и статические):
http://github.com/thebeansgroup/smush.py
источник
Вы можете использовать jpegoptim, который по умолчанию оптимизирует файлы jpeg без потерь.
--strip-all
Опция удаляет все дополнительные внедренный данные. Вы также можете указать режим с потерями с помощью--max
переключателя, который полезен, когда у вас есть изображения, сохраненные с настройкой очень высокого качества, что не обязательно, например. веб-контент.Вы получаете такую же оптимизацию, как и с jpegtran (см. Ответ OutOfMemory), но jpegoptim не может сохранять в прогрессивные jpeg.
источник
Я написал инструмент командной строки под названием picopt (похожий на ImageOptim), который использует внешние программы для оптимизации JPEG, PNG, GIFS, анимированных GIF-файлов и даже содержимого архива комиксов (CBR / CBZ).
Это подходит для использования с homebrew в системах OS X или Linux, где вы установили такие инструменты, как jpegrescan, jpegtran, optipng, gifsicle и т. Д.
https://github.com/ajslater/picopt
источник
Я бы тоже рекомендовал ImageMagick . У него есть опция командной строки для удаления метаданных EXIF
Есть много других инструментов, которые делают то же самое.
Что касается повторного сжатия JPEG, не делайте этого. Файлы JPEG изначально содержат потери, поэтому любая форма повторного сжатия только ухудшит качество изображения. Однако, если у вас есть изображения, закодированные без потерь, некоторые кодировщики работают лучше, чем другие. Я заметил, что файлы JPEG, созданные с помощью Photoshop, всегда выглядят лучше, чем при кодировании с помощью ImageMagick (несмотря на тот же размер файла) по сложным причинам . Более того (и это актуально для вас), я знаю, что по крайней мере Photoshop может сохранять файлы JPEG как оптимизированные, что означает, что они теряют совместимость с некоторыми вещами, которые вам, вероятно, не нужны, чтобы сэкономить пару КБ. Кроме того, убедитесь, что у вас нет встроенных цветовых профилей, и вы можете сэкономить еще пару КБ.
источник
Я бы рекомендовал использовать http://kraken.io. Это сверхбыстрое веб-приложение, которое оптимизирует ваши файлы PNG и JPEG намного лучше, чем smush.it.
источник
Я рекомендую использовать JpegOptim, это бесплатно и действительно приятно, вы можете указать качество, размер, который хотите ... И прост в использовании в командной строке.
JpegOptim
источник
Могу я порекомендовать это для почти прозрачности:
Он использует ImageMagick «S
convert
иjpeg-recompress
из Jpeg-архива .Оба имеют открытый исходный код и работают в Windows, Mac и Linux. Вы можете настроить параметры, указанные выше, в зависимости от требований к качеству.
источник