Sunteți pe pagina 1din 10

7.

CODAREA DE SURSA
Locul codarii de sursa intr-o schema de transmisiune a datelor :
Rolul codarii de sursa :
- adaptarea slfabetului sursei la alfabetul canalului
- adapatarea statistica (simboluri echiprobabile pentru alfabetul de canal)
- compresia datelor (este o consecinta a adaptarii statistice)
Observatii :
- codarea de sursa priveste sursele discrete de informatie
- codarea de sursa nu rezolva problema erorilor cauzate de perturbatii
- prin codare, sursa de informatie, numita si sursa primara, este transformata intr-o
noua sursa de informatie, numita sursa secundara, care debiteaza informatie pe
canal.
Doua exemple de codare :
Fie o sursa de informatie primara care genereaza simboluri dintr-un alfabet :
[ ] [ ]
4 3 2 1
, , , x x x x X
cu probabilitatile
[ ]
1
]
1

8
1
,
8
1
,
4
1
,
2
1
P
Simbolurile trebuie transmise pe un canal binar cu alfabetul
[ ] 1 , 0
. De aceea, ele trebuie
transcrise in binar, inainte de transmisie. Transcrierea in binar - codarea - se poate face in
multe feluri. De exemplu:
1) 0 0
1
x
1 0
2
x
0 1
3
x
1 1
4
x
2) 0
1
x
0 1
2
x
0 1 1
3
x
1 1 1
4
x
S CoS C A N A L U DecS
Definitie : Codarea este operatia prin care fiecare simbol al sursei primare este inlocuit
printr-o succesiune de simboluri ale alfabetului canalului. Decodarea este operatia inversa
codarii.
Definitie : Cuvantul de cod este succesiunea finita de simboluri din alfabetul canalului, cu
care este inlocuit un simbol al sursei primare
Definitie : Codul este totalitatea cuvintelor de cod folosite in codarea unei surse.
Definitie : Lungimea unui cuvant de cod este egala cu numarul de simboluri din alfabetul
canalului, care constituie cuvantul considerat.
Observatii :
- Codarea stabileste o corespondenta biunivoca intre simbolurile sursei primare si
cuvintele codului
- O succesiune de simboluri ale alfabetului canalului, care nu corespunde niciunui
simbol al sursei, se numeste cuvant fara sens. Prin analogie, un cuvant de cod se
mai numeste si cuvant cu sens.
Exemplele de mai sus cuprind un cod de lungime fixa (exemplul 1), care are toate cuvintele
de aceeasi lungime, si un cod de lungime variabila (exemplul 2), care are cuvinte de lungime
variabila. In acest caz, se defineste notiunea de lungime medie a cuvinelor de cod.
Definitie : Lungime medie a cuvintelor de cod se calculeaza cu expresia :

N
i
i i
l p l
1
unde cu
i
l
s-a notat lungimea cuvintelor, iar cu
i
p
, probabilitatile simbolurilor
i
x
.
Exemplu:
7 , 1
8
14
3
8
1
3
8
1
2
4
1
1
2
1
+ + + l
Observatii :
- lungimea medie a cuvintelor de cod se numeste, pe scurt, lungime a codului
- la codurile formate din cuvinte de lungime fixa, lungimea codului este egala cu
lungimea unui cuvant de cod (
) l l l
i

.
De cele mai multe ori, prin codarea cu cuvinte de lungime variabila, se realizeaza o compresie
a datelor (reducere a volumului de date).
Definitie : Raportul de compresie obtinut prin codare cu un cod de lungime variabila l se
calculeaza cu expresia :
l
l
R
unde cu
l
s-a notat lungimea unui cod de lungime fixa, obtinut cu acelasi alfabet al
canalului.
Exemplu :
15 , 1
7 , 1
2
R
Definitie : Rata de compresie este inversul raportului de compresie :
R
rata
1

7.1. Clasificarea codurilor de sursa


CODURI reversibile de lungime variabila unic decodabile instantanee
neinstantanee
nu sunt unic decodabile
de lungime fixa
ireversibile
7.1.1. Coduri ireversibile si coduri reversibile
Exemplu :
1) Cod binar ireversibil (la decodare, codul lui
1
x
nu poate fi distins de cel al lui
2
x
; la fel
pentru
3
x
si
4
x
)
0
1
x
0
2
x
1
3
x
1
4
x
2) Cod binar reversibil
0 0
1
x
1 0
2
x
0 1
3
x
1 1
4
x
7.1.2. Coduri unic decodabile si coduri care nu sunt unic decodabile
Exemplu :
1) Cod care nu este unic decodabil :
0
1
x
0 1
2
x
1 1
3
x
0 1 1
3
x
La decodare, grupul
0 1 1
poate fi interpretat fie ca simbolul
4
x
, fie ca grupul de
simboluri
1 3
x x
.
2) Cod unic decodabil
0
1
x
0 1
2
x
0 1 1
3
x
0 1 1 1
4
x
7.1.3. Coduri neinstanee si coduri instantanee
Exemplu :
1) Cod neinstantaneu :
0
1
x
0 1
2
x
0 1 1
3
x
0 1 1 1
4
x
Trebuie asteptat primul simbol al urmatorului cuvat de cod pentru a face decodarea cuvantului
receptionat (acest cod se mai numeste si cod cu separator).
2) Cod instantaneu
0
1
x
0 1
2
x
0 1 1
3
x
1 1 1
4
x
Decodarea se poate face la primirea ultimului simbol al cuvantului de cod.
Observatie:
- codurile instantanee sunt cele mai utilizate in practica.
7.2. Coduri instantanee sau ireductibile
Definitie : Fie cuvantul de cod C , constituit din
n
simboluri :
[ ]
n
c c C
1

