ISN Notion de compression de données

Notion de compression de données

modifier

Pour comprimer un fichier, on peut faire en sorte d'y repérer des redondances, puis d'encoder les parties redondantes d'une façon plus efficace.

Exemple simple 1

modifier

proposez une façon simple d'encoder le texte suivant :

BBBBBBBBBBWWWWWWWWWWRRRRRRRRRR

qui mesure 30 octets, en moins de 30 octets.

Une fois que le texte est comprimé, de quoi a-t-on besoin pour le décompresser, c'est à dire pour le rétablir à l'identique ?

Exemple simple 2

modifier
112233445566778899

est une version comprimée du texte d'origine suivant :

122333444455555666666777777788888888999999999

devinez une méthode simple pour la décompression. Une fois la méthode trouvée, décompressez le code suivant :

164794581484

Cette méthode de compression/décompression a des inconvénients : est-il possible de deviner facilement si on a affaire à un objet comprimé ou à un objet non comprimé ? ... Qu'obtient-on si on essaie de comprimer le texte « 164794581484 » ?

Quelques points communs de logiciels de compression standards

modifier
  • les fichiers comprimés à l'aide de ces logiciels contiennent un signe simple permettant de suggérer le type de compression utilisé.
  • les compressions se font souvent en deux temps au moins :
    • repérage de redondances caractéristiques souvent constatées dans le type de fichier qu'on traite le plus souvent (par exemple, pour un texte, présence de certains mots souvent utilisés)
    • utilisation d'algorithmes généraux permettant une bonne compression dans les cas généraux : algorithme de Huffmann par exemple.