QOI beeld kompressie formaat bekendgestel

'n Nuwe, liggewig, verlieslose beeldkompressie-formaat, QOI (Quite OK Image), word bekendgestel, wat baie vinnige beeldkompressie in RGB- en RGBA-kleurruimtes moontlik maak. Wanneer prestasie met die PNG-formaat vergelyk word, is 'n enkeldraadverwysingsimplementering van die QOI-formaat in C-taal, wat nie SIMD-instruksies en samestelleroptimalisasies gebruik nie, 20-50 keer vinniger as die libpng- en stb_image-biblioteke in enkoderingspoed, en 3 -4 keer vinniger in dekodering spoed. Wat kompressiedoeltreffendheid betref, is QOI in die meeste toetse naby aan libpng (in sommige toetse is dit effens voor, en in ander verloor dit), maar oor die algemeen is dit merkbaar voor stb_image (tot 20% wins).

Die QOI-verwysingsimplementering in C het slegs 300 reΓ«ls kode. Die bronkode word onder die MIT-lisensie versprei. Boonop het entoesiaste implementerings van enkodeerders en dekodeerders in Go, Zig en Rust voorberei. Die projek word ontwikkel deur Dominic Szablewski, 'n speletjie-ontwikkelaar met ervaring in die skep van 'n biblioteek vir MPEG1-video-dekodering. Deur die QOI-formaat te gebruik, wou die skrywer wys dat dit moontlik is om 'n effektiewe en eenvoudige alternatief vir oorgekompliseerde moderne beeldenkoderingsformate te skep.

QOI werkverrigting hang nie af van die resolusie en aard van die geΓ«nkodeerde beeld (O(n)) nie. Enkodering en dekodering word in een pas uitgevoer - elke pixel word slegs een keer verwerk en kan op een van 4 maniere geΓ«nkodeer word, gekies na gelang van die waardes van vorige pixels. As die volgende pixel met die vorige een saamval, verhoog die herhalingsteller net. As 'n pixel ooreenstem met een van die waardes in die vorige pixel buffer 64, dan word 'n 6-bis offset na die vorige pixel aangedui in plaas van die waarde. As die kleur van die laaste pixel effens verskil, word die verskil in die kort vorm aangedui (verkorte enkodering van die verskille in kleurkomponente wat in 2,4 en 5 bisse pas). As geen optimalisering van toepassing is nie, word die volle rgba-waarde gespesifiseer.

Bron: opennet.ru

Voeg 'n opmerking