PADA KOMPRESI CITRA BMP
SKRIPSI
SYAHFITRI KARTIKA LIDYA
081402070
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA
ARIHTMETIC CODING DAN SHANNON-FANO
PADA KOMPRESI CITRA BMP
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Teknologi Informasi
SYAHFITRI KARTIKA LIDYA 081402070
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : IMPLEMENTASI DAN ANALISIS KINERJA
ALGORITMA ARITHMETIC CODING DAN
SHANNON-FANO PADA KOMPRESI CITRA BMP
Kategori : SKRIPSI
Nama : SYAHFITRI KARTIKA LIDYA
Nomor Induk Mahasiswa : 081402070
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
iii
PERNYATAAN
IMPLEMENTASI DAN ANALISIS KINERJA ALGORITMA
ARITHMETIC CODING DAN SHANNON-FANO
PADA KOMPRESI CITRA BMP
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 18 Juli 2012
PENGHARGAAN
Puji syukur saya panjatkan kehadirat Allah SWT, yang telah memberikan rahmat dan hidayah-Nya serta segala sesuatunya dalam hidup, sehingga saya dapat menyelesaikan penyusunan Skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Teknologi Informasi, Program Studi S1 Teknologi Informasi Universitas Sumatera Utara. Dalam pengerjaan Skripsi ini penulis banyak sekali mendapatkan dukungan, saran, dan nasehat dari berbagai pihak.
Dalam kesempatan ini penulis mengucapkan terima kasih kepada: Bapak M. Andri Budiman, ST.M.Comp.Sc.M.E.M, selaku Dosen Pembimbing I, yang telah bersedia meluangkan waktu dan pikirannya dalam membimbing, memotivasi untuk menyelesaikan Skripsi ini. Bapak Romi Fadillah Rahmat, B.Comp.Sc.M.Sc, selaku Dosen Pembimbing II, yang telah bersedia meluangkan waktu dan pikirannya dalam menyelesaikan Skripsi ini, Ucapan terima kasih juga ditujukan kepada Ketua dan Sekretaris Jurusan Prof. Dr. Opim Salim Sitompul, M.Sc dan Drs. Sawaluddin, M.IT, serta kepada dosen-dosen Program Studi Teknologi dan pegawai di Program Studi Teknologi Informasi, khususnya bu Delima, kak Umi, kak Maya, bang Faisal, kak Wardah, bu Lia yang telah membantu kelancaran proses administrasi.
Segala hormat dan terima kasih secara khusus penulis ucapkan kepada ayahanda Yonnes Hasan dan Ibunda Nova Mustika atas motivasi, kasih sayang, dan dukungan baik secara materi maupun do’a yang tak pernah putus yang diberikan kepada penulis, tak lupa kepada adik-adik tersayang Vayon Rachmat Ramadhan dan Sabilla Afiya, serta tante tersayang Julia Reveny telah memberi motivasi dan nasehat. Tidak lupa kepada seluruh sahabat penulis Stambuk 2008 yang selalu berusaha menjadi sahabat terbaik dan tidak mudah putus asa khususnya Karina Ayesha, Cahya, Ishri, Mauza, Karina Andi.
v
ABSTRAK
Perkembangan teknologi yang pesat, sangat berperan penting dalam pertukaran informasi yang cepat. Pada pengiriman informasi dalam bentuk citra masih mengalami kendala, diantaranya adalah karena besarnya ukuran citra sehingga solusi untuk masalah tersebut adalah dengan melakukan kompresi. Pada skripsi ini akan mengimplementasi dan membandingkan kinerja algoritma Arithmetic Coding dan
Shannon-Fano melalui perhitungan rasio kompresi, ukuran file hasil kompresi, kecepatan proses kompresi dan dekompresi. Berdasarkan seluruh hasil pengujian, bahwa algoritma Arithmetic Coding menghasilkan rata-rata rasio kompresi 62,88 % dan rasio kompresi Shannon-Fano 61,73 %, kemudian Arithmetic Coding rata-rata kecepatan dalam kompresi citra yaitu 0,072449 detik dan Shannon-Fano 0,077838 detik. Kemudian algoritma Shannon-Fano memiliki rata-rata kecepatan untuk dekompresi yaitu 0,028946 detik dan algoritma Arithmetic Coding 0,034169 detik. Citra hasil dekompresi pada algoritma Arithmetic Coding dan Shannon-Fano sesuai dengan citra asli. Dapat diambil kesimpulan dari hasil pengujian bahwa algoritma
Arithmetic Coding lebih efisien dalam mengkompresi citra *.bmp dibandingkan algoritma Shannon-Fano, walaupun dalam hal dekompresi Shannon-Fano sedikit lebih cepat dibandingkan Arithmetic Coding.
ABSTRACT
Rapid technological developments, a very important role in the rapid exchange of information. On the transmission of information in the form of the image is still experiencing problems, such as the large size of the image so that the solution to that problem is to do the compression. In this thesis will implement and compare the performance of the algorithm Arithmetic Coding and Shannon-Fano through the calculation of compression ratio, the size of the compressed file, the speed of compression and decompression process. Based on all the test results, that Arithmetic Coding algorithm yielded an average compression ratio of 62.88% and a compression ratio Shannon-Fano of 61.73%, Arithmetic Coding the average speed in image compression is 0.072449 seconds and Shannon-Fano 0,077838 seconds. Then the
Shannon-Fano algorithm has an average speed for the decompression algorithm is 0.028946 second and Arithmetic Coding 0.034169 seconds. Image decompression algorithm results Arithmetic Coding and Shannon-Fano line with the original image. Can be concluded from the results of testing that Arithmetic Coding algorithm is more efficient in image compression *.bmp than Shannon-Fano algorithm, although in terms of Shannon-Fano decompress a bit faster than Arithmetic Coding.
3.3.3.1 Proses Aplikasi Algoritma Arithmetic Coding dan Shannon-
Fano 55
4.1.1 Spesifikasi Perangkat Keras dan Perangkat Lunak yang Digunakan 64
4.1.2 Tampilan Menu Utama 65 4.2.2.1 Analisis Rasio dan Ukuran File Kompresi antara Algoritma
Arithmetic Coding dan Shannon-Fano 83 4.2.2.2 Analisis Ukuran File Citra Hasil Kompresi antara Algoritma
Arithmetic Coding dan Shannon-Fano 86 4.2.2.3 Analisis Kecepatan Proses Kompresi dan Dekompresi Citra
antara Algoritma Arithmetic Coding dan Shannon-Fano 87
Bab 5 Kesimpulan dan Saran 91
5.1 Kesimpulan 91
5.2 Saran 92
ix
Tabel 3.5Frekuensi Kemunculan Simbol 42
Tabel 3.6Proses Pengkodean 43
Tabel 3.7Kode dan Panjang Kode Shannon-Fano 43
Tabel 4.1 Citra Uji 77
Tabel 4.2 Rasio dan Ukuran File Kompresi Algoritma Arithmetic Coding
dan Shannon-Fano 83
Tabel 4.3 Kecepatan Proses Kompresi Algoritma Arithmetic Coding
dan Shannon-Fano 86 Tabel 4.4Kecepatan Proses Dekompresi Algoritma Arithmetic Coding
Gambar 3.6 Flowchart Proses Dekompresi Algoritma Shannon-Fano 41
Gambar 3.7 Citra Berwarna 2 x 2 Piksel 42
Gambar 3.8 Matriks Citra Berwarna 2 x 2 Piksel 42 Gambar 3.9 Matriks Citra Berwarna 2 x 2 Piksel setelah di Subtitusi ke SF 43 Gambar 3.10Proses Subtitusi SF Code ke Simbol Warna 44 Gambar 3.11Arsitektur Sistem Algoritma Arithmetic Coding 45 Gambar 3.12Arsitektur Sistem Algoritma Shannon-Fano Coding 46 Gambar 3.13 Komponen DFD Menurut Yourdan dan DeMarco 46 Gambar 3.14Rancangan DFD Level 0 Proses Kompresi / Dekompresi Algoritma
Arithmetic Coding 47
Gambar 3.15Rancangan DFD Level 1 P.0.1 untuk Proses Kompresi dan Dekompresi
Algoritma Arithmetic Coding 48
Gambar 3.16Rancangan DFD Level 2 P.1.1 untuk Proses Kompresi Algoritma
Arithmetic Coding 49
Gambar 3.17Rancangan DFD Level 2 P.1.2 untuk Proses Dekompresi Algoritma
Arithmetic Coding 50
Gambar 3.18Rancangan DFD Level 0 Proses Kompresi / Dekompresi Algoritma
Shannon-Fano 51
Gambar 3.19Rancangan DFD Level 1 P.0.1 untuk Proses Kompresi dan Dekompresi
Algoritma Shannon-Fano 51
Gambar 3.20Rancangan DFD Level 2 P.1.1 untuk Proses Kompresi Algoritma
xi
Shannon-Fano 53 Gambar 3.22 Flowchart Sistem Kompresi dan Dekompresi Secara Umum 54 Gambar 3.23Flowchart Aplikasi Algoritma Arithmetic Coding
dan Shannon-Fano 55
Gambar 3.24Rancangan Menu Utama 56
Gambar 3.25Rancangan Menu “Algoritma Kompresi” 57
Gambar 3.26Rancangan Menu “Kompresi” Arithmetic Coding 58 Gambar 3.27Rancangan Menu “Dekompresi” Arithmetic Coding 59 Gambar 3.28Rancangan Menu “Kompresi” Shannon-Fano 60 Gambar 3.29Rancangan Menu “Dekompresi” Shannon-Fano 62
Gambar 3.30Rancangan Menu “Bantuan” 63
Gambar 4.1 Tampilan Menu Utama 64
Gambar 4.2 Tampilan Menu “Algoritma Kompresi” 65
Gambar 4.3 Tampilan Menu “Kompresi” Arithmetic Coding 65 Gambar 4.4 Tampilan Menu “Buka” File citra bmp pada Arithmetic Coding 66 Gambar 4.5 Tampilan Menentukan Lokasi Penyimpanan Hasil Kompresi File Citra
Arithmetic Coding 67
Gambar 4.6 Tampilan Hasil Kompresi File Citra pada Arithmetic Coding 67 Gambar 4.7 Tampilan Menu “Dekompresi” Arithmetic Coding 68
Gambar 4.8 Tampilan Menu “Buka” File .acf 69
Gambar 4.9 Tampilan Menentukan Lokasi Penyimpanan Hasil
Dekompresi File .acf 69
Gambar 4.10 Tampilan Hasil Dekompresi File .acf 70
Gambar 4.11Tampilan Menu “Kompresi” Shannon-Fano 70 Gambar 4.12Tampilan Menu “Buka” File citra bmp pada Shannon-Fano 71 Gambar 4.13Tampilan Menentukan Lokasi Penyimpanan Hasil Kompresi File Citra
Shannon-Fano 72
Gambar 4.14Tampilan Hasil Kompresi File Citra pada Shannon-Fano 72
Gambar 4.15Tampilan Menu “Dekompresi” Shannon-Fano 73
Gambar 4.16Tampilan menu “Buka” File .sf 74
Gambar 4.17Tampilan Menentukan Lokasi Penyimpanan Hasil
Dekompresi File .sf 74
Gambar 4.18Tampilan Hasil Dekompresi File.sf 75
Gambar 4.19Tampilan Menu “Bantuan” 76
Gambar 4.20Perbandingan Rasio Kompresi Algoritma Arithmetic Coding dan
Shannon-Fano 84
Gambar 4.21Perbandingan Hasil Kompresi Algoritma Arithmetic Coding dan
Shannon-Fano 85
Gambar 4.22Perbandingan Kecepatan Kompresi Algoritma Arithmetic Coding dan Shannon-Fano 87 Gambar 4.23Perbandingan Kecepatan Dekompresi Algoritma Arithmetic Coding