Outils pour utilisateurs

Outils du site


les_exposes:compression

Ceci est une ancienne révision du document !


simon rozec

Comment fonctionne un logiciel de compression de données

Un logiciel de compression de données permet de rassembler et réduire la taille d'un ou plusieurs fichiers pour, par exemple, pouvoir les stocker sur des périphériques de stockage disposant de peu d'espace (clé USB, disquette, carte SD, etc…) ou encore, pour pouvoir les transmettre plus rapidement à travers un réseau (FTP, mail, etc…).

Le logiciel doit ensuite, pouvoir reconstituer les fichiers à l'identique (en conservant l'arborescence des fichiers, les droits d'accès etc…). On parle ici, de compression sans pertes.

Dans le cas d'images ou de sons, l'œil ou l'oreille ne pourra pas perçevoir tous les détails du fichier. Il est alors possible de le modifier de manière plus ou moins importante pour baisser sa qualité et donc réduire sa taille, sans que cela ne soit visible pour un humain. On parle alors de compression avec pertes.

Parmi les logiciels de compression de données les plus connus, on retrouve par exemple 7-zip, Winrar ou WinZip.

La compression de données consiste à appliquer un algorithme à une suite de bits, pour obtenir une nouvelle suite dans l'idéal, plus courte.

La compression sans pertes

Dans le cas d'une compression sans pertes, aucune information n'est modifiée dans le fichier, elles sont justes réécrites de manière plus condensée.

Il n'existe à ce jour, aucun algorithme de compression sans perte permettant de compresser efficacement n'importe quel fichier. En effet, certains algorithme peuvent être très efficaces avec certains fichiers tout en augmentant la taille de certains autres. C'est pour cela qu'il existe plusieurs algorithmes, adaptés à des types de données différents (images bitmap, texte, fichier audio etc…)

Voici quelques exemples d'algorithmes de compression sans pertes

RLE (run-length encoding)

le codage RLE consiste à remplacer une suite de bits identiques par le nombre de répétitions suivi de la suite répétée :

exemple:

nous avons la suite de bits suivante: 1001100110011010101010100000000010011001

nous pouvons définir A=1001 B=1010 C=0000 et réécrire la suite de cette façon: AAABBBCCAA ;

en appliquant l'algorithme précédent, on obtient : 3A3B2C2A

Nous avons donc bien réduit la taille de la suite initiale.


Sources

les_exposes/compression.1477489407.txt.gz · Dernière modification: 26/10/2016 15:43 par rozec