Aller au contenu

ISN Notion de compression de données

Un livre de Wikilivres.

Notion de compression de données

[modifier | modifier le wikicode]

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 | modifier le wikicode]

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 | modifier le wikicode]
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 | modifier le wikicode]
  • 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.