Metode Kompresi Rasio Kompresi Dictionary Coding

Fahrur Razi : Analisis Pengaruh Panjang Bit Kode Pada Kinerja Program Kompresi Yang Menggunakan Algoritma Lempel Ziv Welch LZW, 2009. USU Repository © 2009

2.2 Metode Kompresi

Terdapat banyak metode kompresi dan metode-metode tersebut dapat dibagi menjadi: 1. Metode Lossless Menurut Mengyi 2006, hal:5 kompresi lossless adalah kompresi data yang menghasilkan file data hasil kompresi yang dapat dikembalikan menjadi file data asli sebelum dikompresi secara utuh tanpa perubahan apapun. Kompresi jenis ini ideal untuk kompresi teks. Algoritma yang termasuk dalam metode kompresi lossless diantaranya adalah dictionary coding dan huffman coding. 2. Metode Lossy Menurut Mengyi 2006, hal:6 kompresi data yang menghasilkan file data hasil kompresi yang tidak dapat dikembalikan menjadi file data sebelum dikompresi secara utuh. Ketika data hasil kompresi di-decode kembali, data hasil decoding tersebut tidak dapat dikembalikan menjadi sama dengan data asli tetapi ada bagian data yang hilang.

2.3 Rasio Kompresi

Menurut Mengyi 2006, hal:11 rasio kompresi adalah ukuran dari output stream dibagi dengan ukuran dari input stream. Misalnya nilai rasio kompresi adalah 0.6 itu berarti data yang terkompres menggunakan hanya 60 dari ukuran sebenarnya. Dan nilai rasio kompresi yang lebih dari 1 berarti data yang dikompres malah membesar. Rasio = 100 _ _ _ _ ×     asli file Ukuran i terkompres file Ukuran 2.1

2.4 Dictionary Coding

Fahrur Razi : Analisis Pengaruh Panjang Bit Kode Pada Kinerja Program Kompresi Yang Menggunakan Algoritma Lempel Ziv Welch LZW, 2009. USU Repository © 2009 Menurut Mengyi 2006, hal:117 Dictionary Coding adalah metode yang menggunakan sekumpulan daftar frase kamus, yang diharapkan berisikan banyak frase yang terdapat pada file sumber, dimana kamus digunakan untuk menggantikan fragmen dari sumber dengan pointer kamus tersebut. Kompresi hanya dapat dilakukan jika pointer yang dibutuhkan kurang dari ukuran fragmen tersebut. Dalam banyak hal, metode dictionary lebih mudah dimengerti daripada metode probabilistik. Metode dictionary yang termudah dibuat adalah metode dengan menggunakan kamus yang tetap statis dimana kamus ini telah ada pada coder dan decoder. Untuk file teks misalnya teks bahasa inggris, beberapa ribu kata yang paling sering digunakan sebagai dictionary. Jika file sumber adalah file yang berisi kode sumber sebuah bahasa pemrograman tertentu misalnya bahasa C, maka daftar keyword dan standard library function dapat digunakan sebagai dictionary. Dictionary yang tetap statis lebih baik untuk situasi tertentu, tetapi setidaknya terdapat dua permasalahan serius. Penambahan, perubahan, penghapusan pada dictionary harus mengubah juga seluruh program kompresi yang telah tersebar luas. Permasalah kedua adalah dictionary yang statis tidak dapat melakukan kompresi pada teks yang tidak terdapat pada dictionary. Misalnya bahasa pemrograman C, dimana kompresi tidak dapat dilakukan pada nama variabel yang dibuat oleh programer Hankerson et al, 2003. Hal yang terpenting pada metode Dictionary adalah bagaimana menciptakan algoritma yang dapat mengadaptasi seluruh jenis file sumber, dan biasanya untuk melakukan harus dilakukan scan pada file tersebut. Akan tetapi, komunikasi melalui modem yang misalnya V.42bis dimana penggunaan dictionary yang statis tidak digunakan melainkan penambahan dictionary akan dilakukan secara on-the-fly Hankerson et al, 2003. Metode Adaptive dictionary ditemukan oleh Ziv dan Lempel pada tahun 1977 dan 1978. Sehingga kedua algoritma tersebut kemudian dikenal luas sebagai LZ77 dan LZ78. Algoritma LZ77 telah diaplikasikan pada Lharc, PKZIP, GNU zip, Info-ZIP, dan Portable Network Graphics PNG yaitu format kompresi citra lossless yang Fahrur Razi : Analisis Pengaruh Panjang Bit Kode Pada Kinerja Program Kompresi Yang Menggunakan Algoritma Lempel Ziv Welch LZW, 2009. USU Repository © 2009 didesain sebagai penerus dari GIF. Algoritma LZ78 telah digunakan pada standar komunikasi modem V.42bis, dan program kompres Unix bernama compress, dan pada GIF format file citra Hankerson et al, 2003. Algoritma Lempel Ziv ini terbagi atas dua varian utama yaitu LZ77 dan LZ78. Perbedaan utama kedua algoritma ini adalah pada teknik pembuatan dictionary. Pada