Format tal-kompressjoni tal-immaġni QOI introdott

Ġie introdott format ġdid ta 'kompressjoni ta' immaġini ħafif u mingħajr telf - QOI (Immaġni Pjuttost OK), li jippermettilek tikkompressa malajr ħafna immaġini fl-ispazji tal-kulur RGB u RGBA. Meta tqabbel il-prestazzjoni mal-format PNG, l-implimentazzjoni ta 'referenza b'ħajta waħda tal-format QOI fil-lingwa C, li ma tużax struzzjonijiet SIMD u ottimizzazzjonijiet tal-assemblaġġ, hija 20-50 darba aktar mgħaġġla fil-veloċità tal-kodifikazzjoni mill-libreriji libpng u stb_image, u 3 -4 darbiet aktar mgħaġġla fil-veloċità tad-dekodifikazzjoni. F'termini ta 'effiċjenza tal-kompressjoni, QOI huwa qrib libpng fil-biċċa l-kbira tat-testijiet (f'xi testijiet huwa kemmxejn 'il quddiem, u f'oħrajn huwa inferjuri), iżda b'mod ġenerali huwa notevoli qabel stb_image (gwadann ta' sa 20%).

L-implimentazzjoni ta 'referenza ta' QOI f'C hija biss 300 linja ta 'kodiċi. Il-kodiċi tas-sors huwa mqassam taħt il-liċenzja MIT. Barra minn hekk, id-dilettanti ħejjew implimentazzjonijiet ta’ encoders u decoders fil-lingwi Go, Zig u Rust. Il-proġett qed jiġi żviluppat minn Dominic Szablewski, żviluppatur tal-logħob b'esperjenza fil-ħolqien ta' librerija għad-dekodifikazzjoni tal-vidjo MPEG1. Bl-użu tal-format QOI, l-awtur ried juri li huwa possibbli li tinħoloq alternattiva effettiva u sempliċi għal formati ta 'kodifikazzjoni ta' immaġini moderni kkumplikati żżejjed.

Il-prestazzjoni tal-QOI hija indipendenti mir-riżoluzzjoni u n-natura tal-immaġni kodifikata (O(n)). Il-kodifikazzjoni u d-dekodifikazzjoni jitwettqu f'pass wieħed - kull pixel jiġi pproċessat darba biss u jista 'jiġi kodifikat f'wieħed minn 4 modi, magħżula skont il-valuri tal-pixels preċedenti. Jekk il-pixel li jmiss jikkoinċidi ma 'dak ta' qabel, allura l-counter ta 'ripetizzjoni jiżdied biss. Jekk il-pixel jaqbel ma' wieħed mill-valuri fil-buffer tal-pixel tal-passat ta' 64, allura l-valur jiġi sostitwit b'offset ta' 6 bit għall-pixel tal-passat. Jekk il-kulur tal-pixel preċedenti huwa kemmxejn differenti, id-differenza hija indikata f'forma qasira (kodifikazzjoni qasira tad-differenzi fil-komponenti tal-kulur li jidħlu f'2,4, 5 u XNUMX bits). Jekk l-ottimizzazzjoni mhix applikabbli, il-valur rgba sħiħ huwa pprovdut.

Sors: opennet.ru

Żid kumment