COMPRESSION / DECOMPRESSION LZW

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 30 oct. 2004 à 01:19
hebus16 Messages postés 80 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 2 octobre 2009 - 28 déc. 2005 à 23:02
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/27167-compression-decompression-lzw

hebus16 Messages postés 80 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 2 octobre 2009 1
28 déc. 2005 à 23:02
Lzw possede un leger probleme sur l'algorithme de base concernant les chaines repetées.En effet lors de la decompression, ton code ne check pas la non reconnaissance de code .. du coup tu as des pertes sur ta decompression. il faut juste que tu rajoutes un code pour gerer ce cas là :D
il existe de trés bonne explication sur le net sur ce petit problème
C'est sur ce site que j'ai trouvé l'explication logique à ce defaut www.developpez.com

Le troll
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
3 nov. 2004 à 14:37
Arh effectivement j'ai repéré cette erreur...
Je n'ai pas énormément de tps pourme consacrer à cette erreur, si qqn pouvait m'en indiquer la provenance, je me ferais une joie de la corriger :)

Vlad
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
3 nov. 2004 à 11:17
ah !!! je ne peux pas crypter un mot allemand ???
ciberrique Messages postés 589 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 18 juillet 2010 1
3 nov. 2004 à 11:12
Ton logiciel fonctionne plutot bien, mais comme yoman64 je constate une erreur lors de la compression decompression de suite de carractere, je veux dire par la :

aaaaaaasssddddfffeeee
ou encore du genre llllllldkbieodcniessssssss

Mais autrement lorsqu'on reste dans des mots correcte (max 2 suite : ss ou nn ou mm) sa fonctionne trés bien ....
Et hop un petit 8/10.
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
3 nov. 2004 à 03:06
VB n'est pas portable :) certes, mais l'idée l'est :)

En ce qui concerne Huffman, je ne pense pas le faire, et je m'expliques :

1. les taux de compression sont relativement faibles, mais ca n'a jamais arrété personne

2. L'implémentation demande de gérer les arbres, et de travailler en binaire 100% du temps ... ici un simple passage pour compresser ou décompresser

3. Je suis très fénéant :)

Mais je suis près a voir de telles implémentations :)
Vlad
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
1 nov. 2004 à 18:14
domage que le VB ne soit pasportable...

Sinon, tu pourais pe faire HUFFMAN ensuite et mettre une mise a jour ?
cs_yoman64 Messages postés 592 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 4 décembre 2008
31 oct. 2004 à 22:17
Je ne sais pas d'ou vien le problème puisque le programme ne me fais aucune erreur et que je ne connais pas bien cet algorythme ( j'ai plus etudier l'algo de HuffMan).

Mais quand je compresse : aaaassssssssssssfffffffffffffffff
Mais après , il ne décompresse pas correctement ...
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
31 oct. 2004 à 16:27
Yoman> étonnant, je n'ai jamais eu ce problème ... j'ai copié un extrait de 10000 lettres de Robinson Crusoe (english version) et 5000 lettres des Three Musqueteers décompressés sans problèmes (MD5 a l'appui)

Si tu pouvais me dire d'ou vient le problème je suis près à la régler

Merci d'avance
Vlad
cs_yoman64 Messages postés 592 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 4 décembre 2008
31 oct. 2004 à 01:14
Sa marche pas , il ne décompresse pas correcetement:
J'ai essayer de compresser:
aaaassssssssssssfffffffffffffffff

et sa ressort :aaaasaassaasafssaaaassfs


J'ai essayer plusieurs message et dans la majorité des cas ,il y a une perte de données.

YoMan64
PhPKoDe.Com
vlad2i Messages postés 285 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 13 février 2005
30 oct. 2004 à 01:27
J'avoues que c'est une source qui date un peu :)
J'ai essayé de faire l'effort de commenter le plus possible

Pour l'anecdote je voulais un TextToTypeByteToByte et un Byte8ToByte9 hehe enfin aucune importance je penses que tu as compris comment ca fonctionnais, sinon je reste là

Désolé ca date un peu :)
Vlad
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
30 oct. 2004 à 01:22
Fais quand même gaffe à la lisibilité du code. Moi, quand je vois çà :

TTTBTB sIn8, sIn8s
B8to9 sIn8, sIn9

... je ne trouve pas le codage très intuitif. Bon, je connais VB, et je sais retrouver qui fait quoi, mais je maintiens que ce n'est pas très lisible.
Heureusement que c'est bien commenté ! ;o)
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
30 oct. 2004 à 01:19
Ah tiens, j'connaissais pas la compression LZW ... On en apprend vraiment tous les jours !
Merci pour l'info
Rejoignez-nous