• Tidak ada hasil yang ditemukan

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN. pdf

N/A
N/A
Protected

Academic year: 2018

Membagikan "ANALISIS PERBANDINGAN ALGORITMA HUFFMAN. pdf"

Copied!
5
0
0

Teks penuh

(1)

Analisis Perbandingan Algoritma Huffman Dengan Algoritma (Lempel-Zip-Welch ) Pada Kompresi 21

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DENGAN

ALGORITMA (LEMPEL-ZIP-WELCH ) PADA KOMPRESI

GAMBAR MENGGUNAKAN METODE EXPONENSIAL

Denni M. Rajagukguk (0911411)

Mahasiswa Program Studi Teknik Informatika, STMIK Budidarma Medan Jl. Sisingamangaraja No.338 Simpang Limun Medan

www.stmik-budidarma.ac.id //Email : [email protected]

ABSTRAK

Citra atau gambar adalah alat yang manusia pakai untuk menyampaikan pesan kepada manusia lainnya. Gambar atau citra telah berkembang seiring dengan perkembangan peradaban manusia. Bentuknya tidak lagi hanya lukisan seperti zaman prasejarah. Kini ada foto, gambar yang dihasilkan dengan menangkap cahaya pada medium yang telah dilapisi bahan kimia peka cahaya atau sensor digital, lalu ada film, gambar yang bergerak.

Besarnya ukuran data yang harus dikirim melampaui kecepatan transmisi yang dimiliki oleh perangkat keras yang ada, sehingga masih terdapat delay time yang relatif besar. Selain itu media penyimpanan seperti floppy disk, hard disk, dan compact disk mempunyai kapasitas yang terbatas. Oleh karena itu, untuk mengatasi masalah ini digunakanlah kompresi data.

Ada banyak sekali teori dan metode untuk kompresi data, di antaranya metode Huffman, Run-Length Encoding (RLE), Lempel-Zip-Welch (LZW), Shanon-Fano, dan beberapa metode lainnya. Umtuk membandingkan hasil dari kompresi citra algoritma Huffman dan algoritma LZW maka digunakan metode eksponensial.

Kata Kunci : Citra, kompresi, algoritma Huffman, Algoritma LZW, Metode Eksponensial

1. Latar Belakang

Gambar atau citra telah berkembang seiring dengan perkembangan peradaban manusia. Bentuknya tidak lagi hanya lukisan seperti zaman prasejarah. Kini ada foto, gambar yang dihasilkan dengan menangkap cahaya pada medium yang telah dilapisi bahan kimia peka cahaya atau sensor digital, lalu ada film, gambar yang bergerak. Citra atau gambar adalah alat yang manusia pakai untuk menyampaikan pesan kepada manusia lainnya. Hingga saat ini pengiriman informasi secara real time masih mengalami kendala. Di antaranya adalah besarnya ukuran data yang harus dikirim melampaui kecepatan transmisi yang dimiliki oleh perangkat keras yang ada, sehingga masih terdapat delay time yang relatif besar. Selain itu media penyimpanan seperti floppy disk, hard disk, dan compact disk mempunyai kapasitas yang terbatas.

Jika data yang akan disimpan pada media penyimpanan semakin bertambah dan berukuran besar, maka media penyimpanan tidak dapat menyimpan data tersebut karena melebihi kapasitas. Oleh karena itu, untuk mengatasi masalah ini digunakanlah kompresi data. Kompresi data merupakan salah satu kajian di dalam ilmu komputer yang bertujuan untuk mengurangi ukuran file sebelum menyimpan atau memindahkan data tersebut ke dalam media penyimpanan. Kompresi data terdiri dari dua proses utama yaitu kompresi dan dekompresi atau pemulihan data kembali

seperti aslinya. Jika suatu file dikompresi, maka file tersebut harus dapat dibaca kembali setelah file tersebut didekompresi.

