HIGH BOOST FILTERING
SKRIPSI
RUTH MEYLINA MANIK
111401141
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
HIGH BOOST FILTERING
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
RUTH MEYLINA MANIK
111401141
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : PERBANDINGAN HASIL DETEKSI TEPI LAPLACIAN OF GAUSSIAN DENGAN LAPLACIAN OF GAUSSIAN KOMBINASI HIGH BOOST FILTERING
Kategori : SKRIPSI
Nama : RUTH MEYLINA MANIK
Nomor Induk Mahasiswa : 111401141
Program Studi : SARJANA (S1) ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, Agustus 2015
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dian Rachmawati, S.Si, M.Kom Dr. Poltak Sihombing, M.Kom
NIP 198307232009122004 NIP 196203171991031001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
PERBANDINGAN HASIL DETEKSI TEPI LAPLACIAN OF GAUSSIAN DENGAN LAPLACIAN OF GAUSSIAN KOMBINASI HIGH BOOST FILTERING
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Agustus 2015
PENGHARGAAN
Puji dan syukur kepada Tuhan Yang Maha Esa atas berkat dan karunia-Nya, sehingga
penulis dapat menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana
Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan
Teknologi Informasi, Universitas Sumatera Utara.
Penulis ingin menyampaikan ucapan terimakasih kepada :
1.
Bapak Prof. Subhilhar, Ph.D selaku Pejabat Rektor Universitas Sumatera Utara.
2.
Bapak Prof. Dr. Muhammad Zarlis, selaku 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 dan juga selaku dosen pembimbing I yang
telah memberikan saran dan dukungan kepada penulis dalam menyelesaikan
skripsi ini.
4.
Ibu Dian Rachmawati, S.Si, M.Kom, selaku dosen pembimbing II yang telah
memberikan saran dan dukungan kepada penulis dalam menyelesaikan skripsi ini.
5.
Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku dosen penguji II yang memberikan
kritik, saran dan dukungan kepada penulis dalam menyelesaikan skripsi ini.
6.
Bapak Amer Sharif, S.Si, M.Kom, selaku dosen penguji II yang memberikan
kritik, saran dan dukungan kepada penulis dalam menyelesaikan skripsi ini.
7.
Seluruh dosen dan pegawai Program studi S1 Ilmu Komputer Fasilkom-TI USU .
8.
Orang tua penulis Purn. Ipda Manimbul Manik dan Anna Pininta Dahlia, S.Pd.
yang selalu menjadi penyemangat penulis dan selalu memberikan dukungan yang
sangat luar biasa di dalam setiap doanya untuk penulis dalam menyelesaikan
skripsi ini.
10.
Opung Lordup dan Opung Toba, Tulang/Nantulang Lady, Tulang/Nantulang
Tesya, Tulang/Nantulang Hotman, Tulang/Nantulang Josua dan Tulang/Nantulang
Evan yang selalu mendukung dan menyemangati penulis dalam menyelesaikan
skripsi ini.
11.
Sahabat penulis Chindy Cahtrina Barus, Magdalena Siregar, Witty Sinaga yang
selalu mendukung menyemangati penulis dalam menyelesaikan skripsi ini.
12.
Jonathan Simamora atas dukungan dan semangat kepada penulis selama proses
penyelesaian skripsi ini.
13.
Teman-teman kuliah penulis stambuk 2011, Nurhayati, Ita, Tifany, Fildzah,
Syafura, Nurkholijah, Anandhini, Agita, Martina, Ivana, Shahira, Annisa, Abidah,
Rifai, Steven, Sandy, Adit, Henry, Tanta, Cholik, Nihe, Ridho, Edi, Andrio,
Simon, Fernandes, Edwin, Johan, Afif, Hanafi yang selalu menyemangati penulis
terkhusus kepada Farid Akbar Siregar dan Agung Putu Yoga yang membantu dan
mendukung penulis dalam menyelesaikan skripsi ini.
14.
Teman-teman Beswan Djarum 29 Medan Tere, Dita, Sai, Dea, Ius, Dana, Darman,
Josiah, Acid, Cherry, dan Nicho yang selalu memberi semangat dan menjadi
penyemangat penulis dalam berjuang.
Penulis menyadari bahwa skripsi ini masih jauh dari sempurna untuk itu penulis
menerima kritik dan saran yang membangun untuk menyempurnakan skripsi ini. Dan
semoga Tuhan Yang Maha Esa memberikan berkat dan karunia kepada seluruh pihak
yang membantu penulis dalam menyelesaikan skripsi ini
Medan, Agustus 2015
ABSTRAK
Pendeteksian tepi sebuah citra adalah bagian dari pengolahan citra. Pendeteksian tepi pada citra berguna untuk mencirikan sebuah informasi atau citra. Kualitas citra dan garis deteksi tepi dari hasil pendeteksian tepi terhadap sebuah citra sangatlah diperlukan, terlebih kepada citra yang telah rusak dan yang telah mengalami penurunan kualitas. Penurunan kualitas citra contohnya ialah noise yang terdapat pada citra, dimana penurunan kualitas oleh noise ini disebabkan oleh gangguan pada teknik pengambilan citra. Pada citra digital, noise yang sering ditemukan adalah Gaussian noise dan Salt and Pepper noise. Akibat adanya noise pada citra, noise tersebut menyebabkan hasil pendeteksian tepi yang kurang bagus ataupun kurang memenuhi standard dari kualitas pendeteksian tepi sebuah citra. Maka dari itu, dilakukan penelitian untuk mendeteksi tepi citra dari citra yang telah memiliki noise dengan operator Laplacian of Gaussian. Pada operator ini terdapat metode Gaussian smoothing yang berguna untuk memperhalus noise. Tetapi, citra yang halus belum tentu baik untuk dideteksi tepi. Maka dari itu, penelitian ini melakukan pengkombinasian operator deteksi tepi Laplacian of Gaussian dengan metode High Boost filtering. Kemudian penelitian ini membandingkan hasil citra deteksi tepi antara Laplacian of Gaussian dengan Laplacian of Gaussian kombinasi High Boost filtering. Citra hasil deteksi tepi terbaik dibandingkan berdasarkan parameter Mean Square Error (MSE ) yang bernilai paling kecil, Peak Signal to-Noise Ratio (PSNR) yang bernilai paling besar dan kualitas struktur garis tepi. Perbandingan dengan parameter nilai MSE, PSNR dan kualitas struktur garis tepi, maka didapat hasil bahwa pendeteksian tepi menggunakan operator Laplacian of Gaussian kombinasi High Boost filtering lebih baik dengan nilai MSE terkecil yaitu, 28096,5 dan nilai PSNR terbesar yaitu, 0,36864 dB.
THE COMPARISON BETWEEN THE RESULT OF EDGE DETECTION BY THE LAPLACIAN OF GAUSSIAN WITH LAPLACIAN OF GAUSSIAN
COMBINATION OF HIGH BOOST FILTERING
ABSTRACT
Edge detection of an image is a part of the image processing. Edge detection on the image useful to characterize an information or images. Image quality and edge detection line quality of edge detection result to an image is necessary, especially to the image that has been damaged and who have experienced loss of quality. The example of image quality degradation is noise contained in the image, where a decrease in the quality of the noise is caused by disturbances in the image-making techniques. In the digital image, the noise that is often found is Gaussian noise and Salt and Pepper noise. Due to the noise in the image, the noise causes the edge detection result is less good or less meet the standards of the quality of an image edge detection. Therefore, an examination to detect the image edge of the image already has noise with Laplacian of Gaussian operator. At this operator, there is Gaussian smoothing method that useful to soften the noise. However, a smooth image is not necessarily good for the detected edge. Therefore, this study did the combination of edge detection operator Laplacian of Gaussian with High Boost filtering method. Then, this study compared the results of image edge detection between Laplacian of Gaussian Laplacian of Gaussian combination with High Boost filtering. Image edge detection best results were compared based on the parameters Mean Square Error (MSE) is worth at least a small, Peak Signal to-Noise Ratio (PSNR) is the largest and most valuable qualities edge line structure. Comparison with the parameter value of MSE, PSNR and quality of the structure borders, then the examination got the result that the operator Laplacian of Gaussian edge detection using a combination filtering High Boost better with smallest MSE value is, 28096.5 and the largest PSNR value is, 0.36864 dB.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak vi
Abstract vii
Daftar isi viii
Daftar Gambar x
Daftar Tabel xii
Bab 1 Pendahuluan
1.1Latar Belakang 1
1.2Rumusan Masalah 2
1.3Batasan Masalah 3
1.4Tujuan Penelitian 3
1.5Manfaat Penelitian 3
1.6Metodologi Penelitian 4
1.7Sistematika penulisan 5
Bab 2 Landasan Teori
2.1Citra 6
2.2Citra Digital 6
2.2.1 Jenis Citra Digital 8
2.3Citra Bitmap 9
2.4Perngolahan Citra 10
2.4.1 Operasi Pengolahan Citra 11
2.5Pendeteksian Tepi 12
2.5.1 Metode-metode dalam Deteksi Tepi 15 2.5.2 Operator Laplacian of Gaussian (LoG) 16
2.6Derau (Noise) 18
2.7Peningkatan Kualitas Citra (Image Enhancement) 20 2.7.1. Filter Spasial (Spatial Filter) 20 2.7.1.1 Filter Pelolos Rendah (Low Pass Filter) 20 2.7.1.2 Filter Pelolos Tinggi (High Pass Filter) 21
2.7.1.3 High Boost Filter 22
2.8Perbaikan Citra (Image Restoration) 23
2.9 MSE dan PSNR 23
Bab 3 Analisis dan Perancangan sistem
3.1Analisis sistem 25
3.1.1 Analisis Masalah 25
3.1.2 Analisis Persyaratan 26
3.1.2.2Persyaratan Non-Fungsional 27
3.1.3 Analisis Proses 28
3.2Pemodelan 28
3.2.1 Use Case Diagram 28
3.2.2 Sequence Diagram 33
3.2.3 Activity Diagram 34
3.3Pseudocode Program 35
3.3.1 Pseudocode Gaussian Noise 35
3.3.2 Pseudocode Salt and Pepper Noise 35
3.3.3 Pseudocode Laplacian of Gaussian 36
3.3.4 Pseudocode High Boost Filtering 36
3.3.5 Pseudocode Menghitung nilai MSE dan PSNR 37
3.4Perancangan sistem 38
3.4.1 Flowchart Sistem 37
3.4.2 Perancangan Antarmuka (Interface) 40
3.4.2.1Form Home 40
3.4.2.2Form Menu Pengujian 41
3.4.2.3Form Menu Hasil 42
3.4.2.4Form Menu Help 43
3.4.2.5Form Menu About 44
Bab 4 Implementasi dan Pengujian Sistem
4.1Implementasi Sistem 46
4.1.1 Form Home 46
4.1.2 Form Pengujian 47
4.1.3 Form Hasil 49
4.1.4 Form Help 50
4.1.5 Form About 50
4.2Pengujian 51
4.2.1 Pengujian Laplacian of Gaussian 51
4.2.2 Pengujian Laplacian of Gaussian kombinasi High Boost Filter 55
4.3 Hasil Pengujian 57
4.3.1 Hasil Pengujian Laplacian of Gaussian terhadap Gaussian Noise 57 4.3.2 Hasil Pengujian Laplacian of Gaussian terhadap Salt and Pepper
Noise 60
4.3.3 Hasil Pengujian Laplacian of Gaussian Kombinasi High Boost Filtering terhadap Gaussian Noise 64 4.3.4 Hasil Pengujian Laplacian of Gaussian Kombinasi High Boost
Filtering terhadap Salt and Pepper Noise 66 4.3.5 Hasil Perbandingan Operator Laplacian of Gaussian dengan
Laplacian of Gaussian Kombinasi High Boost Filtering 69 Bab 5 Kesimpulan dan Saran
5.1Kesimpulan 74
5.2Saran 75
Daftar Pustaka 76
Listing Program 78
DAFTAR GAMBAR
Nomor gambar Keterangan Halaman
2.1 Sistem koordinat citra 8
2.2 Citra biner 8
2.3 Citra abu-abu (grayscale) 9
2.4 Citra warna atau (RGB) 10
2.5 Citra bitmap (bunga.bmp) 10
2.6 Tahapan dalam Pengolahan Citra 10
2.7 Model Tepi Satu Dimensi 13
2.8 Jenis-jenis Tepi 14
2.9 Proses Deteksi Tepi Citra 15
2.10 Proses deteksi tepi metode LoG 18
2.11 gaussian noise (A) dan salt and pepper noise (B) 19
2.12 Peningkatan kualitas citra 20
2.13 Perbaikan citra 23
3.1 Diagram Ishikawa 26
3.2 Use Case Diagram 29
3.3 Sequence Diagram 33
3.4 Activity Diagram 34
3.5 Flowchart sistem secara umum 38
3.6 Flowchart Laplacian of Gaussian 38
3.7 Flowchart High Boost Filtering 39
3.8 Flowchart MSE dan PSNR 39
3.9 FormHome 40
3.10 Form Menu Pengujian 41
3.11 Form Menu Hasil 42
3.12 Form Menu Help 44
3.13 Form Menu About 44
4.1 Form Home 46
4.2 Form Menu Pengujian 47
4.3 Form Simulasi Pengujian 47
4.4 Form Hasil 48
4.5 Form Simulasi Hasil 48
4.6 Form Help 49
4.7 Form About 49
4.8 Pilih menu Pengujian 50
4.9 Browse citra *.bmp pada file direktori 51
4.10 Citra input-an yang ditampilkan oleh sistem 52 4.11 Citra dengan Gaussian Noise (probabilitas 30%) 52 4.12 Citra dengan Salt and Pepper Noise (probabilitas 30%) 53 4.13 Citra hasil deteksi tepi operator Laplacian of Gaussian
(Gaussian Noise 30%)
4.14 Citra hasil deteksi tepi operator Laplacian of Gaussian (Salt and Pepper Noise 30%)
54 4.15 Citra hasil deteksi tepi operator Laplacian of Gaussian
kombinasi High Boost Filtering dengan nilai A = 1 (Gaussian Noise 30%)
55
4.16 Citra hasil deteksi tepi operator Laplacian of Gaussian kombinasi High Boost Filtering dengan nilai A = 1 (Salt and Pepper Noise 30%)
55
DAFTAR TABEL
Nomor
tabel
Keterangan
Halaman
3.1
Dokumentasi Naratif
Use Case Home
29
3.2
Dokumentasi Naratif
Use Case
Pengujian
30
3.3
Dokumentasi Naratif
Use Case
Hasil
31
3.4
Dokumentasi Naratif
Use Case
Help
32
3.5
Dokumentasi Naratif
Use Case About
32
3.6
Pseudocode
Gaussian Noise
35
3.7
Pseudocode Salt and Pepper Noise
35
3.8
Pseudocode
Laplacian of Gaussian
36
3.9
Pseudocode
High Boost Filtering
36
3.10
Pseudocode
nilai MSE dan PSNR
37
4.1
Hasil Deteksi Tepi Operator
Laplacian of Gaussian
Terhadap Citra
Ber-
noise
Gaussian
57
4.2
Nilai rata-rata MSE, PSNR, dan
running time
citra hasil deteksi tepi
Laplacian of Gaussian
terhadap citra ber-
noise Gaussian
59
4.3
Hasil Deteksi Tepi Operator
Laplacian of Gaussian
Terhadap Citra
Ber-
noise
Salt and Pepper
59
4.4
Nilai rata-rata MSE, PSNR, dan
running time
citra hasil deteksi tepi
Laplacian of Gaussian
terhadap citra ber-
noise Gaussian
61
4.5
Hasil Deteksi Tepi Operator
Laplacian of Gaussian
Kombinasi
High
Boost Filtering
Terhadap Citra Ber-
noise
Gaussian
62
4.6
Nilai rata-rata MSE, PSNR, dan
running time
citra hasil deteksi tepi
Laplacian of Gaussian+High Boost Filtering
terhadap citra ber-
noise
Gaussian
64
4.7
Hasil Deteksi Tepi Operator
Laplacian of Gaussian
Kombinasi
High
Boost Filtering
Terhadap Citra Ber-
noise
Salt and Pepper
65
4.8
Nilai rata-rata MSE, PSNR, dan
running time
citra hasil deteksi tepi
Laplacian of Gaussian
+
High Boost Filtering
terhadap citra ber-
noise
Salt and Pepper
68
4.9
Perbandingan nilai rata-rata MSE, PSNR, dan
running time
72
BAB I
PENDAHULUAN
1.1
Latar Belakang
Citra merupakan hasil representasi atau duplikasi dari sebuah objek ataupun merupakan
imitasi dari sebuah objek atau benda. Citra memiliki beberapa karakteristik yang
menjadikan citra tersebut sebagai media yang dapat menyampaikan informasi. Citra
digital saat ini banyak digunakan dalam berbagai bidang , seperti dalam bidang
kedokteran, hukum, perdagangan, pendidikan, maupun dalam kehidupan sehari-hari.
Citra digital dapat diolah maupun dimodifikasi menjadi citra digital yan lain,
proses ini disebut proses pengolahan citra digital. Pengolahan citra bertujuan untuk
memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau komputer.
Operasi pengolahan citra digital mencakup perbaikan citra, pemampatan citra, segmentasi
citra dan deteksi tepi citra.
Tepi adalah sebuah himpunan dari piksel-piksel yang terhubung yang berada pada
batas (
boundary
) diantara dua regional. Deteksi tepi berguna untuk mengidentifikasi
objek-objek yang ada pada citra seperti bentuk, tekstur dan ukuran citra tersebut dan
meningkatkan penampakan garis batas (
boundary
) dari suatu daerah atau objek yang
terdapat pada citra. Secara umum dapat dikatakan deteksi tepi berguna untuk menandai
bagian yang menjadi detail citra yang dapat memperjelas bentuk citra agar dapat dikenali
dan menganalisis citra lebih lanjut.
Biasanya operator yang digunakan untuk mendeteksi tepi yang pertama adalah
operator berbasis
Gradient
(turunan pertama), yaitu operator Robert, operator Sobel, dan
Laplacian
dan operator
Laplacian of Gaussian
. Deteksi tepi yang dihitung dengan
turunan pertama akan menghasilkan banyak titik-titik tepi. Idealnya tepi objek yang
diinginkan adalah sebuah garis tepi setebal satu pisel agar tidak menimbulkan keraguan
bila dilakukan analisis. Pendeteksian tepi dengan turunan kedua (operator
Laplacian
dan
Laplacian of Gaussian
) akan mempuyai ketebalan satu piksel saja, sesuai dengan
ketebalan garis tepi ideal yang diinginkan.
Turunan kedua, yaitu operator
laplacian
sangat sensitif terhadap
noise
yang
terletak pada titik-titik tepi, maka perlu dilakukan proses
smoothing
sebelum diterapkan
operator dari turunan kedua, operator ini dinamakan
Laplacian of Gaussian
. Kualitas citra
sangat bergantung pada proses pendeteksian tepi. Salah satu metode untuk meningkatkan
kualitas citra yaitu
High-Boost Filtering
.
High-Boost Filtering
dapat membuat citra
menjadi lebih tajam, dengan cara meninggikan nilai-nilai frekuensi yang ada pada citra.
High-Boost Filtering
merupakan sebuah metode dalam mengurangi atau
mereduksi noise pada citra digital. Roopashree.S, Sachin Saini, Rohan Ranjan Singh
melakukan penelitian berjudul “
Enchancement and Pre-Processing of Images Using
Filtering”
dimana
High-Boost Filtering
digunakan untuk memperbaiki sebuah citra yang
ada sehingga tidak memiliki noise (Roopashree,S,2012).
Berdasarkan latar belakang yang telah penulis uraikan, maka dilakukan penelitian
dengan judul “Perbandingan Hasil Deteksi Tepi
Laplacian of Gaussian
dan
Laplacian of
Gaussian
kombinasi
High-Boost Filtering
.”
1.2
Rumusan Masalah
Rumusan masalah dalam penelitian ini adalah apakah citra hasil deteksi tepi lebih baik
menggunakan operator
Laplacian of Gaussian
atau operator
Laplacian of Gaussian
1.3
Batasan Masalah
Adapun batasan masalah yang diangkat adalah sebagai berikut:
1.
Jenis file citra asli yang digunakan adalah citra berwarna dalam format .bmp
2.
Jenis operator deteksi tepi yang digunakan adalah
Laplacian of Gaussian
.
3.
Jenis
noise
yang digunakan ada 2, yaitu
Gaussian Noise
dan
Salt-pepper Noise
dengan persentase noise 10%, 20%,30%,40%, dan 50%
4.
Ukuran citra 300 x 300 piksel.
5.
Parameter yang digunakan untuk membandingkan kualitas citra adalah
Mean
Square Error
(MSE),
Peak Signal to Noise Ratio
(PSNR),
running time
(waktu
akses) dan kualitas struktur garis tepi(
edge
) yang dihasilkan secara visual.
6.
Menggunakan kernel 3x3 dari matriks nilai
pixel
citra dan pada
High-Boost
Filtering
nilai A berkisar antara 0 – 2.
7.
Bahasa pemrograman yang digunakan adalah C#.
1.4
Tujuan Penelitian
Tujuan penelitian ini adalah untuk mengetahui hasil perbandingan deteksi tepi pada citra
menggunakan operator
Laplacian of Gaussian
dengan
Laplacian of Gaussian
yang telah
dikombinasikan dengan
High-Boost Filtering
dan mengetahui operator yang lebih baik
dalam mendeteksi citra.
1.5
Manfaat Penelitian
Manfaat penelitian ini adalah menghasilkan suatu aplikasi perangkat lunak yang dapat
membandingkan kualitas hasil pendeteksian tepi sebuah citra. Sedangkan manfaat bagi
penulis adalah untuk mengetahui hasil yang optimal dalam mendeteksi tepi menggunakan
operator
Laplacian of Gaussian
dengan deteksi tepi
Laplacian of Gaussian
kombinasi
1.6
Metodologi Penelitian
Metodologi penelitian yang akan digunakan adalah:
1.
Studi Literatur
Studi literatur yang penulis lakukan bertujuan mendapatkan pengetahuan melalui
buku, jurnal, dan sebagainya untuk mengetahui operator deteksi tepi
Laplacian of
Gaussian
dan metode
High Boost Filtering
yang kemudian akan menghasilkan suatu
perbandingan hasil deteksi tepi tanpa metode filter dengan memakai metode filter.
2.
Analisis dan Perancangan
Dengan adanya rumusan dan batasan masalah, kebutuhan perancangan dianalisis
disertai pembuatan
flowchart, Unified Modeling Language(UML) ,Design Interface
.
3.
Implementasi
Implementasi dilakukan dengan menampilkan ke
user
hasil yang berbasis
Graphic
User Interface
(GUI) tentang pendeteksian tepi menggunakan operator
Laplacian of
Gaussian
dan pendeteksian tepi
Laplacian of Gaussian
yang telah dikombinasikan
dengan metode
High Boost Filtering
.
4.
Pengujian
Pengujian dilakukan dengan memberikan kernel pada operator
Laplacian of Gaussian
yaitu 3 x 3, kemudian diberikan kernel pada operator
Laplacian of Gaussian
yang
akan dikombinasikan dengan metode
High boost Filtering
dengan nilai
A
berkisar
antara 0,00 sampai 2,00 kemudian dihitung nilai
MSE, PSNR dan Running Time.
5.
Dokumentasi dan Laporan Akhir
1.7
Sistematika Penulisan
Agar pembahasan lebih sistematis, maka tulisan ini dibuat dalam lima bab, yaitu :
BAB I
PENDAHULUAN
Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi
“Perbandingan Hasil Deteksi Tepi
Laplacian of Gaussian
dengan
Laplacian of Gaussian
kombinasi
High Boost Filtering
”, rumusan
masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode
penelitian, tinjauan pustaka, dan sistematika penulisan.
BAB II
LANDASAN TEORI
Berisi tentang penjelasan singkat mengenai defenisi pengolahan citra,
operasi pengolahan citra, defenisi deteksi tepi,
noise,
metode
Laplacian of
Gaussian
dan
High Boost Filtering, Mean Squared Error (MSE),
dan
Peak
Signal to Noise Rasio (PSNR).
BAB III
ANALISIS DAN PERANCANGAN
Berisi tentang uraian analisis mengenai proses kerja dari metode
Laplacian
of Gaussian
dan
High Boost Filtering
yang terdiri dari
flowchart, Unified
Modeling Language (UML)
serta perancangan tampilan
form
dari aplikasi.
BAB IV
IMPLEMENTASI DAN PENGUJIAN
Pada tahap ini dilakukan pembuatan
system
dan
coding
sesuai dengan
analisis dan perancangan. Kemudian melakukan pengujian sistem.
BAB V
KESIMPULAN DAN SARAN
BAB 2
LANDASAN TEORI
2.1 Citra
Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan. (Sutoyo, Mulyanto,. 2009)
Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f di titik koordinat (x,y) dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila (x,y) dan nilai amplitudo f secara keseluruhan berhingga (finite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalah citra digital. Indeks baris dan kolom (x,y) dari sebuah pixel dinyatakan dalam bilangan bulat.(Kadir,2013)
Citra (image) atau istilah lain untuk gambar sebagai salah satu komponen multimedia yang memegang peranan sangat penting sebagai bentuk informasi visual. Meskipun sebuah citra kaya akan informasi, namun sering kali citra yang dimiliki mengalami penurunan mutu, misalnya mengandung cacat atau noise. Tentu saja citra semacam ini menjadi lebih sulit untuk diinterpretasikan karena informasi yang disampaikan oleh citra tersebut menjadi berkurang (Wiliyana, 2013).
2.2 Citra Digital
terkecil dari citra yang mengandung nilai terkuantisasi yang mewakili kecerahan dari sebuah warna pada sebuah titik tertentu.
Citra digital merupakan fungsi intensitas cahaya f(x,y), dimana harga x dan y adalah koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) yang merupakan tingkat kecemerlangan atau intensitas cahaya citra pada titik tersebut. Citra digital adalah suatu matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya yang disebut sebagai elemen gambar atau pixel menyatakan tingkat keabuan pada titik tersebut. Indeks baris dan kolom (x,y) dari sebuah pixel dinyatakan dalam bilangan bulat (integer).
Sebuah pixel merupakan sampel dari pemandangan yang mengandung intensitas citra yang dinyatakan dalam bilangan bulat. Untuk menunjukkan lokasi suatu pixel, koordinat (0,0) digunakan untuk posisi kiri atas dalam bidang citra, dan koordinat (m-1, n-1) digunakan untuk posisi kanan bawah dalam citra berukuran m x n pixel dimana m adalah kolom dan n adalah baris. Untuk menunjukkan tingkat pencahayaan suatu pixel, seringkali digunakan bilangan bulat yang besarnya 8 bit dengan lebar selang nilai 0-255 dimana 0 untuk warna hitam, 255 untuk warna putih, dan tingkat abu-abu berada di antara nilai 0 dan 255(Ahmad, 2005).
Gambar 2.1. Sistem koordinat citra
Sistem koordinat citra digital pada Gambar 2.1 tersebut dapat ditulis dalam bentuk matriks sebagai berikut:
( , ) =
(0,0) (0,1) … (0, − 1)
(1,0) (1,1) … (1, − 1)
. . .
. . .
( − 1,0) ( − 1,1). … ( − 1, − 1)
...(1)
Nilai pada suatu irisan antara baris dan kolom (pada posisi x,y) disebut dengan picture elements, image elements, pels ,atau pixels. Namun istilah yang sering digunakan dalam citra digital adalah pixels. (Sutoyo , 2009).
2.2.1 Jenis Citra Digital
Citra digital memiliki beberapa jenis, yaitu (Sianipar, R,. 2013) :
1. Citra biner : Setiap piksel hitam atau putih. Karena hanya ada dua kemungkinan nilai pada setiap piksel maka yang diperlukan hanya satu bit per piksel. Citra seperti ini sangat efisien untuk penyimpanan. Contoh citra biner dapat dilihat pada gambar 2.2.
Gambar 2.2. Citra biner 0
1 2 3
. .
.
.
M - 1
. .
.
2. Citra abu-abu (grayscale) : Setiap piksel merupakan bayangan abu-abu yang memiliki nilai intensital 0 (hitam) sampai 255 (putih). Rentang ini berarti bahwa setiap piksel dapat direpresentasikan oleh delapan bit atau satu byte. Contoh citra abu-abu (grayscale) dapat dilihat di gambar 2.3.
Gambar 2.3. Citra abu-abu (grayscale)
3. Citra warna atau RGB : Setiap piksel memiliki suatu warna khusus, warna tersebut dideskripsikan oleh jumlah warna merah(R, red), hijau(G, green), dan biru (B, blue). Citra ini dipandang sebagai penumpukan tiga matriks, yang berarti bahwa setiap piksel berkaitan dengan tiga nilai. Contoh citra warna atau RGB dapat dilihat pada gambar 2.4.
Gambar 2.4. Citra Warna atau (RGB)
2.3 Citra Bitmap
dipresentasikan dalam bentuk matriks atau dipetakan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini memiliki kelebihan untuk memanipulasi warna, tetapi untuk mengubah objek sulit. Tampilan bitmap mampu menunjukan kehalusan gradasi bayangan dan warna dari sebuah gambar. Oleh karena itu, bitmap merupakan media elektronik yang paling tepat untuk gambar-gambar dengan perpaduan gradasi warna yang rumit, seperti foto dan lukisan digital. Bitmap biasanya diperoleh dengan cara Scanner,Camera Digital, Video Capture, dan lain-lain. Contoh citra bitmap dapat dilihat pada gambar 2.5.(Sutoyo , 2009).
Gambar 2.5. Citra Bitmap (bunga.bmp)
2.4 Pengolahan Citra
Pengolahan citra digital (digital image processing) merupakan suatu kegiatan yang dilakukan untuk memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia maupun mesin (komputer). Dalam pengolahan citra yang menjadi masukan (input) dan keluaran (output) adalah citra, namun citra keluaran (output) kualitasnya lebih baik dari citra masukan (input). Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain, yang berarti jika inputannya citra maka outputnya berupa citra.(Barus,L.2015) Gambar 2.6 menunjukkan diagram alir proses yang terjadi pada suatu citra mulai dari proses pencitraan sampai pada analisis citra.
Beberapa alasan dilakukan pengolahan citra digital adalah sebagai berikut :
1. Untuk mendapatkan citra asli dari citra yang sudah rusak karena pengaruh noise yang bercampur dengan cira asli dalam suatu proses tertentu. Poses pengolahan citra bertujuan untuk mendapatkan citra yang mendekati citra asli.
2. Untuk mendapatkan citra dengan karakteristik tertentu dan cocok secara visual yang dibutuhkan dalam proses lanjut dalam pemrosesan analisis citra(Ainun,2014).
2.4.1 Operasi Pengolahan Citra
Secara umum, operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis sebagai berikut (Munir, R,. 2007) :
1. Peningkatan kualitas citra (image enhancement)
Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra. Dengan operasi ini, ciri-ciri khusus yang terdapat di dalam citra lebih ditonjolkan.
Contoh-contoh operasi perbaikan citra : a. Perbaikan kontras gelap/terang
b. Perbaikan tepian objek (edge enhancement) c. Penajaman (sharpening)
d. Pemberian warna semu (pseudocoloring) e. Penapis derau (noise filtering)
2. Perbaikan citra (image restoration)
Operasi ini bertujuan untuk menghilangkan/meminimumkan cacat pada citra. Tujuan perbaikan citra hampir sama dengan operasi peningkatan kualitas citra. Bedanya, pada perbaikan citra penyebab degradasi gambar diketahui.
3. Pemampatan citra (image compression)
Pemampatan citra atau kompresi citra bertujuan untuk meminimalkan kebutuhan memori dalam merepresentasikan citra digital dengan mengurangi duplikasi data di dalam citra sehingga memori yang dibutuhkan menjadi lebih sedikit daripada representasi citra semula. Hal yang penting dalam jenis operasi ini adalah citra yang dimampatkan harus tetap mempunyai kualitas gambar yang bagus.
4. Segmentasi citra (image segmentation)
Segmentasi citra bertujuan untuk membagi wilayah-wilayah yang homogen. Segmentasi membagi citra ke dalam daerah intensitasnya masing-masing sehingga bisa membedakan antara objek dan background-nya. Tingkat keakurasian segmentasi bergantung pada tingkat keberhasilan prosedur analisis yang dilakukan. Jenis operasi ini berkaitan dengan pengolahan pola. 5. Analisis citra (image analysis)
Jenis operasi ini bertujuan mengitung besaran kuantitif dari citra untuk menghasilkan deskripsinya. Teknik analisis citra mengekstraksi ciri-ciri tertentu yang membantu dalam identifikasi objek.
6. Rekonstruksi citra (image reconstruction)
Jenis operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekonstuksi citra banyak digunakan dalam bidang medis.
Operasi-operasi tersebut bertujuan untuk membentuk objek dari beberapa citra hasil proyeksi. Pada citra digital, dengan tipe bitmap tipe warna pada titik-titik piksel dibentuk dari sebuah data numerik. Tinggi dan rendahnya keabuan piksel dinyatakan dalam bentuk intensitas atau derajat keabuan. Satuan lebar intensitas merupakan lebar memori (bit) citra yang disebut dengan format piksel.
2.5 Pendeteksian Tepi
bersangkutan. Tepian citra dapat merepresentasikan objek-objek yang terkandung dalam citra tersebut, bentuk, dan ukurannya serta terkadang juga informasi tentang teksturnya. Tepian citra adalah posisi dimana intensitas piksel dari citra berubah dari nilai rendah ke nilai tinggi atau sebaliknya. Deteksi tepi umumnya adalah langkah awal melakukan segmentasi citra. Tujuan dari deteksi tepi adalah untuk menandai bagian yang menjadi detail citra dan memperbaiki detail dari citra yang kabur akibat error atau adanya efek dari cahaya(Putra,2010).
Deteksi tepi adalah proses untuk menemukan perubahan intensitas yang berbeda nyata dalam sebuah bidang citra. Sebuah operator deteksi tepi merupakan operasi bertetangga, yaitu sebuah operasi yang memodifikasi nilai keabuan sebuah titik berdasarkan nilai-nilai keabuaan dari titik-titik yang ada di sekitarnya (tetangganya) yang masing-masing mempunyai bobot tersendiri. Bobot-bobot tersebut nilainya tergantung pada operasi yang akan dilakukan, sedangkan banyaknya titik tetangga yang terlibat biasanya adalah 2x2, 3x3, 3x4, 7x7, dan sebagainya. (Sutoyo,2009)
Kriteria untuk menentukan lokasi terjadinya tingkat perubahan intensitas yang mendadak ada 2 jenis yaitu:
a. Nilai turunan pertama intensitas adalah lebih besar dari magnitude batas ambang (threshold) tertentu.
b. Nilai turunan kedua intensitas mempunyai sebuah “zero crossing”. (Melly,2010)
Secara umum tepi dapat didefinisikan sebagai batas antara dua region (dua piksel yang saling berdekatan) yang memiliki perbedaan intensitas yang tajam atau tinggi. Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbeda-beda, tergantung pada perubahan intensitas. Untuk lebih memahami defenisi tepi, Gambar 2.7 memperlihatkan model tepi dalam ruang satu dimensi (Taurisna,2009).
Deteksi tepi sangat penting dalam pengolahan citra karena pendeteksian tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Dimana, tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek dalam citra. Tujuan operasi pendeteksi tepi adalah untuk meningkatkan penampakan garis batas suatu daerah atau objek di dalam citra.(Apriyana,2013)
Ada tiga macam tepi yang terdapat di dalam citra digital, yaitu (Citra,2010): 1. Tepi curam
Jenis tepi ini terbentuk karena perubahan intensitas yang tajam, berkisar 900.
2. Tepi landai
Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat juga dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan. 3. Tepi yang mengandung noise
Umumnya tepi yang terdapat pada aplikasi computer vision mengandung derau. Perbedaan ketiga macam tepi tersebut, diperlihatkan pada Gambar 2.8.
Gambar 2.8. Jenis-jenis Tepi
Deteksi tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra. Deteksi tepi pada suatu citra memiliki tujuan sebagai berikut(Taurisna,2009):
1. Menandai bagian yang menjadi detil citra.
Gambar 2.9 memperlihatkan bagaimana tepi dari suatu citra dapat diperoleh dengan operasi pendeteksian tepi.
Gambar 2.9. Proses Deteksi Tepi Citra
2.5.1 Metode-metode dalam Deteksi Tepi
Menurut Munir (2004), metode-metode yang digunakan dalam deteksi tepi : 1. Operator gradien pertama (differential gradent)
Perubahan intensitas yang besar dalam jarak yan singkat dipandang sebagai fungsi yang memiliki kemiringan yang besar. Kemiringan fungsi biasanya dilakukan dengan menghitung turunan pertama(gradient). Operator gradien pertama terdiri dari beberapa teknik dalam mendeteksi tepi yaitu :
a. Operator gradien selisih-terpusat(center-difference) b. Operator Sobel
c. Operator Prewitt d. Operator Roberts
2. Operator turunan kedua (Laplacian)
3. Operator Kompas (compass operator)
Operator kompas digunakan untuk mendeteksi semua tepi dari berbagai arah, dapat menampilkan tepi dari 8 macam arah mata angin : Utara, Timur Laut, Timur, Tenggara, Selatan, Barat Daya, dan Barat Laut.
2.5.2 Operator Laplacian of Gaussian (LoG)
Operator laplacian sangat sensitif terhadap noise yang terletak pada titik-titik tepi. Jadi, sebelum deteksi tepi dilakukan, filter yang dapat melemahkan noise diperlukan. Operator Laplacian of Gaussian merupakan kombinasi dari operator gaussian dan operator laplacian.(Ainun,2014)
Operasi laplacian memberitahukan keberadaan suatu tepi ketika keluaran dari operator membuat perpotongan dengan sumbu x. Namun bila suatu daerah dalam citra mempunyai nol yang seragam, diabaikan dan tidak dianggap sebagai tepi. Secara prinsip, lokasi titik perpotongan dapat diduga sampai resolusi sub-piksel menggunakan interpolasi linier, tetapi hasilnya mungkin tidak akurat akibat pengaruh noise. Filter Gaussian adalah salah satu filter linear dengan nilai pembobotan untuk setiap anggotanya dipilih berdasarkan bentuk fungsi Gaussian. Filter ini digunakan untuk menghilangkan noise yang bersifat sebaran normal.
Titik-titik tepi yang dilacak dengan cara menemukan perpotongan dengan sumbu x oleh fungsi turunan kedua dari intensitas citra sangat sensitif terhadap noise. Oleh karena itu, diperlukan suatu filter yang dapat melemahkan noise sebelum penguatan tepi dilakukan. (Ahmad,2005) Karakteristik mendasar dari pelacak tepi Laplacian of Gaussian adalah :
1. Filterisasi pengaburnya adalah filter Gaussian. 2. Penguatan tepi adalah fungsi turunan kedua.
3. Kriteria pelacakan adalah dengan menemukan titik perpotongan dengan sumbu x dalam fungsi turunan kedua yang bersesuaian dengan puncak dalam suatu fungsi turunan pertama.
4. Lokasi dari tepi dapat diduga dengan resolusi subpiksel menggunakan interpolasi linear .(Annisa,2010)
laplacian diterapkan untuk menemukan titik potong dengan sumbu x dalam fungsi turunan kedua yang bersesuaian dengan puncak dalam fungsi turunan pertama. Kemudian., lokasi tepi diperoleh dari resolusi subpiksel menggunakan interpolasi linier. (Sutoyo,2009)
Metode ini mendeteksi tepi lebih akurat khususnya pada tepi yang curam. Pada tepi yang curam, turunan keduanya memiliki zero-crossing (persilangan nol) yaitu titik dimana terdapat pergantian tanda nilai turunan kedua, sedangkan pada tepi yang landai tidak terdapat persilangan nol (Gonzalez et al,2005). Untuk menghindari pelacakan tepi yang tidak berbeda nyata, hanya titik perpotongan dengan sumbu x yang bersesuaian dengan turunan pertama dan bernilai di atas nilai tertentu saja yang dipilih sebagai titik-titik tepi. Operator LoG merupakan operator turunan kedua yang dihitung dengan:
∇ ( , ) = ) ( ) ...(2)
Dimana : : standar deviasi Gaussian, x : nilai piksel dari sumbu x, y : nilai piksel dari sumbu y,
: nilai konstanta eksponensial (2,78128...).
Fungsi ∇2g(x,y) merupakan turunan kedua dari fungsi Gauss, kadang-kadang
disebut juga fungsi Laplacian of Gaussian (LoG). Jadi, untuk mendeteksi tepi dari citra yang mengalami gangguan, kita dapat melakukan salah satu dari dua operasi ekivalen di bawah ini:
1. Konvolusi citra dengan fungsi Gauss G(x,y), kemudian lakukan operasi Laplacian terhadap hasilnya, atau
2. Konvolusi citra dengan penapis LoG.(Wibowo,2014)
Gambar 2.10 menunjukkan contoh penerapan metode deteksi tepi dengan operator Laplacian of Gaussian (LOG).
Gambar 2.10. Proses deteksi tepi metode LoG (Wibowo,2014)
2.6 Der au (Noise)
Noise merupakan gangguan yang disebabkan oleh menyimpangnya data digital yang diterima oleh alat penerima data gambar yang mana dapat menggangu kualitas citra atau Noise adalah sebuah gangguan yang terjadi akibat dari kurang sempurnanya proses capture yang dilakukan sehingga mengakibatkan terjadinya pencahayaan yang tidak merata. Akibat tidak meratanya pencahayaan mengakibatkan intensitas tidak seragam, kontras citra terlalu rendah sehingga objek sulit untuk dipisahkan dari latar belakangnya, atau gangguan yang disebabkan oleh kotoran-kotoran yang menempel pada citra.(Rifangi,2014)
Beberapa jenis noise, yaitu gaussian noise dan salt and pepper noise.
1. Gaussian noise merupakan model noise yang mengikuti distribusi normal standar dengan rata-rata nol dan standar deviasi. Efek dari noise ini pada gambar adalah munculnya titik-titik berwarna yang jumlahnya sama dengan presentase noise. Fungsi kepadatan probabilitas (probabilty density function) adalah suatu fungsi yang menyatakan nilai kemungkinan terjadinya kejadian tertentu. Contoh gaussian noise dapat dilihat pada gambar 2.11(A). Probability Density Function ( PDF) variabel random Gaussian adalah (Hermawati, 2013) :
( ) =
√
( ) / ...(3)
: nilai tengah (mean), : standar deviasi
: nilai konstanta eksponensial (2,78128...).
2. Salt and pepper noise adalah bentuk noise yang biasanya terlihat titik-titik hitam dan putih pada citra seperti tebaran garam dan merica. Noise ini disebabkan karena terjadinya error bit dalam pengiriman data, piksel-piksel yang tidak berfungsi dan kerusakan pada lokasi memori, karakteristik Fungsi Probabilitas Kepadatan (Probability Density Function).
Probability Density Function (PDF) Salt and Pepper Noise :
( )= 0
...(4)
Dimana : z : gray-level,
Pa : kemungkinan (probabilitas) level a Pb : kemungkinan (probabilitas) level b
Jika b > a, intensitas b akan tampak sebagai titik terang pada citra. Sebaliknya, level a akan tampak seperti titik gelap. Jika selain Pa atau Pb nol, impulse noise disebut
juga unipolar . Jika probability selain nol, dan khususnya diperkirakan sama,nilai impulse noise akan mirip butiran salt and pepper secara acak yang terdistribusi pada citra. Karena alasan ini noise bipolar impulse disebut juga noise salt and pepper (Prasetyo , 2011).Contoh salt and pepper noise dapat dilihat pada gambar 2.11(B).
2.7 Peningkatan Kualitas Citra (Image Enhancement)
Peningkatan kualitas citra adalah suatu proses untuk mengubah sebuah citra menjadi citra baru sesuai dengan kebutuhan melalui berbagai cara. Cara-cara yang bisa dilakukan misalnya dengan fungsi transformasi, operasi matematis, pemfilteran, dan lain-lain. Tujuan utama dari peningkatan kualitas citra adalah untuk memproses citra sehingga citra yang dihgasilkan lebih baik daripada citra aslinya untuk aplikasi tertentu. Contoh peningkatan kualitas citra dapat dilihat pada gambar 2.12.
Gambar 2.12. Peningkatan kualitas citra
2.7.1 Filter Spasial (Spatial Filter)
Filter spasial adalah operasi yang dilakukan terhadap intensitas piksel dari suatu image dan bukan terhadap komponen frekuensi dari gambar. Jenis metode yang digunakan untuk peningkatan kualitas citra (image enhacement) adalah low pass filter dan high pass filter. Sedangkan bagian-bagian dari low pass filter dan high pass filter akan membentuk suatu metode yaitu high boost filter.(Barus,L.2015)
2.7.1.1Filter Pelolos Rendah (Low Pass Filter)
Low pass filter adalah proses filter yang mengambil citra dengan gradiasi intensitas yang halus dan perbedaan intensitas yang tinggi akan dikurangi atau di buang. Ciri-ciri dari fungsi low pass filter adalah (Barus,L.2015) :
1. Untuk menghaluskan citra
3. Bobot filter selalu positif yang totalnya bernilai 1 4. Contoh beberapa filternya adalah :
1/ 9 1 1 11 1 1 1 1 1
1/ 6 0 1 01 2 1 0 1 0
2.7.1.2Filter Pelolos Tinggi (High Pass Filter)
High pass filter adalah proses filter yang mengambil citra dengan gradiasi intensitas yang tinggi dan perbedaan intensitas yang rendah akan dikurangi atau dibuang. Agar itu terjadi, maka digunakan filter pelolos rendah dan filter pelolos semua (allpass filter) Ciri-ciri fungsi high pass filter adalah (Barus,L.2015):
1. Disebut sebagai sharpening mask, karena mempercepat pergantian batas gelap dan terang
2. Filter memiliki nilai positif di tengah, negatif di pinggir, dan total keseluruhan bobot harus 0
3. Hasil high pass filter adalah selisih antara allpass filter dengan low pass filter, dengan penjelasan berikut :
W = 0 00 1 00
0 0 0
Matriks diatas disebut sebagai matriks pelolos semua (allpass filter), Artinya : = * ...(5)
Maka high pass filter adalah : = −
= * − *
= ( − )* ...(6)
Sehingga dapat mengidentikkan bahwa :
Beberapa contoh matiks high pass filter yang berasa dari low pass filter adalah
= 0 00 1 00
0 0 0
− 1 1 11 1 1 1 1 1
= − 1 − 1 − 1− 1 8 − 1 − 1 − 1 − 1
= 0 00 1 00
0 0 0
− 0 1 01 2 1 0 1 0
= − 10 − 14 − 10
0 − 1 0
2.7.1.3 High Boost Filter
High-Boost merupakan salah satu bagian dari operasi yang dapat dilakukan untuk melakukan perbaikan citra. High-Boost Filtering bertujuan untuk mempertahankan (mempertajam) komponen frekuensi tinggi dan menghilangkan (mengurangi) komponen frekuensi rendah (Rifangi,2014).
High boost filter adalah proses filter yang berasal dari citra dengan dasar pemrosesannya menggunakan metode low pass filter dan high pass filter. Metode ini memiliki ciri-ciri sebagai berikut :
1. Jika A = 1, maka high boost filter akan menjadi high pass filter biasa. 2. Hasilnya adalah citra yang lebih tajam pada bagian pinggirnya 3. Memiliki rumus :
High boost = A(asli) – (lowpass)
= A(asli) – ((asli) – (highpass)) = (A-1)(asli) + (highpass) atau
2.8 Perbaikan Citra (Image Restoration)
Restorasi citra digital adalah suatu teknik yang memperhatikan bagaimana mengurangi perubahan bentuk dan penurunan kualitas citra yang diawali selama pembentukan citra tersebut. Restorasi citra berfokus pada penghilangan atau penekanan degradasi yang terjadi selama proses pengembalian bentuk citra sebernarnya. Degradasi semacam itu termasuk derau (noise), yang meliputi error pada nilai-nilai piksel, dan pengaruh optik seperti pengaburan fokus atau karena gerakan kamera(Barus,L.2015). Perbaikan citra bertujuan meningkatkan tampilan citra untuk pandangan manusia atau untuk mengkonversi suatu citra agar memiliki format yang lebih baik sehingga citra tersebut menjadi lebih mudah diolah dengan mesin (komputer). Adapun contoh dari perbaikan citra dapat dilihat pada gambar 2.13 (Rifangi,2014).
Gambar 2.13. Perbaikan citra
2.9 Mean Square Error (MSE)dan Peak Signal to Noise Ratio (PNSR)
Ada beberapa parameter pengukuran kesalahan atau error dalam pemrosesan citra. Dua parameter yang paling umum digunakan adalah Mean Square Error (MSE)dan Peak Signal to Noise Ratio (PNSR).
akan semakin buruk. Sebaliknya, semakin kecil nilai MSE, maka tampilan pada citra hasil akan semakin baik. MSE dapat dihitung dengan menggunakan rumus:
= ∑ ∑ ( ( , ) − ( , )) ...(9)
Dimana :
m dan n = ukuran panjang dan lebar citra
f (i,j) = intensitas citra di titik (i,j) sebelum terkena noise (i,j) = intensitas citra di titik (i,j) setelah noise dihilangkan
Semakin kecil nilai MSE, semakin bagus perbaikan citra yang digunakan.
PSNR merupakan nilai perbandingan antara harga maksimum warna pada citra hasil filtering dengan kuantitas gangguan (noise) yang dinyatakan dalam satuan decibel(db), noise yang dimaksud adalah akar rata-rata kuadrat nilai kesalahan (
MSE
). Semakin besar nilai PSNR, semakin baik pula hasil yang diperoleh padatampilan citra hasil. Sebaliknya, semakin kecil nilai PSNR, maka semakin buruk pula hasil yang diperoleh pada tampilan citra hasil. Secara Matematis, nilai PSNR dapat dinyatakan dengan persamaan berikut :
...(10) Tidak seperti MSE, nilai PSNR yang lebih besar mengindikasikan bahwa kualitas tersebut lebih baik.
) 255 ( 10 *
20
MSE Log
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Analisis sistem merupakan suatu tahapan awal yang harus dilakukan untuk membantu memahami suatu masalah yang dibutuhkan oleh sistem. Hal ini dilakukan agar sistem yang dibuat dapat diketahui permasalahan-permasalahan yang ada sehingga dapat membantu di dalam proses perancangan model suatu sistem yang akan dibangun dan nantinya akan diimplementasikan sehingga sistem tersebut berguna.
3.1.1 Analisis Masalah
Pendeteksian tepi gambar pada citra asli adalah hal yang biasa. Permasalahan dalam perancangan sistem ini yaitu melakukan deteksi tepi pada citra yang telah rusak akibat noise yaitu, Gaussian Noise dan Salt and Pepper Noise yang telah diberikan. Operator yang digunakan untuk melakukan pendeteksian tepi terhadap citra adalah Laplacian of Gaussian, dimana pada operator ini terdapat teknik Gaussian smoothing untuk melemahkan noise. Tetapi kualitas citra sangat begantung pada proses pendeteksian tepi sehingga perlu teknik filtering untuk mempertajam kualitas citra yaitu seperti High Boost Filtering. Masalah yang muncul ialah teknik deteksi tepi yang manakah yang baik untuk diimplementasikan pada citra yang memiliki noise.
Gambar 3.1 Diagram Ishikawa
Diagram Ishikawa yang ditunjukan pada Gambar 3.1 terbagi atas dua bagian yaitu head dan bone. Bone terdiri dari 4 aspek yaitu Material, Metode, User dan Machine. Material adalah yang diperlukan dalam menjalankan sistem yaitu citra berwarna dengan format (.bmp) dan noise yaitu Gaussian noise dan Salt and Pepper noise, Method adalah bagaimana proses deteksi dilakukan yaitu dengan menggunakan operator LoG dan operator LoG kombinasi High Boost filtering, User adalah pengguna dari sistem tersebut, dan Machine dari deteksi tepi citra yaitu mendeteksi citra yang memiliki noise dengan baik. Head dari sistem ini yaitu melakukan deteksi tepi citra dan melakukan perbandingan dari hasil deteksi tepi citra tersebut.
3.1.2 Analisis Persyaratan
Analisis persyaratan ini meliputi analisis persyaratan fungsional (functional requirement) dan analisis persyaratan non-fungsional (nonfunctional requirement).
3.1.2.1Persyaratan Fungsional
1. Sistem hanya menerima citra berwarna dengan format (.bmp) berukuran 300x300 piksel.
2. Sistem akan meng-generatenoise yang dipilh oleh user antara Gaussian noise atau Salt-pepper noise dengan persentasi noise dalam range 10% – 50 %. 3. Sistem hanya memproses nilai A dengan rentang 0,00 – 2,00 pada metode
High Boost Filtering.
4. Sistem hanya mendeteksi tepi citra dengan metode Laplacian of Gaussian dan Laplacian of Gaussian kombinasi High Boost Filtering.
5. Sistem dapat menghitung Mean Squared Error (MSE), Peak Signal to Noise Rasio (PSNR) dan Running Time sebagai pembanding proses waktu kerja pada bagian citra tertentu.
3.1.2.2Persyaratan Non-Fungsional
Persyaratan non-fungsional adalah beberapa persyaratan yang harus dilakukan oleh sistem. Beberapa persyaratan non-fungsional yang dirancang untuk sistem ini adalah sebagai berikut :
1. Performa
Sistem yang akan dibangun harus dapat menunjukkan hasil deteksi tepi yang telah diproses.
2. Mudah dipelajari dan digunakan (user friendly)
Sistem yang akan dibangun harus sederhana dan mudah dipelajari serta mudah dioperasikan oleh pengguna (user).
3. Dokumentasi
Sistem yang akan dibangun dapat menyimpan citra noise dan citra hasil dari proses deteksi tepi.
4. Kontrol
Sistem yang akan dibangun harus dapat memunculkan pesan error apabila tidak sesuai syarat yang ditetapkan sistem.
5. Hemat Biaya
6. Manajemen kualitas
Sistem yang dibangun harus memiliki kualitas yang baik yaitu dapat melakukan proses pendeteksian tepi dan dapat menghitung nilai MSE, PSNR dan Running time secara tepat dan akurat.
3.1.3 Analisis Proses
Dalam sistem ini akan dilakukan proses pendeteksian tepi menggunakan operator Laplacian of Gaussian dengan operator Laplacian of Gaussian kombinasi High-Boost Filtering. Citra inputan yang akan diproses adalah citra berwarna yang terlebih dahulu akan diberikan noise Gaussian atau Salt & Pepper dengan pilihan nilai probabilitas 10% hingga 50%. Setelah itu maka dilakukan proses deteksi tepi. Selanjutnya dilakukan perhitungan MSE, PSNR,Running time dan penyimpanan citra hasil.
3.2 Pemodelan
Pada bagian ini digunakan Unified Modeling Language (UML) sebagai bahasa spesifikasi standar suatu model yang berfungsi untuk membantu merancang sistem tersebut. Model UML yang digunakan dalam penelitian ini yaitu use case diagram, sequence diagram, dan activity diagram.
3.2.1 Use Case Diagram
Gambar 3.2 Use Case Diagram Pada use case ini terdapat actor yang memiliki pilihan untuk :
a. Memilih Home adalah menu tampilan awal sistem.
b. Memilih Pengujian adalah menu yang memiliki bagian menjalankan proses pengolahan citra dalam pendeteksian tepi menggunakan metode Laplacian of Gaussian dengan Laplacian of Gaussian kombinasi High-Boost filtering. c. Memilih Hasil adalah menu yang menampilkan hasil perbandingan antara hasil
pendeteksian tepi.
d. Memilih Help adalah menu petunjuk penggunaan sistem.
e. Memilih About adalah menu untuk melihat profil pembuat sistem.
[image:42.612.127.518.76.388.2]Berikut ini merupakan tabel dokumen naratif dari use caseHome yang dapat dilihat pada tabel 3.1
Tabel 3.1 Dokumentasi Naratif Use CaseHome
Nama Use case Home
Actor Pengguna
Description Use case ini menjalankan tampilan awal digunakan dari
Pre-Condition Aplikasi siap untuk menerima inputan.
Typical course of event
Kegiatan pengguna Respon sistem
1. Menekan tombol Home 2. Menampilkan tampilan
awal dari pilihan home
Alternatecourse Aksi Aktor Respon sistem
Post condition Sistem telah melakukan proses pemilihan menu home
Berikut ini merupakan tabel dokumen naratif dari use case Pengujian yang dapat dilihat pada tabel 3.2
Tabel 3.2 Dokumentasi Naratif Use Case Pengujian
Nama Use case Pengujian
Actor Pengguna
Description Use case ini menjalankan proses pendeteksian tepi yang akan
digunakan dari sistem ini
Pre-Condition Aplikasi siap untuk menerima inputan.
Typical course of event
Kegiatan pengguna Respon sistem
1. Menekan tombol
Pengujian
3. Memilih gambar yang ingin diolah (*.bmp) dengan menekan tombol
Browse
2. Menampilkan isi dari pilihan pengujian
4. Sistem akan merespon dengan masuk ke direktori penyimpanan citra
5. Menampilkan citra yang
telah dipilih oleh
pengguna 6. Selanjutnya
menambahkan salah satu noise pada citra dengan memilih ukuran noise (dalam range 10%, 20%, 30%, 40%, 50%) pada
daftar noise yang
diinginkan, lalu klik salah satu radio button
dalam memilih jenis
noise
8. Klik tombol Save untuk
menyimpan citra yang telah diberi noise
7. Sistem akan menampilkan
hasil noise yang
diinginkan pada citra
10. Selanjutnya proses untuk mendeteksi tepi dengan klik salah satu radio
button untuk menentukan
operator dalam
mendeteksi tepi (tentukan nilai A antara 0-2 untuk operator deteksi tepi
Laplacian of Gaussian
kombinasi High-Boost
filtering)
11. Sistem akan menampilkan hasil citra deteksi tepi
12. Menekan button
Calculate untuk
menghitung nilai MSE, PSNR dan Running Time
13. Menampilkan nilai MSE, PSNR dan Running Time
Alternatecourse Aksi Aktor Respon sistem
Post condition Sistem telah melakukan proses pendeteksian tepi citra
Berikut ini merupakan tabel dokumen naratif dari use case Hasil yang dapat dilihat pada tabel 3.3
Tabel 3.3 Dokumentasi Naratif Use Case Hasil
Nama Use case Hasil
Actor Pengguna
Description Use case ini menampilkan hasil dari pengujian sistem
Pre-Condition Aplikasi siap untuk menerima inputan.
Typical course of
event
Kegiatan pengguna Respon sistem
1. Menekan tombol Open
pada bagian Citra asli 2. Sistem dengan masuk ke direktori akan merespon penyimpanan citra
3. Menampilkan citra asli, nama file citra dan ukuran citra yang telah dipilih oleh pengguna
4. Menekan tombol Open
pada bagian Citra noise
5. Sistem akan merespon
dengan masuk ke direktori penyimpanan citra
6. Menampilkan citra noise dan citra hasil deteksi tepi
dengan menggunakan
operator Laplacian of
Gaussian dan Laplacian of
Gaussian kombinasi High
Boost filtering yang telah
probabilitas noise, MSE,
PSNR dan running time.
Alternatecourse Aksi Aktor Respon sistem
Post condition Sistem telah melakukan proses menampilkan hasil pengujian
Berikut ini merupakan tabel dokumen naratif dari use case Help yang dapat dilihat pada tabel 3.4
Tabel 3.4 Dokumentasi Naratif Use CaseHelp
Nama Use case Help
Actor Pengguna
Description Use case ini menjelaskan cara penggunaan dari system ini.
Pre-Condition Aplikasi siap untuk menerima inputan.
Typical course of event
Kegiatan pengguna Respon system
1. Menekan menu
Help
2. Menampilkan isi dari Help tersebut.
Alternatecourse Aksi Aktor Respon sistem
Post condition Sistem telah melakukan proses pemilihan menu Help
Berikut ini merupakan tabel dokumen naratif dari use caseAbout yang dapat dilihat pada tabel 3.5
Tabel 3.5 Dokumentasi Naratif Use CaseAbout
Nama Use case About
Actor Pengguna
Description Use case ini menampilkan profil dari pembuat sistem
Pre-Condition Aplikasi siap untuk menerima inputan.
Typical course of event
Kegiatan pengguna Respon system
1. Menekan menu About. 2. Menampilkan isi dari About tersebut.
Alternatecourse Aksi Aktor Respon sistem
3.2.2 Sequence Diagram
[image:46.612.128.522.244.567.2]Sequence diagram (diagram urutan) adalah suatu diagram yang menampilkan interaksi-interaksi antar sejumlah objek di dalam sistem yang disusun pada sebuah urutan atau rangkaian waktu. Sequence diagram digunakan untuk menunjukkan gambaran skenario atau rangkaian langkah-langkah yang dilakukan sebagai sebuah respon dari suatu kejadian/event untuk menghasilkan output apa yang dihasilkan. Sequence diagram pada sistem perbandingan hasil deteksi tepi dapat dilihat pada Gambar 3.3.
Gambar 3.3 Sequence Diagram
3.2.3 Activity Diagram
menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Berikut ini merupakan activity diagram pada sistem yang akan dirancang. Activity diagram pada sistem perbandingan hasil deteksi tepi dapat dilihat pada Gambar 3.4
Gambar 3.4 Activity Diagram
3.3 Pseudocode Program
tersebut hanya ditujukan agar dapat lebih mudah dimengerti manusia. Tujuan penggunaan utama dari pseudocode adalah untuk memudahkan manusia dalam memahami prinsip-prinsip dari suatu algoritma pada bahasa pemrograman.
3.3.1 Pseudocode Gaussian Noise
Tabel 3.6 PseudocodeGaussian Noise
1. Bitmap image <- new Bitmap
2. x <- image.Width
3. y <- image.Height
4. proba <- inputan user
5. Random rnd <- new Random()
6. getGaussianNumber()
7. np <- (GaussianNumber * proba) + (piksel[i+j])
Keterangan :
1. Membaca inputan citra bitmap. 2. Mengambil nilai lebar piksel citra. 3. Mengambil nilai panjang piksel citra. 4. Memberi nilai probabilitas noise. 5. Mengambil nilai random.
6. Mengambil nilai GaussianNumber untuk membangkitkan noise. 7. Membangkitkan noise Gaussian.
3.3.2. Pseudocode Salt and Pepper Noise
Tabel 3.7 PseudocodeSalt and Pepper Noise
1. Bitmap image <- new Bitmap
2. x <- image.Width
3. y <- image.Height
4. proba <- inputan user
5. Random rnd <- new Random()
6. x1 <- Random (0,(x-1))
y1 <- Random (0,(y-1))
7. val <- Random (1-10)
8. if val to 5
(generate pepper(x1,y1,(255,0,0,0)) else
(generate salt(x1,y1,(255,255,255,255))
Keterangan :
3. Mengambil nilai panjang piksel citra. 4. Memberi nilai probabilitas noise. 5. Mengambil nilai random.
6. Mengambil nilai random untuk menentukan letak noise. 7. Mengambil nilai random untuk memilih salt atau pepper. 8. Membangkitkan noise Salt and Pepper.
3.3.3 Pseudocode Laplacian of Gaussian
Tabel 3.8 PseudocodeLaplacian of Gaussian
1. Bitmap Image <- new Bitmap(citra noise)
2. citra LoG <- deteksi tepi LoG (citra noise)
Keterangan :
1. Membaca inputan citra yang sudah diberi noise.
2. Deteksi tepi citra dengan operator Laplacian of Gaussian.
3.3.4 Pseudocode High Boost Filtering
Tabel 3.9 PseudocodeHigh Boost Filtering
Keterangan :
1. Membaca inputan citra yang sudah diberi noise.
2. Menginisialisasi variabel dengan baris piksel (x) dan kolom piksel (y). 3. Mengambil nilai A untuk filtering antara 0,0 – 2,0.
4. Membaca matriks dengan fomat 3x3 dan melakukan perhitungan Hasil dengan menambahkan hasil perhitungan Hasil dengan nilai Hasil sebelumnya dan selanjutnya menghitung nilai High Boost filtering yaitu perkalian antara nilai A dengan piksel citra ditambah dengan nilai Hasil yang diperoleh.
1. Bitmap Image <- new Bitmap(citra noise)
2. Hasil <- 0
row <- x column <- y
3. A <- (0-2)
4. for i <- 0<3
column <-y for j <- 0<3
Hasil += pikselCitra[row,column] * nilaiTapisHighBoost[i,j] column++, row++
3.3.5 Pseudocode nilai MSE dan PSNR
Tabel 3.10 Pseudocode nilai MSE dan PSNR
1. [M N] <- size(citra)
2. error <- citra_awal - citra_noise
3. MSE <- sum(sum(error .* error)) / (M * N)
4. PSNR <- 10*log(255*255/MSE) / log(10)
Keterangan :
1. Deklarasi ukuran matriks citra kolom adalah M dan baris adalah N. 2. Deklarasi nilai error.
3. Hitung nilai MSE. 4. Hitung nilai PSNR.
3.4 Perancangan Sistem 3.4.1 Flowchart Sistem
Flowchart merupakan sebuah bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses dengan proses lainnya dalam suatu program. Flowchart berfungsi untuk mempermudah proses pengecekan terhadap sistem yang akan dibuat apabila ada yang terlupakan dalam analisis masalah. Berikut merupakan flowchart awal dari sistem secara umum yang nantinya akan dibangun yang dapat dilihat pada gambar 3.5.
Y
Y
mulai
input cit ra asli (.bmp)
Noise gausssian? Generate
gaussian noise
Generat e salt & pepper noise
Operat or Laplacian of Gaussian?
Cit ra asli dengan noise
N