Adatok tömörített tárolása.

A veszteséges és veszteségmentes tömörítés felhasználási területei

 

Miért kell tömöríteni?

Másolás, archiválás,

tár pazarolás, lassú, drága adatfeldolgozás, adattovábbítás

internetes adatátvitel,

Redundancia

Ugyanazt az információt különböző mennyiségű adat hordozhatja anélkül, hogy megjelenítése megváltozna. Redundáns egy adathalmaz, ha mennyisége több mint amennyi az információ hordozásához és megjelenítéséhez szükséges lenne. Tehát azokat az információkat, melyek az információ hordozásához és megjelenítéséhez nem kellenek, elhagyhatók, anélkül hogy a megjelenítendő információ megváltozna.

Pl: képi redundancia: egy képben lehetnek belső összefüggések, melyeket kihasználva az adathalmaz mérete csökkenthető. Például: képsorozatok egymás utáni képkockái, csak kis mértékben térnek el egymástól, ilyenkor elég csak az eltérés megadása.

Tömörítési algoritmusok

Az adattömörítés feladata, hogy egy üzenetsorozatot gazdaságosan reprezentáljon, vagyis kódoljon úgy, hogy egyrészt a kódolt sorozat minél rövidebb legyen, másrészt a kódsorozatból az üzenetsorozat egyértelműen reprodukálható legyen.

A tömörítés minőségét a tömörítési aránnyal jellemezhetjük, ami a tömörített hossznak és az eredeti adatsorozat hosszának az aránya.

Veszteségmentes

Az adatok eredeti állapotban állíthatók vissza,

kisebb arányú tömörítésre ad módot,

dokumentumok, programok tárolására használják

Veszteséges

az eredetihez hasonló, de azzal minőségileg nem egyező adatok kaphatók vissza,

veszteség növelésével nagyobb tömörítési arány érhető el,

multimédiás adatok méretének csökkentésére használják

Veszteségmentes tömörítés

A változó hosszúságú kódolás: Huffman-kódolás:a legrövidebb bitsorozatot rendeli a leggyakoribb mintázathoz, s a leghosszabbat a legritkábbhoz.

A tömörítőprogram első lépésként felállítja a tömörítendő állomány bájtjainak gyakoriságtáblázatát, majd ennek birtokában "leosztja a lapokat", vagy egy jobb hasonlattal: szótárt készít. A gyakoribb bájtokhoz rövidebb (2-3 bites), a ritkábbakhoz hosszabb (esetleg 8 bitnél is hosszabb) kódot rendel, majd e szerint a szótár szerint "lefordítja" a fájlt, s a tömörített állományba beleteszi a "szótárt" is, hogy a kicsomagoláskor ne kelljen külön szótárállománnyal vesződnünk. (Őstömörítővel, amelyből két állomány pottyant ki: egy tömörített eredmény meg egy szótár.)

 

A világ összes veszteségmentes tömörítője ezen az elven ­ vagy az ebből kifejlesztett Lempel­Ziv-algoritmus alapján Az LZW tömörítés az eljárás kidolgozóiról (A.Lempel, J.Ziv, T.A.Welch) kapta a nevét.­ működik (ARJ, ZIP, PK, LHA stb.).

Különbségi kódolás: egymásra következő adatok csak lassan változnak (pl egy fénykép árnyalatai) egymást követő értékek közti különbséget rögzíti.

Futamhossz kódolás (RLE): azonos értékeket tartalmazó sorozatokat két adattal, a sorozat elemével, és az ismétlődések számával adják meg. (pl. képeken, azonos színű képrészlet) 

Tömörítés után a tömörített állományból az eredeti visszaállítható.  Egy kibontott állomány szükség esetén újra tömöríthető.

Veszteséges tömörítés

Mindennapi alkalmazásai a beszéd, zene, kép, videó tömörítése.
Veszteséges eljárásokat akkor alkalmazhatunk, ha nincs szükség a tömörített információ valamennyi bitjének a megőrzésére; így dolgoznak például a digitalizált képet (mozgóképet) és a hangot tömörítő eljárások.

A tömörítés előtt általában elemzik az információt, és a látás, illetve a hallás fiziológiáját figyelembe véve hagynak el részeket a digitalizált hangból vagy képből. Ezért dolgoztak ki külön eljárásokat és szabványokat a képek, a mozgóképek és a hangok veszteséges tömörítéséhez. A veszteség fejében ezekkel a módszerekkel sokkal nagyobb tömörítési arány érhető el, mint a veszteség nélküli eljárásokkal.

JPEG, MPEG, MP3, Dolby Digital

A tömörítés után a tömörített állományból az eredeti állományból az eredeti nem állítható vissza. A kibontott állomány újra tömörítésekor további veszteségek lépnek fel.

 

Hang

hangtömörítés

Az összes hangtömörítési eljárás hatékony algoritmusokkal olyan információkat töröl a hangból, amelyeket az emberi fül már nem hall. Például ha valaki egy nagyot kiált és közben a lábával toppant, a kiáltás hallható lesz, de a toppantás valószínűleg nem. A toppantás elhagyásával kevesebb lesz az információ és kisebb lesz a fájlméret, de a fül számára az eredmény ugyanaz lesz. Mivel a mély hangok elnyomják a velük egy időben felhangzó, s gyengébb vagy az övékkel azonos intenzitású magasakat, azért a tömörítő a halkabb/magasabb frekvenciákat egyszerűen elhagyja a hangképből.

 

Kép

Állókép tömörítések:

BMP;GIF;JPG;TIFF …

fraktáltömörítés

Figyelembe veszi, hogy az emberi szem érzékeny a kontúrokra, s ennek megőrzésére törekszik.

Eljárás a képet apró részekre (domainokra) bontja A domainokhoz keres hasonló, de eltérő méretű és elhelyezkedésű másik részt. A fájl a domainok átlagos színét és a hozzájuk tartozó leképezés adatait tartalmazzák.

 

Mozgókép

A  szem számára szükségtelen adatokat törli. Egy széket 60 másodpercig ugyanott mutató tömörítetlen klip a szék adatait minden egyes képkockában tárolja. A videotömörítés esetében a székre vonatkozó információk csak egyetlen képkockában tárolódnak, a következő képkockák ugyanezt az információt használják fel. A tömörítésnek ez fajtája a WMV, MPEG és más videoformátumok által a jó minőség megőrzésével történő tömörítésre alkalmazott matematikai trükkök egyike.

Az MPEG szabványok ötféle tömörítési módszert használnak. Az első három egyedi állóképek tömörítésére való; az utolsó kettő "differenciális" tömörítés: az egymás után következő állóképek eltérését dolgozza fel.

megvizsgálja, hogy mi az eltérés az egymás utáni állóképek között, és csak a különbséget viszi át. Például ha a két egymás utáni képen ugyanaz a háttér, akkor az arra vonatkozó információ elhagyható.

az egymás utáni képek közötti különbség alapján megkísérli előre jelezni a következő képet. Például ha az előbbi képeken valamilyen változatlan alakzat mozgott a háttér előtt, akkor várhatóan így tesz a most következőn is.

Egy film tömörítésekor csoportokra bontják az egymás után következő képeket. A csoport első tagját önállóan kódolják az imént említett első három kódolás valamelyikével, a többit pedig az egyik vagy a másik differenciális tömörítéssel. Így a sorban minden n. kép önállóan, teljes tartalmával van tömörítve, a többi képből csak az előző képhez viszonyított különbséget rögzíti az állomány.