enoncé des tp (codage de source)

8

Click here to load reader

Upload: abderrazak-chahi

Post on 09-Dec-2015

111 views

Category:

Documents


46 download

DESCRIPTION

Codage de Source

TRANSCRIPT

Page 1: Enoncé Des TP (Codage de Source)

Théorie de l'Information 1

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-1

Objectif du TP : Compression et décompression d’une séquence numérique, en utilisant les algorithmes de Huffman et Arithmétique. Comparaison de l’efficacité des deux algorithmes en matière de compression.

Considérant l’alphabet de la source Alpha={1, 2, 3} et la séquence à compresser : Seq=3313333323.

1. Utiliser les fonctions Matlab (correspondant à l’algorithme de compression de Huffman)  : o huffmandicto huffmanenco

Pour compresser la séquence des symboles numériques Seq.

2. Utiliser la fonction Matlab :o huffmandeco

Pour décompresser la séquence binaire fournie par le compresseur du Huffman.

Page 2: Enoncé Des TP (Codage de Source)

Théorie de l'Information 2

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-1

3. Comparer la taille initiale de la séquence (1 octet pour chaque symbole) avec la taille du code fourni par le compresseur de Huffman.

4. Utiliser la fonction Matlab (correspondant à l’algorithme Arithmétique)  : o arithenco

Pour compresser la séquence des symboles numériques Seq.

5. Utiliser la fonction Matlab :o arithdeco

Pour décompresser la séquence binaire fournie par le compresseur Arithmétique.

6. Comparer la taille initiale de la séquence (1 octet pour chaque symbole) avec la taille du code fourni par le compresseur Arithmétique.

7. Donner des constations sur l’efficacité de ces deux algorithmes en compression de la séquence.

Page 3: Enoncé Des TP (Codage de Source)

Théorie de l'Information 3

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-2.1

Objectif du TP : A partir d'un texte donné, vous devrez créer un script permettant de calculer la fréquence (d'apparition), la probabilité (d'apparition) et l'information propre correspondant aux symboles de l'alphabet de la source. Le script doit comprendre également un code matlab permettant le calcul de l’entropie de la source.

Considérant l’alphabet de la source Alpha={espace, a, b, c, d, e, f, g, h}. Soit le texte à

compresser par un algorithme de compression est "a bccd aeffhg ga".

Ecrire un code Matlab permettant de faire les tâches suivantes :

1. Calcul de la fréquence d'apparition des caractères

2. Calcul des probabilités d'apparition des caractères

3. Calcul de l'information propre associée à chaque caractère

4. Calcul de la probabilité totale

5. Calcul de l'entropie

Page 4: Enoncé Des TP (Codage de Source)

Théorie de l'Information 4

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-2.2

Considérant le même énoncé du TP-2.1. Ecrire un code Matlab permettant de réaliser

seulement les tâches suivantes :

1. Calcul d’un vecteur P dont les éléments sont les probabilités d'apparition des caractères

2. Calcul de la probabilité totale PT (Noter que, le calcul doit être effectué sans

exploitation des données du vecteur P).

3. Si la valeur de la probabilité totale est égale à 1, un calcul de l'entropie doit être

effectué. En outre, si la valeur de la probabilité totale est différente à 1, un message

d’erreur devra signaler que la valeur de la probabilité totale doit être égale à 1.

Page 5: Enoncé Des TP (Codage de Source)

Théorie de l'Information 5

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-3

Objectif du TP : compression et décompression d’un texte, en utilisant l’algorithme de

Huffman.

Considérant l’alphabet de la source Alpha={espace, a, …, h}. Ecrire un code Matlab

permettant de faire les tâches suivantes :

1. Message demandant la saisie du texte à coder en respectant les caractères de

l’alphabet considéré. La chaîne de caractères saisie par l’utilisateur dans la

console doit être affectée automatiquement à la variable text.

2. Calcul du vecteur correspondant aux probabilités d'apparition des caractères de

l’alphabet dans le texte.

3. Affichage d’un message d’erreur au cas où la probabilité totale est différente de 1.

Page 6: Enoncé Des TP (Codage de Source)

Théorie de l'Information 6

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-3

4. Calcul de l’information propre (quantité d’information).

5. Affichage des mots du code correspondant à chaque caractère de l'alphabet considéré

(la fonction qui sera utilisée est : huffmandict).

6. Encodage du texte par utilisation de la fonction huffmanenco.

7. Décodage de la séquence binaire reçue par le décodeur de Huffman en utilisant la

fonction huffmandeco.

8. Calcul de l'entropie de la source.

9. Calcul de la longueur moyenne du code avec affichage d’un message d’erreur si la

valeur d’entropie est plus grande que celle de la longueur moyenne du code.

10. Calcul de l'efficacité et la redondance du code

11. Calcul du taux et du gain de compression.

Page 7: Enoncé Des TP (Codage de Source)

Théorie de l'Information 7

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-3

12. Créer un script permettant de (ou modifier le script déjà créé pour) traiter n’importe quel

texte constitué des symboles constituant l’alphabet : Alph={Espace, a, …, z}. Noter

que:

● Les symboles sont des lettres de ‘a’ à ‘z’ minuscules plus le caractère ‘Espace’.

● Si un texte ne contient pas tous les symboles de l’alphabet, la fonction

huffmandict va tenir compte les symboles qui n’apparaissent pas dans le

message (ce qui implique une structure d’arbre de Huffman complexe et taille

du code importante) et cela va provoquer une fausse compression puisque

cette fonction ne doit recevoir que l’alphabet formé par les symboles

apparaissant dans le message.

Page 8: Enoncé Des TP (Codage de Source)

Théorie de l'Information 8

Codes correcteurs d’erreurs

Techniques du codage canal

CODAGE DE SOURCETP-3

13. Créer un script permettant de (ou modifier le script déjà créé pour) traiter n’importe

quel texte constitué de n’importe quels symboles. Noter que vous devrez créer une

fonction permettant de déterminer l’alphabet associé au texte afin de l’utiliser dans

la fonction huffmandict . À la fin du script, intégrer un code Matlab permettant de

signaler que le résultat fourni par la sortie du décodeur est similaire (ou différent) au

texte inséré à l’entrée du codeur.