Смысл JPEG Archive в том, чтобы готовить большие массивы не очень нужных снимков для долгого хранения, ужимая их ровно так, чтобы на глаз было незаметно. В комплекте:
- jpeg-hash — выдает хеш изображения — для дальнейшего сравнивания с другими хешами;
- jpeg-compare — сравнивает два снимка и сообщает, насколько они визуально похожи (в процентах);
- jpeg-recompress — сжимает фотографию несколько раз и затем выбирает оптимальный по соотношению размер — качество вариант (порог можно настроить);
- jpeg-archive — скрипт, который принимает на вход множество снимков и последовательно применяет предыдущие утилиты для отсеивания дубликатов и сжатия.
Я пока что не стал связываться с jpeg-archive: для него нужно поставить еще exiftool, dcraw и Ladon или GNU Parallel для параллельной работы на нескольких процессорных ядрах. Зато поигрался с jpeg-recompress как с самой интересной утилитой из всего набора.
Сложно сказать, чего я ждал, но точно не того, что обещал разработчик: сжатия почти без визуальных изменений с уменьшением размера исходного файла от 30 до 70% на умолчательных настройках. Причем если снимки, сделанные на Phone 6, уменьшаются максимум процентов на 20, то в несколько раз более увесистые кадры iPhone X — уже на 40–50%. И все это полная ерунда по сравнению с 70–80%, которые теряют в весе огромные изображения с Canon 7D. Было 10 мегабайт, стало 2–3. Круто? Но должен быть подвох!
Конечно, сжатие с потерями всегда означает… собственно, потери. Без увеличения на глаз разницы, может быть, никакой, но под «микроскопом» сразу видно, как теплые ламповые пупырышки превращаются в холодные цифровые квадраты. Вся суть JPEG!
Однако если ты не собираешься делать шестикратное увеличение и разглядывать шум матрицы, то результаты jpeg-recompress почти идеальны. Только в одном случае я заметил разницу, перелистывая кадры вперед-назад (голые ветки кустов потеряли резкость), но, когда я поставил изображения рядом, она стала уже далеко не такой очевидной.
Для особых эстетов существует ключ -a
, который ставит в приоритет точность подбора, пренебрегая потреблением ресурсов. На мой взгляд, тормоза того не стоят: сила сжатия меняется где-то на 1%, что совсем уже незаметно для глаза.