Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
kompresné techniky:
* bezstratová kompresia: Tento typ kompresie zaručuje dokonalú rekonštrukciu pôvodných údajov po dekompresii. Je to rozhodujúce pre súbory, v ktorých je neprijateľný aj malý kúsok straty údajov (napr. Textové dokumenty, zdrojový kód, tabuľky). Bežné metódy zahŕňajú:
* Kompresia založená na slovníku (LZ77, LZ78, LZW): Tieto algoritmy identifikujú opakujúce sa sekvencie bajtov (alebo znakov) v údajoch a nahradia ich kratšími odkazmi. Pomyslite na to ako na vytvorenie slovníka bežných fráz a používanie kódov na ich reprezentáciu. Príklady zahŕňajú GZIP a Zip (ktoré často používajú kombináciu metód).
* Huffman Coding: Táto štatistická metóda priraďuje kratšie kódy častejším symbolom (bajtov alebo znakov) a dlhším kódom k menej častým. Je to veľmi efektívne pre textové súbory, kde sa určité znaky javia oveľa častejšie ako iné.
* aritmetické kódovanie: Podobne ako pri kódovaní Huffman, ale namiesto priradenia kódov s pevnou dĺžkou priraďuje frakčné kódy, čo vedie k mierne lepším kompresným pomerom.
* Burrows-Whoeler Transformácia (BWT): Táto technika usporiada údaje na zlepšenie efektívnosti iných metód kompresie, ako je kódovanie run-dĺžky (RLE). Často sa používa v spojení s transformáciou presunu na prednú transformáciu (MTF) a Huffmanov kódovanie (ako je vidieť v BZIP2).
* kontextové miešanie: Toto je pokročilejšia technika, v ktorej kompresný algoritmus pri výbere kódu zohľadňuje kontext obklopujúci každý bajt/znak. Pomáha to využívať komplexné prepúšťanie, ktoré môžu chýbať iné metódy.
* Strata kompresia: Tento typ kompresie obetuje niektoré údaje, aby sa dosiahli vyššie kompresné pomery. Je to prijateľné pre údaje, kde je malá strata kvality tolerovateľná (napr. Obrázky, zvuk, video). Bežné metódy 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.
* mp3 (audio): Používa percepčné kódovanie na odstránenie zvukov, ktoré budú pravdepodobne maskované inými zvukmi.
* mPeg (video): Na efektívne komprimovanie videa používa rôzne techniky, ako je kompenzácia pohybu a DCT.
Proces kompresie/dekompresie:
1. Analýza: Kompresor analyzuje vstupné údaje na identifikáciu vzorov a prepúšťania. Táto analýza je špecifická pre algoritmy.
2. Transformácia: Údaje sa transformujú na základe zvoleného algoritmu. To by mohlo zahŕňať preskupenie bajtov, vytváranie slovníkov alebo aplikovanie matematických transformácií.
3. kódovanie: Transformované údaje sú kódované do kompaktnejšej reprezentácie pomocou kódov (Huffmanove kódy, aritmetické kódy atď.). Často sú zahrnuté metadáta o použitej metóde kompresie.
4. SKLADOVANIE/Prenos: Komprimované údaje sú uložené v súbore alebo prenášané v sieti.
5. dekódovanie: Dekompresor prijíma komprimované údaje a obráti proces kódovania.
6. inverzná transformácia: Dekompresor aplikuje inverziu transformácie použitej počas kompresie.
7. Rekonštrukcia: Pokiaľ ide o bezstratovú kompresiu, pôvodné údaje sú dokonale zrekonštruované. V prípade stratovej kompresie sa rekonštruuje úzka aproximácia pôvodných údajov.
Softvér a hardvér:
Rôzne softvérové nástroje (ako „GZIP`,` Zip`, `7-Zip`,` BZIP2`) a knižnice implementujú tieto algoritmy. Moderné CPU majú často pokyny, ktoré urýchľujú určité kompresné operácie, a špecializovaný hardvér (napríklad spoluzakladateľov kompresie) môže výrazne urýchliť tento proces pre veľmi veľké súbory. Poskytovatelia cloudového úložiska tiež využívajú optimalizované kompresné techniky na stupnici.