Ada dua teknik yang dapat dilakukan dalam melakukan kompresi data yaitu Lossless Compression dan Lossy Compression. Lossless Compression merupakan kompresi data dimana hasil dekompresi dari data yang terkompresi sama dengan data aslinya dan tidak ada informasi yang hilang. Sedangkan Lossy Compression adalah kompresi data di mana hasil dekompresi dari data yang terkompresi tidak sama dengan data aslinya karena ada informasi yang hilang, tetapi masih dapat ditolerir oleh persepsi mata. Ada banyak sekali teori dan metode untuk kompresi data, di antaranya metode Huffman, Run-Length Encoding (RLE), Lempel-Zip-Welch (LZW), Shanon-Fano, dan beberapa metode lainnya.

Algoritma Huffman adalah suatu algoritma kompresi tertua yang disusun oleh David Huffman pada tahun 1952. Algoritma tersebut digunakan untuk membuat kompresi jenis lossy compression, yaitu pemampatan data dimana tidak ada satu byte pun data yang hilang sehingga data tersebut utuh dan disimpan sesuai dengan aslinya.

(2)

Analisis Perbandingan Algoritma Huffman Dengan Algoritma (Lempel-Zip-Welch ) Pada Kompresi 22 1978. Algoritma ini dirancang untuk cepat dalam

implementasi tetapi biasanya tidak optimal karena hanya melakukan kompresi dengan hanya menggunakan dictionary, dimana fragmen fragmen teks digantikan dengan indeks yang diperoleh dari sebuah kamus.

2. Landasan Teori 2.1 Algoritma Huffman

Algoritma Huffman adalah suatu algoritma kompresi tertua yang disusun oleh David Huffman pada tahun 1952. Algoritma tersebut digunakan untuk membuat kompresi jenis lossy compression, yaitu pemampatan data dimana tidak ada satu byte pun data yang hilang sehingga data tersebut utuh dan disimpan sesuai dengan aslinya. Pada sejarahnya, Huffman sudah tidak dapat membuktikan apapun tentang kode apapun yang efisien, tapi ketika tugasnya hampir final ia mendapatkan ide untuk menggunakan pohon binary untuk menyelesaikan masalahnya untuk mencari kode yang efisien. Pada dasarnya, algoritma Huffman ini bekerja seperti mesin sandi morse, yang membentuk suatu kode dari suatu karakter sehingga karakter tersebut memiliki rangkaian bit yang lebih pendek dibandingkan sebelumnya.

Tahapan proses kompresi algoritma Huffman : 1. Hitung banyaknya jenis karakter dan jumlah

dari masing masing karakter yang terdapat dalam sebuah file.

2. Susun setiap jenis karakter dengan urutan jenis karakter yang jumlahnya paling sedikit ke yang jumlahnya paling banyak.

3. Buat pohon biner berdasarkan berdasarkan urutan karakter dari yang jumlahnya terkecil ke yang terbesar dan member kode untuk tiap karakter.

4. Ganti data yang ada dengan kode bit berdasarkan pohon biner.

5. Simpan jumlah bit untuk kode bit yang terbesar, jenis karakter yang diurutkan dari frekuensi keluarnya terbesar ke terkecil beserta data yang sudah berubah menjadi kode bit sebagai data hasil kompresi.

2.2 Algoritma LZW

Lempel-ziv-Welch (LZW) adalah algoritma kompresi loseless universal yang diciptakan Ambraham Lempel, Jacob Ziv, dan Terry Welch. Diciptakan oleh Welch tahun 1984 sebagai implementasi dan pengembangan algoritma LZ78 yang diciptakan oleh Lempel dan Ziv pada tahun 1978. Algoritma ini dirancang untuk cepat dalam implementasi tetapi biasanya tidak optimal karena hanya melakukan kompresi dengan hanya menggunakan dictionary, dimana fragmen fragmen teks digantikan dengan indeks yang diperoleh dari sebuah kamus. Prinsip sejenis juga digunakan dalam kode Braille, dimana kode kode khusus

