PENERAPAN METODE GEOMETRI FILTERING UNTUK
MEMPERBAIKI KUALITAS CITRA DAN KOMPRESI
FILE DENGAN ALGORITMA LZ78
Tuty Harta Hutahaean (12110577)
Mahasiswa Program Studi Teknik Informatika STMIK Budi Darma Medan Jl. Sisingamangaraja N0.338 Sp. Limun Medan
http : // www.stmik-budidarma.ac.id // Email : tutyhutahaean@gmail.com
ABSTRAK
Perkembangan teknologi saat ini memasuki era millennium, terutama dalam pengerjaan yang berhubungan dengan teknik informatika yang telah menjadi realitas sehari-hari jutaan manusia di muka bumi ini. Salah satunya adalah dalam bidang multimedia, di dalam dunia multimedia dalam penyajian datanya tentu tidak hanya dalam bentuk teks atau tulisan saja, tetapi juga terdapat gambar (citra), video, dan audio. Citra (image) sebagai salah satu komponen multimedia memegang satu peranan sangat penting sebagai bentuk informasi visual. Citra adalah memiliki kualitas yang berbeda-beda, di mana sebuah citra mengalami penurunan (degradasi) seperti warna terlalu kontras, kurang tajam, kabur, dan sebagainya dapat mempengaruhi kualitas citra tersebut. Citra memiliki kualitas didalamnya, dimana kualitas citra yang kurang baik dapat diperbaiki dengan cara penghalusan atau mengaburkan dan menghilangkan garis-garis kecil pada suatu citra.
Metode mean filter salah satu teknik filtering yang bekerja dengan cara menggantikan intensitas suatu pixel dengan rata-rata nilai pixel dari pixel-pixel tetangganya. Jika suatu citra f(x,y) yang berukuran M x N dilakukan proses filtering dengan penapis h(x,y) maka akan menghasilkan citra g(x,y), di mana penapis h(x,y) merupakan matrik yang berisi nilai 1/ukuran penapis.Filtering Geometrik (GF) adalah suatu metode yang digunakan sebagai penghalusan (smoothing). Mengaburkan (blurring) citra untuk mereduksi noise. Blurring akan menghilangkan detail kecil dari suatu citra sebelum dilakukan ekstraksi objek dan dapat menghubungkan celah kecil yang memisahkan garis atau kurva. Filter rata-rata pada filter linier sama dengan filter rata-rata pada filter non linier. Dalam skripsi ini akan dibahas tentang cara menerapkan metode geometrik filtering untuk memperbaiki kualitas citra dan kompresi file citra dengan algoritma LZ78. Penerpan akan diuji coba menggunakan microsoft visual studio.net 2008 sebagai editor untuk mengedit program.
Kata Kunci : Perbaikan Citra, Kompresi File dan Metode Geometri Filtering.
1. Pendahuluan
1.1 Latar Belakang Masalah
Metode mean filter salah satu teknik filtering yang bekerja dengan cara menggantikan intensitas suatu pixel dengan rata-rata nilai pixel dari pixel-pixel tetangganya. Jika suatu citra f(x,y) yang berukuran M x N dilakukan proses filtering dengan penapis h(x,y) maka akan menghasilkan citra g(x,y), di mana penapis h(x,y) merupakan matrik yang berisi nilai 1/ukuran penapis.Filtering Geometrik (GF) adalah suatu metode yang digunakan sebagai penghalusan (smoothing). Mengaburkan (blurring) citra untuk mereduksi noise. Blurring akan menghilangkan detail kecil dari suatu citra sebelum dilakukan ekstraksi objek dan dapat menghubungkan celah kecil yang memisahkan garis atau kurva. Filter rata-rata pada filter linier sama dengan filter rata-rata pada filter non linier.
Meskipun sebuah citra kaya akan informasi, namun seringkali citra yang di miliki mengalami penurunan mutu (degradasi) citra yaitu penurunan kualitas citra, misalnya karena mengandung cacat
atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Derajat keabuan dimana merepresentasikan grey level atau kode warna. Kisaran nilai ditentukan oleh bit yang dipakai dan akan menunjukkan resolusi aras abu-abu (grey level resolution) Tentu saja citra semacam ini menjadi lebih sulit diinterpretasikan karena informasi yang disampaikan oleh citra tersebut kurang jelas. Derau atau noise ini akan menyebabkan citra yang kita miliki bisa menjadi terlalu kontras, kabur, kurang tajam dan lain sebagainya.
Oleh karena itu perlu suatu proses perbaikan mutu citra terhadap citra yang mengalami derau atau noise tersebut sehingga citra dapat dengan mudah diinterpretasikan baik oleh manusia ataupun mesin. Bidang ilmu pengetahuan yang membahas tentang proses peningkatan mutu citra tersebut yaitu pengolahan citra (Digital Image Processing). Salah satu cabang dalam ilmu pengolahan citra yang khusus untuk peningkatan mutu citra yaitu perbaikan citra (image enhancement).
Penerapan Metode Geometri Filtering Untuk Memperbaiki Kualitas Citra Dan Kompresi File Dengan Algoritma 1.2 Perumusan Masalah
Adapun perumusan masalah yang akan dibahas dalam skripsi ini adalah sebagai berikut: 1. Bagaimana jenis input citra yang akan diolah
pada kompresi file?
2. Bagaimana merancang metode Geometrik Filtering untuk memperbaiki kualitas citra? 3. Bagaimana menerapkan metode geometrik
filtering untuk memperbaiki kualitas citra menggunakan algoritma lz78?
1.3 Batasan Masalah
Adapun batasan masalah dari penelitian skripsi ini adalah sebagai berikut:
1. File citra yang akan di perbaiki kualitas citra dengan file JPEG.
2. Kualitas citra yang digunakan adalah yang memiliki derau citra.
3. Size citra yang akan di kompresi 8x10 pixel 4. Citra yang digunakan citra grayscale.
5. Aplikasi pemrograman yang akan digunakan adalah Visual studio 2008.
1.4 Tujuan dan Manfaat
Adapun tujuan dari penyusunan skripsi ini adalah sebagai berikut:
1. Menerapkan metode Geometrik Filtering untuk memperbaiki kualitas citra dan kompresi file citra dengan algoritma LZ78.
2. Menguji sistem kompresi file citra dengan mengunakan bahasa pemograman Visual studio 2008.
Adapun manfaat dari penyusunan skripsi ini adalah sebagai berikut:
1. Dapat mememperbaiki kualitas citra yang kurang baik dan meningkatkan kualitas mutu citra.
2. Dapat mengkompresi file citra lebih kecil sizenya.
2. Landasan Teori 2.1 Pengertian Citra
Suatu citra adalah fungsi intensitas 2 dimensi f(x,y), dimana x dan y adalah koordinat spasial dan f pada titik (x,y) merupakan tingkat kecerahan (brightness) suatu citra pada suatutitik. Suatu citra diperoleh dari penangkapan kekuatan sinar yang dipantulkan oleh objek.Citra sebagai output alat perekaman, seperti kamera, dapat bersifat analog ataupun digital.Citra Analog adalah citra yang masih dalam bentuk sinyal analog, seperti hasilpengambilan gambar oleh kamera atau citra tampilan di layar TV ataupun monitor (sinyalvideo).
2.2 Jenis-jenis Citra
Ada banyak cara untuk menyimpan citra digital di dalam memori. Cara penyimpanan menentukan jenis citra digital yang terbentuk.
Beberapa jenis citra digital yang sering digunakan adalah citra biner, citra grayscale, dan citra warna. 1. Citra biner
Citra biner disebut juga citra monokrom. Banyak warna citra biner ada 2, yaitu hitam dan putih. Dibutuhkan 1 bit memori untuk menyimpan kedua warna ini. Setiap piksel pada citra bernilai 0 untuk hitam dan 1 untuk putih.
2. Citra grayscale
Citra warna grayscale menggunakan warna tingkatan warna abu-abu. Warna abu-abu merupaka satu-satunya warna pada ruang RGB dengan komponen merah, hijau, dan biru memepunyai intensitas yang sama. Banyaknya warna pada citra ini tergantung pada jumlah bit yang akan disediakan di memori untuk menampung kebutuhan warna ini. Citra dengan skala keabuan empat bit maka jumlah kemungkinan warnanya adalah 24 = 16 warna dengan kemungkinan warna 0 (min) sampai 15 (max).
3. Citra warna
Setiap piksel yang terdapat pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar (RGB = Red Green Blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna memiliki gradasi sebanyak 255 warna. Berarti setiap piksel memiliki kombinasi warna sebanyak 28x 28x 28 = 16 juta warna lebih. Itulah sebabnya format ini dinamakan true color karena memiliki jumlah warna yang cukup besar. Penyimpanan citra
true color di dalam memori berbeda dengan
citra grayscale. Setiap piksel dari citra
grayscale 256 gradasi warna diwakili oleh 1 byte. Sedangkan 1 piksel citra true color
diwakili oleh 3 byte, dimana masing-masing
byte merepresentasikan warna merah (Red),
hijau (Green), dan biru (Blue) . 2.3 Geometrik Filtering
Geometrik Filtering adalah cara untuk meloloskan (menerima) komponen dengan frekuensi tertentu dan menghilangkan (menolak) komponen dengan frekuensi yang lain. Dalam penggunaan cara filtering diperlukan sebuah cara filter g(x,y) berupa matriks berukuran n x n, (umumnya 3×3) yang tiap-tiap sel-selnya berisi bobot filtering. Ada yang menyebutnya sebagai filter, mask, kernel, ataupun window. Setiap titik (x,y) pada citra f(x,y) di filter dengan filter g(x,y) menghasilkan h(x,y). h(x,y) Æhasil filtering pada titik (x,y). Ada 2 jenis metode yang digunakan dsalam proses filtering.
2.4 Kompresi
Kompresi data adalah ilmu atau seni merepresentasikan informasi dalam bentuk yang lebih compact. Pengertian lain dari data kompresi adalah proses mengkonversikan sebuah input data
stream (stream sumber, atau data mentah (asli)
menjadi data stream lainnya (bitstream hasil, atau
stream yang telah terkompresi) yang berukuran
lebih kecil.(Ida Mengyi Pu, 2006). 2.5 Kompresi LZ78
Program LZ78 mengambil suatu pendekatan yang berbeda untuk membangun dan menciptakan dictionary. Untuk mengatasi keterbatasan jendela history dan LA, LZ78 mengabaikan konsep jendela teks seperti halnya pada LZ77. Dalam beberapa hal ada kesamaan antara LZ77 dan LZ78 diantaranya, output dari LZ78 ini juga suatu rangkaian atau urut-urutan token Token hasil pengkodean LZ78 ini terdiri atas 2 buah kode, kode pertama berupa angka desimal yang merujuk atau mengacu suatu indeks pada dictionary yang berisi phrase dari string masukan, selanjutnya diikuti kode yang kedua yakni suatu karakter tunggal yang mengikuti phrase tersebut.
3. Analisa dan Perancangan Sistem 3.1 Analisa Geometri Filtering
Sebelum mengolah citra digital serta merancang aplikasi sebagai media pengolahannya, maka harus dilakukan analisa terhadap intensitas koordinat citra 3x3 pada format .jpg dengan ukuran 10 x 8 pixel. Hal ini dilakukan untuk mengetahui apakah aplikasi yang akan dirancang sesuai dengan metode yang digunakan sehingga terdapat kecocokan antara keduanya.
3.2 Analisa Pembelajaran Berbasis Komputer Dasar teori untuk algoritma kompresi LZ78 telah dibahas pada bab sebelumnya. Untuk analisa besar dictionary akan dibatasi. Jika pada saat melakukan proses kompresi dictionary sudah penuh, maka proses selanjutnya hanya menggunakan pola yang ada di dalam dictionary tanpa menambahkan index baru ke dalam
dictionary. Token dalam algoritma LZ78 terdiri
dari 2 bagian, berbentuk (f,c). dimana f adalah index pada dictionary dimana pola yang ditemukan, dan c adalah karakter pertama sesudah pola. Token ini nantinya akan dikonversi menjadi bit strea seperti Tabel xx. Banyak bit yang diperlukan untuk f tergantung pada input awal, jika besar dictionary ditentukan 20148, maka diperlukan 11 bit untuk f. sedangkan untuk c akan membutuhkan 8 bit, yaitu nilai ASCII dari karakter tersebut.
3.3 Algoritma LZ78 Decoding
Untuk proses decoding algoritma LZ78, input terdiri dari string karakter yang akan diproses
(source). String ini pada dasarnya merupakan kumpulan token hasil dari proses encoding sebelumnya. Input kedua adalah banyak bit yang di butuhkan untuk menyimpan index dictionary (disimpan dalam variable cmaxdict).
3.4 Perancangan Aplikasi
Data flow diagram yang dirancang terdiri dari 2 bagian aplikasi, yaitu untuk proses kompresi dan proses dekompresi. Karena kedua bagian ini terpisah dan dapat digunakan hanya salah satu saja ketika menggunakan aplikasi.
3.4.1 Data Flow Diagram Proses Kompresi Untuk data flow diagram proses kompresi level o dapat dilihat pada Tabel berikut:
Gambar 3.6 Data Flow Diagram Kompresi
3.4.2 Data Flo Diagram Proses Dekompresi
Gambar 3.7 Data Flow Diagram Kompresi
3.5.3 Tampilan Layar Input Output Tabel Berikut ini adalah tampilan (layout) dari sistem yang akan dibangun, dapat dilihat pada Tabel 3.8 di bawah ini:
USE R P.0 AplikasiKom presi File USER P.0 AplikasiK ompresi File
Input
Output
Contrast stretching dan Mean filter
Pr oc ess Geomet ri Filterin g Op en Ima ge Met ode LZ7 8 Sav e Ima
B
A
Penerapan Metode Geometri Filtering Untuk Memperbaiki Kualitas Citra Dan Kompresi File Dengan Algoritma Pada Gambar 3.8 di atas terdapat dua kotak
yaitu kotak A dan kotak B. dimana Citra akan muncul pada kotak A jika menekan tombol open
image, sehinggacitraakan tampil di kotak A. Setelah
itu maka lakukanlah geometri filtering atau
LZ78dimana Tabel yang akan di geometri filtering
dan LZ78 pada kotak B, setelah dilakukannya
geometri filtering dan LZ78 pada citra kemudian
citra disimpan (save image). Adapun keterangan dari Tabel di atas adalah sebagai berikut :
1. Open image
Digunakan untuk membuka citra yang akan di
geometri filtering atau LZ78 2. Process
Merupakan tombol yang digunakan untuk
geometri filtering dan LZ78 3. Save image
Digunakanuntukmenyimpancitra yang telah di
geometri filtering danLZ78
4. Algoritma dan Implementasi 4.1 Algoritma
Untuk menghasilkan sebuah program aplikasi. Hal pertama yang harus dilakukan adalah membentuk algoritma yang akan menggambarkan bagaimana program itu bekerja. Dalam menggambarkan dibutuhkan langkah-langkah logika untuk menyelasaikan masalah serta berfungsi untuk penelusuran program untuk keperluan perbaikan atau pengembangan akan lebih mudah dan terarah, Adapun algoritma yang digunakan dalam program ini adalah:
4.1.1 Algoritma Geometrik Filtering Input : input bitmap gambar.Jpeg
input rgb, filtering;
Proses :Gambar. bmp = 0 To gambar Edit.Width - 1 Gambar. bmp= 0 To gambar Edit.Height - 1
r = gambar Edit.Get Pixel(x, y).R g = gambar Edit.Get Pixel(x, y).G b = gambar Edit.Get Pixel(x, y).B gray = (r + g + b) / 3
gambar Edit.Set Pixel(x, y, Color.From A rgb(mean, blur, rgb))
proses += 1
progress = proses / totalProses * 100 Next
Next
PictureBox2.Image = gambar Edit Output : Tampilkan Geometrik Filtering 4.1.2 Algoritma LZ78
Input : Gambar bitmap.bmp Kompressi filtering Proses : Gambar.bmp >= Size; Kb
baCompress_Stack(0) = bCharacter i = 1 Compress = iOldsize i = 0 iCurrCode = iNewCode While iCurrCode > 255 i = i + 1
If i>= MAX_CODE Then
If (iNextCode <= MAX_CODE) Then iaPrefix_Code(iNext Code) = iOldCode baAppend_Character(iNext Code) = bCharacter
iNextCode += 1 End If
Gambar.bmp = Compressi 4.2 Kb Size Gambar.bmp = Compressi 4.0 Kb Size End
Ouput : Tampilkan Compresi citra 4.2 Implementasi
Implementasi sistem merupakan lanjutan dari tahap analisis dan perancangan sistem. Sistem ini dibangun dengan menggunakan bahasa pemrograman Visual Basic.Net dan menggunakan Software Microsoft Visual Studio 2008. Pada sistem ini terdapat 3 (lima) tampilan halaman, yaitu Halaman Utama, Halaman Proses, Halaman Tentang.
4.2.1 Tampilan Halaman Menu Utama
Halaman utama merupakan tampilan halaman yang muncul pertama sekali pada saat sistem dijalankan. Halaman utama memiliki 2 menu bar, yaitu menu file yang terdiri dari, menu geometrik filtering, dan menu Kompresi Tampilan Halaman menu utama dapat dilihat pada gambar 4.1
Gambar 4.1 Tampilan Menu Utama 4.2.2 Tampilan Halaman Proses
Tampilan halaman menu proses merupakan halaman yang digunakan untuk melakukan proses geometrik filtering dan kompresi pada citra dengan menggunakan metode Algoritma
1. Open Image digunakan untuk mencari file image mana yang akan diproses kompresiyang ada dengan mengklik tombol Filtering. Adapun tampilannya dapat dilihat pada gambar 4.2 dan gambar 4.3.
2. Buka menu file dan pilih kompresi Cari file yang akan diproses maka tahap selanjutnya adalah melakukan proses kompresi dengan cara mengklik tombol Compress. Adapun tampilannya dapat dilihat pada gambar 4.4. dapat dilihat pada gambar 4.5
Gambar 4.2 Tampilan sebelum di fitering
Gambar 4.3 Tampilan Menu Proses Filtering
Gambar 4.4 Tampilan sebelum diCompresi
Gambar 4.5 Tampilan Compressi 5. Kesimpulan dan Saran
5.1 Kesimpulan
Dari hasil penulisan dan analisa dari bab-bab sebelumnya, maka dapat diambil kesimpulan, dimana kesimpulan-kesimpulan tersebut kiranya dapat berguna bagi para pembaca, sehingga penulisan skripsi ini dapat lebih bermanfaat. Adapun kesimpulan-kesimpulan tersebut adalah sebagai berikut :
1. Penerapan metode geometri filtering telah dapat meningkatkan resolusi citra dengan melakukan kompresi file terhadap citra yang telah diperbaiki.
2. Algoritma LZ78 dapat diterapkan dalam aplikasi perbaikan citra menggunakan metode geometri filtering untuk meminimalkan ukuran file.
3. Metode geometri filtering untuk perbaikan citra dan algoritma LZ78 diterapkan pada aplikasi yang dibuat menggunakan tools
Microsoft Visual Studio 2008 dan dapat
dijalankan pada sistem operasi windows yang mendukung .netframework 3.5.
5.2 Saran
Untuk pengembangan aplikasi ini kedepannya, berikut beberapa hal yang dapat disarankan :
1. Untuk pengembangan penelitian ini dapat menggunakan algoritma kompresi file yang lain. 2. Teknik perbaikan citra dapat digantikan dengan teknik perbaikan citra yang lain seperti metode
Huffman.
3. Teknik kompresi file dapat digantikan dengan teknik kompresi file yang lain seperti metode LZ77.
DAFTAR PUSTAKA
1. A.S, Rosa dan M. Shalahuddin. 2011. Rekayasa Perangkat Lunak. Yogyakarta. Modula
2. Bambang Rudianto. 2010. Analisis Ketelitian Objek Pada Peta Citra Quickbird RS 0,68 m Dan Ikonos RS 1,0 m. Jurnal Rekayasa Institut Teknologi Nasional, 3
Penerapan Metode Geometri Filtering Untuk Memperbaiki Kualitas Citra Dan Kompresi File Dengan Algoritma 3. Darma Putra. 2010. Pengolahan Citra Digital.
Yogyakarta. Andi
4. Gokmaria Sitanggang.(2008, Maret). Teknik Dan Metode Fusi (Pansharpening) Data Alos (Avnir-2 dan Prism) Untuk Identifikasi Penutup Lahan/Tanaman Pertanian Sawah. Majalah Sains Dan Teknologi Dirgantara, 3(1), 33-49
5. Harvei Desmon Hutahaean. 2013. Teknik Penajaman Citra Digital Dengan Menggunakan Metode Lz78 Pelita Informatika Budidarma, 3, 2301-9425
6. Heri Sismoro. 2005. Pengantar Logika Informatika, Algoritma Dan Pemrograman Komputer. Yogyakarta. Andi
7. I Ketut Darmayuda. 2010. Pemrograman Aplikasi Database Microsoft Visual Basic.Net. Bandung. Informatika
8. Kusum Rani dan Reecha Sharma. 2013. Study Of Different Image Fusion Algorithm. International Journal Of Emerging Technology And Advanced Engineering, 3, 2250-2459 9. Laju Gandharum. (2011, April). Kesepadanan
Skala Peta dan Resolusi Spasial Citra [Geospasial]. Pusat Penelitian Geografi Terapan, 1528-3725
10. Riyan Syah Putra. 2013. Perancangan Aplikasi Absensi Dengan Deteksi Wajah Menggunakan Metode Geometrik Filtering. Pelita Informatika Budidarma, 4, 2301-9425