Sunteți pe pagina 1din 4

Codarea semnalelor

Unele surse de informaie genereaz semnale analogice ce pot fi descrise drept variabile aleatoare de tip continuu. n aceast clas intr semnalul vocal generat de un microfon, unda seismic generat de un geofon i, n general, semnalele generate de diverse traductoare (un traductor fiind un dispozitiv care convertete o mrime neelectric n una electric i invers). lte surse de informaie genereaz iruri de simboluri dintr!o mulime discret i finit. "e e#emplu, o dactilograf bt$nd la maina de scris genereaz un ir de caractere din setul de caractere pentru care sunt prevzute taste. cest e#emplu pare a nu mai fi de actualitate, cci maina de scris a fost trimis la %uzeul de &storie a 'e(nicii prin larga rsp$ndire a calculatoarelor personale. "ar aceeai dactilograf, adapt$ndu!se vremurilor, genereaz de la claviatura unui )C un te#t ce poate include un set mult mai larg de simboluri, de asemenea ns discret i finit. %ai mult dec$t at$t, cineva care scrie un te#t utiliz$nd calculatorul personal genereaz de fapt un fiier, adic un ir compus numai din dou simboluri, * i +, ir ce poate fi memorat sau transmis la distan i pe care o imprimant l poate oric$nd transforma n te#tul tiprit. )rin eantionare i cuantizare, un semnal analogic poate fi transformat ntr!un semnal digital din care poate fi recuperat cu o distorsiune ce poate fi fcut acceptabil de mic. )rin urmare, indiferent dac sursa de informaie genereaz un semnal analogic sau unul digital, acest semnal poate fi transformat ntr!unul ec(ivalent utiliz$nd numai dou simboluri, fie ele * i +. ,rice surs de informaie poate fi transformat ntr!o surs de simboluri binare. , problem important n memorarea i n transmiterea digital a informaiei este reprezentarea eficient a datelor generate de surs. )rocesul prin care se realizeaz aceast reprezentare se numete codare surs. "ispozitivul care efectueaz aceast reprezentare se numete codor surs. Un codor surs eficient trebuie s satisfac dou cerine funcionale+. Cuvintele de cod produse de codor trebuie s fie n form binar. .. Codul surs s fie univoc decodabil, astfel nc$t irul surs originar s poat fi reconstruit perfect din irul binar codat. n anul +/0., 1uffman a conceput un algoritm de codare cu lungime variabil, optim n sensul c numrul mediu de bii necesari pentru a reprezenta simbolurile surs este minim astfel nc$t cuvintele de cod s satisfac acea condiie de prefi# descris mai sus care permite ca irul recepionat s fie decodabil univoc i instantaneu.

Algoritmul Huffman garanteaz obinerea unui cod optimal. %etoda presupune parcurgerea urmtoarelor etape+ stabilirea listei simbolurilor sursei n ordinea descresctoare a probabilitilor2 . combinarea celor mai mici dou probabiliti i reordonarea listei, urmat de repetarea operaiunii p$n la obinerea unei liste cu doar . probabiliti2

generarea cuvintelor de cod pornind de la ultimul pas i revenind spre probabilitile iniiale, prin atribuirea de 0 i respectiv 1 logic pe ramurile care apar. Un e#emplu de aplicare a acestui algoritm este prezentat n figura urmtoare-

3e obin urmtoarele coduri finalea+- 00 a0- 0100 a.- 011 a4- 0101 a5- 100 a6- 110 a7- 101 a8- 111 )entru acest cod s!a obinut- L 9 .,682 H(A) 9 .,6+ : 9 /6,78;. n aplicaii de compresie a te#tului, algoritmul 1uffman poate fi utilizat pentru codarea unui ir de caractere pentru care poate fi determinat frecvena relativ de apariie a fiecrui caracter. "eoarece fiecare caracter este codat printr!un cuv$nt de cod av$nd un numr variabil de bii, procesul de decodare a irului de bii recepionat se va face pe o baz orientat pe bit i nu pe baza unor lungimi fi#e de 6<8 bii. "atorit modului n care se face alocarea biilor n timpul procedurii de codare, algoritmul 1uffman (ca i algoritmul 3(annon!=ano, de altfel) are proprietatea c nici un cuv$nt de cod scurt nu este prefi#ul unui cuv$nt de cod mai lung. )rin urmare codul obinut este instantaneudecodabil, printr!o procedur recursiv de verificare bit cu bit p$n n momentul n care se gsete un cuv$nt de cod valid. &n =igura ..5 este prezentat organigrama corespunztoare algoritmului de decodare. lgoritmul presupune disponibilitatea la recepie a unui tabel al cuvintelor de cod, precum i al caracterelor 3C&& corespunztoare. >irul de bii recepionat este memorat n bufferul >&? ?@C@)A&,B ', iar biii citii i utilizai pentru construirea cuvintelor de cod se memoreaz n bufferul CUCDB' "@ C,". "in organigram rezult faptul c pe msur ce este identificat un cuv$nt de cod

viabil, caracterul 3C&& corespunztor este ncrcat n EU==@? ?@C@)A&@. )rocedura se repet p$n n momentul n care au fost procesai toi biii recepionai.

"eoarece cuvintele de cod 1uffman obinute se modific n funcie de setul de caractere transmise, este necesar cunoaterea de ctre receptor a cuvintelor de cod corespunztoare datelor transmise. ceast cunoatere poate fi asigurat prin dou metode. )rima metod const n transmiterea cuvintelor de cod corespunztoare urmtorului set date nainte de transmiterea efectiv a datelor. doua metod const n cunoaterea prealabil de ctre receptor a cuvintelor de cod care urmeaz a fi utilizate. )rima metod conduce la o form de compresie adaptiv, deoarece cuvintele de cod pot fi modificate n scopul de a fi potrivite tipului de date care urmeaz a fi transmise. "ezavantaFul metodei const n faptul c noul set de cuvinte de cod (mpreun cu caracterele corespunztoare) trebuie transmise de fiecare dat c$nd un nou tip de date urmeaz a fi transmise. , alternativ a acestei metode este aceea de a memora la nivelul receptorului mai multe seturi de cuvinte de cod,

astfel nc$t de la emitor s fie necesar doar indicarea setului de cuvinte de cod care urmeaz a fi utilizate cu urmtorul set de date transmise. "e e#emplu, n cazul des nt$lnit al transmisiei de fiiere de te#t generate de un procesor de te#t, pot fi utilizate analize statistice privind frecvena de apariie a diferitelor caractere din alfabet. ceast informaie poate fi utilizat pentru construirea cuvintelor de cod 1uffman pentru alfabetul respectiv, care vor fi utilizate n mod automat de ctre emitor i receptor. , limitare a performanelor codorului 1uffman pentru simboluri independente, fa de calculele teoretice, este aceea c lungimea medie a cuvintelor de cod Lmed G +, independent de valoarea entropiei. 3e poate arta c optimalitatea teoretic se atinge ntotdeauna dac probabilitile de apariie a simbolurilor sunt de forma 2-m, unde m este un numr natural i dac, n plus, entropia este mai mare dec$t +. )entru asemenea aplicaii, unde viteza este un factor important i numrul de simboluri este mare, se folosesc alte coduri de lungime variabil, care au performane apropiate de cele ale codorului 1uffman, dar conduc la coduri cu lungime ma#im mai mic.