Chapitre 8 La compression des données
Il est possible de compresser un fichier pour en réduire la taille.
Pourquoi réduire la taille d’un fichier? Deux raisons principales :
faciliter son transfert sur un réseau. Les réseaux ont des capacités de transfert limitées (on exprimera souvent cette capacité en Mégabits par seconde). Plus le fichier aura une taille réduite, plus le temps de transfert sera court. Par ailleurs, de nombreux organismes imposent une limitation dans la taille des fichiers qui peuvent être attachés à un courriel sous forme de pièce jointe. Dans ce cas également, il peut être intéressant de compresser le fichier,
le stocker sur un support dont la capacité de stockage est limitée. Ainsi, on peut souhaiter par exemple réduire un fichier dont la taille excède la capacité d'une clé USB. On peut vouloir économiser de la place disponible sur son disque dur. Le système d’exploitation Windows propose par exemple de compresser les fichiers qui n’ont pas été utilisés depuis longtemps.
Attention :
La compression à des fins de conservation à long terme présente un certain nombre de risques qu'il conviendra d'analyser.
8.1 - La procédure de compression
Il existe de nombreuses techniques de compression, plus ou moins efficaces et plus ou moins couteuses à mettre en œuvre. Le logiciel de compression va réécrite l'information de façon plus concise, il pourra par exemple remplacer les données répétitives du fichier par un code.
Exemple :
Voici un cas tout simple :
Une image comportant plusieurs rangées de pixels de la même couleur rouge (250 pixels, par exemple).
Au lieu d’enregistrer chacun de ces pixels sous la forme d’un numéro pour représenter cette couleur (le numéro 110, par exemple), le logiciel de compression émet un code qui veut dire : mettre ici 250 fois la couleur n° 110.
Un code est beaucoup plus compact que 250 codes.
On peut ainsi arriver à réduire de moitié la taille des fichiers, parfois plus.
Plus généralement, les techniques de compression font appel à des méthodes mathématiques qui sortent du cadre de ce cours.
8.2 - Compression avec pertes ou sans perte
La compression sans perte permet de reconstituer le fichier d’origine avec une exactitude absolue. C’est en général ce que l’on emploie pour la plupart de fichiers.
La compression avec pertes est généralement utilisée pour des images, des fichiers sons ou vidéos. On peut compresser un document de manière à ne perdre quelques détails, souvent indécelables par un humain et ainsi réduire parfois de façon considérable la taille du fichier. Bien sûr, l’intégrité du document original n’est plus totalement respectée.
On pourra donc archiver des données[1] en respectant totalement l’intégrité d’un document et utiliser une compression avec perte pour sa diffusion, dès lors que le document diffusé répond aux besoins des utilisateurs.
Exemple :
Les images au format PNG font l’objet d’une compression sans perte, par contre, les images au format JPEG, font le plus souvent, l’objet d’une compression avec perte.
Il existe de nombreux formats de fichiers de compression. On les reconnaîtra en général avec le suffixe du nom de fichier : 7z, zip, ace, rar,…
8.3 - La décompression
La décompression se fait généralement très facilement.
Exemple :
Avec le logiciel Win Zip, par exemple, il suffit d’ouvrir le fichier en cliquant dessus, puis d’extraire le fichier, avec la fonction « Extract ». Il est alors possible de choisir l'emplacement du fichier à extraire, c'est-à-dire l'endroit où l'on souhaite le placer.
Certains logiciels, tel WinRAR, permettent de décompresser des fichiers au format rar mais aussi zip, ace