DAUBECHIES PADA CITRA DIGITAL
SKRIPSI
TEGUH ARIF FEBIANTO
101401063
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERBANDINGAN KUALITAS CITRA HASIL KOMPRESI METODE RUN LENGTH ENCODING DENGAN TRANSFORMASI WAVELET
DAUBECHIES PADA CITRA DIGITAL
SKRIPSI
Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
TEGUH ARIF FEBIANTO 101401063
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : PERBANDINGAN KUALITAS CITRA HASIL
KOMPRESI METODE RUN LENGTH ENCODING
DENGAN TRANSFORMASI WAVELET
DAUBECHIES PADA CITRA DIGITAL
Kategori : SKRIPSI
Nama : TEGUH ARIF FEBIANTO
Nomor Induk Mahasiswa : 101401063
Program Studi : SARJANA (S1) ILMU KOMPUTER
Departemen : ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Ade Candra, ST, M.Kom Drs. Agus Salim Harahap, M.Si
NIP.19790904 200912 1 002 NIP.19540828 198103 1 004
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom
PERNYATAAN
PERBANDINGAN KUALITAS CITRA HASIL KOMPRESI METODE RUN LENGTH ENCODING DENGAN TRANSFORMASI WAVELET
DAUBECHIES PADA CITRA DIGITAL
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, April 2015
Teguh Arif Febianto
PENGHARGAAN
Puji syukur kehadirat Allah SWT yang telah memberikan Rahmat dan Hidayah-Nya
kepada penulis sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai
syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu
Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera
Utara.
Dalam penulisan ini tidak lupa penulis mengucapkan terima kasih kepada
pihak-pihak yang telah banyak memberi motivasi hingga pada akhirnya penulis
mampu menyelesaikan tugas akhir ini dengan baik. Oleh karena itu penulis
mengucapkan banyak terima kasih kepada:
1. Bapak Prof. Dr. Syahril Pasaribu, DTMH, MSc(CTM), SpA(K) sebagai Rektor Universitas Sumatera Utara (USU).
2. Bapak Dr. Muhammad Zarlis sebagai Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.
5. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembimbing 1.
6. Bapak Ade Candra, ST, M.Kom selaku Dosen Pembimbing 2.
7. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM dan Bapak Herriyance ST,
M.Kom selaku Dosen Pembanding.
8. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara, seluruh tenaga pengajar dan pegawai di Program
Studi S1 Ilmu Komputer Fasilkom-TI USU.
9. Ayahanda Dwi Suseno, Ibunda Yayat Sugiati, serta abang-abang saya Gustian
Yudha Utama dan Rangga Adhi Anggara yang selalu memberikan kasih sayang,
doa dan dukungannya kepada penulis.
10. Rizki Ramadhani Lubis yang selalu membantu dan memberikan semangat
11. Rekan-rekan kuliah, Ananda Putri Ritonga, Saddam Husein Siregar, Vito
Erpindo, Angga Wiranda, Azhar Fadillah, Singgih Tri Mukti, Janwandi
Ruliansen Sinaga, Fajrul Falah, Agus Prabowo, Danny Rizky dan seluruh
mahasiswa S1 Ilmu Komputer stambuk 2010, serta Ahmad Ridwan, Alif Judha,
Anggie Ermando, Eric Evan, Nanda Fadillah, dan Rikcy Almeda yang selalu
memberikan semangat dan dorongan kepada penulis selama menyelesaikan
skripsi ini.
12. Abang dan kakak stambuk 2007, 2008, 2009 yang telah bersedia membantu dan
berbagi ilmu yang bermanfaat, serta seluruh adik-adik stambuk yang telah
memberikan semangat kepada penulis dalam penyelesaian skripsi ini.
Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan
skripsi ini. Akhirnya, semoga skripsi ini bermanfaat bagi pribadi, keluarga,
masyarakat, organisasi dan negara.
Medan, April 2015
ABSTRAK
Pada penyimpanan citra digital, ukuran citra akan mempengaruhi penggunaan memori. Semakin besar ukuran citra maka semakin besar memori yang dibutuhkan. Kompresi citra merupakan sebuah metode yang dilakukan untuk mereduksi ukuran citra digital. Metode Run Length Encoding dan metode Transformasi Wavelet Daubechies merupakan metode yang dapat digunakan dalam proses kompresi citra digital. Pada penelitian ini, metode Run Length Encoding dan metode Transformasi Wavelet Daubechies akan dibandingkan dalam menentukan kualitas citra hasil kompresi berdasarkan proses running time, rasio kompresi dan data redudansi. Citra digital yang digunakan yaitu citra grayscale dengan format Bitmap (*.BMP). Citra hasil kompresi dapat dikembalikan ke ukuran semula dengan proses dekompresi citra. Metode Run Length Encoding memiliki running time proses yang lebih baik dibandingkan dengan Transformasi Wavelet Daubechies, berdasarkan percobaan terhadap lima citra berbeda dengan ukuran yang sama dimana kecepatan rata-rata untuk metode Run Length Encoding adalah 1,03125 detik sedangkan kecepatan rata-rata untuk metode Transformasi Wavelet Daubechies adalah 2,571876 detik. Metode
Run Length Encoding juga lebih baik berdasarkan rasio kompresi dan data redudansi, jika citra yang digunakan tidak memiliki banyak perbedaan warna piksel. Sedangkan, jika citra yang digunakan memiliki banyak perbedaan warna, maka metode Transformasi Wavelet Daubechies lebih baik berdasarkan rasio kompresi dan data redudansi.
Kata kunci : Bitmap (*.BMP), Kompresi, Dekompresi, Run Length Encoding,
Transformasi Wavelet Daubechies
COMPARISON OF IMAGE QUALITY COMPRESSION RESULT BETWEEN RUN LENGTH ENCODING AND
DAUBECHIES WAVELET TRANSFORM
ABSTRACT
On digital image storage, the size of image will influence the use of memory. The bigger the size of an image then the bigger memory will be needed. Image Compression is the method that reduce the size of digital image. Run Length Encoding and Daubechies Wavelet Transform are methods that can be used in the process of digital image compression. In this research, Run Length Encoding method and Daubechies wavelet transformation method will be compared to decide the quality of image compression result based on running time process, compression ratio and redundancy data. Digital image used is grayscale image with Bitmap format (*.BMP). Image compression result can be returned to the original size with image decompression process. Run Length Encoding has better running time process than Daubechies Wavelet Transform, based on experiments of five different images with the same size where the average speed of Run Length Encoding method is 1,03125 second while the average speed Daubechies Wavelet Transform is 2,571876 second. Run Length Encoding method is also better based on compression ratio and redundancy data, if the image that is used does not have many pixel color differences. Meanwhile, if the image has many pixel color differences, then Daubechies Wavelet Transform method is better based on compression ratio and redundancy data.
Keywords : Bitmap (*.BMP), Compression, Decompression, Run Length Encoding,
DAFTAR ISI
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metode Penelitian 4
1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori
2.1 Pengertian Citra 6
2.2 Format File Citra 8
2.2.1 Format Vektor 8
2.2.2 Format Bitmap 8
2.3 Kompresi 9
2.3.1 Teknik Kompresi Citra 9 2.3.2 Kriteria Kompresi Citra 10
2.4 Dekompresi 11
2.5 Run Length Encoding (RLE) 11 2.6 Transformasi Wavelet Daubechies 14
2.6.1 Wavelet 14
2.6.1 Wavelet Daubechies 14
3.1 Analisis Sistem 17 3.1.1 Analisis Masalah 17
3.1.2 Analisis Kebutuhan Sistem 18
3.1.2.1 Kebutuhan Fungsional Sistem 18 3.1.2.2 Kebutuhan Non Fungsional Sistem 19 3.1.3 Pemodelan Sistem 20 3.1.3.1 Use Case Diagram 20 3.1.3.1.1 Use Case Run Length Encoding 22 3.1.3.1.2 Use Case Transformasi Wavelet Daubechies 23 3.1.3.1.3 Use Case Kompresi RLE 24 3.1.3.1.4 Use Case Dekompresi RLE 25 3.1.3.1.5 Use Case Kompresi Transformasi Wavelet Daubechies 26 3.1.3.1.6 Use Case Dekompresi Transformasi Wavelet
Daubechies 27 3.1.3.2 Activity Diagram 28 3.1.3.2.1 Activity Diagram Run Length Encoding 28 3.1.3.2.2 Activity Diagram Transformasi Wavelet Daubechies 29 3.1.3.3 Sequence Diagram 30
3.1.3.4 Flowchart 31
3.1.3.4.1 Flowchart Sistem 31 3.1.3.4.2 Flowchart Kompresi Run Lengh Encoding 32 3.1.3.4.3 Flowchart Dekompresi Run Lengh Encoding 33 3.1.3.4.4 Flowchart Kompresi Transformasi Wavelet Daubechies 34 3.1.3.4.5 Flowchart Dekompresi Transformasi Wavelet
Daubechies 35
3.2 Perancangan Sistem 36
3.2.1 Pseudocode Program 36 3.2.1.1 Pseudocode Kompresi Run Length Encoding 36 3.2.1.2 Pseudocode Dekompresi Run Length Encoding 37 3.2.1.3 Pseudocode Kompresi dengan Transformasi Wavelet
Daubechies 38
3.2.1.3.1 Pseudocode Transformasi Wavelet Daubechies 38 3.2.1.3.2 Pseudocode Kuantisasi 39 3.2.1.3.3 Pseudocode Encoding 39
3.2.1.4 Pseudocode Dekompresi dengan Transformasi Wavelet
Daubechies 40
Bab 4 Implementasi dan Pengujian Sistem
4.1 Implementasi Sistem 47
4.1.1 Implementasi Algoritma 47 4.1.1.1 Implementasi Algoritma Kompresi Run Length Encoding 47 4.1.1.2 Implementasi Algoritma Dekompresi Run Length Encoding 49 4.1.1.3 Implementasi Algoritma Kompresi Transformasi Wavelet Daubechies 50 4.1.1.4 Implementasi Algoritma Dekompresi Transformasi Wavelet Daubechies 53
4.2 Pengujian Sistem 57
4.2.1 Pengujian 57
4.2.1.1 Pengujian Proses Run Length Encoding 57 4.2.1.2 Pengujian Proses Transformasi Wavelet Daubechies 61
4.2.2 Hasil Pengujian 64
4.2.2.1 Hasil Pengujian Berdasarkan Ukuran Citra yang Berbeda 64 4.2.2.2 Hasil Pengujian Berdasarkan Citra yang Berbeda 66 4.2.2.3 Hasil Pengujian Berdasarkan Spesifikasi Komputer
yang Berbeda 69 Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 71
5.2 Saran 72
Daftar Pustaka 73
DAFTAR TABEL
Halaman
Tabel 2.1 Contoh Citra Belum Terkompres 13 Tabel 3.1 Spesifikasi Use Case Run Length Encoding 22 Tabel 3.2 Spesifikasi Use Case Transformasi Wavelet Daubechies 23 Tabel 3.3 Spesifikasi Use Case Kompresi RLE 24 Tabel 3.4 Spesifikasi Use Case Dekompresi RLE 25 Tabel 3.5 Spesifikasi Use Case Kompresi Transformasi Wavelet Daubechies 26 Tabel 3.6 Spesifikasi Use Case Dekompresi Transformasi Wavelet Daubechies 27
Tabel 4.1 Matriks Citra 8x8 48
Tabel 4.2 Proses Kompresi Run Length Encoding 48 Tabel 4.3 Matriks Hasil Dekompresi 50 Tabel 4.4 (a) Matriks Transformasi Wavelet Daubechies (b) Matriks Citra
Awal 51
Tabel 4.5 Matriks Hasil Transformasi 51 Tabel 4.6 (a) Matriks Hasil Transformasi (b) Matriks Kuantisasi
(c) Matriks Hasil Kuantisasi 52 Tabel 4.7 Matriks Hasil Pembulatan Nilai Kuantisasi 52 Tabel 4.8 Proses Encoding Citra Hasil Kuantisasi 53 Tabel 4.9 Matriks Hasil Decoding 54 Tabel 4.10 (a) Matriks Hasil Decoding (b) Matriks Kuantisasi
(c) Matriks Hasil Dekuantisasi 55 Tabel 4.11 (a) Matriks Hasil Dekuantisasi (b) Matriks Inverse Transformasi
Wavelet Daubechies (c) Matriks Hasil Inverse Transformasi 56 Tabel 4.12 Matriks Hasil Dekompresi Transformasi Wavelet Daubechies 56 Tabel 4.13 Hasil Pengujian Proses Kompresi Berdasarkan Ukuran Citra yang
Berbeda 64
Tabel 4.14 Hasil Pengujian Proses Dekompresi Berdasarkan Ukuran Citra
yang Berbeda 66
Tabel 4.15 Hasil Pengujian Proses Kompresi Berdasarkan Citra yang Berbeda 67 Tabel 4.16 Hasil Pengujian Proses Dekompresi Berdasarkan Citra yang
Berbeda 68
Tabel 4.17 Spesifikasi Komputer 69 Tabel 4.18 Hasil Pengujian Proses Kompresi Berdasarkan Komputer yang
Berbeda 69
Tabel 4.19 Hasil Pengujian Proses Dekompresi Berdasarkan Komputer yang
Berbeda 70
Halaman
Gambar 2.1 Ilustrasi digitalisasi citra 7 Gambar 3.1 Diagram Ishikawa untuk Analisis Masalah Sistem 18 Gambar 3.2 Use Case Diagram Perbandingan Metode Kompresi Run Length
Encoding dengan Transformasi Wavelet Daubechies 21 Gambar 3.3 Activity Diagram Run Length Encoding 28 Gambar 3.3 Activity Diagram Transformasi Wavelet Daubechies 29 Gambar 3.4 Sequence Diagram Sistem 30 Gambar 3.5 Flowchart Sistem 31 Gambar 3.6 Flowchart Kompresi Run Length Encoding 32 Gambar 3.7 Flowchart Dekompresi Run Length Encoding 33 Gambar 3.8 Flowchart Kompresi Transformasi Wavelet Daubechies 34 Gambar 3.9 Flowchart Dekompresi Transformasi Wavelet Daubechies 35 Gambar 3.10 Pseudocode Kompresi Run Length Encoding 36 Gambar 3.11 Pseudocode Dekompresi Run Length Encoding 37 Gambar 3.12 Pseudocode Transformasi Wavelet Daubechies 38 Gambar 3.13 Pseudocode Kuantisasi 39 Gambar 3.14 Pseudocode Encoding 39 Gambar 3.15 Pseudocode Inverse Transformasi Wavelet Daubechies 40 Gambar 3.16 Pseudocode Dekuantisasi 41 Gambar 3.17 Pseudocode Decoding 41 Gambar 3.18 Perancangan AntarmukaHome 42 Gambar 3.19 Perancangan Antarmuka Menu Perbandingan 43 Gambar 3.20 Perancangan Antarmuka MenuHelp 46 Gambar 4.1 Matriks Hasil Pengkodean 49 Gambar 4.2 Matriks Hasil Kompresi 49 Gambar 4.3 Matriks Hasil Encoding 53 Gambar 4.4 Matriks Hasil Kompresi 53 Gambar 4.5 Kotak Dialog Browse File Citra BMP 57
Gambar 4.6 Proses Input File 58
Gambar 4.7 Kotak Dialog Save As Citra Hasil Kompresi Run
Length Encoding 58
Gambar 4.8 Hasil Proses Kompresi Run Length Encoding 59 Gambar 4.9 Kotak Dialog Browse File Hasil Kompresi Run Length Encoding 59 Gambar 4.10 Kotak Dialog Save As Citra Hasil Dekompresi Run
Length Encoding 60
Transformasi Wavelet Daubechies 61 Gambar 4.13 Hasil Proses Kompresi Transformasi Wavelet
Daubechies 62
Gambar 4.14 Kotak Dialog Browse File Hasil Kompresi Transformasi Wavelet Daubechies 62 Gambar 4.15 Kotak Dialog Save As Citra Hasil Dekompresi
Transformasi Wavelet Daubechies 63 Gambar 4.16 Hasil Proses Dekompresi Transformasi Wavelet
Daubechies 63
Gambar 4.17 Citra Awal (.bmp) 64 Gambar 4.18 (a) satu.bmp (b) dua.bmp (c) tiga.bmp (d) empat.bmp