Qu'est-ce qu'un algorithme de compression?
Les fichiers informatiques peuvent prendre beaucoup de place sur un disque dur et beaucoup de bande passante à transmettre. Pour économiser de l'espace, en particulier avec des fichiers qui ne sont pas souvent utilisés, et de la bande passante pour les fichiers en cours de transmission, des méthodes de stockage ont été développées pour enregistrer les données dans un package plus petit en les compressant d'une manière ou d'une autre. Dans chaque cas, un algorithme de compression - une méthode permettant de réduire la taille des données - est utilisé. Il existe plusieurs catégories et types d'algorithmes de compression populaires, dont chacun fonctionne de manière différente et dont certains ont des résultats très différents. En utilisant divers algorithmes de compression, il est généralement possible de réduire un fichier texte à moins de la moitié de sa taille originale. pour les fichiers graphiques, les résultats varient considérablement. Le fichier résultant de la compression peut être un format différent ou un fichier archive, qui est souvent utilisé pour le stockage, la transmission et la distribution.
Un moyen de classer les algorithmes de compression consiste à utiliser des méthodes statistiques ou statistiques pour compresser les données. La méthode du dictionnaire se concentre sur les phrases répétables et est utilisée dans les images GIF et dans les archives JAR et ZIP. La méthode statistique repose sur la fréquence d'utilisation pour effectuer une conversion, qui s'effectue en deux passes. Un exemple est Modified Huffman (mh), utilisé sur certains télécopieurs.
Un deuxième moyen de catégoriser les algorithmes de compression, et celui que les programmeurs non professionnels rencontrent le plus souvent, consiste à déterminer s’ils sont sans perte ou sans perte. Un algorithme de compression de données sans perte est celui qui compresse les données de telle sorte que, lorsqu'elles sont décompressées, elles soient exactement identiques au fichier d'origine. Lzw (algorithme de Lempel-Ziv-Welch) est un exemple d'algorithme de compression de données sans perte. Développé en 1977 par Lempel et Ziv et amélioré en 1984 par Welch, il est utilisé dans des fichiers tels que GIF, TIF et PDF, ainsi que dans certains modems.
Un algorithme de compression de données avec perte a la capacité de réduire les données à une taille inférieure à celle de la compression sans perte, mais au prix d'une partie des données d'origine. En d'autres termes, la restauration qui suit une compression de données avec perte ne fournit pas une copie identique du fichier d'origine. L'algorithme de compression est toutefois conçu pour limiter les pertes afin qu'elles ne soient pas apparentes à l'oreille ou à l'œil. La compression avec perte est utilisée dans les formats de fichier tels que AAC, JPEG, MPEG et MP3.