ComputersTecnulugia tecniche

Codice Huffman: esempi, applicazione

A stu momentu, pochi pirsuni pensanu à cumu funziunamentu di compressione. Comparatu à u passatu, l'usu di un usu persunale hà diventatu assai più faciule. È praticamenti ogni persone chì travagliale cù u sistema di archiu usa l'archivi. Ma pochi pirsuni pensanu à cumu travaglià è di quale principiu hè a compressione di schedari. A primicchia prima versione di stu prucessu era u codice Huffman, è sò sempre usati in diversi archivi. Parechji utilizatori ùn pensanu micca qua quantu faciule hè di cumpressà u schedariu è secondu qualchissimu scambiu. In questu articulu, avemu a circonda di cumpressione cum'è i funziunamentu di cumpressione, ciò chì sapia per aiutu à aghjurnà è simplificà u processu di codificazione, è ancu capisce ciò chì u principiu di a custruisce un arbore codificante hè.

Storia di l'algoritmu

U primu algorìttimmu per una codificazione efficiale di l'infurmazioni elettroniichi era u codice propostu da Huffman in u mezzu di u XXu seculu, à dì in u 1952. Avà hè oghji l'elementu basu principale di a maiò parte di i programmi creati per cumpressione l'informazioni. A stu mumentu, una di e fonti più impurtanti cù questu codice sò archivi di ZIP, ARJ, RAR e assai altri. Stu algoritmu Huffman hè ancu utilizatu per cumpressà l'imagine JPEG è l'altri punti grafichi. Beni e tuttu i fugliali muderni utilizanu ancu a codificazione, inventata in u 1952. Invece ancu chì u codice hè statu creatu tantu tempu passatu, finu à questu ghjornu hè utilatu in i cunnessi novi è nantu à l'equipaggiu di i vechji è muderni.

U principiu di codificazione effarenti

A basa di l'algoritmu di Huffman hè un schema chì permette di sustituisce i simboli più probabilimente cumplicati cun codici di u sistema binariu . E quelli chì sò menu cumuni sò sustituiti da i codici più longu. A transizione à i codici longu Huffman solu solu dopu chì u sistema utilizate tutti i valori minimi. Sta tècnica permette di minimizzà a durata di u còdice per ogni caratteru di u messagiu uriginale in tuttu. Un puntu impurtante hè chì à u principiu di a codificazione a probabilità di l'okkorrenza di littri si deve esse cunnisciutu. Hè da elle chì u missaghju finale serà tracciatu. Basatu annantu à queste dati, l'arburatura codice Huffman hè custruitu, nantu à a basa chì u prucessu di e carte codificazione in u archiviu sarà realizatu.

U codice di Huffman, esempiu

Per illustrar l'algoritmu, aghju piglià una varianti gràfica di custruisce un arbre codice. Per utilizà questu metu era efficace, vale degnu di clarificà a definizione di certi valori necessarii per u cuncettu di stu modu. U settore di archi è node chì sò diretti da u node à u node sò generalmente chjamati graficu. L'àrburu stessu hè un graffiu cun un settore di certu proprietà:

  • In ogni nolu ùn ponu micca micca più di una di l'archi;
  • Unu di i lochi sò esse a razzi di l'arbre, questu hè chì ùn deve micca esse arcu in questu;
  • Sì da l'arradichera di cumincià à trasfurmà cù l'archi, stu prucessu deve esse permettenu cumprità in tutti i nodi.

Ci hè ancu un tali cuncettu, chì hè inclusu in i codici Huffman, com'è una foglia d'un arbre. Hè un node da ellu ùn hà scappatu arc. Se i dui nodi sò cunnessi da un arcu, unu di quellu hè u genitori, l'altru figghiu, sicondu u node chì vene da l'arcu è quale hè in questu. Sì i dui nodi anu u stessu node primu, sò generalmente chjamati nodi fraterni. Sì, in più di e foglie, ci sò parechji arcati in i nodi, questu arburu chjamatu binariu. Questu hè propiu u l'arbre di Huffman. A peculiarità di i nodi di sta custruzzioni hè chì u pesu di ogni primariu hè uguali à a summa di u pesu di tutti i so zitelli nodali.

Algoritmu per a custruisce un arbre sicondu Huffman

A custruzione di u codice Huffman hè fatta da e lettite di l'alfabbetu ingressu. A lista di quelli nodi chì sò liberi in u futuru arbre codice hè creatu. U pesu di ogni node in questa lista deve esse uguali da a probabilità di l'occurrence di a lettera di u messagiu chì currisponde à stu node. In questu casu, tra i pocu nudelli liberi di l'arburu futuru, quellu chì pesa u menu hè sceltu. À u stessu tempu, si i indicatori minimi si osservanu in parechji nodi, hè pussibule sceglie liberamente qualunque qualchì parintia. Dopu questu, u node primu hè creatu, chì pesa cumu quantu a summa di questu pair of nodes pesa. Dopu à questu, u genitori hè mandatu à a lista cù nodi liberi, è i zitelli sò eliminati. À u listessu tempu, l'archi ricèvule l'indici, quessi è certi. U prucessu hè ripetutu esattamente ciò chì hè necessariu di lascià solu un node. Indudu i numeri binari sò scritti avanti da a cima.

Impunizazione di cumpressione

Per aghjà l'efficienza di compressione, hè necessariu, à u mumentu di a custruzzione di l'arburatura di codice, per utilizà tutti i dati di a probabilità di l'occurrence di littri in un schedariu particulari attaccatu à l'arbre, è per ùn permettenu di esse spargugliatu nantu à una quantità numerosa di documenti di testi. Sè u primu camminatu per questu archiviu, pudete calculà automaticamente l'statìstichi di quantu spessu i carte da l'ughjettu per esse cumpressu.

Acceleration of the compression process

Per aghjurnà u travagliu di l'algoritmu, l'articulu ci vole micca determinatu da l'indici di a probabilità di l'occurrence di una lettera particulare, ma da a freccia di a so avvene. Grazie à questu, l'algoritmu hè diventatu più faciule, è u travagliu cun ella hè assai acceleratu. Hè ancu esvete l'operazzioni assuciati cù cunvirsi fluviali è divisioni. Inoltre, u travagliu in questu modu, u codice Huffman dinamica, o megliu l'algoritmo stessu, ùn hè sottumessu di cambiamentu. Questu hè principalmente per u fattu chì e probabilità sò direttamente proporzionale à e frequenzi. Hè vale a cura nantu à u fattu chì u pesu finali di u schedariu o u nodo raghjunatu serà ugguali à a summa di u numaru di littri in l'ughjettu per esse procesatu.

Chjave

I codici di Huffman sò un algoritmu simplici è longu stabilitu chì hè sempre utilizzatu da parechje schedari famiti è cumpagnie. A so simplicità è a clarità permette di otteneate risultati efficais de compressione di schedari di qualsiasi volumi è à reduce ridirezanu l'uccupatu occupatu per elli nantu à u discu in u storage. In autri vocabuli, l'algoritmu Huffman hè un scopu longu studiatu è bellu scopu, a rilevanza di quale ùn hè micca diminuente finu à questu ghjornu. E grazi à a capacità di riduce a dimensione di schedari, trasfiriu nant'à a rete o in altri mane, diventa più faciule, più veloce è più còmicu. U travagliu cù l'algoritmu, pudete cumpressà ogni infurmazione senza dannu à a so struttura è a qualità, ma cù l'effettu massimu di riduzzione di u pesu di u schedariu. In autri vocabuli, codice codificazione Huffman era è segue u metu più famosu è mudernu di compressione di un tamantu file.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 co.unansea.com. Theme powered by WordPress.