Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

cjpeg-dssim

У меня давно, во времена работы над книгой, возникла идея — попробовать подбирать параметр качества для джейпега автоматически так, чтобы глаз не улавливал разницы между оригиналом и результатом. Правда я не был уверен насчёт метрики, мне виделось это как вычитание одной картинки из другой с какой-то интегральной оценкой результата.

На днях я про эту идею вспомнил и, как это обычно и бывает, оказалось, что существует и метрика, и утилита для её снятия, и утилита для подбора параметра качества.

На «Маке» всё необходимое для работы утилиты для подбора элементарно ставится из «брю», вот результат обработки картинки из предыдущего моего поста:

$ ./cjpeg-dssim jpegoptim test/2018.02.17.1@2x.jpg
$ ll -h test
total 584
drwxr-xr-x+ 4 bolk  staff   128B 18 фев 12:09 .
drwxr-xr-x+ 7 bolk  staff   224B 18 фев 12:09 ..
-rw-------@ 1 bolk  staff   187K 18 фев 12:00 2018.02.17.1@2x.jpg
-rw-r--r--+ 1 bolk  staff   102K 18 фев 12:09 2018.02.17.1@2x_cjpeg_dssim.jpg

Экономия 85 килобайт, это очень существенно, при этом разницу на картинке я и правда не вижу. Буду теперь обрабатывать иллюстрации этой утилитой.

Обработка дополнительно утилитой jpegtran из пакета mozjpeg даёт ещё два килобайта экономии.

7 комментариев
Alexey 2018

А в Windows как?

Евгений Степанищев 2018

Там же есть теперь подсистема Линукса. Либо по старинке — cygwin. Ну или переписать скрипт с баша на пауэршелл.

GreLI 2018

У подсистемы линукса долбанутая файловая система. Туда ничего нельзя писать с винды, иначе всё запорется.

Евгений Степанищев 2018

Грустно. Ну тогда cygwin есть или вроде какие-то порты баша на Виндоуз были.

PastorGL 2018

Туда ничего нельзя писать с винды, иначе всё запорется.

А что мешает использовать файлы, записанные в виндовые разделы изнутри линукса? Что мешает хотя бы разок заглянуть в в /mnt, вместо того чтобы писать какую-то ерунду про «долбанутую файловую систему»?

RTFM, блин.

EugeneV 2018

Спасибо!
Ты будешь использовать только для веба?
Не возникало идеи домашний фотоархив пройти утилитой?
Если ты снимаешь высококачественной фототехникой, то наверное вряд ли захочешь.

У меня давно крутится идея, что «репортажные» снимки, которые я делаю просто смартфоном, нужно пережимать, т. к. дефолтное качество у Соньки (кажется 93%) все равно излишне.
Получается храню гигабайты каких-то шумов — разрешенка огромная (но тут я хоть могу в настройках немного уменьшить) * качество завышенное.

Я еще детально не изучил твои ссылки.
А эта оптимизация как-то заточено под конкретное устройство вывода (под его dpi)?
К примеру, если захочется распечатать на бумаге, то на ней уже можно увидеть разницу?

Евгений Степанищев 2018

Не возникало идеи домашний фотоархив пройти утилитой?

У меня домашний архив на «Яндекс.Фотках», они ж безлимитные, а дома дисков не напасёшься всё хранить :)

А эта оптимизация как-то заточено под конкретное устройство вывода (под его dpi)?

Я особо не интересовался, но создаётся впечатление, что нет.