QOI تصويري ڪمپريشن فارميٽ متعارف ڪرايو

ھڪڙو نئون ھلڪو وزن، بي نقصان تصويري ڪمپريشن فارميٽ متعارف ڪرايو ويو آھي - QOI (بلڪل ٺيڪ تصوير)، جيڪو توھان کي اجازت ڏئي ٿو تمام تيزيءَ سان تصويرن کي آر بي بي ۽ آر جي بي اي رنگن جي جڳھن ۾ دٻائڻ. جڏهن ڪارڪردگي جو مقابلو PNG فارميٽ سان ڪيو وڃي ته، C ٻولي ۾ QOI فارميٽ جو سنگل ٿريڊ ريفرنس لاڳو ڪرڻ، جيڪو SIMD هدايتون ۽ اسيمبليءَ جي اصلاحن کي استعمال نٿو ڪري، انڪوڊنگ جي رفتار ۾ libpng ۽ stb_image لائبريرين جي ڀيٽ ۾ 20-50 ڀيرا تيز آهي، ۽ 3. - ڊيڪوڊنگ جي رفتار ۾ 4 ڀيرا تيز. ڪمپريشن ڪارڪردگي جي لحاظ کان، QOI اڪثر تجربن ۾ libpng جي ويجهو آهي (ڪجهه ٽيسٽن ۾ اهو ٿورو اڳتي آهي، ۽ ٻين ۾ اهو گهٽ آهي)، پر عام طور تي اهو stb_image (20٪ تائين جو فائدو) کان گهڻو اڳتي آهي.

C ۾ QOI جو حوالو لاڳو ڪرڻ صرف ڪوڊ جون 300 لائينون آھن. ماخذ ڪوڊ MIT لائسنس تحت ورهايو ويو آهي. اضافي طور تي، حوصلا افزائي تيار ڪيا آهن انڪوڊرز ۽ ڊيڪوڊرز کي Go، Zig ۽ Rust ٻولين ۾. پروجيڪٽ ڊولپمينٽ ڪيو پيو وڃي Dominic Szablewski، هڪ گيم ڊولپر جيڪو MPEG1 وڊيو کي ڊيڪوڊنگ ڪرڻ لاءِ لائبريري ٺاهڻ جو تجربو رکندڙ آهي. QOI فارميٽ کي استعمال ڪندي، ليکڪ اهو ڏيکارڻ چاهي ٿو ته اهو ممڪن آهي ته وڌيڪ پيچيده جديد تصويري انڪوڊنگ فارميٽ جو هڪ مؤثر ۽ سادو متبادل ٺاهيو وڃي.

QOI ڪارڪردگي انڪوڊ ٿيل تصوير (O(n)) جي قرارداد ۽ فطرت کان آزاد آهي. انڪوڊنگ ۽ ڊيڪوڊنگ هڪ پاس ۾ ڪيا ويا آهن - هر پکسل صرف هڪ ڀيرو پروسيس ڪيو ويندو آهي ۽ 4 طريقن مان هڪ ۾ انڪوڊ ٿي سگهي ٿو، چونڊيل پوئين پکسلز جي قدرن جي بنياد تي. جيڪڏهن ايندڙ پکسل پوئين هڪ سان ٺهڪي اچي ٿو، پوء ورجائي انسداد صرف وڌائي ٿو. جيڪڏهن پکسل 64 ماضي پکسل بفر ۾ هڪ قدرن مان هڪ سان ملندو آهي، ته پوء اها قيمت هڪ 6-بٽ آفسيٽ سان ماضي پکسل ۾ تبديل ڪئي وئي آهي. جيڪڏهن پوئين پکسل جو رنگ ٿورڙو مختلف آهي، فرق هڪ مختصر شڪل ۾ ظاهر ڪيو ويندو آهي (رنگ اجزاء ۾ فرق جو مختصر انڪوڊنگ جيڪي 2,4، 5 ۽ XNUMX بٽ ۾ فٽ ٿين ٿا). جيڪڏهن اصلاح لاڳو نه آهي، مڪمل rgba قدر مهيا ڪئي وئي آهي.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو