В Google разработали алгоритм сжатия JPEG-файлов, сокращающий их размер на 35%

Google заинтересована в сокращении времени загрузки веб-сайтов и сервисов. Один из методов решения данной задачи заключается в уменьшении размеров файлов изображений. Ранее компания использовала формат WebP, уменьшавший размер изображений на 10%. Но вчера Google анонсировала Guetzli — алгоритм с открытым исходным кодом, сокращающий размер JPEG-файлов на 35%.

Как это работает?

Guetzli («печенье» в переводе со швейцарского диалекта немецкого) создает JPEG-изображения меньшего размера, сохраняя совместимость с существующими браузерами, приложениями обработки изображений и стандартом JPEG. Практически он очень похож на алгоритм Zopfli, сжимающий PNG- и gzip-файлы меньших размеров, и сильно отличается от технологий RNN, RAISR и WebP.

Визуальное качество изображений JPEG напрямую коррелирует с многоуровневым процессом сжатия. Guetzli устанавливает баланс между минимальными потерями и размером файла, используя алгоритм поиска, что приводит к созданию файлов меньшего размера и оптимального качества. Разумеется, при этом скорость алгоритма немного снижается по сравнению с аналогами.

Google также провела эксперименты, в ходе которых участники последовательно выбирали между изображениями, сжатыми Guetzli и libjpeg. Выбор падал преимущественно на те изображения, что были созданы новым алгоритмом, и это делает более медленное сжатие достойным компромиссом.

Размер: 20×24. Увеличенное изображение кошачьего глаза. Оригинал слева, обработанный Guetzli файл справа, обработанный libjpeg — посередине.

Google надеется, что веб-разработчики и графические дизайнеры найдут Guetzli полезным и будут применять его для обработки своего контента, поскольку это существенно ускорит работу сайтов.

Источник: блог Google Research