Qaabka sawirka sawirka QOI ayaa la soo bandhigay

Qaab cusub oo fudud oo aan lumin ayaa la soo bandhigay -QOI (Sawir aad u fiican), kaas oo kuu oggolaanaya inaad si dhakhso leh u cadaadiyo sawirada meelaha midabka RGB iyo RGBA. Marka la barbar dhigo waxqabadka qaabka PNG, hirgelinta tixraaca hal-xadhkaha leh ee qaabka QOI ee luqadda C, oo aan isticmaalin tilmaamaha SIMD iyo hagaajinta isku imaatinka, ayaa 20-50 jeer ka dhakhso badan xawaaraha codaynta marka loo eego maktabadaha libpng iyo stb_image, iyo 3 -4 jeer ka dhakhso badan xawaaraha dejinta. Marka la eego waxtarka isku-buufinta, QOI waxay ku dhowdahay libpng imtixaannada badankood (imtixaanada qaar wax yar ayay ka horreeyaan, kuwa kalena way ka hooseeyaan), laakiin guud ahaan waxay si muuqata uga horreeyaan stb_image (kor u kaca ilaa 20%).

Hirgelinta tixraaca ee QOI ee C waa 300 oo xariiq oo kood ah. Koodhka isha waxa lagu qaybiyaa shatiga MIT. Intaa waxaa dheer, dadka xiiseeya waxay diyaariyeen hirgelinta cod-bixiyeyaal iyo cod-bixiyeyaal ku jira luqadaha Go, Zig iyo Rust. Mashruuca waxaa soo saaray Dominic Szablewski, oo ah horumariye ciyaarta oo khibrad u leh abuurista maktabad lagu codeeyo fiidiyowga MPEG1. Isticmaalka qaabka QOI, qoraagu wuxuu rabay inuu tuso inay suurtogal tahay in la abuuro beddel wax ku ool ah oo fudud oo ka duwan qaababka qaabaynta sawirka casriga ah ee aad u adag.

Waxqabadka QOI waa ka madax banaan yahay xallinta iyo dabeecadda sawirka la calaamadeeyay (O(n)). Codaynta iyo codaynta ayaa lagu sameeyaa hal baas - pixels kasta waxaa lagu farsameeyaa hal mar waxaana lagu dhejin karaa mid ka mid ah 4 siyaabood, oo la doortay iyadoo kuxiran qiyamka pixels hore. Haddii pixel-ka soo socda uu ku beegmo kii hore, markaa tirinta soo noqnoqda ayaa kordhisa kaliya. Haddii pixel-ku u dhigma mid ka mid ah qiyamka 64 ee hore ee pixel buffer, markaa qiimaha waxaa lagu beddelay 6-bit oo ka baxsan pixel hore. Haddii midabka pixel-kii hore wax yar ka duwan yahay, faraqa ayaa lagu tilmaamayaa qaab gaaban (encoding gaaban ee kala duwanaanshaha qaybaha midabka ee ku habboon 2,4, 5 iyo XNUMX bits). Haddii tayaynta aan la dabaqi karin, qiimaha rgba oo buuxa ayaa la bixiyaa.

Source: opennet.ru

Add a comment