[PDF] [PDF] Cours/TD 5 Codage Shannon Codage arithmétique : Elias

5 1 De l'algorithme de Fano et Shannon au codage Exemple Soit une source discr`ete sans mémoire codée avec des mots code avec de longueurs li li code



Previous PDF Next PDF





[PDF] Code de Huffman

IFT-4003/7023 Compression de données Mohamed Haj Taieb, Département de génie électrique et de génie informatique Exemple: codage de Shannon-Fano 



[PDF] Cours/TD 5 Codage Shannon Codage arithmétique : Elias

5 1 De l'algorithme de Fano et Shannon au codage Exemple Soit une source discr`ete sans mémoire codée avec des mots code avec de longueurs li li code



[PDF] Principes généraux de codage entropique dune - FOAD - MOOC

l'algorithme de codage de Shannon-Fano l'algorithme de codage de Huffman Exemple : Calcul de l'entropie d'une source binaire Considérons le cas d'une 



[PDF] Codage statistique

fini de symboles (par exemple : lettres, chiffres, ) visuels où les messages sont des images numérisées où, par exemple, Le codage de Fano- Shannon :



[PDF] UV Théorie de lInformation Cours n° 5 : Compression de l - ASI

Ex 1 : Code de Shannon−Fano i e codage de Shannon−Fano, codage de Huffman, codage Exemples : Codage par plage et Codage de Lempel−Ziv 



[PDF] Série dexercices sur la compression de données 1 Algorithme de

a) En utilisant l'algorithme de Shannon-Fano, représentez la séquence suivante d) Si vous vous restreignez `a utiliser un code qui ne tient pas compte des Par exemple, si les 2 lettres les moins fréquentes sont A et F, la question serait 



[PDF] Théorie de linformation - Chap 1: Codage Source - ESEN

Limitations de Fano-Shannon et Huffman et Supériorité de LZW 8 Code Exemple: Source binaire Soit le codage suivant pour le même exemple précédent



[PDF] Majeure dinformatique Introduction la théorie de linformation

Code de Huffman : exemple f 0 05 e Certains nombres ont plusieurs développements, par exemple 0 25 → Code de Shannon-Fano-Elias : autre exemple

[PDF] codage de huffman exercice corrigé

[PDF] codage arithmétique pdf

[PDF] codage arithmétique algorithme

[PDF] représentation des nombres signés exercices corrigés

[PDF] exercice de systeme de numeration

[PDF] système binaire informatique

[PDF] calcul nombre binaire

[PDF] cours sur le calcul binaire pdf

[PDF] codage et représentation de l'information exercices corrigés

[PDF] le codage informatique

[PDF] exercice corrigé codage source

[PDF] combien d'information sont représentées par 15 bits

[PDF] virgule fixe et virgule flottant pdf

[PDF] virgule fixe exercices corrigés

[PDF] exercice corrigé codage virgule fixe

Cours/TD 5 Codage Shannon.

Codage arithmetique : Elias

5.1 De l'algorithme de Fano et Shannon au codage

arithmethique Si N1X j=02 lj<1 l'inegalite de Kraft-McMillan est veriee, alors il existe un code uniquement decodable et m^eme prexe, qui admette l

1;l2;:::;lN1comme distribution de longueurs. Un algorithme simple qui donne un code

