Společnost Google představila novou otevřenou knihovnu jpegli, která implementuje kódovač a dekódovač obrázků ve formátu JPEG. Knihovna obsahuje další optimalizace pro zvýšení efektivity kódování, což umožňuje zvýšit míru komprese vysoce kvalitních obrázků o 35 % ve srovnání s tradičními kodeky JPEG. Ve srovnání s libjpeg-turbo knihovna jpegli dosahuje podobné úrovně kvality při snížení bitové rychlosti o 32 %. Na úrovni API a ABI je knihovna plně kompatibilní s libjpeg62 a lze ji použít pro její transparentní nahrazení. Kód knihovny je napsán v jazyce C++ a je poskytován pod licencí BSD.

Zvýšení úrovně komprese se dosahuje použitím pokročilých technologií ke snížení šumu na obrázku a zvýšení kvality, které využívají efektivnější metody psychovizuálního modelování k redukci vznikajících artefaktů. Konkrétně je v jpegli použita adaptivní heuristika kvantizace, kterou používá projekt JPEG XL, a vylepšené algoritmy pro výběr kvantizačních matic a výpočet mezivýsledků.
Knihovna jpegli umožňuje kódování obrázků s vyhrazením 10 a více bitů na barevnou složku. Výstup z nových kódovacích algoritmů se přitom přizpůsobuje tradičnímu modelu formátu JPEG, který povoluje použití pouze 8 bitů na barevnou složku. Tato vlastnost umožňuje zachovat kompatibilitu s již existujícími dekodéry, které jsou navrženy pro 8bitové zobrazení barevných komponent.
Obrázky kódované pomocí jpegli plně vyhovují standardu JPEG, nevyžadují specifické dekodéry a mohou být zobrazeny v existujících prohlížečích JPEG a webových prohlížečích. Použití vlastního dekodéru pro dekompresi obrázků komprimovaných pomocí jpegli umožňuje dosáhnout dalšího snížení artefaktů. Rychlost kódování pomocí jpegli je srovnatelná s knihovnami libjpeg-turbo a MozJPEG.
Zdroj: opennet.ru