digunakan untuk mempresentasikan kata kata yang ada. Pendekatan ini bersifat adaptif dan efektif karena banyak karakter dapat dikodekan dengan mengacu pada string yang telah muncul sebelumnya dalam teks. Prinsip kompresi tercapai jika refrensi dalam bentuk pointer dapat disimpan dalam jumlah bit yang lebih dibandingkan dengan string aslinya.

2.3 Metode Eksponensial

Menurut Marimin (2005), yang dikutip oleh Didie Nanda Pribadi (2011) Metode Perbandingan Eksponensial (MPE) merupakan salah satu metode untuk menentukan urutan prioritas alternatif keputusan dengan kriteria jamak.

2.3.1 Prosedur Metode Perbandingan Eksponensial

Dalam menggunakan Metode Perbandingan Eksponensial ada beberapa tahap yang harus dilakukan, yaitu:

a. Menyusun alternatif-alternatif keputusan yang akan dipilih.

b. Menentukan kriteria atau perbandingan keputusan yang penting untuk dievaluasi. c. Menentukan tingkat kepentingan dari setiap

kriteria keputusan.

d. Melakukan penilaian terhadap semua alternatif pada setiap kriteria.

e. Menghitung skor atau nilai total setiap alternative.

f. Menentukan urutan prioritas keputusan didasarkan pada skor atau nilai total masing-masing alternatif.

2.3.2 Formulasi Matematika Metode Perbandingan Eksponensial

Menurut Marimin (2005:22), dikutip oleh Didie Nanda Pribadi (2011) Formulasi perhitungan skor untuk setiap alternative dalam metode perbandingan eksponensial adalah sebagai berikut:

Eksponensial Keterangan :

TNi : Total nilai alternatif ke-i

RKij : Derajat kepentingan relatif kriteria ke-j pada pilihan keputusan i

TKKj : Derajat kepentingan kriteria keputusan ke-j; TKKj > 0; bulat

m : Jumlah kriteria keputusan n : Jumlah pilihan keputusan j : 1,2,3,…m; m : Jumlah kriteria i :1,2,3,…,n; n : Jumlah pilihan

(3)

Analisis Perbandingan Algoritma Huffman Dengan Algoritma (Lempel-Zip-Welch ) Pada Kompresi 23 3. Pembahasan

3.1.Analisa Perbandingan Algoritma Huffman dan Algoritma LZW

Analisa perbandingan pada algoritma Huffman dan algoritma LZW dilakukan dengan tujuan agar kualitas dari masing masing algoritma. Jenis gambar yang akan dikompresi dengan format bitmap dengan ekstensi .bmp.

3.1.1. Proses Cara Kerja Kompresi Citra Cara kerja kompresi dilakukan dengan penerapan yang dimilikinya dan mengkompresinya dengan aturan aturan yang sesuai dengan algoitma tersebut.

Dari hasil kompresi masing masing maka didapat perbandingan kapasitas setelah dikompresi maupun rasio setelah dilakukannya kompresi. Proses cara kerja algoritma Huffman dan algoritma LZW dilakukan citra berformat .bmp, hal ini untuk mengetahui hasil perbandingan dari kompresi Huffman dan LZW.

3.1.2. Melakukan Kompresi dengan Huffman Tree

Algoritma Huffman ini merupakan salah satu teknik kompresi dengan cara melakukan pengkodean dalam bentuk bit untuk mewakili data karakter. Adapun cara kerja algoritma ini sebagai berikut:

1. Menghitung banyaknya jenis karakter dan jumlah dari masing masing karakter yang terdapat dalam sebuah file.

2. Menyusun setiap karakter dengan urutan jenis karakter yang jumlahnya paling sedikit ke jumlahnya yang paling banyak.

3. Membuat pohon biner berdasarkan urutan karakter dari yang jumlahnya yang terkecil ke yang terbesar, dan member kode untuk tiap karakter.

4. Mengganti data yang ada dengan kode bit berdasarkan kode biner.

Menyimpan jumlah bit untuk kode bit yang terbesar, jenis karakter yang diurutkan dari frekuensi keluarnya terbesar ke terkecil beseta data yang sudah berubah menjadi kode bit sebagai data hasil kompresi.

.