prexec1;:::;cN1a partir d'une distribution de longueursl1;l2;:::;lN1veriant l'inegalite de Kraft-McMillan est :a chaque mot de codeci(a trouver) on associe le nombre= 0;c i2 [0;1[dont les decimales de l'ecriture en base 2 est formee des bits deci. On noteIil'intervalle I i= [c i;c i+ 2li[.

Exemple.ci= 010donnec

i= 0;010 = 14 . etIi= [0;010;0;011[= [14 ;38 [est l'ensemble des nombres de[0;1[dont les decimales en base 2 commencent parci. Le mot codecidetermine uniquement l'intervalleIi: tronquer le developpement binaire de la limite gauche de l'intervalle (de longueurli) a log21l ibits pour retrouverci. La condition de code prexe deviennent : lesIisont des intervalles disjoints. Donc l'inegalite de Kraft- McMillan dit que la somme des longueurs desIiest strictement plus petite que 1. S'ils sont disjoints, on peut donc les mettre bout-a-bout en restant dans le segment [0;1[. Ainsi un algorithme de construction du code instantane sera : On met bout-a-bout les intervallesIi, classes par longueurs decroissantes (licroissantes) dans le segment [0;1[ en partant de la gauche.

I1 I2 I3 ....

||{I|||{I||{I||||{ 0.0 0.10 0.110 0.111

Au debutc

0= 0:0:::0. En general a chaque etape on rajoute aci1un 1 et on obtientc

il' extremite droite deIi. On peut completer avec des zeros si necessaire pour obtenir une longueurli+1> li. 1 Exemple.Soit une source discrete sans memoire codee avec des mots code avec de longueurs l il icode1 0 2 10 3 110

5 11100

5 11101

5 11110

6 111110

6 111111

Noter qu'avec cet algorithme on detecte automatiquement si si les li ne verient pas l'inegalite de Kraft-McMillan : on "depasse" alors l'extremite droite du segment[0;1[, et on ne peut plus continuer comme dans : l icode1 0 2 10 3 110

4 1110

5 11110

5 11111

6Erreur

1=2 + 1=4 + 1=8 + 1=16 + 1=32 + 1=32 + 1=64>1

Soit une source discrete et sans memoire produisant (independament) des symboles (lettres/mots) d'un alphabeta0;a1;;aN1selon la distribution de probabilitep= (p0;p1;:::;pN1) . Supposons que les symboles de l'alphabet sont deja ordonnes par probabilite decroissante. p

0p1 pN1.

Idee naturelle (Shannon et Fano) etait d'associer aux symboles de notre alpha- bet des mots code binaires dont la longueur est egale au contenu d'information des symboles a coder. Pour un symbolajavec une probabilites d'apparitionpjqui n'est pas une puissance binaire ce contenu d'information estI(aj) =log2pjet Shannon demande que la longueur de bits necessaires soitlj=dI(aj)e=dlog2pje. L'interpretation geometrique de l'algorithme de Fano : Par la suite d'une dichotomie binaire reitteree sur [0, 1 [l'algorithme de Fano trouvait une partition d'intervalles. La dichotomie d'un interval s'arr^etait quand l'intervalle [Aj;Aj+1[ avait la longueur egale a la probabilite 2 ljde ( la production de ) du symbolaj(i.e. un seul 2 2/8 [1/20 11 100
1

4/8 6/8

110
111

7/82/4 3/41/4

5/83/81/8)Figure5.1 { Arbre partiel de dichotomie binaire reitere de [0;1) pourp=12

;14 ;18 ;18 element par intervalle). Le mot code etait le developpement binaire ni de la borne inferieure A jde cet intervalle. La precision de ce mot etait exactementlj=log2pj{ voir gure 5.1. L'algorithme simplie de Fano peut ^etre lui aussi generalise mais le code produit n'est pas unique, ni optimal.

1. ordonner les symboles de l'alphabet sur une colonne par probabilite decroissante.

2. diviser l'ensemble des symboles en deux sous-ensembles de probabilites cumulees presque

egales.

3. coder avec "0" (resp. "1") les elements du premier (resp. deuxieme) sous-ensemble

4. continuer de maniere recursive jusqu'au moment ou tous les sous-ensembles ne com-

portent plus qu'un element D'une maniere plus generale l'algorithme de Shannon associe aussi d'une maniere biuni- voque : { aux symboles de l'alphabet une partition d'intervalles dans [0;1[ { a un symbol un mot code qui est un nombre reel dans l'intervalle correspondant.

5.2 Algorithme de Shannon

L'interpretation geometrique de l'algorithme de Shannon est de trouver une partition d'intervalles avec la propriete que la longueur de chaque intervalle [Aj;Aj+1[ est egale a la probabilite de ( la production de ) du symbolaj:pj= A j+1Aj, 0jN1. A 0= 0 A 1=p0 A

2=p0+p1

3 A

3=p0+p1+p2...

A

N=p0+p1++pN1= 1

Un mot codecjest associe a l'intervalle [Aj;Aj+1[[0;1[ de la maniere suivante : c(Aj;Aj+1) =12:::lj()A= 0:12:::lj( debut du developpement binaire du nombre reelAj), avec l j=dlog2(pj)e. On prend autant de bits de ce developpement que le "contenu d'information de l'intervalle" l jle dicte. Maintenant pour assurer la correspondance biunivoque il faut prouver que le mot code associe a un intervalle [Aj;Aj+1[ est unique. Plus on peut montrer que : Lemme1.Le code Shannon est prexe, i.e. le mot codecj=c(Aj;Aj+1)ne peut pas^etre un prexe du motcj+1=c(Aj+1;Aj+2), pour0jN2. Preuve.Supposons que le codage binaire deAja la longueurlj=dlog2pje.

Reecrivons les conditions de Shannon :

l j1Par constructionAkAj+1=Aj+pjAj+12 lj. DoncAkAj12 lj, i.e. leurs developpements binaires sont dierents sur les premiersljpositions. Par consequence le mot codecjn'est pas un prexe du mot codeck,j < k. Remarque.On note que on peut dire aussi que le codage Shannon-Fano associe au symbol a jle bits du plus petit (i.e. celui avec moins de bits) nombre binaire rationnel de l'interval [Aj;Aj+1[.

Algorithme de Shannon1. ordonner les symboles de l'alphabet sur une colonne par probabilite decroissante.

2. calculerA0= 0 etAj+1=Aj+pj

3. pour chaque 0jN1 ecrire le developpement dyadiqueA= 2Ajjusqu'au

l j=dlog2pje"decalage de la virgule " { siA1, alors1= 1 etA= 2A1 { siA1, alors1= 0 etA= 2A

4. acherAj= 0:1234:::lj

Exemple.Trouver le developpement binairea= 0:1234:::dea=111 4

2a=211

<1 =)1= 0, 4a=411 <1 =)2= 0

8a=811

<1 =)3= 0, 16a=1611 = 1 +511 =)4= 1 a (4)=511 = 0:567:::, 2a(4)=1011 <1 =)5= 0

4a=2011

= 1 +911 =)6= 1 a (6)=911 = 0:789:::, 2a(6)=1811 = 1 +711 =)7= 1 a (7)=711 = 0:8910:::, 2a(7)=1411 = 1 +311 =)8= 1 a (8)=311 = 0:91011:::, 2a(8)=611 <1 =)9= 0

4a(8)=1211

= 1 +111 =)10= 1 a (10)=111 = 0:111213=a. Le developpement binaire ( 10-periodique ) dea=111 = 0:0001011101

Exercice.Trouver les mots codec(A;B)suivants :

1.c111

;15 2.c38quotesdbs_dbs4.pdfusesText_8