Compression -- Projet Facultatif 2018
Compresseur "à la gzip"

Langages recommandés : Java ou Python. Demandez-moi avant si vous souhaitez utiliser un autre langage de programmation.

Objectifs : le but du projet est d'écrire un compresseur / décompresseur inspiré du mode de fonctionnement de gzip et avec des fonctionalités pour être efficace sur des textes écrits en français.

Date et mode de rendu : Par mail à cyril.nicaud@u-pem.fr, avec comme titre [M1] Projet Compression. Le mail doit contenir un seul attachement compressé au format .zip ou .gz, qui correspond à un dossier portant votre nom et contenant vos sources ainsi qu'un fichier pdf expliquant comment utiliser le programme. Le document pdf doit également expliciter en au plus 2 page le travail réalisé. La date butoire est le ?? février 2018 à minuit.

Notation : j'ajoute entre 0 et 3 points à la note de l'examen, selon la qualité du projet.


Format utilisé :

Bloc standard 01

Remarque : en TP je vous montrerai l'algorithme utilisé dans gzip pour trouver le plus long préfixe du buffer présent dans la fenêtre. Vous n'êtes pas obligés d'utiliser cette méthode, mais c'est conseillé.

Blocs spécifiques 10 et 11 : Là vous êtes libres. Vous n'êtes pas obligés d'utiliser les deux codes 10 et 11. Vous pouvez implanter le(s) méthode(s) de votre choix pour compresser plus efficacement des textes en français.


gzip : gzip implémente le format DEFLATE, qui ressemble à celui du projet, mais en un peu plus compliqué/technique. Si vous voulez voir à quoi cela ressemble, c'est ICI. Notamment, les arbres de Huffman sont encodés différemment.