3
Nae Adrian Grupa 8216 Codarea Shannon – Fano Algoritmii statici de compresie presupun traversarea în întregime a fişierului ce urmează a fi compresat , înaintea realizării compresiei. Din această clasă fac e parte algoritmul Shannon - Fano. În 1949, Claude Shannon şi Robert Fano au venit simultan cu ideea unei metode sistematice de a atribui cuvinte de cod bazate pe probabilitatea simbolurilor. Acesta este prima metodă bine-cunoscută de compresie a semnalelor digitale, cunoscută sub numele de codarea Shannon-Fano. Algoritmul atribuie cuvinte de cod binare simbolurilor dintr-un fişier de date. Avantajul acestei tehnici de codare este simplitatea. Codul este construit din mesajul sursă ce urmează a fi transmis v(x) şi probabilitaţiile de apariţie a caracterelor p(v(x)), ordonate în ordinea descrescătoare a apariţiei lor. Algoritmul Shannon – Fano este împărţit în trei faze: parcurgerea mesajului ce urmează a fi transmis î n vederea stabilirii frecvenţelor de apariţie a fiecarui simbol; codificarea simbolurilor după un algoritm prestabilit; compresia fişierului folosind noul cod Fano-Shannon. Paşii algoritmului de codificare a simbolurilor propus sunt : 1. simbolurile din cuvântul de transmis se sortează în funcţie de numarul de apariţii. 2. se crează un arbore binar a cărui rădăcină este cuvântul iniţial. 3. urmatoarele două noduri sunt formate din acelaşi cuvâ nt, împarţit astfel încât, în fiecare nod frecvenţele de apariţie ale caracterelor să fie pe câ t posibil egale. 4. se atribuie primului nodului bitul 0 iar de al doilea bitul 1. 5. procesul este unul recursiv şi se repetă până când fiecare nod conţine doar un singur caracter. Exemplu de codare Shannon – Fano. Se presupune că s-a parcurs mesajul iar frecvenţele de apariţie ale simbolurilor sunt următoarele:

Proiect Tic Referat Colocviu Laborator Shannon Fano Nae Adrian Grupa 8216

Embed Size (px)

DESCRIPTION

Tehnologia Informatiilor si a codurilorTicProiect Tic LaboratorLaborator Tic

Citation preview

Page 1: Proiect Tic Referat Colocviu Laborator Shannon Fano Nae Adrian Grupa 8216

Nae Adrian Grupa 8216

Codarea Shannon – Fano

Algoritmii statici de compresie presupun traversarea în întregime a fişierului ce

urmează a fi compresat, înaintea realizării compresiei. Din această clasă fac e parte algoritmul

Shannon - Fano.

În 1949, Claude Shannon şi Robert Fano au venit simultan cu ideea unei metode

sistematice de a atribui cuvinte de cod bazate pe probabilitatea simbolurilor. Acesta este prima

metodă bine-cunoscută de compresie a semnalelor digitale, cunoscută sub numele de codarea

Shannon-Fano. Algoritmul atribuie cuvinte de cod binare simbolurilor dintr-un fişier de date.

Avantajul acestei tehnici de codare este simplitatea. Codul este construit din mesajul

sursă ce urmează a fi transmis v(x) şi probabilitaţiile de apariţie a caracterelor p(v(x)), ordonate

în ordinea descrescătoare a apariţiei lor.

Algoritmul Shannon – Fano este împărţit în trei faze:

parcurgerea mesajului ce urmează a fi transmis î n vederea stabilirii frecvenţelor de apariţie a fiecarui simbol;

codificarea simbolurilor după un algoritm prestabilit; compresia fişierului folosind noul cod Fano-Shannon.

Paşii algoritmului de codificare a simbolurilor propus sunt :

1. simbolurile din cuvântul de transmis se sortează în funcţie de numarul de apariţii. 2. se crează un arbore binar a cărui rădăcină este cuvântul iniţial. 3. urmatoarele două noduri sunt formate din acelaşi cuvâ nt, împarţit astfel încât, în

fiecare nod frecvenţele de apariţie ale caracterelor să fie pe câ t posibil egale. 4. se atribuie primului nodului bitul 0 iar de al doilea bitul 1. 5. procesul este unul recursiv şi se repetă până când fiecare nod conţine doar un singur

caracter.

Exemplu de codare Shannon – Fano. Se presupune că s-a parcurs mesajul iar frecvenţele de apariţie ale simbolurilor

sunt următoarele:

Page 2: Proiect Tic Referat Colocviu Laborator Shannon Fano Nae Adrian Grupa 8216

1 1 1 1 1 1 2 log 2 log 4 log 2.75

4 4 8 8 16 16

1 1 1 P x

i n

i 2 2 2 3 4 4 2.75

4 8 16

Mesaj X1 X2 X3 X4 X5 X6 X7 X8

Probabilitate 0.25 0.25 0.125 0.125 0.0625 0.0625 0.0625 0.0625

Se crează arborele binar .

x1,x2,x3,x4,x5 ,x6,x7,x8

0 1

x1,x2 x3,x4,x5,x6,x7,x8

00 01 10 11

x1 x2 x3,x4 x5,x6,x7,x8

100 101 110 111

x3 x4 x5,x6 x7,x8

1100 1101 1110 1111

x5 x6 x7 x8

Entropia este dată de formula :

H

… iar lungimea medie a vectorului de codare este :

L

Aşadar metoda de codare Shannon – Fano are o eficenţa de 100%, în acest caz.

Însa această eficienţă a algoritmului Shannon – Fano nu este mereu atât de ridicată

deoarece depinde de cuvintele de intrare, care vor fi mereu variabile. Vectorul de codare creşte

de asemenea liniar cu numărul simbolurilor.Un exemplu de eficienţa scăzută a codarii este

Page 3: Proiect Tic Referat Colocviu Laborator Shannon Fano Nae Adrian Grupa 8216

pentru setul de probabilităţi { 0.35, 0.17, 0,17, 0,16, 0,15}.Altă metodă de codare preferată în

locul celei Shannon – Fano este codarea Huffman.

În concluzie, principalele avantaje şi dezavantaje ale codarii Shannon – Fano sunt:

metodă simplu de implementat

metodă statică de codare

metodă de compresie în doi paşi

este semi – adaptabilă pentru diverse mesajele de intrare

metode asimetrică de codare

rezultatul codării este mai slab decâ t cel al codarii Huffman

datele de ieşire optime nu sunt garantate