Jak funguje - komprese

Napsal (») 3. 8. 2011 v kategorii Hardware a mobily, přečteno: 842×
banan/img/jaktofunguje.jpg

Komprese je způsob jak ušetřit čas i místo. Úkolem komprese je zmenšit datový tok, nebo zmenšit obsah souborů. Většina z vás určitě zná soubory, nebo-li tzv. archívy s příponou zip, rar a jiné. V takovýchto souborech se ukládají data na internet a je to ekonomičtější řešení. Né však u všech vždycky má komprese smysl.

Záhadou stále zůstává, proč se data dají zcvrknout ještě více, když jsou tvořeny 1 a 0?

Kompresí máme dva druhy, a to ztrátová a bezeztrátová a každá má své uplatnění.

Bezeztrátová komprese

Při bezeztrátové kompresi data po znovusestavení, neboli tzv. extrahování, tvoří stejně velký soubor a veškerá data jsou stejná jako byly před kompresi.

Když zabalujeme do archívu takový soubor, je třeba se zaměřit na redundantní data, to jsou ta která se opakují 2x a více.

LZ

-Lempel and Ziv adaptive dictionary-based algorithm (Lempelův a Zivův přizpůsobivý slovníkový postup).

Mějme například větu:

  • Petr viděl petrklíč a dal ho Petře. Petra však od Petra petrklíč zahodila.(74 znaků)

Nyní vybereme redundantní data, to jsou "Petr" a "Petra", porotože se zde objevují víckrát. Vepíšeme do tabulky abychom měli přehled (tzv. slovník):

Slovo Výskyt Kód
Petr  2 1
Petra  2 2
petrklíč  2 3

Nyní přepíšeme větu...

  • 1 viděl 3 a dal ho 2. 2 však od 1 3 zahodila.(45 znaků)

Nyní vidíte, že díky komprese se věta zmenšila o cca 1/3 objemu dat.

Huffmanovo kódování

Při tomto postupu dochází k prohledávání textu a hledání nejčastěji se vyskytujících posloupností znaků určité délky. Ty jsou nahrazeny nejkratšími kódovými slovy (např. abb), a ty méně časté jsou nahrazeny delšími kódovými slovy (např. baabbabab). Pro přidělování slov sestavujeme binární strom podle pravděpodobností výskytu jednotlivých posloupností. Pokud půjdeme po jeho hranách, dochází k získání kódových slov v prefixovém (prefix = předpona) tvaru, což zaručí, že se při dekódování nemohou poplést dvě posloupnosti (to znamená, že delší slovo nemůže být například abbab, což by znamenalo, že začíná znaky abb, přičemž by došlo k přeložení na nejkratší posloupnost a hledala by se pak posloupnost pro znaky ab).

Méně efektivních změn dosáhneme u souborech, kde se data neopakují často (videa, obrázky, Naopak u zdrojových kódů, kde se příkazy jazyka opakují častěji, dosáhneme efektivního výsledku.

Ztrátová komprese

Zde dochází záměrně ke ztrátě informací a ztracená data nelze zísat zpět (obrázky, hudba,...). Například při komprimaci zvukové stopy do formátu mp3 se  zvuky neslyšitelné lidským uchem ztratí a ponechají se jen ty, které podle nějakého měřítka slyšitelnosti lidské ucho (záleží na alogritmu) vnímá.

Takto třeba tento soubor, který měl na koupeném CD 40 MB, po komprimaci na mp3 formát, má  například pouhé 3 MB.

Komprimace zvukové stopy na mp3 fomrát je nejoblíbenější a nejrozšířenější. Objem dat se mnohonásobně zmenší a kvalita je pro nás stejná, protože tyto zvuky o které jsme byli ochuzeni stejně nevnímáme.

Programy na komprimaci hudby: CDex,Audio To MP3 Converter a mnoho dalších je zdarma ke stažení na různých freewareových serverech.

Hodnocení:     nejlepší   1 2 3 4 5   odpad
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel nula a jedenáct