QOI - nén ảnh không mất dữ liệu O(n)
(phoboslab.org)<p>"Quite OK Image" <br />
- Thực hiện nén RGB/RGBA với kích thước tương đương PNG<br />
→ Nén nhanh hơn 20x-50x và giải nén nhanh hơn 3~4x <br />
→ Mã nguồn mở C dạng tệp header đơn dài 300 dòng <br />
→ Triển khai đơn giản, đơn luồng, không sử dụng SIMD <br />
- Chi tiết kỹ thuật <br />
→ Mã hóa/giải mã ảnh theo một lượt duy nhất <br />
→ Mỗi pixel chỉ được xử lý một lần và mỗi pixel được mã hóa theo một trong 4 cách <br />
⇨ Nếu giống pixel ngay trước đó thì tăng run-length của pixel trước, nếu khác thì đóng gói pixel mới theo một trong 3 cách bên dưới <br />
⇨ Nếu giống một pixel đã xử lý trước đó thì dùng chỉ mục của pixel đó. Để làm vậy, nó giữ một mảng cho 64 pixel gần nhất<br />
⇨ Nếu khác biệt so với pixel trước không nhiều thì lưu giá trị chênh lệch RGBA đó <br />
⇨ Nếu 3 cách trên đều không phù hợp thì lưu giá trị RGBA của pixel. Tuy nhiên chỉ lưu phần khác với pixel trước đó </p>
3 bình luận