Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Bezstratová kompresia:
Tento typ kompresie zaručuje, že pôvodný súbor je možné dokonale rekonštruovať z komprimovanej verzie. Používa sa pre textové súbory, zdrojový kód, tabuľky a ďalšie údaje, kde je neprijateľná aj malá strata informácií. Bežné techniky zahŕňajú:
* Run-Dengthing Coding (RLE): Táto jednoduchá metóda nahrádza po sebe idúce opakujúce sa znaky alebo bajty jednou inštanciou znaku a niekoľkokrát, čo sa opakuje. Napríklad „AAABBBCC“ sa stáva „3A3B2C“. Je to veľmi efektívne pre údaje s dlhými zjazdmi rovnakých hodnôt.
* Huffman Coding: Tým sa priraďuje kratšie kódy často vyskytujúcim sa symbolom a dlhším kódom menej častým. Využitím pravdepodobnosti rozdelenia symbolov v údajoch dosahuje významnú kompresiu. Napríklad v anglickom texte je písmeno „E“ veľmi bežné, takže by dostal krátky kód, zatiaľ čo menej časté písmená ako „Z“ by získali dlhšie kódy.
* Lempel-Ziv (LZ) Algoritms: Toto sú sofistikovanejšie metódy, ktoré identifikujú opakujúce sa vzorce v údajoch. Namiesto individuálneho kódovania každého symbolu vytvárajú slovník opakujúcich sa vzorov a kódujú ich s krátkymi odkazmi. Bežné variácie zahŕňajú LZ77, LZ78 a LZW (Lempel-Ziv-Welch), pričom posledne uvedené sa používa vo formáte obrázka GIF. Slovník sa zvyčajne vytvára dynamicky, pretože údaje sú komprimované a dekomprimované.
* Kompresia založená na slovní: Tieto metódy (vrátane algoritmov LZ) vytvárajú slovník opakujúcich sa sekvencií a nahradia ich krátkymi kódmi. Pracujú dobre na údajoch, ktoré obsahujú veľa opakovaní.
* Burrows-Whoeler Transformácia (BWT): Táto technika zopakuje údaje na zhlukovanie podobných znakov spolu, čo uľahčuje efektívnu prácu iným metódam kompresie. Často sa používa v spojení s inými algoritmami, ako je transformácia presunu a kódovanie run.
2. Stratová kompresia:
Tento typ kompresie dosahuje vyššie kompresné pomery vyradením niektorých údajov, ktoré sa považujú za menej dôležité. Je to prijateľné pre multimediálne údaje (obrázky, zvuk, video), kde je určitá strata vernosti tolerovateľná. Príklady zahŕňajú:
* jpeg (obrázky): Používa diskrétnu transformáciu kosínu (DCT) na zníženie množstva údajov potrebných na reprezentáciu obrazu. Zbavuje niektoré vysokofrekvenčné informácie, ktoré sú pre ľudské oko menej viditeľné.
* mp3 (audio): Používa psychoakustické modelovanie na zlikvidovanie frekvencií, ktoré sú maskované hlasnejšími zvukmi. To umožňuje výrazné zníženie veľkosti súboru bez veľkej vnímanej straty v kvalite zvuku.
* mPeg (video): Používa techniky, ako je kompenzácia pohybu na kódovanie iba zmien medzi rámcami, čo výrazne znižuje redundanciu.
v súhrne:
Programy kompresie súborov používajú kombináciu algoritmov na identifikáciu a využívanie prepracovania v údajoch. Bezstratové metódy zaručujú dokonalú rekonštrukciu, zatiaľ čo stratové metódy obetujú niektoré údaje pre vyššie kompresné pomery. Výber algoritmu závisí od typu komprimovaných údajov a prijateľnej úrovne straty údajov. Mnoho moderných kompresných programov využíva kombináciu týchto techník na optimalizáciu efektívnosti kompresie.