Gambar 1 : Citra 2D (Ukuran : 134 byte)

Matriks dari citra diatas adalah sebagai berikut diperoleh dari aplikasi Matlab:

255 187 129 148 236 190 175 184 186 177 128 223 202 211 184 147 203 186 192 172 235 189 196 204 209

Bila matriks ini sebuah citra gray-level berukuran 5 x 5 pixel, maka nilai elemen matriks (pixel), menyatakan tingkat keabuan citra. Tetapi bila matriks ini mewakili sebuah citra berwarna, maka nilai elemen matriksnya menyatakan warna. Setiap pixel dalam sebuah citra yang dikode 8 bit, berarti citra tersebut memiliki tingkat keabuan atau memiliki 256 warna.

Dengan mengambil contoh diatas dan dengan menggunakan algoritma Huffman, dikembangkan sebuah algoritma untuk mengkompres data citra sebagai berikut:

a. Buat data citra yang berupa data matriks tesebut menjadi vector, sehingga didapat vector[255,187,129,148,236,190,175,184,186, 177,128,223,202,211,184,147,203,186,192,17 2,235,189,196,204,209].

Besarnya data citra = 25 byte

b. Baca vector tersebut dan tentukan nilai warna yang ada serta frekuensi munculnya. Hasilnya adalah

Tabel 1 : Frekuensi dari data vector Dat

a

Frekue

nsi Data

Frekue nsi Data

Frekue nsi

186 2 147 1 211 1

184 2 235 1 172 1

255 1 177 1 196 1

187 1 128 1 204 1

129 1 223 1 209 1

148 1 203 1

236 1 192 1

190 1 189 1

175 1 202 1

c. Urutkan warna dari yang fekuensinya terkecil ke yang frekuensinya yang terbesar 186,184,255,187,129,148,236,190,175,177,12 8,223,202,211,147,203,192,172,235,189,196, 204,209

d. Mengganti data warna dengan kode bit berdasarkan kode biner.

Table 2 : Kode Biner dari Karakter Citra Data Kode Bit

186 1

184 01

255 001

187 0001 Y

(4)

Analisis Perbandingan Algoritma Huffman Dengan Algoritma (Lempel-Zip-Welch ) Pada Kompresi 24 penghitungan untuk tempat yang dibutuhkan memori untuk file yang telah dikompresi.

Tabel 3 : Perhitungan Hasil Kompresi Algoritma Template

Untuk citra setelah dikompresi = 279 bit Ukuran citra semula sebelum dilakukan kompresi file citra terdiri dari 5 x 5 pixel =25 byte dimana dalam satuan bit menjadi 25 x 8 bit menjadi 200 bit.

Rasio = 100 - (ukuran citra hasil kompresi / ukuran citra semula) x 100%

Rasio = 100 - (279/200) x 100% dalam satuan bit menjadi 25 x 8 bit menjadi 200 bit. Tapi setelah dilakukan kompresi menjadi 279 bit

(5)

Analisis Perbandingan Algoritma Huffman Dengan Algoritma (Lempel-Zip-Welch ) Pada Kompresi 25 Gambar 2 : Tampilan Program Utama

4.2 Tampilan Input Gambar

Ini merupakan tampilan program untuk menginput gambar dari directori penyimpanan gambar bitmap dengan ekstensi .*bmp. Gambar yang dapat dibuka oleh program ini adalah gambar yang berekstensi .*bmp.

Gambar 3 : Tampilan Input Gambar

4.3 Tampilan Hasil

Ini merupakan hasil dari input gambar maka kapasitas atau ukuran dari gambar itu akan keluar, sehingga user mengetahui ukuran gambar tersebut.

Gambar 4 : Tampilan Hasil Input Gambar

Setelah proses input gambar dilakukan maka gambar akan keluar dan kapasitas dari gambar tersebut juga keluar. Langkah selanjutnya yang dilakukan adalah menekan tombol kompresi Huffman untuk melakukan kompresi Huffman dan tombol kompresi LZW untuk melakukan kompresi

