format komprési gambar QOI diwanohkeun

A lightweight, format komprési gambar lossless anyar geus diwanohkeun - QOI (Cukup OK Gambar), nu ngidinan Anjeun pikeun gancang pisan niiskeun gambar dina spasi warna RGB na RGBA. Nalika ngabandingkeun kinerja sareng format PNG, palaksanaan rujukan single-threaded tina format QOI dina C, nu teu make parentah SIMD na optimizations assembly, nyaeta 20-50 kali leuwih gancang dina speed encoding ti perpustakaan libpng na stb_image, sarta 3- 4 kali leuwih gancang dina laju decoding. Dina watesan efisiensi komprési, QOI deukeut libpng di paling tés (dina sababaraha tés éta rada payun, sarta di batur éta inferior), tapi sacara umum éta noticeably payun stb_image (gain nepi ka 20%).

Palaksanaan rujukan QOI dina C ngan 300 baris kode. Kode sumber disebarkeun dina lisénsi MIT. Salaku tambahan, para peminat parantos nyiapkeun palaksanaan encoder sareng decoder dina basa Go, Zig sareng Rust. Proyék ieu dikembangkeun ku Dominic Szablewski, pamekar kaulinan anu gaduh pangalaman dina nyiptakeun perpustakaan pikeun decoding pidéo MPEG1. Ngagunakeun format QOI, panulis hayang némbongkeun yén kasebut nyaéta dimungkinkeun pikeun nyieun hiji alternatif éféktif jeung basajan pikeun leuwih-pajeulit format encoding gambar modern.

kinerja QOI bebas tina resolusi jeung sifat gambar disandikeun (O(n)). Encoding sareng decoding dilakukeun dina hiji pass - unggal piksel diolah ngan sakali sareng tiasa disandi dina salah sahiji tina 4 cara, dipilih gumantung kana nilai piksel sateuacana. Lamun piksel salajengna coincides jeung saméméhna, counter pengulangan ngan nambahan. Upami piksel cocog sareng salah sahiji nilai dina panyangga piksel 64 katukang, maka nilaina diganti ku offset 6-bit ka piksel anu kapungkur. Upami warna piksel saacanna rada béda, bédana dituduhkeun dina bentuk pondok (encoding pondok tina bédana komponén warna anu pas kana 2,4, 5 sareng XNUMX bit). Lamun optimasi henteu lumaku, nilai rgba pinuh disadiakeun.

sumber: opennet.ru

Tambahkeun komentar