La compression de programme est une méthode de réduction de la taille des logiciels, des données ou des images sur disque. C’est un grand avantage lors de l’envoi d’informations dans les deux sens sur Internet, en particulier lors de l’utilisation de connexions plus lentes, et permet d’économiser de l’espace de stockage lors de l’archivage de matériel. La compression du programme est obtenue par un processus assez simple de suppression de la redondance des données avec plusieurs progiciels bien connus. En ce sens, la redondance fait référence à l’utilisation répétitive de composants communs dans n’importe quel bloc de données. La compression du programme n’endommage en aucune façon les données d’origine ; une fois restauré ou décompressé, il conserve tout son contenu et sa mise en forme d’origine.
La taille des fichiers de données ou d’images peut poser problème lorsque vous essayez d’envoyer des informations via Internet ou lorsqu’un grand nombre de fichiers ou d’applications sont stockés. Les connexions Internet plus lentes fonctionnent lorsque des fichiers volumineux sont traités, et les utilisateurs qui paient des primes élevées pour l’utilisation de la bande passante apprécient certainement également les tailles de fichiers plus petites. La question est de savoir comment prendre un programme, un fichier ou une image et le réduire à une taille plus gérable sans détruire son contenu ? Les applications de compression de données ou de programme exécutent facilement ce tour de magie miraculeux en supprimant simplement une grande partie de la répétition qui constitue toute information électronique.
Par exemple, considérons le paragraphe précédent. Le mot « données » est répété deux fois et le mot « ou » quatre fois. Dans la première étape de la suppression de la redondance, une application de compression de programme utilise un algorithme basé sur un dictionnaire adaptatif LZ pour supprimer toutes ces informations répétées. Il crée ensuite un système référentiel qui remplace les mots superflus par un identifiant court et unique faisant référence au dictionnaire des applications. L’étape suivante de la compression consiste à isoler des chaînes d’informations communes plus courtes telles que certains groupes de lettres ou des lettres spécifiques suivies d’espaces.
Ce processus est répété jusqu’à ce que les données soient exemptes de tout élément répétitif. Toutes les données supprimées sont stockées une fois pour chaque entrée avec ses identifiants uniques dans un fichier de dictionnaire séparé. Lorsque le programme est appelé à décompresser le morceau, il inverse simplement le processus et remplace chaque identifiant par son mot ou une partie de celui-ci. Ce processus de compression des données est connu sous le nom de compression sans perte car aucune des données d’origine n’est omise. Le processus de compression des images, utilisant une approche quelque peu différente qui supprime une partie du matériel d’origine, est connu sous le nom de compression avec perte.
Les fichiers d’images sont généralement constitués de nombreuses graduations différentes de couleur et de valeur. Lorsqu’elles sont vues de manière conventionnelle, bon nombre de ces zones apparaissent sous forme de couleurs uniques. Ils sont cependant composés de nombreuses teintes subtiles qui sont toutes représentées numériquement sous forme de couleurs différentes. Lorsqu’une image est compressée, le programme remplacera tous les pixels avec une valeur de couleur similaire par une seule couleur. Ces informations se voient alors attribuer le même type de référence que celle utilisée dans le processus de compression du programme. De cette manière, la quantité de données qui composent l’image est considérablement réduite avec peu ou pas de changement dans la qualité visuelle.