1 / 13

Bezztrátové komprese dat

Bezztrátové komprese dat. Jan Tejmar. Obsah. Využití bezztrátové komprese dat Používané metody komprese dat Srovnání efektivnosti různých typů. Využití bezztrátové komprese. Archivace velkých množství dat Zefektivnění datových přenosů

ermin
Download Presentation

Bezztrátové komprese dat

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bezztrátové komprese dat Jan Tejmar

  2. Obsah • Využití bezztrátové komprese dat • Používané metody komprese dat • Srovnání efektivnosti různých typů

  3. Využití bezztrátové komprese • Archivace velkých množství dat • Zefektivnění datových přenosů • Zmenšení objemu dat bez ztráty informačního obsahu • Originální data a data po dekompresi komprimovaného • souboru jsou totožná

  4. Metody komprese dat • RLE – Run lenght encoding – opakování znaků ( PCX) • Statistické metody • - Huffmanovo kódování • - Aritmetické kódování • - Shannon-Fanovo kódování • Slovníkové metody • - LZ77 (PNG) • - LZ78 • - LZW (GIF)

  5. RLE – Run length encoding • Použití: zřídka pro kompresi textů, častěji pro obrazovou informaci • Princip: opakující se symboly se kódují dvojicí (počet_opakování , symbol) Kódování délky se provádí: • u každého znaku je udán počet opakování Př. Vstup: AAAABBCDDDDABD Výstup: 4A2B1C4D1A1B1D

  6. RLE – Run Length encoding → (3,Č),(2,B) → (1,B), (3,Č), (1,B) → (2,B), (2,Č), (1,B) → (5,B) → (2,B), (3,Č) → (2,B), (3,Č) • pro jaké obrázky RLE výhodné? – obrázek s mnoha vodorovnými čarami • pro jaké obrázky RLE neefektivní? – obrázek se svislými čarami → žádná komprese – obrázek, kde se neopakují hodnoty sousedních pixelů (např. šachovnice) → záporná komprese → zvětšení výsledného souboru

  7. Statistické metody Huffmanovo kódování • algoritmus navržen v Davidem Huffmanem v roce 1952 • využívá optimálního (nejkratšího) prefixového kódu y j (kód žádného znaku není prefixem jiného znaku). • kódové symboly mají proměnnou délku Princip: Metoda je založená na stanovení četnosti výskytů jednotlivých znaků v kódovaném souboru a kódování znaků s největší četností slovem s nejkratší délkou. Algoritmus kódování: 1. Zjištění četnosti jednotlivých znaků v kódovaném souboru 2. Vytvoření binárního stromu (Huffmanova kódu jednotlivých znaků) seřadíme posloupnost postupně zleva doprava 3. Uložení stromu 4. Nahrazení symbolů jednotlivými kódy (posloupností bitů) Výhody – velmi rychlá komprese a dekomprese - nepříliš velké nároky na paměť Nevýhody – nutnost uložení binárního stromu a slabší kompresní poměr

  8. Statistické metody Příklad:

  9. Statistická metoda Aritmetické kódování - reprezentaci vstupního řetězce reálným číslem R pro které platí 0  R < 1. Počáteční interval si rozdělíme v poměru četností výskytu znaků. Každý znak je tedy reprezentován určitým menším podintervalem. Poté v závislosti na aktuálním znaku vybereme jeden podinterval, který opět rozdělíme v poměru četností a načteme další znak. Tímto postupem se interval neustále zužuje. Z posledního intervalu vybereme jedno reprezentující číslo, jehož zápis představuje zkomprimovaný řetězec.

  10. Slovníkové metody LZ77 (Lempel-Ziv) metoda Princip metody spočívá v postupném prohledávání celého souboru tak, že vždy část rozdělíme na dvě „okénka“, kde první tvoří historii kterou prohledáváme a druhým okénkem se dívám dopředu a hledám zda v něm není posloupnost znaků, která se už jednou vyskytuje v okénku historie. Pokud takovou posloupnost najdu, nahradím ji uspořádanou dvojicí: (offset o kolik znaků jdu zpět, délka sekvence) Např. zápis (10,2) znamená že mám jít o deset znaků zpět a vzít odsud 2 znaky – viz. schéma

  11. Slovníkové metody • LZW (Lempel-Ziv-Welch) metoda • funguje na principu tvorby slovníku, do kterého se ukládají opakující se znaky. • jakmile se znaky objeví v souboru znovu, jsou okamžitě nahrazeny číslem, odkazující na ony znaky ve slovníku. • - slovníky se neukládají do zkomprimovaného souboru (jsou většinou velké a • komprimace by neměla smysl), nýbrž jsou dělány tak důmyslně, že se při dekódování tvoří znovu ze zakódovaných souborů. Fráze Kódové slovo a 1 b 2 c 3 ab 4 bc 5 ca 6 abc 7 cab 8 bcb 9 bcba 10 Příklad: Vstupní abeceda A={a, b, c} Vstupní řetězec V=abcabcabcbcba Výstupní řetězec W=1 2 3 4 6 5 9 1 Slovník je po zpracování celého vstupního řetězce zobrazen v tabulce.

  12. Porovnání účinnosti

  13. Porovnání účinnosti 1. černo-bílý obrázek: velké změny v obraze 2. šestnáctibarevný: velké plochy stejné barvy, málo změn 3. 256barevný obrázek: velká stejnobarevná plocha (pozadí), více změn 4. true-color obrázek: reálná fotografie, mnoho změn v obraze, barevné přechody

More Related