Nadchodzi kolejny pogromca JPEG od Google: otwarty „Pik”

Nadchodzi kolejny pogromca JPEG od Google: otwarty „Pik”

Nadchodzi kolejny pogromca JPEG od Google: otwarty „Pik”
25.07.2017 14:57, aktualizacja: 26.07.2017 12:21

Google nie rezygnuje z ulepszania tego, jak korzystamy z różnych treści i najwyraźniej pracuje nad nowym, stratnym formatem do kodowania plików graficznych.

Kod projektu znalazł się na GitHubie z dopiskiem, że nie jest to oficjalny produkt firmy Google, jednak ponieważ został napisany przez pracownika firmy, ma ona prawo do kodu. Ponadto kod znajduje się na koncie Google'a na GitHubie, więc nieoficjalność jest bardzo umowna. Na pewno nie możemy spodziewać się żadnego wsparcia czy gwarancji, że program zadziała. Ponadto przy repozytorium widnieje prośba, by nie używać projektu w żadnym celu.

Format o nazwie Pik wygląda na dobrze zapowiadający się, otwarty zamiennik dla JPG. W teorii ma generować obrazy o 55% mniejsze (w bajtach) od analogicznych obrazów w formacie JPG, przy zachowaniu porównywalnej jakości. Porównanie zostało zdefiniowane z pomocą projektu butteraugli, wykrywającego automatycznie różnice psychowizualne między obrazami – próbki miały identyczny wynik, ale plik Pik był mniejszy o ponad połowę.

Z kodu źródłowego na GitHubie można wywnioskować, że Pik, podobnie jak JPEG, korzysta z bloków DCT (dyskretnej transformacji cosinusowej) o rozmiarze 8×8, ale z ośmioma predyktorami, a nie z jednym. Pobieżna analiza wykazała, że Pik wygląda jak połączenie enkodera Guetzil i kompresora Lepton, a przy tym obrazy są odkodowywane około 30% szybciej niż w przypadku JPEG. Niestety kodowanie na razie jest bardzo wolne.

Warto przypomnieć, że to nie jest pierwsza i pewnie nie ostatnia próba poprawienia kompresji obrazu ze strony Google'a. W 2010 roku zaprezentowany został format WebP, przeznaczony w teorii do stratnego kompresowania obrazów tam, gdzie zwykle stosowany jest format JPG. WebP jednak nie przyjął się w szerszym kontekście i poza stronami Google'a nie spotkamy go w wielu miejscach.

Na razie nie wiadomo dokładnie, czym różni się Pik od WebP czy JPG. Póki co wiemy jedynie, że korzystanie z enkodera i dekodera jest możliwe tylko na procesorach z AVX2 i FMA, na przykład Haswellach Intela.

Mniejszy rozmiar pliku to oczywiście zysk czasowy przy ładowaniu stron, zawierających dużo grafik, a w szczególności zdjęć. Pik mógłby sprawdzić się w takich zastosowaniach, jak strony AMP i oczywiście w przeglądarkach mobilnych… o ile rozwiązany zostanie problem wymagań procesora. W czasach, gdy kultura wizualna świeci triumfy, warto zadbać o szybką i lekką dystrybucję obrazów, najlepiej nie obłożoną z każdej strony patentami.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (35)