Huffman (1998)

La méthode de Huffman permet de réaliser facilement un programme de compression efficace.
En gros on n'utilise plus un code de longueur fixe (8 bits) mais un code à longueur variable liées aux probabilités d'utilisation des informations. Par exemple, un caractère très fréquent sera codé sur 3 bits (au lieu de 8) tandis qu'un caractère très rare pourra être codé sur 14 bits... Mais globalement le nombre de bits utilisés sera inférieur.

Cette méthode est très efficace sur des fichiers comportant peu de caractères (fichiers textes). Par contre elle est très mauvaise sur certains fichiers comportant tous les caractères à des fréquences voisines (fichiers wav et bmp entre autres)... C'est pourquoi j'ai rajouté une fonctionnalité "variation" qui permet d'obtenir une bonne compression sur les fichiers de ce type.

Voici un résumé des résultats selon les types de fichiers, comparés à la compression LZW proposée par ZIP (0% est un taux très mauvais, 90% est un excellent taux de compression) :
 

Type de Fichier
Taux de compression
ZIP
Texte
40 %
70 %
Wav (8 bits, mono)
50 %
45 %
Bmp (8 bits = 256 couleurs)
50 %
55 %

 
Téléchargez Huffman !