This project represents the understanding and implementation of the Huffman algorithm by making an actual Text Compression Engine based on the algorithm
This program can compress text files on your device to enable easier storage and transmission of the file
The process has a driver program inbuilt, and executing the core.py module should start it.
There are two operations to choose from:
a) Compression [To compress a given file]
b) Decompression [To decompress a compressed file]
- Bible.txt [3.98kB] to Bible.bin [2.17kB] (45.72% reduction in size)
- SCC_DATA.txt [70.95MB] to SCC_DATA.bin [31.79MB] (55.19% reduction in size)
[The test data will be uploaded to this repository soon]
The program produces a copy of the compressed file. ie. The original file remains untouched. Hence, to truly free up space, a user must delete the original file.
- Improvement to the Huffman Tree datastructure will speed up the process slightly [Already timed to be decent despite the messy-looking code]
- Better decoding algorithm required
- Addition of media compression using the same engine [Experimental and Unorthodox]