Sirul format din primele k simboluri, se numeste prefix al cuvantului.


Teorema : Conditia necesara si suficienta ca un cod sa fie instantaneu este ca nicun cuvant al
sau sa nu fie prefix al altui cuvant.
Observatii:
- spunem despre un cod instantaneu ca are proprietatea de prefix.
- codurile instantanee se mai numesc si ireductibile.
7.3. Inegalitatea Kraft-McMillan
Teorema : Fie sursa primara de informatie cu alfabetul :
[ ] [ ]
N
x x X , ,
1

si alfabetul de canal [ ] [ ]
D
c c C , ,
1
, cu simbolurile caruia se vor forma cuvinte de cod
pentru sursa primara. O conditie necesara si suficienta pentru a construi un cod ireductibil
(instantaneu) cu cuvinte de lungime
N
l l , ,
1

este :
1
1
<

N
i
l
i
D
(Inegalitatea Kraft-McMillan)
Justificare: ne folosim de reprezentarea prin arbori a codurilor ireductibile
7.4. Limita inferioara a lui l
Fie o sursa primara de informatie cu alfabetul :
[ ] [ ]
N
x x X , ,
1

si probabilitatile
[ ] ( ) ( ) [ ]
N
x p x p P , ,
1

Simbolurile sursei sunt codate cu un cod de lungime medie l . Cuvintele de cod sunt
constituite din simboluri ale alfabetului de canal [ ] [ ]
D
c c C , ,
1
.
Daca
( ) X H
este entropia sursei, atunci fiecare simbol
d
c
poarta in medie o cantitate de
informatie:
( )
l
X H
Aceasta cantitate, nu poate fi mai mare decat entropia maxima a sursei secundare
( ) D C H
2 max
log
:
( )
D
l
X H
2
log
Deci, limita inferioara pentru lungimea medie a oricarui cod este:
( )
D
X H
l
2
min
log

Observatii:
- daca codarea se face cu alfabet binar, atunci limita inferioara pentru l este
entropia sursei primare
( ) X H
- rezultatele acestei sectiuni sunt valabile pentru toate tipurile de coduri, deci si
codurilor ireductibile (instantanee)
- aceasta relatie poate fi interpretata si ca o a doua definitie a entropiei
Definitie : Entropia unei surse este egala cu lungimea medie a unui cod binar minim cu care
sursa poate fi codata (nu totdeauna acest cod exista).
7.5 . Coduri absolut optimale
In practica, ne intereseaza codurile cu l cat mai mic.
Definitie: Codurile care au
( )
D
X H
l l
log
min

se numesc coduri absolut optimale.
Conform Sectiunii 7.4, cantitatea medie de informatie transmisa fiecarui simbol de canal prin
codare, altfel spus entropia sursei secundara
( ) C H
, este invers proportionala cu l :
( )
( )
l
X H
C H
Aceasta relatie arata ca l isi atinge minimul cand
( ) C H
este maxim, adica atunci cand, prin
codare, simbolurile
d
c
ajung sa fie transmise echiprobabil:
( ) ( )
D
c p c p
D
1
1

Considerand ca nu exista dependenta statistica intre simbolurile
d
c
, care intra in componenta
cuvintelor de cod, rezulta urmatoarele probabilitati pentru cuvintele de cod si, deci, pentru
simbolurie sursei primare:

( )
i
l
i
D
x p
,
_

1
unde
i
l
este lungimea cuvantului de cod pentru
i
x
.
Cum
( ) 1

i
i
x p
, rezulta ca, o conditie pentru a avea un cod absolut optimal este:
1
1

N
i
l
i
D
Observatii:
- egalitatea de mai sus este o conditie de existenta pentru codurile absolut optimale;
in cazul codarii binare, aceasta conditie se traduce prin a cere ca simbolurile sursei
primare sa aibe probabilitati care sunt puteri intregi negative ale lui 2 (exemplu:
[ ]
1
]
1

8
1
,
8
1
,
4
1
,
2
1
P
- codurile absolut optimale sunt un caz limita penta pentru Inegalitatea Kraft-
McMillan, deci pot fi si ireductibile
7.6. Coduri optimale
Codarea unuei surse de informatie cu un cod binar absolut optimal este posibila numai daca
probabilitatile sursei satisfac conditia:
( )
i
l
i
D
x p
,
_

( )
( )
i
i
i
x p
D
x p
l
2
2
2
log
log
log

