Skip to content
Snippets Groups Projects
Commit c24e33eb authored by Ladislav Zemek's avatar Ladislav Zemek
Browse files

conclusion done

parent d3f78bcb
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -711,9 +711,9 @@ Ačkoliv se může z~tabulek zdát, že čím větší $ e $, tím lepší kompr
 
Podobně jako u~měření LZ77, i zde dopadlo lépe testování na Calgary. Korpus Prague má příliš náhodná data a slovník vytváří pouze krátké fráze.
 
U~této a LZW metody jsem měřil i hloubku stromů, které reprezentují slovník. Zatím co u~Calgary meli slovníky jednotlivých částí souboru obvykle hloubku kolem sta, u~Prague ve většině případů nepřesáhla deset. V~některých případech byla hloubka pouze tři. Což znamená, že nejdelší zakódovaný řetězec mel délku tři. To se muže zdát jako nesmysl, ale do prvních třech pater stromu se vejde ($ 256^{2} + 256^{3} $) podřetězců delky dva a tři. To je 16 842 752 uzlů, což více než osmkrát přesahuje maximální počet uzlů ve slovníku pro parametr 22. Na datech s~vysokou entropií může docházet k~těmto případům. Proto se tyto metody nepoužívají například pro komprimaci obrázků. Ve vetšině případů je totiž zvětšují.
U~této a LZW metody jsem měřil i hloubku stromů, které reprezentují slovník. Zatím co u~Calgary meli slovníky jednotlivých částí souboru obvykle hloubku kolem sta, u~Prague ve většině případů nepřesáhla deset. V~některých případech byla hloubka pouze tři. Což znamená, že nejdelší zakódovaný řetězec mel délku tři. To se muže zdát jako nesmysl, ale do prvních třech pater stromu se vejde ($ 256^{2} + 256^{3} $) podřetězců delky dva a tři. To je 16 842 752 uzlů, což více než osmkrát přesahuje maximální počet uzlů ve slovníku pro parametr 22. K~těmto případům obvykle docházé na datech s~vysokou entropií. Z toho důvodu se tyto metody nepoužívají pro komprimaci obrázků. Ve vetšině případů je totiž zvětšují.
 
Z~naměřených dat v~tabulkách \ref{table:lz78Cal} a \ref{table:lz78Prag} je vidět, že mé odhady složitosti jsou správné. Rychlost komprese i dekomprese je přibližně stejná a nezávisí na velikosti parametru $ e $. Nicméně čas komprese mírně roste s~vyšším parametrem $ e $, kdežto dekomprese mírně klesá. Zatímco u~komprese je to způsobeno větší režijí při přidávání frází do slovníku, u~dekomprese se jedná o~stejný důvod jako u~LZ77. S~vyšším parametrem se snižuje počet tripletů a tím i režije s~jejich načítáním a zpracováním.
Z~naměřených dat v~tabulkách \ref{table:lz78Cal} a \ref{table:lz78Prag} je vidět, že mé odhady složitosti byly správné. Rychlost komprese i dekomprese je přibližně stejná a nezávisí na velikosti parametru $ e $. Nicméně čas komprese mírně roste s~vyšším parametrem $ e $, kdežto dekomprese mírně klesá. Zatímco u~komprese je to způsobeno větší režijí při přidávání frází do slovníku, u~dekomprese se jedná o~stejný důvod jako u~LZ77. S~vyšším parametrem se snižuje počet tripletů a tím i režije s~jejich načítáním a zpracováním.
 
Korpus Calgary dokázala metoda LZ77 zmenšit na 47~\% původní velikosti, což je nejlepší výsledek z~měření, nicméně metoda LZ78 zmenší Calgary na 51~\% za 35 krát kratší dobu než LZ77. Dá se tedy říci, že metoda LZ78 provádí podobně efektivní kompresi v~mnohem lepším čase.
 
......@@ -748,7 +748,13 @@ Korpus Calgary dokázala metoda LZ77 zmenšit na 47~\% původní velikosti, což
\pagebreak
\section{Měření LZW}
 
Metoda LZW je v mnoha ohledech podobná jako LZ78.
Metoda LZW je v mnoha ohledech podobná jako LZ78. Není tomu jinak ani u výsledků měření. Ty dopadly velmi podobně, co se rychlosti komprese týká, nicméně LZW dosáhla stejného komprimačního poměru s nižším parametrem. Při porovnání tabulek \ref{table:lzwCal} a \ref{table:lz78Cal} můžeme pozorovat, že při $ e = 20 $ byl komprimační poměr u LZW na korpusu Calgary lepší, než u LZ78.
Podobně jako u ostatních metod není čas dekomprese závislý na vstupním parametru $ e $. Je ovlivněn počtem tripletů na vstupu, nicméně jak jsem již psal u předchozích metod, ani zde neznamená vyšší parametr lepší kompresi.
V tabulce \ref{table:lzwPrag} je vidět, že od parametru $ e=20 $ se kompresní poměr nezlepšuje. Příčinou je rostoucí velikost tripletů zatímco jejich množství se zmenšuje jen velmi málo nebo vůbec. K tomu obvykle dochází, pokud se slovník nenaplní frázemi. To nastane v případě, že je parametr příliš velký oproti velikosti části souboru, který komprimuje. Tento případ nastal u měření s parametrem $ e = 21 $ a $ e = 22 $ v tabulce \ref{table:lzwPrag}.
Z dat je patrné že komprese i dekomprese probíhají velmi rychle.
 
\begin{table}[H]
\centering
......@@ -780,7 +786,13 @@ Metoda LZW je v mnoha ohledech podobná jako LZ78.
\end{table}
 
\begin{conclusion}
%sem napište závěr Vaší práce
Cílem této práce bylo navrhnout, analyzovat, implementovat a testovat kompresní algoritmy LZ77, LZ78 a LZW. Implementace byla provedena jako součást knihovny SCT.
Výsledkem práce je knihovna SCT rozšířená o výše zmíněné algoritmy. Analýza těchto metod mino jiné ukázala, že nejsou vhodné pro data s vysokou datovou entropií. Nicméně i přesto se hodí pro komprimaci běžného textu, případně i dat, kde se opakují delší podřetězce. Metody LZ78 a LZW dosahují v kratším čase podobného kompresního poměru jako LZ77. Je tedy možné je označit za efektivnější.
Všechny metody byly testovány na předem zvolených korpusech Calgary a Prague, aby bylo možné výsledky porovnávat. Všem metodám se povedlo korpus Calgary zmenšit o zhruba 50 \% a Prague o 25 \%.
I přes své nevýhody jsou metody poměrně efektivní a je možné je prostřednictvým knihovny SCT užívat v praxi.
\end{conclusion}
 
\bibliographystyle{csn690}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment