This core implements the QOI lossless image compression algorithm producing a raw, header-less file. Simple, fully synchronous design with low gate count.
OL_QOIE is a fast, low complexity implementation of the compression algorithm that accepts one 24 bits RGB pixel per clock cycle and outputs compressed data packed in 32 bits words.
The QOI Lossless Image Compression Algorithm
QOI stands for Quite OK Image Format and it is a fast, simple lossless image compression algorithm.
As it can be seen in these benchmarks, the performance of the algorithm is usually somewhere in between two well known image compression libraries (like libpng and stb) but at a much lower computational cost.
QOI uses a combination of some well known image compression techniques and innovative ideas.
Pixels are compressed as:
- runs of identical pixels
- an index to a 64 pixel cache of previously encountered pixels
- a difference to the previous pixel
- a full RGB pixel
The QOI algorithm is an excellent compromise between compression performance and low algorithmic complexity.