De cele mai multe ori,
( )
i
x p
2
log
nu este un numar zecimal. De aceea, se construiesc
cuvinte de cod cu lungimea minima posibila, adica
( )
1 i i
x p l
2
log
. Aceste cuvinte satisfac
conditia:
( )
1
log
log
2
2
+
D
x p
l
i
i
i
Amplificand inegalitatile cu
( )
i
x p
si insumandu-le dupa I, rezulta:
( )
( ) ( )
( )

+
i
i
i
i
i
i
i i
x p
D
x p x p
l x p
2
2
log
log
Deci
( )
1
log
2
+
D
X H
l
ceea arata ca se poate gasi un cod unic decodabil, care sa aibe
lungimea mai mica decat limita superiora
( )
1
log
2
+
D
X H
.
Vom demonstra, in continuare, ca aceste coduri satisfac Inegaliatea Kraft-McMillan,
deci ca ele sunt si coduri ireductibile (instantanee).
Deoarece
( )
1 i i
x p l
2
log
, putem scrie:
( )
i
i
l
D
x p

2
2
log
log
( )
i
l
i
D x p

i
Insumand dupa I, rezulta :
( )

i
l
i
i
i
D x p

1


i
l
i
D
Deci, acsete coduri satisfac Inegalitatea Kraft-McMillan care este conditia necesara si
suficienta pentru a avea un cod ireductibil.
Definitie: Codurile constituite din cuvinte de lungime
( )
1 i i
x p l
2
log
sunt coduri
optimale.
7.7. Capacitatea, eficienta si redundanta codurilor
Definitie : Capacitatea unui cod este maximul cantitatii medii de informatie ce poate fi
transmisa de simbolurile din alfabetul canalului :
( ) D C H C log
max

Definitie : Eficienta unui cod se defineste prin :
1
min

l
l

( )
( )
( )
D
C H
D
l
X H
l
D
X H
log log
log

Definitie : Redundanta unui cod se defineste prin :
( )
[ ] 1 , 0
log
1 1
D
C H

Observatie: Capacitatea, eficienta si redundanta codului sunt marimi similare celor
prezentate la capitolul de Canale discrete. Expresiile sunt diferite pentru ca, in cazul canalelor,
se foloseste notiunea de cantitate medie de informatie pe simbolurile generate de sursa
primara, iar in cazul codurilor, se considera informatia medie pe simbolurile sursei secundare
7.8. Extensia unei surse de informatie
Fie o sursa de informatie cu alfabetul :
[ ] [ ]
N
x x X , ,
1

si probabilitatile
[ ] ( ) ( ) [ ]
N
x p x p P , ,
1

Presupunem ca sursa X genereaza urmatorul sir de v.a.:

, , , , , , ,
1 2 2 3 2 1 0 + n n
X X X X X X
Definitie : Extensia de ordin 2 a sursei X , este o sursa notata
2
X
, care genereaza sirul:
, , , ,
1 0 n
Z Z Z
unde v.a.
n
Z
sunt siruri de doua v.a. consecutive ale sirului
, , , , , , ,
1 2 2 3 2 1 0 + n n
X X X X X X
Mai precis:
( )
1 0 0
, X X Z
,
( )
3 2 1
, X X Z
, ,
( )
1 2 2
,
+

n n n
X X Z
Observatii:
- extensia de ordin m se noteaza cu
m
X
si este o sursa ale carei simboluri sunt siruri
de lungime m
- alfabetul extensiei
m
X
este constituit din
m
N simboluri (siruri).
Teorema : Entropia extensiei
m
X
, fara memorie, este de m ori mai mare decat entropia
sursei X :
( ) ( ) X mH X H
m

7.9. Prima Teorema a lui Shannon


Conform rezultatelor din Sectiunile 7.4 si 7.6, lungimea unui cod folosit pentru codarea unei
surse de informatie fara memorie X , satisface urmatoarele inegalitati :

( ) ( )
1
log log
2 2
+
D
X H
l
D
X H
Aceasta dubla inegalitate este valabila si pentru extensia
m
X
, care este tot o sursa fara
memorie :
( )
( )
( )
1
log log
2 2
+
D
X H
l
D
X H
m
m
m
unde
( ) m
l este lungimea medie a cuvintelor de cod pentru simbolurile sursei extinse, care
sunt siruri de m simboluri ale sursei initiale. Deci,
( )
l m l
m
, unde l este lungimea medie a
cuvintelor de cod pentru simbolurile sursei initiale.
Aplicand rezultatul Sectiunii 7.8, dubla inegalitate devine:
( ) ( )
m D
X H
l
D
X H
m
1
log log
2 2
+

ceea ce reprezinta expresia matematica a Primei teoreme a lui Shannon
Prima teorema a lui Shannon sau Teorema codarii canalelor fara zgomot: Codand siruri
de simboluri suficient de lungi, ne putem apropia oricat de mult de codarea absolut optimala.
7.10. Algoritmi de codare entropica
7.10.1. Codarea Shannon-Fano
7.10.2. Codarea Huffman
7.10.3. Codarea aritmetica

S-ar putea să vă placă și