In this thesis Bayer CFA image lossless compression algorithm is evaluated and implemented on FPGA. Compression-first method is utilised to avoid demosaicing process which triples the original data. Image data is compressed through removal of color and spatial redundancy. It is further compressed by utilising Golomb-Rice entropy encoding with dynamically adjustable parameter k (AGOR). As the image sensor supplies data for 16 pixels simultaneously, the algorithm is paralelized, effectively making it 16 times faster. A way to assemble and concatenate bitstreams of compressed data is developed. The effect of parameter k on compression efficiency is studied and a rule for the ideal value of k is derived.
The software implementation of the algorithm is programmed using C++ and Matlab. KODAK image dataset is used to verify the proposed algorithm and evaluate it's performance. VHDL is used to decribe a hardware implementation of the proposed algorithm. The design is tested and verified through simulation using test vectors generated by software implementation in C++. In performance evaluation it is found that the proposed algorithm in average compresses KODAK dataset images down to 75% of their original size, while high resolution images from another dataset are compressed down to 44% of their original size. In the end, some ideas are suggested as a way to further improve the compression ratio.
|