Algorithmes de compression
généralistes
Vous connaissez certainement de multiples formats de
compression dits " non destructifs ". La compression zip, bien
connue en informatique, en fait partie. La propriété
principale des algorithmes non destructifs est qu'une fois
décompressé, le fichier est rigoureusement le
même que le fichier avant compression (au
bit près). Il n'y a donc aucune perte
d'information. Comment peut-on réduire la place prise par un
fichier tout en gardant toute l'information contenue dans celui-ci
? Pour simplifier, disons que l'algorithme de compression (prenons
ici l'exemple du .zip) recherche dans le fichier des occurrences
multiples d'une suite d'octets.
Il se crée ainsi ce que l'on appelle un dictionnaire, index qui référence ces suite d'octets répétitives. Ensuite, l'algorithme remplacera celles-ci, dans le fichier compressé, par des codes qui prennent moins de place. Prenons un fichier texte, par exemple cet article que vous êtes en train de lire.
Dans celui-ci, vous retrouvez souvent les mots " compression ", " destructive ", " son ", " fichier ". L'algorithme de compression va alors se créer une table de correspondance pour dire " compression " = 1, " destructive " = 2, " son " = 3, " fichier " = 4. Ainsi, dans le texte, ces mots vont être remplacés par leur code, plus court, donc prenant moins de place dans le fichier compressé. Voilà donc, de manière simplifiée, le fonctionnement de la compression non destructive. Sans trop rentrer dans les détails, sachez que la compression (zip ou autre) se fait de manière intelligente et plus complexe que selon le principe énoncé précédemment.





Commentaires