Badanie porównawcze

Badanie porównawcze dotyczące formatów WebP, JPEG i JPEG 2000, wrzesień 2010 r.

Uwaga: to wstępne badanie przeprowadziliśmy na pierwszej, opublikowanej przez nas wersji WebP, która korzystała z biblioteki libvpx. Ponadto były to obrazy JPEG zindeksowane z internetu. W oparciu o opinie społeczności przeprowadziliśmy nowe badanie z wersją 0.1.2 projektu libwebp zaczęliśmy od obrazów bezstratnych (PNG). Nowe badanie zastępuje to badanie.

Zespół WebP przeprowadził badanie porównawcze z 3 metodami kompresji obrazów na losowym zbiorze 1 miliona obrazów. Celem badań było zmierzenie kompresji uzyskanej za pomocą tych metod oraz przeanalizowanie wpływu między rozmiarem obrazu a kompresją.

Do 900 000 obrazów JPEG zawartych w zbiorze danych zastosowano trzy metody kompresji: WebP, JPEG 2000 i Re-JPEG. Obrazy JPEG zostały ponownie skompresowane za pomocą funkcji Re-JPEG, tak aby każda z nich była jak najbliższa wartości szczytowego współczynnika sygnałów do szumu (PSNR). Zespół przeanalizował obrazy po ich skompresowaniu.

Oprócz przeprowadzenia szeroko zakrojonych badań zespół sprawdził ręcznie 100 losowych obrazów i stwierdził, że w większości przypadków WebP zapewnia akceptowalną jakość wizualną.

Podsumowanie

WebP uzyskuje ogólnie wyższą kompresję niż JPEG lub JPEG 2000. Korzyści związane z minimalizowaniem rozmiaru plików są szczególnie wysokie w przypadku mniejszych obrazów, które są najczęściej używane w internecie.

Zbiór danych

Zbiór danych użyty w badaniu stanowił zbiór 1 miliona obrazów wybranych losowo z repozytorium obrazów zindeksowanych z internetu. Tabela poniżej przedstawia rozkład różnych typów obrazów w zbiorze danych.

Typ Liczba
JPEG ~900 tys.
PNG ~47 tys.
GIF ~47 tys.
Inne ~6 tys.

Projektowanie eksperymentu

Eksperymenty przeprowadzono w 2 etapach:

  1. Zespół uruchomił WebP na obrazach z docelową wartością PSNR 42. Dostroili parametr jakości (QP) kodera WebP do momentu, gdy w przypadku danego obrazu udało się uzyskać wynik zbliżony do 42. Dlatego rzeczywisty limit PSNR dla każdego obrazu niekoniecznie wynosił dokładnie 42.

  2. Zespół użył wartości PSNR obrazów skompresowanych w WebP jako docelowego pliku PSNR w przypadku obrazów JPEG 2000 i Re-JPEG. Przeszukali też parametry jakości obrazów JPEG 2000 i JPEG, aby jak najbardziej zbliżyć się do docelowej wartości PSNR.

Rzeczywisty wynik kompresji został zmierzony procentowo przy użyciu tego wzoru:

compression_percentage = 100 * (original_image.length - compressed_image.length) / original_image.length

Wyniki

Testy dały następujące wyniki pod kątem wzmocnienia kompresji ujemnej i nieujemnej:

Nieujemna kompresja

Zespół nie nałożył kary, jeśli po skompresowaniu zwiększył się rozmiar obrazu. Oznacza to, że wartość procentowa kompresji_obrazu była mierzona jako 0, gdy wartość atrybutu skompresowany_obraz.długość była większa niż wartość parametru „długość_obrazu_oryginalnego.długość_obrazu”.

Zysk kompresji negatywnej

Zespół zezwolił na uzyskanie ujemnego odsetka kompresji, aby lepiej zrozumieć nieprzetworzoną wydajność różnych kompresorów.

Poniżej przedstawiono średnie wartości procentowe kompresji uzyskane w każdej z tych 3 metod.

Typ Śr. uzyskano PSNR Średnia kompresja %
(nieujemny wzrost kompresji)
Średnia kompresja %
(ujemny wzrost kompresji)
WebP 39,38 41.30 39,80
JPEG 2000 39,49 27.67 9.71
Ponownie JPEG 39,36 22.37 14.62

Gdy dozwolony był ujemny wzrost kompresji, średnia wydajność formatu JPEG 2000 była niższa niż w przypadku JPEG. Przyczyną mogą być artefakty o wysokiej częstotliwości znajdujące się na obrazach JPEG, które mogą przyczyniać się do gorszej kompresji.

Implementacja Kakadu użyta w eksperymencie do konwersji do formatu JPEG 2000 nie powiodła się i nie udało się przekonwertować około 240 tys. obrazów.

Format JPEG 2000 miał niższe wartości procentowe kompresji niż Re-JPEG, głównie dlatego, że w przypadku wielu obrazów wynik JPEG 2000 był ujemną kompresją. Z tego powodu obrazy JPEG uzyskały niższy ogólny wynik kompresji.

Na poniższych wykresach przedstawiono wykresy rozkładu dla trzech metod:

Rysunek 1. Rozkład rozmiaru obrazu w populacji

Wykres pokazuje, że większość obrazów była mała. Częstotliwość obrazów o rozmiarze większym niż 500 KB jest zwykle mniejsza niż 100.

Rysunek 2. Wartość procentowa kompresji obrazów WebP, JPEG i JPEG 2000

Ten wykres pokazuje, że treść obrazów skompresowanych za pomocą formatu WebP ma lepszą kompresję niż re-jpeg i jpeg 2000. Poza tym obrazy skompresowane za pomocą WebP mają większą kompresję dodatnią niż pozostałe.

Rysunek 3. Porównanie rozmiarów obrazów i procentowej kompresji

Ten wykres pokazuje, że WebP uzyskuje lepszą kompresję niż inne formaty, zwłaszcza w przypadku mniejszych obrazów.