tanszek:oktatas:infrendalapjai_architekturak:informacio_feldolgozas:toemoerites
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tanszek:oktatas:infrendalapjai_architekturak:informacio_feldolgozas:toemoerites [2024/11/12 19:12] – [Huffman kódolás] knehez | tanszek:oktatas:infrendalapjai_architekturak:informacio_feldolgozas:toemoerites [2024/11/15 18:01] (current) – knehez | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ===== Adattömörítő eljárások ===== | ||
| A tömörítő eljárások lényege: olyan változó szóhosszúságú kódot választunk, | A tömörítő eljárások lényege: olyan változó szóhosszúságú kódot választunk, | ||
| Line 53: | Line 54: | ||
| ^Karakter^Gyakoriság^ | ^Karakter^Gyakoriság^ | ||
| - | |A|7| | + | |A|9| |
| |B|3| | |B|3| | ||
| |C|1| | |C|1| | ||
| Line 59: | Line 60: | ||
| |E|1| | |E|1| | ||
| |F|1| | |F|1| | ||
| - | |G|2| | + | |G|1| |
| |H|1| | |H|1| | ||
| Line 115: | Line 116: | ||
| megjegyzés: | megjegyzés: | ||
| + | |||
| + | ===== LZW kódolás ===== | ||
| + | |||
| + | Ennél a módszernél, | ||
| + | |||
| + | === Algoritmusa === | ||
| + | |||
| + | Kiindulásként a kódtáblázat tartalmazza a forrás összes előforduló elemét. | ||
| + | A kódoláskor az éppen aktuális pozíciótól kezdve addig olvassuk be a soron következő szimbólumokat egy bufferbe (**b**), amíg a sorozat szerepel a szótárban. Ha a soron következő karakter (**c**) az első olyan elem, amelyre **bc** már nem szerepel a szótárban, | ||
| + | |||
| + | Ezt a tömör leírást egy példa alapján tesszük érthetővé. | ||
| + | |||
| + | === Példa === | ||
| + | |||
| + | Kódoljuk a következő sorozatot LZW kódolással: | ||
| + | |||
| + | '' | ||
| + | |||
| + | Megvizsgálva az adatforrást, | ||
| + | |||
| + | - A kódoló először **d** karaktert veszi. | ||
| + | - A **d** benne van a szótárban, | ||
| + | - A **da** már nem szerepel jelenleg a szótárban, | ||
| + | - **d** 4-es indexét lejegyzi | ||
| + | - felveszi a szótárba **da** részszöveget a 6. bejegyzésbe és megy tovább **a**-val folytatva. | ||
| + | - Az **a** szerepel a szótárban, | ||
| + | |||
| + | '' | ||
| + | |||
| + | ^index^bejegyzés^ | ||
| + | |1|a| | ||
| + | |2|b| | ||
| + | |3|c| | ||
| + | |4|d| | ||
| + | |5|e| | ||
| + | |6|da| | ||
| + | |7|ab| | ||
| + | |8|bb| | ||
| + | |9|ba| | ||
| + | |10|ac| | ||
| + | |11|cd| | ||
| + | |12|dab| | ||
| + | |13|bba| | ||
| + | |14|acd| | ||
| + | |15|dabb| | ||
| + | |16|bac| | ||
| + | |17|cda| | ||
| + | |18|abb| | ||
| + | |19|bacd| | ||
| + | |20|de| | ||
| + | |21|ee| | ||
| + | |22|ec| | ||
| + | |23|cde| | ||
| + | |24|eec| | ||
| + | |25|cdee| | ||
| + | |||
| + | A Unix **compress** parancsa és a **GIF** (Graphics Interchange Format) képtömörítő eljárás is az **LZW** algoritmust alkalmazza. | ||
| + | ===== RLE kódolás ===== | ||
| + | |||
| + | Run-Length Encoding (RLE) – futáshossz kódolás. | ||
| + | |||
| + | A fentiekhez képes nagyon egyszerű, de mégis a gyakorlatban széleskörben használt kódolás. | ||
| + | |||
| + | Egyszerű tömörítési eljárás, amely a hosszasan ismétlődő azonos karaktereket, | ||
| + | Példa alapján könnyen érthető. | ||
| + | |||
| + | Kódoljuk a következő karaktereket RLE kódolással: | ||
| + | |||
| + | '' | ||
| + | |||
| + | === Kódolva === | ||
| + | |||
| + | '' | ||
| + | |||
| + | Melynek értelmezése: | ||
| + | |||
| + | Így tehát a Run-Length Encodinggal kódolt szöveg az eredeti 67 karaktert 18-cal írja le. Természetesen a valóságban nem karakterekkel, | ||
| + | |||
tanszek/oktatas/infrendalapjai_architekturak/informacio_feldolgozas/toemoerites.1731438759.txt.gz · Last modified: 2024/11/12 19:12 by knehez
