Сравнительное исследование WebP, JPEG и JPEG 2000, сентябрь 2010 г.
Примечание. Это первоначальное исследование мы провели с первой выпущенной нами версией WebP, в которой использовалась библиотека libvpx
. Кроме того, исходными изображениями были изображения в формате JPEG, которые мы сканировали из Интернета. Основываясь на отзывах сообщества, мы провели новое исследование с версией 0.1.2 libwebp
начиная с изображений без потерь (PNG) в качестве источника. Новое исследование заменяет это исследование.
Команда WebP провела сравнительное исследование трех методов сжатия изображений на случайном наборе из 1 миллиона изображений. Целью исследования было измерение степени сжатия, достигаемой этими методами, и анализ компромисса между размером изображения и степенью сжатия.
К 900 000 изображений JPEG, содержащимся в наборе данных, были применены три метода сжатия: WebP, JPEG 2000 и Re-JPEG. Изображения JPEG были повторно сжаты с помощью Re-JPEG, чтобы каждое из них было максимально близко к целевому пиковому значению отношения сигнал/шум (PSNR). Анализ команды проводился на изображениях после их сжатия.
В дополнение к крупномасштабному исследованию команда вручную проверила 100 случайных изображений и обнаружила, что в большинстве случаев WebP обеспечивает приемлемое визуальное качество.
Выводы
WebP обеспечивает в целом более высокое сжатие, чем JPEG или JPEG 2000. Прибыль от минимизации размера файла особенно велика для изображений меньшего размера, которые наиболее часто встречаются в Интернете.
Набор данных
Набор данных, использованный в исследовании, представлял собой коллекцию из 1 миллиона изображений, случайно выбранных из хранилища изображений, полученного из Интернета. В следующей таблице показано распределение различных типов изображений в наборе данных.
Тип | Считать |
---|---|
JPEG | ~900 тыс. |
PNG | ~47 тыс. |
гифка | ~47 тыс. |
Другой | ~6К |
План эксперимента
Эксперименты проводились в два этапа:
Команда запускала WebP на изображениях с целевым PSNR, равным 42. Они настраивали параметр качества (QP) для кодировщика WebP, пока не добились результата, максимально близкого к 42, насколько это возможно для данного изображения. Таким образом, фактическое значение PSNR, достигнутое для каждого изображения, не обязательно составляло ровно 42.
Команда использовала значение PSNR для изображений, сжатых с помощью WebP, в качестве целевого PSNR для изображений JPEG 2000 и Re-JPEG. Они также выполнили строковый поиск по параметрам качества изображений JPEG 2000 и JPEG, чтобы максимально приблизиться к целевому PSNR.
Фактический результат сжатия измерялся в процентах по следующей формуле:
compression_percentage = 100 * (original_image.length - compressed_image.length) / original_image.length
Результаты
Тесты дали следующие результаты для отрицательного и неотрицательного коэффициента усиления сжатия:
Неотрицательный коэффициент сжатия
Команда не наказывала метод, если этот метод увеличивал размер изображения после сжатия. То есть, сжатие_процента считалось равным 0, когда сжатое_изображение.длина было больше, чем исходное_изображение.длина.
Отрицательное усиление сжатия
Команда позволила получить отрицательные результаты в процентах сжатия, чтобы лучше понять исходную производительность различных компрессоров.
Ниже приведены средние проценты сжатия, достигнутые каждым из трех методов.
Тип | Среднее значение PSNR получено | Средний процент сжатия (неотрицательный коэффициент сжатия) | Средний процент сжатия (отрицательный коэффициент сжатия) |
---|---|---|---|
ВебП | 39,38 | 41.30 | 39,80 |
JPEG 2000 | 39,49 | 27,67 | 9,71 |
Re-JPEG | 39,36 | 22.37 | 14.62 |
Когда был разрешен отрицательный коэффициент сжатия, средняя производительность JPEG 2000 была ниже, чем у JPEG. Это может быть связано с высокочастотными артефактами, присутствующими в изображениях JPEG; эти артефакты могут способствовать неидеальной ситуации сжатия.
Реализация Kakadu, использованная в эксперименте по преобразованию в JPEG 2000, не смогла преобразовать около 240 000 изображений.
JPEG 2000 имел более низкий процент сжатия, чем Re-JPEG, в первую очередь потому, что результат JPEG 2000 был отрицательным сжатием для многих изображений. По этой причине изображения JPEG имеют более низкий общий показатель сжатия.
На следующих рисунках представлены графики распределения для трех методов:
Рисунок 1. Распределение численности изображений по размерам
На графике видно, что большинство изображений были небольшими. Частота изображений размером более 500К обычно меньше 100.
Рисунок 2. Процент сжатия изображений WebP, JPEG и JPEG 2000.
Этот график показывает, что основная часть изображений, сжатых с помощью WebP, получила лучшее сжатие, чем re-jpeg и jpeg 2000. Кроме того, изображения, сжатые с помощью WebP, получили более положительное сжатие, чем другие.
Рисунок 3. Сравнение размеров изображений и процента сжатия.
Этот график показывает, что WebP обеспечивает лучшее сжатие, чем другие форматы, особенно для изображений меньшего размера.