1

Voilà mon dernier chantier : un tutorial sur la méthode de compression RLE (Run Lenght Encoding). Cette méthode présente tout d'abord l'avantage d'être simple d'application. Elle permet ensuite de réduire la taille des programmes puisque c'est une compression grin.
Ce tutorial se forme en 3 partie majeures : la première présente les bases de la méthode de compresion. La seconde vous explique comment obtenir une image compressé avec RLE grâce au logiciel Istudio. Enfin la troisième et dernière partie sera elle plus pratique puisqu'elle montre 2 fonctions décompressant une image l'une vers une structure BITMAP et l'autre vers un tableau de char directement utilisable par ExtGraph.
Ce tutorial est écrit en anglais. J'attend vos impressions et reports de bug ou erreurs smile
Le tutorial est disponible dans 2 formats sur mon site:
[*]en Off-Line dans un zip contenant les sources compilables
[*]en On-Line
ou ici:
[*]en Off-Line dans un zip contenant les sources compilables
[*]en On-Line
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

2

Sympa, je pense que tu pourrais ajouter un exemple pour compresser soi-même des images en RLE (le seul point auquel il faut faire attention est quand il y a plus de 256 fois le même octet à la suite). Accessoirement, la compression RLE est dans la majorité des cas très mauvaise, mais tu peux essayer d'améliorer un (tout petit) peu les performances en repérant l'octet le moins représenté dans le fichier, afin de l'utiliser comme caractère spécial, ça minimise les pertes.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

3

Oui je comprend Vertyos : j'ai précisé pour le cas où il y a 256 fois la même occurence. En ce qui concerne le caractère spécial qui est 0x91 avec Istudio je suis d'accord qu'il est préférable , si je crée une partie permettant de compresser seul une donnée, de rechercher le caractère le plus adapté. J'ai bien pensé à écrire une partie sur ça mais j'hésitais. Sinon est ce que tu as lu mon tuto en entier? En effet je ne l'ai pas fait corrigé donc il y a peut être des erreurs de code et surtout d'anglais sad
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

4

Heu non j'ai pas lu intégralement, juste en diagonale, j'ai un mois de yAronet à rattraper là grin
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5

grin et en diagonale les fautes y'en a ??
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

6

Je sais pas ^^
Sinon, t'as pensé à faire un tuto sur d'autres compressions ? (Huffman, LZ77, LZW...)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

7

Ben j'ai déja le tuto sur vertel3 et puis ces compression sont plus compliquées car certaine certaine travaille au bit par bit !
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

8

:::::: Join • Thor a rejoint le chan #3l33t
< Thor > hi
< Thor > by :::::: Quit • Thor quitte IRC (Quit: Leaving)

neutral
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

9

Oui je me suis fait un Unreal 2004 gni
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

10

Je souhaite vous demander : est ce que la deuxième partie expliquant comment obtenir une image compressée avec Istudio est bien compréhensible?
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

11

Bah à vrai dire, je comprend pas l'intégralité du tuto grin
avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.

12

aie c'est à dire mur
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

13

Tsss... C'est pas bien compliqué, il explique comment marche la compression RLE : au lieu d'avoir une grosse chaine {a,a,a,a,a,a,a,a,a,a,b,b,c,c,c,c,c}, tu la code {#,a,10,b,b,#,c,5}. Ça t'oblige à sacrifier un octet qui sera le caractere spécial (noté # dans cet exemple), quand tu tombe dessus ça signifie qu'il est suivi par le caractère à répeter puis le nombre de fois qu'il doit l'être. En contrepartie, tu ne peux plus coder un {#} tout seul, t'es obligé de faire {#,#,1}, mais pour tous les autres octets répetés, t'y gagne.

En théorie ça marche, en pratique il n'y a que sur certains types d'images où ça peut éventuellement être interessant.
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

14

C pas l'algo RLE que je comprend pas, c le tuto, il est en anglaisgrin

avatar
Membre fondateur de la Ligue Anti-MacIntoc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Un expert est quelqu'un qui en sait de plus en plus sur de moins en moins
de choses, jusqu'à ce qu'il connaisse absolument tout à propos de rien.

15

moi j'avais trouvé un autre format pour le rle :
tu as un caractere d'echapement qui indique le debut d'une sequence non compresée
apres le char tu indique la longueure de la sequence, puis tu fous la sequence
pour les seuqences compresées tu as juste la longueur suivie du char
pour le char d'echapemet, j'utilise 0, comme ca ca ne peut pas être confondu avec la longueur d'une sequence compresée
{a,a,a,a,a,a,a,a,a,a,b,b,c,c,c,c,c} ca donnerait {10,a,2,b,5,c)
pour {a,a,a,a,b,c,d,e,e,e,e} ca ferait {4,a,0,3,b,c,d,4,e}
dans certains cas ce format est meilleur, dans d'autres l'autre est mieux smile
avatar

16

Pas con smile
Y'a pas longtemps j'ai essayé d'implémenter rle / lz77 / huffman pour comparer, mais franchement trouver des cas ou rle marche faut s'accrocher grin
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

17

un truc tres géometrique grin
un truc vide triso

nan mais par contre pour compresser une map d'un ptit jeu par exemple, ca peut etre pas mal, mais c'est des trucs assez spéciaux
avatar

18

Oui du noir et blanc par exmple en line-art!
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

19

Au fait vince si tu veux ce tuto pour Ti-fr c'est OK
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

20

C'est pas mal comme idée de tuto n'empeche. Si tu ne fais pas LZ77 et Huffman, ça te pose pas de pb que je m'en occupe ? (je suis pas sûr *du tout* d'avoir le temps, mais on sait jamais)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

21

gni tu veux me piquez toute mes idées de tutos Vertyos? En tout cas ça fait plaisir que ça interresse au moins une personne!
Moi aussi jte remercie pour ton tuto sur les pointeurs smile
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

22

Thor :
gni tu veux me piquez toute mes idées de tutos Vertyos?

"toutes" trifus
Je te demande si ça pose un pb si je fais un tuto sur la compression, si c'est pour entendre dire que j'ai piqué une idée, non c'est pas la peine, fais-les...
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

23

Oui le tuto sur Vertel3 t'attirait également si je me rapelle bien! Nan Vertyos le prend pas mal je rigole. En ce qui concerne les tutos sur d'autres méthodes de compression va y? Et je veux bien être dans les premiers lecteurs et testeurs smile
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici

24

à propos, je devrais mettre en ligne ce soir, j'ai pas pu hier
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

25

Thor
: Oui le tuto sur Vertel3 t'attirait également si je me rapelle bien!

Rappel : c'est ma lib, un peu normal que je fasse des docs dessus nan ? triroll
Pour le truc de la compression, je verrais... cf 2eme phrase du post #21...
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

26

Rappel : c'est ma lib, un peu normal que je fasse des docs dessus nan ?
Si je suis tout à fait d'accord grin
Cyril Mottier [Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
Tuto sur l'utilisation de Vertel3 : Cliquez ici