dengan algoritma LZW. Setelah itu, tekan tombol bandingkan untuk membandingkan hasil kompresi Huffman dengan kompresi LZW.

5. Kesimpulan

Berdasarkan analisa dan pembahasan yang dilakukan, maka dapat disimpulkan sebagai berikut: 1. Algoritma LZW (Lempel Zip Welch) menghasilkan performa waktu kompresi yang kurang baik tetapi algoritma ini memiliki kinerja kompresi yang tinggi pada format citra bmp.

2. Tingkat efisiensi memori file hasil kompesi dengan menggunakan algoritma Huffman dan algoritma LZW diukur dari besarnya rasio kompresi yang dihasilkan. Citra yang mempunyai sebaran nilai pixel tidak merata memiliki tingkat efisiensi lebih besar dibandingkan dengan citra dengan nilai pixel yang merata.

3. Jumlah iterasi dan kapasitas hasil kompresi dibandingkan untuk mengetahui algoritma mana yang lebih baik diantara algoritma Huffman dan algoritma LZW.

Daftar Pustaka

[1]. Sarifuddin Madenda, Hayet L. dan I. Bayu.”Kompresi Citra Berwarna Menggunakan Metode Pohon Biner Huffman”. (Diakses tanggal )

[2]. Adytia Wijaya, Suryarini Widodo. “Kinerja dan Performa Algoritma Kompresi Lossless Terhadap Objek Citra Digital”.(Diakses tanggal)

[3]. Linawati, Henry P.Panggabean. 2004.”Perbandingan Kinerja Algoritma Kompresi Huffman,LZW, Dan DMC Pada Berbagai Tipe File”. (Diakses tanggal) [4]. Roy Indra Haryanto.2009. ”Kompresi Data

Dengan Algoritma Huffman Dan Perbandingannya Dengan Algoritma LZW Dan DMC”. (Diakses tanggal )

[5]. T.Sutoyo,S.Si dkk. Teori Pengolahan Citra Digital. ANDI. Semarang, 2009.

[6]. Http://en.wikipedia.org/wiki/Huffman_codin g, diakses 28 Mei 2013.

[7]. http://www.Replaygain.hydrogenaudio.org/fi

le format wav.html, diakses 30 Mei 2013 [8].

http://gpgpu.org/wp/wp-content/uploads/2010/matlab_logo.gif, diakses 30 Mei 2013

[9]. http://gpgpu.org/wp/wp-content, diakses 30 Mei 2013

Gambar

Table 2 : Kode Biner dari Karakter Citra
Tabel 3 : Perhitungan Hasil Kompresi
Gambar 2 : Tampilan Program Utama

Referensi

Dokumen terkait

Skripsi yang berjudul “Tinjauan Hukum Pidana Islam terhadap Putusan Pengadilan Negeri Kepanjen Nomor 302/Pid.Sus/2014/PN.Kpj tentang Tindak Pidana Mengangkut Hasil

Pada umumnya, perusahaan dengan profitabilitas yang tinggi dapat menciptakan cash flow s yang lebih besar yang berdampak pada besarnya laba ditahan perusahaan yang

[r]

Untuk meta description dan meta keyword pengisiannya harus dibuat sesuai dengan konten yang ada dalam website, hal ini dilakukan untuk mempermudah search engine

Tujuan penelitian ini adalah untuk mengetahui pengaruh pendidikan, alasan memasuki dunia usaha, lama usaha berdiri, jumlah modal awal, dan tipe kepemilikan terhadap

4) Penghayatan atas maksud dan makna pekerjaan, yakni bila seseorang karyawan tetap tahu kegunaan dari pekerjaan, dan juga sudah tahu betapa sangat pentingnya pekerjaannya. Maka

UPAYA PENEGAKAN HUKUM APARAT KEPOLISIAN DALAM TINDAK PIDANA PERDAGANGAN..

MTs Unggulan Nurul Islam adalah lembaga yang berbasis pesantren, yang menjadikan akhlak sebagai Visi utama, sebagaimana yang disampaikan oleh Kepala Madrsaha