Vous êtes sur la page 1sur 3

TP N° 1 : Codage sans perte d'information

- Partie Théorique –

Préparation théorique

1. huffmandict(): Cette fonction est utilisée pour créer un dictionnaire


de codes Huffman à partir d'un ensemble de symboles et de leurs
probabilités associées. Les codes Huffman sont utilisés pour la
compression de données.
Exemple :
symboles = {′𝐴′, ′𝐵′, ′𝐶′ , ′𝐷′} ;
Probabilities = [0.4, 0.3 0.2, 0.1]
dict = huffmandict(symbols, probabilities)

huffmaneco() : code une séquence de symboles en utilisant les codes de


Huffman décrits par un dictionnaire de code d’entrée .
exemple :
symbols = ’ABCBDA’ ;
encoded_data : huffmaneco(data, dict);

huffmandeco(): décoder un code binaire en utilsant le décodage de


huffman.
Exemple : décoder les données précédemment encodées decoded_data
= huffmandeco(encoded_data, dict);

arithenco(): code une séquence de symboles en utilisant le codage


arithmétique.
Exemple :
data = 'ABCBDA';
alphabet = ['A', 'B', 'C', 'D'];
probabilities = [0.4, 0.3, 0.2, 0.1];
encoded_data = arithenco(data, alphabet, probabilities);
arithdeco(): décode un code binaire en utilisant le décodage
arithmétique.
Exemple : decoded_data = arithdeco(encoded_data, alphabet,
probabilities, length(data));

fopen() : ouvre un fichier et retourne un identifiant de fichier.


Exemple : fileID = fopen('mon_fichier.txt', 'r');

fread() : lit des données binaires à partir d'un fichier ouvert.


Exemple : data = fread(fileID, 4, 'int32');

fwrite() : écrit des données binaires dans un fichier ouvert.


Exemple :
data = [10, 20, 30, 40];
fwrite(fileID, data, 'int32');

fclose() : ferme un fichier ouvert.


Exemple : fclose(fileID);

Ces commandes sont utilisées pour manipuler des fichiers dans


MATLAB. Par exemple, fopen() est utilisé pour ouvrir un fichier,
fwrite() est utilisé pour écrire des données dans un fichier, fread() est
utilisé pour lire des données à partir d'un fichier et fclose() est utilisé pour
fermer un fichier ouvert. Les exemples d'utilisation de ces commandes
sont disponibles dans la documentation MATLAB.

2.

calculer les probabilités d'occurrence des symboles de l'alphabet de source.


l'alphabet de la source est constitué de lettres de l'alphabet.
symbole Nombre de fois Probabilités
E 5 5/24
S 3 3/24
A 2 2/24
D 2 2/24
I 2 2/24
N 2 2/24
L 2 2/24
B 1 1/24
G 1 1/24
P 1 1/24
T 1 1/24
O 1 1/24
C 1 1/24

le codage binaire (bitstream) de la phrase par la méthode de Huffman :

Lettre Code binaire


L 0110
E 10
C 1111
O 1110
D 0011
A 0010
G 01111
I 0100
N 0101
S 000
B 01110
T 1101
P 1100
ESPACE ignorez

3.
Longueur moyenne :
Longueur moyenne = (Σ (Longueur du code * Probabilité d'occurrence))
pour toutes les lettres

Longueur moyenne= (2/24x4) + (5/24x2) + (1/24x4) + (1/24x4) + (


2/24x4) + (2/24x4) + (1/24x5) + (2/24x4) + (2/24x4) + ( 3/24x3) +
(1/24x5) + (1/24x4) + (1/24x4)
Longueur Moyenne= 4

Vous aimerez peut-être aussi