QOI irudien konpresioaren formatua aurkeztu da

Galerarik gabeko irudien konpresio formatu berri bat sartu da - QOI (Quite OK Image), RGB eta RGBA kolore-espazioetan irudiak oso azkar konprimitzeko aukera ematen duena. PNG formatuarekin errendimendua alderatzean, C lengoaian QOI formatuaren hari bakarreko erreferentziaren inplementazioa, SIMD argibideak eta muntaia optimizazioak erabiltzen ez dituena, 20-50 aldiz azkarragoa da kodetze-abiaduran libpng eta stb_image liburutegiak baino, eta 3. -4 aldiz azkarragoa deskodetzeko abiaduran. Konpresio-eraginkortasunari dagokionez, QOI libpng-tik gertu dago proba gehienetan (proba batzuetan zertxobait aurreratzen da, eta beste batzuetan txikiagoa), baina orokorrean stb_imageren aurretik nabarmen dago (% 20 arteko irabazia).

QOI C-n erreferentziazko inplementazioa 300 kode-lerro baino ez dira. Iturburu kodea MIT lizentziapean banatzen da. Gainera, zaleek kodetzaile eta deskodetzaileen ezarpenak prestatu dituzte Go, Zig eta Rust lengoaietan. Proiektua Dominic Szablewskik garatzen ari da, MPEG1 bideoa deskodetzeko liburutegi bat sortzen esperientzia duen joko-garatzailea. QOI formatua erabiliz, irudiak kodetzeko formatu moderno korapilatsuen aurrean alternatiba eraginkor eta sinple bat sortzea posible dela erakutsi nahi izan du egileak.

QOI errendimendua kodetutako irudiaren bereizmenaren eta izaeraren independentea da (O(n)). Kodeketa eta deskodeketa pase bakarrean egiten dira - pixel bakoitza behin bakarrik prozesatzen da eta 4 moduetako batean kodetu daiteke, aurreko pixelen balioen arabera hautatuta. Hurrengo pixela aurrekoarekin bat badator, orduan errepikapen-kontagailua handitzen da soilik. Pixela iraganeko 64 pixeleko buffer-eko balioetako batekin bat badator, orduan balioa iraganeko pixelarekiko 6 biteko desplazamendu batekin ordezkatzen da. Aurreko pixelaren kolorea apur bat desberdina bada, aldea forma laburrean adierazten da (2,4, 5 eta XNUMX bitetan sartzen diren kolore-osagaien desberdintasunen kodeketa laburra). Optimizazioa aplikagarria ez bada, rgba balio osoa ematen da.

Iturria: opennet.ru

Gehitu iruzkin berria