Codage Source 1
Codage Source 1
Codage Source 1
Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph
5 7 9
II - Dfinitions et rsultats fondamentaux lis au codage de source 11 III - Les algorithmes de codage statistiques IV - Algorithme de codage arithmtique Conclusion 13 17 21
Objectifs
L'objectif de ce module est de rappeler les rsultats fondamentaux du codage entropique ou compression reversible d'une source de donnes ( texte, image, ...). Ces rsultats prliminaires seront utiliss dans notre mthodologie de compression des images de tldtection. Plusieurs types de mthodes de codage entropique seront abordes notamment les mthodes d'ordre zro, non-adaptatives savoir : l'algorithme de codage de Shannon-Fano l'algorithme de codage de Huffman l'algorithme de codage arithmtique
Introduction
La notion de codage entropique ou compression rversible d'une source correspond un codage sans perte des symboles de la source avec pour objectif d'atteindre une limite thorique du gain de compression de Shannon caractrise par l'entropie de la source. Le but du codage entropique est de remplacer les messages mis par une source S utilisant un alphabet N-aire {s 1 , s 2 , . .. .. . .. , s N } par des messages crits dans l'alphabet binaire utilis par les systmes de stockage d'information sur ordinateur. Les codes tudis ici sont des codes de longueur variable, on suppose qu'un code associe chaque symbole si i=1, ..... N de la source un mot de code binaire m i , squence de l i bits. Un tel code doit avoir des proprits permettant de reconstruire sans ambigut les messages mis par la source, nous passerons en revue dans la section suivante quelques dfinitions et rsultats fondamentaux de la thorie des codes.
Dfinition : Notion d'entropie d'une source simple ou sans mmoire Soit une source S dfinie par son alphabet {s 1 , s 2 , . .. .. . .. , s N } de symboles et ses
caractristiques d'mission rgies par une loi de probabilit P:
H S = p s i log 2 p s i .
i=1
L'entropie dans ce cas a la proprit suivante: H(S) est maximale si tous les symboles {s 1 , s 2 , . .. .. . .. , s N } de la source S sont quiprobables. Dans ce cas , l'entropie est gale l'information associe chaque message pris individuellement.
i{1,2,............ N } , p s i =
1 H S =log 2 N . N
0 p1 H S = plog 2 p 1 p log 2 1 p= f p
la fonction f(p) est symtrique par rapport p=0.5 et est maximale pour p=0.5
P S s
qui est indpendante du temps si on considre une source stationnaire, s est une T ralisation du vecteur alatoire S= S n , S n1 , ..... S n K 1 .On dsigne par entropie d'ordre k ou entropie conjointe des vecteurs alatoires l'expression :
H K S =
II -
II
Un code est dit rgulier si tous les mots de code m i sont distincts. Tous les codes doivent au moins tre rguliers pour permettre un dcodage univoque.
si correspondants.
Pour les codes de longueur variable, cette proprit est satisfaite pour les codes dits sans prfixes, obtenus en vitant qu'un mot du code ne soit identique au dbut d'un autre.
Attention
L'ingalit de Kraft constitue un rsultat fondamental en thorie des codes. Elle fournit une condition ncessaire et suffisante d'existence de codes dchiffrables et instantans, exprime en fonction de la longueur des mots de code.
Fondamental : Ingalit de Kraft Soient l 1 , l 2 , ..... , l N des longueurs de mots candidates pour coder une source Naire dans un alphabet binaire. Alors l'ingalit de Kraft :
11
1 1 li i=1 2
est une condition ncessaire et suffisante d'existence de codes dchiffrables et instantans respectant ces longueurs de mots.
n des mots
n = l i p si p s i log 2 p si .
Borne suprieure de la limite suprieure ( code de Shannon) Il est galement possible de trouver un code dchiffrable tel que :
H S nH S 1 .
12
III -
III
Le principe des algorithmes de codage statistique est d'utiliser les probabilits d'occurence de chaque symbole dans une squence de symboles manant de la source. Dans le cadre de ce cours nous examinerons dans cette catgorie deux algorithmes.
"Le codage est indispensable" Pour simplifier nous n'allons pas prendre en compte le symbole espace (blanc). cette phase est une source de 24 symboles Tous ces symboles manent de l'alphabet.
A={E , S , A , D , I , N , L , B ,G , P , T ,O , C }
Cet Alphabet a N=13 symboles ETAPE 1
13
On applique successivement les tapes de l'algorithme selon le principe de l'algorithme prcdemment indiqu.
14
15
IV -
IV
Contrairement aux deux algorithmes prcdents, le code est associ la squence et non chaque symbole pris individuellement.
i=1
p si et bk=ac+largeur x p s i
3) On choisit le sous-intervalle correspondant au prochain sk coder dans la squence et on met jour les valeurs ac et bc de la manire suivante : ac=ac+largeur x ak et bc=ac+largeur x bk 4) Avec le nouvel intervalle [ac,bc[ on recommence le processus de l'tape 2. 5) Les tapes 2,3 et 4 sont rpts jusqu' puisement des symboles de la squence et obtention du dernier intervalle [ac,bc[ La reprsentation binaire de tout rel xc de l'intervalle [ac,bc[ est un code de la squence.
17
x a a k c c bk largeur
On rappelle que xc est le rel codant la squence. 4) On obtient le symbole sk 5) On met jour le sous-intervalle de codage : ac=ac+largeur x ak et bc=ac+largeur x bk 6) On rpte les 2,3,4 et 5 jusqu' obtenir le dcodage de tous les symboles de la squence.
que ce nombre soit compris dans la partition initiale. Etape 4 : k=2, Il s'agit du sous-intervalle [0.3,0.55[ qui correspond au symbole b. Etape 5 :
18
On met jour le sous-intervalle de codage ac=ac+largeur x ak et bc=ac+largeur x bk ac=0 + 1x0.3=0.3 bc=0+1 x 0.55=0.55 On rpte l'tape 2 : largeur = 0.55-0.3=0.25 Etape 3 : (0.51508125-0.3)/0.25 = 0,860325 Etape 4 : k=4, il s'agit du sous-intervalle [0.75,0.90[ qui correspond au symbole d. On revient l'tape 5 et ainsi de suite ...
19
Conclusion
Dans le cadre de ce module, nous avons rappel quelques rsultats lis au codage de source et avons prsent quelques algorithmes de codage entropique d'une source notamment le codage de Shannon-Fano, le codage de Huffman et le codage arithmtique. Ces algorithmes ont la particularit d'avoir une longueur moyenne de code qui approche la limite de Shannon qui est l'entropie de la source. Les algorithmes tudis dans ce module implmentent les mthodes d'ordre zro, non adaptatives. Le lecteur intress par la thorie des codes pourrait avantageusement tudier les mthodes d'ordre suprieur, les mthodes adaptatives et les algorithmes base de dictionnaire tel que l'algorithme de Lempel,Ziv et Welsch.
21